mastersingh24 (Thu, 09 Feb 2017 17:24:14 GMT):
Build business networks, applications and integration with Hyperledger Fabric blockchain
mastersingh24 (Thu, 09 Feb 2017 17:25:21 GMT):
Discussions related to the proposed Fabric Composer project
mastersingh24 (Thu, 09 Feb 2017 17:25:49 GMT):
Build business networks, applications and integration with Hyperledger Fabric blockchain.
mastersingh24 (Thu, 09 Feb 2017 17:26:05 GMT):
https://fabric-composer.github.io/ Build business networks, applications and integration with Hyperledger Fabric blockchain.
mastersingh24 (Thu, 09 Feb 2017 17:27:06 GMT):
Build business networks, applications and integration with Hyperledger Fabric blockchain.
silliman (Thu, 09 Feb 2017 17:43:54 GMT):
Has joined the channel.
OlufAndrews (Thu, 09 Feb 2017 17:53:14 GMT):
Has joined the channel.
sstone1 (Thu, 09 Feb 2017 18:10:41 GMT):
Has joined the channel.
debrajo (Thu, 09 Feb 2017 18:42:15 GMT):
Has joined the channel.
schwentker2 (Thu, 09 Feb 2017 19:46:56 GMT):
Has joined the channel.
bmos299 (Thu, 09 Feb 2017 20:39:14 GMT):
Has joined the channel.
pards (Thu, 09 Feb 2017 21:08:37 GMT):
Has joined the channel.
pards (Thu, 09 Feb 2017 21:15:41 GMT):
`npm install` completed successfully
pards (Thu, 09 Feb 2017 21:16:09 GMT):
But the `npm run bootstrapAssets` still fails
pards (Thu, 09 Feb 2017 21:16:09 GMT):
But `npm run bootstrapAssets` still fails
sstone1 (Thu, 09 Feb 2017 21:17:18 GMT):
So you can run the `composer` command?
pards (Thu, 09 Feb 2017 21:17:20 GMT):
```fabric@fabric-composer:~/sample-applications/packages/getting-started$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ecb99fc1f13c hyperledger/fabric-peer "sh -c 'sleep 5; p..." 6 minutes ago Up About a minute 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1
245c6ff3534c hyperledger/fabric-membersrvc "membersrvc" 6 minutes ago Up About a minute 0.0.0.0:7054->7054/tcp scripts_membersrvc_1
fabric@fabric-composer:~/sample-applications/packages/getting-started$ cat ~/.composer-connection-profiles/defaultProfile/connection.json
{
"type": "hlf",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7053",
"keyValStore": "/home/fabric/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100",
"networks": {
"digitalproperty-network": "a343e1b5f32febf84e1d81de72a2dc081fab1f62fcc5973ed1b718280ab535dc"
}
}fabric@fabric-composer:~/sample-applications/packages/getting-started$ npm run bootstrapAssets
> getting-started@1.0.0 bootstrapAssets /home/fabric/sample-applications/packages/getting-started
> node cli.js landregistry bootstrap
info: [Composer-GettingStarted] Fabric Composer: Getting Started appliation
info: [Composer-GettingStarted] Adding default land titles to the asset registry
error: [Composer-GettingStarted] Error: Failed to load connector module "composer-connector-hlf" for connection profile "defaultProfile"
Command failed.
```
pards (Thu, 09 Feb 2017 21:17:25 GMT):
yes, composer works
sstone1 (Thu, 09 Feb 2017 21:17:41 GMT):
Did you rerun `npm install` after `npm install -g composer-cli`?
pards (Thu, 09 Feb 2017 21:17:45 GMT):
yes
sstone1 (Thu, 09 Feb 2017 21:18:05 GMT):
It doesn't look like worked, there's no chaincode container showing up in the output of `docker ps`
pards (Thu, 09 Feb 2017 21:18:56 GMT):
There are only two containers defined in the docker-compose.yml
sstone1 (Thu, 09 Feb 2017 21:19:17 GMT):
`npm install` should run `composer network deploy` which deploys a new chaincode instance to the fabric instance
sstone1 (Thu, 09 Feb 2017 21:19:29 GMT):
try `npm run deployNetwork`
pards (Thu, 09 Feb 2017 21:19:32 GMT):
k
pards (Thu, 09 Feb 2017 21:20:47 GMT):
that failed
sstone1 (Thu, 09 Feb 2017 21:21:23 GMT):
what errors did that give?
pards (Thu, 09 Feb 2017 21:21:32 GMT):
I'm rebooting the VM
pards (Thu, 09 Feb 2017 21:21:43 GMT):
I'l start clean once it comes back up
sstone1 (Thu, 09 Feb 2017 21:23:11 GMT):
OK
pards (Thu, 09 Feb 2017 21:23:51 GMT):
```$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
101ba5c1f2c4 dev-vp0-1ede1ce2ea54ca93dbd04583dee9492d760286000a2c08dc70eb8639e13a5e9a "/opt/gopath/bin/1..." 13 seconds ago Up 12 seconds dev-vp0-1ede1ce2ea54ca93dbd04583dee9492d760286000a2c08dc70eb8639e13a5e9a
f7e6721ee503 hyperledger/fabric-peer "sh -c 'sleep 5; p..." 43 seconds ago Up 42 seconds 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1
a3012054ee97 hyperledger/fabric-membersrvc "membersrvc" 43 seconds ago Up 42 seconds 0.0.0.0:7054->7054/tcp scripts_membersrvc_1
```
pards (Thu, 09 Feb 2017 21:23:56 GMT):
look better?
sstone1 (Thu, 09 Feb 2017 21:24:59 GMT):
yes, much better
pards (Thu, 09 Feb 2017 21:26:09 GMT):
So now `npm run bootstrapAssets` should work, right?
sstone1 (Thu, 09 Feb 2017 21:26:29 GMT):
should do
sstone1 (Thu, 09 Feb 2017 21:26:42 GMT):
it should create a set of assets in the deployed business network
pards (Thu, 09 Feb 2017 21:27:06 GMT):
Same error as before
pards (Thu, 09 Feb 2017 21:27:20 GMT):
```error: [Composer-GettingStarted] Error: Failed to load connector module "composer-connector-hlf" for connection profile "defaultProfile"
Command failed.
```
sstone1 (Thu, 09 Feb 2017 21:28:29 GMT):
what do you get when you run `composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d` ?
mastersingh24 (Thu, 09 Feb 2017 21:29:12 GMT):
a headache ;)
greg.haskins (Thu, 09 Feb 2017 21:29:23 GMT):
Has joined the channel.
pards (Thu, 09 Feb 2017 21:29:45 GMT):
```d$ composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
List business network digitalproperty-network
name: digitalproperty-network
identifier: digitalproperty-network@0.0.1
description: Digital Property Network
models:
- net.biz.digitalPropertyNetwork
scripts:
- lib/DigitalLandTitle.js
registries:
net.biz.digitalPropertyNetwork.LandTitle:
id: net.biz.digitalPropertyNetwork.LandTitle
name: Asset registry for net.biz.digitalPropertyNetwork.LandTitle
registryType: Asset
assets:
net.biz.digitalPropertyNetwork.SalesAgreement:
id: net.biz.digitalPropertyNetwork.SalesAgreement
name: Asset registry for net.biz.digitalPropertyNetwork.SalesAgreement
registryType: Asset
assets:
Command completed successfully.
```
dselman (Thu, 09 Feb 2017 21:29:47 GMT):
Has joined the channel.
jkirke (Thu, 09 Feb 2017 21:30:34 GMT):
Has joined the channel.
sstone1 (Thu, 09 Feb 2017 21:31:39 GMT):
nobody asked you @mastersingh24 :P
dselman (Thu, 09 Feb 2017 21:31:56 GMT):
he's the ghost in the machine...
pards (Thu, 09 Feb 2017 21:32:00 GMT):
I appreciated the humour
mastersingh24 (Thu, 09 Feb 2017 21:32:31 GMT):
I do what I can - I was basically just browsing channels, saw the question and had to response ;)
mastersingh24 (Thu, 09 Feb 2017 21:32:31 GMT):
I do what I can - I was basically just browsing channels, saw the question and had to respond ;)
sstone1 (Thu, 09 Feb 2017 21:34:43 GMT):
We might have to boot you out of here
sstone1 (Thu, 09 Feb 2017 21:35:09 GMT):
Anyway - pards - is it possible that you had node-gyp errors when running `npm install` in the getting-started directory?
pards (Thu, 09 Feb 2017 21:35:27 GMT):
Yes. node-gyp was a PITA
sstone1 (Thu, 09 Feb 2017 21:35:55 GMT):
you could try a `git clean -xdf` in the getting-started directory which will wipe out the node_modules folder, followed by another `npm install`
pards (Thu, 09 Feb 2017 21:36:12 GMT):
sure
dselman (Thu, 09 Feb 2017 21:38:41 GMT):
what platform are you on?
pards (Thu, 09 Feb 2017 21:39:08 GMT):
Ubuntu server 14.0.4 LTS in Virtual Box on a Windows host
pards (Thu, 09 Feb 2017 21:39:50 GMT):
We have a winner!
pards (Thu, 09 Feb 2017 21:39:53 GMT):
That worked
pards (Thu, 09 Feb 2017 21:40:24 GMT):
Thanks a lot for all your help, @sstone1
sstone1 (Thu, 09 Feb 2017 21:40:55 GMT):
Awesome, no problem
sstone1 (Thu, 09 Feb 2017 21:41:21 GMT):
Was there anything you did (extra packages?) to fix the node-gyp issues or just the reboot? Just wondering if we can update the docs.
dselman (Thu, 09 Feb 2017 21:41:38 GMT):
Did you do `sudo apt-get -y install build-essential libssl-dev` ?
pards (Thu, 09 Feb 2017 21:42:10 GMT):
To be honest, I tried a bunch of things and don't recall exactly what fixed the problem
pards (Thu, 09 Feb 2017 21:42:20 GMT):
I think I installed node-gyp separately
pards (Thu, 09 Feb 2017 21:43:15 GMT):
... or `npm install hashtable@2.0.2`
pards (Thu, 09 Feb 2017 21:44:00 GMT):
I might ice this VM and try a fresh install to figure out the steps more precisely
jdockter (Thu, 09 Feb 2017 22:19:25 GMT):
Has joined the channel.
xixuejia (Fri, 10 Feb 2017 00:31:54 GMT):
Has joined the channel.
jeffgarratt (Fri, 10 Feb 2017 00:53:32 GMT):
Has joined the channel.
kenzhang (Fri, 10 Feb 2017 01:09:53 GMT):
Has joined the channel.
JonathanLevi (Fri, 10 Feb 2017 01:52:15 GMT):
Has joined the channel.
lfeagan (Fri, 10 Feb 2017 03:34:36 GMT):
Has joined the channel.
juslee (Fri, 10 Feb 2017 08:18:30 GMT):
Has joined the channel.
Jakeeyturner (Fri, 10 Feb 2017 08:59:26 GMT):
Has joined the channel.
mbwhite (Fri, 10 Feb 2017 09:18:34 GMT):
Has joined the channel.
caroline-church (Fri, 10 Feb 2017 09:42:15 GMT):
Has joined the channel.
paul.sitoh (Fri, 10 Feb 2017 09:59:58 GMT):
Has joined the channel.
davidkel (Fri, 10 Feb 2017 10:32:06 GMT):
Has joined the channel.
bravera (Fri, 10 Feb 2017 10:45:49 GMT):
Has joined the channel.
elisabetta (Fri, 10 Feb 2017 11:45:38 GMT):
Has joined the channel.
seanbarclay (Fri, 10 Feb 2017 11:56:34 GMT):
Has joined the channel.
gomsb143 (Fri, 10 Feb 2017 13:22:01 GMT):
Has joined the channel.
mgk (Fri, 10 Feb 2017 13:29:40 GMT):
Has joined the channel.
ayoub (Fri, 10 Feb 2017 13:41:03 GMT):
Has joined the channel.
ayoub (Fri, 10 Feb 2017 13:43:44 GMT):
Hi, in the composer modeling language, how mappings are expressed? I see support for Arrays but didn't see a way to add a mapping as a field member of an Asset. Anybody can enlighten?
jdockter (Fri, 10 Feb 2017 14:33:16 GMT):
Not sure if this helps but here is the doc on the CTO modeling language which has examples on Arrays, specifically the asset Field and its relationship to Animals, https://fabric-composer.github.io/reference/cto_language.html
ayoub (Fri, 10 Feb 2017 15:48:22 GMT):
thanks @jdockter for the reply. Actually what I am looking for is more for a map/dictionary e.g if in an asset I need a field that contains a mapping of
jdockter (Fri, 10 Feb 2017 16:25:51 GMT):
I'm not aware of map support... @dselman or @sstone1 can you comment?
sstone1 (Fri, 10 Feb 2017 16:27:12 GMT):
@Ayoub Naciri we do not have support for mappings at the moment
ayoub (Fri, 10 Feb 2017 16:34:35 GMT):
thanks @sstone1. are there any plans to support mapping in the near future?
Percival Lucena (Fri, 10 Feb 2017 18:28:22 GMT):
Has joined the channel.
pards (Fri, 10 Feb 2017 20:56:28 GMT):
So ... the root cause of my installation issues with `node-gyp` was the self-signed certificate in the chain
pards (Fri, 10 Feb 2017 20:56:53 GMT):
`node-gyp` doesn't honour the `strict-ssl=false` setting in `.npmrc`
pards (Fri, 10 Feb 2017 20:57:16 GMT):
The workaround to get composer-cli to install was to run the following:
pards (Fri, 10 Feb 2017 20:57:45 GMT):
```export NODE_TLS_REJECT_UNAUTHORIZED=0
pards (Fri, 10 Feb 2017 20:57:48 GMT):
before
pards (Fri, 10 Feb 2017 20:57:59 GMT):
```NODE_TLS_REJECT_UNAUTHORIZED=0```
pards (Fri, 10 Feb 2017 20:57:59 GMT):
```npm install -g composer-cli```
smithsj (Sat, 11 Feb 2017 08:48:36 GMT):
Has joined the channel.
sachikoy (Sun, 12 Feb 2017 01:52:05 GMT):
Has joined the channel.
dselman (Sun, 12 Feb 2017 19:23:06 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=9hGtLFNLrtjeSX2jF) CTO does not support defining maps, however you can approximate something similar using an array of Concepts -- each Concept in your array having a key and a value.
dselman (Sun, 12 Feb 2017 19:23:06 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=9hGtLFNLrtjeSX2jF) Composer Modelling Language does not support defining maps, however you can approximate something similar using an array of Concepts -- each Concept in your array having a key and a value.
dselman (Sun, 12 Feb 2017 19:27:32 GMT):
We just published the 0.4.3 release to npm: https://www.npmjs.com/package/composer-cli
dselman (Sun, 12 Feb 2017 19:28:50 GMT):
The team fixed a number of defects and made it MUCH easier to install and run the Composer Playground locally. See: https://fabric-composer.github.io/start/getting-started-playground.html
dselman (Sun, 12 Feb 2017 19:50:39 GMT):
We welcome feedback on our plans for the next iteration (March 10th) which is published here: https://github.com/fabric-composer/fabric-composer/projects
dselman (Sun, 12 Feb 2017 19:50:39 GMT):
We welcome feedback on the plans for the next iteration (March 10th) which is published here: https://github.com/fabric-composer/fabric-composer/projects
tobiashunter (Mon, 13 Feb 2017 09:36:35 GMT):
Has joined the channel.
winslet (Mon, 13 Feb 2017 09:37:23 GMT):
Has joined the channel.
FenglianXu (Mon, 13 Feb 2017 09:42:43 GMT):
Has joined the channel.
kathrynharrison (Mon, 13 Feb 2017 11:36:04 GMT):
Has joined the channel.
14gracel (Mon, 13 Feb 2017 13:41:56 GMT):
Has joined the channel.
pards (Mon, 13 Feb 2017 13:56:11 GMT):
The Atom Concerto Syntax Highlighter, mentioned in the Prerequisites Tasks, requires a "w3id" username/password.
pards (Mon, 13 Feb 2017 13:56:21 GMT):
https://github.ibm.com/Blockchain-WW-Labs/Concerto-Atom
pards (Mon, 13 Feb 2017 13:56:33 GMT):
My IBM Id does not work
pards (Mon, 13 Feb 2017 13:56:45 GMT):
How can I get a w3id?
dselman (Mon, 13 Feb 2017 15:05:31 GMT):
We haven't moved that into Open Source yet. It's on our list for Playback 3.
dselman (Mon, 13 Feb 2017 15:07:13 GMT):
Issue: https://github.com/fabric-composer/fabric-composer/issues/31
dselman (Mon, 13 Feb 2017 15:07:39 GMT):
We will get to that ASAP
mbwhite (Mon, 13 Feb 2017 15:19:01 GMT):
I'm working on an issue (https://github.com/fabric-composer/fabric-composer/issues/105) relating to the `composer archive create` command. There are a few code changes I can make to improve this but partly it's made hard by how yargs works.
I think we might be able to improve the command, and at the same time bypass the current issue.. outlined in the issue - but would welcome views; please add to the issue.. thanks!
weeds (Mon, 13 Feb 2017 18:24:28 GMT):
Has joined the channel.
weeds (Mon, 13 Feb 2017 18:24:51 GMT):
@dselman I was looking at the next iteration plans- how far will you get with: Port to HL v1.0, working in a branch until we feel like the time is right to flip all development to HL v1.0. We will attempt to minimize the distruption on the team and the length of time that we have to support both the v0.6 and v1.0 branches.
dselman (Mon, 13 Feb 2017 21:07:22 GMT):
@weeds that largely depends on the stability of Fabric and the changes in behavior that we discover and have to workaround. For example, the changes related to not being able to Read-Your-Own-Writes (local consistency guarantees for key write/read).
dselman (Mon, 13 Feb 2017 21:12:27 GMT):
https://jira.hyperledger.org/browse/FAB-2045
dselman (Mon, 13 Feb 2017 21:12:47 GMT):
https://jira.hyperledger.org/browse/FAB-2046
dselman (Mon, 13 Feb 2017 21:15:21 GMT):
2 other reported issues have already been fixed. Thanks!
dselman (Mon, 13 Feb 2017 21:17:04 GMT):
And this doc bug: https://jira.hyperledger.org/browse/FAB-2192
keech (Tue, 14 Feb 2017 14:38:16 GMT):
Has joined the channel.
mbwhite (Tue, 14 Feb 2017 16:38:00 GMT):
@pards you're PR has passed but we've hit a known defect in GitHub where the state doesn't get updated when travis-ci completes. are you able to push an empty commit? [we've raised with with GitHub]
sbrakev (Tue, 14 Feb 2017 17:25:01 GMT):
Has joined the channel.
pards (Tue, 14 Feb 2017 19:41:24 GMT):
@mbwhite I added an extra changeset to the PR
pards (Tue, 14 Feb 2017 20:55:56 GMT):
Is there a way to submit a JSON Object to Fabric, other than coding up commands in JS (like in Getting Started)?
macribas (Tue, 14 Feb 2017 20:59:00 GMT):
Has joined the channel.
sstone1 (Tue, 14 Feb 2017 21:50:03 GMT):
@pards we have JavaScript APIs (see composer-client), REST APIs using Loopback (see loopback-connector-composer), and limited CLI support (for example `composer transaction submit`)
pards (Tue, 14 Feb 2017 21:50:50 GMT):
ok, thanks
rnsastry (Wed, 15 Feb 2017 04:32:28 GMT):
Has joined the channel.
AntCole (Wed, 15 Feb 2017 09:48:05 GMT):
Has joined the channel.
smithsj (Wed, 15 Feb 2017 12:08:18 GMT):
I just noticed that when I create a PR into fabric-composer from my fork, after a build has run against my fork triggered by a `git push` that I get a 'merge build' running on my local fork too. I think that this is pretty pointless and so have disabled this by clicking the 'cog' icon in Travis next to my fork to open up the settings and then turning off the 'Build pull requests' option for the fork. Hopefully this will stop the merge builds running on my fork :)
jwolpert (Wed, 15 Feb 2017 13:34:21 GMT):
Has joined the channel.
yuki-kon (Wed, 15 Feb 2017 16:49:02 GMT):
Has joined the channel.
tarima (Thu, 16 Feb 2017 06:59:18 GMT):
Has joined the channel.
tarima (Thu, 16 Feb 2017 07:10:28 GMT):
Hi! I'm IBMer. I have a Question.
As concept of Concerto, Which do you consider that Concerto or Fabric Membership should have user management and access control? If you manage User with Concerto, how do you map to ECERT / TCERT?
Thank you.
tarima (Thu, 16 Feb 2017 07:10:28 GMT):
Hi! I'm IBMer. I have a Question.
As concept of Fabric Composer, Which do you consider that Participants or Fabric Membership should have user management and access control? If you manage User with Participants, how do you map to ECERT / TCERT?
Thank you.
tarima (Thu, 16 Feb 2017 07:10:28 GMT):
Hi! m I have a Question.
As concept of Fabric Composer, Which do you consider that Participants or Fabric Membership should have user management and access control? If you manage User with Participants, how do you map to ECERT / TCERT?
Thank you.
wutongtree (Thu, 16 Feb 2017 10:02:18 GMT):
Has joined the channel.
mbwhite (Thu, 16 Feb 2017 10:28:38 GMT):
@tarima Concerto is an old 'project' name of 'Fabric Composer'; user mgt/access control ctrl is a essential feature; Access control on updates to assets etc. is there. We need to get some of the cert mapping docs online.
dselman (Thu, 16 Feb 2017 15:30:10 GMT):
@tarima we map business network participants to identities using encrypted attributes in the ECert. See this for details: https://fabric-composer.github.io/reference/commands.html -- issue identity, revoke identity
smithsj (Thu, 16 Feb 2017 15:57:02 GMT):
For those who are running docker containers to host business networks on a mac, you may be interested in this thread here: https://github.com/docker/for-mac/issues/371
My `~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/Docker.qcow2` file is currently 22GB after having removed all Docker containers and images :unamused:
smithsj (Thu, 16 Feb 2017 16:07:02 GMT):
chatting to a colleague here, he reckons it's not a problem though and it's just the virtual machine expanding its filesystem space. I think he's probably right but there are some instructions in the thread if you want some GB back :)
sstone1 (Thu, 16 Feb 2017 16:07:47 GMT):
@smithsj I thought that a recent update to Docker for Mac cleaned up the space on a restart of the Docker Engine
smithsj (Thu, 16 Feb 2017 16:08:29 GMT):
ah, maybe I don't have that - I'll update now
VipinB (Thu, 16 Feb 2017 16:12:58 GMT):
Has joined the channel.
VipinB (Thu, 16 Feb 2017 16:14:37 GMT):
@sstone1 how is work coming along for Fabric 1.0 compatibility for the composer
sstone1 (Thu, 16 Feb 2017 16:18:14 GMT):
@VipinB good - I have it running against 1.0 for the most part. There's a few outstanding items though. 1) Read Your own Writes has disappeared between 0.6 to 1.0, so we have to make some changes to accommodate that 2) we need to accommodate the recent deploy changes (it's now install + instantiate) and 3) we need some SDK functionality before we can implement issuing/revoking identities
VipinB (Thu, 16 Feb 2017 16:33:18 GMT):
@sstone1 hopefully you will keep channel updated with progress. Sounds good so far.
tarima (Thu, 16 Feb 2017 18:21:49 GMT):
@mbwhite @dselman Thank you my comment. The parameters of “enrollId” and “enrollSecret” for “composer participant add” only add participant without Membership Service of fabric. so now, enrollId should add membership for fabric before right?
sstone1 (Thu, 16 Feb 2017 21:34:19 GMT):
@tarima participants and identities are separate concepts in Fabric Composer. A *participant* and their details (name, address, etc.) is recorded in a participant registry. A participant is then issued with *identities* (ECerts/enrollment IDs) that they can use to interact with the business network.
sstone1 (Thu, 16 Feb 2017 21:34:58 GMT):
You need to `composer participant add` to add the participant to a participant registry, and then `composer identity issue` to issue that participant with an ECert (enrollment ID + generated enrollment secret)
ylsGit (Fri, 17 Feb 2017 02:27:33 GMT):
Has joined the channel.
RajkumarNatarajan (Fri, 17 Feb 2017 03:55:50 GMT):
Has joined the channel.
Anastasia Paterson (Fri, 17 Feb 2017 10:07:03 GMT):
Has joined the channel.
gormand (Fri, 17 Feb 2017 11:53:36 GMT):
Has joined the channel.
jdockter (Fri, 17 Feb 2017 12:12:02 GMT):
is there any documentation on how to get a business network to Bluemix?
tarima (Fri, 17 Feb 2017 12:36:10 GMT):
@sstone1 Thank you. Today I reinstall fabric-composer because, I'll try composer participant add / composer identity issue. then I happend error.
tarima (Fri, 17 Feb 2017 12:37:30 GMT):
Message Attachments
lehors (Fri, 17 Feb 2017 12:37:36 GMT):
Has joined the channel.
tarima (Fri, 17 Feb 2017 12:38:06 GMT):
Command is this.
_composer participant add —p defaultProfile -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d -d {"$class":"net.biz.digitalPropertyNetwork.Person","personId”:”user1@example.com”,”firstName":"Mae","lastName":"Smith"}_
jdockter (Fri, 17 Feb 2017 15:37:42 GMT):
I followed the instructions on installing the fabric composer playground UI using the docker image here, https://fabric-composer.github.io/start/getting-started-playground.html, and now I want to connect to an existing business network running on my localhost. Two questions...1) what value do I enter for Key value store directory on the connection profile? and 2) when prompted for adding an identity what is that actually doing under the covers?
jdockter (Fri, 17 Feb 2017 15:39:56 GMT):
I tried pointing to the .composer-credentials and that did not work
Honglei (Fri, 17 Feb 2017 16:06:34 GMT):
Has joined the channel.
sstone1 (Fri, 17 Feb 2017 16:22:38 GMT):
@tarima you need to add single quotes around the JSON on the command line, so try `composer participant add —p defaultProfile -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d -d '{"$class":"net.biz.digitalPropertyNetwork.Person","personId”:”user1@example.com”,”firstName":"Mae","lastName":"Smith"}'`
tarima (Fri, 17 Feb 2017 16:27:43 GMT):
@sstone1 OK, I try it.
klorenz (Fri, 17 Feb 2017 16:46:12 GMT):
Has joined the channel.
arner (Fri, 17 Feb 2017 21:03:08 GMT):
Has joined the channel.
jdockter (Fri, 17 Feb 2017 21:09:43 GMT):
Removed all my existing containers and used the docker-compose file to spin up membersrvc, peer and composer-ui containers. Seems that the playground docker container has it's own set of credentials, so the pre-configured connection profile of 'hlfabric' is setup to use '/home/composer/.composer-credentials' which is apart of the composer-ui container. For some reason I couldn't couldn't docker exec -it into the container to confirm. Please let me know if I have that correct, thanks.
sstone1 (Fri, 17 Feb 2017 21:14:10 GMT):
@jdockter you're correct, the credentials are stored within the composer-ui container when using the Docker images.
sstone1 (Fri, 17 Feb 2017 21:14:37 GMT):
If you install using npm (`npm install -g composer-ui; composer-ui`) then the credentials are stored on your file system.
jdockter (Fri, 17 Feb 2017 21:14:54 GMT):
ah nice...thanks @sstone1
jdockter (Fri, 17 Feb 2017 22:07:25 GMT):
now where talking...was able to create a localhost profile using a local .composer-credentials based on identity WebAppAdmin ...which then deployed the default car auction model...now just need to swap out for my business network
dselman (Sat, 18 Feb 2017 13:19:20 GMT):
@jdockter good stuff. Fancy blogging/vlogging about getting hands on. We need to get the word out...
dselman (Sat, 18 Feb 2017 13:31:17 GMT):
We just moved our experimental syntax highlighter for Atom into Open Source. It is here and includes install instructions: https://github.com/fabric-composer/tools/tree/master/composer-atom-develop
We welcome contributions to make this more useful.
We are also working on publishing a more full-featured VSCode plugin which should be available shortly.
dselman (Sat, 18 Feb 2017 13:31:17 GMT):
We just moved our experimental syntax highlighter for Atom into Open Source. It is here and includes install instructions: https://github.com/fabric-composer/tools/tree/master/composer-atom-develop
We welcome contributions to make this more useful.
We are also working on publishing a more full-featured VSCode plugin which should be available shortly.
dselman (Sat, 18 Feb 2017 14:06:35 GMT):
# Proposal for Fabric Composer Playback 3
### Target Date: March 10th
### [Issues](https://github.com/fabric-composer/fabric-composer/milestone/10)
## Project Governance
We are actively soliciting interested individuals, organization and companies to contribute to Fabric Composer development.
The existing team will reach out to the HL community for feedback on how best to organize transparent and open weekly planning meetings, scrum calls, chat, mailing lists, playbacks, design/architecture sessions etc.
## Composer Playground
IBM will contribute low-fi and hi-fi design screens for a next generation of the Composer Playground web user interface. Links to the design screen will be attached to the GitHub issues ASAP.
The team will build a new Playground web application, based on Angular2. The new Playground will be created in the composer-playground npm package (as a peer of the existing composer-ui package). The docker image will be called composer-playground and published to DockerHub. Eventually the new composer-playground npm package and docker image will supersede the old composer-ui packages and these will be frozen/retired and eventually removed.
Composer Playground will be deployed to IBM Bluemix as an experimental free and public service to gather feedback from users. The version on IBM Bluemix will initially *only* support the Web Connection Profile (simulating Hyperledger Fabric in the browser).
The community is encouraged to run the Playground in other environments, and connecting it to HLF, using the DockerHub image and providing feedback.
## Loopback and REST APIs
The team will continue to enhance the existing Loopback support, improving ease-of-use, supporting servers with multiple business networks deployed, adding the ability to submit transactions and to define authentication/authorization for the REST API.
## Support for Hyperledger Fabric v1
The team has already started to process of testing and porting to Hyperledger V1 and is making good progress. The working assumption is that the team will add support for a new Connection Profile type (hlf-v1) and that the runtime will seamlessly support business network definitions on a v1 HLF.
There will likely to changes to the start/download scripts and deploy/undeploy commands based on the operational changes in HLF v1.
The team will assess the best moment to switch default support from v0.6 to v1 (and when to drop support for v0.6) based on progress over the coming weeks.
## Samples
The team will publich a new Angular2 end-to-end sample based on DEFRA requirements for tracking animals as they move between farms.
## Community Outreach
The team will attend the HL Meet-up in London on March 2nd. We encourage the community to blog/vlog about their experiences using Fabric Composer, engage on the HL RocketChat #fabric-composer channel, answer/ask questions on StackOverflow using the fabric-composer tag, and tweet using the #FabricComposer hashtag.
dselman (Sat, 18 Feb 2017 14:08:03 GMT):
Message Attachments
dselman (Sat, 18 Feb 2017 14:10:23 GMT):
Comment and feedback on the proposed plan for Playback 3 are encouraged.
dselman (Sat, 18 Feb 2017 14:38:49 GMT):
Message Attachments
sidiyer (Sat, 18 Feb 2017 20:15:25 GMT):
Has joined the channel.
Ratnakar (Sun, 19 Feb 2017 04:01:47 GMT):
Has joined the channel.
matanyahu (Sun, 19 Feb 2017 06:43:43 GMT):
Has joined the channel.
alexliu (Sun, 19 Feb 2017 11:22:14 GMT):
Has joined the channel.
rikmoedt (Sun, 19 Feb 2017 13:12:29 GMT):
Has joined the channel.
Honglei (Sun, 19 Feb 2017 14:26:01 GMT):
Hi, I found the 'sample-applications' is based on 0.6? any version/branch for 1.0?
dselman (Sun, 19 Feb 2017 16:00:18 GMT):
We are just starting to port to v1 -- some messages here https://chat.hyperledger.org/channel/fabric-composer?msg=G6xJPNazBqAN3f6uQ We hope to have business networks running seamlessly on v1 for Playback 3 (March 10th).
johnwolpert (Sun, 19 Feb 2017 16:05:35 GMT):
Has joined the channel.
Honglei (Sun, 19 Feb 2017 16:16:11 GMT):
Thanks. btw, what's the expected version of node/npm? I tried node v6.9.0/npm v4.2.0, seems 'getting-start' failed.
dante (Sun, 19 Feb 2017 17:35:06 GMT):
Has joined the channel.
shabs (Mon, 20 Feb 2017 02:16:14 GMT):
Has joined the channel.
shabs (Mon, 20 Feb 2017 02:22:31 GMT):
@dselman : any plans to release on higher version of base - I am on node 7.2 and Ubuntu 16 LTS. Not able to install the sample
shabs (Mon, 20 Feb 2017 02:31:04 GMT):
npm ERR! grpc@1.0.0 install: `node-pre-gyp install --fallback-to-build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the grpc@1.0.0 install script 'node-pre-gyp install --fallback-to-build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the grpc package,
npm ERR! not with npm itself.
tarima (Mon, 20 Feb 2017 02:48:51 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=JRqqaLSq2H9yQYvBH) @shabs
probably your environment is not work. I saw same. you should follow this.
https://fabric-composer.github.io/reference/platforms.html
shabs (Mon, 20 Feb 2017 03:48:58 GMT):
yes @tarima : I wrote just earlier : I am on node 7.2 and Ubuntu 16 LTS. Any plans to support the same ?
tarima (Mon, 20 Feb 2017 04:13:07 GMT):
sorry I'm not owner. so I don't know about support.
tarima (Mon, 20 Feb 2017 04:13:35 GMT):
@shabs I am on node 7.2 and Ubuntu 16 LTS. Any plans to support the same ?
tarima (Mon, 20 Feb 2017 04:14:21 GMT):
@shabs I am not owner. so I don't know about support
tarima (Mon, 20 Feb 2017 04:18:48 GMT):
and I think this package use many dependences package. so it is difficult survey each package.
anzalbeg (Mon, 20 Feb 2017 04:51:41 GMT):
Has joined the channel.
anzalbeg (Mon, 20 Feb 2017 05:08:20 GMT):
@sstone1 Hello this is Anzal from HCL India, i attended the Fabric Composer Early Program training on 14th and 15th feb, it was good and i have some doubts on it,
anzalbeg (Mon, 20 Feb 2017 05:10:18 GMT):
Is there any way to integrate the fabric composer blockchain business application the IBM Bluemix?
anzalbeg (Mon, 20 Feb 2017 05:10:18 GMT):
Is there any way to integrate the fabric composer blockchain business application with the IBM Bluemix?
murrekatt (Mon, 20 Feb 2017 07:32:32 GMT):
Has joined the channel.
YanLi (Mon, 20 Feb 2017 08:44:35 GMT):
Has joined the channel.
alisonb (Mon, 20 Feb 2017 09:24:48 GMT):
Has joined the channel.
dselman (Mon, 20 Feb 2017 12:08:58 GMT):
Hi @shabs -- this looks like an issue with grpc 1.0 on Node 7: https://github.com/grpc/grpc/issues/8495
dselman (Mon, 20 Feb 2017 12:10:23 GMT):
@anzalbeg, we have tested Composer with Fabric running on Bluemix. We will post instructions and link from here ASAP: http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
dselman (Mon, 20 Feb 2017 12:11:39 GMT):
@Honglei pre-reqs and supported platforms: https://fabric-composer.github.io/reference/platforms.html
dselman (Mon, 20 Feb 2017 12:11:50 GMT):
https://fabric-composer.github.io/tasks/prerequisites.html
mastersingh24 (Mon, 20 Feb 2017 18:53:14 GMT):
@dselman - can you reach out / follow up about https://jira.hyperledger.org/browse/FAB-2331 ?
mastersingh24 (Mon, 20 Feb 2017 18:53:34 GMT):
if you look at what they are proposing, its pretty much what / how composer works
dselman (Mon, 20 Feb 2017 18:54:38 GMT):
Will do
sstone1 (Mon, 20 Feb 2017 21:19:03 GMT):
@anzalbeg I have updated the SO post with instructions of how to connect Fabric Composer to Bluemix: http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
sstone1 (Mon, 20 Feb 2017 21:19:34 GMT):
However, as per my update in that SO post, we are still waiting for a fix to `hfc` before I would recommended using it.
dselman (Mon, 20 Feb 2017 21:30:17 GMT):
@all note that we've updated issues with the `design` tag with links to visual designs we are working towards for Playback 3: https://github.com/fabric-composer/fabric-composer/issues/137
dselman (Mon, 20 Feb 2017 21:30:17 GMT):
@all note that we've updated issues with the `design` tag with links to visual designs we are working towards for Playback 3: https://github.com/fabric-composer/fabric-composer/issues/137
dselman (Mon, 20 Feb 2017 21:33:08 GMT):
Feedback very welcome
dselman (Mon, 20 Feb 2017 21:36:27 GMT):
Hi-Fi screens: https://xd.adobe.com/view/78af754a-d5b7-4d5a-9472-4187c34cfbce/screen/103cffef-3fd3-415a-bbcb-f351d754547d/Custom-Size-1
mastersingh24 (Mon, 20 Feb 2017 22:00:25 GMT):
Hi-Fi - fancy
anzalbeg (Tue, 21 Feb 2017 04:05:16 GMT):
@sstone1 Thank you for getting back to me, i hope your answer help me resolving the problem, i'll try it, thanks...
stormli (Tue, 21 Feb 2017 05:14:46 GMT):
Has joined the channel.
dselman (Tue, 21 Feb 2017 06:30:20 GMT):
@all I have created the #fabric-composer-dev channel for developer/contributor discussions related to Fabric Composer.
dselman (Tue, 21 Feb 2017 06:30:41 GMT):
This channel will be focused on end users.
dselman (Tue, 21 Feb 2017 06:30:41 GMT):
This channel will remain focused on end users.
EdMoffatt (Tue, 21 Feb 2017 09:34:31 GMT):
Has joined the channel.
conroydave (Tue, 21 Feb 2017 09:51:46 GMT):
Has joined the channel.
conroydave (Tue, 21 Feb 2017 09:55:50 GMT):
alright so tell me more about composer
conroydave (Tue, 21 Feb 2017 09:55:58 GMT):
what version of fabric should i be working with
conroydave (Tue, 21 Feb 2017 09:56:06 GMT):
are there docker repo's
conroydave (Tue, 21 Feb 2017 09:56:20 GMT):
does it have any similarity to docker compose
o.o. (Tue, 21 Feb 2017 09:56:53 GMT):
Has joined the channel.
dselman (Tue, 21 Feb 2017 10:01:50 GMT):
Fabric Composer supports HL v06, yes there are docker repos, no it has nothing to do with Docker Compose.
dselman (Tue, 21 Feb 2017 10:02:07 GMT):
Start here: https://fabric-composer.github.io/start/quickstart.html
conroydave (Tue, 21 Feb 2017 10:03:32 GMT):
thanks, apologize for my noobness
conroydave (Tue, 21 Feb 2017 10:06:03 GMT):
at a glance it appears to be pretty close to what i need. a business need approach to hyperledger fabric
conroydave (Tue, 21 Feb 2017 10:06:23 GMT):
but - what happens when you inventory is never transferred
conroydave (Tue, 21 Feb 2017 10:06:43 GMT):
for example students that you would like to just attach course completions too
conroydave (Tue, 21 Feb 2017 10:11:33 GMT):
ive run through the vehicle demo which shows a lot of promise but i think a university demo could aaply to more businesses
conroydave (Tue, 21 Feb 2017 10:11:41 GMT):
people are real inventory
mcastle (Tue, 21 Feb 2017 10:20:12 GMT):
Has joined the channel.
dselman (Tue, 21 Feb 2017 10:29:12 GMT):
Here's a quick SWAG at your model... Not sure I got it right!
dselman (Tue, 21 Feb 2017 10:29:17 GMT):
namespace org.nar
concept Address {
o String street
o String city
o String country
}
enum AssociationStatus {
o CREATED
o UPDATE_REQUIRED
o VALIDATION_REQUIRED
o EXPIRED
o ACCEPTED
o DECLINED
}
asset Association identified by associationId {
o String associationId
o String description
o AssociationStatus status
o DateTime date
}
participant User identified by id {
o String id
o String firstName
o String lastName
o Address address
o String phoneNumber
o String emailAddress
o String role
--> Association[] associations
}
dselman (Tue, 21 Feb 2017 10:29:39 GMT):
You can play with this by pasting it into the Composer web playground:
dselman (Tue, 21 Feb 2017 10:29:54 GMT):
http://fabric-composer.mybluemix.net
dselman (Tue, 21 Feb 2017 10:33:39 GMT):
Message Attachments
dselman (Tue, 21 Feb 2017 10:34:12 GMT):
Message Attachments
dselman (Tue, 21 Feb 2017 10:34:35 GMT):
Message Attachments
dselman (Tue, 21 Feb 2017 10:34:58 GMT):
Message Attachments
paul.sitoh (Tue, 21 Feb 2017 10:42:15 GMT):
Folks, yesterday someone asked me if composer also included cello (fabric orchestrator). He said that composer had a feature to create business network. Does that mean it is also able to spin up a fabric network -- i.e. create nodes, ordering service (v1), etc and string everything together so to speak? If yes does it use cello?
dselman (Tue, 21 Feb 2017 10:52:46 GMT):
No, Composer does not provision the Fabric -- it just deploys a business network DEFINITION to it. The BND is a logical description of the structure and behavior of a business network, not the physical infrastructure.
dselman (Tue, 21 Feb 2017 10:53:37 GMT):
I'm guessing you can use Cello to stand up the physical Fabric and then use Composer to model your business network definition and deploy to the Fabric.
ehabing (Tue, 21 Feb 2017 12:21:11 GMT):
Has joined the channel.
jdockter (Tue, 21 Feb 2017 15:34:52 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=FvXNCdRXWSM9jbJer) @sstone1 Excellent, that worked! With the settings above I was able to run the cli 'composer network deploy -p bluemix -a
jdockter (Tue, 21 Feb 2017 15:34:52 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=FvXNCdRXWSM9jbJer) @sstone1 Excellent, that worked! With the settings below I was able to run the cli 'composer network deploy -p bluemix -a
jdockter (Tue, 21 Feb 2017 16:46:20 GMT):
@sstone1 @dselman was able to use the same Bluemix connection profile to launch a local loopback server...now I have a REST API over my business network on Bluemix...very slick! The connection is a little shaky and will drop after a bit but knew that going into it.
dselman (Tue, 21 Feb 2017 17:00:23 GMT):
Cool.
dselman (Tue, 21 Feb 2017 17:00:46 GMT):
Go forth and spread the good news! :-)
VipinB (Wed, 22 Feb 2017 02:34:00 GMT):
@sstone1 or @dselman we need your views on credentialing in composer and the interactions with identity in the identity WG. Pls join the call or talk about this aspect through the docs. There is call tomorrow watch for announcement on identity WG channel or tscifo@boyernlbny.com mailing lists.
raghavsood (Wed, 22 Feb 2017 03:01:12 GMT):
Has joined the channel.
anzalbeg (Wed, 22 Feb 2017 05:06:50 GMT):
@sstone1 one more question, Does worldstate DB maintain the transactions details per blockwise?
anzalbeg (Wed, 22 Feb 2017 05:09:21 GMT):
Does transactions in world state DB maintain the blocks no?
omkardash (Wed, 22 Feb 2017 05:38:41 GMT):
Has joined the channel.
martijnwouters (Wed, 22 Feb 2017 06:56:28 GMT):
Has joined the channel.
dselman (Wed, 22 Feb 2017 07:35:34 GMT):
@VipinB Composer manages participants and identities. Participants represent the people/orgs that are members of a business network. They are modelled and can be complex data structures, with relationships to other assets or participants. An identity is issued/revoked for a participant, and the identity <--> participant mapping is stored in world state by Composer. A single participant may have multiple identities. An identity is related to a single participant. The identity is stored in an ECert as an encrypted attribute, so that when a transaction is submitted Composer can retrieve the identity and through the identity-participant mapping table retrieve the associated participant. Docs: https://fabric-composer.github.io/tasks/identity-issue.html https://fabric-composer.github.io/tasks/identity-revoke.html . The current participant is the basis for access control: https://fabric-composer.github.io/tasks/current-participant.html
dselman (Wed, 22 Feb 2017 07:35:34 GMT):
@VipinB Composer manages participants and identities. Participants represent the people/orgs that are members of a business network. They are modelled and can be complex data structures, with relationships to other assets or participants. An identity is issued/revoked for a participant, and the identity <--> participant mapping is stored in world state by Composer. A single participant may have multiple identities. An identity is related to a single participant. The identity is stored in an ECert as an encrypted attribute, so that when a transaction is submitted Composer can retrieve the identity and through the identity-participant mapping table retrieve the associated participant. Docs: https://fabric-composer.github.io/tasks/identity-issue.html https://fabric-composer.github.io/tasks/identity-revoke.html . The current participant is the basis for access control: https://fabric-composer.github.io/tasks/current-participant.html Composer also supports declarative access control: https://fabric-composer.github.io/reference/acl_language.html
dselman (Wed, 22 Feb 2017 07:36:33 GMT):
The CLI also includes commands to manage participants/identities: https://fabric-composer.github.io/reference/commands.html
dselman (Wed, 22 Feb 2017 07:37:45 GMT):
@anzalbeg all Fabric Composer state (including the business network definition itself) is stored on the blockchain in world-state, using the typical getState/putState APIs.
omkardash (Wed, 22 Feb 2017 09:29:18 GMT):
Need help troubleshooting an issue. I'm trying to install Composer Playground, following https://fabric-composer.github.io/start/getting-started-playground.html. I used the first option (docker-compose.yml). When I fire up the UI @ localhost:8080 Here's the error I get :
Error
Error: ENOENT: no such file or directory, mkdir '/Users/omkar/.composer-credentials'
omkardash (Wed, 22 Feb 2017 09:29:18 GMT):
Need help troubleshooting an issue. I'm trying to install Composer Playground, following https://fabric-composer.github.io/start/getting-started-playground.html. I used the first option (docker-compose.yml). When I fire up the UI @ localhost:8080 Here's the error I get :
Error
Error: ENOENT: no such file or directory, mkdir '/Users/omkar/.composer-credentials' @dselman , @sstone1
czar0 (Wed, 22 Feb 2017 09:29:51 GMT):
Has joined the channel.
dselman (Wed, 22 Feb 2017 09:35:45 GMT):
You are on Mac?
dselman (Wed, 22 Feb 2017 09:35:45 GMT):
@omkardash you are running on a Mac?
dselman (Wed, 22 Feb 2017 09:38:31 GMT):
@omkardash please provide more details on the steps that led to you seeing that error.
omkardash (Wed, 22 Feb 2017 09:38:34 GMT):
@dselman Yes
omkardash (Wed, 22 Feb 2017 09:39:31 GMT):
After installing the pre-requisites, I went to https://fabric-composer.github.io/start/getting-started-playground.html
omkardash (Wed, 22 Feb 2017 09:40:03 GMT):
I followed the steps :
docker pull hyperledger/fabric-baseimage:x86_64-0.1.0
docker tag hyperledger/fabric-baseimage:x86_64-0.1.0 hyperledger/fabric-baseimage:latest
docker-compose up -d
dselman (Wed, 22 Feb 2017 09:40:20 GMT):
Did you edit `"keyValStore": "/home/composer/.composer-credentials",` in docker-compose.yml by any chance?
omkardash (Wed, 22 Feb 2017 09:40:34 GMT):
Yes, I did that on the .yml file
dselman (Wed, 22 Feb 2017 09:41:21 GMT):
Yeah... you don't want to change that! :-) That is the path INSIDE the docker container that Playground is going to use to store its connection profiles... I.e. this is not a Mac OS path on your host file system.
omkardash (Wed, 22 Feb 2017 09:41:24 GMT):
I did not edit it the first time.
omkardash (Wed, 22 Feb 2017 09:41:34 GMT):
And it still did not work.
omkardash (Wed, 22 Feb 2017 09:42:04 GMT):
Let me start afresh
omkardash (Wed, 22 Feb 2017 09:42:12 GMT):
I will get back to you in a bit
dselman (Wed, 22 Feb 2017 09:42:23 GMT):
ok
dselman (Wed, 22 Feb 2017 09:44:39 GMT):
You should not need to make any changes to the docker-compose.yml
omkardash (Wed, 22 Feb 2017 09:50:46 GMT):
I cleared out all the docker images, removed the older directory and started afresh with
docker pull hyperledger/fabric-baseimage:x86_64-0.1.0
docker tag hyperledger/fabric-baseimage:x86_64-0.1.0 hyperledger/fabric-baseimage:latest
docker-compose up -d
omkardash (Wed, 22 Feb 2017 09:51:04 GMT):
I launched the UI now.
omkardash (Wed, 22 Feb 2017 09:51:25 GMT):
It doesn't go past : Establishing admin connection ...
omkardash (Wed, 22 Feb 2017 09:52:47 GMT):
Message Attachments
omkardash (Wed, 22 Feb 2017 09:53:10 GMT):
@dselman Please LMK if I'm missing something here
dselman (Wed, 22 Feb 2017 09:53:52 GMT):
can you run `docker ps -a`
dselman (Wed, 22 Feb 2017 09:54:31 GMT):
Where there any errors when you ran `docker-compose up -d`?
omkardash (Wed, 22 Feb 2017 09:57:05 GMT):
No Errors:
omkardash (Wed, 22 Feb 2017 09:57:19 GMT):
Message Attachments
omkardash (Wed, 22 Feb 2017 10:01:24 GMT):
@dselman Is there anything else I should try?
dselman (Wed, 22 Feb 2017 10:03:09 GMT):
Let's eliminate the easy stuff. Please run `docker -v` and `docker-composer -v`
GrahamCharters (Wed, 22 Feb 2017 10:03:40 GMT):
Has joined the channel.
omkardash (Wed, 22 Feb 2017 10:03:41 GMT):
docker-compose version 1.10.0, build 4bd6f1a
omkardash (Wed, 22 Feb 2017 10:03:45 GMT):
Docker version 1.13.0, build 49bf474
dselman (Wed, 22 Feb 2017 10:04:16 GMT):
good, that is what I have as well
dselman (Wed, 22 Feb 2017 10:04:31 GMT):
give me a sec to do what you just did
omkardash (Wed, 22 Feb 2017 10:04:56 GMT):
sure, no problem
dselman (Wed, 22 Feb 2017 10:09:50 GMT):
The good news is that it worked for me...
dselman (Wed, 22 Feb 2017 10:10:06 GMT):
Have you run Playground before with this web browser?
omkardash (Wed, 22 Feb 2017 10:10:12 GMT):
Yes..
dselman (Wed, 22 Feb 2017 10:11:06 GMT):
What browser are you using? Can you try clearing the cache / local storage?
omkardash (Wed, 22 Feb 2017 10:11:10 GMT):
Chrome
omkardash (Wed, 22 Feb 2017 10:11:17 GMT):
I will clear it, and let you know
omkardash (Wed, 22 Feb 2017 10:11:34 GMT):
I should have tried that as step 0, I guess
omkardash (Wed, 22 Feb 2017 10:20:13 GMT):
@dselman Done,
omkardash (Wed, 22 Feb 2017 10:20:21 GMT):
but that did not solve the issue
dselman (Wed, 22 Feb 2017 10:21:09 GMT):
So when you go to http://localhost:8080 it tries to connect to Hyperledger instantly? You don't do anything in the UI?
omkardash (Wed, 22 Feb 2017 10:21:50 GMT):
It connects instantly
omkardash (Wed, 22 Feb 2017 10:22:22 GMT):
and doesn't get past the Establishing admin connection ...
omkardash (Wed, 22 Feb 2017 10:22:24 GMT):
screen
dselman (Wed, 22 Feb 2017 10:23:46 GMT):
Ok, that means you have a cookie or something set in your browser localstorage for localhost:8080. On a first visit it should use the web profile.
dselman (Wed, 22 Feb 2017 10:23:59 GMT):
Can you try Safari or Firefox?
omkardash (Wed, 22 Feb 2017 10:24:46 GMT):
Ok, let me try that
omkardash (Wed, 22 Feb 2017 10:29:22 GMT):
I tried going on Incognito mode and it behaved as expected. Started off with the browser storage and then I could switch to hlfabric
omkardash (Wed, 22 Feb 2017 10:30:06 GMT):
@dselman Resolved. Thank you so much.
dselman (Wed, 22 Feb 2017 10:30:11 GMT):
np
dselman (Wed, 22 Feb 2017 10:31:01 GMT):
We need to fix the problem of caching credentials for HL in the browser. If you restart HL then those credentials don't work anymore and you need to flush localStorage and cookies to clear.
omkardash (Wed, 22 Feb 2017 10:32:53 GMT):
Yes, that'd be nice. For someone who is exploring, it might get a little tricky.
dselman (Wed, 22 Feb 2017 10:33:18 GMT):
I created https://github.com/fabric-composer/fabric-composer/issues/228 to track.
omkardash (Wed, 22 Feb 2017 10:34:12 GMT):
Again, I truly appreciate your help. Have a great day!
dselman (Wed, 22 Feb 2017 10:35:10 GMT):
You too!
anzalbeg (Wed, 22 Feb 2017 11:16:28 GMT):
@dselman thanx for kind support
gdinhof (Wed, 22 Feb 2017 11:52:26 GMT):
Has joined the channel.
psa (Wed, 22 Feb 2017 15:55:14 GMT):
Has joined the channel.
stanacton (Wed, 22 Feb 2017 16:35:16 GMT):
Has joined the channel.
fgieseler (Wed, 22 Feb 2017 19:40:30 GMT):
Has joined the channel.
pascallouis (Wed, 22 Feb 2017 20:05:40 GMT):
Has joined the channel.
pascallouis (Wed, 22 Feb 2017 20:07:35 GMT):
Hi! I'm having trouble installing `composer-cli` on Mac OS El Capitan 10.11.6, running into linkage issue to hashtable which apparently is a known problem (see https://github.com/chad3814/node-hashtable/pull/31). Are others having a similar problem? Scrolling up in the chat doesn't seem to suggest as much.
sstone1 (Wed, 22 Feb 2017 20:25:01 GMT):
@pascallouis are you running with node v7? I've seen similiar errors on node v7 but not on node v4/v6.
pascallouis (Wed, 22 Feb 2017 20:29:26 GMT):
yup, node v7
pascallouis (Wed, 22 Feb 2017 20:29:30 GMT):
should I downgrade?
sstone1 (Wed, 22 Feb 2017 20:29:46 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=yBJprCgEvXyL2twct) @VipinB I think we should have a constant presence on the Identity WG calls, the work in that area is certainly of interest to us ;) if the information provided by Dan is not sufficient I'm happy to discuss our model as-is today further or on a call... as long as it's not this week (I'm meant to be on vacation!)
sstone1 (Wed, 22 Feb 2017 20:29:46 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=yBJprCgEvXyL2twct) @VipinB I think we should have a constant presence on the Identity WG (and I'll do that), the work in that area is certainly of interest to us ;) if the information provided by Dan is not sufficient I'm happy to discuss our model as-is today further or on a call... as long as it's not this week (I'm meant to be on vacation!)
sstone1 (Wed, 22 Feb 2017 20:30:27 GMT):
Yeah, nobody has got Composer working with Node.js v7 on MacOS yet
pascallouis (Wed, 22 Feb 2017 20:33:18 GMT):
ha, ok!
pascallouis (Wed, 22 Feb 2017 20:33:23 GMT):
thanks, will try, and revert back
pascallouis (Wed, 22 Feb 2017 21:02:54 GMT):
happy to report that solved the issue, thanks @sstone1
dthibeau94 (Wed, 22 Feb 2017 21:03:49 GMT):
Has joined the channel.
sstone1 (Wed, 22 Feb 2017 21:06:51 GMT):
Great, np @pascallouis
omkardash (Wed, 22 Feb 2017 22:06:16 GMT):
@sstone1 @dselman : I've been dealing with another problem. "Error: timed out waiting for transaction to complete"
lib/com.chubb.travel.cto:
'''
namespace com.chubb.travel
transaction GetQuote identified by getQuoteTxID{
<... Properties>
}
'''
lib/travel.cto.js:
'''
/**
* A transaction processor for GetQuote
* @param {com.chubb.travel.GetQuote} getQuote - dummy transaction
* @transaction
*/
function onGetQuote(getQuote) {
console.log('get Quote');
}
'''
omkardash (Wed, 22 Feb 2017 22:06:16 GMT):
@sstone1 @dselman : I've been dealing with another problem. "Error: timed out waiting for transaction to complete"
lib/com.chubb.travel.cto:
```
namespace com.chubb.travel
transaction GetQuote identified by getQuoteTxID{
<... Properties>
}
```
lib/travel.cto.js:
```
/**
* A transaction processor for GetQuote
* @param {com.chubb.travel.GetQuote} getQuote - dummy transaction
* @transaction
*/
function onGetQuote(getQuote) {
console.log('get Quote');
}
```
dselman (Wed, 22 Feb 2017 22:11:39 GMT):
That usually means there was an exception running your tx processor function. Usually this is because the incoming data is invalid -- often the tx has a relationship to something that is missing.
dselman (Wed, 22 Feb 2017 22:12:02 GMT):
You can `docker attach` to the chaincode docker container to see the logs, or run `docker logs`
omkardash (Wed, 22 Feb 2017 22:12:36 GMT):
Thanks let me try that..
omkardash (Wed, 22 Feb 2017 22:24:31 GMT):
Does this error message make any sense to you?
```
function onGetQuote(getQuote) {
getQuote.quote.quoteAmount = '100';
/*
let quoteReg = getAssetRegistry('com.chubb.travel.Quote');
quoteReg.update(getQuote.quote);*/
}
return onGetQuote($transaction);
22:22:25.248 [Concerto] ERRO : @JS : Engine :invoke_m() Caught error, rethrowing {"stack":["{SyntaxError}Unexpected identifier SyntaxError: Unexpected identifier"," at \u003canonymous\u003e:2:26885"," at \u003canonymous\u003e:2:27007"," at \u003canonymous\u003e:1:18228"," at \u003canonymous\u003e:1:13226"," at \u003canonymous\u003e:1:28054"," at \u003canonymous\u003e:1:27899"," at call (\u003cnative code\u003e)"," at \u003canonymous\u003e:1:9342"," at call (\u003cnative code\u003e)"," at call (\u003cnative code\u003e)"]}
```
omkardash (Wed, 22 Feb 2017 22:24:44 GMT):
That's from the logs
dselman (Wed, 22 Feb 2017 22:35:00 GMT):
what did the incoming txt look like?
dselman (Wed, 22 Feb 2017 22:35:25 GMT):
seems to be saying that the id was `","`
dselman (Wed, 22 Feb 2017 22:35:59 GMT):
ah, no -- more likely that is a JS parsing error
dselman (Wed, 22 Feb 2017 22:36:10 GMT):
there's an extra `,` somewhere
dselman (Wed, 22 Feb 2017 22:38:05 GMT):
it may be easier to debug in the playground: http://fabric-composer.mybluemix.net
dselman (Wed, 22 Feb 2017 22:38:19 GMT):
turn on the developer console
omkardash (Wed, 22 Feb 2017 22:40:41 GMT):
Ok, let me try that
omkardash (Wed, 22 Feb 2017 22:42:14 GMT):
Thank you so much. It is something very silly I am sure.
omkardash (Wed, 22 Feb 2017 22:47:14 GMT):
@dselman The *exact* same code runs on Bluemix
omkardash (Wed, 22 Feb 2017 22:47:35 GMT):
```
16c44e67-32d3-4eb0-a79d-4f81640caf05
{
"$class": "com.chubb.travel.GetQuote",
"getQuoteTxID": "16c44e67-32d3-4eb0-a79d-4f81640caf05",
"quoteAmount": "100",
"timestamp": "2017-02-22T22:46:48.446Z"
}
```
dselman (Wed, 22 Feb 2017 22:48:14 GMT):
Interesting. How are you submitting/building the transaction when you run locally?
omkardash (Wed, 22 Feb 2017 22:51:19 GMT):
I added assets & participants. Then, on the Transactions tab, I selected the approp. Transaction from the drop down. Entered the values on the JSON data form and Hit submit
dselman (Wed, 22 Feb 2017 22:53:00 GMT):
You are always using the Playground (web ui)?
omkardash (Wed, 22 Feb 2017 22:53:20 GMT):
For now, yes.
omkardash (Wed, 22 Feb 2017 22:53:40 GMT):
I deployed a different business network on my local now, and repeated the exact same steps - It worked
omkardash (Wed, 22 Feb 2017 22:58:11 GMT):
I'm going to have to switch to CLI for now.
omkardash (Wed, 22 Feb 2017 23:00:26 GMT):
Thanks for all the help again @dselman - I am working on a PoC with very aggressive deadlines. Truly appreciated all the help.
dselman (Wed, 22 Feb 2017 23:10:39 GMT):
Happy to help. It's a team sport!
dselman (Wed, 22 Feb 2017 23:10:39 GMT):
I just committed a utility to convert from Google protobufs to Composer Model files: https://github.com/fabric-composer/tools/tree/master/composer-protobuf
dselman (Thu, 23 Feb 2017 00:40:49 GMT):
You may find this useful as your migrate your projects.
dselman (Thu, 23 Feb 2017 01:03:39 GMT):
And it shook down the Composer grammar pretty well... Found and fixed several bugs.
bart.cant@gmail.com (Thu, 23 Feb 2017 02:16:06 GMT):
Has joined the channel.
bartcant (Thu, 23 Feb 2017 02:18:07 GMT):
Has joined the channel.
Percival Lucena (Thu, 23 Feb 2017 14:17:58 GMT):
Are hyperledger chaincode events mapped into some composer class?
mttrbrts (Thu, 23 Feb 2017 14:20:53 GMT):
Has joined the channel.
dselman (Thu, 23 Feb 2017 14:21:28 GMT):
Not yet. Can you describe what you would like to implement please?
mgk (Thu, 23 Feb 2017 14:59:46 GMT):
Hi @dselman, did you make any grammar changes that would affect users such as new constructs or changes to existing constructs?
dselman (Thu, 23 Feb 2017 15:05:33 GMT):
I fixed this bug https://github.com/fabric-composer/fabric-composer/issues/223 as well as one that prevented using negative values for defaults and range validators. So nothing structurally changed.
mgk (Thu, 23 Feb 2017 15:06:27 GMT):
Thanks @dselman - that's helpful :-)
dselman (Thu, 23 Feb 2017 15:06:46 GMT):
We are working on getting an automated build + publish to the marketplace for the code, which is now published here: https://github.com/fabric-composer/tools/tree/master/composer-vscode-plugin
dselman (Thu, 23 Feb 2017 15:07:13 GMT):
First step is probably to document how to build the VSIX locally and install
dselman (Thu, 23 Feb 2017 15:07:36 GMT):
Pull requests welcome! :-)
mgk (Thu, 23 Feb 2017 15:08:17 GMT):
So that first step is easy: "npm run package" will build the vsix :-)
dselman (Thu, 23 Feb 2017 15:08:32 GMT):
Oh, and I added location information to the IllegalModelExceptions... so we no longer need to parse the exception message text.
dselman (Thu, 23 Feb 2017 15:09:11 GMT):
The parser should now return line number information for almost all of the validation errors
mgk (Thu, 23 Feb 2017 15:09:56 GMT):
That's great! - will make a real difference !
mgk (Thu, 23 Feb 2017 15:12:00 GMT):
So just noticed the *almost* in your sentence :-(
dselman (Thu, 23 Feb 2017 15:13:37 GMT):
heh
dselman (Thu, 23 Feb 2017 15:13:45 GMT):
Rome wasn't built in a day...
mgk (Thu, 23 Feb 2017 15:14:00 GMT):
Indeed
dselman (Thu, 23 Feb 2017 15:14:05 GMT):
We may have them all... but I wouldn't stake my life on it.
mgk (Thu, 23 Feb 2017 15:14:22 GMT):
np - it's great that we have them at all now :-)
jdockter (Thu, 23 Feb 2017 16:36:34 GMT):
@dselman on the topic of events...I would like to trigger an event after a transaction is completed...in our environment we would probably want some type of message to an external system, ie MQ or REST
jdockter (Thu, 23 Feb 2017 16:46:57 GMT):
ie I have a PO I get agreement from parties in the business network, then trigger an invoice payment message to external system
kdj (Thu, 23 Feb 2017 16:50:18 GMT):
Has joined the channel.
dselman (Thu, 23 Feb 2017 17:09:25 GMT):
Makes sense.
dselman (Thu, 23 Feb 2017 17:09:48 GMT):
v1 has more sophisticated eventing... but it still is not very enterprise friendly IMO.
dselman (Thu, 23 Feb 2017 17:10:03 GMT):
E.g. authentication, store-and-forward support etc
dselman (Thu, 23 Feb 2017 17:10:48 GMT):
The right thing to do is to come back to the Fabric team with a set of requirements and start a discussion.
jdockter (Thu, 23 Feb 2017 17:14:34 GMT):
just want to make sure I understand...today composer doesn't have any event support correct?
dselman (Thu, 23 Feb 2017 17:16:57 GMT):
correct
dselman (Thu, 23 Feb 2017 18:33:11 GMT):
We've experimented with pushing events out over the v0.6 event hub but our feeling was we should wait until we port to v1 before exposing it.
dselman (Thu, 23 Feb 2017 18:33:48 GMT):
v1 has more interesting events that clients can subscribe to that show the lifecycle of a transaction
jdockter (Thu, 23 Feb 2017 18:42:28 GMT):
Great to know, thanks
omkardash (Thu, 23 Feb 2017 18:50:02 GMT):
Is there currently a way to submit transactions thru REST API?
marcusvcs (Thu, 23 Feb 2017 18:52:42 GMT):
Has joined the channel.
omkardash (Thu, 23 Feb 2017 18:54:03 GMT):
I am not able to see any of my transactions on the API explorer. I see participants & Assets
jdockter (Thu, 23 Feb 2017 19:04:31 GMT):
@omkardash I was seeing the same thing an opened an issue here, https://github.com/fabric-composer/fabric-composer/issues/200
omkardash (Thu, 23 Feb 2017 19:06:57 GMT):
@jdockter I'm doing the same thing.
omkardash (Thu, 23 Feb 2017 19:10:03 GMT):
@jdockter What code did you add there? Ref : '''I had gotten some code from Matthew to add an OR condition'''
omkardash (Thu, 23 Feb 2017 19:10:03 GMT):
@jdockter What code did you add there? Ref : ```I had gotten some code from Matthew to add an OR condition```
omkardash (Thu, 23 Feb 2017 19:10:03 GMT):
@jdockter What code did you add there? Ref :
```
I had gotten some code from Matthew to add an OR condition
```
jdockter (Thu, 23 Feb 2017 19:32:35 GMT):
@omkardash I'm trying to send you a direct message with the code but not having much luck...also would like to make sure it's still working...like me get back to you in a bit
omkardash (Thu, 23 Feb 2017 19:34:00 GMT):
@jdockter if it helps, you can pastebin it, Thanks
jdockter (Thu, 23 Feb 2017 20:02:28 GMT):
If I have a deployed business network and have added participants and assets to it and then I update the business network with a new model of those participants and assets...what would/should happen to the old data?
jdockter (Thu, 23 Feb 2017 20:05:09 GMT):
ie I had a participant called employee they didn't have a zip code and then I added zip code and redeployed the model...assuming old data is still there correct, but zip is missing
sstone1 (Thu, 23 Feb 2017 20:06:04 GMT):
@jdockter if you update it (rather than redeploy it), the data will still be there in the world state. if you deploy a model change that adds a required field (as per your example), then any existing instances without that field will fail to parse.
sstone1 (Thu, 23 Feb 2017 20:06:37 GMT):
We are aware of that and I think it's documented _somewhere_ as a restriction; you must only make compatible changes to your model (such as adding new *optional* fields).
sstone1 (Thu, 23 Feb 2017 20:08:07 GMT):
In the future we could possibly look at some kind of migration code/tool, but for now it's a restriction. The consensus in a recent discussion was that breaking model changes shouldn't occur that regularly in production, but that's certainly something that could be debated!
jdockter (Thu, 23 Feb 2017 20:12:21 GMT):
yeah I was just thinking about development lifecycel...in sprint 1 we have model x, in sprint 5 we have model x+...just wanted to make sure I understood what would happen to any of the test data we put to the bc throughout those iterations
jdockter (Thu, 23 Feb 2017 20:12:21 GMT):
yeah I was just thinking about development lifecycle...in sprint 1 we have model x, in sprint 5 we have model x+...just wanted to make sure I understood what would happen to any of the test data we put to the bc throughout those iterations
jdockter (Thu, 23 Feb 2017 20:21:04 GMT):
if I run composer ui locally, using npm package, so I can point to a local running business network via a connection profile...will composer ui load in the model, scripts, and ACL to the browser? Or do I need to recreate all that in the browser first and then deploy to an empty local HL instance?
omkardash (Thu, 23 Feb 2017 20:22:15 GMT):
@sstone1 If I remove the old business network from connection.json and redeploy business network with model updates, would there still be potential conflicts?
sstone1 (Thu, 23 Feb 2017 20:23:11 GMT):
not really, at least at v0.6. the old business network will still be running with an old chaincode ID. the connection profile would only reference the new chaincode ID.
sstone1 (Thu, 23 Feb 2017 20:23:55 GMT):
in v1.0 the chaincode ID will be the business network name, so that trick won't work. infact at v1.0 i don't want to see the list of deployed business networks in the connection profile.
sstone1 (Thu, 23 Feb 2017 20:24:23 GMT):
but in v1.0 we get the ability to stop and delete running chaincode, so we can properly undeploy business networks.
omkardash (Thu, 23 Feb 2017 20:25:42 GMT):
That would be good.
omkardash (Thu, 23 Feb 2017 20:26:20 GMT):
On a different note, can is there a direct way to see how assets have moved between participants?
omkardash (Thu, 23 Feb 2017 20:26:20 GMT):
On a different note, is there a direct way to see how assets have moved between participants?
sstone1 (Thu, 23 Feb 2017 20:41:38 GMT):
Not yet. We are looking into a historian component that will allow you to track the changes to an asset, so you will be able to see that the `owner` property of an asset changed over time. I think that's in our plan for the next iteration.
sstone1 (Thu, 23 Feb 2017 20:42:08 GMT):
Currently the transaction registry only shows you the inputs to transactions, and does not show changes that occur as a result of CRUD (add/update/remove) operations on an asset registry.
Tetiana (Thu, 23 Feb 2017 20:52:38 GMT):
Has joined the channel.
omkardash (Thu, 23 Feb 2017 21:17:23 GMT):
@sstone1 That would be very helpful in a lot of use cases I'm exploring
jdockter (Thu, 23 Feb 2017 22:15:24 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=6qn6ivnuCLdfQDrFG) @sstone1 any thoughts on this?
omkardash (Fri, 24 Feb 2017 02:58:00 GMT):
@sstone1 @dselman I am not able to submit transactions successfully.
Error :
```
02:50:21.068 [Concerto] ERRO : @JS : JSTransactionExecutor :Could not find any functions to execute for transaction com.chubb.travel.GetQuote#string() undefined
02:50:21.076 [Concerto] ERRO : @JS : Engine :invoke_m() Caught error, rethrowing {"stack":["{Error}Could not find any functions to execute for transaction com.chubb.travel.GetQuote#string Error: Could not find any functions to execute for transaction com.chubb.travel.GetQuote#string"," at execute (../composer-runtime/lib/jstransactionexecutor.js:55:22)"," at ../composer-runtime/lib/engine.transactions.js:78:31"," at \u003canonymous\u003e:2:26885"," at \u003canonymous\u003e:2:27007"," at \u003canonymous\u003e:1:18228"," at \u003canonymous\u003e:1:13226"," at \u003canonymous\u003e:1:28054"," at \u003canonymous\u003e:1:27899"," at call (\u003cnative code\u003e)"," at \u003canonymous\u003e:1:9342"]}
02:50:21.077 [Concerto] DEBU : Entering Engine.handleCallback 0xc823d7f200 {0xc820155500
omkardash (Fri, 24 Feb 2017 02:59:30 GMT):
I'm running my a business network I created & deployed
omkardash (Fri, 24 Feb 2017 02:59:30 GMT):
I'm running a business network I created & deployed
omkardash (Fri, 24 Feb 2017 03:03:40 GMT):
Additional Information: I added the asset Quote (Q_001) and participant Insured (I_001) to the respective registries.
The below is how I'm submitting the Txn:
```
composer transaction submit -p defaultProfile -n travel-model -i WebAppAdmin -s DJY27pEnl16d -d '{"$class":"com.chubb.travel.GetQuote","quote":"Q_001","insured":"I_001"}'
```
omkardash (Fri, 24 Feb 2017 03:03:40 GMT):
Additional Information: I added the asset Quote (Q_001) and participant Insured (I_001) to the respective registries.
The below is how I'm submitting the Txn:
```
composer transaction submit -p defaultProfile -n poc-model -i WebAppAdmin -s DJY27pEnl16d -d '{"$class":"com.chubb.travel.GetQuote","quote":"Q_001","insured":"I_001"}'
```
sstone1 (Fri, 24 Feb 2017 04:21:36 GMT):
@jdockter the current version of composer-ui does not store the files in the browser. It always uses the version in the deployed business network. The deployed business network must have a name of `org.acme.biznet`, and if that business network doesn't exist it will deploy it for you.
mbwhite (Fri, 24 Feb 2017 09:17:48 GMT):
@jdockter exactly what I was trying to yesterday - and I have managed to do it succesfully; due to the way Fabric works as @sstone1 says it's tricker. 1.0 will be different.
I'll write down what I did and post it up.
dselman (Fri, 24 Feb 2017 10:01:19 GMT):
@omkardash feedback welcome on the design for the Historian: https://github.com/fabric-composer/fabric-composer/issues/55
EdMoffatt (Fri, 24 Feb 2017 11:33:47 GMT):
Proposal for a tweak to ACLs (this is as part of the UI design, but suggesting a terminology and order-of-properties change that would effect the raw files and doc too...)
EdMoffatt (Fri, 24 Feb 2017 11:33:51 GMT):
Message Attachments
EdMoffatt (Fri, 24 Feb 2017 11:34:50 GMT):
Above is how we structure them now, rendered in a UI.
Below is a proposal for alternative property names and ordering - intention is that these names/order are more easily readable as a sentence to tell what a rule is saying
EdMoffatt (Fri, 24 Feb 2017 11:34:50 GMT):
Top one is how we structure them now, rendered in a UI.
Bottom one is a proposal for alternative property names and ordering - intention is that these names/order are more easily readable as a sentence to tell what a rule is saying
EdMoffatt (Fri, 24 Feb 2017 11:35:35 GMT):
Any thoughts or feedback welcome!
tom.appleyard (Fri, 24 Feb 2017 11:52:07 GMT):
Has joined the channel.
dselman (Fri, 24 Feb 2017 11:52:10 GMT):
I like the proposed structure. As you say, it should be more self-explanatory.
tom.appleyard (Fri, 24 Feb 2017 11:53:45 GMT):
Couple of questions on composer:
On changing membership service enrolment credentials: Looking at the membersrvc dockerfile it looks like we should be able to extend from the hyperledger:fabric-membersrvc image and copy our own membersrvc.yaml file over the one in $GOPATH/bin?
Preconfiguring fabric compose without requiring an enrolment step: should be doable by mounting a volume at /home/composer/.composer-credentials with the credentials file prefilled, correct?
The Otto docs talk about using Go's interrupt channel to halt long-running code and prevent runaways. Do you guys do this out of the box, and if so is that execution limit configurable?
I notice the example code uses ES5 promises, so are you actually using https://github.com/robertkrimen/natto rather than Otto?
And presumably, we can't use ES6/7 just yet either (though presumably we could transpile it via Babel or Rollup reasonably easily)
dselman (Fri, 24 Feb 2017 11:56:50 GMT):
1. Yes, in theory that should work. I've not tried to do that however.
dselman (Fri, 24 Feb 2017 11:57:47 GMT):
2. I don't think this will work. The ECert is generated by member services based on the enrollment id / secret. @sstone1 would know for sure.
dselman (Fri, 24 Feb 2017 11:58:22 GMT):
3. This is one for @sstone1. As far as I know it is not configurable.
dselman (Fri, 24 Feb 2017 11:58:53 GMT):
4. Otto supports ES5, including promises.
dselman (Fri, 24 Feb 2017 11:59:05 GMT):
5. Correct.
dselman (Fri, 24 Feb 2017 12:00:10 GMT):
It is worth pointing out that our intention is to move to executing the JS code inside a Node.js chaincode container, rather than using the Otto interpreter.
tom.appleyard (Fri, 24 Feb 2017 12:10:21 GMT):
@dselman thanks!
tom.appleyard (Fri, 24 Feb 2017 12:10:37 GMT):
Another quick question - can you call Go chaincode from composer?
dselman (Fri, 24 Feb 2017 12:11:32 GMT):
No
tom.appleyard (Fri, 24 Feb 2017 12:11:47 GMT):
are there plans to add this as a feature?
dselman (Fri, 24 Feb 2017 12:13:28 GMT):
No plans. It raises a whole slew of nasty issues around essentially calling "unmanaged code", as well as data binding/mapping between the JS side and the Go side. Personally I think our time is best spent elsewhere, particularly as people are going to have to port their Go code to HL v1 anyway.
dselman (Fri, 24 Feb 2017 12:15:04 GMT):
We just published a tool to convert Google protobufs to Composer Models, to at least provide some help for people that want to port existing solutions to use Composer: https://github.com/fabric-composer/tools/tree/master/composer-protobuf
jdockter (Fri, 24 Feb 2017 12:39:03 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=o82PQRq8Efpnuy2N3) @EdMoffatt My only thoughts would be to provide as many examples as possible :)
jdockter (Fri, 24 Feb 2017 12:39:43 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=WxyosSepbGzQEXFe3) @mbwhite Great, looking forward to your post
jdockter (Fri, 24 Feb 2017 12:44:23 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=YGEfFSfCujTh6LJ2C) @sstone1 I did a scenario yesterday where I added a field to an asset that was already created in my network, then updated that model of that asset in my cto file, updated the model back into my current HL instance and was unable to work with old data via rest...couldn't even delete the old registry entry by id as it saying it was missing the new field value I added...feels like that registry entry is now unusable?
dselman (Fri, 24 Feb 2017 13:01:57 GMT):
You need to make the new field `optional` or give it a default value. You can do both in your .cto file.
dselman (Fri, 24 Feb 2017 13:02:31 GMT):
We probably need to improve how we handle/log invalid data.
ianj_mitchell@uk.ibm.com (Fri, 24 Feb 2017 13:06:43 GMT):
Has joined the channel.
jdockter (Fri, 24 Feb 2017 13:06:56 GMT):
I will try that but I have an issue open for optional as well :) , https://github.com/fabric-composer/fabric-composer/issues/253
jdockter (Fri, 24 Feb 2017 14:04:50 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=fPgw94jCqHng8BSq6) @dselman thanks that seems to have worked...not sure why its not working for an array per issue 253
dselman (Fri, 24 Feb 2017 14:05:49 GMT):
I'll take a look
dselman (Fri, 24 Feb 2017 14:09:12 GMT):
That stack is interesting...
dselman (Fri, 24 Feb 2017 14:09:27 GMT):
"message": "Instance ibm.procurement.laborNetwork.LogHours#undefined missing required field trxId", "stack": "
albrandt (Fri, 24 Feb 2017 14:10:53 GMT):
Has joined the channel.
dselman (Fri, 24 Feb 2017 14:10:56 GMT):
Does the asset have an empty array, or is the logHours field null?
jdockter (Fri, 24 Feb 2017 14:11:38 GMT):
asset TimeSheetListing identified by tsId {
o String tsId
--> PurchaseOrder po
o LogHours[] logHours optional
}
jdockter (Fri, 24 Feb 2017 14:11:59 GMT):
transaction LogHours identified by trxId {
o String trxId
o String date
o Double hours
--> Contractor contractor
--> TimeSheetListing listing
}
jdockter (Fri, 24 Feb 2017 14:12:27 GMT):
that is the structure
dselman (Fri, 24 Feb 2017 14:24:19 GMT):
Can you paste the JSON that you are POSTing into the issue please
jdockter (Fri, 24 Feb 2017 14:24:55 GMT):
sure
jdockter (Fri, 24 Feb 2017 14:33:28 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=FsBvPguMAjiGzKPXN) @dselman JSON posted
dselman (Fri, 24 Feb 2017 14:35:48 GMT):
Thanks. Not a bug?
RangaOnkaram (Fri, 24 Feb 2017 14:46:56 GMT):
Has joined the channel.
jdockter (Fri, 24 Feb 2017 14:47:15 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=RHv2HzA3eBEvgKHuL) @dselman yes, not a bug
dselman (Fri, 24 Feb 2017 15:20:43 GMT):
We just released version 0.4.4: https://github.com/fabric-composer/fabric-composer/releases/tag/v0.4.4
dselman (Fri, 24 Feb 2017 15:20:56 GMT):
It is now available on npm: https://www.npmjs.com/package/composer-cli
dselman (Fri, 24 Feb 2017 15:21:53 GMT):
:drum:
jdockter (Fri, 24 Feb 2017 16:08:11 GMT):
What should we being for steps to upgrade?
dselman (Fri, 24 Feb 2017 16:13:49 GMT):
Update your package.json to refer to 0.4.4 and run `npm install`
dselman (Fri, 24 Feb 2017 16:14:07 GMT):
npm update composer-cli -g
jdockter (Fri, 24 Feb 2017 16:17:11 GMT):
if I have existing business networks running anything special I need to do there other than recreate bna and update?
jdockter (Fri, 24 Feb 2017 16:18:30 GMT):
On package.json which one are you referring to?
jdockter (Fri, 24 Feb 2017 16:20:21 GMT):
How about if I have the loopback server running?
mbwhite (Fri, 24 Feb 2017 16:21:36 GMT):
@jdockter BNAs shouldn't need to be regenerated; the package.json is for any applications that you might have written yourself.
mbwhite (Fri, 24 Feb 2017 16:22:12 GMT):
@jdockter I've also written the first draft of the process I used yesterday to connect to the HLF in the Playground docker image. https://github.com/mbwhite/documents/blob/master/Connecting%20to%20playground%20HLF.md
paul.sitoh (Fri, 24 Feb 2017 16:28:42 GMT):
Folks, let's say in my data model I don't want to store personal details directly. Does compose provide some kind of callback types that can take a real value and hash it? For example, instead of storing a person name as "Paul Sitoh", I like it to store person name in Hash form.
jdockter (Fri, 24 Feb 2017 16:30:24 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=3ne6seH6fYixhRzrA) @mbwhite Thanks I will take a look at this later today
jdockter (Fri, 24 Feb 2017 16:31:05 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=sQL7cx9LsmTnogeSf) @dselman Is there a way to tie which stories were included in this release?
dselman (Fri, 24 Feb 2017 16:36:01 GMT):
Yes, the contents are documented on the release itself: https://github.com/fabric-composer/fabric-composer/releases/tag/v0.4.4
jdockter (Fri, 24 Feb 2017 18:55:11 GMT):
okay...where can I find out more about, 'Load sample networks from GitHub into Playground (Composer UI)' ?
dselman (Fri, 24 Feb 2017 18:56:22 GMT):
Basically the Composer-UI now pulls samples from https://github.com/fabric-composer/sample-networks when you click the import sample button. This makes it easier for us to publish new samples and keep them up to date.
jdockter (Fri, 24 Feb 2017 18:57:02 GMT):
So I would see that option now if I repull composer ui locally?
dselman (Fri, 24 Feb 2017 18:58:19 GMT):
Yes. Unfortunately when we use the public GitHub API to access those repos we can hit rate limits -- so if you don't see the samples, it is likely because we've hit a rate limit cap. In the new Playground we're using OAuth to work around that.
jdockter (Fri, 24 Feb 2017 19:00:30 GMT):
okay I will give that a try, thanks
ktekavec@us.ibm.com (Fri, 24 Feb 2017 19:09:32 GMT):
Has joined the channel.
dselman (Fri, 24 Feb 2017 19:30:20 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=ayDss87nFgozFMuA8) @paul.sitoh No, we don't have this feature. Can you describe in more detail how you'd like this to work?
sstone1 (Fri, 24 Feb 2017 20:24:42 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=u9jMJLW9qXag4By6y) @dselman @tom.appleyard you always need to enroll using an enrollment ID and enrollment secret. If you have already enrolled, then Tom is correct; you can simply place the ECert (member.tom1) file in the right directory and Composer will use it without trying to enroll again.
sstone1 (Fri, 24 Feb 2017 20:26:33 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=uspXgNwQhvYr4EPNn) @dselman @tom.appleyard we are using the example code from Natto (which basically adds two functions to Otto) to add event loop support required to support promises and async callbacks. I'd rather we keep referring to it as "we use Otto" as the bulk of the code is Otto (I have no idea why robertkrimen didn't just make the Natto stuff a feature of Otto)
sstone1 (Fri, 24 Feb 2017 20:28:44 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=BBWRS7aLXFXkw5ngi) @dselman @tom.appleyard correct, we don't currently make any attempt to timeout transaction processor functions. I'd rather not try to do anything with Go channels at this point, as although it's entirely possible we might end up building functionality that is difficult to port to Node.js (@davidkel this is one to bear in mind for the future - timing out Node.js chaincode)
sstone1 (Fri, 24 Feb 2017 20:29:56 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=TYcCh9qHDzsFGeCXF) @dselman @tom.appleyard correct, and just to expand as an FYI, we Babelify all of our JavaScript runtime code (written in ES6) and use the Babel polyfill in Otto to provide Promise support.
sstone1 (Fri, 24 Feb 2017 20:38:14 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=o82PQRq8Efpnuy2N3) @EdMoffatt I :heart: this (participant operation resource vs resource operation participant), but I am conscious that we've already gone round this recently as I raised the same point about it being easier to read/speak/understand as a result of the workshops.
sstone1 (Fri, 24 Feb 2017 20:38:57 GMT):
I am not keen on the UI showing a different order to the underlying ACL file though, that seems a bit odd.
sstone1 (Fri, 24 Feb 2017 20:39:18 GMT):
(as in, we should change the ACL file if we agree it's the way to go)
sstone1 (Fri, 24 Feb 2017 20:40:02 GMT):
Ah, I think Ed already hinted at that... I'll shut up now ;)
sstone1 (Fri, 24 Feb 2017 20:43:20 GMT):
@paul.sitoh just to discuss GitHub issue #264 (TDD in Composer), have you seen that we support unit testing transaction processor functions in Node.js using our "embedded runtime"? For example: https://github.com/fabric-composer/sample-networks/blob/master/packages/DigitalProperty-Network/test/DigitalLandTitle.js
jdockter (Fri, 24 Feb 2017 20:45:01 GMT):
When I run composer ui locally, after installing via npm, if I want to use the Deploy, are all the files listed in my Editor used?
sstone1 (Fri, 24 Feb 2017 20:45:18 GMT):
@jdockter yes, when you deploy, all files in the editor are added to the BNA and deployed.
jdockter (Fri, 24 Feb 2017 20:46:06 GMT):
so what is the default acl string...tried to remove the example and it's giving me errors
jdockter (Fri, 24 Feb 2017 20:46:47 GMT):
or should I just reset the network?
sstone1 (Fri, 24 Feb 2017 20:46:54 GMT):
`R1 | org.acme.biznet | ALL | ANY | (true) | ALLOW | Allow everybody access to everything`
sstone1 (Fri, 24 Feb 2017 20:47:01 GMT):
the namespace must be correct though
jdockter (Fri, 24 Feb 2017 20:48:06 GMT):
Error: Expected [\n\r\u2028\u2029] but end of input found. Line 1 column 102
sstone1 (Fri, 24 Feb 2017 20:49:13 GMT):
you need a newline at the end of the file
jdockter (Fri, 24 Feb 2017 20:49:31 GMT):
mmm, leave that page and the default comes right back :)
sstone1 (Fri, 24 Feb 2017 20:49:31 GMT):
... ideally you shouldn't though ...
sstone1 (Fri, 24 Feb 2017 20:49:44 GMT):
yeah, if you don't deploy the changes are discarded ;)
sstone1 (Fri, 24 Feb 2017 20:49:56 GMT):
the latest designs for the playground fix that issue
jdockter (Fri, 24 Feb 2017 20:49:57 GMT):
guess I need to be quick
sstone1 (Fri, 24 Feb 2017 20:50:13 GMT):
this is why we keep me away from writing UIs
jdockter (Fri, 24 Feb 2017 20:50:25 GMT):
HA :)
jdockter (Fri, 24 Feb 2017 20:51:43 GMT):
So if I'm just using the browser how do I know when this deploy is done?
jdockter (Fri, 24 Feb 2017 20:52:18 GMT):
I'm using Chrome
jdockter (Fri, 24 Feb 2017 20:52:28 GMT):
nm
jdockter (Fri, 24 Feb 2017 20:54:37 GMT):
resetting network seems to blow up....Cannot GET /editor
jdockter (Fri, 24 Feb 2017 20:55:20 GMT):
cant get any screen back now
jdockter (Fri, 24 Feb 2017 20:56:16 GMT):
killed and restarted...now it's fine
sstone1 (Fri, 24 Feb 2017 20:59:40 GMT):
lol, if you are using a real HLF when the dialog goes away the deploy is done
sstone1 (Fri, 24 Feb 2017 20:59:48 GMT):
there is no dialog if using the web connection profile
jdockter (Fri, 24 Feb 2017 21:01:16 GMT):
yup, screens just were responding and network reset got very weird
jdockter (Fri, 24 Feb 2017 21:01:16 GMT):
yup, screens just weren't responding and network reset got very weird
jdockter (Fri, 24 Feb 2017 21:08:48 GMT):
If I load up the web browser with a model, assets, and participants and then create a new profile to deploy to real HLF will any of the in memory assets and participants also get loaded?
sstone1 (Fri, 24 Feb 2017 21:11:05 GMT):
nope
sstone1 (Fri, 24 Feb 2017 21:11:30 GMT):
well, nope if you mean some sort of automatic data migration from web browser to real HLF
jdockter (Fri, 24 Feb 2017 21:11:56 GMT):
yeah...didn't think so ....but you guys are good so didn't want to assume :)
jdockter (Fri, 24 Feb 2017 21:17:05 GMT):
If I create the hlfabric profile, which is built into the docker container of composer ui, when it asks me for identity I want 'admin' correct?
jdockter (Fri, 24 Feb 2017 21:17:05 GMT):
If I create the hlfabric profile, which is built into the docker container of composer ui, when it asks me for identity what should I put in?
jdockter (Fri, 24 Feb 2017 21:18:04 GMT):
and secret '723b5f8165'
sstone1 (Fri, 24 Feb 2017 21:20:45 GMT):
admin / Xurw3yU9zI0l
jdockter (Fri, 24 Feb 2017 21:23:17 GMT):
mmm...got this error again...Cannot GET /settings
sstone1 (Fri, 24 Feb 2017 21:23:58 GMT):
if you do a `docker logs
sstone1 (Fri, 24 Feb 2017 21:24:00 GMT):
what do you get?
jdockter (Fri, 24 Feb 2017 21:24:17 GMT):
killed and restarted...now it's saying deploying sample business network
jdockter (Fri, 24 Feb 2017 21:24:39 GMT):
seeing lots of chain code in terminal where I launched composer-ui
jdockter (Fri, 24 Feb 2017 21:25:20 GMT):
okay so now I'm 'admin' connected to hlfabric connection profile
jdockter (Fri, 24 Feb 2017 21:26:38 GMT):
since I was working locally before I started with composer-ui I now have two dev-vp0-
jdockter (Fri, 24 Feb 2017 21:28:00 GMT):
I installed with npm so no docker composer-ui container
sstone1 (Fri, 24 Feb 2017 21:28:50 GMT):
ah okay, it would have been the stdout of the composer-ui command
sstone1 (Fri, 24 Feb 2017 21:29:02 GMT):
it's possible that it crashed when you get the "Cannot GET" errors
jdockter (Fri, 24 Feb 2017 21:29:56 GMT):
well it didn't seem to crash the terminal command...I did that manually and then restarted via 'composer-ui' command
jdockter (Fri, 24 Feb 2017 21:33:49 GMT):
so it looks like it deployed the auction model...so probably should have just connected locally first...then started to build up my business network as nothing really came from the web profile
jdockter (Fri, 24 Feb 2017 21:34:27 GMT):
or is that not the expected behavior
jdockter (Fri, 24 Feb 2017 21:34:29 GMT):
?
sstone1 (Fri, 24 Feb 2017 21:36:32 GMT):
nothing will be migrated between connection profiles
sstone1 (Fri, 24 Feb 2017 21:37:02 GMT):
the business network definition is stored in the "blockchain" (either real HLF or web browser) and so it doesn't migrate as you switch connection profiles
jdockter (Fri, 24 Feb 2017 21:53:28 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=T7QxmqGpiqS3F2fir) @mbwhite so what I ended up doing is installing composer-ui locally via npm, then I used the hlfabric connection profile to deploy the default auction network locally, ie it created on my local machine a new docker dev-vp0-
MikeC711 (Sat, 25 Feb 2017 02:55:31 GMT):
Has joined the channel.
MikeC711 (Sat, 25 Feb 2017 03:05:39 GMT):
Just diving in for a project that of course has a tight schedule. I had an ubuntu 16 from some old busywork testing I did ... but when I wanted to install composer, I saw that my node and npm were too old, so not having upgrades in current repositories, I followed instructions here: http://tecadmin.net/install-latest-nodejs-npm-on-ubuntu/# which put my node and npm a little bit ahead. When I tried: npm install -g composer-cli ... it lost its mind a little. Looking to include file (maybe that's only w/my full client which seems to only work with slack.com sites. Anyway, with slightly too new node and npm on ubuntu 16 ... command lost it badly.
MikeC711 (Sat, 25 Feb 2017 03:13:34 GMT):
Message Attachments
dselman (Sat, 25 Feb 2017 05:08:27 GMT):
@MikeC711 Fabric currently supports grpc 1.0.0 which doesn't support Node 7. We need Fabric to upgrade grpc. E.g. https://github.com/grpc/grpc/issues/8495
dselman (Sat, 25 Feb 2017 05:09:10 GMT):
So for the moment you need to use Node 6, as documented here: https://fabric-composer.github.io/reference/platforms.html
venkatrammohan (Sat, 25 Feb 2017 16:46:03 GMT):
Has joined the channel.
movee2005 (Sat, 25 Feb 2017 17:15:16 GMT):
Has joined the channel.
movee2005 (Sat, 25 Feb 2017 17:15:29 GMT):
movee200512:13 PM
What is the best way to understand composer.. The Quickstart is giving errors..
I cloned the composer from github and built it. Now I am in composer-playground. What should I see once i execute npm start (the last command) any help
stuartcjones (Sat, 25 Feb 2017 18:22:02 GMT):
Has joined the channel.
stuartcjones (Sat, 25 Feb 2017 18:25:41 GMT):
I am having trouble installing Composer on a MacOS environment. I followed the instructions in the Quickstart link that's on fabric-composer.org. This worked though it doesn't get me to a point where I have something to run. So I tried Lab 4: Installing and Running the Fabric Composer Generator (Angular). This works quite well until I get to the point of running Fabric Composer Generator (Angular) - Section 2, #4. It says to open a new window and type "yo" I do this and I see:
? 'Allo Stuart! What would you like to do? (Use arrow keys)
Run a generator
❯ Fabric Composer
──────────────
Update your generators
Install a generator
Find some help
Get me out of here!
──────────────
stuartcjones (Sat, 25 Feb 2017 18:26:43 GMT):
I tried the first couple of options but saw nothing like the expected output that's documented in the instructions
stuartcjones (Sat, 25 Feb 2017 18:27:05 GMT):
Anyone have any suggestions about where I am going wrong? Thanks
rameshthoomu (Sat, 25 Feb 2017 18:40:13 GMT):
Has joined the channel.
Nishi (Sat, 25 Feb 2017 18:40:44 GMT):
Has joined the channel.
movee2005 (Sat, 25 Feb 2017 18:49:45 GMT):
well 7 of us are trying in the lab here and we can't get past the npm install
barath (Sat, 25 Feb 2017 18:50:04 GMT):
Has joined the channel.
barath (Sat, 25 Feb 2017 18:50:57 GMT):
Yes, on a Mac I am facing the following problem when I do an `npm install`
```Creating Business Network Archive[object Object]
undefined
Unable to locate the npm module specified
TypeError: Cannot read property 'length' of undefined
Command failed.
npm ERR! Darwin 16.4.0
npm ERR! argv "/usr/local/bin/node" "/Users/barath/gopath/src/github.com/hyperledger/fabric/fabric-composer/packages/getting-started/node_modules/.bin/npm" "run" "deployNetwork"
npm ERR! node v6.9.5
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! getting-started@1.0.0 deployNetwork: `composer archive create --sourceType module --sourceName digitalproperty-network --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 deployNetwork script 'composer archive create --sourceType module --sourceName digitalproperty-network --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! composer archive create --sourceType module --sourceName digitalproperty-network --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/barath/gopath/src/github.com/hyperledger/fabric/fabric-composer/packages/getting-started/npm-debug.log
npm ERR! Darwin 16.4.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v6.9.5
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! getting-started@1.0.0 install: `scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 install script 'scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/barath/gopath/src/github.com/hyperledger/fabric/fabric-composer/packages/getting-started/npm-debug.log```
barath (Sat, 25 Feb 2017 18:50:57 GMT):
Yes, on a Mac I am facing the following problem when I do an `nom install`
```Creating Business Network Archive[object Object]
undefined
Unable to locate the npm module specified
TypeError: Cannot read property 'length' of undefined
Command failed.
npm ERR! Darwin 16.4.0
npm ERR! argv "/usr/local/bin/node" "/Users/barath/gopath/src/github.com/hyperledger/fabric/fabric-composer/packages/getting-started/node_modules/.bin/npm" "run" "deployNetwork"
npm ERR! node v6.9.5
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! getting-started@1.0.0 deployNetwork: `composer archive create --sourceType module --sourceName digitalproperty-network --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 deployNetwork script 'composer archive create --sourceType module --sourceName digitalproperty-network --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! composer archive create --sourceType module --sourceName digitalproperty-network --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/barath/gopath/src/github.com/hyperledger/fabric/fabric-composer/packages/getting-started/npm-debug.log
npm ERR! Darwin 16.4.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v6.9.5
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! getting-started@1.0.0 install: `scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 install script 'scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/barath/gopath/src/github.com/hyperledger/fabric/fabric-composer/packages/getting-started/npm-debug.log```
rameshthoomu (Sat, 25 Feb 2017 19:19:34 GMT):
@barath Observed the same error while executing npm install from here https://fabric-composer.github.io/start/quickstart.html but this issue got resolved for me after executing step 3, 4 and 5 from this doc https://fabric-composer.github.io/start/quickstart.html manually in CLI.
barath (Sat, 25 Feb 2017 19:27:02 GMT):
@rameshthoomu Awesome followed the steps one by one and ran a `npm test` successfully
barath (Sat, 25 Feb 2017 19:27:07 GMT):
Thanks :)
MikeC711 (Sat, 25 Feb 2017 22:49:52 GMT):
@dselman Thanks. I'll fig around and figure out how to get that level. Hopefully ubuntu 16 won't be an issue ... although I may be putting ubuntu 14 on my personal machine on Monday or Tuesday.
suryalanka (Sun, 26 Feb 2017 00:23:08 GMT):
Has joined the channel.
beauson45 (Sun, 26 Feb 2017 00:32:56 GMT):
Has joined the channel.
venkatrammohan (Sun, 26 Feb 2017 01:11:57 GMT):
use composer archive create -m digitalproperty-network --archiveFile digitalPropertyNetwork.bna
instead of composer archive create --sourceType module --sourceName digitalproperty-network --archiveFile digitalPropertyNetwork.bna
skbodwell (Sun, 26 Feb 2017 01:40:38 GMT):
Has joined the channel.
blackskygg (Sun, 26 Feb 2017 03:42:22 GMT):
Has joined the channel.
blackskygg (Sun, 26 Feb 2017 03:45:01 GMT):
Hi there. I am in a team working on a blockchain project, and we've chosen fabric as our base platform. But we want the ability to quantify the resources used by every chaincode execution. So we want to know if there are any maintainers currently working on integrating fabric with Ethereum EVM or doing similar things.
dselman (Sun, 26 Feb 2017 14:46:10 GMT):
@blackskygg interesting. Can you share the purpose of the quantification and the required granularity?
dselman (Sun, 26 Feb 2017 15:18:12 GMT):
@venkatrammohan @barath -- this has been fixed. Sorry, we changed the arguments to `composer archive create` and the gettingstarted package.json script was not updated.
stuartcjones (Sun, 26 Feb 2017 18:39:22 GMT):
I take back what I said above. I figured out that "Fabric Composer" might be an option and so I clicked on this. Eventually, I had a generated Angular application that gave me access to the digitalPorpety business network.
stuartcjones (Sun, 26 Feb 2017 18:41:14 GMT):
However, this is not what I am actually trying to do. I want to get access to the Composer tool and build my own business network. I thought that this what what I was doing but it turns out not to be the case. I will look through the other labs to see if I can find one that shows how to get access to the tool ... unless someone can point me at that?
sstone1 (Sun, 26 Feb 2017 18:47:50 GMT):
@stuartcjones https://fabric-composer.github.io/start/getting-started-playground.html
stuartcjones (Sun, 26 Feb 2017 19:18:07 GMT):
Thanks, I will try this out
stuartcjones (Sun, 26 Feb 2017 19:23:36 GMT):
Ran through the lab and got all the way to the end. I got the error 'predicted' in the lab: ERROR: for membersrvc Cannot start service membersrvc: driver failed programming external connectivity on endpoint blockchain_membersrvc_1 (13fda2b27e5be7c375aa871a19685477013e29c618f839c9355b9c8ca9affe06): Bind for 0.0.0.0:7054 failed: port is already allocated
stuartcjones (Sun, 26 Feb 2017 19:24:04 GMT):
what's the simplest way to free up the ports (for someone like me that is a docker newbie) ?
stuartcjones (Sun, 26 Feb 2017 19:24:32 GMT):
Can I just restart docker and re-run the docker-compose command?
sstone1 (Sun, 26 Feb 2017 19:42:25 GMT):
`docker ps -aq | xargs docker rm -f`
sstone1 (Sun, 26 Feb 2017 19:42:30 GMT):
that deletes all running docker containers
sstone1 (Sun, 26 Feb 2017 19:42:32 GMT):
freeing all ports
dselman (Sun, 26 Feb 2017 19:43:59 GMT):
@stuartcjones good to see you here Stuart! Welcome to the community.
stuartcjones (Sun, 26 Feb 2017 21:00:30 GMT):
Perfect ... ran the above and re-ran the docker-compose up -d and now I have a running Composer UI
stuartcjones (Sun, 26 Feb 2017 21:00:38 GMT):
Thanks for the assistance
stuartcjones (Sun, 26 Feb 2017 21:04:37 GMT):
My default browser is Safari, though I noticed comments about use of Firefox somewhere. Is Firefox the only supported environment right now? (The UI comes up in Safari though I haven't tried to do much with it yet)
sstone1 (Sun, 26 Feb 2017 21:08:04 GMT):
No problem. Safari is fine, as is Chrome. I don't think many people have tried IE/Edge yet though.
tarima (Mon, 27 Feb 2017 05:18:28 GMT):
Hi I have question.
tarima (Mon, 27 Feb 2017 05:19:30 GMT):
Now I do this command : yo fabric-composer:angular. https://fabric-composer.github.io/tasks/genapp.html#angular2-application
tarima (Mon, 27 Feb 2017 05:20:12 GMT):
then where is file path of 'org.acme.biznet@0.0.2.bna'
blackskygg (Mon, 27 Feb 2017 05:44:00 GMT):
@dselman We want to borrow the concept of "Gas" from Ethereum, so we have to bill every single predefined instruction execution.
tarima (Mon, 27 Feb 2017 07:13:47 GMT):
After I tried digitalpropertynetwork@0.0.1.bna
tarima (Mon, 27 Feb 2017 07:15:30 GMT):
the screen does not change even
tarima (Mon, 27 Feb 2017 07:16:00 GMT):
Message Attachments
dselman (Mon, 27 Feb 2017 07:58:53 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=iRS6zcM9xip2fsY7B) @blackskygg can you say why? Is this a billing/metering concern, the halting problem, a trust issue or something else?
hyp0th3rmi4 (Mon, 27 Feb 2017 08:01:08 GMT):
Has joined the channel.
dselman (Mon, 27 Feb 2017 08:15:32 GMT):
@tarima we are looking into this and will get back to you ASAP. Sorry!
blackskygg (Mon, 27 Feb 2017 08:21:31 GMT):
I think this page has explained the motivation of doing so. https://ethereum.gitbooks.io/frontier-guide/content/costs.html
dselman (Mon, 27 Feb 2017 08:27:51 GMT):
@blackskygg I understand why Ethereum does it in the context of a trustless public network, can you elaborate why you want to do it on Hyperledger Fabric?
blackskygg (Mon, 27 Feb 2017 08:31:35 GMT):
Because we are planning to use fabric in a public chain setting, by implementing a new consensus plugin.
Jakeeyturner (Mon, 27 Feb 2017 09:37:40 GMT):
@tarima Once you're ran `node app.js` can you also run `ng serve` in a separate terminal window in the 'angular-app' directory?
tarima (Mon, 27 Feb 2017 09:39:58 GMT):
I think yes because I run _npm start_ in 'angular-app'
tarima (Mon, 27 Feb 2017 09:50:33 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=L3tucyB5ogkCi9bKx) @Jakeeyturner You right! my Screenshots doesn't run ng serve! I try node app.js and ng serve in separate.
Jakeeyturner (Mon, 27 Feb 2017 09:50:34 GMT):
We've identified the issues in the angular generator and we'll try to push the changes shortly, we'll let you know when they're available
tarima (Mon, 27 Feb 2017 09:52:17 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=HrZcBGBY7deHPssWh) @Jakeeyturner cloud you tell me What package changed please?
dselman (Mon, 27 Feb 2017 09:59:07 GMT):
While @Jakeeyturner is making the fix (sorry, again!) here is the workaround.
dselman (Mon, 27 Feb 2017 09:59:34 GMT):
1. Make sure you are running Node 6. I tested this with Node v6.9.5
dselman (Mon, 27 Feb 2017 10:01:06 GMT):
2. Once you are running Node 6, globally install the following: composer-cli, bower, typings, @angular-cli, yo, generator-fabric-composer
dselman (Mon, 27 Feb 2017 10:01:06 GMT):
2. Once you are running Node 6, globally install the following: composer-cli, bower, typings, @angular/cli, yo, generator-fabric-composer
dselman (Mon, 27 Feb 2017 10:01:41 GMT):
3. Run the QuickStart, as described here: https://fabric-composer.github.io/start/quickstart.html
dselman (Mon, 27 Feb 2017 10:02:58 GMT):
4. Type: yo and select the Fabric Composer option
dselman (Mon, 27 Feb 2017 10:03:19 GMT):
5. Select Angular2 Application
dselman (Mon, 27 Feb 2017 10:03:37 GMT):
6. Select the option to use a running network
dselman (Mon, 27 Feb 2017 10:04:06 GMT):
7. Other options can remain defaults
dselman (Mon, 27 Feb 2017 10:04:49 GMT):
8. Wait for the generator to complete...
dselman (Mon, 27 Feb 2017 10:06:03 GMT):
9. cd into the directory for the generated app
dselman (Mon, 27 Feb 2017 10:06:15 GMT):
10. npm uninstall --save-dev angular-cli
dselman (Mon, 27 Feb 2017 10:06:24 GMT):
11. npm install --save-dev @angular/cli@latest
dselman (Mon, 27 Feb 2017 10:06:52 GMT):
12. Edit angular-cli.json as follows:
dselman (Mon, 27 Feb 2017 10:07:03 GMT):
Before:
"environments": {
"source": "environments/environment.ts",
"dev": "environments/environment.ts",
"prod": "environments/environment.prod.ts"
}
After:
"environmentSource": "environments/environment.ts",
"environments": {
"dev": "environments/environment.ts",
"prod": "environments/environment.prod.ts"
}
dselman (Mon, 27 Feb 2017 10:09:19 GMT):
13. Type ng serve
dselman (Mon, 27 Feb 2017 10:09:34 GMT):
14. In a new terminal run `node app.js`
dselman (Mon, 27 Feb 2017 10:10:26 GMT):
15. Go to: http://localhost:4200
dselman (Mon, 27 Feb 2017 10:10:52 GMT):
16. You should see the LandTitles when you select Assets > LandTitle
dselman (Mon, 27 Feb 2017 10:11:36 GMT):
We will update the docs as well as the generated code to take into account these changes in Angular ASAP.
dselman (Mon, 27 Feb 2017 10:21:18 GMT):
Message Attachments
tarima (Mon, 27 Feb 2017 12:21:57 GMT):
@dselman Thanks you kindly.
Immediately, I tried to do it. but this error has occurred for 'ng serve' do you know anthing?
tarima (Mon, 27 Feb 2017 12:22:44 GMT):
Message Attachments
dselman (Mon, 27 Feb 2017 12:40:41 GMT):
It looks like you are still using the angular-cli module instead of @angular/cli (step 2). Try an `npm uninstall -g angule-cli` followed by `npm install -g @angular/cli`
dselman (Mon, 27 Feb 2017 12:40:41 GMT):
It looks like you are still using the angular-cli module instead of @angular/cli (step 2). Try an `npm uninstall -g angular-cli` followed by `npm install -g @angular/cli`
tarima (Mon, 27 Feb 2017 12:55:46 GMT):
Thank you I tried it later.
MikeC711 (Mon, 27 Feb 2017 13:05:17 GMT):
Sorry to pester, but still trying to get started. On an ubuntu 16.0.4 VM, I had troubles on too current a node and npm, so I now have node: v6.10.0 and npm: 4.3.0 which would appear to be OK. I will be uploading the full file with the output, but I definitely see some of what appear to be troublesome messages:when I try: npm install -g composer-cli
npm WARN deprecated node-uuid@1.4.7: use uuid module instead
gyp WARN EACCES user "root" does not have permission to access the dev dir "/root/.node-gyp/6.10.0"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/lib/node_modules/composer-cli/node_modules/hashtable/.node-gyp"
> grpc@1.0.0 install /usr/lib/node_modules/composer-cli/node_modules/grpc
> node-pre-gyp install --fallback-to-build
Then it seems to think things are OK until I finish with:
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/composer-cli/node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.1: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
Trying to see where I'm going wrong. Thanks,
MikeC711 (Mon, 27 Feb 2017 13:06:10 GMT):
Message Attachments
dselman (Mon, 27 Feb 2017 13:15:50 GMT):
Those warnings are harmless and should not be an issue.
MikeC711 (Mon, 27 Feb 2017 13:24:37 GMT):
Thanks, I will continue on then.
mayerwa (Mon, 27 Feb 2017 13:58:44 GMT):
Has joined the channel.
vbortnik (Mon, 27 Feb 2017 15:21:10 GMT):
Has joined the channel.
tarima (Mon, 27 Feb 2017 15:31:16 GMT):
@dselman certainly, I was missing `npm install -g @angular/cli`. so I tried again `npm install -g @angular/cli@latest` but doesn't change.
so Please continue to help.
MikeC711 (Mon, 27 Feb 2017 15:31:33 GMT):
Made some progress, but npm test fails. I have no docker containers running (before or after) ... wasn't sure if npm install was supposed to start some (didn't see that). Errors are:
info: [Composer-GettingStarted] Fabric Composer: Getting Started appliation
info: [Composer-GettingStarted] Adding default land titles to the asset registry
2017-02-27T15:22:53.797Z ERROR FSConnectionProfileStore :load() Failed to loaded connection profile defaultProfile {"0":{"stack":["{Error}ENOENT: no such file or directory, open '/root/.composer-connection-profiles/defaultProfile/connection.json' Error: ENOENT: no such file or directory, open '/root/.composer-connection-profiles/defaultProfile/connection.json'"," at Error (native)"]}}$
error: [Composer-GettingStarted] Error: Failed to load connection profile defaultProfile
Command failed.
tarima (Mon, 27 Feb 2017 15:31:39 GMT):
Message Attachments
tarima (Mon, 27 Feb 2017 15:31:56 GMT):
Message Attachments
MikeC711 (Mon, 27 Feb 2017 15:35:21 GMT):
No /root/.composer-connection-profiles directory ... no .composer-connection-profiles anywhere downstream from /root/
dselman (Mon, 27 Feb 2017 15:43:47 GMT):
@tarima what is the error now please?
dselman (Mon, 27 Feb 2017 15:45:57 GMT):
@tarima can you please run `node app.js` and 'ng serve` as separate commands?
dselman (Mon, 27 Feb 2017 15:45:57 GMT):
@tarima can you please run `node app.js` and `ng serve` as separate commands?
dselman (Mon, 27 Feb 2017 15:48:35 GMT):
@MikeC711 the connection profiles should be created in the home directory. Is the /root?
dselman (Mon, 27 Feb 2017 15:48:35 GMT):
@MikeC711 the connection profiles should be created in the home directory. Is that /root?
dselman (Mon, 27 Feb 2017 15:51:46 GMT):
@MikeC711 from your earlier error, it would appear that there is an issue access the homedir for the user root. E.g. `gyp WARN EACCES user "root" does not have permission to access the dev dir "/root/.node-gyp/6.10.0"` Can you try using a non-root user please?
MikeC711 (Mon, 27 Feb 2017 16:13:12 GMT):
Thanks for quick response, I assumed root as I'm not sure I can start docker containers as non-root. Anyway, I assumed (errantly?) that I had to go back to the beginning and thus I did:
mcasile@mcasile:~$ npm install -g composer-cli
npm WARN deprecated node-uuid@1.4.7: use uuid module instead
npm WARN checkPermissions Missing write access to /usr/lib/node_modules/composer-cli/node_modules/asn1
npm WARN checkPermissions Missing write access to /usr/lib/node_modules/composer-cli
npm WARN checkPermissions Missing write access to /usr/lib/node_modules/composer-cli/node_modules
npm WARN checkPermissions Missing write access to /usr/lib/node_modules
/usr/lib
└─┬ composer-cli@0.4.4
└─┬ composer-admin@0.4.4
└─┬ composer-connector-hlf@0.4.4
└─┬ hfc@0.6.5
└── asn1@0.2.3 (git+https://github.com/mcavage/node-asn1.git#2c2a19e285a609adfca36a0114bb5b86cf4ac61b)
tarima (Mon, 27 Feb 2017 16:15:24 GMT):
@dselman Thank you! so much! Now run it. (I tried `npm install -g @angular/cli' ( sorry I'm skip it). I so happy!
tarima (Mon, 27 Feb 2017 16:15:42 GMT):
:laughing:
MikeC711 (Mon, 27 Feb 2017 16:28:18 GMT):
Didn't mean to send that yet. Should I have picked it up at some point after that such as: git clone https://github.com/fabric-composer/sample-applications.git
Anyway, seeing that composer was there from root ... I went ahead with the following commands as non-root (since npm install -g composer-cli did not work as non-root)
All was going well until on npm install it could not find docker. I configured this docker back when doing Blockchain testing of Busywork back in the day ... so I'm not sure if I should be specifying something different, or if this is because I'm nonRoot and I need some special configuration to run these docker commands as non-root. I am sending all of the details. Note the not finding docker and (as a result?) the errors at the bottom wrt the daemon. Thanks,
MikeC711 (Mon, 27 Feb 2017 16:28:37 GMT):
Message Attachments
Jakeeyturner (Mon, 27 Feb 2017 16:40:49 GMT):
What result do you get from `docker -v`
MikeC711 (Mon, 27 Feb 2017 16:51:09 GMT):
Thanks for replying Jake:
Docker version 1.13.1, build 092cba3
Jakeeyturner (Mon, 27 Feb 2017 16:54:11 GMT):
What about when you do `docker-compose -v`
suryalanka (Mon, 27 Feb 2017 16:54:49 GMT):
@MikeC711 : Can you run ``` docker ps ``` command and share the output
suryalanka (Mon, 27 Feb 2017 16:54:49 GMT):
@MikeC711 : Can you run "docker ps" command and share the output
MikeC711 (Mon, 27 Feb 2017 16:56:51 GMT):
docker-compose version 1.8.1, build 878cff1
mcasile@mcasile:~/sample-applications/packages/getting-started$ docker ps
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.26/containers/json: dial unix /var/run/docker.sock: connect: permission denied
mcasile@mcasile:~/sample-applications/packages/getting-started$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
MikeC711 (Mon, 27 Feb 2017 16:58:08 GMT):
I sent both docker ps to illustrate that non-root apparently does not have an ability to run docker. I checked and neither has any env vars that include docker in them
suryalanka (Mon, 27 Feb 2017 16:59:18 GMT):
@MikeC711 : you should add your user to docker group ``` sudo usermod -aG docker
suryalanka (Mon, 27 Feb 2017 16:59:18 GMT):
@MikeC711 : you should add your user to docker group ``` sudo usermod -aG docker
suryalanka (Mon, 27 Feb 2017 16:59:18 GMT):
@MikeC711 : you should add your user to docker group ```sudo usermod -aG docker
suryalanka (Mon, 27 Feb 2017 16:59:18 GMT):
@MikeC711 : you should add your user to docker group by running command "sudo usermod -aG docker
suryalanka (Mon, 27 Feb 2017 16:59:18 GMT):
@MikeC711 : you should add your user to docker group by running command `sudo usermod -aG docker
MikeC711 (Mon, 27 Feb 2017 16:59:53 GMT):
Will do. Thanks
suryalanka (Mon, 27 Feb 2017 17:02:01 GMT):
@MikeC711 this should fix docker related issues
suryalanka (Mon, 27 Feb 2017 17:02:01 GMT):
@MikeC711 this should fix docker related issues
suryalanka (Mon, 27 Feb 2017 17:06:05 GMT):
for npm related errors with permission denied, you need to either as root user or with sudo attached to the command
suryalanka (Mon, 27 Feb 2017 17:06:05 GMT):
for npm related errors with permission denied, you need to run either as a root user or with `sudo` attached to the command if you run the command as non-root user
suryalanka (Mon, 27 Feb 2017 17:06:30 GMT):
``` npm install -g composer-cli ```
suryalanka (Mon, 27 Feb 2017 17:06:30 GMT):
try ` sudo npm install -g composer-cli `
MikeC711 (Mon, 27 Feb 2017 17:32:34 GMT):
@suryalanka @Jakeeyturner @dselman Ah, having done usermod to allow non-root id to do docker ... I am in business!!! Now to start putting it to use. Thanks much.
info: [Composer-GettingStarted] listTitles Current Land Titles
info: [Composer-GettingStarted] Titles listed
info: [Composer-GettingStarted]
┌──────────┬────────────────┬────────────┬─────────┬─────────────────────────────┬─────────┐
│ TitleID │ OwnerID │ First Name │ Surname │ Description │ ForSale │
├──────────┼────────────────┼────────────┼─────────┼─────────────────────────────┼─────────┤
│ LID:6789 │ PID:1234567890 │ Fred │ Bloggs │ A small flat in the city │ No │
├──────────┼────────────────┼────────────┼─────────┼─────────────────────────────┼─────────┤
│ LID:1148 │ PID:1234567890 │ Fred │ Bloggs │ A nice house in the country │ Yes │
└──────────┴────────────────┴────────────┴─────────┴─────────────────────────────┴─────────┘
info: [Composer-GettingStarted] Command completed successfully.
dselman (Mon, 27 Feb 2017 17:51:48 GMT):
:drum:
dselman (Mon, 27 Feb 2017 17:51:51 GMT):
Bravo!
dselman (Mon, 27 Feb 2017 17:52:54 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=JYvLz7EnxF2dDi4Ft) @tarima Bravo!
arner (Mon, 27 Feb 2017 20:23:50 GMT):
Can anyone help me find in the source code what the API of the chaincode itself is? (So, what are the invoke and query function names that are being used and what do you send as arguments)?
dselman (Mon, 27 Feb 2017 20:35:36 GMT):
Hi @arner, this is a pretty key class: https://github.com/fabric-composer/fabric-composer/blob/master/packages/composer-connector-hlf/lib/hfcutil.js // note that this is not public API, so may change at any time.
dselman (Mon, 27 Feb 2017 20:36:21 GMT):
It is called from https://github.com/fabric-composer/fabric-composer/blob/master/packages/composer-connector-hlf/lib/hfcconnection.js where you can see the names of the function names passed.
dselman (Mon, 27 Feb 2017 20:36:44 GMT):
What are you up to? ;-)
arner (Mon, 27 Feb 2017 20:39:22 GMT):
Thanks, and I see the invoke function but not the functionname and arguments that are sent to it...
sstone1 (Mon, 27 Feb 2017 20:40:26 GMT):
@arner I'd grep the `composer-client` source tree looking for `queryChainCode` and `invokeChainCode`
sstone1 (Mon, 27 Feb 2017 20:42:28 GMT):
I'll second Dan's query asking what you're upto ;)
arner (Mon, 27 Feb 2017 20:43:15 GMT):
Hehe not much, mostly curiosity and I thought I might learn something...
As you know we also try to keep our boilerplate application up to date and it's in our interest to make the chaincode as interchangable as possible (between golang and composer). Adopting an API standard in the chaincode could be one part of it. Not sure yet! Anyway it's good to learn a bit about the internals :)
arner (Mon, 27 Feb 2017 20:44:30 GMT):
But yeah Dan, your warning of it not being a public API is noted!
dselman (Mon, 27 Feb 2017 20:50:01 GMT):
Happy Hacking @arner
arner (Mon, 27 Feb 2017 20:51:25 GMT):
Thanks! We're doing a kind of shadow run with composer on a project right now, we'll keep you posted on how it's going.
dselman (Mon, 27 Feb 2017 20:57:00 GMT):
We are here to help!
bkvellanki (Mon, 27 Feb 2017 21:53:46 GMT):
Has joined the channel.
dselman (Mon, 27 Feb 2017 22:20:08 GMT):
Message Attachments
dselman (Mon, 27 Feb 2017 22:29:12 GMT):
@FenglianXu is working on getting this published into the VSCode extension marketplace. If people are interested you can install a work-in-progress from here: https://github.com/fabric-composer/tools/tree/master/composer-vscode-plugin
GoodFaith (Mon, 27 Feb 2017 23:27:56 GMT):
Has joined the channel.
GoodFaith (Mon, 27 Feb 2017 23:37:27 GMT):
In Ubuntu 16.04 and Docker after setting up a development environment I ran the .sh file to set the system variables per https://hub.docker.com/r/ibmblockchain/fabric-peer/ instructions. After running the four peer node I get an error saying the ARCH_TAG variables is not set. I searched that issue to see if someone had the question previously, did not see any Q or A to address the problem.
tarima (Tue, 28 Feb 2017 00:53:12 GMT):
Is fabric-composer available to deploy on my bluemix using node.js and blockchain services?
GoodFaith (Tue, 28 Feb 2017 02:17:33 GMT):
In the bluemix console? To set up a local development environment is that the way it is configured?
dselman (Tue, 28 Feb 2017 06:41:26 GMT):
@tarima, yes: see http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
tarima (Tue, 28 Feb 2017 07:12:15 GMT):
@dselman thank you. I'll try it!
dselman (Tue, 28 Feb 2017 07:15:19 GMT):
@GoodFaith if you want to use Fabric Composer, please follow this guide: https://fabric-composer.github.io/tasks/prerequisites.html
GrahamCharters (Tue, 28 Feb 2017 11:01:03 GMT):
Hi, I'm trying to generate a JAX-RS client to the Vehicle Auction sample. This issue means I have no Swagger for the transactions (e.g. "Offer"). Does it also mean that there are no REST APIs to call, or just that there's no Swagger?
GrahamCharters (Tue, 28 Feb 2017 11:01:35 GMT):
This issue https://github.com/fabric-composer/fabric-composer/issues/200 :)
smithsj (Tue, 28 Feb 2017 11:54:42 GMT):
@GrahamCharters there was an issue for this that got resolved last week that showed the transactions in the swagger doc. The next thing to address is allowing the connector to execute the transactions which is a work-in-progress here https://github.com/fabric-composer/fabric-composer/issues/200
smithsj (Tue, 28 Feb 2017 11:54:51 GMT):
which I see that you've commented on :)
mahoney1 (Tue, 28 Feb 2017 12:13:14 GMT):
Has joined the channel.
GrahamCharters (Tue, 28 Feb 2017 12:38:48 GMT):
Thanks, @smithsj - does that mean if we take the latest we'll see the Swagger for the transaction, but the calls won't work? That's probably ok for us to do our development. Is there an outlook for https://github.com/fabric-composer/fabric-composer/issues/200 as we have quite a tight deadline? :(
smithsj (Tue, 28 Feb 2017 12:59:41 GMT):
@GrahamCharters I think you should see the transactions in the latest version but yes, you won't be able to submit them. I'll chat with a few people here and see if I can figure out when we can get round to doing something and update you here
GrahamCharters (Tue, 28 Feb 2017 13:00:07 GMT):
@smithsj - thanks :)
GoodFaith (Tue, 28 Feb 2017 14:12:41 GMT):
Thanks @dselman.
kletkeman (Tue, 28 Feb 2017 15:18:56 GMT):
Has joined the channel.
hudsont (Tue, 28 Feb 2017 15:22:15 GMT):
Has joined the channel.
silliman (Tue, 28 Feb 2017 17:18:54 GMT):
has anyone gone through the "getting started" to the point where they see the LandTitle assets at localhost:4200 on a *Linux on z Systems* instance? I just started dipping my toes into the Composer pool and had some issues with the npm install of the pre-requisite stuff. I didn't find a real quick fix so I did what I usually do- try to get it working on Linux on x86, which I did... so, before I got back to dig in to debugging back on z Systems, I'd be curious to know if others have made this work on "zed"
silliman (Tue, 28 Feb 2017 17:19:55 GMT):
I should clarify- I had issues with npm install up on Linux on z... like I said, I reached nirvana on x86 on Ubuntu 14.04 :-)
sstone1 (Tue, 28 Feb 2017 17:22:15 GMT):
@silliman we haven't done a lot of testing on Linux on z, but we have got as far as deploying Composer to Hyperledger Fabric on z and standing up a Loopback server.
sstone1 (Tue, 28 Feb 2017 17:22:26 GMT):
I think you're breaking new ground going through the app generation though ;)
sstone1 (Tue, 28 Feb 2017 17:22:42 GMT):
What node version are you running on Linux on z?
silliman (Tue, 28 Feb 2017 17:24:55 GMT):
I was at 6.7 at first then I tried it with 6.10 I think..... i was getting the same error both times, it was complaining about grpc or something... i was following the "workaround" steps related to the angular update posted yesterday... this was in the first global npm install with composer-cli, bower, typings, etc.
silliman (Tue, 28 Feb 2017 17:26:07 GMT):
@sstone1 when you say Loopback server, do you mean the one listening on port 4200 spun up by *ng serve* ?
sstone1 (Tue, 28 Feb 2017 17:27:25 GMT):
6.10 is known not to work, I know that much. The Loopback server is the REST API that runs on port 3000 (you will have seen the StrongLoop API Explorer)
silliman (Tue, 28 Feb 2017 17:29:46 GMT):
@sstone1 since Linux on z sometimes presents "challenges" not associated with x86, my usual modus operandi if something breaks on z is to see if I can get it to work on x86, sort of as a sanity test....so I didn't debug things too hard on z, but I'm ready to now. hmm I didn't come across 3000, so either that is behind the scenes or I'm not looking at the same set of instructions... basically on x86 I followed the workaround steps posted here by dselman at UTC 9:59 AM (if I did my math right) yesterday 2/27
sstone1 (Tue, 28 Feb 2017 17:31:05 GMT):
Did you run `yo` to generate an application that is running on 4200?
silliman (Tue, 28 Feb 2017 17:31:54 GMT):
yes.... got that and got the Land Title assets.... I just updated one of the assets to change the description, worked well... that's as far as I got. (on x86 of course)
sstone1 (Tue, 28 Feb 2017 17:32:24 GMT):
Oh, sorry, ignore the Loopback point. We haven't ported the app generator to use the Loopback server yet.
silliman (Tue, 28 Feb 2017 17:35:04 GMT):
if you happen to know which distro (Ubuntu, SLES or RHEL) was used up on Linux on z, and which levels of node and npm, I can try to replicate with those levels (and if you used the IBM-supported Docker images for Fabric v0.6 or built your own images or ran natively, that would help too)
silliman (Tue, 28 Feb 2017 17:38:03 GMT):
btw you guys have put together some very impressive automation with regards to installing the pre-reqs on x86 Ubuntu Trusy and pulling down the hyperledger docker images and spinning up the network.... great job on the automation and the documentation!!
silliman (Tue, 28 Feb 2017 17:38:03 GMT):
btw you guys have put together some very impressive automation with regards to installing the pre-reqs on x86 Ubuntu Trusty and pulling down the hyperledger docker images and spinning up the network.... great job on the automation and the documentation!!
sstone1 (Tue, 28 Feb 2017 17:38:45 GMT):
I don't know, but I've put you in touch with the IBM HSBN developer who knows those answers on IBM Slack (as she's not on Rocket.Chat yet). Will follow up with the answers for the community.
sstone1 (Tue, 28 Feb 2017 17:39:28 GMT):
And thanks, we appreciate the feedback! We'd like to get a similar smooth experience working for the other platforms as well.
silliman (Tue, 28 Feb 2017 17:40:32 GMT):
@sstone1 Ok, that'll work....I'll try some more... I was playing around on Redhat and I think I'll switch over to Ubuntu and avoid node 6.10 per your advice.... I'll see if I can find 6.9.5 for z, sometimes finding older versions for z can be tricky
mikezaccardo (Tue, 28 Feb 2017 17:55:30 GMT):
Has joined the channel.
ayoub (Tue, 28 Feb 2017 18:38:32 GMT):
Hi All, I have managed to create channels using the dockerized cli. I am attempting to do the same using fabric-composer is it currently possible to create/deploy a channel using fabric-composer?
ayoub (Tue, 28 Feb 2017 18:42:25 GMT):
i.e using: composer network deploy < some option to deploy to a channel >
sstone1 (Tue, 28 Feb 2017 19:49:28 GMT):
@Ayoub Naciri I take it you are using v1.0? Are you using the very new v1.0 functionality I delivered a couple of days ago?
sstone1 (Tue, 28 Feb 2017 19:49:28 GMT):
@Ayoub Naciri I take it you are using v1.0? Are you using the very new v1.0 functionality I delivered a couple of days ago?
sstone1 (Tue, 28 Feb 2017 19:51:42 GMT):
For our v1.0 support (which is currently being worked on), we are going to require that you specify a name of an existing channel in a Fabric Composer connection profile. We don't want to get into the business of trying to create channels and adding peers to channels; that's really an operational concern for the Fabric administrators (and possibly Cello).
ayoub (Tue, 28 Feb 2017 21:20:24 GMT):
@sstone1 haven't update for a few days now, so using the 'older' version. i imagine i can update via npm or need to pull from source? what I was doing was after creating a biz definition calling:
ayoub (Tue, 28 Feb 2017 21:20:40 GMT):
composer network deploy -a
ayoub (Tue, 28 Feb 2017 21:21:22 GMT):
could you please give details how to specify the channel?
sstone1 (Tue, 28 Feb 2017 21:24:01 GMT):
@Ayoub Naciri at the moment we haven't done any documentation about how to use Fabric Composer with v1.0. That code is changing rapidly to keep up with the development of Fabric itself (for example the recent rework around deploy to be split into install & instantiate). Once it's a bit more stable we'll get the process documented.
sstone1 (Tue, 28 Feb 2017 21:24:09 GMT):
For now I would stick with v0.6.
dselman (Tue, 28 Feb 2017 21:42:01 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=4isFXc8G4J5NceGdT) @silliman Thanks!:grin:
dselman (Tue, 28 Feb 2017 22:32:19 GMT):
Those of you experimenting with using the REST API generated from a business network -- we've just made that even easier for developers and would love your feedback. https://github.com/fabric-composer/fabric-composer/tree/master/packages/composer-rest-server
conroydave (Wed, 01 Mar 2017 05:55:55 GMT):
i dont quite understand it
conroydave (Wed, 01 Mar 2017 05:56:16 GMT):
can you explain the business network part
smithsj (Wed, 01 Mar 2017 08:03:47 GMT):
@conroydave the Fabric Composer REST Server can be used to quickly create a REST API that developers can invoke to interact with a business network. It uses the LoopBack connector to connect to the Business Network that you suppy details of, then runs a web server that hosts an application that provides the REST API from swagger doc. HTH
conroydave (Wed, 01 Mar 2017 08:08:47 GMT):
so you feed it your existing api for what ever your app is, say counting parking spaces, and then it spins up an server&api so that it can be interacted from participants in the hyperledger network?
conroydave (Wed, 01 Mar 2017 08:09:00 GMT):
ive got a lot to learn, not sure what Swagger is
smithsj (Wed, 01 Mar 2017 09:09:56 GMT):
So you define your business network in terms of the assets that it will track, the participants that are involved, the transactions that can be executed and the acls that are in force. This is sometimes known as 'the model' and you can use the fabric composer playground to do that. Then you deploy that definition (a .cto file) to the blockchain fabric (the peers) to make it real and allow you to develop applications that interact with 'ledger' that this model represents.
The composer-rest-server uses fabric composer to connect to one of the peers in the network to retrieve the model definition and then runs the REST server that exposes that model via an API.
smithsj (Wed, 01 Mar 2017 09:11:40 GMT):
This is a useful definition from the swagger site: "Swagger is a set of rules (in other words, a specification) for a format describing REST APIs. The format is both machine-readable and human-readable. As a result, it can be used to share documentation among product managers, testers and developers, but can also be used by various tools to automate API-related processes."
conroydave (Wed, 01 Mar 2017 09:13:02 GMT):
is it common for many models to run on a single fabric(group of peers)?
smithsj (Wed, 01 Mar 2017 09:15:10 GMT):
That's a good question. I don't believe it is.
conroydave (Wed, 01 Mar 2017 09:15:30 GMT):
is calling it composer a nod to docker?
conroydave (Wed, 01 Mar 2017 09:15:34 GMT):
or just a coincidence
smithsj (Wed, 01 Mar 2017 09:17:09 GMT):
It's just a coincidence really :)
conroydave (Wed, 01 Mar 2017 09:19:04 GMT):
im speaking to a group of MLS vendors at the end of the month so i am very happy to see the sample code is a land registry!
conroydave (Wed, 01 Mar 2017 09:19:20 GMT):
presenting on blockchain
conroydave (Wed, 01 Mar 2017 09:20:32 GMT):
so they key here is the loopback connector that exposes it to external systems
conroydave (Wed, 01 Mar 2017 09:20:35 GMT):
the*
smithsj (Wed, 01 Mar 2017 09:21:09 GMT):
so to go back to the question of whether it's 'normal' to run many models on a single fabric, I believe that it is possible since each business network is run in a separate chaincode container with a different id
conroydave (Wed, 01 Mar 2017 09:21:46 GMT):
right, i could see the same parties being interested in different business transactions
smithsj (Wed, 01 Mar 2017 09:21:49 GMT):
whether you want to do that or perhaps you have stringent rules about data isolation for example
smithsj (Wed, 01 Mar 2017 09:21:57 GMT):
yes, sure
conroydave (Wed, 01 Mar 2017 09:22:03 GMT):
exactly
smithsj (Wed, 01 Mar 2017 09:22:14 GMT):
it all depends on the use case really :)
conroydave (Wed, 01 Mar 2017 09:22:40 GMT):
i work for a large trade organization, has 3 levels. National, State, and city
conroydave (Wed, 01 Mar 2017 09:22:50 GMT):
we all serve the same people, but dont share data very well
conroydave (Wed, 01 Mar 2017 09:23:20 GMT):
all of the data is centralized at the national level and not shared back
conroydave (Wed, 01 Mar 2017 09:23:53 GMT):
all in oracle databases that dont track history well
conroydave (Wed, 01 Mar 2017 09:24:05 GMT):
systems we use were designed in the 90s
smithsj (Wed, 01 Mar 2017 09:24:51 GMT):
so they are SORs (systems of record)
conroydave (Wed, 01 Mar 2017 09:24:58 GMT):
yes.
conroydave (Wed, 01 Mar 2017 09:25:21 GMT):
and at this point the national association has gathered an incredible amount of data that itd be difficult to segment it off for sharing
conroydave (Wed, 01 Mar 2017 09:25:35 GMT):
anyway, perfect opportunity to introduce new tech
smithsj (Wed, 01 Mar 2017 09:26:10 GMT):
yes, well the loopback connector is designed with this sort of integration with SORs in mind
mqmatt (Wed, 01 Mar 2017 09:30:51 GMT):
Has joined the channel.
conroydave (Wed, 01 Mar 2017 09:31:01 GMT):
i wish i had known this a few weeks ago
conroydave (Wed, 01 Mar 2017 09:31:12 GMT):
i ended up writing my own client for one of the current external systems
antitoine (Wed, 01 Mar 2017 10:41:48 GMT):
Has joined the channel.
jdockter (Wed, 01 Mar 2017 12:14:16 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=3csN56GSgq4ccorhP) @dselman @smithsj Feedback on the composer-rest-server...would be nice to provide default values for each question when building the application, like what Loopback/StrongLoop does today...I ran into a problem with a 'Connection fails: Error: Error: sql: no rows in result set' but could be a profile/ credentials issue with some of the other composer-ui stuff I have been doing, just haven't had the time to dig in...I will post later how things go
dselman (Wed, 01 Mar 2017 12:15:16 GMT):
Thanks @jdockter -- we could easily tell Yo to remember the last answers to the questions, which would help.
harrijk (Wed, 01 Mar 2017 12:29:00 GMT):
Has joined the channel.
smithsj (Wed, 01 Mar 2017 13:37:45 GMT):
@dselman If we used Yo then maybe so ;)
ayoub (Wed, 01 Mar 2017 13:37:55 GMT):
@sstone1 right now mainly experimenting for the fun of it ;-) , quick question is there any location where composer spits out the chaincode ? I understand composer abstracts dealing with the low level stuff but just for diagnostics/troubleshooting
Jakeeyturner (Wed, 01 Mar 2017 13:43:47 GMT):
@Ayoub Naciri Did you want to get the logs of the chaincode?
Jakeeyturner (Wed, 01 Mar 2017 13:43:47 GMT):
@Ayoub Naciri Did you want to get the logs of the chaincode?
uber.twin (Wed, 01 Mar 2017 13:44:38 GMT):
Has joined the channel.
uber.twin (Wed, 01 Mar 2017 13:48:57 GMT):
hi, any advice on this error when deploying the sample application network
uber.twin (Wed, 01 Mar 2017 13:48:59 GMT):
12 silly lifecycle getting-started@1.0.0~deployNetwork: Returned: code: 1 signal: null
13 info lifecycle getting-started@1.0.0~deployNetwork: Failed to exec deployNetwork script
14 verbose stack Error: getting-started@1.0.0 deployNetwork: `composer archive create --moduleName digitalproperty-network --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d`
14 verbose stack Exit status 1
14 verbose stack at EventEmitter.
Jakeeyturner (Wed, 01 Mar 2017 13:56:08 GMT):
@uber.twin Can we see the rest of the console output?
dselman (Wed, 01 Mar 2017 14:04:20 GMT):
New blog article: https://blog.selman.org/2017/03/01/introduction-to-fabric-composer/
uber.twin (Wed, 01 Mar 2017 14:06:09 GMT):
Message Attachments
uber.twin (Wed, 01 Mar 2017 14:06:57 GMT):
Message Attachments
uber.twin (Wed, 01 Mar 2017 14:06:57 GMT):
pg@pg-GL552JX:~$ docker -v
Docker version 1.13.1, build 092cba3
pg@pg-GL552JX:~$ docker-compose -v
docker-compose version 1.11.2, build dfed245
Message Attachments
Jakeeyturner (Wed, 01 Mar 2017 14:12:01 GMT):
@uber.twin Strange that you're seeing a timeout. Can you try running ```npm install``` again?
Jakeeyturner (Wed, 01 Mar 2017 14:12:01 GMT):
@uber.twin Strange that you're seeing a timeout. Can you try running `npm install` again?
uber.twin (Wed, 01 Mar 2017 14:12:51 GMT):
I did try it two times already:)
Jakeeyturner (Wed, 01 Mar 2017 14:13:19 GMT):
When did you close this repo?
Jakeeyturner (Wed, 01 Mar 2017 14:13:35 GMT):
*clone
uber.twin (Wed, 01 Mar 2017 14:14:19 GMT):
an hour ago, or so
smithsj (Wed, 01 Mar 2017 14:15:44 GMT):
it might be worth looking at the peer logs
smithsj (Wed, 01 Mar 2017 14:15:49 GMT):
`docker ps`
mbwhite (Wed, 01 Mar 2017 14:16:13 GMT):
yes... the error in the console log is a transaction timeout
smithsj (Wed, 01 Mar 2017 14:16:42 GMT): smithsj (Wed, 01 Mar 2017 14:16:42 GMT): mbwhite (Wed, 01 Mar 2017 14:17:03 GMT): smithsj (Wed, 01 Mar 2017 14:19:39 GMT): smithsj (Wed, 01 Mar 2017 14:19:58 GMT): smithsj (Wed, 01 Mar 2017 14:20:56 GMT): smithsj (Wed, 01 Mar 2017 14:20:56 GMT): uber.twin (Wed, 01 Mar 2017 14:22:04 GMT): Jakeeyturner (Wed, 01 Mar 2017 14:26:32 GMT): uber.twin (Wed, 01 Mar 2017 14:29:08 GMT): uber.twin (Wed, 01 Mar 2017 14:30:17 GMT): mbwhite (Wed, 01 Mar 2017 14:30:55 GMT): mbwhite (Wed, 01 Mar 2017 14:31:13 GMT): uber.twin (Wed, 01 Mar 2017 14:47:02 GMT): Jakeeyturner (Wed, 01 Mar 2017 14:55:17 GMT): smithsj (Wed, 01 Mar 2017 14:55:39 GMT): smithsj (Wed, 01 Mar 2017 15:00:09 GMT): uber.twin (Wed, 01 Mar 2017 15:00:52 GMT): uber.twin (Wed, 01 Mar 2017 15:01:18 GMT): mbwhite (Wed, 01 Mar 2017 15:11:44 GMT): Jakeeyturner (Wed, 01 Mar 2017 15:13:39 GMT): Jakeeyturner (Wed, 01 Mar 2017 15:14:05 GMT): smithsj (Wed, 01 Mar 2017 15:14:39 GMT): uber.twin (Wed, 01 Mar 2017 15:34:58 GMT): uber.twin (Wed, 01 Mar 2017 15:35:17 GMT): smithsj (Wed, 01 Mar 2017 15:35:39 GMT): Jakeeyturner (Wed, 01 Mar 2017 15:36:40 GMT): Jakeeyturner (Wed, 01 Mar 2017 15:36:40 GMT): Jakeeyturner (Wed, 01 Mar 2017 15:37:02 GMT): jdockter (Wed, 01 Mar 2017 15:38:05 GMT): Jakeeyturner (Wed, 01 Mar 2017 15:39:41 GMT): uber.twin (Wed, 01 Mar 2017 15:45:36 GMT): uber.twin (Wed, 01 Mar 2017 15:45:55 GMT): uber.twin (Wed, 01 Mar 2017 15:46:18 GMT): Jakeeyturner (Wed, 01 Mar 2017 15:47:14 GMT): uber.twin (Wed, 01 Mar 2017 15:49:53 GMT): uber.twin (Wed, 01 Mar 2017 15:52:21 GMT): uber.twin (Wed, 01 Mar 2017 15:55:06 GMT): ayoub (Wed, 01 Mar 2017 15:57:36 GMT): Jakeeyturner (Wed, 01 Mar 2017 15:59:52 GMT): uber.twin (Wed, 01 Mar 2017 16:05:14 GMT): uber.twin (Wed, 01 Mar 2017 16:05:21 GMT): PraveenU (Wed, 01 Mar 2017 16:22:43 GMT): PraveenU (Wed, 01 Mar 2017 16:24:19 GMT): smithsj (Wed, 01 Mar 2017 16:26:58 GMT): PraveenU (Wed, 01 Mar 2017 16:28:03 GMT): smithsj (Wed, 01 Mar 2017 16:29:16 GMT): PraveenU (Wed, 01 Mar 2017 16:30:15 GMT): smithsj (Wed, 01 Mar 2017 16:32:16 GMT): PraveenU (Wed, 01 Mar 2017 16:33:18 GMT): smithsj (Wed, 01 Mar 2017 16:34:11 GMT): PraveenU (Wed, 01 Mar 2017 16:34:53 GMT): smithsj (Wed, 01 Mar 2017 16:35:14 GMT): PraveenU (Wed, 01 Mar 2017 16:35:43 GMT): PraveenU (Wed, 01 Mar 2017 16:37:41 GMT): PraveenU (Wed, 01 Mar 2017 16:38:50 GMT): smithsj (Wed, 01 Mar 2017 16:39:22 GMT): antitoine (Wed, 01 Mar 2017 16:39:26 GMT): smithsj (Wed, 01 Mar 2017 16:41:06 GMT): smithsj (Wed, 01 Mar 2017 16:41:06 GMT): smithsj (Wed, 01 Mar 2017 16:41:34 GMT): PraveenU (Wed, 01 Mar 2017 16:50:51 GMT): PraveenU (Wed, 01 Mar 2017 16:52:47 GMT): smithsj (Wed, 01 Mar 2017 17:06:27 GMT): conroydave (Wed, 01 Mar 2017 17:34:21 GMT): conroydave (Wed, 01 Mar 2017 17:34:34 GMT): conroydave (Wed, 01 Mar 2017 17:34:49 GMT): dselman (Wed, 01 Mar 2017 18:31:34 GMT): conroydave (Wed, 01 Mar 2017 18:32:56 GMT): conroydave (Wed, 01 Mar 2017 18:33:25 GMT): conroydave (Wed, 01 Mar 2017 18:33:54 GMT): conroydave (Wed, 01 Mar 2017 18:34:12 GMT): dselman (Wed, 01 Mar 2017 18:40:59 GMT): conroydave (Wed, 01 Mar 2017 18:49:03 GMT): mohamoud.egal (Wed, 01 Mar 2017 18:51:27 GMT): dselman (Wed, 01 Mar 2017 18:52:29 GMT): mohamoud.egal (Wed, 01 Mar 2017 18:53:08 GMT): mohamoud.egal (Wed, 01 Mar 2017 18:53:33 GMT): mohamoud.egal (Wed, 01 Mar 2017 18:53:47 GMT): mohamoud.egal (Wed, 01 Mar 2017 18:54:09 GMT): dselman (Wed, 01 Mar 2017 18:58:23 GMT): mohamoud.egal (Wed, 01 Mar 2017 18:58:46 GMT): dselman (Wed, 01 Mar 2017 18:59:09 GMT): mohamoud.egal (Wed, 01 Mar 2017 18:59:48 GMT): dselman (Wed, 01 Mar 2017 19:00:33 GMT): dselman (Wed, 01 Mar 2017 19:00:43 GMT): dselman (Wed, 01 Mar 2017 19:00:56 GMT): mohamoud.egal (Wed, 01 Mar 2017 19:02:49 GMT): dselman (Wed, 01 Mar 2017 19:09:28 GMT): dselman (Wed, 01 Mar 2017 19:10:16 GMT): dselman (Wed, 01 Mar 2017 19:10:37 GMT): mohamoud.egal (Wed, 01 Mar 2017 19:10:40 GMT): dselman (Wed, 01 Mar 2017 19:11:04 GMT): mohamoud.egal (Wed, 01 Mar 2017 19:12:01 GMT): mohamoud.egal (Wed, 01 Mar 2017 19:12:58 GMT): mohamoud.egal (Wed, 01 Mar 2017 19:13:05 GMT): dselman (Wed, 01 Mar 2017 19:14:14 GMT): conroydave (Wed, 01 Mar 2017 19:16:11 GMT): conroydave (Wed, 01 Mar 2017 19:16:25 GMT): conroydave (Wed, 01 Mar 2017 19:16:47 GMT): dselman (Wed, 01 Mar 2017 19:18:27 GMT): dselman (Wed, 01 Mar 2017 19:18:42 GMT): conroydave (Wed, 01 Mar 2017 19:23:50 GMT): conroydave (Wed, 01 Mar 2017 19:26:34 GMT): conroydave (Wed, 01 Mar 2017 19:29:03 GMT): dselman (Wed, 01 Mar 2017 19:29:39 GMT): conroydave (Wed, 01 Mar 2017 19:57:04 GMT): conroydave (Wed, 01 Mar 2017 19:57:12 GMT): ardashev120101 (Wed, 01 Mar 2017 20:17:27 GMT): ardashev120101 (Wed, 01 Mar 2017 20:21:29 GMT): ardashev120101 (Wed, 01 Mar 2017 20:21:36 GMT): ardashev120101 (Wed, 01 Mar 2017 20:22:04 GMT): dselman (Wed, 01 Mar 2017 20:44:48 GMT): ardashev120101 (Wed, 01 Mar 2017 20:58:04 GMT): ardashev120101 (Wed, 01 Mar 2017 20:58:24 GMT): ardashev120101 (Wed, 01 Mar 2017 20:58:31 GMT): dselman (Wed, 01 Mar 2017 20:58:37 GMT): dselman (Wed, 01 Mar 2017 20:58:47 GMT): cgrecu (Wed, 01 Mar 2017 21:00:05 GMT): conroydave (Wed, 01 Mar 2017 22:25:08 GMT): conroydave (Wed, 01 Mar 2017 22:25:21 GMT): conroydave (Wed, 01 Mar 2017 22:25:35 GMT): conroydave (Wed, 01 Mar 2017 22:25:57 GMT): conroydave (Wed, 01 Mar 2017 22:28:10 GMT): conroydave (Wed, 01 Mar 2017 22:42:30 GMT): sbrakev (Wed, 01 Mar 2017 23:31:58 GMT): Donald Liu (Thu, 02 Mar 2017 01:22:17 GMT): raghavsood (Thu, 02 Mar 2017 02:05:01 GMT): conroydave (Thu, 02 Mar 2017 02:06:27 GMT): conroydave (Thu, 02 Mar 2017 02:06:37 GMT): mohamoud.egal (Thu, 02 Mar 2017 02:27:12 GMT): raghavsood (Thu, 02 Mar 2017 02:28:09 GMT): dselman (Thu, 02 Mar 2017 02:46:56 GMT): dselman (Thu, 02 Mar 2017 02:48:48 GMT): conroydave (Thu, 02 Mar 2017 02:49:19 GMT): conroydave (Thu, 02 Mar 2017 02:49:33 GMT): conroydave (Thu, 02 Mar 2017 02:50:23 GMT): dselman (Thu, 02 Mar 2017 02:51:17 GMT): conroydave (Thu, 02 Mar 2017 02:52:10 GMT): conroydave (Thu, 02 Mar 2017 02:53:21 GMT): dselman (Thu, 02 Mar 2017 02:53:49 GMT): Liew.SC (Thu, 02 Mar 2017 02:59:18 GMT): conroydave (Thu, 02 Mar 2017 02:59:46 GMT): dselman (Thu, 02 Mar 2017 03:00:01 GMT): conroydave (Thu, 02 Mar 2017 03:00:58 GMT): conroydave (Thu, 02 Mar 2017 03:01:17 GMT): conroydave (Thu, 02 Mar 2017 03:01:45 GMT): dselman (Thu, 02 Mar 2017 03:04:48 GMT): dselman (Thu, 02 Mar 2017 03:05:36 GMT): conroydave (Thu, 02 Mar 2017 03:06:59 GMT): conroydave (Thu, 02 Mar 2017 03:07:10 GMT): dselman (Thu, 02 Mar 2017 03:08:38 GMT): conroydave (Thu, 02 Mar 2017 03:10:28 GMT): sameerreddy13 (Thu, 02 Mar 2017 03:15:37 GMT): KeesJansen (Thu, 02 Mar 2017 10:58:02 GMT): KeesJansen (Thu, 02 Mar 2017 11:02:57 GMT): KeesJansen (Thu, 02 Mar 2017 11:18:25 GMT): dselman (Thu, 02 Mar 2017 11:25:15 GMT): dselman (Thu, 02 Mar 2017 11:26:36 GMT): KeesJansen (Thu, 02 Mar 2017 11:49:24 GMT): dselman (Thu, 02 Mar 2017 11:52:26 GMT): dselman (Thu, 02 Mar 2017 11:53:08 GMT): dselman (Thu, 02 Mar 2017 11:54:36 GMT): dselman (Thu, 02 Mar 2017 11:54:52 GMT): dselman (Thu, 02 Mar 2017 11:55:16 GMT): dselman (Thu, 02 Mar 2017 11:55:23 GMT): mbwhite (Thu, 02 Mar 2017 12:18:05 GMT): mbwhite (Thu, 02 Mar 2017 12:18:05 GMT): KeesJansen (Thu, 02 Mar 2017 12:38:38 GMT): GrahamCharters (Thu, 02 Mar 2017 13:41:28 GMT): jdockter (Thu, 02 Mar 2017 13:42:49 GMT): jdockter (Thu, 02 Mar 2017 13:47:30 GMT): GrahamCharters (Thu, 02 Mar 2017 14:12:53 GMT): jdockter (Thu, 02 Mar 2017 14:16:56 GMT): jdockter (Thu, 02 Mar 2017 14:17:15 GMT): GrahamCharters (Thu, 02 Mar 2017 14:20:04 GMT): elisabetta (Thu, 02 Mar 2017 14:21:22 GMT): GrahamCharters (Thu, 02 Mar 2017 14:23:06 GMT): smithsj (Thu, 02 Mar 2017 14:24:37 GMT): GrahamCharters (Thu, 02 Mar 2017 14:25:21 GMT): GrahamCharters (Thu, 02 Mar 2017 14:25:30 GMT): smithsj (Thu, 02 Mar 2017 14:25:36 GMT): GrahamCharters (Thu, 02 Mar 2017 14:26:10 GMT): smithsj (Thu, 02 Mar 2017 14:26:28 GMT): smithsj (Thu, 02 Mar 2017 14:27:09 GMT): GrahamCharters (Thu, 02 Mar 2017 14:27:57 GMT): GrahamCharters (Thu, 02 Mar 2017 14:28:01 GMT): smithsj (Thu, 02 Mar 2017 14:28:37 GMT): GrahamCharters (Thu, 02 Mar 2017 14:29:15 GMT): smithsj (Thu, 02 Mar 2017 14:29:19 GMT): GrahamCharters (Thu, 02 Mar 2017 14:30:09 GMT): GrahamCharters (Thu, 02 Mar 2017 14:30:38 GMT): smithsj (Thu, 02 Mar 2017 14:30:47 GMT): smithsj (Thu, 02 Mar 2017 14:31:00 GMT): smithsj (Thu, 02 Mar 2017 14:31:12 GMT): smithsj (Thu, 02 Mar 2017 14:32:07 GMT): GrahamCharters (Thu, 02 Mar 2017 14:32:28 GMT): smithsj (Thu, 02 Mar 2017 14:32:46 GMT): smithsj (Thu, 02 Mar 2017 14:33:08 GMT): smithsj (Thu, 02 Mar 2017 14:33:19 GMT): smithsj (Thu, 02 Mar 2017 14:34:13 GMT): GrahamCharters (Thu, 02 Mar 2017 14:34:25 GMT): sbrakev (Thu, 02 Mar 2017 14:34:48 GMT): GrahamCharters (Thu, 02 Mar 2017 14:34:58 GMT): sbrakev (Thu, 02 Mar 2017 14:35:24 GMT): GrahamCharters (Thu, 02 Mar 2017 14:35:26 GMT): GrahamCharters (Thu, 02 Mar 2017 14:35:47 GMT): GrahamCharters (Thu, 02 Mar 2017 14:35:51 GMT): smithsj (Thu, 02 Mar 2017 14:35:52 GMT): smithsj (Thu, 02 Mar 2017 14:35:55 GMT): smithsj (Thu, 02 Mar 2017 14:36:21 GMT): smithsj (Thu, 02 Mar 2017 14:36:29 GMT): smithsj (Thu, 02 Mar 2017 14:36:44 GMT): jdockter (Thu, 02 Mar 2017 14:40:13 GMT): jdockter (Thu, 02 Mar 2017 14:40:57 GMT): GrahamCharters (Thu, 02 Mar 2017 14:46:09 GMT): GrahamCharters (Thu, 02 Mar 2017 14:46:14 GMT): smithsj (Thu, 02 Mar 2017 14:47:37 GMT): GrahamCharters (Thu, 02 Mar 2017 14:50:07 GMT): GrahamCharters (Thu, 02 Mar 2017 14:50:49 GMT): GrahamCharters (Thu, 02 Mar 2017 14:50:54 GMT): smithsj (Thu, 02 Mar 2017 14:51:02 GMT): GrahamCharters (Thu, 02 Mar 2017 14:53:44 GMT): smithsj (Thu, 02 Mar 2017 14:54:06 GMT): GrahamCharters (Thu, 02 Mar 2017 14:54:28 GMT): smithsj (Thu, 02 Mar 2017 14:55:31 GMT): GrahamCharters (Thu, 02 Mar 2017 15:07:01 GMT): FenglianXu (Thu, 02 Mar 2017 15:26:17 GMT): smithsj (Thu, 02 Mar 2017 15:59:44 GMT): mag009 (Thu, 02 Mar 2017 17:01:25 GMT): pospi (Thu, 02 Mar 2017 22:24:52 GMT): jdockter (Thu, 02 Mar 2017 22:57:09 GMT): mohamoud.egal (Fri, 03 Mar 2017 01:29:43 GMT): jdockter (Fri, 03 Mar 2017 01:51:36 GMT): mohamoud.egal (Fri, 03 Mar 2017 05:29:03 GMT): GrahamCharters (Fri, 03 Mar 2017 08:26:37 GMT): davidkel (Fri, 03 Mar 2017 08:43:27 GMT): davidkel (Fri, 03 Mar 2017 08:43:27 GMT): davidkel (Fri, 03 Mar 2017 08:43:27 GMT): davidkel (Fri, 03 Mar 2017 08:43:27 GMT): GrahamCharters (Fri, 03 Mar 2017 08:59:39 GMT): davidkel (Fri, 03 Mar 2017 09:08:02 GMT): davidkel (Fri, 03 Mar 2017 09:08:02 GMT): GrahamCharters (Fri, 03 Mar 2017 09:18:54 GMT): GrahamCharters (Fri, 03 Mar 2017 09:19:13 GMT): davidkel (Fri, 03 Mar 2017 09:19:20 GMT): GrahamCharters (Fri, 03 Mar 2017 09:19:27 GMT): antitoine (Fri, 03 Mar 2017 09:50:58 GMT): GrahamCharters (Fri, 03 Mar 2017 10:13:49 GMT): iv1004 (Fri, 03 Mar 2017 11:12:18 GMT): iv1004 (Fri, 03 Mar 2017 11:12:28 GMT): iv1004 (Fri, 03 Mar 2017 11:12:57 GMT): iv1004 (Fri, 03 Mar 2017 11:13:12 GMT): mnarayan (Fri, 03 Mar 2017 11:35:44 GMT): mbwhite (Fri, 03 Mar 2017 11:37:59 GMT): dselman (Fri, 03 Mar 2017 11:40:41 GMT): dselman (Fri, 03 Mar 2017 12:28:56 GMT): dselman (Fri, 03 Mar 2017 12:29:37 GMT): dselman (Fri, 03 Mar 2017 12:31:11 GMT): sstone1 (Fri, 03 Mar 2017 13:08:28 GMT): sstone1 (Fri, 03 Mar 2017 13:11:35 GMT): mbwhite (Fri, 03 Mar 2017 13:23:14 GMT): mbwhite (Fri, 03 Mar 2017 13:23:14 GMT): GrahamCharters (Fri, 03 Mar 2017 13:40:14 GMT): GrahamCharters (Fri, 03 Mar 2017 13:40:14 GMT): bestbeforetoday (Fri, 03 Mar 2017 13:40:33 GMT): sstone1 (Fri, 03 Mar 2017 13:41:50 GMT): sstone1 (Fri, 03 Mar 2017 13:42:20 GMT): GeorgSchultz (Fri, 03 Mar 2017 13:49:44 GMT): GeorgSchultz (Fri, 03 Mar 2017 13:50:30 GMT): mbwhite (Fri, 03 Mar 2017 13:52:22 GMT): GeorgSchultz (Fri, 03 Mar 2017 13:56:45 GMT): mbwhite (Fri, 03 Mar 2017 13:59:54 GMT): GeorgSchultz (Fri, 03 Mar 2017 14:03:34 GMT): GrahamCharters (Fri, 03 Mar 2017 14:07:58 GMT): GrahamCharters (Fri, 03 Mar 2017 14:11:04 GMT): GrahamCharters (Fri, 03 Mar 2017 14:13:06 GMT): dselman (Fri, 03 Mar 2017 14:13:14 GMT): dselman (Fri, 03 Mar 2017 14:13:24 GMT): GrahamCharters (Fri, 03 Mar 2017 14:15:53 GMT): kosullivan (Fri, 03 Mar 2017 16:02:59 GMT): mohamoud.egal (Sun, 05 Mar 2017 07:16:41 GMT): mohamoud.egal (Sun, 05 Mar 2017 07:16:44 GMT): davidkel (Sun, 05 Mar 2017 11:04:45 GMT): mohamoud.egal (Sun, 05 Mar 2017 17:08:08 GMT): mohamoud.egal (Sun, 05 Mar 2017 18:01:29 GMT): akm4 (Sun, 05 Mar 2017 18:02:57 GMT): akm4 (Sun, 05 Mar 2017 18:06:08 GMT): silliman (Sun, 05 Mar 2017 18:19:51 GMT): silliman (Sun, 05 Mar 2017 18:19:51 GMT): akm4 (Sun, 05 Mar 2017 18:21:24 GMT): akm4 (Sun, 05 Mar 2017 18:22:42 GMT): silliman (Sun, 05 Mar 2017 18:30:00 GMT): akm4 (Sun, 05 Mar 2017 18:32:45 GMT): davidkel (Sun, 05 Mar 2017 19:21:05 GMT): davidkel (Sun, 05 Mar 2017 19:21:05 GMT): sstone1 (Sun, 05 Mar 2017 19:48:00 GMT): sstone1 (Sun, 05 Mar 2017 19:48:23 GMT): sstone1 (Sun, 05 Mar 2017 19:49:10 GMT): akm4 (Sun, 05 Mar 2017 21:11:00 GMT): MartinMateev (Mon, 06 Mar 2017 08:13:04 GMT): kosullivan (Mon, 06 Mar 2017 09:14:46 GMT): kosullivan (Mon, 06 Mar 2017 09:15:33 GMT): kosullivan (Mon, 06 Mar 2017 09:15:33 GMT): dselman (Mon, 06 Mar 2017 09:22:46 GMT): kosullivan (Mon, 06 Mar 2017 09:28:16 GMT): dselman (Mon, 06 Mar 2017 09:30:06 GMT): dselman (Mon, 06 Mar 2017 09:30:39 GMT): dselman (Mon, 06 Mar 2017 09:35:04 GMT): dselman (Mon, 06 Mar 2017 09:35:04 GMT): dselman (Mon, 06 Mar 2017 09:35:04 GMT): kosullivan (Mon, 06 Mar 2017 09:59:22 GMT): kosullivan (Mon, 06 Mar 2017 09:59:22 GMT): kosullivan (Mon, 06 Mar 2017 09:59:22 GMT): kosullivan (Mon, 06 Mar 2017 10:00:36 GMT): mbwhite (Mon, 06 Mar 2017 10:09:54 GMT): kosullivan (Mon, 06 Mar 2017 10:10:08 GMT): kosullivan (Mon, 06 Mar 2017 10:10:57 GMT): kosullivan (Mon, 06 Mar 2017 10:11:18 GMT): mbwhite (Mon, 06 Mar 2017 10:12:22 GMT): kosullivan (Mon, 06 Mar 2017 10:13:09 GMT): kosullivan (Mon, 06 Mar 2017 10:14:06 GMT): mbwhite (Mon, 06 Mar 2017 10:16:45 GMT): mbwhite (Mon, 06 Mar 2017 10:17:15 GMT): kosullivan (Mon, 06 Mar 2017 10:20:14 GMT): davidkel (Mon, 06 Mar 2017 10:28:04 GMT): davidkel (Mon, 06 Mar 2017 10:28:04 GMT): kathrynharrison (Mon, 06 Mar 2017 11:31:12 GMT): tarima (Mon, 06 Mar 2017 12:46:14 GMT): tarima (Mon, 06 Mar 2017 12:46:32 GMT): tarima (Mon, 06 Mar 2017 12:46:41 GMT): tarima (Mon, 06 Mar 2017 12:46:53 GMT): tarima (Mon, 06 Mar 2017 12:47:02 GMT): dselman (Mon, 06 Mar 2017 13:10:44 GMT): Vadim (Mon, 06 Mar 2017 13:12:12 GMT): MartinMateev (Mon, 06 Mar 2017 13:29:53 GMT): MartinMateev (Mon, 06 Mar 2017 13:30:03 GMT): MartinMateev (Mon, 06 Mar 2017 13:30:03 GMT): tarima (Mon, 06 Mar 2017 13:33:45 GMT): xixuejia (Mon, 06 Mar 2017 13:34:48 GMT): Jakeeyturner (Mon, 06 Mar 2017 13:34:49 GMT): xixuejia (Mon, 06 Mar 2017 13:36:26 GMT): MartinMateev (Mon, 06 Mar 2017 13:36:57 GMT): xixuejia (Mon, 06 Mar 2017 13:38:52 GMT): MartinMateev (Mon, 06 Mar 2017 13:39:15 GMT): MartinMateev (Mon, 06 Mar 2017 13:39:42 GMT): dselman (Mon, 06 Mar 2017 13:41:44 GMT): xixuejia (Mon, 06 Mar 2017 13:42:21 GMT): MartinMateev (Mon, 06 Mar 2017 13:48:25 GMT): MartinMateev (Mon, 06 Mar 2017 13:48:41 GMT): MartinMateev (Mon, 06 Mar 2017 13:49:01 GMT): MartinMateev (Mon, 06 Mar 2017 13:49:08 GMT): MartinMateev (Mon, 06 Mar 2017 13:49:56 GMT): Jakeeyturner (Mon, 06 Mar 2017 13:52:18 GMT): MartinMateev (Mon, 06 Mar 2017 13:55:37 GMT): MartinMateev (Mon, 06 Mar 2017 13:56:06 GMT): MartinMateev (Mon, 06 Mar 2017 13:56:18 GMT): MartinMateev (Mon, 06 Mar 2017 13:56:21 GMT): MartinMateev (Mon, 06 Mar 2017 13:56:26 GMT): MartinMateev (Mon, 06 Mar 2017 13:56:52 GMT): MartinMateev (Mon, 06 Mar 2017 13:57:06 GMT): MartinMateev (Mon, 06 Mar 2017 13:57:24 GMT): dselman (Mon, 06 Mar 2017 13:58:18 GMT): dselman (Mon, 06 Mar 2017 13:58:38 GMT): MartinMateev (Mon, 06 Mar 2017 14:02:03 GMT): MartinMateev (Mon, 06 Mar 2017 14:02:10 GMT): MartinMateev (Mon, 06 Mar 2017 14:02:27 GMT): MartinMateev (Mon, 06 Mar 2017 14:02:34 GMT): dselman (Mon, 06 Mar 2017 14:02:36 GMT): MartinMateev (Mon, 06 Mar 2017 14:02:44 GMT): dselman (Mon, 06 Mar 2017 14:02:52 GMT): MartinMateev (Mon, 06 Mar 2017 14:03:54 GMT): MartinMateev (Mon, 06 Mar 2017 14:04:04 GMT): smithsj (Mon, 06 Mar 2017 14:04:31 GMT): smithsj (Mon, 06 Mar 2017 14:04:41 GMT): smithsj (Mon, 06 Mar 2017 14:04:50 GMT): jdockter (Mon, 06 Mar 2017 14:05:16 GMT): jdockter (Mon, 06 Mar 2017 14:05:18 GMT): MartinMateev (Mon, 06 Mar 2017 14:07:33 GMT): smithsj (Mon, 06 Mar 2017 14:08:04 GMT): dave.enyeart (Mon, 06 Mar 2017 14:08:47 GMT): MartinMateev (Mon, 06 Mar 2017 14:09:14 GMT): MartinMateev (Mon, 06 Mar 2017 14:09:22 GMT): xixuejia (Mon, 06 Mar 2017 14:14:22 GMT): xixuejia (Mon, 06 Mar 2017 14:14:29 GMT): xixuejia (Mon, 06 Mar 2017 14:15:03 GMT): Jakeeyturner (Mon, 06 Mar 2017 14:15:55 GMT): smithsj (Mon, 06 Mar 2017 14:16:12 GMT): xixuejia (Mon, 06 Mar 2017 14:18:46 GMT): xixuejia (Mon, 06 Mar 2017 14:19:23 GMT): xixuejia (Mon, 06 Mar 2017 14:19:23 GMT): smithsj (Mon, 06 Mar 2017 14:19:44 GMT): xixuejia (Mon, 06 Mar 2017 14:19:54 GMT): smithsj (Mon, 06 Mar 2017 14:21:04 GMT): xixuejia (Mon, 06 Mar 2017 14:21:52 GMT): smithsj (Mon, 06 Mar 2017 14:24:22 GMT): smithsj (Mon, 06 Mar 2017 14:25:35 GMT): Jakeeyturner (Mon, 06 Mar 2017 14:28:45 GMT): xixuejia (Mon, 06 Mar 2017 14:30:01 GMT): xixuejia (Mon, 06 Mar 2017 14:30:31 GMT): xixuejia (Mon, 06 Mar 2017 14:30:51 GMT): xixuejia (Mon, 06 Mar 2017 14:31:17 GMT): xixuejia (Mon, 06 Mar 2017 14:32:17 GMT): xixuejia (Mon, 06 Mar 2017 14:34:56 GMT): smithsj (Mon, 06 Mar 2017 14:36:28 GMT): ayoub (Mon, 06 Mar 2017 14:37:57 GMT): dselman (Mon, 06 Mar 2017 14:54:01 GMT): dselman (Mon, 06 Mar 2017 14:54:26 GMT): xixuejia (Mon, 06 Mar 2017 14:58:18 GMT): ardashev120101 (Mon, 06 Mar 2017 14:58:22 GMT): ardashev120101 (Mon, 06 Mar 2017 14:58:37 GMT): dselman (Mon, 06 Mar 2017 14:59:28 GMT): dselman (Mon, 06 Mar 2017 14:59:44 GMT): xixuejia (Mon, 06 Mar 2017 15:00:22 GMT): ayoub (Mon, 06 Mar 2017 15:01:27 GMT): xixuejia (Mon, 06 Mar 2017 15:01:30 GMT): dselman (Mon, 06 Mar 2017 15:04:19 GMT): dselman (Mon, 06 Mar 2017 15:04:32 GMT): xixuejia (Mon, 06 Mar 2017 15:05:20 GMT): ayoub (Mon, 06 Mar 2017 15:08:34 GMT): ayoub (Mon, 06 Mar 2017 15:09:02 GMT): dselman (Mon, 06 Mar 2017 15:10:21 GMT): ayoub (Mon, 06 Mar 2017 15:15:53 GMT): georgeormrod@gmail.com (Mon, 06 Mar 2017 15:45:20 GMT): EdProsser (Mon, 06 Mar 2017 16:21:22 GMT): silliman (Mon, 06 Mar 2017 16:28:41 GMT): dselman (Mon, 06 Mar 2017 16:34:08 GMT): davidkel (Mon, 06 Mar 2017 16:38:57 GMT): jorgedr (Mon, 06 Mar 2017 16:39:43 GMT): silliman (Mon, 06 Mar 2017 16:42:23 GMT): sstone1 (Mon, 06 Mar 2017 17:00:22 GMT): sstone1 (Mon, 06 Mar 2017 17:02:14 GMT): MartinMateev (Mon, 06 Mar 2017 18:13:33 GMT): MartinMateev (Mon, 06 Mar 2017 18:13:34 GMT): MartinMateev (Mon, 06 Mar 2017 18:14:11 GMT): MartinMateev (Mon, 06 Mar 2017 18:14:32 GMT): MartinMateev (Mon, 06 Mar 2017 18:14:41 GMT): MartinMateev (Mon, 06 Mar 2017 18:40:43 GMT): MartinMateev (Mon, 06 Mar 2017 18:41:25 GMT): dselman (Mon, 06 Mar 2017 19:02:29 GMT): MartinMateev (Mon, 06 Mar 2017 19:42:07 GMT): dselman (Mon, 06 Mar 2017 20:12:42 GMT): MartinMateev (Mon, 06 Mar 2017 20:27:24 GMT): MartinMateev (Mon, 06 Mar 2017 20:27:48 GMT): MartinMateev (Mon, 06 Mar 2017 20:28:14 GMT): MartinMateev (Mon, 06 Mar 2017 20:28:25 GMT): MartinMateev (Mon, 06 Mar 2017 20:28:32 GMT): MartinMateev (Mon, 06 Mar 2017 20:29:03 GMT): MartinMateev (Mon, 06 Mar 2017 20:29:03 GMT): MartinMateev (Mon, 06 Mar 2017 20:31:08 GMT): MartinMateev (Mon, 06 Mar 2017 20:31:23 GMT): dselman (Mon, 06 Mar 2017 20:34:10 GMT): dselman (Mon, 06 Mar 2017 20:34:59 GMT): dselman (Mon, 06 Mar 2017 20:35:13 GMT): silliman (Mon, 06 Mar 2017 20:48:04 GMT): MartinMateev (Mon, 06 Mar 2017 20:50:12 GMT): MartinMateev (Mon, 06 Mar 2017 20:51:11 GMT): MartinMateev (Mon, 06 Mar 2017 20:51:23 GMT): MartinMateev (Mon, 06 Mar 2017 20:51:37 GMT): MartinMateev (Mon, 06 Mar 2017 20:52:02 GMT): MartinMateev (Mon, 06 Mar 2017 20:53:17 GMT): MartinMateev (Mon, 06 Mar 2017 20:53:50 GMT): MartinMateev (Mon, 06 Mar 2017 20:54:31 GMT): MartinMateev (Mon, 06 Mar 2017 20:55:10 GMT): MartinMateev (Mon, 06 Mar 2017 20:55:10 GMT): MartinMateev (Mon, 06 Mar 2017 20:56:08 GMT): MartinMateev (Mon, 06 Mar 2017 20:56:08 GMT): jdockter (Mon, 06 Mar 2017 22:00:29 GMT): dselman (Mon, 06 Mar 2017 22:03:59 GMT): dselman (Mon, 06 Mar 2017 22:04:34 GMT): dselman (Mon, 06 Mar 2017 22:04:34 GMT): dselman (Mon, 06 Mar 2017 22:05:52 GMT): jdockter (Mon, 06 Mar 2017 22:16:28 GMT): jdockter (Mon, 06 Mar 2017 22:23:11 GMT): dselman (Mon, 06 Mar 2017 22:39:55 GMT): dselman (Mon, 06 Mar 2017 22:41:08 GMT): klorenz (Tue, 07 Mar 2017 01:23:17 GMT): xuanyue202 (Tue, 07 Mar 2017 01:26:21 GMT): klorenz (Tue, 07 Mar 2017 01:33:15 GMT): dselman (Tue, 07 Mar 2017 08:04:28 GMT): MartinMateev (Tue, 07 Mar 2017 08:26:03 GMT): MartinMateev (Tue, 07 Mar 2017 08:26:25 GMT): dselman (Tue, 07 Mar 2017 08:52:20 GMT): MartinMateev (Tue, 07 Mar 2017 08:53:33 GMT): GrahamCharters (Tue, 07 Mar 2017 09:33:34 GMT): dselman (Tue, 07 Mar 2017 09:47:07 GMT): GrahamCharters (Tue, 07 Mar 2017 09:49:16 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:46:06 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:47:14 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:47:16 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:47:30 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:47:51 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:48:01 GMT): mbwhite (Tue, 07 Mar 2017 10:48:39 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:49:23 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:49:35 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:49:59 GMT): mbwhite (Tue, 07 Mar 2017 10:51:40 GMT): mbwhite (Tue, 07 Mar 2017 10:52:04 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:52:34 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:52:38 GMT): mbwhite (Tue, 07 Mar 2017 10:53:06 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:54:11 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:54:28 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:54:32 GMT): mbwhite (Tue, 07 Mar 2017 10:56:46 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:57:05 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:57:13 GMT): AbhilekhSingh (Tue, 07 Mar 2017 10:57:16 GMT): kosullivan (Tue, 07 Mar 2017 11:16:26 GMT): kosullivan (Tue, 07 Mar 2017 11:16:42 GMT): kosullivan (Tue, 07 Mar 2017 11:17:05 GMT): kosullivan (Tue, 07 Mar 2017 11:17:19 GMT): kosullivan (Tue, 07 Mar 2017 11:18:06 GMT): mbwhite (Tue, 07 Mar 2017 11:38:20 GMT): mbwhite (Tue, 07 Mar 2017 11:38:28 GMT): AbhilekhSingh (Tue, 07 Mar 2017 11:42:01 GMT): AbhilekhSingh (Tue, 07 Mar 2017 11:42:05 GMT): AbhilekhSingh (Tue, 07 Mar 2017 11:42:13 GMT): AbhilekhSingh (Tue, 07 Mar 2017 11:42:29 GMT): Jakeeyturner (Tue, 07 Mar 2017 11:46:58 GMT): Jakeeyturner (Tue, 07 Mar 2017 11:47:46 GMT): xuanyue202 (Tue, 07 Mar 2017 12:18:13 GMT): xuanyue202 (Tue, 07 Mar 2017 12:18:22 GMT): AbhilekhSingh (Tue, 07 Mar 2017 12:36:50 GMT): AbhilekhSingh (Tue, 07 Mar 2017 12:36:54 GMT): AbhilekhSingh (Tue, 07 Mar 2017 12:37:07 GMT): mbwhite (Tue, 07 Mar 2017 12:38:38 GMT): kosullivan (Tue, 07 Mar 2017 12:47:39 GMT): klorenz (Tue, 07 Mar 2017 15:07:09 GMT): ercw (Tue, 07 Mar 2017 15:36:49 GMT): uber.twin (Tue, 07 Mar 2017 15:38:47 GMT): uber.twin (Tue, 07 Mar 2017 15:40:27 GMT): sstone1 (Tue, 07 Mar 2017 15:47:24 GMT): sstone1 (Tue, 07 Mar 2017 15:48:41 GMT): sstone1 (Tue, 07 Mar 2017 15:48:48 GMT): sstone1 (Tue, 07 Mar 2017 15:50:15 GMT): sstone1 (Tue, 07 Mar 2017 15:50:28 GMT): sstone1 (Tue, 07 Mar 2017 15:51:07 GMT): sstone1 (Tue, 07 Mar 2017 15:51:52 GMT): sstone1 (Tue, 07 Mar 2017 15:52:49 GMT): uber.twin (Tue, 07 Mar 2017 15:55:10 GMT): uber.twin (Tue, 07 Mar 2017 15:55:37 GMT): sstone1 (Tue, 07 Mar 2017 15:55:54 GMT): sstone1 (Tue, 07 Mar 2017 15:55:55 GMT): uber.twin (Tue, 07 Mar 2017 15:56:21 GMT): sstone1 (Tue, 07 Mar 2017 15:56:58 GMT): sstone1 (Tue, 07 Mar 2017 15:57:23 GMT): uber.twin (Tue, 07 Mar 2017 16:00:06 GMT): sstone1 (Tue, 07 Mar 2017 16:03:48 GMT): sstone1 (Tue, 07 Mar 2017 16:04:20 GMT): sstone1 (Tue, 07 Mar 2017 16:04:20 GMT): sstone1 (Tue, 07 Mar 2017 16:04:38 GMT): sstone1 (Tue, 07 Mar 2017 16:04:38 GMT): uber.twin (Tue, 07 Mar 2017 16:06:48 GMT): uber.twin (Tue, 07 Mar 2017 16:07:51 GMT): uber.twin (Tue, 07 Mar 2017 16:09:58 GMT): sstone1 (Tue, 07 Mar 2017 16:10:41 GMT): sstone1 (Tue, 07 Mar 2017 16:10:42 GMT): uber.twin (Tue, 07 Mar 2017 16:12:59 GMT): uber.twin (Tue, 07 Mar 2017 16:19:32 GMT): sstone1 (Tue, 07 Mar 2017 16:22:32 GMT): sstone1 (Tue, 07 Mar 2017 16:22:41 GMT): sstone1 (Tue, 07 Mar 2017 16:23:21 GMT): sstone1 (Tue, 07 Mar 2017 16:23:42 GMT): sstone1 (Tue, 07 Mar 2017 16:24:36 GMT): sstone1 (Tue, 07 Mar 2017 16:24:41 GMT): sstone1 (Tue, 07 Mar 2017 16:25:03 GMT): uber.twin (Tue, 07 Mar 2017 16:28:29 GMT): uber.twin (Tue, 07 Mar 2017 16:29:28 GMT): mhalder (Tue, 07 Mar 2017 16:37:44 GMT): sstone1 (Tue, 07 Mar 2017 16:42:54 GMT): uber.twin (Tue, 07 Mar 2017 16:44:50 GMT): sstone1 (Tue, 07 Mar 2017 16:45:49 GMT): uber.twin (Tue, 07 Mar 2017 16:47:36 GMT): sstone1 (Tue, 07 Mar 2017 16:47:53 GMT): uber.twin (Tue, 07 Mar 2017 16:51:22 GMT): uber.twin (Tue, 07 Mar 2017 16:52:08 GMT): uber.twin (Tue, 07 Mar 2017 16:52:36 GMT): uber.twin (Tue, 07 Mar 2017 16:53:53 GMT): sstone1 (Tue, 07 Mar 2017 16:54:06 GMT): uber.twin (Tue, 07 Mar 2017 16:59:41 GMT): sstone1 (Tue, 07 Mar 2017 17:00:07 GMT): pards (Tue, 07 Mar 2017 21:07:53 GMT): djdeutsch (Tue, 07 Mar 2017 21:09:34 GMT): sstone1 (Tue, 07 Mar 2017 21:10:04 GMT): pards (Tue, 07 Mar 2017 21:10:22 GMT): sstone1 (Tue, 07 Mar 2017 21:10:27 GMT): sstone1 (Tue, 07 Mar 2017 21:10:41 GMT): sstone1 (Tue, 07 Mar 2017 21:11:01 GMT): pards (Tue, 07 Mar 2017 21:11:04 GMT): pards (Tue, 07 Mar 2017 21:11:13 GMT): jdockter (Tue, 07 Mar 2017 22:16:27 GMT): jdockter (Tue, 07 Mar 2017 22:16:27 GMT): jdockter (Tue, 07 Mar 2017 22:16:27 GMT): jdockter (Tue, 07 Mar 2017 22:18:38 GMT): dselman (Tue, 07 Mar 2017 22:55:29 GMT): jdockter (Tue, 07 Mar 2017 22:55:41 GMT): dselman (Tue, 07 Mar 2017 22:55:55 GMT): jdockter (Tue, 07 Mar 2017 22:56:40 GMT): jdockter (Tue, 07 Mar 2017 22:57:25 GMT): dselman (Tue, 07 Mar 2017 22:57:32 GMT): dselman (Tue, 07 Mar 2017 22:59:01 GMT): jdockter (Tue, 07 Mar 2017 23:08:37 GMT): dselman (Tue, 07 Mar 2017 23:21:36 GMT): sstone1 (Tue, 07 Mar 2017 23:54:40 GMT): sstone1 (Tue, 07 Mar 2017 23:54:50 GMT): jdockter (Tue, 07 Mar 2017 23:55:11 GMT): jdockter (Tue, 07 Mar 2017 23:59:13 GMT): jdockter (Tue, 07 Mar 2017 23:59:33 GMT): dselman (Wed, 08 Mar 2017 00:06:10 GMT): dselman (Wed, 08 Mar 2017 00:08:13 GMT): jdockter (Wed, 08 Mar 2017 00:08:58 GMT): DennisM330 (Wed, 08 Mar 2017 01:28:48 GMT): DennisM330 (Wed, 08 Mar 2017 01:34:20 GMT): DennisM330 (Wed, 08 Mar 2017 01:34:58 GMT): nvlasov (Wed, 08 Mar 2017 02:45:30 GMT): mohamoud.egal (Wed, 08 Mar 2017 02:57:34 GMT): mohamoud.egal (Wed, 08 Mar 2017 02:57:49 GMT): mohamoud.egal (Wed, 08 Mar 2017 02:58:08 GMT): dselman (Wed, 08 Mar 2017 07:52:09 GMT): dselman (Wed, 08 Mar 2017 07:53:47 GMT): xuanyue202 (Wed, 08 Mar 2017 09:22:40 GMT): ziyuan (Wed, 08 Mar 2017 09:24:25 GMT): Jakeeyturner (Wed, 08 Mar 2017 09:31:40 GMT): xuanyue202 (Wed, 08 Mar 2017 09:33:11 GMT): dselman (Wed, 08 Mar 2017 09:37:00 GMT): dselman (Wed, 08 Mar 2017 09:37:00 GMT): uber.twin (Wed, 08 Mar 2017 11:28:02 GMT): uber.twin (Wed, 08 Mar 2017 11:28:23 GMT): uber.twin (Wed, 08 Mar 2017 11:31:12 GMT): dselman (Wed, 08 Mar 2017 11:35:56 GMT): dselman (Wed, 08 Mar 2017 11:36:27 GMT): uber.twin (Wed, 08 Mar 2017 11:51:52 GMT): dselman (Wed, 08 Mar 2017 11:53:07 GMT): dselman (Wed, 08 Mar 2017 11:53:37 GMT): uber.twin (Wed, 08 Mar 2017 11:54:10 GMT): dselman (Wed, 08 Mar 2017 11:54:39 GMT): uber.twin (Wed, 08 Mar 2017 11:55:33 GMT): SushilChaturvedi (Wed, 08 Mar 2017 12:14:12 GMT): jdockter (Wed, 08 Mar 2017 12:19:23 GMT): sstone1 (Wed, 08 Mar 2017 12:49:27 GMT): sstone1 (Wed, 08 Mar 2017 12:50:00 GMT): DennisM330 (Wed, 08 Mar 2017 13:16:35 GMT): DennisM330 (Wed, 08 Mar 2017 13:17:27 GMT): DennisM330 (Wed, 08 Mar 2017 13:22:34 GMT): AbhilekhSingh (Wed, 08 Mar 2017 13:24:51 GMT): AbhilekhSingh (Wed, 08 Mar 2017 13:25:02 GMT): dselman (Wed, 08 Mar 2017 13:49:18 GMT): dselman (Wed, 08 Mar 2017 13:49:30 GMT): pards (Wed, 08 Mar 2017 14:10:15 GMT): pards (Wed, 08 Mar 2017 14:10:15 GMT): pards (Wed, 08 Mar 2017 14:10:49 GMT): pards (Wed, 08 Mar 2017 14:10:49 GMT): pards (Wed, 08 Mar 2017 14:10:59 GMT): MartinMateev (Wed, 08 Mar 2017 14:13:31 GMT): MartinMateev (Wed, 08 Mar 2017 14:13:35 GMT): pards (Wed, 08 Mar 2017 14:13:45 GMT): pards (Wed, 08 Mar 2017 14:14:02 GMT): MartinMateev (Wed, 08 Mar 2017 14:14:20 GMT): MartinMateev (Wed, 08 Mar 2017 14:14:31 GMT): MartinMateev (Wed, 08 Mar 2017 14:15:01 GMT): MartinMateev (Wed, 08 Mar 2017 14:15:13 GMT): MartinMateev (Wed, 08 Mar 2017 14:15:21 GMT): pards (Wed, 08 Mar 2017 14:15:47 GMT): pards (Wed, 08 Mar 2017 14:16:37 GMT): MartinMateev (Wed, 08 Mar 2017 14:16:58 GMT): pards (Wed, 08 Mar 2017 14:17:08 GMT): MartinMateev (Wed, 08 Mar 2017 14:17:10 GMT): MartinMateev (Wed, 08 Mar 2017 14:18:49 GMT): MartinMateev (Wed, 08 Mar 2017 14:18:55 GMT): jdockter (Wed, 08 Mar 2017 14:24:56 GMT): pards (Wed, 08 Mar 2017 14:31:27 GMT): pards (Wed, 08 Mar 2017 14:31:56 GMT): pards (Wed, 08 Mar 2017 14:37:44 GMT): pards (Wed, 08 Mar 2017 14:38:00 GMT): dselman (Wed, 08 Mar 2017 14:39:30 GMT): dselman (Wed, 08 Mar 2017 14:39:30 GMT): dselman (Wed, 08 Mar 2017 14:40:18 GMT): dselman (Wed, 08 Mar 2017 14:41:36 GMT): pards (Wed, 08 Mar 2017 14:43:28 GMT): pards (Wed, 08 Mar 2017 14:43:28 GMT): DennisM330 (Wed, 08 Mar 2017 14:43:45 GMT): dselman (Wed, 08 Mar 2017 14:43:46 GMT): uber.twin (Wed, 08 Mar 2017 14:45:28 GMT): jdockter (Wed, 08 Mar 2017 14:49:26 GMT): jdockter (Wed, 08 Mar 2017 14:49:56 GMT): jdockter (Wed, 08 Mar 2017 14:52:04 GMT): mohamoud.egal (Wed, 08 Mar 2017 14:58:24 GMT): uber.twin (Wed, 08 Mar 2017 15:03:57 GMT): uber.twin (Wed, 08 Mar 2017 15:07:03 GMT): uber.twin (Wed, 08 Mar 2017 15:07:43 GMT): jdockter (Wed, 08 Mar 2017 15:09:46 GMT): uber.twin (Wed, 08 Mar 2017 15:19:16 GMT): uber.twin (Wed, 08 Mar 2017 15:21:24 GMT): uber.twin (Wed, 08 Mar 2017 15:29:39 GMT): dselman (Wed, 08 Mar 2017 15:34:35 GMT): uber.twin (Wed, 08 Mar 2017 15:39:00 GMT): Suma (Wed, 08 Mar 2017 15:42:35 GMT): uber.twin (Wed, 08 Mar 2017 15:47:06 GMT): Jakeeyturner (Wed, 08 Mar 2017 15:49:30 GMT): Jakeeyturner (Wed, 08 Mar 2017 15:49:40 GMT): uber.twin (Wed, 08 Mar 2017 15:52:34 GMT): Jakeeyturner (Wed, 08 Mar 2017 15:53:20 GMT): kosullivan (Wed, 08 Mar 2017 16:05:46 GMT): mbwhite (Wed, 08 Mar 2017 16:06:46 GMT): mbwhite (Wed, 08 Mar 2017 16:07:45 GMT): kosullivan (Wed, 08 Mar 2017 16:08:11 GMT): kosullivan (Wed, 08 Mar 2017 16:08:11 GMT): mbwhite (Wed, 08 Mar 2017 16:08:42 GMT): jfitzgerald (Wed, 08 Mar 2017 18:24:10 GMT): pards (Wed, 08 Mar 2017 18:33:48 GMT): pards (Wed, 08 Mar 2017 18:34:18 GMT): pards (Wed, 08 Mar 2017 18:34:18 GMT): pards (Wed, 08 Mar 2017 18:35:01 GMT): jdockter (Wed, 08 Mar 2017 18:35:57 GMT): pards (Wed, 08 Mar 2017 18:36:24 GMT): pards (Wed, 08 Mar 2017 18:36:54 GMT): jdockter (Wed, 08 Mar 2017 18:37:33 GMT): pards (Wed, 08 Mar 2017 18:37:33 GMT): pards (Wed, 08 Mar 2017 18:38:59 GMT): pards (Wed, 08 Mar 2017 18:39:11 GMT): jdockter (Wed, 08 Mar 2017 18:40:44 GMT): pards (Wed, 08 Mar 2017 18:40:52 GMT): pards (Wed, 08 Mar 2017 18:41:14 GMT): jdockter (Wed, 08 Mar 2017 18:41:29 GMT): jdockter (Wed, 08 Mar 2017 18:43:24 GMT): jdockter (Wed, 08 Mar 2017 18:43:58 GMT): pards (Wed, 08 Mar 2017 18:49:47 GMT): jdockter (Wed, 08 Mar 2017 18:55:02 GMT): pards (Wed, 08 Mar 2017 18:56:56 GMT): pards (Wed, 08 Mar 2017 18:56:56 GMT): jdockter (Wed, 08 Mar 2017 19:00:40 GMT): jdockter (Wed, 08 Mar 2017 20:57:20 GMT): jdockter (Wed, 08 Mar 2017 20:58:52 GMT): sstone1 (Wed, 08 Mar 2017 21:09:06 GMT): jdockter (Wed, 08 Mar 2017 21:15:50 GMT): jdockter (Wed, 08 Mar 2017 21:18:30 GMT): sstone1 (Wed, 08 Mar 2017 21:18:56 GMT): jdockter (Wed, 08 Mar 2017 21:19:12 GMT): jdockter (Wed, 08 Mar 2017 21:26:31 GMT): sstone1 (Wed, 08 Mar 2017 21:28:52 GMT): agaragiola (Wed, 08 Mar 2017 21:48:28 GMT): diegomasini (Wed, 08 Mar 2017 21:48:40 GMT): agaragiola (Wed, 08 Mar 2017 21:55:30 GMT): sstone1 (Wed, 08 Mar 2017 21:56:09 GMT): agaragiola (Wed, 08 Mar 2017 21:56:43 GMT): xuanyue202 (Wed, 08 Mar 2017 23:55:37 GMT): lenin.mehedy (Thu, 09 Mar 2017 04:04:47 GMT): tarima (Thu, 09 Mar 2017 07:45:01 GMT): tarima (Thu, 09 Mar 2017 07:45:37 GMT): tarima (Thu, 09 Mar 2017 07:46:25 GMT): sstone1 (Thu, 09 Mar 2017 08:24:33 GMT): sstone1 (Thu, 09 Mar 2017 08:25:19 GMT): Rymd (Thu, 09 Mar 2017 09:23:33 GMT): sstone1 (Thu, 09 Mar 2017 10:14:22 GMT): smithsj (Thu, 09 Mar 2017 10:16:00 GMT): sstone1 (Thu, 09 Mar 2017 10:16:11 GMT): smithsj (Thu, 09 Mar 2017 10:16:20 GMT): nkl199 (Thu, 09 Mar 2017 10:19:53 GMT): sstone1 (Thu, 09 Mar 2017 11:36:59 GMT): sstone1 (Thu, 09 Mar 2017 11:36:59 GMT): sstone1 (Thu, 09 Mar 2017 11:36:59 GMT): sstone1 (Thu, 09 Mar 2017 11:47:59 GMT): sstone1 (Thu, 09 Mar 2017 11:49:08 GMT): mbaizan (Thu, 09 Mar 2017 12:16:59 GMT): enidz (Thu, 09 Mar 2017 12:17:06 GMT): gatakka (Thu, 09 Mar 2017 12:20:51 GMT): aaron_z7 (Thu, 09 Mar 2017 12:23:05 GMT): aaron_z7 (Thu, 09 Mar 2017 12:23:56 GMT): jeffreypicard (Thu, 09 Mar 2017 12:24:06 GMT): jworthington (Thu, 09 Mar 2017 12:24:38 GMT): dselman (Thu, 09 Mar 2017 12:27:58 GMT): dselman (Thu, 09 Mar 2017 12:28:14 GMT): dselman (Thu, 09 Mar 2017 12:28:37 GMT): dselman (Thu, 09 Mar 2017 12:29:21 GMT): aaron_z7 (Thu, 09 Mar 2017 12:29:22 GMT): Basug (Thu, 09 Mar 2017 12:29:35 GMT): gatakka (Thu, 09 Mar 2017 12:35:08 GMT): dselman (Thu, 09 Mar 2017 12:45:42 GMT): RezwanKabir (Thu, 09 Mar 2017 13:10:32 GMT): raj (Thu, 09 Mar 2017 13:26:02 GMT): tbrooke (Thu, 09 Mar 2017 13:27:04 GMT): aberfou (Thu, 09 Mar 2017 13:47:28 GMT): qb (Thu, 09 Mar 2017 14:15:18 GMT): pards (Thu, 09 Mar 2017 14:27:12 GMT): dselman (Thu, 09 Mar 2017 14:46:56 GMT): tarima (Thu, 09 Mar 2017 14:51:35 GMT): sstone1 (Thu, 09 Mar 2017 15:01:34 GMT): jdockter (Thu, 09 Mar 2017 15:08:43 GMT): jdockter (Thu, 09 Mar 2017 15:08:43 GMT): atomkinson (Thu, 09 Mar 2017 16:53:33 GMT): atomkinson (Thu, 09 Mar 2017 16:54:55 GMT): dselman (Thu, 09 Mar 2017 16:58:30 GMT): mohamoud.egal (Thu, 09 Mar 2017 18:09:13 GMT): kosullivan (Thu, 09 Mar 2017 19:05:33 GMT): kosullivan (Thu, 09 Mar 2017 19:05:57 GMT): kosullivan (Thu, 09 Mar 2017 19:06:32 GMT): VipinB (Thu, 09 Mar 2017 19:11:47 GMT): sstone1 (Thu, 09 Mar 2017 20:52:11 GMT): sstone1 (Thu, 09 Mar 2017 21:01:38 GMT): sstone1 (Thu, 09 Mar 2017 21:02:04 GMT): sstone1 (Thu, 09 Mar 2017 21:02:17 GMT): Manikanda Gunasekaran (Thu, 09 Mar 2017 21:18:36 GMT): BrijeshJ (Thu, 09 Mar 2017 21:57:37 GMT): dselman (Thu, 09 Mar 2017 23:05:50 GMT): dselman (Thu, 09 Mar 2017 23:06:18 GMT): dselman (Thu, 09 Mar 2017 23:06:54 GMT): pospi (Fri, 10 Mar 2017 00:01:01 GMT): pospi (Fri, 10 Mar 2017 00:29:55 GMT): mohamoud.egal (Fri, 10 Mar 2017 01:56:04 GMT): mohamoud.egal (Fri, 10 Mar 2017 01:56:11 GMT): dev705370 (Fri, 10 Mar 2017 05:17:40 GMT): sstone1 (Fri, 10 Mar 2017 07:55:58 GMT): sstone1 (Fri, 10 Mar 2017 07:55:58 GMT): sstone1 (Fri, 10 Mar 2017 08:03:54 GMT): pospi (Fri, 10 Mar 2017 08:28:56 GMT): dragosh (Fri, 10 Mar 2017 08:40:38 GMT): uber.twin (Fri, 10 Mar 2017 09:46:57 GMT): dselman (Fri, 10 Mar 2017 09:58:42 GMT): uber.twin (Fri, 10 Mar 2017 10:31:30 GMT): uber.twin (Fri, 10 Mar 2017 10:46:53 GMT): vivekraut (Fri, 10 Mar 2017 13:42:14 GMT): xuanyue202 (Fri, 10 Mar 2017 14:16:27 GMT): uber.twin (Fri, 10 Mar 2017 14:44:04 GMT): uber.twin (Fri, 10 Mar 2017 14:46:06 GMT): uber.twin (Fri, 10 Mar 2017 14:46:31 GMT): uber.twin (Fri, 10 Mar 2017 14:47:04 GMT): uber.twin (Fri, 10 Mar 2017 14:47:32 GMT): mbwhite (Fri, 10 Mar 2017 14:58:55 GMT): mbwhite (Fri, 10 Mar 2017 14:59:28 GMT): mbwhite (Fri, 10 Mar 2017 14:59:56 GMT): birender.a.singh (Fri, 10 Mar 2017 15:01:51 GMT): uber.twin (Fri, 10 Mar 2017 15:08:06 GMT): uber.twin (Fri, 10 Mar 2017 15:15:21 GMT): uber.twin (Fri, 10 Mar 2017 15:16:13 GMT): uber.twin (Fri, 10 Mar 2017 15:17:06 GMT): mbwhite (Fri, 10 Mar 2017 15:21:10 GMT): mbwhite (Fri, 10 Mar 2017 15:21:56 GMT): mbwhite (Fri, 10 Mar 2017 15:22:26 GMT): mlishok (Fri, 10 Mar 2017 15:23:31 GMT): mbwhite (Fri, 10 Mar 2017 15:24:26 GMT): raj (Fri, 10 Mar 2017 15:25:36 GMT): uber.twin (Fri, 10 Mar 2017 15:25:45 GMT): raj (Fri, 10 Mar 2017 15:25:50 GMT): uber.twin (Fri, 10 Mar 2017 15:26:38 GMT): uber.twin (Fri, 10 Mar 2017 15:26:39 GMT): mbwhite (Fri, 10 Mar 2017 15:29:58 GMT): raj (Fri, 10 Mar 2017 15:30:23 GMT): mbwhite (Fri, 10 Mar 2017 15:31:19 GMT): mbwhite (Fri, 10 Mar 2017 15:31:24 GMT): mbwhite (Fri, 10 Mar 2017 15:32:06 GMT): uber.twin (Fri, 10 Mar 2017 15:34:39 GMT): mbwhite (Fri, 10 Mar 2017 15:34:55 GMT): mbwhite (Fri, 10 Mar 2017 15:36:08 GMT): uber.twin (Fri, 10 Mar 2017 15:39:37 GMT): dragosh (Fri, 10 Mar 2017 15:40:07 GMT): dragosh (Fri, 10 Mar 2017 15:40:38 GMT): JatinderBali (Fri, 10 Mar 2017 15:42:41 GMT): mbwhite (Fri, 10 Mar 2017 15:59:20 GMT): mohamoud.egal (Fri, 10 Mar 2017 16:33:50 GMT): mohamoud.egal (Fri, 10 Mar 2017 17:35:08 GMT): mohamoud.egal (Fri, 10 Mar 2017 17:37:49 GMT): dselman (Fri, 10 Mar 2017 18:06:50 GMT): jdockter (Fri, 10 Mar 2017 18:12:17 GMT): dselman (Fri, 10 Mar 2017 18:19:12 GMT): dselman (Fri, 10 Mar 2017 18:19:24 GMT): sstone1 (Fri, 10 Mar 2017 18:23:05 GMT): sstone1 (Fri, 10 Mar 2017 18:35:12 GMT): mohamoud.egal (Fri, 10 Mar 2017 18:44:27 GMT): mohamoud.egal (Fri, 10 Mar 2017 18:44:42 GMT): mohamoud.egal (Fri, 10 Mar 2017 18:44:52 GMT): sstone1 (Fri, 10 Mar 2017 18:47:50 GMT): mohamoud.egal (Fri, 10 Mar 2017 18:50:02 GMT): mohamoud.egal (Fri, 10 Mar 2017 18:50:08 GMT): sstone1 (Fri, 10 Mar 2017 18:55:05 GMT): sstone1 (Fri, 10 Mar 2017 18:56:03 GMT): sstone1 (Fri, 10 Mar 2017 18:56:23 GMT): mohamoud.egal (Fri, 10 Mar 2017 19:01:32 GMT): mohamoud.egal (Fri, 10 Mar 2017 19:01:42 GMT): sstone1 (Fri, 10 Mar 2017 19:02:24 GMT): jdockter (Fri, 10 Mar 2017 19:09:08 GMT): jdockter (Fri, 10 Mar 2017 19:09:31 GMT): jdockter (Fri, 10 Mar 2017 19:11:07 GMT): jdockter (Fri, 10 Mar 2017 19:18:03 GMT): jdockter (Fri, 10 Mar 2017 19:18:03 GMT): jdockter (Fri, 10 Mar 2017 19:19:15 GMT): jdockter (Fri, 10 Mar 2017 19:19:15 GMT): dselman (Fri, 10 Mar 2017 19:48:29 GMT): mohamoud.egal (Fri, 10 Mar 2017 20:51:40 GMT): sstone1 (Fri, 10 Mar 2017 20:52:17 GMT): sstone1 (Fri, 10 Mar 2017 20:52:25 GMT): sstone1 (Fri, 10 Mar 2017 20:52:35 GMT): mohamoud.egal (Fri, 10 Mar 2017 20:58:10 GMT): mohamoud.egal (Fri, 10 Mar 2017 20:58:14 GMT): sanjay-saxena (Fri, 10 Mar 2017 21:03:35 GMT): sstone1 (Fri, 10 Mar 2017 21:27:25 GMT): sstone1 (Fri, 10 Mar 2017 21:27:25 GMT): mohamoud.egal (Fri, 10 Mar 2017 23:04:41 GMT): mohamoud.egal (Fri, 10 Mar 2017 23:04:49 GMT): mohamoud.egal (Fri, 10 Mar 2017 23:04:52 GMT): sachikoy (Sat, 11 Mar 2017 01:28:11 GMT): sachikoy (Sat, 11 Mar 2017 01:40:28 GMT): conroydave (Sat, 11 Mar 2017 07:41:14 GMT): conroydave (Sat, 11 Mar 2017 08:15:11 GMT): dselman (Sat, 11 Mar 2017 09:12:22 GMT): conroydave (Sat, 11 Mar 2017 09:12:54 GMT): dselman (Sat, 11 Mar 2017 09:13:15 GMT): conroydave (Sat, 11 Mar 2017 09:16:47 GMT): conroydave (Sat, 11 Mar 2017 09:20:41 GMT): conroydave (Sat, 11 Mar 2017 09:20:47 GMT): dselman (Sat, 11 Mar 2017 09:21:00 GMT): conroydave (Sat, 11 Mar 2017 09:22:07 GMT): dselman (Sat, 11 Mar 2017 09:22:16 GMT): dselman (Sat, 11 Mar 2017 09:22:39 GMT): dselman (Sat, 11 Mar 2017 09:22:45 GMT): dselman (Sat, 11 Mar 2017 09:23:17 GMT): conroydave (Sat, 11 Mar 2017 09:25:52 GMT): dselman (Sat, 11 Mar 2017 09:31:06 GMT): conroydave (Sat, 11 Mar 2017 09:37:36 GMT): conroydave (Sat, 11 Mar 2017 09:37:44 GMT): conroydave (Sat, 11 Mar 2017 09:37:47 GMT): conroydave (Sat, 11 Mar 2017 09:38:19 GMT): conroydave (Sat, 11 Mar 2017 09:40:28 GMT): dselman (Sat, 11 Mar 2017 09:43:38 GMT): conroydave (Sat, 11 Mar 2017 09:43:42 GMT): conroydave (Sat, 11 Mar 2017 09:44:40 GMT): dselman (Sat, 11 Mar 2017 09:48:05 GMT): dRand (Sat, 11 Mar 2017 09:48:37 GMT): dselman (Sat, 11 Mar 2017 09:49:02 GMT): conroydave (Sat, 11 Mar 2017 09:49:07 GMT): conroydave (Sat, 11 Mar 2017 09:49:07 GMT): conroydave (Sat, 11 Mar 2017 09:49:18 GMT): conroydave (Sat, 11 Mar 2017 09:51:00 GMT): dselman (Sat, 11 Mar 2017 09:51:38 GMT): dselman (Sat, 11 Mar 2017 09:51:52 GMT): dselman (Sat, 11 Mar 2017 09:52:15 GMT): conroydave (Sat, 11 Mar 2017 09:52:16 GMT): dselman (Sat, 11 Mar 2017 09:52:31 GMT): conroydave (Sat, 11 Mar 2017 09:52:45 GMT): dselman (Sat, 11 Mar 2017 09:52:58 GMT): dselman (Sat, 11 Mar 2017 10:00:18 GMT): dselman (Sat, 11 Mar 2017 10:00:30 GMT): conroydave (Sat, 11 Mar 2017 10:07:16 GMT): conroydave (Sat, 11 Mar 2017 10:08:29 GMT): dselman (Sat, 11 Mar 2017 10:09:34 GMT): dselman (Sat, 11 Mar 2017 10:12:26 GMT): dselman (Sat, 11 Mar 2017 10:13:14 GMT): dselman (Sat, 11 Mar 2017 10:13:14 GMT): conroydave (Sat, 11 Mar 2017 10:14:47 GMT): dselman (Sat, 11 Mar 2017 10:16:18 GMT): dselman (Sat, 11 Mar 2017 10:16:38 GMT): dselman (Sat, 11 Mar 2017 10:19:21 GMT): conroydave (Sat, 11 Mar 2017 10:25:30 GMT): conroydave (Sat, 11 Mar 2017 10:44:19 GMT): conroydave (Sat, 11 Mar 2017 10:44:39 GMT): conroydave (Sat, 11 Mar 2017 10:55:50 GMT): conroydave (Sat, 11 Mar 2017 10:56:01 GMT): conroydave (Sat, 11 Mar 2017 10:56:06 GMT): dselman (Sat, 11 Mar 2017 11:23:50 GMT): conroydave (Sat, 11 Mar 2017 11:27:51 GMT): dselman (Sat, 11 Mar 2017 11:36:31 GMT): dselman (Sat, 11 Mar 2017 11:37:46 GMT): dselman (Sat, 11 Mar 2017 11:37:46 GMT): conroydave (Sat, 11 Mar 2017 11:40:06 GMT): xuanyue202 (Sat, 11 Mar 2017 14:17:14 GMT): stephane.mery (Sat, 11 Mar 2017 17:45:04 GMT): gokulkrishna (Sat, 11 Mar 2017 22:05:27 GMT): sachikoy (Sat, 11 Mar 2017 22:45:45 GMT): conroydave (Sun, 12 Mar 2017 00:14:56 GMT): sachikoy (Sun, 12 Mar 2017 01:42:55 GMT): sachikoy (Sun, 12 Mar 2017 01:42:55 GMT): sachikoy (Sun, 12 Mar 2017 01:42:55 GMT): sachikoy (Sun, 12 Mar 2017 01:42:55 GMT): sachikoy (Sun, 12 Mar 2017 02:08:35 GMT): sachikoy (Sun, 12 Mar 2017 02:09:35 GMT): sachikoy (Sun, 12 Mar 2017 02:09:35 GMT): sachikoy (Sun, 12 Mar 2017 02:09:35 GMT): sachikoy (Sun, 12 Mar 2017 02:10:29 GMT): raman4984 (Sun, 12 Mar 2017 11:38:27 GMT): mohamoud.egal (Sun, 12 Mar 2017 23:28:14 GMT): sbrakev (Mon, 13 Mar 2017 03:28:40 GMT): sbrakev (Mon, 13 Mar 2017 03:28:43 GMT): sbrakev (Mon, 13 Mar 2017 03:28:47 GMT): sbrakev (Mon, 13 Mar 2017 03:29:57 GMT): sbrakev (Mon, 13 Mar 2017 03:44:59 GMT): sbrakev (Mon, 13 Mar 2017 03:45:03 GMT): sbrakev (Mon, 13 Mar 2017 03:45:31 GMT): sbrakev (Mon, 13 Mar 2017 03:45:41 GMT): sbrakev (Mon, 13 Mar 2017 03:46:20 GMT): pradeeppadmarajaiah (Mon, 13 Mar 2017 05:17:35 GMT): pradeeppadmarajaiah (Mon, 13 Mar 2017 05:26:47 GMT): pradeeppadmarajaiah (Mon, 13 Mar 2017 05:26:47 GMT): pradeeppadmarajaiah (Mon, 13 Mar 2017 07:04:25 GMT): pradeeppadmarajaiah (Mon, 13 Mar 2017 07:04:44 GMT): pradeeppadmarajaiah (Mon, 13 Mar 2017 07:04:51 GMT): pradeeppadmarajaiah (Mon, 13 Mar 2017 07:05:01 GMT): pradeeppadmarajaiah (Mon, 13 Mar 2017 07:05:08 GMT): AbhilekhSingh (Mon, 13 Mar 2017 07:05:24 GMT): AbhilekhSingh (Mon, 13 Mar 2017 07:05:32 GMT): Willson (Mon, 13 Mar 2017 07:19:17 GMT): dselman (Mon, 13 Mar 2017 08:02:17 GMT): annbnn (Mon, 13 Mar 2017 08:45:03 GMT): annbnn (Mon, 13 Mar 2017 08:46:41 GMT): annbnn (Mon, 13 Mar 2017 08:46:41 GMT): annbnn (Mon, 13 Mar 2017 08:46:49 GMT): sstone1 (Mon, 13 Mar 2017 08:54:56 GMT): bravera (Mon, 13 Mar 2017 08:56:23 GMT): sstone1 (Mon, 13 Mar 2017 08:59:26 GMT): sstone1 (Mon, 13 Mar 2017 09:00:05 GMT): sstone1 (Mon, 13 Mar 2017 09:00:24 GMT): sstone1 (Mon, 13 Mar 2017 09:00:48 GMT): sstone1 (Mon, 13 Mar 2017 09:01:57 GMT): bravera (Mon, 13 Mar 2017 09:21:02 GMT): sstone1 (Mon, 13 Mar 2017 09:21:13 GMT): bravera (Mon, 13 Mar 2017 09:24:46 GMT): sstone1 (Mon, 13 Mar 2017 09:38:56 GMT): uber.twin (Mon, 13 Mar 2017 10:11:01 GMT): uber.twin (Mon, 13 Mar 2017 10:19:54 GMT): annbnn (Mon, 13 Mar 2017 10:21:32 GMT): sstone1 (Mon, 13 Mar 2017 10:22:21 GMT): sstone1 (Mon, 13 Mar 2017 10:22:32 GMT): annbnn (Mon, 13 Mar 2017 10:22:38 GMT): annbnn (Mon, 13 Mar 2017 10:22:45 GMT): sstone1 (Mon, 13 Mar 2017 10:23:31 GMT): sstone1 (Mon, 13 Mar 2017 10:24:07 GMT): sstone1 (Mon, 13 Mar 2017 10:24:39 GMT): annbnn (Mon, 13 Mar 2017 10:25:24 GMT): annbnn (Mon, 13 Mar 2017 10:25:30 GMT): annbnn (Mon, 13 Mar 2017 10:38:46 GMT): annbnn (Mon, 13 Mar 2017 10:39:05 GMT): annbnn (Mon, 13 Mar 2017 10:39:07 GMT): sstone1 (Mon, 13 Mar 2017 10:40:08 GMT): annbnn (Mon, 13 Mar 2017 10:40:38 GMT): annbnn (Mon, 13 Mar 2017 10:40:54 GMT): sstone1 (Mon, 13 Mar 2017 11:21:43 GMT): sstone1 (Mon, 13 Mar 2017 11:22:18 GMT): annbnn (Mon, 13 Mar 2017 11:56:56 GMT): annbnn (Mon, 13 Mar 2017 11:57:08 GMT): annbnn (Mon, 13 Mar 2017 11:57:44 GMT): annbnn (Mon, 13 Mar 2017 12:07:18 GMT): annbnn (Mon, 13 Mar 2017 12:07:19 GMT): sstone1 (Mon, 13 Mar 2017 12:09:52 GMT): sstone1 (Mon, 13 Mar 2017 12:10:09 GMT): annbnn (Mon, 13 Mar 2017 12:11:24 GMT): annbnn (Mon, 13 Mar 2017 12:11:29 GMT): sstone1 (Mon, 13 Mar 2017 12:13:27 GMT): sstone1 (Mon, 13 Mar 2017 12:13:33 GMT): sstone1 (Mon, 13 Mar 2017 12:13:47 GMT): annbnn (Mon, 13 Mar 2017 12:14:49 GMT): sstone1 (Mon, 13 Mar 2017 12:15:06 GMT): annbnn (Mon, 13 Mar 2017 12:15:12 GMT): sstone1 (Mon, 13 Mar 2017 12:15:17 GMT): annbnn (Mon, 13 Mar 2017 12:16:01 GMT): annbnn (Mon, 13 Mar 2017 12:16:06 GMT): sstone1 (Mon, 13 Mar 2017 12:17:07 GMT): annbnn (Mon, 13 Mar 2017 12:17:44 GMT): annbnn (Mon, 13 Mar 2017 12:17:54 GMT): annbnn (Mon, 13 Mar 2017 12:17:59 GMT): sstone1 (Mon, 13 Mar 2017 12:18:05 GMT): sstone1 (Mon, 13 Mar 2017 12:18:31 GMT): mbwhite (Mon, 13 Mar 2017 12:20:34 GMT): annbnn (Mon, 13 Mar 2017 12:22:12 GMT): FenglianXu (Mon, 13 Mar 2017 12:22:27 GMT): FenglianXu (Mon, 13 Mar 2017 12:22:41 GMT): annbnn (Mon, 13 Mar 2017 12:23:29 GMT): annbnn (Mon, 13 Mar 2017 12:23:45 GMT): annbnn (Mon, 13 Mar 2017 12:23:49 GMT): annbnn (Mon, 13 Mar 2017 12:23:58 GMT): annbnn (Mon, 13 Mar 2017 12:27:20 GMT): FenglianXu (Mon, 13 Mar 2017 12:27:54 GMT): mbwhite (Mon, 13 Mar 2017 12:29:25 GMT): FenglianXu (Mon, 13 Mar 2017 12:30:49 GMT): annbnn (Mon, 13 Mar 2017 12:56:26 GMT): annbnn (Mon, 13 Mar 2017 12:57:05 GMT): mbwhite (Mon, 13 Mar 2017 12:57:26 GMT): pradeeppadmarajaiah (Mon, 13 Mar 2017 13:00:21 GMT): jdockter (Mon, 13 Mar 2017 14:03:30 GMT): jdockter (Mon, 13 Mar 2017 14:03:30 GMT): sstone1 (Mon, 13 Mar 2017 14:06:35 GMT): sstone1 (Mon, 13 Mar 2017 14:06:50 GMT): jdockter (Mon, 13 Mar 2017 14:13:26 GMT): bravera (Mon, 13 Mar 2017 14:16:30 GMT): bravera (Mon, 13 Mar 2017 14:17:15 GMT): jdockter (Mon, 13 Mar 2017 14:17:45 GMT): jdockter (Mon, 13 Mar 2017 14:17:47 GMT): jdockter (Mon, 13 Mar 2017 14:17:59 GMT): jdockter (Mon, 13 Mar 2017 14:20:55 GMT): mbwhite (Mon, 13 Mar 2017 14:30:12 GMT): mbwhite (Mon, 13 Mar 2017 14:30:32 GMT): bravera (Mon, 13 Mar 2017 14:30:35 GMT): jdockter (Mon, 13 Mar 2017 14:36:30 GMT): mbwhite (Mon, 13 Mar 2017 14:37:18 GMT): jdockter (Mon, 13 Mar 2017 14:39:55 GMT): jdockter (Mon, 13 Mar 2017 14:40:42 GMT): eric.wall (Mon, 13 Mar 2017 14:41:58 GMT): mbwhite (Mon, 13 Mar 2017 14:47:10 GMT): jdockter (Mon, 13 Mar 2017 14:48:09 GMT): mbwhite (Mon, 13 Mar 2017 14:49:10 GMT): jdockter (Mon, 13 Mar 2017 14:58:15 GMT): mbwhite (Mon, 13 Mar 2017 14:58:33 GMT): dselman (Mon, 13 Mar 2017 15:11:33 GMT): jwalt (Mon, 13 Mar 2017 15:12:03 GMT): dselman (Mon, 13 Mar 2017 15:12:09 GMT): dselman (Mon, 13 Mar 2017 15:13:32 GMT): dselman (Mon, 13 Mar 2017 15:13:32 GMT): jdockter (Mon, 13 Mar 2017 15:14:09 GMT): jdockter (Mon, 13 Mar 2017 15:17:22 GMT): jdockter (Mon, 13 Mar 2017 15:18:36 GMT): dselman (Mon, 13 Mar 2017 15:20:16 GMT): dselman (Mon, 13 Mar 2017 15:20:18 GMT): dselman (Mon, 13 Mar 2017 15:20:27 GMT): dselman (Mon, 13 Mar 2017 15:20:30 GMT): sstone1 (Mon, 13 Mar 2017 15:34:21 GMT): sstone1 (Mon, 13 Mar 2017 15:35:03 GMT): annbnn (Mon, 13 Mar 2017 15:48:28 GMT): annbnn (Mon, 13 Mar 2017 15:48:48 GMT): annbnn (Mon, 13 Mar 2017 15:48:58 GMT): annbnn (Mon, 13 Mar 2017 15:49:23 GMT): annbnn (Mon, 13 Mar 2017 15:50:49 GMT): sstone1 (Mon, 13 Mar 2017 15:55:44 GMT): annbnn (Mon, 13 Mar 2017 16:00:17 GMT): annbnn (Mon, 13 Mar 2017 16:00:20 GMT): annbnn (Mon, 13 Mar 2017 16:00:46 GMT): annbnn (Mon, 13 Mar 2017 16:00:54 GMT): sstone1 (Mon, 13 Mar 2017 16:24:26 GMT): antoniovassell (Mon, 13 Mar 2017 16:32:13 GMT): Suma (Mon, 13 Mar 2017 18:03:53 GMT): sstone1 (Mon, 13 Mar 2017 18:04:49 GMT): DennisM330 (Mon, 13 Mar 2017 21:39:23 GMT): dselman (Mon, 13 Mar 2017 21:42:01 GMT): DennisM330 (Mon, 13 Mar 2017 21:46:55 GMT): dselman (Mon, 13 Mar 2017 21:47:14 GMT): DennisM330 (Mon, 13 Mar 2017 21:48:39 GMT): hoffin (Tue, 14 Mar 2017 00:07:56 GMT): dselman (Tue, 14 Mar 2017 00:10:12 GMT): dselman (Tue, 14 Mar 2017 00:11:20 GMT): dselman (Tue, 14 Mar 2017 00:11:56 GMT): dselman (Tue, 14 Mar 2017 00:26:08 GMT): grapebaba (Tue, 14 Mar 2017 00:28:46 GMT): conroydave (Tue, 14 Mar 2017 06:02:20 GMT): annbnn (Tue, 14 Mar 2017 08:28:02 GMT): bravera (Tue, 14 Mar 2017 10:58:26 GMT): bravera (Tue, 14 Mar 2017 11:04:08 GMT): bravera (Tue, 14 Mar 2017 11:04:18 GMT): bravera (Tue, 14 Mar 2017 11:04:18 GMT): bravera (Tue, 14 Mar 2017 11:04:18 GMT): bravera (Tue, 14 Mar 2017 11:04:18 GMT): bravera (Tue, 14 Mar 2017 11:14:36 GMT): dselman (Tue, 14 Mar 2017 11:19:28 GMT): dselman (Tue, 14 Mar 2017 13:35:54 GMT): jdockter (Tue, 14 Mar 2017 14:16:25 GMT): jdockter (Tue, 14 Mar 2017 14:17:14 GMT): jdockter (Tue, 14 Mar 2017 14:17:29 GMT): bravera (Tue, 14 Mar 2017 14:17:30 GMT): bravera (Tue, 14 Mar 2017 14:17:51 GMT): andrea.turli (Tue, 14 Mar 2017 14:33:47 GMT): mikezaccardo (Tue, 14 Mar 2017 14:37:00 GMT): dselman (Tue, 14 Mar 2017 14:51:26 GMT): dselman (Tue, 14 Mar 2017 14:52:48 GMT): dselman (Tue, 14 Mar 2017 14:53:46 GMT): mikezaccardo (Tue, 14 Mar 2017 14:58:46 GMT): dselman (Tue, 14 Mar 2017 15:00:36 GMT): dselman (Tue, 14 Mar 2017 15:01:24 GMT): dselman (Tue, 14 Mar 2017 15:01:24 GMT): dselman (Tue, 14 Mar 2017 15:02:42 GMT): dselman (Tue, 14 Mar 2017 15:02:47 GMT): andrea.turli (Tue, 14 Mar 2017 15:17:33 GMT): klorenz (Tue, 14 Mar 2017 15:35:14 GMT): sstone1 (Tue, 14 Mar 2017 15:54:30 GMT): dselman (Tue, 14 Mar 2017 15:58:28 GMT): andrea.turli (Tue, 14 Mar 2017 16:19:07 GMT): DennisM330 (Tue, 14 Mar 2017 16:25:02 GMT): jdockter (Tue, 14 Mar 2017 16:26:48 GMT): dselman (Tue, 14 Mar 2017 16:38:25 GMT): dselman (Tue, 14 Mar 2017 16:39:43 GMT): jdockter (Tue, 14 Mar 2017 16:40:10 GMT): dselman (Tue, 14 Mar 2017 16:46:20 GMT): dselman (Tue, 14 Mar 2017 16:46:49 GMT): mikezaccardo (Tue, 14 Mar 2017 16:48:48 GMT): dselman (Tue, 14 Mar 2017 16:48:50 GMT): dselman (Tue, 14 Mar 2017 16:49:10 GMT): jdockter (Tue, 14 Mar 2017 16:51:07 GMT): dselman (Tue, 14 Mar 2017 16:51:42 GMT): dselman (Tue, 14 Mar 2017 16:52:06 GMT): dselman (Tue, 14 Mar 2017 16:52:58 GMT): sbrakev (Tue, 14 Mar 2017 16:53:01 GMT): dselman (Tue, 14 Mar 2017 16:53:17 GMT): jdockter (Tue, 14 Mar 2017 16:55:38 GMT): Jakeeyturner (Tue, 14 Mar 2017 16:56:52 GMT): gauthampamu (Tue, 14 Mar 2017 16:58:00 GMT): gauthampamu (Tue, 14 Mar 2017 16:58:31 GMT): sbrakev (Tue, 14 Mar 2017 16:58:43 GMT): sbrakev (Tue, 14 Mar 2017 16:59:38 GMT): gauthampamu (Tue, 14 Mar 2017 17:00:55 GMT): icordoba (Tue, 14 Mar 2017 17:25:10 GMT): dselman (Tue, 14 Mar 2017 17:35:57 GMT): dselman (Tue, 14 Mar 2017 17:37:01 GMT): gauthampamu (Tue, 14 Mar 2017 17:37:02 GMT): dselman (Tue, 14 Mar 2017 17:38:20 GMT): gauthampamu (Tue, 14 Mar 2017 17:44:10 GMT): gauthampamu (Tue, 14 Mar 2017 17:44:10 GMT): dselman (Tue, 14 Mar 2017 21:00:44 GMT): gauthampamu (Tue, 14 Mar 2017 21:44:00 GMT): gauthampamu (Tue, 14 Mar 2017 21:44:01 GMT): gauthampamu (Tue, 14 Mar 2017 21:45:03 GMT): duncanjw (Tue, 14 Mar 2017 22:05:15 GMT): duncanjw (Tue, 14 Mar 2017 22:32:33 GMT): duncanjw (Tue, 14 Mar 2017 22:32:38 GMT): davidkel (Tue, 14 Mar 2017 23:12:38 GMT): davidkel (Tue, 14 Mar 2017 23:12:38 GMT): shamckm (Wed, 15 Mar 2017 02:09:13 GMT): WillTran (Wed, 15 Mar 2017 02:40:22 GMT): mikezaccardo (Wed, 15 Mar 2017 03:28:57 GMT): mikezaccardo (Wed, 15 Mar 2017 07:39:23 GMT): georgeormrod@gmail.com (Wed, 15 Mar 2017 07:58:34 GMT): georgeormrod@gmail.com (Wed, 15 Mar 2017 07:59:47 GMT): georgeormrod@gmail.com (Wed, 15 Mar 2017 08:00:24 GMT): georgeormrod@gmail.com (Wed, 15 Mar 2017 08:00:28 GMT): georgeormrod@gmail.com (Wed, 15 Mar 2017 08:01:06 GMT): sstone1 (Wed, 15 Mar 2017 08:38:19 GMT): sstone1 (Wed, 15 Mar 2017 08:40:21 GMT): davidkel (Wed, 15 Mar 2017 08:42:11 GMT): davidkel (Wed, 15 Mar 2017 08:42:11 GMT): davidkel (Wed, 15 Mar 2017 08:42:11 GMT): georgeormrod@gmail.com (Wed, 15 Mar 2017 08:58:37 GMT): Jakeeyturner (Wed, 15 Mar 2017 09:01:35 GMT): mychewcents (Wed, 15 Mar 2017 12:30:59 GMT): balashevich (Wed, 15 Mar 2017 12:33:06 GMT): sbrakev (Wed, 15 Mar 2017 13:39:16 GMT): sstone1 (Wed, 15 Mar 2017 13:44:08 GMT): sbrakev (Wed, 15 Mar 2017 14:17:01 GMT): sbrakev (Wed, 15 Mar 2017 14:17:18 GMT): sbrakev (Wed, 15 Mar 2017 14:40:14 GMT): chrispoole (Wed, 15 Mar 2017 15:11:47 GMT): andrea.turli (Wed, 15 Mar 2017 15:24:50 GMT): klorenz (Wed, 15 Mar 2017 15:29:02 GMT): sstone1 (Wed, 15 Mar 2017 15:29:44 GMT): dselman (Wed, 15 Mar 2017 15:37:32 GMT): dselman (Wed, 15 Mar 2017 15:37:36 GMT): dselman (Wed, 15 Mar 2017 15:38:03 GMT): andrea.turli (Wed, 15 Mar 2017 15:38:15 GMT): andrea.turli (Wed, 15 Mar 2017 15:38:55 GMT): andrea.turli (Wed, 15 Mar 2017 15:39:17 GMT): andrea.turli (Wed, 15 Mar 2017 15:40:04 GMT): andrea.turli (Wed, 15 Mar 2017 15:40:34 GMT): dselman (Wed, 15 Mar 2017 15:41:38 GMT): dselman (Wed, 15 Mar 2017 15:42:13 GMT): andrea.turli (Wed, 15 Mar 2017 15:43:45 GMT): dselman (Wed, 15 Mar 2017 15:48:46 GMT): icordoba (Wed, 15 Mar 2017 17:44:00 GMT): icordoba (Wed, 15 Mar 2017 17:44:01 GMT): icordoba (Wed, 15 Mar 2017 17:44:37 GMT): dselman (Wed, 15 Mar 2017 17:45:01 GMT): icordoba (Wed, 15 Mar 2017 17:45:04 GMT): icordoba (Wed, 15 Mar 2017 17:45:11 GMT): dselman (Wed, 15 Mar 2017 17:45:31 GMT): dselman (Wed, 15 Mar 2017 17:45:36 GMT): icordoba (Wed, 15 Mar 2017 17:45:56 GMT): dselman (Wed, 15 Mar 2017 17:46:19 GMT): icordoba (Wed, 15 Mar 2017 17:46:36 GMT): icordoba (Wed, 15 Mar 2017 17:46:54 GMT): dselman (Wed, 15 Mar 2017 17:47:23 GMT): icordoba (Wed, 15 Mar 2017 17:49:15 GMT): dselman (Wed, 15 Mar 2017 17:49:34 GMT): dselman (Wed, 15 Mar 2017 17:50:45 GMT): dselman (Wed, 15 Mar 2017 17:50:54 GMT): icordoba (Wed, 15 Mar 2017 17:51:01 GMT): icordoba (Wed, 15 Mar 2017 17:51:16 GMT): dselman (Wed, 15 Mar 2017 17:52:47 GMT): dselman (Wed, 15 Mar 2017 17:52:47 GMT): dselman (Wed, 15 Mar 2017 17:53:13 GMT): icordoba (Wed, 15 Mar 2017 17:53:52 GMT): dselman (Wed, 15 Mar 2017 17:54:07 GMT): dselman (Wed, 15 Mar 2017 17:54:20 GMT): icordoba (Wed, 15 Mar 2017 17:57:41 GMT): dselman (Wed, 15 Mar 2017 17:59:08 GMT): dselman (Wed, 15 Mar 2017 18:00:11 GMT): icordoba (Wed, 15 Mar 2017 18:00:21 GMT): dselman (Wed, 15 Mar 2017 18:02:54 GMT): silliman (Wed, 15 Mar 2017 19:19:15 GMT): davidkel (Wed, 15 Mar 2017 19:30:22 GMT): davidkel (Wed, 15 Mar 2017 19:30:22 GMT): silliman (Wed, 15 Mar 2017 19:36:21 GMT): davidkel (Wed, 15 Mar 2017 19:39:09 GMT): silliman (Wed, 15 Mar 2017 19:40:16 GMT): davidkel (Wed, 15 Mar 2017 19:40:46 GMT): silliman (Wed, 15 Mar 2017 19:43:35 GMT): davidkel (Wed, 15 Mar 2017 19:45:43 GMT): silliman (Wed, 15 Mar 2017 19:48:41 GMT): davidkel (Wed, 15 Mar 2017 19:50:11 GMT): silliman (Wed, 15 Mar 2017 20:07:35 GMT): silliman (Wed, 15 Mar 2017 20:46:53 GMT): davidkel (Wed, 15 Mar 2017 21:45:46 GMT): silliman (Wed, 15 Mar 2017 22:38:29 GMT): shibo.lin (Thu, 16 Mar 2017 00:22:08 GMT): yedendra (Thu, 16 Mar 2017 00:41:34 GMT): sameerreddy13 (Thu, 16 Mar 2017 01:35:59 GMT): sachikoy (Thu, 16 Mar 2017 05:45:27 GMT): sstone1 (Thu, 16 Mar 2017 08:21:04 GMT): timblankers (Thu, 16 Mar 2017 08:21:37 GMT): sstone1 (Thu, 16 Mar 2017 08:23:25 GMT): paul.sitoh (Thu, 16 Mar 2017 10:37:50 GMT): Jakeeyturner (Thu, 16 Mar 2017 10:45:31 GMT): Jakeeyturner (Thu, 16 Mar 2017 10:50:12 GMT): sstone1 (Thu, 16 Mar 2017 11:25:00 GMT): paul.sitoh (Thu, 16 Mar 2017 11:32:35 GMT): paul.sitoh (Thu, 16 Mar 2017 11:33:22 GMT): paul.sitoh (Thu, 16 Mar 2017 11:33:47 GMT): Jakeeyturner (Thu, 16 Mar 2017 11:34:30 GMT): paul.sitoh (Thu, 16 Mar 2017 11:34:50 GMT): sstone1 (Thu, 16 Mar 2017 11:42:02 GMT): sstone1 (Thu, 16 Mar 2017 11:43:20 GMT): sstone1 (Thu, 16 Mar 2017 11:44:01 GMT): Jakeeyturner (Thu, 16 Mar 2017 11:46:39 GMT): paul.sitoh (Thu, 16 Mar 2017 11:49:32 GMT): paul.sitoh (Thu, 16 Mar 2017 11:49:55 GMT): paul.sitoh (Thu, 16 Mar 2017 11:49:55 GMT): paul.sitoh (Thu, 16 Mar 2017 11:52:05 GMT): paul.sitoh (Thu, 16 Mar 2017 11:52:05 GMT): sstone1 (Thu, 16 Mar 2017 11:52:16 GMT): paul.sitoh (Thu, 16 Mar 2017 11:52:23 GMT): paul.sitoh (Thu, 16 Mar 2017 12:11:33 GMT): paul.sitoh (Thu, 16 Mar 2017 12:13:47 GMT): sstone1 (Thu, 16 Mar 2017 12:15:18 GMT): paul.sitoh (Thu, 16 Mar 2017 12:16:47 GMT): paul.sitoh (Thu, 16 Mar 2017 12:17:00 GMT): paul.sitoh (Thu, 16 Mar 2017 12:20:50 GMT): paul.sitoh (Thu, 16 Mar 2017 12:20:50 GMT): paul.sitoh (Thu, 16 Mar 2017 12:20:50 GMT): paul.sitoh (Thu, 16 Mar 2017 12:21:36 GMT): paul.sitoh (Thu, 16 Mar 2017 12:39:18 GMT): paul.sitoh (Thu, 16 Mar 2017 12:39:18 GMT): sstone1 (Thu, 16 Mar 2017 12:53:24 GMT): sstone1 (Thu, 16 Mar 2017 12:53:24 GMT): paul.sitoh (Thu, 16 Mar 2017 12:59:08 GMT): paul.sitoh (Thu, 16 Mar 2017 12:59:51 GMT): dselman (Thu, 16 Mar 2017 13:01:49 GMT): dselman (Thu, 16 Mar 2017 13:02:05 GMT): dselman (Thu, 16 Mar 2017 13:03:36 GMT): dselman (Thu, 16 Mar 2017 13:03:49 GMT): dselman (Thu, 16 Mar 2017 13:04:42 GMT): paul.sitoh (Thu, 16 Mar 2017 13:29:11 GMT): paul.sitoh (Thu, 16 Mar 2017 13:29:11 GMT): dselman (Thu, 16 Mar 2017 13:51:17 GMT): Vadim (Thu, 16 Mar 2017 13:51:33 GMT): dselman (Thu, 16 Mar 2017 13:51:47 GMT): dselman (Thu, 16 Mar 2017 13:52:10 GMT): paul.sitoh (Thu, 16 Mar 2017 14:09:28 GMT): paul.sitoh (Thu, 16 Mar 2017 14:09:50 GMT): jdockter (Thu, 16 Mar 2017 14:26:51 GMT): pascallouis (Thu, 16 Mar 2017 14:50:25 GMT): pascallouis (Thu, 16 Mar 2017 14:51:05 GMT): pascallouis (Thu, 16 Mar 2017 14:51:23 GMT): pascallouis (Thu, 16 Mar 2017 14:51:45 GMT): pascallouis (Thu, 16 Mar 2017 14:52:46 GMT): Jakeeyturner (Thu, 16 Mar 2017 14:54:10 GMT): Jakeeyturner (Thu, 16 Mar 2017 14:54:36 GMT): Jakeeyturner (Thu, 16 Mar 2017 14:54:49 GMT): pascallouis (Thu, 16 Mar 2017 14:54:52 GMT): pascallouis (Thu, 16 Mar 2017 14:56:26 GMT): pascallouis (Thu, 16 Mar 2017 14:56:26 GMT): Jakeeyturner (Thu, 16 Mar 2017 14:57:49 GMT): Jakeeyturner (Thu, 16 Mar 2017 14:58:04 GMT): BrijeshJ (Thu, 16 Mar 2017 14:59:42 GMT): pascallouis (Thu, 16 Mar 2017 15:00:25 GMT): pascallouis (Thu, 16 Mar 2017 15:00:46 GMT): Jakeeyturner (Thu, 16 Mar 2017 15:00:58 GMT): pascallouis (Thu, 16 Mar 2017 15:01:15 GMT): Jakeeyturner (Thu, 16 Mar 2017 15:06:58 GMT): jworthington (Thu, 16 Mar 2017 15:07:35 GMT): atomkinson (Thu, 16 Mar 2017 15:08:32 GMT): jdockter (Thu, 16 Mar 2017 15:09:08 GMT): jworthington (Thu, 16 Mar 2017 15:09:23 GMT): atomkinson (Thu, 16 Mar 2017 15:09:27 GMT): atomkinson (Thu, 16 Mar 2017 15:09:45 GMT): sstone1 (Thu, 16 Mar 2017 15:09:59 GMT): sstone1 (Thu, 16 Mar 2017 15:10:03 GMT): atomkinson (Thu, 16 Mar 2017 15:10:16 GMT): BrijeshJ (Thu, 16 Mar 2017 15:10:22 GMT): BrijeshJ (Thu, 16 Mar 2017 15:10:39 GMT): sstone1 (Thu, 16 Mar 2017 15:10:43 GMT): BrijeshJ (Thu, 16 Mar 2017 15:11:19 GMT): jworthington (Thu, 16 Mar 2017 15:11:40 GMT): pascallouis (Thu, 16 Mar 2017 15:12:04 GMT): davidkel (Thu, 16 Mar 2017 15:20:13 GMT): Jakeeyturner (Thu, 16 Mar 2017 15:20:51 GMT): Jakeeyturner (Thu, 16 Mar 2017 15:20:51 GMT): pascallouis (Thu, 16 Mar 2017 15:21:33 GMT): pascallouis (Thu, 16 Mar 2017 15:21:43 GMT): pascallouis (Thu, 16 Mar 2017 15:22:15 GMT): Jakeeyturner (Thu, 16 Mar 2017 15:23:24 GMT): Jakeeyturner (Thu, 16 Mar 2017 15:24:09 GMT): pascallouis (Thu, 16 Mar 2017 15:26:06 GMT): pascallouis (Thu, 16 Mar 2017 15:27:02 GMT): pascallouis (Thu, 16 Mar 2017 15:46:13 GMT): paul.sitoh (Thu, 16 Mar 2017 15:46:47 GMT): Jakeeyturner (Thu, 16 Mar 2017 15:50:37 GMT): pascallouis (Thu, 16 Mar 2017 15:52:21 GMT): Jakeeyturner (Thu, 16 Mar 2017 15:52:36 GMT): Jakeeyturner (Thu, 16 Mar 2017 15:53:39 GMT): sstone1 (Thu, 16 Mar 2017 15:57:35 GMT): tobiashunter (Thu, 16 Mar 2017 15:57:47 GMT): sstone1 (Thu, 16 Mar 2017 15:59:16 GMT): sstone1 (Thu, 16 Mar 2017 16:30:49 GMT): atomkinson (Thu, 16 Mar 2017 16:36:45 GMT): Jakeeyturner (Thu, 16 Mar 2017 16:40:30 GMT): atomkinson (Thu, 16 Mar 2017 16:41:06 GMT): Jakeeyturner (Thu, 16 Mar 2017 16:43:08 GMT): EdMoffatt (Thu, 16 Mar 2017 16:45:43 GMT): VipinB (Thu, 16 Mar 2017 16:45:47 GMT): sstone1 (Thu, 16 Mar 2017 16:49:16 GMT): atomkinson (Thu, 16 Mar 2017 16:51:16 GMT): sstone1 (Thu, 16 Mar 2017 16:54:49 GMT): VipinB (Thu, 16 Mar 2017 16:58:56 GMT): VipinB (Thu, 16 Mar 2017 16:59:38 GMT): VipinB (Thu, 16 Mar 2017 17:00:27 GMT): VipinB (Thu, 16 Mar 2017 17:01:48 GMT): sstone1 (Thu, 16 Mar 2017 18:03:52 GMT): sanjay-saxena (Thu, 16 Mar 2017 18:31:50 GMT): VipinB (Thu, 16 Mar 2017 19:02:59 GMT): VipinB (Thu, 16 Mar 2017 19:03:25 GMT): sstone1 (Thu, 16 Mar 2017 19:55:40 GMT): Liqui (Thu, 16 Mar 2017 20:18:41 GMT): sachikoy (Thu, 16 Mar 2017 22:48:24 GMT): RahulBagaria (Fri, 17 Mar 2017 03:57:31 GMT): GeorgSchultz (Fri, 17 Mar 2017 08:37:20 GMT): sstone1 (Fri, 17 Mar 2017 08:41:58 GMT): sstone1 (Fri, 17 Mar 2017 08:42:16 GMT): GeorgSchultz (Fri, 17 Mar 2017 08:43:23 GMT): MartinMateev (Fri, 17 Mar 2017 10:29:49 GMT): sstone1 (Fri, 17 Mar 2017 11:00:29 GMT): paul.sitoh (Fri, 17 Mar 2017 11:49:02 GMT): paul.sitoh (Fri, 17 Mar 2017 11:49:30 GMT): paul.sitoh (Fri, 17 Mar 2017 11:49:30 GMT): annbnn (Fri, 17 Mar 2017 11:49:35 GMT): dselman (Fri, 17 Mar 2017 12:01:24 GMT): dselman (Fri, 17 Mar 2017 12:02:10 GMT): mbwhite (Fri, 17 Mar 2017 12:03:48 GMT): paul.sitoh (Fri, 17 Mar 2017 12:39:06 GMT): paul.sitoh (Fri, 17 Mar 2017 12:41:38 GMT): paul.sitoh (Fri, 17 Mar 2017 12:41:38 GMT): paul.sitoh (Fri, 17 Mar 2017 12:41:38 GMT): dselman (Fri, 17 Mar 2017 13:22:13 GMT): dselman (Fri, 17 Mar 2017 13:23:59 GMT): jdockter (Fri, 17 Mar 2017 13:40:33 GMT): GeorgSchultz (Fri, 17 Mar 2017 13:40:44 GMT): paul.sitoh (Fri, 17 Mar 2017 13:43:39 GMT): paul.sitoh (Fri, 17 Mar 2017 13:43:39 GMT): paul.sitoh (Fri, 17 Mar 2017 13:43:39 GMT): paul.sitoh (Fri, 17 Mar 2017 13:43:39 GMT): paul.sitoh (Fri, 17 Mar 2017 13:43:39 GMT): paul.sitoh (Fri, 17 Mar 2017 13:43:39 GMT): paul.sitoh (Fri, 17 Mar 2017 13:43:39 GMT): paul.sitoh (Fri, 17 Mar 2017 13:44:36 GMT): paul.sitoh (Fri, 17 Mar 2017 13:44:36 GMT): paul.sitoh (Fri, 17 Mar 2017 13:44:36 GMT): paul.sitoh (Fri, 17 Mar 2017 13:44:36 GMT): paul.sitoh (Fri, 17 Mar 2017 13:46:07 GMT): paul.sitoh (Fri, 17 Mar 2017 13:46:07 GMT): paul.sitoh (Fri, 17 Mar 2017 13:47:36 GMT): paul.sitoh (Fri, 17 Mar 2017 13:50:33 GMT): paul.sitoh (Fri, 17 Mar 2017 13:50:33 GMT): paul.sitoh (Fri, 17 Mar 2017 13:50:33 GMT): VipinB (Fri, 17 Mar 2017 14:01:07 GMT): VipinB (Fri, 17 Mar 2017 14:02:22 GMT): paul.sitoh (Fri, 17 Mar 2017 14:24:08 GMT): sstone1 (Fri, 17 Mar 2017 14:47:29 GMT): annbnn (Fri, 17 Mar 2017 15:04:09 GMT): dselman (Fri, 17 Mar 2017 18:53:35 GMT): dselman (Fri, 17 Mar 2017 18:55:16 GMT): dselman (Fri, 17 Mar 2017 18:55:16 GMT): dselman (Fri, 17 Mar 2017 18:57:17 GMT): dselman (Fri, 17 Mar 2017 18:59:06 GMT): dselman (Fri, 17 Mar 2017 18:59:31 GMT): GeorgSchultz (Fri, 17 Mar 2017 19:02:20 GMT): GeorgSchultz (Fri, 17 Mar 2017 19:02:29 GMT): icordoba (Fri, 17 Mar 2017 22:58:29 GMT): abutler (Sat, 18 Mar 2017 18:51:27 GMT): icordoba (Sun, 19 Mar 2017 18:22:08 GMT): icordoba (Sun, 19 Mar 2017 18:22:35 GMT): dselman (Sun, 19 Mar 2017 18:30:10 GMT): dselman (Sun, 19 Mar 2017 18:30:10 GMT): dselman (Sun, 19 Mar 2017 18:31:19 GMT): icordoba (Sun, 19 Mar 2017 18:32:42 GMT): dselman (Sun, 19 Mar 2017 18:33:25 GMT): dselman (Sun, 19 Mar 2017 18:34:41 GMT): icordoba (Sun, 19 Mar 2017 18:34:58 GMT): icordoba (Sun, 19 Mar 2017 20:48:26 GMT): ZionTam (Sun, 19 Mar 2017 23:57:17 GMT): sanjay-saxena (Mon, 20 Mar 2017 02:04:57 GMT): shanlusun (Mon, 20 Mar 2017 03:45:33 GMT): shanlusun (Mon, 20 Mar 2017 03:47:08 GMT): sanjay-saxena (Mon, 20 Mar 2017 05:56:29 GMT): sanjay-saxena (Mon, 20 Mar 2017 05:56:29 GMT): sanjay-saxena (Mon, 20 Mar 2017 05:56:29 GMT): sanjay-saxena (Mon, 20 Mar 2017 05:56:29 GMT): sanjay-saxena (Mon, 20 Mar 2017 05:56:29 GMT): hycind (Mon, 20 Mar 2017 06:32:33 GMT): shanlusun (Mon, 20 Mar 2017 06:42:47 GMT): Xiao (Mon, 20 Mar 2017 07:12:56 GMT): davidkel (Mon, 20 Mar 2017 08:53:11 GMT): shanlusun (Mon, 20 Mar 2017 08:57:20 GMT): shanlusun (Mon, 20 Mar 2017 08:59:00 GMT): karthikworks (Mon, 20 Mar 2017 09:46:05 GMT): davidkel (Mon, 20 Mar 2017 09:55:03 GMT): dorrakhribi (Mon, 20 Mar 2017 10:21:45 GMT): davidkel (Mon, 20 Mar 2017 10:27:55 GMT): GeorgSchultz (Mon, 20 Mar 2017 10:42:46 GMT): uber.twin (Mon, 20 Mar 2017 10:47:19 GMT): shanlusun (Mon, 20 Mar 2017 10:47:43 GMT): Jakeeyturner (Mon, 20 Mar 2017 10:48:52 GMT): uber.twin (Mon, 20 Mar 2017 10:53:02 GMT): jdockter (Mon, 20 Mar 2017 10:53:32 GMT): Jakeeyturner (Mon, 20 Mar 2017 11:09:21 GMT): zlliu (Mon, 20 Mar 2017 11:47:24 GMT): uber.twin (Mon, 20 Mar 2017 15:26:01 GMT): uber.twin (Mon, 20 Mar 2017 15:26:05 GMT): uber.twin (Mon, 20 Mar 2017 15:27:07 GMT): uber.twin (Mon, 20 Mar 2017 15:28:29 GMT): dselman (Mon, 20 Mar 2017 15:28:31 GMT): uber.twin (Mon, 20 Mar 2017 15:28:50 GMT): dselman (Mon, 20 Mar 2017 15:29:43 GMT): uber.twin (Mon, 20 Mar 2017 15:30:04 GMT): uber.twin (Mon, 20 Mar 2017 15:30:29 GMT): dselman (Mon, 20 Mar 2017 15:30:38 GMT): uber.twin (Mon, 20 Mar 2017 15:30:54 GMT): dselman (Mon, 20 Mar 2017 15:31:04 GMT): uber.twin (Mon, 20 Mar 2017 15:38:41 GMT): jeffgarratt (Mon, 20 Mar 2017 15:58:16 GMT): uber.twin (Mon, 20 Mar 2017 16:04:38 GMT): dselman (Mon, 20 Mar 2017 16:20:13 GMT): uber.twin (Mon, 20 Mar 2017 16:22:51 GMT): paul.sitoh (Mon, 20 Mar 2017 17:56:49 GMT): paul.sitoh (Mon, 20 Mar 2017 17:56:49 GMT): bloxhead (Mon, 20 Mar 2017 18:27:21 GMT): bloxhead (Mon, 20 Mar 2017 18:28:33 GMT): bloxhead (Mon, 20 Mar 2017 18:29:51 GMT): bloxhead (Mon, 20 Mar 2017 18:29:51 GMT): bloxhead (Mon, 20 Mar 2017 18:31:00 GMT): bloxhead (Mon, 20 Mar 2017 18:31:00 GMT): LucianStroie (Mon, 20 Mar 2017 18:36:40 GMT): jdockter (Mon, 20 Mar 2017 19:10:19 GMT): bloxhead (Mon, 20 Mar 2017 20:20:58 GMT): bloxhead (Mon, 20 Mar 2017 20:21:23 GMT): sanjay-saxena (Mon, 20 Mar 2017 20:52:35 GMT): sanjay-saxena (Mon, 20 Mar 2017 20:52:35 GMT): bloxhead (Mon, 20 Mar 2017 21:04:21 GMT): bloxhead (Mon, 20 Mar 2017 21:04:21 GMT): sanjay-saxena (Mon, 20 Mar 2017 21:09:21 GMT): icordoba (Tue, 21 Mar 2017 00:01:45 GMT): xiangyw (Tue, 21 Mar 2017 07:14:49 GMT): annbnn (Tue, 21 Mar 2017 10:17:12 GMT): annbnn (Tue, 21 Mar 2017 10:17:36 GMT): davidkel (Tue, 21 Mar 2017 10:38:17 GMT): annbnn (Tue, 21 Mar 2017 10:40:46 GMT): david.stark (Tue, 21 Mar 2017 10:40:46 GMT): davidkel (Tue, 21 Mar 2017 10:49:45 GMT): davidkel (Tue, 21 Mar 2017 10:49:45 GMT): pd93 (Tue, 21 Mar 2017 11:42:57 GMT): uber.twin (Tue, 21 Mar 2017 11:47:37 GMT): uber.twin (Tue, 21 Mar 2017 11:47:43 GMT): bloxhead (Tue, 21 Mar 2017 11:57:44 GMT): bloxhead (Tue, 21 Mar 2017 11:58:44 GMT): bloxhead (Tue, 21 Mar 2017 11:58:59 GMT): bloxhead (Tue, 21 Mar 2017 11:58:59 GMT): bloxhead (Tue, 21 Mar 2017 11:58:59 GMT): bloxhead (Tue, 21 Mar 2017 11:58:59 GMT): bloxhead (Tue, 21 Mar 2017 12:02:43 GMT): elisabetta (Tue, 21 Mar 2017 12:20:39 GMT): jdockter (Tue, 21 Mar 2017 12:23:50 GMT): davidkel (Tue, 21 Mar 2017 12:27:04 GMT): elisabetta (Tue, 21 Mar 2017 12:30:24 GMT): davidkel (Tue, 21 Mar 2017 12:45:54 GMT): jdockter (Tue, 21 Mar 2017 13:00:07 GMT): pd93 (Tue, 21 Mar 2017 13:14:21 GMT): elisabetta (Tue, 21 Mar 2017 13:47:21 GMT): mbwhite (Tue, 21 Mar 2017 13:51:44 GMT): mbwhite (Tue, 21 Mar 2017 13:52:12 GMT): elisabetta (Tue, 21 Mar 2017 13:53:41 GMT): elisabetta (Tue, 21 Mar 2017 13:53:41 GMT): elisabetta (Tue, 21 Mar 2017 13:56:00 GMT): mbwhite (Tue, 21 Mar 2017 13:59:03 GMT): mbwhite (Tue, 21 Mar 2017 13:59:15 GMT): mbwhite (Tue, 21 Mar 2017 13:59:47 GMT): mbwhite (Tue, 21 Mar 2017 14:00:11 GMT): mbwhite (Tue, 21 Mar 2017 14:22:16 GMT): elisabetta (Tue, 21 Mar 2017 15:11:25 GMT): elisabetta (Tue, 21 Mar 2017 15:12:12 GMT): davidkel (Tue, 21 Mar 2017 15:19:07 GMT): elisabetta (Tue, 21 Mar 2017 15:48:59 GMT): davidkel (Tue, 21 Mar 2017 15:59:48 GMT): elisabetta (Tue, 21 Mar 2017 16:05:03 GMT): davidkel (Tue, 21 Mar 2017 16:09:50 GMT): himansri (Tue, 21 Mar 2017 16:11:47 GMT): Jakeeyturner (Tue, 21 Mar 2017 16:12:48 GMT): Jakeeyturner (Tue, 21 Mar 2017 16:13:15 GMT): georgeormrod@gmail.com (Tue, 21 Mar 2017 16:29:24 GMT): mbwhite (Tue, 21 Mar 2017 16:30:37 GMT): jdockter (Tue, 21 Mar 2017 17:01:34 GMT): jdockter (Tue, 21 Mar 2017 17:01:34 GMT): annbnn (Tue, 21 Mar 2017 17:12:42 GMT): annbnn (Tue, 21 Mar 2017 17:12:55 GMT): annbnn (Tue, 21 Mar 2017 17:13:12 GMT): annbnn (Tue, 21 Mar 2017 17:14:07 GMT): jdockter (Tue, 21 Mar 2017 17:16:21 GMT): cassolato (Tue, 21 Mar 2017 17:42:57 GMT): davidkel (Tue, 21 Mar 2017 20:05:28 GMT): davidkel (Tue, 21 Mar 2017 20:07:18 GMT): davidkel (Tue, 21 Mar 2017 20:08:44 GMT): annbnn (Tue, 21 Mar 2017 20:54:43 GMT): bravera (Wed, 22 Mar 2017 10:59:58 GMT): elisabetta (Wed, 22 Mar 2017 11:07:32 GMT): davidkel (Wed, 22 Mar 2017 11:28:49 GMT): davidkel (Wed, 22 Mar 2017 11:31:36 GMT): bravera (Wed, 22 Mar 2017 11:38:39 GMT): elisabetta (Wed, 22 Mar 2017 11:42:21 GMT): elisabetta (Wed, 22 Mar 2017 11:45:40 GMT): elisabetta (Wed, 22 Mar 2017 11:47:35 GMT): uber.twin (Wed, 22 Mar 2017 12:58:02 GMT): uber.twin (Wed, 22 Mar 2017 13:00:05 GMT): uber.twin (Wed, 22 Mar 2017 13:00:47 GMT): davidkel (Wed, 22 Mar 2017 13:08:43 GMT): elisabetta (Wed, 22 Mar 2017 13:09:18 GMT): elisabetta (Wed, 22 Mar 2017 13:10:56 GMT): davidkel (Wed, 22 Mar 2017 13:11:38 GMT): elisabetta (Wed, 22 Mar 2017 13:12:52 GMT): elisabetta (Wed, 22 Mar 2017 13:13:15 GMT): davidkel (Wed, 22 Mar 2017 13:16:50 GMT): elisabetta (Wed, 22 Mar 2017 13:22:34 GMT): agiledeveloper (Wed, 22 Mar 2017 15:48:19 GMT): tlplickebaum (Wed, 22 Mar 2017 15:50:25 GMT): tlplickebaum (Wed, 22 Mar 2017 15:51:06 GMT): tlplickebaum (Wed, 22 Mar 2017 15:51:09 GMT): tlplickebaum (Wed, 22 Mar 2017 15:53:08 GMT): tlplickebaum (Wed, 22 Mar 2017 15:53:14 GMT): mbwhite (Wed, 22 Mar 2017 16:03:07 GMT): mbwhite (Wed, 22 Mar 2017 16:03:46 GMT): bonen (Wed, 22 Mar 2017 16:26:29 GMT): tlplickebaum (Wed, 22 Mar 2017 17:55:51 GMT): tlplickebaum (Wed, 22 Mar 2017 18:55:15 GMT): jdockter (Wed, 22 Mar 2017 19:51:02 GMT): SriramaSharma (Thu, 23 Mar 2017 00:55:13 GMT): neethualex (Thu, 23 Mar 2017 02:04:50 GMT): anik (Thu, 23 Mar 2017 07:46:49 GMT): mbwhite (Thu, 23 Mar 2017 09:48:18 GMT): xuzhao103389 (Thu, 23 Mar 2017 10:37:06 GMT): uber.twin (Thu, 23 Mar 2017 12:54:18 GMT): uber.twin (Thu, 23 Mar 2017 12:54:19 GMT): davidkel (Thu, 23 Mar 2017 13:07:52 GMT): uber.twin (Thu, 23 Mar 2017 13:09:45 GMT): uber.twin (Thu, 23 Mar 2017 13:14:36 GMT): uber.twin (Thu, 23 Mar 2017 13:14:40 GMT): ericmvaughn (Thu, 23 Mar 2017 13:15:54 GMT): ssaddem (Thu, 23 Mar 2017 13:30:43 GMT): bonen (Thu, 23 Mar 2017 13:55:34 GMT): bonen (Thu, 23 Mar 2017 13:58:01 GMT): bonen (Thu, 23 Mar 2017 14:15:19 GMT): bonen (Thu, 23 Mar 2017 14:16:04 GMT): davidkel (Thu, 23 Mar 2017 14:45:41 GMT): davidkel (Thu, 23 Mar 2017 14:45:41 GMT): bonen (Thu, 23 Mar 2017 14:52:30 GMT): bonen (Thu, 23 Mar 2017 14:52:31 GMT): uber.twin (Thu, 23 Mar 2017 15:07:02 GMT): davidkel (Thu, 23 Mar 2017 15:09:20 GMT): bonen (Thu, 23 Mar 2017 15:10:45 GMT): bonen (Thu, 23 Mar 2017 15:11:10 GMT): davidkel (Thu, 23 Mar 2017 15:11:57 GMT): davidkel (Thu, 23 Mar 2017 15:11:57 GMT): bonen (Thu, 23 Mar 2017 15:21:03 GMT): davidkel (Thu, 23 Mar 2017 15:21:52 GMT): bonen (Thu, 23 Mar 2017 15:26:17 GMT): uber.twin (Thu, 23 Mar 2017 15:27:21 GMT): ssaddem (Thu, 23 Mar 2017 15:47:37 GMT): ssaddem (Thu, 23 Mar 2017 15:47:44 GMT): ssaddem (Thu, 23 Mar 2017 15:48:34 GMT): ssaddem (Thu, 23 Mar 2017 15:48:39 GMT): sstone1 (Thu, 23 Mar 2017 15:51:12 GMT): sstone1 (Thu, 23 Mar 2017 15:51:14 GMT): ssaddem (Thu, 23 Mar 2017 15:52:49 GMT): dselman (Thu, 23 Mar 2017 15:54:45 GMT): bonen (Thu, 23 Mar 2017 16:03:48 GMT): bonen (Thu, 23 Mar 2017 16:04:02 GMT): jdockter (Thu, 23 Mar 2017 16:04:59 GMT): davidkel (Thu, 23 Mar 2017 16:17:42 GMT): bonen (Thu, 23 Mar 2017 16:33:30 GMT): tennenjl (Thu, 23 Mar 2017 16:58:01 GMT): tennenjl (Thu, 23 Mar 2017 17:00:22 GMT): sstone1 (Thu, 23 Mar 2017 17:06:59 GMT): sstone1 (Thu, 23 Mar 2017 17:07:08 GMT): tennenjl (Thu, 23 Mar 2017 17:45:55 GMT): sstone1 (Thu, 23 Mar 2017 17:49:15 GMT): tennenjl (Thu, 23 Mar 2017 17:50:41 GMT): sstone1 (Thu, 23 Mar 2017 18:18:42 GMT): sstone1 (Thu, 23 Mar 2017 18:21:07 GMT): sstone1 (Thu, 23 Mar 2017 18:22:23 GMT): atomkinson (Thu, 23 Mar 2017 18:24:57 GMT): gauthampamu (Thu, 23 Mar 2017 18:29:04 GMT): sstone1 (Thu, 23 Mar 2017 18:30:28 GMT): sstone1 (Thu, 23 Mar 2017 18:31:16 GMT): atomkinson (Thu, 23 Mar 2017 18:31:52 GMT): sstone1 (Thu, 23 Mar 2017 18:32:26 GMT): atomkinson (Thu, 23 Mar 2017 18:33:38 GMT): sstone1 (Thu, 23 Mar 2017 18:33:52 GMT): sstone1 (Thu, 23 Mar 2017 18:35:07 GMT): atomkinson (Thu, 23 Mar 2017 18:35:34 GMT): sstone1 (Thu, 23 Mar 2017 18:35:50 GMT): sstone1 (Thu, 23 Mar 2017 18:36:17 GMT): sstone1 (Thu, 23 Mar 2017 20:14:18 GMT): jvkatzman (Thu, 23 Mar 2017 23:04:51 GMT): jvkatzman (Thu, 23 Mar 2017 23:05:52 GMT): jvkatzman (Thu, 23 Mar 2017 23:05:59 GMT): sstone1 (Fri, 24 Mar 2017 08:21:59 GMT): uber.twin (Fri, 24 Mar 2017 09:00:32 GMT): sstone1 (Fri, 24 Mar 2017 09:09:53 GMT): uber.twin (Fri, 24 Mar 2017 09:14:57 GMT): uber.twin (Fri, 24 Mar 2017 09:15:39 GMT): uber.twin (Fri, 24 Mar 2017 09:16:12 GMT): uber.twin (Fri, 24 Mar 2017 09:16:57 GMT): sstone1 (Fri, 24 Mar 2017 09:19:44 GMT): uber.twin (Fri, 24 Mar 2017 09:21:34 GMT): uber.twin (Fri, 24 Mar 2017 09:22:39 GMT): uber.twin (Fri, 24 Mar 2017 09:22:51 GMT): uber.twin (Fri, 24 Mar 2017 09:23:26 GMT): uber.twin (Fri, 24 Mar 2017 09:24:34 GMT): sstone1 (Fri, 24 Mar 2017 09:25:28 GMT): uber.twin (Fri, 24 Mar 2017 09:27:57 GMT): sstone1 (Fri, 24 Mar 2017 09:28:53 GMT): sstone1 (Fri, 24 Mar 2017 09:29:32 GMT): sstone1 (Fri, 24 Mar 2017 09:29:48 GMT): sstone1 (Fri, 24 Mar 2017 09:30:12 GMT): uber.twin (Fri, 24 Mar 2017 09:30:36 GMT): uber.twin (Fri, 24 Mar 2017 09:31:34 GMT): sstone1 (Fri, 24 Mar 2017 09:31:58 GMT): uber.twin (Fri, 24 Mar 2017 09:32:06 GMT): uber.twin (Fri, 24 Mar 2017 09:33:02 GMT): sstone1 (Fri, 24 Mar 2017 09:33:39 GMT): sstone1 (Fri, 24 Mar 2017 09:33:39 GMT): uber.twin (Fri, 24 Mar 2017 09:33:47 GMT): uber.twin (Fri, 24 Mar 2017 09:33:55 GMT): sstone1 (Fri, 24 Mar 2017 09:34:34 GMT): uber.twin (Fri, 24 Mar 2017 09:34:35 GMT): uber.twin (Fri, 24 Mar 2017 09:34:47 GMT): uber.twin (Fri, 24 Mar 2017 09:34:59 GMT): sstone1 (Fri, 24 Mar 2017 09:35:15 GMT): sstone1 (Fri, 24 Mar 2017 09:36:51 GMT): uber.twin (Fri, 24 Mar 2017 09:36:58 GMT): uber.twin (Fri, 24 Mar 2017 09:37:40 GMT): sstone1 (Fri, 24 Mar 2017 09:38:04 GMT): xuanyue202 (Fri, 24 Mar 2017 11:07:21 GMT): xuanyue202 (Fri, 24 Mar 2017 11:25:37 GMT): norinos (Fri, 24 Mar 2017 12:28:29 GMT): annbnn (Fri, 24 Mar 2017 12:40:29 GMT): annbnn (Fri, 24 Mar 2017 12:40:36 GMT): annbnn (Fri, 24 Mar 2017 12:40:40 GMT): annbnn (Fri, 24 Mar 2017 12:41:51 GMT): annbnn (Fri, 24 Mar 2017 12:42:27 GMT): annbnn (Fri, 24 Mar 2017 12:42:54 GMT): norinos (Fri, 24 Mar 2017 13:10:55 GMT): sstone1 (Fri, 24 Mar 2017 14:08:01 GMT): sstone1 (Fri, 24 Mar 2017 14:09:15 GMT): sstone1 (Fri, 24 Mar 2017 14:10:14 GMT): sstone1 (Fri, 24 Mar 2017 14:10:45 GMT): annbnn (Fri, 24 Mar 2017 14:12:39 GMT): annbnn (Fri, 24 Mar 2017 14:12:50 GMT): annbnn (Fri, 24 Mar 2017 14:12:58 GMT): annbnn (Fri, 24 Mar 2017 14:13:14 GMT): annbnn (Fri, 24 Mar 2017 14:15:58 GMT): annbnn (Fri, 24 Mar 2017 14:15:59 GMT): annbnn (Fri, 24 Mar 2017 14:16:32 GMT): annbnn (Fri, 24 Mar 2017 14:16:43 GMT): Jakeeyturner (Fri, 24 Mar 2017 14:17:40 GMT): Jakeeyturner (Fri, 24 Mar 2017 14:18:11 GMT): Jakeeyturner (Fri, 24 Mar 2017 14:18:11 GMT): Jakeeyturner (Fri, 24 Mar 2017 14:18:34 GMT): Jakeeyturner (Fri, 24 Mar 2017 14:18:40 GMT): annbnn (Fri, 24 Mar 2017 14:19:57 GMT): annbnn (Fri, 24 Mar 2017 14:20:09 GMT): annbnn (Fri, 24 Mar 2017 14:20:11 GMT): sstone1 (Fri, 24 Mar 2017 14:20:21 GMT): annbnn (Fri, 24 Mar 2017 14:21:12 GMT): annbnn (Fri, 24 Mar 2017 14:21:28 GMT): annbnn (Fri, 24 Mar 2017 14:22:44 GMT): sstone1 (Fri, 24 Mar 2017 14:24:48 GMT): sstone1 (Fri, 24 Mar 2017 14:25:06 GMT): sstone1 (Fri, 24 Mar 2017 14:25:17 GMT): sstone1 (Fri, 24 Mar 2017 14:25:26 GMT): annbnn (Fri, 24 Mar 2017 14:35:22 GMT): annbnn (Fri, 24 Mar 2017 14:35:28 GMT): Jakeeyturner (Fri, 24 Mar 2017 14:36:03 GMT): Jakeeyturner (Fri, 24 Mar 2017 14:36:11 GMT): annbnn (Fri, 24 Mar 2017 14:36:37 GMT): annbnn (Fri, 24 Mar 2017 14:36:50 GMT): annbnn (Fri, 24 Mar 2017 14:36:57 GMT): uber.twin (Fri, 24 Mar 2017 15:40:25 GMT): sstone1 (Fri, 24 Mar 2017 15:45:09 GMT): sstone1 (Fri, 24 Mar 2017 15:45:32 GMT): jdockter (Fri, 24 Mar 2017 15:59:24 GMT): uber.twin (Fri, 24 Mar 2017 16:00:45 GMT): sstone1 (Fri, 24 Mar 2017 16:02:25 GMT): sstone1 (Fri, 24 Mar 2017 16:03:30 GMT): sstone1 (Fri, 24 Mar 2017 16:03:53 GMT): uber.twin (Fri, 24 Mar 2017 16:04:57 GMT): bonen (Fri, 24 Mar 2017 16:05:11 GMT): annbnn (Fri, 24 Mar 2017 16:21:54 GMT): annbnn (Fri, 24 Mar 2017 16:22:23 GMT): annbnn (Fri, 24 Mar 2017 16:22:24 GMT): annbnn (Fri, 24 Mar 2017 16:22:44 GMT): annbnn (Fri, 24 Mar 2017 16:22:45 GMT): annbnn (Fri, 24 Mar 2017 16:23:02 GMT): annbnn (Fri, 24 Mar 2017 16:23:07 GMT): annbnn (Fri, 24 Mar 2017 16:23:34 GMT): annbnn (Fri, 24 Mar 2017 16:23:40 GMT): annbnn (Fri, 24 Mar 2017 16:23:58 GMT): dselman (Fri, 24 Mar 2017 16:48:02 GMT): dselman (Fri, 24 Mar 2017 16:48:02 GMT): dselman (Fri, 24 Mar 2017 16:48:31 GMT): sstone1 (Fri, 24 Mar 2017 16:55:03 GMT): sstone1 (Fri, 24 Mar 2017 16:55:16 GMT): annbnn (Fri, 24 Mar 2017 17:11:42 GMT): annbnn (Fri, 24 Mar 2017 17:11:54 GMT): annbnn (Fri, 24 Mar 2017 17:11:55 GMT): annbnn (Fri, 24 Mar 2017 17:12:23 GMT): annbnn (Fri, 24 Mar 2017 17:13:34 GMT): annbnn (Fri, 24 Mar 2017 17:13:51 GMT): annbnn (Fri, 24 Mar 2017 17:13:51 GMT): dselman (Fri, 24 Mar 2017 17:37:25 GMT): annbnn (Fri, 24 Mar 2017 19:10:39 GMT): annbnn (Fri, 24 Mar 2017 19:10:59 GMT): jdockter (Fri, 24 Mar 2017 19:16:59 GMT): jdockter (Fri, 24 Mar 2017 19:17:05 GMT): jdockter (Fri, 24 Mar 2017 19:20:31 GMT): jdockter (Fri, 24 Mar 2017 19:20:35 GMT): annbnn (Fri, 24 Mar 2017 20:12:43 GMT): annbnn (Fri, 24 Mar 2017 20:13:10 GMT): annbnn (Fri, 24 Mar 2017 20:38:45 GMT): jdockter (Fri, 24 Mar 2017 20:42:31 GMT): jdockter (Fri, 24 Mar 2017 20:45:05 GMT): jdockter (Fri, 24 Mar 2017 20:47:30 GMT): annbnn (Sat, 25 Mar 2017 04:58:56 GMT): annbnn (Sat, 25 Mar 2017 04:59:32 GMT): annbnn (Sat, 25 Mar 2017 05:00:03 GMT): annbnn (Sat, 25 Mar 2017 05:00:09 GMT): annbnn (Sat, 25 Mar 2017 05:00:21 GMT): annbnn (Sat, 25 Mar 2017 05:00:39 GMT): annbnn (Sat, 25 Mar 2017 05:09:27 GMT): annbnn (Sat, 25 Mar 2017 05:09:29 GMT): annbnn (Sat, 25 Mar 2017 05:09:50 GMT): annbnn (Sat, 25 Mar 2017 05:39:58 GMT): GaryDee (Sat, 25 Mar 2017 10:22:05 GMT): dselman (Sat, 25 Mar 2017 18:25:15 GMT): dselman (Sat, 25 Mar 2017 18:25:15 GMT): annbnn (Sun, 26 Mar 2017 20:36:16 GMT): annbnn (Sun, 26 Mar 2017 20:36:41 GMT): annbnn (Sun, 26 Mar 2017 20:36:47 GMT): annbnn (Sun, 26 Mar 2017 20:36:53 GMT): jdockter (Sun, 26 Mar 2017 20:37:19 GMT): Hangyu (Mon, 27 Mar 2017 00:10:40 GMT): t-watana (Mon, 27 Mar 2017 09:50:02 GMT): annbnn (Mon, 27 Mar 2017 09:56:28 GMT): annbnn (Mon, 27 Mar 2017 12:03:46 GMT): annbnn (Mon, 27 Mar 2017 12:25:05 GMT): annbnn (Mon, 27 Mar 2017 12:26:05 GMT): annbnn (Mon, 27 Mar 2017 12:26:47 GMT): annbnn (Mon, 27 Mar 2017 12:27:00 GMT): dselman (Mon, 27 Mar 2017 12:33:16 GMT): annbnn (Mon, 27 Mar 2017 12:41:26 GMT): dselman (Mon, 27 Mar 2017 12:41:48 GMT): annbnn (Mon, 27 Mar 2017 12:46:01 GMT): bonen (Mon, 27 Mar 2017 12:57:35 GMT): dselman (Mon, 27 Mar 2017 13:03:29 GMT): jdockter (Mon, 27 Mar 2017 13:05:17 GMT): nhrishi (Mon, 27 Mar 2017 13:08:55 GMT): dselman (Mon, 27 Mar 2017 13:11:24 GMT): bonen (Mon, 27 Mar 2017 13:13:08 GMT): jecris (Mon, 27 Mar 2017 14:39:37 GMT): cshields (Mon, 27 Mar 2017 14:49:02 GMT): FenglianXu (Mon, 27 Mar 2017 14:49:35 GMT): atomkinson (Mon, 27 Mar 2017 14:53:12 GMT): dave.enyeart (Mon, 27 Mar 2017 14:55:05 GMT): FenglianXu (Mon, 27 Mar 2017 15:00:07 GMT): in0rdr (Mon, 27 Mar 2017 15:06:44 GMT): in0rdr (Mon, 27 Mar 2017 15:06:59 GMT): dselman (Mon, 27 Mar 2017 15:07:58 GMT): in0rdr (Mon, 27 Mar 2017 15:08:50 GMT): in0rdr (Mon, 27 Mar 2017 15:09:33 GMT): dselman (Mon, 27 Mar 2017 15:09:57 GMT): in0rdr (Mon, 27 Mar 2017 15:10:07 GMT): in0rdr (Mon, 27 Mar 2017 15:10:09 GMT): tarima (Mon, 27 Mar 2017 16:01:06 GMT): tarima (Mon, 27 Mar 2017 16:01:32 GMT): tarima (Mon, 27 Mar 2017 16:02:10 GMT): tarima (Mon, 27 Mar 2017 16:03:09 GMT): bonen (Mon, 27 Mar 2017 16:15:08 GMT): bonen (Mon, 27 Mar 2017 20:37:31 GMT): dselman (Mon, 27 Mar 2017 20:38:25 GMT): dselman (Mon, 27 Mar 2017 20:38:58 GMT): dselman (Mon, 27 Mar 2017 20:41:34 GMT): dselman (Mon, 27 Mar 2017 20:41:47 GMT): jdockter (Mon, 27 Mar 2017 22:06:17 GMT): jdockter (Mon, 27 Mar 2017 22:06:54 GMT): jdockter (Mon, 27 Mar 2017 22:07:12 GMT): jdockter (Mon, 27 Mar 2017 22:07:24 GMT): jdockter (Mon, 27 Mar 2017 22:07:24 GMT): jdockter (Mon, 27 Mar 2017 22:10:02 GMT): jdockter (Mon, 27 Mar 2017 22:10:30 GMT): dselman (Mon, 27 Mar 2017 22:11:54 GMT): dselman (Mon, 27 Mar 2017 22:12:22 GMT): dselman (Mon, 27 Mar 2017 22:12:37 GMT): dselman (Mon, 27 Mar 2017 22:12:37 GMT): jdockter (Mon, 27 Mar 2017 22:12:42 GMT): jdockter (Mon, 27 Mar 2017 22:14:46 GMT): dselman (Mon, 27 Mar 2017 22:15:01 GMT): sstone1 (Mon, 27 Mar 2017 22:29:20 GMT): tarima (Mon, 27 Mar 2017 22:35:16 GMT): jdockter (Mon, 27 Mar 2017 22:35:37 GMT): tarima (Mon, 27 Mar 2017 22:35:46 GMT): tarima (Mon, 27 Mar 2017 22:36:43 GMT): tarima (Mon, 27 Mar 2017 22:38:11 GMT): dselman (Mon, 27 Mar 2017 22:42:39 GMT): dselman (Mon, 27 Mar 2017 22:43:11 GMT): dselman (Mon, 27 Mar 2017 22:43:25 GMT): dselman (Mon, 27 Mar 2017 22:43:52 GMT): tarima (Mon, 27 Mar 2017 22:44:27 GMT): tarima (Mon, 27 Mar 2017 22:45:05 GMT): dselman (Mon, 27 Mar 2017 22:50:24 GMT): dselman (Mon, 27 Mar 2017 22:51:04 GMT): dselman (Mon, 27 Mar 2017 22:51:42 GMT): dselman (Mon, 27 Mar 2017 22:51:46 GMT): dselman (Mon, 27 Mar 2017 22:52:59 GMT): tarima (Mon, 27 Mar 2017 22:56:35 GMT): tarima (Mon, 27 Mar 2017 22:56:54 GMT): tarima (Mon, 27 Mar 2017 22:57:17 GMT): tarima (Mon, 27 Mar 2017 22:58:04 GMT): tarima (Mon, 27 Mar 2017 22:58:40 GMT): dselman (Mon, 27 Mar 2017 22:59:44 GMT): laprice (Tue, 28 Mar 2017 00:58:10 GMT): bonen (Tue, 28 Mar 2017 07:00:32 GMT): uber.twin (Tue, 28 Mar 2017 08:04:10 GMT): sstone1 (Tue, 28 Mar 2017 08:06:19 GMT): bonen (Tue, 28 Mar 2017 08:14:57 GMT): sstone1 (Tue, 28 Mar 2017 08:20:50 GMT): dselman (Tue, 28 Mar 2017 08:21:03 GMT): dselman (Tue, 28 Mar 2017 08:21:21 GMT): bonen (Tue, 28 Mar 2017 08:31:07 GMT): bonen (Tue, 28 Mar 2017 08:32:52 GMT): dselman (Tue, 28 Mar 2017 08:36:38 GMT): bonen (Tue, 28 Mar 2017 08:43:55 GMT): uber.twin (Tue, 28 Mar 2017 08:47:36 GMT): dselman (Tue, 28 Mar 2017 08:52:14 GMT): georgeormrod@gmail.com (Tue, 28 Mar 2017 09:49:42 GMT): uber.twin (Tue, 28 Mar 2017 09:50:57 GMT): dselman (Tue, 28 Mar 2017 09:51:11 GMT): georgeormrod@gmail.com (Tue, 28 Mar 2017 09:52:47 GMT): dselman (Tue, 28 Mar 2017 09:53:34 GMT): dselman (Tue, 28 Mar 2017 09:54:42 GMT): Jakeeyturner (Tue, 28 Mar 2017 09:55:43 GMT): georgeormrod@gmail.com (Tue, 28 Mar 2017 09:56:12 GMT): georgeormrod@gmail.com (Tue, 28 Mar 2017 09:56:12 GMT): georgeormrod@gmail.com (Tue, 28 Mar 2017 09:57:06 GMT): dselman (Tue, 28 Mar 2017 09:57:11 GMT): georgeormrod@gmail.com (Tue, 28 Mar 2017 09:58:52 GMT): dselman (Tue, 28 Mar 2017 10:00:07 GMT): georgeormrod@gmail.com (Tue, 28 Mar 2017 10:01:54 GMT): dselman (Tue, 28 Mar 2017 10:16:41 GMT): dselman (Tue, 28 Mar 2017 10:18:47 GMT): georgeormrod@gmail.com (Tue, 28 Mar 2017 10:33:18 GMT): dselman (Tue, 28 Mar 2017 10:34:19 GMT): annbnn (Tue, 28 Mar 2017 12:08:48 GMT): georgeormrod@gmail.com (Tue, 28 Mar 2017 12:20:01 GMT): georgeormrod@gmail.com (Tue, 28 Mar 2017 12:27:31 GMT): lowry1515 (Tue, 28 Mar 2017 12:43:41 GMT): uber.twin (Tue, 28 Mar 2017 13:15:07 GMT): uber.twin (Tue, 28 Mar 2017 13:15:47 GMT): annbnn (Tue, 28 Mar 2017 14:06:57 GMT): annbnn (Tue, 28 Mar 2017 14:07:04 GMT): annbnn (Tue, 28 Mar 2017 15:03:27 GMT): annbnn (Tue, 28 Mar 2017 15:04:02 GMT): annbnn (Tue, 28 Mar 2017 15:04:21 GMT): annbnn (Tue, 28 Mar 2017 15:05:09 GMT): annbnn (Tue, 28 Mar 2017 15:07:45 GMT): annbnn (Tue, 28 Mar 2017 15:08:05 GMT): elisabetta (Tue, 28 Mar 2017 15:35:06 GMT): elisabetta (Tue, 28 Mar 2017 15:35:53 GMT): elisabetta (Tue, 28 Mar 2017 15:39:16 GMT): elisabetta (Tue, 28 Mar 2017 15:40:23 GMT): davidkel (Tue, 28 Mar 2017 15:41:31 GMT): elisabetta (Tue, 28 Mar 2017 15:42:26 GMT): davidkel (Tue, 28 Mar 2017 15:42:36 GMT): davidkel (Tue, 28 Mar 2017 15:43:19 GMT): elisabetta (Tue, 28 Mar 2017 15:43:34 GMT): elisabetta (Tue, 28 Mar 2017 15:44:23 GMT): davidkel (Tue, 28 Mar 2017 15:44:34 GMT): elisabetta (Tue, 28 Mar 2017 15:44:50 GMT): davidkel (Tue, 28 Mar 2017 15:45:29 GMT): elisabetta (Tue, 28 Mar 2017 15:45:48 GMT): davidkel (Tue, 28 Mar 2017 15:48:02 GMT): elisabetta (Tue, 28 Mar 2017 15:49:03 GMT): dselman (Tue, 28 Mar 2017 16:13:46 GMT): dselman (Tue, 28 Mar 2017 16:15:50 GMT): dselman (Tue, 28 Mar 2017 16:16:29 GMT): in0rdr (Tue, 28 Mar 2017 16:27:13 GMT): vivekraut (Tue, 28 Mar 2017 16:47:45 GMT): sstone1 (Tue, 28 Mar 2017 17:07:26 GMT): sstone1 (Tue, 28 Mar 2017 17:07:30 GMT): sstone1 (Tue, 28 Mar 2017 17:07:47 GMT): vivekraut (Tue, 28 Mar 2017 17:08:34 GMT): alexrosen (Tue, 28 Mar 2017 19:51:50 GMT): dselman (Wed, 29 Mar 2017 04:41:33 GMT): dselman (Wed, 29 Mar 2017 04:45:50 GMT): pospi (Wed, 29 Mar 2017 06:56:57 GMT): shamckm (Wed, 29 Mar 2017 07:03:34 GMT): dselman (Wed, 29 Mar 2017 07:26:13 GMT): davidkel (Wed, 29 Mar 2017 07:36:41 GMT): shamckm (Wed, 29 Mar 2017 07:44:33 GMT): gatakka (Wed, 29 Mar 2017 07:49:11 GMT): Jakeeyturner (Wed, 29 Mar 2017 07:58:02 GMT): Jakeeyturner (Wed, 29 Mar 2017 07:58:02 GMT): shamckm (Wed, 29 Mar 2017 08:02:59 GMT): shamckm (Wed, 29 Mar 2017 08:04:07 GMT): Jakeeyturner (Wed, 29 Mar 2017 08:05:08 GMT): shamckm (Wed, 29 Mar 2017 08:05:46 GMT): pospi (Wed, 29 Mar 2017 08:10:20 GMT): Jakeeyturner (Wed, 29 Mar 2017 08:12:21 GMT): saism (Wed, 29 Mar 2017 08:16:43 GMT): davidkel (Wed, 29 Mar 2017 08:23:46 GMT): davidkel (Wed, 29 Mar 2017 08:23:46 GMT): pospi (Wed, 29 Mar 2017 08:40:42 GMT): davidkel (Wed, 29 Mar 2017 08:44:52 GMT): pospi (Wed, 29 Mar 2017 08:47:29 GMT): davidkel (Wed, 29 Mar 2017 08:50:56 GMT): pospi (Wed, 29 Mar 2017 09:00:11 GMT): pospi (Wed, 29 Mar 2017 09:01:36 GMT): shamckm (Wed, 29 Mar 2017 09:03:40 GMT): davidkel (Wed, 29 Mar 2017 09:09:39 GMT): shamckm (Wed, 29 Mar 2017 09:10:45 GMT): shamckm (Wed, 29 Mar 2017 09:12:22 GMT): Jakeeyturner (Wed, 29 Mar 2017 09:26:36 GMT): uber.twin (Wed, 29 Mar 2017 09:44:47 GMT): Jakeeyturner (Wed, 29 Mar 2017 09:50:30 GMT): Jakeeyturner (Wed, 29 Mar 2017 09:50:49 GMT): uber.twin (Wed, 29 Mar 2017 09:52:33 GMT): mbwhite (Wed, 29 Mar 2017 09:53:18 GMT): Jakeeyturner (Wed, 29 Mar 2017 09:56:19 GMT): Jakeeyturner (Wed, 29 Mar 2017 09:56:19 GMT): uber.twin (Wed, 29 Mar 2017 09:59:27 GMT): uber.twin (Wed, 29 Mar 2017 10:00:06 GMT): uber.twin (Wed, 29 Mar 2017 10:00:12 GMT): uber.twin (Wed, 29 Mar 2017 10:00:45 GMT): uber.twin (Wed, 29 Mar 2017 10:01:35 GMT): uber.twin (Wed, 29 Mar 2017 10:02:12 GMT): uber.twin (Wed, 29 Mar 2017 10:03:55 GMT): uber.twin (Wed, 29 Mar 2017 10:04:20 GMT): uber.twin (Wed, 29 Mar 2017 10:04:40 GMT): pospi (Wed, 29 Mar 2017 10:08:32 GMT): elisabetta (Wed, 29 Mar 2017 10:10:50 GMT): elisabetta (Wed, 29 Mar 2017 10:13:22 GMT): elisabetta (Wed, 29 Mar 2017 10:14:11 GMT): shamckm (Wed, 29 Mar 2017 10:14:17 GMT): elisabetta (Wed, 29 Mar 2017 10:14:23 GMT): uber.twin (Wed, 29 Mar 2017 10:15:39 GMT): uber.twin (Wed, 29 Mar 2017 10:15:41 GMT): uber.twin (Wed, 29 Mar 2017 10:16:38 GMT): uber.twin (Wed, 29 Mar 2017 10:16:38 GMT): uber.twin (Wed, 29 Mar 2017 10:17:31 GMT): uber.twin (Wed, 29 Mar 2017 10:19:59 GMT): uber.twin (Wed, 29 Mar 2017 10:20:01 GMT): uber.twin (Wed, 29 Mar 2017 10:20:53 GMT): uber.twin (Wed, 29 Mar 2017 10:21:45 GMT): Jakeeyturner (Wed, 29 Mar 2017 10:27:47 GMT): sstone1 (Wed, 29 Mar 2017 10:32:19 GMT): davidkel (Wed, 29 Mar 2017 10:38:39 GMT): elisabetta (Wed, 29 Mar 2017 10:42:25 GMT): davidkel (Wed, 29 Mar 2017 10:53:59 GMT): elisabetta (Wed, 29 Mar 2017 10:56:43 GMT): georgeormrod@gmail.com (Wed, 29 Mar 2017 11:03:02 GMT): davidkel (Wed, 29 Mar 2017 11:27:31 GMT): davidkel (Wed, 29 Mar 2017 11:27:31 GMT): uber.twin (Wed, 29 Mar 2017 11:30:36 GMT): uber.twin (Wed, 29 Mar 2017 11:34:51 GMT): uber.twin (Wed, 29 Mar 2017 11:34:59 GMT): davidkel (Wed, 29 Mar 2017 12:06:09 GMT): uber.twin (Wed, 29 Mar 2017 12:16:36 GMT): uber.twin (Wed, 29 Mar 2017 12:16:36 GMT): sbrakev (Wed, 29 Mar 2017 12:29:56 GMT): davidkel (Wed, 29 Mar 2017 12:51:57 GMT): jdockter (Wed, 29 Mar 2017 12:51:57 GMT): sbrakev (Wed, 29 Mar 2017 12:52:30 GMT): davidkel (Wed, 29 Mar 2017 12:54:19 GMT): sbrakev (Wed, 29 Mar 2017 12:54:57 GMT): davidkel (Wed, 29 Mar 2017 12:57:03 GMT): sbrakev (Wed, 29 Mar 2017 12:59:57 GMT): jdockter (Wed, 29 Mar 2017 13:07:41 GMT): jdockter (Wed, 29 Mar 2017 13:07:41 GMT): jdockter (Wed, 29 Mar 2017 13:09:37 GMT): Jakeeyturner (Wed, 29 Mar 2017 13:12:54 GMT): uber.twin (Wed, 29 Mar 2017 15:13:19 GMT): uber.twin (Wed, 29 Mar 2017 15:14:20 GMT): uber.twin (Wed, 29 Mar 2017 15:15:30 GMT): davidkel (Wed, 29 Mar 2017 15:25:53 GMT): Amjadnz (Wed, 29 Mar 2017 15:38:38 GMT): hschell (Wed, 29 Mar 2017 15:47:56 GMT): jljordan_bcgov (Wed, 29 Mar 2017 16:09:55 GMT): annbnn (Wed, 29 Mar 2017 20:55:38 GMT): DennisM330 (Wed, 29 Mar 2017 20:58:32 GMT): DennisM330 (Wed, 29 Mar 2017 21:38:26 GMT): DennisM330 (Wed, 29 Mar 2017 21:43:43 GMT): DennisM330 (Wed, 29 Mar 2017 22:09:08 GMT): kouohhashi (Thu, 30 Mar 2017 00:16:33 GMT): tonyltf (Thu, 30 Mar 2017 04:49:43 GMT): tonyltf (Thu, 30 Mar 2017 04:50:23 GMT): kouohhashi (Thu, 30 Mar 2017 05:06:35 GMT): kouohhashi (Thu, 30 Mar 2017 05:06:35 GMT): harsha (Thu, 30 Mar 2017 05:40:01 GMT): Rymd (Thu, 30 Mar 2017 07:18:37 GMT): uber.twin (Thu, 30 Mar 2017 07:46:19 GMT): uber.twin (Thu, 30 Mar 2017 07:46:19 GMT): uber.twin (Thu, 30 Mar 2017 07:46:19 GMT): uber.twin (Thu, 30 Mar 2017 07:46:19 GMT): sstone1 (Thu, 30 Mar 2017 09:58:58 GMT): annbnn (Thu, 30 Mar 2017 10:00:02 GMT): annbnn (Thu, 30 Mar 2017 10:00:19 GMT): sstone1 (Thu, 30 Mar 2017 10:04:59 GMT): annbnn (Thu, 30 Mar 2017 10:45:39 GMT): annbnn (Thu, 30 Mar 2017 10:46:28 GMT): annbnn (Thu, 30 Mar 2017 10:46:29 GMT): carlos.chida (Thu, 30 Mar 2017 16:12:40 GMT): kuangchao (Thu, 30 Mar 2017 17:21:25 GMT): tortuga90 (Fri, 31 Mar 2017 01:07:05 GMT): ranjan008 (Fri, 31 Mar 2017 07:10:24 GMT): bonen (Fri, 31 Mar 2017 07:52:54 GMT): dselman (Fri, 31 Mar 2017 08:05:44 GMT): bonen (Fri, 31 Mar 2017 09:39:53 GMT): annbnn (Fri, 31 Mar 2017 13:02:11 GMT): annbnn (Fri, 31 Mar 2017 13:02:30 GMT): annbnn (Fri, 31 Mar 2017 13:14:14 GMT): georgeormrod@gmail.com (Fri, 31 Mar 2017 13:30:37 GMT): Jakeeyturner (Fri, 31 Mar 2017 13:45:27 GMT): Jakeeyturner (Fri, 31 Mar 2017 13:45:27 GMT): Jakeeyturner (Fri, 31 Mar 2017 13:45:27 GMT): annbnn (Fri, 31 Mar 2017 13:49:15 GMT): annbnn (Fri, 31 Mar 2017 13:50:07 GMT): Jakeeyturner (Fri, 31 Mar 2017 13:51:22 GMT): annbnn (Fri, 31 Mar 2017 13:56:42 GMT): annbnn (Fri, 31 Mar 2017 13:56:53 GMT): annbnn (Fri, 31 Mar 2017 13:57:07 GMT): annbnn (Fri, 31 Mar 2017 13:58:57 GMT): allenc2016 (Fri, 31 Mar 2017 14:02:47 GMT): dselman (Fri, 31 Mar 2017 14:05:39 GMT): uber.twin (Fri, 31 Mar 2017 14:07:39 GMT): uber.twin (Fri, 31 Mar 2017 14:08:57 GMT): annbnn (Fri, 31 Mar 2017 14:09:13 GMT): annbnn (Fri, 31 Mar 2017 14:09:15 GMT): annbnn (Fri, 31 Mar 2017 14:37:27 GMT): Jakeeyturner (Fri, 31 Mar 2017 14:56:41 GMT): annbnn (Fri, 31 Mar 2017 15:49:21 GMT): annbnn (Fri, 31 Mar 2017 16:06:29 GMT): annbnn (Fri, 31 Mar 2017 16:06:59 GMT): guyho (Fri, 31 Mar 2017 16:07:15 GMT): annbnn (Fri, 31 Mar 2017 16:07:17 GMT): Percival Lucena (Fri, 31 Mar 2017 16:38:46 GMT): dselman (Fri, 31 Mar 2017 17:27:12 GMT): Percival Lucena (Fri, 31 Mar 2017 18:18:32 GMT): Percival Lucena (Fri, 31 Mar 2017 18:19:32 GMT): kuangchao (Sat, 01 Apr 2017 02:57:54 GMT): AmarMundi (Sat, 01 Apr 2017 11:31:57 GMT): ztanaka1971 (Sat, 01 Apr 2017 22:33:05 GMT): kofman.alex@gmail.com (Sun, 02 Apr 2017 05:53:30 GMT): saism (Sun, 02 Apr 2017 13:53:59 GMT): dselman (Sun, 02 Apr 2017 17:08:12 GMT): choas (Sun, 02 Apr 2017 18:10:49 GMT): sativ01.ca (Mon, 03 Apr 2017 07:51:38 GMT): jtonline (Mon, 03 Apr 2017 09:35:04 GMT): vinitesh (Mon, 03 Apr 2017 09:48:07 GMT): annbnn (Mon, 03 Apr 2017 09:55:12 GMT): annbnn (Mon, 03 Apr 2017 09:55:29 GMT): annbnn (Mon, 03 Apr 2017 09:55:46 GMT): bonen (Mon, 03 Apr 2017 10:10:17 GMT): sstone1 (Mon, 03 Apr 2017 11:02:00 GMT): annbnn (Mon, 03 Apr 2017 11:17:54 GMT): annbnn (Mon, 03 Apr 2017 11:18:02 GMT): annbnn (Mon, 03 Apr 2017 11:18:08 GMT): bonen (Mon, 03 Apr 2017 11:25:43 GMT): annbnn (Mon, 03 Apr 2017 12:21:14 GMT): annbnn (Mon, 03 Apr 2017 12:22:01 GMT): annbnn (Mon, 03 Apr 2017 12:22:07 GMT): sstone1 (Mon, 03 Apr 2017 12:23:39 GMT): annbnn (Mon, 03 Apr 2017 12:24:04 GMT): annbnn (Mon, 03 Apr 2017 12:24:16 GMT): annbnn (Mon, 03 Apr 2017 12:24:22 GMT): sstone1 (Mon, 03 Apr 2017 12:25:07 GMT): sstone1 (Mon, 03 Apr 2017 12:25:11 GMT): annbnn (Mon, 03 Apr 2017 12:30:14 GMT): annbnn (Mon, 03 Apr 2017 12:32:37 GMT): annbnn (Mon, 03 Apr 2017 12:32:58 GMT): annbnn (Mon, 03 Apr 2017 12:33:12 GMT): sstone1 (Mon, 03 Apr 2017 12:33:38 GMT): annbnn (Mon, 03 Apr 2017 12:34:01 GMT): annbnn (Mon, 03 Apr 2017 12:34:06 GMT): sstone1 (Mon, 03 Apr 2017 12:34:15 GMT): annbnn (Mon, 03 Apr 2017 12:34:52 GMT): annbnn (Mon, 03 Apr 2017 12:36:05 GMT): annbnn (Mon, 03 Apr 2017 12:36:06 GMT): sstone1 (Mon, 03 Apr 2017 12:37:02 GMT): annbnn (Mon, 03 Apr 2017 12:40:05 GMT): annbnn (Mon, 03 Apr 2017 13:02:29 GMT): annbnn (Mon, 03 Apr 2017 13:03:14 GMT): annbnn (Mon, 03 Apr 2017 13:31:18 GMT): annbnn (Mon, 03 Apr 2017 13:31:51 GMT): annbnn (Mon, 03 Apr 2017 13:32:30 GMT): annbnn (Mon, 03 Apr 2017 13:34:26 GMT): annbnn (Mon, 03 Apr 2017 13:47:32 GMT): GrahamCharters (Mon, 03 Apr 2017 13:50:00 GMT): Jakeeyturner (Mon, 03 Apr 2017 13:53:36 GMT): Jakeeyturner (Mon, 03 Apr 2017 13:54:16 GMT): GrahamCharters (Mon, 03 Apr 2017 14:02:24 GMT): GrahamCharters (Mon, 03 Apr 2017 14:10:09 GMT): GrahamCharters (Mon, 03 Apr 2017 14:11:02 GMT): GrahamCharters (Mon, 03 Apr 2017 14:11:02 GMT): GrahamCharters (Mon, 03 Apr 2017 14:13:54 GMT): dselman (Mon, 03 Apr 2017 14:31:42 GMT): allenc2016 (Mon, 03 Apr 2017 14:47:04 GMT): GrahamCharters (Mon, 03 Apr 2017 14:56:18 GMT): sstone1 (Mon, 03 Apr 2017 19:19:09 GMT): dselman (Mon, 03 Apr 2017 19:24:23 GMT): sstone1 (Mon, 03 Apr 2017 19:26:56 GMT): sstone1 (Mon, 03 Apr 2017 20:33:36 GMT): Suma (Mon, 03 Apr 2017 20:41:31 GMT): Suma (Mon, 03 Apr 2017 20:45:16 GMT): Suma (Mon, 03 Apr 2017 20:45:22 GMT): dselman (Mon, 03 Apr 2017 20:46:54 GMT): Suma (Mon, 03 Apr 2017 20:47:35 GMT): dselman (Mon, 03 Apr 2017 20:47:36 GMT): Suma (Mon, 03 Apr 2017 20:48:36 GMT): Suma (Mon, 03 Apr 2017 20:48:36 GMT): Suma (Mon, 03 Apr 2017 20:51:53 GMT): Suma (Mon, 03 Apr 2017 20:51:58 GMT): Suma (Mon, 03 Apr 2017 20:52:16 GMT): Suma (Mon, 03 Apr 2017 20:52:37 GMT): Suma (Mon, 03 Apr 2017 20:52:52 GMT): dselman (Mon, 03 Apr 2017 20:52:55 GMT): Suma (Mon, 03 Apr 2017 20:53:01 GMT): dselman (Mon, 03 Apr 2017 20:53:07 GMT): Suma (Mon, 03 Apr 2017 20:53:19 GMT): dselman (Mon, 03 Apr 2017 20:55:48 GMT): dselman (Mon, 03 Apr 2017 20:56:15 GMT): dselman (Mon, 03 Apr 2017 20:56:15 GMT): Suma (Mon, 03 Apr 2017 20:56:59 GMT): Suma (Mon, 03 Apr 2017 20:59:44 GMT): dselman (Mon, 03 Apr 2017 21:01:37 GMT): dselman (Mon, 03 Apr 2017 21:01:41 GMT): klorenz (Mon, 03 Apr 2017 21:45:05 GMT): dselman (Mon, 03 Apr 2017 21:52:09 GMT): klorenz (Mon, 03 Apr 2017 22:30:47 GMT): MikeC711 (Tue, 04 Apr 2017 02:18:38 GMT): MikeC711 (Tue, 04 Apr 2017 02:30:20 GMT): ulysses (Tue, 04 Apr 2017 04:19:01 GMT): dselman (Tue, 04 Apr 2017 07:09:31 GMT): dselman (Tue, 04 Apr 2017 07:10:04 GMT): rockandroll-4w (Tue, 04 Apr 2017 07:45:17 GMT): mihai.cimpoesu (Tue, 04 Apr 2017 08:46:52 GMT): MikeC711 (Tue, 04 Apr 2017 11:16:40 GMT): MikeC711 (Tue, 04 Apr 2017 11:17:08 GMT): MikeC711 (Tue, 04 Apr 2017 11:19:50 GMT): MikeC711 (Tue, 04 Apr 2017 11:56:08 GMT): dselman (Tue, 04 Apr 2017 13:01:11 GMT): dselman (Tue, 04 Apr 2017 13:01:34 GMT): paul.sitoh (Tue, 04 Apr 2017 13:08:07 GMT): paul.sitoh (Tue, 04 Apr 2017 13:08:13 GMT): paul.sitoh (Tue, 04 Apr 2017 13:08:13 GMT): paul.sitoh (Tue, 04 Apr 2017 13:09:01 GMT): paul.sitoh (Tue, 04 Apr 2017 13:11:59 GMT): dselman (Tue, 04 Apr 2017 13:12:40 GMT): paul.sitoh (Tue, 04 Apr 2017 13:12:45 GMT): dselman (Tue, 04 Apr 2017 13:12:52 GMT): paul.sitoh (Tue, 04 Apr 2017 13:13:11 GMT): dselman (Tue, 04 Apr 2017 13:13:26 GMT): paul.sitoh (Tue, 04 Apr 2017 13:13:34 GMT): paul.sitoh (Tue, 04 Apr 2017 13:15:28 GMT): paul.sitoh (Tue, 04 Apr 2017 13:15:29 GMT): georgeormrod@gmail.com (Tue, 04 Apr 2017 13:20:25 GMT): pospi (Tue, 04 Apr 2017 13:46:38 GMT): mbwhite (Tue, 04 Apr 2017 13:55:22 GMT): mbwhite (Tue, 04 Apr 2017 13:55:22 GMT): dselman (Tue, 04 Apr 2017 13:58:51 GMT): dselman (Tue, 04 Apr 2017 13:59:04 GMT): dselman (Tue, 04 Apr 2017 13:59:16 GMT): pospi (Tue, 04 Apr 2017 14:07:52 GMT): uber.twin (Tue, 04 Apr 2017 14:13:39 GMT): georgeormrod@gmail.com (Tue, 04 Apr 2017 14:16:36 GMT): dselman (Tue, 04 Apr 2017 14:16:52 GMT): georgeormrod@gmail.com (Tue, 04 Apr 2017 14:18:03 GMT): dselman (Tue, 04 Apr 2017 14:18:49 GMT): pospi (Tue, 04 Apr 2017 14:40:31 GMT): gauthampamu (Tue, 04 Apr 2017 15:19:37 GMT): dselman (Tue, 04 Apr 2017 15:33:37 GMT): dselman (Tue, 04 Apr 2017 15:33:48 GMT): bonen (Tue, 04 Apr 2017 15:55:05 GMT): dselman (Tue, 04 Apr 2017 16:14:39 GMT): dselman (Tue, 04 Apr 2017 16:15:25 GMT): bonen (Tue, 04 Apr 2017 16:27:23 GMT): dselman (Tue, 04 Apr 2017 18:25:05 GMT): jdockter (Tue, 04 Apr 2017 18:58:51 GMT): jdockter (Tue, 04 Apr 2017 18:59:43 GMT): dselman (Tue, 04 Apr 2017 19:03:16 GMT): ggamaral (Tue, 04 Apr 2017 19:51:54 GMT): chipleinen (Tue, 04 Apr 2017 20:32:45 GMT): dselman (Tue, 04 Apr 2017 22:00:53 GMT): saridsa1 (Wed, 05 Apr 2017 06:27:43 GMT): saridsa1 (Wed, 05 Apr 2017 06:28:11 GMT): dselman (Wed, 05 Apr 2017 07:50:36 GMT): uber.twin (Wed, 05 Apr 2017 08:20:02 GMT): uber.twin (Wed, 05 Apr 2017 08:20:08 GMT): uber.twin (Wed, 05 Apr 2017 08:20:47 GMT): uber.twin (Wed, 05 Apr 2017 08:24:50 GMT): dselman (Wed, 05 Apr 2017 08:35:18 GMT): uber.twin (Wed, 05 Apr 2017 08:52:30 GMT): uber.twin (Wed, 05 Apr 2017 08:53:45 GMT): gauthampamu (Wed, 05 Apr 2017 08:54:44 GMT): bonen (Wed, 05 Apr 2017 08:59:46 GMT): georgeormrod@gmail.com (Wed, 05 Apr 2017 09:03:14 GMT): gauthampamu (Wed, 05 Apr 2017 09:04:35 GMT): gauthampamu (Wed, 05 Apr 2017 09:06:45 GMT): gauthampamu (Wed, 05 Apr 2017 09:30:14 GMT): murdoaird (Wed, 05 Apr 2017 09:53:35 GMT): dselman (Wed, 05 Apr 2017 10:44:28 GMT): dselman (Wed, 05 Apr 2017 10:45:12 GMT): dselman (Wed, 05 Apr 2017 10:46:13 GMT): dselman (Wed, 05 Apr 2017 10:47:23 GMT): dselman (Wed, 05 Apr 2017 10:48:00 GMT): uber.twin (Wed, 05 Apr 2017 11:20:14 GMT): uber.twin (Wed, 05 Apr 2017 11:21:47 GMT): uber.twin (Wed, 05 Apr 2017 11:22:11 GMT): uber.twin (Wed, 05 Apr 2017 11:23:11 GMT): uber.twin (Wed, 05 Apr 2017 11:23:12 GMT): Suma (Wed, 05 Apr 2017 12:07:18 GMT): Suma (Wed, 05 Apr 2017 12:07:21 GMT): Suma (Wed, 05 Apr 2017 12:07:57 GMT): Suma (Wed, 05 Apr 2017 12:08:07 GMT): Suma (Wed, 05 Apr 2017 12:08:33 GMT): Jakeeyturner (Wed, 05 Apr 2017 12:12:52 GMT): Suma (Wed, 05 Apr 2017 12:13:30 GMT): Jakeeyturner (Wed, 05 Apr 2017 12:14:01 GMT): Suma (Wed, 05 Apr 2017 12:14:39 GMT): Suma (Wed, 05 Apr 2017 12:15:05 GMT): Jakeeyturner (Wed, 05 Apr 2017 12:15:45 GMT): Suma (Wed, 05 Apr 2017 12:15:53 GMT): elisabetta (Wed, 05 Apr 2017 12:53:11 GMT): gauthampamu (Wed, 05 Apr 2017 14:42:12 GMT): dselman (Wed, 05 Apr 2017 14:49:47 GMT): Suma (Wed, 05 Apr 2017 15:56:11 GMT): sstone1 (Wed, 05 Apr 2017 16:17:17 GMT): sstone1 (Wed, 05 Apr 2017 16:17:55 GMT): PraneethRodda (Wed, 05 Apr 2017 16:35:10 GMT): PraneethRodda (Wed, 05 Apr 2017 16:51:47 GMT): PraneethRodda (Wed, 05 Apr 2017 16:52:39 GMT): dselman (Wed, 05 Apr 2017 17:09:40 GMT): georgeormrod@gmail.com (Wed, 05 Apr 2017 17:10:23 GMT): dselman (Wed, 05 Apr 2017 17:11:54 GMT): dselman (Wed, 05 Apr 2017 17:12:24 GMT): tarima (Wed, 05 Apr 2017 17:13:04 GMT): dselman (Wed, 05 Apr 2017 17:13:47 GMT): dselman (Wed, 05 Apr 2017 17:14:42 GMT): dselman (Wed, 05 Apr 2017 17:15:13 GMT): georgeormrod@gmail.com (Wed, 05 Apr 2017 17:15:59 GMT): tarima (Wed, 05 Apr 2017 17:16:50 GMT): dselman (Wed, 05 Apr 2017 17:17:10 GMT): dselman (Wed, 05 Apr 2017 17:17:34 GMT): tarima (Wed, 05 Apr 2017 17:18:10 GMT): dselman (Wed, 05 Apr 2017 17:18:16 GMT): jdockter (Wed, 05 Apr 2017 18:05:27 GMT): dselman (Wed, 05 Apr 2017 18:12:04 GMT): dselman (Wed, 05 Apr 2017 18:12:46 GMT): dselman (Wed, 05 Apr 2017 18:14:31 GMT): dselman (Wed, 05 Apr 2017 18:16:05 GMT): jdockter (Wed, 05 Apr 2017 18:27:15 GMT): dselman (Wed, 05 Apr 2017 18:28:12 GMT): dselman (Wed, 05 Apr 2017 18:28:57 GMT): dselman (Wed, 05 Apr 2017 18:29:09 GMT): tixu (Wed, 05 Apr 2017 22:04:29 GMT): conroydave (Wed, 05 Apr 2017 22:15:08 GMT): dselman (Wed, 05 Apr 2017 22:21:34 GMT): elisabetta (Thu, 06 Apr 2017 08:30:15 GMT): raanaaray (Thu, 06 Apr 2017 08:35:23 GMT): duncanjw (Thu, 06 Apr 2017 10:01:12 GMT): duncanjw (Thu, 06 Apr 2017 10:01:53 GMT): duncanjw (Thu, 06 Apr 2017 10:01:53 GMT): paul.sitoh (Thu, 06 Apr 2017 10:30:25 GMT): paul.sitoh (Thu, 06 Apr 2017 10:30:25 GMT): paul.sitoh (Thu, 06 Apr 2017 10:30:25 GMT): paul.sitoh (Thu, 06 Apr 2017 10:30:25 GMT): paul.sitoh (Thu, 06 Apr 2017 10:30:25 GMT): paul.sitoh (Thu, 06 Apr 2017 10:30:25 GMT): paul.sitoh (Thu, 06 Apr 2017 10:30:25 GMT): paul.sitoh (Thu, 06 Apr 2017 10:30:25 GMT): paul.sitoh (Thu, 06 Apr 2017 10:30:25 GMT): sstone1 (Thu, 06 Apr 2017 10:54:41 GMT): sstone1 (Thu, 06 Apr 2017 10:57:40 GMT): duncanjw (Thu, 06 Apr 2017 10:58:01 GMT): duncanjw (Thu, 06 Apr 2017 10:59:37 GMT): duncanjw (Thu, 06 Apr 2017 11:00:43 GMT): cbf (Thu, 06 Apr 2017 11:00:43 GMT): sstone1 (Thu, 06 Apr 2017 11:00:46 GMT): paul.sitoh (Thu, 06 Apr 2017 11:04:29 GMT): sstone1 (Thu, 06 Apr 2017 11:04:32 GMT): sstone1 (Thu, 06 Apr 2017 11:04:53 GMT): sstone1 (Thu, 06 Apr 2017 11:05:52 GMT): paul.sitoh (Thu, 06 Apr 2017 11:06:06 GMT): sstone1 (Thu, 06 Apr 2017 11:06:33 GMT): sstone1 (Thu, 06 Apr 2017 11:07:03 GMT): paul.sitoh (Thu, 06 Apr 2017 11:09:38 GMT): paul.sitoh (Thu, 06 Apr 2017 11:09:52 GMT): paul.sitoh (Thu, 06 Apr 2017 11:10:52 GMT): sstone1 (Thu, 06 Apr 2017 11:10:57 GMT): sstone1 (Thu, 06 Apr 2017 11:11:07 GMT): paul.sitoh (Thu, 06 Apr 2017 11:11:22 GMT): sstone1 (Thu, 06 Apr 2017 11:11:41 GMT): sstone1 (Thu, 06 Apr 2017 11:11:54 GMT): sstone1 (Thu, 06 Apr 2017 11:12:35 GMT): paul.sitoh (Thu, 06 Apr 2017 11:13:26 GMT): paul.sitoh (Thu, 06 Apr 2017 11:13:26 GMT): dselman (Thu, 06 Apr 2017 11:14:38 GMT): sstone1 (Thu, 06 Apr 2017 11:14:40 GMT): sstone1 (Thu, 06 Apr 2017 11:14:46 GMT): sstone1 (Thu, 06 Apr 2017 11:15:07 GMT): sstone1 (Thu, 06 Apr 2017 11:15:32 GMT): paul.sitoh (Thu, 06 Apr 2017 11:17:41 GMT): paul.sitoh (Thu, 06 Apr 2017 11:17:59 GMT): paul.sitoh (Thu, 06 Apr 2017 11:18:57 GMT): paul.sitoh (Thu, 06 Apr 2017 11:21:58 GMT): paul.sitoh (Thu, 06 Apr 2017 11:22:12 GMT): sstone1 (Thu, 06 Apr 2017 11:27:10 GMT): paul.sitoh (Thu, 06 Apr 2017 11:27:32 GMT): sstone1 (Thu, 06 Apr 2017 11:28:28 GMT): sstone1 (Thu, 06 Apr 2017 11:28:48 GMT): tixu (Thu, 06 Apr 2017 11:34:36 GMT): yury (Thu, 06 Apr 2017 11:39:22 GMT): sstone1 (Thu, 06 Apr 2017 11:46:05 GMT): tixu (Thu, 06 Apr 2017 11:46:35 GMT): sstone1 (Thu, 06 Apr 2017 11:46:40 GMT): tixu (Thu, 06 Apr 2017 11:48:11 GMT): pospi (Thu, 06 Apr 2017 12:39:26 GMT): dselman (Thu, 06 Apr 2017 12:46:59 GMT): pospi (Thu, 06 Apr 2017 13:46:57 GMT): pospi (Thu, 06 Apr 2017 13:53:19 GMT): pospi (Thu, 06 Apr 2017 13:53:42 GMT): elisabetta (Thu, 06 Apr 2017 14:40:45 GMT): elisabetta (Thu, 06 Apr 2017 14:43:09 GMT): dselman (Thu, 06 Apr 2017 15:26:58 GMT): dselman (Thu, 06 Apr 2017 15:26:58 GMT): sstone1 (Thu, 06 Apr 2017 16:17:16 GMT): elisabetta (Thu, 06 Apr 2017 16:30:33 GMT): sstone1 (Thu, 06 Apr 2017 16:31:25 GMT): sstone1 (Thu, 06 Apr 2017 16:31:30 GMT): elisabetta (Thu, 06 Apr 2017 16:31:48 GMT): elisabetta (Thu, 06 Apr 2017 16:31:58 GMT): sstone1 (Thu, 06 Apr 2017 16:32:19 GMT): sstone1 (Thu, 06 Apr 2017 16:32:42 GMT): sstone1 (Thu, 06 Apr 2017 16:32:53 GMT): elisabetta (Thu, 06 Apr 2017 16:33:02 GMT): MikeC711 (Thu, 06 Apr 2017 16:46:51 GMT): vishwass (Thu, 06 Apr 2017 17:00:13 GMT): dselman (Thu, 06 Apr 2017 17:26:42 GMT): PraveenU (Fri, 07 Apr 2017 06:46:06 GMT): PraveenU (Fri, 07 Apr 2017 06:46:46 GMT): mychewcents (Fri, 07 Apr 2017 07:41:31 GMT): annbnn (Fri, 07 Apr 2017 12:40:11 GMT): annbnn (Fri, 07 Apr 2017 12:40:28 GMT): dselman (Fri, 07 Apr 2017 12:40:51 GMT): annbnn (Fri, 07 Apr 2017 12:41:25 GMT): annbnn (Fri, 07 Apr 2017 12:41:31 GMT): annbnn (Fri, 07 Apr 2017 12:41:42 GMT): dselman (Fri, 07 Apr 2017 12:41:49 GMT): annbnn (Fri, 07 Apr 2017 12:42:03 GMT): annbnn (Fri, 07 Apr 2017 12:42:17 GMT): annbnn (Fri, 07 Apr 2017 12:42:27 GMT): annbnn (Fri, 07 Apr 2017 12:42:33 GMT): dselman (Fri, 07 Apr 2017 12:42:37 GMT): annbnn (Fri, 07 Apr 2017 12:43:10 GMT): sstone1 (Fri, 07 Apr 2017 14:01:11 GMT): annbnn (Fri, 07 Apr 2017 14:05:30 GMT): annbnn (Fri, 07 Apr 2017 14:05:52 GMT): annbnn (Fri, 07 Apr 2017 14:06:32 GMT): annbnn (Fri, 07 Apr 2017 14:06:50 GMT): annbnn (Fri, 07 Apr 2017 14:07:01 GMT): annbnn (Fri, 07 Apr 2017 14:08:10 GMT): yongkook (Fri, 07 Apr 2017 14:09:23 GMT): sstone1 (Fri, 07 Apr 2017 14:12:15 GMT): annbnn (Fri, 07 Apr 2017 14:13:52 GMT): tennenjl (Fri, 07 Apr 2017 17:59:18 GMT): tennenjl (Fri, 07 Apr 2017 18:55:36 GMT): tennenjl (Fri, 07 Apr 2017 18:57:28 GMT): tennenjl (Fri, 07 Apr 2017 19:12:44 GMT): tennenjl (Fri, 07 Apr 2017 19:32:13 GMT): dselman (Sat, 08 Apr 2017 09:01:05 GMT): tennenjl (Sat, 08 Apr 2017 13:35:30 GMT): vishwass (Sat, 08 Apr 2017 14:24:46 GMT): vishwass (Sat, 08 Apr 2017 14:24:55 GMT): vishwass (Sat, 08 Apr 2017 14:25:20 GMT): tennenjl (Sat, 08 Apr 2017 17:06:19 GMT): ASMP (Sat, 08 Apr 2017 18:08:31 GMT): GoodFaith (Sat, 08 Apr 2017 20:23:43 GMT): vishwass (Sat, 08 Apr 2017 22:45:16 GMT): GoodFaith (Sat, 08 Apr 2017 23:18:11 GMT): GoodFaith (Sat, 08 Apr 2017 23:33:57 GMT): GoodFaith (Sat, 08 Apr 2017 23:37:35 GMT): GoodFaith (Sun, 09 Apr 2017 00:59:53 GMT): GoodFaith (Sun, 09 Apr 2017 00:59:53 GMT): GoodFaith (Sun, 09 Apr 2017 00:59:53 GMT): GoodFaith (Sun, 09 Apr 2017 00:59:53 GMT): GoodFaith (Sun, 09 Apr 2017 00:59:53 GMT): GoodFaith (Sun, 09 Apr 2017 00:59:53 GMT): GoodFaith (Sun, 09 Apr 2017 01:00:07 GMT): GoodFaith (Sun, 09 Apr 2017 01:03:36 GMT): GoodFaith (Sun, 09 Apr 2017 01:03:36 GMT): GoodFaith (Sun, 09 Apr 2017 01:03:36 GMT): GoodFaith (Sun, 09 Apr 2017 02:10:56 GMT): olazzizz (Sun, 09 Apr 2017 13:01:51 GMT): olazzizz (Sun, 09 Apr 2017 13:27:06 GMT): olazzizz (Sun, 09 Apr 2017 13:27:42 GMT): olazzizz (Sun, 09 Apr 2017 13:28:15 GMT): olazzizz (Sun, 09 Apr 2017 13:28:38 GMT): olazzizz (Sun, 09 Apr 2017 13:28:59 GMT): olazzizz (Sun, 09 Apr 2017 13:29:52 GMT): olazzizz (Sun, 09 Apr 2017 13:30:26 GMT): olazzizz (Sun, 09 Apr 2017 13:31:27 GMT): olazzizz (Sun, 09 Apr 2017 13:31:52 GMT): olazzizz (Sun, 09 Apr 2017 13:32:48 GMT): olazzizz (Sun, 09 Apr 2017 13:36:34 GMT): olazzizz (Sun, 09 Apr 2017 13:38:27 GMT): olazzizz (Sun, 09 Apr 2017 13:38:49 GMT): olazzizz (Sun, 09 Apr 2017 13:38:55 GMT): olazzizz (Sun, 09 Apr 2017 13:39:36 GMT): tennenjl (Sun, 09 Apr 2017 13:53:14 GMT): GoodFaith (Sun, 09 Apr 2017 15:39:37 GMT): olazzizz (Sun, 09 Apr 2017 17:10:00 GMT): GoodFaith (Sun, 09 Apr 2017 17:14:20 GMT): GoodFaith (Sun, 09 Apr 2017 17:14:20 GMT): olazzizz (Sun, 09 Apr 2017 17:34:35 GMT): olazzizz (Sun, 09 Apr 2017 17:34:37 GMT): GoodFaith (Sun, 09 Apr 2017 17:35:03 GMT): olazzizz (Sun, 09 Apr 2017 17:35:29 GMT): GoodFaith (Sun, 09 Apr 2017 17:40:26 GMT): GoodFaith (Sun, 09 Apr 2017 17:43:37 GMT): dselman (Sun, 09 Apr 2017 19:07:30 GMT): dselman (Sun, 09 Apr 2017 19:07:47 GMT): dselman (Sun, 09 Apr 2017 19:10:25 GMT): dselman (Sun, 09 Apr 2017 19:10:25 GMT): GoodFaith (Sun, 09 Apr 2017 19:13:37 GMT): dselman (Sun, 09 Apr 2017 20:20:38 GMT): tennenjl (Sun, 09 Apr 2017 20:49:36 GMT): dselman (Sun, 09 Apr 2017 20:58:31 GMT): tennenjl (Sun, 09 Apr 2017 20:59:07 GMT): tennenjl (Sun, 09 Apr 2017 21:52:32 GMT): dselman (Sun, 09 Apr 2017 22:32:21 GMT): tennenjl (Mon, 10 Apr 2017 01:44:22 GMT): opiepj (Mon, 10 Apr 2017 04:02:37 GMT): opiepj (Mon, 10 Apr 2017 04:03:35 GMT): opiepj (Mon, 10 Apr 2017 04:03:35 GMT): ibmamnt (Mon, 10 Apr 2017 06:27:05 GMT): ibmamnt (Mon, 10 Apr 2017 06:27:34 GMT): ibmamnt (Mon, 10 Apr 2017 06:27:44 GMT): ibmamnt (Mon, 10 Apr 2017 06:27:58 GMT): ibmamnt (Mon, 10 Apr 2017 06:28:17 GMT): ibmamnt (Mon, 10 Apr 2017 06:28:17 GMT): sandroku63 (Mon, 10 Apr 2017 08:35:45 GMT): parsilva (Mon, 10 Apr 2017 09:45:35 GMT): pospi (Mon, 10 Apr 2017 13:28:06 GMT): tennenjl (Mon, 10 Apr 2017 13:37:21 GMT): tennenjl (Mon, 10 Apr 2017 13:37:41 GMT): tennenjl (Mon, 10 Apr 2017 13:40:33 GMT): tennenjl (Mon, 10 Apr 2017 13:40:43 GMT): tennenjl (Mon, 10 Apr 2017 13:42:10 GMT): zian (Mon, 10 Apr 2017 13:57:34 GMT): annbnn (Mon, 10 Apr 2017 14:11:13 GMT): davidkel (Mon, 10 Apr 2017 14:12:17 GMT): pospi (Mon, 10 Apr 2017 14:12:28 GMT): pospi (Mon, 10 Apr 2017 14:12:46 GMT): tennenjl (Mon, 10 Apr 2017 14:12:49 GMT): duncanjw (Mon, 10 Apr 2017 14:19:44 GMT): annbnn (Mon, 10 Apr 2017 14:42:36 GMT): davidkel (Mon, 10 Apr 2017 14:51:18 GMT): davidkel (Mon, 10 Apr 2017 14:54:02 GMT): tennenjl (Mon, 10 Apr 2017 14:56:19 GMT): tennenjl (Mon, 10 Apr 2017 14:56:19 GMT): daragao (Mon, 10 Apr 2017 14:57:22 GMT): daragao (Mon, 10 Apr 2017 14:57:27 GMT): daragao (Mon, 10 Apr 2017 14:57:55 GMT): daragao (Mon, 10 Apr 2017 14:58:01 GMT): tennenjl (Mon, 10 Apr 2017 14:59:11 GMT): Jakeeyturner (Mon, 10 Apr 2017 14:59:41 GMT): daragao (Mon, 10 Apr 2017 14:59:48 GMT): daragao (Mon, 10 Apr 2017 15:00:01 GMT): daragao (Mon, 10 Apr 2017 15:00:03 GMT): daragao (Mon, 10 Apr 2017 15:00:21 GMT): daragao (Mon, 10 Apr 2017 15:01:21 GMT): Jakeeyturner (Mon, 10 Apr 2017 15:03:05 GMT): daragao (Mon, 10 Apr 2017 15:03:22 GMT): daragao (Mon, 10 Apr 2017 15:03:29 GMT): Jakeeyturner (Mon, 10 Apr 2017 15:03:31 GMT): Jakeeyturner (Mon, 10 Apr 2017 15:03:55 GMT): daragao (Mon, 10 Apr 2017 15:04:09 GMT): daragao (Mon, 10 Apr 2017 15:04:12 GMT): daragao (Mon, 10 Apr 2017 15:04:20 GMT): annbnn (Mon, 10 Apr 2017 15:05:13 GMT): Jakeeyturner (Mon, 10 Apr 2017 15:08:28 GMT): daragao (Mon, 10 Apr 2017 15:09:29 GMT): Jakeeyturner (Mon, 10 Apr 2017 15:10:21 GMT): daragao (Mon, 10 Apr 2017 15:12:56 GMT): Jakeeyturner (Mon, 10 Apr 2017 15:15:34 GMT): daragao (Mon, 10 Apr 2017 15:18:20 GMT): daragao (Mon, 10 Apr 2017 15:19:12 GMT): daragao (Mon, 10 Apr 2017 15:19:13 GMT): daragao (Mon, 10 Apr 2017 15:19:52 GMT): Jakeeyturner (Mon, 10 Apr 2017 15:21:50 GMT): achraf17 (Mon, 10 Apr 2017 15:22:41 GMT): daragao (Mon, 10 Apr 2017 15:30:12 GMT): daragao (Mon, 10 Apr 2017 15:31:42 GMT): daragao (Mon, 10 Apr 2017 15:32:00 GMT): Jakeeyturner (Mon, 10 Apr 2017 15:36:28 GMT): daragao (Mon, 10 Apr 2017 15:40:24 GMT): daragao (Mon, 10 Apr 2017 15:40:35 GMT): Jakeeyturner (Mon, 10 Apr 2017 15:42:14 GMT): daragao (Mon, 10 Apr 2017 15:43:24 GMT): tennenjl (Mon, 10 Apr 2017 15:49:07 GMT): davidkel (Mon, 10 Apr 2017 16:02:21 GMT): tennenjl (Mon, 10 Apr 2017 16:05:07 GMT): annbnn (Mon, 10 Apr 2017 16:11:20 GMT): annbnn (Mon, 10 Apr 2017 16:11:59 GMT): annbnn (Mon, 10 Apr 2017 16:12:29 GMT): Jakeeyturner (Mon, 10 Apr 2017 16:12:42 GMT): Jakeeyturner (Mon, 10 Apr 2017 16:13:09 GMT): winslet (Mon, 10 Apr 2017 16:34:10 GMT): daragao (Mon, 10 Apr 2017 16:37:33 GMT): annbnn (Mon, 10 Apr 2017 16:41:48 GMT): annbnn (Mon, 10 Apr 2017 16:42:15 GMT): annbnn (Mon, 10 Apr 2017 16:42:21 GMT): daragao (Mon, 10 Apr 2017 16:43:20 GMT): tennenjl (Mon, 10 Apr 2017 16:45:34 GMT): daragao (Mon, 10 Apr 2017 16:49:47 GMT): jtonline (Mon, 10 Apr 2017 16:56:41 GMT): daragao (Mon, 10 Apr 2017 16:58:29 GMT): jtonline (Mon, 10 Apr 2017 17:51:32 GMT): jtonline (Mon, 10 Apr 2017 18:23:00 GMT): daragao (Mon, 10 Apr 2017 18:37:42 GMT): daragao (Mon, 10 Apr 2017 18:37:42 GMT): daragao (Mon, 10 Apr 2017 18:49:41 GMT): daragao (Mon, 10 Apr 2017 18:50:59 GMT): kpsid (Mon, 10 Apr 2017 18:54:31 GMT): kpsid (Mon, 10 Apr 2017 18:56:30 GMT): kpsid (Mon, 10 Apr 2017 18:56:45 GMT): jtonline (Mon, 10 Apr 2017 18:57:59 GMT): kpsid (Mon, 10 Apr 2017 18:58:31 GMT): jtonline (Mon, 10 Apr 2017 18:58:32 GMT): kpsid (Mon, 10 Apr 2017 18:59:11 GMT): jtonline (Mon, 10 Apr 2017 19:00:00 GMT): jtonline (Mon, 10 Apr 2017 19:00:27 GMT): kpsid (Mon, 10 Apr 2017 19:00:56 GMT): jtonline (Mon, 10 Apr 2017 19:02:19 GMT): daragao (Mon, 10 Apr 2017 19:02:57 GMT): daragao (Mon, 10 Apr 2017 19:02:57 GMT): daragao (Mon, 10 Apr 2017 19:13:45 GMT): mohamoud.egal (Mon, 10 Apr 2017 19:31:33 GMT): tennenjl (Mon, 10 Apr 2017 19:37:51 GMT): tennenjl (Mon, 10 Apr 2017 19:38:25 GMT): jtonline (Mon, 10 Apr 2017 19:38:43 GMT): kpsid (Mon, 10 Apr 2017 19:40:50 GMT): jtonline (Mon, 10 Apr 2017 19:49:47 GMT): kpsid (Mon, 10 Apr 2017 19:50:01 GMT): davidkel (Mon, 10 Apr 2017 19:54:31 GMT): sstone1 (Mon, 10 Apr 2017 20:20:27 GMT): davidkel (Mon, 10 Apr 2017 20:20:44 GMT): sstone1 (Mon, 10 Apr 2017 20:21:01 GMT): tennenjl (Mon, 10 Apr 2017 20:21:26 GMT): tennenjl (Mon, 10 Apr 2017 20:22:34 GMT): tennenjl (Mon, 10 Apr 2017 20:24:01 GMT): tennenjl (Mon, 10 Apr 2017 20:24:15 GMT): sstone1 (Mon, 10 Apr 2017 20:25:12 GMT): tennenjl (Mon, 10 Apr 2017 20:32:26 GMT): tennenjl (Mon, 10 Apr 2017 20:40:11 GMT): tennenjl (Mon, 10 Apr 2017 20:53:21 GMT): tennenjl (Mon, 10 Apr 2017 21:43:36 GMT): TBK17 (Mon, 10 Apr 2017 22:01:44 GMT): mohamoud.egal (Mon, 10 Apr 2017 22:14:08 GMT): GoodFaith (Mon, 10 Apr 2017 22:21:36 GMT): davidkel (Mon, 10 Apr 2017 22:29:14 GMT): GoodFaith (Mon, 10 Apr 2017 22:51:56 GMT): GoodFaith (Mon, 10 Apr 2017 22:55:42 GMT): davidkel (Mon, 10 Apr 2017 22:55:50 GMT): davidkel (Mon, 10 Apr 2017 22:55:50 GMT): GoodFaith (Mon, 10 Apr 2017 22:56:00 GMT): davidkel (Mon, 10 Apr 2017 22:58:34 GMT): GoodFaith (Mon, 10 Apr 2017 22:58:49 GMT): davidkel (Mon, 10 Apr 2017 22:59:58 GMT): davidkel (Mon, 10 Apr 2017 22:59:58 GMT): GoodFaith (Mon, 10 Apr 2017 23:09:07 GMT): davidkel (Mon, 10 Apr 2017 23:10:11 GMT): GoodFaith (Mon, 10 Apr 2017 23:18:41 GMT): GoodFaith (Mon, 10 Apr 2017 23:24:26 GMT): AlexKim (Tue, 11 Apr 2017 01:17:18 GMT): qijianbo010 (Tue, 11 Apr 2017 02:59:25 GMT): ibmamnt (Tue, 11 Apr 2017 03:44:55 GMT): qijianbo010 (Tue, 11 Apr 2017 06:15:57 GMT): qijianbo010 (Tue, 11 Apr 2017 06:16:11 GMT): PraveenU (Tue, 11 Apr 2017 06:39:12 GMT): PraveenU (Tue, 11 Apr 2017 06:39:42 GMT): saridsa1 (Tue, 11 Apr 2017 07:02:55 GMT): saridsa1 (Tue, 11 Apr 2017 07:03:04 GMT): davidkel (Tue, 11 Apr 2017 07:30:18 GMT): qijianbo010 (Tue, 11 Apr 2017 07:31:15 GMT): davidkel (Tue, 11 Apr 2017 07:49:29 GMT): dselman (Tue, 11 Apr 2017 08:13:11 GMT): dselman (Tue, 11 Apr 2017 08:14:39 GMT): ibmamnt (Tue, 11 Apr 2017 08:14:41 GMT): dselman (Tue, 11 Apr 2017 08:16:39 GMT): dselman (Tue, 11 Apr 2017 08:17:42 GMT): dselman (Tue, 11 Apr 2017 08:27:35 GMT): dselman (Tue, 11 Apr 2017 08:27:40 GMT): dselman (Tue, 11 Apr 2017 08:28:29 GMT): daragao (Tue, 11 Apr 2017 08:28:38 GMT): daragao (Tue, 11 Apr 2017 08:28:38 GMT): dselman (Tue, 11 Apr 2017 08:29:27 GMT): jtonline (Tue, 11 Apr 2017 08:30:01 GMT): dselman (Tue, 11 Apr 2017 08:30:22 GMT): daragao (Tue, 11 Apr 2017 08:30:59 GMT): daragao (Tue, 11 Apr 2017 08:30:59 GMT): daragao (Tue, 11 Apr 2017 08:30:59 GMT): daragao (Tue, 11 Apr 2017 08:32:20 GMT): daragao (Tue, 11 Apr 2017 08:32:20 GMT): dselman (Tue, 11 Apr 2017 08:32:45 GMT): dselman (Tue, 11 Apr 2017 08:32:54 GMT): dselman (Tue, 11 Apr 2017 08:33:16 GMT): daragao (Tue, 11 Apr 2017 08:33:21 GMT): daragao (Tue, 11 Apr 2017 08:33:21 GMT): dselman (Tue, 11 Apr 2017 08:33:47 GMT): jtonline (Tue, 11 Apr 2017 08:34:49 GMT): daragao (Tue, 11 Apr 2017 08:36:40 GMT): daragao (Tue, 11 Apr 2017 08:36:46 GMT): winslet (Tue, 11 Apr 2017 08:41:38 GMT): jtonline (Tue, 11 Apr 2017 08:45:48 GMT): dselman (Tue, 11 Apr 2017 08:58:01 GMT): FlamingFlowair (Tue, 11 Apr 2017 09:18:43 GMT): PraveenU (Tue, 11 Apr 2017 09:42:38 GMT): daragao (Tue, 11 Apr 2017 10:03:07 GMT): annbnn (Tue, 11 Apr 2017 11:27:01 GMT): annbnn (Tue, 11 Apr 2017 11:27:58 GMT): gauthampamu (Tue, 11 Apr 2017 11:33:22 GMT): dselman (Tue, 11 Apr 2017 11:33:49 GMT): dselman (Tue, 11 Apr 2017 11:34:31 GMT): dselman (Tue, 11 Apr 2017 11:35:31 GMT): annbnn (Tue, 11 Apr 2017 11:45:01 GMT): dselman (Tue, 11 Apr 2017 11:49:14 GMT): dselman (Tue, 11 Apr 2017 11:49:23 GMT): dselman (Tue, 11 Apr 2017 11:50:33 GMT): dselman (Tue, 11 Apr 2017 11:51:01 GMT): annbnn (Tue, 11 Apr 2017 11:53:26 GMT): annbnn (Tue, 11 Apr 2017 11:53:27 GMT): annbnn (Tue, 11 Apr 2017 12:09:00 GMT): annbnn (Tue, 11 Apr 2017 12:09:02 GMT): annbnn (Tue, 11 Apr 2017 12:09:09 GMT): dselman (Tue, 11 Apr 2017 12:10:01 GMT): dselman (Tue, 11 Apr 2017 12:10:37 GMT): dselman (Tue, 11 Apr 2017 12:10:45 GMT): dselman (Tue, 11 Apr 2017 12:10:48 GMT): annbnn (Tue, 11 Apr 2017 12:12:23 GMT): annbnn (Tue, 11 Apr 2017 12:12:25 GMT): annbnn (Tue, 11 Apr 2017 12:12:35 GMT): dselman (Tue, 11 Apr 2017 12:16:31 GMT): dselman (Tue, 11 Apr 2017 12:16:54 GMT): sstone1 (Tue, 11 Apr 2017 12:17:17 GMT): annbnn (Tue, 11 Apr 2017 12:18:01 GMT): annbnn (Tue, 11 Apr 2017 12:18:14 GMT): sstone1 (Tue, 11 Apr 2017 12:18:22 GMT): annbnn (Tue, 11 Apr 2017 12:19:23 GMT): annbnn (Tue, 11 Apr 2017 12:19:33 GMT): annbnn (Tue, 11 Apr 2017 12:19:37 GMT): gauthampamu (Tue, 11 Apr 2017 12:20:41 GMT): annbnn (Tue, 11 Apr 2017 12:23:38 GMT): annbnn (Tue, 11 Apr 2017 12:26:14 GMT): annbnn (Tue, 11 Apr 2017 12:26:33 GMT): annbnn (Tue, 11 Apr 2017 12:31:48 GMT): annbnn (Tue, 11 Apr 2017 12:32:12 GMT): annbnn (Tue, 11 Apr 2017 12:32:18 GMT): dselman (Tue, 11 Apr 2017 12:36:04 GMT): dselman (Tue, 11 Apr 2017 12:36:29 GMT): annbnn (Tue, 11 Apr 2017 12:47:45 GMT): annbnn (Tue, 11 Apr 2017 12:47:51 GMT): annbnn (Tue, 11 Apr 2017 12:59:44 GMT): daragao (Tue, 11 Apr 2017 13:15:18 GMT): daragao (Tue, 11 Apr 2017 13:15:18 GMT): daragao (Tue, 11 Apr 2017 13:15:53 GMT): daragao (Tue, 11 Apr 2017 13:35:08 GMT): jdockter (Tue, 11 Apr 2017 13:44:48 GMT): sstone1 (Tue, 11 Apr 2017 14:15:25 GMT): sstone1 (Tue, 11 Apr 2017 14:16:16 GMT): jdockter (Tue, 11 Apr 2017 14:28:12 GMT): timblankers (Tue, 11 Apr 2017 15:18:10 GMT): sbrakev (Tue, 11 Apr 2017 16:11:52 GMT): sbrakev (Tue, 11 Apr 2017 16:12:02 GMT): sbrakev (Tue, 11 Apr 2017 16:12:17 GMT): sstone1 (Tue, 11 Apr 2017 16:13:24 GMT): sstone1 (Tue, 11 Apr 2017 16:13:41 GMT): sbrakev (Tue, 11 Apr 2017 16:13:55 GMT): sbrakev (Tue, 11 Apr 2017 16:14:00 GMT): sbrakev (Tue, 11 Apr 2017 16:14:22 GMT): sstone1 (Tue, 11 Apr 2017 16:14:44 GMT): sbrakev (Tue, 11 Apr 2017 16:14:59 GMT): sbrakev (Tue, 11 Apr 2017 16:15:26 GMT): sstone1 (Tue, 11 Apr 2017 16:16:00 GMT): dselman (Tue, 11 Apr 2017 16:16:14 GMT): sstone1 (Tue, 11 Apr 2017 16:16:27 GMT): sstone1 (Tue, 11 Apr 2017 16:16:33 GMT): dselman (Tue, 11 Apr 2017 16:17:04 GMT): sstone1 (Tue, 11 Apr 2017 16:17:20 GMT): dselman (Tue, 11 Apr 2017 16:17:46 GMT): EdMoffatt (Tue, 11 Apr 2017 16:26:50 GMT): davidkel (Tue, 11 Apr 2017 16:27:11 GMT): eliranibm (Tue, 11 Apr 2017 16:32:07 GMT): eliranibm (Tue, 11 Apr 2017 16:32:35 GMT): eliranibm (Tue, 11 Apr 2017 16:32:55 GMT): daragao (Tue, 11 Apr 2017 16:41:50 GMT): jdockter (Tue, 11 Apr 2017 16:48:29 GMT): sbrakev (Tue, 11 Apr 2017 17:03:27 GMT): sbrakev (Tue, 11 Apr 2017 17:03:38 GMT): sbrakev (Tue, 11 Apr 2017 17:03:42 GMT): gauthampamu (Tue, 11 Apr 2017 17:27:47 GMT): gauthampamu (Tue, 11 Apr 2017 17:28:09 GMT): gauthampamu (Tue, 11 Apr 2017 17:28:55 GMT): gauthampamu (Tue, 11 Apr 2017 17:32:56 GMT): eliranibm (Tue, 11 Apr 2017 17:33:09 GMT): gauthampamu (Tue, 11 Apr 2017 17:33:13 GMT): gauthampamu (Tue, 11 Apr 2017 17:33:21 GMT): eliranibm (Tue, 11 Apr 2017 17:33:35 GMT): gauthampamu (Tue, 11 Apr 2017 17:33:40 GMT): gauthampamu (Tue, 11 Apr 2017 17:34:12 GMT): gauthampamu (Tue, 11 Apr 2017 17:34:54 GMT): Lin-YiTang (Tue, 11 Apr 2017 21:19:43 GMT): GoodFaith (Wed, 12 Apr 2017 02:01:55 GMT): GoodFaith (Wed, 12 Apr 2017 02:01:55 GMT): MikeC711 (Wed, 12 Apr 2017 02:04:58 GMT): MikeC711 (Wed, 12 Apr 2017 02:06:55 GMT): MikeC711 (Wed, 12 Apr 2017 02:10:11 GMT): GoodFaith (Wed, 12 Apr 2017 02:15:32 GMT): GoodFaith (Wed, 12 Apr 2017 02:15:32 GMT): GoodFaith (Wed, 12 Apr 2017 02:21:32 GMT): MikeC711 (Wed, 12 Apr 2017 02:23:31 GMT): abcoathup (Wed, 12 Apr 2017 04:31:48 GMT): abcoathup (Wed, 12 Apr 2017 04:35:31 GMT): abcoathup (Wed, 12 Apr 2017 04:37:16 GMT): abcoathup (Wed, 12 Apr 2017 06:53:05 GMT): uber.twin (Wed, 12 Apr 2017 07:37:35 GMT): uber.twin (Wed, 12 Apr 2017 07:39:22 GMT): davidkel (Wed, 12 Apr 2017 09:03:58 GMT): saridsa1 (Wed, 12 Apr 2017 09:06:35 GMT): dselman (Wed, 12 Apr 2017 09:09:01 GMT): dselman (Wed, 12 Apr 2017 09:11:03 GMT): saridsa1 (Wed, 12 Apr 2017 09:11:54 GMT): saridsa1 (Wed, 12 Apr 2017 09:13:17 GMT): uber.twin (Wed, 12 Apr 2017 09:21:26 GMT): uber.twin (Wed, 12 Apr 2017 09:21:29 GMT): saridsa1 (Wed, 12 Apr 2017 09:30:59 GMT): annbnn (Wed, 12 Apr 2017 09:33:53 GMT): annbnn (Wed, 12 Apr 2017 09:33:53 GMT): annbnn (Wed, 12 Apr 2017 09:33:54 GMT): annbnn (Wed, 12 Apr 2017 09:33:54 GMT): annbnn (Wed, 12 Apr 2017 09:33:54 GMT): annbnn (Wed, 12 Apr 2017 09:35:42 GMT): dselman (Wed, 12 Apr 2017 09:36:02 GMT): annbnn (Wed, 12 Apr 2017 09:37:50 GMT): dselman (Wed, 12 Apr 2017 09:37:52 GMT): dselman (Wed, 12 Apr 2017 09:39:33 GMT): dselman (Wed, 12 Apr 2017 09:39:55 GMT): dselman (Wed, 12 Apr 2017 09:40:25 GMT): annbnn (Wed, 12 Apr 2017 09:41:53 GMT): annbnn (Wed, 12 Apr 2017 09:44:00 GMT): annbnn (Wed, 12 Apr 2017 09:45:03 GMT): annbnn (Wed, 12 Apr 2017 09:45:17 GMT): annbnn (Wed, 12 Apr 2017 09:46:00 GMT): annbnn (Wed, 12 Apr 2017 09:46:16 GMT): annbnn (Wed, 12 Apr 2017 09:46:41 GMT): dselman (Wed, 12 Apr 2017 10:02:32 GMT): dselman (Wed, 12 Apr 2017 10:03:21 GMT): dselman (Wed, 12 Apr 2017 10:04:11 GMT): annbnn (Wed, 12 Apr 2017 10:09:51 GMT): annbnn (Wed, 12 Apr 2017 10:09:56 GMT): dselman (Wed, 12 Apr 2017 10:10:21 GMT): annbnn (Wed, 12 Apr 2017 10:13:24 GMT): annbnn (Wed, 12 Apr 2017 10:13:37 GMT): dselman (Wed, 12 Apr 2017 10:15:02 GMT): annbnn (Wed, 12 Apr 2017 10:15:17 GMT): uber.twin (Wed, 12 Apr 2017 11:36:52 GMT): uber.twin (Wed, 12 Apr 2017 11:39:21 GMT): MikeC711 (Wed, 12 Apr 2017 12:17:56 GMT): MikeC711 (Wed, 12 Apr 2017 12:25:42 GMT): davidkel (Wed, 12 Apr 2017 12:32:50 GMT): dselman (Wed, 12 Apr 2017 15:07:40 GMT): dselman (Wed, 12 Apr 2017 15:43:23 GMT): GoodFaith (Wed, 12 Apr 2017 16:00:21 GMT): GoodFaith (Wed, 12 Apr 2017 16:00:21 GMT): dselman (Wed, 12 Apr 2017 16:13:47 GMT): dselman (Wed, 12 Apr 2017 16:14:02 GMT): MikeC711 (Wed, 12 Apr 2017 16:25:51 GMT): MikeC711 (Wed, 12 Apr 2017 16:35:00 GMT): MikeC711 (Wed, 12 Apr 2017 16:49:14 GMT): uber.twin (Wed, 12 Apr 2017 17:49:14 GMT): daragao (Wed, 12 Apr 2017 18:19:47 GMT): daragao (Wed, 12 Apr 2017 18:19:47 GMT): dselman (Wed, 12 Apr 2017 18:24:44 GMT): dselman (Wed, 12 Apr 2017 18:25:52 GMT): dselman (Wed, 12 Apr 2017 18:27:03 GMT): dselman (Wed, 12 Apr 2017 18:30:45 GMT): daragao (Wed, 12 Apr 2017 18:37:13 GMT): daragao (Wed, 12 Apr 2017 18:40:30 GMT): daragao (Wed, 12 Apr 2017 18:40:30 GMT): gauthampamu (Wed, 12 Apr 2017 19:31:06 GMT): dselman (Wed, 12 Apr 2017 19:38:50 GMT): dselman (Wed, 12 Apr 2017 19:39:04 GMT): dselman (Wed, 12 Apr 2017 19:39:38 GMT): dselman (Wed, 12 Apr 2017 19:39:55 GMT): dselman (Wed, 12 Apr 2017 19:40:12 GMT): daragao (Wed, 12 Apr 2017 23:00:49 GMT): daragao (Wed, 12 Apr 2017 23:00:49 GMT): daragao (Wed, 12 Apr 2017 23:00:55 GMT): kouohhashi (Thu, 13 Apr 2017 00:06:06 GMT): kouohhashi (Thu, 13 Apr 2017 00:06:06 GMT): GoodFaith (Thu, 13 Apr 2017 01:18:24 GMT): GoodFaith (Thu, 13 Apr 2017 01:18:24 GMT): MikeC711 (Thu, 13 Apr 2017 01:18:51 GMT): dselman (Thu, 13 Apr 2017 05:28:55 GMT): dselman (Thu, 13 Apr 2017 05:29:50 GMT): dselman (Thu, 13 Apr 2017 05:30:12 GMT): daragao (Thu, 13 Apr 2017 07:03:18 GMT): xixuejia (Thu, 13 Apr 2017 07:41:22 GMT): medlahbib (Thu, 13 Apr 2017 08:08:39 GMT): sclczk (Thu, 13 Apr 2017 08:13:05 GMT): georgeormrod@gmail.com (Thu, 13 Apr 2017 09:11:19 GMT): somashekarn (Thu, 13 Apr 2017 09:14:16 GMT): dselman (Thu, 13 Apr 2017 10:30:53 GMT): xixuejia (Thu, 13 Apr 2017 10:31:22 GMT): dselman (Thu, 13 Apr 2017 10:32:10 GMT): dselman (Thu, 13 Apr 2017 10:32:28 GMT): dselman (Thu, 13 Apr 2017 10:32:48 GMT): dselman (Thu, 13 Apr 2017 10:33:48 GMT): dselman (Thu, 13 Apr 2017 10:35:35 GMT): MikeC711 (Thu, 13 Apr 2017 12:38:46 GMT): MikeC711 (Thu, 13 Apr 2017 12:49:58 GMT): uber.twin (Thu, 13 Apr 2017 14:10:49 GMT): robertbrown (Thu, 13 Apr 2017 14:19:55 GMT): EdMoffatt (Thu, 13 Apr 2017 14:31:54 GMT): EdMoffatt (Thu, 13 Apr 2017 16:02:02 GMT): EdMoffatt (Thu, 13 Apr 2017 16:02:31 GMT): RJackson1234 (Thu, 13 Apr 2017 16:04:57 GMT): davidkel (Thu, 13 Apr 2017 16:22:24 GMT): davidkel (Thu, 13 Apr 2017 16:22:24 GMT): gauthampamu (Thu, 13 Apr 2017 16:29:17 GMT): gauthampamu (Thu, 13 Apr 2017 16:29:19 GMT): gauthampamu (Thu, 13 Apr 2017 16:31:05 GMT): gauthampamu (Thu, 13 Apr 2017 16:31:16 GMT): gauthampamu (Thu, 13 Apr 2017 16:31:25 GMT): gauthampamu (Thu, 13 Apr 2017 16:39:47 GMT): gauthampamu (Thu, 13 Apr 2017 16:39:49 GMT): davidkel (Thu, 13 Apr 2017 16:48:41 GMT): davidkel (Thu, 13 Apr 2017 16:50:03 GMT): EdMoffatt (Thu, 13 Apr 2017 16:53:40 GMT): dselman (Thu, 13 Apr 2017 17:09:37 GMT): dselman (Thu, 13 Apr 2017 17:09:47 GMT): gauthampamu (Thu, 13 Apr 2017 17:33:46 GMT): gauthampamu (Thu, 13 Apr 2017 17:43:18 GMT): gauthampamu (Thu, 13 Apr 2017 17:43:38 GMT): gauthampamu (Thu, 13 Apr 2017 17:43:56 GMT): gauthampamu (Thu, 13 Apr 2017 17:44:32 GMT): gauthampamu (Thu, 13 Apr 2017 17:46:30 GMT): giridharg (Thu, 13 Apr 2017 17:50:07 GMT): feronti (Thu, 13 Apr 2017 18:00:54 GMT): jdockter (Thu, 13 Apr 2017 18:44:55 GMT): jdockter (Thu, 13 Apr 2017 18:45:44 GMT): eliranbi (Thu, 13 Apr 2017 18:53:25 GMT): eliranbi (Thu, 13 Apr 2017 18:54:09 GMT): eliranbi (Thu, 13 Apr 2017 18:54:34 GMT): dselman (Thu, 13 Apr 2017 21:19:28 GMT): dselman (Thu, 13 Apr 2017 21:19:50 GMT): assasinx93 (Thu, 13 Apr 2017 23:18:13 GMT): assasinx93 (Thu, 13 Apr 2017 23:19:03 GMT): MikeC711 (Fri, 14 Apr 2017 01:20:34 GMT): MikeC711 (Fri, 14 Apr 2017 01:21:03 GMT): MikeC711 (Fri, 14 Apr 2017 01:21:03 GMT): MikeC711 (Fri, 14 Apr 2017 01:21:24 GMT): xixuejia (Fri, 14 Apr 2017 01:34:38 GMT): xixuejia (Fri, 14 Apr 2017 01:34:38 GMT): davidkel (Fri, 14 Apr 2017 08:07:32 GMT): davidkel (Fri, 14 Apr 2017 08:10:57 GMT): davidkel (Fri, 14 Apr 2017 08:12:51 GMT): davidkel (Fri, 14 Apr 2017 08:12:51 GMT): dselman (Fri, 14 Apr 2017 08:20:12 GMT): xixuejia (Fri, 14 Apr 2017 08:22:47 GMT): dselman (Fri, 14 Apr 2017 08:25:58 GMT): xixuejia (Fri, 14 Apr 2017 08:27:20 GMT): xixuejia (Fri, 14 Apr 2017 09:06:47 GMT): xixuejia (Fri, 14 Apr 2017 09:06:52 GMT): sstone1 (Fri, 14 Apr 2017 09:12:08 GMT): xixuejia (Fri, 14 Apr 2017 09:13:14 GMT): sstone1 (Fri, 14 Apr 2017 09:13:46 GMT): sstone1 (Fri, 14 Apr 2017 09:13:46 GMT): sstone1 (Fri, 14 Apr 2017 09:14:19 GMT): xixuejia (Fri, 14 Apr 2017 09:14:47 GMT): sstone1 (Fri, 14 Apr 2017 09:14:55 GMT): gauthampamu (Fri, 14 Apr 2017 12:05:04 GMT): MikeC711 (Fri, 14 Apr 2017 12:33:17 GMT): dselman (Fri, 14 Apr 2017 12:45:43 GMT): dselman (Fri, 14 Apr 2017 12:45:43 GMT): dselman (Fri, 14 Apr 2017 12:56:24 GMT): davidkel (Fri, 14 Apr 2017 14:14:07 GMT): MikeC711 (Fri, 14 Apr 2017 16:08:08 GMT): assasinx93 (Fri, 14 Apr 2017 16:30:10 GMT): sstone1 (Fri, 14 Apr 2017 16:30:44 GMT): sstone1 (Fri, 14 Apr 2017 16:30:55 GMT): sstone1 (Fri, 14 Apr 2017 16:32:59 GMT): sstone1 (Fri, 14 Apr 2017 16:33:17 GMT): assasinx93 (Fri, 14 Apr 2017 16:35:43 GMT): sstone1 (Fri, 14 Apr 2017 16:37:23 GMT): sstone1 (Fri, 14 Apr 2017 16:38:08 GMT): sstone1 (Fri, 14 Apr 2017 16:38:53 GMT): sstone1 (Fri, 14 Apr 2017 16:39:51 GMT): assasinx93 (Fri, 14 Apr 2017 17:02:12 GMT): kletkeman (Fri, 14 Apr 2017 18:47:56 GMT): kletkeman (Fri, 14 Apr 2017 18:50:31 GMT): sstone1 (Fri, 14 Apr 2017 19:33:58 GMT): sstone1 (Fri, 14 Apr 2017 19:34:57 GMT): sstone1 (Fri, 14 Apr 2017 19:34:57 GMT): sstone1 (Fri, 14 Apr 2017 19:36:12 GMT): sstone1 (Fri, 14 Apr 2017 19:37:42 GMT): alys (Fri, 14 Apr 2017 23:07:10 GMT): GoodFaith (Sat, 15 Apr 2017 05:58:11 GMT): dselman (Sat, 15 Apr 2017 06:03:19 GMT): dselman (Sat, 15 Apr 2017 06:05:16 GMT): GoodFaith (Sat, 15 Apr 2017 06:08:16 GMT): GoodFaith (Sat, 15 Apr 2017 06:11:05 GMT): dselman (Sat, 15 Apr 2017 06:13:45 GMT): mohamoud.egal (Sat, 15 Apr 2017 17:53:24 GMT): sstone1 (Sat, 15 Apr 2017 17:53:49 GMT): sstone1 (Sat, 15 Apr 2017 17:53:59 GMT): mohamoud.egal (Sat, 15 Apr 2017 18:00:37 GMT): sstone1 (Sat, 15 Apr 2017 18:01:50 GMT): mohamoud.egal (Sat, 15 Apr 2017 18:02:15 GMT): MikeC711 (Sat, 15 Apr 2017 18:03:42 GMT): mohamoud.egal (Sat, 15 Apr 2017 18:04:07 GMT): mohamoud.egal (Sat, 15 Apr 2017 18:04:16 GMT): sstone1 (Sat, 15 Apr 2017 18:06:06 GMT): sstone1 (Sat, 15 Apr 2017 18:06:23 GMT): sstone1 (Sat, 15 Apr 2017 18:08:56 GMT): MikeC711 (Sat, 15 Apr 2017 18:11:17 GMT): sstone1 (Sat, 15 Apr 2017 18:11:56 GMT): sstone1 (Sat, 15 Apr 2017 18:14:02 GMT): MikeC711 (Sat, 15 Apr 2017 18:34:50 GMT): sstone1 (Sat, 15 Apr 2017 18:38:02 GMT): sstone1 (Sat, 15 Apr 2017 18:38:11 GMT): MikeC711 (Sat, 15 Apr 2017 18:39:52 GMT): MikeC711 (Sat, 15 Apr 2017 18:40:28 GMT): sstone1 (Sat, 15 Apr 2017 18:40:54 GMT): sstone1 (Sat, 15 Apr 2017 18:41:12 GMT): MikeC711 (Sat, 15 Apr 2017 18:42:32 GMT): MikeC711 (Sat, 15 Apr 2017 18:58:50 GMT): kletkeman (Sat, 15 Apr 2017 19:02:38 GMT): sstone1 (Sat, 15 Apr 2017 19:02:54 GMT): kletkeman (Sat, 15 Apr 2017 19:03:30 GMT): sstone1 (Sat, 15 Apr 2017 19:05:35 GMT): kletkeman (Sat, 15 Apr 2017 19:06:13 GMT): sstone1 (Sat, 15 Apr 2017 19:06:19 GMT): sstone1 (Sat, 15 Apr 2017 19:06:35 GMT): kletkeman (Sat, 15 Apr 2017 19:06:48 GMT): sstone1 (Sat, 15 Apr 2017 19:08:54 GMT): davidkel (Sat, 15 Apr 2017 22:41:19 GMT): davidkel (Sat, 15 Apr 2017 22:41:19 GMT): davidkel (Sat, 15 Apr 2017 22:41:19 GMT): davidkel (Sat, 15 Apr 2017 22:41:19 GMT): ztanaka1971 (Sat, 15 Apr 2017 22:47:19 GMT): davidkel (Sat, 15 Apr 2017 22:51:49 GMT): ztanaka1971 (Sat, 15 Apr 2017 23:04:56 GMT): ztanaka1971 (Sat, 15 Apr 2017 23:05:55 GMT): ztanaka1971 (Sat, 15 Apr 2017 23:10:59 GMT): davidkel (Sat, 15 Apr 2017 23:13:58 GMT): GoodFaith (Sun, 16 Apr 2017 00:57:51 GMT): GoodFaith (Sun, 16 Apr 2017 00:57:51 GMT): mohamoud.egal (Sun, 16 Apr 2017 01:33:59 GMT): mohamoud.egal (Sun, 16 Apr 2017 01:45:35 GMT): sstone1 (Sun, 16 Apr 2017 07:23:34 GMT): sstone1 (Sun, 16 Apr 2017 07:33:22 GMT): sstone1 (Sun, 16 Apr 2017 07:33:46 GMT): sstone1 (Sun, 16 Apr 2017 07:53:34 GMT): ztanaka1971 (Sun, 16 Apr 2017 08:59:29 GMT): ztanaka1971 (Sun, 16 Apr 2017 10:24:56 GMT): Dpkkmr (Sun, 16 Apr 2017 14:54:08 GMT): adeelqureshi (Sun, 16 Apr 2017 17:19:09 GMT): mohamoud.egal (Sun, 16 Apr 2017 22:18:06 GMT): mohamoud.egal (Sun, 16 Apr 2017 22:53:31 GMT): rogeriofza (Sun, 16 Apr 2017 22:58:58 GMT): mohamoud.egal (Sun, 16 Apr 2017 23:20:40 GMT): ShachiSharma (Mon, 17 Apr 2017 04:53:34 GMT): sstone1 (Mon, 17 Apr 2017 08:33:59 GMT): gauthampamu (Mon, 17 Apr 2017 12:38:00 GMT): gauthampamu (Mon, 17 Apr 2017 12:52:59 GMT): gauthampamu (Mon, 17 Apr 2017 12:56:35 GMT): gauthampamu (Mon, 17 Apr 2017 12:57:56 GMT): davidkel (Mon, 17 Apr 2017 13:24:15 GMT): gauthampamu (Mon, 17 Apr 2017 13:26:27 GMT): davidkel (Mon, 17 Apr 2017 13:27:12 GMT): gauthampamu (Mon, 17 Apr 2017 13:27:57 GMT): gauthampamu (Mon, 17 Apr 2017 13:28:43 GMT): gauthampamu (Mon, 17 Apr 2017 13:29:41 GMT): gauthampamu (Mon, 17 Apr 2017 13:30:03 GMT): davidkel (Mon, 17 Apr 2017 13:31:18 GMT): gauthampamu (Mon, 17 Apr 2017 13:31:53 GMT): gauthampamu (Mon, 17 Apr 2017 13:31:53 GMT): gauthampamu (Mon, 17 Apr 2017 13:44:13 GMT): gauthampamu (Mon, 17 Apr 2017 13:44:15 GMT): gauthampamu (Mon, 17 Apr 2017 14:47:06 GMT): davidkel (Mon, 17 Apr 2017 15:10:15 GMT): tennenjl (Mon, 17 Apr 2017 15:34:18 GMT): tennenjl (Mon, 17 Apr 2017 17:01:23 GMT): mohamoud.egal (Mon, 17 Apr 2017 17:11:48 GMT): gauthampamu (Mon, 17 Apr 2017 17:22:27 GMT): sstone1 (Mon, 17 Apr 2017 17:33:28 GMT): sstone1 (Mon, 17 Apr 2017 17:33:55 GMT): sstone1 (Mon, 17 Apr 2017 17:34:22 GMT): tennenjl (Mon, 17 Apr 2017 17:35:37 GMT): tennenjl (Mon, 17 Apr 2017 17:36:04 GMT): sstone1 (Mon, 17 Apr 2017 17:36:17 GMT): sstone1 (Mon, 17 Apr 2017 17:37:00 GMT): sstone1 (Mon, 17 Apr 2017 17:38:09 GMT): tennenjl (Mon, 17 Apr 2017 17:40:55 GMT): sstone1 (Mon, 17 Apr 2017 17:42:26 GMT): sstone1 (Mon, 17 Apr 2017 17:43:40 GMT): tennenjl (Mon, 17 Apr 2017 17:44:34 GMT): tennenjl (Mon, 17 Apr 2017 17:44:43 GMT): sstone1 (Mon, 17 Apr 2017 17:46:04 GMT): tennenjl (Mon, 17 Apr 2017 17:46:42 GMT): sstone1 (Mon, 17 Apr 2017 17:46:46 GMT): jwalt (Mon, 17 Apr 2017 18:06:55 GMT): sstone1 (Mon, 17 Apr 2017 18:10:06 GMT): sstone1 (Mon, 17 Apr 2017 18:10:26 GMT): sstone1 (Mon, 17 Apr 2017 18:10:34 GMT): jwalt (Mon, 17 Apr 2017 18:12:02 GMT): rogeriofza (Mon, 17 Apr 2017 20:40:31 GMT): dselman (Mon, 17 Apr 2017 20:51:49 GMT): dselman (Mon, 17 Apr 2017 20:52:29 GMT): rogeriofza (Mon, 17 Apr 2017 21:42:44 GMT): rogeriofza (Mon, 17 Apr 2017 21:43:59 GMT): jagan91 (Tue, 18 Apr 2017 02:57:11 GMT): mohamoud.egal (Tue, 18 Apr 2017 04:26:10 GMT): mohamoud.egal (Tue, 18 Apr 2017 04:27:09 GMT): sstone1 (Tue, 18 Apr 2017 05:30:19 GMT): sstone1 (Tue, 18 Apr 2017 05:31:28 GMT): pospi (Tue, 18 Apr 2017 06:24:22 GMT): dselman (Tue, 18 Apr 2017 07:01:43 GMT): dselman (Tue, 18 Apr 2017 07:01:43 GMT): sstone1 (Tue, 18 Apr 2017 07:17:23 GMT): pospi (Tue, 18 Apr 2017 07:43:21 GMT): pospi (Tue, 18 Apr 2017 07:44:10 GMT): sstone1 (Tue, 18 Apr 2017 07:45:38 GMT): pospi (Tue, 18 Apr 2017 07:58:45 GMT): gauthampamu (Tue, 18 Apr 2017 12:52:26 GMT): vinitesh (Tue, 18 Apr 2017 14:21:14 GMT): sstone1 (Tue, 18 Apr 2017 14:23:29 GMT): sstone1 (Tue, 18 Apr 2017 14:23:53 GMT): gauthampamu (Tue, 18 Apr 2017 14:24:04 GMT): vinitesh (Tue, 18 Apr 2017 14:24:39 GMT): allenc2016 (Tue, 18 Apr 2017 14:30:17 GMT): sstone1 (Tue, 18 Apr 2017 14:33:09 GMT): allenc2016 (Tue, 18 Apr 2017 14:41:56 GMT): jorgedr (Tue, 18 Apr 2017 14:56:19 GMT): sstone1 (Tue, 18 Apr 2017 14:57:52 GMT): jdockter (Tue, 18 Apr 2017 15:35:36 GMT): jdockter (Tue, 18 Apr 2017 15:35:36 GMT): dselman (Tue, 18 Apr 2017 16:41:21 GMT): dselman (Tue, 18 Apr 2017 16:41:59 GMT): dselman (Tue, 18 Apr 2017 16:42:42 GMT): jdockter (Tue, 18 Apr 2017 16:50:16 GMT): dselman (Tue, 18 Apr 2017 16:50:36 GMT): dselman (Tue, 18 Apr 2017 16:51:29 GMT): jdockter (Tue, 18 Apr 2017 16:53:57 GMT): mohamoud.egal (Tue, 18 Apr 2017 17:12:01 GMT): mohamoud.egal (Tue, 18 Apr 2017 17:12:07 GMT): dselman (Tue, 18 Apr 2017 17:12:55 GMT): mohamoud.egal (Tue, 18 Apr 2017 17:13:13 GMT): mohamoud.egal (Tue, 18 Apr 2017 17:14:01 GMT): dselman (Tue, 18 Apr 2017 17:14:29 GMT): dselman (Tue, 18 Apr 2017 17:14:49 GMT): mohamoud.egal (Tue, 18 Apr 2017 17:17:51 GMT): dselman (Tue, 18 Apr 2017 17:18:04 GMT): dselman (Tue, 18 Apr 2017 17:18:20 GMT): mohamoud.egal (Tue, 18 Apr 2017 17:25:49 GMT): jdockter (Tue, 18 Apr 2017 17:26:52 GMT): dselman (Tue, 18 Apr 2017 17:32:39 GMT): davidkel (Tue, 18 Apr 2017 17:34:15 GMT): davidkel (Tue, 18 Apr 2017 17:35:25 GMT): davidkel (Tue, 18 Apr 2017 17:35:25 GMT): jdockter (Tue, 18 Apr 2017 17:41:46 GMT): Suma (Tue, 18 Apr 2017 17:48:14 GMT): davidkel (Tue, 18 Apr 2017 18:01:48 GMT): Suma (Tue, 18 Apr 2017 18:12:54 GMT): Suma (Tue, 18 Apr 2017 18:13:31 GMT): sstone1 (Tue, 18 Apr 2017 18:18:52 GMT): sstone1 (Tue, 18 Apr 2017 18:19:03 GMT): davidkel (Tue, 18 Apr 2017 18:37:43 GMT): Suma (Tue, 18 Apr 2017 18:42:51 GMT): davidkel (Tue, 18 Apr 2017 19:00:09 GMT): Suma (Tue, 18 Apr 2017 19:01:53 GMT): Suma (Tue, 18 Apr 2017 19:01:59 GMT): Suma (Tue, 18 Apr 2017 19:02:18 GMT): Suma (Tue, 18 Apr 2017 19:02:38 GMT): davidkel (Tue, 18 Apr 2017 19:12:52 GMT): Suma (Tue, 18 Apr 2017 20:17:01 GMT): gromeroar (Tue, 18 Apr 2017 20:21:51 GMT): davidkel (Tue, 18 Apr 2017 20:55:24 GMT): sstone1 (Tue, 18 Apr 2017 21:03:36 GMT): Suma (Tue, 18 Apr 2017 22:16:50 GMT): Suma (Tue, 18 Apr 2017 22:18:00 GMT): Suma (Tue, 18 Apr 2017 22:18:22 GMT): Suma (Tue, 18 Apr 2017 22:21:00 GMT): Suma (Tue, 18 Apr 2017 22:21:03 GMT): Suma (Tue, 18 Apr 2017 22:22:29 GMT): davidkel (Tue, 18 Apr 2017 22:28:12 GMT): Suma (Tue, 18 Apr 2017 22:29:01 GMT): Suma (Tue, 18 Apr 2017 22:29:10 GMT): tennenjl (Wed, 19 Apr 2017 00:10:47 GMT): tennenjl (Wed, 19 Apr 2017 00:10:47 GMT): MikeC711 (Wed, 19 Apr 2017 00:44:19 GMT): dselman (Wed, 19 Apr 2017 05:14:43 GMT): dselman (Wed, 19 Apr 2017 05:17:25 GMT): pospi (Wed, 19 Apr 2017 07:03:19 GMT): pospi (Wed, 19 Apr 2017 07:15:42 GMT): dselman (Wed, 19 Apr 2017 09:45:24 GMT): tennenjl (Wed, 19 Apr 2017 13:37:07 GMT): dselman (Wed, 19 Apr 2017 13:38:08 GMT): tennenjl (Wed, 19 Apr 2017 13:38:47 GMT): Suma (Wed, 19 Apr 2017 14:22:25 GMT): dselman (Wed, 19 Apr 2017 14:31:08 GMT): dselman (Wed, 19 Apr 2017 14:31:23 GMT): Suma (Wed, 19 Apr 2017 14:31:35 GMT): jorgedr (Wed, 19 Apr 2017 15:02:09 GMT): 14gracel (Wed, 19 Apr 2017 15:04:11 GMT): jorgedr (Wed, 19 Apr 2017 15:04:21 GMT): sstone1 (Wed, 19 Apr 2017 15:05:09 GMT): sstone1 (Wed, 19 Apr 2017 15:05:14 GMT): jorgedr (Wed, 19 Apr 2017 15:06:45 GMT): jorgedr (Wed, 19 Apr 2017 15:07:40 GMT): jorgedr (Wed, 19 Apr 2017 15:07:40 GMT): jorgedr (Wed, 19 Apr 2017 15:07:40 GMT): sstone1 (Wed, 19 Apr 2017 15:11:56 GMT): jorgedr (Wed, 19 Apr 2017 15:35:39 GMT): dselman (Wed, 19 Apr 2017 15:40:21 GMT): mbwhite (Wed, 19 Apr 2017 15:54:23 GMT): sstone1 (Wed, 19 Apr 2017 15:56:37 GMT): sstone1 (Wed, 19 Apr 2017 15:56:42 GMT): jorgedr (Wed, 19 Apr 2017 15:58:54 GMT): sstone1 (Wed, 19 Apr 2017 15:59:15 GMT): sstone1 (Wed, 19 Apr 2017 15:59:26 GMT): jinvanstee (Wed, 19 Apr 2017 17:24:29 GMT): omkardash (Wed, 19 Apr 2017 17:26:37 GMT): jinvanstee (Wed, 19 Apr 2017 17:28:47 GMT): MikeMayori (Wed, 19 Apr 2017 18:13:29 GMT): vinitesh (Wed, 19 Apr 2017 18:21:21 GMT): davidkel (Wed, 19 Apr 2017 18:32:28 GMT): jinvanstee (Wed, 19 Apr 2017 18:32:33 GMT): jinvanstee (Wed, 19 Apr 2017 18:32:34 GMT): jinvanstee (Wed, 19 Apr 2017 18:32:42 GMT): jinvanstee (Wed, 19 Apr 2017 18:33:04 GMT): AlexKim (Wed, 19 Apr 2017 18:38:19 GMT): AlexKim (Wed, 19 Apr 2017 18:38:22 GMT): tennenjl (Wed, 19 Apr 2017 18:42:07 GMT): tennenjl (Wed, 19 Apr 2017 18:42:07 GMT): sstone1 (Wed, 19 Apr 2017 18:53:39 GMT): sstone1 (Wed, 19 Apr 2017 18:54:27 GMT): jinvanstee (Wed, 19 Apr 2017 18:56:17 GMT): AlexKim (Wed, 19 Apr 2017 18:56:26 GMT): sstone1 (Wed, 19 Apr 2017 18:58:04 GMT): sstone1 (Wed, 19 Apr 2017 18:58:24 GMT): jinvanstee (Wed, 19 Apr 2017 18:59:42 GMT): jinvanstee (Wed, 19 Apr 2017 18:59:51 GMT): jinvanstee (Wed, 19 Apr 2017 19:00:30 GMT): sstone1 (Wed, 19 Apr 2017 19:02:12 GMT): jinvanstee (Wed, 19 Apr 2017 19:02:31 GMT): sstone1 (Wed, 19 Apr 2017 19:02:47 GMT): jinvanstee (Wed, 19 Apr 2017 19:02:47 GMT): jinvanstee (Wed, 19 Apr 2017 19:02:58 GMT): sstone1 (Wed, 19 Apr 2017 19:03:17 GMT): sstone1 (Wed, 19 Apr 2017 19:03:39 GMT): sstone1 (Wed, 19 Apr 2017 19:03:58 GMT): sstone1 (Wed, 19 Apr 2017 19:03:58 GMT): AlexKim (Wed, 19 Apr 2017 19:04:35 GMT): AlexKim (Wed, 19 Apr 2017 19:05:08 GMT): sstone1 (Wed, 19 Apr 2017 19:05:14 GMT): sstone1 (Wed, 19 Apr 2017 19:05:36 GMT): sstone1 (Wed, 19 Apr 2017 19:06:02 GMT): JohnWhitton (Wed, 19 Apr 2017 19:06:37 GMT): jinvanstee (Wed, 19 Apr 2017 19:10:40 GMT): AlexKim (Wed, 19 Apr 2017 19:10:42 GMT): sstone1 (Wed, 19 Apr 2017 19:19:44 GMT): sstone1 (Wed, 19 Apr 2017 19:20:20 GMT): sstone1 (Wed, 19 Apr 2017 19:20:57 GMT): sstone1 (Wed, 19 Apr 2017 19:20:57 GMT): sstone1 (Wed, 19 Apr 2017 19:21:50 GMT): tennenjl (Wed, 19 Apr 2017 19:23:11 GMT): sstone1 (Wed, 19 Apr 2017 19:24:53 GMT): sstone1 (Wed, 19 Apr 2017 19:25:37 GMT): sstone1 (Wed, 19 Apr 2017 19:26:37 GMT): tennenjl (Wed, 19 Apr 2017 19:55:59 GMT): joe-alewine (Wed, 19 Apr 2017 20:18:13 GMT): jinvanstee (Wed, 19 Apr 2017 20:35:09 GMT): sskrame16 (Wed, 19 Apr 2017 20:36:18 GMT): sstone1 (Wed, 19 Apr 2017 20:42:51 GMT): tennenjl (Wed, 19 Apr 2017 22:05:37 GMT): dklesev (Wed, 19 Apr 2017 22:14:17 GMT): sstone1 (Wed, 19 Apr 2017 22:33:40 GMT): sstone1 (Wed, 19 Apr 2017 22:34:12 GMT): sstone1 (Wed, 19 Apr 2017 22:34:12 GMT): gauthampamu (Wed, 19 Apr 2017 23:24:06 GMT): gauthampamu (Wed, 19 Apr 2017 23:24:22 GMT): pospi (Wed, 19 Apr 2017 23:43:57 GMT): tennenjl (Wed, 19 Apr 2017 23:45:19 GMT): tennenjl (Wed, 19 Apr 2017 23:45:19 GMT): gauthampamu (Thu, 20 Apr 2017 01:46:23 GMT): Air-boy (Thu, 20 Apr 2017 02:23:11 GMT): ZenX0904 (Thu, 20 Apr 2017 04:03:36 GMT): ZenX0904 (Thu, 20 Apr 2017 04:09:21 GMT): ZenX0904 (Thu, 20 Apr 2017 04:13:41 GMT): mohamoud.egal (Thu, 20 Apr 2017 05:57:34 GMT): mohamoud.egal (Thu, 20 Apr 2017 05:58:12 GMT): karthikworks (Thu, 20 Apr 2017 08:44:31 GMT): karthikworks (Thu, 20 Apr 2017 08:45:43 GMT): paul.sitoh (Thu, 20 Apr 2017 08:47:19 GMT): karthikworks (Thu, 20 Apr 2017 08:48:00 GMT): karthikworks (Thu, 20 Apr 2017 08:48:19 GMT): karthikworks (Thu, 20 Apr 2017 08:49:06 GMT): karthikworks (Thu, 20 Apr 2017 08:49:27 GMT): sstone1 (Thu, 20 Apr 2017 09:17:30 GMT): paul.sitoh (Thu, 20 Apr 2017 09:17:45 GMT): paul.sitoh (Thu, 20 Apr 2017 09:18:07 GMT): paul.sitoh (Thu, 20 Apr 2017 09:18:07 GMT): sstone1 (Thu, 20 Apr 2017 09:21:58 GMT): paul.sitoh (Thu, 20 Apr 2017 09:22:02 GMT): sstone1 (Thu, 20 Apr 2017 09:23:21 GMT): sstone1 (Thu, 20 Apr 2017 09:26:35 GMT): sstone1 (Thu, 20 Apr 2017 09:29:46 GMT): sstone1 (Thu, 20 Apr 2017 09:30:02 GMT): karthikworks (Thu, 20 Apr 2017 09:36:39 GMT): sstone1 (Thu, 20 Apr 2017 09:37:45 GMT): karthikworks (Thu, 20 Apr 2017 09:49:37 GMT): karthikworks (Thu, 20 Apr 2017 09:50:03 GMT): karthikworks (Thu, 20 Apr 2017 09:50:14 GMT): sstone1 (Thu, 20 Apr 2017 09:50:42 GMT): karthikworks (Thu, 20 Apr 2017 09:54:53 GMT): karthikworks (Thu, 20 Apr 2017 09:55:36 GMT): karthikworks (Thu, 20 Apr 2017 09:58:02 GMT): karthikworks (Thu, 20 Apr 2017 09:58:13 GMT): karthikworks (Thu, 20 Apr 2017 10:23:12 GMT): Suma (Thu, 20 Apr 2017 12:11:35 GMT): davidkel (Thu, 20 Apr 2017 12:19:20 GMT): Suma (Thu, 20 Apr 2017 12:19:54 GMT): Suma (Thu, 20 Apr 2017 12:20:04 GMT): Suma (Thu, 20 Apr 2017 12:20:39 GMT): Suma (Thu, 20 Apr 2017 12:22:14 GMT): Suma (Thu, 20 Apr 2017 12:22:26 GMT): Suma (Thu, 20 Apr 2017 12:22:42 GMT): Suma (Thu, 20 Apr 2017 12:23:06 GMT): Suma (Thu, 20 Apr 2017 12:23:36 GMT): davidkel (Thu, 20 Apr 2017 12:23:56 GMT): Suma (Thu, 20 Apr 2017 12:24:02 GMT): Suma (Thu, 20 Apr 2017 12:24:14 GMT): Suma (Thu, 20 Apr 2017 12:25:51 GMT): davidkel (Thu, 20 Apr 2017 12:33:55 GMT): davidkel (Thu, 20 Apr 2017 12:35:14 GMT): davidkel (Thu, 20 Apr 2017 12:35:14 GMT): Suma (Thu, 20 Apr 2017 12:35:27 GMT): Suma (Thu, 20 Apr 2017 12:35:29 GMT): eetti (Thu, 20 Apr 2017 12:48:22 GMT): Suma (Thu, 20 Apr 2017 13:02:14 GMT): Suma (Thu, 20 Apr 2017 13:03:14 GMT): Suma (Thu, 20 Apr 2017 13:03:22 GMT): Suma (Thu, 20 Apr 2017 13:03:34 GMT): Suma (Thu, 20 Apr 2017 13:06:53 GMT): Suma (Thu, 20 Apr 2017 13:14:14 GMT): davidkel (Thu, 20 Apr 2017 13:15:54 GMT): davidkel (Thu, 20 Apr 2017 13:17:34 GMT): Suma (Thu, 20 Apr 2017 13:46:34 GMT): mohamoud.egal (Thu, 20 Apr 2017 13:46:52 GMT): mohamoud.egal (Thu, 20 Apr 2017 13:47:27 GMT): sstone1 (Thu, 20 Apr 2017 13:48:08 GMT): Suma (Thu, 20 Apr 2017 13:49:16 GMT): sstone1 (Thu, 20 Apr 2017 13:50:55 GMT): sstone1 (Thu, 20 Apr 2017 13:51:01 GMT): Suma (Thu, 20 Apr 2017 13:55:36 GMT): mohamoud.egal (Thu, 20 Apr 2017 14:03:38 GMT): marek.dapps (Thu, 20 Apr 2017 14:09:55 GMT): mohamoud.egal (Thu, 20 Apr 2017 14:18:22 GMT): Suma (Thu, 20 Apr 2017 14:19:54 GMT): Suma (Thu, 20 Apr 2017 14:22:13 GMT): sstone1 (Thu, 20 Apr 2017 14:22:21 GMT): sstone1 (Thu, 20 Apr 2017 14:22:35 GMT): davidkel (Thu, 20 Apr 2017 14:34:10 GMT): betolive (Thu, 20 Apr 2017 14:45:05 GMT): lynchjw (Thu, 20 Apr 2017 17:05:48 GMT): gromeroar (Thu, 20 Apr 2017 17:29:19 GMT): sstone1 (Thu, 20 Apr 2017 17:33:21 GMT): gromeroar (Thu, 20 Apr 2017 17:34:20 GMT): gromeroar (Thu, 20 Apr 2017 17:35:07 GMT): sstone1 (Thu, 20 Apr 2017 17:35:17 GMT): gromeroar (Thu, 20 Apr 2017 17:35:56 GMT): sstone1 (Thu, 20 Apr 2017 17:36:05 GMT): gromeroar (Thu, 20 Apr 2017 17:38:22 GMT): dkneisly (Thu, 20 Apr 2017 17:44:16 GMT): dkneisly (Thu, 20 Apr 2017 17:46:01 GMT): jorgedr (Thu, 20 Apr 2017 17:54:50 GMT): dselman (Thu, 20 Apr 2017 18:10:32 GMT): dselman (Thu, 20 Apr 2017 18:10:40 GMT): sstone1 (Thu, 20 Apr 2017 18:18:45 GMT): jorgedr (Thu, 20 Apr 2017 18:22:00 GMT): sstone1 (Thu, 20 Apr 2017 18:22:18 GMT): sstone1 (Thu, 20 Apr 2017 18:22:45 GMT): jorgedr (Thu, 20 Apr 2017 18:25:44 GMT): sstone1 (Thu, 20 Apr 2017 18:38:27 GMT): sstone1 (Thu, 20 Apr 2017 18:38:31 GMT): jorgedr (Thu, 20 Apr 2017 18:48:17 GMT): jorgedr (Thu, 20 Apr 2017 18:49:35 GMT): sstone1 (Thu, 20 Apr 2017 18:59:58 GMT): sstone1 (Thu, 20 Apr 2017 19:00:40 GMT): jorgedr (Thu, 20 Apr 2017 19:45:10 GMT): dkneisly (Thu, 20 Apr 2017 20:22:14 GMT): tennenjl (Thu, 20 Apr 2017 20:41:23 GMT): uber.twin (Fri, 21 Apr 2017 07:31:34 GMT): dselman (Fri, 21 Apr 2017 07:56:40 GMT): dselman (Fri, 21 Apr 2017 07:56:40 GMT): uber.twin (Fri, 21 Apr 2017 08:28:32 GMT): uber.twin (Fri, 21 Apr 2017 08:28:37 GMT): uber.twin (Fri, 21 Apr 2017 08:29:58 GMT): dselman (Fri, 21 Apr 2017 08:35:06 GMT): oujunketu (Fri, 21 Apr 2017 08:35:13 GMT): uber.twin (Fri, 21 Apr 2017 08:59:27 GMT): gauthampamu (Fri, 21 Apr 2017 09:13:04 GMT): dselman (Fri, 21 Apr 2017 09:18:12 GMT): dselman (Fri, 21 Apr 2017 09:18:41 GMT): dselman (Fri, 21 Apr 2017 09:19:43 GMT): gauthampamu (Fri, 21 Apr 2017 09:20:22 GMT): dselman (Fri, 21 Apr 2017 09:20:28 GMT): gauthampamu (Fri, 21 Apr 2017 09:20:32 GMT): gauthampamu (Fri, 21 Apr 2017 09:20:38 GMT): dselman (Fri, 21 Apr 2017 09:21:09 GMT): gauthampamu (Fri, 21 Apr 2017 09:21:47 GMT): dselman (Fri, 21 Apr 2017 09:22:43 GMT): dselman (Fri, 21 Apr 2017 09:22:43 GMT): MikeC711 (Fri, 21 Apr 2017 11:08:57 GMT): MikeC711 (Fri, 21 Apr 2017 11:31:04 GMT): tshear (Fri, 21 Apr 2017 12:30:00 GMT): jamesv84 (Fri, 21 Apr 2017 13:54:38 GMT): jamesv84 (Fri, 21 Apr 2017 13:55:44 GMT): davidkel (Fri, 21 Apr 2017 13:59:20 GMT): jamesv84 (Fri, 21 Apr 2017 13:59:31 GMT): MikeC711 (Fri, 21 Apr 2017 14:23:56 GMT): JackNeto (Fri, 21 Apr 2017 14:25:57 GMT): jamesv84 (Fri, 21 Apr 2017 15:05:04 GMT): jamesv84 (Fri, 21 Apr 2017 15:05:38 GMT): jamesv84 (Fri, 21 Apr 2017 15:05:58 GMT): sstone1 (Fri, 21 Apr 2017 15:07:31 GMT): davidkel (Fri, 21 Apr 2017 15:21:28 GMT): jamesv84 (Fri, 21 Apr 2017 15:22:45 GMT): mahoney1 (Fri, 21 Apr 2017 15:40:44 GMT): mohamoud.egal (Fri, 21 Apr 2017 17:18:53 GMT): davidkel (Fri, 21 Apr 2017 17:55:38 GMT): allenc2016 (Fri, 21 Apr 2017 19:10:17 GMT): sstone1 (Fri, 21 Apr 2017 19:15:36 GMT): allenc2016 (Fri, 21 Apr 2017 19:15:54 GMT): allenc2016 (Fri, 21 Apr 2017 19:16:05 GMT): allenc2016 (Fri, 21 Apr 2017 19:16:42 GMT): allenc2016 (Fri, 21 Apr 2017 19:17:12 GMT): allenc2016 (Fri, 21 Apr 2017 19:18:15 GMT): sstone1 (Fri, 21 Apr 2017 19:18:56 GMT): allenc2016 (Fri, 21 Apr 2017 19:26:24 GMT): tennenjl (Sat, 22 Apr 2017 03:48:08 GMT): tennenjl (Sat, 22 Apr 2017 03:48:08 GMT): tennenjl (Sat, 22 Apr 2017 03:48:08 GMT): jamesv84 (Sat, 22 Apr 2017 05:57:34 GMT): dselman (Sat, 22 Apr 2017 06:58:25 GMT): dselman (Sat, 22 Apr 2017 06:58:59 GMT): sstone1 (Sat, 22 Apr 2017 07:23:50 GMT): davidkel (Sat, 22 Apr 2017 07:51:47 GMT): SahilKapoor (Sat, 22 Apr 2017 10:31:31 GMT): SahilKapoor (Sat, 22 Apr 2017 10:36:37 GMT): dselman (Sat, 22 Apr 2017 11:35:21 GMT): tennenjl (Sat, 22 Apr 2017 12:39:06 GMT): jamesv84 (Sat, 22 Apr 2017 12:44:39 GMT): tennenjl (Sat, 22 Apr 2017 12:54:46 GMT): davidkel (Sat, 22 Apr 2017 13:00:57 GMT): davidkel (Sat, 22 Apr 2017 13:00:57 GMT): tennenjl (Sat, 22 Apr 2017 13:01:57 GMT): tennenjl (Sat, 22 Apr 2017 13:07:30 GMT): tennenjl (Sat, 22 Apr 2017 15:57:08 GMT): dselman (Sat, 22 Apr 2017 16:21:58 GMT): dselman (Sat, 22 Apr 2017 16:23:32 GMT): ioctl (Sat, 22 Apr 2017 16:33:38 GMT): tennenjl (Sat, 22 Apr 2017 17:59:40 GMT): cbf (Sat, 22 Apr 2017 20:00:10 GMT): cbf (Sat, 22 Apr 2017 20:00:18 GMT): sstone1 (Sat, 22 Apr 2017 21:07:16 GMT): dselman (Sat, 22 Apr 2017 21:18:55 GMT): dselman (Sat, 22 Apr 2017 21:20:08 GMT): jamesv84 (Sat, 22 Apr 2017 22:58:47 GMT): tennenjl (Sun, 23 Apr 2017 00:45:32 GMT): tennenjl (Sun, 23 Apr 2017 00:47:22 GMT): tennenjl (Sun, 23 Apr 2017 00:48:13 GMT): SahilKapoor (Sun, 23 Apr 2017 05:47:18 GMT): SahilKapoor (Sun, 23 Apr 2017 05:47:27 GMT): SahilKapoor (Sun, 23 Apr 2017 05:47:28 GMT): SahilKapoor (Sun, 23 Apr 2017 05:47:40 GMT): SahilKapoor (Sun, 23 Apr 2017 05:48:12 GMT): SahilKapoor (Sun, 23 Apr 2017 05:48:12 GMT): assasinx93 (Sun, 23 Apr 2017 05:48:52 GMT): assasinx93 (Sun, 23 Apr 2017 05:50:00 GMT): SahilKapoor (Sun, 23 Apr 2017 05:50:31 GMT): SahilKapoor (Sun, 23 Apr 2017 05:54:11 GMT): SahilKapoor (Sun, 23 Apr 2017 06:39:06 GMT): SahilKapoor (Sun, 23 Apr 2017 06:39:14 GMT): SahilKapoor (Sun, 23 Apr 2017 06:39:18 GMT): dselman (Sun, 23 Apr 2017 06:41:50 GMT): tennenjl (Sun, 23 Apr 2017 12:26:49 GMT): movee2005 (Sun, 23 Apr 2017 13:29:47 GMT): sstone1 (Sun, 23 Apr 2017 14:07:18 GMT): sstone1 (Sun, 23 Apr 2017 14:07:54 GMT): movee2005 (Sun, 23 Apr 2017 14:07:58 GMT): sstone1 (Sun, 23 Apr 2017 14:11:36 GMT): tennenjl (Sun, 23 Apr 2017 14:12:23 GMT): tennenjl (Sun, 23 Apr 2017 14:13:09 GMT): sstone1 (Sun, 23 Apr 2017 14:16:57 GMT): sstone1 (Sun, 23 Apr 2017 14:17:24 GMT): sstone1 (Sun, 23 Apr 2017 14:17:42 GMT): sstone1 (Sun, 23 Apr 2017 14:19:28 GMT): tennenjl (Sun, 23 Apr 2017 15:02:47 GMT): tennenjl (Sun, 23 Apr 2017 15:02:50 GMT): tennenjl (Sun, 23 Apr 2017 15:02:52 GMT): mohamoud.egal (Sun, 23 Apr 2017 18:01:06 GMT): mohamoud.egal (Sun, 23 Apr 2017 18:02:00 GMT): mohamoud.egal (Sun, 23 Apr 2017 18:04:45 GMT): sstone1 (Sun, 23 Apr 2017 18:23:23 GMT): sstone1 (Sun, 23 Apr 2017 18:23:40 GMT): sstone1 (Sun, 23 Apr 2017 18:23:40 GMT): sstone1 (Sun, 23 Apr 2017 18:24:00 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:05:20 GMT): sstone1 (Sun, 23 Apr 2017 19:05:52 GMT): sstone1 (Sun, 23 Apr 2017 19:06:04 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:29:40 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:30:27 GMT): sstone1 (Sun, 23 Apr 2017 19:31:25 GMT): sstone1 (Sun, 23 Apr 2017 19:31:32 GMT): sstone1 (Sun, 23 Apr 2017 19:31:54 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:34:52 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:34:54 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:35:23 GMT): sstone1 (Sun, 23 Apr 2017 19:36:34 GMT): sstone1 (Sun, 23 Apr 2017 19:36:35 GMT): sstone1 (Sun, 23 Apr 2017 19:36:39 GMT): sstone1 (Sun, 23 Apr 2017 19:36:52 GMT): sstone1 (Sun, 23 Apr 2017 19:37:07 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:38:25 GMT): sstone1 (Sun, 23 Apr 2017 19:38:57 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:46:29 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:46:37 GMT): sstone1 (Sun, 23 Apr 2017 19:46:53 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:47:28 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:47:29 GMT): sstone1 (Sun, 23 Apr 2017 19:48:14 GMT): sstone1 (Sun, 23 Apr 2017 19:48:21 GMT): sstone1 (Sun, 23 Apr 2017 19:48:27 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:50:50 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:50:52 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:51:00 GMT): sstone1 (Sun, 23 Apr 2017 19:51:16 GMT): sstone1 (Sun, 23 Apr 2017 19:51:23 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:53:32 GMT): sstone1 (Sun, 23 Apr 2017 19:53:39 GMT): sstone1 (Sun, 23 Apr 2017 19:53:47 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:54:23 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:55:51 GMT): mohamoud.egal (Sun, 23 Apr 2017 19:57:43 GMT): sstone1 (Sun, 23 Apr 2017 19:58:52 GMT): sstone1 (Sun, 23 Apr 2017 19:59:00 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:00:11 GMT): karthikworks (Sun, 23 Apr 2017 20:03:23 GMT): karthikworks (Sun, 23 Apr 2017 20:03:25 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:03:44 GMT): sstone1 (Sun, 23 Apr 2017 20:05:32 GMT): sstone1 (Sun, 23 Apr 2017 20:05:54 GMT): karthikworks (Sun, 23 Apr 2017 20:07:09 GMT): karthikworks (Sun, 23 Apr 2017 20:07:23 GMT): karthikworks (Sun, 23 Apr 2017 20:10:19 GMT): sstone1 (Sun, 23 Apr 2017 20:11:19 GMT): sstone1 (Sun, 23 Apr 2017 20:11:26 GMT): sstone1 (Sun, 23 Apr 2017 20:11:36 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:12:51 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:13:00 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:13:35 GMT): karthikworks (Sun, 23 Apr 2017 20:13:37 GMT): sstone1 (Sun, 23 Apr 2017 20:14:10 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:14:47 GMT): sstone1 (Sun, 23 Apr 2017 20:15:48 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:16:57 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:16:59 GMT): tennenjl (Sun, 23 Apr 2017 20:20:55 GMT): tennenjl (Sun, 23 Apr 2017 20:21:58 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:22:21 GMT): tennenjl (Sun, 23 Apr 2017 20:22:22 GMT): tennenjl (Sun, 23 Apr 2017 20:23:04 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:23:19 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:23:37 GMT): sstone1 (Sun, 23 Apr 2017 20:24:05 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:24:24 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:24:39 GMT): tennenjl (Sun, 23 Apr 2017 20:24:47 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:25:05 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:37:05 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:37:23 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:37:54 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:38:04 GMT): sstone1 (Sun, 23 Apr 2017 20:40:25 GMT): sstone1 (Sun, 23 Apr 2017 20:40:32 GMT): sstone1 (Sun, 23 Apr 2017 20:40:39 GMT): sstone1 (Sun, 23 Apr 2017 20:41:08 GMT): sstone1 (Sun, 23 Apr 2017 20:41:23 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:47:43 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:50:20 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:50:29 GMT): mohamoud.egal (Sun, 23 Apr 2017 20:51:06 GMT): mohamoud.egal (Sun, 23 Apr 2017 21:01:17 GMT): mohamoud.egal (Sun, 23 Apr 2017 21:26:44 GMT): sstone1 (Mon, 24 Apr 2017 01:04:20 GMT): sstone1 (Mon, 24 Apr 2017 01:04:54 GMT): MikeC711 (Mon, 24 Apr 2017 01:42:01 GMT): sstone1 (Mon, 24 Apr 2017 01:57:30 GMT): sstone1 (Mon, 24 Apr 2017 01:58:18 GMT): sstone1 (Mon, 24 Apr 2017 01:59:41 GMT): JeetMukesh (Mon, 24 Apr 2017 05:10:37 GMT): karthikworks (Mon, 24 Apr 2017 07:26:34 GMT): karthikworks (Mon, 24 Apr 2017 07:26:51 GMT): sstone1 (Mon, 24 Apr 2017 07:55:42 GMT): sstone1 (Mon, 24 Apr 2017 07:56:21 GMT): sstone1 (Mon, 24 Apr 2017 07:56:41 GMT): karthikworks (Mon, 24 Apr 2017 08:13:46 GMT): karthikworks (Mon, 24 Apr 2017 08:13:53 GMT): karthikworks (Mon, 24 Apr 2017 08:14:11 GMT): sstone1 (Mon, 24 Apr 2017 08:17:54 GMT): karthikworks (Mon, 24 Apr 2017 08:18:15 GMT): karthikworks (Mon, 24 Apr 2017 08:18:28 GMT): karthikworks (Mon, 24 Apr 2017 09:05:21 GMT): sstone1 (Mon, 24 Apr 2017 09:21:13 GMT): karthikworks (Mon, 24 Apr 2017 10:12:34 GMT): karthikworks (Mon, 24 Apr 2017 10:12:54 GMT): karthikworks (Mon, 24 Apr 2017 10:12:55 GMT): karthikworks (Mon, 24 Apr 2017 10:31:08 GMT): karthikworks (Mon, 24 Apr 2017 10:31:09 GMT): karthikworks (Mon, 24 Apr 2017 10:31:33 GMT): karthikworks (Mon, 24 Apr 2017 10:31:34 GMT): karthikworks (Mon, 24 Apr 2017 10:32:33 GMT): karthikworks (Mon, 24 Apr 2017 10:36:21 GMT): karthikworks (Mon, 24 Apr 2017 10:36:28 GMT): xuzhao103389 (Mon, 24 Apr 2017 11:01:17 GMT): karthikworks (Mon, 24 Apr 2017 11:03:55 GMT): xuzhao103389 (Mon, 24 Apr 2017 11:04:53 GMT): MikeC711 (Mon, 24 Apr 2017 11:25:21 GMT): MikeC711 (Mon, 24 Apr 2017 11:25:21 GMT): vinitesh (Mon, 24 Apr 2017 15:33:16 GMT): AramBarnett (Mon, 24 Apr 2017 15:44:36 GMT): jorgedr (Mon, 24 Apr 2017 16:03:19 GMT): jorgedr (Mon, 24 Apr 2017 16:03:19 GMT): jorgedr (Mon, 24 Apr 2017 16:03:19 GMT): davidkel (Mon, 24 Apr 2017 16:04:20 GMT): vinitesh (Mon, 24 Apr 2017 16:26:13 GMT): vinitesh (Mon, 24 Apr 2017 16:26:40 GMT): davidkel (Mon, 24 Apr 2017 16:28:37 GMT): davidkel (Mon, 24 Apr 2017 16:28:37 GMT): davidkel (Mon, 24 Apr 2017 16:31:38 GMT): davidkel (Mon, 24 Apr 2017 16:31:38 GMT): davidkel (Mon, 24 Apr 2017 16:31:38 GMT): vinitesh (Mon, 24 Apr 2017 16:33:03 GMT): vinitesh (Mon, 24 Apr 2017 16:36:31 GMT): vinitesh (Mon, 24 Apr 2017 16:36:31 GMT): davidkel (Mon, 24 Apr 2017 16:37:23 GMT): vinitesh (Mon, 24 Apr 2017 17:07:40 GMT): davidkel (Mon, 24 Apr 2017 17:10:49 GMT): vinitesh (Mon, 24 Apr 2017 17:50:17 GMT): MikeC711 (Mon, 24 Apr 2017 18:02:53 GMT): jdockter (Mon, 24 Apr 2017 18:08:25 GMT): vinitesh (Mon, 24 Apr 2017 18:12:05 GMT): dselman (Mon, 24 Apr 2017 18:13:09 GMT): MikeC711 (Mon, 24 Apr 2017 18:13:34 GMT): vinitesh (Mon, 24 Apr 2017 18:19:44 GMT): heisenb3rg (Mon, 24 Apr 2017 18:24:12 GMT): vinitesh (Mon, 24 Apr 2017 18:51:12 GMT): jdockter (Mon, 24 Apr 2017 18:52:28 GMT): SahilKapoor (Tue, 25 Apr 2017 06:53:26 GMT): SahilKapoor (Tue, 25 Apr 2017 06:53:29 GMT): SahilKapoor (Tue, 25 Apr 2017 06:54:05 GMT): SahilKapoor (Tue, 25 Apr 2017 06:54:44 GMT): SahilKapoor (Tue, 25 Apr 2017 07:02:50 GMT): davidkel (Tue, 25 Apr 2017 07:40:17 GMT): SahilKapoor (Tue, 25 Apr 2017 07:41:34 GMT): pospi (Tue, 25 Apr 2017 08:01:14 GMT): vinitesh (Tue, 25 Apr 2017 08:10:22 GMT): dselman (Tue, 25 Apr 2017 08:17:29 GMT): davidkel (Tue, 25 Apr 2017 08:18:12 GMT): dselman (Tue, 25 Apr 2017 08:18:35 GMT): pospi (Tue, 25 Apr 2017 08:24:02 GMT): vinitesh (Tue, 25 Apr 2017 08:28:20 GMT): davidkel (Tue, 25 Apr 2017 08:41:50 GMT): xuzhao103389 (Tue, 25 Apr 2017 09:42:14 GMT): xuzhao103389 (Tue, 25 Apr 2017 09:42:16 GMT): xuzhao103389 (Tue, 25 Apr 2017 09:42:36 GMT): vinitesh (Tue, 25 Apr 2017 09:56:24 GMT): xuzhao103389 (Tue, 25 Apr 2017 10:08:13 GMT): xuzhao103389 (Tue, 25 Apr 2017 10:08:18 GMT): davidkel (Tue, 25 Apr 2017 10:14:00 GMT): davidkel (Tue, 25 Apr 2017 10:14:00 GMT): padmaja (Tue, 25 Apr 2017 10:15:19 GMT): xuzhao103389 (Tue, 25 Apr 2017 10:15:44 GMT): vinitesh (Tue, 25 Apr 2017 10:16:38 GMT): elisabetta (Tue, 25 Apr 2017 10:49:25 GMT): elisabetta (Tue, 25 Apr 2017 10:49:36 GMT): elisabetta (Tue, 25 Apr 2017 10:50:13 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:09:42 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:09:55 GMT): davidkel (Tue, 25 Apr 2017 11:10:57 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:11:48 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:11:50 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:12:32 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:13:11 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:13:14 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:13:23 GMT): sstone1 (Tue, 25 Apr 2017 11:13:48 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:14:30 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:14:30 GMT): davidkel (Tue, 25 Apr 2017 11:15:38 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:16:28 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:16:52 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:17:15 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:18:34 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:18:47 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:19:13 GMT): davidkel (Tue, 25 Apr 2017 11:20:33 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:20:34 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:21:05 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:21:06 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:21:09 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:25:28 GMT): xuzhao103389 (Tue, 25 Apr 2017 11:25:33 GMT): opiepj (Tue, 25 Apr 2017 11:38:21 GMT): sstone1 (Tue, 25 Apr 2017 11:39:19 GMT): sstone1 (Tue, 25 Apr 2017 11:41:02 GMT): tennenjl (Tue, 25 Apr 2017 11:44:08 GMT): xuzhao103389 (Tue, 25 Apr 2017 12:13:22 GMT): davidkel (Tue, 25 Apr 2017 12:18:49 GMT): davidkel (Tue, 25 Apr 2017 12:18:49 GMT): xuzhao103389 (Tue, 25 Apr 2017 12:23:02 GMT): uber.twin (Tue, 25 Apr 2017 12:41:41 GMT): uber.twin (Tue, 25 Apr 2017 12:41:58 GMT): opiepj (Tue, 25 Apr 2017 12:42:58 GMT): sstone1 (Tue, 25 Apr 2017 12:43:10 GMT): opiepj (Tue, 25 Apr 2017 12:43:25 GMT): davidkel (Tue, 25 Apr 2017 12:43:31 GMT): sstone1 (Tue, 25 Apr 2017 12:43:57 GMT): MikeC711 (Tue, 25 Apr 2017 13:10:39 GMT): sstone1 (Tue, 25 Apr 2017 13:19:13 GMT): sstone1 (Tue, 25 Apr 2017 13:19:59 GMT): uber.twin (Tue, 25 Apr 2017 13:21:25 GMT): MikeC711 (Tue, 25 Apr 2017 13:33:25 GMT): hancockp (Tue, 25 Apr 2017 13:51:38 GMT): brichardson (Tue, 25 Apr 2017 14:13:49 GMT): annbnn (Tue, 25 Apr 2017 14:19:53 GMT): annbnn (Tue, 25 Apr 2017 14:20:18 GMT): annbnn (Tue, 25 Apr 2017 14:20:36 GMT): annbnn (Tue, 25 Apr 2017 14:20:58 GMT): jinvanstee (Tue, 25 Apr 2017 15:30:48 GMT): tennenjl (Tue, 25 Apr 2017 15:42:08 GMT): tennenjl (Tue, 25 Apr 2017 15:42:08 GMT): jinvanstee (Tue, 25 Apr 2017 15:51:47 GMT): dselman (Tue, 25 Apr 2017 16:26:04 GMT): dselman (Tue, 25 Apr 2017 16:26:43 GMT): vinitesh (Tue, 25 Apr 2017 18:48:00 GMT): vinitesh (Tue, 25 Apr 2017 18:48:47 GMT): dselman (Tue, 25 Apr 2017 19:06:22 GMT): dselman (Tue, 25 Apr 2017 19:07:42 GMT): mohamoud.egal (Tue, 25 Apr 2017 19:28:20 GMT): mohamoud.egal (Tue, 25 Apr 2017 19:29:00 GMT): mohamoud.egal (Tue, 25 Apr 2017 19:29:29 GMT): dselman (Tue, 25 Apr 2017 19:47:17 GMT): ggamaral (Tue, 25 Apr 2017 21:02:14 GMT): ggamaral (Tue, 25 Apr 2017 21:03:46 GMT): tennenjl (Tue, 25 Apr 2017 21:08:53 GMT): dselman (Tue, 25 Apr 2017 21:10:12 GMT): ggamaral (Tue, 25 Apr 2017 21:13:58 GMT): ggamaral (Tue, 25 Apr 2017 21:14:41 GMT): tennenjl (Tue, 25 Apr 2017 21:17:07 GMT): vinitesh (Tue, 25 Apr 2017 21:22:11 GMT): ggamaral (Tue, 25 Apr 2017 21:22:30 GMT): tennenjl (Tue, 25 Apr 2017 21:27:20 GMT): davidkel (Tue, 25 Apr 2017 21:41:59 GMT): davidkel (Tue, 25 Apr 2017 21:41:59 GMT): sstone1 (Wed, 26 Apr 2017 00:56:14 GMT): sstone1 (Wed, 26 Apr 2017 00:58:31 GMT): MikeC711 (Wed, 26 Apr 2017 01:04:38 GMT): jinvanstee (Wed, 26 Apr 2017 01:23:20 GMT): pospi (Wed, 26 Apr 2017 03:35:44 GMT): pospi (Wed, 26 Apr 2017 03:36:47 GMT): rangak (Wed, 26 Apr 2017 04:01:05 GMT): kouohhashi (Wed, 26 Apr 2017 04:59:48 GMT): prashiyn (Wed, 26 Apr 2017 05:40:18 GMT): karthikworks (Wed, 26 Apr 2017 06:37:39 GMT): karthikworks (Wed, 26 Apr 2017 06:37:53 GMT): karthikworks (Wed, 26 Apr 2017 06:38:42 GMT): dselman (Wed, 26 Apr 2017 07:19:58 GMT): dselman (Wed, 26 Apr 2017 07:21:21 GMT): dselman (Wed, 26 Apr 2017 07:23:03 GMT): karthikworks (Wed, 26 Apr 2017 07:35:49 GMT): karthikworks (Wed, 26 Apr 2017 07:36:51 GMT): karthikworks (Wed, 26 Apr 2017 07:37:27 GMT): pospi (Wed, 26 Apr 2017 08:46:30 GMT): swangbj (Wed, 26 Apr 2017 09:25:49 GMT): dselman (Wed, 26 Apr 2017 09:51:05 GMT): pospi (Wed, 26 Apr 2017 11:50:34 GMT): MikeC711 (Wed, 26 Apr 2017 12:02:04 GMT): dselman (Wed, 26 Apr 2017 12:05:25 GMT): Dpkkmr (Wed, 26 Apr 2017 12:15:08 GMT): SahilKapoor (Wed, 26 Apr 2017 12:25:38 GMT): SahilKapoor (Wed, 26 Apr 2017 12:26:39 GMT): SahilKapoor (Wed, 26 Apr 2017 12:26:53 GMT): SahilKapoor (Wed, 26 Apr 2017 12:27:19 GMT): SahilKapoor (Wed, 26 Apr 2017 12:27:42 GMT): dselman (Wed, 26 Apr 2017 12:36:28 GMT): SahilKapoor (Wed, 26 Apr 2017 13:13:43 GMT): jdockter (Wed, 26 Apr 2017 13:15:02 GMT): SahilKapoor (Wed, 26 Apr 2017 13:19:27 GMT): SahilKapoor (Wed, 26 Apr 2017 13:21:00 GMT): SahilKapoor (Wed, 26 Apr 2017 13:21:55 GMT): SahilKapoor (Wed, 26 Apr 2017 13:24:41 GMT): SahilKapoor (Wed, 26 Apr 2017 13:25:31 GMT): davidkel (Wed, 26 Apr 2017 14:02:50 GMT): MikeC711 (Wed, 26 Apr 2017 14:37:32 GMT): donaldsbell (Wed, 26 Apr 2017 15:17:26 GMT): dselman (Wed, 26 Apr 2017 15:35:32 GMT): niteshthakrar (Wed, 26 Apr 2017 15:36:15 GMT): dselman (Wed, 26 Apr 2017 15:36:33 GMT): jorgedr (Wed, 26 Apr 2017 16:01:18 GMT): jorgedr (Wed, 26 Apr 2017 16:02:13 GMT): dselman (Wed, 26 Apr 2017 16:10:20 GMT): dselman (Wed, 26 Apr 2017 16:10:49 GMT): jorgedr (Wed, 26 Apr 2017 16:14:34 GMT): dselman (Wed, 26 Apr 2017 16:15:26 GMT): dselman (Wed, 26 Apr 2017 16:15:26 GMT): SahilKapoor (Wed, 26 Apr 2017 16:30:04 GMT): SahilKapoor (Wed, 26 Apr 2017 16:30:04 GMT): SahilKapoor (Wed, 26 Apr 2017 16:31:19 GMT): SahilKapoor (Wed, 26 Apr 2017 16:31:24 GMT): SahilKapoor (Wed, 26 Apr 2017 16:44:10 GMT): kouohhashi (Wed, 26 Apr 2017 16:58:36 GMT): DennisM330 (Wed, 26 Apr 2017 17:55:16 GMT): DennisM330 (Wed, 26 Apr 2017 18:15:48 GMT): jinvanstee (Wed, 26 Apr 2017 18:27:10 GMT): davidkel (Wed, 26 Apr 2017 18:34:27 GMT): kouohhashi (Wed, 26 Apr 2017 18:35:34 GMT): davidkel (Wed, 26 Apr 2017 18:36:04 GMT): MikeC711 (Wed, 26 Apr 2017 18:38:21 GMT): Dpkkmr (Wed, 26 Apr 2017 18:44:42 GMT): Dpkkmr (Wed, 26 Apr 2017 18:44:42 GMT): Dpkkmr (Wed, 26 Apr 2017 18:44:42 GMT): Dpkkmr (Wed, 26 Apr 2017 18:44:42 GMT): Dpkkmr (Wed, 26 Apr 2017 18:44:42 GMT): DennisM330 (Wed, 26 Apr 2017 19:12:28 GMT): davidkel (Wed, 26 Apr 2017 19:23:34 GMT): DennisM330 (Wed, 26 Apr 2017 20:28:01 GMT): DennisM330 (Wed, 26 Apr 2017 21:13:45 GMT): davidkel (Wed, 26 Apr 2017 21:13:46 GMT): davidkel (Wed, 26 Apr 2017 21:15:51 GMT): DennisM330 (Wed, 26 Apr 2017 21:46:33 GMT): DennisM330 (Wed, 26 Apr 2017 22:05:25 GMT): dselman (Wed, 26 Apr 2017 22:35:52 GMT): dselman (Wed, 26 Apr 2017 22:35:52 GMT): DennisM330 (Wed, 26 Apr 2017 23:13:03 GMT): DennisM330 (Wed, 26 Apr 2017 23:16:28 GMT): DennisM330 (Wed, 26 Apr 2017 23:18:37 GMT): DennisM330 (Wed, 26 Apr 2017 23:19:06 GMT): kouohhashi (Wed, 26 Apr 2017 23:42:16 GMT): kouohhashi (Wed, 26 Apr 2017 23:42:16 GMT): kouohhashi (Wed, 26 Apr 2017 23:43:16 GMT): kouohhashi (Wed, 26 Apr 2017 23:43:16 GMT): dwakeman (Wed, 26 Apr 2017 23:51:54 GMT): MikeC711 (Thu, 27 Apr 2017 01:05:13 GMT): abcoathup (Thu, 27 Apr 2017 02:28:44 GMT): abcoathup (Thu, 27 Apr 2017 02:31:56 GMT): yp (Thu, 27 Apr 2017 05:31:48 GMT): ansonlau3 (Thu, 27 Apr 2017 06:41:12 GMT): davidkel (Thu, 27 Apr 2017 07:24:37 GMT): davidkel (Thu, 27 Apr 2017 07:25:44 GMT): dselman (Thu, 27 Apr 2017 07:49:49 GMT): GeorgSchultz (Thu, 27 Apr 2017 07:55:49 GMT): reoim10 (Thu, 27 Apr 2017 08:05:21 GMT): reoim10 (Thu, 27 Apr 2017 08:05:25 GMT): nvlasov (Thu, 27 Apr 2017 08:19:11 GMT): dselman (Thu, 27 Apr 2017 08:21:48 GMT): dselman (Thu, 27 Apr 2017 08:21:57 GMT): nvlasov (Thu, 27 Apr 2017 08:56:24 GMT): nvlasov (Thu, 27 Apr 2017 09:09:05 GMT): dselman (Thu, 27 Apr 2017 10:46:52 GMT): dselman (Thu, 27 Apr 2017 10:47:08 GMT): dselman (Thu, 27 Apr 2017 10:47:46 GMT): dselman (Thu, 27 Apr 2017 10:51:20 GMT): nvlasov (Thu, 27 Apr 2017 10:56:04 GMT): nvlasov (Thu, 27 Apr 2017 11:13:36 GMT): MikeC711 (Thu, 27 Apr 2017 12:19:08 GMT): jdockter (Thu, 27 Apr 2017 12:50:39 GMT): jdockter (Thu, 27 Apr 2017 12:50:39 GMT): xuzhao103389 (Thu, 27 Apr 2017 13:07:26 GMT): xuzhao103389 (Thu, 27 Apr 2017 13:08:00 GMT): xuzhao103389 (Thu, 27 Apr 2017 13:08:02 GMT): xuzhao103389 (Thu, 27 Apr 2017 13:13:15 GMT): DennisM330 (Thu, 27 Apr 2017 13:14:40 GMT): dselman (Thu, 27 Apr 2017 13:25:34 GMT): dselman (Thu, 27 Apr 2017 13:27:17 GMT): DennisM330 (Thu, 27 Apr 2017 13:33:14 GMT): dselman (Thu, 27 Apr 2017 13:34:02 GMT): xuzhao103389 (Thu, 27 Apr 2017 13:34:03 GMT): Jakeeyturner (Thu, 27 Apr 2017 13:35:37 GMT): xuzhao103389 (Thu, 27 Apr 2017 13:38:11 GMT): xuzhao103389 (Thu, 27 Apr 2017 13:38:20 GMT): xuzhao103389 (Thu, 27 Apr 2017 13:38:34 GMT): xuzhao103389 (Thu, 27 Apr 2017 13:38:34 GMT): DrTES (Thu, 27 Apr 2017 14:57:03 GMT): MikeC711 (Thu, 27 Apr 2017 15:08:32 GMT): torresjeff (Thu, 27 Apr 2017 15:09:44 GMT): davidkel (Thu, 27 Apr 2017 15:25:13 GMT): DennisM330 (Thu, 27 Apr 2017 15:36:15 GMT): DennisM330 (Thu, 27 Apr 2017 15:39:11 GMT): DennisM330 (Thu, 27 Apr 2017 15:41:22 GMT): dselman (Thu, 27 Apr 2017 15:41:37 GMT): DennisM330 (Thu, 27 Apr 2017 15:43:40 GMT): DennisM330 (Thu, 27 Apr 2017 15:46:14 GMT): dselman (Thu, 27 Apr 2017 15:52:30 GMT): sstone1 (Thu, 27 Apr 2017 16:05:20 GMT): sstone1 (Thu, 27 Apr 2017 16:05:22 GMT): DennisM330 (Thu, 27 Apr 2017 16:06:04 GMT): DennisM330 (Thu, 27 Apr 2017 16:06:10 GMT): DennisM330 (Thu, 27 Apr 2017 16:07:03 GMT): dselman (Thu, 27 Apr 2017 16:25:22 GMT): DennisM330 (Thu, 27 Apr 2017 17:01:58 GMT): kouohhashi (Thu, 27 Apr 2017 17:04:29 GMT): davidkel (Thu, 27 Apr 2017 18:36:43 GMT): gauthampamu (Thu, 27 Apr 2017 19:34:31 GMT): jwagantall (Thu, 27 Apr 2017 20:33:01 GMT): kouohhashi (Thu, 27 Apr 2017 20:39:05 GMT): jorgedr (Thu, 27 Apr 2017 20:58:38 GMT): sstone1 (Thu, 27 Apr 2017 21:01:04 GMT): jorgedr (Thu, 27 Apr 2017 21:04:51 GMT): jorgedr (Thu, 27 Apr 2017 21:04:51 GMT): sstone1 (Thu, 27 Apr 2017 21:05:40 GMT): sstone1 (Thu, 27 Apr 2017 21:05:55 GMT): jorgedr (Thu, 27 Apr 2017 21:06:32 GMT): jorgedr (Thu, 27 Apr 2017 21:19:07 GMT): sstone1 (Thu, 27 Apr 2017 21:31:56 GMT): sstone1 (Thu, 27 Apr 2017 21:32:05 GMT): sstone1 (Thu, 27 Apr 2017 21:32:10 GMT): sstone1 (Thu, 27 Apr 2017 21:32:19 GMT): sstone1 (Thu, 27 Apr 2017 21:33:04 GMT): jorgedr (Thu, 27 Apr 2017 21:34:08 GMT): jorgedr (Thu, 27 Apr 2017 21:35:20 GMT): jorgedr (Thu, 27 Apr 2017 21:35:56 GMT): sstone1 (Thu, 27 Apr 2017 21:36:07 GMT): sstone1 (Thu, 27 Apr 2017 21:36:17 GMT): davidkel (Thu, 27 Apr 2017 22:23:20 GMT): davidkel (Thu, 27 Apr 2017 22:23:20 GMT): shsedghi (Thu, 27 Apr 2017 23:18:51 GMT): MikeC711 (Fri, 28 Apr 2017 01:39:29 GMT): MikeC711 (Fri, 28 Apr 2017 01:42:38 GMT): MikeC711 (Fri, 28 Apr 2017 03:01:52 GMT): MikeC711 (Fri, 28 Apr 2017 03:05:29 GMT): dselman (Fri, 28 Apr 2017 06:32:17 GMT): conroydave (Fri, 28 Apr 2017 06:56:11 GMT): dselman (Fri, 28 Apr 2017 07:16:29 GMT): conroydave (Fri, 28 Apr 2017 07:18:55 GMT): conroydave (Fri, 28 Apr 2017 07:20:07 GMT): dselman (Fri, 28 Apr 2017 07:24:55 GMT): dselman (Fri, 28 Apr 2017 07:25:17 GMT): conroydave (Fri, 28 Apr 2017 07:27:04 GMT): conroydave (Fri, 28 Apr 2017 07:28:06 GMT): conroydave (Fri, 28 Apr 2017 07:30:09 GMT): dselman (Fri, 28 Apr 2017 08:20:45 GMT): xuzhao103389 (Fri, 28 Apr 2017 11:00:20 GMT): xuzhao103389 (Fri, 28 Apr 2017 11:00:24 GMT): xuzhao103389 (Fri, 28 Apr 2017 11:01:11 GMT): xuzhao103389 (Fri, 28 Apr 2017 11:01:31 GMT): xuzhao103389 (Fri, 28 Apr 2017 11:01:32 GMT): xuzhao103389 (Fri, 28 Apr 2017 11:02:27 GMT): xuzhao103389 (Fri, 28 Apr 2017 11:05:03 GMT): xuzhao103389 (Fri, 28 Apr 2017 11:05:04 GMT): xuzhao103389 (Fri, 28 Apr 2017 11:05:25 GMT): Jakeeyturner (Fri, 28 Apr 2017 11:15:46 GMT): MikeC711 (Fri, 28 Apr 2017 11:59:30 GMT): xuzhao103389 (Fri, 28 Apr 2017 12:16:03 GMT): Jakeeyturner (Fri, 28 Apr 2017 12:57:17 GMT): Jakeeyturner (Fri, 28 Apr 2017 12:57:17 GMT): DanHerman (Fri, 28 Apr 2017 13:03:05 GMT): DanHerman (Fri, 28 Apr 2017 13:13:15 GMT): Jakeeyturner (Fri, 28 Apr 2017 13:30:50 GMT): DanHerman (Fri, 28 Apr 2017 13:32:38 GMT): MikeC711 (Fri, 28 Apr 2017 14:24:17 GMT): annbnn (Fri, 28 Apr 2017 14:33:04 GMT): annbnn (Fri, 28 Apr 2017 14:33:17 GMT): xuzhao103389 (Fri, 28 Apr 2017 14:34:48 GMT): sstone1 (Fri, 28 Apr 2017 14:34:51 GMT): MikeC711 (Fri, 28 Apr 2017 14:35:00 GMT): DennisM330 (Fri, 28 Apr 2017 16:13:17 GMT): cassolato (Fri, 28 Apr 2017 17:01:24 GMT): cassolato (Fri, 28 Apr 2017 17:05:24 GMT): cassolato (Fri, 28 Apr 2017 17:05:26 GMT): MikeC711 (Fri, 28 Apr 2017 18:11:38 GMT): cassolato (Fri, 28 Apr 2017 18:12:12 GMT): cassolato (Fri, 28 Apr 2017 18:12:41 GMT): cassolato (Fri, 28 Apr 2017 18:13:11 GMT): cassolato (Fri, 28 Apr 2017 18:13:18 GMT): cassolato (Fri, 28 Apr 2017 18:13:31 GMT): cassolato (Fri, 28 Apr 2017 18:13:39 GMT): cassolato (Fri, 28 Apr 2017 18:14:21 GMT): cassolato (Fri, 28 Apr 2017 18:14:30 GMT): MikeC711 (Fri, 28 Apr 2017 18:41:09 GMT): sstone1 (Fri, 28 Apr 2017 19:04:08 GMT): sstone1 (Fri, 28 Apr 2017 19:04:37 GMT): sstone1 (Fri, 28 Apr 2017 19:06:26 GMT): sstone1 (Fri, 28 Apr 2017 19:06:54 GMT): sstone1 (Fri, 28 Apr 2017 19:06:54 GMT): sstone1 (Fri, 28 Apr 2017 19:07:49 GMT): gauthampamu (Fri, 28 Apr 2017 20:05:50 GMT): gauthampamu (Fri, 28 Apr 2017 20:06:16 GMT): gauthampamu (Fri, 28 Apr 2017 20:07:40 GMT): sstone1 (Fri, 28 Apr 2017 20:08:01 GMT): sstone1 (Fri, 28 Apr 2017 20:08:33 GMT): sstone1 (Fri, 28 Apr 2017 20:08:57 GMT): gauthampamu (Fri, 28 Apr 2017 20:10:13 GMT): sstone1 (Fri, 28 Apr 2017 20:12:37 GMT): gauthampamu (Fri, 28 Apr 2017 20:17:49 GMT): gauthampamu (Fri, 28 Apr 2017 20:18:42 GMT): sstone1 (Fri, 28 Apr 2017 20:26:56 GMT): sstone1 (Fri, 28 Apr 2017 20:35:14 GMT): rjones (Fri, 28 Apr 2017 20:35:14 GMT): rjones (Fri, 28 Apr 2017 20:36:42 GMT): sstone1 (Fri, 28 Apr 2017 20:36:52 GMT): rjones (Fri, 28 Apr 2017 20:37:06 GMT): rjones (Fri, 28 Apr 2017 20:37:23 GMT): sstone1 (Fri, 28 Apr 2017 20:37:50 GMT): rjones (Fri, 28 Apr 2017 20:37:58 GMT): rjones (Fri, 28 Apr 2017 20:38:13 GMT): sstone1 (Fri, 28 Apr 2017 20:38:34 GMT): rjones (Fri, 28 Apr 2017 20:38:46 GMT): rjones (Fri, 28 Apr 2017 20:39:22 GMT): ProfessorX (Fri, 28 Apr 2017 20:40:48 GMT): sstone1 (Fri, 28 Apr 2017 20:41:10 GMT): sstone1 (Fri, 28 Apr 2017 20:41:14 GMT): MikeC711 (Sat, 29 Apr 2017 11:40:33 GMT): Dpkkmr (Sat, 29 Apr 2017 12:04:55 GMT): Dpkkmr (Sat, 29 Apr 2017 12:04:55 GMT): Dpkkmr (Sat, 29 Apr 2017 12:04:55 GMT): Dpkkmr (Sat, 29 Apr 2017 12:04:55 GMT): davidkel (Sat, 29 Apr 2017 12:27:55 GMT): Dpkkmr (Sat, 29 Apr 2017 12:41:05 GMT): Dpkkmr (Sat, 29 Apr 2017 12:41:05 GMT): davidkel (Sat, 29 Apr 2017 13:16:15 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:06:27 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:06:33 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:06:35 GMT): sstone1 (Sat, 29 Apr 2017 18:09:06 GMT): sstone1 (Sat, 29 Apr 2017 18:09:58 GMT): sstone1 (Sat, 29 Apr 2017 18:10:26 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:27:15 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:28:19 GMT): sstone1 (Sat, 29 Apr 2017 18:29:04 GMT): sstone1 (Sat, 29 Apr 2017 18:29:12 GMT): sstone1 (Sat, 29 Apr 2017 18:29:34 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:29:59 GMT): sstone1 (Sat, 29 Apr 2017 18:30:43 GMT): sstone1 (Sat, 29 Apr 2017 18:30:53 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:30:57 GMT): sstone1 (Sat, 29 Apr 2017 18:31:13 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:31:26 GMT): sstone1 (Sat, 29 Apr 2017 18:31:27 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:31:28 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:31:34 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:31:40 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:31:45 GMT): sstone1 (Sat, 29 Apr 2017 18:31:49 GMT): sstone1 (Sat, 29 Apr 2017 18:32:02 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:32:17 GMT): sstone1 (Sat, 29 Apr 2017 18:34:14 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:35:53 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:35:59 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:36:10 GMT): sstone1 (Sat, 29 Apr 2017 18:36:23 GMT): sstone1 (Sat, 29 Apr 2017 18:36:31 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:36:31 GMT): sstone1 (Sat, 29 Apr 2017 18:36:39 GMT): sstone1 (Sat, 29 Apr 2017 18:36:49 GMT): sstone1 (Sat, 29 Apr 2017 18:37:11 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:37:30 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:37:30 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:37:39 GMT): sstone1 (Sat, 29 Apr 2017 18:37:48 GMT): sstone1 (Sat, 29 Apr 2017 18:38:00 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:38:05 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:38:17 GMT): sstone1 (Sat, 29 Apr 2017 18:38:19 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:38:27 GMT): sstone1 (Sat, 29 Apr 2017 18:41:45 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:41:53 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:50:32 GMT): sstone1 (Sat, 29 Apr 2017 18:50:36 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:54:31 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:54:43 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:54:57 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:55:06 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:55:21 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:55:43 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:55:53 GMT): sstone1 (Sat, 29 Apr 2017 18:56:45 GMT): sstone1 (Sat, 29 Apr 2017 18:57:00 GMT): sstone1 (Sat, 29 Apr 2017 18:57:14 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:57:20 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:57:21 GMT): sstone1 (Sat, 29 Apr 2017 18:57:44 GMT): sstone1 (Sat, 29 Apr 2017 18:57:49 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:58:24 GMT): xuzhao103389 (Sat, 29 Apr 2017 18:58:39 GMT): xuzhao103389 (Sat, 29 Apr 2017 19:00:24 GMT): xuzhao103389 (Sat, 29 Apr 2017 19:01:41 GMT): xuzhao103389 (Sat, 29 Apr 2017 19:01:42 GMT): sstone1 (Sat, 29 Apr 2017 19:01:45 GMT): sstone1 (Sat, 29 Apr 2017 19:01:54 GMT): xuzhao103389 (Sat, 29 Apr 2017 19:02:14 GMT): xuzhao103389 (Sat, 29 Apr 2017 19:02:14 GMT): xuzhao103389 (Sat, 29 Apr 2017 19:02:16 GMT): xuzhao103389 (Sat, 29 Apr 2017 19:02:21 GMT): xuzhao103389 (Sat, 29 Apr 2017 19:02:31 GMT): sstone1 (Sat, 29 Apr 2017 19:02:54 GMT): sstone1 (Sat, 29 Apr 2017 19:02:59 GMT): sstone1 (Sat, 29 Apr 2017 19:03:04 GMT): xuzhao103389 (Sat, 29 Apr 2017 19:03:10 GMT): xuzhao103389 (Sat, 29 Apr 2017 19:03:14 GMT): sstone1 (Sat, 29 Apr 2017 19:03:16 GMT): sstone1 (Sat, 29 Apr 2017 19:05:24 GMT): cbf (Sat, 29 Apr 2017 19:05:47 GMT): dklesev (Sun, 30 Apr 2017 00:26:08 GMT): dklesev (Sun, 30 Apr 2017 00:26:56 GMT): Dpkkmr (Sun, 30 Apr 2017 10:35:42 GMT): Dpkkmr (Sun, 30 Apr 2017 10:35:52 GMT): jworthington (Sun, 30 Apr 2017 11:33:49 GMT): davidkel (Sun, 30 Apr 2017 12:14:54 GMT): jworthington (Sun, 30 Apr 2017 12:45:49 GMT): jworthington (Sun, 30 Apr 2017 13:11:20 GMT): sstone1 (Sun, 30 Apr 2017 16:05:56 GMT): sstone1 (Sun, 30 Apr 2017 16:07:03 GMT): sstone1 (Sun, 30 Apr 2017 16:07:40 GMT): torresjeff (Sun, 30 Apr 2017 16:17:28 GMT): torresjeff (Sun, 30 Apr 2017 16:17:53 GMT): sstone1 (Sun, 30 Apr 2017 16:18:14 GMT): sstone1 (Sun, 30 Apr 2017 16:18:29 GMT): torresjeff (Sun, 30 Apr 2017 16:20:44 GMT): torresjeff (Sun, 30 Apr 2017 16:21:53 GMT): sstone1 (Sun, 30 Apr 2017 16:22:11 GMT): torresjeff (Sun, 30 Apr 2017 16:22:33 GMT): torresjeff (Sun, 30 Apr 2017 16:22:55 GMT): sstone1 (Sun, 30 Apr 2017 16:23:03 GMT): torresjeff (Sun, 30 Apr 2017 16:23:22 GMT): torresjeff (Sun, 30 Apr 2017 16:23:41 GMT): sstone1 (Sun, 30 Apr 2017 16:23:46 GMT): torresjeff (Sun, 30 Apr 2017 16:23:50 GMT): torresjeff (Sun, 30 Apr 2017 16:23:55 GMT): torresjeff (Sun, 30 Apr 2017 16:36:34 GMT): torresjeff (Sun, 30 Apr 2017 16:36:41 GMT): torresjeff (Sun, 30 Apr 2017 16:36:58 GMT): torresjeff (Sun, 30 Apr 2017 16:37:28 GMT): torresjeff (Sun, 30 Apr 2017 16:38:32 GMT): torresjeff (Sun, 30 Apr 2017 16:40:22 GMT): torresjeff (Sun, 30 Apr 2017 16:41:19 GMT): torresjeff (Sun, 30 Apr 2017 16:43:43 GMT): torresjeff (Sun, 30 Apr 2017 17:07:15 GMT): torresjeff (Sun, 30 Apr 2017 17:07:22 GMT): sstone1 (Sun, 30 Apr 2017 17:59:14 GMT): sstone1 (Sun, 30 Apr 2017 17:59:30 GMT): torresjeff (Sun, 30 Apr 2017 18:00:01 GMT): torresjeff (Sun, 30 Apr 2017 18:00:09 GMT): sstone1 (Sun, 30 Apr 2017 18:02:16 GMT): sstone1 (Sun, 30 Apr 2017 18:02:37 GMT): sstone1 (Sun, 30 Apr 2017 18:02:50 GMT): torresjeff (Sun, 30 Apr 2017 18:03:41 GMT): torresjeff (Sun, 30 Apr 2017 18:03:49 GMT): sstone1 (Sun, 30 Apr 2017 18:03:56 GMT): sstone1 (Sun, 30 Apr 2017 18:04:07 GMT): torresjeff (Sun, 30 Apr 2017 18:04:39 GMT): sstone1 (Sun, 30 Apr 2017 18:04:50 GMT): torresjeff (Sun, 30 Apr 2017 18:05:06 GMT): sstone1 (Sun, 30 Apr 2017 18:05:08 GMT): torresjeff (Sun, 30 Apr 2017 18:05:59 GMT): sstone1 (Sun, 30 Apr 2017 18:06:27 GMT): torresjeff (Sun, 30 Apr 2017 18:07:00 GMT): torresjeff (Sun, 30 Apr 2017 18:07:22 GMT): sstone1 (Sun, 30 Apr 2017 18:15:39 GMT): sstone1 (Sun, 30 Apr 2017 18:15:59 GMT): torresjeff (Sun, 30 Apr 2017 18:19:56 GMT): torresjeff (Sun, 30 Apr 2017 18:25:01 GMT): torresjeff (Sun, 30 Apr 2017 18:25:42 GMT): torresjeff (Sun, 30 Apr 2017 18:26:21 GMT): torresjeff (Sun, 30 Apr 2017 18:27:18 GMT): torresjeff (Sun, 30 Apr 2017 18:28:09 GMT): torresjeff (Sun, 30 Apr 2017 18:29:10 GMT): sstone1 (Sun, 30 Apr 2017 18:30:36 GMT): torresjeff (Sun, 30 Apr 2017 18:30:50 GMT): sstone1 (Sun, 30 Apr 2017 18:31:01 GMT): torresjeff (Sun, 30 Apr 2017 18:31:10 GMT): torresjeff (Sun, 30 Apr 2017 18:31:19 GMT): torresjeff (Sun, 30 Apr 2017 18:31:23 GMT): torresjeff (Sun, 30 Apr 2017 18:31:57 GMT): sstone1 (Sun, 30 Apr 2017 18:32:20 GMT): sstone1 (Sun, 30 Apr 2017 18:36:34 GMT): torresjeff (Sun, 30 Apr 2017 18:36:45 GMT): torresjeff (Sun, 30 Apr 2017 18:37:05 GMT): sstone1 (Sun, 30 Apr 2017 18:37:14 GMT): sstone1 (Sun, 30 Apr 2017 18:37:19 GMT): torresjeff (Sun, 30 Apr 2017 18:37:51 GMT): torresjeff (Sun, 30 Apr 2017 18:38:01 GMT): torresjeff (Sun, 30 Apr 2017 18:38:29 GMT): sstone1 (Sun, 30 Apr 2017 18:38:56 GMT): torresjeff (Sun, 30 Apr 2017 18:39:21 GMT): sstone1 (Sun, 30 Apr 2017 18:40:45 GMT): torresjeff (Sun, 30 Apr 2017 18:46:37 GMT): sstone1 (Sun, 30 Apr 2017 18:47:05 GMT): torresjeff (Sun, 30 Apr 2017 18:56:55 GMT): torresjeff (Sun, 30 Apr 2017 19:42:57 GMT): torresjeff (Sun, 30 Apr 2017 22:57:42 GMT): torresjeff (Sun, 30 Apr 2017 23:05:51 GMT): torresjeff (Sun, 30 Apr 2017 23:05:51 GMT): torresjeff (Sun, 30 Apr 2017 23:06:14 GMT): torresjeff (Sun, 30 Apr 2017 23:18:50 GMT): abcoathup (Mon, 01 May 2017 01:31:07 GMT): abcoathup (Mon, 01 May 2017 02:05:05 GMT): abcoathup (Mon, 01 May 2017 05:02:47 GMT): davidkel (Mon, 01 May 2017 08:23:32 GMT): torresjeff (Mon, 01 May 2017 08:29:43 GMT): torresjeff (Mon, 01 May 2017 08:30:45 GMT): torresjeff (Mon, 01 May 2017 08:32:57 GMT): dselman (Mon, 01 May 2017 09:22:19 GMT): dselman (Mon, 01 May 2017 09:22:26 GMT): torresjeff (Mon, 01 May 2017 15:08:13 GMT): torresjeff (Mon, 01 May 2017 15:13:16 GMT): cassolato (Mon, 01 May 2017 15:34:40 GMT): torresjeff (Mon, 01 May 2017 15:35:32 GMT): cassolato (Mon, 01 May 2017 15:35:37 GMT): cassolato (Mon, 01 May 2017 15:36:17 GMT): torresjeff (Mon, 01 May 2017 15:36:39 GMT): cassolato (Mon, 01 May 2017 15:36:45 GMT): cassolato (Mon, 01 May 2017 15:36:51 GMT): cassolato (Mon, 01 May 2017 15:36:52 GMT): torresjeff (Mon, 01 May 2017 15:38:33 GMT): torresjeff (Mon, 01 May 2017 15:38:47 GMT): cassolato (Mon, 01 May 2017 15:47:47 GMT): cassolato (Mon, 01 May 2017 15:47:47 GMT): cassolato (Mon, 01 May 2017 15:48:21 GMT): cassolato (Mon, 01 May 2017 15:48:33 GMT): cassolato (Mon, 01 May 2017 15:48:36 GMT): torresjeff (Mon, 01 May 2017 15:49:34 GMT): cassolato (Mon, 01 May 2017 15:51:25 GMT): cassolato (Mon, 01 May 2017 15:54:31 GMT): cassolato (Mon, 01 May 2017 15:54:52 GMT): cassolato (Mon, 01 May 2017 15:55:02 GMT): cassolato (Mon, 01 May 2017 15:56:19 GMT): torresjeff (Mon, 01 May 2017 15:58:04 GMT): torresjeff (Mon, 01 May 2017 15:58:45 GMT): cassolato (Mon, 01 May 2017 16:00:01 GMT): cassolato (Mon, 01 May 2017 16:00:03 GMT): torresjeff (Mon, 01 May 2017 16:02:05 GMT): cassolato (Mon, 01 May 2017 16:12:07 GMT): torresjeff (Mon, 01 May 2017 16:31:19 GMT): torresjeff (Mon, 01 May 2017 16:34:08 GMT): torresjeff (Mon, 01 May 2017 16:34:08 GMT): torresjeff (Mon, 01 May 2017 16:37:42 GMT): dselman (Mon, 01 May 2017 16:56:06 GMT): jinvanstee (Mon, 01 May 2017 18:32:18 GMT): rjones (Mon, 01 May 2017 18:33:45 GMT): cassolato (Mon, 01 May 2017 18:34:09 GMT): cassolato (Mon, 01 May 2017 18:34:17 GMT): cassolato (Mon, 01 May 2017 18:34:45 GMT): MikeC711 (Mon, 01 May 2017 18:43:43 GMT): jinvanstee (Mon, 01 May 2017 19:08:16 GMT): cassolato (Mon, 01 May 2017 19:14:10 GMT): torresjeff (Mon, 01 May 2017 19:39:11 GMT): tennenjl (Mon, 01 May 2017 20:50:48 GMT): torresjeff (Mon, 01 May 2017 20:59:45 GMT): JohnWhitton (Mon, 01 May 2017 21:35:53 GMT): JohnWhitton (Mon, 01 May 2017 22:21:24 GMT): ZenX0904 (Mon, 01 May 2017 22:37:36 GMT): pospi (Tue, 02 May 2017 01:08:23 GMT): torresjeff (Tue, 02 May 2017 03:11:54 GMT): torresjeff (Tue, 02 May 2017 03:12:08 GMT): torresjeff (Tue, 02 May 2017 03:17:35 GMT): yongkook (Tue, 02 May 2017 04:12:36 GMT): yongkook (Tue, 02 May 2017 04:13:31 GMT): yongkook (Tue, 02 May 2017 04:15:16 GMT): yongkook (Tue, 02 May 2017 04:16:26 GMT): torresjeff (Tue, 02 May 2017 04:19:04 GMT): torresjeff (Tue, 02 May 2017 04:20:18 GMT): torresjeff (Tue, 02 May 2017 04:21:04 GMT): torresjeff (Tue, 02 May 2017 04:30:55 GMT): yongkook (Tue, 02 May 2017 04:31:20 GMT): yongkook (Tue, 02 May 2017 04:32:02 GMT): yongkook (Tue, 02 May 2017 04:39:58 GMT): yongkook (Tue, 02 May 2017 04:40:46 GMT): yongkook (Tue, 02 May 2017 04:41:08 GMT): torresjeff (Tue, 02 May 2017 04:41:54 GMT): yongkook (Tue, 02 May 2017 04:44:13 GMT): yongkook (Tue, 02 May 2017 04:44:17 GMT): yongkook (Tue, 02 May 2017 04:44:25 GMT): yongkook (Tue, 02 May 2017 04:44:59 GMT): torresjeff (Tue, 02 May 2017 04:45:29 GMT): torresjeff (Tue, 02 May 2017 04:45:35 GMT): yongkook (Tue, 02 May 2017 04:45:37 GMT): torresjeff (Tue, 02 May 2017 04:48:21 GMT): yongkook (Tue, 02 May 2017 04:48:32 GMT): abcoathup (Tue, 02 May 2017 04:49:41 GMT): torresjeff (Tue, 02 May 2017 04:51:25 GMT): torresjeff (Tue, 02 May 2017 04:52:58 GMT): yongkook (Tue, 02 May 2017 05:02:38 GMT): yongkook (Tue, 02 May 2017 05:02:46 GMT): torresjeff (Tue, 02 May 2017 05:03:38 GMT): yongkook (Tue, 02 May 2017 05:04:11 GMT): torresjeff (Tue, 02 May 2017 05:04:28 GMT): torresjeff (Tue, 02 May 2017 05:04:28 GMT): torresjeff (Tue, 02 May 2017 05:04:29 GMT): yongkook (Tue, 02 May 2017 05:25:32 GMT): yongkook (Tue, 02 May 2017 05:25:45 GMT): yongkook (Tue, 02 May 2017 05:26:49 GMT): yongkook (Tue, 02 May 2017 05:27:06 GMT): sstone1 (Tue, 02 May 2017 06:47:48 GMT): sstone1 (Tue, 02 May 2017 06:49:14 GMT): abcoathup (Tue, 02 May 2017 06:54:07 GMT): abcoathup (Tue, 02 May 2017 06:57:21 GMT): dselman (Tue, 02 May 2017 06:58:42 GMT): sstone1 (Tue, 02 May 2017 07:01:37 GMT): sstone1 (Tue, 02 May 2017 07:03:38 GMT): pospi (Tue, 02 May 2017 07:08:23 GMT): pospi (Tue, 02 May 2017 07:09:43 GMT): sstone1 (Tue, 02 May 2017 07:10:46 GMT): sstone1 (Tue, 02 May 2017 07:11:04 GMT): dselman (Tue, 02 May 2017 07:11:13 GMT): dselman (Tue, 02 May 2017 07:13:43 GMT): sstone1 (Tue, 02 May 2017 07:14:35 GMT): pospi (Tue, 02 May 2017 07:17:53 GMT): dselman (Tue, 02 May 2017 07:20:13 GMT): pospi (Tue, 02 May 2017 07:20:15 GMT): pospi (Tue, 02 May 2017 07:24:24 GMT): pospi (Tue, 02 May 2017 07:24:24 GMT): pospi (Tue, 02 May 2017 07:25:46 GMT): dselman (Tue, 02 May 2017 07:26:58 GMT): dselman (Tue, 02 May 2017 07:27:58 GMT): pospi (Tue, 02 May 2017 07:28:03 GMT): abcoathup (Tue, 02 May 2017 07:33:58 GMT): dselman (Tue, 02 May 2017 07:34:54 GMT): dselman (Tue, 02 May 2017 07:34:54 GMT): abcoathup (Tue, 02 May 2017 07:40:53 GMT): dselman (Tue, 02 May 2017 07:49:57 GMT): abcoathup (Tue, 02 May 2017 07:51:25 GMT): dselman (Tue, 02 May 2017 07:51:44 GMT): pospi (Tue, 02 May 2017 08:02:22 GMT): sstone1 (Tue, 02 May 2017 08:15:55 GMT): pospi (Tue, 02 May 2017 08:19:14 GMT): sstone1 (Tue, 02 May 2017 08:19:58 GMT): sstone1 (Tue, 02 May 2017 08:20:08 GMT): pospi (Tue, 02 May 2017 08:21:08 GMT): pospi (Tue, 02 May 2017 08:21:25 GMT): pospi (Tue, 02 May 2017 08:22:00 GMT): sstone1 (Tue, 02 May 2017 08:22:02 GMT): pospi (Tue, 02 May 2017 08:22:33 GMT): pospi (Tue, 02 May 2017 08:22:49 GMT): pospi (Tue, 02 May 2017 08:24:15 GMT): sstone1 (Tue, 02 May 2017 08:31:24 GMT): sstone1 (Tue, 02 May 2017 08:31:37 GMT): pospi (Tue, 02 May 2017 08:36:55 GMT): karthikworks (Tue, 02 May 2017 12:08:47 GMT): torresjeff (Tue, 02 May 2017 12:42:43 GMT): cassolato (Tue, 02 May 2017 13:48:43 GMT): cassolato (Tue, 02 May 2017 13:49:05 GMT): cassolato (Tue, 02 May 2017 13:52:42 GMT): cassolato (Tue, 02 May 2017 13:53:14 GMT): cassolato (Tue, 02 May 2017 13:53:52 GMT): cassolato (Tue, 02 May 2017 13:54:32 GMT): cassolato (Tue, 02 May 2017 13:57:30 GMT): cassolato (Tue, 02 May 2017 13:57:45 GMT): JohnWhitton (Tue, 02 May 2017 14:31:16 GMT): JohnWhitton (Tue, 02 May 2017 14:31:16 GMT): JohnWhitton (Tue, 02 May 2017 14:31:16 GMT): jje (Tue, 02 May 2017 15:10:04 GMT): pascallouis (Tue, 02 May 2017 15:16:22 GMT): jje (Tue, 02 May 2017 15:16:46 GMT): pascallouis (Tue, 02 May 2017 15:18:06 GMT): dselman (Tue, 02 May 2017 15:22:17 GMT): dselman (Tue, 02 May 2017 15:22:56 GMT): jje (Tue, 02 May 2017 15:26:31 GMT): jje (Tue, 02 May 2017 15:28:32 GMT): jje (Tue, 02 May 2017 15:30:00 GMT): davidkel (Tue, 02 May 2017 15:34:03 GMT): jje (Tue, 02 May 2017 15:37:35 GMT): jje (Tue, 02 May 2017 15:37:43 GMT): torresjeff (Tue, 02 May 2017 15:40:16 GMT): torresjeff (Tue, 02 May 2017 15:40:16 GMT): torresjeff (Tue, 02 May 2017 15:40:16 GMT): davidkel (Tue, 02 May 2017 15:40:31 GMT): davidkel (Tue, 02 May 2017 15:40:31 GMT): torresjeff (Tue, 02 May 2017 15:40:38 GMT): jje (Tue, 02 May 2017 15:42:10 GMT): torresjeff (Tue, 02 May 2017 15:49:12 GMT): torresjeff (Tue, 02 May 2017 15:58:35 GMT): torresjeff (Tue, 02 May 2017 15:58:35 GMT): torresjeff (Tue, 02 May 2017 16:06:01 GMT): tennenjl (Tue, 02 May 2017 16:07:34 GMT): torresjeff (Tue, 02 May 2017 16:07:48 GMT): torresjeff (Tue, 02 May 2017 16:08:02 GMT): tennenjl (Tue, 02 May 2017 16:09:57 GMT): torresjeff (Tue, 02 May 2017 16:10:22 GMT): tennenjl (Tue, 02 May 2017 16:10:27 GMT): torresjeff (Tue, 02 May 2017 16:10:33 GMT): tennenjl (Tue, 02 May 2017 16:11:57 GMT): tennenjl (Tue, 02 May 2017 16:12:56 GMT): tennenjl (Tue, 02 May 2017 16:12:56 GMT): torresjeff (Tue, 02 May 2017 16:13:18 GMT): torresjeff (Tue, 02 May 2017 16:13:25 GMT): tennenjl (Tue, 02 May 2017 16:16:36 GMT): torresjeff (Tue, 02 May 2017 16:17:47 GMT): torresjeff (Tue, 02 May 2017 16:17:51 GMT): torresjeff (Tue, 02 May 2017 17:13:26 GMT): tennenjl (Tue, 02 May 2017 17:16:24 GMT): feronti (Tue, 02 May 2017 17:50:33 GMT): cassolato (Tue, 02 May 2017 18:16:21 GMT): tennenjl (Tue, 02 May 2017 18:25:34 GMT): sstone1 (Tue, 02 May 2017 19:37:21 GMT): sstone1 (Tue, 02 May 2017 19:38:07 GMT): sstone1 (Tue, 02 May 2017 19:39:03 GMT): pascallouis (Tue, 02 May 2017 19:46:22 GMT): pascallouis (Tue, 02 May 2017 19:46:34 GMT): pascallouis (Tue, 02 May 2017 19:46:39 GMT): sstone1 (Tue, 02 May 2017 19:50:00 GMT): sstone1 (Tue, 02 May 2017 19:50:26 GMT): sstone1 (Tue, 02 May 2017 19:50:48 GMT): torresjeff (Tue, 02 May 2017 19:51:26 GMT): sstone1 (Tue, 02 May 2017 19:51:53 GMT): sstone1 (Tue, 02 May 2017 19:53:49 GMT): sstone1 (Tue, 02 May 2017 19:55:00 GMT): pascallouis (Tue, 02 May 2017 19:55:06 GMT): sstone1 (Tue, 02 May 2017 19:55:42 GMT): pascallouis (Tue, 02 May 2017 19:56:05 GMT): sstone1 (Tue, 02 May 2017 19:56:26 GMT): pascallouis (Tue, 02 May 2017 19:56:30 GMT): pascallouis (Tue, 02 May 2017 19:56:57 GMT): pascallouis (Tue, 02 May 2017 19:56:57 GMT): sstone1 (Tue, 02 May 2017 19:57:14 GMT): sstone1 (Tue, 02 May 2017 19:58:30 GMT): pascallouis (Tue, 02 May 2017 20:00:53 GMT): pascallouis (Tue, 02 May 2017 20:01:20 GMT): sstone1 (Tue, 02 May 2017 20:02:48 GMT): pascallouis (Tue, 02 May 2017 20:03:46 GMT): pascallouis (Tue, 02 May 2017 20:04:33 GMT): pascallouis (Tue, 02 May 2017 20:05:53 GMT): pascallouis (Tue, 02 May 2017 20:08:01 GMT): sstone1 (Tue, 02 May 2017 20:08:49 GMT): sstone1 (Tue, 02 May 2017 20:09:29 GMT): pascallouis (Tue, 02 May 2017 20:11:28 GMT): pascallouis (Tue, 02 May 2017 20:11:28 GMT): pascallouis (Tue, 02 May 2017 20:12:20 GMT): sstone1 (Tue, 02 May 2017 20:12:20 GMT): pascallouis (Tue, 02 May 2017 20:13:08 GMT): torresjeff (Tue, 02 May 2017 20:16:11 GMT): sstone1 (Tue, 02 May 2017 20:16:21 GMT): torresjeff (Tue, 02 May 2017 20:24:37 GMT): sstone1 (Tue, 02 May 2017 20:24:58 GMT): torresjeff (Tue, 02 May 2017 20:25:19 GMT): torresjeff (Tue, 02 May 2017 20:29:28 GMT): sstone1 (Tue, 02 May 2017 20:42:07 GMT): sstone1 (Tue, 02 May 2017 20:42:15 GMT): torresjeff (Tue, 02 May 2017 20:43:19 GMT): sstone1 (Tue, 02 May 2017 20:43:25 GMT): tennenjl (Tue, 02 May 2017 20:43:58 GMT): sstone1 (Tue, 02 May 2017 20:46:31 GMT): dselman (Tue, 02 May 2017 20:59:00 GMT): torresjeff (Tue, 02 May 2017 20:59:53 GMT): dselman (Tue, 02 May 2017 20:59:58 GMT): torresjeff (Tue, 02 May 2017 21:00:49 GMT): torresjeff (Tue, 02 May 2017 21:01:27 GMT): torresjeff (Tue, 02 May 2017 21:02:23 GMT): tennenjl (Tue, 02 May 2017 21:04:12 GMT): torresjeff (Tue, 02 May 2017 21:04:20 GMT): cassolato (Tue, 02 May 2017 21:12:10 GMT): cassolato (Tue, 02 May 2017 21:12:26 GMT): cassolato (Tue, 02 May 2017 21:12:40 GMT): cassolato (Tue, 02 May 2017 21:13:07 GMT): torresjeff (Tue, 02 May 2017 21:15:48 GMT): torresjeff (Tue, 02 May 2017 21:15:48 GMT): torresjeff (Tue, 02 May 2017 21:16:16 GMT): torresjeff (Tue, 02 May 2017 21:18:21 GMT): torresjeff (Tue, 02 May 2017 21:18:21 GMT): cassolato (Tue, 02 May 2017 21:18:30 GMT): cassolato (Tue, 02 May 2017 21:20:14 GMT): dselman (Tue, 02 May 2017 21:23:33 GMT): dselman (Tue, 02 May 2017 21:24:50 GMT): sstone1 (Tue, 02 May 2017 21:25:55 GMT): sstone1 (Tue, 02 May 2017 21:26:00 GMT): pascallouis (Tue, 02 May 2017 21:31:50 GMT): pascallouis (Tue, 02 May 2017 21:32:13 GMT): pascallouis (Tue, 02 May 2017 21:32:50 GMT): dselman (Tue, 02 May 2017 21:34:53 GMT): dselman (Tue, 02 May 2017 21:34:53 GMT): dselman (Tue, 02 May 2017 21:34:53 GMT): dselman (Tue, 02 May 2017 21:36:08 GMT): torresjeff (Tue, 02 May 2017 21:38:11 GMT): torresjeff (Tue, 02 May 2017 21:38:52 GMT): tennenjl (Tue, 02 May 2017 22:01:08 GMT): tennenjl (Tue, 02 May 2017 22:01:55 GMT): torresjeff (Tue, 02 May 2017 22:02:19 GMT): torresjeff (Tue, 02 May 2017 22:02:48 GMT): torresjeff (Tue, 02 May 2017 22:06:14 GMT): torresjeff (Tue, 02 May 2017 22:06:25 GMT): torresjeff (Tue, 02 May 2017 22:07:03 GMT): tennenjl (Tue, 02 May 2017 22:07:20 GMT): tennenjl (Tue, 02 May 2017 22:16:03 GMT): torresjeff (Tue, 02 May 2017 22:17:15 GMT): torresjeff (Tue, 02 May 2017 22:17:37 GMT): torresjeff (Tue, 02 May 2017 22:18:10 GMT): torresjeff (Tue, 02 May 2017 22:18:10 GMT): tennenjl (Tue, 02 May 2017 22:19:26 GMT): tennenjl (Tue, 02 May 2017 22:23:04 GMT): torresjeff (Tue, 02 May 2017 22:23:21 GMT): tennenjl (Tue, 02 May 2017 22:23:42 GMT): pospi (Wed, 03 May 2017 00:48:44 GMT): dselman (Wed, 03 May 2017 06:36:09 GMT): pospi (Wed, 03 May 2017 08:34:02 GMT): pospi (Wed, 03 May 2017 08:42:38 GMT): abcoathup (Wed, 03 May 2017 09:19:03 GMT): abcoathup (Wed, 03 May 2017 09:19:03 GMT): abcoathup (Wed, 03 May 2017 09:19:03 GMT): sstone1 (Wed, 03 May 2017 09:21:50 GMT): abcoathup (Wed, 03 May 2017 09:22:16 GMT): sstone1 (Wed, 03 May 2017 09:22:44 GMT): sstone1 (Wed, 03 May 2017 09:23:28 GMT): abcoathup (Wed, 03 May 2017 09:24:09 GMT): sstone1 (Wed, 03 May 2017 09:25:30 GMT): abcoathup (Wed, 03 May 2017 09:26:15 GMT): sstone1 (Wed, 03 May 2017 09:26:54 GMT): sstone1 (Wed, 03 May 2017 09:27:14 GMT): sstone1 (Wed, 03 May 2017 09:27:14 GMT): sstone1 (Wed, 03 May 2017 09:37:24 GMT): abcoathup (Wed, 03 May 2017 09:40:52 GMT): sstone1 (Wed, 03 May 2017 09:41:28 GMT): abcoathup (Wed, 03 May 2017 09:42:39 GMT): dselman (Wed, 03 May 2017 09:43:03 GMT): dselman (Wed, 03 May 2017 09:44:31 GMT): abcoathup (Wed, 03 May 2017 09:45:25 GMT): abcoathup (Wed, 03 May 2017 09:47:35 GMT): pospi (Wed, 03 May 2017 10:05:08 GMT): dselman (Wed, 03 May 2017 10:30:53 GMT): 14gracel (Wed, 03 May 2017 10:59:17 GMT): paul.sitoh (Wed, 03 May 2017 13:49:31 GMT): paul.sitoh (Wed, 03 May 2017 13:49:49 GMT): paul.sitoh (Wed, 03 May 2017 13:50:14 GMT): paul.sitoh (Wed, 03 May 2017 13:50:32 GMT): paul.sitoh (Wed, 03 May 2017 13:50:32 GMT): paul.sitoh (Wed, 03 May 2017 13:50:45 GMT): paul.sitoh (Wed, 03 May 2017 13:52:00 GMT): dselman (Wed, 03 May 2017 13:59:47 GMT): dselman (Wed, 03 May 2017 15:17:46 GMT): dselman (Wed, 03 May 2017 15:18:30 GMT): dselman (Wed, 03 May 2017 15:21:03 GMT): pascallouis (Wed, 03 May 2017 15:36:00 GMT): sstone1 (Wed, 03 May 2017 15:36:17 GMT): cassolato (Wed, 03 May 2017 16:41:29 GMT): cassolato (Wed, 03 May 2017 17:32:54 GMT): AlexKim (Wed, 03 May 2017 18:23:45 GMT): sstone1 (Wed, 03 May 2017 18:28:48 GMT): sstone1 (Wed, 03 May 2017 18:29:08 GMT): sstone1 (Wed, 03 May 2017 18:37:32 GMT): akshay111meher (Wed, 03 May 2017 18:37:32 GMT): sstone1 (Wed, 03 May 2017 18:37:58 GMT): sstone1 (Wed, 03 May 2017 18:38:06 GMT): jvkatzman (Wed, 03 May 2017 19:03:52 GMT): sstone1 (Wed, 03 May 2017 19:04:47 GMT): sstone1 (Wed, 03 May 2017 19:05:08 GMT): jvkatzman (Wed, 03 May 2017 19:05:18 GMT): sstone1 (Wed, 03 May 2017 19:05:39 GMT): jvkatzman (Wed, 03 May 2017 19:05:48 GMT): sstone1 (Wed, 03 May 2017 19:05:50 GMT): AlexKim (Wed, 03 May 2017 19:12:38 GMT): jinvanstee (Wed, 03 May 2017 19:17:52 GMT): jinvanstee (Wed, 03 May 2017 19:17:53 GMT): jinvanstee (Wed, 03 May 2017 19:18:05 GMT): jinvanstee (Wed, 03 May 2017 19:18:21 GMT): jinvanstee (Wed, 03 May 2017 19:18:42 GMT): jinvanstee (Wed, 03 May 2017 19:18:52 GMT): sstone1 (Wed, 03 May 2017 19:25:49 GMT): sstone1 (Wed, 03 May 2017 19:26:15 GMT): sstone1 (Wed, 03 May 2017 19:26:44 GMT): sstone1 (Wed, 03 May 2017 19:26:49 GMT): sstone1 (Wed, 03 May 2017 19:26:49 GMT): sstone1 (Wed, 03 May 2017 19:26:58 GMT): jinvanstee (Wed, 03 May 2017 19:28:01 GMT): jinvanstee (Wed, 03 May 2017 19:47:10 GMT): jinvanstee (Wed, 03 May 2017 19:47:11 GMT): DennisM330 (Wed, 03 May 2017 19:47:11 GMT): davidkel (Wed, 03 May 2017 19:50:09 GMT): jinvanstee (Wed, 03 May 2017 19:52:18 GMT): davidkel (Wed, 03 May 2017 20:03:44 GMT): dselman (Wed, 03 May 2017 20:09:14 GMT): jinvanstee (Wed, 03 May 2017 20:09:25 GMT): jinvanstee (Wed, 03 May 2017 20:09:51 GMT): davidkel (Wed, 03 May 2017 20:14:48 GMT): davidkel (Wed, 03 May 2017 20:16:03 GMT): jinvanstee (Wed, 03 May 2017 20:17:07 GMT): cassolato (Wed, 03 May 2017 21:16:13 GMT): ZenX0904 (Thu, 04 May 2017 04:16:30 GMT): AlexKim (Thu, 04 May 2017 04:36:42 GMT): ZenX0904 (Thu, 04 May 2017 04:47:11 GMT): ZenX0904 (Thu, 04 May 2017 04:47:24 GMT): AlexKim (Thu, 04 May 2017 05:05:07 GMT): AlexKim (Thu, 04 May 2017 05:05:18 GMT): AlexKim (Thu, 04 May 2017 05:06:09 GMT): ZenX0904 (Thu, 04 May 2017 05:07:01 GMT): AlexKim (Thu, 04 May 2017 05:07:19 GMT): ZenX0904 (Thu, 04 May 2017 05:13:40 GMT): AlexKim (Thu, 04 May 2017 05:17:34 GMT): AlexKim (Thu, 04 May 2017 05:18:35 GMT): AlexKim (Thu, 04 May 2017 05:19:15 GMT): AlexKim (Thu, 04 May 2017 05:19:19 GMT): ZenX0904 (Thu, 04 May 2017 05:22:21 GMT): AlexKim (Thu, 04 May 2017 05:22:48 GMT): paul.sitoh (Thu, 04 May 2017 07:16:54 GMT): davidkel (Thu, 04 May 2017 07:21:25 GMT): davidkel (Thu, 04 May 2017 07:21:25 GMT): paul.sitoh (Thu, 04 May 2017 07:29:14 GMT): paul.sitoh (Thu, 04 May 2017 07:29:14 GMT): paul.sitoh (Thu, 04 May 2017 07:29:14 GMT): paul.sitoh (Thu, 04 May 2017 07:29:14 GMT): paul.sitoh (Thu, 04 May 2017 07:29:14 GMT): paul.sitoh (Thu, 04 May 2017 07:29:14 GMT): paul.sitoh (Thu, 04 May 2017 07:29:14 GMT): paul.sitoh (Thu, 04 May 2017 07:37:08 GMT): dselman (Thu, 04 May 2017 08:54:13 GMT): davidkel (Thu, 04 May 2017 10:15:40 GMT): gormand (Thu, 04 May 2017 10:58:22 GMT): davidkel (Thu, 04 May 2017 11:01:31 GMT): gormand (Thu, 04 May 2017 11:01:50 GMT): dselman (Thu, 04 May 2017 11:22:49 GMT): paul.sitoh (Thu, 04 May 2017 11:44:27 GMT): davidkel (Thu, 04 May 2017 11:45:57 GMT): jinvanstee (Thu, 04 May 2017 13:56:28 GMT): gormand (Thu, 04 May 2017 14:15:09 GMT): davidkel (Thu, 04 May 2017 14:18:00 GMT): kletkeman (Thu, 04 May 2017 14:25:10 GMT): jinvanstee (Thu, 04 May 2017 14:30:38 GMT): jinvanstee (Thu, 04 May 2017 14:32:14 GMT): davidkel (Thu, 04 May 2017 14:35:29 GMT): jeffgarratt (Thu, 04 May 2017 14:40:02 GMT): jeffgarratt (Thu, 04 May 2017 14:40:02 GMT): jeffgarratt (Thu, 04 May 2017 14:41:03 GMT): kletkeman (Thu, 04 May 2017 14:41:11 GMT): kletkeman (Thu, 04 May 2017 14:41:11 GMT): davidkel (Thu, 04 May 2017 14:43:41 GMT): jeffgarratt (Thu, 04 May 2017 14:44:38 GMT): jeffgarratt (Thu, 04 May 2017 14:44:38 GMT): jeffgarratt (Thu, 04 May 2017 14:45:18 GMT): kletkeman (Thu, 04 May 2017 14:45:27 GMT): jeffgarratt (Thu, 04 May 2017 14:46:06 GMT): jeffgarratt (Thu, 04 May 2017 14:46:06 GMT): kletkeman (Thu, 04 May 2017 14:47:07 GMT): jeffgarratt (Thu, 04 May 2017 14:48:38 GMT): kletkeman (Thu, 04 May 2017 14:48:58 GMT): jeffgarratt (Thu, 04 May 2017 14:49:04 GMT): jeffgarratt (Thu, 04 May 2017 14:49:04 GMT): jeffgarratt (Thu, 04 May 2017 14:49:24 GMT): jeffgarratt (Thu, 04 May 2017 14:49:48 GMT): jeffgarratt (Thu, 04 May 2017 14:50:36 GMT): kletkeman (Thu, 04 May 2017 14:51:02 GMT): davidkel (Thu, 04 May 2017 14:51:16 GMT): kletkeman (Thu, 04 May 2017 14:53:56 GMT): bestbeforetoday (Thu, 04 May 2017 15:55:19 GMT): jinvanstee (Thu, 04 May 2017 15:58:04 GMT): bestbeforetoday (Thu, 04 May 2017 16:04:26 GMT): jinvanstee (Thu, 04 May 2017 16:07:15 GMT): jinvanstee (Thu, 04 May 2017 16:07:43 GMT): dselman (Thu, 04 May 2017 16:11:36 GMT): dselman (Thu, 04 May 2017 16:11:38 GMT): jinvanstee (Thu, 04 May 2017 16:11:51 GMT): dselman (Thu, 04 May 2017 16:12:00 GMT): jinvanstee (Thu, 04 May 2017 16:13:01 GMT): jinvanstee (Thu, 04 May 2017 17:29:46 GMT): davidkel (Thu, 04 May 2017 17:32:06 GMT): jwagantall (Thu, 04 May 2017 17:32:06 GMT): rjones (Thu, 04 May 2017 17:32:06 GMT): rjones (Thu, 04 May 2017 17:32:19 GMT): rjones (Thu, 04 May 2017 17:32:39 GMT): rjones (Thu, 04 May 2017 17:33:02 GMT): jwagantall (Thu, 04 May 2017 17:34:42 GMT): tkuhrt (Thu, 04 May 2017 17:36:09 GMT): tkuhrt (Thu, 04 May 2017 17:36:35 GMT): sstone1 (Thu, 04 May 2017 18:23:38 GMT): jinvanstee (Thu, 04 May 2017 18:25:39 GMT): ZenX0904 (Thu, 04 May 2017 19:07:09 GMT): sstone1 (Thu, 04 May 2017 19:08:45 GMT): ZenX0904 (Thu, 04 May 2017 19:14:08 GMT): jinvanstee (Thu, 04 May 2017 19:33:53 GMT): sstone1 (Thu, 04 May 2017 19:34:17 GMT): sstone1 (Thu, 04 May 2017 19:34:35 GMT): jinvanstee (Thu, 04 May 2017 19:36:14 GMT): AlexKim (Thu, 04 May 2017 22:08:04 GMT): AlexKim (Thu, 04 May 2017 22:09:17 GMT): AlexKim (Thu, 04 May 2017 22:09:33 GMT): AlexKim (Thu, 04 May 2017 22:17:40 GMT): AlexKim (Thu, 04 May 2017 22:17:56 GMT): dselman (Thu, 04 May 2017 22:57:46 GMT): ZenX0904 (Fri, 05 May 2017 08:20:14 GMT): sstone1 (Fri, 05 May 2017 08:21:05 GMT): ZenX0904 (Fri, 05 May 2017 08:21:47 GMT): sstone1 (Fri, 05 May 2017 08:22:03 GMT): sstone1 (Fri, 05 May 2017 08:22:13 GMT): ZenX0904 (Fri, 05 May 2017 08:22:50 GMT): sstone1 (Fri, 05 May 2017 08:26:10 GMT): sstone1 (Fri, 05 May 2017 08:27:08 GMT): sstone1 (Fri, 05 May 2017 08:29:05 GMT): sstone1 (Fri, 05 May 2017 08:30:52 GMT): uber.twin (Fri, 05 May 2017 10:01:41 GMT): uber.twin (Fri, 05 May 2017 10:01:59 GMT): dselman (Fri, 05 May 2017 10:30:30 GMT): davidkel (Fri, 05 May 2017 10:39:29 GMT): uber.twin (Fri, 05 May 2017 11:22:08 GMT): nvlasov (Fri, 05 May 2017 11:24:54 GMT): uber.twin (Fri, 05 May 2017 11:26:58 GMT): jorgedr (Fri, 05 May 2017 11:27:09 GMT): nvlasov (Fri, 05 May 2017 11:29:54 GMT): nvlasov (Fri, 05 May 2017 11:36:25 GMT): davidkel (Fri, 05 May 2017 11:57:46 GMT): uber.twin (Fri, 05 May 2017 13:30:29 GMT): uber.twin (Fri, 05 May 2017 13:30:48 GMT): uber.twin (Fri, 05 May 2017 13:31:06 GMT): uber.twin (Fri, 05 May 2017 13:31:37 GMT): bestbeforetoday (Fri, 05 May 2017 13:39:41 GMT): uber.twin (Fri, 05 May 2017 13:47:44 GMT): uber.twin (Fri, 05 May 2017 13:48:59 GMT): uber.twin (Fri, 05 May 2017 13:49:22 GMT): uber.twin (Fri, 05 May 2017 13:51:13 GMT): uber.twin (Fri, 05 May 2017 13:52:48 GMT): davidkel (Fri, 05 May 2017 14:06:14 GMT): uber.twin (Fri, 05 May 2017 14:14:54 GMT): davidkel (Fri, 05 May 2017 14:19:06 GMT): uber.twin (Fri, 05 May 2017 14:22:56 GMT): davidkel (Fri, 05 May 2017 14:25:26 GMT): uber.twin (Fri, 05 May 2017 14:32:17 GMT): uber.twin (Fri, 05 May 2017 14:32:18 GMT): uber.twin (Fri, 05 May 2017 15:18:13 GMT): dselman (Fri, 05 May 2017 15:19:15 GMT): nvlasov (Fri, 05 May 2017 15:20:45 GMT): davidkel (Fri, 05 May 2017 15:23:37 GMT): sstone1 (Fri, 05 May 2017 18:13:04 GMT): sstone1 (Fri, 05 May 2017 18:13:35 GMT): sstone1 (Fri, 05 May 2017 18:13:47 GMT): jinvanstee (Fri, 05 May 2017 18:14:18 GMT): dselman (Fri, 05 May 2017 18:17:20 GMT): dselman (Fri, 05 May 2017 18:25:56 GMT): AlexKim (Fri, 05 May 2017 18:58:49 GMT): AlexKim (Fri, 05 May 2017 19:03:48 GMT): dselman (Fri, 05 May 2017 20:21:30 GMT): AlexKim (Fri, 05 May 2017 20:32:38 GMT): torresjeff (Sat, 06 May 2017 03:02:48 GMT): torresjeff (Sat, 06 May 2017 03:02:58 GMT): dselman (Sat, 06 May 2017 08:03:20 GMT): tennenjl (Sat, 06 May 2017 13:58:49 GMT): torresjeff (Sat, 06 May 2017 14:10:52 GMT): torresjeff (Sat, 06 May 2017 15:21:02 GMT): sstone1 (Sat, 06 May 2017 15:21:51 GMT): torresjeff (Sat, 06 May 2017 15:22:03 GMT): torresjeff (Sat, 06 May 2017 15:22:23 GMT): torresjeff (Sat, 06 May 2017 15:26:31 GMT): sstone1 (Sat, 06 May 2017 15:28:45 GMT): torresjeff (Sat, 06 May 2017 15:29:18 GMT): dselman (Sat, 06 May 2017 16:26:38 GMT): tennenjl (Sat, 06 May 2017 21:05:57 GMT): shsedghi (Sun, 07 May 2017 01:20:59 GMT): tennenjl (Sun, 07 May 2017 03:06:43 GMT): tennenjl (Sun, 07 May 2017 03:16:32 GMT): dselman (Sun, 07 May 2017 08:22:42 GMT): tennenjl (Sun, 07 May 2017 12:26:30 GMT): sstone1 (Sun, 07 May 2017 12:30:26 GMT): dden (Sun, 07 May 2017 12:30:26 GMT): dden (Sun, 07 May 2017 12:34:13 GMT): krisnd (Sun, 07 May 2017 12:41:10 GMT): dselman (Sun, 07 May 2017 20:37:16 GMT): dselman (Sun, 07 May 2017 20:44:56 GMT): dselman (Sun, 07 May 2017 20:45:01 GMT): dselman (Sun, 07 May 2017 20:45:28 GMT): dselman (Sun, 07 May 2017 20:45:53 GMT): dselman (Sun, 07 May 2017 20:46:59 GMT): dselman (Sun, 07 May 2017 20:47:06 GMT): dselman (Sun, 07 May 2017 20:48:11 GMT): tennenjl (Sun, 07 May 2017 21:48:44 GMT): tennenjl (Sun, 07 May 2017 22:51:39 GMT): tennenjl (Sun, 07 May 2017 22:52:24 GMT): dselman (Mon, 08 May 2017 07:10:27 GMT): dselman (Mon, 08 May 2017 07:12:09 GMT): dselman (Mon, 08 May 2017 07:12:20 GMT): uber.twin (Mon, 08 May 2017 10:37:29 GMT): uber.twin (Mon, 08 May 2017 10:37:59 GMT): tennenjl (Mon, 08 May 2017 11:46:06 GMT): vinitesh (Mon, 08 May 2017 12:07:46 GMT): vinitesh (Mon, 08 May 2017 12:09:21 GMT): vinitesh (Mon, 08 May 2017 12:12:45 GMT): sstone1 (Mon, 08 May 2017 12:15:04 GMT): hshimo (Mon, 08 May 2017 12:15:05 GMT): vinitesh (Mon, 08 May 2017 12:16:10 GMT): sstone1 (Mon, 08 May 2017 12:18:14 GMT): vinitesh (Mon, 08 May 2017 12:20:38 GMT): vinitesh (Mon, 08 May 2017 12:20:44 GMT): sstone1 (Mon, 08 May 2017 12:21:04 GMT): vinitesh (Mon, 08 May 2017 12:21:43 GMT): vinitesh (Mon, 08 May 2017 12:21:53 GMT): vinitesh (Mon, 08 May 2017 12:22:03 GMT): davidkel (Mon, 08 May 2017 12:28:59 GMT): vinitesh (Mon, 08 May 2017 12:32:03 GMT): vinitesh (Mon, 08 May 2017 12:32:56 GMT): davidkel (Mon, 08 May 2017 12:35:12 GMT): vinitesh (Mon, 08 May 2017 12:43:32 GMT): davidkel (Mon, 08 May 2017 12:56:15 GMT): vinitesh (Mon, 08 May 2017 12:56:36 GMT): davidkel (Mon, 08 May 2017 14:25:40 GMT): dselman (Mon, 08 May 2017 15:02:36 GMT): GururajL (Mon, 08 May 2017 15:02:36 GMT): GururajL (Mon, 08 May 2017 15:05:00 GMT): GururajL (Mon, 08 May 2017 15:08:57 GMT): GururajL (Mon, 08 May 2017 15:09:34 GMT): GururajL (Mon, 08 May 2017 15:10:55 GMT): dselman (Mon, 08 May 2017 15:16:06 GMT): dselman (Mon, 08 May 2017 15:16:43 GMT): sstone1 (Mon, 08 May 2017 15:21:47 GMT): sstone1 (Mon, 08 May 2017 15:21:54 GMT): uber.twin (Mon, 08 May 2017 15:22:43 GMT): jinvanstee (Mon, 08 May 2017 15:24:07 GMT): uber.twin (Mon, 08 May 2017 15:24:16 GMT): jinvanstee (Mon, 08 May 2017 15:24:16 GMT): uber.twin (Mon, 08 May 2017 15:24:18 GMT): dselman (Mon, 08 May 2017 15:24:57 GMT): uber.twin (Mon, 08 May 2017 15:25:07 GMT): jinvanstee (Mon, 08 May 2017 15:25:29 GMT): uber.twin (Mon, 08 May 2017 15:25:32 GMT): GururajL (Mon, 08 May 2017 15:26:25 GMT): uber.twin (Mon, 08 May 2017 15:28:54 GMT): uber.twin (Mon, 08 May 2017 15:29:27 GMT): dselman (Mon, 08 May 2017 15:34:48 GMT): dselman (Mon, 08 May 2017 15:34:57 GMT): uber.twin (Mon, 08 May 2017 15:36:50 GMT): uber.twin (Mon, 08 May 2017 15:36:56 GMT): sstone1 (Mon, 08 May 2017 15:39:35 GMT): sstone1 (Mon, 08 May 2017 15:39:57 GMT): GururajL (Mon, 08 May 2017 15:40:13 GMT): dselman (Mon, 08 May 2017 15:40:52 GMT): dselman (Mon, 08 May 2017 15:40:52 GMT): GururajL (Mon, 08 May 2017 15:41:19 GMT): sstone1 (Mon, 08 May 2017 15:42:02 GMT): uber.twin (Mon, 08 May 2017 15:42:28 GMT): dselman (Mon, 08 May 2017 15:43:45 GMT): dselman (Mon, 08 May 2017 15:43:56 GMT): uber.twin (Mon, 08 May 2017 15:46:44 GMT): GururajL (Mon, 08 May 2017 15:47:13 GMT): GururajL (Mon, 08 May 2017 15:47:42 GMT): jje (Mon, 08 May 2017 15:47:56 GMT): jje (Mon, 08 May 2017 15:48:11 GMT): vinitesh (Mon, 08 May 2017 15:48:21 GMT): davidkel (Mon, 08 May 2017 15:51:26 GMT): davidkel (Mon, 08 May 2017 15:53:14 GMT): dselman (Mon, 08 May 2017 15:54:16 GMT): jje (Mon, 08 May 2017 15:54:19 GMT): dselman (Mon, 08 May 2017 15:55:37 GMT): dselman (Mon, 08 May 2017 15:56:05 GMT): jje (Mon, 08 May 2017 15:56:33 GMT): sstone1 (Mon, 08 May 2017 16:14:27 GMT): dselman (Mon, 08 May 2017 16:23:41 GMT): JijoGeorge (Mon, 08 May 2017 16:23:41 GMT): davidkel (Mon, 08 May 2017 16:24:18 GMT): JijoGeorge (Mon, 08 May 2017 16:25:53 GMT): dselman (Mon, 08 May 2017 16:26:26 GMT): JijoGeorge (Mon, 08 May 2017 16:29:41 GMT): jvkatzman (Mon, 08 May 2017 16:31:54 GMT): rjones (Mon, 08 May 2017 16:48:45 GMT): rjones (Mon, 08 May 2017 16:49:29 GMT): rjones (Mon, 08 May 2017 16:50:59 GMT): stu2 (Mon, 08 May 2017 16:54:48 GMT): torresjeff (Mon, 08 May 2017 16:55:09 GMT): dselman (Mon, 08 May 2017 16:55:17 GMT): dselman (Mon, 08 May 2017 16:55:28 GMT): torresjeff (Mon, 08 May 2017 16:55:36 GMT): sstone1 (Mon, 08 May 2017 16:57:44 GMT): vinitesh (Mon, 08 May 2017 16:58:47 GMT): vinitesh (Mon, 08 May 2017 16:59:54 GMT): davidkel (Mon, 08 May 2017 17:01:12 GMT): vinitesh (Mon, 08 May 2017 17:02:11 GMT): sstone1 (Mon, 08 May 2017 17:02:55 GMT): vinitesh (Mon, 08 May 2017 17:04:44 GMT): GururajL (Mon, 08 May 2017 17:05:22 GMT): torresjeff (Mon, 08 May 2017 17:06:03 GMT): GururajL (Mon, 08 May 2017 17:06:26 GMT): davidkel (Mon, 08 May 2017 17:06:53 GMT): davidkel (Mon, 08 May 2017 17:08:59 GMT): torresjeff (Mon, 08 May 2017 17:09:13 GMT): torresjeff (Mon, 08 May 2017 17:09:32 GMT): sstone1 (Mon, 08 May 2017 17:09:59 GMT): torresjeff (Mon, 08 May 2017 17:10:39 GMT): GururajL (Mon, 08 May 2017 17:10:49 GMT): torresjeff (Mon, 08 May 2017 17:12:20 GMT): torresjeff (Mon, 08 May 2017 17:16:05 GMT): jinvanstee (Mon, 08 May 2017 17:16:54 GMT): tennenjl (Mon, 08 May 2017 17:22:20 GMT): torresjeff (Mon, 08 May 2017 17:23:10 GMT): tennenjl (Mon, 08 May 2017 17:24:02 GMT): torresjeff (Mon, 08 May 2017 17:25:51 GMT): tennenjl (Mon, 08 May 2017 17:26:56 GMT): tennenjl (Mon, 08 May 2017 17:28:12 GMT): torresjeff (Mon, 08 May 2017 17:29:09 GMT): tennenjl (Mon, 08 May 2017 17:29:36 GMT): torresjeff (Mon, 08 May 2017 17:29:38 GMT): vinitesh (Mon, 08 May 2017 17:45:12 GMT): vinitesh (Mon, 08 May 2017 17:48:51 GMT): tennenjl (Mon, 08 May 2017 18:50:06 GMT): torresjeff (Mon, 08 May 2017 18:50:24 GMT): torresjeff (Mon, 08 May 2017 18:52:12 GMT): tennenjl (Mon, 08 May 2017 18:53:21 GMT): torresjeff (Mon, 08 May 2017 18:53:53 GMT): tennenjl (Mon, 08 May 2017 18:54:29 GMT): torresjeff (Mon, 08 May 2017 18:54:57 GMT): torresjeff (Mon, 08 May 2017 18:55:10 GMT): tennenjl (Mon, 08 May 2017 18:56:45 GMT): torresjeff (Mon, 08 May 2017 18:57:42 GMT): vinitesh (Mon, 08 May 2017 18:57:51 GMT): torresjeff (Mon, 08 May 2017 18:58:01 GMT): torresjeff (Mon, 08 May 2017 18:58:06 GMT): sstone1 (Mon, 08 May 2017 18:58:23 GMT): sstone1 (Mon, 08 May 2017 18:58:54 GMT): torresjeff (Mon, 08 May 2017 18:59:22 GMT): torresjeff (Mon, 08 May 2017 18:59:32 GMT): tennenjl (Mon, 08 May 2017 18:59:51 GMT): torresjeff (Mon, 08 May 2017 19:00:49 GMT): sstone1 (Mon, 08 May 2017 19:01:03 GMT): torresjeff (Mon, 08 May 2017 19:01:19 GMT): torresjeff (Mon, 08 May 2017 19:01:43 GMT): sstone1 (Mon, 08 May 2017 19:01:57 GMT): sstone1 (Mon, 08 May 2017 19:02:00 GMT): sstone1 (Mon, 08 May 2017 19:02:34 GMT): torresjeff (Mon, 08 May 2017 19:02:55 GMT): sstone1 (Mon, 08 May 2017 19:03:09 GMT): torresjeff (Mon, 08 May 2017 19:03:16 GMT): torresjeff (Mon, 08 May 2017 19:04:23 GMT): torresjeff (Mon, 08 May 2017 19:04:53 GMT): torresjeff (Mon, 08 May 2017 19:05:18 GMT): tennenjl (Mon, 08 May 2017 19:05:59 GMT): sstone1 (Mon, 08 May 2017 19:06:00 GMT): sstone1 (Mon, 08 May 2017 19:06:16 GMT): torresjeff (Mon, 08 May 2017 19:21:53 GMT): sstone1 (Mon, 08 May 2017 19:22:10 GMT): sstone1 (Mon, 08 May 2017 19:22:35 GMT): sstone1 (Mon, 08 May 2017 19:22:47 GMT): torresjeff (Mon, 08 May 2017 19:22:57 GMT): torresjeff (Mon, 08 May 2017 19:22:59 GMT): sstone1 (Mon, 08 May 2017 19:23:00 GMT): torresjeff (Mon, 08 May 2017 19:23:12 GMT): torresjeff (Mon, 08 May 2017 19:23:19 GMT): sstone1 (Mon, 08 May 2017 19:23:22 GMT): torresjeff (Mon, 08 May 2017 19:24:03 GMT): sstone1 (Mon, 08 May 2017 19:24:56 GMT): sstone1 (Mon, 08 May 2017 19:24:56 GMT): sstone1 (Mon, 08 May 2017 19:25:01 GMT): torresjeff (Mon, 08 May 2017 19:25:27 GMT): torresjeff (Mon, 08 May 2017 19:27:00 GMT): torresjeff (Mon, 08 May 2017 19:27:24 GMT): sstone1 (Mon, 08 May 2017 19:29:09 GMT): sstone1 (Mon, 08 May 2017 19:29:18 GMT): sstone1 (Mon, 08 May 2017 19:29:29 GMT): sstone1 (Mon, 08 May 2017 19:29:42 GMT): torresjeff (Mon, 08 May 2017 19:29:47 GMT): torresjeff (Mon, 08 May 2017 19:29:49 GMT): sstone1 (Mon, 08 May 2017 19:29:55 GMT): sstone1 (Mon, 08 May 2017 19:29:55 GMT): sstone1 (Mon, 08 May 2017 19:30:05 GMT): sstone1 (Mon, 08 May 2017 19:30:14 GMT): torresjeff (Mon, 08 May 2017 19:30:24 GMT): sstone1 (Mon, 08 May 2017 19:30:27 GMT): torresjeff (Mon, 08 May 2017 19:31:54 GMT): sstone1 (Mon, 08 May 2017 19:32:13 GMT): sstone1 (Mon, 08 May 2017 19:33:24 GMT): sstone1 (Mon, 08 May 2017 19:34:46 GMT): sstone1 (Mon, 08 May 2017 19:34:54 GMT): torresjeff (Mon, 08 May 2017 19:47:44 GMT): sstone1 (Mon, 08 May 2017 19:47:48 GMT): sstone1 (Mon, 08 May 2017 19:47:55 GMT): sstone1 (Mon, 08 May 2017 19:48:06 GMT): torresjeff (Mon, 08 May 2017 19:48:12 GMT): sstone1 (Mon, 08 May 2017 19:49:26 GMT): torresjeff (Mon, 08 May 2017 19:49:57 GMT): torresjeff (Mon, 08 May 2017 19:50:07 GMT): sstone1 (Mon, 08 May 2017 19:50:16 GMT): sstone1 (Mon, 08 May 2017 19:50:20 GMT): sstone1 (Mon, 08 May 2017 19:50:28 GMT): sstone1 (Mon, 08 May 2017 19:50:42 GMT): sstone1 (Mon, 08 May 2017 19:51:06 GMT): torresjeff (Mon, 08 May 2017 19:51:20 GMT): torresjeff (Mon, 08 May 2017 19:51:26 GMT): torresjeff (Mon, 08 May 2017 19:51:36 GMT): torresjeff (Mon, 08 May 2017 19:51:44 GMT): sstone1 (Mon, 08 May 2017 19:51:51 GMT): torresjeff (Mon, 08 May 2017 19:55:12 GMT): torresjeff (Mon, 08 May 2017 19:55:20 GMT): torresjeff (Mon, 08 May 2017 19:55:42 GMT): sstone1 (Mon, 08 May 2017 19:59:53 GMT): torresjeff (Mon, 08 May 2017 20:00:39 GMT): torresjeff (Mon, 08 May 2017 20:00:57 GMT): torresjeff (Mon, 08 May 2017 20:01:05 GMT): torresjeff (Mon, 08 May 2017 20:01:14 GMT): sstone1 (Mon, 08 May 2017 20:01:30 GMT): torresjeff (Mon, 08 May 2017 20:01:54 GMT): sstone1 (Mon, 08 May 2017 20:02:01 GMT): sstone1 (Mon, 08 May 2017 20:50:38 GMT): sstone1 (Mon, 08 May 2017 20:56:55 GMT): davidkel (Mon, 08 May 2017 20:58:26 GMT): abcoathup (Mon, 08 May 2017 23:13:59 GMT): abcoathup (Tue, 09 May 2017 04:01:20 GMT): dselman (Tue, 09 May 2017 05:03:53 GMT): dselman (Tue, 09 May 2017 05:04:26 GMT): SachinJha (Tue, 09 May 2017 05:04:26 GMT): abcoathup (Tue, 09 May 2017 05:06:19 GMT): dselman (Tue, 09 May 2017 05:27:52 GMT): dselman (Tue, 09 May 2017 05:28:24 GMT): abcoathup (Tue, 09 May 2017 05:37:56 GMT): abcoathup (Tue, 09 May 2017 05:39:26 GMT): abcoathup (Tue, 09 May 2017 05:39:26 GMT): abcoathup (Tue, 09 May 2017 05:39:26 GMT): dselman (Tue, 09 May 2017 05:41:18 GMT): dselman (Tue, 09 May 2017 05:42:04 GMT): dselman (Tue, 09 May 2017 05:43:08 GMT): abcoathup (Tue, 09 May 2017 05:46:18 GMT): dselman (Tue, 09 May 2017 05:49:33 GMT): dselman (Tue, 09 May 2017 05:49:47 GMT): abcoathup (Tue, 09 May 2017 05:58:24 GMT): abcoathup (Tue, 09 May 2017 05:58:48 GMT): abcoathup (Tue, 09 May 2017 05:58:48 GMT): dselman (Tue, 09 May 2017 06:31:59 GMT): dselman (Tue, 09 May 2017 06:31:59 GMT): abcoathup (Tue, 09 May 2017 07:48:57 GMT): abcoathup (Tue, 09 May 2017 07:48:57 GMT): abcoathup (Tue, 09 May 2017 07:51:22 GMT): dselman (Tue, 09 May 2017 07:54:00 GMT): abcoathup (Tue, 09 May 2017 08:01:36 GMT): sstone1 (Tue, 09 May 2017 08:02:38 GMT): vinitesh (Tue, 09 May 2017 08:56:12 GMT): davidkel (Tue, 09 May 2017 08:59:45 GMT): sstone1 (Tue, 09 May 2017 09:30:54 GMT): sstone1 (Tue, 09 May 2017 09:31:36 GMT): dselman (Tue, 09 May 2017 09:46:53 GMT): sstone1 (Tue, 09 May 2017 09:51:07 GMT): davidkel (Tue, 09 May 2017 10:37:55 GMT): vinitesh (Tue, 09 May 2017 12:00:55 GMT): vinitesh (Tue, 09 May 2017 12:02:05 GMT): davidkel (Tue, 09 May 2017 12:06:16 GMT): vinitesh (Tue, 09 May 2017 12:15:14 GMT): davidkel (Tue, 09 May 2017 12:16:18 GMT): vinitesh (Tue, 09 May 2017 12:16:45 GMT): paul.sitoh (Tue, 09 May 2017 12:28:58 GMT): paul.sitoh (Tue, 09 May 2017 12:28:58 GMT): davidkel (Tue, 09 May 2017 12:38:46 GMT): saridsa1 (Tue, 09 May 2017 15:10:55 GMT): dedline 1 (Tue, 09 May 2017 15:44:06 GMT): EdMoffatt (Tue, 09 May 2017 16:22:37 GMT): guyho (Tue, 09 May 2017 16:34:55 GMT): torresjeff (Tue, 09 May 2017 16:40:57 GMT): torresjeff (Tue, 09 May 2017 16:41:30 GMT): torresjeff (Tue, 09 May 2017 16:41:36 GMT): dselman (Tue, 09 May 2017 16:41:43 GMT): dselman (Tue, 09 May 2017 16:41:55 GMT): dselman (Tue, 09 May 2017 16:42:06 GMT): torresjeff (Tue, 09 May 2017 16:42:55 GMT): dselman (Tue, 09 May 2017 16:42:56 GMT): EdMoffatt (Tue, 09 May 2017 16:43:00 GMT): EdMoffatt (Tue, 09 May 2017 16:43:28 GMT): guyho (Tue, 09 May 2017 16:44:13 GMT): EdMoffatt (Tue, 09 May 2017 16:44:41 GMT): dselman (Tue, 09 May 2017 16:46:24 GMT): EdMoffatt (Tue, 09 May 2017 16:48:03 GMT): EdMoffatt (Tue, 09 May 2017 16:48:13 GMT): EdMoffatt (Tue, 09 May 2017 16:48:51 GMT): torresjeff (Tue, 09 May 2017 16:53:45 GMT): guyho (Tue, 09 May 2017 16:54:06 GMT): torresjeff (Tue, 09 May 2017 16:55:25 GMT): torresjeff (Tue, 09 May 2017 16:55:35 GMT): dselman (Tue, 09 May 2017 16:55:38 GMT): torresjeff (Tue, 09 May 2017 16:55:51 GMT): dselman (Tue, 09 May 2017 16:56:20 GMT): dselman (Tue, 09 May 2017 16:56:21 GMT): dselman (Tue, 09 May 2017 16:56:41 GMT): dselman (Tue, 09 May 2017 16:57:04 GMT): torresjeff (Tue, 09 May 2017 16:57:09 GMT): dselman (Tue, 09 May 2017 16:57:10 GMT): torresjeff (Tue, 09 May 2017 16:57:11 GMT): torresjeff (Tue, 09 May 2017 16:57:13 GMT): torresjeff (Tue, 09 May 2017 16:57:23 GMT): torresjeff (Tue, 09 May 2017 16:57:33 GMT): torresjeff (Tue, 09 May 2017 16:58:26 GMT): dselman (Tue, 09 May 2017 16:58:27 GMT): dselman (Tue, 09 May 2017 16:58:31 GMT): torresjeff (Tue, 09 May 2017 16:58:31 GMT): torresjeff (Tue, 09 May 2017 16:59:01 GMT): torresjeff (Tue, 09 May 2017 16:59:04 GMT): dselman (Tue, 09 May 2017 16:59:50 GMT): torresjeff (Tue, 09 May 2017 17:00:26 GMT): dselman (Tue, 09 May 2017 17:00:59 GMT): torresjeff (Tue, 09 May 2017 17:01:07 GMT): jinvanstee (Tue, 09 May 2017 18:30:34 GMT): sstone1 (Tue, 09 May 2017 20:21:57 GMT): jinvanstee (Tue, 09 May 2017 20:24:43 GMT): sstone1 (Tue, 09 May 2017 20:25:01 GMT): sstone1 (Tue, 09 May 2017 20:31:57 GMT): Ladar (Tue, 09 May 2017 20:31:57 GMT): torresjeff (Tue, 09 May 2017 20:41:49 GMT): sstone1 (Tue, 09 May 2017 20:44:12 GMT): sstone1 (Tue, 09 May 2017 20:46:49 GMT): sstone1 (Tue, 09 May 2017 20:47:26 GMT): sstone1 (Tue, 09 May 2017 20:48:25 GMT): sstone1 (Tue, 09 May 2017 20:48:25 GMT): sstone1 (Tue, 09 May 2017 20:49:50 GMT): sstone1 (Tue, 09 May 2017 20:50:29 GMT): sstone1 (Tue, 09 May 2017 20:50:54 GMT): torresjeff (Tue, 09 May 2017 20:53:19 GMT): sstone1 (Tue, 09 May 2017 20:54:52 GMT): sstone1 (Tue, 09 May 2017 20:55:13 GMT): torresjeff (Tue, 09 May 2017 20:55:31 GMT): torresjeff (Tue, 09 May 2017 20:55:56 GMT): sstone1 (Tue, 09 May 2017 20:56:20 GMT): torresjeff (Tue, 09 May 2017 20:56:33 GMT): torresjeff (Tue, 09 May 2017 20:57:11 GMT): torresjeff (Tue, 09 May 2017 20:57:16 GMT): torresjeff (Tue, 09 May 2017 20:58:14 GMT): torresjeff (Tue, 09 May 2017 20:58:31 GMT): sstone1 (Tue, 09 May 2017 20:58:37 GMT): torresjeff (Tue, 09 May 2017 20:58:53 GMT): torresjeff (Tue, 09 May 2017 20:59:00 GMT): sstone1 (Tue, 09 May 2017 20:59:05 GMT): sstone1 (Tue, 09 May 2017 20:59:12 GMT): sstone1 (Tue, 09 May 2017 20:59:27 GMT): torresjeff (Tue, 09 May 2017 20:59:59 GMT): sstone1 (Tue, 09 May 2017 21:00:20 GMT): sstone1 (Tue, 09 May 2017 21:01:40 GMT): sstone1 (Tue, 09 May 2017 21:02:03 GMT): torresjeff (Tue, 09 May 2017 21:02:21 GMT): dselman (Tue, 09 May 2017 21:04:57 GMT): Sandeep (Tue, 09 May 2017 21:04:57 GMT): Sandeep (Tue, 09 May 2017 21:05:47 GMT): GoodFaith (Tue, 09 May 2017 21:05:58 GMT): Sandeep (Tue, 09 May 2017 21:06:06 GMT): sstone1 (Tue, 09 May 2017 21:06:43 GMT): sstone1 (Tue, 09 May 2017 21:07:13 GMT): sstone1 (Tue, 09 May 2017 21:08:10 GMT): sstone1 (Tue, 09 May 2017 21:08:21 GMT): sstone1 (Tue, 09 May 2017 21:10:00 GMT): dselman (Tue, 09 May 2017 21:10:42 GMT): Sandeep (Tue, 09 May 2017 21:11:20 GMT): GoodFaith (Tue, 09 May 2017 21:12:44 GMT): sstone1 (Tue, 09 May 2017 21:13:58 GMT): GoodFaith (Tue, 09 May 2017 21:14:30 GMT): torresjeff (Tue, 09 May 2017 21:22:29 GMT): torresjeff (Tue, 09 May 2017 21:22:48 GMT): torresjeff (Tue, 09 May 2017 21:23:12 GMT): sstone1 (Tue, 09 May 2017 21:29:01 GMT): sstone1 (Tue, 09 May 2017 21:30:25 GMT): torresjeff (Tue, 09 May 2017 21:30:45 GMT): torresjeff (Tue, 09 May 2017 21:31:27 GMT): torresjeff (Tue, 09 May 2017 21:35:45 GMT): torresjeff (Tue, 09 May 2017 21:36:28 GMT): torresjeff (Tue, 09 May 2017 21:36:58 GMT): Sandeep (Tue, 09 May 2017 21:37:37 GMT): sanjay-saxena (Tue, 09 May 2017 21:38:14 GMT): sstone1 (Tue, 09 May 2017 21:40:30 GMT): sstone1 (Tue, 09 May 2017 21:41:10 GMT): sstone1 (Tue, 09 May 2017 21:41:28 GMT): sstone1 (Tue, 09 May 2017 21:42:02 GMT): torresjeff (Tue, 09 May 2017 21:42:12 GMT): torresjeff (Tue, 09 May 2017 21:42:16 GMT): sstone1 (Tue, 09 May 2017 21:42:39 GMT): sstone1 (Tue, 09 May 2017 21:43:00 GMT): sstone1 (Tue, 09 May 2017 21:44:00 GMT): sstone1 (Tue, 09 May 2017 21:44:44 GMT): sanjay-saxena (Tue, 09 May 2017 21:45:06 GMT): sstone1 (Tue, 09 May 2017 21:45:09 GMT): sstone1 (Tue, 09 May 2017 21:45:25 GMT): sstone1 (Tue, 09 May 2017 21:45:38 GMT): sanjay-saxena (Tue, 09 May 2017 21:45:47 GMT): rjones (Tue, 09 May 2017 22:56:01 GMT): berserkr (Tue, 09 May 2017 22:56:26 GMT): idpattison (Tue, 09 May 2017 23:21:50 GMT): Ladar (Wed, 10 May 2017 01:49:04 GMT): tkuhrt (Wed, 10 May 2017 02:29:12 GMT): Sandeep (Wed, 10 May 2017 02:36:05 GMT): Sandeep (Wed, 10 May 2017 02:37:17 GMT): Sandeep (Wed, 10 May 2017 02:37:30 GMT): Sandeep (Wed, 10 May 2017 02:37:30 GMT): Sandeep (Wed, 10 May 2017 02:39:34 GMT): Sandeep (Wed, 10 May 2017 02:47:42 GMT): Sandeep (Wed, 10 May 2017 02:48:21 GMT): Sandeep (Wed, 10 May 2017 02:48:59 GMT): Sandeep (Wed, 10 May 2017 02:50:03 GMT): Sandeep (Wed, 10 May 2017 02:52:27 GMT): saridsa1 (Wed, 10 May 2017 05:15:48 GMT): abcoathup (Wed, 10 May 2017 05:20:17 GMT): abcoathup (Wed, 10 May 2017 05:28:03 GMT): vivekraut (Wed, 10 May 2017 05:46:55 GMT): vivekraut (Wed, 10 May 2017 05:46:56 GMT): vivekraut (Wed, 10 May 2017 05:47:16 GMT): sstone1 (Wed, 10 May 2017 07:10:39 GMT): bh4rtp (Wed, 10 May 2017 07:10:39 GMT): sstone1 (Wed, 10 May 2017 07:21:17 GMT): sstone1 (Wed, 10 May 2017 07:21:17 GMT): sstone1 (Wed, 10 May 2017 07:25:45 GMT): sstone1 (Wed, 10 May 2017 07:26:48 GMT): sstone1 (Wed, 10 May 2017 07:27:31 GMT): sstone1 (Wed, 10 May 2017 07:31:38 GMT): RajkumarSomasundaram (Wed, 10 May 2017 07:31:38 GMT): RajkumarSomasundaram (Wed, 10 May 2017 07:32:59 GMT): RajkumarSomasundaram (Wed, 10 May 2017 07:33:43 GMT): RajkumarSomasundaram (Wed, 10 May 2017 07:33:52 GMT): sstone1 (Wed, 10 May 2017 07:34:38 GMT): sstone1 (Wed, 10 May 2017 07:35:05 GMT): sstone1 (Wed, 10 May 2017 07:35:57 GMT): sstone1 (Wed, 10 May 2017 07:36:05 GMT): RajkumarSomasundaram (Wed, 10 May 2017 07:36:13 GMT): sstone1 (Wed, 10 May 2017 07:36:14 GMT): kevin-smets (Wed, 10 May 2017 07:36:14 GMT): sstone1 (Wed, 10 May 2017 07:36:21 GMT): kevin-smets (Wed, 10 May 2017 07:37:15 GMT): sstone1 (Wed, 10 May 2017 07:37:30 GMT): RajkumarSomasundaram (Wed, 10 May 2017 07:37:33 GMT): sstone1 (Wed, 10 May 2017 07:40:40 GMT): sstone1 (Wed, 10 May 2017 07:40:47 GMT): RajkumarSomasundaram (Wed, 10 May 2017 07:41:41 GMT): RajkumarSomasundaram (Wed, 10 May 2017 07:42:06 GMT): RajkumarSomasundaram (Wed, 10 May 2017 07:42:23 GMT): sstone1 (Wed, 10 May 2017 07:43:16 GMT): bh4rtp (Wed, 10 May 2017 07:44:25 GMT): RajkumarSomasundaram (Wed, 10 May 2017 07:46:09 GMT): RajkumarSomasundaram (Wed, 10 May 2017 07:46:13 GMT): sstone1 (Wed, 10 May 2017 07:46:24 GMT): abcoathup (Wed, 10 May 2017 07:46:36 GMT): sstone1 (Wed, 10 May 2017 07:47:12 GMT): vinitesh (Wed, 10 May 2017 08:30:13 GMT): vinitesh (Wed, 10 May 2017 08:30:42 GMT): RajkumarSomasundaram (Wed, 10 May 2017 08:45:14 GMT): RajkumarSomasundaram (Wed, 10 May 2017 08:46:40 GMT): dselman (Wed, 10 May 2017 08:46:56 GMT): dselman (Wed, 10 May 2017 08:47:12 GMT): RajkumarSomasundaram (Wed, 10 May 2017 08:54:01 GMT): EdMoffatt (Wed, 10 May 2017 09:02:46 GMT): sstone1 (Wed, 10 May 2017 09:05:17 GMT): EdMoffatt (Wed, 10 May 2017 09:42:12 GMT): davidkel (Wed, 10 May 2017 09:45:58 GMT): sstone1 (Wed, 10 May 2017 09:51:53 GMT): rubi_1432 (Wed, 10 May 2017 09:51:54 GMT): vinitesh (Wed, 10 May 2017 10:08:12 GMT): davidkel (Wed, 10 May 2017 10:23:32 GMT): davidkel (Wed, 10 May 2017 10:23:32 GMT): vinitesh (Wed, 10 May 2017 10:34:13 GMT): vinitesh (Wed, 10 May 2017 10:38:48 GMT): sstone1 (Wed, 10 May 2017 10:39:47 GMT): vinitesh (Wed, 10 May 2017 10:40:03 GMT): paul.sitoh (Wed, 10 May 2017 12:54:57 GMT): paul.sitoh (Wed, 10 May 2017 12:54:57 GMT): Sandeep (Wed, 10 May 2017 13:36:19 GMT): Sandeep (Wed, 10 May 2017 13:36:38 GMT): Sandeep (Wed, 10 May 2017 13:38:02 GMT): davidkel (Wed, 10 May 2017 13:47:15 GMT): Sandeep (Wed, 10 May 2017 13:55:48 GMT): Sandeep (Wed, 10 May 2017 13:56:04 GMT): Sandeep (Wed, 10 May 2017 13:57:03 GMT): Sandeep (Wed, 10 May 2017 13:59:30 GMT): sstone1 (Wed, 10 May 2017 14:00:08 GMT): sstone1 (Wed, 10 May 2017 14:00:15 GMT): sstone1 (Wed, 10 May 2017 14:00:35 GMT): sstone1 (Wed, 10 May 2017 14:00:39 GMT): Sandeep (Wed, 10 May 2017 14:00:41 GMT): Sandeep (Wed, 10 May 2017 14:00:41 GMT): sstone1 (Wed, 10 May 2017 14:00:52 GMT): Ladar (Wed, 10 May 2017 14:04:01 GMT): sstone1 (Wed, 10 May 2017 14:13:19 GMT): sstone1 (Wed, 10 May 2017 14:13:27 GMT): Ladar (Wed, 10 May 2017 14:13:51 GMT): Ladar (Wed, 10 May 2017 14:14:10 GMT): Ladar (Wed, 10 May 2017 14:14:17 GMT): Ladar (Wed, 10 May 2017 14:16:44 GMT): gromeroar (Wed, 10 May 2017 14:21:40 GMT): vinitesh (Wed, 10 May 2017 14:31:51 GMT): dselman (Wed, 10 May 2017 15:52:27 GMT): gromeroar (Wed, 10 May 2017 16:48:41 GMT): sstone1 (Wed, 10 May 2017 17:11:24 GMT): cauep (Wed, 10 May 2017 17:11:24 GMT): rjones (Wed, 10 May 2017 17:50:40 GMT): Sandeep (Wed, 10 May 2017 18:39:09 GMT): Sandeep (Wed, 10 May 2017 18:39:19 GMT): Sandeep (Wed, 10 May 2017 18:40:01 GMT): sstone1 (Wed, 10 May 2017 20:02:24 GMT): sstone1 (Wed, 10 May 2017 20:02:31 GMT): sstone1 (Wed, 10 May 2017 20:03:02 GMT): Sandeep (Wed, 10 May 2017 20:39:23 GMT): Sandeep (Wed, 10 May 2017 20:40:07 GMT): sstone1 (Wed, 10 May 2017 20:40:32 GMT): sstone1 (Wed, 10 May 2017 20:40:39 GMT): Sandeep (Wed, 10 May 2017 20:42:54 GMT): sstone1 (Wed, 10 May 2017 20:44:33 GMT): sstone1 (Wed, 10 May 2017 20:44:44 GMT): sstone1 (Wed, 10 May 2017 20:44:51 GMT): Sandeep (Wed, 10 May 2017 20:48:14 GMT): sstone1 (Wed, 10 May 2017 20:49:33 GMT): Sandeep (Wed, 10 May 2017 20:51:35 GMT): sstone1 (Wed, 10 May 2017 20:55:20 GMT): sstone1 (Wed, 10 May 2017 20:59:12 GMT): Ladar (Wed, 10 May 2017 21:23:08 GMT): Ladar (Wed, 10 May 2017 21:54:18 GMT): Ladar (Wed, 10 May 2017 21:54:18 GMT): berserkr (Wed, 10 May 2017 23:20:20 GMT): berserkr (Wed, 10 May 2017 23:20:24 GMT): berserkr (Wed, 10 May 2017 23:20:40 GMT): AlexKim (Thu, 11 May 2017 00:18:44 GMT): AlexKim (Thu, 11 May 2017 00:19:27 GMT): AlexKim (Thu, 11 May 2017 00:20:34 GMT): AlexKim (Thu, 11 May 2017 00:21:01 GMT): abcoathup (Thu, 11 May 2017 01:56:46 GMT): abcoathup (Thu, 11 May 2017 01:59:10 GMT): stu2 (Thu, 11 May 2017 05:26:07 GMT): dselman (Thu, 11 May 2017 07:06:46 GMT): vivekraut (Thu, 11 May 2017 07:37:48 GMT): vinitesh (Thu, 11 May 2017 12:33:01 GMT): vinitesh (Thu, 11 May 2017 12:33:01 GMT): vinitesh (Thu, 11 May 2017 12:50:56 GMT): vinitesh (Thu, 11 May 2017 12:51:29 GMT): vinitesh (Thu, 11 May 2017 12:52:04 GMT): dselman (Thu, 11 May 2017 13:27:08 GMT): vinitesh (Thu, 11 May 2017 14:01:23 GMT): vinitesh (Thu, 11 May 2017 14:43:52 GMT): vinitesh (Thu, 11 May 2017 14:52:51 GMT): davidkel (Thu, 11 May 2017 17:11:04 GMT): dselman (Thu, 11 May 2017 17:13:03 GMT): vinitesh (Thu, 11 May 2017 17:24:18 GMT): mohamoud.egal (Thu, 11 May 2017 17:29:12 GMT): berserkr (Thu, 11 May 2017 18:00:49 GMT): zArchitectBill (Thu, 11 May 2017 18:00:49 GMT): zArchitectBill (Thu, 11 May 2017 18:03:23 GMT): zArchitectBill (Thu, 11 May 2017 18:03:50 GMT): zArchitectBill (Thu, 11 May 2017 18:04:00 GMT): sstone1 (Thu, 11 May 2017 18:48:01 GMT): sstone1 (Thu, 11 May 2017 18:49:11 GMT): zArchitectBill (Thu, 11 May 2017 18:52:47 GMT): zArchitectBill (Thu, 11 May 2017 18:53:09 GMT): sstone1 (Thu, 11 May 2017 18:54:05 GMT): sstone1 (Thu, 11 May 2017 18:54:10 GMT): sstone1 (Thu, 11 May 2017 18:54:11 GMT): sstone1 (Thu, 11 May 2017 18:56:33 GMT): zArchitectBill (Thu, 11 May 2017 19:11:09 GMT): zArchitectBill (Thu, 11 May 2017 19:11:53 GMT): sstone1 (Thu, 11 May 2017 19:16:06 GMT): zArchitectBill (Thu, 11 May 2017 19:18:15 GMT): sstone1 (Thu, 11 May 2017 19:27:47 GMT): sstone1 (Thu, 11 May 2017 19:33:40 GMT): sstone1 (Thu, 11 May 2017 19:33:40 GMT): sstone1 (Thu, 11 May 2017 19:34:58 GMT): dselman (Thu, 11 May 2017 19:35:42 GMT): sstone1 (Thu, 11 May 2017 19:35:50 GMT): zArchitectBill (Thu, 11 May 2017 20:14:39 GMT): zArchitectBill (Thu, 11 May 2017 20:25:07 GMT): dselman (Thu, 11 May 2017 20:52:54 GMT): stu2 (Thu, 11 May 2017 21:51:54 GMT): sstone1 (Thu, 11 May 2017 21:54:26 GMT): sstone1 (Thu, 11 May 2017 21:55:00 GMT): stu2 (Thu, 11 May 2017 21:58:32 GMT): sstone1 (Thu, 11 May 2017 21:59:10 GMT): sstone1 (Thu, 11 May 2017 21:59:26 GMT): sstone1 (Thu, 11 May 2017 21:59:51 GMT): stu2 (Thu, 11 May 2017 22:00:20 GMT): sstone1 (Thu, 11 May 2017 22:00:24 GMT): sstone1 (Thu, 11 May 2017 22:01:02 GMT): stu2 (Thu, 11 May 2017 22:05:07 GMT): sstone1 (Thu, 11 May 2017 22:15:42 GMT): stu2 (Thu, 11 May 2017 22:17:34 GMT): sstone1 (Thu, 11 May 2017 22:21:17 GMT): sanjay-saxena (Thu, 11 May 2017 22:47:08 GMT): mohamoud.egal (Thu, 11 May 2017 22:54:16 GMT): mohamoud.egal (Thu, 11 May 2017 22:54:23 GMT): zArchitectBill (Thu, 11 May 2017 22:57:49 GMT): berserkr (Thu, 11 May 2017 23:11:02 GMT): berserkr (Thu, 11 May 2017 23:11:08 GMT): mohamoud.egal (Thu, 11 May 2017 23:43:26 GMT): mohamoud.egal (Thu, 11 May 2017 23:43:52 GMT): mohamoud.egal (Thu, 11 May 2017 23:44:28 GMT): mohamoud.egal (Thu, 11 May 2017 23:44:41 GMT): mohamoud.egal (Thu, 11 May 2017 23:44:55 GMT): mohamoud.egal (Thu, 11 May 2017 23:48:53 GMT): jinvanstee (Fri, 12 May 2017 01:02:09 GMT): mohamoud.egal (Fri, 12 May 2017 01:14:56 GMT): jinvanstee (Fri, 12 May 2017 01:18:08 GMT): mohamoud.egal (Fri, 12 May 2017 01:18:58 GMT): dselman (Fri, 12 May 2017 04:51:27 GMT): dselman (Fri, 12 May 2017 04:53:25 GMT): dselman (Fri, 12 May 2017 05:00:40 GMT): indira.kalagara (Fri, 12 May 2017 05:00:40 GMT): indira.kalagara (Fri, 12 May 2017 05:02:48 GMT): indira.kalagara (Fri, 12 May 2017 05:05:25 GMT): dselman (Fri, 12 May 2017 05:11:52 GMT): dselman (Fri, 12 May 2017 05:12:49 GMT): sanjay-saxena (Fri, 12 May 2017 05:59:26 GMT): berserkr (Fri, 12 May 2017 05:59:30 GMT): berserkr (Fri, 12 May 2017 06:00:37 GMT): berserkr (Fri, 12 May 2017 06:01:48 GMT): berserkr (Fri, 12 May 2017 06:03:41 GMT): berserkr (Fri, 12 May 2017 06:04:18 GMT): sstone1 (Fri, 12 May 2017 06:33:01 GMT): berserkr (Fri, 12 May 2017 06:33:42 GMT): berserkr (Fri, 12 May 2017 06:33:45 GMT): berserkr (Fri, 12 May 2017 06:35:19 GMT): berserkr (Fri, 12 May 2017 06:35:38 GMT): sstone1 (Fri, 12 May 2017 06:35:51 GMT): berserkr (Fri, 12 May 2017 06:36:08 GMT): berserkr (Fri, 12 May 2017 06:36:13 GMT): sstone1 (Fri, 12 May 2017 06:36:13 GMT): berserkr (Fri, 12 May 2017 06:37:37 GMT): berserkr (Fri, 12 May 2017 06:37:39 GMT): berserkr (Fri, 12 May 2017 06:37:54 GMT): berserkr (Fri, 12 May 2017 06:41:07 GMT): sstone1 (Fri, 12 May 2017 06:41:51 GMT): berserkr (Fri, 12 May 2017 06:42:40 GMT): berserkr (Fri, 12 May 2017 06:43:02 GMT): berserkr (Fri, 12 May 2017 06:43:07 GMT): sstone1 (Fri, 12 May 2017 06:43:26 GMT): sstone1 (Fri, 12 May 2017 06:43:39 GMT): berserkr (Fri, 12 May 2017 06:43:59 GMT): berserkr (Fri, 12 May 2017 06:44:03 GMT): berserkr (Fri, 12 May 2017 06:44:04 GMT): berserkr (Fri, 12 May 2017 06:48:00 GMT): sstone1 (Fri, 12 May 2017 06:48:05 GMT): davidkel (Fri, 12 May 2017 06:51:56 GMT): dselman (Fri, 12 May 2017 07:06:28 GMT): indira.kalagara (Fri, 12 May 2017 07:43:58 GMT): SahilKapoor (Fri, 12 May 2017 07:53:41 GMT): SahilKapoor (Fri, 12 May 2017 07:53:41 GMT): davidkel (Fri, 12 May 2017 08:04:17 GMT): indira.kalagara (Fri, 12 May 2017 08:04:38 GMT): indira.kalagara (Fri, 12 May 2017 08:04:46 GMT): davidkel (Fri, 12 May 2017 08:06:04 GMT): indira.kalagara (Fri, 12 May 2017 08:07:01 GMT): indira.kalagara (Fri, 12 May 2017 08:07:37 GMT): davidkel (Fri, 12 May 2017 08:08:09 GMT): davidkel (Fri, 12 May 2017 08:08:09 GMT): indira.kalagara (Fri, 12 May 2017 08:08:20 GMT): davidkel (Fri, 12 May 2017 08:08:56 GMT): SahilKapoor (Fri, 12 May 2017 08:11:26 GMT): indira.kalagara (Fri, 12 May 2017 08:12:58 GMT): davidkel (Fri, 12 May 2017 08:20:28 GMT): indira.kalagara (Fri, 12 May 2017 08:21:20 GMT): dselman (Fri, 12 May 2017 08:22:59 GMT): davidkel (Fri, 12 May 2017 08:27:20 GMT): indira.kalagara (Fri, 12 May 2017 08:30:22 GMT): SahilKapoor (Fri, 12 May 2017 08:32:29 GMT): davidkel (Fri, 12 May 2017 08:33:18 GMT): sstone1 (Fri, 12 May 2017 08:33:21 GMT): sstone1 (Fri, 12 May 2017 08:33:35 GMT): SahilKapoor (Fri, 12 May 2017 08:34:59 GMT): indira.kalagara (Fri, 12 May 2017 08:35:17 GMT): vinitesh (Fri, 12 May 2017 09:15:13 GMT): vinitesh (Fri, 12 May 2017 09:15:13 GMT): vinitesh (Fri, 12 May 2017 09:15:13 GMT): vinitesh (Fri, 12 May 2017 09:16:53 GMT): vinitesh (Fri, 12 May 2017 09:16:53 GMT): davidkel (Fri, 12 May 2017 09:21:39 GMT): davidkel (Fri, 12 May 2017 09:22:30 GMT): sstone1 (Fri, 12 May 2017 09:25:23 GMT): vinitesh (Fri, 12 May 2017 09:26:21 GMT): davidkel (Fri, 12 May 2017 10:16:53 GMT): davidkel (Fri, 12 May 2017 10:18:37 GMT): vinitesh (Fri, 12 May 2017 10:19:47 GMT): davidkel (Fri, 12 May 2017 10:20:22 GMT): vinitesh (Fri, 12 May 2017 10:20:53 GMT): vinitesh (Fri, 12 May 2017 10:23:39 GMT): davidkel (Fri, 12 May 2017 10:24:13 GMT): vinitesh (Fri, 12 May 2017 10:26:23 GMT): vinitesh (Fri, 12 May 2017 10:26:23 GMT): vinitesh (Fri, 12 May 2017 10:26:23 GMT): davidkel (Fri, 12 May 2017 10:29:09 GMT): vinitesh (Fri, 12 May 2017 10:30:47 GMT): dselman (Fri, 12 May 2017 10:31:17 GMT): dselman (Fri, 12 May 2017 10:40:39 GMT): dselman (Fri, 12 May 2017 10:40:44 GMT): SahilKapoor (Fri, 12 May 2017 10:46:37 GMT): SahilKapoor (Fri, 12 May 2017 10:46:45 GMT): dselman (Fri, 12 May 2017 10:48:39 GMT): dselman (Fri, 12 May 2017 10:48:53 GMT): dselman (Fri, 12 May 2017 10:48:53 GMT): dselman (Fri, 12 May 2017 10:48:59 GMT): SahilKapoor (Fri, 12 May 2017 10:50:30 GMT): guyho (Fri, 12 May 2017 13:19:08 GMT): guyho (Fri, 12 May 2017 13:21:08 GMT): Suma (Fri, 12 May 2017 13:25:16 GMT): Suma (Fri, 12 May 2017 13:25:41 GMT): silliman (Fri, 12 May 2017 13:35:56 GMT): guyho (Fri, 12 May 2017 13:49:06 GMT): jtonline (Fri, 12 May 2017 13:49:19 GMT): jtonline (Fri, 12 May 2017 13:51:04 GMT): FenglianXu (Fri, 12 May 2017 14:09:57 GMT): jje (Fri, 12 May 2017 14:55:11 GMT): Jakeeyturner (Fri, 12 May 2017 14:59:23 GMT): jje (Fri, 12 May 2017 15:10:45 GMT): guyho (Fri, 12 May 2017 15:11:19 GMT): Jakeeyturner (Fri, 12 May 2017 15:14:20 GMT): vinitesh (Fri, 12 May 2017 15:32:17 GMT): sstone1 (Fri, 12 May 2017 15:32:37 GMT): vinitesh (Fri, 12 May 2017 15:34:46 GMT): davidkel (Fri, 12 May 2017 15:38:46 GMT): sstone1 (Fri, 12 May 2017 15:45:55 GMT): lukegd12 (Fri, 12 May 2017 15:45:55 GMT): lukegd12 (Fri, 12 May 2017 15:47:15 GMT): sstone1 (Fri, 12 May 2017 15:47:27 GMT): sstone1 (Fri, 12 May 2017 15:47:27 GMT): lukegd12 (Fri, 12 May 2017 15:48:00 GMT): dselman (Fri, 12 May 2017 15:48:46 GMT): lukegd12 (Fri, 12 May 2017 15:48:52 GMT): lukegd12 (Fri, 12 May 2017 15:49:11 GMT): lukegd12 (Fri, 12 May 2017 15:49:17 GMT): dselman (Fri, 12 May 2017 15:51:20 GMT): lukegd12 (Fri, 12 May 2017 15:51:26 GMT): dselman (Fri, 12 May 2017 15:51:57 GMT): lukegd12 (Fri, 12 May 2017 15:52:30 GMT): lukegd12 (Fri, 12 May 2017 15:53:00 GMT): dselman (Fri, 12 May 2017 15:55:23 GMT): dselman (Fri, 12 May 2017 15:55:56 GMT): dselman (Fri, 12 May 2017 15:56:44 GMT): lukegd12 (Fri, 12 May 2017 15:57:06 GMT): lukegd12 (Fri, 12 May 2017 15:57:14 GMT): lukegd12 (Fri, 12 May 2017 15:57:25 GMT): dselman (Fri, 12 May 2017 15:57:33 GMT): lukegd12 (Fri, 12 May 2017 15:57:44 GMT): lukegd12 (Fri, 12 May 2017 15:57:51 GMT): dselman (Fri, 12 May 2017 15:57:52 GMT): dselman (Fri, 12 May 2017 15:58:18 GMT): lukegd12 (Fri, 12 May 2017 15:58:37 GMT): dselman (Fri, 12 May 2017 15:58:44 GMT): dselman (Fri, 12 May 2017 15:58:49 GMT): lukegd12 (Fri, 12 May 2017 15:58:54 GMT): lukegd12 (Fri, 12 May 2017 15:59:15 GMT): dselman (Fri, 12 May 2017 16:01:53 GMT): dselman (Fri, 12 May 2017 16:02:29 GMT): lukegd12 (Fri, 12 May 2017 16:03:19 GMT): lukegd12 (Fri, 12 May 2017 16:08:16 GMT): DennisM330 (Fri, 12 May 2017 16:52:25 GMT): dselman (Fri, 12 May 2017 16:53:37 GMT): zArchitectBill (Fri, 12 May 2017 17:33:14 GMT): zArchitectBill (Fri, 12 May 2017 17:34:08 GMT): zArchitectBill (Fri, 12 May 2017 17:34:31 GMT): zArchitectBill (Fri, 12 May 2017 17:34:40 GMT): zArchitectBill (Fri, 12 May 2017 17:34:51 GMT): zArchitectBill (Fri, 12 May 2017 17:35:29 GMT): zArchitectBill (Fri, 12 May 2017 17:36:54 GMT): sanjay-saxena (Fri, 12 May 2017 17:51:29 GMT): dselman (Fri, 12 May 2017 17:53:59 GMT): sanjay-saxena (Fri, 12 May 2017 17:54:36 GMT): dselman (Fri, 12 May 2017 17:55:23 GMT): sanjay-saxena (Fri, 12 May 2017 17:56:10 GMT): dselman (Fri, 12 May 2017 17:56:47 GMT): sanjay-saxena (Fri, 12 May 2017 17:57:16 GMT): dselman (Fri, 12 May 2017 17:57:20 GMT): dselman (Fri, 12 May 2017 17:57:40 GMT): dselman (Fri, 12 May 2017 17:57:41 GMT): jdockter (Fri, 12 May 2017 18:14:25 GMT): jdockter (Fri, 12 May 2017 18:14:25 GMT): jdockter (Fri, 12 May 2017 18:14:25 GMT): jdockter (Fri, 12 May 2017 18:16:30 GMT): dselman (Fri, 12 May 2017 18:25:51 GMT): dselman (Fri, 12 May 2017 18:26:34 GMT): jdockter (Fri, 12 May 2017 18:26:52 GMT): davidkel (Fri, 12 May 2017 18:42:14 GMT): jdockter (Fri, 12 May 2017 18:42:55 GMT): jdockter (Fri, 12 May 2017 18:43:02 GMT): davidkel (Fri, 12 May 2017 18:52:20 GMT): jdockter (Fri, 12 May 2017 18:53:06 GMT): davidkel (Fri, 12 May 2017 18:54:11 GMT): davidkel (Fri, 12 May 2017 18:54:11 GMT): dselman (Fri, 12 May 2017 20:42:24 GMT): AlexKim (Sat, 13 May 2017 04:10:21 GMT): dselman (Sat, 13 May 2017 19:13:59 GMT): sstone1 (Sat, 13 May 2017 19:48:09 GMT): jorgedr (Sat, 13 May 2017 23:24:03 GMT): ASMP (Sun, 14 May 2017 07:19:43 GMT): ASMP (Sun, 14 May 2017 07:31:20 GMT): SahilKapoor (Sun, 14 May 2017 07:53:51 GMT): SahilKapoor (Sun, 14 May 2017 07:54:27 GMT): SahilKapoor (Sun, 14 May 2017 07:54:38 GMT): SahilKapoor (Sun, 14 May 2017 07:54:59 GMT): SahilKapoor (Sun, 14 May 2017 07:54:59 GMT): SahilKapoor (Sun, 14 May 2017 07:55:27 GMT): SahilKapoor (Sun, 14 May 2017 07:55:27 GMT): SahilKapoor (Sun, 14 May 2017 07:55:29 GMT): SahilKapoor (Sun, 14 May 2017 07:57:16 GMT): SahilKapoor (Sun, 14 May 2017 07:57:16 GMT): SahilKapoor (Sun, 14 May 2017 07:57:57 GMT): SahilKapoor (Sun, 14 May 2017 07:58:29 GMT): SahilKapoor (Sun, 14 May 2017 07:59:57 GMT): dselman (Sun, 14 May 2017 08:00:16 GMT): SahilKapoor (Sun, 14 May 2017 08:00:50 GMT): dselman (Sun, 14 May 2017 08:01:30 GMT): SahilKapoor (Sun, 14 May 2017 08:01:43 GMT): dselman (Sun, 14 May 2017 08:01:52 GMT): dselman (Sun, 14 May 2017 08:01:57 GMT): dselman (Sun, 14 May 2017 08:03:33 GMT): SahilKapoor (Sun, 14 May 2017 08:04:00 GMT): SahilKapoor (Sun, 14 May 2017 08:04:22 GMT): SahilKapoor (Sun, 14 May 2017 08:04:24 GMT): dselman (Sun, 14 May 2017 08:05:01 GMT): SahilKapoor (Sun, 14 May 2017 08:05:13 GMT): dselman (Sun, 14 May 2017 08:05:30 GMT): SahilKapoor (Sun, 14 May 2017 08:05:54 GMT): SahilKapoor (Sun, 14 May 2017 08:05:56 GMT): dselman (Sun, 14 May 2017 08:05:58 GMT): SahilKapoor (Sun, 14 May 2017 08:06:07 GMT): SahilKapoor (Sun, 14 May 2017 08:06:39 GMT): SahilKapoor (Sun, 14 May 2017 08:06:48 GMT): dselman (Sun, 14 May 2017 08:08:47 GMT): SahilKapoor (Sun, 14 May 2017 08:35:29 GMT): SahilKapoor (Sun, 14 May 2017 08:35:40 GMT): SahilKapoor (Sun, 14 May 2017 08:35:43 GMT): dselman (Sun, 14 May 2017 08:38:14 GMT): SahilKapoor (Sun, 14 May 2017 08:45:49 GMT): SahilKapoor (Sun, 14 May 2017 08:46:06 GMT): dselman (Sun, 14 May 2017 08:46:23 GMT): SahilKapoor (Sun, 14 May 2017 08:46:48 GMT): SahilKapoor (Sun, 14 May 2017 08:47:12 GMT): SahilKapoor (Sun, 14 May 2017 08:47:34 GMT): SahilKapoor (Sun, 14 May 2017 08:47:54 GMT): dselman (Sun, 14 May 2017 08:48:08 GMT): dselman (Sun, 14 May 2017 08:48:21 GMT): SahilKapoor (Sun, 14 May 2017 08:48:22 GMT): dselman (Sun, 14 May 2017 08:48:37 GMT): SahilKapoor (Sun, 14 May 2017 08:49:15 GMT): SahilKapoor (Sun, 14 May 2017 08:49:24 GMT): SahilKapoor (Sun, 14 May 2017 08:49:26 GMT): ASMP (Sun, 14 May 2017 09:05:53 GMT): ASMP (Sun, 14 May 2017 09:05:55 GMT): ASMP (Sun, 14 May 2017 09:06:54 GMT): dselman (Sun, 14 May 2017 09:07:31 GMT): dselman (Sun, 14 May 2017 09:08:12 GMT): dselman (Sun, 14 May 2017 09:08:18 GMT): ASMP (Sun, 14 May 2017 09:09:10 GMT): ASMP (Sun, 14 May 2017 09:12:07 GMT): ASMP (Sun, 14 May 2017 09:12:27 GMT): davidkel (Sun, 14 May 2017 09:28:42 GMT): davidkel (Sun, 14 May 2017 09:28:42 GMT): SahilKapoor (Sun, 14 May 2017 11:26:00 GMT): SahilKapoor (Sun, 14 May 2017 11:26:01 GMT): SahilKapoor (Sun, 14 May 2017 11:26:33 GMT): SahilKapoor (Sun, 14 May 2017 11:26:53 GMT): dselman (Sun, 14 May 2017 11:27:41 GMT): SahilKapoor (Sun, 14 May 2017 11:27:54 GMT): dselman (Sun, 14 May 2017 11:27:58 GMT): SahilKapoor (Sun, 14 May 2017 11:28:03 GMT): dselman (Sun, 14 May 2017 11:28:03 GMT): SahilKapoor (Sun, 14 May 2017 11:28:04 GMT): SahilKapoor (Sun, 14 May 2017 11:28:08 GMT): SahilKapoor (Sun, 14 May 2017 11:31:35 GMT): dselman (Sun, 14 May 2017 11:32:40 GMT): dselman (Sun, 14 May 2017 11:32:57 GMT): sstone1 (Sun, 14 May 2017 11:33:03 GMT): dselman (Sun, 14 May 2017 11:33:26 GMT): sstone1 (Sun, 14 May 2017 11:33:27 GMT): SahilKapoor (Sun, 14 May 2017 11:33:38 GMT): SahilKapoor (Sun, 14 May 2017 11:33:40 GMT): dselman (Sun, 14 May 2017 11:35:02 GMT): sstone1 (Sun, 14 May 2017 11:36:18 GMT): sstone1 (Sun, 14 May 2017 11:36:30 GMT): SahilKapoor (Sun, 14 May 2017 11:36:44 GMT): sstone1 (Sun, 14 May 2017 11:36:50 GMT): dselman (Sun, 14 May 2017 11:37:49 GMT): dselman (Sun, 14 May 2017 11:37:53 GMT): SahilKapoor (Sun, 14 May 2017 11:38:49 GMT): SahilKapoor (Sun, 14 May 2017 11:39:39 GMT): SahilKapoor (Sun, 14 May 2017 11:39:46 GMT): SahilKapoor (Sun, 14 May 2017 11:40:03 GMT): SahilKapoor (Sun, 14 May 2017 11:40:23 GMT): dselman (Sun, 14 May 2017 11:40:31 GMT): dselman (Sun, 14 May 2017 11:41:11 GMT): sstone1 (Sun, 14 May 2017 11:43:06 GMT): sstone1 (Sun, 14 May 2017 11:43:06 GMT): SahilKapoor (Sun, 14 May 2017 11:46:52 GMT): SahilKapoor (Sun, 14 May 2017 11:47:06 GMT): SahilKapoor (Sun, 14 May 2017 11:47:41 GMT): sstone1 (Sun, 14 May 2017 11:47:57 GMT): sstone1 (Sun, 14 May 2017 11:47:59 GMT): sstone1 (Sun, 14 May 2017 11:48:14 GMT): SahilKapoor (Sun, 14 May 2017 11:48:24 GMT): sstone1 (Sun, 14 May 2017 11:48:42 GMT): sstone1 (Sun, 14 May 2017 11:48:46 GMT): SahilKapoor (Sun, 14 May 2017 11:49:57 GMT): SahilKapoor (Sun, 14 May 2017 11:50:19 GMT): SahilKapoor (Sun, 14 May 2017 11:50:52 GMT): SahilKapoor (Sun, 14 May 2017 11:51:12 GMT): sstone1 (Sun, 14 May 2017 11:51:36 GMT): SahilKapoor (Sun, 14 May 2017 11:51:38 GMT): sstone1 (Sun, 14 May 2017 11:51:52 GMT): sstone1 (Sun, 14 May 2017 11:52:35 GMT): sstone1 (Sun, 14 May 2017 11:53:13 GMT): sstone1 (Sun, 14 May 2017 11:53:29 GMT): sstone1 (Sun, 14 May 2017 11:53:39 GMT): SahilKapoor (Sun, 14 May 2017 11:57:59 GMT): SahilKapoor (Sun, 14 May 2017 11:58:01 GMT): SahilKapoor (Sun, 14 May 2017 11:58:10 GMT): sstone1 (Sun, 14 May 2017 11:58:36 GMT): SahilKapoor (Sun, 14 May 2017 11:58:59 GMT): SahilKapoor (Sun, 14 May 2017 11:59:00 GMT): sstone1 (Sun, 14 May 2017 11:59:21 GMT): SahilKapoor (Sun, 14 May 2017 11:59:58 GMT): SahilKapoor (Sun, 14 May 2017 12:00:00 GMT): SahilKapoor (Sun, 14 May 2017 12:00:46 GMT): SahilKapoor (Sun, 14 May 2017 12:07:24 GMT): SahilKapoor (Sun, 14 May 2017 12:07:29 GMT): sstone1 (Sun, 14 May 2017 12:07:50 GMT): SahilKapoor (Sun, 14 May 2017 12:08:38 GMT): SahilKapoor (Sun, 14 May 2017 12:09:07 GMT): SahilKapoor (Sun, 14 May 2017 12:10:47 GMT): SahilKapoor (Sun, 14 May 2017 12:10:48 GMT): sstone1 (Sun, 14 May 2017 12:11:50 GMT): sstone1 (Sun, 14 May 2017 12:11:55 GMT): sstone1 (Sun, 14 May 2017 12:12:05 GMT): sstone1 (Sun, 14 May 2017 12:12:11 GMT): SahilKapoor (Sun, 14 May 2017 12:20:33 GMT): SahilKapoor (Sun, 14 May 2017 12:21:43 GMT): SahilKapoor (Sun, 14 May 2017 12:21:54 GMT): SahilKapoor (Sun, 14 May 2017 12:23:15 GMT): SahilKapoor (Sun, 14 May 2017 12:23:33 GMT): sstone1 (Sun, 14 May 2017 12:35:37 GMT): Pasteis (Sun, 14 May 2017 13:49:50 GMT): Pasteis (Sun, 14 May 2017 13:53:10 GMT): Pasteis (Sun, 14 May 2017 13:54:39 GMT): tennenjl (Sun, 14 May 2017 14:33:09 GMT): tennenjl (Sun, 14 May 2017 14:33:09 GMT): tennenjl (Sun, 14 May 2017 14:33:09 GMT): tennenjl (Sun, 14 May 2017 14:33:09 GMT): sstone1 (Sun, 14 May 2017 16:29:02 GMT): sstone1 (Sun, 14 May 2017 16:29:37 GMT): tennenjl (Sun, 14 May 2017 16:40:36 GMT): tennenjl (Sun, 14 May 2017 16:40:59 GMT): Pasteis (Sun, 14 May 2017 18:07:05 GMT): basheer780 (Mon, 15 May 2017 00:10:25 GMT): sstone1 (Mon, 15 May 2017 06:15:44 GMT): sstone1 (Mon, 15 May 2017 06:24:47 GMT): jje (Mon, 15 May 2017 06:24:59 GMT): sstone1 (Mon, 15 May 2017 06:25:38 GMT): chunhui (Mon, 15 May 2017 08:25:11 GMT): chunhui (Mon, 15 May 2017 08:25:39 GMT): FenglianXu (Mon, 15 May 2017 08:28:41 GMT): silentspark (Mon, 15 May 2017 09:05:37 GMT): EdMoffatt (Mon, 15 May 2017 09:44:37 GMT): SanketPanchamia (Mon, 15 May 2017 10:14:27 GMT): sstone1 (Mon, 15 May 2017 10:24:08 GMT): sstone1 (Mon, 15 May 2017 10:24:19 GMT): vinitesh (Mon, 15 May 2017 11:12:30 GMT): rocket.cat (Mon, 15 May 2017 11:12:30 GMT): vinitesh (Mon, 15 May 2017 11:18:26 GMT): tennenjl (Mon, 15 May 2017 12:18:25 GMT): dstarina (Mon, 15 May 2017 13:07:18 GMT): sstone1 (Mon, 15 May 2017 13:11:35 GMT): tennenjl (Mon, 15 May 2017 13:13:00 GMT): jtonline (Mon, 15 May 2017 13:55:49 GMT): jtonline (Mon, 15 May 2017 13:59:40 GMT): tennenjl (Mon, 15 May 2017 14:07:19 GMT): EdMoffatt (Mon, 15 May 2017 14:18:03 GMT): EdMoffatt (Mon, 15 May 2017 14:18:21 GMT): sstone1 (Mon, 15 May 2017 14:24:51 GMT): tennenjl (Mon, 15 May 2017 14:30:38 GMT): sstone1 (Mon, 15 May 2017 14:31:31 GMT): sstone1 (Mon, 15 May 2017 14:31:42 GMT): sstone1 (Mon, 15 May 2017 14:32:07 GMT): sstone1 (Mon, 15 May 2017 14:32:28 GMT): davidkel (Mon, 15 May 2017 14:45:08 GMT): clasoncjDA (Mon, 15 May 2017 14:47:37 GMT): DennisM330 (Mon, 15 May 2017 14:52:25 GMT): EdMoffatt (Mon, 15 May 2017 14:52:32 GMT): dselman (Mon, 15 May 2017 14:58:32 GMT): DennisM330 (Mon, 15 May 2017 15:05:28 GMT): DennisM330 (Mon, 15 May 2017 15:05:54 GMT): chunhui (Mon, 15 May 2017 15:15:37 GMT): jtonline (Mon, 15 May 2017 15:52:02 GMT): svasilyev (Mon, 15 May 2017 15:54:47 GMT): sstone1 (Mon, 15 May 2017 16:44:25 GMT): sstone1 (Mon, 15 May 2017 16:44:25 GMT): ChandraLekhaChavva (Mon, 15 May 2017 16:44:37 GMT): ChandraLekhaChavva (Mon, 15 May 2017 18:18:34 GMT): rodders1991 (Mon, 15 May 2017 18:48:01 GMT): tennenjl (Mon, 15 May 2017 18:51:19 GMT): ChandraLekhaChavva (Mon, 15 May 2017 18:56:59 GMT): tennenjl (Mon, 15 May 2017 19:04:51 GMT): Pasteis (Mon, 15 May 2017 19:09:39 GMT): Pasteis (Mon, 15 May 2017 19:09:39 GMT): Pasteis (Mon, 15 May 2017 20:32:29 GMT): Pasteis (Mon, 15 May 2017 20:33:24 GMT): amundson (Mon, 15 May 2017 22:38:55 GMT): torresjeff (Mon, 15 May 2017 23:34:34 GMT): chunhui (Tue, 16 May 2017 00:37:38 GMT): chunhui (Tue, 16 May 2017 00:37:38 GMT): rangak (Tue, 16 May 2017 02:20:39 GMT): SahilKapoor (Tue, 16 May 2017 03:36:01 GMT): SahilKapoor (Tue, 16 May 2017 03:36:03 GMT): SahilKapoor (Tue, 16 May 2017 03:36:57 GMT): ygnr (Tue, 16 May 2017 05:24:04 GMT): ygnr (Tue, 16 May 2017 05:35:36 GMT): davidkel (Tue, 16 May 2017 06:48:48 GMT): davidkel (Tue, 16 May 2017 06:54:09 GMT): GururajL (Tue, 16 May 2017 07:13:00 GMT): dselman (Tue, 16 May 2017 07:59:44 GMT): vinitesh (Tue, 16 May 2017 11:11:46 GMT): vinitesh (Tue, 16 May 2017 11:11:46 GMT): vinitesh (Tue, 16 May 2017 11:11:46 GMT): rocket.cat (Tue, 16 May 2017 11:11:46 GMT): uber.twin (Tue, 16 May 2017 11:25:35 GMT): davidkel (Tue, 16 May 2017 11:28:23 GMT): uber.twin (Tue, 16 May 2017 11:32:07 GMT): uber.twin (Tue, 16 May 2017 11:33:32 GMT): rocket.cat (Tue, 16 May 2017 11:50:09 GMT): rocket.cat (Tue, 16 May 2017 11:50:36 GMT): vinitesh (Tue, 16 May 2017 11:51:05 GMT): sstone1 (Tue, 16 May 2017 11:52:52 GMT): sstone1 (Tue, 16 May 2017 11:53:20 GMT): vinitesh (Tue, 16 May 2017 13:08:15 GMT): sstone1 (Tue, 16 May 2017 13:18:02 GMT): sstone1 (Tue, 16 May 2017 13:18:14 GMT): karthikworks (Tue, 16 May 2017 13:49:40 GMT): vinitesh (Tue, 16 May 2017 13:50:50 GMT): sstone1 (Tue, 16 May 2017 14:04:21 GMT): sstone1 (Tue, 16 May 2017 14:04:30 GMT): vinitesh (Tue, 16 May 2017 14:06:50 GMT): karthikworks (Tue, 16 May 2017 14:08:12 GMT): sstone1 (Tue, 16 May 2017 14:11:37 GMT): sstone1 (Tue, 16 May 2017 14:12:08 GMT): sstone1 (Tue, 16 May 2017 14:12:17 GMT): aashishshrestah (Tue, 16 May 2017 14:40:20 GMT): karthikworks (Tue, 16 May 2017 14:45:37 GMT): karthikworks (Tue, 16 May 2017 14:46:00 GMT): sstone1 (Tue, 16 May 2017 14:46:30 GMT): vinitesh (Tue, 16 May 2017 15:00:08 GMT): aashishshrestah (Tue, 16 May 2017 15:25:31 GMT): aashishshrestah (Tue, 16 May 2017 15:25:39 GMT): jtonline (Tue, 16 May 2017 15:37:47 GMT): jtonline (Tue, 16 May 2017 15:38:16 GMT): GrahamCharters (Tue, 16 May 2017 15:59:33 GMT): GrahamCharters (Tue, 16 May 2017 16:00:14 GMT): guyho (Tue, 16 May 2017 16:12:45 GMT): aashishshrestah (Tue, 16 May 2017 16:14:53 GMT): aashishshrestah (Tue, 16 May 2017 16:15:31 GMT): aashishshrestah (Tue, 16 May 2017 16:15:48 GMT): aashishshrestah (Tue, 16 May 2017 16:16:42 GMT): aashishshrestah (Tue, 16 May 2017 16:17:21 GMT): aashishshrestah (Tue, 16 May 2017 16:17:34 GMT): aashishshrestah (Tue, 16 May 2017 16:17:40 GMT): aashishshrestah (Tue, 16 May 2017 16:18:14 GMT): aashishshrestah (Tue, 16 May 2017 16:19:23 GMT): aashishshrestah (Tue, 16 May 2017 16:19:28 GMT): aashishshrestah (Tue, 16 May 2017 16:19:38 GMT): aashishshrestah (Tue, 16 May 2017 16:19:45 GMT): davidkel (Tue, 16 May 2017 16:37:02 GMT): GrahamCharters (Tue, 16 May 2017 16:55:37 GMT): jdockter (Tue, 16 May 2017 16:55:39 GMT): jdockter (Tue, 16 May 2017 16:58:49 GMT): jdockter (Tue, 16 May 2017 16:58:49 GMT): rmohta (Tue, 16 May 2017 17:06:30 GMT): rmohta (Tue, 16 May 2017 17:06:54 GMT): dselman (Tue, 16 May 2017 17:21:54 GMT): dselman (Tue, 16 May 2017 17:22:29 GMT): dselman (Tue, 16 May 2017 17:25:13 GMT): dselman (Tue, 16 May 2017 17:27:17 GMT): dselman (Tue, 16 May 2017 17:31:40 GMT): dselman (Tue, 16 May 2017 17:32:24 GMT): dselman (Tue, 16 May 2017 17:32:24 GMT): aashishshrestah (Tue, 16 May 2017 18:07:05 GMT): rmohta (Tue, 16 May 2017 18:31:11 GMT): dselman (Tue, 16 May 2017 18:55:32 GMT): torresjeff (Tue, 16 May 2017 19:22:00 GMT): torresjeff (Tue, 16 May 2017 19:22:00 GMT): rjones (Tue, 16 May 2017 19:37:33 GMT): sstone1 (Tue, 16 May 2017 19:38:32 GMT): sstone1 (Tue, 16 May 2017 19:39:01 GMT): sstone1 (Tue, 16 May 2017 19:40:15 GMT): sstone1 (Tue, 16 May 2017 19:40:50 GMT): sstone1 (Tue, 16 May 2017 19:41:09 GMT): torresjeff (Tue, 16 May 2017 19:41:30 GMT): torresjeff (Tue, 16 May 2017 19:42:25 GMT): torresjeff (Tue, 16 May 2017 19:42:58 GMT): sstone1 (Tue, 16 May 2017 19:43:13 GMT): sstone1 (Tue, 16 May 2017 19:44:10 GMT): sstone1 (Tue, 16 May 2017 19:44:10 GMT): torresjeff (Tue, 16 May 2017 19:44:56 GMT): torresjeff (Tue, 16 May 2017 19:45:41 GMT): torresjeff (Tue, 16 May 2017 19:45:41 GMT): sstone1 (Tue, 16 May 2017 19:46:03 GMT): sstone1 (Tue, 16 May 2017 19:46:16 GMT): sstone1 (Tue, 16 May 2017 19:47:15 GMT): sstone1 (Tue, 16 May 2017 19:47:36 GMT): sstone1 (Tue, 16 May 2017 19:47:59 GMT): sstone1 (Tue, 16 May 2017 19:48:18 GMT): sstone1 (Tue, 16 May 2017 19:48:53 GMT): DennisM330 (Tue, 16 May 2017 19:49:16 GMT): torresjeff (Tue, 16 May 2017 19:49:28 GMT): sstone1 (Tue, 16 May 2017 19:50:59 GMT): sstone1 (Tue, 16 May 2017 19:51:16 GMT): sstone1 (Tue, 16 May 2017 19:51:29 GMT): DennisM330 (Tue, 16 May 2017 19:58:27 GMT): sstone1 (Tue, 16 May 2017 20:02:22 GMT): sstone1 (Tue, 16 May 2017 20:02:39 GMT): sstone1 (Tue, 16 May 2017 20:36:23 GMT): sstone1 (Tue, 16 May 2017 20:36:44 GMT): rangak (Tue, 16 May 2017 22:54:51 GMT): dwakeman (Wed, 17 May 2017 00:36:58 GMT): GururajL (Wed, 17 May 2017 01:56:39 GMT): BhargavaMallik (Wed, 17 May 2017 06:13:18 GMT): BhargavaMallik (Wed, 17 May 2017 06:14:05 GMT): BhargavaMallik (Wed, 17 May 2017 06:14:23 GMT): BhargavaMallik (Wed, 17 May 2017 06:14:50 GMT): dselman (Wed, 17 May 2017 06:38:23 GMT): dselman (Wed, 17 May 2017 06:38:36 GMT): BhargavaMallik (Wed, 17 May 2017 06:48:28 GMT): davidkel (Wed, 17 May 2017 06:50:41 GMT): GururajL (Wed, 17 May 2017 06:54:46 GMT): GururajL (Wed, 17 May 2017 06:59:02 GMT): davidkel (Wed, 17 May 2017 06:59:41 GMT): davidkel (Wed, 17 May 2017 06:59:41 GMT): GururajL (Wed, 17 May 2017 07:02:21 GMT): GururajL (Wed, 17 May 2017 07:02:37 GMT): davidkel (Wed, 17 May 2017 07:06:16 GMT): GururajL (Wed, 17 May 2017 07:08:23 GMT): GururajL (Wed, 17 May 2017 07:09:41 GMT): davidkel (Wed, 17 May 2017 07:14:42 GMT): davidkel (Wed, 17 May 2017 07:15:50 GMT): GururajL (Wed, 17 May 2017 07:19:09 GMT): davidkel (Wed, 17 May 2017 07:21:38 GMT): GururajL (Wed, 17 May 2017 07:23:10 GMT): dstarina (Wed, 17 May 2017 07:29:23 GMT): dstarina (Wed, 17 May 2017 07:29:23 GMT): dstarina (Wed, 17 May 2017 07:29:25 GMT): dselman (Wed, 17 May 2017 08:09:07 GMT): tom.appleyard (Wed, 17 May 2017 08:18:07 GMT): tom.appleyard (Wed, 17 May 2017 08:18:42 GMT): sstone1 (Wed, 17 May 2017 08:21:33 GMT): sstone1 (Wed, 17 May 2017 08:21:48 GMT): sstone1 (Wed, 17 May 2017 08:24:32 GMT): tom.appleyard (Wed, 17 May 2017 08:25:55 GMT): sstone1 (Wed, 17 May 2017 08:26:19 GMT): tom.appleyard (Wed, 17 May 2017 08:26:36 GMT): tom.appleyard (Wed, 17 May 2017 08:26:52 GMT): tom.appleyard (Wed, 17 May 2017 08:28:54 GMT): tom.appleyard (Wed, 17 May 2017 08:29:01 GMT): tom.appleyard (Wed, 17 May 2017 08:29:19 GMT): sstone1 (Wed, 17 May 2017 08:29:32 GMT): tom.appleyard (Wed, 17 May 2017 08:30:21 GMT): sstone1 (Wed, 17 May 2017 08:30:34 GMT): sstone1 (Wed, 17 May 2017 08:30:36 GMT): sstone1 (Wed, 17 May 2017 08:30:43 GMT): tom.appleyard (Wed, 17 May 2017 08:31:13 GMT): dselman (Wed, 17 May 2017 08:33:02 GMT): dstarina (Wed, 17 May 2017 09:01:14 GMT): dstarina (Wed, 17 May 2017 09:01:14 GMT): karthikworks (Wed, 17 May 2017 09:03:15 GMT): dstarina (Wed, 17 May 2017 09:32:10 GMT): dstarina (Wed, 17 May 2017 09:32:13 GMT): mahoney1 (Wed, 17 May 2017 11:38:56 GMT): dstarina (Wed, 17 May 2017 11:51:46 GMT): karthikworks (Wed, 17 May 2017 11:55:11 GMT): dstarina (Wed, 17 May 2017 11:56:30 GMT): dstarina (Wed, 17 May 2017 11:56:42 GMT): dstarina (Wed, 17 May 2017 11:59:11 GMT): mahoney1 (Wed, 17 May 2017 12:19:11 GMT): mahoney1 (Wed, 17 May 2017 12:21:10 GMT): dselman (Wed, 17 May 2017 12:25:35 GMT): dselman (Wed, 17 May 2017 12:25:47 GMT): dstarina (Wed, 17 May 2017 12:45:29 GMT): dselman (Wed, 17 May 2017 13:24:05 GMT): dselman (Wed, 17 May 2017 13:24:05 GMT): dselman (Wed, 17 May 2017 13:24:43 GMT): sstone1 (Wed, 17 May 2017 13:26:39 GMT): sstone1 (Wed, 17 May 2017 13:26:59 GMT): dstarina (Wed, 17 May 2017 13:41:14 GMT): dstarina (Wed, 17 May 2017 13:47:34 GMT): karthikworks (Wed, 17 May 2017 13:53:16 GMT): karthikworks (Wed, 17 May 2017 13:53:33 GMT): mahoney1 (Wed, 17 May 2017 14:00:17 GMT): jarroyer (Wed, 17 May 2017 16:58:53 GMT): torresjeff (Wed, 17 May 2017 17:33:23 GMT): torresjeff (Wed, 17 May 2017 17:33:32 GMT): torresjeff (Wed, 17 May 2017 17:47:45 GMT): aashishshrestah (Wed, 17 May 2017 19:02:56 GMT): aashishshrestah (Wed, 17 May 2017 19:02:58 GMT): aashishshrestah (Wed, 17 May 2017 19:03:08 GMT): mohamoud.egal (Wed, 17 May 2017 19:05:07 GMT): jinvanstee (Wed, 17 May 2017 19:09:21 GMT): jinvanstee (Wed, 17 May 2017 19:09:44 GMT): aashishshrestah (Wed, 17 May 2017 19:11:26 GMT): jinvanstee (Wed, 17 May 2017 19:11:50 GMT): mohamoud.egal (Wed, 17 May 2017 19:56:15 GMT): mohamoud.egal (Wed, 17 May 2017 19:56:25 GMT): davidkel (Wed, 17 May 2017 20:14:54 GMT): mohamoud.egal (Wed, 17 May 2017 20:21:00 GMT): davidkel (Wed, 17 May 2017 20:22:28 GMT): mohamoud.egal (Wed, 17 May 2017 20:22:41 GMT): mohamoud.egal (Wed, 17 May 2017 20:22:51 GMT): davidkel (Wed, 17 May 2017 20:26:54 GMT): davidkel (Wed, 17 May 2017 20:26:54 GMT): davidkel (Wed, 17 May 2017 20:26:54 GMT): mohamoud.egal (Wed, 17 May 2017 20:31:02 GMT): davidkel (Wed, 17 May 2017 20:40:49 GMT): davidkel (Wed, 17 May 2017 20:41:32 GMT): mohamoud.egal (Wed, 17 May 2017 20:54:26 GMT): mohamoud.egal (Wed, 17 May 2017 20:55:00 GMT): dselman (Wed, 17 May 2017 21:02:04 GMT): mohamoud.egal (Wed, 17 May 2017 21:14:31 GMT): mohamoud.egal (Wed, 17 May 2017 21:14:49 GMT): dselman (Wed, 17 May 2017 21:16:18 GMT): mohamoud.egal (Wed, 17 May 2017 21:22:53 GMT): mohamoud.egal (Wed, 17 May 2017 21:23:31 GMT): mohamoud.egal (Wed, 17 May 2017 21:23:40 GMT): mohamoud.egal (Wed, 17 May 2017 21:24:29 GMT): davidkel (Wed, 17 May 2017 21:36:27 GMT): mohamoud.egal (Wed, 17 May 2017 21:40:55 GMT): davidkel (Wed, 17 May 2017 21:45:34 GMT): kzamer (Thu, 18 May 2017 01:24:40 GMT): mohamoud.egal (Thu, 18 May 2017 03:42:45 GMT): mohamoud.egal (Thu, 18 May 2017 03:47:01 GMT): only1dre (Thu, 18 May 2017 04:04:14 GMT): Sandeep (Thu, 18 May 2017 04:12:05 GMT): Sandeep (Thu, 18 May 2017 04:12:05 GMT): sstone1 (Thu, 18 May 2017 04:18:31 GMT): Sandeep (Thu, 18 May 2017 04:25:22 GMT): sstone1 (Thu, 18 May 2017 04:25:47 GMT): sstone1 (Thu, 18 May 2017 04:26:36 GMT): sstone1 (Thu, 18 May 2017 04:29:57 GMT): berserkr (Thu, 18 May 2017 05:20:29 GMT): berserkr (Thu, 18 May 2017 05:21:23 GMT): sstone1 (Thu, 18 May 2017 06:23:23 GMT): guoger (Thu, 18 May 2017 06:52:30 GMT): vivekraut (Thu, 18 May 2017 08:26:00 GMT): jtonline (Thu, 18 May 2017 08:37:51 GMT): arner (Thu, 18 May 2017 08:41:28 GMT): vivekraut (Thu, 18 May 2017 08:42:07 GMT): jtonline (Thu, 18 May 2017 08:45:00 GMT): jtonline (Thu, 18 May 2017 08:46:29 GMT): arner (Thu, 18 May 2017 08:46:45 GMT): jtonline (Thu, 18 May 2017 08:49:10 GMT): jtonline (Thu, 18 May 2017 08:49:38 GMT): jtonline (Thu, 18 May 2017 08:50:29 GMT): Jakeeyturner (Thu, 18 May 2017 08:57:43 GMT): dselman (Thu, 18 May 2017 09:02:13 GMT): dselman (Thu, 18 May 2017 09:02:20 GMT): dselman (Thu, 18 May 2017 09:05:30 GMT): dselman (Thu, 18 May 2017 09:05:35 GMT): dselman (Thu, 18 May 2017 09:07:19 GMT): dselman (Thu, 18 May 2017 09:14:32 GMT): arner (Thu, 18 May 2017 09:37:35 GMT): davidkel (Thu, 18 May 2017 09:39:46 GMT): Jakeeyturner (Thu, 18 May 2017 09:39:54 GMT): Jakeeyturner (Thu, 18 May 2017 09:40:22 GMT): davidkel (Thu, 18 May 2017 09:41:30 GMT): Jakeeyturner (Thu, 18 May 2017 09:41:44 GMT): arner (Thu, 18 May 2017 09:43:42 GMT): bh4rtp (Thu, 18 May 2017 09:44:07 GMT): Jakeeyturner (Thu, 18 May 2017 09:45:49 GMT): Jakeeyturner (Thu, 18 May 2017 09:46:06 GMT): Jakeeyturner (Thu, 18 May 2017 09:51:31 GMT): davidkel (Thu, 18 May 2017 09:53:35 GMT): arner (Thu, 18 May 2017 09:55:05 GMT): tom.appleyard (Thu, 18 May 2017 09:55:27 GMT): davidkel (Thu, 18 May 2017 09:59:25 GMT): arner (Thu, 18 May 2017 10:01:09 GMT): Dpkkmr (Thu, 18 May 2017 10:43:33 GMT): Dpkkmr (Thu, 18 May 2017 10:43:33 GMT): Dpkkmr (Thu, 18 May 2017 10:43:33 GMT): Dpkkmr (Thu, 18 May 2017 10:43:33 GMT): Dpkkmr (Thu, 18 May 2017 10:46:11 GMT): Dpkkmr (Thu, 18 May 2017 10:47:28 GMT): EdMoffatt (Thu, 18 May 2017 10:51:07 GMT): vivekraut (Thu, 18 May 2017 10:55:00 GMT): jtonline (Thu, 18 May 2017 11:13:25 GMT): SahilKapoor (Thu, 18 May 2017 11:49:59 GMT): SahilKapoor (Thu, 18 May 2017 11:50:20 GMT): SanketPanchamia (Thu, 18 May 2017 11:59:49 GMT): Dpkkmr (Thu, 18 May 2017 11:59:54 GMT): Dpkkmr (Thu, 18 May 2017 11:59:54 GMT): SanketPanchamia (Thu, 18 May 2017 12:00:56 GMT): dselman (Thu, 18 May 2017 12:07:11 GMT): dselman (Thu, 18 May 2017 12:07:11 GMT): vivekraut (Thu, 18 May 2017 12:36:08 GMT): rfu2k (Thu, 18 May 2017 14:21:42 GMT): rfu2k (Thu, 18 May 2017 14:43:41 GMT): rfu2k (Thu, 18 May 2017 14:43:41 GMT): rfu2k (Thu, 18 May 2017 14:43:41 GMT): rfu2k (Thu, 18 May 2017 14:43:41 GMT): rfu2k (Thu, 18 May 2017 14:43:41 GMT): dselman (Thu, 18 May 2017 14:49:35 GMT): rfu2k (Thu, 18 May 2017 14:52:01 GMT): dselman (Thu, 18 May 2017 14:52:23 GMT): jinvanstee (Thu, 18 May 2017 15:18:47 GMT): EdMoffatt (Thu, 18 May 2017 15:21:06 GMT): jinvanstee (Thu, 18 May 2017 15:29:32 GMT): dklesev (Thu, 18 May 2017 15:36:40 GMT): SahilKapoor (Thu, 18 May 2017 16:07:13 GMT): SahilKapoor (Thu, 18 May 2017 16:07:47 GMT): jtonline (Thu, 18 May 2017 16:23:07 GMT): davidkel (Thu, 18 May 2017 16:29:53 GMT): davidkel (Thu, 18 May 2017 16:29:53 GMT): davidkel (Thu, 18 May 2017 16:46:56 GMT): vinitesh (Thu, 18 May 2017 17:03:33 GMT): tom.appleyard (Thu, 18 May 2017 17:04:05 GMT): tom.appleyard (Thu, 18 May 2017 17:04:10 GMT): tom.appleyard (Thu, 18 May 2017 17:04:28 GMT): tom.appleyard (Thu, 18 May 2017 17:09:56 GMT): jarroyer (Thu, 18 May 2017 17:29:10 GMT): prashiyn (Thu, 18 May 2017 17:31:28 GMT): sstone1 (Thu, 18 May 2017 17:38:02 GMT): sstone1 (Thu, 18 May 2017 17:38:19 GMT): tom.appleyard (Thu, 18 May 2017 17:40:22 GMT): sstone1 (Thu, 18 May 2017 17:40:40 GMT): sstone1 (Thu, 18 May 2017 17:40:42 GMT): sstone1 (Thu, 18 May 2017 17:40:44 GMT): tom.appleyard (Thu, 18 May 2017 17:41:32 GMT): Pasteis (Thu, 18 May 2017 17:55:40 GMT): SanketPanchamia (Thu, 18 May 2017 18:51:51 GMT): dselman (Thu, 18 May 2017 19:35:03 GMT): dselman (Thu, 18 May 2017 19:35:23 GMT): dselman (Thu, 18 May 2017 19:36:05 GMT): mohamoud.egal (Thu, 18 May 2017 19:37:10 GMT): dklesev (Thu, 18 May 2017 19:38:30 GMT): dselman (Thu, 18 May 2017 19:47:33 GMT): dselman (Thu, 18 May 2017 19:48:03 GMT): dselman (Thu, 18 May 2017 19:48:03 GMT): dklesev (Thu, 18 May 2017 19:52:42 GMT): dklesev (Thu, 18 May 2017 19:54:05 GMT): sstone1 (Thu, 18 May 2017 20:10:28 GMT): davidkel (Thu, 18 May 2017 20:49:48 GMT): torresjeff (Fri, 19 May 2017 00:01:51 GMT): shiliy (Fri, 19 May 2017 00:05:32 GMT): shiliy (Fri, 19 May 2017 00:08:50 GMT): shiliy (Fri, 19 May 2017 00:09:13 GMT): bh4rtp (Fri, 19 May 2017 01:36:27 GMT): bh4rtp (Fri, 19 May 2017 01:40:40 GMT): bh4rtp (Fri, 19 May 2017 01:40:40 GMT): KevinBai (Fri, 19 May 2017 04:13:04 GMT): vivekraut (Fri, 19 May 2017 06:19:50 GMT): Dpkkmr (Fri, 19 May 2017 06:36:04 GMT): Dpkkmr (Fri, 19 May 2017 06:36:04 GMT): vivekraut (Fri, 19 May 2017 06:50:19 GMT): davidkel (Fri, 19 May 2017 07:36:38 GMT): dselman (Fri, 19 May 2017 08:03:25 GMT): pettmel (Fri, 19 May 2017 08:45:18 GMT): rfu2k (Fri, 19 May 2017 08:49:44 GMT): rfu2k (Fri, 19 May 2017 08:49:44 GMT): rfu2k (Fri, 19 May 2017 08:49:44 GMT): dselman (Fri, 19 May 2017 08:55:31 GMT): dselman (Fri, 19 May 2017 08:56:01 GMT): Dpkkmr (Fri, 19 May 2017 09:49:20 GMT): Dpkkmr (Fri, 19 May 2017 09:51:21 GMT): Dpkkmr (Fri, 19 May 2017 09:52:37 GMT): Dpkkmr (Fri, 19 May 2017 09:52:37 GMT): Dpkkmr (Fri, 19 May 2017 09:52:37 GMT): Dpkkmr (Fri, 19 May 2017 09:52:37 GMT): vivekraut (Fri, 19 May 2017 10:37:12 GMT): davidkel (Fri, 19 May 2017 10:52:46 GMT): rfu2k (Fri, 19 May 2017 10:58:45 GMT): rfu2k (Fri, 19 May 2017 10:58:45 GMT): dklesev (Fri, 19 May 2017 11:00:09 GMT): dklesev (Fri, 19 May 2017 11:03:45 GMT): vivekraut (Fri, 19 May 2017 11:16:09 GMT): davidkel (Fri, 19 May 2017 11:24:32 GMT): dstarina (Fri, 19 May 2017 11:48:07 GMT): vinitesh (Fri, 19 May 2017 11:49:38 GMT): dselman (Fri, 19 May 2017 11:50:34 GMT): rodders1991 (Fri, 19 May 2017 12:16:56 GMT): rodders1991 (Fri, 19 May 2017 12:18:01 GMT): Jakeeyturner (Fri, 19 May 2017 12:36:09 GMT): Jakeeyturner (Fri, 19 May 2017 12:36:28 GMT): rodders1991 (Fri, 19 May 2017 12:53:26 GMT): Jakeeyturner (Fri, 19 May 2017 12:54:02 GMT): rodders1991 (Fri, 19 May 2017 12:56:27 GMT): ivaylopivanov (Fri, 19 May 2017 13:01:18 GMT): ivaylopivanov (Fri, 19 May 2017 13:02:44 GMT): dselman (Fri, 19 May 2017 13:37:33 GMT): jonathan-blood (Fri, 19 May 2017 13:39:51 GMT): Jakeeyturner (Fri, 19 May 2017 13:40:43 GMT): Jakeeyturner (Fri, 19 May 2017 13:40:54 GMT): Dpkkmr (Fri, 19 May 2017 14:02:19 GMT): karthikworks (Fri, 19 May 2017 14:08:49 GMT): Jakeeyturner (Fri, 19 May 2017 14:43:01 GMT): rodders1991 (Fri, 19 May 2017 15:05:46 GMT): Jakeeyturner (Fri, 19 May 2017 15:20:46 GMT): Jakeeyturner (Fri, 19 May 2017 15:21:06 GMT): karthikworks (Fri, 19 May 2017 15:42:29 GMT): karthikworks (Fri, 19 May 2017 15:43:33 GMT): Jakeeyturner (Fri, 19 May 2017 15:44:43 GMT): mahoney1 (Fri, 19 May 2017 15:46:27 GMT): jarroyer (Fri, 19 May 2017 15:49:15 GMT): GrahamCharters (Fri, 19 May 2017 15:49:22 GMT): karthikworks (Fri, 19 May 2017 15:50:20 GMT): Jakeeyturner (Fri, 19 May 2017 15:52:11 GMT): Jakeeyturner (Fri, 19 May 2017 15:54:21 GMT): jarroyer (Fri, 19 May 2017 16:01:36 GMT): sstone1 (Fri, 19 May 2017 16:04:13 GMT): karthikworks (Fri, 19 May 2017 16:06:42 GMT): davidkel (Fri, 19 May 2017 16:13:46 GMT): davidkel (Fri, 19 May 2017 16:17:54 GMT): GrahamCharters (Fri, 19 May 2017 17:55:47 GMT): GrahamCharters (Fri, 19 May 2017 17:55:47 GMT): GrahamCharters (Fri, 19 May 2017 17:55:47 GMT): shivann (Fri, 19 May 2017 17:56:48 GMT): GrahamCharters (Fri, 19 May 2017 17:57:50 GMT): torresjeff (Fri, 19 May 2017 18:25:22 GMT): torresjeff (Fri, 19 May 2017 18:25:35 GMT): jarroyer (Fri, 19 May 2017 19:16:01 GMT): caroline-church (Fri, 19 May 2017 21:58:50 GMT): smonfort (Fri, 19 May 2017 22:13:31 GMT): davidkel (Fri, 19 May 2017 23:07:21 GMT): SahilKapoor (Fri, 19 May 2017 23:44:20 GMT): SahilKapoor (Fri, 19 May 2017 23:44:33 GMT): SahilKapoor (Fri, 19 May 2017 23:44:55 GMT): SahilKapoor (Fri, 19 May 2017 23:45:22 GMT): SahilKapoor (Fri, 19 May 2017 23:50:51 GMT): SahilKapoor (Fri, 19 May 2017 23:50:51 GMT): Dpkkmr (Sat, 20 May 2017 04:23:57 GMT): davidkel (Sat, 20 May 2017 07:35:44 GMT): ivaylopivanov (Sat, 20 May 2017 07:52:34 GMT): ivaylopivanov (Sat, 20 May 2017 07:53:36 GMT): SahilKapoor (Sat, 20 May 2017 09:13:47 GMT): SahilKapoor (Sat, 20 May 2017 09:42:14 GMT): SahilKapoor (Sat, 20 May 2017 09:42:53 GMT): SahilKapoor (Sat, 20 May 2017 09:42:53 GMT): SahilKapoor (Sat, 20 May 2017 09:42:53 GMT): SahilKapoor (Sat, 20 May 2017 09:42:56 GMT): SahilKapoor (Sat, 20 May 2017 09:44:29 GMT): SahilKapoor (Sat, 20 May 2017 09:44:29 GMT): dselman (Sat, 20 May 2017 09:46:18 GMT): dselman (Sat, 20 May 2017 09:46:28 GMT): dselman (Sat, 20 May 2017 09:47:03 GMT): dselman (Sat, 20 May 2017 09:47:26 GMT): SahilKapoor (Sat, 20 May 2017 09:51:21 GMT): SahilKapoor (Sat, 20 May 2017 09:51:53 GMT): dselman (Sat, 20 May 2017 10:16:19 GMT): SahilKapoor (Sat, 20 May 2017 10:33:38 GMT): SahilKapoor (Sat, 20 May 2017 10:33:41 GMT): SahilKapoor (Sat, 20 May 2017 10:33:43 GMT): gtewallace (Sat, 20 May 2017 12:25:57 GMT): SahilKapoor (Sat, 20 May 2017 13:12:42 GMT): SahilKapoor (Sat, 20 May 2017 13:13:09 GMT): dselman (Sat, 20 May 2017 13:13:51 GMT): SahilKapoor (Sat, 20 May 2017 13:15:01 GMT): SahilKapoor (Sat, 20 May 2017 13:18:22 GMT): SahilKapoor (Sat, 20 May 2017 13:18:22 GMT): SahilKapoor (Sat, 20 May 2017 13:19:44 GMT): SahilKapoor (Sat, 20 May 2017 13:19:44 GMT): dselman (Sat, 20 May 2017 13:22:45 GMT): dselman (Sat, 20 May 2017 13:23:01 GMT): dselman (Sat, 20 May 2017 13:29:10 GMT): dselman (Sat, 20 May 2017 13:29:57 GMT): SahilKapoor (Sat, 20 May 2017 13:44:44 GMT): SahilKapoor (Sat, 20 May 2017 13:44:49 GMT): SahilKapoor (Sat, 20 May 2017 13:44:49 GMT): bmalavan (Sat, 20 May 2017 14:35:31 GMT): greg2git (Sat, 20 May 2017 18:43:20 GMT): ASMP (Sat, 20 May 2017 19:11:20 GMT): ASMP (Sat, 20 May 2017 19:11:24 GMT): davidkel (Sat, 20 May 2017 20:32:01 GMT): ASMP (Sat, 20 May 2017 20:36:34 GMT): pettmel (Sun, 21 May 2017 05:45:07 GMT): pettmel (Sun, 21 May 2017 05:45:11 GMT): dselman (Sun, 21 May 2017 06:05:53 GMT): dselman (Sun, 21 May 2017 06:06:27 GMT): mackeee (Sun, 21 May 2017 06:22:21 GMT): pettmel (Sun, 21 May 2017 06:43:34 GMT): pettmel (Sun, 21 May 2017 06:44:16 GMT): pettmel (Sun, 21 May 2017 06:45:06 GMT): pettmel (Sun, 21 May 2017 06:45:13 GMT): pettmel (Sun, 21 May 2017 06:45:36 GMT): pettmel (Sun, 21 May 2017 06:55:45 GMT): pettmel (Sun, 21 May 2017 06:56:35 GMT): Pasteis (Sun, 21 May 2017 17:03:19 GMT): sstone1 (Sun, 21 May 2017 17:04:18 GMT): sstone1 (Sun, 21 May 2017 17:04:54 GMT): sstone1 (Sun, 21 May 2017 17:05:38 GMT): Pasteis (Sun, 21 May 2017 19:17:29 GMT): tennenjl (Mon, 22 May 2017 01:21:27 GMT): Calvin_Heo (Mon, 22 May 2017 02:52:51 GMT): SahilKapoor (Mon, 22 May 2017 05:33:55 GMT): davidkel (Mon, 22 May 2017 07:24:50 GMT): vinitesh (Mon, 22 May 2017 08:55:12 GMT): mbwhite (Mon, 22 May 2017 09:06:07 GMT): nkl199 (Mon, 22 May 2017 09:06:36 GMT): vinitesh (Mon, 22 May 2017 09:07:22 GMT): nkl199 (Mon, 22 May 2017 09:08:12 GMT): deepakvparmar (Mon, 22 May 2017 09:14:40 GMT): deepakvparmar (Mon, 22 May 2017 09:14:55 GMT): vinitesh (Mon, 22 May 2017 09:33:15 GMT): nkl199 (Mon, 22 May 2017 09:40:44 GMT): dstarina (Mon, 22 May 2017 10:59:40 GMT): dselman (Mon, 22 May 2017 11:04:46 GMT): dselman (Mon, 22 May 2017 11:04:47 GMT): dselman (Mon, 22 May 2017 11:05:13 GMT): dstarina (Mon, 22 May 2017 12:44:18 GMT): dstarina (Mon, 22 May 2017 12:44:36 GMT): dstarina (Mon, 22 May 2017 12:46:57 GMT): davidkel (Mon, 22 May 2017 13:09:28 GMT): gregnotso (Mon, 22 May 2017 13:09:56 GMT): dstarina (Mon, 22 May 2017 13:19:24 GMT): davidkel (Mon, 22 May 2017 13:35:38 GMT): davidkel (Mon, 22 May 2017 13:35:38 GMT): dstarina (Mon, 22 May 2017 13:45:19 GMT): davidkel (Mon, 22 May 2017 13:49:23 GMT): davidkel (Mon, 22 May 2017 13:50:00 GMT): dstarina (Mon, 22 May 2017 13:50:09 GMT): dstarina (Mon, 22 May 2017 13:50:09 GMT): dstarina (Mon, 22 May 2017 13:50:59 GMT): davidkel (Mon, 22 May 2017 13:51:42 GMT): dstarina (Mon, 22 May 2017 13:53:09 GMT): davidkel (Mon, 22 May 2017 13:54:07 GMT): dselman (Mon, 22 May 2017 13:55:31 GMT): dselman (Mon, 22 May 2017 13:55:40 GMT): dstarina (Mon, 22 May 2017 13:56:52 GMT): davidkel (Mon, 22 May 2017 13:58:09 GMT): dstarina (Mon, 22 May 2017 13:58:32 GMT): dstarina (Mon, 22 May 2017 13:59:05 GMT): davidkel (Mon, 22 May 2017 14:00:13 GMT): dstarina (Mon, 22 May 2017 14:03:44 GMT): rfu2k (Mon, 22 May 2017 14:05:38 GMT): dstarina (Mon, 22 May 2017 14:05:44 GMT): rfu2k (Mon, 22 May 2017 14:06:39 GMT): rfu2k (Mon, 22 May 2017 14:06:39 GMT): rfu2k (Mon, 22 May 2017 14:07:53 GMT): dstarina (Mon, 22 May 2017 14:09:07 GMT): rfu2k (Mon, 22 May 2017 14:10:37 GMT): rfu2k (Mon, 22 May 2017 14:10:37 GMT): rfu2k (Mon, 22 May 2017 14:10:37 GMT): rfu2k (Mon, 22 May 2017 14:10:37 GMT): davidkel (Mon, 22 May 2017 14:15:54 GMT): dstarina (Mon, 22 May 2017 14:20:15 GMT): davidkel (Mon, 22 May 2017 14:20:37 GMT): dstarina (Mon, 22 May 2017 14:21:26 GMT): dstarina (Mon, 22 May 2017 14:22:33 GMT): dstarina (Mon, 22 May 2017 14:23:04 GMT): dstarina (Mon, 22 May 2017 14:23:56 GMT): sb2407 (Mon, 22 May 2017 14:56:30 GMT): nkl199 (Mon, 22 May 2017 14:59:00 GMT): dselman (Mon, 22 May 2017 15:11:20 GMT): dselman (Mon, 22 May 2017 15:11:22 GMT): dselman (Mon, 22 May 2017 15:11:46 GMT): dselman (Mon, 22 May 2017 15:12:23 GMT): xuanyue202 (Mon, 22 May 2017 15:14:24 GMT): dselman (Mon, 22 May 2017 15:16:17 GMT): GrahamCharters (Mon, 22 May 2017 15:37:50 GMT): davidkel (Mon, 22 May 2017 15:57:35 GMT): DennisM330 (Mon, 22 May 2017 17:05:48 GMT): jdockter (Mon, 22 May 2017 17:16:14 GMT): nkl199 (Mon, 22 May 2017 17:38:21 GMT): Joseph (Mon, 22 May 2017 17:43:11 GMT): jdockter (Mon, 22 May 2017 17:46:41 GMT): berserkr (Mon, 22 May 2017 17:52:54 GMT): berserkr (Mon, 22 May 2017 17:52:55 GMT): berserkr (Mon, 22 May 2017 17:53:01 GMT): berserkr (Mon, 22 May 2017 17:53:03 GMT): berserkr (Mon, 22 May 2017 17:53:58 GMT): pranavkaushik (Mon, 22 May 2017 18:15:45 GMT): pranavkaushik (Mon, 22 May 2017 18:17:52 GMT): mgk (Mon, 22 May 2017 18:53:16 GMT): mgk (Mon, 22 May 2017 18:53:16 GMT): mgk (Mon, 22 May 2017 18:53:35 GMT): jogando (Mon, 22 May 2017 18:56:20 GMT): dselman (Mon, 22 May 2017 18:57:47 GMT): dselman (Mon, 22 May 2017 18:58:13 GMT): jogando (Mon, 22 May 2017 18:59:44 GMT): jdockter (Mon, 22 May 2017 19:01:38 GMT): mgk (Mon, 22 May 2017 19:02:14 GMT): mgk (Mon, 22 May 2017 19:02:14 GMT): mgk (Mon, 22 May 2017 19:03:04 GMT): dselman (Mon, 22 May 2017 19:03:06 GMT): jogando (Mon, 22 May 2017 19:03:36 GMT): dselman (Mon, 22 May 2017 19:03:53 GMT): dselman (Mon, 22 May 2017 19:04:37 GMT): mgk (Mon, 22 May 2017 19:09:41 GMT): mgk (Mon, 22 May 2017 19:09:41 GMT): DennisM330 (Mon, 22 May 2017 19:37:10 GMT): dselman (Mon, 22 May 2017 19:50:24 GMT): dselman (Mon, 22 May 2017 19:50:46 GMT): DennisM330 (Mon, 22 May 2017 19:54:04 GMT): mgk (Mon, 22 May 2017 19:57:44 GMT): torresjeff (Mon, 22 May 2017 19:58:17 GMT): dselman (Mon, 22 May 2017 19:58:26 GMT): torresjeff (Mon, 22 May 2017 19:58:43 GMT): dselman (Mon, 22 May 2017 19:59:20 GMT): DennisM330 (Mon, 22 May 2017 20:02:56 GMT): SahilKapoor (Mon, 22 May 2017 20:10:27 GMT): SahilKapoor (Mon, 22 May 2017 20:11:04 GMT): SahilKapoor (Mon, 22 May 2017 20:11:29 GMT): SahilKapoor (Mon, 22 May 2017 20:11:36 GMT): SahilKapoor (Mon, 22 May 2017 20:11:49 GMT): SahilKapoor (Mon, 22 May 2017 20:12:07 GMT): SahilKapoor (Mon, 22 May 2017 20:12:22 GMT): SahilKapoor (Mon, 22 May 2017 20:12:29 GMT): dstarina (Mon, 22 May 2017 20:35:35 GMT): davidkel (Mon, 22 May 2017 21:30:43 GMT): DennisM330 (Mon, 22 May 2017 21:40:44 GMT): huxiangdong (Mon, 22 May 2017 22:47:09 GMT): dselman (Tue, 23 May 2017 00:10:14 GMT): jchenibm (Tue, 23 May 2017 02:02:10 GMT): jdockter (Tue, 23 May 2017 02:52:31 GMT): jdockter (Tue, 23 May 2017 02:53:39 GMT): JonathanTan (Tue, 23 May 2017 03:11:26 GMT): pranavkaushik (Tue, 23 May 2017 04:42:14 GMT): abcoathup (Tue, 23 May 2017 06:01:53 GMT): deepakvparmar (Tue, 23 May 2017 06:07:26 GMT): deepakvparmar (Tue, 23 May 2017 06:07:41 GMT): pranavkaushik (Tue, 23 May 2017 06:34:01 GMT): ashishbaju (Tue, 23 May 2017 06:35:54 GMT): davidkel (Tue, 23 May 2017 07:03:16 GMT): davidkel (Tue, 23 May 2017 07:04:35 GMT): deepakvparmar (Tue, 23 May 2017 07:05:36 GMT): davidkel (Tue, 23 May 2017 07:07:12 GMT): deepakvparmar (Tue, 23 May 2017 07:11:23 GMT): davidkel (Tue, 23 May 2017 07:18:07 GMT): ashishbaju (Tue, 23 May 2017 07:23:09 GMT): ashishbaju (Tue, 23 May 2017 07:26:34 GMT): ashishbaju (Tue, 23 May 2017 07:33:40 GMT): nkl199 (Tue, 23 May 2017 07:35:14 GMT): SahilKapoor (Tue, 23 May 2017 07:39:21 GMT): SahilKapoor (Tue, 23 May 2017 07:39:21 GMT): pranavkaushik (Tue, 23 May 2017 07:41:14 GMT): davidkel (Tue, 23 May 2017 08:00:56 GMT): dselman (Tue, 23 May 2017 08:02:22 GMT): dselman (Tue, 23 May 2017 08:05:00 GMT): lengzi (Tue, 23 May 2017 08:16:39 GMT): rfu2k (Tue, 23 May 2017 08:44:11 GMT): rfu2k (Tue, 23 May 2017 08:44:11 GMT): nkl199 (Tue, 23 May 2017 08:48:32 GMT): rfu2k (Tue, 23 May 2017 08:48:53 GMT): nkl199 (Tue, 23 May 2017 08:53:57 GMT): dselman (Tue, 23 May 2017 09:42:47 GMT): vinitesh (Tue, 23 May 2017 10:38:07 GMT): deepakvparmar (Tue, 23 May 2017 11:24:55 GMT): deepakvparmar (Tue, 23 May 2017 11:25:04 GMT): davidkel (Tue, 23 May 2017 12:05:28 GMT): SahilKapoor (Tue, 23 May 2017 12:07:56 GMT): ashishbaju (Tue, 23 May 2017 12:15:29 GMT): karthikworks (Tue, 23 May 2017 12:15:42 GMT): kishansagathiya (Tue, 23 May 2017 12:15:44 GMT): kishansagathiya (Tue, 23 May 2017 12:16:15 GMT): Jakeeyturner (Tue, 23 May 2017 12:17:33 GMT): Jakeeyturner (Tue, 23 May 2017 12:17:33 GMT): nkl199 (Tue, 23 May 2017 12:19:07 GMT): deepakvparmar (Tue, 23 May 2017 12:31:35 GMT): davidkel (Tue, 23 May 2017 12:44:44 GMT): dselman (Tue, 23 May 2017 12:46:31 GMT): dselman (Tue, 23 May 2017 12:47:16 GMT): tennenjl (Tue, 23 May 2017 12:48:01 GMT): vinitesh (Tue, 23 May 2017 12:49:31 GMT): davidkel (Tue, 23 May 2017 12:56:57 GMT): tennenjl (Tue, 23 May 2017 12:57:31 GMT): tennenjl (Tue, 23 May 2017 12:57:31 GMT): tennenjl (Tue, 23 May 2017 12:57:31 GMT): tennenjl (Tue, 23 May 2017 12:57:31 GMT): ashishbaju (Tue, 23 May 2017 12:57:37 GMT): davidkel (Tue, 23 May 2017 13:06:35 GMT): tennenjl (Tue, 23 May 2017 13:09:32 GMT): tennenjl (Tue, 23 May 2017 13:09:32 GMT): deepakvparmar (Tue, 23 May 2017 13:15:49 GMT): FenglianXu (Tue, 23 May 2017 13:19:12 GMT): davidkel (Tue, 23 May 2017 13:19:24 GMT): jdockter (Tue, 23 May 2017 13:20:28 GMT): tennenjl (Tue, 23 May 2017 13:20:48 GMT): FenglianXu (Tue, 23 May 2017 13:22:32 GMT): tennenjl (Tue, 23 May 2017 13:23:32 GMT): tennenjl (Tue, 23 May 2017 13:24:37 GMT): tennenjl (Tue, 23 May 2017 13:25:17 GMT): FenglianXu (Tue, 23 May 2017 13:25:46 GMT): tennenjl (Tue, 23 May 2017 13:25:50 GMT): tennenjl (Tue, 23 May 2017 13:25:50 GMT): FenglianXu (Tue, 23 May 2017 13:26:59 GMT): FenglianXu (Tue, 23 May 2017 13:27:24 GMT): tennenjl (Tue, 23 May 2017 13:27:39 GMT): tennenjl (Tue, 23 May 2017 13:27:39 GMT): deepakvparmar (Tue, 23 May 2017 13:28:01 GMT): FenglianXu (Tue, 23 May 2017 13:28:36 GMT): FenglianXu (Tue, 23 May 2017 13:30:56 GMT): tennenjl (Tue, 23 May 2017 13:31:02 GMT): FenglianXu (Tue, 23 May 2017 13:31:19 GMT): tennenjl (Tue, 23 May 2017 13:31:57 GMT): tennenjl (Tue, 23 May 2017 13:32:21 GMT): FenglianXu (Tue, 23 May 2017 13:37:05 GMT): FenglianXu (Tue, 23 May 2017 13:37:34 GMT): FenglianXu (Tue, 23 May 2017 13:38:04 GMT): SahilKapoor (Tue, 23 May 2017 13:38:36 GMT): FenglianXu (Tue, 23 May 2017 13:38:39 GMT): tennenjl (Tue, 23 May 2017 13:39:50 GMT): tennenjl (Tue, 23 May 2017 13:49:37 GMT): FenglianXu (Tue, 23 May 2017 13:53:03 GMT): tennenjl (Tue, 23 May 2017 13:53:09 GMT): FenglianXu (Tue, 23 May 2017 13:53:28 GMT): FenglianXu (Tue, 23 May 2017 13:53:45 GMT): tennenjl (Tue, 23 May 2017 13:53:48 GMT): FenglianXu (Tue, 23 May 2017 13:54:00 GMT): FenglianXu (Tue, 23 May 2017 13:54:10 GMT): tennenjl (Tue, 23 May 2017 13:54:27 GMT): FenglianXu (Tue, 23 May 2017 13:54:47 GMT): FenglianXu (Tue, 23 May 2017 13:54:51 GMT): FenglianXu (Tue, 23 May 2017 13:55:21 GMT): tennenjl (Tue, 23 May 2017 13:55:24 GMT): FenglianXu (Tue, 23 May 2017 13:55:36 GMT): tennenjl (Tue, 23 May 2017 13:56:22 GMT): FenglianXu (Tue, 23 May 2017 13:56:36 GMT): tennenjl (Tue, 23 May 2017 13:56:49 GMT): FenglianXu (Tue, 23 May 2017 13:57:03 GMT): davidkel (Tue, 23 May 2017 14:19:06 GMT): deepakvparmar (Tue, 23 May 2017 14:37:11 GMT): rfu2k (Tue, 23 May 2017 14:38:54 GMT): rfu2k (Tue, 23 May 2017 14:38:54 GMT): davidkel (Tue, 23 May 2017 14:43:47 GMT): davidkel (Tue, 23 May 2017 14:46:39 GMT): davidkel (Tue, 23 May 2017 14:46:39 GMT): rfu2k (Tue, 23 May 2017 14:48:35 GMT): rfu2k (Tue, 23 May 2017 15:31:51 GMT): laoqui (Tue, 23 May 2017 15:53:58 GMT): garMobTest (Tue, 23 May 2017 17:46:25 GMT): davidkel (Tue, 23 May 2017 18:10:40 GMT): davidkel (Tue, 23 May 2017 18:10:40 GMT): berserkr (Tue, 23 May 2017 19:10:38 GMT): dselman (Tue, 23 May 2017 19:18:15 GMT): dselman (Tue, 23 May 2017 19:18:32 GMT): garMobTest (Tue, 23 May 2017 20:01:25 GMT): laoqui (Tue, 23 May 2017 20:44:56 GMT): laoqui (Tue, 23 May 2017 20:44:56 GMT): laoqui (Tue, 23 May 2017 20:44:56 GMT): davidkel (Tue, 23 May 2017 20:54:56 GMT): ohudson (Tue, 23 May 2017 22:33:41 GMT): TrevorBergeron (Tue, 23 May 2017 23:22:28 GMT): TrevorBergeron (Tue, 23 May 2017 23:23:02 GMT): TrevorBergeron (Tue, 23 May 2017 23:23:41 GMT): berserkr (Tue, 23 May 2017 23:24:15 GMT): berserkr (Tue, 23 May 2017 23:24:27 GMT): berserkr (Tue, 23 May 2017 23:24:50 GMT): TrevorBergeron (Tue, 23 May 2017 23:28:05 GMT): TrevorBergeron (Tue, 23 May 2017 23:29:02 GMT): TrevorBergeron (Tue, 23 May 2017 23:31:52 GMT): dselman (Tue, 23 May 2017 23:35:34 GMT): TrevorBergeron (Tue, 23 May 2017 23:37:16 GMT): bmkor (Wed, 24 May 2017 00:40:04 GMT): dwakeman (Wed, 24 May 2017 01:55:22 GMT): sanjay-saxena (Wed, 24 May 2017 03:01:49 GMT): JennFoley (Wed, 24 May 2017 03:17:23 GMT): JennFoley (Wed, 24 May 2017 03:18:22 GMT): JennFoley (Wed, 24 May 2017 03:19:16 GMT): slender (Wed, 24 May 2017 04:57:47 GMT): davidkel (Wed, 24 May 2017 06:13:58 GMT): dselman (Wed, 24 May 2017 07:11:32 GMT): deepakvparmar (Wed, 24 May 2017 08:22:21 GMT): deepakvparmar (Wed, 24 May 2017 08:46:04 GMT): davidkel (Wed, 24 May 2017 09:28:53 GMT): deepakvparmar (Wed, 24 May 2017 09:35:42 GMT): davidkel (Wed, 24 May 2017 09:43:18 GMT): deepakvparmar (Wed, 24 May 2017 09:44:13 GMT): davidkel (Wed, 24 May 2017 09:47:37 GMT): davidkel (Wed, 24 May 2017 09:48:45 GMT): deepakvparmar (Wed, 24 May 2017 09:49:24 GMT): deepakvparmar (Wed, 24 May 2017 09:51:58 GMT): davidkel (Wed, 24 May 2017 09:55:59 GMT): deepakvparmar (Wed, 24 May 2017 09:58:34 GMT): rfu2k (Wed, 24 May 2017 10:21:25 GMT): davidkel (Wed, 24 May 2017 10:22:40 GMT): rfu2k (Wed, 24 May 2017 10:26:35 GMT): rfu2k (Wed, 24 May 2017 10:26:35 GMT): davidkel (Wed, 24 May 2017 10:31:35 GMT): Fanarito (Wed, 24 May 2017 11:14:37 GMT): Fanarito (Wed, 24 May 2017 11:18:58 GMT): Fanarito (Wed, 24 May 2017 11:19:13 GMT): Fanarito (Wed, 24 May 2017 11:19:31 GMT): Fanarito (Wed, 24 May 2017 11:20:24 GMT): Fanarito (Wed, 24 May 2017 11:21:03 GMT): nkl199 (Wed, 24 May 2017 11:43:22 GMT): AndresGaragiola (Wed, 24 May 2017 11:54:01 GMT): Fanarito (Wed, 24 May 2017 11:59:28 GMT): Fanarito (Wed, 24 May 2017 12:01:02 GMT): Fanarito (Wed, 24 May 2017 12:04:33 GMT): Fanarito (Wed, 24 May 2017 12:04:41 GMT): Fanarito (Wed, 24 May 2017 12:04:41 GMT): davidkel (Wed, 24 May 2017 12:12:16 GMT): Fanarito (Wed, 24 May 2017 12:26:32 GMT): rama_rahul (Wed, 24 May 2017 12:34:28 GMT): jje (Wed, 24 May 2017 12:45:30 GMT): nkl199 (Wed, 24 May 2017 13:00:59 GMT): jje (Wed, 24 May 2017 13:45:02 GMT): JennFoley (Wed, 24 May 2017 13:57:29 GMT): nkl199 (Wed, 24 May 2017 14:05:27 GMT): jje (Wed, 24 May 2017 14:08:05 GMT): nkl199 (Wed, 24 May 2017 14:22:48 GMT): jje (Wed, 24 May 2017 14:27:56 GMT): nkl199 (Wed, 24 May 2017 14:33:47 GMT): nkl199 (Wed, 24 May 2017 14:34:45 GMT): Fanarito (Wed, 24 May 2017 14:35:50 GMT): Fanarito (Wed, 24 May 2017 14:35:50 GMT): Fanarito (Wed, 24 May 2017 14:37:45 GMT): Fanarito (Wed, 24 May 2017 14:38:58 GMT): Fanarito (Wed, 24 May 2017 14:39:09 GMT): Fanarito (Wed, 24 May 2017 14:42:05 GMT): nkl199 (Wed, 24 May 2017 14:47:37 GMT): Fanarito (Wed, 24 May 2017 14:47:59 GMT): nkl199 (Wed, 24 May 2017 14:48:25 GMT): ArchanaBalaji (Wed, 24 May 2017 16:02:21 GMT): nehalshah50 (Wed, 24 May 2017 16:07:02 GMT): sanjay-saxena (Wed, 24 May 2017 16:08:06 GMT): nehalshah50 (Wed, 24 May 2017 16:09:32 GMT): nkl199 (Wed, 24 May 2017 16:17:30 GMT): muratfirat (Wed, 24 May 2017 18:37:49 GMT): muratfirat (Wed, 24 May 2017 18:39:21 GMT): SahilKapoor (Wed, 24 May 2017 18:51:21 GMT): SahilKapoor (Wed, 24 May 2017 18:51:55 GMT): SahilKapoor (Wed, 24 May 2017 18:52:10 GMT): SahilKapoor (Wed, 24 May 2017 18:52:15 GMT): SahilKapoor (Wed, 24 May 2017 18:52:36 GMT): SahilKapoor (Wed, 24 May 2017 18:52:53 GMT): SahilKapoor (Wed, 24 May 2017 18:53:20 GMT): SahilKapoor (Wed, 24 May 2017 18:53:35 GMT): davidkel (Wed, 24 May 2017 18:59:09 GMT): davidkel (Wed, 24 May 2017 19:00:57 GMT): SahilKapoor (Wed, 24 May 2017 19:03:06 GMT): SahilKapoor (Wed, 24 May 2017 19:03:11 GMT): muratfirat (Wed, 24 May 2017 19:05:22 GMT): davidkel (Wed, 24 May 2017 19:06:35 GMT): aakaakar (Wed, 24 May 2017 19:07:36 GMT): aakaakar (Wed, 24 May 2017 19:07:49 GMT): aakaakar (Wed, 24 May 2017 19:08:05 GMT): davidoevans (Wed, 24 May 2017 21:04:54 GMT): davidoevans (Wed, 24 May 2017 21:06:40 GMT): tennenjl (Wed, 24 May 2017 21:07:36 GMT): dselman (Wed, 24 May 2017 21:51:37 GMT): dselman (Wed, 24 May 2017 21:51:52 GMT): dselman (Wed, 24 May 2017 21:53:10 GMT): dselman (Wed, 24 May 2017 21:54:58 GMT): rfu2k (Wed, 24 May 2017 21:56:22 GMT): dselman (Wed, 24 May 2017 21:56:40 GMT): dselman (Wed, 24 May 2017 21:56:44 GMT): tennenjl (Wed, 24 May 2017 22:30:48 GMT): dselman (Thu, 25 May 2017 00:16:30 GMT): DrTES (Thu, 25 May 2017 00:29:09 GMT): DrTES (Thu, 25 May 2017 00:29:28 GMT): dselman (Thu, 25 May 2017 00:35:21 GMT): dselman (Thu, 25 May 2017 00:35:47 GMT): DrTES (Thu, 25 May 2017 00:47:03 GMT): tennenjl (Thu, 25 May 2017 00:50:52 GMT): tennenjl (Thu, 25 May 2017 00:50:52 GMT): tennenjl (Thu, 25 May 2017 01:01:28 GMT): dwakeman (Thu, 25 May 2017 02:22:20 GMT): rama_rahul (Thu, 25 May 2017 05:29:56 GMT): rama_rahul (Thu, 25 May 2017 06:25:18 GMT): SanketPanchamia (Thu, 25 May 2017 07:05:06 GMT): SanketPanchamia (Thu, 25 May 2017 07:05:31 GMT): SanketPanchamia (Thu, 25 May 2017 07:09:23 GMT): jordipainan (Thu, 25 May 2017 07:51:35 GMT): dselman (Thu, 25 May 2017 08:01:26 GMT): dselman (Thu, 25 May 2017 08:02:20 GMT): jordipainan (Thu, 25 May 2017 08:08:04 GMT): nkl199 (Thu, 25 May 2017 08:10:05 GMT): dselman (Thu, 25 May 2017 08:11:51 GMT): dselman (Thu, 25 May 2017 08:12:01 GMT): davidkel (Thu, 25 May 2017 08:16:08 GMT): ibmamnt (Thu, 25 May 2017 08:20:18 GMT): nkl199 (Thu, 25 May 2017 08:26:51 GMT): rfu2k (Thu, 25 May 2017 08:30:42 GMT): rfu2k (Thu, 25 May 2017 08:30:42 GMT): dselman (Thu, 25 May 2017 08:37:15 GMT): ibmamnt (Thu, 25 May 2017 08:43:39 GMT): davidkel (Thu, 25 May 2017 08:49:22 GMT): ibmamnt (Thu, 25 May 2017 08:56:06 GMT): uber.twin (Thu, 25 May 2017 08:56:18 GMT): uber.twin (Thu, 25 May 2017 08:58:41 GMT): dselman (Thu, 25 May 2017 08:59:35 GMT): dselman (Thu, 25 May 2017 09:00:24 GMT): uber.twin (Thu, 25 May 2017 09:01:25 GMT): ibmamnt (Thu, 25 May 2017 09:03:12 GMT): jordipainan (Thu, 25 May 2017 09:12:33 GMT): jordipainan (Thu, 25 May 2017 09:13:16 GMT): jordipainan (Thu, 25 May 2017 09:13:37 GMT): dselman (Thu, 25 May 2017 09:14:12 GMT): jordipainan (Thu, 25 May 2017 09:15:28 GMT): rama_rahul (Thu, 25 May 2017 09:18:13 GMT): rfu2k (Thu, 25 May 2017 09:20:59 GMT): rfu2k (Thu, 25 May 2017 09:20:59 GMT): SanketPanchamia (Thu, 25 May 2017 09:33:26 GMT): SanketPanchamia (Thu, 25 May 2017 09:33:35 GMT): nkl199 (Thu, 25 May 2017 09:34:27 GMT): nkl199 (Thu, 25 May 2017 09:35:19 GMT): SanketPanchamia (Thu, 25 May 2017 09:35:45 GMT): nkl199 (Thu, 25 May 2017 09:36:51 GMT): SanketPanchamia (Thu, 25 May 2017 09:38:11 GMT): nkl199 (Thu, 25 May 2017 09:39:13 GMT): rfu2k (Thu, 25 May 2017 09:40:50 GMT): rama_rahul (Thu, 25 May 2017 09:41:06 GMT): SanketPanchamia (Thu, 25 May 2017 09:41:13 GMT): rfu2k (Thu, 25 May 2017 09:43:46 GMT): rama_rahul (Thu, 25 May 2017 09:46:41 GMT): rama_rahul (Thu, 25 May 2017 09:47:09 GMT): rfu2k (Thu, 25 May 2017 09:47:31 GMT): rfu2k (Thu, 25 May 2017 09:47:31 GMT): rfu2k (Thu, 25 May 2017 09:47:31 GMT): SanketPanchamia (Thu, 25 May 2017 09:48:35 GMT): SanketPanchamia (Thu, 25 May 2017 09:48:57 GMT): rama_rahul (Thu, 25 May 2017 09:49:24 GMT): rfu2k (Thu, 25 May 2017 09:51:29 GMT): rfu2k (Thu, 25 May 2017 09:51:29 GMT): rama_rahul (Thu, 25 May 2017 09:51:30 GMT): rfu2k (Thu, 25 May 2017 09:53:43 GMT): SanketPanchamia (Thu, 25 May 2017 09:56:02 GMT): rama_rahul (Thu, 25 May 2017 09:58:26 GMT): davidkel (Thu, 25 May 2017 10:17:39 GMT): rama_rahul (Thu, 25 May 2017 10:22:40 GMT): rama_rahul (Thu, 25 May 2017 10:35:59 GMT): davidkel (Thu, 25 May 2017 11:55:48 GMT): rama_rahul (Thu, 25 May 2017 11:58:43 GMT): rama_rahul (Thu, 25 May 2017 11:58:59 GMT): rama_rahul (Thu, 25 May 2017 12:01:09 GMT): deepakvparmar (Thu, 25 May 2017 12:02:11 GMT): davidkel (Thu, 25 May 2017 12:02:24 GMT): davidkel (Thu, 25 May 2017 12:03:37 GMT): rama_rahul (Thu, 25 May 2017 12:04:05 GMT): davidkel (Thu, 25 May 2017 12:04:51 GMT): rama_rahul (Thu, 25 May 2017 12:05:23 GMT): deepakvparmar (Thu, 25 May 2017 12:09:26 GMT): davidkel (Thu, 25 May 2017 12:11:01 GMT): rama_rahul (Thu, 25 May 2017 12:14:18 GMT): davidkel (Thu, 25 May 2017 12:19:34 GMT): davidkel (Thu, 25 May 2017 12:20:34 GMT): davidkel (Thu, 25 May 2017 12:20:34 GMT): rama_rahul (Thu, 25 May 2017 12:25:20 GMT): davidkel (Thu, 25 May 2017 12:26:41 GMT): rama_rahul (Thu, 25 May 2017 12:27:20 GMT): davidkel (Thu, 25 May 2017 12:28:17 GMT): rama_rahul (Thu, 25 May 2017 12:28:39 GMT): rama_rahul (Thu, 25 May 2017 12:31:52 GMT): GrahamCharters (Thu, 25 May 2017 12:32:20 GMT): davidkel (Thu, 25 May 2017 12:37:33 GMT): rama_rahul (Thu, 25 May 2017 12:38:06 GMT): rama_rahul (Thu, 25 May 2017 12:38:48 GMT): davidkel (Thu, 25 May 2017 12:40:43 GMT): dwakeman (Thu, 25 May 2017 12:41:09 GMT): rama_rahul (Thu, 25 May 2017 12:41:21 GMT): dwakeman (Thu, 25 May 2017 12:41:34 GMT): dwakeman (Thu, 25 May 2017 12:44:14 GMT): ianco (Thu, 25 May 2017 12:51:14 GMT): ianco (Thu, 25 May 2017 12:52:55 GMT): ianco (Thu, 25 May 2017 12:59:16 GMT): ianco (Thu, 25 May 2017 13:01:49 GMT): ianco (Thu, 25 May 2017 13:01:49 GMT): GrahamCharters (Thu, 25 May 2017 13:07:32 GMT): GrahamCharters (Thu, 25 May 2017 13:07:32 GMT): ianco (Thu, 25 May 2017 13:28:04 GMT): jorgedr (Thu, 25 May 2017 13:28:26 GMT): SanketPanchamia (Thu, 25 May 2017 13:32:42 GMT): davidkel (Thu, 25 May 2017 13:39:40 GMT): ianco (Thu, 25 May 2017 13:41:57 GMT): jdockter (Thu, 25 May 2017 13:44:12 GMT): jorgedr (Thu, 25 May 2017 13:44:42 GMT): tobiashunter (Thu, 25 May 2017 14:28:12 GMT): tobiashunter (Thu, 25 May 2017 14:28:42 GMT): tennenjl (Thu, 25 May 2017 14:30:09 GMT): davidkel (Thu, 25 May 2017 14:34:27 GMT): jeffgarratt (Thu, 25 May 2017 14:36:25 GMT): tennenjl (Thu, 25 May 2017 14:36:59 GMT): tennenjl (Thu, 25 May 2017 14:37:09 GMT): jeffgarratt (Thu, 25 May 2017 14:37:28 GMT): jeffgarratt (Thu, 25 May 2017 14:37:43 GMT): jeffgarratt (Thu, 25 May 2017 14:38:01 GMT): jeffgarratt (Thu, 25 May 2017 14:38:36 GMT): davidkel (Thu, 25 May 2017 14:38:39 GMT): jeffgarratt (Thu, 25 May 2017 14:38:44 GMT): jeffgarratt (Thu, 25 May 2017 14:39:06 GMT): jeffgarratt (Thu, 25 May 2017 14:39:28 GMT): jeffgarratt (Thu, 25 May 2017 14:39:56 GMT): jeffgarratt (Thu, 25 May 2017 14:40:24 GMT): jeffgarratt (Thu, 25 May 2017 14:40:53 GMT): jeffgarratt (Thu, 25 May 2017 14:41:42 GMT): davidkel (Thu, 25 May 2017 14:41:48 GMT): jeffgarratt (Thu, 25 May 2017 14:42:12 GMT): jeffgarratt (Thu, 25 May 2017 14:42:23 GMT): jeffgarratt (Thu, 25 May 2017 14:43:55 GMT): davidkel (Thu, 25 May 2017 14:43:56 GMT): jeffgarratt (Thu, 25 May 2017 14:44:13 GMT): jeffgarratt (Thu, 25 May 2017 14:44:13 GMT): jeffgarratt (Thu, 25 May 2017 14:44:42 GMT): jeffgarratt (Thu, 25 May 2017 14:44:55 GMT): jeffgarratt (Thu, 25 May 2017 14:45:17 GMT): jeffgarratt (Thu, 25 May 2017 14:45:21 GMT): tennenjl (Thu, 25 May 2017 14:45:30 GMT): jeffgarratt (Thu, 25 May 2017 14:45:30 GMT): tennenjl (Thu, 25 May 2017 14:45:46 GMT): davidkel (Thu, 25 May 2017 14:47:23 GMT): jeffgarratt (Thu, 25 May 2017 14:47:47 GMT): davidkel (Thu, 25 May 2017 14:48:00 GMT): jeffgarratt (Thu, 25 May 2017 14:48:05 GMT): jeffgarratt (Thu, 25 May 2017 14:48:11 GMT): davidkel (Thu, 25 May 2017 14:48:18 GMT): jeffgarratt (Thu, 25 May 2017 14:49:23 GMT): tennenjl (Thu, 25 May 2017 14:49:47 GMT): jeffgarratt (Thu, 25 May 2017 14:49:51 GMT): nehalshah50 (Thu, 25 May 2017 14:58:30 GMT): jeffgarratt (Thu, 25 May 2017 15:00:15 GMT): tennenjl (Thu, 25 May 2017 15:01:02 GMT): svasilyev (Thu, 25 May 2017 15:04:59 GMT): rfu2k (Thu, 25 May 2017 15:10:32 GMT): nehalshah50 (Thu, 25 May 2017 15:27:54 GMT): nehalshah50 (Thu, 25 May 2017 15:27:54 GMT): dselman (Thu, 25 May 2017 15:34:19 GMT): nehalshah50 (Thu, 25 May 2017 15:47:59 GMT): JohnWhitton (Thu, 25 May 2017 15:58:10 GMT): JohnWhitton (Thu, 25 May 2017 15:58:22 GMT): JohnWhitton (Thu, 25 May 2017 15:58:22 GMT): dselman (Thu, 25 May 2017 16:01:33 GMT): dselman (Thu, 25 May 2017 16:01:45 GMT): dselman (Thu, 25 May 2017 16:04:50 GMT): aakaakar (Thu, 25 May 2017 17:08:07 GMT): dselman (Thu, 25 May 2017 18:30:34 GMT): dwakeman (Thu, 25 May 2017 19:29:06 GMT): dwakeman (Thu, 25 May 2017 19:29:23 GMT): nkl199 (Thu, 25 May 2017 19:32:13 GMT): dselman (Thu, 25 May 2017 19:33:12 GMT): dwakeman (Thu, 25 May 2017 19:33:34 GMT): dselman (Thu, 25 May 2017 19:33:38 GMT): dwakeman (Thu, 25 May 2017 19:33:47 GMT): dwakeman (Thu, 25 May 2017 19:34:32 GMT): dselman (Thu, 25 May 2017 19:34:48 GMT): dwakeman (Thu, 25 May 2017 19:34:54 GMT): dwakeman (Thu, 25 May 2017 19:35:12 GMT): sanjay-saxena (Thu, 25 May 2017 19:35:13 GMT): dselman (Thu, 25 May 2017 19:35:54 GMT): sanjay-saxena (Thu, 25 May 2017 19:36:19 GMT): dselman (Thu, 25 May 2017 19:36:22 GMT): dselman (Thu, 25 May 2017 19:36:59 GMT): dselman (Thu, 25 May 2017 19:37:07 GMT): dwakeman (Thu, 25 May 2017 19:37:11 GMT): dwakeman (Thu, 25 May 2017 19:38:02 GMT): dwakeman (Thu, 25 May 2017 19:38:09 GMT): dselman (Thu, 25 May 2017 19:38:29 GMT): dselman (Thu, 25 May 2017 19:38:46 GMT): dselman (Thu, 25 May 2017 19:39:07 GMT): dwakeman (Thu, 25 May 2017 19:39:51 GMT): dwakeman (Thu, 25 May 2017 19:43:37 GMT): dwakeman (Thu, 25 May 2017 19:45:03 GMT): nehalshah50 (Thu, 25 May 2017 19:57:14 GMT): nkl199 (Thu, 25 May 2017 20:12:20 GMT): dselman (Thu, 25 May 2017 20:21:18 GMT): dselman (Thu, 25 May 2017 20:24:13 GMT): dselman (Thu, 25 May 2017 20:25:08 GMT): nkl199 (Thu, 25 May 2017 20:25:25 GMT): dwakeman (Thu, 25 May 2017 20:26:04 GMT): dselman (Thu, 25 May 2017 20:26:13 GMT): dselman (Thu, 25 May 2017 20:26:52 GMT): dwakeman (Thu, 25 May 2017 20:27:51 GMT): dselman (Thu, 25 May 2017 20:29:24 GMT): dwakeman (Thu, 25 May 2017 20:29:41 GMT): dselman (Thu, 25 May 2017 20:30:19 GMT): dwakeman (Thu, 25 May 2017 20:31:17 GMT): dselman (Thu, 25 May 2017 20:31:49 GMT): dselman (Thu, 25 May 2017 20:31:59 GMT): dselman (Thu, 25 May 2017 20:32:50 GMT): dselman (Thu, 25 May 2017 20:33:06 GMT): dwakeman (Thu, 25 May 2017 20:33:28 GMT): dselman (Thu, 25 May 2017 20:34:30 GMT): dselman (Thu, 25 May 2017 20:34:56 GMT): dwakeman (Thu, 25 May 2017 20:35:38 GMT): dwakeman (Thu, 25 May 2017 20:36:29 GMT): dselman (Thu, 25 May 2017 20:36:41 GMT): dwakeman (Thu, 25 May 2017 20:37:39 GMT): nehalshah50 (Thu, 25 May 2017 20:45:28 GMT): dselman (Thu, 25 May 2017 20:46:37 GMT): nehalshah50 (Thu, 25 May 2017 20:48:03 GMT): dselman (Thu, 25 May 2017 20:49:01 GMT): dwakeman (Thu, 25 May 2017 20:53:51 GMT): dwakeman (Thu, 25 May 2017 20:56:58 GMT): dselman (Thu, 25 May 2017 20:57:51 GMT): dwakeman (Thu, 25 May 2017 20:58:09 GMT): dselman (Thu, 25 May 2017 20:58:33 GMT): dwakeman (Thu, 25 May 2017 20:58:38 GMT): dwakeman (Thu, 25 May 2017 20:59:06 GMT): dwakeman (Thu, 25 May 2017 20:59:55 GMT): dselman (Thu, 25 May 2017 21:00:54 GMT): dselman (Thu, 25 May 2017 21:01:04 GMT): dselman (Thu, 25 May 2017 21:01:25 GMT): dselman (Thu, 25 May 2017 21:01:35 GMT): dwakeman (Thu, 25 May 2017 21:01:56 GMT): dselman (Thu, 25 May 2017 21:02:16 GMT): dselman (Thu, 25 May 2017 21:02:21 GMT): dselman (Thu, 25 May 2017 21:02:52 GMT): dwakeman (Thu, 25 May 2017 21:03:19 GMT): dwakeman (Thu, 25 May 2017 21:03:48 GMT): dwakeman (Thu, 25 May 2017 21:04:28 GMT): dselman (Thu, 25 May 2017 21:05:30 GMT): dselman (Thu, 25 May 2017 21:05:58 GMT): dwakeman (Thu, 25 May 2017 21:06:12 GMT): dselman (Thu, 25 May 2017 21:06:19 GMT): dwakeman (Thu, 25 May 2017 21:07:50 GMT): dwakeman (Thu, 25 May 2017 21:13:17 GMT): dselman (Thu, 25 May 2017 21:13:46 GMT): tennenjl (Thu, 25 May 2017 21:57:29 GMT): tennenjl (Thu, 25 May 2017 21:57:29 GMT): tennenjl (Thu, 25 May 2017 21:57:29 GMT): tennenjl (Thu, 25 May 2017 22:01:12 GMT): tennenjl (Thu, 25 May 2017 22:01:12 GMT): tennenjl (Thu, 25 May 2017 22:01:12 GMT): tennenjl (Thu, 25 May 2017 22:02:17 GMT): dwakeman (Fri, 26 May 2017 02:15:09 GMT): torresjeff (Fri, 26 May 2017 02:19:48 GMT): dwakeman (Fri, 26 May 2017 03:21:57 GMT): sstone1 (Fri, 26 May 2017 03:44:42 GMT): torresjeff (Fri, 26 May 2017 03:57:33 GMT): torresjeff (Fri, 26 May 2017 03:58:04 GMT): PatisP (Fri, 26 May 2017 04:02:19 GMT): torresjeff (Fri, 26 May 2017 04:26:15 GMT): deepakvparmar (Fri, 26 May 2017 06:01:23 GMT): deepakvparmar (Fri, 26 May 2017 06:04:06 GMT): deepakvparmar (Fri, 26 May 2017 06:04:24 GMT): duwenhui (Fri, 26 May 2017 06:07:35 GMT): davidkel (Fri, 26 May 2017 06:16:31 GMT): deepakvparmar (Fri, 26 May 2017 06:18:29 GMT): davidkel (Fri, 26 May 2017 06:21:41 GMT): deepakvparmar (Fri, 26 May 2017 06:22:57 GMT): dselman (Fri, 26 May 2017 09:14:46 GMT): dselman (Fri, 26 May 2017 09:14:46 GMT): dselman (Fri, 26 May 2017 09:15:58 GMT): tennenjl (Fri, 26 May 2017 11:36:42 GMT): tennenjl (Fri, 26 May 2017 11:36:42 GMT): tennenjl (Fri, 26 May 2017 11:36:42 GMT): tennenjl (Fri, 26 May 2017 11:36:42 GMT): tennenjl (Fri, 26 May 2017 11:36:42 GMT): tennenjl (Fri, 26 May 2017 11:36:42 GMT): Fanarito (Fri, 26 May 2017 12:31:31 GMT): jdockter (Fri, 26 May 2017 12:45:09 GMT): tennenjl (Fri, 26 May 2017 12:58:17 GMT): tennenjl (Fri, 26 May 2017 12:58:17 GMT): Fanarito (Fri, 26 May 2017 13:02:19 GMT): Fanarito (Fri, 26 May 2017 13:02:19 GMT): Fanarito (Fri, 26 May 2017 13:02:19 GMT): pmcosta1 (Fri, 26 May 2017 13:02:31 GMT): rfu2k (Fri, 26 May 2017 13:07:09 GMT): jdockter (Fri, 26 May 2017 13:17:19 GMT): rfu2k (Fri, 26 May 2017 13:23:06 GMT): rfu2k (Fri, 26 May 2017 13:23:06 GMT): rfu2k (Fri, 26 May 2017 13:23:06 GMT): dwakeman (Fri, 26 May 2017 13:24:50 GMT): jdockter (Fri, 26 May 2017 13:26:23 GMT): dwakeman (Fri, 26 May 2017 13:26:24 GMT): DennisM330 (Fri, 26 May 2017 13:54:48 GMT): tennenjl (Fri, 26 May 2017 14:01:25 GMT): davidkel (Fri, 26 May 2017 14:15:04 GMT): DennisM330 (Fri, 26 May 2017 14:17:57 GMT): DennisM330 (Fri, 26 May 2017 14:18:07 GMT): davidkel (Fri, 26 May 2017 14:22:20 GMT): dwakeman (Fri, 26 May 2017 14:25:35 GMT): DennisM330 (Fri, 26 May 2017 14:50:01 GMT): dwakeman (Fri, 26 May 2017 14:54:15 GMT): dwakeman (Fri, 26 May 2017 14:55:31 GMT): DennisM330 (Fri, 26 May 2017 15:04:24 GMT): tennenjl (Fri, 26 May 2017 15:30:19 GMT): rfu2k (Fri, 26 May 2017 15:36:13 GMT): tennenjl (Fri, 26 May 2017 15:37:44 GMT): rfu2k (Fri, 26 May 2017 15:39:14 GMT): rfu2k (Fri, 26 May 2017 15:39:14 GMT): rfu2k (Fri, 26 May 2017 15:39:14 GMT): DennisM330 (Fri, 26 May 2017 15:41:33 GMT): tennenjl (Fri, 26 May 2017 15:43:40 GMT): dwakeman (Fri, 26 May 2017 15:43:44 GMT): guyho (Fri, 26 May 2017 15:43:46 GMT): tennenjl (Fri, 26 May 2017 15:44:17 GMT): guyho (Fri, 26 May 2017 15:44:32 GMT): tennenjl (Fri, 26 May 2017 15:44:50 GMT): DennisM330 (Fri, 26 May 2017 15:45:02 GMT): guyho (Fri, 26 May 2017 15:45:35 GMT): rfu2k (Fri, 26 May 2017 15:46:32 GMT): dwakeman (Fri, 26 May 2017 15:46:33 GMT): rfu2k (Fri, 26 May 2017 15:47:37 GMT): rfu2k (Fri, 26 May 2017 15:47:37 GMT): jdockter (Fri, 26 May 2017 15:49:22 GMT): tennenjl (Fri, 26 May 2017 15:49:48 GMT): DennisM330 (Fri, 26 May 2017 15:50:22 GMT): guyho (Fri, 26 May 2017 15:50:38 GMT): rfu2k (Fri, 26 May 2017 15:51:34 GMT): tennenjl (Fri, 26 May 2017 15:51:48 GMT): dwakeman (Fri, 26 May 2017 15:52:18 GMT): dwakeman (Fri, 26 May 2017 15:52:18 GMT): dwakeman (Fri, 26 May 2017 15:52:55 GMT): rfu2k (Fri, 26 May 2017 15:57:39 GMT): rfu2k (Fri, 26 May 2017 16:29:48 GMT): rfu2k (Fri, 26 May 2017 16:29:48 GMT): rfu2k (Fri, 26 May 2017 16:29:48 GMT): rfu2k (Fri, 26 May 2017 16:29:48 GMT): sachikoy (Fri, 26 May 2017 16:48:53 GMT): sstone1 (Fri, 26 May 2017 17:16:56 GMT): sstone1 (Fri, 26 May 2017 17:17:45 GMT): sstone1 (Fri, 26 May 2017 17:22:32 GMT): sstone1 (Fri, 26 May 2017 17:23:34 GMT): dwakeman (Fri, 26 May 2017 17:23:42 GMT): dwakeman (Fri, 26 May 2017 17:23:54 GMT): sstone1 (Fri, 26 May 2017 17:24:35 GMT): dwakeman (Fri, 26 May 2017 17:25:32 GMT): sstone1 (Fri, 26 May 2017 17:25:35 GMT): dwakeman (Fri, 26 May 2017 17:26:24 GMT): dwakeman (Fri, 26 May 2017 17:26:24 GMT): sstone1 (Fri, 26 May 2017 17:27:34 GMT): sstone1 (Fri, 26 May 2017 17:28:27 GMT): dwakeman (Fri, 26 May 2017 17:30:26 GMT): sstone1 (Fri, 26 May 2017 17:32:09 GMT): dwakeman (Fri, 26 May 2017 17:32:22 GMT): vinitesh (Fri, 26 May 2017 17:35:44 GMT): vinitesh (Fri, 26 May 2017 17:35:44 GMT): vinitesh (Fri, 26 May 2017 17:35:44 GMT): jdockter (Fri, 26 May 2017 17:43:29 GMT): jdockter (Fri, 26 May 2017 17:44:53 GMT): vinitesh (Fri, 26 May 2017 17:45:09 GMT): jdockter (Fri, 26 May 2017 18:00:41 GMT): jdockter (Fri, 26 May 2017 18:00:41 GMT): jdockter (Fri, 26 May 2017 18:00:50 GMT): jdockter (Fri, 26 May 2017 18:00:59 GMT): uchi (Fri, 26 May 2017 18:01:03 GMT): jdockter (Fri, 26 May 2017 18:01:06 GMT): dselman (Fri, 26 May 2017 18:01:44 GMT): dselman (Fri, 26 May 2017 18:02:38 GMT): uchi (Fri, 26 May 2017 18:04:50 GMT): dselman (Fri, 26 May 2017 18:05:55 GMT): uchi (Fri, 26 May 2017 18:08:53 GMT): dselman (Fri, 26 May 2017 18:09:46 GMT): dselman (Fri, 26 May 2017 18:09:54 GMT): dselman (Fri, 26 May 2017 18:10:36 GMT): uchi (Fri, 26 May 2017 18:12:01 GMT): dselman (Fri, 26 May 2017 18:12:52 GMT): uchi (Fri, 26 May 2017 18:14:49 GMT): dselman (Fri, 26 May 2017 18:16:44 GMT): dselman (Fri, 26 May 2017 18:17:25 GMT): dselman (Fri, 26 May 2017 18:18:23 GMT): uchi (Fri, 26 May 2017 18:20:11 GMT): dselman (Fri, 26 May 2017 18:22:35 GMT): dselman (Fri, 26 May 2017 18:22:42 GMT): uchi (Fri, 26 May 2017 18:26:52 GMT): mihaig (Fri, 26 May 2017 18:32:49 GMT): uchi (Fri, 26 May 2017 18:33:27 GMT): rfu2k (Fri, 26 May 2017 18:46:52 GMT): rfu2k (Fri, 26 May 2017 18:46:52 GMT): rfu2k (Fri, 26 May 2017 18:46:52 GMT): rfu2k (Fri, 26 May 2017 18:51:50 GMT): uchi (Fri, 26 May 2017 18:52:17 GMT): rfu2k (Fri, 26 May 2017 18:53:30 GMT): uchi (Fri, 26 May 2017 18:56:43 GMT): uchi (Fri, 26 May 2017 18:56:43 GMT): dselman (Fri, 26 May 2017 18:58:26 GMT): dselman (Fri, 26 May 2017 18:58:38 GMT): dselman (Fri, 26 May 2017 19:00:28 GMT): dselman (Fri, 26 May 2017 19:03:25 GMT): dwakeman (Fri, 26 May 2017 19:07:07 GMT): dwakeman (Fri, 26 May 2017 19:09:06 GMT): dwakeman (Fri, 26 May 2017 19:10:44 GMT): dselman (Fri, 26 May 2017 19:12:38 GMT): dwakeman (Fri, 26 May 2017 19:13:17 GMT): dselman (Fri, 26 May 2017 19:13:45 GMT): dselman (Fri, 26 May 2017 19:13:54 GMT): dselman (Fri, 26 May 2017 19:14:55 GMT): uchi (Fri, 26 May 2017 19:15:24 GMT): uchi (Fri, 26 May 2017 19:15:24 GMT): dselman (Fri, 26 May 2017 19:15:35 GMT): dwakeman (Fri, 26 May 2017 19:16:58 GMT): uchi (Fri, 26 May 2017 19:38:48 GMT): guyho (Fri, 26 May 2017 20:23:50 GMT): sstone1 (Fri, 26 May 2017 21:22:18 GMT): RameshKunhiraman (Sat, 27 May 2017 03:13:25 GMT): RameshKunhiraman (Sat, 27 May 2017 03:15:31 GMT): RameshKunhiraman (Sat, 27 May 2017 03:15:31 GMT): davidkel (Sat, 27 May 2017 08:12:59 GMT): SahilKapoor (Sat, 27 May 2017 11:21:04 GMT): SahilKapoor (Sat, 27 May 2017 11:21:04 GMT): sstone1 (Sat, 27 May 2017 11:40:55 GMT): sstone1 (Sat, 27 May 2017 11:41:22 GMT): sstone1 (Sat, 27 May 2017 11:43:21 GMT): davidoevans (Sat, 27 May 2017 12:35:20 GMT): sstone1 (Sat, 27 May 2017 12:49:51 GMT): davidoevans (Sat, 27 May 2017 12:53:07 GMT): davidoevans (Sat, 27 May 2017 12:53:40 GMT): sstone1 (Sat, 27 May 2017 12:54:02 GMT): davidoevans (Sat, 27 May 2017 12:54:27 GMT): davidoevans (Sat, 27 May 2017 12:54:47 GMT): davidoevans (Sat, 27 May 2017 12:55:37 GMT): davidoevans (Sat, 27 May 2017 12:55:48 GMT): sstone1 (Sat, 27 May 2017 12:55:50 GMT): davidoevans (Sat, 27 May 2017 13:01:48 GMT): sstone1 (Sat, 27 May 2017 13:03:14 GMT): davidoevans (Sat, 27 May 2017 13:05:28 GMT): sstone1 (Sat, 27 May 2017 13:07:41 GMT): sstone1 (Sat, 27 May 2017 13:09:04 GMT): sstone1 (Sat, 27 May 2017 13:09:16 GMT): davidoevans (Sat, 27 May 2017 13:10:19 GMT): davidoevans (Sat, 27 May 2017 13:10:58 GMT): sstone1 (Sat, 27 May 2017 13:12:30 GMT): sstone1 (Sat, 27 May 2017 13:12:38 GMT): sstone1 (Sat, 27 May 2017 13:12:56 GMT): sstone1 (Sat, 27 May 2017 13:13:11 GMT): sstone1 (Sat, 27 May 2017 13:13:35 GMT): davidoevans (Sat, 27 May 2017 13:14:22 GMT): sstone1 (Sat, 27 May 2017 13:14:25 GMT): davidkel (Sat, 27 May 2017 13:51:51 GMT): davidoevans (Sat, 27 May 2017 14:14:54 GMT): sstone1 (Sat, 27 May 2017 14:34:17 GMT): StephaneMery (Sat, 27 May 2017 16:26:50 GMT): rfu2k (Sat, 27 May 2017 17:46:29 GMT): rfu2k (Sat, 27 May 2017 17:46:29 GMT): rfu2k (Sat, 27 May 2017 17:46:29 GMT): rfu2k (Sat, 27 May 2017 18:05:25 GMT): rfu2k (Sat, 27 May 2017 18:05:25 GMT): sstone1 (Sat, 27 May 2017 18:12:17 GMT): sstone1 (Sat, 27 May 2017 18:12:59 GMT): sstone1 (Sat, 27 May 2017 18:13:49 GMT): dklesev (Sat, 27 May 2017 19:32:32 GMT): sstone1 (Sat, 27 May 2017 19:37:51 GMT): sstone1 (Sat, 27 May 2017 19:38:08 GMT): dklesev (Sat, 27 May 2017 20:04:16 GMT): davidoevans (Sat, 27 May 2017 21:40:30 GMT): jdockter (Sat, 27 May 2017 23:56:33 GMT): dklesev (Sun, 28 May 2017 00:29:24 GMT): dklesev (Sun, 28 May 2017 00:30:15 GMT): dklesev (Sun, 28 May 2017 00:49:26 GMT): davidoevans (Sun, 28 May 2017 12:18:44 GMT): davidoevans (Sun, 28 May 2017 12:26:56 GMT): davidkel (Sun, 28 May 2017 12:44:14 GMT): davidkel (Sun, 28 May 2017 12:44:14 GMT): davidoevans (Sun, 28 May 2017 12:51:16 GMT): bejavu (Sun, 28 May 2017 13:39:39 GMT): bejavu (Sun, 28 May 2017 13:41:18 GMT): bejavu (Sun, 28 May 2017 13:42:16 GMT): davidkel (Sun, 28 May 2017 14:36:52 GMT): bejavu (Sun, 28 May 2017 14:52:00 GMT): bejavu (Sun, 28 May 2017 14:52:31 GMT): bejavu (Sun, 28 May 2017 14:53:13 GMT): bejavu (Sun, 28 May 2017 14:53:43 GMT): compleatang (Sun, 28 May 2017 16:43:56 GMT): davidkel (Sun, 28 May 2017 18:41:39 GMT): davidkel (Sun, 28 May 2017 18:41:39 GMT): dstarina (Sun, 28 May 2017 19:42:46 GMT): dstarina (Sun, 28 May 2017 19:42:46 GMT): dstarina (Sun, 28 May 2017 19:42:46 GMT): dstarina (Sun, 28 May 2017 19:42:46 GMT): dstarina (Sun, 28 May 2017 19:42:46 GMT): dstarina (Sun, 28 May 2017 19:42:46 GMT): sstone1 (Sun, 28 May 2017 20:02:59 GMT): sstone1 (Sun, 28 May 2017 20:04:44 GMT): dstarina (Sun, 28 May 2017 20:11:19 GMT): sstone1 (Sun, 28 May 2017 20:11:31 GMT): sstone1 (Sun, 28 May 2017 20:11:41 GMT): dstarina (Sun, 28 May 2017 20:14:08 GMT): sstone1 (Sun, 28 May 2017 20:15:28 GMT): sstone1 (Sun, 28 May 2017 20:15:38 GMT): dstarina (Sun, 28 May 2017 20:17:16 GMT): sstone1 (Sun, 28 May 2017 20:20:27 GMT): greg2git (Mon, 29 May 2017 00:07:26 GMT): sstone1 (Mon, 29 May 2017 00:56:45 GMT): sstone1 (Mon, 29 May 2017 00:56:53 GMT): sstone1 (Mon, 29 May 2017 00:57:06 GMT): naolduga (Mon, 29 May 2017 01:37:20 GMT): bejavu (Mon, 29 May 2017 07:05:50 GMT): bejavu (Mon, 29 May 2017 07:05:50 GMT): bejavu (Mon, 29 May 2017 07:08:17 GMT): bejavu (Mon, 29 May 2017 07:08:41 GMT): davidkel (Mon, 29 May 2017 07:23:52 GMT): guruce (Mon, 29 May 2017 07:24:30 GMT): bejavu (Mon, 29 May 2017 07:53:50 GMT): Dpkkmr (Mon, 29 May 2017 07:57:12 GMT): Dpkkmr (Mon, 29 May 2017 07:58:18 GMT): Dpkkmr (Mon, 29 May 2017 07:58:18 GMT): davidkel (Mon, 29 May 2017 08:07:13 GMT): davidkel (Mon, 29 May 2017 08:10:01 GMT): davidkel (Mon, 29 May 2017 08:12:36 GMT): FelixNielsen (Mon, 29 May 2017 08:16:34 GMT): bejavu (Mon, 29 May 2017 08:30:01 GMT): rfu2k (Mon, 29 May 2017 08:34:07 GMT): FelixNielsen (Mon, 29 May 2017 08:41:34 GMT): deepakvparmar (Mon, 29 May 2017 09:03:24 GMT): deepakvparmar (Mon, 29 May 2017 09:04:23 GMT): davidkel (Mon, 29 May 2017 09:06:32 GMT): davidkel (Mon, 29 May 2017 09:09:41 GMT): davidkel (Mon, 29 May 2017 09:12:03 GMT): davidkel (Mon, 29 May 2017 09:16:45 GMT): deepakvparmar (Mon, 29 May 2017 09:29:39 GMT): deepakvparmar (Mon, 29 May 2017 09:30:21 GMT): davidkel (Mon, 29 May 2017 09:31:55 GMT): rfu2k (Mon, 29 May 2017 09:31:56 GMT): rfu2k (Mon, 29 May 2017 09:31:56 GMT): deepakvparmar (Mon, 29 May 2017 09:34:55 GMT): davidkel (Mon, 29 May 2017 09:36:55 GMT): rfu2k (Mon, 29 May 2017 09:38:00 GMT): rfu2k (Mon, 29 May 2017 09:38:00 GMT): davidkel (Mon, 29 May 2017 09:40:13 GMT): deepakvparmar (Mon, 29 May 2017 09:49:30 GMT): davidkel (Mon, 29 May 2017 09:59:50 GMT): davidkel (Mon, 29 May 2017 09:59:50 GMT): deepakvparmar (Mon, 29 May 2017 10:03:12 GMT): StephaneMery (Mon, 29 May 2017 10:12:44 GMT): rfu2k (Mon, 29 May 2017 10:21:21 GMT): rfu2k (Mon, 29 May 2017 10:21:21 GMT): rfu2k (Mon, 29 May 2017 10:21:21 GMT): rfu2k (Mon, 29 May 2017 10:21:21 GMT): rfu2k (Mon, 29 May 2017 10:21:21 GMT): Dpkkmr (Mon, 29 May 2017 10:23:03 GMT): rfu2k (Mon, 29 May 2017 10:26:50 GMT): rfu2k (Mon, 29 May 2017 10:26:50 GMT): davidkel (Mon, 29 May 2017 10:31:51 GMT): davidkel (Mon, 29 May 2017 10:34:43 GMT): rfu2k (Mon, 29 May 2017 10:45:12 GMT): rfu2k (Mon, 29 May 2017 10:45:12 GMT): rfu2k (Mon, 29 May 2017 10:48:25 GMT): davidkel (Mon, 29 May 2017 10:50:48 GMT): rfu2k (Mon, 29 May 2017 10:52:06 GMT): Fanarito (Mon, 29 May 2017 10:55:57 GMT): rfu2k (Mon, 29 May 2017 10:57:18 GMT): rfu2k (Mon, 29 May 2017 10:57:18 GMT): rfu2k (Mon, 29 May 2017 10:57:18 GMT): rfu2k (Mon, 29 May 2017 10:57:18 GMT): Fanarito (Mon, 29 May 2017 11:00:01 GMT): Fanarito (Mon, 29 May 2017 11:00:18 GMT): Fanarito (Mon, 29 May 2017 11:00:18 GMT): rfu2k (Mon, 29 May 2017 11:04:53 GMT): rfu2k (Mon, 29 May 2017 11:04:53 GMT): Fanarito (Mon, 29 May 2017 11:08:43 GMT): Fanarito (Mon, 29 May 2017 11:08:43 GMT): Fanarito (Mon, 29 May 2017 12:17:54 GMT): davidoevans (Mon, 29 May 2017 14:38:07 GMT): davidoevans (Mon, 29 May 2017 14:42:07 GMT): sstone1 (Mon, 29 May 2017 14:42:52 GMT): davidoevans (Mon, 29 May 2017 14:43:14 GMT): sstone1 (Mon, 29 May 2017 14:44:38 GMT): sstone1 (Mon, 29 May 2017 14:45:14 GMT): davidoevans (Mon, 29 May 2017 14:47:58 GMT): davidoevans (Mon, 29 May 2017 14:48:44 GMT): sstone1 (Mon, 29 May 2017 14:49:00 GMT): sstone1 (Mon, 29 May 2017 14:49:16 GMT): bejavu (Mon, 29 May 2017 14:49:51 GMT): Fanarito (Mon, 29 May 2017 15:21:36 GMT): prashiyn (Tue, 30 May 2017 04:38:50 GMT): karthikworks (Tue, 30 May 2017 05:15:44 GMT): karthikworks (Tue, 30 May 2017 05:16:26 GMT): karthikworks (Tue, 30 May 2017 05:17:40 GMT): karthikworks (Tue, 30 May 2017 05:17:42 GMT): sstone1 (Tue, 30 May 2017 05:18:41 GMT): sstone1 (Tue, 30 May 2017 05:18:52 GMT): karthikworks (Tue, 30 May 2017 05:21:02 GMT): karthikworks (Tue, 30 May 2017 05:21:12 GMT): karthikworks (Tue, 30 May 2017 05:21:22 GMT): karthikworks (Tue, 30 May 2017 05:21:44 GMT): sstone1 (Tue, 30 May 2017 05:21:52 GMT): sstone1 (Tue, 30 May 2017 05:22:15 GMT): sstone1 (Tue, 30 May 2017 05:22:26 GMT): karthikworks (Tue, 30 May 2017 05:23:04 GMT): alfa (Tue, 30 May 2017 06:01:14 GMT): alfa (Tue, 30 May 2017 06:01:20 GMT): deepakvparmar (Tue, 30 May 2017 06:05:34 GMT): deepakvparmar (Tue, 30 May 2017 06:06:11 GMT): deepakvparmar (Tue, 30 May 2017 06:07:13 GMT): abcoathup (Tue, 30 May 2017 06:11:32 GMT): Dpkkmr (Tue, 30 May 2017 06:14:43 GMT): sstone1 (Tue, 30 May 2017 06:19:15 GMT): sstone1 (Tue, 30 May 2017 06:20:10 GMT): deepakvparmar (Tue, 30 May 2017 06:23:36 GMT): sstone1 (Tue, 30 May 2017 06:23:53 GMT): sstone1 (Tue, 30 May 2017 06:25:01 GMT): deepakvparmar (Tue, 30 May 2017 06:27:13 GMT): sstone1 (Tue, 30 May 2017 06:29:22 GMT): sstone1 (Tue, 30 May 2017 06:29:35 GMT): sstone1 (Tue, 30 May 2017 06:29:57 GMT): deepakvparmar (Tue, 30 May 2017 06:30:14 GMT): sstone1 (Tue, 30 May 2017 06:30:56 GMT): sstone1 (Tue, 30 May 2017 06:31:05 GMT): deepakvparmar (Tue, 30 May 2017 06:32:02 GMT): sstone1 (Tue, 30 May 2017 06:32:13 GMT): sstone1 (Tue, 30 May 2017 06:32:15 GMT): sstone1 (Tue, 30 May 2017 06:32:30 GMT): alfa (Tue, 30 May 2017 06:36:02 GMT): deepakvparmar (Tue, 30 May 2017 06:36:17 GMT): sstone1 (Tue, 30 May 2017 06:37:46 GMT): SanketPanchamia (Tue, 30 May 2017 06:40:26 GMT): alfa (Tue, 30 May 2017 06:40:59 GMT): sstone1 (Tue, 30 May 2017 06:41:45 GMT): sstone1 (Tue, 30 May 2017 06:42:37 GMT): SanketPanchamia (Tue, 30 May 2017 06:44:25 GMT): sstone1 (Tue, 30 May 2017 06:44:44 GMT): sstone1 (Tue, 30 May 2017 06:44:59 GMT): sstone1 (Tue, 30 May 2017 06:45:08 GMT): SanketPanchamia (Tue, 30 May 2017 06:45:13 GMT): SanketPanchamia (Tue, 30 May 2017 06:46:14 GMT): sstone1 (Tue, 30 May 2017 06:48:44 GMT): sstone1 (Tue, 30 May 2017 06:48:54 GMT): abcoathup (Tue, 30 May 2017 07:26:04 GMT): sstone1 (Tue, 30 May 2017 07:46:11 GMT): sstone1 (Tue, 30 May 2017 07:46:32 GMT): sstone1 (Tue, 30 May 2017 07:46:53 GMT): davidkel (Tue, 30 May 2017 08:09:24 GMT): FelixNielsen (Tue, 30 May 2017 08:20:21 GMT): karthikworks (Tue, 30 May 2017 08:43:17 GMT): karthikworks (Tue, 30 May 2017 08:43:32 GMT): karthikworks (Tue, 30 May 2017 08:43:40 GMT): sstone1 (Tue, 30 May 2017 08:44:30 GMT): karthikworks (Tue, 30 May 2017 08:46:28 GMT): karthikworks (Tue, 30 May 2017 09:04:25 GMT): karthikworks (Tue, 30 May 2017 09:05:18 GMT): SanketPanchamia (Tue, 30 May 2017 09:09:18 GMT): sstone1 (Tue, 30 May 2017 09:16:51 GMT): karthikworks (Tue, 30 May 2017 09:17:02 GMT): karthikworks (Tue, 30 May 2017 09:17:24 GMT): karthikworks (Tue, 30 May 2017 09:17:59 GMT): JeffGutierrez (Tue, 30 May 2017 09:44:31 GMT): JeffGutierrez (Tue, 30 May 2017 09:46:22 GMT): JeffGutierrez (Tue, 30 May 2017 09:47:45 GMT): LiefSonsona (Tue, 30 May 2017 09:57:29 GMT): karthikworks (Tue, 30 May 2017 10:19:45 GMT): SanketPanchamia (Tue, 30 May 2017 10:38:40 GMT): SanketPanchamia (Tue, 30 May 2017 10:38:44 GMT): hariharanatarajan (Tue, 30 May 2017 10:40:03 GMT): hariharanatarajan (Tue, 30 May 2017 10:45:34 GMT): hariharanatarajan (Tue, 30 May 2017 10:45:52 GMT): Fanarito (Tue, 30 May 2017 10:51:42 GMT): Fanarito (Tue, 30 May 2017 10:51:42 GMT): Fanarito (Tue, 30 May 2017 10:53:29 GMT): Fanarito (Tue, 30 May 2017 10:53:39 GMT): Ainsight (Tue, 30 May 2017 11:02:58 GMT): rama_rahul (Tue, 30 May 2017 11:10:37 GMT): rama_rahul (Tue, 30 May 2017 11:11:48 GMT): rama_rahul (Tue, 30 May 2017 11:12:26 GMT): Fanarito (Tue, 30 May 2017 11:15:35 GMT): rama_rahul (Tue, 30 May 2017 11:16:04 GMT): Fanarito (Tue, 30 May 2017 11:16:15 GMT): Fanarito (Tue, 30 May 2017 11:16:19 GMT): rama_rahul (Tue, 30 May 2017 11:18:23 GMT): davidkel (Tue, 30 May 2017 11:18:57 GMT): GOWDHAMAN (Tue, 30 May 2017 11:20:04 GMT): clueless99 (Tue, 30 May 2017 11:21:41 GMT): rama_rahul (Tue, 30 May 2017 11:23:46 GMT): clueless99 (Tue, 30 May 2017 11:23:51 GMT): Fanarito (Tue, 30 May 2017 11:27:37 GMT): Fanarito (Tue, 30 May 2017 11:28:40 GMT): rama_rahul (Tue, 30 May 2017 11:29:11 GMT): rama_rahul (Tue, 30 May 2017 11:29:50 GMT): rama_rahul (Tue, 30 May 2017 11:30:53 GMT): Fanarito (Tue, 30 May 2017 11:37:07 GMT): vivekraut (Tue, 30 May 2017 11:43:51 GMT): vivekraut (Tue, 30 May 2017 11:44:17 GMT): clueless99 (Tue, 30 May 2017 11:44:31 GMT): clueless99 (Tue, 30 May 2017 11:46:24 GMT): clueless99 (Tue, 30 May 2017 11:46:24 GMT): dselman (Tue, 30 May 2017 12:06:20 GMT): clueless99 (Tue, 30 May 2017 12:07:03 GMT): clueless99 (Tue, 30 May 2017 12:08:13 GMT): rfu2k (Tue, 30 May 2017 12:11:58 GMT): rfu2k (Tue, 30 May 2017 12:11:58 GMT): rfu2k (Tue, 30 May 2017 12:11:58 GMT): rfu2k (Tue, 30 May 2017 12:11:58 GMT): rfu2k (Tue, 30 May 2017 12:11:58 GMT): rfu2k (Tue, 30 May 2017 12:11:58 GMT): Fanarito (Tue, 30 May 2017 12:26:13 GMT): davidkel (Tue, 30 May 2017 12:43:08 GMT): rfu2k (Tue, 30 May 2017 12:44:33 GMT): rfu2k (Tue, 30 May 2017 12:44:33 GMT): rfu2k (Tue, 30 May 2017 12:44:33 GMT): alfa (Tue, 30 May 2017 12:50:33 GMT): alfa (Tue, 30 May 2017 12:55:51 GMT): Fanarito (Tue, 30 May 2017 12:57:37 GMT): alfa (Tue, 30 May 2017 12:59:14 GMT): alfa (Tue, 30 May 2017 13:01:37 GMT): Fanarito (Tue, 30 May 2017 13:03:49 GMT): Fanarito (Tue, 30 May 2017 13:04:00 GMT): alfa (Tue, 30 May 2017 13:05:10 GMT): Fanarito (Tue, 30 May 2017 13:05:33 GMT): Fanarito (Tue, 30 May 2017 13:06:30 GMT): Fanarito (Tue, 30 May 2017 13:06:30 GMT): guyho (Tue, 30 May 2017 13:09:09 GMT): guyho (Tue, 30 May 2017 13:09:09 GMT): alfa (Tue, 30 May 2017 13:13:32 GMT): Fanarito (Tue, 30 May 2017 13:16:16 GMT): Fanarito (Tue, 30 May 2017 13:16:16 GMT): Fanarito (Tue, 30 May 2017 13:19:09 GMT): davidkel (Tue, 30 May 2017 13:20:15 GMT): mgk (Tue, 30 May 2017 13:23:27 GMT): dselman (Tue, 30 May 2017 13:26:48 GMT): jdockter (Tue, 30 May 2017 13:30:14 GMT): mgk (Tue, 30 May 2017 13:38:18 GMT): Fanarito (Tue, 30 May 2017 13:58:50 GMT): RaghavendraKS (Tue, 30 May 2017 14:18:19 GMT): clueless99 (Tue, 30 May 2017 14:30:03 GMT): clueless99 (Tue, 30 May 2017 14:30:03 GMT): davidkel (Tue, 30 May 2017 15:16:10 GMT): AccentSandy (Tue, 30 May 2017 15:16:39 GMT): dselman (Tue, 30 May 2017 15:20:39 GMT): AccentSandy (Tue, 30 May 2017 15:21:23 GMT): dselman (Tue, 30 May 2017 15:22:17 GMT): clueless99 (Tue, 30 May 2017 15:25:33 GMT): clueless99 (Tue, 30 May 2017 15:31:26 GMT): clueless99 (Tue, 30 May 2017 15:31:26 GMT): clueless99 (Tue, 30 May 2017 15:31:26 GMT): dklesev (Tue, 30 May 2017 15:33:35 GMT): dklesev (Tue, 30 May 2017 15:33:35 GMT): dklesev (Tue, 30 May 2017 15:33:35 GMT): dklesev (Tue, 30 May 2017 15:33:35 GMT): dklesev (Tue, 30 May 2017 15:33:35 GMT): davidkel (Tue, 30 May 2017 15:38:06 GMT): dklesev (Tue, 30 May 2017 15:39:40 GMT): dklesev (Tue, 30 May 2017 15:40:52 GMT): dklesev (Tue, 30 May 2017 15:40:55 GMT): dklesev (Tue, 30 May 2017 15:59:12 GMT): dklesev (Tue, 30 May 2017 16:01:04 GMT): mohamoud.egal (Tue, 30 May 2017 16:22:18 GMT): mohamoud.egal (Tue, 30 May 2017 16:22:32 GMT): mohamoud.egal (Tue, 30 May 2017 16:22:49 GMT): dwakeman (Tue, 30 May 2017 16:44:02 GMT): dklesev (Tue, 30 May 2017 16:51:08 GMT): DennisM330 (Tue, 30 May 2017 17:11:14 GMT): dklesev (Tue, 30 May 2017 17:36:08 GMT): dklesev (Tue, 30 May 2017 17:36:08 GMT): DennisM330 (Tue, 30 May 2017 18:37:18 GMT): dselman (Tue, 30 May 2017 18:45:24 GMT): dselman (Tue, 30 May 2017 18:45:50 GMT): dselman (Tue, 30 May 2017 18:46:02 GMT): dklesev (Tue, 30 May 2017 18:52:49 GMT): dselman (Tue, 30 May 2017 19:04:13 GMT): dselman (Tue, 30 May 2017 19:04:50 GMT): sstone1 (Tue, 30 May 2017 19:05:36 GMT): DennisM330 (Tue, 30 May 2017 19:11:16 GMT): dselman (Tue, 30 May 2017 19:18:08 GMT): davidoevans (Tue, 30 May 2017 20:27:09 GMT): sstone1 (Tue, 30 May 2017 20:33:49 GMT): sstone1 (Tue, 30 May 2017 20:33:55 GMT): sstone1 (Tue, 30 May 2017 20:33:58 GMT): sstone1 (Tue, 30 May 2017 20:51:28 GMT): jdockter (Tue, 30 May 2017 20:56:44 GMT): jdockter (Tue, 30 May 2017 20:57:18 GMT): sstone1 (Tue, 30 May 2017 20:57:28 GMT): jdockter (Tue, 30 May 2017 20:57:39 GMT): jdockter (Tue, 30 May 2017 20:57:43 GMT): sstone1 (Tue, 30 May 2017 20:57:53 GMT): sstone1 (Tue, 30 May 2017 20:58:03 GMT): jdockter (Tue, 30 May 2017 20:59:52 GMT): sstone1 (Tue, 30 May 2017 21:00:35 GMT): jdockter (Tue, 30 May 2017 21:03:50 GMT): jdockter (Tue, 30 May 2017 21:04:56 GMT): sstone1 (Tue, 30 May 2017 21:05:36 GMT): jdockter (Tue, 30 May 2017 21:07:35 GMT): jdockter (Tue, 30 May 2017 21:08:11 GMT): sstone1 (Tue, 30 May 2017 21:10:51 GMT): sstone1 (Tue, 30 May 2017 21:11:04 GMT): sstone1 (Tue, 30 May 2017 21:11:50 GMT): jdockter (Tue, 30 May 2017 21:13:29 GMT): sstone1 (Tue, 30 May 2017 21:15:56 GMT): jdockter (Tue, 30 May 2017 21:16:57 GMT): sstone1 (Tue, 30 May 2017 21:18:41 GMT): jdockter (Tue, 30 May 2017 21:19:02 GMT): jdockter (Tue, 30 May 2017 21:21:25 GMT): sstone1 (Tue, 30 May 2017 21:21:41 GMT): sstone1 (Tue, 30 May 2017 21:21:59 GMT): jdockter (Tue, 30 May 2017 21:23:16 GMT): sstone1 (Tue, 30 May 2017 21:23:59 GMT): sstone1 (Tue, 30 May 2017 21:24:27 GMT): sstone1 (Tue, 30 May 2017 21:24:46 GMT): sstone1 (Tue, 30 May 2017 21:24:53 GMT): jdockter (Tue, 30 May 2017 21:25:27 GMT): jdockter (Tue, 30 May 2017 21:26:08 GMT): jdockter (Tue, 30 May 2017 21:26:46 GMT): jdockter (Tue, 30 May 2017 21:35:00 GMT): dselman (Tue, 30 May 2017 21:43:25 GMT): jdockter (Tue, 30 May 2017 21:44:12 GMT): dselman (Tue, 30 May 2017 21:44:21 GMT): dselman (Tue, 30 May 2017 21:45:02 GMT): dselman (Tue, 30 May 2017 21:45:43 GMT): dselman (Tue, 30 May 2017 21:46:37 GMT): jdockter (Tue, 30 May 2017 22:00:33 GMT): dselman (Tue, 30 May 2017 22:01:39 GMT): jdockter (Tue, 30 May 2017 22:01:56 GMT): dselman (Tue, 30 May 2017 22:02:03 GMT): dselman (Tue, 30 May 2017 22:02:10 GMT): dselman (Tue, 30 May 2017 22:02:24 GMT): jdockter (Tue, 30 May 2017 22:03:00 GMT): dselman (Tue, 30 May 2017 22:04:02 GMT): dselman (Tue, 30 May 2017 22:04:19 GMT): dselman (Tue, 30 May 2017 22:05:25 GMT): dselman (Tue, 30 May 2017 22:05:33 GMT): sstone1 (Tue, 30 May 2017 22:06:43 GMT): sstone1 (Tue, 30 May 2017 22:06:58 GMT): dselman (Tue, 30 May 2017 22:25:28 GMT): dklesev (Tue, 30 May 2017 22:51:36 GMT): dklesev (Tue, 30 May 2017 22:51:36 GMT): dklesev (Tue, 30 May 2017 22:51:36 GMT): dselman (Tue, 30 May 2017 23:10:31 GMT): dselman (Tue, 30 May 2017 23:10:40 GMT): dselman (Tue, 30 May 2017 23:10:56 GMT): dklesev (Tue, 30 May 2017 23:12:24 GMT): dklesev (Tue, 30 May 2017 23:12:27 GMT): rfu2k (Tue, 30 May 2017 23:16:46 GMT): rfu2k (Tue, 30 May 2017 23:16:46 GMT): rfu2k (Tue, 30 May 2017 23:16:46 GMT): tylerdmace (Wed, 31 May 2017 02:34:41 GMT): vurumadla (Wed, 31 May 2017 05:17:37 GMT): rama_rahul (Wed, 31 May 2017 05:31:25 GMT): karthikworks (Wed, 31 May 2017 06:27:57 GMT): alfa (Wed, 31 May 2017 07:20:16 GMT): davidkel (Wed, 31 May 2017 07:23:33 GMT): davidkel (Wed, 31 May 2017 07:29:10 GMT): davidkel (Wed, 31 May 2017 07:29:10 GMT): alfa (Wed, 31 May 2017 07:33:54 GMT): davidkel (Wed, 31 May 2017 07:36:09 GMT): alfa (Wed, 31 May 2017 07:40:10 GMT): davidkel (Wed, 31 May 2017 07:45:58 GMT): jordipainan (Wed, 31 May 2017 07:48:47 GMT): alfa (Wed, 31 May 2017 07:49:36 GMT): alfa (Wed, 31 May 2017 07:56:47 GMT): abcoathup (Wed, 31 May 2017 07:59:02 GMT): dstarina (Wed, 31 May 2017 08:15:04 GMT): vinitesh (Wed, 31 May 2017 08:28:30 GMT): JeffGutierrez (Wed, 31 May 2017 08:50:11 GMT): sstone1 (Wed, 31 May 2017 09:14:58 GMT): sstone1 (Wed, 31 May 2017 09:15:15 GMT): sstone1 (Wed, 31 May 2017 09:16:16 GMT): rama_rahul (Wed, 31 May 2017 09:16:33 GMT): rama_rahul (Wed, 31 May 2017 09:17:38 GMT): davidkel (Wed, 31 May 2017 09:19:40 GMT): JeffGutierrez (Wed, 31 May 2017 09:20:42 GMT): JeffGutierrez (Wed, 31 May 2017 09:31:13 GMT): vinitesh (Wed, 31 May 2017 09:42:08 GMT): AccentSandy (Wed, 31 May 2017 09:47:32 GMT): aeisma (Wed, 31 May 2017 09:49:23 GMT): davidkel (Wed, 31 May 2017 10:03:59 GMT): AccentSandy (Wed, 31 May 2017 10:11:36 GMT): davidkel (Wed, 31 May 2017 10:30:42 GMT): davidkel (Wed, 31 May 2017 10:32:09 GMT): davidkel (Wed, 31 May 2017 10:32:09 GMT): jordipainan (Wed, 31 May 2017 10:49:59 GMT): vinitesh (Wed, 31 May 2017 10:50:15 GMT): vinitesh (Wed, 31 May 2017 10:50:15 GMT): vinitesh (Wed, 31 May 2017 10:50:15 GMT): sstone1 (Wed, 31 May 2017 10:51:55 GMT): sstone1 (Wed, 31 May 2017 10:52:04 GMT): vinitesh (Wed, 31 May 2017 10:53:25 GMT): sstone1 (Wed, 31 May 2017 11:00:45 GMT): vinitesh (Wed, 31 May 2017 11:13:42 GMT): clueless99 (Wed, 31 May 2017 11:18:09 GMT): jexek (Wed, 31 May 2017 11:21:43 GMT): JennFoley (Wed, 31 May 2017 11:31:22 GMT): sstone1 (Wed, 31 May 2017 11:33:46 GMT): sstone1 (Wed, 31 May 2017 11:33:46 GMT): JennFoley (Wed, 31 May 2017 11:35:59 GMT): JennFoley (Wed, 31 May 2017 11:36:42 GMT): JennFoley (Wed, 31 May 2017 11:37:39 GMT): akshay111meher (Wed, 31 May 2017 11:39:19 GMT): akshay111meher (Wed, 31 May 2017 11:40:07 GMT): clueless99 (Wed, 31 May 2017 11:48:34 GMT): clueless99 (Wed, 31 May 2017 11:49:58 GMT): clueless99 (Wed, 31 May 2017 11:49:58 GMT): clueless99 (Wed, 31 May 2017 11:50:26 GMT): clueless99 (Wed, 31 May 2017 11:51:56 GMT): sstone1 (Wed, 31 May 2017 12:17:57 GMT): sstone1 (Wed, 31 May 2017 12:18:45 GMT): sstone1 (Wed, 31 May 2017 12:19:23 GMT): JennFoley (Wed, 31 May 2017 12:20:10 GMT): sstone1 (Wed, 31 May 2017 12:22:54 GMT): clueless99 (Wed, 31 May 2017 12:57:35 GMT): Fanarito (Wed, 31 May 2017 13:10:58 GMT): clueless99 (Wed, 31 May 2017 13:11:22 GMT): hariharanatarajan (Wed, 31 May 2017 13:19:58 GMT): sstone1 (Wed, 31 May 2017 13:20:47 GMT): sstone1 (Wed, 31 May 2017 13:21:28 GMT): sstone1 (Wed, 31 May 2017 13:22:11 GMT): hariharanatarajan (Wed, 31 May 2017 13:23:12 GMT): davidoevans (Wed, 31 May 2017 13:24:31 GMT): sstone1 (Wed, 31 May 2017 13:24:43 GMT): dwakeman (Wed, 31 May 2017 13:25:07 GMT): davidoevans (Wed, 31 May 2017 13:25:13 GMT): nickgaski (Wed, 31 May 2017 13:30:13 GMT): hariharanatarajan (Wed, 31 May 2017 13:49:42 GMT): clueless99 (Wed, 31 May 2017 13:53:11 GMT): clueless99 (Wed, 31 May 2017 13:53:11 GMT): AlexJYoungman (Wed, 31 May 2017 14:13:44 GMT): clueless99 (Wed, 31 May 2017 14:18:53 GMT): AccentSandy (Wed, 31 May 2017 14:18:58 GMT): davidoevans (Wed, 31 May 2017 14:53:53 GMT): davidoevans (Wed, 31 May 2017 15:03:00 GMT): davidkel (Wed, 31 May 2017 15:22:09 GMT): davidkel (Wed, 31 May 2017 15:33:06 GMT): clueless99 (Wed, 31 May 2017 15:34:48 GMT): Fanarito (Wed, 31 May 2017 15:40:07 GMT): clueless99 (Wed, 31 May 2017 15:41:46 GMT): clueless99 (Wed, 31 May 2017 15:41:46 GMT): Fanarito (Wed, 31 May 2017 15:43:20 GMT): Fanarito (Wed, 31 May 2017 15:44:18 GMT): clueless99 (Wed, 31 May 2017 15:45:21 GMT): Fanarito (Wed, 31 May 2017 15:45:57 GMT): clueless99 (Wed, 31 May 2017 15:46:17 GMT): clueless99 (Wed, 31 May 2017 15:46:29 GMT): clueless99 (Wed, 31 May 2017 15:47:01 GMT): clueless99 (Wed, 31 May 2017 15:48:44 GMT): Fanarito (Wed, 31 May 2017 15:53:13 GMT): Fanarito (Wed, 31 May 2017 15:55:01 GMT): clueless99 (Wed, 31 May 2017 15:57:46 GMT): dwakeman (Wed, 31 May 2017 16:14:37 GMT): dwakeman (Wed, 31 May 2017 16:14:37 GMT): dwakeman (Wed, 31 May 2017 16:14:47 GMT): dwakeman (Wed, 31 May 2017 16:15:43 GMT): arek20 (Wed, 31 May 2017 16:42:00 GMT): vinitesh (Wed, 31 May 2017 17:19:31 GMT): hariharanatarajan (Wed, 31 May 2017 17:24:03 GMT): sstone1 (Wed, 31 May 2017 17:42:31 GMT): jje (Wed, 31 May 2017 17:44:25 GMT): jje (Wed, 31 May 2017 17:49:08 GMT): vinitesh (Wed, 31 May 2017 18:21:10 GMT): davidkel (Wed, 31 May 2017 18:26:24 GMT): jje (Wed, 31 May 2017 18:32:03 GMT): dselman (Wed, 31 May 2017 19:02:11 GMT): dselman (Wed, 31 May 2017 19:04:53 GMT): jje (Wed, 31 May 2017 19:12:20 GMT): dselman (Wed, 31 May 2017 19:13:59 GMT): mohamoud.egal (Wed, 31 May 2017 20:29:55 GMT): davidkel (Wed, 31 May 2017 20:45:53 GMT): jje (Wed, 31 May 2017 20:48:27 GMT): davidkel (Wed, 31 May 2017 20:49:37 GMT): DennisM330 (Wed, 31 May 2017 22:39:02 GMT): DennisM330 (Wed, 31 May 2017 22:39:40 GMT): deepakvparmar (Thu, 01 Jun 2017 05:49:13 GMT): fennelD7 (Thu, 01 Jun 2017 06:30:16 GMT): sstone1 (Thu, 01 Jun 2017 06:34:28 GMT): sstone1 (Thu, 01 Jun 2017 06:36:53 GMT): jriachi (Thu, 01 Jun 2017 06:54:53 GMT): deepakvparmar (Thu, 01 Jun 2017 06:57:34 GMT): deepakvparmar (Thu, 01 Jun 2017 06:59:36 GMT): aeisma (Thu, 01 Jun 2017 07:01:19 GMT): aeisma (Thu, 01 Jun 2017 07:01:19 GMT): sstone1 (Thu, 01 Jun 2017 07:01:19 GMT): sstone1 (Thu, 01 Jun 2017 07:02:13 GMT): deepakvparmar (Thu, 01 Jun 2017 07:03:13 GMT): sstone1 (Thu, 01 Jun 2017 07:07:50 GMT): sstone1 (Thu, 01 Jun 2017 07:09:15 GMT): aeisma (Thu, 01 Jun 2017 07:19:47 GMT): sstone1 (Thu, 01 Jun 2017 07:22:09 GMT): FelixNielsen (Thu, 01 Jun 2017 08:13:44 GMT): FelixNielsen (Thu, 01 Jun 2017 08:13:59 GMT): dselman (Thu, 01 Jun 2017 08:28:21 GMT): FelixNielsen (Thu, 01 Jun 2017 08:29:52 GMT): FelixNielsen (Thu, 01 Jun 2017 08:51:34 GMT): dselman (Thu, 01 Jun 2017 08:52:45 GMT): dselman (Thu, 01 Jun 2017 08:53:16 GMT): FelixNielsen (Thu, 01 Jun 2017 08:53:30 GMT): dselman (Thu, 01 Jun 2017 08:54:29 GMT): FelixNielsen (Thu, 01 Jun 2017 08:55:32 GMT): dselman (Thu, 01 Jun 2017 08:56:29 GMT): dselman (Thu, 01 Jun 2017 08:57:18 GMT): FelixNielsen (Thu, 01 Jun 2017 08:57:38 GMT): FelixNielsen (Thu, 01 Jun 2017 08:57:51 GMT): aeisma (Thu, 01 Jun 2017 08:58:21 GMT): dselman (Thu, 01 Jun 2017 09:00:15 GMT): dselman (Thu, 01 Jun 2017 09:02:12 GMT): FelixNielsen (Thu, 01 Jun 2017 09:02:14 GMT): dselman (Thu, 01 Jun 2017 09:02:21 GMT): dselman (Thu, 01 Jun 2017 09:03:29 GMT): rfu2k (Thu, 01 Jun 2017 09:03:40 GMT): FelixNielsen (Thu, 01 Jun 2017 09:03:41 GMT): dselman (Thu, 01 Jun 2017 09:05:30 GMT): tarima (Thu, 01 Jun 2017 09:06:14 GMT): AccentSandy (Thu, 01 Jun 2017 09:10:31 GMT): AccentSandy (Thu, 01 Jun 2017 09:12:10 GMT): AccentSandy (Thu, 01 Jun 2017 09:12:10 GMT): dselman (Thu, 01 Jun 2017 09:12:51 GMT): dselman (Thu, 01 Jun 2017 09:13:14 GMT): xuzhao103389 (Thu, 01 Jun 2017 09:40:53 GMT): xuzhao103389 (Thu, 01 Jun 2017 09:41:09 GMT): xuzhao103389 (Thu, 01 Jun 2017 09:41:21 GMT): rfu2k (Thu, 01 Jun 2017 09:43:40 GMT): xuzhao103389 (Thu, 01 Jun 2017 09:45:08 GMT): xuzhao103389 (Thu, 01 Jun 2017 09:45:17 GMT): xuzhao103389 (Thu, 01 Jun 2017 09:46:50 GMT): rfu2k (Thu, 01 Jun 2017 09:47:22 GMT): xuzhao103389 (Thu, 01 Jun 2017 09:47:57 GMT): xuzhao103389 (Thu, 01 Jun 2017 09:48:03 GMT): rfu2k (Thu, 01 Jun 2017 09:48:44 GMT): rfu2k (Thu, 01 Jun 2017 09:48:44 GMT): rfu2k (Thu, 01 Jun 2017 09:48:44 GMT): rfu2k (Thu, 01 Jun 2017 09:48:44 GMT): xuzhao103389 (Thu, 01 Jun 2017 09:55:50 GMT): xuzhao103389 (Thu, 01 Jun 2017 10:06:55 GMT): xuzhao103389 (Thu, 01 Jun 2017 10:07:23 GMT): xuzhao103389 (Thu, 01 Jun 2017 10:07:28 GMT): xuzhao103389 (Thu, 01 Jun 2017 10:07:50 GMT): dselman (Thu, 01 Jun 2017 10:13:34 GMT): xuzhao103389 (Thu, 01 Jun 2017 10:14:20 GMT): xuzhao103389 (Thu, 01 Jun 2017 10:14:22 GMT): sstone1 (Thu, 01 Jun 2017 10:32:37 GMT): AlexJYoungman (Thu, 01 Jun 2017 10:34:06 GMT): AlexJYoungman (Thu, 01 Jun 2017 10:34:06 GMT): AlexJYoungman (Thu, 01 Jun 2017 10:34:06 GMT): xuzhao103389 (Thu, 01 Jun 2017 10:38:13 GMT): xuzhao103389 (Thu, 01 Jun 2017 10:38:18 GMT): xuzhao103389 (Thu, 01 Jun 2017 10:38:20 GMT): sstone1 (Thu, 01 Jun 2017 10:44:50 GMT): sstone1 (Thu, 01 Jun 2017 10:44:55 GMT): sstone1 (Thu, 01 Jun 2017 10:45:02 GMT): xuzhao103389 (Thu, 01 Jun 2017 10:46:25 GMT): xuzhao103389 (Thu, 01 Jun 2017 10:46:29 GMT): smallant (Thu, 01 Jun 2017 10:58:24 GMT): bejavu (Thu, 01 Jun 2017 11:06:02 GMT): bejavu (Thu, 01 Jun 2017 11:41:53 GMT): bejavu (Thu, 01 Jun 2017 11:41:53 GMT): dselman (Thu, 01 Jun 2017 11:58:34 GMT): rfu2k (Thu, 01 Jun 2017 12:28:16 GMT): ccorley (Thu, 01 Jun 2017 12:35:05 GMT): bejavu (Thu, 01 Jun 2017 12:43:17 GMT): bejavu (Thu, 01 Jun 2017 12:43:17 GMT): bejavu (Thu, 01 Jun 2017 12:43:17 GMT): dselman (Thu, 01 Jun 2017 12:44:24 GMT): bejavu (Thu, 01 Jun 2017 12:49:58 GMT): Fanarito (Thu, 01 Jun 2017 12:51:51 GMT): Fanarito (Thu, 01 Jun 2017 12:51:51 GMT): Fanarito (Thu, 01 Jun 2017 12:51:51 GMT): Fanarito (Thu, 01 Jun 2017 12:51:51 GMT): dselman (Thu, 01 Jun 2017 12:58:04 GMT): dselman (Thu, 01 Jun 2017 12:58:55 GMT): dselman (Thu, 01 Jun 2017 13:00:02 GMT): dwakeman (Thu, 01 Jun 2017 13:16:09 GMT): AccentSandy (Thu, 01 Jun 2017 13:20:49 GMT): uber.twin (Thu, 01 Jun 2017 13:40:32 GMT): uber.twin (Thu, 01 Jun 2017 13:40:48 GMT): uber.twin (Thu, 01 Jun 2017 13:41:55 GMT): uber.twin (Thu, 01 Jun 2017 13:43:48 GMT): AccentSandy (Thu, 01 Jun 2017 13:54:14 GMT): dselman (Thu, 01 Jun 2017 13:55:41 GMT): dselman (Thu, 01 Jun 2017 13:56:06 GMT): dselman (Thu, 01 Jun 2017 13:56:49 GMT): JennFoley (Thu, 01 Jun 2017 14:10:34 GMT): vvnick (Thu, 01 Jun 2017 14:13:10 GMT): sstone1 (Thu, 01 Jun 2017 14:16:01 GMT): uber.twin (Thu, 01 Jun 2017 14:21:24 GMT): dselman (Thu, 01 Jun 2017 14:21:31 GMT): uber.twin (Thu, 01 Jun 2017 14:21:59 GMT): hariharanatarajan (Thu, 01 Jun 2017 15:02:11 GMT): sstone1 (Thu, 01 Jun 2017 15:09:56 GMT): dklesev (Thu, 01 Jun 2017 15:10:29 GMT): dklesev (Thu, 01 Jun 2017 15:25:02 GMT): sstone1 (Thu, 01 Jun 2017 15:25:28 GMT): sstone1 (Thu, 01 Jun 2017 15:25:41 GMT): sstone1 (Thu, 01 Jun 2017 15:25:48 GMT): dklesev (Thu, 01 Jun 2017 15:27:03 GMT): dklesev (Thu, 01 Jun 2017 15:27:03 GMT): dklesev (Thu, 01 Jun 2017 15:27:19 GMT): sstone1 (Thu, 01 Jun 2017 15:34:27 GMT): dklesev (Thu, 01 Jun 2017 15:40:03 GMT): dklesev (Thu, 01 Jun 2017 16:14:06 GMT): StephaneMery (Thu, 01 Jun 2017 18:05:57 GMT): StephaneMery (Thu, 01 Jun 2017 18:06:20 GMT): davidkel (Thu, 01 Jun 2017 18:27:19 GMT): nehalshah50 (Thu, 01 Jun 2017 18:35:26 GMT): davidkel (Thu, 01 Jun 2017 18:38:45 GMT): nehalshah50 (Thu, 01 Jun 2017 18:42:09 GMT): davidkel (Thu, 01 Jun 2017 18:43:31 GMT): nehalshah50 (Thu, 01 Jun 2017 18:59:15 GMT): sstone1 (Thu, 01 Jun 2017 18:59:52 GMT): sstone1 (Thu, 01 Jun 2017 18:59:59 GMT): nehalshah50 (Thu, 01 Jun 2017 19:00:23 GMT): sstone1 (Thu, 01 Jun 2017 19:00:42 GMT): sstone1 (Thu, 01 Jun 2017 19:00:45 GMT): sstone1 (Thu, 01 Jun 2017 19:00:57 GMT): sstone1 (Thu, 01 Jun 2017 19:01:27 GMT): nehalshah50 (Thu, 01 Jun 2017 19:04:39 GMT): nehalshah50 (Thu, 01 Jun 2017 19:05:59 GMT): sstone1 (Thu, 01 Jun 2017 19:06:20 GMT): sstone1 (Thu, 01 Jun 2017 19:06:20 GMT): nehalshah50 (Thu, 01 Jun 2017 19:12:53 GMT): sstone1 (Thu, 01 Jun 2017 19:13:15 GMT): sstone1 (Thu, 01 Jun 2017 19:13:31 GMT): nehalshah50 (Thu, 01 Jun 2017 19:14:20 GMT): sstone1 (Thu, 01 Jun 2017 19:17:46 GMT): davidkel (Thu, 01 Jun 2017 19:17:46 GMT): davidkel (Thu, 01 Jun 2017 19:17:46 GMT): nehalshah50 (Thu, 01 Jun 2017 19:18:12 GMT): guyho (Thu, 01 Jun 2017 19:21:17 GMT): sstone1 (Thu, 01 Jun 2017 19:21:44 GMT): sstone1 (Thu, 01 Jun 2017 19:22:08 GMT): nehalshah50 (Thu, 01 Jun 2017 19:23:43 GMT): sstone1 (Thu, 01 Jun 2017 19:24:52 GMT): sstone1 (Thu, 01 Jun 2017 19:24:57 GMT): sstone1 (Thu, 01 Jun 2017 19:25:12 GMT): sstone1 (Thu, 01 Jun 2017 19:25:20 GMT): mariol100 (Thu, 01 Jun 2017 19:35:26 GMT): sstone1 (Thu, 01 Jun 2017 19:50:26 GMT): sstone1 (Thu, 01 Jun 2017 19:51:27 GMT): sstone1 (Thu, 01 Jun 2017 19:51:55 GMT): sstone1 (Thu, 01 Jun 2017 19:52:19 GMT): nehalshah50 (Thu, 01 Jun 2017 19:58:18 GMT): StephaneMery (Thu, 01 Jun 2017 19:59:41 GMT): sstone1 (Thu, 01 Jun 2017 20:04:39 GMT): dklesev (Thu, 01 Jun 2017 21:10:34 GMT): dselman (Thu, 01 Jun 2017 21:42:51 GMT): dklesev (Thu, 01 Jun 2017 21:43:48 GMT): dklesev (Thu, 01 Jun 2017 21:44:10 GMT): dklesev (Thu, 01 Jun 2017 21:44:20 GMT): dselman (Thu, 01 Jun 2017 21:56:27 GMT): dklesev (Thu, 01 Jun 2017 22:15:46 GMT): dselman (Thu, 01 Jun 2017 22:20:45 GMT): dklesev (Thu, 01 Jun 2017 22:22:44 GMT): nehalshah50 (Thu, 01 Jun 2017 22:23:14 GMT): dklesev (Thu, 01 Jun 2017 22:24:51 GMT): dklesev (Thu, 01 Jun 2017 22:25:51 GMT): dklesev (Thu, 01 Jun 2017 22:25:59 GMT): nehalshah50 (Thu, 01 Jun 2017 22:30:44 GMT): dklesev (Thu, 01 Jun 2017 22:37:43 GMT): dklesev (Thu, 01 Jun 2017 22:37:52 GMT): nehalshah50 (Thu, 01 Jun 2017 22:41:58 GMT): nehalshah50 (Thu, 01 Jun 2017 22:42:36 GMT): nehalshah50 (Thu, 01 Jun 2017 22:42:36 GMT): dwakeman (Thu, 01 Jun 2017 22:46:10 GMT): nehalshah50 (Thu, 01 Jun 2017 22:54:14 GMT): jdockter (Thu, 01 Jun 2017 23:11:01 GMT): nehalshah50 (Thu, 01 Jun 2017 23:13:17 GMT): nehalshah50 (Thu, 01 Jun 2017 23:14:15 GMT): dklesev (Thu, 01 Jun 2017 23:18:20 GMT): nehalshah50 (Thu, 01 Jun 2017 23:19:47 GMT): nehalshah50 (Thu, 01 Jun 2017 23:23:56 GMT): dklesev (Thu, 01 Jun 2017 23:38:13 GMT): dklesev (Thu, 01 Jun 2017 23:38:47 GMT): nehalshah50 (Thu, 01 Jun 2017 23:38:58 GMT): dklesev (Thu, 01 Jun 2017 23:39:04 GMT): nehalshah50 (Thu, 01 Jun 2017 23:39:44 GMT): mattalhonte (Fri, 02 Jun 2017 03:38:23 GMT): mattalhonte (Fri, 02 Jun 2017 03:58:12 GMT): mattalhonte (Fri, 02 Jun 2017 03:58:18 GMT): mattalhonte (Fri, 02 Jun 2017 03:58:22 GMT): karthikworks (Fri, 02 Jun 2017 06:37:16 GMT): karthikworks (Fri, 02 Jun 2017 06:38:55 GMT): davidkel (Fri, 02 Jun 2017 07:55:27 GMT): rama_rahul (Fri, 02 Jun 2017 09:54:57 GMT): rama_rahul (Fri, 02 Jun 2017 10:58:06 GMT): hariharanatarajan (Fri, 02 Jun 2017 12:02:41 GMT): hariharanatarajan (Fri, 02 Jun 2017 12:03:27 GMT): hariharanatarajan (Fri, 02 Jun 2017 12:03:33 GMT): hariharanatarajan (Fri, 02 Jun 2017 12:04:18 GMT): hariharanatarajan (Fri, 02 Jun 2017 12:04:20 GMT): hariharanatarajan (Fri, 02 Jun 2017 12:04:47 GMT):
then `docker logs -f
then `docker logs -f
@uber.twin are you familar with the docker commands?
Message Attachments
so I'd use `docker logs -f d1b0`
then run the command that's failing `composer archive create --moduleName digitalproperty-network --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d`
then in a separate command window run the command that's failing `composer archive create --moduleName digitalproperty-network --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d`
Message Attachments
@uber.twin Can you run `docker -v` and `docker-compose -v` so we can see the versions you're using?
pg@pg-GL552JX:~$ docker -v
Docker version 1.13.1, build 092cba3
pg@pg-GL552JX:~$ docker-compose -v
docker-compose version 1.11.2, build dfed245
Docker version 1.13.1, build 092cba3
is the GOPATH relevant?
I'd suggest it might be worth running the `npm run teardownHLF` command.. and then doing `npm install` again... for just the getting started application there seems to be one too many docker images working
from within the getting started directory
the same outcome
Have you made any code changes or is this a result of just following https://fabric-composer.github.io/start/quickstart.html ?
the peer log suggests that the peer never actually gets told to deploy the business network
do you have any extra DEBUG enabled? ie. what is the result of `echo $DEBUG`
empty output
I didn't touch the code, just went with the guide
Where there any errors when you did npm install in the getting started directory?
@uber.twin Can you try `docker rm $(docker ps -a -q)` (this'll take down any docker containers) then can you run `docker rmi $(docker images -q)` (this'll delete all docker images)
Then can you try an `npm install` again in the getting started again
yeah, if it's a docker issue then that'll likely solve it :)
hazah! hazah! - that did it:)
thank you so much for your time!
excellent!
@uber.twin Awesome! No worries. I think the problem was that you somehow had the wrong Hyperledger Fabric peer images which were named the same as what our script tries to pull down :)
@uber.twin Awesome! No worries. I think the problem was that you somehow had the wrong Hyperledger Fabric peer images which were named the same as what our script tries to pull down :) Have you tried to use Fabric V1 preview images?
Have you tried to use Fabric V1 preview images?
is there any way to startup composer-ui without the default auction business network? really just want to work with a blank slate and just end up deleting those in the editor anyway
@jdockter Not at the moment
@Jakeeyturner probably because I already had the regular fabric setup with the node sdk in place already
I also attempted to do a fabric and fabric-ca build to give the java-sdk a try, as there is no prebuilt image which works with the java-sdk- or so I was told
those experiments may have left conflicting images
Ah right, yeah that might've done it
I didn't manage to build a functional fabric setup for java-sdk, anyway
meanwhile, dselman pointed me to the fabric-composer initiative and I though it is worth a shot
not sure about the Fabric V1 preview images, any specific reference?
@Jakeeyturner actually looking for the chaincode bytecode that gets deployed to fabric. the idea is to manually load the chaincode when troubleshooting/debuggin
@uber.twin If you were trying to pull down your own images and build them, then I imagine that's what the problem was. I wasn't sure if you'd tried to pull down hyperledger fabric v1 preview images, as that could've caused the problem also. Let us know how you get on with Fabric Composer :)
alright, thank you for your support:)
I am sure it'll still be indispensable
Has joined the channel.
When I try to install fabric-composer I get the following error at the step where I deploy the business network archive file. Can somebody help? praveen@praveen-RV418-RV518-RV718:~/Documents/Hyperledger/sample-applications/packages/getting-started$ composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
Deploying business network from archive digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.1
Description: Digital Property Network
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/home/praveen/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/home/praveen/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/home/praveen/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)
@PraveenU you are running against fabric running in docker containers?
yes..fabric in docker containers..I am following the steps listed in the website - https://fabric-composer.github.io/start/quickstart.html
so you are running what the sript that gets run by `npm install` does but manually?
yes - I first ran npm install..it errored out..then I tried to run the individual commands and realized it is erroring out at this particular step
ok thanks for that. what does `docker ps` report?
no containers running
ah, that won't help :)
:)
so how about trying the `scripts/start-hyperledger.sh` then `docker ps` again to ensure that they come up ok
yes..doing that now
praveen@praveen-RV418-RV518-RV718:~/Documents/Hyperledger/sample-applications/packages/getting-started$ composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
Deploying business network from archive digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.1
Description: Digital Property Network
Error: Identity or token does not match.
Command failed.
dockers are up CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
83b410f3aa21 hyperledger/fabric-peer "sh -c 'sleep 5; p..." 49 minutes ago Up 2 minutes 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1
f8a6ba4a5faa hyperledger/fabric-membersrvc "membersrvc" 49 minutes ago Up 2 minutes 0.0.0.0:7054->7054/tcp scripts_membersrvc_1
so try `rm -r $HOME/.composer-credentials`
Has left the channel.
then you need to run the 'scripts/teardown.sh` script to shut down the docker containers
then you need to run the `scripts/teardown.sh` script to shut down the docker containers
that should clean everything up
Thanks smithsj..that worked
have a good evening
Yay! you're welcome :)
someone (probably me) should update those sample scripts with versions for mac
docker doesnt run on local host and it makes it a huge pain just starting and stopping it
cause it changes the default connection every time
@conroydave not sure I understand, can you elaborate please. Several of the team use Macs...
the scripts in composer, a few remove the existing profiles and credentials in the home directory for a clean exit
then when they are regenerated, atleast for me, they set the peer and member urls in the default connection to localhost:7051 etc
except on my docker instance, the actual address is of the vm is 192.168.99.100
i thought it was a docker for mac thing
My Mac runs Docker on localhost. Did you use the normal Mac installer?
i probably installed via command line? Ive had docker on this machine for about a year and half when it was still called the docker toolbox
Has joined the channel.
I think you should probably remove it and install using the latest installer. It has improved a lot. The new Kitematic UI for example is very nice to quickly peek at the logs for a running container.
Hi. I tried running the command "npm run submitTransaction" and got the following error msg.
Message Attachments
Basically, it seems that the node cli.js landregistry submit && node cli.js landregistry list are failing whenever I run the command "npm run submitTransaction"
Message Attachments
@mohamoud.egal could you please try running: `$ composer network ping -n digitalproperty-network -i WebAppAdmin -s DJY27pEnl16d`
in the same directory as "getting started"?
can be anywhere (composer-cli is installed globally)
Message Attachments
please run `npm uninstall composer-cli -g`
followed by `npm install composer-cli -g`
And check that the install worked (no errors) -- warnings are ok.
Message Attachments
This is because you are running on Node v7.7.0, which is not supported. Can you please use Node v6.9.5.
You can run `nvm use 6.9.5`
Followed by `nvm alias default 6.9.5`
the last error asked me to update my node
That is a default error message that npm prints on any error.
it worked!
now can I run the "npm run submitTransaction"?
@dselman
:drum:
yes
so, when i did that last night i got undefined
it feels as though i should be sending some parameters along with a submit transaction call
There is a mystery `undefined` printed to the console -- it's harmless. We need to track that down.
```info: [Composer-GettingStarted] Fabric Composer: Getting Started appliation
info: [Composer-GettingStarted] LandRegistry:
so what does the command do again? adds the date to it?
submitTransaction
calls onRegisterPropertyForSale?
it submits a transaction which updates the state of the property listing on the ledger
i am still surprised you are able to run the hyperledger containers on local host
there must be some port forward i am missing
Has joined the channel.
has composer been updated to require sourceType and sourceName? trying to run the sample application and getting the following error
Message Attachments
edit - to require sourceType & sourceName for the "composer archive create" command
Just fixing that. 0.4.5 just landed.
Message Attachments
@dselman sounds good. the below did the trick
Message Attachments
Committed.
`git pull` the gettingstarted
Has joined the channel.
so in the land registry tutorial, you start with a digital property network definition
then later in the tutorial, you make a single change to the business logic
makes perfect sense in terms of being adaptable for business
what i am struggling to wrap my head around though is the tracking of changes to the business rules
coming from bitcoin and ethereum... things in the chain can not be altered after the fact (without a fork)
the whole update / deletion of assets and business rules goes against my understanding of immutability
Hello I'm having issues installing composer-cli on my Ubuntu vm. Here is my link on stack overflow https://stackoverflow.com/q/42544124/5347762
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=psydn5HzwXh6KBgbs) @mohamoud.egal You also need [this](https://github.com/fabrice102/node-hashtable/) hashtable instead of the original one. The original doesn't compile on current OS X versions
In the overview of composer it lists this as a feature "Provides integration extension points to send transactions to external analytics data stores"
Any examples of this ?
@raghavsood I resolved the issue earlier, but should I still install this hashtable anyway?
If you're still getting the `tr1/unordered_map` error, then yes
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=t7evjQxMHionZrPst) @conroydave those are separate blockchain transactions that are all captured on the ledger. If you could not change data on the ledger it would not be very useful. It is immutable in the sense that there's a shared/replicated history of all assets.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=QagYxo8eoo4vbQ3cv) @conroydave the "rules" (business network definition) are themselves on the ledger. It is possible to replay from the genesis block all transactions (including changes to the business network definition) and arrive at a deterministic endpoint.
Cool. That makes sense
What are the best tools for replay
Or will they just come with time. I've seen the basic explorers
I'm not aware of tools for Fabric replay. Overtime I'm sure we'll see Fabric APIs that allow you to replay the chain, snapshot, or grab the state of the chain at a given point in time.
At the point you'll get the second wave of adopters
We can't all be true believers :nerd:
Yes, and Fabric Composer will be ready for them! For example, "Show me the history of asset XYZ", or "Show me all transactions that impacted asset XYZ"
Has joined the channel.
Thanks for the answers. Again.
:thumbsup:
So how about the 'integration points to send transactions to external analytics' feature. Anyone doing that yet ?
Is that just another way of saying that it provides the series of apis
Or is There a way to push data externally through composer
We did prototype that using the v0.6 event bus. We pulled the code out for the moment and are waiting for v1. The idea is that there are runtime APIs to emit events to the event bus that can get picked up by external systems.
Once we can get the events onto a bus, then we can provide plugins to various analytics engines, like Apache Spark etc.
Rough timeframe for v1?
This channel is so freaking useful
End of March... ish.
Cool
Has joined the channel.
Has joined the channel.
Hey all, I am trying to setup a rest api for the carauction-network. On the getting started guide it provides details for the digitalproperty-network, and has the details you need. Should I use different details when I am setting up the api for the CarAuction network? Namely the Business network ID? I am currently getting the error: (node:12824) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): Error: No chaincode ID found for business network 'CarAuction-Network'
Also, I can't seem to find the loopback setup guide. Can anyone point me in the right direction?
@KeesJansen the easiest way to stand up a REST server for a business network is using this: https://github.com/fabric-composer/fabric-composer/tree/master/packages/composer-rest-server
Note that we are still working on the Loopback Connector and have some open issues: https://github.com/fabric-composer/fabric-composer/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aopen%20Loopback
Seems to be pointing me to the /home/usr/.composer-connection-profiles/default directory, however on disk this directory is /home/usr/.composer-connection-profiles/defaultProfile ..
To test this, you can: `npm install` and then `npm test` the getting started. Then `npm install -g composer-rest-server` followed by running `composer-rest-server`.
You should use `defaultProfile` as the Fabric Connection Profile Name
```Enter your Business Network Identifier : digitalproperty-network
Enter your Fabric username : WebAppAdmin
Enter your secret: DJY27pEnl16d```
Then go to `http://0.0.0.0:3000/explorer`
You should see the API explorer:
Message Attachments
The latest version of the Fabric Composer cli v0.4.5 has changed the command options for `composer archive create` Appreciate that this caused a few migration issues; the main web pages are in the process of being updated,
More information and some examples are in in this StackOverflow answer. http://stackoverflow.com/questions/42555280/running-the-getting-started-fabric-composer-gets-error-with-composer-archive-c/42555281#42555281
Please do ask here if there are other questions.... thanks for your understaing.
The latest version of the Fabric Composer cli v0.4.5 has changed the command options for `composer archive create` Appreciate that this caused a few migration issues; the main web pages are in the process of being updated,
More information and some examples are in this StackOverflow answer. http://stackoverflow.com/questions/42555280/running-the-getting-started-fabric-composer-gets-error-with-composer-archive-c/42555281#42555281
Please do ask here if there are other questions.... thanks for your understanding.
Hi, thanks for that - I have done this. What I am trying to do it the same but with the CarAuction-network. I am trying to find the details to put in when setting up using "composer-rest-server".
@dselman - where can @KeesJansen and myself find the equivalent steps to do this for the CarAuction-Network? I've been through quick start, etc, cloned the sample-networks, done npm install and npm test in the carauction-network sample and npm installed composer-rest-server.
@KeesJansen if you build car auction via command line locally I believe the network name is going to be 'org.acme.vehicle.auction' with WebAppAdmin and DJY27pEnl16d
If you deployed via composer playground it's going to be a different name (org.acme.biznet) and you would want to follow the work around instructions that @mbwhite put together here https://github.com/mbwhite/documents/blob/master/Connecting%20to%20playground%20HLF.md
Apologies for the dumb questions - I think I'm missing some steps/concepts...
Is that what was being suggested when starting the composer-rest-server?
? Enter your Fabric Connection Profile Name: defaultProfile
? Enter your Business Network Identifier : org.acme.vehicle.auction
? Enter your Fabric username : WebAppAdmin
? Enter your secret: DJY27pEnl16d
Connection fails: Error: No chaincode ID found for business network 'org.acme.vehicle.auction'
It will be retried for the next request.
Loopback Connector for Fabric Composer
(node:2704) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): Error: No chaincode ID found for business network 'org.acme.vehicle.auction'
The assumption is that you have deployed that network to your local environment and that busn network identifier would be in your defaultProfile under the 'networks' section of the connection.json
or whatever profile you used to connect to your local environment
My default profile connection.json only has :
{
"type": "embedded"
}
@GrahamCharters: do you have your own blockchain network? If so I can help you deploy the Car Auction application
@elisabetta - I *think* I do. At least, I went through the quick start tutorial and tested the property network.
@GrahamCharters can you paste the result of `docker ps` please?
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
:S
so you have no docker containers running :)
it looks that way :)
you can start them up from the script in the scripts folder of the getting started guide
`scripts/start-hyperledger.sh`
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a4dd2b37e270 hyperledger/fabric-peer "sh -c 'sleep 5; peer" 2 hours ago Up 22 seconds 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1
c5fe407967e4 hyperledger/fabric-membersrvc "membersrvc" 2 hours ago Up 22 seconds 0.0.0.0:7054->7054/tcp scripts_membersrvc_1
:D
then you'll need a $HOME/.composer-connection-profiles/defaultProfile/connection.json file - if you went through the getting started guide (https://fabric-composer.github.io/start/getting-started-cmd-line.html) then I think it should have created this for you
Yes, I have one of those. It just states "type": "embedded".
it doesn't look to me like you have a chaincode deployed to that network
ok, so I need to do the create things a la Matthew's Stackoverflow? Then deploy that resulting archive?
how can you tell, btw?
yeah it'll be something like `composer archive create -m digitalproperty-network --archiveFile digitalPropertyNetwork.bna`
then `composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d `
then `composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d`
how can I tell? well I've got a network running here and if I do `docker ps` here then I see this:
Are the ID and secret already defined or are these commands setting them?
Message Attachments
that crazy string after dev-vp0- is the chaincode id
and that needs to go in your connection profile
it might be easier to clear up and start again from the npm install
Can I specify anything for the enrollId / enrollSecret?
Graham you cannot
where are those defined?
in the yaml file for the membership services docker container
I'm trying to do thos for the carauction-network. I see I have a .bna file in the dist directory.
ok, so I use the same value for any network I deploy?
values
`scripts/teardown.sh`
yep
then `rm -rf $HOME/.composer-credentials`
then `npm install`
in your GettingStarted dir
Message Attachments
Message Attachments
Getting further. Should I have to hand-edit the defaultProfile?
I'm seeing this:
composer network list -n carauction-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
List business network carauction-network
2017-03-02T14:44:35.604Z ERROR HFCConnection :login() Failed to set chaincode id on security context. Check that the connection profile defaultProfile defines the network carauction-network {"0":"carauction-network@defaultProfile"}$
Error: Failed to set chaincode id on security context. Check that the connection profile defaultProfile defines the network carauction-network
at self.getConnectionManager.getConnectionProfileManager.getConnectionProfileStore.load.then (/home/charters/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/composer-connector-hlf/lib/hfcconnection.js:129:39)
Command completed successfully.
what's in your `$HOME/.composer-connection-profiles/defaultProfile/connection.json` file?
Never mind.... Where I said "carauction-network" I should have said,"org.acme.vehicle.auction"
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f17c14e2f6fb dev-vp0-602ee2c8d42f8f74527f6c2d71fcd09125ad807e17e455f32f3c3515bc93b04a "/opt/gopath/bin/602e" 7 minutes ago Up 7 minutes dev-vp0-602ee2c8d42f8f74527f6c2d71fcd09125ad807e17e455f32f3c3515bc93b04a
dfc393a91580 dev-vp0-ad03b9da233bb7c1c9f00d7c0e2a79357da57afa5726d80b1bd75243134379e4 "/opt/gopath/bin/ad03" 10 minutes ago Up 10 minutes dev-vp0-ad03b9da233bb7c1c9f00d7c0e2a79357da57afa5726d80b1bd75243134379e4
2af805244573 hyperledger/fabric-peer "sh -c 'sleep 5; peer" 11 minutes ago Up 11 minutes 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1
4609c4d61531 hyperledger/fabric-membersrvc "membersrvc" 11 minutes ago Up 11 minutes 0.0.0.0:7054->7054/tcp scripts_membersrvc_1
that looks better
yay!
It's working! :) I have an API! Thanks @smithsj @jdockter @sbrakev @elisabetta @mbwhite
Top work @GrahamCharters take the rest of the day off ;)
lol I wish. I need to call it now ;)
careful now
done... with Java... :o Feeling a little light-headed....
Fabric composer Atom plugin for highlighting syntax is published here: https://atom.io/packages/composer-atom-plugin
@GrahamCharters fantastic! :grin:
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=3csN56GSgq4ccorhP) @dselman would also be nice to have a command line call to launch verse putting in the values each time ...also if I had two business networks it would be nice to be able to run two servers, selecting whatever port I wanted. I believe this was already mentioned...but just double checking...is the thought that this server would run in it's own docker container in production pointing at a specific peer or could it really be any peer (at least in v0.6)?
when creating a network model is .cto the only extension one can use to make the file within the model directory?
I believe it is
thanks
Hi, I've generated a Java client from the Swagger for the CarAuction-Network. I can use this to post things to the Blockchain but when I try to retrieve items I get exceptions like this:
[err] org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "$class" (Class org.acme.vehicle.auction.model.VehicleListing), not marked as ignorable
at [Source: sun.net.www.protocol.http.HttpURLConnection$HttpInputStream@5c2788bc; line: 1, column: 165] (through reference chain: org.acme.vehicle.auction.model.VehicleListing["$class"])
The swagger for VehicleListing does not mention $class, but when I poke the API through the Swagger page, all the results contain this $class. For example:
[
{
"listingId": "83881aee-ef29-4c6d-8ad7-8a2472202ccd",
"reservePrice": 1000,
"description": "A big green van.",
"state": "FOR_SALE",
"offers": [],
"vehicle": "1234",
"$class": "org.acme.vehicle.auction.VehicleListing"
}
]
Any thoughts? I've tried modifying the generated code, but it's not made any difference so far...
@GrahamCharters $class is mandatory on things like asset creation and transaction submission so without it I am surprised you can post successfully
@GrahamCharters $class is mandatory on things like asset creation and transaction submission so without it I am surprised you can post successfully
@GrahamCharters $class is mandatory on things like asset creation and transaction submission so without it I am surprised you can post successfully. Looking at the loopback connector code it will add the $class attribute on the request for you for things like create but I guess it doesn't strip it when data is returned
@GrahamCharters $class is mandatory on things like asset creation and transaction submission. Looking at the loopback connector code it will add the $class attribute on the request for you for things like create but I guess it doesn't strip it when data is returned
@davidkel - thanks. I think it either needs to be stripped on the return on it needs to be listed in the Swagger. I'm trying to update the generated code to use the Jackson annotations to ignore it but my JsonIgnoreProperties(ignoreUnknown=true) appears to be being...ignored :(
@GrahamCharters I'm not sure it should be part of the swagger documentation as I think it should match the definition of the model itself and $class is an internal property and as we can manipulate it through the loopback connector it would make sense to strip it out on return. I will create an issue about this. As for now I haven't jackson stuff for so long now I cant remember how you might make a property optional
@GrahamCharters I'm not sure it should be part of the swagger documentation as I think it should match the definition of the model itself and $class is an internal property and as we can manipulate it through the loopback connector it would make sense to strip it out on return. I will create an issue about this. As for now I haven't done jackson stuff for so long now I cant remember how you might make a property optional
@davidkel - if it's an internal property, then I agree, it should be stripped. Can you let me know the issue number when you raise it. Many thanks.
Or I can raise it if you like.
@GrahamCharters https://github.com/fabric-composer/fabric-composer/issues/329
thanks :)
Has joined the channel.
@davidkel - looks like I'm failing to find a workaround so far (if the field hadn't been called $class I could have hacked the swagger, but that results in a getClass() method being generated that conflicts with Object.getClass()). Perhaps an unfair question, but what would the typical turnaround for a fix be? :S
Has joined the channel.
Hi everyone
I've tried out the composer. Does anyone know how I can pass a parameter inside a transaction?
I can't even find any documentation on that
Has joined the channel.
@iv1004 could you expand on what data you want to pass - from where to where?
This sounds like a bug to me. I think we are adding $class on POSTs -- maybe we are not stripping it on GET? @smithsj would know for sure.
I recently created a new Fabric Composer sample network. It illustrates financial institutions sharing reference data for corporate bonds. You can import it straight into http://fabric-composer.mybluemix.net using the "Deploy a sample business network" button.
Message Attachments
If you have created other sample networks that you think would be interesting to share with the community don't hesitate to contact me. The sample networks are imported from this GitHub repo: https://github.com/fabric-composer/sample-networks so we can easily add more.
@dselman I don't think we should be removing the $class property from the Loopback REST APIs; it's our only way to identify the type of an object. This is important when doing queries on the transaction registry and in the future custom registries which may contain resources of multiple different types.
@GrahamCharters using the official Swagger Codegen (from Swagger Editor) the generated code can correctly handle GET requests. I believe that works because the generated code is using Gson to handle the JSON data. You seem to be using Jackson? Is this some custom version of Swagger Codegen?
Currently, we have a pre-reqs install script for Ubuntu14. I've duplicated this and modified for Ubuntu16.x - if you would like to try it (please!) it is my own fork of the *sample-applications* repo.
```
curl -O https://github.com/mbwhite/sample-applications/blob/master/packages/getting-started/scripts/prereqs-ubuntu16.sh
chmod u+x prereqs-ubuntu16.sh
./prereqs-ubuntu16.sh
```
I've tested this on a fresh Ubuntu 16 installation and I'll create a PR for it - but would appreciate the community giving it a try - just in case of typos!
Currently, we have a pre-reqs install script for Ubuntu14. I've duplicated this and modified for Ubuntu16.x - if you would like to try it (please!) it is my own fork of the *sample-applications* repo.
```
curl -O https://raw.githubusercontent.com/mbwhite/sample-applications/master/packages/getting-started/scripts/prereqs-ubuntu16.sh
chmod u+x prereqs-ubuntu16.sh
./prereqs-ubuntu16.sh
```
I've tested this on a fresh Ubuntu 16 installation and I'll create a PR for it - but would appreciate the community giving it a try - just in case of typos!
@sstone - Jackson is the default that WAS Liberty uses. If the $class property remains, then shouldn't it be part of the API? I'm not passing it in on at the moment and creating entires works fine.
@sstone1 - Jackson is the default that WAS Liberty uses. If the $class property remains, then shouldn't it be part of the API? I'm not passing it in on at the moment and creating entires works fine.
Has joined the channel.
We're lenient on POST/PUT at the moment, but for the same reasons as above (registries with multiple types) i'm not sure we'll be able to do that forever
We should be modelling the $class property, it should be optional and have a default value - @davidkel is gonna look at that
Has joined the channel.
Hello Community, it is possible to download fabric-composer on Windows7 ?
At present it isn't possible to run on Windows (see http://stackoverflow.com/questions/42009850/fabric-composer-on-windows). We do have an open issue to provide Windows support - but I would expect that Windows 10 would be the minimum version. If you have any thoughts please do add them to the issue mentioned in the SO post.
Okay, thank you very much for that fast reply! Can you predict a time frame, how long it will need to provide a stable running fabric-composer on Windows10 and Windows7 ?
At this point I'm afraid not; at present those that do use Windows (myself included) are using Ubuntu in a VM to do development. We don't wish to exclude Windows, but would welcome views on what tools (Poweshell or windows command prompt, Bash in Win10) that people might be using.
alright, thanks!
@sstone1 - great, thanks. We might still have an issue with the name of it when it comes to generating the Java client.
I've managed to make some progress by replacing the default serialization in Liberty. My 'ignoring' of $class is now working - clearly not a good answer but it's allowed me to get further. What I've now encoutered is that when I "get" a VehicleListing, the Offers are not of type Offer, they're HashMaps of the properties. This is because the swagger says their type is object:
"offers": {
"description": "An instance of org.acme.vehicle.auction.Offer",
"type": "array",
"items": {
"type": "object"
}
},
I don't know whether something better is possible. Still reading to try to understand. Maybe $ref?
@GrahamCharters I think you are hitting this: https://github.com/fabric-composer/fabric-composer/issues/311
Possibly...?
Sounds like it could be. I don't understand the concepts enough to say for certain.
Has joined the channel.
Message Attachments
Thanks
@mohamoud.egal I don't think you have the parameter values for sourceType and sourceName quite right. For sourceType you need to specify either "module" for an NPM module or "dir" for a directory location, then for sourceName specify a directory (for dir) or the NPM module name (for module)
@davidkel made that change & it worked
How can I get enrollId WebAppAdmin --enrollSecret variables for the following command; "$ composer network deploy --archiveFile DigitalLandTitle.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d"
Has joined the channel.
Hello! wanted to clarify is smart contract logic generated from javascript defined in fabric-composer? or one should add Go or Java implementation of smart-contract to business model?
hi @akm4 km4 I'm not on composer dev team so I may be speaking out of turn, but I think what's going on is that fabric-composer is generating the smart contract logic in javascript, but since smart contract is supported in just Go or Java at the moment, that a component called Otto (or a variant of it maybe) is used to convert the javascript to Go inside the chaincode Docker container. IIUC support to run chaincode natively as javascript is on the roadmap.
hi @akm4 I'm not on composer dev team so I may be speaking out of turn, but I think what's going on is that fabric-composer is generating the smart contract logic in javascript, but since smart contract is supported in just Go or Java at the moment, that a component called Otto (or a variant of it maybe) is used to convert the javascript to Go inside the chaincode Docker container. IIUC support to run chaincode natively as javascript is on the roadmap.
hi @silliman i was thinking the same, just wanted to clarify if understood correctly
Though that rises another quetion - if i am not satisfied (by any reasons, nothing personal towards Otto devlopers ;) ) with the generated code, can i use my own Go or JS code?
@akm4 well in theory you can do whatever you want since the code is open source but when you're talking about changing bits and pieces of artifacts created by higher abstraction layers then you might be on your own in terms of getting support- again, I am not answering as a Composer developer, just as a "civilian"
Yeah, i see! obviously this is the question for the developers of Composer, about their plans and intentions. As a "civilian" i agree with you
@akm4 I think there is a slight misunderstanding here. Otto is an embeddable javascript interpreter written in go so makes it easy to embed into other go code. Composer makes use of otto to interpret the business logic of a business network written in javascript. So go code isn't generated and executed from the javascript
@akm4 Just want to clarify our use of Otto. Otto is an embeddable javascript interpreter written in go so makes it easy to embed into other go code. Composer makes use of otto to interpret the business logic of a business network written in javascript. So go code isn't generated and executed from the javascript
Also FYI, we want to ditch Go + Otto. We are indeed going to look at adding Node.js chaincode support to the base Fabric, at which point we will be 100% pure JavaScript (bar any native modules...)
Otto has been great for getting us off the ground and up and running, but it has many limitations that are no good for us going forwards.
I think I'm on record somewhere saying that I'd buy Robert Krimen a beer if I ever run into him ;)
Thanks men, that makes things pretty clear now!
Has joined the channel.
Hi - I'm having trouble getting fabric-composer up & running on Mac. It looks like Fabric isn't starting properly. What should I see when I run `docker ps` after starting Fabric?
This is what I see on my Mac - is it expected?
`$ docker ps`
`CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES`
`167c9b93d386 hyperledger/fabric-peer "sh -c 'sleep 5; peer" About an hour ago Up About an hour 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1`
`8aedcfa73607 hyperledger/fabric-membersrvc "membersrvc" About an hour ago Up About an hour 0.0.0.0:7054->7054/tcp scripts_membersrvc_1`
This is what I see on my Mac - does it match what it *should* be?
`$ docker ps`
`CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES`
`167c9b93d386 hyperledger/fabric-peer "sh -c 'sleep 5; peer" About an hour ago Up About an hour 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1`
`8aedcfa73607 hyperledger/fabric-membersrvc "membersrvc" About an hour ago Up About an hour 0.0.0.0:7054->7054/tcp scripts_membersrvc_1`
That looks fine -- it just looks like you've not deployed a business network yet using `composer network deploy`. If you run the `npm install` for the quickstart it will start the Fabric and deploy the network.
@dselman - Thanks for the clarification, the `composer network deploy` fails (details are on http://stackoverflow.com/questions/42583176/getting-started-fabric-composer-on-mac-error-starting-fabric-or-error-deploy). I'm new to fabric so picking my way through the details trying to figure out which actual part isn't working.
It seems like you are not following the quickstart instructions. E.g. you don't seem to be running `npm install`. Is that right?
https://fabric-composer.github.io/start/quickstart.html
My environment: ```Daniels-MacBook-Pro:fabric-composer dselman$ npm -v
4.4.0
Daniels-MacBook-Pro:fabric-composer dselman$ node -v
v6.9.5
Daniels-MacBook-Pro:fabric-composer dselman$ docker-compose -v
docker-compose version 1.11.1, build 7c5d5e4
Daniels-MacBook-Pro:fabric-composer dselman$ docker-machine -v
docker-machine version 0.9.0, build 15fd4c7```
My environment:
```Daniels-MacBook-Pro:fabric-composer dselman$ npm -v
4.4.0
Daniels-MacBook-Pro:fabric-composer dselman$ node -v
v6.9.5
Daniels-MacBook-Pro:fabric-composer dselman$ docker-compose -v
docker-compose version 1.11.1, build 7c5d5e4
Daniels-MacBook-Pro:fabric-composer dselman$ docker-machine -v
docker-machine version 0.9.0, build 15fd4c7```
My environment:
```Daniels-MacBook-Pro:fabric-composer dselman$ npm -v
4.4.0
Daniels-MacBook-Pro:fabric-composer dselman$ node -v
v6.9.5
Daniels-MacBook-Pro:fabric-composer dselman$ docker-compose -v
docker-compose version 1.11.1, build 7c5d5e4
Daniels-MacBook-Pro:fabric-composer dselman$ docker-machine -v
docker-machine version 0.9.0, build 15fd4c7
Daniels-MacBook-Pro:fabric-composer dselman$ docker -v
Docker version 1.13.1, build 092cba3
```
@dselman - I did follow the instructions, I ran `npm install` but that script got stuck when calling `scripts/start-hyperledger.sh`, and in that script it blocked on `# Wait for the Hyperledger Fabric to start.
while ! nc localhost 7051
@dselman - I did follow the instructions, I ran `npm install` but that script got stuck when calling `scripts/start-hyperledger.sh`, and in that script it blocked on
`# Wait for the Hyperledger Fabric to start.
while ! nc localhost 7051
@dselman - I did follow the instructions, I ran `npm install` but that script got stuck when calling `scripts/start-hyperledger.sh`, and in that script it blocked on
```# Wait for the Hyperledger Fabric to start.
while ! nc localhost 7051
So, since then I've been picking through the scripts line by line trying figure out why it stops here.
@kosullivan that section of the script is meant to wait for the Fabric to start... if you cancel the script at that point.. and then issue `npm run deployNetwork` does that succeed or fail?
It fails.
I've re-run the script line `docker-compose up -d --build` without the `-d` option which starts it in the foreground, and it appears to startup normally.
But to be honest I'm not familiar enough to recognise any errors in the output yet, or recognise what is normal, what is not
In the case of fabric starting successfully in the foreground - does `npm run deployNetwork` work ?
Nope, I get same response from `npm run deployNetwork` either way
Is there some other way to validate that Fabric is running properly ?
one thing to do is issue `docker logs
My current thinking is that perhaps there is a port conflight and/or firewall type issue that is preventing the network connectivity
Thanks for the tip - I'll look into that
You might also want to try the command ```sudo lsof -iTCP -sTCP:LISTEN``` and see what processes are listening on the ports 7050-7054
You might also want to try the command "sudo lsof -iTCP -sTCP:LISTEN" and see what processes are listening on the ports 7050-7054
If you have ideas about things you would like to see in Fabric Composer, you can suggest and then vote on them here- https://fabric-composer.ideas.aha.io/
Hi I see new pull - request #10. It's great!! I will convert Ubuntu 16.04 asap.
I have 2 questions.
First, I deploy org.fabric_composer.marbles from sample-network. and run composer-rest-server. After I push “Try it out” at “GET /org.fabric_composer.marbles.Marble”
then show this error (Response Body).
"error": {
"statusCode": 500,
"name": "Error",
"message": "No registered namespace for type org.fabric.composer.marbles.Marble",
"stack": "Error: No registered namespace for type org.fabric.composer.marbles.Marble\n at ModelManager.getType (/Applications/IBM/node/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/modelmanager.js:276:23)\n at BusinessNetworkConnector.getRegistryForModel (/Applications/IBM/node/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:349:50)\n at ensureConnected.then (/Applications/IBM/node/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:200:22)\n at process._tickCallback (internal/process/next_tick.js:103:7)"
}
}
Second, I want to know what json data post to TradeMarble using StrongLoopAPI
Please show me example json data.
That looks like a bug -- the `.` has been converted to an `_` for the rest API, but the original package name contains a `_`. Can you try it with another sample please?
Has joined the channel.
guys
is fabric-composer using the CouchDB as the world state DB ?
is fabric-composer using CouchDB as the world state DB ?
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=eQcuAyWSeiAss3q2D) @dselman thank you. I try later. and I want to know example of transaction data for marble.
Hello, is there any plan about when to support Fabric 1.0?
@MartinMateev Fabric Composer uses Hyperledger Fabric v0.6 which doesn't use CouchDB. We're currently in the process of porting Fabric Composer to use Hyperledger Fabric V1 which will use CouchDB
great! when will the porting be ready for 1.0?
@йаке
and is this under apache 2.0 license?
@Jakeeyturner any guess on how long it would take to complete the porting ?
I'm asking because I'm fairly vested in the CouchDB situation so I'm trying to figure out which way to go now
We are working on the port at the moment -- expect to have something (alpha? beta?) within the next few weeks. You can see the code is already going in. Yes, it will use the Apache 2 license.
Thanks @dselman
@Jakeeyturner the reason I'm asking is because it looks to me like the current approach for data modelling is more SQL-like
I guess schema-driven
my scenario could be implemented by a noSQL DB like CouchDB - basically I keep getting JSON documents
that I need to be able to query
so I guess the question is how would the CouchDB engine affect the data modelling and how much of the current fabric-composer will be relevant in a few weeks
I don't understand, what is your scenario?
product tracking
every 'business operation' generates a JSON document that describes the business step, origin, destination, product serial numbers, etc....
so one operation for commissioning products
another for shipping,
a third for receiving and so on ...
since CouchDB supports the /_find API
I find it easier to just store all JSON documents in the CouchDB engine as they come in
and then use the /_find API to query serial numbers, get origin, provenance, etc...
If you model your business domain using Composer, then the framework can perform data validation, Typescript generation for GUIs, REST API generation etc etc. If you just have JSON docs in a NoSQL store you're going to have to reinvent all that yourself.
Composer will store the underlying documents in CouchDB
ok
and what about ACL lists
I liked the fact that there were roles and affiliations in the model
especially for audit purposes
Yes, those as well
is this somehow implemented right now in the composer ?
YES
that's awesome
can you point me to a relevant document/examples/how-to
https://fabric-composer.github.io/
https://fabric-composer.github.io/overview/overview.html
https://fabric-composer.github.io/start/getting-started-cmd-line.html
Message Attachments
For composer ui it looks like the logic and CTO goes into the lib directory vs locally I have a lib and models directory...is that changing when we use the ui? For example ....
@smithsj yeah - I went over this but I couldn't find anything related to the ACLs
https://fabric-composer.github.io/reference/acl_language.html
Has joined the channel.
ahaaa
@smithsj thanks!
Hi I met an issue when submitting transaction from composer-ui
Message Attachments
it doesn't help even if I changed listingId
It looks like you're trying to submit a transaction which refers to an asset (VehicleListing asset) which doesn't exist
Can you yse the Assets tab to list all VehicleListings to verify that you are using a valid listingID?
Message Attachments
it's something like this. i tried to change listingid to 9343 in submitting tx tab, but it's automatically change to 0757 somewhat..
it's something like this. i tried to change listingid to 9343 in submitting tx tab, but it's automatically change to 0757 somehow..
Hmm, that sounds rather odd!
I'm using browser mode
I can see that there is already an offer in that vehicle listing for Id 0757
I will reset it and try it again
It looks as though your VehicleListing has managed to get into an odd state there. It seems to have offers for other VehicleListings in its properties
I'm not sure how that has happened - if you can delete that listing and then re-create it with another VehicleListing then that would be great. You can then raise an issue here: https://github.com/fabric-composer/fabric-composer/issues
@xixuejia How did you get Composer-UI running? Did you follow the instructions here: https://fabric-composer.github.io/start/getting-started-playground.html
Hi, yes I'm using this link
I'm using `docker-compose up -d` with the docker-compose.yml in that link
3 containers were created, I opened localhost:8080
assets/participants/transactions are all empty initially
I first create a vehicle and vehicleList and then transaction
is there a step by step instruction about how to define assets/participants/transactions in composer-ui?
I don't think there's a step by step guide
hi, does composer store locally the chaincode it generates? i.e the chaincode that it deploys when composer deploy is called
@xixuejia this may help: https://github.com/fabric-composer/sample-networks/tree/master/packages/CarAuction-Network
@ayoub Composer doesn't generate Go code. It executes the JS code inside the Go container using an interpreter.
Thanks for your instructions!
Hey all - do we have a set of documents or reference materials (or should just one look at the code?) on the topic of doing things by hand in Composer? ie can we change chaincode by hand if we want to?
Sorry for the naive question, haven't used Composer much yet
@ardashev120101 "chaincode" in Composer is written as Javascript functions. You can do whatever you need with those functions.
You cannot call Go code if that is what you are asking.
can we use chaincode event in composer? i.e. ChaincodeStubInterface.setEvent()
@dselman thanks for the clarification. when I go inside the container where the code is deployed, I can see some binary data which I was assuming that is the equivalent of ethereum bytecode. is that binery data generated from the js functions?
so that I would know whether a tx succeed or failed immediately by listening to the event
@xixuejia no, we have not exposed this yet through the composer-runtime APIs. We have an open story for this: https://github.com/fabric-composer/fabric-composer/issues/66
We will work on this once we finish the port for HL v1
that's great! thanks for your answer
@dselman, what I am trying to do is use composer to generate the 'chaincode' but for diagnostic be able to manually load the bytecode e.g:
CORE_CHAINCODE_ID_NAME=mycc CORE_PEER_ADDRESS=localhost:7051 ./
@ayoub as I said, we do not statically compile business network definitions to Go chaincode. We have a generic Go chaincode that interprets the JS functions and metadata in the business network definition. Please refer to StackOverflow (fabric-composer) tag for more details.
thanks @dselman. found the SO reference here: http://stackoverflow.com/questions/42419054/is-it-possible-to-see-the-chain-code-that-is-generated-by-fabric-composer/42421974#42421974
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=2zquWQjrTsZEvgBcz) @dselman Since in Fabric v1.0 CouchDB is optional for the state database, with the default being levelDB, does your statement imply that it would be necessary to choose the CouchDB option if one wants to use Composer, or could Composer be used with the default levelDB (perhaps with limited functionality, e.g.)
That's one for @sstone1 or @davidkel who are working on the port.
@silliman composer has no direct dependency on CouchDB, so it would depend on whether fabric itself had restrictions on which persistence technology was used.
Has joined the channel.
@davidkel ok thanks! My understanding at this point is that the main benefit of CouchDB over levelDB is that non-key content queries are supported in the former but not the latter. (It's quite possible there are other benefits I'm not aware of)
@silliman we will likely require the use of CouchDB for complex query support, which we are planning once we get v1.0 support out of the door.
e.g. "find me all the assets which are blue and owned by someone who lives in the UK"
it's great to see a project like composer
O
I've been out of the loop for a about two months and I just thought I got a good handle of the new CouchDB interface
and now there's a new development framework
and another learning curve ... ;-)
I'd like to report a 404 link that points to: https://fabric-composer.github.io/jsdoc/develop/index.html
the link is on https://fabric-composer.github.io/overview/overview.html and it's supposed to point to the JS APIs resource
thanks
what is the correct URL for the JS APIs docs ?
https://fabric-composer.github.io/jsdoc/index.html
thanks
ok so I digested the https://fabric-composer.github.io docs
and it sounds like a good idea to me.
two questions
what is the concerto language
I didn't see a note on Query capabilities
I didn't see a note/example on Query capabilities
I assume the current data model is based on the shim.table structures
which is part of the key-value store
Concerto is the old codename for Composer -- so this refers to the Composer Modeling Language, used to specify the structure and relationships between assets/participants/transactions. Do you have the link where it mentioned Concerto?
We have not yet implemented queries. The story for that is here: https://github.com/fabric-composer/fabric-composer/issues/67 We are porting to v1 first and will then evaluate how to map those to CouchDB.
Correct, in v0.6 we use tables.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=xbXgC7LK88WAegGcp) @sstone1 right... I suspect there's some terminology fuzziness and that I've seen "non-key content query, complex query and rich content query" being used to describe the same thing w.r.t. the additional feature of CouchDB compared to levelDB
I see 5 occurrences here: https://fabric-composer.github.io/reference/glossary.html
well as far as couchDB goes - it should be easier
it will assume a schema-free DB engine
so clients are creating JSON documents
and then using the /_find CouchDB API endpoint to query
obviously the query transaction will not be writing anything to the state DB
my biggest concern here is that the blockchain itself becomes a wrapper around a CouchDB instance
since CouchDB is running as a stand-alone process
what happens if someone hacks into a node and then hacks into the CouchDB server
that practically exposes the entire world state
and defeats the purpose of running a blockchain
and defeats the purpose of running a blockchain (to a certain extent)
@dselman when would you want to model an asset of assets vs an asset of transactions? For example the car auction of VehicleListing had Offer[] which was a transaction to add to asset....could VehicleListing just have a relationship to an array of Offer assets? Is there something tracked or available via query that I should be considering when I create my model?
One factor: one is "owned" by an asset, so deleting the asset, deletes all the contained assets/transactions while the other references them (so deleting the parent does not delete the referenced assets/transactions).
Assets that are not stored in a registry cannot be referenced by other assets or transactions.
Assets that are not stored in a registry (top-level) cannot be referenced by other assets or transactions.
Assets in a registry can have their own lifecycle transactions quite easily. E.g. an Order asset may have a Purchase transaction with a relationship to the Order.
Think I follow your 1st and 3rd statements...but on the 2nd...when is an Asset not stored in a registry?
And back to the VechicleListing...if you wanted to remove an Offer from a VechicleListing could I do that by updating the VechileListing asset or would I have to have another transaction to do that? Seems like I would be able to send in a REST update to the asset easy enough changing the whole structure of it....I think
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=RyFj75ZoMyFeQviSd) @jdockter When it is embedded in another asset for example. We may prevents that in the future, so I wouldn't do that.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=pF3Et2cjg8Mq6uj6u) @jdockter either would work. The TX may be faster (partial updates) and is more flexible in terms of running functions on the server side when an update occurs.
@dselman - For the car auction; if the Offer (transaction) was a complex bid object (versus simple Double of bidPrice). For purposes of discussion lets say the complex object was a List of bids with a given bid say having a bidPrice and a bidDate. How would you suggest modeling that List of builds within the Offer transaction?
Has joined the channel.
Intention that a given User performing the Offer transaction at a specific moment in time is entering some type of complex object. Is something where the Bid could be a Concept (bidPrice and bidDate), and the Offer transaction would have a list of Bids? Or maybe Bid is a concept that has a list of BidDetails (bidPrice & bidDate) concepts... so the Offer transaction has a Bid which it a list of BidDetails?
@klorenz I think I'd make Bid a concept and then make Offer a transaction, something like:
```
concept Bid {
o Double bidPrice
o DateTime bidDate
}
transaction Offer identified by transactionId {
o String transactionId
o Bid[] bids
}
```
can anyone comment on the security risks associated with running a stand-alone CouchDB instance
is it possible to lock down access to the DB engine so that read/write access can happen ONLY via the blockchain mechanisms?
@MartinMateev that sounds like a question for #fabric
thanks I will ask around
Hi, I noticed the Swagger generation includes Delete and Update operations for "transactions", and these don't work - I suspect by-design. Can someone confirm that they shouldn't work?
@sstone1 is working on getting those removed from the Swagger -- because transactions are append-only to the transaction registry.
@dselman - thanks :)
Has joined the channel.
npm install on ubuntu
2017-03-07T10:31:35.346Z ERROR HFCUtil :deployChainCode() onError {"0":"timed out waiting for transaction to complete"}$
following these instructions https://fabric-composer.github.io/start/quickstart.html
It stuck there for a while Deploying business network definition. This may take a minute...
and then timed out waiting for transaction to complete
Hello @AbhilekhSingh can you issue the `docker ps` command to see if the Hyperledger Fabric has started?
ubuntu@ip-172-31-31-186:~/go/fabric-composer/sample-applications/packages/getting-started$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
398e8a7ac5e9 hyperledger/fabric-peer "sh -c 'sleep 5; peer" 5 minutes ago Up 5 minutes 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1
ubuntu@ip-172-31-31-186:~/go/fabric-composer/sample-applications/packages/getting-started$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
398e8a7ac5e9 hyperledger/fabric-peer "sh -c 'sleep 5; peer" 5 minutes ago Up 5 minutes 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1
28eb26fa8a0b hyperledger/fabric-membersrvc "membersrvc" 5 minutes ago Up 5 minutes 0.0.0.0:7054->7054/tcp scripts_membersrvc_1
It started 2 containers scripts_vp0_1, scripts_membersrvc_1 peer and memberservice
ok that's good; it might be worth looking at the logs in the fabric-peer container `docker logs 398e8a7ac5e9 ` to see if there are any errors.
there was a similar discussion A few days along on this channel that includes some details on solving this.
2017-03-07 10:49:02.621 UTC [eventhub_producer] Chat -> ERRO 2ca Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
I only see this
I'd suggest issuing the `npm run teardownHLF` to clear out the running instances and trying again...
I will try this
But I tried killing and starting agin for 3-4 times
still the issue is same
mm I'll ask around..
Message Attachments
I attached the logs also
Thanks
Hi - my `npm install` script is still getting stuck at `while ! nc localhost 7051
`docker ps` shows that two containers have started up.
But when I run `sudo lsof -iTCP -sTCP:LISTEN` I see that there is nothing listening on any 7501
`docker logs` doesn't show any error messages.
Is there anywhere else I could look to find the problem, or does anyone have copy of the output from `docker logs` that I could compare with.
@kosullivan interesting idea about comparing the docker logs for comparison terms.. I'll load up a clean system
and see about capturing them
I see ye node version was 4.x
it required 6.x
but after upgrading
Written Business Network Definition Archive file to digitalPropertyNetwork.bna
Command completed successfully.
Deploying business network from archive digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.1
Description: Digital Property Network
Error: Failed to load connector module "composer-connector-hlf" for connection profile "defaultProfile"
Command failed.
@AbhilekhSingh Try globally installing composer-cli again
Then remove the getting started node_modules and try `npm install` again
There is a typo in the doc: https://fabric-composer.github.io/reference/MeetTheModules.html
instgall => install :grinning:
@Jakeeyturner I did that
but still same issue
ubuntu@ip-172-31-31-186:~/go/fabric-composer/sample-applications/packages/getting-started$ cat $HOME/.composer-connection-profiles/defaultProfile/connection.json
{
"type": "hlf",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7053",
"keyValStore": "/home/ubuntu/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}
@kosullivan FYI the logs from a run of GettingStarted https://github.com/mbwhite/documents/tree/master/Fabric-Composer/getting-started
:thumbsup:
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=cSGgJa7Zaoa2rAnWj) @dselman Also, looking at your BondAsset example, by using a Bond concept do you avoid error handling of previously created BondAssets when subsequent fields have been added?
Has joined the channel.
hi, not sure I got this right but it seems to me that the blockchain data can be modified by the chaincode ran in an external nodejs client or by the chaincode deployed with the network and executed in a transaction processor function context by a blockchain peer
if this is true, what is the reason of making it possible to have the chaincode API available in a client environment, I thought only the network peers are suppose to run it
@uber.twin I think you are referring to our ability to run our runtime and the JavaScript transaction processor functions outside of a Blockchain?
When you do this, we are simulating a blockchain in Node.js. There is no interaction with a real blockchain.
There are two reasons for this.
1) It enables us to run the runtime and JavaScript transaction processor functions in a web browser, allowing users to learn Fabric Composer and rapidly model/test their business network from our web playground without having to stand up a real Hyperledger Fabric network.
(http://fabric-composer.mybluemix.net/editor if you haven't seen it)
2) It enables us to run the runtime and JavaScript transaction processor functions in Node.js. This allows users to write and automate unit tests for a business network using any standard JavaScript unit testing tools, for example Mocha and Chai.
(https://github.com/fabric-composer/sample-networks/blob/master/packages/Sample-Network/test/Sample.js as an example)
When you are running with a real Hyperledger Fabric instance, our runtime and the JavaScript transaction processor functions run on the blockchain and can modify the blockchain data - but that's the only place that blockchain data can be modified.
I was experimenting with the Getting Started setup and the routines in the landRegistry.js seem to populate the blockchain data and update it too
and those seem to be ran in an external nodejs env
This file?
https://github.com/fabric-composer/sample-applications/blob/master/packages/getting-started/lib/landRegistry.js
yes
That code is using our client APIs to perform CRUD operations on assets/participants and submit transactions to a deployed business network.
All CRUD operations result in Hyperledger Fabric transactions that invoke our runtime on the blockchain.
than isn't it the same API used to write transaction processor function?
We have a client API and a runtime API. They are intentionally very similar ;)
https://fabric-composer.github.io/jsdoc/module-composer-client.html (`composer-client` docs)
https://fabric-composer.github.io/jsdoc/module-composer-client.html (composer-client docs)
https://fabric-composer.github.io/jsdoc/module-composer-runtime.html
https://fabric-composer.github.io/jsdoc/module-composer-runtime.html (composer-runtime docs)
extremely powerful Client API:)
ok, it seemed strange because other blockchain implementation appear to expose only a RPC style interface for the clients
thank you for clarifying it
The client API provides a layer of abstraction on top of the Hyperledger Fabric RPC style APIs; the client API is just calling the `hfc` library under the covers.
No problem
sure, I thought the code gets submitted to peers eventually
is there another, possibly standard setup, apart from the Getting Started environment, to be used for a fresh project?
We don't currently have a `yo` generator for a skeleton business network project, and we probably should.
The simplest business network definition project is here: https://github.com/fabric-composer/sample-networks/tree/master/packages/Sample-Network
It does not have any of the automation that the Getting Started project has for standing up Hyperledger Fabric, but I think once you move past Getting Started you really need to be able to stand up your own Hyperledger Fabric instance.
The Getting Started project also makes use of the Composer CLI for deploying business networks: `composer network deploy`
Also, you might like to try standing up the Composer UI locally for developing and testing a business network. Unlike the version on Bluemix, a local version can connect to a real Hyperledger Fabric instance.
The instructions for that are here: https://fabric-composer.github.io/start/getting-started-playground.html
The docker-compose.yml on that page will create a v0.6 fabric for the UI to use.
ok, I'll look at it
Composer UI runs the same Client API as the Getting Started app or is based on a RPC interface?
Has joined the channel.
Composer UI uses the `composer-client` APIs under the covers
so the only way to interface with the fabric composer network is a nodejs env, right?
Nope, you can use the REST APIs as an alternative to the Node.js APIs.
could you please give me a reference in this direction?
https://fabric-composer.github.io/start/getting-started-rest-api.html
but this REST API is still intermeiated by a nodejs server, isn't it?
*intermediated
or is it provider directly, by a network peer?
*provided
Correct, the REST API uses the LoopBack framework which is an open-source Node.js application for generating REST APIs from backend systems such as databases (and blockchains!)
ok, thank you again:)
np
Where does the Fabric Composer ~playground~ web interface save the source files?
It looks like the files get lost when I restart docker.
Has joined the channel.
@pards the data is currently stored in the world state on the blockchain
the source code, too?
yep
The new playground experience has an import/export feature, so you'll be able to get the source code out of the browser.
We also need to get the web browser to persist the source somewhere other than the blockchain ;)
Ok, but to use Git I'll need to build the code in Atom
Good to know
Just want to make sure I'm thinking about this correctly...if I create an asset, lets say via the composer ui/playground, via a json structure underneath the covers that is a put to a tablein the HL world state and thus creates a blockchain transaction, correct?
Just want to make sure I'm thinking about this correctly...if I create an asset, lets say via the composer ui/playground, via a json structure, underneath the covers that is a put to a tablein the HL world state and thus creates a blockchain transaction, correct?
Just want to make sure I'm thinking about this correctly...if I create an asset, lets say via the composer ui/playground, via a json structure, underneath the covers that is a put to a table in the HL world state and thus creates a blockchain transaction, correct?
guess that same would apply for a REST API POST for a specific asset...or I guess even a participant as that is also a table in the world state
correct
Another set of questions...when do relationships get enforced, ie transaction only? and why would I want a relationship to go both ways, ie asset 1 has a relationship to asset 2, and asset 2 has a relationship back to asset 1?
You can use the Hyperledger Fabric Explorer to see the blockchain transactions
yeah I got it up.....I see all kinds of blocks...but wasn't sure if each was it's own transaction
seems like each block has 1 transaction
If you look at the contents you'll see Base64 encoded JSON for the assets you are creating/updating or the transactions you are submitting
Composer doesn't enforce referential integrity for relationships per se -- all it does it attempt to resolve the relationships for an incoming transaction (so that the JS code doesn't need to resolve manually).
For some reason I thought that a block could have more than one transaction logged against it
It can -- I think it's a Fabric config property.
Yeah; if you submit enough Composer transactions in a short period of time, they'll be batched up into blocks.
Click quicker @jdockter ;)
ha okay
So maybe a dumb question...but if a REST APIs creates blockchain transactions via a put to the world state...then why would I need a composer transaction?
REST APIs for assets that is
Transactions let you run logic on the ledger... logic that is shared across all business network participants. This is much more powerful than clients just performing CRUD operations.
e.g. see the Car Auction example when it processes the CloseBidding transaction.
yup okay, thanks
Has joined the channel.
Installed the Fabric Composer Playground using Docker images and instructions. No errors and images appear to be up. Tried localhost_
Localhost:8080 did not work
Has joined the channel.
Hello
I ran this command $ composer network deploy --archiveFile DigitalLandTitle.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
Message Attachments
@mohamoud.egal most likely explanation is that you did not run `npm install composer-cli -g`
@DennisM330 please run `docker ps -a` and paste the results here.
Is there a way to set some initial data in the archive file or write JS code triggered only at the first run?
Has joined the channel.
@xuanyue202 We've got an issue here https://github.com/fabric-composer/fabric-composer/issues/46 which addresses the ability to bootstrap the business network with assets, participants and transactions
@Jakeeyturner Thanks. This is helpful
@xuanyue202 something you can do today is to mode a `Setup` transaction and then write a TX processor function that creates your sample data when `Setup` is submitted.
@xuanyue202 something you can do today is to model a `Setup` transaction and then write a TX processor function that creates your sample data when `Setup` is submitted.
hi, when I do "lerna bootstrap" on the sample-network project, it complains the specs require an older lerna version
isn't it suppose to be backward compatible?
can I just change the compliancy level in sample-networks/lerna.json from "2.0.0-beta.32" to "2.0.0-beta.38"?
@EdMoffatt the new website homepage looks great. Thanks!
Message Attachments
is it possible to have the *.cto files organized in a directory hierarchy consistent with their namespace?
Yes, you can organize them how you like -- we don't enforce a file naming or hierarchy convention.
The BusinessNetworkDefinition.fromDirectory method will look for all .cto files under the models/ directory (recursive)
alright, thank you
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=34kzbGSJ4SvR28b5c) @uber.twin you can. We've not updated because we see a performance regression with beta.38
yes, I've just confirmed it works
Has joined the channel.
@dselman I issued an identity from the composer ui but some how managed to lose the pop up screen with the secret...what container and what file would I look in to find that identity secret?
@jdockter I don't know if it's possible to get the secret back in that case
I think if you try a HLF register again, you'll get the same secret back, but if you try that via Composer we'll throw an error as the identity has already been issued to a participant.
@delmandocker-compose up -d
Starting blockchainfabriccomposer_membersrvc_1
Starting blockchainfabriccomposer_vp0_1
Starting blockchainfabriccomposer_composer_1
MacBook-Pro-2:blockchain_fabric_composer drmiller$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
88e6195356eb hyperledger/fabric-peer:x86_64-0.6.1-preview "sh -c 'sleep 5; p..." 13 hours ago Up 9 seconds 0.0.0.0:7050-7053->7050-7053/tcp blockchainfabriccomposer_vp0_1
0902bfb35d8e hyperledger/fabric-membersrvc:x86_64-0.6.1-preview "membersrvc" 13 hours ago Up 10 seconds 0.0.0.0:7054->7054/tcp blockchainfabriccomposer_membersrvc_1
MacBook-Pro-2:blockchain_fabric_composer drmiller$
@dselman Appears my composer is not starting
@dselman Have you seen this error before?docker logs blockchainfabriccomposer_composer_1
Error: ENOSPC: no space left on device, mkdir '/home/composer/.pm2'
at Error (native)
at Object.fs.mkdirSync (fs.js:922:18)
at sync (/usr/local/lib/node_modules/pm2/node_modules/mkdirp/index.js:71:13)
at Function.sync (/usr/local/lib/node_modules/pm2/node_modules/mkdirp/index.js:77:24)
at Client.initFileStructure (/usr/local/lib/node_modules/pm2/lib/Client.js:128:14)
at new module.exports (/usr/local/lib/node_modules/pm2/lib/Client.js:37:8)
at new module.exports (/usr/local/lib/node_modules/pm2/lib/API.js:99:17)
at Object.
Error: ENOSPC: no space left on device
not enough space I guess
Yes, you need to allocate more space to Docker.
Message Attachments
Is there a tutorial for creating an application from scratch?
Is there a tutorial for creating a Fabric Composer application from scratch?
I created an application using the yeoman generator but `npm install` fails because the module isn't published
I created an application using the yeoman generator but `npm install` fails because the node module isn't published
What am I missing?
@pards "The missing Fabric Reference"
: ))
lol
Fabric Composer for Dummies, perhaps.
https://hyperledger-fabric.readthedocs.io/en/latest/asset_setup.html
I tried this last night and it worked as advertised
it also depends if you are looking to integrate a regular web app or some kind of a server side tools
you can choose GO interface or JS
I'm doing a web app so I'm going for the JS SDK
It'll be a webapp
That link is for Fabric, not Fabric _Composer_
oh I see
I just re-read my initial question and realised that I didn't specify
I decided to wait on the composer unitl there's couchDB support
https://fabric-composer.github.io/start/quickstart.html
there's a sample application
@pards ...several areas that I've found as resources...sounds like you might have already found the first here, https://fabric-composer.github.io/tasks/genapp.html ...second would be here, https://fabric-composer.github.io/start/getting-started-nodejs-app.html and last would be example code from the car auction here, https://github.com/fabric-composer/sample-networks/blob/master/packages/CarAuction-Network/test/CarAuction.js
I think I get it now.
So the Network and the Models are supposed to be separate npm modules, in separate directories?
i.e. https://github.com/fabric-composer/sample-models/
https://github.com/fabric-composer/sample-networks
@pards we support 3 different modes of operation, depending on DevOps sophisticated and need for reuse: 1. simply put the models under the modles/ folder and JS functions under lib/ inside the application folder. 2. Move the business network into its own npm module and publish to npm for consumption by applications. 3. Move the model(s) into their own npm modules for consumption by business networks.
@pards we support 3 different modes of operation, depending on DevOps sophistication and need for reuse: 1. simply put the models under the modles/ folder and JS functions under lib/ inside the application folder. 2. Move the business network into its own npm module and publish to npm for consumption by applications. 3. Move the model(s) into their own npm modules for consumption by business networks.
You'll see a mix of these approaches I think across our samples
(1) is quick and dirty frankly -- and binds the business network definition to a single consuming application. (2) allows the business network definition to be shared across multiple apps. (3) Takes it a step further and allows models to be shared across business networks.
And the Yeoman generator creates and _application_, not a _business network definition_, right?
And the Yeoman generator creates an _application_, not a _business network definition_, right?
@delman Got the Playground to work on the Mac Sierra O/S Used the Docker Community Edition: Hope these versions are OK?docker -v
Docker version 17.03.0-ce, build 60ccb22
docker-compose -v
docker-compose version 1.11.2, build dfed245
correct
is there an example showing how to add a new participant, similar to the WebAppAdmin?
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=MuRuKP4vFtFJWAWyg) @pards it seems like the generator package.json assumes it's published...many built in scripts in that file...so might want to just customize to your dev environment...the generated index.js has lots of goodness in it :)
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=LQPgbAMTYMSAgzLsF) @uber.twin does this help, https://fabric-composer.github.io/tasks/participant-add.html
and https://fabric-composer.github.io/tasks/identity-issue.html
@dselman ran npm install composer-cli -g and then ran the command again still no change.
@jdockter yes, thank you
can't see how the WebAppAdmin participant was added though in the getting started application
is this some kind of preexisting root participant?
Yes, it's my understanding it's pre-registered in the member services of HLF
are the fabric-composer images for the regular peers and the membership validator peer, just the same as their corresponding counterpart from a basic fabric runtime?
or the fabric-composer peers run extra layers of the protocol?
and if they are not exactly the same is there a reference regarding how to build each type of fabric-composer peer?
@uber.twin they are the same (pulled from DockerHub)
alright, thank you
Has joined the channel.
the getting started app doesn't seem to declare a dedicated orderer peer; is this because it isn't necessary for a one peer network or the ordering service is integrated within the regular peer?
Remembering that currently Fabric Composer is based upon Hyperledger Fabric v0.6, our getting started will bring up a single peer and memberservice
So yes, the ordering service is part of this one peer
thank you for clarifying it for me
No worries
@mbwhite - with regards to my docker not starting on Mac problem over last few days - it turns out it was because I had "Docker Toolbox" installed as opposed to "Docker for Mac". I installed Docker for Mac, and it has now started working. https://docs.docker.com/docker-for-mac/docker-toolbox/ - hope this helps anyone else who runs into same issue.
thank you for the feedback - one to add to the prereqs guide I think!
If anybody does find issues like this then please do feel free to raise a Stackoverflow question to capture the knowledge for others. There is a fabric-composer tag created
This issue is already there: http://stackoverflow.com/questions/42583176/getting-started-fabric-composer-on-mac-error-starting-fabric-or-error-deploy/42676159#42676159
This issue is already there: http://stackoverflow.com/questions/42583176/getting-started-fabric-composer-on-mac-error-starting-fabric-or-error-deploy
great thanks :-)
Has joined the channel.
```fabric@fabric-composer:~/sec-ref-data$ composer archive create --sourceType dir --sourceName . -a ./dist/bus-network.bna
Creating Business Network Archive
undefined
About to do the required
Unable to locate the npm moodule specified
composer archive create [options]
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--archiveFile, -a Business network archive file name. Default is based on the Identifier of the BusinessNetwork [string]
--inputDir, -d Location to create the archive from e.g. NPM module directory
--moduleName, -m Name of the npm module to use
Only one of either inputDir or moduleName must be specified.
Cannot read property 'substring' of undefined
```
I'd appreciate any help on what moodule I'm missing
I'd appreciate any help on which moodule [sic] I'm missing
I'm trying to create a Fabric Composer business network with models, from scratch.
`composer archive create --sourceType dir --sourceName .`
Same error
What's the minimum package.json?
mmm, maybe name and version
```"devDependencies": {
"composer-admin": "*",
"composer-cli": "*",
"composer-client": "*",
"composer-connector-embedded": "*"
}```
I want to build a business network with models, from scratch rather than copying a sample, so that I understand how all the pieces work.
I'm failing dismally thus far
the very very basic is a project with a lib directory, which has your transaction logic, then a model directory, which has your cto file, and a package.json at the root of that project directory
yep
is the lib dir required?
I've always had it
I took everything out of my package.json except name, version, description and my bna built
need to run the composer archive create at the project base directory
I got it to work by using
`composer archive create --sourceType dir -d .`
okay great...just out of curiosity, when you type `npm list composer-cli -g` what do you get back
`npm list composer-cli -g``
`└── composer-cli@0.4.1 `
okay I'm at `composer-cli@0.4.5` so maybe slightly different in the commands...check out this SO post, http://stackoverflow.com/questions/42555280/running-the-getting-started-fabric-composer-gets-error-with-composer-archive-c
When running the composer-rest-server a ton of operations are available at different levels of each asset, participant, and transaction...it does not seem like all operations are available...is there any type of list or document of what we can do currently and what is being planning for the future?
I'm at `composer-rest-server@0.4.5`
@jdockter a change has gone into 0.4.6/0.5.0 that will cut down the amount of REST API operations, see last comment in https://github.com/fabric-composer/fabric-composer/issues/200
ah...nice...thanks
assuming 0.4.6 will be released Friday?
should be yeah
ok thanks
the list shows PUT by ID for participants ...today I get an error like this, The connector businessnetworkconnector does not support replaceById operation. This is not a bug in LoopBack. Please contact the authors of the connector, preferably via GitHub issues....so in 0.4.6 that is going to work?
not sure, will check it out ;)
Has joined the channel.
Has joined the channel.
With docker-composer we are able of develop the business logic of a smart contract in Javascript. Is fabric-composer translating this smart contract to golang?
@agaragiola Fabric Composer uses a JavaScript interpreter for Go called Otto that interprets the JavaScript business logic. There is no Go code generation.
thank you @sstone1
@dselman got it.
Has joined the channel.
Hi guys. I have to trouble.
I build application using _fabric-composer_.
and Input data with “duplicated key” send it.
Then application is waiting until timeout without “catch for chaincode errors”.
I want to catch error with node.js when chaincode caused error.
How to do that.
Message Attachments
Message Attachments
@tarima are you wondering how you get the actual error, rather than the "timed out" error?
In Hyperledger Fabric v0.6 you cannot get the actual error from the chaincode, all you get is "timed out waiting for transaction". This has been fixed in Hyperledger Fabric v1.0, and we are currently working on support for that in Fabric Composer.
Has joined the channel.
@jdockter relevant to your interests: https://github.com/fabric-composer/fabric-composer/issues/402
@sstone1 do you have a fix for that Simon or shall I take a look?
already fixed and PR build running ;)
noice!
Has joined the channel.
@here we will be holding a meeting next Thursday (16th March 2017) at 4pm UTC (4pm UK, 11am ET, 8am PT) which is open to *everybody*. An initial agenda has been published here: https://github.com/fabric-composer/fabric-composer/wiki/Meeting-16th-March-2017
The dial in and online meeting details will follow soon.
We would appreciate any suggestions you might have for the agenda.
I am also setting up a "Introduction to Composer" session that will likely run in the week commencing the 20th.
@here we will be holding a meeting next Thursday (16th March 2017) at 4pm UTC (4pm UK, 11am ET, 8am PT) which is open to *everybody*. An initial agenda has been published here: https://github.com/fabric-composer/fabric-composer/wiki/Meeting-16th-March-2017
The dial in and online meeting details will follow soon.
We would appreciate any suggestions you might have for the agenda.
I am also setting up a "Introduction to Fabric Composer" session that will likely run in the week commencing the 20th.
@here we will be holding a meeting next Thursday (16th March 2017) at 4pm UTC (4pm UK, 11am ET, 8am PT) which is open to *everybody*. An initial agenda has been published here: https://github.com/fabric-composer/fabric-composer/wiki/Meeting-16th-March-2017
We would appreciate any suggestions you might have for the agenda.
I am also setting up a "Introduction to Fabric Composer" session that will likely run in the week commencing the 20th.
The Introduction to Fabric Composer session will run on the following Thursday (23rd March 2017) at 4pm UTC (4pm UK, 11am ET, 8am PT). The agenda has been published here: https://github.com/fabric-composer/fabric-composer/wiki/Meeting-23rd-March-2017
All meetings will be recorded and posted online for those that cannot make it.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hello, just joined, please kindly let me where I can find guide how to find logs of deployed network and composer itself
Has joined the channel.
Has joined the channel.
@aaron_z7 if you run `docker ps -a` you should see 3 running docker containers. One of the docker contains will be the chaincode container (where the Composer runtime is executing your logic). It has a generated name something like: `dev-vp0-4968dea9e3a69670235d9283859801ab5df6f18398f15711d6f5426123955f9f` Look for its container id, and then run `docker logs
You can follow the logs using `docker logs -f`
If you are on the Mac you can also view the logs using the Kitematic GUI.
Fabric Composer log entries are tagged with `[Concerto]` (the old codename)
great, thanks, I am using ubuntu
Has joined the channel.
Has left the channel.
@aaron_z7 for posterity: http://stackoverflow.com/questions/42695751/how-do-i-see-the-logs-for-fabric-composer/42695761#42695761
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Is the Fabric Composer Application API available in any languages other than JavaScript?
no
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=crerucKYeiDJJwzDr) @sstone1 Thank you for answer. I didn't know that. I rebuild application architecture.
@pards but you can generate client SDKs in a wide range of languages from the `composer-rest-server` using something called `swagger-codegen` if you want :)
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=QBPY7XXn2A7xrQX4u) @sstone1 Thanks, appreciate the update
question...so for participants...the details of an individual user, is that really something we want on the blockchain...or do we just want to user participant as a role which can be leveraged in the ACL...and then the CA has the actual identity and secret , with ECert and TCerts under the covers?
Has joined the channel.
Hi all! Just wanted to say, very interesting project here! Really happy to see that Fabric has such an option in the works!
Thank you!
Message Attachments
Hi - after running fabric (via `npm install` in getting-started folder), what should I get when I open 127.0.0.1:7050 ?
I get this:
```$ curl 127.0.0.1:7050
{"Error":"Openchain endpoint not found."}```
Is that expected? I ask because I'm trying to get blockchain explorer to run, and I'm getting a `ECONNREFUSED 127.0.0.1:7050` error
@sstone1 how long will the meeting be? 1 hour?
@VipinB yes, it will be one hour - I will update the meeting information!
@mohamoud.egal the error states that you haven't deployed a business network. Are you following the "Generating a REST API" page? If so, you must run through the previous tutorial: https://fabric-composer.github.io/start/getting-started-cmd-line.html
@kosullivan this looks like a question for #fabric rather than this channel
Or maybe #blockchain-explorer
Has joined the channel.
Has joined the channel.
We plan to cut a 0.5.0 release tomorrow (Friday). We have modified the grammar for ACLs (breaking change) -- the sample networks have already been updated to reflect the new grammar.
Here is an example: https://github.com/fabric-composer/sample-networks/blob/master/packages/CarAuction-Network/permissions.acl
We believe the new grammar will be easier to edit by hand, easier to understand, and more aligned with the ACL editor that we will be developing in the coming weeks.
hey guys, I can't deploy a business network locally anymore- it looks like the `latest` tag for `hyperledger/fabric-baseimage` has been deleted from Dockerhub. What should I do about this?
well, I just downloaded `x86_64-0.3.0` and tagged it as `latest` and that seems fine for now but probably someone should look into that
Message Attachments
I also launched HL
Has joined the channel.
@pospi there has never been a `latest` tag for `hyperledger/fabric-baseimage` - the reason is that the base image needs to be matched to the version & architecture of the peer. All of the Composer docs/scripts that create Fabric instances run the following commands:
` ``
docker pull hyperledger/fabric-baseimage:x86_64-0.1.0
docker tag hyperledger/fabric-baseimage:x86_64-0.1.0 hyperledger/fabric-baseimage:latest
```
@pospi there has never been a `latest` tag for `hyperledger/fabric-baseimage` - the reason is that the base image needs to be matched to the version & architecture of the peer. All of the Composer docs/scripts that create Fabric instances run the following commands:
```
docker pull hyperledger/fabric-baseimage:x86_64-0.1.0
docker tag hyperledger/fabric-baseimage:x86_64-0.1.0 hyperledger/fabric-baseimage:latest
```
@mohamoud.egal did you rerun the failing commands from before after you ran the network deploy? Does it work now?
righto thanks @sstone1
Has joined the channel.
hi, sorry to bother you with setup issues, I realize this is a nodejs related confusion I got
somehow I managed to break my dev env such as the "composer archive create" didn't work anymore because it could not resolve the "digitalproperty-network" module anymore
I tried to re-clone the sample-applications repository and start fresh but I was getting the same error
it started to work again after re-runing "npm install -g composer-cli"
could anybody clarify for me what happened, what could be the reason for "composer-cli" stop working?
Hard to say... Obviously it would stop working if you ran `npm uninstall composer-cli -g` or if you deleted the install directory for globally installed npm modules.
thanks, you got me to finally realize what happened: before installing the fabric-composer first time, I had a noderc "prefix" property declaration:
prefix=/home/pg/.node_modules_global
than I removed it, so I guess all packages installed at that location are not available anymore
talking about modules location, is it required that all local modules to be found under the node_modules directory?
it would be handy to be able to have the modules implementing the application functionality separated of the multitude of dependency modules
Has joined the channel.
If I have 3 script files that has dependency relationships, can I specify the consequence of the scripts that are loaded into transaction Function? I ask this because I want to distribute the logic into multiple files but often get "variable XXX not defined"
hi, is there a tutorial on creating a new fabric composer network?
I've tried something like below
composer archive create --sourceName my-core-network --sourceType module --archiveFile myCoreNetwork.bna
but I obviously have no clue:
pg@pg-GL552JX:~/workspace/sample-applications/packages/getting-started$ composer archive create --sourceName my-core-network --sourceType module --archiveFile myCoreNetwork.bna
Creating Business Network Archive
Node module search path :
/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript
Not found in main node_module search path, trying current directory :/home/pg/workspace/sample-applications/packages/getting-started/node_modules/my-core-network
Looking for package.json of Business Network Definition in /home/pg/workspace/sample-applications/packages/getting-started/node_modules/my-core-network
composer archive create --archiveFile digitialPropertyNetwork.zip --sourceType module --sourceName digitalproperty-network
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--archiveFile, -a Business network archive file name. Default is based on the Identifier of the BusinessNetwork [string]
--sourceType, -t The type of the input containg the files used to create the archive [ module | dir ] [required]
--sourceName, -n The Location to create the archive from e.g. NPM module directory or Name of the npm module to use [required]
Cannot read property 'name' of null
do I need to publish my node modules first?
Hello - there is https://fabric-composer.github.io/start/getting-started-coding-bnd.html
though I would go through https://fabric-composer.github.io/start/getting-started-cmd-line.html first.
When you say you are trying to create a new network have you got a model file created?
Has joined the channel.
I've created two directory structures: my-core-model and my-core-network following the digitalproperty-model and digitalproperty-network templates
than I tried to run "composer archive create --sourceName my-core-network --sourceType module --archiveFile myCoreNetwork.bna"
I created them manually, by duplicating the stated existing modules( digitalproperty-model and digitalproperty-network) and than editing the package.json
this is my first encounter with node so I don't know what I am doing really
do this newly added modules need to be registered with the npm registry?
in order for composer to be able to resolve them
They don't need to be added to the npm registry; as you are inside your new business network, you can use the following command.
`composer archive create --sourceName . --sourceType dir --archiveFile myCoreNetwork.bna`
do you have the model and network in a different node projects?
or are they in the same model?
Has joined the channel.
What you want to do is really in https://fabric-composer.github.io/start/getting-started-coding-bnd.html
Is fabric composer compatible with V1
separate modules, just as digitalproperty-model and digitalproperty-network, but under the same "sample-applications/packages/getting-started/node_modules/" hierarchy
of HyperLedger
I get the same output:
pg@pg-GL552JX:~/workspace/sample-applications/packages/getting-started/node_modules/my-core-network$ composer archive create --sourceName . --sourceType dir --archiveFile myCoreNetwork.bna
Creating Business Network Archive
Looking for package.json of Business Network Definition in /home/pg/workspace/sample-applications/packages/getting-started/node_modules/my-core-network
composer archive create --archiveFile digitialPropertyNetwork.zip --sourceType module --sourceName digitalproperty-network
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--archiveFile, -a Business network archive file name. Default is based on the Identifier of the BusinessNetwork [string]
--sourceType, -t The type of the input containg the files used to create the archive [ module | dir ] [required]
--sourceName, -n The Location to create the archive from e.g. NPM module directory or Name of the npm module to use [required]
@raj work is underway on https://github.com/fabric-composer/fabric-composer/issues/62 - there's a online meeting next week that it's worth attending; you should get more info there.
thank you @mbwhite
@uber.twin are you developing within the node-modules directory... have you looked at the last webpage.. I would suggest going to a new directory in your home directory and follow the notes on that page.
That would help you I think
I should probably record a video on the next page to follow-on from the getting started.. should help
alright, thnak you I'll follow the instructions in there; Initially I thought I could just replicate the existing digitalproperty-model and digitalproperty-network and start from there
that doc does in effect that...
I suspect by doing work inside the node-modules directory would have confused npm;
is it relevant if one does "npm init" to create a new package compared to copying an existing package manually "specializing" it?
Has left the channel.
Has joined the channel.
Has joined the channel.
not particuarly... npm init helps you create a new one
@sstone1 I launched HL & deployed the network before I ran the command which gave me an error. And just to be sure I ran it again giving me the same error
Message Attachments
@sstone1 Here is the log file with the error and I checked to see if I had the right version of npm/node
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=Gyj8NWtncd4iRMXCn) @xuanyue202 Can you post an example? StackOverflow might be easier...
so for participants...the details of an individual user, is that really something we want on the blockchain...or do we just want to user participant as a role which can be leveraged in the ACL...and then the CA has the actual identity and secret , with ECert and TCerts under the covers?
Composer is flexible enough to handle both. It's really up to the business network to decide whether they want to use logical roles or actually certificates that tie to a physical person.
I can imagine use cases for both.
@mohamoud.egal can you paste in the copy of the file `~/.composer-connection-profiles/defaultProfile/connection.json` and the output of `docker ps -a`
We have released version v0.5.0 of Fabric Composer :beers:
You can check out the release notes here: https://github.com/fabric-composer/fabric-composer/releases/tag/v0.5.0
There has been a lot of work towards our new Composer Playground experience, which you can preview here: http://fabric-composer-next.mybluemix.net
We've made some updates to our REST API generation, to implement missing functionality and reduce the confusingly large number of REST API methods.
We've redesigned the ACL language so it's much easier to read and understand, and we have changed all our samples to reflect this.
We've published Atom and VSCode plugins to their respective marketplaces for syntax highlighting, validation, etc.
We've made some great progress towards Hyperledger Fabric v1.0 support, and we're getting close to getting all our system tests passing on v1.0.
Thanks to the team for all of their hard work, and thanks to the community for all of your valuable feedback - have a great weekend everybody!
Message Attachments
Message Attachments
@sstone1 here is the output
@mohamoud.egal in the `networks` section in the connection.json file, it should say `digitalproperty-network` not just `property-network` - any idea where the `property-network` came from?
Message Attachments
@sstone1
@mohamoud.egal OK I think I see the problem. You only have `property-network` deployed, but the REST API page relies on `digitalproperty-network` being deployed. I think you're just following the tutorials under "Getting Started" in order right?
You can follow the REST API page if you skip the `npm run listAssets` step (which relies on `digitalproperty-network`) and jump straight to the `composer-rest-server` steps. You must put in the correct business network identifier of `property-network` when asked though.
We'll look at getting the docs cleaned up for that
@sstone1 ok. Does it matter what directory I start the composer-rest-server command?
should I be in the property-network folder?
No, it shouldn't matter - the `composer-rest-server` uses the information in the connection profile to talk to the deployed business network.
@sstone1 so with the new playground...I see we can import a bna...do we need to recreate the bna with different ACL format?
getting 'Error: Expected "rule", comment, end of line or whitespace but "D" found. Line 4 column 1' error?
in general is there any other steps other than `npm install -g composer-cli` that we need to run to get to 0.5?
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=PQifY9vAmcXR8iyKk) @jdockter nm...looks like updating the rule format did the trick
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=PQifY9vAmcXR8iyKk) @sstone1 nm...looks like updating the rule format did the trick
`/**
* Sample access control list.
*/
rule Default {
description: "Allow all participants access to all resources"
participant: "ANY"
operation: ALL
resource: "xyz.namespace"
action: ALLOW
}`
```/**
* Sample access control list.
*/
rule Default {
description: "Allow all participants access to all resources"
participant: "ANY"
operation: ALL
resource: "xyz.namespace"
action: ALLOW
}```
Yes, the format of ACL rules has changed -- the principles remain the same.
@sstone1 the rest server prompts me for Fabric Connection Profile Name, Fabric username, secret. Where can I find this info?
The information is on the docs page for generating a REST API
```
? Enter your Fabric Connection Profile Name: defaultProfile
? Enter your Business Network Identifier : digitalproperty-network
? Enter your Fabric username : WebAppAdmin
? Enter your secret: DJY27pEnl16d
```
in your case you want `property-network` not `digitalproperty-network`
Message Attachments
@sstone1
Has joined the channel.
@mohamoud.egal as per my earlier message, we released 0.5.0 today. This is incompatible with the deployed version you have, 0.4.5. You either need to upgrade everything to 0.5.0 and redeploy the business network, or install an older version of `composer-rest-server` - the latter might be quicker (`npm install -g composer-rest-server@0.4.5`)
@mohamoud.egal as per my earlier message, we released 0.5.0 today. This is incompatible with the deployed version you have, 0.4.5. You either need to upgrade everything to 0.5.0 and redeploy the business network, or install an older version of `composer-rest-server` - the latter might be quicker ( `npm install -g composer-rest-server@0.4.5` )
@sstone1 it worked for V0.4.5
will update to 0.5.0 later
thanks again
Hi, I am trying getting-started. When I run "npm test", I get an error `error: [Composer-GettingStarted] Error: Deployed chain-code (0.5.0) is incompatible with client (0.4.5)` how can I update the client? (I removed composer-cli and did `npm install -g composer-cli` but the error still happens)
Actually, composer-client@0.5.0 is installed globally, but the local module under getting-started is composer-client@0.4.5.
howdy all
looks like a lot of work has been done on the docs and the repo since two weeks ago
@conroydave oh yes, the team is doing incredible work.
im working on getting the latest running
@EdProsser just join as a documentation writer, so expect even more goodness in that area over the coming weeks.
nice.
so does the fabric composer 'playground' assume you are already running on bluemix? or are logged in?
i get erros immediately when navigating to it
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=tgvFD8TaxTAkwATKg) @sachikoy can you please `rm -rf ./node_modules` and rerun `npm install`
i actually had that same error as sachikoy
@conroydave this is probably because you've used it before and have some incompatible data in local storage (https://github.com/fabric-composer/fabric-composer/issues/304)
If you are on FireFox you should open the Web Console and then type `localStorage.clear()`
And reload the page
We're working on detecting this automatically and recovering
yep cleared it and now it loads
:thumbsup:
ive done the rm rf /node modules and rebuilt
still experiencing same error as sachikoy
info: [Composer-GettingStarted] Adding default land titles to the asset registry
2017-03-11T09:37:16.733Z ERROR HFCConnection :ping() Version mismatch {"0":"0.4.5","1":"0.5.0","2":"^0.5.0"}$
error: [Composer-GettingStarted] Error: Deployed chain-code (0.5.0) is incompatible with client (0.4.5)
composer -v gives me .5 for all composer-*
you are in the gettingstarted dir?
yeah
ill keep pluggin away at it
did you `git pull` the `sample-application` to get the updates to gettingstarted?
Has joined the channel.
ok, I see the problem I think
yeah i even blew the repo away
that fixed it
looking at the package . json trying to force version there
updating package.json for the dependecies of composer-* to 0.5.0
https://github.com/fabric-composer/sample-applications/blob/master/packages/getting-started/package.json#L33-L34
Yes - I'll commit that now. Sorry, that slipped through...
Our release process is still too artisanal.
no prob. glad my stumbles will help others
Wisdom of the crowds! :-)
i now consider myself a contributor. wheres my tshirt
:grin:
ok, that is committed
I just ran through a clean install and it worked
should the devDependicies for composer-connected-embedded also be updated there or no
yep - its all working now including the rest api
just done it
Angular app generation works as well
(type `yo` and select update generators and update the generator for Fabric Composer(
(type `yo` and select update generators and update the generator for Fabric Composer)
hadnt seen that part actually, that new?
no, it was in 0.4.5 as well
it generates a skeleton Angular app from your business network definition
https://fabric-composer.github.io/tasks/genapp.html
i dont know how i missed this
got the app generator going. seems like i might still be some dependency issue that i need to fix as one of the first lines after 'npm start' in the app directory also has the version missmatch error
ERROR HFCConnection :ping() Version mismatch {"0":"0.4.5","1":"0.5.0","2":"^0.5.0"}
after updating the package.json in the app dir for composer-client to .0.5, rm-rf the node_modules dir, reinstalled.. now it works
not sure why that was generated with the .4.5 version though
originally
Thanks again @conroydave -- the changes to the templates for Yeoman are in (updating the dependencies to 0.5.0) and are making their way through the build process now.
cool. so is the idea now that i could take any sample network from the sample-network repo and deploy it just as easy the digitalproperty network. Using composer and its tools to automatically handle all of the api and and app generation
correct
the generated app is obviously just a starting point, but it removes a bunch of time consuming bootsrapping discussions.
the generated app is obviously just a starting point, but it removes a bunch of time consuming bootstrapping discussions.
right. at some point ive got to actually write something myself ;-)
@dselman I have posted the question to Stackoverflow. The original question has a typo (sequence instead of consequence). Please see http://stackoverflow.com/questions/42736270/specify-the-loading-sequence-of-the-scripts-in-a-composer-business-network. Thanks
Has joined the channel.
Has joined the channel.
@dselman @conroydave Thank you! Tried the updated package.json, and now it works for me too.
Sweet
Hi, I try to create a new business network, following the example in https://fabric-composer.github.io/start/getting-started-coding-bnd.html . However, I get an error when I try to call a transaction (via REST API) that is supposed to call the defined JavaScript function. In my version of transaction, the error log says that that *returAssetRegistry* is not found. Where should the *returAssetRegistry* function be defined? And it seems like a typo anyway... ```function onRegisterPropertyForSale(propertyForSale) {
console.log('### onRegisterPropertyForSale ' + propertyForSale.toString());
propertyForSale.title.forSale = true;
returAssetRegistry('net.biz.digitalPropertyNetwork.LandTitle').then(function(result) {
return result.update(propertyForSale.title);
}
);
}```
Hi, I try to create a new business network, following the example in https://fabric-composer.github.io/start/getting-started-coding-bnd.html . However, I get an error when I try to call a transaction (via REST API) that is supposed to call the defined JavaScript function. In my version of transaction, the error log says that that *returAssetRegistry* is not found. Where should the *returAssetRegistry* function be defined? And it seems like a typo anyway... ```function onRegisterPropertyForSale(propertyForSale) {
console.log('### onRegisterPropertyForSale ' + propertyForSale.toString());
propertyForSale.title.forSale = true;
returAssetRegistry('net.biz.digitalPropertyNetwork.LandTitle').then(function(result) {
return result.update(propertyForSale.title);
}
);
}```
Hi, I try to create a new business network, following the example in https://fabric-composer.github.io/start/getting-started-coding-bnd.html . However, I get an error when I try to call a transaction (via REST API) that is supposed to call the defined JavaScript function. In my version of transaction, the error log says that that *returAssetRegistry* is not found. Where should the *returAssetRegistry* function be defined? And it seems like a typo anyway... ```function onRegisterPropertyForSale(propertyForSale) {
console.log('### onRegisterPropertyForSale ' + propertyForSale.toString());
propertyForSale.title.forSale = true;
returAssetRegistry('net.biz.digitalPropertyNetwork.LandTitle').then(function(result) {
return result.update(propertyForSale.title);
}
);
}```
Hi, I try to create a new business network, following the example in https://fabric-composer.github.io/start/getting-started-coding-bnd.html . However, I get an error when I try to call a transaction (via REST API) that is supposed to call the defined JavaScript function. In my version of transaction, the chaincode log says that that *returAssetRegistry* is not found. Where should the *returAssetRegistry* function be defined? And it seems like a typo anyway... ```function onRegisterPropertyForSale(propertyForSale) {
console.log('### onRegisterPropertyForSale ' + propertyForSale.toString());
propertyForSale.title.forSale = true;
returAssetRegistry('net.biz.digitalPropertyNetwork.LandTitle').then(function(result) {
return result.update(propertyForSale.title);
}
);
}```
oh, I think I figured... something as follows forked. ``` return getAssetRegistry("my.asset.namespace.AssetType").then(function(assetRegistry) {
return assetRegistry.update(sampleTransaction.asset);
}
); ```
oh, I think I figured... something as follows worked. ` return getAssetRegistry("my.asset.namespace.AssetType").then(function(assetRegistry) {
return assetRegistry.update(sampleTransaction.asset);
}
); `
oh, I think I figured... something as follows worked. ``` return getAssetRegistry("my.asset.namespace.AssetType").then(function(assetRegistry) {
return assetRegistry.update(sampleTransaction.asset);
}
); ```
oh, I think I figured... something as follows worked.
``` return getAssetRegistry("my.asset.namespace.AssetType").then(function(assetRegistry) {
return assetRegistry.update(sampleTransaction.asset);
}
); ```
Has joined the channel.
Message Attachments
https://gist.github.com/evanscottgray/8571828
if you want to kill all of them
but if you just want one at a tie
type `docker kill
I'm getting these errors after pulling down the latest commit from github. Currently on Ubuntu 14.05 and running node version 6.10.0
`info: [Composer-GettingStarted] Fabric Composer: Getting Started appliation
info: [Composer-GettingStarted] Adding default land titles to the asset registry
error: [Composer-GettingStarted] Error: Failed to load connector module "composer-connector-hlf" for connection profile "defaultProfile"
Command failed.`
this is after running `npm test`
```info: [Composer-GettingStarted] Fabric Composer: Getting Started appliation
info: [Composer-GettingStarted] Adding default land titles to the asset registry
error: [Composer-GettingStarted] Error: Failed to load connector module "composer-connector-hlf" for connection profile "defaultProfile"
Command failed.```
I checked the home directory and have the connection profile up and running - even the network tag is correctly associated to the running chaincode container
Has joined the channel.
I am trying to setup fabric-composer on ubuntu-14.04.5-desktop-amd64 using the below link
https://fabric-composer.github.io/start/quickstart.html
I get lot of exception while installing composer-cli
$ npm install -g composer-cli
Is the setup doc is out of date ??. Could please guide me to get updated install documents.
I am trying to setup fabric-composer on ubuntu-14.04.5-desktop-amd64 using the below link
https://fabric-composer.github.io/start/quickstart.html
I get lot of exception while installing composer-cli
$ npm install -g composer-cli
Is the setup doc is out of date ??. Could you please guide me to get the updated install documents.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/composer-cli/node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.1: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
pradeep@pradeep-VirtualBox:~/composer/sample-applications/packages/getting-started$ npm install
npm WARN deprecated node-uuid@1.4.7: use uuid module instead
Then i running the sample application
> getting-started@1.0.0 preinstall /home/pradeep/composer/sample-applications/packages/getting-started
> composer --version || echo 'Please first run npm install -g composer-cli'
composer-cli v0.5.1
composer-admin v0.5.1
composer-client v0.5.1
composer-common v0.5.1
composer-runtime-hlf v0.5.1
composer-connector-hlf v0.5.1
npm WARN prefer global marked@0.3.6 should be installed with -g
> hashtable@2.0.2 install /home/pradeep/composer/sample-applications/packages/getting-started/node_modules/hashtable
> node-gyp configure build
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
make: Entering directory `/home/pradeep/composer/sample-applications/packages/getting-started/node_modules/hashtable/build'
CXX(target) Release/obj.target/native/src/hashtable.o
SOLINK_MODULE(target) Release/obj.target/native.node
COPY Release/native.node
make: Leaving directory `/home/pradeep/composer/sample-applications/packages/getting-started/node_modules/hashtable/build'
sleep@3.0.1 install /home/pradeep/composer/sample-applications/packages/getting-started/node_modules/sleep
> node-gyp rebuild
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
make: Entering directory `/home/pradeep/composer/sample-applications/packages/getting-started/node_modules/sleep/build'
CXX(target) Release/obj.target/node_sleep/sleep.o
SOLINK_MODULE(target) Release/obj.target/node_sleep.node
COPY Release/node_sleep.node
make: Leaving directory `/home/pradeep/composer/sample-applications/packages/getting-started/node_modules/sleep/build'
> grpc@1.0.0 install /home/pradeep/composer/sample-applications/packages/getting-started/node_modules/grpc
> node-pre-gyp install --fallback-to-build
[grpc] Success: "/home/pradeep/composer/sample-applications/packages/getting-started/node_modules/grpc/src/node/extension_binary/grpc_node.node" is installed via remote
> protobufjs@6.6.5 postinstall /home/pradeep/composer/sample-applications/packages/getting-started/node_modules/protobufjs
> node scripts/postinstall
> getting-started@1.0.0 install /home/pradeep/composer/sample-applications/packages/getting-started
> scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork
# Grab the current directory.
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd )"
cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd
dirname "${BASH_SOURCE[0]}"
# Shut down the Docker containers that might be currently running.
cd "${DIR}"/scripts
docker-compose kill && docker-compose down
ERROR: Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running?
If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.
# TODO change this to alter the default profile which is, by convention, a local running hyperledger fabric
rm -rf ~/.composer-connection-profiles/defaultProfile/*
rm -rf ~/.composer-credentials/*
# delete all existing containers and images
# This is not used in general usage but this might
#read -p "Press y to delete all docker containers images" -n 1 -r
#echo # (optional) move to a new line
#if [[ $REPLY =~ ^[Yy]$ ]]
#then
# docker rm $(docker ps -a -q) -f
# docker rmi $(docker images -q) -f
#fi
# Pull and tag the latest Hyperledger Fabric base image.
docker pull hyperledger/fabric-baseimage:x86_64-0.1.0
Warning: failed to get default registry endpoint from daemon (Cannot connect to the Docker daemon. Is the docker daemon running on this host?). Using system default: https://index.docker.io/v1/
Cannot connect to the Docker daemon. Is the docker daemon running on this host?
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! getting-started@1.0.0 install: `scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 install script 'scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/pradeep/.npm/_logs/2017-03-13T06_30_39_561Z-debug.log
start docker first
then try this command
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=SZmaa3vGfnut4XdTi) @sbrakev did you remove your `node_modules` dir and rerun `npm install`
Has joined the channel.
Hi I am trying to to run the Fabric Composer REST server. I got this error : 2017-03-13T08:33:40.647Z ERROR HFCConnection :ping() Version mismatch {"0":"0.5.1","1":"0.4.5","2":"^0.4.5"}$
Connection fails: Error: Deployed chain-code (0.4.5) is incompatible with client (0.5.1)
It will be retried for the next request.
Error: Deployed chain-code (0.4.5) is incompatible with client (0.5.1)
at HFCUtil.queryChainCode.then.then (/home/taandbe1/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlf/lib/hfcconnection.js:270:27)
at process._tickCallback (internal/process/next_tick.js:103:7)
@sstone1 composer-admin@0.5.1
│ ├─┬ composer-common@0.5.1
│ └─┬ composer-connector-hlf@0.5.1
│ ├── composer-runtime-hlf@0.5.1
├─┬ composer-client@0.5.1
├─┬ composer-connector-embedded@0.5.1
│ ├── composer-common@0.5.1
│ ├─┬ composer-runtime@0.5.1
│ │ ├─┬ composer-common@0.5.1
│ └─┬ composer-runtime-embedded@0.5.1
How to solve it please ?
@annbnn you must deploy a business network using 0.5.x, the 0.4.x chaincode and 0.5.x clients are incompatible
I've got composer working with a deployed business network and am comfortable with how to add new transactions through the cto and chaincode, but how do i go about preventing update and delete actions being performed on assets? At the moment, with a loopback connector running I seem to be free to delete and update assets but i want to make sure these actions can only be done through deployed chaincode
@bravera have you set up an ACL file with the rules about who can do what in the business network?
The REST server runs as a particular participant on the business network; you have to give it an enrollment ID/secret to connect.
Access control is based on the current participant, so all REST API calls to the REST server will run as the specified participant.
Note that if you use admin / WebAppAdmin to talk to the business network, ACL rules aren't enforced.
We are looking at allowing REST API clients to authenticate to the REST server to be able to pass their own identities, and also locking down the business network so that ACL rules are always enforced.
@sstone1 so the REST server can only run as one participant at the moment?
correct
From your final sentence do I take it that at the moment it is possible to circumvent the ACL rules, or are you referring to the fact that WebAppAdmin isn't subject to the ACL rules?
admin / WebAppAdmin aren't subject to the ACL rules at present
hi, is this page all the existing documentation on the runtime API? https://fabric-composer.github.io/jsdoc/module-composer-runtime.html#getFactory__anchor
I was trying to compile a new network with "composer archive create" and I was getting "Cannot read property 'name' of null"
It seems the problem was the "@param" annotation. e.g. "@param {com.myNetwork.MyInstruction}". Apparently it needed an extra string at the end of it: "@param {com.myNetwork.MyInstruction} instruction"
Is there a complete specification for all the annotations?
@sstone1 Thank you. How to move from 0.4.x to 0.5.x chaincode ?
@annbnn you need to install the latest version of the CLI; `npm install -g composer-cli` (might need to put sudo in front of that depending on your system)
Did you deploy the business network using the getting started guide?
I did it
sstone1.
@uber.twin in that case, it's defined by the JSDoc standard (http://usejsdoc.org/tags-param.html), but I think that is a bug that we fixed in the latest versions.
@annbnn if you followed the getting started guide then you need to pull down the latest changes to getting started (either delete the old sample-applications project and git clone it again, or do a git pull)
Once you've got the latest changes down you need to delete the node_modules directory inside the getting-started folder and re-run npm install
Oh I see
@sstone1
@sstone1 I still have the same error ..
Connection fails: Error: Deployed chain-code (0.4.5) is incompatible with client (0.5.1)
...
in the getting started directory, please run `npm ls | grep composer`
├─┬ composer-admin@0.4.5
│ ├─┬ composer-common@0.4.5
│ ├─┬ composer-connector-hlf@0.4.5
│ │ ├── composer-runtime-hlf@0.4.5
│ └─┬ composer-connector-hlfv1@0.4.5
│ ├── composer-runtime-hlfv1@0.4.5
├─┬ composer-client@0.4.5
├─┬ composer-connector-embedded@0.4.5
│ ├─┬ composer-runtime@0.4.5
│ └─┬ composer-runtime-embedded@0.4.5
I got that output.
did you pull the latest changes, delete the node_modules folder, and re-run npm install?
the package.json in the getting started directory should have the same content as this https://github.com/fabric-composer/sample-applications/blob/master/packages/getting-started/package.json
now npm ls | grep composer gives:
├─┬ composer-admin@0.4.5
│ ├─┬ composer-common@0.4.5
│ ├─┬ composer-connector-hlf@0.4.5
│ │ ├── composer-runtime-hlf@0.4.5
│ └─┬ composer-connector-hlfv1@0.4.5
│ ├── composer-runtime-hlfv1@0.4.5
├─┬ composer-client@0.4.5
├─┬ composer-connector-embedded@0.5.1
│ ├── composer-common@0.5.1
│ ├─┬ composer-runtime@0.5.1
│ │ ├─┬ composer-common@0.5.1
│ └─┬ composer-runtime-embedded@0.5.1
After deleting node_modules and re-run npm install
@sstone1 So I should create a new Business definition in order to genereate the REST API
right ?
That still doesn't look right; you have a mix of 0.4.5 and 0.5.0 modules
Can you run `grep composer package.json` in the getting started directory?
I have that message
"preinstall": "composer --version || echo 'Please first run npm install -g composer-cli' ",
"deployNetwork": "composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d",
"url": "git@github.com:fabric-composer/sample-applications"
"composer-admin": "~0.4.1-0",
"composer-client": "~0.4.1-0",
"composer-connector-embedded": "*",
you don't have the latest changes to the getting started repo
you need to run `git pull`
or delete it and run another `git clone`
deleting what ?
delete the cloned `sample-applications` repository
Okay
it does not have the latest changes in it, so it does not pick up the 0.5.x modules
I deleted the sample-applications repo
and made git pull
OK, so now you need to rerun the git clone instructions from the docs
npm install -g composer-cli
git clone https://github.com/fabric-composer/sample-applications.git
Okay
yep
then re-run the `npm install` step which will deploy a 0.5.x chaincode
@annbnn might be worth taking at look at https://www.youtube.com/watch?v=pEHBIfb_iqc - shows the getting started.
@sstone1
composer archive create --sourceType dir --sourceName .
this command seems to have an issue when you run it
npm ls | grep composer composer-admin@0.5.1
│ ├─┬ composer-common@0.5.1
│ └─┬ composer-connector-hlf@0.5.1
│ ├── composer-runtime-hlf@0.5.1
├─┬ composer-client@0.5.1
├─┬ composer-connector-embedded@0.5.1
│ ├── composer-common@0.5.1
│ ├─┬ composer-runtime@0.5.1
│ │ ├─┬ composer-common@0.5.1
│ └─┬ composer-runtime-embedded@0.5.1
├─┬ composer-admin@0.5.1
│ ├─┬ composer-common@0.5.1
│ └─┬ composer-connector-hlf@0.5.1
│ ├── composer-runtime-hlf@0.5.1
├─┬ composer-client@0.5.1
├─┬ composer-connector-embedded@0.5.1
│ ├── composer-common@0.5.1
│ ├─┬ composer-runtime@0.5.1
│ │ ├─┬ composer-common@0.5.1
│ └─┬ composer-runtime-embedded@0.5.1
@sstone1 it seems to work now
?
We have 0.5.1
@mbwhite thank you
@mbwhite I have v0.5.1
Just trying it now..
Fenglians-MacBook-Pro:sample-networks Fenglian$ composer archive create --sourceType dir --sourceName .
Creating Business Network Archive
Looking for package.json of Business Network Definition in /Users/Fenglian/dev/git/sample-networks
composer archive create --archiveFile digitialPropertyNetwork.zip --sourceType module --sourceName digitalproperty-network
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--archiveFile, -a Business network archive file name. Default is based on the Identifier of the BusinessNetwork [string]
--sourceType, -t The type of the input containg the files used to create the archive [ module | dir ] [required]
--sourceName, -n The Location to create the archive from e.g. NPM module directory or Name of the npm module to use [required]
No registered namespace for type net.biz.digitalPropertyNetwork.RegisterPropertyForSale
@mbwhite I saw the video. I already did the getting started process.
I was coding a business network definition when I had some versions problems between the chaincode and the client ...
ls
Thank you all. I am able to start fabric-composer successfully. Just need to be restarted the machine once after the installation of pre-requisite
I think the answer is no but just double checking...can the composer rest server be started with a command line call? Something like ```composer-rest-server -n org.acme.biznet -i WebAppAdmin -s DJY27pEnl16d -p defaultProfile```
I think the answer is no but just double checking...can the composer rest server be started with a command line call? Something like `composer-rest-server -n org.acme.biznet -i WebAppAdmin -s DJY27pEnl16d -p defaultProfile`
@jdockter it can be done exactly like that ;)
`composer-rest-server -h` for usage information
oh geez...guess I should of just tried it on my terminal...thanks
@sstone1 so is the identity used in this composer-rest-server start command considered to be the participant the rest server is operating under?
(in this case WebAppAdmin)
Getting this error...
Connection fails: Error: Failed to load connector module "composer-connector-hlf" for connection profile "defaultProfile"
It will be retried for the next request.
jdockter@ubuntu:~/iibconfig/connectors/loopback$ composer -v
composer-cli v0.5.0
composer-admin v0.5.0
composer-client v0.5.0
composer-common v0.5.0
composer-runtime-hlf v0.5.0
composer-connector-hlf v0.5.0
must have something back level or messed up with profile as other commands not working...let me remove and start fresh
@jdockter that error has cropped up for me before a few times; it generally has been cleared by making sure of a match between all the components.
however I do want to see if we can add some more diagnostics here as I'm 100% clear exactly why this occurs
Looking at the help text suggests that it is indeed the participant
mmm, stopped containers, deleted containers, restarted HLF, pulled down latest cli and rest server so now I'm at 0.5.1, rebuilt bna, redeployed....same error...even when when doing a composer network list command
does `composer --version` have a matching version
composer -v
composer-cli v0.5.1
composer-admin v0.5.1
composer-client v0.5.1
composer-common v0.5.1
composer-runtime-hlf v0.5.1
composer-connector-hlf v0.5.1
also had deleted defaultProfile and credentials...so pretty sure it was a full clean
Has joined the channel.
ah.. admit I'm not sure to be honest.
Any debug or logs I could look at?
so there are the fabric logs, however that's unlikey to help here.... local logs `DEBUG=concerto:*` will produce output - but my current task is updating that to be more useful (and the correct name!!)
okay...so open an issue for this?
yes please...
@jdockter this usually means there's an old ./node_modules directory ... After you change version of `composer-cli` please `rm -rf` the node_module dir and rerun `npm install`
Has joined the channel.
We need to create a "upgrade guide"...
You can also try `npm uninstall -g composer-rest-server` and 'npm uninstall -g composer-cli` before re-installing both globally.
You can also try `npm uninstall -g composer-rest-server` and `npm uninstall -g composer-cli` before re-installing both globally.
okay let me try that first before I mess with node_modules
better
okay composer-cli is working now as well as command line to start rest server...thanks!
mmm
thanks
I don't know why an uninstall would be required.
Something to look into
@bravera correct, it is the participant that the REST server uses to discover the network, and service all REST requests.
In the future I imagine the REST server will only need a participant with very restricted permissions in order to discover the network, and then REST clients will identify themselves as separate participants
@sstone1 I am trying to look at the generated APIs (see the attached files). Whats going here ?
Message Attachments
Message Attachments
In the Generating a REST API part.
I tried to specify another landtitle in the data box (also the transaction id and the timestamp)
@annbnn "timed out waiting for transaction to complete" is code for the transaction failed; in your example above it looks like your timestamp is not a valid format
I got it here
https://fabric-composer.github.io/start/getting-started-rest-api.html
If you go down on that page, you will find the same timestamp
@sstone1
@annbnn OK, checked, that is valid. Do the seller (Person) and title (LandTitle) referenced exist as well? Can you confirm with GET requests on those objects?
Has joined the channel.
@sstone1 can i host the REST APIs on bluemix, to point to a deployment of a biz network in a hyperledger fabric on bluemix as per http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
@Suma we haven't tried that, but I don't see why it wouldn't be possible.
When I try to launch the Node.js app I created with the Fabric Composer Generator, I get the following error. Is there a minimum level of Node.js and NPM that is needed. concurrently "ng serve" "node app.js" "sleep 5 && opener http://localhost:4200"
[0] /Users/drmiller/blockchain_fabric_composer/angular-app/node_modules/@angular/cli/models/config/config.js:16
[0] constructor(_configPath, schema, configJson, fallbacks = []) {
[0] ^
[0]
[0] SyntaxError: Unexpected token =
[0] at exports.runInThisContext (vm.js:53:16)
[0] at Module._compile (module.js:373:25)
[0] at Object.Module._extensions..js (module.js:416:10)
[0] at Module.load (module.js:343:32)
[0] at Function.Module._load (module.js:300:12)
[0] at Module.require (module.js:353:17)
[0] at require (internal/module.js:12:17)
[0] at Object.
what is the output of `node --version`
@dselman I am using a toolkit for APIs on my MacBook that requires v4.4.5. node --version
v4.4.5
We only support Node v6
@dselman Thanks, that was my first thought on why this error was occurring. Will check my API toolkit to see if I can upgrade Node versions
Has joined the channel.
I've added a new sample network for shipping perishable goods, and setting up a contract between growers and importers: https://github.com/fabric-composer/sample-networks/tree/master/packages/Perishable-Network
You can import this into https://fabric-composer-next.mybluemix.net using the Import/Replace option.
The network includes a unit test which you can run with `npm test` if you `git clone` it.
Message Attachments
Has joined the channel.
evening
Hi Every one. Does some one have a good tutorial about composer ui please ?
@annbnn I think the documentation is out of date. Here's a screen capture from my running REST API
(sorry - file upload looks to be struggling....here's the important piece, the example response..
'''{
"transactionId": "string",
"seller": "string",
"title": "string",
"timestamp": "2017-03-10T10:00:26.921Z"
}'''
'''{
"transactionId": "string",
"seller": "string",
"title": "string",
"timestamp": "2017-03-10T10:00:26.921Z"
}'''
''' {
"transactionId": "string",
"seller": "string",
"title": "string",
"timestamp": "2017-03-10T10:00:26.921Z"
} '''
```{
"transactionId": "string",
"seller": "string",
"title": "string",
"timestamp": "2017-03-10T10:00:26.921Z"
}```
Message Attachments
do you have a link for the outdated docs? I can create an issue to fix them
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=Na5K4hceghKaCKazh) @dselman I've updated the sample and README to describe how to run it easily inside Playground.
@dselman fyi...I get a 404 when I click on the link you provided
looks like lower case is needed
https://github.com/fabric-composer/sample-networks/tree/master/packages/perishable-network
@dselman the link to the outdated docs is https://fabric-composer.github.io/start/getting-started-rest-api.html
its in the section 'Submitting a transaction via REST'
Has joined the channel.
Can the `getting-started` application be configured to interact with a Fabric that has been stood up separately (and not running on `localhost`)?
yes -- edit the connection profile under `~/.composer-connection-profiles/defaultProfile/connection.json` -- you'll find the Peer URLs etc in there.
You can create a new connection profile for your remote machine by cloning defaultProfile and naming it something else, then run a `composer network deploy` referencing the name of your profile
All the Composer CLIs and APIs use a connection profile name to specify how to reach a network.
Thanks @dselman -- when does that file get created? Looking at the code, all I see is `rm -rf ~/.composer-connection-profiles/*` but no creation
composer-cli will create the defaultProfile if it does not exist, assuming your are running HLF locally. You can create your own manually if you wish.
``Daniels-MacBook-Pro:fabric-composer dselman$ cat ~/.composer-connection-profiles/test/connection.json
{
"type": "hfc",
"keyValStore": "/tmp/keyValStore",
"membershipServicesURL": "grpc://membersrvc",
"peerURL": "grpc://vp0",
"eventHubURL": "grpc://vp1"
``
```Daniels-MacBook-Pro:fabric-composer dselman$ cat ~/.composer-connection-profiles/test/connection.json
{
"type": "hfc",
"keyValStore": "/tmp/keyValStore",
"membershipServicesURL": "grpc://membersrvc",
"peerURL": "grpc://vp0",
"eventHubURL": "grpc://vp1"
```
Then use the `-p` options:
```Daniels-MacBook-Pro:fabric-composer dselman$ composer network deploy
composer network deploy [options]
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--archiveFile, -a The business network archive file name [string] [required]
--connectionProfileName, -p The connection profile name [string]
--enrollId, -i The enrollment ID of the user [string] [required]
--enrollSecret, -s The enrollment secret of the user [string]
```
thanks @dselman, that's really useful for me as well. Where should I take the `keyValueStore` to access my remote fabric?
Hi - I'm using IIB as the integration tool leveraging loopback-connector. With the operation of 'Create' I can successfully submit a json object for a new Asset and see the payload on the blockchain. However, the transaction seems to fail if sending in an updated json for that same Asset (using same identified by field). [fyi... this works currently via the rest server using Put-by-ID transaction.] So I tried a similar IIB message flow with operation of 'Update' however that does not seem to get submitted either (not seeing any transaction on the blockchain). Any suggestion on how loopback-connector is intended to work for submitting updated Assets... or if I'm doing something incorrect with my test/setup?
@klorenz we haven't done an 'Update' from IIB to Blockchain yet; let me look into it...
@andrea.turli it can be any local dir -- the Fabric Node-SDK will use this dir to store its certificates. In the defaultProfile we create it at `~/.composer-credentials/`
thanks @dselman, that's useful
When I try to update the business network per instructions at https://fabric-composer.github.io/start/getting-started-cmd-line.html I get an error I did not see a few days ago when I did this. The error is: omposer network update --archiveFile digitalproperty-network@0.0.2.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
Deploying business network from archive digitalproperty-network@0.0.2.bna
Business network definition:
Identifier: digitalproperty-network@0.0.2
Description: Digital Property Network
Error: Failed to load connector module "composer-connector-hlf" for connection profile "defaultProfile"
Command failed.
It seems like HLF in general talks about getting participants in a network to sign off or approve assets...ie I have a contract which is an asset and I need three participants int he network to sign off or approve before we can move to the next step in the asset lifecycle...not sure if that is implying some sort of digital signature using a tcert or something different...in Composer would something like approvals be modeled with three different transactions, each limited to a specific participant who would update a specific field in an asset and then once all three fields are updated it's "approved"...or am I missing how that could be modeled?
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=o4sjvxm8EmtXff2Ld) @DennisM330 others have fixed this by doing an `npm uninstall -g composer-cli` followed by `npm install -g composer-cli`
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=8aqqYBTcYPQGCpAXQ) @jdockter I was thinking of adding this to the Perishable-Network sample, so that the Importer, Grower and Shipper each have to sign-off on the Contract before it becomes "approved".
@dselman I was looking at that :)
I'm still mulling over the best way of modeling that -- for example, how does someone create a contract and then solicit bids, accept a bid, and then get signatures on the contract? I think we can capture all that using transactions and ACLs...
Once the contract is in the SIGNED state then it can no longer be modified...
Thanks for your help @dselman -- I managed to successfully run the "getting started" application against my fabric cluster deployed on an external OpenStack
I won't get to that this week however.
@mikezaccardo that's awesome. Happy Composing! :-)
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=7R5XbpiKizR2vAoyD) @dselman sure totally understand...but just conceptually if you did use transactions and ACLs would you then have three fields on the contract for each participant to update to show SIGNED?
Yes, I think so. Or we could generalize it into an array of `Signature` concepts.
e.g.
```concept Signature {
--> Business signer
o String comments
o DateTime dateTime
}
@dselman are Liam and Jake on this chat?
yes
@dselman okay thanks
Hi @sbrakev
Has joined the channel.
Was trying to use the composer-ui on node. Installed the latest version and I am getting this error in the browser. Another question, I am trying to run the composer ui on the local system using node.
[11:53]
https://fabric-composer.github.io/start/getting-started-playground.html
[11:55]
I have installed the latest version and but I am getting this error when I launch the ui. It is looking for the credentials in /home/composer folder on my Mac. Obviously I don’t have that directory.
[11:56]
Getting this error in the browser.
[11:56]
Error
Error: ENOENT: no such file or directory, mkdir '/home/composer/.composer-credentials'
Hello Jakey!
I'm with Gautham Pamu (@gauthampamu) supporting the hackers here in Austin today - I appreciate any help while we send developers to use Fabric Composer!
Obviously, I don't have that directory on my Mac. I had created the connection.json file in my home directory under /Users/
Has joined the channel.
It's easier to get it running using the Docker compose script.
You can see that the default connection profile is specified in the yml here: https://fabric-composer.github.io/start/docker-compose.yml
@dselman Yes, I also have the docker setup.
I'm not clear what the issue is, or whether you have it running or not -- but happy to help.
With the docker images and it is launching the UI but when I switch to hlfabric connection profile, I get this error
Error: Identity or token does not match.
can you please clear your browser cache / cookies / local storage
In the install page for Fabric Composer, it suggests to download the docker compose.xml file. In the docker compose, it uses hyperledger/fabric-peer:x86_64-0.6.1-preview but in the documentation, it also recommends you to pull fabric base image. What is the purpose of the image.
docker pull hyperledger/fabric-baseimage:x86_64-0.1.0
docker tag hyperledger/fabric-baseimage:x86_64-0.1.0 hyperledger/fabric-baseimage:latest
docker-compose up -d
What is the purpose of this base image. It has the version 0.1.0 in the image name ?
Has joined the channel.
@sstone1 this week and next the US are already on summer time so are the meetings cued of UK or US TZ?
Ref https://github.com/fabric-composer/fabric-composer/wiki/Meeting-16th-March-2017
@gauthampamu It's the root docker image that is used to build the final chaincode docker image that runs the fabric composer chain code
@gauthampamu It's the root docker image that is used to build the final chaincode docker image that runs the fabric composer chain code. It needs to be tagged as latest in order for fabric to use it
Has joined the channel.
Has joined the channel.
In the quickstart guide [https://fabric-composer.github.io/start/quickstart.html] is there a way to run part of what `npm install` accomplishes -- namely to generate the `node_modules` folder and `digitalproperty-network` inside it -- without running the Fabric installation all the way (since I'm targeting an external deployment)? I'm currently accomplishing this by running without `sudo` so that the `docker` commands will fail. It's ugly but it works, hoping for something cleaner :-)
Found a workaround: remove this line [https://github.com/fabric-composer/sample-applications/blob/master/packages/getting-started/package.json#L16]
Hi guys, I'm having trouble with the `composer archive` command. I'm running `composer archive create --archiveFile diamondChaincode.zip --sourceType dir --sourceName .`, I've have my .cto file in the right folder `models` , my logic file in `lib` , my permissions in the root and package.json in the root. Here's the contents of my package.json...
{
"name": "biz.net.diamond",
"version": "1.0.0",
"description": "Diamond composer test",
"main": "logic.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "Everlegder.io",
"license": "UNLICENSED"
}
And this is the error I'm receiving...
Creating Business Network Archive[object Object]
undefined
Unable to locate the npm module specified
TypeError: Cannot read property 'length' of undefined
Command failed.
Help would be much appreciated thanks in advance :)
@duncanjw (and @here as an FYI) good question, I wasn't aware that was coming! The meetings on the 16th and 23rd do state 4pm UTC which would make it 12pm ET/9am PT now. That also moves it completely clear of the TSC meeting which doesn't finish until 11:30am ET. I've updated the meeting invites.
@georgeormrod@gmail.com can you run `composer -v` and paste the output in here?
@georgeormrod@gmail.com I think you are running an older version of the composer-cli to the instructions you are following.
@georgeormrod@gmail.com I think you are running an older version of the composer-cli to the instructions you are following, and unfortunately the command line parameters changed so the example of the command line you have given won't work with the version you are using.
@georgeormrod@gmail.com I think you are running an older version of the composer-cli to the instructions you are following, and unfortunately the command line parameters changed so the example of the command line you have given won't work with the version you are using.
you should be able to upgrade by running `npm install -g composer-cli`
Yep got it thanks @davidkel and @sstone1
@sbrakev How did it go yesterday? Were there any major problems?
Has joined the channel.
Has joined the channel.
Only recently returned this morning. I'll check in with the team I steered towards Fabric Composer and see if all is well - their dev is not in yet.
@sbrakev any feedback, did you show off the new UI?
I set them up with the new UI/Sandbox and pointed them to this channel + the website
The dev isn't in yet so I can't chat with him yet
One team might not get to the blockchain aspect of their demo before coding stops. Still waiting on one dev to get here.
Has joined the channel.
@here hello, I'd like to know a bit more about the security model behind fabric-composer. I can see in the docs that compose cli will always interact with the fabric as `WebAppAdmin` user. Is it done on purpose?
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=Z759XZ2YkpheM7TZ7) @sstone1 fyi... created an issue for tracking. Thanks. https://github.com/fabric-composer/fabric-composer/issues/477
Thanks @klorenz
@andrea.turli this is incorrect, you can use any Fabric enrollId & secret using the composer-cli :
```daniels-mbp:carauction-network dselman$ composer network deploy
composer network deploy [options]
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--archiveFile, -a The business network archive file name [string] [required]
--connectionProfileName, -p The connection profile name [string]
--enrollId, -i The enrollment ID of the user [string] [required]
--enrollSecret, -s The enrollment secret of the user [string]
```
Similarly the APIs also allow you to use any enrollId & secret.
@dselman you are right, I explained myself very poorly
let me rephrase that: what would you recommend ?
use an "admin" account to deploy networks, maybe?
and then issue Identity to partecipant ?
as per https://fabric-composer.github.io/tasks/identity-issue.html ?
Yes, you can use an admin account for deployment and then use an application id for the business network connection (to submit transactions). In some cases you'll want individual Fabric enrollment id we be used at the application tier as well -- the challenge of that is you need to manage the certs on behalf of the end user within the application.
Various schemes are possible - but the net is that it's not fundamentally different to if you were using the Fabric Node-SDK client.
thanks for your quick response, really appreciated
Happy to help.
Hello, I am trying to figure out how the import resources from other namespaces work as noted in docs:
Optional import declarations that import resources from other namespaces.
What is the syntax to import a Asset from another file so I can use it in an Asset current this file? Thanks!
import org.other.ns.MyAsset
(Sorry I can't find it in https://fabric-composer.github.io/reference/cto_language.html)
OK, pretty obvious. Thanks!
Yes, we need to add an example!
I'll create an issue for that
The cto file with the asset to import needs to be in same directory?
No
I mean... in the example cto files are "lib/fileName.cto". They just need to be in same project, correct?
(thanks)
Models are by default under the `models` directory. You can organize and name your cto files as you like under that directory.
OK. BTW, Great to consider adding the example. I had tried import as in Java but I was ending the line with ";" so validator was showing an error.
Yes -- no `;` in cto
Check out some of the sample networks here: https://github.com/fabric-composer/sample-networks/tree/master/packages
Though, none use imports AFAIK
Yes :-)
Other question please. When I switch to other file in Playground cto editor I loose all changes. Anyway to store local changes in files?
During your editing session you can press the "Update" button to deploy your changes to your local in-browser runtime. To save your work your can "Export" your business network archive. If you unzip the archive you'll find all your source artifacts.
During your editing session you can press the "Update" button to deploy your changes to your local in-browser runtime. To save your work you can "Export" your business network archive. If you unzip the archive you'll find all your source artifacts.
Or you can install composer-cli and use https://marketplace.visualstudio.com/items?itemName=FabricComposer.composer-support-client
Ah, ok. The editor won't allow deploying if there is any error in the file so it only allows "saving" clean correct cto. Got it..
Correct
That's something we want to improve in the future.
Cool. I discovered Composer 2 days ago after weeks messing around with Hyperledger and at last I have the feeling to be in the productive path. Very excited. It's a great approach and tool.
Thank you -- we are very excited as well. It allows our consultants, partners and customers to quickly model a business network and generate APIs and UIs in a few hours. What used to take weeks...
Once we get a strong community of practitioners sharing models and bootstrap networks we'll see even more productivity gains.
Yeah. Count me in.
:thumbsup:
Hi Composer team....I saw *prereqs-ubuntu16.sh* in your getting-started/scripts directory, so I ran it on a fresh xenial system I spun up in vagrant. It ran great, but when I did my first npm global install of composer-cli it burped because python was missing. I realize any self-respecting programmer should have python on their system and it was easy as pie to fix, but just thought I'd point it out as evidently the vagrant box for ubuntu xenial (I did *vagrant init ubuntu/xenial64* to get going) does not already have python, so I thought maybe you'd want to toss an apt install of that into your prereq script. Actualy I don't know if this is a function of vagrant's xenial64 box vs. its trusty64 box, or if it's a composer v0.4x vs v0.5 thing- I didn't run into this problem on ubuntu/trusty64, but on the other hand, this is the first time I've run through this since you bumped up composer to v0.5.
@silliman python 2.7 is required for node-gyp and so will have always required python because of it. Although I don't have a desktop xenial install to hand I bet that comes with python already installed and ready to use. It definitely isn't included in the xenial vagrant box. Maybe it was done that way to allow developers to choose which version of python they want ?
@silliman python 2.7 is required for node-gyp and so composer will have always required python because of it. Although I don't have a desktop xenial install to hand I bet that comes with python already installed and ready to use. It definitely isn't included in the xenial vagrant box. Maybe it was done that way to allow developers to choose which version of python they want ?
@davidkel Hi David, I agree, I was surprised to discover that the xenial box provided by hashicorp didn't have Python on it, but it didn't. Just thought I'd point it out.
@silliman I was surprised too as I use vagrant for my development env, thanks for reminding me though probably worth an creating an issue to cover a vagrant environment
@davidkel if you like I can create the issue....I'm just creating a fresh ubuntu/trusty64 environment with vagrant to see if this consideratoin applies there as well
that would be great if you could, many thanks @silliman
@davidkel will do as soon as I determine if this applies to their xenial64 box only or to trusty64 as well... of course I downloaded a fresh xenial box in 2 minutes and now the progress bar is telling me it will be 2 hours until trusty64 is downloaded, but that is just par for the course! :-)
I'm almost certain trusty64 box has python installed
@davidkel me too as I didn't explicitly install it and it's there... I'll just write up an issue now and if it does turn out that trusty64 is in play for this I can always update it later
cool, thanks:thumbsup:
@davidkel yw ... Issue 478 https://github.com/fabric-composer/fabric-composer/issues/478
@davidkel just FYI as is it irrelevant in that a quick google search indicates node-gyp needs python 2.7 and doesn't play nice with python 3, but the ubuntu/xenial64 vagrant box does have python 3 out of the gates, just not python 2.7
@silliman Ah yes, I remember now. node-gyp launches python but although python3 is present it isn't symlinked to the python name, so is only launched by doing python3. When I installed python 2.7 into xenial I had to symlink it to the python name. Did you need to do that as well ?
@davidkel no I didn't need to do that.. an install of *python-minimal* did the trick with no further action necessary. The ubuntu/xenial64 vagrant box had not linked python3 to python, which I guess would've caused this extra step of linking python27 to python
Has joined the channel.
Has joined the channel.
Has left the channel.
Hi, is there any documentation about the language spec of fabric-composer? I'd like to know a full spec of how the models, transactions and access control can be defined and what is the expected behavior.
@sachikoy there's some information in the documentation:
https://fabric-composer.github.io/reference/cto_language.html (Modelling language)
https://fabric-composer.github.io/reference/acl_language.html (ACL language)
https://fabric-composer.github.io/reference/js_scripts.html (TP functions)
https://fabric-composer.github.io/jsdoc/module-composer-runtime.html (TP function API)
Has joined the channel.
We also have the grammar checked into Git, we use PEG.js to generate parsers:
https://github.com/fabric-composer/fabric-composer/blob/master/packages/composer-common/lib/introspect/parser.pegjs (Modelling language)
https://github.com/fabric-composer/fabric-composer/blob/master/packages/composer-common/lib/acl/parser.pegjs (ACL language)
Does anyone know if composer "javascript" style transaction definition support promises and lambda? Otherwise we could get code that looks like a cone of callbacks making the definition unreadable.
Hi @paul.sitoh, yes the JS Transaction functions handle promises - https://github.com/fabric-composer/sample-networks/blob/master/packages/carauction-network/lib/logic.js#L56
and yes, I believe they handle lambda as well
Arrow functions are not supported.
@Jakeeyturner How do you import an external javacript module to the transaction defintion?
Such as momentum, etc?
sorry moment.js
We currently don't support 'require' or the importing of any non-native JS libraries. Correct me if I'm wrong @sstone1
Bummer :-(
Correct. You could try using browserify/webpack to inline everything into a single JS file that is part of the business network, but I don't think anybody has tried that yet.
@paul.sitoh what do you want to use the libraries for?
We've had lots of people say "how can I import modules" without saying what they want to use them for, so it would be good to get some concrete examples.
https://jira.hyperledger.org/browse/FAB-2331?jql=text%20~%20%22nodejs%20chaincode%22 - This would definitely help Fabric Composer
(1) To divide my code into reusable components just like you would divide your code into multiple files
(2) Reuse some external maths algorithm
(2) Reuse some external maths algorithm via npm style
For example, say in finance. The chaincode needs to work present value of the value of a house. The last thing I want to do is to write
For example, say in finance. The chaincode needs to work present value of the value of a house. The last thing I want to do is to write the math over and over again for different projects
So (1) is possible - all functions should be in scope for you to call, we refer to these as utility functions.
some crazy math like present value
Any if it is not possible, I guess we have to keep the transaction definition as simple as possible and let the app level do the heavy lifting. So it is not a deal breaker
Just out of curiosity, I can understand the concept of a chaincode as a computer representation of some legal contracts in the real work to govern transactions of assets. But what does composer's "transaction" mean in this context?
https://fabric-composer.github.io/concepts/businessnetwork.html
Yes I read it on the doc and this is what it says:
"Transactions. These are operations that are performed on assets and other resources as they move through their lifecycle within the business network"
It kind of give me the impression that it is doing two things here. One, executing a real world transaction. For example, someone buy a house, and ownership is transfer -- i.e. the transaction. In my mind this is usually done at the app level. The other, is enforcement of transaction, i.e. is the transfer of ownership permitted. I normally associate this with the role of a chaincode.
It kind of give me the impression that it is doing two things here. One, executing a real world transaction. For example, someone buy a house, and ownership is transfer -- i.e. the transaction. In my mind this is usually done at the app level (nodeJS, HFC, etc. level implementaton). The other, is enforcement of transaction, i.e. is the transfer of ownership permitted. I normally associate this with the role of a chaincode.
It kind of give me the impression that it is doing two things here. One, executing a real world transaction. For example, someone buy a house, and ownership is transfer -- i.e. the transaction. In my mind this is usually done at the app level (nodeJS, HFC, etc. level implementaton). The other, is enforcement of transaction, i.e. is the transfer of ownership permitted. I normally associate this with the role of a chaincode.
Question: in composer when we define a transaction, are are doing two things as describe above, in one code execution?
In other words. Should we be coding contractual logic and transactional logic in the transaction definition?
In other words. Should we be coding contractual logic and transactional logic in the transaction definition? From a good coding practice perspective.
The real world transaction is modelled as a Composer transaction. The transaction processor both enforces the transaction - is it permitted, does the submitter own the house, etc. - but also records the transaction and transfer of ownership (by transferring assets).
The real world transaction is modelled as a Composer transaction. The transaction processor both enforces the transaction - is it permitted, does the submitter own the house, etc. - but also records the transaction and transfer of ownership (by transferring the house asset between the two participants).
Is there a way to unit test the logic separately -- i.e. contractual and transactional? Here at the Garage we practice TDD, where we write test then implementation. So not being able to separate out modules kind of make it somewhat difficult, but not impossible, to practice TDD.
We might also need to be able to smoke testing -- i.e. test where a fabric network is alive or not before deployment.
Yes, you can write Mocha/Chai unit tests. Here is an example: https://github.com/fabric-composer/sample-networks/blob/master/packages/perishable-network/test/perishable.js
It's a great way to make sure your logic is functional before you deploy to a Fabric.
To smoke test you can write unit tests that run against a real network (system tests), or you can use the `composer transaction submit` cli command to submit ad-hoc transactions, or use the REST API generated by `composer-rest-server`
An article on testing business networks would be very useful...
`composer network ping` will tell you whether a business network is deployed and the version.
When you say "an article on testing business networks would be very useful ..." do you mean none exists yet?
@dselman When you say "an article on testing business networks would be very useful ..." do you mean none exists yet?
correct
Has left the channel.
We don't have anything that pulls all this together into one place.
We also have a strong CI story -- we unit and system test using Travis Ci.
Ok
When we work through an example we'll document it
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=xYXQa3TC8raxnrGmi) @dselman would love to hear/see a detailed story on that setup and configuration or thoughts around alternative CI options other than Travis...ie Jenkins, Bluemix Continuous Delivery, Jazz Build Engine, etc..
@sstone1 and @dselman I'm struggling to move to 0.5.1 toolkit, with a similar error than someone reported "Deployed chain-code (0.4.3) is incompatible with client (0.5.1)"
I'm using only local installs, and packaging my bnd with
`node node_modules/composer-cli/cli.js archive create ...`
I can confirm this is all at 0.5.1
and same for the server `node node_modules/composer-rest-server/server/server.js -p defaultProfile -n namehere -i WebAppAdmin -s DJY27pEnl16d`
where would 0.4.3 version appear? uninstall all global references to composer, literally `npm -g ls | grep composer` shows nothing relevant
It sounds like that when you deployed a business network at the time you used Composer-CLI@0.4.3
So you need to do something like `node node_modules/composer-cli/cli.js network deploy ... `
(as you now have 0.5.1)
Yes, but I did `node node_modules/composer-cli/cli.js network update -a mynetwork@0.0.1.bna -i WebAppAdmin -s DJY27pEnl16d`
How can I wipe out, and restart? Would rather start clear.
How can I wipe out, and restart? Would rather start clean.
To clear everything out and start again, you'd need to bring down your Fabric, clear up your connection profile in the .composer-connection-profiles, clear out your .composer-credentials directory, bring up a new Fabric, deploy your business network archive file
This should work as it appears you've got the latest CLI version
Hi, morning guys, trying to login to the online meeting, would the login id be same the my email registered here on slack/
to be clear on clear up, essentially `rm -Rf ~/.composer-connection-profiles/ ~/.composer-credentials/`
stop all docker containers, restart fabric, and then try again?
yep
locally, where does the persistence of the network's data live?
in the ledgers worldstate (on the peer)
I thought there was a webinar now with demo. Meeting to be held at 4pm UTC (4pm UK, 11am ET, 8am PT) on the 16th March 2017.
@jworthington Seems that the room only accepts registered users.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=uPuRj7YtFEmj7rB3G) @BrijeshJ I think because of daylight savings it got moved back an hour??
I had that issue, but am also on the phone numbers. but no one there.
The github page for the meeting has a password, but there's not a way for a "Guest" to enter such a password.
ah... good point @jdockter
@here really sorry - @jdockter is correct
4pm UTC (4pm UK, 12pm ET, 9am PT)
cool. Thanks!
oh!
Thank you
Just my luck to start organising these things in the middle of a timezone change!
Happens... no issues :)
Ah, musta been changed since I copied and pasted into my calendar. no bother
@Jakeeyturner sorry for clearly noob question, but the docker instance running the peer must store it's data somewhere on disk (I'm on Mac OS). Where is that data? I'd like to wipe it out too.
@pascallouis you could stop the docker container and start a new one
@pascallouis They'll be able to help you with that over at #fabric as I'm not 100% sure
@pascallouis They'll be able to help you with that over at #fabric-questions as I'm not 100% sure
ok, will do
wiping everything as you suggested @Jakeeyturner helped
the only thing is that I copy pasted the `.composer-credentials/member.WebAppAdmin` from a previous install as I did not know how to recreate it
That is a credential that Fabric creates when chaincode is deployed (e.g. when a business network is deployed in our case)
So, copying that file isn't a good idea as it's generated using some crypto stuff
ah, ok
In version 0.5, no more ability to list transactions? Seems only posting transactions is exposed via the Swagger UI of the explorer.
@Jakeeyturner Any option to list all operations that occurred? Ideally, with block number they made it in!
One more question. I notice that there is no Business Network Initialisation function -- i.e. equivalent of composer Transaction -- but something to initialise the state of Assets when you first activate the network. Is there one?
@pascallouis Nope. Something like the Blockchain Explorer might help. It'll show you the blocks, and you should be able to decode the transactions - https://github.com/hyperledger/blockchain-explorer
interesting, will check it out
@paul.sitoh We have an issue raised for a 'setup' here - https://github.com/fabric-composer/fabric-composer/issues/46. Although something similar can be created as shown in our sample network here - https://github.com/fabric-composer/sample-networks/blob/master/packages/perishable-network/lib/logic.js#L127
So sending a `org.acme.shipping.perishable.SetupDemo` transaction will execute that JS logic and will create some sample participants, assets, etc
Hi all, the call is open
For people who will be on the community call starting in a few minutes this is our next iteration of the Connection Profile screens & flow at low fidelity! Please feel free to explore & feedback is welcome :)
https://xd.adobe.com/view/84d4145a-2828-4e96-b1e0-17345c44ba02/
https://github.com/fabric-composer/fabric-composer/wiki/Meeting-16th-March-2017
http://composer-playground.mybluemix.net
New UI looks nice... Any thoughts on generating / displaying forms based on the json instead of direct editing? (with the option to view / direct edit as well) ?
@atomkinson Addressed in here :) - https://github.com/fabric-composer/fabric-composer/issues/219
@Jakeeyturner Thanks sir! :-)
No worries!
As mentioned on the community call, @atomkinson - here are some low-fis of what we were thinking around these forms: https://xd.adobe.com/view/fac72420-bc95-4699-b30b-2d352e7ec6cb/
So we're planning to have form *and* JSON views that update each other. In cases where the object is too complex to generate a form, we fall back on JSON only.
If an object references instances of a Composer object, we're planning to offer dropdowns to pick from (to remove the need to remember assetIDs etc.!)
Great first demo thanks everyone
Thank you all for attending!
Agree with @VipinB - really appreciate the work here. I think the idea fills what I think is a gap that is typical in the blockchain space. Everyone seems to be focused directly on the blockchain tech itself, and uses for it, but there is a big lack of tools and layers of abstraction that will be needed to bring the tech to the masses. Really exciting project imho.
Thanks guys - it's our pleasure, and glad to have you onboard!
Message Attachments
Message Attachments
IE 11.0.9600
Maybe due to some setting like block popups or maybe due to some ports being blocked from inside firewall. It might help to get more transparency into errors if possible.
I know we don't have many IE users in the team; we need to do some work to improve our IE/Edge support and also Windows support for the Composer tooling.
Hi -- Is there a TODO List sample app built using Fabric Composer and Angular that performs CRUD operations?
@sstone1 not a supporter of IE, but this is what we have in the Enterprise
Also lots of limitations on what can get through firewall
@sanjay-saxena we are not aware of a TODO sample app; if you build one, please consider submitting a pull request to add it to the `sample-networks` repository! :)
Has joined the channel.
@sstone1 thank you!
Has joined the channel.
Hi, is there a record of the meeting from yesterday?
@GeorgSchultz afraid not - we forgot it in the excitement. I've got a video of most of it, but no sound :(
Next weeks meeting will be recorded for sure
Alright, no problem!
any updates on the CouchDB integration in fabric-composer ?
@MartinMateev we're still working on v1.0 support. Once that goes in, it will work fine with either CouchDB or LevelDB. I suspect you're after complex query support (built on top of CouchDB queries), which we haven't started working on yet.
Folks, I am a bit confuse about the "participant" aspects of the composer. Does it refer to a participant role or participant individual?
There seemed to be a problem with the way cert is issued
There seemed to be a problem with the way cert is issued -- i.e. it seemed to be issued to an individual. As an analogy, the implementation is akin to relying on MySQL to assign credentials for individual users as opposed to assigning it to a role (i.e. web user).
@sstone1 Is there any composer ui tutorial or movie ?
@paul.sitoh you are free to model participants (types) -- so they can represent individuals, roles, organizations or whatever is appropriate for the problem you are trying to solve. For example, participants can have relationships to other participants, allowing you to create a manager that is related to a set of employees etc. An identity is issued to a participant instance. I might model a Bank as a participant type, and "ABC Bank" would be an instance of Bank. I could then issue an identity (cert) for ABC Bank. When it comes to writing ACLs your rules can rely on types of participant, instances, or even properties on instances. So I could have a rule that says "any instance of Bank can access this asset", or "ABC Bank can access this asset", or even "Any employee of ABC Bank can access this asset".
The model is flexible enough to support static roles as well as dynamic roles.
@annbnn the website has been updated with new material for example https://fabric-composer.github.io/tutorials/defining-a-business-network.html might be of interest as that uses the composer-playground (the new version). Also now we have updated docs I'll certainly want to record the getting started video
@dselman Ok. The only concern I have is that it is going to make writing ACL complicated. I would have preferred to delegate participant instance identity (particularly real person -- i.e. Paul Sitoh) to be managed by LDAP and leave keep blockchain identity services to be role based. No matter, we are where we are -- so to speak.
On another note: I was wondering if it is possible to specify the location of compose "caching/config" folders namely .compose-* to be at another location other than home directory? Example, you can specify export COMPOSE_HOME=${PWD}?
On another note: I was wondering if it is possible to specify the location of compose "caching/config" folders namely .compose-* to be at another location other than home directory? Example, you can specify export COMPOSE_HOME=${PWD}? I understand the identity wallet is held there and if we wanted to do DevOps now we'll need to be able to make it available to CI so it can perform deployment.
On another note: I was wondering if it is possible to specify the location of compose "caching/config" folders namely .compose-* to be at another location other than home directory? Example, you can specify export COMPOSE_HOME=${PWD}? I understand the identity wallet is held there and if we wanted to do DevOps now we'll need to be able to make it available to CI so it can perform deployment. NOTE: For future consideration, hopefully composer allow for wallet to be held in Cloud.
@paul.sitoh if you could write up a user story for a business network using LDAP and how you'd expect it to work with certs etc that would be great. I'm sure we've got lots to learn about auth/identity in general and will evolve.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=o8GRfkajf4xFZREBo) @paul.sitoh the connection profiles are loaded from user home dir -- the location of the certs is in the connection profile. In our tests we use an in-memory file system for the user home dir.
@paul.sitoh @dselman I believe Fabric has support to plug in LDAP, https://jira.hyperledger.org/browse/FAB-1144 ...this seems like more of what existing enterprises are going to want to do rather than keeping another set of identities
Is there a roadmap for the Fabric-Composer development?
@dselman FYI To get round this problem, and making it compatible with Bluemix, kind of convert the profile to make it an environmental variable instead. So in my case, I created and environmental variable call export COMPOSER_CONNECT_PROFILE={"type": "hlf",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7053",
"keyValStore": "/Users/blockchain/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100",
"networks": {
"marbles": "e8bacaf4c097273251293e62a9b68445c1a69a4e633bbbdeddab0e1bbc296379"}. In my apps i then use process.env.COMPOSER_CONNECT_PROFILE rather than rely on the .composer config folder
@dselman FYI To get round this problem, and making it compatible with Bluemix, kind of convert the profile to make it an environmental variable instead. So in my case, I created and environmental variable call export COMPOSER_CONNECT_PROFILE={"type": "hlf",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7053",
"keyValStore": "/Users/
@dselman FYI To get round this problem, and making it compatible with Bluemix, kind of convert the profile to make it an environmental variable instead. So in my case, I created and environmental variable call export VCAP_SERVICES=
@dselman FYI To get round this problem, and making it compatible with Bluemix, kind of convert the profile to make it an environmental variable instead. So in my case, I created and environmental variable call export VCAP_SERVICES={
"composer_connection": [
{
"type": "hlf",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7053",
"keyValStore": "/Users/blockchain/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100",
"networks": {
"marbles": "e8bacaf4c097273251293e62a9b68445c1a69a4e633bbbdeddab0e1bbc296379"
}
]
}
@dselman FYI To get round the connection profile problem, and making it compatible with Bluemix, kind of convert the profile to make it an environmental variable instead. So in my case, I created and environmental variable call export VCAP_SERVICES={
"composer_connection": [
{
"type": "hlf",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7053",
"keyValStore": "/Users/blockchain/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100",
"networks": {
"marbles": "e8bacaf4c097273251293e62a9b68445c1a69a4e633bbbdeddab0e1bbc296379"
}
]
}
@dselman FYI To get round the connection profile problem, and making it compatible with Bluemix, kind of convert the profile to make it an environmental variable instead. So in my case, I created and environmental variable call export VCAP_SERVICES={
"composer_connection": [
{
"type": "hlf",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7053",
"keyValStore": "/Users/
@dselman FYI To get round the connection profile problem, and making it compatible with Bluemix, kind of convert the profile to make it an environmental variable instead. So in my case, I created and environmental variable call export VCAP_SERVICES={
"composer_connection": [
{
"type": "hlf",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7053",
"keyValStore": "/Users/
That way, I can deploy to other platform with different setting without having to rely on the .composer* folder
That way, I can deploy to other platform with different env setting without having to rely on the .composer* folder
That way, I can deploy to other platform with different env setting without having to rely on the .composer* folder. Instead I rely on process.env.VCAP_SERVICES.
That way, I can deploy to other platform with different env setting without having to rely on the .composer* folder. Instead I rely on process.env.VCAP_SERVICES. I'll document the process on https://github.com/blockchainlondon in due course.
The only problem is keystore value
The only problem is keystore value. For that I had to move it to the folder containing my project and deploy to Github in oder to allow CI job to work.
I had to manually move to the folder where my project reside and deploy it Github in order to make CI work
Not an idea solution. Ideally the KeyStoreVal should be in the cloud such as objectstore so it can be easily shared.
Not an idea solution. Ideally the KeyStoreVal should be in the cloud such as objectstore so it can be easily shared. But I guess that is for the future. I have a solution for a middleware call rest2hfc. Check it out to get some inspiration. I was going to open source that but can't get approval until it is made platform agnostics
Not an idea solution. Ideally the KeyStoreVal should be in the cloud such as objectstore so it can be easily shared. But I guess that is for the future. I have a solution for that implemented in a middleware I call rest2hfc. Check it out to get some inspiration. I was going to open source that but can't get approval until it is made platform agnostics
@sstone1 @dselman Will be interesting to put the Identity parts of this in the Identity WG paper so that it can be a launching pad for the Identity interface definition see identity-wg for more details
If you have any diagrams for this or can point to them, I can get them into the doc
@jdockter thanks for info. I expect the composer team will be looking at it. I appreciate their pain in providing a solution in the short term. Identity/credential management is a complex issue
@VipinB definitely, I am still planning on writing up that document for the Identity WG
Thank you @mbwhite
Message Attachments
The team has released v0.5.5. Lots of work has gone in, particularly around the docs, fixing defects, website and the Playground. I will also be demoing Fabric Composer running on HLF v1 at the IBM InterConnect conference next week.
The team has released v0.5.5. Lots of work has gone in, particularly around the docs, fixing defects, website and the Playground. I will also be demoing Fabric Composer running on HLF v1 alpha at the IBM InterConnect conference next week.
A big THANK YOU to everyone that has contributed and tested. I am certainly biased, but I believe that together we're making Fabric Composer the best blockchain development platform in the industry! :-)
And don't forget...
Message Attachments
:thumbsup:
looks good!
Hello... previous getting started playground link is not working anymore. https://fabric-composer.github.io/start/getting-started-playground.html What is the new one? Thanks!
Has joined the channel.
Hello, I have tried running Playground locally both as a Docker instance and installing it via npm, but in both I get same message: "Connection Profiles are not available in Web Playground. If you like what you see, you can install a a local version of Fabric Composer". Does it mean that Playground can not be used to deploy into real Fabric and that I must use CLI for that or there is a way to configure Playground to use a Connection Profile?
I ask this because in docs I see "The Fabric Composer Playground is a web development experience that allows you to develop a business network definition, deploy that business network definition to a running instance of Hyperledger Fabric, ...". Thanks for any directions.
@icordoba the new Playground doesn't yet support web profiles -- we'll be working on that next week (it's purely a UI limitation at this point). You can use the older Composer UI against a HLF.
@icordoba the new Playground doesn't yet support HLF connection profiles -- we'll be working on that next week (it's purely a UI limitation at this point). You can use the older Composer UI against a HLF.
https://hub.docker.com/r/fabriccomposer/composer-ui/
I'll give older version a try but no problem. I think I can wait :-) I just wanted to make sure I wasn't missing something on 0.5.5. I think I'll use Playground to work and test, export and deploy locally with CLI once tested. Thanks.
We will support both composer-playground and composer-ui until we get to feature parity, then we will retire composer-ui
:thumbsup:
:ok_hand:
Hello again... now a question about transactions: I am trying to submit a transaction using "composer transaction submit...". The command is accepted only if I add a random transactionId, but in Playground the JSON to submit a transaction does not include the transaction id and is executed. How should I generate the transaction Id if the transaction has not been executed yet? Thanks.
Has joined the channel.
Hi -- Using the excellent Fabric Composer docs, I have successfully built a Business Network. I was able to test it in `composer-playground`. Then, I deployed the Business Network to a local instance of HyperLedger Fabric. I was able to use `composer-rest-server` and test the endpoints individually. So far, so good! However, I need some pointers to build an App(Web, mobile, or dekstop) that would use/exercise those endpoints in response to UI gestures. Ideally, the instructions should be for manually handcrafting an App instead of automatically generating and App as one gets lost in all the artifacts that get created behind the scenes to satisfy the requirements of the app framework.
Has joined the channel.
@sanjay-saxena do you setup the business network with Fabric v1.0 ? can you share me the docs how to do that ? thanks!
@ shanlusun - I am not sure if I am using Fabric v1.0. I may be using Fabric v0.6. I used the `downloadhyperledger.sh`and `starthyperledger.sh` scripts from [here](https://github.com/fabric-composer/sample-applications/tree/master/packages/getting-started/scripts). The output of `docker ps -a` looks like below:
```
@ shanlusun - I am not sure if I am using Fabric v1.0. I may be using Fabric v0.6. I used the `downloadhyperledger.sh`and `starthyperledger.sh` scripts from [here](https://github.com/fabric-composer/sample-applications/tree/master/packages/getting-started/scripts). The output of `docker ps -a` looks like below:
```
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3b4ec4a769e5 dev-vp0-d21b76ed1e9467e5126f7acb7798b4cc9c0c90ef71374829e923deb858e3b189 "/opt/gopath/bin/d..." 2 days ago Up 2 days dev-vp0-d21b76ed1e9467e5126f7acb7798b4cc9c0c90ef71374829e923deb858e3b189
54e6c4de9b3a dev-vp0-9df526e7063c573927f15a64f204511d2d6afddd11e9a565848d3fe211f7963e "/opt/gopath/bin/9..." 2 days ago Up 2 days dev-vp0-9df526e7063c573927f15a64f204511d2d6afddd11e9a565848d3fe211f7963e
479ed43aa757 hyperledger/fabric-peer "sh -c 'sleep 5; p..." 2 days ago Up 2 days 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1
fb029a9f3bdf hyperledger/fabric-membersrvc "membersrvc" 2 days ago Up 2 days 0.0.0.0:7054->7054/tcp scripts_membersrvc_1
```
For Fabric v1.0, I believe the output of `docker ps -a` should look like this:
```
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2367ccb6463d hyperledger/fabric-peer "peer node start" 6 minutes ago Up 6 minutes 7050/tcp, 7052-7059/tcp, 0.0.0.0:7051->7051/tcp fabric-peer0
02eaf86496ca hyperledger/fabric-orderer "orderer" 6 minutes ago Up 6 minutes 0.0.0.0:7050->7050/tcp fabric-orderer
71c2246e1165 hyperledger/fabric-ca "fabric-ca server ..." 6 minutes ago Up 6 minutes 7054/tcp, 0.0.0.0:8888->8888/tcp
```
as per this [doc](https://github.com/yeasy/docker-compose-files/tree/master/hyperledger/1.0). Note that I am using Fabric Composer v0.5.1.
@shanlusun - I am not sure if I am using Fabric v1.0. I may be using Fabric v0.6. I used the `downloadhyperledger.sh`and `starthyperledger.sh` scripts from [here](https://github.com/fabric-composer/sample-applications/tree/master/packages/getting-started/scripts). The output of `docker ps -a` looks like below:
```
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3b4ec4a769e5 dev-vp0-d21b76ed1e9467e5126f7acb7798b4cc9c0c90ef71374829e923deb858e3b189 "/opt/gopath/bin/d..." 2 days ago Up 2 days dev-vp0-d21b76ed1e9467e5126f7acb7798b4cc9c0c90ef71374829e923deb858e3b189
54e6c4de9b3a dev-vp0-9df526e7063c573927f15a64f204511d2d6afddd11e9a565848d3fe211f7963e "/opt/gopath/bin/9..." 2 days ago Up 2 days dev-vp0-9df526e7063c573927f15a64f204511d2d6afddd11e9a565848d3fe211f7963e
479ed43aa757 hyperledger/fabric-peer "sh -c 'sleep 5; p..." 2 days ago Up 2 days 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1
fb029a9f3bdf hyperledger/fabric-membersrvc "membersrvc" 2 days ago Up 2 days 0.0.0.0:7054->7054/tcp scripts_membersrvc_1
```
For Fabric v1.0, I believe the output of `docker ps -a` should look like this:
```
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2367ccb6463d hyperledger/fabric-peer "peer node start" 6 minutes ago Up 6 minutes 7050/tcp, 7052-7059/tcp, 0.0.0.0:7051->7051/tcp fabric-peer0
02eaf86496ca hyperledger/fabric-orderer "orderer" 6 minutes ago Up 6 minutes 0.0.0.0:7050->7050/tcp fabric-orderer
71c2246e1165 hyperledger/fabric-ca "fabric-ca server ..." 6 minutes ago Up 6 minutes 7054/tcp, 0.0.0.0:8888->8888/tcp
```
as per this [doc](https://github.com/yeasy/docker-compose-files/tree/master/hyperledger/1.0). Note that I am using Fabric Composer v0.5.1.
@shanlusun - I am not sure if I am using **Hyperledger Fabric v1.0**. I may be using Fabric v0.6. I used the `downloadhyperledger.sh`and `starthyperledger.sh` scripts from [here](https://github.com/fabric-composer/sample-applications/tree/master/packages/getting-started/scripts). The output of `docker ps -a` looks like below:
```
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3b4ec4a769e5 dev-vp0-d21b76ed1e9467e5126f7acb7798b4cc9c0c90ef71374829e923deb858e3b189 "/opt/gopath/bin/d..." 2 days ago Up 2 days dev-vp0-d21b76ed1e9467e5126f7acb7798b4cc9c0c90ef71374829e923deb858e3b189
54e6c4de9b3a dev-vp0-9df526e7063c573927f15a64f204511d2d6afddd11e9a565848d3fe211f7963e "/opt/gopath/bin/9..." 2 days ago Up 2 days dev-vp0-9df526e7063c573927f15a64f204511d2d6afddd11e9a565848d3fe211f7963e
479ed43aa757 hyperledger/fabric-peer "sh -c 'sleep 5; p..." 2 days ago Up 2 days 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1
fb029a9f3bdf hyperledger/fabric-membersrvc "membersrvc" 2 days ago Up 2 days 0.0.0.0:7054->7054/tcp scripts_membersrvc_1
```
For Fabric v1.0, I believe the output of `docker ps -a` should look like this:
```
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2367ccb6463d hyperledger/fabric-peer "peer node start" 6 minutes ago Up 6 minutes 7050/tcp, 7052-7059/tcp, 0.0.0.0:7051->7051/tcp fabric-peer0
02eaf86496ca hyperledger/fabric-orderer "orderer" 6 minutes ago Up 6 minutes 0.0.0.0:7050->7050/tcp fabric-orderer
71c2246e1165 hyperledger/fabric-ca "fabric-ca server ..." 6 minutes ago Up 6 minutes 7054/tcp, 0.0.0.0:8888->8888/tcp
```
as per this [doc](https://github.com/yeasy/docker-compose-files/tree/master/hyperledger/1.0). Note that I am using **Fabric Composer v0.5.1**.
@shanlusun - I am not sure if I am using **Hyperledger Fabric v1.0**. I may be using **Hyperledger Fabric v0.6**. I used the `downloadhyperledger.sh`and `starthyperledger.sh` scripts from [here](https://github.com/fabric-composer/sample-applications/tree/master/packages/getting-started/scripts). The output of `docker ps -a` looks like below:
```
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3b4ec4a769e5 dev-vp0-d21b76ed1e9467e5126f7acb7798b4cc9c0c90ef71374829e923deb858e3b189 "/opt/gopath/bin/d..." 2 days ago Up 2 days dev-vp0-d21b76ed1e9467e5126f7acb7798b4cc9c0c90ef71374829e923deb858e3b189
54e6c4de9b3a dev-vp0-9df526e7063c573927f15a64f204511d2d6afddd11e9a565848d3fe211f7963e "/opt/gopath/bin/9..." 2 days ago Up 2 days dev-vp0-9df526e7063c573927f15a64f204511d2d6afddd11e9a565848d3fe211f7963e
479ed43aa757 hyperledger/fabric-peer "sh -c 'sleep 5; p..." 2 days ago Up 2 days 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1
fb029a9f3bdf hyperledger/fabric-membersrvc "membersrvc" 2 days ago Up 2 days 0.0.0.0:7054->7054/tcp scripts_membersrvc_1
```
For Fabric v1.0, I believe the output of `docker ps -a` should look like this:
```
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2367ccb6463d hyperledger/fabric-peer "peer node start" 6 minutes ago Up 6 minutes 7050/tcp, 7052-7059/tcp, 0.0.0.0:7051->7051/tcp fabric-peer0
02eaf86496ca hyperledger/fabric-orderer "orderer" 6 minutes ago Up 6 minutes 0.0.0.0:7050->7050/tcp fabric-orderer
71c2246e1165 hyperledger/fabric-ca "fabric-ca server ..." 6 minutes ago Up 6 minutes 7054/tcp, 0.0.0.0:8888->8888/tcp
```
as per this [doc](https://github.com/yeasy/docker-compose-files/tree/master/hyperledger/1.0). Note that I am using **Fabric Composer v0.5.1**.
Has joined the channel.
@sanjay-saxena thank you so much! Yes, seems you are not using *Fabric v1.0*. Now I am trying to find a way to setup *Fabric v1.0* network quickly on several different servers. Not sure whether fabric-composer could help me? Anyone has some good suggestions ?
Has joined the channel.
@shanlusun hyperledger fabric have an example of setting up v1.0 in their code code base in the examples/e2e_cli directory. Also the node sdk in their e2e test directory sets up a v1.0 environment. Note that as of 0.5.5 fabric composer has some support for v1.0 but it isn't complete yet and there isn't any docs about it at the moment.
@davidkel Yes, there is an example *hackfest/docker-compose-gettingstarted.yml for Fabric v1.0* which helped me to setup a development network in the same server quickly. With this environment the example code runs well(hackfest/src/github.com/example_cc/example_cc.go).```
But now I want to setup a real network for production with several servers. Also I am not sure how to make a new peer join an existing blockchain network.
Has joined the channel.
@shanlusun The hackfest code is now pretty old. Fabric released an alpha end of last week which you should want to take a look at
Has joined the channel.
@icordoba what error do you get if you don't add the transactionId to your json when you submit via the command line ? Both the playground and the cli should be using the same logic here such that if you don't supply a transaction id then it provides a random uuid for the transactionId for you.
Is there a roadmap for the Fabric-Composer development?
Hi, I am trying to add a participant twice(duplicate ID) but instead of an error, I get a transaction timeout error. Is this a problem with my client application or this is the manner that the runtime handles such cases?
@davidkel thanks so much! Will double check the latest version for my problem.
@uber.twin This is how the runtime handles it at the moment, if you were to check the chaincode docker container, it'd mention that the participant already exists
alright, thank you
@Jakeeyturner what is the best practice today for debugging transactions?
It's worth writing unit tests, but if you're using the CLI to submit transactions you should be getting some trace files in a `logs` directory
Has joined the channel.
hi, I get the error bellow when trying to list an asset with an owner link
Error: Error:Transaction or query returned with failure: Error: Object with ID 'my.party.namespace.Party#my.party.namespace.Party#actualPartyCode' in collection with ID 'Participant:my.party.namespace.Party' does not exist
and I do have a party with id 'actualPartyCode'
this is the pattern that I use to create the link
You may be hitting this: https://github.com/fabric-composer/fabric-composer/issues/469
let partyLink = factory.newRelationship('my.party.namespace', 'Party', 'actualPartyCode');
account.owner = partyLink;
are there different namespaces involved?
they are in different namespaces, yes
participant and the asset have dedicated namespaces
As a workaround can you put them in the same ns until we fix https://github.com/fabric-composer/fabric-composer/issues/469 ?
sure, thank you
np... sorry 'bout that
it's alright, thank you for your help, I'm not ready either to ship my solution today or tomorrow:)
@shanlusun see https://github.com/hyperledger/fabric/tree/master/bddtests#welcome-to-the-behavioral-driven-development-bdd-subsytem-for-fabric
I changed all definitions to use the same namespace
looks like I can have different files to define the assets and the participants but the transactions and participants need to share the same file
1 ns per file. 1 file per ns.
yes, I just realized that. it did deploy with 2 files and same namespace for participants and assets but it wasn't working
I an trying to add composer-cli deployment capabilities to include cloudfoundry, and potentially, kubernetes. Can someone advise on procedure to add unit tests to cli source code?
I modifying composer-cli deployment capabilities to include deployment to cloudfoundry, and potentially, kubernetes. Can someone advise on procedure to add unit tests to cli source code?
Has joined the channel.
hi, I'm getting `Failed to load connector module "composer-connector-hlf" for connection profile "car"` when trying to deploy a business network, any ideas?
doing this by command: `composer network deploy -a ~/networks/car.bna -p car -i WebAppAdmin -s DJY27pEnl16d`
```>npm install -g composer-cli
npm WARN deprecated node-uuid@1.4.7: use uuid module instead
/home/ubuntu/.nvm/versions/node/v6.9.5/bin/composer -> /home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/cli.js
> hashtable@2.0.2 install /home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/hashtable
> node-gyp configure build
>composer network deploy -a ~/proj/scripts/networks/car2.bna -p car2 -i WebAppAdmin -s Blah
Deploying business network from archive /home/ubuntu/proj/scripts/networks/car2.bna
Business network definition:
Identifier: org.acme.vehicle.auction2@0.0.2
Description: Car Auction Business Network v2
Error: Failed to load connector module "composer-connector-hlf" for connection profile "car2"
Command failed.
>
```
on Ubuntu 16.04.1 LTS
```$ npm install -g composer-cli
npm WARN deprecated node-uuid@1.4.7: use uuid module instead
/home/ubuntu/.nvm/versions/node/v6.9.5/bin/composer -> /home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/cli.js
> hashtable@2.0.2 install /home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/hashtable
> node-gyp configure build
$```
Has joined the channel.
try `npm uninstall -g composer-cli` followed by `npm install -g composer-cli`
same result :(
does using `nvm` make a difference?
Hello -- I have implemented a simple Business Network(.cto and .js) for **Hyperledger Fabric 0.6** using **Fabric Composer 0.5**. However, I did not have to write any chaincode -- `Init()`, ``Invoke()`, and `Query()` -- functions. Is that abstracted away too? Or, is the chaincode needed only for non-trivial scenarios?
Hello -- I have implemented a simple Business Network(.cto and .js) for **Hyperledger Fabric 0.6** using **Fabric Composer 0.5**. However, I did not have to write any chaincode -- `Init()`, `Invoke()`, and `Query()` -- functions. Is that abstracted away too? Or, is the chaincode needed only for non-trivial scenarios?
@sanjay-saxena yeah, you don't need no chaincode using composer
@sanjay-saxena yeah, you don't need chaincode using composer
Thanks @bloxhead!
@davidkel I have created a StackExchange entry with my problem submitting a transaction (transactionId needed or error is returned): http://stackoverflow.com/questions/42894071/transactionid-when-submitting-a-transaction
Has joined the channel.
Please, Is there a documentation for the syntax for model creation?
(on fabric composer)
@annbnn There is a reference section on the fabric-composer website which I hope provides the information you are looking for specifically for the definition of models a direct link is https://fabric-composer.github.io/reference/cto_language.html
@david.stark Thank you
Has joined the channel.
@bloxhead some quick questions to see if we can try to find out the problem
1. can you run `composer -v` and post the results
2. what version of ubuntu are you running ?
3. were there any obvious errors when you installed composer-cli ?
nvm shouldn't have an impact on this as I use it myself.
This error is usually because it cannot load composer-connector-hlf npm module, so it might be worth doing a `npm list -hg --depth=5` and posting the composer-cli tree part of the out as well.
@bloxhead some quick questions to see if we can try to find out the problem
1. can you run `composer -v` and post the results
2. what version of ubuntu are you running ?
3. were there any obvious errors when you installed composer-cli ?
nvm shouldn't have an impact on this as I use it myself.
This error is usually because it cannot load composer-connector-hlf npm module, so it might be worth doing a
`npm list -g --depth=5` and posting the composer-cli tree part of the out as well.
Has joined the channel.
hi, could somebody please translate this client application error for me:
A valid SecurityContext must be specified.
@davidkel I got composer running and my network deployed ```composer-cli v0.5.5
composer-admin v0.5.5
composer-client v0.5.5
composer-common v0.5.5
composer-runtime-hlf v0.5.5
composer-connector-hlf v0.5.5```
but now I hit this:
```$ composer-rest-server -n org.acme.biznet -p car2 -i WebAppAdmin -s DJY27pEnl16d
Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlf" for connection profile "car2"
It will be retried for the next request.
Error: Failed to load connector module "composer-connector-hlf" for connection profile "car2"
at connectionProfileStore.load.then.e (/usr/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:143:27)```
```$ composer-rest-server -n org.acme.biznet -p car -i WebAppAdmin -s DJY27pEnl16d
Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlf" for connection profile "car2"
It will be retried for the next request.
Error: Failed to load connector module "composer-connector-hlf" for connection profile "car2"
at connectionProfileStore.load.then.e (/usr/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:143:27)```
```$ composer-rest-server -n org.acme.biznet -p car -i WebAppAdmin -s DJY27pEnl16d
Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlf" for connection profile "car"
It will be retried for the next request.
Error: Failed to load connector module "composer-connector-hlf" for connection profile "car2"
at connectionProfileStore.load.then.e (/usr/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:143:27)```
```$ composer-rest-server -n org.acme.biznet -p car -i WebAppAdmin -s DJY27pEnl16d
Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlf" for connection profile "car"
It will be retried for the next request.
Error: Failed to load connector module "composer-connector-hlf" for connection profile "car"
at connectionProfileStore.load.then.e (/usr/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:143:27)```
```/usr/lib
├─┬ composer-cli@0.5.5
│ ├─┬ composer-admin@0.5.5
│ │ ├─┬ composer-connector-hlf@0.5.5
│ │ │ ├── composer-runtime-hlf@0.5.5
│ │ │ ├─┬ fs-extra@1.0.0
│ │ │ │ ├── graceful-fs@4.1.11
│ │ │ │ ├── jsonfile@2.4.0
│ │ │ │ └── klaw@1.3.1
│ │ │ └─┬ hfc@0.6.5
│ │ │ ├── aes-js@1.0.0
│ │ │ ├── asn1@0.2.3 (git+https://github.com/mcavage/node-asn1.git#2c2a19e285a609adfca36a0114bb5b86cf4ac61b)
│ │ │ ├── asn1js@1.2.12
│ │ │ ├── bn.js@4.11.6
│ │ │ ├── crypto@0.0.3
│ │ │ ├─┬ elliptic@6.4.0
│ │ │ │ ├── brorand@1.1.0
│ │ │ │ ├── hash.js@1.0.3
│ │ │ │ ├── hmac-drbg@1.0.0
│ │ │ │ ├── minimalistic-assert@1.0.0
│ │ │ │ └── minimalistic-crypto-utils@1.0.1
│ │ │ ├─┬ es6-set@0.1.5
│ │ │ │ ├── d@1.0.0
│ │ │ │ ├── es5-ext@0.10.15
│ │ │ │ ├── es6-iterator@2.0.1
│ │ │ │ ├── es6-symbol@3.1.1
│ │ │ │ └── event-emitter@0.3.5
│ │ │ ├── events@1.1.1
│ │ │ ├── fs@0.0.2
│ │ │ ├─┬ grpc@1.0.0
│ │ │ │ ├── arguejs@0.2.3
│ │ │ │ ├── lodash@3.10.1
│ │ │ │ ├── nan@2.5.1
│ │ │ │ ├── node-pre-gyp@0.6.29
│ │ │ │ └── protobufjs@4.1.3
│ │ │ ├─┬ hashtable@2.0.2
│ │ │ │ └── nan@2.5.1
│ │ │ ├── js-sha3@0.5.7
│ │ │ ├── json-stringify-safe@5.0.1
│ │ │ ├── jsrsasign@5.1.0
│ │ │ ├── jssha@2.2.0
│ │ │ ├── node-uuid@1.4.7
│ │ │ ├─┬ node.extend@1.1.6
│ │ │ │ └── is@3.2.1
│ │ │ ├── pkijs@1.3.33
│ │ │ ├── sjcl@1.0.3
│ │ │ ├── sjcl-codec@0.1.1
│ │ │ ├── sleep@3.0.1
│ │ │ ├─┬ tar-fs@1.15.1
│ │ │ │ ├── chownr@1.0.1
│ │ │ │ └── pump@1.0.2
│ │ │ ├─┬ typedoc@0.4.5
│ │ │ │ ├── fs-extra@0.30.0
│ │ │ │ ├── handlebars@4.0.5
│ │ │ │ ├── highlight.js@9.10.0
│ │ │ │ ├── marked@0.3.6
│ │ │ │ ├── progress@1.1.8
│ │ │ │ ├── shelljs@0.7.7
│ │ │ │ └── typedoc-default-themes@0.4.3
│ │ │ ├── typescript@1.8.10
│ │ │ ├─┬ url@0.11.0
│ │ │ │ ├── punycode@1.3.2
│ │ │ │ └── querystring@0.2.0
│ │ │ ├─┬ util@0.10.3
│ │ │ │ └── inherits@2.0.1
│ │ │ └── uuidv4@0.3.1
│ │ └─┬ composer-connector-hlfv1@0.5.5
│ │ ├── composer-runtime-hlfv1@0.5.5
│ │ ├─┬ fabric-ca-client@0.2.3
│ │ │ ├── fs-extra@0.30.0
│ │ │ ├── jsrsasign@6.2.3
│ │ │ └─┬ nconf@0.8.4
│ │ │ ├── async@1.5.2
│ │ │ ├── secure-keys@1.0.0
│ │ │ └── yargs@3.32.0
│ │ └─┬ fabric-client@0.2.3
│ │ ├── callsite@1.0.0
│ │ ├── fs-extra@0.30.0
│ │ ├─┬ grpc@1.1.2
│ │ │ ├── node-pre-gyp@0.6.33
│ │ │ └── protobufjs@5.0.2
│ │ ├── jsrsasign@6.2.2
│ │ ├── lodash@4.17.4
│ │ ├── node-dir@0.1.16
│ │ ├─┬ path@0.12.7
│ │ │ └── process@0.11.9
│ │ ├─┬ pkcs11js@1.0.7
│ │ │ └── @types/node@6.0.65
│ │ ├── promise-settle@0.3.0
│ │ ├── stream-buffers@3.0.1
│ │ └─┬ tar-stream@1.5.2
│ │ ├── bl@1.2.0
│ │ ├── end-of-stream@1.4.0
│ │ └── xtend@4.0.1
```
Hello, have an old BNA for the car auction sample that used to work well and it is still doing so with an old composer-cli. However, with the latest level of code, I get:
```
composer-cli network deploy -a ./BNA/carauction-network.bna -i admin -s Xurw3yU9zI0l
Deploying business network from archive ./BNA/carauction-network.bna
ParseException: Expected "rule", comment, end of line or whitespace but "A" found. Line 4 column 1
Command failed.
```
Has anything changed in the parser or syntax of BNs? If so, where can I find an updated car auction sample application?
@elisabetta I ran into the same thing...there is a new rules format so make sure your permissions.acl looks like what is documented here, https://fabric-composer.github.io/reference/acl_language.html
@bloxhead so the list for cli looks ok and I gather you have the cli working now, but the rest server is failing. Could you paste the composer-rest-server npm list tree up to see if it is missing any modules ?
@jdockter: thanks. It helps. I'll see if I can find the latest version somewhere. (I can't modify it, as importing it into the playground doesn't work for the same reasons as the deployment failure).
@elisabetta you can get the latest car auction network as follows
- mkdir temp
- cd temp
- npm install carauction-network
- composer archive create -a carauction.bna -t module -n carauction-network
Is it possible to have multiple values for a single rule, for example I want three different participants to be able to create an order.....or I want one participant to have update and delete authority for an asset...if so what is the syntax, just a comma to be the deliminator?
Has left the channel.
Parsing problem solved! I now get the same problem as @bloxhead
I ran into the similar problems as @bloxhead with the
```
Failed to load connector module "composer-connector-hlf" for connection profile "car"
```
As it was reproducible locally I've started to look into what the issue could be.... I can't definately say - but at present the problem is looking to be towards a problem with the Node GPRC module installation. When the `composer-cli` is installed the node-gyp build runs. I believe that this needs Python 2 to be installed. Could you see if python is installed please?
`sudo apt-get install python` is what I've used to add python
yes python is installed:
```
root@ubuntu1604:~/BC-Connect/CICS-CarAuction/config# python -V
Python 2.7.12
```
yes python is installed:
```
root@ubuntu1604:~/config# python -V
Python 2.7.12
```
other than python, node-gyp build required g++ and make
Message Attachments
that was the error I tracked down..
As I had python missing it seemed like that could be the issue.
(note I had to add diagnostic info to get that error)
So I've managed to get past the error above with both installing python and increasing the memory I had on my vm to 6gb... this has worked correctly.
I don't think it is a problem with memory in my case. My VMs have quite some memory. node-gyp build completes without errors.
What do I have to do to get more diagnostics? I don't get any error message in the log file. Only the stdout.
@elisabetta I assume this is with the cli, could you also do a npm list -g --depth=5 and report on composer-cli ? The error results from issuing a node require for the particular npm module and node returning not found
Here it is:
```
└─┬ composer-cli@0.5.5
├─┬ composer-admin@0.5.5
│ ├─┬ composer-connector-hlf@0.5.5
│ │ ├── composer-runtime-hlf@0.5.5
│ │ ├─┬ fs-extra@1.0.0
│ │ │ ├── graceful-fs@4.1.11
│ │ │ ├── jsonfile@2.4.0
│ │ │ └── klaw@1.3.1
│ │ └─┬ hfc@0.6.5
│ │ ├── aes-js@1.0.0
│ │ ├── asn1@0.2.3 (git+https://github.com/mcavage/node-asn1.git#2c2a19e285a609adfca36a0114bb5b86cf4ac61b)
│ │ ├── asn1js@1.2.12
│ │ ├── bn.js@4.11.6
│ │ ├── crypto@0.0.3
│ │ ├─┬ elliptic@6.4.0
│ │ │ ├── brorand@1.1.0
│ │ │ ├── hash.js@1.0.3
│ │ │ ├── hmac-drbg@1.0.0
│ │ │ ├── minimalistic-assert@1.0.0
│ │ │ └── minimalistic-crypto-utils@1.0.1
│ │ ├─┬ es6-set@0.1.5
│ │ │ ├── d@1.0.0
│ │ │ ├── es5-ext@0.10.15
│ │ │ ├── es6-iterator@2.0.1
│ │ │ ├── es6-symbol@3.1.1
│ │ │ └── event-emitter@0.3.5
│ │ ├── events@1.1.1
│ │ ├── fs@0.0.2
│ │ ├─┬ grpc@1.0.0
│ │ │ ├── arguejs@0.2.3
│ │ │ ├── lodash@3.10.1
│ │ │ ├── nan@2.5.1
│ │ │ ├── node-pre-gyp@0.6.29
│ │ │ └── protobufjs@4.1.3
│ │ ├─┬ hashtable@2.0.2
│ │ │ └── nan@2.5.1
│ │ ├── js-sha3@0.5.7
│ │ ├── json-stringify-safe@5.0.1
│ │ ├── jsrsasign@5.1.0
│ │ ├── jssha@2.2.0
│ │ ├── node-uuid@1.4.7
│ │ ├─┬ node.extend@1.1.6
│ │ │ └── is@3.2.1
│ │ ├── pkijs@1.3.33
│ │ ├── sjcl@1.0.3
│ │ ├── sjcl-codec@0.1.1
│ │ ├── sleep@3.0.1
│ │ ├─┬ tar-fs@1.15.2
│ │ │ ├── chownr@1.0.1
│ │ │ └── pump@1.0.2
│ │ ├─┬ typedoc@0.4.5
│ │ │ ├── fs-extra@0.30.0
│ │ │ ├── handlebars@4.0.5
│ │ │ ├── highlight.js@9.10.0
│ │ │ ├── marked@0.3.6
│ │ │ ├── progress@1.1.8
│ │ │ ├── shelljs@0.7.7
│ │ │ └── typedoc-default-themes@0.4.3
│ │ ├── typescript@1.8.10
│ │ ├─┬ url@0.11.0
│ │ │ ├── punycode@1.3.2
│ │ │ └── querystring@0.2.0
│ │ ├─┬ util@0.10.3
│ │ │ └── inherits@2.0.1
│ │ └── uuidv4@0.3.1
│ └─┬ composer-connector-hlfv1@0.5.5
│ ├── composer-runtime-hlfv1@0.5.5
│ ├─┬ fabric-ca-client@0.2.3
│ │ ├── fs-extra@0.30.0
│ │ ├── jsrsasign@6.2.3
│ │ └─┬ nconf@0.8.4
│ │ ├── async@1.5.2
│ │ ├── secure-keys@1.0.0
│ │ └── yargs@3.32.0
│ └─┬ fabric-client@0.2.3
│ ├── callsite@1.0.0
│ ├── fs-extra@0.30.0
│ ├─┬ grpc@1.2.0
│ │ ├── node-pre-gyp@0.6.34
│ │ └── protobufjs@5.0.2
│ ├── jsrsasign@6.2.2
│ ├── lodash@4.17.4
│ ├── node-dir@0.1.16
│ ├─┬ path@0.12.7
│ │ └── process@0.11.9
│ ├─┬ pkcs11js@1.0.7
│ │ └── @types/node@6.0.65
│ ├── promise-settle@0.3.0
│ ├── stream-buffers@3.0.1
│ └─┬ tar-stream@1.5.2
│ ├── bl@1.2.0
│ ├── end-of-stream@1.4.0
│ └── xtend@4.0.1
```
@elisabetta so there isn't anything obvious if something is missing causing the module not to load. I assume you are using node 6, not node 7 ?
node v6.10
@elisabetta you can get more debug info node module loading by setting the environment variable
```
export NODE_DEBUG=module
```
and rerunning the command. It will generate a lot of output though
Has joined the channel.
Might be worth upgrading to Node 6.9.5
Hang on, nevermind
Hi guys, can you change your connection_profile directory path? Is there a env variable for it
It currently resides in the current users home directory. Not currently a env variable to configure it's location.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=z7KhjEwY3d65HupLb) this does not look like it's possible or at least what I have tried thus far in the playground doesn't not like the syntax. It also seems like I can't just give update authority to a property of a resource but would also have to give update authority to the resource itself before I limit the authority to the property...but again maybe I have something wrong...please advise.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=z7KhjEwY3d65HupLb) this does not look like it's possible or at least what I have tried thus far in the playground doesn't not like the syntax. It also seems like I can't just give update authority to a property of a resource but would also have to give update authority to the resource itself before I limit the authority to the property, which isn't what I want...but again maybe I have something wrong or need to structure rules in a different way...please advise.
Message Attachments
Message Attachments
Message Attachments
Why can I not submit a transaction ?
It looks like you have modeled your asset with an identifier of assetId...you gave assetId a value of 1, so that transaction needs to reference the value of asset as 1, not assetId:1
Has joined the channel.
@icordoba great questions, hopefully we've manage to answer them for you now
@elisabetta I haven't been able to recreate the problem so would be great if you can see if you can get some info with the debug mode for node.
@bloxhead are you still having problems with the rest server ? if so then we could use more debug info using the
```
export NODE_DEBUG=module
```
option before running the rest server and hopefully it will output some info as to what the problem is
Yes thank you @jdockter
I have been thinking about Participants in a business network. Participants should have a known identity, which I am assuming means that they need to registered with Member services? Does this also mean that a participant would have a peer running in the network? In the Property Network example, a property owner will want to be involved in a transaction to sell the property, that only the buyer and perhaps the conveyancer is involved in (blockchain could be used to reduce the role (possibly eliminate) the role of the agent in the property market)........I am guessing this means that buyers and sellers will all need to be running a peer in the network for this to happen using channels? Am I missing something?
@davidkel: I've managed to get past that problem. There were some node-gyp modules missing, despite the fact that the build seemed to complete successfully. I ran an upgrade and that solved that issue. I can replicate the problem if you need to track down what the problem was, as I have a clone of the VM before my attempts to install composer.
@elisabetta glad you got passed the problem, I would be very interested to recreate the problem as it would be a good test to see if we can improve the error message to indicate what the problem was
@bravera Participants who want to transact on the fabric will need to be issued with identities.
@davidkel right but how does the privacy piece work regarding transactions involving these participants? Do they need a channel to transact upon, and if so, does that mean they have to be running a peer?
@davidkel. Ok, I'll do that.
I'm now hitting another problem:
```
2017-03-22T10:58:51.621Z ERROR HFCUtil :deployChainCode() onError {"0":{"error":{"code":14,"metadata":{"_internal_repr":{}}},"msg":"Error: {\"created\":\"@1490180331.619779950\",\"description\":\"Failed parsing HTTP/2\",\"file\":\"../src/core/ext/transport/chttp2/transport/chttp2_transport.c\",\"file_line\":2022,\"grpc_status\":14,\"referenced_errors\":[{\"created\":\"@1490180331.619766923\",\"description\":\"Expected SETTINGS frame as the first frame, got frame type 80\",\"file\":\"../src/core/ext/transport/chttp2/transport/parsing.c\",\"file_line\":479}{\"created\":\"@1490180331.619775653\",\"description\":\"Trying to connect an http1.x server\",\"file\":\"../src/core/ext/transport/chttp2/transport/chttp2_transport.c\",\"file_line\":1995,\"http_status\":400}]}"}}$
Error: Error: {"created":"@1490180331.619779950","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1490180331.619766923","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1490180331.619775653","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed.
```
the first phase of blockchain user registration completes successfully and I get back the enrollment certificates, so the connection to membersrvc seems to work fine
hi, are the CTO model relations eager or lazy?
meaning would a resource object automatically load all its related resource objects?
and could this become a performance issue?
@elisabetta never seen that sort of error before. How are you running fabric ?
@davidkel: I can't replicate yesterday's problem any longer. I've started from a VM that is the same as I used yesterday. I now get directly the error above.
I'm running the peer natively in another VM in another host than the VM with composer cli
@elisabetta is it possible that whatever ports you have configured in your connection profile something else is now listening on that port rather than the peer ?
I don't think so, I can run REST apis against that peer on that port
but I'll double check..
@elisabetta what level of fabric are you running ? and just out of interest could you post your connection profile
v0.6. Here is the connection profile:
```
{
"type": "hlf",
"membershipServicesURL": "grpc://9.20.5.193:20000",
"peerURL": "grpc://9.20.5.193:20001",
"eventHubURL": "grpc://9.20.5.193:20003",
"keyValStore": "/root/.composer-credentials",
"deployWaitTime": "100",
"invokeWaitTime": "100"
}```
Has joined the channel.
Has joined the channel.
Message Attachments
Can anyone help me get through this install error on Mac OS?
I Am trying to run the following install command from the published instructions
Message Attachments
@tlplickebaum thanks for the screenshots - the first one is indicating there's no xcode - some of the modules that are dependencies of Fabric-Composer have native code that needs to be compiled . so a C compiler is required.
Though I'm not a Mac user so not sure the exact sequence of steps needed to do that install
Has joined the channel.
@mbwhite - Thank you for the rapid response! Installing Xcode now - will let you know how that goes.
@mbwhite - That worked! Thanks again - I am up and running.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=aquAZbM4zyuc3y3Q6) @dselman can you shed some light on my questions?
Has joined the channel.
Has joined the channel.
Has joined the channel.
thanks @tlplickebaum - come back here if you runtime anything else :-)
Has joined the channel.
hi, I am running into the error bellow when I try to deploy a network; could anybody help me figure what could be wrong?
Creating Business Network Archive
Looking for package.json of Business Network Definition in /home/pg/workspace/sample-applications/packages/getting-started/...
Found:
Description:My Network
Name:my-network
Identifier:my-network@1.0.0
Written Business Network Definition Archive file to myNetwork.bna
Command completed successfully.
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/home/pg/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/home/pg/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/home/pg/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)
@uber.twin those errors look like there isn't a running fabric or it cannot connect to a running fabric
you are right, my runtime is down, thank you
this might be considered irrelevant but the CTO model syntax error report fail to specify the implementing file (undefined):
"Syntax error in file undefined. Expected "-->", "default", "o", "optional", "range", "}", comment, end of line or whitespace but ";" found. Line 7 column 24"
Has joined the channel.
Has joined the channel.
hi, very nice update to the website since I was last there some time ago, looks awesome! Does someone know the answer to the following. I applied for a bluemix trial account.
How can I deploy a business network to the Blockchain starter network I created on Bluemix. I've created a new connection profile and added the membership service and peer address but that doesn't seem to work. Is there anything else I should do or should that just work?
Deploying business network from archive digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
TypeError: First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.
Command failed.
After running: composer network deploy --archiveFile digitalPropertyNetwork.bna -p BluemixProfile --enrollId WebAppAdmin --enrollSecret dbca94295e
@bonen I wonder if your .bna file is valid ? if you rename it to .zip does it then open up correctly and have the appropriate structure and files ?
@bonen I wonder if your .bna file is valid ? if you rename it to .zip does it then open up correctly and have the appropriate structure and files ? if that's ok then maybe something amiss in the profile ?
@davidkel thanks for your help. seems like a valid structure and if I deploy to a local HFC it works
digitalPropertyNetwork
├── README.md
├── lib
│ └── DigitalLandTitle.js
├── models
│ └── net.biz.digitalPropertyNetwork.cto
└── package.json
is there a way to resubmit the same transaction for processing?
@bonen how about the bluemixProfile ?
@davidkel {
"type": "hlf",
"membershipServicesURL": "grpcs://772c67a6020e044d8915dc2d6673afe8e-ca.us.blockchain.ibm.com:30003",
"peerURL": "grpcs://772c67a6020e044d8915dc2d6673afe8e-vp3.us.blockchain.ibm.com:30003",
"eventHubURL": "grpcs://772c67a6020e044d8915dc2d6673afe8e-vp3.us.blockchain.ibm.com:31003",
"keyValStore": "/Users/bonen/.composer-credentials"
}
maybe it has to do with the grpcS instead of the grpc (without s) in the examples
if you are using grpcs then I think you need some certificate information as well in your profile
@bonen if you are using grpcs then I think you need some certificate information as well in your profile
@davidkel alright thanks! Do you know where you can specify the path to the certificate or should it be baked-in to the hfc module?
@bonen there is a stackoverflow entry about this that should help
http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
let me know if it doesn't
@davidkel great thanks I am going to try it out!
suppose a transaction doesn't execute when it's first submitted because of insufficient funds; suppose another transaction gets executed and funds become available for the first pending transaction. is there a runtime API allowing to resubmit it?
hi
for the meeting of today
i have not an account
ca n'i join ?
yes, the meeting will be open for guests
when I open it up!
ok Merci :)
Have a good call all. Please accept my apologies, I can't make it today. Still at IBM Interconnect - demoing Composer which is getting LOTS of interest.
@davidkel When I wrongly gave in the certificate info I got an error: ---Security handshake failed---. When i figured out there was a mistake with cert info I corrected it and now I don't get the error, so it seems the connection is ok:) Though I am getting a new error:
Deploying business network from archive digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
@davidkel Its not clear to me what is meant on stackoverflow with (so I didn't do it, might be the reason there is an error):
---However, you must be running a local copy of the Composer Playground as the version of Composer running on Bluemix (fabric-composer.mybluemix.net) only supports the web connection profile at the moment.---
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=ZRBYC2rNffBuFRGvp) @sstone1 are you recording these? not sure I'm going to be able join today
@bonen that type of error can mean that it isn't able to connect to the running fabric.
The comment about Composer Playground is because we deploy a version of it to bluemix but as it only supports the web connection profile you can't use it to try to connect to your bluemix instance of fabric
@davidkel, thanks again a lot for your help today, solved it, it works!
Has joined the channel.
Hi, can anyone provide me with information regarding today's call? Thanks!
@jdockter got it recorded, will upload it soon!
Thanks for everyone that attended :)
@sstone1 @jdockter Is there a web site where I can go to access the recording or any previous calls? Thanks!
Uploading it to YouTube at the moment - will post the link in here when it's ready, and also update the GitHub agenda page: https://github.com/fabric-composer/fabric-composer/wiki/Meeting-23rd-March-2017
@sstone1 much obliged!
Video still processing - will be later this evening.
@here in the meantime, our next biweekly community call is next Thursday 30th March. Please suggest any topics you'd like to cover on the call! Any topic you want... whether it's big or small, and we can go as high level or low level as you like :)
Timings/links/etc here: https://github.com/fabric-composer/fabric-composer/wiki/Meeting-30th-March-2017
Has anyone tried building composer functions in Typescript? Just started thinking about this today during the call, so I'm not sure if VS Code would handle the transcompile automatically (I think it will) or if something would need to be built into the composer plugin to run tsc first.
I noticed the documentation changed on https://fabric-composer.github.io/index.html but I don't see any posts related to this update. Do we posting on the channel when we update the documentation or is there any other channel where we post updates to documentation.
@atomkinson funny you ask, @xuanyue202 has been looking at additional language support. It's something we could discuss on next weeks call. See https://github.com/fabric-composer/fabric-composer/issues/554 for information.
As far as I'm aware nobody has tried it. But you should be able to do the transpilation client side, including the resulting .js files in that archive.
@sstone1 Thanks! I'll take a look at 554 and if I can find some time I'll look into it too.
Until we get native Node.js chaincode support in base Fabric I think it would be prohibitively difficult to run most transpilers on the chaincode side during deployment. It may be quicker to focus on that first.
yea.. I would tend to agree. Client side transpile makes most sense, and I'm pretty sure that at least VSCode will handle it for you if you include the right things, like a tsconfig file and such.
@gauthampamu we've been working on the docs updates, these are in GitHub issues - appreciate we haven't said much in here though. We have a specialized information developer @EdProsser in the team who's ripping up the old docs (written by developers) and making them much easier to consume.
Would love to hear what you think of the new docs!
@sstone1 The bit in the call today where you covered the Angular app made me thing about it. :-) (BTW, was that Angular 1 or 2?)
Angular 2 with Typescript ;)
All of the playground/UI code is also written in Angular 2 with Typescript
@here the recording from the "Introduction to Composer" meeting is now available on YouTube here: https://youtu.be/fdFUsrsv5iw
Has joined the channel.
Wow - just in time - thanks for the recording. I'm just getting started, and need to convert a fabric V0.4 to V1.0. Since I assume it needs a re-write, I thanks you for saving me time :)
@sstone1
No problem @jvkatzman, let us know how you get on!
hi, sorry for insisting on this matter, is there a way to resubmit a transaction, i.e. have the "onTransaction" function execute more than one time for the same transaction object?
@uber.twin how are you submitting the transaction? If it fails, you should just be able to call submitTransaction() or do the REST POST call again?
I'd like to be able to resubmit it again from within the runtime
it doesn't fail technically, it just can't execute because of some business rules
e.g. insufficient funds
later on, other transactions makes the funds available for the first transaction. then I'd expect to be able to resubmit the first transaction with a runtime call
You can't do that. Nothing is persisted if a transaction fails, we throw an exception and the transaction gets rolled back by Fabric.
but it doesn't "fail" from a technical point of view, it sets a pending state on an asset transfer
because there is not enough of that asset available at the current time
but it may become available
then I'd like to be able to rerun the "onTransaction" routine
form the runtime, as I detect the required asset quantity is available
Where would the "pending state" property be stored?
at the asset level
At the moment, I think the only way to do it is to submit the transaction again, or... you could model the transfer as an asset itself, and have two transactions: SubmitTransfer and ResubmitTransfer
SubmitTransfer would create a Transfer asset with all the details in, and check to see if enough of the asset is available - if so, perform the transfer, if not, set the Transfer to pending.
ResubmitTransfer would take a reference to an existing Transfer asset and reprocess it.
You could move the common JavaScript code into a utility function and call it from the onSubmitTransfer and onResubmitTransfer JavaScript functions.
alright, thank you
so submitting a transaction can be done only through the client API, right?
Through the JavaScript client API (composer-client) or through the REST API
yes
something else, are there any plans to be able to define runtime timers?
You mean to fire transactions based on a cron job?
You mean to fire transactions based on an automated timer or cron job?
or is it possible at the present moment?
yes
Not possible using just the chaincode today. We'd need Fabric support for that feature to be able to build it into our chaincode.
not necessarily fire cto transactions, but run cron jobs
ok
thank you again
However you could set up an external timer that drives the client API to submit a transaction at a set interval.
I'm pretty sure that you could use something like OpenWhisk or Amazon Lambda functions to do that.
yes, but then I'll need to have a special client role
which will condition the runtime functionality
Yep, you would have to have a "scheduler" participant
@sstone1 looking forward to the discussion on the language support thing next week. Although the meeting is too late for me, I will go to watch the recording.
@atomkinson Client-side transpiling is a quick solution. But chaincode-side transpilation also has its advantage, (although I admit there is a long way to go). First, it makes the bna more readable and manageable in Playground. Moreover, the current version of JS scripts require transaction functions to be global functions with comment annotations, which might not be doable for all the transpilers.
Has joined the channel.
Message Attachments
Message Attachments
@sstone1 I define my business network locally (CTO & JS files). What's the best lace to deploy it between these two interfaces ?
And how to do if I want to simulate a participant using an IP address (or a server) in USA and another participant using an IP address (or a server) in Switzerland for example ?
Does Fabric composer allow to do that ?
Or I can only run my business network locally ?
Hi.
I am trying Fabric-composer v0.5.5.
Which should I use Fabric v0.6 or v1.0?
@annbnn the first picture is our old UI, which will be removed soon. The second picture is our new UI, or "Playground". The playground has features that allow you to import/export business network definitions (CTO, JS & ACL files) to and from your local file system.
Fabric Composer can connect to a Hyperledger Fabric instance running anywhere; you simply need to provide the connection details in the connection profile. In your example, there would be a "USA" connection profile used by the USA participant with the URL of the USA Fabric peer node, and a "Switzerland" connection profile used by the Swiss participant with the URL of the Switzerland Fabric peer node.
@norinos you should use Fabric v0.6 at this time. Anything you develop using Fabric Composer on top of Fabric v0.6 will run on Fabric v1.0 as well.
The support for Fabric v1.0 is coming along nicely and we will be documenting how to use it soon, but it will be a little longer before we get our getting started guide and playground installation updated.
@sstone1 Thank you.
By the way, I saw this *namespace net.biz.digitalPropertyNetwork*
How do you define your namespace ?
'use strict';
/**
* Process a property that is held for sale
* @param {net.biz.digitalPropertyNetwork.RegisterPropertyForSale} propertyForSale the property to be sold
* @transaction
*/
function onRegisterPropertyForSale(propertyForSale) {
console.log('### onRegisterPropertyForSale ' + propertyForSale.toString());
propertyForSale.title.forSale = true;
returAssetRegistry('net.biz.digitalPropertyNetwork.LandTitle').then(function(result) {
return result.update(propertyForSale.title);
}
);
}
@sstone1 I got this error when I tried to test the file above
*ReferenceError: returAssetRegistry is not defined*
O the Playground UI.
on the Playground UI.
Your namespace is defined in your cto file. That error is because you're missing an 'n'
```returAssetRegistry('net.biz.digitalPropertyNetwork.LandTitle').then(function(result) {``` should be ```return AssetRegistry('net.biz.digitalPropertyNetwork.LandTitle').then(function(result) {```
```returAssetRegistry('net.biz.digitalPropertyNetwork.LandTitle').then(function(result) {```
should be
```return AssetRegistry('net.biz.digitalPropertyNetwork.LandTitle').then(function(result) {```
@Jakeeyturner Thank you
The definition is just writting *namespace net.biz.digitalPropertyNetwork*
right ?
@annbnn you are in complete control of the namespaces that you want to use, you can pick one suitable for your business network or organization
How the definition is done ?
You can choose any name you want as a namespace ?
Another question. How to cancel/delete files on the Fabric composer Playground if you want to start from scratch ?
Correct, you can choose any name you want as a namespace.
We are working on delete.
If you want to start from scratch, press the Import button in the bottom left.
You can them Import any of our predefined sample business networks.
Okay @sstone1
What is a concept ?
https://fabric-composer.github.io/reference/cto_language.html
Might be worth looking here :)
@Jakeeyturner Thank you :-)
Many things to learn in the same time :-P :-)
But its great :-)
hi, does the chaincode runtime allow js classes and node modules definitions?
@uber.twin no, it doesn't. We use Otto, which is an ES5 compliant JavaScript interpreter written in Go. It does not support classes, and it does not support modules from npm.
You might have some luck using a transpiler like Babel to go from ES6/7 to ES5 but that's not been tried.
@sstone1 you guys pushing out any stable updates today?
@sstone1 Does ES5 have any import mechanism allowing to structure code in multiple js files?
@jdockter no, we're going to cut one early next week instead
@uber.twin ES5 doesn't have any such feature, but for Composer all functions in all JS files in the business network definition can be called from anywhere.
So you can have a utility.js with a utilFunction() that you can call from transactions.js in onTransferAsset()
ok, that sounds good, thank you
Hi everyone,
I deployed a business network to the Bluemix Blockchain starter network, that works and I can add participants, so far so good.
$ composer participant add -n bloq-network -p bluemixProfile -i admin -s 542sadfasd -d '{"$class":"org.notarynodes.bloqNetwork.Investor","investorId":"inv1","name":""}'
But when I issue an identity I get an error.
$ composer identity issue -n bloq-network -p bluemixProfile -i admin -s 542sadfasd -u admin -a "org.notarynodes.bloqNetwork.Investor#inv1"
Error message:
2017-03-24T15:50:08.559Z ERROR HFCUtil :createIdentity() Register request failed {"0":{"stack":["{Error}Invalid affiliation group institution_a Error: Invalid affiliation group institution_a"," at /usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:417:17"]}}$
Error: Invalid affiliation group institution_a
Command failed.
Hi everyone, I am trying to deploy a business network to the Bluemix Blockchain starter network.
The CTO file:
namespace org.acme.sample.TradeTransaction
/** Participants. These are the actors in the business network.
* A participant might be an individual or an organization.
* A participant has an one of more attributes that are used to identify them to the business network.
*/
abstract participant User identified by userId {
o String userId
o String name
}
participant Custodian extends User{
o String userId
o String name
}
/** Assets. Assets are created by participants, and subsequently exchanged between them.
* Assets can have a rich lifecycle, as defined by the transaction in which they are involved.
*/
asset OrderAsset identified by orderId{
o String orderId
o String comment
}
/** Transactions. These are operations that are performed on assets and other
* resources as they move through their lifecycle within the business network.
*/
transaction OrdersRegistrar identified by orderRegistrarId {
o String orderRegistrarId
The JS file:
'use strict';
/**
* @param {org.acme.sample.TradeTransaction.OrdersRegistrar}
* @transaction
*/
function OrderTransaction(orderSampleTransaction) {
console.log('### onRegisterOrderSampleTransaction ' + orderSampleTransaction.toString());
orderSampleTransaction.order.orderId = orderSampleTransaction.newOrderId;
orderSampleTransaction.order.comment = orderSampleTransaction.NewComment;
return getAssetRegistry('org.acme.sample.TradeTransaction.OrderAsset')
.then(function (assetRegistry) {
return assetRegistry.update(orderSampleTransaction.order);
});
}
I can not load the JS file on the playground.
I have the following error:
An error has occured *TypeError: t.type is null*
I dont understand why ...
:disappointed:
It may be because your JSDoc annotation for @param is invalid. Is should be something like this: ```/**
* A shipment has been received by an importer
* @param {org.acme.shipping.perishable.ShipmentReceived} shipmentReceived - the ShipmentReceived transaction
* @transaction
*/```
It may be because your JSDoc annotation for @param is invalid. Is should be something like this:
```/**
* A shipment has been received by an importer
* @param {org.acme.shipping.perishable.ShipmentReceived} shipmentReceived - the ShipmentReceived transaction
* @transaction
*/```
You are missing the name of the method argument
^ @14gracel that's your code isn't it ;)
Need a better error
@sstone1
If you define the name space like that in the cto file:
namespace org.acme.sample.TradeTransaction
In the JS file, this makes sense for you ?
@dselman
I stil have the same error ..
I stil have the same error ..
can you create a question on StackOverflow using the fabric-composer tag please? That way you can attach your code etc.
@jdockter What is the trick for the name space ?
How to connect the name space between CTO and JS files please ?
try this
```/**
* @param {org.acme.sample.TradeTransaction.OrdersRegistrar} orderSampleTransaction - sample
* @transaction
*/
function OrderTransaction(orderSampleTransaction) {
console.log('### onRegisterOrderSampleTransaction ' + orderSampleTransaction.toString());
orderSampleTransaction.order.orderId = orderSampleTransaction.newOrderId;
orderSampleTransaction.order.comment = orderSampleTransaction.NewComment;
return getAssetRegistry('org.acme.sample.TradeTransaction.OrderAsset')
.then(function (assetRegistry) {
return assetRegistry.update(orderSampleTransaction.order);
});
}```
You always need to have a variable (or at least that is what I call it) on the param that matches the signature of the function
Message Attachments
@jdockter I got that error Error: No registered namespace for type org.acme.TradeTransaction.OrdersRegistrar
when I tried to add the files from my computer.
@jdockter
from your code above your namespace is `org.acme.sample.TradeTransaction` right?
that will come from your cto file
@annbnn ^^^
@jdockter I deleted "sample"
Now in the CTO file, I have *namespace org.sample.TradeTransaction*
and in the JS file I have
*/**
* @param {net.biz.digitalPropertyNetwork.RegisterPropertyForSale} propertyForSale the property to be sold
* @transaction
*/
function onRegisterPropertyForSale(propertyForSale) {*
Oups sorry
*/**
* @param {org.acme.TradeTransaction.OrdersRegistrar} orderSampleTransaction
* @transaction
*/
function OrderTransaction(orderSampleTransaction) {*
I got the same error while using what you suggested me above:
*
Error: No registered namespace for type org.acme.sample.TradeTransaction.OrdersRegistrar
*
@jdockter
:-)
Has joined the channel.
Please open a question on StackOverflow and attach the files.
Please open a question on StackOverflow using the `fabric-composer` tag and attach the files.
Where the fabri-composer tag ?
Where is the fabric-composer tag location ?
@dselman
@jdockter
http://stackoverflow.com/questions/tagged/fabric-composer
Has joined the channel.
Has joined the channel.
I understood the problem above @dselman & @jdockter :thumbsup:
Just a question. The zip file to import to deploy a model using the fabric composer playground contains CTO, JS and package.son file. Right ?
Does some one here knows in few sentences the full process to deploy a business network using the fabric composer playground ?
(using external CTO and JS files)
I wrote code for CTO and JS files.
The import does not work.
Put the JS files under a folder called `lib`, put the CTO files under a folder called `models`. Put the package.json file in the root. Use the `composer archive create` command to create the BNA file.
@dselman Thank you. Which files do I need to import after this process on the playground ?
You import the BNA file, using the Import/Replace button
Thank you. I will try it now.
Hi all! Can't find the following in the documentation nor on stackoverflow : 1) Is it possible to have autoincrement integer identifiers for assets, participants and transactions? 2) is it possible to list multiple conditions within a single ACL rule?
1) No. 2) Yes. Just use `&&`.
:thumbsup:to be able to use `&&`
Has joined the channel.
@bonen @jdockter the condition for an ACL rule is a JS `if` expression, so anything valid in an `if` should work.
ok thanks! @dselman @jdockter
Has joined the channel.
Has joined the channel.
@dave.enyeart I am looking at CouchDB query in Fabric at moment. Do you know what types of query Fabric support?
Hey.. Idea for the room mods.. Update the Room Info with links to the Composer website, github, etc.. :)
@FenglianXu Please see https://github.com/hyperledger/fabric/blob/master/examples/chaincode/go/marbles02/marbles_chaincode.go sample that illustrates the various types of ledger queries that are available, with and without couchdb
@dave.enyeart thank you
Has joined the channel.
how can I use the .bna file exported from fabric composer?
You can import it back into the Playground, or you can deploy it to a running Hyperledger Fabric using the `composer network deploy` CLI command
thank you for the prompt response. Is composer this tool: https://getcomposer.org/ ?
or is it the docker-compose tool?
Fabric Composer is here: http://fabric-composer.org
ah now I get it?
thanks
Hi! Today I play fabric-playground with http://composer-playground.mybluemix.net
Then Submit Transaction doesn't work. it show this error. how to do that.
Message Attachments
This is bna file, I use.
Message Attachments
Hi all! How could I give access to just a single subfield of SampeAsset while having a condition on another subfield of SampleAsset?
rule SampleConditionalRule {
participant(p): "org.SampleParticipant"
operation: UPDATE
resource(r): "org.SampleAsset.field"
condition: (r.owner.getIdentifier() == p.getIdentifier())
action: ALLOW
}
Here (r) becomes [org.SampleAsset.field.owner] instead of what I would like (r) to be: [org.SampleAsset.owner]. Anybody an idea how I should do that?
By the way, maybe I should post questions on stackoverflow, right, so some history builds up for people asking the same question?
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=afqzsoKSMSj53BtRF) @tarima this probably means that `fromAccount` or `toAccount` does not exist.
I.e. the resource `UserA` or `UserB` does not exist.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=2Kd66GkLWQcBa8eow) @bonen there's no easy way to do this, but it is an interesting requirement.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=PSpK47JmeizfDiMZQ) @bonen good idea!
I'm getting the following error when trying to use the exists function
```21:52:48.085 [Concerto] ERRO : @JS : Engine :invoke() Caught error, rethrowing {"stack":["{TypeError}'exists' is not a function TypeError: 'exists' is not a function"," at \u003canonymous\u003e:2:26885"," at \u003canonymous\u003e:2:27007"," at \u003canonymous\u003e:1:18228"," at \u003canonymous\u003e:1:13226"," at \u003canonymous\u003e:1:28054"," at \u003canonymous\u003e:1:27899"," at call (\u003cnative code\u003e)"," at \u003canonymous\u003e:1:9342"," at call (\u003cnative code\u003e)"," at call (\u003cnative code\u003e)"]}
```
code...
``` function invokeDetailsUpdate(details) {
console.log('### step 1 - ###');
return getAssetRegistry('test.network.Details')
.then(function (detailsRegistry) {
return poDetailsRegistry.exists(details.poNumber);
}).then(function (detailsFound) {
console.log('### step 2 - ###');
});
}```
``` function invokeDetailsUpdate(details) {
console.log('### step 1 - ###');
return getAssetRegistry('test.network.Details')
.then(function (detailsRegistry) {
return detailsRegistry.exists(details.poNumber);
}).then(function (detailsFound) {
console.log('### step 2 - ###');
});
}```
ah nm...sorry looks like I was on the wrong API
composer-client vs composer-runtime for AssetRegistry
Yes, we don't have `exists` on the runtime API: https://fabric-composer.github.io/jsdoc/module-composer-runtime.AssetRegistry.html
https://github.com/fabric-composer/fabric-composer/issues/268
We need to get on that...
We need to get on that... Can we bump the priority @sstone1 -- should be an easy one, no?
so is the idea just to do a get(id) and then catch...oh okay
what isn't easy for @sstone1 :)
We are blessed! :-)
@jdockter flattery will get you everywhere. Also beer bribes are accepted the next time you're in town ;)
@dselman
@sstone1 deal...open a tab at the The Mighty Duck, I'm sure BetaWorks will cover :)
I already UserA and UserB.
Message Attachments
I expect Amount of UserA is 90. and UserB is 210. but no change
It looks like the namespace is wrong for Account.
Message Attachments
Message Attachments
Can you try importing the BNA file from the zip into the playground?
Yes. I import this file.
Message Attachments
Message Attachments
I fixed the namespace in the JS file and tested that I can perform a transfer. You should be able to just import into Playground, create your assets and then submit the transfer.
e.g. the namespace was wrong here...
Message Attachments
Go create something great! :-)
:bangbang:
I missing code. sorry.
I change it. then I work!
Message Attachments
Thanks your kindness.
My pleasure.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=damy33fmyHimjngjS) @dselman ok thanks!
hi, I understood the composer runtime is an ES5 implementation. but I see it makes use of promises and I thought promises come with ES6.
So after all, is there a native Promise object in composer runtime?
Just a reminder - there is a community meeting this Thursday (30th March). The timings and dial in details are on the Wiki here: https://github.com/fabric-composer/fabric-composer/wiki/Meeting-30th-March-2017. Please let me know if you have any suggestions that you'd like to see discussed on the agenda :)
hi, Is my assumption correct that assets can only be created/updated/deleted trough transactions and not directly from within application code / the command line?
No, there is a full CRUD API for assets and participants
You can CRUD assets and participants via the REST API or JS client API, or the runtime API.
heh...
Why do you have the concept of transactions then? I was currently putting the complex logic (conditions), to manipulate assets, in the transaction definitions. If participants can omit the transaction and directly manipulate an asset, I need to capture all that same conditions in the ACL file. But the rather complex condition logic I currently use can't be expressed in ACL. Or is there a way to only e.g. allow an asset to be created via a certain transaction?
Or do I miss a point here:) ?
@bonen I think you raise a valid point regarding access control. Transactions allow you to do much more than CRUD operations on a single asset/participant -- they can perform arbitrary updates to sets of assets etc. They also provide looser coupling between the client (transaction submitter) and the server (transaction processor).
Ok, clear! Would be nice then if you could optionally restrict access to an asset by only allowing certain transactions to operate on it, right? Do you think that is currently possible somehow?
I got the runtime chaincode error bellow; there is no source file and line number reference to it. is this the complete error report?
08:41:59.179 [chaincode] processStream -> ERRO fbb Got error: SyntaxError: Unexpected token (
I don't believe that is possible currently, @sstone1 would know for sure. Can you create an issue please? https://github.com/fabric-composer/fabric-composer/issues
Hi guys, does the primary key (identifier) of a model object need to be in a special format? For example, `owner = factory.newInstance('net.biz.digitalPropertyNetwork', 'Person', 'PID:1234567890');` the final argument of newInstance has PID: followed by a identifier. I only ask because I'm getting the following error when trying to add a asset to a registry `Error: Invalid or missing identifier for Type TestAsset in namespace test.net.chaincode`
I humbly insist: is there any way to get an idea about the location of a syntax error in my chaincode? The runtime error conveys as much details about it as I'd expect from the Oracle of Delphi.
@georgeormrod@gmail.com No, it just has to be a non empty string.
@dselman Thanks, I can rule that out
@uber.twin the easiest way to develop/debug transaction processor functions at the moment is to write a Node.js unit test. We are working on better testing support inside Playground at the moment. You can see an example unit test here: https://github.com/fabric-composer/sample-networks/blob/master/packages/carauction-network/test/CarAuction.js
@georgeormrod@gmail.com how was the object created?
@uber.twin I'm not sure how you're developing, but if you're not already, it might be worth using either the Atom or VSCode plugin for syntax highlighting
@dselman `asset = factory.newInstance("net.biz.digitalPropertyNetwork", "TestAsset", "111");`
@dselman `asset = factory.newInstance("test.net.chaincode", "TestAsset", "111");`
`factory = businessNetworkDefinition.getFactory()`
Where did the `test.net.chaincode` namespace come from?
Ah sorry its not `net.biz.digitalPropertyNetwork` its `test.net.chaincode` just edited. Its a generated chaincode instance on my local
That looks ok -- how are you adding `asset` to the registry?
`assetRegistry = businessNetworkConnection.getAssetRegistry("test.net.chaincode.TestAsset")` `assetRegistry.add(asset);`
That looks ok as well. If you post your BNA file and code I can take a deeper look.
getAssetRegistry returns a promise... E.g. see https://github.com/fabric-composer/sample-networks/blob/master/packages/carauction-network/test/CarAuction.js
@dselman figured out the problem, there was a error in my code when passing over the identifier, sorry, it was undefined :see_no_evil: thanks for your help :)
heh, these things happen!
Hi @dselman I saw the package with some examples. Do you know is there is a documentation about how these functions (getAssetRegistry etc) work ?
Hi guys, when invoking an asset/participant/transaction, does it log the creation time in the object?
Also, has the `composer-rest-client` been deprecated ?
Has joined the channel.
what would be the location of the messages produced by the "console.info" chaincode statements?
the "docker logs" output doesn't seem to incorporate them
Hi All. How to build the package.json file ?
Is there any rule for that ?
I have a strange problem locally. I started to use the fabric composer playground. As a trial, took the business network digitalproperty-network and basic-sample-network. Updating assets work well when I use the files by Authenticating my self With GitHub.
However, when I use the same files locally on my computer and I try to import them, every thing works, but there is no update on assets.
Why ? :-(
Very strange ...
@Jakeeyturner
@dselman
Hi. Has anybody managed to install `composer-rest-client` on Ubuntu 16.04 without problems?
I don't seem to get it work, unless I specify --unsafe-perm in "node install"
It fails with some authorization error messages. I found that apparently `node-gyp` is run as nobody and that can cause problems to access some directory.
Anyone who hit the same, or who managed to install on `Ubuntu 16.04` without problems?
@elisabetta I've installed composer-rest-server on 16.04 without any problem.
@davidkel: which version of node are you using?
6.9.5 in my case
how have you set up ubuntu 16.04 ? if it is a vagrant box then that version doesn't come with Python 2 installed by default
I install python 2
and I install 6.10.1 version of node
and python cmd is linked to python 2 version ?
yes
what userid are you running under ?
I'm running as root
I have seen problems if you try to do this as root. You probably want to be using a non root user
ah I'll try with another user then
@annbnn look for the link to API Documentation here: https://fabric-composer.github.io/reference/MeetTheModules.html
@georgeormrod@gmail.com `composer-rest-server` is here: https://github.com/fabric-composer/fabric-composer/tree/master/packages/composer-rest-server is that what you are referring to?
@uber.twin log output should go to the Docker container for the chaincode.
Has left the channel.
"It is not possible to add Connection Profiles in the Web Playground version of Fabric Composer. If you like what you see, you can install a a local version of Fabric Composer. The local version offers the same UI, or a CLI experience, and can be used to deploy Business Network Definitions to running Hyperledger Fabric instances." I am running composer playground on my local machine but still not able to create connection profile to add the fabric environment.
@vivekraut apologies, the changes aren't in composer playground yet
they will be soon - hopefully next week
the old ui, composer-ui, supports that but not the new playground ui
Thanks for the update @sstone1
Has joined the channel.
Congratulations @sstone1 on running the Technical Steering Committee gauntlet and getting Composer accepted as an official Hyperledger project! :-)
https://lists.hyperledger.org/pipermail/hyperledger-tsc/2017-March/000703.html
anyone else notice there are issues installing current versions of the composer modules? `No compatible version found: fabric-ca-client@^0.1.2` specified as a dependency of `composer-connector-hlfv1`... I get this trying to install the rest-server module or loopback-connector
I followed the fabric composer installation instructions, getting started instructions, and then "How to generate a starter application" instructions (https://fabric-composer.github.io/applications/genapp.html). I use the command "yo fabric-composer:angular" to generate a new angular app. A new directory is created and I go into it and type "npm start". It started up the Angular web server for me and so I use a browser and go to "localhost:4200" to access the app screen. When I click "LandTitle", I should be able to see the 2 records created during the "getting started" steps. However, there is no record there. Any idea what went wrong in my set up?
did you run `npm test` on the getting started? That should have started a Fabric and created the records.
@pospi the 0.5.5 release should be using newer levels of the fabric-ca-client, as I guess the older versions of fabric-ca-client have been removed from npm. What version of composer-rest-server are you using ?
@dselman Yes, I did run the "npm test" and can see the 2 land titles in the output
Has joined the channel.
@shamckm Could you open up your web browser console and see if there are any errors?
@shamckm Could you open up your web browser console and see if there are any errors? Also, did you generate an application using a running Fabric or by supplying a BNA?
@Jakeeyturner I saw errors in the web browser console.'Server error main.bundle.js:151:9
EXCEPTION: Uncaught (in promise): Server error vendor.bundle.js:68087:9
ORIGINAL STACKTRACE: vendor.bundle.js:68092:13
resolvePromise@http://localhost:4200/polyfills.bundle.js:6316:31 [angular]
makeResolver/<@http://localhost:4200/polyfills.bundle.js:6242:17 [angular]
SafeSubscriber.prototype.__tryOrSetError@http://localhost:4200/vendor.bundle.js:608:13 [angular]
SafeSubscriber.prototype.error@http://localhost:4200/vendor.bundle.js:564:21 [angular]
Subscriber.prototype._error@http://localhost:4200/vendor.bundle.js:493:9 [angular]
Subscriber.prototype.error@http://localhost:4200/vendor.bundle.js:467:13 [angular]
ErrorObservable.prototype._subscribe@http://localhost:4200/vendor.bundle.js:100406:13 [angular]
Observable.prototype._trySubscribe@http://localhost:4200/vendor.bundle.js:110:20 [angular]
Observable.prototype.subscribe@http://localhost:4200/vendor.bundle.js:98:22 [angular]
Observable.prototype.forEach/<@http://localhost:4200/vendor.bundle.js:139:32 [angular]
ZoneAwarePromise@http://localhost:4200/polyfills.bundle.js:6380:29 [angular]
Observable.prototype.forEach@http://localhost:4200/vendor.bundle.js:138:16 [angular]
[571]/LandTitleComponent.prototype.loadAll/<@http://localhost:4200/main.bundle.js:207:13 [angular]
NgZone.prototype.forkInnerZoneWithAngularBehavior/this.inner<.onInvoke@http://localhost:4200/vendor.bundle.js:34424:28 [angular]
Zone.prototype.run@http://localhost:4200/polyfills.bundle.js:5777:24 [angular => angular]
scheduleResolveOrReject/<@http://localhost:4200/polyfills.bundle.js:6364:52 [angular]
NgZone.prototype.forkInnerZoneWithAngularBehavior/this.inner<.onInvokeTask@http://localhost:4200/vendor.bundle.js:34415:28 [angular]
ZoneDelegate.prototype.invokeTask@http://localhost:4200/polyfills.bundle.js:6017:17 [angular]
Zone.prototype.runTask@http://localhost:4200/polyfills.bundle.js:5817:28 [
@Jakeeyturner I generate an application using a running Fabric
Is your Fabric still running?
yes, I did an "npm run listAssets" and can still see 2 land titles
@davidkel I'm not using any version yet, was just trying to install it from NPM for some testing. Tried again after clearing NPM cache, same issue:
```
$ npm i composer-rest-servernpm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.1: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! Linux 4.4.0-66-generic
npm ERR! argv "/home/pospi/.nvm/versions/node/v6.9.1/bin/node" "/home/pospi/.nvm/versions/node/v6.9.1/bin/npm" "i" "composer-rest-server"
npm ERR! node v6.9.1
npm ERR! npm v3.10.8
npm ERR! code ETARGET
npm ERR! notarget No compatible version found: fabric-ca-client@^0.1.2
npm ERR! notarget Valid install targets:
npm ERR! notarget 1.0.0-snapshot.6, 1.0.0-snapshot.5, 1.0.0-snapshot.4, 1.0.0-snapshot.3, 1.0.0-snapshot.2, 1.0.0-snapshot.1, 1.0.0-snapshot, 1.0.0-alpha.0, 0.2.3, 0.2.2, 0.1.0
npm ERR! notarget
npm ERR! notarget This is most likely not a problem with npm itself.
npm ERR! notarget In most cases you or one of your dependencies are requesting
npm ERR! notarget a package version that doesn't exist.
npm ERR! notarget
npm ERR! notarget It was specified as a dependency of 'composer-connector-hlfv1'
```
incidentally I think it's a really bad idea to remove old versions from NPM, this just means those using prior versions get breakages next time they try to deploy...
@shamckm If the application can't load any assets, then it means either something is wrong with Fabric, or the application has been supplied some incorrect details. So, first try deleting your application and generating it again. Then can you post your terminal output (including your answers to each of the questsions).
Has joined the channel.
@pospi Not sure what is going on here for you. For me install of the composer rest server pulls down 0.5.5 and also pulls down 0.5.5 of the composer-connector-hlfv1 module which is using a newer version of fabric-ca-client (0.2.3)
@pospi Not sure what is going on here for you. For me install of the composer rest server pulls down 0.5.5 and also pulls down 0.5.5 of the composer-connector-hlfv1 module which is using a newer version of fabric-ca-client (0.2.3). What does the package.json for the rest server and the composer-connector-hlfv1 look like for you ?
honestly, I don't know. Can't see anything because it's failing in the NPM download step
@pospi do you get the same problem if you do npm install composer-cli ?
yep
@pospi could you try `npm show composer-connector-hlfv1`, `npm show composer-admin` 'npm show composer-rest-server` and look at the 'dist-tags` field for all. the show for composer-connector-hlfv1 should also list the fabric-ca-client dependency version
connector-hlfv1:
`'dist-tags': { unstable: '0.5.6-20170329065851', latest: '0.5.5' }`
`dependencies:
{ 'composer-common': '^0.5.5',
'composer-runtime-hlfv1': '^0.5.5',
'fabric-client': '0.2.3',
'fabric-ca-client': '0.2.3',
'fs-extra': '^1.0.0',
semver: '^5.3.0',
temp: '^0.8.3',
'thenify-all': '^1.6.0',
uuid: '^3.0.1' },`
composer-admin:
`'dist-tags': { latest: '0.5.5', unstable: '0.5.6-20170329065851' }`
fabric-ca-client is `'dist-tags': { latest: '1.0.0-alpha.0', unstable: '1.0.0-snapshot.6' }`
@Jakeeyturner I caught an error message when I run the "npm start" command: >(node:9141) UnhandledPromiseRejectWarning: Unhandled promise rejection (rejection id: 1): Error: Failed to load connector module "composer-connector-hlf" for connection profile "defaultProfile">
@pospi for fabric-ca-client, 0.2.3 still exists even though the latest has a different tag. You've cleared your cache so I'm not sure why you seem to be pulling older versions down.
composer-rest-server depend on composer-client and composer-admin and these depend on composer-connector-hlfv1. Could you try explicitly installing 0.5.5 of the composer-rest-server `npm install composer-rest-server@0.5.5` and see if that works ?
Message Attachments
Message Attachments
Might be worth `rm -rf node_modules` inside the applications directory then `npm install`
@dselman @Jakeeyturner I really can't find the logging supposed to be generated by the chaincode "console.log()" statements. Could you please confirm that it should be included in the " docker logs -f
You should see it in the chaincode container (If you do a `docker ps` it'll be the container where the name is 'dev-vp0-...')
Can you confirm this @mbwhite?
is there a specific file where I should look?
@Jakeeyturner correct yes
Thanks Matthew. @uber.twin if you do `docker ps -f status=running` you should see some docker containers running. One of them will be named `dev-vp0-HASH_HERE`. If you do a `docker logs -f HASH_HERE` you can follow the container and read the logs as things happen
Thanks Matthew. @uber.twin if you do `docker ps -f status=running` you should see some docker containers running. One of them will be named `dev-vp0-RANDOM_HASH`. If you find the ID of that container, then you can do a `docker logs -f ID_HERE` you can follow the container and read the logs as things happen
ok, I was looking at the wrong peer(hyperledger/fabric-peer)
the "dev-vp0-" does have it
thank you
I didn't expect the peers to be spawn automatically
at the runtime startup, I could notice only two peers
then, as I deploy the network, the "dev-vp0-" comes up also
again, I thought the runtime peers instances are not dynamic
is there a specification regarding the conditions a new peer comes up?
and what determines it
@uber.twin I believe that's how a new Composer business network is deployed- as a peer docker container running the chaincode
@davidkel: just installed `composer-rest-server` with another user other than root, and the installation completes successfully, without having to specify --unsafe-perm! :tada:
Just a minor glitch, when I run it as the same user as the installation I get:
```
eflamini@ubuntu1604:~$ composer-rest-server -n carauction-network -p defaultProfile -i admin2 -s Xurw3yU9zI0l -N always -P 44444
Discovering types from business network definition ...
Connection fails: Error: EACCES: permission denied, mkdir '/root/.composer-credentials'
It will be retried for the next request.
{ Error: EACCES: permission denied, mkdir '/root/.composer-credentials'
at Error (native)
at Object.fs.mkdirSync (fs.js:923:18)
at new FileKeyValStore (/usr/lib/node_modules/composer-rest-server/node_modules/hfc/lib/hfc.js:2188:16)
at Object.newFileKeyValStore (/usr/lib/node_modules/composer-rest-server/node_modules/hfc/lib/hfc.js:2336:12)
at Promise (/usr/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlf/lib/hfcconnectionmanager.js:113:46)
at HFCConnectionManager.connect (/usr/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlf/lib/hfcconnectionmanager.js:107:20)
at getConnectionManager.then (/usr/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:169:40)
errno: -13,
code: 'EACCES',
syscall: 'mkdir',
path: '/root/.composer-credentials' }
```
It seems for some reasons it is trying to store certificates under /root.
@Jakeeyturner removing the "node_modules" directory and running "npm install" did the job. The error message disappeared and I can now see the 2 land titles. Thanks for your help!
It works well if I run it as root
@Jakeeyturner @mbwhite @pospi it was confusing because, as I deploy the docker-compose.yml, only two peers are active:
713976248b95 hyperledger/fabric-peer
d97a2f80ce0e hyperledger/fabric-membersrvc
but after I deploy the network, another peer comes up, e.g.:
1cb8256002e7 dev-vp0-210ce3d3d885a302ae98dbcce13fe32f5054842190dfe9afa58b5f61f84263ad
and only this last peer logs the chaincode output
and when I redeploy the network, yet another peer appears:
bc89f5236f6b dev-vp0-b7f4dde7d390648e94c629b276d1827d7876d680170593fdce6c0267346a9fa2
so that means each network deploy/redeploy instantiates a new peer?
by redeploy I mean undeploy/ deploy with the same business network id
So the undeploy Composer-CLI command will remove the chaincode container. And when you deploy a business network, a chaincode container is created
Those are not peer containers - they are chaincode containers that are owned by the individual peers.
@elisabetta when you are logged in as your non root user what is the value of the HOME ?
@davidkel:
```
eflamini@ubuntu1604:~$ id
uid=1000(eflamini) gid=1000(eflamini) groups=1000(eflamini),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),110(lxd),115(lpadmin),116(sambashare)
eflamini@ubuntu1604:~$ env
XDG_SESSION_ID=2
TERM=xterm-256color
SHELL=/bin/bash
SSH_CLIENT=192.168.122.1 54576 22
SSH_TTY=/dev/pts/0
USER=eflamini
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
MAIL=/var/mail/eflamini
PATH=/home/eflamini/bin:/home/eflamini/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
PWD=/home/eflamini
LANG=en_GB.UTF-8
SHLVL=1
HOME=/home/eflamini
LANGUAGE=en_GB:en
LOGNAME=eflamini
SSH_CONNECTION=192.168.122.1 54576 192.168.122.250 22
LESSOPEN=| /usr/bin/lesspipe %s
XDG_RUNTIME_DIR=/run/user/1000
LESSCLOSE=/usr/bin/lesspipe %s %s
_=/usr/bin/env
OLDPWD=/home/eflamini/BC-Connect/config
```
@elisabetta what's in your connection.json file for defaultProfile ?
You're right. I had specified the KeyValueStore in the profile to point to /root.
Hi guys, how is a transaction called in `composer-client`? I'm getting an error when running `transactionRegistry.add(transaction)`, does the logic need to be defined before I run it?
@georgeormrod@gmail.com to submit a transaction to a business network you need to define your transaction object and then use the submitTransaction on the client to submit that transaction.
@georgeormrod@gmail.com to submit a transaction to a business network you need to define your transaction object and then use the submitTransaction. Example code from the getting started can be found here
https://github.com/fabric-composer/sample-applications/blob/master/packages/getting-started/lib/landRegistry.js#L69
@Jakeeyturner @sstone1 tanks for the explanations; however, when I do undeploy, the existing chaincode container stays on and a new one is added when deploying it back
this is my "docker ps: output after a first business network deploy
1cb8256002e7 dev-vp0-210ce3d3d885a302ae98dbcce13fe32f5054842190dfe9afa58b5f61f84263ad
713976248b95 hyperledger/fabric-peer
d97a2f80ce0e hyperledger/fabric-membersrvc
and here it is after a subsequent undeploy/ deploy
bc89f5236f6b dev-vp0-b7f4dde7d390648e94c629b276d1827d7876d680170593fdce6c0267346a9fa2
1cb8256002e7 dev-vp0-210ce3d3d885a302ae98dbcce13fe32f5054842190dfe9afa58b5f61f84263ad
713976248b95 hyperledger/fabric-peer
d97a2f80ce0e hyperledger/fabric-membersrvc
@uber.twin I believe that is the expected behaviour
sure, just a litte confusing. the old chaincode container, which was spawn by a previous deployment, stays on but it seems inactive. only the new chaincode container rolls when a transaction hits the newly deployed business network
sure, just a little confusing. the old chaincode container, which was spawn by a previous deployment-now undeployed already, stays on but it seems inactive. only the new chaincode container rolls when a transaction hits the newly deployed business network
Does Fabric Composer accept Bluemix credentials for the Connection Profile yet?
@sbrakev it does except for composer-playground. See
http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
@sbrakev v0.6? or v1.0?
Thanks guys. At this point I'm cool with either @jdockter but ideally V1.0
@sbrakev composer-ui will only work with v0.6 and won't have v1.0 support added to it
Not yet but should have support later....right
@sbrakev not in composer-ui as it is going to be replaced by composer-playground but for now. composer-playground only supports the web profile currently so to connect to bluemix you would need to use composer-ui for now to v0.6
Okay so the plan is to have composer-playground become the de facto way of doing UI based editing with composer-ui being phased out as a local deployment?
@sbrakev currently there are two flavors of a composer web ui, one is called composer-ui (older version) and the second is composer-playground (new version with lots of extra functionality and design team touch :) ...both can be installed locally if you change up the docker-compose.yml to point to specific docker images (https://hub.docker.com/u/fabriccomposer/) ...only composer-ui has support for remote connection profiles, of which bluemix could be one, at the v0.6 version
@sbrakev currently there are two flavors of a composer web ui, one is called composer-ui (older version) and the second is composer-playground (new version with lots of extra functionality and design team touch :) ) ...both can be installed locally if you change up the docker-compose.yml to point to specific docker images (https://hub.docker.com/u/fabriccomposer/) ...only composer-ui has support for remote connection profiles, of which bluemix could be one, at the v0.6 version
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=HpPEj2sgS5yL28Rhc) @dselman so assuming you will be lifting and shifting, at some point, the code base to be under, https://github.com/hyperledger/ ?
@sbrakev Yes, Composer Playground at some point once we've added all the functionality will be the main UI-based editing environment. This will replace Composer UI entirely
Hi, I am trying to determine if an asset with a certain ID exists. is this kind of code valid: assetRegistry.exists('accId') ?
when I try to do that, I get "Unhandled promise rejection TypeError: 'exists' is not a function"
(ran in a chaincode routine)
@uber.twin currently there is no assetRegistry.exists in the runtime in 0.5.5 but it has been added and will be available in the next release
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi All. I have a strange problem locally. I started to use the fabric composer playground. As a trial, took the business network digitalproperty-network and basic-sample-network. Updating assets work well when I use the files by Authenticating my self With GitHub.
However, when I use the same files locally on my computer and I try to import them, every thing works, but there is no update on assets.
Why ? Some one can help me please ?
Installed the Fabric Composer Playground locally. Get this error when I try to access localhost:8080 "Error: Expected "rule", comment, end of line or whitespace but "A" found. Line 4 column 1". Also tried to add a file - select model file (.cto file), but add button is greyed out
Appears the sample network is not automatically imported on the playground. I can do an import/replace using the samples from Github though. So how do you create a new business network from scratch like you can from the composer-ui?
My mistake, importing the bna only works on the playground in Bluemix
I installed composer-playground using npm and it appears to work much better than installing with Docker, seems to be some differences in the docker image
Has joined the channel.
Has joined the channel.
Hi guys, I am trying the LoopBack API to query assets with certain property. May I know is the filter parameter in GET request only able to filter the identifier defined in the asset model?
For example I am using the digitalPropertyNetwork example. I can get the exact LandTitle by ?filter={"where":{"titleId":"xxx"}} but unable to do so when the filter is {"where":{"owner":"yyy"}} (it responses with message "The specified filter does not match the identifier in the model")
Hi guys, I want to try distributed thing. I can prepare 2 composer-rest-server based on quick start doc to 2 instances. But I have no idea how to share database. Sorry I'm quite new to blockchain. Is there any document or article i can read?
Hi guys, I want to try distributed thing. I can prepare 2 composer-rest-server based on quick start doc on 2 instances. But I have no idea how to share database. Sorry I'm quite new to blockchain. Is there any document or article i can read?
Has joined the channel.
Has left the channel.
@davidkel thank you for confirming it for me, could you please point me to a specific source file or document outlining the API curently available at the chaincode runtime level?
not the "https://fabric-composer.github.io/jsdoc/module-composer-client.html", please, as it is listing the "exists" non-existing function:)
@davidkel thank you for confirming it for me
@davidkel thank you for confirming it for me; my bad for working with the https://fabric-composer.github.io/jsdoc/module-composer-client.html when writing runtime code
@davidkel thank you for pointing it out for me; my bad for working with the https://fabric-composer.github.io/jsdoc/module-composer-client.html when writing runtime code
@tonyltf we do not support this at the moment. currently you can only query assets and participants by their ID. we will be looking to exploit the CouchDB support introduced with v1.0 through composer to enable this - we're calling it "complex query support".
@sstone1 I have a strange problem locally. I started to use the fabric composer playground. As a trial, took the business network digitalproperty-network and basic-sample-network. Updating assets work well when I use the files by Authenticating my self With GitHub.
However, when I use the same files locally on my computer and I try to import them, every thing works, but there is no update on assets.
Why ?
Any philosophical explanation please ?
@annbnn can you explain what you mean by "there is no update on assets"? Do you get an error trying to update an asset, or is the edit button not visible in the UI?
@sstone1 Now it works. Amazing :-)
There was no error, but the edit button was not visible in the UI
Yes.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
hi all: If the registry does not exist it results in an : Unhandled rejection: Error: egistry signature not found!
How can I make it result into an error that does not add the transaction??
Related question, if an error occurs at the end of a transaction function, is every update to assets before that automatically reversed??
function onSign(transaction) {
return getAssetRegistry('org.notarynodes.bloqNetwork.Signature')
.then(function (registry) {
var factory = getFactory();
var signatureId = transaction.signer.getIdentifier().toString() + "#"+ transaction.assetType + "#" + transaction.assetId;
var newSignature = factory.newResource('org.notarynodes.bloqNetwork', 'Signature', signatureId);
newSignature.signer = transaction.signer;
newSignature.timestamp = new Date();
return registry.add(newSignature);
}
)
.catch(function (error) {
throw new Error("Registry signature not found!");
});
}
Any exceptions thrown from a transaction processor function will cause the entire transaction to be rolled back, leaving no changes to the blockchain or world state.
Ok thanks! Though the catched error thrown in the example above will not cause the transaction to fail.. when I inspect the playground console it calls it an unhandled rejection, instead of an error (what I would like it to be)..
@dselman Is there any documentation about the package.json definition ?
How to build that file ? (the content)
Hi All
Hi guys, quick one, does the models file name need to be the same as the business network identifier? Or does it just need to be in the models folder with a namespace annotation?
@annbnn the package.json file just needs to be a standard npm package.json file. At minimum it needs a package name, version and description. @georgeormrod@gmail.com The model files don't need to be named the same as the business network identifier. You're correct in that they must be in the models folder, and must have a namespace.
@annbnn the package.json file just needs to be a standard npm package.json file. At minimum it needs a package name, version and description.
@georgeormrod@gmail.com The model files don't need to be named the same as the business network identifier. You're correct in that they must be in the models folder, and must have a namespace.
@annbnn the package.json file just needs to be a standard npm package.json file. At minimum it needs a package name, version and description. Take a look at our docs here: https://fabric-composer.github.io/business-network/getting-started-coding-bnd.html
@georgeormrod@gmail.com The model files don't need to be named the same as the business network identifier. You're correct in that they must be in the models folder, and must have a namespace.
Thank you @Jakeeyturner What does mean this error on the plaground *ReferenceError: AssetRegistry is not defined* ?
@Jakeeyturner While tried to submit a transaction..
So it looks like you're referencing something which isn't defined. Might be worth showing your transaction processor JS file which it's trying to execute
Message Attachments
Message Attachments
@Jakeeyturner Here we go.
The permissions.acl file content file: /**
* Sample access control list.
*/
rule Default {
description: "Allow all participants access to all resources"
participant: "ANY"
operation: ALL
resource: "net.blockchain.digitalPropertyNetwork"
action: ALLOW
}
Has joined the channel.
@annbnn in your JS file, that should be `getAssetRegistry` not `AssetRegistry`. E.g. https://github.com/fabric-composer/sample-networks/blob/master/packages/digitalproperty-network/lib/DigitalLandTitle.js
hi, is the standard Promise API available for composer runtime?
meaning, can I do a "return Promise.resolve(myObj)"?
OMG @dselman :-(
Thank you
@dselman Is there any documentation about AssetRegistry & getAssetRegistry functions ?
@annbnn Here are our JS API's: https://fabric-composer.github.io/jsdoc/index.html
@Jakeeyturner Thank you
@Jakeeyturner I am installing locally the module composer-client
Is it normal that it takes several minutes ?
Has joined the channel.
After running npm install --save composer-client
Hi! Is there are simple way to change the default cto and logic files loaded on composer-ui ?
@Percival Lucena no, they are hard coded into the app. Use the Import option to install samples from GitHub. What would you like to do?
@dselman Nevermind, we can load the cto and logic we want by connecting to hyperlder instance :)
Someone asked us if when fabric-ui loads it could connect to this profile instead of the standard local profile
What about fabirc-composer does not support Fabric 1.0?
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has left the channel.
@kuangchao we have it running, but we are still working on updating the docs/guides etc.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
@dselman Last week, I deployed my business network on the playground. This morning, I tried again, and I have the following error :
Message Attachments
Any hint ?
Hi everyone, thanks all for the great effort you put into composer.
Would like to share that we (bloqhouse and notarynodes) are working on an open source real estate trading system to exchange pieces of real estate ownership (legally binding):
https://github.com/notarynodes/composer/tree/master/bloqNetwork
This summer we plan to launch a pilot in Amsterdam with some, real, real estate. The alpha version is built using Fabric Composer. And as our team grows our composer expertise
we would be happy to also contribute to this cool project!
@bonen that's fantastic! it's great to see how much progress you've made. we'd love to hear more - would you be interested in joining one of our community calls to talk about the work you've done with composer and how you've found it so far?
@sstone1 Last week, I deployed my business network on the playground. This morning, I tried again, and I have the following error :
Message Attachments
Any hint ?
@sstone1 thanks, and yes sure!
@sstone1 The *Adding files* button dies not work.
While using import/replace, that works ..
:thumbsup:
@annbnn what version of Playground are you using?
The lasversion
https://composer-playground.mybluemix.ne
https://composer-playground.mybluemix.net
what file type are you trying to add?
a .cto, .js, or .acl file?
.bna file
Another question : Is there a reason why I do not see my comment appearing on the update of the asset?
namespace net.blockchain.tradeTransaction
/** Participants. These are the actors in the business network.
* A participant might be an individual or an organization.
* A participant has an one of more attributes that are used to identify them to the business network.
*/
participant Custodian identified by userId {
o String userId
o String name
}
/** Assets. Assets are created by participants, and subsequently exchanged between them.
* Assets can have a rich lifecycle, as defined by the transaction in which they are involved.
*/
asset OrderAsset identified by orderId{
o String orderId
o String comment
--> Custodian custorder
}
asset Agreement identified by agreedId {
o String agreedId
--> OrderAsset order
--> Custodian custorder
}
/** Transactions. These are operations that are performed on assets and other
* resources as they move through their lifecycle within the business network.
*/
transaction OrdersRegistrar identified by orderRegistrarId {
o String orderRegistrarId
--> OrderAsset order
--> Custodian custorder
}
'use strict';
/**
* @param {net.blockchain.tradeTransaction.OrdersRegistrar} orderSampleTransaction - the order transaction
* @transaction
*/
function onOrderTransaction(orderSampleTransaction) {
console.log('### OrdersRegistrar ' + orderSampleTransaction.toString());
orderSampleTransaction.order.comment = "I DONT UNDERSTAND";
return getAssetRegistry('net.blockchain.tradeTransaction.OrdersAsset').then(function (result) {
return result.update(orderSampleTransaction.order);
});
}
You cannot add a .bna file to a business network, you can only add additional .cto, .js, or .acl files
I did import the .bna file.
Finally.
Yes, you can import/export .bna files, but you cannot add them
I can add participants and assets. But when I tried to make a transaction, there is no update on my assets.
It exactly the same code you guys used on the digital property network.
'use strict';
/**
* @param {net.blockchain.digitalPropertyNetwork.RegisterPropertyForSale} propertyForSale the property to be sold
* @transaction
*/
function onRegisterPropertyForSale(propertyForSale) {
console.log('### onRegisterPropertyForSale ' + propertyForSale.toString());
propertyForSale.title.forSale = true;
return getAssetRegistry('net.blockchain.digitalPropertyNetwork.LandTitle').then(function(result) {
return result.update(propertyForSale.title);
}
);
}
what does the input transaction look like?
ID
DATA
352607fa-1bb6-4b41-8aa4-f1da0eca607b
{
"$class": "net.blockchain.tradeTransaction.OrdersRegistrar",
"orderRegistrarId": "352607fa-1bb6-4b41-8aa4-f1da0eca607b",
"order": "o1",
"custorder": "c1",
"timestamp": "2017-04-03T12:38:29.201Z"
}
Its a bit strange.
Should I make an extra manipulation for my transactions to work?
npm install --save composer-client
tradeTransaction@1.0.0 /home/taandbe1/tradeTransaction
└── composer-client@0.5.5
npm WARN tradeTransaction@1.0.0 No description
npm WARN tradeTransaction@1.0.0 No repository field.
taandbe1@taandbe1-VirtualBox:~/tradeTransaction$
npm install --save composer-admin
tradeTransaction@1.0.0 /home/taandbe1/tradeTransaction
└── composer-admin@0.5.5
npm WARN tradeTransaction@1.0.0 No description
npm WARN tradeTransaction@1.0.0 No repository field.
taandbe1@taandbe1-VirtualBox:~/tradeTransaction$
I tried to install composer-client and composer-admin.
May be the problem comes from there ?
@dselman I saw the problem.
Hi, I'm trying to update to the latest levels of everything. I've gone through the getting-started, etc and think I have the latest of everything. Hyperledger seems to start fine and the deployment, etc. However, when I try to start the composer-rest-server I get
? Enter your Fabric Connection Profile Name: defaultProfile
? Enter your Business Network Identifier : org.acme.vehicle.auction
? Enter your Fabric username : WebAppAdmin
? Enter your secret: DJY27pEnl16d
2017-04-03T12:47:55.104Z ERROR HFCConnection :login() Failed to set chaincode id on security context. Check that the connection profile defaultProfile defines the network org.acme.vehicle.auction {"0":"org.acme.vehicle.auction@defaultProfile"}$
Connection fails: Error: Failed to set chaincode id on security context. Check that the connection profile defaultProfile defines the network org.acme.vehicle.auction
It will be retried for the next request.
Loopback Connector for Fabric Composer
(node:24372) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Failed to set chaincode id on security context. Check that the connection profile defaultProfile defines the network org.acme.vehicle.auction
Any thoughts?
@GrahamCharters Can you output the contents of your defaultProfile connection.json file?
as it should refer to a network with the identifier `org.acme.vehicle.auction`
@Jakeeyturner - thanks. Looks like I used to have that and now it's called "carauction-network". Specifying that name has got me further. Now have a client version mismatch I need to sort out... :/
This is the error I'm now getting. My composer-cli is versioned at 0.5.5.
2017-04-03T14:00:37.330Z ERROR HFCConnection :ping() Version mismatch {"0":"0.4.5","1":"0.5.5","2":"^0.5.5"}$
Connection fails: Error: Deployed chain-code (0.5.5) is incompatible with client (0.4.5)
It will be retried for the next request.
Loopback Connector for Fabric Composer
(node:24477) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Deployed chain-code (0.5.5) is incompatible with client (0.4.5)
^C
Is the composer-cli the things being referred to as being at version 0.5.5? What is the "client" that's at 0.4.5?
Is the composer-cli the things being referred to as being at version 0.5.5? Does anybody know what "client" is being referred to that's at 0.4.5?
Looks like it might be my composer-rest-server...
`npm uninstall -g composer-rest-server` followed by `npm install -g composer-rest-server`?
where can I find a sample Swagger document for the REST API created by the Composer?
@dselman - that fixed it. Thanks :)
For those of you in London; myself and a few of of the Fabric Composer dev team will be at the CityChain event at IBM Southbank tomorrow - come and say hello if you're also attending! :)
@sstone1 will you be the one in the #FabricComposer shirt? :-)
The #FabricComposer t-shirt might not go so well with the suit, will likely be an awesome shirt of some kind...
@allenc2016 here you go: https://gist.github.com/sstone1/ebffe71b53f70d729ea9bb3666d7626d
anyone else see 'ERROR HFCUtil :deployChainCode() onError {"0":{"error":{"code":14,"metadata":{"_internal_repr":{}}},"msg":"Error"}}$" when trying to deploy a biz network on a bluemix fabric using composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId admin --enrollSecret c8f40dadd6 -p MyProfile
hfc 0.6.5, composer-cli 0.5.6, grpc 1.2.0
running on osx sierra
@Suma have you seen http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
yes. Following that.
Particularly the cert part...
MyProfile's connection.json looks like this
{
"type": "hlf",
"keyValStore": "/Users/spnair/.composer-credentials",
"membershipServicesURL": "grpcs://50fdcd426e1c4bec83183a514599fb03-ca.us.blockchain.ibm.com:30001",
"peerURL": "grpcs://50fdcd426e1c4bec83183a514599fb03-vp0.us.blockchain.ibm.com:5001",
"eventHubURL": "grpcs://50fdcd426e1c4bec83183a514599fb03-vp0.us.blockchain.ibm.com:5001",
"deployWaitTime": 300,
"invokeWaitTime": 30,
"certificate": "-----BEGIN CERTIFICATE-----\nMIID6TCCA26gAwIBAgIQCiYEWw1faoRpM2xufaiPLTAKBggqhkjOPQQDAjBMMQsw\nCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMSYwJAYDVQQDEx1EaWdp\nQ2VydCBFQ0MgU2VjdXJlIFNlcnZlciBDQTAeFw0xNjA2MDcwMDAwMDBaFw0xOTA2\nMTIxMjAwMDBaMIGJMQswCQYDVQQGEwJVUzERMA8GA1UECBMITmV3IFlvcmsxDzAN\nBgNVBAcTBkFybW9uazE0MDIGA1UEChMrSW50ZXJuYXRpb25hbCBCdXNpbmVzcyBN\nYWNoaW5lcyBDb3Jwb3JhdGlvbjEgMB4GA1UEAwwXKi51cy5ibG9ja2NoYWluLmli\nbS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARTKAZypDOqw34HWujQeL82\nj1e9rN1inpN6ngrq49+OpYIe8ckHnJhsWPpf+zeIQePboDQVUTDtYXh7212BsVoX\no4IB8jCCAe4wHwYDVR0jBBgwFoAUo53mH/naOU/AbuiRy5Wl2jHiCp8wHQYDVR0O\nBBYEFK+1RoBnUnb8nr2hNtkUu3FRrbYuMDkGA1UdEQQyMDCCFyoudXMuYmxvY2tj\naGFpbi5pYm0uY29tghV1cy5ibG9ja2NoYWluLmlibS5jb20wDgYDVR0PAQH/BAQD\nAgeAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjBpBgNVHR8EYjBgMC6g\nLKAqhihodHRwOi8vY3JsMy5kaWdpY2VydC5jb20vc3NjYS1lY2MtZzEuY3JsMC6g\nLKAqhihodHRwOi8vY3JsNC5kaWdpY2VydC5jb20vc3NjYS1lY2MtZzEuY3JsMEwG\nA1UdIARFMEMwNwYJYIZIAYb9bAEBMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3\nLmRpZ2ljZXJ0LmNvbS9DUFMwCAYGZ4EMAQICMHsGCCsGAQUFBwEBBG8wbTAkBggr\nBgEFBQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29tMEUGCCsGAQUFBzAChjlo\ndHRwOi8vY2FjZXJ0cy5kaWdpY2VydC5jb20vRGlnaUNlcnRFQ0NTZWN1cmVTZXJ2\nZXJDQS5jcnQwDAYDVR0TAQH/BAIwADAKBggqhkjOPQQDAgNpADBmAjEA7LViaN74\nOwIp/zqfwSRvURg965+m73/edCeNKrsLf6GuE0sLwpX6pQNnDlr6SzGnAjEA+qk0\nsYRnd2gCQeD9fWbCJIw0vJDqeZr1WJ64aVoJ8kyASzY/yoarSm2wqujXJwEf\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIDrDCCApSgAwIBAgIQCssoukZe5TkIdnRw883GEjANBgkqhkiG9w0BAQwFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0xMzAzMDgxMjAwMDBaFw0yMzAzMDgxMjAwMDBaMEwxCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxJjAkBgNVBAMTHURpZ2lDZXJ0IEVDQyBT\nZWN1cmUgU2VydmVyIENBMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE4ghC6nfYJN6g\nLGSkE85AnCNyqQIKDjc/ITa4jVMU9tWRlUvzlgKNcR7E2Munn17voOZ/WpIRllNv\n68DLP679Wz9HJOeaBy6Wvqgvu1cYr3GkvXg6HuhbPGtkESvMNCuMo4IBITCCAR0w\nEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwNAYIKwYBBQUHAQEE\nKDAmMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQgYDVR0f\nBDswOTA3oDWgM4YxaHR0cDovL2NybDMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0R2xv\nYmFsUm9vdENBLmNybDA9BgNVHSAENjA0MDIGBFUdIAAwKjAoBggrBgEFBQcCARYc\naHR0cHM6Ly93d3cuZGlnaWNlcnQuY29tL0NQUzAdBgNVHQ4EFgQUo53mH/naOU/A\nbuiRy5Wl2jHiCp8wHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUwDQYJ\nKoZIhvcNAQEMBQADggEBAMeKoENL7HTJxavVHzA1Nm6YVntIrAVjrnuaVyRXzG/6\n3qttnMe2uuzO58pzZNvfBDcKAEmzP58mrZGMIOgfiA4q+2Y3yDDo0sIkp0VILeoB\nUEoxlBPfjV/aKrtJPGHzecicZpIalir0ezZYoyxBEHQa0+1IttK7igZFcTMQMHp6\nmCHdJLnsnLWSB62DxsRq+HfmNb4TDydkskO/g+l3VtsIh5RHFPVfKK+jaEyDj2D3\nloB5hWp2Jp2VDCADjT7ueihlZGak2YPqmXTNbk19HOuNssWvFhtOyPNV6og4ETQd\nEa8/B6hPatJ0ES8q/HO3X8IVQwVs1n3aAr0im0/T+Xc=\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j\nb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB\nCSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97\nnh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt\n43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P\nT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4\ngdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO\nBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR\nTLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw\nDQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr\nhMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg\n06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF\nPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls\nYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk\nCAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4=\n-----END CERTIFICATE-----\n",
"certificatePath": "/certs/peer/cert.pem"
}
earlier today when I'd missed a \n in the cert, i got a Security handshake failed
Don't see that anymore
so i guess I'm past that
but this is kinda tripping me out. Where do I go to see the log?
maybe there will be more info in there?
check the peer logs
oh ok
you can view the logs from the bluemix dashboard
yup . chking now
It looks like your ports are wrong. Try 30001 for peerURL, and 31001 for eventHubUrl
"code 14" is a protocol issue I thinl
"code 14" is a protocol issue I think
oh ok. Thanks I'll try that
YAY! :smiley: Thx Dan
:drum:
Bravo
Today pulled down composer 5.6. Noticed within the composer-ui that the json is not being randomly generated/shown anymore for the Assets and Transactions. Though the random generated data does get shown for the Participants. Believe I previously had 5.4 where it got generated for everything. Is this an issue with 5.6?
Can you please clear local storage and try again. You are using exactly the same business network in both v0.5.6 and v0.5.4?
Clear cache didn't resolve it. Yes, same exact business network. Appears the issue is where a Concept is involved. A simple Assets shows fine. An asset with a concept does not. Same applies for transactions.
Hope this is OK to log here: Looking at getting started tutorial for Fabric Composer Playground:
https://fabric-composer.github.io/tutorials/getting-started-playground.html .. I am on Xenial and have do manual preReq installs:
docker -v -> Docker version 17.03.1-ce, build c6d412e
docker-compose -v -> docker-compose version 1.11.2, build dfed245
node -v -> v6.10.1
npm -v -> 4.4.4
Containers came up great. I used the WebUI in one of the containers at http://Iocalhost:8080 ... defined 4 participants and 4 assets . As I try to submit trans ... for the new value I have put in random strings, let them generate strings, put in valid participant and asset keys ... but when I press submit, the submit button just blinks. I have to cancel to get out (or X) and I get no trans in the registry. I tried pulling basic logs from all 3 containers and don't see anything related. Tutorial is pretty sweet in generating simple one peer network ... but I don't see any details of Fabric Enrollment et al. So going back thru to see if I am missing key details. Is this a worthwhile sniff test of composer on a new Xenial VM? Thanks,
Has joined the channel.
Hey @MikeC711, welcome! What browser are you using? If you enable the Web Console, are there any errors there?
@klorenz sounds like a bug. Can you post your BNA file?
Has joined the channel.
Has joined the channel.
Hey Daniel, Thanks for response. This is FireFox ... I will attach the debugger console log. A few items in it seem to stand out:
EXCEPTION: Uncaught (in promise): Error: Serializer.toJSON only accepts instances of Resource.
g@http://localhost:8080/polyfills.c81cdeb21b73c2161a59.bundle.js:1:324526
@JS : Engine :invoke() Caught error, rethrowing {"stack":["{Error}Object with ID 'assetId:4478' in collection with ID 'Asset:org.acme.sample.SampleAsset' does not exist Error: Object with ID 'assetId:4478' in collection with ID 'Asset:org.acme.sample.SampleAsset' does not exist","g@http://localhost:8080
I was looking for where maybe I needed a specific value there ... but there was a random generation button (which I tried) and I tried copying the keys directly from assets and participants. Meanwhile, I will see about installing chrome on my Xenial. Thanks
Message Attachments
PS. The funny face in my problem report was actually an upper X and the close parenthesis. I was not trying to be cute, just trying to say that my other exit method was to hit the window exit key ... somehow Slack thought it was one of the emojis.
Possible DFU scenario (Dumb Darn User) ... I installed chrome and got same error, then went back and edit generated assets to be owned by created participants (seems like generation of asset used random participant IDs and if those participants were not created, logic often failed). I haven't figured out the full method to the madness ... but I can now create transactions on both chrome and firefox. So ignore for now ... I think I have enough to move on.
@MikeC711 yes, the messages of type `does not exist Error: Object with ID 'assetId:4478' in collection with ID` mean that you have a reference to something that does not exist
You need to make sure that the references in your model actually point to valid instances when you submit transactions
Folks, trying to deploy to Bluemix v0.6 and I am getting this error:
Deploying business network definition. This may take a minute...
2017-04-04T13:05:32.624Z ERROR HFCUtil :deployChainCode() onError {"0":{"error":{"code":2,"metadata":{"_internal_repr":{}}},"msg":"Error: sql: no rows in result set"}}$
Error: Error: sql: no rows in result set
Command failed
"Deploying business network definition. This may take a minute...
2017-04-04T13:05:32.624Z ERROR HFCUtil :deployChainCode() onError {"0":{"error":{"code":2,"metadata":{"_internal_repr":{}}},"msg":"Error: sql: no rows in result set"}}$
Error: Error: sql: no rows in result set
Command failed
Any idea how to fix this?
I can't see any "deployment" to the blockchain
That usually means you have invalid certs in your certificate store
The Bluemix log is giving crazy response
(i.e. certs for a different server)
I extract cert form the instance
Remove your ` ~/.composer-credentials/` folder
ok
Working now
thanks
Hi guys, can a super type be extended from another model in a network. If so, how is this done?
Second @georgeormrod@gmail.com's question- when we try to do this Composer complains about the dots in the network namespace. We are trying to get a domain-specific model setup within a larger network using a setup similar to https://fabric-composer.github.io/business-network/model-publish.html but it doesn't seem to be documented yet..
Hi, is
Hi, is that from the same namespace or different?
@georgeormrod@gmail.com yes, you need to `import` the type from namespace A into namespace B.
@pop
@pospi I don't understand, can you provide an example please
I think you might have just given us the answer we were hoping for ;)
hi, is there a way to "upgrade" a deployed business network by uploading fresh chaincode but keep the old data registries intact?
Thanks @dselman :) is there a quick way to import all the types at once from a namespace, like `import everledger.network.*` instead of importing each type individually like `import everledger.network.BaseAsset` for example?
No, not at this point.
Ok thanks, is that planned as a additional feature?
We don't have a story for that, no. Feel free to add one.
can I ask what you guys use at IBM for compiling your chaincode logic? Anecdotal mention was made that you leverage some build system to be able to write your logic in ES6 but I am finding it difficult to build our own.
Is the Fabric Composer playground supported on Mac or do you have to use only Ubuntu. https://fabric-composer.github.io/installing/prerequisites.html
Many of the team use Mac
(it is supported)
hi, is it possible to have a connection profile (of type web) that connects to a running composer-playground or composer-ui webserver?
no
You'll have to use a real Fabric to get a ledger that can be accessed across the network
ok!
@klorenz I reproduced your issue creating assets with top-level concepts. The fix is making its way through the CI pipeline now: https://github.com/fabric-composer/fabric-composer/pull/617
@dselman looks like build stalled out with error
how many CI systems you got running :)
Yes, still making its way through... We like to run a lot of tests! :-)
Has joined the channel.
Has joined the channel.
I hope everyone has checked-out the great intro video @sstone1 created: https://www.youtube.com/watch?v=fdFUsrsv5iw
Has joined the channel.
does anyone know how to create a connection profile in composer playground
@saridsa1 we are working on that right now -- until it is ready you can use the old composer-ui.
@dselman hi, my fabric composer runtimes seem to produce a lot of logging and little by little, I'm running out of disk space
a typical log entry(~20MB) looks like this, I got hundreds of them
/var/lib/docker/aufs/diff/e4e4a2cfc12eaa60a4384c3392baabd3ed146c8e91494896ff0070a206a3a9ad/opt/gopath/bin/8ef51d2bdebfa031c324b7f3143ad5f70600971292b0564db303af0ee02077c1
Is there a way to clean up these logs automatically when tearing down the runtimes?
or can I simply clean up the entire "/var/lib/docker/aufs/diff/" directory and remain with a functional platform?
Sounds like a Docker question... Try https://www.google.co.uk/search?q=clean+up+docker+logs
any idea if the "/var/lib/docker/aufs/diff/" is used as an image repository too, besides as logs container?
can I just clear it all ?
@dselman The installing link take you to the prereqs and the documentation site talks about Ubuntu and it only explains how to setup the prereqs. The documentation is under tutorials section but I was finally able to get it after trying all the different links. There is no way to search on the site. How to setup locally is explained under tutorials but there should be direct link or actually this information should be under installing section. https://fabric-composer.github.io/tutorials/getting-started-playground.html
Hi all,
In the chaincode docker logs I see that a transaction is successfully completed (the asset is added).
However the bizNetworkConnection.submitTransaction(resource) doesn't return anything (no error nor a success code).. Is this the normal behaviour or is their something wrong in my transaction definition or client nodejs code?
08:37:59.763 [shim] DEBU : [22a7f079]Transaction completed. Sending COMPLETED
08:37:59.763 [shim] DEBU : [22a7f079]Move state message COMPLETED
08:37:59.764 [shim] DEBU : [22a7f079]Handling ChaincodeMessage of type: COMPLETED(state:transaction)
08:37:59.764 [shim] DEBU : [22a7f079]send state message COMPLETED
Was there a reason behind splitting the full type name when creating a resource instance to import into a registry? for example
```
const factory = businessNetworkDefinition.getFactory();
const asset = factory.newInstance("biz.network", "TestAsset", "id:1");
```
Whereas, when you get the registry, your using the full name:
`getAssetRegistry("biz.network.TestAsset");`
I feel it makes it harder to work with when your passing those values in as variables.
@dselman Also I did find the supported platforms under references. It does state that it supports Mac 10.12
@dselman I have installed fabric composer playground using the alternate install option. Used npm to install it. It starts up fine but how do I setup the connection profile so that I could connect to the local or remote fabric environment. It is not providing an option to update the connection profile in the browser. It says in the documentation that "The playground can then be configured to connect to your existing Hyperledger Fabric instance by creating a connection profile with the required connection settings."
Code generation tool is failing with this error. It is looking for the connection profile in /home/composer folder. I am using Mac. On my Mac obviously I don't have this folder and my home directory is different. I have connection profile in my home directory under /Users. So is there some other configuration to tell these CLI tools to look under /Users/
Has joined the channel.
@gauthampamu I suspect the `/home/composer/.composer-credentials` path is in the `hlfabric` connection profile itself. How did you create this?
You should edit the `hlfabric/connection.json` file to use a path under your home directory.
@gauthampamu Composer Playground does not yet support creating connection profiles -- you can either wait for us to finish the UI work, or use the old Composer-UI
@bonen this is normal. You have to listen to Fabric events to know the status of transaction processing (this is changing in HLF v1).
@uber.twin to remove docker images I use https://coderwall.com/p/ewk0mq/stop-remove-all-docker-containers
@dselman I did that and I'm still stuck with a good 10G of "leftovers" in /var/lib/docker/aufs/diff
than I tried "docker images -a|grep '^
it looked like it was going for what was left but it could not clear them either
it conveyed lots of error messages as the following
Error response from daemon: conflict: unable to delete 760ec04324f7 (cannot be forced) - image has dependent child images
Mac OSX Sierra. Generated Angular app, on npm start, throws the following
Sumabalas-MacBook-Pro:my-angular-app spnair$ npm start
> my-angular-app@0.0.0 start /Users/spnair/FabricComposer/MyApp/my-angular-app
> concurrently "ng serve" "npm run app"
[0] /Users/spnair/FabricComposer/MyApp/my-angular-app/node_modules/@angular/cli/models/config/config.js:16
[0] constructor(_configPath, schema, configJson, fallbacks = []) {
[0] ^
[0]
[0] SyntaxError: Unexpected token =
[0] at exports.runInThisContext (vm.js:53:16)
[0] at Module._compile (module.js:373:25)
[0] at Object.Module._extensions..js (module.js:416:10)
[0] at Module.load (module.js:343:32)
[0] at Function.Module._load (module.js:300:12)
[0] at Module.require (module.js:353:17)
[0] at require (internal/module.js:12:17)
[0] at Object.
I am able to access the REST APIs, but not the app
Any thoughts on how to get the app running?
I see ng serve is exiting
@Suma What version of node and npm are you using? `node -v` and `npm -v`
node was 4.x, I just upgraded. Tryng again
yeah, try node version 6.9.5
will it work wit 7x
i think i read composer doesnt work with 7x .Is that right?
I'm not sure about 7.x. I know that 6.9.x definitely works for everything Fabric Composer related.
okies. Thanks
Hello, I've recently set up composer-cli and composer-rest-server to run with hlfv1.0. I noticed that in the connection profile there is the possibility to specify more than one peer. I was wondering what that means (both for the deploy and invoke scenario) and if support for multiple peers is also being enabled for v0.6. I assume the deployment will target all the specified peers?
Can we have connection profiles other than the
they can also be loaded from an environment variable. See https://github.com/fabric-composer/fabric-composer/issues/602
I believe composer was demoed with hyp v1 at Interconnect? Is there material / videos on that implementation that highlights the changes?
@elisabetta multiple peers are for high availability - if you specify more than one, the Fabric client will hopefully failover if one falls over
We don't plan on making any new functional changes to the v0.6 support code so no, we won't be adding multiple peer support for v0.6.
Has joined the channel.
Hi, i'm new to fabric composer. I have few network nodes running locally. I want to run an application that uses fabric composer and connect to the nodes.
Can anyone suggest a sample application that is available on github and which file to change so that i can connect to nodes
If you are running v0.6 you can follow the quick start, and then edit your defaultProfile connection profile to point it at your existing nodes.
Hi guys, one thing I've noticed with our tests (unless my test is wrong) is that upon create a resource with a relationship to another resource that doesn't exist it doesn't error, is that intentional?
Yes, it is intentional.
The platform does not try to enforce referential integrity.
Hi guys. I want to know how to call "findAnimalsByOwnerId" of "animaltracking-network" with Playground.
I want to try "@query"
@tarima bad news... it's not implemented yet. The story is here: https://github.com/fabric-composer/fabric-composer/issues/67
We have that planned for Playback 7: https://github.com/fabric-composer/fabric-composer/projects
The plan is to map those queries to CouchDB, which required HLF v1.
@dselman ok thanks, is referential integrity going to be a feature in the future?
@dselman so. "@query" support HL v1 without HL v0.6 right?
@georgeormrod@gmail.com I don't think so. It has a pretty high performance cost and is not really compatible with an eventually consistent NoSQL JSON store type approach.
@tarima correct -- we can't implement complex queries based on v0.6
Thank you.
I am always grateful for your help
:thumbsup:
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=jYSkXMLaXCtngkPk4) @dselman is your statement just scoped for a create asset, via REST API or Client API? What about when I run a transaction that would create an asset? Can you expand on when a Relationship, ie --> actually enforces that a specific value is found in another asset.
When a transaction is submitted to the runtime, the runtime resolves relationships prior to calling the tx processor functions. If a relationship fails to resolve then the runtime fails the transaction.
We implemented this so that TX processor functions do not (generally) need to manually resolve relationships.
In addition the `resolve` and `resolveAll` methods on Registry attempt to resolve relationships: https://fabric-composer.github.io/jsdoc/module-composer-client.Registry.html#resolve__anchor
These are the only cases I'm aware of where relationships are resolved.
@dselman so do you plan to keep that functionality in the core transaction logic of Composer or will that eventually be removed for applications to do on their own transactions using resolve and resolveAll ?
I think we will probably keep it. Most tx processors need access to the results of resolution.
Maybe we can add a meta-annotation on a tx processor to disable it?
We will let the community drive the requirements! ;-)
Has joined the channel.
evening dan
evening
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=YjC94XwdPdSApsGwN) @sstone1 It makes sense. Thanks you.
Has joined the channel.
@dselman at the risk of being extremely annoying wouldn't you be better off calling your project chain composer or similar?
fabric is just one of - eventually - many target blockchain substrates you could deploy to
fabric is just one of - eventually - many target blockchain substrates you could deploy to - just a thought
Folks, for acl. Let's say, I have a participant of a type call Doctor. I am guessing a specific certificate will be issued for an instance of a Doctor (say Dr House). The local version of composer gets a self signed cert. But how will it work with CA? Also a person can have multiple role: a Medical Doctor, a CEO of a hospital, etc). Does it mean a real person who has to sign in in different roles will have to have certs representing different roles?
Folks, for acl. Let's say, I have a participant of a type call Doctor. I am guessing a specific certificate will be issued for an instance of a Doctor (say Dr House). The local version of composer gets a self signed cert. But how will it work with CA? Also a person can have multiple role: a Medical Doctor, a CEO of a hospital, Chief of Medicine, etc). Does it mean a real person who has to sign in in different roles will have to have certs representing different roles?
Folks, for acl. Let's say, I have a participant of a type call Doctor. I am guessing a specific certificate will be issued for an instance of a Doctor (say Dr House). The local version of composer gets a self signed cert. But how will it work with CA? Also a person can have multiple role: a Medical Doctor, a CEO of a hospital, Chief of Medicine, etc). Does it mean a real person who has to sign in in different roles will have to have multiple certs representing different roles?
Folks, for acl. Let's say, I have a participant of a type call Doctor. I am guessing a specific certificate will be issued for an instance of a Doctor (say Dr House). The local version of composer gets a self signed cert. But how will it work with CA? Also a person can have multiple role: a Medical Doctor, a CEO of a hospital, Chief of Medicine, etc). Does it mean a real person who has to sign in in different roles will have to have multiple certs representing different roles? Or do they need one cert tied to multiple enrollment id and secrets?
Folks, for acl. Let's say, I have a participant of a type call Doctor. I am guessing a specific certificate will be issued for an instance of a Doctor (say Dr House). The local version of composer gets a self signed cert. But how will it work with CA? Also a person can have multiple role: a Medical Doctor, a CEO of a hospital, Chief of Medicine, etc). Does it mean a real person who has to sign in in different roles will have to have multiple certs representing different roles? Is it based on one cert tied to multiple enrollment id and secrets?
Folks, for Fabric composer (Not Fabric) acl. Let's say, I have a participant of a type call Doctor. I am guessing a specific certificate will be issued for an instance of a Doctor (say Dr House). The local version of composer gets a self signed cert. But how will it work with CA? Also a person can have multiple role: a Medical Doctor, a CEO of a hospital, Chief of Medicine, etc). Does it mean a real person who has to sign in in different roles will have to have multiple certs representing different roles? Is it based on one cert tied to multiple enrollment id and secrets?
Folks, for Fabric composer (Not Fabric) ACL. Let's say, I have a participant of a type call Doctor. I am guessing a specific certificate will be issued for an instance of a Doctor (say Dr House). The local version of composer gets a self signed cert. But how will it work with CA? Also a person can have multiple role: a Medical Doctor, a CEO of a hospital, Chief of Medicine, etc). Does it mean a real person who has to sign in in different roles will have to have multiple certs representing different roles? Is it based on one cert tied to multiple enrollment id and secrets?
Folks, for Fabric composer (Not Fabric) ACL concept. Let's say, I have a participant of a type call Doctor. I am guessing a specific certificate will be issued for an instance of a Doctor (say Dr House). The local version of composer gets a self signed cert. But how will it work with CA? Also a person can have multiple role: a Medical Doctor, a CEO of a hospital, Chief of Medicine, etc). Does it mean a real person who has to sign in in different roles will have to have multiple certs representing different roles? Is it based on one cert tied to multiple enrollment id and secrets?
Folks, for Fabric composer (Not Fabric) ACL concept. Let's say, I have a participant of a type call Doctor. I am guessing a specific certificate will be issued for an instance of a Doctor (say Dr House) as per Business Network models. The local version of composer gets a self signed cert. But how will it work with CA? Also a person can have multiple role: a Medical Doctor, a CEO of a hospital, Chief of Medicine, etc). Does it mean a real person who has to sign in in different roles will have to have multiple certs representing different roles? Is it based on one cert tied to multiple enrollment id and secrets?
@duncanjw we are discussing dropping the Fabric and just calling it Hyperledger Composer; as you suggest, we could target the other Hyperledger projects (Sawtooth Lake, Iroha) and the Composer code already has a pluggable adapter layer that allows for this.
@paul.sitoh participants are issued with identities. identities are enrollment certificates (with a corresponding enrollment ID). a participant can have multiple identities. the composer API/CLIs for issuing identities to a participant will send a register request to the CA to create a new enrollment ID/secret pair.
@sstone1 that works
might want to be a bit more specific though as you are really enabling us to create blockchain apps
BTW we have a call with some of the cello guys as @cbf has suggested we might contribute our blueprints to this project
Has joined the channel.
On the multiple roles front; you can model the roles as extensions to the base Doctor participant type; e.g. `participant ChiefOfMedicine extends Doctor`. You can also add properties to those participant types and use those in the condition for an ACL rule; for example `o String[] roles`.
What is the relationship between enrollment id and secrets from a composer perspective
I wouldn't want to include "chain" or "blockchain" in the name as I get the feeling the trend is going to be to move away from "blockchain" towards "DLT" instead. Hyperledger is an umbrella of blockchain/DLT projects so I think that bit is implied.
Happy to discuss how Cello & Composer might work together.
Enrollment ID/secret are the credentials that are generated by the CA, which you use to request enrollment certificates from that CA.
Does composer provide a abstraction on top of fabric's credentials?
Once you enroll, the enrollment secret is no longer valid or required (although our APIs/CLIs don't reflect that).
Yes, we have an abstraction of participant & identities (where identities are equivalent to Fabric enrollment certificates).
So if a Dr looses the role of Chief of Medicine, and becomes something else, how do we we stop the Dr signing in as Chief of Medicine?
Since roles are tied to cert
It means as long as he has the cert he can signed in as chief of medicine regardless
No, roles and permissions are tied to the participant.
The identity (cert) is mapped to a participant.
An instance of a participant?
Users sign in using the identity. When they make requests to the business network, we look up which instance of a participant that identity maps to.
ACLs are then based on the participant instance, not the identity (cert).
So someone (an admin) can change the participant instance to reflect the change in roles and the ACL will pick up on those changes (assuming correctly coded ACL rules) - without having to change/revoke the identity (cert).
But at the fabric level (not composer level) access are govern by cert. So if a person has the cert he can login regardless to Fabric and see data?
But at the fabric level (not composer level) access are govern by cert. So if a person has the cert he can login regardless (of Composer's definition of participant) to Fabric and see data?
access to data is governed by chaincode... And the Composer chaincode will enforce the ACL.
He can only see data if the ACL rules permit.
^ yes
The cert could be revoked... in v0.6 we couldn't revoke certs, but I think this is available or coming in v1.0.
We can only (currently) break the link between identity (cert) and participant and stop people logging in at the chaincode level.
So if I, as a smart user, used HFC or Fabric SDK and not composer, use my cert, and still access blocks where composer (restrict under a specific role), I can still see data that under composer definition is open only to a particular role?
Is my painting of scenario correct at least for v0.6?
Assuming that cert has not been revoked by v0.6 certificate authority?
As far as I understand composer, you will be issue a cert and stored in .composer-credentials and anyone can pinch it and use it to access fabric, at least v0.6
Is that right?
Yes, if you get hold of someones existing Fabric cert you can then use that cert to access Fabric.
ok thanks for clearing up.
The only thing we can stop at v0.6 is you calling the Composer chaincode to perform a query or invoke, by rejecting the request because your identity has been revoked.
We cannot stop you accessing Fabric or actually making the call to the Composer chaincode.
hello,
I m currently using fabric-composer with the loopbackinterface. I was wondering is there a way to convert error to http code in the business logic. I use the following code
`throw new Error("error message") in the transaction code of the network. Can you help me ?
Has joined the channel.
@tixu I'm afraid not. With Fabric v0.6 there is no way for us to pass errors back from the chaincode to the client, which is why you only ever see the "transaction timed out" error message.
Hope this will be fixe with fabric 1.0.
With Fabric v1.0 we can pass errors back from the chaincode, but we have not yet considered allowing you to pass back HTTP status codes as well.
@sstone1 Fine, I will give a try as soon as it's available, it's a must have for the business.
anyone ever dealt with this error before when attempting to create an asset from within a transaction?
`TypeError: 'getFullyQualifiedIdentifier' is not a function`
can you post the code that is creating the asset?
it's cool, went away now. Was probably something dumb I did
but on a somewhat related note, I don't think model inheritance (as we intended to use it) is yet possible. Consider the following two schemas:
```
namespace mydomain.network.core
abstract asset BaseAsset identified by id {
o String id
o DateTime createdOn
--> BaseMember invoker
--> BaseAsset parent optional
}
abstract participant BaseMember identified by id {
o String id
o DateTime createdOn
--> BaseMember invoker
}
abstract transaction BaseTransaction identified by id {
o String id
o DateTime createdOn
--> BaseMember invoker
}
```
and (in a parent module)
```
namespace mydomain.network.test
import mydomain.network.core.BaseAsset
import mydomain.network.core.BaseMember
import mydomain.network.core.BaseTransaction
asset TestAsset extends BaseAsset {
o String testField
}
participant TestMember extends BaseMember {
o String testField
}
transaction TestTransaction extends BaseTransaction {
o String testField
}
```
yields this error when trying to invoke a transaction:
```
13:47:26.920 [chaincode] func1 -> DEBU 82b [6e3956f8]No state associated with key: 14$sysregistries46Participant:mydomain.network.core.BaseMember. Sending RESPONSE with an empty payload
13:47:26.920 [chaincode] 1 -> DEBU 82c [6e3956f8]handleGetState serial send RESPONSE
13:47:26.939 [chaincode] processStream -> DEBU 82d [6e3956f8]Received message ERROR from shim
13:47:26.939 [chaincode] processStream -> ERRO 82e Got error: Error: Object with ID 'Participant:mydomain.network.core.BaseMember' in collection with ID '$sysregistries' does not exist
```
Hello. What is the right way of restarting a REST server? I would have said just rerunning the `composer_rest_server` command. However, it only works if I previously delete the keystore:
```
eflamini@ubuntu1604:~/BC-Connect/config$ composer-rest-server -p defaultProfile -n carauction-network -i admin -s adminpw -N always -P 44444
To re-run this issue this command
composer-rest-server -p defaultProfile -n carauction-network -i admin -s adminpw -N always -P 44444
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Swagger: skipping unknown type "org_acme_vehicle_auction_Offer".
Swagger: skipping unknown type "org_acme_vehicle_auction_Offer".
Swagger: skipping unknown type "org_acme_vehicle_auction_Offer".
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
^C
eflamini@ubuntu1604:~/BC-Connect/config$ composer-rest-server -p defaultProfile -n carauction-network -i admin -s adminpw -N always -P 44444
To re-run this issue this command
composer-rest-server -p defaultProfile -n carauction-network -i admin -s adminpw -N always -P 44444
Discovering types from business network definition ...
Connection fails: Error: Private key missing from key store. Can not establish the signing identity for user admin
It will be retried for the next request.
Error: Private key missing from key store. Can not establish the signing identity for user admin
at _mspImpl.cryptoSuite.importKey.then.then (/usr/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/User.js:260:11)
eflamini@ubuntu1604:~/BC-Connect/config$ rm -rf ~/keyValStoreV1/
eflamini@ubuntu1604:~/BC-Connect/config$ composer-rest-server -p defaultProfile -n carauction-network -i admin -s adminpw -N always -P 44444
To re-run this issue this command
composer-rest-server -p defaultProfile -n carauction-network -i admin -s adminpw -N always -P 44444
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Swagger: skipping unknown type "org_acme_vehicle_auction_Offer".
Swagger: skipping unknown type "org_acme_vehicle_auction_Offer".
Swagger: skipping unknown type "org_acme_vehicle_auction_Offer".
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
```
Also notice the port weird message:
```
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
```
when I'm actually specifying port 44444 (and the server is actually listening on 44444)
@popsi can you please create an issue and attach a test case? I suspect this is a bug... https://github.com/fabric-composer/fabric-composer/issues
@pospi can you please create an issue and attach a test case? I suspect this is a bug... https://github.com/fabric-composer/fabric-composer/issues
@elisabetta can you try using `~/.hfc-key-store`
Looks like .hfc-key-store works well
OK, I know Dave has seen a few issues using the non-default value
I'll try and take a look
BTW, I had to specify the full path to the key store as I get a directory called "~" if I specify ~/.hfc-key-store
thanks
yeah, we don't replace the ~ with the users home directory
I'd like to get rid of the path altogether and just have the name of a folder under the ~/.composer-credentials folder
it makes migrating connection profiles between machines way too difficult
makes sense
Quick feedback on getting started (https://fabric-composer.github.io/tutorials/getting-started-cmd-line.html) . First of all, VERY good. Second, a bit of an explanation on the network vs the application side and possibly showing what directory commands are running from (ie: "back to getting started" meant changing from network to application and navigating out). And when I finished and it all went well, I saw the 3 follow-on links which all look like they will be great but ... all are broken links. I think I'll be able to navigate thru the rough info via the nav bar on the left ... but maybe a ref to doing that vs trying to keep these links up to date would be a good idea. Thanks
PS. This may get obvious as I move on, but my theory at this point is that the javaScript is part of the "chainCode" and that I'll be able to generate REST calls to drive it ... and that there is some code generated from the model (go code?) that is the final interface to the hyperledger (RocksDB on 0.6 and I guess some couch DB in 1.0)?
Has joined the channel.
@MikeC711 thanks for the feedback. @EdProsser is working on fixing those links. Yes, you can generate REST APIs for a business network using the composer-rest-server (based on the Loopback framework). No, Composer doesn't generate any Go code -- the JS code is interpreted using generic chaincode (written in Go) that interfaces to the underlying Fabric APIs.
During fabric composer installation, I experience timeout when deploying the business network archive (digitalPropertyNetwork.bna). The hyperledger dockers are up & running. Nodejs and npm are at the latest versions.Any pointers to where the problem could be?
here is a gist of what I get on the screen Found:
Description:Digital Property Network
Name:digitalproperty-network
Identifier:digitalproperty-network@0.0.6
Written Business Network Definition Archive file to digitalPropertyNetwork.bna
Command completed successfully.
Command succeeded
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
✖ Deploying business network definition. This may take a minute...
timed out waiting for transaction to complete
Command failed
Has left the channel.
@dselman what does mean "Unexpected token (53:3)" while trying to generate a Business Network Archive ?
:slight_frown:
Sounds like a syntax error in one of your files at line 53 col 3
Yeah
You are right.
Thank you
which file was it? We should report the file name as well...
the .js file
I was looking several times in cto file before ...
*only in the cto file*
Thats why I was crazy
Ok, I will create an issue to improve the error reporting
Yes please
@here I'm going to be at the Hyperledger Hackfest in DC on the 24/25th April - are any Composer fans coming along? It would be a great chance to sit down together and hack on some code if anybody fancies it! :)
@sstone1 @dselman I would like to create a participant who can view all completed assets (created). Is it something doable with fabric composer ?
(all completed assets or a subset of them)
In order to allow that participants to set the parameters asset status.
In order to allow that participant to set the parameters asset status.
Technically speaking, is it doable ?
E.G N assets A1, ..., AN are created. The participant P view all the N assets, and would set the parameters Age on them according to the model.
Has joined the channel.
@annbnn you can define ACL rules for the assets in permissions.acl; the ACL rules can either allow or deny the participant access to update the assets.
Thank you @sstone1 I will check that.
@Sstone1, I am learning about composer right now and live in the DC area, would be great to say hello if schedule permits
Hi, I am trying to export a business network archive from a local instance of the playground. When I click on export I see the following errors in Chrome Dev tools: EXCEPTION: Uncaught (in promise): TypeError: m.saveAs.saveAs is not a function
TypeError: m.saveAs.saveAs is not a function
at http://localhost:8080/main.16044a0f6fa7b4cff746.bundle.js:1:1001952
at t.invoke (http://localhost:8080/polyfills.c81cdeb21b73c2161a59.bundle.js:1:331313)
Should have mentioned this is running on OSX where I grabbed the latest packages via npm.
I just tried exporting using the hosted playground and I see the same error.
Any one able to export a .bna file? Thanks!
@tennenjl I see the same. It looks like we've busted it. Sorry, will fix ASAP.
@dselman Thanks for the confirmation, much appreciated!
getting error while installing fabric composer
``` root@ubuntu:/home/vishwas/go/src/github.com/fabric-composer# lerna run test
Lerna v2.0.0-beta.38
NpmUtilities.execInDir ("run test", [], "./packages/composer-common")
Error: Command failed: npm run test
sh: 1: pegjs: not found
npm ERR! Linux 4.8.0-36-generic
npm ERR! argv "/root/.nvm/versions/node/v7.8.0/bin/node" "/root/.nvm/versions/node/v7.8.0/bin/npm" "run" "prepublish"
npm ERR! node v7.8.0
npm ERR! npm v4.2.0
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! composer-common@0.5.8 prepublish: `pegjs ./lib/introspect/parser.pegjs && pegjs ./lib/acl/parser.pegjs && node ./scripts/tsgen.js`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the composer-common@0.5.8 prepublish script 'pegjs ./lib/introspect/parser.pegjs && pegjs ./lib/acl/parser.pegjs && node ./scripts/tsgen.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the composer-common package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! pegjs ./lib/introspect/parser.pegjs && pegjs ./lib/acl/parser.pegjs && node ./scripts/tsgen.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs composer-common
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls composer-common
npm ERR! There is likely additional logging output above.
npm WARN Local package.json exists, but node_modules missing, did you mean to install?
npm ERR! Please include the following file with any support request:
npm ERR! /root/.npm/_logs/2017-04-08T05_13_31_216Z-debug.log
```
Has any one encountered this?
@vishwass You might want to try an earlier version of node and npm (at least for fabric v1 I believe that those versions are not supported)
Has joined the channel.
Previously had some questions about getting Fabric Compose set up on local machine. @dselman pointed me in the right direction with installing some prerequisites. After doing so the four-node.yaml still wouldn't run but the one-node.yaml did. Have been following with the latest developments and am working on getting a business network defined. During the installation I got these error messages. `No registered namespace for type net.biz.digitalPropertyNetwork.RegisterPropertyForSale
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! getting-started@1.0.0 deployNetwork: `composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 deployNetwork script 'composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/goodfaith/.npm/_logs/2017-04-08T19_28_56_305Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! getting-started@1.0.0 install: `scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 install script 'scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/goodfaith/.npm/_logs/2017-04-08T19_28_56_371Z-debug.log
`
thanks @tennenjl
@vishwass You resolve your error?
Just updated docker-composer to v1.8, all other prereqs were as noted and still got the same error.
Ran npm test afterwards and got > getting-started@1.0.0 test /home/goodfaith/Go/src/github.com/Composer/sample-applications/packages/getting-started
> mocha --recursive && npm run bootstrapAssets && npm run listAssets && npm run submitTransaction
Default
#sample test
✓ should pass
1 passing (13ms)
> getting-started@1.0.0 bootstrapAssets /home/goodfaith/Go/src/github.com/Composer/sample-applications/packages/getting-started
> node cli.js landregistry bootstrap
info: [Composer-GettingStarted] Fabric Composer: Getting Started appliation
info: [Composer-GettingStarted] Adding default land titles to the asset registry
error: [Composer-GettingStarted] Error: Failed to load connection profile defaultProfile
Command failed.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! getting-started@1.0.0 bootstrapAssets: `node cli.js landregistry bootstrap`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 bootstrapAssets script 'node cli.js landregistry bootstrap'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node cli.js landregistry bootstrap
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/goodfaith/.npm/_logs/2017-04-08T23_30_25_781Z-debug.log
npm ERR! Test failed. See above for more details.
Unrelated to the previous issue, since upgrading to docker-composer v1.8 I wanted to see if the installation method used previously was effected. It was not and now the four-peer.yaml files launches as well too. However since that reference document was last updated there have been changes made to login as a peer.
This login is referenced:
peer network login test_user0 -p MS9qrN8hFjlE
Whereas this is what is the user hardcoded in to the membersrvc.yaml:
Unrelated to the previous issue, since upgrading to docker-composer v1.8 I wanted to see if the installation method used previously was effected. It was not and now the four-peer.yaml files launches as well too. However since that reference document was last updated there have been changes made to login as a peer.
This login is referenced:
peer network login test_user0 -p MS9qrN8hFjlE
Whereas this is how the user hardcoded in to the membersrvc.yaml:
Unrelated to the previous issue, since upgrading to docker-composer v1.8 I wanted to see if the installation method used previously was effected. It was not and now the four-peer.yaml files launches as well too. However since that reference document was last updated there have been changes made to login as a peer.
This login is referenced:
peer network login test_user0 -p MS9qrN8hFjlE
Whereas this is how the user is hardcoded in to the membersrvc.yaml:
Unrelated to the previous issue, since upgrading to docker-composer v1.8 I wanted to see if the installation method used previously was effected. It was not and now the four-peer.yaml files launches as well too. However since that reference document was last updated there have been changes made to login as a peer.
This login is referenced:
peer network login test_user0 -p MS9qrN8hFjlE
Whereas this is how the user is hardcoded in to the membersrvc.yaml for that node:
Unrelated to the previous issue, since upgrading to docker-composer v1.8 I wanted to see if the installation method used previously was effected. It was not and now the four-peer.yaml files launches as well. However, since that reference document was last updated there have been changes made to login as a peer.
This login is referenced:
peer network login test_user0 -p MS9qrN8hFjlE
Whereas this is how the user is hardcoded in to the membersrvc.yaml for that node:
Unrelated to the previous issue, since upgrading to docker-composer v1.8 I wanted to see if the installation method used previously was effected. It was not and now the four-peer.yaml file launches as well. However, since that reference document was last updated there have been changes made to login as a peer.
This login is referenced:
peer network login test_user0 -p MS9qrN8hFjlE
Whereas this is how the user is hardcoded in to the membersrvc.yaml for that node:
environment:
- CORE_PEER_ID=vp0
- CORE_SECURITY_ENROLLID=test_vp0
- CORE_SECURITY_ENROLLSECRET=MwYpmSRjupbT
I tried a number of variations for logging in such as
peer network login test_uservp0 -p MwYpmSRjupbT
peer network login test_vp0 -p MwYpmSRjupbT
I tried a number of variations for logging in such as
peer network login test_uservp0 -p MwYpmSRjupbT
peer network login test_vp0 -p MwYpmSRjupbT
I tried a number of variations for logging in such as
peer network login test_uservp0 -p MwYpmSRjupbT
peer network login test_vp0 -p MwYpmSRjupbT
peer network login test_user_vp0 -p MwYpmSRjupbT
...none of them worked. Based on the memberserv.yaml how do you login peer?
FYI The login info referenced at https://hub.docker.com/r/ibmblockchain/fabric-peer/ works with the single-peer.yaml. (As above)
Has joined the channel.
Dear all, I appreciate help in getting out of the current situation. I'm trying to complete the quickstart scenario for fabric composer as documented at the link: https://fabric-composer.github.io/installing/quickstart.html
I have the following environment: Distributor ID: Ubuntu
Description: Ubuntu 14.04.5 LTS
Release: 14.04
Codename: trusty
Docker version 1.12.3, build 6b644ec
node v6.9.5
npm v4.4.4
docker-compose version 1.10.0, build 4bd6f1a
git version 1.9.1
I have installed the composer-cli module and following are the versions of composer modules:
composer-cli v0.5.8
composer-admin v0.5.8
composer-client v0.5.8
composer-common v0.5.8
composer-runtime-hlf v0.5.8
composer-connector-hlf v0.5.8
When running npm install in the directory ~/sample-applications/packages/getting-started I get:
> getting-started@1.0.0 deployNetwork /home/onofrio/sample-applications/packages/getting-started
> composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
Creating Business Network Archive
Node module search path :
/home/onofrio/sample-applications/packages/getting-started/node_modules
Looking for package.json of Business Network Definition in /home/onofrio/sample-applications/packages/getting-started/node_modules/digitalproperty-network
composer archive create --archiveFile digitialPropertyNetwork.zip --sourceType module --sourceName digitalproperty-network
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--archiveFile, -a Business network archive file name. Default is based on the Identifier of the BusinessNetwork [string]
--sourceType, -t The type of the input containg the files used to create the archive [ module | dir ] [required]
--sourceName, -n The Location to create the archive from e.g. NPM module directory or Name of the npm module to use [required]
No registered namespace for type net.biz.digitalPropertyNetwork.RegisterPropertyForSale
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! getting-started@1.0.0 deployNetwork: `composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 deployNetwork script 'composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/onofrio/.npm/_logs/2017-04-09T13_33_52_572Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! getting-started@1.0.0 install: `scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 install script 'scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/onofrio/.npm/_logs/2017-04-09T13_33_52_653Z-debug.log
The fabric is started and what really fails is the deployNetwork task. If I run:
npm run deployNetwork
I get:
the above message
@dselman I pulled down the latest version of composer and export is working fine. Thank you!!
@olazzizz The Docker-Compose dependency is listed as v1.8+. You need to update Docker-Compose. Once the 'node cli.js landregistry bootstrap' issue is addressed the package should load as stated, as of now it seems as if it is busted.
@GoodFaith In my environment the version of docker-compose was 1.10.0. Anyway I followed your suggestion and I uninstalled that version and installed docker-compose v1.8.1. The result doesn't change though, I get the very same error after running npm install.
@olazzizz I knew you would. I'm wanting to set up the business network myself and had the same error you did. It has something to do with the node cli.js landregistry bootstrap. Based on the dependencies listed in the installation guide you'll need that version of docker-compose once the issue is resolved though.
@olazzizz I knew it would. I'm wanting to set up the business network myself and had the same error you did. It has something to do with the node cli.js landregistry bootstrap. Based on the dependencies listed in the installation guide you'll need that version of docker-compose once the issue is resolved though.
@GoodFaith: I am assuming you are talking about the following problem
node cli.js landregistry bootstrap
info: [Composer-GettingStarted] Fabric Composer: Getting Started appliation
info: [Composer-GettingStarted] Adding default land titles to the asset registry
error: [Composer-GettingStarted] Error: Failed to load connection profile defaultProfile
Command failed.
@olazzizz Yes.
I expect to find the connection profiles under my home, but they are not
The connections profile will be where you initially downloaded the file to.
Or I could be wrong....here's further information listed for fabric-composer connection profiles. https://fabric-composer.github.io/reference/connectionprofile.html
@vishwass you should not need to run the tests to use Composer. If you are wanting to modify Composer itself, please use the #composer-dev channel.
(the issue is that you have not run `lerna bootstrap`).
@GoodFaith @olazzizz I'm having following the questions/issues. Could you please post a question to StackOverflow using the #fabric-composer tag. This issue is usually due to a prior install issue (often installing composer-cli). Can you check that installed cleanly? What do you get if you type `composer --version`?
@GoodFaith @olazzizz I'm having trouble following the questions/issues. Could you please post a question to StackOverflow using the #fabric-composer tag. This issue is usually due to a prior install issue (often installing composer-cli). Can you check that installed cleanly? What do you get if you type `composer --version`?
composer-cli v.0.5.7
composer-admin v.0.5.7
composer-client v.0.5.7
composer-common v.0.5.7
composer-runtime-hlf v.0.5.7
composer-connector-hlf v.0.5.7
I've reproduced the `No registered namespace for type net.biz.digitalPropertyNetwork.RegisterPropertyForSale` issue and am working on it.
For the Yo generator is the skeleton network option currently supported? When I try it, it throws an error Cannot find module '../businessnetwork'
@tennenjl that may be related to the issue I am working on creating business network archives. I'll keep you posted.
@dselman Much obliged, appreciate the help.
Sorry for the noob question, but if I'm reading through this channel correctly, if I want to deploy to Bluemix Dev (Hyperledger fabric v.6), I will need to install composer-ui versus composer-playground. Is this correct? Thanks!
Yes, that is correct. We are working on adding connection profile support to composer-ui at the moment.
Hi, I'm sure I'm doing something silly but when I try switching connection profiles using the composer-ui running locally to point to Bluemix, it appears to hang. The screen displays "Establishing admin connection..." and the chrome dev tools console shows "Connecting to connection profile (w/ business network ID) and the name I provided for my profile "car_lease_blockchain_jtenn". I'm happy to share my settings. I also am doing my best to follow the suggestions provided here: http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service . Thanks for any debugging suggestions!
Has joined the channel.
@dselman I've created an issue for `No registered namespace for type net.biz.digitalPropertyNetwork.RegisterPropertyForSale`
@dselman I've created an issue for `No registered namespace for type net.biz.digitalPropertyNetwork.RegisterPropertyForSale`, is there already an issue on github? I can close mine
Has joined the channel.
I have question related to composer query. Suppose I defined a Model like:
```asset VehicleListing identified by listingId {
o String listingId
o Double reservePrice
o String description
o ListingState state
o Offer[] offers optional
--> Vehicle vehicle
}```
asset VehicleListing identified by listingId {
o String listingId
o Double reservePrice
o String description
o ListingState state
o Offer[] offers optional
--> Vehicle vehicle
}`
And there are 30,000 instances of this model. If we query without listingid, does composer return 30,000 instances ? And is there any way to specify where like statement (e.g. where state = ‘SOLD’) ? (As far as I know about KVS range query, this is not possible, but I just thought fabric may have world around this limitation already). Thanks!
And there are 30,000 instances of this model. If we query without listingid, does composer return 30,000 instances ? And is there any way to specify where like statement (e.g. where state = ‘SOLD’) ? (As far as I know about KVS range query, this is not possible, but I just thought fabric may have worked around this limitation already). Thanks!
Has joined the channel.
Has joined the channel.
Does anyone have some sample code on how to unit test transaction logic? I presume there are mocks for `getAssetRegistry` etc but unsure where to find them
Message Attachments
Still trying to get composer-ui connection profile working with a Bluemix instance of Hyperledger fabric v.6 My Connection profile looks like this
and my cert screen looks like this:
Message Attachments
I added the \n on my latest attempt after BEGIN CERTIFICATE line although I'm not sure if I should be doing that via the stack overflow discussion
Has joined the channel.
Hi All. I have a unit test strategy question. How you guys are testing that defined ACL rules work properly in your application ?
@tennenjl how are you running composer-ui locally ? are you using the docker image ?
@annbnn I'd love to know that too!
FYI all I have logged a reproducible test case for the model inheritance issues I was seeing https://github.com/fabric-composer/fabric-composer/issues/647
@davidkel Yes, I am running the docker image. Thanks!
@dselman logical name is Hyperledger Composer - on marketing call and it appears that this is new / emerging convention eg. Hyperledger Cello
Thank you @prospi
@tennenjl have a look at the logs for the container, for example `docker logs composer-ui` (if your container is named composer-ui)
@annbnn @pospi There is an issue logged which looks like it might go some way to what you want.
https://github.com/fabric-composer/fabric-composer/issues/57
feel free to add comments with suggestions of what you might want
@davidkel Will take a look at the logs and feedback accordingly. Thanks!
@davidkel - Will do and try again. Thanks!
Has joined the channel.
hi
I'm having issues while following the tutorial: https://fabric-composer.github.io/installing/quickstart.html
anyone can help?
@daragao Can you provide some details regarding the problems you are seeing?
Hi @daragao, we've noticed that something went wrong with our latest code build. This is causing the quickstart to fail (and a few other things). We're hoping to have our fix implemented within the next hour or so
when doing `npm install` I get:
```
npm ERR! Linux 4.10.6-041006-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/local/bin/npm" "run" "deployNetwork"
npm ERR! node v4.2.6
npm ERR! npm v3.10.7
npm ERR! code ELIFECYCLE
npm ERR! getting-started@1.0.0 deployNetwork: `composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d`
npm ERR! Exit status 1
```
:D
oh
any tag I should checkout to get a working version?
thanks @tennenjl @Jakeeyturner
I think you'll want to do `npm install -g composer-cli@0.5.8`
;)
will try
but you'll need to change a few things in the sample-applications possibly
If you can hold on an hour or so, then there shouldn't be any hacking!
ok
no worries
thanks
@Jakeeyturner How can I can efficiently test my ACL logic rules ?
There's an issue here: https://github.com/fabric-composer/fabric-composer/issues/57 although I'm not sure what the method for doing this is. Sorry, I haven't done much in regards to ACL's
a very basic and silly question, but the Fabric Composer is only a sandbox to build applications for the Fabric Blockchain? or anything more? Where can I check a good tutorial on how to deploy and Fabric Blockchain locally? And create contracts on it?
we've got some solid docs here (constantly being improved) - https://fabric-composer.github.io/
still a bit confused, about what is what (I am used to Ethereum, but new to Fabric) well guess that I have to read more
Not a problem, Fabric Composer basically allows you to model a business network and create an application quickly and more easily than traditional methods. There are numerous tools which will help throughout that process. It's worth taking a look through here: https://fabric-composer.github.io/introduction/introduction.html and if you have any questions definitely feel free to ask!
that's what I have been following, and it seems pretty cool and clear
my main doubt is how do I actually launch a bunch of nodes locally, I have tried the basics of fabric composer and it seems cool, just want to do it for real
:)
but lost about which tutorial to follow in order to deploy and bunch of nodes, and add a some chaincode to them
You'll probably want to have a look here then: https://fabric-composer.github.io/tutorials/getting-started-cmd-line.html
Has joined the channel.
will do thanks
so fabric composer actually deploys a network of nodes?
ok, better read this, before making more questions hahaha
You'd deploy what you've modeled to the nodes
pity to start this I need to have run quickstart :S which depends on the composer
anyway, I'll read it now, and try it later
yeah, sorry about that. Currently getting one more change in before a new build is released, that should fix the quickstart for you :) There will be an announcement once a new build is made
cool thanks again @Jakeeyturner
the docker logs composer-ui shows the following error: k\nCAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4=\n-----END CERTIFICATE-----\n"}
0|composer | HFCConnection :constructor() Creating connection org.acme.biznet@bluemix-my-auto
0|composer | HFCConnectionManager :connect() < {}
0|composer | ConnectorServer :connectionManagerConnect() < e3c07d40-0ae0-43ed-bc33-cb5fb24a8e0b
0|composer | ConnectorServer :connectionLogin() > e3c07d40-0ae0-43ed-bc33-cb5fb24a8e0b, user_type1_0, 53822319a9
0|composer | HFCConnection :login() Login attempt org.acme.biznet
0|composer | Error: {"created":"@1491838449.300233887","description":"EOF","file":"../src/core/lib/iomgr/tcp_posix.c","file_line":235,"grpc_status":14}
0|composer | at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-ui/node_modules/grpc/src/node/src/client.js:189:19)
0|composer | at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-ui/node_modules/grpc/src/node/src/client.js:169:8)
0|composer | at /usr/local/lib/node_modules/composer-ui/node_modules/grpc/src/node/src/client.js:634:14
0|composer | events.js:160
0|composer | throw er; // Unhandled 'error' event
0|composer | ^
0|composer | Error: write after end
0|composer | at writeAfterEnd (_stream_writable.js:193:12)
0|composer | at ClientDuplexStream.Writable.write (_stream_writable.js:244:5)
0|composer | at EventHub.unregisterBlockEvent (/usr/local/lib/node_modules/composer-ui/node_modules/hfc/lib/hfc.js:2470:23)
0|composer | at EventHub.disconnect (/usr/local/lib/node_modules/composer-ui/node_modules/hfc/lib/hfc.js:2420:14)
0|composer | at Chain.eventHubDisconnect (/usr/local/lib/node_modules/composer-ui/node_modules/hfc/lib/hfc.js:346:23)
0|composer | at process.on (/usr/local/lib/node_modules/composer-ui/node_modules/composer-connector-hlf/lib/hfcconnectionmanager.js:112:27)
0|composer | at emitOne (events.js:96:13)
0|composer | at process.emit (events.js:188:7)
0|composer | at processEmit [as emit] (/usr/local/lib/node_modules/composer-ui/node_modules/grpc/node_modules/node-pre-gyp/node_modules/npmlog/node_modules/gauge/node_modules/signal-exit/index.js:140:35)
0|composer | at process.exit (internal/process.js:164:15)
PM2 | App [composer-ui] with id [0] and pid [22], exited with code [7] via signal [SIGINT]
PM2 | Starting execution sequence in -fork mode- for app name:composer-ui id:0
@tennenjl if you have cut and pasted the certificate info into the composer-ui panel, then I would suggest taking out all the \n entries.
@davidkel Thank you, I'll give that a shot.
@Jakeeyturner For demo purpose, is it possile to create Connection Profiles located in different countries in order to use them on the playground composer ?
Let say 3 participants located in canada, us and france as member in an application.
Using url or ip addresses.
A connection profile just points at the running Hyperledger Fabric. So, a user can share this connection profile
https://fabric-composer.github.io/reference/connectionprofile.html
@here *Release notes for Fabric Composer v0.5.10* :tada::tada:
Hey everyone, we are about to cut a release for the latest version of Fabric Composer, expect the Docs/Website/Playground to be down for a short period.
What has changed:
- Rollback breaking changes to composer-common (from v0.5.9).
- Link fixes in documentation (mainly in the tutorials).
- Graceful fallback for iOS devices and Safari browsers on the main website homepage.
_(for more info please see https://github.com/fabric-composer/fabric-composer/releases)_
Any problems let us know!
:tada::tada::tada::tada:
when will it be available on npm?
Hi All. Is there a paper about comparing Ehtereum and Hyperledger Fabric ?
What would be the best way to do a demo using Hyperledger Fabric for people who already know Ethereum ?
Thank you for your advices
@annbnn would love also to check something like that
@annbnn I would ask on the fabric-questions channel. There was an altoros video on the topic, but that was a while back. Things to consider are the approach to consensus, language support for chaincode, etc
sorry for being so annoying but: https://www.npmjs.com/package/composer-cli
is still with the 0.5.9 version :(
@daragao I think it could be a couple of hours based on previous builds (unless I'm looking at the wrong thing in travis)
;) ok thanks
@daragao it looks like it's 0.5.10 now, although there were build errors deploying composer-playground
Apologies for the vanishing composer playground- the build is rerunning at the moment
just trying to install it in another pc at home @js
just trying to install it in another pc at home @jtonline and it is spitting a bunch of errors, figureing out if it is the computer to blame or the npm :( so sad
Message Attachments
@here any tips on why the compose-cli is failing to install are welcome :(
Has joined the channel.
Hi - I am trying to play with the 'Try it out' playground at http://composer-playground.mybluemix.net/
It isnt working for me - any way I can try it out?
@kpsid sorry, the latest composer playground failed to deploy
Okie - I am a beginner - should I rather probably try to install locally?
I'm trying to get the new version up there but just rerunning the build didn't work unfortunately
NP. Thank you @jtonline .
@kpsid installing locally should work, or you could try https://composer-playground-unstable.mybluemix.net/
(Ironically the unstable version is currently more stable! :)
Heh - thanks very much
@daragao I'm not sure what's causing your npm install woes- I've just tried the quickstart in this vagrant environment and it all seemed to work -> https://github.com/jthub/composer-quickstart-vagrant
ok, fair enough, probably the problem is on my side, thatnk @jtonline
ok, fair enough, probably the problem is on my side, thanks @jtonline
@jtonline after trying to install composer-cli 30 times it finally went through :woo:
is there a way to write endorsement policies in Composer?
Still trying to get the deploy to Bluemix working. I now see the following errors client side:
vendor.01709ad….bundle.js:1 ORIGINAL STACKTRACE:
t.handleError @ vendor.01709ad….bundle.js:1
vendor.01709ad….bundle.js:1 Error: Uncaught (in promise): Error: Identity or token does not match.
Error: Identity or token does not match.
at /usr/local/lib/node_modules/composer-ui/node_modules/grpc/src/node/src/client.js:417:17
at y (http://localhost:8080/polyfills.c02cb54e2e8869c9c8fa.bundle.js:1:295454)
at h (http://localhost:8080/polyfills.c02cb54e2e8869c9c8fa.bundle.js:1:294637)
The container logs shows 0|composer | ConnectorServer :connectionLogin() > 3c532014-9811-445e-bba1-2e0d3d0be95a, user_type1_0, 53822319a9
0|composer | HFCConnection :login() Login attempt
0|composer | HFCConnection :login() Failed login bluemix-car
0|composer | ConnectorServer :Error: Identity or token does not match.() undefined
0|composer | ConnectorServer :connectionLogin() <
jtenmac:composer-ui jeff$
Sorry for the composer playground outage. It's back now! /cc @kpsid
Thank you .. @jtonline - it will also be helpful if you could pls point me to a good place to begin understanding composer
@kpsid there's a short YouTube video following the quickstart which may help https://youtu.be/pEHBIfb_iqc
Thank you
@mohamoud.egal Composer doesn't provide anything for endorsement policies
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=RLDzdJh8XMW8Xqh4j) @tennenjl just catching up - I'm not sure what my schedule is yet, have you considered coming along to the Hackfest? It's free and I'm very happy to help people get up and running with Composer as well as hacking on the Composer source :)
@tennenjl that looks like there is some problem enrolling your user and creating the ecert
Your identity or token does not match error suggests that someone has already enrolled as user_type1_0 or the enrollment secret has changed (if you've recreated the service)
@sstone1, yes, still hoping to make it out to the hackfest, need to register I suppose :D
@sstone1, trying another service again, just to be safe (for user_type1_0) etc
@sttone1 Would be great to meet up and learn
@sstone1 at the hackathon
Agreed - here's the link: https://www.regonline.com/hyperledgerhackfestapril2017
@sstone1 Thanks, I'll register now
@sstone1 All registered and ready do go. Let me know if you need any help with anything or need info on the area.
@sstone1 @davidkel OK, got the composer to write to Bluemix instance, thanks for all your help!
another dummy question.. Once you have deployed chain code (in this case the chaincode is in stopped) status. Is it possible to deploy new code via the composer. (Using the old composer-ui for now), or do I need to delete and create a new service. Thanks!
Has joined the channel.
nvm I just remembered that is not on V0.6
Updated composer-cli to v0.5.10, but when doing npm install I get error: git submodule init && git submodule update && lerna bootstrap fatal: Not a git repository (or any of the parent directories): .git. Previously install would spin up an instance of membrserv and one peer node?
@GoodFaith what directory were you in when you ran npm install ? It looks like you have a package.json file from the root of the fabric composer source tree
I just changed the name of the folder to shorten it.
Better yet, which directory should we run it from?
@GoodFaith where you trying to use the getting started package in the sample applications ?
@GoodFaith were you trying to use the getting started package in the sample applications ?
Yes.
@GoodFaith so running npm install in that directory is correct, what is confusing is the contents of package.json in that folder are wrong. It might be worth getting rid of the directory and re-cloning the sample applications git repository
I pulled down the new the folder that was posted today. https://codeload.github.com/fabric-composer/fabric-composer/zip/v0.5.10 It has the packages folder, but not the getting started.
@GoodFaith that is a zip of the complete source tree of fabric-composer which I don't think is what you want
@GoodFaith that is a zip of the complete source tree of fabric-composer which I don't think is what you want. composer-cli v0.5.10 has been published to npm, so you can use npm to install/upgrade the latest version of composer-cli
I've updated composer-cli, it's installed. I'll install sample applications again see if I have any errors. When updating the composer-cli I get WARN depreciated messages like:
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
When I run composer --version is returns:
composer-cli v0.5.10
composer-admin v0.5.10
composer-client v0.5.10
composer-common v0.5.10
composer-runtime-hlf v0.5.10
composer-connector-hlf v0.5.10
Is that installing correctly?
@GoodFaith that looks correct
It spun up a memberserv node, but it did not spin up vp_0_1 node, and this is error I got:
eploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/home/goodfaith/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/home/goodfaith/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/home/goodfaith/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! getting-started@1.0.0 deployNetwork: `composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 deployNetwork script 'composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/goodfaith/.npm/_logs/2017-04-10T23_14_03_996Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! getting-started@1.0.0 install: `scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 install script 'scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/goodfaith/.npm/_logs/2017-04-10T23_14_04_048Z-debug.log
Sorry for the confusion, I assumed the fabric-composer-0.5.10 folder had the sample application in it. Thanks for your help.
Has joined the channel.
Has joined the channel.
Would you please answer to my question ? Customer want to know if it is possible to filter by "state" field in carauction example. In reality, customer would have more than 30,000 assets per year. Without filtering system, it crashes application. Also, it imposes 64mbyte gRPC buffer size limitation.
Message Attachments
what is the error?
getting the following error when I try to deploy my bna. The same bna deploys fine on another machine. Both machines are running the same docker images. Deploying business network from archive: com.novartis.iandd.bna
Business network definition:
Identifier: iandd-interactive-patient-support@0.0.1
Description: I&D Interactive Patient Support
✖ Deploying business network definition. This may take a minute...
Error: Error: sql: no rows in result set
Command failed
*************************************************************************8
docker container details below: CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
23630d6d3912 ibmblockchain/fabric-peer:x86_64-0.6.1-preview "sh -c 'sleep 10; pee" 5 minutes ago Up 5 minutes 0.0.0.0:7050-7051->7050-7051/tcp, 0.0.0.0:7053->7053/tcp dockercompose_vp_1
5ba44cbed823 ibmblockchain/fabric-membersrvc:x86_64-0.6.1-preview "membersrvc" 5 minutes ago Up 5 minutes 0.0.0.0:7054->7054/tcp dockercompose_membersrvc_1
2b8a45bcb893 docker/compose:1.11.1 "/usr/bin/docker-comp" 5 minutes ago Up 5 minutes drunk_tesla
Getting an error using yo fabric-composer to generate a sample application
Failed to set chaincode id on security context. Check that the connection profile defaultProfile defines the network com.n.iandd
@qijianbo010 I think you have the wrong channel, you might want to try fabric-peer-endorser-comitter to see if that is the right channel for your question
ok
@saridsa1 have you deployed your business network ? Once deployed the chaincode id is stored in your connection profile and referenced via your network name and the error is saying it couldn't find a network with that name deployed
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=TqSLijJje5SLxh5G2) @ibmamnt we are working on complex queries under story https://github.com/fabric-composer/fabric-composer/issues/543 and https://github.com/fabric-composer/fabric-composer/issues/67
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=wqdBtf4pw3rS3aNp2) @PraveenU this error means that your ECerts are not valid (usually because you have restarted the Fabric after an enroll). You can simply delete the ~/.composer-credentials folder and rerun.
@dselman understood. Thanks !
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=zjoX3fxzgAXb2xYbH) @saridsa1 did you deploy the BNA file with the id `com.n.iandd` using the `defaultProfile` connection profile. You need to deploy the BNA and have it running to use this generator option. Alternatively give the generator the path to the BNA file and it will generate based on that.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=K6yduZjAZ9c7AQYvY) @qijianbo010 I don't know, and this doesn't look like a Composer question. Are you in the right channel?
Back in business with v0.5.10.
```✔ Deploying business network definition. This may take a minute...
Command succeeded
✔ List business network digitalproperty-network
name: digitalproperty-network
models:
- net.biz.digitalPropertyNetwork
scripts:
- lib/DigitalLandTitle.js
registries:
net.biz.digitalPropertyNetwork.SalesAgreement:
id: net.biz.digitalPropertyNetwork.SalesAgreement
name: Asset registry for net.biz.digitalPropertyNetwork.SalesAgreement
registryType: Asset
net.biz.digitalPropertyNetwork.LandTitle:
id: net.biz.digitalPropertyNetwork.LandTitle
name: Asset registry for net.biz.digitalPropertyNetwork.LandTitle
registryType: Asset
Command succeeded
```
Thank you to @Jakeeyturner @jtonline for fixing.
:woo: great job, yesterday was also in trouble with that, this morning sondenly it all works
:woo: great job, yesterday was also in trouble with that, this morning suddenly it all works
Yes -- we broke the v0.5.9 build. Apologies to all. It was a "learning experience". We will improve! ;-)
It was a team effort! There were even designers at the release party ;)
Cats sleeping with Dogs... Anarchy! :-)
only when I do `npm test` I get `composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d`
only when I do `npm test` I get `composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16dcomposer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d`
only when I do `npm test` I get `error: [Composer-GettingStarted] Error: Deployed chain-code (0.5.10) is incompatible with client (0.5.9)`
by thew way is IBM Design involved in the Hyperledger project? I really like the looks of that team :D
by the way is IBM Design involved in the Hyperledger project? I really like the looks of that team :D
@daragao can you try `rm -rf ./node_modules` followed by `npm uninstall -g composer-cli` followed by `npm install -g composer-cli`
that should ensure you are updated to v0.5.10
(run that in the `sample-applications/packages/getting-started` dir
;)
;) thanks @dselman
You will then need to rerun `npm install` for the getting started
@daragao Not sure about other Hyperledger projects but the two nearest the camera are IBM Designers working on Composer https://twitter.com/EPJMoffatt/status/849261134188294145
lets see if today I can get to understand how this whole thing works :)
thanks for all your work
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=wXLE6pitJ9enf5BJD) @daragao Yes! Hi from us all! @EdMoffatt @tobiashunter
@winslet oops, sorry I missed you out... and the forth one along in that conga line!
@daragao we'd love to see more "explained" blog posts from people, and/or get feedback on the docs we have.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=z5LBKnmTF8mE3QEry) @dselman Thanks Dan..this worked!
Hi @winslet and all of you (I applied there yesterday hahahaha)
will do @dselman for now it seems to beat Ethereum on those terms, at least when I was starting out with Ethereum a few months ago (~8 months), it is just confusing, all the different repos you have but will try and make a clearer opinion later :D
@dselman What would be the best strategy to check that ACL rules (defined for the assets in permissions.acl) work during unit tests ?
@dselman Also how would the best way to present the hyperledger for people who already know Ethereum ?
I have a question on participants in the composer. We have API to add participants to the network and I have seen in some samples we add those participants using the API using the connection profile of an Admin. When you are forming the network for real use case and especially in v1.0 and also I have seen in the HSBN service, you have to invite participants to the network and they can join and it automatically creates the peers for those participants. How do you map those participants to the participants in composer model. Are you still expected to create the participants in the ledger using the composer SDK. In v1.0 and even 0.6, when you add a participants, it provides an enrollment id. How do you map that with the participant information that you create in the ledger using the composer API to the enrolled participants in the ledger. Also when you add the participants in the ledger, is it really registering the participants ?
@annbnn so @sstone1 has been working on embedded mode support for ACL enforcement, this will allow you to write a Node.js unit test (running agains the Composer embedded runtime) and check that ACLs are correct. @sstone1 is that ready for prime time? Alternatively you can run your unit tests against a real HLF -- that is what we do in our system tests.
@annbnn I think we should work on a compare/contrast infographic. AFAIK we don't have that yet, but it is a very good idea.
@gauthampamu can you please post this to StackOverflow -- the answer will be fairly long and we want others to be able to find it.
@dselman What do you mean by *you can run unit tests against a real HLF* ?
@annbnn here is the unit test for the Car-Auction sample network: https://github.com/fabric-composer/sample-networks/blob/master/packages/carauction-network/test/CarAuction.js
It runs an auction and checks the results.
If you remove the call to `createProfile` is will use the `defaultProfile` to run the auction. If this is to a real HLF instance then the test will run against it, and the runtime will enforce ACL checks.
You should definitely create a unit test for all your business logic...
I understand. I will check with the Car-Auction
Thank you
@dselman To run the unit test on CarAuction.js, I should do what its done her ? : https://fabric-composer.github.io/tutorials/getting-started-cmd-line.html
Right ?
Or there is something else to do ?
`git clone https://github.com/fabric-composer/sample-networks.git`
then `cd sample-networks/packages/carauction-network/`
`npm install`
`npm test`
I use the same strategy with the the unit test file related to my application
right ?
Thank you @dselman
yes
unit tests for blockchain solutions are the way forward! :-)
:+1:
assume my application is called HouseAuction
I mean the folder is called HouseAuction
The Composer embedded runtime fully supports identities & ACLs now, so you should be able to write any required unit tests using Mocha and the Composer APIs. I don't think there's a good example of this though.
@dselman assume my application is called HouseAuction
I mean the folder is called HouseAuction (which is not in the sample-networks repository)
git clone https://github.com/fabric-composer/sample-networks.git
npm install
npm test
doest not work ...
@dselman I will post on stackoverflow
@sstone1 Mocha & the COmposer APIs ... I should think about it .. I dont see how to do it.
@dselman I should pu my folder HouseAuction in the folder packages I guess ..
To use git clone https://github.com/fabric-composer/sample-networks.git`
then `cd sample-networks/packages/carauction-network/`
`npm install`
`npm test
Message Attachments
@dselman I go this.
after To use git clone https://github.com/fabric-composer/sample-networks.git`
then `cd sample-networks/packages/carauction-network/`
`npm install`
`npm test
```Daniels-MBP-2:carauction-network dselman$ npm test
> carauction-network@0.0.7 pretest /Users/dselman/dev/git/sample-networks/packages/carauction-network
> npm run lint
> carauction-network@0.0.7 lint /Users/dselman/dev/git/sample-networks/packages/carauction-network
> eslint .
> carauction-network@0.0.7 postlint /Users/dselman/dev/git/sample-networks/packages/carauction-network
> npm run licchk
> carauction-network@0.0.7 licchk /Users/dselman/dev/git/sample-networks/packages/carauction-network
> license-check
> carauction-network@0.0.7 postlicchk /Users/dselman/dev/git/sample-networks/packages/carauction-network
> npm run doc
> carauction-network@0.0.7 doc /Users/dselman/dev/git/sample-networks/packages/carauction-network
> jsdoc --pedantic --recurse -c jsdoc.conf
> carauction-network@0.0.7 test /Users/dselman/dev/git/sample-networks/packages/carauction-network
> mocha --recursive
CarAuction
#makeOffer
#### seller balance before: 0
#### seller balance after: 200
#### buyer balance before: 1000
#### buyer balance after: 800
✓ should add the offer to the offers of a vehicle listing (172ms)
1 passing (754ms)
```
Looks like you did not clone the repo -- you are using version 0.0.2, latest is 0.0.7
OMG
Let me restart again ...
That works
Sorry for keep making silly questions, but finallly was able to make it almost work on my other machine the main reasons seemed to be:
- missing netcat package on my linux distro
- latest version of node 7.8.0 seems to break when npm installing grpc package
Now there is another issue:
npm install gets stuck on Deploying Business Network
when I check the logs of the scripts_vp0_1 container it is looping on `periodicalReconnectToDead` and `periodicalSendAlive` I only find one error `NewDeliverService -> Erro 2eb Cannot dial ordered: 7050, because grpc: timedout when dialing`
Sorry for keep making silly questions, but finallly was able to make it almost work on my other machine the main reasons seemed to be:
- missing netcat package on my linux distro
- latest version of node 7.8.0 seems to break when npm installing grpc package (by the way I am an idiot, only noticed it now it is written on the page)
Now there is another issue:
npm install gets stuck on Deploying Business Network
when I check the logs of the scripts_vp0_1 container it is looping on `periodicalReconnectToDead` and `periodicalSendAlive` I only find one error `NewDeliverService -> Erro 2eb Cannot dial ordered: 7050, because grpc: timedout when dialing`
any suggestion? I am doing the quickstart
fixed! just removed all images and ran npm install again ;)
@sstone1 probably asked this question in the past for v0.6 and maybe it won't be different in v1.0, but can't remember what was said...as Composer moves to supporting HLF v1.0 and CouchDB, want to make sure I have the right visual perspective of this document database. When we go to create Assets, Participants, Transactions and Identities, those are called out as being part of registries. Will CouchDB represent all of those in one table or is there more of a schema.table configuration where each registry will be separated out?
We have no control over where CouchDB puts data, at least last time I checked. There will be a single collection with all of the JSON documents in.
IIRC the collection is named after the chaincode ID but I might be wrong.
@sstone1 okay thanks
```
Deploying business network from archive: x-network@1.0.0.bna
composer_1 | TypeError: Cannot read property 'fail' of undefined
composer_1 | Command failed
```
trying to start a new business network inside a nodejs docker container. anyone else came across this error message, or knows how to debug?
@jdockter @sstone1 I have a question about the documented example on the website. The image attached shows an Asset called 'Vehicle' with a 'Customer' property. This customer property is another Participant as modeled but is not denoted as a '-->' can you explain why this works?
Message Attachments
@dselman
Want to @ anybody else? :P
The Customer asset is being "inlined" into the Vehicle asset
I was about to @ the rest of the team :)
Good thing you stopped me
I'm afraid I'm not sure what 'inlined' means in this case
Are you familiar with concepts in the model?
yep!
A Customer in this case was just a 'Concept' huh?
Very similar, except the Customer has an ID. But the Customer is stored in the Vehicle asset in the Vehicle registry, not in the Customer registry - unless you explicitly add it.
Yes, that should be changed to `-->`
Should we ban `o AssetType` ?
What's the use for it now we have concepts?
Yes, I think it should be prohibited
I guess it's easy to create new instances of AssetType via a TransactionType by just passing them in... but it's a bit confusing
Agreed. Better to have the asset wrap a "details" concept instead.
Agenda and joining details for Thursday's Community call now up - come join us! https://github.com/fabric-composer/fabric-composer/wiki/Meeting-13th-April-2017
I'll be on special guest hosting duties this time, so give me a shout if you've got any questions.
@timblankers I see this error if an attempt to read a file fails
Has joined the channel.
Hi did anyone got this message when he try to install the composer-cli on mac
Elirans-MBP:getting-started eliran_pro$ npm install
> getting-started@1.0.0 preinstall /Users/eliran_pro/Documents/projects/Blockchain/fabric-composer/sample-applications/packages/getting-started
> composer --version || echo 'Please first run npm install -g composer-cli'
composer-cli v0.5.10
composer-admin v0.5.10
composer-client v0.5.10
composer-common v0.5.10
composer-runtime-hlf v0.5.10
composer-connector-hlf v0.5.10
> getting-started@1.0.0 install /Users/eliran_pro/Documents/projects/Blockchain/fabric-composer/sample-applications/packages/getting-started
> scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork
# Grab the current directory.
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd )"
cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd
dirname "${BASH_SOURCE[0]}"
# Shut down the Docker containers that might be currently running.
cd "${DIR}"/scripts
docker-compose kill && docker-compose down
ERROR: Bad response from Docker engine
# TODO change this to alter the default profile which is, by convention, a local running hyperledger fabric
rm -rf ~/.composer-connection-profiles/defaultProfile/*
rm -rf ~/.composer-credentials/*
# delete all existing containers and images
# This is not used in general usage but this might
#read -p "Press y to delete all docker containers images" -n 1 -r
#echo # (optional) move to a new line
#if [[ $REPLY =~ ^[Yy]$ ]]
#then
# docker rm $(docker ps -a -q) -f
# docker rmi $(docker images -q) -f
#fi
# Pull and tag the latest Hyperledger Fabric base image.
docker pull hyperledger/fabric-baseimage:x86_64-0.1.0
Warning: failed to get default registry endpoint from daemon (Error response from daemon: Bad response from Docker engine). Using system default: https://index.docker.io/v1/
Error response from daemon: Bad response from Docker engine
npm ERR! Darwin 15.6.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v6.10.2
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! getting-started@1.0.0 install: `scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 install script 'scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/eliran_pro/Documents/projects/Blockchain/fabric-composer/sample-applications/packages/getting-started/npm-debug.log
Elirans-MBP:getting-started eliran_pro$
very silly question but how can I get some data from the nodes and its consensus running, some iternal data from the nodes of the blockchain themselves? is that possible from what's deployed in the quickstart?
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=ZPH5eY8Y4FJPr8raP) @sbrakev we have gone around around with this in our model. Basically when we want an asset to "own" another structure (for lack of better word) we use concept, thus if we were to delete the asset we would delete the associated concept. When we know the assets/structures are independent, one can be deleted or updated with out touching the other, but related, we use the relationship symbol `-->`, then using Transactions we can resolve the relationship during run time.. @dselman and @sstone1 not sure if best practice but that is direction we have gone for now
thanks @jdockter
and @dselman @sstone1
:)
Message Attachments
Message Attachments
Using the default model in the composer ui, I have deployed the model in the local fabric environment.
@dselman I am playing with the car leasing sample. I have created few participants to the network. I want to login to the network as that participants that was added in the fabric composer UI. I wanted to find out whether the issue identity works ? I want to know what happens under the covers when you click on that issue command.
@gauthampamu are you using the playground ?
No
I am using Fabric Composer UI.
The docker image ?
I was told that you cannot connect to local fabric with composer playground..
The composer UI is running as node application and it connected to the fabric v0.6 running in Docker
I have successfully deploy the business network definition and it deployed the chaincode. I was able to add participants
Has joined the channel.
It was just the quick-start package that gave me issues. (and still does) Following the rest of the guide went off without a hitch. :ok_hand:
It was just the quick-start guide that gave me issues. (and still does) Following the rest of the guide went off without a hitch. :ok_hand:
After doing some noodling with HLF V1.0 ... I noted I needed a new go (maybe that's my problem?). I had 1.6x and HLF needed at least 1.7x ... I went to go and built 1.8x (which may be my issue). I then went back thru and wanted to do Composer Quickstart to take a small model from soup to nuts (https://fabric-composer.github.io/installing/quickstart.html). It gave some trouble with errors:
Woops, sorry about hitting enter there:
AttributeError: 'module' object has no attribute 'PROTOCOL_SSLv3'
So I went thru and wacked where I had cloned the git repos and started again. Full file is attached (next) ... but I still got the PROTOCOL_SSLv3 error and many after it. Any thoughts? Do I need to go back to go 1.7? Any other possibilities for my malady?
Message Attachments
All the Fabric instances for Fabric Composer are running in a Docker Container. They are still using v.06. All the dependencies you need for to spin up this project are in the script here. https://fabric-composer.github.io/installing/prerequisites.html
All the Fabric instances for Fabric Composer are running in a Docker Container. They are still using v.06. All the dependencies you need to spin up this project are in the script here. https://fabric-composer.github.io/installing/prerequisites.html
Personally had errors in install with methods shared on the quick-start page. Would recommend following this guide. https://fabric-composer.github.io/tutorials/getting-started-playground.html There's a number of different business network definitions for proof of concepts.
Thanks GoodFaith, will look into that ... but may also be tied to pip or some of the other install work I did wrt HLF 1.0. I saw a similar problem an individual had and using pip to update docker-compose fixed it. Looking into that, not happening so far ... but I think you are on the right track wrt preReqs. If I just type docker-compose --version ... I get the same error, so it likely has nothing to do w/Composer and everything to do with environment tied to docker-compose and pip. Will re-attack in the AM. Thanks again.
Has joined the channel.
Running through https://fabric-composer.github.io/tutorials/getting-started-cmd-line.html
When updating the deployed business network
composer network update --archiveFile digitalproperty-network@0.0.7.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
I get a time out:
timed out waiting for transaction to complete
Command failed
Would appreciate any suggestions on what I might be doing wrong or how to diagnose
Started over and didn't get a timeout.
hi, I am trying to run the "composer-rest-server" with my deployed business network and I get this error
"Connection fails: Error: Deployed chain-code (0.4.5) is incompatible with client (0.5.10"
could anybody have an advice on this issue?
(I am using the runtime coming with the "sample-applications" project)
@uber.twin looks like you are trying to run the composer-rest-server which is version 0.5.10 whereas your deployed business network was done using a 0.4.5 implementation. Because of a version mismatch the rest server cannot communicate with the business network
I am trying to run 'yo fabric-composer:businessnetwork' and getting this error Error: Cannot find module '../businessnetwork'
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=3n9FzrB2q3FWG4Sfz) @uber.twin your should update to the latest composer-cli and then redeploy your business network archive.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=rTr6q4P3kLxiXk9N6) @saridsa1 I see this as well. I will create an issue.
@dselman Thanks for the quick response.. in the mean while would you be able to suggest any alternatives?
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=ATvKxn6AdemjfHs5a) @davidkel Thank you, I figured this out using the composer network ping
@dselman I am trying to run "npm update -g composer-cli" and it goes like this:
npm ERR! registry error parsing json
npm ERR! registry error parsing json
npm ERR! registry error parsing json
....
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=kob9cR6vFXbdiLeYX) @saridsa1 Yes, I have deployed the business network but was giving the wrong network name. Pardon the beginners mistakes
@jdockter Sorry for my stupid question. Assume that we want to create an aplication with the digitalproperty-network. How to test this application with 2 profiles using two IP addresses or url to show that the hyperledger does not work only using the playground composer ?
How to proceed for that ?
The profile creation is not very clear for me.
I am asking that queston for purpose demo.
@jdockter Sorry for my stupid question. Assume that we want to create an aplication with the digitalproperty-network. How to test this application with 2 profiles using two IP addresses or url to show that the hyperledger does not work only using the playground composer ?
How to proceed for that ?
The profile creation is not very clear for me.
I am asking that queston for purpose demo.
@dselman Sorry for my stupid question. Assume that we want to create an aplication with the digitalproperty-network. How to test this application with 2 profiles using two IP addresses or url to show that the hyperledger does not work only using the playground composer ?
How to proceed for that ?
The profile creation is not very clear for me.
I am asking that queston for purpose demo. Actually the question is : Is it possible to develop a real application from Hyperledger ?
@saridsa1 that generator is supposed to create a skeleton business network. Instead of using the generator you can copy/paste and modify an existing example. E.g. https://github.com/fabric-composer/sample-networks/tree/master/packages/carauction-network
@dselman How to use map the digitalproperty-network (or Carauction for example) hyperledger in a real software application people in different countries could use ?
@annbnn the answer is yes. When you run the Quick Start you are running digitalproperty-network against HLF v0.6.
I get the impression that you are looking for some sort of end-to-end application/solution blueprint. We don't have that yet. It involves applications calling the REST API exposed by the composer-rest-server, making the composer-rest-server HA, managing digital certificates etc.
We have the piece parts but AFAIK no one has yet written up how to pull them all together.
If you create a StackOverflow question tagged with fabric-composer we can start to elaborate on an answer there.
@dselman Yes, you are right. Because people are asking me if its possible to create an end-to-end application/solution blueprint using hyperledger.
@dselman Lets back to profile creation question. Do you have an example where you used that technic to make some test ? (playground composer is good to test things locally)
https://fabric-composer.github.io/reference/connectionprofile.html
Let take the CarAuction example.
I would like to create two members with 2 IP adresses in a private or public network.
How to proceed for the CarAuction demo ?
What is the strategy to do that ?
That's not really a Composer question -- you need to setup a Fabric with 2 peers running on different IP addresses and then create a connection profile for each IP address.
So, first step is to get HLF running on a couple of machines.
The #fabric channel and docs can help with that. Once your Fabric is up and running across the machines creating the Composer connection profiles will be easy -- you just have to plugin the right IP addresses.
@dselman Well, technically speaking what does mean *HLF* running on two machines ?
Let start with that.
HLF == Hyperledger Fabric
Hyperledger Fabric running on a machine is what you explained here ? https://fabric-composer.github.io/applications/getting-started-nodejs-app.html
@dselman
I can't help you get HLF running across multiple machines. You should use the #fabric channel for that, and their docs of course.
Okay, I will see that
@dselman It's not completely clear for me the way relations and agregation are possible between various concepts (Asset, Participant, Transaction) when defining the domain model.
Actually I thought only relations are possible between various concept instances, not direct agregation.
I am looking at VehicleListing definition and it looks like it's declaring a direct agregation of Offers
asset VehicleListing identified by listingId {
o String listingId
o Double reservePrice
o String description
o ListingState state
o Offer[] offers optional
--> Vehicle vehicle
}
so, is it possible that any kind of concept stereotype to aggregate any other concept stereotype?
Just an FYI since other slow understudies may run into this as well. If someone tries to use docker-compose to bring up their tutorial/getting-started environment and get:
AttributeError: 'module' object has no attribute 'PROTOCOL_SSLv3'
(I got this because I had upgraded some software based on looking to play with HLF V1 as well) ... first have them just do
docker-compose -v ... and they may run into the same message. Lots of solutions on google, most did not work for me, but 2 things that did work (first I'm not sure, second definitely fixed it):
sudo easy_install --upgrade pip
sudo pip install requests --upgrade
That updated urllib3 which apparently was the real bugger here. So if someone gets that SSLv3 message (and as people go to HLF V1 they may) ... this solution worked for me. The easiest part is that, once someone sees that docker-compose -v doesn't work ... it's obviously no longer a HFC problem
PS. You may not even have to be a slow understudy like me to run into that problem
@MikeC711 I don't recommend installing docker-compose via pip, also don't install v1.12, install v1.11. v1.12 won't work with HLF v1 docker compose files
@uber.twin I would not aggregate assets or participants -- I would create an array of relationships to them. Arrays of transactions are supported (and fairly common).
New blog post, Fabric Composer: Past, Present, Future: https://blog.selman.org/2017/04/12/fabric-composer-past-present-future/
Is Fabric-Composer going to handle data from wearables and connected devices?
Is Fabric-Composer going to handle data from wearables and connected devices? Saw the business network definition that used the example of the shipping container so I am assuming yes.
I know of one project that is working on sending IoT events into a Composer solution.
I suspect there will be many more.
OK, first model attempt. I created containers local and am in playground. When I try to create my first Client I hit "Create New Participant" and get error:
Error: Instance null:3989 has a property named null which is not declared in org.acme.sample.AddressInfo
Relevant model info:
concept AddressInfo {
o String streetAddr
o String city
o String state
o String zipcode
}
abstract participant User identified by userID {
o String userID
o String firstName
o String lastName
}
participant Client extends User {
o Integer ssn
o AddressInfo address
}
I'm still pursuing, but if anyone sees the error in my ways, please do speak up. Thanks,
One point I did not bring up, playground itself is reporting "Everything looks good"
FYI: I found my participant and asset that included a concept failed. So I copied in the fields and commented out the ref to the concept ... and I am now OK. Looking at samples, I think my concept is all good, if it is ... wondering if the playground doesn't handle concepts ... or if there is a larger issue right now.
@dselman Thank you for the specifics. I got another uncertainty about the limitation regarding how many validating peers can coexist in a fabric environment. Is it accurate that there should not be more than arround 20, otherwise the performance is deteriorating? If so are there any hopes of improvement in this direction? The perspectives are I'll need to accomodate arround 50 such peers.
I have a few questions if anyone knows (they are quite basic):
- What is the connection profile for, why don't is it needed for the tutorials
- How do I create the certificates for the connection profile?
- What is the difference between the requestURL and the eventURL? Is it only the input port and and output port?
- How can I check how many nodes fabric has deployed with the fabric-composer and their status?
- Is there a API documentation about the requests that we can make directly to the fabric nodes (avoiding to use the composer-rest-server NPM)?
I have a few questions if anyone knows (they are quite basic):
- What is the connection profile for, why don't is it needed for the tutorials
- How do I create the certificates for the connection profile?
- What is the difference between the requestURL and the eventURL? Is it only the input port and and output port?
- How can I check how many nodes fabric has deployed with the fabric-composer and their status?
- Is there a API documentation about the requests that we can make directly to the fabric nodes (avoiding to use the composer-rest-server NPM)?
@MikeC711 are you using the online Playground at http://composer-playground.mybluemix.net/ -- current version is v0.5.10, because this sounds like a bug that was fixed last week.
Message Attachments
@uber.twin 50 is a big number -- that amounts to 50 people/orgs that have such a large stake in a network that they want to help run it...
@daragao 1/ connection profiles tell Composer how to connect to the blockchain (Fabric). They are used by the tutorials -- however if a default profile is created automatically which assumes you are running Fabric locally. 2/ What certificates are you referring to? ECerts are downloaded automatically from membership services on connection. 3/ requestURL is used to connect to peers. eventURL is used to connect to the event hub, which allows events to be sent back to the client. 4/ `docker ps -a` will show you the running docker containers. 5/ https://fabric-composer.github.io/reference/ see the API Docs.
cool @dselman the certificates I meant the ones associate with the connection profile
also the tutorials always as for a username and secret, does that have anything to do with the connection profile? how do I create it?
also sorry for asking this again, but how can I check the nodes of fabrics status?
currently I have 3 containers running, can you explain me what each one is?
dev-vp0-1e6d8767fb0193f19e76e92c6ebeb2affbb2609d7fec03f42c5269cbd5ecc76f
scripts_vp0_1
scripts_membersrvc_1
also sorry for asking this again, but how can I check the nodes of fabrics status?
currently I have 3 containers running, can you explain me what each one is?
- dev-vp0-1e6d8767fb0193f19e76e92c6ebeb2affbb2609d7fec03f42c5269cbd5ecc76f
- scripts_vp0_1
- scripts_membersrvc_1
In Fabric v0.6 there used to be support for sending custom events. I would assume that same support exists in v1.0. How is the functionality exposed with Fabric Composer.
We've not implemented it yet on v1 -- it's on the list to be started soon: https://github.com/fabric-composer/fabric-composer/issues/66
@sstone1 is working on a design proposal
Current thinking is some sort of emitEvent(event) API that you can call from a TP function
An event would be a modelled concept in the CTO
It would be serialized to JSON and then put on the Fabric event hub
I really am not understanding why the different containers hen running the getting started repo:
- dev-vp0-1e6d8767fb0193f19e76e92c6ebeb2affbb2609d7fec03f42c5269cbd5ecc76f
- scripts_vp0_1
- scripts_membersrvc_1
what is the role of each container? are they all nodes? why is the dev-vp0-... only launched when the code is deployed?
I really am not understanding why the different containers hen running the getting started repo:
- dev-vp0-1e6d8767fb0193f19e76e92c6ebeb2affbb2609d7fec03f42c5269cbd5ecc76f
- scripts_vp0_1
- scripts_membersrvc_1
what is the role of each container? are they all nodes? why is the dev-vp0-... only launched when the code is deployed? where can I read more about what containers are deployed and how do they related with fabric hyperledger?
thanks ;)
Does nodejs sdk itself support fabric v1.0?
Does nodejs sdk itself support fabric v1.0? Looks like latest sample application try to download hyperledger/fabric-peer:x86_64-1.0.0-alpha.
@dargo The membersrvc is the identity management baked into HLF. vp0_1 is a node that performs consensus in the blockchain ecosystem. Not 100% sure what the dev-vp0 node is other than it appears to contain a hashtag, and it appears to be, perhaps, a public key address. Why that node is defined as such I don't really know, but my guess would be it is the node the administrator publishes the business network definition to. Hyperledger isn't like Bitcoin, Ethereum or a number of derivatives of either of them, and quite a bit is changing as far as consensus is concerned with HLF V1.
@daragao The membersrvc is the identity management baked into HLF. vp0_1 is a node that performs consensus in the blockchain ecosystem. Not 100% sure what the dev-vp0 node is other than it appears to contain a hashtag, and it appears to be, perhaps, a public key address. Why that node is defined as such I don't really know, but my guess would be it is the node the administrator publishes the business network definition to. Hyperledger isn't like Bitcoin, Ethereum or a number of derivatives of either of them, and quite a bit is changing as far as consensus is concerned with HLF V1.
Hey Dan, No, I am not using the Bluemix playground. I am running the playground locally. If I pick up the latest images ... will that be good ... or is there something more I need?
@daragao those are Fabric questions, please check the docs. `membersrvc` is the membership services container, it controls access to the Fabric. `vp0` is a peer node, an entry point into your Fabric. This would be run by an organization that was responsible for the maintenance of the network itself. `dev-vp0-1` is a chaincode container (there will be one per peer, per chaincode) -- this is where your business network definition executes. It runs in its own Docker container so you get isolation.
@kouohhashi Fabric support for Node is via the Fabric-Node-SDK. Yes, the latest version of the SDK supports HLF v1.
@MikeC711 yes, just update your image and you should be good to go.
thank you @dselman @GoodFaith
will check the fabric docs, still confused why there is only one node though, but I guess that will become clearer as I dive into the fabric docs ;)
Does fabric-composer support Fabric v1.0 now?
Has joined the channel.
Has joined the channel.
Hi guys, is there an easy way to filter out a resource with just the arguments it has in its object? For example, I want to add an asset based on the arguments it passes through the transaction without having to copy out all the arguments individually
Has joined the channel.
@xixuejia we are still working on the docs, but do have a running sample here: https://github.com/fabric-composer/sample-applications-hlfv1
great! Thanks for the information @dselman
This may be useful as well: https://github.com/mbwhite/documents/blob/master/Fabric-Composer/usingV1AlphaHLF.md
There's ongoing discussion related to v1 on the #fabric-composer-dev channel.
Feedback and testing welcome
@georgeormrod@gmail.com the easiest thing to do is to create a `concept` in your model to hold the _details_ and then you can simply copy that concept from your incoming transaction to the asset you want to create.
```concept MyDetails {o String foo} asset MyAsset identified by id {o String id o MyDetails details} transaction MyTransaction identified by id {o String id o MyDetails details}```
Thanks Dan, So I repulled the Fabric but I was up to date (docker pull) which found no changes ... I just did a git pull from https://github.com/fabric-composer/sample-applications.git ... then I did a docker pull of fabriccomposer/composer-playground ... I brought it up and it asked me to clear cache and it shows me I'm at 0.0.6 (I think prior was 0.0.5). The good news is that export works where it did not work well for me prior ... but the very bad news is import seems to pop up a screen (too quickly to read) ... then the screen goes away and I never get a chance to browse for bna file and import it. I will go try the bluemix flavor and see if I can do better there. Is there more that I need to do to get the latest? Thanks,
FYI: It does work fine on the Bluemix playground, but I would like to have my playground functional ... so if you could show me what I'm doing wrong, I would appreciate it. Thanks,
@dselman Regarding the limitations upon the maximum number of peers establishing the consensus, I need to consider it in the context of an inter-institution settlement solution. It'll be a problem to choose which of all participating institutions will be allowed to have a corresponding peer invested with endorsing privileges, knowing that there can be only ~ 20 elected as such. How would one elect such peers from a pool of equally interested parties?
Has joined the channel.
90 mins until our open community call - a couple of little tweaks to the agenda just to make it extra super-exciting :)
Dave Kelsey will kick off off with a quick Hyperledger Fabric V1 update, and a chance for Q&A on that before we move on to the original agenda (just noticed there have been a few V1 questions on RocketChat lately so thought people might want a chance to ask a few questions!)
https://apps.na.collabserv.com/meetings/join?id=6680-4300
Password: composer
Has joined the channel.
As mentioned on the community call, if anyone wants to try fabric composer with hyperledger fabric v1 alpha as a replacement to a v0.6 runtime. I have a simple script that will prepare a simple v1 runtime for you. It will
- download the alpha docker images
- download configuration files to hlfv1
- create running containers for hlfv1
- create a channel called 'mychannel' and join the peers to it
- it will create a composer connection profile called hlfv1
it will use a directory called .hfc-key-store in your home directory so you might want to remove this directory first as this is where the ECerts are stored.
Once up and running you can use fabric composer as normal with an EnrollId of 'admin' and EnrollSecret of 'adminpw' and the connection profile 'hlfv1'
I would recommend being at the latest level of fabric-composer which is currently v0.5.10
The script can be found at
```
https://github.com/davidkel/sandbox/raw/master/hlfv1/SetupV1Alpha.sh
```
or if you want you can just execute it without storing it by issuing
```
curl -L https://github.com/davidkel/sandbox/raw/master/hlfv1/SetupV1Alpha.sh | bash
```
As mentioned on the community call, if anyone wants to try fabric composer with hyperledger fabric v1 alpha and just be in a position to deploy and test. I have a simple script that will prepare a simple v1 runtime for you. It will
- download the alpha docker images
- download configuration files to hlfv1
- create running containers for hlfv1
- create a channel called 'mychannel' and join the peers to it
- it will create a composer connection profile called hlfv1
it will use a directory called .hfc-key-store in your home directory so you might want to remove this directory first as this is where the ECerts are stored.
Once up and running you can use fabric composer as normal with an EnrollId of 'admin' and EnrollSecret of 'adminpw' and the connection profile 'hlfv1'
I would recommend being at the latest level of fabric-composer which is currently v0.5.10
The script can be found at
```
https://github.com/davidkel/sandbox/raw/master/hlfv1/SetupV1Alpha.sh
```
or if you want you can just execute it without storing it by issuing
```
curl -L https://github.com/davidkel/sandbox/raw/master/hlfv1/SetupV1Alpha.sh | bash
```
I have reinstalled fabric locally and deploying the default network using the composer ui and I am getting this error. I was getting this error so I tried to reset my images and browser but still getting this error.
FSConnectionProfileStore :load() Loaded connection profile hlfabric {
"type": "hlf",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7053",
"keyValStore": "/tmp/keyValStore",
"deployWaitTime": 300,
"invokeWaitTime": 30,
"certificate": null,
"certificatePath": null
}
HFCUtil :deployChainCode() function init force true concerto
HFCUtil :deployChainCode() onError {"error":{"code":2,"metadata":{"_internal_repr":{}}},"msg":"Error: sql: no rows in result set"}
ConnectorServer :Error: Error: sql: no rows in result set() undefined
ConnectorServer :connectionDeploy() <
I have used the userid that is used by the sample application. The webapp id and password was defined the config/default.json file
I have used this id before and it worked for me.
but now I am getting this error.
Another issue..yo fabriccomposer failed when I tried the skeleton network.
yo fabric-composer
Welcome to the Fabric Composer Skeleton Application Generator
? Please select the type of Application: Skeleton Business Network
You can run this generator using: 'yo fabric-composer:businessnetwork'
events.js:141
throw er; // Unhandled 'error' event
^
Error: Cannot find module '../businessnetwork'
at Function.Module._resolveFilename (module.js:325:15)
at Function.require.resolve (internal/module.js:16:19)
at module.exports.generators.Base.extend.prompting.configuring (/usr/local/lib/node_modules/generator-fabric-composer/generators/app/index.js:74:38)
at Object.
@gauthampamu see https://github.com/fabric-composer/fabric-composer/issues/668 regarding yo.
@gauthampamu per your previous quesion, please could you raise this on stackoverflow
Message Attachments
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=Hec3vFv3fJGRPubq7) @gauthampamu this means the certs under ~/.composer-credentials are no longer valid -- probably because you've restarted the Fabric.
Delete the folder and try again.
Thanks @dselman
The command to create the archive is not working..
I have tried this command... mentioned on this page... https://fabric-composer.github.io/reference/composer.archive.create.html
composer archive create -d .
composer archive create --archiveFile digitialPropertyNetwork.zip --sourceType module --sourceName digitalproperty-network
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--archiveFile, -a Business network archive file name. Default is based on the Identifier of the BusinessNetwork [string]
--sourceType, -t The type of the input containg the files used to create the archive [ module | dir ] [required]
--sourceName, -n The Location to create the archive from e.g. NPM module directory or Name of the npm module to use [required]
The command options don't match the documentation.
Can you tell me where I could find a sample command in github repository.
Has joined the channel.
Has joined the channel.
@gauthampamu from the base directory of my project I run the following, `composer archive create --sourceType dir --sourceName .`
that will use the name and version from your package.json to name the bna file
Has joined the channel.
I'm getting this error when trying to generate starter application -> Failed to set chaincode id on security context. Check that the connection profile hlfabric-local defines the network carauction-network
Any idea what can be the issue ?
It means that this connection profile has not been used to deploy the network `carauction-network`
The network needs to be deployed and running
Has joined the channel.
Hi guys, in fabric composer, what endorsement policy is enforced?
OK, somehow I may have hosed docker environment. I cleared all containers and images for a fresh start:
mcasile@mcasile-KVM:~/dev/blockchain/docker$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mcasile@mcasile-KVM:~/dev/blockchain/docker$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Pulled the images (lots of activity) and tagged them
mcasile@mcasile-KVM:~/dev/blockchain/docker$ docker pull hyperledger/fabric-baseimage:x86_64-0.1.0
Grabbed the latest docker-compose.yml on my instruction page: https://fabric-composer.github.io/tutorials/getting-started-playground.html
And when I do docker-compose up -d ... lots more activity and eventually I see:
Status: Downloaded newer image for fabriccomposer/composer-playground:latest
Creating docker_membersrvc_1
Creating docker_vp0_1
Creating docker_composer_1
docker ps RIGHT after the start has:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2a2468188ef7 fabriccomposer/composer-playground "pm2-docker compos..." 6 minutes ago Up 1 second 0.0.0.0:8080->8080/tcp docker_composer_1
872cf651fe19 hyperledger/fabric-peer:x86_64-0.6.1-preview "sh -c 'sleep 5; p..." 6 minutes ago Up 1 second 0.0.0.0:7050-7053->7050-7053/tcp docker_vp0_1
a56c1366c6c1 hyperledger/fabric-membersrvc:x86_64-0.6.1-preview "membersrvc" 6 minutes ago Up 1 second 0.0.0.0:7054->7054/tcp docker_membersrvc_1
Woops, real problem ... within about 10 seconds, peer goes away.
So are others affected by: https://jira.hyperledger.org/projects/FAB/issues/FAB-3042?filter=allissues ... Thanks to help getting logs, I believe I'm a victim there ... I am going to try the noop peer ... but I'm not quite sure what limitations I'll hit.
Suggestions on where to look for log on obviously failed container
Hi guys, when I run `npm test` in getting-started directory, I got below error ```
error: [Composer-GettingStarted] Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "defaultProfile"
Command failed.``` Anyone could help?
Hi guys, when I run `npm test` in getting-started directory, I got below error `
error: [Composer-GettingStarted] Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "defaultProfile"
Command failed.` Anyone could help?
@assasinx93 composer doesn't define or enforce an endorsement policy.
@xixuejia I would check for errors when npm install was running. This problem usually occurs when something goes wrong trying to bring in dependent modules, for example if you don't have python 2.7 installed and set as the default python executable node-gyp can fail to work.
@MikeC711 you can get the logs for the containers using the docker logs. More info can be found at http://stackoverflow.com/questions/42695751/how-do-i-see-the-logs-for-fabric-composer/42695761#42695761
@MikeC711 you can get the logs for the containers using the docker logs command. More info can be found at http://stackoverflow.com/questions/42695751/how-do-i-see-the-logs-for-fabric-composer/42695761#42695761
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=kMybfsSNndy8t6vKk) @xixuejia this is usually an install issue. Try running `npm uninstall -g composer-cli` followed by `npm install -g composer-cli` and check that there are no install issues. Also delete the `node_modules` folder from getting started and then rerun `npm install`
Thanks David and Dan. I will retry with your suggestions.
You can do the community a favour by posting the question and answer to StackOverflow... I'm sure I've answered that one on RocketChat at least 10 times... :-)
@dselman sure. I will. Just verified it works for me:grin:
Hi Dan, is there docker-composer.yaml for playground connected with hlfv1 just like the 0.6 version here https://fabric-composer.github.io/tutorials/docker-compose.yml
@dselman
@xixuejia no, not yet - we are working on building an easy to install local version of the playground + HLFv1
it's Ok for me with a local version of playground connecting with hlfv1, is there instruction for this?
Not yet, no. That tutorial demonstrates how to do it with the old blue and white UI which has connection profile + identity support needed to connect to HLF.
Not yet, no. That tutorial demonstrates how to do it with the old blue and white UI which has connection profile + identity support needed to connect to HLF, but only supports HLF v0.6.
We are still working on connection profile + identity support for the new UI (playground). When that is done we can document how to configure it with a local HLF, either v0.6 or v1.0.
ah, I see. Thanks for the info.
np
@jockter Thank you Do you have examples for other command line options for deploy, participant, transaction etc. I am planning on creating a lab for our team and train them.
Thanks David for the info on logs (ps vs ps-a) ... I tracked it thru the errors:
[validator.test_vp0] Failed requesting read certificate [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure] (and many following it ending with)
rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure
Which appears to tie back to an open fabric issue: https://jira.hyperledger.org/projects/FAB/issues/FAB-3042?filter=allissues
But the workaround described at: http://stackoverflow.com/questions/40012616/unable-to-register-user-using-hyperledger-membersrvc
gets me into a docker-compose parsing issue that I'm currently fighting. Either I'm missing something simple ... or I need to go back to bed. Thanks,
I've created a draft "Tutorial 2" which I'd love testing and feedback on before I ask for blessing from @EdProsser and @EdMoffatt to merge into the web pages. Please give it a try! https://github.com/dselman/fabric-composer/wiki/Tutorials
I've created a draft "Tutorial 2" which I'd love testing and feedback on before I ask for blessing from @EdProsser and @EdMoffatt to merge into the web pages. Please give it a try! https://github.com/dselman/fabric-composer/wiki/Tutorial-2-:-Creating-a-Fabric-Composer-Solution
The tutorial walks through creating a new business network, writing unit tests, testing it interactively using Playground and Swagger UI, then generating an Angular front-end application.
@MikeC711 see http://stackoverflow.com/questions/43264985/fabric-composer-quickstart-error which describes the problem you are seeing and a solution
Thanks much. Will try that tonight. Quick semi-related question ... when I use the bluemix playground ... is that provisioning a small blockchain for me? Is there a connection json for that that I could use? Thanks,
@davidkel So does it mean that access control is what controls users creating and updating assets?
Also, I worked on the play ground and simulated some simple asset creation, updation and deletion. How do you expand this to outside the playground?
What I mean is that, if user X does not have access to updating an asset, then the entire admin console should not be visible to them right?
Or do we have to create an angular app which supports this?
@MikeC711 the Bluemix playground (composer-playground.mybluemix.net) uses an in-browser simulated blockchain; no real blockchain is provisioned.
There is information on creating a connection.json for Bluemix here: http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
@assasinx93 whilst Composer doesn't define an endorsement policy, the default Fabric endorsement policy is in effect. The endorsement policy doesn't say who has access control to do what, it says who must execute the chaincode and "endorse" the transaction in order for it to be valid.
You can use Composer access control (see permissions.acl) to restrict access to assets, participants, and transactions.
@sstone1 Thanks for the info. If you see my second question just above, I was wondering how we can deploy a fabric composer project to an actual network consisting of users logging in from multiple nodes. Every user should have a different view of the transactions they are able to perform. This has to be created by us right? I don't think there is any default portal for that.
Correct, you will have to build a customized application for your end users. I would not expect anybody to be using Playground as an end user application.
You can deploy a Composer business network definition to a Fabric instance using `composer network deploy`.
Once deployed, you can create participants and issue those participants with identities (aka Fabric enrollment certificates). Access control is based on participants, so you'd need to define access control rules based on the participants in your business network.
There's some documentation on participants and identities here: https://fabric-composer.github.io/introduction/participantsandidentities.html
Thanks
Hi, could someone please explain what the difference is between these two definitions?
asset Commodity identified by tradingSymbol {
o String tradingSymbol
o String description
o String mainExchange
o Double quantity
--> Trader owner
}
asset Commodity identified by tradingSymbol {
o String tradingSymbol
o String description
o String mainExchange
o Double quantity
o Trader owner
}
Also curious about registries. One of the docs talks about assets, participants, registries and transactions being what might be called the four pillars. But only three are explicitly declared while registries seem to be implied by other declarations. Can someone please explain the rules by which we can infer what the registries are based on the BND? Thanks.
@kletkeman the first definition of the Commodity asset has a _relationship_ (denoted by -->) to a Trader participant that exists in the Trader participant registry. The second definition of the Commodity asset has a _property_ (denoted by o) of type Trader, and the data for that Trader is stored as part of the Commodity asset in the Commodity asset registry.
We recently discussed banning `o AssetType` or `o ParticipantType` properties in an Asset, Participant, or Transaction and only permitting relationships to these types as it is a regular cause of confusion.
We recently discussed banning `o AssetType`, `o ParticipantType` and `o TransactionType` properties in an Asset, Participant, or Transaction type and only permitting relationships to these types as it is a regular cause of confusion.
If you want to include a complex structure in one of those types, you can use a `concept` instead.
As for the registry question - registries are automatically created for every concrete (non-abstract) asset and participant type in a business network definition. Those automatically created registries are named after the fully qualified name of the type (namespace + type, e.g. org.acme.Vehicle). We have some APIs for creating custom registries, but these are not currently that useful as a lot of functionality does not work with custom registries.
Has joined the channel.
@dselman Posted the ongoing recurring error I've had with the Quick-Start in SO http://stackoverflow.com/questions/43420927/ubuntu-16-04-fabric-composer-quick-start-typeerror-cannot-read-property-fail. Noticed your statement at the top of that tutorial about being about to run the quick-start before completing lesson. Didn't take long before it sunk in that the quick-start was a simulated test of the network. Got to the point in the tutorial to perform the network test and and got an error `goodfaith@goodfaith:~/my-network$ npm test
> my-network@0.0.1 pretest /home/goodfaith/my-network
> npm run lint
> my-network@0.0.1 lint /home/goodfaith/my-network
> eslint .
> my-network@0.0.1 postlint /home/goodfaith/my-network
> npm run licchk
> my-network@0.0.1 licchk /home/goodfaith/my-network
> license-check
events.js:160
throw er; // Unhandled 'error' event
^
Error: The following file doesn`t contain the license header /home/goodfaith/my-network/basic-sample-network/scripts/timestamp.js
at error (/home/goodfaith/my-network/node_modules/gulp-license-check/index.js:130:54)
at checkHeaderFromBuffer (/home/goodfaith/my-network/node_modules/gulp-license-check/index.js:78:4)
at DestroyableTransform._transform (/home/goodfaith/my-network/node_modules/gulp-license-check/index.js:35:5)
at DestroyableTransform.Transform._read (/home/goodfaith/my-network/node_modules/readable-stream/lib/_stream_transform.js:159:10)
at DestroyableTransform.Transform._write (/home/goodfaith/my-network/node_modules/readable-stream/lib/_stream_transform.js:147:83)
at doWrite (/home/goodfaith/my-network/node_modules/readable-stream/lib/_stream_writable.js:338:64)
at writeOrBuffer (/home/goodfaith/my-network/node_modules/readable-stream/lib/_stream_writable.js:327:5)
at DestroyableTransform.Writable.write (/home/goodfaith/my-network/node_modules/readable-stream/lib/_stream_writable.js:264:11)
at DestroyableTransform.ondata (/home/goodfaith/my-network/node_modules/readable-stream/lib/_stream_readable.js:541:20)
at emitOne (events.js:96:13)
at DestroyableTransform.emit (events.js:188:7)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-network@0.0.1 licchk: `license-check`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.0.1 licchk script 'license-check'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the my-network package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! license-check
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs my-network
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls my-network
npm ERR! There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/goodfaith/.npm/_logs/2017-04-15T05_39_32_238Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-network@0.0.1 postlint: `npm run licchk`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.0.1 postlint script 'npm run licchk'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the my-network package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! npm run licchk
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs my-network
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls my-network
npm ERR! There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/goodfaith/.npm/_logs/2017-04-15T05_39_32_260Z-debug.log
npm ERR! Test failed. See above for more details.
`
@GoodFaith you seem to have copied the basic-sample-network **under** the my-network folder, rather than copying it into a new top level folder.
I don't understand whether your issue is with the QuickStart or the Tutorial, or your comment "Didn't take long before it sunk in that the quick-start was a simulated test of the network" -- which is not true.
The quick-start doesn't perform the unit test? I used `cp -r ./sample-networks/packages/basic-sample-network/ ./my-network' to create the my-network folder, is that right?
Have not been able to perform the quick start. The error and log for that is on SO. What was posted here was at the unit test section of the tutorial.
You need to be able to run the QuickStart cleanly first. Let's focus on that... I posted a couple of links in your SO question.
I tried using Jira to report a bug I found in the Composer test tool (the trash and edit button disappear when I hover over them, but reappear if I click the "collapse" button), however I didn't see any open Composer tickets on Jira. Where can I report this bug?
@mohamoud.egal we don't use JIRA. We track Issues using GitHub.
https://github.com/fabric-composer/fabric-composer/issues
@sstone1 thanks. Also in the car-auction network deployed from GitHub into Composer, what type is enum? I couldn't find it in the bna file.
`enum` is a keyword that allows you to declare a typed enumeration (list of possible values) - I assume you mean this: https://github.com/fabric-composer/sample-networks/blob/master/packages/carauction-network/models/auction.cto#L11
yes
@davidkel @sstone1 Thanks for the input. I had been running fine until I made some changes to try to accommodate HLF 1.0 ... (just software installs, not downloading and building yet). I had tried bumping the sleep 5 to sleep 25 ... but based on this, I moved all the way to sleep 185. I even tested every 30 seconds or so to verify that the peer log had not already hit the error. So up until 2 minutes in ... no error ... then when the 185 seconds had gone ... same error as ever. So while I could not figure out which start-hyperledger.sh to hit ... since that was only to further delay ... I'm quite certain that I'm waiting long enough now (especially since I was working without any additional delays before and I've provisioned some good horsepower for my Xenial VM on my RHEL host. Where I easily could have created a mess with a hybrid environment is that my file:
./dev/gitDev/sample-applications/packages/getting-started/scripts/start-hyperledger.sh makes references to hlfV1 (thinking I might have newer retrieve there). That said, it does not appear to me that the bringing up the containers should be notably impacted by that (but I will try to go back and re-pull). Will also try to go thru Dan's latest tutorial and see if that causes me to skip past it. Thanks,
casile@mcasile-KVM:~/dev/blockchain/docker/logs$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7616122d013a fabriccomposer/composer-playground "pm2-docker compos..." 2 minutes ago Up 2 minutes 0.0.0.0:8080->8080/tcp docker_composer_1
e09eb6e2b972 hyperledger/fabric-peer:x86_64-0.6.1-preview "sh -c 'sleep 185;..." 2 minutes ago Up 2 minutes 0.0.0.0:7050-7053->7050-7053/tcp docker_vp0_1
b4b65f49782c hyperledger/fabric-membersrvc:x86_64-0.6.1-preview "membersrvc" 2 minutes ago Up 2 minutes 0.0.0.0:7054->7054/tcp docker_membersrvc_1
mcasile@mcasile-KVM:~/dev/blockchain/docker/logs$ getDockerLogs.sh
mcasile@mcasile-KVM:~/dev/blockchain/docker/logs$ grep ERRO peer.err
17:49:40.791 [crypto] Errorf -> ERRO 01e [validator.test_vp0] Failed requesting read certificate [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure].
17:49:40.791 [crypto] Errorf -> ERRO 01f [validator.test_vp0] Failed requesting ECA certificate [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure].
17:49:40.791 [crypto] Errorf -> ERRO 020 [validator.test_vp0] Failed getting ECA certificate [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure].
17:49:40.791 [crypto] Errorf -> ERRO 021 [validator.test_vp0] Failed retrieving ECA certs chain [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure].
17:49:40.791 [crypto] Errorf -> ERRO 022 [validator.test_vp0] Failed registering node crypto engine [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure].
17:49:40.791 [crypto] Errorf -> ERRO 023 [validator.test_vp0] Failed registering peer [test_vp0]: [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure]
17:49:40.791 [crypto] Errorf -> ERRO 024 [validator.test_vp0] Failed registering [test_vp0]: [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure]
17:49:40.792 [crypto] RegisterValidator -> ERRO 025 Failed registering validator [test_vp0] with name [test_vp0] [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure].
mcasile@mcasile-KVM:~/dev/blockchain/docker/logs$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7616122d013a fabriccomposer/composer-playground "pm2-docker compos..." 3 minutes ago Up 3 minutes 0.0.0.0:8080->8080/tcp docker_composer_1
b4b65f49782c hyperledger/fabric-membersrvc:x86_64-0.6.1-preview "membersrvc" 3 minutes ago Up 3 minutes 0.0.0.0:7054->7054/tcp docker_membersrvc_1
@sstone1 Another questions: the VehicleListing asset is defined in the Model file as having a reference to Vehicle, which has a Vin value and a reference to a Member. However, in the test field when I went to create a VehicleListing in the asset registry I clicked generate random data and didn't see any reference to Member. Why is that?
Message Attachments
@mohamoud.egal because the VehicleListing has a reference to the Vehicle, it only has the ID of the Vehicle - in that case "vin:8830"
You will only see the reference to the Member by looking at the Vehicle in the Vehicle registry
@MikeC711 anything in the membersrvc container logs?
@sstone1 No, my shell script pulls peer and memberservices (splitting out stdout and stderr) ... and the memberservices logs are empty ... and it is happily listening on port 7054.
Have you modified the docker-compose.yml file at all?
I can only imagine those errors are caused by the peer not being able to communicate with membersrvc. You could try checking the network:
```
$ docker exec -ti docker_vp0_1 sh <-- start shell in peer container
# nc membersrvc 7054 <-- attempt to access membersrvc port
```
Have not modified docker-composer but ... the nc command gets me:
# nc membersrvc 7054
nc: getaddrinfo: Name or service not known
That looks like the gethostname type call that won't use /etc/hosts ... although /etc/hosts looked fine. So I did hostname and nslookup and that appeared to be fine:
mcasile@mcasile-KVM:~/dev/blockchain/docker$ hostname
mcasile-KVM
mcasile@mcasile-KVM:~/dev/blockchain/docker$ nslookup mcasile-KVM
Server: 127.0.1.1
Address: 127.0.1.1#53
Name: mcasile-KVM.default
Address: 192.168.122.80
But that failure on getaddrinfo seems problematic, although if it looking for host membersrvc unless some network magic is happening, that would not work. I am guessing that somehow membersrvc is supposed to be known in the peer address space because docker-compose.yml created the link ... but I'm out of my depth there.
Yeah, docker should be making the membersrvc hostname available to the peer container
Can you run `docker -v` & `docker-compose -v`
mcasile@mcasile-KVM:~/dev/blockchain/docker$ docker -v
Docker version 17.03.1-ce, build c6d412e
mcasile@mcasile-KVM:~/dev/blockchain/docker$ docker-compose -v
docker-compose version 1.12.0, build b31ff33
Had some trouble w/compose when I played a bit with HLF V1 ... the SSLV3 error message, so I had to do some scrambling to make that go away.
In that SO link @davidkel posted earlier, he mentioned:
> Could you try downgrading docker-compose to 1.11 ? I have seen problems with 1.12 and it may be the cause.
I have:
```
Simons-MacBook-Pro-3:~ sstone1$ docker -v
Docker version 17.03.0-ce, build 60ccb22
Simons-MacBook-Pro-3:~ sstone1$ docker-compose -v
docker-compose version 1.11.2, build dfed245
```
I will try to downgrade ... and hope that the SSLV3 does not return. Odd that docker-compose would lose that crucial a function ... but I will try ... and hopefully not throw myself into the SSLV3 issue again.
Well, it's all good news. Sorry to have taken your time. I was dreading going back thru the resoluton of the SSLV3 module issue, but apparently the upgrade of the url package handled that w/out the change to docker-compose. So I am back in business ... thanks much.
@sstone1 Thanks for the reply. So when I have a relationship to a Trader in my Commodity, I presume that I would need to do a second read to get the Trader object if I chose to manipulate it for some reason. I.e. it is not automatically retrieved for me from the Trader registry. It basically acts as a foreign key.
Great, no problem. @davidkel we need to get to the bottom of the Compose 1.12 issue. It looks like they changed some networking stuff as `--link` is deprecated.
@sstone1 Second question then, is it acceptable to create a relationship to an array of Traders? --> []Trader traders ?
@kletkeman correct, it is a foreign key. However, relationships in a `transaction` object are automatically resolved before executing a transaction processor function. For example:
```
transaction MyTransaction {
--> Vehicle vehicle
}
function onMyTransaction(transaction) {
transaction.vehicle.colour === 'RED'; // vehicle relationship automatically resolved
}
```
@sstone1 That's cool, I should have noted that from the samples. Thanks.
Everywhere else (e.g. when you use `get(id)` or `getAll()`) you must manually resolve the relationships.
Also, yes, you can have an array of relationships... `--> Trader[] traders`
Excellent, thanks!
np
@sstone1 I know that docker-compose required an updated urllib3 package on trusty. However while testing a new vagrant image I installed docker-compose 1.12 though pip and that's when my V1 docker-compose images stopped working. Downgrading to 1.11.2 fixed the problem but I haven't as yet looked into why and I'd only tried it on trusty. The errors I saw we containers not starting at all due to some odd error messages but not necessarily indicating wrong levels of python libraries.
@sstone1 I know that docker-compose required an updated urllib3 package on trusty. However while testing a new vagrant image I installed docker-compose 1.12 though pip and that's when my V1 docker-compose images stopped working. Downgrading to 1.11.2 fixed the problem but I haven't as yet looked into why and I'd only tried it on trusty. The errors I saw were containers not starting at all due to some odd error messages but not necessarily indicating wrong levels of python libraries. I only mention downgrading just to eliminate possible problems introduced to the docker-compose 1.12 release which I would have expected to be backward compatible
@sstone1 I know that docker-compose required an updated urllib3 package on trusty. However while testing a new vagrant image I installed docker-compose 1.12 though pip and that's when my V1 docker-compose images stopped working. Downgrading to 1.11.2 fixed the problem but I haven't as yet looked into why and I'd only tried it on trusty. The errors I saw were containers not starting at all due to some odd error messages but not necessarily indicating wrong levels of python libraries. I only mention downgrading just to eliminate possible problems introduced to the docker-compose 1.12 release which I would have expected to be backward compatible.
IIRC docker-compose complaining about SSL3 was due to wrong level of urllib2
@sstone1 I know that docker-compose required an updated urllib3 package on trusty. However while testing a new vagrant image I installed docker-compose 1.12 though pip and that's when my V1 docker-compose images stopped working. Downgrading to 1.11.2 fixed the problem but I haven't as yet looked into why and I'd only tried it on trusty. The errors I saw were containers not starting at all due to some odd error messages but not necessarily indicating wrong levels of python libraries. I only mention downgrading just to eliminate possible problems introduced to the docker-compose 1.12 release which I would have expected to be backward compatible.
IIRC docker-compose complaining about SSL3 was due to wrong level of urllib3
Hi, I'm trying "Fabric Composer Quickstart" on Ubuntu 14.04.5. It worked before, but when I tried this now, "npm install" at "sample-applications/packages/getting-started" end up with following error.
`Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
TypeError: Cannot read property 'fail' of undefined
Command failed
npm ERR! code ELIFECYCLE
npm ERR! errno 1
...`
And I looked to docker images, I found 1.0.0-alpha is downloaded. Is this correct behavior ?
`htanaka@composer:~/sample-applications/packages/getting-started$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hyperledger/fabric-ca x86_64-1.0.0-alpha 35311d8617b4 4 weeks ago 239.8 MB
hyperledger/fabric-couchdb x86_64-1.0.0-alpha f3ce31e25872 4 weeks ago 1.515 GB
hyperledger/fabric-orderer x86_64-1.0.0-alpha 5685fd77ab7c 4 weeks ago 181.6 MB
hyperledger/fabric-peer x86_64-1.0.0-alpha 784c5d41ac1d 4 weeks ago 184.3 MB
hyperledger/fabric-ccenv x86_64-1.0.0-alpha 91792014b61f 4 weeks ago 1.294 GB`
@ztanaka1971 did you clone sample-applications or sample-applications-hlfv1 ? The first should use fabric 0.6 and the second should use fabic 1.0 alpha. If you do the second one then the getting-started has a readme which has some extra steps to perform first.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=vBN8z8jfJmCqovQQG) @davidkel
@davidkel
I cloned "https://github.com/fabric-composer/sample-networks.git"
@davidkel I cloned "https://github.com/fabric-composer/sample-applications.git"
@ztanaka1971 just looked at it and it appears it has been updated to hlf v1 alpha. I think that is an issue as there is a separate sample-applications specifically for hlf 1.0 alpha and sample-applications should still be at 0.6
Still troubleshooting my issue of not being able to deploy network. Following suggestions @sstone1 made to others, checked connection profile to make sure all the ports were right. Also checked the logs in the docker container. There is only one error, in the orderer. UTC [orderer/common/deliver] Handle -> WARN 008 Error reading from stream: EOF ???
Still troubleshooting my issue of not being able to deploy network. Following suggestions @sstone1 made to others, checked connection profile to make sure all the ports were right. Also checked the logs in the docker container. There is only one error, in the orderer. UTC [orderer/common/deliver] Handle -> WARN 008 Error reading from stream: EOF ??? Updated SO with node outputs. http://stackoverflow.com/questions/43420927/ubuntu-16-04-fabric-composer-quick-start-typeerror-cannot-read-property-fail
Good evening,
IBM is looking for Blockchain volunteers to participate in Startup Weekend this May 19-21st in NYC. The team led by Roger Osorio (Roger.Osorio@ibm.com) is looking for mentors (Hyperledger technical & business model knowledge) and participants to join. I thought this would be a great opportunity to expose more people to Composer. Thoughts?
https://w3-connections.ibm.com/forums/html/topic?id=65b30df3-e676-4dff-8d35-d6656d1f61c1
@sstone1 it might just be my computer, but when I go to create a 3rd member in the car-auction network it won't let me create it. I cleared the storage on the console and tried multiple times.
@ztanaka1971 I've reverted the changes (which shouldn't have been merged) to sample-applications; please can you try again after deleting and cloning the sample-applications repository?
@GoodFaith I think you've hit the same problem as above; please pull down the updated sample-applications repository and try again.
You both may need to remove all of the v1.0 Docker containers by running `docker ps -aq | xargs docker rm -f`
@mohamoud.egal are you sure that the ID of the 3rd member is unique? Are there any errors in the browser console?
@sstone1 Thank you ! I'm trying ...
@sstone1 And it works again ! "npm test" finished with "Command completed successfully". Now I don't need to checkout old one.
Has joined the channel.
Has joined the channel.
@sstone1 the IDs are randomly generated and unique. The console didn't have any errors
@sstone1 interestingly enough I'm not having that problem in Safari
Has joined the channel.
Message Attachments
Has joined the channel.
Only if you make an incompatible change to the model - by adding a required field without a default value. If you add new optional fields, or required fields with a default value, then the assets in the playground are still available.
@sstone1 Downloaded the getting started today and tried the npm install and I am getting this error. Not found in main node_module search path, trying current directory :/Users/gauthampamu/Development/composer/sample-applications/packages/getting-started/node_modules/digitalproperty-network
Looking for package.json of Business Network Definition in /Users/gauthampamu/Development/composer/sample-applications/packages/getting-started/node_modules/digitalproperty-network
Found:
Description:Digital Property Network
Name:digitalproperty-network
Identifier:digitalproperty-network@0.0.6
Written Business Network Definition Archive file to digitalPropertyNetwork.bna
Command completed successfully.
Command succeeded
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
TypeError: Cannot read property 'fail' of undefined
Command failed
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! getting-started@1.0.0 deployNetwork: `composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d && composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d`
npm ERR! Exit status 1
@sstone1 I removed the sample application and cloned sample-application again today few minutes ago, it is using v0.6. I had also downloaded the sample for hlfv1 also and I am getting same error. npm install is failing to deploy the archive. Tried the composer deploy command from the console output, it is giving the same error. composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
TypeError: Cannot read property 'fail' of undefined
Command failed
I am getting the same error @ztanaka1971 was getting with npm install. @ztanaka1971 Can you tell me what changes you made to resolve the error. I have removed all the docker images and tried it but it is giving the same error.
Node version v6.10.2 and npm version is 4.5.0
@gauthampamu This error can indicate something is wrong with your connection profile. Could you post the contents of connection.json from ~/.composer-connection-profiles/defaultProfile
Sure
@gauthampamu I have also made changes to the hlfv1 version of sample-applications so that it now creates a connection profile for you (before you had to follow some instructions to do it manually) also it creates a profile called hlfv1 so that it doesn't conflict with defaultProfile
@davidkel cat ~/.composer-connection-profiles/defaultProfile/connection.json
{
"type": "hlf",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7053",
"keyValStore": "/Users/gauthampamu/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}
cat ~/.composer-connection-profiles/
bluemixfabric/ hlfabric/ hlfv1/
defaultProfile/ hlfabric-local/
I have four or five profiles..in the directory. I had tried your script for v1.0 so I do have hlfv1 profile but I am assuming it should not conflict with defaultprofile
Let me know what I should do..I could wipe out this directory and try again..
So it might be worth renaming -composer-connection-profiles and composer-credentials to something else and trying again but the connection profile looks ok to me.
ok
will do
@davidkel Renaming the folder..seems to be working..
Thanks
@davidkel How do you enable tracing for the composer command line option so that you can debug these kinds of issue. Also for this error, is it possible to report a more useful user message so that we can recover from it.
@gauthampamu Info on tracing/debugging can be found here https://fabric-composer.github.io/problems/diagnostics.html
There is an issue already raised regarding this problem at https://github.com/fabric-composer/fabric-composer/issues/662 hopefully it will get fixed soon
Hi with the new tutorial, would I be able to use this to generate the code that I ultimately can deploy to a Bluemix Hyperledger Fabric v.6 service instance. Thanks!
For the new tutorial found here: https://github.com/dselman/fabric-composer/wiki/Tutorial-2-:-Creating-a-Fabric-Composer-Solution I am receiving an error during the execution of the unit tests. 1) Commodity Trading #tradeCommodity should be able to trade a commodity. I am receiving the error:
Error: Could not find any functions to execute for transaction org.acme.mynetwork.Trade#2d66a28c-d0fe-4372-a868-58373ae4ce14. Just checking to see if anyone was able to execute the unit tests. Thanks!
Message Attachments
Readme for the car auction should be updated. User is abstract participants so you cannot use it to create the User. Create Your Participant & Issue an Identity Card
Switch to the Test tab, then click on the User participant registry, then click on the Create Participant button to create a new instance of a user.
The JSON representation of the User should be:
{
"$class": "org.acme.vehicle.auction.User",
"email": "daniel.selman@uk.ibm.com",
"firstName": "Daniel",
"lastName": "Selman",
"balance": 10000
} It should be changed to auction.member
@tennenjl you should be able to deploy whatever you build with Composer to the IBM Blockchain service running on Bluemix. There are instructions for creating a Bluemix connection profile here: http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
That error suggests that the JavaScript transaction processor function does not have the right comments:
```
/**
* Track the trade of a commodity from one trader to another
* @param {org.acme.mynetwork.Trade} trade - the trade to be processed
* @transaction
*/
function tradeCommodity(trade) {
```
The @param and @transaction are how we find which JavaScript functions to execute for any given transaction.
@Sstone1 Thank you so much. Yes, and that stack overflow is great, but for that approach I was using the older composer-ui, (because of the connection profile issue) so I was wondering if I use the tutorial with the newer version, whether that would get me in trouble, when it came to getting those artifacts up to Bluemix
thanks, I'll check my comment
np
@mohamoud.egal your errors are usually a sign that Fabric is not running, has crashed, or is the wrong version (v0.6/v1.0) to what your connection profile is expecting.
@gauthampamu you are quite right; fancy raising a GitHub issue on the sample-networks repository?
@sstone1, so I while I have been able to deploy to Bluemix using the older composer-ui version, I am not sure what is the best approach (or if it is possible) to use the newer tooling and capabilities and still ultimately get my chaincode deployed to Bluemix Hyperledger Fabric v.6 instance.
Gotcha. Until the Playground supports connection profiles (at which point it will support Fabric running anywhere, including Bluemix), you will need to use the `composer` command line. You will want to use the `composer network deploy` command.
The command line uses the same connection profiles that the Playground does. They have to be in JSON format: `~/.composer-connection-profiles/
ah fantastic, so if I am following, that means I could potentially create and model my artifacts and transactions using the new tooling and then use command line to deploy to Bluemix?
and thank you :-D
Correct - you should just be able to export the BNA from the Playground and then deploy it to Bluemix using the command line.
fantastic. Thank you!!
np
In the Understanding Business Networks section of the documentation there's a statement about registries:
'Registries. A registry is a collection of assets for a particular purpose. As assets move through their lifecycle, they move through different registries. Assets can be in more than one registry at the same time.'
I know that registries are automatically created for each asset type, but how then can assets move through different registries or be in more than one registry at the same time? Is this a not-yet-documented feature or what am I missing?
The JavaScript APIs allow you to create new, custom registries and also allow you to add any asset/participant type to any registry.
Unfortunately at present, not a lot of functionality works if you do that, which is why you don't see it talked about much in the docs ;)
But it's where we want to get to.
ok, thanks for the quick reply
Hi, I have come across the transaction .js files and watched a video where its linked to the Codechain capabilities of the Hyperledger fabric. I have also then seen it being associated or categorized with the term Smart Contracts , possibly because of the Access Control List (ACL). Can we expect in future the introduction of Smart Contract model objects to best represent the notion of actual smart contracts. I feel fabric-composer is down playing this slightly as a first class citizen conceptually. Its a little bit of the sum of its parts at this stage. Your thoughts? Do you think there will be an elegant way of introducing "contracts" that participants have to abide by.
My opinion on "smart contracts" https://blog.selman.org/2016/09/26/smart-contracts-not-smart-not-contracts/
Yes, we can do much better than this with Fabric Composer... We've no concrete plans at present but lots of aspirations! :-)
Many thanks for sharing your blog post. I fully agree with most of your points, in particular "we need much more focus on the contract requirements of business networks" and "current incarnations of 'Smart Contracts' needs serious evolution and refinement" - that is what made me post in the first place. Just feels we relying on the technical implementation of 'transactions' to justify we indeed are upholding 'contracts' in a business network. The disconnect is very real . Did a small test with with a non-technical colleague. He bought into the whole model, but the very context of business network without established contracts as a concept was perplexing. The jump straight into transactions and access control...was already questions around context of why they exist? We live in hope that those aspirations get addressed soon so we don't travel too far without the appropriate foundation.
thanks for the reply and good work you guys are doing.
Has joined the channel.
@sstone1 1) I launched Fabric in this directory: fabric-sdk-node/test/fixtures using "docker-compose up --force-recreate". 2) Then I ran the command "composer network deploy -a my-network.bna -i admin -s Xurw3yU9zI0l" in the directory: /Users/mohamoudegal_ibm/Desktop/playground/my-network/dist where my .bna file is.
Message Attachments
Did you create a v1.0 connection profile? What's in ~/.composer-connection-profiles/defaultProfile/connection.json?
I don't think that docker-compose script creates/joins any channels either
hey guys, have encountered another possible model inheritance problem. Can anyone provide any futher insight on https://github.com/fabric-composer/fabric-composer/issues/696 for me? Is this intentional? If so, what's the recommended way of retrieving the participant from the saved relationship after storage?
IMO this is a bug but I would like to hear @sstone1 view on this as well
This sounds like the approach we demo in the Perishable Good Network: https://github.com/fabric-composer/sample-networks/tree/master/packages/perishable-network
Yeah, we need to do a lot of work on relationships. #469 is related.
It manifests differently if the relationship is setup outside of the composer runtime, I've added a stack trace to the issue with that info.
@sstone1 if you have any pointers on where to start looking I might see if I can fix it as this is a significant problem for us in our network which we don't really have any good workarounds for
Sure, will take a look and update the issue with some thoughts/pointers
@sstone1 It may be kinda simple actually. If you specify a relationship type which isn't part of the correct inheritance graph then it correctly gives errors like `Instance test.net.model.TestAsset#a1ea3de0-240c-11e7-87b5-915ca8544965 has property invoker with type test.net.model.AdminParticipant that is not derived from test.net.model.TestParticipant`
@d [ ](https://chat.hyperledger.org/channel/fabric-composer?msg=xY3nzAJ6nHhmwCuSo) @gauthampamu I am looking to get additional debug tracing from the command line tool. Understand for node app, you can add DEBUG=composer:* but is the configuration for command line tool. Where should we configure tracing for CLI
Hello, Is the v1 has backward compatibility with v0.6. Means whatever network/.bna i built and tested in v0.6 will also run in v1?
@vinitesh yes, the same business network definition will run on v0.6 and v1.0 without changes.
@gauthampamu the DEBUG=composer:* environment variable applies to both the Node.js APIs and the CLI
Thanks
Thanks @sstone1
Hello, will Fabric Composer work with Blockchain 0.6 in Bluemix?
@allenc2016 yep, see http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
Cool. thanks.
Hello guys is there a place I can find the roadmap for fabric composer?
@jorgedr all of the planned work is being tracked on GitHub. You can see a bit of a roadmap on the Projects tab here: https://github.com/fabric-composer/fabric-composer/projects
@sstone1 a question was raised to our team about setting up some configurable busn rules for our network...do you see any issue with creating an asset, ie BusnRules, that would store off specific values that could be leveraged by transactions to then do different types of busn logic based on the stored values? Thinking we would lock them down by ACL so only certain participants could update. Also, wondering if there would be a way to bootstrap those to the deploy of the network? Or maybe there is a better alternative?
@sstone1 a question was raised to our team about setting up some configurable busn rules for our network...do you see any issue with creating an asset, ie BusnRules, that would store off specific values that could be leveraged by transactions to then do different types of busn logic based on the stored values? Thinking we would lock them down by ACL so only certain participants could update. Also, wondering if there would be a way to bootstrap those to the deploy of the network? Or maybe there is a better alternative for the whole idea of busn rules?
@jdockter this sounds like what we demo here: https://github.com/fabric-composer/sample-networks/tree/master/packages/perishable-network
I think this is a powerful technique to externalize parameter values
You can model a transaction to update the values.
@dselman so your referring to the Contract asset? When you say externalized...you just mean that a transaction would run to populate it with different values or am I missing something?
Correct.
The TP functions are essentially a template for a contract, with the contract asset holding the parameter values for a specific instance of the contract.
okay thanks
Message Attachments
@sstone1
Please look for the example on StackOverflow
@sstone1 I didn't create a Connection profile in Playground because it isn't available. Is there another way to create a connection profile?
@dselman which example? I'm following this tutorial https://github.com/dselman/fabric-composer/wiki/Tutorial-2-:-Creating-a-Fabric-Composer-Solution
http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
You will have to use the composer-cli to deploy toe Bluemix
@dselman so instead of deploying the .bna to Fabric instance locally I should deploy the .bna to a Fabric instance on Bluemix?
exactly
you just need to create a connection profile document with the right URLs etc
@dselman thanks I will
@dselman if we running some system tests and want to reset network before we start...is there away to leverage the API to do that? I'm not seeing it, but know you have the capability in the playground so guessing I'm missing something.
We do have an internal method. @sstone1 -- any way to call that?
@jdockter If you look at testutil.js in the systest directory in the composer-systests package there is a method called resetBusinessNetwork, you should be able to copy the code from there
```
const Util = require('composer-common').Util;
return Util.invokeChainCode(client.securityContext, 'resetBusinessNetwork', []);
```
something like that, but I've not tried it
```
const Util = require('composer-common').Util;
return Util.invokeChainCode(client.securityContext, 'resetBusinessNetwork', []);
```
something like that, but I've not tried it. But the code in systests is there
@davidkel okay I will give that a try, thanks
anyone see 'FabricComposer/sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/grpc_node.node' ..................Failed at the getting-started@1.0.0 startHLF script 'scripts/start-hyperledger.sh'.......... with https://github.com/fabric-composer/sample-applications-hlfv1?
@Suma what version of node are you using ?
v6.9.5
grpc 1.2.4
FYI all - our repos are on the move to Hyperledger
Apologies if we hit any missing links etc on the way
@suma Not sure what the problem is, no other errors output ?
Error: Cannot find module '/Users/spnair/FabricComposer/sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/grpc_node.node'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.
@Suma Was this error received while running npm install in the getting-started directory ? was there any output regarding issues with creating grpc as I am assuming this is a problem running the create-channel script
yes, sorry i didnt mention that. This was indeed seen when i ran npm install in the v1 version of the getting-started directory. This is all I saw.. The log doesnt look much diff. either..
5 info lifecycle getting-started@1.0.0~prestartHLF: getting-started@1.0.0
6 silly lifecycle getting-started@1.0.0~prestartHLF: no script for prestartHLF, continuing
7 info lifecycle getting-started@1.0.0~startHLF: getting-started@1.0.0
8 verbose lifecycle getting-started@1.0.0~startHLF: unsafe-perm in lifecycle true
9 verbose lifecycle getting-started@1.0.0~startHLF: PATH: /Users/spnair/.nvm/versions/node/v6.9.5/lib/node_modules/npm/bin/node-gyp-bin:/Users/spnair/FabricComposer/sample-applications-hlfv1/packages/getting-started/node_modules/.bin:/Users/spnair/.nvm/versions/node/v6.9.5/lib/node_modules/npm/bin/node-gyp-bin:/Users/spnair/FabricComposer/sample-applications-hlfv1/packages/getting-started/node_modules/.bin:/Users/spnair/.nvm/versions/node/v6.9.5/bin:“/usr/local/bin/lib/node_modules/grunt-cli/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin:/Users/spnair/.npm-packages/lib/node_modules:/bin:/Users/spnair/.npm-packages/bin:/opt/local/bin:/opt/local/sbin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/go/bin:/Users/spnair/go/src/github.com/metaleap/go-buildrun:/Users/spnair/.node/bin”
10 verbose lifecycle getting-started@1.0.0~startHLF: CWD: /Users/spnair/FabricComposer/sample-applications-hlfv1/packages/getting-started
11 silly lifecycle getting-started@1.0.0~startHLF: Args: [ '-c', 'scripts/start-hyperledger.sh' ]
12 silly lifecycle getting-started@1.0.0~startHLF: Returned: code: 1 signal: null
13 info lifecycle getting-started@1.0.0~startHLF: Failed to exec startHLF script
14 verbose stack Error: getting-started@1.0.0 startHLF: `scripts/start-hyperledger.sh`
14 verbose stack Exit status 1
14 verbose stack at EventEmitter.
that's from /Users/spnair/.npm/_logs/2017-04-18T18_41_32_255Z-debug.log
Is there anywhere else I should be looking to see the grpc error
@suma you are on MacOS, it's looking for a binary file and if there isn't a pre-built one I assume grpc will attempt to build it. If it is trying to build it then you would need xcode installed, do you have xcode installed ?
i do, I have xcode 8.1
Has joined the channel.
@suma all I can suggest at the moment is to delete the node_modules directory and try npm install again. When I run it (linux) I see the following messages on the console
```
make: Leaving directory '/home/ubuntu/sample-applications-hlfv1/packages/getting-started/node_modules/sleep/build'
> grpc@1.2.4 install /home/ubuntu/sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc
> node-pre-gyp install --fallback-to-build
[grpc] Success: "/home/ubuntu/sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/grpc_node.node" is installed via remote
> grpc@1.0.0 install /home/ubuntu/sample-applications-hlfv1/packages/getting-started/node_modules/grpc
> node-pre-gyp install --fallback-to-build
[grpc] Success: "/home/ubuntu/sample-applications-hlfv1/packages/getting-started/node_modules/grpc/src/node/extension_binary/grpc_node.node" is installed via remote
```
@davidkel @14gracel I wonder if we could start capturing some of these problems in a Node.js script that gets run postinstall - ie:
```
try {
require('grpc')
} catch (e) {
console.error('Can't load grpc module, no C++ compiler?');
process.exit(1);
}
```
Its sorted out. After poking around a bit and not finding much, I went ahead, uninstalled hfc(0.6) rebooted and started a fresh npm install and it worked.
frankly dont see how it got resolved. i dont see how thats a solution
If I come across this again, I'll document whatever poking around i did...
composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
List business network digitalproperty-network
Error: {"created":"@1492553999.700172000","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1492553999.700154000","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1492553999.700169000","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command completed successfully.
?
shud i change my connection.json in connections-profile?
@Suma if you are running the hlfv1 sample then the connection profile to use is called hlfv1, also the enrollid is admin and enrollsecret is adminpw
oh dear... of course... force of habit! Thanks
that helps :)
Hi, So I ran through the Creating a Fabric Composer Solution lab and was excited to see the rest server and loopback feature. I was wondering if I can create my own loopback project and then leverage the composer loopback connector to generate APIs and create a microservice that I could deploy to Bluemix? Thanks!
Hi, So I ran through the Creating a Fabric Composer Solution lab and was excited to see the rest server and loopback feature. I was wondering if I can create my own loopback project and then leverage the composer loopback connector to generate APIs and create a microservice that I could deploy to Bluemix? Just to add a bit more, so if I run npm install to add the loopback-composer-connector and if I then define the connector to the datasource.json with the appropriate attributes (connectionProfileName, businessNetworkAdapter, businessNetworkIdentifier, participantId, and participantPwd), is it possible to generate the swagger APIs, and a microservice that I can then publish?
Apologies for what might be a non-technical request. All is working well w/my business network in the playground and I'll soon expand but ... I'll generate the REST and drive that from several different node applications (one application for each organization). One org is a bank ... and I might have different people who have different Identities at the bank. Is there a common/preferred pattern by which when Banker1 is using the app, the REST requests come in with their eCert/tCert ... and when Banker2 is driving the app ... the REST requests com in with theirs (even though the app itself is the same)? I'm going back thru the excellent tutorial on participants, IDs, et al ... and I don't see it in there (maybe this question is too basic) ... but if anyone has thoughts on best way to handle that, I would greatly appreciate it. Thanks,
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=5MEDT4irjLgDnFYS9) @tennenjl yes, the Composer Loopback connector is just that -- a standard Loopback Connector. You can use it with all the Loopback tools. We've just wrapped the Loopback tools to create the composer-rest-server, you can use the Loopback framework yourself with the Composer connector for more control.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=gFaRyHGiaAL9wNqpv) @MikeC711 Excellent question, glad to see you are making good progress. We are building out support for authentication to the REST API, which will include the ability to authenticate to the REST server using Passport.js, and associating an ECert with the authenticated user. @sstone1 is leading this work and the design is described here: https://github.com/fabric-composer/fabric-composer/issues/142
can anyone tell me if there's a way to update the submitted transaction from within its transaction handler callback? Or is the payload set in stone once it gets this far?
related- what about creating another transaction from within a transaction handler?
Nothing prevents you modifying the transactions being processed inside your TP function. Yes, you can create a new transaction inside a TP function, however we do not yet have an `emit` API to cause the runtime to process the transaction. There is a story open for that.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=67BB9aS6ojPdDqJjW) @dselman Thank you so much! So, as a novice, once I have defined the datasource, in the past I have defined a model with attributes, but in this case, I assume there is some other approach to generate the schema. Any hints on how I would do that? Thank you again!
The LB model is automatically generated by the composer loopback connector from your Composer model. So just deploy your business network!
@dselman, wow, ok, I'll give that a try. Thanks!
HOw do we do eventhub with composer - generate chaincode events and listen to them?
@Suma we don't yet support that. It is being tracked as this story: https://github.com/hyperledger/composer/issues/66
We hope to make progress on that in the next few weeks.
thanks :)
Hey guys It seems that there has been a major overhaul of fabric composer projects in github . Can someone point me to the new location of the projects that contained the sample networks?
@jorgedr They are all here https://github.com/hyperledger/composer-sample-networks
Thank you @14gracel !!!!
@jorgedr nice to see someone notice that quickly!
We're moving into Hyperledger properly :)
:) That is what I thought @sstone1 , very cool to see you guys now under the Hyperledger umbrella!
PS: Those sample networks have been my bread and butter at least few weeks and they are super useful!
PS: Those sample networks have been my bread and butter fort at least few weeks now and they are super useful!
PS: Those sample networks have been my bread and butter fort at least a few weeks now and they are super useful!
Great! Are you building your own network?
Yes @sstone1 , it is based on Fabric v.6 so it is a little challenging since things are moving so fast on the v1.0 arena for composer but so far it is working very well for us.
:muscle:
Does anybody have a StackOverflow privilege >2500 please? It would be good to create a `hyperledger-composer` tag as a synonym for `fabric-composer`
@jorgedr that's great. No pressure - but we had a great call last week where bonen talked about the work he has been doing with Composer, and his experiences - would you be up for doing the same? It doesn't have to be very long!
We love to hear from you guys!
@sstone1 I will be more than happy to do it. Let's work out the details over a private message.
On our biweekly community call I mean ;)
Great!
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=BWeru6ogYdDfFXuBw) @dselman Thank you so much for writing this. I came here scouting for what I missed in the last few weeks, and lo and behold, I find something I needed, but wasn't really looking for very specifically. You, sir, are the man!
Hi! I'm a complete newbie to fabric composer, I've successfully gone through the quick start guide and have fabric composer on my machine. I see the rest of the tutorials all use the CLI, is there a GUI interface to fabric composer and how can I access it?
Has joined the channel.
Hello, in transaction processor function we can call getCurrentParticipant().getFullyQualifiedType() method to get the type of current loggedin participant.
Is there any similar method call in composer nodejs sdk which i can call after creating businessnetworkdefination object
@jinvanstee if you go to the fabric composer website at https://fabric-composer.github.io/ and click on the 'playground' option at the top it will take you to an online version of the fabric composer playground application
Ok I installed the fabric composer playground locally .. it says i can connect to an existing hyperledger fabric but i don't see directions on how to do that
If you have an existing Hyperledger Fabric instance you want to use with Fabric Composer Playground, then you can install the playground without installing another Hyperledger Fabric instance. The playground can then be configured to connect to your existing Hyperledger Fabric instance by creating a connection profile with the required connection settings.
@davidkel
when i start my playground locally it says that function isn't available
Hello! Has anyone seen following error on v0.6 fabric?
[eventhub_producer] Chat -> ERRO 87958 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=ZQ8Q6yCqD24LmJTt9) @dselman Sorry to ask, but I'm still missing something. So lets say I am starting from scratch. First I create my project via apic loopback command. 2) I then install the loopback adapter via npm i loopback-connector-composer --save, then I edit the server/datasources.json and add my datasource def which looks similar to this: {
"testDS": {
"name": "testDS",
"connector": "composer",
"connectionProfileName": "bluemixHRProfile",
"businessNetworkIdentifier": "my-network",
"participantId": "user_type1_0",
"participantPwd": "1234567"
}
}
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=ZQ8Q6yCqD24LmJTt9) @dselman Sorry to ask, but I'm still missing something. So lets say I am starting from scratch. First I create my project via apic loopback command. 2) I then install the loopback adapter via npm i loopback-connector-composer --save, then I edit the server/datasources.json and add my datasource def which looks similar to this: {
"testDS": {
"name": "testDS",
"connector": "composer",
"connectionProfileName": "bluemixHRProfile",
"businessNetworkIdentifier": "my-network",
"participantId": "user_type1_0",
"participantPwd": "1234567"
}
} Next, do I create some sort of model using apic create --type model, if so what base class should I use? Thanks and my apologies for asking!
@jinvanstee sorry, the docs are a bit misleading. We have an old UI, `composer-ui`, that supports connections to Hyperledger Fabric. What you've downloaded is the new UI, or Playground, `composer-playground` which does not support support connections to Hyperledger Fabric. The team is busy porting the functionality to the new UI and we hope to make this available in the next couple of weeks.
@AlexKim that error can be safely ignored; I believe it means "some client connected to the event hub, but forgot to properly disconnect before closing the connection"
@sstone1 appreciate it.. yeah i saw the stackoverflow thread on getting the old composer-ui
@sstone1 Thanks a lot - I got that error when tried to use remote fabric with modified version of composer profile - maybe I missed something? Is there any good example how to configure profile with remote version of fabric?
It's probably an issue in Composer that means we don't call `eventHubDisconnect()` when the program shuts down
The error shouldn't effect functionality - are you getting any other errors ?
so i'm working with @AlexKim ... he is monitoring the fabric.. and i'm using fabric composer CLI to deploy a business network to his fabric... I created a new connections profile to point to his fabric.. I'm getting the following error:
Jins-MacBook-Pro-2:getting-started jinvanstee$ composer network deploy -p testProfile --archiveFile digitalPropertyNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
✖ Deploying business network definition. This may take a minute...
Error: Error: sql: no rows in result set
Command failed
my profile looks like this: {
"type": "hlf",
"membershipServicesURL": "grpc://148.100.4.212:7054",
"peerURL": "grpc://148.100.4.212:7051",
"eventHubURL": "grpc://148.100.4.212:7053",
"keyValStore": "/Users/jinvanstee/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}
Ah, OK. That means that WebAppAdmin has already been enrolled somewhere.
i see
You can only use the enrollment ID + secret once, and you get an enrollment certificate back - which in Composer's case, gets placed into that keyValStore directory.
should have masked the IP address of our test fabric .. argh
i see
The enrollment secret is ignored for subsequent commands as the enrollment certificate is retrieved from the keyValStore directory.
If you delete the certificate, then it attempts to re-enroll, which will fail (unless you recreate the Fabric)
If you recreate the Fabric, you also need to delete any old certificates that were enrolled using that Fabric instance.
If you recreate the Fabric, you also need to delete any old certificates that were enrolled using the old Fabric instance.
yes @sstone1 it was deployed once on local fabric, and created keyvalstore....now makes sense to delete it and deploy to remote fabric again for new keyvalstore
so everytime deploying to new fabric
one thing I usually do is change `keyValStore` to include the connection profile name, e.g. `"keyValStore": "/Users/jinvanstee/.composer-credentials/remoteFabric1",`
Then the certs are always kept in a directory for a specific Fabric
I think we need to make that the default behaviour as otherwise you hit these kind of problems
Has joined the channel.
gotcha that makes sense @sstone1
@sstone1 ah - that's a good tip!
np, glad to help!
@tennenjl you need a LoopBack boot script to drive the discovery of the business network and register the models with LoopBack. For example, this is the LoopBack boot script that `composer-rest-server` uses: https://github.com/hyperledger/composer/blob/master/packages/composer-rest-server/server/boot/composer-discovery.js
I think you care about the code from line 486 down (`discoverModelDefinitions`).
I think you care about the code from line 486 down - `discoverModelDefinitions()`
Alternatively, you could just use `composer-rest-server` which takes care of it for you ;)
@simonstone Thanks! Will take a look. My challenge is that I need to have my rest server/API running in Bluemix, so as far as I can tell, that means either installing composer-rest-server in a docker container and deploying that to Bluemix, or generating the API/Microservice locally and publishing it.
Ah gotcha. You're going to hit some tough problems deploying the REST server in a production environment though - mainly around enrollment certificates.
Because you can only enroll once, and the enrollment certificates (by default) are stored in the local file system - you need to persist the enrollment certificates somewhere else if you want to scale your REST server (multiple instances) or allow it to work across restarts etc
I've been working on some changes to the REST server recently to make it a lot easier - you can configure it to store the enrollment certificates in a database such as MongoDB.
@sstone1, thanks. Sounds like another challenge that we may have fun with.
Has joined the channel.
Thank you @sstone1 .. we have the remote connection working now
Has joined the channel.
np guys!
Hi, we are planning to run a composer client nodejs client app in Bluemix, that will create a new BusinessNetworkConnection. When we call connect, is there a way to override the location of the connection profile (businessNetwork.connect('testprofile',...) or is the recommended approach to use the additionalConnectOptions, where the additionalConnectOptions object would specify the connection profile attributes)? Thanks!
Has joined the channel.
You can use the COMPOSER_CONFIG environment variable for this - no need to create any files on the file system
export COMPOSER_CONFIG='{
"connectionProfiles": {
"hlfabric": {
"type": "hlf",
"keyValStore": "/home/composer/.composer-credentials",
"membershipServicesURL": "grpc://membersrvc:7054",
"peerURL": "grpc://vp0:7051",
"eventHubURL": "grpc://vp0:7053",
"deployWaitTime": 300,
"invokeWaitTime": 30,
"networks": {
"org.acme.biznet": "25e9c6abfdc8a081c218e773f2e513ee504ba9acb437d05fac7e08fa5c0d309d"
}
}
}
}'
```
export COMPOSER_CONFIG='{
"connectionProfiles": {
"hlfabric": {
"type": "hlf",
"keyValStore": "/home/composer/.composer-credentials",
"membershipServicesURL": "grpc://membersrvc:7054",
"peerURL": "grpc://vp0:7051",
"eventHubURL": "grpc://vp0:7053",
"deployWaitTime": 300,
"invokeWaitTime": 30,
"networks": {
"org.acme.biznet": "25e9c6abfdc8a081c218e773f2e513ee504ba9acb437d05fac7e08fa5c0d309d"
}
}
}
}'
```
Fabric Playground is not loading in Firefox. On Safari, I am getting this error. Collection with ID '$sysdata' does not exist. Browser is safari. I was planning to use this for training tomorrow morning. Any ideas when it will be fixed ?
I meant..Fabric Composer playground..
@tennenjl @sstone1 we usually just copy our enrolment certificates between hosts, that works just fine. I like to configure the credentials path to be under the connection profile directory so you can just `scp` the whole folder across. You likely have the same user (like `ubuntu`) between hosts, but if not I just make a sed script to replace the path in `connection.json`
@pospi @sstone1
@pospi @sstone1 Thank you!
Currently application in composer save the credentials on the file systems under .composer-credentials. When you building a production solution, what considerations should we take for storing these security credentials.
Has joined the channel.
Has joined the channel.
Hi Everyone,
New comer to blockchain and fabric composer. Wanted to ask is there any way of retaining the original asset owner after transfering the asset to a new owner? The original asset owner is just for display and verification purposes.
'asset Property identified by propertyId {
o string propertyId
o string propertyInfo
--> Person originalOwner
--> Person currentOwner
/* Is there anyway to update only currentOwner whenever I transfer the asset? */
}'
I'm trying to connect my local Composer to Bluemix using composer-cli. The links on SO http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service doesn't work, but I've been trying to update my connections profile to point to Bluemix. However, I don't know where to find the values to fill my connections page. I looked on the Bluemix Blockchain service that I started but I can't find where the peerURL, eventHubURL, certificate, certificatePath values? So far I just copied what was on the SO page.
Message Attachments
Hello All..
I have doubt on deployment...
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)
I am getting this error when i do this
composer network deploy --archiveFile CoinNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
Fabric is running on a separate terminal..
@sstone1 Have you update fabric-composer to support the "VCAP-like" configuration yet?
Ok, I dont think i have done that..
Any idea on how do i do that ?
But this is the latest composer..
oh sorry you were addressing a different issue... my bad..
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=ybTAoSfPq5LhHWFN6) @paul.sitoh
Which version of composer?
npm @
npm @
I think it should be in v0.5.6
I need to maintain two version in case people still working on older one
@ZenX0904 you can implement this easily using transaction processor functions. You code the transfer of the asset by changing the value of the `originalOwner` and `currentOwner` properties.
@mohamoud.egal where to get those values is documented on the SO question:
> The hostname and port numbers in the URLs must come from the Bluemix dashboard. I find it easiest to get this information by navigating to "Service Credentials" and viewing the default credentials "Credentials-1".
That is followed by a description of how the Bluemix properties map to the Composer properties.
@karthikworks that error is a communication error, which means that you have specified the wrong port or Fabric is not available or Fabric has crashed.
Are you using Fabric v0.6 or Fabric v1.0?
I think i am using v0.6
Are you running it using Docker?
Yes...
I found one issue... the ports were wrong..changed that and i did not get the above said error..
but instead... its taking time to deploy..
can you run `docker logs` on the peer docker container (probably called vp0)
Ok... so when i run the deploy... it starts of correctly but.. i can see these errors on the logs...
vp0_1 | 09:52:21.064 [dockercontroller] deployImage -> ERRO 072 Error building images: manifest for hyperledger/fabric-baseimage:latest not found
vp0_1 | 09:52:21.064 [dockercontroller] deployImage -> ERRO 073 Image Output:
the full error log
vp0_1 | ********************
vp0_1 | Step 1/4 : FROM hyperledger/fabric-baseimage
vp0_1 |
vp0_1 | ********************
vp0_1 | 09:52:16.586 [container] unlockContainer -> DEBU 064 container lock deleted(dev-vp0-52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c)
vp0_1 | 09:52:16.587 [state] TxBegin -> DEBU 065 txBegin() for txId [52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c]
vp0_1 | 09:52:16.589 [chaincode] getArgsAndEnv -> DEBU 066 Executable is /opt/gopath/bin/52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c
vp0_1 | 09:52:16.590 [chaincode] launchAndWaitForRegister -> DEBU 067 start container: 52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c(networkid:dev,peerid:vp0)
vp0_1 | 09:52:16.590 [container] lockContainer -> DEBU 068 waiting for container(dev-vp0-52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c) lock
vp0_1 | 09:52:16.590 [container] lockContainer -> DEBU 069 got container (dev-vp0-52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c) lock
vp0_1 | 09:52:16.591 [dockercontroller] Start -> DEBU 06a Cleanup container dev-vp0-52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c
vp0_1 | 09:52:16.593 [dockercontroller] stopInternal -> DEBU 06b Stop container dev-vp0-52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c(No such container: dev-vp0-52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c)
vp0_1 | 09:52:16.594 [dockercontroller] stopInternal -> DEBU 06c Kill container dev-vp0-52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c (No such container: dev-vp0-52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c)
vp0_1 | 09:52:16.596 [dockercontroller] stopInternal -> DEBU 06d Remove container dev-vp0-52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c (No such container: dev-vp0-52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c)
vp0_1 | 09:52:16.596 [dockercontroller] Start -> DEBU 06e Start container dev-vp0-52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c
vp0_1 | 09:52:16.597 [dockercontroller] getDockerHostConfig -> DEBU 06f docker container hostconfig NetworkMode: host
vp0_1 | 09:52:16.601 [dockercontroller] createContainer -> DEBU 070 Create container: dev-vp0-52d625ce1cbe79813e0415735aefb3e5151818f6a7f2b32b274fd10db5dc897c
vp0_1 | 09:52:16.604 [dockercontroller] Start -> DEBU 071 start-could not find image ...attempt to recreate image no such image
vp0_1 | 09:52:21.064 [dockercontroller] deployImage -> ERRO 072 Error building images: manifest for hyperledger/fabric-baseimage:latest not found
vp0_1 | 09:52:21.064 [dockercontroller] deployImage -> ERRO 073 Image Output:
Fixed the issue...
Hi, I'm trying to connect the getting-started v 0.6 example to bluemix fabric, which was working perfectly fine a week back. Since y'day, with a fresh copy, when i try to deploy on Bluemix I get 'TypeError: Cannot read property 'fail' of undefined
Command failed'
Tried a few times, can't see what I'm doing wrong. any tips pls?
@Suma That error usually indicates either a problem with your connection profile or a problem with your archive file (if you get as far as having details of your archive being output then it is a problem with the connection profile)
I'm using the same connection profile I used a week back. lemme paste the details here...
{
"type": "hlf",
"keyValStore": "/Users/spnair/.composer-credentials",
"membershipServicesURL": "grpcs:///50fdcd426e1c4bec83183a514599fb03-ca.us.blockchain.ibm.com:30001",
"peerURL": "grpcs://50fdcd426e1c4bec83183a514599fb03-vp0.us.blockchain.ibm.com:30001",
"eventHubURL": "grpcs://50fdcd426e1c4bec83183a514599fb03-vp0.us.blockchain.ibm.com:31001",
"deployWaitTime": 300,
"invokeWaitTime": 30,
"certificate": "-----BEGIN CERTIFICATE-----\nMIID6TCCA26gAwIBAgIQCiYEWw1faoRpM2xufaiPLTAKBggqhkjOPQQDAjBMMQsw\nCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMSYwJAYDVQQDEx1EaWdp\nQ2VydCBFQ0MgU2VjdXJlIFNlcnZlciBDQTAeFw0xNjA2MDcwMDAwMDBaFw0xOTA2\nMTIxMjAwMDBaMIGJMQswCQYDVQQGEwJVUzERMA8GA1UECBMITmV3IFlvcmsxDzAN\nBgNVBAcTBkFybW9uazE0MDIGA1UEChMrSW50ZXJuYXRpb25hbCBCdXNpbmVzcyBN\nYWNoaW5lcyBDb3Jwb3JhdGlvbjEgMB4GA1UEAwwXKi51cy5ibG9ja2NoYWluLmli\nbS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARTKAZypDOqw34HWujQeL82\nj1e9rN1inpN6ngrq49+OpYIe8ckHnJhsWPpf+zeIQePboDQVUTDtYXh7212BsVoX\no4IB8jCCAe4wHwYDVR0jBBgwFoAUo53mH/naOU/AbuiRy5Wl2jHiCp8wHQYDVR0O\nBBYEFK+1RoBnUnb8nr2hNtkUu3FRrbYuMDkGA1UdEQQyMDCCFyoudXMuYmxvY2tj\naGFpbi5pYm0uY29tghV1cy5ibG9ja2NoYWluLmlibS5jb20wDgYDVR0PAQH/BAQD\nAgeAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjBpBgNVHR8EYjBgMC6g\nLKAqhihodHRwOi8vY3JsMy5kaWdpY2VydC5jb20vc3NjYS1lY2MtZzEuY3JsMC6g\nLKAqhihodHRwOi8vY3JsNC5kaWdpY2VydC5jb20vc3NjYS1lY2MtZzEuY3JsMEwG\nA1UdIARFMEMwNwYJYIZIAYb9bAEBMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3\nLmRpZ2ljZXJ0LmNvbS9DUFMwCAYGZ4EMAQICMHsGCCsGAQUFBwEBBG8wbTAkBggr\nBgEFBQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29tMEUGCCsGAQUFBzAChjlo\ndHRwOi8vY2FjZXJ0cy5kaWdpY2VydC5jb20vRGlnaUNlcnRFQ0NTZWN1cmVTZXJ2\nZXJDQS5jcnQwDAYDVR0TAQH/BAIwADAKBggqhkjOPQQDAgNpADBmAjEA7LViaN74\nOwIp/zqfwSRvURg965+m73/edCeNKrsLf6GuE0sLwpX6pQNnDlr6SzGnAjEA+qk0\nsYRnd2gCQeD9fWbCJIw0vJDqeZr1WJ64aVoJ8kyASzY/yoarSm2wqujXJwEf\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIDrDCCApSgAwIBAgIQCssoukZe5TkIdnRw883GEjANBgkqhkiG9w0BAQwFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0xMzAzMDgxMjAwMDBaFw0yMzAzMDgxMjAwMDBaMEwxCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxJjAkBgNVBAMTHURpZ2lDZXJ0IEVDQyBT\nZWN1cmUgU2VydmVyIENBMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE4ghC6nfYJN6g\nLGSkE85AnCNyqQIKDjc/ITa4jVMU9tWRlUvzlgKNcR7E2Munn17voOZ/WpIRllNv\n68DLP679Wz9HJOeaBy6Wvqgvu1cYr3GkvXg6HuhbPGtkESvMNCuMo4IBITCCAR0w\nEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwNAYIKwYBBQUHAQEE\nKDAmMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQgYDVR0f\nBDswOTA3oDWgM4YxaHR0cDovL2NybDMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0R2xv\nYmFsUm9vdENBLmNybDA9BgNVHSAENjA0MDIGBFUdIAAwKjAoBggrBgEFBQcCARYc\naHR0cHM6Ly93d3cuZGlnaWNlcnQuY29tL0NQUzAdBgNVHQ4EFgQUo53mH/naOU/A\nbuiRy5Wl2jHiCp8wHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUwDQYJ\nKoZIhvcNAQEMBQADggEBAMeKoENL7HTJxavVHzA1Nm6YVntIrAVjrnuaVyRXzG/6\n3qttnMe2uuzO58pzZNvfBDcKAEmzP58mrZGMIOgfiA4q+2Y3yDDo0sIkp0VILeoB\nUEoxlBPfjV/aKrtJPGHzecicZpIalir0ezZYoyxBEHQa0+1IttK7igZFcTMQMHp6\nmCHdJLnsnLWSB62DxsRq+HfmNb4TDydkskO/g+l3VtsIh5RHFPVfKK+jaEyDj2D3\nloB5hWp2Jp2VDCADjT7ueihlZGak2YPqmXTNbk19HOuNssWvFhtOyPNV6og4ETQd\nEa8/B6hPatJ0ES8q/HO3X8IVQwVs1n3aAr0im0/T+Xc=\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j\nb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB\nCSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97\nnh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt\n43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P\nT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4\ngdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO\nBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR\nTLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw\nDQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr\nhMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg\n06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF\nPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls\nYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk\nCAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4=\n-----END CERTIFICATE-----\n",
"certificatePath": "/certs/peer/cert.pem",
"networks": {
"digitalproperty-network": "e59338c2ce7e3edb5e5a29b7c79a24b32c8ad77c238c5cfe5cd395ef856b2ef9"
}
}
This is the bluemix credentials
{"credentials":{"peers":[{"discovery_host":"50fdcd426e1c4bec83183a514599fb03-vp0.us.blockchain.ibm.com","discovery_port":30001,"api_host":"50fdcd426e1c4bec83183a514599fb03-vp0.us.blockchain.ibm.com","api_port_tls":5001,"api_port":5001,"event_host":"50fdcd426e1c4bec83183a514599fb03-vp0.us.blockchain.ibm.com","event_port":31001,"type":"peer","network_id":"50fdcd426e1c4bec83183a514599fb03","container_id":"97c719b0b4a48d5117984301d9cc486cd13bd606c55de15367eb792462586d70","id":"50fdcd426e1c4bec83183a514599fb03-vp0","api_url":"http://50fdcd426e1c4bec83183a514599fb03-vp0.us.blockchain.ibm.com:5001"},{"discovery_host":"50fdcd426e1c4bec83183a514599fb03-vp2.us.blockchain.ibm.com","discovery_port":30001,"api_host":"50fdcd426e1c4bec83183a514599fb03-vp2.us.blockchain.ibm.com","api_port_tls":5001,"api_port":5001,"event_host":"50fdcd426e1c4bec83183a514599fb03-vp2.us.blockchain.ibm.com","event_port":31001,"type":"peer","network_id":"50fdcd426e1c4bec83183a514599fb03","container_id":"34a5bea7b32f026528f7e93f089fec23607525cbf7c7b274ebe2d9cfe1413c3b","id":"50fdcd426e1c4bec83183a514599fb03-vp2","api_url":"http://50fdcd426e1c4bec83183a514599fb03-vp2.us.blockchain.ibm.com:5001"},{"discovery_host":"50fdcd426e1c4bec83183a514599fb03-vp3.us.blockchain.ibm.com","discovery_port":30001,"api_host":"50fdcd426e1c4bec83183a514599fb03-vp3.us.blockchain.ibm.com","api_port_tls":5001,"api_port":5001,"event_host":"50fdcd426e1c4bec83183a514599fb03-vp3.us.blockchain.ibm.com","event_port":31001,"type":"peer","network_id":"50fdcd426e1c4bec83183a514599fb03","container_id":"a052dc217690201c48b67e45c7744a62f2dd7a817f7ee64338196d5888ea8108","id":"50fdcd426e1c4bec83183a514599fb03-vp3","api_url":"http://50fdcd426e1c4bec83183a514599fb03-vp3.us.blockchain.ibm.com:5001"},{"discovery_host":"50fdcd426e1c4bec83183a514599fb03-vp1.us.blockchain.ibm.com","discovery_port":30001,"api_host":"50fdcd426e1c4bec83183a514599fb03-vp1.us.blockchain.ibm.com","api_port_tls":5001,"api_port":5001,"event_host":"50fdcd426e1c4bec83183a514599fb03-vp1.us.blockchain.ibm.com","event_port":31001,"type":"peer","network_id":"50fdcd426e1c4bec83183a514599fb03","container_id":"35c1d4f4cdf85036ef6f7965cb860c0a54ff8f126901970139bdf9a8c224eb26","id":"50fdcd426e1c4bec83183a514599fb03-vp1","api_url":"http://50fdcd426e1c4bec83183a514599fb03-vp1.us.blockchain.ibm.com:5001"}],"ca":{"50fdcd426e1c4bec83183a514599fb03-ca":{"url":"50fdcd426e1c4bec83183a514599fb03-ca.us.blockchain.ibm.com:30001","discovery_host":"50fdcd426e1c4bec83183a514599fb03-ca.us.blockchain.ibm.com","discovery_port":30001,"api_host":"50fdcd426e1c4bec83183a514599fb03-ca.us.blockchain.ibm.com","api_port_tls":30001,"api_port":30001,"type":"ca","network_id":"50fdcd426e1c4bec83183a514599fb03","container_id":"712f8053847c8a0729031752110ba12a77f1e385621b2767b177a9552a8b4158"}},"users":[{"enrollId":"admin","enrollSecret":"c8f40dadd6","affiliation":"group1","username":"admin","secret":"c8f40dadd6"},
in the commandline, I'm using :
composer network update --archiveFile digitalPropertyNetwork.bna --enrollId admin --enrollSecret c8f40dadd6 -p myOldProfilecopy
same error with deploy
tried removing the networks part from the conenction.json too... no real diff.
can you paste the complete output from the command ?
checked the certificate again, looks good
Sumabalas-MacBook-Pro:getting-started spnair$ composer network update --archiveFile digitalPropertyNetwork.bna --enrollId admin --enrollSecret c8f40dadd6 -p myOldProfilecopy
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
TypeError: Cannot read property 'fail' of undefined
Command failed
Sumabalas-MacBook-Pro:getting-started spnair$
that's all i see in the command line
unfortunately due to a bug introduced into 0.5.10 the actual error isn't output anywhere. Your connection profile that you posted looks ok. The issue has been fixed but we haven't published a stable version with it in. The unstable versions should have the fix
so you could try `npm install -g composer-cli` followed by `npm install -g composer-cli@unstable` which hopefully would then output the error message at least
so you could try `npm uninstall -g composer-cli` followed by `npm install -g composer-cli@unstable` which hopefully would then output the error message at least
ok. lemme try that. thanks.
keep u posted
Has joined the channel.
Sorry, that didn't help. This is what I did. Fresh folder, removed all my docker images and containers, nvm use v6*, renamed my .composer-connection-profiles folder to .old-composer-connection-profiles, ran npm install -g composer-cli, npm install -g composer-cli@unstable, git clone https://github.com/fabric-composer/sample-applications.git, cd sample-applications/packages/getting-started
$ npm install
$ composer network list -n digitalproperty-network --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
all good so far. Then I try composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId admin --enrollSecret c8f40dadd6 -p bluemixProfile (bluemixProfile is a copy of the same profile file I shared earlier, now saved in the newly created .composer-connection-profiles folder
and I get the same error
Sumabalas-MacBook-Pro:getting-started spnair$ composer network deploy --archiveFile digitalPropertyNetwork.bna --enrollId admin --enrollSecret c8f40dadd6 -p bluemixProfile
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
TypeError: Cannot read property 'fail' of undefined
Command failed
Sumabalas-MacBook-Pro:getting-started spnair$
When I tried the v1 version of getting started, a couple of days back, it ran just fine. And I see this version of getting started has had recent updates. Do you think its looking for some v1 behavior / modified connection profile (v1 compatible) - hfc keystore kind?
both run locally, the 0.6 version, that can run against bluemix doesn't run now.
@suma could you get the version levels you have installed of composer-cli `composer-cli --version`
sorry my initial instructions were wrong the first part should have been `npm uninstall -g composer-cli` (not install)
makes sense :)
@sstone1 The SO page link doesn't work anymore (screenshot below) but I did copy the values that I added to the connections.json file. What I'm not seeing is how the values in the connections.json page map to the values in Credentials-1 on Bluemix. I tried searching for; peerURL, eventHubURL, certificate, certificatePath
Message Attachments
the information you are looking for is all on the SO page, not the missing link (which is a problem)
trying that. another qn.. I have a local instance of playground with the docker-compose.yml pulled down from the link at https://fabric-composer.github.io/tutorials/getting-started-playground.html#installationoptions . I see only the web browser version.. I thought the local could connect to the local fabric instance - at least that's what i remember...
Erm - we shouldn't have updated that to use the new UI or Playground image
The new UI does not support connection profiles yet
oh yeah, right - it was the composer-ui that did that.. got u
Message Attachments
Has joined the channel.
@sstone1
FYI : I pulled down digitalPropertyNetwork sample, made changes to the lib, created the bna, deployed. then ran getting-started again, I see the following: Sumabalas-MacBook-Pro:getting-started spnair$ node cli.js landregistry list
info: [Composer-GettingStarted] Fabric Composer: Getting Started appliation
error: [Composer-GettingStarted] Error: Deployed chain-code (0.5.11-20170420063536) is incompatible with client (0.5.10)
Command failed.
is it to do with the cli unstable version ?
yep
if you use the unstable version, you need to use the same version everywhere
@Suma so by using the unstable version it's not reported any errors now with your connection profile or setup which was the only reason for you to try unstable. I suggest you now uninstall that level of composer-cli and return back to the stable version
Has joined the channel.
Has joined the channel.
Hi everyone, I'm testing the composer-rest-server and using the official documentation, but I don't know how to generate the AccessToken to interact with the composer business network deployed in the network.
@gromeroar unless you enabled security (which is a new undocumented feature) you shouldn't need an access token
when I make a request I obtain the next message.
Error: Authorization Required
at /usr/local/lib/node_modules/composer-rest-server/node_modules/loopback/lib/application.js:392:21
How did you start the REST server?
composer-rest-server command line.
what options?
I tried again and I found the option with the "Secure or non Secure" request. so I'm sorry, it is working well at now. ;) thanks!
Has joined the channel.
Hi everyone, how is a transaction definition from the model file mapped to the function definition in the in logic file?
i.e. from the sample animaltracking-network: onAnimalMovementDeparture -> com.ibm.concerto.mozart.AnimalMovementDeparture
Is this mapping setup automatically or specified?
Hey guys, did you add new versions for the composer-* npm packages?
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=oJrtTBGfzzYtuJQaK) @dkneisly the preferred mechanism is to add the `@transaction` annotation and then use an `@param` annotation for the type of the transaction.
(see the docs)
@jorgedr new version went up, another new one is going up imminently (0.5.12)
Curious, are those new versions compatible with Fabric v.6?
Yep, we're not dropping v0.6 support any time soon.
We want to wait for v1.0 to stabilise, and for our v1.0 support to get a bit more testing by the community.
Cool.. One thing I did notice, in our package.json we were setting the required version for the composer packages as ^0.5.10 which I think it means install that version or a compatible one but the npm install started failing when you guys made the change. As soon as I removed ^ it started working again. I will look into it later to see if the error persisted. The error was about the version of npm being used not compatible with the packages being installed. But it looked as if it were coming from a dependency of the new composer packages and not necessarily for the composer packages itself.
Oh that's odd... Node 6?
We only support Node 6
Well, this was the first time that we were trying to push our application into a Bluemix Node.Js CloudFoundry instance. So I am not sure what version of node the buildpack uses. I left it alone for now because I did not want to open that can of worms
What I do know is that as soon as we started specifying explicitly the 0.5.10 version (vs ^0.5.10 ) it started working.
I _think_ it tries to pick a Node.js version that matches the application, and defaults to v4 - I seem to remember having to set something to force it to use v6
it's possibly these properties we put into our package.json files:
```
"engines": {
"node": ">=6",
"npm": ">=3"
},
```
That makes sense, I think the node version that was claiming to be using was 2.x
@dselman Thank you
Hi there it appears that we are correctly passing the process.env.COMPOSER_CONFIG into our node app. We also are creating our BusinessNetworkConnection, const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection; and then in our constructor we set this.bizNetworkConnection = new BusinessNetworkConnection(); When we call the bizNetworkConnection.connect method.. do we then set the arguments such as connectionProfileName and businessNetworkIdentifier to match what is in the COMPOSER_CONFIG env var, I'm not sure what arguments are required and how we point to what we are passing in via COMPOSER_CONFIG. Thanks for any pointers.
@dselman @sstone1 Hi, are there some guidelines regarding the chaincode files organization? Do all dependencies need be resolved by placing all dependent functions in the same file?
No, you are free to organize your files/functions are you wish.
No, you are free to organize your files/functions as you wish.
@dselman I tried to make an inheritance hierarchy like bellow and it didn't work till I placed both "BaseType" and "SpecializedType" code in the same file
```
//base type
function BaseType(name) {
this.name = name;
this.sayName();
}
BaseType.prototype = {
constructor: BaseType,
sayName: function (name) {
console.log(this.name);
}
}
//specialized type
function SpecializedType(name) {
BaseType.call(this, name);
}
SpecializedType.prototype = Object.create(BaseType.prototype);
SpecializedType.prototype.constructor = SpecializedType;
SpecializedType.ST1 = new SpecializedType("ST1");
```
it was complaining about no such function "sayName()" when running SpecializedType.ST1 = new SpecializedType("ST1");
Ah, yes -- that may be. You cannot 'require' one file from another, so the files have to be standalone. @sstone1 do you confirm? I assume all functions are loaded into the execution context.
Has joined the channel.
seems funny that it did ran
```
SpecializedType.prototype = Object.create(BaseType.prototype);
SpecializedType.prototype.constructor = SpecializedType;
```
which is referring the BaseType
but it is was failing at
```
SpecializedType.ST1 = new SpecializedType("ST1");
```
complaining about no such function "sayName()"
...but again, I'm just starting to befriend JS
@dselman @sstone1 I have question on participants in the perishable network sample. If we are building a network with 2 Growers, 2 Importers and 2 Shippers, what would be size of the network if you are building the network for v1.0. If we need HA, I would assume we will need 2-3 peers per participant. If we go with the assumption that 2 peers are sufficient. We will need around 12 peers. In that case, we will end up with 12 peers, 12 ca, 36 orderers to setup this network ? Understand this is example but I wanted to understand the relationship of the participant in the network model with actual network. If we are building the network for this business, are going to need peers for each grower that we are going to add to the network or is it possible to have single node in the network for all growers.
You should not confuse the participants in the network (farmers etc) with the maintainers of the network. It is very unlikely that each participant would want to run their own peer.
As a mental model, think of ISPs and the Internet, vs customers that just use the Internet.
The beauty of blockchain/Fabric is that everyone gets to decide how much trust they want to delegate.
So in this case, we will need just one maintainer for growers and one for all the importers.
In this scenario, perhaps the CO-OP for a large set of farmers run a peer.
Are we saying..the same for even shippers
ok
It's flexible -- it comes down to trust, skills and business model
If we are dealing with large shipping corporations, I would assume, we need separate peers for each shipper
Probably, yes. If they don't want to trust a central authority and want some independence, at the expense of running (or outsouring) the infra.
@tennenjl I don't remember seeing that error specifically but it sounds like a protocol issue -- that is sometimes an indication that you are connecting on the wrong port. E.g. connecting to the event hub or peer or vice-a-versa.
Is there a spot to find good query examples. I assume that the query is driven by a transaction (at least normally) and I believe I heard that when you get an object/asset in a query, that it will not have all IsRelatedTo objects resolved so you may have to get them ... but I'm just looking for some simple query examples and I'm struggling to find them. Thanks,
Nevermind, I got into the registry methods and found it ... assuming getall and then handling the filtering in the then is best option. If that is correct, I just need to verify that I can indeed return a list of matching assets to the REST caller.
Has joined the channel.
Has joined the channel.
Hello everyone! Quick question. Is fabric composer compatible to work with HL 0.6 , 1.0 , or both?
@jamesv84 it's compatible with HL 0.6 and 1.0-alpha
thanks!
Quick comment on tutorial 2 ... At the point of running npm install to build the bna ... would be good to reference to go into my-network directory. Also (and this could be my Xenial VM going a bit crazy) ... npm install is downloading a lot and appears hung on https:////registry.npmjs.org/composer-runtime (or that's huge). Otherwise, I have to say that it is a good soup to nuts run-thru (will say when npm install finishes if I run into other issues). Would love to see a follow on tutorial 3 with a bit more complexity (imports from multiple name spaces in model, query example returning assets w/some property set, ...).
Has joined the channel.
Hello, I ran the steps for installing composer playground locally: https://fabric-composer.github.io/tutorials/getting-started-playground.html
However, in connection profiles section it still says "It is not possible to add Connection Profiles in the Web Playground version of Fabric Composer. If you like what you see, you can install a a local version of Fabric Composer. "
I thought that's what I just did
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=bek729RBcaxveEdci) @dselman functions should work across files, but I haven't tried constructors/classes
@jamesv84 There is a hosted version of composer-playground (there is a menu option at the top of the fabric-composer site that takes you there), but this version doesn't support adding connection profiles to it yet to allow you to communicate with running Hyperledger fabrics. However if you want to run against a real hyperledger fabric locally then following the tutorial you have just followed will do exactly that by setting up a real instance of hyperledger fabric on your machine and setting up composer-playground to use it
Ok, thanks.
hi folks, the Quickstart guide for install Composer sample applications (v1.0) is available for you to try out - the doc link is here -> https://fabric-composer.github.io/unstable/installing/quickstart.html - be interested to have your feedback!
whats the command to deploy a .bna file to Bluemix? composer network deploy -a my-network.bna -i admin -s Xurw3yU9zI0l doesn't seem to work
@mohamoud.egal you need to create a connection profile that targets your bluemix provisioned system and then use an appropriate userid and secret. There is an SO that describes what needs to be done at
http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
Can Fabric Composer work with chaincode that are not created with it? i.e. if i have chaincode written in Go, can I construct a Fabric Composer client?
@allenc2016 what are you trying to achieve? Are you looking for the ability to write Composer transaction processor functions in Go, or are you looking to interface with existing Go chaincode?
existing code
i am investigating ways BPM can interact with blockchain
so what to consider a few scenarios
1. if there is already an existing chain (and I have no idea what it is being written with)... can I use Composer to interact with it?
or do i have to use the fabric-sdk
OK - so no. There is a defined set - and the only set - of chaincode functions in the Composer chaincode that get called by the Composer client. You cannot use Composer to call arbitrary chaincode functions.
thanks.
Hi, I have some client code (running as a node js app in Bluemix `this.bizNetworkConnection.connect(this.CONNECTION_PROFILE_NAME, this.businessNetworkIdentifier, this.enrollmentId, this.enrollmentSecret)`. The connect appears to be failing with the msg: 2017-04-22T03:35:33.403Z ERROR common/ConnectionProfileManager:getConnectionManager() No yet located the module {"0":"/home/vcap/app/node_modules/grpc/src/node/extension_binary/grpc_node.node: invalid ELF header"}$ I wanted to check and see if anyone had any ideas on how to resolve it. Thanks!
Hi, I have some client code (running as a node js app in Bluemix `this.bizNetworkConnection.connect(this.CONNECTION_PROFILE_NAME, this.businessNetworkIdentifier, this.enrollmentId, this.enrollmentSecret)`. The connect appears to be failing with the msg: 2017-04-22T03:35:33.403Z ERROR common/ConnectionProfileManager:getConnectionManager() No yet located the module {"0":"/home/vcap/app/node_modules/grpc/src/node/extension_binary/grpc_node.node: invalid ELF header"}$ I wanted to check and see if anyone had any ideas on how to resolve it. Thanks!
Hi, I have some client code (running as a node js app in Bluemix `this.bizNetworkConnection.connect(this.CONNECTION_PROFILE_NAME, this.businessNetworkIdentifier, this.enrollmentId, this.enrollmentSecret)`. The connect appears to be failing with the msg: 2017-04-22T03:35:33.403Z ERROR common/ConnectionProfileManager:getConnectionManager() No yet located the module {"0":"/home/vcap/app/node_modules/grpc/src/node/extension_binary/grpc_node.node: invalid ELF header"}$ I wanted to check and see if anyone had any ideas on how to resolve it. Thanks!
Question - can transactions return JSON as a response?
@jamesv84 no -- Fabric doesn't allow return values from invoke AFAIK.
@tennenjl check you are connecting to the right port -- sounds like you may be connecting to the event hub port or peer.
@dselman @jamesv84 true for v0.6, but for v1.0 we can return data from the chaincode - what are you looking to do?
@tennenjl invalid ELF header means the grpc binary code isn't a valid binary file (at least for your operating system). When you pushed your app on bluemix were there any problems reported when it resolved the node modules for your application ?
Has joined the channel.
Help-> I am new to fabric, right now I am setting up fabric in aws. I need installation details for fabric composer 1.0. the steps mentioned https://fabric-composer.github.io/unstable/installing/quickstart.html are these valid for 1.0?
Weekend fun: https://dselman.github.io/fabman/
@davidkel Many thanks. I will check on that, I think there may have been problems if I used .cfignore to not upload the node_modules directory. I'll try that again and see what happens.
@sstone1 I should clarify. What I am trying to do is use the compose rest server to create rest APIs that will allow someone to retrieve a person record by name (which is a field, not the "identified by" id). I am hoping to supply the rest URL with a name as a parameter and and for it to return a Json object with all the person's information. Is that possible?
@davidkel As per your suggestion, I now see the message notsup Not compatible with your version of node/npm: fabric-ca-client@1.0.0-alpha.0 when I try to cf push my code
@tennenjl when you push to bluemix, bluemix determines you are a node js app via the existence of package.json I think. From there it then needs to determine which nodejs buildpack to use. So it should say what level of node/npm it has chosen. It could be that it's chosen a level which isn't supported by hyperledger fabric node client. Best thing to do would be to be explicit about using node version 6 say 6.9.5 or 6.10.2. I would assume bluemix would use information in package.json to determine that.
@tennenjl when you push to bluemix, bluemix determines you are a node js app via the existence of package.json I think. From there it then needs to determine which nodejs buildpack to use. So it should say what level of node/npm it has chosen. It could be that it's chosen a level which isn't supported by hyperledger fabric node client. Best thing to do would be to be explicit about using node version 6 say 6.9.5 or 6.10.2. I would assume bluemix would use the standard information to defining levels of node in package.json to determine that.
@davidkel Many thanks. I just modified the engines stanza in the manifest.yml and am trying again.
@davidkel Thanks again, that got me past that error, now on to the next one :-)
Hi, when I run composer network list against my original profile and network, it works fine, but if I run composer network list against a different network and profile (with the appropriate creds), it fails with the message: Certificate has not been signed by a trusted authority. [x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "eca")] I am pointing to the same keyValStore directory and I have tried deleting the entry for one specific user before running the command. Any ideas on what I could be doing wrong? Thanks!
@tennenjl did you add a certificate to your profile, as described here: http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
@jamesv84 that would be a content-based query -- which is not supported on HLF v0.6, and is only supported on HLF v1 when using CouchDB as the world-state DB. We have not yet implemented support for complex stories -- that is being tracked under this issue: https://github.com/hyperledger/composer/issues/543
Has joined the channel.
@dselman Yes, thanks, I did add a cert to the profile. Actually I cut and paste the cert from the working profile. Thanks again for the suggestion.
@dselman we should get Composer set up in Gerrit
and JIRA if that isn't already the case
@cbf you can attempt to convince me we should do that at the hackfest 😉
@sstone1 I'm hoping that: 1/ you come back with a clear understanding of the requirements. 2/ we can meet those with Git, even if it means some overhead for the maintainers :-)
Here is the event: https://www.hyperledger.org/event/washington-d-c-hyperledger-hackfest
@dselman Thanks!
So I was doing something really silly which I should have realized where I was losing my credentials every time I pushed changes up to Bluemix. Now, I see the proper creds in my /home/vcap/app/.composer-credentials dir, but when I attempt to connect using this.bizNetworkConnection.connect(this.CONNECTION_PROFILE_NAME, this.businessNetworkIdentifier, this.enrollmentId, this.enrollmentSecret), I see the following error in the logs:
2017-04-23T00:38:59.846Z ERROR HFCUtil :queryChainCode() onError {"name":"user_type2_2","enrollment":{"key":"323decc445093ff74bceff5cadd38345c9795956013ef4f9af1bafa8c2380165","cert":"308201a130820147a003020102020101300a06082a8648ce3d0403033029310b3009060355040613025553310c300a060355040a130349424d310c300a06035504031303656361301e170d3137303432333030323130375a170d3137303732323030323130375a3039310b3009060355040613025553310c300a060355040a130349424d311c301a06035504030c13757365725f74797065325f325c67726f7570313059301306072a8648ce3d020106082a8648ce3d03010703420004db42ae18fa1be2c8cb5a7a01a652456c56c9fadb128c1a323858829e7906ec138410c5baacc9ebd2fe7112510f5df7c3e3c3d31bfbb40d4392ac14616cfdd166a350304e300e0603551d0f0101ff040403020780300c0603551d130101ff04023000300d0603551d0e0406040401020304300f0603551d2304083006800401020304300e06065103040506070101ff040132300a06082a8648ce3d0403030348003045022100c12ffa054960d738d3ca43c069e8f8dc8bf6bc2d87847e6e3fb85a282ff2a16a0220511d9cbb7dee4fcd657621606080e4b0eddede0e48e8672ecb67e6b7c6543df9","chainKey":"2d2d2d2d2d424547494e204543445341205055424c4943204b45592d2d2d2d2d0a4d466b77457759484b6f5a497a6a3043415159494b6f5a497a6a304441516344516741457a326c774633544950387a6857737a596236562f706d7578784458370a303272454d51432b426e735352624661383965765a55476658344b78543353666d51655a6c6b314a6c313964694331396e6b797a346b2f6943773d3d0a2d2d2d2d2d454e44204543445341205055424c4943204b45592d2d2d2d2d0a","queryStateKey":{"type":"Buffer","data":[159,4,3,12,160,240,35,134,216,155,30,174,83,153,244,139,57,6,205,186,242,26,54,239]}}} {"0":{"error":{"status":"FAILURE","msg":{"0":69,"1":114,"2":114,"3":111,"4":114,"5":58,"6":84,"7":114,"8":97,"9":110,"10":115,"11":97,"12":99,"13":116,"14":105,"15":111,"16":110,"17":32,"18":111,"19":114,"20":32,"21":113,"22":117,"23":101,"24":114,"25":121,"26":32,"27":114,"28":101,"29":116,"30":117,"31":114,"32":110,"33":101,"34":100,"35":32,"36":119,"37":105,"38":116,"39":104,"40":32,"41":102,"42":97,"43":105,"44":108,"45":117,"46":114,"47":101,"48":58,"49":32,"50":69,"51":114,"52":114,"53":111,"54":114,"55":58,"56":32,"57":84,"58":104,"59":101,"60":32,"61":98,"62":117,"63":115,"64":105,"65":110,"66":101,"67":115,"68":115,"69":32,"70":110,"71":101,"72":116,"73":119,"74":111,"75":114,"76":107,"77":32,"78":104,"79":97,"80":115,"81":32,"82":98,"83":101,"84":101,"85":110,"86":32,"87":117,"88":110,"89":100,"90":101,"91":112,"92":108,"93":111,"94":121,"95":101,"96":100}},"msg":"Error:Transaction or query returned with failure: Error: The business network has been undeployed"}}$
~
If I run the cli from my mac however, I can do a network list and it returns the expected results
Hi
I am facing a small probelm
Cannot create container for service orderer0: Conflict. The container name "/orderer0" is already in use by container "ef21ee5b13fedb1e885bed0cb041214f12f236915501c158f8c83a2a13134c63". You have to remove (or rename) that container to be able to reuse that name.
Where should I remove this container
Docker images doesn't show anything. I have also removed files from crpto/ordered
It gives me error message "docker rm" requires at least 1 argument(s).
@SahilKapoor run "docker rm $(docker ps -aq)"
If it gives an error then add -f at the end
and docker images doesn't show any image other than fabric docker images
Did that and also tried after restarting docker service
@assasinx93 Tried few things, it worked.
But a new error now
node create-channel.js
module.js:471
throw err;
^
Error: Cannot find module '/root/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/grpc_node.node'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.
Run 'npm install' inside the `composer-sample-applications-hlfv1` dir and check if there are any errors. Make sure you are using a supported version of Node.
Good morning, I'm still trying to get connect from a client working from a nodejs app running in Bluemix. From the client side, the connect is throwing an error: OUT Uncaught Exception: Error: {"created":"@1492949674.332522442","description":"Secure read failed","file":"../src/core/lib/security/transport/secure_endpoint.c","file_line":157,"grpc_status":14,"referenced_errors":[{"created":"@1492949674.332495268","description":"OS Error","errno":104,"file":"../src/core/lib/iomgr/tcp_posix.c","file_line":229,"os_error":"Connection reset by peer","syscall":"recvmsg"}]}
2017-04-23T08:14:34.35-0400 [APP/0] OUT at /home/vcap/app/node_modules/grpc/src/node/src/client.js:634:14. On the peer I see OUT - [31m12:14:34.334 [eventhub_producer] Chat -> ERRO 19e[0m Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled". The last thing I see (shortened for visibility) in the client trace is 2017-04-23T12:01:01.067Z INFO HFCUtil :queryChainCode() onComplete {"name":"user_type2_2","enrollment":{"key":"........ }}} {"0":{"chaincodeID":"96c306f8a31be4302ef9656511891483271edf143f2092a13ef6bf86b979cbc2","fcn":"getBusinessNetwork","args":[],"attrs":["userID"]}}$ Wondering if anyone had any ideas on how to get past this. Thanks!
@dselman When I fireup fabric-composer after installing and following the readme on my local machine, I get the following error on the browser Error: Collection with ID '$sysdata' does not exist
@movee2005 you need to clear your browser local storage, I suspect you've used an old version of `composer-ui` or `composer-playground` before.
You can either clear all your browsing history/data etc or run `localStorage.clear()` in the JavaScript console
@sstone1 Thank you.. That is what I figured...
@tennenjl can you paste in the connection profile?
Yes, thanks! Been continuing to play around with it and now trying to get everything just running locally
{
"type": "hlf",
"membershipServicesURL": "grpcs://363745d1427447fcb7ee140a23e60012-ca.us.blockchain.ibm.com:30002",
"peerURL": "grpcs://363745d1427447fcb7ee140a23e60012-vp0.us.blockchain.ibm.com:30002",
"eventHubURL": "grpcs://363745d1427447fcb7ee140a23e60012-vp0.us.blockchain.ibm.com:31002",
"deployWaitTime": 300,
"invokeWaitTime": 30,
"certificate": "-----BEGIN CERTIFICATE-----\nMIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j\nb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB\nCSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97\nnh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt\n43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P\nT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4\ngdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO\nBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR\nTLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw\nDQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr\nhMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg\n06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF\nPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls\nYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk\nCAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4=\n-----END CERTIFICATE-----\n",
"certificatePath": "/certs/peer/cert.pem",
"networks": {
"digitalproperty-network": "c28b138ebd3ed6e2db353c882dc5a9f59a9d8b70755fe5288811f5d96a5106d0",
"usps-imts-network": "15dc09afd0dae151b6f49241f8abb6484c6e6d0cdbf1ecb524de92132b3b0348"
}
}
There's some certs missing from that certificate setting
`-----BEGIN CERTIFICATE-----\nMIID6TCCA26gAwIBAgIQCiYEWw1faoRpM2xufaiPLTAKBggqhkjOPQQDAjBMMQsw\nCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMSYwJAYDVQQDEx1EaWdp\nQ2VydCBFQ0MgU2VjdXJlIFNlcnZlciBDQTAeFw0xNjA2MDcwMDAwMDBaFw0xOTA2\nMTIxMjAwMDBaMIGJMQswCQYDVQQGEwJVUzERMA8GA1UECBMITmV3IFlvcmsxDzAN\nBgNVBAcTBkFybW9uazE0MDIGA1UEChMrSW50ZXJuYXRpb25hbCBCdXNpbmVzcyBN\nYWNoaW5lcyBDb3Jwb3JhdGlvbjEgMB4GA1UEAwwXKi51cy5ibG9ja2NoYWluLmli\nbS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARTKAZypDOqw34HWujQeL82\nj1e9rN1inpN6ngrq49+OpYIe8ckHnJhsWPpf+zeIQePboDQVUTDtYXh7212BsVoX\no4IB8jCCAe4wHwYDVR0jBBgwFoAUo53mH/naOU/AbuiRy5Wl2jHiCp8wHQYDVR0O\nBBYEFK+1RoBnUnb8nr2hNtkUu3FRrbYuMDkGA1UdEQQyMDCCFyoudXMuYmxvY2tj\naGFpbi5pYm0uY29tghV1cy5ibG9ja2NoYWluLmlibS5jb20wDgYDVR0PAQH/BAQD\nAgeAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjBpBgNVHR8EYjBgMC6g\nLKAqhihodHRwOi8vY3JsMy5kaWdpY2VydC5jb20vc3NjYS1lY2MtZzEuY3JsMC6g\nLKAqhihodHRwOi8vY3JsNC5kaWdpY2VydC5jb20vc3NjYS1lY2MtZzEuY3JsMEwG\nA1UdIARFMEMwNwYJYIZIAYb9bAEBMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3\nLmRpZ2ljZXJ0LmNvbS9DUFMwCAYGZ4EMAQICMHsGCCsGAQUFBwEBBG8wbTAkBggr\nBgEFBQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29tMEUGCCsGAQUFBzAChjlo\ndHRwOi8vY2FjZXJ0cy5kaWdpY2VydC5jb20vRGlnaUNlcnRFQ0NTZWN1cmVTZXJ2\nZXJDQS5jcnQwDAYDVR0TAQH/BAIwADAKBggqhkjOPQQDAgNpADBmAjEA7LViaN74\nOwIp/zqfwSRvURg965+m73/edCeNKrsLf6GuE0sLwpX6pQNnDlr6SzGnAjEA+qk0\nsYRnd2gCQeD9fWbCJIw0vJDqeZr1WJ64aVoJ8kyASzY/yoarSm2wqujXJwEf\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIDrDCCApSgAwIBAgIQCssoukZe5TkIdnRw883GEjANBgkqhkiG9w0BAQwFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0xMzAzMDgxMjAwMDBaFw0yMzAzMDgxMjAwMDBaMEwxCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxJjAkBgNVBAMTHURpZ2lDZXJ0IEVDQyBT\nZWN1cmUgU2VydmVyIENBMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE4ghC6nfYJN6g\nLGSkE85AnCNyqQIKDjc/ITa4jVMU9tWRlUvzlgKNcR7E2Munn17voOZ/WpIRllNv\n68DLP679Wz9HJOeaBy6Wvqgvu1cYr3GkvXg6HuhbPGtkESvMNCuMo4IBITCCAR0w\nEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwNAYIKwYBBQUHAQEE\nKDAmMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQgYDVR0f\nBDswOTA3oDWgM4YxaHR0cDovL2NybDMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0R2xv\nYmFsUm9vdENBLmNybDA9BgNVHSAENjA0MDIGBFUdIAAwKjAoBggrBgEFBQcCARYc\naHR0cHM6Ly93d3cuZGlnaWNlcnQuY29tL0NQUzAdBgNVHQ4EFgQUo53mH/naOU/A\nbuiRy5Wl2jHiCp8wHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUwDQYJ\nKoZIhvcNAQEMBQADggEBAMeKoENL7HTJxavVHzA1Nm6YVntIrAVjrnuaVyRXzG/6\n3qttnMe2uuzO58pzZNvfBDcKAEmzP58mrZGMIOgfiA4q+2Y3yDDo0sIkp0VILeoB\nUEoxlBPfjV/aKrtJPGHzecicZpIalir0ezZYoyxBEHQa0+1IttK7igZFcTMQMHp6\nmCHdJLnsnLWSB62DxsRq+HfmNb4TDydkskO/g+l3VtsIh5RHFPVfKK+jaEyDj2D3\nloB5hWp2Jp2VDCADjT7ueihlZGak2YPqmXTNbk19HOuNssWvFhtOyPNV6og4ETQd\nEa8/B6hPatJ0ES8q/HO3X8IVQwVs1n3aAr0im0/T+Xc=\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j\nb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB\nCSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97\nnh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt\n43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P\nT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4\ngdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO\nBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR\nTLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw\nDQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr\nhMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg\n06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF\nPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls\nYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk\nCAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4=\n-----END CERTIFICATE-----\n`
is the example from the SO link
the only cert you have is the CA root cert which probably explains the errors
ah
thank you!
will try that
@davidkel I went to that SO page (http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service) but the page that it links to with info. on userid & secret isn't working (screenshot below). I copied the format & inserted it into my connections file then went to Bluemix to get fill out the variable. I only got membershipServicesURL & other couldn't find where on Bluemix to get peerURL, eventHubURL, keyValStore, certificate, certificatePath. Are these variables supposed to be changed or should I keep them the way I found them on the SO page?
Message Attachments
Message Attachments
@mohamoud.egal you have to replace values in the connection profile and the user ID/secret with values you get from the Bluemix Console
This is all documented on the SO page:
>>> The hostname and port numbers in the URLs must come from the Bluemix dashboard. I find it easiest to get this information by navigating to "Service Credentials" and viewing the default credentials "Credentials-1"
This is all documented on the SO page:
> The hostname and port numbers in the URLs must come from the Bluemix dashboard. I find it easiest to get this information by navigating to "Service Credentials" and viewing the default credentials "Credentials-1"
You don't need the missing link.
Message Attachments
The SO page explains how you get the peerURL value from the Bluemix page
And no, the user ID/secret cannot be provided via the connection profile.
@sstone1 Thanks for your patience I got most of the values correct. However 2 questions: 1) is the membershipServicesURL url the same as the peerURL or the url copied from the Network section of Bluemix (screenshot below)? 2) which part of the https://blockchain-certs.mybluemix.net/us.blockchain.ibm.com.cert is the Certificate value?
Message Attachments
yes - you need the membership services URL, not the peer URL for that property
it's listed as the `ca` in the service credentials
and the whole of that file is the value of the `certificate` property
Message Attachments
@sstone1
lastly, how can I convert the certifcate file into json to put into the Connections.json file?
paste the contents into this tool
http://www.freeformatter.com/javascript-escape.html
click escape
you should get a single line string with `\n` in it
you can put that in as the value of the `certificate` property
Message Attachments
open it in a text editor
Message Attachments
"enrollId": "admin",
"enrollSecret": "f11150e727",
`composer -v` ?
I made sure to use the admin & secret from Credentials-1
composer-cli v0.5.10
composer-admin v0.5.10
composer-client v0.5.10
composer-common v0.5.10
composer-runtime-hlf v0.5.10
composer-connector-hlf v0.5.10
you should upgrade to v0.5.12
the latest version includes a fix for this i believe
`npm upgrade -g composer-cli`
is it supposed to upgrade everything else?
Mohamouds-MacBook-Pro:dist mohamoudegal_ibm$ pwd
/Users/mohamoudegal_ibm/Desktop/playground/my-network/dist
Mohamouds-MacBook-Pro:dist mohamoudegal_ibm$ composer network deploy -a my-network.bna -i admin -s f11150e727
Deploying business network from archive: my-network.bna
Error: Failed to read connection profile 'defaultProfile'. Error was SyntaxError: Unexpected token / in JSON at position 0
Command failed
Mohamouds-MacBook-Pro:dist mohamoudegal_ibm$
ran the command again
looks like the connection profile is corrupt?
what do the contents look like?
Message Attachments
yeah
you can't have comments in a JSON file
lol that helps
where are .composer-credentials stored if not the home directory?
Mohamouds-MacBook-Pro:dist mohamoudegal_ibm$ composer network deploy -a my-network.bna -i admin -s f11150e727
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.7
Description: The Hello World of Fabric Composer samples
Error: ENOENT: no such file or directory, mkdir '/home/composer/.composer-credentials'
Command failed
Mohamouds-MacBook-Pro:dist mohamoudegal_ibm$
you want to change the value of the keyValStore to be your home directory
`/home/composer` probably doesn't exist on your machine
okay
On composer update i get this error suddenly,
Error: Error: sql: no rows in result set
Command failed
I'm trying to locate where I put that file on my machine. Do you know where it normally gets stored?
@karthikworks it looks you have already enrolled with that ID/secret but don't have the certificate in your keyValStore?
how do i check that ?
but this error is suddenly coming ...
Any ideas on how to rectify this issue ?
you can't check it
you can look in your keyValStore directory
and see if there is a `member.
Mohamouds-MacBook-Pro:fabric mohamoudegal_ibm$ cd /Users/mohamoudegal_ibm/.composer-connection-profiles/defaultProfile/connection.json
-bash: cd: /Users/mohamoudegal_ibm/.composer-connection-profiles/defaultProfile/connection.json: Not a directory
do you mean like this? @sstone1
"/Users/mohamoudegal_ibm" is my home directory
@sstone1 ok will check it out
yes, but it's a file so you can't cd to it ;)
too much coffee in the system been making weird mistakes like that :grimacing:
:joy:
this gets me the connections.json file I'm not seeing why it should be the directory for the keyvalstore
Mohamouds-MacBook-Pro:fabric mohamoudegal_ibm$ cd /Users/mohamoudegal_ibm/.composer-connection-profiles/defaultProfile
Mohamouds-MacBook-Pro:defaultProfile mohamoudegal_ibm$ ls
connection.json
@mohamoud.egal default keystore should be /Users/mohamoudegal_ibm/.composer_credentials
In your connections.json you can specify the dir for your keystore
gotcha I did that after I put 2 & 2 together & now its deploying itself
for example for Bluemix nodejs app I have it as "keyValStore": "/home/vcap/app/.composer-credentials",
@mohamoud.egal :thumbsup: awesome... been trying to learn all of this as well :-)
Mohamouds-MacBook-Pro:dist mohamoudegal_ibm$ composer network deploy -a my-network.bna -i admin -s f11150e727
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.7
Description: The Hello World of Fabric Composer samples
✔ Deploying business network definition. This may take a minute...
Command succeeded
Mohamouds-MacBook-Pro:dist mohamoudegal_ibm$
:clap:
great!
yea I'm using this to prep for a Blockchain presentation/ Composer demo that I'll be giving tomorrow https://www.meetup.com/Coinspace-HQ/events/238476525/
clients love Composer & I want to make sure I know what I'm talking about
@sstone1 @dselman Thanks to you guys I have it running on Bluemix. Thank you!
@sstone1 @dselman thanks fellas
Message Attachments
To restart the REST server using the same options, issue the following command:
composer-rest-server -p defaultProfile -n my-network -i admin -s f11150e727 -N always -S true
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
events.js:160
throw er; // Unhandled 'error' event
^
Error: {"created":"@1492979554.429128000","description":"Secure read failed","file":"../src/core/lib/security/transport/secure_endpoint.c","file_line":157,"grpc_status":14,"referenced_errors":[{"created":"@1492979554.429106000","description":"OS Error","errno":54,"file":"../src/core/lib/iomgr/tcp_posix.c","file_line":229,"os_error":"Connection reset by peer","syscall":"recvmsg"}]}
at ClientDuplexStream._emitStatusIfDone (/Users/mohamoudegal_ibm/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/Users/mohamoudegal_ibm/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:169:8)
at /Users/mohamoudegal_ibm/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:634:14
Mohamouds-MacBook-Pro:defaultProfile mohamoudegal_ibm$
this error even shut down the REST server. Do you know why that is? And what was wrong with my syntax?
@sstone1
you should remove the `-S true`
that enables security which is still a work in progress
does the error happen after a couple of minutes?
that's sort of a known problem - there is a problem with long term connections to bluemix as the connections get terminated after a certain period of time
you can run it in a loop like `while [ true ]; do composer-rest-server -p defaultProfile -n my-network -i admin -s f11150e727 -N always; done`
I enabled namespaces and security which might be why it failed. I'm running it again without those features
? Enter your Fabric Connection Profile Name: defaultProfile
? Enter your Business Network Identifier : my-network
? Enter your Fabric username : admin
? Enter your secret: f11150e727
? Specify if you want namespaces in the generated REST API: never use namespaces
? Specify if you want the generated REST API to be secured: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -p defaultProfile -n my-network -i admin -s f11150e727 -N never
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/Users/mohamoudegal_ibm/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/Users/mohamoudegal_ibm/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:169:8)
at /Users/mohamoudegal_ibm/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:634:14
that didn't help
@sstone1 are you suggesting to use that command instead of just composer-rest-server?
nvm it worked
How can I erase/delete my biz. network on composer without having to empty local storage?
there's currently not a button to reset a business network in the new playground
@EdMoffatt that ^ keeps coming up (not being able to easily clear the data in the playground)
Quick Q (likely dumb Q) on npm install (from tutorial 2). The npm install would appear to be all about setting up a runnable nodeJS environment presumably for the Embedded runtime. Is this purely for unit tests? Probably worth it either way, but are there other common uses for the Embedded runtime or any other benefits of the npm install? Thanks,
@MikeC711 it does install the embedded runtime for the unit tests, and also installs mocha/chai (test framework), eslint (checking code for possible errors), jsdoc (generating docs), and license-check (validating license headers)
the embedded runtime is primarily for testing; we've looked at unit testing using something like mocha, and also BDD testing using cucumber
it could also be integrated into an editor (such as atom or vscode), and used to develop/test a business network definition in the same way as the playground uses the web runtime
Has joined the channel.
how do we add to composer-credentials ?
I think the folder is empty..
@karthikworks files get added to that folder when you enroll (login). those files contain your enrollment certificates (public/private keys).
when you use the commands or APIs with an ID that you haven't yet enrolled with, then we call enroll and ask membership services for an enrollment certificate.
if you don't give it a valid ID/secret, or if the secret has been used before, then enrollment fails and you don't get a file in that directory.
composer network deploy --archiveFile newtest-network-dev.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
doesnt seem to work..
so i will have to change the enrollid & enrollSecret ?
where is the fabric you are deploying to?
its running locally
on a separate terminal
Solved it..
what was the solution?
On the connection profile file the networks were listed as blank, once i deleted it and tried again.. the member.
Now i have another issue.. i think after the update it has started..
Deployed chain-code (0.5.12) is incompatible with client (0.5.10) - this is the new error i am getting now ...
composer -v gives
composer-cli v0.5.12
composer-admin v0.5.12
composer-client v0.5.12
composer-common v0.5.12
composer-runtime-hlf v0.5.12
but i am getting this error
Error: Deployed chain-code (0.5.12) is incompatible with client (0.5.10)
this happens on yo fabric-composer
lol never mind... solved it by upgrading generator-fabric-composer
to 0.5.12
Hi can anybody give me a start guid for fabric composer ? thanks
https://fabric-composer.github.io/tutorials/tutorialindex.html
thanks @karthikworks
@sstone1 Thanks Simon. That's more than good enough as is for my purposes. As we describe (in our presentation materials) what steps we took, I want to be able to accurately describe the reason (ie: npm install is not required per se ... but more than worth it). Thanks,
1 more quick questions per tutorial 2 ...
In Commodity ... if it has been o Trader owner instead of --> Trader Owner (I know, wouldn't make sense, but work w/me) ... would it then have been an simple assignment of my ref to owner instead of a factory.newRelationship
Thanks,
Hello , I have setup Ibm blockchain v1 beta service on bluemix. Now i want to deploy my .bna file to this blockchain service using composer-cli.
While using composer network deploy command i got an error "Error: PEM encoded certificate is required."
I am using the following format for connection.json.
{
"type": "hlfv1",
"orderers": [
"grpcs://o.blockchain.ibm.com:14105"
],
"ca": "https://ca.blockchain.ibm.com:14110",
"peers": [
{
"requestURL": "grpcs://p1.blockchain.ibm.com:14121",
"eventURL": "grpcs://p1.blockchain.ibm.com:14120"
},
{
"requestURL": "grpcs://p2.blockchain.ibm.com:14121",
"eventURL": "grpcs://p2.blockchain.ibm.com:14120"
}
],
"keyValStore": "/home/vinitesh/.hfc-key-store",
"channel": "ServicePartnerChannel",
"mspID": "OrdererMSP",
"deployWaitTime": "300",
"invokeWaitTime": "100",
"certificate": "-----BEGIN CERTIFICATE-----\r\nMIIElDCCA3ygAwIBAgIQAf2j627KdciIQ4tyS8+8kTANBgkqhkiG9w0BAQsFADBh\r\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\r\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\r\nQTAeFw0xMzAzMDgxMjAwMDBaFw0yMzAzMDgxMjAwMDBaME0xCzAJBgNVBAYTAlVT\r\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxJzAlBgNVBAMTHkRpZ2lDZXJ0IFNIQTIg\r\nU2VjdXJlIFNlcnZlciBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\r\nANyuWJBNwcQwFZA1W248ghX1LFy949v/cUP6ZCWA1O4Yok3wZtAKc24RmDYXZK83\r\nnf36QYSvx6+M/hpzTc8zl5CilodTgyu5pnVILR1WN3vaMTIa16yrBvSqXUu3R0bd\r\nKpPDkC55gIDvEwRqFDu1m5K+wgdlTvza/P96rtxcflUxDOg5B6TXvi/TC2rSsd9f\r\n/ld0Uzs1gN2ujkSYs58O09rg1/RrKatEp0tYhG2SS4HD2nOLEpdIkARFdRrdNzGX\r\nkujNVA075ME/OV4uuPNcfhCOhkEAjUVmR7ChZc6gqikJTvOX6+guqw9ypzAO+sf0\r\n/RR3w6RbKFfCs/mC/bdFWJsCAwEAAaOCAVowggFWMBIGA1UdEwEB/wQIMAYBAf8C\r\nAQAwDgYDVR0PAQH/BAQDAgGGMDQGCCsGAQUFBwEBBCgwJjAkBggrBgEFBQcwAYYY\r\naHR0cDovL29jc3AuZGlnaWNlcnQuY29tMHsGA1UdHwR0MHIwN6A1oDOGMWh0dHA6\r\nLy9jcmwzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEdsb2JhbFJvb3RDQS5jcmwwN6A1\r\noDOGMWh0dHA6Ly9jcmw0LmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEdsb2JhbFJvb3RD\r\nQS5jcmwwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8v\r\nd3d3LmRpZ2ljZXJ0LmNvbS9DUFMwHQYDVR0OBBYEFA+AYRyCMWHVLyjnjUY4tCzh\r\nxtniMB8GA1UdIwQYMBaAFAPeUDVW0Uy7ZvCj4hsbw5eyPdFVMA0GCSqGSIb3DQEB\r\nCwUAA4IBAQAjPt9L0jFCpbZ+QlwaRMxp0Wi0XUvgBCFsS+JtzLHgl4+mUwnNqipl\r\n5TlPHoOlblyYoiQm5vuh7ZPHLgLGTUq/sELfeNqzqPlt/yGFUzZgTHbO7Djc1lGA\r\n8MXW5dRNJ2Srm8c+cftIl7gzbckTB+6WohsYFfZcTEDts8Ls/3HB40f/1LkAtDdC\r\n2iDJ6m6K7hQGrn2iWZiIqBtvLfTyyRRfJs8sjX7tN8Cp1Tm5gr8ZDOo0rwAhaPit\r\nc+LJMto4JQtV05od8GiG7S5BNO98pVAdvzr508EIDObtHopYJeS4d60tbvVS3bR0\r\nj6tJLp07kzQoH3jOlOrHvdPJbRzeXDLz\r\n-----END CERTIFICATE-----\r\n-----BEGIN CERTIFICATE-----\r\nMIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh\r\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\r\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\r\nQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT\r\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j\r\nb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG\r\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB\r\nCSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97\r\nnh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt\r\n43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P\r\nT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4\r\ngdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO\r\nBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR\r\nTLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw\r\nDQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr\r\nhMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg\r\n06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF\r\nPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls\r\nYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk\r\nCAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4=\r\n-----END CERTIFICATE-----\r\n",
"cert_path":"/certs/peer/cert.pem"
}
Has joined the channel.
Good morning guys, I have a question regarding the composer-client library. Basically we have a REST API server that will the one responsible to talk to a Fabric instance when requests come in. In such scenario we could have multiple requests coming at the same time and being routed to the same REST API server instance. So my question is, is the composer-client library stateless so that I can handle multiple requests simultaneously?
Good morning guys, I have a question regarding the composer-client library. Basically we have a REST API server that will be the one responsible to talk to a Fabric instance when requests come in. In such scenario we could have multiple requests coming at the same time and being routed to the same REST API server instance. So my question is, is the composer-client library stateless so that I can handle multiple requests simultaneously?
Good morning guys, I have a question regarding the composer-client library. Basically we have a REST API server that will be the one responsible to talk to a Fabric instance when requests come in. In such scenario we could have multiple requests coming at the same time and being routed to the same REST API server instance. So my question is, is the composer-client library stateless so that it can handle multiple requests simultaneously?
@vinitesh The connection profile isn't correct. For HLF V1 alpha and TLS Support its as follows :-
```
{
type: 'hlfv1',
orderers: [
{
url: 'grpcs://localhost:7050',
cert: '
thanks @davidkel In my network i am having 2 members so total 4 peers and CAs , 2 for each member and 2 msid group PeerOrg1 and PeerOrg2. Now if i want to deploy the .bna to all peers then how can i give details of multiple ca in the connection file
or i should deploy the .bna seperately for each member?
@vinitesh I would suggesting trying to deploy to each organisation separately.
@vinitesh I would suggest trying to deploy to each organisation separately.
@vinitesh but then you can interacting with that could be a problem
@vinitesh but then interacting with that could be a problem
@vinitesh but then interacting with that could be a problem. I'm thinking about the endorsement policy for example if you need to get at least 1 peer from each organisation to endorse then you need to be able to send requests to all the peers in the channel
thanks @davidkel , So in 1 org i have 2 peers and 2 ca , do i need to mention both ca in the connection file
or its just there for failover recovery
or its just there for failover recovery?
You only need to define 1 ca in the connection profile. We don't support any type of failover capability
Thanks @davidkel for the help .Now i deployed .bna network into the bluemix. Should i be able to see the generic chaincode for composer in the chaincode section of blockchain service?
@vinitesh can you do a network ping ? if you can then composer runtime is running. If you can't see something you expect to see in the bluemix interface and you can interact with your business network ok then I suggest contacting bluemix about it
thanks @davidkel i am able to ping and query my network. will follow the rest with bluemix support
Peer not finding membersrvc again (docker-compose?). I had an issue before where, because I was docker-compose 1.12 (and pip installed), my peer failed because it could not reach membersrvc, I am having that problem again (or so it seems) and my versions are good:
docker -v && docker-compose -v && node -v && npm -v
Docker version 17.04.0-ce, build 4845c56
docker-compose version 1.11.2, build dfed245
v6.10.1
4.4.4
The error in peer (and I see none in membersrvc) is:
[crypto] Errorf -> ERRO 01e[0m [validator.test_vp0] Failed requesting read certificate [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure].
[crypto] Errorf -> ERRO 01f[0m [validator.test_vp0] Failed requesting ECA certificate [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure].
[crypto] Errorf -> ERRO 020[0m [validator.test_vp0] Failed getting ECA certificate [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure].
[crypto] Errorf -> ERRO 021[0m [validator.test_vp0] Failed retrieving ECA certs chain [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure].
[crypto] Errorf -> ERRO 022[0m [validator.test_vp0] Failed registering node crypto engine [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure].
[crypto] Errorf -> ERRO 023[0m [validator.test_vp0] Failed registering peer [test_vp0]: [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure]
[crypto] Errorf -> ERRO 024[0m [validator.test_vp0] Failed registering [test_vp0]: [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure]
[crypto] RegisterValidator -> ERRO 025[0m Failed registering validator [test_vp0] with name [test_vp0] [rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure].
Error: rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure
grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: dial tcp: lookup membersrvc on 127.0.0.11:53: read udp 127.0.0.1:55551->127.0.0.11:53: read: connection refused"; Reconnecting to {"membersrvc:7054"
@vinitesh fyi...there was the following problem awhile ago, https://github.ibm.com/IBM-Blockchain/ui-development/issues/496 so you might run into that
Hello, In my transaction processor function i am creating and adding a new asset to asset registry . For each asset i need generate a unique id . how to generate this unique id so that the code doesn't become non deterministic as the same code will run on multiple peers
you could use the transactionID property of the transaction, or you pass it in on the transaction as a property.
Woops, this is a continuation... and if I delay the start (to 85 seconds in this case), and attach to the container, I see:
root@b7fce2597421:/opt/gopath/src/github.com/hyperledger/fabric# nc membersrvc 7054
nc: getaddrinfo: Name or service not known
So it looks like when I had the wrong docker-compose ... because somehow the membersrvc link is not working in peer. What is odd is that it was running a short time ago when I was using it for the playground. It was in tutorial 2 when I tried deploying my bna into this sample network. Not sure if it died just before that, or after. Well, now that I look at it ... it looks like my localhost:8080 is working fine even though there is no peer. I can only imagine that it is not using a peer since the peer container crashes and burns, not finding membersrvc
@jdockter i am not able to reach the link as it requires ibm id can you please share the context
Has joined the channel.
thanks @dselman
@vinitesh whoops sorry...basically the bna was getting installed as peers 0, but maybe that has been resolved
Hi
# wait for Hyperledger Fabric to start
sleep 10
node create-channel.js
module.js:471
throw err;
^
Error: Cannot find module '/root/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/grpc_node.node'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.
root@ubuntu-1gb-blr1-01:~/composer-sample-applications-hlfv1/packages/getting-started# node -v
v6.10.2
root@ubuntu-1gb-blr1-01:~/composer-sample-applications-hlfv1/packages/getting-started# npm -v
4.5.0
Node version and npm version are also as stated in the document
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! scripts/start-hyperledger.sh
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
@SahilKapoor node and npm have problems running as root. So I would say that there were other errors output during the npm install. You should create a non root user and start again
@davidkel Thanks, will try again with non root user.
@dselman I've been playing with your suggestion about modifying transactions, and it seems like altering the transaction object within a transaction callback handler has no effect on the data persisted to the network. So as yet I still can't see a way to dynamically inject extra system attributes into a transaction payload at runtime. Any pointers for me?
Hello, I have setup a blockchain service on bluemix , It has 3 members Initiator,provider and service partner . i have also deployed my network .bna to the blockchain. in my network i have also defined same 3 participants Initiator,provider and service partner, Now how do i link the blockchain member to the network participants. Do i need to explicitily create a participant for each member and issue them identity?
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=vpKqzTfQvPzc8Tuha) @pospi that makes sense I think. The transaction persisted into the transaction registry will be as received by the runtime. You can modify the transaction within your tx processor functions (it is just a JS Object) but that won't have any effect on the transaction registry. I don't think it makes sense to modify the transaction in Fabric terms in the chaincode, as it will be distributed to all peers for processing. Can you not make these modifications on the client? What are you trying to do?
@vinitesh You would create your participants in your business network then use the composer identity issue to create identities which you can then use to drive transactions and perform acl checks. However it is highly likely that the identity issue will fail at the moment but you could try
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=DdRc2eZqjFRmGvyq8) @vinitesh short answer is yes. Long answer is don't (necessarily) conflate a Fabric member (maintainer of the network, holds a copy of the distributed ledger) with a participant in a business network (could be an end user).
@dselman end goal is to setup a bidirectional link between an asset and a set of transactions such that looking up one from the other in both directions is achievable. I need these assignments to be as opaque as possible to the consumer, so I'm trying to get it all to be driven by transaction execution logic.
thanks @davidkel . I have tried issue identity on bluemix blockchain v1 beta and its working fine, It returned a secret and i am able to ping the network with new identity. thumbs up for this:)
@vinitesh thanks for the update on that, guess bluemix haven't changed the organisation structure from the default fabric-ca setup yet which is why it works.
Hi I find that the docs about the fabric composer are about fabric V.06, but now I am using fabric V1.0
https://fabric-composer.github.io/tutorials/getting-started-playground.html
so is there any new docs about fabric 1.0?
thanks @dselman it means its not neccessary to define the participants of my network as the members of blockchain service. But if we want to create channel between the participants for data seperation then
we may create participant as members of network just to keep it logical.
@vinitesh Hi can you give me some instructions that how to use fabric composer for fabric V1.0 ?
thanks
@xuzhao103389 it's currently not possible to use composer-playground to directly interact with a fabric v1.0 alpha yet (it's being worked on) however you should be able to export your business network archive from composer-playground and then use the composer cli to deploy to a fabric 1.0. There are some preview docs available that may help.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=JC3mrZ4Y4riBjpZKK)
@xuzhao103389 it's currently not possible to use composer-playground to directly interact with a fabric v1.0 alpha yet (it's being worked on) however you should be able to export your business network archive from composer-playground and then use the composer cli to deploy to a fabric 1.0 alpha. There are some preview docs available that may help.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=JC3mrZ4Y4riBjpZKK)
Has joined the channel.
thanks a million
@xuzhao103389 you can follow the docs suggested by davidkel. Now they have updated the documentation with with v1 instruction
Good morning
```
+ composer-rest-server -n carauction-network -p defaultProfile -i admin -s adminpw -N always -P 44444
Discovering types from business network definition ...
Connection fails: Error: Deployed chain-code (0.5.13-20170424155417) is incompatible with client (0.5.13-20170425101322)
It will be retried for the next request.
Error: Deployed chain-code (0.5.13-20170424155417) is incompatible with client (0.5.13-20170425101322)
at queryChainCode.then (/usr/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:491:27)
```
I'm installing composer-rest-server@unstable
@davidkel I do "npm install" under composer-sample-applications-hlfv1/packages/getting-started
got npm WARN composer-sample-applications-hlfv1 No repository field.
npm WARN composer-sample-applications-hlfv1 No license field.
@xuzhao103389 that's nothing to worry about
and npm test failed
Error: no test specified mocha
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1$ npm test
> @ test /opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1
> echo 'Error: no test specified'
Error: no test specified
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1$
@davidkel vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1$ npm test
> @ test /opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1
> echo 'Error: no test specified'
Error: no test specified
there is no test dir :
drwxrwxr-x 5 vagrant vagrant 4096 Apr 25 11:07 ./
drwxr-xr-x 7 vagrant vagrant 4096 Apr 25 11:07 ../
drwxrwxr-x 8 vagrant vagrant 4096 Apr 25 11:07 .git/
-rw-rw-r-- 1 vagrant vagrant 692 Apr 25 11:07 .gitignore
-rw-rw-r-- 1 vagrant vagrant 97 Apr 25 11:07 lerna.json
-rw-rw-r-- 1 vagrant vagrant 11357 Apr 25 11:07 LICENSE
drwxrwxr-x 105 vagrant vagrant 4096 Apr 25 11:08 node_modules/
-rw-rw-r-- 1 vagrant vagrant 60 Apr 25 11:07 package.json
drwxrwxr-x 4 vagrant vagrant 4096 Apr 25 11:07 packages/
-rw-rw-r-- 1 vagrant vagrant 729 Apr 25 11:07 README.md
-rw-rw-r-- 1 vagrant vagrant 374 Apr 25 11:07 .travis.yml
can not find the test dir
@elisabetta if you use the unstable tags you need to use the same version for `composer-cli` and `composer-rest-server` and make sure you deploy the chaincode using that version as well
and from the link , I can not see the test dir as well
https://github.com/hyperledger/composer-sample-applications-hlfv1
@xuzhao103389 what was the output from the npm install ? were there any errors when that ran as that does a fair amount of setup
no errors from npm install
-- lerna@2.0.0-beta.32
+-- async@1.5.2
+-- chalk@1.1.3
| +-- ansi-styles@2.2.1
| +-- escape-string-regexp@1.0.5
| +-- has-ansi@2.0.0
| +-- strip-ansi@3.0.1
| `-- supports-color@2.0.0
+-- cmd-shim@2.0.2
| `-- graceful-fs@4.1.11
+-- command-join@1.1.1
| +-- array-from@2.1.1
| `-- repeat-string@1.6.1
+-- cross-spawn@4.0.2
| +-- lru-cache@4.0.2
| | +-- pseudomap@1.0.2
| | `-- yallist@2.1.2
| `-- which@1.2.14
| `-- isexe@2.0.0
+-- glob@7.1.1
| +-- fs.realpath@1.0.0
| +-- inflight@1.0.6
| | `-- wrappy@1.0.2
| +-- inherits@2.0.3
| +-- once@1.4.0
| `-- path-is-absolute@1.0.1
+-- inquirer@0.12.0
| +-- ansi-escapes@1.4.0
| +-- ansi-regex@2.1.1
| +-- cli-cursor@1.0.2
| | `-- restore-cursor@1.0.1
| | +-- exit-hook@1.1.1
| | `-- onetime@1.1.0
| +-- cli-width@2.1.0
| +-- figures@1.7.0
| +-- lodash@4.17.4
| +-- readline2@1.0.1
| | +-- code-point-at@1.1.0
| | +-- is-fullwidth-code-point@1.0.0
| | | `-- number-is-nan@1.0.1
| | `-- mute-stream@0.0.5
| +-- run-async@0.1.0
| +-- rx-lite@3.1.2
| +-- string-width@1.0.2
| `-- through@2.3.8
+-- lodash.find@4.6.0
+-- lodash.unionwith@4.6.0
+-- meow@3.7.0
| +-- camelcase-keys@2.1.0
| | `-- camelcase@2.1.1
| +-- decamelize@1.2.0
| +-- loud-rejection@1.6.0
| | +-- currently-unhandled@0.4.1
| | | `-- array-find-index@1.0.2
| | `-- signal-exit@3.0.2
| +-- map-obj@1.0.1
| +-- minimist@1.2.0
| +-- normalize-package-data@2.3.8
| | +-- hosted-git-info@2.4.2
| | +-- is-builtin-module@1.0.0
| | | `-- builtin-modules@1.1.1
| | `-- validate-npm-package-license@3.0.1
| | +-- spdx-correct@1.0.2
| | | `-- spdx-license-ids@1.2.2
| | `-- spdx-expression-parse@1.0.4
| +-- read-pkg-up@1.0.1
| | +-- find-up@1.1.2
| | `-- read-pkg@1.1.0
| | +-- load-json-file@1.1.0
| | | +-- parse-json@2.2.0
| | | | `-- error-ex@1.3.1
| | | | `-- is-arrayish@0.2.1
| | | +-- pify@2.3.0
| | | `-- strip-bom@2.0.0
| | | `-- is-utf8@0.2.1
| | `-- path-type@1.1.0
| +-- redent@1.0.0
| | +-- indent-string@2.1.0
| | | `-- repeating@2.0.1
| | | `-- is-finite@1.0.2
| | `-- strip-indent@1.0.1
| | `-- get-stdin@4.0.1
| `-- trim-newlines@1.0.0
+-- minimatch@3.0.3
| `-- brace-expansion@1.1.7
| +-- balanced-match@0.4.2
| `-- concat-map@0.0.1
+-- mkdirp@0.5.1
| `-- minimist@0.0.8
+-- normalize-path@2.1.1
| `-- remove-trailing-separator@1.0.1
+-- object-assign@4.1.1
+-- object-assign-sorted@1.0.0
| `-- sorted-object@2.0.1
+-- pad@1.1.0
+-- path-exists@2.1.0
| `-- pinkie-promise@2.0.1
| `-- pinkie@2.0.4
+-- progress@1.1.8
+-- read-cmd-shim@1.0.1
+-- rimraf@2.6.1
+-- semver@5.3.0
+-- signal-exit@2.1.2
`-- sync-exec@0.6.2
npm WARN composer-sample-applications-hlfv1 No repository field.
npm WARN composer-sample-applications-hlfv1 No license field.
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1$ cat package.json
{
"devDependencies": {
"lerna": "2.0.0-beta.32"
}
}
the package.json is very simple
and can not find scripts dir
@xuzhao103389 you need to run the npm test in the getting-started directory. That's also where I assumed you ran the npm install ?
oh the script dir is found /opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1/packages/getting-started/scripts
ok
thanks
i will try
thanks david now it is working
@davidkel
@sstone1 I've noticed in some of the packages you have `scripts/tsgen.js` what's the purpose of this file? Is it to generate ts definitions?
yep it creates TypeScript Definition files that mainly make it a bit easier to develop on Playground
all of the relevant `package.json` files have `"typings": "index.d.ts",` so they should be usable elsewhere
Hi there, was wondering where I could find APIs that allow us to work with key-store (eg. extract certs from key-store and then move to non-sql db). Thanks!
@davidkel so now can I use the web page of fabric composer to control the business network ?
@xuzhao103389 no, you can't connect to a v1.0 alpha fabric from composer-playground yet. That feature is being worked on
@xuzhao103389 no, you can't connect to a v1.0 alpha fabric from composer-playground yet. That feature is being worked on. You can export your business network from it and use the command line tools to interact with a 1.0 alpha fabric
@davidkel ok , so can you tell how to export business network from compser-playground and how to use cli to interact with it ?
@sstone1 hi, are there more details available on this SWIFT initiative? http://www.bankingtech.com/698881/swift-launches-blockchain-proof-of-concept/
is it Fabric or Fabric Composer what they are using
@sstone1 Do you mind if I borrow this script for personal projects?
@opiepj not at all, go for it!
@sstone1 awesome thanks!
@xuzhao103389 There is documentation on our website https://fabric-composer.github.io with information using the cli. You should see import/export options on the web application when you are in the editor near the bottom on the left hand side
maybe i should pull it out into a separate npm module external to composer
No resolution yet to my issue. I was going thru tutorial2 from Dan and all was going well with the Embedded runtime. I then tried starting my network (local docker containers thru the docker-compose.yml) ... and I am back to the scenario where the peer container no longer sees membersrvc as a host .. which is similar to the docker-compose issue I had when I was on the pip installed docker-compose 1.12.xxx. My docker-compose is still good:
docker -v && docker-compose -v && node -v && npm -v
Docker version 17.04.0-ce, build 4845c56
docker-compose version 1.11.2, build dfed245
v6.10.1
4.4.4
I am wondering if the node container for the Embedded runtime is still up, but a ps -ef | grep -i node (w/and w/out sudo) just shows the vscode processes (/usr/share/code/code) and the grep itself (assuming I shut down the other 2 containers. Interestingly though, if I bring up the containers (membersrvc and playground webapp stay up) ... the playground works great. Nobody is listening on any of the 70 ports when the containers are down (just 7054 when I start them and peer shuts down) ... but the playground (localhost:8080) works great. I thought it might be using browser memory, but I stopped and re-started the browser and the assets and participants were still there. So maybe this is tied to the Composer embedded runtime being up and I can't seem to find it? Any thoughts?
@uber.twin no idea I'm afraid
From that blog post, it seems they could be using any of the Hyperledger projects
yes, but the Hyperledger link in there goes to "IBM launches blockchain ecosystem on Hyperledger Fabric"
@MikeC711 Tied to that, I shut down the browser and went to my host (Xenial is a KVM guest) and hit the URL via IP ... and was told that I needed to clear memory as it was a different version of Composer. So maybe the playground webapp container was indeed using the browser. I guess I'm back to figuring out why I can't see membersrvc in the peer.
Has joined the channel.
Has joined the channel.
@sstone1 asset VehicleListing identified by listingId {
o String listingId
o Double reservePrice
o String description
o ListingState state
o Offer[] offers optional
--> Vehicle vehicle
}
Why putting a reference to the transaction Offer in an asset ?
I am not sure I understand the programming stragey here ...
transaction Offer identified by transactionId {
o String transactionId
o Double bidPrice
--> VehicleListing listing
--> Member member
}
I heard Fabric-composer got accepted as an official hyperledger project! Congratulations :) Any word on when the connections capability will be available in the fabric-composer playground (local or web)?
@jinvanstee we've been vetting around the connections by exporting the bna file and the using the cli
@jinvanstee we've been getting around the connections restriction by exporting the bna file and the using the cli
Oooh good idea. That's a good workaround for the time being. thanks @tennenjl
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=dPQpuGuM64w3cstXz) @annbnn because when the bidding is closed for an auction you need to iterate over all the offers on a listing and award the vehicle to the highest bidder.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=uN5CKGQBuHDphvCJx) @jinvanstee Thank! We hope to publish that at the end of this week. Fingers crossed! :-)
Hello, How to add logging in transaction processor function for bluemix blockchain v1 beta
currently i am not able to see even console messages in blockchain peer logs in bluemix
They would not be in the peer logs -- they would be in the chaincode container logs.
http://stackoverflow.com/questions/42695751/how-do-i-see-the-logs-for-fabric-composer
I want to announce that last night we had a Meetup in Brooklyn in which I presented on HL and gave a demo on Fabric Composer. The sign up list had 168 people and about half of them showed up. The overall response from the audience was that they love Composer!! Here's a video of my presentation https://drive.google.com/drive/folders/0B8Hz2XsS6vRuNkNTRFFGMEhoajA
Also in conjuction with CloudSoft, we were able to showcase a live running Composer on multiple cloud clusters across the world
Meetup info: https://www.meetup.com/Coinspace-HQ/events/238476525/
:muscle: great job. We really appreciate your advocacy!
I am currently trying to deploy a sample .bna to Bluemix Blockchain service (0.6) but I am geting the following message: Error: Identity or token does not match.
Command failed. What I need to setup in order to deploy a .bna into bluemix?
I am using https://github.com/hyperledger/composer-sample-applications as a starting point and I am able to deploy locally with no problem.
@ggamaral Make sure your identity and secret match that you are using match the Bluemix creds
@ggamaral make sure you read this: http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
yes they match
@dselman I saw this post on stackoverflow. I followed this but still got the same error
@ggamaral Also might want to try a different id and secret and also check what you have in the .composer-credentials dir under your home dir.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=iB5qXZcLmsjg57pA8) @dselman yes got it but how to check the container logs for Bluemix blockchain service v1 beta
inside .composer-credentials I have a member.WebAppAdmin (a json format). does the "cert" property refers to the user Ecert? @tennenjl
@ggamaral Think so, although I defer to @dselman and the experts. I would also try another member besides WebAppAdmin. Also need to be careful when including the cert in your profile (as per the stackoverflow post). I learned that the hard way.
@vinitesh I think that's another question for the bluemix team to answer.
@vinitesh I think that's another question for the bluemix team to answer on how to display or retrieve chaincode container logs
@mohamoud.egal great work, thanks for spreading the word!
Just at the airport heading home from the Hackfest in DC, great couple of days and some good discussions with the indy and burrow folk about how they and composer could work together!
OK, I finally think I have resolved the issue. Something docker is working on. Since I am a Xenial guest of RHEL 7.3 ... I had to do the following:
sudo systemctl stop firewalld (on rhel 7.3 host)
systemctl restart docker (on xenial guest)
docker-compose up -d (on xenial guest)
sudo systemctl start firewalld (on rhel 7.3 host)
A bit of a nuisance, but I'm functional again thanks to Mr. Google.
@mohamoud.egal Great job on the Meetup!
is there any way in model files to specify that models can have any data present? The equivalent of `{ additionalProperties: true }` in JSON schema..
I think I have a valid use-case for it: I want to make a generic transaction that can create various types of assets. As such validation of these arbitrary parameters should be done by the asset registry at time of insert rather than in the transaction gateway?
Has joined the channel.
How can we restart severs correctly?
After rebooting server, "composer network update" and "undeploy" command stop working.
Maybe because I don't know the basic procedure to reboot servers...
I'm testing composer-sample-applications-hlfv1/packages/getting-started.
Before rebooting all commands from "npm install" to "node cli.js landregistry bootstrap" were completed without any problem.
Heres are error messages:
composer network update --archiveFile digitalPropertyNetwork.bna -p hlfv1 -i admin -s adminpw
Error: NOT_FOUND
composer network undeploy --archiveFile digitalPropertyNetwork.bna -p hlfv1 -i admin -s adminpw
Missing required argument: businessNetworkName
Has joined the channel.
[1] Adding schemas for all types to Loopback ...
[1] Swagger: skipping unknown type "org_Digital_Agreement".
[1] Swagger: skipping unknown type "org_Digital_Agreement".
[1] Swagger: skipping unknown type "org_Digital_Agreement".
[1] Swagger: skipping unknown type "org_Digital_Internal".
any idea on why this happens ?
Agreement & Internal are transactions
@kouohhashi the arguments to `composer network undeploy` are wrong: ```composer network undeploy [options]
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--businessNetworkName, -n The business network name [string] [required]
--connectionProfileName, -p The connection profile name [string]
--enrollId, -i The enrollment ID of the user [string] [required]
--enrollSecret, -s The enrollment secret of the user [string]
```
@karthikworks are the types `abstract`? I think we may have a bug in that abstract types are not exposed over REST, but if they are used as arguments to other methods you see this. I've not had time to diagnose fully however so would appreciate help.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=s9dEoMmhAfGEXG2rD) @pospi No, we do not support this. I think adding this open a can of worms in terms of object model evolution and understanding the structure of the data on the blockchain. Using abstract types and class inheritance is better IMO.
@dselman they are not abstract types. Both are transactions, will check little deep and get back.
Any idea on how can i add participants and transactions to the Angular application - it does not get added to the skeleton but how do i do it manually ?
When i tried to add manually, it throws an error "not a module"
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=CZit6rss2WRCe2BBZ) @dselman completely agree, but as yet I've been unable to get those features working so am investigating workarounds for polymorphism. or can I try https://github.com/hyperledger/composer/pull/720 in the latest release?
Has joined the channel.
We aim to cut a release on Friday, which will include that fix.
awesome can't wait to try it!
Now that I've resolved the link issue with docker/docker-compose ... I'm back to the tutorial. I bring up my network/playground and the 3 containers are happy ... my connect.json look accurate, but the deploy fails:
composer network deploy -a dist/my-network.bna -i admin -s Xurw3yU9zI0l
Deploying business network from archive: dist/my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My first fabric composer network
events.js:160
throw er; // Unhandled 'error' event
^
Error: unknown service protos.Events
at ClientDuplexStream._emitStatusIfDone (/home/mcasile/.nvm/versions/node/v6.10.1/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/home/mcasile/.nvm/versions/node/v6.10.1/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /home/mcasile/.nvm/versions/node/v6.10.1/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
I then browse to localhost:8080 and he tells me to clear the cache ... which makes me think he's still trying to use the browser and not the little hlf 0.6 that membersrvc and vp0 represent. Going back thru the doc some more, but am I missing something simple? I verified thru nc that webapp container can see both of the other containers.
Hey @MikeC711 I've lost track of what you are trying to achieve and which components/versions you are using. Can you give more context please?
I am trying to deploy - composer fabric business network archive file, *.bna file (Fabric Composer version 0.5.10) , in Hyper Ledger Fabric V0.6. As per my understanding I need to have a connection profile and provide Hyper Ledger URL in it. Where can I configure Connection profile? (If it is not supported in Fabric Composer 0.5.10 version is there any earlier version available ? example that someone can share? Thanks.
Hi,
I was able to run fabric composer example as mentioned in the documents. I have doubt regarding which version of fabric is running.
The console says: Status: Downloaded newer image for hyperledger/fabric-baseimage:x86_64-0.1.0
docker tag hyperledger/fabric-baseimage:x86_64-0.1.0 hyperledger/fabric-baseimage:latest
which says base image from fabric 1.0.
Is there a command to check which version of fabric is running?
If you run `docker ps -a` you can tell from the containers.
There is no order service , only a member service and peer. I think couple of days back the git on the https://fabric-composer.github.io/installing/quickstart.html mentioned 1.0 and 0.6 but today it just mentions one git repo which i think is based on 0.6. Are there any docs for fabric composer 1.0 .
@SahilKapoor try this document, , https://fabric-composer.github.io/unstable/installing/quickstart.html
@jdockter Thanks
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
events.js:160
throw er; // Unhandled 'error' event
^
Error: Connect Failed
at ClientDuplexStream._emitStatusIfDone (/usr/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._readsDone (/usr/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:169:8)
at readCallback (/usr/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:229:12)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! getting-started@1.0.0 deployNetwork: `composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna -p hlfv1 -i admin -s adminpw && composer network list -n digitalproperty-network -p hlfv1 -i admin -s adminpw`
n
I was able to run 0.6 then I ran stop-hyperledger and teardown.sh for 0.6.
I face the above error when I try to run v1
npm ERR! Tell the author that this fails on your system:
npm ERR! composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna -p hlfv1 -i admin -s adminpw && composer network list -n digitalproperty-network -p hlfv1 -i admin -s adminpw
@SahilKapoor the error you received means it cannot contact the fabric. Can you post the results of `docker ps` to see what fabric apps are running
@dselman Sure Dan, I was going back thru tutorial 2 (your code this time, my code next time). I hit a brick wall on the deploy command thru the CLI which turned out to be tied to a docker/docker-compose issue and RHEL/CentOS (My Xenial system is a KVM guest of an RHEL host). Now that I finally got thru that, I tried doing the deploy again. I verified that the containers were up and could see each other ... but my deploy failed with the messages shown. I verified that the connect.json in defaultprofile looks correct and it certainly did not complain about that. I then brought up my localhost:8080 (webapp in my local docker container) ... and it seems that he's using browser memory and not the membersrvc and vp0 that I thought he would. He had me clear the cache right away (forget the message) ... this makes me think he is looking at the browser and not the containers. As it is, I had no problem importing my bna ... but obviously I'm looking to develop procedures where-by I use the cli or whatever is the preferred mechanism) to do deploys et al. Thanks,
Has joined the channel.
@MikeC711 Playground only uses browser local storage today -- if you want to connect from the web interface to a real Fabric you have to use the "old" Composer-UI
Has joined the channel.
Or you can develop inside Playground, export your BNA file and then use the composer CLI to deploy the BNA.
Hey guys, I have noticed that several of the `models` directories under each of the composer-sample-networks repos are gone. For example `composer-sample-networks/packages/digitalproperty-network/models` is not there also `composer-sample-networks/packages/animaltracking-network/models` is not there.
The `basic-sample-network` does have the models directory under it.
This is because those networks use an npm dependency to their models. I.e. package.json for the network depends on an npm package for the models.
This allows the models to be semantically versioned and published independent of the network. Reuse of models across network! :-)
That is cool @dselman and I think I understand the flexibility to have a model described by a package and getting npm to install it. Having said that. I am talking about the actual repo where the models reside https://github.com/hyperledger/composer-sample-networks . I believe this is the repo where you guys keep sample networks , under packages you can see several sample models, one of them let's say animaltracking-network . That directory has the transactions under the lib directory but the models directory is missing.
Dependent models are resolved from the `composer-sample-models` repor
Dependent models are resolved from the `composer-sample-models` repo
@davidkel Thanks..
sahil.kapoor@a1dvmcphdlt02:~/composer-sample-applications-hlfv1/packages/getting-started$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
sahil.kapoor@a1dvmcphdlt02:~/composer-sample-applications-hlfv1/packages/getting-started$
So the whole error goes like this:
# wait for Hyperledger Fabric to start
sleep 10
node create-channel.js
info: Returning a new winston logger with default configurations
using non-tls connection
info: [Client.js]: Failed to load user "admin" from local key value store
info: [FabricCAClientImpl.js]: Successfully constructed Fabric CA client from options - {"protocol":"http","hostname":"localhost","port":7054}
info: [FabricCAClientImpl.js]: Successfully constructed Fabric CA service client: endpoint - {"protocol":"http","hostname":"localhost","port":7054}
info: [crypto_ecdsa_aes]: This class requires a CryptoKeyStore to save keys, using the store: {"opts":{"path":"/home/sahil.kapoor/.hfc-key-store"}}
Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
at ClientRequest.
@davidkel Thanks .. It got resolved. I missed one line in logs. Problem was related to permission of folder /home/sahil.kapoor/.hfc-key-store/ and /home/sahil.kapoor/.composer-connection-profiles/
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=rbmryEraeJhsD7asf) @dselman Thank you for your response. but composer network undeploy --businessNetworkName digitalproperty-network -p hlfv1 -i admin -s adminpw gave me same error.
Error: Error: Error: Unsupported function "undeploy" with arguments "["digitalproperty-network"]"
orderer0 shows log like below. so somehow mychannel was not found.
2017-04-26 04:47:19.125 UTC [orderer/common/broadcast] Handle -> WARN 004 Rejecting broadcast because channel mychannel was not found
2017-04-26 16:51:08.956 UTC [orderer/multichain] NewManagerImpl -> INFO 001 Starting with system channel: testchainid and orderer type solo
composer network list -n digitalproperty-network -p hlfv1 -i admin -s adminpw and other commands are still working fine.
Should I create channel whenever restart orderer?
Thanks in advance.
In the older composer-ui, I could switch networks and it would allow me to connect to a business network on the blockchain. the composer playground does not allow you to do so. However, the user interface in the playground states this and says you can install a local playground. Everything I have installed is local and I assumed is it referring to use use the docker-compose run -d command? However, when I did that I see the same notation in the playground. Is there some other alternative to the installation that I need to perform?
Ah, I see from earlier posts that the connections capability is not yet available in the playground - local install
@DennisM330 sounds like they are hoping to publish the composer playground with connection capability by end of this week
@kouohhashi undeploy is not possible with the current implementation for hlf v1.0-alpha. We do have an issue to track this
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=bcXQxBgW6Gr7oR7Xj) @davidkel Oh.. Thanks!
@kouohhashi could you explain how you are stopping and starting your fabric services ?
@dselman Thanks again Dan, I assumed playground would use membersrvc and peer that it came up with if running locally. My fault for not checking. As for the deploy failure I'm seeing, do you have any thoughts?
cd ~/dev/gitDev/my-network/basic-sample-network ; composer network deploy -a dist/my-network.bna -i admin -s Xurw3yU9zI0l
Deploying business network from archive: dist/my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My first fabric composer network
TypeError: Cannot read property 'fail' of undefined
Command failed
events.js:160
throw er; // Unhandled 'error' event
^
Error: unknown service protos.Events
at ClientDuplexStream._emitStatusIfDone (/home/mcasile/.nvm/versions/node/v6.10.1/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/home/mcasile/.nvm/versions/node/v6.10.1/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /home/mcasile/.nvm/versions/node/v6.10.1/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
My Docker containers look good and speak to each other:
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c9b308b1e3b1 fabriccomposer/composer-playground "pm2-docker compos..." 18 hours ago Up 18 hours 0.0.0.0:8080->8080/tcp docker_composer_1
1826e0b04c4b hyperledger/fabric-peer:x86_64-0.6.1-preview "sh -c 'sleep 185;..." 18 hours ago Up 18 hours 0.0.0.0:7050-7053->7050-7053/tcp docker_vp0_1
4231f4e9b1e5 hyperledger/fabric-membersrvc:x86_64-0.6.1-preview "membersrvc" 18 hours ago Up 18 hours 0.0.0.0:7054->7054/tcp docker_membersrvc_1
And my connection looks good to me:
cat .composer-connection-profiles/defaultProfile/connection.json
{
"type": "hlf",
"keyValStore": "/home/mcasile/.composer-credentials",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7051"
}
Found:
Description:Digital Property Network
Name:digitalproperty-network
Identifier:digitalproperty-network@0.0.6
Written Business Network Definition Archive file to digitalPropertyNetwork.bna
Command completed successfully.
Command succeeded
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
✖ Deploying business network definition. This may take a minute...
timed out waiting for transaction to complete
Command failed
Why did the deploying fail?
Found:
Description:Digital Property Network
Name:digitalproperty-network
Identifier:digitalproperty-network@0.0.6
Written Business Network Definition Archive file to digitalPropertyNetwork.bna
Command completed successfully.
Command succeeded
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
✖ Deploying business network definition. This may take a minute...
timed out waiting for transaction to complete
Command failed
Why did the deploying fail?
Found:
Description:Digital Property Network
Name:digitalproperty-network
Identifier:digitalproperty-network@0.0.6
Written Business Network Definition Archive file to digitalPropertyNetwork.bna
Command completed successfully.
Command succeeded
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
✖ Deploying business network definition. This may take a minute...
timed out waiting for transaction to complete
Command failed
Why did the deploying fail?
Found:
Description:Digital Property Network
Name:digitalproperty-network
Identifier:digitalproperty-network@0.0.6
Written Business Network Definition Archive file to digitalPropertyNetwork.bna
Command completed successfully.
Command succeeded
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
✖ Deploying business network definition. This may take a minute...
timed out waiting for transaction to complete
Command failed
What could be the possible reasons for getting " timed out waiting for transaction to complete"
Why did the deploying fail?
Thanks in advance!
Hi..!
Request help in resolving this this problem.
----------------------------------------------------------------------------------------
Found:
Description:Digital Property Network
Name:digitalproperty-network
Identifier:digitalproperty-network@0.0.6
Written Business Network Definition Archive file to digitalPropertyNetwork.bna
Command completed successfully.
Command succeeded
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
✖ Deploying business network definition. This may take a minute...
timed out waiting for transaction to complete
Command failed
-------------------------------------------------------------------------------------------------------------
What could be the possible reasons for getting " timed out waiting for transaction to complete"
Why did the deploying fail?
Thanks in advance!
I want to script adding assets and participants to my network so I can quickly put together a demo. Are there some sample scripts I should reference for populating assets and participants in the business network?
@MikeC711 there is a mistake in your connections profile the eventHubURL I think should be set to port 7053
I tested my network successfully in the composer-playground. All transactions worked as expected. I exported the bna file, deployed to running Fabric, and then tried to test a transaction with the composer-rest-server. Transactions just timeout with a 500 error. Any idea on where to look for root cause? When I test with loopback composer-rest-server, I remove transaction ID from the POST as it does not want that value set
I can create assets and participants just fine with the loopback composer-rest-server though
@Dpkkmr One of the issues with hyperledger fabric 0.6 is that failures couldn't be returned to the client. Because of this a timeout is needed. This is something that is addressed in the upcoming hyperledger fabric 1.0. So it is likely that it wasn't something taking too long but a failure. The only way to determine what the failure might be would be to look at the logs of the various fabric services and chaincode service to see if they provide any further information. There is more info in the SO entry http://stackoverflow.com/questions/42695751/how-do-i-see-the-logs-for-fabric-composer
which heopfully will help in getting log information from the runtime
@DennisM330 If your transactions are timing out, then it could be a problem in your transaction code (I assume you are using hyperledger fabric 0.6 ?) Worth checking the chaincode container logs to see if there are any errors. See the SO entry http://stackoverflow.com/questions/42695751/how-do-i-see-the-logs-for-fabric-composer
which heopfully will help in getting log information from the runtime
Yep, just saw the first posting, now I remember that v0.6 does not return the error and instead returns a timeout
I see the issue, and it does not make sense. ID is set to a value and not string. 22:03:59.789 [Concerto] DEBU : Exiting Chaincode.Invoke Error: Object with ID 'string' in collection with ID 'Asset:net.biz.digitalPartsNetwork.ComponentPart' does not exist
If you can share your the code of your TP function may be able to help further...
If you can share the code of your TP function may be able to help further...
@dselman Thanks Dan, found my issue tonight. Two of my assets each had an array that referenced another asset. I did not mark the array as optional when I should of. The playground lets you test and create assets and I could specify an empty array. In the composer rest server, I cannot when creating an asset and it was creating an array element with a value of "string". So I corrected my definition in the playground and marked as optional. Apparently the chaincode in the blockchain validates the element in the array that it exists
How do drop a .bna file here in the future?
Message Attachments
Uploaded file but I am ok now. Thanks learned a few things along the way tonight!
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=LJufocg4n8Fo69KLw) @davidkel I rebooted my ubuntu instance by "shutdown -r now".
Looks like it failed to add orderer0 again.
"composer network update --archiveFile digitalPropertyNetwork.bna -p hlfv1 -i admin -s adminpw" worked fine before rebooting.
But the same command stop working with error: NOT_FOUND. Thanks in advance.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=LJufocg4n8Fo69KLw) @davidkel I rebooted my ubuntu instance by "shutdown -r now".
Looks like it failed to add orderer0 again.
"composer network update --archiveFile digitalPropertyNetwork.bna -p hlfv1 -i admin -s adminpw" worked fine before rebooting.
But the same command stop working with error: NOT_FOUND. Thanks in advance
I can see logs like below on orderer0
Rejecting broadcast because channel mychannel was not found.
So problem seems I just don't know how to make orderer0 join mychannel again...
Since I followed the getting_started. all peers and orderer0 and ca is created as docker image.
Since I followed the getting_started. all peers and orderer0 and ca are created as docker image.
Has joined the channel.
@davidkel No "think" about it David, good catch and thanks. The final error goes away, but I still get:
composer network deploy -a dist/my-network.bna -i admin -s Xurw3yU9zI0l
Deploying business network from archive: dist/my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My first fabric composer network
TypeError: Cannot read property 'fail' of undefined
Command failed
and I can't find "fail" in any js, cto, acl, or anything else (outside of node-modules). I "think" I've been doing it all correctly as I have been cutting and pasting. Will bring my app up to date and will see if the error is still there. The app deploys into the playground painlessly and I can create participants, assets,and trans ... I imagine that the deploy is not terribly different than importing into the playground. Thanks again for finding that fat-finger. Not sure where I copied that from, but clearly I missed that detail.
I thought that installing playground locally either via npm or docker would allow access to a local fabric?
"sudo npm install -g composer-playground" fails on "npm http 404 https://registry.npmjs.org/ng-bootstrap/ng-bootstrap"
Has joined the channel.
Has joined the channel.
@kouohhashi It would seem to me that the containers are being recreated when you restart them (rather than being stopped at shutdown and started up again). In that case then I would fully expect you to have to create the channel and join the peers to the channel because you have effectively created a whole new fabric environment.
@MikeC711 I suggest you upgrade your level of composer. The error you see is a bug in composer that has been fixed but unfortunately it hides the real error message of what the problem is
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=t7yCK8PAu8qGpN2xA) @abcoathup npm doesn't usually like running as sudo.
How can I reset my Hyperledger Composer Playground Project? http://composer-playground.mybluemix.net/editor
Has joined the channel.
v1.0
Hi guys. Anybody tried to use authentication with composer-rest-api. Can't get my head around it. How do I create a username/password and then do authentication?
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=HAfP2HfphSwQtgKdj) @GeorgSchultz there's no reset button (yet). You can open the Javascript console and type `localStorage.clear()`
then refresh
Ok, to be more specific, here are the questions: 1. How can I create a new user account with username/password to authenticate against composer-rest-server? 2. How would I authenticate with this newly created user account against composer-rest-server? 3. How would I manage the session for that user? 4. How can I map this user to a network participant? 5. Can composer-rest-server user be mapped to more then one network participant (i.e. perform different roles)? 6. Do I need to create a wallet for each composer-rest-server user? 7. How would I share wallets across number of instances of composer-rest-server?
Also, for composer-rest-server: can I exclude some operations from exposed API? I.e. I don't want to allow anybody ever delete an asset. Can I completely remove DELETE operation for my asset?
@nvlasov I've created the SO question for your first one: http://stackoverflow.com/questions/43655553/how-to-authenticate-to-rest-api-and-map-to-fabric-credentials
I'll work with @sstone1 to get answers
For the second question -- no AFAIK composer-rest-server doesn't currently support this. I will add a user story to track.
https://github.com/hyperledger/composer/issues/764
@dselman Thanks a lot!
@dselman Just in case duplicating here another question of mine: http://stackoverflow.com/questions/43656164/getting-timestamps-in-deterministic-way-in-hyperledger-composer-transactions
@davidkel Thanks again, I did update composer-cli and it is now at composer-cli@0.5.12 (npm update -g composer-cli) ... are there other actions to completely update composer? Thanks,
@MikeC711 the other two I find myself updating, IF you use them, would be the rest server and generator, so `npm install -g composer-rest-server` and 'npm install -g generator-fabric-composer'
@MikeC711 the other two I find myself updating, IF you use them, would be the rest server and generator, so `npm install -g composer-rest-server` and `npm install -g generator-fabric-composer`
Hi I am using the fabric-V1.0 example and rest APIs
I got the response like this:
"statusCode": 422,
"name": "ValidationError",
"message": "The `net_biz_digitalPropertyNetwork_RegisterPropertyForSale` instance is not valid. Details: `transactionId` can't be set (value: \"string\").",
"details": {
"context": "net_biz_digitalPropertyNetwork_RegisterPropertyForSale",
"codes": {
"transactionId": [
"absence"
]
},
"messages": {
"transactionId": [
"can't be set"
]
}
},
"stack": "ValidationError: The `net_biz_digitalPropertyNetwork_RegisterPropertyForSale` instance is not valid. Details: `transactionId` can't be set (value: \"string\").\n at /home/vagrant/.nvm/versions/node/v6.9.4/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:348:12\n at ModelConstructor.
the return code is "message": "The `net_biz_digitalPropertyNetwork_RegisterPropertyForSale` instance is not valid. Details: `seller` can't be blank (value: undefined); `title` can't be blank (value: undefined).",
Is there a way in the composer playground to delete a model file or script file?
@DennisM330 not yet.
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=tCfNdpH2pvwGyfKre) @xuzhao103389 the instance is invalid with respect to the model.
Not sure if anyone else ran into this, but when I do an export from the playground on my Mac, the filename is named unknown and it is a filetype of textedit document. I just rename the file as appropriate for my network and add a .bna filetype
I think that is a Firefox limitation. Safari works better.
@dselman can you give me an example
@DennisM330 There was an issue about that here - https://github.com/hyperledger/composer/issues/407 It seems to have been closed, so it might just be an outdated browser issue :)
like for example
how to set the "filter" for net_biz_digitalPropertyNetwork_LandTitle : An asset named LandTitle
the example shown is
[
{
"$class": "net.biz.digitalPropertyNetwork.LandTitle",
"titleId": "string",
"owner": "string",
"information": "string",
"forSale": true
}
]
Has joined the channel.
@jdockter @davidkel Well, I think I see more now. The actual command has a different fail:
composer network deploy -a dist/my-network.bna -i admin -s Xurw3yU9zI0l
Deploying business network from archive: dist/my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My first fabric composer network
Error: Identity or token does not match.
Command failed
The trace file shows it using my defaultprofile connect.json .. and it ends in:
2017-04-27T12:56:24.815Z INFO HFCConnectionManager :connect() Creating new HFC chain for defaultProfile {"0":"{\"type\":\"hlf\",\"keyValStore\":\"/home/mcasile/.composer-credentials\",\"membershipServicesURL\":\"grpc://localhost:7054\",\"peerURL\":\"grpc://localhost:7051\",\"eventHubURL\":\"grpc://localhost:7053\"}"}$
2017-04-27T12:56:24.878Z INFO HFCConnection :constructor() Creating connection {"0":"defaultProfile"}$
2017-04-27T12:56:24.878Z INFO HFCConnection :login() Login attempt {"0":null}$
2017-04-27T12:56:24.955Z WARN HFCConnection :login() Failed login {"0":"defaultProfile"}$
Sockets and containers look good. Is this an issue with credentials because admin and Xurw3yU9zI0l are in /home/mcasile/dev/gitDev/my-network/basic-sample-network/node_modules/composer-runtime-hlf/vendor/github.com/hyperledger/fabric/membersrvc/membersrvc.yaml (and every other membersrvc.yaml I can find on system). Thanks,
Has joined the channel.
@MikeC711 it could be an issue with credentials. I would recommend deleting the contents of your keyValStore (/home/mcasile/.composer-credentials) and start new hlf v0.6 containers. Reason is that when you enroll an ecert is stored in your keystore. If you start new containers then the previous stored ecerts won't be valid, you need a new ecert but as one already exists composer uses it.
I had the composer-playground working on my Mac before I did an upgrade from Mac 10.12.3 10.12.4. Now I get the following error in the playground. Error: Collection with ID '$sysdata' does not exist. The sample network I had is gone and I cannot import my bna file either. Tried to deinstall and reinstall. Any ideas?
Brought up Chrome and I am ok though. Safari no.
Got past it, did a Reload page with plugins in Safari
Was Safari in Private mode?
@dselman no, I just upgrade Sierra to 10.12.4 to get Safari 10.1. This got rid of my issue with exporting a file name called unknown
@dselman All is good now, Essentially did your demo yesterday with my own model using playground, composer-rest-server and generator-fabric-composer
:thumbsup:
https://github.com/hyperledger/composer/wiki/Meeting-27th-April-2017
call time!
Is it possible with composer to query my blockchain. I want for example to set all part numbers supplied by a given supplier ID in my model
see not set
Wait I know how to do this with the REST APIs with a filter, aka loopback
@DennisM330 we do not yet support complex (content-based) queries. The REST API only allows you to retrieve assets/participants by id.
@dselman - Thanks for the clarification. I was wondering if you could do that, having worked with Loopback myself four a couple of years, I remember using filters and creating relationships
[ ](https://chat.hyperledger.org/channel/fabric-composer?msg=FfjEPrXx3NuqYdg3b) @davidkel @MikeC711 Thank you for your kind response.
But I'm still seein same error.
docker-compose -f hlfv1_alpha-docker-compose.yml stop
docker-compose -f hlfv1_alpha-docker-compose.yml up -d
composer network update --archiveFile digitalPropertyNetwork.bna -p hlfv1 -i admin -s adminpw
> Error: Not Found
When I tried to re create channel and join I got error below
node create-channel.js
node join-channel.js
> error: [Peer.js]: GRPC client got an error response from the peer "grpc://localhost:7056". Error: Block number should have been 5 but was 0
My composer-cli version was v5.10.
I upgraded composer-cli to v5.12. But still I'm seeing same error message.
If this is a known bug, I can wait.
Sorry for bothering you. Thanks in advance.
@kouohhashi in that scenario the containers are stopped and restarted so the information they have remains but it looks like the chaincode containers are not restarted. It would be worth you asking the question about that on perhaps the #fabric-questions (not sure if that would be the right place but hopefully someone can suggest a better channel if not). This sounds in the first instance like something HLF should handle
@nvlasov great set of questions. Look forward for the responses from @dselman.
Room name changed to: composer by jwagantall
[ ](https://chat.hyperledger.org/channel/composer?msg=8zSzKvaeLDgwY5FCf) @davidkel Thanks! I will. You're so kind.
Hey guys, quick question, let's say I have an asset into multiple registries and I make an update to the asset, Do I have to call the `update` method on each registry for the changes to reflect on each of them or by calling it just in one will spread out in all the other registries.
@jorgedr you will have to update the asset in all registries independently
oh.. interesting.. @sstone1 that kind of breaks down my understanding of what a registry is. I thought that a registry was just pointing to an instance of an object so that if you update the object all other registries would see the update. Does that mean that each registry has its own instance of the object? I am kind of confused as to why updating
oh.. interesting.. @sstone1 that kind of breaks down my understanding of what a registry is. I thought that a registry was just pointing to an instance of an object so that if you update the object all other registries would see the update. Does that mean that each registry has its own instance of the object?
Yeah, each registry has its own instance of the object.
Are you using custom registries using `addAssetRegistry`?
Correct, we wanted to move the asset from registry to registry as it went through its lifecycle
wondering if a better approach would be to create an "asset" that all it would have is a reference to the actual asset i.e.
```
asset MyAssetRef identified by id {
o String id
--> MyAsset asset
}
```
And then just put the asset reference in as many registries as we want. The advantage being here that I am not creating multiple instances of a possibly big object but just a very simple instance that just have a pointer.
that would work
we have not done a lot of work for custom registries yet
a lot of functionality does not work yet
such as relationships to assets/participants in custom registries
@nvlasov I've answered the Stack Overflow question http://stackoverflow.com/questions/43655553/how-to-authenticate-to-rest-api-and-map-to-fabric-credentials/43668254#43668254, and pointed you to the work in-progress GitHub issue https://github.com/hyperledger/composer/issues/142 :)
so just so I understand, if I create a custom registry and I call the resolve method on it, it would not resolve that relationship
I would have to get the reference then get the identifier from the reference and go to the main registry for the asset and load it from there?
I think that is what you kind of said :smile:
if you create a relationship to an asset that is in a custom registry, then we cannot resolve that relationship.
we can only resolve relationships to assets that are in their default registry.
@kouohhashi Thank you for letting us know about the issue though it's really useful to know/
@kouohhashi Thank you for letting us know about the issue though it's really useful to know
Has joined the channel.
@davidkel Hmm ... I might have gotten to aggressive. I did rm -rf ~/.composer-credentials/* (removing all but the directory) and then tried re-running. Now those mentioned errors are indeed gone, but nothing new got created there and my new error is:
composer network deploy -a dist/my-network.bna -i admin -s Xurw3yU9zI0l
Deploying business network from archive: dist/my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My first fabric composer network
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/home/mcasile/.nvm/versions/node/v6.10.1/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/home/mcasile/.nvm/versions/node/v6.10.1/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/home/mcasile/.nvm/versions/node/v6.10.1/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)
Quick Q on junit scripts (which could tie back to others later), can a registry be saved and re-used? I ask because in test/Sample.js in tutorial2 ... they appear to have the assetRegistry at the beginning, but then they retrieve it again when they want to get the asset back out of the registry (after a tran). Could they have just used the reference that they already had ... or is there something particularly volatile about assetRegistry (or participantRegistry for that matter)? Thanks,
Last question of the night ... tied to unit tests:
Asset definition:
asset MortgageApplication identified by applicationID {
o String applicationID
--> BankCustomer client
o BankInfo [] bankInfo
o CreditReport creditReport
o ApplicationStatus applicationStatus
o PropertyDetails propertyDetails
o ClosingDetails closingDetails
}
BankInfo Concept:
concept BankInfo { // Information on each bank account
o String name
o Integer routingNumber
o Integer accountNumber
o AccountType accountType
o Double balance
}
Construction in unit test:
const mortgage1 = factory.newResource(NS, 'MortgageApplication', 'mortgageApp1');
mortgage1.client = factory.newRelationship(NS, 'BankCustomer', mike.$identifier) ;
mortgage1.bankInfo = [] ;
mortgage1.bankInfo[0] = { name : 'MikeBank', routingNumber : 123456, accountNumber : 654321, accountType : 'Checking', balance : 12345.67 } ;
mortgage1.applicationStatus = 'Applied' ;
Error in running test:
1) Mortgage Work #tradeCommodity should be able to trade a commodity:
ValidationException: Model violation in instance com.ibm.sample.mortgage.MortgageApplication#mortgageApp1 class com.ibm.sample.mortgage.BankInfo has value [object Object] expected a Resource or a Concept.
at Function.reportNotResouceViolation (node_modules/composer-common/lib/serializer/resourcevalidator.js:448:15)
at ResourceValidator.visitClassDeclaration (node_modules/composer-common/lib/serializer/resourcevalidator.js:113:31)
at ResourceValidator.visit (node_modules/composer-common/lib/serializer/resourcevalidator.js:64:25)
at ConceptDeclaration.accept (node_modules/composer-common/lib/introspect/classdeclaration.js:63:24)
at ResourceValidator.checkItem (node_modules/composer-common/lib/serializer/resourcevalidator.js:335:30)
at ResourceValidator.checkArray (node_modules/composer-common/lib/serializer/resourcevalidator.js:262:18)
at ResourceValidator.visitField (node_modules/composer-common/lib/serializer/resourcevalidator.js:208:22)
at ResourceValidator.visit (node_modules/composer-common/lib/serializer/resourcevalidator.js:68:25)
at Field.accept (node_modules/composer-common/lib/introspect/property.js:48:24)
at ResourceValidator.visitClassDeclaration (node_modules/composer-common/lib/serializer/resourcevalidator.js:164:26)
at ResourceValidator.visit (node_modules/composer-common/lib/serializer/resourcevalidator.js:64:25)
at AssetDeclaration.accept (node_modules/composer-common/lib/introspect/classdeclaration.js:63:24)
at Serializer.toJSON (node_modules/composer-common/lib/serializer.js:87:30)
at AssetRegistry.add (node_modules/composer-client/lib/registry.js:194:50)
at businessNetworkConnection.getAssetRegistry.then (test/Sample.js:137:38)
Makes me think I'm wrong about how to handle that array. I got the same error when I tried:
mortgage1.bankInfo = [{ name : 'MikeBank', routingNumber : 123456, accountNumber : 654321, accountType : 'Checking', balance : 12345.67 } ] ;
So not exactly sure how to handle an array of a concept (or so it seems).
@MikeC711 you have to use factory.newConcept to create an instance of a concept.
Hi Dan. do you have a link to the sample he is trying to run, with mortgages?
No, that is something @MikeC711 is building I think.
ah ok. his namespace made me think it was some IBM app "com.ibm.sample.mortgage.MortgageApplication#mortgageApp1 "
I presented at RESO this past week on blockchain. RESO represents all of the major MLS (real estate property listing) vendors in the united states
It could be... but IBM is a big place! :-)
It's not something I've seen.
Met Brian Behlendorf earlier this month as well.
he was part of a great event at MIT Media lab, The business of blockchain
http://events.technologyreview.com/video/watch/brian-behlendorf-hyperledger-project-unlocking/
:thumbsup:
I have a query about the .bna file
in the example
the model is :
namespace net.biz.digitalPropertyNetwork
asset LandTitle identified by titleId {
o String titleId
--> Person owner
o String information
o Boolean forSale optional
}
asset SalesAgreement identified by salesId {
o String salesId
--> Person buyer
--> Person seller
--> LandTitle title
}
participant Person identified by personId {
o String personId
o String firstName
o String lastName
}
transaction RegisterPropertyForSale identified by transactionId{
o String transactionId
--> Person seller
--> LandTitle title
}
and the operation is
function onRegisterPropertyForSale(propertyForSale) {
console.log('### onRegisterPropertyForSale ' + propertyForSale.toString());
propertyForSale.title.forSale = true;
/* new line is here to update the information */
propertyForSale.title.information = propertyForSale.title.information + ' Updated at: ' + new Date().toDateString();
return getAssetRegistry('net.biz.digitalPropertyNetwork.LandTitle').then(function(result) {
return result.update(propertyForSale.title);
}
);
}
so who can tell me how to link the method onRegisterPropertyForSale(propertyForSale) with the transaction defined as "transaction RegisterPropertyForSale identified by transactionId"
so why 'onregisteryPropertyForSale' is the implementation of the `registeryPropertyForSale` transaction
?
and can I add some more parameters to onRegisterPropertyForSale(propertyForSale) ?
The javascript transaction processor function is linked to a modeled transaction by a `@param` tag
@dselman Thanks Dan, I'll make that change. Also trying to re-structure a bit to avoid multiple tests inside one construct (so failures are hard to diagnose).
@Jakeeyturner can you show me the details about it thanks :)
https://hyperledger.github.io/composer/unstable/reference/js_scripts.html - Take a look here
https://hyperledger.github.io/composer/reference/js_scripts.html - Take a look here
Has joined the channel.
Hello, does anyone know if it is possible with composer playground v0.5.12 running locally to add a connection profile to be able to connect it to my local fabric server?
@DanHerman Not at the moment, it's currently being worked on (as well as identity support).
@Jakeeyturner Thanks, good to know. One more question, is there a way to get a transaction list from the composer-rest-server, or is the only way to get transactions direct from the fabric server?
@conroydave Yes, this is an effort on the part of the Competitive Project Office to take a soup to nuts look at HLF and HFC vs Ethereum from the aspect of a developer learning it, developing it, etc.. We chose a mortgage application process and I wrote the first iteration as standalone silo applications (all in nodeJS w/Cloudant) from the bank, the credit agency, the municipality, ... and now I am doing the inclusion of Blockchain hlf/hfc as a colleague is doing it from the Ethereum perspective. Just to put context to my constant pestering of the SMEs.
@Jakeeyturner I have a philosophical question :-) If you had to create a decentralized marketplace for digital currencies, why would you choose hyperledger fabric ?
Any idea ?
thanks @Jakeeyturner
@annbnn that's a great question to ask in #fabric or #fabric-questions
One quick unit test question ... in tutorial 2 ... much of the unit test functionality is of the form:
then(() => { return ...
But as I'm trying to get familiar with mocha and chai, I see https://mochajs.org/#arrow-functions which discourages arrow function for their loss of mocha context. Coming in from a point of complete ignorance ... is this a stylistic thing ... or am I missing something. Is there a notable benefit to arrow function (lamdas) over defined functions?
Is there a fabric composer demo available that has the artifacts for the Car Lease Demo, show deployment of the business network. etc
Hi. What is the server URL address for the Rocket chat APP that you are using ?
Sorry.. just get what was happening.
:D
Possible doc error? At https://hyperledger.github.io/composer/jsdoc/module-composer-runtime.Factory.html it shows:
newConcept(ns, type) ... but the sample just below it shows:
var record = factory.newConcept('org.acme', 'Record', 'RECORD_1');
I think 3rd parm doesn't belong unless concept is just a string. Also possible I'm mis-understanding.
I am trying to deploy a .bna file in one bluemix blockchain services
getting 2 different errors following the instructions from SO: http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
Rafaels-MacBook-Pro:dist cassolato$ composer network deploy -p bluemix -a my-network.bna -i WebAppAdmin -s 5578db6a1c
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.7
Description: The Hello World of Fabric Composer samples
⠙ Deploying business network definition. This may take a minute...E0428 15:10:46.893144000 123145485950976 handshake.c:128] Security handshake failed: {"created":"@1493403046.893108000","description":"Handshake read failed","file":"../src/core/lib/security/transport/handshake.c","file_line":237,"referenced_errors":[{"created":"@1493403046.893101000","description":"FD shutdown","file":"../src/core/lib/iomgr/ev_poll_posix.c","file_line":427}]}
⠹ Deploying business network definition. This may take a minute...events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)
E0428 15:10:47.964365000 123145485950976 handshake.c:128] Security handshake failed: {"created":"@1493403047.964326000","description":"Handshake read failed","file":"../src/core/lib/security/transport/handshake.c","file_line":237,"referenced_errors":[{"created":"@1493403047.964321000","description":"FD shutdown","file":"../src/core/lib/iomgr/ev_poll_posix.c","file_line":427}]}
and with a "simple"user
Rafaels-MacBook-Pro:dist cassolato$ composer network deploy -p bluemix -a my-network.bna -i user_type8_1 -s 1fdd294155
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.7
Description: The Hello World of Fabric Composer samples
✖ Deploying business network definition. This may take a minute...
Error: Error: Input parameter missing
Command failed
Rafaels-MacBook-Pro:dist cassolato$
is there something missing?
I followed the github tutorial to create and deploy locally the .bna file from https://github.com/dselman/fabric-composer/wiki/Tutorial-2-:-Creating-a-Fabric-Composer-Solution
but.. when I try to deploy on bluemix I am geeting the errors above
On a concept ... this looks a bit verbose ... am I missing something to short-hand it?
let bankInfoConcept = factory.newConcept(NS, 'BankInfo') ;
bankInfoConcept.name = 'MikeBank' ;
bankInfoConcept.routingNumber = 123456 ;
bankInfoConcept.accountNumber = 654321 ;
bankInfoConcept.accountType = 'Checking' ;
bankInfoConcept.balance = 12345.67 ;
assets.mortgage1.bankInfo = [] ;
assets.mortgage1.bankInfo.push(bankInfoConcept) ;
Would love to be able to do bankInfoConcept = { name : 'MikeBank', routingNumber : 123456, ... } ; Possibly feed that in to the newConcept method ? I'm at best intermediate on js specific skills ... so maybe I'm missing something from javaScript to simplify this.
@MikeC711 you could try using Object.assign:
```
let bankInfoConcept = factory.newConcept(NS, 'BankInfo') ;
bankInfoConcept = Object.assign(bankInfoConcept, { name : 'MikeBank', routingNumber : 123456, ... });
```
but I do not know for sure if it will work when deployed to the JavaScript runtime we use on Hyperledger Fabric (which is not ES6/ES7 compatible)
Agree that there is a doc error, could you raise a GitHub issue for that?
And on the subject of arrow functions, I think we're just used to using them everywhere anyway; the main benefit is avoiding having to use this kind of code:
```
function doSomething() {
const self = this;
doOtherThing(function (result) {
self.somethingElse(result);
});
}
```
With `function (args) { ... }` the `this` variable is set to the function
With `function (args) { ... }` the `this` variable is set to the anonymous callback function
```
function doSomething() {
doOtherThing((result) => {
this.somethingElse(result);
});
}
```
with arrow functions, the `this` variable is preserved
If you update the bna file, what will happen to existing asset registry..is it going to still exist ? In v1.0, it allows you to update chaincode.
What exactly is happening under the covers, when you update the chaincode.
When is the fabric composer runtime installed on the fabric peers. Is it installed and instantiated only the first time you deploy the bna file. What will happen when you update the bna file
@gauthampamu if you update the BNA file using `composer network update`, then a transaction is sent to the chaincode that updates the BNA (which is stored in the world state). No chaincode update/modification happens during this process.
We have not yet exposed the HLF v1.0 chaincode upgrade APIs via composer, but I suspect we will introduce a `composer network upgrade` to upgrade the chaincode
When you update the BNA file using `composer network update`, no data is lost - all data stored in the world state stays in the world state.
lets say you built the bna file with fabric composer runtime version 1.0 and now we have a new version v1.1 or new code base of composer. Are we expected to upgrade using the composer network ugprade..when it is offered..
you don't have to, but if you wanted new features or bug fixes in the v1.1 release then you would have to perform a `composer network upgrade` to upgrade the chaincode
I agree that we don't have to upgrade the runtime for everyone new snapshot but we will need to have way to upgrade the runtime for bugfixes, security fixes or performance fixes.
Any idea on when the composer network upgrade will be available. Will it be offered when composer supports v1.0 of fabric.
Now that Composer does support v1.0 of Fabric, we are looking at how we can exploit v1.0 features in Composer - so expect to see things like that soon.
@rjones hello
Has joined the channel.
@sstone1 I apologize for this, but I might need to rename/archive this version of this channel.
:(
User User_1 added by rjones.
I will try to delay for a while
let me just grab the latest Q&As
I think this issue will be fixed after the server upgrade. If you're willing to keep inviting people, we can let it go
you also should be able to mail yourself (or anyone) the channel contents
When is the server being upgraded?
click the (i) button in the upper right, click "choose messages", then choose them and email them
it was scheduled for some future date when we had a work around, but we don't have a work around for this issue. I will try to get it done not this Saturday but the one after
hi all
OK sure, thanks @rjones
hi @ProfessorX !
@sstone1 Thanks Simon, I will figure out how to raise the doc issue on github. As for the assignment of the concepts, I can just make a separate function for those that I populate more than once. I'll assume that the code I sent does work unless you tell me different ... and I'll just go with that. Thanks,
Hi All
Hi
I'm new to Fabric Composer.
I'm trying to learn Composer-CLI from this link( https://hyperledger.github.io/composer/tutorials/getting-started-cmd-line.html )
When I execute submitTransaction I'm getting below mentioned Exception. If I understand this exception, it means
I have a query here regarding adding an Asset using CLI? Is there a command to list all the Assets/ Participants/Transactions using CLI?
Hi
I'm new to Fabric Composer.
I'm trying to learn Composer-CLI from this link( https://hyperledger.github.io/composer/tutorials/getting-started-cmd-line.html )
When I execute submitTransaction I'm getting below mentioned Exception. If I understand this exception, it means
I have a query here regarding adding an Asset using CLI? Is there a command to list all the Assets/ Participants/Transactions using CLI?
Hi
I'm new to Fabric Composer. I'm trying to learn Composer-CLI from this link( https://hyperledger.github.io/composer/tutorials/getting-started-cmd-line.html )
When I execute submitTransaction I'm getting below mentioned Exception. If I understand this exception, it means Asset with ID 1148 doesn't exist. How do I add an Asset using CLI? Is there a command to list all the Assets/ Participants/Transactions using CLI?
--------------------------------------------------------------------------------------------------------------------------------------------------------------
npm run submitTransaction
> getting-started@1.0.0 submitTransaction /usr/hyper-ledger-composer/composer-sample-applications/packages/getting-started
> node cli.js landregistry submit && node cli.js landregistry list
info: [Composer-GettingStarted] Fabric Composer: Getting Started appliation
info: [Composer-GettingStarted] LandRegistry:
@Dpkkmr Those assets should have been created when you followed the quickstart tutorial (https://hyperledger.github.io/composer/installing/quickstart.html) before continuing with the command line tutorial. This tutorial does rely on everything remaining from the completion of the quickstart
[ ](https://chat.hyperledger.org/channel/composer?msg=n3ZXM89hE4X4D3CNA) @davidkel Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=n3ZXM89hE4X4D3CNA) @davidkel Thanks!
I had missed executing npm test. After executing this I'm able to test it. I had couple of questions,
If I have to add more assets from CLI, what is the command for doing it?
Can I view all the transaction details using CLI command?
@Dpkkmr there isn't a way to add assets via the cli, in this case you would need to write your own code to add assets (for how to do that you can review the code used by the quickstart tutorial). Sorry there isn't a CLI command to view all transactions.
Hi I issue indentity to participant
but failed
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1/packages/getting-started$ composer identity issue -n 'digitalproperty-network' -i admin -s Xurw3yU9zI0l -u -a "net.biz.digitalPropertyNetwork.Person#mae@biznet.org"
Error: {"created":"@8341016952.853184192","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@8341016952.853171753","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@8341016952.853179861","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed.
Command succeeded
^C^C^C^C^C^C^C^C^C^C^C
@xuzhao103389 are you using Fabric v0.6 or v1.0 ?
That error means that you've configured Composer with the wrong port or the wrong version
Can you also paste in your connection profile? `cat ~/.composer-connection-profiles/defaultProfile/connection.json`
I am using fabric V1.0 @sstone1
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1/packages/getting-started/hlfv1$ cat connection.json
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://localhost:7050"
}
],
"ca": "http://localhost:7054",
"peers": [
{
"requestURL":"grpc://localhost:7051",
"eventURL":"grpc://localhost:7053"
},
{
"requestURL":"grpc://localhost:7056",
"eventURL":"grpc://localhost:7058"
}
],
"keyValStore": "YOUR_HOME_DIR/.hfc-key-store",
"channel": "mychannel",
"mspID": "Org1MSP",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}
@xuzhao103389 that is not the connection profile being used
`~/.composer-connection-profiles/defaultProfile/connection.json`
you have not specified a `-p connectionProfileName` flag so it defaults to `defaultProfile`
oh
the `-p connectionProfileName` specifies the name of a directory inside `~/.composer-connection-profiles`, e.g. `~/.composer-connection-profiles/connectionProfileName`
that directory must contain the `connection.json` file
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1/packages/getting-started$ cat ~/.composer-connection-profiles/defaultProfile/connection.json
{
"type": "hlf",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7053",
"keyValStore": "/home/vagrant/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}
OK, that's the problem then - that's a v0.6 connection profile
can I get a V1.0
did you follow the HLF v1.0 getting started guide?
file
yes
now it is working for me
I am using fabrci V1.0
you should have a profile under `~/.composer-connection-profiles/hlfv1/connection.json`
and you need to refer to it by using `-p hlfv1` on all commands that use connection profiles
can you give me the instructions?
instructions for what?
can I copy composer-sample-applications-hlfv1/packages/getting-started/hlfv1/connection.json into ~/.composer-connection-profiles/hlfv1/connection.json
and then run the command
composer identity issue -n 'digitalproperty-network' -i admin -s Xurw3yU9zI0l -p hlfv1 -u -a "net.biz.digitalPropertyNetwork.Person#mae@biznet.org"
does the file `~/.composer-connection-profiles/hlfv1/connection.json` already exist?
the v1.0 getting started guide should have created it
yes
so you just need to change the command
composer identity issue *-p hlfv1* -n 'digitalproperty-network' -i admin -s Xurw3yU9zI0l -p hlfv1 -u -a "net.biz.digitalPropertyNetwork.Person#mae@biznet.org"
most of the commands support the `-p connectionProfileName` argument
but as you know my content of connection file is
{
"type": "hlf",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7053",
"keyValStore": "/home/vagrant/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}
that is for V0.6
that was the defaultProfile file `~/.composer-connection-profiles/defaultProfile/connection.json`
you can have multiple connection profiles
ok
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1/packages/getting-started/hlfv1$ composer identity issue -n 'digitalproperty-network' -i admin -s Xurw3yU9zI0l -p hlfv1 -u -a "net.biz.digitalPropertyNetwork.Person#mae@biznet.org"
if you run `cat ~/.composer-connection-profiles/hlfv1/connection.json` you should see the v1.0 connection profile
now it looks like my command is hanging
can you paste in the v1.0 connection profile please
ok
now it is working thanks @sstone1
np
this time I got another error
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1/packages/getting-started$ composer identity issue -n 'digitalproperty-network' -i admin -s Xurw3yU9zI0l -p hlfv1 -u -a "net.biz.digitalPropertyNetwork.Person#Fred@biznet.org"
Error: userID not specified
Command failed.
Command succeeded
if I add a new user
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1/packages/getting-started$ composer participant add -n '@ibm/digitalproperty-network' -i admin -s Xurw3yU9zI0l -d '{"$class":"net.biz.digitalPropertyNetwork.Person","personId":"mae@biznet.org","firstName":"Mae","lastName":"Smith"}'
Error: Could not parse enrollment response [{"success":false,"result":null,"errors":[{"code":400,"message":"Authorization failure"}],"messages":[]}
] as JSON due to error [TypeError: Cannot read property 'errors' of undefined]
Command failed.
Command succeeded
the error is "Authorization failure"
I am using the example from the link https://hyperledger.github.io/composer/managing/participant-add.html
not sure what is the problem
`-i admin -s Xurw3yU9zI0l` have to be valid Hyperledger Fabric credentials
those are the default ID and secret from Hyperledger Fabric v0.6
the default ID and secret for Hyperledger Fabric v1.0 is `-i admin -s adminpw`
oh
thanks
for the `composer identity issue` command, you have not specified a value (the new user ID) for the `-u` flag
the example shows `-u maeid1`
composer participant add -n '@ibm/digitalproperty-network' -i admin -s adminpw -d '{"$class":"net.biz.digitalPropertyNetwork.Person","personId":"mae@biznet.org","firstName":"Mae","lastName":"Smith"}'
Error: failed to obtain cds for @ibm/digitalproperty-network - transaction not found @ibm/digitalproperty-network/mychannel
Command failed.
Command succeeded
there is still some issue when creating the participant
Error: Private key missing from key store. Can not establish the signing identity for user admin
if I try this command
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1/packages/getting-started$ composer participant add -n '@ibm/digitalproperty-network' -i admin -s adminpw -p hlfv1 -d '{"$class":"net.biz.digitalPropertyNetwork.Person","personId":"mae@biznet.org","firstName":"Mae","lastName":"Smith"}'
Error: failed to obtain cds for @ibm/digitalproperty-network - transaction not found @ibm/digitalproperty-network/mychannel
Command failed.
Command succeeded
remove the `@ibm/` from the business network name
i'll get the docs updated
now it is working
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-applications-hlfv1/packages/getting-started$ composer participant add -n 'digitalproperty-network' -i admin -s adminpw -p hlfv1 -d '{"$class":"net.biz.digitalPropertyNetwork.Person","personId":"mae@biznet.org","firstName":"Mae","lastName":"Smith"}'
Participant was added to participant registry.
Command completed successfully.
Command succeeded
thanks
weird
what is @ ibm
it _was_ part of the name of the sample digital property business network
but we have removed it a long time ago
guess we didn't update all of the docs :)
:)
thanks a million
np
@here we've released Hyperledger Composer v0.7.0, read all about it on GitHub: https://github.com/hyperledger/composer/releases/tag/v0.7.0 🎉
Also, you can sign up for the new Hyperledger Composer mailing list for similar announcements and development discussion: https://lists.hyperledger.org/mailman/listinfo/hyperledger-composer
nice
is it possible to run the composer ui with docker and connection profile? I'm trying to run v1 with composer and the playground
added this to sample application hlv1:
```
composer:
image: fabriccomposer/composer-playground
ports:
- '8080:8080'
links:
- peer0
- peer1
- orderer0
- ca0
volumes:
- /Users/dima/.hfc-key-store/:/.hfc-key-store/
environment:
COMPOSER_CONFIG: >
{
"type": "hlfv1",
"orderers": [
"grpc://ordere0:7050"
],
"ca": "http://ca0:7054",
"peers": [
{
"requestURL": "grpc://peer0:7051",
"eventURL": "grpc://peer0:7053"
},
{
"requestURL": "grpc://peer1:7051",
"eventURL": "grpc://peer1:7053"
}
],
"keyValStore": "/.hfc-key-store",
"channel": "mychannel",
"mspID": "Org1MSP",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}
```
Message Attachments
Hi
When I'm checking Rest API I'm getting version mismatch Exception. Can someone help me is solving this version compatibility issue?
Following composer quickstart for v1 Fabric. Install seemed fine. npm test passed sample test but failed after Adding default land titles to the asset registry. no connection.json file. Tried adding connection.json from github. Fails after Adding default land titles to the asset registry, but with connection refused. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054] Looks like there are no v1.0 Fabric dockers started? Am I supposed to have started a v1.0 Fabric network first? Am I supposed to have a composer instance running before running the sample app?
@jworthington sounds like that could be a bug could you raise an issue please ?
I'll try, having not done that before. In GIT or is this in JIRA?
Raised issue in Git.
@dklesev the new UI, `composer-playground`, does not yet support connection profiles - that work should be finished this week :fingers_crossed: at which point you'll find documentation on the website about how to set it up.
@Dpkkmr you have deployed a business network using an old version (0.5.12) of `composer-cli` and are trying to use a new version (0.7.0) of `composer-rest-server`. You either need to upgrade `composer-cli` to 0.7.0 and redeploy the business network, or downgrade `composer-rest-server` to 0.5.12.
Upgrade `composer-cli` - `npm upgrade -g composer-cli`
Downgrade `composer-rest-server` - `npm install -g composer-rest-server@0.5.12`
Hi, I have a "networks" object on my defaultProfile's conection.json with the following value: "digitalproperty-network": "ec45b2bc2fc7fdc06a064a82a21c357223967acbfc0e1145e29a801f3b30a013"
where does this come from? is it the chaincode id of the deployed network?
correct
the `composer network deploy` command adds it to the connection profile after a successful deploy
I'm trying to deploy my bna file to the bluemix blockchain service (v0.6), but the request times out, although I can see on my Blockchain dashboard that the deploy is indeed being invoked
should I believe the blockchain dashboard or the composer cli output?
is there a running chaincode in the bluemix console?
currently have 3 chaincode IDs
should I try recreating it from scratch?
i guess it's possible that the deployWaitTime needs to be increased?
I increased it to 10 minutes and still getting the time out
what I don't understand is why I can see the deploy command on the console
anything in the peer logs?
blockchain command*
blockchain console***
just tried it with a fresh blockchain service
here are the logs
OUT - 16:07:43.409 [nodeCmd] serve -> INFO 025[0m Starting peer with ID=name:"vp0" , network ID=e8ee9c468ef047188211aff085a10b4c, address=e8ee9c468ef047188211aff085a10b4c-vp0.us.blockchain.ibm.com:30001, rootnodes=e8ee9c468ef047188211aff085a10b4c-vp1.us.blockchain.ibm.com:30001,e8ee9c468ef047188211aff085a10b4c-vp2.us.blockchain.ibm.com:30001,e8ee9c468ef047188211aff085a10b4c-vp3.us.blockchain.ibm.com:30001, validator=true
OUT - 16:07:43.409 [consensus/statetransfer] blockThread -> INFO 026[0m Validated blockchain to the genesis block
OUT - 16:07:43.409 [consensus/statetransfer] SyncToTarget -> INFO 027[0m Syncing to target 46b9dd2b0ba88d13233b3feb743eeb243fcd52ea62b81b82b50c27646ed5762fd75dc4ddd8c0f200cb05019d67b592f6fc821c49479ab48640292eacb3b7c4be for block number 0 with peers []
OUT - 16:07:43.409 [consensus/statetransfer] blockThread -> INFO 028[0m Validated blockchain to the genesis block
OUT - 16:07:43.409 [consensus/pbft] ProcessEvent -> INFO 029[0m Replica 0 application caught up via state transfer, lastExec now 0
OUT - 16:07:43.417 [rest] StartOpenchainRESTServer -> INFO 02a[0m Initializing the REST service on 0.0.0.0:5001, TLS is enabled.
OUT - 2017-04-29 16:07:58,430 INFO success: start_peer entered RUNNING state, process has stayed up for > than 15 seconds (startsecs)
OUT - 16:32:01.184 [consensus/pbft] ProcessEvent -> INFO 02b[0m Replica 0 batch timer expired
OUT - 16:32:01.184 [consensus/pbft] sendBatch -> INFO 02c[0m Creating batch with 1 requests
OUT - 16:32:01.503 [consensus/pbft] executeOne -> INFO 02d[0m Replica 0 executing/committing request batch for view=0/seqNo=1 and digest +URf7iqz5z0DZtB8yKLNt8hvbTq8cZXPvE+1Z4t4KL1uYKLKXbZxpeDYFeBeVW5H8aJNtlZEoWYl5Ri69bdQbw==
OUT - [31m16:32:45.053 [dockercontroller] Start -> ERRO 02e[0m start-could not start container API error (500): Error response from daemon: failed to get network during CreateEndpoint: network b48d95b0a940a57699e09670fe2dc63cc477a68b5ed9b8d516d1055fe99d0056 not found
OUT - [31m16:32:45.054 [chaincode] Launch -> ERRO 02f[0m launchAndWaitForRegister failed Error starting container: API error (500): Error response from daemon: failed to get network during CreateEndpoint: network b48d95b0a940a57699e09670fe2dc63cc477a68b5ed9b8d516d1055fe99d0056 not found
OUT - 16:32:45.054 [consensus/pbft] execDoneSync -> INFO 030[0m Replica 0 finished execution 1, trying next
This time a new block appears but both "Deployments" and "Invocations" columns are 0
My connection.json file:
{
"type": "hlf",
"membershipServicesURL": "grpcs://e8ee9c468ef047188211aff085a10b4c-ca.us.blockchain.ibm.com:30001",
"peerURL": "grpcs://e8ee9c468ef047188211aff085a10b4c-vp3.us.blockchain.ibm.com:30001",
"eventHubURL": "grpcs://e8ee9c468ef047188211aff085a10b4c-vp3.us.blockchain.ibm.com:31001",
"keyValStore": "/home/jeff/.composer-credentials",
"deployWaitTime": "600",
"invokeWaitTime": "100",
"certificate": "
I'm using the carauction-network.bna
(from https://composer-playground.mybluemix.net/)
and using composer v0.7
complete log here: https://gist.githubusercontent.com/torresjeff/ed118d59d2bcfd01c65509e735db4c28/raw/2f1e63b57e8214b5da0d96a637e92612c0421107/blockchain.log
if it helps
@torresjeff which user ID are you using to try the deployment?
https://github.com/hyperledger/composer/issues/794 says user_type4_1
yep, this time i tried user_type1_0
the thing is it wont let me deploy with admin
why not?
i've only ever deployed with admin or WebAppAdmin... not sure what the other types are for
user_type4_* seems to not work at all
other times I've tried with admin i get 'Error: sql: no rows in result set'
but just tried again and its deploying
user_type1_0 works for me
that means you've enrolled somewhere else using the admin ID
would opening the blockchain console count as being enrolled?
no that wouldn't count
other than that i haven't "enrolled" somewhere else
the secret gets regenerated each time you create a new service - could that be it?
you mean like trying to paste a secret from a previous service I created?
yeah
always making sure to copy the credentials from the service im using
also, if i paste an incorrect secret that wouldn't let me deploy at all or would it?
the other possiblity is that there is a `member.admin` file in your `keyValStore` directory
and that file contains an old certificate that does not match the Fabric instance you are trying to deploy to
will try deleting
I'm sorry for bothering you so much, but could you try with my config to check if it deploys?
{
"type": "hlf",
"membershipServicesURL": "grpcs://e8ee9c468ef047188211aff085a10b4c-ca.us.blockchain.ibm.com:30001",
"peerURL": "grpcs://e8ee9c468ef047188211aff085a10b4c-vp3.us.blockchain.ibm.com:30001",
"eventHubURL": "grpcs://e8ee9c468ef047188211aff085a10b4c-vp3.us.blockchain.ibm.com:31001",
"keyValStore": "/home/jeff/.composer-credentials",
"deployWaitTime": "600",
"invokeWaitTime": "100",
"certificate": "-----BEGIN CERTIFICATE-----\nMIID6TCCA26gAwIBAgIQCiYEWw1faoRpM2xufaiPLTAKBggqhkjOPQQDAjBMMQsw\nCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMSYwJAYDVQQDEx1EaWdp\nQ2VydCBFQ0MgU2VjdXJlIFNlcnZlciBDQTAeFw0xNjA2MDcwMDAwMDBaFw0xOTA2\nMTIxMjAwMDBaMIGJMQswCQYDVQQGEwJVUzERMA8GA1UECBMITmV3IFlvcmsxDzAN\nBgNVBAcTBkFybW9uazE0MDIGA1UEChMrSW50ZXJuYXRpb25hbCBCdXNpbmVzcyBN\nYWNoaW5lcyBDb3Jwb3JhdGlvbjEgMB4GA1UEAwwXKi51cy5ibG9ja2NoYWluLmli\nbS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARTKAZypDOqw34HWujQeL82\nj1e9rN1inpN6ngrq49+OpYIe8ckHnJhsWPpf+zeIQePboDQVUTDtYXh7212BsVoX\no4IB8jCCAe4wHwYDVR0jBBgwFoAUo53mH/naOU/AbuiRy5Wl2jHiCp8wHQYDVR0O\nBBYEFK+1RoBnUnb8nr2hNtkUu3FRrbYuMDkGA1UdEQQyMDCCFyoudXMuYmxvY2tj\naGFpbi5pYm0uY29tghV1cy5ibG9ja2NoYWluLmlibS5jb20wDgYDVR0PAQH/BAQD\nAgeAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjBpBgNVHR8EYjBgMC6g\nLKAqhihodHRwOi8vY3JsMy5kaWdpY2VydC5jb20vc3NjYS1lY2MtZzEuY3JsMC6g\nLKAqhihodHRwOi8vY3JsNC5kaWdpY2VydC5jb20vc3NjYS1lY2MtZzEuY3JsMEwG\nA1UdIARFMEMwNwYJYIZIAYb9bAEBMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3\nLmRpZ2ljZXJ0LmNvbS9DUFMwCAYGZ4EMAQICMHsGCCsGAQUFBwEBBG8wbTAkBggr\nBgEFBQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29tMEUGCCsGAQUFBzAChjlo\ndHRwOi8vY2FjZXJ0cy5kaWdpY2VydC5jb20vRGlnaUNlcnRFQ0NTZWN1cmVTZXJ2\nZXJDQS5jcnQwDAYDVR0TAQH/BAIwADAKBggqhkjOPQQDAgNpADBmAjEA7LViaN74\nOwIp/zqfwSRvURg965+m73/edCeNKrsLf6GuE0sLwpX6pQNnDlr6SzGnAjEA+qk0\nsYRnd2gCQeD9fWbCJIw0vJDqeZr1WJ64aVoJ8kyASzY/yoarSm2wqujXJwEf\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIDrDCCApSgAwIBAgIQCssoukZe5TkIdnRw883GEjANBgkqhkiG9w0BAQwFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0xMzAzMDgxMjAwMDBaFw0yMzAzMDgxMjAwMDBaMEwxCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxJjAkBgNVBAMTHURpZ2lDZXJ0IEVDQyBT\nZWN1cmUgU2VydmVyIENBMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE4ghC6nfYJN6g\nLGSkE85AnCNyqQIKDjc/ITa4jVMU9tWRlUvzlgKNcR7E2Munn17voOZ/WpIRllNv\n68DLP679Wz9HJOeaBy6Wvqgvu1cYr3GkvXg6HuhbPGtkESvMNCuMo4IBITCCAR0w\nEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwNAYIKwYBBQUHAQEE\nKDAmMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQgYDVR0f\nBDswOTA3oDWgM4YxaHR0cDovL2NybDMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0R2xv\nYmFsUm9vdENBLmNybDA9BgNVHSAENjA0MDIGBFUdIAAwKjAoBggrBgEFBQcCARYc\naHR0cHM6Ly93d3cuZGlnaWNlcnQuY29tL0NQUzAdBgNVHQ4EFgQUo53mH/naOU/A\nbuiRy5Wl2jHiCp8wHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUwDQYJ\nKoZIhvcNAQEMBQADggEBAMeKoENL7HTJxavVHzA1Nm6YVntIrAVjrnuaVyRXzG/6\n3qttnMe2uuzO58pzZNvfBDcKAEmzP58mrZGMIOgfiA4q+2Y3yDDo0sIkp0VILeoB\nUEoxlBPfjV/aKrtJPGHzecicZpIalir0ezZYoyxBEHQa0+1IttK7igZFcTMQMHp6\nmCHdJLnsnLWSB62DxsRq+HfmNb4TDydkskO/g+l3VtsIh5RHFPVfKK+jaEyDj2D3\nloB5hWp2Jp2VDCADjT7ueihlZGak2YPqmXTNbk19HOuNssWvFhtOyPNV6og4ETQd\nEa8/B6hPatJ0ES8q/HO3X8IVQwVs1n3aAr0im0/T+Xc=\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j\nb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB\nCSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97\nnh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt\n43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P\nT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4\ngdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO\nBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR\nTLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw\nDQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr\nhMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg\n06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF\nPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls\nYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk\nCAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4=\n-----END CERTIFICATE-----\n",
"certificatePath": "/certs/peer/cert.pem"
}
that is my connection.json, i have it located under /home/jeff/.composer-connection-profiles/blockchain-connectionprofile
my composer network deploy command: `composer network deploy -a carauction-network.bna --enrollId WebAppAdmin --enrollSecret 5da5af09b6 -p blockchain-connectionprofile`
my admin and WebAppAdmin users:
```{
"enrollId": "admin",
"enrollSecret": "0aaf9cc989",
"affiliation": "group1",
"username": "admin",
"secret": "0aaf9cc989"
},
{
"enrollId": "WebAppAdmin",
"enrollSecret": "5da5af09b6",
"affiliation": "group1",
"username": "WebAppAdmin",
"secret": "5da5af09b6"
},```
tried with both admin and WebAppAdmin but still timing out
both i get Error: Identity or token does not match which i'd expect given you've already tried with them
would user_type1_1 work?
yeah, user_type1_0 worked for me
```
{
"enrollId": "user_type1_1",
"enrollSecret": "4030a62468",
"affiliation": "group1",
"username": "user_type1_1",
"secret": "4030a62468"
}
```
already tried with 1_1
so maybe it wouldn't work for you
already tried with 1_0*
deploying now
worked for me, just deployed 9fef41763488a9786d964a85d6a7646f60a6492762ac2f9d31b7d4e7085aad85
hmmm
did you deploy carauction-network?
yep
```
$ composer network ping -p bluemix -n carauction-network -i user_type1_1 -s 4030a62468
The connection to the network was successfully tested: carauction-network
version: 0.7.0
participant:
wow hmm
really don't know what's wrong then
what path did you set for keValStore?
`"keyValStore": "/Users/sstone1/.composer-credentials/bluemix",`
that's for mac right?
yep
one question, is deploying from the composer-ui the same as the `composer network deploy` command?
yep
will try ubuntu live desktop to see if it works
`.composer-credentials` and `.composer-connection-profiles` folder should be created manually, correct?
had to try it on a mac and it worked
@sstone1 apparently I found a bug. All this time I tried with`"deployWaitTime": "600"` on my `connection.json` in order to give it some extra time to deploy. Now I tried with `"deployWaitTime": "300"` and it worked
@sstone1 apparently I found a bug. All this time I tried with `"deployWaitTime": "600"` on my `connection.json` in order to give it some extra time to deploy. Now I tried with `"deployWaitTime": "300"` and it worked
both on mac and ubuntu didn't work with 600
I have a question regarding the `package.json` in my bna file. Does the `name` property in the `package.json` define the network identifier? Also, do I necessarily have to include other things like the `scripts` property?
[ ](https://chat.hyperledger.org/channel/composer?msg=pPCvL2h63Dhv4DPA6) @sstone1 [ ](https://chat.hyperledger.org/channel/composer?msg=pPCvL2h63Dhv4DPA6) @sstone1
[ ](https://chat.hyperledger.org/channel/composer?msg=pPCvL2h63Dhv4DPA6) @sstone1 Simon, Are calls recorded? I am based in Australia so the UK/US call times are a bit of a challenge.
[ ](https://chat.hyperledger.org/channel/composer?msg=mux3aDF2cjN9kDr86) @dselman Thanks, no errors now. The command was from the following documentation: https://hyperledger.github.io/composer/tutorials/getting-started-playground.html#installationoptions
@abcoathup could you raise a github issue about the docs please ? the examples with sudo should be changed to not use sudo
Is it possible to get an asset from a registry and store it in an object? I get the following error when I try to do that: `Use Serializer.toJSON to convert resource instances to JSON objects.`
I have tried getting the serializer with `businessNetworkDefinition.getSerializer()` and then calling its `toJSON()` method passing in the result from the promise as a parameter but I get the following error: `Serializer.toJSON only accepts instances of Resource.` Any idea of what it could be?
until now I have to manually specify each property of the asset to be able to store it in a javascript object
btw the error appears when I use the `registry.getAll()` method, it seems to work with `registry.get()`
@torresjeff `registry.getAll()` returns an array of Resources -- you need to pass each element to the serializer to create a JS Object suitable for long-lived serialization.
(see JSDoc for details)
Thanks @dselman
Up until now i have my app running locally, what if i want to upload it to bluemix? what happens to the `.composer-connection-profiles` and `.composer-credentials` folders? where do I put those?
@sstone1 I am having the same problem as @torresjeff when trying to deploy a .bna file in bluemix
@cassolato deploy time out?
Rafaels-MacBook-Pro:dist cassolato$ composer network deploy -p bluemix -a my-network.bna -i admin -s d850bc3046
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.7
Description: The Hello World of Fabric Composer samples
⠴ Deploying business network definition. This may take a minute...events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
same issue is happening with the user
can you paste your `connection.json`?
*bold user_type1_0*
here is
{
"type": "hlf",
"membershipServicesURL": "grpcs://70076b004358459cade7e39cbe8783a6-ca.us.blockchain.ibm.com:30001",
"peerURL": "grpcs://70076b004358459cade7e39cbe8783a6-vp1.us.blockchain.ibm.com:30001",
"eventHubURL": "grpcs://70076b004358459cade7e39cbe8783a6-vp1.us.blockchain.ibm.com:31001",
"keyValStore": "/Users/cassolato/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100",
"certificate": "-----BEGIN CERTIFICATE-----\nMIID6TCCA26gAwIBAgIQCiYEWw1faoRpM2xufaiPLTAKBggqhkjOPQQDAjBMMQsw\nCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMSYwJAYDVQQDEx1EaWdp\nQ2VydCBFQ0MgU2VjdXJlIFNlcnZlciBDQTAeFw0xNjA2MDcwMDAwMDBaFw0xOTA2\nMTIxMjAwMDBaMIGJMQswCQYDVQQGEwJVUzERMA8GA1UECBMITmV3IFlvcmsxDzAN\nBgNVBAcTBkFybW9uazE0MDIGA1UEChMrSW50ZXJuYXRpb25hbCBCdXNpbmVzcyBN\nYWNoaW5lcyBDb3Jwb3JhdGlvbjEgMB4GA1UEAwwXKi51cy5ibG9ja2NoYWluLmli\nbS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARTKAZypDOqw34HWujQeL82\nj1e9rN1inpN6ngrq49+OpYIe8ckHnJhsWPpf+zeIQePboDQVUTDtYXh7212BsVoX\no4IB8jCCAe4wHwYDVR0jBBgwFoAUo53mH/naOU/AbuiRy5Wl2jHiCp8wHQYDVR0O\nBBYEFK+1RoBnUnb8nr2hNtkUu3FRrbYuMDkGA1UdEQQyMDCCFyoudXMuYmxvY2tj\naGFpbi5pYm0uY29tghV1cy5ibG9ja2NoYWluLmlibS5jb20wDgYDVR0PAQH/BAQD\nAgeAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjBpBgNVHR8EYjBgMC6g\nLKAqhihodHRwOi8vY3JsMy5kaWdpY2VydC5jb20vc3NjYS1lY2MtZzEuY3JsMC6g\nLKAqhihodHRwOi8vY3JsNC5kaWdpY2VydC5jb20vc3NjYS1lY2MtZzEuY3JsMEwG\nA1UdIARFMEMwNwYJYIZIAYb9bAEBMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3\nLmRpZ2ljZXJ0LmNvbS9DUFMwCAYGZ4EMAQICMHsGCCsGAQUFBwEBBG8wbTAkBggr\nBgEFBQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29tMEUGCCsGAQUFBzAChjlo\ndHRwOi8vY2FjZXJ0cy5kaWdpY2VydC5jb20vRGlnaUNlcnRFQ0NTZWN1cmVTZXJ2\nZXJDQS5jcnQwDAYDVR0TAQH/BAIwADAKBggqhkjOPQQDAgNpADBmAjEA7LViaN74\nOwIp/zqfwSRvURg965+m73/edCeNKrsLf6GuE0sLwpX6pQNnDlr6SzGnAjEA+qk0\nsYRnd2gCQeD9fWbCJIw0vJDqeZr1WJ64aVoJ8kyASzY/yoarSm2wqujXJwEf\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIDrDCCApSgAwIBAgIQCssoukZe5TkIdnRw883GEjANBgkqhkiG9w0BAQwFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0xMzAzMDgxMjAwMDBaFw0yMzAzMDgxMjAwMDBaMEwxCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxJjAkBgNVBAMTHURpZ2lDZXJ0IEVDQyBT\nZWN1cmUgU2VydmVyIENBMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE4ghC6nfYJN6g\nLGSkE85AnCNyqQIKDjc/ITa4jVMU9tWRlUvzlgKNcR7E2Munn17voOZ/WpIRllNv\n68DLP679Wz9HJOeaBy6Wvqgvu1cYr3GkvXg6HuhbPGtkESvMNCuMo4IBITCCAR0w\nEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwNAYIKwYBBQUHAQEE\nKDAmMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQgYDVR0f\nBDswOTA3oDWgM4YxaHR0cDovL2NybDMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0R2xv\nYmFsUm9vdENBLmNybDA9BgNVHSAENjA0MDIGBFUdIAAwKjAoBggrBgEFBQcCARYc\naHR0cHM6Ly93d3cuZGlnaWNlcnQuY29tL0NQUzAdBgNVHQ4EFgQUo53mH/naOU/A\nbuiRy5Wl2jHiCp8wHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUwDQYJ\nKoZIhvcNAQEMBQADggEBAMeKoENL7HTJxavVHzA1Nm6YVntIrAVjrnuaVyRXzG/6\n3qttnMe2uuzO58pzZNvfBDcKAEmzP58mrZGMIOgfiA4q+2Y3yDDo0sIkp0VILeoB\nUEoxlBPfjV/aKrtJPGHzecicZpIalir0ezZYoyxBEHQa0+1IttK7igZFcTMQMHp6\nmCHdJLnsnLWSB62DxsRq+HfmNb4TDydkskO/g+l3VtsIh5RHFPVfKK+jaEyDj2D3\nloB5hWp2Jp2VDCADjT7ueihlZGak2YPqmXTNbk19HOuNssWvFhtOyPNV6og4ETQd\nEa8/B6hPatJ0ES8q/HO3X8IVQwVs1n3aAr0im0/T+Xc=\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j\nb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB\nCSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97\nnh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt\n43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P\nT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4\ngdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO\nBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR\nTLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw\nDQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr\nhMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg\n06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF\nPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls\nYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk\nCAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4=\n-----END CERTIFICATE-----\n",
"certificatePath": "/certs/peer/cert.pem"
}
have you tried this? http://stackoverflow.com/questions/42583176/getting-started-fabric-composer-on-mac-error-starting-fabric-or-error-deploy
I didn't get that error
i was able to run locally the digitalPropertyNetwork
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
✔ Deploying business network definition. This may take a minute...
but when I tried to deploy the .bna file into bluemix
Rafaels-MacBook-Pro:getting-started cassolato$ composer network deploy -p bluemix -a digitalPropertyNetwork.bna -i admin -s d850bc3046
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
TypeError: Cannot read property 'fail' of undefined
Command failed
Rafaels-MacBook-Pro:getting-started cassolato$
got that error.
http://stackoverflow.com/questions/43420927/ubuntu-16-04-fabric-composer-quick-start-typeerror-cannot-read-property-fail
````docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2bd92b257834 dev-vp0-0d2293dfdb572c01fdaec53f394b643062f70db06b4b05033f5b983e175970db "/opt/gopath/bin/0..." 5 minutes ago Up 5 minutes dev-vp0-0d2293dfdb572c01fdaec53f394b643062f70db06b4b05033f5b983e175970db
99efdfecacf4 hyperledger/fabric-peer "sh -c 'sleep 5; p..." 6 minutes ago Up 6 minutes 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1
7510ffe9a8bb hyperledger/fabric-membersrvc "membersrvc" 6 minutes ago Up 6 minutes 0.0.0.0:7054->7054/tcp scripts_membersrvc_1```
here is my credentials file
```docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2bd92b257834 dev-vp0-0d2293dfdb572c01fdaec53f394b643062f70db06b4b05033f5b983e175970db "/opt/gopath/bin/0..." 5 minutes ago Up 5 minutes dev-vp0-0d2293dfdb572c01fdaec53f394b643062f70db06b4b05033f5b983e175970db
99efdfecacf4 hyperledger/fabric-peer "sh -c 'sleep 5; p..." 6 minutes ago Up 6 minutes 0.0.0.0:7050-7053->7050-7053/tcp scripts_vp0_1
7510ffe9a8bb hyperledger/fabric-membersrvc "membersrvc" 6 minutes ago Up 6 minutes 0.0.0.0:7054->7054/tcp scripts_membersrvc_1
```
sorry :D
```{
"peers": [
{
"discovery_host": "70076b004358459cade7e39cbe8783a6-vp1.us.blockchain.ibm.com",
"discovery_port": 30001,
"api_host": "70076b004358459cade7e39cbe8783a6-vp1.us.blockchain.ibm.com",
"api_port_tls": 5001,
"api_port": 5001,
"event_host": "70076b004358459cade7e39cbe8783a6-vp1.us.blockchain.ibm.com",
"event_port": 31001,
"type": "peer",
"network_id": "70076b004358459cade7e39cbe8783a6",
"container_id": "8580570d76209a05850bc2c2054ddb239290b32c4410ab726df8810b76ffaa3a",
"id": "70076b004358459cade7e39cbe8783a6-vp1",
"api_url": "http://70076b004358459cade7e39cbe8783a6-vp1.us.blockchain.ibm.com:5001"
},
....
],
"ca": {
"70076b004358459cade7e39cbe8783a6-ca": {
"url": "70076b004358459cade7e39cbe8783a6-ca.us.blockchain.ibm.com:30001",
"discovery_host": "70076b004358459cade7e39cbe8783a6-ca.us.blockchain.ibm.com",
"discovery_port": 30001,
"api_host": "70076b004358459cade7e39cbe8783a6-ca.us.blockchain.ibm.com",
"api_port_tls": 30001,
"api_port": 30001,
"type": "ca",
"network_id": "70076b004358459cade7e39cbe8783a6",
"container_id": "7f4f61df3ef35923fddcfaf639ecdf7534d7c1c6fa49e0653c0143c2076e4d63"
}
},
"users": [
{
"enrollId": "admin",
"enrollSecret": "d850bc3046",
"affiliation": "group1",
"username": "admin",
"secret": "d850bc3046"
},
{
"enrollId": "WebAppAdmin",
"enrollSecret": "3493122b67",
"affiliation": "group1",
"username": "WebAppAdmin",
"secret": "3493122b67"
},
{
"enrollId": "user_type1_0",
"enrollSecret": "f593b621ea",
"affiliation": "group1",
"username": "user_type1_0",
"secret": "f593b621ea"
},
{
"enrollId": "user_type1_1",
"enrollSecret": "af6e51de24",
"affiliation": "group1",
"username": "user_type1_1",
"secret": "af6e51de24"
},
{
"enrollId": "user_type1_2",
"enrollSecret": "deedc06077",
"affiliation": "group1",
"username": "user_type1_2",
"secret": "deedc06077"
},
{
"enrollId": "user_type1_3",
"enrollSecret": "2bd841bdb8",
"affiliation": "group1",
"username": "user_type1_3",
"secret": "2bd841bdb8"
},
{
"enrollId": "user_type1_4",
"enrollSecret": "d05c3bc6d0",
"affiliation": "group1",
"username": "user_type1_4",
"secret": "d05c3bc6d0"
},
{
"enrollId": "user_type2_0",
"enrollSecret": "d3b5b37212",
"affiliation": "group1",
"username": "user_type2_0",
"secret": "d3b5b37212"
},
{
"enrollId": "user_type2_1",
"enrollSecret": "f7908bfa2b",
"affiliation": "group1",
"username": "user_type2_1",
"secret": "f7908bfa2b"
},
{
"enrollId": "user_type2_2",
"enrollSecret": "494140ab50",
"affiliation": "group1",
"username": "user_type2_2",
"secret": "494140ab50"
},
{
"enrollId": "user_type2_3",
"enrollSecret": "6ca45c3041",
"affiliation": "group1",
"username": "user_type2_3",
"secret": "6ca45c3041"
},
{
"enrollId": "user_type4_0",
"enrollSecret": "0ec3f34471",
"affiliation": "group1",
"username": "user_type4_0",
"secret": "0ec3f34471"
},
{
"enrollId": "user_type4_1",
"enrollSecret": "4fd862deaa",
"affiliation": "group1",
"username": "user_type4_1",
"secret": "4fd862deaa"
},
...
],
"cert": "https://blockchain-certs.mybluemix.net/us.blockchain.ibm.com.cert",
"cert_path": "/certs/peer/cert.pem"
}```
did you make sure you have the latest version of the samples app repo?
are you using hlf v0.6 or v1?
I guess I have installed both
how can I check ?
what version of the blockchain service did you create on bluemix?
@torresjeff Starter.. with hyperledger 0.6
hmm sorry don't know what else it could be
@dselman I think there's an error in the jsdocs regargind `BusinessNetworkConnection.ping()` method. In the example it calls `ping()` on the `BusinessNetworkDefinition` and not on `BusinessNetworkConnection`
@dselman I think there's an error in the jsdocs regarding `BusinessNetworkConnection.ping()` method. In the example it calls `ping()` on the `BusinessNetworkDefinition` and not on `BusinessNetworkConnection`
https://hyperledger.github.io/composer/jsdoc/module-composer-client.BusinessNetworkConnection.html#ping__anchor
You are right. Please create a GitHub issue. PRs accepted! :-)
I see there is a new version of hyperledger composer out this weekend. is there a new version of the playground as well? if yes, does the new version of local playground include the connectivity option?
Has left the channel.
is there anyone getting this error message after upgrading the composer cli
```Error: Cannot find module 'normalize-package-data'````
```composer --version
module.js:471
throw err;
^
Error: Cannot find module 'normalize-package-data'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.
One more non-technical question ... while it would be hard to do an apples to apples compare ... has anyone looked at performance of a simple app built with composer vs the same app written directly in Go? Wondering if there is a notable difference in overall performance. I'm not exactly ready to drop back and start writing it all in Go ... was just trying to get my head around it. Thanks,
Good question @MikeC711 .. I'm curious as well
Error: Cannot find module 'normalize-package-data' --> I was able to fix this issue removing and installing again the composer-admin, client and cli
@cassolato where you able to connect to the bluemix blockchain service?
When you install a new version of composer, does it delete and repopulate your existing profile and credentials directories under your home directory? Thanks.
i believe not
Hi, I recently set up a new version of a project which involved doing an npm install
I'm now getting the error
```
Unhandled error for request POST /api/com.loyyal.goyyal.Operation: ValidationError: The `com_loyyal_goyyal_Operation` instance is not valid. Details: `uuid` can't be set (value: "12d38540-ec7f-4252-91a2-2...8ea").
at /Users/johnwhitton/loyyal/Projects/goyyal/fabric/node_modules/loopback-datasource-juggler/lib/dao.js:348:12
```
I believe it's because the npm install picked up a later version of loopback-datasource-juggler
Has anyone seen anything like this?
btw definition of operation is
```
transaction Operation identified by uuid {
o String uuid
o OpKind kind
o Integer amount
--> Currency currency
--> Balance from optional
--> Balance to
o String err optional
}
```
Hi I'm new to composer and blockchain development,
Been reading and trying up Fabric with composer recently, but one thing I would like to know: Is there anyway to verify an asset that's being transferred is the same asset from the origin despite being modified in the process? Eg: X have a message to send to Z, but he first sends the message to Y, and Y changes the message before sending to Z. Is there any way for Z to find out this message is from X?
I imagine it would involve checking the hash for each block. Any other suggestions? Thanks!
Just looking for others requesting what I'm after and came across this issue: https://github.com/hyperledger/composer/issues/739
Is there any view to being able to do this on the chaincode side, rather than externally? It would be really nice to be able to modify transaction data before it is persisted. Otherwise, the trusted execution environment for such operations has to extend outside the chaincode, and I don't think that's ideal from a security standpoint.
Hi, I have been able to run my nodejs app locally, connecting to my Bluemix Blockchain service. In order to keep the connection alive I have to ping the network every 30 seconds. But this solution doesn't seem to work in Bluemix, I get the following error after some time:
```Error: {"created":"@1493693076.837780349","description":"Secure read failed","file":"../src/core/lib/security/transport/secure_endpoint.c","file_line":157,"grpc_status":14,"referenced_errors":[{"created":"@1493693076.837767866","description":"OS Error","errno":104,"file":"../src/core/lib/iomgr/tcp_posix.c","file_line":229,"os_error":"Connection reset by peer","syscall":"recvmsg"}]}```
any idea why it works on my local machine but not on bluemix?
have tried setting the ping interval to 15 secs, still get the same error on bluemix but runs fine locally
has anyone tried to use remote fabric for connection profiles?
I just installed new composer-cli, and using -p for remote fabric, but it keeps picking up default fabric which is 'localhost'...am I doing something wrong here?
Message Attachments
Message Attachments
you're passing `./connection_remote.json` as an argument for the profile, you should only specify the name of the profile, not the json containing the data itself
by default, composer cli will look for a folder with the name of the profile (eg: `remote`) under `/home/
that profile folder should have a `connection.json` (not `connection_remote.json`) with the info from the screenshot you posted
btw I had problems with `deployWaitTime` when I set it to a different value than 300
@torresjeff thanks! I copied and changed it as when copied default, it was cloned as connection_default.json I think
yes - it was having issues when we tried 2 weeks ago so extended to 500. =)
I think I had this error last time as well but can't recall what I fixed....I am getting this error message when invoked remote connection profile
ebf Did not handle message of type DISC_GET_PEERS, passing on to next MessageHandler
vp0_1 | 04:34:23.457 [peer] HandleMessage -> DEBU ec0 Handling Message of type: DISC_GET_PEERS
vp0_1 | 04:34:23.457 [peer] beforeGetPeers -> DEBU ec1 Sending back DISC_PEERS
vp0_1 | 04:34:23.457 [peer] SendMessage -> DEBU ec2 Sending message to stream of type: DISC_PEERS
vp0_1 | 04:35:06.143 [eventhub_producer] registerHandler -> DEBU ec3 registerHandler BLOCK
vp0_1 | 04:35:06.330 [eventhub_producer] deRegisterHandler -> DEBU ec4 deRegisterHandler BLOCK
vp0_1 | 04:35:06.347 [eventhub_producer] Chat -> ERRO ec5 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
vp0_1 | 04:35:17.436 [peer] ensureConnected -> DEBU ec6 Touch service indicates no dropped connections
vp0_1 | 04:35:17.437 [peer] ensureConnected -> DEBU ec7 Connected to: [172.18.0.6:7051 172.18.0.4:7051 172.18.0.5:7051]
vp0_1 | 04:35:17.437 [peer] ensureConnected -> DEBU ec8 Discovery knows about: [172.18.0.4:7051 172.18.0.5:7051 172.18.0.6:7051]
Message Attachments
can you paste your `connection.json`?
@torresjeff sure!
Message Attachments
sorry wrong picture
Message Attachments
probably missing `certificate` and `certificatePath`
take alook at this: http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
it was funny compose spits out an error differently when I typed secret in command line vs. interactive
though in your case it probably won't be bluemix, I think you still need a certificate
@torresjeff hmmm I don't see it from default connection.json either - I am not using Bluemix service -
In a transaction, I want to find a free asset. I understand that we can't do queries, so am attempting to use getAll() and then loop through.
Does anyone have an example of this?
I tried forEach but get the following error: assetRegistry.getAll(...).forEach is not a function
I don't know what version of Javascript is being used, so not sure what is valid syntax
try:
```assetRegistry.getAll()
.then((assets) => {
for (var i = 0; i < assets.length; i++) {
console.log(serializer.toJSON(assets[i]));
}
})
```
`serializer` is a variable i defined as `var serializer = businessNetworkDefinition.getSerializer();`
does new fabric-compose gui utilizes remote fabric? I tried to specify connection profiles in docker-compose.yml file, but it seems like it still tries to create peer image on local..
Message Attachments
[ ](https://chat.hyperledger.org/channel/composer?msg=fNm6mqtieB3KESGSD) not yet
@torresjeff Thanks very much!! thumbs up!
in the meantime you can user `composer-ui` instead
in the meantime you can use `composer-ui` instead
no prob
@torresjeff Thanks!! I was able to connect composer-ui to remote fabric!
it took awfully long time but it worked!!
there was an error message while deploying network - some docker build error - not sure why...
Message Attachments
[ ](https://chat.hyperledger.org/channel/composer?msg=qajphHz8sERanQP3t) @abcoathup yes, the calls are recorded... I need to get last weeks call posted online!
[ ](https://chat.hyperledger.org/channel/composer?msg=ekLYR7284CmgT8NBP) @jinvanstee there is a new version of playground out this week, but connection profile support is not there yet - it should be available at the end of this week :fingers_crossed:
[ ](https://chat.hyperledger.org/channel/composer?msg=vW6ChjCYQrCARQXDz) @torresjeff Thanks Jeff.
What is the recommended way to disallow/fail a transaction if it doesn't meet specified criteria (e.g. no suitable assets can be assigned)?
throw an error
[ ](https://chat.hyperledger.org/channel/composer?msg=PwvzeM4gihyj5jq5J) @JohnWhitton we tightened up the REST API validation a while ago to stop users sending in IDs for transactions, which are generated by Composer. Just remove the `uuid` property from your POST request.
[ ](https://chat.hyperledger.org/channel/composer?msg=MQm4XfZMMNhYHYwEZ) @pospi issue #739 is a UI helper to search for transactions relevant to the asset registry you're currently browsing
Yeah, exactly... a UI helper. It's the "we'd pre-fill information part" that gets me- it implies that a good way to setup a link between a transaction & an asset is to set that data in the UI. I think at least some of these kinds of references should be initialised at transaction time (on the chaincode side), otherwise you're trusting the UI/app to do far too much IMO...
@sstone1
> we tightened up the REST API validation a while ago to stop users sending in IDs for transactions, which are generated by Composer. Just remove the `uuid` property from your POST request.
but this still gets inited by `composer-client` rather than within the blockchain, correct? Just checking...
Correct, for the moment; I'd like to get rid of the transaction ID generation and just use the underlying Fabric transaction ID instead.
It would be easier to understand if Composer transaction ID === Fabric transaction ID
[ ](https://chat.hyperledger.org/channel/composer?msg=GPmMyumzKBDZWPKzY) @pospi I don't think I understand. A transaction may be related to an asset -- and those relationships have to be set by the client, as only the client can know the intention of the transaction. E.g. if the client submits a `house purchase` transaction, they would have to set the relationship to point to a `house`.
[ ](https://chat.hyperledger.org/channel/composer?msg=xbRZ6noF2TMJvn3iz) @sstone1 as long as we can also support correlation ids somehow. E.g. client submits a transaction and then gets notifications based on that transaction.
Yeah, that should be fine :+1:
@dselman maybe I'm not explaining it very well... am starting to doubt myself! We're really just trying to workaround the inability to run logic when adding an asset- this creates a trust problem for us with administrative metadata like creation timestamps, invoking participant IDs and bidirectional links between asset & transaction
You can define a transaction that creates an asset, and run custom validation logic in your TP function. E.g. see `placeOrder` here: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/vehicle-lifecycle-network/lib/manufacturer.js#L21
Basically if adding an asset can only insert data then all that info has to be either trusted by the client, or added in a followup transaction run against the asset. The way we've been trying to do it is using transactions to do the creation, to avoid having to run two separate calls which would make things much slower.
cool.. haven't seen that one but it's basically what we're doing. The problem is that you have to define the transaction -> asset relationship in the payload, since it can't be modified after sending. So a) you can't use a real relationship because the new asset doesn't exist when the transaction starts; and b) you have to trust the client not to lie about that ID- there's nothing to stop them sending data to create a relationship with some other asset instead of the one about to be created with the same ID as the transaction. If that makes sense?
@dselman cool.. haven't seen that one but it's basically what we're doing. The problem is that you have to define the transaction -> asset relationship in the payload, since it can't be modified after sending. So a) you can't use a real relationship because the new asset doesn't exist when the transaction starts; and b) you have to trust the client not to lie about that ID- there's nothing to stop them sending data to create a relationship with some other asset instead of the one about to be created with the same ID as the transaction. If that makes sense?
We definitely need to be able to look up the asset associated with a transaction as well as all transactions associated with an asset in our use-cases...
I'm not sure it does make sense... ;-) The intent of the transaction is "create a thing, with this id, that is related to this other thing with this id" -- I'm not sure how else you could do it. TP functions can inspect asset/participant registries and can CRUD assets and participants.
DM me more details if you want to take this offline
ok sure
[ ](https://chat.hyperledger.org/channel/composer?msg=e4vFmwrZDN7dqX9x5) @dselman Hi Daniel, I am throwing an error in the transaction code, throw "No available assets"
I've done `throw new Error(`No available assets....');
I've done `throw new Error('No available assets....');`
[ ](https://chat.hyperledger.org/channel/composer?msg=8EW9w73EPWAB6MjpE) @abcoathup [ ](https://chat.hyperledger.org/channel/composer?msg=jdL2uuBTW8CjiJ8Ku) @dselman In playground, should the error be shown when attempting to create the transaction? Currently I get no error in playground and a transaction created
throwing an error should display the message and you should not see the transaction inserted. The error is displayed at the bottom of the "submit transaction" modal dialog
[ ](https://chat.hyperledger.org/channel/composer?msg=CogsnryGjpXCDNjfx) @dselman I just created a transaction that does nothing apart from throw an error and got the expected behaviour (error displayed on "submit transaction"). Must be an issue with my code. Thanks
:thumbsup:
@sstone1 my current experience with transactions is that they complain if there is no identifier. Could be only for transactions which inherit from a base transaction type. If we get rid of that validation the rest might 'just work', I'd rather not have to comb back through later and remove all explicitly provided transaction IDs
is that using the Node.js APIs or the REST APIs or the playground?
Nodejs APIs, via `BusinessNetworkConnection.submitTransaction()`
How are you creating the transaction object? `factory.newInstance` ?
or `serializer.fromJSON` ?
Yeah. Though, caveat alert, it might be necessary in the meantime: If you're going to disable setting transaction IDs from the outside then it'll be impossible to get back that ID for requerying until the event service stuff is integrated. At least, that's my current understanding. We've never gotten as far as actually integrating with the event service as we weren't sure if it would be changing for v1. Dan mentioned that in v1 transactions can return data back to the outside world so that would solve it too.
ah actually, we're using `factory.newResource`
is that the problem? As far as I could tell from docs one was a deprecated version of the other.
cool, switch to `factory.newTransaction` ;)
doh! that's lame. Now we can't have a single resource parsing helper ><
*adds another curried parameter to the function...
how do you expect we'll be able to retrieve the sent transaction once the ID parameter is taken out though? that seems like a problem
not sure, we could update the transaction instance passed into submitTransaction
`factory.newTransaction` sets the transaction ID at that point
oh does it? well that's totally fine then, I can work with that!
Hi, How do we insert into an empty asset ?
@sstone1 @dselman hey guys, any idea of how can i prevent the connection tu the bluemix blockchain service from timing out?
@torresjeff no.. I was not able
```Rafaels-MacBook-Pro:getting-started cassolato$ composer network deploy -p bluemix -a digitalPropertyNetwork.bna -i user_type1_3 -s 0ce48f2d4e
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
✖ Deploying business network definition. This may take a minute...
Error: Error
Command failed ```
I am in this package */Users/cassolato/git/composer-sample-applications/packages/getting-started*
the npm install, works fine.. deploy the bna file in my local env. Also I am using the composer* tools 0.7.0
when I run the remote deploy.. also the *member.user_type1_4* is being created under */Users/cassolato/.composer-credentials*
sorry, *member.user_type1_3*, the member.user_type1_4 I used to try once again.
Message Attachments
here is the log from the operation.
@sstone1 Thanks for the update on the REST API validation, I have a follow up question
We are receiving transactions from external (partner)systems which we are putting on Chain using the REST API (e.g. a transfer of currency from one wallet to another)
We want to ensure idempotency - today we do that as follows
Partner passes the request using there XID1 (which must be unique)
We then call the REST API with their XID as the UUID
If for whatever reason the transaction fails (e.g. the wallet balance did not have enough currency)
We mark the transaction as failed
If we try the transaction again at a later stage we call the REST api using the same UUID (thus ensuring idempotency for the external transaction XID1)
My question is now that we can't pass UUID is there a better pattern that we should be using?
@sstone1 Thanks for the update on the REST API validation, I have a follow up question
We are receiving transactions from external (partner)systems which we are putting on Chain using the REST API (e.g. a transfer of currency from one wallet to another)
We want to ensure idempotency - today we do that as follows
Partner passes the request using there XID1 (which must be unique)
We generate UUID1 and associate it with their XID1
We then call the REST API with their UUID1
If for whatever reason the transaction fails (e.g. the wallet balance did not have enough currency)
We mark the transaction as failed
If we try the transaction again at a later stage we call the REST api using the same UUID1 (thus ensuring idempotency for the external transaction XID1)
My question is now that we can't pass UUID is there a better pattern that we should be using?
@sstone1 Thanks for the update on the REST API validation, I have a follow up question
We are receiving transactions from external (partner)systems which we are putting on Chain using the REST API (e.g. a transfer of currency from one wallet to another)
We want to ensure idempotency - today we do that as follows
Partner passes the request using there XID1 (which must be unique)
We generate UUID1 and associate it with their XID1
We then call the REST API with UUID1
If for whatever reason the transaction fails (e.g. the wallet balance did not have enough currency)
We mark the transaction as failed
If we try the transaction again at a later stage we call the REST api using the same UUID1 (thus ensuring idempotency for the external transaction XID1)
My question is now that we can't pass UUID is there a better pattern that we should be using?
Has joined the channel.
@sstone1 following up on @JohnWhitton question: right now, we rely on passing a UUID to transactions we submit to avoid double posting. We generate a UUID in our application stack, store it in a local queue, then post the transaction and retry if get a timeout or other issue. What do you suggest now that a UUID cannot be passed in?
I just switched HLV1 and could deploy the getting-started example. When trying to deploy my own example, I get the following message:
@sstone1 Additionally, could you be more specific as to when the validation change occurred. You said earlier "we tightened up the REST API validation a while ago to stop users sending in IDs for transactions", and one path we are exploring for now is to pin down the version to avoid taking in this change. It's temporary, but we have a release deadline we're hitting against and can't redo something that low level now.
[ ](https://chat.hyperledger.org/channel/composer?msg=RYsXq2iWgQ7Y4AzL9) @cassolato not the most descriptive error from Fabric! `onError {"0":{"error":{"code":14,"metadata":{"_internal_repr":{}}},"msg":"Error"}}`
Does the deploy work locally?
ubuntu@fabriccomposer:~/jje/property-network2$ composer network deploy -a property-network2.bna -i WebAppAdmin -s DJY27pEnl16d
Deploying business network from archive: property-network2.bna
Business network definition:
Identifier: property-network2@1.0.0
Description: JJE test generation of business network
Error: {"created":"@1493736818.779551016","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1493736818.779525664","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1493736818.779541606","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed
2017-05-02T14:53:37.935Z INFO ConnectionProfileManager :constructor() Created a new ConnectionProfileManager {"0":{"fs":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":64,"O_EXCL":128,"O_NOCTTY":256,"O_TRUNC":512,"O_APPEND":1024,"O_DIRECTORY":65536,"O_NOATIME":262144,"O_NOFOLLOW":131072,"O_SYNC":4096,"O_DIRECT":16384,"O_NONBLOCK":2048,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1}}}$
2017-05-02T14:53:37.948Z INFO FSConnectionProfileStore :save() Saved connection profile defaultProfile {}$
2017-05-02T14:53:37.950Z INFO ConnectionProfileManager :connect() Connecting using defaultProfile {"0":null}$
2017-05-02T14:53:37.955Z INFO FSConnectionProfileStore :load() Loaded connection profile defaultProfile {"0":"{\n \"type\": \"hlf\",\n \"membershipServicesURL\": \"grpc://localhost:7054\",\n \"peerURL\": \"grpc://localhost:7051\",\n \"eventHubURL\": \"grpc://localhost:7053\",\n \"keyValStore\": \"/home/ubuntu/.composer-credentials\",\n \"deployWaitTime\": \"300\",\n \"invokeWaitTime\": \"100\"\n}"}$
2017-05-02T14:53:37.955Z INFO ConnectionProfileManager :getConnectionManager() Looking up a connection manager for profile {"0":"defaultProfile"}$
2017-05-02T14:53:37.957Z INFO FSConnectionProfileStore :load() Loaded connection profile defaultProfile {"0":"{\n \"type\": \"hlf\",\n \"membershipServicesURL\": \"grpc://localhost:7054\",\n \"peerURL\": \"grpc://localhost:7051\",\n \"eventHubURL\": \"grpc://localhost:7053\",\n \"keyValStore\": \"/home/ubuntu/.composer-credentials\",\n \"deployWaitTime\": \"300\",\n \"invokeWaitTime\": \"100\"\n}"}$
2017-05-02T14:53:38.494Z INFO ConnectionProfileManager :getConnectionManager() Using this connection manager {"0":{"connectionProfileManager":{"connectionProfileStore":{"fs":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":64,"O_EXCL":128,"O_NOCTTY":256,"O_TRUNC":512,"O_APPEND":1024,"O_DIRECTORY":65536,"O_NOATIME":262144,"O_NOFOLLOW":131072,"O_SYNC":4096,"O_DIRECT":16384,"O_NONBLOCK":2048,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1}}}}}$
2017-05-02T14:53:38.495Z INFO HFCConnectionManager :connect() Creating new HFC chain for defaultProfile {"0":"{\"type\":\"hlf\",\"membershipServicesURL\":\"grpc://localhost:7054\",\"peerURL\":\"grpc://localhost:7051\",\"eventHubURL\":\"grpc://localhost:7053\",\"keyValStore\":\"/home/ubuntu/.composer-credentials\",\"deployWaitTime\":\"300\",\"invokeWaitTime\":\"100\"}"}$
2017-05-02T14:53:38.620Z INFO HFCConnection :constructor() Creating connection {"0":"defaultProfile"}$
2017-05-02T14:53:38.621Z INFO HFCConnection :login() Login attempt {"0":null}$
2017-05-02T14:53:38.793Z WARN HFCConnection :login() Failed login {"0":"defaultProfile"}$
Any help on this error? It seems to be a login problem.
@jje your are using a v0.6 connectionprofile to try to connect to a v1.0-alpha runtime. if you have followed the getting started for v1 then it will have created a profile called hlfv1. add `-p hlfv1` to the network deploy command you tried to use this profile.
If I do this I get:
'Error: Could not parse enrollment response [{"success":false,"result":null,"errors":[{"code":400,"message":"Authorization failure"}],"messages":[]}
] as JSON due to error [TypeError: Cannot read property 'errors' of undefined]
Command failed
'
@dselman wouldn't it be better if the `credentials` object in the `COMPOSER_CONFIG` saved the the credentials like:
```
"credentials": {
"hlfabric": {
"id": "admin",
"secret": "Xurw3yU9zI0l"
}
}
```
@dselman wouldn't it be better if the `credentials` object in the `COMPOSER_CONFIG` environment variable saved the the credentials like:
```
"credentials": {
"hlfabric": {
"id": "admin",
"secret": "Xurw3yU9zI0l"
}
}
```
@dselman wouldn't it be better if the `credentials` object in the `COMPOSER_CONFIG` environment variable saved the the credentials this way:
```
"credentials": {
"hlfabric": {
"id": "admin",
"secret": "Xurw3yU9zI0l"
}
}
```
@jje opps sorry also noted that the id and secret are wrong, you need `-i admin -s adminpw`
@jje opps sorry should have also said that the id and secret are wrong, you need `-i admin -s adminpw`
this way we can access the `id` and `secret` without having to know them before hand
works, great, thx!
with that change we could connceto to the business network this way:
```
var config = JSON.parse(process.env.COMPOSER_CONFIG);
bizNetworkConnection.connect(CONNECTION_PROFILE_NAME, businessNetworkIdentifier, config.credentials.hlfabric.id, config.credentials.hlfabric.secret);
```
maybwe we could event set an array of credentials like so:
```
"credentials": {
"hlfabric": [
{
"id": "admin",
"secret": "Xurw3yU9zI0l"
},
{
"id": "user_type1_0",
"secret": "Xurw3yU9zI0l"
}
]
}
```
maybe we could event set an array of credentials like so:
```
"credentials": {
"hlfabric": [
{
"id": "admin",
"secret": "Xurw3yU9zI0l"
},
{
"id": "user_type1_0",
"secret": "Xurw3yU9zI0l"
}
]
}
```
@tennenjl were you able to keep a persistent connection to your blockchain service with your app deployed on bluemix? or does it time out eventually?
@torresjeff I believe it disconnects eventually, but I believe my code calls disconnect now
oh
so you have to connect every time you want to invoke chaincode and then disconnect?
Not sure if you "have to" but seems like the cleaner approach
doesn't it take quite a while to connect?
get your connection, then invoke the function then disconnect
kinda worried about the time it takes
Right, and that may be something that we need to consider as well.
But, to answer your original question, if I remember correctly, I think the connect would eventually drop
But, to answer your original question, if I remember correctly, I think the connection would eventually drop
i was able to keep the connection alive by calling `ping()` every 30 seconds, but it only works locally
doesn't work when I upload my app to bluemix
@torresJeff, it might make sense to test for a connection initially and then create the connection if it no longer exists, would be good to get input from the team on best practices
that makes sense
thanks!
@tennenjl btw, the timeout is because of the blockchain service right? not composer
@torresjeff. Not sure. Ask the SMEs :-)
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=3G3Y8Wnn76GQw4nX9) @dselman Yes.. is working perfect! But.. when I try to use the bluemix profile I am getting this error.
@torresjeff any luck?
[ ](https://chat.hyperledger.org/channel/composer?msg=KkYfw7bZMhNyXG5o2) @torresjeff the timeout occurs because of the way the event hub works in Hyperledger Fabric v0.6. The Node.js client for Fabric `hfc` maintains a persistent connection to the event hub but does not cope well with network blips/disconnects etc (it just kills the client). Persistent connections aren't really cloud friendly as the network/routing will just terminate idle connections after a while.
`ping()` won't resolve that as it won't trigger any events to be sent. You need to submit an "invoke" transaction to trigger new blocks/events, and that means calling a CRUD operation, submitting a transaction etc.
Nothing the Composer team can do about that. I believe the Fabric team have introduced a keep-alive ping or something into v1.0 and _hopefully_ made `fabric-client` a bit more resilient
@sstone1 following up on @JohnWhitton question: right now, we rely on passing a UUID to transactions we submit to avoid double posting. We generate a UUID in our application stack, store it in a local queue, then post the transaction and retry if get a timeout or other issue. What do you suggest now that a UUID cannot be passed in?
@sstone1 Additionally, could you be more specific as to when the validation change occurred. You said earlier "we tightened up the REST API validation a while ago to stop users sending in IDs for transactions", and one path we are exploring for now is to pin down the version to avoid taking in this change. It's temporary, but we have a release deadline we're hitting against and can't redo something that low level now.
(Reposting from earlier.)
Me and @dselman discussed this earlier. You're relying on behaviour that is a side effect, i.e. we didn't design it to be used that way and we think the way we store transactions will change in the future (https://github.com/hyperledger/composer/issues/55).
You could use an asset in an asset registry to record whether or not the transaction has occurred.
Let me try and find out when the change went in...
[ ](https://chat.hyperledger.org/channel/composer?msg=RjFRwpa8bs9zcpSgL) @sstone1 so would this be a good idea? I'm guessing `ping()` won't work if the connection is dropped. SO will trying to `ping()` the network before invoking the chaincode and make the connection if ping doesn't work a viable solution?
On a related note, there's a discussion about whether or not it makes sense for the model to include a transaction ID since it's really under Composer control: https://github.com/hyperledger/composer/issues/488
@pascallouis the changes went into v0.5.6
@torresjeff `ping()` does not fix the problem. The problem is caused by the event hub, and events are only published on actual transactions. `ping()` is a read-only chaincode query that does not create a transaction.
@sstone1 thanks for that, we got 'lucky' and were using 0.5.5
@torresjeff you could (probably should) have multiple instances of your application running so when one crashes another is still running to take over
Currently, we use an `OperationResult` object that we create when a transaction completes.
And you store that in an OperationResult registry?
Yes.
Do you suggest fetching this, and if it already exists, aborting the transaction or doing a noop? i.e. implementing idempotency ourselved?
Do you suggest fetching this, and if it already exists, aborting the transaction or doing a noop? i.e. implementing idempotency ourselves?
It should fail when you call `registry.add(newOperationResult)`
for a duplicate newOperationResult i mean
My experience is that transactional boundaries are per registry... so if this fails but we do other things (like in our case, modify a Balance asset), we get in a partial state.
Or am I mistaken? Doing it wrong?
Mistaken - everything you do in a transaction processor function is contained in a single Fabric transaction that either commits or fails and rolls back all changes
Will give it another try then.
Thanks a lot @sstone1, it's hard to get this level of detail otherwise :)
What do you think of this pattern then:
- add operation result (fails if already there, protecting against double execution)
- do the work
- record the work in the operation result
And having a historian component, especially with notifications, would be huge for our app.
looks good to me, and np :)
on the notification front - we're starting on events at the moment - you will soon be able to emit custom events from within a transaction processor function
meanwhile, how do you suggest an external system 'feed of' all transactions occuring?
meanwhile, how do you suggest an external system 'feed of' all transactions occurring?
we have a need to replicate some state in a local system, and basically record the before/after state in the operation result, and then replicate that
There's not many options I'm afraid. You could build an application using the Fabric SDKs to subscribe to block events (which contain a list of Fabric transaction IDs).
.... or wait for that historian component?
thanks @sstone1
or wait for the historian component :)
@sstone1 by the way, will calling `connect()` before every chaincode invoke get around the issue?
it will, because it will recreate the event hub connection
that takes plenty of time right?
would you suggest getting all the registries on application startup? if i add an asset for, say an asset registry, am I able to get the new asset if i got the registry at application startup or do i have to call `getAssetRegistry()` again to be able to see the new asset?
it's not going to be particulary efficient - but if you're submitting enough transactions for it to be a problem, the event hub timeout won't be a problem
you only have to get the asset registry once
@sstone1 thank you very much
np
@torresjeff @sstone1 this is helpful. Thanks.
np
Some good information shared on here today. If you posted a question and got a good answer (that you might want to find in a week or two!) I kindly request that you post the question and answer on StackOverflow, using the `hyperledger-composer` tag. Thanks all!
will do
It's also a great way to increase your visibility and reputation in the overall blockchain / hyperledger community. :-)
@sstone1 did you try to deploy a business network to bluemix using a `deployWaitTime` of 600?
wanna make sure i'm not the only one getting the error when setting it to 600
@tennenjl can you test a `deployWaitTime ` of 600?
@torresjeff Can give it a shot. Currently on a call for work. Will try asap
thanks!
@torresjeff @sstone1 tryied to deploy again my bna file on bluemix and now I got a different error: *composer network deploy -p bluemix -a digitalPropertyNetwork.bna -i admin -s 2adc445170*
```Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.6
Description: Digital Property Network
⠧ Deploying business network definition. This may take a minute...events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14````
here is my connection.json
```Rafaels-MacBook-Pro:bluemix cassolato$ cat connection.json
{
"type": "hlf",
"membershipServicesURL": "grpcs://1ef0e0bb1e684e03811b94f5e52c96fe-ca.us.blockchain.ibm.com:30003",
"peerURL": "grpcs://1ef0e0bb1e684e03811b94f5e52c96fe-vp0.us.blockchain.ibm.com:30003",
"eventHubURL": "grpcs://1ef0e0bb1e684e03811b94f5e52c96fe-vp0.us.blockchain.ibm.com:31003",
"keyValStore": "/Users/cassolato/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100",
"certificate": "-----BEGIN CERTIFICATE-----\n... ```
maybe this is not a solution for your problem, but try to set your `keyValorStore` property to `/Users/cassolato/.composer-credentials/
maybe this is not a solution for your problem, but try to set your `keyValStore` property to `/Users/cassolato/.composer-credentials/
you may have overwritten the credentials
if you do that you will probably try to deploy with another set of credentials, try `WebAppAdmin`
if you do that you will probably have to deploy with another set of credentials, try `WebAppAdmin`
let me try
did not work @torresjeff
Try running `export DEBUG=*` and rerunning...
You may see the source of the ` // Unhandled 'error' event`
It's the event hub issue:
```
events.js:160
throw er; // Unhandled 'error' event
```
Can strike at any time :(
@sstone1 about that transactionality... I still see part of the work in my handler occurring, while another part fails
namely some objects get modified, and yet, another part of the handler fails
could it be because I'm doing `getAssetRegistry` calls within the handler? doing this twice, for two different assets
@sstone1 could @cassolato wrap his code in a domain, and reconnect / retry? Or perhaps use the ```process.on('uncaughtException', function(err) {
// handle the error safely
console.log(err)
})``` handler?
@sstone1 could @cassolato wrap his code in a domain, and reconnect / retry? Or perhaps use the
```process.on('uncaughtException', function(err) {
// handle the error safely
console.log(err)
})``` handler?
@sstone1 could @cassolato wrap his code in a domain, and reconnect / retry? Or perhaps use the
```process.on('uncaughtException', function(err) {
// handle the error safely
console.log(err)
})
```
handler?
http://stackoverflow.com/questions/7310521/node-js-best-practice-exception-handling
@dselman that seems useful
could help me with my problem
@torresjeff Sorry for the delay trying now
Worked for me with deployWaitTime: 600
@tennenjl thanks! gotta check why it doesn't work for me
can you try with the `carauction-network.bna`?
https://composer-playground.mybluemix.net
authenticate with github and import the `carauction-network` sample
export the sample and try to deploy it
ok
@torresjeff spent a while deploying and eventually failed with Deploying business network from archive: carauction-network.bna
Business network definition:
Identifier: carauction-network@0.0.7
Description: Car Auction Business Network
⠙ Deploying business network definition. This may take a minute...events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
thanks @tennenjl , @dselman @sstone1 what could be the cause of this error?
seems to happen only with `carauction-network`
@tennenjl though from what @sstone1 said earlier, it may be the connection hub
@tennenjl though from what @sstone1 said earlier, it may be the event hub
@torresjeff Yep, I'll try again
@torresjeff It worked the 2nd time
@tennenjl alright, thanks for your help!
@torresjeff Glad to help. Good luck.
Just noticed the global `query` chaincode function in some unit tests. Is this something that works in 0.6 or does it require the new database backends in Hyperledger 1.0?
It is work in progress (just design), but will require HLFv1 with CouchDB.
OK thanks for letting me know :)
hrm. Are there any plans to support transaction relationships? I would like to be able to relate an asset to some transactions but the model parser tells me `Relationship transactions must be to an asset or participant`
I am using hlfv1, I generated a REST API and attempted to submit a transaction (creating Assets was fine) using curl on the command line and got the following error:
I am using hlfv1, I generated a REST API and attempted to submit a transaction (creating Assets was fine) using curl on the command line and got the following error: {"error":{"statusCode":500,"name":"Error","message":"SyntaxError: parse error (line 49)","code":2,"metadata":{"_internal_repr":{}},"stack":"Error: SyntaxError: parse error (line 49)\n at /home/tss/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:434:17"}}
I don't know if this is an issue with my transaction processing code (which works in playground) or with something else
I am using hlfv1, I generated a REST API and attempted to submit a transaction (creating Assets was fine) using curl on the command line and got the following error:
{"error":{"statusCode":500,"name":"Error","message":"SyntaxError: parse error (line 49)","code":2,"metadata":{"_internal_repr":{}},"stack":"Error: SyntaxError: parse error (line 49)\n at /home/tss/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:434:17"}}
I don't know if this is an issue with my transaction processing code (which works in playground) or with something else
@abcoathup are you using HLF v1.0 ?
[ ](https://chat.hyperledger.org/channel/composer?msg=M5GyET5TmvFxsR2Ab) @sstone1 Simon, just changed to HLFV1
have you got any `let`, `const`, or `() => { }` arrow functions in your transaction processor functions?
[ ](https://chat.hyperledger.org/channel/composer?msg=3LHhZgxHGMm2BMExf) @pascallouis do you see this behaviour in the playground or when running against a real HLF instance?
[ ](https://chat.hyperledger.org/channel/composer?msg=FXNbTCo5QXowwmtZZ) @sstone1 yes, I have let
the Golang JavaScript interpreter we use on HLF only supports ES5, so doesn't support `let`, `const`, or arrow functions
[ ](https://chat.hyperledger.org/channel/composer?msg=AJPYidjoAHct57NMX) @sstone1 Thanks, I will strip them out.
@dselman I wonder if we could identify ES6/ES7 features using Acorn?
the docs have a related setting:
>>> ecmaVersion: Indicates the ECMAScript version to parse. Must be either 3, 5, 6 (2015), 7 (2016), or 8 (2017). This influences support for strict mode, the set of reserved words, and support for new syntax features. Default is 7.
the docs have a related setting:
> ecmaVersion: Indicates the ECMAScript version to parse. Must be either 3, 5, 6 (2015), 7 (2016), or 8 (2017). This influences support for strict mode, the set of reserved words, and support for new syntax features. Default is 7.
Raised https://github.com/hyperledger/composer/issues/829 for that
[ ](https://chat.hyperledger.org/channel/composer?msg=mpNSmWGSYCGHBQswi) @sstone1 Simon, One of the sample networks included a load of lets for DemoSetup to create Assets, which is where I copied it from. The sample will also need updating
yuk, OK - will get that fixed as well
I generated a CLI app, and attempted to run it (assume it is just node index.js) and got the following error: $ node index.js
module.js:471
throw err;
^
Error: Cannot find module 'cli-table'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.
did you run `npm install` first?
[ ](https://chat.hyperledger.org/channel/composer?msg=CLj7kwdCeMqRk3jfN) @abcoathup which sample?
npm install fails when attempting to download my network from the npm registry, I assume because I haven't added it (and for testing don't want to add). Apologies for noob questions
[ ](https://chat.hyperledger.org/channel/composer?msg=jwiXAvFsbuJM7FN2m) @dselman perishable-network
function setupDemo(setupDemo) {
let factory = getFactory();
let NS = 'org.acme.shipping.perishable';
@sstone1 @abcoathup we transpile all our chaincode logic with babel & rollup, works a charm with a tiny bit of post-processing :D
[ ](https://chat.hyperledger.org/channel/composer?msg=zKG49susaWgnzTEd2) @abcoathup thanks, we will fix: https://github.com/hyperledger/composer/issues/830
@abcoathup Fixed in this PR https://github.com/hyperledger/composer-sample-networks/pull/36
You may need to update this documentation https://hyperledger.github.io/composer/unstable/installing/createconnectionprofile.html
but it is not mentioned anywhere in the doc
I understand it is now environmental variable not file based?
e.g. COMPOSER_CONFIG={...}
i.e. COMPOSER_CONFIG={...}
Or is it not official yet?
No mention in the doc anywhere
It supports both. You are correct, we need to add this to the docs.
Hyperledger Composer formally announced on the Hyperledger Blog: https://www.hyperledger.org/blog/2017/05/03/meet-hyperledger-composer
:grinning:
Thank you, thank you to all the committers, reviewers, users and even maintainers that have got us this far! :muscle:
congrats @dselman adn @sstone1!
thanks @pascallouis !
[ ](https://chat.hyperledger.org/channel/composer?msg=enzd6Ws7J228HsNjJ) @dselman Nice news!! congrats also @sstone1
[ ](https://chat.hyperledger.org/channel/composer?msg=o8oSbzvqj9FaboC6g) @dselman here is the tail of the log after trying with *WebAppAdmin* ``` hfc Read in deployment archive from [/tmp/deployment-package.tar.gz] +10ms
hfc Set confidentiality level to PUBLIC +34ms
⠴ Deploying business network definition. This may take a minute... hfc Temporary archive deleted successfully ---> /tmp/deployment-package.tar.gz +1ms
hfc File deleted successfully ---> /var/folders/y5/91238k0d2qz9skvxb8wyksyh0000gn/T/concerto11743-5766-1adj48z.hvy22o6r/src/concerto/Dockerfile +1ms
hfc Calling TransactionContext.execute +0ms
hfc Executing transaction +0ms
hfc [TransactionContext] TCert already cached. +0ms
hfc Process Confidentiality... +1ms
hfc Sign transaction... +0ms
crypto ecdsa signature: Signature {
r:
very basic question for fabric-composer-ui....is there a way to use two or more composer-ui connected to one business network(e.g. pointing to two different peers) using different logon id/secret?
@AlexKim yes, I think that should work
if you start another instance of `composer-ui` and point it at the same fabric, it should connect to the same business network
[ ](https://chat.hyperledger.org/channel/composer-dev?msg=pHqtsJY9g2rca2uqH) @akshay111meher there are GitHub issues that say you cannot use nvm and install with root (#313)
Has joined the channel.
However issue #687 says that running `npm config set unsafe-perm true` and re-running all `npm install` commands might work
you may need to `npm uninstall` any existing code
I am a newbie with all of this... I am following the version 1 getting started - Running a sample with the CLI and have the following error:
composer network update --archiveFile digitalproperty-network@0.0.7.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
Deploying business network from archive: digitalproperty-network@0.0.7.bna
Business network definition:
Identifier: digitalproperty-network@0.0.7
Description: Digital Property Network
Error: {"created":"@1493836309.086645000","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1493836309.086627000","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1493836309.086637000","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed
Can anyone help here?
Did you have an existing Fabric running before you ran `npm install` or `npm test` ?
I think there's a bug in the getting started script that fails to work properly if you have existing Docker containers running
possible. i started running a local version of this, and had issues. I thought this was the "easier" way
`docker ps -aq | xargs docker rm -f` will clean up all docker images, you can then re-run `npm install` and `npm test`
great. Thanks!
np
@sstone1 thanks Simon! What user id would I have to use to be able to access the same network? I am using test_user0 to deploy bna from browser#1 for 705x. If someone tries to access the same network with test_user1 for same fabric for 705x from browser#2, would this test_user1 have access to the network that was deployed by test_user0? or does any permission need to be granted?
So I successfully added a participant through the CLI for the carauction-network
Jins-MacBook-Pro-2:getting-started jinvanstee$ composer participant add -n carauction-network -i admin -s a57d970eb5 -p bluemixProfile -d '{"$class":"org.acme.vehicle.auction.Member","balance":10000, "email":"alice@foo.com","firstName":"Alice","lastName":"Smith"}'
Participant was added to participant registry.
Command completed successfully.
Command succeeded
but i can't seem to list it
Jins-MacBook-Pro-2:bluemixProfile jinvanstee$ composer network list -n carauction-network -i admin -s a57d970eb5 -p bluemixProfile -r org.acme.vehicle.auction.Member
✖ List business network carauction-network
Registry org.acme.vehicle.auction.Member does not exist
Command succeeded
it does show up on my blueMix dashboard
just wondering where I might have gone wrong on the CLI
@AlexKim test_user1 should work; they should both be able to access the same network.
@jinvanstee let me have a look...
ah, `composer network list` only works with asset registries
that is a bu
that is a bug
can you raise a GitHub issue for it please?
will do! @sstone1
I'm trying to issue an identity for the participant i just added, and getting the following error
Jins-MacBook-Pro-2:getting-started jinvanstee$ composer identity issue -n carauction-network -p bluemixProfile -i admin -s a57d970eb5 -u alice -a "org.acme.vehicle.auction.Member#alice@foo.com"
Error: Invalid affiliation group institution_a
Command failed.
Does Composer support Fabric 1.0 or should I keep using .6?
@DennisM330 you can use composer with hyperledger fabric 1.0.0-alpha systems
@sstone1 @AlexKim I would think that the only way for another user to access the same business network, is for that user to be added as a participant, and then an identity issued to that participant. Ref: An identity can be issued to a participant using either the API or the command line. Once an identity has been issued, the identity can then be used by the participant to interact with the business network in the context of that participant.
@jinvanstee Unfortunately it's not possible at this time to issue an identity on bluemix using the CLI. There is an issue raised about this at https://github.com/hyperledger/composer/issues/606
@jinvanstee you only need to explicitly issue identities if you want to be able to identify your participants based on their Fabric credentials. If you are building a POC you could use a generic Fabric id/secret and submit transactions that contain a participant id. This will allow you to test all your logic (except ACLs).
is this only an issue with bluemix.. will it work on a local fabric, or fabric installed on LinuxONE
@davidkel
@jinvanstee It's down to how the membership services server is configured.
for example if you use the v0.6 docker images then their configuration has institution_a defined
i see @davidkel
@sstone1 some idea how to fix the event hub issue? using a different peer?
Hi all,
Anybody can provide me a link to start up fabric peer and membership service?
The link here in the tutorial is dead https://hyperledger.github.io/composer/business-network/runtime-start.html
@ZenX0904 are you looking for v0.6?
@AlexKim Yes v0.6
@AlexKim I'm running Ubuntu 16.04 LTS
@ZenX0904 you can probably try this out
@ZenX0904 https://github.com/IBM-Blockchain/fabric-images
works with x86, ppc and s390x
@AlexKim Great! Will try it out. Thanks!
@ZenX0904 you're very welcome, good luck!
@AlexKim Will I be able to deploy a business network to this? I'm following this tutorial currently https://hyperledger.github.io/composer/unstable/business-network/deploybusinessnetwork.html
and it's not entirely clear with the steps... Do I need to create a connection profile? And what is my enrollment ID?
@ZenX0904 yes it works with composer cli
@ZenX0904 ID/Secret should be in the tutorials
@ZenX0904 but if you want to test bna - you can install following on ubuntu - it's all inclusive including fabric(peer+membersvcs)
@ZenX0904 https://hyperledger.github.io/composer/unstable/tutorials/getting-started-playground.html
@AlexKim Yes I've just done that actually, installed composer playground on my local Ubuntu, because I'm really having a hard time figuring our the fabric network setup.
Thanks for your help, guess I'll need to spend more time with the link you provided previously
@ZenX0904 sure np
Could you elaborate on the implications of deploying BNA to v1 as it is now?
@paul.sitoh we have experimental support in composer currently that allows to deploy to and interact with a hyperledger fabric runtime v1.0.0-alpha level. From a composer point of view there should be no difference between using a v0.6 vs a v1.0.0-alpha runtime. You need a different connection profile for connecting to a v1.0.0-alpha environment however.
@paul.sitoh we have experimental support in composer currently that allows to deploy to and interact with a hyperledger fabric runtime v1.0.0-alpha level. From a composer point of view there should be no difference between using a v0.6 vs a v1.0.0-alpha runtime. You need a different connection profile for connecting to a v1.0.0-alpha environment however. Somethings aren't available yet, for example composer-ui has no support for V1 profiles. Support for V1 profiles is coming in playground very soon.
At this juncture I am not too concern about playground. Having it will not add value to most of my projects at this juncture. We can deal with command line for now. Main concern is how BNA deals with v1 concept of chaincode versioning. Chaincode instantiation. Channels, etc.
At this juncture I am not too concern about playground. Having it will not add value to most of my projects at this juncture. We can deal with command line for now. Main concern is how BNA deals with v1 concept of chaincode versioning. Chaincode instantiation. Channels, etc. How will I be able to migrate from 1.0.0 to say 1.0.1 and not break concepts like versioning, etc.
At this juncture I am not too concern about playground. Having it will not add value to most of my projects at this juncture. We can deal with command line for now. Main concern is how BNA deals with v1 concept of chaincode versioning. Chaincode instantiation. Channels, etc. How will I be able to migrate BNA deployed on fabric 1.0.0 to say 1.0.1 and not break because of things like versioning, etc.
At this juncture I am not too concern about playground. Having it will not add value to most of my projects at this juncture. We can deal with command line for now. Main concern is how BNA deals with v1 concept of chaincode versioning. Chaincode instantiation. Channels, etc. How will I be able to migrate BNA deployed on fabric 1.0.0 to say 1.0.1 and not break because of things like versioning, etc. In other words, what does versioning mean in the context of BNA? What does chaincode instantation mean in BNA context?
At this juncture I am not too concern about playground. Having it will not add value to most of my projects at this juncture. We can deal with command line for now. Main concern is how BNA deals with v1 concept of chaincode versioning. Chaincode instantiation. Channels, etc. How will I be able to migrate BNA deployed on fabric 1.0.0 to say 1.0.1 and not break because of things like versioning, etc. In other words, what does versioning mean in the context of BNA? What does chaincode instantation mean in BNA context? If Fabric moves from 1.0.0 to 1.0.1 do I need to tweak BNA definitions? etc.
At this juncture I am not too concern about playground. Having it will not add value to most of my projects at this juncture. We can deal with command line for now. Main concern is how BNA deals with v1 concept of chaincode versioning. Chaincode instantiation. Channels, etc. How will I be able to migrate BNA deployed on fabric 1.0.0 to say 1.0.1 and not break because of things like versioning, etc. In other words, what does versioning mean in the context of BNA? What does chaincode instantation mean in BNA context? If Fabric moves from 1.0.0 to 1.0.1 do I need to tweak BNA definitions? etc. Does composer by-pass those elements of v1?
At this juncture I am not too concern about playground. Having it will not add value to most of my projects at this juncture. We can deal with command line for now. Main concern is how BNA deals with v1 concept of chaincode versioning. Chaincode instantiation. Channels, etc. How will I be able to migrate BNA deployed on fabric 1.0.0 to say 1.0.1 and not break because of things like versioning, etc. In other words, what does versioning mean in the context of BNA? What does chaincode instantation mean in BNA context? If Fabric moves from 1.0.0 to 1.0.1 do I need to tweak BNA definitions? etc. Does composer by-pass those elements of v1? What about endorsement policy?
In Go chaincode, I can see if you do a peer deploy something happens. And instantiation of chaincode, means calling Init function. How does this work in composer BNA context?
[ ](https://chat.hyperledger.org/channel/composer?msg=Qb6Xhfxc7b4smrMk7) @ZenX0904 run the Composer QuickStart -- it will start a simple v0.6 dev Fabric for you.
@paul.sitoh Composer needs to know the channel where the business network is to be deployed to or has been deployed to and that is stored in the connection profile. In HLF V1 there are 2 steps to getting chaincode executing. Step 1 is to install chaincode onto the peer. In the composer case the chaincode runtime is packaged and installed on the peer (it get's versioned with the version number of the composer runtime + the name of the business network archive). When the instantiate is called on the peer, composer passes the BNA to that runtime and as part of the init call the composer chaincode processes the Business Network Archive and initialises it.
Hi @davidkel - Can you deploy more than one composer chaincode and BNA to the same channel?
Hi @gormand yes you can
Thanks :slight_smile:
@here we would love to promote companies and solutions that are "Built on Hyperledger Composer" on the website. Please DM me if you would like to be included in the page. Thanks!
@davidkel one more question. How do we deal with endorsement policies with respect to composer?
@paul.sitoh composer doesn't do anything with endorsement policies. It's an area I really want to get a better understand of
Is there a composer CLI to add an asset? say for the car auction network, to add a car? is that considered a transaction? and I'd use the composer transaction submit command?
Hi @davidkel , Does composer currently support multiple endorsers in v1? Is it possible to call multiple endorsers for endorsement, before the transaction is sent for ordering by the ordering-service?
Hi @gormand yes, you can send txn proposals to multiple peers for endorsement. Currently all are expected to respond and we don't perform any checks on the response before sending the txn to the ordering service
@davidkel Presumably, composer will one day support endorsement policies that will be enforced, yes?
I suppose this is a futures question...since the composer playground is still only a playground. I know you can use the composer CLI and APIs to modify, add assets to, etc. an existing deployed network, will I be able to use the composer-ui to manage/modify an already deployed network?
BTW I just really want to thank you guys for answering questions..pretty much around the clock... I really want to showcase this tool at a client blockchain workshop on May 17th.
@kletkeman I am sure we will look to exploit facilities such as instantiate and endorsement policies in the future for composer
@kletkeman the latest fabric master branch enforces endorsement policies already... so enforcement is no long an option. Exposure to and configuration of these policies (which are in general defaulted to reasonable settings) is what is forthcoming.
@kletkeman the latest fabric master branch enforces endorsement policies already... so enforcement is no longer an option. Exposure to and configuration of these policies (which are in general defaulted to reasonable settings) is what is forthcoming.
and by master, I mean fabric master :)
@jeffgarratt Excellent. I was getting worried with so much basic wiring pushed out to client code and was hoping for a thicker SDK layer. Doing reasonable defaults inside Fabric itself is even better.
@jeffgarratt Excellent. I was getting worried with so much basic wiring pushed out to client code and was hoping for a thicker SDK layer. Doing reasonable defaults inside Fabric itself is even better. (Especially since clients based on SDK and composer will get the same behaviors without effort.)
Hi @jeffgarratt I was actually trying to quantify what those defaults were. I asked a question ob #fabric-crypto regarding the default for endorsement policy but you might know the answer ?
The docs state the default is `the default policy requires one signature from a member of the DEFAULT MSP` but I don't know what the default MSP is
@davidkel @kletkeman the default policy may differ slightly by the mechanism you use to create (boostrap) the system.
@davidkel @kletkeman the default policy may differ slightly by the mechanism you use to create (bootstrap) the system.
and there is a default endorsement policy that is enabled if one is not provided on deployment
Yes, as I recall, a fair bit of configuration info is stored in the genesis block
@kletkeman correct... And this can be generalize to all information is stored in the config_update block (which the genesis is of course one of)
@kletkeman correct... And this can be generalized to all information is stored in the config_update block (which the genesis is of course one of)
@jeffgarratt Cool, thanks. Is the default endorsement all endorsers respond plus all R/W equivalent?
I will assemble a more coherent answer to your question asap
Thanks.
as that differs per bootstrap mechanism (e2e vs behave)
as that may possible differ per bootstrap mechanism (e2e vs behave)
yw
this is a point of clarification the community is actively working on (myself included)
@davidkel and I owe this answer to you as well
I'll have to go and look up the difference between e2e and behave as they apply to bootstrap ...
Thanks Jeff, that would be great. Would the same concepts also apply to instantiate policy ?
Only e2e is mentioned along with bootstrap, behave is missing from the docs: http://hyperledger-fabric.readthedocs.io/en/latest/getting_started.html?highlight=bootstrap
[ ](https://chat.hyperledger.org/channel/composer?msg=M6iQbpKivCfajFk6N) @jinvanstee No CLI to add an asset (yet). You can add assets using the JavaScript API, or Loopback-generated REST API. You could also write a transaction that caused an asset to be created and invoke that if it made sense for your business scenario. There is a GitHub issue to capture a (not yet implemented) requirement to bulk load assets, which I guess would likely be command-line driven: https://github.com/hyperledger/composer/issues/769
thanks @bestbeforetoday .. I was just looking at the APIs and they have everything I'm looking for .. argh I'm not a great JavaScript developer
[ ](https://chat.hyperledger.org/channel/composer?msg=A7JGgomuqbt2QDGtF) @jinvanstee Once the Playground UI has functionality to configure different connection profiles, the UI will be able to view / add / modify resources in whatever network it is connected to. This should be coming real soon now
@bestbeforetoday That would be really great!! The issue I'm finding with the old composer-ui is that I can't use it to connect to an existing network because there's nowhere to specify the chaincode ID. It ends up just deploying another network to my fabric.
@bestbeforetoday what is "real soon" :)
REAL SOON... ;-)
http://composer-playground-unstable.mybluemix.net
salivating lol
We hope to cut a release tomorrow... It needs to pass testing etc.
i'll be your unofficial tester :D
@dselman @bestbeforetoday I have an existing network on my blueMix fabric that I would like to connect to, using the unstable playground... I imported my connection profile .. where do I specify which chain I want to connect to? I have multiple chains on my fabric (V0.6). second question can I use an existing id/secret, or do I need to use a new one?
@rjones @jwagantall does this count ?
Has joined the channel.
Has joined the channel.
thank you
User User_1 added by rjones.
@davidkel thank you
thanks!
Discussions related to the proposed Composer project
Build business networks, applications and integration with Hyperledger blockchain frameworks.
@jinvanstee you cannot use http://composer-playground-unstable.mybluemix.net to connect to a real Hyperledger Fabric instance, this is only supported locally... just fixing an issue which will remove connection profiles from the cloud hosted version.
oh ok
@dselman Thanks! That worked perfectly fine. What if I wanted to add more nodes?
@ZenX0904 Composer won't do that for you, you'll need to configure and deploy a Fabric instance with the required number of nodes. Composer's getting started guide simply creates a minimal Fabric configuration that can be used to test out Composer functionality.
@sstone1 Thanks!
So I've moved onto generating an Angular2 app using the fabric-composer generator, connecting to a running business network. I'm able to see all my assets, and add an asset, and see it committed as a block on the chain. Is there a way to generate the modules needed to view/add participants, and to submit and view transactions? :)
Afraid not :( there is some pending work to add participants and transactions... hang on let me find the GitHub
https://github.com/hyperledger/composer/issues/400
ahh
So I tried to use two composer-ui's to connect to the same fabric - intended to connect to a same network
but I ended up creating two different network on the fabric...is there a way to point to a specific network ID(CCID) on a peer using composer UI?
(or local playground)
Message Attachments
Message Attachments
[ ](https://chat.hyperledger.org/channel/composer?msg=7fTNEyYSzWjekmzgF) @jinvanstee once we release you can install it locally, import your connection profile and connect.
Hi,
Can anyone guide me how to I add assets onto a composer network using the command line? I've added the participants but no idea how to do the same assets. Tried searching the documentations but no results.
Thanks!
@ZenX0904 there is not currently a CLI command to add an asset
@sstone1 so right now it's only possible through the browser playground?
or using the Node.js APIs in the `composer-client` module
or using the REST APIs created by the `composer-rest-server` app
ok I'll try out the Node.js approach. Thanks!
np :)
@here today we will be aiming to cut the v0.7.1 release of Composer which will add connection profile + identity support to the Playground, meaning you can locally install Playground and connect it to a real Fabric v0.6 or Fabric v1.0!
Before we cut each release we go through this guide to test that the tutorials/getting started guide and playground are working as expected:
https://github.com/hyperledger/composer/blob/master/contrib-notes/weekly-qa-validation.md
We will also be removing the old UI, `composer-ui`, because the playground now includes all of the functionality that was present. You will still be able to install it from npm or Docker Hub, but it will no longer receive any updates.
@sstone1 hi, I am trying to setup the composer sample app hlfv1 but it seems the peers can't communicate. Any ideas on this apparent problem?
peer0 log : ERRO 02c Cannot dial to orderer0:7050, because of grpc: timed out when dialing
2017-05-05 09:15:47.935 UTC [escc] Init -> INFO 01e Successfully initialized ESCC
2017-05-05 09:15:47.935 UTC [sysccapi] deploySysCC -> INFO 01f system chaincode escc/(github.com/hyperledger/fabric/core/scc/escc) deployed
2017-05-05 09:15:47.936 UTC [sysccapi] deploySysCC -> INFO 020 system chaincode vscc/(github.com/hyperledger/fabric/core/scc/vscc) deployed
2017-05-05 09:15:47.937 UTC [qscc] Init -> INFO 021 Init QSCC
2017-05-05 09:15:47.937 UTC [sysccapi] deploySysCC -> INFO 022 system chaincode qscc/(github.com/hyperledger/fabric/core/chaincode/qscc) deployed
2017-05-05 09:15:47.937 UTC [nodeCmd] initSysCCs -> INFO 023 Deployed system chaincodess
2017-05-05 09:15:47.937 UTC [nodeCmd] serve -> INFO 024 Starting peer with ID=[name:"peer0" ], network ID=[dev], address=[peer0:7051]
2017-05-05 09:15:47.940 UTC [nodeCmd] serve -> INFO 025 Started peer with ID=[name:"peer0" ], network ID=[dev], address=[peer0:7051]
2017-05-05 09:16:10.566 UTC [ledgermgmt] CreateLedger -> INFO 026 Creating ledger with id = mychannel
2017-05-05 09:16:10.571 UTC [ledgermgmt] CreateLedger -> INFO 027 Created ledger with id = mychannel
2017-05-05 09:16:10.574 UTC [kvledger] Commit -> INFO 028 Channel [mychannel]: Created block [0] with 1 transaction(s)
2017-05-05 09:16:10.583 UTC [gossip/gossip#peer0:7051] JoinChan -> INFO 029 Anchor peer with same endpoint, skipping connecting to myself
2017-05-05 09:16:10.583 UTC [gossip/state] NewGossipStateProvider -> INFO 02a Updating node metadata information, current ledger sequence is at = 0, next expected block is = 1
2017-05-05 09:16:10.583 UTC [deliveryClient] NewDeliverService -> INFO 02b Creating delivery service to get blocks from the ordering service, orderer0:7050
2017-05-05 09:16:13.584 UTC [deliveryClient] NewDeliverService -> ERRO 02c Cannot dial to orderer0:7050, because of grpc: timed out when dialing
2017-05-05 09:16:13.584 UTC [gossip/service] InitializeChannel -> WARN 02d Cannot create delivery client, due to Wasn't able to connect to any of ordering service endpoints [orderer0:7050]
2017-05-05 09:16:13.584 UTC [gossip/service] InitializeChannel -> WARN 02e Delivery client is down won't be able to pull blocks for chain mychannel
orderer0 log
2017-05-05 09:15:46.442 UTC [orderer/multichain] NewManagerImpl -> INFO 001 Starting with system channel: testchainid and orderer type solo
2017-05-05 09:15:46.442 UTC [orderer/main] NewServer -> INFO 002 Starting orderer
2017-05-05 09:15:46.442 UTC [orderer/main] main -> INFO 003 Beginning to serve requests
2017-05-05 09:16:04.440 UTC [msp] Validate -> INFO 004 MSP OrdererMSP validating identity
2017-05-05 09:16:04.446 UTC [msp] Validate -> INFO 005 MSP OrdererMSP validating identity
2017-05-05 09:16:04.455 UTC [orderer/multichain] newChain -> INFO 006 Created and starting new chain mychannel
2017-05-05 09:16:10.534 UTC [msp] Validate -> INFO 007 MSP Org1MSP validating identity
2017-05-05 09:16:10.541 UTC [orderer/common/deliver] Handle -> WARN 008 Error reading from stream: EOF
2017/05/05 09:16:20 grpc: Server.Serve failed to create ServerTransport: connection error: desc = "transport: write tcp 172.18.0.3:7050->172.18.0.4:43040: write: broken pipe"
2017/05/05 09:16:20 grpc: Server.Serve failed to create ServerTransport: connection error: desc = "transport: write tcp 172.18.0.3:7050->172.18.0.5:34658: write: broken pipe"
2017-05-05 09:16:32.161 UTC [msp] Validate -> INFO 009 MSP Org1MSP validating identity
2017-05-05 09:16:32.168 UTC [orderer/common/deliver] Handle -> WARN 00a Error reading from stream: EOF
2017-05-05 09:16:32.187 UTC [msp] Validate -> INFO 00b MSP Org1MSP validating identity
2017-05-05 09:16:32.193 UTC [orderer/common/deliver] Handle -> WARN 00c Error reading from stream: EOF
Slides on Composer I used last night at the Hyperledger meet up in London: https://www.slideshare.net/dselman/hyperledger-composer-update-2017-0405/dselman/hyperledger-composer-update-2017-0405
@uber.twin can you give some details of your environment ? such as operating system, docker & docker-compose version ?
@davidkel Ubuntu 16.04.2 LTS
Docker version 17.03.1-ce
docker-compose version 1.13.0
@here Guys, is there any guide on how to pass errors from chaincode's transactions to the client, who requested it? I tried two ways to submit transaction: REST server and composer command line. If transaction was executed successfully, I'm getting an updated member/asset object in REST server and "Command completed successfully." message in the command line. If transaction was not successful (i.e. triggered error by "trow new Error("PANIC!!!")" ), both REST server and composer command line just hangs and does not return anything, as if it takes very long to execute transaction. Technically I can wait for some timeout, return an error that something went wrong and ask user to re-send transaction. But is there any way to pass error message from chaincode to the client?
@davidkel the "hosts" file of my "peer0" container does not have a "orderer0" entry
Hi @nvlasov are you using Fabric v0.6? My understanding is that there was a problem with v0.6 that causes failed transactions to hang. I Have experienced the same thing. This problems is supposed to be fixed in v1.0
@jorgedr Yes, I'm on Fabric v0.6, but I see in the chaincode's log that it's actually handled exception correctly and sends error message to the log. The thing is that it does not return anything back to the client for Invoke transactions.
So I was hoping Composer will do some magic and communicate chaincode's error message back. Which doesn't seems to happen. Is it a limitation of Fabric 0.6 protocol?
@uber.twin I had problems with docker-compose 1.12, not tried 1.13 but I know that 1.11 does work so might be worth downgrading to that version
@davidkel it doesn't seem to help. I just checked the CLI peer logs in the Fabric v1 corresponding setup and it seems to contain the same kind of error
2017-05-05 12:51:52.518 UTC [deliveryClient] NewDeliverService -> INFO 2bf Creating delivery service to get blocks from the ordering service, orderer:7050
2017-05-05 12:51:55.518 UTC [deliveryClient] NewDeliverService -> ERRO 2c0 Cannot dial to orderer:7050, because of grpc: timed out when dialing
but it doesn't mind it
there it doesn't seem like a critical error
@uber.twin So even though you see some error messages, things work with Docker Compose 1.11 but fail with Docker Compose 1.13?
no, the error appears, no matter which docker compose I use
and it is manifesting in the Hyperledger Fabric tutorial also
it just doesn't seem to be critical in the context of Hyperledger Fabric getting started tutorial
in there, even though this error appears, the CLI peer can carry on all the operations(create and join a channel, install, instantiate and invoke the chaincode)
while in Hyperledger Composer context, it causes the demo to halt
@uber.twin It sounds like a networking issue which is managed by docker compose. Can I confirm this is what you see when you start up the v1 alpha images
```
Creating network "hlfv1_default" with the default driver
Creating ca_peerOrg1
Creating orderer0
Creating peer0
Creating peer1
```
Note the network name that is created. It must be hlfv1_default
@davidkel yes, precisely like that
@uber.twin how about `sudo netstat -nlp | grep 705` ?
@davidkel tcp6 0 0 :::7050 :::* LISTEN 23007/docker-proxy
tcp6 0 0 :::7051 :::* LISTEN 23179/docker-proxy
tcp6 0 0 :::7053 :::* LISTEN 23168/docker-proxy
tcp6 0 0 :::7054 :::* LISTEN 22957/docker-proxy
tcp6 0 0 :::7056 :::* LISTEN 23297/docker-proxy
tcp6 0 0 :::7058 :::* LISTEN 23284/docker-proxy
The last thing I tried and worked for me was
- docker exec -it peer0 /bin/bash
- apt-get update
- apt-get install -y iputils-ping
- ping orderer0
```
64 bytes from orderer0.hlfv1_default (172.18.0.3): icmp_seq=1 ttl=64 time=0.075 ms
64 bytes from orderer0.hlfv1_default (172.18.0.3): icmp_seq=2 ttl=64 time=0.067 ms
64 bytes from orderer0.hlfv1_default (172.18.0.3): icmp_seq=3 ttl=64 time=0.093 ms
```
you won't find anything in the hosts file of the container
@davidkel it can't connect :
Err:1 http://archive.ubuntu.com/ubuntu xenial-security InRelease
Temporary failure resolving 'archive.ubuntu.com'
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial/InRelease Temporary failure resolving 'archive.ubuntu.com'
@davidkel after all, the error which causes the halt is the following(this is peer0 log, but peer1 looks similar) Not sure if it's related to the previous i.e. "Cannot dial to orderer0:7050"
2017-05-05 15:02:40.730 UTC [chaincode] Init -> INFO 02f Init CSCC
2017-05-05 15:02:40.730 UTC [sysccapi] deploySysCC -> INFO 030 system chaincode cscc/mychannel(github.com/hyperledger/fabric/core/scc/cscc) deployed
2017-05-05 15:02:40.730 UTC [sysccapi] deploySysCC -> INFO 031 system chaincode lccc/mychannel(github.com/hyperledger/fabric/core/scc/lccc) deployed
2017-05-05 15:02:40.731 UTC [escc] Init -> INFO 032 Successfully initialized ESCC
2017-05-05 15:02:40.731 UTC [sysccapi] deploySysCC -> INFO 033 system chaincode escc/mychannel(github.com/hyperledger/fabric/core/scc/escc) deployed
2017-05-05 15:02:40.731 UTC [sysccapi] deploySysCC -> INFO 034 system chaincode vscc/mychannel(github.com/hyperledger/fabric/core/scc/vscc) deployed
2017-05-05 15:02:40.731 UTC [qscc] Init -> INFO 035 Init QSCC
2017-05-05 15:02:40.731 UTC [sysccapi] deploySysCC -> INFO 036 system chaincode qscc/mychannel(github.com/hyperledger/fabric/core/chaincode/qscc) deployed
2017-05-05 15:03:12.559 UTC [gossip/gossip#peer0:7051] func2 -> INFO 037 Learned of a new certificate: [10 7 79 114 103 49 77 83 80 18 244 5 45 45 45 45 45 66 69 71 73 78 32 45 45 45 45 45 10 77 73 73 67 69 106 67 67 65 98 109 103 65 119 73 66 65 103 73 82 65 78 103 100 53 103 119 72 75 120 78 121 113 120 112 116 118 52 48 111 80 69 107 119 67 103 89 73 75 111 90 73 122 106 48 69 65 119 73 119 89 68 69 76 10 77 65 107 71 65 49 85 69 66 104 77 67 86 86 77 120 69 122 65 82 66 103 78 86 66 65 103 84 67 107 78 104 98 71 108 109 98 51 74 117 97 87 69 120 70 106 65 85 66 103 78 86 66 65 99 84 68 86 78 104 98 105 66 71 10 99 109 70 117 89 50 108 122 89 50 56 120 69 84 65 80 66 103 78 86 66 65 111 84 67 72 66 108 90 88 74 80 99 109 99 120 77 82 69 119 68 119 89 68 86 81 81 68 69 119 104 119 90 87 86 121 84 51 74 110 77 84 65 101 10 70 119 48 120 78 122 65 122 77 68 69 120 78 122 77 50 78 68 70 97 70 119 48 121 78 122 65 121 77 106 99 120 78 122 77 50 78 68 70 97 77 70 73 120 67 122 65 74 66 103 78 86 66 65 89 84 65 108 86 84 77 82 77 119 10 69 81 89 68 86 81 81 73 69 119 112 68 89 87 120 112 90 109 57 121 98 109 108 104 77 82 89 119 70 65 89 68 86 81 81 72 69 119 49 84 89 87 52 103 82 110 74 104 98 109 78 112 99 50 78 118 77 82 89 119 70 65 89 68 10 86 81 81 68 69 119 49 119 90 87 86 121 84 51 74 110 77 86 66 108 90 88 73 121 77 70 107 119 69 119 89 72 75 111 90 73 122 106 48 67 65 81 89 73 75 111 90 73 122 106 48 68 65 81 99 68 81 103 65 69 90 105 98 89 10 112 84 117 114 55 104 47 76 73 107 90 107 86 49 121 114 49 49 109 80 48 77 52 72 116 115 43 65 82 114 107 121 51 114 57 55 87 105 104 118 70 48 43 84 103 120 85 73 85 114 70 106 69 101 52 89 118 43 83 73 108 122 53 43 10 73 69 54 66 108 78 101 109 97 70 54 55 110 85 101 68 43 97 78 105 77 71 65 119 68 103 89 68 86 82 48 80 65 81 72 47 66 65 81 68 65 103 87 103 77 66 77 71 65 49 85 100 74 81 81 77 77 65 111 71 67 67 115 71 10 65 81 85 70 66 119 77 66 77 65 119 71 65 49 85 100 69 119 69 66 47 119 81 67 77 65 65 119 75 119 89 68 86 82 48 106 66 67 81 119 73 111 65 103 50 75 87 122 121 115 71 52 73 102 98 107 116 73 102 79 114 120 47 83 10 79 99 51 80 119 120 67 74 81 86 67 81 105 53 68 119 88 112 70 53 86 87 111 119 67 103 89 73 75 111 90 73 122 106 48 69 65 119 73 68 82 119 65 119 82 65 73 103 74 54 122 109 71 84 89 87 101 65 106 97 97 56 122 86 10 73 55 51 116 51 90 111 112 47 109 70 55 57 48 78 119 107 72 50 83 83 108 116 52 83 65 77 67 73 71 57 121 101 72 55 75 56 89 100 68 56 65 111 51 107 66 105 65 82 121 106 73 43 81 112 105 87 113 105 49 75 56 113 83 10 98 54 69 87 112 116 103 50 10 45 45 45 45 45 69 78 68 32 45 45 45 45 45 10]
2017-05-05 15:08:37.843 UTC [chaincode] Launch -> ERRO 038 launchAndWaitForRegister failed Timeout expired while starting chaincode digitalproperty-network:0.7.0(networkid:dev,peerid:peer0,tx:461075ca3ed92a7d6572bc28613cd31346f39be89a5c6b47fa4134bd2233fa96)
2017-05-05 15:08:38.872 UTC [eventhub_producer] Chat -> ERRO 039 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
[ ](https://chat.hyperledger.org/channel/composer?msg=DotaqADXE4BgztERu) @nvlasov Yes.
@dselman Thanks for clarification! :disappointed:
@uber.twin not sure what the problem is with your docker containers whether they have some sort of problem doing namespace resolving or whether there is some sort of network blocking going on. If you have a firewall, can you try disabling it to see if it is affecting the network
@here we've released Hyperledger Composer v0.7.1, read all about it on GitHub: https://github.com/hyperledger/composer/releases/tag/v0.7.1 :tada:
It includes the feature you have all been waiting for - connection profiles and identity management in the playground - so you can use the playground to connect to a real Hyperledger Fabric instance!
It supports Hyperledger Fabric v0.6 and v1.0 alpha.
:thumbsup:
:drum:
Please make sure you read the "Known Issues" section of the release notes!
@sstone1 Awesome!
@sstone1 @dselman we'll test asap ! is there a way to point to a specific network id with it? or is it same as composer - ui?
The connections are all driven via connection profiles -- so you can deploy a BNA, then export the connection profile and give it to someone else and connect.
@dselman great! thanks so much !!
Hi, I imported my `connection.json` file into the new composer playground locally, but i get an error: `Failed to connect: Error: ENOENT: no such file or directory, mkdir '/home/jeff/.composer-credentials/bluemix1'`, this is the same directory I've been using with the old-composer ui to store my certificates. Right now I have a file named `member.admin` in that folder, but composer playground apparently doesn't find the folder
has anyone had a similar problem?
@torresjeff because Playground is running inside a Docker container, that file path is relative to the storage connected to the Docker container. You should use `/home/composer/.composer-credentials` when running with Docker. If you are running Playground on the local machine (using `npm start`) then the file path will be your local disk.
Hi there, we have an abstract transaction which is then extended by other abstract transactions which then are extended by concrete transactions. However, when we try to work with this using the playground, the playground throws an error - Error: No concrete extending type for myNameSpace.MyAbstractTransaction
Thanks @dselman
@dselman is there any difference performance wise between the docker version and the npm version?
@torresjeff nope, should be no difference between the two
@sstone1 thanks!
btw simon, is there an expected date where they fix the event hub connection issue?
was this fixed in v1?
It won't be fixed in v0.6. I asked the Fabric team the other day about v1.0, it's still not fixed but definitely on their radar.
:worried: ok, thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=LwKnxkdBNc9iRmhYv) @tennenjl sounds like a bug. Playground is not finding your concrete transactions. Can you please open an issue and attach your BNA and I will debug.
@dselman Thanks. Will do. Thanks!
@dselman I have created a tool that takes a JSON payload and creates a cto model (concept for now) has been tested with many payloads but may need feeed back from community to improve. it in IBM github now at https://github.ibm.com/ssedghi/json-to-cto, I can present it at a call and move it to a public one.
[ ](https://chat.hyperledger.org/channel/composer?msg=MSycxynghttXJ96k5) @dselman Actually, now that I have done some more digging, I don't think it is a bug, its a problem that sstone1 actually helped me with in the past, where I have an asset which contains an abstract transaction. Sorry for the false alarm!
OK, so just so I understand, when we create an asset definition, can it contain an optional abstract transaction like an interface or can I only have an asset definition contain concrete types. For example, in my asset, I want it to contain an optional array of transactions, in this case it sounds like I can't have an array of the the abstract transaction type and instead have to create multiple array definitions for each concrete transaction type which extends the abstract transaction type?
Assets should be able to contain abstract transactions. Can you send me your model?
Message Attachments
@dden
Has joined the channel.
thank you so much, it now works
Has joined the channel.
@tennenjl thanks -- I have reproduced the bug.
I think one of the issues is that NATransaction is abstract.
```
abstract transaction NATransaction extends GeoTransaction {
o SampleAsset myAsset
}
```
I.e. there is no concrete class that extends GeoTransaction that can be instantiated.
I also think that `o SampleAsset myAsset` should be `--> SampleAsset myAsset`
When I make these changes I am able to create an instance of SampleAsset and generate random data...
```
{
"$class": "org.acme.sample.SampleAsset",
"assetId": "assetId:1738",
"owner": "resource:org.acme.sample.SampleParticipant#participantId:8421",
"value": "cause",
"transactions": [
{
"$class": "org.acme.sample.NATransaction",
"myAsset": "resource:org.acme.sample.SampleAsset#assetId:7718",
"transactionId": "transactionId:7827",
"transactionLocation": {
"$class": "org.acme.sample.GeoLocation",
"latitude": 120.278,
"longitude": 126.002
},
"timestamp": "2017-05-07T20:46:28.082Z"
},
{
"$class": "org.acme.sample.NATransaction",
"myAsset": "resource:org.acme.sample.SampleAsset#assetId:7857",
"transactionId": "transactionId:0029",
"transactionLocation": {
"$class": "org.acme.sample.GeoLocation",
"latitude": 65.676,
"longitude": 173.831
},
"timestamp": "2017-05-07T20:46:28.082Z"
},
{
"$class": "org.acme.sample.NATransaction",
"myAsset": "resource:org.acme.sample.SampleAsset#assetId:6690",
"transactionId": "transactionId:3801",
"transactionLocation": {
"$class": "org.acme.sample.GeoLocation",
"latitude": 22.986,
"longitude": 150.434
},
"timestamp": "2017-05-07T20:46:28.082Z"
}
]
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=BGdqgosbaFyHFg3YM) @shsedghi Thanks, that would be great!
@dselman Many thanks. I tried created a simplified version of our existing model, so now I am going to double check and see if the same issues exist on our existing model. Thanks again, I really appreciate it!
[ ](https://chat.hyperledger.org/channel/composer?msg=JXtdaCuFTf7Ri3Npa) @dselman Okay, take a look at this .bna file, which has an abstract extend an abstract and then there is a concrete. Is that legal?
Message Attachments
@tennenjl ok, I found the bug. At https://github.com/hyperledger/composer/blob/6811ba5859bde3025ca00e62304cfd76a34a81ac/packages/composer-common/lib/serializer/instancegenerator.js#L167 we need to look up the inheritance chain, not just at the immediate super type.
I created this issue to track: https://github.com/hyperledger/composer/issues/881
Thanks for the bug report -- we'll fix ASAP
@dselman the problem was indeed network related, I moved to a static address host configuration and now it's working
```
not sure what the problem is with your docker containers whether they have some sort of problem doing namespace resolving or whether there is some sort of network blocking going on. If you have a firewall, can you try disabling it to see if it is affecting the network
```
[ ](https://chat.hyperledger.org/channel/composer?msg=gwz2SwRc3u2niAoLd) @dselman Thanks!!
Hello, I am trying to connect local playground to bluemix v1 beta instance. While connecting i am getting the following error 0|composer | HLFConnection :login() > WebAppAdmin
0|composer | E0508 11:50:42.311834619 75 ssl_transport_security.c:611] Could not load any root certificate.
0|composer | E0508 11:50:42.311850655 75 ssl_transport_security.c:1348] Cannot load server root certificates.
0|composer | E0508 11:50:42.312139228 75 security_connector.c:837] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
0|composer | E0508 11:50:42.312149486 75 secure_channel_create.c:127] Failed to create secure subchannel for secure name 'ldn1-zbc3c.2.secure.blockchain.ibm.com:14120'
0|composer | E0508 11:50:42.312157464 75 secure_channel_create.c:158] Failed to create subchannel arguments during subchannel creation.
0|composer | E0508 11:50:42.313062385 75 ssl_transport_security.c:611] Could not load any root certificate.
0|composer | E0508 11:50:42.313169270 75 ssl_transport_security.c:1348] Cannot load server root certificates.
0|composer | E0508 11:50:42.313285122 75 security_connector.c:837] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
0|composer | E0508 11:50:42.313355758 75 secure_channel_create.c:127] Failed to create secure subchannel for secure name 'ldn1-zbf3a.2.secure.blockchain.ibm.com:15120'
what i can see is in the playground logs is , in the certificate i provided from service credentials '\r\n' getting changed to '\\r\\n'
Message Attachments
[ ](https://chat.hyperledger.org/channel/composer-dev?msg=KNXkwT9RJAG2Jzdbj) @hshimo hopefully this will add you to the channel; Composer supports Fabric v1.0 alpha today. You can find instructions on how to use it with Fabric v1.0 on the website: https://hyperledger.github.io/composer/installing/quickstart.html
Has joined the channel.
Message Attachments
@vinitesh did you enter the \n into playground?
[ ](https://chat.hyperledger.org/channel/composer?msg=qnv8Mxb6n9grGLz8z) @sstone1 I have provided the certificate in the following format
Message Attachments
why does it have \r\n in it?
i copied this from the service credentials of bluemix blockchain service
i am using the same in connection.json
and its working from there
@vinitesh if you export the connection profile how does it compare to the one you have ? Also I see that it is trying to log in with WebAppAdmin which won't be the identity you would want to use
[ ](https://chat.hyperledger.org/channel/composer?msg=rMizKRW7Y4KBa3rgW) @davidkel The only difference i see is '\r\n' is changed to '\\r\\n' and when i used the exported connectionProfile with my local composer-cli it fails with the same issue as stated above
[ ](https://chat.hyperledger.org/channel/composer?msg=rj7w3j6uLx7dgnMR6) @vinitesh and after changing the '\\r\\n' to '\r\n' the same connectionProfile works with local composer-cli
@vinitesh ok, that sounds like a bug, could you raise a github issue about it please
@davidkel ok should i raise the issue in hyperledger/composer
@vinitesh yes please
@davidkel ok thanks
Hi @vinitesh how did you setup composer playground docker or npm install and which version are you using ?
@GururajL do you see this?
Has joined the channel.
yup! thx much, i was unable to find it for some reason
I was trying to connect to an already running v1 fabric network from composer. I created a connection profile and specified the user that was already enrolled.but could not establish connection.
is there a better place to start, like a docker-compose with preset data?
I am also not sure if I configuring the connection profile rite. How to setup key store we specify in the connection profile?
If they have already enrolled you need to get their cert and put it in the key store directory.
@sstone1 has a nice script he may be able to share...
@GururajL are you running on Mac?
I've only tested the nice script on Mac
hi, can anybody confirm that this is the right way to undeploy a business network?
```
composer network undeploy --businessNetworkName myNetworkName -p hlfv1 -i admin -s adminpw
```
@uber.twin that worked for me
for me, it is exits with an error like bellow
Jins-MacBook-Pro-2:getting-started jinvanstee$ composer network undeploy -n carauction-network -i WebAppAdmin -s d6975f1125 -p bluemixProfile2
✔ Undeploying business network definition. This may take some seconds...
Command succeeded
Error: Error: Unsupported function "undeploy" with arguments "["myNetworkName"]"
Command failed
composer -v
it used to work for me too on the previous composer version
i'm using V0.7.1
composer-cli v0.7.0
composer-admin v0.7.0
composer-client v0.7.0
composer-common v0.7.0
composer-runtime-hlf v0.7.0
@sstone1 yes, I am using mac
the manual doesn't seem consistent : it's advising to use the "--archiveFile" option but the sample is employing "-n" flag
https://hyperledger.github.io/composer/reference/composer.network.undeploy.html
the `--` option if for the full name, the `-` option is the short name.
You can use either
sure but the equivalent for --archiveFile is -a
not -n
@GururajL here is the one line script installer I've been working on. Would appreciate any feedback you might have!
Before you run the command, make sure any running containers are removed by running: `docker ps -aq | xargs docker rm -f`
You can then start the one line installer by running:
`curl -O https://gist.githubusercontent.com/sstone1/1bf44bc8697f2c59bcdfc30b42c9d8c9/raw/4b75d8835b9f9efbd8c4810f610bc89f7b24f03e/setup.sh && bash setup.sh`
If anyone else wants to try it great, but it probably only works on Mac :)
The command should start a Fabric v1.0 network and Composer Playground and connect the two together
great!
@uber.twin you are correct, the sample output is wrong. Can you create an issue please? Pull requests accepted! :-)
@uber.twin you are correct, the sample INPUT is wrong. Can you create an issue please? Pull requests accepted! :-)
is there, in general, a procedure documented to connect to an existing network?, especially around the key store and authentication. How to make all the certs available to the composer container
No, we don't have anything like that yet. I have some ideas about how we could make it possible to import user certificates via the Playground UI, an "identity import" feature
@dselman well, no matter how I use it it doesn't work for me
@davidkel does `composer network undeploy` work in 0.7.0 for HLF v1?
Or only 0.7.1?
this is the way I try to use it
```
composer network undeploy -n my-network -p hlfv1 -i admin -s adminpw
Error: Error: Unsupported function "undeploy" with arguments "["my-network"]"
Command failed
@sstone1 , it worked like charm! :)
would appreciate more details of how this is happening in the background and how i could modify the network
I have a question regarding dependency checking, e.g. for assets and participants. Suppose I have a participant definition
participant Manufacturer identified by GLN {
o String GLN
o String Name
o String Address
}
[ ](https://chat.hyperledger.org/channel/composer?msg=Ji7kduwEZmbpj2A5y) @davidkel I am using composer playground docker fabriccomposer/composer-playground:latest
@uber.twin @dselman undeploy is not possible with the hlfv1 connector currently
@vinitesh There are a couple of ways to get around the problem for now. You either need to remove all the \r\n text from the text before putting into the cert field on the UI, or you can import your current connection profile which you use for connection via the command line
@vinitesh that would be a good StackOverflow question and answer... Can you post it please?
and an asset definition
asset Product identified by GTIN{
o String GTIN
o String ProductName
o Boolean commissioned optional
--> Manufacturer company
}
and then I create manufacturers GLN:1 and GLN:2.
If I know create a product GTIN:3
{
"$class": "net.biz.PropertyNetwork.Product",
"GTIN": "GTIN:3",
"ProductName": "wabvi",
"commissioned": false,
"company": "resource:net.biz.PropertyNetwork.Manufacturer#GLN:5038"
}
it happily accepts the manufacturer GLN:5038. There is apparently no relationship checking.
Only when I try to do a transaction it actually comes back and says that GLN:5038 doesn't exist.
I would have expected this check already at asset creation time. Is this intended behavior or how can I change this to do the relationship checking at asset creation time already?
@jje no, there's no referential integrity in Composer -- however prior to processing transactions the runtime attempts to resolve relationships.
You should write your business logic to tolerate relationships that fail to resolve.
OK, I understand, good to know. Thanks for the quick reply!
@GururajL cool, glad you got it working! I'm going to look into making the installer a real thing and getting it into the docs. The script has some comments to walk through what it is doing at each step.
@JijoGeorge can you see this?
Has joined the channel.
Hi @vinitesh I have created an issue about being able to support certificate text that contains \r\n
https://github.com/hyperledger/composer/issues/893
@dselman Yes, I am able to. Thanks Dan
@rjones people seem to be having trouble finding the #composer channel. Is there an issue?
I am trying to setup the Fabric Composer locally to learn and do a PoC.
Created one sample business network referring tutorials provided by Dan. The intention is to deploy it in bluemix and use blockchain service (0.6). I am getting the below error when I do "composer network deploy" locally. Also I am trying to deploy it to bluemix Fabric Composer, it keeps on working, no errors were thrown. I referred http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
—Error start
Jijos-MacBook-Air:dist jijo$ composer network deploy -a my-network.bna -i admin -s Xurw3yU9zI0l
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My first fabric composer network
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)
—Error end
I used instructions given in the below page to do the initial setup
https://hyperledger.github.io/composer/tutorials/getting-started-playground.html
Here are my docker images
Jijos-MacBook-Air:dist jijo$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
69cda0af3d1f fabriccomposer/composer-playground "pm2-docker compos..." 13 hours ago Up 13 hours 0.0.0.0:8080->8080/tcp fabric_composer_1
3e3eba544642 hyperledger/fabric-membersrvc:x86_64-0.6.1-preview "membersrvc" 13 hours ago Up 13 hours 0.0.0.0:7054->7054/tcp fabric_membersrvc_1'
Failed at the grpc@1.0.0 install script
@dselman this is a bug in rocket.chat, there is a fix, it is in the current sprint for IT to upgrade rocket.chat to fix
@dselman the workaround is fairly gruesome - rename this channel and create a new one, losing the history for people that weren't members before the split
User User_2 added by rjones.
FYI: as I just posted in composer-dev, I couldn't see this channel up until 5 min ago. I restarted rocketchat and now I can see composer. Not sure if it was the restart or maybe something else. I'm now able to see #composer (obviously :-)
@dselman is there anything equivalent to AssetRegistry but for concepts?
no
you should wrap them in an asset
ok thanks
@stu2 there's a problem that needs a rocketchat server upgrade which is in hand :)
Thanks @davidkel . Importing the connection profile takes me one step further. Now i am getting the following error 0|composer | HLFConnection :queryChainCode() Received 2 payloads(s) from querying the chaincode [{"code":2,"metadata":{"_internal_repr":{}}},{"code":2,"metadata":{"_internal_repr":{}}}]
0|composer | HLFConnection :queryChainCode() Error: failed to obtain cds for org.acme.biznet - transaction not found org.acme.biznet/ServicePartnerChannel
0|composer | HLFConnection :ping() Error: failed to obtain cds for org.acme.biznet - transaction not found org.acme.biznet/ServicePartnerChannel
0|composer | ConnectorServer :Error: failed to obtain cds for org.acme.biznet - transaction not found org.acme.biznet/ServicePartnerChannel() undefined
0|composer | ConnectorServer :connectionPing() <
'ServicePartnerChannel' is name of the channel in blockchain service and 'org.acme.biznet' is no where in my network namespace
@vinitesh I know some fixes went in over the weekend I don't know if they resolve this problem but just to be sure, when did you pull the docker image ?
@davidkel this morning
@vinitesh you need to pull the unstable image to fix that problem
@sstone1 what is the tag for that image?
@sstone1 , i hv some general questions,
1. Does one composer app correspond to one block chain/one channel on the network?
2. How to add peers dynamically to an existing channel/block chain?
I imported my connection profile using my `connection.json` on my machine (running composer playground through npm), now I'm getting the following error:
`Error: Error: Input parameter missing`
3. if one composer app corresponds to one channel, how to specify which channel to deploy this composer app on?
@vinitesh the tag name is 'unstable'
@GururajL You deploy a business network to a specifed channel. That channel is defined in a connection profile which you create to define your fabric
I would suggest asking point 2 on the #fabric-questions channel
I don't know if it's a bug or if its the intended behavior, but whenever i get an error in the playground I can no longer switch connection profile
the icon of connection profiles swithces to `Get local version`
@vinitesh the tag is unstable; `docker pull fabriccomposer/composer-playground:unstable`
Message Attachments
thanks @davidkel
only thing that brings back the connection profile icon is deleting my cookies
@dselman is this a bug?
@torresjeff i'm seeing that as well
Team has anyone seen 502 Gateway errors when running fabric client in Bluemix?
@tennenjl probably due to the event hub issue?
@torresjeff, Thanks I'm wondering if I can validate that
@tennenjl what do the logs in bluemix print out?
@torresjeff [08/05/2017:17:15:58.092 +0000] "GET /receptacles/ HTTP/1.1" 502 0 67 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Firefox/52.0" 108.168.250.152:22425 x_forwarded_for:"129.42.208.183" x_forwarded_proto:"https" vcap_request_id:b7e66fe8-cf34-4445-497c-b042f750f72f response_time:120.092366334 app_id:540add9b-418e-4750-9c84-30b78c7c73e2 x_global_transaction_id:"2377870511"
@torresjeff The error is sporadic
anything else apart from that?
@torresjeff going to ssh in and check
not very informative :grimacing:
@sstone1 @davidkel I tried with the unstable image but during connect irrespective of whatever network i try to deploy its giving the following error
Failed to connect: Error: Error installing chaincode code org.acme.biznet:0.7.2-20170508150422(chaincode /var/hyperledger/production/chaincodes/org.acme.biznet.0.7.2-20170508150422 exists)
ps: I have one network already deployed in bluemix blockchain service
[ ](https://chat.hyperledger.org/channel/composer?msg=gYLh9ixH9WaSiMukQ) @torresjeff Yep, turns out the problem had nothing to do with composer. Thanks though!
@tennenjl what was it?
@tennenjl so have you been able to circumvent the event hub issue?
@torresjeff We're still connecting and disconnecting for each api call.
@tennenjl how long does it take on average to complete a transaction?
@torresjeff a few seconds, haven't been doing any real testing
@tennenjl one more question, sorry to bother you so much, if you restart your app you have to enroll with different credentials right?
or are you saving the certificate in a database?
@torresjeff Not bothering me at all, we're all here to help. We save the credentials in the project right now (since it's just a poc), but I need to look at the new wallet apis
@tennenjl could you point me to documentation about the wallet?
[ ](https://chat.hyperledger.org/channel/composer?msg=mjboJobFhTREsMfho) @dselman posted on StackOverflow http://stackoverflow.com/questions/43855088/getting-handshake-error-while-creating-profile-in-local-composer-playground
can't seem to find anything about it in the jsdoc
https://hyperledger.github.io/composer/jsdoc/index.html
it's not particularly well documented
@tennenjl is waiting for me to document it ;)
@sstone1 ok, thanks!
is the wallet something that is stored in the fabric instance as well?
:laughing: but you can find source here I believe https://hyperledger.github.io/composer/jsdoc/composer-common_lib_wallet.js.html
@tennenjl thanks!
the wallet is purely client side and manages the persistence of identities (for fabric, that's enrolment certificates)
lol throw throw throw
@sstone1 ok, will be waiting for some documentation ;)
how about a _possibly_ working example?
https://github.com/sstone1/sample-bluemix-composer-app
sorry it's bluemix specific - but in the `lib` folder you'll find a wallet implementation that stores identities in the bluemix object storage service
@sstone1 that works, using bluemix anyway :)
in `app.js` you'll see how to use the wallet in combination with the client APIs:
```
const wallet = new ObjectStorageWallet(container);
return businessNetworkConnection.connect(connectionProfileName, businessNetworkIdentifier, userID, userSecret, { wallet: wallet })
```
thanks a lot
@sstone1 do you think we could see a comparison of a composer app vs a pure hyperledger one? will someone be doing something like that?
composer has helped me clear a lot of things up about hyperledger fabric
but would still like to see how things are handled differently using the sdk for fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=dj4NqtJ2W2emAz8QX) @sstone1 TY :-)
i'm not aware of anyone doing that
np @tennenjl sorry it took a while! give me a shout if you have any problems
@sstone1 what exactly are you storing in the OBJECT_STORAGE_CONTAINER env variable?
the name of the Object Storage Container ;)
in this case, "Composer Wallet"
Object Storage lets you partition the data into named containers
oh ok
thank you
some of the env vars used are here:
https://github.com/sstone1/sample-bluemix-composer-app/blob/master/manifest.yml
perfect
thanks
np
@sstone1 is there any difference in using COMPOSER_CONFIG: | or COMPOSER_CONFIG: > ?
> replaces newlines with spaces, | preserves newlines
> replaces newlines with spaces, | preserves newlines
either should be fine
ok
@sstone1 it's not clear to me what exactly is the wallet doing in this case, I still have to specify the user id and secret to connect to the network
isn't the purpose of the wallet to be able to connect with the credentials that are already stored there?
in this case i'm letting the app enroll first time round
when it enrolls it asks the wallet to persist the certificate
any subsequent attempts will use the certificate stored in the wallet
if you prepopulate the wallet with the certificate, it will never use the enrollment secret
ohhhh
I see
we have some work to do to make the enrolment secret, currently its required
we have some work to do to make the enrolment secret optional, currently its required
you can set the secret to be "notrequired" though and it'll work ;)
(as long as you already have the certificate!!!)
thanks for clearing that up
np
so if I have multiple certificates in my wallet, it will look for the one with the userId that I specified as an argument in `connect()`?
correct
Message Attachments
that file is the "standard" identity format created by `hfc`
```
{"name":"user_type1_0","enrollment":{"key":"1234567890","cert":"1234567890","chainKey":"1234567890","queryStateKey":{"type":"Buffer","data":[1,2,3,4,5,6,7,8,9,0]}}}
```
important data removed ;)
@sstone1 what happens to `"keyValStore": "/Users/sstone1/.composer-credentials/bluemix"` if we use object storage? is it ignored?
yep
also some pending work to clean that up
i don't like anything about that property
lol
1) it requires a full path which makes portability between different machines way too difficult
2) "keyValStore" means nothing to anybody... "keyStore" might be better, but "wallet" seems to be the popular term in the Blockchain world
yup, agree with you there
it's a pain to change the path when deploying to bluemix
:+1:
i'd like to make it optional
and it just uses the name of the connection profile as the "default" wallet
which would automatically provide isolation between different connection profiles
and i think that would suit most of our users
yes i think so
regarding the object storage
if i copy my certificates that i have on my local machine
they would also work on bluemix right?
yeah they should do
is there any way to see the contents of the file in object storage?
i'd like to know if it was copied correctly
but apparently you can't open it
you can download it
oops
have you also considered the name you use to store the certificates?
eg: `admin` instead of `member.admin`
changing the name*
the wallet APIs strip off the prefix `member.`
so if I upload my file with the name `member.admin` it would work?
no, needs to be `admin`
@here we will have our next meeting this Thursday at 4pm UTC (5pm UK, 12pm ET, 9am PT). Details here:
https://github.com/hyperledger/composer/wiki/Meeting-11th-May-2017
Does anybody have anything that they'd like to see added to the agenda? Does anybody want to talk about their experiences of using Composer? :)
@here I'm also conscious that the timing of these calls is not great for a lot of people that aren't UK/US based.
I'd like to get as many people involved as possible, so I'd like to propose that we move to weekly meetings and that we have a alternating call schedule:
Week 1) 4pm UTC (5pm UK, 12pm ET, 9am PT)
Week 2) 9am UTC (10am UK, 2:30pm IST, 5pm CST)
Please let me know if you'd be interested in joining calls using the week 2) schedule.
@vinitesh that is a bit odd that it installed the chaincode but then failed to instantiate it (at least that is what it sounds like) can you see any chaincode instances running with a name org.acme.biznet ? Also I wonder if there were any errors in the peer logs related to instantiation ?
[ ](https://chat.hyperledger.org/channel/composer?msg=QSE87mynro7MHnS3x) @sstone1 Week 2 schedule sounds good. 7pm in Melbourne, Australia
How do I install latest version of composer (0.7.1) locally?
@abcoathup run the Quick Start: https://hyperledger.github.io/composer/installing/quickstart.html
@SachinJha see this?
Has joined the channel.
In a transaction I want to assign available assets to a participant (both creating a new asset and using available assets), what is the recommended way to advise the client application what specific asset has been assigned to the participant?
Sounds like a good use case for emitting an event: https://github.com/hyperledger/composer/issues/66
@14gracel and @sstone1 are actively working on this at the moment.
[ ](https://chat.hyperledger.org/channel/composer?msg=SaEGnjM2ybtwvX9R4) @dselman Until there are events, I might just create a log of issued assets and get the client to pass in an ID to use for the log, so then the client can look up the assigned asset. A bit clunky, but feels better than having the client look for an available asset to pass to the transaction
What is the suggested ID to use for assets/participants? I am using GUIDs.
(As an aside, anyone got a good GUID function for use in a transaction processor function? I am using )
What is the suggested ID to use for assets/participants? I am using GUIDs.
(As an aside, anyone got a good GUID function for use in a transaction processor function? I am using
var guid;
guid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
return v.toString(16);
});
from: http://stackoverflow.com/questions/105034/create-guid-uuid-in-javascript
)
What is the suggested ID to use for assets/participants? I am using GUIDs.
(As an aside, anyone got a good GUID function for use in a transaction processor function? I am using
var guid;
guid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
return v.toString(16);
});
from: http://stackoverflow.com/questions/105034/create-guid-uuid-in-javascript
)
GUID generation inside a TP function would be a bad idea -- each peer would create a different GUID, which will result in consensus failure. The GUID should be created/assigned by the client and passed in on the transaction.
On the client (if in Node.js) you can use the `uuid` module.
Remember there are N copies of your code executing and they all need to have the same side-effects on the ledger.
[ ](https://chat.hyperledger.org/channel/composer?msg=7jJTiNDuYtLMizdTW) @dselman Oops, centralised thinking there. Was thinking to push as much logic into TP function. Should I calculate ID from asset registry instead (sequential integer)? Otherwise need client work out if they need to use an existing asset or create a new asset if none available
sequential integer would work, but just be aware that the sequence number generation is a global lock. Blockchain basically uses optimistic concurrency, and will rollback transactions when there is an optimistic concurrency failure.
(aka consensus failure)
[ ](https://chat.hyperledger.org/channel/composer?msg=e7BWb7oFoymZ3N93Z) @dselman Thanks, you have sold me on the client passing in a GUID to use if I need to create an asset.
When should I use a concept?
When should I use a concept rather than an asset?
assets have an id and can be stored/managed in a registry. Concepts do not -- they are typically complex data structures that are contained by an asset, participant or transaction. E.g. an Address would be a Concept. A Customer would be an asset.
assets have an id and can be stored/managed in a registry. Concepts do not -- they are typically complex data structures that are contained by an asset, participant or transaction. E.g. an Address would be a Concept. A Customer would be an asset or participant.
[ ](https://chat.hyperledger.org/channel/composer?msg=WmALQYHf7Yurj2ktg) @dselman
I did the following, though assume there is a quicker way to update to latest version:
'$ docker ps -aq | xargs docker rm -f
$ docker images -aq | xargs docker rmi -f
$ npm install -g composer-cli
$ git clone https://github.com/hyperledger/composer-sample-applications-hlfv1.git
$ cd composer-sample-applications-hlfv1/packages/getting-started
$ npm install
$ docker run -d -p 8080:8080 fabriccomposer/composer-playground
'
[ ](https://chat.hyperledger.org/channel/composer?msg=WmALQYHf7Yurj2ktg) @dselman
I did the following, though assume there is a quicker way to update to latest version:
$ docker ps -aq | xargs docker rm -f
$ docker images -aq | xargs docker rmi -f
$ npm install -g composer-cli
$ git clone https://github.com/hyperledger/composer-sample-applications-hlfv1.git
$ cd composer-sample-applications-hlfv1/packages/getting-started
$ npm install
$ docker run -d -p 8080:8080 fabriccomposer/composer-playground
How can you tell what version of Playground you have running? It has connection profiles so must be 7.1.
We used to display the version number in the UI... I believe @EdMoffatt will be helping us bring it back!
[ ](https://chat.hyperledger.org/channel/composer?msg=HgrA7ruDvacDteY53) @dselman I knew I had seen it in earlier versions. Thanks
https://github.com/hyperledger/composer/issues/440
[ ](https://chat.hyperledger.org/channel/composer?msg=pdaQT6CFw7o4Typbe) @davidkel I think its unable to install the chaincodde as i cannot see any instances in the Blockcahin service console. Also org.acme.biznet is not a part of my network namespace. In the blockchain service there is only one chaincode installed which i deployed a week earlier using composer-cli. During the connect process i can see the following in the Peer logs. 2017-05-09 08:43:57.724 UTC [msp] Validate -> INFO 1547d3f[0m MSP PeerOrg1 validating identity
[31m2017-05-09 08:43:57.732 UTC [lccc] Invoke -> ERRO 1547d40[0m ChaincodeId: org.acme.biznet does not exist on channel: ServicePartnerChannel(err:chaincode not found org.acme.biznet)
I'll let @sstone1 or @dselman correct me here as I am not familiar enough with playground yet but it looks like as part of the switching to a different connection profile playground sets up a blank business network called org.acme.biznet and attempts to deploy that to the fabric. If that fails for any reason then it fails to switch to that connection profile (I could be wrong about this though).
:+1: we only let you use the org.acme.biznet business network with playground
that clearly needs to change though ;)
It does. That is confusing. Do we have a story for that?
I had a chat yesterday with @EdMoffatt who said he would raise one
@vinitesh Unfortunately that part of the log doesn't give any indication of what happened once the business network was installed and it tried to instantiate. It would have been earlier in the logs when you first tried the unstable version of playground.
@davidkel In bluemix usually i get the logs of last 10 mins only , so the logs for the time i first tried with unstable version won't be available. But what i understand from @sstone1 comment is playground will only allow us to deploy org.acme.biznet.0.7.2-20170508150422 network regardless of whatever network is loaded in my browser. So by the error you think that the org.acme.biznet.0.7.2-20170508150422 network was deployed when i first tried with the unstable version of playground but its not able able to instantiate and later installations are failing beacause that network already exits on blockchain.
So is there any way by which i can uninstall the org.acme.biznet.0.7.2-20170508150422 network from bluemix blockchain service. In the channel trail i can see that undeploy command is not yet supported by connector
@vinitesh unfortunately there isn't any way to remove it (undeploy if implemented wouldn't solve the problem either because currently hyperledger fabric provides no capability to remove chaincode).I'm currently putting a fix in to try to ignore already exists messages so that the instantiate will be tried. It's not ideal. An alternative for now would be to get a newer version of playground than the 20170508150422 tagged version which is what you have.That will install a chaincode package at a different version so will allow the install to go ahead
@davidkel shall i take 0.7.2-20170509102910 tag or pull the unstable again
@vinitesh as they are all just unstable releases and unstable tag just points to the very latest unstable version you could try unstable or one tagged with a slightly newer date I don't think it will make much difference
@davidkel ok thanks
Anyone know if this is the correct url to composer playground https://composer-playground.mybluemix.net/
Anyone know if this is the correct url to composer playground https://composer-playground.mybluemix.net/? It does not appear to be working
@paul.sitoh just tried it now and it is working for me on chrome
I am running into a bizarre issue, the loop back explorer is not showing the system API, and my front end always throws a 404 when I try to access the /system/issueIdentity any thoughts on why this might happen?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=PK64yPzmhbRcXSzG8) @dselman that issue is here: https://github.com/hyperledger/composer/issues/902 (got round to raising it today)
Wondering on work-around for an issue. I’ve created a couple assets, then modified the model with additional optional attributes, deployed successfully. Now the asset registry complains of missing required fields, but won’t let me see the registry to modify or delete the assets. Likely a novice user issue. :/
@dselman should composer throw an error if I try to add another asset with the same id? i'm currently not getting any
sorry I'm currently trying to add another participant, using an already existing id
but not getting any errors
it should throw an error
make sure you are using a participant registry
and that the type is the same
everything seems ok
@guyho if you've only added optional attributes then runtime should not be complaining
[ ](https://chat.hyperledger.org/channel/composer?msg=JmDFfTiLTy76QuTcR) @guyho You've hit one of the open issues I'm afraid! I've detailed out what we intend to do about it in the latest comment on it here: https://github.com/hyperledger/composer/issues/601 . What Composer *should* do is to warn you if you're making a change that might invalidate your existing assets, then deal better with displaying invalidated ones. Right now, as you spotted, it's too easy for new users to trip up
Ah, as Dan says, that's only if tha attributes you added are non-optional - sorry, miss-read your original post!
@dselman Yes, they're marked as "o" so, that's what surprised me.
Ah, that "o" is not declaring something as optional, that's the trick here :) Let me just whip up a quick example...
Examples here: https://hyperledger.github.io/composer/reference/cto_language.html
asset SampleAsset identified by assetId {
o String assetId
o String requiredValue
o String optionalValue optional
}
There, the only optional value is the optionalValue. The "o" at the beginning is part of the modelling language
Dan's link for full details :)
Are you able to share a screenshot of your participant registry with both participants expanded, @torresjeff ?
@EdMoffatt currently not using the playground, but creating the participant through the composer-client api
Gotcha. I do find the example "optional" element in the docs. Was trying to understand what is this modeling language so I know what "o" represents. At first I thought it was a circle bullet point. Anyway, I reverted to old model, deployed, removed assets, updated model so I can move forward. Cheers!
if for example i have the following:
```
connect().
then(() => {
return clientRegistry.add(resource);
})
.then((result) => {
console.log("Client added successfully");
return res.json({"result": "success"});
})
.then(() => {
return disconnect();
})
.catch(function (error) {
console.error("Error adding client", error);
return res.json({"error": error.message});
throw error;
});
```
and i added a participant with an already existing id
`o` is a `has a` containment
then i would enter the `catch()` handler right?
what is clientRegistry
?
after you connect you should call getParticipantRegistry(...)
hang on... is that in a TP function?
nope
or client code?
server side
nodejs
client yup
i get all my registries when i start up my app
I assigned `businessNetworkConnection.getParticipantRegistry('org.bancoomeva.acuerdo.Client')` to `clientRegistry`
are you sure it is not a promise/async issue
?
when handling the promise
would you suggest getting the participant registry every time i have to use it?
like get a new one?
you could get it once, but you need to ensure that the code that uses it doesn't run concurrently with the code that gets it... seen that bug several times
my app only starts listening once i have gotten all my registries
can you DM me the file in question?
sure, give me a sec
[ ](https://chat.hyperledger.org/channel/composer?msg=QSE87mynro7MHnS3x) @sstone1 I like the alternating schedule. I'd be interested in joining calls on the week 1 schedule.
@jinvanstee great, will you be joining us this thursday then?
@sstone1 I'm facilitating a blockchain hackathon (IBM internal) this Thurs and Friday so likely won't be able to. :( I will in the upcoming weeks on week 1 schedule.
ah okay, np, hope the hackathon goes well!
[ ](https://chat.hyperledger.org/channel/general?msg=v6CzJ85n8ut5czXAu) @Ladar you can find information about connecting Composer to the IBM Blockchain service on Bluemix here: http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
Has joined the channel.
@sstone1 what topics are gonna be covered in the meeting this thursday?
@EdMoffatt is going to discuss the "getting started" story https://github.com/hyperledger/composer/issues/912
We think it needs a lot of rework. Good chance for all to get involved :)
Other than that, I think @14gracel can show off his excellent progress with events: https://github.com/hyperledger/composer/issues/66
@carol
@dselman can discuss the work we're thinking about around the historian
@dselman can discuss the work we're thinking about around the historian: https://github.com/hyperledger/composer/issues/55
We haven't covered REST API security yet: https://github.com/hyperledger/composer/issues/142
@caroline-church and @winslet can talk about the next set of updates coming for the playground
Anything that you'd like to see discussed @torresjeff ?
@sstone1 that seems about right, really looking forward to the events progress ;)
I'll give you a little preview; Liam has events going from the Blockchain (HLFv1) all the way to client applications using the `composer-client` Node.js API :ok_hand:
Very exciting, we know lots of people are after it, and it opens up a lot of exciting integration possibilities
:woo:
is support for fabric v0.6 being considered?
gonna chat about it tomorrow... hopefully won't take too much to backport the changes
excellent
@sstone1 will there be a video like this: https://www.youtube.com/watch?v=fdFUsrsv5iw
for HLFv1?
is some additional setup required for v1?
haven't really tried v1 so wouldn't know if it's very similar/different
Yes, I am keen to update that video. It needs an update to cover:
Hyperledger Fabric v1.0
Rebrand from Fabric Composer to Hyperledger Composer
Connection profile and identity support in the Playground, and removal of the old UI
great
looking forward to that as well
v1 is a lot more powerful, but more work to configure
we're trying to make it easier for first time users
we have a v1 version of our getting started guide which sets up a simple v1 network
i still haven't been able to get access to the limited beta on bluemix :'(
@mbwhite is looking at pulling out those scripts that stand up a simple fabric v1 network and making them more widely available
The getting started guide with Fabric v1.0 instructions are here: https://hyperledger.github.io/composer/unstable/installing/quickstart.html
We are working on an installer of some sort that will download, install, and configure Fabric v1 and Composer Playground and connect them together
thanks!
@Sandeep see this?
Has joined the channel.
Yes. Thanks.
Reporting the HLF V1 Getting started Business Network deployed flawlessly. Thanks for all the hard work gentleman.
Hello. I am using Fabric Composer REST Server to generate a Secure API. I am using sample application hlfv1 project to generate the .bna file. What is the default access token I have to use to access the REST API calls ?. How can I generate new tokens ?
Fantastic, thanks for the feedback @GoodFaith !
@Sandeep currently this is not well documented
FYI, you don't need an access token unless you enable the security options
even though the LoopBack UI shows it at the top
@Sandeep recommend you read the design information in https://github.com/hyperledger/composer/issues/142
[ ](https://chat.hyperledger.org/channel/composer?msg=r4BMgpF2QHpu24gyQ) @GoodFaith ...and women! :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=WqoAMzCszNLFaATCP) @sstone1 Thanks. I will take a look.
Sure I'm way early on this, but is this on y'alls radar at all? https://www.sovrin.org/ The're under the Hyperledger umbrella now. ---- Yes, and women. lol Congrats to you all as well.
Yeah, I had a great chat with the Indy guys at the recent hackfest in DC. There's a lot of possibilities for Composer and Indy to join forces in future :)
Sweet. Looking forward to it.
@sstone1 I have a question, it's more about "good practices", would Blockchain completely replace databases?
ie. in a bank, would you have all your clients in the ledger?
and all their banking accounts, etc etc
It really depends on the business network and the data:
1. Does the data actually need to be stored in the Blockchain and shared between participants?
2. Can the data be stored in the Blockchain and shared between participants? Do data protection rules prohibit it?
You might also have significant amounts of existing systems and databases that you want to integrate with the Blockchain, it won't replace those overnight
yup, that's where events come in
so in the bank example, would it make sense to store all information about my clients in the ledger?
or should i only store things i can share between participtans
ie. store client data in a traditional database, and maybe store things like banking accounts in the blockchain?
or just money transfers in the blockchain
I am using sample applications hlfv1 project. I was able to create and deploy the bna file onto the hlfv1 network. Then I am started composer playground locally. To use the local hlfv1 network, what is the user id and secret I have to use on the composer playground?. I tried using user:admin and secret:adminpw for connecting to the hlfv1 profile and I am getting access denied error.
@sstone1 -- Is there a Getting Stated guide for building sample app using `Hyperledger Composer` based on `Hyperledger Fabric 1.0`?
@torresjeff with human clients, you're probably storing PII/SPI somewhere which you have to be pretty careful about storing in a shared, immutable blockchain
even if it's encrypted... one day it could be decrypted (due to increased CPU power, vulnerabilities, etc)
so depends on how much you trust the other peers in the network ;)
you might want to just store a minimal set of information like the account ID in the Blockchain, which is a link/reference to all of the data stored in a database elsewhere
ok, that makes sense
thanks for clearing that up
np
@Sandeep it should be admin/adminpw - do you have the full error or a screenshot?
@sanjay-saxena the quickstart runs against Fabric v1.0: https://hyperledger.github.io/composer/unstable/installing/quickstart.html
All of the following docs (editing the business network, starting a REST API, generating an app) will work against HLF v1.0
@sstone1 -- Will that point to an `unstable` build of `Hyperledger Composer`?
but you might need to supply the `-p hlfv1` argument to any commands to say that you want to use the HLF v1.0 connection profile
no, it should use the latest good stable builds
i only link to the `unstable` docs as they're better formatted and easier to read
ok ... thx!
User User_1 added by rjones.
great, thank you!
Has joined the channel.
@sstone1 Having a reasonably large issue connecting HyperLedger Composer to a Bluemix Blockchain. Is there a good tutorial to walk through the steps.
User User_2 added by tkuhrt.
Message Attachments
Message Attachments
[ ](https://chat.hyperledger.org/channel/composer?msg=qumgQAyrgmYEeeRcR) @sstone1 I am using the connection.json and admin cert .pem files in sample applications v1 folder. I am getting EACCESS error.
[ ](https://chat.hyperledger.org/channel/composer?msg=qumgQAyrgmYEeeRcR) @sstone1 I am using the connection.json and admin cert .pem files in sample applications v1 folder.
Message Attachments
[ ](https://chat.hyperledger.org/channel/composer?msg=qumgQAyrgmYEeeRcR) @sstone1 I am using the connection.json and admin .pem files from the sample applications folder. Please find screenshots below
Message Attachments
Message Attachments
Message Attachments
Message Attachments
05:14:30.943 [eventhub_producer] Chat -> ERRO 6bc Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
I keep getting this error on the console although this doesn't seem to cause any problems. Does anyone know why this occurs?
[ ](https://chat.hyperledger.org/channel/composer?msg=Mu8zKCmknRhgxFsEY) @sstone1 Lots of great topics, would be great to see a recording
In a transaction I want to issue a type of asset to a participant e.g. a blue marble. Is best practice to get the transaction processing function to find an unassigned asset (e.g. free blue marble) or should the client find an unassigned asset and request it be assigned to the participant?
I am trying to use the composer deploy command to deploy the BNA to the bluemix blockchain service (HSBN vNext Plan based on HLF v1), but I am getting the following error:
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.7
Description: Digital Property Network
Error: PEM encoded certificate is required.
Command failed
I have modified the connection profile accordingly
@berserkr @genecyber @bh4rtp
Has joined the channel.
@ RajkumarSomasundaram
@RajkumarSomasundaram
[ ](https://chat.hyperledger.org/channel/composer?msg=pzetgffacxZJm2Fed) @Ladar There is no such tutorial. I'm not sure what information you need on top of the Stack Overflow post; what issues are you having?
@Sandeep your keyValStore property is set to `/home/sandy/.hfc-key-store` but you are running inside the Docker container. You need to use `/home/composer/.hfc-key-store` because `/home/sandy` does not exist inside the container.
@saridsa1 that problem can be safely ignored. it happens when a program terminates without disconnecting from the event hub.
@RajkumarSomasundaram can you see this?
Has joined the channel.
@sstone1 Yes I can , thank u
```
namespace org.acme.sample
asset SampleAsset identified by assetId {
o String assetId
--> SampleParticipant owner
o String value
}
participant SampleParticipant identified by participantId {
o String participantId
o String firstName
o String lastName
}
transaction SwitchOwner identified by ownerShipId {
o String ownerShipId
--> SampleAsset asset
--> SampleParticipant newOwner
}
```
```
function onSwitchOwner(ownershipChange) {
ownershipChange.asset.owner = ownershipChange.newOwner;
return getAssetRegistry('org.acme.sample.SampleAsset')
.then(function (assetRegistry) {
return assetRegistry.update(ownershipChange.asset);
});
}
```
above are the logic and data model
but M getting an error like this
`No type org.acme.sample.SwitchOwner in namespace org.acme.sample`
Any ideas?
@abcoathup you could do it in a transaction processor function, but you will need to make sure that the find function is deterministic and always comes up with the same answer. since we do not have complex query support yet, you will need to either use `getAll()` to get all the marbles, or a for loop with `get` to find the first free marble.
@vivekraut please supply a copy of your connection profile... @davidkel can probably help here
Where do you get the error @RajkumarSomasundaram ?
in the playground?
Yes, in the playground
@kevin-smets
Has joined the channel.
have you got a screenshot?
it's fixed now, so I do not have one anymore :)
sorry, meant Rajkumar ;)
@sstone1 My code is just a tweak of the original "sampleTransaction" (given by default in playground)
Did you make the changes in playground, or did you import a BNA file with the changes in?
Those files are fine when I use them in playground.
Message Attachments
Yes they are fine as such. When I made a small tweak by trying to change ownership in the sample Transaction example, I got this error
@sstone1 Snapshot that u requested.
did you click the deploy button on the left hand side after making the changes?
@sstone1 thank you for invitation. :thumbsup:
@sstone1 This is very very embarrasing.. I forgot to click "Update"
sorry for the trouble
:joy: no problem, glad it's sorted!
[ ](https://chat.hyperledger.org/channel/composer?msg=cf8g7ofQwmwz2E4Jz) @sstone1 Thanks, that is what I am doing currently, getAll then iterate with a for. Looking forward to query support
@EdMoffatt perhaps we should notify the user if they switch between Define and Test without clicking Update?
[ ](https://chat.hyperledger.org/channel/composer?msg=wZS4kevjEpbih96Rj) @davidkel Yesterday I tried connect with latest unstable version but i was getting a timeout. '/usr/local/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib'
0|composer | HLFConnection :deploy() Error: Failed to receive commit notification for transaction '582d98bd5ab4be6a1ad308061d4281b1bf16651a133093d3de555be0451eead8' within the timeout period
0|composer | ConnectorServer :Error: Failed to receive commit notification for transaction '582d98bd5ab4be6a1ad308061d4281b1bf16651a133093d3de555be0451eead8' within the timeout period() undefined
0|composer | ConnectorServer :connectionDeploy()
i am not able to find anything relevent in the Peer logs
New issue :
Data Model
```namespace org.acme.sample
asset SampleAsset identified by assetId {
o String assetId
--> SampleParticipant owner
o String value
}
participant SampleParticipant identified by participantId {
o String participantId
o String firstName
o String lastName
o Double accountBalance
}
transaction BuyAsset identified by assetId {
o String assetId
--> SampleAsset asset
--> SampleParticipant newOwner
}
```
logic.js
```function onBuyAsset(purchaseAsset) {
purchaseAsset.asset.owner.accountBalance = purchaseAsset.asset.owner.accountBalance + purchaseAsset.asset.value;
purchaseAsset.asset.owner = purchaseAsset.newOwner;
purchaseAsset.newOwner.accountBalance = purchaseAsset.newOwner.accountBalance - purchaseAsset.asset.value;
getAssetRegistry('org.acme.sample.SampleAsset')
.then(function (assetRegistry) {
return assetRegistry.update(purchaseAsset.asset);
});
return getAssetRegistry('org.acme.sample.SampleParticipant')
.then(function (participantRegistry) {
return participantRegistry.update(purchaseAsset.newOwner);
});
}```
`Error : Error: Object with ID 'Asset:org.acme.sample.SampleParticipant' in collection with ID '$sysregistries' does not exist`
Any Clues?
Message Attachments
You are looking up a SampleParticiant in an *asset* registry
...we've all done it!
thank u for the useful tip.. solved my issue @dselman
[ ](https://chat.hyperledger.org/channel/composer?msg=Kk4MvFAqG5tY48Kor) @sstone1 I feel like that was actually in a mockup at some point! I think we may have missed that it wasn't added! I'll check back for the Issue and raise a new one if necessary
... is there anything you guys haven't thought of yet? :P
922 raised and assigned to Caroline for triage (assuming this is front-end work only, as we already have the ability to tell whether a network is ready to deploy or not, so I don't believe we need any new backend functionality): https://github.com/hyperledger/composer/issues/922
@vinitesh sounds like the instantiate failed or took too long. It's possible that it completed, what happens if you try to connect through playground ?
@rubi_1432
Has joined the channel.
@davidkel later on its the same issue on connect Failed to connect: Error: Error installing chaincode code org.acme.biznet:0.7.2-20170509102910(chaincode /var/hyperledger/production/chaincodes/org.acme.biznet.0.7.2-20170509102910 exists)
@vinitesh I have put a change in which will ignore this error and attempt to instantiate the already installed chaincode, but I don't think it would solve your problem. For some reason it appears that instantiation is failing for you. The only thing I can think of that could cause a timeout problem like that is the docker container being spun up to run the chaincode doesn't have enough memory and just dies. I am pretty sure that if the chaincode compilation fails or if the chaincode execution its a problem you should get an error message back. Only suggestion I have is to chase HSBN to try to find out what is happening to your chaincode containers and what memory allocation they have been given
@vinitesh I have put a change in which will ignore this error and attempt to instantiate the already installed chaincode, but I don't think it would solve your problem. For some reason it appears that instantiation is failing for you. The only thing I can think of that could cause a timeout problem like that is the docker container being spun up to run the chaincode doesn't have enough memory and just dies. I am pretty sure that if the chaincode compilation fails or if the chaincode execution is a problem you should get an error message back. Only suggestion I have is to chase HSBN to try to find out what is happening to your chaincode containers and what memory allocation they have been given
@davidkel ok will try to chase with HSBN.
@davidkel @sstone1 Just want to confirm that as of now playground only provide the functionality to deploy org.acme.biznet network and I will not be able to deploy any other network to blockchain using playground. Am I right?
@vinitesh confirmed. the work to manage other networks using playground is being tracked under https://github.com/hyperledger/composer/issues/902
@sstone1 thanks
Does anyone have an example of using mocha to unit test composer models and tractions
Does anyone have examples using mocha to unit test composer models and transaction that he/she is willing to share?
[ ](https://chat.hyperledger.org/channel/composer?msg=XMegkuKHFg9fM6c27) @sstone1 I am getting a different error now after changing the keyval store to point to composer. I am using the admin certs .pem files for orderer and peers. Please find screenshot below. Any idea?
Message Attachments
Message Attachments
@Sandeep it looks like your local fabric is not running. Also you don't need to specify certificates in your connection profile as you aren't going to be communicating over tls.
[ ](https://chat.hyperledger.org/channel/composer?msg=ayBa5uA9cqsFWv5ZX) @davidkel Please find screenshots for local network
Message Attachments
Message Attachments
@davidkel @sstone1 I have removed the certificates and the local fabric is running as well. I am still getting "Connection Refused" Error
how did you create the docker container?
you are using `localhost`
but because you are using docker, `localhost` is pointing to the playground docker container
which is not what you want
yes. i am using ~localhost~
yes. i am using `localhost`
you want the hostname of the peer docker container
@sstone1 My question would be if the Composer is stuck on "Establishing admin connection" when I attempt to connect it to a remote server there is a problem somewhere.
@Ladar using composer playground?
you might just have to click OK, the prompts dont disappear automatically
Is there supposed to be errors in the browser console at that point.
Sorry I rebooted docker
Just give me a second to take a screenshot
Message Attachments
hello, I'm trying to use the composer binary in a linux machine to deploy a bna file but my binary is not found in /usr/local/bin path, I can't find the way of recompile this binary .
undeploy
`npm install -g composer-cli` should be all you need to do if you have installed the pre-reqs (see docs).
npm install -g composer-admin installs the composer binary
@cauep
Has joined the channel.
User User_3 added by rjones.
[ ](https://chat.hyperledger.org/channel/composer?msg=sCyhzjj9AkzFBYg6m) @sstone1 I installed composer playground locally (not using docker) and now I am getting the following error. Any idea?
Message Attachments
Message Attachments
@Sandeep you need to install the unstable version of composer-playground
`npm install -g composer-playground@unstable`
@vfrancoise welcome
[ ](https://chat.hyperledger.org/channel/composer?msg=p4RqCjvp3qkW4AgS7) @sstone1 Thanks. That solved the problem. The basic sample network got deployed now. When I use composer rest server to connect to the deployed bna file, I am getting a version mismatch error. Is there an version of composer rest server I can use to solve this problem ?. Please find screenshot below.
Message Attachments
you also need the unstable version of that
`npm install -g composer-rest-server@unstable`
I wrote some custom code in composer rest server package and I am trying to start the rest server with `node cli.js` Will getting the latest code solve the problem?
when you use an unstable runtime (chaincode), you must use a matching unstable client
so yes- the latest rest server code will fix that
what changes are you making to the rest server out of interest?
We have an application that was developed using traditional chaincode way. I am trying to migrate it to use composer. I cannot change the UI code. So, I am using composer rest server to modify the incoming calls from UI and convert it to use the composer rest API. Does that make sense?
gotcha, that makes sense :) you're doing a bit of integration from existing app APIs to composer APIs
yes. thanks for all the help.
np
[ ](https://chat.hyperledger.org/channel/composer?msg=A892xuvKhPt6X9dTd) Last call for agenda items, the meeting is tomorrow at 4pm UTC (5pm UK, 12pm ET, 9am PT).
The current agenda is:
@EdMoffatt to discuss the "getting started" story: https://github.com/hyperledger/composer/issues/912.
@14gracel to demonstrate progress with events: https://github.com/hyperledger/composer/issues/66.
@dselman to discuss the historian: https://github.com/hyperledger/composer/issues/55
@sstone1 to discuss REST API security: https://github.com/hyperledger/composer/issues/142
@caroline-church to discuss upcoming updates to the playground.
Details here: https://github.com/hyperledger/composer/wiki/Meeting-11th-May-2017
What is the best way to reset composer to it's default/factory settings/whatever state
Apparently the best idea is to clear the locally stored data from chrome.
Apparently the best idea is to clear the locally stored data from your web browser.
hi guys a few of our team members are running windows
and want to play w composer
are there any build instructions for windows envs?
not sure if this was asked and/or issue - but when using v0.7.1 local playground using two machines(x.x.x.133 - being playground app server, x.x.x.134 - being a web client connecting to 133), /tmp/keyValStore2 directory gets created but user(test_user3 in here)'s member.test_user3 key file can't be created nor able to connect/deploy to the fabric using composer running on 133. is this an issue?
Message Attachments
I meant test_user2, not 3
Message Attachments
[ ](https://chat.hyperledger.org/channel/composer?msg=KtsmpTXdoLHuQGPHz) @berserkr Check out some options in the issue: https://github.com/hyperledger/composer/issues/65 otherwise get them to have a play in a playground: https://composer-playground.mybluemix.net/
[ ](https://chat.hyperledger.org/channel/composer?msg=pRc7X8deCjEuhvYRG) @dselman unfortunately yes we have
I understand the hyperledger java SDK isn't fully baked yet. When it matures do you envision supporting java for implementing transaction logic within composer applications, or is composer likely to be node-only internally?
@stu2 all I can say is that no one in the community has stepped up to add Java support, and it is not in the current plan.
@sstone1 @davidkel Please find the connection profile details: {
"type": "hlfv1",
"orderers": [
"grpcs://ldn1-zbc3a.2.secure.blockchain.ibm.com:12005"
],
"ca": "https://ldn1-zbc3a.2.secure.blockchain.ibm.com:12010",
"peers": [
{
"requestURL": "grpcs://ldn1-zbc3a.2.secure.blockchain.ibm.com:12021",
"eventURL": "grpcs://ldn1-zbc3a.2.secure.blockchain.ibm.com:12020"
},
{
"requestURL": "grpcs://ldn1-zbc3c.2.secure.blockchain.ibm.com:12021",
"eventURL": "grpcs://ldn1-zbc3c.2.secure.blockchain.ibm.com:12020"
}
],
"keyValStore": "/home/ubuntu/.hfc-key-store",
"channel": "AcnChannel",
"mspID": "OrdererMSP",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}
@vivekraut For TLS support you should provide coonection profile in the following format {
type: 'hlfv1',
orderers: [
{
url: 'grpcs://localhost:7050',
cert: '
@vivekraut For TLS support you should provide connection profile in the following format {
type: 'hlfv1',
orderers: [
{
url: 'grpcs://localhost:7050',
cert: '
@davidkel While issuing undeploy command i am getting the following error Error: Error: Unsupported function "undeploy" with arguments "["callandcheck"]" I ran composer network undeploy -n callandcheck -i admin -s adminpw
Is this command supported in composer v0.7.1
[ ](https://chat.hyperledger.org/channel/composer?msg=PFg5ZLETR4CMmZ9Sw) i can see that it worked for her
What composer and fabric version?
@dselman Composer version is 0.7.1 and fabric x86_64-1.0.0-alpha
@dselman just checked, for the unstable version of composer undeploy command is working
As the undeploy command will only make the business etwork unavailable , any idea how can i cleanup my bluemix blockchain beta instance. Uninstalling existing networks and removing chaincode containers
@vinitesh Don't know if bluemix would have a solution for this sorry. I do know HLF doesn't have anything at the moment which is why all composer can do is make the business network unavailable.
basically tear down the docker containers and restart
@dselman ya if running in local i can kill the docker containers and rebuild but bluemix blockchain beta doesn't have this option
How can I start with a blank network on the Web playground?
@zArchitectBill Can you access this chan now?
Has joined the channel.
there we go!
so here's what I just asked in the General channel: I know this is a really, really basic question, so excuse me for asking it: When I use the composer to create an "empty business network", I add a model file. When I try to change the namespace, it gives me an error `Error: The namespace cannot be changed and must be set to org.acme.model`. How can I change the namespace?? I can't edit the .bna file, as it's some sort of unique internal format that my text editor doesn't seem to understand
related to Mohamoud's question
@mohamoud.egal you can click Import, and select "Empty Business Network" from the list
@zArchitectBill erm, I'm not sure I have a good answer
So what I did was create an empty network and then I add a model file. But that added model file will not allow me to change the org
it APPEARS that I might be able to get around this by bringing in an external .cto file
yeah i think that's the only way at the moment
https://github.com/hyperledger/composer/issues/387
https://github.com/hyperledger/composer/issues/389
pretty limiting so i've bumped them to P1... hopefully someone will pick them up soon :)
@sstone1 that is indeed the problem
I'm in the process of trying to import a .cto file but I have problems that are circumstances beyond your control - my text editor is giving me fits!
not trying to edit a .cto file on a 3270 are you? ;)
HA! I'm using TextWrangler on my Macbook and for some stupid reason when I try to save a file, I get a really nondescript OS X error. I have no idea what's corrupt...I was saving .py files just yesterday. Rebooting to see if something got whacked in memory
oh dear!
@here we had a good call today, I'll be uploading the recording tomorrow morning when I'm back in the office and can take advantage of the fast network ;)
A reminder that next Thursday we will be running the first of the week (B) schedule calls at 9am UTC (10am UK, 2:30pm IST, 5pm CST) on the 18th May 2017.
It would be great to get people joining who wouldn't have been able to before due to the timing.
If you want to ask a question, raise an issue, get involved with coding or hear about a particular feature please let me know and I'll get it on the agenda :)
We'd also love to hear about your experiences of using Composer if you're prepared to - no slides or prep needed!
Details here: https://github.com/hyperledger/composer/wiki/Meeting-18th-May-2017
@here we had a good call today, I'll be uploading the recording tomorrow morning when I'm back in the office and can take advantage of the fast network ;)
A reminder that next Thursday we will be running the first of the week (B) schedule calls at 9am UTC (10am UK, 2:30pm IST, 5pm CST) on the 18th May 2017.
It would be great to get people joining who wouldn't have been able to before due to the timing.
If you want to ask a question, raise an issue, get involved with coding or hear about a particular feature please let me know and I'll get it on the agenda :)
We'd also love to hear about your experiences of using Composer if you're prepared to talk about it - no slides or prep needed!
Details here: https://github.com/hyperledger/composer/wiki/Meeting-18th-May-2017
@EdMoffatt @dselman since I'll be on a plane please could one of you run the call?
sure thing
:+1:
So I just tried to add my own .cto file off my laptop. It acted like it was going to add it, but the file never shows up in the composer
It detected the fact that there was a valid asset defined in the .cto file, so it appears to be of the proper format. But the add does nothing - the file doesn't show up in the Composer
can you paste the file here? Or DM it to me?
In https://hyperledger.github.io/composer/reference/MeetTheModules.html it says to reference other APIs, for now plz contact the devs, only apis in composer-client and composer-admin are supported. If I had chaincode which needed to call out to an AWS service using the AWS Node SDK for instance, is this one of the scenarios where we should contact the dev team? Is the plan to allow chaincode to do more sophisticated operations including using libraries and invoking external services? I'm new to node.js btw, so apologies if this is an obvious question.
@stu2 chaincode (or transaction processor functions in Composer terms) are executed in a JavaScript virtual machine written in Go, not Node.js. It is currently not possible to import Node.js modules from a transaction processor function or call out to an external service.
We are very interested in adding Node.js chaincode support to Fabric, this is work we are planning on starting.
Using composer, is it possible to write chaincode logic in another language which does custom operations like this? If it were to be written in Go for instance. I'm guessing not, it sounds like composer logic executes currently in a custom sandbox. Is this type of usage pattern (in any language) something the team envisions tackling in the near term or long term (ballpark is fine).
No, currently you can only develop JavaScript transaction processor functions.
Once we have Node.js support in Fabric, we can exploit it and allow users to take advantage of npm modules.
That's a while off (>3 months minimum) I would say though.
Thanks for the info
np
Can I ask about the scenario - are you able to provide more information on what the AWS service is being used for?
Absolutely. I'm putting together a writeup of the scenario today, I'd love to share it with the group. Nutshell, in clinical phase 1 trials there's a global challenge to identify definitively volunteers and ensure that they're not participating concurrently in multiple trials. For safety of the subject and for trial integrity. For a variety of reasons I believe this is a clear and fairly simple use case for a private blockchain leveraging some basic biometrics. I'd like to prototype it using AWS Rekognition, accepting a simple photo taken at the clinical site during registration, and doing a facial recog search. ...actually before I type in my whole writeup here why don't I stop, complete it and send it along to anyone interested tonight :-). Hyperledger seems like a strong fit, I'm not quite sure if Composer is yet at the point where it's ready yet.
Cool! You might like to mention it in #requirements-wg - they are very interested in collecting information on use cases
Thanks for the tip! will do, very happy to share, and excited that your team is so outward-facing and transparent. The whole Hyperledger project is extremely exciting
Great to have you onboard, and we're very happy to be part of Hyperledger :)
Hi -- I am trying to generate Angular2 app using `yo hyperledger-composer:angular` command. I have already started `Hyperledger Fabric 1.0` and `digitalproperty-network` is already deployed to the instance. However, the command to generate Angular2 app gets stuck. When I abort(Ctrl-C) the command, I see the following error message:
```
^CError: Deployed chain-code (0.7.1) is incompatible with client (0.7.2-20170510135245)
at queryChainCode.then (/usr/local/lib/node_modules/generator-hyperledger-composer/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:498:27)
```
AFAIK, I have `Hyperledger Composer 0.7.1` installed on my machine. So, I am not sure where the 0.7.2 build from yesterday is being picked up.
Message Attachments
@sstone1
@dselman, I'll DM to you
@mohamoud.egal you need to authenticate first
then it will show you the options fo rnetwork
@berserkr thanks
I'm trying to publish my business network onto Fabric on Bluemix.
I ran the command "composer network update --archiveFile organico-network@0.0.1.bna --enrollId admin --enrollSecret f11150e727"
Mohamouds-MacBook-Pro:organico-network mohamoudegal_ibm$ composer network update --archiveFile organico-network@0.0.1.bna --enrollId admin --enrollSecret f11150e727
Deploying business network from archive: organico-network@0.0.1.bna
Error: Archive file organico-network@0.0.1.bna does not exist.
Command failed
It failed. Do you know why?
I also ran the command "composer network deploy -a organico-network.zip -i admin" and after being prompted for my secret it failed. Is this because I need to archive it first? And am I required to put all of this in a zip folder?
@mohamoud.egal where is your .bna file?
@jinvanstee same directory that I ran the commands
@mohamoud.egal how was the .bna file created?
might have been command line, my partner did that so I'm not sure, but it deploys to the web UI just fine
I suggest you create the BNA yourself using `composer archive create -t dir -n .` and you check that you are using the right connection profile when you do the `composer network update` (using the -p argument). You will need the connection profile document from your colleague that deployed the network for that to work on v0.6.
[ ](https://chat.hyperledger.org/channel/composer?msg=PmMWRZmKs6LWqtzsR) @sanjay-saxena it looks like you have installed the unstable version of composer-cli. You can `npm uninstall -g composer-cli` and then `npm install -g composer-cli`
welcome @indira.kalagara
Has joined the channel.
Thank you.
I am trying to create a connection profile on fabric-composer. The Fabric composer running locally with docker image
fabriccomposer/composer-playground
And I have local fabric V1 (No Vagrant) network running on MacOS.
How do I create a connection profile in composer.
When I try to create connection profile it fails with
Error: PEM encoded certificate is required.
Apart from Peer / Orderer , I am not sure what are the values for keystore ,etc to be set in case of local n/w ?
Can we also configure the composer connection profile with Bluemix Blockchain V1 service ?
Please share your inputs.
Simplest way on the Mac is to run @sstone1 magic script - which makes it a 1 liner... See https://chat.hyperledger.org/channel/composer?msg=SL4CL5rrYCjGPEShM
This will start Playground and HLF v1 and define a connection profile so that Playground can connect to HLF v1.
@dselman -- I had tried uninstalling and installing `composer-cli`. However, I still the same issue with `yo hyperledger-composer:angular` command. Note that I am able to submit transactions and such. The problem seems to be with difference in the Composer versions that are in play. I have filed this ticket -- https://github.com/hyperledger/composer/issues/959.
Hi Folks, I am writing a simple application with composer/jade/nodejs, and am totally lost. I am getting a validationexception due to an incomplete mapping
ValidationException: Model violation in instance org.acme.model.PointType#100468016962764 class org.acme.model.Issuer has value Resource {
id=org.acme.model.Issuer#1000} expected a Relationship.
when I create a PointType, I essentially need to get the Issuer of the PointType, think of this as a currency/token
my cto file has: `asset PointType identified by id {
o String id
o String name
--> Issuer issuer
}`
So basically, I am trying to get the Issuer reference, but when I get it, and try to create the PointType with said reference, I am getting an exception
@berserkr how are you creating the said reference?
on my networkconnector.jso
js
``` createPointType(id, name, exchangeRate, issuer){
const METHOD = 'createPointType';
LOG.info(METHOD, 'Creating Point Type');
let pointType;
let p = new Promise( (resolve,reject)=>{
this._init().then(()=>{
let factory = this.businessNetworkDefinition.getFactory();
pointType = factory.newInstance('org.acme.model', 'LoyaltyPointType', id);
pointType.name = name;
pointType.exchangeRate = parseFloat(exchangeRate);
pointType.issuer = issuer;
return this.bizNetworkConnection.getAssetRegistry(''org.acme.model.PointType')
})
.then((registry) => {
return registry.add(pointType);
})
.then(()=>{
resolve(true);
})
.catch((error)=>{
console.log(error);
reject(error);
});
});
return p;
}```
ignore the '' in the registry
you must use the factory to create new relationships (they are special objects)
the issuer is the relationship I am unable to create
I have the issuerId
`pointType.issuer = factory.newRelationship('org.acme.model', 'Issuer', theIdOfTheIssuer)`
mmm
let me try
been banging my head agains the wall for the past two hours
now it is complaining about the model not being registered with the modelmanager: ModelFile for namespace org.acme.model.PointType has not been registered with the ModelManager
want to paste in the new code?
pointType.issuer = factory.newRelationship('org.acme.model.PointType', 'Issuer', issuerId);
at this point I pased the issuerId from the js at the top
no longer an object
as per my example above, you don't need the PointType in the first argument
its newRelationship(namespace, type, id)
ahhh, copy/paste failure :)
let me try then
thank you
awesome :) much appreciated @sstone1
np :)
@indira.kalagara how have you setup your local v1 fabric, for example have you defined it to use TLS ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZjeHnWCNNmh3AcB4r) @sanjay-saxena try running `npm uninstall -g generator-fabric-composer` followed by `npm install -g generator-fabric-composer` Please use the Fabric Composer generator until we cut the 0.7.2 release (later today).
[ ](https://chat.hyperledger.org/channel/composer?msg=KJAYE2cYCag9yuiZM) @davidkel I just ran the ./network_setup.sh from e2e_cli example. I could deploy /invoke /query chaincode on the network. and the $CORE_PEER_TLS_ENABLED was set to true by default
Can someone help me marble example for composer based on hlfv1.
Can someone help me marble example for composer based on hlfv1?
@indira.kalagara I assume you are using docker images created from the fabric source rather than pulling down the alpha images from docker ?
yeah...thats right
not alphas images
@indira.kalagara Sorry composer doesn't work with anything beyond the alpha images due to breaking api changes made since the alpha release. When alpha2 is released by fabric then we will move to supporting that drop
oh..Okie...we want to port it finally to Blockchain on blumeix...and hence I have pulled the latest images
does composer-cli works with latest images ?
@indira.kalagara sorry no. non of composer will work with the latest images
@indira.kalagara sorry no. none of composer will work with the latest images
oh..ok
@indira.kalagara Do you need to use the latest bleeding edge images right now ?
Can someone help me marble example for composer based on hlfv1?
[ ](https://chat.hyperledger.org/channel/composer?msg=SGP4bTfEk8pzdXYPu) @davidkel I was using alpha images earlier...since I was facing issues with filemode , I thought to try latest build
@indira.kalagara could you provide more details of the problem ?
on the filemode issue ?
[ ](https://chat.hyperledger.org/channel/composer?msg=KMMFtTbJzKrDoejfT) @SahilKapoor please be more specific
@indira.kalagara yes please as I am interested
[ ](https://chat.hyperledger.org/channel/composer?msg=45r89BkAJRHwohtGW) @davidkel I have posted in fabric channel https://chat.hyperledger.org/channel/fabric?msg=usWALzWGxjturJDgv
[ ](https://chat.hyperledger.org/channel/composer?msg=ntQpnJxo8HTMYpjKh) @dselman Like the ocl file , transaction js .. Just a sample to run through .
@indira.kalagara have you had a problem trying composer through our getting started for example ? we've had no problems with using MacOS
@SahilKapoor have you seen this tutorial? https://hyperledger.github.io/composer/tutorials/defining-a-business-network.html
It walks through the car auction network, which is a much better sample then the marbles sample.
Alternatively, you can use "Import" in the playground to import the marbles sample.
@sstone1 I dint see this page last time I checked the documentation .. Thanks...
[ ](https://chat.hyperledger.org/channel/composer?msg=tbBmeavSAThZXv3D2) @davidkel I haven't tried deploying via composer to local network. Because of the above mentioned issue, I jumped to latest images :(
Hello, If I try and specify a path to a keystore directory other than .hfc-key-store I hit the following problem, reported as follows
```
Error: Private key missing from key store . In the default .hf-key-store pub file is getting created where as the the priv file is created in the new keystore. I saw a issue around this in jira https://jira.hyperledger.org/browse/FAB-2940 but not sure whether its link to composer or not
Hello, If I try and specify a path to a keystore directory other than .hfc-key-store I hit the following problem, reported as follows
```
Error: Private key missing from key store . In the default .hf-key-store pub file is getting created where as the the priv file is created in the new keystore.
Hello, If I try and specify a path to a keystore directory other than .hfc-key-store I hit the following problem, reported as follows
```
Error: Private key missing from key store .
I saw a issue around this in jira https://jira.hyperledger.org/browse/FAB-2940 but not sure whether its link to composer or not
In the default .hf-key-store pub file is getting created where as the the priv file is created in the new keystore.I saw a issue around this in jira https://jira.hyperledger.org/browse/FAB-2940 but not sure whether its link to composer or not
@vinitesh due to issues with the alpha version of the fabric sdk node, you can't specify any other keystore directory than .hfc-key-store in your home directory
@indira.kalagara I suggest trying out our getting started for hlf1 which uses the alpha images. We have had no problems running this on MacOS
@here we've released Hyperledger Composer v0.7.2, read all about it on GitHub: https://github.com/hyperledger/composer/releases/tag/v0.7.2 🎉
@davidkel any workaround for this as i need to deploy my node sdk client to bluemix and there i need to specify a different path to keystore
@vinitesh bluemix apps still have a concept of a home directory so it should be possible to specify the directory .hfc-key-store in that home directory
@vinitesh you can also specify the connection profile in an environment variable COMPOSER_CONFIG.
connectionProfile is ok
There is also the wallet api mentioned previously in this chat
[ ](https://chat.hyperledger.org/channel/composer?msg=dj4NqtJ2W2emAz8QX)
and Simon's example
https://github.com/sstone1/sample-bluemix-composer-app
but when i give the give keystore value as /home/vcap/.hfc-key-store its still gives the same problem
[ ](https://chat.hyperledger.org/channel/composer?msg=duTJqm98sGYjQJM8T) @davidkel this is interesting , i will give it a try
@vinitesh thinking about it, you don't want to be using the file system for storing this information anyway. If your app crashes or goes down the file system will be wiped
@davidkel ya that make sense but just for demo purpose , is /home/vcap/.hfc-ket-store correct path for keystore on bluemix app
@davidkel ya that make sense, but just for demo purpose , is /home/vcap/.hfc-ket-store correct path for keystore on bluemix app
@davidkel ya that make sense, but just for demo purpose , is /home/vcap/.hfc-key-store correct path for keystore on bluemix app
@vinitesh sorry I don't know. The fabric client uses the following code to determine the default
```
os = require('os')
path.join(os.homedir(), '.hfc-key-store');
```
so it will be whatever that call returns will be the one you need to use
thanks @davidkel i will run this code snippet in my app and check the returned value
[ ](https://chat.hyperledger.org/channel/composer?msg=DYM7BmsmRqjGG223z) @SahilKapoor Composer sample networks are here: https://github.com/hyperledger/composer-sample-networks/tree/master/packages including Marbles. You can import them straight into the Playground by going to http://composer-playground.mybluemix.net
@SahilKapoor I just tried to import the Marbles sample into Playground and it doesn't work. :-(
See: https://github.com/hyperledger/composer/issues/964
@dselman Thanks man.. One more question, do we need to upgrade composer to 0.7.2 make it run
I ll try it over the weekend.
No, you can stay on 0.7.1 if you wish... but upgrade is painless so I'd recommend moving up to 0.7.2
But, we have MUCH more interesting samples that Marbles!
But, we have MUCH more interesting samples than Marbles!
:-)
Will try them..
Is there an issue with importing samples on the latest playground? The only sample that imports is "Empty Business Network". Others just spin in wait.
Well, I sh say I'm on 0.7.1
I'm trying the new composer playground. I put in bluemix peer details in my new connection profile, add identity - admin id and passwod from bluemix and click on 'connect', it keeps spinning...
anyone else seeing this?
If I have a Hyperledger Composer ACL rule for the UPDATE operation, does that imply READ access as well, or would I need to code a separate rule to cover READ?
Is process for updating composer playground to re-run docker pull, i.e., "docker pull hyperledger/fabric-baseimage:x86_64-0.1.0"?
@guyho there was an issue with some of the samples... https://github.com/hyperledger/composer/issues/964
...but that's 0.7.2 and should only be for three of the samples (the ones with no permissions.acl file)
@silliman You would need a separate READ operation
Is there an example how to read the history of an asset that has experienced changes through transactions?
@jje I believe this is covered by this - https://github.com/hyperledger/composer/issues/55
Still not sure how to actually go and read the history.
what is the right approach to updating composer playground, locally?
@jje The 'historian' hopes to be able to do this (once it's created). At the moment it's not possible to see the history of an asset after a transaction has interacted with it
@davidkel @sstone1 @dselman Is there a plan to provide additional functionality for undeploy command in the future release like uninstalling the network and removing the chaincode containers?
@vinitesh yes, when Fabric provides support for doing that
@sstone1 any story around that?
@vinitesh The requirement is down to hyperledger fabric to provide the capability and then once they do we can exploit it. It should be something they are aware of and should know to provide but I have no idea when they might or where it might be tracked.
@lukegd12 sorry, there's a bug at the moment
Has joined the channel.
@sstone1 Nevermind! :D
@here I've published the #Hyperledger #Composer weekly meeting recording, watch to find out what we're up to: https://youtu.be/igi1zuCg1lQ
@here I've published the Hyperledger Composer weekly meeting recording, watch to find out what we're up to: https://youtu.be/igi1zuCg1lQ
@here Hi to all!
This is my problem:
Instance org.acme.sample.RequestLoan#5952fb21-b024-410e-9512-9a67bdbe10df missing required field mortgage
But in the payload:
{
“$class”: “org.acme.sample.RequestLoan”,
“mortgage”: {
“$class”: “org.acme.sample.Mortgage”,
“assetId”: “1771”,
“buyerId”: “30081173”,
“lenderId”: “30-5000173-5”,
“amountRequested”: “100000”,
“status”: “REQUESTED”
},
“mortgageId”: “5”
}
The object is setted. I can see it in the console.
Can you show the model please?
Sure
concept Mortgage {
o String assetId
o String buyerId
o String lenderId
o String valuerId optional
o String amountRequested
o String amountApproved optional
o String amoungValued optional
o MortgageStatus status
}
asset MortgageAsset identified by mortgageId {
o String mortgageId
o Mortgage mortgage
}
transaction RequestLoan identified by transactionId {
o String transactionId
o Mortgage mortgage
o String mortgageId
}
This is when you try to submit the transaction?
Exactly
can you attach (zip first) or DM me your BNA please?
sure
Message Attachments
Message Attachments
I was able to import your BNA into Playground http://composer-playground.mybluemix.net and then submit an instance of RequestLoan. It seemed to work fine.
Something else must be going on. Can you show the code that is creating and submitting the transaction?
Can you share with me your payload?
Because i does't work for me
doesn't *
I suspect you are not using factory.newConcept to create the Mortgage instance...
Oh
In the script?
```
"$class": "org.acme.sample.RequestLoan",
"transactionId": "26bfc607-3463-4da9-bff4-25ac7cdd4a09",
"mortgage": {
"$class": "org.acme.sample.Mortgage",
"assetId": "vegetable collect whispered dawn object",
"buyerId": "cup mathematics spell",
"lenderId": "cry cage plates fly along",
"valuerId": "enter during class",
"amountRequested": "up safety printed changing",
"amountApproved": "stiff smoke happened area",
"amoungValued": "brief worry lay sky lion",
"status": "REJECTED"
},
"mortgageId": "chief",
"timestamp": "2017-05-12T15:54:53.161Z"
}
```
How are you submitting the transaction?
{
“$class”: “org.acme.sample.RequestLoan”,
“mortgage”: {
“$class”: “org.acme.sample.Mortgage”,
“assetId”: “1771”,
“buyerId”: “30081173”,
“lenderId”: “30-5000173-5”,
“amountRequested”: “100000”,
“status”: “REQUESTED”
},
“mortgageId”: “5”
}
I mean the code
Or CLI / REST
sec
function onRequestLoan(requestLoan) {
return getAssetRegistry('org.acme.sample.MortgageAsset')
.then(function (assetRegistry) {
var factory = getFactory();
var Loan = factory.newResource('org.acme.sample','MortgageAsset', requestLoan.mortgageId);
Loan.mortgage = requestLoan.mortgage;
console.log(requestLoan.mortgage);
console.log(Loan.mortgage);
return assetRegistry.add(Loan);
});
}
This worked for me in Playground using the web runtime. Are you using Fabric v1 or something else?
How did you create and submit the `requestLoan` ?
I'm using the web runtime
@dselman Now is working! thank you!
Where are the individual model and .js files found when running composer-playground on the Mac?
You can import/replace samples into Playground, edit them (they are saved in browser local storage) and then export them to an BNA file (archive).
So I've been using a local copy of the Composer on Ubuntu 16.4, running in a Docker container. About an hour ago, my Composer UI changed - it no longer has a Connection icon in the upper right (the little globe), and now has a "Get local version" link. WHY?
I deleted the composer Docker image and restarted and forced the Composer container to re-download. And it's still broken. And it's telling me my credentials are wrong. Things are totally hosed now. How can I reset it?
I thought the local copy of the Composer would always have the Connection icon so I could connect to a remote fabric
I had it working last night and this morning so it would connect to Bluemix
but it just seemed to change itself
I was connected to localhost:8080, so it wasn't (as far as I know) hitting the web version (which I know doesn't have connection feature)
it sure would be nice to be able to delete an identity. All I can see is the ability to add one...
@dselman -- With 0.7.2, the generator issue is resolved. It would be good if the entire toolset is dependent on the same component versions to avoid this issue in the future. Or, if the backward compatibility of the chaincode across patches(the third digit in the version# -- major.minor.patch-build, 0.7.X) can be guaranteed.
Glad to hear you're up and running. The entire toolset (well, everything under the `composer` repo) uses the same version number and advances in lock-step. So somehow you'd installed a mix of versions -- had you been playing with unstable releases? The unstable releases are published (and tagged as unstable) on every commit that passes our CI/CD pipeline, but you need to specific ask npm to install them using the `@unstable` tag.
Nope. I was just doing regular `npm install -g
Very odd. Did you use the magic install script from @sstone1 ?
Nope. I am so new to `npm` that I did not know that one can be at the bleeding edge using `@unstable`.
Ok, mystery how that got installed. Should not happen...
Thanks for your help! Much appreciated!
np
Happy Composing
!
Have a co-worker who is trying to deploy business network on Fabric v1 and getting the following error, ```Error: {"created":"@1494605785.158824212","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1494605785.158791834","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1494605785.158812664","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed``` ...tried removing containers, wallet, etc.. gets same error every time...running at 0.7.2 of composer...thoughts?
Have a co-worker who is trying to deploy business network on Fabric v1 and getting the following error, ```Error: {"created":"@1494605785.158824212","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1494605785.158791834","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1494605785.158812664","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed``` ...tried removing containers, wallet, etc.. gets same error every time...running at 0.7.2 of composer...thoughts?
Have a co-worker who is trying to deploy business network on Fabric v1 and getting the following error, Error: {"created":"@1494605785.158824212","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1494605785.158791834","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1494605785.158812664","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed ...tried removing containers, wallet, etc.. gets same error every time...running at 0.7.2 of composer...thoughts?
I tried the same steps and it works fine ...he is at the same level of Ubuntu
did you check the ports in his connection profile?
Most likely explanation is that connection profile is wrong.
ah okay let me look
I bet he is isn't specifying a profile so it is using defaultProfile so its trying to use a v0.6 against a running v1 system
ah crapper...yes that is it
thanks David
@jdockter is that a technical term ? :-)
HA...trying to keep it PG rated :)
I used to work for a gut in IBM that would use the term "hamsters" for things going wrong. Actually made it into the company technical dictionary for a while too :grinning:
I used to work for a guy in IBM that would use the term "hamsters" for things going wrong. Actually made it into the company technical dictionary for a while too :grinning:
Tutorial 2 is now here (draft): https://github.com/hyperledger/composer/wiki/Tutorial-2
ddolddol9
Re-logged in... I assume that means RocketChat has been upgraded?
Yep, just got a message about it, hopefully everyone can see the channel now!
Hey guys, I recently started to have issues deploying the .bna file for our business network. Sometimes a .bna file that has deployed before stop from working and I can no longer deploy it. The way we deploy our network is by undeploying the previous network and redeploying it again. Sometimes I can get a .bna file to deploy then the same file deployment fails. I made sure it is not that we are timing out (I increased the deployment timeout setting in the profile). Do you guys know what log files should I look into in order to find out why deployments are failing? I am using Fabric v0.6 in Bluemix. There are several log files that I can access from Bluemix, one being the peer log, the CA log and the actual chaincode logs.
Trying to invoke composer-rest server thru CLI.. composer-rest-server -p hlfv1 -n digitalproperty-network -i admin -s adminpw -N always
Discovering types from business network definition ...
events.js:160
throw er; // Unhandled 'error' event
^
Error: Connect Failed
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._readsDone (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/c
Tried npm uninstall -g composer-rest-server` followed by `npm install -g composer-rest-server` but that did not resolve this error
Hi,
I am facing an issue when trying to run composer which internally tries to bring up fabric
sahil@ubuntu-1gb-composer:~/composer-sample-applications-hlfv1/packages/getting-started$ sudo npm install
npm WARN lifecycle getting-started@1.0.0~preinstall: cannot run in wd %s %s (wd=%s) getting-started@1.0.0 composer --version || { echo 'Please first run npm install -g composer-cli' ; exit 1;} /home/sahil/composer-sample-applications-hlfv1/packages/getting-started
npm WARN lifecycle getting-started@1.0.0~postinstall: cannot run in wd %s %s (wd=%s) getting-started@1.0.0 scripts/download-hyperledger.sh && scripts/createProfile.sh && npm run startHLF && npm run deployNetwork /home/sahil/composer-sample-applications-hlfv1/packages/getting-started
When I run above command as sudo user
*When I run above command as sudo user *
When I run without sudo it throws
*When I run without sudo it throws *
sahil@ubuntu-1gb-composer:~/composer-sample-applications-hlfv1/packages/getting-started$ sudo npm install
npm WARN lifecycle getting-started@1.0.0~preinstall: cannot run in wd %s %s (wd=%s) getting-started@1.0.0 composer --version || { echo 'Please first run npm install -g composer-cli' ; exit 1;} /home/sahil/composer-sample-applications-hlfv1/packages/getting-started
npm WARN lifecycle getting-started@1.0.0~postinstall: cannot run in wd %s %s (wd=%s) getting-started@1.0.0 scripts/download-hyperledger.sh && scripts/createProfile.sh && npm run startHLF && npm run deployNetwork /home/sahil/composer-sample-applications-hlfv1/packages/getting-started
When I use sudo npm install --unsafe-perm
*When I use sudo npm install --unsafe-perm*
node create-channel.js
module.js:471
throw err;
^
Error: Cannot find module '/home/sahil/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/grpc_node.node'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.
[ ](https://chat.hyperledger.org/channel/composer?msg=knN5RGfyJCqMnBkkQ) [ ](https://chat.hyperledger.org/channel/composer?msg=vZp8EBJQAMuRnMsfi)
i have tried above scenario multiple times
What version of npm are you using?
sahil@ubuntu-1gb-composer:~/composer-sample-applications-hlfv1/packages/getting-started$ npm -v
3.10.10
you should not run it with `sudo`. Did you run `npm install -g composer-cli` first, as indicated by the error?
ya
did that install cleanly?
or did you have errors?
[ ](https://chat.hyperledger.org/channel/composer?msg=rWE2b6TMTTNJqPCQc) @jorgedr if a deploy is failing, look in the peer logs. If an update is failing look in the chaincode logs.
@dselman I installed composer using sudo
If I install it without sudo
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.1: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! Linux 4.4.0-77-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "-g" "composer-cli"
npm ERR! node v6.10.3
npm ERR! npm v3.10.10
npm ERR! path /usr/lib/node_modules/composer-cli/node_modules/asn1
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/usr/lib/node_modules/composer-cli/node_modules/asn1'
npm ERR! at Error (native)
npm ERR! { Error: EACCES: permission denied, access '/usr/lib/node_modules/composer-cli/node_modules/asn1'
npm ERR! at Error (native)
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/usr/lib/node_modules/composer-cli/node_modules/asn1' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
you should not install npm modules using sudo.
ok
You need to figure out why your system is configured such that you do not have access to `Error: EACCES: permission denied, access '/usr/lib/node_modules/composer-cli/node_modules/asn1'`
ok
thanks
what linux are you on?
ubuntu 16.04
I created this user myself .. let me fix the above mentioned issue
I had root access
[ ](https://chat.hyperledger.org/channel/composer?msg=5ox6GpMbjkyCu5tGj) @ASMP seems like a connectivity issue, which could be a problem in your connection profile. Did you create the profile yourself? How did you start Fabric?
@dselman composer got installed cleanly without using sudo
now when i run npm install
node create-channel.js
module.js:471
throw err;
^
Error: Cannot find module '/home/sahil/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/grpc_node.node'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.
can you run `composer --version` please?
I destroyed the box.. Will start again and I will use prereqs-ubuntu.sh to do installation
I earlier manually installed everything
ok, keep us posted
one more question , The recommended minimum versions are: Docker: v1.12.3 Docker-compose: v1.10.0 npm: v4.6.0 node.js: v6.9.5
But when we install node , npm version we get is 3.10
so it necessary to update it to npm 4.6
and what should ideally be composer -v
yes, just an `npm update -g npm`
but run the pre-req script
ok
we test that now as part of the system tests, in an empty VM
Yes. Will keep you posted. Thanks for the help.
Will create new VM and try it.
Thanks
@dselman - Fabric v1.0 was started by executing network_setup.sh and all containers are up and running. When i tried to inovke composer-rest-server using digital property network, it failed to load connection profile hlfv1
composer-rest-server -p hlfv1 -n digitalproperty-network -i admin -s adminpw -N always
Discovering types from business network definition ...
Connection fails: Error: Failed to load connection profile hlfv1. Error was Error: ENOENT: no such file or directory, open '/Users/Ashis/.composer-connection-profiles/hlfv1/connection.json'
It will be retried for the next request.
Error: Failed to load connection profile hlfv1. Error was Error: ENOENT: no such file or directory, open '/Users/Ashis/.composer-connection-profiles/hlfv1/connection.json'
at fs.readFile.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/fsconnectionprofilestore.js:87:23)
Profile was created using createProfile.sh
if you start the Fabric using the getting-start-v1 repo (as described here https://hyperledger.github.io/composer/installing/quickstart.html) then the script will also create your connection profile
it should look like this...
```
Daniels-MBP-2:composer-runtime-hlfv1 dselman$ cat ~/.composer-connection-profiles/hlfv1/connection.json
{
"type": "hlfv1",
"orderers": [
"grpc://localhost:7050"
],
"ca": "http://localhost:7054",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
},
{
"requestURL": "grpc://localhost:7056",
"eventURL": "grpc://localhost:7058"
}
],
"keyValStore": "/Users/dselman/.hfc-key-store",
"channel": "mychannel",
"mspID": "Org1MSP",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}
```
ok. Let me try that out. Thanks for the help
I noticed that when i do a npm test, following error was reported. error: [Composer-GettingStarted] Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
> getting-started@1.0.0 bootstrapAssets /Users/Ashis/hyperledger/composer-sample-applications-hlfv1/packages/getting-started
> node cli.js landregistry bootstrap
info: [Composer-GettingStarted] Hyperledger Composer: Getting Started application
info: [Composer-GettingStarted] Adding default land titles to the asset registry
Uncaught Exception: Error: Connect Failed
at ClientDuplexStream._emitStatusIfDone (/Users/Ashis/hyperledger/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._readsDone (/Users/Ashis/hyperledger/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:169:8)
at readCallback (/Users/Ashis/hyperledger/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:229:12)
Uncaught Exception: Error: Connect Failed
at ClientDuplexStream._emitStatusIfDone (/Users/Ashis/hyperledger/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._readsDone (/Users/Ashis/hyperledger/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:169:8)
at readCallback (/Users/Ashis/hyperledger/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:229:12)
error: [Composer-Get
@ASMP when you say you started fabric using network_setup.sh does that mean you are using the e2e_cli command from the fabric repo and If so I assume you aren't using the 1.0.0-alpha images ? Composer can only interact with 1.0.0-alpha fabric
@ASMP when you say you started fabric using network_setup.sh does that mean you are using the e2e_cli command from the fabric repo and If so I assume you aren't using the 1.0.0-alpha images ? Composer can only interact with 1.0.0-alpha fabric, so would suggest following @dselman advice of going via the quickstart
@dselman I built a new machine.. Ran pre requisite script. compser cli also got installed cleanly. Still I am facing this issue
node create-channel.js
module.js:471
throw err;
^
Error: Cannot find module '/home/sahil/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/grpc_node.node'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.
npm: '4.5.0',
composer-cli v0.7.2
composer-admin v0.7.2
composer-client v0.7.2
composer-common v0.7.2
composer-runtime-hlf v0.7.2
you `git cloned` the composer-sample-applications-hlfv1 repo
ya
then did a `cd /packages/getting-started`
as per the documents
then typed `npm install`
yes
yup
I think issue is related to creating of a channel , as all peers ca ordering service are created
strange that it can't find grpc though
@davidkel any idea?
it suggests that the native module build failed to work
yes, but I would have thought that would have failed composer-cli as well?
e.g. no g++/gcc/python etc
*Logs*
0 info it worked if it ends with ok
1 verbose cli [ '/home/sahil/.nvm/versions/node/v6.10.3/bin/node',
1 verbose cli '/home/sahil/.nvm/versions/node/v6.10.3/bin/npm',
1 verbose cli 'run',
1 verbose cli 'startHLF' ]
2 info using npm@4.5.0
3 info using node@v6.10.3
4 verbose run-script [ 'prestartHLF', 'startHLF', 'poststartHLF' ]
5 info lifecycle getting-started@1.0.0~prestartHLF: getting-started@1.0.0
6 silly lifecycle getting-started@1.0.0~prestartHLF: no script for prestartHLF, continuing
7 info lifecycle getting-started@1.0.0~startHLF: getting-started@1.0.0
8 verbose lifecycle getting-started@1.0.0~startHLF: unsafe-perm in lifecycle true
9 verbose lifecycle getting-started@1.0.0~startHLF: PATH: /home/sahil/.nvm/versions/node/v6.10.3/lib/node_modules/npm/bin/node-gyp-bin:/home/sahil/composer-sample-applications-hlfv1/packages/getting-started/node_modules/.bin:/home/sahil/.nvm/versions/node/v6.10.3/lib/node_modules/npm/bin/node-gyp-bin:/home/sahil/composer-sample-applications-hlfv1/packages/getting-started/node_modules/.bin:/home/sahil/bin:/home/sahil/.local/bin:/home/sahil/.nvm/versions/node/v6.10.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
10 verbose lifecycle getting-started@1.0.0~startHLF: CWD: /home/sahil/composer-sample-applications-hlfv1/packages/getting-started
11 silly lifecycle getting-started@1.0.0~startHLF: Args: [ '-c', 'scripts/start-hyperledger.sh' ]
12 silly lifecycle getting-started@1.0.0~startHLF: Returned: code: 1 signal: null
13 info lifecycle getting-started@1.0.0~startHLF: Failed to exec startHLF script
14 verbose stack Error: getting-started@1.0.0 startHLF: `scripts/start-hyperledger.sh`
14 verbose stack Exit status 1
14 verbose stack at EventEmitter.
@sstone1 didn't grpc have issues with `Node v6.10.3`?
i don't recall that, dave k might know
@SahilKapoor can you run `npm install grpc`
Sure..
and check that it works without any errors
The pre-req script has this...
```
# Install node
echo "# Installing nodeJS"
nvm install --lts
# Configure nvm to use version 6.9.5
nvm use --lts
nvm alias default 'lts/*'
```
[ ](https://chat.hyperledger.org/channel/composer?msg=47g5CJG3fPFJjeEri) @sstone1 It runs without errors
now trying npm install
Still the same error
Is it because of 7.2 tag
couple of weeks back i was able to run composer
```
Daniels-MBP-2:composer-cli dselman$ cat ~/.nvm/alias/lts/argon
v4.8.2
Daniels-MBP-2:composer-cli dselman$ cat ~/.nvm/alias/lts/boron
v6.10.2
```
```
Daniels-MBP-2:composer-cli dselman$ node --version
v6.9.5
```
ok, let's try: `cd /Users/Ashis/hyperledger/composer-sample-applications-hlfv1/packages/getting-started && git clean -xdf && npm installl`
ok, let's try: `cd /Users/Ashis/hyperledger/composer-sample-applications-hlfv1/packages/getting-started && git clean -xdf && npm install`
Removing node_modules/
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
> getting-started@1.0.0 preinstall /home/sahil/composer-sample-applications-hlfv1/packages/getting-started
> composer --version || { echo 'Please first run npm install -g composer-cli' ; exit 1;}
composer-cli v0.7.2
composer-admin v0.7.2
composer-client v0.7.2
composer-common v0.7.2
composer-runtime-hlf v0.7.2
npm WARN prefer global marked@0.3.6 should be installed with -g
> hashtable@2.0.2 install /home/sahil/composer-sample-applications-hlfv1/packages/getting-started/node_modules/hashtable
> node-gyp configure build
So the execution stops here
But now if I run npm install again , it run
what do you mean by stops here? does it throw an error? does it just exit?
does it hang?
that is the cause of the problem
It just exits
`python -v`
`gcc -v`
`g++ -v`
please run those
sahil@ubuntu-1gb-composer:~$ python -V
The program 'python' can be found in the following packages:
* python-minimal
* python3
Try: sudo apt install
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)
gcc g++ have the same version
node-gyp requires python v2.x, and node-gyp builds native modules
I thought python would be installed as a pre requisite
it should have been installed by the prereqs script
infact i'm surprised python is not installed by default on ubuntu
`sudo apt-get install python` i guess!
then make sure you can run `python -v` and it outputs `2.7.*`
then `git clean -xdf` again and then run `npm install`
It again stopped
sahil@ubuntu-1gb-composer:~/composer-sample-applications-hlfv1/packages/getting-started$ git clean -xdf
Removing composer
Removing getting-started@1.0.0
Removing node_modules/
sahil@ubuntu-1gb-composer:~/composer-sample-applications-hlfv1/packages/getting-started$ npm install
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
> getting-started@1.0.0 preinstall /home/sahil/composer-sample-applications-hlfv1/packages/getting-started
> composer --version || { echo 'Please first run npm install -g composer-cli' ; exit 1;}
composer-cli v0.7.2
composer-admin v0.7.2
composer-client v0.7.2
composer-common v0.7.2
composer-runtime-hlf v0.7.2
npm WARN prefer global marked@0.3.6 should be installed with -g
> hashtable@2.0.2 install /home/sahil/composer-sample-applications-hlfv1/packages/getting-started/node_modules/hashtable
> node-gyp configure build
python version is 2.7
does the 1gb refer to the amount of RAM that this VM has?
node-gyp requires python v2.x, and node-gyp builds native modules, what is node-gyp native module?
yes
that's not a lot, considering you need to build native modules and run multiple docker images... can you raise it to 2GB?
top - 11:59:38 up 2:58, 1 user, load average: 0.08, 0.23, 0.22
Tasks: 118 total, 1 running, 116 sleeping, 1 stopped, 0 zombie
%Cpu(s): 1.0 us, 1.0 sy, 0.0 ni, 98.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1016180 total, 627788 free, 143236 used, 245156 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 695272 avail Mem
ok
will take couple of minutes
upgraded
let me try gain
ok, make sure you `git clean -xdf` before rerunning `npm install`
yes, already did that
this time it is moving forward
Some success :grinning:
Written Business Network Definition Archive file to digitalPropertyNetwork.bna
Command completed successfully.
Command succeeded
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.7
Description: Digital Property Network
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
Command failed
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! getting-started@1.0.0 deployNetwork: `composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile digitalPropertyNetwork.bna -p hlfv1 -i admin -s adminpw && composer network list -n digitalproperty-network -p hlfv1 -i admin -s adminpw`
npm ERR! Exit status 1
ah - i suspect that you need to reinstall the `composer-cli` as well
it probably had the same problem
`npm uninstall -g composer-cli`
`npm install -g composer-cli`
As the whole process is taking some time
Is it possible for me to add 2 gb criteria and to check if python is installed on the documents
Or if some one else can add then also it is fine
*npm test* succeeded
@sstone1 and @dselman thanks for all the help
@SahilKapoor great, yes we accept PRs on the `hyperledger/composer` repo - here's the link to the prereqs page in the docs:
https://github.com/hyperledger/composer/blob/master/packages/composer-website/jekylldocs/installing/prerequisites.md
Has joined the channel.
Hey - yet another noob here - I understand that the loopback is used for rest server and that it reads the model and generates the APIs for the explorer. Can I change what fields that are made available in APIs via some notation in model?
I.e I want more control of the generated API
Hi there, we are trying to debug a cli network deploy issue, is there an option to turn on trace or set the debug level? Thanks!
Hi there, we are trying to debug a cli network deploy issue, is there an option to turn on trace or set the debug level? Just to add a bit more context, the client side shows: Error: {"created":"@1494772721.158144000","description":"Secure read failed","file":"../src/core/lib/security/transport/secure_endpoint.c","file_line":157,"grpc_status":14,"referenced_errors":[{"created":"@1494772721.158113000","description":"OS Error","errno":54,"file":"../src/core/lib/iomgr/tcp_posix.c","file_line":229,"os_error":"Connection reset by peer","syscall":"recvmsg"}]}
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14. Server side logs show: Thanks!
Hi there, we are trying to debug a cli network deploy issue, is there an option to turn on trace or set the debug level? Just to add a bit more context, the client side shows: Error: {"created":"@1494772721.158144000","description":"Secure read failed","file":"../src/core/lib/security/transport/secure_endpoint.c","file_line":157,"grpc_status":14,"referenced_errors":[{"created":"@1494772721.158113000","description":"OS Error","errno":54,"file":"../src/core/lib/iomgr/tcp_posix.c","file_line":229,"os_error":"Connection reset by peer","syscall":"recvmsg"}]}
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14. Server side logs show: OUT - 14:40:54.562 [consensus/pbft] recvViewChange -> INFO 1235[0m Replica 0 received view-change from replica 3, v:1, h:10, |C|:1, |P|:8, |Q|:8
OUT - [33m14:40:54.563 [consensus/pbft] recvViewChange -> WARN 1236[0m Replica 0 already has a view change message for view 1 from replica 3 Thanks!
Hi there, we are trying to debug a cli network deploy issue, is there an option to turn on trace or set the debug level? Just to add a bit more context, the client side shows: Error: {"created":"@1494772721.158144000","description":"Secure read failed","file":"../src/core/lib/security/transport/secure_endpoint.c","file_line":157,"grpc_status":14,"referenced_errors":[{"created":"@1494772721.158113000","description":"OS Error","errno":54,"file":"../src/core/lib/iomgr/tcp_posix.c","file_line":229,"os_error":"Connection reset by peer","syscall":"recvmsg"}]}
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14. Server side logs show: OUT - 14:40:54.562 [consensus/pbft] recvViewChange -> INFO 1235[0m Replica 0 received view-change from replica 3, v:1, h:10, |C|:1, |P|:8, |Q|:8
OUT - [33m14:40:54.563 [consensus/pbft] recvViewChange -> WARN 1236[0m Replica 0 already has a view change message for view 1 from replica 3. The last message I see in the client side logs is: 2017-05-14T14:33:45.244Z INFO HFCUtil :deployChainCode() function init force true {"0":"concerto"}$ Thanks!
@Pasteis no, that's not possible today. please can you explain the requirement a bit more? why do you want to hide the fields?
@tennenjl does that error happen immediately or after a period of time?
@sstone1 after a period of time
@stone1, we increased the deploy timeout value in the connection profile
@sstone1 certain aspects of an asset model could be relevant for some audiences but not others (roles). Hence, I would like to have that fine grained control. Now, if not possible from model definition in composer. Do you know what part of loopback component that does the mapping from model fields to APIs?
Has joined the channel.
@tennenjl that probably means it's the event hub issue - the "Connection reset by peer" looks suspiciously like that
@Pasteis just to check what you mean by relevant - do you mean that certain audiences/roles are not permitted to see certain properties, whilst others are?
we have an unfinished piece of work for the ACL rules ( `permissions.acl` ) that allows you to secure assets at a per property level, allowing you to allow/deny access to particular fields (and that would flow through to the REST server).
one problem with removing properties from the model is that if the property is required, nobody will be able to add/update instances of that model. if you want some users of the REST server to see the properties and some not, then the ACL rules is the way forwards.
[ ](https://chat.hyperledger.org/channel/composer?msg=vQRFgYXfEz2pdfJNQ) @Jakeeyturner
Do I understand this correctly that I can't read back the history of an asset? Let's assume my asset is a container, I cannot trace back the transactions associated with this container? If this is the case, how can I implement a traceability use case with composer?
if you want to look into it from the loopback side of things, all Composer models use the `PersistedModel` base class which takes care of mapping from the model to REST APIs. i think that's all in the `loopback` module.
Has joined the channel.
Hi all, i have a general question about composer.
can composer be used to do crypto operations within the blockchain?
(i.e., can i do a javascript npm import of crypto packages into the transaction processor function) ?
also to clarify, the transaction processor function runs inside the chaincode, right?
Hi all-- A new version of the Hyperledger Composer VS Code Plugin is published on https://marketplace.visualstudio.com/items?itemName=HyperledgerComposer.composer-support-client now. This new version has added an event model validation. Please uninstall your old Fabric Composer VSCode Plugin and search for "Hyperledger Composer" to install it in Visual Studio Code.
Has joined the channel.
Doing a fresh follow-through of the Getting Started instructions...
Got to a point where I run: composer archive create --sourceType dir --sourceName .
Suggested output is:
Description:Digital Property Network
Name:digitalproperty-network
Identifier:digitalproperty-network-0.0.22
What I actually see in console is:
Description:Digital Property Network
Name:digitalproperty-network
Identifier:digitalproperty-network@0.0.8
Did the version number decrement with newer instructions?? I'd be ok to just dismiss it if I were seeing a higher version number that what's in the docs, but...
(Also, the docs should probably not then tell you to do a command that depends on that Identifier without having something like
Has joined the channel.
I'm hoping that happened as part of the move to open source
I would have made all the version numbers in `composer-sample-networks` the same
@davidkel @sstone1 Hello , is the docker image for composer-playground@0.7.2 released? or the latest tag is still on 0.7.1?
Good day, vinitesh
[ ](https://chat.hyperledger.org/channel/composer?msg=Zbi3iT4X5FRqeeJq2) @vinitesh ignore please, was looking in the wrong repo
@sstone1 Is there any way to turn on a sort of tracing server side we can do to confirm if it is the event hub issue or if there is anything we can do to circumvent the issue.
Has joined the channel.
@tennenjl you can try running the CLI with `DEBUG=* composer network deploy ...`
@sstone1 ah will give that a try thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=Guu39KHJnZwptNjTG) @chunhui at the moment you cannot import npm modules in the transaction processor function, so you're limited to base JS.
@chunhui it would be good to understand what you're trying to do incase there are some requirements we could capture for composer
@sstone1 Trace client side shows: hfc Send transaction... +1ms
hfc Confidentiality: 0 +0ms
hfc reg txid 162674d100cd5e6426bb6778afb88681ef3fe2d1c752f7e630770f3f44bd5b6c +0ms
hfc waiting 500 seconds before emitting complete event +9ms
⠦ Deploying business network definition. This may take a minute... hfc peer.sendTransaction +22ms
⠦ Deploying business network definition. This may take a minute... hfc peer.sendTransaction: received {"status":"SUCCESS","msg":{"type":"Buffer","data":[49,54,50,54,55,52,100,49,48,48,99,100,53,101,54,52,50,54,98,98,54,55,55,56,97,102,98,56,56,54,56,49,101,102,51,102,101,50,100,49,99,55,53,50,102,55,101,54,51,48,55,55,48,102,51,102,52,52,98,100,53,98,54,99]}} +6s
hfc EventDeploySubmitted event: {"uuid":"162674d100cd5e6426bb6778afb88681ef3fe2d1c752f7e630770f3f44bd5b6c","chaincodeID":"162674d100cd5e6426bb6778afb88681ef3fe2d1c752f7e630770f3f44bd5b6c"} +1ms
⠙ Deploying business network definition. This may take a minute... hfc txCallback event={"version":0,"timestamp":null,"transactions":[],"stateHash":{"type":"Buffer","data":[138,220,228,67,184,226,77,33,80,205,100,198,50,97,168,95,190,163,131,252,245,195,17,116,206,47,0,10,153,64,245,103,6,231,79,187,91,239,239,228,42,122,156,98,220,172,44,203,29,108,132,133,106,160,158,100,244,144,193,10,181,59,255,96]},"previousBlockHash":{"type":"Buffer","data":[205,169,88,3,66,101,202,127,120,44,112,120,51,40,82,141,184,239,140,7,198,182,111,207,215,78,167,201,49,17,131,113,167,149,102,188,123,196,83,157,24,13,151,10,228,90,174,95,200,196,55,232,232,133,140,132,25,65,245,201,8,131,207,142]},"consensusMetadata":{"type":"Buffer","data":[8,22]},"nonHashData":{"localLedgerCommitTimestamp":{"seconds":"1494856745","nanos":796161574},"chaincodeEvents":[{"chaincodeID":"","txID":"","eventName":"","payload":{"type":"Buffer","data":[]}}]}} +1m
⠴ Deploying business network definition. This may take a minute...events.js:160
throw er; // Unhandled 'error' event
Trying to follow the Getting Started instructions with v1.0, and at the point of updating the deployed business network, I'm hitting this here error:
Written Business Network Definition Archive file to digitalproperty-network@0.0.8.bna
Command completed successfully.
Command succeeded
eds-macbook-pro:DigitalProperty-Network edmoffatt$ composer network update --archiveFile digitalproperty-network@0.0.8.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
Deploying business network from archive: digitalproperty-network@0.0.8.bna
Business network definition:
Identifier: digitalproperty-network@0.0.8
Description: Digital Property Network
Error: Error: {"created":"@1494857757.300704000","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1494857757.300695000","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1494857757.300700000","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed
(Included some earlier outputs to show where the name of the .bna file was coming from)
@tennenjl thats the event hub issue - the giveaway is the `events.js:160
throw er; // Unhandled 'error' event` at the end
@sstone1 So, I have to ask, is there any sort of way to address the event hub issue (server side) or otherwise, or at this point do we need to move to v1? Thanks!
no way at v0.6. if we disable the event hub, we can't tell if a call to the blockchain has passed, failed, is still running, or timed out
which is why the event hub property is required
the problem isn't fixed yet at v1.0
and similar problems occur - we can't tell if/when the transaction has been committed to the blockchain without the event hub
@EdMoffatt your command would only work with a v0.6 fabric. Try
```
composer network update --archiveFile digitalproperty-network@0.0.8.bna -p hlfv1 --enrollId admin --enrollSecret adminpw
```
(note that it is likely you have already enrolled admin so)
```
composer network update -a digitalproperty-network@0.0.8.bna -p hlfv1 -i admin -s Q
```
Has joined the channel.
I have written a few transaction implementations in my learning of composer thus far, but now I want to explore additional capabilities. Where do I find composer JavaScript API documentation?
Works a charm - thanks @davidkel
@DennisM330 --first hit on Google! :-) https://hyperledger.github.io/composer/jsdoc/index.html
@dselman Thank, I have the link above but I was trying to follow the links on that page to find the jsdoc.
@dselman found it at the top, thx
@jtonline i'm considering doing ecdsa signature verification inside the chaincode.
this would require at least a few crypto npm modules.
@chunhui that sounds like one of the things that has come up before. Rather than wait for some kind of built in API/support, you could perhaps give browserify a go. I imagine there are going to be some pitfalls but crypto-browserify does seem to have createVerify (rsa, ecdsa) implemented so it may be worth a try. If you do get something working, it would be fantastic to hear about it.
Has joined the channel.
@here we are running a "What's new in Hyperledger Composer" session on Ustream this Thursday. The details are here:
@here we are running a "What's new in Hyperledger Composer" session on Ustream this Thursday. The details are here:
https://www.eventbrite.co.uk/e/hyperledger-composer-whats-new-tickets-34468700812
The session will be recorded and the links will be posted in all channels.
Has joined the channel.
.Hi All, In Composer tool, I am trying to submit a transaction using registry.add(resource). It is throwing this " TypeError: e.getFullyQualifiedIdentifier is not a function " error. So i used "class :Factory" which is creating an instance but it is not lasting for long. I mean the transaction operation to add the details to existing asset is disappearing when i jump or click on other asset or transaction. Please Can any help on this?
Has joined the channel.
@ChandraLekhaChavva Is this your own .bna file or are you using a sample?
@tennenjl My own .bna file. Not using sample one. :)
OK... We get our registry so the code looks similar to this getAssetRegistry(REGISTRY_ID);
})
.then(function(myAssetReg) {
// Push new asset into the main asset registry
return myAssetReg.add(someAsset);
})
.catch(function(error) {
// We should log error once we know how to do that and then re-throw it
throw error;
@sstone1 re APIs: Yes, in some cases it could be a matter of who see what and what part of CRUD is available for whom. So controlling fields (resources) and operations on them. This is usual APIM use cases and I thought since you picked loopback for this one could leverage the fuller APIM capabilities
@sstone1 re APIs: Yes, in some cases it could be a matter of who see what and what part of CRUD is available for whom. So controlling fields (resources) and operations on them. This is usual API Management (APIM) use cases and I thought since you picked loopback for this one could leverage the fuller APIM capabilities
The other point to controlling API is that this is your external interface and you may want to expose a certain style/dialect of REST, including different external field names that get mapped to other internal ones.
But thanks for the pointer to teh PersistedModel - it looks like what I need
Has joined the channel.
does `composer-rest-server` work with the `COMPOSER_CONFIG` environment variable?
@jtonline i'll give it a try ..
@jtonline i'll give it a try ..
thanks :thumbsup:
Has left the channel.
Hi,
https://github.com/hyperledger/composer/wiki/Tutorial-2
Would it work for hlfv1 or is there any other example/tutorial I can use to get started?
Has joined the channel.
Basic Question: Is writing logic in JS in composer same as writing logic in chaincode?
@SahilKapoor it should work with hlfv1 alpha. You should follow the quick start for hlfv1 rather than hlf v0.6 then in the tutorial when you use the command line to deploy/interact with your local fabric you should specify the profile hlfv1 using the command line option `-p hlfv1` (hlfv1 profile is created for you when you follow the quick start) and the emrollment secret `adminpw`. When you start the rest server and generate the application make sure you specify `hlfv1` as the profile and `adminpw` as the enrollment secret
@ygnr The programming models between writing chaincode in go and composer transaction processors in javascript with composer are completely different
I have a couple of questions,
1. what is the endorsement policy used when composer deploys the chaincode? is there a way to specify?
2. what is the plan for supporting channels involving multiple organisations?
[ ](https://chat.hyperledger.org/channel/composer?msg=FP3BJyJfxj5NAieQj) @ygnr you are operating at a different level of abstraction, but the logic is executing inside the chaincode container and side-effects are stored in the world-state. So from Fabric's point of view, this is just "chaincode"...
Hello , in a rule i have written a condition which checks the value of relationship element of a resource but i am getting an error 'not able to call getIdentifier() of null' . Following is the context. asset CC identified by id{
o String id
-->Package package
}
asset package indentified by id{
o String id
--> Individual individual
}
participant individual identified by id{
o String id
}
rule cc {
description: "Allow the Individual Update access to CC"
participant(p): "org.model.Individual"
operation: READ
resource(r): "org.model.CC"
condition: (p.getIdentifier() == r.package.individual.getIdentifier())
action: ALLOW
}
Hello , in a rule i have written a condition which checks the value of relationship element of a resource but i am getting an error 'not able to call getIdentifier() of null' . Following is the context. asset CC identified by id{
o String id
-->Package package
}
asset Package indentified by id{
o String id
--> Individual individual
}
participant Individual identified by id{
o String id
}
rule cc {
description: "Allow the Individual Update access to CC"
participant(p): "org.model.Individual"
operation: READ
resource(r): "org.model.CC"
condition: (p.getIdentifier() == r.package.individual.getIdentifier())
action: ALLOW
}
Hello , in a rule i have written a condition which checks the value of relationship element of a resource but i am getting an error 'not able to call getIdentifier() of null' . Following is the context. asset CC identified by id{
o String id
-->Package package
}
asset Package identified by id{
o String id
--> Individual individual
}
participant Individual identified by id{
o String id
}
rule cc {
description: "Allow the Individual Update access to CC"
participant(p): "org.model.Individual"
operation: READ
resource(r): "org.model.CC"
condition: (p.getIdentifier() == r.package.individual.getIdentifier())
action: ALLOW
}
Hey vinitesh, Hello!
@dselman hi, as far as I understand, the user enrollment means obtaining certificates for an existing user, in the context of a client application, isn't it?
@GururajL Composer doesn't specify any endorsement policy so it will revert to whatever is the fabric default and currently there is no way to specify endorsement policy. Composer has no reliance on how a channel is configured in a fabric so should work on different channel configurations
@dselman I see the "enrolling" is performed explicitly by the the create-channel.js administrative routine but not in a regular business scenario, like the landRegistry.js sample
or maybe it is done transparently by the composer-cli runtime?
Good day, vinitesh
Hey vinitesh, Hello!
[ ](https://chat.hyperledger.org/channel/composer?msg=ihWrEFSTyx9frNKcp) @dselman @davidkel Can we put condition on value of a relationship in permission.acl rule?
@vinitesh the ACL engine does not currently resolve relationships in a way that would allow you to do that
it would be OK if you were just accessing `r.package.getIdentifier()` but the problem is because you are trying to access a relationship of a relationship
@sstone1 ya r.package.getIdentifier()`works, but while defining our network model as relational we need to have a functionality to set permissions based on muti tier relationships otherwise for setting up permissions we cannot set our model as relational. Is there anything we can use as a workaround for this problem?
afraid not, we need to add code to make this possible
unless you duplicate the `--> Individual individual` relationship in the `CC` asset
This maybe a very basic question but bit confused Is it possible to switch between identities from Angular like how it does on composer playground...?
@sstone1 I think this functionality will be required for a relational model. Can we create a story around this?
sure, can you raise a requirement in GitHub?
@karthikworks no, it is not currently possible
@sstone1 ya sure thanks
@sstone1 how do we control the access of the users... say for example i have two users and have identity given to them... now i want to test the angular application with one of them (who does not have access to certain assets).. right now i am unable to see the access control happening... each time we run it runs as an admin..
The identity used by the Angular application is controlled by the REST server that it uses to communicate with the deployed business network
You will see in `package.json` (of the Angular application) a `composer-rest-server` command that specifies the admin user by default
Well, the user the was used in the Angular generator
Has joined the channel.
@sstone1 We tried this method now, but it doesnt seem to work. We created a rule to deny all, but still it seems to show all the assets... not sure where the mistake it...
but the same thing works on the composer playgroud correctly..
it sounds like the composer-rest-server is not configured with the same identity
@sstone1 raised as 1007 but not able to label it
can i use external libraries like momentjs
in the playground?
[ ](https://chat.hyperledger.org/channel/composer?msg=pbMd4XizXTwoShYTn) @aashishshrestah you cannot use node modules in transaction processor functions directly. You could try using browserify but that would depend on the module an it's dependencies, and I don't know if anyone has a working example doing that
http://stackoverflow.com/questions/43906873/how-can-other-libraries-be-invoked-from-chaincode
Hi, I'm trying to get the vehicle-license-network sample running. In that sample's directory, I did the following to create the .bna - "composer archive create -a vehicleLifecycleNetwork.bna -t dir -n . ". I then tried to deploy it with, "composer network deploy --archiveFile vehicleLifecycleNetwork.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d", but that gives me the following error. Chances are I've done something stupid... :(
Deploying business network from archive: vehicleLifecycleNetwork.bna
Business network definition:
Identifier: vehicle-lifecycle-network@0.0.8
Description: Vehicle Lifecycle Network
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/home/charters/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/home/charters/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/home/charters/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)
Any thoughts on how to resolve it would be greatly appreciated.
Any considerations on Fabric Composer having an option to generate test data script (setup) for users?
i have asset which looks like this asset { o string someId o TS[] ts}
concept TS { o string someNumberId o TEP[] tep}
concetp TEP {o String tepId}
sorry asset is asst CTS identified by someId {o String someId o TS[] ts}
in my transaction I get the assetRegistry for CTS
then I create a factory.newResource
and construct the asset
so if have CTS with this {someId:"someId:1", TS: []} the asset is created successfully
however if have CTS with this { someId:"someId:2", TS: [{someNumberId:"1", TEP:[{tepId:"1"}]}]} an asset is not created
I get this error
ERROR:Error: Did not find expected type Function as argument to push. Found: [object Object]
has anyone come across this error?
@GrahamCharters that error usually means it cannot talk to your v0.6 fabric
Thanks @davidkel - that gives me a path to investigate.
has anyone used the rest server with security enabled, ie -S true ...I see in the Swagger docs we now have System and Wallet APIs with various GET and POST actions but not exactly sure who I need to provide, for example issueIdentity ....data is asking for ```{
"participant": "string",
"userID": "string",
"options": {}
}```
```{
"participant": "sample.network.User",
"userID": "jontest",
"options": {}
}``` returns 401 Authorization Required errpr
```{
"participant": "sample.network.User",
"userID": "jontest",
"options": {}
}``` returns 401 Authorization Required error
Has joined the channel.
@here is it possible to have a policy where we can restrict asset creation to one organization. Another organization can only update asset after a certain state, etc. For example, in car-lease demo - a new car asset can be created only by manufacturer.
^^^ can this be done at function level within a single chaincode?
Yes, because participants are modelled and because ACL rules can use any attributes on the participant this is quite easy to do. E.g. you can restrict asset access by type of participant, or by using metadata on the participant instance (company name etc).
The docs for ACLs include some examples of different types of conditions
[ ](https://chat.hyperledger.org/channel/composer?msg=mtqNFFw8XSGtuNyBh) @GrahamCharters is this a v0.6 server running locally? What is in your defaultProfile ?
[ ](https://chat.hyperledger.org/channel/composer?msg=NCBfHsNXawKFLYKwx) @aashishshrestah could you DM me your BNA file and test case please?
@aashishshrestah I think it is because the elements in your array need to be concepts (created using factory.newConcept) not plain JS Objects.
The factory decorates the JS Objects with meta-annotations.
The factory decorates the JS Objects with metadata.
Thanks @dselman
[ ](https://chat.hyperledger.org/channel/composer?msg=pSiq7dn3jmYu6YeWi) @dselman Thanks. Would you say composer is ready for fabric v1.0?
Yes, it works nicely with Alpha1 - we are working on support for Alpha2, which was released yesterday.
@sstone1 is it possible to make ´composer-rest-server´ use a wallet (in bluemix)?
@sstone1 is it possible to make `composer-rest-server` use a wallet (in bluemix)?
Has left the channel.
@torresjeff yes - I'll give the long answer just to explain - `composer-rest-server` is a prebuilt LoopBack application that we have added "boot scripts" to in order to configure the Composer integration.
You can take a copy of `composer-rest-server` and edit the boot scripts to set a wallet implementation - it's not possible to do this via connection profiles etc at the moment.
Alternatively - you can configure `composer-rest-server` with a LoopBack connector to use to persist the wallet, for example MongoDB
That is slightly more difficult though as you need to install additional LoopBack connectors *and* configure the connector with the details of the database
How are you running the REST server in Bluemix? Cloud Foundry application or Docker container?
cf app
setup a script in my package.json like so: `"start": "composer-rest-server -p bluemix1 -n biznet -i admin -s 032de32a06 -N always && node app.js"``
but it's looking for the conncetion profile in the file system
right, you can fix that with env var
```
export COMPOSER_CONFIG='
{
"connectionProfiles": {
"hlfabric": {
"name": "hlfabric",
"description": "Hyperledger Fabric v1.0",
"type": "hlfv1",
"keyValStore": "/home/composer/.hfc-key-store",
"deployWaitTime": 300,
"invokeWaitTime": 30,
"orderers": [
{
"url": "grpc://orderer0:7050"
}
],
"channel": "mychannel",
"mspID": "Org1MSP",
"ca": "http://ca0:7054",
"peers": [
{
"requestURL": "grpc://peer0:7051",
"eventURL": "grpc://peer0:7053"
},
{
"requestURL": "grpc://peer1:7051",
"eventURL": "grpc://peer1:7053"
}
]
}
},
"credentials": {
"hlfabric": {
"admin": "adminpw"
}
}
}'
```
```
export COMPOSER_CONFIG='
{
"connectionProfiles": {
"hlfabric": {
"name": "hlfabric",
"description": "Hyperledger Fabric v1.0",
"type": "hlfv1",
"keyValStore": "/home/composer/.hfc-key-store",
"deployWaitTime": 300,
"invokeWaitTime": 30,
"orderers": [
{
"url": "grpc://orderer0:7050"
}
],
"channel": "mychannel",
"mspID": "Org1MSP",
"ca": "http://ca0:7054",
"peers": [
{
"requestURL": "grpc://peer0:7051",
"eventURL": "grpc://peer0:7053"
},
{
"requestURL": "grpc://peer1:7051",
"eventURL": "grpc://peer1:7053"
}
]
}
}
}'
```
should i specify that in the startup script?
ecause i tried setting `COMPOSER_CONFIG` in my `manifest.yml` but it was looking for the path in `keyValStore`
because i tried setting `COMPOSER_CONFIG` in my `manifest.yml` but it was looking for the path in `keyValStore`
right, so COMPOSER_CONFIG won't fix that
it just saves you creating the connection profile in the Cloud Foundry file system
if you want to use a LoopBack connector to persist the wallet
you need to install a LoopBack connector, e.g. add `loopback-connector-mongodb` to your package.json
and then add the following environment variable:
```
export COMPOSER_DATASOURCES='
{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
```
You might need some additional configuration in there to point it to the right MongoDB instance though
If you want to persist your wallet using anything that's not supported by a LoopBack connector, then you need to edit the `composer-rest-server` boot scripts
I was able to import the Swagger.json from a composer-rest-server configured for my business network into API Connect by simply downloading the JSON from the explorer/swagger.json and configuring the API to perform invokes of the appropriate REST endpoint. Would it be possible to use Kubernetes in front of a set of composer-rest-servers in Docker containers for load balancing?
@sstone1 perfect, thanks!
@DennisM330 yes, I have run a highly available REST server using nginx and 4 x REST server instances - using Docker - but assuming you know how to do something similiar in Kubernetes it should be fine
The only problem is persisting the wallet in a highly available data source
^ see above for that ;)
@sstone1 Thanks, I saw that above. Investigating an architectural pattern where an API Gateway might possibly front-end the composer-rest-server instances to provide security on the API such as OAuth, JWT, etc and Analytics
cool, we do have some functionality checked in (but undocumented) that allows you to configure the REST server with one or more Passport strategies for authenticating the user.
that allows each authenticated user to have their own wallet for their own blockchain identities
@here just a reminder that we have a call on Thursday at 9am UTC (10am UK, 2:30pm IST, 5pm CST). This is the first time we've run a call at this time so a good chance to get involved and find out what is going on in the world of Composer.
If you have any items you'd like to see added to the agenda, please let me know. We can cover existing features, new features, bugs, plans, contributing - anything!
Also, if you'd be willing to talk about your experiences of using Composer, we'd love to hear from you, just let me know! It only has to be a couple of minutes and no slides/prep needed!
Meeting details are here: https://github.com/hyperledger/composer/wiki/Meeting-18th-May-2017
Has joined the channel.
Hello, everybody. I see some comments above about running composer-rest-server as a cf app in bluemix. I am interested in doing this, but don't quite understand how to do it. Do I just create an app with a package.json with a script (as mentioned) and all the right dependencies? This is just for dev/testing/demo purposes, not production so I don't need HA or anything. I have used composer-cli locally to deploy a network to the blockchain (0.61) service in bluemix and I want to run my rest server there. Any advice/pointers are greatly appreciated!
@davidkel , thanks, when composer deploys the chaincode to a multi-org channel, i assume that composer deploys only to the peers of one org, since we can only specify peers, msp of only one org in connection profile. Please correct me if i am wrong. is there a provision to specify multiple MSPs and peers belonging to different org in the connection profile? either thru UI or thru docker compose file.
Has joined the channel.
$ npm install -g composer-cli
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
C:\Users\md mazaharuddin\AppData\Roaming\npm\composer -> C:\Users\md mazaharuddin\AppData\Roaming\npm\node_modules\composer-cli\cli.js
> hashtable@2.0.2 install C:\Users\md mazaharuddin\AppData\Roaming\npm\node_modules\composer-cli\node_modules\hashtable
> node-gyp configure build
C:\Users\md mazaharuddin\AppData\Roaming\npm\node_modules\composer-cli\node_modules\hashtable>if not defined npm_config_node_gyp (node "C:\Users\md mazaharuddin\AppData\Roaming\npm\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" configure build ) else (node "" configure build )
C:\Users\md mazaharuddin\AppData\Roaming\npm\node_modules\composer-cli\node_modules\hashtable\build\binding.sln : error
MSB3411: Could not load the Visual C++ component "VCBuild.exe". If the component is not installed, either 1) install t
he Microsoft Windows SDK for Windows Server 2008 and .NET Framework 3.5, or 2) install Microsoft Visual Studio 2008.
gyp ERR! build error
gyp ERR! stack Error: `msbuild` failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:\Users\md mazaharuddin\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\build.js:285:23)
gyp ERR! stack at emitTwo (events.js:106:13)
gyp ERR! stack at ChildProcess.emit (events.js:191:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Windows_NT 10.0.14393
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\md mazaharuddin\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "configure" "build"
gyp ERR! cwd C:\Users\md mazaharuddin\AppData\Roaming\npm\node_modules\composer-cli\node_modules\hashtable
gyp ERR! node -v v6.10.3
gyp ERR! node-gyp -v v3.6.0
gyp ERR! not ok
C:\Users\md mazaharuddin\AppData\Roaming\npm
`-- (empty)
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules\composer-cli\node_modules\chokidar\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.1: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! hashtable@2.0.2 install: `node-gyp configure build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the hashtable@2.0.2 install script 'node-gyp configure build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the hashtable package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp configure build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs hashtable
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls hashtable
npm ERR! There is likely additional logging output above.
it is show me this error while im trying to install composer cli
any solutions please?
Windows is not supported.
You should install an Ubuntu VM and run inside that.
thanks :)
@GururajL I would have thought that the typical use case scenario would be that organisations would only deploy to their own peers and not to other organisation peers and as such each org would have it's own unique connection profile. Also with the alpha 2 release of fabric you now need to be an admin of peer in order to be able to install chaincode onto the peer. Our deploy does an install followed by instantiate so need to look at whether it is necessary to split these out in order to support a multiple org scenario or whether both orgs can perform install/instantiate and still achieve the required result or whether only the one org needs to perform the instantiate. We don't support instantiate policies at this time and rely on the default.
@davidkel , install, instantiate should be fine the way you propose, but when a peer on which composer deploys the chaincode, sends a proposal, whom does it address to?
does this peer in org1 send the transaction proposal to the peers in org2 as well?
is there a provision to specify peers when invoking any transaction, either in the ui or in the api?
@GururajL The install/instantiate or transaction proposal will be sent to all the peers listed in your connection profile.
@GururajL The install/instantiate or transaction proposal will be sent to all the peers listed in your connection profile. What still needs to be considered of course is whether you need to send to other peers outside your organisation for endorsement
yup!, if there is a need to send the proposal to peers in other org, is there a way to achieve it right now?
if not, would like to know the plan
@GururajL It's something we will test now alpha 2 is out to see what is required. For example do you have to have access to other orgs MSP in order to be able to send a transaction proposal ? If that's the case then there is going to have to be a lot of trust between orgs as well as sharing of cryptographic material.
assuming, we can keep the installing and initiating the chain codes across organisations, outside the scope, i guess there shd be provision to atleast send the transaction proposal to the peers in other org.
peers will then simply need to setup tls to exchange messages and no need for additional crypto material
@GururajL So I don't know at this point what is required. but I could see having to have a connection profile for install or install/instantiate and another one for transactions.
@GururajL the mspid in the connection profile needs to match the mspid of your user that you will interact with
@davidkel , ok
@GururajL This is still an area that needs more thought and work so really appreciate the questions and suggestions on this that you have and welcome any more thoughts in this area you have.
@davidkel , sure, thx much, in general, i would like to understand how a typical smart contract use case between 2 orgs can be met using composer
Hi. I ran the getting started guide - installed in on Ubuntu server. Everything went well until I rebooted the system - after that, _something_ didn't start correctry - this is the error I am getting:
Hi. I ran the getting started guide - installed in on Ubuntu server. Everything went well until I rebooted the system - after that, _something_ didn't start correctly - this is the error I am getting:
node cli.js landregistry list
info: [Composer-GettingStarted] Hyperledger Composer: Getting Started application
Uncaught Exception: Error: Connect Failed
at ClientDuplexStream._emitStatusIfDone (/home/david/fabric/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._readsDone (/home/david/fabric/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:169:8)
at readCallback (/home/david/fabric/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:229:12)
Uncaught Exception: Error: Connect Failed
at ClientDuplexStream._emitStatusIfDone (/home/david/fabric/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._readsDone (/home/david/fabric/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:169:8)
at readCallback (/home/david/fabric/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:229:12)
error: [Composer-GettingStarted] Error: Connect Failed
Command failed.
Is Fabric still running? What do you see if you run "docker ps"
is the syntax for transaction logic definitions
```transaction ChangeOwner identified by txId {
o String txId
--> Marble marble
--> Collector newOwner
}```
`function changeOwner` or `function onChangeOwner` - I’m seeing examples of both
also, how do you delete things from composer?
`onChangeOwner` was the old syntax
`anynameyoulike` with appropriate JSDoc comments is the new syntax
you don't delete things from playground until @nkl199 finishes https://github.com/hyperledger/composer/issues/386
So I don't have any JSDoc comments so presumably it is able to find it based on name?
yeah but only when you use the `onTXName` syntax
which I'm not using :/
oh wait no yes I am
```/**
* Close the bidding for a vehicle listing and choose the
* highest bid that is over the asking price
* @param {org.acme.vehicle.auction.CloseBidding} closeBidding - the closeBidding transaction
* @transaction
*/
function closeBidding(closeBidding) {```
Take this for example
which is the 'apropriate' bit
in the sense of which part of the comment ties the function to the transaction
```
* @param {org.acme.vehicle.auction.CloseBidding} closeBidding - the closeBidding transaction
* @transaction
```
If I change it to this:
```/**
* @param {org.acme.vehicle.auction.CloseBidding} args - the closeBidding transaction
* @transaction
*/
function closeBidding(args) {```
Will it still work?
should do
no promises
you don't like code comments?
I don't mind comments, I just think it looks cleaner to have the first argument called args
I'm glad I don't have to read your code! ;-)
@dselman No, docker containers are not running anymore
@dselman No, docker containers are not running anymore. The command returns an empty list.
[ ](https://chat.hyperledger.org/channel/composer?msg=m4Aeu5sFowSPteRci) @sstone1 can you please guide me in the right direction, i have changed the identity on the package and config.. but still ACL doesnt seem to work properly...
@dselman Sould I start the containers in any specific order? I started the containers, but when running _npm test_, I still get errors (this is from the log):
0 info it worked if it ends with ok
1 verbose cli [ '/home/david/.nvm/versions/node/v6.10.3/bin/node',
1 verbose cli '/home/david/.nvm/versions/node/v6.10.3/bin/npm',
1 verbose cli 'run',
1 verbose cli 'bootstrapAssets' ]
2 info using npm@4.6.1
3 info using node@v6.10.3
4 verbose run-script [ 'prebootstrapAssets',
4 verbose run-script 'bootstrapAssets',
4 verbose run-script 'postbootstrapAssets' ]
5 info lifecycle getting-started@1.0.0~prebootstrapAssets: getting-started@1.0.0
6 silly lifecycle getting-started@1.0.0~prebootstrapAssets: no script for prebootstrapAssets, continuing
7 info lifecycle getting-started@1.0.0~bootstrapAssets: getting-started@1.0.0
8 verbose lifecycle getting-started@1.0.0~bootstrapAssets: unsafe-perm in lifecycle true
9 verbose lifecycle getting-started@1.0.0~bootstrapAssets: PATH: /home/david/.nvm/versions/node/v6.10.3/lib/node_modules/npm/bin/node-gyp-bin:/home/david/fabric/composer-sample-applications-hlfv1/packages/getting-started/node_modules/.bin:/home/david/.nvm/versions/node/v6.10.3/lib/node_modules/npm/bin/node-gyp-bin:/home/david/fabric/composer-sample-applications-hlfv1/packages/getting-started/node_modules/.bin:/home/david/bin:/home/david/.local/bin:/home/david/.nvm/versions/node/v6.10.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
10 verbose lifecycle getting-started@1.0.0~bootstrapAssets: CWD: /home/david/fabric/composer-sample-applications-hlfv1/packages/getting-started
11 silly lifecycle getting-started@1.0.0~bootstrapAssets: Args: [ '-c', 'node cli.js landregistry bootstrap' ]
12 silly lifecycle getting-started@1.0.0~bootstrapAssets: Returned: code: 1 signal: null
13 info lifecycle getting-started@1.0.0~bootstrapAssets: Failed to exec bootstrapAssets script
14 verbose stack Error: getting-started@1.0.0 bootstrapAssets: `node cli.js landregistry bootstrap`
14 verbose stack Exit status 1
14 verbose stack at EventEmitter.
hi @dstarina - I would start your fabric-ca, orderers, peers nodes ..eg. docker-compose -f docker-compose.yml up --no-recreate -d ie if you want to start the existing containers (preserving what's there since your reboot).given that you've deployed your GS business network.
@mahoney1 I have rebuilt my VM and will not provoke it while it works - but will write this down for the next time, thank you
@sstone1 does ACL work on generated Angular application ?
I'm trying to run the demo at "Getting started" (https://hyperledger.github.io/composer/tutorials/getting-started-cmd-line.html) - getting an error while trying to apply the archive file:
david@fabric01:~/composer-sample-networks/packages/digitalproperty-network$ composer network update --archiveFile digitalproperty-network@0.0.8.bna --enrollId WebAppAdmin
Deploying business network from archive: digitalproperty-network@0.0.8.bna
prompt: What is the enrollment secret of the user?: *********
Business network definition:
Identifier: digitalproperty-network@0.0.8
Description: Digital Property Network
buffer.js:262
throw new TypeError(kFromErrorMsg);
^
TypeError: First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.
at fromObject (buffer.js:262:9)
at Function.Buffer.from (buffer.js:101:10)
at new Buffer (buffer.js:80:17)
at MemberServicesImpl.enroll (/home/david/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/hfc/lib/hfc.js:2018:42)
at Member.enroll (/home/david/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/hfc/lib/hfc.js:753:29)
at /home/david/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/hfc/lib/hfc.js:521:20
at /home/david/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/hfc/lib/hfc.js:464:13
at /home/david/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/hfc/lib/hfc.js:493:13
at /home/david/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/hfc/lib/hfc.js:886:13
at ReadFileContext.callback (/home/david/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/hfc/lib/hfc.js:2202:24)
(using Hyperledger v1)
hi @dstarina for the v1.0 "Getting Started" - you would use the following update command (including enrollSecret below) for the Hyperledger Fabric v1.0 environment - composer network update --archiveFile digitalproperty-network@0.0.8.bna -*p hlfv1 --enrollId admin --enrollSecret adminpw*
ie `composer network update --archiveFile digitalproperty-network@0.0.8.bna -p hlfv1 --enrollId admin --enrollSecret adminpw` apols (ie ignore * above emboldening didn't work).
@dstarina you should follow the quick start -- i.e. run npm install to start the containers.
https://hyperledger.github.io/composer/installing/quickstart.html
@dselman - you mean even after it has been installed, after restart, I should run the npm install command to start them again? (sorry, I'm new to npm)
The npm install script for getting started installs the software and then starts Fabric. If you want to just start Fabric you can run npm startHLF. Open package.json and you'll find the npm shortcuts for a bunch of useful scripts.
The npm install script for getting started installs the software and then starts Fabric. If you want to just start Fabric you can run npm run startHLF. Open package.json and you'll find the npm shortcuts for a bunch of useful scripts.
e.g "install" runs: "install": "scripts/download-hyperledger.sh && scripts/start-hyperledger.sh && npm run deployNetwork"
[ ](https://chat.hyperledger.org/channel/composer?msg=mChXHkpTpN6czGM6P) @karthikworks can you paste in the line from package.json that shows how you are starting the `composer-rest-server` ?
can you also show us the output of `ps -ef | grep composer-rest-server` when it is running
@dselman Thank you!
@mahoney1 I did not know about the -p flag. Thank you. However, now I get another error:
Error: Could not parse enrollment response [{"success":false,"result":null,"errors":[{"code":400,"message":"Authorization failure"}],"messages":[]}
] as JSON due to error [TypeError: Cannot read property 'errors' of undefined]
Command failed
I have used the WebAppAdmin user, which should have been registered. Any idea what I can check?
@sstone1 The issue got solved once we upgraded to fabric 1.0
@sstone1 thank you :thumbsup:
@dstarina In V1, it is admin that was enrolled (registered) earlier so as I mentioned it is `composer network update --archiveFile digitalproperty-network@0.0.8.bna -p hlfv1 --enrollId admin --enrollSecret adminpw` - your message indicates auth failure. One other thing, you should not be running as root (couldn't tell from your previous output)
Has joined the channel.
@dselman @sstone1 for some reason i can no longer deploy a business network on bluemix and even on a local hlf instance using docker
times out every time
has anyone gotten this error: `Error: started twice without stopping`?
I am getting this error when i run composer-rest-server
Discovering types from business network definition ...
Connection fails: TypeError: identityProto.SerializedIdentity is not a constructor
It will be retried for the next request.
TypeError: identityProto.SerializedIdentity is not a constructor
at Identity.serialize (/usr/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/msp/identity.js:113:28)
at Chain.buildTransactionID (/usr/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/Chain.js:2125:49)
at HLFConnection.queryChainCode (/usr/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:533:31)
at HLFConnection.ping (/usr/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:476:21)
at connectionProfileManager.connect.then.then (/usr/lib/node_modules/composer-rest-server/node_modules/composer-client/lib/businessnetworkconnection.js:292:40)
Any ideas on how to resolve this?
Message Attachments
@mohamoud.egal are you using the local version of playground
i wrote a document on how to do that .. i'll send it to you
@jinvanstee can you send the document to me too thanks
or, look at this stackoverflow thread: http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
@jinvanstee I filled the profile for V0.6, but when it comes to adding an identity what ID and secret are we supposed to use? I tried using the id & secret from the Credentials file on Bluemix but I only got an error.
Message Attachments
@aashishshrestah how did you install the composer rest server ? where there any errors during the install process ? I noticed that everything is installed in usr/lib which usually only root has write access to. I wouldn't recommend installing or trying to run the composer tools as root. Far better to use a normal user.
@davidkel npm install -g composer-rest-server
@mohamoud.egal what userid are you doing that under and were there any errors during the install process ?
admin
I'm actually deleting & restarting the service
@mohamoud.egal The error described for composer-rest-server implies a problem with the installation around grpc
@mohamoud.egal The error described for composer-rest-server implies a problem with the installation around grpc, so when you installed the rest server, were there any error messages output ?
@mohamoud.egal The error described for composer-rest-server implies a problem with the installation around grpc, so when you installed the rest server, were there any error messages output ? Also it looks like node has been installed by root. You would be better off installing node as a normal user to avoid issues where you don't have write access the the /usr directory
@davidkel that's a good point. I didn't have any errors with the server
@mohamoud.egal only thing I can suggest would be to uninstall node and re-install it as a normal user and see if you can then install and run the rest server.
@mohamoud.egal as for your problem with playground, when you filled in the v0.6 information for bluemix did you ensure you copied in the certificate information and certificate path ?
it worked I'm now connected to Bluemix
my bluemix service was the problem so I deleted it & now I'm using a new service to connect @davidkel
:thumbsup:
@dselman do you know how long it should take to connect to Bluemix? My page has been loading for 20 mins.
Message Attachments
10 seconds
so I relaunched Composer from the terminal using
the command composer-playground & it immediately fails in the terminal
Error: {"created":"@1495056122.126311000","description":"EOF","file":"../src/core/lib/iomgr/tcp_posix.c","file_line":235,"grpc_status":14}
at ClientDuplexStream._emitStatusIfDone (/Users/mohamoudegal_ibm/.nvm/versions/node/v6.9.5/lib/node_modules/composer-playground/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/Users/mohamoudegal_ibm/.nvm/versions/node/v6.9.5/lib/node_modules/composer-playground/node_modules/grpc/src/node/src/client.js:169:8)
at /Users/mohamoudegal_ibm/.nvm/versions/node/v6.9.5/lib/node_modules/composer-playground/node_modules/grpc/src/node/src/client.js:634:14
Message Attachments
@mohamoud.egal The error output could indicate a problem connecting to the fabric. How about trying a cli command such as network ping with the same profile to see if that works. There could be some sort of network problem or service problem if that fails as well and you are sure the connection profile is correct
I think the connection profile is correct, but it won't let me change it.
@mohamoud.egal The connection profile should be stored in your home directory under the `.composer-connection-profiles` directory. Hopefully you can find the right connection.json file to take a look. The directory you find this in is the name of the connection profile so you can do a `composer network ping` command and use the -p option to specify that connection profile
Has joined the channel.
Mohamouds-MacBook-Pro:hlfv1 mohamoudegal_ibm$ composer network ping --basic-sample-network, -n --connection.json, -p --admin, -i --86ea160b00, -s
prompt: What is the enrollment secret of the user?: **********
Error: enrollmentID not specified
Command failed
Mohamouds-MacBook-Pro:hlfv1 mohamoudegal_ibm$
@davidkel is there a way to stop it from trying to connect to Bluemix? It's using one of the profiles I set up & unless it stops I can't look @ my profile info
Has joined the channel.
Is it possible to filter assets in the loopback REST API with any field other than the identifier of the asset?. If so, how can it be done ?
Is it possible to filter assets in the loopback REST API with any field other than the identifier of the asset?. If so, how can it be done.
@Sandeep this is not possible today. We are currently looking at adding support for complex queries using the CouchDB support in Fabric v1.0, which we plan to expose over REST.
Thanks @sstone1
@here our next community call is today at 9am UTC (10am UK, 2:30pm IST, 5pm CST), see details here: https://github.com/hyperledger/composer/wiki/Meeting-18th-May-2017
I will be on a plane so @dselman will be running it.
Finally, I will be at the Consensus Building Blocks Hackathon and Consensus in NYC - if you're there and a Composer fan come and find me! We have a cool new demo to show off 😄
@sstone1 thanks for your help m8, we participated on a hackathon and almost won it :) Our presentation went horribly wrong when all of our online meeting plugins crashed haha
but Composer worked well, we do have a few issues that may/may not be bugs, so will run them by you later this week once I get some sleep
np @berserkr, good old online meeting plugins! would be great to hear some feedback on the hackathon + composer on a community call if you're up for it? ;)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ELy5KnX5S43LKLDGi) @jinvanstee can you send the document to me please?
@vivekraut it sounds like a popular document- is it something you could share more widely, perhaps on https://github.com/hyperledger/composer/wiki ?
Hi, where can I find a recent example of a connection.json file? Having installed the latest cli and with hlfv1 I get a few errors like a missing events array and the 'url' parameter that has to be a string instead of an object
[ ](https://chat.hyperledger.org/channel/composer?msg=jWAEukwLC5Yzji5S4) @jtonline sorry I was looking to deploy to HSBN vNext v1 plan and not 0.6
@vivekraut sorry, just realised @jinvanstee is the one with the document! It would be great to put it somewhere that people can find it
@arner are you trying to connect to alpha1 or alpha2?
alpha1
Mine looks like...
```
{
"name": "showAndTell",
"description": "A description for a V1 Profile",
"type": "hlfv1",
"orderers": [
{
"url": "grpc://localhost:7050",
"cert": "",
"hostnameOverride": ""
}
],
"channel": "mychannel",
"mspID": "Org1MSP",
"ca": "http://localhost:7054",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053",
"cert": "",
"hostnameOverride": ""
}
],
"keyValStore": "/Users/jt/.hfc-key-store",
"deployWaitTime": 300,
"invokeWaitTime": 30
}
```
...which doesn't look like it includes what you're interested in?
Hey @arner, can I see your connection profile that you're trying to use?
Community call starting....
Watch this space for the call in details!
Screen sharing: https://apps.na.collabserv.com/meetings/join?id=1956-6175
password is: composer
```
Phone number:
0800-368-0638 (UK)
215-861-6239 (US, caller paid)
888-426-6840 (US, toll free)
For other countries see: AT&T Global Conference Access Numbers
Participant code: 16199578
```
Call has started
```
{
"type": "hlfv1",
"orderers": [
{
"url": "grpcs://orderer0.aab1.torchbetatest.nl:7050",
"cert": "-----BEGIN CERTIFICATE----------END CERTIFICATE-----"
}
],
"ca": "http://ca0.aab1.torchbetatest.nl:7054",
"peers": [
{
"requestURL": "grpcs://peer0.aab1.torchbetatest.nl:7051",
"eventURL": "grpcs://peer0.aab1.torchbetatest.nl:7053",
"cert": "-----BEGIN CERTIFICATE----------END CERTIFICATE-----"
},
{
"requestURL": "grpcs://peer1.aab1.torchbetatest.nl:7056",
"eventURL": "grpcs://peer1.aab1.torchbetatest.nl:7058",
"cert": "-----BEGIN CERTIFICATE----------END CERTIFICATE-----"
},
{
"requests": "grpcs://peer0.aab2.torchbetatest.nl:8051",
"events": "grpcs://peer0.aab2.torchbetatest.nl:8053",
"cert": "-----BEGIN CERTIFICATE----------END CERTIFICATE-----"
},
{
"requests": "grpcs://peer1.aab2.torchbetatest.nl:8056",
"events": "grpcs://peer1.aab2.torchbetatest.nl:8058",
"cert": "-----BEGIN CERTIFICATE----------END CERTIFICATE-----"
}
],
"keyValStore": "/home/root/.hfc-key-store",
"channel": "mychannel",
"mspID": "AABOrg2",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}
```
@Jakeeyturner @jstonline This is how it was, but I got the error `Error: The events array has not been specified in the connection profile`. After adding an array with the event urls, I get `TypeError: Parameter "url" must be a string, not object`
@arner in the connection profile you have posted, the last 2 peers listed are not correct. The property names should be 'requestURL' and 'eventURL' not 'requests' or 'events'
^
That should sort it
@Jakeeyturner sorry if I interrupted you responding :slight_smile:
Too speedy!
My bad, but I still got the same errors
@here may i ask a dummy question. what is the main usage of fabric composer?
@arner I'm assuming you're using Playground to create the connection profile?
(use)
@bh4rtp Hyperledger Composer has some docs here which might be worth looking through - https://hyperledger.github.io/composer/introduction/introduction.html
@arner what level of composer are you running ? `composer --version`
0.5.5
what's the difference between `factory.newInstance` and `factory.newResource`
@arner the connection profile format has changed since that release. I would recommend moving up to the latest version. In that version the definition of the peer event urls were defined in a separate property called 'events', and that version is unlikely to work well with multiple peer definitions
Oh sorry I thought I was on the latest -_-. Thanks
Message Attachments
Message Attachments
Message Attachments
Message Attachments
Message Attachments
Message Attachments
Hey @bh4rtp - as it happens, we're working to script out a short video for the Hyperledger website that will introduce the Composer Project. Whilst you're still new to Composer and figuring out what it's supposed to be used for, you'd be *perfect* to give us some feedback :)
I've rushed together a quick draft here - sorry about the dodgy recording quality! There's an audio version, and then the full transcript in the description if you'd prefer to read it...
https://soundcloud.com/edmoffatt/hyperledger-composer-video-script-draft-2/s-WSatY
Would also welcome feedback from anybody here - how do you feel this does at describing what the project is about and why somebody would want to use Composer? Anything in there that you find confusing, or questions you still have afterwards (that you would expect a brief intro video to have covered)?
how to reset the composer playground ?
@vivekraut you could try using `localstorage.clear()` in your browser console. Wanting to reset the playground seems to have come up a few times so it would be useful to know the background in case there's something that could be improved in the future
[ ](https://chat.hyperledger.org/channel/composer?msg=yZPtZKKqZ3AmBx5nK) @sstone1 Is it still unfinished or can we try out a sample for it? It will be very helpful in an use case where some of the stuff is visible to an employee and some by manager and everything by CEO of a company.
It will be really very helpful and useful feature
[ ](https://chat.hyperledger.org/channel/composer?msg=NJQjNtLNftAaeBC4w) @SahilKapoor It will be really very helpful and useful feature
[ ](https://chat.hyperledger.org/channel/composer?msg=NJQjNtLNftAaeBC4w) @SahilKapoor
I was also looking for a similar feature. This will be really a very good feature.
[ ](https://chat.hyperledger.org/channel/composer?msg=NJQjNtLNftAaeBC4w) @SahilKapoor
I was also looking for a similar feature. This will be a very good feature.
[ ](https://chat.hyperledger.org/channel/composer?msg=45PRZHR4hnKXjLfwd) @vivekraut You can just import the empty business network and it will clean up you playground. It would also be useful to clear your browser cache.
[ ](https://chat.hyperledger.org/channel/composer?msg=ebGumm4B8qdB85vPQ) @tom.appleyard newInstance is deprecated. You should use newResource
[ ](https://chat.hyperledger.org/channel/composer?msg=ebGumm4B8qdB85vPQ) @tom.appleyard newInstance is deprecated. You should use newResource, newConcept, newTransaction, newEvent instead
[ ](https://chat.hyperledger.org/channel/composer?msg=2GdT9y7Fikz2SKceu) @SanketPanchamia I tried that but i still see previous identities and I am not able to create new profile. I uninstalled and installed the playground but it did not help.
Has joined the channel.
Hi, I have a novice question I'd like help. But first, today is first time I try Composer and went through the getting started with digital property and sample asset tutorials with no hiccups - congrats on smooth onboarding experience :)
I would like to know about channels with Composer. I have a PoC to do with edge cases, I require one public network with 3 peers/participants, and a separate private channel between each participant. The reason is for privacy of ledger at each peer. Is there an example of Composer defined business network with more than 1 channel I can look at?
Perhaps I have wrong idea, should it be two defined business networks running at same time, or is this design pattern not applicable in Composer (ie. restricted to a single channel)
Thank you for help, it's my first day to look at Composer and I have tried searching around, your help will guide and save me a lot of time I don't have right now :)
Hi, I have a novice question I'd like help. But first, today is first time I try Composer and went through the getting started with digital property and sample asset tutorials with no hiccups - congrats on smooth onboarding experience :)
I would like to know about channels with Composer. I have a PoC to do with edge cases, I require one 'general' network with 3 peers/participants, and a separate private channel between each participant. The reason is for privacy of ledger at each peer. Is there an example of Composer defined business network with more than 1 channel I can look at?
Perhaps I have wrong idea, should it be two defined business networks running at same time, or is this design pattern not applicable in Composer (ie. restricted to a single channel)
Thank you for help, it's my first day to look at Composer and I have tried searching around, your help will guide and save me a lot of time I don't have right now :)
Hi, I have a novice question I'd like help. But first, today is first time I try Composer and went through the getting started with digital property and sample asset tutorials with no hiccups - congrats on smooth onboarding experience :)
I would like to know about channels with Composer. I have a PoC to do with edge cases, I require one 'general' network with 3 peers/participants, and a separate private channel between each participant. The reason is for privacy of ledger at each peer. Is there an example of Composer defined business network with more than 1 channel I can look at?
Perhaps I have wrong idea, should it be one defined business networks per channel with multiple running at same time, or is this design pattern not applicable in Composer (ie. restricted to a single channel)
Thank you for help, it's my first day to look at Composer and I have tried searching around, your help will guide and save me a lot of time I don't have right now :)
Hi, I have a novice question I'd like help. But first, today is first time I try Composer and went through the getting started with digital property and sample asset tutorials with no hiccups - congrats on smooth onboarding experience :)
I would like to know about channels with Composer. I have a PoC to do with edge cases running on Fabric v1.0, I require one 'general' network with 3 peers/participants, and a separate private channel between each participant. The reason is for privacy of ledger at each peer. Is there an example of Composer defined business network with more than 1 channel I can look at?
Perhaps I have wrong idea, should it be one defined business networks per channel with multiple running at same time, or is this design pattern not applicable in Composer (ie. restricted to a single channel)
Thank you for help, it's my first day to look at Composer and I have tried searching around, your help will guide and save me a lot of time I don't have right now :)
Hi, I have a novice question I'd like help. But first, today is first time I try Composer and went through the getting started with digital property and the playground sample asset tutorials with no hiccups - congrats on smooth onboarding experience :)
I would like to know about channels with Composer. I have a PoC to do with edge cases running on Fabric v1.0, I require one 'general' network with 3 peers/participants, and a separate private channel between each participant. The reason is for privacy of ledger at each peer. Is there an example of Composer defined business network with more than 1 channel I can look at?
Perhaps I have wrong idea, should it be one defined business networks per channel with multiple running at same time, or is this design pattern not applicable in Composer (ie. restricted to a single channel)
Thank you for help, it's my first day to look at Composer and I have tried searching around, your help will guide and save me a lot of time I don't have right now :)
A composer business network definition is deployed to a channel (the channel id is in the connection profile). So, each channel is independent, and can have the same (or different) definition deployed.
thank you @dselman sounds like what I want to do is possible, with one composer network per channel. I just need to be able to call across them from same application. Your answer gives me confidence to continue, thank you again :)
you are welcome
is there a new version of composer being released today?
@jinvanstee - we're not planning a release today, since the Consensus conference is next week, and there'll be a hackathon over the weekend making heavy use of Composer. We're "playing it safe" and not cutting a release until those activities are out of the way :)
thanks @EdMoffatt
can someone explain me or provide description how it can be verified/explained that only tx-participants have access to tx-data but on data level (f.e. there are some participants A,B,C and A transfers an asset to C, so B has the same data but can't read it)
Hi
Is it possible to run couch db for fabric when using composer? If so, can you guide me through the process
[ ](https://chat.hyperledger.org/channel/composer?msg=6MsLkwfdiLuXb7Awe) @vivekraut did you try clearing local storage? That's where the playground stores its wallet. (I've just posted a related answer on stack overflow http://stackoverflow.com/a/44053007/4218664 but let me know if that doesn't work.)
@SahilKapoor you can use composer on a fabric v1-alpha set up to use couchdb. There is nothing you need to do on the composer side if your fabric setup uses couch db.
@SahilKapoor you can use composer on a fabric v1-alpha set up to use couchdb. There is nothing you need to do on the composer side if your fabric setup uses couch db. We don't exploit any of the features of using couch db currently but that is coming soon when composer will provide rich query support
@Dpkkmr the error message says it cannot connect to the local fabric ca server. If you still have the problem then it would be worth using docker to check the logs of that server, also try using docker-compose to stop and start the services (make sure you use the --no-recreate on up first to ensure it doesn't remove the current containers and recreate them). to see if it solves the problem (maybe it is a docker network problem). also try using network ping to see if you can communicate with the other fabric services as well.
@dselman Is the code for the ionic app demonstrated in today's Hyperledger Composer - What's New session available on github?
{ Error: SyntaxError: parse error (line 8)
at /home/ibmstudent/workspace/marbles-client/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:434:17 code: 2, metadata: Metadata { _internal_repr: {} } }
(node:32298) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: SyntaxError: parse error (line 8)
does anyone know what this is?
I'm getting it from trying to use `return bizNetConnection.submitTransaction(newTransaction);`
line is line 8
When trying to deploy my own .bna file to v0.6 of Hyperledger I get an error saying "Identity lookup error: sql: no rows in result set". Any idea on a fix?
I read that v0.7.2 is pre release for fabric v1.0.0.. However on the v0.7.2 branch of composer, .gitmodules still points to fabric v0.6 . Am i missing something. Pls help
@prashiyn composer supports both fabric v0.6 and fabric v1.0 alpha1
there is no gitmodules for fabric v1.0 as that is no longer required for fabric v1.0
Has anyone seen this issue before:
```
ibmstudent@ubuntu:~/workspace/marbles-client$ composer identity issue -n marbles -i admin -s adminpw -u tom -a tom@ibm.com
Error: {"created":"@1495129149.588810828","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1495129149.588789019","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1495129149.588805266","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed.```
Command succeeded
using a fabric v0.6 connection profile to talk to fabric v1.0
or vice versa
don't do that
:+1:
It feels like documentation is an area that needs review with each release. Can examples be better tagged "works with vX.Y"?
[ ](https://chat.hyperledger.org/channel/composer?msg=2XtCkQuyxN5FqbFbW) @jtonline @vivekraut yup you need to clear your local storage and browser cache. Typically i use a browser that doesnt have any saved cache so i can delete everytime i update my composer sample
[ ](https://chat.hyperledger.org/channel/composer?msg=PFPGvopf7Fo2jDE3X) @dklesev the Access Control Language can be used for that: https://hyperledger.github.io/composer/reference/acl_language.html
[ ](https://chat.hyperledger.org/channel/composer?msg=nRcWFW6YCSZE2QwgX) @vinitesh not yet. We will try to get that published next week.
[ ](https://chat.hyperledger.org/channel/composer?msg=N8Rx6C7StvTcebMPQ) @jarroyer check the hyperledger-composer tag on StackOverflow
Message Attachments
@dselman thank you for the reply. I understand what you mean with ACL. But actually I need a proof on data level - i.e. using key (or certificate?) od A or of C to decrypt the data and show that B can't decrypt it (without fabrics security layer, i.e. on data itself)
@dklesev
@dklesev please file and issue and describe the use case. I'm very interesting in these requirements but I don't think we have what you need today.
@dklesev please file an issue and describe the use case. I'm very interesting in these requirements but I don't think we have what you need today.
@dselman I will share with you and @sstone1 my research, questions and requirements we are collecting. One of our use cases is chemical barrel production where an extremely high level of data access restrictions and security are required. maybe I can do it tomorrow.
and of course traceability :)
that would be great, we'd love to hear the feedback and requirements
@mohamoud.egal from your screen shot you are filling out a v1 profile, not a v0.6 profile. Info on a v0.6 profile for bluemix can be found here
http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
is there anyway to specify file names (model and logic) on the playground?
Has joined the channel.
I am following the instructions here to install the sample app for the composer: https://hyperledger.github.io/composer/installing/quickstart.html on my ubuntu 16.04 VM, I am at step 3 to install the sample application (npm install for v0.6 fabric), and it failed with: error: [Composer-GettingStarted] Error: Failed to load connection profile defaultProfile. Error was Error: ENOENT: no such file or directory, open '/root/.composer-connection-profiles/defaultProfile/connection.json'
Command failed.
what I have missed? I did see any instructions on setting up that json file for the connection profile? thanks a lot!
@EdMoffatt thanks. i have watched the videos.
@here may i ask a question not about fabric composer but docker-compose? i have two containers defined in the docker-compose.yaml file, i.e. algo_md and algo_hb, my question is how to dynamically transfer specific environment variable value for different container? for example TRADE_ID=102001 for algo_md, TRADE_ID=201005 for algo_hb.
@here may i ask a question not about fabric composer but docker-compose? i have two containers defined in the docker-compose.yaml file, i.e. algo_md and algo_hb, my question is how to dynamically transfer specific environment variable value for different container? for example TRADE_ID=102001 for algo_md, TRADE_ID=201005 for algo_hb. i start up docker-compose in a java program, the TRADE_ID is chosen by user.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=t3AuBLrqmwYn3vk87) @SanketPanchamia @jtonline Thanks. clearing localstorage helped in recreating the connection profile.
[ ](https://chat.hyperledger.org/channel/composer?msg=5R2RQhTSYcWrpeCdm) @davidkel
Please find my Composer and CA docker logs:
0|composer | HLFConnection :constructor() <
0|composer | HLFConnectionManager :connect() < {}
0|composer | ConnectorServer :connectionManagerConnect() < 64800d34-1ee6-47a6-ad63-b88d67d6fc43
0|composer | ConnectorServer :connectionLogin() > 64800d34-1ee6-47a6-ad63-b88d67d6fc43, m1, d57bb4c5
0|composer | HLFConnection :login() > m1
0|composer | HLFConnectionManager :fabric-client() {} '
[ ](https://chat.hyperledger.org/channel/composer?msg=5R2RQhTSYcWrpeCdm) @davidkel
Please find my Composer and CA docker logs:
0|composer | HLFConnection :constructor() <
0|composer | HLFConnectionManager :connect() < {}
0|composer | ConnectorServer :connectionManagerConnect() < 64800d34-1ee6-47a6-ad63-b88d67d6fc43
0|composer | ConnectorServer :connectionLogin() > 64800d34-1ee6-47a6-ad63-b88d67d6fc43, m1, d57bb4c5
0|composer | HLFConnection :login() > m1
0|composer | HLFConnectionManager :fabric-client() {} '
I am now getting the following error while trying to deploy the BNA to HLF v1 Bluemix Blockchain Service. Anybody faced this issue? I have tried replacing \r\n from the certificate string but no luck
E0519 06:43:25.928682984 13540 ssl_transport_security.c:611] Could not load any root certificate.
E0519 06:43:25.929124203 13540 ssl_transport_security.c:1348] Cannot load server root certificates.
E0519 06:43:25.929222284 13540 security_connector.c:837] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0519 06:43:25.929276749 13540 secure_channel_create.c:127] Failed to create secure subchannel for secure name '
@vivekraut how many certificates are in your certificate string ? if there is only one then you haven't put all the certificates into the string
[ ](https://chat.hyperledger.org/channel/composer?msg=8b6QCwPAvPpRSp2on) @torresjeff you can import files. We are working on delete and changing namespace.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=kSkRETW4ey4id4FFq) @dklesev I have a similar privacy use case I need to explore with my PoC but from what I understand from limited research with Fabric data privacy can only be achieved via channels (though there's a question of the read write sets going across the orderer which could be visible/sniffed) otherwise data sent in transaction from participant B to participant A would need to be encrypted on B client (with A public key, for example), goes on ledger encrypted, and then decrypted by receiving A client application after reading from the ledger. If you have any research you can share more publicly I'd love to see it also, I think a lot of people would find it useful contribution too.
[ ](https://chat.hyperledger.org/channel/composer?msg=kSkRETW4ey4id4FFq) @dklesev I have a similar privacy use case I need to explore with my PoC but from what I understand from limited research with Fabric v1 data privacy can only be achieved via channels (though there's a question of the read write sets going across the orderer which could be visible/sniffed) otherwise data sent in transaction from participant B to participant A would need to be encrypted on B client (with A public key, for example), goes on ledger encrypted, and then decrypted by receiving A client application after reading from the ledger. If you have any research you can share more publicly I'd love to see it also, I think a lot of people would find it useful contribution too.
[ ](https://chat.hyperledger.org/channel/composer?msg=kSkRETW4ey4id4FFq) @dklesev I have a similar privacy use case I need to explore with my PoC but from what I understand from limited research with Fabric v1 data privacy can only be achieved via channels (though there's a question of the read write sets going across the orderer which could be visible/sniffed) otherwise data sent in transaction from participant B to participant A would need to be encrypted on B client (with A public key, for example), goes on ledger encrypted, and then decrypted by receiving A client application after reading from the ledger. If you have any research you can share more publicly I'd love to see it also, I think a lot of people would find it useful contribution too.
I love this discussion, but I suggest you create an issue and let's have it there. Please describe the issue in general terms of what needs to be achieved (business goals), rather than how it is achieved. E.g. "As a user I can ensure the privacy and security of assets and transactions" ...
We can then collectively outline some proposals etc
Message Attachments
Message Attachments
Hi,
When trying to deploy a *.bna file I'm getting below mentioned exception :
For testing purpose, I have used basic sample network files.
Attached the trace file.
It will be really helpful if some one can help me resolve this issue or suggest a way to deploy a *.bna file.
Unfortunately deploy from web is also failing :(
Thanks in advance!
Hi,
When trying to deploy a *.bna file I'm getting below mentioned exception :
For testing purpose, I have used basic sample network files.
Attached the trace file.
It will be really helpful if some one can help me resolve this issue or suggest a way to deploy a *.bna file.
Unfortunately deploy from web is also failing :(
Thanks in advance!
Hi,
When trying to deploy a *.bna file I'm getting below mentioned exception :
For testing purpose, I have used basic sample network files.
Attached the trace file.
It will be really helpful if some one can help me resolve this issue or suggest a way to deploy a *.bna file.
Unfortunately deploy from web is also failing for V1.0 :(
Thanks in advance!
Hi,
When trying to deploy a *.bna file I'm getting below mentioned exception :
For testing purpose, I have used basic sample network files.
Attached the trace file.
It will be really helpful if some one can help me resolve this issue or suggest a way to deploy a *.bna file.
For deploying I'm using this command :
"composer network deploy --archiveFile basic-sample-network.bna --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d"
Is there any change in the command which I need to do for V1.0?
Unfortunately deploy from web is also failing for V1.0 :(
Thanks in advance!
[ ](https://chat.hyperledger.org/channel/composer?msg=mZAQcaHh7hjkGgTKN) @davidkel I have imported all (2) certificates.
@vivekraut did you cut/paste the content directly into connection.json on your file system or are you doing it via playground ?
thanks @dselman - I've opened issue 1043 (https://github.com/hyperledger/composer/issues/1043) - @dklesev if you wouldn't mind could you contribute your thoughts and experience so far to the issue? I'm happy to update the issue post if it doesn't explain what we want in enough detail, I left it general for now (feel kinda reluctant to open an issue on a project I've only spent 2 days with, it's possible my inexperience is the issue :) )
thanks @dselman - I've opened issue 1043 (https://github.com/hyperledger/composer/issues/1043) - @dklesev if you wouldn't mind could you contribute your thoughts and experience so far to the issue? I'm happy to update the issue post if it doesn't explain what we want in enough detail, I left it general for now (feel kinda reluctant to open an issue on a project I've only spent 2 days with, it's possible my inexperience is the actual issue :) )
ok, will add my notes there, too
@rfu2k have a look (view notes at first)
[ ](https://chat.hyperledger.org/channel/composer?msg=MYms9mx8Xf22QiLQM) @davidkel I have tried both the options
@vivekraut can you confirm that your connection profile follows the pattern described in
https://github.com/hyperledger/composer/issues/1032
unfortunately I am running out if ideas. I do know other people have managed to connect to Bluemix without issue
I have installed Composer and then Playground on the same system. I'm trying to connect Playground to Fabric v1, I copied the connection profile from hlfv1 folder and used _admin_ user (pw: _adminpw_) to connect. Seems to be stuck while connecting. Should I be using another user (WebAppAdmin?) or does that not matter?
[ ](https://chat.hyperledger.org/channel/composer?msg=XeqwsHCwRZAp6i7MC) @sstone1 I raised the story regarding this functionality but its not labeled . just wanna check how i can i label it or is it that someone else will provide the appropriate labels?
@vinitesh don't worry, we will add the labels
Hi guys, the composer cli is timing out when I try to deploy a compose instance, I’m getting no more debug information so I’ll just set out my connection profile, the command and versions of the modules if thats cool :)
*Connection profile:*
```
{
"type": "hlf",
"membershipServicesURL": "grpc://localhost:7054",
"peerURL": "grpc://localhost:7051",
"eventHubURL": "grpc://localhost:7053",
"keyValStore": "/Users/georgeormrod/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100",
"networks": {
}
}
```
*Composer version:*
```
composer-cli v0.7.2
composer-admin v0.7.2
composer-client v0.7.2
composer-common v0.7.2
composer-runtime-hlf v0.7.2
```
Command I’m using: `composer network deploy -a network.zip -i WebAppAdmin -s DJY27pEnl16d`
There doesn’t look like theres any errors in the peer just seems to run the deploy command then stop before timing out :/
Oh here’s the error sorry
```
composer network deploy -a network.zip -i WebAppAdmin -s DJY27pEnl16d
Deploying business network from archive: network.zip
Business network definition:
Identifier: net.everledger.diamond@0.0.1
Description: Base absract network for everledger repositories
✖ Deploying business network definition. This may take a minute...
timed out waiting for transaction to complete
```
@rodders1991 You can only deploy a `.bna` file
you'll need to create a `.bna` file using `composer archive create`
Yep, changed to a `.bna` file and its still timing out
Can you show your docker containers running? `docker ps`
```
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
48b3ea1555e6 hyperledger/fabric-peer:x86_64-0.6.1-preview "sh -c 'sleep 5; p..." 14 minutes ago Up 14 minutes 0.0.0.0:7050-7051->7050-7051/tcp, 0.0.0.0:7053->7053/tcp sdix_vp0
0c78863466d2 hyperledger/fabric-membersrvc:x86_64-0.6.1-preview "membersrvc" 14 minutes ago Up 14 minutes 0.0.0.0:7054->7054/tcp sdix_membersrvc
85f4c76dbeca library/rethinkdb "rethinkdb --bind all" 14 minutes ago Up 14 minutes 0.0.0.0:8080->8080/tcp, 0.0.0.0:28015->28015/tcp, 0.0.0.0:29015->29015/tcp rethinkdb
```
Has joined the channel.
Hi, I'm playing with the http://composer-playground.mybluemix.net/. I added participant and the asset, but when I try to make a new transaction I got the error `Error: Object with ID 'assetId:3256' in collection with ID 'Asset:org.acme.sample.SampleAsset' does not exist` The asset id is the same as the asset I've just created. Any idea?
The asset id is `assetId:3256` in your example. I suspect you should remove the `assetId:` prefix
Has joined the channel.
@rodders1991 That's odd. Can you try running through our getting-started? https://hyperledger.github.io/composer/installing/quickstart.html
There are instructions for Hyperledger Fabric v0.6 and v1.0
[ ](https://chat.hyperledger.org/channel/composer?msg=i4dFhuK8c7KcDzH7H) @Jakeeyturner
I'm using .bna file still I'm not able to deploy it on fabric
Hi, Whenever i try to connect bluemix i get this error. I had followed the stackoverflow steps.... Error: Failed to read connection profile 'bluemix'. Error was SyntaxError: Unexpected token
in JSON at position 470
@karthikworks It seems like there's a syntax problem with your connection profile. Would you be able to post it?
@Jakeeyturner I've run the tests on the getting-started and thats worked (were using 0.6), strange :/
Hmmm, might be worth checking if your connection profile is configured properly.
(Feel free to post it if you're not sure)
@Jakeeyturner yes just a min..
{
"type": "hlf",
"membershipServicesURL": "grpcs://fcacb900472e4c1eb44cdb03efcf9392-ca.us.blockchain.ibm.com:30004",
"peerURL": "grpcs://fcacb900472e4c1eb44cdb03efcf9392-vp0.us.blockchain.ibm.com:30004",
"eventHubURL": "grpcs://fcacb900472e4c1eb44cdb03efcf9392-vp0.us.blockchain.ibm.com:31004",
"keyValStore": "/home/composer/.composer-credentials",
"deployWaitTime": 300,
"invokeWaitTime": 30,
"certificate": '
That looks like a Hyperledger Fabric v0.6 profile, is that what you're trying to connect to? Or v1.0 ?
[ ](https://chat.hyperledger.org/channel/composer?msg=2H2ez862nTJnDofFB) @dstarina not sure you've had a response - but you should be able to work with the current (Fabric v1) connection profile (as currently ID admin) - and flip between v1 connection profile or browser connection profile in Playground and shows active profile. Don't need to use another user , no.
After watching the Introduction video, I noticed that there was a UI that Simon generated with the angular app generator that while he says "won't win any UI awards" is a clean start. All that it generates now is the rest API which is a bit sloppy for demonstration purposes. Is there any way to get this other UI from the introduction?
Hi, I'm trying out the vehicle lifecycle sample. I get the following messages when running composer-rest-server. Of the couple I've investigated, they appear to be for 'abstract' or 'concept' types so I think this is expected. Can someone please confirm that this is the case? Thanks.
Swagger: skipping unknown type "VehicleDetails".
Swagger: skipping unknown type "UpdateOrderStatus".
Swagger: skipping unknown type "TrailerDetails".
Swagger: skipping unknown type "SoundDetails".
Swagger: skipping unknown type "ExhaustEmissions".
Swagger: skipping unknown type "VehicleTransaction".
@Jakeeyturner yes i am trying to connect to v0.6 bluemix instance...
@jarroyer If you go to the generated applications directory and run `npm start`, that'll start the REST API server and will webpack the front-end. So if you navigate to `http://localhost:4200` you'll see the front end.
@karthikworks Perhaps take a look here: http://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service Double check your ports are correct as well, as in that stackoverflow link, the ports are different to what you have configured in your connection profile :)
@Jakeeyturner I just get a blank page that says "Invalid Host header". The app is run on an AWS computer and I navigated (from a different computer) to
@GrahamCharters I haven't looked too much into those errors, but I believe they can be safely ignored
@Jakeeyturner the ports seem to be correct...
@karthikworks in your certificate field you show single quotes. single quotes are not valid json, you need to use double quotes
@rodders1991 couple of things to try, have a look at the logs for the fabric to see if they show any problems, also turn on debugging for composer and see what errors there are. More info can be found at
http://stackoverflow.com/questions/42695751/how-do-i-see-the-logs-for-fabric-composer
@sstone1 - I was hoping that was the case, but I've just generated a Java Client from the Swagger and it doesn't compile. ScrapVehicle has the following reference but VehicleTransaction doesn't existing under definitions.
"logEntries": {
"type": "array",
"items": {
"$ref": "#/definitions/VehicleTransaction"
}
},
@sstone1 - I was hoping that was the case, but I've just generated a Java Client from the Swagger and it doesn't compile. ScrapVehicle has the following reference but VehicleTransaction doesn't existing under definitions.
"logEntries": {
"type": "array",
"items": {
"$ref": "#/definitions/VehicleTransaction"
}
},
@sstone1 - I was hoping that was the case, but I've just generated a Java Client from the Swagger and it doesn't compile. ScrapVehicle has the following reference but VehicleTransaction doesn't exist under definitions.
"logEntries": {
"type": "array",
"items": {
"$ref": "#/definitions/VehicleTransaction"
}
},
Has joined the channel.
When viewed in API Explorer it shows up as:
"logEntries": [
null
],
@sstone1 would you mind testing to see if my bna file deploys to hlf v0.6? i have tried deploying sample networks and it wokrs just fine but i can no longer deploy the one i created
i made a few changes to the business network and it won't deploy/update now
I'm getting an error from the front end of the Angular application saying "Error: Could not connect to REST server. Please check your configuration details." This is an Angular problem but is there a quick fix?
@jarroyer how are you running composer playground, is it through a docker container?
Has joined the channel.
@GrahamCharters could be similar to https://github.com/hyperledger/composer/issues/1048 with regards to returning an array will null in it. If you think it is similar please could you provide more details in the above issue or create a new issue if you think it is different.
Hi
sahil@ubuntu-1gb-composer:~/ftp/files$ composer network deploy -a marbles-network.bna -i admin -s adminpw
Deploying business network from archive: marbles-network.bna
Business network definition:
Identifier: marbles-network@0.0.8
Description: Marble Trading Network
Error: {"created":"@1495236947.733570390","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1495236947.733545222","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1495236947.733562422","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed
I am facing this issue when deploying hlfv1
Do i need to do any connection setup while building this bna file
When I run this in playground which deployed on the above mentioned server , it works fine
When I run this in playground which is deployed on the above mentioned server, it works fine
[ ](https://chat.hyperledger.org/channel/composer?msg=toNvbdKfD25nagfXW) @SahilKapoor
I'm also facing the same error
@SahilKapoor you didn't specify a profile to use for the network deploy command so it uses defaultProfile which is a hlf v0.6 profile. If you followed our getting started or one click install guides then as part of creating a development fabric runtime to work with, a profile called hlfv1 is also created to work with that runtime. You need to specify this profile for example
`composer network deploy -p hlfv1 -a marbles-network.bna -i admin -s adminpw`
@dselman that didn't fix it :/
Message Attachments
[ ](https://chat.hyperledger.org/channel/composer?msg=Y9ePC2oSTRqq9FWjv) @davidkel It worked.Thanks .. I followed https://github.com/hyperledger/composer/wiki/Tutorial-2 . Is there a way to edit this?
W
|___/ |_| |___/ |_|
? Enter your Fabric Connection Profile Name: hlfv1
? Enter your Business Network Identifier : marbles-network
? Enter your Fabric username : admin
? Enter your secret: adminpw
? Specify if you want namespaces in the generated REST API: always use namespaces
? Specify if you want the generated REST API to be secured: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -p hlfv1 -n marbles-network -i admin -s adminpw -N always
Discovering types from business network definition ...
Connection fails: Error: Failed to load connection profile hlfv1. Error was Error: ENOENT: no such file or directory, open
'C:\Users\Home\.composer-connection-profiles\hlfv1\connection.json'
It will be retried for the next request.
Error: Failed to load connection profile hlfv1. Error was Error: ENOENT: no such file or directory, open 'C:\Users\Home\.c
omposer-connection-profiles\hlfv1\connection.json'
at fs.readFile.then.catch (C:\Users\Home\AppData\Roaming\npm\node_modules\composer-rest-server\node_modules\composer-c
ommon\lib\fsconnectionprofilestore.js:87:23)
So do we need to paste connection.json in the above mentioned location
So do we need to paste connection.json in the above mentioned location?
1. So do we need to paste connection.json in the above mentioned location?
?
Connection.json is the one generated when deploying fabric v1 , right?
2. connection.json is the one generated when deploying fabric v1 , right?
You need to follow the HLF v1 quick start: https://hyperledger.github.io/composer/installing/quickstart.html
That will create the connection profile for you
(and Windows is not supported)
https://hyperledger.github.io/composer/reference/platforms.html
@dselman , that is done.. I was able to deploy the bna file as well.. So those things are already deployed in my ubuntu server. I was trying to create rest service from windows . I think create rest api should work from windows as the connection profile( C:\Users\Home\AppData\Roaming\npm\node_modules\composer-rest-server\server\config.js) contains the IP address of the server where fabric is installed. Let me try and paste the connectionprofile in windows and try again
Is this doesn't work then I will go for creating rest service from ubuntu where fabric is installed
You won't be able to run the rest server on Windows because grpc doesn't work -- which is the protocol the client uses to communicate with Fabric.
ohh
thanks
:)
Has joined the channel.
Hi @dselman
I was able to generate rest api
:thumbsup:
A question, how can i see all transactions ? If I can, filter can be applied to api like get all transaction for an asset id or for an userid? Can this be achieved in some other way like , java sdk for fabric or some cli commands or by composer somehow?
So in marble example , transaction module only one api to perform transaction
{
"$class": "org.hyperledger_composer.marbles.TradeMarble",
"transactionId": "string",
"marble": "string",
"newOwner": "string",
"timestamp": "2017-05-20T12:52:49.864Z"
}
Simplest approach is to persist all transactions at my end but then it does not serve the prupose.
Simplest approach is to persist all transactions at my end but then it does not serve the purpose.
Message Attachments
The latest code exposes transactions in the /system route
This code is not yet in a release (it should go out next Thurs). Too use it you will have to `npm install -g composer-rest-server@unstable` and also `npm install -g composer-cli@unstable`
You will need to redeploy your network using the unstable composer-cli for the unstable composer-rest-server to be able to connect to it.
ok
Thanks
@ASMP Can you check python version ?
Has joined the channel.
Has joined the channel.
I'm running on Mac using Fabric v1.0 alpha2 images . Tried to install the getting started composer application. Following issue was encountered
docker-compose -f docker-compose.yml up -d
Creating network "hlfv1_default" with the default driver
Creating ca_peerOrg1
Creating orderer0
ERROR: for orderer0 Cannot start service orderer0: driver failed programming external connectivity on endpoint orderer0 (c02ea088adbe06845be9455c5a5e71f8ce9308b96ff4e041e3e78bd893965448): Bind for 0.0.0.0:7050 failed: port is already allocated
ERROR: Encountered errors while bringing up the project.
npm ERR! Darwin 14.5.0
npm ERR! argv "/usr/local/Cellar/node/6.2.1/bin/node" "/usr/local/bin/npm" "run" "startHLF"
npm ERR! node v6.2.1
npm ERR! npm v3.9.3
npm ERR! code ELIFECYCLE
npm ERR! getting-started@1.0.0 startHLF: `scripts/start-hyperledger.sh`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 startHLF script 'scripts/start-hyperledger.sh'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! scripts/start-hyperledger.sh
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
@ASMP Composer doesn't support alpha2 at this time and you won't be able to make composer work with it, we are working on it though and hope to have something soon
That helps.. thanks
I've got node-gyp problems
:-(
Check you are on a supported platform and running a supported version of Node.
You will also need to install gcc/xcode to install native modules. See the pre-reqs.
Has joined the channel.
got around the npm-gyp error. Finally have Playground Composer installed locally. Had to follow option 2:http://www.hostingadvice.com/how-to/install-nodejs-ubuntu-14-04/#ubuntu-package-manager
will look at the pre-reqs to see what I missed. Used the script provided
@deselman any chance you can approve a HLVF1.0 blockchain request on bluemix?
from melvin.petties@gmail.com
would love to connect and test my model on the cloud
Other strange issue that I haven't been able to figure out is why the Vscode editor on ubuntu will not install the plugin. Says "installing" then flips back to "install"
Thinking maybe I don't have my ssh connection created/associated properly?
Hi, I struggle with filtering on the data model when using loopback Explorer. According to docs http://loopback.io/doc/en/lb2/Where-filter.html#operators there are number of operators but when I use something like {"where": {"keywords": {"inq": ["foo", "bar"]}}} I get 500 Err "invalid arg specified: [object Object]". Only a simple where clause works. My questions are, if anyone seen this before and aren't these operators supported with the models in composer? I'm using hlfv1.0.
@Pasteis those are not currently supported. You can only query based on the ID of an asset at the moment.
We are implementing support for complex query and exploting the Fabric v1.0 CouchDB support, and when that is available we can enable all of the LoopBack query functionality.
https://github.com/hyperledger/composer/issues/543
ok, good stuff. I will work out some client side magic for time being calling n times instead of a single array.
Hi, I was curious on how the composer ACL capabilities work when it comes to restricting read access to an asset or a property of an asset. My understanding is that Composer supports this, but how would this work? if I have an asset which contains an array of it's transaction history and I want to restrict access to the transaction history to the owner of the asset (where the owner of the asset can change over time), would I be able to restrict access? Also when we work with composer, we are creating query operations where we are not altering an asset, are those treated like any other transaction?
Has joined the channel.
How do I specify in which channel should I execute a bna?
@SahilKapoor It's defined in your connection profile (see https://github.com/hyperledger/composer/issues/1032 )
Hello I found the composer project exciting and will like to contribute to it.
I have setup the dev environment and was going through the code, i was able to link the dots till it reached the invoke Chaincode step.
From there onwards i didn't make out much on how the actual runtime engine written in js mapped to the chaincode written in 'go'.
Are there any design docs i can go through in order to better understand the implementation of composer?
0.
Hi @vinitesh - glad to hear you are interested in composer and would like to contribute :-) would you like to pick this up on the composer-dev channel?
@nkl199 ya sure thanks
let me know if you cannot access the channel - there has been a rocket chat bug preventing people from accessing it
Has joined the channel.
How to install compose locally on windows?
@nkl199 np i am able to access composer-dev channel
Hi @deepakvparmar, we currently do not support windows - a few people have experimented with it, and it really depends on how much you want to do on native windows. There is some documentation in a github task that goes into this a little more: https://github.com/hyperledger/composer/issues/65
Hi. Did anyone try connecting Playground to HLF v1? I imported connection profile, tried to connect with admin and with WebAppAdmin, but it gets stuck trying to connect. Any suggestions what I can check to try and debug that?
You tried using admin/adminpw
?
How are you running Playground? Locally or in a Docker container?
i'm running in a docker container, it is installed on the same system as HLF and Composer
I've tries admin/adminpw, yes
Message Attachments
@dstarina which version of playground do you have ?
Has joined the channel.
@davidkel I have installed hyperledger/composer-playground via docker - how do I check the version?
@dstarina That's an excellent question and is actually not easy to do (although it should be) the following command will do it
```
docker exec composer-playground cat /usr/local/lib/node_modules/composer-playground/package.json | grep composer-playground@
```
but I think I know the answer it will give :-) and as such the answer is the docker version of composer-playground cannot connect to hlfv1
@dstarina That's an excellent question and is actually not easy to do (although it should be) the following command will do it
```
docker exec composer-playground cat /usr/local/lib/node_modules/composer-playground/package.json | grep composer-playground@
```
@davidkel the command won't work, but since you already gave me the answer ... is the npm version the same?
@dstarina the command should work is you have the container created with the name composer-playground. If you do a `docker ps -a` what does it show ?
for example my output is
```
"raw": "composer-playground@0.7.2",
"_from": "composer-playground@0.7.2",
"_id": "composer-playground@0.7.2",
"raw": "composer-playground@0.7.2",
"_spec": "composer-playground@0.7.2",
```
It does ahow a hyperledger/composer-playground container
It does show a hyperledger/composer-playground container
bfcb8b2de24f hyperledger/composer-playground "pm2-docker compos..." 20 hours ago Up 20 hours 0.0.0.0:8080->8080/tcp elastic_beaver
try replacing the composer-playground in the command with bfcb8b2de24f
ok, thank you - i get the same result - 0.7.2
@dstarina there was a problem with 0.7.1 not being able to connect to hlfv1, but 0.7.2 would have fixed that
https://hub.docker.com/r/hyperledger/composer-playground/
Latest stable is 0.7.2
there are options for uploading certificates, is this also necessary to connect?
@dstarina not if you have a local hlf v1-alpha fabric set up using our quick start.
i do
well, not local. i have both the hlf and playground installed on a (same) remote server
@dstarina but it was setup through our quick start which doesn't enable TLS on that fabric runtime. The certificate information is needed only if TLS is enabled
yes, it was setup through the quick start
hi @dstarina when you say stuck, do you mean you're getting the spinning circle on the web UI?
yes
ah yes, it happened to me when i did this yesterday too. You get a bunch of grpc errors I don't understand, I restarted and it went away and the connection profile connected.
ah yes, it happened to me when i did this yesterday too. I restarted and it went away and the connection profile connected.
it was super annoying, and don't remember what exactly I did, though I know i did restart composer-playground and the browser. When it opened again, it went straight to using the 1.0 connection profile
@rfu2k you restarted composer-playground on the server?
I was running locally but right, closd the browser that stopped the running composer-playground instance. Then ran it again to start it up. Thing is I was trying a bunch of stuff and can't remember exactly what i did or what fixed it. It was pretty frustrating, but atleast you aren't the only one :)
I was running locally but right, closd the browser and stopped the running composer-playground instance. I didn't touch the underlying fabric. Then ran it again to start it up. Thing is I was trying a bunch of stuff and can't remember exactly what i did or what fixed it. It was pretty frustrating, but atleast you aren't the only one :)
I was running locally but right, closd the browser and stopped the running composer-playground instance. I didn't touch the underlying fabric. Then ran it again to start it up, the browser opened conncted to the 1.0 profile with empty registries etc ready to take new values. Thing is I was trying a bunch of stuff and can't remember exactly what i did or what fixed it. It was pretty frustrating, but atleast you aren't the only one :)
I was running locally but right, closd the browser and stopped the running composer-playground instance. I didn't touch the underlying fabric. Then ran it again to start it up, the browser opened with playground conncted to the 1.0 profile with empty registries etc ready to take new values. Thing is I was trying a bunch of stuff and can't remember exactly what i did or what fixed it. It was pretty frustrating, but atleast you aren't the only one :)
@dstarina Just noticed in your connection profile, the keystore location is not correct. As you are running the docker container it's home directory is /home/composer. You need to change that
@davidkel No, actually /home/composer does not exist on my system ...
@dstarina it exists in the playground docker container
oh, sorry, ok
@davidkel I've changed that, doesn't seem to help
I've restarted the docker container, cleared the playground cache, recreated the connection profile
where are playground logs located?
Has joined the channel.
@dstarina - with regards to the playground logging on a docker container, I believe that you are limited to either looking at the Docker log file, or the web console output directly (f12 option on web page) the latter option would likely be an easier option
VSCode extension for Hyperledger Composer has been updated to support ACL files and events.
https://marketplace.visualstudio.com/items?itemName=HyperledgerComposer.composer-support-client
A big, big thank you to @mgk for his contributions!
If you are editing CTO or ACL files the VSCode extension is a massive help.
Hi there, I noticed there is a new EventService in runtime. Any documentation on what it is about? :)
We plan to release this feature in version 0.7.3 this Thursday: https://github.com/hyperledger/composer/issues/66
@davidkel - FYI: I don't think the problem is related so I've raised: https://github.com/hyperledger/composer/issues/1055 .
@dstarina @rfu2k I've created a stack overflow entry which I hope describes what you see when trying to run composer-playground in a docker container trying to connect it to a local fabric and how to solve the problem. Let me know if I need to add more detail.
https://stackoverflow.com/questions/44117260/docker-version-of-composer-playground-is-not-able-to-connect-to-local-hlf-1-0-0/
The youtube video for last week's composer update is only about 4 minutes. Was that intentional or is there another place to download the recording? Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=WXG7KojAoHixKKFKf) @dselman @mgk can't seem to get the latest extension to show ACL highlighting...I'm at VSCode 1.12.2, Hyperledger Composer Extension for VSCode 0.7.2...have reloaded plugin and restarted VSCode several times, still no luck...thoughts?
Hi @jdockter, not much help other than to confirm replication right now - with the same level items, the highlighting of acl files is not showing for me either
Has joined the channel.
@nkl199 okay
Hi Guys, composer keeps throwing memory leak errors
(node:31087) Warning: Possible EventEmitter memory leak detected. 11 exit listeners added. Use emitter.setMaxListeners() to increase limit
or warnings
and the app hangs
``timed out waiting for transaction to complete``
Has joined the channel.
Hi Guys. I have just started understanding hyperledger-composer. One quick question if anyone can help, do we define registry in .cto file? if not, how are registries defined? Can some one point me to right direction?
Hi @jdockter what platform are you on, Windows, Linux or Mac? I know for sure it works on Windows, but it's possible that there is a problem on Linux or Mac? Also, can you confirm if it underlines "errors" in red (which is should ) to confirm if the problem is with Highlighting only or with Validation as well? Finally If you could raise me an issue I'll take a look...
Hi @jdockter what platform are you on, Windows, Linux or Mac? I know for sure it works on Windows, but it's possible that there is a problem on Linux or Mac? Also, can you confirm if it underlines "errors" in red (which it should) to confirm if the problem is with Highlighting only or with Validation as well? Finally If you could raise me an issue I'll take a look...
thanks
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=hbbynGzHS52XWhDTt) @pranavkaushik you don't need to define registries -- a registry is automatically created for each modelled type
[ ](https://chat.hyperledger.org/channel/composer?msg=924n35bmqmQYxdkfr) @berserkr are you closing admin/client connections?
Hi, i'm exploring the "security" feature of the REST server. Is there any documentation available about how this works? After enabling it, all my requests are rejected with error "AUTHORIZATION_REQUIRED"? how can i generate an access token? thanks!
@mgk Linux Ubuntu 14.04... no highlighting on any .acl file
k, thanks for the confirmation. Does it validate the file though?
k, thanks @jdockter for the confirmation. Does it validate the file though?
for example, type "rulez" instead of "rule" to force a parse error - you should see an error in the errors pane?
[ ](https://chat.hyperledger.org/channel/composer?msg=hyqq7NpfB9S88HqAP) @jogando have you read this https://stackoverflow.com/questions/43655553/how-to-authenticate-to-rest-api-and-map-to-fabric-credentials
no, i will take a look. Thanks!
@jdockter did you press the "reload" button after you installed?
I've just verified that it works for me -- but I did have to install the extension, and then press reload to activate the new version
Hi @dselman what platform are you running?
Hi @dselman what platform are you running - I think you are Mac right?
Is there a way in within the Bluemix Blockchain service to generate a connection profile file that one can download?
@mgk yes
[ ](https://chat.hyperledger.org/channel/composer?msg=CFgiYY2s5RtgdX88S) @DennisM330 no, but it is something we are interested in adding.
@deslman Thanks, trying to create a connection profile and include the certificate which needs to wrap in the file. Any good way to reformat the cert file when you download it?
Thanks for the confirmation @dselman . So we can confirm that Windows and Mac are fine with ACL files, but there is a problem with the Highlighting on Ubuntu. @jdockter if you could please raise an issue for this on the composer-vscode-plugin repo I'll take a look, thanks...
@dselman will events work with hlf v0.6?
yes
great
@DennisM330 check with @davidkel he may have some `awk` magic... :-)
An easy way would be to use cat file.txt | tr -d '\n'
Hi,
When i try to generate the angular 2 application
Everything gets generated correctly
** NG Live Development Server is running on http://localhost:4200 **
Hash: 268fc386ae4883fea006
Time: 17986ms
chunk {0} polyfills.bundle.js, polyfills.bundle.js.map (polyfills) 232 kB {5} [initial] [rendered]
chunk {1} main.bundle.js, main.bundle.js.map (main) 30.2 kB {4} [initial] [rendered]
chunk {2} styles.bundle.js, styles.bundle.js.map (styles) 183 kB {5} [initial] [rendered]
chunk {3} scripts.bundle.js, scripts.bundle.js.map (scripts) 435 kB {5} [initial] [rendered]
chunk {4} vendor.bundle.js, vendor.bundle.js.map (vendor) 3.51 MB [initial] [rendered]
chunk {5} inline.bundle.js, inline.bundle.js.map (inline) 0 bytes [entry] [rendered]
webpack: Compiled successfully.
But after this it just hangs
I am connecting to existing rest server
Any idea why it hangs
I am using hlfv1
@davidkel Thank you, the stack overflow entry describes the problem perfectly. I get an error when trying to connect the networks (I've added a comment to the stack overflow entry) ...
@dstarina looks like something was already listening on port 8080 when you tried to start the new container.
@davidkel David did you have an easier way to create the connection profile for Blockchain in Bluemix which includes the embedded cert?
Has joined the channel.
@SahilKapoor what do you mean by "hangs". If you navigate to http://localhost:4200 do you see anything?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=iqkZh8Pmy22ggpENT) @dselman Yup reloaded and restarted several times
[ ](https://chat.hyperledger.org/channel/composer?msg=7sRXKAnCKxfr3LRcL) @mgk I'm going to check with others on my team who have the same setup tomorrow just to make sure. If it's still an issue I will open an issue.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ao7SXaQNDqE3uvvwf) @dselman Thanks @dselman I am assuming registry is created for assets and participants and not for concepts. Please correct me if I am wrong.
Thinking about security, not sure if there is some documentation covering this, or how much is about Fabric rather than Composer
If assets and transactions have ACL's to prevent a competitor participant from viewing, what access can a competitor have to assets and transactions owned by another participant?
Can they access the underlying Fabric ledger to view assets/transactions?
Can they view the transaction processing function?
Can they view the logs of the transaction processing function?
How secure are ACLs?
Thanks
While executing command "npm install -g composer-cli", I am getting following errors :
Message Attachments
How does composer supports multi channel and multi ledger?
Has joined the channel.
@deepakvparmar please see https://hyperledger.github.io/composer/installing/prerequisites.html your level of node/npm is not supported. Also I highly recommend installing node/npm is a normal user. Don't install as root.
@pranavkaushik Could you elaborate more and perhaps summarize your requirements ?
@davidkel : Actually I am trying to install on VM running on Windows 7. Created vagrant environment of Ubuntu Trusty64 and Executed ./prereqs-ubuntu.sh script to install all required softarware.
@deepakvparmar make sure you uninstall any installed version of node that comes with the distribution first
@davidkel : Thank You, but I started with clean slate of ubuntu in which there was no NODE was installed previously.
@deepakvparmar the error you posted shows that there is a version of node installed and it is a very old version. Given it's location as well it looks like it is a version of node installed from the distribution package manager. Could you try issuing `sudo apt-get purge -y nodejs`
Hello guys, I am trying to create the archive for the new business network definition as mentioned in the getting started tutorial. but i ended up with the following error : No registered namespace for type net.biz.digitalPropertyNetwork.RegisterPropertyForSale.. what am i missing
Message Attachments
nevermind. it worked.
Hi @ashishbaju - I was running through the same sample to see if I was able to get past it, did it work after a second command run, or did it work but also display the above error message relating to namespace?
[ ](https://chat.hyperledger.org/channel/composer?msg=ngNBjpadA2JvuuXzD) @dselman Nope
[ ](https://chat.hyperledger.org/channel/composer?msg=ngNBjpadA2JvuuXzD) @dselman Nope. I have tried it by shutting down rest api first then generate the application and also the other way where rest api is up and running before angular application is generated. Every time it hangs at that point .
[ ](https://chat.hyperledger.org/channel/composer?msg=jGuvf8pRobvYZspJ3) @davidkel if you look at this link http://hyperledger-fabric.readthedocs.io/en/latest/case_for_fabric.html?highlight=multiple%20channel, which says "One of Fabric’s key innovations is the ability to run multiple Channel s on each network. This is how a network can conduct both highly confidential bilateral transactions and multilateral, or even public, transactions in the same solution without everyone having a copy of every transaction or run the code in every agreement". Now my question is around whether composer supports defining which transactions should occur on what channels
@pranavkaushik With composer, business networks are deployed to a specific channel. When you transact with that business network you only interact on that channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=LuZu6RZWRxsRgdSCo) @SahilKapoor I think that the Angular generator currently assumes that the composer-rest-server is generating routes with namespaces. What option did you try when you started the composer-rest-server. Can you please describe "hangs" in more detail. E.g. what processes and docker containers are running. What have you tried...
[ ](https://chat.hyperledger.org/channel/composer?msg=N87y7MSufyLYpy6uY) @abcoathup the answer to this is likely to get lost here. Can you post the question to StackOverflow please so we can include a more considered answer.
Has joined the channel.
Hi, this is maybe more a general Fabric question, but what is the best way to see what transactions have been created by Composer on the underlying Fabric?
I notice when I deployed my new bna file to Fabric, the peer reported 2 new transactions but I'm not sure how I can view these to see what has been done as part of the deployment.
```
2017-05-23 08:38:57.595 UTC [kvledger] Commit -> INFO 04d Channel [mychannel]: Created block [9] with 1 transaction(s)
2017-05-23 08:38:58.577 UTC [kvledger] Commit -> INFO 04e Channel [mychannel]: Created block [10] with 1 transaction(s)
```
Hi, this is maybe more a general Fabric question, but what is the best way to see what transactions have been created by Composer on the underlying Fabric? (edit: v1 alpha)
I notice when I deployed my new bna file to Fabric, the peer reported 2 new transactions but I'm not sure how I can view these to see what has been done as part of the deployment.
```
2017-05-23 08:38:57.595 UTC [kvledger] Commit -> INFO 04d Channel [mychannel]: Created block [9] with 1 transaction(s)
2017-05-23 08:38:58.577 UTC [kvledger] Commit -> INFO 04e Channel [mychannel]: Created block [10] with 1 transaction(s)
```
is this for fabric 0.6 or v1?
1.0 - apologies I always forget to mention which version
no worries. I believe that in v0.6 it would have been easier though https://fabric-sdk-node.github.io/Chain.html#queryTransaction__anchor does indicate that you can query for a specific transaction if you have the id
Something like the HLF Blockchain Explorer would be best. I'm not sure that has been ported to HLF v1 yet.
Hello, How to enable info level logs of chaincode container. I want to print console.log() statements from transaction processor function, currently it only logs on error. composer version is 0.7.2
@davidkel : Thank You, I could able to solve problem with "npm install -g composer-cli" , now I am getting following error while running "npm install" command in 'package/getting-started' folder.
Message Attachments
@deepakvparmar there could be a couple of reasons for this, assuming you aren't using sudo to run npm (as this will cause problems). The other reasons are 1. The version of python installed is not v2. what get's output when you do `python -V` ? Also you need to have gcc and make installed as well
Hi,
One question, if I want some private data that is shared between just two parties and not everyone, is it possible? Like if I am exchanging as asset and asset has a price which only want Part A and Party B should know but not everyone but everyone can know that red marble was exchanged between A n B. Is it possible without creating an implementation of side DB which is what Quorum does?
Message Attachments
@sstone1 We tried Wallet with this example https://github.com/sstone1/sample-bluemix-composer-app and worked fine. But we have a doubt on it. Scenario is this. An user has been issued an Identity after that he tries to login with userID - and is able to login because the wallet contains his certificate. Now our question is can anyone with his userID login ? What is the major thing we are missing on Wallet ?
Has joined the channel.
how can i contribute to the composer website?
@ashishbaju Try install node v6.9.5
@ashishbaju Try installing node v6.9.5
there is a guide for the website contribution within github: https://github.com/hyperledger/composer/tree/master/packages/composer-website
@davidkel : I am not using sudo with npm. python version is 2.7.6, gcc and make are also already installed
@deepakvparmar could you check to see of grpc was built. You find it in the lib directory of the level of node you are using, so for example on my machine the node version I am using is installed at
```
/home/ubuntu/.nvm/versions/node/v6.9.5
```
So the grpc binary would be in
```
/home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary
```
and is called grpc_node.node
[ ](https://chat.hyperledger.org/channel/composer?msg=gJFXYLwLajLz67xNk) @vinitesh if you are using HLF v1 you can use `print` instead as a workaround. Issue is here: https://github.com/hyperledger/composer/issues/1009
[ ](https://chat.hyperledger.org/channel/composer?msg=6eTPq3kh7vp5cwtaC) @SahilKapoor please discuss this issue here https://github.com/hyperledger/composer/issues/1043
Is anyone hitting any formatting errors with the latest docker-compose.yml for getting started v1 of fabric? The npm install is complaining about some parsing block mapping issues.
@dselman Thanks
@tennenjl getting started for composer or getting started for fabric ?
@davidkel getting started for fabric. I just fixed the indent problems and it started up
@davidkel getting started for composer. I just fixed the indent problems and it started up
@davidkel getting started for composer. I just fixed the indent problems and it started up. So I had to mod the docker-compose.yml file that was cloned via git clone https://github.com/hyperledger/composer-sample-applications-hlfv1.git
@davidkel getting started for composer. I just fixed the indent problems and it started up. So I had to mod the docker-compose.yml file that was cloned via git clone https://github.com/hyperledger/composer-sample-applications-hlfv1.git My instance failed with errors starting with line 1, where I needed to change the indentation for several lines.
@Jakeeyturner thanks. that worked
@tennenjl What level of docker-compose are you running ?
docker-compose version 1.11.2, build dfed245
docker-py version: 2.1.0
CPython version: 2.7.12
@davidkel docker-compose version 1.11.2, build dfed245
docker-py version: 2.1.0
CPython version: 2.7.12
[ ](https://chat.hyperledger.org/channel/composer?msg=Gu3QBs8tNSSQcf36o) @davidkel : I cannot find "grpc" folder inside ".../composer-cli/node_modules/"
@tennenjl David mentioned you have an issue with getting-started sample application with HLFV1, what is the problem?
@deepakvparmar yeah thought so, this would be why the connector fails to load. It means there was some problem installing the composer-cli but what the problem was I don't know as it sounds like you have all the right dependencies. You could try uninstalling and re-installing composer-cli
What is the best practice in locking down REST APIs? I only want transactions to be available but in those transactions I will be creating and updating assets.
@FenglianXu The first issue that I hit was that when I ran the npm install, the docker compose was failing with indentation issues for the docker-compose.yml file
@tennenjl You are working on composer not the getting started sample application, is this correct?
@FenglianXu I was using the getting started images via https://github.com/hyperledger/composer-sample-applications-hlfv1.git
@FenglianXu so in this case the yml file found here: composer-sample-applications-hlfv1/packages/getting-started/hlfv1
@jdockter Check out the ACL info here: https://hyperledger.github.io/composer/reference/acl_language.html
@tennenjl When did you download this git image?
this morning
@FenglianXu this morning
can you check if the docker-composer.yml file has couchdb enabled?
or send me this yml file
@FenglianXu It definitely had couchdb images enabled
@FenglianXu I have, although the version of composer-cli I am running is back-level
[ ](https://chat.hyperledger.org/channel/composer?msg=ZYsGikWETr2Zdt7ms) @davidkel : uninstalled using "npm uninstall -g composer-cli" and installed again without any error.
but I can not find folder called "grpc"....
have you installed npm install -g composer-cli before you run npm install yet?
ensure you have killed all existing docker containers, images and then go to the getting-started direct to run npm install
@FenglianXu I have, although I am running an older version
which version are you running?
Why would the version of composer cause a problem with docker-composer?
@FenglianXu v.0.5 I will update
Operating Systems: Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12
Docker Engine: Version 1.12.x
Docker-Compose: Version 1.8.x
Node: 6.x (note version 7 is not supported)
npm: 3.10.x
git: 2.9.x
we are using docker-compose v1.8.x
Are you using v0.5.0 for docker-compose?
update npm
@tennenjl do you mean you are using hyperledger composer v0.5?
@FenglianXu docker-compose version 1.11.2, build dfed245
docker-py version: 2.1.0
CPython version: 2.7.12
Message Attachments
@tennenjl your yml looks good to me and it works in my environment
wow
please following below steps:
run docker ps
@FenglianXu I had to modify it. Are you on a mac?
yeah i am on Mac
which OS are you using?
@FenglianXu 10.12.4
me to
me too
can you run docker images to see which images you have got
@FenglianXu Well if it works for everybody else, I'm good
okay
@FenglianXu I just modded the file to get it working. Not worth the time and effort. Interesting though
if you need any help let me know, for now I leave you to try-:)
@FenglianXu Much appreciated :-)
@tennenjl yw-:)
@deepakvparmar as you are using vagrant do you want to try a test vagrant environment I have ? It installs all the pre-reqs and should work. It's a xenial based one but I do have a trusty one as well
[ ](https://chat.hyperledger.org/channel/composer?msg=v5Frnu8pRiJgqScts) @davidkel : That would be great, Kindly share your Vagrantfile if you can share. You can send me file on deepakvparmar@gmail.com
Hi, running 'composer-playground' now results in an unhandled error event and no longer connects to my fabric network, can anyone help me understand or troubleshoot it please? It was working this morning and I don't believe anything has changed, but must be something..
```
HLFConnection :constructor() <
HLFConnectionManager :connect() < {}
ConnectorServer :connectionManagerConnect() < a4fef67b-e5fb-4385-b331-8ba320f5819a
events.js:160
throw er; // Unhandled 'error' event
^
Error: Connect Failed
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-playground/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._readsDone (/usr/local/lib/node_modules/composer-playground/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:169:8)
at readCallback (/usr/local/lib/node_modules/composer-playground/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:229:12)
```
Hi, running 'composer-playground' now results in an unhandled error event and no longer connects to my fabric network, can anyone help me understand or troubleshoot it please? It was working this morning and I don't believe anything has changed, but must be something.. I have done the basic checks - restarted the docker images, verified the connection profile is correct, restarted machine.
```
HLFConnection :constructor() <
HLFConnectionManager :connect() < {}
ConnectorServer :connectionManagerConnect() < a4fef67b-e5fb-4385-b331-8ba320f5819a
events.js:160
throw er; // Unhandled 'error' event
^
Error: Connect Failed
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-playground/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._readsDone (/usr/local/lib/node_modules/composer-playground/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:169:8)
at readCallback (/usr/local/lib/node_modules/composer-playground/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:229:12)
```
@deepakvparmar Here is my xenial test vagrant environment.
https://github.com/davidkel/ComposerVagrant/tree/master/TestXenial
copy all the files into the same directory then just do vagrant up
@rfu2k Are you using the one-click install capabilities or are you managing the docker containers yourself ? Because that problem is the fact that playground cannot communicate with your fabric and it could be done to network isolation between docker containers. More info about that can be found here
https://stackoverflow.com/questions/44117260/docker-version-of-composer-playground-is-not-able-to-connect-to-local-hlf-1-0-0
@rfu2k Are you using the one-click install capabilities or are you managing the docker containers yourself ? Because that problem is the fact that playground cannot communicate with your fabric and it could be down to network isolation between docker containers. More info about that can be found here
https://stackoverflow.com/questions/44117260/docker-version-of-composer-playground-is-not-able-to-connect-to-local-hlf-1-0-0
thanks @davidkel i had an existing network (1.0 alpha) and used npm install of composer-playground and setup the connection profile, it was working about 4 hours ago, and past couple of days, no idea what has changed since.. trying not to reinstall everything again if there's something stupid ive done that's causing it and easier to reverse.. :)
didn't have any luck fixing the error, deleted the containers and recreated the network and back up running again
Has joined the channel.
Has joined the channel.
@rfu2k I wonder if there was a problem with fabric, perhaps specific to running in a docker environment. I have seen other reports of something similar, but it was the initial alpha release. There is a new alpha2 release which we are working on and hope to release soon.
@rfu2k I wonder if there was a problem with fabric, perhaps specific to running in a docker environment. I have seen other reports of something similar, but it was the initial alpha release. There is a new alpha2 release of fabric which we are working to support and hope to release soon.
@garMobTest need invite to get in here, hope this helps :)
You're not *supposed* to need an invite...
I thought HL had fixed that. :-(
no invite needed
hi all, I am just starting with composer, so apologies in advance for the noob question :grimacing:
I am hitting an issue in the playground when i try to submit a transaction. I am using the `basic-sample-network` and created a `SampleParticipant` and a `SampleAsset`, but whenever I try to submit a transaction I get this error:
```
Error: Object with ID 'participantId:2947' in collection with ID 'Participant:org.acme.sample.SampleParticipant' does not exist
```
am I missing something?
hi all, I am just starting with composer, so apologies in advance for the noob question :grimacing:
I am hitting an issue in the playground when i try to submit a transaction. I am using the `basic-sample-network` and created a `SampleParticipant` and a `SampleAsset`, but whenever I try to submit a transaction I get this error:
```
Error: Object with ID 'participantId:2947' in collection with ID 'Participant:org.acme.sample.SampleParticipant' does not exist
```
am I missing something?
*edit*: scratch all of that....i had the wrong `owner` id in my `SampleAsset`....it's all good now :)
~hi all, I am just starting with composer, so apologies in advance for the noob question :grimacing: ~
~I am hitting an issue in the playground when i try to submit a transaction. I am using the `basic-sample-network` and created a `SampleParticipant` and a `SampleAsset`, but whenever I try to submit a transaction I get this error:~
```
Error: Object with ID 'participantId:2947' in collection with ID 'Participant:org.acme.sample.SampleParticipant' does not exist
```
~am I missing something?~
*edit*: scratch all of that....i had the wrong `owner` id in my `SampleAsset`....it's all good now :)
@laoqui
Has joined the channel.
Has joined the channel.
How do you get a python script to run on fabric composer?
or in general a for loop to run through the database and collect info?
state db?
only accessible through CC
or you could use default connectors for couchdb if you are using couchdb, username/pw are default I believe
isnt it running on a blockchain network when you run on composer?
Im relatively new to coding as well, what do you mean by CC
so the blockchain network is the DB?
No. You might find some of these links a good intro: https://developer.ibm.com/blockchain/
Thanks!
Has joined the channel.
Can I run composer-rest-server as a cloud foundry app in Bluemix? I want to have my rest api server that is pointing to my Bluemix instance of blockchain to also be hosted as a bluemix app, rather than running it locally. Is it as simple as copying the /usr/local/lib/node_modules/composer-rest-server directory on my local machine and pushing it to bluemix with an appropriate manifest.yml file?
Hi -- Is there a way to find the size of a `composer-client.Registry`? Based on the current size of the registry, I would like to manufacture a unique `id` for the next item by incrementing.
Has joined the channel.
Has anyone tried to deploy a bna file on OSx (exported from the Composer Playground) and come across a GRPC error? Any idea how to get around this?
Error: {"created":"@1495591858.444482000","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1495591858.444469000","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1495591858.444476000","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Has joined the channel.
@JennFoley have a look at https://stackoverflow.com/questions/44083753/when-attempting-to-deploy-a-business-network-i-get-an-error-failed-parsing-http
to see if it helps
[ ](https://chat.hyperledger.org/channel/composer?msg=j3cWvjZQxmi3rNbi8) @sanjay-saxena no there's no API to return the number of items in a registry. I don't recommend doing what you propose because on HLF v1 under load you will get optimistic transaction failures as multiple peers will be getting the size of the registries and there is no global lock. So peer0 may get a different value from peer1, which will cause your transaction to rollback. You need to be able to deterministically get the next id from the incoming transaction, which usually means computing it on the client.
[ ](https://chat.hyperledger.org/channel/composer?msg=iTmGfbEPYH9SGQCB3) @davidkel : Now, Everything is working, Thanks a lot David.
@davidkel : Only problem i am facing is all forwarded are port are not available, even though all ports are open. for example, getting such error for all forwarded ports "The requested address is not valid in its context. - connect(2) for "0.0.0.0" port 7501 (Errno::EADDRNOTAVAIL)"
@deepakvparmar if everything is running inside the vagrant box there shouldn't be an issue are you trying to connect to something from outside the vagrant box ?
[ ](https://chat.hyperledger.org/channel/composer?msg=jpgArCzXupzjnjQvZ) @davidkel : I will have to deploy bna file on bluemix fabric 0.6 service, I am assuming that I could able to do it.
@deepakvparmar you should be able to from that vagrant box. How did you get the error you described ?
[ ](https://chat.hyperledger.org/channel/composer?msg=beGHLiZEZLajhGptB) @davidkel : while running 'vagrant up' command after cloning your vagrant environment repository
@deepakvparmar strange as the vagrant box doesn't make use of port 7501
@deepakvparmar actually which Vagrant box were you trying ? I was assuming you were using TestXenial
[ ](https://chat.hyperledger.org/channel/composer?msg=BnkyJCRJaPZht9N4e) @davidkel : I used TCPView and natstat command to find out whether ports are consumed or not. but all ports are available. In fact, I have restarted machine couple of times, but still getting same error.
@davidkel : Using TestXenial only, but modified Vagrantfile to add some more ports. In fact, I was getting same error for 4200 port without modifying Vagrantfile as well.
@deepakvparmar If you only want to connect out from the box then you don't need those ports exposed and you should be able to communicate with bluemix fine. If you need to connect in (eg you run the rest server and want to browse to it from your machine) then you need to expose the ports. I've no idea why it's not able to expose the ports but I do know that there are problems with Vagrant 1.9.4 so try an earlier version such as 1.9.1
[ ](https://chat.hyperledger.org/channel/composer?msg=Gbygt7bvofgx4F7L9) @davidkel : I am having 1.9.3 Vagrant version. I have not faced this issue before as I could able to create Vagrantfile for trusty64 and forwarded ports in past.
[ ](https://chat.hyperledger.org/channel/composer?msg=qZ9Zky3ZhofiFgkrb) @davidkel so came in this morning and same error, seems every time i log out if i try and start 'composer-playground' again I get the clientduplexstream unhandled error. I don't know enough about docker to fix it, quickest way for me to get around it is deleting the containers and running the setup script again to rebuild the network and get back to working
@rfu2k that's useful to know. What platform are you on ?
@davidkel I'm on macOS Sierra 10.12.4, though it's a corporate image so may have had it's networking nobbled/gubbins interfered with
@davidkel I'm on macOS Sierra 10.12.4, though it's a corporate image so may have had it's networking nobbled/gubbins interfered with. Also it is Fabric 1.0 alpha I'm using, looking forward to the alpha2 release of Composer :)
@rfu2k Thanks for that. Docker on Mac is more complex as what it actually does is run a virtual machine with Alpine linux in a open source hypervisor implementation ported from netbsd, so there is a good chance this is related to this hypervisor environment so likely to be a docker issue.
Has joined the channel.
Hi, I am trying to deploy an archive on a local fabric instance. However I'm getting this error message ```Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID DEFAULT, received ]]
at ClientDuplexStream._emitStatusIfDone (/usr/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._receiveStatus (/usr/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:180:8)
at /usr/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:649:14```
the fabric version is 1.0
this is my connection profile ```{
"type": "hlfv1",
"orderers": [
"grpc://localhost:7050"
],
"ca": "http://localhost:8888",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/home/viktor/.hfc-key-store",
"channel": "testchainid",
"mspID": "Org1MSP",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}```
and I am using this docker-compose file https://github.com/yeasy/docker-compose-files/blob/master/hyperledger/1.0/docker-compose.yml
Anybody have any ideas on what might be going wrong?
Hi @Fanarito, it looks like you are pulling down yeasy images, which are not supported -you will have to use the official images that are available through the getting started guide
Has joined the channel.
@nkl199 I tried that but I always got the error `Error: Connect Failed`
I also changed the peer.yml files yeasy provides to use the correct images i.e. hyperledger/fabric-orderer:x86_64-1.0.0-alpha2
on the official containers I am now getting `Failed connecting to orderer:7050 , error: grpc: timed out when dialing`
I'll check on the fabric channel
I was trying to run it on the fabric getting started tutorial, sorry about that. It works now, thanks for the quick response guys
@Fanarito composer currently supports alpha1 only. Looking at the yeasy docker file it relies on testchainid which although appears to still work, isn't guaranteed and in fact the fabric team want to remove it. Can you provide more details on why you had problems with the running of the composer-sample-applications-hlfv1 ?
I was trying to run it on the fabric getting started tutorial, sorry about that. It works now, thanks for the quick response guys
Has joined the channel.
I want to build a hierarchical data model which looks like this:
N Items (indexed by SGTIN numbers) -> packed into a Case (indexed by SSCC)
M Cases (indexed by SSCC numbers) -> packed into a Pallet etc.
Key is that I need to track items through their life cycle even if they are packed in cases or pallets, hence I need the references. The way I have implemented it so far is as follows:
CTO file:
```
…
abstract asset TransportAsset identified by SSCC {
o String SSCC
o AssetStatus status
o String location optional
}
asset Case extends TransportAsset {
o AddItemToCase[] items optional
}
…
transaction AddItemToCase identified by transactionId {
o String transactionId
o String sgtin
--> Case case0
}
```
The resulting items embedded in the case are shown below. My question is if this is the correct approach to establish hierarchies or if there is another concept. If so, is there any example available?
get command:
http://fabriccomposer.jje.zc2.ibm.com:3000/api/net.biz.PropertyNetwork.Case
Reply:
```
[
{
"$class": "net.biz.PropertyNetwork.Case",
"items": [
{
"$class": "net.biz.PropertyNetwork.AddItemToCase",
"transactionId": "b8d3b8c2-56b9-4bef-8afe-070778464941",
"sgtin": "7680336987654.1",
"case0": "resource:net.biz.PropertyNetwork.Case#200.3",
"timestamp": "2017-05-24T12:26:25.604Z"
},
{
"$class": "net.biz.PropertyNetwork.AddItemToCase",
"transactionId": "f06b1975-2e83-4738-a0e0-dc375acffdb0",
"sgtin": "7680336987654.2",
"case0": "resource:net.biz.PropertyNetwork.Case#200.3",
"timestamp": "2017-05-24T12:26:28.476Z"
},
{
"$class": "net.biz.PropertyNetwork.AddItemToCase",
"transactionId": "e1c73eb0-504a-4fcf-99cb-e7357b4f6b56",
"sgtin": "7680336987654.3",
"case0": "resource:net.biz.PropertyNetwork.Case#200.3",
"timestamp": "2017-05-24T12:26:31.419Z"
},
{
"$class": "net.biz.PropertyNetwork.AddItemToCase",
"transactionId": "68e5363e-1b70-4605-b037-56cf5fd400f6",
"sgtin": "7680336987654.4",
"case0": "resource:net.biz.PropertyNetwork.Case#200.3",
"timestamp": "2017-05-24T12:26:34.277Z"
}
],
"SSCC": "200.3",
"status": "PACKED"
},
{
"$class": "net.biz.PropertyNetwork.Case",
"SSCC": "200.2",
"status": "COMMISSIONED"
},
{
"$class": "net.biz.PropertyNetwork.Case",
"SSCC": "200.1",
"status": "COMMISSIONED"
}
]
```
Hi @jje , it might well be worth checking out the perishable-network sample - that one is close to what you are trying to achieve. Specifically it makes use of "concepts", which might be applicable to your "items" in a crate
@nkl199 , thanks for the pointer. However I didn't really see the concept of a hierarchy there. Also, is there a good description available for the "concepts"?
[ ](https://chat.hyperledger.org/channel/composer?msg=5wXg6JoJmXFYDW42Y) @davidkel Thanks! That helps!
HI @jje, a concept is essentially a class that has no id. Whereas Assets, participants etc require an identifier, concepts do not. If you are not considering the lifecycle of the items, then it would be of use to you... however if you are considering the lifecycle of items and crates, then you will need to consider both items and crates as assets.
@nkl199: Thanks for the clarification, in this case I need to use assets...
@jje whilst it would depend on exactly what you wish to determine wrt items/crates, the animal-tracking sample might be more useful - in that one a business (Asset) has a relationship to an array of animals (assets)
@nkl199 : I have seen this and that is certainly closest to what I have in mind since animals are transferred to the receiver... I was however wondering if there is a more direct map of an example to what I have in mind since there are many examples (in logistics, supply chain, tracking of assemblies in planes, etc.) where these hierarchical asset relations exist.
I don't believe there are (yet) it would certainly make a good sample - the current ones are all more concrete and consequently applied to a specific realm
would you find the samples more useful if they were slightly more open ended, or perhaps even more granular?
are abstract participants now allowed in transactions?
are abstract participants not allowed in transactions?
I am trying to create a transaction that can happen between any of the participants, and all the participants inherit from an abstract participant
the tests work but when used on an actual blockchain it returns this error `Error: Object with ID 'Participant:org.acme.meats.Business' in collection with ID '$sysregistries' does not exist`
where Business is an abstract type
I am using this to get the registry `getParticipantRegistry(txn.business.getFullyQualifiedType())`
is this a reference to a participant within a transaction?
yes
that is allowed - and is in the vehicle lifecycle sample
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=HhTgAFdraLzq3hBt4) @dselman Thanks for the insight!
I have recently started looking into composer and tried playing in the playground. I am working on building Letter of Credit usecase. But I would like to know how attachments are supported in datamodel?
this could be done via a string that is a URL pointing to an external system
Has joined the channel.
Can I deploy composer network on to the IBM blockchain service? If so, which one specifically?
Hi
Earlier marbles example was deployed and rest services were working absolutely fine
I deployed some custom bna
I deployed fine
sahil@ubuntu-1gb-composer:~/ftp/files$ composer network ping -p hlfv1 -n doc-trax-v01 -i admin -s adminpw
The connection to the network was successfully tested: doc-trax-v01
version: 0.7.2
participant:
*transaction not found doct-trax-v01/mychannel*
why is transaction not found if it is deployed
Or do I need to create a separate channel though it should not be the case
@muratfirat people have had success deploying to bluemix running v0.6 and v1.0.0-alpha of hyperledger fabric
@SahilKapoor in your example you specified `doct-trax-v01` for rest-server whereas your ping tried `doc-trax-v01` which I suspect is your problem
@muratfirat Thanks for letting me know that I am an idiot ;)
Thanks
@davidkel thanks for the quick answer. could you please elaborate how i can go about doing that?
For v0.6 take a look at
https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
for v1.0-alpha maybe other people on this chat channel could share their experiences ?
Has joined the channel.
what is member ship -->
how to use it noob to hyperledger compose
Has joined the channel.
can anyone share a roadmap for composer? I'm also interested in any material that distinguishes what composer provides that fabric does not. thx
@aakaakar Check out https://hyperledger.github.io/composer/reference/cto_language.html and the section on relationships
@davidoevans project plans are here: https://github.com/hyperledger/composer/projects
They are tentative and subject to change based on community feedback and contributions
The big ticket items we are working on are: events (delivery tomorrow), ability to make a HTTP POST call from a transaction processor function (tomorrow?), running complex queries on world-state stored in CouchDB, lots of ACL and security/wallet improvements.
For an intro to Composer I recommend this video https://www.youtube.com/watch?v=fdFUsrsv5iw
@dselman for me as user, I'm excited tomorrow to have the new system REST call to return all transactions
Good! :-)
We aim to please...
Hi, are there any future plans to add endorsement policies to the chaincode that we deploy via composer? Thanks!
Yes, but the requirements are not well understood. If you have real use cases I'd love to hear them.
Hi, I am currently struggling with writing model/lib files for my network. The idea is to have network with 2 user types (Regulator, who can see everything and Owner, who can see some properties of all registered assets and can register his own assets). The assets should only be registered by and to the Owner and should not be changed later. So I have something like this and I know that js-file is not fully correct. Anyone who could help? (hlfv1, composer-playground Mac, all running smoothly). Thanks!
Message Attachments
The carauction-network does something very similar to what you describe. I suggest you import it into Playground and take a look at the model and the ACL file.
https://composer-playground.mybluemix.net/editor
Yes, I did look at quite some of the models. What is puzzling me is that there is a string in cto "o String newValue", which then is being processed in js-file and the state of the asset is being update on the blockchain (as far as I understand). I dont have this in my network - the Owner needs to register an asset ( i can do that with "create new asset") and have a proof registering it without being able to change the record anymore ( I assume I should do "submit Transaction" for that).
[ ](https://chat.hyperledger.org/channel/composer?msg=Lz7pyJN8GwcLcNSHz) @dselman Thanks. We were looking at a use case where ownership of some reference data is going to get transferred from one org in a network to another org in a network, where we may need endorsement signature from a peer from each org.
[ ](https://chat.hyperledger.org/channel/composer?msg=Lz7pyJN8GwcLcNSHz) @dselman Thanks. We were looking at a use case where ownership of some reference data is going to get transferred from one org in a network to another org in a network, where we may need endorsement signature from a peer from each org. I still am not completely clear on how the default endorsement policy works, but It seemed as if only required a single signature, which might not be sufficient for many use cases. I've posted a question on the fabric-questions channel to get confirmation. Thanks again.
[ ](https://chat.hyperledger.org/channel/composer?msg=iXfBwP4yjNecXrZHG) @jeffgarratt Hi Jeff, I was wondering if we ever determined what the default behavior was for the endorsement policy. The way I read the docs, that @davidkel referenced it seemed like only one signature was required, I posted this question on fabric-questions, but I saw the thread here and decided to ask. Thanks!
I am trying to run composer-rest-server and I am getting the following error:
`Discovering types from business network definition ...
Connection fails: Error: Error: signature does not verify
It will be retried for the next request.
Error: Error: signature does not verify
at TransactionContext.transactionContext.on (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlf/lib/hfcutil.js:91:28)
at emitOne (events.js:96:13)
at TransactionContext.emit (events.js:188:7)
at Timeout._onTimeout (/usr/local/lib/node_modules/composer-rest-server/node_modules/hfc/lib/hfc.js:970:22)
at ontimeout (timers.js:365:14)
at tryOnTimeout (timers.js:237:5)
at Timer.listOnTimeout (timers.js:207:5)`
The same command works on a different machine with the same connection.json in the .composer-connection-profiles directory. Did I miss something?
Message Attachments
Message Attachments
[ ](https://chat.hyperledger.org/channel/composer?msg=tp23rR8wwtprCMbiZ) @rama_rahul Try running npm install with --unsafe-perm flag. I was also getting the same error and this worked for me. Although i am having issues in npm test now but that i will look at later.
[ ](https://chat.hyperledger.org/channel/composer?msg=DKPsKY9EzZPp4axLa) @SanketPanchamia npm install --unsafe-perm
I have a very basic question on transaction flow in the hyperledger composer. As per the transaction flow that is done on the fabric given here, http://hyperledger-fabric.readthedocs.io/en/latest/txflow.html there are 6 steps that happen before the transaction gets committed to the ledger. There is endorsing, validation and execution of the transaction that takes place. How does all these steps map to the composer when i submit a transaction? I know there are default peers and orderers that get created when a network is deployed but i am unable to figure out how each step maps to the actual fabric transaction flow. Any insights will help.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=gXx7S3xukQaY4YKau) @dwakeman probably you have a cert from another fabric instance in your ` ~/.composer-credentials/` folder. Try deleting that and try again.
[ ](https://chat.hyperledger.org/channel/composer?msg=fRxDkEHpnd7mMnDow) @rama_rahul you should NOT use sudo when installing npm modules.
anyone experimented an error that says: """ t.toURI is not a function """ im doing this on composer running on localhost with the basic example
hi, is this the "basic-sample-network" that you are experimenting with?
@jordipainan stack trace please
Check Node version
@tennenjl I have lots of questions about endorsement policies and how they actually work in practice as it isn't at all clear from the documentation what might happen in various scenarios I can think up.
Hello @sstone1 Would you please take a look at the problem ?
https://github.com/hyperledger/composer/issues/1080
This is show stopper to use Hyperledger Composer as blockchain application. The problem has two different issues. One if gRPC timeout issue. And the other is multiple async operations (POST) against Hyperledger Fabric.
hi @ibmamnt , thanks for raising the issue, we are looking into it
@davidkel one example of an endorsement that is being requested on a project I'm associated with, is a participant owned peer requiring endorsement of a transaction of an independent peer. The independent peer would kind of act as a 3rd party notary
Thinking of an example off top of my head - if you have a car auction, with private encrypted bids, you may want to run a separate channel with the seller peer and auction peer (unencrypt bids client side, and pass the bids unencrypted to the contract and keep the data out of the common ledger). If you can invoke transaction to choose best bid, and have it endorsed by the auction peer it may act as a kind of proof that same result was calculated on both the seller and independent broker
@davidkel one example of an endorsement that is being requested on a project I'm associated with, is a participant owned peer requiring endorsement of a transaction of an independent peer. The independent peer would kind of act as a 3rd party notary
Thinking of an example off top of my head - if you have a car auction, with private encrypted bids, you may want to run a separate channel with the seller peer and auction peer (unencrypt bids client side, and pass the bids unencrypted to the contract, to keep the data out of the common business network ledger which has all participants). If you can invoke transaction to choose best bid, and have it endorsed by the auction peer it may act as a kind of proof that same result was calculated on both the seller and independent broker
@ibmamnt I have updated the issue with links to the Fabric issues that are the root cause. I don't think there's anything we can do about this at the Composer level. An application using base Fabric would show the same symptoms.
@dselman Thanks ! I have updated the comment too. Basically there is a work around for now, and personally dev team consider the possible work around, since this is show stopper class defect, and can not release product into the production. (Note that Bluemix does not provide test service for v1.0 except HSBC beta which can be expensive after GA for just testing).
@ibmamnt I don't think there is anything composer can do about the grpc timeout. It has to be handled by the fabric node sdk. I see you have raised a jira relating to it. I would highly recommend changing it's status from high to highest and also try to see if they will do anything for the v0.6 implementation
@davidkel I understood. For now, we are working around the problem by simulated "keep alive". That is, try to connect to Fabric within 3 minutes from application side by "ping" function which invokes "ping" query function inside chaincode.
hi, is there a way to run the composer-rest-server in a mocking mode? i.e. so that it won't need a real Composer runtime but still be able to deliver mock json messages?
this is to use it for testing a REST based client application
No, but there are a number of JS frameworks for mocking REST servers
[ ](https://chat.hyperledger.org/channel/composer?msg=wme6avoTy6yTjeQxA) @ibmamnt this won't work because it is usually the event hub connection which gets closed and kills the Node SDK.
@dselman alright, thank you
@dselman I understood.
@dselman Fixed, was my fault, network definition error
and the question, is it possible to get the asset or participant atributes via GET/POST ?
and if its possible, only Read or RW ?
@jordipainan you can do both -- use the composer-rest-server. https://hyperledger.github.io/composer/unstable/integrating/getting-started-rest-api.html
ok !! thk you so much for the fast answer :D
Message Attachments
if someone help could answer @SanketPanchamia question from above (copied below), I'd be really interested also. Next week I'll have to talk more on how Composer works and would appreciate understanding more how it maps to typical Fabric flow in technical sense
```
I have a very basic question on transaction flow in the hyperledger composer. As per the transaction flow that is done on the fabric given here, http://hyperledger-fabric.readthedocs.io/en/latest/txflow.html there are 6 steps that happen before the transaction gets committed to the ledger. There is endorsing, validation and execution of the transaction that takes place. How does all these steps map to the composer when i submit a transaction? I know there are default peers and orderers that get created when a network is deployed but i am unable to figure out how each step maps to the actual fabric transaction flow. Any insights will help.
```
if someone help could answer @SanketPanchamia question from above (copied below), I'd be really interested also. Next week I'll have to talk more on how Composer works and would appreciate understanding more how it maps to typical Fabric flow in technical sense
```
SanketPanchamia: "I have a very basic question on transaction flow in the hyperledger composer. As per the transaction flow that is done on the fabric given here, http://hyperledger-fabric.readthedocs.io/en/latest/txflow.html there are 6 steps that happen before the transaction gets committed to the ledger. There is endorsing, validation and execution of the transaction that takes place. How does all these steps map to the composer when i submit a transaction? I know there are default peers and orderers that get created when a network is deployed but i am unable to figure out how each step maps to the actual fabric transaction flow. Any insights will help."
```
Another question i have. I started creating my application using the empty business network in the HL composer. Initially i created a very basic application with a model file and a logic file. Now i want to add a Access Control file (permissions file (.acl) file) but it is not showing in the "Add new File" option. Any idea how i can get this?
Message Attachments
You can only have a single ACL file for a business network definition
- or do you mean that there is no ACL file in the BND, and you need to add one?
[ ](https://chat.hyperledger.org/channel/composer?msg=n9mnx9xJfpTwgny5P) @nkl199 Yes i need to add one. I only have a model and logic file
yeah - you should be able to do this via composer - please could you raise a github issue for this? A workaround would be to export your current definition, manually add the file, and then import it again
[ ](https://chat.hyperledger.org/channel/composer?msg=dzxXJBbqq5J7hAFmc) @nkl199 Ok i can raise an issue. I have the bna file exported on my local system. How do i add the acl file manually to it?
essentially the bna file is a zip file - you will need to place the acl file at the top level of the folder structure
@SanketPanchamia if i remember correctly the car auction example in gettingstarted folder has an access control list, perhaps you can view that and see where it goes/copy it over for a template
Message Attachments
[ ](https://chat.hyperledger.org/channel/composer?msg=bzzujQc4PkJCbpuXX) @rfu2k Exactly what i am doing :)
@rama_rahul seems it is erroring because the port 7054 is already used by another process
[ ](https://chat.hyperledger.org/channel/composer?msg=uD47BdwYSNaEGg9Yz) @rfu2k Any idea how to free that port?
I mean is there any general process to free a port
if you bring up a process manager like top you'll see what is bound to that port and kill it, kill it with righteous fire (assuming you don't need it)
@rama_rahul if you bring up a process manager like top you'll see what is bound to that port and kill it, kill it with righteous fire (assuming you don't need it)
@rama_rahul if you bring up a process manager like top you'll see what is bound to that port and kill it, kill it with righteous fire (assuming you don't need it). It could be from a previous deployment of the same thing.
[ ](https://chat.hyperledger.org/channel/composer?msg=fko4hz7Dhe6pKrNRM) @SanketPanchamia If i open the bna file, there are some special characters that i am not sure of. I think they are used for parsing the bna file. What is the best editor to open this file? I am using notepad++
[ ](https://chat.hyperledger.org/channel/composer?msg=bzzujQc4PkJCbpuXX) @rfu2k If i open the bna file, there are some special characters that i am not sure of. I think they are used for parsing the bna file. What is the best editor to open this file? I am using notepad++
[ ](https://chat.hyperledger.org/channel/composer?msg=Kzq5dAreCdyuCFqC4) @SanketPanchamia Try Visual Studio Code
@SanketPanchamia you don't need open the bna file itself, you're going into a world of hurt with that approach - permissions.acl is bottom file here :) https://github.com/hyperledger/composer-sample-networks/tree/master/packages/carauction-network
@SanketPanchamia you don't need open the bna file itself, you're going into a world of hurt with that approach - you can git clone the composer-sample-networks or just view the repo online - the permissions.acl is bottom file here :) https://github.com/hyperledger/composer-sample-networks/tree/master/packages/carauction-network
[ ](https://chat.hyperledger.org/channel/composer?msg=69XzWvM6GQ8ArMFXn) @rfu2k I don't know the commands to use. Please give them here if you know or any link which has the details.
@rama_rahul are you on a unix system? type 'top' (no quotes) in the command line and you should get a list of your processes come up. Look for one that is using port 7054. See if that works out first
[ ](https://chat.hyperledger.org/channel/composer?msg=Wm5o8gwGSPXF4jCTL) @rfu2k I can see the file but how do i ensure that it is part of my bna file? So when i import the bna file, this acl file comes up in the composer
[ ](https://chat.hyperledger.org/channel/composer?msg=HdXNDKLaic8EkTC23) @rfu2k I am on a unix system(Ubuntu 16.04). When I ran the command top. It showed a list but there is nothing concerning port 7054
@rama_rahul `sudo netstat -nlp`
[ ](https://chat.hyperledger.org/channel/composer?msg=txE7LoXSEqXt7xEv6) @davidkel Thanks!
Message Attachments
@rama_rahul the screenshot doesn't give any information as to what the error is so no idea what the problem is
Message Attachments
Message Attachments
Message Attachments
@davidkel : I am using your TestXenial Vagrant environment, but Ubuntu/Ubuntu as username/password is not working. I can only able to login using "vagrant ssh", not able to login using "putty"
@rama_rahul can you do `docker ps` as the error indicates a problem trying to talk to a fabric runtime
@deepakvparmar so I don't control the credentials of the xenial box, it's done by whoever uploads the vagrant box to the vagrant servers
Message Attachments
@rama_rahul so there is a problem with your fabric as the peer isn't running
[ ](https://chat.hyperledger.org/channel/composer?msg=YED2mGNfCkJtAeLa5) @davidkel Ohk I'll check it thanks
@davidkel : Thanks David , thought you might be knowing correct credentials :)
@deepakvparmar There is a way to find out, unfortunately I don't know the path on a windows box. In my machine the path is
`/Users/dave/.vagrant.d/boxes/ubuntu-VAGRANTSLASH-xenial64/20170224.0.0/virtualbox`
and in the Vagrantfile you will find the ssh password. But you could be on a different level box than me so may not be the same
Message Attachments
@rama_rahul composer won't be able to support that fabric environment. Composer will only work with the alpha1 release of hyperledger fabric at the moment.
@rama_rahul in your previous screen shots it looks like you were targetting v0.6 fabric with both the results of the ps and the composer commands you were trying
@rama_rahul in your previous screen shots it looks like you were targetting v0.6 fabric with both the results of the ps and the composer commands you were trying. The above is a version of the 1.0 runtime
@davidkel Can you give me some link where there are detailed instructions to setup latest hyperledger fabric.
@rama_rahul If you follow our quick start guide it will setup a simple fabric v1.0.0-alpha1 runtime
https://hyperledger.github.io/composer/installing/quickstart.html
@davidkel Will this be supported by composer?
@rama_rahul composer will work with that fabric runtime
[ ](https://chat.hyperledger.org/channel/composer?msg=DFLRphCupmbDGZoJ4) @davidkel Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=3wMpMWhksdv9ZvZ5S) @davidkel I was following the same and when I run " $npm install " in the third step I am getting the errors shown in the above screenshots
Hi, I'm trying out a REST (post) call to create a Vehicle in the Vehicle Lifecycle Network sample. The Swagger describes the following for the input:
{
"$class": "org.vda.Vehicle",
"vin": "string",
"vehicleDetails": {
"$class": "org.vda.VehicleDetails",
"make": "string",
...
I provided the following:
{
"$class": "org.vda.Vehicle",
"vin": "1234",
"vehicleDetails": {
"$class": "org.vda.VehicleDetails",
"make": "Fiat",
...
I got back a 200 OK with this response:
{
"$class": "org.vda.Vehicle",
"vin": [
null,
null
],
"vehicleDetails": {
"$class": "org.vda.VehicleDetails",
"make": "Fiat",
...
For some reason the vin appears to be an array of nulls. That doesn't seem right to me. Is this what is expected?
When I do a get to retrieve the vehicle everything looks fine and the vin is filled out correctly.
@rama_rahul so maybe the reason the v0.6 fabric (which you were following via the quickstart) failed to start correctly was you had other stuff running and there was a port conflict ?
Message Attachments
[ ](https://chat.hyperledger.org/channel/composer?msg=AoQYScZjwNwLGPEPj) @davidkel Don't think so. There were some port conflicts but I resolved all of them
@rama_rahul I recommend you uninstall node and re-install node under a general userid. don't install it as root and start again. It's far easier than trying to make it work the way you have installed it.
@dselman Thanks. I tried that too, but when I have nothing in ~/.composer-credentials I get a different error:
To restart the REST server using the same options, issue the following command:
composer-rest-server -p bmxHackathon -n pharma-network -i WebAppAdmin -s 5a628cc199 -N always
Discovering types from business network definition ...
Connection fails: Error: Identity or token does not match.
It will be retried for the next request.
{ Error: Identity or token does not match.
at /usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:417:17 code: 2, metadata: Metadata { _internal_repr: {} } }
root@510561e79ca0:~/.composer-credentials#
[ ](https://chat.hyperledger.org/channel/composer?msg=Q4FQEei6Kn9H4cexy) @davidkel Okay will try it!
I should also mention that it works on Mac but my docker container is ubuntu.
And I am connecting to a fabric 0.6 instance in Bluemix.
Has joined the channel.
@rama_rahul sudo npm install ... it looks like you are getting a permission error on the target directory
I'm getting an error trying to deploy a business archive.
I'm running hyerledger 1.0 alpha (built from source) and am running the network in the "composer-sample-applications-hlfv1/packages/getting-started/hlfv1" directory ("docker-compuse up").
I'm following the instructions here: "https://hyperledger.github.io/composer/business-network/getting-started-coding-bnd.html"
composer network deploy --archiveFile digitalLandTitle.bna --enrollId admin --enrollSecret adminpw
Deploying business network from archive: digitalLandTitle.bna
Business network definition:
Identifier: property-network@1.0.0
Description: A test hyperledger project
Error
Command failed
On the peer this just shows up as:
peer0 | 2017-05-25 12:48:16.659 UTC [eventhub_producer] Chat -> ERRO 026 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
PS running on an Ubuntu 16.4 VM
Any way to configure the "composer network deploy ..." command? Or does it just seek out and find the local fabric instace?
Any way to configure the "composer network deploy ..." command? Or does it just seek out and find the local fabric instance?
@ianco When I had that problem someone suggested leaving the version off the Identifier.
@ianco - ignore what I said - was thinking of the composer-rest-server step.
Follow up - restarted everything and tried the network deploy command again and this time got the following error:
Error: {"created":"@1495717583.032664365","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1495717583.032647485","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1495717583.032658749","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed
Hello guys, is there a place I can find more information on how I can use the permissions.acl file in composer. Basically I am looking to what are the different features I can use and how to use the modeling language to declare it.
[ ](https://chat.hyperledger.org/channel/composer?msg=6GEeJkgrTw2wPfPen) @jorgedr You can check the composer sample applications.
@ianco so couple of things if you don't specify a connection profile a v0.6 one is created and used called defaultProfile which causes the errors you are seeing. If you follow the quickstart then we suitable hlfv1 profile is created for you which will map to the fabric runtime we setup. When you say built from source and you say alpha do you mean alpha 1 or alpha 2 ? composer doesn't work with alpha2 at the moment
@davidkel thanks for the quick reply! I'll confirm the connection profile (I thought I did the quick start but may have missed a step) and I'll also check the version I'm running (probably alpha 2 ...)
[ ](https://chat.hyperledger.org/channel/composer?msg=6GEeJkgrTw2wPfPen) @jorgedr I would check out the reference doc on ACL here, https://hyperledger.github.io/composer/reference/acl_language.html
Thank you @jdockter @SanketPanchamia !
Hi All, just a reminder about the community call happening today at 4pm UTC (5pm UK, 12pm ET, 9am PT). Discussion topics include reviewing the features going into 0.7.3
Please join https://www.uberconference.com/hyperledger-community
@here 👆🏻
@davidkel Think I just got the answers from @jeffgarratt regarding default endorsement policies... The thread is in the #fabric-questions channel
@tennenjl So that hasn't really cleared things up for me. We really need more detailed documentation regarding how validating of endorsements are done. I'm also intrigued about what he meant that peers don't correlate 1-1 with MSPs
@davidkel my mud was not clear :)
@davidkel If I understood it correctly, then depending on the org the peer is associated with, it can have its own msp, so there isn't a 1-1 between peer and MSP
will defer to @jeffgarratt
@tennenjl correct. But all 4 peers in a scenario could belong to the same MSP
it is probably clearly to always include the tuple of (peer,org)
though a peer by config belongs to a single org wrt to signing
I was referring to how @tennenjl was utilizing the word peer wrt to endorsements, when it is clearer to refer to principals
@jeffgarratt My understanding is that a peer will have a single msp definition is it possible for a peer to have multiple ?
well, precise, maybe not clearer
correct, it has a single MSP identity wrt to signing
though theoretically their cert could have been signed by multiple MSPs
see the possible nuance wrt to MSP
this is where PKI concepts can be a bit confusing and complicated
my assumption is that @davidkel needs a more precise understanding of endorsement with respect to deployment of the composer chaincode
and perhaps the internal machinations of 0.6 may overlap to some degree with the endorsement policies of v1
@jeffgarratt so with respect to validation in order for a peer to validate doesn't it need access to crypto material from other msps in order to validate endorsements if that endorsement was signed by another msp (unless of course that peers msp identity has commonality with the other msps that facilitate it being able to validate with requiring extra crypto material ?)
Correct, the localMspConfig includes CAs
as well as the MSPConfig for the channel
so you would have to consider multiple layers. The first being the install and the instantiate of the composer chaincode.
@jeffgarratt ok, so the peer has access to MSP material when it joins the channel
correct, in the MSPConfig of the ApplicationGroup
correct, in the MSPConfigs of the ApplicationGroup
those were chosen and configured on channel definition
and must be a subset of a predefined consortium
have time for a hangout?
or a zoom conference?
@jeffgarratt Yes!
@davidkel
if you don't mind me listening
@jeffgarratt sure, need about 10 mins though
k
@jeffgarratt is 4pm ok ?
12 mins?
good for me
@jeffgarratt great
@tennenjl gonna convene in about 12 mins on the hour
@jeffgarratt really appreciate it. Thanks!
yw
I have recently started looking into composer and tried playing in the playground. I am working on building Letter of Credit use case. But I would like to know how attachments are supported in datamodel?
@tennenjl @davidkel David is swamped, asked to move to tomorrow. Will ping when the time is solidifed :) or as it occurs
@jeffgarratt @davidkel Thanks.. Appreciate you both sharing the wisdom.
Has left the channel.
@nehalshah50 do you need something in particular? I have been contemplating the idea of 'attaching' a doc to assets by storing a IPFS hash to the document as a string in the asset instance, just a field with the key of 'attachment' or whatever, like any other field. I guess you wouldn't want to attach actual files or large entities to the ledger but a pointer to the real thing.
@rfu2k Basically there could be many use cases like Letter of Credit where you would need to upload / download attachments for any changes to attachments should also be done through a new transaction. What I am thinking /suggesting is that Composer should support a special data type called 'Attachment' so that way it know that this value of such datatype requires system to allow upload/download of files. Files itself can be stored somewhere in fabric may be outside of the block. But its hash needs to be tracked within block as key/value pair or something. Watch one blockchain based demo here for the Letter of Credit usecase. https://www.youtube.com/watch?v=5wkkIaemSw4
@rfu2k Basically there could be many use cases like Letter of Credit where you would need to upload / download attachments. For any changes to attachments should also be done through a new transaction. What I am thinking /suggesting is that Composer should support a special data type called 'Attachment' so that way it know that this value of such datatype requires system to allow upload/download of files. Files itself can be stored somewhere in fabric may be outside of the block. But its hash needs to be tracked within block as key/value pair or something. Watch one blockchain based demo here for the Letter of Credit usecase. https://www.youtube.com/watch?v=5wkkIaemSw4
There's an entry on StackOverflow for this.
[ ](https://chat.hyperledger.org/channel/composer?msg=t2DXHvbsGfDde6kgJ) @dselman Yes. I created one there to track it and thank you very much for your response there.
@sstone1 - I was thinking of listening on the composer meeting similar to the one on May 11th https://github.com/hyperledger/composer/wiki/Meeting-11th-May-2017
Is there one going on this wek?
Is there one going on this week?
for the community call Please join https://www.uberconference.com/hyperledger-community
Yes, we are online now
Agenda is to review the new features and fixes in 0.7.3
facing the following error while running composer locally
ERROR: for vp0 Cannot start service vp0: oci runtime error: container_linux.go
247: starting container process caused "exec: \"sh\": executable file not found
in $PATH"
Recording from this morning's community call: https://www.uberconference.com/getmp3/AMIfv97uGXQDNYEbBWhwHpdHDMf-8050BN63bi7ANqBTUL3AFKQhd2SGUe21FctIX2IG8gkOyiZ7sQm5p1O9mJp1A0a0tmo_EMhbXWZ8Y03yDES2fP7PnnIAnVQLKTyS1Cmz660x5uguNu9yoQOJXQ5g3eN-yam1yQ.mp3
When I get this error using composer-rest-server to try and connect to a fabric 0.6 service in bluemix, what identity or token is it complaining about? I used the same connection profile in my ubuntu docker container (which fails) that I used on my mac (which works). I have nothing in my ~/.composer-credentials directory.
```To restart the REST server using the same options, issue the following command:
composer-rest-server -p bmxHackathon -n pharma-network -i admin -s 5e8b6a1ca3 -N always
Discovering types from business network definition ...
Connection fails: Error: Identity or token does not match.
It will be retried for the next request.
{ Error: Identity or token does not match.
at /usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:417:17 code: 2, metadata: Metadata { _internal_repr: {} } }
root@510561e79ca0:~/.composer-connection-profiles/bmxHackathon# ```
@here - a new release has just been made, please check the release notes for new features, fixes and shout-outs to new contributors :D https://github.com/hyperledger/composer/releases/tag/v0.7.3
@dwakeman is that the right enrollment id and secret for your bluemix instance?
Yes. got them out of the Service Credentials in the dashboard
(start with the simple stuff first!) ;-)
I've tried both admin and WebAppAdmin
I had a number of issues building my docker container, so I am worried that perhaps I don't have the right prereqs or something.
did you put the BMX certs into your connection profile?
yes
i copied the connection.json from my mac into my ubuntu container
[ ](https://chat.hyperledger.org/channel/composer?msg=HdPJ2aYjSsGpoHhhP) @nkl199 -- Does 0.7.3 support Hyperledger Fabric 1.0.0-alpha2?
@sanjay-saxena no -- it is still on Alpha1
[ ](https://chat.hyperledger.org/channel/composer?msg=qDMA8YWjzbs7xcvv7) @dselman -- thx!
we are working on the port to Alpha2 -- we deal with the Fabric API breakage so you don't have to... ;-)
@dwakeman so exactly the same connection profile works on Mac and doesn't work on Ubuntu?
That's a new one on me...
yes
lucky me that I found a new way to break something.
:sunglasses:
location of the certs dir?
did you modify that in your connection profile
You are on v0.6?
I got that from my service credentials. /certs/peer/cert.pem. yes on v0.6. Does that directory need to exist in my docker container?
I put the BMX certs in the connection.json. "certificate" and "certificate2" I don't have that directory.
My container does run as root, so I changed the keyValStore to "/root/.composer-credentials". Should I switch to a non-root user?
Does anyone know why the playground doesn't allow to save a new script file? Every time I create a new script file and then try to save the script file disappears. Also why it does not allow to define you own namespace?
@nehalshah50 i'm having a look at this one now
@nehalshah50 are you on the (latest) 0.7.3?
@dwakeman the fact that is works on Mac but not on Linux is very odd.
@dwakeman this path would have to exist on the client side: ` "keyValStore": "/home/composer/.composer-credentials",
`
i'm on linux and can confirm. and export retains all the files as per the playground
@dselman does it have to be the user `composer`? it is running as root and I have it set to `/root/.composer-credentials`
@nehalshah50 it won't save (actually deploy is the right word...) the business network if it has errors.
as long as the directory exists and the process running the composer client can access it, then it should work
ok. I only have composer-cli and composer-rest-server installed. is that all I need? I just want this container to be my rest server.
does the connection profile have the "networks" property, with your network listed?
yes, and I verified that the id is correct
can you try `export DEBUG=*` and then run `composer-rest-server` it might output something useful...
the trace log shows that it is picking up the connection profile and has all the right data from it, so I know it has access to it. I guess I will keep poking around and try a few things, including the debug. Thanks!
looks for certificate or auth failures when it tries to connect. these would come from the Fabric Node-SDK
maybe there are some clues in there
it could be some ssl library issue??
You are on Ubuntu 16?
no, 14.0.4
it's all up to date?
Node version good?
hmm... I see this in the debug, so it can't generate the cert..... ``` hfc [MemberServicesImpl.enroll] failed to create cert pair: err={"code":2,"metadata":{"_internal_repr":{}}} +10s
hfc [memberServices.enroll] err=Error: Identity or token does not match., enrollment=undefined +1ms
strong-globalize ~~~ lang = en a2487abefef4259c2131d96cdb8543b1 ["Error: Identity or token does not match."] /usr/local/lib/node_modules/composer-rest-server/node_modules/strong-globalize/lib/globalize.js +2ms
strong-globalize *** a2487abefef4259c2131d96cdb8543b1 not found for en. Fall back to: "Connection fails: Error: Identity or token does not match.
It will be retried for the next request." *** Error: E_MISSING_MESSAGE: Missing required message content `a2487abefef4259c2131d96cdb8543b1`. +2ms
Connection fails: Error: Identity or token does not match.
It will be retried for the next request.
loopback:connector:composer discoverModelDefinitions error thrown discovering list of model class declarations { Error: Identity or token does not match.
at /usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:417:17 code: 2, metadata: Metadata { _internal_repr: {} } } +1ms
loopback:boot:executor Async function finished /usr/local/lib/node_modules/composer-rest-server/server/boot/composer-discovery.js +1ms
{ Error: Identity or token does not match.
at /usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:417:17 code: 2, metadata: Metadata { _internal_repr: {} } }
```
I will update everything just to be sure. thx for the help!
This looks suspicious.. `Identity or token does not match., enrollment=undefined +1ms`
here is the whole trace..... ```Discovering types from business network definition ...
loopback:connector:composer discoverClassDeclarations {} +1ms
loopback:connector:composer ensureConnected +0ms
loopback:connector:composer ensureConnected +1ms
crypto Using sha3-256 +322ms
hfc Enrolling [req={"enrollmentID":"admin","enrollmentSecret":"5e8b6a1ca3"}] +85ms
hfc [MemberServicesImpl.enroll] [{"enrollmentID":"admin","enrollmentSecret":"5e8b6a1ca3"}] +1ms
hfc [MemberServicesImpl.enroll] Generating keys... +0ms
hfc [MemberServicesImpl.enroll] Generating keys...done! +103ms
hfc [MemberServicesImpl.enroll] Generating request! "3059301306072a8648ce3d020106082a8648ce3d0301070342000482ffd1d5700776f9262ae852ce980a22950da4c822122a0452e7908c06ff64e62ebe16fc978770e8a8141118d8d4a3ac8e695fcf44f7400afd59e255bc613fda" +2ms
hfc [MemberServicesImpl.enroll] Adding signing key! +1ms
hfc [MemberServicesImpl.enroll] Assding encryption key! +0ms
hfc [MemberServicesImpl.enroll] [Contact ECA] {"ts":{"seconds":{"low":1495744341,"high":0,"unsigned":false},"nanos":0},"id":{"id":"admin"},"tok":{"tok":{"buffer":{"type":"Buffer","data":[53,101,56,98,54,97,49,99,97,51]},"offset":0,"markedOffset":-1,"limit":10,"littleEndian":false,"noAssert":false}},"sign":{"type":0,"key":{"buffer":{"type":"Buffer","data":[48,89,48,19,6,7,42,134,72,206,61,2,1,6,8,42,134,72,206,61,3,1,7,3,66,0,4,130,255,209,213,112,7,118,249,38,42,232,82,206,152,10,34,149,13,164,200,34,18,42,4,82,231,144,140,6,255,100,230,46,190,22,252,151,135,112,232,168,20,17,24,216,212,163,172,142,105,95,207,68,247,64,10,253,89,226,85,188,97,63,218]},"offset":0,"markedOffset":-1,"limit":91,"littleEndian":false,"noAssert":false}},"enc":{"type":0,"key":{"buffer":{"type":"Buffer","data":[48,89,48,19,6,7,42,134,72,206,61,2,1,6,8,42,134,72,206,61,3,1,7,3,66,0,4,90,46,48,98,198,179,252,61,157,134,0,0,47,148,27,156,233,136,181,135,175,154,232,80,156,161,206,133,59,151,189,33,198,163,105,50,39,27,240,24,169,206,63,30,40,246,59,255,81,82,162,81,233,236,192,94,74,239,25,104,133,160,70,92]},"offset":0,"markedOffset":-1,"limit":91,"littleEndian":false,"noAssert":false}},"sig":null} +0ms
hfc [MemberServicesImpl.enroll] failed to create cert pair: err={"code":2,"metadata":{"_internal_repr":{}}} +10s
hfc [memberServices.enroll] err=Error: Identity or token does not match., enrollment=undefined +1ms
strong-globalize ~~~ lang = en a2487abefef4259c2131d96cdb8543b1 ["Error: Identity or token does not match."] /usr/local/lib/node_modules/composer-rest-server/node_modules/strong-globalize/lib/globalize.js +2ms
strong-globalize *** a2487abefef4259c2131d96cdb8543b1 not found for en. Fall back to: "Connection fails: Error: Identity or token does not match.
It will be retried for the next request." *** Error: E_MISSING_MESSAGE: Missing required message content `a2487abefef4259c2131d96cdb8543b1`. +2ms
Connection fails: Error: Identity or token does not match.
It will be retried for the next request.
loopback:connector:composer discoverModelDefinitions error thrown discovering list of model class declarations { Error: Identity or token does not match.
at /usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:417:17 code: 2, metadata: Metadata { _internal_repr: {} } } +1ms
loopback:boot:executor Async function finished /usr/local/lib/node_modules/composer-rest-server/server/boot/composer-discovery.js +1ms
{ Error: Identity or token does not match.
at /usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:417:17 code: 2, metadata: Metadata { _internal_repr: {} } }
```
[ ](https://chat.hyperledger.org/channel/composer?msg=j9x4f55mZH9axfdAp) @nkl199 [ ](https://chat.hyperledger.org/channel/composer?msg=Lm5XfP6iNnQLAZ7qk) @dselman Following what I was doing.
@dwakeman can you try copying the certificate for the admin user from your Mac box to your Linux box. Drop it into the ~/.composer-credentials dir
[ ](https://chat.hyperledger.org/channel/composer?msg=F8MiJHCmwom4x462F) @nehalshah50 I started by importing blank template..Added the model file then tried adding new script file...i copied code into it and tried to click deploy and the script file would disappear. Finally I got around by reusing existing template (ex. car-auction) and changing code.
@dwakeman it needs to go in your keyValStore dir
@dselman u mean the member.WebAppAdmin file in .composer-credentials?
@dselman that gives a different error about the TCert..... `hfc Failed getting a new TCert [Error: signature does not verify] +10s`
no, you were trying to connect as `admin` in the trace above
this time I ran it with WebAppAdmin
Use the same user as the one that works on the Mac, and copy that cert to Linux
but i did see some other missing value: ``` hfc Failed getting a new TCert [Error: signature does not verify] +10s
strong-globalize ~~~ lang = en a2487abefef4259c2131d96cdb8543b1 ["Error: Error: signature does not verify"] /usr/local/lib/node_modules/composer-rest-server/node_modules/strong-globalize/lib/globalize.js +4ms
strong-globalize *** a2487abefef4259c2131d96cdb8543b1 not found for en. Fall back to: "Connection fails: Error: Error: signature does not verify
It will be retried for the next request." *** Error: E_MISSING_MESSAGE: Missing required message content `a2487abefef4259c2131d96cdb8543b1`. +1ms
Connection fails: Error: Error: signature does not verify
It will be retried for the next request.```
ah, sorry. On my mac I used WebAppAdmin. My bad. forgot that I've been switching users back and forth trying stuff.
and that is the cert I copied to linux.
So, let's recap...
1. It runs fine on the Mac using WebAppAdmin
2. You copy the WebAppAdmin cert to Linux, putting it in the keyValStore dir
3. It fails with the error above...
yes. I assume by cert you mean the file named member.WebAppAdmin
The connection profile is identical except for the keyValStore location on both machines
yes
Node versions are the same
yes to connection profile.
no to node.... v6.10.2 on mac, v6.9.5 on linux
could my instance be out of TCerts? ``` hfc shouldGetTCerts: yes, we have no tcerts +1ms
crypto keypair:
I don't think so -- it downloads them in batches, it looks like it tries to get another batch and the certs don't match
can you humour me and try running in Linux, but as a non root user?
sure
I've seen npm modules that don't like running as root
that means I have to copy .composer-connection-profiles and .composer-credentials to the new user's home directory, right?
Got the same error. I think I am going to build a new container. I may have messed this one up with all my hacking. I'll report back tomorrow if it still doesn't work. Thx @dselman !
good luck!
Hi there, I am working with ACLs where I have a permissions file that looks like the following:`rule JeffReadAsset {
description: "Jeff can Read Resource with value = jeff"
participant: "org.ibm.test.User#jeff@mail.com"
operation: READ
resource: "org.ibm.test.Asset.value#jeff"
action: ALLOW
}
rule JeffCreateAsset {
description: "Jeff can Create Assets"
participant: "org.ibm.test.User#jeff@mail.com"
operation: CREATE
resource: "org.ibm.test.Asset"
action: ALLOW
}
rule OwnerCanDoAllOperationsConditionalRule {
description: "Description of the ACL rule"
participant(m): "org.ibm.test.User"
operation: ALL
resource(v): "org.ibm.test.Asset"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}`
Hi there, I am working with ACLs where I have a permissions file that looks like the following:`rule JeffReadAsset {
description: "Jeff can Read Resource with value = jeff"
participant: "org.ibm.test.User#jeff@mail.com"
operation: READ
resource: "org.ibm.test.Asset.value#jeff"
action: ALLOW
}
rule JeffCreateAsset {
description: "Jeff can Create Assets"
participant: "org.ibm.test.User#jeff@mail.com"
operation: CREATE
resource: "org.ibm.test.Asset"
action: ALLOW
}
rule OwnerCanDoAllOperationsConditionalRule {
description: "Description of the ACL rule"
participant(m): "org.ibm.test.User"
operation: ALL
resource(v): "org.ibm.test.Asset"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}`
Hi there, I am working with ACLs where I have a permissions file that looks like the following:
rule JeffReadAsset {
description: "Jeff can Read Resource with value = jeff"
participant: "org.ibm.test.User#jeff@mail.com"
operation: READ
resource: "org.ibm.test.Asset.value#jeff"
action: ALLOW
}
rule JeffCreateAsset {
description: "Jeff can Create Assets"
participant: "org.ibm.test.User#jeff@mail.com"
operation: CREATE
resource: "org.ibm.test.Asset"
action: ALLOW
}
rule OwnerCanDoAllOperationsConditionalRule {
description: "Description of the ACL rule"
participant(m): "org.ibm.test.User"
operation: ALL
resource(v): "org.ibm.test.Asset"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}
I then attempt to create an Asset as the participant jeff, but the create fails with a msg that jeff@mail.com does not have 'CREATE' access to resource
I then attempt to create an Asset as the participant jeff, but the create fails with a msg that jeff@mail.com does not have 'CREATE' access to resource org.ibm.test.Asset#ABCD
I then attempt to create an Asset as the participant jeff, where my participant id = jeff@mail.com but the create fails with a msg that jeff@mail.com does not have 'CREATE' access to resource org.ibm.test.Asset#ABCD
Any ideas on what I am doing wrong? Thanks!
@dselman Reporting back on my earlier issue with my docker container not connecting to fabric. I built a new ubuntu container and made sure to run updates and upgrades, so now it is 16.04. Still got the same error, tried a number of things. Turns out that I can't seem to use admin or WebAppAdmin, but I CAN use one of the other users! I tried it with user_type1_0 and it worked! it also seemed to create a member.user_type1_0 file for the cert in /home/composer/.composer-credentials. I tried the original attempt with WebAppAdmin and the cert present and not present and it failed, so I am still a bit stumped as to what's tripping it up, or where it's finding something it doesn't like. At the moment, though I will revel in the triumph of getting composer-rest-server running in a docker container to connect to my Bluemix instance of fabric! Thanks again for your help earlier.
@dselman @sstone1 any news on the event hub timeout fix for hlf v0.6?
@dselman okay, amending my last comment. I did get my container to work with an enrollID I hadn't used before, but when I deleted that container and created a new one, I got the same error when using that same enrollId. I tried a different one and it worked. I haven't figured out all the security yet, but it would appear as though composer is generating some sort of key based on the "hardware" address (or something unique to my mac or a docker container), and and then Blockchain is storing that key in the blockchain or somewhere. If it does that, and then I come along later and use the same enrollId with a different machine/container, it generates a different key. When it sends that key to Blockchain, it gets compared to the one "on file" and they don't match. I'm not sure that makes any sense but I am not copying anything but my connection profile into the container, so the mismatch must be coming from a value that gets generated in the client and a value that was previously stored in blockchain for the same user.
@torresjeff there is nothing the composer team can do about the event hub timeout fix. at this point, the fabric team are highly unlikely to fix v0.6. i know they are looking at fixing it for v1.0 though.
@sstone1 in theory, i shouldn't get any errors if i re-create the connection for every request right?
even when i do that i get the `Connection reset by peer` error
Has joined the channel.
also, is it posible with the events functionality in composer 0.7.3 to know when the event hub times out?
@davidkel : I am trying to deploy .bna file on my own fabric 0.6 network. to configure connection.json file, Is it mendatory to provide "eventhubURL"? as I cannot find URL for eventhubURL.
@dselman : Where i can find evenHubURL to configure connection.json file for fabric 0.6?
for my own fabric 0.6 network...
Has joined the channel.
@deepakvparmar connection profiles for v0.6 are described here
https://hyperledger.github.io/composer/reference/connectionprofile.html
eventHubURL is required and is on a port 2 above that of the peer url if you are using the v0.6 docker images
[ ](https://chat.hyperledger.org/channel/composer?msg=Y5JJhrEi57QE2ojAQ) @davidkel : Thank You David. I could find eventHubURL for fabric running on my local machine, any idea how I can find for blockchain service running on Bluemix?
@deepakvparmar bluemix should provide the ability to show the service credentials. And how to map those details is described here
https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service for v0.6
[ ](https://chat.hyperledger.org/channel/composer?msg=s3r8TTcivqhzEv8th) @davidkel : You are my time saver, Thanks a lot David :)
@dwakeman so my understanding of how this is *supposed* to work is as follows. You can generate a new enrollment id using Fabric APIs (we wrap these APIs for the Composer issue/revoke identity commands). Fabric creates an enrollment _secret_ for the enrollment id, which can be used *one time* to download the cert for the enrollment id from the certificate authority (it is *not* a password). Once you have the cert that is used to authenticate to Fabric and the enrollment secret is ignored. The default Docker images contain the enrollment ids and secrets for a bunch of default users. I'm using Bluemix does something different in this regard. So, I'm still surprised that you were not able to move the cert from the Mac to your Ubuntu machine and use it to authenticate.
@dwakeman so my understanding of how this is *supposed* to work is as follows. You can generate a new enrollment id using Fabric APIs (we wrap these APIs for the Composer issue/revoke identity commands). Fabric creates an enrollment _secret_ for the enrollment id, which can be used *one time* to download the cert for the enrollment id from the certificate authority (it is *not* a password). Once you have the cert that is used to authenticate to Fabric and the enrollment secret is ignored. The default Docker images contain the enrollment ids and secrets for a bunch of default users. I'm assuming Bluemix does something different in this regard. So, I'm still surprised that you were not able to move the cert from the Mac to your Ubuntu machine and use it to authenticate.
Do you fancy capturing this in a StackOverflow Q &A?
HI there, just checking back on my ACL Questions
HI there, just checking back on my ACL Questions Thanks!
HI there, just checking back on my ACL Questions So if I have a simple model definition which looks like this: namespace org.ibm.test
participant User identified by email {
o String email
}
asset Asset identified by assetId {
o String assetId
o String value
}
HI there, just checking back on my ACL Questions So if I have a simple model definition which looks like this: namespace org.ibm.test
participant User identified by email {
o String email
}
asset Asset identified by assetId {
o String assetId
o String value
}
Where I have created a participant jeff@mail.com
just wondering what ACL I would need to create to allow jeff@mail.com to create an asset
HI there, just checking back on my ACL Questions So if I have a simple model definition which looks like this: namespace org.ibm.test
participant User identified by email {
o String email
}
asset Asset identified by assetId {
o String assetId
o String value
}
Where I have created a participant jeff@mail.com
just wondering what ACL I would need to create to allow jeff@mail.com to create an asset.
I thought that
rule JeffCreateAsset {
description: "Jeff can Create Assets"
participant: "org.ibm.test.User#jeff@mail.com"
operation: CREATE
resource: "org.ibm.test.Asset"
action: ALLOW
}
HI there, just checking back on my ACL Questions So if I have a simple model definition which looks like this: namespace org.ibm.test
participant User identified by email {
o String email
}
asset Asset identified by assetId {
o String assetId
o String value
}
Where I have created a participant jeff@mail.com
just wondering what ACL I would need to create to allow jeff@mail.com to create an asset.
I thought that
rule JeffCreateAsset {
description: "Jeff can Create Assets"
participant: "org.ibm.test.User#jeff@mail.com"
operation: CREATE
resource: "org.ibm.test.Asset"
action: ALLOW
}
would work, but so far no luck. Thanks!
can concepts include relationships?
[ ](https://chat.hyperledger.org/channel/composer?msg=Cz73t5Qeia92GghCL) @dselman question on your comment...and I might be confusing topics...for v1 in all the local development we do thus far have used id admin and password of adminpw...are you saying we don't really need to use adminpw after we get our certificate established? Maybe I'm missing something at a Composer level that it's needed.
@Fanarito Yes concepts can include relationships
@Fanarito Yes, concepts can include relationships.
[ ](https://chat.hyperledger.org/channel/composer?msg=8rtdAuMDM7B3es4AT) @tennenjl alright thanks man
@tennenjl alright thanks man
@tennenjl alright thanks man
Has joined the channel.
My manager has asked me a question that got me thinking about Composer and 'concept' of smart contract, I'd like your feedback (anyone). With smart contract between different participants on network you operate, you can share the contract with them, and they can inspect and see what is involved to get to the result. To build a trust between you. With Composer, the Business Network becomes chaincode in itself so in real world does that mean you would share the composer cto and JS files with other participants for their inspection?
[ ](https://chat.hyperledger.org/channel/composer?msg=nqE94biywjwnzHT7i) @rfu2k It's my understanding participants would in most cases have their own peer in the network, that peer would be apart of a channel, each peer in the channel would have the composer cto model and transaction logic
@jdockter thanks for reply. The channel would have the deployed bna, and participants would have access to make calls against the transactions etc but I guess they would need access to the source code perhaps via a git repo shared with them. I'm curious how in real world it's handled, I've never deployed such an application in production and curious how the interactions between participants are handled in such a way :)
btw my understanding is that rather than participants most likely having a peer, it's more the other way around, with a peer handling multiple participants. From discussion with Fabric performance testers it seems it has focused on low number of peers (4) that would serve access to the business network to many participants, perhaps over the REST API with ACL enabled.
@jdockter thanks for reply. The channel would have the deployed bna, and participants would have access to make calls against the transactions etc but I guess they would need access to the source code perhaps via a git repo shared with them. I'm curious how in real world it's handled, I've never deployed such an application in production and curious how the non-technical interpersonal interactions between participants are handled in such a way.. if that makes sense :)
btw my understanding is that rather than participants most likely having a peer, it's more the other way around, with a peer handling multiple participants. From discussion with Fabric performance testers it seems it has focused on low number of peers (4) that would serve access to the business network to many participants, perhaps over the REST API with ACL enabled.
@jdockter thanks for reply. The channel would have the deployed bna, and participants would have access to make calls against the transactions etc but I guess they would need access to the source code perhaps via a git repo shared with them. I'm curious how in real world it's handled, I've never deployed such an application in production and curious how the non-technical interpersonal interactions between participants are handled in such a way.. if that makes sense :)
btw my understanding is that rather than participants most likely having a peer, it's more the other way around, with a peer handling multiple participants. From discussion on Fabric performance testing it seems it has focused on low number of peers (4) that would serve access to the business network to many participants, perhaps over the REST API with ACL enabled.
@dselman so I think there are really two different issues going on here.
1) when I copy a cert from my mac to ubuntu docker container, I get an error that says "signature does not verify".
2) when I don't have any certs in my .composer-credentials directory, I get an error that says "identity or token does not match", but ONLY for a user that I have previously used successfully to connect to fabric. If I use a user that has never been used, it works.
I will gladly write something up on Stack Overflow so we can move the conversation there. Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=HQ8KHGxWmj4myeCW9) @rfu2k I don't think there is much in the way of real world examples, especially with v1, in production
[ ](https://chat.hyperledger.org/channel/composer?msg=Cz73t5Qeia92GghCL) @dselman Yep, will do. Thanks!
Trying to connect to my Bluemix Blockchain instance using composer-rest-server following the stack overflow instructions on this topic. I get the following error. Any ideas where to look? express:router use '/' restUrlNotFound +0ms
express:router:layer new '/' +0ms
loopback:registry Attached model `PingResponse` to dataSource `composer` +2ms
loopback:registry Attached model `IssueIdentityRequest` to dataSource `composer` +0ms
loopback:registry Attached model `IssueIdentityResponse` to dataSource `composer` +1ms
loopback:registry Attached model `RevokeIdentityRequest` to dataSource `composer` +0ms
Discovering types from business network definition ...
loopback:connector:composer discoverClassDeclarations {} +1ms
loopback:connector:composer ensureConnected +0ms
loopback:connector:composer ensureConnected +0ms
crypto Using sha3-256 +226ms
hfc Enrolling [req={"enrollmentID":"admin","enrollmentSecret":"534f1d9460"}] +68ms
hfc [MemberServicesImpl.enroll] [{"enrollmentID":"admin","enrollmentSecret":"534f1d9460"}] +0ms
hfc [MemberServicesImpl.enroll] Generating keys... +0ms
hfc [MemberServicesImpl.enroll] Generating keys...done! +86ms
hfc [MemberServicesImpl.enroll] Generating request! "3059301306072a8648ce3d020106082a8648ce3d030107034200046e8e5951cebd7a2fc1054dda948a3742629d5ef41072e46c5da991a5ae992587d30f726fec49999129440a804817fb5c2c4c8d3218062931490a4164f9e348de" +2ms
hfc [MemberServicesImpl.enroll] Adding signing key! +0ms
hfc [MemberServicesImpl.enroll] Assding encryption key! +1ms
hfc [MemberServicesImpl.enroll] [Contact ECA] {"ts":{"seconds":{"low":1495806570,"high":0,"unsigned":false},"nanos":0},"id":{"id":"admin"},"tok":{"tok":{"buffer":{"type":"Buffer","data":[53,51,52,102,49,100,57,52,54,48]},"offset":0,"markedOffset":-1,"limit":10,"littleEndian":false,"noAssert":false}},"sign":{"type":0,"key":{"buffer":{"type":"Buffer","data":[48,89,48,19,6,7,42,134,72,206,61,2,1,6,8,42,134,72,206,61,3,1,7,3,66,0,4,110,142,89,81,206,189,122,47,193,5,77,218,148,138,55,66,98,157,94,244,16,114,228,108,93,169,145,165,174,153,37,135,211,15,114,111,236,73,153,145,41,68,10,128,72,23,251,92,44,76,141,50,24,6,41,49,73,10,65,100,249,227,72,222]},"offset":0,"markedOffset":-1,"limit":91,"littleEndian":false,"noAssert":false}},"enc":{"type":0,"key":{"buffer":{"type":"Buffer","data":[48,89,48,19,6,7,42,134,72,206,61,2,1,6,8,42,134,72,206,61,3,1,7,3,66,0,4,87,102,59,20,110,97,224,196,13,180,134,178,115,13,47,208,184,70,115,105,58,184,195,121,207,11,173,222,134,102,41,243,135,13,181,218,44,50,223,204,191,177,135,107,69,202,235,64,187,236,36,69,199,63,212,121,163,6,241,151,144,59,134,51]},"offset":0,"markedOffset":-1,"limit":91,"littleEndian":false,"noAssert":false}},"sig":null} +0ms
events.js:160
throw er; // Unhandled 'error' event
^
Error: {"created":"@1495806570.782419000","description":"EOF","file":"../src/core/lib/iomgr/tcp_posix.c","file_line":235,"grpc_status":14}
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:634:14
@DennisM330 Have you tried any other userids besides admin?
@DennisM330 Can you provide a bit more detail ? are you trying to connect to a V1 alpha or V0.6 system ? can you provide details of the connection profile you are using ?
Message Attachments
@davidkiel v0.6
@DennisM330 the urls aren't quite correct, they should start `grpcs://` (note the 's')
@dselman here is the stack overflow question for my composer-rest-server issue. thx!
https://stackoverflow.com/questions/44203938/issue-connecting-composer-to-blockchain-on-bluemix-identity-or-token-does-not
@davidkiel Thx, typo really got me! Got further. So where do I find the network ID I need to specify in Bluemix. I deployed a sample chaincode in Bluemix Discovering types from business network definition ...
Connection fails: Error: Error:Failed to launch chaincode spec(Could not get deployment transaction for 29314dd9b3af4e9fa6dc6c9cb20e37ea - LedgerError - ResourceNotFound: ledger: resource not found)
It will be retried for the next request.
Error: Error:Failed to launch chaincode spec(Could not get deployment transaction for 29314dd9b3af4e9fa6dc6c9cb20e37ea - LedgerError - ResourceNotFound: ledger: resource not found)
at TransactionContext.transactionContext.on (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlf/lib/hfcutil.js:91:28)
at emitOne (events.js:96:13)
at TransactionContext.emit (events.js:188:7)
at Object.callback (/usr/local/lib/node_modules/composer-rest-server/node_modules/hfc/lib/hfc.js:1807:42)
at /usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:422:14
@DennisM330 your connection profile should have a section called networks. Here is mine: ``` "networks": {
"pharma-network": "69ec9e74035743235f1245a75a4b7482fc4b900be369d75619b0af321d6c0b7b"
}```
I'm not sure where to get the names of the samples, but the id field is the chaincode ID, which you can get from the dashboard on the network tab.
I suspect the name can be anything you want, as long as it matches the name you specify with composer. But don't quote me on that, I haven't actually tested it. :slight_smile:
@dwakeman, Thx, appears the name can be whatever you want. Getting a timeout now. Will try to increase settings in profile to see if it helps. Discovering types from business network definition ...
Connection fails: Error: Error:Failed to execute transaction or query(Timeout expired while executing transaction)
It will be retried for the next request.
Error: Error:Failed to execute transaction or query(Timeout expired while executing transaction)
at TransactionContext.transactionContext.on (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlf/lib/hfcutil.js:91:28)
at emitOne (events.js:96:13)
at TransactionContext.emit (events.js:188:7)
at Object.callback (/usr/local/lib/node_modules/composer-rest-server/node_modules/hfc/lib/hfc.js:1807:42)
at /usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:422:14
Hi Anyone have ACLs working with a participant that is mapped to an identity? Thanks.
@tennenjl I have it working in playground at the moment, when I switch identities I can see the rules are being applied per participant
@rfu2k Many thanks, any permissions.json and model.cto that you would be willing to share. Trying to get Create permission working for a participant and so far I haven't had any success.
I have a permissions.acl not json, if that's your issue
I have a permissions.acl not json, if that's your issue (https://hyperledger.github.io/composer/reference/acl_language.html)
I have a permissions.acl not json, if that's your issue (https://hyperledger.github.io/composer/reference/acl_language.html) Just make sure it's in the top level of your project, same folder as package.json and the banananana file
Thanks all! Deployed my bna to Bluemix Blockchain v.6 and used composer-rest-server against it. Would be nice to have the composer-rest-server running in Bluemix and configurable to your Blockchain network in Bluemix
@rfu2k Ah yes, sorry I have permissions.acl Sorry about the typo
@DennisM330 That is exactly what I am working on at the moment. I'm trying to create a reusable docker image that can be used in Kubernetes or as a standalone container in the IBM Container service. Stay tuned.
Has anyone added a permissions.acl file into Composer? When adding a file only choices I see are script or model files. When I try to load an acl file it fails.
@guyho are you talking about the playground?
Yes
@guyho.. Give me a minute and I will try
@guyho I had the same issue
@tennenjl @DennisM330 seems to work without that file, maybe there's default behavior
@guyho you can't add it direct from composer, there was an issue to be raised for that, just create the file in your directory
@guyho I noticed that too. I was able to work around it by exporting my bna file, unzipping it, adding the acl flie, then using composer archive to create a new bna file that I imported back into playground.
^^ yep that's the way I've been doing it
^^ yep that's the way I've been doing it
[ ](https://chat.hyperledger.org/channel/composer?msg=dva4qCBeJ78RKAJmM) @dwakeman would also be interested in what your able to put together
@guyho I was just able to import my .bna file and I see my acl file
@dwakeman, Great news on the Docker image. One issue that is documented is the component-rest-server occasionally terminates when the network connection to the peer is reset
@tennenjl meaning you exported bna, unzipped, added an acl file, then reimported it?
if you have the folder and code, there's no need to export it every time if just changing the ACL. Edit it local and archive it back up, redeploy into playground
@guyho, no, I exported my .bna file and then imported it directly into sandbox, where it recognizes my ACL file
[ ](https://chat.hyperledger.org/channel/composer?msg=tofqt9xRfMKF9SZ5c) @jdockter Absolutely. I'm still working out some kinks, but hopefully early next week I will have a dockerfile that I can share. The big issue so far is one that I've posted above, regarding certs and the inability to "re-use" the same enrollment id from more than one machine. I have a workaround for the moment, just need to clean up and parameterize my dockerfile. Oh, and I should probably test my containers.:sunglasses:
[ ](https://chat.hyperledger.org/channel/composer?msg=tofqt9xRfMKF9SZ5c) @jdockter Absolutely. I'm still working out some kinks, but hopefully early next week I will have a dockerfile that I can share. The big issue so far is one that I've posted above, regarding certs and the inability to "re-use" the same enrollment id from more than one machine. I have a workaround for the moment, just need to clean up and parameterize my dockerfile. Oh, and I should probably test my containers. :sunglasses:
[ ](https://chat.hyperledger.org/channel/composer?msg=fqM7DGHKTgnjb2N59) @DennisM330 Yep, I saw that issue too. I am interested to see if Kubernetes will auto restart my containers when that happens.
my question is with Composer-Rest-Server, what does enabling security actually do? I thought maybe it applies ACL but seems just to lock everything down to 401 including calls from the admin user. I'm currently looking through the Git repo to try understand it, if anyone can let me know and save me some time
something I'm not sure about with ACL handling is that the asset is checked before the permission of the participant to carry out the act is checked. I ran a transaction operation against an asset with a participant who is denied the operation. I get the following message:
Error: Object with ID 'listingId:3857' in collection with ID 'Asset:net.biz.ryanexample.JobListing' does not exist
If I use an existing asset ID, I get the permission denied error message returned:
Error: Participant 'net.biz.ryanexample.Company#random' does not have 'CREATE' access to resource 'net.biz.ryanexample.DoSomething#...'
But if I was an attacker, I'd know that there is an asset at that listingId if I don't get the resource access error back first. I don't know in the real world how worrisome that is, seems I'd expect the access resource returned all the time for a participant who can't do the operation - no matter if the asset is there or not.
something I'm not sure about with ACL handling is that (it seems) the asset is checked before the permission of the participant is checked. I ran a transaction operation against a non-existing asset with a participant who is denied the operation. I get the following message:
Error: Object with ID 'listingId:3857' in collection with ID 'Asset:net.biz.ryanexample.JobListing' does not exist
If I use an existing asset ID, I get the permission denied error message returned:
Error: Participant 'net.biz.ryanexample.Company#random' does not have 'CREATE' access to resource 'net.biz.ryanexample.DoSomething#...'
But if I was an attacker, I'd know that there is an asset at that listingId if I don't get the resource access error back first. I don't know in the real world how worrisome that is, seems I'd expect the access resource returned all the time for a participant who can't do the operation - no matter if the asset is there or not.
something I'm not sure about with ACL handling is that (it seems) the asset is checked before the permission of the participant is checked. I ran a transaction operation against a non-existing asset with a participant who is denied the operation. I get the following message:
Error: Object with ID 'listingId:3857' in collection with ID 'Asset:net.biz.ryanexample.JobListing' does not exist
If I use an existing asset ID, I get the permission denied error message returned:
Error: Participant 'net.biz.ryanexample.Company#random' does not have 'CREATE' access to resource 'net.biz.ryanexample.DoSomething#...'
But if I was an attacker, I'd know that there is an asset at that listingId if I don't get the resource access error back first. I don't know in the real world how worrisome that is, seems I'd expect the access restriction returned all the time for a participant who can't do the operation - no matter if the asset is there or not.
something I'm not sure about with ACL handling is that (it seems) the asset is checked before the permission of the participant is checked. I ran a transaction operation against a non-existing asset with a participant who is denied the operation. I get the following message:
Error: Object with ID 'listingId:3857' in collection with ID 'Asset:net.biz.ryanexample.JobListing' does not exist
If I use an existing asset ID, I get the permission denied error message returned:
Error: Participant 'net.biz.ryanexample.Company#random' does not have 'CREATE' access to resource 'net.biz.ryanexample.DoSomething#...'
Is there a concern that if I was an attacker, I'd know that there is an asset at that listingId if I don't get the resource access error back first? I don't know in the real world how worrisome that is, seems I'd expect the access restriction returned all the time for a participant who can't do the operation - no matter if the asset is there or not.
Hi, I have a question. Is it possible to return an event from a composer application? If not, how can we return an error when processing a transaction?
@rfu2k I've promised multiple people over the last week that I'd get REST security documented by next week, so look out for that. basically it allows you to enable authentication of REST clients, and allows those clients to supply their own Blockchain identities.
Also that security problem is probably a bug and we should look into it, can you raise an issue on GitHub?
@dwakeman whats the difference between your Docker container and the hyperledger/composer-rest-server one?
The "official" one works in both Docker and Kubernetes, you just need to know the magic env vars to configure it 😉
@sstone1 I didn't know there already was one. I will gladly use it!
is it in dockerhub?
Yeah, it is published by the builds.
Ah, yes, I see. I enjoyed the exercise of building another image, but I will most gladly use the official one. Thanks!
Expect a doc on how to deploy a highly available REST server (or something along those lines) as well as the security stuff
I assume there are ENV variable for the network name, enrollment id and secret, connection profile, namespaces and security
I assume there are ENV variables for the network name, enrollment id and secret, connection profile, namespaces and security
Yeah
If you can find the Dockerfile for it in the Composer repo then I think they're listed with examples
Yep, I got it, thx!
Great, np 😄
although I don't see any examples of the arguments in there.
Hello, Is there any documentation for the new 'Emitting outbound events' feature? like the use and functionality of it.
Hello, Is there any documentation for the new 'Emitting outbound events' feature explaining the use and functionality?
Hello, Is there any documentation for the new 'Emitting outbound events' feature, explaining the use and functionality?
@vinitesh I've seen the following.. publish events - https://hyperledger.github.io/composer/business-network/publishing-events.html , subscribe to events - https://hyperledger.github.io/composer/applications/subscribing-to-events.html
also, https://github.com/hyperledger/composer/issues/66
thanks @jdockter
I may have asked this is the past but going to circle back around for sanity...in our model were trying to determine the pros and cons of one asset with many two concepts vs three assets that provide a relationship to each other.
I may have asked this is the past but going to circle back around for sanity...in our model were trying to determine the pros and cons of one asset with two concepts vs three assets that provide a relationship to each other.
With one asset I have this:
pro - simplicity to add and update, either via Loopback integration or REST. Also could provide easier analytics and complex query support down the road
con - only a single identified by key to lookup the asset, for now
With three assets I have this:
pro - each asset is it's own registry and thus can use identified by values to quickly lookup those assets individually
con - harder to maintain code to create and update linked assets over three different registries
Has joined the channel.
Any other obvious things I’m overlooking?
[ ](https://chat.hyperledger.org/channel/composer?msg=nqE94biywjwnzHT7i) @rfu2k the business network definition (source) is published to the ledger. We would like to add a new `composer` cli command to download the BNA from a running Fabric. You can already do that via API.
But, I agree that there is probably also a shared git repo that all the members (maintainers) of the network have access to, and this is where they review and approve changes to the models and logic.
Hi, I was setting up a hlfv1 business network on Mac following this tutorial (https://github.com/hyperledger/composer/wiki/Tutorial-2) in the wiki but the tutorial does not work for hlfv1. I was able to adapt it to work for hlfv1 and I created a new wiki page in a new repo with the steps to follow to create a hlfv1 solution.
@uchi 5 I'd love to see that -- I will be updating the tutorial next week and moving it into the official docs
I was wondering if it's possible to update the wiki with the tutorial for setting up a hlfv1 solution. I have opened an issue< https://github.com/hyperledger/composer/issues/1101, for this. Issue goes into more details and points to the commit on my repo with the fix. This is my first attempt so contribute to any project so I apologize if I am not doing anything right.
This is the tutorial (https://github.com/uchibeke/composer-wiki/blob/master/Composer-Solution-For-v1.md) I created by modifying the existing tutorial
:thumbsup:
You just saved me some time. THANK YOU.
Yes, we plan on getting this folded into the official docs next week, along with other doc changes.
Sounds good! I will love to help out with that or some of the open issues, if that's ok
We are always on the look out for contributors. Are you more of a Node.js, Angular, or something else?
I do both Node.js and Angular. I am hardly an expert, though. :grinning:
This might be a nice easy one to cut your teeth on and get used to creating a Pull Request: https://github.com/hyperledger/composer/issues/792
You can see the "Contributing to this repository" section here: https://github.com/hyperledger/composer
oops, that one has been fixed but not closed I think
Sure. No worries.
How about this one: https://github.com/hyperledger/composer/issues/757
It's a Playground fix
Sure. I will work on it later today. Thanks for passing it to me
Has joined the channel.
It looks this issue is fixed too. I just looked at the playground and `logic.js` is shown to be in the `lib` directory and the models are correctly shown to be in the `model` directory. https://github.com/uchibeke/composer-wiki/blob/master/side.png
@uchi 5 the doc is really good, where were you last week when I needed you?! Is there a wee typo in it (talks about Fabric 0.6, think it should be 1.0)
```
We are going to deploy the BNA file to Hyperledger Fabric v0.6, as used by the Quick Start we ran earlier to verify installation.
```
@uchi 5 the doc is really good, where were you last week when I needed you?! Is there a wee typo in it? (talks about Fabric 0.6, think it should be 1.0)
```
We are going to deploy the BNA file to Hyperledger Fabric v0.6, as used by the Quick Start we ran earlier to verify installation.
```
@uchi 5 the doc is really good, where were you last week when I needed you?! Is there a wee typo in it? (talks about Fabric 0.6, think it should be 1.0)
```
We are going to deploy the BNA file to Hyperledger Fabric v0.6, as used by the Quick Start we ran earlier to verify installation.
```
@dselman are there Fabric Composer stickers for contributors? you know we like to be bribed by stickers ;)
My bad! I apologize. I'll look through it again and push a new change
@uchi 5 dude! no need to apologize especially after putting all that together, we're indebted :thumbsup:
Haha @rfu2k.
Haha @rfu2k .
Yes, we need some Conga stickers... !
Come join the cult of the conga
@EdMoffatt -- can you hook us up with the PNGs of the congas that contributors can sport?
@uchi 5 this one is fresh! https://github.com/hyperledger/composer/issues/1092
Okay for any interested parties who were following my earlier threads on composer-rest-server, I thought I would report back. Thanks to @sstone1 I learned that we have an official docker image for it. I pulled the image but it took a few tricks to get it to work. The server uses environment variables to find your connection profile name, network name, enrollment id and enrollment secret. I put them in a file called fabricvars.list, which looks like this: ```COMPOSER_CONNECTION_PROFILE=bmxHackathon
COMPOSER_BUSINESS_NETWORK=pharma-network
COMPOSER_ENROLLMENT_ID=user_type2_0
COMPOSER_ENROLLMENT_SECRET=c949379c3f```
I then ran this command to create and run my container:
`docker run -p 3000:3000 --env-file ./fabricvars.list hyperledger/composer-rest-server`
That failed, though, because my connection profile wasn't there yet. So I used docker exec to attach to the container and create the /home/composer/.composer-connection-profiles directory. Then I created the /home/composer/.composer-connection-profiles/bmxHackathon directory. I disconnected and then used docker cp to copy my connection.json to the bmxHackathon directory. Then I stopped and started the container and it worked!
@dselman I still have the same issue with the certs, though. I've gotten this far by continuing to roll through the sample users that got enrolled with the bluemix blockchain service, but eventually I will run out of users.
That is not good. It sounds like a Fabric issue to me. Did you try posting to #fabric to see whether anyone else has had issues moving certs around.
no, but I did post the issue on stack overflow. I will post on fabric.
@dwakeman we also have an option to load a connection profile from an ENV var... So you can bake it
Let me find the SO entry...
https://github.com/hyperledger/composer/issues/602
@dselman Sure. I have confirmed that the issue still exists. I will start working on it tomorrow.
@dselman Sure. I have confirmed that the issue still exists. I start working on it tomorrow.
:thumbsup:
@dselman thanks! that will make it a bit easier to use. I will give that a shot.
@rfu2k I've updated the doc
In Composer Playground... Are there any more examples than "bond-network" that show a function that creates an asset? Curious if there's advantage to having a transaction/function create an asset (like "bond-network") or just use the +Create New Asset. If no function then how would an API be exposed to create them?
@guyho you need a transaction if you have additional business logic around just adding an asset to an asset registry. otherwise you can use the CRUD operations in the client APIs (AssetRegistry.add) or the POST /AssetType operation in the REST API
Has joined the channel.
how can i defined endorsement policy using composer ?also how I can i create channels
How can I create endorsement policy using composer ? also how I can I create channels? Can i see the transaction logs including blockchain
@RameshKunhiraman you can't create channels using composer. Composer is expecting an already existing channel to deploy to. Composer provide any way to create endorsement policies and so the default endorsement policy will be used.
In Composer 0.7.3, events can only be subscribed via composer client but is there any address which java can use to subscribe them.
In Composer 0.7.3,
1. Events can only be subscribed via composer client but is there any address which java can use to subscribe them.
2. If developing composer client app on windows, would it work i.e will it be able to connect to fabric? If so, I only need to copy profile in of the folders?
3. Getting started app is enough to get started or should we generate it via yo?
@SahilKapoor the Composer chaincode publishes events with an event ID of `composer` - if you can figure out how to use the Fabric Java SDK to subscribe to them, give it a go. The event ID is "internal" and so subject to change in the future.
I think Composer installs on Windows but will not deploy due to a bug in the Fabric SDK. You will need to copy in the connection profile.
https://hyperledger.github.io/composer/unstable/integrating/enabling-rest-authentication.html for anyone that wants to find out about securing the REST APIs generated by the Composer REST server (I've forgotten who I promised this to). There's another topic covering deploying the REST server which is also new: https://hyperledger.github.io/composer/unstable/integrating/deploying-the-rest-server.html
In the sample application on the playground, I can create multiple Identities against a single participantId. Can someone clarify if that is logical and if so, why?
Yes, that is logical. As a participant, I may want several identities to use across different systems - for example my laptop, my desktop, a remote web server - and I may want to revoke/refresh those identities independently.
so the participantId is what is recorded int the state database/blockchain...and the identity is what's used for authentication and access control?
...and someone could have multiple points they want to authenticate from?
the participants (and their ID) are recorded in the world state, and so is the mapping from identity (enrollment certificate in Fabric terms) to participant ID
are those separate ledgers?
...to keep identity separated from transactions?
(or perhaps separate channels)
which implies separate ledgers
no, a single ledger in a single channel.
at a business level - if i'm a car dealer that works at multiple dealerships, could I have a single participant id but and multiple identities I would use to authenticate on a Composer-based CarSales system?
yes. you can either distribute a single identity across all of the dealerships, or use multiple identities mapped to the same participant ID.
would the modelling difference be defined by associating a dealership as a property of a participant or an identity?
identities are not modelled. the car dealer participant might have an array of relationships to dealerships that they are authorized to work at?
identities are simply a badge/pass that lets you into the network, and each identity is mapped to a participant in the network
the ACL rules define what a participant can do
ah...thank you...this is very helpful
is there a docker image of composer playground i can install locally over fabric v1.0 yet?
you can download and run playground locally using docker:
`docker run -d -p 8080:8080 hyperledger/composer-playground`
once running, you can add a connection profile to fabric v1.0
there is no docker compose script as fabric v1.0 is a _bit_ more complicated to set up
but if you enjoy `curl | bash` style installers you can do it that way... hang on
`curl -sSL http://hyperledger.github.io/composer/install-hlfv1.sh | bash`
cool...will try that a bit later and i'm sure will be back with more questions. thanks again.
np
@davidoevans if you plan to try to run the playground docker container against a local fabric environment it's a bit more complex to do. The curl|bash installer mentioned by simon solves that problem but does install everything. If you already have a local fabric v1-alpha you want to work with then this stackoverflow article will provide more info.
https://stackoverflow.com/questions/44117260/docker-version-of-composer-playground-is-not-able-to-connect-to-local-hlf-1-0-0
thanks @davidkel i had a local fabric installed but that was about it so i was fine to tear it down and use the all-in-one hlfv1 curl package @sstone1 provided. the install and startup worked great so will try playing with that to model a business network and interact with it. thank you both.
great, np
Has joined the channel.
I noticed I haven't been able to create channels on the all-in-one composer hlfv1 installer, I asked about below error message in Fabric channel but the reply was I likely had a mismatch of images.. does anyone know what steps are required from the point of installing the composer all-in-one setup and getting the MSP manager configured?
```
hi, can someone help me create a new channel on my Fabric v1 setup?
I enter a peer (docker exec -it peer1 bash) and run the following command taken from online documentation
`peer channel create -c mynewchannel -o orderer:7050`
But i get this error:
`panic: Setting up the MSP manager failed, err KeyMaterial not found in SigningIdentityInfo
```
I noticed I haven't been able to create channels on the all-in-one composer hlfv1 installer, I asked about below error message in Fabric channel but the reply was I likely had a mismatch of images.. does anyone know what steps are required from the point of installing the composer all-in-one setup - til getting the MSP manager configured (and being able to create channels)?
```
hi, can someone help me create a new channel on my Fabric v1 setup?
I enter a peer (docker exec -it peer1 bash) and run the following command taken from online documentation
`peer channel create -c mynewchannel -o orderer:7050`
But i get this error:
`panic: Setting up the MSP manager failed, err KeyMaterial not found in SigningIdentityInfo
```
I noticed I haven't been able to create channels on the Fabric network created by the all-in-one composer hlfv1 installer, I asked about below error message in Fabric channel but the reply was I likely had a mismatch of images.. does anyone know what steps are required from the point of installing the composer all-in-one setup - til getting the MSP manager configured (and being able to create channels)?
```
hi, can someone help me create a new channel on my Fabric v1 setup?
I enter a peer (docker exec -it peer1 bash) and run the following command taken from online documentation
`peer channel create -c mynewchannel -o orderer:7050`
But i get this error:
`panic: Setting up the MSP manager failed, err KeyMaterial not found in SigningIdentityInfo
```
@sstone1 thank you for the REST API write up. Can i ask you a question about it with security arg set to false, I understand the rest server takes the identity of the user id/pass provided to it at start up. Am I correct in saying that the enrollment certificate for that user from Fabric CA is brought down into the wallet and used to sign calls into the network? (From reading the doc, I'm confused if the certfificate in the wallet mechanism was always there or is 'new' with the security arg set to true. But i guess it must always work like this, else it would be passing the user/secret every call?).
@sstone1 thank you for the REST API write up. Can i ask you a question about it with security arg set to false, I understand the rest server takes the identity of the user id/secret provided to it at start up. Am I correct in saying that the enrollment certificate for that user from Fabric CA is brought down into the wallet and used to sign calls into the network? (From reading the doc, I'm confused if the certfificate in the wallet mechanism was always there or is 'new' with the security arg set to true. But i guess it must always work like this, else it would be passing the user/secret every call?).
You're correct, an enrolment certificate is always bought down from the CA to sign calls into the network. With security = false, the enrolment certificate for the ID is always used. With security = true, an enrolment certificate for the logged in user is always used.
Perhaps I should have called the option "multiuser" rather than "security" as security = false gives the wrong impression.
Although we have also discussed splitting the option into two - one option to enable authentication with passport, another option to enable multiuser mode
is importing all definitions from other model-files supported? like: `import composer.base.*`
yep
was a recent change, so if you're on a really old version it may not work
thx
are there any tools or tips for taking a complex JSON schema and model it into assets/concepts in a cto file?
[ ](https://chat.hyperledger.org/channel/composer?msg=qxyWTv3tBQKj6WLRW) @sstone1 in section Configuring the REST server to use an authentication strategy...you show github...if I used a different passport strategy would the composer_providers json format (provider, module, etc.) stay the same or is that going to be unique per strategy?
can someone help me out? I'm getting this error:
```
Error: Object with ID 'Participant:org.chemical.barrels.base.NetworkMember' in collection with ID '$sysregistries' does not exist
```
Message Attachments
will it be possible to use the abstract definition as relationship?
Are there any examples of (JavaScript) clients that listen for events from Composer?
...or would events actually be received from the underlying fabric peer event url (i.e. grpc://peer0:7053)?
@davidoevans there are some details here about how to subscribe to events which may help
@davidoevans there are some details here about how to subscribe to events which may help
https://hyperledger.github.io/composer/applications/subscribing-to-events.html
great. thx @davidkel !
Has joined the channel.
Hi, I am trying to deploy a sample application to the composer as described in the docs:
https://hyperledger.github.io/composer/business-network/getting-started-coding-bnd.html
and I am getting a wired error:
```events.js:141
throw er; // Unhandled 'error' event
^
Error: ENOENT: no such file or directory, lstat 'C:\Users\TAL\AppData\Local\Temp\concerto117428-12348-1cfj5en\src\concerto\concerto.go'
at Error (native)```
A `concerto` directory is creating and disappearing in my temp directory while I try to deploy.
@bejavu unfortunately composer isn't supported on windows.
I am trying alot of stuff (both on mac and win) and each change I got a new error
`Calling enrollment endpoint failed with error [Error: Parse Error]` while on the CA i got: `2017/05/28 14:50:46 transport: http2Server.HandleStreams received bogus greeting from client: "POST /api/v1/cfssl/enrol"`
if I use your default connection profile I am getting: `Failed to set chaincode id on security context. Check that the connection profile defaultProfile defines the network digitalproperty-network`
@davidkel
Has joined the channel.
@bejavu Mac is supported and you will encounter a lot of problems trying to use windows. Can you describe how you have set up your environment on mac, such as node/npm levels, docker and docker-compose versions. Also which version of hyperledger fabric are you trying with v0.6 or v1.0.0-alpha ? If you want to get started without a real fabric you can install composer-playground as follows:
@bejavu Mac is supported and you will encounter a lot of problems trying to use windows. Can you describe how you have set up your environment on mac, such as node/npm levels, docker and docker-compose versions. Also which version of hyperledger fabric are you trying with v0.6 or v1.0.0-alpha ? If you want to get started without a real fabric you can install composer-playground as follows:
```
npm install -g composer-playground
```
then you can run composer playground by typing
```
composer-playground
```
You can then use it through your browser at `http://localhost:8080`
Hi. Using HL v1.0 + composer. I created a .bna file with the help of playground. Tried to deploy the .bna, I got the following error:Error: {"created":"@1496000313.733921895","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1496000313.733890480","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1496000313.733907259","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed
Hi. Using HL v1.0 + composer. I created a .bna file with the help of playground. Tried to deploy the .bna, I got the following error:
Error: {"created":"@1496000313.733921895","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1496000313.733890480","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1496000313.733907259","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed
Hi. Using HL v1.0 + composer. I created a .bna file with the help of playground. Tried to deploy the .bna, I got the following error:
`Error: {"created":"@1496000313.733921895","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1496000313.733890480","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1496000313.733907259","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed`
Hi. Using HL v1.0 + composer. I created a .bna file with the help of playground. Tried to deploy the .bna, I got the following error:
```Error: {"created":"@1496000313.733921895","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1496000313.733890480","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1496000313.733907259","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed```
Hi. Using HL v1.0 + composer. I created a .bna file with the help of playground. Tried to deploy the .bna, I got the following error:
Error: {"created":"@1496000313.733921895","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1496000313.733890480","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1496000313.733907259","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed
Hi. I'm using HL v1.0 + fabric composer. I created a .bna file with the help of composer playground. Tried to deploy the .bna, I got the following error:
Error: {"created":"@1496000313.733921895","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1496000313.733890480","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1496000313.733907259","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=oyTN5cff72uFrXcy6) @jdockter the format is per strategy but I think a lot of the fields are common, especially the OAuth based ones. For example, here's one for Facebook:
```
"facebook": {
"provider": "facebook",
"module": "passport-facebook",
"clientID": "INSERT_CLIENT_ID_HERE",
"clientSecret": "INSERT_CLIENT_SECRET_HERE",
"authPath": "/auth/facebook",
"callbackURL": "/auth/facebook/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
```
@dstarina that error means that you're using a v0.6 connection profile with v1.0 fabric, or a v1.0 connection profile with a v0.6 fabric
@sstone1 in ~/.composer-connection-profiles/ i have two folders, defaultProfile/ and hlfv1/ - where do I tell composer which of the two to use?
how are you doing the deploy?
if using the composer CLI, you should add the argument `-p hlfv1`
I used the quickstart. Not sure if defaultProfile existed before or was created when I tried to connect with playground
defaultProfile gets created by the CLI when you don't specify a `-p` option
it's a bit weird, so we're going to remove that
Deployed successfully. Thank you!
np
[ ](https://chat.hyperledger.org/channel/composer?msg=ZeXPSCYghasWXYCpZ) @davidkel any plans to support composer on Windows at some point?
@greg2git https://github.com/hyperledger/composer/issues/65
PRs gladly accepted
note we're only thinking of supporting Windows 10 with native Docker support
Has joined the channel.
@davidkel Hi, I set it up using dockers as you described in your tutorials.
```#!bash
docker ps -aq | xargs docker rm -f
docker images -aq | xargs docker rmi -f
docker pull hyperledger/fabric-baseimage:x86_64-0.1.0
docker tag hyperledger/fabric-baseimage:x86_64-0.1.0 hyperledger/fabric-baseimage:latest
docker-compose up -d
```
I am connecting to the playground using my docker ip: `http://192.168.99.100:8080` which works fine.
I also having two connection profiles:
```{
"name": "testing v1",
"description": "A description for a V1 Profile",
"type": "hlfv1",
"tls_disable": true,
"orderers": [
{
"url": "grpc://192.168.99.100:7050",
"cert": "",
"hostnameOverride": ""
}
],
"channel": "mychannel",
"mspID": "Org1MSP",
"ca": "http://192.168.99.100:7054",
"peers": [
{
"requestURL": "grpc://192.168.99.100:7051",
"eventURL": "grpc://192.168.99.100:7053",
"cert": "",
"hostnameOverride": ""
}
],
"keyValStore": "/Users/TAL/.composer-credentials",
"deployWaitTime": 300,
"invokeWaitTime": 30,
"users": [
{
"username": "WebAppAdmin",
"secret": "DJY27pEnl16d",
"enrollId": "WebAppAdmin",
"enrollSecret": "DJY27pEnl16d"
}
],
"securityEnabled": false
}```
and
```{
"type": "hlf",
"membershipServicesURL": "grpc://192.168.99.100:7054",
"peerURL": "grpc://192.168.99.100:7051",
"eventHubURL": "grpc://192.168.99.100:7053",
"keyValStore": "/Users/TAL/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}```
This is the windows setup but I did the same in mac.
I got this two errors while trying to connect to each connection profile:
@davidkel Hi, I set it up using dockers as you described in your tutorials.
```#!bash
docker ps -aq | xargs docker rm -f
docker images -aq | xargs docker rmi -f
docker pull hyperledger/fabric-baseimage:x86_64-0.1.0
docker tag hyperledger/fabric-baseimage:x86_64-0.1.0 hyperledger/fabric-baseimage:latest
docker-compose up -d
```
I am connecting to the playground using my docker ip: `http://192.168.99.100:8080` which works fine.
I also having two connection profiles:
hlf1:
```{
"name": "testing v1",
"description": "A description for a V1 Profile",
"type": "hlfv1",
"tls_disable": true,
"orderers": [
{
"url": "grpc://192.168.99.100:7050",
"cert": "",
"hostnameOverride": ""
}
],
"channel": "mychannel",
"mspID": "Org1MSP",
"ca": "http://192.168.99.100:7054",
"peers": [
{
"requestURL": "grpc://192.168.99.100:7051",
"eventURL": "grpc://192.168.99.100:7053",
"cert": "",
"hostnameOverride": ""
}
],
"keyValStore": "/Users/TAL/.composer-credentials",
"deployWaitTime": 300,
"invokeWaitTime": 30,
"users": [
{
"username": "WebAppAdmin",
"secret": "DJY27pEnl16d",
"enrollId": "WebAppAdmin",
"enrollSecret": "DJY27pEnl16d"
}
],
"securityEnabled": false
}```
and defaultProfile:
```{
"type": "hlf",
"membershipServicesURL": "grpc://192.168.99.100:7054",
"peerURL": "grpc://192.168.99.100:7051",
"eventHubURL": "grpc://192.168.99.100:7053",
"keyValStore": "/Users/TAL/.composer-credentials",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}```
This is the windows setup but I did the same in mac.
I got this two errors while trying to connect to each connection profile:
```PS C:\Users\TAL\Workspace\composer_test> composer network list -n digitalproperty-network -i WebAppAdmin -s DJY27pEnl16d -p hlf1
× List business network digitalproperty-network
Calling enrollment endpoint failed with error [Error: Parse Error]
Command succeeded
PS C:\Users\TAL\Workspace\composer_test> composer network list -n digitalproperty-network -i WebAppAdmin -s DJY27pEnl16d
x List business network digitalproperty-network
Failed to set chaincode id on security context. Check that the connection profile defaultProfile defines the network digitalproperty-network```
again this is the windows setup, the mac one is the same
@bejavu based on your excerpt for the docker setup it looks like you are trying to start a fabric v0.6 environment, so using -p hlfv1 is not going to work. Composer network list needs to get the chaincode id from the connection profile you are using to talk to digitalproperty-network business network. However if you haven't deployed digitalproperty-network using the command line then defaultProfile won't have been updated with that information and so won't be able to perform the list. If you deployed using playground you can export the connection profile and hopefully that connection profile contains the data to correlate the chaincode id with a business network. Note that this is not an issue if you use a v1.0.0-alpha fabric rather than a 0.6 one.
Has joined the channel.
@davidkel Thank!
So, how do I deploy v1?
Message Attachments
Hi All,
I'm working on fabric for last few weeks. In my old system I was able to create a bna file and deploy it. Create a RESTFul web service calls. Today in a new system I started following steps given in Quickstart guide and I'm getting time out exception. I tried increasing the time out but no luck.
Versions: composer-cli v0.7.3, composer-admin v0.7.3, composer-client v0.7.3,
Is there any issue with the latest Quickstart guide? or did I miss any step?
Hi All,
I'm working on fabric for last few weeks. In my old system I was able to create a bna file and deploy it. Create a RESTFul web service calls. Today in a new system I started following steps given in Quickstart guide and I'm getting time out exception. I tried increasing the time out but no luck.
Versions: composer-cli v0.7.3, composer-admin v0.7.3, composer-client v0.7.3,
Is there any issue with the latest Quickstart guide? or did I miss any step?
Error from Log file:
74523 verbose lifecycle getting-started@1.0.0~postinstall: CWD: /root/composer-sample-applications-hlfv1/packages/getting-started
74524 silly lifecycle getting-started@1.0.0~postinstall: Args: [ '-c',
74524 silly lifecycle 'scripts/download-hyperledger.sh && scripts/createProfile.sh && npm run startHLF && npm run deployNetwork' ]
74525 silly lifecycle getting-started@1.0.0~postinstall: Returned: code: 1 signal: null
74526 info lifecycle getting-started@1.0.0~postinstall: Failed to exec postinstall script
74527 verbose stack Error: getting-started@1.0.0 postinstall: `scripts/download-hyperledger.sh && scripts/createProfile.sh && npm run startHLF && npm run deployNetwork`
74527 verbose stack Exit status 1
74527 verbose stack at EventEmitter.
@bejavu there are various ways of getting setup depending on what you are trying to do. You could try the quickstart which sets up hlfv1 and does some basic validation by running a sample.
https://hyperledger.github.io/composer/installing/quickstart.html
Check you have the required pre-reqs
@bejavu or you could try the installer which will setup hlfv1 alpha and playground as docker containers and connect them together.
curl -sSL http://hyperledger.github.io/composer/install-hlfv1.sh | bash
@Dpkkmr The log you posted doesn't provide an details of the actual error. But worth checking you have all the required pre-reqs, plus how much memory do you have ? it needs to be at least 2Gb (may be more, need to look into it further)
Has joined the channel.
Thanks again!
Just what do you mean by "connect them together"?
has anyone been through the steps required to configure the quickstart hlfv1 setup in order to be able to create channels? seems something to do with something called a MSP manager needs to be setup/configured.
```
hi, can someone help me create a new channel on my Fabric v1 setup?
I enter a peer (docker exec -it peer1 bash) and run the following command taken from online documentation
`peer channel create -c mynewchannel -o orderer:7050`
But i get this error:
`panic: Setting up the MSP manager failed, err KeyMaterial not found in SigningIdentityInfo
```
Hi I am not sure this is the right channel, I need to build an application that uses blockchain to tracke and transfer digital assets between users - so I need to be able to provide some kind og system that can fulfil that - I am thinking to encrypt the assets and provide the key to the given user - so can I use the hyperledger-ca system for that? - so I can keep private keys and so on?
Anyone has idea what is meaning of following error, I am trying to deploy 'bna' file on Bluemix Blockchain Service (changed all parameters in connection.json required for Bluemix Blockchain Network)
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
Used command : composer network deploy --archiveFile basic-sample-network.bna --enrollId admin --enrollSecret 147b92e258
@bejavu The hlfv1 fabric runtime is run through docker compose which sets up a docker network. If you then tried to use the docker image of composer-playground you need to ensure you connect it to the same network and then define an appropriate connection profile in order to work with that fabric. The script does this all for you.
@FelixNielsen sounds like composer is going to satisfy what you want to do. Have a look at our website for information and tutorials
https://hyperledger.github.io/composer/
@deepakvparmar That is usually a connectivity problem. Double check your profile `defaultProfile` contains the correct grpcs:// urls
@rfu2k unfortunately creating a channel is not as simple as just issuing a single command. If that came from the hyperledger fabric documentation than it needs to be improved, but I couldn't find where you might have got this from.
@davidkel : Yep, There was issue with evenHubUrl. I have also changed "keyValStore" path, not using default "/home/ubuntu/.composer-credentials". I am still getting same error but sometime I also get following error, Error is not consistent.
E0529 14:52:54.080000000 3808 handshake.c:128] Security handshake failed: {"created":"@1496049774.080000000","description":"Handshake read failed","file":"..\src\core\lib\security\transport\handshake.c","file_line":237,"referenced_errors":[{"created":"@1496049774.080000000","description":"End of TCP stream","file":"..\src\core\lib\iomgr\tcp_windows.c","file_line":180}]}
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (C:\Users\IBM_ADMIN\AppData\Roaming\npm\node_modules\composer-cli\node_modules\grpc\src\node\src\client.js:189:19)
at ClientDuplexStream._readsDone (C:\Users\IBM_ADMIN\AppData\Roaming\npm\node_modules\composer-cli\node_modules\grpc\src\node\src\client.js:158:8)
at readCallback (C:\Users\IBM_ADMIN\AppData\Roaming\npm\node_modules\composer-cli\node_modules\grpc\src\node\src\client.js:217:12)
@deepakvparmar handshake failure could indicate problems with the certificate and/or certificatepath entries in your profile
@davidkel I think I got it from here, from the Fabric install and instantiate docs on Github
```
Create and join channel from the remote CLI
From your second terminal, lets create a channel by the name of "myc":
peer channel create -c myc -o orderer:5005
This will generate a genesis block - myc.block - and place it into the same directory from which you issued your peer channel create command. Now, from the same directory, direct both peers to join channel - myc - by passing in the genesis block - myc.block - with a peer channel join command {..snip..}
```
@davidkel I think I got it from here, from the Fabric install and instantiate docs on Github
```
Create and join channel from the remote CLI
From your second terminal, lets create a channel by the name of "myc":
peer channel create -c myc -o orderer:5005
This will generate a genesis block - myc.block - and place it into the same directory from which you issued your peer channel create command. Now, from the same directory, direct both peers to join channel - myc - by passing in the genesis block - myc.block - with a peer channel join command {..snip..}
```
I was hoping I could just create the channel, then deploy a new BNA to new channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=GgMMzkyxB39Td8Wpe) @davidkel : I am providing certificate in connection.json file only, what is the significant of certificatepath? Currently i am providing certificate path as "/certs/peer/cert.pem"
@rfu2k I think that is really old and I don't think it's valid for alpha1 (the level composer currently works with) or the recent alpha2 drop either.
@davidkel bah.. could be, i'll look around and see what's the latest
@davidkel bah.. could be, i'll look around and see what's the latest, or not latest for the one before latest :) (alpha 1)
@deepakvparmar given that you are getting different errors, your certificatePath is correct and I assume you have all the certificates in your certificate entry (there should be more than one begin certificate/end certificate combination in there). Then maybe the problem isn't your end but the bluemix end ?
[ ](https://chat.hyperledger.org/channel/composer?msg=AFeeQMpHQnQwBrWh8) @davidkel : yes, having two section of begin and end of certificates. I can provide my own location for "keyValStore" right? Currently I am providing location of empty folder and hoping that once 'bna' file will be deployed, keys will be stored for 'admin' user.
@deepakvparmar you can provide your own location for keyValStore. You say you only have 2 sections ? The example of stackoverflow as 3 (https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service)
and I believe the value is the same for all bluemix users
@deepakvparmar you can provide your own location for keyValStore. You say you only have 2 sections ? The example on stackoverflow as 3 (https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service)
and I believe the value is the same for all bluemix users
[ ](https://chat.hyperledger.org/channel/composer?msg=qmPcybh3bwxRaLMx5) @davidkel : Sorry, Counting error. I am having 3 section as well.
running into issues using composer-playground with Fabric V1 all running in Docker, I've posted a question on Stackoverflow: https://stackoverflow.com/questions/44236110/composer-playground-in-docker-cannot-connect-to-hlf-v1
[ ](https://chat.hyperledger.org/channel/composer?msg=m7cPzqsZC89wEAEPT) @davidkel the latest docs have effectively the same command to manually create the channel, which doesn't work :)
[ ](https://chat.hyperledger.org/channel/composer?msg=m7cPzqsZC89wEAEPT) @davidkel the latest docs have effectively the same command to manually create the channel, which doesn't work :) http://fabric-rtd.readthedocs.io/en/latest/asset_cli.html
[ ](https://chat.hyperledger.org/channel/composer?msg=m7cPzqsZC89wEAEPT) @davidkel the latest docs have effectively the same command to manually create the channel, which doesn't work :) http://fabric-rtd.readthedocs.io/en/latest/asset_cli.html
```
Send createChannel API to Ordering Service:
CORE_PEER_COMMITTER_LEDGER_ORDERER=orderer:7050 peer channel create -c myc2
This will return a genesis block - myc2.block - that you can issue join commands with.
```
[ ](https://chat.hyperledger.org/channel/composer?msg=m7cPzqsZC89wEAEPT) @davidkel the latest docs have effectively the same command to manually create the channel, which appears to not work with the setup I've got installed :) http://fabric-rtd.readthedocs.io/en/latest/asset_cli.html
```
Send createChannel API to Ordering Service:
CORE_PEER_COMMITTER_LEDGER_ORDERER=orderer:7050 peer channel create -c myc2
This will return a genesis block - myc2.block - that you can issue join commands with.
```
[ ](https://chat.hyperledger.org/channel/composer?msg=m7cPzqsZC89wEAEPT) @davidkel the latest docs have effectively the same command to manually create the channel, which appears to not work with the setup I've got installed, so dunno... bah http://fabric-rtd.readthedocs.io/en/latest/asset_cli.html
```
Send createChannel API to Ordering Service:
CORE_PEER_COMMITTER_LEDGER_ORDERER=orderer:7050 peer channel create -c myc2
This will return a genesis block - myc2.block - that you can issue join commands with.
```
[ ](https://chat.hyperledger.org/channel/composer?msg=i9sWrFo9HDpzgK8qB) @davidkel
Hi David
Thanks for your suggestion.
I have checked for the pre-reqs and looks OK to me.
node --> v6.10.3
npm --> 4.6.1
git --> 2.7.4
python --> 2.7.12
docker --> 17.03.1-ce
docker-compose --> 1.13.0.
I'm using a VM with 2 GB. When I'm deploying I observed the system performance and found used memeory to be around 900 MB and free was around 850MB. CPU util was around 25%.
In same system I was able to deploy the code when the version of:
composer-cli v0.7.2, composer-admin v0.7.2, composer-client v0.7.2 etc but
in composer-cli v0.7.3 I'm facing error.
Trace Log:
2017-05-29T09:40:22.730Z INFO ConnectionProfileManager :getConnectionManager() Using this connection manager {"0":{"connectionProfileManager":{"connectionProfileStore":{"fs":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":64,"O_EXCL":128,"O_NOCTTY":256,"O_TRUNC":512,"O_APPEND":1024,"O_DIRECTORY":65536,"O_NOATIME":262144,"O_NOFOLLOW":131072,"O_SYNC":4096,"O_DIRECT":16384,"O_NONBLOCK":2048,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1}}}}}$
2017-05-29T09:45:29.831Z ERROR HLFConnection :deploy() {"message":"Timeout expired while starting chaincode digitalproperty-network:0.7.3(networkid:dev,peerid:peer0,tx:3d74efb1ff842b0d9cdd0d250dba1eb901836021d70450af700f63bf5dcd3c0f)","stack":"Error: Timeout expired while starting chaincode digitalproperty-network:0.7.3(networkid:dev,peerid:peer0,tx:3d74efb1ff842b0d9cdd0d250dba1eb901836021d70450af700f63bf5dcd3c0f)\n at /root/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:434:17","code":2,"metadata":{"_internal_repr":{}}}$
Let me know if any more information is required.
Need help creating channels - latest Fabric setup docs point to alpha2 images and install documentation, which isn't compatible with Composer. Trying to look back in Git history for alpha1 instructions, if anyone can help in meantime point to what is required to create a channel with the Composer quick start alpha1 images that I have already installed and setup to work with.
Need help creating channels - latest Fabric setup docs point to alpha2 images and install documentation, which isn't compatible with Composer. Trying to look back in Git history for alpha1 instructions, if anyone can help in meantime point to what is required to create a channel with the Composer quick start alpha1 images that I have already installed and setup, would save me a ton of time if possible to use it
@Dpkkmr That timeout message comes from the fabric runtime itself and not a composer controlled timeout. It might be worth trying 4Gb to see if it makes a difference.
@rfu2k I think you are going to have to ask on one of the other fabric channels. For example you will need a version of configtxgen that is compatible with alpha1, and I don't know if they have an pre-built ones for that version (don't know if the latest prebuilt one is compatible with alpha1). In which case you would need to get the alpha1 source and built it yourself
@davidkel thanks David. Already tried on Fabric channel, a week or so back, and was told that I seemed to have a mismatch of images downloaded from the composer quick start link. My head is melted with the whole channel creation, I just can't get my head around it. With Fabric the instructions seem to be here's how to download a network that is scripted for setup, after that it's an unknown jungle of experimentation. I think I'll have to wait til Composer is alpha2 ready, then skip the Composer quick start and just set up a Fabric network, get e2e working, then join Composer to the existing Fabric network. Sadly that's unlikely to happen before demo'ing channel privacy tomorrow.. gahh
@davidkel thanks David. Already tried on Fabric channel, a week or so back, and was told that I seemed to have a mismatch of images downloaded from the composer quick start link. My head is melted with the whole channel creation, I just can't get my head around it. With Fabric the instructions seem to be here's how to download a network that is scripted for setup, after that it's an unknown jungle of experimentation. I think I'll have to wait til Composer is alpha2 ready, then skip the Composer quick start and just set up a Fabric network, get e2e working, then join Composer to the existing Fabric network. I had a demo to do tomorrow that was hopefully going to show channel privacy, which is why Ive been pushing so much for help, but oh well I'll have to work something out around that
sending positive vibes to the alpha2 Composer api.. *vibes.. vibes come online soon..*
@rfu2k It's coming honest :-) Sorry I can't help you with your channel creation stuff, from a composer point of view we aren't interested in managing channels that's a fabric operational problem. Hopefully things will improve in this area from the fabric team
@davidkel no worries, I appreciate the effort you put into giving everyone an answer especially the replies to me ;)
is there any way to set the current participant while testing a network?
@Fanarito in playground click the wee dude in the top right and change the participant, with rest api just sign in with the user id and secret of the participant
@Fanarito manual testing? in playground click the wee dude in the top right and change the participant, with rest api just sign in with the user id and secret of the participant
@Fanarito manual testing? in playground click the wee dude in the top right and change the participant, with rest api just sign in with the user id and secret of the participant, that's what I've been doing. I'm a bad software engineer so haven't been writing any automated testing scripts.
@Fanarito manual testing? in playground click the wee dude in the top right and change the participant, with rest api just sign in with the user id and secret of the participant, that's what I've been doing. I've been a bad software engineer so haven't been writing any automated testing scripts, but there's bound to be some you can copy from the sample networks folder.
@rfu2k I need to do it programmatically in the unit tests, is there any way to do that?
I checked the sample networks and couldn't find it
I checked the sample networks and couldn't find it, but I'll check again to be sure
@Fanarito there's some testing using the admin connection, I wonder if you can work back from that to see how to set other participants
```
@Fanarito there's some testing using the admin connection, I wonder if you can work back from that to see how to set other participants
```
const adminConnection = new AdminConnection({ fs: bfs_fs });
return adminConnection.createProfile('defaultProfile', {
type: 'embedded'
})
.then(() => {
return adminConnection.connect('defaultProfile', 'admin', 'Xurw3yU9zI0l');
```
so maybe create an identity connected to a participant
so maybe just create an identity connected to a participant
yup it worked, thanks @rfu2k
I'm trying to think through how to provide secure access to participants that are integrating through various 3rd party applications. Those 3rd parties have existing applications developed in .NET and Java.
Option 1 seems to be to expose a secured REST API as per @sstone1 's recent notes. However, I believe we'd still need to come up with a solution for those clients to receive event notifications since the composer-client.BusinessNetworkConnection.on(event) subscription capabilities are only available within the Javascript client. Correct?
Correct, though expect webhook or websocket support to be making its way to the REST server soon ;)
ooohhh...sexy. how soon?
Not sure. Event support only just made its way in.
Option 2 might be for you to write a Node.js app that listens to events and forwards them to the 3rd party applications - either using HTTP, or some kind of message queue system?
So in Option 2, the Node.js app would use composer-client...what's the underlying protocol composer-client is using and how are those being secured?
grpcs?
It uses the Fabric SDK (fabric-client for v1 or hfc for v0.6), which in turn uses gRPC to communicate with the remote Fabric
Yes - you can configure that communication to be secured with TLS, and use grpcs
@davidkel is there a way to auto increase indexes in the chaincode while creating an asset \ participant? As far as I can see its should be hard-coded since we cant import \ require anything...
@bejavu not a direct answer to your question, but I got around it by generating a uuid and using that as the assets id
in composer v1.0 , how do we use the MSP. Further how is acl implemented ? Does it use the Fabric MSP ? If you could point to the code or some reference documentation, it will be really helpful
@sstone1 I am running Fabric 0.6 on an ubuntu AWS instance, but i am unable to deploy.. each time when i say deploy ... i am getting this error.. "Error: Failed to load connector module "composer-connector-hlf" for connection profile "defaultProfile""
i tried installing composer-connector-hlf, even after installing i am getting the same error
even this doesnt seem to work
https://stackoverflow.com/questions/42939744/fabric-composer-quick-start-failed-on-ubuntu-16-04
@karthikworks how much RAM does your AWS instance have?
did you get errors when you ran `npm install` for the first time?
Yes when i ran it first time..i did get error...
i am trying this on a free tier instance ..
so ram should be less will check it out..
But npm install did have errors first time...
you need 2GB minimum to install using npm
and if you have npm install errors, you must uninstall first and then reinstall again
simply rerunning npm install does not fix the problem
Actually did try uninstalling and installing again, anyways will check out the RAM and try it one more time..
Has joined the channel.
From where I can find enrollSecret.?
@sstone1 : I am trying to deploy 'bna' on bluemix blockchain service, have followed your post on stackoverflow and created connection.json file accordingly. Now, I am facing two different error whenever i try to deploy using composer.... error is not consistent....
Error 1:
Deploying business network from archive: basic-sample-network.bna
Business network definition:
Identifier: basic-sample-network@0.0.7
Description: The Hello World of Hyperledger Composer samples
Error: Identity or token does not match.
Command failed
Sometime, I get following error too :
E0530 05:57:45.782779991 3116 handshake.c:128] Security handshake failed: {"created":"@1496123865.782653400","description":"Handshake read failed","file":"../src/core/lib/security/transport/handshake.c","file_line":237,"referenced_errors":[{"created":"@1496123865.782636995","description":"FD shutdown","file":"../src/core/lib/iomgr/ev_epoll_linux.c","file_line":948}]}
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)
ubuntu@ubuntu-xenial:~$ composer network deploy --archiveFile basic-sample-network.bna --enrollId admin --enrollSecret 147b92e258
Any suggestion or pointer will be very helpful,
Deploy command : composer network deploy --archiveFile basic-sample-network.bna --enrollId admin --enrollSecret 147b92e258
user 'admin' is already enrolled and registered on peer0 on bluemix service....
Can a transaction accept abstract participants?
[ ](https://chat.hyperledger.org/channel/composer?msg=FJaSCtgPwu2ibWyrK) @davidkel
Thanks David, increased RAM to 4GB and it solve the issue. :)
@deepakvparmar the first error is caused by one of several reasons:
1) your enroll secret does not match the one provided by the bluemix service; note that it changes every time you recreate the bluemix service.
2) you have already enrolled with that enroll secret; note that enroll secrets can only be used once on one machine.
3) you have an old certificate in your key value store directory which is from a previous instance of the bluemix service.
the second error is a known problem caused by a fabric bug; this is the "event hub bug" and it is not going to be fixed in v0.6, and we are pushing for a fix to be made to v1.0. essentially the cloud networking layer ends up killing the idle event hub connection after a period of inactivity and the fabric SDK cannot handle this.
[ ](https://chat.hyperledger.org/channel/composer?msg=bBRn2HZaw2mCAg7uo) @sstone1 : As I have already enrolled "admin" user by using Swagger API on peer0 bluemix service, I cannot deploy 'bna' file using 'admin' user again?
As I am also getting second error by executing same command again, should i assume that everything is file from my end, but its not working because of bug in fabric or is there any alternate way to resolve second error?
> As I have already enrolled "admin" user by using Swagger API on peer0 bluemix service, I cannot deploy 'bna' file using 'admin' user again?
correct
> should i assume that everything is file from my end, but its not working because of bug in fabric
yes, it is not working because of a bug in fabric - there is nothing you can do to avoid this (if you want to keep using the bluemix service)
[ ](https://chat.hyperledger.org/channel/composer?msg=rbuZSA63fMyrrMf6y) @sstone1 : We are planing to use bluemix service to deploy our poc for our customer for fabric 0.6, Do you think that It would work consistently or should we try on in fabric 1.0 bluemix service where we will not face second error?
anything you are starting now should really be done against v1.0 - nobody is developing v0.6 any more
however the problem still occurs in v1.0... but the deploy is faster, so it occurs less often
this is the fabric JIRA issue that covers the fix for the problems: https://jira.hyperledger.org/browse/FAB-4002
[ ](https://chat.hyperledger.org/channel/composer?msg=aqNJFv6iopbuu7XGR) @sstone1 : I am assuming that this problem is very specific to Bluemix Blockchain service only?
i suspect it occurs on any deployment to a fabric hosted on any cloud service, where the client (deploy) is happening elsewhere
indeed the JIRA issue mentions AWS as also having the same problem
[ ](https://chat.hyperledger.org/channel/composer?msg=Ap3bJgfarMwSqNjbW) @sstone1: Kindly share JIRA url for the same issue if you have.
i pasted it in above
FAB-4002
it links to some other relevant issues, FAB-3310 and FAB-2787
@sstone1 : where can i found --enrollId & --enrollSecret .?
[ ](https://chat.hyperledger.org/channel/composer?msg=L8G4k3iszH33e76pw) @sstone1 : Thanks a lot :)
@alfa from your fabric configuration or administrator. if you set it up locally following the composer getting started guide, the default on fabric v0.6 is admin / Xurw3yU9zI0l and the default on fabric v1.0 is admin / adminpw
[ ](https://chat.hyperledger.org/channel/composer?msg=CvYHLhyk5aPpnKF8p) @rfu2k Re-asking this question
[ ](https://chat.hyperledger.org/channel/composer?msg=DmcdZEgvLMRvfcF2r) @sstone1 k get it now. and could I update this and set my own eid & esecret.?
composer will use whatever fabric configuration you set up, so yes - if you change the default enrollment secrets you can use it with composer. you can also issue new enrollment ids/secrets to participants you create in a composer business network.
@SanketPanchamia composer takes care of all of that flow for you. when you submit a transaction, it sends a proposal to the peers for endorsement, then sends the endorsements to the ordering service, and then waits for the transaction to be committed before returning control to the calling application/user.
[ ](https://chat.hyperledger.org/channel/composer?msg=tcFsGhjEyCCqhSxT5) @sstone1 So I assume there is a default endorsing peer that for now i cannot change. Is there capability in the composer to define endorsement policies?
the endorsing peers and the ordering service are configured by you in the connection profile
currently you cannot define endorsement policies, this is something we are looking into
it will use the "default" endorsement policy
[ ](https://chat.hyperledger.org/channel/composer?msg=kJkTAvsPutcb6wj95) @sstone1 Ok that makes sense. Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=inm3S8twpHywzLokS) @sstone1 What exactly is the "default" endorsement policy? I know the transactions can be access-restricted using the ACL file.
it's whatever fabric does by default when it is not supplied with a custom endorsement policy ;)
i'll defer that one to @davidkel who might know the details
[ ](https://chat.hyperledger.org/channel/composer?msg=Gwqipoh2Kfsqoywjy) @abcoathup Looks like it can, but in playground, need to fully qualify the participant
@abcoathup as a property or a relationship?
you can model a relationship to an abstract participant, e.g. `--> AbstractParticipant participant`
but you need to supply a relationship value that points to an actual participant when submitting the transaction
fabric defines the default endorsement policy on this page
http://hyperledger-fabric.readthedocs.io/en/latest/endorsement-policies.html
Hi can I provide access to digital assets owned by a user and transfer it to other users - so original owner can't access it anymore and so on?
@sstone1 was able to run without the earlier error on aws instance on a larger instance...but now i am getting this error.. "Error: Identity or token does not match"
there is no credentials in .composer-credentials
its not getting created automatically
have you already enrolled elsewhere?
Only on my local... on AWS its a new instance..
@sstone1 any idea on how to rectify this ?
the folder .composer-credentials is empty
[ ](https://chat.hyperledger.org/channel/composer?msg=hoE987XmsTym3jwqM) @davidkel Thanks !
@karthikworks you are running Fabric on AWS? v0.6 or v1.0? which enrollment secret are you using?
v0.6
-i WebAppAdmin -s DJY27pEnl16d
Yes i am running Fabric on AWS ubuntu instance
Has joined the channel.
Hi everyone, I have a question , in Fabric Composer, when I submit my UI to insert an Asset the NodeJS is suddenly stopping?? is anyone here experience this and solved it?
BTW: this is not the Fabric Composer Playground , I'm using the coded UI to submit / insert an Asset,, in adding Participant it was working properly
Has joined the channel.
@sstone1 got rectified... after removing and starting of fresh...
Message Attachments
Hi I am trying to create an angular 2 app based on the business network that i have deployed. And i get this error. I searched the entire system but cant find the trace file that is mentioned.
Has joined the channel.
@sstone1 @akshay111meher Is there a basic example in composer that illustrates basic transfer of assets from one account to another ?
I am not able to see a basic example . I am using v1.0 of the fabric
@SanketPanchamia you don't have permission to access the logs directory you have to change the permissions on it
@SanketPanchamia you don't have permission to access the logs directory, you have to change the permissions on it
or you can try to run the same command as root
but I don't recommend that
Has joined the channel.
Message Attachments
0 info it worked if it ends with ok
1 verbose cli [ '/home/ramarahul/.nvm/versions/node/v6.9.5/bin/node',
1 verbose cli '/home/ramarahul/.nvm/versions/node/v6.9.5/bin/npm',
1 verbose cli 'config',
1 verbose cli 'get',
1 verbose cli 'prefix' ]
2 info using npm@3.10.10
3 info using node@v6.9.5
4 verbose config Skipping project config: /home/ramarahul/.npmrc. (matches userconfig)
5 verbose exit [ 0, true ]
6 verbose stack Error: write EPIPE
6 verbose stack at exports._errnoException (util.js:1022:11)
6 verbose stack at WriteWrap.afterWrite (net.js:801:14)
7 verbose cwd /home/ramarahul
8 error Linux 4.4.0-78-generic
9 error argv "/home/ramarahul/.nvm/versions/node/v6.9.5/bin/node" "/home/ramarahul/.nvm/versions/node/v6.9.5/bin/npm" "config" "get" "prefix"
10 error node v6.9.5
11 error npm v3.10.10
12 error code EPIPE
13 error errno EPIPE
14 error syscall write
15 error write EPIPE
16 error If you need help, you may report this error at:
16 error
This is the npm-debug.log for the above error
@rama_rahul it seems like you don't have eslint installed
[ ](https://chat.hyperledger.org/channel/composer?msg=ZM9tHmd7MudBRDRzM) @Fanarito How to install it?
npm install -g eslint
for global install
[ ](https://chat.hyperledger.org/channel/composer?msg=EwSXmRhruSKPLSQX6) @Fanarito Thank you very much!
@hariharanatarajan We have quite a few examples you can have a look at. The basic digitalproperty-network for example is used as part of the quick start and getting started guides
https://hyperledger.github.io/composer/installing/quickstart.html
you can find this and other sample networks in the github repository
https://github.com/hyperledger/composer-sample-networks
you should also be able to download these sample directory into composer-playground to view, modify and execute
Has joined the channel.
Has joined the channel.
Message Attachments
HI folks... re: Composer ACL's . Do I need a rule for what participant can issue what transaction or is that derived from the assets involved in the transaction and rules around participant->asset
@rama_rahul are you using this repo https://github.com/hyperledger/composer-sample-networks?
if you are you need to use `lerna run test` instead of `npm test`
[ ](https://chat.hyperledger.org/channel/composer?msg=nPTnNpzPQEoQeQcSF) @Fanarito Nope
[ ](https://chat.hyperledger.org/channel/composer?msg=nPTnNpzPQEoQeQcSF) @Fanarito I am using this https://hyperledger.github.io/composer/applications/genapp.html
In that I am trying to generate an angular 2 application with a bna file.
@rama_rahul eslint cant find the config files, you might want to update the composer generator, because when I generate an angular 2 app it doesn't use eslint it uses tslint
anybody faced this issue? The chaincode was deployed and working but gone into an inconsistent state now it seems
✖ List business network
I just watched a video about what's new in V1.0 that mentioned that can happen in HL v0.6
Looking at the auction example in the tutorial, the bidders id is just manually written into the transaction... Is it possible to get the transaction initiators id from with in the transaction to stop say: me bidding using another participants id?
Looking at the auction example in the tutorial, the bidders id is just manually written into the transaction... Is it possible to get the transaction initiators id from with in the transaction to stop say: me bidding using another participants id (and thus lumbering them with a huge bill and goods they did not want)?
Yes, you can call `getCurrentParticipant()`
@dselman awesome thanks :)
Will that work in the playground? there doesn't seem to be a way to impersonate a participant in the test harness
hi @dselman will the alpha2 api sneak in this week or more likely next week? (need to provide update to team after lunch, you're probably well tired of being asked by now :) )
hi @dselman will the alpha2 api sneak in this week or more likely next week? (need to provide update to proj management after lunch, you're probably well tired of being asked by now :) )
hi @dselman will the alpha2 api sneak in this week or more likely next week? (I hate to ask but I need to provide update to proj management after lunch, I know you're probably well tired of being asked by now :) )
hi @dselman will the alpha2 api sneak in this week or more likely next week? (I hate to ask but I need to provide update to my proj management after lunch, I know you're probably well tired of being asked by now :) )
hi @dselman will the alpha2 api sneak in this week or more likely next week? (I hate to ask but I need to provide a proj update after lunch, I know you're probably well tired of being asked by now :) )
hi @dselman do you reckon the alpha2 api sneak in this week or more likely next week? (I hate to ask but I need to provide a proj update after lunch, I know you're probably well tired of being asked that Q? by now :) )
```
asset Tree identified by id {
}
@rfu2k won't be this week, sorry
@davidkel thanks, no worries, I know you guys are are taking care of the details so there'll be less headaches for us devs when we get our hands on it :)
@davidkel thanks, no worries, I know you guys are are taking care of the details so there'll be less headaches for us devs when we get our hands on it ::thumbsup:
@davidkel thanks, no worries, I know you guys are are taking care of the details so there'll be less headaches for us devs when we get our hands on it :thumbsup:
@dselman :
I am practising composer via link : https://hyperledger.github.io/composer/installing/quickstart.html
I am running Fabric V1, upto 'npm install' command everything working fine. but while I am trying command npm test. It throwing error.
& Further when I am running docker ps I am not getting anything except the headings like(CONTAINER ID, IMAGES,NAMES,...).
Please can you help me with that.?
[ ](https://chat.hyperledger.org/channel/composer?msg=WAur45ZQ9EqydcGwC) @alfa : @rfu2k @davidkel. Anyone can help me to understood.?
@alfa what error is `npm test` throwing?
[ ](https://chat.hyperledger.org/channel/composer?msg=JyAMfTvtcGhKHAiRR) @Fanarito
info: [Composer-GettingStarted] Hyperledger Composer: Getting Started application
info: [Composer-GettingStarted] Adding default land titles to the asset registry
Uncaught Exception: Error: Connect Failed
at ClientDuplexStream._emitStatusIfDone (/home/mahendra/github-demo/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._readsDone (/home/mahendra/github-demo/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:169:8)
at readCallback (/home/mahendra/github-demo/composer-sample-applications-hlfv1/packages/getting-started/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:229:12)
error: [Composer-GettingStarted] Error: Private key missing from key store. Can not establish the signing identity for user admin
Command failed.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! getting-started@1.0.0 bootstrapAssets: `node cli.js landregistry bootstrap`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 bootstrapAssets script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/mahendra/.npm/_logs/2017-05-30T12_58_11_109Z-debug.log
npm ERR! Test failed. See above for more details.
@Fanarito : Earlier it was throwing connection.json file missing. so I have copy this file from /hlfv1 and put on required location ( /home/mahendra/.composer-connection-profiles/hlfv1 )
@alfa well it cant connect to the fabric instance, and since `docker ps` yields nothing there is probably an error when it tries to create the containers.
you can check the docker logs
[ ](https://chat.hyperledger.org/channel/composer?msg=KxuGCNxP5qtrHooTB) @Fanarito :
when we run command 'npm install'.
did it create fabric instance automatically.?
it should have done it
you can also try to increase the sleep time in the startup script
you can also try to increase the sleep time in the startup script (scripts/start-hyperledger.sh)
@sstone1 - Could you please point to other examples of transaction models and functions that create assets? I'm getting an error in my transaction claiming the function can't be found, though I've a model of it. It could be I'm misunderstanding how to model transactions. I'm not finding much guidance. I did dig into the underlying factory here, but still uncertain about usage and outcomes of these functions. https://hyperledger.github.io/composer/jsdoc/composer-runtime_lib_api_factory.js.html
@sstone1, @dselman , @mgk - Could you please point to other examples of transaction models and functions that create assets? I'm getting an error in my transaction claiming the function can't be found, though I've a model of it. It could be I'm misunderstanding how to model transactions. I'm not finding much guidance. I did dig into the underlying factory here, but still uncertain about usage and outcomes of these functions. https://hyperledger.github.io/composer/jsdoc/composer-runtime_lib_api_factory.js.html
[ ](https://chat.hyperledger.org/channel/composer?msg=TXkuGtrW5WxS5cqoR) @Fanarito so simply
when I run start-hyperledger.sh It create hyperledger instances.
but still npm test is throwing errors : Private key missing from key store. Can not establish the signing identity for user admin
Command failed.
I believe that `npm install` should have created the keys automatically. They are located in .hfc-key-store
I believe that `npm install` should have created the keys automatically. They are located in ~/.hfc-key-store
you can try checking the connection.json file and see if the keyValStore is pointing to the correct folder
@alfa what part of npm install failed ? Did you run npm install in the getting-started directory ?
Hi @jdockter , I found the cause of the VSCode ACL highlighting problem for Linux, and I've just pushed another release with a fix so if you update the plugin and try it again, you should find it works now - thanks for reporting it.
:thumbsup:
@mgk thanks it's working now
Great, thanks for letting me know!
I noticed in the animalnetwork sample that there are some queries implemented. However there is no way to call these queries in either the playground or the rest server.
I know rich query syntax is not supported yet, but is there no way to use the jsonata query capabilities on the registries in the rest server?
Has joined the channel.
I'd like the "lease" (relationship to a participant) on my assets to expire, is there a common pattern for this or do I simply just check for a current leaseHolder OR leaseExpiry > now ?
I'd like the "lease" (relationship to a participant) on my assets to expire, is there a common pattern for this or do I simply just check for a current leaseHolder OR leaseExpiry > now during the transaction to acquire an asset ?
cd ..
Has joined the channel.
@Fanarito queries are not yet implemented.
Hi all, I am new joiner in this channel. Apologies, if it off context. How do I find out which version of hyper ledger fabric I am currently using? Does this command pulls down the v1.0 image
docker pull hyperledger/fabric-baseimage:x86_64-0.1.0
@clueless99 there's nothing built in for that. Beware logic that is not deterministic and that may give different results on different peers. E.g. time based logic should be relative to the timestamp of the incoming transaction, not use the system clock.
@dselman so the transaction contains a timestamp by default or I need the issuer of the transaction to give one? (in the latter case they could 'cheat' the lease by requesting it form the future)
Hmm I may be modeling this wrong actually rather than a single item that's leased based on a time lock multiple leases related to items and datetime stamped would fix that
Hmm I may be modeling this wrong actually rather than a single item that's leased based on a time lock maybe I should have multiple leases related to items and datetime stamped would fix that
Hmm I may be modeling this wrong actually rather than a single item that's leased based on a time lock maybe I should have multiple leases related to items and datetime stamped, that would fix that
```
Connection fails: Error: failed to obtain cds for basic-sample-network@0.0.7 - transaction not found basic-sample-network@0.0.7/mychannel
It will be retried for the next request.
{ Error: failed to obtain cds for basic-sample-network@0.0.7 - transaction not found basic-sample-network@0.0.7/mychannel
at /usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:434:17 code: 2, metadata: Metadata { _inter
nal_repr: {} } }
```
when starting composer-rest-server with clean hlfv1 setup script. Can anyone help?
```
Connection fails: Error: failed to obtain cds for basic-sample-network - transaction not found basic-sample-network@0.0.7/mychannel
It will be retried for the next request.
{ Error: failed to obtain cds for basic-sample-network@0.0.7 - transaction not found basic-sample-network@0.0.7/mychannel
at /usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:434:17 code: 2, metadata: Metadata { _inter
nal_repr: {} } }
```
when starting composer-rest-server with clean hlfv1 setup script. Can anyone help?
```
Connection fails: Error: failed to obtain cds for basic-sample-network - transaction not found basic-sample-network@0.0.7/mychannel
It will be retried for the next request.
{ Error: failed to obtain cds for basic-sample-network - transaction not found basic-sample-network@0.0.7/mychannel
at /usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:434:17 code: 2, metadata: Metadata { _inter
nal_repr: {} } }
```
when starting composer-rest-server with clean hlfv1 setup script. Can anyone help?
```
Connection fails: Error: failed to obtain cds for basic-sample-network - transaction not found basic-sample-network@0.0.7/mychannel
It will be retried for the next request.
{ Error: failed to obtain cds for basic-sample-network - transaction not found basic-sample-network/mychannel
at /usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:434:17 code: 2, metadata: Metadata { _inter
nal_repr: {} } }
```
when starting composer-rest-server with clean hlfv1 setup script. Can anyone help?
```
Connection fails: Error: failed to obtain cds for basic-sample-network - transaction not found basic-sample-network/mychannel
It will be retried for the next request.
{ Error: failed to obtain cds for basic-sample-network - transaction not found basic-sample-network/mychannel
at /usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:434:17 code: 2, metadata: Metadata { _inter
nal_repr: {} } }
```
when starting composer-rest-server with clean hlfv1 setup script. Can anyone help?
@dklesev have you tried to deploy basic-sample-network ? If so was there an error or timeout ?
output after connecting to hlfv1:
```
Checking for $default connection profile
main.32c941ddeb335c589d30.bundle.js:1 Checking for connection profile hlfabric
main.32c941ddeb335c589d30.bundle.js:1 Creating credentials for connection profile hlfabric
main.32c941ddeb335c589d30.bundle.js:1 Establishing admin connection ...
main.32c941ddeb335c589d30.bundle.js:1 Connecting to connection profile (w/ business network ID) hlfabric
main.32c941ddeb335c589d30.bundle.js:1 Connecting to connection profile (w/o business network ID) hlfabric
main.32c941ddeb335c589d30.bundle.js:1 Got business networks Array[0]
main.32c941ddeb335c589d30.bundle.js:1 Deploying sample business network
main.32c941ddeb335c589d30.bundle.js:1 Connecting to connection profile (w/ business network ID) hlfabric
main.32c941ddeb335c589d30.bundle.js:1 Connected
main.32c941ddeb335c589d30.bundle.js:1 Connecting to connection profile hlfabric
main.32c941ddeb335c589d30.bundle.js:1 Establishing admin connection ...
main.32c941ddeb335c589d30.bundle.js:1 Connecting to connection profile (w/ business network ID) hlfabric
main.32c941ddeb335c589d30.bundle.js:1 Connected
main.32c941ddeb335c589d30.bundle.js:1 Connecting to connection profile hlfabric
main.32c941ddeb335c589d30.bundle.js:1 Establishing admin connection ...
main.32c941ddeb335c589d30.bundle.js:1 Connecting to connection profile (w/ business network ID) hlfabric
main.32c941ddeb335c589d30.bundle.js:1 Connected
vendor.8e48be852d0904c8ddc2.bundle.js:1 EXCEPTION: Uncaught (in promise): undefined
t.handleError @ vendor.8e48be852d0904c8ddc2.bundle.js:1
vendor.8e48be852d0904c8ddc2.bundle.js:1 ORIGINAL STACKTRACE:
t.handleError @ vendor.8e48be852d0904c8ddc2.bundle.js:1
vendor.8e48be852d0904c8ddc2.bundle.js:1 Error: Uncaught (in promise): undefined
at y (polyfills.1381732ff68fda37fdc5.bundle.js:1)
at h (polyfills.1381732ff68fda37fdc5.bundle.js:1)
at h (polyfills.1381732ff68fda37fdc5.bundle.js:1)
at polyfills.1381732ff68fda37fdc5.bundle.js:1
at t.invokeTask (polyfills.1381732ff68fda37fdc5.bundle.js:1)
at Object.onInvokeTask (vendor.8e48be852d0904c8ddc2.bundle.js:1)
at t.invokeTask (polyfills.1381732ff68fda37fdc5.bundle.js:1)
at n.runTask (polyfills.1381732ff68fda37fdc5.bundle.js:1)
at s (polyfills.1381732ff68fda37fdc5.bundle.js:1)
at HTMLButtonElement.invoke (polyfills.1381732ff68fda37fdc5.bundle.js:1)
t.handleError @ vendor.8e48be852d0904c8ddc2.bundle.js:1
polyfills.1381732ff68fda37fdc5.bundle.js:1
y
```
I think I found the error...
let me see
ok, have no working solution
steps before:
`curl -sSL http://hyperledger.github.io/composer/install-hlfv1.sh | bash`
created asset, participant and a transaction
`composer-rest-server -p hlfv1 -n basic-sample-network -i admin -s adminpw -N always`
I got a question from someone who watched a Composer demo on developerWorks that I need help answering.
"Hi Mohamoud,
Thanks for the tutorial. I do understand the technical aspects of the block chain. But what I am unable to understand is that the use cases that it’s trying to solve. Lets say in the case of Bitcoin if there is a double spending attack(basically 1 person trying to spend 1 coin to two participants at the same time) block chain can prevent that. But lets say in the health care industry if you would go about using block chain? Basically my question here is if there are multiple entities involved in a transaction and would like to have an access to a data block to complete a transaction then the new entity need not build any new integration points rather just request access for the secured network (through chain code) and then based on the approving bodies can view the required data ? Will that be a valid use case for block chain?"
This is where the question & demo can be found https://developer.ibm.com/tv/blockchain-demo-hyperledger-composer/
@mohamoud.egal I posted a comment to the question. It's awaiting moderation.
@mohamoud.egal though I don't really get your point (or what the author of the question actually needs)
with blockchain you can bind the data with the time and get immutability, provenance. with the use of smart contracts you can bind actions to state conditions, f.e. "transfer asset A to party B only if party C has paid"
there are multiple use-cases when you think of blockchain, especially with smart contracts.
f.e. provenance, automation (with conditions), data security guarantee, identities, IoT and many more (look at the vehicle manufacturing example)
especially for health industry you can design generic processes f.e. to prevent drug counterfeiting (because anything can be faked, so you have to prevent such a thing on a process/data level)
data access control: with composer you can define ACLs which restrict the actions available (asset, participant, transaction related). with endorsement rules you define when a transaction got validated (by somebody). additionally you can encrypt the data (look here for ideas https://github.com/hyperledger/composer/issues/1043) but you have to do the key-exchange on application level
I hope my answer is helpful
I placed a cloud foundry app up in Bluemix I called testComposer to use with my Blockchain in Bluemix. It is essentially the composer-rest-server. I used the API Connect toolkit to create a new loopback app, installed the composer-connector and prereqs, and changed where the connector finds the profile and credentials directories to simply look in the current Node server directory. I am using API Connect in Bluemix to invoke the appropriate operation within the testComposer CF app which is configured with a profile to invoke my Blockchain
and of course if you need trust in some business conditions
and of course if you need trust (guaranteed) in some business conditions
Would like the fix to the hfc (Hyperledger Fabric Client) Node.js module when it becomes available that will correctly handle the connection timeout error and reconnect as required
We are tracking 3 Fabric issues related to that. They are linked from here: https://github.com/hyperledger/composer/issues/1080
Please advocate for those fixes using the #fabric and #fabric-sdk-node channels
2 are marked as "in progress"
solved my issue. used FQN (org.acme.biznet) instead of name (basic-sample-network)
:thumbsup:
When the playground deploys it hardcodes the network name to be org.acme.biznet... We need to remove that.
https://github.com/hyperledger/composer/issues/902
@delman - Will advocate for those fixes for sure. By having my testComposer in Bluemix I can easily integrate with other services in Bluemix like API Connect and MobileFirst
Makes total sense
how frequently is the `curl -sSL http://hyperledger.github.io/composer/install-hlfv1.sh | bash` command updated? (I just ran into the org.acme.biznet issue as well) thx
it's updated by every release, e.g. weekly
the org.acme.biznet issue is not fixed
it's a big piece of work
@here the next Composer meeting is to be held at 9am UTC (10am UK, 2:30pm IST, 5pm CST) on the 1st Jun 2017. If you have any items for the agenda - anything you'd like to discuss, or the team to talk about - then please let me know ASAP. Alternatively, if you would like to spend a couple of minutes talking about your experiences with Composer, we'd love to hear from you!
@sstone1 is there still a generator for skeletal tests? I see the command `composer generator tests` but that doesn't do anything
nm...I found the link
I think we got rid of it because it was a bit rubbish and not all that useful
oh
what about this, https://hyperledger.github.io/composer/reference/composer.generator.tests.html
And instead added a `yo` generator for a skeleton business network definition that includes a set of sample mocha tests and the framework to run them
needs deleting ;)
I see this for yo ```jdockter@ubuntu:~/github/customs/network$ yo hyperledger-composer
Welcome to the Hyperledger Composer Skeleton Application Generator
? Please select the type of Application: (Use arrow keys)
❯ CLI Application
Angular 2 Application
Skeleton Business Network
```
bottom one
mmm, not seeing anything for tests
I can just copy from CarAuction or one of the other examples
it should automatically generate a test folder in the new business network definition
yup test folder is there but no .js file...question on the CarAuction.js...all these run with the BrowserFS so assuming all these types of tests are in memory ...what I don't understand is the before function where all the adminConnection and businessNetworkConnection is established if I'm not connecting to a real Fabric...can those ID and secret values be anything?
for example...``` before(() => {
BrowserFS.initialize(new BrowserFS.FileSystem.InMemory());
const adminConnection = new AdminConnection({ fs: bfs_fs });
return adminConnection.createProfile('defaultProfile', {
type: 'embedded'
})
.then(() => {
return adminConnection.connect('defaultProfile', 'admin', 'Xurw3yU9zI0l');
})
.then(() => {
return BusinessNetworkDefinition.fromDirectory(path.resolve(__dirname, '..'));
})
.then((businessNetworkDefinition) => {
return adminConnection.deploy(businessNetworkDefinition);
})
.then(() => {
businessNetworkConnection = new BusinessNetworkConnection({ fs: bfs_fs });
return businessNetworkConnection.connect('defaultProfile', 'carauction-network', 'admin', 'Xurw3yU9zI0l');
});
});```
OK, that's a bug then :( what version of the generator do you have installed?
yeah the ID/secret can be admin / anything
perhaps you'd like a sneak peek at a new testing format coming to a Composer release near you: https://github.com/sstone1/composer-sample-networks/blob/master/packages/basic-sample-network/features/sample.feature
well..that is interesting :)
interesting good or interesting bad? ;)
interesting good...you just whip that up on vacation or what :)
had a lot of it kicking around in a branch for a while... needed something to do when stuck in the airport over the weekend
:joy:
is this something you have planned for a specific playback...just wondering if I need to consider this anytime soon or just stick with the examples you guys already provide with mocha?
it should be released this friday
as part of 0.7.4
well alright alright...so what do I need to learn on this syntax? I see in commit it says Cucumber
out of interest, how much mocha testing have you (or anyone else - feel free to chip in) done of business networks? i always wondered if it was too cumbersome for anyone to put in the effort...
the language is called Gherkin, you can find some information here: https://cucumber.io/docs/reference#gherkin
the "steps" for business networks needed to be doc'ed somewhere
i'll probably bust out a wiki page for that
I was literally just starting to create some for our current sprint...so other than that just some examples
it seemed pretty straight forward, but it's all new to me
Just want something that we can easily plug into CI process...when we get that going
[ ](https://chat.hyperledger.org/channel/composer?msg=HdthoZxmCj5mJetZF) @sstone1 missed your questions...I'm at ```jdockter@ubuntu:~/github/mytest$ npm list -g generator-hyperledger-composer
/home/jdockter/.nvm/versions/node/v6.9.5/lib
└── generator-hyperledger-composer@0.7.3
```
@jdockter a couple of the sample networks have unit tests. The easiest option with 0.7.3 is to copy that code
@dselman yup got it, thanks
The unit tests tend to run against the `embedded` runtime (i.e. the JS runtime running in Node.js) -- however you can switch to use a hlf or hlfv1 runtime by simply changing the connection profile name
The also use a virtualized disk so that the connection profile that is dynamically created doesn't pollute other tests
I would strongly recommend everyone to create unit tests for their business logic in TP functions.
it catches myriad of issues!
[ ](https://chat.hyperledger.org/channel/composer?msg=TT2EqkQ8oTFky54EY) @dselman think I had missed that in the past...so just change this one line from ` type: 'embedded'` to ` type: 'hlfv1'` ...or is there more?
if you use the AdminConnection to create your profile, then it has to be a complete profile -- but if you already have a profile on disk you can skip all that... One sec.
ok
e.g.
```
before(() => {
// BrowserFS.initialize(new BrowserFS.FileSystem.InMemory());
const adminConnection = new AdminConnection();
return adminConnection.connect('hlfv1', 'admin', 'adminpw')
.then(() => {
return BusinessNetworkDefinition.fromDirectory(path.resolve(__dirname, '..'));
})
.then((businessNetworkDefinition) => {
return adminConnection.deploy(businessNetworkDefinition);
// return true;
})
.then(() => {
businessNetworkConnection = new BusinessNetworkConnection();
return businessNetworkConnection.connect('hlfv1', 'my-network', 'admin', 'adminpw');
})
.then(() => {
businessNetworkConnection.on('event', (event) => {
console.log( '****** received the event ' + JSON.stringify(businessNetworkConnection.getBusinessNetwork().getSerializer().toJSON(event)));
});
});
});
```
This will connect to my local profile called `hlfv1` and run the test against that
got it, thanks!
We really need a section in the docs for testing... :-/
We have so much cool functionality...
And don't get me started on the ability to integrate with Travis CI or Circle to automate the build, test, deploy...
:-)
^ :+1:
it would help if Travis wasn't currently broken :joy:
:poop:
will such system-endpoits like /blockchain, /block/{id} be available in composer-rest-server or is there anything else for discovering the blockchain itself? (can remember there was something like blockchain-explorer...)
will such system-endpoits like /blockchain, /blocks/{id} be available in composer-rest-server or is there anything else for discovering the blockchain itself? (can remember there was something like blockchain-explorer...)
will such system-endpoints like /blockchain, /blocks/{id} be available in composer-rest-server or is there anything else for discovering the blockchain itself? (can remember there was something like blockchain-explorer...)
I believe the Fabric team are working on a new REST API
for the lower level stuff
I don't know when they plan to deliver that
ah, ok
good to know
@dklesev there is a block-explorer channel but it's a bit of a ghost town, it would be nice if the project was updated to run against 1.0. I'd like an easy way to look at the underlying transactions.
@dklesev there is a block-explorer channel but it's a bit of a ghost town, it would be nice if the project was updated to run against 1.0. I'd like an easy way to look at the underlying chain
@dklesev there is a block-explorer channel (#blockchain-explorer) but it's a bit of a ghost town, it would be nice if the project was updated to run against 1.0. I'd like an easy way to look at the underlying chain
Has joined the channel.
Has joined the channel.
Message Attachments
@sstone1 successfully got it to work with AWS ubuntu instance :thumbsup: :thumbsup: :thumbsup:
[ ](https://chat.hyperledger.org/channel/composer?msg=Nkjvwr3BCwZD6rEMu) @davidkel : command npm install is execute success fully.
after I run command $>npm test it throw errors :
getting-started@1.0.0 bootstrapAssets /home/mahendra/github-demo/composer-sample-applications-hlfv1/packages/getting-started
> node cli.js landregistry bootstrap
info: [Composer-GettingStarted] Hyperledger Composer: Getting Started application
info: [Composer-GettingStarted] Adding default land titles to the asset registry
error: [Composer-GettingStarted] Error: Failed to load connection profile hlfv1. Error was Error: ENOENT: no such file or directory, open '/home/mahendra/.composer-connection-profiles/hlfv1/connection.json'
Command failed.
@rama_rahul what version of HLF V1 are you trying to work with ? could you post the output to `docker ps`
@alfa part of the npm install process is to create the connection profile which when you run npm test complains it cannot find. So it looks like npm install did not run successfully.
@alfa part of the npm install process is to create the connection profile which when you run npm test complains it cannot find. So it looks like npm install did not run successfully. One of the requirements is you have to run npm install in the getting-started directory. If you don't then the command will run but not do what is required.
[ ](https://chat.hyperledger.org/channel/composer?msg=i4XzyA77xTFLfTguK) @davidkel npm install command don't have any errors.
but connection.json is not created on required path.
@alfa can you run the command createProfile.sh in the scripts directory and check that the file `/home/mahendra/.composer-connection-profiles/hlfv1/connection.json` is created
[ ](https://chat.hyperledger.org/channel/composer?msg=C2QZSGrrY4HLQCjZQ) @davidkel yeap, after running createProfile.sh. it is created
@alfa in the package.json of getting-started is this line
```
"postinstall": "scripts/download-hyperledger.sh && scripts/createProfile.sh && npm run startHLF && npm run deployNetwork"
```
and these are the steps that npm install will follow to setup and deploy the sample network. For whatever reason this has not worked for you, you could try completing the steps manually. You will also see in the package.json file what commands npm run startHLF and npm run deployNetwork will invoke as you should see entries for `startHLF` and `deployNetwork` in the file as well.
Hi! composer-rest-server works with node v6.10.3 or only with 6.9.5?
[ ](https://chat.hyperledger.org/channel/composer?msg=kfaKigkTPe2SbHQKH) @davidkel : k let me follow steps manually.
[ ](https://chat.hyperledger.org/channel/composer?msg=CWtjDSCKjMkZF458Y) @alfa : Great man, After following manually steps. I hit the stroke. Its working.
Thanks a lot.
What is the syntax for a default value of an enum in the model. The following doesn't seem to work
o State state default = 'FORSALE'
Since Composer is still in alpha stage, what's your opinion on using it in production? And - if I wanted to go beyond a demo environment - is it possible to set up a multi-node network (meaning, multiple nodes on separate machines) with composer or should I expect problems?
[ ](https://chat.hyperledger.org/channel/composer?msg=FBQCc2Zw4qL54Q7Yv) @dselman Is this app available on github?
Hi everyone, I have a question , in Fabric Composer, when I submit from NODEJS to insert an Asset the NodeJS is suddenly stopping?? is anyone here experience this and solved it? I'm using Windows
[ ](https://chat.hyperledger.org/channel/composer?msg=KXQ8GvTnshdwYFt4v) @jordipainan it should work fine with node v6.10.3.
@vinitesh no, still not available i'm afraid, we're currently working on it.
@JeffGutierrez please note it is Hyperledger Composer or just Composer. please do not use the old Fabric Composer name. do you have any error messages from your Node.js applcation? Can you paste in your source code, or put it up on a GitHub Gist?
[ ](https://chat.hyperledger.org/channel/composer?msg=ShpFAcFhFqR4wF2bP) @davidkel I am not working with hlfv1. I am unable to setup it.Getting few errors while setting up. Hence I am using hlfabric v0.6
Message Attachments
@rama_rahul so it's more a case of which level of hlf v1 are you using ? hlf v1 alpha 1, alpha 2 or bleeding edge from source. Composer only works with alpha 1 release currently
[ ](https://chat.hyperledger.org/channel/composer?msg=3ZAE97cNn44fKhMt3) @sstone1 its Hyperledger Composer,,,its stopping when it execute in registry.add,, please see the code below return this.bizNetworkConnection.getAssetRegistry("com.test.Vehicle")
.then((registry) => {
let factory = this.businessNetworkDefinition.getFactory();
let car = factory.newResource('com.ibm.test', 'Vehicle', jsonData.PlateNum);
car.creationDate = new Date();
car.code = jsonData.Code;
car.comment = jsonData.Comment;
car.description = jsonData.Description;
let ownertmp = factory.newRelationship('com.test', 'user', jsonData.Owner);
car.owner = ownertmp;
return registry.add(car);
})
.then((result) => {
console.log("==============");
console.log("insertVehicle RESULT \n");
console.log(result);
console.log("==============");
json.ErrMsg = "";
return json;
})
.catch(function(error) {
console.log("==============");
console.log("insertVehicle ERROR \n");
console.log(error.message);
console.log("==============");
json.ErrMsg = error.message;
return json;
});
[ ](https://chat.hyperledger.org/channel/composer?msg=3ZAE97cNn44fKhMt3) @sstone1 no error message, it's just going to stop the nodejs from running
[ ](https://chat.hyperledger.org/channel/composer?msg=xaRN36KaLjYcPhuTZ) @sstone1 Thanks @sstone1 . Any idea when are we targeting for this?
Hi @sstone1
I have followed your answer on stack overflow regarding setting up connection profile to deploy network on Bluemix account.
https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
I have been trying to deploy a local instance of hyper ledger network to IBM Blockchainservices. But I always get following errors
1. Error: Identity or token does not match. (When admin or WebAppAdmin user credentials are used)
2. Error: Identity lookup error: sql: no rows in result set. (When any other credentials are used)
Please advise us on this. We have been stuck on this issue for past couple of days.
Has joined the channel.
@AccentSandy The first error is because you already have certificates for those users in your KeyValStore and you have either got them from a local installation of fabric or you have got them from bluemix in the past but have created a new service and this will make them invalid for your current bluemix environment. It's highly recommended that you don't share the same KeyValStore directory when communicating with different running fabrics.
[ ](https://chat.hyperledger.org/channel/composer?msg=xDATW8NYpHtPsmWKG) @davidkel Thanks for your prompt reply. Yes, i did had a local installation of fabric composer but my KeyValStore directory is empty. Can you please share any link or talk on deploying the network to production/IBM blue mix account? I am unable to find any link discussing the same. Thanks for your help.
@AccentSandy The only thing I am aware of is that stackoverflow entry. Maybe someone else in the community has something or can share experiences
@AccentSandy The other thing to be aware of is that once you have enrolled a user and downloaded the cerificate, you cannot enroll that user again. That certificate is your only credential access now and if you delete it you won't be able to use that user again for that current instance of service
@AccentSandy The other thing to be aware of is that once you have enrolled a user and downloaded the certificate, you cannot enroll that user again. That certificate is your only credential access now and if you delete it you won't be able to use that user again for that current instance of service
HI I have the same error but i cannot resolve it ,,,, https://stackoverflow.com/questions/43678445/start-up-fabric-composer-rest-api-server ,,,, any hint ?
@sstone1 @davidkel Hello, I was trying to setup persistence storage for composer-rest server by following 'Deploying the REST server for a business network' doc. Everything went fine and i am able to ping the network with newly stored identity. Now as this storage is persistent , I tried to remove my current rest server container and create a new one to check whether the added identity is still stored in the wallet. But i am not able to create new container for rest server as i am getting following error 0|composer | Error: Private key missing from key store. Can not establish the signing identity for user admin
0|composer | at _mspImpl.cryptoSuite.importKey.then.then (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/User.js:260:11)
PM2 | App [composer-rest-server] with id [0] and pid [21], exited with code [1] via signal [SIGINT]
PM2 | Starting execution sequence in -fork mode- for app name:composer-rest-server id:0 I suppose a new rest server container should be created with the existing mongodb instance.
@sstone1 @davidkel Hello, I was trying to setup persistence storage for composer-rest server by following 'Deploying the REST server for a business network' doc. Everything went fine and i am able to ping the network with newly stored identity. Now as this storage is persistent , I tried to remove my current rest server container and create a new one to check whether the added identity is still stored in the wallet. But i am not able to create new container for rest server as i am getting following error 0|composer | Error: Private key missing from key store. Can not establish the signing identity for user admin
0|composer | at _mspImpl.cryptoSuite.importKey.then.then (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/User.js:260:11)
PM2 | App [composer-rest-server] with id [0] and pid [21], exited with code [1] via signal [SIGINT]
PM2 | Starting execution sequence in -fork mode- for app name:composer-rest-server id:0 I suppose a new rest server container should be created with the existing mongodb instance.
@sstone1 @davidkel Hello, I was trying to setup persistence storage for composer-rest server by following 'Deploying the REST server for a business network' doc. Everything went fine and i am able to ping the network with newly stored identity. Now as this storage is persistent , I tried to remove my current rest server container and create a new one to check whether the added identity is still stored in the wallet. But i am not able to create new container for rest server as i am getting following error 0|composer | Error: Private key missing from key store. Can not establish the signing identity for user admin
0|composer | at _mspImpl.cryptoSuite.importKey.then.then (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/User.js:260:11)
PM2 | App [composer-rest-server] with id [0] and pid [21], exited with code [1] via signal [SIGINT]
PM2 | Starting execution sequence in -fork mode- for app name:composer-rest-server id:0 . I suppose a new rest server container should be created with the existing mongodb instance.
> I suppose a new rest server container should be created with the existing mongodb instance.
yes, you need to keep the mongodb instance around
the certs go into the mongodb instance
yes mongo db instance is still there but rest-server instance is not getting created until i delete the previous mongodb instance and create a new one
oh, odd, let me look into it this afternoon
@sstone1 ok thanks
I've got some transient assets that don't need to be stored past a certain date (the transaction history that they once did exist is good enough)... Is there a pattern for asset "clean up"?
Has joined the channel.
When installing Composer CLI on s390x, how/where can I modify the script to accept the s390x architecture to get past, "npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.1: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"s390x"})"?
@JennFoley I think you can just ignore the warning - i don't think there's a way to get rid of it (that dependency si not under our control)
@JennFoley I think you can just ignore the warning - i don't think there's a way to get rid of it (that dependency is not under our control)
Hey @sstone1, how can I verify that the CLI is installed before installing the sample apps?
Composer command does work. I'm guessing that's the verification
I know in the getting started scripts, I need to point it to look at s390x images, do you know which files I need to look through?
Can someone tell me how I could transfer asset from one account to another on fabric-composer.
I have gone to tutorial on composer, but all I could find was listing the asset and assigning to user by admin
@akshay111meher have the asset relate to an account `--> Account owner` then in the `onMyFooTransaction` script alter the owner and update the registry... you should be able to see this in the car auction example that's loadable in the online playground
you can get the performer of the transaction via `getCurrentParticipan` : https://hyperledger.github.io/composer/jsdoc/module-composer-runtime.html#getCurrentParticipant__anchor ... (Which isn't covered in the examples)
you can get the performer of the transaction via `getCurrentParticipant()` : https://hyperledger.github.io/composer/jsdoc/module-composer-runtime.html#getCurrentParticipant__anchor ... (Which isn't covered in the examples)
(Say if you want to make sure participants cant transfer items on behalf on each other)
To find the car action example go here: https://composer-playground.mybluemix.net -> Import/Replace -> Authenticate with git hub -> select car auction example
@JennFoley `composer -v` would be the way to verify if it's installed
the scripts in question would be: `composer-sample-applications-hlfv1/packages/getting-started/scripts`
you should speak to @mbwhite as he is pulling out these fabric setup scripts into a separate repo, and we should make them compatible with both x86-64 and s390x - it would be great if you could help with that?
Yeah. I can do that. Barry S has already done quite a bit on that. Will start a thread on that.
awesome, thanks! :)
Is there a way to get access to a hash function (doesn't need to be secure) in a playground script file?
@clueless99 you could use a simple hash function like this one ```function hash(str) {
var hash = 0;
if (str.length == 0) return hash;
for (var i = 0; i < str.length; i++) {
char = str.charCodeAt(i);
hash = ((hash << 5) - hash) + char;
hash = hash & hash;
}
return hash;
}
```
haven't tested it but it should work
Thanks @Fanarito
@sstone1 Dumb / newbie question warning :-) . I am using the same VirtualBox VM for my fabric build. I try to build the local version of composer on it . I got the lerna bootstrap successfully done . When I run the lerna test the tests fails with a CHROME not found . ( I am running Ubuntu Server as the OS on VirtualBox ). Is there some way that I can get around this ? like phantomjs etc.
@hariharanatarajan are you trying to develop on composer, or just use composer? if you're trying to use composer, why don't you just install it from npm or docker?
if you're trying to develop on composer we have some scripts in the build for installing a headless chrome i can point you at
also FYI composer only works with fabric alpha 1 at the moment so it may not work with your local fabric build
@sstone1 potentially looking at development . I already figured that the example application failed with the local fabric build :-) . Will appreciate the pointers to the script
When running the all-in-one hlfv1 using the curl command @sstone1 provided, if I export the hlfabric profile it provides a connection.json file. However, when I go to import an updated profile, it does not accept a .json file and says it expects either .js file type.
this bit downloads and installs chrome:
https://github.com/hyperledger/composer/blob/master/.travis/before-install.sh#L52
this bit starts an X virtual frame buffer to act as the "display":
https://github.com/hyperledger/composer/blob/master/.travis/script.sh#L22
[ ](https://chat.hyperledger.org/channel/composer?msg=eZKcepRMvscEJs4YG) @AccentSandy I had the same problem as your error 1, and wrote stack overflow question asking about it, but I haven't seen a response. What I learned in my own testing is that I think the way the authentication works is somehow specific to the hardware address. I got this error when I tried to run composer-rest-server on a machine that was different than the one on which i used composer cli to deploy my bna file. The only solution I have found so far is to use a different enrollment ID that has never been used before on your bluemix instance of blockchain service.
I am planning to do some follow up testing later today or tomorrow to see if the same issue exists in v1.0 running in docker images on my mac. I am not sure if your scenario and mine are the same, but maybe my workaround will also work for you. I ended up using enrollment id "user_type1_0", but I see that your error 2 may have come from already trying that.
(my previous message is referring to playground)
Has joined the channel.
@sstone1 another dumb question . Does the lerna scripts also involve creating the composer docker images or is that separate ?
In the chained `.then(...).then(...)` promises that make up the return value of a transaction function what do I need to do the stop the transaction? I've tried throwing an Error but the playground reports an unhanded rejection and peforms the transaction anyway.
In the chained `.then(...).then(...)` promises that make up the return value of a transaction function what do I need to do the stop the transaction? I've tried throwing an Error but the playground reports an unhandled rejection and performs the transaction anyway.
Has joined the channel.
Hmm I think I'm being a JS newb' ... looks like retuning `Promise.reject(error)` is the done thing
[ ](https://chat.hyperledger.org/channel/composer?msg=K9ww6hY9cfjsd57AP) @dwakeman Thanks for your insight. I have tried all the different enrolment ids which were listed under service credentials. But it always throws one or another error. I also have a very naive question, if you can answer. How do you know which version of hyper ledger fabric is installed or running? I have not seen any commands in the documentation to find out currently installed version of hyperledger. @AlexJYoungman
@sstone1 - I just removed all my containers and ran `curl -sSL http://hyperledger.github.io/composer/install-hlfv1.sh | bash`. Everything was working great when i did this on weekend but now I'm getting error `TypeError: Invalid argument type to path.join: object` when playground starts or when I try to do anything in playground. Did something change to make that unstable or is there something left in my environment that is causing that?
ignore my last message, i just ran `docker run -d -p 8080:8080 hyperledger/composer-playground` and it still had my previous settings which by default were trying to use the `hlfabric` profile which was not working...i was then able to switch back to `Web Browser` profile and everything working. i take it that composer-playground docker was exporting volume settings locally.
@hariharanatarajan I have some vagrant environments that load pre-reqs for a development environment, don't know if you want to give them a try ?
@dwakeman Unfortunately it's something that the hyperledger fabric team need to answer regarding moving the ecert to another machine. I would definitely be interested to know if you have a problem with V1 as the material is stored in what should be a far more portable format.
Still haven't managed to crack it ... Could some one point at how I rollback a transaction from within a `getAssetRegistry('foo.bar').then(function(reg) {/*check something then bail out of transaction*/ });`
@clueless99 can you not raise an error inside of the promise, and catch it with a `.catch(dostuff(data))`?
I've been trying that do I need to do anything in the catch to bail out of the transaction? I thought the transaction needs to raise in order to roll back (sorry my js-fu is not so strong)
I've been trying that but do I need to do anything in the catch to bail out of the transaction? I thought the transaction needs to raise in order to roll back (sorry my js-fu is not so strong)
in the playground, if you throw an error like this `throw new Error('error encountered');` it should stop the transaction
it does not rollback any data that was registered previously in the transaction though
ahhh right so a `then(/*insert foo*/).then(/*try insert bar and fail*/)` will never rollback the foo?
nope, unless you remove it in the catch statement
Ah ha, right so it is working, I just misunderstood rollbacks
Thanks again @Fanarito
Would nesting them fix my problem?
Yup looks like it did :) ... I'm seeing an `Unhandled rejection` in the console, is that expected?
`Unhandled rejection` just means that the promise did not handle the rejection
javascript expects every promise to to handle rejections, i.e. for every `.then` there should be an accompanying `.catch`
Cool, catching and logging fixed it up :)
[ ](https://chat.hyperledger.org/channel/composer?msg=Mz7xgqq33JioHibZc) @AccentSandy If you are running fabric locally using Docker, then you can use the `docker ps -a` command to see all of your docker containers. On my machine they are tagged using the version, like this:
[ ](https://chat.hyperledger.org/channel/composer?msg=Mz7xgqq33JioHibZc) @AccentSandy If you are running fabric locally using Docker, then you can use the `docker ps -a` command to see all of your docker containers. On my machine they are tagged using the version, like this:
```Daves-MBP:hlfv1 dwakeman$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8d8f97615e92 hyperledger/composer-rest-server "pm2-docker compos..." 4 days ago Exited (0) 4 days ago trusting_noether
c63ab89e335c dave-rest-server "pm2-docker compos..." 4 days ago Exited (0) 4 days ago vibrant_shannon
cfe46859f03c dev-peer1-digitalproperty-network-0.7.2 "chaincode -peer.a..." 2 weeks ago Exited (2) 13 days ago dev-peer1-digitalproperty-network-0.7.2
d490eb58da9a hyperledger/fabric-peer:x86_64-1.0.0-alpha "peer node start -..." 2 weeks ago Exited (0) 13 days ago peer1
516629cd915f hyperledger/fabric-peer:x86_64-1.0.0-alpha "peer node start -..." 2 weeks ago Exited (0) 13 days ago peer0
c6936c40da19 hyperledger/fabric-orderer:x86_64-1.0.0-alpha "orderer" 2 weeks ago Exited (2) 13 days ago orderer0
9e780afaf817 hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 2 weeks ago Exited (137) 13 days ago ca_peerOrg1
```
In my case I am running Fabric v1.0.0 alpha. If you're talking about the Blockchain service on Bluemix, it's still currently running v0.61. I think you can see that somewhere on the dashboard for the service.
```Daves-MBP:hlfv1 dwakeman$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8d8f97615e92 hyperledger/composer-rest-server "pm2-docker compos..." 4 days ago Exited (0) 4 days ago trusting_noether
c63ab89e335c dave-rest-server "pm2-docker compos..." 4 days ago Exited (0) 4 days ago vibrant_shannon
cfe46859f03c dev-peer1-digitalproperty-network-0.7.2 "chaincode -peer.a..." 2 weeks ago Exited (2) 13 days ago dev-peer1-digitalproperty-network-0.7.2
d490eb58da9a hyperledger/fabric-peer:x86_64-1.0.0-alpha "peer node start -..." 2 weeks ago Exited (0) 13 days ago peer1
516629cd915f hyperledger/fabric-peer:x86_64-1.0.0-alpha "peer node start -..." 2 weeks ago Exited (0) 13 days ago peer0
c6936c40da19 hyperledger/fabric-orderer:x86_64-1.0.0-alpha "orderer" 2 weeks ago Exited (2) 13 days ago orderer0
9e780afaf817 hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 2 weeks ago Exited (137) 13 days ago ca_peerOrg1
```
In my case I am running Fabric v1.0.0 alpha. If you're talking about the Blockchain service on Bluemix, it's still currently running v0.61. I think you can see that somewhere on the dashboard for the service.
Has joined the channel.
Hello, Is there any documentation of using Historian and running complex queries in CouchDB?
@davidkel Would certainly appreciate the vagrant environment pointers
@vinitesh neither feature has been developed yet ;) complex query support might make it into next weeks release, historian is further off though
I can deploy the business network with a bna file and run chaincode. If I try to update the same network with the same bna file the update keeps failing (it used to work just fine for many days). I have already restarted the peer etc to have a clean system... The error message is
'Error handling message: [e7e4c30d-9485-459a-b1b2-11a8a5c52d1d]Chaincode handler FSM cannot handle message (ERROR) with payload size (33) while in state: ready'
Another error message somewhat earlier from the docker is
17:39:19.721 [Concerto] ERRO : @JS : Engine :invoke() Caught error, rethrowing {"stack":["{Error}chaincode: Table not found Error: chaincode: Table not found"," at main.(*DataService).(main.getCollection)-fm (dataservice.go:54)"," at ../composer-runtime/lib/dataservice.js:108:12"," at Promise (\u003canonymous\u003e:2:28016)"," at getCollection (../composer-runtime/lib/dataservice.js:107:19)"," at ../composer-runtime/lib/engine.businessnetworks.js:128:23"," at \u003canonymous\u003e:2:26885"," at \u003canonymous\u003e:2:27007"," at \u003canonymous\u003e:1:18228"," at \u003canonymous\u003e:1:13226"," at \u003canonymous\u003e:1:28054"]}
[ ](https://chat.hyperledger.org/channel/composer?msg=K579susy6PatwwBxz) @sstone1 Thanks for letting me know. I was scratching my head :)
@hariharanatarajan my vagrant environments can be found at https://github.com/davidkel/composerVagrant
for development you can chose Dev or DevXenial. DevXenial is the only one that provides windows support. They all aim to link a src directory with the host so that you can edit, use git etc on the host and run/test in the vagrant box. But because of Vagrant/VirtualBox limitations DevXenial makes the virtual box filesystem the primary and exposes it to the host except Dev which does it the other way round for the Mac (which I prefer). I've not done a great deal of testing but hopefully you won't hit too many issues
Here is the sequence and responses for actions:
`ubuntu@fabriccomposer:~/jje/property-network$ composer network deploy -a property-network.bna -i WebAppAdmin -s DJY27pEnl16d
Deploying business network from archive: property-network.bna
Business network definition:
Identifier: property-network@0.0.11
Description: JJE test network
\u2714 Deploying business network definition. This may take a minute...
Command succeeded
ubuntu@fabriccomposer:~/jje/property-network$ composer network update -a property-network.bna -i WebAppAdmin -s DJY27pEnl16d
Deploying business network from archive: property-network.bna
Business network definition:
Identifier: property-network@0.0.11
Description: JJE test network
\u2716 Updating business network definition. This may take a few seconds...
timed out waiting for transaction to complete
Command failed
ubuntu@fabriccomposer:~/jje/property-network$
`
@jje @davidkel could this be related to the size of the network? I know that grpc has some size restrictions for RPC payloads.
@jje this issue with same error message is related to enabling security (0.6). What fabric version are you on: https://github.com/hyperledger-archives/fabric/issues/882
@dselman : I'm still using fabric 0.6. Regarding size, the deploy works fine, why should it then fail at update?
If you can consistently reproduce it, could you please create an issue and attach the BNA?
@dwakeman @dklesev thanks to you both for your responses
@jje I wonder if there is anything in the peer or chaincode logs that could give an indication
https://stackoverflow.com/questions/42695751/how-do-i-see-the-logs-for-fabric-composer
provides details for 0.6. A timeout on 0.6 can be an error which can't be reported back so all that can be done is to timeout the request
I'm not sure. I'm currently trying to switch to v1 if it is indeed related to v06 and I need to move to v1 anyway.
@jje with v1 it should report errors back so be interested to hear how things go
Suppose I front-end operations in the Composer Rest Server with an API gateway. Can I process a JWT token in the HTTP Authorization header that is passed by the API Gateway to an operation in the Composer Rest Server? Looking at https://www.npmjs.com/package/loopback-jwt-advanced
JWT seems to be popular today
@davidkel n @sstone1 : We would like to understand Fabric composer internal architecture, Is there any architecture document?
Has joined the channel.
@deepakvparmar you mean Hyperledger Composer; please don't call it Fabric Composer (the old name) - give me a minute and I'll upload some slides I've been working on...
https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=jhMvPf9fZHfiWdx3P) @sstone1 : Thank you simon, will call it hyperledger composer only.
@sstone1 : If you can also share document on composer language for writing model, participant and script, then it would be great, which will help us what are features are available and how we can use it.
I would like to be able to query the history of IoT events tracked for an asset, for large numbers of assets and events. Take for example location tracking of an asset, and query where it has been on a particular date. In the current Composer model, the next location update overwrites the previous one. Keeping the location history in an array field is not scaleable. In https://github.com/ibm-watson-iot/blockchain-samples/tree/master/contracts/platform this is done by adding the transaction timestamp to the composite key user to store the asset state. A GetStateByRange query is used to efficiently retrieve state history.
I would like to be able to query the history of IoT events tracked for an asset, for large numbers of assets and events. Take for example location tracking of an asset, and query where it has been on a particular date.
In the current Composer model, the next location update overwrites the previous one. Keeping the location history in an array field is not scaleable. In https://github.com/ibm-watson-iot/blockchain-samples/tree/master/contracts/platform this is done by adding the transaction timestamp to the composite key user to store the asset state. A GetStateByRange query is used to efficiently retrieve state history.
If Composer would support something like this, access control would apply to each state, and a relational reference could be to a specific timestamped version.
that is all covered in the reference guide of the docs: https://hyperledger.github.io/composer/reference/cto_language.html
(that was meant for @deepakvparmar)
[ ](https://chat.hyperledger.org/channel/composer?msg=scQC2hApJTYGAiM4Y) @sstone1 : Thank you simon :)
@aeisma you may be interested in the work being done on the historian which will allow you to retrieve a record of all changes made to an asset: https://github.com/hyperledger/composer/issues/55
@here there is a Composer call being held at 9am UTC (10am UK, 2:30pm IST, 5pm CST), everybody is welcome and the agenda is still up for grabs if you have questions to ask or things you'd like us to cover. the details are here: https://github.com/hyperledger/composer/wiki/Meeting-1st-Jun-2017
[ ](https://chat.hyperledger.org/channel/composer?msg=Tvx5phuDGba3fzv5B) @sstone1 I am aware of the ideas around a transaction historian, but I am talking about efficiently accessing the time series history of an asset. The way it is explained for the historian, it is about deltas from the perspective of the transaction, possibly limited in depth. I am referring to retrieving the full history of the state of a particular asset between two timestamps.
the other option would be to model a "location event" as an asset, and use the upcoming complex query support to select all "location events" for asset X between timestamps t1 and t2
is there any support for binary datatypes or an option to store binary data with in composer?
like a pdf, picture etc.'
No, not at present. I'd recommend storing these off-chain -- storing a URL to the data.
got it :)
@dselman how far is the analytics going - it was going to be improved quite a bit
We can now emit business events to external systems, so you can send data from the blockchain to your analytics engines and run analytics off chain.
This could be batch analytics using something like Hadoop or streaming analytics using Spark
thx
we are working on complex query support at the moment. This will allow you to run some analytical queries inside CouchDB
@dselman can 2FA be integrated with composer authentication?
If it is supported by passport.js (and everything is!), then yes. The user would auth against the composer-rest-server (which manages their HLF cert) and then can access the Fabric.
@sstone1 added some great docs on how to configure composer-rest-server auth this week.
link please :)
I will check passport.js out
[ ](https://chat.hyperledger.org/channel/composer?msg=bbmtp2RZyuqMJ4hqi) @sstone1 This idea crossed my mind, you'd have to make the timestamp part of the id, I guess. However, rich query is database-native and only available if supported, right? I would prefer to have this at the model level, generically available.
@FelixNielsen https://hyperledger.github.io/composer/unstable/integrating/enabling-rest-authentication.html
Jump on the community call which is starting NOW and you can ask your questions to a real live human! :-)
so just be sure composer is using http://passportjs.org
https://github.com/hyperledger/composer/wiki/Meeting-1st-Jun-2017
@FelixNielsen yes -- the composer-rest-server uses this for auth
@dselman since you mentionn the rest api, I'm curious about Composer with the introduction of organizations at the Fabric layer. Seemed one of the cool things about Composer was how you could hit a channel with participant identified via the rest server. As it's shared ledger, it didn't really matter in some cases which peer handled the request. So a small number of peers could facilitate a large number of participants. With peers now going to be dedicated to specific orgs from alpha2, I wonder if that flexibility will become lost. Curious to see where it goes.
awsome :)
@rfu2k our expert on Alpha2 is @davidkel -- he is working hard on the port right now. That would be a good topic for the community call next week.
Hi All.
Today I run composer-playground(latest) with Fabric v0.6 that is 4 peers.
Then I deploy
Message Attachments
[ ](https://chat.hyperledger.org/channel/composer?msg=KW6WxS6Tq5Lmau6Fw) Thanks @dwakeman. Below is the screenshot of all my docker containers. It appears I am using v0.6 as its listed as “0.6.1-preview”. https://chat.hyperledger.org/channel/composer?msg=SvsLMdvzcDNqBz3Ei . I have been following the instructions listed here https://hyperledger.github.io/composer/tutorials/getting-started-playground.html to run the composer playground locally. Is it not bad decision to continue with 0.6 version as IBM account only provides limited beta access for latest v1.0 fabric architecture.
[ ](https://chat.hyperledger.org/channel/composer?msg=KW6WxS6Tq5Lmau6Fw) Thanks @dwakeman. Below is the screenshot of all my docker containers. It appears I am using v0.6 as its listed as “0.6.1-preview”. https://chat.hyperledger.org/channel/composer?msg=SvsLMdvzcDNqBz3Ei . I have been following the instructions listed here https://hyperledger.github.io/composer/tutorials/getting-started-playground.html to run the composer playground locally. Is it a bad decision to continue with 0.6 version as IBM account only provides limited beta access for latest v1.0 fabric architecture.
Your chaincode container seems to have crashed.
Try running `docker logs` against it and the peer and see what happened
Hi How can I get the history of transactions by composet, thanks
sorry
Hi How can I get the history of transactions by composer
@xuzhao103389 which method are you connecting to your business network? If it's over REST, there's a /system/transactions endpoint you can call to GET all transactions in the transactions registry.
so if I set up the rest server, then I will see the /system/transactions endpoint?
now I am not using rest server
in my user case, there is 1 asset, and multiple transaction working on this asset, can I get all the transaction history based on this asset?
@xuzhao103389 sure if you'd like to use REST and you run the composer-rest-server, for quick test you can open up the created explorer link and scroll down to almost the very bottom you'll see the system endpoint. Open up and you'll see the GET call for system/transactions
I'm sure there will also be similar method if you are using node API (just I haven't used it, someone else can advise on that). Also you can view the transaction registry from inside Composer Playground if you have used that.
thanks a million :) @rfu2k
I will try to find out
@xuzhao103389 ah but just seen your follow up, you'll GET all transactions using this method but I don't see a way to filter by asset if that's important. You might have to first get the whole list of transactions returned, then filter yourself on your end.
@xuzhao103389 ah but just seen your follow up, you'll GET all transactions using this method but I don't see a way to filter by asset if that's important. You might have to first get the whole list of transactions returned, then filter yourself on your end.
Let us know what you learn, hope it goes well and suits your needs :)
@xuzhao103389 ah but just seen your follow up, you'll GET all transactions using this method but I don't see a way to filter by asset if that's important. You might have to first get the whole list of transactions returned, then filter yourself on your end. But if you have only 1 asset I guess they'll all be related, just by design of your application. If you had a few assets, you'd get all transactions for the few assets returned and you might need filter that.
Let us know what you learn, hope it goes well and suits your needs :)
@xuzhao103389 ah but just seen your follow up, you'll GET all transactions using this method but I don't see a way to filter by asset if that's important. You might have to first get the whole list of transactions returned, then filter yourself on your end. But if you have only 1 asset I guess they'll all be related, just by design of your application. If you had a few assets, you'd get all transactions for the few assets returned and you might need filter that so you end up with the ones you want.
Let us know what you learn, hope it goes well and suits your needs :)
thanks a million
@rfu2k I can find system , but I can not find /system/transactions
I have /system/issueidentity. ping revokeidentity
those 3 items
but i can not see /system/transactions
You need to upgrade to 0.7.3
can you give me a link about 0.7.3
thanks
@xuzhao103389 `npm upgrade -g composer-rest-server`
Hi Guys,
I'm having some trouble, running the command
`composer network deploy --archiveFile marketplace.bna --enrollId WebAppAdmin --enrollSecret 7b5931880d --connectionProfileName local` but am receiving the following error
```
✖ Deploying business network definition. This may take a minute...
Error: Error: signature does not verify
Command failed
```
Hi Guys,
I'm having some trouble, running the command
`composer network deploy --archiveFile marketplace.bna --enrollId WebAppAdmin --enrollSecret 7b5931880d --connectionProfileName local` but am receiving the following error
```
✖ Deploying business network definition. This may take a minute...
Error: Error: signature does not verify
Command failed
```
Hi Guys,
I'm having some trouble, running the command
`composer network deploy --archiveFile marketplace.bna --enrollId WebAppAdmin --enrollSecret 7b5931880d --connectionProfileName local` but am receiving the following error
```
✖ Deploying business network definition. This may take a minute...
Error: Error: signature does not verify
Command failed
```
Any idea what the cause would be?
ok
but I hit this error
Discovering types from business network definition ...
Connection fails: Error: Deployed chain-code (0.5.12) is incompatible with client (0.7.3)
It will be retried for the next request.
Error: Deployed chain-code (0.5.12) is incompatible with client (0.7.3)
at queryChainCode.then (/home/vagrant/.nvm/versions/node/v6.9.4/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:545:27)
looks like you're on an old version of the code
you'll also need to upgrade composer-cli
and redeploy your business network
ok
thanks
Has joined the channel.
So how do you generate indexes for object in the code?
The problem is that I cannot get an object id for an asset \ participant in the system that I know is finalized.
If I user an asset for that in the system the Index will be depend on the order of the transaction
The problem is that I cannot get an object id for an asset \ participant in the system that I know is finalized.
If I use an asset for that in the system the Index will be depend on the order of the transactions.
@bejavu sorry I don't understand what you are trying to do. Perhaps a code snippet would help?
@bejavu do you mean index like in a database that you'd call to get the next number to assign, maybe there is a index counter of assets, and when you create a new asset you can get the next number from the index and assign it to the asset id?
Has joined the channel.
@rfu2k, @dselman Yes, like a DB index for an object. If I use a special counter asset, the Order of the transactions that decided by that decided by the orderer determines the value of the id. the validatior peer can
@rfu2k, @dselman Yes, like a DB index for an object. If I use a special counter asset, the Order of the transactions that decided by that decided by the orderer determines the value of the id. the validation peer can't really know the id until the transaction is oredered
@rfu2k, @dselman Yes, like a DB index for an object. If I use a special counter asset, the Order of the transactions that decided by that decided by the orderer determines the value of the id. the validation peer can't really know the id until the transaction is ordered.
I think it would help everyone if you backed away from the implementation and described the problem you are trying to solve.
@dselman still far from the implementation, just trying to understand the system and better understand the relations between the entities.
If I am an issuer of an asset, lets say USD, I want the Id of that asset. I dont want to "hard code" that asset id, I want to get some identifier from the system, like in a simple db. If I use a special object\asset for it, I will get the id only after a transaction (lets say an initial issue transaction) has been ordered, and not before.
@bejavu you could use a function to generate a uuid for the asset, then you have the id of the object as soon as you generate the id
@bejavu you could use a function to generate a uuid for the asset, then you have the id of the asset as soon as you generate the id
@bejavu you could use a function to generate a uuid for the asset, then you have the id of the asset as soon as you generate the id -- disregard
@bejavu disregard -- you could use a function to generate a uuid for the asset, then you have the id of the asset as soon as you generate the id
@bejavu the behavior of the transaction processor functions must be deterministic across all peers -- so you cannot generate UUIDs inside your TP functions. This leaves you with 2 options. 1/ generate the assets IDs on the client, with the new asset id submitted as part of the incoming transaction. 2/ Use a counter than lives on the blockchain. 2/ is not really possible because there is no global lock / synchronization between the peers, so if you are processing 2 transactions in parallel they will likely get different values for your global counter, and one of the transactions will be rolled back due to a consensus failure.
So, there are some additional constraints you need to be aware of compared to a traditional centralized database.
@bejavu this might make a good Stackoverflow Q & A. Can you move it there please and tag with `hyperledger-composer` ?
[ ](https://chat.hyperledger.org/channel/composer?msg=B6xJeSYSGWDRXhdJc) @AccentSandy I'm not sure I have an opinion on whether to use 0.61 or 1.0. I see that the docker-compose file for playground does pull the 0.61 images, so that makes sense why you have them, and the documentation states that as well. If you want to use the v1.0 alpha you can follow the quickstart instructions: https://hyperledger.github.io/composer/installing/quickstart.html
That's how I got v1.0 to run locally. Composer playground works with both. In the quickstart instructions there are two different links to the gitub repository for the samples application, one for v0.61 and another for v1.0. I will let others comment on whether you should use one version of the other.
[ ](https://chat.hyperledger.org/channel/composer?msg=gD2EKdpNFfnsu5h8K) @dwakeman Thanks. That's the link i am following now. I have got rid of all old fabric images and currently in the process of pulling the 1.0 alpha image. Hope this fixes the deployment issue that we were facing earlier. Thanks for your help.
@dselman hi, I am trying the composer-rest-server and I am not sure exactly how is the "find" with filter operation supposed to work.
For instance when I try a filter similar to {"status":"complete"}, I get all instances, regardless of the value of their "status" field. It's like no filter is specified at all.
the generated URL looks like this: http://localhost:3000/api/my.Participant?filter=%7B%22status%22%3A%22complete%22%7D
it invariably returns all my.Participant instances, no matter what's the value of the "status" field
Message Attachments
@uber.twin content based filtering is not supported
We are working on rich query support.
https://github.com/hyperledger/composer/issues?q=is%3Aissue+is%3Aopen+query+label%3Aquery
where would we raise potential doc issues or at least question some of the commands for creating Composer apps?
Has joined the channel.
@JennFoley you can raise questions on Stack Overflow using the `hyperledger-composer` tag, if you think there are bugs/issues raise them in GitHub here: https://github.com/hyperledger/composer/issues
@dselman so for now the only supported search criteria is "id' based alone, right?
correct
ok, thank you
@sstone1 @davidkel is there a way to create the hyperledger-composer docker image locally ?
yes, there are Dockerfiles in all of the relevant projects
@hariharanatarajan f.e. playground https://github.com/hyperledger/composer/blob/master/packages/composer-playground/docker/Dockerfile
@sstone1 is it possible that wildcard definition (namespaces) is not supported when generating angular application with yo?
I'm getting errors like this: `[0] ERROR in /home/dimi/Master_Thesis/hyperledger/composer_usecases/chemical-barrels-app/src/app/org.chemical.barrels.transactions.ts (7,15): Cannot find name 'Barrel'.`
what version of the composer libs have you got in package.json in the generated app?
it's very possible though
we might not be generating the right typescript code
```
```
```
"composer-client": "^0.7.0",
"composer-rest-server": "^0.7.0",
```
as I can see the version is wrong?
that should have installed the latest 0.7.x version
I did an upgrade of following modules before: composer-cli, generator-hyperledger-composer, composer-rest-server
under templates both are defined as 7.0
looks like the Composer modeling language does not support binary fields. Any tip on how I could send a transaction with a byte array and get it in the transaction processor?
or model an asset that stores a byte array?
@StephaneMery could you model it as an Integer Array ?
more info can be found at
https://hyperledger.github.io/composer/reference/cto_language.html
I installed playground locally using npm install command and I don't see the globe icon showing up and I keep getting following valid security context related errors any idea? Error: ENOENT: no such file or directory, mkdir '/home/composer/.composer-credentials'
@nehalshah50 do you get the same problem if you connect to your local playground in an incognito window ?
[ ](https://chat.hyperledger.org/channel/composer?msg=zquDqefs8TbkhXxkw) @davidkel First time I installed it all worked fine then I tried adding new connection profile through UI and used /Users/[userid]/.composer-credentials for the keyvalueStore and it didn't like it. After that it would never start up again. So I uninstalled using 'npm uninstall' and reinstalled the local playground again. And since then it doesn't want to work
@nehalshah50 One of the problems is that a lot of information is stored in the browser's local storage. If you run it in an incognito window then that session will not have any old playground local storage that could cause problems
[ ](https://chat.hyperledger.org/channel/composer?msg=2bJhkPTPsJxAbFSXP) @davidkel That worked. But how do i connect to fabric instance which is running locally from local playground? I tried creating new connection profile with following settings but it keeps giving me ENOTSUP error.. {
"name": "hlfv1",
"description": "A description for a V1 Profile",
"type": "hlfv1",
"orderers": [
{
"url": "grpc://localhost:7050",
"cert": "",
"hostnameOverride": ""
}
],
"channel": "mychannel",
"mspID": "Org1MSP",
"ca": "http://localhost:7054",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053",
"cert": "",
"hostnameOverride": ""
}
],
"keyValStore": "/home/.hfc-key-store",
"deployWaitTime": 300,
"invokeWaitTime": 30
}
@nehalshah50 i suspect your keyValStore directory doesn't exist or cannot be accessed
`/home/.hfc-key-store` this looks wrong
[ ](https://chat.hyperledger.org/channel/composer?msg=K6L7C5PToAELusW9P) @sstone1 I am following guidelines from here https://hyperledger.github.io/composer/installing/createconnectionprofile.html
gah... those docs are wrong
sorry
it should be `/home/
when using the Docker image for Playground, it should be `/home/composer/.hfc-key-store`
[ ](https://chat.hyperledger.org/channel/composer?msg=eG28getmAb3jhjD89) @sstone1 I am on MAC and my home directory is at /Users/
I have fabric 1.0 running using the guide here https://hyperledger.github.io/composer/installing/quickstart.html
so, it needs to be `/Users/
so, it needs to be `/Users/
After creating new profile and trying to use the profile it popsup Connect with Identity window and I try to add new identity and I get error Error: Could not parse enrollment response [{"success":false,"result":null,"errors":[{"code":400,"message":"Authorization failure"}],"messages":[]} ] as JSON due to error [TypeError: Cannot read property 'errors' of undefined]
what identity did you use?
admin / adminpw?
no...i just tried adding new identity..picked new username and usersecret
that form is for adding an existing identity to your wallet
@sstone1 I had raised an issue raised regarding how to create profiles
@sstone1 I had raised an issue raised regarding how to create profiles, but will definitely get it sorted for alpha2 release
I tried with admin/adminpw and it worked. So once connected...If I define my new network and test and deploy, it will go to my locally running fabric instance?
How are folks zipping/unzipping bna files locally? I find after unzipping, then rezipping, when I attempt to import I get an error complaining about an invalid BNA, package.json must exist.
why wouldn't you be using `composer network archive` from the source?
@nehalshah50 yes, once you have connected to the fabric connection profile, the business network will get deployed to that local fabric.
Can one fabric instance run multiple network?
you can deploy multiple Composer business networks to a single Fabric instance
but you have to use the Composer CLI for this
Playground only supports one business network per Fabric connection profile, and it must be called org.acme.biznet
we are working on removing this restriction
Has joined the channel.
@here we've released Hyperledger Composer v0.7.4, read all about it on GitHub: https://github.com/hyperledger/composer/releases/tag/v0.7.4 🎉
Also, the team have done some excellent work on massively improving the new user experience - in particular the documentation: https://hyperledger.github.io/composer/introduction/introduction.html
But also you can now "officially" install Fabric + Composer Playground in a one line command: https://hyperledger.github.io/composer/getting-started/using-playground-locally.html
`curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash` is the magic command if TL;DR ;)
Few days back when I was playing in the online playground I found an issue. If the data model has a enum type defined in one of the data object it fails to check against enumerated values while values are being set through transactions or other means. It allows to set any values outside of available enum values. For example if Asset has one of the attribute of type enum and once the bad values is set then playground doesn't allow to go back to the asset in UI. Let me know if you need more info
is playground already deployed in mybluemix.net? if yes, the 'Get local version' still point to the old page that has been removed
...damn
is it possible to use multiple files for permissions definition?
@dklesev no, not right now. Do you think this is necessary?
@dselman sure, if there are complex permissions it can become very large
and I would like to separate permissions to related objects
but just an idea
More awesomeness.. This time from @caroline-church https://www.npmjs.com/package/node-red-contrib-composer
and some acl syntax highlighting would be great :)
thought to contribute there but got scared after viewing all cson definitions...
The VSCode extension does validation and highlighting for both CTO and ACL files.
@dselman would you recommend VSCode over atom?
I cleaned up my workspace and downloaded new composer 0.7.4 , local playground and trying to connect to the fabric instance running locally using admin/adminpw and its not connecting
@nehalshah50 could you provide more details?
I recommend you to follow this here: https://hyperledger.github.io/composer/getting-started/using-playground-locally.html
it will setup everything for you
I followed this https://hyperledger.github.io/composer/getting-started/development-tools.html and then started my local playground, started local fabric, created connection profile etc..., After starting playground I am opening up the playground using incognito and then trying to connect to a running instance of fabric locally but get following error e_modules/composer-playground/node_modules/composer-connector-hlfv1/lib'
events.js:160
throw er; // Unhandled 'error' event
^
Error: Connect Failed
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-playground/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
if you try to deploy a bna on command line what do you get?
https://hyperledger.github.io/composer/reference/composer.network.deploy.html
shouldn't the local playground show the connection profiles already stored at ${HOME}/.composer-connection-profiles ? I have default folder and hlfv1 folder here
createConnectionProfile.sh creates the hlfv1 folder
createComposerProfile.sh creates the hlfv1 folder
Perhaps this is a dumb question, but can I get my hands on the OpenAPI document for my business network? I am guessing that one gets generated for/by composer-rest-server, but I am not sure where to find it. I need it to import into another application from which I want to integrate with my network.
In my docker I have two peers, orderer, and ca running after I start the fabric using startFabric.sh
[ ](https://chat.hyperledger.org/channel/composer?msg=DEEwo3Fz23vzWcPjQ) @nehalshah50 try deleting the defaultprofile folder as it might have an old connection profile
[ ](https://chat.hyperledger.org/channel/composer?msg=DGh4ANrjxD2Z3W86N) @dklesev I tried following this and now I keep getting this error........... RROR: for ca0 Cannot start service ca0: Mounts denied: erences... -> File Sharing.
See https://docs.docker.com/docker-for-mac/osxfs/#namespaces for more info.
.
crypto-config/peerOrganizations/peerOrg1/ca
is not shared from OS X and is not known to Docker.
You can configure shared paths from Docker -> Pref
ERROR: for orderer0 Cannot start service orderer0: Mounts denied: ers/ordererOrg1orderer1
are not shared from OS X and are not known to Docker.
You can configure shared paths from Docker -> Preferences... -> File Sharing.
See https://docs.docker.com/docker-for-mac/osxfs/#namespaces for more info.
.
/ordererOrg1/order
ERROR: Encountered errors while bringing up the project.
[ ](https://chat.hyperledger.org/channel/composer?msg=gnfNatDiRAhR7gadH) @dklesev I tried following this but now keep getting following error.....RROR: for ca0 Cannot start service ca0: Mounts denied: erences... -> File Sharing.
See https://docs.docker.com/docker-for-mac/osxfs/#namespaces for more info.
.
crypto-config/peerOrganizations/peerOrg1/ca
is not shared from OS X and is not known to Docker.
You can configure shared paths from Docker -> Pref
ERROR: for orderer0 Cannot start service orderer0: Mounts denied: ers/ordererOrg1orderer1
are not shared from OS X and are not known to Docker.
You can configure shared paths from Docker -> Preferences... -> File Sharing.
See https://docs.docker.com/docker-for-mac/osxfs/#namespaces for more info.
.
/ordererOrg1/order
ERROR: Encountered errors while bringing up the project.
seems that crypto-config can't be mounted to docker
It can all start fine using startFabric.sh
I have /Users /Volumes /tmp /private directories and their subdirectories set in the docker file sharing preferences .. I am not sure if new .0.7.4 instructions and scripts work with MacOS
@nehalshah50 currently I have no mac to test with, sorry
I recommend you to clean everything up, checkout the repos and start over
ok..thx for your help
and delete all docker images and containers
did that already...but will give it another shot
Has joined the channel.
Hello. Having trouble setting up a local Fabric environment. Basically, I set up a model & function I liked on the Bluemix Playground, and exported it as a .bna file. Not quite sure where to go from there in terms of deploying it locally (I'd like to make a simple CLI app).
Problem might be Docler
Docker
@sstone1 Typical Solution Architecture page is loading to hyperledger.org
sorry loading correctly now..
@mattalhonte maybe https://hyperledger.github.io/composer/getting-started/development-tools.html is what you are looking for ?
[ ](https://chat.hyperledger.org/channel/composer?msg=sLb3oZ7XrEMTKgZCe) @davidkel Wow! It looks like you have updated the procedure it is now very easy to setup the fabric. Excellent work!!
Message Attachments
@sstone1 @davidkel have a local version of Fabric running ( using the examples/e2e_cli script . ) So I have a cryptogen directory etc. What value do i give from the Identity required in the connection profile ?
I am running a local version of playground using (docker run -d -p 8080:8080 hyperledger/composer-playground )
On the same machine
This is what my docker ps looks like
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
dcf3de7c0601 hyperledger/composer-playground "pm2-docker compos..." 27 minutes ago Up 27 minutes 0.0.0.0:8080->8080/tcp confident_euler
14787c7bdd24 dev-peer1.org2.example.com-mycc-1.0 "chaincode -peer.a..." 33 minutes ago Up 33 minutes dev-peer1.org2.example.com-mycc-1.0
556dfc5238a5 dev-peer0.org1.example.com-mycc-1.0 "chaincode -peer.a..." 34 minutes ago Up 34 minutes dev-peer0.org1.example.com-mycc-1.0
8a1c52979d3d dev-peer0.org2.example.com-mycc-1.0 "chaincode -peer.a..." 34 minutes ago Up 34 minutes dev-peer0.org2.example.com-mycc-1.0
76cc3ef8b13d hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 34 minutes ago Up 34 minutes 0.0.0.0:7054->7054/tcp ca_peerOrg1
3001ce5264d7 hyperledger/fabric-peer "peer node start -..." 34 minutes ago Up 34 minutes 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
cc257e854c79 hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 34 minutes ago Up 34 minutes 0.0.0.0:8054->7054/tcp ca_peerOrg2
2ddf5a7f7773 hyperledger/fabric-peer "peer node start -..." 34 minutes ago Up 34 minutes 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
ef1b7a5de695 hyperledger/fabric-peer "peer node start -..." 34 minutes ago Up 34 minutes 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
546964f293fb hyperledger/fabric-orderer "orderer" 34 minutes ago Up 34 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
bbe2c5eeb1cd hyperledger/fabric-peer "peer node start -..." 34 minutes ago Up 34 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
dcf3de7c0601 hyperledger/composer-playground "pm2-docker compos..." 27 minutes ago Up 27 minutes 0.0.0.0:8080->8080/tcp confident_euler
14787c7bdd24 dev-peer1.org2.example.com-mycc-1.0 "chaincode -peer.a..." 33 minutes ago Up 33 minutes dev-peer1.org2.example.com-mycc-1.0
556dfc5238a5 dev-peer0.org1.example.com-mycc-1.0 "chaincode -peer.a..." 34 minutes ago Up 34 minutes dev-peer0.org1.example.com-mycc-1.0
8a1c52979d3d dev-peer0.org2.example.com-mycc-1.0 "chaincode -peer.a..." 34 minutes ago Up 34 minutes dev-peer0.org2.example.com-mycc-1.0
76cc3ef8b13d hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 34 minutes ago Up 34 minutes 0.0.0.0:7054->7054/tcp ca_peerOrg1
3001ce5264d7 hyperledger/fabric-peer "peer node start -..." 34 minutes ago Up 34 minutes 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
cc257e854c79 hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 34 minutes ago Up 34 minutes 0.0.0.0:8054->7054/tcp ca_peerOrg2
2ddf5a7f7773 hyperledger/fabric-peer "peer node start -..." 34 minutes ago Up 34 minutes 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
ef1b7a5de695 hyperledger/fabric-peer "peer node start -..." 34 minutes ago Up 34 minutes 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
546964f293fb hyperledger/fabric-orderer "orderer" 34 minutes ago Up 34 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
bbe2c5eeb1cd hyperledger/fabric-peer "peer node start -..." 34 minutes ago Up 34 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
davidkel (Fri, 02 Jun 2017 12:17:36 GMT):
@rama_rahul that looks like a docker registry problem to me, maybe you can't contact the docker hub services for some reason.
davidkel (Fri, 02 Jun 2017 12:18:45 GMT):
@hariharanatarajan Sorry, I don't understand the question, could you provide more details of what you are trying to do and what error you might be getting
rama_rahul (Fri, 02 Jun 2017 12:18:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3DKAYncbpdTdk9qrq) @davidkel I tried to run the command again then it started without any error. Still don't understand why.
rama_rahul (Fri, 02 Jun 2017 12:18:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3DKAYncbpdTdk9qrq) @davidkel I tried to run the command again then it started without any error. Still don't understand why there was error previously.
davidkel (Fri, 02 Jun 2017 12:19:15 GMT):
@rama_rahul either a problem with the docker registry service is a network problem
davidkel (Fri, 02 Jun 2017 12:19:15 GMT):
@rama_rahul either a problem with the docker registry service or a network problem
rama_rahul (Fri, 02 Jun 2017 12:19:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BsKwdbdGDMKoQ86H7) @davidkel Anyway its working fine now. No issues :)
Fanarito (Fri, 02 Jun 2017 12:26:49 GMT):
using the composer-rest-server I am able to create and update assets that have invalid foreign keys, is this by design?
and also, the PUT/POST/DELETE request are not recorded as transactions is that also by design?
Fanarito (Fri, 02 Jun 2017 12:26:49 GMT):
using the composer-rest-server I am able to POST/PUT assets that have invalid foreign keys, is this by design?
and also, the PUT/POST/DELETE request are not recorded as transactions is that also by design?
JennFoley (Fri, 02 Jun 2017 12:52:00 GMT):
I have an asset that has a relationship to a participant. In the transaction logic how do I find all assets related to the participant? There doesn't seem to be any API to resolve relationships and I'm on the many end of a 1:many relationship so the relationship isn't declared on the participant.
E.g. How do I find all cars owned by a person if I currently have an instance of the person and the cars' asset registry?
Fanarito (Fri, 02 Jun 2017 12:56:30 GMT):
@JennFoley I don't think it has been implemented yet since querying is not implemented yet. The samples use an array of relationships on the 1 end, to facilitate this
dklesev (Fri, 02 Jun 2017 12:57:57 GMT):
@JennFoley I have a similar problem, but we have to wait until querying is implemented
JennFoley (Fri, 02 Jun 2017 12:58:47 GMT):
@dklesev @Fanarito that was a bit of my fear.
Fanarito (Fri, 02 Jun 2017 12:59:38 GMT):
but I think I read somewhere that querying might sneak in next week.
JennFoley (Fri, 02 Jun 2017 13:02:09 GMT):
@Fanarito I remember seeing something like that from @sstone1 . . . . too bad I need something today. Will modify my code and then reevaluate when the query is in there and see how different the impact would be
dklesev (Fri, 02 Jun 2017 13:04:34 GMT):
@JennFoley you can query on peer level I guess, so our problem is related to composer
dklesev (Fri, 02 Jun 2017 13:04:49 GMT):
https://hyperledger-fabric.readthedocs.io/en/latest/getting_started.html#using-couchdb
dklesev (Fri, 02 Jun 2017 13:04:53 GMT):
maybe it helps
dklesev (Fri, 02 Jun 2017 13:05:48 GMT):
there are even JS queries defined in the animaltracking demo for composer
dklesev (Fri, 02 Jun 2017 13:05:48 GMT):
https://github.com/hyperledger/composer-sample-networks/blob/master/packages/animaltracking-network/lib/mozart.cto.js
dklesev (Fri, 02 Jun 2017 13:10:03 GMT):
if you find out how one can use the animaltracking queries, let me know :D
davidkel (Fri, 02 Jun 2017 13:17:06 GMT):
@dklesev @JennFoley Complex query support in composer will require couchdb to be enabled in the fabric you are running. It won't be able to work with leveldb which is the default if couchdb is not enabled. Our current local dev fabric environment doesn't have couchdb enabled, it would be updated when complex query support is released
akshay111meher (Fri, 02 Jun 2017 13:19:03 GMT):
suddenly my transaction are not happening..
it is the same script i am executing... they were working yesterday....now i am getting this kind of error...can someone point of what could be the probable issue. These are the docker logs which i am getting..
2017-06-02 13:10:15.478 UTC [eventhub_producer] Chat -> ERRO 03c Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:11:05.949 UTC [eventhub_producer] Chat -> ERRO 03d Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:11:35.557 UTC [eventhub_producer] Chat -> ERRO 03e Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:12:01.655 UTC [kvledger] Commit -> INFO 03f Channel [mychannel]: Created block [5] with 1 transaction(s)
2017-06-02 13:12:04.364 UTC [eventhub_producer] Chat -> ERRO 040 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:12:56.420 UTC [eventhub_producer] Chat -> ERRO 041 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:13:33.166 UTC [kvledger] Commit -> INFO 042 Channel [mychannel]: Created block [6] with 1 transaction(s)
2017-06-02 13:13:34.971 UTC [eventhub_producer] Chat -> ERRO 043 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:14:03.587 UTC [eventhub_producer] Chat -> ERRO 044 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:15:55.286 UTC [kvledger] Commit -> INFO 045 Channel [mychannel]: Created block [7] with 1 transaction(s)
2017-06-02 13:15:56.554 UTC [eventhub_producer] Chat -> ERRO 046 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
akshay111meher (Fri, 02 Jun 2017 13:19:03 GMT):
suddenly my transaction are not happening..
it is the same script i am executing... they were working yesterday....now i am getting this kind of error...can someone point of what could be the probable issue. These are the docker logs which i am getting..
2017-06-02 13:10:15.478 UTC [eventhub_producer] Chat -> ERRO 03c Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:11:05.949 UTC [eventhub_producer] Chat -> ERRO 03d Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:11:35.557 UTC [eventhub_producer] Chat -> ERRO 03e Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:12:01.655 UTC [kvledger] Commit -> INFO 03f Channel [mychannel]: Created block [5] with 1 transaction(s)
2017-06-02 13:12:04.364 UTC [eventhub_producer] Chat -> ERRO 040 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:12:56.420 UTC [eventhub_producer] Chat -> ERRO 041 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:13:33.166 UTC [kvledger] Commit -> INFO 042 Channel [mychannel]: Created block [6] with 1 transaction(s)
2017-06-02 13:13:34.971 UTC [eventhub_producer] Chat -> ERRO 043 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:14:03.587 UTC [eventhub_producer] Chat -> ERRO 044 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:15:55.286 UTC [kvledger] Commit -> INFO 045 Channel [mychannel]: Created block [7] with 1 transaction(s)
2017-06-02 13:15:56.554 UTC [eventhub_producer] Chat -> ERRO 046 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
akshay111meher (Fri, 02 Jun 2017 13:19:03 GMT):
@clueless99 @sstone1
suddenly my transaction are not happening..
it is the same script i am executing... they were working yesterday....now i am getting this kind of error...can someone point of what could be the probable issue. These are the docker logs which i am getting..
2017-06-02 13:10:15.478 UTC [eventhub_producer] Chat -> ERRO 03c Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:11:05.949 UTC [eventhub_producer] Chat -> ERRO 03d Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:11:35.557 UTC [eventhub_producer] Chat -> ERRO 03e Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:12:01.655 UTC [kvledger] Commit -> INFO 03f Channel [mychannel]: Created block [5] with 1 transaction(s)
2017-06-02 13:12:04.364 UTC [eventhub_producer] Chat -> ERRO 040 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:12:56.420 UTC [eventhub_producer] Chat -> ERRO 041 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:13:33.166 UTC [kvledger] Commit -> INFO 042 Channel [mychannel]: Created block [6] with 1 transaction(s)
2017-06-02 13:13:34.971 UTC [eventhub_producer] Chat -> ERRO 043 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:14:03.587 UTC [eventhub_producer] Chat -> ERRO 044 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:15:55.286 UTC [kvledger] Commit -> INFO 045 Channel [mychannel]: Created block [7] with 1 transaction(s)
2017-06-02 13:15:56.554 UTC [eventhub_producer] Chat -> ERRO 046 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
dklesev (Fri, 02 Jun 2017 13:19:38 GMT):
@davidkel but one can use complex queries without composer but with couchDB enabled? I mean the cli and peer directly
davidkel (Fri, 02 Jun 2017 13:21:24 GMT):
@dklesev Not tried that with the alpha1 images so don't know if it works
dklesev (Fri, 02 Jun 2017 13:22:04 GMT):
ok :D
I'm far away from experimenting with this, too
akshay111meher (Fri, 02 Jun 2017 13:28:32 GMT):
@clueless99 @sstone1
suddenly my transaction are not happening..
it is the same script i am executing... they were working yesterday....now i am getting this kind of error...can someone point of what could be the probable issue. These are the docker logs which i am getting..
2017-06-02 12:56:12.261 UTC [ledgermgmt] initialize -> INFO 001 Initializing ledger mgmt
2017-06-02 12:56:12.261 UTC [kvledger] NewProvider -> INFO 002 Initializing ledger provider
2017-06-02 12:56:12.578 UTC [kvledger] NewProvider -> INFO 003 ledger provider Initialized
2017-06-02 12:56:12.578 UTC [ledgermgmt] initialize -> INFO 004 ledger mgmt initialized
2017-06-02 12:56:12.580 UTC [eventhub_producer] start -> INFO 005 event processor started
2017-06-02 12:56:12.581 UTC [chaincode] NewChaincodeSupport -> INFO 006 Chaincode support using peerAddress: peer0:7051
2017-06-02 12:56:12.581 UTC [sysccapi] RegisterSysCC -> INFO 007 system chaincode cscc(github.com/hyperledger/fabric/core/scc/cscc) registered
2017-06-02 12:56:12.581 UTC [sysccapi] RegisterSysCC -> INFO 008 system chaincode lccc(github.com/hyperledger/fabric/core/scc/lccc) registered
2017-06-02 12:56:12.582 UTC [sysccapi] RegisterSysCC -> INFO 009 system chaincode escc(github.com/hyperledger/fabric/core/scc/escc) registered
2017-06-02 12:56:12.582 UTC [sysccapi] RegisterSysCC -> INFO 00a system chaincode vscc(github.com/hyperledger/fabric/core/scc/vscc) registered
2017-06-02 12:56:12.582 UTC [sysccapi] RegisterSysCC -> INFO 00b system chaincode qscc(github.com/hyperledger/fabric/core/chaincode/qscc) registered
2017-06-02 12:56:12.582 UTC [gossip/service] func1 -> INFO 00c Initialize gossip with endpoint peer0:7051 and bootstrap set [127.0.0.1:7051]
akshay111meher (Fri, 02 Jun 2017 13:28:44 GMT):
2017-06-02 12:56:12.583 UTC [msp] DeserializeIdentity -> INFO 00d Obtaining identity
2017-06-02 12:56:12.583 UTC [msp] Validate -> INFO 00e MSP Org1MSP validating identity
2017-06-02 12:56:12.587 UTC [msp] DeserializeIdentity -> INFO 00f Obtaining identity
2017-06-02 12:56:12.587 UTC [msp] Validate -> INFO 010 MSP Org1MSP validating identity
2017-06-02 12:56:12.588 UTC [msp] DeserializeIdentity -> INFO 011 Obtaining identity
2017-06-02 12:56:12.588 UTC [gossip/discovery#peer0:7051] NewDiscoveryService -> INFO 012 Started {peer0:7051 [] [156 43 33 171 114 249 57 151 235 35 197 207 85 206 60 90 178 209 11 90 101 229 107 30 108 214 245 107 90 240 230 193] peer0:7051} incTime is 1496408172588444858
2017-06-02 12:56:12.588 UTC [gossip/gossip#peer0:7051] NewGossipService -> INFO 013 Creating gossip service with self membership of {peer0:7051 [] [156 43 33 171 114 249 57 151 235 35 197 207 85 206 60 90 178 209 11 90 101 229 107 30 108 214 245 107 90 240 230 193] peer0:7051}
2017-06-02 12:56:12.588 UTC [msp] DeserializeIdentity -> INFO 014 Obtaining identity
2017-06-02 12:56:12.588 UTC [gossip/discovery#peer0:7051] connect2BootstrapPeers -> INFO 015 Entering: [127.0.0.1:7051]
2017-06-02 12:56:12.588 UTC [gossip/discovery#peer0:7051] connect2BootstrapPeers -> INFO 016 Exiting
2017-06-02 12:56:12.588 UTC [msp] Validate -> INFO 017 MSP Org1MSP validating identity
2017-06-02 12:56:12.589 UTC [msp] DeserializeIdentity -> INFO 018 Obtaining identity
2017-06-02 12:56:12.589 UTC [msp] Validate -> INFO 019 MSP Org1MSP validating identity
2017-06-02 12:56:12.590 UTC [gossip/gossip#peer0:7051] start -> INFO 01a Gossip instance peer0:7051 started
2017-06-02 12:56:12.590 UTC [chaincode] Init -> INFO 01b Init CSCC
2017-06-02 12:56:12.590 UTC [sysccapi] deploySysCC -> INFO 01c system chaincode cscc/(github.com/hyperledger/fabric/core/scc/cscc) deployed
2017-06-02 12:56:12.591 UTC [sysccapi] deploySysCC -> INFO 01d system chaincode lccc/(github.com/hyperledger/fabric/core/scc/lccc) deployed
2017-06-02 12:56:12.592 UTC [escc] Init -> INFO 01e Successfully initialized ESCC
2017-06-02 12:56:12.592 UTC [sysccapi] deploySysCC -> INFO 01f system chaincode escc/(github.com/hyperledger/fabric/core/scc/escc) deployed
2017-06-02 12:56:12.592 UTC [sysccapi] deploySysCC -> INFO 020 system chaincode vscc/(github.com/hyperledger/fabric/core/scc/vscc) deployed
2017-06-02 12:56:12.593 UTC [qscc] Init -> INFO 021 Init QSCC
2017-06-02 12:56:12.593 UTC [sysccapi] deploySysCC -> INFO 022 system chaincode qscc/(github.com/hyperledger/fabric/core/chaincode/qscc) deployed
2017-06-02 12:56:12.593 UTC [nodeCmd] initSysCCs -> INFO 023 Deployed system chaincodess
2017-06-02 12:56:12.593 UTC [nodeCmd] serve -> INFO 024 Starting peer with ID=[name:"peer0" ], network ID=[dev], address=[peer0:7051]
2017-06-02 12:56:12.666 UTC [nodeCmd] serve -> INFO 025 Started peer with ID=[name:"peer0" ], network ID=[dev], address=[peer0:7051]
2017-06-02 12:56:35.759 UTC [ledgermgmt] CreateLedger -> INFO 026 Creating ledger with id = mychannel
2017-06-02 12:56:35.857 UTC [ledgermgmt] CreateLedger -> INFO 027 Created ledger with id = mychannel
2017-06-02 12:56:35.916 UTC [kvledger] Commit -> INFO 028 Channel [mychannel]: Created block [0] with 1 transaction(s)
2017-06-02 12:56:35.930 UTC [gossip/gossip#peer0:7051] JoinChan -> INFO 029 Anchor peer with same endpoint, skipping connecting to myself
akshay111meher (Fri, 02 Jun 2017 13:29:01 GMT):
2017-06-02 12:56:35.931 UTC [gossip/state] NewGossipStateProvider -> INFO 02a Updating node metadata information, current ledger sequence is at = 0, next expected block is = 1
2017-06-02 12:56:35.931 UTC [deliveryClient] NewDeliverService -> INFO 02b Creating delivery service to get blocks from the ordering service, orderer0:7050
2017-06-02 12:56:36.268 UTC [chaincode] Init -> INFO 02c Init CSCC
2017-06-02 12:56:36.269 UTC [sysccapi] deploySysCC -> INFO 02d system chaincode cscc/mychannel(github.com/hyperledger/fabric/core/scc/cscc) deployed
2017-06-02 12:56:36.269 UTC [sysccapi] deploySysCC -> INFO 02e system chaincode lccc/mychannel(github.com/hyperledger/fabric/core/scc/lccc) deployed
2017-06-02 12:56:36.269 UTC [escc] Init -> INFO 02f Successfully initialized ESCC
2017-06-02 12:56:36.269 UTC [sysccapi] deploySysCC -> INFO 030 system chaincode escc/mychannel(github.com/hyperledger/fabric/core/scc/escc) deployed
2017-06-02 12:56:36.270 UTC [sysccapi] deploySysCC -> INFO 031 system chaincode vscc/mychannel(github.com/hyperledger/fabric/core/scc/vscc) deployed
2017-06-02 12:56:36.270 UTC [qscc] Init -> INFO 032 Init QSCC
2017-06-02 12:56:36.270 UTC [sysccapi] deploySysCC -> INFO 033 system chaincode qscc/mychannel(github.com/hyperledger/fabric/core/chaincode/qscc) deployed
2017-06-02 12:56:45.464 UTC [kvledger] Commit -> INFO 034 Channel [mychannel]: Created block [1] with 1 transaction(s)
2017-06-02 12:56:45.526 UTC [eventhub_producer] Chat -> ERRO 035 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 12:56:46.758 UTC [lccc] Invoke -> ERRO 036 ChaincodeId: digitalproperty-network does not exist on channel: mychannel(err:chaincode not found digitalproperty-network)
akshay111meher (Fri, 02 Jun 2017 13:29:02 GMT):
2017-06-02 12:56:46.773 UTC [eventhub_producer] Chat -> ERRO 037 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 12:57:57.604 UTC [gossip/gossip#peer0:7051] func2 -> INFO 038 Learned of a new certificate: [10 7 79 114 103 49 77 83 80 18 244 5 45 45 45 45 45 66 69 71 73 78 32 45 45 45 45 45 10 77 73 73 67 69 106 67 67 65 98 109 103 65 119 73 66 65 103 73 82 65 78 103 100 53 103 119 72 75 120 78 121 113 120 112 116 118 52 48 111 80 69 107 119 67 103 89 73 75 111 90 73 122 106 48 69 65 119 73 119 89 68 69 76 10 77 65 107 71 65 49 85 69 66 104 77 67 86 86 77 120 69 122 65 82 66 103 78 86 66 65 103 84 67 107 78 104 98 71 108 109 98 51 74 117 97 87 69 120 70 106 65 85 66 103 78 86 66 65 99 84 68 86 78 104 98 105 66 71 10 99 109 70 117 89 50 108 122 89 50 56 120 69 84 65 80 66 103 78 86 66 65 111 84 67 72 66 108 90 88 74 80 99 109 99 120 77 82 69 119 68 119 89 68 86 81 81 68 69 119 104 119 90 87 86 121 84 51 74 110 77 84 65 101 10 70 119 48 120 78 122 65 122 77 68 69 120 78 122 77 50 78 68 70 97 70 119 48 121 78 122 65 121 77 106 99 120 78 122 77 50 78 68 70 97 77 70 73 120 67 122 65 74 66 103 78 86 66 65 89 84 65 108 86 84 77 82 77 119 10 69 81 89 68 86 81 81 73 69 119 112 68 89 87 120 112 90 109 57 121 98 109 108 104 77 82 89 119 70 65 89 68 86 81 81 72 69 119 49 84 89 87 52 103 82 110 74 104 98 109 78 112 99 50 78 118 77 82 89 119 70 65 89 68 10 86 81 81 68 69 119 49 119 90 87 86 121 84 51 74 110 77 86 66 108 90 88 73 121 77 70 107 119 69 119 89 72 75 111 90 73 122 106 48 67 65 81 89 73 75 111 90 73 122 106 48 68 65 81 99 68 81 103 65 69 90 105 98 89 10 112 84 117 114 55 104 47 76 73 107 90 107 86 49 121 114 49 49 109 80 48 77 52 72 116 115 43 65 82 114 107 121 51 114 57 55 87 105 104 118 70 48 43 84 103 120 85 73 85 114 70 106 69 101 52 89 118 43 83 73 108 122 53 43 10 73 69 54 66 108 78 101 109 97 70 54 55 110 85 101 68 43 97 78 105 77 71 65 119 68 103 89 68 86 82 48 80 65 81 72 47 66 65 81 68 65 103 87 103 77 66 77 71 65 49 85 100 74 81 81 77 77 65 111 71 67 67 115 71 10 65 81 85 70 66 119 77 66 77 65 119 71 65 49 85 100 69 119 69 66 47 119 81 67 77 65 65 119 75 119 89 68 86 82 48 106 66 67 81 119 73 111 65 103 50 75 87 122 121 115 71 52 73 102 98 107 116 73 102 79 114 120 47 83 10 79 99 51 80 119 120 67 74 81 86 67 81 105 53 68 119 88 112 70 53 86 87 111 119 67 103 89 73 75 111 90 73 122 106 48 69 65 119 73 68 82 119 65 119 82 65 73 103 74 54 122 109 71 84 89 87 101 65 106 97 97 56 122 86 10 73 55 51 116 51 90 111 112 47 109 70 55 57 48 78 119 107 72 50 83 83 108 116 52 83 65 77 67 73 71 57 121 101 72 55 75 56 89 100 68 56 65 111 51 107 66 105 65 82 121 106 73 43 81 112 105 87 113 105 49 75 56 113 83 10 98 54 69 87 112 116 103 50 10 45 45 45 45 45 69 78 68 32 45 45 45 45 45 10]
2017-06-02 13:08:39.201 UTC [kvledger] Commit -> INFO 039 Channel [mychannel]: Created block [2] with 2 transaction(s)
2017-06-02 13:08:39.784 UTC [kvledger] Commit -> INFO 03a Channel [mychannel]: Created block [3] with 1 transaction(s)
2017-06-02 13:08:40.762 UTC [kvledger] Commit -> INFO 03b Channel [mychannel]: Created block [4] with 1 transaction(s)
2017-06-02 13:10:15.478 UTC [eventhub_producer] Chat -> ERRO 03c Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:11:05.949 UTC [eventhub_producer] Chat -> ERRO 03d Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:11:35.557 UTC [eventhub_producer] Chat -> ERRO 03e Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:12:01.655 UTC [kvledger] Commit -> INFO 03f Channel [mychannel]: Created block [5] with 1 transaction(s)
2017-06-02 13:12:04.364 UTC [eventhub_producer] Chat -> ERRO 040 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:12:56.420 UTC [eventhub_producer] Chat -> ERRO 041 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:13:33.166 UTC [kvledger] Commit -> INFO 042 Channel [mychannel]: Created block [6] with 1 transaction(s)
2017-06-02 13:13:34.971 UTC [eventhub_producer] Chat -> ERRO 043 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:14:03.587 UTC [eventhub_producer] Chat -> ERRO 044 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
2017-06-02 13:15:55.286 UTC [kvledger] Commit -> INFO 045 Channel [mychannel]: Created block [7] with 1 transaction(s)
2017-06-02 13:15:56.554 UTC [eventhub_producer] Chat -> ERRO 046 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled"
JennFoley (Fri, 02 Jun 2017 13:31:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Yv3oNi7sfeXsch66p) @davidkel Does that mean you've tried it with alpha2 images?
davidkel (Fri, 02 Jun 2017 13:38:14 GMT):
@JennFoley Sorry, no. Some attempts were made to use the cli on alpha1 but not much progress was made, so effort was switched to doing it through the fabric shim and then get it exposed in composer
davidkel (Fri, 02 Jun 2017 13:39:13 GMT):
@dklesev @JennFoley The queries shown in the animal tracking sample don't work. There isn't a query function. We should really remove that :-)
davidkel (Fri, 02 Jun 2017 13:40:25 GMT):
@akshay111meher from the logs it looks like you fabric has been restarted from scratch and as such is a clean fabric with no business networks deployed
clueless99 (Fri, 02 Jun 2017 13:42:31 GMT):
@akshay111meher (I'm well out of my depth answering this ... I'm a total newbie) but are you on the latest version? This Jira ticket re: a similar problem was closed due to only impacting v 0.6 https://jira.hyperledger.org/browse/FAB-710
davidkel (Fri, 02 Jun 2017 13:45:57 GMT):
@Fanarito It looks like there is no validation to check relationships during those operations, it might be a performance tradeoff reason. CRUD operations for assets/participants are a different concept to transactions from a composer point of view so are not kept in the transaction registry. There are of course still stored on the blockchain.
davidkel (Fri, 02 Jun 2017 13:45:57 GMT):
@Fanarito It looks like there is no validation to check relationships during those operations, it might be a performance tradeoff reason. CRUD operations for assets/participants are a different concept to transactions from a composer point of view so are not kept in the transaction registry. They are of course still stored on the blockchain.
Fanarito (Fri, 02 Jun 2017 13:47:19 GMT):
@davidkel but will the CRUD operation history be accessible in the same way transactions are when the historian comes out?
akshay111meher (Fri, 02 Jun 2017 13:47:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bCSnR98Xi8ZvyPYXL) @davidkel probably so... even in the issue that i shared.. i am able to perform CURD on assets/participants but transaction are not happening...
davidkel (Fri, 02 Jun 2017 13:53:21 GMT):
@akshay111meher Can you provide details of the steps you have done and error messages you get back as the log of the peer only shows it starting up and performing some sort of action and digitalproperty-network not being installed. Also it might be worth seeing what the logs in the chaincode containers say. Those are the ones starting `dev-`
akshay111meher (Fri, 02 Jun 2017 14:00:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=e9CsqhaPxTicxyd4g) @davidkel
i used following command for deploying
composer network deploy --archiveFile digitalLandTitle.bna -p hlfv1 -i admin -s adminpw && composer network list -n digitalproperty-network -p hlfv1 -i admin -s adminpw
these are the contents of .cto file(model/digitalLandTitle.cto)
namespace net.biz.digitalPropertyNetwork
asset LandTitle identified by titleId {
o String titleId
--> Person owner
o String information
o Boolean forSale optional
}
asset SalesAgreement identified by salesId {
o String salesId
--> Person buyer
--> Person seller
--> LandTitle title
}
participant Person identified by personId {
o String personId
o String firstName
o String lastName
}
transaction RegisterPropertyForSale identified by transactionId{
o String transactionId
--> Person seller
--> LandTitle title
}
and contents of .js file (lib/digitalLandTitle.js)
namespace net.biz.digitalPropertyNetwork
asset LandTitle identified by titleId {
o String titleId
--> Person owner
o String information
o Boolean forSale optional
}
asset SalesAgreement identified by salesId {
o String salesId
--> Person buyer
--> Person seller
--> LandTitle title
}
participant Person identified by personId {
o String personId
o String firstName
o String lastName
}
transaction RegisterPropertyForSale identified by transactionId{
o String transactionId
--> Person seller
--> LandTitle title
}
dklesev (Fri, 02 Jun 2017 14:04:04 GMT):
content of js file seems to be wrong
akshay111meher (Fri, 02 Jun 2017 14:05:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zKYtrzmxsw2dteh3A) @dklesev
i m sorry these are contents of the js file
'use strict';
/**
* Process a property that is held for sale
* @param {net.biz.digitalPropertyNetwork.RegisterPropertyForSale} propertyForSale the property to be sold
* @transaction
*/
function onRegisterPropertyForSale(propertyForSale) {
console.log('### onRegisterPropertyForSale ' + propertyForSale.toString());
propertyForSale.title.forSale = true;
return getAssetRegistry('net.biz.digitalPropertyNetwork.LandTitle').then(function(result) {
return result.update(propertyForSale.title);
}
);
}
akshay111meher (Fri, 02 Jun 2017 14:11:45 GMT):
@dklesev @davidkel @clueless99
this is the main error which i feel i am getting
2017-06-02 14:10:39.037 UTC [eventhub_producer] Chat -> ERRO 034 Error during Chat, stopping handler: stream error: code = 1 desc = "context canceled
davidkel (Fri, 02 Jun 2017 14:14:07 GMT):
@akshay111meher And how is that causing problems for you ? ie are you getting error messages and something you are trying to do is failing ? What is being reported here is a non clean disconnect from the event hub but doesn't necessarily mean a problem for composer
hariharanatarajan (Fri, 02 Jun 2017 14:32:39 GMT):
@davidkel @sstone1 This is what I am trying to do . I am trying to set up composer-playground locally . I did that using the
hariharanatarajan (Fri, 02 Jun 2017 14:35:09 GMT):
docker run composer-playground:8080 . i already have a Fabric environment already setup using the e2e_cli/examples present in the Fabric folder . Now when I set up a connectiion profile in the Plyground UI it is asking for a user and certificate . So what are the values I should give to these ?
davidkel (Fri, 02 Jun 2017 14:43:43 GMT):
Message Attachments
dklesev (Fri, 02 Jun 2017 14:44:46 GMT):
ok, after clean start with install-hlfv1.sh I get similar errors related to orderer
`orderer0 | 2017-06-02 14:39:58.049 UTC [orderer/common/deliver] Handle -> WARN 004 Error reading from stream: stream error: code = 1 desc = "context can
celed"`
dklesev (Fri, 02 Jun 2017 14:44:46 GMT):
ok, after clean start with install-hlfv1.sh I get similar errors related to orderer
`orderer0 | 2017-06-02 14:39:58.049 UTC [orderer/common/deliver] Handle -> WARN 004 Error reading from stream: stream error: code = 1 desc = "context canceled"`
davidkel (Fri, 02 Jun 2017 14:44:57 GMT):
@hariharanatarajan Not sure what screen you are looking at. I assume you have created a v1 profile and pressed use profile and have been presented with
the above ? Also connecting docker playground to a local fabric also running in docker is not straight forward as they will be network isolated from each other. Please see
https://stackoverflow.com/questions/44117260/docker-version-of-composer-playground-is-not-able-to-connect-to-local-hlf-1-0-0
reginbald (Fri, 02 Jun 2017 14:45:09 GMT):
Has joined the channel.
hariharanatarajan (Fri, 02 Jun 2017 14:59:19 GMT):
@davidkel yes I am referring to screen that u have pasted . My docker containers are able to talk to each other . I wanted to know what is the ID and secret ? where do I get that from . from the cryptogen directory is it ?
nehalshah50 (Fri, 02 Jun 2017 15:03:39 GMT):
```Good Morning everyone. Today I am trying to set up my network using guide https://hyperledger.github.io/composer/tutorials/developer-guide.html
nehalshah50 (Fri, 02 Jun 2017 15:05:20 GMT):
```
Good Morning everyone. Today I am trying to set up my network using guide https://hyperledger.github.io/composer/tutorials/developer-guide.html but keep getting following error about license header. I checked the logic.js file and content is same as given in the instructions. Also it says the look at the log file produced but I never see any log files getting produced.....> my-network@0.0.1 pretest /Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network
> npm run lint
> my-network@0.0.1 lint /Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network
> eslint .
> my-network@0.0.1 postlint /Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network
> npm run licchk
> my-network@0.0.1 licchk /Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network
> license-check
events.js:160
throw er; // Unhandled 'error' event
^
Error: The following file doesn`t contain the license header /Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network/lib/logic.js
at error (/Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network/node_modules/gulp-license-check/index.js:140:54)
at checkHeaderFromBuffer (/Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network/node_modules/gulp-license-check/index.js:84:4)
at DestroyableTransform._transform (/Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network/node_modules/gulp-license-check/index.js:41:5)
at DestroyableTransform.Transform._read (/Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network/node_modules/readable-stream/lib/_stream_transform.js:159:10)
at DestroyableTransform.Transform._write (/Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network/node_modules/readable-stream/lib/_stream_transform.js:147:83)
at doWrite (/Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network/node_modules/readable-stream/lib/_stream_writable.js:338:64)
at writeOrBuffer (/Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network/node_modules/readable-stream/lib/_stream_writable.js:327:5)
at DestroyableTransform.Writable.write (/Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network/node_modules/readable-stream/lib/_stream_writable.js:264:11)
at DestroyableTransform.ondata (/Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network/node_modules/readable-stream/lib/_stream_readable.js:541:20)
at emitOne (events.js:96:13)
at DestroyableTransform.emit (events.js:188:7)
npm ERR! Darwin 16.6.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "licchk"
npm ERR! node v6.10.3
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! my-network@0.0.1 licchk: `license-check`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.0.1 licchk script 'license-check'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the my-network package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! license-check
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs my-network
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls my-network
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network/npm-debug.log
npm ERR! Darwin 16.6.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "lint"
npm ERR! node v6.10.3
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! my-network@0.0.1 postlint: `npm run licchk`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.0.1 postlint script 'npm run licchk'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the my-network package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! npm run licchk
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs my-network
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls my-network
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/nxshah5/Documents/Fabric/1.0/composer-sample-networks/packages/my-network/npm-debug.log
npm ERR! Test failed. See above for more details.
Fanarito (Fri, 02 Jun 2017 15:15:43 GMT):
@nehalshah50 you are missing the license header in some file. You can either add the license header to the file or remove the license check in `package.json`
nehalshah50 (Fri, 02 Jun 2017 15:17:47 GMT):
I checked the file it complains and it has the license header stuff in it. But not sure why it fails
nehalshah50 (Fri, 02 Jun 2017 15:19:53 GMT):
I am following this guide https://hyperledger.github.io/composer/tutorials/developer-guide.html
davidkel (Fri, 02 Jun 2017 15:22:20 GMT):
@nehalshah50 The problem is the licence checker is pedantic about spacing (don't get me started on indentation rules :-) ) personally I would just disable license checking is it has no use in helping you getting started. To do that you need to change package.json
In the scripts section there is a line `"licchk": "license-check",` and change it to `"licchk": "echo license-check",` (ie insert the word echo)
davidkel (Fri, 02 Jun 2017 15:22:20 GMT):
@nehalshah50 The problem is the licence checker is pedantic about spacing (don't get me started on indentation rules :-) ) personally I would just disable license checking as it has no use in helping you getting started. To do that you need to change package.json
In the scripts section there is a line `"licchk": "license-check",` and change it to `"licchk": "echo license-check",` (ie insert the word echo)
davidkel (Fri, 02 Jun 2017 15:23:33 GMT):
@nehalshah50 could you raise a github issue about this please so, thanks for finding the problem.
davidkel (Fri, 02 Jun 2017 15:23:33 GMT):
@nehalshah50 could you raise a github issue about this please, thanks for finding the problem.
davidkel (Fri, 02 Jun 2017 15:25:26 GMT):
@hariharanatarajan It will be whatever has been defined in the ca you have configured. I don't know what that would be as it is however you set it up
nehalshah50 (Fri, 02 Jun 2017 15:26:13 GMT):
Sure. I will. I commented the lincense-check. Now the next error on 'npm test' is following :
Commodity Trading
1) "before all" hook
0 passing (2s)
1 failing
1) Commodity Trading "before all" hook:
Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.
nehalshah50 (Fri, 02 Jun 2017 15:32:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vD4EqqW7Y5SwmTxSo) @davidkel Issue https://github.com/hyperledger/composer/issues/1156 logged in Github
hariharanatarajan (Fri, 02 Jun 2017 15:34:40 GMT):
@davidkel Thanks . that helped
Fanarito (Fri, 02 Jun 2017 15:34:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=poSCgqrGSJjcbdvNa) @davidkel I put together a pull request https://github.com/hyperledger/composer-sample-networks/pull/50
nehalshah50 (Fri, 02 Jun 2017 15:35:04 GMT):
After disabling the license check It worked fine. Thanks
dklesev (Fri, 02 Jun 2017 15:37:56 GMT):
does someone else get problems with the setup-script? install-hlfv1.sh
Fanarito (Fri, 02 Jun 2017 15:39:57 GMT):
@dklesev They updated the install scripts, https://hyperledger.github.io/composer/getting-started/development-tools.html here is the tutorial for the new ones
dklesev (Fri, 02 Jun 2017 15:48:41 GMT):
sure, but the one-line install should work without problems
Fanarito (Fri, 02 Jun 2017 15:54:19 GMT):
oh right for the composer playground
akshay111meher (Fri, 02 Jun 2017 16:10:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sGYpAqQ4igfoCW89D) @davidkel
akshay111meher (Fri, 02 Jun 2017 16:13:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sGYpAqQ4igfoCW89D) @davidkel .the error may be due to event hub getting disconnected from fabric.. I understood that... Issue which I am also getting is that... When a transaction is being acted upon , it is not updating the asset... I tried doing assetRegistry.update(resource) , it is still not updating the resource....
theophoric (Fri, 02 Jun 2017 16:51:34 GMT):
Has joined the channel.
jdockter (Fri, 02 Jun 2017 17:15:09 GMT):
@sstone1 in the vehicle lifecycle network you have a setup.js which loads a number of assets and participants...is there a way to just read in a json structure without having to dummy up the json in the .js? I've seen it done on unit tests but is it possible in the lib js files?
jdockter (Fri, 02 Jun 2017 17:17:28 GMT):
the asset I have is made up of many concepts so it would seem like I would need to factory.newConcept() those parts of the asset, but maybe there is a way around that
sstone1 (Fri, 02 Jun 2017 17:58:29 GMT):
@jdockter only if you embed the JSON into the .js file
sstone1 (Fri, 02 Jun 2017 17:58:40 GMT):
there's currently no way to reference another file, .js or .json
sstone1 (Fri, 02 Jun 2017 17:59:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer-dev?msg=3pPYoq8r4368q4Hno) @theophoric what OS, versions of node/npm are you using? what errors do you get?
jdockter (Fri, 02 Jun 2017 17:59:46 GMT):
@sstone1 okay figured you probably would have done it if it was possible, thanks
davidoevans (Fri, 02 Jun 2017 18:26:10 GMT):
if i have 2 different orgs defined in my Fabric Network, does it make sense that they each have a CA associated with them and only an authorized user from each org would be able to issue identities within their respective organization? if so, how would you configure that in network profile for Composer?
theophoric (Fri, 02 Jun 2017 18:30:00 GMT):
OS: Mac 10.12.2 (Sierra)
NPM: 5.0.0
Node: 8.0.0 (also encountered on 7.10.0, just upgraded)
theophoric (Fri, 02 Jun 2017 18:30:54 GMT):
24012 verbose lifecycle grpc@1.0.0~install: PATH: /usr/local/lib/node_modules/npm/bin/node-gyp-bin:/usr/local/lib/node_modules/composer-playground/node_modules/grpc/node_modules/.bin:/usr/local/lib/node_modules/composer-playground/node_modules/.bin:/usr/local/lib/node_modules/.bin:/Users/wilsonth/.rbenv/shims:/Users/wilsonth/.rbenv/bin:/Users/wilsonth/.rbenv/shims:/Users/wilsonth/go/bin:/Library/Frameworks/Python.framework/Versions/3.5/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/go/bin:/Users/wilsonth/.yadr/bin:/Users/wilsonth/.yadr/bin/yadr
24013 verbose lifecycle grpc@1.0.0~install: CWD: /usr/local/lib/node_modules/composer-playground/node_modules/grpc
24014 silly lifecycle grpc@1.0.0~install: Args: [ '-c', 'node-pre-gyp install --fallback-to-build' ]
24015 silly lifecycle grpc@1.0.0~install: Returned: code: 1 signal: null
24016 info lifecycle grpc@1.0.0~install: Failed to exec install script
24017 verbose unlock done using /Users/wilsonth/.npm/_locks/staging-3a08f0df5026584d.lock for /usr/local/lib/node_modules/.staging
24018 verbose stack TypeError: Cannot read property 'type' of undefined
24018 verbose stack at module.exports.rollback (/usr/local/lib/node_modules/npm/lib/install/action/finalize.js:93:16)
24018 verbose stack at /usr/local/lib/node_modules/npm/lib/install.js:547:7
24018 verbose stack at /usr/local/lib/node_modules/npm/node_modules/slide/lib/async-map.js:52:35
24018 verbose stack at Array.forEach (native)
24018 verbose stack at /usr/local/lib/node_modules/npm/node_modules/slide/lib/async-map.js:52:11
24018 verbose stack at Array.forEach (native)
24018 verbose stack at asyncMap (/usr/local/lib/node_modules/npm/node_modules/slide/lib/async-map.js:51:8)
24018 verbose stack at /usr/local/lib/node_modules/npm/lib/install.js:546:5
24018 verbose stack at /usr/local/lib/node_modules/npm/node_modules/slide/lib/async-map.js:52:35
24018 verbose stack at Array.forEach (native)
24018 verbose stack at /usr/local/lib/node_modules/npm/node_modules/slide/lib/async-map.js:52:11
24018 verbose stack at Array.forEach (native)
24018 verbose stack at asyncMap (/usr/local/lib/node_modules/npm/node_modules/slide/lib/async-map.js:51:8)
24018 verbose stack at Installer.rollbackFailedOptional (/usr/local/lib/node_modules/npm/lib/install.js:545:3)
24018 verbose stack at Array.
theophoric (Fri, 02 Jun 2017 18:31:36 GMT):
hold on while I get something more legible
davidoevans (Fri, 02 Jun 2017 18:32:02 GMT):
@theophoric you'll need to downgrade node to 6.10
davidoevans (Fri, 02 Jun 2017 18:32:33 GMT):
i had same problem and downgrade fixed it
theophoric (Fri, 02 Jun 2017 18:32:39 GMT):
ah good to know
theophoric (Fri, 02 Jun 2017 18:33:17 GMT):
Message Attachments
theophoric (Fri, 02 Jun 2017 18:33:29 GMT):
that would make sense.. looks like it's failing on deprecation flags
theophoric (Fri, 02 Jun 2017 18:33:41 GMT):
thanks for the tip
davidoevans (Fri, 02 Jun 2017 18:34:59 GMT):
np
davidkel (Fri, 02 Jun 2017 18:57:40 GMT):
@davidoevans So I could imagine a situation where 2 organisations participating in a business network would have their own ca and I woudn't think that they would want or in fact be allowed to access the other organisations ca. So a participant in a business network would only need to declare their own ca for identities.
davidoevans (Fri, 02 Jun 2017 19:03:09 GMT):
thanks @davidkel - so what would need to be configured in Composer's connection profile to such a fabric network to support that? I ask because the sample connection that comes with Composer looks flat:
```
"mspID": "Org1MSP",
"ca": "http://ca0:7054",
```
davidkel (Fri, 02 Jun 2017 19:12:52 GMT):
@davidoevans The connection profile defines the servers you want to connect to. You would include all the peers in the fabric that you need to interact with, the orderer(s) used in the fabric and then the ca relevant to your single organisation, along with your organisations MSP id.
sstone1 (Fri, 02 Jun 2017 19:13:17 GMT):
totally unsurprised about the node 8 support problems... we rely on a bunch of native modules that will need upgrading for the latest native APIs... thanks for reporting though!
sstone1 (Fri, 02 Jun 2017 19:13:17 GMT):
totally unsurprised about the node 8 support problems... we rely on a bunch of native modules that will need upgrading (by the maintainers of those modules) for the latest native APIs... thanks for reporting though!
mattalhonte (Fri, 02 Jun 2017 19:27:37 GMT):
I have a stupid question. What's my Fabric Username?
Trying to make a rest api.
sstone1 (Fri, 02 Jun 2017 19:27:47 GMT):
it's your enrollment ID + secret
sstone1 (Fri, 02 Jun 2017 19:27:58 GMT):
so admin / adminpw on HLFv1
sstone1 (Fri, 02 Jun 2017 19:28:12 GMT):
or admin / Xurw3yU9zI0l on HLFv0.6
mattalhonte (Fri, 02 Jun 2017 19:28:25 GMT):
so literally "admin / adminpw"?
sstone1 (Fri, 02 Jun 2017 19:28:37 GMT):
no, the ID is admin, the secret (the next question) is adminpw
mattalhonte (Fri, 02 Jun 2017 19:28:45 GMT):
aha, thanks!
mattalhonte (Fri, 02 Jun 2017 19:34:58 GMT):
What should the Business Network Identifier be? My .bna file didn't work.
sstone1 (Fri, 02 Jun 2017 19:39:16 GMT):
how did you set up composer?
sstone1 (Fri, 02 Jun 2017 19:39:51 GMT):
have you seen this tutorial btw? https://hyperledger.github.io/composer/tutorials/developer-guide.html
mattalhonte (Fri, 02 Jun 2017 19:39:58 GMT):
the composer.sh script
mattalhonte (Fri, 02 Jun 2017 19:43:10 GMT):
it says "Discovering types from business network definition ...
Connection fails: Error: failed to obtain cds for
sstone1 (Fri, 02 Jun 2017 19:46:24 GMT):
org.acme.biznet is the business network definition name when installing usijng the composer.sh script
mattalhonte (Fri, 02 Jun 2017 19:46:56 GMT):
Even if that's not the .bna file that was used?
mattalhonte (Fri, 02 Jun 2017 19:47:28 GMT):
oh, ha, guess so!
mattalhonte (Fri, 02 Jun 2017 19:47:30 GMT):
Thanks!
mattalhonte (Fri, 02 Jun 2017 19:47:33 GMT):
ping just worked
davidkel (Fri, 02 Jun 2017 19:48:27 GMT):
@dklesev what problems are you seeing with the single installer ? Someone else mentioned problems on a Mac but we didn't see any issues there
dklesev (Fri, 02 Jun 2017 19:49:50 GMT):
@davidkel I'm on a linux machine. After getting updated script version with curl I see this: https://chat.hyperledger.org/channel/composer?msg=6Znn25BhpnhxwyQrr
dklesev (Fri, 02 Jun 2017 19:50:10 GMT):
and get grpc error (orderer timeout)
mattalhonte (Fri, 02 Jun 2017 19:52:01 GMT):
working, awesome, thanks again!
nehalshah50 (Fri, 02 Jun 2017 20:25:07 GMT):
After deploying network I see always two docker containers created dev-peer0-my-network-0.7.4 and dev-peer1-my-network-0.7.4. Just for curiosity...why there are only two and what do they do? run the chain code?
mattalhonte (Fri, 02 Jun 2017 20:25:11 GMT):
Is there a way to query the REST API from the command line? I'm working with a remote machine and I can't use the browser interface
sstone1 (Fri, 02 Jun 2017 20:28:36 GMT):
`curl http://remoteip:3000/api/system/ping`
sstone1 (Fri, 02 Jun 2017 20:28:49 GMT):
but if you can do that you can point your browser to `http://remoteip:3000/explorer/` ;)
sstone1 (Fri, 02 Jun 2017 20:29:08 GMT):
oh - unless you mean `curl` on the remote machine
sstone1 (Fri, 02 Jun 2017 20:29:18 GMT):
in which case just use `localhost` in place of remoteip
sstone1 (Fri, 02 Jun 2017 20:29:38 GMT):
@nehalshah50 each peer gets its own copy of the chaincode
nehalshah50 (Fri, 02 Jun 2017 20:30:57 GMT):
each peer container corresponds to each participant in network?
nehalshah50 (Fri, 02 Jun 2017 20:32:59 GMT):
or every participant when they deploy the network on their side they will have two peer container ?
nehalshah50 (Fri, 02 Jun 2017 20:35:38 GMT):
then there are two peer containers for fabric as well....I am just trying to understand how this is all fitting together
nehalshah50 (Fri, 02 Jun 2017 20:36:12 GMT):
if there is a good arch document you can point to regarding this then that would be great
dklesev (Fri, 02 Jun 2017 20:37:48 GMT):
@nehalshah50 https://hyperledger-fabric.readthedocs.io/en/latest/
mattalhonte (Fri, 02 Jun 2017 20:38:12 GMT):
Hrm, interestingly, http://remoteip:8080/editor works, but http://remoteip:3000/explorer/` doesn't.
sstone1 (Fri, 02 Jun 2017 20:39:39 GMT):
@nehalshah50 it is important to differentiate between the participants or users of a business network (people who are authorized to submit transactions) vs the members who are running peer nodes and managing the underlying fabric network
sstone1 (Fri, 02 Jun 2017 20:39:55 GMT):
in some cases participants in the business network are members who run peer nodes, but not all of them do
nehalshah50 (Fri, 02 Jun 2017 20:43:18 GMT):
So in sample apps when we submit transaction from playground or through other means the transaction goes to both dev-peer nodes first...gets validated there and then gets sent to fabric peer nodes?
davidkel (Fri, 02 Jun 2017 20:44:20 GMT):
@dklesev I can't recreate the problems that you are getting with the latest installer, I have tried on a clean linux vagrant box. Is there any more details you can provide ? do you think there might be a port clash or a linux level issue ?
dklesev (Fri, 02 Jun 2017 20:45:24 GMT):
@davidkel hmm, don't know
maybe I find the time to inspect it later on, will write you if I find the problem
davidkel (Fri, 02 Jun 2017 20:46:00 GMT):
@dklesev Thank you. appreciate you spending some time to look into it
dklesev (Fri, 02 Jun 2017 20:46:22 GMT):
I thank you for the help we get
tkuhrt (Fri, 02 Jun 2017 22:47:31 GMT):
Recording from the community call this week: https://www.uberconference.com/getmp3/AMIfv96JI4kn7_fXfJj0SQVnQ1x6Zm90bHzgcjJMI6Cti_0xtWiG-1p3OS773w27gxBUBXElzkymkopahrhNIoqcqtdgOSXsrMpyL4GWNKDDrs5N2fs11KUa7z93dib4dJjB76CPHYU6QqOgj-uZarU41HsN3R6dTg.mp3
SahilKapoor (Fri, 02 Jun 2017 22:56:07 GMT):
@tkuhrt Is there any video recording as well?
sstone1 (Fri, 02 Jun 2017 23:16:23 GMT):
I recorded it, I need to upload it - will do that this weekend.
sstone1 (Fri, 02 Jun 2017 23:17:01 GMT):
Also, I just went and blogged about a new feature that snuck into v0.7.4, check it out here: https://medium.com/@mrsimonstone/test-your-blockchain-business-network-using-hyperledger-composer-c8e8f112da08
dklesev (Sat, 03 Jun 2017 01:13:40 GMT):
@davidkel solved my problem by upgrading docker to 17.03.1...
MeenakshiSingh (Sat, 03 Jun 2017 06:09:47 GMT):
Has joined the channel.
davidkel (Sat, 03 Jun 2017 07:34:05 GMT):
@dklesev that's good to know, what version were you on before ? We have just updated our dependencies to docker 17.03 but it wasn't done because of a specific known issue.
dklesev (Sat, 03 Jun 2017 12:36:55 GMT):
@davidkel sorry, can't say anymore, but it met last requirements before update
dklesev (Sat, 03 Jun 2017 15:16:09 GMT):
I thought that only one chaincode per channel is deployable? I deployed a BNA with composer over cli and then composer-playground seems to deploy the hardcoded `org.acme.biznet` cc so I get two different cc containers:
```
95fc0d7d4cf5 dev-peer0-org.acme.biznet-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours
dev-peer0-org.acme.biznet-0.7.3
1d10b8bbf697 dev-peer1-org.acme.biznet-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours
dev-peer1-org.acme.biznet-0.7.3
b9349e104430 dev-peer1-chemical-barrels-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours
dev-peer1-chemical-barrels-0.7.3
fda8c1bdf162 dev-peer0-chemical-barrels-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours
dev-peer0-chemical-barrels-0.7.3
```
dklesev (Sat, 03 Jun 2017 15:16:09 GMT):
I thought that only one chaincode per channel is deployable? I deployed a BNA with composer over cli and then composer-playground seems to deploy the hardcoded `org.acme.biznet` cc so I get two different cc containers:
```
95fc0d7d4cf5 dev-peer0-org.acme.biznet-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer0-org.acme.biznet-0.7.3
1d10b8bbf697 dev-peer1-org.acme.biznet-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer1-org.acme.biznet-0.7.3
b9349e104430 dev-peer1-chemical-barrels-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer1-chemical-barrels-0.7.3
fda8c1bdf162 dev-peer0-chemical-barrels-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer0-chemical-barrels-0.7.3
```
dklesev (Sat, 03 Jun 2017 15:16:09 GMT):
I thought that only one chaincode per channel is deployable? I deployed a BNA with composer over cli and then composer-playground seems to deploy the hardcoded `org.acme.biznet` cc so I get two different cc containers:
```
95fc0d7d4cf5 dev-peer0-org.acme.biznet-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer0-org.acme.biznet-0.7.3
1d10b8bbf697 dev-peer1-org.acme.biznet-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer1-org.acme.biznet-0.7.3
b9349e104430 dev-peer1-chemical-barrels-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer1-chemical-barrels-0.7.3
fda8c1bdf162 dev-peer0-chemical-barrels-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer0-chemical-barrels-0.7.3
```
dklesev (Sat, 03 Jun 2017 15:16:09 GMT):
I thought that only one chaincode per channel is deployable? I deployed a BNA with composer over cli and then composer-playground seems to deploy the hardcoded `org.acme.biznet` cc so I get two different cc containers:
```
95fc0d7d4cf5 dev-peer0-org.acme.biznet-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer0-org.acme.biznet-0.7.3
1d10b8bbf697 dev-peer1-org.acme.biznet-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer1-org.acme.biznet-0.7.3
b9349e104430 dev-peer1-chemical-barrels-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer1-chemical-barrels-0.7.3
fda8c1bdf162 dev-peer0-chemical-barrels-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer0-chemical-barrels-0.7.3
```
dklesev (Sat, 03 Jun 2017 15:16:09 GMT):
I thought that only one chaincode per channel is deployable? I deployed a BNA with composer over cli and then composer-playground seems to deploy the hardcoded `org.acme.biznet` cc so I get two different cc containers:
```
95fc0d7d4cf5 dev-peer0-org.acme.biznet-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer0-org.acme.biznet-0.7.3
1d10b8bbf697 dev-peer1-org.acme.biznet-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer1-org.acme.biznet-0.7.3
b9349e104430 dev-peer1-chemical-barrels-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer1-chemical-barrels-0.7.3
fda8c1bdf162 dev-peer0-chemical-barrels-0.7.3 "chaincode -peer.a..." 13 hours ago Up 13 hours dev-peer0-chemical-barrels-0.7.3
```
dklesev (Sat, 03 Jun 2017 15:16:09 GMT):
I thought that only one chaincode per channel is deployable? I deployed a BNA with composer over cli and then composer-playground seems to deploy the hardcoded `org.acme.biznet` cc so I get two different cc containers:
```
95fc0d7d4cf5 dev-peer0-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-org.acme.biznet-0.7.3
1d10b8bbf697 dev-peer1-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-org.acme.biznet-0.7.3
b9349e104430 dev-peer1-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-chemical-barrels-0.7.3
fda8c1bdf162 dev-peer0-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-chemical-barrels-0.7.3
```
dklesev (Sat, 03 Jun 2017 15:16:09 GMT):
I thought that only one chaincode per channel is deployable? I deployed a BNA with composer over cli and then composer-playground seems to deploy the hardcoded `org.acme.biznet` cc so I get two different cc containers:
```
95fc0d7d4cf5 dev-peer0-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-org.acme.biznet-0.7.3
1d10b8bbf697 dev-peer1-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-org.acme.biznet-0.7.3
b9349e104430 dev-peer1-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-chemical-barrels-0.7.3
fda8c1bdf162 dev-peer0-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-chemical-barrels-0.7.3
```
dklesev (Sat, 03 Jun 2017 15:16:09 GMT):
I thought that only one chaincode per channel is deployable? I deployed a BNA with composer over cli and then composer-playground seems to deploy the hardcoded `org.acme.biznet` cc so I get two different cc containers:
```
95fc0d7d4cf5 dev-peer0-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-org.acme.biznet-0.7.3
1d10b8bbf697 dev-peer1-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-org.acme.biznet-0.7.3
b9349e104430 dev-peer1-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-chemical-barrels-0.7.3
fda8c1bdf162 dev-peer0-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-chemical-barrels-0.7.3
```
dklesev (Sat, 03 Jun 2017 15:16:09 GMT):
I thought that only one chaincode per channel is deployable? I deployed a BNA with composer over cli and then composer-playground seems to deploy the hardcoded `org.acme.biznet` cc so I get two different cc containers:
```
95fc0d7d4cf5 dev-peer0-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-org.acme.biznet-0.7.3
1d10b8bbf697 dev-peer1-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-org.acme.biznet-0.7.3
b9349e104430 dev-peer1-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-chemical-barrels-0.7.3
fda8c1bdf162 dev-peer0-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-chemical-barrels-0.7.3
```
dklesev (Sat, 03 Jun 2017 15:16:09 GMT):
I thought that only one chaincode per channel is deployable? I deployed a BNA with composer over cli and then composer-playground seems to deploy the hardcoded `org.acme.biznet` cc so I get two different cc containers:
```
95fc0d7d4cf5 dev-peer0-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-org.acme.biznet-0.7.3
1d10b8bbf697 dev-peer1-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-org.acme.biznet-0.7.3
b9349e104430 dev-peer1-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-chemical-barrels-0.7.3
fda8c1bdf162 dev-peer0-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-chemical-barrels-0.7.3
```
dklesev (Sat, 03 Jun 2017 15:16:09 GMT):
I thought that only one chaincode per channel is deployable? I deployed a BNA with composer over cli and then composer-playground seems to deploy the hardcoded `org.acme.biznet` cc so I get two different cc containers:
```
95fc0d7d4cf5 dev-peer0-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-org.acme.biznet-0.7.3
1d10b8bbf697 dev-peer1-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-org.acme.biznet-0.7.3
b9349e104430 dev-peer1-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-chemical-barrels-0.7.3
fda8c1bdf162 dev-peer0-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-chemical-barrels-0.7.3
```
dklesev (Sat, 03 Jun 2017 15:16:09 GMT):
I thought that only one chaincode per channel is deployable? I deployed a BNA with composer over cli and then composer-playground seems to deploy the hardcoded `org.acme.biznet` cc so I get two different cc containers:
```
95fc0d7d4cf5 dev-peer0-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-org.acme.biznet-0.7.3
1d10b8bbf697 dev-peer1-org.acme.biznet-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-org.acme.biznet-0.7.3
b9349e104430 dev-peer1-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer1-chemical-barrels-0.7.3
fda8c1bdf162 dev-peer0-chemical-barrels-0.7.3 "cha..." 13 hours ago Up 13 hours dev-peer0-chemical-barrels-0.7.3
```
dklesev (Sat, 03 Jun 2017 15:20:07 GMT):
or is that seen as another version of my first deployed chaincode?
MeenakshiSingh (Sun, 04 Jun 2017 14:18:55 GMT):
how does composer take care of endorsements and private channels?
davidkel (Sun, 04 Jun 2017 18:11:02 GMT):
@MeenakshiSingh Composer deploys business networks to an already defined Fabric channel. It doesn't define an instantiation or endorsement policy, meaning that the fabric's default policies are used.
torresjeff (Sun, 04 Jun 2017 18:29:50 GMT):
@davidkel hey, i just got access to the bluemix limited beta for hlf v1.0, and I was wondering is there a tutorial on how to setup a composer connection profile for hlf v1.0 on bluemix?
torresjeff (Sun, 04 Jun 2017 18:42:41 GMT):
i have doubts regarding the `MSP ID`, on my service credentials i see there are multiples MSPs, including MSPs for orderers, ca, and peers
torresjeff (Sun, 04 Jun 2017 18:42:44 GMT):
which one should i use?
torresjeff (Sun, 04 Jun 2017 18:46:09 GMT):
I also see a `Hostname` text field when trying to add a certificate, what should i put on it?
davidkel (Sun, 04 Jun 2017 19:13:22 GMT):
@torresjeff There isn't one as far as I know, sorry.
hostname isn't something I would expect anyone outside to development to use. It allows you to override the expected hostname in the cert. Think I will raise an issue to hide that field as it really is an advanced option.
When you choose an MSP Id, you need to chose one that matches the ca you are going to use. If you imagine you are part of an organisation that has a ca and a peer in your organisation then they would have the same mspid and so that would be the mspid you want want in your connection profile.
torresjeff (Sun, 04 Jun 2017 19:17:10 GMT):
@davidkel thanks!
davidkel (Sun, 04 Jun 2017 19:24:01 GMT):
@torresjeff so specifically don't use the orderer msp :-)
torresjeff (Sun, 04 Jun 2017 19:24:10 GMT):
yup, got it
torresjeff (Sun, 04 Jun 2017 19:24:19 GMT):
thank you very much!
davidkel (Sun, 04 Jun 2017 19:25:02 GMT):
yw
torresjeff (Sun, 04 Jun 2017 19:26:02 GMT):
@davidkel btw, what is the job of the orderer?
torresjeff (Sun, 04 Jun 2017 19:26:14 GMT):
it didn't exist in hlfv0.6 right?
davidkel (Sun, 04 Jun 2017 19:30:02 GMT):
The v1.0 architecture is very different to v0.6. The Hyperledger docs should provide details on the new architecture
torresjeff (Sun, 04 Jun 2017 19:39:41 GMT):
@davidkel trying to connect to my blockchain service on bluemix but i get this error: `Error: Private key missing from key store. Can not establish the signing identity for user WebAppAdmin`
davidkel (Sun, 04 Jun 2017 19:41:30 GMT):
You need to chose an enrollementid made available from the ca you are going to use.
torresjeff (Sun, 04 Jun 2017 19:41:47 GMT):
hmm i did
davidkel (Sun, 04 Jun 2017 19:42:26 GMT):
I haven't heard of WebAppAdmin being an enrollmentid that was available from the bluemix ca's
torresjeff (Sun, 04 Jun 2017 19:42:50 GMT):
tried with admin too
torresjeff (Sun, 04 Jun 2017 19:42:53 GMT):
but get the same error
torresjeff (Sun, 04 Jun 2017 19:45:48 GMT):
@davidkel i can choose any orderer right?
torresjeff (Sun, 04 Jun 2017 19:48:48 GMT):
hmm i cant event connecto my hlf v1 fabric running locally
torresjeff (Sun, 04 Jun 2017 19:49:27 GMT):
when i try to connect from the playground i get `Error: EACCES`
davidkel (Sun, 04 Jun 2017 19:49:52 GMT):
Most likely you keyValStore is not valid
torresjeff (Sun, 04 Jun 2017 19:51:16 GMT):
oh, by default it just puts the path to the container keyValStore
davidkel (Sun, 04 Jun 2017 19:55:51 GMT):
keyValStore must be a valid path and it must be .hfc-key-store, so if you are running playground as a docker container it has to be /home/composer/.hfc-key-store. If you are running it locally and not as a container it has to be
torresjeff (Sun, 04 Jun 2017 19:57:31 GMT):
@davidkel so is it no longer `.composer-credentials`?
torresjeff (Sun, 04 Jun 2017 19:57:42 GMT):
does the path matter?
davidkel (Sun, 04 Jun 2017 19:58:37 GMT):
Yes it does. it must be as described, sorry it was a limitation of the alpha1 fabric
torresjeff (Sun, 04 Jun 2017 19:59:48 GMT):
@davidkel does it have to be in the root of `.hfc-key-store`?
torresjeff (Sun, 04 Jun 2017 20:00:00 GMT):
or can i specify a directory inside `.hfc-key-store`
davidkel (Sun, 04 Jun 2017 20:00:23 GMT):
nope, it has to be .hfc-key-store, not a subdirectory
torresjeff (Sun, 04 Jun 2017 20:00:38 GMT):
what happens if i have multiple profiles?
torresjeff (Sun, 04 Jun 2017 20:01:03 GMT):
wouldnt it override my credentials?
davidkel (Sun, 04 Jun 2017 20:01:20 GMT):
If the same name then yes it will
torresjeff (Sun, 04 Jun 2017 20:01:48 GMT):
i mean the user
torresjeff (Sun, 04 Jun 2017 20:01:59 GMT):
it creates a file for each enrollmentId correct?
torresjeff (Sun, 04 Jun 2017 20:02:12 GMT):
eg: i have an admin id in hlfv1 running on my docker container
torresjeff (Sun, 04 Jun 2017 20:02:18 GMT):
but also have an admin id in bluemix
davidkel (Sun, 04 Jun 2017 20:02:53 GMT):
Yes, plus a private and public key file as well
torresjeff (Sun, 04 Jun 2017 20:03:42 GMT):
what would i do if i want to have both at the same time?
davidkel (Sun, 04 Jun 2017 20:04:55 GMT):
run 2 containers and publish on different ports ?
torresjeff (Sun, 04 Jun 2017 20:09:34 GMT):
the thing is im running composer-playground on top of my os (downloaded it through npm)
torresjeff (Sun, 04 Jun 2017 20:09:43 GMT):
im not running the playground on containers
davidkel (Sun, 04 Jun 2017 20:14:49 GMT):
ah, ok. Unfortunately there isn't anything I can suggest at this time. Actually thinking about it as well if you did follow the container way of 2 containers publishing to different ports you would probably have to run 2 different browsers or the same browser but one of them in incognito mode.
torresjeff (Sun, 04 Jun 2017 20:15:50 GMT):
oh ok
torresjeff (Sun, 04 Jun 2017 20:15:53 GMT):
thanks!
torresjeff (Sun, 04 Jun 2017 20:16:29 GMT):
has the composer team considered a fix for this?
davidkel (Sun, 04 Jun 2017 20:19:07 GMT):
Not something we can fix. It's an issue with the fabric node sdk itself.
torresjeff (Sun, 04 Jun 2017 21:16:30 GMT):
has anytone gotten this error `Failed to connect: Error: Failed to deserialize creator identity, err MSP Org1MSP is unknown`?
davidkel (Sun, 04 Jun 2017 21:30:43 GMT):
@torresjeff What is the MSP or the ca/peer's you are using. The connection profile needs to match those
davidkel (Sun, 04 Jun 2017 21:30:43 GMT):
@torresjeff What is the MSP of the ca/peer's you are using. The connection profile needs to match those
torresjeff (Sun, 04 Jun 2017 21:31:06 GMT):
tried connecting to the default profile
torresjeff (Sun, 04 Jun 2017 21:31:22 GMT):
the one that uses fabric v1 running on docker
davidkel (Sun, 04 Jun 2017 21:33:54 GMT):
The MSP id that the connection profile defaults to is going to match the config used by a development fabric setup and isn't likely to match a service providers. What MSP id is given for the peers in bluemix ?
luckydogchina (Mon, 05 Jun 2017 06:58:13 GMT):
Has joined the channel.
deepakvparmar (Mon, 05 Jun 2017 11:27:17 GMT):
Is my understanding correct?
- We can use "composer-client" and "composer-admin" , which are internally using JavaScript SDK to communicate fabric network
- If we are developing our own web application using "composer-client" and "composer-admin", then we dont need to use/initialize composer-rest-server??
rama_rahul (Mon, 05 Jun 2017 11:34:21 GMT):
Message Attachments
rama_rahul (Mon, 05 Jun 2017 11:34:32 GMT):
Message Attachments
davidkel (Mon, 05 Jun 2017 11:45:46 GMT):
@rama_rahul The license check feature is pedantic, unfortunately the docs of the code I think you have cut and paste from were missing a single space in the license block comment. The updated version can be found at
https://hyperledger.github.io/composer/unstable/tutorials/developer-guide.html
or as license check isn't going to be important to you for getting started, you can easily disable it. In the package.json file find the scripts section and
In the scripts section there is a line `"licchk": "license-check",` and change it to `"licchk": "echo license-check",` (ie insert the word echo)
rama_rahul (Mon, 05 Jun 2017 11:52:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=e46Yjwb6nExiaLWaK) @davidkel Thanks!
JennFoley (Mon, 05 Jun 2017 13:27:45 GMT):
Is there anything I can do to make the Composer Rest Server more "stable" as in not going down unexpectedly when it's been idle?
caroline-church (Mon, 05 Jun 2017 13:37:41 GMT):
Hi @JennFoley what error do you get?
JennFoley (Mon, 05 Jun 2017 13:41:13 GMT):
No error, other than trying to use it and it's down. Would need to dig through logs to see if an error happened. Let me look
jdockter (Mon, 05 Jun 2017 13:47:11 GMT):
@sstone1 any chance you could update your magic Playground script (`curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash`) to use couchdb?
jdockter (Mon, 05 Jun 2017 13:47:11 GMT):
@sstone1 any chance you could update your magic Playground script (`curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash`) to use couchdb?
sstone1 (Mon, 05 Jun 2017 13:51:27 GMT):
@jdockter we will be doing this as part of introducing complex query support
theophoric (Mon, 05 Jun 2017 13:57:13 GMT):
Message Attachments
theophoric (Mon, 05 Jun 2017 13:57:27 GMT):
Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
caroline-church (Mon, 05 Jun 2017 14:00:19 GMT):
@theophoric what version of composer do you have?
theophoric (Mon, 05 Jun 2017 14:00:43 GMT):
v.0.7.0
torresjeff (Mon, 05 Jun 2017 14:02:45 GMT):
@sstone1 @caroline-church hey, any idea what the error: `Error: Error: REQUEST_TIMEOUT` when trying to deploy a bna file to hlfv1 on bluemix means?
jdockter (Mon, 05 Jun 2017 14:03:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kNnZ6ci63oMJnpSpG) @sstone1 okay looks like June 16th, ie Playback 6, for that?
caroline-church (Mon, 05 Jun 2017 14:04:28 GMT):
@theophoric Has this ever worked? Usually that sort of problem is that a npm install hasn't succeeded properly.
theophoric (Mon, 05 Jun 2017 14:04:57 GMT):
it has not worked -- but I did try re-installing the tools without any success
caroline-church (Mon, 05 Jun 2017 14:06:56 GMT):
It might be worth trying a more recent version we have just released version 0.7.4
caroline-church (Mon, 05 Jun 2017 14:07:16 GMT):
also what version of node do you have?
caroline-church (Mon, 05 Jun 2017 14:07:22 GMT):
and npm?
caroline-church (Mon, 05 Jun 2017 14:07:34 GMT):
have you got xcode installed
caroline-church (Mon, 05 Jun 2017 14:07:34 GMT):
and have you got xcode installed?
JennFoley (Mon, 05 Jun 2017 14:14:44 GMT):
@caroline-church any tips for how I can try to find error messages? Wasn't logged onto the server when it went down to have seen it in the active terminal window
theophoric (Mon, 05 Jun 2017 14:15:53 GMT):
@caroline-church node 6.10.3 and npm 5.0.2 and xcode 8.3.2
theophoric (Mon, 05 Jun 2017 14:16:07 GMT):
will try updating to the new composer release
theophoric (Mon, 05 Jun 2017 14:18:41 GMT):
no dice
davidkel (Mon, 05 Jun 2017 14:32:43 GMT):
@theophoric could you try npm 4 instead of npm 5 ? We had problems when we tried to move to npm 5.0.0
theophoric (Mon, 05 Jun 2017 14:34:08 GMT):
sure
theophoric (Mon, 05 Jun 2017 14:45:41 GMT):
Ok sort of working with 7.4 (7.0 binary was still in path)
theophoric (Mon, 05 Jun 2017 14:45:58 GMT):
Message Attachments
theophoric (Mon, 05 Jun 2017 14:46:22 GMT):
"Connect failed"
theophoric (Mon, 05 Jun 2017 14:46:56 GMT):
* following the fabric-tools guide and script to set everything up
caroline-church (Mon, 05 Jun 2017 14:49:05 GMT):
@theophoric If you do a docker ps what do you see?
theophoric (Mon, 05 Jun 2017 14:49:35 GMT):
Message Attachments
caroline-church (Mon, 05 Jun 2017 14:50:18 GMT):
and if you do a docker logs fd7 are there any errors?
caroline-church (Mon, 05 Jun 2017 14:50:18 GMT):
and if you do a `docker logs fd7` are there any errors?
JennFoley (Mon, 05 Jun 2017 14:53:35 GMT):
@sstone1 @davidkel @dselman , If I'm leaving up Composer Playground and Composer Rest Server for a long time -- days or weeks -- without traffic for others to develop with then do I need to do something to help keep it up? Both seem to exit after some period of idleness. Wondering if there is an idle timeout set somewhere.
theophoric (Mon, 05 Jun 2017 14:54:59 GMT):
No errors but peer0 dropped
theophoric (Mon, 05 Jun 2017 14:55:13 GMT):
will refresh the containers and try again
theophoric (Mon, 05 Jun 2017 14:56:36 GMT):
same thing
theophoric (Mon, 05 Jun 2017 14:57:48 GMT):
btw -- what is the purpose of composer-playground-api ? does it let you connect to a browser "deployment" ?
caroline-church (Mon, 05 Jun 2017 14:59:55 GMT):
the purpose of the `composer-playground-api` is to be the server side part of the `composer-playground`
caroline-church (Mon, 05 Jun 2017 15:01:31 GMT):
Can you show me your connection profile?
caroline-church (Mon, 05 Jun 2017 15:01:48 GMT):
and what do you mean by peer0 dropped?
theophoric (Mon, 05 Jun 2017 15:02:19 GMT):
in the logs was reported as a dead pper
theophoric (Mon, 05 Jun 2017 15:02:20 GMT):
*peer
Binay1 (Mon, 05 Jun 2017 15:02:40 GMT):
Has joined the channel.
theophoric (Mon, 05 Jun 2017 15:03:28 GMT):
Message Attachments
theophoric (Mon, 05 Jun 2017 15:03:50 GMT):
Message Attachments
theophoric (Mon, 05 Jun 2017 15:04:09 GMT):
How is composer-playground-api meant to be used ? this is what I get
Binay1 (Mon, 05 Jun 2017 15:05:04 GMT):
Hi, I was going through the hyperledger developer guide tutorial and I encountered this error saying "Failed to load connector module composer-connector-hlfv1 for connection profile "hlfv1"
"
theophoric (Mon, 05 Jun 2017 15:05:23 GMT):
This was my issue as well -- see above
Binay1 (Mon, 05 Jun 2017 15:05:35 GMT):
Thank you
theophoric (Mon, 05 Jun 2017 15:05:35 GMT):
resolution for me was to upgrade to v7.4
theophoric (Mon, 05 Jun 2017 15:05:58 GMT):
*0.7.4
Binay1 (Mon, 05 Jun 2017 15:06:54 GMT):
I will look into it
caroline-church (Mon, 05 Jun 2017 15:07:01 GMT):
@theophoric `composer-playground-api` isn't really meant to be "used" its just part of the `playground`
theophoric (Mon, 05 Jun 2017 15:07:09 GMT):
ah ok
theophoric (Mon, 05 Jun 2017 15:07:26 GMT):
is the server interface defined anywhere ?
theophoric (Mon, 05 Jun 2017 15:07:46 GMT):
** in the code, right.
theophoric (Mon, 05 Jun 2017 15:07:59 GMT):
does it expose anything similar to composer-rest-server ?
caroline-church (Mon, 05 Jun 2017 15:09:08 GMT):
no it doesn't expose anything
caroline-church (Mon, 05 Jun 2017 15:10:49 GMT):
how did the connection profile get created? did you create it or was it generated?
caroline-church (Mon, 05 Jun 2017 15:14:31 GMT):
Can you try running `nc localhost 7051` if this hangs it means that it can connect to your peer
theophoric (Mon, 05 Jun 2017 15:20:35 GMT):
does not
theophoric (Mon, 05 Jun 2017 15:21:20 GMT):
connection profile was generated through fabric tools
caroline-church (Mon, 05 Jun 2017 15:28:52 GMT):
ok so this means that you can't communicate with the peer, it might be worth trying bringing the image down and up again. We've seen problems before if the machine suspends and the docker image doesn't come back up properly
Binay1 (Mon, 05 Jun 2017 15:38:26 GMT):
My connection profile problem wasn't solved. I tried upgrading to version 0.7.4
caroline-church (Mon, 05 Jun 2017 15:38:56 GMT):
Hi @Binay1 what version of node, npm and xcode do you have
theophoric (Mon, 05 Jun 2017 15:39:24 GMT):
** no success after teardown+ restart
caroline-church (Mon, 05 Jun 2017 15:39:38 GMT):
have you checked that the 0.7.0 version isn't still in your path somewhere
Binay1 (Mon, 05 Jun 2017 15:44:33 GMT):
node - v6.10.3
npm- v5.0.2
xcode- 4.8.4
caroline-church (Mon, 05 Jun 2017 15:45:33 GMT):
@Binay1 Can you try npm v4 rather than v5
Binay1 (Mon, 05 Jun 2017 15:45:54 GMT):
Let me see
caroline-church (Mon, 05 Jun 2017 15:46:43 GMT):
@theophoric Can you try this command `sudo lsof -P -iTCP -sTCP:LISTEN` and see if you can see port `7051` in there and which command is listening on that port
Binay1 (Mon, 05 Jun 2017 15:48:32 GMT):
I tried. No change
caroline-church (Mon, 05 Jun 2017 15:51:03 GMT):
@binary so you still see the same error that it can't find `composer-connector-hlfv1`
caroline-church (Mon, 05 Jun 2017 15:51:03 GMT):
@binary1 so you still see the same error that it can't find `composer-connector-hlfv1`
caroline-church (Mon, 05 Jun 2017 15:51:03 GMT):
@Binay1 so you still see the same error that it can't find `composer-connector-hlfv1`
Binay1 (Mon, 05 Jun 2017 15:51:51 GMT):
yes
caroline-church (Mon, 05 Jun 2017 15:55:29 GMT):
before you upgraded to v0.7.4 did you do an uninstall
caroline-church (Mon, 05 Jun 2017 15:56:04 GMT):
and when you installed did you use sudo ( you don't want to use sudo)
Binay1 (Mon, 05 Jun 2017 15:57:07 GMT):
I used sudo
Binay1 (Mon, 05 Jun 2017 15:57:24 GMT):
Let me try it without that
Binay1 (Mon, 05 Jun 2017 15:59:50 GMT):
Still the same error
caroline-church (Mon, 05 Jun 2017 16:03:43 GMT):
did you uninstall before trying again?
Binay1 (Mon, 05 Jun 2017 16:04:22 GMT):
yes
dselman (Mon, 05 Jun 2017 16:08:02 GMT):
please check the install logs for any errors
Binay1 (Mon, 05 Jun 2017 16:09:04 GMT):
No errors
caroline-church (Mon, 05 Jun 2017 16:30:20 GMT):
@Binay1 Can you open a stackoverflow question for this and attach your logs please
Binay1 (Mon, 05 Jun 2017 16:31:07 GMT):
Okay
deepakvparmar (Mon, 05 Jun 2017 16:44:26 GMT):
@dselman @davidkel : Do we need composer-rest-server if we are developing web application using 'composer-client' and 'composer-admin'? I would like to understand what is best way of designing application , whether to use composer-rest-server or developing web application using 'composer-client' and 'composer-admin'.
davidkel (Mon, 05 Jun 2017 16:46:43 GMT):
@deepakvparmar You can develop client applications using those libraries, they don't depend on composer-rest-server
deepakvparmar (Mon, 05 Jun 2017 16:50:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZnytahT84rDdHqjgw) @davidkel : Thank you david. so , composer-rest-server is utility module to test network quickly? How if we develop application which will directly interact composer-rest-server only? What's your opinion about which way is more preferable?
theophoric (Mon, 05 Jun 2017 16:55:45 GMT):
One difference seems to be that the interface exposed by composer-rest-server for e.g. "get collection" includes a `filter` parameter which is missing from `client.getAll()`
sstone1 (Mon, 05 Jun 2017 17:21:07 GMT):
@theophoric you will find that the `filter` parameter is not that useful at the moment, because we are currently working on adding complex query support - once that is introduced, both the client APIs and the REST APIs will be extended with methods for invoking complex queries (using CouchDB)
sstone1 (Mon, 05 Jun 2017 17:22:04 GMT):
@deepakvparmar it is not a utility module, the REST server is designed for production usage. use `composer-rest-server` if you want a REST API, and use `composer-client` if you want a Node.js API - easy ;)
davidoevans (Mon, 05 Jun 2017 17:37:35 GMT):
I just started the default fabric using `./network_setup.sh up` from the Fabric getting started docs. What should my profile connection settings be to use that fabric from Composer playground?
dselman (Mon, 05 Jun 2017 18:02:49 GMT):
Please follow this install: https://hyperledger.github.io/composer/getting-started/using-playground-locally.html
tennenjl (Mon, 05 Jun 2017 18:06:18 GMT):
Quick question regarding a change to relationships found here: https://github.com/hyperledger/composer/issues/696
For our older code, when the value of the relationship id was returned, I don't believe it was fully qualified with the namespace, and the type, now it looks like it is returning resource:namespace.type#id Just wanted to validate that changed and also wanted to check if there was an API call I should be using to just get the id. Thanks!
dselman (Mon, 05 Jun 2017 18:08:16 GMT):
Correct -- the code used to assume that the type returned was the type defined by the model (bad assumption, because it can be any derived type).
dselman (Mon, 05 Jun 2017 18:10:49 GMT):
You can get the Id by calling getIdentifier()
dselman (Mon, 05 Jun 2017 18:11:21 GMT):
getFullyQualifiedIdentifier() will return the type#id
tennenjl (Mon, 05 Jun 2017 18:11:48 GMT):
@dselman Thanks!
davidoevans (Mon, 05 Jun 2017 18:27:18 GMT):
@dselman - i have the composer playground installed locally as per your link...and i'm now using the hlfabric connection profile. Are those the same default settings that would correspond to the default fabric install? i'm trying to create my own fabric and understand how to map the right settings to a composer profile.
dselman (Mon, 05 Jun 2017 18:49:04 GMT):
If you want to go further, I suggest following the Developer Install next: https://hyperledger.github.io/composer/getting-started/development-tools.html
dselman (Mon, 05 Jun 2017 18:49:17 GMT):
This will get you a local Fabric, with the local Composer tools
dselman (Mon, 05 Jun 2017 18:50:50 GMT):
Your connection profile will be created by the createComposerProfile.sh script in your hom dir
dselman (Mon, 05 Jun 2017 18:51:08 GMT):
As described here: https://hyperledger.github.io/composer/reference/connectionprofile.html
opiepj (Mon, 05 Jun 2017 19:20:44 GMT):
@dselman @sstone1 Hey quick question, If I've updated my network models... how do I update my typescript interface on the client application? Is there an auto update command or do I just have to write it out?
travin (Mon, 05 Jun 2017 19:54:06 GMT):
Has joined the channel.
travin (Mon, 05 Jun 2017 19:54:26 GMT):
Hi Hyperledger Composer team. I'm from the White Paper WG and we're looking for someone to write the overview section about Composer as well as perhaps include a highlighted feature for that section. If you're interested, or know someone I should contact, please send me a private message about it.
davidoevans (Mon, 05 Jun 2017 20:01:04 GMT):
thanks @dselman - i've followed those steps...i then ran `docker run -d -p 8080:8080 hyperledger/composer-playground` and went to localhost:8080/profile where was able to import the connection.js that was generated. However, when I go to use the connection profile, it's just hung indicating 'Please wait: establishing connection...'. Is there somewhere I can check logs to see what it might be stuck on?
davidkel (Mon, 05 Jun 2017 20:26:25 GMT):
@davidoevans what level of fabric are you trying to connect to ? Is it running locally through docker ?
davidoevans (Mon, 05 Jun 2017 20:26:50 GMT):
it is running locally through docker
davidkel (Mon, 05 Jun 2017 20:27:09 GMT):
and the version of fabric ?
davidoevans (Mon, 05 Jun 2017 20:28:00 GMT):
v1.0.0-alpha (setup as per instructions dselman gave)
davidkel (Mon, 05 Jun 2017 20:28:54 GMT):
ok, suggest you have a read of this
https://stackoverflow.com/questions/44117260/docker-version-of-composer-playground-is-not-able-to-connect-to-local-hlf-1-0-0
trying to just run the docker image version of playground to connect to a local fabric isn't so straight forward
sstone1 (Mon, 05 Jun 2017 20:29:44 GMT):
@travin I can take care of the white paper section - will PM you
davidoevans (Mon, 05 Jun 2017 20:30:03 GMT):
will take a look...thx @davidkel
opiepj (Mon, 05 Jun 2017 20:33:57 GMT):
@Jakeeyturner @sstone1 For the Angular generator, how are the typescript interfaces created?
sstone1 (Mon, 05 Jun 2017 20:36:45 GMT):
@opiepj they use the `TypescriptVisitor` class
sstone1 (Mon, 05 Jun 2017 20:36:46 GMT):
https://github.com/hyperledger/composer/blob/master/packages/generator-hyperledger-composer/generators/angular/index.js#L560
sstone1 (Mon, 05 Jun 2017 20:37:07 GMT):
https://github.com/hyperledger/composer/blob/master/packages/composer-common/lib/codegen/fromcto/typescript/typescriptvisitor.js
opiepj (Mon, 05 Jun 2017 20:37:26 GMT):
How do these get updated ?
opiepj (Mon, 05 Jun 2017 20:37:43 GMT):
If you change the network model definitions is there a way to update your client interfaces?
opiepj (Mon, 05 Jun 2017 20:37:56 GMT):
If so that would be really cool to mention in the tutorial
davidoevans (Mon, 05 Jun 2017 20:39:33 GMT):
@davidkel - that was quite helpful...thx again. now I need to clear the settings my local playground is using since even after restarting it on different docker network, it is still trying to connect to the old profile and I can't do anything...do you know where those settings are?
davidkel (Mon, 05 Jun 2017 20:41:41 GMT):
@davidoevans The information is kept in local storage in your browser. Depending on the brower there are different ways to clear local storage. The way I get around this is to run in an Incognito window if I don't want to clear my browser cache
sstone1 (Mon, 05 Jun 2017 20:41:54 GMT):
you can just re-run the generator, but that will overwrite any generated angular components - i don't think there's a way to just regen the typescript files
sstone1 (Mon, 05 Jun 2017 20:42:38 GMT):
@Jakeeyturner would know for sure
opiepj (Mon, 05 Jun 2017 20:43:37 GMT):
@sstone1 sounds like a feature I can build out ;)
sstone1 (Mon, 05 Jun 2017 20:43:50 GMT):
i like the sound of that ;)
sstone1 (Mon, 05 Jun 2017 20:44:06 GMT):
fancy adding participants and transactions whilst you're at it? :P
davidoevans (Mon, 05 Jun 2017 20:46:37 GMT):
that worked...thanks again @davidkel
opiepj (Mon, 05 Jun 2017 20:46:51 GMT):
@sstone1 participants and transactions whilst ?
davidkel (Mon, 05 Jun 2017 20:46:59 GMT):
@davidoevans that's good. Glad to help
sstone1 (Mon, 05 Jun 2017 20:48:57 GMT):
@opiepj https://github.com/hyperledger/composer/issues/400 :)
opiepj (Mon, 05 Jun 2017 20:52:01 GMT):
@sstone1 okay I'll take a look
sstone1 (Mon, 05 Jun 2017 20:52:10 GMT):
:+1: thanks man!
sstone1 (Mon, 05 Jun 2017 20:52:32 GMT):
give @Jakeeyturner a shout if you need a hand with anything
opiepj (Mon, 05 Jun 2017 20:53:03 GMT):
What branch you want this on?
opiepj (Mon, 05 Jun 2017 20:54:26 GMT):
@sstone1 also can I remove Tether and Bootstrap? I can include a UI component library instead
sstone1 (Mon, 05 Jun 2017 20:55:24 GMT):
we do everything on `master`
sstone1 (Mon, 05 Jun 2017 20:55:59 GMT):
@winslet is our UI designer - worth a chat with him on the UI front maybe?
sstone1 (Mon, 05 Jun 2017 20:56:17 GMT):
i try to avoid doing UI stuff at all costs, not my forte ;)
opiepj (Mon, 05 Jun 2017 21:03:11 GMT):
@sstone1 I'll check with them as well
opiepj (Mon, 05 Jun 2017 21:03:36 GMT):
@sstone1 if this were to be a cli ability do you want this in the composer-cli or composer-client? I don't believe that is a cli
opiepj (Mon, 05 Jun 2017 21:04:31 GMT):
Actually nvm, makes sense for it to be part of yeoman as a subcommand
sstone1 (Mon, 05 Jun 2017 21:04:53 GMT):
ok cool - i think yeoman makes sense
sstone1 (Mon, 05 Jun 2017 21:05:03 GMT):
i was going to say there is this command i didn't know about
sstone1 (Mon, 05 Jun 2017 21:05:03 GMT):
there's currently this command
sstone1 (Mon, 05 Jun 2017 21:05:03 GMT):
https://github.com/hyperledger/composer/blob/master/packages/composer-cli/lib/cmds/generator/createCodeCommand.js
sstone1 (Mon, 05 Jun 2017 21:05:32 GMT):
it's possible you can today run `composer generator create --archiveFile digitialPropertyNetwork.bna --format Typescript --outputDir ./dev/go-app`
opiepj (Mon, 05 Jun 2017 21:08:00 GMT):
hmm didn't work for me
opiepj (Mon, 05 Jun 2017 21:08:56 GMT):
Error: Unrecognised type: object, value: BusinessNetworkDefinition {
sstone1 (Mon, 05 Jun 2017 21:16:54 GMT):
from the command itself?
opiepj (Mon, 05 Jun 2017 21:27:13 GMT):
yes
opiepj (Mon, 05 Jun 2017 21:27:25 GMT):
v7.4
opiepj (Mon, 05 Jun 2017 21:27:29 GMT):
0.7.4
opiepj (Mon, 05 Jun 2017 21:36:12 GMT):
@sstone1 Also this is really weird. So I'm creating multiple model files. When building out the transaction logic composer cannot find the assets in my namespace. When I condense all my models into one file it works...
opiepj (Mon, 05 Jun 2017 21:36:12 GMT):
@sstone1 Also this is really weird. So I'm creating multiple model files. When building out the transaction logic, composer cannot find the assets in my namespace. When I condense all my models into one file it works...
opiepj (Mon, 05 Jun 2017 21:37:29 GMT):
Namespaces are all aligned
dselman (Mon, 05 Jun 2017 21:53:50 GMT):
A model file must have a unique namespace
opiepj (Mon, 05 Jun 2017 21:55:27 GMT):
Ah
opiepj (Mon, 05 Jun 2017 21:57:13 GMT):
Should it throw an error if you are using the same namespace twice?
dselman (Mon, 05 Jun 2017 21:58:02 GMT):
Yes -- that's a bug I think. I think because we store the model files in the model manager by namespace it probably just silently overwrites them
opiepj (Mon, 05 Jun 2017 22:00:14 GMT):
Okay that fixed my problem thank you!
dselman (Mon, 05 Jun 2017 22:02:49 GMT):
:thumbsup:
dselman (Mon, 05 Jun 2017 22:03:09 GMT):
Could you please create an issue to throw an exception if you add a duplicate ns to the model manager?
opiepj (Mon, 05 Jun 2017 22:03:31 GMT):
Sure
opiepj (Mon, 05 Jun 2017 22:09:52 GMT):
done
Jingleh (Mon, 05 Jun 2017 22:28:28 GMT):
Has joined the channel.
Jingleh (Mon, 05 Jun 2017 22:36:09 GMT):
Hi, I have a specific question: My project team is trying to find a solution. Hyperledger Fabric Composer may pose a risk to our model, In particular, our models can include an Array of items, but we were wondering if it’s possible to use Dictionaries in the
composer code instead of Arrays? If so, how can we do this?
opiepj (Mon, 05 Jun 2017 22:45:38 GMT):
@Jingleh You could build out a BST I suppose. I don't think that CTO supports maps
DennisM330 (Tue, 06 Jun 2017 01:42:04 GMT):
Appears progress is being made on the connection error that is encountered when accessing a Blockchain network in Bluemix from the Composer Rest Server. What package dependencies in the Composer rest server will be updated when this is fixed? See https://jira.hyperledger.org/browse/FAB-2787?page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel&focusedCommentId=25357#comment-25357
dselman (Tue, 06 Jun 2017 04:58:50 GMT):
This is a Fabric NodeSDK bug fix. We will update the dependencies on "fabric-ca-client": "1.0.0-alpha.1",
"fabric-client": "1.0.0-alpha.1",
dselman (Tue, 06 Jun 2017 04:59:46 GMT):
Here's hoping the fix makes it into HLF Alpha3!
tarima (Tue, 06 Jun 2017 05:34:19 GMT):
Hi All
Today. I run composer-playground with 4 peers with Fabric v0.6.
When I deploy car auction sample, not complete deployed.
Did you know something that?
deepakvparmar (Tue, 06 Jun 2017 05:39:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3EuXgD3hX3T9XPYtz) @sstone1 : Thank You stone. I can understand how we are going to implement authentication/authorization in case of javascript sdk, Kindly share any document how can we implement in composer-rest-server? is there any best practises guidelines collected so far while designing web application using hyperledger composer?
dselman (Tue, 06 Jun 2017 05:50:50 GMT):
@deepakvparmar check the docs: https://hyperledger.github.io/composer/unstable/integrating/enabling-rest-authentication.html
dselman (Tue, 06 Jun 2017 05:51:17 GMT):
@tarima we need _some_ details to be able to help... Can you get the logs?
Binay1 (Tue, 06 Jun 2017 05:52:05 GMT):
I've made a stackoverflow post regarding my problem. It has the logs. Can somebody please help me with that ?
https://stackoverflow.com/questions/44374331/hyperledger-composer-failed-to-load-connector-module-composer-connector-hlfv1
Binay1 (Tue, 06 Jun 2017 05:52:05 GMT):
I've updated the npm logs to my SO question
dselman (Tue, 06 Jun 2017 05:52:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gmJQ9w4QBbmzMZhGj) @Jingleh You will have to approximate a Map using an array of concepts, where each concept has a key and a value.
dselman (Tue, 06 Jun 2017 05:54:09 GMT):
@Binay1 I just commented on your SO. We need the logs from running `npm install -g`... This error almost always indicates that something failed to install.
Binay1 (Tue, 06 Jun 2017 05:55:04 GMT):
Okay. I'll update that
dselman (Tue, 06 Jun 2017 05:57:37 GMT):
I posted details on my config
tarima (Tue, 06 Jun 2017 05:58:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Jhu7n7rD32YLSiTfY) @dselman Thank you. Now prepare logs. please wait.
deepakvparmar (Tue, 06 Jun 2017 06:00:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=84qTe9bDrxDpKL5vg) @dselman : Thank you. Can you please also share your views on following questions:
1) if We are using composer-rest-server, then will have to manage two server side components. 1) running composer-rest-server 2) running application which will send request to composer-rest-server to communicate to network. Isn't it overhead? what additional advantages we are getting by using composer-rest-server? in fact, probably client will have to authenticate two times i guess.
2) If we are using JavaScript SDK, then will have to manage only one server side application, right?
3) When i generated angularjs application using yo generator, its also asking me information of composer-rest-server, but I am not planning to use composer-rest-server and want to use 'composer-client' and 'composer-server' only.
dselman (Tue, 06 Jun 2017 06:02:03 GMT):
Could you move those to SO please. Good questions -- I'd like the answers to be easily discoverable. I will answer on SO.
deepakvparmar (Tue, 06 Jun 2017 06:02:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CTiyuHhtLNb7JK55a) @dselman: Sure, Thank You.
deepakvparmar (Tue, 06 Jun 2017 06:09:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CTiyuHhtLNb7JK55a) @dselman : SO link: https://stackoverflow.com/questions/44382503/overhead-to-using-composer-rest-server-over-javascript-node-sdk
Binay1 (Tue, 06 Jun 2017 06:58:03 GMT):
I've updated the npm logs to my SO question
dselman (Tue, 06 Jun 2017 07:01:20 GMT):
https://twitter.com/danielselman/status/871984721101828096
dselman (Tue, 06 Jun 2017 07:01:30 GMT):
Live video of installing #Hyperleder #Composer. < 5 mins to run your own private blockchain with customized logic.
https://www.youtube.com/watch?v=XbAPQmsBXhQ
dselman (Tue, 06 Jun 2017 07:03:15 GMT):
@Binay1 you need to capture the output to the console when you run `npm uninstall -g composer-cli` followed by `npm install -g composer-cli`
winslet (Tue, 06 Jun 2017 07:09:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uXxPX3npQkB6XYcPa) @opiepj very happy for that to go ahead, did you have any thoughts about what you might replace that with yet? We're probably looking to style the whole generator at some point to make it more "composer-y" :joy:
Binay1 (Tue, 06 Jun 2017 07:59:42 GMT):
@dselman I reinstalled docker. it solved my problem
tmfukuda (Tue, 06 Jun 2017 09:19:40 GMT):
Has joined the channel.
tmfukuda (Tue, 06 Jun 2017 09:24:53 GMT):
Hi , this is first time to ask my issue about Composer.
khit (Tue, 06 Jun 2017 09:25:26 GMT):
Has joined the channel.
tmfukuda (Tue, 06 Jun 2017 09:30:07 GMT):
my environment is 4peer on HL v0.6. when I deployed Car Auction sample apps to my environment, deployment was failed. someone help me please ?
tmfukuda (Tue, 06 Jun 2017 09:30:18 GMT):
logs is here
vishwasrao (Tue, 06 Jun 2017 09:30:57 GMT):
Has joined the channel.
tmfukuda (Tue, 06 Jun 2017 09:31:25 GMT):
— playground side
BusinessNetworkDefinition:fromArchive() Loaded all model, JavaScript, and ACL files
BusinessNetworkDefinition:fromArchive() Adding model files to model manager
BusinessNetworkDefinition:fromArchive() Added model files to model manager
BusinessNetworkDefinition:fromArchive() Adding JavaScript files to script manager
BusinessNetworkDefinition:fromArchive() Added JavaScript files to script manager
BusinessNetworkDefinition:fromArchive() Adding ACL files to ACL manager
BusinessNetworkDefinition:fromArchive() Added ACL files to ACL manager
BusinessNetworkDefinition:fromArchive() < [object Object]
HFCUtil :invokeChainCode() function updateBusinessNetwork ["U
HFCUtil :invokeChainCode() onSubmitted {"name":"admin","enrollment":{"key":"ce4ddc80
— playground is waiting
ConnectorServer :timed out waiting for transaction to complete() undefined
ConnectorServer :connectionUpdate() <
— fabric side
[chaincode] filterError -> DEBU 18af[0m Ignoring NoTransitionError: no transition
[buckettree] newDataKey -> DEBU 18b0[0m Enter - newDataKey. chaincodeID=[61bad3d22537edf53b87bd04d19b40f2ef11c88e61db07201a8cd288291c29e5], key=[8$sysdata]
[buckettree] newDataKey -> DEBU 18b1[0m Exit - newDataKey=[bucketKey=[level=[9], bucketNumber=[922269]], compositeKey=[61bad3d22537edf53b87bd04d19b40f2ef11c88e61db07201a8cd288291c29e5 8$sysdata]]
[chaincode] func1 -> ERRO 18b2[0m [e27715c5]Got error ([e27715c5]No context for txid e27715c5-a9b9-4b77-abe5-fd192e5910e7) while decrypting. Sending ERROR
[chaincode] 1 -> DEBU 18b3[0m [e27715c5]handleGetState serial send ERROR
[chaincode] processStream -> DEBU 18b4[0m [e27715c5]Received message ERROR from shim
[chaincode] processStream -> ERRO 18b5[0m Got error: [e27715c5-a9b9-4b77-abe5-fd192e5910e7]Chaincode handler FSM cannot handle message (ERROR) with payload size (33) while in state: ready
[chaincode] HandleMessage -> DEBU 18b6[0m [e27715c5]Handling ChaincodeMessage of type: ERROR in state transaction
[chaincode] enterReadyState -> DEBU 18b7[0m [e27715c5]Entered state ready
caroline-church (Tue, 06 Jun 2017 09:41:24 GMT):
Hi @tmfukuda what version of composer are you using and how did you get to this point? Are you trying to deploy the business network from playground? If so is this playground running inside a docker container or locally?
tmfukuda (Tue, 06 Jun 2017 09:45:14 GMT):
Hi Caroline-church, composer is 0.7.2. yes , I am trying to deploy from playground and playground is running inside docker container.
dselman (Tue, 06 Jun 2017 09:46:12 GMT):
@Binay1 please update the SO question. Thanks!
caroline-church (Tue, 06 Jun 2017 09:50:19 GMT):
@tmfukuda could you try using composer 0.7.4
vinitesh (Tue, 06 Jun 2017 09:54:28 GMT):
Hello, Can i deploy a network .bna without creating channel on alpha1. My goal is to make my network available to all members the members/peers of my alpha 1 instance?
caroline-church (Tue, 06 Jun 2017 09:55:57 GMT):
Hi @vinitesh no you need to have a channel as that is what we deploy to
vinitesh (Tue, 06 Jun 2017 09:57:09 GMT):
thanks @caroline-church ,so there is nothing like default global channel?
caroline-church (Tue, 06 Jun 2017 09:57:25 GMT):
no
tmfukuda (Tue, 06 Jun 2017 09:59:40 GMT):
@caroline-church I tried 0.7.4 , but the issue was same unfortunately .
caroline-church (Tue, 06 Jun 2017 10:02:11 GMT):
have you tried tearing down your fabric and starting it again?
tmfukuda (Tue, 06 Jun 2017 10:05:12 GMT):
yes I did. and 1 peer environment is fine
Fanarito (Tue, 06 Jun 2017 10:34:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WCkpoYWCm5gkxwG8C) Anybody know if this will be the case?
caroline-church (Tue, 06 Jun 2017 10:45:52 GMT):
Hi @Fanarito take a look at this github issue it explains what historian will be https://github.com/hyperledger/composer/issues/55
Fanarito (Tue, 06 Jun 2017 10:51:28 GMT):
@caroline-church alright, thanks
caroline-church (Tue, 06 Jun 2017 10:59:08 GMT):
@tmfukuda have you tried increasing the timeout in your connection profile
rama_rahul (Tue, 06 Jun 2017 11:00:40 GMT):
Message Attachments
jje (Tue, 06 Jun 2017 11:03:52 GMT):
I have the problem that I can't see any useful debug output after changing from V0.6 to v1.0. Before I could monitor the chaincode outputs via `docker attach`, now it barely shows any debug output. I have also modified the docker-compose.yaml file to set the peers into debug mode, doesn't seem to help. Any advice how to debug the chaincode properly?
davidkel (Tue, 06 Jun 2017 11:10:08 GMT):
@jje in the docker-compose.yml file, for the peer definitions you need to add `CORE_CHAINCODE_LOGLEVEL=DEBUG` to the environment section
jje (Tue, 06 Jun 2017 11:11:08 GMT):
Great thanks, will try
vinitesh (Tue, 06 Jun 2017 11:30:01 GMT):
Hello In my alpha1 topology i have 3 members and each member has 2 ca and 2 peers. I have added both members to a channel i.e SPChannel. Now for deploying my network (.bna) does each member have to deploy the .bna to its peers with its specific connection profile using SPChannel or any one member will deploy to its peers and it will available to peers corresponding to all other members on SPChannel
davidkel (Tue, 06 Jun 2017 11:45:01 GMT):
@vinitesh Every endorsing peer will need to have the business network installed. So each member should create a connection profile for deployment
jdockter (Tue, 06 Jun 2017 11:53:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CTiyuHhtLNb7JK55a) @dselman Per you response to the SO question ( https://stackoverflow.com/questions/44382503/overhead-to-using-composer-rest-server-over-javascript-node-sdk) and arch diagram...just so I'm clear would you consider the Client Tier using web browser something like an Angular app? Would would you see in the App Tier for technology? I've always had the picture in my head that the web browser would be going directly to the REST server so just want to make sure I'm not missing something technically.
jdockter (Tue, 06 Jun 2017 11:53:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CTiyuHhtLNb7JK55a) @dselman Per you response to the SO question ( https://stackoverflow.com/questions/44382503/overhead-to-using-composer-rest-server-over-javascript-node-sdk) and arch diagram...just so I'm clear would you consider the Client Tier using web browser something like an Angular app? Would would you see in the App Tier for technology? I've always had the picture in my head that the web browser would be going directly to the REST server so just want to make sure I'm not missing something technically. Would have added comments directly in SO but my reputation isn't good enough :(
jdockter (Tue, 06 Jun 2017 11:53:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CTiyuHhtLNb7JK55a) @dselman Per you response to the SO question ( https://stackoverflow.com/questions/44382503/overhead-to-using-composer-rest-server-over-javascript-node-sdk) and arch diagram...just so I'm clear would you consider the Client Tier using web browser something like an Angular app? What would you see in the App Tier for technology? I've always had the picture in my head that the web browser would be going directly to the REST server so just want to make sure I'm not missing something technically. Would have added comments directly in SO but my reputation isn't good enough :(
vinitesh (Tue, 06 Jun 2017 11:55:52 GMT):
@davidkel In composer deploy command after installing it will also instantiate the genric chaincode . So what will happen if member1 has instantiated the grneric chaincode on the channel and member2 while deploying again try to instantiate the genric chaincode on the same channel?
davidkel (Tue, 06 Jun 2017 11:59:30 GMT):
@vinitesh The deploy command will return an error saying 'chaincode exists', but the chaincode will have been installed onto the peer. What should happen is when an invokechaincode is made to that peer, it will bring up the chaincode container to simulate the request for endorsement purposes. What I can't say is whether that works for alpha1 or not. I've been working with alpha2 and newer versions and have shown that to be the behaviour, but that is what should happen.
dselman (Tue, 06 Jun 2017 12:18:48 GMT):
@jdockter Yes, I'm thinking the Node.js / Apache process that is hosting the static/dynamic files for the Angular app.
caroline-church (Tue, 06 Jun 2017 12:21:44 GMT):
Hi @rama_rahul are either the member or company relationships in your model? If so when the transaction is submitted we will try and resolve the relationships, If they don't exist we will throw that error (i think the error needs improving)
selvaraman (Tue, 06 Jun 2017 12:22:27 GMT):
Has joined the channel.
jdockter (Tue, 06 Jun 2017 12:25:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aQ3ZzunQSj46hrJt3) @dselman okay and what about the App Tier connected to the event hub? I haven't spent enough time on the new event capabilities but would that be a separate Node.js app running to catch emitted events sent from the busn network?
sstone1 (Tue, 06 Jun 2017 12:27:25 GMT):
@jdockter correct, yes it would be - until we can add web hook/websocket support to the REST server to remove the need for the Node.js app
sstone1 (Tue, 06 Jun 2017 12:27:46 GMT):
-or- you can use the cool new Node-RED capabilities to listen for events and send them into other systems
vinitesh (Tue, 06 Jun 2017 12:28:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=obDBqA8cBhGTvmZG5) you are right. Even in alpha1 during deployment for peer2 it gave me error that chaincode already exits but when i ping the network for peer2 , it brings up chaincode container for peer2:)
FelixNielsen (Tue, 06 Jun 2017 14:07:54 GMT):
when I run the composer locally and changed default ACL from ALLOW to DENY - I can still update asset via transactions? - is this intended/normal
caroline-church (Tue, 06 Jun 2017 14:13:46 GMT):
Can you show me your ACL file
caroline-church (Tue, 06 Jun 2017 14:13:46 GMT):
Hi @FelixNielsen Can you show me your ACL file please
jje (Tue, 06 Jun 2017 14:35:58 GMT):
@davidkel: I have now enabled the debug level as you describe, it outputs shim and composer debug info nicely, however my chaincode output comes out only *sporadically* (I output to 'stdout' and do a 'tee' like 'docker attach dev-peer1-property-network-0.7.3 | tee log_jje1.log'. So it is still hard to debug my own chaincode (javascript code). Any suggestion?
davidkel (Tue, 06 Jun 2017 14:37:40 GMT):
@jje for v1 I don't believe console.log works. I think it has been mentioned be that `print` should work
davidkel (Tue, 06 Jun 2017 14:37:40 GMT):
@jje for v1 I don't believe console.log works. I think it has been mentioned before that `print` should work
davidkel (Tue, 06 Jun 2017 14:37:40 GMT):
@jje for v1 I don't believe console.log works. I think it has been mentioned before that `print` should work
https://github.com/hyperledger/composer/issues/1009
AccentSandy (Tue, 06 Jun 2017 14:38:47 GMT):
Hi all, Can someone please specify the path of .hfc-key-store on linux environment? Thanks
Fanarito (Tue, 06 Jun 2017 14:41:28 GMT):
@AccentSandy it should be in your home directory
hariharanatarajan (Tue, 06 Jun 2017 14:43:07 GMT):
@davidkel @sstone1 how do I debug connector issues . I tried a docker log -f confident_eulter and do not see any errors / movement . I have started the Fabric by hand and composer by hand . I have ensured that both of them are in the same network by using docker network inspect . When I use a browser and connect to localhost:8080 I see a message saying connecting and then no activity .
AccentSandy (Tue, 06 Jun 2017 14:44:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bMPsRMn2QpYhLmTCx) Thanks @Fanarito. I have looked it into the home directory but it doesn't appear to be there. I am logged in as root user if that help to setup the hyperledger instance.
caroline-church (Tue, 06 Jun 2017 14:45:39 GMT):
Hi @hariharanatarajan which version of composer are you using
hariharanatarajan (Tue, 06 Jun 2017 14:48:23 GMT):
(https://chat.hyperledger.org/channel/composer?msg=wzdDog4oEmbmzCP6R) @caroline-church I pulled from the hub . This is what my docker images show . hyperledger/composer-playground latest 1f4a2a107534 11 days ago 335MB . The name of container was confident_euler if it gives any clue
DennisM330 (Tue, 06 Jun 2017 14:48:29 GMT):
@dselman I got the Composer
caroline-church (Tue, 06 Jun 2017 14:50:14 GMT):
@hariharanatarajan does the message say it is deploying the sample?
hariharanatarajan (Tue, 06 Jun 2017 14:50:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=C8hcEBf5XTRj4M8zn) @hariharanatarajan There are the few lines of the docker insepct command is that helps . docker inspect confident_euler1
[
{
"Id": "90798a198462485f253ff4309a511017642cd7152d5226738f8aceeea597c615",
"Created": "2017-06-06T14:16:55.879585748Z",
"Path": "pm2-docker",
"Args": [
"composer-playground"
],
"State": {
"Status": "running",
"Running": true,
"Paused": false,
"Restarting": false,
"OOMKilled": false,
"Dead": false,
"Pid": 15544,
"ExitCode": 0,
"Error": "",
"StartedAt": "2017-06-06T14:17:39.07516653Z",
"FinishedAt": "2017-06-06T14:17:25.769710198Z"
},
"Image": "sha256:1f4a2a107534bb66726c98198ef4a37a2f0c3d19102e2a74e5ba2b78bebc9896",
DennisM330 (Tue, 06 Jun 2017 14:51:49 GMT):
@dselman I got the composer rest server running in Bluemix as a CF app connecting to my Blockchain network in Bluemix. Curious on best way to make the connection profile and rest rest server parameters configurable in Bluemix.
hariharanatarajan (Tue, 06 Jun 2017 14:51:55 GMT):
Also I am deploying by hand . So I am not running the standard example of starting everything from the script . I just want to know where to look for the logs . the last lines in the playground logs are 0|composer | PlaygroundAPI :createServer() > 8080
0|composer | ConnectionProfileManager :constructor() Created a new ConnectionProfileManager {"fs":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":64,"O_EXCL":128,"O_NOCTTY":256,"O_TRUNC":512,"O_APPEND":1024,"O_DIRECTORY":65536,"O_NOATIME":262144,"O_NOFOLLOW":131072,"O_SYNC":1052672,"O_DIRECT":16384,"O_NONBLOCK":2048,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1}}
0|composer | PlaygroundAPI :createServer() Playground API started on port 8080
0|composer | PlaygroundAPI :createServer() <
0|composer | Composer :main() >
0|composer | PlaygroundAPI :createServer() Client with ID 'VZdbbQalf1aRfMhbAAAA' on host '::ffff:10.0.2.2' connected
0|composer | ConnectorServer :constructor() > {"fs":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":64,"O_EXCL":128,"O_NOCTTY":256,"O_TRUNC":512,"O_APPEND":1024,"O_DIRECTORY":65536,"O_NOATIME":262144,"O_NOFOLLOW":131072,"O_SYNC":1052672,"O_DIRECT":16384,"O_NONBLOCK":2048,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1}}, {}, [object Object]
0|composer | ConnectorServer :constructor() <
caroline-church (Tue, 06 Jun 2017 14:53:55 GMT):
@hariharanatarajan has it ever worked?
hariharanatarajan (Tue, 06 Jun 2017 14:54:16 GMT):
nope . Trying it for the first time
hariharanatarajan (Tue, 06 Jun 2017 14:55:01 GMT):
I am sure I have something wrong . I am trying to figure out where would the logs show . I figured out there should be on the same docker network ..and have included that
caroline-church (Tue, 06 Jun 2017 14:57:35 GMT):
can you send me your connection profile please
caroline-church (Tue, 06 Jun 2017 14:57:54 GMT):
Does playground work ok in web mode?
hariharanatarajan (Tue, 06 Jun 2017 14:58:43 GMT):
yes it does
jje (Tue, 06 Jun 2017 14:58:55 GMT):
@davidkel This works, thanks a lot!
hariharanatarajan (Tue, 06 Jun 2017 14:59:29 GMT):
I have managed to deploy a sample of the animal trading with 1 transaction , 2 assets , 4 owners etc
caroline-church (Tue, 06 Jun 2017 15:00:02 GMT):
Was this a deploy to web mode or to a fabric?
hariharanatarajan (Tue, 06 Jun 2017 15:03:29 GMT):
this is the sequence I did if that helps : Started playground using the command ``` 1) docker run -d -p 8080:8080 hyperledger/composer-playground ``` 2) I was able to define assets and deploy in the web browser mode ``` 3) Now I wanted to define a connection . Gave the parameters and clicked on use this ``` 4) I stopped the container and created a docker-compose file so that the playground will be on the same network as the fabric ``` 4) I start using docker-compose -f xxx up -d and then this happens ..
caroline-church (Tue, 06 Jun 2017 15:04:23 GMT):
can you show me what you put in the connection profile properties, and can you show me the docker-compose file
FelixNielsen (Tue, 06 Jun 2017 15:05:02 GMT):
@caroline-church /**
* Sample access control list.
*/
rule Default {
description: "Allow all participants access to all resources"
participant: "ANY"
operation: ALL
resource: "org.acme.sample"
action: DENY
}
caroline-church (Tue, 06 Jun 2017 15:07:07 GMT):
@FelixNielsen if you use the admin id then the access control enforcement is disabled. This is because the admin id isn't bound to a participant
caroline-church (Tue, 06 Jun 2017 15:07:17 GMT):
this is something we are looking to fix
FelixNielsen (Tue, 06 Jun 2017 15:07:32 GMT):
@caroline-church alright thanks!
hariharanatarajan (Tue, 06 Jun 2017 15:09:28 GMT):
` version: '2'
services:
playground:
image: hyperledger/composer-playground
environment:
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=e2ecli_default
ports:
- "8080:8080"
container_name: confident_euler1
` is the docker-compose file .. I did not have the properties file . I guess it must have picked it from the last version I did before stopping and restarting
caroline-church (Tue, 06 Jun 2017 15:11:14 GMT):
You can export the connection profile from the browser
hariharanatarajan (Tue, 06 Jun 2017 15:18:23 GMT):
I am unable to . Let me do one thing . I will clear it up and start the playground from scratch and report any errors
caroline-church (Tue, 06 Jun 2017 15:18:31 GMT):
ok
hariharanatarajan (Tue, 06 Jun 2017 15:21:19 GMT):
Hi would you know how do go back to a clean container . I tried docker stop confident_euler followed by docker rm confident_euler and then did a docker-compose up -d and the connection is still retained ?
caroline-church (Tue, 06 Jun 2017 15:22:23 GMT):
try `docker-compose kill && docker-compose down`
caroline-church (Tue, 06 Jun 2017 15:22:23 GMT):
try `docker-compose kill && docker-compose down` to tear it down
hariharanatarajan (Tue, 06 Jun 2017 15:24:05 GMT):
Tried . Does not seem to help
hariharanatarajan (Tue, 06 Jun 2017 15:24:34 GMT):
The moment my browser connects I get a message saying "using FabConnection profile "
caroline-church (Tue, 06 Jun 2017 15:25:33 GMT):
ok maybe try following these instructions. It will download the docker images for fabric and playground and then create a connection profile for you
caroline-church (Tue, 06 Jun 2017 15:27:46 GMT):
https://hyperledger.github.io/composer/getting-started/using-playground-locally.html
hariharanatarajan (Tue, 06 Jun 2017 15:33:09 GMT):
ok . I did this because I have a local version of Fabric that I build and hence wanted to use that ..
caroline-church (Tue, 06 Jun 2017 15:35:01 GMT):
ok how about if you clear your browser local storage. Then refresh the browser. This will put you back into web mode
caroline-church (Tue, 06 Jun 2017 15:36:04 GMT):
before that what version of fabric are you using?
hariharanatarajan (Tue, 06 Jun 2017 15:44:59 GMT):
ok . tried that . . This is the connection profile `{
"name": "HariConnection",
"description": "A description for a V1 Profile",
"type": "hlfv1",
"orderers": [
{
"url": "grpc://orderer.example.com:7050",
"cert": "",
"hostnameOverride": ""
}
],
"channel": "harichan",
"mspID": "Org1MSP",
"ca": "http://ca_peerOrg1:7054",
"peers": [
{
"requestURL": "grpc://peer1.org1.example.com:7051",
"eventURL": "grpc://peer0.org2.example.com:7053",
"cert": "",
"hostnameOverride": ""
}
],
"keyValStore": "/tmp/keyValStore",
"deployWaitTime": 300,
"invokeWaitTime": 30
}`
hariharanatarajan (Tue, 06 Jun 2017 15:45:35 GMT):
and I get the same results . The moment I hit the connect it just keeps spinning
caroline-church (Tue, 06 Jun 2017 15:46:27 GMT):
on the `requestURL` are you using that exact value or have you changed it for showing it to me.
hariharanatarajan (Tue, 06 Jun 2017 15:47:07 GMT):
this is what I am running
jdockter (Tue, 06 Jun 2017 15:47:39 GMT):
When using the playground if I replace my current busn network with a new BNA do I revoke any identifies I have previously created?
hariharanatarajan (Tue, 06 Jun 2017 15:47:43 GMT):
I am using the e2e_cli from the hyperledger fabric code base ..
hariharanatarajan (Tue, 06 Jun 2017 15:48:45 GMT):
I have one basic question . For the identity I used the private key of the user1 that was generated by the cryptoconfig utility
jdockter (Tue, 06 Jun 2017 15:48:47 GMT):
My wallet shows them but when I go to use them they are 'invalid or may have been revoked'
hariharanatarajan (Tue, 06 Jun 2017 15:49:18 GMT):
So I picked up the private key as is ( i.e.) copy paste including the begin end etc..
caroline-church (Tue, 06 Jun 2017 15:49:23 GMT):
is that definitely what your peer is called?
caroline-church (Tue, 06 Jun 2017 15:49:59 GMT):
the `keyValStore` should be set to `/home/composer/.hfc-key-store`
hariharanatarajan (Tue, 06 Jun 2017 15:50:16 GMT):
yes this is what my docker ps shows ```CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
35bf95d0e6de hyperledger/composer-playground "pm2-docker compos..." 13 minutes ago Up 12 minutes 0.0.0.0:8080->8080/tcp confident_euler1
14787c7bdd24 dev-peer1.org2.example.com-mycc-1.0 "chaincode -peer.a..." 4 days ago Up 4 days dev-peer1.org2.example.com-mycc-1.0
556dfc5238a5 dev-peer0.org1.example.com-mycc-1.0 "chaincode -peer.a..." 4 days ago Up 4 days dev-peer0.org1.example.com-mycc-1.0
8a1c52979d3d dev-peer0.org2.example.com-mycc-1.0 "chaincode -peer.a..." 4 days ago Up 4 days dev-peer0.org2.example.com-mycc-1.0
76cc3ef8b13d hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 4 days ago Up 4 days 0.0.0.0:7054->7054/tcp ca_peerOrg1
3001ce5264d7 hyperledger/fabric-peer "peer node start -..." 4 days ago Up 4 days 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
cc257e854c79 hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 4 days ago Up 4 days 0.0.0.0:8054->7054/tcp ca_peerOrg2
2ddf5a7f7773 hyperledger/fabric-peer "peer node start -..." 4 days ago Up 4 days 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
ef1b7a5de695 hyperledger/fabric-peer "peer node start -..." 4 days ago Up 4 days 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
546964f293fb hyperledger/fabric-orderer "orderer" 4 days ago Up 4 days 0.0.0.0:7050->7050/tcp orderer.example.com
bbe2c5eeb1cd hyperledger/fabric-peer "peer node start -..." 4 days ago Up 4 days 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
```
caroline-church (Tue, 06 Jun 2017 15:51:01 GMT):
the `keyValStore` is definately wrong though
caroline-church (Tue, 06 Jun 2017 15:51:01 GMT):
the `keyValStore` is definately wrong though and should be `/home/composer/.hfc-key-store`
hariharanatarajan (Tue, 06 Jun 2017 15:51:43 GMT):
Can u also let me know the Identity ? Am I doing it wrong ?
jdockter (Tue, 06 Jun 2017 15:51:48 GMT):
@sstone1 doesn't seem like I can do anything with these identities now they are revoked in the wallet, is that correct?
caroline-church (Tue, 06 Jun 2017 15:52:11 GMT):
@jdockter thats because the participants that the identity is associated with don't exist on the new business network
caroline-church (Tue, 06 Jun 2017 15:52:58 GMT):
the default identity on aplpha1 is `admin` and `adminpw`
guyho (Tue, 06 Jun 2017 15:53:09 GMT):
Are there any examples of complex transactions, i.e., creation of an asset also creates relationship to an existing asset?
guyho (Tue, 06 Jun 2017 15:53:09 GMT):
Are there any examples of complex transactions, i.e., creation of an asset also creates relationship to an existing asset? I'm thinking this somehow relates to the newRelationship function in composer-runtime.
jdockter (Tue, 06 Jun 2017 15:53:30 GMT):
@caroline-church I did an Import/Replace, but my Wallet still shows the IDs that I had created and can't seem to do anything with them now
jdockter (Tue, 06 Jun 2017 15:53:52 GMT):
yes admin / adminpw works
caroline-church (Tue, 06 Jun 2017 15:54:32 GMT):
@jdockter thats becuase the wallet is per connection profile so will still be there
caroline-church (Tue, 06 Jun 2017 15:55:01 GMT):
@hariharanatarajan try running ` docker exec -ti CONTAINER_ID_OF_PLAYGROUND sh` and the `ping
caroline-church (Tue, 06 Jun 2017 15:55:01 GMT):
@hariharanatarajan try running ` docker exec -ti CONTAINER_ID_OF_PLAYGROUND sh` and the `ping
jdockter (Tue, 06 Jun 2017 15:56:23 GMT):
@caroline-church okay...so on each Import/Replace I need to reissue identities? and there is no way via the playground to remove or reissue the same identity?
caroline-church (Tue, 06 Jun 2017 15:56:43 GMT):
@guyho the vehicle lifecycle sample network has example of this. If you look in the setup script it shows how to do it
guyho (Tue, 06 Jun 2017 15:57:09 GMT):
@caroline-church cool! thanks for the pointer.
caroline-church (Tue, 06 Jun 2017 15:57:12 GMT):
@jdockter no you can't revoke identites in playground yet. There is a story for it
jdockter (Tue, 06 Jun 2017 15:58:15 GMT):
@caroline-church if I installed the playground via npm would I be able to manage this via the cli?
hariharanatarajan (Tue, 06 Jun 2017 15:58:51 GMT):
```~ $ /bin/ping peer1.org1.example.com
PING peer1.org1.example.com (172.20.0.8): 56 data bytes
ping: permission denied (are you root?)
~ $ sudo su
sh: sudo: not found
```
hariharanatarajan (Tue, 06 Jun 2017 16:02:23 GMT):
My docker network inspect shows all the containers to be in the same network .
caroline-church (Tue, 06 Jun 2017 16:03:50 GMT):
@jdockter you can don't need to install playground via npm you can still use the cli
jdockter (Tue, 06 Jun 2017 16:05:12 GMT):
@caroline-church not sure I follow your comment
caroline-church (Tue, 06 Jun 2017 16:05:31 GMT):
@hariharanatarajan can you do that for all the things in your network
hariharanatarajan (Tue, 06 Jun 2017 16:05:36 GMT):
I thought I will try the reverse (i.e.) get into the peer1.org1.example.com and ping the composer but I get ```Linux 2ddf5a7f7773 4.4.0-78-generic #99-Ubuntu SMP Thu Apr 27 15:29:09 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux ping not found``` hard luck :-(
caroline-church (Tue, 06 Jun 2017 16:06:28 GMT):
@jdockter you can use the cli regardless of how you installed playground. And yes you can use the cli to issue and revoke identities
hariharanatarajan (Tue, 06 Jun 2017 16:08:32 GMT):
``` $ ping ca_peerOrg1
PING ca_peerOrg1 (172.20.0.7): 56 data bytes
ping: permission denied (are you root?)
~ $ ping dev-peer1.org2.example.com-mycc-1.0
PING dev-peer1.org2.example.com-mycc-1.0 (172.20.0.12): 56 data bytes
ping: permission denied (are you root?)
~ $ ping dev-peer0.org1.example.com-mycc-1.0
PING dev-peer0.org1.example.com-mycc-1.0 (172.20.0.11): 56 data bytes
ping: permission denied (are you root?)
~ $ ping dev-peer0.org2.example.com-mycc-1.0
PING dev-peer0.org2.example.com-mycc-1.0 (172.20.0.10): 56 data bytes
ping: permission denied (are you root?)
~ $ ping peer1.org2.example.com
PING peer1.org2.example.com (172.20.0.5): 56 data bytes
ping: permission denied (are you root?)
~ $ ping ca_peerOrg2
PING ca_peerOrg2 (172.20.0.6): 56 data bytes
ping: permission denied (are you root?)
~ $ ping peer1.org1.example.com
PING peer1.org1.example.com (172.20.0.8): 56 data bytes
ping: permission denied (are you root?)
~ $ ping peer0.org2.example.com
PING peer0.org2.example.com (172.20.0.4): 56 data bytes
ping: permission denied (are you root?)
~ $ ping orderer.example.com
PING orderer.example.com (172.20.0.3): 56 data bytes
ping: permission denied (are you root?)
~ $ ping peer0.org1.example.com
PING peer0.org1.example.com (172.20.0.2): 56 data bytes
ping: permission denied (are you root?)
```
hariharanatarajan (Tue, 06 Jun 2017 16:09:18 GMT):
I suspect I am using the wrong values for the identity
jdockter (Tue, 06 Jun 2017 16:09:28 GMT):
@caroline-church when I issued the identities I did not see them in my local .hfc-key-store so I figured they were in the docker container ...so are you saying that from outside the container I should be able to connect with those identities?
caroline-church (Tue, 06 Jun 2017 16:09:55 GMT):
@hariharanatarajan did you try updating the `keyValStore`?
caroline-church (Tue, 06 Jun 2017 16:10:03 GMT):
what values did you use for the identity?
hariharanatarajan (Tue, 06 Jun 2017 16:13:12 GMT):
This is the userId User1@org1.example.com and the I used the private key found in the file under msp
hariharanatarajan (Tue, 06 Jun 2017 16:14:39 GMT):
@caroline-church thanks for all the help . I need to go . Will update this thread with the results I get tomorrow . thanks once again
caroline-church (Tue, 06 Jun 2017 16:15:40 GMT):
@jdockter to remove the identities from your wallet in playground you would need to clear your local storage but you still wouldn't be able to use those ids as the exist on the fabric (you would need to delete your fabric)
jdockter (Tue, 06 Jun 2017 16:19:56 GMT):
@caroline-church delete my .hfc-key-store or the Fabric containers, ie CA, orderer, peers, etc.?
caroline-church (Tue, 06 Jun 2017 16:20:35 GMT):
@jdockter the fabric containers
jdockter (Tue, 06 Jun 2017 16:25:02 GMT):
@caroline-church so doesn't the update cli command key all the identities in place?
jdockter (Tue, 06 Jun 2017 16:27:21 GMT):
I must be missing something...are these the steps to have my identities ...1) deploy my BNA to Fabric ...2) Issue identities for my participants in BNA...3) make changes to BNA ..4) restart Fabric containers ...5) deploy BNA again....6) issue identities again ?
caroline-church (Tue, 06 Jun 2017 16:29:04 GMT):
I'm not really sure what you are trying to achieve
caroline-church (Tue, 06 Jun 2017 16:29:04 GMT):
@jdockter I'm not really sure what you are trying to achieve
caroline-church (Tue, 06 Jun 2017 16:29:04 GMT):
@jdockter I'm not really sure what you are trying to achieve
jdockter (Tue, 06 Jun 2017 16:30:08 GMT):
@caroline-church I want to issue identities for participants AND make changes to me business network many times over
jdockter (Tue, 06 Jun 2017 16:30:08 GMT):
@caroline-church I want to issue identities for participants AND make changes to my business network many times over
caroline-church (Tue, 06 Jun 2017 16:33:33 GMT):
this should be ok if you are just making changes it will only be a problem if you import a business network as this will do a deploy rather than an update
jdockter (Tue, 06 Jun 2017 16:42:51 GMT):
ah okay...so the Deploy button is doing an `composer network update` and the Import/Replace is doing a 'composer network deploy` ?
jdockter (Tue, 06 Jun 2017 16:42:51 GMT):
ah okay...so the Deploy button is doing an `composer network update` and the Import/Replace button is doing a 'composer network deploy` ?
jdockter (Tue, 06 Jun 2017 16:42:51 GMT):
ah okay...so the Deploy button is doing an `composer network update` and the Import/Replace button is doing a `composer network deploy` ?
caroline-church (Tue, 06 Jun 2017 16:43:00 GMT):
yes
jdockter (Tue, 06 Jun 2017 16:43:11 GMT):
okay
davidkel (Tue, 06 Jun 2017 16:46:05 GMT):
@caroline-church what happens on hlfv1 if you try to replace a business network with another one of the same ?
davidkel (Tue, 06 Jun 2017 16:46:05 GMT):
@caroline-church what happens on hlfv1 if you try to replace a business network with another one of the same, eg for example you update it through the import/replace ?
caroline-church (Tue, 06 Jun 2017 16:48:07 GMT):
@davidkel if you do it through playground it always uses the business network name `org.acme.biznet` so it does a reset to delete everything then does a deploy
davidkel (Tue, 06 Jun 2017 16:49:46 GMT):
@caroline-church I would expect the deploy to fail if it used the same business network as it will have been deployed already
jdockter (Tue, 06 Jun 2017 16:50:43 GMT):
@caroline-church okay so setup playground via npm rather than docker container and now I see identities in hfc-key-store that I issued via the playground...so will just use CLI to update org.acme.biznet from my local
caroline-church (Tue, 06 Jun 2017 16:51:07 GMT):
@davidkel try it and see what happens
caroline-church (Tue, 06 Jun 2017 16:52:51 GMT):
@jdockter you can still use the playground to update your business network, just don't do an import after you have issued the identities always just click the deploy button
jdockter (Tue, 06 Jun 2017 16:56:20 GMT):
@caroline-church was trying to keep my code in VSCode...maybe this won't work
caroline-church (Tue, 06 Jun 2017 16:57:23 GMT):
@jdockter ahh ok, so when you deploy do a `composer network update` rather than a `composer network deploy`
jdockter (Tue, 06 Jun 2017 16:59:29 GMT):
@caroline-church well it doesn't seem to like my bna name on the update
caroline-church (Tue, 06 Jun 2017 17:01:05 GMT):
what does it say
jdockter (Tue, 06 Jun 2017 17:01:34 GMT):
```jdockter@ubuntu:~/github/customs/network$ composer network update -p hlfv1 -a customs-network@0.0.1.bna -i admin -s adminpw
Deploying business network from archive: customs-network@0.0.1.bna
Business network definition:
Identifier: customs-network@0.0.1
Description: Customs Network
Error: failed to obtain cds for customs-network - transaction not found customs-network/mychannel
Command failed
```
caroline-church (Tue, 06 Jun 2017 17:04:43 GMT):
@jdockter Is that business network deployed, if so did you deploy it through the playground? if you did then the business network name will be `org.acme.biznet`
jdockter (Tue, 06 Jun 2017 17:06:07 GMT):
@caroline-church yup it was...but the update needs the archive file right? so would I have to rename my archive?
jdockter (Tue, 06 Jun 2017 17:09:48 GMT):
this did not work either...```jdockter@ubuntu:~/github/customs/network$ composer network update -p hlfv1 -a org.acme.network@0.0.1.bna -i admin -s adminpw
Deploying business network from archive: org.acme.network@0.0.1.bna
Business network definition:
Identifier: org.acme.network@0.0.1
Description: Customs Network
Error: failed to obtain cds for org.acme.network - transaction not found org.acme.network/mychannel
Command failed
```
jdockter (Tue, 06 Jun 2017 17:09:59 GMT):
whoops
jdockter (Tue, 06 Jun 2017 17:10:14 GMT):
that should be biznet
jdockter (Tue, 06 Jun 2017 17:10:43 GMT):
better :)
jdockter (Tue, 06 Jun 2017 17:10:57 GMT):
```jdockter@ubuntu:~/github/customs/network$ composer network update -p hlfv1 -a org.acme.biznet@0.0.1.bna -i admin -s adminpw
Deploying business network from archive: org.acme.biznet@0.0.1.bna
Business network definition:
Identifier: org.acme.biznet@0.0.1
Description: Customs Network
✔ Updating business network definition. This may take a few seconds...
Command succeeded
```
jje (Tue, 06 Jun 2017 17:15:42 GMT):
I have created a hierarchical model in which I pack cases (e.g. 200.1 and 200.2.) onto a pallet (400.1), which is done through a transaction.
``[
{
"$class": "net.biz.PropertyNetwork.Pallet",
"cases": [
{
"$class": "net.biz.PropertyNetwork.AddCaseToPallet",
"transactionId": "38d55961-62c6-4057-86d8-8e832aab47a4",
"sscc_c": "resource:net.biz.PropertyNetwork.Case#200.1",
"sscc_p": "resource:net.biz.PropertyNetwork.Pallet#400.1",
"timestamp": "2017-06-06T13:20:05.126Z"
},
{
"$class": "net.biz.PropertyNetwork.AddCaseToPallet",
"transactionId": "a807f8ef-47f4-4954-8d37-124af6b8695e",
"sscc_c": "resource:net.biz.PropertyNetwork.Case#200.3",
"sscc_p": "resource:net.biz.PropertyNetwork.Pallet#400.1",
"timestamp": "2017-06-06T13:20:06.030Z"
}
],
"SSCC": "400.1",
"status": "UNPACKED"
},
…
``
Now I want to “unpack” the cases from the pallet and change the state of the cases. I extract the cases, create a `factory.newRelationship` for each case, and then want to update the cases with ` caseRegistry.updateAll(cases);`. However, I get an error message as follows:
`` JJE cases: Relationship {id=net.biz.PropertyNetwork.Case#200.2}
ERROR: :Error: Serializer.toJSON only accepts instances of Resource.
``
Here is the code snippet for the chaincode:
`` …
var cases = [];
var factory = getFactory();
return getAssetRegistry('net.biz.PropertyNetwork.Pallet')
.then(function (assetRegistry) {
// get the cases for the pallet
assetRegistry.get(sscc_p)
.then(function (Pallet) {
// get the number of cases and put cases into array
print(' JJE cases: ' + Pallet.cases.length);
for (var i = 0; i < Pallet.cases.length; i++){
var case_id = Pallet.cases[i].sscc_c.$identifier;
var sscc_p_resource = factory.newRelationship('net.biz.PropertyNetwork', 'Case', case_id);
cases.push(sscc_p_resource);
}
print(' JJE cases: ' + cases);
// update pallet
return assetRegistry.update(UnpackPallet.sscc_p);
})
// missing: update cases
.then(function() {
return getAssetRegistry('net.biz.PropertyNetwork.Case')
.then(function(caseRegistry) {
return caseRegistry.updateAll(cases);
})
})
.catch(function (error) {
print(' ERROR: :' + error);
return false;
})
})
.catch(function (error) {
return false;
});
…
``
What am I doing wrong here? Any help is appreciated!
jje (Tue, 06 Jun 2017 17:17:21 GMT):
I have created a hierarchical model in which I pack cases (e.g. 200.1 and 200.2.) onto a pallet (400.1), which is done through a transaction.
```[
{
"$class": "net.biz.PropertyNetwork.Pallet",
"cases": [
{
"$class": "net.biz.PropertyNetwork.AddCaseToPallet",
"transactionId": "38d55961-62c6-4057-86d8-8e832aab47a4",
"sscc_c": "resource:net.biz.PropertyNetwork.Case#200.1",
"sscc_p": "resource:net.biz.PropertyNetwork.Pallet#400.1",
"timestamp": "2017-06-06T13:20:05.126Z"
},
{
"$class": "net.biz.PropertyNetwork.AddCaseToPallet",
"transactionId": "a807f8ef-47f4-4954-8d37-124af6b8695e",
"sscc_c": "resource:net.biz.PropertyNetwork.Case#200.3",
"sscc_p": "resource:net.biz.PropertyNetwork.Pallet#400.1",
"timestamp": "2017-06-06T13:20:06.030Z"
}
],
"SSCC": "400.1",
"status": "UNPACKED"
},
…
```
Now I want to “unpack” the cases from the pallet and change the state of the cases. I extract the cases, create a `factory.newRelationship` for each case, and then want to update the cases with ` caseRegistry.updateAll(cases);`. However, I get an error message as follows:
``` JJE cases: Relationship {id=net.biz.PropertyNetwork.Case#200.2}
ERROR: :Error: Serializer.toJSON only accepts instances of Resource.
```
Here is the code snippet for the chaincode:
``` …
var cases = [];
var factory = getFactory();
return getAssetRegistry('net.biz.PropertyNetwork.Pallet')
.then(function (assetRegistry) {
// get the cases for the pallet
assetRegistry.get(sscc_p)
.then(function (Pallet) {
// get the number of cases and put cases into array
print(' JJE cases: ' + Pallet.cases.length);
for (var i = 0; i < Pallet.cases.length; i++){
var case_id = Pallet.cases[i].sscc_c.$identifier;
var sscc_p_resource = factory.newRelationship('net.biz.PropertyNetwork', 'Case', case_id);
cases.push(sscc_p_resource);
}
print(' JJE cases: ' + cases);
// update pallet
return assetRegistry.update(UnpackPallet.sscc_p);
})
// missing: update cases
.then(function() {
return getAssetRegistry('net.biz.PropertyNetwork.Case')
.then(function(caseRegistry) {
return caseRegistry.updateAll(cases);
})
})
.catch(function (error) {
print(' ERROR: :' + error);
return false;
})
})
.catch(function (error) {
return false;
});
…
```
What am I doing wrong here? Any help is appreciated! (hopefully with better formatting)
jdockter (Tue, 06 Jun 2017 17:30:26 GMT):
@caroline-church that allows me to keep my identities doing CLI update...just refresh the browser and I see the model changes :)
jdockter (Tue, 06 Jun 2017 17:30:52 GMT):
and my data
dselman (Tue, 06 Jun 2017 17:46:53 GMT):
@jje updateAll is expecting an array of Case instances, not an array of relationships to Case
jdockter (Tue, 06 Jun 2017 17:48:04 GMT):
does anyone have an example of an If statement in an ACL rule?
jdockter (Tue, 06 Jun 2017 17:48:04 GMT):
does anyone have an example of an If statement syntax in an ACL rule?
jje (Tue, 06 Jun 2017 17:48:36 GMT):
@dselman OK, but how do I create them from the transaction list shown above
jdockter (Tue, 06 Jun 2017 17:49:58 GMT):
for example I want participant A to have CREATE access to resource B or C...so the if would be on the resource parameter to say B or C
jje (Tue, 06 Jun 2017 17:50:02 GMT):
@dselman Is there any example I could look at?
dselman (Tue, 06 Jun 2017 17:56:08 GMT):
You can read each case out of its asset registry using a 'get' and then push the result onto the end of your case array.
dselman (Tue, 06 Jun 2017 17:57:22 GMT):
You will have to be careful to aggregate all your promises however, and return a Promise.all(promises)
jje (Tue, 06 Jun 2017 17:58:07 GMT):
OK, will try, thanks for now!
torresjeff (Tue, 06 Jun 2017 18:00:21 GMT):
@dselman do the github issues have any specific tag for anyone who wants to contribute? outside of the composer team?
tennenjl (Tue, 06 Jun 2017 18:41:01 GMT):
@jdockter Did you see the docs here: https://hyperledger.github.io/composer/reference/acl_language.html
tennenjl (Tue, 06 Jun 2017 18:41:49 GMT):
@jdocter rule SampleConditionalRule {
description: "Description of the ACL rule"
participant(m): "org.acme.SampleParticipant"
operation: ALL
resource(v): "org.acme.SampeAsset"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}
jdockter (Tue, 06 Jun 2017 18:46:11 GMT):
@tennenjl yes...maybe I'm understanding something incorrectly, but I thought we could have a 'if' statement in the resource field...don't really need a condition...so resource: if ( "org.acme.SampeAssetA" or "org.acme.SampeAssetB")
jdockter (Tue, 06 Jun 2017 18:47:31 GMT):
I want one rule that allows one participant to CREATE several different resources
tennenjl (Tue, 06 Jun 2017 18:49:33 GMT):
@jdocter, ah I don't know. I would either have created separate rules for each resource or have the resources in the same class
davidkel (Tue, 06 Jun 2017 18:50:47 GMT):
@tmfukuda If it works with a 1 peer setup but not a 4 peer setup, how about a 2 peer setup ? Maybe worth trying on another channel where fabric developers hang out to see if they know of any issues or setup requirements for environments with more than 1 peer ?
jdockter (Tue, 06 Jun 2017 18:54:00 GMT):
@tennenjl resources in the same class?
tennenjl (Tue, 06 Jun 2017 18:54:44 GMT):
@jdocter, yes. According to the docs - Resource defines the things that the ACL rule applies to. This can be a property on a class, an entire class or all classes within a namespace. It can also be an instance of a class.
tennenjl (Tue, 06 Jun 2017 18:58:17 GMT):
@jdocter, I haven't tried this, but perhaps if you had a super type (e.g. animals) and then had asset types that extended the animals type, then perhaps you could do something that way?
dselman (Tue, 06 Jun 2017 19:01:11 GMT):
@jdockter you can call resource.getFullyQualifiedType() to get the FQN of the type of the resource. You can then use that in your condition statement.
dselman (Tue, 06 Jun 2017 19:02:26 GMT):
You could also use resource.instanceOf(fqn) if you want to do a type check that takes into account the inheritance hierarchy.
vinitesh (Tue, 06 Jun 2017 19:19:16 GMT):
can assets be shared between multiple composer networks(chaincode) within same channel?
StephaneMery (Tue, 06 Jun 2017 19:34:57 GMT):
in the composer modelling language, it seems that I can't declare a generic asset that point to any type of transaction:
asset TransactionWrapper identified by wrapperId {
o String wrapperId
o transaction transaction
}
did I miss something?
jdockter (Tue, 06 Jun 2017 19:44:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=P5FZEBBr3M8KYLBur) @dselman @tennenjl the scenario I have is one resource is a transaction and the other is an asset...so I want the participant to be able to create, via REST CRUD, and also create, via transaction. Maybe it's better to only allow the transaction which eventually will have more business logic in validating the data. Right now it just seemed like I had to write separate rules for each resource.
sstone1 (Tue, 06 Jun 2017 20:14:06 GMT):
@vni
sstone1 (Tue, 06 Jun 2017 20:14:22 GMT):
@vinitesh no, you cannot do that today
sstone1 (Tue, 06 Jun 2017 20:15:07 GMT):
@StephaneMery no, you cannot do that today - we are working on adding a `Transaction` base class (as part of core system types) that you might be able to use in the future though.
StephaneMery (Tue, 06 Jun 2017 20:21:53 GMT):
yep, make sense. Same thing for Asset and Participant I assume. Another need that will probably come soon is the ability to implement n-ary relations as map. Arrays are not the most efficient data structure to store large collections
mattalhonte (Tue, 06 Jun 2017 20:26:00 GMT):
How do I get the Angular app to run on a different port?
GrahamCharters (Tue, 06 Jun 2017 20:53:31 GMT):
I'm trying to call the PrivateVehicleTransfer transaction from the vehicle lifecycle sample. Can someone tell me what a valid set of values for the data would be? I seem to be having particular problems with the "buyer" and "seller" entries, which I think are identified by email. I've tried a raw email value, and I've also tried values of the form I get back from the API (e.g. resource:composer.base.Person#bob@bob.com or even resource:org.acme.vehicle.lifecycle.PrivateOwner#bob@bob.com). The values in that form give me this error: "message": "Error: Object with ID '[Participant:composer.base.Person $sysregistries]' in collection with ID '%!!(MISSING)s(MISSING)' does not exist". Many thanks for any help.
torresjeff (Tue, 06 Jun 2017 21:03:28 GMT):
@sstone1 will we be able to cascade updates in a future version of composer?
dselman (Tue, 06 Jun 2017 22:35:21 GMT):
@GrahamCharters do the PrivateOwners exist with the IDs you are using?
mattalhonte (Tue, 06 Jun 2017 23:07:30 GMT):
How do I make the Angular app viewable from a remote computer? I tried setting "ng serve --host 0.0.0.0" but when I go to the URL it says "Invalid Host Header"
tennenjl (Wed, 07 Jun 2017 02:04:45 GMT):
Any suggestions on how to get the appropriate certs from a Bluemix HLFV1 Beta network for the profile connection.json file? Credentials no longer provides cert_path. Thanks in advance for any suggestions.
tennenjl (Wed, 07 Jun 2017 03:52:11 GMT):
@davidkel Any suggestions for adding the cert that is in pem format to connection.json? Do we remove the \n\r ? Also not sure on what we use for trustedRoots attribute
As per: https://github.com/hyperledger/composer/issues/1032
tennenjl (Wed, 07 Jun 2017 03:52:11 GMT):
@davidkel Any suggestions for adding the cert that is in pem format to connection.json? Do we remove the \n\r ? Also not sure on what we use for trustedRoots attribute
As per: https://github.com/hyperledger/composer/issues/1032
Thanks!
opiepj (Wed, 07 Jun 2017 05:24:22 GMT):
Hey from a transaction point of view, how do I throw errors like 404/500's
opiepj (Wed, 07 Jun 2017 05:24:32 GMT):
how does that get picked up?
opiepj (Wed, 07 Jun 2017 05:24:43 GMT):
and what is `getFactory`?
GrahamCharters (Wed, 07 Jun 2017 06:54:46 GMT):
@dselman - here's the output of a GET on /PrivateOwners
[
{
"$class": "org.acme.vehicle.lifecycle.PrivateOwner",
"email": "bob@bob.com",
"title": "Mr",
"firstName": "Bob",
"lastName": "Bobson",
"middleNames": [
"Bobby"
],
.... },
"birthDetails": {
"$class": "composer.base.BirthDetails",
"dateOfBirth": "2017-06-05T12:45:08.710Z",
"placeOfBirth": "Bobton"
}
},
{
"$class": "org.acme.vehicle.lifecycle.PrivateOwner",
"email": "gra@gra.com",
"title": "Mr",
"firstName": "Gra",
"lastName": "Grason",
"middleNames": [
"Gradle"
],
"gender": "MALE",
"nationalities": [
"United States"
],
"contactDetails": {
"$class": "composer.base.ContactDetails",
"email": "gra@gra.com",
"mobilePhone": "+4410101010",
"homePhone": "+4412121212",
"address": {
"$class": "composer.base.Address",
"city": "Graton",
"country": "United States",
"locality": "Local",
"region": "New Hampshire",
"street": "Gra Villa",
"street2": "Gra Avenue",
"postalCode": "2342SB"
}
},
"birthDetails": {
"$class": "composer.base.BirthDetails",
"dateOfBirth": "2017-06-06T10:45:08.710Z",
"placeOfBirth": "Graton"
}
}
]
GrahamCharters (Wed, 07 Jun 2017 06:54:46 GMT):
@dselman - here's the output of a GET on /PrivateOwners
[
{
"$class": "org.acme.vehicle.lifecycle.PrivateOwner",
"email": "bob@bob.com",
"title": "Mr",
"firstName": "Bob",
"lastName": "Bobson",
"middleNames": [
"Bobby"
],
.... },
},
{
"$class": "org.acme.vehicle.lifecycle.PrivateOwner",
"email": "gra@gra.com",
"title": "Mr",
"firstName": "Gra",
"lastName": "Grason",
"middleNames": [
"Gradle"
],
"gender": "MALE",
"nationalities": [
"United States"
],
"contactDetails": {
....
}
}
]
GrahamCharters (Wed, 07 Jun 2017 06:56:07 GMT):
I removed some of the additional stuff - address, etc...
davidkel (Wed, 07 Jun 2017 06:56:47 GMT):
@tennenjl don't remove the \n\r when editing the connection.json file, I need to look at what works and what doesn't in more detail but it appears for now that if you remove the \r then it doesn't work. I've not had a need to make use of the trusted roots option when working with service provided CAs as yet or my own local env when using tls.
Pere-Lluis (Wed, 07 Jun 2017 07:26:49 GMT):
Has joined the channel.
Pere-Lluis (Wed, 07 Jun 2017 07:31:13 GMT):
Hey there! I have succesfully deployed the blockchain, but I only get to do it in one node, my own computer, does any one have any documentation on how to add nodes to the blockchain?
Pere-Lluis (Wed, 07 Jun 2017 07:31:53 GMT):
I can access the rest API from other computers in the network, but I can't find how to set new nodes/validators from other computers
Vipul_Bajaj (Wed, 07 Jun 2017 07:33:12 GMT):
Has joined the channel.
Pere-Lluis (Wed, 07 Jun 2017 07:33:24 GMT):
https://hyperledger.github.io/composer/business-network/businessnetwork.html
Pere-Lluis (Wed, 07 Jun 2017 07:33:36 GMT):
here it refers to them as mantainers of the network
dselman (Wed, 07 Jun 2017 08:12:26 GMT):
@GrahamCharters can you create an issue please and attach BNA, logs etc and we will take a look
dselman (Wed, 07 Jun 2017 08:15:05 GMT):
@Pere-Lluis Composer doesn't deal with the structure/topology of the underlying HLF. You use HLF tools to manage the peers in the network etc. Please use the #fabric channel and docs.
Pere-Lluis (Wed, 07 Jun 2017 08:15:37 GMT):
oh thank you dselman!
Pere-Lluis (Wed, 07 Jun 2017 08:16:26 GMT):
but just one doubt, I can set the nodes through HLF and then deploy the bna with composer right?
caroline-church (Wed, 07 Jun 2017 08:19:07 GMT):
@Pere-Lluis yes
Pere-Lluis (Wed, 07 Jun 2017 08:19:33 GMT):
Thank you very much to both of you!
dselman (Wed, 07 Jun 2017 08:35:42 GMT):
@GrahamCharters you might also want to check the unit test for `describe('#privateVehicleTransfer', function() {` -- that transaction type is being tested.
GrahamCharters (Wed, 07 Jun 2017 08:42:38 GMT):
@dselman - thanks. It's difficult for me to tell from the test case whether or not I'm doing something wrong. I really need an example of the json I should be sending. I'm trying it out through the API Explorer.
harj91 (Wed, 07 Jun 2017 08:47:19 GMT):
Has joined the channel.
harj91 (Wed, 07 Jun 2017 08:47:55 GMT):
Hello,
I am currently trying to generate the business network archive as per the instructions on this page: https://hyperledger.github.io/composer/tutorials/developer-guide.html
However when I carry out the following step, I do not get the expected result.
To check that the structure of the files is valid, you can now generate a Business Network Archive (BNA) file for your business network definition. The BNA file is the deployable unit -- a file that can be deployed to the Composer runtime for execution.
Switch back to the terminal and type:
npm install
Expected result: creation of .bna file in list folder.
Actual output:
harjots-air:~ harjotrahi$ npm install
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN harjotrahi No description
npm WARN harjotrahi No repository field.
npm WARN harjotrahi No license field.
added 263 packages in 13.242s
Has anyone seen this before?
caroline-church (Wed, 07 Jun 2017 08:51:24 GMT):
Can you show what your package.json looks like
dselman (Wed, 07 Jun 2017 08:51:26 GMT):
@harj91 I suspect you missed this step: `(Note: Remove the 'deploy' line after 'test' - as we will not be publishing this network to the npm package manager).`
harj91 (Wed, 07 Jun 2017 09:05:14 GMT):
@dselman the deploy line is not in my package.json file - here is what it looks like atm:
harj91 (Wed, 07 Jun 2017 09:05:14 GMT):
@dselman the deploy line is not in my package.json file - here is what it looks like atm:
{
"name": "my-network",
"version": "0.0.1",
"description": "My very first Hyperledger Composer Network",
"scripts": {
"prepublish": "mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna",
"pretest": "npm run lint",
"lint": "eslint .",
"postlint": "npm run licchk",
"licchk": "license-check",
"postlicchk": "npm run doc",
"doc": "jsdoc --pedantic --recurse -c jsdoc.conf",
"test": "mocha --recursive -t 4000"
},
"repository": {
"type": "git",
"url": "https://github.com/hyperledger/composer-sample-networks.git"
},
"keywords": [
"sample",
"network"
],
"author": "Hyperledger Composer",
"license": "Apache-2.0",
"devDependencies": {
"browserfs": "^1.2.0",
"chai": "^3.5.0",
"chai-as-promised": "^6.0.0",
"composer-admin": "latest",
"composer-cli": "latest",
"composer-client": "latest",
"composer-connector-embedded": "latest",
"composer-cucumber-steps": "latest",
"cucumber": "^2.2.0",
"eslint": "^3.6.1",
"istanbul": "^0.4.5",
"jsdoc": "^3.4.1",
"license-check": "^1.1.5",
"mkdirp": "^0.5.1",
"mocha": "^3.2.0",
"moment": "^2.17.1"
},
"license-check-config": {
"src": [
"**/*.js",
"!./coverage/**/*",
"!./node_modules/**/*",
"!./out/**/*",
"!./scripts/**/*"
],
"path": "header.txt",
"blocking": true,
"logInfo": false,
"logError": true
}
}
dselman (Wed, 07 Jun 2017 09:06:17 GMT):
Did you complete the Development Tools install? What version of npm and Node do you have?
dselman (Wed, 07 Jun 2017 09:07:12 GMT):
Did you check whether the BNA file was created in the /dist folder?
dselman (Wed, 07 Jun 2017 09:07:27 GMT):
Those look like warnings...
Jakeeyturner (Wed, 07 Jun 2017 09:08:36 GMT):
Would the prepublish script even execute if npm install is called?
Vipul_Bajaj (Wed, 07 Jun 2017 09:10:57 GMT):
I have a use case in which there is an asset which is owned by two participants and there are other participants too. Now ,I want that only those two participants should be able to update anything in the assets through transactions and if any other participant tries to update data should not be able to do that.
dselman (Wed, 07 Jun 2017 09:11:19 GMT):
@Jakeeyturner short answer is yes... except apparently on npm5?
harj91 (Wed, 07 Jun 2017 09:11:22 GMT):
i have node version 6.10.3 and npm version 5.0.3. as far as I can see the BNA file has not been created
caroline-church (Wed, 07 Jun 2017 09:11:39 GMT):
@harj91 try using node version 4
caroline-church (Wed, 07 Jun 2017 09:12:10 GMT):
@Vipul_Bajaj you need to create an acl file
caroline-church (Wed, 07 Jun 2017 09:12:10 GMT):
@Vipul_Bajaj you need to create an acl file this allows you to specify rules on who can do things with the business network
Vipul_Bajaj (Wed, 07 Jun 2017 09:12:26 GMT):
@caroline-church I tried but no effect
caroline-church (Wed, 07 Jun 2017 09:12:57 GMT):
@Vipul_Bajaj can you show me the acl file you have created
dselman (Wed, 07 Jun 2017 09:13:23 GMT):
@harj91 so, it seems that the behavior of npm prepublish has changed in npm5... :-/
dselman (Wed, 07 Jun 2017 09:13:26 GMT):
IMPORTANT: As of npm@5, prepublish will only be run for npm publish. This will make its behavior identical to prepublishOnly, so npm@6 or later may drop support for the use of prepublishOnly, and then maybe we can all forget this embarrassing thing ever happened.
dselman (Wed, 07 Jun 2017 09:13:50 GMT):
On npm4 it also runs on `npm install` (for a local package)
caroline-church (Wed, 07 Jun 2017 09:13:50 GMT):
@Vipul_Bajaj Also are you using the admin user, if so acl rules aren't applied as they aren't associated with a participant
dselman (Wed, 07 Jun 2017 09:14:30 GMT):
@harj91 so, please use npm4
Vipul_Bajaj (Wed, 07 Jun 2017 09:15:50 GMT):
This is the acl file I have created.rule r1{
description: "Allow the owner of a vehicle total access"
participant(m): "org.blockchainv1.participant1"
operation: ALL
resource(v): "org.blockchainv1.Record"
condition: (v.participant1.getIdentifier() == m.getIdentifier())
action: ALLOW
}
rule R2{
description: "Allow the owner of a vehicle total access"
participant(m): "org.blockchainv1.Participant1"
operation: ALL
resource(v): "org.blockchainv1.Record"
condition: (v.participant1.getIdentifier() == m.getIdentifier())
action: ALLOW
}
Vipul_Bajaj (Wed, 07 Jun 2017 09:16:23 GMT):
@caroline-church how to change the user in composer playground
caroline-church (Wed, 07 Jun 2017 09:17:22 GMT):
In the header bar if you click on where it says admin it allows you to create new identities and switch between them
Vipul_Bajaj (Wed, 07 Jun 2017 09:17:40 GMT):
@caroline-church thanks
Vipul_Bajaj (Wed, 07 Jun 2017 09:17:56 GMT):
@caroline-church Is my acl file correct
caroline-church (Wed, 07 Jun 2017 09:17:58 GMT):
also on the acl rules in the first rule you have the participant with a lower case p but on rule 2 you have participant with an uppercase p
Vipul_Bajaj (Wed, 07 Jun 2017 09:18:23 GMT):
@caroline-church ok
indira.kalagara (Wed, 07 Jun 2017 09:21:05 GMT):
Team, I have deployed BNA file on Bluemix HSBN service. Where can I find the logs to verify the flow of the code
karthikworks (Wed, 07 Jun 2017 09:30:55 GMT):
Hi, We tried this https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html we are getting error when trying to follow the steps given.. Error: Private key missing from key store. Can not establish the signing identity for user admin
caroline-church (Wed, 07 Jun 2017 09:35:29 GMT):
Hi @karthikworks what did you set the `COMPOSER_ENROLLMENT_ID` and `COMPOSER_ENROLLMENT_SECRET` environment variables to?
karthikworks (Wed, 07 Jun 2017 09:36:00 GMT):
Hi @caroline-church its admin and adminpw
FelixNielsen (Wed, 07 Jun 2017 09:36:37 GMT):
when I try to create a new user / participant -> I get this error : Invalid fully qualified participant identifier - what is the format for each field user/participant
caroline-church (Wed, 07 Jun 2017 09:37:01 GMT):
@karthikworks what did you specify the keyValStore to be?
caroline-church (Wed, 07 Jun 2017 09:37:55 GMT):
Hi @FelixNielsen Can you show me how the participant is modelled and how you are trying to create it
karthikworks (Wed, 07 Jun 2017 09:38:03 GMT):
@caroline-church /home/composer/.hfc-key-store
FelixNielsen (Wed, 07 Jun 2017 09:38:55 GMT):
carauction-network -> abstract participant User identified by email {
o String email
o String firstName
o String lastName
}
FelixNielsen (Wed, 07 Jun 2017 09:38:58 GMT):
(I guess)
FelixNielsen (Wed, 07 Jun 2017 09:39:07 GMT):
demo network
dselman (Wed, 07 Jun 2017 09:40:11 GMT):
@FelixNielsen that participant is declared as abstract -- you won't be able to create an instance of it.
FelixNielsen (Wed, 07 Jun 2017 09:40:33 GMT):
so I can't test ACL with the demos?
dselman (Wed, 07 Jun 2017 09:41:17 GMT):
You can, but you'll need to create with a non-asbtract participant type. I.e something that extends User but that is not abstract.
dselman (Wed, 07 Jun 2017 09:41:17 GMT):
You can, but you'll need to create a non-abstract participant type. I.e something that extends User but that is not abstract.
caroline-church (Wed, 07 Jun 2017 09:42:14 GMT):
@FelixNielsen so in the case of using the carauction network you need to create a member or auctioneer
FelixNielsen (Wed, 07 Jun 2017 09:45:51 GMT):
Sorry I don't quite understand it - how can I create identites and test "login" and ACLs
Vipul_Bajaj (Wed, 07 Jun 2017 09:49:08 GMT):
How can I delete identities in playground
caroline-church (Wed, 07 Jun 2017 09:49:38 GMT):
@Vipul_Bajaj you can't yet delete identities in playground there is a user story for it
caroline-church (Wed, 07 Jun 2017 09:50:45 GMT):
@FelixNielsen to create identities in playground you need to go to the identities page (click on where it says admin in the header bar) then you can issue idenities
FelixNielsen (Wed, 07 Jun 2017 09:51:20 GMT):
yes but what is the format for the two fields?
caroline-church (Wed, 07 Jun 2017 09:52:33 GMT):
oh, the userId can be any string of characters, and the participant needs to be the fully qualified participant, there is auto complete on that field so if you start typing the participant id it will auto complete
FelixNielsen (Wed, 07 Jun 2017 09:52:48 GMT):
thx let me try
Pere-Lluis (Wed, 07 Jun 2017 09:57:59 GMT):
Hi again, I'm stuck trying to deploy the bna to fabric, but I don't know if it's a problem with composer or fabric
Pere-Lluis (Wed, 07 Jun 2017 09:58:23 GMT):
when I run the command composer network deploy -a my-network.bna -p hlfv1 -i admin -s adminpw
Pere-Lluis (Wed, 07 Jun 2017 09:58:34 GMT):
I get the following error
Pere-Lluis (Wed, 07 Jun 2017 09:58:46 GMT):
events.js:160
throw er; // Unhandled 'error' event
^
Error: Connect Failed
at ClientDuplexStream._emitStatusIfDone (/usr/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._readsDone (/usr/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:169:8)
Pere-Lluis (Wed, 07 Jun 2017 09:59:12 GMT):
the network is the one given as example in: http://hyperledger-fabric.readthedocs.io/en/latest/getting_started.html
Pere-Lluis (Wed, 07 Jun 2017 09:59:35 GMT):
and I have created the ComposerProfile
Pere-Lluis (Wed, 07 Jun 2017 10:00:25 GMT):
It works well when I use the network generated by startfabric.sh given in the Composer tutorial
dselman (Wed, 07 Jun 2017 10:01:15 GMT):
@Pere-Lluis those Fabric instructions are for Alpha2 -- Composer only supports HLF Alpha1 at the moment.
Pere-Lluis (Wed, 07 Jun 2017 10:02:02 GMT):
So there's no way of deploying a bna on Alpha2 yet?
dselman (Wed, 07 Jun 2017 10:02:43 GMT):
We are tracking HLF progress as closely as we can but due to API changes it required some time for us to validate a new HLF release. We hope to support Alpha3 (which will be released by the HLF team this week) for our release next week. Fingers crossed!
dselman (Wed, 07 Jun 2017 10:02:58 GMT):
@Pere-Lluis no
Pere-Lluis (Wed, 07 Jun 2017 10:03:09 GMT):
Of course, I don't say it as a complain
Pere-Lluis (Wed, 07 Jun 2017 10:03:19 GMT):
thanks for all development
karthikworks (Wed, 07 Jun 2017 10:03:26 GMT):
@caroline-church /home/composer/.hfc-key-store is the keyValStore we have mentioned...
dselman (Wed, 07 Jun 2017 10:03:30 GMT):
No offense taken! :-)
dselman (Wed, 07 Jun 2017 10:04:32 GMT):
@Pere-Lluis the good news for Composer users is that their BNAs work unchanged across 0.6, Alpha1 and whatever is next...
harj91 (Wed, 07 Jun 2017 10:05:26 GMT):
thanks for your help earlier guys, the issue turned out to be with me looking for package.json in the wrong directory
harj91 (Wed, 07 Jun 2017 10:05:49 GMT):
.bna file has been created now, but i get the following errors when running npm test in terminal
harj91 (Wed, 07 Jun 2017 10:05:50 GMT):
pm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-network@0.0.1 licchk: `license-check`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.0.1 licchk script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/harjotrahi/desktop/composer-sample-networks-master/packages/basic-sample-network/_logs/2017-06-07T10_03_33_986Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-network@0.0.1 postlint: `npm run licchk`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.0.1 postlint script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/harjotrahi/desktop/composer-sample-networks-master/packages/basic-sample-network/_logs/2017-06-07T10_03_34_038Z-debug.log
harj91 (Wed, 07 Jun 2017 10:06:29 GMT):
have i missed a step here?
dselman (Wed, 07 Jun 2017 10:12:41 GMT):
The licchk checks that all the source files have the header specified in header.txt. You've probably got a typo somewhere.
dselman (Wed, 07 Jun 2017 10:13:23 GMT):
See https://github.com/hyperledger/composer/issues/1156
caroline-church (Wed, 07 Jun 2017 10:19:10 GMT):
@karthikworks did it work the first time or hasn't it ever worked?
karthikworks (Wed, 07 Jun 2017 10:19:58 GMT):
@caroline-church This is the first time we are trying it, it hasnt worked..
caroline-church (Wed, 07 Jun 2017 10:21:49 GMT):
@karthikworks can you show the contents of `composer_config` and `composer_datasources` please
karthikworks (Wed, 07 Jun 2017 10:23:01 GMT):
@caroline-church COMPOSER_CONFIG='{
"connectionProfiles": {
"hlfabric": {
"type": "hlfv1",
"orderers": [
"grpc://orderer0:7050"
],
"ca": "http://ca0:7054",
"peers": [
{
"requestURL": "grpc://peer0:7051",
"eventURL": "grpc://peer0:7053"
},
{
"requestURL": "grpc://peer1:7051",
"eventURL": "grpc://peer1:7053"
}
],
"keyValStore": "/home/composer/.hfc-key-store",
"channel": "mychannel",
"mspID": "Org1MSP",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}
}
}'
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
caroline-church (Wed, 07 Jun 2017 10:24:30 GMT):
@karthikworks Which step were you following when you received the error?
karthikworks (Wed, 07 Jun 2017 10:28:36 GMT):
@caroline-church step 6 - while running Docker
AccentSandy (Wed, 07 Jun 2017 10:29:41 GMT):
Message Attachments
caroline-church (Wed, 07 Jun 2017 10:32:10 GMT):
@karthikworks can you run the following command `set | grep composer`
caroline-church (Wed, 07 Jun 2017 10:32:57 GMT):
Hi @AccentSandy did you get an errors when you installed, did you install with sudo (you aren't meant to use sudo)
caroline-church (Wed, 07 Jun 2017 10:32:57 GMT):
Hi @AccentSandy did you get an errors when you installed, did you install with sudo (you aren't meant to use sudo). Or have you changed version of node or npm?
AccentSandy (Wed, 07 Jun 2017 10:36:08 GMT):
I have not updated either of them. I am running node v6.8.1 and npm v5.0.3 if that helps
caroline-church (Wed, 07 Jun 2017 10:36:21 GMT):
try with npm versnio 4
caroline-church (Wed, 07 Jun 2017 10:36:21 GMT):
@AccentSandy try with npm version 4
GrahamCharters (Wed, 07 Jun 2017 10:41:15 GMT):
@dselman - I've raised https://github.com/hyperledger/composer/issues/1195 . I couldn't find any recent log files so am probably looking in the wrong place.
AccentSandy (Wed, 07 Jun 2017 10:43:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KGyoZfTxzE79EiKF3) @caroline-church Thanks. Trying it now.
karthikworks (Wed, 07 Jun 2017 10:44:17 GMT):
@caroline-church this is what we get.. COMPOSER_CONFIG=$'{\n "connectionProfiles": {\n "hlfabric": {\n "type": "hlfv1",\n "orderers": [\n "grpc://orderer0:7050"\n ],\n "ca": "http://ca0:7054",\n "peers": [\n {\n "requestURL": "grpc://peer0:7051",\n "eventURL": "grpc://peer0:7053"\n },\n {\n "requestURL": "grpc://peer1:7051",\n "eventURL": "grpc://peer1:7053"\n }\n ],\n "keyValStore": "/home/composer/.hfc-key-store",\n "channel": "mychannel",\n "mspID": "Org1MSP",\n "deployWaitTime": "300",\n "invokeWaitTime": "100"\n }\n }\n}'
dselman (Wed, 07 Jun 2017 10:46:59 GMT):
@here -- it is much easer for us to answer your in depth questions if you create StackOverflow entries tagged with `hyperledger-composer` -- it allows you to attach logs etc and it naturally "threaded", and answers/questions are much less likely to be missed.
deepakvparmar (Wed, 07 Jun 2017 10:48:11 GMT):
@dselman : Just asked simple question on SO Den :) , https://stackoverflow.com/questions/44410459/different-between-o-and-arrow-symbol-used-in-cto-file
jtonline (Wed, 07 Jun 2017 10:48:16 GMT):
StackOverflow is also great for discoverability if anyone hits something similar
caroline-church (Wed, 07 Jun 2017 10:49:26 GMT):
@karthikworks I would have expected to see around 8 environment variables in that list, but i only see `COMPOSER_CONFIG`, i should see all the ones that are listed in step 6
vinitesh (Wed, 07 Jun 2017 10:59:22 GMT):
can i connect my local playground to a network other then org.acme.biznet ?
caroline-church (Wed, 07 Jun 2017 11:00:46 GMT):
Hi @vinitesh not at the monent there is a story to address this https://github.com/hyperledger/composer/issues/902
vinitesh (Wed, 07 Jun 2017 11:02:23 GMT):
thanks @caroline-church
davidkel (Wed, 07 Jun 2017 11:16:52 GMT):
@harj91 see https://github.com/hyperledger/composer/issues/1156 regarding the license check
harj91 (Wed, 07 Jun 2017 11:27:40 GMT):
@davidkel @dselman thanks fixed that issue now
harj91 (Wed, 07 Jun 2017 11:27:54 GMT):
npm test is failing on with below
Commodity Trading
1) "before all" hook
0 passing (3s)
1 failing
1) Commodity Trading "before all" hook:
Error: Failed to load connector module "composer-connector-embedded" for connection profile "defaultProfile"
at connectionProfileStore.load.then.e (node_modules/composer-common/lib/connectionprofilemanager.js:148:27)
harj91 (Wed, 07 Jun 2017 11:28:26 GMT):
found the function in connectionprofilemanager.js but not sure what the issue could be
caroline-church (Wed, 07 Jun 2017 11:29:12 GMT):
Hi @harj91 what version of node and npm are you using? Also how did you install composer was it with sudo (you shouldn't install with sudo)
caroline-church (Wed, 07 Jun 2017 11:29:12 GMT):
Hi @harj91 what version of node and npm are you using? Also how did you install composer was it with sudo (you shouldn't install with sudo) Also were there any errors when you did the install?
zupan (Wed, 07 Jun 2017 11:29:40 GMT):
Has joined the channel.
hariharanatarajan (Wed, 07 Jun 2017 11:32:08 GMT):
@caroline-church I am looking at the getting started example ans the install-hlfv1.sh . I can see the createComposerProfile.sh script but that does not contain an AddIdentity ..
hariharanatarajan (Wed, 07 Jun 2017 11:32:29 GMT):
I am looking for that so that I can replicate the same for my local setup ..
hariharanatarajan (Wed, 07 Jun 2017 11:32:45 GMT):
Because that I am assuming is the missing link in my piece
hariharanatarajan (Wed, 07 Jun 2017 11:37:09 GMT):
ok . found it . connection.json ..
dselman (Wed, 07 Jun 2017 11:38:59 GMT):
@harj91 cd into the package you want to test and then run `npm install` followed by `npm test` -- that should work.
harj91 (Wed, 07 Jun 2017 11:40:44 GMT):
@caroline-church node v4 and npm v2.14.2
ran npm test again and produced this output:
Commodity Trading
1) "before all" hook
0 passing (12ms)
1 failing
1) Commodity Trading "before all" hook:
TypeError: this is not a typed array.
at from (native)
at Function.newBufferFrom (node_modules/composer-common/index.js:46:35)
at getEmptyDirNode (node_modules/browserfs/dist/node/generic/key_value_filesystem.js:35:34)
at InMemoryFileSystem.SyncKeyValueFileSystem.makeRootDirectory (node_modules/browserfs/dist/node/generic/key_value_filesystem.js:322:33)
at InMemoryFileSystem.SyncKeyValueFileSystem [as constructor] (node_modules/browserfs/dist/node/generic/key_value_filesystem.js:179:15)
at new InMemoryFileSystem (node_modules/browserfs/dist/node/backend/InMemory.js:48:23)
at Context.
harj91 (Wed, 07 Jun 2017 11:47:08 GMT):
looks like i need to upgrade node and npm
harj91 (Wed, 07 Jun 2017 11:47:29 GMT):
@dselman thanks - i tried that originally and it led to this error
harj91 (Wed, 07 Jun 2017 11:48:03 GMT):
with latest versions of node and npm the original error still apparent: Error: Failed to load connector module "composer-connector-embedded" for connection profile "defaultProfile"
at connectionProfileStore.load.then.e (node_modules/composer-common/lib/connectionprofilemanager.js:148:27)
caroline-church (Wed, 07 Jun 2017 12:03:06 GMT):
@harj91 you need to be on node v6 and npm v4
hariharanatarajan (Wed, 07 Jun 2017 12:05:08 GMT):
@caroline-church Is there a piece of code that creates the $HOME/.hfc-key-store
Vipul_Bajaj (Wed, 07 Jun 2017 12:05:16 GMT):
Can we provide dynamic access to some participants if required.
caroline-church (Wed, 07 Jun 2017 12:06:46 GMT):
@hariharanatarajan the key-store gets created when you first enroll with an identity
caroline-church (Wed, 07 Jun 2017 12:07:04 GMT):
@Vipul_Bajaj I'm not sure i understand what you mean
harj91 (Wed, 07 Jun 2017 12:07:45 GMT):
@caroline-church thanks ill give it a go
Vipul_Bajaj (Wed, 07 Jun 2017 12:10:19 GMT):
Like I own a record that's an asset. Now I want to share some info with some other participant of the network and want to give a partial access to fields of the record. So is it possible in composer
karthikworks (Wed, 07 Jun 2017 12:12:34 GMT):
@caroline-church this is the full envars... ``` COMPOSER_BUSINESS_NETWORK=rainfall_insurance
COMPOSER_CONFIG=$‘{\n “connectionProfiles”: {\n “hlfabric”: {\n “type”: “hlfv1",\n “orderers”: [\n “grpc://orderer0:7050"\n ],\n “ca”: “http://ca0:7054“,\n “peers”: [\n {\n “requestURL”: “grpc://peer0:7051”,\n “eventURL”: “grpc://peer0:7053”\n },\n {\n “requestURL”: “grpc://peer1:7051”,\n “eventURL”: “grpc://peer1:7053”\n }\n ],\n “keyValStore”: “/home/composer/.hfc-key-store”,\n “channel”: “mychannel”,\n “mspID”: “Org1MSP”,\n “deployWaitTime”: “300”,\n “invokeWaitTime”: “100”\n }\n }\n}’
COMPOSER_CONNECTION_PROFILE=hlfabric
COMPOSER_DATASOURCES=$‘{\n “db”: {\n “name”: “db”,\n “connector”: “mongodb”,\n “host”: “mongo”\n }\n}’
COMPOSER_ENROLLMENT_ID=admin
COMPOSER_ENROLLMENT_SECRET=adminpw
COMPOSER_NAMESPACES=never
COMPOSER_PROVIDERS=$‘{\n “github”: {\n “provider”: “github”,\n “module”: “passport-github”,\n “clientID”: “gitUsername”,\n “clientSecret”: “gitPassword”,\n “authPath”: “/auth/github”,\n “callbackURL”: “/auth/github/callback”,\n “successRedirect”: “/”,\n “failureRedirect”: “/”\n }\n}’
COMPOSER_SECURITY=true ```
caroline-church (Wed, 07 Jun 2017 12:27:04 GMT):
@Vipul_Bajaj the acl language only allows you to either let a participant read all of an asset or none of an asset
caroline-church (Wed, 07 Jun 2017 12:29:02 GMT):
@karthikworks Can you do a docker ps please
FelixNielsen (Wed, 07 Jun 2017 12:29:55 GMT):
@caroline-church so it is not possible to define ACL where some of the fields in an asset are hidden? - like "private" keys for encrypting digital assets (binary files)
caroline-church (Wed, 07 Jun 2017 12:31:10 GMT):
no
harj91 (Wed, 07 Jun 2017 12:31:37 GMT):
@caroline-church still being given error:
Error: Failed to load connector module "composer-connector-embedded" for connection profile "defaultProfile"
at connectionProfileStore.load.then.e (node_modules/composer-common/lib/connectionprofilemanager.js:148:27)
regardless of node and npm versions
FelixNielsen (Wed, 07 Jun 2017 12:35:44 GMT):
@caroline-church oki, but we could make another object and link to that from a given asset correct?
caroline-church (Wed, 07 Jun 2017 12:36:02 GMT):
@FelixNielsen yes
FelixNielsen (Wed, 07 Jun 2017 12:36:06 GMT):
thx!
caroline-church (Wed, 07 Jun 2017 12:37:03 GMT):
@harj91 and you didn't install using sudo? and you didn't get any errors when you installed?
hariharanatarajan (Wed, 07 Jun 2017 12:37:29 GMT):
@caroline-church I am looking at the format of the files in the crypto-config bundled with the playground install and what is present in my fabric .. Will that matter ?
sstone1 (Wed, 07 Jun 2017 12:39:32 GMT):
@hariharanatarajan we are not Fabric maintainers, if you have Fabric questions please ask them in #fabric - Composer will work with any Fabric at either v0.6 or v1.0-alpha1
hariharanatarajan (Wed, 07 Jun 2017 12:41:20 GMT):
@sstone1 Agreed . I am trying to find the value of what I should give for the AddIdentity and I am stuck there . I am assuming this should be value of the cacerts in the Orderer ? Or is it something else ?
sstone1 (Wed, 07 Jun 2017 12:42:23 GMT):
admin / adminpw is the default identity in Fabric v1.0 that allows you to deploy chaincode
sstone1 (Wed, 07 Jun 2017 12:42:23 GMT):
admin / adminpw is the default identity in Fabric v1.0-alpha1 that allows you to deploy chaincode
sstone1 (Wed, 07 Jun 2017 12:42:50 GMT):
User ID = admin, User Secret = adminpw
harj91 (Wed, 07 Jun 2017 12:43:51 GMT):
@caroline-church not sure, i am going to reinstall from the beginning
caroline-church (Wed, 07 Jun 2017 12:44:01 GMT):
@harj91 ok
hariharanatarajan (Wed, 07 Jun 2017 12:50:23 GMT):
@sstone1 thanks .
harj91 (Wed, 07 Jun 2017 13:02:41 GMT):
when executing npm install -g lerna in terminal, im presnted with the following errors and asked to use sudo:
npm ERR! Darwin 16.4.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g" "lerna"
npm ERR! node v6.3.0
npm ERR! npm v3.10.3
npm ERR! path /usr/local/lib/node_modules/lerna/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules/lerna/node_modules'
npm ERR! at Error (native)
npm ERR! { Error: EACCES: permission denied, access '/usr/local/lib/node_modules/lerna/node_modules'
npm ERR! at Error (native)
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/usr/local/lib/node_modules/lerna/node_modules' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/harjotrahi/fabric-tools/npm-debug.log
caroline-church (Wed, 07 Jun 2017 13:04:24 GMT):
@harj91 it should be ok to install lerna using sudo
harj91 (Wed, 07 Jun 2017 13:04:36 GMT):
@caroline-church thanks
caroline-church (Wed, 07 Jun 2017 13:04:40 GMT):
just don't install compoer as sudo
harj91 (Wed, 07 Jun 2017 13:30:03 GMT):
ok reinstalled composer without sudo, now when running npm test i get the following:
Sample
1) "before each" hook for "Alice can read all of the assets"
0 passing (2s)
1 failing
1) Sample "before each" hook for "Alice can read all of the assets":
Error: No chaincode ID found for business network 'basic-sample-network'
at testIdentity.then (node_modules/composer-connector-embedded/lib/embeddedconnection.js:163:27)
caroline-church (Wed, 07 Jun 2017 13:30:46 GMT):
have you deployed the business network
harj91 (Wed, 07 Jun 2017 13:35:34 GMT):
my mistake i had not updated the test/sample.js file
harj91 (Wed, 07 Jun 2017 13:35:38 GMT):
the npm test has passed now, thank you!
caroline-church (Wed, 07 Jun 2017 13:36:14 GMT):
cool, glad it now works for you :)
hariharanatarajan (Wed, 07 Jun 2017 13:51:36 GMT):
How do I make my browser / docker container forget the connections and start again ? ( short of doing a clear cache all ). I tried doing a docker-compose kill / stop . I also did a docker rmi image name and did a pull again . But the connection name seems to be remembered . I tried with a new browser ( Microsft Edge ) but that did not work at all . Any tips ?
caroline-church (Wed, 07 Jun 2017 13:53:46 GMT):
@hariharanatarajan from within playground you can click on a connection profile and delete it.
caroline-church (Wed, 07 Jun 2017 13:55:27 GMT):
@hariharanatarajan if the connection profile that you are connecting to has problems connecting and you cannot get to the connection profiles page you can clear your local storage by opening the developer console and in the console type `localStorage.clear()`
hariharanatarajan (Wed, 07 Jun 2017 13:56:59 GMT):
Thanks that's what I was looking for . The connection profile was not showing up
hariharanatarajan (Wed, 07 Jun 2017 14:01:05 GMT):
But sadly I am still stuck . I used this connection profile ```{
"name": "HariMozProfile",
"description": "A description for a V1 Profile",
"type": "hlfv1",
"orderers": [
{
"url": "grpc://orderer.example.com:7050",
"cert": "",
"hostnameOverride": ""
}
],
"channel": "harichan",
"mspID": "Org1MSP",
"ca": "http://ca_peerOrg1:7054",
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer1.org1.example.com:7053",
"cert": "",
"hostnameOverride": ""
}
],
"keyValStore": "/home/composer/.hfc-key-store",
"deployWaitTime": 300,
"invokeWaitTime": 30
}``` and I used an identity of admin and adminpw as the secret .. I don't see any activity in any logs
hariharanatarajan (Wed, 07 Jun 2017 14:04:22 GMT):
I opened the console in Mozilla and I see an undefined error in main.xxxxx:1043987 The previous message said loaded connection profile
tennenjl (Wed, 07 Jun 2017 14:04:36 GMT):
@hariharanatarajan Check your keyValStore
tennenjl (Wed, 07 Jun 2017 14:05:00 GMT):
it should point to your home dir
tennenjl (Wed, 07 Jun 2017 14:05:16 GMT):
which is likely diff than /home/composer
tennenjl (Wed, 07 Jun 2017 14:05:37 GMT):
so should be
hariharanatarajan (Wed, 07 Jun 2017 14:05:52 GMT):
@tennenjl I am running playground as a docker container . So I don't know
hariharanatarajan (Wed, 07 Jun 2017 14:11:04 GMT):
@caroline-church Sadly localStorage.clear() does not work . Gives me undefined
hariharanatarajan (Wed, 07 Jun 2017 14:11:41 GMT):
@sstone1 @caroline-church can I deploy my app through APIs if possible ( without using browser ... ) .. Just checking
caroline-church (Wed, 07 Jun 2017 14:17:42 GMT):
@hariharanatarajan thats what it is supposed to do, if you know refresh the browser it should connect in web mode
caroline-church (Wed, 07 Jun 2017 14:18:22 GMT):
@hariharanatarajan yes you can deploy through the command line using `composer network deploy` command
hariharanatarajan (Wed, 07 Jun 2017 14:20:05 GMT):
Thanks @caroline-church . Would this mean I need to install the npm for API access ? Is it possible that I can do this from the docker image ?
caroline-church (Wed, 07 Jun 2017 14:21:10 GMT):
@hariharanatarajan you just do `npm install -g composer-cli` this needs to be on your local machine
caroline-church (Wed, 07 Jun 2017 14:21:46 GMT):
all the command lets you specify the connection profile and userid and secret
reginbald (Wed, 07 Jun 2017 14:24:43 GMT):
Hi has anyone gotten this error before?
reginbald (Wed, 07 Jun 2017 14:24:43 GMT):
.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
IllegalModelException: Undeclared type Person in property Bar.foo.fooProperty
caroline-church (Wed, 07 Jun 2017 14:25:37 GMT):
Hi @reginbald What were you doing when you got that error?
reginbald (Wed, 07 Jun 2017 14:26:47 GMT):
composer archive create
reginbald (Wed, 07 Jun 2017 14:27:15 GMT):
trying to create a banana file for my network
caroline-church (Wed, 07 Jun 2017 14:27:35 GMT):
can you paste what your model looks like
hariharanatarajan (Wed, 07 Jun 2017 14:29:42 GMT):
@caroline-church local machine/host running the docker container I guess ? This is the error I see ```ubuntu@hyperledger-devenv:37eb1a9:/opt/gopath/src/github.com/hyperledger/fabric/examples/e2e_cli$ composer network deploy -a ../../mydev.bna -p HariChromeProfile -i admin -s adminpw
Deploying business network from archive: ../../mydev.bna
Business network definition:
Identifier: animaltracking-network@0.0.9
Description: Animal Tracking network based on UK DEFRA regulations
events.js:160
throw er; // Unhandled 'error' event
^
Error: {"created":"@1496845712.549019436","description":"EOF","file":"../src/core/lib/iomgr/tcp_posix.c","file_line":235,"grpc_status":14}
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
```
caroline-church (Wed, 07 Jun 2017 14:30:56 GMT):
@hariharanatarajan can you try a `composer network ping`
reginbald (Wed, 07 Jun 2017 14:33:30 GMT):
got it to work, the --sourceName argument had a spelling mistake :)
hariharanatarajan (Wed, 07 Jun 2017 14:33:47 GMT):
```ubuntu@hyperledger-devenv:37eb1a9:/opt/gopath/src/github.com/hyperledger/fabric/examples/e2e_cli$ composer network ping -n animaltracking-network@0.0.9 -p HariChromeProfile -i admin -s adminpw
events.js:160
throw er; // Unhandled 'error' event
^
Error: {"created":"@1496845991.855952386","description":"EOF","file":"../src/core/lib/iomgr/tcp_posix.c","file_line":235,"grpc_status":14}
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:229:12)
```
hariharanatarajan (Wed, 07 Jun 2017 14:34:52 GMT):
One question . I know this is not the Fabric channel but would help to know where should I look for logs ( which container ) in the fabric side
caroline-church (Wed, 07 Jun 2017 14:35:28 GMT):
@hariharanatarajan you don't need the version number in the network name
caroline-church (Wed, 07 Jun 2017 14:36:14 GMT):
if you do a docker ps and look for the id of the peer then do docker log
caroline-church (Wed, 07 Jun 2017 14:36:19 GMT):
that will show you the logs
hariharanatarajan (Wed, 07 Jun 2017 14:40:24 GMT):
ok . Even without the version number I get a slightly different stack trace ```ubuntu@hyperledger-devenv:37eb1a9:/opt/gopath/src/github.com/hyperledger/fabric/examples/e2e_cli$ composer network ping -n animaltracking-network -p HariChromeProfile -i admin -s adminpw
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)
```
caroline-church (Wed, 07 Jun 2017 14:41:20 GMT):
what do you see if you do a docker ps
hariharanatarajan (Wed, 07 Jun 2017 14:41:48 GMT):
```CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c968ddfda57a hyperledger/composer-playground "pm2-docker compos..." About an hour ago Up About an hour 0.0.0.0:8080->8080/tcp confident_euler
f67787593aeb dev-peer1.org2.example.com-mycc-1.0 "chaincode -peer.a..." 2 hours ago Up 2 hours dev-peer1.org2.example.com-mycc-1.0
ef5e45c059ed dev-peer0.org1.example.com-mycc-1.0 "chaincode -peer.a..." 2 hours ago Up 2 hours dev-peer0.org1.example.com-mycc-1.0
af8bfe94eb53 dev-peer0.org2.example.com-mycc-1.0 "chaincode -peer.a..." 2 hours ago Up 2 hours dev-peer0.org2.example.com-mycc-1.0
734307d505cc hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 2 hours ago Up 2 hours 0.0.0.0:7054->7054/tcp ca_peerOrg1
6e4a2eec0d15 hyperledger/fabric-peer "peer node start -..." 2 hours ago Up 2 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
3c1347c57138 hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 2 hours ago Up 2 hours 0.0.0.0:8054->7054/tcp ca_peerOrg2
d196eb81cea1 hyperledger/fabric-peer "peer node start -..." 2 hours ago Up 2 hours 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
d36b7e420c90 hyperledger/fabric-orderer "orderer" 2 hours ago Up 2 hours 0.0.0.0:7050->7050/tcp orderer.example.com
84939ca55d51 hyperledger/fabric-peer "peer node start -..." 2 hours ago Up 2 hours 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
8e7e80469a4b hyperledger/fabric-peer "peer node start -..." 2 hours ago Up 2 hours 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
```
hariharanatarajan (Wed, 07 Jun 2017 14:42:13 GMT):
and none of the docker peer logs / orderer logs show any movement
hariharanatarajan (Wed, 07 Jun 2017 14:42:20 GMT):
if I do a ping ..
hariharanatarajan (Wed, 07 Jun 2017 14:42:29 GMT):
I mean composer ping
caroline-church (Wed, 07 Jun 2017 14:43:12 GMT):
ahh ok so that network isn't deployed at all so the ping is never gonig to work (sorry thats my fault)
caroline-church (Wed, 07 Jun 2017 14:43:33 GMT):
have you changed anything in the business network that you are trying to deploy
caroline-church (Wed, 07 Jun 2017 14:43:57 GMT):
can you deploy business networks from the playground?
hariharanatarajan (Wed, 07 Jun 2017 14:48:47 GMT):
From the playground ``` I get a javascript error seen in the console (in mozilla ).``` . ```In chrome the connection just hangs and no error ``` . ```Edge has error . Very pecular behavior . Not supported I guess``` . ``` Hence was looking for cli support ```
caroline-church (Wed, 07 Jun 2017 14:51:22 GMT):
@hariharanatarajan if you want to use the cli then you need to change your connection profile to use localhost
hariharanatarajan (Wed, 07 Jun 2017 14:52:47 GMT):
Oops .. that may not be possible and will not work for sure .. Just curious to see where the error is . so that we can figure out something . As of now I see no errors in console / no movement in the docker logs anywhere ..
caroline-church (Wed, 07 Jun 2017 15:10:56 GMT):
why cant you set localhost in your connection profile
Fanarito (Wed, 07 Jun 2017 15:52:09 GMT):
has anyone successfully setup passport basic auth on the rest api?
caroline-church (Wed, 07 Jun 2017 15:53:14 GMT):
Hi @Fanarito are you seeing problems?
Fanarito (Wed, 07 Jun 2017 15:54:32 GMT):
```{
"basic": {
"provider": "basic",
"module": "passport-http"
}
}```
this is the composer provider object.
and I am getting this error
```
TypeError: AuthStrategy is not a constructor
at PassportConfigurator.configureProvider (/usr/lib/node_modules/composer-rest-server/node_modules/loopback-component-passport/lib/passport-configurator.js:259:18)
at Promise.then (/usr/lib/node_modules/composer-rest-server/server/server.js:120:38)
at process._tickCallback (internal/process/next_tick.js:109:7)
```
caroline-church (Wed, 07 Jun 2017 15:59:19 GMT):
@Fanarito can you run the command `set | grep cpmposer`
Fanarito (Wed, 07 Jun 2017 16:01:36 GMT):
`set | grep -i composer` returns `Binary file (standard input) matches`
Fanarito (Wed, 07 Jun 2017 16:02:34 GMT):
`echo $COMPOSER_PROVIDERS` returns ```{
"basic": {
"provider": "basic",
"module": "passport-http"
}
}```
caroline-church (Wed, 07 Jun 2017 16:11:08 GMT):
can you use the rest server without authentication?
Fanarito (Wed, 07 Jun 2017 16:11:21 GMT):
@caroline-church yup
Fanarito (Wed, 07 Jun 2017 16:13:19 GMT):
`composer-rest-server -p defaultProfile -n animal-network -i admin -s adminpw -S true` this is the command I use to run the server
caroline-church (Wed, 07 Jun 2017 16:21:48 GMT):
@Fanarito i think it might be your configuration that is wrong, we have only tested a couple of passport strategies and it might require alot of investigation and testing on your part. Why don't you try using the github passport in these instructions https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html to get you going and then maybe change to your preferred passport later
caroline-church (Wed, 07 Jun 2017 16:23:01 GMT):
@Fanarito THis is the example we followed for the rest server https://github.com/strongloop/loopback-example-passport it might give you more info
Fanarito (Wed, 07 Jun 2017 16:40:14 GMT):
@caroline-church alright, thanks for the help.
gauthampamu (Wed, 07 Jun 2017 19:24:06 GMT):
I have some questions on securing the REST endpoint. https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html It explains that you can add identities to the Wallet but it is not clear how it will provide private wallet for each client. Its explains how you can add identities to the wallet but it is not clear how or when you would add the identity. Is this article just explaining how to add security so that only authenticated users in the case of the article with github users to process the request and you are changing the identity used by the rest endpoint after it is started by using the REST API to change the default identity.
sstone1 (Wed, 07 Jun 2017 19:33:38 GMT):
@gauthampamu each authenticated user gets their own private wallet. only an authenticated user can access a wallet, and an authenticated user can only access their wallet.
sstone1 (Wed, 07 Jun 2017 19:33:52 GMT):
in order for an authenticated user to make a request to the blockchain, they must add an identity to their wallet.
gauthampamu (Wed, 07 Jun 2017 19:34:09 GMT):
ok
gauthampamu (Wed, 07 Jun 2017 19:34:38 GMT):
Because they use it..they have to add the identity to the wallet.
gauthampamu (Wed, 07 Jun 2017 19:34:48 GMT):
I meant before they use it.. .
sstone1 (Wed, 07 Jun 2017 19:34:52 GMT):
correct
sstone1 (Wed, 07 Jun 2017 19:35:46 GMT):
all of the identities (enrollment ID, secret, certificate) are stored in the wallet by the REST server; that data is persisted in the specified data source (the docs use mongo as an example)
gauthampamu (Wed, 07 Jun 2017 19:37:46 GMT):
If you are using the REST endpoint from the nodejs application. How would you authenticate with it, can you pass the credentials. Lets say the web application is configured with oauth and it using the bluemix sso service.
gauthampamu (Wed, 07 Jun 2017 19:39:34 GMT):
It would be helpful if you can share a sample web application that connects to the secure REST endpoint. Slight variation of the existing sample. https://hyperledger.github.io/composer/applications/subscribing-to-events.html
gauthampamu (Wed, 07 Jun 2017 19:39:45 GMT):
I meant....
gauthampamu (Wed, 07 Jun 2017 19:40:05 GMT):
https://hyperledger.github.io/composer/tutorials/developer-guide.html
sstone1 (Wed, 07 Jun 2017 19:42:32 GMT):
yeah, we don't have one of those yet... am thinking about it
sstone1 (Wed, 07 Jun 2017 19:42:36 GMT):
there is an API key
sstone1 (Wed, 07 Jun 2017 19:42:38 GMT):
you can't see it
sstone1 (Wed, 07 Jun 2017 19:42:54 GMT):
but when you go through the OAuth flow it creates one and sticks it into a cookie in your web browser
sstone1 (Wed, 07 Jun 2017 19:43:03 GMT):
we need to expose that and make it discoverable
sstone1 (Wed, 07 Jun 2017 19:43:31 GMT):
you can then use it to make REST calls... http://localhost:3000/api/Cars?auth_token=VERY_LONG_ID
sstone1 (Wed, 07 Jun 2017 19:44:04 GMT):
however if you're building a web application, you can just do the OAuth stuff in the browser and then call the REST API from the web browser
sstone1 (Wed, 07 Jun 2017 19:44:13 GMT):
but understand people will want/need that middle tier Node.js app
gauthampamu (Wed, 07 Jun 2017 19:47:04 GMT):
Also to the current rest endpoint server, it is possible to add additional API to that list.
sstone1 (Wed, 07 Jun 2017 19:56:33 GMT):
not with the Composer REST server
sstone1 (Wed, 07 Jun 2017 19:56:44 GMT):
the Composer REST server is just a LoopBack application though
sstone1 (Wed, 07 Jun 2017 19:57:03 GMT):
you can take the Composer LoopBack connector and boot scripts and put them into your own LoopBack application, and add additional APIs into that
torresjeff (Wed, 07 Jun 2017 20:24:10 GMT):
@sstone1 will this example work with HLFv1 on Bluemix? https://github.com/sstone1/sample-bluemix-composer-app
torresjeff (Wed, 07 Jun 2017 20:24:46 GMT):
tried using the object storage service (it worked fine with v0.6), but now I'm getting this error: `Error: Private key missing from key store. Can not establish the signing identity for user admin`
torresjeff (Wed, 07 Jun 2017 20:25:15 GMT):
i uploaded the three files composer generates when trying to deploy a network (-priv, -pub and admin)
sstone1 (Wed, 07 Jun 2017 20:25:21 GMT):
judging by the manifest i think i only tried it on a v0.6
sstone1 (Wed, 07 Jun 2017 20:25:31 GMT):
you uploaded the files into the object store service?
torresjeff (Wed, 07 Jun 2017 20:25:35 GMT):
yeah
sstone1 (Wed, 07 Jun 2017 20:25:58 GMT):
i know someone was having a problem with HLFv1 and the persistent wallet (MongoDB)... i haven't yet investigated it
torresjeff (Wed, 07 Jun 2017 20:26:38 GMT):
is there a temporary solution for this?
sstone1 (Wed, 07 Jun 2017 20:28:40 GMT):
nope
sstone1 (Wed, 07 Jun 2017 20:28:43 GMT):
not that i know of
torresjeff (Wed, 07 Jun 2017 20:31:51 GMT):
@sstone1 question regarding hlfv1, unlike v0.6 now the CAs are not limited to issuing the certificates only once?
sstone1 (Wed, 07 Jun 2017 20:33:38 GMT):
i think the number of times the cert can be issued is controllable
sstone1 (Wed, 07 Jun 2017 20:33:47 GMT):
for the admin cert, it seems to be "unlimited"
sstone1 (Wed, 07 Jun 2017 20:34:10 GMT):
but the admin cert is changing in alpha2/alpha3/beta1 - there's no more enrolment process for it, you have to get the cert files from your fabric administrator
opiepj (Wed, 07 Jun 2017 20:34:58 GMT):
Maybe a dumb question, but what's the point of using enums in our model if my APIs enforce me to return strings anyways
dselman (Wed, 07 Jun 2017 20:34:59 GMT):
(out of band)...
dselman (Wed, 07 Jun 2017 20:35:33 GMT):
@opiepj the validator will check that the string value corresponds to one of your enums.
torresjeff (Wed, 07 Jun 2017 20:35:49 GMT):
ok, thanks!
opiepj (Wed, 07 Jun 2017 20:36:08 GMT):
Can it accept integers as well?
opiepj (Wed, 07 Jun 2017 20:36:13 GMT):
that reflect the enum
dselman (Wed, 07 Jun 2017 20:36:16 GMT):
no
opiepj (Wed, 07 Jun 2017 20:36:34 GMT):
since I'm building out my forms to the specs of the generated interfaces
dselman (Wed, 07 Jun 2017 20:39:07 GMT):
If you are building forms from the model I'd strongly encourage you to use the visitor pattern (we have lots of example model visitors) rather than for loops to build your forms. This will make the form generation more robust to new types in the future.
opiepj (Wed, 07 Jun 2017 20:39:52 GMT):
Do you have a link?
dselman (Wed, 07 Jun 2017 20:40:06 GMT):
yes, one sec
dselman (Wed, 07 Jun 2017 20:40:43 GMT):
https://github.com/hyperledger/composer/blob/master/packages/composer-common/lib/codegen/fromcto/typescript/typescriptvisitor.js
opiepj (Wed, 07 Jun 2017 20:42:20 GMT):
Is there an example on how to use it?
dselman (Wed, 07 Jun 2017 20:42:22 GMT):
How to visit: https://github.com/hyperledger/composer/blob/master/packages/composer-cli/lib/cmds/generator/lib/createCode.js
opiepj (Wed, 07 Jun 2017 20:43:00 GMT):
ah
dselman (Wed, 07 Jun 2017 20:43:45 GMT):
Most (all?) model elements are visitable... so you can call `accept` on a BusinessNetworkDefintion, a ModelManager, a ClassDeclaration etc.
opiepj (Wed, 07 Jun 2017 20:44:15 GMT):
Okay so if I run this class it will generate my models based on my .bna
opiepj (Wed, 07 Jun 2017 20:44:16 GMT):
?
dselman (Wed, 07 Jun 2017 20:45:27 GMT):
You could implement an HTMLFormVisitor which generates HTML markup by visiting the model elements (you just implement the visitor). You would store the markup you generate in the `parameters` for the visitor.
opiepj (Wed, 07 Jun 2017 20:45:29 GMT):
All I'm seeing is `new TypescriptVisitor();`
dselman (Wed, 07 Jun 2017 20:46:00 GMT):
Yes, we have visitors for type script, UML, Go, JSON schema, etc. etc.
dselman (Wed, 07 Jun 2017 20:47:25 GMT):
... we should move this to #composer-dev
torresjeff (Wed, 07 Jun 2017 21:02:19 GMT):
@sstone1 @dselman what is the new container that gets created when deploying a business network
torresjeff (Wed, 07 Jun 2017 21:02:24 GMT):
would that be a channel?
sstone1 (Wed, 07 Jun 2017 21:02:42 GMT):
it's the chaincode
torresjeff (Wed, 07 Jun 2017 21:02:44 GMT):
i can't seem to stop it
torresjeff (Wed, 07 Jun 2017 21:03:07 GMT):
that didn't happen with hlfv0.6 right?
sstone1 (Wed, 07 Jun 2017 21:06:49 GMT):
if you stop it
sstone1 (Wed, 07 Jun 2017 21:06:55 GMT):
and then call the chaincode
sstone1 (Wed, 07 Jun 2017 21:07:00 GMT):
i think the peer will start it again
gauthampamu (Wed, 07 Jun 2017 21:26:29 GMT):
@sstone1 How is the ACL implemented in the composer runtime. Is it done as it is implemented in the golang code in carlease sample application.
sstone1 (Wed, 07 Jun 2017 21:29:52 GMT):
it uses encrypted attributes in v0.6 and the common name in the ecert in v1.0 to identify the current user, and we use that to look up a participant in a participant registry
sstone1 (Wed, 07 Jun 2017 21:30:01 GMT):
that participant is the "current participant"
sstone1 (Wed, 07 Jun 2017 21:30:09 GMT):
all ACLs act on the "current participant"
AccentSandy (Wed, 07 Jun 2017 22:01:42 GMT):
Hi @sstone1 @dselman At what point during the installation process does .hfc-key-store directory gets created? I have been trying to deploy the a protoype network on running hyperledger instance on CentOS linux environment but always get following error. Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
Command failed
AccentSandy (Wed, 07 Jun 2017 22:01:42 GMT):
Hi @sstone1 @dselman At what point during the installation process does .hfc-key-store directory gets created? I have been trying to deploy the a protoype network on running hyperledger instance on CentOS linux environment but always get following error. Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
Command failed. Please guide me in a right direction. Thanks
opiepj (Wed, 07 Jun 2017 22:27:26 GMT):
@sstone1 @dselman are you guys looking for poster child apps?
opiepj (Wed, 07 Jun 2017 22:27:39 GMT):
I got one that has a game in it
jdockter (Wed, 07 Jun 2017 23:18:29 GMT):
@here wondering what the community has done or development team @sstone1 @dselman @caroline-church @davidkel around the initial creation of participant instances and issuing of corresponding identities for a deployed business network...is the expectation there will be some sort of bootstrapped config or transaction that will preload participants...or will that be the responsibility of an admin / regulator to do this AFTER the network is deployed...or something all together different??? The docs talk about an existing participant (https://hyperledger.github.io/composer/managing/participantsandidentities.html) but how did that existing participant get loaded into the network? SO question posted as well - https://stackoverflow.com/questions/44424240/preloading-participant-instances-and-issuing-corresponding-identities
mattalhonte (Thu, 08 Jun 2017 03:44:22 GMT):
Made an Angular app, it can't find the REST server for some reason. Just says "Error: Could not connect to REST server. Please check your configuration details". I can query it from my browser and curl, though
rama_rahul (Thu, 08 Jun 2017 05:10:03 GMT):
For example if I want any transaction to occur automatically without me submitting it (i.e if we take car-auction instance, I want to closebidding after 4 days of starting it). Is it possible in composer?
dselman (Thu, 08 Jun 2017 05:43:23 GMT):
@jdockter we are tracking that requirement under this issue: https://github.com/hyperledger/composer/issues/670
dselman (Thu, 08 Jun 2017 05:43:53 GMT):
We've not made much progress on that yet, but it is clearly necessary.
dselman (Thu, 08 Jun 2017 05:45:21 GMT):
If you have requirements, or thoughts on how to be implement, please add to the issue
dselman (Thu, 08 Jun 2017 05:48:42 GMT):
@rama_rahul blockchains and time-based logic are uncomfortable bed-fellows, due to the need for determinism. However, it would be possible/easy to use an external "cron" process (Node-RED and OpenWhisk both have time-based triggers) to automatically submit a transaction to Composer.
rama_rahul (Thu, 08 Jun 2017 05:57:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eFeekCXpBodKE4m86) @dselman Can you send a link for getting started with this?
dselman (Thu, 08 Jun 2017 05:58:45 GMT):
The easiest way to prototype this would be to use the Node-RED node that @caroline-church created: https://www.npmjs.com/package/node-red-contrib-composer
dselman (Thu, 08 Jun 2017 05:59:06 GMT):
Install Node-RED: https://nodered.org
dselman (Thu, 08 Jun 2017 06:00:08 GMT):
Then add the Composer Node and create a flow that includes an injection node: http://nodered.org/docs/getting-started/first-flow
dselman (Thu, 08 Jun 2017 06:00:35 GMT):
The injection node can create the JSON for a transaction, passing it to the Composer node for submission to Composer.
dselman (Thu, 08 Jun 2017 06:01:35 GMT):
Please share your results -- I'm sure lots of people would be interested to see that.
deepakvparmar (Thu, 08 Jun 2017 06:07:35 GMT):
@dselman : By default, composer-rest-server is providing CRUD REST API for Asset and Participants. If I would like to fetch selective Asset and Participants, then do i need to write Transaction or is there any way we can add REST API into composer-rest-server itself?
dselman (Thu, 08 Jun 2017 06:08:03 GMT):
What do you mean by selective?
deepakvparmar (Thu, 08 Jun 2017 06:09:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bHeJLML4yb6Z5NWaL) @dselman : For example, I would like to fetch Asset based on other query parameter such as asset type or asset status. Currently, I can only fetch asset by assetId only.
rama_rahul (Thu, 08 Jun 2017 06:09:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=i2H7RQuRDeN9vFswR) @dselman Thanks! Will try it.
dselman (Thu, 08 Jun 2017 06:10:01 GMT):
We are working on adding support for complex (content-based) queries. It requires using HLF v1 with CouchDB for the world-state storage.
dselman (Thu, 08 Jun 2017 06:10:14 GMT):
Ultimately those queries will be exposed over REST
dselman (Thu, 08 Jun 2017 06:11:02 GMT):
So, I don't think you'll be able to run those queries efficiently without the underlying support for complex queries.
dselman (Thu, 08 Jun 2017 06:11:29 GMT):
Search for the "query" tag for the issues: https://github.com/hyperledger/composer/issues?q=is%3Aissue+is%3Aopen+label%3Aquery
dselman (Thu, 08 Jun 2017 06:13:09 GMT):
@FenglianXu is leading that work
akshay111meher (Thu, 08 Jun 2017 06:14:07 GMT):
@davidkel @clueless99 @sstone1 thanks for the help...
solved the issue with composer-transactions...
We basically had to annotate each transaction in the .js file... which i was unaware of...
also by declaring the transactions seperately in each .js file, this is solved....
another which we encoutering is
in the transaction, i am trying to get the identifier, it is returning null..
basically,,
var currentParticipant = getCurrentParticipant();
var identifier = currentParticipant.getFullyQualifiedIdentifier();
this gives a error saying *cannot read property 'getFullyQualifiedIdentifier' of null*
dselman (Thu, 08 Jun 2017 06:16:25 GMT):
`getCurrentParticipant()` will only be non-null if an identity has been issued (associated) with the certificate that you use to submit the transaction. My guess is that you are using a generic Fabric cert (admin?) for which no Composer participant association exists. https://hyperledger.github.io/composer/unstable/reference/composer.identity.issue.html
deepakvparmar (Thu, 08 Jun 2017 06:16:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hAMgj6nYAQD49ra4K) @dselman : Thank You dan. I think, I have only one option for now to fetch world-state data based on content query is to fetch all asset or participants and then filter out required data?
dselman (Thu, 08 Jun 2017 06:16:43 GMT):
Correct
dselman (Thu, 08 Jun 2017 06:17:42 GMT):
We're working as fast as we can to get complex queries in, as this is clearly unacceptable for production applications.
deepakvparmar (Thu, 08 Jun 2017 06:18:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Pez2iTDusmtSi7Qbf) @dselman : True, I am desperately waiting for this feature :)
dselman (Thu, 08 Jun 2017 06:19:16 GMT):
:grin:
akshay111meher (Thu, 08 Jun 2017 06:20:34 GMT):
i have issued the identity using '''let businessNetworkConnection = /* TODO: get a business network connection */
businessNetworkConnection.issueIdentity('net.biz.digitalPropertyNetwork.Person#mae@biznet.org', 'maeid1')
.then((result) => {
console.log(`userID = ${result.userID}`);
console.log(`userSecret = ${result.userSecret}`);
});'''
now how do i use this identity
akshay111meher (Thu, 08 Jun 2017 06:21:15 GMT):
@dselman
i have issued the identity using
*let businessNetworkConnection = /* TODO: get a business network connection */
businessNetworkConnection.issueIdentity('net.biz.digitalPropertyNetwork.Person#mae@biznet.org', 'maeid1')
.then((result) => {
console.log(`userID = ${result.userID}`);
console.log(`userSecret = ${result.userSecret}`);
});*
now how do i use this identity
dselman (Thu, 08 Jun 2017 06:26:05 GMT):
You simply create a new business network connection logging in using maeid1 as the userid - if you use this connection to submit a transaction it will use the ECert that was issues by the call to issueIdentity. This ECert has metadata on it that associates it with net.biz.digitalPropertyNetwork.Person#mae
dselman (Thu, 08 Jun 2017 06:26:48 GMT):
you can test this using `composer network ping`
deepakvparmar (Thu, 08 Jun 2017 06:30:37 GMT):
@dselman : Just create one query on SO : https://stackoverflow.com/questions/44428219/recursion-error-while-creating-asset-which-is-having-self-join-relationship
deepakvparmar (Thu, 08 Jun 2017 06:30:37 GMT):
@dselman : Just created one query on SO : https://stackoverflow.com/questions/44428219/recursion-error-while-creating-asset-which-is-having-self-join-relationship
jinyu18 (Thu, 08 Jun 2017 06:33:29 GMT):
Has joined the channel.
dselman (Thu, 08 Jun 2017 06:37:57 GMT):
answered
deepakvparmar (Thu, 08 Jun 2017 06:58:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=69APFuQSXhrMJKa3X) @dselman : Thank You Dan. Created issue: https://github.com/hyperledger/composer/issues/1204
akshay111meher (Thu, 08 Jun 2017 07:09:34 GMT):
@dselman
i am using business network connection using config/default.json file
*{
"gettingstarted": {
"participantId" : "admin",
"participantPwd" :"adminpw",
"businessNetworkIdentifier" : "property-network",
"connectionProfile" :"hlfv1"
}
}*
this is the default one....
now i have changed it to(for creating new connection using using maeid1)
*{
"gettingstarted": {
"participantId" : "maeid1",
"participantPwd" :"OhFFMIZrzTRs",
"businessNetworkIdentifier" : "property-network",
"connectionProfile" :"hlfv1"
}
}*
Error: Could not parse enrollment response [{"success":false,"result":null,"errors":[{"code":400,"message":"Authorization failure"}],"messages":[]}
akshay111meher (Thu, 08 Jun 2017 07:10:11 GMT):
@ [ ](https://chat.hyperledger.org/channel/composer?msg=qMJ5RGPSjBE8qRgDb) @akshay111meher @dselman this is the error which i am encountering....
sstone1 (Thu, 08 Jun 2017 07:16:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5DLtqdhSTZxF4rKke) @opiepj i would be very interested - the more sample apps we have the better
dselman (Thu, 08 Jun 2017 07:22:37 GMT):
@akshay111meher what is the result of doing `composer network ping`? Did you follow these steps? https://hyperledger.github.io/composer/managing/identity-issue.html
akshay111meher (Thu, 08 Jun 2017 07:30:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=byHcAeB68HPpn2ydf) @dselman
Error: {"created":"@1496906980.101809068","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1496906980.101790906","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1496906980.101802691","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
akshay111meher (Thu, 08 Jun 2017 07:32:15 GMT):
@dselman i suppose after issuing the identity there must also be a *#########.pub*, *#########.priv* and *maeid1* key files in the .hfc-key-store folder...(which are not there now)
dselman (Thu, 08 Jun 2017 07:32:34 GMT):
correct
dselman (Thu, 08 Jun 2017 07:33:17 GMT):
seems like your connection profile or runtime is not configured correctly. How did you create them?
davidkel (Thu, 08 Jun 2017 07:44:43 GMT):
@akshay111meher issue identity doesn't create the files in the keystore, that will only occur when you enroll that newly created identity. However it looks like the enrollment failed due to authorisation failure. You could try looking in the logs of the ca to see what error it output, but I suspect it won't give anything useful. Could you recheck your secret just to make sure it's correct
akshay111meher (Thu, 08 Jun 2017 07:56:36 GMT):
@davidkel yes...checked my secret key ....still the same result
akshay111meher (Thu, 08 Jun 2017 07:57:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CyEwKvqp3EacSqxPg) @dselman
i have used the default configuration that has been provided...
{
"type": "hlfv1",
"orderers": [
"grpc://localhost:7050"
],
"ca": "http://localhost:7054",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
},
{
"requestURL": "grpc://localhost:7056",
"eventURL": "grpc://localhost:7058"
}
],
"keyValStore": "/home/akshay/.hfc-key-store",
"channel": "mychannel",
"mspID": "Org1MSP",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}
this one
hariharanatarajan (Thu, 08 Jun 2017 08:45:42 GMT):
@akshay111meher are you trying to create an identity in the CA server by any chance ?
akshay111meher (Thu, 08 Jun 2017 09:04:18 GMT):
@dselman also i suppose this is the way to create new business network connection
var bizNetworkConnection = new BusinessNetworkConnection();
bizNetworkConnection.connect('profile','network identifier','enrollId','enroll secret')
dselman (Thu, 08 Jun 2017 09:18:09 GMT):
There's no point moving onto code until: 1. composer network ping works with your admin id. 2/ You can issue an identity correctly with the command line. 3/ You can ping with your new id correctly
reginbald (Thu, 08 Jun 2017 09:19:43 GMT):
Is it possible to specify a specific port for the composer-rest-server?
deepakvparmar (Thu, 08 Jun 2017 09:22:24 GMT):
@dselman : Created one more simple query on SO : https://stackoverflow.com/questions/44431628/cannot-issue-identity-to-participant-using-hyperldeger-composer
VamsiKrishnak (Thu, 08 Jun 2017 09:27:13 GMT):
Has joined the channel.
AlexJYoungman (Thu, 08 Jun 2017 09:30:32 GMT):
This may be a silly question, so apologies in advance.
I have a network set up, written for the composer (hyperledger v1 not 0.6). I have `models.cto`, `logic.js` and `permissions.acl` files. Along with other stuff to get it running. The network runs fine and I've just written a function in `logic.js` to transfer ownership of an asset in the network.
My question is about peer validation. Is there a specific way I have to write (in the `logic.js` file) peer validation for the transactions I've made. Or is it done automatically by the network? My connection profile specifies two peers, as is the default for a hlfv1 connection profile I believe. So do I have to write any specific code to validate with both these peers or is it handled in the background?
I hope thats clear!
dselman (Thu, 08 Jun 2017 09:34:44 GMT):
It is automatic -- the Fabric will take care of ensuring that both peers run your logic and will check that the side-effects are the same on both peers (consensus). If the side-effects are the same, then the transaction is committed.
AlexJYoungman (Thu, 08 Jun 2017 09:35:39 GMT):
@dselman Awesome thanks! I wondered why I couldn't find any examples anywhere
AlexJYoungman (Thu, 08 Jun 2017 09:40:06 GMT):
Is there any way to view the peer validation? Such as a command line output or log file? (Working for stakeholders who will ideally want to see some proof the validation is taking place)
deepakvparmar (Thu, 08 Jun 2017 09:42:55 GMT):
@dselman : Just replied to your comment on SO as :
True, but I had only created participant and haven't issued identity. then how come CA is giving error that user is already registered? If user is already registered, then how can i get secret for the registered user then?
Vipul_Bajaj (Thu, 08 Jun 2017 09:59:09 GMT):
Is it possible to create a sub asset inside an asset in copmoser
caroline-church (Thu, 08 Jun 2017 10:19:49 GMT):
@Vipul_Bajaj no you can't
AccentSandy (Thu, 08 Jun 2017 11:10:31 GMT):
Hi @caroline-church I have lowered the npm version to 3.10.10 as its recommended in the documentation and i am following the installation guide mentioned here https://hyperledger.github.io/composer/getting-started/development-tools.html
I am trying to setup the hyper ledger instance and deploy the prototype network but getting same error.
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
Command failed
I have also looked on stack overflow answer listed here regarding the same issue https://stackoverflow.com/questions/44374331/hyperledger-composer-failed-to-load-connector-module-composer-connector-hlfv1 but the solution suggesting uninstallation and reinstallation of docker didn’t work either.
Can you please guide me in the right direction? Thanks
caroline-church (Thu, 08 Jun 2017 11:13:04 GMT):
@AccentSandy can you send us the logs of installing composer-cli please
AccentSandy (Thu, 08 Jun 2017 11:14:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kLmYWLqBZYqQYGk2N) @caroline-church Sorry new to this.. Where are the installation logs stored? Are you referring to the logs that i get after running npm install command in the cli? Thanks
caroline-church (Thu, 08 Jun 2017 11:15:24 GMT):
@AccentSandy yes
caroline-church (Thu, 08 Jun 2017 11:15:46 GMT):
so when you run `npm install -g composer-cli` paste the logs from that
AccentSandy (Thu, 08 Jun 2017 11:29:27 GMT):
Hi @caroline-church Here are the logs
AccentSandy (Thu, 08 Jun 2017 11:29:27 GMT):
Hi @caroline-church Here are the logs npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
/usr/bin/composer -> /usr/lib/node_modules/composer-cli/cli.js
> hashtable@2.0.2 install /usr/lib/node_modules/composer-cli/node_modules/hashtable
> node-gyp configure build
AccentSandy (Thu, 08 Jun 2017 11:31:27 GMT):
Message Attachments
akshay111meher (Thu, 08 Jun 2017 11:35:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wkSaaCGh5td4vj2hW) @dselman
1 and 3 are failing....................
only 2 succeeds.
caroline-church (Thu, 08 Jun 2017 12:10:10 GMT):
@AccentSandy that doesn't seem very long
AccentSandy (Thu, 08 Jun 2017 12:11:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WtdMGfvwaBMYPtAbm) Thanks @caroline-church . I have just managed to figure out the issue just 5 mins ago. It appeared the memory on the box was bit low. Once i have up the memory and ran the npm install command again it all worked. Thanks for your help.
caroline-church (Thu, 08 Jun 2017 12:12:31 GMT):
@AccentSandy no problem glad you go it working
AccentSandy (Thu, 08 Jun 2017 12:13:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ay8sbZcRjSPBnS5ao) @caroline-church Let me know if this requires documenting somewhere as devs might run into this situation.
davidkel (Thu, 08 Jun 2017 12:26:17 GMT):
@AccentSandy we have an issue outstanding to determine minimum memory requirements and document them
https://github.com/hyperledger/composer/issues/1104
any info you have found would be welcome in this issue. Thanks
AccentSandy (Thu, 08 Jun 2017 12:35:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kZCSgCZsawrFes4sX) @davidkel Sure i'll update the issue with my findings soon.
jwende (Thu, 08 Jun 2017 12:49:51 GMT):
Has joined the channel.
AlexJYoungman (Thu, 08 Jun 2017 12:57:17 GMT):
Is there any way to view the peer validation/consensus? Such as a command line output or log file? (Working for stakeholders who will ideally want to see some proof the validation is taking place)
dselman (Thu, 08 Jun 2017 12:57:45 GMT):
Not at the Composer level. You could try the #fabric channel.
pascallouis (Thu, 08 Jun 2017 13:16:22 GMT):
Hey @dselman and @sstone1, we've made a decent bit of progress with our composer based app, and are now load testing. What are the sort of characteristics you'd expect? We're seeing the rest server fail (process dies) quite quickly, and wondering what we are doing wrong.
dselman (Thu, 08 Jun 2017 13:19:08 GMT):
Do you have any logs you can share?
pascallouis (Thu, 08 Jun 2017 13:20:27 GMT):
e.g. ```nhandled error for request GET /api/com.loyyal.goyyal.OperationResult?filter=%7B%22where%22%3A%7B%22uuid%22%3A%22e31445f5-fec3-4c6b-b09e-defcb5357a54%22%7D%7D: Error: Error:Failed to execute transaction or query(Timeout expired while executing transaction)
at TransactionContext.transactionContext.on (/Users/pascal/Development/loyyal/goyyal/fabric/node_modules/composer-connector-hlf/lib/hfcutil.js:91:28)
at emitOne (events.js:96:13)
at TransactionContext.emit (events.js:188:7)
at Object.callback (/Users/pascal/Development/loyyal/goyyal/fabric/node_modules/hfc/lib/hfc.js:1807:42)
at /Users/pascal/Development/loyyal/goyyal/fabric/node_modules/grpc/src/node/src/client.js:422:14
```
pascallouis (Thu, 08 Jun 2017 13:20:50 GMT):
or ```Unhandled error for request GET /api/com.loyyal.goyyal.Balance?filter=%7B%22where%22%3A%7B%22uuid%22%3A%22test_uuid%22%7D%7D: Error: started twice without stopping
at Error (native)
at ResponseTime.start (/Users/pascal/Development/loyyal/goyyal/fabric/node_modules/hfc/lib/stats.js:77:19)
at TCertGetter.getTCerts (/Users/pascal/Development/loyyal/goyyal/fabric/node_modules/hfc/lib/hfc.js:1705:35)
at TCertGetter.getNextTCert (/Users/pascal/Development/loyyal/goyyal/fabric/node_modules/hfc/lib/hfc.js:1659:18)
at Member.getNextTCert (/Users/pascal/Development/loyyal/goyyal/fabric/node_modules/hfc/lib/hfc.js:862:28)
at TransactionContext.getMyTCert (/Users/pascal/Development/loyyal/goyyal/fabric/node_modules/hfc/lib/hfc.js:1175:21)
at TransactionContext.query (/Users/pascal/Development/loyyal/goyyal/fabric/node_modules/hfc/lib/hfc.js:1041:14)
at Member.query (/Users/pascal/Development/loyyal/goyyal/fabric/node_modules/hfc/lib/hfc.js:825:12)
at Promise (/Users/pascal/Development/loyyal/goyyal/fabric/node_modules/composer-connector-hlf/lib/hfcutil.js:80:53)
```
genecyber (Thu, 08 Jun 2017 13:25:39 GMT):
restarting fabric-rest doesn't bring it back, that leads me to believe that fabic is broken
genecyber (Thu, 08 Jun 2017 13:25:44 GMT):
v.6 btw
thoduerr (Thu, 08 Jun 2017 13:32:03 GMT):
Has joined the channel.
genecyber (Thu, 08 Jun 2017 13:37:36 GMT):
I'm using k8s and pods that crash auto repair. Here's the log of a restarted fabric rest service ```2017-06-08T13:33:53.147247940Z Discovering types from business network definition ...
2017-06-08T13:33:55.391763161Z Connection fails: Error: Error:Failed to launch chaincode spec(Could not get deployment transaction for aed4cf6e71b430e77daf9daa6c130fa74caab48590ff89cb9d03dea2904973ef - LedgerError - ResourceNotFound: ledger: resource not found)
2017-06-08T13:33:55.391818709Z It will be retried for the next request.
2017-06-08T13:33:55.395339161Z Error: Error:Failed to launch chaincode spec(Could not get deployment transaction for aed4cf6e71b430e77daf9daa6c130fa74caab48590ff89cb9d03dea2904973ef - LedgerError - ResourceNotFound: ledger: resource not found)
2017-06-08T13:33:55.395364213Z at TransactionContext.transactionContext.on (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlf/lib/hfcutil.js:91:28)
2017-06-08T13:33:55.395368713Z at emitOne (events.js:96:13)
2017-06-08T13:33:55.395372357Z at TransactionContext.emit (events.js:188:7)
2017-06-08T13:33:55.395376553Z at Object.callback (/usr/local/lib/node_modules/composer-rest-server/node_modules/hfc/lib/hfc.js:1807:42)
2017-06-08T13:33:55.395379840Z at /usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/src/client.js:422:14```
Fanarito (Thu, 08 Jun 2017 13:57:29 GMT):
do the acl rules not apply to transactions?
I am trying to set a conditional on a transaction, but it always gets denied because I don't have access, even though I should
Fanarito (Thu, 08 Jun 2017 13:57:29 GMT):
do the acl rules not apply to transactions?
I am trying to set a conditional on a transaction, but it always gets denied because I don't have access, even though I should
caroline-church (Thu, 08 Jun 2017 13:58:42 GMT):
Hi @Fanarito Can you show me your acl rules and your model file
Fanarito (Thu, 08 Jun 2017 13:59:07 GMT):
Here is the rule in question
```
rule FarmAnimalLocationChange {
description: "Only the owner of the animal can change the animals location"
participant(p): "com.marel.participant.Store"
operation:CREATE
resource(r): "composer.animal.AnimalLocationChange"
condition: (p.business.getIdentifier() == r.animal.owner.getIdentifier())
action: ALLOW
}
```
Fanarito (Thu, 08 Jun 2017 13:59:07 GMT):
Here is the rule in question
```
rule FarmAnimalLocationChange {
description: "Only the owner of the animal can change the animals location"
participant(p): "com.marel.participant.Farm"
operation:CREATE
resource(r): "composer.animal.AnimalLocationChange"
condition: (p.business.getIdentifier() == r.animal.owner.getIdentifier())
action: ALLOW
}
```
Fanarito (Thu, 08 Jun 2017 13:59:31 GMT):
and the transaction
```
transaction AnimalLocationChange identified by id {
o String id
--> Animal animal
--> Location newLocation
}
```
Fanarito (Thu, 08 Jun 2017 14:00:24 GMT):
the participant has a business
Fanarito (Thu, 08 Jun 2017 14:00:36 GMT):
and the animal has an owner which is a business instance
caroline-church (Thu, 08 Jun 2017 14:01:23 GMT):
can you show me what the `com.marel.participant.Farm` looks like
Fanarito (Thu, 08 Jun 2017 14:01:42 GMT):
```
participant Farm identified by name {
o String name
--> Business business
}
```
caroline-church (Thu, 08 Jun 2017 14:06:53 GMT):
@Fanarito do you have any other acl rules?
caroline-church (Thu, 08 Jun 2017 14:07:40 GMT):
Can you also she me what animal looks like
caroline-church (Thu, 08 Jun 2017 14:07:58 GMT):
Does it work if you change `CREATE` to `ALL`
genecyber (Thu, 08 Jun 2017 14:18:24 GMT):
So... has anyone really hit fabric-rest hard? I can't imagine a situation where no one has thrown a large number of requests at rest/cto yet
Fanarito (Thu, 08 Jun 2017 14:21:33 GMT):
@caroline-church sorry for the late response, but yes I have some others, but this is the first one that has anything to do with the farm participant
Fanarito (Thu, 08 Jun 2017 14:21:48 GMT):
animal asset
```
asset Animal identified by animalId {
o String animalId
o BirthDetails birthDetails
o DeathDetails deathDetails optional
o AnimalType type
--> Location[] history
--> Business owner
}
```
jwende (Thu, 08 Jun 2017 14:21:50 GMT):
Hi - I'm just trying to install a local playground following the documentation.
jwende (Thu, 08 Jun 2017 14:21:50 GMT):
Hi - I'm just trying to install a local playground following the documentation.
Fanarito (Thu, 08 Jun 2017 14:22:02 GMT):
changin it to `ALL` did not work
Fanarito (Thu, 08 Jun 2017 14:22:02 GMT):
changing it to `ALL` did not work
jwende (Thu, 08 Jun 2017 14:22:18 GMT):
# Create the channel on peer0.
docker exec peer0 peer channel create -o orderer0:7050 -c mychannel -f /etc/hyperledger/configtx/mychannel.tx
Error: Error connecting to orderer0:7050 due to grpc: timed out when dialing
Jakeeyturner (Thu, 08 Jun 2017 14:23:19 GMT):
@Fanarito Are you able to provide your business network archive file?
JR (Thu, 08 Jun 2017 14:25:16 GMT):
Has joined the channel.
Fanarito (Thu, 08 Jun 2017 14:27:02 GMT):
@Jakeeyturner https://transfer.sh/3fRrp/animal-network.bna
caroline-church (Thu, 08 Jun 2017 14:27:43 GMT):
@jwende this sounds like a fabric problem, so maybe ask in the fabric channel
jwende (Thu, 08 Jun 2017 14:28:12 GMT):
@caroline-church thanks - will do
davidkel (Thu, 08 Jun 2017 14:40:25 GMT):
@jwende can you describe what you did when trying to install local playground ? ie what command did you run ? and I assume you got the error posted ?
jwende (Thu, 08 Jun 2017 14:41:36 GMT):
I ran : curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash and it downloaded and started the container .
jwende (Thu, 08 Jun 2017 14:44:07 GMT):
simply following the steps from here: https://hyperledger.github.io/composer/getting-started/using-playground-locally.html
davidkel (Thu, 08 Jun 2017 14:48:26 GMT):
@jwende what operating system and level are you running ?
hariharanatarajan (Thu, 08 Jun 2017 14:49:05 GMT):
@caroline-church @davidkel @sstone1 found some clue at last with the problems of unable to connect .. I see the following line the ca server logs ```017/06/08 14:38:35 http: TLS handshake error from 172.21.0.13:40138: tls: oversized record received with length 21536
2017/06/08 14:38:39 http: TLS handshake error from 172.21.0.13:40140: tls: oversized record received with length 21536
``` Does this mean anything
hariharanatarajan (Thu, 08 Jun 2017 14:49:50 GMT):
the IP address (172.21.0.13) is the IP of the composer docker container
davidkel (Thu, 08 Jun 2017 14:50:28 GMT):
@hariharanatarajan can you provide details of your fabric setup ? I assume you are running both fabric, composer and client applications locally ?
jwende (Thu, 08 Jun 2017 14:50:46 GMT):
Ubuntu 16.04 / docker 17.03.1-ce / docker-compose 1.13.0
hariharanatarajan (Thu, 08 Jun 2017 14:52:07 GMT):
``` CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
60ca31537632 hyperledger/composer-playground "pm2-docker compos..." 7 minutes ago Up 7 minutes 0.0.0.0:8080->8080/tcp composer
4a8179c78d3c dev-peer1.org2.example.com-mycc-1.0 "chaincode -peer.a..." 20 minutes ago Up 20 minutes dev-peer1.org2.example.com-mycc-1.0
e00a572b068f dev-peer0.org1.example.com-mycc-1.0 "chaincode -peer.a..." 21 minutes ago Up 21 minutes dev-peer0.org1.example.com-mycc-1.0
f14c85ce0c00 dev-peer0.org2.example.com-mycc-1.0 "chaincode -peer.a..." 21 minutes ago Up 21 minutes dev-peer0.org2.example.com-mycc-1.0
1148ecbf6071 hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 21 minutes ago Up 21 minutes 0.0.0.0:7054->7054/tcp ca_peerOrg1
37969d3674b5 hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 21 minutes ago Up 21 minutes 0.0.0.0:8054->7054/tcp ca_peerOrg2
167b239194a7 hyperledger/fabric-peer "peer node start -..." 21 minutes ago Up 21 minutes 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
7eb661f67b99 hyperledger/fabric-peer "peer node start -..." 21 minutes ago Up 21 minutes 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
a56acba1da76 hyperledger/fabric-orderer "orderer" 21 minutes ago Up 21 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
86655e74d055 hyperledger/fabric-peer "peer node start -..." 21 minutes ago Up 21 minutes 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
596a4899040c hyperledger/fabric-peer "peer node start -..." 21 minutes ago Up 21 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
```
hariharanatarajan (Thu, 08 Jun 2017 14:52:07 GMT):
@sstone1 @caroline-church I have seen the composer presenation . One thing I am not able to figure out is how does the javascript definition of an asset work on the go chain code container ? Is there some place in the code that I can do to follow this ?
```
davidkel (Thu, 08 Jun 2017 14:52:49 GMT):
@jwende how much memory do you have ? can you post the results of a `docker ps` command ?
hariharanatarajan (Thu, 08 Jun 2017 14:52:49 GMT):
Yes i am running locally and when I use the getting started example everything works great ..
hariharanatarajan (Thu, 08 Jun 2017 14:53:39 GMT):
But the moment I switch to my fabric then I seem to have all issues . But curiously the authenticator is the same in both cases
jwende (Thu, 08 Jun 2017 14:54:28 GMT):
@davidkel changed from 8 to 16GB
jwende (Thu, 08 Jun 2017 14:54:34 GMT):
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0b3e6ff2082c hyperledger/fabric-peer:x86_64-1.0.0-alpha "peer node start -..." 11 minutes ago Up 11 minutes 0.0.0.0:7056->7051/tcp, 0.0.0.0:7058->7053/tcp peer1
f53618564103 hyperledger/fabric-peer:x86_64-1.0.0-alpha "peer node start -..." 11 minutes ago Up 11 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0
cfd3de0b5238 hyperledger/fabric-orderer:x86_64-1.0.0-alpha "orderer" 11 minutes ago Up 11 minutes 0.0.0.0:7050->7050/tcp orderer0
06cf667b2f99 hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 11 minutes ago Up 11 minutes 0.0.0.0:7054->7054/tcp ca_peerOrg1
davidkel (Thu, 08 Jun 2017 14:55:43 GMT):
@hariharanatarajan when you say, your fabric, is that local again ? could you post the docker-compose file that launches it. I assume it is still running alpha1 ?
davidkel (Thu, 08 Jun 2017 14:56:55 GMT):
@jwende That certainly should be enough memory. could you try invoking the following command again on the command line
`docker exec peer0 peer channel create -o orderer0:7050 -c mychannel -f /etc/hyperledger/configtx/mychannel.tx`
jwende (Thu, 08 Jun 2017 15:00:00 GMT):
Message Attachments
jwende (Thu, 08 Jun 2017 15:00:38 GMT):
@davidkel see screenshot - no change (+log from orderer0)
davidkel (Thu, 08 Jun 2017 15:02:17 GMT):
@jwende sorry you got the command slightly wrong the file is called 'mychannel.tx' not 'mychannel.txt'
jwende (Thu, 08 Jun 2017 15:03:37 GMT):
arrggh
jwende (Thu, 08 Jun 2017 15:04:09 GMT):
Message Attachments
Percival Lucena (Thu, 08 Jun 2017 15:05:36 GMT):
Hi there. Is there any tutorial on how to deploy a bna file generated by Hyperledger Composer Playground into Bluemix Hyperledger vnext ? I am not sure about how to get connection parameters from Bluemix.
caroline-church (Thu, 08 Jun 2017 15:10:33 GMT):
Hi @Percival Lucena no we don't have any instructions for that yet unfortunately
Jakeeyturner (Thu, 08 Jun 2017 15:15:23 GMT):
@Fanarito After looking into your bna, it seems there is an issue related to this: https://github.com/hyperledger/composer/issues/1007
davidkel (Thu, 08 Jun 2017 15:16:31 GMT):
@jwende could you run `docker network ls`
gauthampamu (Thu, 08 Jun 2017 15:17:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ryBBBut8kAgMRonJu) @sstone1 I want to understand how it is implemented. Can you point me to the source code file where this is implemented.
jwende (Thu, 08 Jun 2017 15:17:10 GMT):
NETWORK ID NAME DRIVER SCOPE
4439749cc0ab bridge bridge local
961958c6ffa9 composer_default bridge local
6e50138e3513 host host local
8c3a6b7722e7 none null local
Fanarito (Thu, 08 Jun 2017 15:17:11 GMT):
@Jakeeyturner alright then, thanks for looking into it
davidkel (Thu, 08 Jun 2017 15:18:41 GMT):
@jwende ok, now can you run `docker network inspect composer_default`
jwende (Thu, 08 Jun 2017 15:19:27 GMT):
dockeradmin@ubuntu:~/playground$ docker network inspect composer_default
[
{
"Name": "composer_default",
"Id": "961958c6ffa999a00e796f66d1af1a673d28ce055166952a16706c8a11f9cdd8",
"Created": "2017-06-08T07:42:29.892545932-07:00",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": [
{
"Subnet": "172.18.0.0/16",
"Gateway": "172.18.0.1"
}
]
},
"Internal": false,
"Attachable": false,
"Containers": {
"06cf667b2f9958267e67bc9aa9f8d94311138d31329553499a9736609ab9470b": {
"Name": "ca_peerOrg1",
"EndpointID": "fec2c91c5c353f2f63e59030735aac246d33b10d2783516ce7b644abcd3c2a8c",
"MacAddress": "02:42:ac:12:00:02",
"IPv4Address": "172.18.0.2/16",
"IPv6Address": ""
},
"0b3e6ff2082c5568f2bfc043d550d2715179bdb544704b2407aba5fd346b4d22": {
"Name": "peer1",
"EndpointID": "ddf91a8e0192ad0213798c2db402e89c408ba03b6796e74b8c31e904ccc505f5",
"MacAddress": "02:42:ac:12:00:05",
"IPv4Address": "172.18.0.5/16",
"IPv6Address": ""
},
"cfd3de0b5238253f8f4e123d14b1fe76548c7c2a86c2303b7c4101fe70ed1849": {
"Name": "orderer0",
"EndpointID": "a3bd24ee683e2a15834dadf1740e5eda04d1b87266e50f50f0b0d4293fc84470",
"MacAddress": "02:42:ac:12:00:03",
"IPv4Address": "172.18.0.3/16",
"IPv6Address": ""
},
"f5361856410309203f9557d2fce50932285b1892eda46c1b87cd6d9a27bcbc62": {
"Name": "peer0",
"EndpointID": "5c653a100c3f6e4098d3d3481826a3a0bb2506ddfb54da4fdff0f50296c687de",
"MacAddress": "02:42:ac:12:00:04",
"IPv4Address": "172.18.0.4/16",
"IPv6Address": ""
}
},
"Options": {},
"Labels": {}
}
]
davidkel (Thu, 08 Jun 2017 15:24:01 GMT):
@jwende that all looks good. peer0 should be able to see orderer0 and connect to it. Maybe there is some issue with docker networking.
davidkel (Thu, 08 Jun 2017 15:24:01 GMT):
@jwende that all looks good. peer0 should be able to see orderer0 and connect to it. Maybe there is some issue with docker networking. Have you just installed docker ?
sstone1 (Thu, 08 Jun 2017 15:27:11 GMT):
@here we have a community call in 35 minutes, does anybody have anything they'd like to talk about or experiences with Composer that they'd like to share with the community? Details are here: https://github.com/hyperledger/composer/wiki/Meeting-8th-June-2017
genecyber (Thu, 08 Jun 2017 15:28:12 GMT):
I'm having fabric rest fall over and would love to understand testing, or patterns, or others who have worked around this type of issue
jwende (Thu, 08 Jun 2017 15:29:19 GMT):
@davidkel I run the linux image in VmWare workstation and I updated the base image using the script from the composer help page
sstone1 (Thu, 08 Jun 2017 15:34:02 GMT):
@genecyber @pascallouis we haven't done a whole lot of performance testing yet... it's still early days on that front
sstone1 (Thu, 08 Jun 2017 15:34:07 GMT):
this error however is familiar `Error: started twice without stopping`
sstone1 (Thu, 08 Jun 2017 15:34:20 GMT):
it's a bug in the Node.js SDK for Fabric v0.6
sstone1 (Thu, 08 Jun 2017 15:34:26 GMT):
i believe it is fixed for Fabric v1.0
genecyber (Thu, 08 Jun 2017 15:34:34 GMT):
ok good to know thanks
genecyber (Thu, 08 Jun 2017 15:35:00 GMT):
sounds like a race
genecyber (Thu, 08 Jun 2017 15:35:40 GMT):
If I wanted to bypass the REST interface and talk directly to fabric, how difficult would it be to set up?
davidkel (Thu, 08 Jun 2017 15:35:50 GMT):
@jwende I'm at a loss to the problem, all I can suggest is rebooting the vm and trying again.
jwende (Thu, 08 Jun 2017 15:36:18 GMT):
@davidkel thx - will try
jwende (Thu, 08 Jun 2017 15:36:32 GMT):
even if it not a windows system :-D
sstone1 (Thu, 08 Jun 2017 15:36:41 GMT):
@genecyber not sure what you mean; the Composer REST server uses the Composer Node.js APIs, which in turn use the Fabric Node.js APIs to communicate with the Fabric over gRPC
JohnWhitton (Thu, 08 Jun 2017 15:47:53 GMT):
@sstone1 and team, is there a composer call again today - I'm sorry I didn't save the link for the call in
Jakeeyturner (Thu, 08 Jun 2017 15:49:51 GMT):
@JohnWhitton Call is in 10 minutes. Details here - https://github.com/hyperledger/composer/wiki/Meeting-8th-June-2017 :)
JohnWhitton (Thu, 08 Jun 2017 15:50:06 GMT):
Thanks @Jakeeyturner
jwende (Thu, 08 Jun 2017 15:51:57 GMT):
@davidkel no change ....
davidkel (Thu, 08 Jun 2017 15:53:58 GMT):
@jwende I'm out of ideas sorry. It sounds like a docker networking problem, and I haven't encountered it before where everything looks as though it has set up correctly. I also run 16.04 but in virtualbox. I haven't tried vmware virtualisation
sstone1 (Thu, 08 Jun 2017 15:54:26 GMT):
@JohnWhitton anything you'd like to see on the agenda?
JohnWhitton (Thu, 08 Jun 2017 16:02:50 GMT):
@sstone1 so I can give an overview of some of what we're working on and some of the challenges we're facing
torresjeff (Thu, 08 Jun 2017 16:53:29 GMT):
is there an ETA for the car lease demo on composer?
dselman (Thu, 08 Jun 2017 17:02:53 GMT):
@torresjeff we are working on v2 of that (called vehicle-lifecycle-demo) -- hope to release that into Open Source for the release next Thurs.
vinitesh (Thu, 08 Jun 2017 17:07:09 GMT):
We are creating 2 channels (C1 and C2).
On C1 we have 3 members(A,B and D) and on C2 we have 2 members (A and D).
member A should have access to all assets in C1 and C2. I have deployed network on both C1 and C2 .There is one asset type on the Network. T1 asset instance is created on C1 and should then be available on C2 for certain changes .
Q1) how does T1 get manifested in C2 without being created again ?
tkuhrt (Thu, 08 Jun 2017 17:19:17 GMT):
Recording from today's meeting: https://www.uberconference.com/getmp3/AMIfv94Lxrn-HkrKCJ6WfJtX_51jH8cUSwBxXI6chTQHHU8QRxaVTbF4IwT9bH49nxgA00z6Hfs5_Lcz50Rua7k82R_oiCSuSOG6iisP9EgXCtyZyu8tjx7myqQx9JPHFU4I2W-Cjy7bZxxE5CB0HX9nT5Qy_dzxvw.mp3 (no video available)
torresjeff (Thu, 08 Jun 2017 17:36:19 GMT):
@dselman, great looking forward to it
dselman (Thu, 08 Jun 2017 18:11:56 GMT):
@vinitesh Each channel has its own private ledger. There is no facility currently to share data across channels.
dselman (Thu, 08 Jun 2017 18:15:11 GMT):
@here Composer 0.7.5 has been released and is now live. https://github.com/hyperledger/composer/releases/tag/v0.7.5
dselman (Thu, 08 Jun 2017 18:15:57 GMT):
We continue to make lots of doc improvements, bug fixes and incremental feature additions.
dselman (Thu, 08 Jun 2017 18:16:17 GMT):
Thank you to everyone that has provided feedback. It's appreciated. Please keep it coming!
torresjeff (Thu, 08 Jun 2017 18:17:12 GMT):
excellent work, congrats guys and girls
vivekraut (Thu, 08 Jun 2017 18:26:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6jeou8ibKCFh8KKff) @Percival Lucena You need a connection profile first. You can create one using the composer playground. To get the connection parameters from bluemix vNext, please refer the service credentials JSON. It will give you CA, peer and orderer URL and pem certificate.
mastersingh24 (Thu, 08 Jun 2017 23:32:05 GMT):
(https://chat.hyperledger.org/channel/fabric-questions?msg=T7zxMPgzXw5FGNtL2) @lbennett
lbennett (Thu, 08 Jun 2017 23:32:05 GMT):
Has joined the channel.
dwakeman (Thu, 08 Jun 2017 23:37:28 GMT):
Has anybody seen this error? I have alpha 1 running, along with composer-rest-server. I can use the GET APIs to retrieve my assets, and I was able to execute transactions for awhile, but now I'm getting a 500 back when I try to execute my transaction:
```{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Failed to receive commit notification for transaction '69b9c5cbd5d213764c15571a3edad3d170649fc794396d0f65c3704deb607d23' within the timeout period",
"stack": "Error: Failed to receive commit notification for transaction '69b9c5cbd5d213764c15571a3edad3d170649fc794396d0f65c3704deb607d23' within the timeout period\n at Timeout.setTimeout (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:812:28)\n at ontimeout (timers.js:386:14)\n at tryOnTimeout (timers.js:250:5)\n at Timer.listOnTimeout (timers.js:214:5)"
}
}```
butch.g (Fri, 09 Jun 2017 01:56:36 GMT):
Has joined the channel.
dselman (Fri, 09 Jun 2017 05:20:41 GMT):
@lbennett Composer TP functions are restricted to using ES5 JavaScript, which does not have `const`.
dselman (Fri, 09 Jun 2017 05:20:55 GMT):
We added parser validation for this recently
dselman (Fri, 09 Jun 2017 05:21:31 GMT):
@dwakeman could be related to a chaincode error -- do you have any logs in the chaincode container?
YuRuan (Fri, 09 Jun 2017 09:19:06 GMT):
Has joined the channel.
IanSparkes (Fri, 09 Jun 2017 10:04:04 GMT):
Has joined the channel.
SanketPanchamia (Fri, 09 Jun 2017 10:15:03 GMT):
Does the latest version of Composer support creation of multiple channels? If so, can someone point to some document on the same? Thanks in advance
davidkel (Fri, 09 Jun 2017 10:20:38 GMT):
@SanketPanchamia Composer doesn't provide any operational facilities for fabric and no plan to do so, it expects the fabric to be set up and configured already as required. You might want to try the hyperledger fabric documentation to look at how to set up your own specific fabric environment.
MeenakshiSingh (Fri, 09 Jun 2017 11:06:45 GMT):
Hi.. I was trying to run the vehicle-lifecycle-network on composer. While deploying I am getting this error `ubuntu@ip-172-31-20-215:~/vehicle-lifecycle-network/dist$ composer network deploy -a vehicle-lifecycle-network.bna -p hlfv1 -i admin -s adminpw
Deploying business network from archive: vehicle-lifecycle-network.bna
Business network definition:
Identifier: vehicle-lifecycle-network@0.0.9
Description: Vehicle Lifecycle Network
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
Command failed
`
vinitesh (Fri, 09 Jun 2017 11:23:12 GMT):
What is the relationship between assets created in a composer network to the assets in fabric chaincode?
davidkel (Fri, 09 Jun 2017 11:23:48 GMT):
@MeenakshiSingh can you provide some info about your environment please. OS version, node version, npm version, docker version, amount of memory your machine has ?
Fanarito (Fri, 09 Jun 2017 13:24:44 GMT):
there seems to be a bug in either the composer rest connector or the composer client registry. When I try to resolve relationships using the rest api it resolves relationships that are not arrays fine, but when it tries to resolve relationships that are arrays it returns the string `"[object Object]"`
Fanarito (Fri, 09 Jun 2017 13:26:12 GMT):
the weird thing is though, that it only returns `"[object Object]"` on top level relationships, it works fine when there are multiple levels of relationships
MeenakshiSingh (Fri, 09 Jun 2017 13:34:29 GMT):
@davidkel Yes..sure. My OS is Ubuntu 16.04 LTS, node version: 6.10.3 npm version: 3.10.0 Docker version 17.03.1-ce, build c6d412e and I am running this on a t2 micro instance on AWS (1 vCPU and 1GiB memory)
davidkel (Fri, 09 Jun 2017 13:43:40 GMT):
@MeenakshiSingh sorry, you need more memory you need 4Gb to run composer and a local hyperledger fabric
MeenakshiSingh (Fri, 09 Jun 2017 13:44:54 GMT):
ok..thanks a lot
jdockter (Fri, 09 Jun 2017 14:20:20 GMT):
Did the page on generating an Angular application get removed?
nkl199 (Fri, 09 Jun 2017 14:27:38 GMT):
Do you mean the item that is at the bottom of this page: https://hyperledger.github.io/composer/tutorials/developer-guide.html
Jakeeyturner (Fri, 09 Jun 2017 14:47:20 GMT):
@jdockter With the recent docs work, it seems like it's been moved/deleted. Not too sure what's happening on the docs front with it. It still seems to live in the package README though - https://github.com/hyperledger/composer/tree/master/packages/generator-hyperledger-composer
mlau7 (Fri, 09 Jun 2017 14:52:44 GMT):
Has joined the channel.
mlau7 (Fri, 09 Jun 2017 14:55:30 GMT):
When running "npm test" on the tutorial part "Write Unit Tests", I come across the error (mentioned previously) of "The keyword 'const' is reserved".
I looked into the ECMA version and it is 2015. Threads on StackOverflow say to run ECMA version 6. I have tried to replace that value to 6, 7, and 8 as well as 2015, 2016, and 2017. And I still get that error.
mlau7 (Fri, 09 Jun 2017 14:56:08 GMT):
Message Attachments
uber.twin (Fri, 09 Jun 2017 14:59:44 GMT):
Hi, I am looking at the REST POST (Add new Entity) operation response content and it looks like the following:
uber.twin (Fri, 09 Jun 2017 14:59:47 GMT):
``{
"$class": "my.Party",
"identifier": [
null,
null
],
"status": "Active",
}``
uber.twin (Fri, 09 Jun 2017 14:59:47 GMT):
```{
"$class": "my.Party",
"identifier": [
null,
null
],
"status": "Active",
}```
uber.twin (Fri, 09 Jun 2017 15:00:37 GMT):
what would be the reason to have a an array with null values ([null,null]) associated with the identifier field?
uber.twin (Fri, 09 Jun 2017 15:01:28 GMT):
the "identifier" field is a String type
Jakeeyturner (Fri, 09 Jun 2017 15:04:08 GMT):
@uber.twin There is a closed issue here which seems to have addressed that - https://github.com/hyperledger/composer/issues/1048
uber.twin (Fri, 09 Jun 2017 15:05:44 GMT):
alright, thank you
Jakeeyturner (Fri, 09 Jun 2017 15:06:41 GMT):
Fix might just be updating the composer-rest-server to latest :)
dwakeman (Fri, 09 Jun 2017 15:32:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MgevST9or5AeMyuvD) @dselman I did see some errors in the composer-rest-server logs, so I decided to recreate my whole environment. I will look in the chaincode container for logs if I get the error again. Thx!
dwakeman (Fri, 09 Jun 2017 15:43:40 GMT):
I am trying to deploy a business network to fabric, and I am getting the following error:
```Daves-MBP:hackathon dwakeman$ composer network deploy -p kubehlfv1 -a pharma-network@0.5.2.bna -i admin -s adminpw
Deploying business network from archive: pharma-network@0.5.2.bna
Business network definition:
Identifier: pharma-network@0.5.2
Description: Demo network for tracking medications and prescriptions
✖ Deploying business network definition. This may take a minute...
Error: Timeout expired while starting chaincode pharma-network:0.7.5(networkid:nid1,peerid:jdoe,tx:4ff8e694d5a444a76a51b6abe646e15d09d55934a067f512088df86f8178be76)
Command failed
```
I have verified that fabric is running, and I have double-checked my connection profile and believe it has the right hostnames and ports (was getting a connection failed type message before when they were wrong), but I'm not sure where to look for errors. Any help or pointers would be greatly appreciated. Did a search on the channel but didn't find anything yet. Will keep looking. Thx!
dwakeman (Fri, 09 Jun 2017 15:43:40 GMT):
I am trying to deploy a business network to fabric, and I am getting the following error:
```Daves-MBP:hackathon dwakeman$ composer network deploy -p kubehlfv1 -a pharma-network@0.5.2.bna -i admin -s adminpw
Deploying business network from archive: pharma-network@0.5.2.bna
Business network definition:
Identifier: pharma-network@0.5.2
Description: Demo network for tracking medications and prescriptions
✖ Deploying business network definition. This may take a minute...
Error: Timeout expired while starting chaincode pharma-network:0.7.5(networkid:nid1,peerid:jdoe,tx:4ff8e694d5a444a76a51b6abe646e15d09d55934a067f512088df86f8178be76)
Command failed
```
I have verified that fabric is running, and I have double-checked my connection profile and believe it has the right hostnames and ports (was getting a connection failed type message before when they were wrong), but I'm not sure where to look for errors. I have deployed this same exact archive to a different fabric environment, so I know it's valid. Any help or pointers would be greatly appreciated. Did a search on the channel but didn't find anything yet. Will keep looking. Thx!
dselman (Fri, 09 Jun 2017 15:55:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jK6vbSKp33GobpzNd) @mlau7 replace `const` with `var`
mlau7 (Fri, 09 Jun 2017 15:56:12 GMT):
so replace all consts with var?
lbennett (Fri, 09 Jun 2017 15:56:24 GMT):
let me give it a try - thanx!
dselman (Fri, 09 Jun 2017 15:57:01 GMT):
@mlau7 or change the eslint rule to allow `const`
dselman (Fri, 09 Jun 2017 15:57:16 GMT):
given that this is a unit test (which won't run on Fabric) that will work
dselman (Fri, 09 Jun 2017 15:57:33 GMT):
Or you can disable rules using comments in your JS code
mlau7 (Fri, 09 Jun 2017 15:58:12 GMT):
@dselman thank you, I will try those options
dselman (Fri, 09 Jun 2017 15:58:34 GMT):
We will fix the tutorial
theophoric (Fri, 09 Jun 2017 16:50:44 GMT):
Message Attachments
theophoric (Fri, 09 Jun 2017 16:52:02 GMT):
per advice from @caroline-church I've tried recycling the containers
theophoric (Fri, 09 Jun 2017 16:54:33 GMT):
Doesn't seem to be any process listening on 7051
dselman (Fri, 09 Jun 2017 17:06:01 GMT):
what OS and docker version? docker-compose version?
davidkel (Fri, 09 Jun 2017 17:06:43 GMT):
@dwakeman there is a timeout in fabric such that if the chaincode doesn't respond in a certain amount of time it fails. Deploying a business network requires chaincode to run an initialisation process. This taking longer than the peer allows for could be the problem although given you are trying to do this in a kubenetes environment it could be something else. There is an environment variable that can control the timeout 'CORE_CHAINCODE_EXECUTETIMEOUT' in milliseconds which you could set. The default if it isn't set is 30000ms
jdockter (Fri, 09 Jun 2017 17:07:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pviSdYkQKzJWqmFEQ) @nkl199 @Jakeeyturner Yes that section and document, thanks
theophoric (Fri, 09 Jun 2017 17:11:23 GMT):
@dselman Docker: 1.12.5, docker-compose: 1.9.0, OS: macOS 10.12.2
vinitesh (Fri, 09 Jun 2017 17:14:13 GMT):
Hello, where can i watch recordings of composer community calls?
lbennett (Fri, 09 Jun 2017 17:23:32 GMT):
That was it @dselman - thanx again!
dselman (Fri, 09 Jun 2017 17:32:34 GMT):
Daniels-MBP-2:composer dselman$ docker --version
Docker version 17.03.1-ce, build c6d412e
dselman (Fri, 09 Jun 2017 17:32:48 GMT):
Daniels-MBP-2:composer dselman$ docker-compose --version
docker-compose version 1.11.2, build dfed245
dselman (Fri, 09 Jun 2017 17:32:57 GMT):
@theophoric can you try with those please
dselman (Fri, 09 Jun 2017 17:33:08 GMT):
(or latest)
theophoric (Fri, 09 Jun 2017 17:33:16 GMT):
will do
theophoric (Fri, 09 Jun 2017 17:35:46 GMT):
no dice..
davidkel (Fri, 09 Jun 2017 17:41:26 GMT):
@theophoric just confirm which docker are you running ? docker for mac or docker toolbox ? can you check to see that docker is listening on the ports defined by your connection profile
hariharanatarajan (Fri, 09 Jun 2017 17:41:43 GMT):
@davidkel @sstone1 One thing I am not able to figure out is how the JS scripts (bna etc. ) is working on the golang chain code container . Is there some place in code that I can follow for figuring this out
dselman (Fri, 09 Jun 2017 17:57:29 GMT):
The magic happens in the `composer-runtime-hlfv1` package
dselman (Fri, 09 Jun 2017 17:58:58 GMT):
The code is pretty involved as it instantiates a Duktape JS VM in Go and then runs the Javascript.
dselman (Fri, 09 Jun 2017 17:59:16 GMT):
Please post implementation related questions to the #composer-dev channel
dwakeman (Fri, 09 Jun 2017 18:01:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LEyLtpX4nCTPyaH46) @davidkel Cool, thx! Is that an environment variable on the machine running composer? Or does it need to be set on the docker containers running fabric?
theophoric (Fri, 09 Jun 2017 18:21:04 GMT):
@dselman running docker toolbox -- and the containers are listening on the specified ports
davidkel (Fri, 09 Jun 2017 18:50:46 GMT):
@theophoric docker toolbox is the legacy docker implementation for mac, they also have docker for mac which may work better. I believe that's what other people use, but not sure.
grice_32 (Fri, 09 Jun 2017 19:00:06 GMT):
Has joined the channel.
CT123 (Fri, 09 Jun 2017 19:55:29 GMT):
Has joined the channel.
kletkeman (Fri, 09 Jun 2017 19:55:58 GMT):
@here With this REST server timeout issue on v0.6 fabrics, has anyone some up with a strategy to keep it running? Something hacky like a cron job that restarts it within the timeout period would be fine. I'm just curious if it can be made usable on v0.6?
kletkeman (Fri, 09 Jun 2017 19:55:58 GMT):
@here With this REST server timeout issue on v0.6 fabrics, has anyone some up with a strategy to keep it running? Something hacky like a cron job that restarts it within the timeout period would be fine. I'm just curious if it can be made usable on v0.6? EDIT: Sorry, this is a Bluemix specific issue.
CT123 (Fri, 09 Jun 2017 19:56:36 GMT):
Trying to get composer playground to run locally and I encounter the following despite testing and successfully running fabric locally:
CT123 (Fri, 09 Jun 2017 19:56:40 GMT):
npm test
> getting-started@1.0.0 test /Users/CT15/temp/HL-COMPOSE/composer-sample-applications-hlfv1/packages/getting-started
> mocha --recursive && npm run bootstrapAssets && npm run listAssets && npm run submitTransaction
module.js:471
throw err;
^
Error: Cannot find module 'chai'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.
dwakeman (Fri, 09 Jun 2017 20:46:53 GMT):
@davidkel Thanks for the info about the timeout environment variable. I updated my kube config file for org1peer1 to include that variable, but it didn't seem to make any difference. I captured the logs from org1peer1, starting right before I submitted the composer network deploy command, and ending right after it timed out. I will upload it. In looking through it, I could swear that all of the [chaincode] entries make it look like things worked, but the command still hangs, and times out later. in the logs there is something about "context canceled".
Ideas? I am using composer 0.7.5 and fabric alpha1. My log file is called biznetworkdeployfailed.log. Thx!
dwakeman (Fri, 09 Jun 2017 20:48:09 GMT):
Message Attachments
davidkel (Fri, 09 Jun 2017 21:02:06 GMT):
@dwakeman guess you set the timeout for 5 minutes ? should have started by then, so not sure what the problem is but for whatever reason the chaincode container maybe isn't communicating back to the peer
dwakeman (Fri, 09 Jun 2017 21:03:36 GMT):
yep, 5 min. I was digging through the entire peer log and found this: `[36m2017-06-09 19:56:01.678 UTC [chaincode] NewChaincodeSupport -> DEBU 01c[0m Setting execute timeout value to 300000 ms`
dwakeman (Fri, 09 Jun 2017 21:04:32 GMT):
perhaps I will install playground locally and see if the problem occurs there.
davidkel (Fri, 09 Jun 2017 21:06:42 GMT):
@dwakeman just out of interest are you using minikube ? Something I was going to play with sometime just never had the time
dwakeman (Fri, 09 Jun 2017 21:08:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Qm9QACQByPWu4i42a) @davidkel I have minikube installed on my mac, but no, this is in bluemix.
I see this in the log:
```[36m2017-06-09 20:16:32.581 UTC [ccprovider] NewCCContext -> DEBU 1020[0m NewCCCC (chain=channel1,chaincode=pharma-network,version=0.7.5,txid=6c24bd3d2f9394f226b15af2d9072746443356edab83f403ed5832dfc689d926,syscc=false,proposal=0xc421acbd10,canname=pharma-network:0.7.5
[36m2017-06-09 20:16:32.600 UTC [chaincode] launchAndWaitForRegister -> DEBU 1024[0m start container: pharma-network:0.7.5(networkid:nid1,peerid:jdoe)
CORE_CHAINCODE_ID_NAME=pharma-network:0.7.5```
I'm guessing that means it launches the chaincode container and waits for it to callback to the peer to register. When that doesn't happen in the timeout period the deploy command fails. Is that relatively close?
davidkel (Fri, 09 Jun 2017 21:10:11 GMT):
@dwakeman another cause of that is that the chaincode container dies unexpectedly. For example if it runs out of memory. You would need to get someone in bluemix to help you if determine if that is the case.
davidkel (Fri, 09 Jun 2017 21:10:11 GMT):
@dwakeman another possible cause of that is that the chaincode container dies unexpectedly. For example if it runs out of memory. You would need to get someone in bluemix to help you if determine if that is the case.
dwakeman (Fri, 09 Jun 2017 21:11:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DoxnaSStdGn8LsmrR) @davidkel Yep, I think that's what these messages are indicating.
```[36m2017-06-09 20:07:18.115 UTC [chaincode] launchAndWaitForRegister -> DEBU a57[0m stopping due to error while launching Timeout expired while starting chaincode pharma-network:0.7.5(networkid:nid1,peerid:jdoe,tx:b3f755afd0ffd9bb376876e09d3499ea08f66ab1e48ec6e09ba30375f0389f66)
[36m2017-06-09 20:07:18.115 UTC [container] lockContainer -> DEBU a58[0m waiting for container(nid1-jdoe-pharma-network-0.7.5) lock
[36m2017-06-09 20:07:18.115 UTC [container] lockContainer -> DEBU a59[0m got container (nid1-jdoe-pharma-network-0.7.5) lock
[36m2017-06-09 20:07:18.117 UTC [dockercontroller] stopInternal -> DEBU a5a[0m Stop container nid1-jdoe-pharma-network-0.7.5(Container not running: nid1-jdoe-pharma-network-0.7.5)
[36m2017-06-09 20:07:18.119 UTC [dockercontroller] stopInternal -> DEBU a5b[0m Kill container nid1-jdoe-pharma-network-0.7.5 (API error (500): {"message":"Cannot kill container nid1-jdoe-pharma-network-0.7.5: Container 25aa8b51ff91a259c3a8324c76636d0379268f2113ebf71ccbc443fde70b4346 is not running"}
```
okay, thx! I will keep digging.
Mattasher (Fri, 09 Jun 2017 23:30:46 GMT):
Has joined the channel.
Mattasher (Fri, 09 Jun 2017 23:32:38 GMT):
FYI the tutorial https://hyperledger.github.io/composer/tutorials/developer-guide.html mentiones `/lib/logic.js` but the example we are cloning only contains `/lib/sample.js`
nvlasov (Sat, 10 Jun 2017 06:59:05 GMT):
Guys, if anyone is interested, I've tried to deploy vehicle-lifecycle-network sample to Bluemix's v.0.6 service and it didn't work. Considering that just before that I successfully deployed basic-sample-network sample, it seems like there is a problem with deploying large networks. Suspect timeouts to be the cause.
davidkel (Sat, 10 Jun 2017 07:28:22 GMT):
@nvlasov Looks like it got changed recently, many thanks I will raise an issue for the docs to get it changed.
davidkel (Sat, 10 Jun 2017 07:28:22 GMT):
@Mattasher Looks like it got changed recently, many thanks I will raise an issue for the docs to get it changed.
mdmartinez (Sat, 10 Jun 2017 12:20:27 GMT):
Has joined the channel.
wael (Sun, 11 Jun 2017 07:32:11 GMT):
Has joined the channel.
wael (Sun, 11 Jun 2017 07:37:56 GMT):
I did a simple model , and I am trying to make a qurey not for an asset or participant , but for some assets or participants . so I am wondering if there is a way to write a query request for that and not doing it as a transaction (cause query isn't a transaction)?
wael (Sun, 11 Jun 2017 07:37:56 GMT):
I did a simple model , and I am trying to make a query for concept of asset , but this query should return a computed result . so Is there a way to write a query request for that and not doing it as a transaction (cause query isn't a transaction)?
StephaneMery (Sun, 11 Jun 2017 09:23:48 GMT):
trying to list the content of a business network:
> composer network list -n vehicle-lifecycle -p hlfv1 -i admin -s adminpw
✖ List business network vehicle-lifecycle
Received message larger than max (4537344 vs. 4194304)
How can I change this limit?
dselman (Sun, 11 Jun 2017 09:41:23 GMT):
@StephaneMery it looks like Fabric have not yet exposed the underlying gRPC options: https://jira.hyperledger.org/browse/FAB-4193
dselman (Sun, 11 Jun 2017 09:41:51 GMT):
Do you have lots of assets? How did the message get so big?
StephaneMery (Sun, 11 Jun 2017 09:43:40 GMT):
yes, I'm storing binaries -ruleapp archives- in the asset (base64 versions of them)
dselman (Sun, 11 Jun 2017 10:25:00 GMT):
4 MB is quite a lot! :-)
wael (Sun, 11 Jun 2017 11:22:40 GMT):
is there any docs for interacting my own Angular web application with my business network ?
dselman (Sun, 11 Jun 2017 11:32:09 GMT):
You can use `yo` to generate an Angular app from a business network definition. The generated code calls the `composer-rest-server`.
dselman (Sun, 11 Jun 2017 11:32:17 GMT):
https://hyperledger.github.io/composer/tutorials/developer-guide.html
davidkel (Sun, 11 Jun 2017 12:01:48 GMT):
@StephaneMery Support for setting grpc message sizes is coming when we support the beta fabric drop (which hopefully will be this coming week), although you won't be able to set these using playground directly, you will be able to set them directly in the connection profile and you should be able to import that into playground if necessary
jansony1 (Sun, 11 Jun 2017 15:21:24 GMT):
Has joined the channel.
jansony1 (Sun, 11 Jun 2017 15:29:40 GMT):
Hi all:
When i follow the instruction to start up the network, it returns me below error, what happenend?
# Create the channel on peer0.
docker exec peer0 peer channel create -o orderer0:7050 -c mychannel -f /etc/hyperledger/configtx/mychannel.tx
Error: Error connecting to orderer0:7050 due to grpc: timed out when dialin
jansony1 (Sun, 11 Jun 2017 15:31:25 GMT):
BTW, all containers start up successfully
wael (Sun, 11 Jun 2017 15:31:44 GMT):
could I Give permission to some participants to make just some transactions and not all ?
wael (Sun, 11 Jun 2017 15:31:44 GMT):
is it possible give permission to some participants to make just some transactions and not all ?
jansony1 (Sun, 11 Jun 2017 15:32:48 GMT):
sure.
dselman (Sun, 11 Jun 2017 15:39:02 GMT):
@jansony1
dselman (Sun, 11 Jun 2017 15:39:18 GMT):
Not sure -- some sort of networking issues. Did the logs have more detail?
jansony1 (Sun, 11 Jun 2017 15:40:52 GMT):
@dselman
Here it is, the orderer0 container works well, so i guess its from some other reason
Development only script for Hyplerledger Fabric control
Running 'startFabric.sh'
FABRIC_VERSION is set to 'hlfv1'
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
# Grab the current directorydirectory.
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd
dirname "${BASH_SOURCE[0]}"
#
cd "${DIR}"/composer
docker-compose -f "${DIR}"/composer/docker-compose.yml down
Removing network composer_default
docker-compose -f "${DIR}"/composer/docker-compose.yml up -d
Creating network "composer_default" with the default driver
Creating ca_peerOrg1 ...
Creating orderer0 ...
Creating ca_peerOrg1
Creating orderer0 ... done
Creating peer0 ...
Creating peer0 ... done
Creating peer1 ...
Creating peer1 ... done
# wait for Hyperledger Fabric to start
# incase of errors when running later commands, issue export FABRIC_START_TIMEOUT=
jansony1 (Sun, 11 Jun 2017 15:41:40 GMT):
Or do I need update the script so that it use the latest images, like apha2?
dselman (Sun, 11 Jun 2017 15:42:56 GMT):
No, you should not need to update the scripts. Composer 0.7.5 supports Alpha1. You could try `export DEBUG=*` and rerunning, it may give you more detail. What do you see if you run `docker ps -a`?
jansony1 (Sun, 11 Jun 2017 15:45:48 GMT):
@dselman hi
Same wtih docker ps returned
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
937f79820019 hyperledger/fabric-peer:x86_64-1.0.0-alpha "peer node start --pe" About a minute ago Up About a minute 0.0.0.0:7056->7051/tcp, 0.0.0.0:7058->7053/tcp peer1
f222b40ed096 hyperledger/fabric-peer:x86_64-1.0.0-alpha "peer node start --pe" About a minute ago Up About a minute 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0
14372954aa6f hyperledger/fabric-orderer:x86_64-1.0.0-alpha "orderer" About a minute ago Up About a minute 0.0.0.0:7050->7050/tcp orderer0
d231cfe4c23f hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-ser" About a minute ago Up About a minute 0.0.0.0:7054->7054/tcp ca_peerOrg1
dselman (Sun, 11 Jun 2017 15:47:37 GMT):
docker --version ?
dselman (Sun, 11 Jun 2017 15:47:53 GMT):
docker-compose --version ?
jansony1 (Sun, 11 Jun 2017 15:48:51 GMT):
➜ fabric-tools docker --version
Docker version 1.12.1, build 6f9534c
➜ fabric-tools docker-compose --version
docker-compose version 1.13.0, build 1719ceb
jansony1 (Sun, 11 Jun 2017 15:50:10 GMT):
oh, i see. I need upgrade my docker. But is that the cause, or not
jansony1 (Sun, 11 Jun 2017 15:55:18 GMT):
@dselman Thanks anyway, i will try to update it and then see the result
davidkel (Sun, 11 Jun 2017 18:20:02 GMT):
@jansony1 what os are you running ? If it's Mac OS are you using docker toolbox or Docker for Mac? how much memory does your environment have ?
jansony1 (Mon, 12 Jun 2017 02:58:17 GMT):
Hi:
It did caused by my docker version. Thanks
jansony1 (Mon, 12 Jun 2017 03:00:04 GMT):
While, I follow the doc to build up my own business network, it report below error. I cant see where it comes from:
➜ my-network npm install
> my-network@0.0.10 prepublish /Users/johnson.ski/bluemixdemo/fabric_composer/my-network
> mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /Users/johnson.ski/bluemixdemo/fabric_composer/my-network
/Users/johnson.ski/bluemixdemo/fabric_composer/my-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
Error: No registered namespace for type org.acme.sample.SampleTransaction
jansony1 (Mon, 12 Jun 2017 03:01:04 GMT):
As doc told i change the network name and the name in prepublish script to my-network.
jansony1 (Mon, 12 Jun 2017 03:01:45 GMT):
I was curios about why the original org.acme.sample.SampleTransaction still pops up~
dselman (Mon, 12 Jun 2017 04:47:52 GMT):
Did you update the ACL file and script file?
dselman (Mon, 12 Jun 2017 04:48:20 GMT):
What doc are you following?
rama_rahul (Mon, 12 Jun 2017 05:44:53 GMT):
@dselman I tried to submit a transaction through node-RED but I am getting this error. "Error: Deployed chain-code (0.7.4) is incompatible with client (0.7.3)" . How to fix this?
dselman (Mon, 12 Jun 2017 05:47:57 GMT):
You probably just need to reinstall `node-red-contrib-composer` -- its `package.json` is set to pickup the latest version of `composer-client`
dselman (Mon, 12 Jun 2017 05:48:52 GMT):
Message Attachments
dselman (Mon, 12 Jun 2017 05:49:52 GMT):
If you have had a question you've posed answered on StackOverflow please could you mark it as answered. I see quite a lot of answered questions still in the open state, which makes the stats look bad! :-)
dselman (Mon, 12 Jun 2017 05:50:50 GMT):
Reminder, here is the tag to use: https://stackoverflow.com/questions/tagged/hyperledger-composer
balakrishna.devasani (Mon, 12 Jun 2017 07:05:28 GMT):
Has joined the channel.
wael (Mon, 12 Jun 2017 07:12:42 GMT):
Hi, is it possible give permission to some participants to make specific transactions ?
dklesev (Mon, 12 Jun 2017 07:15:17 GMT):
@wael sure
wael (Mon, 12 Jun 2017 07:16:25 GMT):
@dklesev at acl permissions ? is there any docs for that ?
dklesev (Mon, 12 Jun 2017 07:17:35 GMT):
https://hyperledger.github.io/composer/managing/current-participant.html
https://hyperledger.github.io/composer/reference/acl_language.html
wael (Mon, 12 Jun 2017 07:18:31 GMT):
thank you ! great
dklesev (Mon, 12 Jun 2017 07:18:38 GMT):
yw!
wael (Mon, 12 Jun 2017 07:19:53 GMT):
I have another question if you could help me , I am trying to make a query request for concept of asset , but this query should return a computed result . so Is there a way to write a query request for that and not doing it as a transaction (cause query isn't a transaction)?
dklesev (Mon, 12 Jun 2017 07:22:22 GMT):
query support is a work in progress (with composer) as I know
wael (Mon, 12 Jun 2017 07:23:35 GMT):
which means till now it's not possible to do it ?
dklesev (Mon, 12 Jun 2017 07:25:44 GMT):
not yet, but look here https://chat.hyperledger.org/channel/composer-dev?msg=aRTQdhwcJG59AT2yM
wael (Mon, 12 Jun 2017 07:29:03 GMT):
okay , seems good , waiting for it
wael (Mon, 12 Jun 2017 07:29:07 GMT):
thank you
Ismail-Boukili (Mon, 12 Jun 2017 07:56:54 GMT):
Has joined the channel.
Vipul_Bajaj (Mon, 12 Jun 2017 08:31:20 GMT):
How can we traverse all the elements of an array in acl file ?
Vipul_Bajaj (Mon, 12 Jun 2017 08:32:43 GMT):
asset VehicleListing identified by listingId {
o String listingId
o Double reservePrice
o String description
o ListingState state
o Offer[] offers optional
--> Vehicle vehicle
}
I would like to go through all the offers present in listing through acl code.Is it possible?
sachaLiguori (Mon, 12 Jun 2017 08:40:59 GMT):
Has joined the channel.
sachaLiguori (Mon, 12 Jun 2017 08:45:49 GMT):
Hello I'm working on Hyperledger for ExtremeBlue Project and when I launch the script to install local playground I obtain this error: # Create the channel on peer0.
docker exec peer0 peer channel create -o orderer0:7050 -c mychannel -f /etc/hyperledger/configtx/mychannel.tx
rpc error: code = 2 desc = oci runtime error: exec failed: container_linux.go:247: starting container process caused "process_linux.go:83: executing setns process caused \"exit status 16\""
davidkel (Mon, 12 Jun 2017 08:50:29 GMT):
@sachaLiguori what environment are you running in, for example os, memory, virtual setup etc ?
sachaLiguori (Mon, 12 Jun 2017 08:51:18 GMT):
@davidkel Ubuntu xenial, docker 17.03
davidkel (Mon, 12 Jun 2017 08:52:01 GMT):
@sachaLiguori how much memory ?
sachaLiguori (Mon, 12 Jun 2017 08:54:29 GMT):
@davidkel 16Gib total, half free
davidkel (Mon, 12 Jun 2017 08:58:41 GMT):
@sachaLiguori That's one I have never seen before. Looks like docker itself had a problem. I do know there is a 17.03.1 version of docker `Docker version 17.03.1-ce, build c6d412e` if you aren't at that level try upgrading
sachaLiguori (Mon, 12 Jun 2017 09:00:37 GMT):
@davidkel Docker version 17.03.1-ce, build c6d412e is my version
davidkel (Mon, 12 Jun 2017 09:07:48 GMT):
@sachaLiguori well it's definitely a problem with docker. a quick search shows that other people have had similar problems but no obvious cause or resolution.
sachaLiguori (Mon, 12 Jun 2017 09:09:41 GMT):
@davidkel I've remove,purge and reinstall Docker 10min ago
davidkel (Mon, 12 Jun 2017 09:15:36 GMT):
@sachaLiguori do any docker commands work ?
sachaLiguori (Mon, 12 Jun 2017 09:16:21 GMT):
@davidkel all work, I've tried hello-world
davidkel (Mon, 12 Jun 2017 09:18:40 GMT):
@sachaLiguori Sorry can't offer any more suggestions. It's a problem with docker and in order to perhaps understand more you would need to actually debug docker itself.
Vipul_Bajaj (Mon, 12 Jun 2017 09:45:19 GMT):
Can we use nested conditions in ACL file??
uber.twin (Mon, 12 Jun 2017 09:46:49 GMT):
@davidkel sorry to bother, it's not very clear for me what was the resolution for the issue #1106 regarding the returned array type in place of an ID when posting a new entity
sstone1 (Mon, 12 Jun 2017 09:47:06 GMT):
@uber.twin that has been fixed
uber.twin (Mon, 12 Jun 2017 09:47:11 GMT):
The client application is not suppose to specify it and rely on the network to generate it?
sstone1 (Mon, 12 Jun 2017 09:47:43 GMT):
Client applications must specify identifiers for assets and participants, but not transactions
uber.twin (Mon, 12 Jun 2017 09:48:48 GMT):
what updates are necessary in order to get the changes?
sstone1 (Mon, 12 Jun 2017 09:51:13 GMT):
you need to upgrade to v0.7.5
uber.twin (Mon, 12 Jun 2017 09:51:13 GMT):
is it enough to get a new version of the REST server?
sstone1 (Mon, 12 Jun 2017 09:51:19 GMT):
yeah
uber.twin (Mon, 12 Jun 2017 09:52:22 GMT):
So the REST server alone is all what needs to be updated
uber.twin (Mon, 12 Jun 2017 09:52:36 GMT):
ok, thank you
sstone1 (Mon, 12 Jun 2017 09:55:00 GMT):
np
Vipul_Bajaj (Mon, 12 Jun 2017 10:31:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2Kd66GkLWQcBa8eow) @bonen hey bonen did u get any way to perform this as I am also stuck at such req.
dselman (Mon, 12 Jun 2017 11:14:42 GMT):
https://stackoverflow.com/questions/44467609/limit-put-acces-to-a-property-within-an-asset/44491810#44491810
zupan (Mon, 12 Jun 2017 11:18:53 GMT):
Hello, does composer also supports composite keys like Fabric?
Pere-Lluis (Mon, 12 Jun 2017 11:40:49 GMT):
Does anybody know where to find documentation on all parameters an asset, participant, etc can have?
uber.twin (Mon, 12 Jun 2017 12:33:43 GMT):
@sstone1 after I did the REST server update, it fails on startup like this, any ideas?
uber.twin (Mon, 12 Jun 2017 12:33:46 GMT):
Discovering types from business network definition ...
Connection fails: SyntaxError: Unexpected token (30:18)
It will be retried for the next request.
{ SyntaxError: Unexpected token (30:18)
at Parser.pp$4.raise (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:2488:13)
at Parser.pp.unexpected (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:623:8)
at Parser.pp$3.parsePropertyValue (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:2251:15)
at Parser.pp$3.parseObj (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:2197:12)
at Parser.pp$3.parseExprAtom (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:1994:17)
at Parser.pp$3.parseExprSubscripts (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:1872:19)
at Parser.pp$3.parseMaybeUnary (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:1849:17)
at Parser.pp$3.parseExprOps (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:1791:19)
at Parser.pp$3.parseMaybeConditional (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:1774:19)
at Parser.pp$3.parseMaybeAssign (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:1750:19)
at Parser.pp$3.parseMaybeAssign (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:1761:23)
at Parser.pp$3.parseExpression (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:1722:19)
at Parser.pp$1.parseStatement (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:777:45)
at Parser.pp$1.parseTopLevel (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:672:23)
at Parser.parse (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:529:15)
at Object.parse (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server/node_modules/acorn/dist/acorn.js:3378:37)
pos: 518,
loc: Position { line: 30, column: 18 },
raisedAt: 519 }
uber.twin (Mon, 12 Jun 2017 12:35:02 GMT):
maybe the CLI needs be updated also?
nkl199 (Mon, 12 Jun 2017 13:18:12 GMT):
@Pere-Lluis - try https://hyperledger.github.io/composer/reference/cto_language.html
sachaLiguori (Mon, 12 Jun 2017 13:20:07 GMT):
@davidkel I've found a solution, on Ubuntu only v0.6 works
sachaLiguori (Mon, 12 Jun 2017 13:20:40 GMT):
@davidkel curl -sSL https://hyperledger.github.io/composer/install-hlfv0.6.sh | bash
davidkel (Mon, 12 Jun 2017 13:21:30 GMT):
@sachaLiguori other people have had no problems with the v1.0 on ubuntu so strange you are having problems
Jakeeyturner (Mon, 12 Jun 2017 13:46:56 GMT):
@uber.twin Can you paste your TX processor functions?
uber.twin (Mon, 12 Jun 2017 13:47:13 GMT):
@sstone1 after doing the composer-cli update, it won't even build my network anymore:
uber.twin (Mon, 12 Jun 2017 13:47:16 GMT):
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /home/pg/workspace/composer-sample-applications-hlfv1/packages/getting-started/node_modules/my-core-network
/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
SyntaxError: Unexpected token (30:18)
at Parser.pp$4.raise (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:2488:13)
at Parser.pp.unexpected (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:623:8)
at Parser.pp$3.parsePropertyValue (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:2251:15)
at Parser.pp$3.parseObj (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:2197:12)
at Parser.pp$3.parseExprAtom (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:1994:17)
at Parser.pp$3.parseExprSubscripts (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:1872:19)
at Parser.pp$3.parseMaybeUnary (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:1849:17)
at Parser.pp$3.parseExprOps (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:1791:19)
at Parser.pp$3.parseMaybeConditional (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:1774:19)
at Parser.pp$3.parseMaybeAssign (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:1750:19)
nkl199 (Mon, 12 Jun 2017 13:49:32 GMT):
Hi @uber.twin, it is likely that you are using ES6 in your transaction processor functions
uber.twin (Mon, 12 Jun 2017 13:53:06 GMT):
@nkl199 I am not, actually I didn't touch the chaincode(and it was runnable), just made a composer-cli and composer-rest-server update
nkl199 (Mon, 12 Jun 2017 13:53:30 GMT):
can you paste in your TP functions?
uber.twin (Mon, 12 Jun 2017 13:59:13 GMT):
@nkl199 @Jakeeyturner unfortunately not, it's a company project and it's got pretty lengthy
uber.twin (Mon, 12 Jun 2017 13:59:56 GMT):
I'll try to remove all chaincode and see if the data model gets deployed
dselman (Mon, 12 Jun 2017 14:04:39 GMT):
We added addition checking for ES5 compliance in 0.7.5
dselman (Mon, 12 Jun 2017 14:04:39 GMT):
We added additional checking for ES5 compliance in 0.7.5
VimalkumarNair (Mon, 12 Jun 2017 14:20:28 GMT):
Has joined the channel.
uber.twin (Mon, 12 Jun 2017 14:31:02 GMT):
@dselman should it be valid to build a network with no chaincode at all?
uber.twin (Mon, 12 Jun 2017 14:31:36 GMT):
I won't do it for me:
uber.twin (Mon, 12 Jun 2017 14:31:36 GMT):
It won't do it for me:
uber.twin (Mon, 12 Jun 2017 14:31:37 GMT):
TypeError: Path must be a string. Received undefined
at assertPath (path.js:7:11)
at Object.parse (path.js:1494:5)
at /home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:282:35
at Array.forEach (native)
at BusinessNetworkDefinition.toArchive (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:276:20)
at BusinessNetworkDefinition.fromDirectory.then (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/lib/cmds/archive/lib/create.js:91:27)
at process._tickCallback (internal/process/next_tick.js:109:7)
at Module.runMain (module.js:606:11)
at run (bootstrap_node.js:390:7)
at startup (bootstrap_node.js:150:9)
TypeError: Path must be a string. Received undefined
at assertPath (path.js:7:11)
at Object.parse (path.js:1494:5)
at /home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:282:35
at Array.forEach (native)
at BusinessNetworkDefinition.toArchive (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:276:20)
at BusinessNetworkDefinition.fromDirectory.then (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/lib/cmds/archive/lib/create.js:91:27)
at process._tickCallback (internal/process/next_tick.js:109:7)
at Module.runMain (module.js:606:11)
at run (bootstrap_node.js:390:7)
at startup (bootstrap_node.js:150:9)
silliman (Mon, 12 Jun 2017 14:34:22 GMT):
@uber.twin I got that exact same message in Composer 0.7.5 versus it not being a problem in 0.7.4- by simply doing the *npm install* from the composer-sample-application-hlfv1 github repo... now this package has moved from hyperledger to hyperledger-archives on GitHub and I don't see it in the 'official' docs now so I don't know if it is supported any longer. But I am very interested in a workaround- don't have a solution yet- in fact was just about to post here to inquire about it when your message appeared
silliman (Mon, 12 Jun 2017 14:37:24 GMT):
@uber.twin I have to run to an appointment and so will be out of pocket for a couple hours but will check in and happy to provide more details when I get back...but your stack trace is exactly what I got when running the npm install instead the packages/getting-started directory from composer-sample-applications-hlfv1 ... worked fine in Composer 0.7.4 (and earlier)
uber.twin (Mon, 12 Jun 2017 14:46:18 GMT):
@silliman alright, thank you. I am also developing in the context of the composer-sample-applications-hlfv1 environment. Didn't do any kind of update to it, I only updated the global composer-cli and composer-rest-server
packages
jansony1 (Mon, 12 Jun 2017 14:50:13 GMT):
Message Attachments
jansony1 (Mon, 12 Jun 2017 14:50:24 GMT):
Hi:
I was wondering how could the angular app could resolve where hlfv1 and my-network. as above Image told
jansony1 (Mon, 12 Jun 2017 14:50:24 GMT):
Hi:
I was wondering how could the angular app could resolve hlfv1 and my-network and connect to them, as above Image told
dselman (Mon, 12 Jun 2017 15:05:44 GMT):
I don't understand the question.
Jakeeyturner (Mon, 12 Jun 2017 15:12:37 GMT):
@jansony1 The generator connects to the business network using the information from the connection profile you provided
Mattasher (Mon, 12 Jun 2017 15:37:09 GMT):
Looks like the API has changed since this was written: https://hyperledger.github.io/composer/tutorials/developer-guide.html I'm getting the error: ```[RuntimeException]
The "-a" option does not exist``` when I run `composer archive create -a dist/my-network.bna --sourceType dir --sourceName .`
jansony1 (Mon, 12 Jun 2017 15:43:23 GMT):
Thanks @Jakeeyturner @dselman
jansony1 (Mon, 12 Jun 2017 15:43:39 GMT):
thats what i want to konw
jimthematrix (Mon, 12 Jun 2017 16:18:21 GMT):
Has joined the channel.
jimthematrix (Mon, 12 Jun 2017 16:18:54 GMT):
I'd like to call everyone's attention to https://jira.hyperledger.org/browse/FAB-4563, it's not an issue of immediate concern *in my opinion* but if anyone thinks we are making the wrong assumptions for the current SDK's stateful design, please speak up. I've already invited input from the SDK channel, but thought I should broadcast it more broadly
jimthematrix (Mon, 12 Jun 2017 16:18:54 GMT):
I'd like to call everyone's attention to https://jira.hyperledger.org/browse/FAB-4563, it's not an issue of immediate concern *in my opinion* but if anyone thinks we are making the wrong assumptions for the current SDK's stateful design, please speak up. I've already invited input from the SDK channel, but thought I should broadcast it more broadly, especially the Composer team that makes extensive use of the node SDK
jimthematrix (Mon, 12 Jun 2017 16:18:58 GMT):
please make sure to read my comment for the JIRA
jimthematrix (Mon, 12 Jun 2017 16:19:36 GMT):
@sstone1 @davidkel @dselman ^^^
jimthematrix (Mon, 12 Jun 2017 16:22:35 GMT):
Has left the channel.
CT123 (Mon, 12 Jun 2017 17:18:34 GMT):
Hi -- still having issue trying to get composer playground to run -- can anyone please look at the following and help me understand what I'm doing wrong or what's missing? Thanks in advance npm test
> getting-started@1.0.0 test /Users/CT15/temp/HL-COMPOSE/composer-sample-applications-hlfv1/packages/getting-started
> mocha --recursive && npm run bootstrapAssets && npm run listAssets && npm run submitTransaction
module.js:471
throw err;
^
Error: Cannot find module 'chai'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.
davidkel (Mon, 12 Jun 2017 18:29:46 GMT):
@CT123 have you run `npm install` in the getting-started directory ? The test file default.js has tried to load a node module called `chai` but node cannot find it anywhere in it's node path. npm is the tool that is used to download node modules and it looks in the file 'package.json' in the getting-started directory which will declare the dependency on 'chai'
Tigermisu (Mon, 12 Jun 2017 20:03:56 GMT):
Has joined the channel.
Tigermisu (Mon, 12 Jun 2017 20:19:40 GMT):
Hello. I'm following the Hyperledger Composer Developer Tutorial and got stuck in the "Deploy to the running Hyperledger Fabric" section. The execution is failing with a generic error when I execute the first command: `composer network deploy -a my-network.bna -p hlfv1 -i admin -s adminpw`
Tigermisu (Mon, 12 Jun 2017 20:20:38 GMT):
Here's the printed stacktrace:
```
root@XXX:~/Desktop/hyperledger-composer/my-network/dist# composer network deploy -a my-network.bna -p hlfv1 -i admin -s adminpw
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My very first Hyperledger Composer Network
events.js:160
throw er; // Unhandled 'error' event
^
Error: Connect Failed
at ClientDuplexStream._emitStatusIfDone (/usr/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._readsDone (/usr/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:169:8)
at readCallback (/usr/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:229:12)
```
sstone1 (Mon, 12 Jun 2017 20:21:23 GMT):
@Tigermisu that error means that the Fabric is not running or is not accessible
sstone1 (Mon, 12 Jun 2017 20:21:41 GMT):
Can you run `docker ps` and paste the output in here please
CT123 (Mon, 12 Jun 2017 20:21:56 GMT):
@davidkel - thanks, I ran npm install, many errors but these were the last -- I am running the most recent version of npm, so, does any of the below help? Thanks in advance:
getting-started@1.0.0 startHLF: `scripts/start-hyperledger.sh`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 startHLF script 'scripts/start-hyperledger.sh'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! scripts/start-hyperledger.sh
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/CT15/temp/HL-COMPOSE/composer-sample-applications-hlfv1/packages/getting-started/npm-debug.log
npm ERR! Darwin 16.6.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v6.10.3
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! getting-started@1.0.0 postinstall: `scripts/download-hyperledger.sh && scripts/createProfile.sh && npm run startHLF && npm run deployNetwork`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the getting-started@1.0.0 postinstall script 'scripts/download-hyperledger.sh && scripts/createProfile.sh && npm run startHLF && npm run deployNetwork'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the getting-started package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! scripts/download-hyperledger.sh && scripts/createProfile.sh && npm run startHLF && npm run deployNetwork
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs getting-started
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls getting-started
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/CT15/temp/HL-COMPOSE/composer-sample-applications-hlfv1/packages/getting-started/npm-debug.log
CT123 (Mon, 12 Jun 2017 20:22:32 GMT):
also running the most current ver of node.js I could find
Tigermisu (Mon, 12 Jun 2017 20:23:12 GMT):
@sstone1 This is the output from docker ps
```
root@XXX:~/fabric-tools# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
```
Tigermisu (Mon, 12 Jun 2017 20:23:22 GMT):
It seems blank
sstone1 (Mon, 12 Jun 2017 20:23:25 GMT):
ok, well that's not right ;) you should have a whole bunch of containers in there
Tigermisu (Mon, 12 Jun 2017 20:23:54 GMT):
Should I try `./startFabric.sh` in fabric-tools? (According to a previous tutorial)
dwakeman (Mon, 12 Jun 2017 20:24:15 GMT):
Hello, I am trying to deploy a business network using composer, and I am getting this error: `https://www-03.ibm.com/services/learning/ites.wss/zz/en?pageType=page&c=R456739J63564I47`
I'm not sure what image it's looking for. From what I have seen before I think the peer tries to spin up a separate docker image for the chaincode to run, right? Where is the image for that specified? Thanks!
dwakeman (Mon, 12 Jun 2017 20:24:15 GMT):
Hello, I am trying to deploy a business network using composer, and I am getting this error: `Failed to generate platform-specific docker build: Error creating container: no such image`
I'm not sure what image it's looking for. From what I have seen before I think the peer tries to spin up a separate docker image for the chaincode to run, right? Where is the image for that specified? Thanks!
sstone1 (Mon, 12 Jun 2017 20:24:48 GMT):
Yeah, if you cleared up your Fabric environment you should configure it as per: https://hyperledger.github.io/composer/installing/development-tools.html
sstone1 (Mon, 12 Jun 2017 20:25:33 GMT):
@dwakeman it's probably looking for the `hyperledger/fabric-ccenv` image
dwakeman (Mon, 12 Jun 2017 20:31:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=F4MPRoDsseX5Yq839) @sstone1 Thx! Is that specified somewhere in a config file I would have control over, or is it buried in the code? I would have expected it to pull the image if it wasn't already available. I did see some sort of error report about a bug that might be related to this.
sstone1 (Mon, 12 Jun 2017 20:31:43 GMT):
It's a Fabric thing - the Fabric controls which base image is used for building chaincode containers
sstone1 (Mon, 12 Jun 2017 20:32:05 GMT):
It's done using Docker tags - the ccenv image must match the tag of the peer image
sstone1 (Mon, 12 Jun 2017 20:32:36 GMT):
e.g. here's alpha1:
```
hyperledger/fabric-peer x86_64-1.0.0-alpha 784c5d41ac1d 2 months ago 184 MB
hyperledger/fabric-ccenv x86_64-1.0.0-alpha 91792014b61f 2 months ago 1.29 GB
```
and here's alpha2:
```
hyperledger/fabric-ccenv x86_64-1.0.0-alpha2 c984ae2a1936 4 weeks ago 1.29 GB
hyperledger/fabric-peer x86_64-1.0.0-alpha2 23b4aedef57f 4 weeks ago 185 MB
```
dwakeman (Mon, 12 Jun 2017 20:33:50 GMT):
ok. It works locally on my machine, but not in minikube, where I am playing around with kubernetes. I must have done something wrong in there. Okay, thx for the info!
Tigermisu (Mon, 12 Jun 2017 20:38:36 GMT):
@sstone1 Following the configuration again worked, thanks!
sstone1 (Mon, 12 Jun 2017 20:38:41 GMT):
np
Tigermisu (Mon, 12 Jun 2017 20:51:18 GMT):
While trying the REST API I am getting this error, which I also was getting while testing in the Playground. Does it seem like another common mistake?
```
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error: Object with ID 'Asset:com.test.diceGame.DicePlayer' in collection with ID '$sysregistries' does not exist",
"code": 2,
"metadata": {
"_internal_repr": {}
},
"stack": "Error: Error: Object with ID 'Asset:com.test.diceGame.DicePlayer' in collection with ID '$sysregistries' does not exist\n at /usr/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:434:17"
}
}
```
Tigermisu (Mon, 12 Jun 2017 20:53:08 GMT):
This is my `sample.cto`
```
namespace com.test.diceGame
asset DiceSession identified by sessionId {
o String sessionId
--> DicePlayer owner
o Double bankedCoins
}
participant DicePlayer identified by playerId {
o String playerId
o String firstName
o String lastName
o Double coins
}
transaction placeBetTransaction identified by transactionId {
o String transactionId
--> DiceSession session
--> DicePlayer player
o Integer expectedValue
o Double bet
}
event GameEvent identified by eventId {
o String eventId
--> DiceSession session
--> DicePlayer player
o Integer expectedValue
o Integer obtainedValue
o Boolean wonGame
}
```
sstone1 (Mon, 12 Jun 2017 21:09:12 GMT):
@Tigermisu that looks like you've got a getAssetRegistry('com.test.diceGame.DicePlayer') where you need a getParticipantRegistry
Tigermisu (Mon, 12 Jun 2017 21:24:25 GMT):
Yup, that was it. Thanks again!
sstone1 (Mon, 12 Jun 2017 21:24:29 GMT):
np
davidkel (Mon, 12 Jun 2017 21:27:32 GMT):
@CT123 unfortunately the error doesn't give any indication of what happened to the node module download. It seems to indicate there was also a problem with managing the local fabric setup as well.
Tigermisu (Mon, 12 Jun 2017 21:28:48 GMT):
Where can I see the events emitted during the transaction?
sstone1 (Mon, 12 Jun 2017 21:29:05 GMT):
you need to write a Node.js client application using the `composer-client` module from npm
sstone1 (Mon, 12 Jun 2017 21:29:13 GMT):
we are working on adding event notifications to playground
Tigermisu (Mon, 12 Jun 2017 21:29:44 GMT):
Roger, ty.
davidkel (Mon, 12 Jun 2017 21:33:57 GMT):
@CT123 Just noticed that node and npm were installed in /usr/local/bin. This will cause problems as node modules will try to install into directories that only root has write access to which means you have to use sudo and npm doesn't behave well by default under sudo. You should install node under your standard login user, rather than installing it using sudo.
jdockter (Mon, 12 Jun 2017 21:48:35 GMT):
sorry if this is a repeat...can we limit what resources are exposed via the REST server and thus to what is generated as a swagger document?
jdockter (Mon, 12 Jun 2017 21:48:35 GMT):
sorry if this is a repeat...can we limit what resources are exposed via the REST server and thus to what is generated in the swagger document?
Tigermisu (Mon, 12 Jun 2017 21:54:09 GMT):
Any reason on why the `yo hyperledger-composer` command gets stuck attempting to connect?
```
? Do you want to generate a new REST API or connect to an existing REST API?: G
enerate a new REST API
? What port number should the generated REST server run on?: 3000
? Should namespaces be used in the generated REST API: Never use namespaces
About to connect to a running business network
```
It's been there for a while.
Tigermisu (Mon, 12 Jun 2017 21:54:46 GMT):
(`composer-rest-server` does work)
sstone1 (Mon, 12 Jun 2017 21:59:33 GMT):
hit ctrl+c
sstone1 (Mon, 12 Jun 2017 21:59:48 GMT):
you're probably running into: https://github.com/hyperledger/composer/issues/1145
Tigermisu (Mon, 12 Jun 2017 22:07:23 GMT):
Mhm, a permission issue was hanging it. Thanks yet again!
sstone1 (Mon, 12 Jun 2017 22:08:31 GMT):
np
jansony1 (Tue, 13 Jun 2017 01:09:05 GMT):
Message Attachments
jansony1 (Tue, 13 Jun 2017 01:09:07 GMT):
Hi:
From the doc (https://hyperledger.github.io/composer/installing/using-playground-locally.html), i want to install the playground locally and use its web browser model.
While when i choose use this profile, it returns me above error. Any idea?
KevinBai (Tue, 13 Jun 2017 01:25:45 GMT):
can composer-rest-server integrate with fabric 1.0 system by type solo ?
jansony1 (Tue, 13 Jun 2017 01:47:52 GMT):
Do you mean solo of order?
dwakeman (Tue, 13 Jun 2017 03:03:00 GMT):
question about writing a node.js app to connect to fabric..... In the documentation it looks like you specify the name of a connection profile that would presumably be found in the .composer-connection-profiles directory on the machine running the node.js app. Can I skip that and just provide the JSON that is in connection.json directly in my node.js app, as opposed to relying on a file on the filesystem?
dselman (Tue, 13 Jun 2017 07:02:04 GMT):
No, but you can configure Node to use an in-memory file system -- that is what the unit tests do. E.g. https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js
dselman (Tue, 13 Jun 2017 07:02:27 GMT):
You can also set an environment variable that contains your connection profile.
dselman (Tue, 13 Jun 2017 07:05:25 GMT):
@jansony1 how did you get that? Did you try resetting browser local storage, clearing cache etc?
Pere-Lluis (Tue, 13 Jun 2017 07:08:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DHH6X56cyQ7JjfKZt) @nkl199 Thanks!
nkl199 (Tue, 13 Jun 2017 07:40:18 GMT):
you're welcome
natanl (Tue, 13 Jun 2017 08:36:43 GMT):
Has joined the channel.
AlexJYoungman (Tue, 13 Jun 2017 09:12:01 GMT):
Is there any way to persist network data? So when I run the Fabric on Docker and deploy a network and make changes (create assets etc) and then stop the fabric running I lose all the data that was stored. Obviously this isn't ideal for use on a server, if theres any outages we would lose all our information. (apologies if this is the wrong channel)
dselman (Tue, 13 Jun 2017 09:29:42 GMT):
That is an operational concern and falls outside the scope of Composer -- at least as it stands. Fabric is replicating data across peer and storing it on disk, so it is crash-fault-tolerant.
dselman (Tue, 13 Jun 2017 09:29:42 GMT):
That is an operational concern and falls outside the scope of Composer -- at least as it stands. Fabric is replicating data across peers and storing it on disk, so it is crash-fault-tolerant.
xuzhao103389 (Tue, 13 Jun 2017 09:52:23 GMT):
Hi
xuzhao103389 (Tue, 13 Jun 2017 09:52:41 GMT):
is there a composer version that can support fabric V1.0 beta?
xuzhao103389 (Tue, 13 Jun 2017 09:52:50 GMT):
is there any sample code for that?
xuzhao103389 (Tue, 13 Jun 2017 09:52:52 GMT):
thanks
sstone1 (Tue, 13 Jun 2017 09:55:36 GMT):
@xuzhao103389 we are working on this at the moment and hope to release Fabric v1.0 beta support at the end of this week.
xuzhao103389 (Tue, 13 Jun 2017 09:55:47 GMT):
ok thanks
xuzhao103389 (Tue, 13 Jun 2017 09:56:25 GMT):
so can you give me the docs about how to deploy and run sanity tests once you have released?
xuzhao103389 (Tue, 13 Jun 2017 10:02:03 GMT):
I am die to use that:)
indira.kalagara (Tue, 13 Jun 2017 10:02:34 GMT):
@sstone1 Hi Simon, when Transaction does not return any result . Can you please suggest the alternate approach for query like operation ? Get the asset using Asset registry is fine. I am looking for returning a particular value/ values, not simply querying an asset .
dselman (Tue, 13 Jun 2017 10:06:19 GMT):
@xuzhao103389 we're working as fast as we can to get it to you. It will be released on Thursday! :-)
xuzhao103389 (Tue, 13 Jun 2017 10:06:46 GMT):
thanks @dselman can you give me the docs and sample code then ?
xuzhao103389 (Tue, 13 Jun 2017 10:08:10 GMT):
I think the package should include composer CLI , composer REST server and composer playground
wael (Tue, 13 Jun 2017 10:34:54 GMT):
Hi, we have developed an angular 2 application from scratch , and now we are trying to migrate our code to work with hyper-ledger composer. so I have built the business network, but I have to interact with the composer client api and not with the rest server , so Is there any docs for how to interact with composer client api from my developed client api?
wael (Tue, 13 Jun 2017 10:38:30 GMT):
or any examples of how could I interact with it and invoke new transactions and create or update assets/participants
Binay1 (Tue, 13 Jun 2017 10:44:14 GMT):
HI, I was doing the developer guide and I encountered this error while running composer-rest-server :
Binay1 (Tue, 13 Jun 2017 10:44:18 GMT):
Error: Deployed chain-code (0.7.5) is incompatible with client (0.7.4)
at queryChainCode.then (/home/bschawala/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:545:27)
xuzhao103389 (Tue, 13 Jun 2017 10:44:45 GMT):
I used to hit this error as well @Binay1
xuzhao103389 (Tue, 13 Jun 2017 10:44:58 GMT):
you need to use the new version
Binay1 (Tue, 13 Jun 2017 10:46:17 GMT):
So I just need to uninstall and reinstall composer-cli ?
xuzhao103389 (Tue, 13 Jun 2017 10:46:32 GMT):
you can upgrade to 0.7.5
Binay1 (Tue, 13 Jun 2017 10:47:28 GMT):
Thanks
Binay1 (Tue, 13 Jun 2017 11:06:28 GMT):
Message Attachments
dselman (Tue, 13 Jun 2017 11:07:53 GMT):
This means your composer-rest-server is at version 0.7.4 and it is trying to connect to something that was deployed with 0.7.5 version of composer-cli
dselman (Tue, 13 Jun 2017 11:08:20 GMT):
You should npm uninstall -g composer-rest-server and then npm install -g composer-rest-server
Binay1 (Tue, 13 Jun 2017 11:10:12 GMT):
Ok thanks
annbnn (Tue, 13 Jun 2017 11:19:59 GMT):
@dselman Please how to create a Private Chain/Testnet using Hyperledger ?
sstone1 (Tue, 13 Jun 2017 11:20:34 GMT):
@annbnn please ask in the #fabric channel
sstone1 (Tue, 13 Jun 2017 11:21:04 GMT):
Composer is not a tool for creating and managing Fabric networks
annbnn (Tue, 13 Jun 2017 11:22:14 GMT):
@sstone1 Creating and managing Fabric networks, its something doable ?
sstone1 (Tue, 13 Jun 2017 11:23:51 GMT):
Yes, but it is not a Composer problem, it is a Fabric problem. You need to use the Fabric documentation and tools to create and manage a Fabric network.
sstone1 (Tue, 13 Jun 2017 11:24:17 GMT):
You then deploy a Composer business network definition to that Fabric network.
annbnn (Tue, 13 Jun 2017 11:24:48 GMT):
Yes, thats what I would like to do.
Vipul_Bajaj (Tue, 13 Jun 2017 11:34:50 GMT):
can we update many assets simultaneously
wael (Tue, 13 Jun 2017 11:37:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xr9kMizaLNJJFhkjM)
wael (Tue, 13 Jun 2017 11:37:37 GMT):
or any examples of how could I interact with it and invoke new transactions and create or update assets/participants ?
annbnn (Tue, 13 Jun 2017 11:38:44 GMT):
@wael That is exactly what I am looking for.
annbnn (Tue, 13 Jun 2017 11:39:25 GMT):
Did you see that link https://hyperledger.github.io/composer/tutorials/developer-guide.html @wael ?
wael (Tue, 13 Jun 2017 11:40:54 GMT):
@annbnn I hope someone could help with this issue . yes , I saw that link it doesn't say anything about composer client api or how to interact with it
annbnn (Tue, 13 Jun 2017 11:51:07 GMT):
@wael I just found that link: http://hyperledger-fabric.readthedocs.io/en/latest/Setup/Chaincode-setup.html#vagrant
annbnn (Tue, 13 Jun 2017 11:51:14 GMT):
May be it could help.
davidkel (Tue, 13 Jun 2017 12:04:24 GMT):
@wael The various samples found at https://github.com/hyperledger/composer-sample-networks all will have examples of client code to drive composer. Also documentation about writing client applications can be found at
https://hyperledger.github.io/composer/applications/node.html
There is also a reference section for the client api at
https://hyperledger.github.io/composer/jsdoc/index.html and specifically at the client
https://hyperledger.github.io/composer/jsdoc/module-composer-client.html
rama_rahul (Tue, 13 Jun 2017 12:42:29 GMT):
I want to access all the participants and assets from the logic file. I don't know the syntax. Please can someone help me out on that?
zupan (Tue, 13 Jun 2017 12:43:30 GMT):
@rama_rahul if you check this link https://hyperledger.github.io/composer/tutorials/developer-guide.html and go down to the "Update your Access Control Rules"
rama_rahul (Tue, 13 Jun 2017 12:50:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wSQjXA6DmT8Z4Xkca) @zupan Actaully what I meant was that , while writing the method for my sample transaction, I want to run a for loop for through all the participants and update the variables I want. Now the argument for my method will not provide that. Thus I want some method which can fetch me the information of all the participants.
zupan (Tue, 13 Jun 2017 12:50:35 GMT):
I think that I misunderstood you. Do you mean from the transaction logic?
rama_rahul (Tue, 13 Jun 2017 12:50:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ziECv7WREvW3SzHnW) @zupan Yeah
zupan (Tue, 13 Jun 2017 12:51:39 GMT):
For that, I don't have enough experience yet :)
rama_rahul (Tue, 13 Jun 2017 12:51:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2nRogBk3v2kqJvSJN) @zupan Its Okay!
dwakeman (Tue, 13 Jun 2017 13:15:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WsgsZ6xJGfRA8Rrah) @dselman Thx! I found a sample bluemix application that Simon posted awhile back in the channel. It has the sample code I was looking for, which uses the COMPOSER_CONFIG variable. I assume that when that variable is set the BusinessNetworkConnection class uses that info instead of reading from a file, but I will have to look closer at the code in the sample, and at the test code you sent me. I think I am good, thx!
dselman (Tue, 13 Jun 2017 13:19:15 GMT):
:thumbsup:
Binay1 (Tue, 13 Jun 2017 13:31:47 GMT):
I'm still new to this stuff and wanted to ask how I could deploy a composer application across a network of computers
sstone1 (Tue, 13 Jun 2017 13:51:04 GMT):
@Binay1 you first need to deploy a Fabric Blockchain network across the network of computers. You can then deploy the Composer application to that Fabric Blockchain network. Composer does not include any tools for deploying Fabric Blockchain networks - for that, you need to consult the Fabric documentation.
gen_el (Tue, 13 Jun 2017 13:56:29 GMT):
Has joined the channel.
stuartarnell (Tue, 13 Jun 2017 14:21:06 GMT):
Has joined the channel.
stuartarnell (Tue, 13 Jun 2017 14:23:06 GMT):
Hi - new to the chat so hope this is OK. I have a composer application running locally (running on a mac) and would like to create a restful interface. However, when I run composer-rest-server it fails - but there are no real clues ... I just get
To restart the REST server using the same options, issue the following command:
composer-rest-server -p hlfabric -n world-event -i WebAppAdmin -s DJY27pEnl16d -N never
Discovering types from business network definition ...
Connection fails: ENOTSUP
Any idea what it may be failing to find?
silliman (Tue, 13 Jun 2017 14:46:21 GMT):
yesterday's unstable versions worked, today's unstable version gives me (and others) ....
# wait for Hyperledger Fabric to start
# incase of errors when running later commands, increase this value and restart
sleep 15
node create-channel.js
using non-tls connection
/data/linux1/composer-sample-applications-hlfv1/packages/getting-started/hlfv1/create-channel.js:45
let chain = client.newChain(channel);
^
TypeError: client.newChain is not a function
at Object.
sstone1 (Tue, 13 Jun 2017 14:48:01 GMT):
@silliman the changes for v1.0 beta 1 have gone in and they only work against v1.0 beta 1
silliman (Tue, 13 Jun 2017 14:49:13 GMT):
ok... so if I want to use unstable I use v1.0 beta 1 ... will Thursday's release be called 0.7.6 or 0.8.x ? will 0.7.5. be the last release to run on alpha1 ?
sstone1 (Tue, 13 Jun 2017 15:02:27 GMT):
0.8.0
silliman (Tue, 13 Jun 2017 15:04:26 GMT):
@sstone1 Hi Simon, I just tried the lazy way of trying to use the Fabric beta images with the composer-sample-applications-hlfv1 package... my orderer crashed... I suspect, based on our private conversation yesterday, that there are env varables or other setup steps necessary for beta that aren't in the docker-compose.yml and scripts in composer-sample-applications-hlfv1, and never will be, so that now is the time to switch to composer-sample-applications along with the fabric setup that is in the composer-tools repo? Am I right?
gkd720 (Tue, 13 Jun 2017 15:11:43 GMT):
Has joined the channel.
dselman (Tue, 13 Jun 2017 15:12:11 GMT):
We need to keep focused on getting the stable v0.8.0 release out for Thursday... we have limited cycles to help people picking up the unstable builds.
dselman (Tue, 13 Jun 2017 15:12:35 GMT):
Plus it is likely to confuse people
mahoney1 (Tue, 13 Jun 2017 15:49:03 GMT):
hi everyone, does anybody have anything they'd like to talk about - or experiences with Composer that they'd like to share with the community? Looking at building an agenda for this Thursday's Community Call -> https://github.com/hyperledger/composer/wiki/Meeting-15th-June-2017 (presently looking at discussing Query support, HLF v1 beta support, Vehicle Lifecycle demo status) - look fwd to hearing from you, cheers Paul O'Mahony (Community Champion)
dselman (Tue, 13 Jun 2017 15:51:05 GMT):
@here ^^^^ get involved -- we'd love to here about what you are building, your experience, things you like, things you don't like.
dhwang (Tue, 13 Jun 2017 16:57:47 GMT):
Has joined the channel.
hariharanatarajan (Tue, 13 Jun 2017 17:10:52 GMT):
@dselman I am modifying the fabric-composer example to extend to my own problem statement etc. We got the basic version working . Now I want to refactor names etc. to reflect my problem domain . But this is incredibly difficult to do . I am using Visual Studio Code . I remember reading about plugins for Atom / VS Code etc. Will that solve my problem .. @akshay111meher
dwakeman (Tue, 13 Jun 2017 17:41:58 GMT):
@hariharanatarajan if you are talking about changing the namespace to something other than `org.acme.sample`, and renaming the files to match, then you can export the archive from the playground, rename it to a zip file, extract it to a folder and use vscode to do all of that. When you're done, use the composer archive command to recreate a BNA file that you can import back into composer playground. There may be a better way, but that's what I've done with my demos.
torresjeff (Tue, 13 Jun 2017 18:22:41 GMT):
@dselman is there any way to see who submitted a transaction, or do i have to add a `participant` property to my transactions and assign it the participant who submitted the transaction?
sstone1 (Tue, 13 Jun 2017 18:31:38 GMT):
@torresjeff not yet, but the historian will add this functionality
sstone1 (Tue, 13 Jun 2017 18:32:01 GMT):
until then - you need to add a `participant` property and set it using `getCurrentParticipant()`
torresjeff (Tue, 13 Jun 2017 18:32:30 GMT):
so should i call `getCurrentParticipant()` from the TP function?
torresjeff (Tue, 13 Jun 2017 18:32:30 GMT):
so i should call `getCurrentParticipant()` from the TP function?
torresjeff (Tue, 13 Jun 2017 18:34:30 GMT):
I'm guessing that uses the credentials you specified when you connect to the business network to identify the participant?
sstone1 (Tue, 13 Jun 2017 18:48:25 GMT):
yeah
chrisg (Tue, 13 Jun 2017 20:32:11 GMT):
Has joined the channel.
dwakeman (Tue, 13 Jun 2017 21:27:43 GMT):
Okay, gotta bring something up that I thought was only related to v0.6.1.... I have a business network deployed to fabric v1 alpha. I fired up composer-rest-server and it worked, until I used an invalid asset ID and it crashed. When I went to restart is using the command it generated when it started the first time, and I get the error below. I can make it go away by blowing away the content in the directory I specified as the KeyValStore in the connection profile, but that seems wrong. I ran the same command twice with the exact same credentials? Why can it reuse the identity it created after the first run? ```Daves-MBP:node-red-docker dwakeman$ composer-rest-server -p kubehlfv1 -n marbles-network -i admin -s adminpw -N always
Discovering types from business network definition ...
Connection fails: Error: Private key missing from key store. Can not establish the signing identity for user admin
It will be retried for the next request.
Error: Private key missing from key store. Can not establish the signing identity for user admin
at _mspImpl.cryptoSuite.importKey.then.then (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/User.js:260:11)
Daves-MBP:node-red-docker dwakeman$
```
dwakeman (Tue, 13 Jun 2017 21:27:43 GMT):
Okay, gotta bring something up that I thought was only related to v0.6.1.... I have a business network deployed to fabric v1 alpha. I fired up composer-rest-server and it worked, until I used an invalid asset ID and it crashed. When I went to restart is using the command it generated when it started the first time, and I get the error below. I can make it go away by blowing away the content in the directory I specified as the KeyValStore in the connection profile, but that seems wrong. I ran the same command twice with the exact same credentials? Why can't it reuse the identity it created after the first run? ```Daves-MBP:node-red-docker dwakeman$ composer-rest-server -p kubehlfv1 -n marbles-network -i admin -s adminpw -N always
Discovering types from business network definition ...
Connection fails: Error: Private key missing from key store. Can not establish the signing identity for user admin
It will be retried for the next request.
Error: Private key missing from key store. Can not establish the signing identity for user admin
at _mspImpl.cryptoSuite.importKey.then.then (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/User.js:260:11)
Daves-MBP:node-red-docker dwakeman$
```
Tigermisu (Tue, 13 Jun 2017 21:58:58 GMT):
Is there a way I could 'log' a value to console produced by a transaction in the Composer Playground, or otherwise see the result of a function called inside the transaction?
Tigermisu (Tue, 13 Jun 2017 22:22:16 GMT):
Also, I have a question regarding the inner working of a blockchain. If I have a function that returns a random number `Math.random()` , how is it that this function returns the same number in every peer that executes it? (It is my understanding that every peer much reach consensus) Same about other contextual functions, i.e. `new Date().getTime()`
dklesev (Tue, 13 Jun 2017 22:51:09 GMT):
@Tigermisu just use console.log('this will be printed to console')
if you use random values you will unlikely get consensus between your peers. better solution is to use random values outside of transaction logic (because every transaction has to be deterministic)
Tigermisu (Tue, 13 Jun 2017 22:54:19 GMT):
Oh, I see. I thought it was handled internally somehow.
Tigermisu (Tue, 13 Jun 2017 22:54:22 GMT):
Thank you.
dklesev (Tue, 13 Jun 2017 23:08:05 GMT):
yw!
dwakeman (Tue, 13 Jun 2017 23:41:57 GMT):
Has anybody worked with the node red nodes to subscribe to events emitted from my transaction processor functions? I tried to add an event definition to Marbles, and updated the TradeMarble transaction to emit the event. I have a node red flow that says it is connected to my fabric instance running locally. I also have composer-rest-server up and running, and am using that to execute the TradeMarble transaction. Everything seems to be working, i.e. I see the owner of the marble change after I execute the transaction, but I get nothing in my node red flow. I have the composer in node wired to a debug node. I expect to see debug statements, but I get nothing. I have composer 0.7.5 installed and I am using hlfv1 alpha1.
```event MarbleTradedEvent identified by eventId {
o String eventId
o String marbleId
o String marbleSize
o String marbleColor
}```
``` function tradeMarble(tradeMarble) {
tradeMarble.marble.owner = tradeMarble.newOwner;
var factory = getFactory();
var marbleTraded = factory.newEvent('org.hyperledger_composer.marbles', 'MarbleTradedEvent');
emit(marbleTraded);
return getAssetRegistry('org.hyperledger_composer.marbles.Marble')
.then(function (assetRegistry) {
return assetRegistry.update(tradeMarble.marble);
});
}```
Anybody have a working example?
jansony1 (Wed, 14 Jun 2017 01:54:56 GMT):
@dselman Thanks it did caused by browser's cache。
deepakvparmar (Wed, 14 Jun 2017 05:41:17 GMT):
@sstone1 : Good Morning, Last time when we talked you were middle of preparing architecture document of fabric-composer, which you did share, also planned to share some more ppt. Kindly share latest ppt document if you have.
sstone1 (Wed, 14 Jun 2017 05:42:33 GMT):
https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture
sstone1 (Wed, 14 Jun 2017 05:42:44 GMT):
That is the latest architecture presentation.
sstone1 (Wed, 14 Jun 2017 05:49:16 GMT):
Please also note that it is called Hyperledger Composer, not Fabric Composer!
deepakvparmar (Wed, 14 Jun 2017 05:57:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AQq6tt9Z8nfbHC3jX) @sstone1 : Oh man... I have made mistake again... will not repeat again for sure stone :)
sstone1 (Wed, 14 Jun 2017 05:57:16 GMT):
:) thanks
hariharanatarajan (Wed, 14 Jun 2017 06:38:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CRaTQyaTkZrcDwfaM) @dwakeman ok. I am also looking at renaming variables / functions etc. I am expecting a typical IDE will allow this to be done without too much effort if configured properly
larsf (Wed, 14 Jun 2017 06:58:04 GMT):
Has joined the channel.
vladyslavmunin (Wed, 14 Jun 2017 07:38:36 GMT):
Has joined the channel.
vladyslavmunin (Wed, 14 Jun 2017 07:42:05 GMT):
hi , I'm new in hyperledger ,so I want to ask : anybody works with hl composer on windows ? this is possible ? Fabric works fine, but official docs say that hyperledger composer doesn't support windows platform
tomveugelers (Wed, 14 Jun 2017 07:55:14 GMT):
Has joined the channel.
jansony1 (Wed, 14 Jun 2017 07:57:03 GMT):
Hi
I wonder doest hyperledger-composer support latest fabric beta?
sstone1 (Wed, 14 Jun 2017 07:58:20 GMT):
@jansony1 not until the release later this week
sstone1 (Wed, 14 Jun 2017 07:58:33 GMT):
the current release of composer supports fabric v1.0 alpha1
jansony1 (Wed, 14 Jun 2017 07:59:03 GMT):
THanks~ I will try it week later~
akshay111meher (Wed, 14 Jun 2017 08:11:55 GMT):
how to i do equivalent of stub.setEvent('eventName',data) in fabric-composer
sstone1 (Wed, 14 Jun 2017 08:15:24 GMT):
@akshay111meher https://hyperledger.github.io/composer/business-network/publishing-events.html
sstone1 (Wed, 14 Jun 2017 08:15:44 GMT):
also, it's hyperledger composer or composer - the fabric-composer name is no longer used ;)
akshay111meher (Wed, 14 Jun 2017 08:17:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kXa9eRujHAmuH8Jag) @sstone1 thanks :-)
dselman (Wed, 14 Jun 2017 08:32:40 GMT):
@dwakeman -- I know @caroline-church has demoed that. She may have a flow she can share.
dselman (Wed, 14 Jun 2017 08:34:48 GMT):
@hariharanatarajan we don't have any tooling to automatically refactor/rename model elements at present.
dselman (Wed, 14 Jun 2017 08:35:12 GMT):
The error messages should guide you - if they do not, then we have an issue. ;-)
caroline-church (Wed, 14 Jun 2017 08:36:48 GMT):
Hi @dwakeman i assume you are using node red locally and not on bluemix? do you have more than one business network running could the node-red node be connected to a different business network than you have marbles deployed to? Have you tried submitting the transaction from the node-red flow to check if that works?
rama_rahul (Wed, 14 Jun 2017 09:35:50 GMT):
How to know what all methods are present in factory?
dselman (Wed, 14 Jun 2017 09:42:11 GMT):
JSDoc: https://hyperledger.github.io/composer/unstable/jsdoc/module-composer-common.Factory.html
dselman (Wed, 14 Jun 2017 09:42:56 GMT):
Look under Docs > Reference > API Documentation: https://hyperledger.github.io/composer/
rama_rahul (Wed, 14 Jun 2017 10:35:41 GMT):
Thanks!
Pere-Lluis (Wed, 14 Jun 2017 11:08:10 GMT):
hey there!
Pere-Lluis (Wed, 14 Jun 2017 11:08:44 GMT):
Does anybody know how to a asset registry in a logic.js?
Pere-Lluis (Wed, 14 Jun 2017 11:09:20 GMT):
I'm trying to check if one asset exists there but I don't find how to access the elements in the registry
caroline-church (Wed, 14 Jun 2017 11:09:44 GMT):
`getAssetRegistry('org.acme.sample.SampleAsset')`
caroline-church (Wed, 14 Jun 2017 11:10:21 GMT):
that returns a promise
caroline-church (Wed, 14 Jun 2017 11:10:42 GMT):
so then you can do `assetRegistry.get('assetId`)`
Pere-Lluis (Wed, 14 Jun 2017 11:10:50 GMT):
so if I want to do a .forEach asset in that registry?
Pere-Lluis (Wed, 14 Jun 2017 11:11:03 GMT):
how should I do it?
caroline-church (Wed, 14 Jun 2017 11:11:46 GMT):
oh you can do `assetRegistry.getAll()`
Pere-Lluis (Wed, 14 Jun 2017 11:13:08 GMT):
okey so it should look like this getAssetRegistry('org.basetis.bonusetis.split')
assetRegistry.getAll().forEach(function(split){
if(split.owner.$identifier==receiver.$identifier){
existeix=true
}
})
Pere-Lluis (Wed, 14 Jun 2017 11:13:19 GMT):
thanks
Pere-Lluis (Wed, 14 Jun 2017 11:13:28 GMT):
I'll try now
Pere-Lluis (Wed, 14 Jun 2017 11:13:33 GMT):
thank you very much!
caroline-church (Wed, 14 Jun 2017 11:13:46 GMT):
yeah something like that
Pere-Lluis (Wed, 14 Jun 2017 11:16:16 GMT):
I'm sorry to keep bothering but I can't get it to work
Pere-Lluis (Wed, 14 Jun 2017 11:16:34 GMT):
when I try the getAll()
Pere-Lluis (Wed, 14 Jun 2017 11:17:04 GMT):
should I do it over getAssetRegistry('org.acme.sample.SampleAsset') ?
Pere-Lluis (Wed, 14 Jun 2017 11:33:14 GMT):
Okey I got it doing:
Pere-Lluis (Wed, 14 Jun 2017 11:33:18 GMT):
return getAssetRegistry('org.basetis.bonusetis.split')
.then(function (assetRegistry) {
// Update the asset in the asset registry.
return assetRegistry.getAll()
.then(function(splits){
splits.forEach(function(split){
if(split.owner.$identifier==receiver.$identifier){
existeix=true
}
})
})
})
Pere-Lluis (Wed, 14 Jun 2017 11:33:37 GMT):
wait
Pere-Lluis (Wed, 14 Jun 2017 11:35:30 GMT):
Message Attachments
Pere-Lluis (Wed, 14 Jun 2017 11:35:47 GMT):
in case somebody has the same doubt
Pere-Lluis (Wed, 14 Jun 2017 11:36:05 GMT):
but if you know a more straightforward way, let me know
caroline-church (Wed, 14 Jun 2017 12:14:47 GMT):
instead of going through them all you could just try a get on the one you want to see if exists
Pere-Lluis (Wed, 14 Jun 2017 12:59:45 GMT):
thanks
Pere-Lluis (Wed, 14 Jun 2017 12:59:57 GMT):
Now I found another problem
Pere-Lluis (Wed, 14 Jun 2017 13:00:09 GMT):
I do try to add a new asset
Pere-Lluis (Wed, 14 Jun 2017 13:00:42 GMT):
Message Attachments
Pere-Lluis (Wed, 14 Jun 2017 13:01:55 GMT):
but the split1 is not being added since the updateAll function throws an error saying Object with ID 'splitID:2' in collection with ID 'Asset:org.basetis.bonusetis.split' does not exist
Pere-Lluis (Wed, 14 Jun 2017 13:02:17 GMT):
(split1 element has ID splitID:2)
dwakeman (Wed, 14 Jun 2017 13:13:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mPibhyvpmsLcnQjSJ) @caroline-church I do have two networks deployed, but I specified the one I wanted on the node. Node red is running locally. I will try to submit a transaction from node red and see if that works. Thanks!
dwakeman (Wed, 14 Jun 2017 13:17:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RhXudKuMtJyawpRET) @hariharanatarajan ah, okay. Technically you can do that in playground, as it does allow you to edit all of that, but you're correct, an IDE like VS Code or ATOM would have more sophisticated refactoring support that would make it easier. You can do that too, just like I described, and when you are all done with everything you can use the `composer archive create` command to create a new bna file to import into playground.
mahesh_rao (Wed, 14 Jun 2017 13:29:52 GMT):
Has joined the channel.
dwakeman (Wed, 14 Jun 2017 13:32:36 GMT):
@caroline-church I tried using the composer-out node to submit a transaction, and that didn't throw an error I could find, but it also didn't work. I used the same JSON I submitted in the rest api explorer as the msg.payload, and verified that I was using a value for newOwner that is different than the current owner of the marble. The owner value does not change.
caroline-church (Wed, 14 Jun 2017 13:45:09 GMT):
@dwakeman can you create assets or retrieve assets?
caroline-church (Wed, 14 Jun 2017 13:46:02 GMT):
are there any errors in the console where you run node-red from
dwakeman (Wed, 14 Jun 2017 13:49:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=M9MqanTHNnpiyQmyb) @caroline-church I cannot create a marble. The only error I see in the node-red console is this `14 Jun 08:47:58 - [error] [hyperledger-composer-out:hlfv1] create`
caroline-church (Wed, 14 Jun 2017 13:51:27 GMT):
can you show me the logs from before the error?
dwakeman (Wed, 14 Jun 2017 13:59:27 GMT):
```14 Jun 08:47:56 - [info] Stopped flows
14 Jun 08:47:56 - [info] Starting flows
14 Jun 08:47:56 - [info] [hyperledger-composer-in:hlfv1] checking config
14 Jun 08:47:56 - [info] Started flows
14 Jun 08:47:56 - [info] [hyperledger-composer-in:hlfv1] subscribe
14 Jun 08:47:56 - [info] [hyperledger-composer-in:hlfv1] ensureConnected
14 Jun 08:47:56 - [info] [hyperledger-composer-in:hlfv1] subscribed
14 Jun 08:47:58 - [info] [hyperledger-composer-out:hlfv1] checking config
14 Jun 08:47:58 - [info] [hyperledger-composer-out:hlfv1] checking payload
14 Jun 08:47:58 - [info] [hyperledger-composer-out:hlfv1] create
14 Jun 08:47:58 - [info] [hyperledger-composer-out:hlfv1] ensureConnected
14 Jun 08:47:58 - [info] [hyperledger-composer-out:hlfv1] connected
14 Jun 08:47:58 - [error] [hyperledger-composer-out:hlfv1] create
14 Jun 08:56:31 - [info] Stopping flows
14 Jun 08:56:31 - [info] [hyperledger-composer-in:hlfv1] node was closed so removed event listener
14 Jun 08:56:31 - [info] Stopped flows
14 Jun 08:56:31 - [info] Starting flows
14 Jun 08:56:31 - [info] [hyperledger-composer-in:hlfv1] checking config
14 Jun 08:56:31 - [info] Started flows
14 Jun 08:56:31 - [info] [hyperledger-composer-in:hlfv1] subscribe
14 Jun 08:56:31 - [info] [hyperledger-composer-in:hlfv1] ensureConnected
14 Jun 08:56:31 - [info] [hyperledger-composer-in:hlfv1] subscribed
14 Jun 08:57:23 - [info] Stopping flows
14 Jun 08:57:23 - [info] [hyperledger-composer-in:hlfv1] node was closed so removed event listener
14 Jun 08:57:23 - [info] Stopped flows
14 Jun 08:57:23 - [info] Starting flows
14 Jun 08:57:23 - [info] [hyperledger-composer-in:hlfv1] checking config
14 Jun 08:57:23 - [info] Started flows
14 Jun 08:57:23 - [info] [hyperledger-composer-in:hlfv1] subscribe
14 Jun 08:57:23 - [info] [hyperledger-composer-in:hlfv1] ensureConnected
14 Jun 08:57:23 - [info] [hyperledger-composer-in:hlfv1] subscribed
14 Jun 08:57:32 - [info] [hyperledger-composer-mid:hlfv1] checking config
14 Jun 08:57:32 - [info] [hyperledger-composer-mid:hlfv1] retrieve
14 Jun 08:57:32 - [info] [hyperledger-composer-mid:hlfv1] ensureConnected
14 Jun 08:57:32 - [info] [hyperledger-composer-mid:hlfv1] connected
14 Jun 08:57:32 - [error] [hyperledger-composer-mid:hlfv1] retrieve: error thrown doing retrieve No registered namespace for type org.hyperledger_composer.marbles.Marble```
dwakeman (Wed, 14 Jun 2017 13:59:49 GMT):
the last one is me trying to retrieve a marble. that's the most descriptive error I've gotten so far.
caroline-church (Wed, 14 Jun 2017 14:02:20 GMT):
ahh so in this case you have the namespace wrong, so whatever you have set for the `$class` property isn't right
dwakeman (Wed, 14 Jun 2017 14:08:39 GMT):
yes, it is.. I grabbed it from the composer-rest-server api explorer
dwakeman (Wed, 14 Jun 2017 14:09:09 GMT):
so perhaps it's not connecting to the right business network?
dwakeman (Wed, 14 Jun 2017 14:12:49 GMT):
This is the code in my Function node to set the msg.payload:
```var marble = {
"$class": "org.hyperledger_composer.marbles.Marble",
"id": "smred1"
}
msg.payload = marble;
return msg;```
rfu2k (Wed, 14 Jun 2017 14:47:42 GMT):
Hi is anyone aware of a threat model for Fabric/Composer?
I've asked in #Fabric in regards to v1 (as channels are important to my use case), would something similar exist for Composer?
As part of the blockchain technology evaluation for my company I have been tasked to produce a threat model for the different platforms we are considering (Fabric being one). I have a meeting with security management this week to start this review off, and would appreciate if there's anything already out there that might help me save some time and effort putting one together.
rfu2k (Wed, 14 Jun 2017 14:47:42 GMT):
Hi is anyone aware of a threat model for Fabric and/or Composer?
I've asked in #Fabric in regards to v1 (as channels are important to my use case), would something similar exist for Composer?
As part of the blockchain technology evaluation for my company I have been tasked to produce a threat model for the different platforms we are considering (Fabric along with Composer being one). I have a meeting with security management this week to start this review off, and would appreciate if there's anything already out there that might help me save some time and effort putting one together.
Vipul_Bajaj (Wed, 14 Jun 2017 14:49:19 GMT):
How can we ISSUE identities using REST Server?
Vipul_Bajaj (Wed, 14 Jun 2017 14:49:41 GMT):
```
caroline-church (Wed, 14 Jun 2017 14:57:49 GMT):
@dwakeman what business network are you setting on the composer node and what is the result of doing docker ps
dwakeman (Wed, 14 Jun 2017 15:15:10 GMT):
I am setting the business network identifier to `marbles-network` and the output of docker ps is:
```Daves-MBP:dw-blockchain-event-handler dwakeman$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
920d9db5fe1b dev-peer1-marbles-network-0.7.5 "chaincode -peer.a..." 15 hours ago Up 15 hours dev-peer1-marbles-network-0.7.5
01fe75c71279 dev-peer0-marbles-network-0.7.5 "chaincode -peer.a..." 15 hours ago Up 15 hours dev-peer0-marbles-network-0.7.5
f08454d3b044 dev-peer0-pharma-network-0.7.5 "chaincode -peer.a..." 46 hours ago Up 46 hours dev-peer0-pharma-network-0.7.5
cd76355dd278 dev-peer1-pharma-network-0.7.5 "chaincode -peer.a..." 46 hours ago Up 46 hours dev-peer1-pharma-network-0.7.5
3b95f7efe771 dev-peer0-digitalproperty-network-0.7.5 "chaincode -peer.a..." 46 hours ago Up 46 hours dev-peer0-digitalproperty-network-0.7.5
312c241564a3 dev-peer1-digitalproperty-network-0.7.5 "chaincode -peer.a..." 46 hours ago Up 46 hours dev-peer1-digitalproperty-network-0.7.5
b08963993812 hyperledger/fabric-peer:x86_64-1.0.0-alpha "peer node start -..." 46 hours ago Up 46 hours 0.0.0.0:7056->7051/tcp, 0.0.0.0:7058->7053/tcp peer1
531ff3b744ed hyperledger/fabric-peer:x86_64-1.0.0-alpha "peer node start -..." 46 hours ago Up 46 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0
92d0dc0d6a67 hyperledger/fabric-orderer:x86_64-1.0.0-alpha "orderer" 46 hours ago Up 46 hours 0.0.0.0:7050->7050/tcp orderer0
fbffbe828e6c hyperledger/fabric-ca:x86_64-1.0.0-alpha "sh -c 'fabric-ca-..." 46 hours ago Up 46 hours 0.0.0.0:7054->7054/tcp ca_peerOrg1
```
dwakeman (Wed, 14 Jun 2017 15:17:20 GMT):
I am specifying `hlfv1` as my connection profile, and here is the content of connection.json:
```Daves-MBP:.composer-connection-profiles dwakeman$ ls
hlfv1 kubehlfv1 minihlfv1 noderedkubebmx
Daves-MBP:.composer-connection-profiles dwakeman$ cd hlfv1/
Daves-MBP:hlfv1 dwakeman$ ls
connection.json
Daves-MBP:hlfv1 dwakeman$ cat connection.json
{
"type": "hlfv1",
"orderers": [
"grpc://localhost:7050"
],
"ca": "http://localhost:7054",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
},
{
"requestURL": "grpc://localhost:7056",
"eventURL": "grpc://localhost:7058"
}
],
"keyValStore": "/Users/dwakeman/.hfc-key-store",
"channel": "mychannel",
"mspID": "Org1MSP",
"deployWaitTime": "300",
"invokeWaitTime": "100"
}Daves-MBP:hlfv1 dwakeman$
```
I do find it interesting that I don't see any of the networks listed at the bottom. I thought they were supposed to be added automatically by `composer network deploy`
caroline-church (Wed, 14 Jun 2017 15:26:12 GMT):
@dwakeman and show me your model
dwakeman (Wed, 14 Jun 2017 15:27:51 GMT):
Message Attachments
dselman (Wed, 14 Jun 2017 15:36:03 GMT):
@dwakeman we no longer need the mapping from chaincode id to network name with HLFv1
davidoevans (Wed, 14 Jun 2017 15:37:39 GMT):
me and a colleague have both cleared our docker images and running ./downloadFabric.sh as per instructions to setup composer development environment. I am getting version x68_64-1.0.0-alpha and he is getting version x86_64-1.0.0-beta. any thoughts what might be different?
dwakeman (Wed, 14 Jun 2017 15:38:09 GMT):
@dselman Okay, then it's not something that is wrong, thx!
dwakeman (Wed, 14 Jun 2017 15:38:43 GMT):
@caroline-church not sure if this helps, but I did a network ping, and I can get to it:
```Daves-MBP:hlfv1 dwakeman$ composer network ping --businessNetworkName marbles-network -p hlfv1 -i admin -s adminpw
The connection to the network was successfully tested: marbles-network
version: 0.7.5
participant:
caroline-church (Wed, 14 Jun 2017 15:40:53 GMT):
@dwakeman you don't have a package.json file in that business network
rfu2k (Wed, 14 Jun 2017 15:41:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aLexogBDg8xZejzq9) @rfu2k @dselman if anyone can help with my request, it's you!
rfu2k (Wed, 14 Jun 2017 15:41:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aLexogBDg8xZejzq9) @rfu2k @dselman @davidkel if anyone can help with my request, it's you!
dwakeman (Wed, 14 Jun 2017 15:41:35 GMT):
do I need one? I grabbed marbles-network from the playground by authenticating to github
caroline-church (Wed, 14 Jun 2017 15:42:01 GMT):
oh sorry just unzipped it and you do, for some reason it wont import into playground
caroline-church (Wed, 14 Jun 2017 15:43:40 GMT):
@dwakeman the model looks ok
caroline-church (Wed, 14 Jun 2017 15:43:50 GMT):
compared to what you have in node-red
dwakeman (Wed, 14 Jun 2017 15:43:55 GMT):
Hmm.. I just unzipped it and it imported into playground for me. that's strange it doesn't work for you.
caroline-church (Wed, 14 Jun 2017 15:44:00 GMT):
i cant see what is wrong
dwakeman (Wed, 14 Jun 2017 15:44:37 GMT):
okay, no worries. not a hugely urgent deal. I can shelf it until next week.
davidoevans (Wed, 14 Jun 2017 15:51:05 GMT):
forget my question above...we're both getting beta now.
dselman (Wed, 14 Jun 2017 15:54:27 GMT):
@rfu2k I don't think we have what you are looking for.. maybe the Fabric guys are further along with security hardening -- we've barely started for Composer.
dselman (Wed, 14 Jun 2017 15:54:58 GMT):
On the + side many of the contributors have been building enterprise systems for a very long time, so we understand the requirements and use cases.
dselman (Wed, 14 Jun 2017 15:55:10 GMT):
And we are used to working with banks etc.
dselman (Wed, 14 Jun 2017 15:55:39 GMT):
So we will get there, but the focus right now is on getting functionality in to help people create solutions.
Mattasher (Wed, 14 Jun 2017 15:56:42 GMT):
When running `composer network deploy -a healthchain-network.bna -p hlfv1 -i admin -s adminpw` I'm getting the error: `event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]` am using the 1.0.0-beta version of Fabric.
rfu2k (Wed, 14 Jun 2017 15:56:42 GMT):
@dselman gotchya - if anyone else here happens to done something on the side and would like to share I'd love to see it :)
sstone1 (Wed, 14 Jun 2017 15:57:58 GMT):
@Mattasher we don't support beta 1 yet, only alpha 1; the release of Composer tomorrow will add support for beta 1
sstone1 (Wed, 14 Jun 2017 15:58:32 GMT):
@davidoevans you've got a similar problem; we updated the fabric-dev-servers repo to prepare for tomorrows release, but it doesn't work with the released version of Composer yet
Mattasher (Wed, 14 Jun 2017 15:59:03 GMT):
@sstone1 Thanks for the info. FYI the downloads scripts will be breaking things for people until then.
CT123 (Wed, 14 Jun 2017 16:15:03 GMT):
@davidkel -- quick update - and thanks for your suggestions and comments. Appears I was able to get playground to run locally or at least the npm install exited with success -- see below. Steps included stopping and restarting docker; flushing npm-debug.log and then simply re-running npm install. As an aside, my system runs 'traditional' root, not sudo. When you install npm in my environment (macos running Sierra) it gives you the option to make it available to the entire system or to just an individual user. In my case it won't matter but in general when I install I install apps I do so for every user so there is a single instance that I can test against with different users. Again, npm installs systemwide in /usr/local/bin and every user has access to that directory, etc. Also -- I was finally able to get composer playground to launch from a browser instance after trying for a couple of weeks -- the key -- you need to let users know that playground will not run in 'private browsing' mode. Which candidly is an issue. Once I opened a non-private or standard browser window I was able to get the online version of playground running. Someone may want to document that. Here's the output snip from npm install and thanks again for your help!
Creating Business Network Archive
Not found in main node_module search path, trying current directory
Current Directory: /Users/CT15/temp/HL-COMPOSE/composer-sample-applications-hlfv1/packages/getting-started/node_modules/digitalproperty-network
Looking for package.json of Business Network Definition
Input directory: /Users/CT15/temp/HL-COMPOSE/composer-sample-applications-hlfv1/packages/getting-started/node_modules/digitalproperty-network
Found:
Description: Digital Property Network
Name: digitalproperty-network
Identifier: digitalproperty-network@0.0.9
Written Business Network Definition Archive file to
Output file: digitalPropertyNetwork.bna
Command succeeded
Deploying business network from archive: digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network@0.0.9
Description: Digital Property Network
✔ Deploying business network definition. This may take a minute...
Command succeeded
✔ List business network digitalproperty-network
name: digitalproperty-network
models:
- net.biz.digitalPropertyNetwork
scripts:
- lib/DigitalLandTitle.js
registries:
net.biz.digitalPropertyNetwork.LandTitle:
id: net.biz.digitalPropertyNetwork.LandTitle
name: Asset registry for net.biz.digitalPropertyNetwork.LandTitle
registryType: Asset
net.biz.digitalPropertyNetwork.SalesAgreement:
id: net.biz.digitalPropertyNetwork.SalesAgreement
name: Asset registry for net.biz.digitalPropertyNetwork.SalesAgreement
registryType: Asset
net.biz.digitalPropertyNetwork.Person:
id: net.biz.digitalPropertyNetwork.Person
name: Participant registry for net.biz.digitalPropertyNetwork.Person
registryType: Participant
Command succeeded
davidkel (Wed, 14 Jun 2017 16:17:51 GMT):
@CT123 thanks for the feedback, glad you are up and running. I always run playground in an incognito window in chrome. what browser were you running ?
CT123 (Wed, 14 Jun 2017 17:11:06 GMT):
@davidkel Safari Version 10.1.1 (12603.2.4) on Sierra 10.12.5
zgalvin111 (Wed, 14 Jun 2017 17:15:03 GMT):
Has joined the channel.
zgalvin111 (Wed, 14 Jun 2017 17:18:22 GMT):
Hey everyone, I just watched the car demo of the Hyperledger Composer project. It was a great example except I am confused how different parties sign transactions on the blockchain. When they created a new user in the video, it provided a user secret for that user, is this essentially the private key that would be used to sign transactions?
davidoevans (Wed, 14 Jun 2017 17:41:30 GMT):
if I have an AdminParticipant, how can I define an ACL rule that only they can create a UserParticipant?
dwakeman (Wed, 14 Jun 2017 18:11:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JQSsqyYvXZy6FSP58) @caroline-church Quick update.... I undeployed my other two networks, and restarted my node-red server. Now I can execute transactions, get assets and receive events! Not sure if it was the restart of node-red or the fact that I got rid of the other networks, but happy that it works.
One more question. All I am getting back is this:
```"Resource {id=org.hyperledger_composer.marbles.MarbleTradedEvent#aff296d0-e637-4822-9533-3a3ee05e5c71#0}"```
My event has several attributes that I populate before emitting the event. I expected to see them in the JSON I got back from the subscription. Is that correct?
dwakeman (Wed, 14 Jun 2017 18:11:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JQSsqyYvXZy6FSP58) @caroline-church Quick update.... I undeployed my other two networks, and restarted my node-red server. Now I can execute transactions, get assets and receive events! Not sure if it was the restart of node-red or the fact that I got rid of the other networks, but happy that it works.
One more question. All I am getting back is this:
```"Resource {id=org.hyperledger_composer.marbles.MarbleTradedEvent#aff296d0-e637-4822-9533-3a3ee05e5c71#0}"```
My event has several attributes that I populate before emitting the event. I expected to see them in the JSON I got back from the subscription. Is that correct? That message came from the debug node that specified to show the entire msg object. When I changed it to only show msg.payload it comes back as undefined, so the Composer In node isn't populating msg.payload.
ubiot (Wed, 14 Jun 2017 18:22:01 GMT):
Has joined the channel.
mahoney1 (Wed, 14 Jun 2017 20:00:56 GMT):
hi everyone, just a reminder that our Community call is 9am UTC (10am UK, 2:30pm IST, 5pm CST) tomorrow(Thursday) - would love to hear about the things you like/don't like /your experiences with Composer ! Meeting details are here: https://github.com/hyperledger/composer/wiki/Meeting-15th-June-2017 (presently looking at discussing Query support, HLF v1 beta support, Vehicle Lifecycle demo status) - cheers - have a nice day/evening etc, Paul
caroline-church (Thu, 15 Jun 2017 07:08:52 GMT):
Hi @dwakeman glad you got it to work, to see all the attributes you need to upgrade the version of node-red-contrib-composer, the working version should be 0.0.2, it was a bug in 0.0.1. The easiest way i found to update the nodes is to `cd ~/.node-red` and do an `npm install node-red-contrib-composer`
caroline-church (Thu, 15 Jun 2017 07:08:52 GMT):
Hi @dwakeman glad you got it to work, to see all the attributes you need to upgrade the version of node-red-contrib-composer, the working version should be 0.0.2, it was a bug in 0.0.1. The easiest way i found to update the nodes is to `cd ~/.node-red` and do an `npm install node-red-contrib-composer`. (you will still need to do show entire message)
akshay111meher (Thu, 15 Jun 2017 08:17:31 GMT):
This is error which i am getting while generating an event....
Error: TypeError: undefined not callable
at /home/akshay/Desktop/fabric-composer-tests/employee-network/node_modules/composer-connector-hlfv1/node_modules/grpc/src/node/src/client.js:434:17
akshay111meher (Thu, 15 Jun 2017 08:18:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tG8D68fGLjbYWEHNn) @akshay111meher
i have defined an event name *EmployeeEvent* and called it in the .js file using getFactory().newEvent('namespace','EmployeeEvent')
it is here where i am getting the mentioned error
akshay111meher (Thu, 15 Jun 2017 08:23:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=omP6W8e3LyMJ85Hmy) @akshay111meher
this is the event defined
event EmployeeEvent identified by eventId {
o String eventId
o String data
}
dselman (Thu, 15 Jun 2017 08:24:58 GMT):
Can you show the code that emits the event please?
akshay111meher (Thu, 15 Jun 2017 08:26:11 GMT):
return getAssetRegistry('net.biz.digitalEmployeeNetwork.Employee').then(function(result) {
return result.update(employeeForTransfer.employee);
}).then(function(){
var employeeEvent = getFactory().newEvent('net.biz.digitalEmployeeNetwork','EmployeeEvent');
employeeEvent.data = "sample data";
emit(employeeEvent)
});
akshay111meher (Thu, 15 Jun 2017 08:26:11 GMT):
@dselman
return getAssetRegistry('net.biz.digitalEmployeeNetwork.Employee').then(function(result) {
return result.update(employeeForTransfer.employee);
}).then(function(){
var employeeEvent = getFactory().newEvent('net.biz.digitalEmployeeNetwork','EmployeeEvent');
employeeEvent.data = "sample data";
emit(employeeEvent)
});
Jakeeyturner (Thu, 15 Jun 2017 08:29:37 GMT):
Is 'Employee' an asset or participant?
akshay111meher (Thu, 15 Jun 2017 08:29:46 GMT):
Asset
pd93 (Thu, 15 Jun 2017 09:11:12 GMT):
Has joined the channel.
annbnn (Thu, 15 Jun 2017 09:35:05 GMT):
mkdir -p $GOPATH/src/github.com/hyperledger
mkdir: cannot create directory ‘/src’: Permission denied
Any hint to solve this ?
uber.twin (Thu, 15 Jun 2017 09:46:38 GMT):
hi, is there a Composer 0.8 release available already?
caroline-church (Thu, 15 Jun 2017 09:59:11 GMT):
@uber.twin no not yet
akshay111meher (Thu, 15 Jun 2017 10:20:41 GMT):
i have defined event in .cto file..
then called it in .js file.....
do i need to mention/define it anywhere else
akshay111meher (Thu, 15 Jun 2017 10:20:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ryrMPYMPHnxrc3MqN) @akshay111meher
i have defined event in .cto file..
then called it in .js file.....
do i need to mention/define it anywhere else
davidkel (Thu, 15 Jun 2017 10:22:10 GMT):
@akshay111meher what level of composer are you running ? What level of Hyperledger fabric are you running and is it running locally ?
akshay111meher (Thu, 15 Jun 2017 10:23:26 GMT):
0.7.2
akshay111meher (Thu, 15 Jun 2017 10:24:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8sBzt2rgRLLnYx3mG) @davidkel
version 0.7.2 and running it locally
davidkel (Thu, 15 Jun 2017 10:25:12 GMT):
Event support was not made available until 0.7.3, suggest you upgrade to the 0.7.5 level of composer
davidkel (Thu, 15 Jun 2017 10:25:12 GMT):
@akshay111meher Event support was not made available until 0.7.3, suggest you upgrade to the 0.7.5 level of composer
AnilOner (Thu, 15 Jun 2017 12:03:24 GMT):
Has joined the channel.
gen_el (Thu, 15 Jun 2017 12:19:41 GMT):
Hello
gen_el (Thu, 15 Jun 2017 12:20:11 GMT):
What do i get this error when i try to deploy the basic bna file
gen_el (Thu, 15 Jun 2017 12:21:11 GMT):
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.10
Description: The Hello World of Hyperledger Composer samples
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event
creator: [Expected MSP ID Org1MSP, received ]]
gen_el (Thu, 15 Jun 2017 12:21:25 GMT):
@here
gen_el (Thu, 15 Jun 2017 12:21:56 GMT):
Some help is appreciated. Just walking through the playground
caroline-church (Thu, 15 Jun 2017 12:24:02 GMT):
Hi @gen_el what version of composer do you have and can you do a docker ps please
caroline-church (Thu, 15 Jun 2017 12:24:02 GMT):
Hi @gen_el what version of composer do you have and can you do a `docker ps` please
gen_el (Thu, 15 Jun 2017 12:24:56 GMT):
@caroline-church composer-cli v0.7.5
composer-admin v0.7.5
composer-client v0.7.5
composer-common v0.7.5
composer-runtime-hlfv1 v0.7.5
gen_el (Thu, 15 Jun 2017 12:28:37 GMT):
Message Attachments
gen_el (Thu, 15 Jun 2017 12:29:36 GMT):
@caroline-church
swemso (Thu, 15 Jun 2017 12:29:45 GMT):
Has joined the channel.
caroline-church (Thu, 15 Jun 2017 12:31:29 GMT):
composer version 0.7.5 doesn't support fabric v1.0 beta
gen_el (Thu, 15 Jun 2017 12:31:47 GMT):
okay
caroline-church (Thu, 15 Jun 2017 12:32:37 GMT):
there should be a release of version 0.8.0 very soon (probably today) that will
gen_el (Thu, 15 Jun 2017 12:32:44 GMT):
But 0.7.5 is the latest
gen_el (Thu, 15 Jun 2017 12:33:09 GMT):
So i have to wait for that? @caroline-church
caroline-church (Thu, 15 Jun 2017 12:33:45 GMT):
yes
gen_el (Thu, 15 Jun 2017 12:35:16 GMT):
okay
gen_el (Thu, 15 Jun 2017 12:35:30 GMT):
Thanks for the feedback
caroline-church (Thu, 15 Jun 2017 12:35:50 GMT):
np
davidpc (Thu, 15 Jun 2017 12:48:28 GMT):
Has joined the channel.
annbnn (Thu, 15 Jun 2017 12:55:37 GMT):
@caroline-church How to reset the Fabric cloning & docker images building ?
annbnn (Thu, 15 Jun 2017 12:55:59 GMT):
I tried to clone Fabric and build docker images. I would like to restart the process.
annbnn (Thu, 15 Jun 2017 12:56:38 GMT):
Deleting the folder Fabric seems to be hard.
caroline-church (Thu, 15 Jun 2017 12:57:28 GMT):
Hi @annbnn you should ask this in the #fabric channel this doesn't seem to be a composer issue
dwakeman (Thu, 15 Jun 2017 14:09:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=63vKJXQ5G9uH94amK) @caroline-church You were absolutely correct; I updated to node-red-contrib-composer 0.0.2 and it worked perfectly. Thanks!!
caroline-church (Thu, 15 Jun 2017 14:09:48 GMT):
cool, glad it now works for you :)
dwakeman (Thu, 15 Jun 2017 14:10:34 GMT):
one more question.... Any word on if/when it will work with Node Red on Bluemix?
caroline-church (Thu, 15 Jun 2017 14:14:03 GMT):
hopefully it will do soon, it needs work around the connection profiles, feel free to raise an issue on github for it, and maybe even add the function yourself
dwakeman (Thu, 15 Jun 2017 14:18:06 GMT):
okay, will do!
dwakeman (Thu, 15 Jun 2017 14:23:53 GMT):
is it node-red-contrib-composer or node-red-contrib-fabric-composer? I found the latter in github under ibm-early-programs, but not sure that's the right repo.
xuzhao103389 (Thu, 15 Jun 2017 14:25:43 GMT):
Hi Guys, when can I try the new build v0.8 ?
uber.twin (Thu, 15 Jun 2017 14:26:38 GMT):
@caroline-church till version 0.8 comes out, what would be the official working release?
caroline-church (Thu, 15 Jun 2017 14:27:15 GMT):
0.7.5 which works with fabric 0.6 and fabric v1-alpha1
caroline-church (Thu, 15 Jun 2017 14:28:22 GMT):
its `node-red-contrib-composer` https://github.com/hyperledger/composer-tools/tree/master/packages/node-red-contrib-composer
uber.twin (Thu, 15 Jun 2017 14:28:40 GMT):
I am trying it with the composer-sample-applications-hlfv1 but I get this error at network build time
uber.twin (Thu, 15 Jun 2017 14:28:42 GMT):
TypeError: Path must be a string. Received undefined
at assertPath (path.js:7:11)
at Object.parse (path.js:1494:5)
at /home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:282:35
at Array.forEach (native)
at BusinessNetworkDefinition.toArchive (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:276:20)
at BusinessNetworkDefinition.fromDirectory.then (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/lib/cmds/archive/lib/create.js:84:27)
at process._tickCallback (internal/process/next_tick.js:109:7)
at Module.runMain (module.js:606:11)
at run (bootstrap_node.js:390:7)
at startup (bootstrap_node.js:150:9)
TypeError: Path must be a string. Received undefined
at assertPath (path.js:7:11)
at Object.parse (path.js:1494:5)
at /home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:282:35
at Array.forEach (native)
at BusinessNetworkDefinition.toArchive (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:276:20)
at BusinessNetworkDefinition.fromDirectory.then (/home/pg/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/lib/cmds/archive/lib/create.js:84:27)
at process._tickCallback (internal/process/next_tick.js:109:7)
at Module.runMain (module.js:606:11)
at run (bootstrap_node.js:390:7)
at startup (bootstrap_node.js:150:9)
caroline-church (Thu, 15 Jun 2017 14:29:04 GMT):
@xuzhao103389 probably today
xuzhao103389 (Thu, 15 Jun 2017 14:29:32 GMT):
thanks @caroline-church it is best to have sample code updated as well:)
dwakeman (Thu, 15 Jun 2017 14:31:15 GMT):
never mind, I found node-red-contrib-composer in composer-tools repo.
caroline-church (Thu, 15 Jun 2017 14:31:53 GMT):
@uber.twin is it one of the samples you are trying to create a .bna file for?
uber.twin (Thu, 15 Jun 2017 14:33:06 GMT):
no, it's my own attempt at developing a network
uber.twin (Thu, 15 Jun 2017 14:33:27 GMT):
but I'll try to see how the sample networks work
Jakeeyturner (Thu, 15 Jun 2017 14:34:43 GMT):
The composer-sample-applications-hlfv1 was deleted a while ago. All you need to use it https://github.com/hyperledger/composer-sample-applications now
Jakeeyturner (Thu, 15 Jun 2017 14:34:49 GMT):
(That includes hlfv1 support)
Jakeeyturner (Thu, 15 Jun 2017 14:35:54 GMT):
@uber.twin
uber.twin (Thu, 15 Jun 2017 14:36:59 GMT):
and this one will updated for the upcoming version 0.8 of the Composer?
caroline-church (Thu, 15 Jun 2017 14:37:30 GMT):
@uber.twin have you tried deploying the network from playground, there is a known issue with creating archive files in certain circumstances
caroline-church (Thu, 15 Jun 2017 14:37:30 GMT):
@uber.twin have you tried deploying the network from playground, there is a known issue with creating archive files in certain circumstances (i should add it should be fixed in version 0.8)
Jakeeyturner (Thu, 15 Jun 2017 14:37:59 GMT):
version 0.8 was made a minute ago and is currently going through the build process, there'll be a chat announcement once it's ready to be used
Jakeeyturner (Thu, 15 Jun 2017 14:38:23 GMT):
digitalproperty-network will work with beta-1.0.0
uber.twin (Thu, 15 Jun 2017 14:38:50 GMT):
@caroline-church never tried the playground
uber.twin (Thu, 15 Jun 2017 14:41:15 GMT):
@Jakeeyturner but will composer-sample-applications be compatible with version 0.8?
caroline-church (Thu, 15 Jun 2017 14:41:46 GMT):
yes
uber.twin (Thu, 15 Jun 2017 14:42:32 GMT):
as of now or it'll be updated?
Jakeeyturner (Thu, 15 Jun 2017 14:44:56 GMT):
digitalproperty will be @uber.twin. The new vehicle-lifecycle demo won't be compatible immediately, as it needs to be updated to work with beta-1.0.0
Jakeeyturner (Thu, 15 Jun 2017 14:44:56 GMT):
digitalproperty will be @uber.twin . The new vehicle-lifecycle demo won't be compatible immediately, as it needs to be updated to work with beta-1.0.0
Jakeeyturner (Thu, 15 Jun 2017 14:45:55 GMT):
v0.8 is hlf0.6 and hlfv1 (beta-1.0.0) compatible
Jakeeyturner (Thu, 15 Jun 2017 14:46:06 GMT):
support for alpha-1.0.0 will be dropped
uber.twin (Thu, 15 Jun 2017 14:56:00 GMT):
does digitalproperty have a repo of it's own or it's the digitalproperty from the "https://github.com/hyperledger/composer-sample-applications" repo
Jakeeyturner (Thu, 15 Jun 2017 14:59:04 GMT):
yeah it's from sample-applications :)
davidoevans (Thu, 15 Jun 2017 15:01:03 GMT):
if I have an AdminParticipant, how can I define an ACL rule that only they can create a UserParticipant?
caroline-church (Thu, 15 Jun 2017 15:02:28 GMT):
@davidoevans when you create an identity you can specify whether that new identity can issue identities themselves
caroline-church (Thu, 15 Jun 2017 15:02:28 GMT):
@davidoevans when you issue an identity you can specify whether that new identity can issue identities themselves
davidoevans (Thu, 15 Jun 2017 15:02:59 GMT):
so the only extra thing is how to specify which identities they can create
caroline-church (Thu, 15 Jun 2017 15:03:35 GMT):
see https://hyperledger.github.io/composer/unstable/reference/composer.identity.issue.html
caroline-church (Thu, 15 Jun 2017 15:03:35 GMT):
see https://hyperledger.github.io/composer/reference/composer.identity.issue.html
davidoevans (Thu, 15 Jun 2017 15:03:50 GMT):
for example, to say AdminParticipant can create a UserParticipant but not a User2Participant
gen_el (Thu, 15 Jun 2017 15:09:29 GMT):
Seen composer v0.8! Thanks!
Jakeeyturner (Thu, 15 Jun 2017 15:18:12 GMT):
@here Hyperledger Composer v0.8 has now been released! Check out the release notes here -https://github.com/hyperledger/composer/releases/tag/v0.8.0
dselman (Thu, 15 Jun 2017 15:18:42 GMT):
:drum:
jaguarg (Thu, 15 Jun 2017 15:19:16 GMT):
Has joined the channel.
jaguarg (Thu, 15 Jun 2017 15:22:36 GMT):
Hello, I am having a lot fun with composer's playground. it rocks. But now I have installed everything on my local dev box but I am stuck with the `composer network deploy` command. In fact, I need to generate an enrollid and secret . How can I achieve that ? Alternatively how can I get the admin's enrollid and secret ? I followed the installation steps from here : https://hyperledger.github.io/composer/installing/development-tools.html
dselman (Thu, 15 Jun 2017 15:24:24 GMT):
You can use `admin` as the id with `adminpw` as the password
davidkel (Thu, 15 Jun 2017 15:26:39 GMT):
@jaguarg could you do a docker ps to show the version of hyperledger fabric you have running locally ?
davidkel (Thu, 15 Jun 2017 15:26:39 GMT):
@jaguarg could you do a `docker ps` to show the version of hyperledger fabric you have running locally ?
jaguarg (Thu, 15 Jun 2017 15:27:33 GMT):
hyperledger/fabric-peer:x86_64-1.0.0-beta, hyperledger/fabric-orderer:x86_64-1.0.0-beta, hyperledger/fabric-couchdb:x86_64-1.0.0-beta, hyperledger/fabric-ca:x86_64-1.0.0-bet
jaguarg (Thu, 15 Jun 2017 15:27:33 GMT):
@davidkel hyperledger/fabric-peer:x86_64-1.0.0-beta, hyperledger/fabric-orderer:x86_64-1.0.0-beta, hyperledger/fabric-couchdb:x86_64-1.0.0-beta, hyperledger/fabric-ca:x86_64-1.0.0-bet
jaguarg (Thu, 15 Jun 2017 15:27:55 GMT):
@dselman thank you , this is the one !
davidkel (Thu, 15 Jun 2017 15:28:23 GMT):
@jaguarg as you are runnung
davidkel (Thu, 15 Jun 2017 15:28:23 GMT):
@jaguarg as you are running fabric beta, you need to first download composer v0.8.0
dselman (Thu, 15 Jun 2017 15:29:05 GMT):
(Which was releases a matter of minutes ago!)
dselman (Thu, 15 Jun 2017 15:29:05 GMT):
(Which was released a matter of minutes ago!
dselman (Thu, 15 Jun 2017 15:29:05 GMT):
(Which was released a matter of minutes ago!)
davidkel (Thu, 15 Jun 2017 15:29:22 GMT):
@dselman timely I'd say :-)
davidkel (Thu, 15 Jun 2017 15:32:13 GMT):
@jaguarg then to deploy a network (so long as you have downloaded the fabric-dev-server from composer-tools and run createComposerProfile.sh) using the command `composer network deploy -a
jaguarg (Thu, 15 Jun 2017 15:39:08 GMT):
`./downloadFabric.sh` is still pulling beta docker images ...
jaguarg (Thu, 15 Jun 2017 15:45:15 GMT):
@davidkel , I am getting an error when deploying : `Error: event message must be properly signed by an identity from the same organization as the peer: [Expected MSP ID Org1MSP, received ]]`
davidkel (Thu, 15 Jun 2017 15:45:44 GMT):
@jaguarg have you installed composer v0.8.0 ?
davidkel (Thu, 15 Jun 2017 15:46:06 GMT):
`composer -v`
jaguarg (Thu, 15 Jun 2017 15:46:23 GMT):
vagrant@vagrant-ubuntu-trusty-64:~/business_networks$ composer -v
composer-cli v0.8.0
composer-admin v0.8.0
composer-client v0.8.0
composer-common v0.8.0
composer-runtime-hlf v0.8.0
composer-runtime-hlfv1 v0.8.0
davidkel (Thu, 15 Jun 2017 15:47:52 GMT):
could you post the output from `docker ps` as well please
davidkel (Thu, 15 Jun 2017 15:48:35 GMT):
and also the command you used to try to deploy
jaguarg (Thu, 15 Jun 2017 15:49:50 GMT):
`CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
88063b8c417f hyperledger/fabric-peer:x86_64-1.0.0-beta "peer node start -..." 7 minutes ago Up 7 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
d66ddb0a621b hyperledger/fabric-couchdb:x86_64-1.0.0-beta "tini -- /docker-e..." 7 minutes ago Up 7 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
b1186b05003f hyperledger/fabric-orderer:x86_64-1.0.0-beta "orderer" 7 minutes ago Up 7 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
3422a78fee20 hyperledger/fabric-ca:x86_64-1.0.0-beta "sh -c 'fabric-ca-..." 7 minutes ago Up 7 minutes 0.0.0.0:7054->7054/tcp ca.example.com
`
jaguarg (Thu, 15 Jun 2017 15:50:30 GMT):
the deploy command is : `composer network deploy -a ./mytest.bna -i PeerAdmin -s anythingwilldo`
davidkel (Thu, 15 Jun 2017 15:51:36 GMT):
@jaguarg you must specify the hlfv1 connection profile, which is missing from the deploy command. Try this command
`composer network deploy -a ./mytest.bna -i PeerAdmin -s anythingwilldo -p hlfv1`
jorgedr (Thu, 15 Jun 2017 16:47:42 GMT):
Hey guys, is there a way in composer to pass back a payload on a transaction ? Basically I would like to make it so that when I call a transaction I get passed back some sort of data that was not stored in the ledger.
MeenakshiSingh (Thu, 15 Jun 2017 16:51:22 GMT):
In a 0.6 fabric setup with peers running on 4 remote nodes, are these ```- CORE_PBFT_GENERAL_BATCHSIZE=1
- CORE_PBFT_GENERAL_K=2
- CORE_PBFT_GENERAL_MODE=batch
- CORE_PEER_VALIDATOR_CONSENSUS_PLUGIN=pbft # noops, pbft
- CORE_NOOPS_BLOCK_TIMEOUT=2s
- CORE_NOOPS_BLOCK_WAIT=2s
MeenakshiSingh (Thu, 15 Jun 2017 16:52:05 GMT):
required to be set for all peers in docker-compose.yml file for enabling pbft
theophoric (Thu, 15 Jun 2017 17:00:28 GMT):
Still trying to get my first local deployment up and running -- previous issue was resolved by ditching docker-toolbox in favor of docker for mac but now getting something new. Does this error look familiar to anyone?
```
$ composer network deploy -a fitchain-composer@0.0.1.bna -i admin -s adminpw [2.2.3]
Deploying business network from archive: fitchain-composer@0.0.1.bna
Business network definition:
Identifier: fitchain-composer@0.0.1
Description:
Error: {"created":"@1497545628.760966000","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1497545628.760957000","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1497545628.760963000","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}```
jorgedr (Thu, 15 Jun 2017 17:01:55 GMT):
Hello guys, I think you guys already support events in the latest version of Composer available. How does the event get display on Playground? Is that already supported?
tkuhrt (Thu, 15 Jun 2017 17:17:06 GMT):
This week's Composer call now with video: https://zoom.us/recording/play/ikGrW1wZ8IhInjbPN9zoYvMgqUsg2KeUgJVS1p_GuFHmWRN51OF8c1ZozSnoKYdi
davidoevans (Thu, 15 Jun 2017 17:24:18 GMT):
@caroline-church thanks for your reply...can you clarify how we can make so that a given participant can create one participant type but not another? I think this would be done through ACL but not sure.
emlorc01 (Thu, 15 Jun 2017 17:39:37 GMT):
Has joined the channel.
andreaslbauer (Thu, 15 Jun 2017 17:46:49 GMT):
Has joined the channel.
emlorc01 (Thu, 15 Jun 2017 17:48:40 GMT):
@davidkel I am having exact same issues as described above by @jaguarg. I have all the same outputs (running the 1.0-beta fabric and also have installed the latest composer version 0.8.0) and am specifying the connection profile but still getting an error
emlorc01 (Thu, 15 Jun 2017 17:49:02 GMT):
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
dselman (Thu, 15 Jun 2017 17:56:06 GMT):
@jorgedr no, not yet. That is this issue: https://github.com/hyperledger/composer/issues/998
dselman (Thu, 15 Jun 2017 17:57:47 GMT):
@emlorc01 mmmm, this smells like a configuration bug... We have system tests that emit events and they passed, so there's some sort of config issue here. We will investigate.
dselman (Thu, 15 Jun 2017 17:58:27 GMT):
Fabric has been progressively tightening up the security and adding more and more certs...
emlorc01 (Thu, 15 Jun 2017 17:58:40 GMT):
@dselman ok. please let me know if there is any details I need to provide because I have been spending quite a lot of hours trying to fix this one with no luck
dselman (Thu, 15 Jun 2017 18:01:39 GMT):
@davidkel -- it looks like this is coming from validateEventMessage in https://github.com/hyperledger/fabric/blob/master/events/producer/handler.go#L150
dselman (Thu, 15 Jun 2017 18:02:13 GMT):
You should have more details in the logs
dselman (Thu, 15 Jun 2017 18:02:46 GMT):
@emlorc01 Can you retrieve the logs (using docker logs) from the chaincode container and peer?
dselman (Thu, 15 Jun 2017 18:05:36 GMT):
@emlorc01 what participant/identity are you processing the transaction as?
emlorc01 (Thu, 15 Jun 2017 18:06:08 GMT):
@dselman I was just trying to use the PeerAdmin identity
emlorc01 (Thu, 15 Jun 2017 18:06:27 GMT):
@dselman composer network deploy -a ./my-network.bna -i PeerAdmin -s abc
emlorc01 (Thu, 15 Jun 2017 18:13:21 GMT):
I'm trying to get the docker logs command to output to a file so I can attach here but it is not working
emlorc01 (Thu, 15 Jun 2017 18:15:14 GMT):
sorry pasted wrong command above, this is what I have been using actually: composer network deploy -a my-network.bna -i PeerAdmin -s abc
emlorc01 (Thu, 15 Jun 2017 18:18:28 GMT):
2017-06-15 18:18:06.745 UTC [eventhub_producer] validateEventMessage -> DEBU 318 ValidateEventMessage starts for signed event 0xc42127d3b0
2017-06-15 18:18:06.745 UTC [eventhub_producer] Chat -> ERRO 319 Error handling message: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
dselman (Thu, 15 Jun 2017 18:30:52 GMT):
Can you try with the admin/adminpw identity please
dselman (Thu, 15 Jun 2017 18:31:15 GMT):
@emlorc01 ^^^
emlorc01 (Thu, 15 Jun 2017 18:31:32 GMT):
@dselman yes I have same error
emlorc01 (Thu, 15 Jun 2017 18:31:34 GMT):
$ composer network deploy -a my-network.bna -i admin -s adminpw
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.10
Description: The Hello World of Hyperledger Composer samples
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
dselman (Thu, 15 Jun 2017 18:32:09 GMT):
You get this when you deploy a network?
dselman (Thu, 15 Jun 2017 18:33:06 GMT):
For the deploy you need to use PeerAdmin. Is this using the one-line install script we provided to stand up the Fabric?
emlorc01 (Thu, 15 Jun 2017 18:33:36 GMT):
I tried to use PeerAdmin the first time, then I switched when you asked me to try the admin/adminpw combination
emlorc01 (Thu, 15 Jun 2017 18:34:01 GMT):
to stand up the fabric I followed instructions at https://hyperledger.github.io/composer/installing/development-tools.html
dselman (Thu, 15 Jun 2017 18:34:08 GMT):
Sorry, I thought you where trying to emit an event from a TP function, I didn't realize this was during a deploy
emlorc01 (Thu, 15 Jun 2017 18:34:35 GMT):
ah ok. yes I was working my way through the Developer tutorial and was going fine until I get to the part where I deploy my sample network to the fabric instance
andreaslbauer (Thu, 15 Jun 2017 18:34:54 GMT):
For what it's worth - I get the same exact error in the same scenario, working through the dev tutorial step by step.
dselman (Thu, 15 Jun 2017 18:35:23 GMT):
So, you followed this install: https://hyperledger.github.io/composer/installing/using-playground-locally.html
emlorc01 (Thu, 15 Jun 2017 18:35:55 GMT):
no I did the one below that
dselman (Thu, 15 Jun 2017 18:35:55 GMT):
Let me try on my system... One sec
emlorc01 (Thu, 15 Jun 2017 18:36:06 GMT):
the one called "installing a developer environment"
andreaslbauer (Thu, 15 Jun 2017 18:36:06 GMT):
This one for me: https://hyperledger.github.io/composer/tutorials/developer-guide.html
andreaslbauer (Thu, 15 Jun 2017 18:36:43 GMT):
I deployed the bna successfully to the hosted and local playgrounds.
andreaslbauer (Thu, 15 Jun 2017 18:43:02 GMT):
A few more bits of information for my scenario (I think emlorc01 has the same): use FABRIC_VERSION=hlfv1, all steps building and unit test and deploy to sand box work fine, it is the deploy to local fabric that fails with this error
emlorc01 (Thu, 15 Jun 2017 18:43:22 GMT):
yes. same for me
davidkel (Thu, 15 Jun 2017 18:45:11 GMT):
@emlorc01 you aren't specifying the connection profile in your command. You need to specify
`composer network deploy -a ./my-network.bna -i PeerAdmin -s abc -p hlfv1`
you need to ensure you have run the `createComposerProfile.sh` script as this creates the hlfv1 profile and sets up the PeerAdmin userid
davidkel (Thu, 15 Jun 2017 18:46:55 GMT):
@theophoric you haven't specified a profile, therefore it will create and use a default profile which only works with hlf v0.6. If you followed the tutorials then the hlfv1 profile will have been created for you. so for your command do the following
`composer network deploy -a fitchain-composer@0.0.1.bna -i admin -s adminpw -p hlfv1`
emlorc01 (Thu, 15 Jun 2017 18:47:38 GMT):
oh! it worked now
theophoric (Thu, 15 Jun 2017 18:47:51 GMT):
yup.. good catch thanks
emlorc01 (Thu, 15 Jun 2017 18:48:09 GMT):
oh dear I feel silly for forgetting that, I did run the script to set up the profile but apparently missed it in the deploy command
emlorc01 (Thu, 15 Jun 2017 18:49:36 GMT):
thanks very much @davidkel & @dselman !
davidkel (Thu, 15 Jun 2017 18:49:42 GMT):
@emlorc01 no worries, glad you are up and running
jaguarg (Thu, 15 Jun 2017 19:09:57 GMT):
Hi @davidkel thank you so much. All good now
dselman (Thu, 15 Jun 2017 19:11:49 GMT):
:thumbsup:
dselman (Thu, 15 Jun 2017 19:11:59 GMT):
Better error messages needed...
davidkel (Thu, 15 Jun 2017 19:17:31 GMT):
@dselman don't think hyperledger fabric 1.0 will be doing anything about this
davidkel (Thu, 15 Jun 2017 19:17:31 GMT):
@dselman don't think hyperledger fabric 1.0 will be doing anything about this, hopefully post 1.0 things will improve
dselman (Thu, 15 Jun 2017 19:44:03 GMT):
Shout out to @tobiashunter for his great job updating the graphics (which have turned into videos!) for the Developer Tutorial. Very slick! https://hyperledger.github.io/composer/tutorials/developer-guide.html
andreaslbauer (Thu, 15 Jun 2017 19:51:12 GMT):
I still get the error on deployment. Here is the command I am using, it does have the generated profile name specified with -p: composer network deploy -a my-network.bna -i PeerAdmin -s randomString -p hlfv1. Probably I am missing something very simple.
davidkel (Thu, 15 Jun 2017 19:56:37 GMT):
@andreaslbauer can you provide the error just to make sure it is the same, then could you do a docker ps and post the results ?
andreaslbauer (Thu, 15 Jun 2017 19:58:03 GMT):
I think I found something. Let me try something and I will let you know whether I figured it out.
andreaslbauer (Thu, 15 Jun 2017 20:00:41 GMT):
Ok, here is the error: andy@hyperledgerdev:~/my-network/dist$ composer network deploy -a ./my-network.bna -i PeerAdmin -s abc -p hlfv1
Deploying business network from archive: ./my-network.bna
Business network definition:
Identifier: my-network@0.0.10
Description: The Hello World of Hyperledger Composer samples
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/home/andy/.nvm/versions/node/v6.11.0/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._receiveStatus (/home/andy/.nvm/versions/node/v6.11.0/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:180:8)
at /home/andy/.nvm/versions/node/v6.11.0/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:649:14
andy@hyperledgerdev:~/my-network/dist$
andreaslbauer (Thu, 15 Jun 2017 20:01:06 GMT):
docker ps output: andy@hyperledgerdev:~/my-network/dist$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7ad7361aaa87 hyperledger/fabric-peer:x86_64-1.0.0-beta "peer node start -..." About an hour ago Up About an hour 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
fe922143427d hyperledger/fabric-couchdb:x86_64-1.0.0-beta "tini -- /docker-e..." About an hour ago Up About an hour 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
1612433776e0 hyperledger/fabric-orderer:x86_64-1.0.0-beta "orderer" About an hour ago Up About an hour 0.0.0.0:7050->7050/tcp orderer.example.com
0e88395378d0 hyperledger/fabric-ca:x86_64-1.0.0-beta "sh -c 'fabric-ca-..." About an hour ago Up About an hour 0.0.0.0:7054->7054/tcp ca.example.com
andreaslbauer (Thu, 15 Jun 2017 20:01:50 GMT):
I noticed the enrollment secret string in the connection profile is empty: https://hyperledger.github.io/composer/tutorials/developer-guide.html
andreaslbauer (Thu, 15 Jun 2017 20:02:07 GMT):
Sorry, meant to paste: cat /home/andy/.hfc-key-store/PeerAdmin
{"name":"PeerAdmin","mspid":"Org1MSP","roles":null,"affiliation":"","enrollmentSecret":"","enrollment":{"s....
andreaslbauer (Thu, 15 Jun 2017 20:02:40 GMT):
and this is probably what needs to be specified with -s when deploying. How do I set it?
davidkel (Thu, 15 Jun 2017 20:07:21 GMT):
@andreaslbauer PeerAdmin is just a label for the crypto material that should already be your KeyValStore so no enrollmentSecret is required. Can you confirm you have composer v0.8.0 ?
davidkel (Thu, 15 Jun 2017 20:07:21 GMT):
@andreaslbauer PeerAdmin is just a label for the crypto material that should already be your KeyValStore so no enrollmentSecret is required. Can you confirm you have composer v0.8.0 ? `composer -v`
andreaslbauer (Thu, 15 Jun 2017 20:13:25 GMT):
composer -v reports v0.7.5
davidkel (Thu, 15 Jun 2017 20:14:07 GMT):
@andreaslbauer ah, that's the problem only v0.8.0 will work with hyperledger fabric 1.0 beta
andreaslbauer (Thu, 15 Jun 2017 20:15:10 GMT):
Got it. Thank you so much!
dselman (Thu, 15 Jun 2017 20:20:28 GMT):
The vehicle-lifecycle-demo source code has been published: https://github.com/hyperledger/composer-sample-applications/tree/master/packages
dselman (Thu, 15 Jun 2017 20:20:48 GMT):
More details on how to run it will be coming shortly, but this is a flagship demo application built using Composer.
dselman (Thu, 15 Jun 2017 20:25:49 GMT):
The business network for the demo has been updated to use a query:
dselman (Thu, 15 Jun 2017 20:25:50 GMT):
https://github.com/hyperledger/composer-sample-networks/blob/master/packages/vehicle-lifecycle-network/lib/vda.js
dselman (Thu, 15 Jun 2017 20:25:50 GMT):
https://github.com/hyperledger/composer-sample-networks/blob/master/packages/vehicle-lifecycle-network/lib/vda.js#L85
dselman (Thu, 15 Jun 2017 20:25:59 GMT):
`scrapAllVehiclesByColour`
jorgedr (Thu, 15 Jun 2017 20:42:06 GMT):
Thanks @dselman
dselman (Thu, 15 Jun 2017 20:44:11 GMT):
We'd love feedback on queries -- we are continuing to work on this, including designing the query language: https://github.com/hyperledger/composer/issues/1234
dselman (Thu, 15 Jun 2017 20:44:11 GMT):
We'd love feedback on queries -- we are continuing to work on this, including designing the Composer query language: https://github.com/hyperledger/composer/issues/1234
dselman (Thu, 15 Jun 2017 20:46:33 GMT):
Note that queries **only** work when running against HLFv1-beta1
Mattasher (Thu, 15 Jun 2017 20:52:57 GMT):
@dselman To make sure I'm understanding the system, this compiles down to code that runs on Fabric and gives us a guarantee that when the transaction is run on the latest "live" data based on the derived state from all committed transactions up to that moment (including whatever happens first based on the ordering service for that block).
dselman (Thu, 15 Jun 2017 20:54:17 GMT):
Yes. The transactional model is identical, irrespective of whether you use Composer or base Fabric.
Mattasher (Thu, 15 Jun 2017 20:55:40 GMT):
tks
lbennett (Thu, 15 Jun 2017 22:58:50 GMT):
question - going through the car auction sample - it says to "Click Authenticate with GitHub then log into your GitHub account and click Authorize application." - but I don't see a button with "authenticate with Github" in the playground tool.
lbennett (Thu, 15 Jun 2017 22:58:51 GMT):
Message Attachments
dselman (Thu, 15 Jun 2017 23:00:09 GMT):
It is on the dialog you get when you press "Import/Replace" bottom left.
lbennett (Fri, 16 Jun 2017 03:45:30 GMT):
ok- tx!
lbennett (Fri, 16 Jun 2017 03:58:08 GMT):
Message Attachments
lbennett (Fri, 16 Jun 2017 03:59:26 GMT):
interesting - I still don't see it - I see the sample networks
rama_rahul (Fri, 16 Jun 2017 05:55:57 GMT):
Generally after you authenticate with github you get to see the sample networks. Maybe it automatically authenticated you. No need to worry about that.
deepakvparmar (Fri, 16 Jun 2017 05:56:25 GMT):
@dselman : While creating Participant through rest-server loopback API, I am getting following response :
{
"$class": "org.suppchain.SupplierChainParticipant",
"participantId": [
null,
null
],
"identity": "deepak",
"type": "oem"
}
Why Participant ID is null and why its returning array of participant ID?
deepakvparmar (Fri, 16 Jun 2017 05:56:42 GMT):
Response Code is : 200
akshay111meher (Fri, 16 Jun 2017 06:04:12 GMT):
updated my composer version from 0.7.2 to 0.8.0 ...
getting this error
*Error: error trying install chaincode. Error: failed to obtain cds for lscc - transaction not found lscc*
akshay111meher (Fri, 16 Jun 2017 06:11:59 GMT):
downgraded back to 0.7.5 and it is working....
what is new in 0.8.0??
paapighoda (Fri, 16 Jun 2017 06:26:49 GMT):
Has joined the channel.
dselman (Fri, 16 Jun 2017 06:31:44 GMT):
@deepakvparmar this looks like this bug https://github.com/hyperledger/composer/issues/1253
dselman (Fri, 16 Jun 2017 06:32:16 GMT):
Is your model similar to the one described in the issue?
dselman (Fri, 16 Jun 2017 06:32:49 GMT):
@akshay111meher please refer to the release notes: https://github.com/hyperledger/composer/releases/tag/v0.8.0
paapighoda (Fri, 16 Jun 2017 06:43:40 GMT):
Has left the channel.
deepakvparmar (Fri, 16 Jun 2017 06:46:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6kn9QCtSCAQbwQ2pw) @dselman : No Selman,
My request : curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ \
"$class": "org.suppchain.PurchaseOrder", \
"orderId": "o1", \
"createdBy": "p1", \
"assignedTo": "p2", \
"description": "Engine", \
"status": "created", \
"quantity": 1, \
"assetId": "asset1" \
}' 'http://localhost:3000/api/PurchaseOrder'
Getting Response in Return :
{
"$class": "org.suppchain.PurchaseOrder",
"orderId": [
null,
null
],
"createdBy": "p1",
"assignedTo": "p2",
"description": "Engine",
"status": "created",
"quantity": 1,
"assetId": "asset1"
}
Why its returning array of orderId? it is single filed.
dselman (Fri, 16 Jun 2017 06:47:28 GMT):
What does the model look like?
deepakvparmar (Fri, 16 Jun 2017 06:48:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WF8dqwWiZ23mQ4uZY) @dselman :
asset PurchaseOrder identified by orderId {
o String orderId
--> SupplierChainParticipant createdBy
--> SupplierChainParticipant assignedTo
o String description
o String status
o Integer quantity
o String assetId
}
mattalhonte (Fri, 16 Jun 2017 07:09:45 GMT):
Anyone used Composer with Sawtooth?
sstone1 (Fri, 16 Jun 2017 07:12:34 GMT):
@mattalhonte currently Composer does not support Sawtooth, but it has been designed in such a way that it could be ported to Sawtooth or other Blockchain platforms.
mattalhonte (Fri, 16 Jun 2017 07:14:17 GMT):
K, thanks!
dselman (Fri, 16 Jun 2017 07:42:41 GMT):
@deepakvparmar that looks like a bug to me. I have created this issue to track it: https://github.com/hyperledger/composer/issues/1295
sstone1 (Fri, 16 Jun 2017 07:44:30 GMT):
@mattalhonte if you'd be interested in working on that port, let me know - there are plans for a call in a couple of weeks between the composer & sawtooth teams to discuss the potential for collaboration.
deepakvparmar (Fri, 16 Jun 2017 08:06:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wMtRJF3ZnEgF6TsNB) @dselman : Ohh.... Now, I will have to create own response object to convince jackson in my java layer.... :(
mattalhonte (Fri, 16 Jun 2017 08:10:15 GMT):
Hey, possibly! :)
deepakvparmar (Fri, 16 Jun 2017 08:10:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=guJAyoNP6iKuwxkni) @sstone1 : How hyperledger composer would able to port bna into another blockchain platform? If you could share some insight of architecture then It would be great.
uber.twin (Fri, 16 Jun 2017 08:13:02 GMT):
hi, I did a composer-cli uninstall/ install, expecting to get the version 0.8, but the "composer -v" produces the following
uber.twin (Fri, 16 Jun 2017 08:13:04 GMT):
pg@pg-GL552JX:~$ composer -v
composer-cli v0.4.4
composer-admin v0.4.4
composer-client v0.4.4
composer-common v0.4.4
composer-runtime-hlf v0.4.4
composer-connector-hlf v0.4.4
uber.twin (Fri, 16 Jun 2017 08:14:49 GMT):
the installation log ends like this
uber.twin (Fri, 16 Jun 2017 08:14:51 GMT):
+ composer-cli@0.8.0
added 1093 packages and updated 1 package in 83.866s
uber.twin (Fri, 16 Jun 2017 08:15:30 GMT):
so are the reported versions relevant?
sstone1 (Fri, 16 Jun 2017 08:22:07 GMT):
@deepakvparmar the REST server bug with [null, null] is an existing issue that we fixed - please can you upgrade to the latest version? v0.8.0 does not have the issue.
deepakvparmar (Fri, 16 Jun 2017 08:22:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QTHJdGMTy9qBQa3ts) @sstone1 : I need to upgrade all npm modules related to composer?
sstone1 (Fri, 16 Jun 2017 08:22:50 GMT):
correct
deepakvparmar (Fri, 16 Jun 2017 08:23:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HaadHuqmtzqkTaKeG) @sstone1 : Thank You Stone :)
sstone1 (Fri, 16 Jun 2017 08:23:02 GMT):
because it's a major version bump you will also need to deploy the business network again.
sstone1 (Fri, 16 Jun 2017 08:23:29 GMT):
@deepakvparmar and for your next question - Composer provides a layer of abstraction on top of a Blockchain platform. Currently 90% of the code in Composer has no idea that it is working with Hyperledger Fabric - it's been designed from the start to be portable.
sstone1 (Fri, 16 Jun 2017 08:23:52 GMT):
As long as a Blockchain platform supports the ability to execute JavaScript (and Sawtooth does) then we should be able to port the Composer code to run on it.
sstone1 (Fri, 16 Jun 2017 08:25:09 GMT):
It is a matter of porting the 10% of Composer code that is dependent on the Blockchain platform. There are two bits to this: 1) the connectors, which allow the Composer client to send requests to the Blockchain and 2) the runtime containers, which let the Composer runtime use the underlying Blockchain APIs (think GetState()/PutState() in Fabric).
deepakvparmar (Fri, 16 Jun 2017 08:27:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Lu7ZXJxL5tFP3TQhf) @sstone1 : It would awesome if composer would be completely decoupled from fabric :D , I am hoping that composer is going to rule hyperledger kingdom :)
sstone1 (Fri, 16 Jun 2017 08:28:08 GMT):
me too ;)
sstone1 (Fri, 16 Jun 2017 08:28:23 GMT):
there's some slides on the Composer architecture here if you haven't seen them: https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture
deepakvparmar (Fri, 16 Jun 2017 08:31:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=STc5ppKxCSKEdkiiC) @sstone1 : Thank You Stone :)
sstone1 (Fri, 16 Jun 2017 08:31:30 GMT):
np
davidkel (Fri, 16 Jun 2017 08:56:12 GMT):
@uber.twin did you uninstall and install globally ? ie `npm uninstall -g composer-cli`, `npm install -g composer-cli` ?
djarillo (Fri, 16 Jun 2017 08:58:08 GMT):
Has joined the channel.
djarillo (Fri, 16 Jun 2017 09:09:12 GMT):
Hello everyone. I'm a new member in this comunity and need support. I following the tutorial to create a new Hyperledger Composer solution (https://hyperledger.github.io/composer/tutorials/developer-guide.html) but when i try deploy to the running Hyperledger Fabric 'composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString' i have this errror
W
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event cre
ator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/home/diego/.nvm/versions/node/v6.11.0/lib/node_modules/composer-cli/node_modules/grpc
/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/home/diego/.nvm/versions/node/v6.11.0/lib/node_modules/composer-cli/node_modules/grpc/sr
c/node/src/client.js:169:8)
at /home/diego/.nvm/versions/node/v6.11.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
djarillo (Fri, 16 Jun 2017 09:09:12 GMT):
Hello everyone. I'm a new member in this comunity and need support. I following the tutorial to create a new Hyperledger Composer solution (https://hyperledger.github.io/composer/tutorials/developer-guide.html) but when i try deploy to the running Hyperledger Fabric 'composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString' i have this errror
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event cre
ator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/home/diego/.nvm/versions/node/v6.11.0/lib/node_modules/composer-cli/node_modules/grpc
/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/home/diego/.nvm/versions/node/v6.11.0/lib/node_modules/composer-cli/node_modules/grpc/sr
c/node/src/client.js:169:8)
at /home/diego/.nvm/versions/node/v6.11.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
deepakvparmar (Fri, 16 Jun 2017 09:09:20 GMT):
@sstone1 @dselman : Is there any way in hyperledger composer that we can fetch smart contract into golang code after deploying bna file using composer?
sstone1 (Fri, 16 Jun 2017 09:11:06 GMT):
@deepakvparmar there is no Go code being generated when you deploy a business network. The only Go code is the generic Composer runtime which understands and executes your business network definition.
sstone1 (Fri, 16 Jun 2017 09:12:23 GMT):
Generic Composer runtime === our chaincode/smart contract which is used for all deployed business networks.
mbwhite (Fri, 16 Jun 2017 09:12:24 GMT):
@djarillo With that error I believe you are using the lastest Hypleder Composer version but with an older alpha probably level of Hyperledger Fabric
deepakvparmar (Fri, 16 Jun 2017 09:12:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3GqzNFeHmSr8Ckdgw) @sstone1 : Interesting, then what composer is deploying on fabric? We are only deploying network on composer runtime, then what is going into fabric?
sstone1 (Fri, 16 Jun 2017 09:13:12 GMT):
Our Composer runtime and your busines network definition get deployed to the Fabric. Our Composer runtime
sstone1 (Fri, 16 Jun 2017 09:13:28 GMT):
is the chaincode and your business network definition is stored in the world state.
djarillo (Fri, 16 Jun 2017 09:15:51 GMT):
@mbwhite I'm following step by step the tutorial and the installed version of Hyperledger Composer is the hlfv1.
deepakvparmar (Fri, 16 Jun 2017 09:16:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oB3HxgHSHEC67QiWh) @sstone1 : oh god.... how come i can use hyperledger explorer in future? I mean, If I would like to see blocks and transaction using hyperledger explorer for specific business network deployed using composer.... :thinking:
mbwhite (Fri, 16 Jun 2017 09:17:09 GMT):
@djarillo ... could you run `composer -v` and `docker ps` please so we can see what exact version you've got running.
sstone1 (Fri, 16 Jun 2017 09:18:53 GMT):
@deepakvparmar you'll still see standard Fabric chaincode and blocks in the Hyperledger Explorer - it's just a standard Fabric chaincode under the covers!
sstone1 (Fri, 16 Jun 2017 09:19:14 GMT):
Each business network deploys its own copy of the Composer runtime chaincode.
djarillo (Fri, 16 Jun 2017 09:19:21 GMT):
@mbwhite The versions...
composer-cli v0.7.5
composer-admin v0.7.5
composer-client v0.7.5
composer-common v0.7.5
composer-runtime-hlfv1 v0.7.5
hyperledger/fabric-peer:x86_64-1.0.0-beta
sstone1 (Fri, 16 Jun 2017 09:19:25 GMT):
So they are isolated - sorrry if that wasn't clear.
deepakvparmar (Fri, 16 Jun 2017 09:20:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WcKQWhvzc6JmPuJzC) @sstone1 : You mean to say, there will be separate instance of common runtime per business network?
sstone1 (Fri, 16 Jun 2017 09:20:55 GMT):
Yes
mbwhite (Fri, 16 Jun 2017 09:22:28 GMT):
@djarillo so there's a mismatch between the Composer and Fabric back end... we released the 0.8.0 version of composer yesterday.. so it's worth updating to that.
deepakvparmar (Fri, 16 Jun 2017 09:22:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=H5PzfD9A2PzQAthaC) @sstone1 : Cool, Thanks again stone :)
sstone1 (Fri, 16 Jun 2017 09:23:36 GMT):
Np!
zupan (Fri, 16 Jun 2017 09:37:42 GMT):
Hello, when writing transactions is it intended that transactions also call other transactions? For example, if a transaction is complex and I want to decouple creation of certain asset to another transaction...
rohilsurana (Fri, 16 Jun 2017 10:11:50 GMT):
Has joined the channel.
karthikworks (Fri, 16 Jun 2017 10:12:21 GMT):
I have upgraded to 0.8.0 ... i have also gone through the release notes... but while deploying i get this error ``` "Error: error trying deploy. Error: Failed to deserialize creator identity, err MSP Org1MSP is unknown"``` ... This is the deploy command ```"sudo composer network deploy -i PeerAdmin -s adminpw -a test-dev-network.bna -p hlfv1"```
karthikworks (Fri, 16 Jun 2017 10:12:21 GMT):
I have upgraded to 0.8.0 ... i have also gone through the release notes... but while deploying i get this error ``` Error: error trying deploy. Error: Failed to deserialize creator identity, err MSP Org1MSP is unknown``` This is the deploy command ```sudo composer network deploy -i PeerAdmin -s adminpw -a test-dev-network.bna -p hlfv1```
djarillo (Fri, 16 Jun 2017 10:19:59 GMT):
@karthikworks Firts, npm install and then run your command
karthikworks (Fri, 16 Jun 2017 10:21:36 GMT):
@djarillo what should we npm install ?
rohilsurana (Fri, 16 Jun 2017 10:22:26 GMT):
Hi was just trying out composer and noticed that none of the examples resembles model required for a cryptocurrency. Can anyone help me out with just this. Point me to any link?
djarillo (Fri, 16 Jun 2017 10:25:14 GMT):
@karthikworks npm install is the same that compile again your project. If you have a updgraded version of your composer.. you need compile your proyect with this version.. npm install
davidkel (Fri, 16 Jun 2017 10:27:03 GMT):
@karthikworks could you describe how you have set up your fabric ?
karthikworks (Fri, 16 Jun 2017 10:42:05 GMT):
@davidkel i have followed the same steps again... https://hyperledger.github.io/composer/installing/development-tools.html
karthikworks (Fri, 16 Jun 2017 10:45:29 GMT):
@djarillo is that really needed, because for previous versions we did not face this issue..
davidkel (Fri, 16 Jun 2017 10:45:48 GMT):
@karthikworks The error sounds like a fabric setup problem. There are a couple of commands that get run with the startFabric.sh command which create the channel and join the peer to the channel and it sounds like these aren't needed.
davidkel (Fri, 16 Jun 2017 10:45:48 GMT):
@karthikworks The error sounds like a fabric setup problem. There are a couple of commands that get run with the startFabric.sh command which create the channel and join the peer to the channel and it sounds like these aren't doing the right thing
karthikworks (Fri, 16 Jun 2017 10:47:06 GMT):
@davidkel oh ok... let me check the logs to see was there any error while it was downloading or setting up things..
davidkel (Fri, 16 Jun 2017 10:48:03 GMT):
@karthikworks Also be worth looking at the output from the startFabric.sh command somewhere in there I would hope to see a message saying the peer has joined the channel
karthikworks (Fri, 16 Jun 2017 10:48:38 GMT):
@davidkel sure, let me check and get back to you..
djarillo (Fri, 16 Jun 2017 10:48:39 GMT):
@karthikworks Following this tutorial.. https://hyperledger.github.io/composer/tutorials/developer-guide.html . The firts is .. Generate the Business Network Archive and then you can deploy to Hyperladger. I am new here but I had the same error and it worked for me
uber.twin (Fri, 16 Jun 2017 10:51:39 GMT):
@davidkel yes, used the "-g" flag on both, uninstall and install; not sure how this 0.4 version came up. I had a 0.7.5 previously
uber.twin (Fri, 16 Jun 2017 10:52:20 GMT):
even after uninstalling composer was still available, same 0.4 version
uber.twin (Fri, 16 Jun 2017 11:02:17 GMT):
@davidkel I restarted my system and now it's reporting as expected, v0.8.0
dstarina (Fri, 16 Jun 2017 11:10:46 GMT):
Hi. Question. In my model, I have made two concepts: abstract concept Address and a concept SlovenianAddress (extends Address). I have also created an abstract asset Customer and an asset Person (extends Customer). Customer contains field "o Address customerAddress".
When creating a new Person in composer, of course at first (when dynamically checking the syntax) I get the error: "Error: Cannot instantiate Abstract Type Address in namespace com.ibm.si.electricitymarket". I change the class Address to SlovenianAddress and dynamic syntax checker does not detect any more errors and "Create New" button gets enabled. However, when clicking "Create New", I get this error again: "Error: Error: Cannot instantiate Abstract Type Address in namespace com.ibm.si.electricitymarket". Any idea?
akshay111meher (Fri, 16 Jun 2017 11:19:10 GMT):
just like *bizNetworkConnection.connect(this.CONNECTION_PROFILE_NAME, this.businessNetworkIdentifier, participantId, participantPwd)* does there exists any function *bizNetworkConnection.disconnect()*
karthikworks (Fri, 16 Jun 2017 11:50:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=N7Xsr2azKu9TyNWXG) @djarillo We have generated the business network long back.. i am trying the same .bna file on fabric 1.0 beta..
dselman (Fri, 16 Jun 2017 12:10:56 GMT):
Just to be clear for everyone... the BNA file (business network archive) is completely independent of Fabric version. I.e a BNA file you created with version 0.7 of Composer and tested with version 0.6 of Fabric should work unchanged with Composer 0.8 and Fabric v1-beta1. HOWEVER -- you will need to install the v0.8 composer-cli and HLF runtime and redeploy the network when you upgrade.
dselman (Fri, 16 Jun 2017 12:10:56 GMT):
Just to be clear for everyone... the BNA file (business network archive) is completely independent of Fabric version. I.e a BNA file you created with version 0.7 of Composer and tested with version 0.6 of Fabric should work unchanged with Composer 0.8 and Fabric v1-beta1. HOWEVER -- you will need to install the v0.8 composer-cli and HLF runtime and redeploy the BNA when you upgrade.
FelixNielsen (Fri, 16 Jun 2017 12:18:23 GMT):
just curious - what about backup of the composer state db and the hyperledger? - if a restore is needed? is that even possible
davidkel (Fri, 16 Jun 2017 12:22:16 GMT):
@FelixNielsen Composer will be using whatever is provided by the hyperledger fabric system it uses. I would suggest asking on the #fabric or #fabric-questions channel about operational aspects of fabric such as disaster recovery
FelixNielsen (Fri, 16 Jun 2017 12:23:10 GMT):
alright but composer have its own database right? or is every thing stored with hyperledger?
dselman (Fri, 16 Jun 2017 12:23:55 GMT):
Composer stores everything on the blockchain.
john2000 (Fri, 16 Jun 2017 12:36:06 GMT):
Has joined the channel.
dstarina (Fri, 16 Jun 2017 12:48:25 GMT):
Can you explain a little about how ACLs work? If I shouldn't have access to read some data, is it somehow encrypted or is it just protected with programming logic (so if I had DB access I would be able to read it)?
silliman (Fri, 16 Jun 2017 14:41:06 GMT):
I'm working with Composer 0.8.0 and I noticed that the digitalproperty-network package in composer-sample-applications repo is calling for unstable versions of composer-client ... is this required or could I change it to ^0.8.0 ... when playing with the other tools like rest server I get a mismatch between chaincode and client, e.g. . Error: Deployed chain-code (0.8.1-20170616012224) is incompatible with client (0.8.0)
davidkel (Fri, 16 Jun 2017 14:51:11 GMT):
@silliman that's a bug and you can change it to point to 0.8.0
silliman (Fri, 16 Jun 2017 14:52:03 GMT):
@davidkel cool tx will do just wanted to avoid going down a rabbit hole if you knew that wasn't gonna work :-)
Binay1 (Fri, 16 Jun 2017 14:54:43 GMT):
A quick question, how do I change docker compose.yml from the dev tutorial on the docs (https://hyperledger.github.io/composer/tutorials/developer-guide.html) to distribute it across my network ?
dselman (Fri, 16 Jun 2017 15:00:32 GMT):
@dstarina the latter. StackOverflow has several Q&As on ACLs
davidkel (Fri, 16 Jun 2017 15:04:14 GMT):
@silliman thanks for finding that :-)
rohilsurana (Fri, 16 Jun 2017 15:20:57 GMT):
Hi I am not sure about this, I know we can create fields, but can we store a file using hyperledger composer?
nkl199 (Fri, 16 Jun 2017 15:22:24 GMT):
not to my knowledge, though you could store a URL to where the file is stored on an external system
mbwhite (Fri, 16 Jun 2017 15:29:10 GMT):
@silliman a PR is currently going through Travis-CI to fix that issues...
rohilsurana (Fri, 16 Jun 2017 15:29:35 GMT):
@nkl199 ok thanks
LordGoodman (Fri, 16 Jun 2017 15:34:06 GMT):
Has joined the channel.
Binay1 (Fri, 16 Jun 2017 15:58:14 GMT):
Message Attachments
Binay1 (Fri, 16 Jun 2017 15:58:17 GMT):
Getting this error when trying to deploy a business definition on a local fabric
rohilsurana (Fri, 16 Jun 2017 16:17:58 GMT):
@Binay1 there must be a problem in the definition of the network
rohilsurana (Fri, 16 Jun 2017 16:18:31 GMT):
Check the ACL file first it could be there.
GrahamCharters (Fri, 16 Jun 2017 16:29:00 GMT):
Hi, I'm trying to work with the API to create a ScrapMerchant in the vehicle lifecycle sample and the API is confusing me. One of the fields is an array of strings:
"managers": [
"string"
]
When I look at the model, a Manager is an Employee is a Person, but none of these things have identifiers, so I can't create them and refer to them is this fields. It's therefore not clear what I should provide.
I'm wondering if this is related to https://github.com/hyperledger/composer/issues/1055
rohilsurana (Fri, 16 Jun 2017 16:36:35 GMT):
@GrahamCharters I was wondering where are the models for the vehicle lifecycle sample?
GrahamCharters (Fri, 16 Jun 2017 16:51:08 GMT):
@rohilsurana https://github.com/hyperledger/composer-sample-models/tree/master/packages/vehicle-lifecycle-model/models
klorenz (Fri, 16 Jun 2017 16:51:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7vhH75vg8QKwTmGDf) @karthikworks I'm having similar issues (with a network that previously worked) upon leveraging the v.0.8 and the fabric-beta (per setup scripts). Were you able to resolve your composer network deploy error?
Mattasher (Fri, 16 Jun 2017 16:53:04 GMT):
@sstone1 Is there an example for the cucumber .feature testing file that uses complex types (enum and references & arrays)
dklesev (Fri, 16 Jun 2017 16:57:04 GMT):
@dselman is the new vehicle-lifecycle-demo compatible with fabric-beta?
dselman (Fri, 16 Jun 2017 16:59:02 GMT):
Yes, but the Docker image that is builds is still based on HLFv1-alpha1 -- we still need to update the scripts
dklesev (Fri, 16 Jun 2017 17:04:25 GMT):
ok thx
davidkel (Fri, 16 Jun 2017 17:12:47 GMT):
@binay1 the error says that the ca server isn't contactable. Check that the connection profile is pointing to the correct ca server and check your ca server is up and running.
davidkel (Fri, 16 Jun 2017 17:16:48 GMT):
@klorenz what error are you getting when you try to deploy ? could you also paste `composer -v` and `docker ps` outputs
klorenz (Fri, 16 Jun 2017 17:18:16 GMT):
'klorenz@ubuntu:~/github/customs/network$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
487826ce74c1 hyperledger/fabric-peer:x86_64-1.0.0-beta "peer node start --pe" 55 minutes ago Up 55 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
184ee9ce5d11 hyperledger/fabric-couchdb:x86_64-1.0.0-beta "tini -- /docker-entr" 55 minutes ago Up 55 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
54afc49b59a6 hyperledger/fabric-orderer:x86_64-1.0.0-beta "orderer" 55 minutes ago Up 55 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
b4d460114622 hyperledger/fabric-ca:x86_64-1.0.0-beta "sh -c 'fabric-ca-ser" 55 minutes ago Up 55 minutes 0.0.0.0:7054->7054/tcp ca.example.com
klorenz@ubuntu:~/github/customs/network$ composer network deploy -a customs-network@0.0.1.bna -i PeerAdmin -s adminpw -p hlfv1
Deploying business network from archive: customs-network@0.0.1.bna
Business network definition:
Identifier: customs-network@0.0.1
Description: Customs Network
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: Failed to deserialize creator identity, err MSP Org1MSP is unknown
Command failed
klorenz@ubuntu:~/github/customs$ composer -v
composer-cli v0.8.0
composer-admin v0.8.0
composer-client v0.8.0
composer-common v0.8.0
composer-runtime-hlf v0.8.0
composer-runtime-hlfv1 v0.8.0
davidkel (Fri, 16 Jun 2017 17:53:25 GMT):
@klorenz That error implies that the channel didn't get set up. What level of docker are you running ?
davidkel (Fri, 16 Jun 2017 18:01:20 GMT):
@karthikworks could you confirm the level of docker you were running ? that might be the problem you are having
sstone1 (Fri, 16 Jun 2017 18:02:20 GMT):
@Mattasher let me check... I think you're into JSON territory at that point
sstone1 (Fri, 16 Jun 2017 18:02:31 GMT):
enums and references are OK
sstone1 (Fri, 16 Jun 2017 18:02:36 GMT):
concepts and arrays need JSON
sstone1 (Fri, 16 Jun 2017 18:03:18 GMT):
there are examples of Cucumber tables vs JSON in the unit tests here: https://github.com/hyperledger/composer/blob/master/packages/composer-cucumber-steps/features/assets.feature
klorenz (Fri, 16 Jun 2017 18:06:36 GMT):
@davidkel Docker version 1.12.3, build 6b644ec
davidkel (Fri, 16 Jun 2017 18:08:11 GMT):
@klorenz ahh, that's the problem last release we moved the minimum docker level to 17.03 and it is definitely needed for v0.8.0 now
gen_el (Fri, 16 Jun 2017 18:11:32 GMT):
how do i use composer with an ibm.bluemix hlfv1 network?
gen_el (Fri, 16 Jun 2017 18:12:40 GMT):
i created a profile connection.json file with the network's service credentials.
gen_el (Fri, 16 Jun 2017 18:13:44 GMT):
When i attempted to deploy a bna file, it returned this error:
*Error: Failed to load connector module "composer-connector-undefined" for connection profile "MyProfile"
Command failed*
gen_el (Fri, 16 Jun 2017 18:14:01 GMT):
@here
klorenz (Fri, 16 Jun 2017 18:27:40 GMT):
@davidkel - Thanks... I'll be going through the steps to reinstall the pre-reqs.
mattalhonte (Fri, 16 Jun 2017 19:53:14 GMT):
REST stopped working.
```Discovering types from business network definition ...
Connection fails: Error: failed to obtain cds for tanktwo.demo - transaction not found tanktwo.demo/mychannel
It will be retried for the next request.
{ Error: failed to obtain cds for tanktwo.demo - transaction not found tanktwo.demo/mychannel
at /home/ubuntu/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:434:17 code: 2, metadata: Metadata { _internal_repr: {} } }```
mattalhonte (Fri, 16 Jun 2017 19:53:32 GMT):
Which is doubly lame because it was totally working a few days ago :/
davidkel (Fri, 16 Jun 2017 20:05:05 GMT):
@mattalhonte do you mean rest suddenly stopped working and nothing has been changed or you have made changes and it's stopped working ?
mattalhonte (Fri, 16 Jun 2017 20:05:34 GMT):
I don't recall making any changes. I did stop it and start it back up.
davidkel (Fri, 16 Jun 2017 20:06:45 GMT):
@just the rest server ? The error you describe looks as though you are trying to working with a totally clean fabric which has no business network deployed
davidkel (Fri, 16 Jun 2017 20:06:45 GMT):
@just the rest server ? The error you describe looks as though you are trying to work with a totally clean fabric which has no business network deployed
mattalhonte (Fri, 16 Jun 2017 20:09:03 GMT):
Since then, I tried cleaning Fabric. I did
```docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
./stopFabric.sh
./teardownFabric.sh
./downloadFabric.sh
./startFabric.sh
./createComposerProfile.sh```
mattalhonte (Fri, 16 Jun 2017 20:09:11 GMT):
But it wasn't working before then either
mattalhonte (Fri, 16 Jun 2017 20:10:37 GMT):
did that make things worse maybe?
mattalhonte (Fri, 16 Jun 2017 20:14:27 GMT):
oh, whoops
mattalhonte (Fri, 16 Jun 2017 20:16:18 GMT):
I see now. Had to redeploy the network.
mattalhonte (Fri, 16 Jun 2017 20:16:33 GMT):
No clue why it broke before, but working now. Thanks! :)
davidkel (Fri, 16 Jun 2017 20:18:10 GMT):
@mattalhonte phew, glad you are back and working. :-)
mattalhonte (Fri, 16 Jun 2017 20:19:58 GMT):
Anyone upgraded to Fabric 1.0 Beta?
mattalhonte (Fri, 16 Jun 2017 20:26:09 GMT):
Oh, also, for Angular apps - trying to get it to display Transactions as well as assets. I notice a lot of commented-out code referring to Transactions - how hard would it be to jury-rig something that displayed Transactions too?
klorenz (Fri, 16 Jun 2017 21:46:33 GMT):
@davidkel - Thanks! Ran the ./prereqs-ubuntu.sh which fixed the error.
javiercuicapuza (Fri, 16 Jun 2017 21:59:14 GMT):
Has joined the channel.
ianco (Fri, 16 Jun 2017 22:07:34 GMT):
@mattalhonte re transactions, I added transactions to the demo app, it's in my github repo here https://github.com/ianco/fabric-app
ianco (Fri, 16 Jun 2017 22:07:55 GMT):
it's just a call to another web service
mattalhonte (Fri, 16 Jun 2017 22:08:11 GMT):
Awesome, thanks!!!!!
ianco (Fri, 16 Jun 2017 22:08:48 GMT):
If you explore the http services available (localhost:3000/explorer) you ca see all the web services available
ianco (Fri, 16 Jun 2017 22:09:06 GMT):
Same question as you on the Fabric 1.0 Beta ...
mattalhonte (Fri, 16 Jun 2017 22:09:11 GMT):
I thought I was gonna have to learn a bunch of stuff about Yoeman in order to have it show up in the Angular app, heh. https://github.com/ianco/fabric-app
ianco (Fri, 16 Jun 2017 22:10:02 GMT):
you'll have to learn eventually ;-)
mattalhonte (Fri, 16 Jun 2017 22:10:35 GMT):
Sooomeday, definitely!
dselman (Fri, 16 Jun 2017 22:44:14 GMT):
@ianco if you can generalize that we'd love to see the Yeoman templates updated to generate components to view and submit transactions.
dselman (Fri, 16 Jun 2017 22:45:00 GMT):
Templates are here: https://github.com/hyperledger/composer/tree/master/packages/generator-hyperledger-composer/generators/angular/templates
ianco (Fri, 16 Jun 2017 22:58:59 GMT):
@dselman I'll take a look this weekend ...
ianco (Fri, 16 Jun 2017 22:59:36 GMT):
has composer been tested against the fabric beta or rc1 release yet?
dselman (Fri, 16 Jun 2017 22:59:57 GMT):
Yes, it support v0.6 AND HLF v1-beta1
dselman (Fri, 16 Jun 2017 22:59:57 GMT):
Yes, it supports v0.6 AND HLF v1-beta1
dselman (Fri, 16 Jun 2017 23:00:50 GMT):
i.e. `hyperledger/fabric-peer:x86_64-1.0.0-beta`
dselman (Fri, 16 Jun 2017 23:00:52 GMT):
docker images
ianco (Fri, 16 Jun 2017 23:01:00 GMT):
ok thanks
jdockter (Sat, 17 Jun 2017 02:15:07 GMT):
@dselman where can I find the cto file for the vehicle-lifecycle-network, https://github.com/hyperledger/composer-sample-networks/tree/master/packages/vehicle-lifecycle-network ?
Binay1 (Sat, 17 Jun 2017 02:20:35 GMT):
Message Attachments
Binay1 (Sat, 17 Jun 2017 02:20:49 GMT):
How do I get around this one ?
sstone1 (Sat, 17 Jun 2017 07:45:55 GMT):
@jdockter they are in a separate `vehicle-lifecycle-models` package here: https://github.com/hyperledger/composer-sample-models/tree/master/packages/vehicle-lifecycle-model/models
sstone1 (Sat, 17 Jun 2017 07:47:08 GMT):
@Binay1 if you are using HLFv1 beta 1 (Composer v0.8.0) then you need to deploy a business network using a peer admin user ID - when you use the `fabric-dev-servers` provided by Composer this is the `PeerAdmin` ID
sstone1 (Sat, 17 Jun 2017 07:47:22 GMT):
`admin` does not have permission to install chaincode onto a peer
davidkel (Sat, 17 Jun 2017 08:00:51 GMT):
I have created some stackoverflow items of the common problems being hit when moving to composer v0.8.0. If anyone is having problems deploying business networks with stackoverflow may have the answer
davidkel (Sat, 17 Jun 2017 08:00:51 GMT):
I have created some stackoverflow items of the common problems being hit when moving to composer v0.8.0. If anyone is having problems deploying business networks, stackoverflow may have the answer
stormli (Sat, 17 Jun 2017 12:03:53 GMT):
Hi everyone, Here is Storm from IBM z/OS Connect dev team. I have setup hyperledger composer sample vehicle lifecycle. and try to call the restful API provided by this sample. But when I review the swagger of this restful API. I met some issue. I talked to Jake Turner. He suggested me post questions here. Can someone have a look? Thanks.
1. basePath: /api, relativePath: /ScrapVehicle, method: POST. It refer to #/definitions/VehicleTransaction. but there is no definition in this swagger.
2. path /system/transactions/{id} GET
I think this operation is used to get transaction by ID. The response defined in swagger is
"responses": {
"200": {
"description": "Request was successful",
"schema": {
"type": "object"
}
}
it doesn't contain detail format of transaction. I am wondering why detailed format is not provided. Without these detail information, how consumer knows how to format the response?
dselman (Sat, 17 Jun 2017 12:29:50 GMT):
Which version of Composer are you using?
dselman (Sat, 17 Jun 2017 12:29:55 GMT):
`composer --version`
stormli (Sat, 17 Jun 2017 12:51:55 GMT):
I don't know. someone set up it for me. should be the latest version. Let me ask. If you can access IBM network. here is the swagger of our composer server. http://winlnxnz.hursley.ibm.com:44444/explorer/
maybe you can recognize version from this swagger?
stormli (Sat, 17 Jun 2017 13:00:16 GMT):
http://winlnxnz.hursley.ibm.com:44444/explorer/swagger.json Here is the swagger I am looking at.
#/definitions/org_vda_VehicleTransaction is the definition can't be found in swagger.
dstarina (Sat, 17 Jun 2017 13:39:19 GMT):
@dselman Does Composer support multiple channels?
davidkel (Sat, 17 Jun 2017 13:46:15 GMT):
@dstarina Channels are an isolation concept which have their own blockchains, how would you want to use multiple channels ?
dstarina (Sat, 17 Jun 2017 13:50:25 GMT):
@davidkel Sorry, I guess I misunderstook the concept of a channel. So it is not possible to share an asset between different channels? What I really want to know is, how can we insure privacy on the blockchain - when having different competitors using the same blockchain, we don't want them to be able to reverse-enginer blockchain and somehow be able to read the data about their competitors from the blockchain and/or world state database
dstarina (Sat, 17 Jun 2017 13:50:25 GMT):
@davidkel Sorry, I guess I misunderstood the concept of a channel. So it is not possible to share an asset between different channels? What I really want to know is, how can we insure privacy on the blockchain - when having different competitors using the same blockchain, we don't want them to be able to reverse-enginer blockchain and somehow be able to read the data about their competitors from the blockchain and/or world state database
davidkel (Sat, 17 Jun 2017 13:57:46 GMT):
@dstarina No you can't share assets directly, but it is possible to connect external systems to composer so you might be able to use those mechanisms. As for your other question, that is an excellent question and would be good to ask the fabric guys their opinion on this.
dstarina (Sat, 17 Jun 2017 14:00:50 GMT):
@davidkel Will do, thank you
sstone1 (Sat, 17 Jun 2017 14:34:17 GMT):
@davidkel which files do we need to use with `composer identity import` ?
sstone1 (Sat, 17 Jun 2017 14:34:55 GMT):
from the crypto-config directory i mean
davidkel (Sat, 17 Jun 2017 14:50:51 GMT):
@sstone1 you need the file in the keystore and the file from the signer cert
sstone1 (Sat, 17 Jun 2017 14:51:49 GMT):
ta!
davidkel (Sat, 17 Jun 2017 14:52:49 GMT):
@sstone1 the example on this page shows the directory structure if cryptogen was used
https://hyperledger.github.io/composer/reference/composer.identity.import.html
rohilsurana (Sun, 18 Jun 2017 11:34:06 GMT):
Hi, I have been trying of creating a token system using composer but I am unable to understand. for example - for a transfer of tokens, how I can reduce ones asset and increase someone elses at the same time. If I give them the permission to edit there asset they can use the API to increase the value of it?
sstone1 (Sun, 18 Jun 2017 14:33:05 GMT):
@rohilsurana you can specify that an ACL rule only applies in the scope of a transaction, for example:
```
rule R1 {
description: "Test R1"
participant(p): "org.acme.sample.SampleParticipant"
operation: UPDATE
resource(a): "org.acme.sample.SampleAsset"
transaction: "org.acme.sample.SampleTransaction"
condition: (p.getIdentifier() === a.owner.getIdentifier())
action: ALLOW
}
```
this rule only allows a SampleParticipant to update a SampleAsset if they own that SampleAsset, and only if a SampleTransaction is executing
rohilsurana (Sun, 18 Jun 2017 15:18:42 GMT):
@sstone1 thanks!! :D
dselman (Sun, 18 Jun 2017 16:13:48 GMT):
@sstone1 we need to update the docs with an example like this...
SuparnaPal (Sun, 18 Jun 2017 17:41:42 GMT):
Has joined the channel.
Pasteis (Sun, 18 Jun 2017 18:25:16 GMT):
One thing - these connection profiles... Why is there a difference between the Service Credential json and connection profiles? I would ideally just want to export all configs I need right from server and dump it for client to pickup
Pasteis (Sun, 18 Jun 2017 18:27:15 GMT):
Simon has a very good explanation on how to connect to bluemix here... https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service/42354002#42354002
Pasteis (Sun, 18 Jun 2017 18:28:39 GMT):
but ideally... this could be a straight json dump - or am I missing something around connection profiles, i.e is it used for other thing ?
Pasteis (Sun, 18 Jun 2017 18:28:39 GMT):
but ideally... this could be a straight json dump - or am I missing something around connection profile, i.e is it used for other things ?
sstone1 (Mon, 19 Jun 2017 01:59:08 GMT):
@Pasteis connection profiles are designed such that Composer can connect to a variety of different Blockchain platforms. There's a lot of redundant information in the service credential JSON that Composer cannot use, and the service credential documents are difficult for anyone to manually write when connecting to their own Hyperledger Fabric instances.
On an IBM note, we are looking at extending Bluemix with the option to download a Composer connection profile.
deepakvparmar (Mon, 19 Jun 2017 05:59:58 GMT):
Asked question on SO : https://stackoverflow.com/questions/44602738/how-to-initiate-different-instance-of-composer-rest-sever-for-different-business
deepakvparmar (Mon, 19 Jun 2017 05:59:58 GMT):
Kindly refer question asked on SO : https://stackoverflow.com/questions/44602738/how-to-initiate-different-instance-of-composer-rest-sever-for-different-business
deepakvparmar (Mon, 19 Jun 2017 06:42:30 GMT):
@dselman n @sstone1 : I am referring this page : https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
Now, I am trying to fetch default wallet details by calling : http://localhost:3000/explorer/api/wallets, but getting error that urlNotFound error.
Also, cannot see any link or API on composer-rest-server API page (http://localhost:3000/explorer)
deepakvparmar (Mon, 19 Jun 2017 06:42:30 GMT):
@dselman n @sstone1 : I am referring this page : https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
Now, I am trying to fetch default wallet details by calling : http://localhost:3000/explorer/api/wallets, but getting error that urlNotFound error.
Also, cannot see any link or API on composer-rest-server API page (http://localhost:3000/explorer)
( Note: I had started composer-rest-server without enabling authentication )
Vipul_Bajaj (Mon, 19 Jun 2017 07:32:31 GMT):
What I want to do is that give READ ACCESS to a particular participant the fields of other participants but putting condition on third resource.
Eg:
rule SampleRule{
description: "Allow the Participant1 to view Participant2 profile"
participant(m): "org.sample.blockchain.Participant1"
operation: READ
resource(v): "org.sample.blockchain.Participant2"
condition:(
v.getIdentifier() == Record.Participant1.getIdentifier()
&& m.getIdentifier() == Record.Participant2.getIdentifier()
)
action: ALLOW
}
asset Record identified by Id {
o String Id
--> Participant1 Participant1
--> Participant2 Participant2
}
participant Participant1 identified by EmailId{
o String EmailId
o String Name
o Integer Age
}
participant Participant2 identified by EmailId{
o String EmailId
o String Name
o Integer Age
}
So here I want to give access of profile of participant2 to participant1 based on some asset record.
Is it possible to this thing in composer and if not what are the other options?
Vipul_Bajaj (Mon, 19 Jun 2017 07:32:31 GMT):
How can we give READ access to a particular resource while putting condition on some other resource in ACL file?
What I want to do is that give READ ACCESS to a particular participant the fields of other participants but putting condition on third resource.
Eg:
rule SampleRule{
description: "Allow the Participant1 to view Participant2 profile"
participant(m): "org.sample.blockchain.Participant1"
operation: READ
resource(v): "org.sample.blockchain.Participant2"
condition:(
v.getIdentifier() == Record.Participant1.getIdentifier()
&& m.getIdentifier() == Record.Participant2.getIdentifier()
)
action: ALLOW
}
asset Record identified by Id {
o String Id
--> Participant1 Participant1
--> Participant2 Participant2
}
participant Participant1 identified by EmailId{
o String EmailId
o String Name
o Integer Age
}
participant Participant2 identified by EmailId{
o String EmailId
o String Name
o Integer Age
}
So here I want to give access of profile of participant2 to participant1 based on some asset record.
Is it possible to this thing in composer and if not what are the other options?
wael (Mon, 19 Jun 2017 08:31:02 GMT):
hello, I am trying to this.adminConnection = new AdminConnection();
var adminOptions = {
type: 'hlfv1',
keyValStore: '/tmp/keyValStore',
membershipServicesURL: chainConfig.memberServicesUrl,
peerURL: 'grpc://vp0:7051',
eventHubURL: 'grpc://vp0:7053'
};
BrowserFS.initialize(new BrowserFS.FileSystem.InMemory());
const adminConnection = new AdminConnection({ fs: bfs_fs });
adminConnection.createProfile('testprofile', adminOptions)
.then(() => {
return adminConnection.connect('testprofile', 'admin', 'adminpw');
}).then(function() {
}).catch(function(error) {
// Add optional error handling here.
console.log("connecting Errorr !!!!" + error);
});
wael (Mon, 19 Jun 2017 08:31:20 GMT):
hello , I am trying to make :
wael (Mon, 19 Jun 2017 08:33:36 GMT):
I am trying to connect a test profile for adminConnection :
this.adminConnection = new AdminConnection();
var adminOptions = {
type: 'hlfv1',
keyValStore: '/tmp/keyValStore',
membershipServicesURL: chainConfig.memberServicesUrl,
peerURL: 'grpc://vp0:7051',
eventHubURL: 'grpc://vp0:7053'
};
BrowserFS.initialize(new BrowserFS.FileSystem.InMemory());
const adminConnection = new AdminConnection({ fs: bfs_fs });
adminConnection.createProfile('testprofile', adminOptions)
.then(() => {
return adminConnection.connect('testprofile', 'admin', 'adminpw');
}).catch(function(error) {
console.log(error);
});
but I Got this error :
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "testprofile"
??
mbwhite (Mon, 19 Jun 2017 08:41:38 GMT):
@wael Hypeledger Fabric, uses a GRPC protocol - and for the NodeJS GRPC module that Composer uses this relies on native code being complied. This error is indicative that some thing has not compiled correctly during the phase.
mbwhite (Mon, 19 Jun 2017 08:42:03 GMT):
What platform are running on? Mac/ Linux, or a LinuxVM .
Jakeeyturner (Mon, 19 Jun 2017 08:52:21 GMT):
That doesn't look like it'll be a valid connection profile for hlfv1, check here - https://hyperledger.github.io/composer/reference/connectionprofile.html
caroline-church (Mon, 19 Jun 2017 08:54:58 GMT):
@wael What version of composer, node and npm do you have? and did you install composer with sudo (you don't want to install as sudo)
wael (Mon, 19 Jun 2017 08:56:45 GMT):
@mbwhite Mac
wael (Mon, 19 Jun 2017 08:59:06 GMT):
@caroline-church composer v0.8.0, node v6.10.3, npm 4.2.0 , no I didn't install as sudo ( as I remember)
mbwhite (Mon, 19 Jun 2017 08:59:27 GMT):
thansk... Do you have XCode installed?
wael (Mon, 19 Jun 2017 08:59:38 GMT):
No
mbwhite (Mon, 19 Jun 2017 09:02:15 GMT):
ok, that might explain this ; that is needed for Mac to compile the native code modules. Note that after you've installed it a npm rebuild would be required to make sure the modules are rebuilt.
wael (Mon, 19 Jun 2017 09:04:00 GMT):
@mbwhite Thanks, I will try now.
xuzhao103389 (Mon, 19 Jun 2017 09:21:46 GMT):
I can not clone the sample code from https://github.com/hyperledger/composer-sample-networks
xuzhao103389 (Mon, 19 Jun 2017 09:22:29 GMT):
err is agrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger$ git clone https://github.com/hyperledger/composer-sample-networks/tree/master/packages/digitalproperty-network
Cloning into 'digitalproperty-network'...
remote: Not Found
xuzhao103389 (Mon, 19 Jun 2017 09:44:14 GMT):
ok I have figured that out
xuzhao103389 (Mon, 19 Jun 2017 09:44:20 GMT):
now I hit another issue
xuzhao103389 (Mon, 19 Jun 2017 09:44:35 GMT):
[0f _ _ _ _ ____
| | | | _ _ _ __ ___ _ __ | | ___ __| | __ _ ___ _ __ / ___| ___ _ __ ___ _ __ ___ ___ ___ _ __
| |_| | | | | | | '_ \ / _ \ | '__| | | / _ \ / _` | / _` | / _ \ | '__| _____ | | / _ \ | '_ ` _ \ | '_ \ / _ \ / __| / _ \ | '__|
| _ | | |_| | | |_) | | __/ | | | | | __/ | (_| | | (_| | | __/ | | |_____| | |___ | (_) | | | | | | | | |_) | | (_) | \__ \ | __/ | |
|_| |_| \__, | | .__/ \___| |_| |_| \___| \__,_| \__, | \___| |_| \____| \___/ |_| |_| |_| | .__/ \___/ |___/ \___| |_|
|___/ |_| |___/ |_|
? Enter your Fabric Connection Profile Name: defaultProfile
? Enter your Business Network Identifier : org-acme-biznet
? Enter your Fabric username : admin
? Enter your secret: adminpw
? Specify if you want namespaces in the generated REST API: always use namespaces
? Specify if you want the generated REST API to be secured: Yes
To restart the REST server using the same options, issue the following command:
composer-rest-server -p defaultProfile -n org-acme-biznet -i admin -s adminpw -N always -S true
Discovering types from business network definition ...
Connection fails: Error: error trying login and get user Context. Error: error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
It will be retried for the next request.
Error: error trying login and get user Context. Error: error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
at client.getUserContext.then.then.catch (/home/vagrant/.nvm/versions/node/v6.9.4/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:293:34)
at process._tickCallback (internal/process/next_tick.js:103:7)
Jakeeyturner (Mon, 19 Jun 2017 09:52:17 GMT):
@xuzhao103389 It looks like something might be wrong in your connection profile, and it can't seem to connect using that profile
xuzhao103389 (Mon, 19 Jun 2017 10:05:41 GMT):
btw, where is the docker-compose.yml file @Jakeeyturner
Vipul_Bajaj (Mon, 19 Jun 2017 10:19:14 GMT):
How can we define functions inside CONDITION of ACL file??
xuzhao103389 (Mon, 19 Jun 2017 10:31:17 GMT):
I can only find 1 connection file
xuzhao103389 (Mon, 19 Jun 2017 10:31:35 GMT):
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-networks/packages/marbles-network$ cat node_modules/composer-rest-server/server/composer.json
{
"connectionProfileName": "defaultProfile",
"businessNetworkIdentifier": "org-acme-biznet",
"participantId": "admin",
"participantPwd": "adminpw",
"namespaces": "always",
"port": 3000,
"security": true
}
xuzhao103389 (Mon, 19 Jun 2017 10:31:50 GMT):
looks like this is not correct
xuzhao103389 (Mon, 19 Jun 2017 10:33:48 GMT):
and I can not find the docker-composer.yml file to start the blockchain network under the dir /opt/gopath/src/github.com/hyperledger/composer-sample-networks
ShobhanaSundararaman (Mon, 19 Jun 2017 10:51:38 GMT):
Has joined the channel.
harj91 (Mon, 19 Jun 2017 11:13:10 GMT):
hey everyone... i exported a .bna file from the composer playground, but when i try to deploy it using terminal I get the following error:
Harjots-MacBook-Air:~ harjotrahi$ composer network deploy -a ~/Downloads/landing-apparatus-procurement.bna -i admin -s adminpw -p hlfv1
Deploying business network from archive: /Users/harjotrahi/Downloads/landing-apparatus-procurement.bna
Business network definition:
Identifier: landing-apparatus-procurement@0.0.1
Description: The Hello World of Hyperledger Composer samples
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error
Command failed
can anyone help?
xuzhao103389 (Mon, 19 Jun 2017 11:32:55 GMT):
now I am using the beta build
xuzhao103389 (Mon, 19 Jun 2017 11:33:42 GMT):
I can not really deploy the chaincode using the examples under composer-sample-networks
xuzhao103389 (Mon, 19 Jun 2017 11:34:02 GMT):
my network
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-networks/packages/marbles-network/dist$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
77ffaa1b19f2 hyperledger/fabric-peer:x86_64-1.0.0-beta "peer node start -..." 3 minutes ago Up 3 minutes 0.0.0.0:7056->7051/tcp, 0.0.0.0:7058->7053/tcp peer1
29302bd8bf0b hyperledger/fabric-peer:x86_64-1.0.0-beta "peer node start -..." 3 minutes ago Up 3 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0
0480e1c8cea6 hyperledger/fabric-ca:x86_64-1.0.0-beta "sh -c 'fabric-ca-..." 3 minutes ago Up 3 minutes 0.0.0.0:7054->7054/tcp ca_peerOrg1
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-networks/packages/marbles-network/dist$ cd ..
xuzhao103389 (Mon, 19 Jun 2017 11:34:15 GMT):
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-networks/packages/marbles-network/dist$ composer network deploy --archiveFile marbles-network.bna -p hlfv1 -i admin -s Xurw3yU9zI0l
Deploying business network from archive: marbles-network.bna
Business network definition:
Identifier: marbles-network@0.0.10
Description: Marble Trading Network
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error
Command failed
davidkel (Mon, 19 Jun 2017 11:46:52 GMT):
@xuzhao103389 You can only deploy to a peer using a Peer Admin identity. You need to import a Peer Admin user identity into the composer connection profile keyValStore before you can deploy to that peer. See
https://hyperledger.github.io/composer/reference/composer.identity.import.html
on importing identities.
Also I see you have 2 peers. If they are of the same organisation and have the same admin user then you can deploy to both at the same time, otherwise you are going to have to have 2 connection profiles plus you would need to import the identity of the second peer into the 2nd connection profile KeyValStore (I would highly recommend not using the same directory for both profiles)
davidkel (Mon, 19 Jun 2017 11:49:01 GMT):
@stormli In answer to your 2nd question, the reason it is defined as object is because there is a single transaction registry for all transactions not 1 per transaction definition. When a request for a transaction id is made it could be 1 of however many types of transaction that have been defined, so the only possible swagger definition can be to return a type of object
davidkel (Mon, 19 Jun 2017 12:10:41 GMT):
@stormli regarding your first question this is a know issue. Please see
https://github.com/hyperledger/composer/issues/1055
uber.twin (Mon, 19 Jun 2017 12:17:53 GMT):
hi, I am getting this error at deploy time, not sure what is causing it; does "line 979" have any relevance from a debugging perspective?
uber.twin (Mon, 19 Jun 2017 12:17:55 GMT):
xc420150218 0xc420149270 0xc420150228}
2017-06-19 12:13:13.068 UTC [Composer] Error -> ERRO 040 @JS : Engine :init() Caught error, rethrowing {"stack":["{SyntaxError}unterminated statement (line 979) SyntaxError: unterminated statement (line 979)"," at [anon] (input:979) internal"," at [anon] (duk_js_compiler.c:6653) internal"," at eval () native strict directeval preventsyield"," at anonymous (compile:1)"," at compile (eval:56) strict"," at [anon] (eval:54) strict"," at [anon] (eval:2) strict"," at [anon] (eval:2) strict"," at [anon] (eval:1)"," at [anon] (eval:1)"," at [anon] (eval:1)"," at [anon] (eval:1) preventsyield"," [...]"]}
2017-06-19 12:13:13.069 UTC [shim] 2 -> ERRO 041 [[1c11adcb ERROR]]Init get error response [%!s(MISSING)]. Sending %!s(MISSING)
xuzhao103389 (Mon, 19 Jun 2017 12:38:30 GMT):
@davidkel I import the identity but failed
xuzhao103389 (Mon, 19 Jun 2017 12:38:31 GMT):
composer identity import -p hlfv1 -u admin -c /opt/gopath/src/github.com/hyperledger/composer-sample-networks/hlfv1/crypto-config/peerOrganizations/peerOrg1/peers/peerOrg1Peer1/signcerts/peerOrg1Peer1-cert.pem -k /opt/gopath/src/github.com/hyperledger/composer-sample-networks/hlfv1/crypto-config/peerOrganizations/peerOrg1/peers/peerOrg1Peer1/keystore/5e67f35124df6a9124bf3659365b8476af4090f73c82c9b626efc15f12739d5d_sk
xuzhao103389 (Mon, 19 Jun 2017 12:38:46 GMT):
vagrant@hyperledger-devenv:v0.3.0-51b7e85:/opt/gopath/src/github.com/hyperledger/composer-sample-networks/hlfv1/crypto-config/peerOrganizations/peerOrg1/peers/peerOrg1Peer1/signcerts$ composer identity import -p hlfv1 -u admin -c /opt/gopath/src/github.com/hyperledger/composer-sample-networks/hlfv1/crypto-config/peerOrganizations/peerOrg1/peers/peerOrg1Peer1/signcerts/peerOrg1Peer1-cert.pem -k /opt/gopath/src/github.com/hyperledger/composer-sample-networks/hlfv1/crypto-config/peerOrganizations/peerOrg1/peers/peerOrg1Peer1/keystore/5e67f35124df6a9124bf3659365b8476af4090f73c82c9b626efc15f12739d5d_sk
Error: failed to import identity. Does not understand PEM contents other than ECDSA private keys and certificates
Command failed
davidkel (Mon, 19 Jun 2017 12:41:29 GMT):
@xuzhao103389 you need to import the crypto material from the hyperledger fabric environment. SO however you have run hyperledger fabric 1.0.0-beta the peers will point to it's MSP configuration and you will find the users that peer will recognise within that MSP configuration directory structure
davidkel (Mon, 19 Jun 2017 12:41:29 GMT):
@xuzhao103389 you need to import the crypto material from the hyperledger fabric environment. So however you have run hyperledger fabric 1.0.0-beta the peers will point to it's MSP configuration and you will find the users that peer will recognise within that MSP configuration directory structure
xuzhao103389 (Mon, 19 Jun 2017 12:43:43 GMT):
so do I have to dowload the fabrc source code? @davidkel
davidkel (Mon, 19 Jun 2017 12:44:43 GMT):
@xuzhao103389 I don't know how you have set up your fabric beta environment. In order to run the fabric beta you must have the MSP definitions for the peer.
xuzhao103389 (Mon, 19 Jun 2017 12:47:00 GMT):
I remember the composer should be independent from fabric right? @davidkel , I thought what I need to do is using the fabric beta images
davidkel (Mon, 19 Jun 2017 12:52:13 GMT):
@xuzhao103389 I don't know how you have setup and run your fabric beta server, did you follow the composer guides and use dev server on composer-tools or have you been setting up your own fabric beta using the hyperledger fabric getting started guide ?>
xuzhao103389 (Mon, 19 Jun 2017 12:55:35 GMT):
@davidkel so I have a running env for composer-sample-applications-hlfv1/, today I upgraded composer to V0.8, and then I downloaded the examples from https://github.com/hyperledger/composer-sample-networks
xuzhao103389 (Mon, 19 Jun 2017 12:55:52 GMT):
after that, I find the issues
davidkel (Mon, 19 Jun 2017 12:58:11 GMT):
@xuzhao103389 composer-sample-applications-hlfv1 has been archived. It was based on hyperledger fabric alpha1. Composer v0.8.0 can only work with hyperledger fabric 1.0 beta. We have changed how you can obtain a fabric v1 development server. More info can be found at
https://hyperledger.github.io/composer/installing/development-tools.html
if you want to continue using hyperledger fabric alpha1 then you must stay with composer v0.7.5
xuzhao103389 (Mon, 19 Jun 2017 12:58:36 GMT):
thanks
harj91 (Mon, 19 Jun 2017 13:04:00 GMT):
hey - has anyone seen the following error message before after running the composer-rest-server command in terminal and inputting values to the questions asked: Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
elisabetta (Mon, 19 Jun 2017 13:11:10 GMT):
@harj91: I got the same message when I was trying to use a composer version which didn't support hyperledger beta (which was the blockchain runtime version I was running)
elisabetta (Mon, 19 Jun 2017 13:13:16 GMT):
not sure whether composer supports hyperledger v1.0 beta version yet. In my case, I had to go back to alpha version and everything worked fine.
elisabetta (Mon, 19 Jun 2017 13:19:34 GMT):
@harj91: I'm just reading above that new composer v0.8.0 only supports beta. So, if you have that version installed then it must be something else
davidkel (Mon, 19 Jun 2017 13:19:56 GMT):
@harj91 @elisabetta see https://stackoverflow.com/questions/44595831/could-not-deploy-business-network-to-hyperledger-fabric-beta-using-composer (the 2nd answer, not the 1st answer)
davidkel (Mon, 19 Jun 2017 13:19:56 GMT):
@harj91 @elisabetta see https://stackoverflow.com/questions/44595831/could-not-deploy-business-network-to-hyperledger-fabric-beta-using-composer
harj91 (Mon, 19 Jun 2017 13:26:59 GMT):
@davidkel i was able to deploy the business work as outlined in that link... the problem was after loading the rest-server
? Enter your Fabric Connection Profile Name: hlfv1
? Enter your Business Network Identifier : landing-apparatus-procurement
? Enter your Fabric username : PeerAdmin
? Enter your secret: anything
? Specify if you want namespaces in the generated REST API: always use namespaces
? Specify if you want the generated REST API to be secured: Yes
To restart the REST server using the same options, issue the following command:
composer-rest-server -p hlfv1 -n landing-apparatus-procurement -i PeerAdmin -s anything -N always -S true
Discovering types from business network definition ...
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:180:8)
at /usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:649:14
Jakeeyturner (Mon, 19 Jun 2017 13:27:43 GMT):
Once you've deployed the business network using PeerAdmin, you can connect and use the network as you would normally. E.g. with username: admin password: adminpw
Jakeeyturner (Mon, 19 Jun 2017 13:27:43 GMT):
Once you've deployed the business network using PeerAdmin, you can connect and use the network as you would normally. E.g. with enrollmentId: admin enrollmentSecret: adminpw
Jakeeyturner (Mon, 19 Jun 2017 13:27:56 GMT):
It's only at the deployment stage that you need to use PeerAdmin
harj91 (Mon, 19 Jun 2017 13:31:03 GMT):
@Jakeeyturner even when i use admin and adminpw, the same error message is given
davidkel (Mon, 19 Jun 2017 13:34:36 GMT):
@harj91 what version of composer-rest-server are you running, bet it isn't 0.8.0
wael (Mon, 19 Jun 2017 13:37:14 GMT):
@mbwhite I have installed xcode and rebuild npm as you told me , but still the same problem . I can create new profile with adminconnection.createProfile(..) , but whenever I want to connect the profile created it outputs : Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "testprofile"
wael (Mon, 19 Jun 2017 13:37:29 GMT):
also tried with hlf 0.6 , same error
wael (Mon, 19 Jun 2017 13:37:45 GMT):
do you have any other suggestions ?
harj91 (Mon, 19 Jun 2017 13:42:13 GMT):
@davidkel here are my composer versions
composer-cli v0.8.0
composer-admin v0.8.0
composer-client v0.8.0
composer-common v0.8.0
composer-runtime-hlf v0.8.0
composer-runtime-hlfv1 v0.8.0
davidkel (Mon, 19 Jun 2017 13:49:25 GMT):
@harj91 that only tells me what version the cli is, sorry.
davidkel (Mon, 19 Jun 2017 13:50:41 GMT):
@harj91 try the command `npm list -g --depth=0 | grep composer-rest-server`
harj91 (Mon, 19 Jun 2017 13:56:14 GMT):
@davidkel ah thanks, you're right its ├── composer-rest-server@0.7.5. how can i update this to 0.8.0?
davidkel (Mon, 19 Jun 2017 14:00:20 GMT):
@harj91 easiest why is to do npm uninstall -g composer-rest-server then npm install -g composer-rest-server
davidkel (Mon, 19 Jun 2017 14:00:20 GMT):
@harj91 easiest way is to do npm uninstall -g composer-rest-server then npm install -g composer-rest-server
harj91 (Mon, 19 Jun 2017 14:08:34 GMT):
@davidkel thanks! this fixed the issue
harj91 (Mon, 19 Jun 2017 14:16:05 GMT):
@davidkel if the same error message appears when running yo fabric-composer, could it be another version issue?
Jakeeyturner (Mon, 19 Jun 2017 14:17:25 GMT):
fabric-composer is no longer a package
Jakeeyturner (Mon, 19 Jun 2017 14:17:38 GMT):
`npm install -g generator-hyperledger-composer` -> `yo hyperledger-composer`
Jakeeyturner (Mon, 19 Jun 2017 14:17:38 GMT):
Install the new package `npm install -g generator-hyperledger-composer` Run the generator`yo hyperledger-composer`
Jakeeyturner (Mon, 19 Jun 2017 14:17:38 GMT):
Install the new package `npm install -g generator-hyperledger-composer` Run the generator using `yo hyperledger-composer`
Jakeeyturner (Mon, 19 Jun 2017 14:19:24 GMT):
Probably want to uninstall the generator-fabric-composer using `npm uninstall -g generator-fabric-composer`
harj91 (Mon, 19 Jun 2017 14:30:05 GMT):
@Jakeeyturner thanks, but this has not fixed the issue... error is still appearing
Jakeeyturner (Mon, 19 Jun 2017 14:30:55 GMT):
What are you running? Can you show show terminal output (and what command you ran)
Jakeeyturner (Mon, 19 Jun 2017 14:30:55 GMT):
What are you running? Can you show your terminal output (and what command you ran)
jdockter (Mon, 19 Jun 2017 14:54:25 GMT):
@davidkel In the past the playground had a default busn network loaded under the name 'org.acme.biznet' which could be used in the composer network list CLI, what is the new busn network name to use?
davidkel (Mon, 19 Jun 2017 14:54:51 GMT):
@jdockter org-acme-biznet
jdockter (Mon, 19 Jun 2017 14:55:40 GMT):
@davidkel thanks
xuzhao103389 (Mon, 19 Jun 2017 14:57:25 GMT):
I am using composer v0.8 and fabric V1-beta, following the link https://hyperledger.github.io/composer/installing/development-tools.html
xuzhao103389 (Mon, 19 Jun 2017 14:57:40 GMT):
I am confused here
xuzhao103389 (Mon, 19 Jun 2017 14:57:41 GMT):
Choose which version of Fabric to use. For v0.6 this needs to be set explicitly as follows.
export FABRIC_VERSION=hlfv0.6
Hyperledger Fabric v1.0-alpha is the default, but to 'unset' the v0.6, or to be explicit in using v1 use this command
export FABRIC_VERSION=hlfv1
xuzhao103389 (Mon, 19 Jun 2017 14:57:56 GMT):
is that still for alpha?
riancu (Mon, 19 Jun 2017 15:18:46 GMT):
Has joined the channel.
jaguarg (Mon, 19 Jun 2017 15:27:55 GMT):
Hi, I am using `composer-rest-server -p hlfv1 -n mynetwork -i PeerAdmin -s anything -N always`
jaguarg (Mon, 19 Jun 2017 15:27:56 GMT):
but am getting the error : `Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"`
jaguarg (Mon, 19 Jun 2017 15:27:56 GMT):
any idea ?
Jakeeyturner (Mon, 19 Jun 2017 15:29:18 GMT):
@xuzhao103389 With composer v0.8, references to hlfv1 will only mean beta. Support for alpha was dropped in Composer v0.8
Jakeeyturner (Mon, 19 Jun 2017 15:29:35 GMT):
@jaguarg Can you run `composer -v`
rohilsurana (Mon, 19 Jun 2017 15:29:43 GMT):
Can we use a condition like - (r.amount > 0 && r.amount < p.userAsset.value) , where r is the transaction and p is the participant?
rohilsurana (Mon, 19 Jun 2017 15:29:43 GMT):
Can we use a condition like - ```(r.amount > 0 && r.amount < p.userAsset.value)``` , where r is the transaction and p is the participant?
rohilsurana (Mon, 19 Jun 2017 15:32:39 GMT):
I am getting an error with it - `Particiant does not have CREATE access to the resource` , I am using it in the CREATE rule for transaction
xuzhao103389 (Mon, 19 Jun 2017 15:36:36 GMT):
root@ruts1:/composer-sample-networks/packages/marbles-network/dist# composer network deploy --archiveFile marbles-network.bna -p hlfv1 -i admin -s Xurw3yU9zI0l
[InvalidArgumentException]
Command "network" is not defined.
Jakeeyturner (Mon, 19 Jun 2017 15:36:49 GMT):
@rohilsurana Is userAsset a relationship?
xuzhao103389 (Mon, 19 Jun 2017 15:37:02 GMT):
why the network is not defined?
Tigermisu (Mon, 19 Jun 2017 15:38:11 GMT):
Hello. I have a question - Is support for exporting Composer apps/blockchain to IBM's Blockchain on Bluemix planned?
jaguarg (Mon, 19 Jun 2017 15:40:42 GMT):
@Jakeeyturner : here is the output of `composer -v` : composer-cli v0.8.0
composer-admin v0.8.0
composer-client v0.8.0
composer-common v0.8.0
composer-runtime-hlf v0.8.0
composer-runtime-hlfv1 v0.8.0
Jakeeyturner (Mon, 19 Jun 2017 15:48:21 GMT):
Might be worth a `composer-rest-server -v` as well. Also, post your connection profile if possible
jaguarg (Mon, 19 Jun 2017 15:52:42 GMT):
Hello @Jakeeyturner no -v option for composer-rest-server for me. Here is the connection profile : {
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://localhost:7050" }
],
"ca": { "url": "http://localhost:7054", "name": "ca.example.com"},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "${HOME}/.hfc-key-store",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": "300"
}
larsf (Mon, 19 Jun 2017 16:14:32 GMT):
Composer and Fabric on Linux Red-Hat: Recently I installed VSCode, Composer and Fabric on Ubuntu 16.04. A client asks if we can install on Red-Hat. They have several reasons to ask, however, the most important one is that the have standardized all on Red-Hat. Automated image creations etc. Well, is Red-Hat supported? In the dev-guide I noticed Ubuntu 14.x and 16.04. Please advice.
john2000 (Mon, 19 Jun 2017 16:50:02 GMT):
./prereqs-ubuntu.sh
john2000 (Mon, 19 Jun 2017 16:50:33 GMT):
npm install -g composer-cli
john2000 (Mon, 19 Jun 2017 16:50:35 GMT):
...
john2000 (Mon, 19 Jun 2017 16:52:23 GMT):
so slowly in china, Does anyone have suggestions?
dselman (Mon, 19 Jun 2017 16:58:32 GMT):
Are there local caches of those files? Do you know why it is slow?
john2000 (Mon, 19 Jun 2017 17:06:32 GMT):
no caches, when i run " npm install -g composer-cli", in china programmer download package from "http://registry.npm.taobao.org", but composer no cache in there
dselman (Mon, 19 Jun 2017 17:07:47 GMT):
I don't know anything about how npm works in China -- is there something we can do to get a local copy hosted within the firewall?
dselman (Mon, 19 Jun 2017 17:10:08 GMT):
Should you use `cnpm` instead of `npm`?
dselman (Mon, 19 Jun 2017 17:10:10 GMT):
http://npm.taobao.org/
john2000 (Mon, 19 Jun 2017 17:10:53 GMT):
no need for that
john2000 (Mon, 19 Jun 2017 17:11:30 GMT):
we use npm and set "npm config set registry http://registry.npm.taobao.org"
john2000 (Mon, 19 Jun 2017 17:13:24 GMT):
use npm from "http://registry.npmjs.org/", I have never succeeded
john2000 (Mon, 19 Jun 2017 17:14:45 GMT):
but " curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash ", it work for me.
john2000 (Mon, 19 Jun 2017 17:16:06 GMT):
maybe need to do some work for chinese people
davidkel (Mon, 19 Jun 2017 17:18:37 GMT):
@xuzhao103389 when you type `composer -v` what response do you get ? It's just if the command doesn't exist that isn't the error you would get. It might be you have another totally unrelated command called 'composer' on your machine that is being picked up ?
davidkel (Mon, 19 Jun 2017 17:20:59 GMT):
@larsf no reason why hyperledger composer couldn't run on Red Hat so long as you can satisfy the pre-reqs. If you have any specific problems then you can raise issues or ask on RocketChat
rohilsurana (Mon, 19 Jun 2017 17:21:27 GMT):
@Jakeeyturner yes it is a relationship. To an asset.
dselman (Mon, 19 Jun 2017 17:21:47 GMT):
@john2000 if you can provide some docs to help people in China install we can get the integrated. I'm sure they'd appreciate it.
xuzhao103389 (Mon, 19 Jun 2017 17:23:32 GMT):
@davidkel root@ruts1:~# composer -v
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version @package_branch_alias_version@ (1.0.0-beta2) 2016-03-27 16:00:34
davidkel (Mon, 19 Jun 2017 17:24:03 GMT):
@xuzhao103389 that's not hyperledger composer. I have no idea what that is
xuzhao103389 (Mon, 19 Jun 2017 17:26:10 GMT):
I am following the link https://hyperledger.github.io/composer/installing/development-tools.html @davidkel
xuzhao103389 (Mon, 19 Jun 2017 17:29:25 GMT):
ok now it is working
xuzhao103389 (Mon, 19 Jun 2017 17:29:26 GMT):
root@ruts1:~# cd /usr/bin
root@ruts1:/usr/bin# ln -s /opt/node-v6.9.5-linux-x64/bin/composer composer
root@ruts1:/usr/bin# composer
Commands:
archive
davidkel (Mon, 19 Jun 2017 17:30:29 GMT):
@xuzhao103389 that's more of the output I was expecting. Hopefully it will go more smoothly for you
xuzhao103389 (Mon, 19 Jun 2017 17:30:58 GMT):
thanks, weird , I have to add it to PATH, thanks
rohilsurana (Mon, 19 Jun 2017 17:31:12 GMT):
@dselman DO you know any workarounds for issue https://github.com/hyperledger/composer/issues/1007
davidoevans (Mon, 19 Jun 2017 18:47:49 GMT):
I was able to create a participant using `composer` command line utility. However, when I try to issue an identity I get `Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]`. In both cases, I was using the default uid/pw admin/adminpw.
davidoevans (Mon, 19 Jun 2017 18:48:45 GMT):
so I get my question is...what user is authorized to create identities by default or how do I create one?
davidoevans (Mon, 19 Jun 2017 18:50:12 GMT):
I'm using Composer v0.8 with Fabric-1.0.0-beta
theathibm (Mon, 19 Jun 2017 19:05:53 GMT):
Has joined the channel.
Tigermisu (Mon, 19 Jun 2017 19:25:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NHzhKZatfsaYgFoH7) I quote my message as it seems to have gone unnoticed. Also, is there a current way to do this I am not aware of?
emlorc01 (Mon, 19 Jun 2017 20:00:15 GMT):
Hi. I was able to finish the developer tutorial successfully and get my business network deployed to local instance of hyperledger fabric. Today I am trying to do the same again and suddenly I am getting an error I have not seen before. The error is pasted below
dselman (Mon, 19 Jun 2017 20:00:37 GMT):
Please search on StackOverflow using the hyperledger-composer tag. You will find many references to Bluemix. Composer can currently be deployed to Bluemix HLF 0.6 instances. There is not yet an IBM cloud offering that supports HLF v1beta1 (though it is in the works).
emlorc01 (Mon, 19 Jun 2017 20:01:24 GMT):
composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s adminpw
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.10
Description: The Hello World of Hyperledger Composer samples
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed
Command failed
emlorc01 (Mon, 19 Jun 2017 20:01:48 GMT):
Does anyone have any suggestions on this? Idk why it worked a few days ago but now i suddenly get the "connect failed" error. i tried googling the error but cannot find anyone with the same one
cliveb (Mon, 19 Jun 2017 20:07:59 GMT):
Has joined the channel.
dselman (Mon, 19 Jun 2017 20:08:23 GMT):
Can you run `docker ps` please
emlorc01 (Mon, 19 Jun 2017 20:13:38 GMT):
@dselman docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
51c68ece3237 hyperledger/fabric-peer:x86_64-1.0.0-beta "peer node start -..." 2 hours ago Up 2 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
14d02ebc0be5 hyperledger/fabric-ca:x86_64-1.0.0-beta "sh -c 'fabric-ca-..." 2 hours ago Up 2 hours 0.0.0.0:7054->7054/tcp ca.example.com
f161813b7931 hyperledger/fabric-orderer:x86_64-1.0.0-beta "orderer" 2 hours ago Up 2 hours 0.0.0.0:7050->7050/tcp orderer.example.com
3e1970d05669 hyperledger/fabric-couchdb:x86_64-1.0.0-beta "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
davidkel (Mon, 19 Jun 2017 21:00:56 GMT):
@emlorc01 can you also paste your connection profile ? it should be `~/.composer-connection-profiles/hlfv1/connection.json`
shaynair (Mon, 19 Jun 2017 21:02:28 GMT):
Has joined the channel.
emailadityaj (Mon, 19 Jun 2017 21:03:43 GMT):
Has joined the channel.
emlorc01 (Mon, 19 Jun 2017 21:08:56 GMT):
:~/.composer-connection-profiles/hlfv1$ cat connection.json
{
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://localhost:7050" }
],
"ca": { "url": "http://localhost:7054", "name": "ca.example.com"},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/home/blockchain/.hfc-key-store",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": "300"
}
emlorc01 (Mon, 19 Jun 2017 21:09:37 GMT):
@davidkel
davidkel (Mon, 19 Jun 2017 21:10:43 GMT):
@emlorc01 what happens if you issue the command `nc localhost 7051` ? does it hang or does it return immediately ?
davidkel (Mon, 19 Jun 2017 21:12:08 GMT):
@davidoevans What is most likely is that you have at some point restarted the hyperledger fabric containers but you have an old enrollment of admin still in your keyValStore. This old enrollment is not valid for use with the CA any more which is why the issue identity fails when you try it with the userid 'admin'
davidoevans (Mon, 19 Jun 2017 21:14:11 GMT):
@davidkel if that's the case, should i not have gotten a similar error when issuing `composer participant add -p hlfv1 -n 'healthchain-network' -i admin -s adminpw ..` command?
davidoevans (Mon, 19 Jun 2017 21:14:37 GMT):
...or is that composer command not hitting fabric-ca?
davidkel (Mon, 19 Jun 2017 21:14:51 GMT):
@davidoevans that composer command doesn't contact the fabric-ca
davidoevans (Mon, 19 Jun 2017 21:15:45 GMT):
right...so do i need to teardownFabric and run everything from scratch?
davidkel (Mon, 19 Jun 2017 21:18:33 GMT):
@davidoevans that's one way, but if you do, you must delete the contents of the keyValStore directory (which is likely to be ~/.hfc-key-store) and then you will need to run createComposerProfile.sh as well. That will put the crypto material and userid definition for PeerAdmin into the KeyValStore for you.
davidoevans (Mon, 19 Jun 2017 21:21:39 GMT):
Thanks again @davidkel . Would it make sense to have a `ca-admin` id that is distinct from a `composer-admin` id?
davidoevans (Mon, 19 Jun 2017 21:28:45 GMT):
@davidkel that worked! thanks
davidkel (Mon, 19 Jun 2017 21:28:54 GMT):
@davidoevans There is an issue to look at what are called system acl's, see https://github.com/hyperledger/composer/issues/722 which I think covers what you are thinking
emlorc01 (Mon, 19 Jun 2017 21:42:44 GMT):
@davidkel when running nc localhost 7051 it hangs for a while, does not return
emlorc01 (Mon, 19 Jun 2017 21:43:06 GMT):
how do i replace the old enrollment with an updated one
davidkel (Mon, 19 Jun 2017 21:46:28 GMT):
@emlorc01 it hanging is what I would expect to happen. There are 2 ways, the easiest being to remove the ~/.hfc-key-store contents and run createComposerProfile.sh to effectively copy in the credentials for PeerAdmin back into that directory.
emlorc01 (Mon, 19 Jun 2017 21:50:31 GMT):
do i need to delete all the contents? there are are a priv and pub key in there
emlorc01 (Mon, 19 Jun 2017 21:50:35 GMT):
or just delete PeerAdmin
davidkel (Mon, 19 Jun 2017 21:58:25 GMT):
@emlorc01 You would delete all the contents and then run createComposerProfile.sh to re-add PeerAdmin back in
mattalhonte (Mon, 19 Jun 2017 23:50:18 GMT):
I'm having a similar issue to above.
```composer network deploy -a tanktwo.demo.bna -p hlfv1 -i admin -s adminpw
Deploying business network from archive: tanktwo.demo.bna
Business network definition:
Identifier: tanktwo.demo@0.0.9
Description: Marble Trading Network
Error: Error: Invalid results returned ::NOT_FOUND
Command failed```
bh4rtp (Tue, 20 Jun 2017 00:22:04 GMT):
hi, is there a demo to deploy fabric/examples/e2e_cli network?
berserkr (Tue, 20 Jun 2017 00:51:58 GMT):
what do you mean?
berserkr (Tue, 20 Jun 2017 00:52:09 GMT):
you mean: https://github.com/hyperledger/fabric/blob/master/examples/e2e_cli/end-to-end.rst
mattalhonte (Tue, 20 Jun 2017 01:20:38 GMT):
I edited my Model and made a new .bna file. The REST server registered the change (I added a new field), but when I go to the Angular app it doesn't reflect the new content. Anyone know why?
sstone1 (Tue, 20 Jun 2017 01:22:11 GMT):
@mattalhonte you need to re-run the Angular generator to generate updated components
mattalhonte (Tue, 20 Jun 2017 01:22:34 GMT):
Ah, k, thanks!
sstone1 (Tue, 20 Jun 2017 01:22:37 GMT):
np
mattalhonte (Tue, 20 Jun 2017 01:23:18 GMT):
Heh, I got used to ClojureScript and hot reloading.
sstone1 (Tue, 20 Jun 2017 02:14:08 GMT):
@here here are the slides I presented at the Hyperledger Hackfest in Beijing yesterday: https://www.slideshare.net/SimonStone8/introduction-to-hyperledger-composer
mattalhonte (Tue, 20 Jun 2017 02:14:33 GMT):
Neat!
bh4rtp (Tue, 20 Jun 2017 02:29:30 GMT):
@berserkr yes, use composer to deploy the example onto two hosts.
mattalhonte (Tue, 20 Jun 2017 02:52:11 GMT):
I'm trying to post to the REST server from the command line, but it's not working. Using the format I got from the Explorer.
mattalhonte (Tue, 20 Jun 2017 02:52:31 GMT):
```curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ \
> > "$class": "org.example.mynetwork.Commodity", \
> > "tradingSymbol": "54234", \
> > "description": "324234", \
> > "mainExchange": "string", \
> > "quantity": 523434, \
> > "maxVolts": 435324, \
> > "owner": "234324" \
> > }' 'http://composer.tanktwo.cloud:3000/api/Commodity'
{"error":{"statusCode":400,"name":"SyntaxError","message":"Unexpected token \\ in JSON at position 2","body":"{ \\\n> \"$class\": \"org.example.mynetwork.Commodity\", \\\n> \"tradingSymbol\": \"54234\", \\\n> \"description\": \"324234\", \\\n> \"mainExchange\": \"string\", \\\n> \"quantity\": 523434, \\\n> \"maxVolts\": 435324, \\\n> \"owner\": \"234324\" \\\n> }","status":400,"stack":"SyntaxError: Unexpected token \\ in JSON at position 2\n at Object.parse (native)\n at parse (/home/ubuntu/fabric-app/my-app/node_modules/body-parser/lib/types/json.js:88:17)\n at /home/ubuntu/fabric-app/my-app/node_modules/body-parser/lib/read.js:116:18\n at invokeCallback (/home/ubuntu/fabric-app/my-app/node_modules/raw-body/index.js:262:16)\n at done (/home/ubuntu/fabric-app/my-app/node_modules/raw-body/index.js:251:7)\n at IncomingMessage.onEnd (/home/ubuntu/fabric-app/my-app/node_modules/raw-body/index.js:307:7)\n at emitNone (events.js:86:13)\n at IncomingMessage.emit (events.js:185:7)\n at endReadableNT (_stream_readable.js:974:12)\n at _combinedTickCallback (internal/process/next_tick.js:80:11)\n at process._tickCallback (internal/process/next_tick.js:104:9)"}}```
sstone1 (Tue, 20 Jun 2017 02:53:43 GMT):
I think Rocket.Chat has mangled the command line a bit
sstone1 (Tue, 20 Jun 2017 02:53:49 GMT):
Can you paste it into a Gist? https://gist.github.com
mattalhonte (Tue, 20 Jun 2017 03:03:09 GMT):
https://gist.github.com/mattalhonte/6c286d49773eb6ad05293dd92ec11627
mattalhonte (Tue, 20 Jun 2017 03:16:04 GMT):
Hrm, took out the newlines and it worked. Silly me.
rohilsurana (Tue, 20 Jun 2017 03:23:18 GMT):
Hi does anyone know a workaround for this issue - https://github.com/hyperledger/composer/issues/920
john2000 (Tue, 20 Jun 2017 03:41:26 GMT):
@dselman ok,i will try and push the docs
sstone1 (Tue, 20 Jun 2017 03:41:39 GMT):
@mattalhonte what's with the `> >` at the start of each continuation line?
sstone1 (Tue, 20 Jun 2017 03:41:52 GMT):
i can't see anything else wrong though, it looks OK to me
sstone1 (Tue, 20 Jun 2017 03:42:13 GMT):
@rohilsurana why do you need a workaround for that issue?
sstone1 (Tue, 20 Jun 2017 03:42:26 GMT):
it's not really a bug or defect, it's a user story to enable other functionality
rohilsurana (Tue, 20 Jun 2017 03:42:52 GMT):
@sstone1 sorry wrong link - https://github.com/hyperledger/composer/issues/1007
sstone1 (Tue, 20 Jun 2017 03:43:25 GMT):
ah, that makes more sense :)
sstone1 (Tue, 20 Jun 2017 03:43:29 GMT):
there is no workaround at the moment
rohilsurana (Tue, 20 Jun 2017 03:43:51 GMT):
ok can I fail a transaction from transaction processor function?
sstone1 (Tue, 20 Jun 2017 03:43:52 GMT):
you can only access the identifier from a relationship
sstone1 (Tue, 20 Jun 2017 03:43:57 GMT):
yeah, just throw an error
mattalhonte (Tue, 20 Jun 2017 03:44:02 GMT):
It works now. Though before I copied and pasted what Explorer outputted.
sstone1 (Tue, 20 Jun 2017 03:44:08 GMT):
`throw new Error('abort transaction');`
sstone1 (Tue, 20 Jun 2017 03:44:19 GMT):
you can change the error text to whatever you like
rohilsurana (Tue, 20 Jun 2017 03:45:12 GMT):
That's perfect. Does the rest server process these errors and forward them?
sstone1 (Tue, 20 Jun 2017 03:45:29 GMT):
which version of Fabric are you using?
sstone1 (Tue, 20 Jun 2017 03:45:43 GMT):
for Fabric v1.0, you should get the error text from the Composer REST server.
sstone1 (Tue, 20 Jun 2017 03:45:46 GMT):
but not for Fabric v0.6.
rohilsurana (Tue, 20 Jun 2017 03:46:09 GMT):
yes I am using Fabric 1.0
rohilsurana (Tue, 20 Jun 2017 03:46:22 GMT):
also will the transaction be registred ?
sstone1 (Tue, 20 Jun 2017 03:46:37 GMT):
no, failed transactions cannot record anything on the Blockchain
sstone1 (Tue, 20 Jun 2017 03:46:46 GMT):
although you will see it in the Fabric logs
rohilsurana (Tue, 20 Jun 2017 03:48:22 GMT):
Ok I guess that doesn't matter to me right now. Thank for all the help.
sstone1 (Tue, 20 Jun 2017 03:48:47 GMT):
np
john2000 (Tue, 20 Jun 2017 03:58:15 GMT):
@dselman You'r right, user command "cnpm" it work fine.
Vipul_Bajaj (Tue, 20 Jun 2017 07:47:15 GMT):
Unable to deploy the bna file in a running instance of fabric.
Getting the below error.
root@ubuntu:~/BlockChain# composer network deploy -a blockchainv5.1.bna -p hlfv1 -i PeerAdmin -s abcd
Deploying business network from archive: blockchainv5.1.bna
Business network definition:
Identifier: blockchainv5@1.0.0
Description:
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
Command failed
Below is the my connection profile
cat << EOF > ~/.composer-connection-profiles/hlfv1/connection.json
{
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://localhost:7050" }
],
"ca": { "url": "http://localhost:7054", "name": "ca.example.com"},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "${HOME}/.hfc-key-store",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": "300"
}
EOF
echo "Hyperledger Composer profile has been created for the Hyperledger Fabric v1.0 instance"
Hyperledger Composer profile has been created for the Hyperledger Fabric v1.0 instance
And the running docker containers are
root@ubuntu:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
182097cefc6d hyperledger/fabric-peer:x86_64-1.0.0-beta "peer node start -..." 8 minutes ago Up 8 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
98895d8dacfc hyperledger/fabric-couchdb:x86_64-1.0.0-beta "tini -- /docker-e..." 8 minutes ago Up 8 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
aad8c4a4c79b hyperledger/fabric-orderer:x86_64-1.0.0-beta "orderer" 8 minutes ago Up 8 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
0f1db498ecca hyperledger/fabric-ca:x86_64-1.0.0-beta "sh -c 'fabric-ca-..." 8 minutes ago Up 8 minutes 0.0.0.0:7054->7054/tcp ca.example.com
Jakeeyturner (Tue, 20 Jun 2017 07:49:34 GMT):
@Vipul_Bajaj Try this instead: ```{
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://orderer.example.com:7050" }
],
"ca": { "url": "http://ca.example.com:7054", "name": "ca.example.com"},
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer0.org1.example.com:7053"
}
],
"keyValStore": "${HOME}/.hfc-key-store",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": "300"
}```
davidkel (Tue, 20 Jun 2017 07:56:37 GMT):
@Vipul_Bajaj Your original connection profile is ok except you need to replace `${HOME}` with your actual home directory path in the connection.json however that isn't the cause of the error message you are getting. Can you confirm that you have at least 4Gb machine where you are running this and that the version of python when you run the command `python` is version 2 and not version 3 ?
CarlitoIBM (Tue, 20 Jun 2017 07:58:39 GMT):
Has joined the channel.
Jakeeyturner (Tue, 20 Jun 2017 07:59:46 GMT):
@Vipul_Bajaj Disregard my previous comment, listen to @davidkel instead ;)
wael (Tue, 20 Jun 2017 08:01:33 GMT):
Hello, I am trying to run this code :
var businessNetworkDefinition;
var businessNetworkConnection;
return adminConnection.createProfile('testprofile', { type: 'embedded' })
.then(function() {
// Created profile
console.log("Profile created Successfully");
return adminConnection.connect('testprofile', 'admin', 'adminpw')
.then(function() {
// Connected.
console.log("Profile Connected Successfully");
return BusinessNetworkDefinition.fromDirectory(path.resolve(__dirname, './network'));
// console.log(" bbbbbb" + businessNetworkDefinition);
}).then(function(businessNetworkDefinition) {
// this.busNetworkDefinition = businessNetworkDefinition;
console.log("business Network Definition");
return adminConnection.deploy(businessNetworkDefinition);
}).then(function(deploy) {
console.log("deploy successful ");
businessNetworkConnection = new BusinessNetworkConnection({ fs: bfs_fs });
return businessNetworkConnection.connect('testprofile', 'network', 'admin', 'adminpw')
}).then(function() {
console.log("Successss ...!!!");
})
.catch(function(error) {
// Add optional error handling here.
console.log(error);
})
});
but I got:
Error: Failed to load connector module "composer-connector-embedded" for connection profile "testprofile"
just when I try to do businessNetworkConnection.connect('testprofile', 'network', 'admin', 'adminpw')
Any Suggestions ??
wael (Tue, 20 Jun 2017 08:01:33 GMT):
Hello, I am trying to run this code :
var businessNetworkDefinition;
var businessNetworkConnection;
return adminConnection.createProfile('testprofile', { type: 'embedded' })
.then(function() {
// Created profile
console.log("Profile created Successfully");
return adminConnection.connect('testprofile', 'admin', 'adminpw')
.then(function() {
// Connected.
console.log("Profile Connected Successfully");
return BusinessNetworkDefinition.fromDirectory(path.resolve(__dirname, './network'));
}).then(function(businessNetworkDefinition) {
// this.busNetworkDefinition = businessNetworkDefinition;
console.log("business Network Definition");
return adminConnection.deploy(businessNetworkDefinition);
}).then(function(deploy) {
console.log("deploy successful ");
businessNetworkConnection = new BusinessNetworkConnection({ fs: bfs_fs });
return businessNetworkConnection.connect('testprofile', 'network', 'admin', 'adminpw')
}).then(function() {
console.log("Successss ...!!!");
})
.catch(function(error) {
// Add optional error handling here.
console.log(error);
})
});
but I got:
Error: Failed to load connector module "composer-connector-embedded" for connection profile "testprofile"
just when I try to do businessNetworkConnection.connect('testprofile', 'network', 'admin', 'adminpw')
Any Suggestions ??
dselman (Tue, 20 Jun 2017 08:02:23 GMT):
Did you declare the dependency in package.json and run npm install?
wael (Tue, 20 Jun 2017 08:03:34 GMT):
if you mean the dependency composer-connector-embedded : "latest" , so yes , and I did npm install to the network
dselman (Tue, 20 Jun 2017 08:04:39 GMT):
Take a look at this sample test and its package.json: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js
dselman (Tue, 20 Jun 2017 08:04:44 GMT):
It does that
wael (Tue, 20 Jun 2017 08:05:29 GMT):
that's exactly what I was looking at when I have done it
wael (Tue, 20 Jun 2017 08:06:01 GMT):
same code , but I had the error
dselman (Tue, 20 Jun 2017 08:06:12 GMT):
Unlikely... :-)
dselman (Tue, 20 Jun 2017 08:06:40 GMT):
Try a `git clone` of the sample repo and then `npm install` followed by `npm test` for the bond sample.
dselman (Tue, 20 Jun 2017 08:07:00 GMT):
If you've correctly installed v0.8 it should work (automation checks it).
Vipul_Bajaj (Tue, 20 Jun 2017 08:19:08 GMT):
@davidkel Yes my machine have 4gb RAM and the python version is 2.7.12
jaguarg (Tue, 20 Jun 2017 08:21:59 GMT):
Hi , I am having issues with `composer-rest-server` command. Anybody got it working ok ?
jaguarg (Tue, 20 Jun 2017 08:22:33 GMT):
```vagrant@vagrant-ubuntu-trusty-64:~/business_networks$ composer-rest-server -p hlfv1 -n mynetwork -i PeerAdmin -s foounknown -N always
Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
It will be retried for the next request.
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
at connectionProfileStore.load.then.e (/home/vagrant/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:148:27)```
jaguarg (Tue, 20 Jun 2017 08:22:33 GMT):
```vagrant@vagrant-ubuntu-trusty-64:~/business_networks$ composer-rest-server -p hlfv1 -n mynetwork -i PeerAdmin -s foounknown -N always
Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
It will be retried for the next request.
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
at connectionProfileStore.load.then.e (/home/vagrant/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:148:27)```
dselman (Tue, 20 Jun 2017 08:27:56 GMT):
PeerAdmin should only be used to deploy a network. Try using admin/adminpw
jaguarg (Tue, 20 Jun 2017 08:39:05 GMT):
@dselman I tried and got the same error message
xuzhao103389 (Tue, 20 Jun 2017 08:47:21 GMT):
Hi
xuzhao103389 (Tue, 20 Jun 2017 08:47:29 GMT):
I have imported an identity
xuzhao103389 (Tue, 20 Jun 2017 08:47:49 GMT):
omposer identity import -p hlfv1 -u PeerAdmin -c /root/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/signcerts/Admin@org1.example.com-cert.pem -k /root/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/keystore/9022d671ceedbb24af3ea69b5a8136cc64203df6b9920e26f48123fcfcb1d2e9_sk
An identity was imported with name 'PeerAdmin' successfully
Command completed successfully.
Command succeeded
xuzhao103389 (Tue, 20 Jun 2017 08:48:01 GMT):
but when deploying the chaincode , it is still failed
xuzhao103389 (Tue, 20 Jun 2017 08:48:16 GMT):
root@ruts1:/composer-sample-networks/packages/marbles-network/dist# composer network deploy -p hlfv1 -a marbles-network.bna -i PeerAdmin -s adminpw
Deploying business network from archive: marbles-network.bna
Business network definition:
Identifier: marbles-network@0.0.10
Description: Marble Trading Network
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed
Command failed
xuzhao103389 (Tue, 20 Jun 2017 08:49:35 GMT):
the error message is :
xuzhao103389 (Tue, 20 Jun 2017 08:49:37 GMT):
2017-06-20T08:46:38.969Z INFO ConnectionProfileManager :constructor() Created a new ConnectionProfileManager {"0":{"fs":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":64,"O_EXCL":128,"O_NOCTTY":256,"O_TRUNC":512,"O_APPEND":1024,"O_DIRECTORY":65536,"O_NOATIME":262144,"O_NOFOLLOW":131072,"O_SYNC":4096,"O_DIRECT":16384,"O_NONBLOCK":2048,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1}}}$
2017-06-20T08:46:38.977Z INFO FSConnectionProfileStore :save() Saved connection profile hlfv1 {}$
2017-06-20T08:46:38.978Z INFO ConnectionProfileManager :connect() Connecting using hlfv1 {"0":null}$
2017-06-20T08:46:38.981Z INFO FSConnectionProfileStore :load() Loaded connection profile hlfv1 {"0":"{\n \"type\": \"hlfv1\",\n \"orderers\": [\n {\n \"url\": \"grpc://localhost:7050\"\n }\n ],\n \"ca\": {\n \"url\": \"http://localhost:7054\",\n \"name\": \"ca.example.com\"\n },\n \"peers\": [\n {\n \"requestURL\": \"grpc://localhost:7051\",\n \"eventURL\": \"grpc://localhost:7053\"\n }\n ],\n \"keyValStore\": \"/root/.hfc-key-store\",\n \"channel\": \"mychannel\",\n \"mspID\": \"Org1MSP\",\n \"timeout\": \"300\"\n}"}$
2017-06-20T08:46:38.982Z INFO ConnectionProfileManager :getConnectionManager() Looking up a connection manager for profile {"0":"hlfv1"}$
2017-06-20T08:46:38.983Z INFO FSConnectionProfileStore :load() Loaded connection profile hlfv1 {"0":"{\n \"type\": \"hlfv1\",\n \"orderers\": [\n {\n \"url\": \"grpc://localhost:7050\"\n }\n ],\n \"ca\": {\n \"url\": \"http://localhost:7054\",\n \"name\": \"ca.example.com\"\n },\n \"peers\": [\n {\n \"requestURL\": \"grpc://localhost:7051\",\n \"eventURL\": \"grpc://localhost:7053\"\n }\n ],\n \"keyValStore\": \"/root/.hfc-key-store\",\n \"channel\": \"mychannel\",\n \"mspID\": \"Org1MSP\",\n \"timeout\": \"300\"\n}"}$
2017-06-20T08:46:39.506Z INFO ConnectionProfileManager :getConnectionManager() Using this connection manager {"0":{"connectionProfileManager":{"connectionProfileStore":{"fs":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":64,"O_EXCL":128,"O_NOCTTY":256,"O_TRUNC":512,"O_APPEND":1024,"O_DIRECTORY":65536,"O_NOATIME":262144,"O_NOFOLLOW":131072,"O_SYNC":4096,"O_DIRECT":16384,"O_NONBLOCK":2048,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1}}}}}$
2017-06-20T08:46:47.769Z ERROR HLFConnection :_install() {"message":"error trying install chaincode. Error: Connect Failed","stack":"Error: error trying install chaincode. Error: Connect Failed\n at temp.mkdir.then.then.then.then.then.catch (/opt/node-v6.9.5-linux-x64/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:367:34)"}$
john2000 (Tue, 20 Jun 2017 08:55:27 GMT):
when i run "yo hyperledger-composer", show me the error:" EACCES: permission denied, open '/root/.config/configstore/insight-yo.json' ",
john2000 (Tue, 20 Jun 2017 08:55:32 GMT):
node --version
v6.11.0
john2000 (Tue, 20 Jun 2017 08:56:18 GMT):
"npm install -g yo " no error
john2000 (Tue, 20 Jun 2017 08:58:05 GMT):
i was try "chmod -R 777 /root/.config/configstore",but not effect
john2000 (Tue, 20 Jun 2017 08:59:21 GMT):
Some steps did I ignore?
ecn (Tue, 20 Jun 2017 09:05:13 GMT):
Has joined the channel.
john2000 (Tue, 20 Jun 2017 09:31:51 GMT):
I switch to normal users "no root user", type command " yo hyperledger-composer ", everything is ok. Tks
zupan (Tue, 20 Jun 2017 09:39:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XqMym34Bn7eaLRuhj) @xuzhao103389 I think that based on the documentation you should use *randomString* instead of *adminpw*
xuzhao103389 (Tue, 20 Jun 2017 09:41:15 GMT):
root@ruts1:/composer-sample-networks/packages/marbles-network/dist# composer network deploy -p hlfv1 -a marbles-network.bna -i PeerAdmin -s randomString
Deploying business network from archive: marbles-network.bna
Business network definition:
Identifier: marbles-network@0.0.10
Description: Marble Trading Network
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed
Command failed
root@ruts1:/composer-sample-networks/packages/marbles-network/dist#
xuzhao103389 (Tue, 20 Jun 2017 09:41:31 GMT):
@zupan I think it is not a problem of secret
xuzhao103389 (Tue, 20 Jun 2017 09:42:03 GMT):
from the log, we can see it is a failure of connection
zupan (Tue, 20 Jun 2017 09:44:27 GMT):
I saw that, just that I got same log when I had wrong secret before
zupan (Tue, 20 Jun 2017 09:44:27 GMT):
when running `yo hyperledger-composer` I get strange error that I wasn't receiving before 0.8.0...
```
About to connect to a running business network
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/usr/lib/node_modules/generator-hyperledger-composer/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._receiveStatus (/usr/lib/node_modules/generator-hyperledger-composer/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:180:8)
at /usr/lib/node_modules/generator-hyperledger-composer/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:649:14
```
zupan (Tue, 20 Jun 2017 09:44:27 GMT):
when running `yo hyperledger-composer` I get strange error that I wasn't receiving before 0.8.0...
```
About to connect to a running business network
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/usr/lib/node_modules/generator-hyperledger-composer/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._receiveStatus (/usr/lib/node_modules/generator-hyperledger-composer/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:180:8)
at /usr/lib/node_modules/generator-hyperledger-composer/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:649:14
```
Note: `composer-rest-framework` is running without problems and I also tested business logic in playground and successfully deployed it to the network
davidkel (Tue, 20 Jun 2017 09:45:13 GMT):
@xuzhao103389 could you post your `docker ps` and `cat ~/.composer-connection-profiles/hlfv1/connection.json`. Was it working before and now has stopped working ? A connect failed implies something wrong either with the fabric itself or some docker network problem
davidkel (Tue, 20 Jun 2017 09:45:43 GMT):
@jaguarg I guess it has been working and has now stopped working with a `connect failed` ?
xuzhao103389 (Tue, 20 Jun 2017 09:45:48 GMT):
root@ruts1:/composer-sample-networks/packages/marbles-network/dist# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6da0e2f9091b hyperledger/fabric-peer:x86_64-1.0.0-beta "peer node start -..." 18 hours ago Up 18 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
3c82e2bf354a hyperledger/fabric-couchdb:x86_64-1.0.0-beta "tini -- /docker-e..." 18 hours ago Up 18 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
ba5804c56ab4 hyperledger/fabric-orderer:x86_64-1.0.0-beta "orderer" 18 hours ago Up 18 hours 0.0.0.0:7050->7050/tcp orderer.example.com
c2f15f280eba hyperledger/fabric-ca:x86_64-1.0.0-beta "sh -c 'fabric-ca-..." 18 hours ago Up 18 hours 0.0.0.0:7054->7054/tcp ca.example.com
root@ruts1:/composer-sample-networks/packages/marbles-network/dist#
xuzhao103389 (Tue, 20 Jun 2017 09:46:10 GMT):
root@ruts1:/composer-sample-networks/packages/marbles-network/dist# cat ~/.composer-connection-profiles/hlfv1/connection.json
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://localhost:7050"
}
],
"ca": {
"url": "http://localhost:7054",
"name": "ca.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/root/.hfc-key-store",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": "300"
}root@ruts1:/composer-sample-networks/pac
xuzhao103389 (Tue, 20 Jun 2017 09:46:24 GMT):
@davidkel this never working for me, first setup
Matthias.Kloppmann (Tue, 20 Jun 2017 09:47:48 GMT):
Has joined the channel.
davidkel (Tue, 20 Jun 2017 09:48:55 GMT):
@xuzhao103389 you can see if there is a problem with the peer by running `docker logs peer0.org1.example.com` but I am wondering if there is some sort of docker network issue.
davidkel (Tue, 20 Jun 2017 09:54:49 GMT):
@jaguarg how much memory have you allocated to your vagrant environment ?
davidkel (Tue, 20 Jun 2017 09:58:26 GMT):
@Vipul_Bajaj Failure to load the connector sometimes means that the dependencies failed to build or you don't have enough memory. First thing to try is to uninstall and reinstall composer-cli and watch for any errors downloading dependencies or building native libraries which may fail.
xuzhao103389 (Tue, 20 Jun 2017 10:13:49 GMT):
@davidkel here is the log from peer
xuzhao103389 (Tue, 20 Jun 2017 10:14:11 GMT):
2017-06-20 10:10:31.590 UTC [shim] func1 -> DEBU 2d3 [fbf40a2e]Init get response status: 200
2017-06-20 10:10:31.590 UTC [shim] func1 -> DEBU 2d4 [fbf40a2e]Init succeeded. Sending COMPLETED
2017-06-20 10:10:31.590 UTC [shim] func1 -> DEBU 2d5 [fbf40a2e]Move state message COMPLETED
2017-06-20 10:10:31.590 UTC [shim] handleMessage -> DEBU 2d6 [fbf40a2e]Handling ChaincodeMessage of type: COMPLETED(state:ready)
2017-06-20 10:10:31.590 UTC [shim] func1 -> DEBU 2d7 [fbf40a2e]send state message COMPLETED
2017-06-20 10:10:31.590 UTC [chaincode] processStream -> DEBU 2d8 [fbf40a2e]Received message COMPLETED from shim
2017-06-20 10:10:31.591 UTC [chaincode] HandleMessage -> DEBU 2d9 [fbf40a2e]Fabric side Handling ChaincodeMessage of type: COMPLETED in state ready
2017-06-20 10:10:31.591 UTC [chaincode] HandleMessage -> DEBU 2da [fbf40a2e-4605-4556-
xuzhao103389 (Tue, 20 Jun 2017 10:14:57 GMT):
the trace log is
xuzhao103389 (Tue, 20 Jun 2017 10:14:59 GMT):
2017-06-20T10:12:07.660Z INFO ConnectionProfileManager :constructor() Created a new ConnectionProfileManager {"0":{"fs":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":64,"O_EXCL":128,"O_NOCTTY":256,"O_TRUNC":512,"O_APPEND":1024,"O_DIRECTORY":65536,"O_NOATIME":262144,"O_NOFOLLOW":131072,"O_SYNC":4096,"O_DIRECT":16384,"O_NONBLOCK":2048,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1}}}$
2017-06-20T10:12:07.671Z INFO FSConnectionProfileStore :save() Saved connection profile hlfv1 {}$
2017-06-20T10:12:07.672Z INFO ConnectionProfileManager :connect() Connecting using hlfv1 {"0":null}$
2017-06-20T10:12:07.675Z INFO FSConnectionProfileStore :load() Loaded connection profile hlfv1 {"0":"{\n \"type\": \"hlfv1\",\n \"orderers\": [\n {\n \"url\": \"grpc://localhost:7050\"\n }\n ],\n \"ca\": {\n \"url\": \"http://localhost:7054\",\n \"name\": \"ca.example.com\"\n },\n \"peers\": [\n {\n \"requestURL\": \"grpc://localhost:7051\",\n \"eventURL\": \"grpc://localhost:7053\"\n }\n ],\n \"keyValStore\": \"/root/.hfc-key-store\",\n \"channel\": \"mychannel\",\n \"mspID\": \"Org1MSP\",\n \"timeout\": \"300\"\n}"}$
2017-06-20T10:12:07.676Z INFO ConnectionProfileManager :getConnectionManager() Looking up a connection manager for profile {"0":"hlfv1"}$
2017-06-20T10:12:07.678Z INFO FSConnectionProfileStore :load() Loaded connection profile hlfv1 {"0":"{\n \"type\": \"hlfv1\",\n \"orderers\": [\n {\n \"url\": \"grpc://localhost:7050\"\n }\n ],\n \"ca\": {\n \"url\": \"http://localhost:7054\",\n \"name\": \"ca.example.com\"\n },\n \"peers\": [\n {\n \"requestURL\": \"grpc://localhost:7051\",\n \"eventURL\": \"grpc://localhost:7053\"\n }\n ],\n \"keyValStore\": \"/root/.hfc-key-store\",\n \"channel\": \"mychannel\",\n \"mspID\": \"Org1MSP\",\n \"timeout\": \"300\"\n}"}$
2017-06-20T10:12:08.281Z INFO ConnectionProfileManager :getConnectionManager() Using this connection manager {"0":{"connectionProfileManager":{"connectionProfileStore":{"fs":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":64,"O_EXCL":128,"O_NOCTTY":256,"O_TRUNC":512,"O_APPEND":1024,"O_DIRECTORY":65536,"O_NOATIME":262144,"O_NOFOLLOW":131072,"O_SYNC":4096,"O_DIRECT":16384,"O_NONBLOCK":2048,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1}}}}}$
2017-06-20T10:12:16.348Z ERROR HLFConnection :_install() {"message":"error trying install chaincode. Error: Connect Failed","stack":"Error: error trying install chaincode. Error: Connect Failed\n at temp.mkdir.then.then.then.then.then.catch (/opt/node-v6.9.5-linux-x64/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:367:34)"}$
xuzhao103389 (Tue, 20 Jun 2017 10:16:16 GMT):
@davidkel from docker logs peer0.org1.example.com , did not find errors
xuzhao103389 (Tue, 20 Jun 2017 10:25:45 GMT):
@davidkel I saw some error message from the peer log,
2017-06-20 10:10:31.554 UTC [couchdb] SaveDoc -> DEBU 20b Entering SaveDoc() id=[statedb_savepoint]
2017-06-20 10:10:31.554 UTC [couchdb] SaveDoc -> DEBU 20c rev=
2017-06-20 10:10:31.554 UTC [couchdb] ReadDoc -> DEBU 20d Entering ReadDoc() id=[statedb_savepoint]
2017-06-20 10:10:31.554 UTC [couchdb] handleRequest -> DEBU 20e Entering handleRequest() method=GET url=http://couchdb:5984/mychannel/statedb_savepoint?attachments=true
2017-06-20 10:10:31.554 UTC [couchdb] handleRequest -> DEBU 20f HTTP Request: GET /mychannel/statedb_savepoint?attachments=true HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2017-06-20 10:10:31.556 UTC [couchdb] handleRequest -> DEBU 210 Couch DB Error:not_found, Status Code:404, Reason:missing
2017-06-20 10:10:31.556 UTC [couchdb] ReadDoc -> DEBU 211 Document not found (404), returning nil value instead of 404 error
2017-06-20 10:10:31.556 UTC [couchdb] handleRequest -> DEBU 212 Entering handleRequest() method=PUT url=http://couchdb:5984/mychannel/statedb_savepoint
Vipul_Bajaj (Tue, 20 Jun 2017 10:27:36 GMT):
@davidkel I should try installing composer-cli as superuser or simple user
dselman (Tue, 20 Jun 2017 10:50:32 GMT):
simple user
Vipul_Bajaj (Tue, 20 Jun 2017 10:52:29 GMT):
@dselman thanks
davidkel (Tue, 20 Jun 2017 11:28:43 GMT):
@xuzhao103389 It really looks like there is a problem with docker. I've just been looking with someone else who also had strange network problems with not being able to connect to docker containers. Only solution we had at the time was a reboot
xuzhao103389 (Tue, 20 Jun 2017 11:41:23 GMT):
@davidkel I have rebooted my server, but still hit the similar issue
xuzhao103389 (Tue, 20 Jun 2017 11:41:24 GMT):
root@ruts1:/composer-sample-networks/packages/marbles-network/dist# composer network deploy -p hlfv1 -a marbles-network.bna -i PeerAdmin -s adminpw
Deploying business network from archive: marbles-network.bna
Business network definition:
Identifier: marbles-network@0.0.10
Description: Marble Trading Network
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed
Command failed
xuzhao103389 (Tue, 20 Jun 2017 11:41:55 GMT):
root@ruts1:/composer-sample-networks/packages/marbles-network/dist# docker --version
Docker version 17.03.1-ce, build c6d412e
root@ruts1:/composer-sample-networks/packages/marbles-network/dist#
root@ruts1:/composer-sample-networks/packages/marbles-network/dist#
root@ruts1:/composer-sample-networks/packages/marbles-network/dist# docker-compose --version
docker-compose version 1.11.2, build dfed245
davidkel (Tue, 20 Jun 2017 11:50:11 GMT):
@xuzhao103389 when you run startFabric.sh do you get the message at the end saying 'Peer joined channel' ?
xuzhao103389 (Tue, 20 Jun 2017 12:09:42 GMT):
@davidkel yes, 6-20 12:09:19.751 UTC [msp] GetDefaultSigningIdentity -> DEBU 005 Obtaining default signing identity
2017-06-20 12:09:19.753 UTC [channelCmd] InitCmdFactory -> INFO 006 Endorser and orderer connections initialized
2017-06-20 12:09:19.753 UTC [msp/identity] Sign -> DEBU 007 Sign: plaintext: 0A9E070A5C08011A0C08EFA0A4CA0510...F669CF8BF6C31A080A000A000A000A00
2017-06-20 12:09:19.753 UTC [msp/identity] Sign -> DEBU 008 Sign: digest: 5CFB53FD8EBA809D2C78C3EDFD542119E183266C52F82C82189D77DEC19F17A1
2017-06-20 12:09:20.303 UTC [channelCmd] executeJoin -> INFO 009 Peer joined the channel!
2017-06-20 12:09:20.304 UTC [main] main -> INFO 00a Exiting.....
cd ../..
xuanyue202 (Tue, 20 Jun 2017 12:20:07 GMT):
Hi, I think there is no inconsistency on Relationship between the doc and the actual implementation.
xuanyue202 (Tue, 20 Jun 2017 12:20:21 GMT):
In the doc, it reads "Relationships must be resolved to retrieve an instance of the object being referenced. The act of resolution may result in null, if the object no longer exists or the information in the relationship is invalid.", which looks good
xuanyue202 (Tue, 20 Jun 2017 12:22:40 GMT):
However, in the playground, if an invalid relationships in a Relationship of a Relationship as a transaction field, for example, will results in an failure of the transaction execution.
xuanyue202 (Tue, 20 Jun 2017 12:24:19 GMT):
Message Attachments
xuanyue202 (Tue, 20 Jun 2017 12:25:17 GMT):
for example, either missing owner, or any SampleAsset in assets array, will results in an exception during the transaction execution.
xuanyue202 (Tue, 20 Jun 2017 12:27:51 GMT):
since "Relationships are unidirectional and deletes do not cascade", this will make the Relationship management very hard. I think to leave the deleted relationships as null, just as stated in the doc, is a better solution.
dselman (Tue, 20 Jun 2017 12:30:53 GMT):
The runtime will resolve relationships in incoming transactions
dselman (Tue, 20 Jun 2017 12:31:35 GMT):
we could however leave them as null if they fail to resolve, rather than throwing an exception
dselman (Tue, 20 Jun 2017 12:31:36 GMT):
?
emlorc01 (Tue, 20 Jun 2017 12:35:31 GMT):
hi @davidkel @dselman Sorry for late response since my posts yesterday. I tried what was suggested, stopFabric and teardownFabric, removing all contents of ~/.hfc-key-store, then startFabric and re-running createComposerProfile.sh. I still get same error as before
emlorc01 (Tue, 20 Jun 2017 12:35:42 GMT):
Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed
Command failed
emlorc01 (Tue, 20 Jun 2017 12:36:08 GMT):
Also I tried again to run nc localhost 7051 again and it still hangs same as the first time
davidkel (Tue, 20 Jun 2017 12:37:41 GMT):
@emlorc01 so the only way I have been able to create that error is if I change my connection profile so the peer url info are pointing to the wrong ports. I have also seen docker networking get confused such that comms to docker containers stopped working and a reboot was required. If you do `sudo netstat -nlp` (assuming you are linux) what do you get ?
emlorc01 (Tue, 20 Jun 2017 12:40:19 GMT):
sudo netstat -nlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1267/sshd
tcp6 0 0 :::7050 :::* LISTEN 8271/docker-proxy
tcp6 0 0 :::7051 :::* LISTEN 8493/docker-proxy
tcp6 0 0 :::7053 :::* LISTEN 8481/docker-proxy
tcp6 0 0 :::7054 :::* LISTEN 8223/docker-proxy
tcp6 0 0 :::22 :::* LISTEN 1267/sshd
tcp6 0 0 :::5984 :::* LISTEN 8143/docker-proxy
Active UNIX domain sockets (only servers)
Proto RefCnt Flags Type State I-Node PID/Program name Path
unix 2 [ ACC ] STREAM LISTENING 1162772 7359/systemd /run/user/1002/systemd/private
unix 2 [ ACC ] SEQPACKET LISTENING 7735 1/init /run/udev/control
unix 2 [ ACC ] STREAM LISTENING 886268 1/init /var/run/docker.sock
unix 2 [ ACC ] STREAM LISTENING 8164 1/init /var/run/dbus/system_bus_socket
unix 2 [ ACC ] STREAM LISTENING 8165 1/init /run/acpid.socket
unix 2 [ ACC ] STREAM LISTENING 7717 1/init /run/systemd/private
unix 2 [ ACC ] STREAM LISTENING 8166 1/init /run/uuidd/request
unix 2 [ ACC ] STREAM LISTENING 8168 1/init /run/snapd.socket
unix 2 [ ACC ] STREAM LISTENING 8169 1/init /run/snapd-snap.socket
unix 2 [ ACC ] STREAM LISTENING 7725 1/init /run/systemd/journal/stdout
unix 2 [ ACC ] STREAM LISTENING 7736 1/init /run/systemd/fsck.progress
unix 2 [ ACC ] STREAM LISTENING 8167 1/init /var/lib/lxd/unix.socket
unix 2 [ ACC ] STREAM LISTENING 7746 1/init /run/lvm/lvmpolld.socket
unix 2 [ ACC ] STREAM LISTENING 7747 1/init /run/lvm/lvmetad.socket
unix 2 [ ACC ] STREAM LISTENING 881053 18723/docker-contai /var/run/docker/libcontainerd/docker-containerd.sock
unix 2 [ ACC ] STREAM LISTENING 881057 18713/dockerd /run/docker/libnetwork/9cdd85c4e2612ce09e94aa0503937ba85d81a32d1766f602a7ae2e0a01bc944d.sock
unix 2 [ ACC ] STREAM LISTENING 17545 1284/iscsid @ISCSIADM_ABSTRACT_NAMESPACE
davidkel (Tue, 20 Jun 2017 12:42:15 GMT):
@emlorc01 could you set the following env `export GRPC_VERBOSITY=DEBUG` and try your deploy again
xuanyue202 (Tue, 20 Jun 2017 12:43:44 GMT):
I am not sure. But just use to take the sample as an example. 1. Create a sample asset and reference to a non-exist participant; 2. Submit a transaction specifying the created asset as argument. 3. an exception is thrown
xuanyue202 (Tue, 20 Jun 2017 12:43:51 GMT):
Message Attachments
xuanyue202 (Tue, 20 Jun 2017 12:43:57 GMT):
@dselman
xuanyue202 (Tue, 20 Jun 2017 12:44:33 GMT):
Tested in https://composer-playground.mybluemix.net/
xuanyue202 (Tue, 20 Jun 2017 12:45:13 GMT):
you can easily construct other examples that involves asset relationships and see the similar result
emlorc01 (Tue, 20 Jun 2017 12:45:19 GMT):
@davidkel that command got me a little further but still ultimately failed
emlorc01 (Tue, 20 Jun 2017 12:45:22 GMT):
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.10
Description: The Hello World of Hyperledger Composer samples
I0620 08:44:11.107629315 8796 ev_epoll_linux.c:85] epoll engine will be using signal: 36
D0620 08:44:11.107783360 8796 ev_posix.c:106] Using polling engine: epoll
â Deploying business network definition. This may take a minute...I0620 08:44:11.922997751 8796 http_connect_handshaker.c:319] Connecting to server localhost:7053 via HTTP proxy ipv4:3.8.84.14:8080
â ¹ Deploying business network definition. This may take a minute...I0620 08:44:12.144725956 8796 subchannel.c:705] Connect failed: {"created":"@1497962652.144414871","description":"HTTP proxy returned response code 502","file":"../src/core/ext/client_channel/http_connect_handshaker.c","file_line":229}
I0620 08:44:12.144992155 8796 subchannel.c:503] Retry in 19.776533608 seconds
â ´ Deploying business network definition. This may take a minute...I0620 08:44:48.788524662 8796 subchannel.c:453] Failed to connect to channel, retrying
I0620 08:44:48.790381915 8796 http_connect_handshaker.c:319] Connecting to server localhost:7053 via HTTP proxy ipv4:3.8.84.14:8080
I0620 08:44:48.790540227 8796 http_connect_handshaker.c:319] Connecting to server localhost:7051 via HTTP proxy ipv4:3.8.84.14:8080
â § Deploying business network definition. This may take a minute...I0620 08:44:48.972389804 8796 subchannel.c:705] Connect failed: {"created":"@1497962688.972206019","description":"HTTP proxy returned response code 502","file":"../src/core/ext/client_channel/http_connect_handshaker.c","file_line":229}
I0620 08:44:48.972436573 8796 subchannel.c:503] Retry in 19.817088926 seconds
â Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed
Command failed
davidkel (Tue, 20 Jun 2017 12:51:00 GMT):
@emlorc01 You are the 2nd person to show that localhost is trying to go via some sort of proxy which I don't understand.
davidkel (Tue, 20 Jun 2017 12:58:46 GMT):
@emlorc01 and we have now know the answer. localhost in your connection profile is causing a problem try replacing it with your specific ip address of your machine
emlorc01 (Tue, 20 Jun 2017 13:02:00 GMT):
ok great. yes i was just now setting no_proxy variable to localhost but that didnt seem to fix it.
emlorc01 (Tue, 20 Jun 2017 13:02:12 GMT):
to change the connection profile should i change it in the createComposerProfile.sh before running that script? or elsewhere?
emlorc01 (Tue, 20 Jun 2017 13:03:14 GMT):
or here composer-
emlorc01 (Tue, 20 Jun 2017 13:03:30 GMT):
~/.composer-connection-profiles/hlfv1/connection.json
davidkel (Tue, 20 Jun 2017 13:06:21 GMT):
@emlorc01 it needs to be changed in ~/.composer-connection-profiles/hlfv1/connection.json and you could change it in createConposerProfile.sh so that if you run that again in the future it will create hlfv1 again with your required info
emlorc01 (Tue, 20 Jun 2017 13:07:01 GMT):
ok it succeeded! awesome. thanks for the help!
emlorc01 (Tue, 20 Jun 2017 13:07:13 GMT):
i wonder what is reason that it wont recognize localhost, but changing all instances of localhost to my actual IP did the trick
davidkel (Tue, 20 Jun 2017 13:08:47 GMT):
Good question, be interested to know your exact environment you are in including whether you are running specific company images of operating systems
emlorc01 (Tue, 20 Jun 2017 13:11:42 GMT):
i'm honestly not sure, i will have to ask the guy who provisioned this server for me. it is ubuntu 16.04 but if i find out anything about the specific image i will let you know.
davidkel (Tue, 20 Jun 2017 13:15:39 GMT):
Ok, thanks.
jdockter (Tue, 20 Jun 2017 13:20:57 GMT):
Running into an error with integrating loopback into IIB, posted to SO here, https://github.com/hyperledger/composer/issues/1339 , anyone else had problems with loopback integration after 0.8 upgrade?
jdockter (Tue, 20 Jun 2017 13:21:32 GMT):
btw...everything else ie CLI, REST server, playground, etc. is working fine
mahoney1 (Tue, 20 Jun 2017 13:26:56 GMT):
hey Jon, yes, this problem has been seen very recently :-) I've updated the github issue to that effect. It fails to resolve the path to a module needed by IIB: "Failed to load connector module "composer-connector-hlfv1"
jaguarg (Tue, 20 Jun 2017 13:43:37 GMT):
@dselman i retried with admin/adminpw and got the same issue. Please can you confirm what the adminpw is ?
jaguarg (Tue, 20 Jun 2017 13:46:02 GMT):
@dselman i retried with admin/adminpw and got the same issue. Any clue ?
davidoevans (Tue, 20 Jun 2017 13:52:17 GMT):
I have created a participant, issued and identity and started composer-rest-server with securely. Now how do I use my userID/userSecret to make rest calls?
davidoevans (Tue, 20 Jun 2017 13:52:17 GMT):
I have created a participant, issued an identity and started composer-rest-server with securely. Now how do I use my userID/userSecret to make rest calls?
davidoevans (Tue, 20 Jun 2017 13:52:17 GMT):
I have created a participant, issued an identity and started composer-rest-server securely. Now how do I use my userID/userSecret to make rest calls?
davidoevans (Tue, 20 Jun 2017 13:57:02 GMT):
here i've tried curl
```
curl -X POST -H "Content-Type:application/json" -d '{"userID":"david1", "userSecret":"jYqnLdpdsocn"}' hcalhost:3000/api/org.healthchain.Prescriber
{"error":{"statusCode":401,"name":"Error","message":"Authorization Required","code":"AUTHORIZATION_REQUIRED","stack":"Error: Authorization Required\n
```
VimalkumarNair (Tue, 20 Jun 2017 13:57:42 GMT):
Hello there, i am trying to create an end-to-end Hyperledger Composer solution but when i am creating Business Network Archive and deploying to the running Hyperledger Fabric, i am "Failed to save connection profile hlfv1 ".
Can any one please help me on this issue....Note that i am following the Hyperledger Composer developer guide tutorial.
Pere-Lluis (Tue, 20 Jun 2017 14:02:51 GMT):
I had a similar problem a week ago and I was told it was due to Fabric being a version ahead
Pere-Lluis (Tue, 20 Jun 2017 14:03:11 GMT):
is this still true? Is composer fully compatible with the new Fabric Beta?
davidoevans (Tue, 20 Jun 2017 14:04:08 GMT):
Composer v0.8 seems to be working nicely with Fabric-1.0.0-beta based on latest Composer Developer docs posted last Thursday
sstone1 (Tue, 20 Jun 2017 14:07:05 GMT):
:+1:
davidoevans (Tue, 20 Jun 2017 14:12:12 GMT):
further to my note above...i have github oauth working so when I access my composer-rest-server that way, I am authorized but the error I get when trying to access the same GET call above is
```
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "No enrollment ID or enrollment secret has been provided",
"stack": "Error: No enrollment ID or enrollment secret has been provided\n at BusinessNetworkConnector.getConnectionWrapper
...
```
dselman (Tue, 20 Jun 2017 14:14:00 GMT):
:muscle:
davidoevans (Tue, 20 Jun 2017 14:17:21 GMT):
So how associate my github oauth authentication with the userid/secrect generated via `composer identity issue ...` (which I believe is my enrollment id or secret)
davidoevans (Tue, 20 Jun 2017 14:17:21 GMT):
So how associate my github oauth authentication with the userid/secrect generated via `composer identity issue ...` (which I believe is my enrollment id or secret)?
davidoevans (Tue, 20 Jun 2017 14:17:21 GMT):
So how do I associate my github oauth authentication with the userid/secrect generated via `composer identity issue ...` (which I believe is my enrollment id or secret)?
jaguarg (Tue, 20 Jun 2017 14:21:58 GMT):
I need some help with `composer-rest-server`
jaguarg (Tue, 20 Jun 2017 14:23:17 GMT):
I am running composer on vagrant VM with 4GB of memory. Running composer v0.8.0
jaguarg (Tue, 20 Jun 2017 14:23:44 GMT):
`composer network list -i admin -s adminpw -p hlfv1 -n my-network` works great
jaguarg (Tue, 20 Jun 2017 14:24:17 GMT):
but this one fails : `composer-rest-server -p hlfv1 -n voting-network -i admin -s adminpw -N always`
jaguarg (Tue, 20 Jun 2017 14:24:17 GMT):
but this one fails : `composer-rest-server -p hlfv1 -n my-network -i admin -s adminpw -N always`
sstone1 (Tue, 20 Jun 2017 14:28:08 GMT):
@davidoevans did you follow the docs?
sstone1 (Tue, 20 Jun 2017 14:28:23 GMT):
you need to make some REST API calls to add an identity into the wallet once you have authenticated with the REST server
sstone1 (Tue, 20 Jun 2017 14:28:51 GMT):
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
sstone1 (Tue, 20 Jun 2017 14:29:09 GMT):
@jaguarg how does it fail?
davidoevans (Tue, 20 Jun 2017 14:30:15 GMT):
d'oh @sstone1 - i'll continue with those docs...thx.
jaguarg (Tue, 20 Jun 2017 14:30:32 GMT):
@sstone1 that is the error :
```Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
It will be retried for the next request.
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
at connectionProfileStore.load.then.e (/home/vagrant/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:148:27)```
sstone1 (Tue, 20 Jun 2017 14:33:13 GMT):
@jaguarg did you have errors installing before you increased the memory?
sstone1 (Tue, 20 Jun 2017 14:33:25 GMT):
it looks like `composer-cli` is broken but `composer-rest-server` works
jaguarg (Tue, 20 Jun 2017 14:33:30 GMT):
nope
jaguarg (Tue, 20 Jun 2017 14:33:30 GMT):
@sstone1 nope
jaguarg (Tue, 20 Jun 2017 14:33:48 GMT):
i did re-install all on a upgraded vagrant vm
sstone1 (Tue, 20 Jun 2017 14:34:36 GMT):
you reinstalled the VM from scratch?
jaguarg (Tue, 20 Jun 2017 14:35:26 GMT):
@sstone1 I re-installed composer on the same VM after I upgraded it
jaguarg (Tue, 20 Jun 2017 14:35:35 GMT):
I can try from scratch
sstone1 (Tue, 20 Jun 2017 14:36:05 GMT):
no - you just need to uninstall `composer-cli` before you reinstall it
sstone1 (Tue, 20 Jun 2017 14:36:14 GMT):
`npm uninstall -g composer-cli && npm install -g composer-cli`
jaguarg (Tue, 20 Jun 2017 15:01:06 GMT):
@sstone1 I am starting all from scratch : clean VM Ubuntu 14.04.5 LTS (GNU/Linux 3.13.0-116-generic x86_64), with 4GB mem
jaguarg (Tue, 20 Jun 2017 15:04:16 GMT):
following the instructions from here: https://hyperledger.github.io/composer/installing/development-tools.html
sstone1 (Tue, 20 Jun 2017 15:06:01 GMT):
ok cool
jmcnevin (Tue, 20 Jun 2017 15:08:21 GMT):
Has joined the channel.
jaguarg (Tue, 20 Jun 2017 15:18:01 GMT):
@sstone1 it works like a charm ;-)
sstone1 (Tue, 20 Jun 2017 15:21:53 GMT):
good - i suspect an old, failed install of `composer-cli` was lying around
sstone1 (Tue, 20 Jun 2017 15:22:12 GMT):
when you just reinstall without uninstalling first, npm will not always recompile the native modules (even if they're missing!)
rohilsurana (Tue, 20 Jun 2017 15:46:26 GMT):
Hi can anyone tell me if I can use the SQLite 3 loopback connector. In the docs it is mentioned that a NoSQLis recommended?
sacar (Tue, 20 Jun 2017 16:23:14 GMT):
Has joined the channel.
torresjeff (Tue, 20 Jun 2017 16:39:26 GMT):
@here has anyone encountered this error: `Error: Failed to receive commit notification for transaction 'ad75142ab3fd9e7af2c9bb7ad29dd82cc4f2ec420f8f4e29bd1c91c96b7b6580' within the timeout period`
Vipul_Bajaj (Tue, 20 Jun 2017 16:46:52 GMT):
How can Hyperledger Fabric v1.0 can be configured to store the world-state in a CouchDB database?
jeffgarratt (Tue, 20 Jun 2017 16:57:16 GMT):
@Vipul_Bajaj you can set the following config options on your peer... assuming you have a couchdb instance ready...
jeffgarratt (Tue, 20 Jun 2017 16:57:17 GMT):
```CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS: couchdb0:5984
CORE_LEDGER_STATE_STATEDATABASE: CouchDB
jeffgarratt (Tue, 20 Jun 2017 16:58:57 GMT):
@torresjeff I am guessing that your block event is not being received within a timeout from your peer.
Vipul_Bajaj (Tue, 20 Jun 2017 17:26:31 GMT):
I tried to run the following command `docker run -d --name mongo --network hlfv1_default -p 27017:27017 mongo` and got the following error
docker: Error response from daemon: network hlfv1_default not found.
Can you pls tell me where I can find my Network Name
Vipul_Bajaj (Tue, 20 Jun 2017 17:32:56 GMT):
@jeffgarratt Thanks it worked for me.
rjrutkow (Tue, 20 Jun 2017 17:58:04 GMT):
Has joined the channel.
rjrutkow (Tue, 20 Jun 2017 17:58:49 GMT):
Hi, I was wondering if anyone can provide an example of a connection profile for deploying from HFC to blockchain 1.0 Beta
Vipul_Bajaj (Tue, 20 Jun 2017 18:13:59 GMT):
I was trying to configure the REST server with a persistent data store so I was going through the following link https://hyperledger.github.io/composer/unstable/integrating/deploying-the-rest-server.html
I tried to follow the steps involving Docker but was not able to understand the following steps.
1.Create a new, empty directory. Create a new file named Dockerfile in the new directory, with the following contents:
FROM hyperledger/composer-rest-server
RUN npm install --production loopback-connector-mongodb passport-github && \
npm cache clean && \
ln -s node_modules .node_modules
2.Change into the directory created in step 1, and build the Docker image:
docker build -t myorg/my-composer-rest-server .
What is the type of the file Dockerfile which we have to create in step 1
And what is meant by myorg/my-composer-rest-server
gkd720 (Tue, 20 Jun 2017 18:14:58 GMT):
I'm trying the tutorial of the local install of Composer Playground to run the prebuilt car auction sample business network. I'm signed in to Github. I click Import/Replace, pick the car auction network, and click Deploy. I then get an error of "Error: No connection found with ID d5c507d8-b9c9-455e-addd-c40e4ced2133". Am I doing something wrong? Or is this an instance of "In Hyperledger Fabric Beta peers now enforce the concepts of admins and members." seen in the "Installing and running Hyperledger Composer Playground locally" documentation? Thanks for any help or guidance.
gkd720 (Tue, 20 Jun 2017 18:14:58 GMT):
I'm trying the tutorial of the local install of Composer Playground to run the prebuilt car auction sample business network. I'm signed in to Github. I click Import/Replace, pick the car auction network, and click Deploy. I then get an error of "Error: No connection found with ID d5c507d8-b9c9-455e-addd-c40e4ced2133". Am I doing something wrong? Or is this an instance of "In Hyperledger Fabric Beta peers now enforce the concepts of admins and members." seen in the "Installing and running Hyperledger Composer Playground locally" documentation? Thanks for any help or guidance.
gkd720 (Tue, 20 Jun 2017 18:14:58 GMT):
I'm trying the tutorial of the local install of Composer Playground to run the prebuilt car auction sample business network. I'm signed in to Github. I click Import/Replace, pick the car auction network, and click Deploy. I then get an error of "Error: No connection found with ID d5c507d8-b9c9-455e-addd-c40e4ced2133". Am I doing something wrong? Or is this an instance of "In Hyperledger Fabric Beta peers now enforce the concepts of admins and members." seen in the "Installing and running Hyperledger Composer Playground locally" documentation? Thanks for any help or guidance.
Update: OK, I thought I would try the "composer identity import" command from the tutorial, with appropriate paths, but I don't have the composer executable installed, which I guess makes sense since I'm running online! I then went back to the Test tab in the online composer, but now get "Error: No connection found with ID cb902121-36e6-43f4-93bd-add9cb2c3b15". So I guess I'm now really stuck. Any ideas? Thanks.
gkd720 (Tue, 20 Jun 2017 18:14:58 GMT):
I'm trying the tutorial of the local install of Composer Playground to run the prebuilt car auction sample business network. I'm signed in to Github. I click Import/Replace, pick the car auction network, and click Deploy. I then get an error of "Error: No connection found with ID d5c507d8-b9c9-455e-addd-c40e4ced2133". Am I doing something wrong? Or is this an instance of "In Hyperledger Fabric Beta peers now enforce the concepts of admins and members." seen in the "Installing and running Hyperledger Composer Playground locally" documentation? Thanks for any help or guidance.
*Update:* OK, I thought I would try the "composer identity import" command from the tutorial, with appropriate paths, but I don't have the composer executable installed, which I guess makes sense since I'm running online! I then went back to the Test tab in the online composer, but now get "Error: No connection found with ID cb902121-36e6-43f4-93bd-add9cb2c3b15". So I guess I'm now really stuck. Any ideas? Thanks.
rohilsurana (Tue, 20 Jun 2017 18:18:50 GMT):
Hi, in the guide for enabling authentication on rest server it is the config mentions clientId and clientSecret inside a environement variable. That doesn't seem correct. Link - https://hyperledger.github.io/composer/unstable/integrating/enabling-rest-authentication.html ```export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "REPLACE_WITH_CLIENT_ID",
"clientSecret": "REPLACE_WITH_CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'```
rohilsurana (Tue, 20 Jun 2017 18:18:50 GMT):
Hi, in the guide for enabling authentication on rest server it is the config mentions clientId and clientSecret inside a environement variable. That doesn't seem correct. Link - https://hyperledger.github.io/composer/unstable/integrating/enabling-rest-authentication.html ```export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "REPLACE_WITH_CLIENT_ID",
"clientSecret": "REPLACE_WITH_CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'```
rohilsurana (Tue, 20 Jun 2017 18:20:45 GMT):
Shouldn't it be APP_ID and APP_SECRET ?
commercejohn (Tue, 20 Jun 2017 20:03:05 GMT):
Has joined the channel.
davidkel (Tue, 20 Jun 2017 21:01:52 GMT):
@gkd720 not sure what has happened but I would suggest raising an issue on github describing your steps as the error message isn't really helpful in saying what the problem is.
sstone1 (Tue, 20 Jun 2017 21:20:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FGj7bL7wHrvsv7qKT) @Vipul_Bajaj if you followed the developer tutorial, the Docker network name is `composer_default`.
sstone1 (Tue, 20 Jun 2017 21:22:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=iWxNe8heZs2JgaQub) @Vipul_Bajaj `Dockerfile` is the name of the file, and it is a standard name that the `docker build` command looks for in order to build a new Docker image. The name `myorg/my-composer-rest-server` is the name that the tutorial gives to the custom Docker image that you are building as part of the tutorial.
sstone1 (Tue, 20 Jun 2017 21:24:05 GMT):
@gkd720 the error `Error: No connection found with ID d5c507d8-b9c9-455e-addd-c40e4ced2133` means that the backend part of the Composer Playground crashed and lost your connection to the Fabric; you can try refreshing the page which will force a reconnect, but if the problem persists please can you collect the output from Composer Playground? If you are using Docker then you will need to use `docker logs`.
davidoevans (Wed, 21 Jun 2017 01:37:00 GMT):
when trying to connect to business network from javascript such as `businessNetworkConnection.connect(connectionProfile, businessNetworkIdentifier, participantId, participantPwd).then((result)...` with admin and adminpw, why do I get error?
```
Promise {
sstone1 (Wed, 21 Jun 2017 01:44:57 GMT):
@davidoevans it looks like you are using an old version of the `composer-client` library to talk to a Fabric v1.0 beta
sstone1 (Wed, 21 Jun 2017 01:45:24 GMT):
can you check the level of the `composer-client` library? If you run a `npm ls --depth=0` in your Node.js application you should see it.
davidoevans (Wed, 21 Jun 2017 01:47:03 GMT):
you are correct
```
├── composer-admin@0.7.4
├── composer-cli@0.7.4
├── composer-client@0.7.4
├── composer-connector-embedded@0.7.4
├── composer-cucumber-steps@0.7.5
```
davidoevans (Wed, 21 Jun 2017 01:47:24 GMT):
will update...thanks again @sstone1
sstone1 (Wed, 21 Jun 2017 01:47:32 GMT):
np
Binay1 (Wed, 21 Jun 2017 02:20:58 GMT):
How do I deploy my composer application from the dev tutorial (https://hyperledger.github.io/composer/tutorials/developer-guide.html) on a cluster ? Just a few tweaks in the docker-compose.yml file or something else ?
sstone1 (Wed, 21 Jun 2017 02:27:36 GMT):
@Binay1 you need to deploy Hyperledger Fabric to the cluster, and then you can deploy a Composer business network to that Hyperledger Fabric instance.
sstone1 (Wed, 21 Jun 2017 02:28:23 GMT):
For questions on deploying Fabric to a cluster, ask in #fabric - there is some work being done on building Kubernetes configuration files for Fabric which might be of interest. Otherwise you will need to use a Docker technology like Docker Swarm.
Binay1 (Wed, 21 Jun 2017 02:35:07 GMT):
@sstone1 Thank you
bh4rtp (Wed, 21 Jun 2017 02:36:42 GMT):
i read the chat about ACL rule. and wonder the rule is implemented by fabric or composer?
sstone1 (Wed, 21 Jun 2017 02:37:53 GMT):
The ACL rules on assets and participants are implemented in Composer
sstone1 (Wed, 21 Jun 2017 02:38:21 GMT):
The ACL rules protect access to data stored in the world state
bh4rtp (Wed, 21 Jun 2017 02:40:19 GMT):
thanks. does this mean composer function more than building up the network but also access control and other things?
sstone1 (Wed, 21 Jun 2017 02:41:19 GMT):
yes - Composer lets you define the structure of the data in the network, define who can access which assets, and define your business logic
bh4rtp (Wed, 21 Jun 2017 02:42:38 GMT):
that is interesting. i have been suggesting fabric should add access control and find this implementation in composer.
sstone1 (Wed, 21 Jun 2017 02:43:05 GMT):
smart contracts usually control access to the data that they manage
bh4rtp (Wed, 21 Jun 2017 02:43:43 GMT):
yes. thanks.
bh4rtp (Wed, 21 Jun 2017 02:49:24 GMT):
@sstone1 as for ACL rules, it is very useful to make the fabric network secure. would you please inform us more details about it? i think it is implemented through chaincode by getCreator, isn't it?
Vipul_Bajaj (Wed, 21 Jun 2017 05:48:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ghJSh5cTYWTdYLN29) @sstone1 Can you please tell the extension of the docker file
Vipul_Bajaj (Wed, 21 Jun 2017 05:50:40 GMT):
@ [ ](https://chat.hyperledger.org/channel/composer?msg=ENzdThQxzfEAdWEYs) @sstone1 Can you please tell me the extension for docker file
Vipul_Bajaj (Wed, 21 Jun 2017 05:59:00 GMT):
@sstone1 I tried to execute the following command `docker build -t myorg/my-composer-rest-server` and it didn't worked and showed the following error
`root@ubuntu:~/examples/dir# docker build -t myorg:my-composer-rest-server
"docker build" requires exactly 1 argument(s).
See 'docker build --help'.
Usage: docker build [OPTIONS] PATH | URL | -
Build an image from a Dockerfile`
Vipul_Bajaj (Wed, 21 Jun 2017 05:59:00 GMT):
@sstone1 I tried to execute the following command `docker build -t myorg/my-composer-rest-server` and it didn't worked and showed the following error
```root@ubuntu:~/examples/dir# docker build -t myorg:my-composer-rest-server
"docker build" requires exactly 1 argument(s).
See 'docker build --help'.
Usage: docker build [OPTIONS] PATH | URL | -
Build an image from a Dockerfile```
Vipul_Bajaj (Wed, 21 Jun 2017 07:44:29 GMT):
Message Attachments
Vipul_Bajaj (Wed, 21 Jun 2017 07:44:44 GMT):
I tried to enable authentication with REST server using the following link
https://hyperledger.github.io/composer/unstable/integrating/enabling-rest-authentication.html
But was unable to do the same. Whenever i try to open the the address http://localhost:3000/auth/github I get the below error.
Vipul_Bajaj (Wed, 21 Jun 2017 07:45:00 GMT):
Message Attachments
rohilsurana (Wed, 21 Jun 2017 07:47:01 GMT):
@Vipul_Bajaj [ ](https://chat.hyperledger.org/channel/composer?msg=aojCyHh5Ex7QQ4Rsh) There is a colon ":" instead of the "/" in the command.
Vipul_Bajaj (Wed, 21 Jun 2017 07:47:19 GMT):
ohk Thanks
rohilsurana (Wed, 21 Jun 2017 07:48:11 GMT):
@Vipul_Bajaj Btw I am trying to do the same. Have you been able to get persistent storage to work?
GrahamCharters (Wed, 21 Jun 2017 08:10:09 GMT):
Hi, I'd like to add an Insurer participant to the Vehicle Lifecycle sample. I'm happy to have a go at contributing the code/models. I don't have much (any) experience of writing Composer models/code so would appreciate some guidance. I've raised https://github.com/hyperledger/composer/issues/1341 to cover the work, and added a comment with my thoughts on what's required in terms of model changes, including a couple of questions. Any comments would be very welcome. Thanks.
dselman (Wed, 21 Jun 2017 08:14:52 GMT):
@GrahamCharters thanks! I have moved this issue to here: https://github.com/hyperledger/composer-sample-applications/issues/52
Vipul_Bajaj (Wed, 21 Jun 2017 08:19:44 GMT):
@rohilsurana Not yet
GrahamCharters (Wed, 21 Jun 2017 08:19:53 GMT):
Thanks, @dselman - am I correct in assuming "composer-sample-applications" also covers composer-sample-models and composer-sample-networks?
Vipul_Bajaj (Wed, 21 Jun 2017 08:20:35 GMT):
@rohilsurana Have u been able to enable authentication?
rohilsurana (Wed, 21 Jun 2017 08:21:02 GMT):
I have been but not inside docker. I have tried follwing this - https://hyperledger.github.io/composer/unstable/integrating/enabling-rest-authentication.html
rohilsurana (Wed, 21 Jun 2017 08:21:05 GMT):
using facebook
rohilsurana (Wed, 21 Jun 2017 08:21:23 GMT):
It works pretty easily
dselman (Wed, 21 Jun 2017 08:44:19 GMT):
@GrahamCharters yes, I think we can use that as the umbrella for now.
rohilsurana (Wed, 21 Jun 2017 08:52:16 GMT):
I want to use MongoDB atlas service with composer-rest-server any idea how to modify the COMPOSER_DATASOURCES varible to include username and password? ```COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'```
wael (Wed, 21 Jun 2017 09:17:18 GMT):
I am trying to deploy my business network by adminConnection.deploy(businessNetworkDefinition) .
when I deploy sample business network it deployed successfully, but whenever I deploy mine it doesn't.
is there any way to trace what's going on and what's wrong with mine(even it works and tried it at playground)
wael (Wed, 21 Jun 2017 09:20:39 GMT):
when I deploy mine I got this error : "SyntaxError: Unexpected token :"
dselman (Wed, 21 Jun 2017 09:33:14 GMT):
Are you deploying to HLFv1?
dselman (Wed, 21 Jun 2017 09:34:25 GMT):
Can you share the code you are using to deploy
dselman (Wed, 21 Jun 2017 09:34:26 GMT):
?
xuzhao103389 (Wed, 21 Jun 2017 09:40:43 GMT):
I am trying to use event monitor,
my cto file is :
/**
* Defines a data model for a marble trading network
*/
namespace org.hyperledger_composer.marbles
enum MarbleColor {
o RED
o GREEN
o BLUE
o PURPLE
o ORANGE
}
enum MarbleSize {
o SMALL
o MEDIUM
o LARGE
}
asset Marble identified by marbleId {
o String marbleId
o MarbleSize size
o MarbleColor color
--> Player owner
}
participant Player identified by email {
o String email
o String firstName
o String lastName
}
transaction TradeMarble identified by transactionId {
o String transactionId
--> Marble marble
--> Player newOwner
}
event MarbelEvent identified by eventId {
o String eventId
}
xuzhao103389 (Wed, 21 Jun 2017 09:41:10 GMT):
and my javascript is
/**
* @param {org.hyperledger_composer.marbles.MarbelEventTransaction} MarbelEventTransaction
* @transaction
*/
function MarbelEventTransaction(marbelEventTransaction) {
var factory = getFactory();
var basicEvent = factory.newEvent('org.hyperledger_composer.marbles', 'MarbelEvent');
emit(basicEvent);
}
xuzhao103389 (Wed, 21 Jun 2017 09:41:19 GMT):
when generating the .bna file
xuzhao103389 (Wed, 21 Jun 2017 09:41:22 GMT):
got the error
xuzhao103389 (Wed, 21 Jun 2017 09:41:36 GMT):
opt/node-v6.9.5-linux-x64/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
Error: No type org.hyperledger_composer.marbles.MarbelEventTransaction in namespace org.hyperledger_composer.marbles
at ModelManager.getType (/opt/node-v6.9.5-linux-x64/lib/node_modules/composer-cli/node_modules/composer-common/lib/modelmanager.js:318:23)
at FunctionDeclaration.validate (/opt/node-v6.9.5-linux-x64/lib/node_modules/composer-cli/node_modules/composer-common/lib/introspect/functiondeclaration.js:148:49)
at new Script (/opt/node-v6.9.5-linux-x64/lib/node_modules/composer-cli/node_modules/composer-common/lib/introspect/script.js:56:33)
at ScriptManager.createScript (/opt/node-v6.9.5-linux-x64/lib/node_modules/composer-cli/node_modules/composer-common/lib/scriptmanager.js:61:16)
at Object.process (/opt/node-v6.9.5-linux-x64/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:479:69)
at Function.processFile (/opt/node-v6.9.5-linux-x64/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:537:27)
at items.forEach (/opt/node-v6.9.5-linux-x64/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:522:39)
at Array.forEach (native)
at Function.processDirectory (/opt/node-v6.9.5-linux-x64/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:521:15)
at Function.fromDirectory (/opt/node-v6.9.5-linux-x64/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:470:35)
root@ruts1:/composer-sample-networks/packages/marbles-network#
xuzhao103389 (Wed, 21 Jun 2017 09:41:52 GMT):
I am following the link : https://hyperledger.github.io/composer/business-network/publishing-events.html
xuzhao103389 (Wed, 21 Jun 2017 09:42:01 GMT):
so who can tell me where is wrong?
wael (Wed, 21 Jun 2017 09:42:47 GMT):
@dselman return adminConnection.createProfile('defaultProfile', { type: 'embedded' })
.then(() => {
// Created profile
console.log("Profile created Successfully");
return adminConnection.connect('defaultProfile', 'admin', 'adminpw');
})
.then(() => {
// Connected.
console.log("Profile Connected Successfully");
return BusinessNetworkDefinition.fromDirectory(path.resolve(__dirname, 'network'));
// console.log(" bbbbbb" + businessNetworkDefinition);
// return businessNetworkDefinition
}).then((businessNetworkDefinition) => {
// businessNetworkDefinition = businessDefinition;
console.log("business Network Definition " + businessNetworkDefinition.getIdentifier());
return adminConnection.deploy(businessNetworkDefinition)
}).then(() => {
console.log("Deployed Successfully");
businessNetworkConnection = new BusinessNetworkConnection({ fs: bfs_fs });
return businessNetworkConnection.connect('defaultProfile', 'network', 'admin', 'adminpw');
}).then(() => {
console.log("Successss ...!!!");
})
.catch(function(error) {
// Add optional error handling here.
console.log("creating Errorr
wael (Wed, 21 Jun 2017 09:42:47 GMT):
return adminConnection.createProfile('defaultProfile', { type: 'embedded' })
.then(() => {
// Created profile
console.log("Profile created Successfully");
return adminConnection.connect('defaultProfile', 'admin', 'adminpw');
})
.then(() => {
// Connected.
console.log("Profile Connected Successfully");
return BusinessNetworkDefinition.fromDirectory(path.resolve(__dirname, 'network'));
// console.log(" bbbbbb" + businessNetworkDefinition);
// return businessNetworkDefinition
}).then((businessNetworkDefinition) => {
// businessNetworkDefinition = businessDefinition;
console.log("business Network Definition " + businessNetworkDefinition.getIdentifier());
return adminConnection.deploy(businessNetworkDefinition)
}).then(() => {
console.log("Deployed Successfully");
businessNetworkConnection = new BusinessNetworkConnection({ fs: bfs_fs });
return businessNetworkConnection.connect('defaultProfile', 'network', 'admin', 'adminpw');
}).then(() => {
console.log("Successss ...!!!");
})
.catch(function(error) {
// Add optional error handling here.
console.log("creating Errorr !!!!" + error);
});
wael (Wed, 21 Jun 2017 09:44:17 GMT):
@dselman I use the same code for both networks, but change directory
wael (Wed, 21 Jun 2017 09:56:28 GMT):
even tried just to transfer the model,logic,permissions , and the .bna file to the working network, and it didn't deployed
khit (Wed, 21 Jun 2017 10:07:50 GMT):
Hi,
khit (Wed, 21 Jun 2017 10:07:59 GMT):
I'd like to re-issue enrollId for my participant of fabric composer 0.8.0. so, firstly I've revoked my already issued id 'hanako'.
vagrant@ubuntu-1404:~/git/composerPoCTool/tools/composer$ composer identity revoke -n "drive-manager-network" -i admin -s Xurw3yU9zI0l -u hanako
The identity 'hanako' was revoked and can no longer be used to connect to the business network. Command completed successfully.
Command succeeded
next, I've issued id 'hanako' one more time for my participant. but I got 'User is already registered' Error... Is there a way to re-issue for same id on fabric composer?
vagrant@ubuntu-1404:~/git/composerPoCTool/tools/composer$ composer identity issue -n "drive-manager-network" -i admin - s Xurw3yU9zI0l -u hanako -a "org.denso.drive.Person#actorId:2"
Error: User is already registered Command failed.
Command succeeded
caroline-church (Wed, 21 Jun 2017 10:38:44 GMT):
Hi @khit once an id is issued it can never be reissued even if you revoke it
Pere-Lluis (Wed, 21 Jun 2017 10:53:29 GMT):
Hey, has anyone experienced this error with the 0.8?
Pere-Lluis (Wed, 21 Jun 2017 10:53:40 GMT):
Message Attachments
Pere-Lluis (Wed, 21 Jun 2017 10:54:04 GMT):
I have issued the certificates with the Identity Import
Pere-Lluis (Wed, 21 Jun 2017 11:03:10 GMT):
I'm using the network from the Fabric tutorial
Pere-Lluis (Wed, 21 Jun 2017 11:03:34 GMT):
and trying to deploy a custom bna instead the chaincode in the Fabric tutorial
xuzhao103389 (Wed, 21 Jun 2017 11:10:49 GMT):
I have a query about the ACL
e.g.
if I use this rule
rule SampleConditionalRule {
description: "Description of the ACL rule"
participant(m): "org.example.SampleParticipant"
operation: ALL
resource(v): "org.example.SampeAsset"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}
so how can I operate on an asset with a participant
?
from the composer-rest-server
e.g. , I can create a participant called "Alice"
and then how can I operate on the assets belonged to the user "Alice"?
xuzhao103389 (Wed, 21 Jun 2017 11:12:31 GMT):
should I login as the user "Alice" first?
Pere-Lluis (Wed, 21 Jun 2017 11:16:59 GMT):
yes
Pere-Lluis (Wed, 21 Jun 2017 11:17:09 GMT):
I recommend you to try so with the playground first
Pere-Lluis (Wed, 21 Jun 2017 11:17:19 GMT):
as it gives you an idea on how it works
Pere-Lluis (Wed, 21 Jun 2017 11:18:10 GMT):
Message Attachments
Pere-Lluis (Wed, 21 Jun 2017 11:18:23 GMT):
You can issue new identities belonging to a participant
Pere-Lluis (Wed, 21 Jun 2017 11:18:33 GMT):
and operate as "Alice"
Pere-Lluis (Wed, 21 Jun 2017 11:34:23 GMT):
Okey I found my problem, I need a CA
caroline-church (Wed, 21 Jun 2017 11:44:37 GMT):
@Pere-Lluis yes only PeerAdmin can install chain code (or another identity that you give the crypro-material too)
Pere-Lluis (Wed, 21 Jun 2017 11:50:13 GMT):
I know, and I did but I still get a endpoint read failed
Pere-Lluis (Wed, 21 Jun 2017 11:51:31 GMT):
Message Attachments
Pere-Lluis (Wed, 21 Jun 2017 11:52:38 GMT):
I have previously imported the PeerAdmin identity
Vipul_Bajaj (Wed, 21 Jun 2017 12:07:19 GMT):
How can we make peer data persist after bringing down the fabric network?
caroline-church (Wed, 21 Jun 2017 12:12:27 GMT):
@Pere-Lluis do you have the PeerAdmin certificate in your key-store?
caroline-church (Wed, 21 Jun 2017 12:13:19 GMT):
and also the private and public key files
Pere-Lluis (Wed, 21 Jun 2017 12:16:02 GMT):
yes
Pere-Lluis (Wed, 21 Jun 2017 12:16:45 GMT):
you mean the cert.pem and the _sk eright?
Pere-Lluis (Wed, 21 Jun 2017 12:16:55 GMT):
of the org ca
Pere-Lluis (Wed, 21 Jun 2017 12:17:47 GMT):
Message Attachments
Pere-Lluis (Wed, 21 Jun 2017 12:18:09 GMT):
and I did sudo composer identity import -p hlfv1 -u PeerAdmin -c ./crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k ./crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/cf8d4320f6f6ff7d42f09ecabd586287cadb3f51e83539b3675bf6acb3d81759_sk
Pere-Lluis (Wed, 21 Jun 2017 12:18:16 GMT):
and then tried to deploy using
Pere-Lluis (Wed, 21 Jun 2017 12:18:31 GMT):
sudo composer network deploy -a bonusetis.bna -p hlfv1 -i PeerAdmin
Pere-Lluis (Wed, 21 Jun 2017 12:18:48 GMT):
and I had previously generated a connection profile
Pere-Lluis (Wed, 21 Jun 2017 12:19:26 GMT):
Message Attachments
Pere-Lluis (Wed, 21 Jun 2017 12:19:57 GMT):
I have to leave now, but if u do know what's the problem, or what might help, please say so and I'll check later
Pere-Lluis (Wed, 21 Jun 2017 12:20:31 GMT):
Thank you very much for helping
caroline-church (Wed, 21 Jun 2017 12:22:05 GMT):
oh you shouldn't need to run composer commands with sudo
caroline-church (Wed, 21 Jun 2017 12:22:05 GMT):
You shouldn't need to run composer commands with sudo
mahoney1 (Wed, 21 Jun 2017 12:25:26 GMT):
@here hi everyone, don't forget - our Composer Community call is 4pm UTC tomorrow (5pm UK, 12pm ET, 9am PT - Thursday) - would love to hear about the things you are building with Composer, what you like/don't like - your experiences with Composer - please join in! Meeting details are here: https://github.com/hyperledger/composer/wiki/Meeting-22nd-June-2017 cheers Paul
davidkel (Wed, 21 Jun 2017 12:28:38 GMT):
@Pere-Lluis looking at your screenshot above, it looks like you are using the fabric dev server based on the alpha drop of fabric, correct ? you can see that if you do `docker ps` to show your currently running local fabric
davidoevans (Wed, 21 Jun 2017 13:13:45 GMT):
I have a scenario where we'll want to register several companies. Each company has many locations and an employee may work from multiple locations. We want to keep track of sales by an employee at each location. I'd like some feedback on whether the following cto model makes sense in this case?
```
asset Company identified by companyId {
o String companyId
o String companyName
--> Location[] locations
}
asset Location identified by locationId {
o String locationId
o String address
--> Company company optional
}
participant SalesRep identified by employeeId {
o String employeeId
o String firstName
o String lastName
--> Location[] locations
}
```
davidoevans (Wed, 21 Jun 2017 13:13:45 GMT):
I have a scenario where we'll want to register several companies. Each company has many locations and an employee may work from multiple locations. We want to keep track of sales by an employee at each location. I'd like some feedback on whether the following cto model makes sense in this case?
```
asset Company identified by companyId {
o String companyId
o String companyName
--> Location[] locations
}
asset Location identified by locationId {
o String locationId
o String address
--> Company company
}
participant SalesRep identified by employeeId {
o String employeeId
o String firstName
o String lastName
--> Location[] locations
}
```
davidoevans (Wed, 21 Jun 2017 13:17:39 GMT):
I'm not sure if it's necessary to maintain the bidirectional relationships between Company and Locations or if it would be enough to simply have a reference to Company from a Location and would that support getting a list of locations for a given company.
jaguarg (Wed, 21 Jun 2017 13:20:32 GMT):
Hi, am playing with the angular skeleton. I have got my rest server up and running. I ran `yo hyperledger-composer` but can't start the web app . `npm start` is throwing errors such as
```ERROR in /home/vagrant/web/voting-network/src/app/Resolution/Resolution.component.ts (16,11): All declarations of 'asset' must have identical modifiers.
```
and
`ERROR in /home/vagrant/web/voting-network/src/app/org.slib.foo.ts (5,14): Cannot find name 'MyAsset'.`
jaguarg (Wed, 21 Jun 2017 13:20:32 GMT):
Hi, am playing with the angular skeleton. I have got my rest server up and running. I ran `yo hyperledger-composer` but can't start the web app . `npm start` is throwing errors such as
```ERROR in /home/vagrant/web/voting-network/src/app/Resolution/Resolution.component.ts (16,11): All declarations of 'asset' must have identical modifiers.
```
and
`ERROR in /home/vagrant/web/voting-network/src/app/org.sli.foo.ts (5,14): Cannot find name 'MyAsset'.`
jaguarg (Wed, 21 Jun 2017 13:20:32 GMT):
Hi, am playing with the angular skeleton. I have got my rest server up and running. I ran `yo hyperledger-composer` but can't start the web app . `npm start` is throwing errors such as
```ERROR in /home/vagrant/web/testing-network/src/app/Resolution/Resolution.component.ts (16,11): All declarations of 'asset' must have identical modifiers.
```
and
`ERROR in /home/vagrant/web/testing-network/src/app/org.sli.foo.ts (5,14): Cannot find name 'MyAsset'.`
dselman (Wed, 21 Jun 2017 13:32:19 GMT):
@davidoevans makes sense to me. Having the bidirectional relationship may make it easier to code against -- otherwise you will need to run a complex query everytime you want to find all locations for a company.
davidoevans (Wed, 21 Jun 2017 13:35:28 GMT):
thanks @dselman
Vipul_Bajaj (Wed, 21 Jun 2017 13:37:25 GMT):
I am not able to use couchdb my REST server. I got the following error while following this link
https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
```root@ubuntu:~# docker run \
> -d \
> -e COMPOSER_CONNECTION_PROFILE=${COMPOSER_CONNECTION_PROFILE} \
> -e COMPOSER_BUSINESS_NETWORK=${COMPOSER_BUSINESS_NETWORK} \
> -e COMPOSER_ENROLLMENT_ID=${COMPOSER_ENROLLMENT_ID} \
> -e COMPOSER_ENROLLMENT_SECRET=${COMPOSER_ENROLLMENT_SECRET} \
> -e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
> -e COMPOSER_SECURITY=${COMPOSER_SECURITY} \
> -e COMPOSER_CONFIG="${COMPOSER_CONFIG}" \
> -e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
> -e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
> --name rest \
> --network composer_default \
> -p 3000:3000 \
> myorg/my-composer-rest-server
028949f33f349066ca2e6b6d030c5252d15e82f3fbbbd5202ed34241a67cac57
docker: Error response from daemon: driver failed programming external connectivity on endpoint rest (997aa29180f57d625ca18f35c345e7454f647d42b47dbb0ba1e4f9730064ee2b): Error starting userland proxy: listen tcp 0.0.0.0:3000: bind: address already in use.```
Vipul_Bajaj (Wed, 21 Jun 2017 13:37:25 GMT):
I am not able to use couchdb with my REST server. I got the following error while following this link
https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
```root@ubuntu:~# docker run \
> -d \
> -e COMPOSER_CONNECTION_PROFILE=${COMPOSER_CONNECTION_PROFILE} \
> -e COMPOSER_BUSINESS_NETWORK=${COMPOSER_BUSINESS_NETWORK} \
> -e COMPOSER_ENROLLMENT_ID=${COMPOSER_ENROLLMENT_ID} \
> -e COMPOSER_ENROLLMENT_SECRET=${COMPOSER_ENROLLMENT_SECRET} \
> -e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
> -e COMPOSER_SECURITY=${COMPOSER_SECURITY} \
> -e COMPOSER_CONFIG="${COMPOSER_CONFIG}" \
> -e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
> -e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
> --name rest \
> --network composer_default \
> -p 3000:3000 \
> myorg/my-composer-rest-server
028949f33f349066ca2e6b6d030c5252d15e82f3fbbbd5202ed34241a67cac57
docker: Error response from daemon: driver failed programming external connectivity on endpoint rest (997aa29180f57d625ca18f35c345e7454f647d42b47dbb0ba1e4f9730064ee2b): Error starting userland proxy: listen tcp 0.0.0.0:3000: bind: address already in use.```
davidoevans (Wed, 21 Jun 2017 13:41:52 GMT):
@Vipul_Bajaj either stop what is already using port 3000 or use a different port (i.e. `-p 3001:3000`)
Vipul_Bajaj (Wed, 21 Jun 2017 13:42:15 GMT):
My REST server is ruuning on port 3000
xuzhao103389 (Wed, 21 Jun 2017 13:44:19 GMT):
I have a query about compose-rest-server
my command to start the rest server : composer-rest-server -p hlfv1 -n marbles-network -i admin -s adminpw -S false
xuzhao103389 (Wed, 21 Jun 2017 13:44:45 GMT):
my rest server UI is :n http://9.30.101.57:3000/explorer/#!/org95hyperledger95composer95marbles95Player/org_hyperledger_composer_marbles_Player_find
xuzhao103389 (Wed, 21 Jun 2017 13:45:02 GMT):
I do issue identity
xuzhao103389 (Wed, 21 Jun 2017 13:45:10 GMT):
{
"participant": "xuzhao@ie.ibm.com",
"userID": "xuzhao",
"options": {}
}
xuzhao103389 (Wed, 21 Jun 2017 13:45:23 GMT):
got the error
xuzhao103389 (Wed, 21 Jun 2017 13:45:24 GMT):
ˇ
xuzhao103389 (Wed, 21 Jun 2017 13:45:26 GMT):
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "fabric-ca request register failed with errors [[{\"code\":400,\"message\":\"Authorization failure\"}]]",
"stack": "Error: fabric-ca request register failed with errors [[{\"code\":400,\"message\":\"Authorization failure\"}]]\n at IncomingMessage.
Vipul_Bajaj (Wed, 21 Jun 2017 13:46:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3rnnxLZxZNNBvoRpx) @davidoevans i stopped my REST server and the command got executed but now how can i use my REST SERVER
davidoevans (Wed, 21 Jun 2017 13:58:42 GMT):
@Vipul_Bajaj the rest server uses port 3000 by default...and it seems whatever else you were running was also trying to use port 3000. if that's correct, you just need to make sure one of those processes is using a different port.
torresjeff (Wed, 21 Jun 2017 14:29:30 GMT):
When issuing an identity to a participant, can it have special characters?
sstone1 (Wed, 21 Jun 2017 14:45:51 GMT):
@torresjeff try it and see - it won't be us restricting it, it will be Fabric CA
xuzhao103389 (Wed, 21 Jun 2017 14:56:21 GMT):
I have added a player
[
{
"$class": "org.hyperledger_composer.marbles.Player",
"email": "xuzhao@ie.ibm.com",
"firstName": "xu",
"lastName": "zhao"
}
]
and how should I fill
{
"participant": "string",
"userID": "string",
"options": {}
}
what is the participant and userID?
when I was executing the command line
the 1st time , root@ruts1:/composer-sample-networks/packages/marbles-network/dist# composer identity issue -n 'marbles-network' -i admin -s adminpw -u xuzhao -p hlfv1 -a “org.hyperledger_composer.marbles.Player#xuzhao@ie.ibm.com”
Error: error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Object with ID 'Participant:“org.hyperledger_composer.marbles.Player' in collection with ID '$sysregistries' does not exist)
Command failed.
Command succeeded
the 2nd time I got :
root@ruts1:/composer-sample-networks/packages/marbles-network/dist# composer identity issue -n 'marbles-network' -i admin -s adminpw -u xuzhao -p hlfv1 -a “org.hyperledger_composer.marbles.Player#xuzhao@ie.ibm.com”
Error: fabric-ca request register failed with errors [[{"code":0,"message":"Identity 'xuzhao' is already registered"}]]
Command failed.
Command succeeded
this makes a lot of confusions
looks like the 1st command is successfully finished
but I got the error
JennFoley (Wed, 21 Jun 2017 14:59:31 GMT):
Two questions after playing with the new Composer Playground running on Bluemix.
1) When I uploaded a .bna file from the older version of Composer, it mentioned needing to not have any caps in the filename. Any chance that could be handled in code (so people don't have to use an editor and guess where all the name is.)?
2) When going to import a file, it now asks to authenticate with GitHub to get the samples, could it ever authenticate with our own repository on GitHub to get files and export to GitHub?
JennFoley (Wed, 21 Jun 2017 15:03:48 GMT):
Also, this might be a silly question, if I modify a sample to make my own code in the Playground, how can I edit the README.md? Text Editor?
rjrutkow (Wed, 21 Jun 2017 15:41:16 GMT):
Hi, has anyone successfully created a connection profile for connecting to a blockchain v1.0 Beta service yet on a cloud platform (like bluemix)? I tried reading the docs on the composer website but the differences between connection profiles for v1.0 alpha and v1.0 beta are unclear
dselman (Wed, 21 Jun 2017 15:42:04 GMT):
@JennFoley 1. Not sure I understand -- but this restriction comes from Fabric. In version 0.8 of Composer we now enforce this restriction.
dselman (Wed, 21 Jun 2017 15:42:39 GMT):
2. This a GitHub API restriction. We are considering moving the samples off GitHub to workaround this.
dselman (Wed, 21 Jun 2017 15:43:03 GMT):
3. Yes, you have to edit the README externally and then upload.
JennFoley (Wed, 21 Jun 2017 15:44:32 GMT):
Hi @dselman, 1. Basically on the Import/Replace when it must do some kind of check for capital letters, could it not also do something like change to lowercase (programmatically) instead of giving the error message?
dselman (Wed, 21 Jun 2017 15:45:19 GMT):
We considered this, but it creates more confusion later, when you want to connect to the network, list it, connect etc.
JennFoley (Wed, 21 Jun 2017 15:45:39 GMT):
ah, okay.
dselman (Wed, 21 Jun 2017 15:45:46 GMT):
We felt it was better to impose some short term pain to align with Fabric... Sorry!
JennFoley (Wed, 21 Jun 2017 15:46:24 GMT):
lol. No worries. I am hoping things are still early enough, this won't be a widespread problem with endusers
GrahamCharters (Wed, 21 Jun 2017 15:50:04 GMT):
Hi, is the composer-atom-plugin available for unbuntu? I've managed to install it in Atom on Windows, but it's not showing up when I search in Atom on Ubuntu.
rjrutkow (Wed, 21 Jun 2017 15:56:12 GMT):
Are there any documents available for walking through the deployment steps on composer for v1.0 Beta?
dselman (Wed, 21 Jun 2017 16:15:20 GMT):
@GrahamCharters I don't know why it would not be, but I've not tried personally. The VSCode extension is much more powerful (does a full parse of the model files, not just syntax highlighting).
GrahamCharters (Wed, 21 Jun 2017 16:17:09 GMT):
Thanks, @dselman . I'm gonna try the command line approach and if that doesn't work, I may give VSCode a try.
dselman (Wed, 21 Jun 2017 16:17:30 GMT):
It's very nice, once you get used to it.
GrahamCharters (Wed, 21 Jun 2017 16:18:53 GMT):
Command line worked. I may still try VSCode as your sales pitch is compelling ;)
dselman (Wed, 21 Jun 2017 16:22:16 GMT):
If you create a lot of model files, it catches a lot of problems early.
john2000 (Wed, 21 Jun 2017 16:34:33 GMT):
Installation completed, versions installed are:
Node: v6.11.0
npm: 5.0.3
Docker: Docker version 17.05.0-ce, build 89658be
Docker Compose:
Please logout then login before continuing.
john2000 (Wed, 21 Jun 2017 16:35:37 GMT):
cd into basic-sample-network dir and run " cnpm install"
john2000 (Wed, 21 Jun 2017 16:36:35 GMT):
vagrant@ubuntu-14:/vagrant/composer-sample-networks/packages/basic-sample-network$ cnpm install
?.Installed 17 packages
?.Linked 0 latest versions
?.Run 0 scripts
/vagrant/composer-sample-networks/packages/basic-sample-network/node_modules/_composer-cli@0.8.0@composer-cli/cli.js:29
.commandDir('./lib/cmds')
^
TypeError: yargs.commandDir is not a function
at Object.
dselman (Wed, 21 Jun 2017 16:38:26 GMT):
We have seen issues with npm v5, can you please try with npm v3?
dselman (Wed, 21 Jun 2017 16:40:23 GMT):
Here is the platform we test with: https://hyperledger.github.io/composer/installing/development-tools.html
rjrutkow (Wed, 21 Jun 2017 16:51:46 GMT):
@dselman Hi again - what kind of documents could you point me to for deploying to blockchain v1.0 beta on IBM Bluemix using composer? I would greatly appreciate any help or contacts you could provide
dselman (Wed, 21 Jun 2017 16:52:16 GMT):
IBM does not yet host HLF v1-beta1 in the cloud.
dselman (Wed, 21 Jun 2017 16:52:29 GMT):
You will have to wait for the IBM cloud to support it.
davidoevans (Wed, 21 Jun 2017 17:00:47 GMT):
Are wallets relevant/required at all when interacting via a BusinessNetworkConnection? Or are Wallet's only used when accessing a secured REST API?
Vipul_Bajaj (Wed, 21 Jun 2017 17:31:41 GMT):
Message Attachments
Vipul_Bajaj (Wed, 21 Jun 2017 17:32:21 GMT):
The doc contains the step which I have followed to enable data persistent with REST SERVER.
Have I missed any step or doing anything wrong
davidkel (Wed, 21 Jun 2017 18:22:27 GMT):
@xuzhao103389 I quickly tried what you wanted to do on a clean fabric with the marbles-network deployed. Here are the commands I issued
```
composer participant add -n marbles-network -i admin -s adminpw -p hlfv1 -d '{"$class":"org.hyperledger_composer.marbles.Player","email":"xuzhao@ie.ibm.com","firstName":"xu","lastName":"zhao"}'
Participant was added to participant registry.
Command completed successfully.
Command succeeded
```
```
composer identity issue -n marbles-network -i admin -s adminpw -u xuzhao -p hlfv1 -a 'org.hyperledger_composer.marbles.Player#xuzhao@ie.ibm.com'
An identity was issued to the participant 'org.hyperledger_composer.marbles.Player#xuzhao@ie.ibm.com'
The participant can now connect to the business network with the following details:
userID = xuzhao
userSecret = AdjcTOGSVSIh
Command completed successfully.
Command succeeded
```
xuzhao103389 (Wed, 21 Jun 2017 18:45:06 GMT):
thanks David @davidkel
kelly_ (Wed, 21 Jun 2017 19:21:19 GMT):
Has joined the channel.
Alexbonti (Thu, 22 Jun 2017 00:08:32 GMT):
Has joined the channel.
Alexbonti (Thu, 22 Jun 2017 00:11:14 GMT):
Good morning guys, is anyone using composer in sort of "real" projects? i would like to get some feedback
lbennett (Thu, 22 Jun 2017 00:29:18 GMT):
Am running the developer tutorial (https://hyperledger.github.io/composer/tutorials/developer-guide.html) - am at the step where one deploys to Hyperledger Fabric using the command `composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString`. Am getting the following error: ``Error: error trying login and get user Context. Error: error trying to enroll user. Error: Could not parse enrollment response [404 page not found
] as JSON due to error [SyntaxError: Unexpected token p in JSON at position 4]
khit (Thu, 22 Jun 2017 01:45:35 GMT):
Hello, can I use JavaScript libs with require on transaction processor? I'd like to use it with npm install.. at least I couldn't do this on playground now.
davidoevans (Thu, 22 Jun 2017 03:06:53 GMT):
Are wallets relevant/required at all when interacting via a BusinessNetworkConnection? Or are Wallet's only used when accessing a secured REST API?
raheelz (Thu, 22 Jun 2017 04:00:56 GMT):
Has joined the channel.
khit (Thu, 22 Jun 2017 04:10:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ciAEpzq2FqdivnooS) @caroline-church Thanks!
khit (Thu, 22 Jun 2017 04:24:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LDGd6Dx84kPFwuCR5) @caroline-church so.. is there a way to re-print the secret of issued id with command or api?
wael (Thu, 22 Jun 2017 06:28:14 GMT):
Hi, I Just Want to notify on bug I faced in hyperledger composer.
Case : deploy Business Network with logic.js , that ends with comment "//Any comment" (Last Line is comment, and there is no empty line after ) ,
it will generate an error "SyntaxError: missing ; before statement " when trying to deploy.
wael (Thu, 22 Jun 2017 06:29:57 GMT):
you can try it also at playground
davidkel (Thu, 22 Jun 2017 07:25:03 GMT):
@lbennett I suspect you are using the alpha1 release of the Hyperledger Fabric rather than the beta release. If you do `docker ps` you can see what version it is. Composer v0.8.0 is only compatible with hyperledger fabric 1.0 beta release.
Pere-Lluis (Thu, 22 Jun 2017 07:32:00 GMT):
@davidkel Yes I know, I'm running the new beta of Fabric. Should I be using something else?
Pere-Lluis (Thu, 22 Jun 2017 07:32:39 GMT):
beta, not the alpha
davidkel (Thu, 22 Jun 2017 07:34:24 GMT):
@Pere-Lluis The version of the createComposerProfile.sh you posted was from the alpha version of the dev server package which is why I asked
Pere-Lluis (Thu, 22 Jun 2017 07:35:00 GMT):
yeah, you're right I see it to, but the docker files were from the beta
Pere-Lluis (Thu, 22 Jun 2017 07:35:25 GMT):
I took the createComposerProfile from a past version, do you know where I can get the newest one?
Pere-Lluis (Thu, 22 Jun 2017 07:35:25 GMT):
but that's from composer right?
davidkel (Thu, 22 Jun 2017 07:36:53 GMT):
I would recommend downloading the latest fabric-dev-server using
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz
davidkel (Thu, 22 Jun 2017 07:37:38 GMT):
this will have setup scripts to make it easier to work with Hyperledger fabric beta as they have introduced a new security model.
davidkel (Thu, 22 Jun 2017 07:38:59 GMT):
more info can be found at
https://hyperledger.github.io/composer/installing/development-tools.html
Around the middle of the page (and ignore the mistake at the top still referring to alpha :-) )
Pere-Lluis (Thu, 22 Jun 2017 07:39:38 GMT):
I mean that's from composer with premade crypto files and channel artifacts right?
Pere-Lluis (Thu, 22 Jun 2017 07:39:54 GMT):
if you want to create your own nodes etcetera are u able with this?
Pere-Lluis (Thu, 22 Jun 2017 07:42:28 GMT):
there's no cryptogen
dselman (Thu, 22 Jun 2017 07:47:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nhQyMuYafFDcpPm2a) @wael please create a GitHub issue
Pere-Lluis (Thu, 22 Jun 2017 07:48:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=44gEAd5xkkWP9WHM5) @caroline-church I tried without but it gives me permission problems
caroline-church (Thu, 22 Jun 2017 07:49:24 GMT):
did you install composer using sudo?
Pere-Lluis (Thu, 22 Jun 2017 07:50:07 GMT):
don't think so, I used the tutorial commands
Pere-Lluis (Thu, 22 Jun 2017 07:50:20 GMT):
https://hyperledger.github.io/composer/installing/development-tools.html
davidkel (Thu, 22 Jun 2017 07:53:21 GMT):
@Pere-Lluis if you are going to go down the path of trying to set up your own fabric, then we will work with that setup, but you are going to have to use composer identity import to import the peer admin crypto material into your profile KeyValStore directory, before you can deploy to that peer. How you then choose to define your fabric and generate the required crypto material is up to you. Cryptogen is a dev/test tool provided by Hyperledger fabric but would not be used in production
Pere-Lluis (Thu, 22 Jun 2017 07:54:09 GMT):
oh I see, so you think is too ambicious to try to make your own?
Pere-Lluis (Thu, 22 Jun 2017 07:54:33 GMT):
I'm sorry if my questions are too basic, I'm trying to learn since I think it's a great tool
Pere-Lluis (Thu, 22 Jun 2017 07:55:26 GMT):
I'm working in a company and my task is to create an internal blockchain, I have set up the bna with all we want but I'm struggling to set up the fabric environment to use it
Pere-Lluis (Thu, 22 Jun 2017 07:56:14 GMT):
do you have any tips on what to follow? Cause all tutorials I see for Fabric are based on a given example with just two peers, and I'm struggling trying to set my own peers and nodes in different terminals
Pere-Lluis (Thu, 22 Jun 2017 07:56:56 GMT):
and by the way, thank you for the help, without it I would be lost (although I must say the Composer docs are very well explained)
davidkel (Thu, 22 Jun 2017 07:58:43 GMT):
@Pere-Lluis I wouldn't say too ambitious but certainly not trivial and I think that there is still more work needed by fabric on the documentation front to help people understand the requirements needed for creating a deployment of a production fabric environment
davidkel (Thu, 22 Jun 2017 08:00:28 GMT):
@Pere-Lluis I'm still trying to get to grips with it all too :-) Some of the ways I gather information is to review past posts on the #fabric, #fabric-questions and other channels as lots of useful information does get put there
davidkel (Thu, 22 Jun 2017 08:01:48 GMT):
@Pere-Lluis Thanks for the complement about our documentation as a lot of good work went in to try to make it as helpful as possible.
Pere-Lluis (Thu, 22 Jun 2017 08:06:27 GMT):
I'm trying to make some documentation to about the process, it would go on a website I wish they will let me publish as open
Pere-Lluis (Thu, 22 Jun 2017 08:06:39 GMT):
although it's in my mother language, catalan
Pere-Lluis (Thu, 22 Jun 2017 08:09:09 GMT):
so, in order to get things right, what would u recommend I use for a 200 users network, is there any fabric premade instance I could use?
Pere-Lluis (Thu, 22 Jun 2017 08:09:51 GMT):
Or should I try to modify the existing one ( like the one u shared of dev-tools )
davidkel (Thu, 22 Jun 2017 08:15:44 GMT):
@Pere-Lluis Ours is really only meant as a development environment and nothing more. I not really in a position to provide guidance on how to set up a production fabric you would need to try other channels to see if you can get help there. Alternatively you could look at service providers such as IBM bluemix to provide the necessary infrastructure.
Pere-Lluis (Thu, 22 Jun 2017 08:16:16 GMT):
sure, thanks
Pere-Lluis (Thu, 22 Jun 2017 08:16:41 GMT):
Yeah, I check IBM but they were a bit back in versions
Pere-Lluis (Thu, 22 Jun 2017 08:17:05 GMT):
by the way, I tried the dev you provided, and a new error showed, Error: error trying deploy. Error: Failed to deserialize creator identity, err MSP Org1MSP is unknown
Pere-Lluis (Thu, 22 Jun 2017 08:17:29 GMT):
And I used the keys and peers provided there, no changes
Pere-Lluis (Thu, 22 Jun 2017 08:18:14 GMT):
okey, my bad
dselman (Thu, 22 Jun 2017 08:18:28 GMT):
Message Attachments
Pere-Lluis (Thu, 22 Jun 2017 08:18:34 GMT):
I think the composer profile needed to be updated
davidkel (Thu, 22 Jun 2017 08:18:39 GMT):
@Pere-Lluis looks like the channel didn't get created. You need to be on Docker version 17.03 or later
Pere-Lluis (Thu, 22 Jun 2017 08:18:40 GMT):
jajaajajaja yes you do!
rohilsurana (Thu, 22 Jun 2017 08:18:43 GMT):
Hi The passportjs authentication works just fine but how am i supposed to get the user information, like username etc.
Pere-Lluis (Thu, 22 Jun 2017 08:19:07 GMT):
thanks @davidkel it was a composer profile problem
Pere-Lluis (Thu, 22 Jun 2017 08:19:12 GMT):
solved, worked like a charm
sstone1 (Thu, 22 Jun 2017 08:25:16 GMT):
@rohilsurana you should be issuing Blockchain identities to each user of the REST API. Each Blockchain identity should be issued to a participant instance, stored in a participant registry, that represents that user. Composer looks up the participant instance using the Blockchain identity when you submit transactions using the REST API, and uses the participant instance to perform ACL checks.
sstone1 (Thu, 22 Jun 2017 08:25:35 GMT):
You can also get "the current participant" from a transaction processor function using `getCurrentParticipant()`
rohilsurana (Thu, 22 Jun 2017 08:27:19 GMT):
@sstone1 Ok, but thats for the backend, I was thinking of showing the username and display picture on the frontend.
sstone1 (Thu, 22 Jun 2017 08:27:46 GMT):
oh! that i don't have answer for
sstone1 (Thu, 22 Jun 2017 08:27:55 GMT):
we don't expose the user information from passport
sstone1 (Thu, 22 Jun 2017 08:28:32 GMT):
you could always use the `/api/system/ping` which returns the current participant instance ID, and then you can get the participant instance from the participant registry
sstone1 (Thu, 22 Jun 2017 08:28:45 GMT):
so you could find the org.acme.Person that is logged in and show their name
rohilsurana (Thu, 22 Jun 2017 08:29:56 GMT):
That will be the default one set at the moment? I guess I will go with this approach.
sstone1 (Thu, 22 Jun 2017 08:44:04 GMT):
it will be `null` when you add the Blockchain identity `admin` or `PeerAdmin` to your wallet
sstone1 (Thu, 22 Jun 2017 08:44:27 GMT):
it will only be set when you use a Blockchain identity that you have issued using `composer identity issue` (or the relevant APIs)
Pere-Lluis (Thu, 22 Jun 2017 09:04:58 GMT):
hey, me again! Has anyone succeeding in Outh with Google?
stormli (Thu, 22 Jun 2017 09:14:49 GMT):
@davidkel Thanks for your explanation about why the response of GET transaction by ID is defined as an object without any properties. if I understand correctly, there are many kinds of transaction which has different definition. for each GET by id. it may return different kind of transaction. So there is no way to define a structure in swagger for it. right?
after user get this response, I am wondering how consumer knows the type of the transaction? and where they can get definition to parse the response?
stormli (Thu, 22 Jun 2017 09:18:08 GMT):
anyone else know the answer of this question? thanks.
rohilsurana (Thu, 22 Jun 2017 09:25:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BkcRtSjie2uA9r2Tu) @sstone1 Thanks
rohilsurana (Thu, 22 Jun 2017 09:25:31 GMT):
@Pere-Lluis Yes, I too had a few problems.
atclik31 (Thu, 22 Jun 2017 09:27:45 GMT):
Has joined the channel.
Pere-Lluis (Thu, 22 Jun 2017 09:28:10 GMT):
I'm having a Unhandled error for request GET /auth/google: InternalOAuthError: Failed to obtain request token
Pere-Lluis (Thu, 22 Jun 2017 09:28:18 GMT):
did that happen to you ?
Pere-Lluis (Thu, 22 Jun 2017 09:28:34 GMT):
I'm using passport-google-oauth
rohilsurana (Thu, 22 Jun 2017 09:28:48 GMT):
That is because you haven;t enabled the API from developer console
dselman (Thu, 22 Jun 2017 09:29:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6ci2wY6bTmHaEdPy4) @stormli You can use the $class property on the returned object to get it's type, and from there you'll know the properties
rohilsurana (Thu, 22 Jun 2017 09:29:16 GMT):
Go to the developer console and enable the google+ login api
rohilsurana (Thu, 22 Jun 2017 09:29:16 GMT):
@Pere-Lluis Go to the developer console and enable the google+ login api
khit (Thu, 22 Jun 2017 09:31:53 GMT):
hi, can I implement custom 'query' function on composer? in my understanding, transaction procressor is 'invoke' and cannot return data
synchronously. how i add query logic after getting Assets?
rama_rahul (Thu, 22 Jun 2017 09:34:19 GMT):
I am developing an application and am following this link : https://hyperledger.github.io/composer/tutorials/developer-guide.html . I did everything according to this link but when I am submitting a transaction in the rest server it is showing error response code 500. It was being submitted properly in the playground but if I try to submit it through the rest server it is giving error. Mostly where is the problem?
Pere-Lluis (Thu, 22 Jun 2017 09:34:43 GMT):
@rohilsurana I think i0ve done that
Pere-Lluis (Thu, 22 Jun 2017 09:34:49 GMT):
to obtain the keys right?
Pere-Lluis (Thu, 22 Jun 2017 09:36:52 GMT):
oh okey I see
Pere-Lluis (Thu, 22 Jun 2017 09:37:50 GMT):
I've enabled it
Pere-Lluis (Thu, 22 Jun 2017 09:37:55 GMT):
but still same problem
Pere-Lluis (Thu, 22 Jun 2017 09:40:24 GMT):
@rohilsurana you mean the google+ api right? There's no Google+ login Api
stormli (Thu, 22 Jun 2017 10:06:11 GMT):
@dselman Do you mean there will be a $class string in response, then user could find a definition in swagger that can map to that $class?
stormli (Thu, 22 Jun 2017 10:06:49 GMT):
eg org.vda.VehicleTransferLogEntry is a class of transaction?
rohilsurana (Thu, 22 Jun 2017 10:09:47 GMT):
@Pere-Lluis also have you added scope: ["profile"] in the providers JSON
Pere-Lluis (Thu, 22 Jun 2017 10:10:12 GMT):
yes, thanks
Pere-Lluis (Thu, 22 Jun 2017 10:10:19 GMT):
I succeded in doing it locally
Pere-Lluis (Thu, 22 Jun 2017 10:10:30 GMT):
but it gives problems when trying from another divce
Pere-Lluis (Thu, 22 Jun 2017 10:10:33 GMT):
device
Pere-Lluis (Thu, 22 Jun 2017 10:10:47 GMT):
but that's google problems
Pere-Lluis (Thu, 22 Jun 2017 10:10:55 GMT):
I don't think it's Composer related
Pere-Lluis (Thu, 22 Jun 2017 10:11:24 GMT):
okey succeded to
Pere-Lluis (Thu, 22 Jun 2017 10:11:28 GMT):
this was the problem:
Pere-Lluis (Thu, 22 Jun 2017 10:12:49 GMT):
https://stackoverflow.com/questions/24736168/error-invalid-request-device-id-and-device-name-are-required-for-private-ip
Pere-Lluis (Thu, 22 Jun 2017 10:12:58 GMT):
in case someone is wondering
dselman (Thu, 22 Jun 2017 10:35:03 GMT):
@stormli I mean that if you GET transaction with ID xyz you will received a JSON response. That response will contain a top-level $class attribute, which is the fully qualified name of the Composer modelled type.
Vipul_Bajaj (Thu, 22 Jun 2017 10:35:20 GMT):
How can we use passport-oauth-client-password strategy with Composer REST server
dselman (Thu, 22 Jun 2017 10:35:55 GMT):
@stormli I'm curious to know what you plan to do on the client side...
dselman (Thu, 22 Jun 2017 10:38:49 GMT):
@Vipul_Bajaj various people (e.g @Pere-Lluis) have been able to use the Composer REST Server with passport.js auth. I think I've seen LDAP, Twitter, GitHub and Google ids being used... Given that there are 300+ passport plugins we can't provide support on all of them. If you get stuck using a given passport implementation probably the best bet is to use the passport support forums. We are pretty confident at this stage that the Composer usage of passport is correct... Of course any issues/questions that DO look specific to Composer should go to StackOverflow.
Pere-Lluis (Thu, 22 Jun 2017 10:42:57 GMT):
@Vipul_Bajaj also if you have a more specific question you can ask me directly if you want
Pere-Lluis (Thu, 22 Jun 2017 10:43:48 GMT):
By the way, after setting the Oauth, if you want it to associate that user with a Blockchain identity/participant it has to have been added beforehand right?
Pere-Lluis (Thu, 22 Jun 2017 10:44:18 GMT):
and you have to manually associate that account to the user by the wallet giiving the userid and secret?
Pere-Lluis (Thu, 22 Jun 2017 10:45:10 GMT):
I ask in case there's a way that once you OAuth authenticate, a participant and blockchain profile with that account can be issued authomatically?
zgalvin111 (Thu, 22 Jun 2017 10:48:04 GMT):
How do you write a function in composer that requires two parties to confirm a transaction? So a transaction cannot go through without the confirmation of both parties?
Pere-Lluis (Thu, 22 Jun 2017 11:00:50 GMT):
I will reformulate the question since it's a bit confusing:
dselman (Thu, 22 Jun 2017 11:01:20 GMT):
@zgalvin111 this is a pretty big question.. probably best to post to StackOverflow
Pere-Lluis (Thu, 22 Jun 2017 11:01:40 GMT):
Can you issue a Participant in the RestAPI in order to create a user/trader for it automatically for a user that has OAuth login?
Pere-Lluis (Thu, 22 Jun 2017 11:01:54 GMT):
or does it have to be previously issued?
zgalvin111 (Thu, 22 Jun 2017 11:03:08 GMT):
@dselman Ok, thank you. Also, what is the best way to take a business network developed in playground to a test network?
Pere-Lluis (Thu, 22 Jun 2017 11:10:42 GMT):
@zgalvin111 try to start a Fabric instance with this https://hyperledger.github.io/composer/installing/development-tools.html
Pere-Lluis (Thu, 22 Jun 2017 11:10:50 GMT):
and then deploy your .bna
Pere-Lluis (Thu, 22 Jun 2017 11:11:17 GMT):
https://hyperledger.github.io/composer/business-network/bnd-deploy.html
Pere-Lluis (Thu, 22 Jun 2017 11:13:16 GMT):
To sum up, is it possible to have "First, you must issue a Blockchain identity to a participant in the business network. This example will assume that you have issued the Blockchain identity alice1 to the participant org.acme.mynetwork.Trader#alice@email.com, and the secret is suchs3cret." this part done automaticaly every time a new user logins with Oauth?
zgalvin111 (Thu, 22 Jun 2017 11:14:05 GMT):
@Pere-Lluis Awesome! Can you do that on Windows? Windows wasn't one of the platforms that was listed as required
Pere-Lluis (Thu, 22 Jun 2017 11:14:33 GMT):
well everything works through docker so should be alright
Pere-Lluis (Thu, 22 Jun 2017 11:14:43 GMT):
can't promise anything do, I'm with Linux
Pere-Lluis (Thu, 22 Jun 2017 11:14:55 GMT):
it's probably advisable to use a Virtual Machine with linux
zgalvin111 (Thu, 22 Jun 2017 11:16:10 GMT):
Alright, windows is not my favorite but I am at work and that's what I'm stuck with :/ I'll give it my best my shot! Thanks!
Pere-Lluis (Thu, 22 Jun 2017 11:17:03 GMT):
hahahah I faced the same problem (works device) so I created a partition with linux, worth it
Pere-Lluis (Thu, 22 Jun 2017 11:18:35 GMT):
@rama_rahul can u tell something more about the error? What does it say?
rama_rahul (Thu, 22 Jun 2017 11:32:45 GMT):
Message Attachments
rama_rahul (Thu, 22 Jun 2017 11:34:59 GMT):
@Pere-Lluis 'monthlyAmountToBePaid' is a variable I defined in my model file. At the end it is that there is a problem with line 434 in client.js file. I don't understand what is the problem
rama_rahul (Thu, 22 Jun 2017 11:35:45 GMT):
Message Attachments
Pere-Lluis (Thu, 22 Jun 2017 11:35:55 GMT):
I recomend you to use composer playground first
Pere-Lluis (Thu, 22 Jun 2017 11:36:05 GMT):
there's probably a problem in your code
rama_rahul (Thu, 22 Jun 2017 11:36:11 GMT):
I used composer playground
rama_rahul (Thu, 22 Jun 2017 11:36:18 GMT):
It was working fine
Pere-Lluis (Thu, 22 Jun 2017 11:36:26 GMT):
it worked in playground?
rama_rahul (Thu, 22 Jun 2017 11:36:31 GMT):
Yeah
Pere-Lluis (Thu, 22 Jun 2017 11:37:30 GMT):
the problem seems to be it's trying to read something that it's not there the "undefined"
davidkel (Thu, 22 Jun 2017 11:40:49 GMT):
@rama_rahul can you post your transaction code
Pere-Lluis (Thu, 22 Jun 2017 11:44:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BrL73xhjz47WDxCJi) @Pere-Lluis No one?
Pere-Lluis (Thu, 22 Jun 2017 11:53:14 GMT):
I have to leave now, so if anyone knows how to issue identities for each OAuth profile please (without having to issue the identity beforehand) please say so and I will check the forum later. Thanks
Pere-Lluis (Thu, 22 Jun 2017 11:54:07 GMT):
And also, is the Composer Meeting today open to everyone?
dselman (Thu, 22 Jun 2017 11:55:12 GMT):
Yes, community calls are open to all. Please come along!
dselman (Thu, 22 Jun 2017 11:55:31 GMT):
It is very informal, but gives everyone a chance to ask questions, understand the work people are doing etc
sstone1 (Thu, 22 Jun 2017 11:58:25 GMT):
@here we've released Hyperledger Composer v0.8.1 with tutorial updates and bug fixes, read all about it on GitHub: https://github.com/hyperledger/composer/releases/tag/v0.8.1 🎉
dselman (Thu, 22 Jun 2017 11:58:52 GMT):
It must be Thursday! :-)
zgalvin111 (Thu, 22 Jun 2017 12:00:51 GMT):
Wahoo! :)
arner (Thu, 22 Jun 2017 12:01:16 GMT):
Hooray! Doing great work, guys :D
arner (Thu, 22 Jun 2017 12:04:07 GMT):
Regarding the whole conversation about identity above, could you give me a short update on the current status of integration of the rest server with passport or a good pattern to combine loopback / passport logins with the composer loopback component?
sstone1 (Thu, 22 Jun 2017 12:05:36 GMT):
@Pere-Lluis there is no way to do what you describe above - automatically issue identities for users when they log in to the Composer REST server. There's two steps that would need to be added - automatically adding a participant and mapping the users OAuth profile data (or whatever) into the participant data - and then issuing the new participant with an identity to use.
sstone1 (Thu, 22 Jun 2017 12:05:46 GMT):
... at the moment that is ...
sstone1 (Thu, 22 Jun 2017 12:08:13 GMT):
@arner check out this tutorial: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
garrich (Thu, 22 Jun 2017 12:12:22 GMT):
Has joined the channel.
zgalvin111 (Thu, 22 Jun 2017 12:24:53 GMT):
Can you integrate oracles with composer? For example, if I want the current weather, can I get that data into my network?
dselman (Thu, 22 Jun 2017 12:29:52 GMT):
Simplest way is to push the data into the network using a transaction.
markshaw (Thu, 22 Jun 2017 12:58:23 GMT):
Has joined the channel.
dselman (Thu, 22 Jun 2017 13:20:46 GMT):
Please check out the new Vehicle Lifecycle Demo: https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-lifecycle
dselman (Thu, 22 Jun 2017 13:20:52 GMT):
Single-line install
mahoney1 (Thu, 22 Jun 2017 13:52:15 GMT):
@here just a reminder that today's Composer community call is at 4pm UTC (5pm UK time, 12pm ET, 9am PT) -
Agenda is here: https://github.com/hyperledger/composer/wiki/Meeting-22nd-June-2017 which has full conference/dial-in info and agenda. Be great to have you on the call !
Join via Zoom Conferencing from PC, Mac, Linux, iOS or Android: https://zoom.us/j/441168172
pd93 (Thu, 22 Jun 2017 14:09:24 GMT):
Hey, I'm getting an error when running `npm install`. Anyone know what this indicates?
```
/node_modules/yargs/yargs.js:1079
else throw err
^
```
dselman (Thu, 22 Jun 2017 14:11:16 GMT):
Unsupported version of Node or npm maybe?
pd93 (Thu, 22 Jun 2017 14:11:50 GMT):
npm v3.10.0
node v6.11.0
pd93 (Thu, 22 Jun 2017 14:11:50 GMT):
npm v3.10.10
node v6.11.0
dselman (Thu, 22 Jun 2017 14:12:33 GMT):
That should work. Using `sudo`?
pd93 (Thu, 22 Jun 2017 14:12:56 GMT):
Nope
dselman (Thu, 22 Jun 2017 14:13:19 GMT):
what platform?
pd93 (Thu, 22 Jun 2017 14:13:27 GMT):
Ubuntu 16.04
pd93 (Thu, 22 Jun 2017 14:16:43 GMT):
Can't guarantee I didn't do something stupid during setup though. Was just curious if it was an obvious issue.
I'll run through the guide again and make sure I did everything right
davidkel (Thu, 22 Jun 2017 14:17:44 GMT):
@pd93 how much memory do you have
pd93 (Thu, 22 Jun 2017 14:17:49 GMT):
Running the `npm install` on `basic-sample-network` works.. so I'll go ahead and guess it's something wrong with my code
pd93 (Thu, 22 Jun 2017 14:17:52 GMT):
and 16GB
pd93 (Thu, 22 Jun 2017 14:17:52 GMT):
@davidkel 16GB
zgalvin111 (Thu, 22 Jun 2017 14:25:55 GMT):
How do channels work in Composer? Is each BNA file essentially a channel or can there be multiple channels in one BNA?
pd93 (Thu, 22 Jun 2017 14:27:26 GMT):
@dselman @davidkel Okay, I just solved this in the playground. I was trying the use the `.then((obj) => {});` syntax as opposed to the traditional `.then(function(obj) {}) syntax.
I'm too used to writing stuff with node :P
pd93 (Thu, 22 Jun 2017 14:27:26 GMT):
@dselman @davidkel Okay, I just solved this in the playground. I was trying the use the `.then((obj) => {});` syntax as opposed to the traditional `.then(function(obj) {})` syntax.
I'm too used to writing stuff with node :P
davidkel (Thu, 22 Jun 2017 14:29:07 GMT):
@pd93 what was the full error you received, just interested to know exactly what it said and also if there is a way to provide more useful info
davidkel (Thu, 22 Jun 2017 14:29:55 GMT):
@zgalvin111 Composer doesn't do anything with channels. When to deploy a business network your connection profile specifies the channel you want to deploy it to.
davidkel (Thu, 22 Jun 2017 14:29:55 GMT):
@zgalvin111 Composer doesn't do anything with channels. When you deploy a business network your connection profile specifies the channel you want to deploy it to.
pd93 (Thu, 22 Jun 2017 14:32:40 GMT):
@davidkel the `SyntaxError: Unexpected token (19:16)` is probably the bit I should have posted here. I wasn't sure what it was referencing until I pasted the js into the playground and it spat out the same error
zgalvin111 (Thu, 22 Jun 2017 14:36:18 GMT):
@davidkel Ok, so if you wanted to effectively have different channels in composer, you would have to create multiple BNA's or permission your network in such a way that it works. Am I understanding it right?
davidkel (Thu, 22 Jun 2017 14:38:33 GMT):
@zgalvin111 You would configure your fabric with whatever channels you needed. Channels have their own ledger and world state and are not shared across channels.
davidkel (Thu, 22 Jun 2017 14:38:33 GMT):
@zgalvin111 You would configure your fabric with whatever channels you needed. Channels have their own ledger and world state and are not shared
davidkel (Thu, 22 Jun 2017 14:40:09 GMT):
@zgalvin111 So when you deploy a business network to a channel you are providing that business network with the ledger and world state it will use
zgalvin111 (Thu, 22 Jun 2017 14:41:49 GMT):
Right. Ok, just so I understand, each business network requires one ledger and world state? You couldn't have multiple business networks on one ledger. Right?
davidkel (Thu, 22 Jun 2017 14:44:24 GMT):
You can have multiple business networks deployed to the same channel so they will share the ledger and world state. I don't think anyone has investigated whether it's possible to access data from another business network
zgalvin111 (Thu, 22 Jun 2017 14:49:16 GMT):
Yeah, I would assume that is somewhat of a security risk but I have no idea.
JohnWhitton (Thu, 22 Jun 2017 14:59:51 GMT):
@dselman @sstone1 Just a heads up I won't be able to make the composer call today. We're currently focused on our migration to Fabric 1.0 and setting up our network to allow for multiple private channels - hope to be on the next one after we get fabric locked down
sstone1 (Thu, 22 Jun 2017 15:01:49 GMT):
@JohnWhitton OK, thanks for letting us know
dselman (Thu, 22 Jun 2017 15:07:26 GMT):
@JohnWhitton good luck John -- would love to hear your lessons learned once the time is right.
Pere-Lluis (Thu, 22 Jun 2017 15:08:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TiwsyLjn59Ecqpju9) @sstone1 hey! Thank you very much for the answer, I'll try to make it to the meeting. It's in an hour right?
sstone1 (Thu, 22 Jun 2017 15:14:53 GMT):
cool - 46 minutes and counting :)
davidoevans (Thu, 22 Jun 2017 15:19:04 GMT):
i'm authenticating via Github and following the steps to issue and identity and add that to the default wallet. How can I get loopback to associate my Github identity with an enrollmentID?
davidoevans (Thu, 22 Jun 2017 15:19:04 GMT):
@sstone1 i'm authenticating via Github and following the steps to issue and identity and add that to the default wallet. How can I get loopback to associate my Github identity with an enrollmentID?
davidoevans (Thu, 22 Jun 2017 15:30:00 GMT):
it seems that in composer-rest-server, every GitHub user gets their own default wallet...correct?
joedayz (Thu, 22 Jun 2017 15:59:54 GMT):
Has joined the channel.
joedayz (Thu, 22 Jun 2017 16:09:10 GMT):
Hi guys. What is your recommendation for learn to create transaction processor functions? Because I see a sintaxis , some functions and my last question is Where I can get a programming guide about this for create my own code and if exists some repository of examples? Sorry , if my question is too basic, but I am starting with it topic recently.
GOWDHAMAN (Thu, 22 Jun 2017 16:18:32 GMT):
I'm trying to deploy marbles-network.bna in to Bluemix vNextBeta using composer network deploy command.... It is throwing the following exception "✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: failed to obtain cds for lscc - transaction not found lscc/
Command failed"
baoyangc (Thu, 22 Jun 2017 16:49:27 GMT):
Has joined the channel.
dselman (Thu, 22 Jun 2017 16:53:48 GMT):
@joedayz I recommend first doing the Playground tutorial to learn the concepts, and then the Developer tutorial. By the end of those you should have a good idea how to proceeed.
gkd720 (Thu, 22 Jun 2017 16:54:01 GMT):
@sstone1 I tried refreshing by just rerunning `composer.sh` and that did the trick. I may have waited too long after playing with the sampleAsset/sampleParticipant example, and maybe lost the connection to the fabric like you mentioned. I'll noe step through the car auction example. Thanks.
gkd720 (Thu, 22 Jun 2017 16:54:01 GMT):
@sstone1 I tried refreshing by just rerunning `composer.sh` and that did the trick. I may have waited too long after playing with the sampleAsset/sampleParticipant example, and maybe lost the connection to the fabric like you mentioned. I'll noe step through the car auction example. Thanks.
@davidkel Fortunately it looked like something simple. Thanks.
gkd720 (Thu, 22 Jun 2017 16:54:01 GMT):
@sstone1 I tried refreshing by just rerunning `composer.sh` and that did the trick. I may have waited too long after playing with the sampleAsset/sampleParticipant example, and maybe lost the connection to the fabric like you mentioned. I'll noe step through the car auction example. Thanks.
@davidkel Fortunately it looked like something simple. Thanks.
*Update* I retried things, and was able to import/deploy the car auction network 0.0.9. But clicking the Test tab got an error (couldn't find connectionID or something like that). So I reran `composer.sh`, imported car auction, and clicked Test. I am now able to make new members, vehicles, etc. So it looks like there is some kind of short timeout occurring, like maybe a minute or two. Is this expected? What are the timeout values? Can I extend? (I guess I don't work too quick!) Thanks.
gkd720 (Thu, 22 Jun 2017 16:54:01 GMT):
@sstone1 I tried refreshing by just rerunning `composer.sh` and that did the trick. I may have waited too long after playing with the sampleAsset/sampleParticipant example, and maybe lost the connection to the fabric like you mentioned. I'll noe step through the car auction example. Thanks.
@davidkel Fortunately it looked like something simple. Thanks.
*Update* I retried things, and was able to import/deploy the car auction network 0.0.9. But clicking the Test tab got an error (couldn't find connectionID or something like that). So I reran `composer.sh`, imported car auction, and clicked Test. I am now able to make new members, vehicles, etc. So it looks like there is some kind of short timeout occurring, like maybe a minute or two. Is this expected? What are the timeout values? Can I extend? (I guess I don't work too quick!) Thanks.
Also, just waiting in the Test tab for a couple minutes causes the error.
gkd720 (Thu, 22 Jun 2017 16:54:01 GMT):
@sstone1 I tried refreshing by just rerunning `composer.sh` and that did the trick. I may have waited too long after playing with the sampleAsset/sampleParticipant example, and maybe lost the connection to the fabric like you mentioned. I'll noe step through the car auction example. Thanks.
@davidkel Fortunately it looked like something simple. Thanks.
*Update* I retried things, and was able to import/deploy the car auction network 0.0.9. But clicking the Test tab got an error (couldn't find connectionID or something like that). So I reran `composer.sh`, imported car auction, and clicked Test. I am now able to make new members, vehicles, etc. So it looks like there is some kind of short timeout occurring, like maybe a minute or two. Is this expected? What are the timeout values? Can I extend? (I guess I don't work too quick!) Thanks.
Also, just waiting in the Test tab for a couple minutes causes the error.
Hmmmm, OK, poking around in the `composer.sh` window, I see a suggestion to address "errors in later commands" by doing `export FABRIC_START_TIMEOUT=
dselman (Thu, 22 Jun 2017 16:54:02 GMT):
https://hyperledger.github.io/composer/tutorials/tutorials.html
lbennett (Thu, 22 Jun 2017 16:55:12 GMT):
@davidkel - that was it - thanx! Now I have a chaincode error - but I think i have seen this asked about before - will go through this channel
joedayz (Thu, 22 Jun 2017 17:05:48 GMT):
@dselman The tutorial only create an angular application for the assets. I have other question is : Is it only for demo?, because I thinked that it create all the scaffolding of participants, assets and transactions inclusive.
dselman (Thu, 22 Jun 2017 17:06:16 GMT):
Yes, you'll have to do some work to build an app... :-)
dselman (Thu, 22 Jun 2017 17:07:03 GMT):
You can also check out our demo app, which has much more realistic UIs.
dselman (Thu, 22 Jun 2017 17:10:24 GMT):
https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-lifecycle
joedayz (Thu, 22 Jun 2017 17:10:56 GMT):
Excellent @dselman . Thank your very much. I continue doing my own review. Regards from Peru.
Percival Lucena (Thu, 22 Jun 2017 17:13:06 GMT):
we are really having a hard time trying to deploy Composer into Bluemix 0.6 or Bluemix 1.0
For Bluemix 0.6 we are using the following connection profile https://github.com/plucena/hyperledger/blob/master/composer/connection.json and most of times we get connection errors such as those ones bellow:
events.js:160
throw er; // Unhandled 'error' event
^
Error: {"created":"@1498151112.701000182","description":"EOF","file":"../src/core/lib/iomgr/tcp_posix.c","file_line":235,"grpc_status":14}
at ClientDuplexStream._emitStatusIfDone (/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
We believe that connecting composer to Bluemix is an essential step, but I didn't get much help from the Rocket.chat community. @Yao were you able to have a successful deploy on Bluemix for 0.6 or 1.0 ?
davidkel (Thu, 22 Jun 2017 17:31:45 GMT):
@lbennett also check stack overflow as hopefully some of the common pitfalls are there under the `hyperledger-composer` tag
lbennett (Thu, 22 Jun 2017 17:32:11 GMT):
thank you!
davidkel (Thu, 22 Jun 2017 17:33:04 GMT):
@Percival Lucena you could be hitting the event drop problem that bluemix has
silliman (Thu, 22 Jun 2017 17:50:22 GMT):
will the 'breaking changes' coming with Composer 0.9.x break everybody who is using 0.8.x or just if you have used certain functions/features that have changed. I guess what I'm asking is, if I am using, e.g., the digitalproperty-app from composer-sample-applications, will I still be able to use in 0.9.x what I've currently git clone'd now?
JennFoley (Thu, 22 Jun 2017 18:05:58 GMT):
also, (sorta goes with @silliman's question) because of the change to Composer 0.8.x where I had to conform to the fabric naming standard for the project, is it to be expected that on redeploy, I would lose all of my existing data in blockchain?
sstone1 (Thu, 22 Jun 2017 19:03:38 GMT):
@silliman the breaking changes will break most people I suspect. model file and ACL file changes will be required everywhere, including to the sample applications.
sstone1 (Thu, 22 Jun 2017 19:03:54 GMT):
the biggest pain will be the removal of TX IDs and timestamps from the model files.
sstone1 (Thu, 22 Jun 2017 19:04:19 GMT):
it's less likely people will be using events (since it is newer), but the event IDs and timestamps will also need to be removed
sstone1 (Thu, 22 Jun 2017 19:04:29 GMT):
and then ACL files which use namespaces will also change
sstone1 (Thu, 22 Jun 2017 19:04:46 GMT):
i doubt that many people have used the `queryNative` function yet, but it'll be disappearing as well
silliman (Thu, 22 Jun 2017 19:04:53 GMT):
will you be synching the updates via npm with the GitHub updates for the sample applications?
sstone1 (Thu, 22 Jun 2017 19:36:07 GMT):
yeah
sstone1 (Thu, 22 Jun 2017 19:37:41 GMT):
@JennFoley yeah - we use the business network name for the chaincode ID, so you would have had a new chaincode ID created. data is lost when you create a new chaincode ID.
sstone1 (Thu, 22 Jun 2017 19:38:04 GMT):
we also do not support chaincode upgrade at the moment, which is required to upgrade the chaincode version of Composer - that's something we're considering.
sstone1 (Thu, 22 Jun 2017 19:38:19 GMT):
but you can do a business network update which will replace the BNA on the Blockchain side and keep all of your data
jmcnevin (Thu, 22 Jun 2017 19:41:26 GMT):
is there somewhere where I can get an overview of what happens when you deploy a BNA?
sstone1 (Thu, 22 Jun 2017 19:45:28 GMT):
I'm not sure we have any docs on that yet
sstone1 (Thu, 22 Jun 2017 19:45:37 GMT):
let me look... I'm sure we did some slides for it a while ago
sstone1 (Thu, 22 Jun 2017 19:48:09 GMT):
@jmcnevin if you write it up as a SO question (using the `hyperledger-composer` tag we can get it answered for you
sstone1 (Thu, 22 Jun 2017 19:48:19 GMT):
the slides we have on this are incomplete and seriously out of date
sstone1 (Thu, 22 Jun 2017 19:48:25 GMT):
an area we need to improve the docs for
silliman (Thu, 22 Jun 2017 19:48:52 GMT):
@sstone1 Hi Simon, do you think that if I qualified my global installs of composer-cli, composer-rest-server, composer-playgrond, generator-hyperledger-composer to specify @0.8.1, and made my own fork of composer-sample-applications from GitHub now, that I could stay in business for a little while against 0.8.1. I guess a lot of that depends on how the composer-related dependencies are specified in the packages.json files.
jmcnevin (Thu, 22 Jun 2017 19:49:08 GMT):
@sstone1 will do :)
sstone1 (Thu, 22 Jun 2017 19:50:12 GMT):
@silliman you should be fine with that - the dependencies are such that if you install cli@0.8.1, then you'll get 0.8.* of the dependencies
sstone1 (Thu, 22 Jun 2017 19:50:19 GMT):
it won't pull in 0.9.* dependencies
sstone1 (Thu, 22 Jun 2017 19:50:37 GMT):
the sample apps repo won't change... it will be the sample networks repo that will
sstone1 (Thu, 22 Jun 2017 19:50:44 GMT):
which is where the playground sample import loads them from
silliman (Thu, 22 Jun 2017 19:52:40 GMT):
@sstone1 hmm so I am not cloning sample-networks.....just sample-applications.. would this mean that the composer playground at 0.8.x will stay smart enough to get the right sample-networks after 0.9.x comes out?
sstone1 (Thu, 22 Jun 2017 19:53:01 GMT):
no - it pulls the sample networks straight from github
sstone1 (Thu, 22 Jun 2017 19:53:05 GMT):
which is broken!!!
sstone1 (Thu, 22 Jun 2017 19:53:09 GMT):
we need to fix that
sstone1 (Thu, 22 Jun 2017 19:53:27 GMT):
you may just need to export the ones you care about as BNA files and import them from disk
silliman (Thu, 22 Jun 2017 19:53:48 GMT):
is broken now? or do you mean broken against 0.9.x code
sstone1 (Thu, 22 Jun 2017 19:54:08 GMT):
i mean the system where playground pulls from github is broken
sstone1 (Thu, 22 Jun 2017 19:54:16 GMT):
and we should do something better that doesn't cause this problem
silliman (Thu, 22 Jun 2017 19:54:36 GMT):
is that the old GitHub Rate Limit exceeded thing or something else?
sstone1 (Thu, 22 Jun 2017 20:19:27 GMT):
it's more that we'd like to remove the need for GitHub authentication at all
sstone1 (Thu, 22 Jun 2017 20:19:46 GMT):
it's not great that you need a GitHub ID to import samples before you've even written a line of code with Composer
CT123 (Thu, 22 Jun 2017 21:17:02 GMT):
Was working with playground online using car auction and the "old" overview from the tutorial is missing - the docs in the test suite do not match the test code. For example, readme.md staes:"Switch to the Test tab, then click on the User participant registry, then click on the Create Participant button to create a new instance of a user." But there is NO "user" in test - only "member" and "auctioneer". Also, a couple of lines down readme states, "You now need to issue an identity card for this participant. Click the green ID card icon to the right of your participant. " But there is no 'greed id card icon' in the current .10 test suite. Can someone please advise or point me to the original car auction docs as I'm trying to model a new test suite against what I was using just a day ago. Thanks in advance!
dselman (Thu, 22 Jun 2017 21:20:27 GMT):
Sorry, the README is out of date -- we need to update that. The new tutorial is here: https://hyperledger.github.io/composer/tutorials/playground-guide.html
CT123 (Thu, 22 Jun 2017 21:25:50 GMT):
@dselman thanks but I need the *old* tutorial not the new one, the new one is a commodity trading network - I need the docs for the car auction network.... thanks.
CT123 (Thu, 22 Jun 2017 22:07:08 GMT):
@dselman update - pulled what I needed out of google webcache for the git -- thanks for responding!
MeenakshiSingh (Fri, 23 Jun 2017 00:05:16 GMT):
Hi...can we do fabric specific configurations like setting the consensus protocol or number of transactions which a block can contain through composer in a dev setup
lancekuo (Fri, 23 Jun 2017 03:45:18 GMT):
Has joined the channel.
rama_rahul (Fri, 23 Jun 2017 05:44:44 GMT):
Hi, I previously had composer version as 0.7.4. Since I was getting error while deploying my network I tried to upgrade it to 0.8.0 or above. For that I ran prereqs-ubuntu.sh given in this link : https://hyperledger.github.io/composer/installing/development-tools.html . But instead of upgrading now my composer version became 0.7.3. Someone please tell me how to upgrade it to 0.8.0
davidkel (Fri, 23 Jun 2017 06:19:11 GMT):
@rama_rahul to upgrade composer-cli, recommended way is to do `npm uninstall -g composer-cli && npm install -g composer-cli`. Do similar action for the composer rest server. If you have docker images you can pull the latest images. V0.8.0 will require the latest fabric-dev-server. The pre-reqs-ubuntu.sh is only a simple script to install certain prereq tools such as docker, docker-compose onto a ubuntu system it doesn't do anything with composer. Please ensure you have docker version 17.03 or later as it is now mandatory
rama_rahul (Fri, 23 Jun 2017 06:26:25 GMT):
Message Attachments
davidkel (Fri, 23 Jun 2017 06:45:08 GMT):
@rama_rahul first do `npm uninstall -g composer-cli` and check you don't have any other versions installed by trying to run `composer -v` again. It's possible you still have old versions installed and you need to locate them and uninstall them as well.
sstone1 (Fri, 23 Jun 2017 06:58:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hXSFWQigcSuDfKsFL) @MeenakshiSingh Composer is not a Fabric configuration/management tool; it includes a sample Fabric dev setup for getting going quickly with Composer, but it will deploy to any instance of Fabric that you configure.
Pere-Lluis (Fri, 23 Jun 2017 08:10:23 GMT):
I have a bit of a conceptual question
Pere-Lluis (Fri, 23 Jun 2017 08:11:17 GMT):
When you sue the development environment, and you deploy your chaincode on fabric, you can interact with it using with the RestAPI
Pere-Lluis (Fri, 23 Jun 2017 08:11:38 GMT):
provided a connection profile, that it's tied to the peers etcetera
Pere-Lluis (Fri, 23 Jun 2017 08:12:17 GMT):
but when your run local playground, aren't you doing the same? You provide a connection profile to it and it uses the fabric you have instanciated
Pere-Lluis (Fri, 23 Jun 2017 08:12:55 GMT):
So, I have deployed the chaincode on the dev-servers, and started the rest api
Pere-Lluis (Fri, 23 Jun 2017 08:13:08 GMT):
and at the same time, I'm running local playground
Pere-Lluis (Fri, 23 Jun 2017 08:13:50 GMT):
are they somehow related? Can you connect to the deployed chaincode through playground instead of though the restAPI?
Pere-Lluis (Fri, 23 Jun 2017 08:14:35 GMT):
or viceversa?
sstone1 (Fri, 23 Jun 2017 08:16:18 GMT):
you should be able to use multiple Composer clients (playground, REST API, etc) to connect to the same business network running on the same Fabric
sstone1 (Fri, 23 Jun 2017 08:16:38 GMT):
_however_ playground can only work a business network called `org-acme-biznet`
sstone1 (Fri, 23 Jun 2017 08:16:57 GMT):
so if you deploy a business network with a different name using the CLI or the APIs, rather than playground, playground won't be able to communicate with it
sstone1 (Fri, 23 Jun 2017 08:19:09 GMT):
we have some work lined up to fix that - that is the "cards" designs that Ed talked about yesterday on the call
Pere-Lluis (Fri, 23 Jun 2017 08:21:08 GMT):
yeah I just realized it was the name that confussed me
Pere-Lluis (Fri, 23 Jun 2017 08:21:18 GMT):
this gives cards much more sense
Pere-Lluis (Fri, 23 Jun 2017 08:21:41 GMT):
I see the chaincodes name is unchanged (as org...)
Pere-Lluis (Fri, 23 Jun 2017 08:21:48 GMT):
but it has my chaincode
Pere-Lluis (Fri, 23 Jun 2017 08:22:08 GMT):
so I'm running two equal chaincodes on the same network
Pere-Lluis (Fri, 23 Jun 2017 08:22:19 GMT):
thanks!
Pere-Lluis (Fri, 23 Jun 2017 08:25:43 GMT):
So when you connect to playground, you will always be able to interact as Admin there? In a sense that if someone else goes to playgrounds addres they will be using same wallet there or is it local?
Pere-Lluis (Fri, 23 Jun 2017 08:26:15 GMT):
(If you think this questions belong better to Stack Overflow, say so and I will post them there)
sstone1 (Fri, 23 Jun 2017 08:29:09 GMT):
that one needs a bit of explaining, so lets make that a SO one
Pere-Lluis (Fri, 23 Jun 2017 08:30:36 GMT):
cool!
deepakvparmar (Fri, 23 Jun 2017 08:44:04 GMT):
I am getting following error while generating angular 2 application using yo generator :
ubuntu@ubuntu-xenial:~/yoapp$ yo hyperledger-composer
Welcome to the Hyperledger Composer Skeleton Application Generator
? Please select the type of Application: Angular 2 Application
You can run this generator using: 'yo hyperledger-composer:angular'
Welcome to the Hyperledger Composer Angular 2 skeleton application generator
? Do you want to connect to a running Business Network? Yes
? What is the name of the application you wish to generate?: digitalpropertyApp
? Description of the application: Skeleton Hyperledger Composer Angular2 project
? Author name: Deepak Parmar
? Author email: dparmar1@in.ibm.com
? What is the Business Network Identifier?: digitalproperty-network
? What is the Connection Profile to use? hlfv1
? Enrollment id: admin
? Enrollment Secret: adminpw
? Do you want to generate a new REST API or connect to an existing REST API?: Generate a new REST API
? What port number should the generated REST server run on?: 3000
? Should namespaces be used in the generated REST API: Never use namespaces
About to connect to a running business network
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
at connectionProfileStore.load.then.e (/home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/generator-hyperledger-composer/node_modules/composer-common/lib/connectionprofilemanager.js:148:27)
Pere-Lluis (Fri, 23 Jun 2017 08:50:22 GMT):
By the way, one of the times I started the playground locally, something weird happened as the whale was in the top right, as with the website version. Don't know really why, I restarted it and it worked as expected, with the globe to manage the connections
dselman (Fri, 23 Jun 2017 09:42:16 GMT):
Yes, I've seen that as well -- there's a bug in there somewhere, maybe timing related Fabric is still coming up when Playground tries to deploy) or related to the state of local storage. If anyone can reproduce consistently I'd love to learn more.
dselman (Fri, 23 Jun 2017 09:42:16 GMT):
Yes, I've seen that as well -- there's a bug in there somewhere, maybe timing related; Fabric is still coming up when Playground tries to deploy) or related to the state of local storage. If anyone can reproduce consistently I'd love to learn more.
Pere-Lluis (Fri, 23 Jun 2017 09:53:20 GMT):
I tried to replicate the error but it didn't appear again. I will pay attention on what was going on next time.
qiushaoxi (Fri, 23 Jun 2017 09:54:25 GMT):
Has joined the channel.
qiushaoxi (Fri, 23 Jun 2017 09:56:00 GMT):
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/usr/local/node/lib/node_modules/generator-hyperledger-composer/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/node/lib/node_modules/generator-hyperledger-composer/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/local/node/lib/node_modules/generator-hyperledger-composer/node_modules/grpc/src/node/src/client.js:634:14
qiushaoxi (Fri, 23 Jun 2017 09:56:16 GMT):
what‘s the problems
mahoney1 (Fri, 23 Jun 2017 09:59:54 GMT):
@deepakvparmar can you tell what version of docker, npm ? And how much memory in Gb in your Ubuntu vm please?
dselman (Fri, 23 Jun 2017 10:00:16 GMT):
https://stackoverflow.com/questions/44595831/could-not-deploy-business-network-to-hyperledger-fabric-beta-using-composer
dselman (Fri, 23 Jun 2017 10:00:32 GMT):
@qiushaoxi ^^^^ please look in StackOverflow
qiushaoxi (Fri, 23 Jun 2017 10:01:11 GMT):
thanks
deepakvparmar (Fri, 23 Jun 2017 10:44:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZWBQsNZXDEbKnwLTM) @mahoney1 : deleted old vm, started new vm with all latest modules.
deepakvparmar (Fri, 23 Jun 2017 10:50:55 GMT):
I have just configured new vm for composer, trying to follow all steps mentioned on composer website.
After installing all required npm composer modules, executed following commands:
cd ~/fabric-tools
./downloadFabric.sh
./startFabric.sh
./createComposerProfile.sh
downloaded sample networks from : clone https://github.com/hyperledger/composer-sample-networks.git
cd composer-sample-network/digitalproperty-network
npm install
composer network deploy --archiveFile ./dist/digitalproperty-network.bna -p hlfv1 -i admin -s adminpw
getting error :
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error
Command failed
I have checked logs on peer0 container (docker logs peer0), logs are :
2017-06-23 10:33:45.594 UTC [endorser] simulateProposal -> DEBU 3c0 Exit
2017-06-23 10:33:45.594 UTC [endorser] ProcessProposal -> ERRO 3c1 simulateProposal() resulted in chaincode response status 500 for txid: da173862bb0f6f4c61c0d874bd81298e761bf41554d273ca46be5bf898b7a588
2017-06-23 10:33:45.618 UTC [endorser] ProcessProposal -> DEBU 3c2 Exit
2017-06-23 10:33:46.557 UTC [eventhub_producer] validateEventMessage -> DEBU 3c3 ValidateEventMessage starts for signed event 0xc421270420
2017-06-23 10:33:46.557 UTC [eventhub_producer] deRegisterHandler -> DEBU 3c4 deregistering event type: BLOCK
2017-06-23 10:33:46.582 UTC [eventhub_producer] Chat -> ERRO 3c5 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
Any pointer/suggestion will be helpful?
larsf (Fri, 23 Jun 2017 10:52:19 GMT):
Hi, any advice highly appreciated: We have Composer 0.8 and Fabric 1, and all the other pre-reqs up to date running on Ubuntu 16.04 in VMWare (on Win 10). We moved the image from a computer to another (copying the VMDK ++ files) and started Ubuntu on the target. So far working fine. However, whan running composer network deploy (we are now testing with the training network called "my-network", the composer network deploy fails with a "Connection Failed" error. No further details. I have tried several things link removing the docker containers (not the image), and turned off IPv6. Still the same problem. Also I have inspected the .composer-connection-profiles/hlfv1/connection.json file, it looks ok to me and are exactly the same as on the source ubuntu. So, why is this happening. When I started VMWare for the first time I selected "I moved it". Please anybody advice.
larsf (Fri, 23 Jun 2017 10:56:45 GMT):
Oh, I forgot to mention that the target ubuntu is placed in a red-zone, so no internet access.
larsf (Fri, 23 Jun 2017 10:57:00 GMT):
Can that be the reason to the problem?
davidkel (Fri, 23 Jun 2017 11:24:24 GMT):
@deepakvparmar if you are using the fabric-dev-server from composer-tools then you need to deploy with the pre-loaded userid of `PeerAdmin` (secret isn't important so put anything you like for the -s option)
davidkel (Fri, 23 Jun 2017 11:24:54 GMT):
@larsf try changing the connection profile from using localhost to the explicit ip address of the machine
deepakvparmar (Fri, 23 Jun 2017 11:26:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hXiYakieLnaGWTrgP) @davidkel : Thank You David, had habit of using 'admin'. Its working now
larsf (Fri, 23 Jun 2017 11:30:13 GMT):
@davidkel I am running composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString ..... And when running the command I am positioned in the /dist folder where the .bna file is located.
davidkel (Fri, 23 Jun 2017 11:31:19 GMT):
@larsf the hlfv1 connection profile can be found at `~/.composer-connection-profiles/hlfv1/connection.json`
larsf (Fri, 23 Jun 2017 11:31:39 GMT):
@davidkel yes, will try that now. Thanks.
deepakvparmar (Fri, 23 Jun 2017 11:40:00 GMT):
Configured composer-rest-server successfully, still not able to access http://localhost:3000/explorer
? Enter your Fabric Connection Profile Name: hlfv1
? Enter your Business Network Identifier : digitalproperty-network
? Enter your Fabric username : PeerAdmin
? Enter your secret: peeradmin
? Specify if you want namespaces in the generated REST API: never use namespaces
? Specify if you want the generated REST API to be secured: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -p hlfv1 -n digitalproperty-network -i PeerAdmin -s peeradmin -N never
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
When I am trying to access outside vm, getting erro "unable to connect". 3000 port is forwarded successfully.
larsf (Fri, 23 Jun 2017 11:47:18 GMT):
@davidkel I have tried David, doing the change didnt help.
davidkel (Fri, 23 Jun 2017 11:53:33 GMT):
@larsf try `export GRPC_TRACE=all` to get some trace output which may indicate what the problem is
pd93 (Fri, 23 Jun 2017 12:03:15 GMT):
Hi, is it possible to predefine a list of participants/assets that you'd like to be available immediately after deployment? It's a bit tiresome having to add them back in each time once you know they work
Pere-Lluis (Fri, 23 Jun 2017 12:10:41 GMT):
One workaround is to define a test
Pere-Lluis (Fri, 23 Jun 2017 12:10:48 GMT):
with the participants you want
Pere-Lluis (Fri, 23 Jun 2017 12:11:48 GMT):
https://hyperledger.github.io/composer/tutorials/developer-guide.html
Pere-Lluis (Fri, 23 Jun 2017 12:11:53 GMT):
check the write unit test here
pd93 (Fri, 23 Jun 2017 12:12:47 GMT):
@Pere-Lluis not a bad idea at all
rikmoedt (Fri, 23 Jun 2017 12:39:56 GMT):
Is there any document or example available on how to implement the loopback-connector-composer into a existing loopback application?
mahoney1 (Fri, 23 Jun 2017 12:50:01 GMT):
@deepakvparmar - I just tried port fwding using the 192 address from my ethernet interface inside my VM (ifconfig -a ). I'm using NAT. So once forwarded, I was able to access it using http://192.168.193.161:3000/explorer/ from my host browser (if that's what you're attempting to achieve). Hope this helps :-)
mahoney1 (Fri, 23 Jun 2017 12:51:53 GMT):
ps. you can check with netstat -a | grep 3000 that your composer rest server is listening on *.3000
larsf (Fri, 23 Jun 2017 13:09:32 GMT):
@davidkel Got some more debug info using the DEBUG setting you adviced. I copied and pasted the last few lines. Here it is: Output
Fanebost, Lars
to:
'lars.fanebost@no.ibm.com'
23.06.2017 15:08
Hide Details
From: "Fanebost, Lars"
davidkel (Fri, 23 Jun 2017 13:11:27 GMT):
@larsf so nothing is listening on the host:port's defined in your connection profile
dselman (Fri, 23 Jun 2017 13:42:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GqJyRBvQmBunxmixn) @pd93 see the `SetupDemo` transaction and associated logic for the vehicle-lifecycle-network or 'perishable-network'
pd93 (Fri, 23 Jun 2017 13:45:31 GMT):
@dselman Thanks :thumbsup:
mahoney1 (Fri, 23 Jun 2017 13:57:39 GMT):
Message Attachments
mahoney1 (Fri, 23 Jun 2017 14:00:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FJuu9ACMtRK3nPxwJ) @rikmoedt - see attached - sample of app integration with composer - provided 'as-is' but gives you an example (including the .js integration stanza) to integrate with the digitalproperty-network (sample network provided with Composer)
rikmoedt (Fri, 23 Jun 2017 14:02:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=R5Z87FpvMTQiFZr5W) @mahoney1 :thumbsup:
dwakeman (Fri, 23 Jun 2017 14:14:31 GMT):
Hello, question about receiving events that are emitted from a transaction processor function. I have a function defined to emit an event, and I am using the node-red flows to subscribe to events. When I execute my function, I actually receive the emitted event multiple times. Is that an expected behavior? If so, why? Thanks!
ShobhanaSundararaman (Fri, 23 Jun 2017 14:16:53 GMT):
I'm trying to setup a composer development environment in ubuntu VM. But I keep getting the error Display ":0.0" not found whenever i Start code (VSCOde). I've tried setting the DISPLAY to localhost, my VM IP address, 127.0.0.1, but to no avail. Any suggestions on how to set it?
ShobhanaSundararaman (Fri, 23 Jun 2017 14:16:53 GMT):
Hi, I've tried setting up the composer dev environment and tried a angular web application. IS there any other sample web application available where I can view how to acess the transaction etc?
davidkel (Fri, 23 Jun 2017 14:22:23 GMT):
@dwakeman how many times do you receive the same event ? does it match any multiple of your environment ?
dwakeman (Fri, 23 Jun 2017 14:23:23 GMT):
Actually, I think it was my mistake. I had two different node-red flows trying to connect to two different fabric environments. When I got rid of one of the flows and restarted node-red it seemed to return back to normal.
mahoney1 (Fri, 23 Jun 2017 14:28:59 GMT):
@ShobhanaSundararaman hmm..in Ubuntu - I just installed it. I can launch from the Search (type VS.,..icon appears...launch) - or from command line in a terminal using 'code' where my DISPLAY var was set to :0 - I would try the first suggestion I made..did this as a non-root user.
mahoney1 (Fri, 23 Jun 2017 14:51:29 GMT):
@here FYI everyone - the Composer community call recording from yesterday's call can be found here (along with previous weeks' recordings) -> https://drive.google.com/drive/folders/0B_NJV6eJXAA1b25MdHlXdkM0LWc (separate audio recording too).
zgalvin111 (Fri, 23 Jun 2017 17:50:13 GMT):
How is Composer connected to Fabric? Is it just through an SDK?
dselman (Fri, 23 Jun 2017 17:53:18 GMT):
Maybe this will help? https://stackoverflow.com/questions/44708444/what-is-happening-when-you-deploy-a-bna-file-to-hyperledger-composer
dselman (Fri, 23 Jun 2017 17:53:48 GMT):
Also this: https://hyperledger.github.io/composer/introduction/solution-architecture.html
zgalvin111 (Fri, 23 Jun 2017 17:56:30 GMT):
Perfect! Thank you @dselman
jmcnevin (Fri, 23 Jun 2017 18:31:05 GMT):
hey all.. i'm trying to run the composer-rest-server, but I'm getting this error:
```
Discovering types from business network definition ...
Connection fails: Error: error trying to setup a keystore path. ENOTSUP
It will be retried for the next request.
Error: error trying to setup a keystore path. ENOTSUP
at Client.newDefaultKeyValueStore.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnectionmanager.js:339:36)
```
jeffgarratt (Fri, 23 Jun 2017 18:40:16 GMT):
Getting this from trying to connect with a self configured network...
jeffgarratt (Fri, 23 Jun 2017 18:40:23 GMT):
```Error: error trying to list instantiated chaincodes. Error: Failed to deserialize creator identity, err MSP peerOrg0 is unknown
davidkel (Fri, 23 Jun 2017 19:13:37 GMT):
@jeffgarratt that's an odd one. One thing I need to recheck but I thought that the queryInstantiatedChaincodes which is what is being called here required Peer Admin authority I know it gets called when we try to deploy as we check to see if the chaincode has already been instantiated and so don't attempt it again. There could have been other times it get's driven from playground but I've not seen it.
davidkel (Fri, 23 Jun 2017 19:14:40 GMT):
@jmcnevin not seen that before you should check the keyValStore entry in your connection profile to see if it is a valid fully qualified path.
jeffgarratt (Fri, 23 Jun 2017 19:22:33 GMT):
@davidkel forgot I had exited the scenario before channel join, working like charm now :)
jeffgarratt (Fri, 23 Jun 2017 19:22:59 GMT):
just need to add the composer0Signer to the configadmin for the MSPConfig and think were cooking with Gas!!
MeenakshiSingh (Fri, 23 Jun 2017 19:35:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nqEuEgNRqKGeugXKq) @sstone1 ok, so the fabric network comes bundled with the composer and we cannot alter/modify the fabric specific configurations and bundle it again?
sstone1 (Fri, 23 Jun 2017 19:37:03 GMT):
@MeenakshiSingh you can edit the config in the `fabric-dev-servers` if you like, but we provide no tooling or docs for helping you do that - that is and always be Fabric configuration - you need to use the Fabric docs and ask questions in the #fabric channel
MeenakshiSingh (Fri, 23 Jun 2017 19:53:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RRuNyKMDbs4PsBwAb) @sstone1 ok thanks
jmcnevin (Fri, 23 Jun 2017 20:07:22 GMT):
does the rest server API support filtering on transactions?
Percival Lucena (Fri, 23 Jun 2017 20:17:43 GMT):
plu
jeffgarratt (Fri, 23 Jun 2017 20:19:37 GMT):
I am getting the following error...
jeffgarratt (Fri, 23 Jun 2017 20:19:40 GMT):
```Could not determine the participant for identity 'composer0'. The identity may be invalid or may have been revoked.
jeffgarratt (Fri, 23 Jun 2017 20:19:55 GMT):
Could not determine the participant for identity 'composer0'. The identity may be invalid or may have been revoked.
jeffgarratt (Fri, 23 Jun 2017 20:20:40 GMT):
seems I have gotten much farther, as now the composer0Signer's cert is placed as a admin on the MSPConfig on the channel
jeffgarratt (Fri, 23 Jun 2017 20:21:24 GMT):
I currently have a cert with CN='composer0'
jeffgarratt (Fri, 23 Jun 2017 20:22:09 GMT):
this is the CN for the signing cert for composer (that I used in the file for my keyValStoreV1
jeffgarratt (Fri, 23 Jun 2017 20:22:31 GMT):
now the user I registered in my wallet with was 'admin'
jeffgarratt (Fri, 23 Jun 2017 20:22:35 GMT):
perhaps this is my issue?
jeffgarratt (Fri, 23 Jun 2017 20:22:39 GMT):
do they need to match?
jeffgarratt (Fri, 23 Jun 2017 20:23:15 GMT):
i.e., does the wallet identity need to match the CN of the cert?
jeffgarratt (Fri, 23 Jun 2017 21:02:25 GMT):
Good to go!!!
joedayz (Fri, 23 Jun 2017 21:34:45 GMT):
Hi, one question guys. In the tutorial said that the REST API is generated with : composer network ping -n my-network -p hlfv1 -i admin -s adminpw. How to can I run the rest api like a service in background?
SahilKapoor (Fri, 23 Jun 2017 23:25:59 GMT):
Hi
smallX (Sat, 24 Jun 2017 02:56:05 GMT):
Has joined the channel.
smallX (Sat, 24 Jun 2017 02:57:03 GMT):
how to understand about Concerto-Client Concerto-Admin and Concerto-Runtime?
sstone1 (Sat, 24 Jun 2017 08:58:42 GMT):
@joedayz you can do that using standard shell commands, for example:
`nohup composer-rest-server ...options... < /dev/null > /dev/null 2>&1 &`
sstone1 (Sat, 24 Jun 2017 08:59:13 GMT):
note on mac i find that i need to run `disown` after running `nohup` to fully background it
sstone1 (Sat, 24 Jun 2017 08:59:40 GMT):
@smallX please explain your question in more detail - also, where did you get those names from?
dselman (Sat, 24 Jun 2017 10:54:38 GMT):
@joedayz second time I've seen this question. Can you post the Q&A on StackOverflow please?
ThePleasurable (Sat, 24 Jun 2017 12:24:31 GMT):
Has joined the channel.
rohilsurana (Sat, 24 Jun 2017 12:49:06 GMT):
Hi how can I get the participant associated with any identity using the rest api? Ex - I have multiple identities in a wallet and want to list all there assets in a single table.
rama_rahul (Sat, 24 Jun 2017 13:52:26 GMT):
Message Attachments
sstone1 (Sat, 24 Jun 2017 14:22:28 GMT):
@rama_rahul this is the same error message as https://stackoverflow.com/questions/44595831/could-not-deploy-business-network-to-hyperledger-fabric-beta-using-composer
sstone1 (Sat, 24 Jun 2017 14:22:43 GMT):
looks like you are using fabric v1.0 beta1 but not composer v0.8.x
rama_rahul (Sat, 24 Jun 2017 14:23:08 GMT):
Please can you tell me how to update
sstone1 (Sat, 24 Jun 2017 14:23:27 GMT):
@rohilsurana that is not possible at the moment. we might be able to do something as part of the new Composer query language to allow you to run a query like `SELECT org.acme.Asset WHERE (owner == _$currentParticipant)`
sstone1 (Sat, 24 Jun 2017 14:24:02 GMT):
@rama_rahul run `composer -v`. if it does not say v0.8.x, then run `npm uninstall -g composer-cli && npm install -g composer-cli`
rama_rahul (Sat, 24 Jun 2017 14:25:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qAv4q7gfW8pya8e6u) @sstone1 I tried that still its not getting updated.
rama_rahul (Sat, 24 Jun 2017 14:25:41 GMT):
I have even deleted all the node modules relating to composer. Still I can't upgrade it.
sstone1 (Sat, 24 Jun 2017 14:26:22 GMT):
run:
`npm ls -g --depth=0`
then run:
`which composer`
then run:
`composer -v`
and paste the results here
rama_rahul (Sat, 24 Jun 2017 14:33:26 GMT):
Message Attachments
sstone1 (Sat, 24 Jun 2017 14:34:26 GMT):
none of those commands should have fixed the problem, but great :joy:
rikmoedt (Sat, 24 Jun 2017 15:49:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=R5Z87FpvMTQiFZr5W) @mahoney1 Having no luck yet with the loopback-connector-composer. Following the guide, all works fine until I'm starting the server. In the docker logs of my ca, peer and 'chaincode' container I can see that my loopback application is connecting to them, and there are no errors there. But the last line I see when I start the loopback application is "Browse your REST API at http://0.0.0.0:3000/explorer". No comments about the loopback connector or having found model definitions. Also the ui at http://0.0.0.0:3000/explorer shows an empty swagger page without any endpoints.
sstone1 (Sat, 24 Jun 2017 16:02:28 GMT):
@rikmoedt what are you trying to do?
rikmoedt (Sat, 24 Jun 2017 16:04:44 GMT):
im trying to connect a loopback server to an deployed composer network using the loopback-connector-composer
rikmoedt (Sat, 24 Jun 2017 16:05:03 GMT):
eventually the goal is to have one loopback server that can connect to multiple deployed networks
rikmoedt (Sat, 24 Jun 2017 16:06:12 GMT):
still figuring out what the right approach is. using the loopback connector, or code more ourselves using the composer-client npm package
sstone1 (Sat, 24 Jun 2017 16:07:05 GMT):
OK, well the lack of models suggests that you're not driving the LoopBack discovery process
sstone1 (Sat, 24 Jun 2017 16:07:38 GMT):
see the 2 composer-*.js boot scripts in here:
sstone1 (Sat, 24 Jun 2017 16:07:39 GMT):
https://github.com/hyperledger/composer/tree/master/packages/composer-rest-server/server/boot
sstone1 (Sat, 24 Jun 2017 16:07:49 GMT):
they drive the LoopBack discovery process and add all the models to LoopBack
sstone1 (Sat, 24 Jun 2017 16:08:02 GMT):
although the runtime one is only for the wallet + identity stuff
rikmoedt (Sat, 24 Jun 2017 16:12:31 GMT):
allright, il take a look at that. what approach would you suggest for the following process: on the loopback side we want to have one model called "trade". When the api is called to create a new trade, depending on the parties involved in that trade a different composer network need to be invoked. So the model is not directly one-on-one tied to a composer network but to a different one depending on the content of the trade. Is auto generating the models with the loopback discovery process still the right approach, or do we need to go in another direction
dselman (Sat, 24 Jun 2017 16:14:56 GMT):
@sstone1 it's the weekend dude. Get some rest...
rikmoedt (Sat, 24 Jun 2017 16:24:14 GMT):
now it makes sense why the labs doesn't work for me. the mentioned composer.js file includes more than just the part that is show in de document. Is there any place where I can find the entire file?
weeds (Sat, 24 Jun 2017 17:16:30 GMT):
i noticed https://stackoverflow.com/questions/44617968/error-while-deploying-bna-file-to-local-hyperledger-fabric this on stackovverflow, which is a composer question, so if you guys could answer that have the expertise that would be great- thanks!
rohilsurana (Sat, 24 Jun 2017 18:57:04 GMT):
@sstone1 ok will wait for that. Also is the composer-rest-server currently broke, even after providing the COMPOSER_PROVIDERS and -S true it only shows wallet but shows /auth/facebook not found.
sstone1 (Sat, 24 Jun 2017 19:42:09 GMT):
@rikmoedt there are no labs that cover using the LoopBack connector in a LoopBack application; the only resources for this is the code is in the `composer-rest-server` (which is a normal LoopBack application) project linked to above.
sstone1 (Sat, 24 Jun 2017 19:42:24 GMT):
@weeds both Dave and myself have already commented on that SO post.
sstone1 (Sat, 24 Jun 2017 19:42:52 GMT):
@rohilsurana not as far as I know - I haven't tried Facebook in a while, but I tried LDAP a couple of days ago and it worked fine for me.
rikmoedt (Sat, 24 Jun 2017 19:45:41 GMT):
@sstone1 using that example now and making nice progress. thnx for the help so far
sstone1 (Sat, 24 Jun 2017 19:45:53 GMT):
np
smallX (Sun, 25 Jun 2017 02:37:14 GMT):
@sstone1 i want to see the source code, so i `git clone` the code, `git log` rollback `01fe06`. you see that in the README.md.
rohilsurana (Sun, 25 Jun 2017 10:46:32 GMT):
@sstone1 it's working now seems like my file that had env variables got corrupt some how.
sstone1 (Sun, 25 Jun 2017 17:55:08 GMT):
@smallX I guess you're going on a historical tour of the code if you're going back that far - anyway, Concerto was the original name for the project until we settled on Composer.
SahilKapoor (Sun, 25 Jun 2017 18:39:17 GMT):
@sstone1 I have fabric running with couchdb by following fabrci documents. Now to use composer , do I need to bring it down and destroy all docker images and the restart using composer provided scripts. Or should I just createcomposerprofile and start using composer.
SahilKapoor (Sun, 25 Jun 2017 19:09:43 GMT):
Also
SahilKapoor (Sun, 25 Jun 2017 19:11:05 GMT):
In Hyperledger Fabric Beta peers now enforce the concepts of admins and members. Admin user's identities and crypto material must be available to the peer at deployment. *To make that identity and its crypto material available, your must import it to your local keyValStore directory before deploying the business network.* To import the identity, use the composer identity import command. When importing an identity, you do not assign it a secret, however the composer network deploy command requires a secret. If you are using an imported identity, you can enter any value for the secret.
SahilKapoor (Sun, 25 Jun 2017 19:13:38 GMT):
How do we create keyvalue? I am talking this in regards to CLI. When I am deploying bna file from command line, how do I specify identity? Till now we used to use default hlfv1 identity for user admin
SahilKapoor (Sun, 25 Jun 2017 19:21:19 GMT):
sahil@ubuntu-2gb-blr1-01:~/work/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/ca$ ls
5ecf7eee0f62e964c8010f3492be26f57549711411c59df455888684f039b954_sk 8c9752a901032d96d0c2f5dd0303556bda58ead7d52b91a1678d543926a09cb6_sk ca.org1.example.com-cert.pem
SahilKapoor (Sun, 25 Jun 2017 19:22:54 GMT):
I used fabric documentation to start fabric with couch db . So I would be using above mentioned key while using
SahilKapoor (Sun, 25 Jun 2017 19:22:54 GMT):
I used fabric documentation to start fabric with couch db . So would I be using above mentioned key while using
SahilKapoor (Sun, 25 Jun 2017 19:23:02 GMT):
composer identity import -p hlfv1 -u PeerAdmin -c ./peerOrganizations/org1.example.com/users/Admin@org1.example.com/signcerts/Admin@org1.example.com-cert.pem -k ./peerOrganizations/org1.example.com/users/Admin@org1.example.com/keystore/9022d671ceedbb24af3ea69b5a8136cc64203df6b9920e26f48123fcfcb1d2e9_sk
rohilsurana (Sun, 25 Jun 2017 20:26:54 GMT):
Hi does anyone know any way to get the current default identity?
smallX (Sun, 25 Jun 2017 20:54:32 GMT):
@sstone1 well, OK:grinning: thank you!
chenxuan (Mon, 26 Jun 2017 00:32:01 GMT):
Has joined the channel.
kvnlee (Mon, 26 Jun 2017 04:15:01 GMT):
Has joined the channel.
qiushaoxi (Mon, 26 Jun 2017 06:05:28 GMT):
Error: EACCES: permission denied, open '/root/.config/configstore/insight-yo.json'
You don't have access to this file.
qiushaoxi (Mon, 26 Jun 2017 06:06:23 GMT):
when i exec “yo hyperledger-composer” in root user. Error: EACCES: permission denied, open '/root/.config/configstore/insight-yo.json'
You don't have access to this file.
wael (Mon, 26 Jun 2017 08:36:23 GMT):
Hi, I am trying to connect a test profile for composer-connector-hlfv1, but I am getting this error : Failed to load connector module "composer-connector-hlfv1" for connection profile "test".
I tried to connect my created profile with embedded type , and it works . it seems like it doesn't find composer-connector-hlfv1 , but this module is in node_modules of my project.
so any suggestions to solve this issue ?
wael (Mon, 26 Jun 2017 08:38:49 GMT):
Code :
var admin = {
type: "hlfv1",
orderers: [
"grpc://localhost:7050"
],
ca: "http://localhost:7054",
peers: [{
requestURL: "grpc://localhost:7051",
eventURL: "grpc://localhost:7053"
},
{
requestURL: "grpc://localhost:7056",
eventURL: "grpc://localhost:7058"
}
],
keyValStore: "/home/.hfc-key-store",
channel: "mychannel",
mspID: "Org1MSP",
timeout: 300,
globalcert: "",
maxSendSize: 10,
maxRecvSize: 15
};
var adminConnection = new AdminConnection();
adminConnection.createProfile('test', admin).then(() => {
adminConnection.connect('test', 'admin', 'adminpw')});
davidkel (Mon, 26 Jun 2017 10:28:57 GMT):
@SahilKapoor at the moment in time I would suggest you use the fabric-dev-server. Although we are likely to work with fabric builds newer than beta we currently cannot work with a fabric which has all security features enabled.
davidkel (Mon, 26 Jun 2017 10:28:57 GMT):
@SahilKapoor at this moment in time I would suggest you use the fabric-dev-server. Although we are likely to work with fabric builds newer than beta we currently cannot work with a fabric which has all security features enabled.
mahoney1 (Mon, 26 Jun 2017 10:47:46 GMT):
hi Rik, FYI I've sent you the composer.js file (as it is written in the doc)
mahoney1 (Mon, 26 Jun 2017 10:47:46 GMT):
@qiushaoxi - its recommended by Yeoman not to exec yo as root, have you tried generating as non-root user
davidkel (Mon, 26 Jun 2017 12:08:20 GMT):
@wael The problem is usually down to one of the some dependent module for the connector hasn't been installed correctly. This can happen for a number of reasons. Version of node/npm being used. you did npm install using sudo or were the root user, you machine doesn't have enough memory (we recommend 4Gb min). You don't have python v2 installed or it isn't the default level of python when invoking the command python. These are the most common ones. Sometimes it can be resolved by clearing out your node_modules directory and redownloading using npm install.
davidkel (Mon, 26 Jun 2017 12:08:20 GMT):
@wael The problem is usually down to one of the some dependent module for the connector hasn't been installed correctly. This can happen for a number of reasons. Version of node/npm being used. you did npm install using sudo or were the root user, your machine doesn't have enough memory (we recommend 4Gb min). You don't have python v2 installed or it isn't the default level of python when invoking the command python. These are the most common ones. Sometimes it can be resolved by clearing out your node_modules directory and redownloading using npm install.
wael (Mon, 26 Jun 2017 12:31:50 GMT):
@davidkel why do I need python v2 ?
wael (Mon, 26 Jun 2017 12:31:50 GMT):
@davidkel why do I need python ?
davidkel (Mon, 26 Jun 2017 12:38:25 GMT):
@wael node-gyp is a tool which is used within npm modules to perform some custom build specific to the platform, for example it will compile C code that a node module may use. It's written in python and only works with v2 of python, not v3.
tbltzk (Mon, 26 Jun 2017 12:56:14 GMT):
Has joined the channel.
jaguarg (Mon, 26 Jun 2017 13:20:28 GMT):
Hi, i am now up and running with composer and composer REST server. But I am looking for a way to auth the API calls. Right now the API is using the account that I specified when starting `composer-rest-server -p hlfv1 -n my-network -i admin -s adminpw -N always`
I am adding participants and identities, but how do I then authenticate these users against the API ?
jaguarg (Mon, 26 Jun 2017 13:21:39 GMT):
I can see that composer supports passport for auth. But is there a way to authenticate call using fabric identities ?
uber.twin (Mon, 26 Jun 2017 13:52:15 GMT):
hi, what would be the reason why the composer REST server GUI would show only the "create" option for a transaction entity type; the "find", "modify", "delete" are not available.
uber.twin (Mon, 26 Jun 2017 13:57:38 GMT):
also, supposedly a transaction "id" shouldn't be specified, right? However, a submitting CLI client app can specify it and it'll be accepted by the network
kvnlee (Mon, 26 Jun 2017 14:19:36 GMT):
Hi all, I am an intern for the Open Mainframe Project, and I am working on a business network use case. I have deployed my .bna file onto a running Fabric v1 and brought it up on Composer REST server, however when I try to add an asset that has attributes that should be an empty array by default, it throws an error 422. ``` {
"error": {
"statusCode": 422,
"name": "ValidationError",
"message": "The `ibm_wsc_immunichain_Childform` instance is not valid. Details: `medproviders` can't be blank (value: []); `members` can't be blank (value: []); `immunizations` can't be blank (value: []).",
"details": {
"context": "ibm_wsc_immunichain_Childform",
"codes": {
"medproviders": [
"presence"
],
"members": [
"presence"
],
"immunizations": [
"presence"
]
},
"messages": {
"medproviders": [
"can't be blank"
],
"members": [
"can't be blank"
],
"immunizations": [
"can't be blank"
]
}
},
"stack": "ValidationError: The `ibm_wsc_immunichain_Childform` instance is not valid. Details: `medproviders` can't be blank (value: []); `members` can't be blank (value: []); `immunizations` can't be blank (value: []).\n at /data/npm/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:355:12\n at ModelConstructor.
kvnlee (Mon, 26 Jun 2017 14:19:36 GMT):
Hi all, I am an intern for the Open Mainframe Project, and I am working on a business network use case. I have deployed my .bna file onto a running Fabric v1 and brought it up on Composer REST server, however when I try to add an asset that has attributes that should be an empty array by default, it throws an error 422. ``` {
"error": {
"statusCode": 422,
"name": "ValidationError",
"message": "The `ibm_wsc_immunichain_Childform` instance is not valid. Details: `medproviders` can't be blank (value: []); `members` can't be blank (value: []); `immunizations` can't be blank (value: []).",
"details": {
"context": "ibm_wsc_immunichain_Childform",
"codes": {
"medproviders": [
"presence"
],
"members": [
"presence"
],
"immunizations": [
"presence"
]
},
"messages": {
"medproviders": [
"can't be blank"
],
"members": [
"can't be blank"
],
"immunizations": [
"can't be blank"
]
}
},
"stack": "ValidationError: The `ibm_wsc_immunichain_Childform` instance is not valid. Details: `medproviders` can't be blank (value: []); `members` can't be blank (value: []); `immunizations` can't be blank (value: []).\n at /data/npm/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:355:12\n at ModelConstructor.
kvnlee (Mon, 26 Jun 2017 14:19:36 GMT):
Hi all, I am an intern for the Open Mainframe Project, and I am working on a business network use case. I have deployed my .bna file onto a running Fabric v1 and brought it up on Composer REST server, however when I try to add an asset that has attributes that should be an empty array by default, it throws an error 422. ``` {
"error": {
"statusCode": 422,
"name": "ValidationError",
"message": "The `ibm_wsc_immunichain_Childform` instance is not valid. Details: `medproviders` can't be blank (value: []); `members` can't be blank (value: []); `immunizations` can't be blank (value: []).",
"details": {
"context": "ibm_wsc_immunichain_Childform",
"codes": {
"medproviders": [
"presence"
],
"members": [
"presence"
],
"immunizations": [
"presence"
]
},
"messages": {
"medproviders": [
"can't be blank"
],
"members": [
"can't be blank"
],
"immunizations": [
"can't be blank"
]
}
},
"stack": "ValidationError: The `ibm_wsc_immunichain_Childform` instance is not valid. Details: `medproviders` can't be blank (value: []); `members` can't be blank (value: []); `immunizations` can't be blank (value: []).\n at /data/npm/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:355:12\n at ModelConstructor.
jaguarg (Mon, 26 Jun 2017 14:37:18 GMT):
Hi, is there any doc to configuring the REST server to use a passport-local strategy or a custom strategy ?
dselman (Mon, 26 Jun 2017 15:34:52 GMT):
@kvnlee what does your model look like
mahoney1 (Mon, 26 Jun 2017 15:36:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DG74xzw2iznyjQpkq) @jaguarg you can follow the example strategy at https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html to guide you and edit the COMPOSER_PROVIDERS env variable section to add your passport-local strategy. The NPM module is https://www.npmjs.com/package/passport-local and the steps to configure the strategy are shown there.
jaguarg (Mon, 26 Jun 2017 15:54:28 GMT):
Hi, I am using the nodejs module composer-client but I am a getting this error when connecting :
` Unhandled promise rejection (rejection id: 1): Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"`
jaguarg (Mon, 26 Jun 2017 15:54:28 GMT):
any idea ?
kvnlee (Mon, 26 Jun 2017 16:21:50 GMT):
@dselman I'm unable to upload the .bna file, but all of the files are at my github: https://github.com/kvnlee5818/immunichain The asset is a childForm. Thanks!
mahoney1 (Mon, 26 Jun 2017 16:52:39 GMT):
hi @jaguarg, can you provide a log of what was being done? Have you installed composer-cli globally as a non-root user ? What's your NPM/Node/Docker version?
dselman (Mon, 26 Jun 2017 16:53:23 GMT):
@kvnlee you should be able to declare `immunizations` as optional in the model
gkd720 (Mon, 26 Jun 2017 18:22:15 GMT):
I'm starting to go through the "Developer Tutorial for creating a HyperLedger Composer solution". I have all the prerequisites met. I started installing development tools from my home directory, and am doing the line: `npm install -g composer-cli`. I see some warnings about a few things being deprecated, and I'm assuming that's OK. But, I do get some access errors: `npm ERR! path ../lib/node_modules/composer-cli/cli.js
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall symlink
npm ERR! Error: EACCES: permission denied, symlink '../lib/node_modules/composer-cli/cli.js' -> '/usr/local/bin/composer'
npm ERR! at Error (native)
npm ERR! { Error: EACCES: permission denied, symlink '../lib/node_modules/composer-cli/cli.js' -> '/usr/local/bin/composer'
npm ERR! at Error (native)
npm ERR! cause:
npm ERR! { Error: EACCES: permission denied, symlink '../lib/node_modules/composer-cli/cli.js' -> '/usr/local/bin/composer'
npm ERR! at Error (native)
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'symlink',
npm ERR! path: '../lib/node_modules/composer-cli/cli.js',
npm ERR! dest: '/usr/local/bin/composer' },
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'symlink',
npm ERR! path: '../lib/node_modules/composer-cli/cli.js',
npm ERR! dest: '/usr/local/bin/composer' }`
gkd720 (Mon, 26 Jun 2017 18:22:15 GMT):
I'm starting to go through the "Developer Tutorial for creating a HyperLedger Composer solution". I have all the prerequisites met. I started installing development tools from my home directory, and am doing the line: `npm install -g composer-cli`. I see some warnings about a few things being deprecated, and I'm assuming that's OK. But, I do get some access errors: `npm ERR! path ../lib/node_modules/composer-cli/cli.js
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall symlink
npm ERR! Error: EACCES: permission denied, symlink '../lib/node_modules/composer-cli/cli.js' -> '/usr/local/bin/composer'
npm ERR! at Error (native)
npm ERR! { Error: EACCES: permission denied, symlink '../lib/node_modules/composer-cli/cli.js' -> '/usr/local/bin/composer'
npm ERR! at Error (native)
npm ERR! cause:
npm ERR! { Error: EACCES: permission denied, symlink '../lib/node_modules/composer-cli/cli.js' -> '/usr/local/bin/composer'
npm ERR! at Error (native)
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'symlink',
npm ERR! path: '../lib/node_modules/composer-cli/cli.js',
npm ERR! dest: '/usr/local/bin/composer' },
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'symlink',
npm ERR! path: '../lib/node_modules/composer-cli/cli.js',
npm ERR! dest: '/usr/local/bin/composer' }`
And it suggests rerunning as root. So I did. But now I get and unending stream of what looks like the same error:
`gyp WARN EACCES user "root" does not have permission to access the dev dir "/Users/gkd/.node-gyp/6.10.3"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/composer-cli/node_modules/grpc/.node-gyp"
gyp WARN EACCES user "root" does not have permission to access the dev dir "/usr/local/lib/node_modules/composer-cli/node_modules/grpc/.node-gyp/6.10.3"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/composer-cli/node_modules/grpc/.node-gyp"`
So I'm not sure how to proceed. Any thoughts? Thanks.
gkd720 (Mon, 26 Jun 2017 18:22:15 GMT):
I'm starting to go through the "Developer Tutorial for creating a HyperLedger Composer solution". I have all the prerequisites met. I started installing development tools from my home directory, and am doing the line: `npm install -g composer-cli`. I see some warnings about a few things being deprecated, and I'm assuming that's OK. But, I do get some access errors: `npm ERR! path ../lib/node_modules/composer-cli/cli.js
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall symlink
npm ERR! Error: EACCES: permission denied, symlink '../lib/node_modules/composer-cli/cli.js' -> '/usr/local/bin/composer'
npm ERR! at Error (native)
npm ERR! { Error: EACCES: permission denied, symlink '../lib/node_modules/composer-cli/cli.js' -> '/usr/local/bin/composer'
npm ERR! at Error (native)
npm ERR! cause:
npm ERR! { Error: EACCES: permission denied, symlink '../lib/node_modules/composer-cli/cli.js' -> '/usr/local/bin/composer'
npm ERR! at Error (native)
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'symlink',
npm ERR! path: '../lib/node_modules/composer-cli/cli.js',
npm ERR! dest: '/usr/local/bin/composer' },
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'symlink',
npm ERR! path: '../lib/node_modules/composer-cli/cli.js',
npm ERR! dest: '/usr/local/bin/composer' }`
And it suggests rerunning as root. So I did. But now I get and unending stream of what looks like the same error:
`gyp WARN EACCES user "root" does not have permission to access the dev dir "/Users/gkd/.node-gyp/6.10.3"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/composer-cli/node_modules/grpc/.node-gyp"
gyp WARN EACCES user "root" does not have permission to access the dev dir "/usr/local/lib/node_modules/composer-cli/node_modules/grpc/.node-gyp/6.10.3"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/composer-cli/node_modules/grpc/.node-gyp"`
So I'm not sure how to proceed. Any thoughts? Thanks.
gkd720 (Mon, 26 Jun 2017 18:22:15 GMT):
I'm starting to go through the "Developer Tutorial for creating a HyperLedger Composer solution". I have all the prerequisites met. I started installing development tools from my home directory, and am doing the line: `npm install -g composer-cli`. I see some warnings about a few things being deprecated, and I'm assuming that's OK. But, I do get some access errors: `npm ERR! path ../lib/node_modules/composer-cli/cli.js
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall symlink
npm ERR! Error: EACCES: permission denied, symlink '../lib/node_modules/composer-cli/cli.js' -> '/usr/local/bin/composer'
npm ERR! at Error (native)
npm ERR! { Error: EACCES: permission denied, symlink '../lib/node_modules/composer-cli/cli.js' -> '/usr/local/bin/composer'
npm ERR! at Error (native)
npm ERR! cause:
npm ERR! { Error: EACCES: permission denied, symlink '../lib/node_modules/composer-cli/cli.js' -> '/usr/local/bin/composer'
npm ERR! at Error (native)
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'symlink',
npm ERR! path: '../lib/node_modules/composer-cli/cli.js',
npm ERR! dest: '/usr/local/bin/composer' },
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'symlink',
npm ERR! path: '../lib/node_modules/composer-cli/cli.js',
npm ERR! dest: '/usr/local/bin/composer' }`
And it suggests rerunning as root. So I did. But now I get and unending stream of what looks like the same error:
`gyp WARN EACCES user "root" does not have permission to access the dev dir "/Users/gkd/.node-gyp/6.10.3"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/composer-cli/node_modules/grpc/.node-gyp"
gyp WARN EACCES user "root" does not have permission to access the dev dir "/usr/local/lib/node_modules/composer-cli/node_modules/grpc/.node-gyp/6.10.3"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/composer-cli/node_modules/grpc/.node-gyp"`
So I'm not sure how to proceed. Any thoughts? Thanks.
Also, doesn't look like the backpacks reliably identify code. Do embedded single quotes trick it somehow?
silliman (Mon, 26 Jun 2017 18:32:37 GMT):
@gks720 instead of running npm install of composer-cli as root, I recommend changing your npm prefix to a directory you have access to. The original problem is your non-root user probably cannot update /usr/local/bin. E.g. here is what I do to set the npm prefix to my home directory, ...
*npm config set prefix /home/bcuser
at which point global binaries are placed in /home/bcuser/bin (actually usually just links to /home/bcuser/lib/....) which is in my PATH, and the modules are placed in /home/bcuser/lib ...
this way you can do all the global installs as non-root per the Composer team's recommendation
silliman (Mon, 26 Jun 2017 18:32:37 GMT):
@gks720 instead of running npm install of composer-cli as root, I recommend changing your npm prefix to a directory you have access to. The original problem is your non-root user probably cannot update /usr/local/bin. E.g. here is what I do to set the npm prefix to my home directory, ...
*npm config set prefix /home/bcuser*
at which point global binaries are placed in /home/bcuser/bin (actually usually just links to /home/bcuser/lib/....) which is in my PATH, and the modules are placed in /home/bcuser/lib ...
this way you can do all the global installs as non-root per the Composer team's recommendation
silliman (Mon, 26 Jun 2017 18:32:44 GMT):
@gkd720 ^^
jeffgarratt (Mon, 26 Jun 2017 18:43:33 GMT):
running the composer UI I do NOT seem to be able to add an ACL file
jeffgarratt (Mon, 26 Jun 2017 18:44:23 GMT):
I am running composer locally in my own network
gkd720 (Mon, 26 Jun 2017 19:15:28 GMT):
That did it. Everything installed with only the occasional deprecated warning. Thanks. [ ](https://chat.hyperledger.org/channel/composer?msg=4WcXdDa6GKQXnvboF) @silliman
dselman (Mon, 26 Jun 2017 19:18:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hrDxeYBX59qEmBEHL) @jeffgarratt yes, that's a UI limitation. You can either import a sample with an ACL file and then edit it, or export the BNA file, unzip, add an ACL file, zip and then reimport.
jeffgarratt (Mon, 26 Jun 2017 19:19:59 GMT):
perfect!!
jeffgarratt (Mon, 26 Jun 2017 19:20:03 GMT):
thnx so much! @dselman
sstone1 (Mon, 26 Jun 2017 19:21:05 GMT):
@dselman just chatting with jeff - it acts more like a UI bug at the moment - you can select the permissions.acl file and hit OK, just nothing happens
sstone1 (Mon, 26 Jun 2017 19:22:07 GMT):
actually, works OK in the latest code though
dselman (Mon, 26 Jun 2017 19:36:48 GMT):
cool
jdockter (Mon, 26 Jun 2017 20:16:23 GMT):
@dselman using Node Red I've setup a basic event and I'm able to receive it and display to the console...should I then be able to add additional flow steps some how?
jdockter (Mon, 26 Jun 2017 20:17:57 GMT):
nm I see what I'm doing wrong
qiushaoxi (Tue, 27 Jun 2017 01:23:09 GMT):
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/usr/local/node/lib/node_modules/generator-hyperledger-composer/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/node/lib/node_modules/generator-hyperledger-composer/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/local/node/lib/node_modules/generator-hyperledger-composer/node_modules/grpc/src/node/src/client.js:634:14
qiushaoxi (Tue, 27 Jun 2017 01:23:24 GMT):
yo command error
dselman (Tue, 27 Jun 2017 01:24:25 GMT):
Check on StackOverflow
gauthampamu (Tue, 27 Jun 2017 01:59:46 GMT):
@sstone1 Is composer sample update to support v1.0. I checked the sample code it is still using v0.6. There used to be sample that supported v1.0 but it moved to archives https://github.com/hyperledger-archives/composer-sample-applications-hlfv1 So I wanted to find out why it is archived.
rama_rahul (Tue, 27 Jun 2017 05:38:17 GMT):
Message Attachments
smallX (Tue, 27 Jun 2017 05:49:29 GMT):
hi guys, I hava a problem when I deploy `composer-sample-networks`:
```Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
It will be retried for the next request.
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
at connectionProfileStore.load.then.e (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:148:27)```
*prerequisites:*
```Operating Systems: Ubuntu Linux 16.04 LTS (64-bit)
Docker Engine: Docker version 17.03.1-ce, build c6d412e
Docker-Compose: docker-compose version 1.13.0, build 1719ceb
Node: v6.11.0
npm: 5.0.3
git: git version 2.13.0```
it's ok when I create business network and deploy business network,but there is a Error message when I run command line `composer-rest-server`
chtn2109 (Tue, 27 Jun 2017 05:56:07 GMT):
Has joined the channel.
chtn2109 (Tue, 27 Jun 2017 05:58:03 GMT):
Hi Guys, I read and implement hyperledger composer, but I have a questions in mine mind is that What is the peers node here in composer, how can we add peers , how they can interact with blockchain. please explain
davidkel (Tue, 27 Jun 2017 06:42:38 GMT):
@rama_rahul You cannot use admin/adminpw to deploy a network as it won't have the authority to install chaincode onto the peer. If you are using he fabric-dev-server package then it will put an appropriate id into your KeyValStore called PeerAdmin which you should use. It doesn't have a secret but you need to specify something which can be anything. If you have created your own fabric then you need to look at composer identity import command to import a peer admin cert into your keyvalstore
rama_rahul (Tue, 27 Jun 2017 07:08:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sBqssc9cFdfNqZqZF) @davidkel Thanks!
davidkel (Tue, 27 Jun 2017 07:11:59 GMT):
@gauthampamu The sample applications repository can be found at https://github.com/hyperledger/composer-sample-applications and has been updated and all the samples will run on hyperledger fabric v1.0. Our documentation has been updated to provide tutorials and installation guides as well, so worth taking a look.
rama_rahul (Tue, 27 Jun 2017 07:12:58 GMT):
Message Attachments
rama_rahul (Tue, 27 Jun 2017 07:13:13 GMT):
My asset name is company
dselman (Tue, 27 Jun 2017 07:34:36 GMT):
It it saying that the asset type `org.acme.mydefintion.Company` does not exist. Note the typo...
dselman (Tue, 27 Jun 2017 07:36:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uNG6zwHLL7aukkeR2) @chtn2109 Composer deploys to Fabric - so you use standard Fabric tools and utilities to manage your peers. Please refer to the Fabric docs for details.
chtn2109 (Tue, 27 Jun 2017 07:39:57 GMT):
@dselman Are you talking about this doc https://hyperledger-fabric.readthedocs.io/en/latest/
dselman (Tue, 27 Jun 2017 07:40:14 GMT):
yes
chtn2109 (Tue, 27 Jun 2017 07:43:26 GMT):
@dselman is there any specific part for explaining of managing peers in the doc??
chtn2109 (Tue, 27 Jun 2017 07:46:33 GMT):
@dselman One more thing that Is Participants in composer is a form of peers in hyperledger fabric??
dselman (Tue, 27 Jun 2017 07:48:59 GMT):
No, Participants and peers are different concepts. A Peer is typically run by an entity (a company) that has such a large stake in the running of the business network that they want their own copy of the ledger and are prepared to pay (IT cost) for the infrastructure to run a peer node. A Participant on the other hand is just someone who _participates_ in the business network and has credentials to access the network. They could simply be an end-user (a farmer, a deliver driver) etc.
dselman (Tue, 27 Jun 2017 07:49:47 GMT):
That would be a good Q&A to put on StackOverflow - can you do that please?
uber.twin (Tue, 27 Jun 2017 08:34:04 GMT):
@dselman Suppose the access mode is by REST API. Then, typically, the running of the REST server will be the responsibility of the Participant, right?
uber.twin (Tue, 27 Jun 2017 08:34:04 GMT):
@dselman Suppose the access mode is by REST API. Then, typically, the running of the REST server will be the responsibility of the Participant, right? but that would seem a little bit excessive for an end-user application platform.
rama_rahul (Tue, 27 Jun 2017 08:40:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eeWd5qwN5C4Yc9rHL) @dselman I think there is no typo. I still did not understand what was wrong there.
chtn2109 (Tue, 27 Jun 2017 08:44:37 GMT):
Thanks @dselman Sure, I'll put it on SO, but one more question coming on my head, if a company is a peer, who is responsible for run a peer node with it's own copy of ledger (database) so why company should use blockchain instead of simple client server (centrallly database) approach?
dselman (Tue, 27 Jun 2017 08:51:51 GMT):
That's a pretty general "why blockchain" question... there are a range of factors but a big one is trust. The IBM site does a good job of explaining it (other sources are available!): https://www.ibm.com/developerworks/cloud/library/cl-blockchain-basics-intro-bluemix-trs/
chtn2109 (Tue, 27 Jun 2017 08:59:40 GMT):
@dselman that's not I mean to say, After implementing composer tutorial, I felt that it is something like central database like implementation because only one peer node is there which interact with blockchain for store and retrieval of assets and participant and transactions, though composer-rest-client any application interact VIA API's, so where is the role of other peers, what are they? & where they reside on a business network & How could we create new Peers?
dselman (Tue, 27 Jun 2017 09:02:05 GMT):
That is not correct -- Composer stores all its data on the blockchain (via transactions and world-state) and it is subject to the same consensus mechanisms as any other chaincode running on Fabric. I.e. each peer processes all transactions and has its own copy of the ledger. If any of the peers try to "cheat" and update the ledger differently to the other peers they will be found out and their transactions will roll back. Simplified explanation - refer to the Fabric docs for all the options etc.
chtn2109 (Tue, 27 Jun 2017 09:09:11 GMT):
@dselman for example a logistic company implements the blockchain, so there different departments like customer care, accounts, shipping & others, each department have a peer node so that every peer has an updated information and each can interact with theblockchain as well? is that a correct philosophy for peers?
jaguarg (Tue, 27 Jun 2017 09:21:15 GMT):
@mahoney1 my environment is: ```os : Ubuntu 14.04.5 LTS
NPM 5.0.3
node v6.11.0
Docker version 17.03.1-ce, build c6d412e```
jaguarg (Tue, 27 Jun 2017 09:27:37 GMT):
@mahoney1 ```vagrant@vagrant-ubuntu-trusty-64:~/web/voteserver$ npm list -g composer-cli
/home/vagrant/.nvm/versions/node/v6.11.0/lib
└── composer-cli@0.8.1```
jaguarg (Tue, 27 Jun 2017 09:27:37 GMT):
@mahoney1 ```vagrant@vagrant-ubuntu-trusty-64:~/web/server$ npm list -g composer-cli
/home/vagrant/.nvm/versions/node/v6.11.0/lib
└── composer-cli@0.8.1```
dselman (Tue, 27 Jun 2017 09:30:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kWjPuFXxXygDH94BE) @chtn2109 only if the departments don't fully trust each other. A more likely scenario is *across* organizations.
chtn2109 (Tue, 27 Jun 2017 09:31:40 GMT):
Okay @dselman Thanks for the information.
chtn2109 (Tue, 27 Jun 2017 09:38:05 GMT):
@dselman Is there a way to implement chaincode via hyperledger-composer?
sstone1 (Tue, 27 Jun 2017 09:41:54 GMT):
@chtn2109 the business network definition you build in Composer is the chaincode (or smart contract if you prefer). the business network definition gets deployed to the Blockchain (Fabric) and becomes a running chaincode, at which point you start interacting with it. you can implement your business logic using JavaScript by writing transaction processor functions; these get executed on the Blockchain by the peer nodes when you submit transactions.
chtn2109 (Tue, 27 Jun 2017 09:43:22 GMT):
Thanks @sstone1 fro clarification
chtn2109 (Tue, 27 Jun 2017 09:43:22 GMT):
Thanks @sstone1 for clarification
mahoney1 (Tue, 27 Jun 2017 09:50:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oAufM3jx866e5dkhq) @rama_rahul is your network 'mydefinition' and not 'mydefintion' as shown in the object ID of your PNG message?
uber.twin (Tue, 27 Jun 2017 09:51:48 GMT):
@sstone1 when choosing to work with the REST API, what would be the best practice: to run the composer-rest-server instances as part of the infrastructure, or that should fall under the responsibility of the clients?
sstone1 (Tue, 27 Jun 2017 09:53:03 GMT):
Do you mean the infrastructure as in the Fabric nodes?
uber.twin (Tue, 27 Jun 2017 09:53:12 GMT):
yes
uber.twin (Tue, 27 Jun 2017 09:54:55 GMT):
the same security and administrative perimeter as the docker compose peers
rama_rahul (Tue, 27 Jun 2017 09:57:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2aAXgHCHiPYZGNbcY) @mahoney1 Thanks! Just realised a few seconds ago.
uber.twin (Tue, 27 Jun 2017 10:09:59 GMT):
@sstone1 I need to integrate a couple of dozens of banks. It is very likely each of them will want their own peer and than a corresponding composer-rest-server for access; On top of it, a web application for each of them, talking to their respective composer-rest-server instance, providing end-user functonality. Would you think this scenario is feasible?
sstone1 (Tue, 27 Jun 2017 10:10:27 GMT):
Right - that makes sense to me
sstone1 (Tue, 27 Jun 2017 10:10:38 GMT):
I do not think there would be one REST server for a whole Blockchain
sstone1 (Tue, 27 Jun 2017 10:10:55 GMT):
Each organisation needs their own REST server
uber.twin (Tue, 27 Jun 2017 10:13:24 GMT):
alright, thanks for the endorsement:)
chtn2109 (Tue, 27 Jun 2017 10:28:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NASW9cgsxYvnqpxfs) @sstone1 How can we achive this senario on local machines, any idea?
chtn2109 (Tue, 27 Jun 2017 10:28:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=b2eAMQ7vB68CAaajs) @sstone1 How can we achive this senario on local machines, any idea?
sstone1 (Tue, 27 Jun 2017 10:38:35 GMT):
if you have multiple organisations locally, each one will have their own peer
sstone1 (Tue, 27 Jun 2017 10:38:50 GMT):
you can define a Composer connection profile for each organisation (with the URLs of that organisations peers)
sstone1 (Tue, 27 Jun 2017 10:38:59 GMT):
then you start a REST server for each Composer connection profile
uber.twin (Tue, 27 Jun 2017 10:50:20 GMT):
@sstone1 when each bank - lets say there are 30 of them - claims its own own peer, rest server and a web application, it adds up to an awful lot of resources to manage
uber.twin (Tue, 27 Jun 2017 10:50:20 GMT):
@sstone1 when each bank - lets say there are 30 of them - claims its own peer, rest server and a web application, it adds up to an awful lot of resources to manage
sstone1 (Tue, 27 Jun 2017 10:52:10 GMT):
you haven't even considered HA yet ;)
sstone1 (Tue, 27 Jun 2017 10:52:25 GMT):
times all those things by 3 and add in some persistence stores and load balancers
sstone1 (Tue, 27 Jun 2017 10:53:18 GMT):
why does each bank need it's own peer in that situation? because they don't trust the other banks, and they want to endorse transactions and take part in consensus?
mahoney1 (Tue, 27 Jun 2017 10:54:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kQ8fm5T4hQLQSuwbM) @jaguarg thanks for posting your version info. Could you also provide your python version please (python --version). The problem you describe usually means either that the node package didn't build properly when you did an npm install -g composer-cli.or potentially not enough memory (seen this on Stack Overflow). - how much memory do you have ?
sstone1 (Tue, 27 Jun 2017 10:55:01 GMT):
the REST server is easy for clients to use, but it comes with a price - it must be trusted by the client - it needs the private key(s) of the clients to sign and submit transactions to the Blockchain. that is why I believe in 99% of configurations, each "non trusting participant" will want their own instance of the REST server.
uber.twin (Tue, 27 Jun 2017 10:56:24 GMT):
since a rest server stands for a participant, would it make sense for multiple banks to use the same connection profile?
uber.twin (Tue, 27 Jun 2017 10:57:08 GMT):
right, they'll need a dedicated rest server
chtn2109 (Tue, 27 Jun 2017 10:59:42 GMT):
@sstone1 how can we achive that each peer node connected through a single blockchain locally?
uber.twin (Tue, 27 Jun 2017 11:01:05 GMT):
@sstone1 so then, there would be local rest servers, on the bank's premises, and a shared location used for running the peers in close proximity?
uber.twin (Tue, 27 Jun 2017 11:01:05 GMT):
@sstone1 so then, there would be local dedicated rest server, on the bank's premises, and a shared location used for running the peers in close proximity?
sstone1 (Tue, 27 Jun 2017 11:02:23 GMT):
@chtn2109 that is a Fabric configuration question, you need to ask in #fabric or read the Fabric docs; Composer is not a Blockchain platform, Composer does not have peer nodes - it deploys down to a Blockchain platform such as Fabric and runs on Fabrics peer nodes.
sstone1 (Tue, 27 Jun 2017 11:02:45 GMT):
We include a sample, very basic Fabric configuration for an easy getting started experience
sstone1 (Tue, 27 Jun 2017 11:03:32 GMT):
That sort of sounds right - I'm not sure why the peers and REST server have to be in different places though
sstone1 (Tue, 27 Jun 2017 11:03:39 GMT):
(that's for @uber.twin)
sstone1 (Tue, 27 Jun 2017 11:03:58 GMT):
the bank could run both their peer nodes and their REST servers in the cloud somewhere, and so could all the other banks
uber.twin (Tue, 27 Jun 2017 11:10:56 GMT):
@sstone1 apart of the topology conosiderations, would a network of 30-50 peers be performing acceptaby in terms of performance?
uber.twin (Tue, 27 Jun 2017 11:10:56 GMT):
@sstone1 apart of the topology considerations, would a network of 30-50 peers be performing acceptaby in terms of performance?
uber.twin (Tue, 27 Jun 2017 11:10:56 GMT):
@sstone1 apart of the topology considerations, would a network of 30-50 peers be performing acceptably in terms of performance?
SahilKapoor (Tue, 27 Jun 2017 11:16:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4w6WZwhRhK8gaKRfZ) @davidkel how to enable couch db in fabric dev build?
davidkel (Tue, 27 Jun 2017 11:18:24 GMT):
@SahilKapoor it is already enabled
SahilKapoor (Tue, 27 Jun 2017 11:21:25 GMT):
Cool
SahilKapoor (Tue, 27 Jun 2017 11:21:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FgHWcmKuTTA2hwKL3) @davidkel Thanks a lot man :)
deepakvparmar (Tue, 27 Jun 2017 11:29:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aMDAowQRcYxPvFDEm) @mahoney1 : Thank you, I was facing problem because of two VM were using same port.
mahoney1 (Tue, 27 Jun 2017 11:38:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5Bn4DLYkEzqxYk2AE) @deepakvparmar you're welcome..
jaguarg (Tue, 27 Jun 2017 11:44:55 GMT):
@mahoney1, I got my issue fixed by uninstalling my project's local compser-client and reinstalling it globally
mahoney1 (Tue, 27 Jun 2017 11:45:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3AXzPjC96pfcnDpZW) @jaguarg thanks for the feedback, glad to hear its now fixed.
SahilKapoor (Tue, 27 Jun 2017 11:48:13 GMT):
pythin -v
SahilKapoor (Tue, 27 Jun 2017 13:00:40 GMT):
@davidkel Hi, please help me with the sample project using just composer cli and not the rest services. From where should I start?
mahoney1 (Tue, 27 Jun 2017 13:26:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mH3j5bwgRQgTrnx2x) @SahilKapoor why start with the CLI-based Digital property sample application https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/README.md - this is also explained in https://hyperledger.github.io/composer/applications/node.html
mahoney1 (Tue, 27 Jun 2017 13:26:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mH3j5bwgRQgTrnx2x) @SahilKapoor why not start with the CLI-based Digital property sample application https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/README.md - this is also explained in https://hyperledger.github.io/composer/applications/node.html
ShobhanaSundararaman (Tue, 27 Jun 2017 13:50:55 GMT):
Hi, I've tried developing a sample application in dev environment composer using angular. Is there any sample web application available for vieweing transactions etc in composer..
vinitesh (Tue, 27 Jun 2017 14:17:56 GMT):
Hello, How to enable debug logs for composer node sdk. I am trying export DEBUG=composer:* but debug logs are not printed in the log files
KaiUsher (Tue, 27 Jun 2017 15:31:16 GMT):
Has joined the channel.
uber.twin (Tue, 27 Jun 2017 15:37:03 GMT):
@davidkel @dselman @sstone1 hi, as far as I see, the composer-rest-server does not provide full CRUD operation set for the transaction types; only the POST(Create) operation is available. Why not have a GET(List) operation available also?
kvnlee (Tue, 27 Jun 2017 15:47:45 GMT):
@dselman It works by changing those properties to optional, thanks!
alisonb (Tue, 27 Jun 2017 15:54:44 GMT):
I'm hitting the "Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1" error when attempting to deploy a bna. I've downgraded npm to 4.4.3 as suggested above but it's not helped. The output to: npm uninstall -g composer-cli && npm install -g composer-cli
alisonb (Tue, 27 Jun 2017 15:55:00 GMT):
is enourmous, is there anything in particular I should be looking for, please?
alisonb (Tue, 27 Jun 2017 15:55:00 GMT):
is enormous, is there anything in particular I should be looking for, please?
mahoney1 (Tue, 27 Jun 2017 15:55:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GdtaTQXTMYeqLsuGH) @ShobhanaSundararaman
In https://github.com/hyperledger/composer-sample-applications the vehicle lifecycle demo has a web application, otherwise please refer here. https://hyperledger.github.io/composer/applications/web.html
dselman (Tue, 27 Jun 2017 15:59:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5kohGDH4mcsu4NhnH) @uber.twin GET for transactions it is under the /system route
mahoney1 (Tue, 27 Jun 2017 15:59:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DNyiLh8q7rcevi7G8) @vinitesh https://hyperledger.github.io/composer/problems/diagnostics.html Composer uses the winston Nodejs logging package by default
torresjeff (Tue, 27 Jun 2017 16:02:46 GMT):
@dselman is there anything in upcoming versions of composer that will handle changes to the model after being deployed gracefully?
mahoney1 (Tue, 27 Jun 2017 16:13:55 GMT):
hi everyone, don't forget - our Composer Community call is 9am UTC (10am UK, 2:30pm IST, 5pm CST) this THURSDAY 29TH JUNE - would love to hear about the things you are building with Composer, what you like/don't like ; your experiences with Composer ;we'd love you to join in ! Meeting details are here: https://github.com/hyperledger/composer/wiki/Meeting-29th-June-2017
mahoney1 (Tue, 27 Jun 2017 16:29:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DHpDbeCQE5yRo2sMx) @alisonb how much memory in Gb is available?, wondering if there was enough memory for compile of native modules (eg. during the install / re- install of composer-cli etc).
uber.twin (Tue, 27 Jun 2017 16:33:59 GMT):
@dselman thank you
uber.twin (Tue, 27 Jun 2017 16:39:33 GMT):
@dselman no option to query by transaction type, right?(i.e. the "$class" attribute)
SahilKapoor (Tue, 27 Jun 2017 16:59:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=M2WenyqMXmjhkTnLm) @mahoney1 @alisonb Sometime back @sstone1 told m,e that we need 2gb ram and python 2.7 should also be installed if it isnt. Also once we unistall everything please do execute *git clean -xdf*
SahilKapoor (Tue, 27 Jun 2017 16:59:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=M2WenyqMXmjhkTnLm) @mahoney1 @alisonb Sometime back @sstone1 told me that we need 2gb ram.Please do make sure python 2.7 is installed. Also once we uninstall everything please do execute *git clean -xdf*
jmcnevin (Tue, 27 Jun 2017 18:04:52 GMT):
is there some accepted way of dynamically creating unique identifiers for newly created assets?
dselman (Tue, 27 Jun 2017 18:18:27 GMT):
@jmcnevin do it on the client side and include the id in the incoming transaction. Anything based on a counter will not scale, anything based on UUID or random generation will fail consensus across peers.
gkd720 (Tue, 27 Jun 2017 19:22:55 GMT):
Wow. I made it to the end of "Developer Tutorial for creating a Hyperledger Composer solution". Everything worked as expected. I'll probably try my own "business model" next. But, in the Angular app created from `yo hyperledger-composer`, I see it can't make a new Participant (yet). Looking into "yeoman", I don't suspect the effort is trivial, but are there still plans to provide this? And submit transactions? Thanks.
dselman (Tue, 27 Jun 2017 21:32:29 GMT):
We'd love to have those features - but we are still hoping someone in the community can take on the Yeoman templates / code generation.
dselman (Tue, 27 Jun 2017 21:32:54 GMT):
Congratulations on completing the tutorials!
dselman (Tue, 27 Jun 2017 21:33:05 GMT):
Now go build something great and share it with the community! :-)
smallX (Wed, 28 Jun 2017 02:28:28 GMT):
@sstone1 just a question: Can we apply endorsement policy of hyperledger fabric using hyperledger composer?
tennenjl (Wed, 28 Jun 2017 02:47:03 GMT):
@smallx the last time I checked, Composer just used the default endorsement policy for the channel
smallX (Wed, 28 Jun 2017 02:48:51 GMT):
@tennenjl endorsement policy of hyperledger fabric?
peterkn (Wed, 28 Jun 2017 02:54:02 GMT):
Has joined the channel.
tennenjl (Wed, 28 Jun 2017 02:54:41 GMT):
I'd check with the team, but thought there was a default endorsement policy for a channel and in fabric there was the capability to define an endorsement policy for a chaincode. However using composer I think it will just use the default endorsement policy for the channel
tennenjl (Wed, 28 Jun 2017 02:54:50 GMT):
and yes for Hyperledger fabric
peterkn (Wed, 28 Jun 2017 02:55:05 GMT):
hi guys I just have 1 question with regard to the size of an asset, there has to be a limit (min and max) on the size of an asset, can anyone please point me to the resources
peterkn (Wed, 28 Jun 2017 02:55:05 GMT):
hi guys I just have 1 question with regard to the size of an asset, there has to be a limit (min and max) on the size of an asset, can anyone please point me to the resources?
smallX (Wed, 28 Jun 2017 02:58:54 GMT):
@tennenjl ths
jeffgarratt (Wed, 28 Jun 2017 03:05:29 GMT):
@smallX @tennenjl FYI https://github.com/hyperledger/composer/issues/1251
tennenjl (Wed, 28 Jun 2017 03:06:55 GMT):
@jeffgarratt Thanks!!
jeffgarratt (Wed, 28 Jun 2017 03:07:38 GMT):
@tennenjl your most welcome!! I voice my opinion on importance and will continue to work with the team to make progress
jeffgarratt (Wed, 28 Jun 2017 03:07:38 GMT):
@tennenjl your most welcome!! I voiceed my opinion on importance and will continue to work with the team to make progress
jeffgarratt (Wed, 28 Jun 2017 03:07:38 GMT):
@tennenjl your most welcome!! I voiced my opinion on importance and will continue to work with the team to make progress
jeffgarratt (Wed, 28 Jun 2017 03:07:38 GMT):
@tennenjl your most welcome!! I voiced my opinion on importance and will continue to work with the team to make progress. It will get there, will just take a bit of time I think.
dselman (Wed, 28 Jun 2017 04:09:54 GMT):
It's is part of "The grand master plan" issue - which we are using to track what we consider is required before we announce v1.0 for Composer. https://github.com/hyperledger/composer/issues/1390
VishalBatra (Wed, 28 Jun 2017 05:15:22 GMT):
Has joined the channel.
deepakvparmar (Wed, 28 Jun 2017 05:27:48 GMT):
As currently composer 0.8 is not supporting to apply endorsement policy, what endorsement policy is being used then?
deepakvparmar (Wed, 28 Jun 2017 05:27:48 GMT):
As currently composer 0.8 is not supporting to apply endorsement policy for fabric 1.0, what endorsement policy is being used then?
dselman (Wed, 28 Jun 2017 05:40:25 GMT):
Whatever the default behavior is for Fabric.
dselman (Wed, 28 Jun 2017 05:42:09 GMT):
`NOTE - the default policy requires one signature from a member of the DEFAULT MSP)`
dselman (Wed, 28 Jun 2017 05:42:16 GMT):
From: https://hyperledger-fabric.readthedocs.io/en/latest/endorsement-policies.html
deepakvparmar (Wed, 28 Jun 2017 05:42:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tXwvvZdJu8HWoqDEq) @dselman : Thank You Dan.
deepakvparmar (Wed, 28 Jun 2017 05:45:06 GMT):
@dselman : Kindly explain, runtime container.
- How and where business network is stored in runtime?
- is there different instance of common-runtime-platform for each business network?
- runtime container will be common to all common-runtime-platform or different for each common-runtime-platform?
dselman (Wed, 28 Jun 2017 05:46:08 GMT):
I assume you are interested in the HLF v1 implementation?
deepakvparmar (Wed, 28 Jun 2017 05:48:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=meJG8m7K4nedvaXof) @dselman : irrespective of blockchain platform, I would like to understand how composer is working at runtime level, how chaincode, runtime-container, core runtime and runtime-platform are working together?
dselman (Wed, 28 Jun 2017 05:50:36 GMT):
That's an implementation question best suited to the #composer-dev channel. It is probably best to come to a community call -- we can schedule time to do an overview of the runtime architecture based on @sstone1 slides
dselman (Wed, 28 Jun 2017 05:51:15 GMT):
There's a call tomorrow if you'd like to get that on the agenda. Check with @mahoney1 if we have a slot.
deepakvparmar (Wed, 28 Jun 2017 05:51:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6j968BHinxfDEHCuK) @dselman : Sure, Thank You Dan.
dselman (Wed, 28 Jun 2017 05:52:14 GMT):
:thumbsup:
smallX (Wed, 28 Jun 2017 05:53:17 GMT):
@ jeffgarratt Thanks!!
smallX (Wed, 28 Jun 2017 05:53:54 GMT):
@jeffgarratt Thanks!!
khit (Wed, 28 Jun 2017 08:17:21 GMT):
Hello, is there a plan to place connectionProfile and keyValStore on cloudant (or other non-filesystem store) like SDK for composer? because we need to use this if we'd like to run composer client on bluemix service.
rezamt (Wed, 28 Jun 2017 08:31:31 GMT):
Has joined the channel.
khit (Wed, 28 Jun 2017 08:34:53 GMT):
you can use some type of keyvalstore on SDK. and CouchDBKeyValueStore is the one. https://github.com/hyperledger/fabric-sdk-node/tree/master/fabric-client/lib/impl
larsf (Wed, 28 Jun 2017 08:50:36 GMT):
@dselman quick question: If I run teardownFabric.sh as part of a shutdown, will the next startFabric.sh require that the server startServer.sh is running on have internet access? Enviroment is Composer 0.8 and Fabric 1.0 on the same Ubuntu V16.04.
alisonb (Wed, 28 Jun 2017 09:19:53 GMT):
@SahilKapoor thanks, I've checked and I've 2G of RAM, and I'm running python 2.7.12. Is there anything else you did to get it working, please?
alisonb (Wed, 28 Jun 2017 09:36:50 GMT):
Ah, for anyone else still having trouble with this, downgrading from node 6.11 to 6.9.5 and reinstalling composer-cli fixed this for me
vitaly.ilinykh (Wed, 28 Jun 2017 10:20:33 GMT):
Has joined the channel.
mbwhite (Wed, 28 Jun 2017 11:11:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gwQYtfE4rZxuxgAxz) @larsf it shouldn't no... that doesn't delete the downloaded Docker images so it should be able to start up again. However do test - don't if docker will want to be online to check versions etc.
ShobhanaSundararaman (Wed, 28 Jun 2017 11:12:30 GMT):
Hi, I created a sample model and generated the .bna file. I deployed the bna file into my fabric using the command "composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString". Then created REST api using the command "composer-rest-server -p hlfv1 -n my-network -i admin -s adminpw -N never". I was able to view the assets and participants in the API Explorer. Then I made changes to my mode file (.cto) and re-generated the .bna file. It was successful as I was able to import the new file into the playground and view my changes. But when I deploy the new file into the fabric and give the REST API (composer-rest-server -p hlfv1 -n my-network -i admin -s adminpw -N never), the changes are not getting refelected in the REST API explorer. Is there something that I'm missing in deploying to the fabric network and generating new API?
mbwhite (Wed, 28 Jun 2017 11:14:01 GMT):
@ShobhanaSundararaman was the fabric still running when you deployed the new bna file? If so then rather than do a `composer deploy` do a `composer update`
mbwhite (Wed, 28 Jun 2017 11:14:33 GMT):
@alisonb - is this on Ubuntu (and what version?)
ShobhanaSundararaman (Wed, 28 Jun 2017 11:16:20 GMT):
@mbwhite Thanks. It worked
mbwhite (Wed, 28 Jun 2017 11:17:10 GMT):
@ShobhanaSundararaman good :-)
ShobhanaSundararaman (Wed, 28 Jun 2017 12:27:33 GMT):
Hi, The current composer development environment creates a Single Peer and SIngle Orderer configuration. Can someone tell me where to change the configurations to generate multiple peers for the fabric network to be used with composer? Also is it possible to create multiple channels and how?
davidkel (Wed, 28 Jun 2017 12:32:57 GMT):
@ShobhanaSundararaman The fabric is a simple development environment provided. If you want to create your own fabric then you need to go to http://hyperledger-fabric.readthedocs.io/en/latest/ to find out how to do this. Technically I believe it is possible to modify a channel to do things like add new organisations as well. Again to create new channels you need to refer to the hyperledger fabric documentation.
davidkel (Wed, 28 Jun 2017 12:32:57 GMT):
@ShobhanaSundararaman The fabric in composer-tools is a simple development environment provided. If you want to create your own fabric then you need to go to http://hyperledger-fabric.readthedocs.io/en/latest/ to find out how to do this. Technically I believe it is possible to modify a channel to do things like add new organisations as well. Again to create new channels you need to refer to the hyperledger fabric documentation.
davidkel (Wed, 28 Jun 2017 12:32:57 GMT):
@ShobhanaSundararaman The fabric in composer-tools is a simple development environment. If you want to create your own fabric then you need to go to http://hyperledger-fabric.readthedocs.io/en/latest/ to find out how to do this. Technically I believe it is possible to modify a channel to do things like add new organisations as well. Again to create new channels you need to refer to the hyperledger fabric documentation.
gen_el (Wed, 28 Jun 2017 12:34:14 GMT):
Error: error trying install chaincode. Error: Endpoint read failed @here
ShobhanaSundararaman (Wed, 28 Jun 2017 12:35:02 GMT):
@davidkel I've tried setting up a separate fabric dev environment before using the link mentioned by you and was successful. But I'm not sure how to link it with the composer setup. How to link the fabric set up by me with the composer setup I'm doing?
gen_el (Wed, 28 Jun 2017 12:35:21 GMT):
trying to deploy this my-network.bna to the hf network setup following the e2e test tutorial
davidkel (Wed, 28 Jun 2017 12:36:29 GMT):
@ShobhanaSundararaman ahh, ok. You need to define your connection profile. This is described here
https://hyperledger.github.io/composer/reference/connectionprofile.html
davidkel (Wed, 28 Jun 2017 12:37:19 GMT):
@gen_el --^ probably is relevant to you as well
gen_el (Wed, 28 Jun 2017 12:37:38 GMT):
@davidkel i already created a connection.json file
gen_el (Wed, 28 Jun 2017 12:38:28 GMT):
its in $HOME/.composer-connection-profiles/myprofile
davidkel (Wed, 28 Jun 2017 12:39:03 GMT):
@gen_el you can get more info if you `export GRPC_TRACE=all` before running composer network deploy about networking issues
gen_el (Wed, 28 Jun 2017 12:39:15 GMT):
where i use the following command to attempt to deploy: "composer network deploy -a my-network.bna -p myprofile -i PeerAdmin -s
gen_el (Wed, 28 Jun 2017 12:39:19 GMT):
@davidkel
gen_el (Wed, 28 Jun 2017 12:43:22 GMT):
it dumped this: @davidkel
gen_el (Wed, 28 Jun 2017 12:43:44 GMT):
Message Attachments
davidkel (Wed, 28 Jun 2017 13:06:18 GMT):
@gen_el so it really is some sort of network problem trying to communicate with the fabric. `docker ps` will show the docker containers running as well as the ports they are listening on. It might be worth specifying your the explicit IP address rather than localhost in you connection profile.
gen_el (Wed, 28 Jun 2017 13:19:24 GMT):
Can i use a connection profile without "ca"? @davidkel
davidkel (Wed, 28 Jun 2017 13:19:59 GMT):
@gen_el The ca will only be used if it needs to enroll a user
gen_el (Wed, 28 Jun 2017 13:20:06 GMT):
ok
gen_el (Wed, 28 Jun 2017 13:22:58 GMT):
what about eventurl? @davidkel
gen_el (Wed, 28 Jun 2017 13:23:20 GMT):
I don't think i have that setup
davidkel (Wed, 28 Jun 2017 13:23:34 GMT):
eventURL is mandatory as it part of the peer communications
gen_el (Wed, 28 Jun 2017 13:23:38 GMT):
it seems that is the problem
gen_el (Wed, 28 Jun 2017 13:24:25 GMT):
These are processes i have running
gen_el (Wed, 28 Jun 2017 13:24:41 GMT):
Message Attachments
gen_el (Wed, 28 Jun 2017 13:25:10 GMT):
and this is my connection profile
gen_el (Wed, 28 Jun 2017 13:25:23 GMT):
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://0.0.0.0:7050"
}
],
"ca": {
"url": "http://0.0.0.0:7054",
"name": "ca-org1"
},
"peers": [
{
"requestURL": "grpc://0.0.0.0:7051",
"eventURL": "grpc://0.0.0.0:7053"
}
],
"keyValStore": "/Users/Elendu/.hfc-key-store",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": "300"
}
gen_el (Wed, 28 Jun 2017 13:25:28 GMT):
@davidkel
gen_el (Wed, 28 Jun 2017 13:26:24 GMT):
i don't need ca for my test
gen_el (Wed, 28 Jun 2017 13:27:30 GMT):
so which process will handle events? Can any peer node play that role?
davidkel (Wed, 28 Jun 2017 13:29:05 GMT):
@gen_el I wouldn't use 0.0.0.0 as the ip address. I would use the explicit IP address of your machine. Each peer node has 2 end points that we need to connect to. A Request endpoint and an Event End point. We do this for all peers listed in the connection profile
gen_el (Wed, 28 Jun 2017 13:29:33 GMT):
i will change that
jdockter (Wed, 28 Jun 2017 13:36:05 GMT):
@dselman @sstone1 @caroline-church .. looking at EPIC 55 (https://github.com/hyperledger/composer/issues/55) for the Historian ...a request came up on our project to show the delta of what changed on an asset...so if participant A update fields B and C on Monday and then participant B updated fields B and C on Wed.to new values, either participants could see the history of change to fields B and C...will that be possible via the APIs of the Historian?
whathewatt (Wed, 28 Jun 2017 13:39:27 GMT):
Has joined the channel.
JennFoley (Wed, 28 Jun 2017 13:45:58 GMT):
Is it possible to install specific versions composer cli tools and playground locally? For example, if I create a script now for Composer .8, can I specity that someone in the commands?
gen_el (Wed, 28 Jun 2017 13:50:04 GMT):
I checked, those ports are open. @davidkel
gen_el (Wed, 28 Jun 2017 13:50:06 GMT):
Port Scan has started…
Port Scanning host: 127.0.0.1
Open TCP Port: 7050
Open TCP Port: 7051
Open TCP Port: 7053
Port Scan has completed…
davidkel (Wed, 28 Jun 2017 13:56:20 GMT):
@JennFoley Yes you can, for example to install composer-cli 0.7.5 you can use the command `npm install -g composer@0.7.5`
wael (Wed, 28 Jun 2017 13:57:32 GMT):
Message Attachments
wael (Wed, 28 Jun 2017 13:57:52 GMT):
I am running : composer network deploy -a clinical-network.bna -p hlfv1 -i admin -s adminpw
wael (Wed, 28 Jun 2017 13:57:52 GMT):
I am running : composer network deploy -a network.bna -p hlfv1 -i admin -s adminpw
wael (Wed, 28 Jun 2017 13:58:12 GMT):
and got that error , any suggestions ?
mbwhite (Wed, 28 Jun 2017 14:07:49 GMT):
The new Fabric beta requires the deploy to have `-i PeerAdmin -s anything`
mbwhite (Wed, 28 Jun 2017 14:07:53 GMT):
try that
wael (Wed, 28 Jun 2017 14:09:33 GMT):
also error : Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed
wael (Wed, 28 Jun 2017 14:10:23 GMT):
@mbwhite
davidkel (Wed, 28 Jun 2017 14:12:15 GMT):
@wael it cannot talk to your fabric. if you think you have the connection profile correctly set up correctly try changing the addresses in you connection profile from `localhost` to your machine's explicit ip address
davidkel (Wed, 28 Jun 2017 14:12:15 GMT):
@wael it cannot talk to your fabric. if you think you have the connection profile set up correctly try changing the addresses in you connection profile from `localhost` to your machine's explicit ip address
wael (Wed, 28 Jun 2017 14:17:18 GMT):
@davidkel where should I check the connection profile ?
davidkel (Wed, 28 Jun 2017 14:24:26 GMT):
@wael details about connection profiles are here
https://hyperledger.github.io/composer/reference/connectionprofile.html
wael (Wed, 28 Jun 2017 14:25:38 GMT):
@davidkel so I have done everything right , and changed local host to my machine's explicit ip , and also the same error got
gen_el (Wed, 28 Jun 2017 14:28:28 GMT):
Issue still persist @davidkel
gen_el (Wed, 28 Jun 2017 14:29:28 GMT):
I have changed TLS_ENABLED=false for CA, PEER and ORDERER
gen_el (Wed, 28 Jun 2017 14:29:42 GMT):
I used my actual system IP
gen_el (Wed, 28 Jun 2017 14:30:23 GMT):
I got a different error, more like @wael
gen_el (Wed, 28 Jun 2017 14:30:32 GMT):
Bottom line issues persist
davidkel (Wed, 28 Jun 2017 14:30:46 GMT):
@wael `export GRPC_TRACE=all` can provide some basic debug info about connection failures
gen_el (Wed, 28 Jun 2017 14:31:17 GMT):
i need to know how to create a connection profile including the keyValStore
davidkel (Wed, 28 Jun 2017 14:31:33 GMT):
@gen_el https://hyperledger.github.io/composer/reference/connectionprofile.html
gen_el (Wed, 28 Jun 2017 14:34:04 GMT):
I have gone through it
davidkel (Wed, 28 Jun 2017 14:38:59 GMT):
@gen_el We do have a standalone development fabric you can use as described in
https://hyperledger.github.io/composer/installing/development-tools.html which might be a better place to get started. I don't know why you cannot connect to your fabric if you believe you have defined the connection profile correctly
gen_el (Wed, 28 Jun 2017 14:39:35 GMT):
At what point is the .hfc-key-store generated @davidkel
davidkel (Wed, 28 Jun 2017 14:42:30 GMT):
@gen_el this is the location where your certificates required to communicate with fabric are stored. As you will need to import your peer admin certs into the directory specified by keyValStore. However your connection failures meant you aren't even getting that far. To import your Peer Admin certs see the command
https://hyperledger.github.io/composer/reference/composer.identity.import.html
gen_el (Wed, 28 Jun 2017 14:47:32 GMT):
Ok. Thanks @davidkel I will review the development network used in the composer tutorial and compare.
gen_el (Wed, 28 Jun 2017 16:42:17 GMT):
@davidkel Solved! As i suspected, the problem was the peer admin identity. Once i imported them into the keyvalstore, composer was able to deploy the .bna file.
dselman (Wed, 28 Jun 2017 16:50:21 GMT):
:thumbsup:
dselman (Wed, 28 Jun 2017 16:51:27 GMT):
We'd love to see community contributed install/setup guides. If you've had success with a custom install please don't hesitate to share (.e.g using a GitHub repo or Wiki)
gkd720 (Wed, 28 Jun 2017 18:07:26 GMT):
If I didn't want to create an app using "yo", but just try to manually write some javascript code, is this sane? What might I model it after? I looked at files in/below ~/composer/my-network/my-app, but I couldn't find any "*.js" files that looked related. How is the angular app code invoked, and where is the "main" program? Or does it have to be a node.js program? Any pointers on how to write an app manually? Is this even sane? Thanks.[ ](https://chat.hyperledger.org/channel/composer?msg=JbKbQTGtgnZ29izLF) @dselman
sstone1 (Wed, 28 Jun 2017 18:25:36 GMT):
@gkd720 you can write any application you want, using either the Composer client APIs from a Node.js program or the REST APIs provided by the Composer REST server
sstone1 (Wed, 28 Jun 2017 18:25:59 GMT):
The generated application that Yo builds is simply an Angular app that interacts with the REST APIs provided by the Composer REST server
jdockter (Wed, 28 Jun 2017 19:05:18 GMT):
is it possible to unit test ACL rules with the embedded runtime, specifically to make sure that certain participants can or can not invoke transactions? if so, does someone have an example?
sstone1 (Wed, 28 Jun 2017 19:07:09 GMT):
:+1:
sstone1 (Wed, 28 Jun 2017 19:07:46 GMT):
the `basic-sample-network` has extensive tests, including covering ACLs
sstone1 (Wed, 28 Jun 2017 19:07:47 GMT):
https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/test/sample.js#L240
sstone1 (Wed, 28 Jun 2017 19:07:58 GMT):
or
sstone1 (Wed, 28 Jun 2017 19:07:59 GMT):
https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/test/sample.js#L536
sstone1 (Wed, 28 Jun 2017 19:08:22 GMT):
there's also a Cucumber version of those tests
sstone1 (Wed, 28 Jun 2017 19:08:23 GMT):
https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/features/sample.feature#L152
jdockter (Wed, 28 Jun 2017 19:10:33 GMT):
@sstone1 thanks! ....some day I will get around to Cucumber :)
JohnWhitton (Wed, 28 Jun 2017 19:47:13 GMT):
Hi all, anyone seen an error message like this before when trying to deploy a channel
```
2017-06-28T19:40:04.359234603Z Successfully enrolled user 'admin'
2017-06-28T19:40:04.360708152Z Successfully read file
2017-06-28T19:40:04.378038228Z error: [Orderer.js]: sendBroadcast - reject with BAD_REQUEST
2017-06-28T19:40:04.380966796Z Error: BAD_REQUEST
```
JohnWhitton (Wed, 28 Jun 2017 19:58:22 GMT):
Specifically when trying to create channel I get this error
JohnWhitton (Wed, 28 Jun 2017 19:58:30 GMT):
```
2017-06-28T19:54:41.769712922Z node create-channel.js
2017-06-28T19:54:42.09110568Z info: Returning a new winston logger with default configurations
2017-06-28T19:54:42.47871106Z using non-tls connection
2017-06-28T19:54:42.486825725Z info: [Client.js]: Failed to load user "admin" from local key value store
2017-06-28T19:54:42.775046849Z info: [FabricCAClientImpl.js]: Successfully constructed Fabric CA client from options - {"protocol":"http","hostname":"104.154.110.100","port":7054}
2017-06-28T19:54:42.775365642Z info: [FabricCAClientImpl.js]: Successfully constructed Fabric CA service client: endpoint - {"protocol":"http","hostname":"104.154.110.100","port":7054}
2017-06-28T19:54:42.845949954Z info: [crypto_ecdsa_aes]: This class requires a CryptoKeyStore to save keys, using the store: {"opts":{"path":"/root/.hfc-key-store"}}
2017-06-28T19:54:42.943476271Z Successfully enrolled user 'admin'
2017-06-28T19:54:42.94676443Z info: [crypto_ecdsa_aes]: This class requires a CryptoKeyStore to save keys, using the store: {"opts":{"path":"/root/.hfc-key-store"}}
2017-06-28T19:54:42.950785381Z Successfully enrolled user 'admin'
2017-06-28T19:54:42.951955365Z Successfully read file
2017-06-28T19:54:42.970690008Z error: [Orderer.js]: sendBroadcast - reject with BAD_REQUEST
2017-06-28T19:54:42.974316839Z Error: BAD_REQUEST
2017-06-28T19:54:42.974335426Z at ClientDuplexStream.
davidkel (Wed, 28 Jun 2017 21:20:45 GMT):
@JohnWhitton Can you check that the level of fabric you are trying to interact with is still alpha1 ? I am assuming that this is a local fabric you are running.
JohnWhitton (Wed, 28 Jun 2017 21:21:12 GMT):
Hey @davidkel we are deploying this on GCP
davidkel (Wed, 28 Jun 2017 21:22:09 GMT):
@JohnWhitton Sorry I don't know what GCP is
JohnWhitton (Wed, 28 Jun 2017 21:22:57 GMT):
@davidkel Google Cloud Platform
Here is what we use to download fabric
```
# Pull and tag the latest Hyperledger Fabric base image.
docker pull hyperledger/fabric-peer:x86_64-1.0.0-alpha
docker pull hyperledger/fabric-ca:x86_64-1.0.0-alpha
docker pull hyperledger/fabric-ccenv:x86_64-1.0.0-alpha
docker pull hyperledger/fabric-orderer:x86_64-1.0.0-alpha
docker pull hyperledger/fabric-couchdb:x86_64-1.0.0-alpha
```
JohnWhitton (Wed, 28 Jun 2017 21:25:26 GMT):
Basically where I'm at is I have this downloaded and running locally and I've deployed all the containers to GCP
But when I go to create a channel I'm running into an issue
So my thought is that it's a configuration error on my end (e.g. I made a mistake in my connection.json or config.json)
davidkel (Wed, 28 Jun 2017 21:26:32 GMT):
@JohnWhitton I would check the logs of the orderer to see if there is any info indicating what went wrog
davidkel (Wed, 28 Jun 2017 21:26:32 GMT):
@JohnWhitton I would check the logs of the orderer to see if there is any info indicating what went wrong
JohnWhitton (Wed, 28 Jun 2017 21:27:18 GMT):
```
2017-06-28T21:13:56.630429158Z 2017-06-28 21:13:56.630 UTC [orderer/common/broadcast] Handle -> WARN 247 Rejecting CONFIG_UPDATE because: Error validating DeltaSet: Attempt to set key [Policy] /Channel/Application/Org2MSP/Readers to version 0, but key is at version 0
2017-06-28T21:13:58.151546808Z 2017-06-28 21:13:58.150 UTC [msp] Validate -> INFO 248 MSP Org1MSP validating identity
2017-06-28T21:13:58.627017568Z 2017-06-28 21:13:58.626 UTC [orderer/common/deliver] Handle -> WARN 249 Error reading from stream: EOF
2017-06-28T21:15:35.141907748Z 2017-06-28 21:15:35.141 UTC [orderer/common/broadcast] Handle -> WARN 24a Rejecting CONFIG_UPDATE because: Error validating DeltaSet: Attempt to set key [Policy] /Channel/Application/Org2MSP/Readers to version 0, but key is at version 0
2017-06-28T21:15:36.225093755Z 2017-06-28 21:15:36.224 UTC [msp] Validate -> INFO 24b MSP Org1MSP validating identity
2017-06-28T21:15:36.232545895Z 2017-06-28 21:15:36.232 UTC [orderer/common/deliver] Handle -> WARN 24c Error reading from stream: EOF
2017-06-28T21:20:54.827651758Z 2017-06-28 21:20:54.827 UTC [orderer/common/broadcast] Handle -> WARN 24d Rejecting CONFIG_UPDATE because: Error validating DeltaSet: Attempt to set key [Values] /Channel/Application/Org1MSP/AnchorPeers to version 0, but key is at version 0
2017-06-28T21:20:55.916093644Z 2017-06-28 21:20:55.915 UTC [msp] Validate -> INFO 24e MSP Org1MSP validating identity
2017-06-28T21:20:55.923971148Z 2017-06-28 21:20:55.923 UTC [orderer/common/deliver] Handle -> WARN 24f Error reading from stream: EOF
2017-06-28T21:26:15.005253306Z 2017-06-28 21:26:15.005 UTC [orderer/common/broadcast] Handle -> WARN 250 Rejecting CONFIG_UPDATE because: Error validating DeltaSet: Attempt to set key [Values] /Channel/Application/Org2MSP/AnchorPeers to version 0, but key is at version 0
2017-06-28T21:26:16.179289651Z 2017-06-28 21:26:16.179 UTC [msp] Validate -> INFO 251 MSP Org1MSP validating identity
2017-06-28T21:26:16.185616182Z 2017-06-28 21:26:16.185 UTC [orderer/common/deliver] Handle -> WARN 252 Error reading from stream: EOF
```
JohnWhitton (Wed, 28 Jun 2017 21:27:54 GMT):
Let me try it again and make sure the logs I'm sharing are relevant to the above error message
davidkel (Wed, 28 Jun 2017 21:28:54 GMT):
@JohnWhitton The orderer needs a genesis block to
JohnWhitton (Wed, 28 Jun 2017 21:29:34 GMT):
Yeah, it's probably something like that where I haven't copied over that genesis block (or something else) that is required
JohnWhitton (Wed, 28 Jun 2017 21:30:43 GMT):
Here are the latest logs from orderer
```
2017-06-28T21:29:07.856251222Z 2017-06-28 21:29:07.856 UTC [orderer/common/broadcast] Handle -> WARN 253 Rejecting CONFIG_UPDATE because: Error validating DeltaSet: Attempt to set key [Values] /Channel/Orderer/ChannelRestrictions to version 0, but key is at version 0
2017-06-28T21:29:08.881317316Z 2017-06-28 21:29:08.881 UTC [msp] Validate -> INFO 254 MSP Org1MSP validating identity
2017-06-28T21:29:08.888976914Z 2017-06-28 21:29:08.888 UTC [orderer/common/deliver] Handle -> WARN 255 Error reading from stream: EOF
2017-06-28T21:29:23.279387425Z 2017-06-28 21:29:23.279 UTC [orderer/common/broadcast] Handle -> WARN 256 Rejecting CONFIG_UPDATE because: Error validating DeltaSet: Attempt to set key [Values] /Channel/Application/Org2MSP/AnchorPeers to version 0, but key is at version 0
2017-06-28T21:29:24.434531646Z 2017-06-28 21:29:24.434 UTC [msp] Validate -> INFO 257 MSP Org1MSP validating identity
2017-06-28T21:29:24.443328942Z 2017-06-28 21:29:24.443 UTC [orderer/common/deliver] Handle -> WARN 258 Error reading from stream: EOF
2017-06-28T21:29:52.105784454Z 2017-06-28 21:29:52.105 UTC [orderer/common/broadcast] Handle -> WARN 259 Rejecting CONFIG_UPDATE because: Error validating DeltaSet: Attempt to set key [Policy] /Channel/Application/Org1MSP/Admins to version 0, but key is at version 0
2017-06-28T21:29:53.146253202Z 2017-06-28 21:29:53.146 UTC [msp] Validate -> INFO 25a MSP Org1MSP validating identity
2017-06-28T21:29:53.153987727Z 2017-06-28 21:29:53.153 UTC [orderer/common/deliver] Handle -> WARN 25b Error reading from stream: EOF
```
davidkel (Wed, 28 Jun 2017 21:32:19 GMT):
@JohnWhitton yeah likely there genesis block isn't accurate ot the transaction to create the channel isn't quite right. Unfortunately you probably need to ask on the other fabric channels for specifics of orderer problems. But fabric has moved on quite a bit since the alpha so they may suggest trying newer versions
davidkel (Wed, 28 Jun 2017 21:32:19 GMT):
@JohnWhitton yeah likely the genesis block isn't accurate ot the transaction to create the channel isn't quite right. Unfortunately you probably need to ask on the other fabric channels for specifics of orderer problems. But fabric has moved on quite a bit since the alpha so they may suggest trying newer versions
JohnWhitton (Wed, 28 Jun 2017 21:33:24 GMT):
I suppose a question I have is (a while ago) when we built out our deploy we grabbed a create_channel.js and a join_channel.js
JohnWhitton (Wed, 28 Jun 2017 21:34:08 GMT):
I'm trying to remember where we got them from and figure out if there are newer versions available
JohnWhitton (Wed, 28 Jun 2017 21:34:34 GMT):
create_channel.js
```
/*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
'use strict';
let hfc = require('fabric-client');
let path = require('path');
let fs = require('fs');
let testUtil = require('./setup-utils.js');
let utils = require('fabric-client/lib/utils.js');
let Orderer = require('fabric-client/lib/Orderer.js');
const homedir = require('homedir');
let logger = utils.getLogger('create-channel');
let useTls = (process.env.SYSTEST) ? process.env.SYSTEST.match('tls$') : false;
if (useTls) {
console.log('using tls connection to create the channel');
hfc.addConfigFile(path.join(__dirname, './config.tls.json'));
} else {
console.log('using non-tls connection');
hfc.addConfigFile(path.join(__dirname, './config.json'));
}
let ORGS = hfc.getConfigSetting('test-network');
//TODO: Need to make this configurable
let keystore = homedir() + '/.hfc-key-store';
let channel = 'mychannel';
let client = new hfc();
let chain = client.newChain(channel);
if (useTls) {
let caRootsPath = ORGS.orderer.tls_cacerts;
let data = fs.readFileSync(path.join(__dirname, caRootsPath));
//let data = fs.readFileSync(caRootsPath);
let caroots = Buffer.from(data).toString();
chain.addOrderer(
new Orderer(
ORGS.orderer.url,
{
'pem': caroots,
'ssl-target-name-override': ORGS.orderer['server-hostname']
}
)
);
}
else {
chain.addOrderer(new Orderer(ORGS.orderer));
}
//let org = ORGS.org1.name;
hfc.newDefaultKeyValueStore({
path: keystore
})
.then((store) => {
client.setStateStore(store);
// get the admin id for org1 and enroll them if not already enrolled
return testUtil.getSubmitter(client, 'org1');
})
.then((admin) => {
console.log('Successfully enrolled user \'admin\'');
// readin the envelope to send to the orderer
return testUtil.readFile('./mychannel.tx');
}, (err) => {
console.log('Failed to enroll user \'admin\'. ' + err);
throw new Error('failed to enroll user');
})
.then((data) => {
console.log('Successfully read file');
let request = {
envelope: data
};
// send to orderer
return chain.createChannel(request);
}, (err) => {
console.log('Failed to read file for channel template: ' + err);
throw new Error('failed to read channel creation transaction');
})
.then((response) => {
logger.debug(' response ::%j', response);
if (response && response.status === 'SUCCESS') {
console.log('Successfully created the channel.');
return testUtil.sleep(5000);
} else {
console.log('Failed to create the channel. ');
throw new Error('failed to create channel');
}
}, (err) => {
console.log('Failed to initialize the channel: ' + err.stack ? err.stack : err);
throw new Error('failed to initialize the channel');
})
.then((nothing) => {
console.log('Successfully waited to make sure new channel was created.');
}, (err) => {
});
```
JohnWhitton (Wed, 28 Jun 2017 21:38:11 GMT):
Thanks @davidkel
davidkel (Wed, 28 Jun 2017 21:44:32 GMT):
@JohnWhitton looks like it was taken from either our systest suite. No New version as we moved away from using the node sdk for creating and joining channels. Our latest code base has moved on further now to beta1 which now handles new fabric security implementations
davidkel (Wed, 28 Jun 2017 21:44:32 GMT):
@JohnWhitton looks like it was taken from our systest suite. No New version as we moved away from using the node sdk for creating and joining channels. Our latest code base has moved on further now to beta1 which now handles new fabric security implementations
JohnWhitton (Wed, 28 Jun 2017 21:47:35 GMT):
@davidkel So I'm currently looking at https://hyperledger.github.io/composer/installing/using-playground-locally.html
and downloading using curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash
I've also worked through here and grabbed this
```
git clone https://github.com/hyperledger/fabric-samples.git
cd fabric-samples
```
JohnWhitton (Wed, 28 Jun 2017 21:48:00 GMT):
Anything else I should be looking at to make sure I'm building off the latest?
davidkel (Wed, 28 Jun 2017 21:58:52 GMT):
@JohnWhitton Our fabric runtime is a simple runtime meant for development purposes only. I would suggest reading the hyperledger fabric document website to get more information about setting up a bespoke fabric environment.
pvrbharg (Wed, 28 Jun 2017 23:29:15 GMT):
Has joined the channel.
pvrbharg (Wed, 28 Jun 2017 23:30:09 GMT):
Hi we are try to run the Composer use case in a developer sandbox per documented process in a customer environment and we are getting the following error:
pvrbharg (Wed, 28 Jun 2017 23:31:10 GMT):
Message Attachments
pvrbharg (Wed, 28 Jun 2017 23:32:00 GMT):
What exact permissions do we need for guest account user to succeed?
pvrbharg (Wed, 28 Jun 2017 23:32:16 GMT):
we tried several things and can not seem to get past this issue
NishikantNipane (Thu, 29 Jun 2017 01:26:01 GMT):
Has joined the channel.
m.egal (Thu, 29 Jun 2017 01:35:09 GMT):
Has joined the channel.
qiushaoxi (Thu, 29 Jun 2017 04:03:00 GMT):
Message Attachments
qiushaoxi (Thu, 29 Jun 2017 04:03:33 GMT):
try many times 。still this error
qiushaoxi (Thu, 29 Jun 2017 04:07:26 GMT):
Message Attachments
qiushaoxi (Thu, 29 Jun 2017 05:12:41 GMT):
fixed !see: https://stackoverflow.com/a/41555065/8072775
pospi (Thu, 29 Jun 2017 06:36:05 GMT):
can anyone point me at an example of the `composer identity issue` command? I'm trying to setup a participant for an identity I've imported using `composer identity import`
pospi (Thu, 29 Jun 2017 06:38:27 GMT):
I think I probably also need to understand `composer participant add` in order to do this..?
pospi (Thu, 29 Jun 2017 06:39:38 GMT):
nevermind! found them as subpages of https://hyperledger.github.io/composer/managing/managingindex.html
mahoney1 (Thu, 29 Jun 2017 06:44:28 GMT):
hi everyone, don't forget - our Composer Community call today is 9am UTC (10am UK, 2:30pm IST, 5pm CST) - would love to hear about the things you are building with Composer, what you like/don't like ; your experiences with Composer ;we'd love you to join in ! Meeting details and agenda items are here: https://github.com/hyperledger/composer/wiki/Meeting-29th-June-2017
mahoney1 (Thu, 29 Jun 2017 06:51:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QDfLJoNMwkNZ9ETPt) @pospi here you go for future ref -> https://hyperledger.github.io/composer/reference/composer.identity.issue.html
garrich (Thu, 29 Jun 2017 06:53:48 GMT):
Hi.
Has anybody tried to connect the playground (local) to bluemix HSBN?
garrich (Thu, 29 Jun 2017 06:56:19 GMT):
Message Attachments
pospi (Thu, 29 Jun 2017 07:02:32 GMT):
@mahoney1 hm, I can't get it working. I'm trying to create an admin participant so that my app can get an admin-level connection. I've successfully imported the `Admin@org1.example.com` identity using `composer identity import` with `-u PeerAdmin`. Now that I have that, I want to give this identity a participant. I've done `composer participant add` successfully, and now have a participant `net.test.AdminMember#PeerAdmin` to match.
When I try the final step, `composer identity issue -p test_hl1 -n net-test -i PeerAdmin -s Xurw3yU9zI0l -u PeerAdmin -a net.test.AdminMember#PeerAdmin --issuer`, the CA is rejecting it:
```
ca.dev.everledger.io | {"id":"PeerAdmin","type":"client","affiliation":"org1","max_enrollments":0,"attrs":[{"name":"hf.Registrar.Roles","value":"client"}],"caName":"ca.dev.everledger.io"}
ca.dev.everledger.io | 2017/06/29 07:02:02 [DEBUG] Directing traffic to CA ca.dev.everledger.io
ca.dev.everledger.io | 2017/06/29 07:02:02 [DEBUG] Checking for revocation/expiration of certificate owned by 'Admin@org1.example.com'
ca.dev.everledger.io | 2017/06/29 07:02:02 [DEBUG] DB: Get certificate by serial (d64e88683fa3fe169accb8428595edf6) and aki (27bc2ddffdebf9c4618a3c2cdffba1c72691514a9613ca02fe1ce8172b9651e1)
ca.dev.everledger.io | 2017/06/29 07:02:02 [ERROR] No certificates found for provided serial and aki
```
any ideas?
pospi (Thu, 29 Jun 2017 07:03:12 GMT):
is there some restriction that you can't assign the identity used to make the request to a participant, perhaps?
JohnWhitton (Thu, 29 Jun 2017 07:05:56 GMT):
Been a long day, I'll leave this message here and grab some sleep and see if some pearls of wisdom are available on the morrow.
If you see my comments above, I've spent the last couple of days trying to deploy a fabric rest server on Google Cloud Platform. This involves creating a CA, Orderer, a couple of peers and then deploying a business network on top
Here are the latest logs, any advice as to what I'm missing in my config is appreciated (it runs fine locally)
JohnWhitton (Thu, 29 Jun 2017 07:06:02 GMT):
Message Attachments
JohnWhitton (Thu, 29 Jun 2017 07:07:26 GMT):
Also if it's a versioning issue let me know (currently using composer 0.7.0)
pospi (Thu, 29 Jun 2017 07:07:56 GMT):
@JohnWhitton it probably is, Composer 0.8 had lots of compatibility fixes for fabric 1.0.0-beta in it
davidkel (Thu, 29 Jun 2017 07:14:00 GMT):
@pospi you can't issue an identity for an imported identity (as part of the issue identity command is to interact with the ca server to create a new enrollment id and secret) and I don't think you want to do so for PeerAdmin either. That id is really a fabric level id not a business network id and is required only for the deploy stage. Once deployed you should work with other ids.
davidkel (Thu, 29 Jun 2017 07:22:14 GMT):
@pvrbharg The failure is because the directory specified in your hlfv1 profile under keyValStore cannot be created or accessed. Most likely you have specified a directory such as /home/fred/.hfc-key-store but the user fred doesn't exist so the directory /home/fred doesn't exist. One solution would be just to create the directory path yourself.
pospi (Thu, 29 Jun 2017 07:44:39 GMT):
OK thanks @davidkel I'll try making a new separate identity then
pospi (Thu, 29 Jun 2017 07:50:36 GMT):
hmm, same error @davidkel @mahoney1 - the command I'm trying now is the same as before except that I'm using a different newUserId & participantId: `composer identity issue -p test_hl1 -n net-test -i PeerAdmin -s Xurw3yU9zI0l -u ClientAdmin -a net.test.AdminMember#ClientAdmin --issuer`. I would have assumed that the imported admin identity would still be the one used to run the command, or is this not the case?
davidkel (Thu, 29 Jun 2017 07:59:12 GMT):
@pospi the id you need to use is `-i admin -s adminpw` this is the userid is understood by the ca server and also has the authority to issue new identities. In HLF V1 the CA is now a completely separate entity to the system that runs the fabric
davidkel (Thu, 29 Jun 2017 07:59:12 GMT):
@pospi the id you need to use is `-i admin -s adminpw` this is the userid understood by the ca server and also has the authority to issue new identities. In HLF V1 the CA is now a completely separate entity to the system that runs the fabric
pospi (Thu, 29 Jun 2017 08:00:18 GMT):
that gives me `Error: error trying login and get user Context. Error: error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN`... does it depend on the generated crypto assets?
davidkel (Thu, 29 Jun 2017 08:01:06 GMT):
@pospi how did you start the ca server in your environment ?
pospi (Thu, 29 Jun 2017 08:01:14 GMT):
`orderer.dev.everledger.io | 2017-06-29 07:59:47.877 UTC [cauthdsl] func2 -> ERRO 2e1 Principal deserialization failed: (The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority)`
pospi (Thu, 29 Jun 2017 08:01:24 GMT):
just with a docker-compose config
pospi (Thu, 29 Jun 2017 08:02:03 GMT):
but maybe I need to go back and regenerate my crypto assets, as I generated them with an early version when the beta first came out and I'm unsure whether those binaries were actually up to date at the time...
pospi (Thu, 29 Jun 2017 08:02:54 GMT):
although, it _does_ say `ca.dev.everledger.io | 2017/06/29 07:59:47 [DEBUG] Identity/Pass was correct` and appears to have gotten further than last time @davidkel
JonathanTan (Thu, 29 Jun 2017 08:04:48 GMT):
Does Composer allow logic for query/invoke across different chaincodes?
JonathanTan (Thu, 29 Jun 2017 08:04:48 GMT):
Does Composer allow logic for query/invoke across different chaincodes? Example a peer which is on two channels with two chaincodes in each channel
davidkel (Thu, 29 Jun 2017 08:05:42 GMT):
@pospi the ca server is started for example
` command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/a22daf356b2aab5792ea53e35f66fccef1d7f1aa2b3a2b92dbfbf96a448ea26a_sk -b admin:adminpw -d'
`
the certfile and the keyfile should represent the organisation that the peer is part of so in the above example the material comes from the org1.example.com organisation
davidkel (Thu, 29 Jun 2017 08:05:42 GMT):
@pospi the ca server is started for example
``` command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/a22daf356b2aab5792ea53e35f66fccef1d7f1aa2b3a2b92dbfbf96a448ea26a_sk -b admin:adminpw -d'
```
the certfile and the keyfile should represent the organisation that the peer is part of so in the above example the material comes from the org1.example.com organisation
davidkel (Thu, 29 Jun 2017 08:05:42 GMT):
@pospi the ca server is started for example
``` command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/a22daf356b2aab5792ea53e35f66fccef1d7f1aa2b3a2b92dbfbf96a448ea26a_sk -b admin:adminpw -d'
```
the certfile and the keyfile should represent the organisation that the peer for the organisation is part of so in the above example the material comes from the org1.example.com organisation. That should mean it will issue ids which are seen as part of the same organisation
pospi (Thu, 29 Jun 2017 08:06:47 GMT):
ahhhhh OK I think I have it then. I only have a CA for the orderer running, need another one for the peer org?
davidkel (Thu, 29 Jun 2017 08:07:37 GMT):
@pospi if you want to issue identities for that organisation then you need the ca for that organisation
davidkel (Thu, 29 Jun 2017 08:08:32 GMT):
@JonathanTan not sure I understand the question, could you provide an example of what you are trying to do within the context of a business network ?
JonathanTan (Thu, 29 Jun 2017 08:09:55 GMT):
@davidkel for example, bank A has channel 1 and channel 2, channel 1 has chaincode 1 and channel 2 has chaincode 2
JonathanTan (Thu, 29 Jun 2017 08:10:49 GMT):
as Bank A , we want from chaincode 1 to query/invoke chaincode 2 functions
JonathanTan (Thu, 29 Jun 2017 08:11:23 GMT):
use case is that chaincode 1 is in channel 1 between Bank A and Bank B
JonathanTan (Thu, 29 Jun 2017 08:11:37 GMT):
chaincode 2 is in channel 2 between Bank A and Bank C
JonathanTan (Thu, 29 Jun 2017 08:12:02 GMT):
Bank A has a account balance in chaincode 1's state/chain
JonathanTan (Thu, 29 Jun 2017 08:12:23 GMT):
and now wants to transfer $$ to it's account in chaincode 2's statechain
JonathanTan (Thu, 29 Jun 2017 08:13:32 GMT):
chaincode 1 and 2 could be the same Logic/contract deployed in different channels
davidkel (Thu, 29 Jun 2017 08:18:06 GMT):
@JonathanTan No composer doesn't currently have any direct way to communicate with other business networks as yet. Business networks can emit events to external systems so you could create an intermediary client application to do something for you. If you feel this is a requirement feel free to submit an issue for consideration.
dselman (Thu, 29 Jun 2017 08:18:53 GMT):
@JonathanTan we call this feature "links" for Composer -- it is in the backlog but not yet implemented.
uber.twin (Thu, 29 Jun 2017 08:22:37 GMT):
@dselman hi, after doing a network undeploy, the deploy operation doesn't seem to work. I need to tear down the containers and restart them to be able to do a successful deploy again
so, is the network deploy-undeploy suppose to work with the composer 0.8 and fabric v1 beta images?
uber.twin (Thu, 29 Jun 2017 08:22:37 GMT):
@dselman hi, after doing a network undeploy, the deploy operation doesn't seem to work. I need to tear down the containers and restart them to be able to do a successful deploy again
so, is the network deploy-undeploy-redeploy suppose to work with the composer 0.8 and fabric v1 beta images?
sstone1 (Thu, 29 Jun 2017 08:25:23 GMT):
@uber.twin Fabric does not support chaincode undeploy/stop, so we cannot do anything about that
sstone1 (Thu, 29 Jun 2017 08:25:42 GMT):
If you want chaincode undeploy/stop in Composer, you need to get the Fabric team to add it first :)
uber.twin (Thu, 29 Jun 2017 08:27:42 GMT):
@sstone1 is this a fabric V1 issue? because it used to work the fabric 0.6
sstone1 (Thu, 29 Jun 2017 08:28:18 GMT):
Fabric v0.6 had "random" hashed chaincode IDs
sstone1 (Thu, 29 Jun 2017 08:28:38 GMT):
When we did an undeploy at v0.6, we simply forgot about the chaincode ID for a business network, and then deployed a new one (which had a new chaincode ID)
sstone1 (Thu, 29 Jun 2017 08:28:45 GMT):
The v0.6 chaincode was still running though
sstone1 (Thu, 29 Jun 2017 08:28:56 GMT):
In Fabric v1.0, we can use the business network name as the chaincode ID
sstone1 (Thu, 29 Jun 2017 08:29:08 GMT):
however there is no way to get rid of the chaincode
pospi (Thu, 29 Jun 2017 08:29:26 GMT):
_sigh_ @davidkel nup, it's all broken. I have changed my connection profile to point to the peer's CA instead of the order org's one. I use the imported `PeerAdmin` to create the participant, because the `admin/adminpw` credentials don't seem to work for that. I'm then trying to use `admin/adminpw` for the `identity issue` command but it gives the same `event message must be properly signed by an identity from the same organization as the peer` error as before. I think I'm going to have to comb over my configuration for the nth time, I have no idea if the peer is incorrectly bound to the orderer CA or something, but this seems likely
pospi (Thu, 29 Jun 2017 08:31:21 GMT):
there are so many moving parts here you're basically insane if you try to do anything other than run a totally unmodified stock dev configuration. wish I had done this the easy way and not bothered to try to understand how things work
uber.twin (Thu, 29 Jun 2017 08:36:01 GMT):
@sstone1 alright, thank you for clarifying it. for the future though, do you think it'll be possible to update the chaincode and keep the asset, participant and transaction repositories?
dselman (Thu, 29 Jun 2017 08:37:12 GMT):
yes
sstone1 (Thu, 29 Jun 2017 08:44:14 GMT):
@uber.twin yes - the current thinking is to introduce an "upgrade" command which will upgrade the level of Composer. Note that today you can use "update" to update the business network definition without losing your assets, participants, and transactions.
wael (Thu, 29 Jun 2017 08:53:43 GMT):
1)Getting studies Null :
(node:83) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 17): Error: Cannot save null userContext.
2) Ian doesn’t have to enter clinical ledger .. he doesn’t have any activity …
3) Initializing ctchain factory twice at ctledger…
4) create Channel with wrong token: “UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 4): Error: Error: SERVICE_UNAVAILABLE”
————————————————————————————————————————
I tried to connect adminConnection with profile hlfv1 , to work with my business network for long time and I am not succeeding.
The code :
const admin = {
type: "hlfv1",
orderers: [{
url: "grpc://localhost:7050"
}],
ca: "http://localhost:7054",
peers: [{
requestURL: "grpc://localhost:7051",
eventURL: "grpc://localhost:7053"
},
{
requestURL: "grpc://localhost:7056",
eventURL: "grpc://localhost:7058"
}
],
keyValStore: "/Users/waels/.hfc-key-store",
channel: "mychannel",
mspID: "Org1MSP",
deployWaitTime: "300",
invokeWaitTime: "100"
}
const adminConnection = new AdminConnection();
adminConnection.createProfile('default', admin).then(() => {
adminConnection.connect('default', ‘PeerAdmin’, 'adminpw')
}
The profile is created Successfully but the connect isn’t working.
Npm 3.10.10
Node v6.11.0
composer v0.8.1
So Anyone has suggestions to solve this issue ,
what prerequisites must be, or doing anything before running this code.
wael (Thu, 29 Jun 2017 08:53:43 GMT):
————————————————————————————
I tried to connect adminConnection with profile hlfv1 , to work with my business network for long time and I am not succeeding.
The code :
const admin = {
type: "hlfv1",
orderers: [{
url: "grpc://localhost:7050"
}],
ca: "http://localhost:7054",
peers: [{
requestURL: "grpc://localhost:7051",
eventURL: "grpc://localhost:7053"
},
{
requestURL: "grpc://localhost:7056",
eventURL: "grpc://localhost:7058"
}
],
keyValStore: "/Users/waels/.hfc-key-store",
channel: "mychannel",
mspID: "Org1MSP",
deployWaitTime: "300",
invokeWaitTime: "100"
}
const adminConnection = new AdminConnection();
adminConnection.createProfile('default', admin).then(() => {
adminConnection.connect('default', ‘PeerAdmin’, 'adminpw')
}
The profile is created Successfully but the connect isn’t working.
Npm 3.10.10
Node v6.11.0
composer v0.8.1
So Anyone has suggestions to solve this issue ,
what prerequisites must be, or doing anything before running this code.
wael (Thu, 29 Jun 2017 08:54:45 GMT):
also tried to re-install composer-cli , node, and npm .
dselman (Thu, 29 Jun 2017 08:59:06 GMT):
COMMUNITY CALL STARTING NOW
dselman (Thu, 29 Jun 2017 08:59:08 GMT):
https://github.com/hyperledger/composer/wiki/Meeting-29th-June-2017
dselman (Thu, 29 Jun 2017 08:59:19 GMT):
Come ask your questions in person and introduce yourself!
uber.twin (Thu, 29 Jun 2017 09:06:11 GMT):
@sstone1 oh, that's all what I need, thank you
garrich (Thu, 29 Jun 2017 09:09:17 GMT):
Hey, has anyone tried to connect local playground to HSBN on bluemix (fabric v1)? It looks like that not working now. I am receiving "404 not found" from CA on "enroll user" operation
davidkel (Thu, 29 Jun 2017 09:16:17 GMT):
@pospi I will have to use the PeerAdmin for deploy actions. For all business network interactions you should use ids made available from the ca. admin is a ca userid and if you start the ca in the manner I posted then that is the only userid you have to start with from the ca . Also it won't have any peer or channel authority (unless you constuct a fabric that explicitly works that way which won't be trivial). A CA is not bound to a peer or orderer, it is a Certificate Authority and you provide crypto material from a specific organisation so that it can issue crypto material that represents that organisation and associated MSPId.
pospi (Thu, 29 Jun 2017 09:17:19 GMT):
hmm, OK... but I have tried using the credentials given in the CA startup command to create a new participant and those don't work- so it seems that creating a participant and issuing an identity to it must be done by different users?
qiushaoxi (Thu, 29 Jun 2017 09:19:18 GMT):
webapp,can only see assets?
qiushaoxi (Thu, 29 Jun 2017 09:19:43 GMT):
where is participant and transaction?
davidkel (Thu, 29 Jun 2017 09:20:01 GMT):
@garrich Composer v0.8.0 only supports fabric beta, I don't believe HSBN is at that level yet
qiushaoxi (Thu, 29 Jun 2017 09:20:43 GMT):
@sstone1 webapp,can only see assets?
where is participant and transaction?
davidkel (Thu, 29 Jun 2017 09:21:13 GMT):
@pospi the id admin from the ca should be able to create a participant in a business network as well as be able to issue a new identity from the ca server
pospi (Thu, 29 Jun 2017 09:21:48 GMT):
hm, well, it can't! Can you think of any reasons this might be the case?
qiushaoxi (Thu, 29 Jun 2017 09:25:29 GMT):
has anyone tried web-app?
Jakeeyturner (Thu, 29 Jun 2017 09:26:40 GMT):
@qiushaoxi Do you mean the angular webapp generator?
qiushaoxi (Thu, 29 Jun 2017 09:26:51 GMT):
yep
qiushaoxi (Thu, 29 Jun 2017 09:27:26 GMT):
Message Attachments
qiushaoxi (Thu, 29 Jun 2017 09:27:34 GMT):
only Assets?
Jakeeyturner (Thu, 29 Jun 2017 09:27:44 GMT):
Participant and transaction support hasn't been added yet. It's on the TODO list though! - https://github.com/hyperledger/composer/issues/400
Jakeeyturner (Thu, 29 Jun 2017 09:27:53 GMT):
Yup, only assets at the moment
qiushaoxi (Thu, 29 Jun 2017 09:27:57 GMT):
I SEE
qiushaoxi (Thu, 29 Jun 2017 09:28:08 GMT):
thanks
Jakeeyturner (Thu, 29 Jun 2017 09:28:35 GMT):
No worries :)
JonathanTan (Thu, 29 Jun 2017 09:31:34 GMT):
thanks @davidkel @dselman , i'll share with my team
qiushaoxi (Thu, 29 Jun 2017 09:32:32 GMT):
has anyone modify docker-compose and run on different computers?c
JonathanTan (Thu, 29 Jun 2017 09:33:26 GMT):
@qiushaoxi do you mean running the yml file on different machines?
qiushaoxi (Thu, 29 Jun 2017 09:33:32 GMT):
yep
JonathanTan (Thu, 29 Jun 2017 09:34:29 GMT):
of course, it's meant to be OS agnostic ... if the images exists for the CPU
qiushaoxi (Thu, 29 Jun 2017 09:36:43 GMT):
can angular webapp generator run on these different machines?
JonathanTan (Thu, 29 Jun 2017 09:39:42 GMT):
I think it's based on yeoman , so as long as that machine can install node, npm and yeoman it should run, correct me if i'm wrong @davidkel @dselman
Jakeeyturner (Thu, 29 Jun 2017 09:42:16 GMT):
That's correct! It hasn't been tested on Windows though, as far as I'm aware.
sachaLiguori (Thu, 29 Jun 2017 09:52:43 GMT):
Hi, I've a problem with the new update, it's crashing when I try to deploy the bna from the command line
sachaLiguori (Thu, 29 Jun 2017 09:56:39 GMT):
I've the error "✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error
"
davidkel (Thu, 29 Jun 2017 10:28:19 GMT):
@sachaLiguori that error indicates you don't have the correct authority to install chaincode onto the peer. Did you get the latest fabric setup from composer-tools and also try to install using the Pre-enrolled PeerAdmin userid when you deployed ?
see https://hyperledger.github.io/composer/business-network/bnd-deploy.html for more info
germanhs (Thu, 29 Jun 2017 10:33:48 GMT):
Has joined the channel.
germanhs (Thu, 29 Jun 2017 10:36:21 GMT):
Hi people can somebody help me please. In the tutorial it is only explained on how to implement authorization for the rest server itself. But I want to authentificate for my application. It is like this -> restserver/auth/passport --> I authentificate --> restserver/auth/passport/callback --> successRedirect to my app (otherserver/app/home) --> now in the app I do not get access to the rest server (because the rest server only sets a cookie in the callback URL without passing anything to my app) .. I am searching so long for a solution please help! Thank you :)
germanhs (Thu, 29 Jun 2017 10:38:02 GMT):
And I cant access the cookie from the restserver (only if I copy it manually). Is there a way to get this done?
wael (Thu, 29 Jun 2017 10:43:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3pqnFhdbS6pm95CHM) any suggestions ?
mahoney1 (Thu, 29 Jun 2017 10:46:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3pqnFhdbS6pm95CHM) @wael try adminConnection.connect('default', 'admin', 'adminpw')
wael (Thu, 29 Jun 2017 10:46:40 GMT):
I tried before , doesn't work
wael (Thu, 29 Jun 2017 10:50:09 GMT):
the error I get when connect :
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "default"
at connectionProfileStore.load.then.e (/home/app/ctchain-client/node_modules/composer-common/lib/connectionprofilemanager.js:148:27)
wael (Thu, 29 Jun 2017 10:52:38 GMT):
@mahoney1
germanhs (Thu, 29 Jun 2017 10:55:57 GMT):
Can you store the cookies from the passport strategies on the other server (related to my previous question).. Because it seems the passport node module sets the cookie but on the rest server thats the problem so i cant access from my application server
mahoney1 (Thu, 29 Jun 2017 11:02:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9GxJYZZegcipiJMNg) @wael hi there, what version of python ('python --version') do you have installed and what version of docker please?
wael (Thu, 29 Jun 2017 11:03:00 GMT):
@mahoney1 Python 2.7.13
wael (Thu, 29 Jun 2017 11:03:20 GMT):
Docker version 17.03.1-ce, build c6d412e
sstone1 (Thu, 29 Jun 2017 11:11:04 GMT):
@germanhs cookies are per server; the auth token *needs* to be associated with the rest server. if this is in a web browser, then when your application on otherserver calls the rest server, the cookies associated with the rest server will be ued.
mahoney1 (Thu, 29 Jun 2017 11:18:16 GMT):
thanks @wael - your versions posted seem fine. I am assuming your Fabric is running local given your localhost connection profile resolution? The problem is usually down to one of the dependent modules for the connector hasn't been installed correctly. This can happen for a number of reasons. Can you confirm you didn't do an npm install -g composer-cli as root or as sudo user ? Also, if you've not already confirmed, how many Gbs memory in your environment?
sachaLiguori (Thu, 29 Jun 2017 11:21:24 GMT):
@davidkel yes I've followed this tutorial but what is the default peerAdmin's Enrollment secret ?
wael (Thu, 29 Jun 2017 11:22:57 GMT):
@mahoney1 what do you mean by install composer-cli as root ? sudo I didn't use
davidkel (Thu, 29 Jun 2017 11:24:59 GMT):
@sachaLiguori it doesn't have a secret as it is already enrolled. However you still have to provide something for the secret so just put in anything you like
wael (Thu, 29 Jun 2017 11:28:31 GMT):
@mahoney1 I have 16GB memory
mahoney1 (Thu, 29 Jun 2017 11:46:48 GMT):
thanks @wael - so have you previously created a hlfv1 profile for this Fabric environment or deployed a business network or tested (eg. using composer network ping -n my-network -p hlfv1 -i admin -s adminpw) . Just curious if you have currently/previously been able to connect to Fabric from the CLI in your dev environment.
wael (Thu, 29 Jun 2017 11:48:24 GMT):
@mahoney1 yes I have been able to connect Fabric from the CLI
wael (Thu, 29 Jun 2017 11:49:07 GMT):
@mahoney1 what do you mean by install composer-cli as root ? sudo I didn't use
wael (Thu, 29 Jun 2017 11:49:28 GMT):
I tried to run my business network also with type embedded it works
mahoney1 (Thu, 29 Jun 2017 11:49:52 GMT):
ok and can you connect currently to your localhost environment as a matter of interest ? 'root' was a question as to whether you might have been using 'root' user on Linux, but clearly you're not using this, so you can ignore
wael (Thu, 29 Jun 2017 11:51:01 GMT):
excuse me I didn't understand what you asked
wael (Thu, 29 Jun 2017 11:51:16 GMT):
which local host ?
wael (Thu, 29 Jun 2017 11:51:38 GMT):
and when do you mean to connect ?
mahoney1 (Thu, 29 Jun 2017 11:55:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dxQMQZsKyLzvoWTex) @wael in your code snippet you tried connecting to 'localhost' -> url: "grpc://localhost:7050"
}],
ca: "http://localhost:7054",
peers: [{ etc etc. which, when created, will resolve the ip address for localhost for the connection
SahilKapoor (Thu, 29 Jun 2017 12:02:57 GMT):
I was not able to join the conference, can we get the recording link.
wael (Thu, 29 Jun 2017 12:03:08 GMT):
@mahoney1 Aha, and where I could see that ?
wael (Thu, 29 Jun 2017 12:04:52 GMT):
I can't connect to localhost !
wael (Thu, 29 Jun 2017 12:05:40 GMT):
do you mean when when using CLI ?
mahoney1 (Thu, 29 Jun 2017 12:06:24 GMT):
@wael - are you running with v0.8.1 of composer ? Can you try 127.0.0.1 as the ip address in your profile creation?
wael (Thu, 29 Jun 2017 12:11:44 GMT):
@mahoney1 the same .. Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "default"
wael (Thu, 29 Jun 2017 12:11:44 GMT):
@mahoney1 the same .. Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "default"
wael (Thu, 29 Jun 2017 12:12:21 GMT):
He does create profile and I could see in Profiles that it is created successfully
wael (Thu, 29 Jun 2017 12:12:21 GMT):
it does create profile and I could see in Profiles that it is created successfully
SahilKapoor (Thu, 29 Jun 2017 12:14:22 GMT):
@sstone1 @dselman I was not able to join the conference, can I get the recording link.
mahoney1 (Thu, 29 Jun 2017 12:17:42 GMT):
@here - the Composer community call recordings are posted here on our Wiki -> https://github.com/hyperledger/composer/wiki/Community-Call-Recordings-(archive) - this morning's recording will be on this Drive in due course ...
uber.twin (Thu, 29 Jun 2017 12:30:20 GMT):
@sstone1 hi, when performing a rest GET operation for transactions, is there a way to filter by transaction class?
sstone1 (Thu, 29 Jun 2017 12:31:47 GMT):
@uber.twin no, not at the moment
sstone1 (Thu, 29 Jun 2017 12:32:27 GMT):
the new query functionality coming in todays release should allow you to do it from the node.js APIs
sstone1 (Thu, 29 Jun 2017 12:32:33 GMT):
but its not exposed in the REST APIs yet
uber.twin (Thu, 29 Jun 2017 12:34:33 GMT):
it seems strange because they appear to be stored in dedicated registries, isn't it?
sstone1 (Thu, 29 Jun 2017 12:34:56 GMT):
not transactions
sstone1 (Thu, 29 Jun 2017 12:35:00 GMT):
they have a single transaction registry
sstone1 (Thu, 29 Jun 2017 12:35:01 GMT):
which is weird
sstone1 (Thu, 29 Jun 2017 12:35:08 GMT):
and we are getting rid of that as part of the historian work
uber.twin (Thu, 29 Jun 2017 12:35:50 GMT):
alright, thank you
dselman (Thu, 29 Jun 2017 12:40:21 GMT):
```
*************** IMPORTANT *******************
We are preparing the v0.9 release, which introduces some breaking changes to the sample networks and models. For the next couple of hours you will not be able to import the sample networks/models into the online and local Playground from GitHub. Importing from a BNA file will work.
Apologies for this. We'll get v0.9 released ASAP.
Thanks!
**********************************************************
```
mahoney1 (Thu, 29 Jun 2017 13:01:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CdS7A5H4HJXLeHiCR) @wael this is the same issue as before concerning dependent modules for composer-connector-hlfv1 - embedded connection does not test the Fabric. Are you running with Fabric v1.0 beta and did you use this setup https://hyperledger.github.io/composer/installing/development-tools.html to get your Dev environment up and running. If not, would recommend ensuring you pull this Fabric / composer level. Otherwise would suggest doing npm uninstall -g composer-cli then npm install -g composer-cli 2>&1 | tee -a build.log to capture everything to a logfile - and see if the dependent modules are installed.
wael (Thu, 29 Jun 2017 13:42:41 GMT):
@mahoney1 First of all thank you , I did everything you told me about, unfortunately still can't connect
mahoney1 (Thu, 29 Jun 2017 14:46:57 GMT):
@wael - thank you - can you post the output of the command `npm ls -g --depth=0` please and also `composer --version` - thanks
vinitesh (Thu, 29 Jun 2017 16:26:50 GMT):
Hello, Is queryNative call available in composer-client
tkuhrt (Thu, 29 Jun 2017 16:32:07 GMT):
Call recording for today's call now available. https://chat.hyperledger.org/channel/composer?msg=CaQgazJG9A2jJkiwv
suryasuresh06 (Thu, 29 Jun 2017 17:57:52 GMT):
Has joined the channel.
dselman (Thu, 29 Jun 2017 18:00:50 GMT):
@vinitesh new query APIs will be included in v0.9 (coming soon!)
dselman (Thu, 29 Jun 2017 18:01:07 GMT):
including on BusinessNetworkConnection (client)
dselman (Thu, 29 Jun 2017 18:01:23 GMT):
We will also deliver a sample to show how to use them
vinitesh (Thu, 29 Jun 2017 18:01:34 GMT):
@dselman thanks:thumbsup:
dselman (Thu, 29 Jun 2017 18:02:15 GMT):
No built in routes for the composer-rest-server yet -- that is still in progress
jdockter (Thu, 29 Jun 2017 18:42:55 GMT):
@dselman anyway we could add this https://github.com/hyperledger/composer-tools/issues/35 to a future release?
jdockter (Thu, 29 Jun 2017 18:42:55 GMT):
@dselman anyway this issue could get added https://github.com/hyperledger/composer-tools/issues/35 to a future release?
jdockter (Thu, 29 Jun 2017 18:42:55 GMT):
@dselman anyway this issue https://github.com/hyperledger/composer-tools/issues/35 could get added to a future release?
rohilsurana (Thu, 29 Jun 2017 19:58:02 GMT):
Hi, while using factory.newResource() how can I generate the resource identifier automatically?
dselman (Thu, 29 Jun 2017 20:32:41 GMT):
You can't -- it should be generated on the client and passed in on the transaction. Any other mechanism either doesn't scale, or will have consensus issues (or both).
sstone1 (Thu, 29 Jun 2017 20:33:22 GMT):
PRs are accepted @jdockter ;)
dselman (Thu, 29 Jun 2017 20:33:53 GMT):
We are delaying delivering the v0.9 release until tomorrow to perform additional testing. Sorry for the inconvenience!
SahilKapoor (Thu, 29 Jun 2017 20:43:37 GMT):
@dselman Is it possible to share link for vehicle demo showed in composer-sawtooth call.
SahilKapoor (Thu, 29 Jun 2017 20:44:22 GMT):
In call Simon said it is an open source
dselman (Thu, 29 Jun 2017 20:44:36 GMT):
Business network is here: https://github.com/hyperledger/composer-sample-networks/tree/master/packages/vehicle-lifecycle-network
dselman (Thu, 29 Jun 2017 20:45:03 GMT):
User interface code is here: https://github.com/hyperledger/composer-sample-applications
ksachdeva (Thu, 29 Jun 2017 20:45:08 GMT):
Has joined the channel.
dselman (Thu, 29 Jun 2017 20:47:30 GMT):
Data model is here: https://github.com/hyperledger/composer-sample-models/tree/master/packages/vehicle-lifecycle-model
theophoric (Thu, 29 Jun 2017 20:48:33 GMT):
Message Attachments
theophoric (Thu, 29 Jun 2017 20:48:43 GMT):
`Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]`
theophoric (Thu, 29 Jun 2017 20:49:07 GMT):
Haven't encountered this before -- using the same network definition that was working ~ 2 weeks ago when last attempted
dselman (Thu, 29 Jun 2017 20:49:38 GMT):
Looks familiar. I think this one was answered early in the week or last week. Check here and on StackOverflow
theophoric (Thu, 29 Jun 2017 20:49:47 GMT):
cool will do.
theophoric (Thu, 29 Jun 2017 20:59:12 GMT):
Culprit was out of date composer-cli
theophoric (Thu, 29 Jun 2017 20:59:45 GMT):
Message Attachments
theophoric (Thu, 29 Jun 2017 21:00:19 GMT):
```2017-06-29T20:55:21.709Z ERROR HLFConnection :_install() {"message":"error trying install chaincode. Error","stack":"Error: error trying install chaincode. Error\n at temp.mkdir.then.then.then.then.then.catch (/Users/wilsonth/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:367:34)"}$```
theophoric (Thu, 29 Jun 2017 21:00:51 GMT):
would any of the containers have more detailed outputs ? Any suggestions for how I can resolve ?
theophoric (Thu, 29 Jun 2017 21:06:44 GMT):
```
...
2017-06-29 21:05:04.171 UTC [chaincode] Execute -> DEBU 37a Entry
2017-06-29 21:05:04.171 UTC [chaincode] Execute -> DEBU 37b chaincode canonical name: lscc:1.0.0-beta
2017-06-29 21:05:04.171 UTC [chaincode] sendExecuteMessage -> DEBU 37c [73691c76]Inside sendExecuteMessage. Message TRANSACTION
2017-06-29 21:05:04.171 UTC [chaincode] setChaincodeProposal -> DEBU 37d Setting chaincode proposal context...
2017-06-29 21:05:04.171 UTC [chaincode] setChaincodeProposal -> DEBU 37e Proposal different from nil. Creating chaincode proposal context...
2017-06-29 21:05:04.171 UTC [chaincode] sendExecuteMessage -> DEBU 37f [73691c76]sendExecuteMsg trigger event TRANSACTION
2017-06-29 21:05:04.171 UTC [chaincode] processStream -> DEBU 380 [73691c76]Move state message TRANSACTION
2017-06-29 21:05:04.171 UTC [chaincode] HandleMessage -> DEBU 381 [73691c76]Fabric side Handling ChaincodeMessage of type: TRANSACTION in state ready
2017-06-29 21:05:04.171 UTC [chaincode] filterError -> DEBU 382 Ignoring NoTransitionError: no transition
2017-06-29 21:05:04.171 UTC [chaincode] processStream -> DEBU 383 [73691c76]sending state message TRANSACTION
2017-06-29 21:05:04.171 UTC [shim] func1 -> DEBU 384 [73691c76]Received message TRANSACTION from shim
2017-06-29 21:05:04.172 UTC [shim] handleMessage -> DEBU 385 [73691c76]Handling ChaincodeMessage of type: TRANSACTION(state:ready)
2017-06-29 21:05:04.172 UTC [shim] beforeTransaction -> DEBU 386 [73691c76]Received TRANSACTION, invoking transaction on chaincode(Src:ready, Dst:ready)
2017-06-29 21:05:04.189 UTC [shim] func1 -> DEBU 387 [73691c76]Transaction completed. Sending COMPLETED
2017-06-29 21:05:04.189 UTC [shim] func1 -> DEBU 388 [73691c76]Move state message COMPLETED
2017-06-29 21:05:04.189 UTC [shim] handleMessage -> DEBU 389 [73691c76]Handling ChaincodeMessage of type: COMPLETED(state:ready)
2017-06-29 21:05:04.189 UTC [shim] func1 -> DEBU 38a [73691c76]send state message COMPLETED
2017-06-29 21:05:04.190 UTC [chaincode] processStream -> DEBU 38b [73691c76]Received message COMPLETED from shim
2017-06-29 21:05:04.190 UTC [chaincode] HandleMessage -> DEBU 38c [73691c76]Fabric side Handling ChaincodeMessage of type: COMPLETED in state ready
2017-06-29 21:05:04.190 UTC [chaincode] HandleMessage -> DEBU 38d [73691c76c7fc0e97c25cdbee38cc3400665d397580b235eb9fd900d6637827d7]HandleMessage- COMPLETED. Notify
2017-06-29 21:05:04.190 UTC [chaincode] notify -> DEBU 38e notifying Txid:73691c76c7fc0e97c25cdbee38cc3400665d397580b235eb9fd900d6637827d7
2017-06-29 21:05:04.190 UTC [chaincode] Execute -> DEBU 38f Exit
2017-06-29 21:05:04.192 UTC [endorser] callChaincode -> DEBU 390 Exit
2017-06-29 21:05:04.192 UTC [endorser] simulateProposal -> DEBU 391 Exit
2017-06-29 21:05:04.192 UTC [endorser] ProcessProposal -> ERRO 392 simulateProposal() resulted in chaincode response status 500 for txid: 73691c76c7fc0e97c25cdbee38cc3400665d397580b235eb9fd900d6637827d7
2017-06-29 21:05:04.219 UTC [endorser] ProcessProposal -> DEBU 393 Exit
2017-06-29 21:05:06.373 UTC [eventhub_producer] validateEventMessage -> DEBU 394 ValidateEventMessage starts for signed event 0xc421264960
2017-06-29 21:05:06.375 UTC [eventhub_producer] deRegisterHandler -> DEBU 395 deregistering event type: BLOCK
2017-06-29 21:05:06.437 UTC [eventhub_producer] Chat -> ERRO 396 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
```
theophoric (Thu, 29 Jun 2017 21:07:10 GMT):
Any way to see what chaincode deploy transaction it's barfing on ?
fh48 (Thu, 29 Jun 2017 21:43:55 GMT):
Has joined the channel.
rohilsurana (Thu, 29 Jun 2017 21:46:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NifrLNJ8HePkSvkP8) @dselman How about using the transaction id as the identifier?
davidkel (Thu, 29 Jun 2017 21:51:57 GMT):
@theophoric It's a problem with fabric not reporting the fact that the transaction is signed by a user who isn't authorised to install chaincode on the peer.
If you are using our development fabric environment from composer-tools then it will preenroll a certificate from the peer that is authorised to install chaincode onto it. It get's registered as `PeerAdmin`. As it's preenrolled there is no secret but unfortunately you still have to supply one
` composer network deploy -a
davidkel (Thu, 29 Jun 2017 21:51:57 GMT):
@theophoric It's a problem with fabric not reporting the fact that the transaction is signed by a user who isn't authorised to install chaincode on the peer.
If you are using our development fabric environment from composer-tools then it will preenroll a certificate from the peer that is authorised to install chaincode onto it. It get's registered as `PeerAdmin`. As it's preenrolled there is no secret but unfortunately you still have to supply one
` composer network deploy -a
theophoric (Thu, 29 Jun 2017 21:59:05 GMT):
Thank you @davidkel -- that makes sense. But I'm getting an Authentication error.. any idea what I'm doing wrong?
```
composer network deploy -a fitchain-composer@0.1.0.bna -i PeerAdmin -s anything -p hlfv1
Deploying business network from archive: fitchain-composer@0.1.0.bna
Business network definition:
Identifier: fitchain-composer@0.1.0
Description: Fitchain Demo Application
Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
```
theophoric (Thu, 29 Jun 2017 21:59:25 GMT):
same error when adding a profile from the playground
theophoric (Thu, 29 Jun 2017 22:00:37 GMT):
containers deployed from latest composer-tools scripts this afternoon
davidkel (Thu, 29 Jun 2017 22:01:34 GMT):
@theophoric did you run createComposerProfile.sh ? it put's the credentials for PeerAdmin into the hlfv1 defined keyValStore
theophoric (Thu, 29 Jun 2017 22:03:25 GMT):
apparently I had not. Looks like I'm good now -- thank you very much for your assistance @davidkel !
theophoric (Thu, 29 Jun 2017 22:09:12 GMT):
Message Attachments
pvrbharg (Thu, 29 Jun 2017 22:30:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mjLmi6fPsk5EEc4x4) @davidkel Dear David - thank you and your pointer helped me to succeed with that step and I am all good - now I see this final issue
pvrbharg (Thu, 29 Jun 2017 22:30:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mjLmi6fPsk5EEc4x4) @davidkel Dear David - thank you and your pointer helped me to succeed with that step and I am all good. My sample app works correctly when I use http://localhost:4200. However if I use http://IP:4200 and seeing "could not connect to rest server" meesage. How should I resolve this issue?
pvrbharg (Thu, 29 Jun 2017 22:30:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mjLmi6fPsk5EEc4x4) @davidkel Dear David - thank you and your pointer helped me to succeed with that step and I am all good. My sample app works correctly when I use http://localhost:4200. However if I use http://IP:4200 and seeing "could not connect to rest server" meesage. How should I resolve this issue? Can you please let me know?
dl2017 (Fri, 30 Jun 2017 00:26:55 GMT):
Has joined the channel.
pvrbharg (Fri, 30 Jun 2017 01:00:14 GMT):
Message Attachments
garrapato (Fri, 30 Jun 2017 02:13:02 GMT):
Has joined the channel.
germanhs (Fri, 30 Jun 2017 02:17:27 GMT):
Ok I am back and read your answer @sstone1 but somehow it doesnt work thats why I try to duplicate the token from restserver to appserver and then hand it over in the header of every request (tested in Postman that works)
germanhs (Fri, 30 Jun 2017 02:19:22 GMT):
The problem: restserver/auth/passport --> I login and authentificate --> restserver/auth/callback sets the cookie and creates a wallet and stuff --> successRedirect to my appserver (HTML5 Application). But now in this application when I send a request ($.ajax POST / GET) I always get the authorization error while on the restserver I can send requests with the swagger UI without getting an error. Please help me :(
germanhs (Fri, 30 Jun 2017 02:20:48 GMT):
So what I did was debugging this process found the cookie set on the callback page then copied it into postman as header of my request and then it works. Do I really need to duplicate it and if yes how? If no, what am I doing wrong then?
germanhs (Fri, 30 Jun 2017 02:25:38 GMT):
The server etc is public so if somebody has time to check it I would hand over the URL in a PM. Thanks in advance
germanhs (Fri, 30 Jun 2017 02:31:43 GMT):
Status Code 401: Authorization required , but on restserver I dont get that error (same browser).
suryasuresh06 (Fri, 30 Jun 2017 02:53:42 GMT):
Hi, i am new to hyperledger and am attempting to follow the development tutorial. I have hit a slight snag and would be grateful if someone could help me out with out or redirect me to the right forum.
suryasuresh06 (Fri, 30 Jun 2017 02:53:54 GMT):
I get the following error while using the composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed
germanhs (Fri, 30 Jun 2017 02:58:03 GMT):
Okay for other people having the same problem. For crossorigin access you need to specify in your ajax request that you want to use the credentials cookie from the other (rest) server: Just add this to the AJAX Request: xhrFields: {
withCredentials: true
}
SahilKapoor (Fri, 30 Jun 2017 04:34:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XeBC3jiSbn7aSb4fo) @dselman The network is deployed as expected Deploying business network from archive: ./composer-sample-applications/packages/vehicle-lifecycle/installers/hlfv1/vehicle-lifecycle-network.bna
Business network definition:
Identifier: org-acme-biznet@0.0.9
Description: Vehicle Lifecycle Network
✔ Deploying business network definition. This may take a minute...
Command succeeded
SahilKapoor (Fri, 30 Jun 2017 04:35:29 GMT):
But when I try to rest server or ping it
SahilKapoor (Fri, 30 Jun 2017 04:35:32 GMT):
composer network ping -n vehicle-lifecycle-network -p hlfv1 -i admin -s adminpw
Error: error trying to ping. Error: error trying to query chaincode. Error: could not find chaincode with name 'vehicle-lifecycle-network' - make sure the chaincode vehicle-lifecycle-network has been successfully instantiated and try again
germanhs (Fri, 30 Jun 2017 05:49:50 GMT):
hey guys is there a way to stop the rest server from running?
dselman (Fri, 30 Jun 2017 07:09:06 GMT):
kill the process would do it! ;-)
dselman (Fri, 30 Jun 2017 07:12:29 GMT):
Guys and girls.... It's really hard to follow your questions here. They are multipart, you supply additional information and they are interleaved. Differences in timezone also mean that some questions quickly get lost. I would *really* encourage you to ask questions on StackOverflow. You can format code, attach documents, up vote answers, offer a bounty for answers, search for existing answers etc.
dselman (Fri, 30 Jun 2017 07:12:29 GMT):
Guys and girls.... It's really hard to follow *and answer* your questions here. They are multipart, you supply additional information and they are interleaved. Differences in timezone also mean that some questions quickly get lost. I would *really* encourage you to ask questions on StackOverflow. You can format code, attach documents, up vote answers, offer a bounty for answers, search for existing answers etc.
dselman (Fri, 30 Jun 2017 07:13:51 GMT):
This is a great forum for *chat*, but not so great for offering in-depth answers to technical questions.
dselman (Fri, 30 Jun 2017 07:14:32 GMT):
We have the great `hyperledger-composer` tag you can use: https://stackoverflow.com/search?q=hyperledger-composer
dselman (Fri, 30 Jun 2017 07:16:18 GMT):
Also, if you've figured something out that you want to share e.g. @germanhs you can post a question and then answer it yourself. That makes it searchable and findable for the next soul that wants to do what you did.
dselman (Fri, 30 Jun 2017 07:18:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YL6wwZfpbzL9Yz3fr) @rohilsurana sure
JonathanTan (Fri, 30 Jun 2017 08:04:11 GMT):
Hi @dselman is playground sample networks still not usable on V0.8.0 ?
JonathanTan (Fri, 30 Jun 2017 08:04:29 GMT):
I have opened a question on stack overflow: https://stackoverflow.com/questions/44841572/unable-to-import-deploy-business-network-to-composer-playground
JonathanTan (Fri, 30 Jun 2017 08:04:50 GMT):
hopefully you only need to answer it there once :)
dselman (Fri, 30 Jun 2017 08:05:02 GMT):
No, sorry. We are still testing v0.9. As soon as that goes out you will be able to import samples from GH again.
dselman (Fri, 30 Jun 2017 08:12:28 GMT):
@JonathanTan AND I answered on StackOverflow! :-)
deepakvparmar (Fri, 30 Jun 2017 08:19:58 GMT):
@dselman : I couldnt attend yesterday meeting, If there was any ppt shared in meeting, then kindly share with me if possible.
dselman (Fri, 30 Jun 2017 08:24:47 GMT):
I posted links here: https://stackoverflow.com/questions/44774067/difference-between-core-composer-runtime-and-composer-platform-runtime
zupan (Fri, 30 Jun 2017 08:38:44 GMT):
Has anyone else problem of generating Angular2 app with yo? I'm getting
```
About to connect to a running business network
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
```
zupan (Fri, 30 Jun 2017 08:39:41 GMT):
rest API on it's own works and I'm able to deploy bna without any problems
JonathanTan (Fri, 30 Jun 2017 08:45:08 GMT):
Thanks @dselman !
dselman (Fri, 30 Jun 2017 08:46:01 GMT):
@zupan what id are you using to connect?
zupan (Fri, 30 Jun 2017 08:46:49 GMT):
i'm using PeerAdmin:randomString as for deploying .bna
zupan (Fri, 30 Jun 2017 08:47:12 GMT):
basically following the tutorial
dselman (Fri, 30 Jun 2017 08:48:09 GMT):
I suspected so -- PeerAdmin can only deploy chaincode, he cannot access the network. You should use admin/adminpw to access the network
dselman (Fri, 30 Jun 2017 08:48:37 GMT):
You're *not* following the tutorial... ;-)
zupan (Fri, 30 Jun 2017 09:02:32 GMT):
@dselman Thank you! My mistake :). Previously I also tried with admin/adminpw and got the same problem. Right now i'm performing clean install and after that, I will try again with admin.
SahilKapoor (Fri, 30 Jun 2017 09:47:24 GMT):
@dselman While running vehicle lifecycle sample application
SahilKapoor (Fri, 30 Jun 2017 09:47:59 GMT):
The script tries to install node-red composer node which I already installed using -g flag
SahilKapoor (Fri, 30 Jun 2017 09:48:16 GMT):
Now when script tries to install it
SahilKapoor (Fri, 30 Jun 2017 09:48:17 GMT):
# Wait for the applications and Node-RED to start and initialize.
sleep 10
# Install custom nodes
docker exec \
-e NPM_CONFIG_LOGLEVEL=warn \
node-red \
bash -c "cd /data && npm install node-red-contrib-composer"
npm ERR! Linux 4.4.0-81-generic
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "node-red-contrib-composer"
npm ERR! node v6.11.0
npm ERR! npm v3.10.10
npm ERR! code ENOTFOUND
npm ERR! errno ENOTFOUND
npm ERR! syscall getaddrinfo
npm ERR! network getaddrinfo ENOTFOUND registry.npmjs.org registry.npmjs.org:443
npm ERR! network This is most likely not a problem with npm itself
npm ERR! network and is related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settings.
SahilKapoor (Fri, 30 Jun 2017 09:52:55 GMT):
And if you see , the node being installed by script is bit different form one mentioned in docs. In docs is it node-red-contrib-hyperledger-composer
SahilKapoor (Fri, 30 Jun 2017 09:52:55 GMT):
*Note:*And if you see , the node being installed by script is bit different form one mentioned in docs. In docs is it node-red-contrib-hyperledger-composer
Vipul_Bajaj (Fri, 30 Jun 2017 09:53:52 GMT):
I am getting an error while calling GET /system/ping
```{
"error": {
"statusCode": 500,
"name": "Error",
"message": "error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{\"code\":400,\"message\":\"Authorization failure\"}]]",
}
}```
I have made the participant
```Blockchain Participant
{
'$class': 'org.optum.blockchainv5.Participant',
ParticipantId: 'ParticipantId:2',
Name: 'Vipul Bajaj'
}```
Then issued an identity to the participant
```System Identity
{
userID: 'ParticipantId:2',
userSecret: 'dPJbJBsaOLaf'
}```
And then added that identity to default wallet
```Wallet Identity
{
enrollmentID: 'ParticipantId:2',
enrollmentSecret: 'dPJbJBsaOLaf',
id: 3
}```
And then set this wallet identity default by calling the POST /wallets/1/identities/3/setDefault
Got response code 204
And after calling GET syatem/ping gave me error.
Vipul_Bajaj (Fri, 30 Jun 2017 09:53:52 GMT):
I am getting an error while calling GET /system/ping
```{
"error": {
"statusCode": 500,
"name": "Error",
"message": "error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{\"code\":400,\"message\":\"Authorization failure\"}]]",
}
}```
I have made the participant
```Blockchain Participant
{
'$class': 'org.optum.blockchainv5.Participant',
ParticipantId: 'ParticipantId:2',
Name: 'Vipul Bajaj'
}```
Then issued an identity to the participant
```System Identity
{
userID: 'ParticipantId:2',
userSecret: 'dPJbJBsaOLaf'
}```
And then added that identity to default wallet
```Wallet Identity
{
enrollmentID: 'ParticipantId:2',
enrollmentSecret: 'dPJbJBsaOLaf',
id: 3
}```
And then set this wallet identity default by calling the POST /wallets/1/identities/3/setDefault
Got response code 204
And after calling GET system/ping gave me error.
SahilKapoor (Fri, 30 Jun 2017 10:29:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6dohi6zzW4nk76J8Y) @SahilKapoor I made a change in install.sh.in to add correct node red node
SahilKapoor (Fri, 30 Jun 2017 10:29:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6dohi6zzW4nk76J8Y) @dselman I made a change in install.sh.in to add correct node red node
SahilKapoor (Fri, 30 Jun 2017 10:30:03 GMT):
Still I am facing same error
SahilKapoor (Fri, 30 Jun 2017 10:30:05 GMT):
docker exec \
-e NPM_CONFIG_LOGLEVEL=warn \
node-red \
bash -c "cd /data && npm i node-red-contrib-hyperledger-composer"
npm ERR! Linux 4.4.0-81-generic
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "i" "node-red-contrib-hyperledger-composer"
npm ERR! node v6.11.0
npm ERR! npm v3.10.10
npm ERR! code ENOTFOUND
npm ERR! errno ENOTFOUND
npm ERR! syscall getaddrinfo
npm ERR! network getaddrinfo ENOTFOUND registry.npmjs.org registry.npmjs.org:443
npm ERR! network This is most likely not a problem with npm itself
npm ERR! network and is related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settings.
npm ERR! network
npm ERR! network If you are behind a proxy, please make sure that the
SahilKapoor (Fri, 30 Jun 2017 10:30:08 GMT):
Any help
SahilKapoor (Fri, 30 Jun 2017 10:30:08 GMT):
Any solution?
mahoney1 (Fri, 30 Jun 2017 10:59:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3Gopvrc2gSpXqxHTv) @SahilKapoor the errors suggest its a network connectivity issue (npm -> outbound) - are you using a proxy by any chance ? What happens when you do an `nslookup registry.npmjs.org` - is the npm registry resolved?
sachaLiguori (Fri, 30 Jun 2017 11:31:21 GMT):
Hey there
sachaLiguori (Fri, 30 Jun 2017 11:32:12 GMT):
@dselman with the Beta, do you achieve to launch each js command like "listVehicles" in vechicles-lifecycle demo ?
sachaLiguori (Fri, 30 Jun 2017 11:38:14 GMT):
"npm run listVehicles
> vehicle-lifecycle@1.0.0 listVehicles /home/liguori/Documents/SmartContractExtremeBlue2017/tutorials/vehicle-lifecycle
> node cli.js listVehicles
info: [Vehicle Lifecycle] Vehicle Lifecycle application
Uncaught Exception: Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/home/liguori/Documents/SmartContractExtremeBlue2017/tutorials/vehicle-lifecycle/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:201:19)
at ClientDuplexStream._receiveStatus (/home/liguori/Documents/SmartContractExtremeBlue2017/tutorials/vehicle-lifecycle/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:180:8)
at /home/liguori/Documents/SmartContractExtremeBlue2017/tutorials/vehicle-lifecycle/node_modules/fabric-client/node_modules/grpc/src/node/src/client.js:649:14
error: [Vehicle Lifecycle] Error: Missing required parameter "id".
Command failed. "
SahilKapoor (Fri, 30 Jun 2017 12:03:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oBtarh2838W4oGxDZ) @mahoney1 it gets resolved
SahilKapoor (Fri, 30 Jun 2017 12:03:46 GMT):
sahil@sahil-VirtualBox:~/Sample-chain/composer-sample-applications/packages/vehicle-lifecycle$ nslookup registry.npmjs.org
Server: 127.0.1.1
Address: 127.0.1.1#53
Non-authoritative answer:
registry.npmjs.org canonical name = a.sni.fastly.net.
Name: a.sni.fastly.net
Address: 151.101.128.162
Name: a.sni.fastly.net
Address: 151.101.192.162
Name: a.sni.fastly.net
Address: 151.101.0.162
Name: a.sni.fastly.net
Address: 151.101.64.162
SahilKapoor (Fri, 30 Jun 2017 12:04:34 GMT):
And I was able to install node-red composer node from command line.
SahilKapoor (Fri, 30 Jun 2017 12:12:32 GMT):
ping registry.npmjs.org
PING a.sni.fastly.net (151.101.64.162) 56(84) bytes of data.
64 bytes from 151.101.64.162: icmp_seq=1 ttl=53 time=148 ms
64 bytes from 151.101.64.162: icmp_seq=2 ttl=53 time=148 ms
^C
--- a.sni.fastly.net ping statistics ---
3 packets transmitted, 2 received, 33% packet loss, time 2004ms
rtt min/avg/max/mdev = 148.065/148.131/148.198/0.390 ms
Jhdemendoza (Fri, 30 Jun 2017 12:33:51 GMT):
Has joined the channel.
SahilKapoor (Fri, 30 Jun 2017 12:43:33 GMT):
@mahoney1 It is working , I think it was the proxy issue only. I tried in vm and it is working fine
mahoney1 (Fri, 30 Jun 2017 12:49:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MPf9oAC9Yzfuvggq9) @SahilKapoor cool, yep, normally will need to use `npm config set proxy` to fix that.
SahilKapoor (Fri, 30 Jun 2017 13:40:15 GMT):
@mahoney1 @dselman , please have a look at -> https://stackoverflow.com/questions/44847922/the-vehicle-lifecycle-application-exits-as-we-run-it-on-a-server-which-does-not
gen_el (Fri, 30 Jun 2017 14:29:35 GMT):
Hi! How do i create an asset that can not be updated? Its an asset that exists as long a channel exists.
gen_el (Fri, 30 Jun 2017 14:30:02 GMT):
am not sure of what channel is best positioned to answer this.
dselman (Fri, 30 Jun 2017 14:34:07 GMT):
The ACL language can be used to give CREATE permissions only. See the docs.
SethiSaab (Fri, 30 Jun 2017 14:42:10 GMT):
Has joined the channel.
SethiSaab (Fri, 30 Jun 2017 14:42:15 GMT):
hi team I am new here
May you please help me
i am new to development
and i have a query . is there any way that we can connect Ledger to Active directory or Database
SethiSaab (Fri, 30 Jun 2017 14:42:21 GMT):
@dselman thanks bro for guidance
mbwhite (Fri, 30 Jun 2017 14:46:23 GMT):
@SethiSaab Hello - welcome to Composer; it would helpful to the context in what you are trying to achieve.. What is the problem you are trying to solve...?
SethiSaab (Fri, 30 Jun 2017 14:46:45 GMT):
actually i am trying to develop a POC
SethiSaab (Fri, 30 Jun 2017 14:46:57 GMT):
where i want to get Employees data from AD to block chain
SethiSaab (Fri, 30 Jun 2017 14:47:41 GMT):
and On the basis of data i will decide access for those employees
SethiSaab (Fri, 30 Jun 2017 14:48:22 GMT):
@mbwhite I am new and i can be wrong in using some technical terms or @ some points please correct me if i go wrong somewhere
gen_el (Fri, 30 Jun 2017 14:49:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4FC4sYp89hSyuXCAC) @dselman Awesome! Thanks
mbwhite (Fri, 30 Jun 2017 14:50:41 GMT):
@SethiSaab So is this one time move of data or would you want to have this as an going process? i.e. shadow active directory.
mbwhite (Fri, 30 Jun 2017 14:51:40 GMT):
Either way - really what you will need to do are (1) Model in composer the structure of the employees data (2) Write an application to move the data - or use something like Node-REDs integration capabilities - to keep the data in sync.
mbwhite (Fri, 30 Jun 2017 14:52:07 GMT):
Or indeed look into the Loopback Framework - that might be a good starting point if Loopback has an Active Directory connector
mbwhite (Fri, 30 Jun 2017 14:58:13 GMT):
I would recommend going to the Composer webpage and learning about how that works - there are some good tutorials on there. That will give you a feeling for what it can do.
Keep in mind that Hyperledger Fabric is the core blockchain technology on which Hyperledger Composer sits to make your life as a developer a lot easier.
uber.twin (Fri, 30 Jun 2017 15:01:28 GMT):
@dselman @mbwhite hi, I am trying basic composer security features. It seems that a businessNetworkConnection.connect() operation works with any password argument. Could you confirm it as a bug and if so, is it going to be addressed soon?
sstone1 (Fri, 30 Jun 2017 15:01:37 GMT):
@here we've released Hyperledger Composer v0.9.0, with the new Composer query language, read all about it on GitHub: https://github.com/hyperledger/composer/releases/tag/v0.9.0 🎉
sstone1 (Fri, 30 Jun 2017 15:02:22 GMT):
It took a long time but we got it over the line! Apologies to anybody that was unable to import the samples from GitHub in the meantime.
sstone1 (Fri, 30 Jun 2017 15:02:27 GMT):
There are quite a few breaking changes in this release, with updates to the model and ACL file syntax, so please read the release notes!
kvnlee (Fri, 30 Jun 2017 15:03:48 GMT):
Hi all, I am able to view my business network on Composer REST server and add assets, participants, and transactions. However, I'm unable to get the filter to work properly. Whenever I make GET calls with a filter, it returns all the assets to me rather than just the one that matches the identifier. Is there a fix for this? I'm attaching a screenshot. Thanks!
kvnlee (Fri, 30 Jun 2017 15:04:01 GMT):
Message Attachments
sstone1 (Fri, 30 Jun 2017 15:04:28 GMT):
@kvnlee the filter is not implemented yet - you can only filter by ID. we will be looking to map LoopBacks filter expressions to the new Composer query language in v0.9.0 to support this at a future date :)
kvnlee (Fri, 30 Jun 2017 15:06:02 GMT):
Thanks @sstone1 , so I am making a web app right now in Django, does that mean if a user wanted to get a specific asset a I would have to filter the response on the web app end?
sstone1 (Fri, 30 Jun 2017 15:06:55 GMT):
@kvnlee if you want to get a specific asset you can use the `/api/ibm.wsc.immunichain.Childform/{id}` API
kvnlee (Fri, 30 Jun 2017 15:08:14 GMT):
Right, but if I wanted to get a specific asset based on a different id (a foreign key, I suppose), I would have to filter it on the web app end
kvnlee (Fri, 30 Jun 2017 15:09:01 GMT):
It doesn't seem to fare well scalability-wise, so I'm looking forward to the update!
uber.twin (Fri, 30 Jun 2017 15:12:09 GMT):
@sstone1 hi, could you confirm that the businessNetworkConnection.connect() doesn't care about the password value i.e. any pasword is valid?
davidkel (Fri, 30 Jun 2017 15:19:32 GMT):
@uber.twin it's not a password, it's an enrollment secret. It will be used if the enrollment id provided has not yet been enrolled. Once enrolled your wallet will have the certificate representing that id and thus the secret is not required.
davidkel (Fri, 30 Jun 2017 15:19:32 GMT):
@uber.twin it's not a password, it's an enrollment secret. It will be used if the enrollment id provided has not yet been enrolled. Once enrolled your wallet will have the certificate representing that id and thus the secret is not used.
dselman (Fri, 30 Jun 2017 15:26:54 GMT):
Sample that shows how to use the new Composer Query Language: https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network
uber.twin (Fri, 30 Jun 2017 15:27:01 GMT):
@davidkel I created a participant and did an issueIdentity(participant, userID) operation for it. Is that what is enrollment means?
uber.twin (Fri, 30 Jun 2017 15:27:01 GMT):
@davidkel I created a participant and did an issueIdentity(participant, userID) operation for it. Is that what enrollment means?
uber.twin (Fri, 30 Jun 2017 15:28:12 GMT):
I can use it to connect, no matter the userSecret
davidkel (Fri, 30 Jun 2017 15:28:41 GMT):
@uber.twin enrollment is the action of connecting to the ca server to download the crypto material (certificate) for the enrollment id into your wallet. A CA Server can for example decide that enrollment is a 1 time action. Once you have enrolled and obtained the certificate you cannot do so again.
pvrbharg (Fri, 30 Jun 2017 15:33:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mjLmi6fPsk5EEc4x4) @davidkel Dear David, when I set up a new instance in Skytap cloud and try to run - I am now getting Invalid Host header error - shown in screen shot. Any suggestions?
pvrbharg (Fri, 30 Jun 2017 15:33:22 GMT):
Message Attachments
uber.twin (Fri, 30 Jun 2017 15:36:05 GMT):
@davidkel you are right, enrollment secret does matters upon the first connection attempt, thanks
uber.twin (Fri, 30 Jun 2017 15:36:05 GMT):
@davidkel you are right, enrollment secret does matter upon the first connection attempt, thanks
slugmandrew (Fri, 30 Jun 2017 15:36:44 GMT):
Has joined the channel.
dselman (Fri, 30 Jun 2017 17:17:27 GMT):
Intro video published:
dselman (Fri, 30 Jun 2017 17:17:27 GMT):
https://www.youtube.com/watch?v=_GqhQeuUp1s
dwakeman (Fri, 30 Jun 2017 18:19:52 GMT):
I am a bit confused with all of the new identity stuff in composer 0.8.x and Fabric beta/rc1..... I see conflicting info in the new docs, and am hoping somebody can straighten me out. I have a new environment that is not the fabric-dev-server, and I am getting "not authorized" messages with composer. Do I need to issue a new identity to use with composer-cli, or import one? I tried importing one from the fabric-tools directory, as described in the docs, but I am getting an `x509 untrusted cert` type message. I'm guessing that's because somebody grabbed those identities from the peer CA for the fabric dev server. In my case, do I need to issue a new identity? If I do, do I need to also import it using composer cli to get the wallet in my keyvalstore?
arner (Fri, 30 Jun 2017 18:49:05 GMT):
I'd like to do (reasonably) complex access control. Can I make a transaction return a value?
dselman (Fri, 30 Jun 2017 18:51:53 GMT):
How is the first related to the second?
dselman (Fri, 30 Jun 2017 18:52:08 GMT):
(Hi @arner btw!)
arner (Fri, 30 Jun 2017 18:52:45 GMT):
Hi @dselman, nice videos, I did a workshop today and this is exactly what they asked for :)
dselman (Fri, 30 Jun 2017 18:53:14 GMT):
good!
dselman (Fri, 30 Jun 2017 18:53:26 GMT):
We love to have more... In more languages!
arner (Fri, 30 Jun 2017 18:53:30 GMT):
To do the access control I need to get a model from another registry, so putting the logic in a transaction seemed like the right thing to do
dselman (Fri, 30 Jun 2017 18:53:34 GMT):
Including Dutch! ;-)
arner (Fri, 30 Jun 2017 18:53:44 GMT):
I got the hint ;)
dselman (Fri, 30 Jun 2017 18:54:28 GMT):
Do you mean "get an asset from another registry"?
dselman (Fri, 30 Jun 2017 18:54:51 GMT):
Are you implementing procedural access control using `getCurrentParticipant()`?
arner (Fri, 30 Jun 2017 18:56:16 GMT):
To get the PersonalDetails an Access asset related to the PersonalDetails has to exist with granted = true as a field.
dselman (Fri, 30 Jun 2017 19:02:01 GMT):
I would put the logic in a helper function that you can call from your TP function.
dselman (Fri, 30 Jun 2017 19:02:10 GMT):
https://twitter.com/danielselman/status/880863663883792385
arner (Fri, 30 Jun 2017 19:02:52 GMT):
Sorry, TP?
dselman (Fri, 30 Jun 2017 19:04:27 GMT):
transaction processor
arner (Fri, 30 Jun 2017 19:05:26 GMT):
Ok, but how can I make sure that this is called when I do a query for the PersonalDetails?
dselman (Fri, 30 Jun 2017 19:07:50 GMT):
Ok... back up a bit. Describe at the business level what you are trying to implement.
arner (Fri, 30 Jun 2017 19:09:39 GMT):
A civilian has personal details. A third party can request access to those details. In another transaction, the civilian can grant access to a certain field or type of info from his or her personal details (a nice example would be, 'is this person over 18').
dselman (Fri, 30 Jun 2017 19:11:45 GMT):
grant access to a specific participant, or in general?
arner (Fri, 30 Jun 2017 19:13:00 GMT):
The civilian (=participant) would grant access to the third party (=participant) to his personal details (=asset), preferably even to a certain field of this asset
dselman (Fri, 30 Jun 2017 19:14:10 GMT):
ok -- could you create a question on StackOverflow please and I will post a potential design there? It's Friday night here, so I'm about to log off. Will reply later.
arner (Fri, 30 Jun 2017 19:14:55 GMT):
Good call, I'll log off as well :p. Have a good weekend!
davidoevans (Fri, 30 Jun 2017 19:51:57 GMT):
I just upgraded to Composer v0.9.0...i updated model to no longer specify transactionId's and ACL to correct namespace issue. Now, when creating the archive. (py27) Davids-MacBook-Pro:healthchain davidevans
```
(py27) Davids-MacBook-Pro:healthchain davidevans$ composer archive create -a dist/healthchain-network.bna --sourceType dir --sourceName .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /Users/davidevans/code/healthchain/healthchain
/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
SyntaxError: The keyword 'const' is reserved (3:0)
at Parser.pp$4.raise (/usr/local/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:2488:13)
at Parser.pp$3.parseIdent (/usr/local/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:2436:12)
at Parser.pp$3.parseExprAtom (/usr/local/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:1946:19)
at Parser.pp$3.parseExprSubscripts (/usr/local/lib/node_modules/composer-cli/node_modules/acorn/dist/acorn.js:1872:19)
```
I can't find any `const` in my project so i'm wondering if it is something internal to composer-cli...thoughts?
dwakeman (Fri, 30 Jun 2017 19:56:07 GMT):
more than one field
davidoevans (Fri, 30 Jun 2017 20:03:17 GMT):
(i just deleted my last question...if you saw the question...i was in the wrong folder)
dwakeman (Fri, 30 Jun 2017 20:04:30 GMT):
I have a valid bna file that I have deployed many times to multiple versions of fabric, but the new composer playground refuses to import it, claiming that one of my transactions has "more than one field with name (transactionId)". Anybody know why?
jdockter (Fri, 30 Jun 2017 20:06:38 GMT):
@dwakeman looks like the 0.9 release had changes to transactionId and eventId being used, see the release notes here, https://github.com/hyperledger/composer/releases/tag/v0.9.0
dwakeman (Fri, 30 Jun 2017 20:08:38 GMT):
Interesting. I removed them all and then it complained that they were missing.
dwakeman (Fri, 30 Jun 2017 20:16:28 GMT):
When I try to run npm install to build the archive, I get this error:
```> pharma-network@0.6.2 prepublish /Users/dwakeman/git/pharma-network
> mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/pharma-network.bna
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /Users/dwakeman/git/pharma-network
/Users/dwakeman/git/pharma-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
IllegalModelException: Class ApproveMedication is not declared as abstract. It must define an identifying field. File '/Users/dwakeman/git/pharma-network/models/com.ibm.pharma.cto': line 92 column 1, to line 103 column 2.
```
dwakeman (Fri, 30 Jun 2017 20:17:43 GMT):
do I need to explicitly state that my transaction `extends org.hyperledger.composer.system.Transaction`?
dwakeman (Fri, 30 Jun 2017 20:19:15 GMT):
or is there something I need to update in my package.json?
davidkel (Fri, 30 Jun 2017 21:27:31 GMT):
@dwakeman I would say that given this wide spread api change, you need to check that all you composer references are in sync. So if you are using playground 0.9.0 make sure that the cli, rest server as also at that level and any client applications also reference the latest level in package.json. If not then one part is going to have no problems while others will report issues.
dwakeman (Fri, 30 Jun 2017 21:28:31 GMT):
I am using playground in bluemix, and my composer is at this level:
```composer-cli v0.9.0
composer-admin v0.9.0
composer-client v0.9.0
composer-common v0.9.0
composer-runtime-hlf v0.9.0
composer-runtime-hlfv1 v0.9.0```
dwakeman (Fri, 30 Jun 2017 21:29:12 GMT):
I followed the developer tutorial earlier in the week so I have that setup. And I think I know what the issue is.......
dwakeman (Fri, 30 Jun 2017 21:31:49 GMT):
dang, nope. I had the engine in the package.json set to "^0.7.4" but changing it to "0.9.0" didn't fix it.
dwakeman (Fri, 30 Jun 2017 21:32:22 GMT):
i am just trying to do npm install which runs composer archive create
davidkel (Fri, 30 Jun 2017 21:33:45 GMT):
@dwakeman hmm, I was going to suggest that maybe it's worth deleting your node_modules directory and redo npm install to ensure, but if the problem is using the composer cli that obviously won't help
dwakeman (Fri, 30 Jun 2017 21:34:00 GMT):
actually, I will try that....
davidkel (Fri, 30 Jun 2017 21:35:01 GMT):
@dwakeman thinking about it, it might help :-)
dwakeman (Fri, 30 Jun 2017 21:36:45 GMT):
BRILLIANT!!!
dwakeman (Fri, 30 Jun 2017 21:37:30 GMT):
that was it! I keep forgetting that there is code in there that is specific to my business network. Might be something good to add as a tip in the docs.
davidkel (Fri, 30 Jun 2017 21:38:29 GMT):
@dwakeman could you raise it on Stack Overflow ? I think that would be a good place to put it
dwakeman (Fri, 30 Jun 2017 21:38:40 GMT):
yep, happy to
rohilsurana (Fri, 30 Jun 2017 21:39:56 GMT):
Is it important to have atleast one transaction in the network definition?
davidkel (Fri, 30 Jun 2017 21:42:15 GMT):
@dwakeman thanks, much appreciated
SahilKapoor (Fri, 30 Jun 2017 22:03:01 GMT):
HI,
SahilKapoor (Fri, 30 Jun 2017 22:03:34 GMT):
When I run trade-network , I am to create a commodity but when I create a trader I am facing issue
SahilKapoor (Fri, 30 Jun 2017 22:04:02 GMT):
Unhandled error for request POST /api/org.acme.trading.Trader: Error: Property names containing dot(s) are not supported. Model: org_acme_trading_Trader, dynamic property: {
"$class": "org.acme.trading.Trader",
"tradeId": "sahil",
"firstName": "sahil",
"lastName": "sahil"
}
at ModelConstructor.ModelBaseClass._initProperties (/home/sahil/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/model.js:249:17)
SahilKapoor (Fri, 30 Jun 2017 22:04:26 GMT):
or
SahilKapoor (Fri, 30 Jun 2017 22:04:28 GMT):
Unhandled error for request POST /api/org.acme.trading.Trader: Error: Property names containing dot(s) are not supported. Model: org_acme_trading_Trader, dynamic property: {
"$class": "org.acme.trading.*",
"tradeId": "A",
"firstName": "B",
"lastName": "C"
}
at ModelConstructor.ModelBaseClass._initProperties (/home/sahil/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/model.js:249:17)
at ModelConstructor.ModelBaseClass (/home/sahil/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/model.js:60:8)
a
SahilKapoor (Fri, 30 Jun 2017 22:04:28 GMT):
Unhandled error for request POST /api/org.acme.trading.Trader: Error: Property names containing dot(s) are not supported. Model: org_acme_trading_Trader, dynamic property: {
"$class": "org.acme.trading.Trader",
"tradeId": "A",
"firstName": "B",
"lastName": "C"
}
at ModelConstructor.ModelBaseClass._initProperties (/home/sahil/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/model.js:249:17)
at ModelConstructor.ModelBaseClass (/home/sahil/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/model.js:60:8)
a
dwakeman (Fri, 30 Jun 2017 22:08:06 GMT):
@davidkel question posted and answered, but one other thought occurred to me. I already had my project in github and was using vscode to edit it, so i had no problem making edits to the model to meet the new API requirements. What happens to people who just use playground and export/import bna files? They're going to be stuck because they can't import the bna file to make the edits. They can still rename the bna file to a zip file, unzip it, fix the code and use `composer archive create` to build it again, but that's a bit of work. Couldn't the playground still let you import it, even though it's not valid for deployment?
dselman (Fri, 30 Jun 2017 23:47:33 GMT):
@SahilKapoor are you using the Swagger UI to test that POST request?
dselman (Fri, 30 Jun 2017 23:50:02 GMT):
I suspect you need to replace your `.` with `_` in your POST request
Vipul_Bajaj (Sat, 01 Jul 2017 05:10:03 GMT):
Can anyone help me out with this?
https://chat.hyperledger.org/channel/composer?msg=7vcwLLwGTpkgaLDNB
davidkel (Sat, 01 Jul 2017 07:26:13 GMT):
@Vipul_Bajaj you could try `export DEBUG=composer:* ` then rerun the rest server and pipe the console output to a file (or use `tee` ) and see if there is any hint to the problem in the log output
baoyangc (Sat, 01 Jul 2017 10:01:39 GMT):
errorInfo:
baoyangc (Sat, 01 Jul 2017 10:02:07 GMT):
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Participant 'org.bqj.cn.BanquanjiaUser#chai1' does not have 'CREATE' access to resource 'org.bqj.cn.CopyrightPackage#pid1')",
"stack": "Error: error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Participant 'org.bqj.cn.BanquanjiaUser#chai1' does not have 'CREATE' access to resource 'org.bqj.cn.CopyrightPackage#pid1')\n at _initializeChannel.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:806:34)"
}
}
baoyangc (Sat, 01 Jul 2017 10:02:22 GMT):
rule AddWorks {
description: "添加作品的限制"
participant(p): "org.bqj.cn.BanquanjiaUser"
operation: CREATE
resource(r): "org.bqj.cn.Works"
condition: (p.getIdentifier() ==r.agent.getIdentifier()) //无效 资产创建前无法确定agent
action: ALLOW
}
rule ReadWorks {
description: "读取作品的限制"
participant: "ANY"
operation: READ
resource: "org.bqj.cn.Works"
action: ALLOW
}
rule CreatePackage {
description: "创建Package的权限"
participant(p): "org.bqj.cn.BanquanjiaUser"
operation: ALL
resource(r): "org.bqj.cn.CopyrightPackage"
condition: (p.getIdentifier() == r.worksID.agent.getIdentifier())
action: ALLOW
}
baoyangc (Sat, 01 Jul 2017 10:02:56 GMT):
sorry ,error sending
dselman (Sat, 01 Jul 2017 10:11:21 GMT):
I'm guessing here... but I suspect there is a problem with your condition `condition: (p.getIdentifier() == r.worksID.agent.getIdentifier())`
dselman (Sat, 01 Jul 2017 10:11:31 GMT):
Have you unit tested this logic outside of Fabric?
dselman (Sat, 01 Jul 2017 10:12:53 GMT):
Note that relationships are not currently resolved by the ACL engine, so `r.worksID.agent.getIdentifier()` looks suspiciously like you are trying to traverse a relationship
dselman (Sat, 01 Jul 2017 10:13:41 GMT):
To test, try replacing this with (true) and see it it works
baoyangc (Sat, 01 Jul 2017 11:05:35 GMT):
no,i havn't
baoyangc (Sat, 01 Jul 2017 11:09:35 GMT):
i have solved it
baoyangc (Sat, 01 Jul 2017 11:10:09 GMT):
but i get a new error when i tried to post an transaction
baoyangc (Sat, 01 Jul 2017 11:10:27 GMT):
the body is
{
"$class": "org.bqj.cn.CopyrightPackageTransfer",
"cid": "pid1",
"seller": "resource:org.bqj.BanquanjiaUser#chai1",
"buyer": "chai2",
"timestamp": "2017-07-01T07:27:47.953Z"
}
baoyangc (Sat, 01 Jul 2017 11:10:52 GMT):
the error is
"error": {
"statusCode": 500,
"name": "TypeError",
"message": "Cannot read property 'replace' of undefined",
"stack": "TypeError: Cannot read property 'replace' of undefined\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/globalize.js:29:28\n at Function.fromURI (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/model/relationship.js:115:29)\n at JSONPopulator.visitRelationshipDeclaration (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:246:39)\n at JSONPopulator.visit (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:58:25)\n at RelationshipDeclaration.accept (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/introspect/property.js:48:24)\n at JSONPopulator.visitClassDeclaration (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:83:60)\n at JSONPopulator.visit (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:56:25)\n at TransactionDeclaration.accept (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/introspect/classdeclaration.js:64:24)\n at Serializer.fromJSON (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer.js:160:26)\n at ensureConnected.then (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:558:43)"
}
baoyangc (Sat, 01 Jul 2017 11:14:46 GMT):
the transaction function is
function CopyrightPackageTransfer(copyrightPackageTransfer){
var factory = getFactory();
var seller = copyrightPackageTransfer.seller;
var buyer = copyrightPackageTransfer.buyer;
var cid = copyrightPackageTransfer.cid;
cid.dealDate=new Date();
cid.owner=buyer
return getAssetRegistry(cid.getFullyQualifiedType())
.then(function(ar){
return ar.update(cid);
});
}
baoyangc (Sat, 01 Jul 2017 11:15:00 GMT):
```function CopyrightPackageTransfer(copyrightPackageTransfer){
var factory = getFactory();
var seller = copyrightPackageTransfer.seller;
var buyer = copyrightPackageTransfer.buyer;
var cid = copyrightPackageTransfer.cid;
cid.dealDate=new Date();
cid.owner=buyer
return getAssetRegistry(cid.getFullyQualifiedType())
.then(function(ar){
return ar.update(cid);
});
}```
sstone1 (Sat, 01 Jul 2017 11:19:36 GMT):
@baoyangc you should not use `new Date` from within a transaction processor function; it will make your business logic non-deterministic. if this code is run by multiple endorsing peers running on different machines, then each peer will come up with a different date/time. if you need to use the date/time, then you should pass it in from the client side.
baoyangc (Sat, 01 Jul 2017 11:20:39 GMT):
thanks
baoyangc (Sat, 01 Jul 2017 11:22:09 GMT):
so the error information is raised by this ?
baoyangc (Sat, 01 Jul 2017 11:22:47 GMT):
{
"$class": "org.bqj.cn.CopyrightPackageTransfer",
"cid": "pid1",
"seller": "resource:org.bqj.BanquanjiaUser#chai1",
"buyer": "chai2",
"timestamp": "2017-07-01T07:27:47.953Z"
} ,this body is ok?
baoyangc (Sat, 01 Jul 2017 11:25:34 GMT):
the type of buyer and seller is the same. so the buyer should be write as:resource:org.bqj.BanquanjiaUser#chai2
sstone1 (Sat, 01 Jul 2017 11:29:32 GMT):
the error should be that the `org.bqj` namespace doesn't exist
sstone1 (Sat, 01 Jul 2017 11:29:43 GMT):
looks like an issue that we throw another error trying to give you a useful error
sstone1 (Sat, 01 Jul 2017 11:29:58 GMT):
should it be `resource:org.bqj.cn.BanquanjiaUser` ?
baoyangc (Sat, 01 Jul 2017 11:30:19 GMT):
o yes
baoyangc (Sat, 01 Jul 2017 11:31:41 GMT):
a new error ```Object with ID 'chai1' in collection with ID 'Participant:org.bqj.cn.BanquanjiaUser' does not exist```
baoyangc (Sat, 01 Jul 2017 11:32:21 GMT):
o i see
baoyangc (Sat, 01 Jul 2017 11:32:38 GMT):
i just reset my environment
baoyangc (Sat, 01 Jul 2017 11:34:54 GMT):
http://localhost:3000/api/system/ping
Response Body
{
"version": "0.8.0",
"participant": "org.bqj.cn.BanquanjiaUser#chai1"
}
baoyangc (Sat, 01 Jul 2017 11:36:01 GMT):
the user is existed. why it say : Object with ID 'chai1' in collection with ID
Participant:org.bqj.cn.BanquanjiaUser' does not exist
baoyangc (Sat, 01 Jul 2017 11:38:10 GMT):
```
abstract transaction RightTransfer {
--> BanquanjiaUser seller
--> BanquanjiaUser buyer
}
transaction CopyrightPackageTransfer identified by tid extends RightTransfer {
o String tid
--> CopyrightPackage cid
}```
SahilKapoor (Sat, 01 Jul 2017 17:53:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ysndXEsMFqTAh4wCP) @dselman I used org_acme_trading_Trader, dynamic property: {
"$class": "org.acme.trading.Trader",
"tradeId": "A",
"firstName": "B",
"lastName": "C"
}
SahilKapoor (Sat, 01 Jul 2017 17:53:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ysndXEsMFqTAh4wCP) @dselman I used org_acme_trading_Trader, dynamic property: {
"$class": "org.acme.trading.Trader",
"tradeId": "A",
"firstName": "B",
"lastName": "C"
} It does not have any "." only "." is in $class and the samething works while creating commodity.
pkafei (Sat, 01 Jul 2017 18:50:03 GMT):
Has joined the channel.
adrianblakey (Sat, 01 Jul 2017 22:54:13 GMT):
Has joined the channel.
iconisaa (Sun, 02 Jul 2017 00:02:27 GMT):
Has joined the channel.
iconisaa (Sun, 02 Jul 2017 00:02:33 GMT):
hey guys im trying to deploy HLF by using the command composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
but i keep getting llegalModelException: Class Trade is not declared as abstract. It must define an identifying field. File '/Users/Ali/my-network/models/sample.cto': line 17 column 1, to line 20 column 2.
considering im using the sample code this is weird
baoyangc (Sun, 02 Jul 2017 05:54:02 GMT):
```rule CopyrightPackageTransfer {
description: "交易权限"
participant: "org.bqj.cn.BanquanjiaUser"
operation: CREATE,READ
resource(res): "org.bqj.cn.CopyrightPackageTransfer"
transaction(tx): "org.bqj.cn.CopyrightPackageTransfer"
condition: (tx.cid.owner.getIdentifier() ==tx.seller.getIdentifier())
action: ALLOW
}```
baoyangc (Sun, 02 Jul 2017 05:54:21 GMT):
meet error: " "message": "error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Participant 'org.bqj.cn.BanquanjiaUser#chai1' does not have 'CREATE' access to resource 'org.bqj.cn.CopyrightPackageTransfer#dc3513ba-399e-408c-912d-b0ad7aefcb6b')",
"
baoyangc (Sun, 02 Jul 2017 05:54:59 GMT):
i tried to post a transaction to the composer-rest server
baoyangc (Sun, 02 Jul 2017 05:55:07 GMT):
but got this error
baoyangc (Sun, 02 Jul 2017 05:56:28 GMT):
the body of post is ```{
"$class": "org.bqj.cn.CopyrightPackageTransfer",
"cid": "pid1",
"seller": "chai1",
"buyer": "chai2",
"timestamp": "2017-07-01T07:27:47.953Z"
}```
wael (Sun, 02 Jul 2017 07:52:54 GMT):
Hi I was deploying my network successfully, suddenly without changes of business network I got this error when deploying :
Illegal Model Exception: Class update has more than one field named (transactionId). File 'models/org.acme.cto': line 95 column 1, to line 99 column 2.
wael (Sun, 02 Jul 2017 07:54:20 GMT):
Message Attachments
wael (Sun, 02 Jul 2017 07:56:24 GMT):
Message Attachments
wael (Sun, 02 Jul 2017 07:56:34 GMT):
any suggestions ?
dselman (Sun, 02 Jul 2017 08:16:15 GMT):
Read the v0.9 release notes? ;-)
iconisaa (Sun, 02 Jul 2017 08:16:43 GMT):
@weal check out what version of on composer you are using and if its not 0.9.0 then update it
dselman (Sun, 02 Jul 2017 08:16:49 GMT):
Just remove the `identified by transactionId` and you should be fine.
iconisaa (Sun, 02 Jul 2017 08:17:02 GMT):
or listen to @dselman lmao
dselman (Sun, 02 Jul 2017 08:17:17 GMT):
https://github.com/hyperledger/composer/releases/tag/v0.9.0
dselman (Sun, 02 Jul 2017 08:17:33 GMT):
:-)
iconisaa (Sun, 02 Jul 2017 08:17:57 GMT):
@dselman any idea about this
iconisaa (Sun, 02 Jul 2017 08:18:06 GMT):
getting Connection fails: Error: Failed to load connection profile h1fv1.
iconisaa (Sun, 02 Jul 2017 08:18:13 GMT):
Error was Error: ENOENT: no such file or directory, open '/Users/Ali/.composer-connection-profiles/h1fv1/connection.json'
iconisaa (Sun, 02 Jul 2017 08:18:24 GMT):
when loading up the basic tutorial
iconisaa (Sun, 02 Jul 2017 08:19:10 GMT):
this happens after ~/my-network ❯❯❯ composer-rest-server -p h1fv1 -n my-network -i admin -s adminpw -N never
dselman (Sun, 02 Jul 2017 08:19:55 GMT):
This usually means that composer failed to install correctly, usually because you are using an unsupported version of npm/node or OS.
dselman (Sun, 02 Jul 2017 08:20:40 GMT):
best thing is to rerun `npm uninstall -g composer-cli` followed by `npm install -g composer-cli` carefully checking that the install didn't raise any errors
dselman (Sun, 02 Jul 2017 08:20:54 GMT):
mmm
dselman (Sun, 02 Jul 2017 08:20:57 GMT):
no, maybe not
dselman (Sun, 02 Jul 2017 08:21:01 GMT):
I retract that!
dselman (Sun, 02 Jul 2017 08:21:13 GMT):
Did you run ./createConnectionProfile ?
iconisaa (Sun, 02 Jul 2017 08:21:16 GMT):
i see im currently using node v6.9.5
and npm 3.10.10
iconisaa (Sun, 02 Jul 2017 08:21:30 GMT):
yes
iconisaa (Sun, 02 Jul 2017 08:21:32 GMT):
i did
dselman (Sun, 02 Jul 2017 08:21:49 GMT):
can you try running it again please?
iconisaa (Sun, 02 Jul 2017 08:22:08 GMT):
but i dont know that i have pointed it to the right profile name
dselman (Sun, 02 Jul 2017 08:22:16 GMT):
I need more coffee! ;-)
iconisaa (Sun, 02 Jul 2017 08:22:54 GMT):
Message Attachments
iconisaa (Sun, 02 Jul 2017 08:23:01 GMT):
looks like it is created
dselman (Sun, 02 Jul 2017 08:23:04 GMT):
So you did the install for the dev environment, then you are doing the developer tutorial?
iconisaa (Sun, 02 Jul 2017 08:23:17 GMT):
yes sir
iconisaa (Sun, 02 Jul 2017 08:23:53 GMT):
getting
dselman (Sun, 02 Jul 2017 08:23:59 GMT):
`cat ~/.composer-connection-profiles/hlfv1/connection.json ` please?
iconisaa (Sun, 02 Jul 2017 08:24:01 GMT):
Message Attachments
iconisaa (Sun, 02 Jul 2017 08:25:16 GMT):
Message Attachments
dselman (Sun, 02 Jul 2017 08:25:31 GMT):
@baoyangc please create a StackOverflow question and I will answer there. Please attach as much information (models etc) as you can.
iconisaa (Sun, 02 Jul 2017 08:26:08 GMT):
type looks good "hlfv1" so its not like im inputing the wrong info as far as i can see
dselman (Sun, 02 Jul 2017 08:26:17 GMT):
interesting
dselman (Sun, 02 Jul 2017 08:26:20 GMT):
what OS?
dselman (Sun, 02 Jul 2017 08:26:27 GMT):
Mac?
iconisaa (Sun, 02 Jul 2017 08:26:44 GMT):
mac 10.12.5
davidkel (Sun, 02 Jul 2017 08:27:37 GMT):
@iconisaa I could be wrong based on font being used but it looks to me like you are specifying profile 'h1fv1' when you should be using `hlfv1` (ie you have replaced the 'el' with a 'one' which means it isn't the correct profile name)
davidkel (Sun, 02 Jul 2017 08:27:37 GMT):
@iconisaa I could be wrong based on font being used but it looks to me like you are specifying profile `h1fv1` when you should be using `hlfv1` (ie you have replaced the 'el' with a 'one' which means it isn't the correct profile name)
dselman (Sun, 02 Jul 2017 08:27:58 GMT):
good catch!
iconisaa (Sun, 02 Jul 2017 08:28:36 GMT):
omg
iconisaa (Sun, 02 Jul 2017 08:28:39 GMT):
that was it
iconisaa (Sun, 02 Jul 2017 08:28:46 GMT):
:joy:
iconisaa (Sun, 02 Jul 2017 08:28:54 GMT):
excuse me while i hide my face
dselman (Sun, 02 Jul 2017 08:29:07 GMT):
we've all done it sometime or another!
iconisaa (Sun, 02 Jul 2017 08:29:16 GMT):
thank you so much @davidkel and @dselman you guys are great
iconisaa (Sun, 02 Jul 2017 08:29:47 GMT):
dan are you a composer dev?
davidkel (Sun, 02 Jul 2017 08:29:58 GMT):
Thank goodness for caffeine in the morning :-)
iconisaa (Sun, 02 Jul 2017 08:30:06 GMT):
haha
dselman (Sun, 02 Jul 2017 08:30:13 GMT):
Both Dave and I work on Composer full time.
iconisaa (Sun, 02 Jul 2017 08:30:50 GMT):
thank you so much for the work you guys are doing. cant say enough how much im loving composer.
dselman (Sun, 02 Jul 2017 08:32:27 GMT):
Thank you! We love to hear about what people are doing. Come talk to us (and other community members) in person on the community call. Every Thursday, with alternating times to accommodate all time zones: https://github.com/hyperledger/composer/wiki
iconisaa (Sun, 02 Jul 2017 08:36:20 GMT):
ill be there :thumbsup:
wael (Sun, 02 Jul 2017 08:43:33 GMT):
is there exist an example of an nodejs application, that runs adminConnection.connect(..) with hlfv1 module connector, (not CLI Command) ?
wael (Sun, 02 Jul 2017 08:43:33 GMT):
is there exists an example of an nodejs application, that runs adminConnection.connect(..) with hlfv1 module connector, (not CLI Command) ?
dselman (Sun, 02 Jul 2017 09:12:17 GMT):
Lots of the unit tests for business networks use the AdminConnection. They zip up the BNA and deploy it before running the unit test. E.g. https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/test/perishable.js
wael (Sun, 02 Jul 2017 09:43:47 GMT):
@dselman right, the unit tests uses adminConnection and it works for embedded just like what I did, but when I try to deploy to hlfv1 it doesn't work..
wael (Sun, 02 Jul 2017 09:44:15 GMT):
I tried to many
dselman (Sun, 02 Jul 2017 09:44:35 GMT):
It should. Just reference a connection profile that exists (e.g. `hlfv1` and use the right credentials (e.g. `PeerAdmin`).
dselman (Sun, 02 Jul 2017 09:45:00 GMT):
Can you paste your code?
dselman (Sun, 02 Jul 2017 09:45:19 GMT):
The CLI just wraps this API...
wael (Sun, 02 Jul 2017 09:45:54 GMT):
@dselman yes I tried this also have the same problem, also re install composer-cli, re-install npm , and installing python 2.7 , ..
dselman (Sun, 02 Jul 2017 09:46:27 GMT):
can you create a question on StackOverflow please and attach as much info as you can
wael (Sun, 02 Jul 2017 09:47:47 GMT):
const admin = {
type: "hlfv1",
orderers: [{
url: "grpc://localhost:7050"
}],
ca: "http://localhost:7054",
peers: [{
requestURL: "grpc://localhost:7051",
eventURL: "grpc://localhost:7053"
},
{
requestURL: "grpc://localhost:7056",
eventURL: "grpc://localhost:7058"
}
],
keyValStore: "/Users/waels/.hfc-key-store",
channel: "mychannel",
mspID: "Org1MSP",
deployWaitTime: "300",
invokeWaitTime: "100"
}
const adminConnection = new AdminConnection();
adminConnection.createProfile('hlfv1', admin).then(() => {
adminConnection.getAllProfiles()
})
.then(() => {
adminConnection.connect('hlfv1', 'PeerAdmin', 'adminpw').then(() => {}, function(err) {
console.log(err);
})
});
wael (Sun, 02 Jul 2017 09:48:09 GMT):
okay I will create now ..
SDChoi (Sun, 02 Jul 2017 10:07:02 GMT):
Has joined the channel.
awa (Sun, 02 Jul 2017 10:52:39 GMT):
Has joined the channel.
davidkel (Sun, 02 Jul 2017 12:00:48 GMT):
@wael Your application has no dependency on composer-cli so unfortunately uninstalling and installing composer-cli isn't going to help. Have you tried deleting the node_modules directory where your application is and re-running npm install to re-install the dependencies for your application ?
wael (Sun, 02 Jul 2017 12:03:37 GMT):
@davidkel I have npm install in the directory of my network which my package.json in that directory is this
davidkel (Sun, 02 Jul 2017 12:04:07 GMT):
@wael but have you tried deleting the node_modules directory first ?
wael (Sun, 02 Jul 2017 12:04:17 GMT):
yes offcourse
wael (Sun, 02 Jul 2017 12:04:35 GMT):
but it's not related to my business network yet ..
wael (Sun, 02 Jul 2017 12:04:45 GMT):
I am just want to connect adminConnection to the profile
wael (Sun, 02 Jul 2017 12:04:57 GMT):
then I will deploy the business network
wael (Sun, 02 Jul 2017 12:05:31 GMT):
I am working on the client side , there I make the adminConnection , and then connect to the business network\
davidkel (Sun, 02 Jul 2017 12:05:38 GMT):
@wael and you still get `unable to load composer-connector-hlfv1` ?
wael (Sun, 02 Jul 2017 12:05:51 GMT):
yes
davidkel (Sun, 02 Jul 2017 12:06:16 GMT):
@wael but the composer-cli works without a problem ?
wael (Sun, 02 Jul 2017 12:06:52 GMT):
my package.json at the client where I do the adminConnection is :
"dependencies": {
"request": "^2.81.0",
"q": "^1.5.0",
"cli-table": "^0.3.1",
"composer-cli": "^0.9.0-0",
"composer-client": "^0.9.0-0",
"fabric-ca-client": "1.0.0-alpha.1",
"fabric-client": "1.0.0-alpha.1",
"homedir": "^0.6.0",
"config": "^1.24.0",
"digitalproperty-network": "^0.1.0-0",
"jsonfile": "^2.4.0",
"lodash": "^4.17.4",
"prettyjson": "^1.2.1",
"sprintf-js": "^1.0.3",
"winston": "^2.3.0",
"yargs": "^6.5.0"
},
"devDependencies": {
"mocha": "^3.2.0",
"sinon": "^2.1.0",
"supertest": "^3.0.0",
"browserfs": "^1.2.0",
"chai": "^3.5.0",
"chai-as-promised": "^6.0.0",
"composer-admin": "latest",
"composer-cli": "latest",
"composer-client": "latest",
"composer-connector-embedded": "latest",
"composer-connector-hlfv1": "latest"
}
wael (Sun, 02 Jul 2017 12:07:12 GMT):
the composer-cli works fine , and when I use the CLI is works also ..
davidkel (Sun, 02 Jul 2017 12:08:12 GMT):
@wael I would suggest taking out 'composer-cli' and 'composer-connector-hlfv1' from your package.json, deleting node_modules and doing an npm install again
wael (Sun, 02 Jul 2017 12:08:41 GMT):
and then taking them back ?
davidkel (Sun, 02 Jul 2017 12:09:53 GMT):
@wael your application will never depend on 'composer-cli' as it is a command line tool, not an api. 'composer-connector-hlfv1' is referenced by composer-admin so will be pulled in automatically
wael (Sun, 02 Jul 2017 12:10:53 GMT):
so you suggest to run with "devDependencies": {
"mocha": "^3.2.0",
"sinon": "^2.1.0",
"supertest": "^3.0.0",
"browserfs": "^1.2.0",
"chai": "^3.5.0",
"chai-as-promised": "^6.0.0",
"composer-admin": "latest",
"composer-client": "latest",
"composer-connector-embedded": "latest"
} ?
davidkel (Sun, 02 Jul 2017 12:15:02 GMT):
```
dependencies": {
"request": "^2.81.0",
"q": "^1.5.0",
"cli-table": "^0.3.1",
"composer-client": "0.7.5",
"composer-admin": "0.7.5",
"homedir": "^0.6.0",
"config": "^1.24.0",
"digitalproperty-network": "^0.1.0-0",
"jsonfile": "^2.4.0",
"lodash": "^4.17.4",
"prettyjson": "^1.2.1",
"sprintf-js": "^1.0.3",
"winston": "^2.3.0",
"yargs": "^6.5.0"
},
"devDependencies": {
"mocha": "^3.2.0",
"sinon": "^2.1.0",
"supertest": "^3.0.0",
"browserfs": "^1.2.0",
"chai": "^3.5.0",
"chai-as-promised": "^6.0.0"
}
```
ok, had a more detailed look at your package.json and recommend you do this, especially as it appears you want to talk to hlfv1 1.0.0-alpha1 you must use 0.7.5 version of composer
wael (Sun, 02 Jul 2017 12:15:48 GMT):
my composer version 0.9.0
wael (Sun, 02 Jul 2017 12:16:05 GMT):
I will try with these dependencies
davidkel (Sun, 02 Jul 2017 12:16:26 GMT):
@wael What version of hyperledger fabric are you trying to work with ?
wael (Sun, 02 Jul 2017 12:17:28 GMT):
which command check fabric version ?
davidkel (Sun, 02 Jul 2017 12:17:36 GMT):
@wael docker ps
wael (Sun, 02 Jul 2017 12:17:56 GMT):
x86_64-1.0.0-beta
wael (Sun, 02 Jul 2017 12:18:18 GMT):
x86_64-1.0.0-alpha ****
wael (Sun, 02 Jul 2017 12:18:28 GMT):
beta I was using for couchdb
davidkel (Sun, 02 Jul 2017 12:18:42 GMT):
ok, then use this one
```
dependencies": {
"request": "^2.81.0",
"q": "^1.5.0",
"cli-table": "^0.3.1",
"composer-client": "0.9.0",
"composer-admin": "0.9.0",
"homedir": "^0.6.0",
"config": "^1.24.0",
"digitalproperty-network": "^0.1.0-0",
"jsonfile": "^2.4.0",
"lodash": "^4.17.4",
"prettyjson": "^1.2.1",
"sprintf-js": "^1.0.3",
"winston": "^2.3.0",
"yargs": "^6.5.0"
},
"devDependencies": {
"mocha": "^3.2.0",
"sinon": "^2.1.0",
"supertest": "^3.0.0",
"browserfs": "^1.2.0",
"chai": "^3.5.0",
"chai-as-promised": "^6.0.0"
}
```
ie use composer 0.9.0 modules
davidkel (Sun, 02 Jul 2017 12:18:42 GMT):
ok, then use this one
```
dependencies": {
"request": "^2.81.0",
"q": "^1.5.0",
"cli-table": "^0.3.1",
"composer-client": "0.9.0",
"composer-admin": "0.9.0",
"homedir": "^0.6.0",
"config": "^1.24.0",
"digitalproperty-network": "^0.1.0-0",
"jsonfile": "^2.4.0",
"lodash": "^4.17.4",
"prettyjson": "^1.2.1",
"sprintf-js": "^1.0.3",
"winston": "^2.3.0",
"yargs": "^6.5.0"
},
"devDependencies": {
"mocha": "^3.2.0",
"sinon": "^2.1.0",
"supertest": "^3.0.0",
"browserfs": "^1.2.0",
"chai": "^3.5.0",
"chai-as-promised": "^6.0.0"
}
```
ie use composer 0.9.0 modules if working with hlf 1.0.0-beta
wael (Sun, 02 Jul 2017 12:24:56 GMT):
@davidkel unfortunately, the same
davidkel (Sun, 02 Jul 2017 12:25:42 GMT):
@wael just to confirm that you did delete node_modules directory completely first ?
wael (Sun, 02 Jul 2017 12:25:52 GMT):
yes offcourse
wael (Sun, 02 Jul 2017 12:28:17 GMT):
I use the docker-compose for my angular2 application, and when I reach the client side where I had put this package.json to connect the adminConnection it gives me that error.
inrecovery (Mon, 03 Jul 2017 02:06:46 GMT):
Has joined the channel.
inrecovery (Mon, 03 Jul 2017 02:08:50 GMT):
Hey guys, building out the blockchain component with Composer for inRecovery.org. Really excited to see how this goes. Will be in touch as I'll definitely need guidance. Hope you're all having a nice weekend.
harsha (Mon, 03 Jul 2017 02:44:23 GMT):
Has left the channel.
tennenjl (Mon, 03 Jul 2017 03:11:37 GMT):
Hi there, If we specify multiple peers in our connection.json, when the client invokes a transaction, does it attempt to connect to a single endorsement peer or multiple peers and if one or more peers are not available, does the connection attempt to connect to a different peer). If I am coding my client code, I am wondering if I need to add any sort of retry logic if one of the peers is not available or is this handled by the Composer code? Thanks!
trygvevang (Mon, 03 Jul 2017 06:48:59 GMT):
Has joined the channel.
Vipul_Bajaj (Mon, 03 Jul 2017 06:57:35 GMT):
Message Attachments
Vipul_Bajaj (Mon, 03 Jul 2017 06:57:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5HKEzYu4dbKBsdCez) @davidkel This is my output log file.
Vipul_Bajaj (Mon, 03 Jul 2017 06:57:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5HKEzYu4dbKBsdCez) @davidkel This is my output log file and I am unable to get any hint of the problem
akshay111meher (Mon, 03 Jul 2017 07:36:49 GMT):
while writing the chaincode, we can import almost any go-libraries and execute chaincode, is it possible to do on hyperledger-composer too?
davidkel (Mon, 03 Jul 2017 08:02:14 GMT):
@Vipul_Bajaj was a trace_*.log file created in the directory where you ran the rest server ? hopefully that will contain more detailed level of debug info
davidkel (Mon, 03 Jul 2017 08:04:10 GMT):
@tennenjl If you specify multiple peers in the connection profile then any request will be sent to all those peers
Vipul_Bajaj (Mon, 03 Jul 2017 08:42:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WpuyyaHBFx34w6snk) @davidkel no trace_*.log was craeted
Vipul_Bajaj (Mon, 03 Jul 2017 08:42:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WpuyyaHBFx34w6snk) @davidkel no trace_*.log was created
rama_rahul (Mon, 03 Jul 2017 09:26:23 GMT):
Now I created a sample application with the help of this link : https://hyperledger.github.io/composer/tutorials/developer-guide.html . Now I want people using other systems to be able to access this application and submit some transactions through it. How can I make that happen?
arner (Mon, 03 Jul 2017 09:34:42 GMT):
Hi guys (especially @dselman), thanks so much for the PII sample network. When I try to import it from the composer playground I get an error though: SyntaxError: The keyword 'extends' is reserved (4:0). Is this a caching issue in my browser or a legit error?
ShobhanaSundararaman (Mon, 03 Jul 2017 09:38:33 GMT):
Hi, I had successfully setup a hyperledger composer with fabric in an Azure Ubuntu VM and was able to run web applications too. Unfortunately my credit got over in Azure and I moved to AWS. I have an Ubuntu 16.04 EC2 instance. But when I try to install composer-fabric instance I get the following error. IllegalModelException: Class Trade has more than one field named (transactionId). File '/home/ubuntu/hyperledger-files/my-network/models/sample.cto': line 38 column 1, to line 42 column 2.
ShobhanaSundararaman (Mon, 03 Jul 2017 09:39:01 GMT):
Can someone help me resolve this?
davidkel (Mon, 03 Jul 2017 09:51:35 GMT):
@Vipul_Bajaj sorry my mistake, there should a logs directory where the trace file will be stored. it will be something like trace_1123.log where the number is the PID of the composer-rest-server
Vipul_Bajaj (Mon, 03 Jul 2017 09:52:05 GMT):
Let me check it once
Vipul_Bajaj (Mon, 03 Jul 2017 09:56:05 GMT):
No there is no trace log file
Vipul_Bajaj (Mon, 03 Jul 2017 09:59:39 GMT):
May be I have not on the log file thing so can you help me with that
Vipul_Bajaj (Mon, 03 Jul 2017 10:00:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RZsdHjwRbPLCf7RGT) @davidkel No there is no trace log file
May be I have not on the log file thing so can you help me with that
Pere-Lluis (Mon, 03 Jul 2017 10:39:48 GMT):
hey is it possible to retrieve the chaincode once the bna is deployed?
Pere-Lluis (Mon, 03 Jul 2017 10:40:00 GMT):
kind of getting chaincode from a .bna
sstone1 (Mon, 03 Jul 2017 11:10:56 GMT):
@Pere-Lluis there is no chaincode generated when you deploy a BNA
sstone1 (Mon, 03 Jul 2017 11:11:23 GMT):
e.g. Composer does not compile your BNA into a chaincode and deploy that
sstone1 (Mon, 03 Jul 2017 11:11:35 GMT):
the BNA gets deployed along with a generic piece of chaincode we call the Composer runtime
Pere-Lluis (Mon, 03 Jul 2017 11:12:41 GMT):
oh okey, so fabric-sdk won't work with the deployed bna
Pere-Lluis (Mon, 03 Jul 2017 11:12:58 GMT):
like trying transactions using it
sstone1 (Mon, 03 Jul 2017 11:13:17 GMT):
no - you can still use the fabric-sdk to make calls to the deployed BNA - it's still a normal running chaincode from the Fabric point of view
sstone1 (Mon, 03 Jul 2017 11:13:34 GMT):
but you need to understand our chaincode interface which is not documented - it's all in the code
sstone1 (Mon, 03 Jul 2017 11:13:41 GMT):
this is why we provide the Composer client API
sstone1 (Mon, 03 Jul 2017 11:13:45 GMT):
why can't you use that?
Pere-Lluis (Mon, 03 Jul 2017 11:15:17 GMT):
sure sure, I can
Pere-Lluis (Mon, 03 Jul 2017 11:15:31 GMT):
just trying to understand how it works
Pere-Lluis (Mon, 03 Jul 2017 11:15:53 GMT):
and the interaction between Fabric and Composer
sstone1 (Mon, 03 Jul 2017 11:16:03 GMT):
ah right, gotcha
Pere-Lluis (Mon, 03 Jul 2017 11:16:04 GMT):
thanks!
sstone1 (Mon, 03 Jul 2017 11:16:08 GMT):
np
geoms (Mon, 03 Jul 2017 11:17:47 GMT):
Has joined the channel.
geoms (Mon, 03 Jul 2017 11:17:59 GMT):
Hello
geoms (Mon, 03 Jul 2017 11:18:54 GMT):
I am following Hyper Ledger Fabric Composer developer tutorial
geoms (Mon, 03 Jul 2017 11:20:00 GMT):
and trying to deploy the .bna file to the running HLF
geoms (Mon, 03 Jul 2017 11:20:15 GMT):
I am getting the following error
geoms (Mon, 03 Jul 2017 11:20:28 GMT):
IllegalModelException: Class Trade is not declared as abstract. It must define an identifying field.
geoms (Mon, 03 Jul 2017 11:21:17 GMT):
the issues is related to the transaction class
geoms (Mon, 03 Jul 2017 11:21:47 GMT):
which is not abstract in the tutorial
krupabathia (Mon, 03 Jul 2017 11:22:27 GMT):
Has joined the channel.
geoms (Mon, 03 Jul 2017 11:22:41 GMT):
when i made into abstract, another issue surface. Which is "the class cannot be instantiated"
geoms (Mon, 03 Jul 2017 11:22:50 GMT):
Can someone help me with this ?
krupabathia (Mon, 03 Jul 2017 11:23:10 GMT):
Hello, I am trying to unzip the fabric-dev-servers.tar.gz and I am getting an error saying
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
krupabathia (Mon, 03 Jul 2017 11:24:10 GMT):
I googled and it says it might be due to gzip version mismatch error. I have gzip version 1.6. Can someone suggest?
mahoney1 (Mon, 03 Jul 2017 11:26:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WMJanxoMDibK2CR6B) @Vipul_Bajaj hi Vipul - the trace_xxxxx.log file(s) are usually created inside a subdirectory called 'logs' - from where you ran/run the composer_rest_server - hope this helps, let me know if you still have issues (ie no subdirectory created etc), cheers Paul
mahoney1 (Mon, 03 Jul 2017 11:33:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MNexrMPPottTLN7Ec) @akshay111meher Not yet - but looking at adding Node.js support to Fabric which will give us access to `require` and all npm libraries ..
mahoney1 (Mon, 03 Jul 2017 11:46:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=28KMws24uk2euTsFN) @rama_rahul the sample Angular app is a skeleton app that you can modify as a project to start adding transactions from it.. Your Angular app can use RESTful APIs to connect to the Composer REST server where the APis are already published for your business network (assets, participants, transactions etc), in this case the Commodity Trading sample network. REST APIs provides a useful layer of language-neutral abstraction.
mahoney1 (Mon, 03 Jul 2017 11:54:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9gj3p7SoNr5xAyceq) @ShobhanaSundararaman Hi there, the transactionId is no longer there -> eg. transaction Trade {
--> Commodity commodity
--> Trader newOwner
}
mahoney1 (Mon, 03 Jul 2017 11:56:32 GMT):
@ShobhanaSundararaman would suggest to use the docs for guidance https://hyperledger.github.io/composer/unstable/tutorials/developer-guide.html and copying latest snippets from to recreate your sample environment (this tutorial reflects the fact that your composer modules need to be at the latest which is v0.9.0 - sounds like you have this build).
mahoney1 (Mon, 03 Jul 2017 11:58:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DACFbmiPznutievXf) @inrecovery hope you had a nice weekend too - welcome aboard :-)
tennenjl (Mon, 03 Jul 2017 12:20:18 GMT):
Hi there, If we specify multiple peers in our connection.json, when the client invokes a transaction, does it attempt to connect to a single endorsement peer or multiple peers and if one or more peers are not available, does the connection attempt to connect to a different peer). If I am coding my client code, I am wondering if I need to add any sort of retry logic if one of the peers is not available or is this handled by the Composer code? I was looking at the connectionManager code but I'm still not sure how this would be handled. Thanks!
davidkel (Mon, 03 Jul 2017 12:21:50 GMT):
@tennenjl [ ](https://chat.hyperledger.org/channel/composer?msg=NDq64RMam4S6s6sAB)
tennenjl (Mon, 03 Jul 2017 12:22:14 GMT):
@davidkel Thanks!
tennenjl (Mon, 03 Jul 2017 12:23:31 GMT):
@DavidKel and then, I guess it just depends on your endorsement policy regarding the success? Is there any retry logic, or is that something that needs to be handled client side?
mahoney1 (Mon, 03 Jul 2017 12:24:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5Y5yjKqYLinmLveyQ) @arner just tried repeating this importing via Github samples and I see the same thing, will look into this to see if it is a bug..
davidkel (Mon, 03 Jul 2017 12:29:50 GMT):
@tennenjl no, there isn't any retry logic, composer does check the response from the peer is valid and also that all the responses from all the peers agree (although that might have to change once we support endorsement policies)
dselman (Mon, 03 Jul 2017 12:30:32 GMT):
@arner @mahoney1 this is a bug in Playground (fixed already in unstable). To workaround you should build the BNA locally (using npm install / test) and then import the BNA file. Playground doesn't like the .eslintrc.yml in the scripts dir.
arner (Mon, 03 Jul 2017 12:32:27 GMT):
Thanks for looking into it @dselman. So on Thursday it will be resolved on the server? (btw awesome that you just built that over the weekend)
SahilKapoor (Mon, 03 Jul 2017 12:38:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZszTFq3FhaKzzs55o) @mahoney1 I am also facing the same issue in vehicle manufacture.cto
SahilKapoor (Mon, 03 Jul 2017 12:38:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZszTFq3FhaKzzs55o) @mahoney1 I am also facing the same issue in vehicle manufacture.cto .
As per the docs, it asks us to remove the transaction and event Id but there is no transaction Id in the cto file still it throws this error.
I even exported the bna file from playgorund but it is not working via composer sample applications code.
Deploying business network from archive: vehicle-lifecycle-network.bna
IllegalModelException: Class PlaceOrder has more than one field named (transactionId). File 'models/org.acme.vehicle.lifecycle.manufacturer.cto': line 59 column 1, to line 65 column 2.
Command failed
Part of manufacturer.cto
transaction PlaceOrder {
o String orderId
o VehicleDetails vehicleDetails
--> Manufacturer manufacturer
--> Person orderer
}
event PlaceOrderEvent {
o String orderId
o VehicleDetails vehicleDetails
}
/**
* Transaction to update the status of an order
*/
transaction UpdateOrderStatus{
o OrderStatus orderStatus
o String vin optional
o String v5c optional
o String numberPlate optional
--> Order order
}
event UpdateOrderStatusEvent {
o OrderStatus orderStatus
o Order order
}
geoms (Mon, 03 Jul 2017 12:42:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=H3uzJ8wTLn2evjSkN) @SahilKapoor
geoms (Mon, 03 Jul 2017 12:43:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=H3uzJ8wTLn2evjSkN) @SahilKapoor You need to update the composer version to v0.9.0. command: npm install -g composer-cli Ref: https://hyperledger.github.io/composer/installing/development-tools.html
SahilKapoor (Mon, 03 Jul 2017 12:44:15 GMT):
It is 0.9
SahilKapoor (Mon, 03 Jul 2017 12:44:15 GMT):
It is 0.9 and I think absatract transaction and asset were introduced in v0.9. If it wasn't 0.9 then I think it would not had thrown this error.
dselman (Mon, 03 Jul 2017 12:45:42 GMT):
@arner you can use unstable if you want to test the fix: https://composer-playground-unstable.mybluemix.net/ It should import the pii-network.
SahilKapoor (Mon, 03 Jul 2017 12:49:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8P8jTxzbBumxvdoow) @geoms It is 0.9 and I think absatract transaction and asset were introduced in v0.9. If it wasn't 0.9 then I think it would not had thrown this error. If this is wokring for you , can you share the bna file.
geoms (Mon, 03 Jul 2017 13:04:06 GMT):
@SahilKapoor Its working for me after upgrading to v0.9.0 in another sample project - "my network".
geoms (Mon, 03 Jul 2017 13:05:24 GMT):
As per the release note https://github.com/hyperledger/composer/releases/tag/v0.9.0
geoms (Mon, 03 Jul 2017 13:05:33 GMT):
you need check below points
geoms (Mon, 03 Jul 2017 13:05:34 GMT):
The impact of this change is that
any user defined transactions and/or events that have a 'transactionId' or 'eventId' or 'timestamp' will need to be removed.
the network archive will need to be updated as a result
ACLs might need to be updated if the current ACLs do not specifically include an allow for any type.
mahoney1 (Mon, 03 Jul 2017 13:21:07 GMT):
@SahilKapoor - I've imported the vehicle lifecycle business network definition into playground and that model (ie models/org.acme.vehicle.lifecycle.manufacturer.cto) is checking out OK, no errors. Have you a local playground installed and at v0.9.0? As for the vehicle-lifecycle.bna - you can download file to test here (.bna file) -> https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-lifecycle
Pere-Lluis (Mon, 03 Jul 2017 14:16:18 GMT):
Has anyone faced a Error: error trying install chaincode. Error: Endpoint read failed
when deploying a bna?
Pere-Lluis (Mon, 03 Jul 2017 14:16:58 GMT):
I have it set at unix:///host/var/run/docker.sock
Pere-Lluis (Mon, 03 Jul 2017 14:18:01 GMT):
I think I may post it to stackoverflow with the logs but just checking if someone has faced the same error
benjaminverhaegen (Mon, 03 Jul 2017 14:27:10 GMT):
Has joined the channel.
baoyangc (Mon, 03 Jul 2017 14:28:31 GMT):
```(node:22315) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: error trying to ping. Error: Deployed chain-code (0.8.0) is incompatible with client (0.9.0)```
baoyangc (Mon, 03 Jul 2017 14:28:45 GMT):
who have met this error
baoyangc (Mon, 03 Jul 2017 14:28:58 GMT):
who has met this error?
benjaminverhaegen (Mon, 03 Jul 2017 14:29:53 GMT):
Hello, i'm trying to generate a skeleton business network but when i use the command "yo hyperledger-composer" i only see the following options to generate: CLI,Angular,Business Network, Model. How can i get to see the normal output? Like the output you see in the tutorial on this site https://hyperledger.github.io/composer/unstable/business-network/bnd-create.html
ShobhanaSundararaman (Mon, 03 Jul 2017 14:48:44 GMT):
@mahoney1 Thanks, I'm able to generate the .bna file now. But I'm getting the below error when trying to deploy to my fabric.
ShobhanaSundararaman (Mon, 03 Jul 2017 14:48:46 GMT):
events.js:141
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:1
Able to generate bna file but while deploying, getting this error
mahoney1 (Mon, 03 Jul 2017 14:48:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vATRDWACoWFz84gCX) @Pere-Lluis when you say 'it' ..you mean you've set the endpoint (as normal) in the docker-compose.yaml file (peer environment CODE_VM_ENDPOINT) ? Yes please post on S/Overflow, and describe your environment / Hyperledger version etc - thanks!
Pere-Lluis (Mon, 03 Jul 2017 14:57:21 GMT):
I did post it
Pere-Lluis (Mon, 03 Jul 2017 14:57:37 GMT):
thanks!
mahoney1 (Mon, 03 Jul 2017 14:58:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3KoAZnJZMuxcZH6CD) @baoyangc looks like your current composer runtime (v.9.0) is running against an earlier deployed chaincode. You will need to teardown the docker Fabric containers and deploy the business network you're working with
baoyangc (Mon, 03 Jul 2017 15:01:35 GMT):
i tried to connection the chaincode with some code from composer-client@0.9.0
but my chaincode is generated by composer@0.8.0
mahoney1 (Mon, 03 Jul 2017 15:10:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=faR8NrQYraEdduisp) @baoyangc see above. you will need to deploy as 0.9.0
baoyangc (Mon, 03 Jul 2017 15:10:29 GMT):
yes
baoyangc (Mon, 03 Jul 2017 15:10:51 GMT):
but i don't how to upgrade it to 0.9.0
baoyangc (Mon, 03 Jul 2017 15:15:41 GMT):
```composer archive create --sourceType dir --sourceName . -a ./dist/bqj.bna
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /Users/baoyangc/code/javascript/BNA/banquanjia
/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Syntax error in file /Users/baoyangc/code/javascript/BNA/banquanjia/node_modules/composer-admin/test/data/businessnetwork/models/carlease.cto. Expected "-->", "default", "o", "optional", "regex", "}", comment, end of line or whitespace but "v" found. Line 26 column 18
at new ModelFile (/usr/local/lib/node_modules/composer-cli/node_modules/composer-common/lib/introspect/modelfile.js:69:23)
at ModelManager.addModelFiles (/usr/local/lib/node_modules/composer-cli/node_modules/composer-common/lib/modelmanager.js:179:29)
at Function.fromDirectory (/usr/local/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkdefinition.js:465:43)
at Function.handler (/usr/local/lib/node_modules/composer-cli/lib/cmds/archive/lib/create.js:80:42)
at Object.module.exports.handler (/usr/local/lib/node_modules/composer-cli/lib/cmds/archive/createCommand.js:31:30)
at Object.self.runCommand (/usr/local/lib/node_modules/composer-cli/node_modules/yargs/lib/command.js:233:22)
at Object.Yargs.self._parseArgs (/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.self.runCommand (/usr/local/lib/node_modules/composer-cli/node_modules/yargs/lib/command.js:204:45)
at Object.Yargs.self._parseArgs (/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.get [as argv] (/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:927:19)```
mahoney1 (Mon, 03 Jul 2017 15:19:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BJHjFSXSBFbiezFjJ) @baoyangc we don't have support for upgrade of the business network from the CLI yet - and changes to the model file are described in the release notes -> https://github.com/hyperledger/composer/releases/tag/v0.9.0 - you can see example CTOs in the sample-networks on github https://github.com/hyperledger/composer-sample-networks/
mahoney1 (Mon, 03 Jul 2017 15:22:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6dW2ZnLarrzr7RK4f) @ShobhanaSundararaman can you create a Stack Overflow issue for this and provide there, a `docker ps -a` listing and your node/npm/docker versions please and thanks!
mahoney1 (Mon, 03 Jul 2017 15:23:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AvbCjmXQL6bhavjoq) @Pere-Lluis thanks..
baoyangc (Mon, 03 Jul 2017 15:24:11 GMT):
@mahoney1 do we have a roadmap for the composer development
baoyangc (Mon, 03 Jul 2017 15:24:12 GMT):
?
Eman0 (Mon, 03 Jul 2017 15:37:58 GMT):
Has joined the channel.
mahoney1 (Mon, 03 Jul 2017 15:40:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=R55mHxXphuWCDuSnJ) @baoyangc these are tracked on Github using Epics -> https://github.com/hyperledger/composer/issues?q=label%3Aepic+is%3Aopen and Stories -> https://github.com/hyperledger/composer/issues?q=label%3A%22user+story%22+is%3Aopen
baoyangc (Mon, 03 Jul 2017 15:42:20 GMT):
thanks
tennenjl (Mon, 03 Jul 2017 15:45:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=koYAAkzdhYLGdqy5x) @davidkel Thanks!
awattez (Mon, 03 Jul 2017 16:00:45 GMT):
Has joined the channel.
mahoney1 (Mon, 03 Jul 2017 16:03:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8bajAyx9btzQQNX7H) @benjaminverhaegen per the example, you select 'Skeleton Business Network' , then your model file (eg. org.acme.biznet.cto) is created in the subdirectory 'models' - to create an archive for deploying its `composer archive create --sourceType dir --sourceName . -a my-network.bna`
baoyangc (Mon, 03 Jul 2017 17:01:49 GMT):
after run composer-rest-server , we got an http server with rest api. through this api, wo can do delete,put operation on an asset. we also can do transaction to change an property of an asset. so when i change a property of an asset with PUT request, does this have difference with do transaction to change a property of this asset
baoyangc (Mon, 03 Jul 2017 17:03:07 GMT):
i think all write operation on state db are an transaction
baoyangc (Mon, 03 Jul 2017 17:03:16 GMT):
isn't it?
mahoney1 (Mon, 03 Jul 2017 17:12:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dhYk869DLiwmKxCDu) @baoyangc yes, ultimately that REST operation results in a blockchain transaction, composer generates the necessary chaincode to be executed on the Hyperledger Fabric blockchain to change the world state.
gen_el (Mon, 03 Jul 2017 17:17:27 GMT):
Hi Guys
gen_el (Mon, 03 Jul 2017 17:18:34 GMT):
How do i define an init function in the logic.js file? The same the gets called when a chain code is instantiated.
gen_el (Mon, 03 Jul 2017 17:18:34 GMT):
How do i define an init function in the logic.js file? The same one that gets called when a chain code is instantiated.
gen_el (Mon, 03 Jul 2017 17:19:51 GMT):
do i just define function init() in logic.js?
davidkel (Mon, 03 Jul 2017 17:42:55 GMT):
@gen_el there is no init facility. Can you provide some more information about why you think you might need one ?
gen_el (Mon, 03 Jul 2017 18:12:03 GMT):
@davidkel I am deploying a chain code on a channel strictly for 2 organisations for control reasons. However, for the chain code to work it requires some state data that will be inserted at deployment time. This data will vary from channel to channel.
gen_el (Mon, 03 Jul 2017 18:13:47 GMT):
@davidkel So how do i get this state data in at any other time except instantiation of the chain code. This data will be pulled from a central configuration mgmt server.
rodders1991 (Mon, 03 Jul 2017 18:28:35 GMT):
Hi guys, trying to connect onto a business network through `ca` but I’m getting the following error:
```
Fatal server error: { Error: error trying login and get user Context. Error: error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:8054]
```
Does this mean that I can’t connect to the `ca` service all together or is it refusing connection based on authentication?
Heres is my `connection.json` for reference:
```
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://localhost:7050"
}
],
"ca": {
"url": "http://localhost:8054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/root/.composer-connection-profiles/test_bpapiv1/credentials",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": "300"
}
```
mahoney1 (Mon, 03 Jul 2017 19:13:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FSa5KHAdAQCffGDJa) @rodders1991 it means nothing is listening on localhost:8054 - is this the port your CA server is listening on? Normally in such a sample connection.json, it is "http://localhost:7054" but you will know better -) - (Also, FYI composer modules should be installed as a non-root user).
szoghybe (Mon, 03 Jul 2017 19:42:15 GMT):
Has joined the channel.
szoghybe (Mon, 03 Jul 2017 19:45:10 GMT):
Hello,
On web page https://github.com/hyperledger/composer if I download the zip and unarchive, in file README.md the following URL does not exist at line 38:
- [Tutorials](https://hyperledger.github.io/composer/tutorials/tutorialindex.html)
What is the correct URL, please?
Thank you.
sstone1 (Mon, 03 Jul 2017 19:59:02 GMT):
@szoghybe the docs are hosted online: https://hyperledger.github.io/composer/tutorials/tutorials.html
szoghybe (Mon, 03 Jul 2017 19:59:29 GMT):
@sstone1 thank you!
sstone1 (Mon, 03 Jul 2017 19:59:39 GMT):
can you raise an issue for the broken link in README.md ?
opiepj (Mon, 03 Jul 2017 20:20:07 GMT):
Hey, is there a strategy for incorporating security policies for our loopback APIs?
opiepj (Mon, 03 Jul 2017 20:22:07 GMT):
Like for JWT
sstone1 (Mon, 03 Jul 2017 20:29:59 GMT):
@opiepj have you seen this guide about enabling REST API authentication?
sstone1 (Mon, 03 Jul 2017 20:30:00 GMT):
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
opiepj (Mon, 03 Jul 2017 20:32:16 GMT):
Yes, but since the example was with OAuth would the same solution apply for JWT?
opiepj (Mon, 03 Jul 2017 20:32:42 GMT):
Hmm okay seems like it wouldn't matter
sstone1 (Mon, 03 Jul 2017 20:34:18 GMT):
there is a passport strategy for JWT, but I haven't seen that anybody has tried it yet
davidkel (Mon, 03 Jul 2017 21:15:18 GMT):
@gen_el One possible approach could be to model an init transaction which can only be called once. You could then create a client application that deploys the business network and then drives the transaction, passing in the data you want.
JohnWhitton (Mon, 03 Jul 2017 21:25:48 GMT):
Hi all can someone point me to the documentation on how to create credentials
JohnWhitton (Mon, 03 Jul 2017 21:25:58 GMT):
Basically I need to create these https://github.com/hyperledger/composer-tools/tree/master/packages/fabric-dev-servers/fabric-scripts/hlfv1/composer/creds
JohnWhitton (Mon, 03 Jul 2017 21:27:42 GMT):
I'm working through this guide
https://hyperledger.github.io/composer/installing/development-tools.html
But have to modify this for our own network and have done a lot of the heavy lifting but need to create the credentials for our network
JohnWhitton (Mon, 03 Jul 2017 21:28:39 GMT):
as when I try
``` composer network deploy -a loyyal-network@0.0.1.bna -p hlfv1 -i PeerAdmin -s randomString```
I get
```
Error: error trying deploy. Error: error trying install chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
```
JohnWhitton (Mon, 03 Jul 2017 21:28:39 GMT):
as when I try
``` composer network deploy -a loyyal-network@0.0.1.bna -p hlfv1 -i PeerAdmin -s randomString```
I get
```
Error: error trying deploy. Error: error trying install chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
```
JohnWhitton (Mon, 03 Jul 2017 21:29:32 GMT):
when I try
JohnWhitton (Mon, 03 Jul 2017 21:29:43 GMT):
`composer network deploy -a loyyal-network@0.0.1.bna -p hlfv1 -i PeerAdmin -s randomString`
JohnWhitton (Mon, 03 Jul 2017 21:29:46 GMT):
I get
JohnWhitton (Mon, 03 Jul 2017 21:30:02 GMT):
`Error: error trying deploy. Error: error trying install chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority`
davidkel (Mon, 03 Jul 2017 21:32:52 GMT):
@JohnWhitton you can import crypto material into your profile defined keyValStore using the `composer identity import` command. More information about the command can be found here https://hyperledger.github.io/composer/reference/composer.identity.import.html
JohnWhitton (Mon, 03 Jul 2017 21:34:33 GMT):
Thanks @davidkel checking it out now
JohnWhitton (Mon, 03 Jul 2017 22:00:40 GMT):
@davidkel Perhaps you can clarify for me
So I'm confused about enrolment secret
I did the identity import using
`# composer identity import -p hlfv1 -u Admin@org1.loyyal.com -c Admin@org1.loyyal.com-cert.pem -k 6fd74882c81552b6672820df32b80711460aaafe6bd4c665918c61ac924cdd63_sk
`
Which added entried into `hfc-key-store/`
I then try and deploy using
`composer network deploy -a loyyal-network@0.0.1.bna -p hlfv1 -i Admin@org1.loyyal.com`
But I don't know what the enrollment secret of the user is?
JohnWhitton (Mon, 03 Jul 2017 22:00:40 GMT):
@davidkel Perhaps you can clarify for me
So I'm confused about enrolment secret
I did the identity import using
`# composer identity import -p hlfv1 -u Admin@org1.loyyal.com -c Admin@org1.loyyal.com-cert.pem -k 6fd74882c81552b6672820df32b80711460aaafe6bd4c665918c61ac924cdd63_sk
`
Which added entries into `hfc-key-store/`
I then try and deploy using
`composer network deploy -a loyyal-network@0.0.1.bna -p hlfv1 -i Admin@org1.loyyal.com`
But I don't know what the enrollment secret of the user is?
JunLi_June (Mon, 03 Jul 2017 22:04:58 GMT):
Has joined the channel.
JohnWhitton (Mon, 03 Jul 2017 22:36:47 GMT):
so `composer identity import` works fine
but I'm not sure what the Enrollment secret is when I
` composer network deploy -p connectionProfileName -a
JohnWhitton (Mon, 03 Jul 2017 23:28:00 GMT):
So have imported the composer identity and am close
Currently when I run
`composer network deploy -a loyyal-network@0.0.1.bna -p hlfv1 -i Admin@org1.loyyal.com -s dummy`
JohnWhitton (Mon, 03 Jul 2017 23:28:20 GMT):
I get `Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]`
JohnWhitton (Mon, 03 Jul 2017 23:29:54 GMT):
checkin ./hfc_keystore/Admin@org1.loyyal.com
I see
_{"name":"Admin@org1.loyyal.com","mspid":"Org1MSP","roles":null,"affiliation":"","enrollmentSecret":"","enrollment_
JohnWhitton (Mon, 03 Jul 2017 23:30:30 GMT):
So the mspid looks good wondering if the roles:null is an issue?
JohnWhitton (Mon, 03 Jul 2017 23:31:29 GMT):
BTW I'm using composer v0.9.0
and fabric x86_64-1.0.0-rc1
JohnWhitton (Mon, 03 Jul 2017 23:31:56 GMT):
@davidkel @sstone1 @dselman ^^ any advice appreciated
JohnWhitton (Tue, 04 Jul 2017 03:00:54 GMT):
Reimported the identity and now getting
`Error: error trying deploy. Error: Failed to deserialize creator identity, err MSP Org1MSP is unknown`
JohnWhitton (Tue, 04 Jul 2017 03:05:08 GMT):
Also below is my peer0 definition from docker-compose-base.yaml
in case I have the volumes wrong
```
peer1.org1.loyyal.com:
container_name: peer1.org1.loyyal.com
extends:
file: peer-base.yaml
service: peer-base
environment:
- CORE_PEER_ID=peer1.org1.loyyal.com
- CORE_PEER_ADDRESS=peer1.org1.loyyal.com:7051
- CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.org1.loyyal.com:7051
- CORE_PEER_GOSSIP_BOOTSTRAP=peer0.org1.loyyal.com:7051
- CORE_PEER_LOCALMSPID=Org1MSP
volumes:
- /var/run/:/host/var/run/
- ../crypto-config/peerOrganizations/org1.loyyal.com/peers/peer1.org1.loyyal.com/msp:/etc/hyperledger/fabric/msp
- ../crypto-config/peerOrganizations/org1.loyyal.com/peers/peer1.org1.loyyal.com/tls:/etc/hyperledger/fabric/tls
- ../crypto-config/peerOrganizations/org1.loyyal.com/users:/etc/hyperledger/fabric/msp/users
- ../channel-artifacts:/etc/hyperledger/configtx
ports:
- 8051:7051
- 8053:7053
```
noyonthe1 (Tue, 04 Jul 2017 04:59:07 GMT):
Has joined the channel.
baoyangc (Tue, 04 Jul 2017 06:21:38 GMT):
do we have an api to make transaction with an identity file (cert) which represent a participant?
baoyangc (Tue, 04 Jul 2017 06:48:29 GMT):
request to system ping
```{
"version": "0.9.0",
"participant": null
}```
baoyangc (Tue, 04 Jul 2017 06:51:38 GMT):
i have made request to http://localhost:3000/api/wallets/595b3929aa1c1200141cf64c/identities
and http://localhost:3000/api/wallets/595b3929aa1c1200141cf64c/identities/595b3954aa1c1200141cf64e/setDefault
Pere-Lluis (Tue, 04 Jul 2017 07:07:38 GMT):
Hey @JohnWhitton I'm facing the same problem
Pere-Lluis (Tue, 04 Jul 2017 07:07:44 GMT):
any luck?
Pere-Lluis (Tue, 04 Jul 2017 07:10:52 GMT):
I think it has to do with CORE_PEER_LOCALMSPID="Org1MSP"
Pere-Lluis (Tue, 04 Jul 2017 07:11:57 GMT):
and at least in mine it is not defined in my Peer beforehand (it's is used as a global in the script.sh automatic setup script
wael (Tue, 04 Jul 2017 07:31:20 GMT):
is there any changes in composer 0.9 with this.businessNetworkConnection.getBusinessNetwork().getFactory() ? cause I got an error : TypeError: Cannot read property 'getFactory' of null
Pere-Lluis (Tue, 04 Jul 2017 07:38:46 GMT):
@JohnWhitton I got it working now
dashengSun (Tue, 04 Jul 2017 07:50:26 GMT):
Has joined the channel.
Pere-Lluis (Tue, 04 Jul 2017 07:57:15 GMT):
(@JohnWhitton I sent you how)
davidkel (Tue, 04 Jul 2017 07:57:19 GMT):
@JohnWhitton That error indicates either your channel name is wrong in you connection profile or you haven't created the channel and joined the peers to it
karthikworks (Tue, 04 Jul 2017 07:57:38 GMT):
''': event message must be properly signed by an identity from the same organization as the peer: ''' i am getting this error when i try composer-rest-server... but i was able to deploy without issues...
Pere-Lluis (Tue, 04 Jul 2017 07:57:40 GMT):
yeah that's what happened to me
Pere-Lluis (Tue, 04 Jul 2017 07:57:43 GMT):
david
Pere-Lluis (Tue, 04 Jul 2017 07:58:05 GMT):
Quick question, when we deploy the bna it gets deployed on one peer
Pere-Lluis (Tue, 04 Jul 2017 07:58:13 GMT):
and a docker with it is created
Pere-Lluis (Tue, 04 Jul 2017 07:58:20 GMT):
how can we deploy it to the other peers?
davidkel (Tue, 04 Jul 2017 07:58:40 GMT):
@wael release notes can be found here https://github.com/hyperledger/composer/releases/tag/v0.9.0 note that there are breaking changes
Pere-Lluis (Tue, 04 Jul 2017 07:58:44 GMT):
I tried changing the globals and deploying again but didn't work
Pere-Lluis (Tue, 04 Jul 2017 07:59:11 GMT):
(I have already joined the channel with the rest)
davidkel (Tue, 04 Jul 2017 08:00:52 GMT):
@Pere-Lluis when you deploy it will deploy to the list of peers in your connection profile. A connection profile can contain more than 1 peer definition
Pere-Lluis (Tue, 04 Jul 2017 08:01:21 GMT):
oh okey thanks
Pere-Lluis (Tue, 04 Jul 2017 08:03:39 GMT):
humm should I do it for different MSP ID one at a time?
davidkel (Tue, 04 Jul 2017 08:05:12 GMT):
@karthikworks what version of the composer rest server are you running ? to find out use `npm list -g --depth=0 | grep composer-rest-server`
davidkel (Tue, 04 Jul 2017 08:05:47 GMT):
@Pere-Lluis yes, in a real world example you would only ever deploy to your own organisation's peers
Pere-Lluis (Tue, 04 Jul 2017 08:06:06 GMT):
makes sense, thanks!
VimalkumarNair (Tue, 04 Jul 2017 08:09:16 GMT):
Hello there when i am trying to run hyperledger fabric using " ./startFabric.sh " command i am getting " Couldn't connect to docker daemon at http+docker://localunixsocket - is it running? ", can anyone please help on this....
Pere-Lluis (Tue, 04 Jul 2017 08:09:49 GMT):
I think that belongs to #fabric or #fabric-questions
Pere-Lluis (Tue, 04 Jul 2017 08:10:31 GMT):
oh u mean the startFabric from composer tutorial right? @VimalkumarNair
VimalkumarNair (Tue, 04 Jul 2017 08:11:31 GMT):
@Pere-Lluis yes i am following the composer tutorial..
Pere-Lluis (Tue, 04 Jul 2017 08:11:37 GMT):
https://github.com/docker/compose/issues/1214 @VimalkumarNair
Pere-Lluis (Tue, 04 Jul 2017 08:11:52 GMT):
try with sudo, it solved it for some people
Pere-Lluis (Tue, 04 Jul 2017 08:12:31 GMT):
@davidkel I added the peers but somehow they are not getting the bna deployed
Pere-Lluis (Tue, 04 Jul 2017 08:12:37 GMT):
is there anything else needed?
davidkel (Tue, 04 Jul 2017 08:13:22 GMT):
@Pere-Lluis did the command complete successfully ?
Pere-Lluis (Tue, 04 Jul 2017 08:13:29 GMT):
yes
wael (Tue, 04 Jul 2017 08:13:46 GMT):
@davidkel I read them , there isn't another changes right ?
Pere-Lluis (Tue, 04 Jul 2017 08:14:11 GMT):
@davidkel maybe I have to start over, but it should work even if it's already deployed in one of them right?
davidkel (Tue, 04 Jul 2017 08:14:38 GMT):
@Pere-Lluis I assume the command completed successfully then ?
VimalkumarNair (Tue, 04 Jul 2017 08:14:49 GMT):
@Pere-Lluis Its working for me....thanks:slight_smile:
Pere-Lluis (Tue, 04 Jul 2017 08:15:04 GMT):
@davidkel yep, the usual, command succeded
Pere-Lluis (Tue, 04 Jul 2017 08:15:06 GMT):
and the tick
davidkel (Tue, 04 Jul 2017 08:15:26 GMT):
@Pere-Lluis then the bna has been deployed successfully to those peers.
Pere-Lluis (Tue, 04 Jul 2017 08:15:43 GMT):
even if a docker hasn't been created?
Pere-Lluis (Tue, 04 Jul 2017 08:15:58 GMT):
with the dev-peer1...etc?
davidkel (Tue, 04 Jul 2017 08:16:10 GMT):
@Pere-Lluis yes, when you send a request to those peers, the docker container is then started
Pere-Lluis (Tue, 04 Jul 2017 08:16:39 GMT):
okey, I'll try thanks @davidkel
davidkel (Tue, 04 Jul 2017 08:18:21 GMT):
@wael no other changes that I am aware of, check your cto & transaction logic are valid though as it may be the cause. If it isn't valid and it was the cause then please raise an issue to describe as maybe composer isn't outputting an appropriate error
Pere-Lluis (Tue, 04 Jul 2017 08:19:45 GMT):
@VimalkumarNair You are welcomne!
Pere-Lluis (Tue, 04 Jul 2017 08:20:17 GMT):
@davidkel tried to send a request, worked like a charm, thank you very much
mattalhonte (Tue, 04 Jul 2017 08:23:47 GMT):
I saw that changes were made to Transactions on the network. The former AngularJS app couldn't display those, except with using undocumented features from this awesome dude: https://github.com/ianco/fabric-app/commit/2197afcea0264e706095359d077bdd8cd0978165 Does 0.9 let you view Transactions in the AngularJS app?
jpuentea (Tue, 04 Jul 2017 08:35:50 GMT):
Has joined the channel.
DannyWong (Tue, 04 Jul 2017 08:38:23 GMT):
Has joined the channel.
jpuentea (Tue, 04 Jul 2017 08:39:29 GMT):
Hello, I have a problem while trying to do the developer tutorial. When I execute the command _composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString_ to deploy the business network I have the following error :
jpuentea (Tue, 04 Jul 2017 08:40:32 GMT):
Message Attachments
jpuentea (Tue, 04 Jul 2017 08:40:56 GMT):
Could anybody help me?
camdenT (Tue, 04 Jul 2017 08:41:20 GMT):
Has joined the channel.
mattalhonte (Tue, 04 Jul 2017 08:43:17 GMT):
Do you know if you're using 0.8 or 0.9? There were some breaking changes in 0.9 (released a few days ago) that aren't reflected in the docs yet. I saw that changes were made to Transactions on the network. The former AngularJS app couldn't display those, except with using undocumented features from this awesome dude: https://github.com/ianco/fabric-app/commit/2197afcea0264e706095359d077bdd8cd0978165 Does 0.9 let you view Transactions in the AngularJS app?
mattalhonte (Tue, 04 Jul 2017 08:43:17 GMT):
Do you know if you're using 0.8 or 0.9? There were some breaking changes in 0.9 (released a few days ago) that aren't reflected in the docs yet. https://github.com/hyperledger/composer/releases/tag/v0.9.0
mattalhonte (Tue, 04 Jul 2017 08:43:17 GMT):
@jpuentea Do you know if you're using 0.8 or 0.9? There were some breaking changes in 0.9 (released a few days ago) that aren't reflected in the docs yet. https://github.com/hyperledger/composer/releases/tag/v0.9.0
mattalhonte (Tue, 04 Jul 2017 08:43:19 GMT):
whoops
mattalhonte (Tue, 04 Jul 2017 08:43:44 GMT):
https://github.com/hyperledger/composer/releases/tag/v0.9.0
mattalhonte (Tue, 04 Jul 2017 08:43:49 GMT):
meant to just sent that, heg.
karthikworks (Tue, 04 Jul 2017 08:48:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=D9fCaqrssM53KcASq) @davidkel composer-rest-server version is 0.9.0
jaguarg (Tue, 04 Jul 2017 09:16:33 GMT):
Hi, I am using the `composer-client` nodejs module to build my app. I need the ability to enroll users and . How can I achieve that ? i can sucessfully login as admin , then I need a way to create other identities and add them as participants to my business network . How can I do that ?
jaguarg (Tue, 04 Jul 2017 09:16:33 GMT):
Hi, I am using the `composer-client` nodejs module to build my app. i can sucessfully login as admin , then I need a way to create other identities and add them as participants to my business network . How can I do that ?
mattalhonte (Tue, 04 Jul 2017 09:19:37 GMT):
@jaguarg You have to add them with a request o the REST API, then they'll show up and you'll be able to have them to transactions.
davidkel (Tue, 04 Jul 2017 09:31:18 GMT):
@jpuentea The error means you cannot connect to your fabric. Is it running ? If it is are you running on a provisioned local machine ?
davidkel (Tue, 04 Jul 2017 09:33:30 GMT):
@karthikworks That error can happen is you are running old versions of composer. If you aren't and it looks like you aren't then the userid you have chosen isn't valid to connect to the peer or one of the peers you have defined in your connection profile
uber.twin (Tue, 04 Jul 2017 09:45:09 GMT):
@davidkel hi, are there any ACL capabilities for controlling the access for the bizNetworkConnection.issueIdentity() operation?
sstone1 (Tue, 04 Jul 2017 09:51:31 GMT):
@uber.twin not yet, this is work planned to happen soon under https://github.com/hyperledger/composer/issues/722
sstone1 (Tue, 04 Jul 2017 09:51:47 GMT):
note that the fabric CA has controls over who can issue identities which do apply in the mean time
uber.twin (Tue, 04 Jul 2017 09:53:57 GMT):
ok, I will look into that
uber.twin (Tue, 04 Jul 2017 09:54:20 GMT):
@sstone1 I was asking because I tried to incorporate an apparently inoffensive rule, as bellow
```
rule PartyGuard {
description: "ACL"
participant: "my.Party"
operation: ALL
resource: "my.Party"
action: ALLOW
}
```
uber.twin (Tue, 04 Jul 2017 09:54:59 GMT):
now, my PeerAdmin participant can't call .issueIdentity()
uber.twin (Tue, 04 Jul 2017 09:55:31 GMT):
this is the error message : Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
uber.twin (Tue, 04 Jul 2017 09:57:02 GMT):
any type of asset creation works as before
sstone1 (Tue, 04 Jul 2017 09:57:08 GMT):
PeerAdmin cannot use the CA to issue identities
sstone1 (Tue, 04 Jul 2017 09:57:29 GMT):
you must use the `admin` / `adminpw` ID with the CA to issue identities
Pere-Lluis (Tue, 04 Jul 2017 09:58:58 GMT):
I got the local playground problem where it shows the whale saying Get local Version again
Pere-Lluis (Tue, 04 Jul 2017 09:59:27 GMT):
it may have to do with working with PeerAdmin or something like that
Pere-Lluis (Tue, 04 Jul 2017 09:59:40 GMT):
i got some screenshots of error alerts
Pere-Lluis (Tue, 04 Jul 2017 09:59:45 GMT):
where should I post it?
Pere-Lluis (Tue, 04 Jul 2017 10:00:53 GMT):
Message Attachments
Pere-Lluis (Tue, 04 Jul 2017 10:02:59 GMT):
Message Attachments
Pere-Lluis (Tue, 04 Jul 2017 10:02:59 GMT):
Message Attachments
Pere-Lluis (Tue, 04 Jul 2017 10:03:26 GMT):
does it belong to StackOverflow? or is it more like a bug?
germanhs (Tue, 04 Jul 2017 10:03:42 GMT):
Hey guys the update of the ACL syntax hit me. Could you please help me with the following problem?:
When I use the old syntax the modelbinding validator throws an error (couldnt find namespace ...) so I changed the ACL file to fit the new syntax.
However when using the new syntax I get the following error when running composer network deploy:
ParseException: Expected identifier but "*" found. Line 20 column 46
Is there some update command I am missing?
germanhs (Tue, 04 Jul 2017 10:04:06 GMT):
Because the validator seems to be updated but not my composer network deploy command.
uber.twin (Tue, 04 Jul 2017 10:10:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Hasqs9C2CTaFmGFwa) @sstone1 right, I just verified it. noticed the "admin" party can't deploy a network though(PeerAdmin can) Is there a complete description of the roles assigned for these two participants?
sstone1 (Tue, 04 Jul 2017 10:11:41 GMT):
those are not really participants - they are Fabric IDs with permissions to perform Fabric operations
sstone1 (Tue, 04 Jul 2017 10:11:58 GMT):
PeerAdmin is the administrator of a peer, who is authorized to install and possibly instantiate chaincode
sstone1 (Tue, 04 Jul 2017 10:12:13 GMT):
admin is the default user for a Fabric CA, who is authorized to invoke chaincode
sstone1 (Tue, 04 Jul 2017 10:14:26 GMT):
@Pere-Lluis the error shows that the Fabric CA is not running at `ca.example.com`. is it running? can you see it in the output of `docker ps`?
Pere-Lluis (Tue, 04 Jul 2017 10:14:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kiJ4qGmvTCtCbrrST) @Pere-Lluis It looks like it's using a hlfabric when it should be hlvf1, but I can't acces to the profiles since it says I'm not running it locally
Pere-Lluis (Tue, 04 Jul 2017 10:14:42 GMT):
it's running diferent CA
Pere-Lluis (Tue, 04 Jul 2017 10:15:00 GMT):
ca_peerOrg1
Pere-Lluis (Tue, 04 Jul 2017 10:15:05 GMT):
and ca_peerOrg2
sstone1 (Tue, 04 Jul 2017 10:15:13 GMT):
@germanhs run `composer -v` and see what version is printed out. if it's an old one, uninstall first `npm uninstall -g composer-cli` and then install it again `npm install -g composer-cli`
Pere-Lluis (Tue, 04 Jul 2017 10:15:49 GMT):
oh okey
Pere-Lluis (Tue, 04 Jul 2017 10:15:55 GMT):
I see my problem probably
Pere-Lluis (Tue, 04 Jul 2017 10:16:01 GMT):
my connection profile is wrong
Pere-Lluis (Tue, 04 Jul 2017 10:16:12 GMT):
it has a wrong name for the CA
karthikworks (Tue, 04 Jul 2017 10:16:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=f2KYoux6TKbmyWT47) @davidkel Got fixed, i reinstalled composer-rest-server...
Pere-Lluis (Tue, 04 Jul 2017 10:18:58 GMT):
It still looks for a ca.example.com, is it necessary to be a CA with that name running ffor playground?
Pere-Lluis (Tue, 04 Jul 2017 10:22:09 GMT):
can we change the connection profile it's using by default? maybe that's the problem
Pere-Lluis (Tue, 04 Jul 2017 10:33:24 GMT):
@sstone1 should I post it in StackOverflow instead?
germanhs (Tue, 04 Jul 2017 10:33:25 GMT):
@sstone1 thank you very much, that help is really appreciated. Thanks it worked
sstone1 (Tue, 04 Jul 2017 10:33:52 GMT):
@Pere-Lluis how are you starting playground?
Pere-Lluis (Tue, 04 Jul 2017 10:35:28 GMT):
by docker run --name composer-playground --publish 8080:8080 --detach hyperledger/composer-playground
Pere-Lluis (Tue, 04 Jul 2017 10:35:48 GMT):
since I am using a prestablished fabric let's say
Pere-Lluis (Tue, 04 Jul 2017 10:35:58 GMT):
where I deployed the .bna
Pere-Lluis (Tue, 04 Jul 2017 10:36:27 GMT):
maybe it's just not possible that way?
germanhs (Tue, 04 Jul 2017 10:39:15 GMT):
@sstone1 I am now getting a new error. Did the syntax for transactions also changed? ValidationException: Instance org.acme.tuna.transactions.CreateTuna#40087d3c-beed-4225-8043-9746d3069733 missing required field transactionId. The transaction model only has the fields: txId, serialnum, productname. there isnt even a field named transactionId,
sstone1 (Tue, 04 Jul 2017 10:40:33 GMT):
@Pere-Lluis you may just need to clear your browser local storage, which should wipe any old connection profiles you have in the browser
sstone1 (Tue, 04 Jul 2017 10:40:42 GMT):
@germanhs how are you creating this transaction?
germanhs (Tue, 04 Jul 2017 10:41:18 GMT):
@sstone1 via command line
germanhs (Tue, 04 Jul 2017 10:41:43 GMT):
its a bash script which generates test data after deploying the network. It worked before but now I got this error.
germanhs (Tue, 04 Jul 2017 10:42:01 GMT):
So no browser storage as this script runs on the ubuntu VM of the rest server
rerngrit (Tue, 04 Jul 2017 10:42:42 GMT):
Has joined the channel.
sstone1 (Tue, 04 Jul 2017 10:43:18 GMT):
can you paste in the definition of `CreateTuna` ?
germanhs (Tue, 04 Jul 2017 10:43:32 GMT):
transaction CreateTuna identified by txId {
o String txId
o String serialnumber default = "0001"
o String productName
}
sstone1 (Tue, 04 Jul 2017 10:43:52 GMT):
right - you need to remove the `identified by txId` and the `o String txId` if you are using v0.9.0
germanhs (Tue, 04 Jul 2017 10:44:17 GMT):
ah okay but only for transactions?
sstone1 (Tue, 04 Jul 2017 10:44:21 GMT):
and events
germanhs (Tue, 04 Jul 2017 10:44:24 GMT):
assets and participants remain the same?
sstone1 (Tue, 04 Jul 2017 10:44:29 GMT):
correct
germanhs (Tue, 04 Jul 2017 10:44:30 GMT):
ah okay perfect thanks sttone
sstone1 (Tue, 04 Jul 2017 10:44:34 GMT):
np
mindraker (Tue, 04 Jul 2017 10:45:29 GMT):
Has joined the channel.
Pere-Lluis (Tue, 04 Jul 2017 10:51:20 GMT):
@sstone1 you were right, local storage problem
Pere-Lluis (Tue, 04 Jul 2017 10:51:23 GMT):
thank you
Pere-Lluis (Tue, 04 Jul 2017 10:51:35 GMT):
now it shows the connection profiles option
Pere-Lluis (Tue, 04 Jul 2017 10:52:32 GMT):
but i gives me a problem with the keystore path
Pere-Lluis (Tue, 04 Jul 2017 10:53:38 GMT):
it's a path problem, it should be easy to solve
baoyangc (Tue, 04 Jul 2017 10:56:05 GMT):
can enrollmentID include admin?
baoyangc (Tue, 04 Jul 2017 10:57:55 GMT):
i added an participant , and issue an identity to it with `composer identity issue -p hlfv1 -n 'banquanjia' -i admin -s 'adminpw' -u chai1Admin -a "org.bqj.cn.BanquanjiaAdmin#chai1Admin"`
baoyangc (Tue, 04 Jul 2017 10:58:39 GMT):
but when i make ping with chaiAdmin, it response me that "role" is null
baoyangc (Tue, 04 Jul 2017 11:01:43 GMT):
the command line response is ``` composer network ping -p hlfv1 -n 'banquanjia' -i chai2Admin -s ePZuyomuRRPQ
The connection to the network was successfully tested: banquanjia
version: 0.9.0
participant:
baoyangc (Tue, 04 Jul 2017 11:02:14 GMT):
`composer identity issue -p hlfv1 -n 'banquanjia' -i admin -s 'adminpw' -u chai2Admin -a "org.bqj.cn.BanquanjiaAdmin#chai2Admin"`
sstone1 (Tue, 04 Jul 2017 11:02:46 GMT):
@baoyangc not at the moment; we're working on removing that limitation
baoyangc (Tue, 04 Jul 2017 11:03:14 GMT):
what's the limitation?
Pere-Lluis (Tue, 04 Jul 2017 11:05:45 GMT):
@sstone1 to sum up, I don't know if this is expected behavior, but if you have a wrong connection profile in local storage and it tries to connect and fails, the composer playground shows the Get Local Version instead of the globe, and then it doens't let you change the profile unless you clear storage
Pere-Lluis (Tue, 04 Jul 2017 11:06:03 GMT):
it's not a big deal, but maybe confusing for beginners like me
sstone1 (Tue, 04 Jul 2017 11:06:41 GMT):
yeah, it's not ideal - can you raise an issue on GitHub for it? you should be able to repair the connection profile in order to connect
sstone1 (Tue, 04 Jul 2017 11:07:04 GMT):
@baoyangc any IDs with `admin` in (case insensitive) get treated as a "superuser"
sstone1 (Tue, 04 Jul 2017 11:07:19 GMT):
it will be fixed under: https://github.com/hyperledger/composer/issues/722
baoyangc (Tue, 04 Jul 2017 11:08:42 GMT):
ok,i'll try
JonathanTan (Tue, 04 Jul 2017 11:10:28 GMT):
Hi everyone, anyone knows what's the default debugging mode stated in https://hyperledger.github.io/composer/problems/diagnostics.html ? I am trying to do a console.log() but docker containers don't seem to be printing out anything
Pere-Lluis (Tue, 04 Jul 2017 11:18:52 GMT):
@sstone1 added a issue in Github, tried my best to describe it as it's the first time I add one
Pere-Lluis (Tue, 04 Jul 2017 11:18:58 GMT):
hope it's understandable
sstone1 (Tue, 04 Jul 2017 11:19:03 GMT):
thanks @Pere-Lluis !
Pere-Lluis (Tue, 04 Jul 2017 11:49:27 GMT):
I don't understand completely how the CA works, but when you issue an identity it uses the CA of that Org right?
VimalkumarNair (Tue, 04 Jul 2017 11:49:56 GMT):
Hello there, i am trying to deploy .bna file to running Hyperledger Fabric. But i am getting the following error....
Pere-Lluis (Tue, 04 Jul 2017 11:50:06 GMT):
Cause I'm getting a Error: fabric-ca request register failed with errors [[{"code":0,"message":"CA 'ca_peerOrg1' does not exist"}]] but that's the docker I have running for that Org, peerOrg1, and it shows if I do a docker ps
Pere-Lluis (Tue, 04 Jul 2017 11:50:59 GMT):
@VimalkumarNair maybe I can help, I got many errors due to details I didn't setup right
Pere-Lluis (Tue, 04 Jul 2017 11:51:08 GMT):
which error do you get?
VimalkumarNair (Tue, 04 Jul 2017 11:53:51 GMT):
Message Attachments
VimalkumarNair (Tue, 04 Jul 2017 11:53:57 GMT):
Note that i have composer version 0.9 and docker version 17.03.1-ce
VimalkumarNair (Tue, 04 Jul 2017 11:56:56 GMT):
am using hyperledger fabric version 1...please help on this
Pere-Lluis (Tue, 04 Jul 2017 12:01:53 GMT):
have you started the channel?
davidkel (Tue, 04 Jul 2017 12:02:26 GMT):
@Pere-Lluis that error states that you have connected to a ca, but the name you have specified in the connection profile is not known to that ca server. You need to make sure the name you give in the connection profile is the name registered with that ca. The names registered with the CA are part of the CA configuration you specified
Pere-Lluis (Tue, 04 Jul 2017 12:03:08 GMT):
@davidkel Thanks david, but the name has to be the same everywhere right?
Pere-Lluis (Tue, 04 Jul 2017 12:03:22 GMT):
the connection profile has the same name as the container
Pere-Lluis (Tue, 04 Jul 2017 12:03:40 GMT):
or is it another name it references to?
davidkel (Tue, 04 Jul 2017 12:04:09 GMT):
The container name is not the name registered to the CA. Your CA configuration will have defined 1 or more names for that CA Server
Pere-Lluis (Tue, 04 Jul 2017 12:04:12 GMT):
@VimalkumarNair I had a similar problem and it was due to not having properly started the channel
Pere-Lluis (Tue, 04 Jul 2017 12:04:39 GMT):
Oh okey, and where is that CA configuration defined?
Pere-Lluis (Tue, 04 Jul 2017 12:05:12 GMT):
in the yaml?
davidkel (Tue, 04 Jul 2017 12:05:37 GMT):
That really depends on how you run the CA. Environment variables can define CA configuration as well as a specific CA yaml file
Pere-Lluis (Tue, 04 Jul 2017 12:05:39 GMT):
like this: - FABRIC_CA_SERVER_CA_NAME=ca-org1 ?
davidkel (Tue, 04 Jul 2017 12:06:06 GMT):
Yep, thats an environment variable for the CA
Pere-Lluis (Tue, 04 Jul 2017 12:06:08 GMT):
I think it's there, thank you, I confused the name of the server with the conainers
Pere-Lluis (Tue, 04 Jul 2017 12:06:15 GMT):
will try now, thank you
Pere-Lluis (Tue, 04 Jul 2017 12:07:31 GMT):
worked! (auth problem now... )
Pere-Lluis (Tue, 04 Jul 2017 12:07:41 GMT):
thank you very much!
aldredb (Tue, 04 Jul 2017 12:40:33 GMT):
Has joined the channel.
aldredb (Tue, 04 Jul 2017 12:45:42 GMT):
hi guys, just started exploring composer. i understand that that composer-rest-server uses the loopback framework to expose rest APIs automatically. in loopback framework we can publish customized APIs (via remote methods) and/or add additional logic to existing methods by using remote hooks. may i know how we do this in the context of composer-rest-server?
jellevdp (Tue, 04 Jul 2017 13:22:26 GMT):
Has joined the channel.
coder-ajay (Tue, 04 Jul 2017 13:25:42 GMT):
Has joined the channel.
coder-ajay (Tue, 04 Jul 2017 13:27:23 GMT):
Hi, while running the command ./startFabric.sh I am getting error:
ERROR: for orderer.example.com Cannot start service orderer.example.com: Mounts denied:
The paths:
/users/…../fabric-scripts/hlfv1/composer/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com
/users/…../fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com
/users/…../fabric-scripts/hlfv1/composer
/users/…../fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com
are not shared from OS X and are not known to Docker.
You can configure shared paths from Docker -> Preferences... -> File Sharing
/Users is already added in said location. Please suggest.
coder-ajay (Tue, 04 Jul 2017 13:27:23 GMT):
@sstone1 1 Hi, while running the command (installing for the first time) ./startFabric.sh I am getting error:
ERROR: for orderer.example.com Cannot start service orderer.example.com: Mounts denied:
The paths:
/users/…../fabric-scripts/hlfv1/composer/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com
/users/…../fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com
/users/…../fabric-scripts/hlfv1/composer
/users/…../fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com
are not shared from OS X and are not known to Docker.
You can configure shared paths from Docker -> Preferences... -> File Sharing
/Users is already added in said location. Please suggest.
coder-ajay (Tue, 04 Jul 2017 13:27:23 GMT):
@sstone1 : while running ./startFabric.sh, errors are thrown asking to add few URLs in the composer folder to docker preferences. Docker preferences already have /Users added and all these URLs are present in /users folder. Earlier steps worked fine. Can you please suggest? Only difference is the git version.. i am using the latest one and not 2.9 as suggested in installation process.
coder-ajay (Tue, 04 Jul 2017 13:27:23 GMT):
@sstone1 : while running ./startFabric.sh, errors are thrown asking to add few URLs in the composer folder to docker preferences. Docker preferences already have /Users added and all these URLs are present in /users folder. Earlier steps worked fine. Can you please suggest? Only difference is the git version.. i am using the latest one and not 2.9 as suggested in installation process.
coder-ajay (Tue, 04 Jul 2017 13:27:23 GMT):
@sstone1 : while running ./startFabric.sh, errors are thrown asking to add few URLs in the composer folder to docker preferences. Docker preferences already have /Users added and all these URLs are present in /users folder. Earlier steps worked fine. Can you please suggest? Only difference is the git version.. i am using the latest one and not 2.9 as suggested in installation process.
coder-ajay (Tue, 04 Jul 2017 13:27:23 GMT):
@sstone1 : while running ./startFabric.sh, errors are thrown asking to add few URLs in the composer folder to docker preferences. Docker preferences already have /Users added and all these URLs are present in /users folder. Earlier steps worked fine. Can you please suggest? Only difference is the git version.. i am using the latest one and not 2.9 as suggested in installation process.
coder-ajay (Tue, 04 Jul 2017 13:27:23 GMT):
@sstone1 : while running ./startFabric.sh, errors are thrown asking to add few URLs in the composer folder to docker preferences. Docker preferences already have /Users added and all these URLs are present in /users folder. Earlier steps worked fine. Can you please suggest? Only difference is the git version.. i am using the latest one and not 2.9 as suggested in installation process.
uber.twin (Tue, 04 Jul 2017 13:28:51 GMT):
@sstone1 @davidkel hi, is there a dedicate method for cleaning up a registry?
uber.twin (Tue, 04 Jul 2017 13:29:28 GMT):
something like the code bellow, times out
uber.twin (Tue, 04 Jul 2017 13:29:28 GMT):
something like the code below, times out
uber.twin (Tue, 04 Jul 2017 13:29:32 GMT):
```return registry.resolveAll()
.then((objects) => {
return registry.removeAll(objects);
});```
jellevdp (Tue, 04 Jul 2017 13:51:19 GMT):
Hi - I'm struggling a bit with querying chaincode that I have created with composer and could use some help or a good example (on the github all the query examples seem to be deleted?). I'm running HL v0.6 and have a very simple smart contract with just one type of asset with one attribute called value that I want to store. Going over the docs only shows queries in a HLFv1 runtime. What is the right way to do this with composer & HL v0.6 ? Are there any examples available?
jellevdp (Tue, 04 Jul 2017 13:52:32 GMT):
and.. without using the composer REST server
sstone1 (Tue, 04 Jul 2017 13:57:58 GMT):
@uber.twin you don't want to use `resolveAll`, try `getAll` instead
sstone1 (Tue, 04 Jul 2017 13:58:51 GMT):
@jellevdp no, you can only query assets by their ID when using Composer with Fabric v0.6. The complex query functionality requires a backend data store that supports queries, in Fabric v1.0 this is CouchDB.
sstone1 (Tue, 04 Jul 2017 13:59:05 GMT):
your only other option is to do a `getAll` and do the filtering client side
uber.twin (Tue, 04 Jul 2017 14:00:14 GMT):
@sstone1 you are right, when using getAll, it doesn't time out
uber.twin (Tue, 04 Jul 2017 14:00:21 GMT):
thank you
sstone1 (Tue, 04 Jul 2017 14:00:25 GMT):
np
jellevdp (Tue, 04 Jul 2017 14:00:41 GMT):
@sstone1 this would be in the logic.js file like so:
```
function getAllAssets(tx) {
return getAssetRegistry('io.unchain.demo.Asset')
.then(function (assetRegistry) {
return assetRegistry.getAll();
})
}
```
Pere-Lluis (Tue, 04 Jul 2017 14:01:12 GMT):
I'm still struggling with playground in Local Version trying to connect to a running Connection Profile. It asks me for an identity when I try to use the profile, but no matter which one (admin:adminpw, PeerAdmin:password or one I created with a Participant) I use, it doesn't work
Pere-Lluis (Tue, 04 Jul 2017 14:01:56 GMT):
It gives me a:
Error: error trying login and get user Context. Error: error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
sstone1 (Tue, 04 Jul 2017 14:02:50 GMT):
@jellevdp yes, that's it. is that in a transaction processor function though? transaction processor functions cannot return data back to the client.
sstone1 (Tue, 04 Jul 2017 14:03:10 GMT):
or are you using the result from elsewhere in the transaction processor function?
sstone1 (Tue, 04 Jul 2017 14:03:58 GMT):
@Pere-Lluis aren't you using Playground in a Docker container? in which case `localhost` is the Playground Docker container, not your host machine - you need to use the hostname/IP address of the Fabric CA Docker container that the Playground Docker container can access
jellevdp (Tue, 04 Jul 2017 14:04:36 GMT):
but then, how would I call this transaction with a regular hfc client ?
sstone1 (Tue, 04 Jul 2017 14:05:22 GMT):
you can do, but you're just making things hard for yourself - use the `composer-client` library to interact with the deployed business network
Pere-Lluis (Tue, 04 Jul 2017 14:07:45 GMT):
@sstone1 You mean using 127.0.0.1 instead of localhost?
sstone1 (Tue, 04 Jul 2017 14:08:06 GMT):
127.0.0.1 and localhost are the same thing
sstone1 (Tue, 04 Jul 2017 14:08:16 GMT):
you need to find the hostname/IP address of the Fabric CA Docker container
Pere-Lluis (Tue, 04 Jul 2017 14:08:41 GMT):
okey... Sorry my docker knowledge is limited
Pere-Lluis (Tue, 04 Jul 2017 14:08:53 GMT):
I'll try to look for it, thanks
jellevdp (Tue, 04 Jul 2017 14:08:59 GMT):
@sstone1 sry - connection is a bit messed up so some message come through and others not. That's what I was wondering.. whether the transactions defined there could actually return data. I understand that there are easier ways of doing this with composer, but in the architecture we're working with (for a demo) we only use composer to deploy the chaincode and do invocations and queries with an hfc client. I'm considering now to use the fabric-boilerplate instead to and do a query transaction the 'old fashioned way'. Thanks for the help though Simon.
jellevdp (Tue, 04 Jul 2017 14:10:41 GMT):
does make me wonder how far you're seeing composer go in terms of functionality - because in my mind it's perfect for creating the chaincode and defining the business network, but now it's also taking on functionality that requires it to run in between the client and blockchain at all times?
sstone1 (Tue, 04 Jul 2017 14:11:45 GMT):
The Composer client is a wrapper around the Fabric SDK that makes it a lot easier to consume and reduces the workload for the client application developer
sstone1 (Tue, 04 Jul 2017 14:12:14 GMT):
The Composer REST API builds on the Composer client to make it easy for anyone with a REST client to interact with a business network
sstone1 (Tue, 04 Jul 2017 14:12:30 GMT):
Our aim is to make the building of the whole Blockchain solution simpler and faster, not just the small bit in the middle
uber.twin (Tue, 04 Jul 2017 14:12:45 GMT):
@sstone1 sorry to keep bothering you with this, it seems now I'm getting an error when trying to issue an identity, even when connecting with the "admin" user, here is the CA log:
```
2017/07/04 14:06:54 [DEBUG] Received request
POST /api/v1/register
Authorization: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUI3VENDQVpTZ0F3SUJBZ0lVSlpjWTQ4bTVJOUYzM3lOV21aK1g2dHJ2VW5Vd0NnWUlLb1pJemowRUF3SXcKY0RFTE1Ba0dBMVVFQmhNQ1ZWTXhFekFSQmdOVkJBZ1RDa05oYkdsbWIzSnVhV0V4RmpBVUJnTlZCQWNURFZOaApiaUJHY21GdVkybHpZMjh4R1RBWEJnTlZCQW9URUc5eVp6RXVaWGhoYlhCc1pTNWpiMjB4R1RBWEJnTlZCQU1UCkVHOXlaekV1WlhoaGJYQnNaUzVqYjIwd0hoY05NVGN3TnpBME1UTTBNakF3V2hjTk1UZ3dOekEwTVRNME1qQXcKV2pBUU1RNHdEQVlEVlFRREV3VmhaRzFwYmpCWk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkpyYgpGck5Uc1FmUkpWQURoRW11Z25kN2U4bTNwUE9YVm41QXdWYTRncHBDb2dlR1lsZndXK1lMT0hjM1JjL1dGb2hHCjBSUGVNWVNrZXNWODBOelNKNVdqYkRCcU1BNEdBMVVkRHdFQi93UUVBd0lDQkRBTUJnTlZIUk1CQWY4RUFqQUEKTUIwR0ExVWREZ1FXQkJUakNTTmpaVTRmcno3T1FPUUVGYWw5VTg3NGxUQXJCZ05WSFNNRUpEQWlnQ0NpTGE4MQpheXFyVjVMcVUrTmZadnpPOGRmeHFpczZLNUxiKy9scVJJNmlhakFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUFWCmJzRFZDUllOK2ZNTTFDbnJpTzhxbU0vM0lRZ0JhZHdKMVFrS3gyTXlTZ0lnQVJSaFFpRStiT3lwbno1UExPajgKOCtsandrRkpuMjEwb0YvenhoNDRBK0E9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K.MEUCIQDyOWx+k01gWmU2JJLExHq8irBFDKa4zOOSK8pv+O+hJgIgcuwCl9CFIzUZGhcHCZBOOaKbd89F6ZJIm//P8T2KSR0=
{"id":"FREEBEBBXXX","type":"client","affiliation":"org1","max_enrollments":0,"attrs":[],"caName":"ca.example.com"}
2017/07/04 14:06:54 [DEBUG] Directing traffic to CA ca.example.com
2017/07/04 14:06:54 [DEBUG] Checking for revocation/expiration of certificate owned by 'admin'
2017/07/04 14:06:54 [DEBUG] DB: Get certificate by serial (259718e3c9b923d177df2356999f97eadaef5275) and aki (a22daf356b2aab5792ea53e35f66fccef1d7f1aa2b3a2b92dbfbf96a448ea26a)
2017/07/04 14:06:54 [ERROR] No certificates found for provided serial and aki
```
sstone1 (Tue, 04 Jul 2017 14:15:04 GMT):
i've not seen that error before - i think i'd have to defer to @davidkel on that one, or you might need to ask in #fabric-ca
uber.twin (Tue, 04 Jul 2017 14:17:06 GMT):
alright, thank you
Pere-Lluis (Tue, 04 Jul 2017 14:17:55 GMT):
@sstone1 If I get a Error: error trying to list instantiated chaincodes. Error: chaincode error (status: 500, message: Authorization for GETCHAINCODES on channel getchaincodes has been denied with error Failed verifying that proposal's creator satisfies local MSP principal during channelless check policy with policy [Admins]: [This identity is not an admin])
Pere-Lluis (Tue, 04 Jul 2017 14:18:20 GMT):
does it mean the admin is not correct? Isn't admin:adminpw an Admin?
Pere-Lluis (Tue, 04 Jul 2017 14:18:42 GMT):
(By the way thanks again, it worked changing the IP)
sstone1 (Tue, 04 Jul 2017 14:28:28 GMT):
great!
sstone1 (Tue, 04 Jul 2017 14:28:36 GMT):
admin:adminpw is not a peer admin or a channel admin
sstone1 (Tue, 04 Jul 2017 14:29:12 GMT):
i'm not really sure what kind of admin they are "officially" - but they are the first user defined in the CA, and they have the power to create other users on the CA
davidkel (Tue, 04 Jul 2017 14:36:00 GMT):
@uber.twin I would say that you have restarted your ca server but have left the credentials for admin obtained from the previous run of the ca server in your keyValStore. Depending on how the ca server is configured every restart of the server creates the admin id from scratch giving it a new certificate and keystore. This is how our dev server is configured and I am guessing that is how your ca server is configured
baoyangc (Tue, 04 Jul 2017 14:37:38 GMT):
admin:adminpw is configured when the fabric-ca is started
baoyangc (Tue, 04 Jul 2017 14:38:21 GMT):
`fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/a22daf356b2aab5792ea53e35f66fccef1d7f1aa2b3a2b92dbfbf96a448ea26a_sk -b admin:adminpw -d`
uber.twin (Tue, 04 Jul 2017 14:41:58 GMT):
@davidkel you are right, I guess that's what happened. After I cleared my .hfc-key-store folder and ran the createComposerProfile, it worked again.
however, It seems strage that I could use "admin" to populate registries but not to issue identities
Pere-Lluis (Tue, 04 Jul 2017 14:44:19 GMT):
@baoyangc @sstone1 yeah, I saw that admin:adminpw is defined in the CA, but then I have no idea what should I use to be able to get Playground working
davidkel (Tue, 04 Jul 2017 14:44:33 GMT):
@uber.twin In the real world CA's would not regen their bootstrap ids on restart :-)
Pere-Lluis (Tue, 04 Jul 2017 14:46:12 GMT):
cause I get this when using the running connection profile:
Pere-Lluis (Tue, 04 Jul 2017 14:46:24 GMT):
Message Attachments
baoyangc (Tue, 04 Jul 2017 14:47:00 GMT):
i didn't use playground
baoyangc (Tue, 04 Jul 2017 14:47:54 GMT):
i recommend just use composer-rest-server with github oauth
Pere-Lluis (Tue, 04 Jul 2017 14:48:12 GMT):
I know I can use the restAPI, but I wanted to see if I could get local Playground working with my running Fabric with deployed bna
Pere-Lluis (Tue, 04 Jul 2017 14:48:46 GMT):
yes, that's what I use
Pere-Lluis (Tue, 04 Jul 2017 14:48:54 GMT):
with google oauth
Pere-Lluis (Tue, 04 Jul 2017 14:48:58 GMT):
thanks anyway
Pere-Lluis (Tue, 04 Jul 2017 14:49:46 GMT):
maybe I should leave it and try again when the new version of playground comes
Pere-Lluis (Tue, 04 Jul 2017 14:50:01 GMT):
with the changes on profiels and stuff
davidkel (Tue, 04 Jul 2017 14:58:39 GMT):
@Pere-Lluis This error happens because you have started Playground but you haven't cleaned out your local storage and so whatever identity you have switched to it has remembered. Unfortunately when playground starts it attempts to check the fabric to see if it needs to deploy but to do that requires a different identity to the one it is currently trying with
Pere-Lluis (Tue, 04 Jul 2017 15:02:12 GMT):
@davidkel Okey, but it asks me for a identity before giving me that error
Pere-Lluis (Tue, 04 Jul 2017 15:03:17 GMT):
and gives me a different error whether I type an existing one or a non existing one so it is using the current identity
Pere-Lluis (Tue, 04 Jul 2017 15:03:27 GMT):
but it's alright, I'll move on for now
davidkel (Tue, 04 Jul 2017 15:06:33 GMT):
@Pere-Lluis You need to use the id that you used to deploy a business network, but if you are running playground in a docker container then you won't have that id imported into the container filesystem
MohammedAhmed (Tue, 04 Jul 2017 15:07:11 GMT):
Has joined the channel.
Pere-Lluis (Tue, 04 Jul 2017 15:07:21 GMT):
@davidkel Yes, that looks like the problem
MohammedAhmed (Tue, 04 Jul 2017 15:07:26 GMT):
hi everyone!
Pere-Lluis (Tue, 04 Jul 2017 15:07:40 GMT):
But that's the way of running it right?
Pere-Lluis (Tue, 04 Jul 2017 15:07:50 GMT):
anyway I have a more conceptual question, when you use the composer-rest-server, to which peer is it making the calls? Any in the connection profile?
Pere-Lluis (Tue, 04 Jul 2017 15:07:56 GMT):
hi there!
MohammedAhmed (Tue, 04 Jul 2017 15:08:24 GMT):
I have a question about fabric can I create my own payment system over it ? thanks in advance
Pere-Lluis (Tue, 04 Jul 2017 15:09:13 GMT):
well, I'm sure you could, but that's a too generic question
Pere-Lluis (Tue, 04 Jul 2017 15:09:34 GMT):
maybe try in #fabric or #general ?
MohammedAhmed (Tue, 04 Jul 2017 15:09:55 GMT):
maybe it looks like a cryptocurrency I just want to manage users access and transactions thats all
Pere-Lluis (Tue, 04 Jul 2017 15:10:36 GMT):
U recommend you to use the playground examples to begin with
Pere-Lluis (Tue, 04 Jul 2017 15:10:45 GMT):
https://hyperledger.github.io/composer/installing/getting-started-with-playground.html
Pere-Lluis (Tue, 04 Jul 2017 15:11:01 GMT):
It will give you an idea of what you can achive
MohammedAhmed (Tue, 04 Jul 2017 15:11:05 GMT):
thanks for your help
Pere-Lluis (Tue, 04 Jul 2017 15:11:21 GMT):
you're welcome
MohammedAhmed (Tue, 04 Jul 2017 15:12:04 GMT):
can you help where I can find more info about licencing to uses fabric ?
Pere-Lluis (Tue, 04 Jul 2017 15:12:41 GMT):
oh, I have no idea about that, but since it's an open source project I'm sure you can use it
Pere-Lluis (Tue, 04 Jul 2017 15:13:14 GMT):
but then again I think you will find more answers in #general
Pere-Lluis (Tue, 04 Jul 2017 15:13:22 GMT):
about that
MohammedAhmed (Tue, 04 Jul 2017 15:13:39 GMT):
thanks pere :)
Pere-Lluis (Tue, 04 Jul 2017 15:13:45 GMT):
or #fabric, I'm not sure
davidkel (Tue, 04 Jul 2017 15:16:22 GMT):
@Pere-Lluis Requests are sent to all peers defined in the connection profile, that applies to all composer services including the rest server
gen_el (Tue, 04 Jul 2017 15:20:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bX92injHzCKnM74AB) @davidkel I guess that should do. Thanks
Pere-Lluis (Tue, 04 Jul 2017 15:24:21 GMT):
@davidkel and the Key Value Store Directory is stored in the Docker file in Local Playground?
davidkel (Tue, 04 Jul 2017 15:26:02 GMT):
@Pere-Lluis Yes the KeyValStore directory will be in the Container filesystem
Pere-Lluis (Tue, 04 Jul 2017 15:26:31 GMT):
I think that was my problem, it didn't have the proper keys there
Pere-Lluis (Tue, 04 Jul 2017 15:26:37 GMT):
I'll check tomorrow, thanks!
coder-ajay (Tue, 04 Jul 2017 15:45:37 GMT):
@sstone1 : while running ./startFabric.sh, errors are thrown asking to add few URLs from the composer folder to docker preferences. Docker preferences already have /Users added and all these URLs are present in /users folder. Earlier steps worked fine. Can you please suggest? Only difference is the git version.. i am using the latest one and not 2.9 as suggested in installation process. Is the git version causing problem?
coder-ajay (Tue, 04 Jul 2017 15:47:18 GMT):
i am installing this for the first time .. ./downloadFabric.sh went fine
sstone1 (Tue, 04 Jul 2017 15:50:31 GMT):
@coder-ajay please paste in the errors. which tutorial are you following?
coder-ajay (Tue, 04 Jul 2017 15:52:21 GMT):
URL: https://hyperledger.github.io/composer/installing/installing-index.html
coder-ajay (Tue, 04 Jul 2017 15:53:19 GMT):
Error:
ERROR: for orderer.example.com Cannot start service orderer.example.com: Mounts denied:
The paths:
/users/…../fabric-scripts/hlfv1/composer/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com
/users/…../fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com
/users/…../fabric-scripts/hlfv1/composer
/users/…../fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com
are not shared from OS X and are not known to Docker.
You can configure shared paths from Docker -> Preferences... -> File Sharing
coder-ajay (Tue, 04 Jul 2017 15:53:56 GMT):
All the URLs mentioned in error are from /users folder ... which is present in the docker > preferences > file sharing by default
sstone1 (Tue, 04 Jul 2017 15:54:18 GMT):
can you run
sstone1 (Tue, 04 Jul 2017 15:54:20 GMT):
`echo $HOME`
sstone1 (Tue, 04 Jul 2017 15:54:23 GMT):
and
sstone1 (Tue, 04 Jul 2017 15:54:28 GMT):
`cd ~ && pwd`
coder-ajay (Tue, 04 Jul 2017 15:55:37 GMT):
echo $home gives /Users/admin
sstone1 (Tue, 04 Jul 2017 15:55:50 GMT):
in the errors above the path has a lower case u
sstone1 (Tue, 04 Jul 2017 15:56:00 GMT):
i mean `/users` when it should be `/Users`
sstone1 (Tue, 04 Jul 2017 15:56:18 GMT):
the mac filesystem is annoyingly case insenstive
sstone1 (Tue, 04 Jul 2017 15:56:31 GMT):
so if you manually did `cd /users/...` that might be the cause of the problem
coder-ajay (Tue, 04 Jul 2017 15:56:52 GMT):
ok. let me try.
coder-ajay (Tue, 04 Jul 2017 16:02:13 GMT):
@sstone1 : Yes.. it worked.. thanks for the solution.
sstone1 (Tue, 04 Jul 2017 16:06:26 GMT):
np
JunLi_June (Tue, 04 Jul 2017 17:08:44 GMT):
Hihi~I would like to install the Composer development environment to build up my own website, and I'm using win10 64bit. But I checked the prerequisites, windows is not on the operating system list?
jellevdp (Tue, 04 Jul 2017 17:28:07 GMT):
Hi - is there a specific reason why composer-client can not add a connection profile to the profile store (only admin)?
JunLi_June (Tue, 04 Jul 2017 17:29:10 GMT):
Message Attachments
JunLi_June (Tue, 04 Jul 2017 17:29:11 GMT):
And one more question, I have done all the prerequisites, and tried to follow the instruction to install composer-cli via docker. But it threw a lot of warnings and errors like below, could anyone help?
JunLi_June (Tue, 04 Jul 2017 19:11:25 GMT):
And now I'm trying the local playground, the result as below, and I can not access it via http://localhost:8080.
JunLi_June (Tue, 04 Jul 2017 19:11:35 GMT):
PeerAdmin
Playground not launched - this OS is currently not supported
--------------------------------------------------------------------------------------
Hyperledger Fabric and Hyperledger Composer installed, and Composer Playground launched
Please use 'composer.sh' to re-start, and 'composer.sh stop' to shutdown all the Fabric and Composer docker images
JunLi_June (Tue, 04 Jul 2017 19:11:57 GMT):
Could anyone help? Thxxxxx in advanced~
dselman (Tue, 04 Jul 2017 21:30:03 GMT):
@JunLi_June looks like you are trying to run on Windows -- this is not a supported platform (check the docs).
JunLi_June (Tue, 04 Jul 2017 21:36:07 GMT):
@dselman yes, i already realised about that, and read the issue on Github~ In this situation, could you please give me some suggestions, if I do need to run on Windows, and I need to implement a website for with smart contract, which project or tool I can use? btw, this website is only for study purpose, not for any actual projects.
dselman (Tue, 04 Jul 2017 21:37:14 GMT):
Last time I checked Hyperledger Fabric itself doesn't run natively on Fabric, so the easiest thing to do is to install a Linux VM on your Windows machine and use that for development.
dselman (Tue, 04 Jul 2017 21:37:14 GMT):
Last time I checked Hyperledger Fabric itself doesn't run natively on Windows, so the easiest thing to do is to install a Linux VM on your Windows machine and use that for development.
javiercuicapuza (Tue, 04 Jul 2017 21:37:14 GMT):
Hi guys
javiercuicapuza (Tue, 04 Jul 2017 21:37:42 GMT):
how to save a pdf file with Hyperledger Composer?
dselman (Tue, 04 Jul 2017 21:38:16 GMT):
Store the data off chain and store a URL to the PDF along with a checksum on the chain.
dselman (Tue, 04 Jul 2017 21:38:59 GMT):
E.g. store it in Cloudant, IPFS or similar.
dselman (Tue, 04 Jul 2017 21:39:24 GMT):
We would like to make this easier but don't have concrete plans around that yet.
JunLi_June (Tue, 04 Jul 2017 21:40:40 GMT):
thx so much, will try
javiercuicapuza (Tue, 04 Jul 2017 21:45:59 GMT):
Thank you, Selman
doowb (Tue, 04 Jul 2017 21:48:48 GMT):
Has joined the channel.
htyagi90 (Tue, 04 Jul 2017 22:10:53 GMT):
Has joined the channel.
chenxuan (Wed, 05 Jul 2017 01:41:45 GMT):
docker exec -e "CORE_PEER_LOCALMSPID=Org1MSP" -e "CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp/users/Admin@org1.example.com" peer0.org1.example.com peer channel create -o orderer.example.com:7050 -c mychannel -f /etc/hyperledger/configtx/mychannel.tx
flag provided but not defined: -e
See 'docker exec --help'.
JonathanTan (Wed, 05 Jul 2017 02:54:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QyhvcmLjimud5PEvs) @sstone1 @dselman we are trying to use Composer Query Language in our code, but without Composer Playground (it doesn't seem to support 0.9.0 yet), we are unable to debug with console.log(), any advice how can we debug our CQL and javascript code?
KevinBai (Wed, 05 Jul 2017 04:18:24 GMT):
Do the composer support fabirc rc1 ?
rama_rahul (Wed, 05 Jul 2017 05:00:47 GMT):
Message Attachments
rama_rahul (Wed, 05 Jul 2017 05:11:19 GMT):
Message Attachments
rama_rahul (Wed, 05 Jul 2017 05:43:22 GMT):
Message Attachments
JonathanTan (Wed, 05 Jul 2017 07:03:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ShE7xZkGqJTm4s6xf) @rama_rahu you're on composer 0.9.0?
rama_rahul (Wed, 05 Jul 2017 07:03:17 GMT):
Yeah
rama_rahul (Wed, 05 Jul 2017 07:04:26 GMT):
Message Attachments
JonathanTan (Wed, 05 Jul 2017 07:05:38 GMT):
check your ACL file
JonathanTan (Wed, 05 Jul 2017 07:07:55 GMT):
example the namespace org.acne.sample should be changed to org.acne.sample.* in 0.9.0
JonathanTan (Wed, 05 Jul 2017 07:07:57 GMT):
https://github.com/hyperledger/composer/releases/tag/v0.9.0
rama_rahul (Wed, 05 Jul 2017 07:08:08 GMT):
Ohk
rama_rahul (Wed, 05 Jul 2017 07:08:11 GMT):
Thanks!
rama_rahul (Wed, 05 Jul 2017 07:14:37 GMT):
Message Attachments
JonathanTan (Wed, 05 Jul 2017 07:16:11 GMT):
which version of Fabric are you using
JonathanTan (Wed, 05 Jul 2017 07:16:13 GMT):
?
JonathanTan (Wed, 05 Jul 2017 07:17:09 GMT):
I think 0.9.0 works on Fabric v1 beta or RC1
rama_rahul (Wed, 05 Jul 2017 07:17:28 GMT):
I am not using beta or RC1
JonathanTan (Wed, 05 Jul 2017 07:18:02 GMT):
please update
JonathanTan (Wed, 05 Jul 2017 07:18:14 GMT):
there should be a clear up script somewhere
rama_rahul (Wed, 05 Jul 2017 07:18:19 GMT):
Can you tell me how to upgrade to that version. Some link about how to update?
JonathanTan (Wed, 05 Jul 2017 07:27:10 GMT):
https://hyperledger.github.io/composer/installing/using-playground-locally.html
JonathanTan (Wed, 05 Jul 2017 07:27:28 GMT):
the first few docker commands will clear out the older versions
sstone1 (Wed, 05 Jul 2017 07:49:53 GMT):
@chenxuan you need to upgrade your Docker to a much later level
chenxuan (Wed, 05 Jul 2017 07:50:20 GMT):
@sstone1 ok
sstone1 (Wed, 05 Jul 2017 07:50:21 GMT):
Docker 17.03 or later is required
chenxuan (Wed, 05 Jul 2017 07:50:23 GMT):
i try it
chenxuan (Wed, 05 Jul 2017 07:50:58 GMT):
root@server:/home/user/composer# docker -v
Docker version 17.06.0-ce, build 02c1d87
root@server:/home/user/composer#
chenxuan (Wed, 05 Jul 2017 07:51:08 GMT):
@sstone1 it's ok?
sstone1 (Wed, 05 Jul 2017 07:51:52 GMT):
@JonathanTan there's a fix for `console.log` and Fabric v1.0 going in to 0.9.1 tomorrow. in the mean time you can use `print` instead of `console.log`
sstone1 (Wed, 05 Jul 2017 07:52:04 GMT):
@chenxuan yes that should work fine
sstone1 (Wed, 05 Jul 2017 07:52:47 GMT):
work is happening at the moment to add query files to playground, but not sure what you mean by playground not supporting 0.9.0? we did publish a new version of playground along with the rest of the code.
sstone1 (Wed, 05 Jul 2017 07:53:31 GMT):
@KevinBai Composer does work with Fabric rc1, but currently installs the beta, however this weeks release 0.9.1 will move all of the scripts over to rc1
chenxuan (Wed, 05 Jul 2017 07:56:56 GMT):
it works @sstone1
sstone1 (Wed, 05 Jul 2017 07:57:03 GMT):
great
Banggijin (Wed, 05 Jul 2017 07:58:35 GMT):
Has joined the channel.
Banggijin (Wed, 05 Jul 2017 07:58:38 GMT):
hello
I am doing developer tutorial section in the compose
composer, but
deploy to the fabric 1.0 do not work properly
what I see is ::
IllegalModelException: Class Trade is not declared as abstract. It must define an identifying field. File 'models/sample.cto': line 17 column 1, to line 20 column 2.
Command failed
My setting is on Mac, docker is running, and my orderer.example.com, couchdb, ca.example.com, peer0.org1.example.com are running on the docker
Banggijin 오후 2시 42분
when I typed this: composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
above error was displayed
Banggijin 오후 3시 56분
and 2nd Question.
When I command 'npm install' in the project folder, that makes .bna file under the dist folder
but when I type 'composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString' manually, that make above error
what's the difference?
ls
Banggijin 오후 4시 32분
After I deleted all the docker images and re-do with tutorial at all, I made it
but I still don't know why 'IllegalModelException: Class Trade is not declared as abstract. ' appeared
It says it is grammar problem... but... I don know
sstone1 (Wed, 05 Jul 2017 07:58:54 GMT):
@Banggijin can you run `composer -v` ?
sstone1 (Wed, 05 Jul 2017 07:59:10 GMT):
it looks like you have an old version
Banggijin (Wed, 05 Jul 2017 08:01:04 GMT):
well, about an hour earlier, the version was 0.8
Banggijin (Wed, 05 Jul 2017 08:01:16 GMT):
and now I re installed it and it is 0.9
Banggijin (Wed, 05 Jul 2017 08:01:30 GMT):
and things are good
sstone1 (Wed, 05 Jul 2017 08:01:34 GMT):
great
sstone1 (Wed, 05 Jul 2017 08:01:42 GMT):
we made some changes to the model language in 0.9
sstone1 (Wed, 05 Jul 2017 08:01:53 GMT):
and all of the tutorials/samples have been updated to require 0.9
Banggijin (Wed, 05 Jul 2017 08:02:03 GMT):
oh
Banggijin (Wed, 05 Jul 2017 08:02:06 GMT):
thx
Banggijin (Wed, 05 Jul 2017 08:02:15 GMT):
very good
Banggijin (Wed, 05 Jul 2017 08:02:36 GMT):
We are making currency trading-fast model for my country
Banggijin (Wed, 05 Jul 2017 08:02:52 GMT):
so i am glad to meet you
Banggijin (Wed, 05 Jul 2017 08:03:03 GMT):
I will come here often thx
sstone1 (Wed, 05 Jul 2017 08:03:16 GMT):
great to have you here :) np
Pere-Lluis (Wed, 05 Jul 2017 08:12:56 GMT):
Hi there
Pere-Lluis (Wed, 05 Jul 2017 08:13:39 GMT):
I added my .hfc-key-store to the docker composer-playground
Pere-Lluis (Wed, 05 Jul 2017 08:14:05 GMT):
but I'm getting a Error: error trying login and get user Context. Error: EACCES: permission denied, open '/home/composer/.hfc-key-store/c00305b28997cd8b9da0a9683c3310974f92287541e5bd4ef847c0b6a40eb0dc-pub'
Pere-Lluis (Wed, 05 Jul 2017 08:15:20 GMT):
I tried to change the files permision in the container but it doens't let me
Pere-Lluis (Wed, 05 Jul 2017 08:29:36 GMT):
I changed the permissions before loading the docker and it worked, now it's connected to my peers, but instead of connecting to the existing chaincode, it has created a new one dev-peer0.org1.example.com-org-acme-biznet-0.9.0
Pere-Lluis (Wed, 05 Jul 2017 08:30:45 GMT):
so I wonder, it's possible to deploy more than one bna to the same channel (as I seem to have) and how do I set playground to work to an existing deployed chaincode in the channel, since the connection profiles will be the same
Pere-Lluis (Wed, 05 Jul 2017 08:31:44 GMT):
It is not like this is a practical real work example that would happen, I'm just curious about this stuff in order to understand how it works
sstone1 (Wed, 05 Jul 2017 08:33:51 GMT):
@Pere-Lluis are you mounting the credentials into the Docker container using volume mounts? the permissions you need for that got me stuck the other day
sstone1 (Wed, 05 Jul 2017 08:34:12 GMT):
playground can currently only work with a business network called `org-acme-biznet` - it will not connect to any other business networks with different names
sstone1 (Wed, 05 Jul 2017 08:34:26 GMT):
we are working on fixing this - that is part of the major rework being done around ID cards
Pere-Lluis (Wed, 05 Jul 2017 08:46:55 GMT):
You're right, you mentioned it on themeeting
Pere-Lluis (Wed, 05 Jul 2017 08:47:16 GMT):
yeah, I'm using a yml file where I set a
Pere-Lluis (Wed, 05 Jul 2017 08:47:35 GMT):
composer:
container_name: composer
image: hyperledger/composer-playground
volumes:
- /home/pere-lluis/.hfc-key-store:/home/composer/.hfc-key-store
Pere-Lluis (Wed, 05 Jul 2017 08:48:03 GMT):
I just changed to 777 tthe files on /home/pere-lluis/.hfc-key-store and it worked once added to the docker
Pere-Lluis (Wed, 05 Jul 2017 08:48:39 GMT):
Not an elegant solution, but worked for now, it is connected to the fabric using the right credentials
Pere-Lluis (Wed, 05 Jul 2017 08:51:51 GMT):
also I'm going forward since I have my bna pretty stable and working, what do you recommend if I want to use it in an existing website (which I would have to adapt) where users are login thought Google? I'm really new to all this API stuff, so I'm not sure which direction to follow. If I want each user of the website (that logs in with Google) to be one participant on the chain? Is suing the RestAPI with Google Oauth the way to interact with the website?
Pere-Lluis (Wed, 05 Jul 2017 08:52:10 GMT):
do you have any tips @sstone1 ?
smallX (Wed, 05 Jul 2017 08:53:48 GMT):
hi guys, how to get height of blockchain by composer?
sstone1 (Wed, 05 Jul 2017 09:00:12 GMT):
@Pere-Lluis yeah, using the REST server in combination with the Passport strategy for Google OAuth is the way to go. Each user who authenticates to the REST server using Passport gets their own wallet, where they can put Blockchain identities/certs that the REST server uses to communicate with the Blockchain. Composer maps Blockchain identities/certs to participants.
sstone1 (Wed, 05 Jul 2017 09:01:12 GMT):
@smallX there is no Composer API for that.
Pere-Lluis (Wed, 05 Jul 2017 09:05:12 GMT):
@sstone1 cool, thanks.
Pere-Lluis (Wed, 05 Jul 2017 09:05:32 GMT):
also, there is a problem with the pii-network in github I think
Pere-Lluis (Wed, 05 Jul 2017 09:05:41 GMT):
trying to deploy it gives a SyntaxError: The keyword 'extends' is reserved (4:0)
Pere-Lluis (Wed, 05 Jul 2017 09:06:04 GMT):
even in https://composer-playground.mybluemix.net
Pere-Lluis (Wed, 05 Jul 2017 09:07:05 GMT):
should I add an issue @sstone1 or are you already aware of it?
Pere-Lluis (Wed, 05 Jul 2017 09:09:18 GMT):
Also... why is there NEM stuff in the files of the pii-network?
arner (Wed, 05 Jul 2017 09:12:44 GMT):
@Pere-Lluis this is a known issue and will be solved in the next release of playground :) [so I heard from @dselman, I'm not part of the team]
Pere-Lluis (Wed, 05 Jul 2017 09:14:28 GMT):
@arner okey, just wanted to warn about it, I think someone stored stuff that doesn't belong there xD
sstone1 (Wed, 05 Jul 2017 09:18:29 GMT):
Yeah, Playground is incorrectly importing an `.eslintrc.yml` file as a JavaScript script file, which causes that error
sstone1 (Wed, 05 Jul 2017 09:19:05 GMT):
Playground 0.9.1 is dropping the import from GitHub, and adding in import from npm - no authentication needed to use the samples, and it also works off of the published and tested BNA files which avoid this problem.
smallX (Wed, 05 Jul 2017 09:19:06 GMT):
will we complete it about the API for height of blockchain in the future ?
sstone1 (Wed, 05 Jul 2017 09:20:35 GMT):
it's not in the plans at the moment - can you explain more about why you need it and what you would use the API for, and why the Fabric API is not sufficient?
mahoney1 (Wed, 05 Jul 2017 10:13:32 GMT):
@here hi everyone, don't forget - our Composer Community call tomorrow (Thurs) is 4pm UTC (5pm UK, 12pm ET, 9am PT) - would love to hear about the things you are building with Composer, what you like/don't like ;Come talk to us (and other community members) in person ! Meeting details and agenda items are here: https://github.com/hyperledger/composer/wiki/Meeting-6th-July-2017
Pere-Lluis (Wed, 05 Jul 2017 10:15:49 GMT):
I'm having a problem updating assets via transaction
Pere-Lluis (Wed, 05 Jul 2017 10:16:17 GMT):
i have changed a asset in Bonus and in apportionments, but the following code:
Pere-Lluis (Wed, 05 Jul 2017 10:16:35 GMT):
return getAssetRegistry('org.basetis.bonusetis.apportionment')
.then(function (assetRegistry) {
if(exists==false){
assetRegistry.addAll([apportionment1]);
assetRegistry.updateAll(apportionments);
getAssetRegistry('org.basetis.bonusetis.Bonus')
.then(function (assetRegistry) {
assetRegistry.update(tx.asset);
})
Pere-Lluis (Wed, 05 Jul 2017 10:16:57 GMT):
' return getAssetRegistry('org.basetis.bonusetis.apportionment')
.then(function (assetRegistry) {
if(exists==false){
assetRegistry.addAll([apportionment1]);
assetRegistry.updateAll(apportionments);
getAssetRegistry('org.basetis.bonusetis.Bonus')
.then(function (assetRegistry) {
assetRegistry.update(tx.asset);
})'
Pere-Lluis (Wed, 05 Jul 2017 10:17:09 GMT):
okey, I gice up trying to format it
Pere-Lluis (Wed, 05 Jul 2017 10:17:22 GMT):
nevermind, it's not readable this way
mahoney1 (Wed, 05 Jul 2017 10:18:36 GMT):
@here please note from *next week*, we will move the Composer Community call to Wednesdays (instead of Thursdays). So next week's call (Weds 12th July) will be at 9am UTC (10am UK, 2:30pm IST, 5pm CST) FYI (will send a reminder nearer the time).
Pere-Lluis (Wed, 05 Jul 2017 10:53:00 GMT):
I'm having trouble with a transaction. I add an asset to a registry, and then I update all assets in that registry, but it says the one I added is not there.
Pere-Lluis (Wed, 05 Jul 2017 10:53:16 GMT):
wait
Pere-Lluis (Wed, 05 Jul 2017 10:53:26 GMT):
I'll add it to stackoverflow better
Pere-Lluis (Wed, 05 Jul 2017 10:53:29 GMT):
sorry to bother
ShobhanaSundararaman (Wed, 05 Jul 2017 11:05:13 GMT):
Hi, I followed the tutorial for development environment and after generating the .bna file and trying to deploy to my fabric I get the below error:
ShobhanaSundararaman (Wed, 05 Jul 2017 11:05:29 GMT):
ubuntu@ip-172-31-8-83:~/fabric-tools/my-network/dist$ composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: The Hello World of Hyperledger Composer samples
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/home/ubuntu/.nvm/versions/node/v6.11.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/home/ubuntu/.nvm/versions/node/v6.11.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /home/ubuntu/.nvm/versions/node/v6.11.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
Pere-Lluis (Wed, 05 Jul 2017 11:13:21 GMT):
@ShobhanaSundararaman I think that was related to not having started the channel properly
Pere-Lluis (Wed, 05 Jul 2017 11:13:31 GMT):
have you started the channel?
ShobhanaSundararaman (Wed, 05 Jul 2017 11:14:39 GMT):
I didn't do anything specific to start the channel. I just followed the steps in https://hyperledger.github.io/composer/tutorials/developer-guide.html
ShobhanaSundararaman (Wed, 05 Jul 2017 11:14:53 GMT):
@Pere-Lluis
mahoney1 (Wed, 05 Jul 2017 11:32:41 GMT):
[ ](https://chat.hyperledger.org/channel /composer?msg=9NNoxsA4wQtG37gnQ) @ShobhanaSundararaman can you raise this as an issue on Stack Overflow please? Include the output of `docker ps -a` + 'node -v` + `docker -v` - and the output of `composer --version` please. From what I've seen its possible (in your environment) that the node modules are at mismatched levels... ie the backend Fabric vs your Composer levels. Have you uninstalled previous Composer versions first and then installed (preferably) the latest Composer (0.9.0) before running the Developer tutorial and to match your environment (assuming its at Fabric v1 beta) ? thanks!
ShobhanaSundararaman (Wed, 05 Jul 2017 11:34:49 GMT):
@mahoney1 I've raised the issue today in StackOverflow. I created a new VM in AWS today so there was no previously installed versions..I've added the details in the stackoverflow. Please let me know if you're able to view it.
ShobhanaSundararaman (Wed, 05 Jul 2017 11:34:55 GMT):
The versions are as follows:
ShobhanaSundararaman (Wed, 05 Jul 2017 11:34:55 GMT):
v6.11.0
ShobhanaSundararaman (Wed, 05 Jul 2017 11:34:59 GMT):
-Node
ShobhanaSundararaman (Wed, 05 Jul 2017 11:35:46 GMT):
Docker version 17.06.0-ce, build 02c1d87
ShobhanaSundararaman (Wed, 05 Jul 2017 11:36:02 GMT):
composer-cli v0.9.0
composer-admin v0.9.0
composer-client v0.9.0
composer-common v0.9.0
composer-runtime-hlf v0.9.0
composer-runtime-hlfv1 v0.9.0
mahoney1 (Wed, 05 Jul 2017 12:08:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RxiYQysaJP9ZAsae9) @ShobhanaSundararaman cool, thanks Shobhana, will take a look
uber.twin (Wed, 05 Jul 2017 12:13:32 GMT):
@mahoney1 , @sstone1 hi, I am trying to run "issueIdentity", "revokeIdentity" then "issueIdentity" again for the same participant, but the last operation fails like below, not sure what is it that I'm doing wrong
```
fail to add FOOPARTY Error: fabric-ca request register failed with errors [[{"code":0,"message":"Identity 'FOOPARTY' is already registered"}]]
```
sstone1 (Wed, 05 Jul 2017 12:14:38 GMT):
@uber.twin revokeIdentity does not revoke/delete the identity on the Fabric CA, so we cannot reissue a new identity with the same ID
sstone1 (Wed, 05 Jul 2017 12:14:58 GMT):
@davidkel are there any new APIs in v1.0 for revoking/deleting Fabric CA identities that we should look at utilising?
vinitesh (Wed, 05 Jul 2017 12:16:11 GMT):
'Hello, I am writing a rest client using composer node sdk. In the very basic method i am creating a businessconnection object and trying connect., there after i am also disconnecting connection but somehow event listners are not getting removed. On the 11th call to the method i am getting warning Warning: Possible EventEmitter memory leak detected. 11 exit listeners added. Use emitter.setMaxListeners() to increase limit'
vinitesh (Wed, 05 Jul 2017 12:16:24 GMT):
following is the code snippet
vinitesh (Wed, 05 Jul 2017 12:16:25 GMT):
app.post('/loginTest', (req, res) => {
var bizNetworkConnection = new BusinessNetworkConnection();
bizNetworkConnection.connect("hlfv1", "org.acme.biznet", "admin", "adminpw")
.then(function (result) {
console.log("connection success ")
console.log("user " + bizNetworkConnection.securityContext.getUser())
bizNetworkConnection.disconnect().then(function () {
console.log("user2 "+bizNetworkConnection.securityContext)
bizNetworkConnection=null
res.json({ status: "result" });
})
//
}).catch(function (error) {
console.log("111111" + error);
bizNetworkConnection.disconnect().then(function () { res.send(error); });
})
})
uber.twin (Wed, 05 Jul 2017 12:16:43 GMT):
@sstone1 so then there is no such thing as a completely symmetrical operation of "issueIdentity"?
davidkel (Wed, 05 Jul 2017 12:16:59 GMT):
@sstone1 there is a revoke api and a reenroll api we could exploit
sstone1 (Wed, 05 Jul 2017 12:18:20 GMT):
@uber.twin correct, but only because we didn't have those APIs in v0.6 - @davidkel probably worth raising a yser story to investigate that at some point
mahoney1 (Wed, 05 Jul 2017 12:24:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=iBD4kWGXNzPBXNc97) @vinitesh in your sample have you tried setting listeners eg. require('events').EventEmitter.defaultMaxListeners = 15; for example?
vinitesh (Wed, 05 Jul 2017 12:28:50 GMT):
@mahoney1 thats not gonna help i think, Actual problem is even after disconnecting, event listners are not been removed
dwakeman (Wed, 05 Jul 2017 12:48:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NewZ7hdrTxcM5w9Gm) @Banggijin Hey, I ran into this too. I documented the problem and answer in this stack overflow entry:
https://stackoverflow.com/questions/44855273/import-of-valid-bna-file-into-composer-playground-0-9-fails/44855374#44855374
dwakeman (Wed, 05 Jul 2017 12:48:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NewZ7hdrTxcM5w9Gm) @Banggijin Hey, I ran into this too. I documented the problem and how I fixed it in this stack overflow entry:
https://stackoverflow.com/questions/44855273/import-of-valid-bna-file-into-composer-playground-0-9-fails/44855374#44855374
davidkel (Wed, 05 Jul 2017 13:07:59 GMT):
@vinitesh I've added your code snippet to https://github.com/hyperledger/composer/issues/1246 as this is something also seen during system test execution and is to be looked into
Pere-Lluis (Wed, 05 Jul 2017 13:20:58 GMT):
Is there any function to get the number of assets in a registry?
Pere-Lluis (Wed, 05 Jul 2017 14:10:20 GMT):
Also, is there a way to give certain permissions for more than one type of transaction in the same rule?
mahoney1 (Wed, 05 Jul 2017 14:35:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kZTWuvFCKQarMcwDW) @Pere-Lluis no function, but you can add a .length to the returned array in your code.
Pere-Lluis (Wed, 05 Jul 2017 14:50:19 GMT):
sure, thanks!
coder-ajay (Wed, 05 Jul 2017 14:52:03 GMT):
Hi, is it necessary to write test cases for generating .bna file and further deploying? I am trying to create a demo and test case is not necessary as of now.
Pere-Lluis (Wed, 05 Jul 2017 14:57:00 GMT):
test codes are not necessary, just a tool in order to set an automatic testing system
Pere-Lluis (Wed, 05 Jul 2017 14:58:20 GMT):
@coder-ajay for your .bna the only "needed" as of a basic .bna files are the permissions as a .acl, the .cto to define your "variables" in the chain and at least one .js in your lib for the transactions
coder-ajay (Wed, 05 Jul 2017 14:59:36 GMT):
ok. so is it fine if I keep the test/sample.js file empty?
coder-ajay (Wed, 05 Jul 2017 14:59:50 GMT):
just to avoid any possible error.
coder-ajay (Wed, 05 Jul 2017 15:01:29 GMT):
or can it be simply ignored?
Pere-Lluis (Wed, 05 Jul 2017 15:02:33 GMT):
you can even delete it
coder-ajay (Wed, 05 Jul 2017 15:04:09 GMT):
Ok. Thanks @Pere-Lluis
Pere-Lluis (Wed, 05 Jul 2017 15:26:29 GMT):
And another question about permissions, I have tried to put a permission making reference to the owner of the asset in the transaction, but I think that you can only refer to properties of the transaction itself, am I wrong?
Pere-Lluis (Wed, 05 Jul 2017 15:27:02 GMT):
Because I have:
Pere-Lluis (Wed, 05 Jul 2017 15:27:37 GMT):
rule closeApportionmentTransactions {
description: "Allow all participants to submit transactions"
participant(p): "org.basetis.bonusetis.user"
operation: CREATE
resource(a): "org.basetis.bonusetis.close"
condition: (a.asset.owner.getIdentifier() === p.getIdentifier())
action: ALLOW
}
Pere-Lluis (Wed, 05 Jul 2017 15:28:47 GMT):
and it gives me a can't read property getIdentifier of undefined
Pere-Lluis (Wed, 05 Jul 2017 15:29:23 GMT):
(the transaction close has a relationship with an asset)
Pere-Lluis (Wed, 05 Jul 2017 15:32:58 GMT):
So I think it's not a code problem but the fact that properties of variables of the transaction cannot be read in the acl or something like that, can anyone confirm?
baoyangc (Wed, 05 Jul 2017 15:54:22 GMT):
how to set loglevel for composer-rest-server
dwakeman (Wed, 05 Jul 2017 15:55:37 GMT):
I haven't used it with composer-rest-server, but for composer-cli I have set an environment variable before I run the command:
`export DEBUG=composer:*`
dwakeman (Wed, 05 Jul 2017 15:55:37 GMT):
I haven't used it with composer-rest-server, but for composer-cli I have set an environment variable before I run the command:
`export DEBUG=composer:*`
Then, when you run composer-rest-server it should produce more verbose output.
mahoney1 (Wed, 05 Jul 2017 15:55:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7go8kmctTw3a8pJJr) @Pere-Lluis could you post the relevant model section corresponding to the rule pls ?
baoyangc (Wed, 05 Jul 2017 15:56:20 GMT):
@dwakeman thanks ,i'll try
mahoney1 (Wed, 05 Jul 2017 15:56:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q9iA7b4aFakinbuaZ) @dwakeman correct @baoyangc if you set this then run your composer-rest-server you should get a trace log in 'logs' subdirectory..
baoyangc (Wed, 05 Jul 2017 15:57:12 GMT):
thanks @mahoney1
mahoney1 (Wed, 05 Jul 2017 15:57:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FHGB8JkMZA8BsNNpY) @baoyangc y/welcome and thanks @dwakeman for prompt response :-)
Pere-Lluis (Wed, 05 Jul 2017 15:57:44 GMT):
transaction close {
--> apportionment asset
}
Pere-Lluis (Wed, 05 Jul 2017 15:57:48 GMT):
and the asset is:
Pere-Lluis (Wed, 05 Jul 2017 15:58:01 GMT):
asset apportionment identified by bonusIDuserID{
o String bonusIDuserID default= "bonusID:1userID:1"
--> user owner
o Integer percentatge default=100 range=[0,100]
--> Bonus bonus
o Integer close
}
Pere-Lluis (Wed, 05 Jul 2017 15:59:10 GMT):
@mahoney1 so the idea is that only if the current participant is the owner of the apportionment, he would be able to do the transaction close
Pere-Lluis (Wed, 05 Jul 2017 15:59:30 GMT):
Right now I have done it by code in the .js
mahoney1 (Wed, 05 Jul 2017 16:10:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jet3QLXqXkasM4AyG) @Pere-Lluis hi there - so, we don't resolve relationships yet - but the good news is we will do from tomorrow - so you will want to pick up Composer release v0.9.1 - we'll announce here when that release is available so you can go ahead and try it out with your model / ACLs ..
mahoney1 (Wed, 05 Jul 2017 16:10:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9hQgG9j3HbDHZ2hPt) @baoyangc does this help you https://stackoverflow.com/questions/9347458/switch-between-user-identities-in-one-git-on-one-computer -, the answers may be what you are looking for.
dwakeman (Wed, 05 Jul 2017 17:19:34 GMT):
There is a new command called `composer identity import` that is now part of composer, and I think it's supposed to import key files and create a wallet in my KeyValStore, right? If I am using the docker images from Hyperledger, where do I get the files containing the public and private keys? Or am I not understanding how this is supposed to work?
Sij (Wed, 05 Jul 2017 17:58:35 GMT):
Has joined the channel.
davidkel (Wed, 05 Jul 2017 18:59:02 GMT):
@dwakeman you are correct, that is the purpose of composer identity import in that it will create identities from existing crypto material. The hyperledger fabric images are nothing more than pre-canned binaries. To create a fabric you need MSP providers as well as a set of configuration definitions to configure your running fabric and the policies that govern it. If you download the composer fabric dev server this is a complete definition of a fabric albeit a simple one for development purposes. In there it has MSP definitions which are based on PKI. For example the crypto material that defines who has admin authority for a peer is contained in there and you would import that crypto material and give it an identity. You can then use that identity to be able to install chaincode on that peer.
Pere-Lluis (Wed, 05 Jul 2017 20:19:29 GMT):
@mahoney1 that's great news, thank you for your work!
JunLi_June (Wed, 05 Jul 2017 22:04:28 GMT):
hihi, I tried to follow the Composer Developer Tutorial on Github, everything went well until the step of unit test. It threw out below errors, could anyone help? Thx in advanced.
JunLi_June (Wed, 05 Jul 2017 22:04:33 GMT):
> my-network@0.0.1 test /home/junli/my-network
> mocha --recursive -t 4000
Sample
1) "before each" hook for "Alice can read all of the assets"
0 passing (2s)
1 failing
1) Sample "before each" hook for "Alice can read all of the assets":
SyntaxError: The keyword 'const' is reserved (17:0)
at Parser.pp$4.raise (node_modules/acorn/dist/acorn.js:2488:13)
at Parser.pp$3.parseIdent (node_modules/acorn/dist/acorn.js:2436:12)
at Parser.pp$3.parseExprAtom (node_modules/acorn/dist/acorn.js:1946:19)
at Parser.pp$3.parseExprSubscripts (node_modules/acorn/dist/acorn.js:1872:19)
dselman (Wed, 05 Jul 2017 22:07:13 GMT):
@sstone1 ^^^ why would Acorn be parsing the test code? Is this an .eslintrc.yml thing?
dselman (Wed, 05 Jul 2017 22:08:00 GMT):
@JunLi_June can you please paste the whole stack trace
sstone1 (Wed, 05 Jul 2017 22:10:43 GMT):
no idea - it might not be the test code - might be the deploy to the embedded runtime
JunLi_June (Wed, 05 Jul 2017 22:13:43 GMT):
junli@junli-VirtualBox:~/my-network$ npm test
> my-network@0.0.1 pretest /home/junli/my-network
> npm run lint
> my-network@0.0.1 lint /home/junli/my-network
> eslint .
> my-network@0.0.1 postlint /home/junli/my-network
> npm run licchk
> my-network@0.0.1 licchk /home/junli/my-network
> license-check
> my-network@0.0.1 postlicchk /home/junli/my-network
> npm run doc
> my-network@0.0.1 doc /home/junli/my-network
> jsdoc --pedantic --recurse -c jsdoc.conf
> my-network@0.0.1 test /home/junli/my-network
> mocha --recursive -t 4000
Sample
1) "before each" hook for "Alice can read all of the assets"
0 passing (2s)
1 failing
1) Sample "before each" hook for "Alice can read all of the assets":
SyntaxError: The keyword 'const' is reserved (17:0)
at Parser.pp$4.raise (node_modules/acorn/dist/acorn.js:2488:13)
at Parser.pp$3.parseIdent (node_modules/acorn/dist/acorn.js:2436:12)
at Parser.pp$3.parseExprAtom (node_modules/acorn/dist/acorn.js:1946:19)
at Parser.pp$3.parseExprSubscripts (node_modules/acorn/dist/acorn.js:1872:19)
at Parser.pp$3.parseMaybeUnary (node_modules/acorn/dist/acorn.js:1849:17)
at Parser.pp$3.parseExprOps (node_modules/acorn/dist/acorn.js:1791:19)
at Parser.pp$3.parseMaybeConditional (node_modules/acorn/dist/acorn.js:1774:19)
at Parser.pp$3.parseMaybeAssign (node_modules/acorn/dist/acorn.js:1750:19)
at Parser.pp$3.parseExpression (node_modules/acorn/dist/acorn.js:1722:19)
at Parser.pp$1.parseStatement (node_modules/acorn/dist/acorn.js:777:45)
at Parser.pp$1.parseTopLevel (node_modules/acorn/dist/acorn.js:672:23)
at Parser.parse (node_modules/acorn/dist/acorn.js:529:15)
at Object.parse (node_modules/acorn/dist/acorn.js:3378:37)
at new JavaScriptParser (node_modules/composer-common/lib/codegen/javascriptparser.js:58:25)
at new Script (node_modules/composer-common/lib/introspect/script.js:48:24)
at ScriptManager.createScript (node_modules/composer-common/lib/scriptmanager.js:61:16)
at Object.process (node_modules/composer-common/lib/businessnetworkdefinition.js:507:69)
at Function.processFile (node_modules/composer-common/lib/businessnetworkdefinition.js:578:27)
at items.forEach (node_modules/composer-common/lib/businessnetworkdefinition.js:563:39)
at Array.forEach (native)
at Function.processDirectory (node_modules/composer-common/lib/businessnetworkdefinition.js:562:15)
at Function.fromDirectory (node_modules/composer-common/lib/businessnetworkdefinition.js:498:35)
at adminConnection.createProfile.then.then (test/sample.js:66:50)
dselman (Wed, 05 Jul 2017 22:28:49 GMT):
Seems like the test code is getting passed into the BusinessNetworkDefinition.fromDirectory...
dselman (Wed, 05 Jul 2017 22:34:32 GMT):
did you put your test code in a folder called test?
dselman (Wed, 05 Jul 2017 22:34:35 GMT):
where is it?
dselman (Wed, 05 Jul 2017 22:34:56 GMT):
it is not in the `lib` folder is it?
JunLi_June (Wed, 05 Jul 2017 22:47:03 GMT):
oh yes, I crossed them, soooo sorry for this stupid mistake and thx soooo much!
dselman (Wed, 05 Jul 2017 23:38:54 GMT):
np
dselman (Wed, 05 Jul 2017 23:39:02 GMT):
we need to improve the error messages
raheelz (Thu, 06 Jul 2017 02:05:34 GMT):
I have been getting this error message all day when pinging the network or trying to create a new frontend:
`Error: Deployed chain-code (0.8.1) is incompatible with client (0.9.0)`
raheelz (Thu, 06 Jul 2017 02:06:23 GMT):
Am I missing a step?
baoyangc (Thu, 06 Jul 2017 02:31:04 GMT):
upgrade your composer-cli composer-admin composer-client
baoyangc (Thu, 06 Jul 2017 02:31:22 GMT):
@raheelz
baoyangc (Thu, 06 Jul 2017 03:45:27 GMT):
post id and secret to /api/wallets/{id}/identities
this operation like a login
the question is : how to logout?
baoyangc (Thu, 06 Jul 2017 06:10:26 GMT):
how can i switch identities within one github account
davidkel (Thu, 06 Jul 2017 07:13:40 GMT):
@raheelz when you deployed your business network you used version 0.8.1 but now you have upgraded your cli and dependencies for your application to 0.9.0. Due to breaking api changes in 0.9.0 you would need to make changes to your business network and redeploy to get both your client side and deployed chaincode side to matching 0.9.0 levels. Alternatively you could downgrade your cli and application dependencies to 0.8.1 for now but probably better to do the former
Banggijin (Thu, 06 Jul 2017 07:38:05 GMT):
are there any patch log newsletter I can take?
dselman (Thu, 06 Jul 2017 07:39:17 GMT):
releases are here: https://github.com/hyperledger/composer/releases
dselman (Thu, 06 Jul 2017 07:39:23 GMT):
Is that what you mean?
Banggijin (Thu, 06 Jul 2017 08:07:07 GMT):
oh thx
JonathanTan (Thu, 06 Jul 2017 08:09:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TayYeENhLFC7CzjC5) @sstone1 thanks! any idea if playground will work with 0.9.1 ?
sstone1 (Thu, 06 Jul 2017 08:09:52 GMT):
can you explain what you mean? which part of playground does not work?
JonathanTan (Thu, 06 Jul 2017 08:12:37 GMT):
seems like we had problems with playground and CQL , it said something along the lines of build query not supported
surabhi (Thu, 06 Jul 2017 08:21:24 GMT):
Has joined the channel.
gen_el (Thu, 06 Jul 2017 08:38:23 GMT):
Whenever i do this:`assetObj.participantObj.participantField` , it says the field is undefined.
gen_el (Thu, 06 Jul 2017 08:38:23 GMT):
Whenever i do this: `assetObj.participantObj.participantField` , it says the field is undefined.
gen_el (Thu, 06 Jul 2017 08:40:10 GMT):
However `assetObj.participantObj.$identifier` returns the identifier. Why doesn't the expression return the field value?
gen_el (Thu, 06 Jul 2017 08:44:19 GMT):
It seems i have explicitly get the participant using the $identifier to work with it. Can't lazy loading be enabled on request?
gen_el (Thu, 06 Jul 2017 08:44:19 GMT):
It seems i have to explicitly get the participant using the $identifier to work with it. Can't lazy loading be enabled on request?
Banggijin (Thu, 06 Jul 2017 08:51:43 GMT):
hello
Banggijin (Thu, 06 Jul 2017 08:52:08 GMT):
I am testing playground and I got this :RangeError: Maximum call stack size exceeded
Banggijin (Thu, 06 Jul 2017 08:52:41 GMT):
I made payment-network.bna file on my local mac using composer
Banggijin (Thu, 06 Jul 2017 08:53:10 GMT):
and imported it to online playground and importing succeeded
Banggijin (Thu, 06 Jul 2017 08:54:09 GMT):
but when testing, I clicked asset participants tab and tried to create new participant,
Banggijin (Thu, 06 Jul 2017 08:54:17 GMT):
that error was showed
dselman (Thu, 06 Jul 2017 08:55:00 GMT):
is your model recursive somewhere?
Banggijin (Thu, 06 Jul 2017 08:55:52 GMT):
you mean reference each other?
Banggijin (Thu, 06 Jul 2017 08:56:59 GMT):
I am gonna check it
dselman (Thu, 06 Jul 2017 08:57:07 GMT):
loops / cycles
Banggijin (Thu, 06 Jul 2017 09:02:18 GMT):
I got it
Banggijin (Thu, 06 Jul 2017 09:02:29 GMT):
I need 'optional' thing
Banggijin (Thu, 06 Jul 2017 09:02:35 GMT):
thx
coder-ajay (Thu, 06 Jul 2017 09:07:02 GMT):
Hi ... A query ... can multiple projects run on common fabric? E.g. In The Fabric-tool folder contains the .sh files to start and stop fabric and multiple projects folder like project1, project2 with independent project files.
coder-ajay (Thu, 06 Jul 2017 09:08:05 GMT):
then once the ./startFabric.sh command is run, can we have independent npm start on separate terminals for each project?
dselman (Thu, 06 Jul 2017 09:10:06 GMT):
You can deploy multiple business networks to a single Fabric.
coder-ajay (Thu, 06 Jul 2017 09:17:45 GMT):
@dselman : but how to run these business network at same time? The URL mentioned in doc is http://localhost:4200.
coder-ajay (Thu, 06 Jul 2017 09:18:18 GMT):
is there any way to define port project wise?
arner (Thu, 06 Jul 2017 09:25:12 GMT):
Hi all, do we have a (reasonably slick) video that shows a business network in composer playground or via the REST explorer?
arner (Thu, 06 Jul 2017 09:26:17 GMT):
(I'm explicitly looking for a demonstration without a fancy front end application)
gen_el (Thu, 06 Jul 2017 09:28:48 GMT):
@dselman Hi! Is there a way to get the channel name within composer, that a bna/chain code is on?
dselman (Thu, 06 Jul 2017 09:29:27 GMT):
no - what is the use case?
dselman (Thu, 06 Jul 2017 09:36:10 GMT):
@arner there are some videos on Youtube of the Vehicle Lifecycle demo
dselman (Thu, 06 Jul 2017 09:38:25 GMT):
e.g https://www.youtube.com/watch?v=cNvOQp8r0xo
gen_el (Thu, 06 Jul 2017 09:43:25 GMT):
@dselman So i have multiple channels, dedicated to specific organisations. However, the chain code deployed are the same across the different orgs for the various channels.
gen_el (Thu, 06 Jul 2017 09:44:30 GMT):
So a participant 1 on *channel A* may have assets Q, R, T
gen_el (Thu, 06 Jul 2017 09:45:01 GMT):
another participant 2 on same *channel A* may have assets V, W
gen_el (Thu, 06 Jul 2017 09:45:43 GMT):
now on *channel B* _participant 1_ has assets G, H,
gen_el (Thu, 06 Jul 2017 09:47:14 GMT):
on same *channel B* participant 2 has assets I, J, K
dselman (Thu, 06 Jul 2017 09:50:00 GMT):
that I get, but why does the business network need to know its channel name
gen_el (Thu, 06 Jul 2017 09:50:44 GMT):
@dselman so when i run a query, on chain code on *channel A* to retrieve all assets, i will not see assets managed on channel B. Right?
dselman (Thu, 06 Jul 2017 09:51:08 GMT):
each channel is its own ledger
gen_el (Thu, 06 Jul 2017 09:51:14 GMT):
ok
dselman (Thu, 06 Jul 2017 09:51:20 GMT):
there is no shared data between channels
gen_el (Thu, 06 Jul 2017 09:51:31 GMT):
i don't the channel name
gen_el (Thu, 06 Jul 2017 09:51:31 GMT):
i don't need the channel name then.
gen_el (Thu, 06 Jul 2017 09:52:49 GMT):
@dselman This is all new to me. Thanks for your time.
JonathanTan (Thu, 06 Jul 2017 09:53:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wAoCKyh9kTrFLXmuc) the exact error shown in Playground "ReferenceError: buildQuery is not defined"
dselman (Thu, 06 Jul 2017 10:04:38 GMT):
can you paste your script please?
Pere-Lluis (Thu, 06 Jul 2017 11:34:19 GMT):
Is it possible to get an automatic transaction depending on a variable? I have a "closing date" for a contract, and I would like to change an asset if the date is reached.
coder-ajay (Thu, 06 Jul 2017 11:40:57 GMT):
what steps need to be done after changing the asset, participant, transaction names so that they start reflecting in http://localhost:4200/Commodity page? I did an npm start, it changed the title on home page but not the table headings in the commodity page.
coder-ajay (Thu, 06 Jul 2017 11:42:31 GMT):
e.g i changed asset name Commodity to Vehicle in all relevant files?
coder-ajay (Thu, 06 Jul 2017 11:44:18 GMT):
do I have to run code for .bna file again and upload it on playground?
ulysses (Thu, 06 Jul 2017 12:39:50 GMT):
Following the latest docs. Deployment of bna files on a local hlfv1 instance fails as shown
ina@instance-1:~/fabric-tools/my-network/dist$ composer network deploy -a my-network.bna -p hlfv1 -i admin -s adminpw
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My very first Hyperledger Composer Network
TypeError: Channel options must be an object with string keys and integer or string values
Command failed
ulysses (Thu, 06 Jul 2017 12:42:01 GMT):
A separate instance of composer also fails to deploy with the following error:
Error: error trying deploy. Error: error trying install chaincode. Error Command failed
coder-ajay (Thu, 06 Jul 2017 12:43:09 GMT):
@ulysses : have u started fabric composer? ... ./startFabric.sh
ulysses (Thu, 06 Jul 2017 12:44:25 GMT):
@coder-ajay Yep. executed both startFabric and createComposerProfile scripts
sstone1 (Thu, 06 Jul 2017 12:44:46 GMT):
@ulysses can you run `composer -v` and paste the input in here
sstone1 (Thu, 06 Jul 2017 12:44:46 GMT):
@ulysses can you run `composer -v` and paste the output in here
ulysses (Thu, 06 Jul 2017 12:45:54 GMT):
composer -v
composer-cli v0.9.0
composer-admin v0.9.0
composer-client v0.9.0
composer-common v0.9.0
composer-runtime-hlf v0.9.0
composer-runtime-hlfv1 v0.9.0
ulysses (Thu, 06 Jul 2017 12:45:54 GMT):
@sstone1 composer -v
composer-cli v0.9.0
composer-admin v0.9.0
composer-client v0.9.0
composer-common v0.9.0
composer-runtime-hlf v0.9.0
composer-runtime-hlfv1 v0.9.0
coder-ajay (Thu, 06 Jul 2017 12:48:19 GMT):
@sstone1 :
what steps need to be done after changing the asset, participant, transaction names so that they start reflecting in http://localhost:4200/Commodity page? I did an npm start, it changed the title on home page but not the table headings in the commodity page.
e.g i changed asset name Commodity to Vehicle in all relevant files?
do I have to run code for .bna file again and upload it on playground?
sstone1 (Thu, 06 Jul 2017 12:48:38 GMT):
you need to re-run the Yeoman generator to generate new Angular components
coder-ajay (Thu, 06 Jul 2017 12:49:33 GMT):
i think i did ... let me try again
davidkel (Thu, 06 Jul 2017 12:50:15 GMT):
@ulysses The second instance failure message is because you are using the wrong identity to try to deploy. Try again with -i PeerAdmin (so long as you are using the fabric downloaded as documented through our guides)
ulysses (Thu, 06 Jul 2017 12:55:48 GMT):
@davidkel thanks. Second instance passed. Still getting the same error on the first instance, though.
davidkel (Thu, 06 Jul 2017 12:57:35 GMT):
@ulysses could you uninstall and re-install composer-cli by running `npm uninstall -g composer-cli && npm install -g composer-cli`. I have never seen that error before and connect see what would generate that error
davidkel (Thu, 06 Jul 2017 12:57:35 GMT):
@ulysses could you uninstall and re-install composer-cli by running `npm uninstall -g composer-cli && npm install -g composer-cli`. I have never seen that error before and cannot see what would generate that error
ulysses (Thu, 06 Jul 2017 13:09:01 GMT):
@davidkel reinstalling the cli did not work. Meanwhile, on the second instance, I'm getting connection failure from the composer-rest-server
? Enter your Fabric Connection Profile Name: hlfv1
? Enter your Business Network Identifier : my-network
? Enter your Fabric username : PeerAdmin
? Enter your secret: adminpw
? Specify if you want namespaces in the generated REST API: never use namespaces
Discovering types from business network definition ...
Connection fails: Error: The events array has not been specified in the connection profile
It will be retried for the next request.
Error: The events array has not been specified in the connection profile
at HLFConnectionManager.connect (/home/ulysses/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnectionmanager.js:176:19)
at getConnectionManager.then (/home/ulysses/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:169:40)
The connection profile looks like this:
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://localhost:7050"
}
],
"ca": {
"url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/home/ulysses/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"deployWaitTime": "300000000",
"invokeWaitTime": "100000",
"timeout": "30000"
}
coder-ajay (Thu, 06 Jul 2017 13:09:10 GMT):
@sstone1 re-running Yeoman generator is not working ... basically localhost:3000/explorer does not show any change ... all the tabs and keys in post section are same as for my-network.. am i missing any step?
davidkel (Thu, 06 Jul 2017 13:12:08 GMT):
@ulysses definitely uninstall the composer-rest-server and re-install it, that looks like a message from a very old version of composer. Also for the rest server, you should use admin/adminpw not PeerAdmin. PeerAdmin although it would work in the beginning, it isn't the right id to be using you will want to use an id that comes from the CA Server.
davidkel (Thu, 06 Jul 2017 13:13:12 GMT):
@ulysses No idea of the problem with your first instance, can only assume that you might have old versions of composer lying around interferring somehow
sstone1 (Thu, 06 Jul 2017 13:13:46 GMT):
@here we've released Hyperledger Composer v0.9.1, with some awesome new features, read all about it on GitHub: https://github.com/hyperledger/composer/releases/tag/v0.9.1 🎉
sstone1 (Thu, 06 Jul 2017 13:14:05 GMT):
@coder-ajay oh, sorry, http://localhost:3000/explorer is the REST API server
sstone1 (Thu, 06 Jul 2017 13:14:23 GMT):
is the REST server running when you run `npm start`, or are you running it separately?
sstone1 (Thu, 06 Jul 2017 13:14:29 GMT):
I mean the `composer-rest-server`
coder-ajay (Thu, 06 Jul 2017 13:15:17 GMT):
i run composer-rest-server first ... localhost:3000/explorer didnt show any change.
coder-ajay (Thu, 06 Jul 2017 13:15:22 GMT):
after that I run npm start
ulysses (Thu, 06 Jul 2017 13:15:49 GMT):
@davidkel the first instance is running on a newly provisioned machine with a fresh install.
coder-ajay (Thu, 06 Jul 2017 13:16:30 GMT):
i did required changes in .cto and lib>sample.js file
coder-ajay (Thu, 06 Jul 2017 13:19:18 GMT):
@sstone1 : how to change the value in explorer > commodity > commodity create > post > parameters > example value? its showing old my-network values. Can i simply add new values in the 'value' text box?
sstone1 (Thu, 06 Jul 2017 13:20:38 GMT):
by old values do you mean the old structure of the class?
coder-ajay (Thu, 06 Jul 2017 13:21:17 GMT):
yes .. currently its showing
"$class": "org.acme.cpa.Commodity",
"tradingSymbol": "string",
"description": "string",
"mainExchange": "string",
"quantity": 0,
"owner": "string"
i dont need tradingSymbol or mainExchange in my demo
sstone1 (Thu, 06 Jul 2017 13:21:30 GMT):
how did you deploy the updated BNA file to the Blockchain? where did you run `composer network deploy` or `composer network update` ?
mahoney1 (Thu, 06 Jul 2017 13:24:55 GMT):
@here - reminder that our Community call later today is at 4pm UTC (5pm UK, 12pm ET, 9am PT) - would love to hear about the things you are building with Composer, what you like/don't like ;come talk to us (and other community members) in person !! Meeting details and agenda items are here: https://github.com/hyperledger/composer/wiki/Meeting-6th-July-2017 cheers Paul
coder-ajay (Thu, 06 Jul 2017 13:28:42 GMT):
@sstone1 : i run the 'composer network deploy' in dist folder where .bna file is present
sstone1 (Thu, 06 Jul 2017 13:29:29 GMT):
did you rebuild the .bna file using `composer archive create` ?
VamsiKrishnak (Thu, 06 Jul 2017 13:29:50 GMT):
@sstone1 I am using http://hyperledger-fabric-doc.readthedocs.io/en/latest/getting_started.html for Hyperledger Fabric setup in Ubuntu VM. Asper tutorial two organisation with two peers have been created. I wanted to add new organization or new peer in already existing Organisation dynamically. Kindly help me know the steps to add dynamically
sstone1 (Thu, 06 Jul 2017 13:30:12 GMT):
@VamsiKrishnak that is a Fabric question, you need to ask it in the #fabric channel
VamsiKrishnak (Thu, 06 Jul 2017 13:30:34 GMT):
ok sure, thank you
coder-ajay (Thu, 06 Jul 2017 13:33:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=755fzJKh2BFD4eJn2) @sstone1 : i think i missed this step. Do i have to run this command in the project folder? is this the syntax 'composer archive create' ?
ulysses (Thu, 06 Jul 2017 13:33:19 GMT):
@davidkel reinstall of composer-rest-server still ends up showing the same error:
? Enter your Fabric Connection Profile Name: hlfv1
? Enter your Business Network Identifier : my-network
? Enter your Fabric username : admin
? Enter your secret: adminpw
? Specify if you want namespaces in the generated REST API: never use namespaces
Discovering types from business network definition ...
Connection fails: Error: The events array has not been specified in the connection profile
It will be retried for the next request.
Error: The events array has not been specified in the connection profile
at HLFConnectionManager.connect (/home/ulysses/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnectionmanager.js:176:19)
at getConnectionManager.then (/home/ulysses/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:169:40)
sstone1 (Thu, 06 Jul 2017 13:34:08 GMT):
@coder-ajay are you following this tutorial
sstone1 (Thu, 06 Jul 2017 13:34:09 GMT):
https://hyperledger.github.io/composer/tutorials/developer-guide.html
sstone1 (Thu, 06 Jul 2017 13:34:19 GMT):
see the steps under "Generate the Business Network Archive"
sstone1 (Thu, 06 Jul 2017 13:34:31 GMT):
namely `npm install` or `npm run prepublish` in the business network directory
sstone1 (Thu, 06 Jul 2017 13:34:39 GMT):
that packages the model files, script files, etc into the BNA file
baoyangc (Thu, 06 Jul 2017 13:35:20 GMT):
`Connection fails: Error: The events array has not been specified in the connection profile
It will be retried for the next request.`
baoyangc (Thu, 06 Jul 2017 13:35:48 GMT):
@ulysses
coder-ajay (Thu, 06 Jul 2017 13:35:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=d4TWsFLxbsGK4chGb) @sstone1 : i run 'npm install' ... to make sure that the .bna file is correctly created, I uploaded it on the playground and cross verified the changes on playground.
coder-ajay (Thu, 06 Jul 2017 13:35:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=d4TWsFLxbsGK4chGb) @sstone1 : i run 'npm install' ... to make sure that the .bna file is correctly created, I uploaded it on the playground and cross verified the changes on playground.
ulysses (Thu, 06 Jul 2017 13:39:48 GMT):
@baoyangc should there be an events array in the connection profile? I'm using the defaults here.
baoyangc (Thu, 06 Jul 2017 13:41:31 GMT):
use the default? the defaults should be ok
sstone1 (Thu, 06 Jul 2017 13:42:47 GMT):
@coder-ajay OK, so what is the output from the `composer network deploy` command? can you paste in the command you used and the output from the command?
ulysses (Thu, 06 Jul 2017 13:44:14 GMT):
@baoyangc the default doesnt have any events arry specs.
baoyangc (Thu, 06 Jul 2017 13:45:00 GMT):
```{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://localhost:7050"
}
],
"ca": {
"url": "http://localhost:7054",
"name": "ca.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/Users/baoyangc/.hfc-key-store",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": "300"
}```
baoyangc (Thu, 06 Jul 2017 13:45:13 GMT):
this is my connection.json
coder-ajay (Thu, 06 Jul 2017 13:46:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5rhb4noyTsz7FjHbP) @sstone1
composer network deploy -a cpa.bna -p hlfv1 -i PeerAdmin -s randomString
Deploying business network from archive: cpa.bna
Business network definition:
Identifier: cpa@0.0.1
Description: CPA application
✔ Deploying business network definition. This may take a minute...
Command succeeded
ulysses (Thu, 06 Jul 2017 13:52:00 GMT):
@baoyangc thats how my connection.json looks as well
davidkel (Thu, 06 Jul 2017 14:01:09 GMT):
@ulysses you have the right connection profile, it's the level of composer code that is very old. Don't know how you are in that situation but that error definitely comes from old composer code which doesn't exist anymore
sstone1 (Thu, 06 Jul 2017 14:01:33 GMT):
@coder-ajay have you got the command line for the Composer REST server?
ulysses (Thu, 06 Jul 2017 14:04:05 GMT):
@davidkel I did an npm uninstall and install but am still stuck with the same error. Meanwhile, the first instance is still stuck on bna deployment
mahoney1 (Thu, 06 Jul 2017 14:04:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gMhhomdBLcujg3NBC) @coder-ajay so you successfully deployed the new network via npm install ; I assume you then ran composer-rest-server ; completed the dialog prompts - and the next thing to try is to clear your browser cache and reload the REST API Explorer
coder-ajay (Thu, 06 Jul 2017 14:05:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3R9nkbnYGfn8WobPQ) @mahoney1 : ok let me try clearing browser cashe
Pere-Lluis (Thu, 06 Jul 2017 14:06:48 GMT):
@sstone1 maybe you can answer this, it possible to get an automatic transaction depending on a variable? I have a "closing date" for a contract, and I would like to change an asset if the date is reached.
sstone1 (Thu, 06 Jul 2017 14:10:16 GMT):
@Pere-Lluis there is no cron/scheduler/timer in Fabric v1.0 for us to implement that functionality
sstone1 (Thu, 06 Jul 2017 14:10:32 GMT):
You would need to set up the timer externally and get that external process to submit a transaction
uber.twin (Thu, 06 Jul 2017 14:10:41 GMT):
@sstone1 Hi, the Fabric setup guide states that "By default, we are using a consensus plugin called NOOPS, which doesn’t really do consensus"
I presume this holds true for the environment deployed through the "composer-tools" repo, right?
davidkel (Thu, 06 Jul 2017 14:10:51 GMT):
@ulysses for your composer rest server, I can see from the error shown above that it is definitely using old code. I see you are using nvm, so can you `npm uninstall -g composer-rest-server` and check that in the directory `/home/ulysses/.nvm/versions/node/v6.9.5/lib/node_modules/` that there is no directory composer-rest-server anymore. Then check by typing composer-rest-server to show that the command cannot be executed. Once done, could you install composer-rest-server again using `npm install -g composer-rest-server` and try again
coder-ajay (Thu, 06 Jul 2017 14:11:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3R9nkbnYGfn8WobPQ) @mahoney1 : Cache clear is not working ... on the playground, assets are getting created, but submit transaction is not working because of something I have missed. Can that be the reason of explorer not getting refreshed with new keys?
sstone1 (Thu, 06 Jul 2017 14:12:06 GMT):
@uber.twin correct, the fabric-dev-server configuration that we provide is a 1x peer 1x orderer 1x CA configuration that uses the noops plugin for consensus.
Pere-Lluis (Thu, 06 Jul 2017 14:12:08 GMT):
@sstone1 okey, what I thought, kind of the temperature example in the perishable network
Pere-Lluis (Thu, 06 Jul 2017 14:12:13 GMT):
thank you
sstone1 (Thu, 06 Jul 2017 14:12:26 GMT):
np
Pere-Lluis (Thu, 06 Jul 2017 14:13:36 GMT):
@sstone1 and before I try it... can u start a transaction within a transaction?
sstone1 (Thu, 06 Jul 2017 14:14:23 GMT):
you can call another transaction processor function from a transaction processor function
sstone1 (Thu, 06 Jul 2017 14:14:27 GMT):
e.g. one JS function calling another
sstone1 (Thu, 06 Jul 2017 14:14:35 GMT):
but no new transaction record is created for it
sstone1 (Thu, 06 Jul 2017 14:14:52 GMT):
we'd like to have the ability to trigger transactions from events that are emitted by a transaction processor function
sstone1 (Thu, 06 Jul 2017 14:15:07 GMT):
for a more decoupled approach
Pere-Lluis (Thu, 06 Jul 2017 14:18:37 GMT):
cool, it's okey for now, just wondering
uber.twin (Thu, 06 Jul 2017 14:19:20 GMT):
@sstone1But are there any plans to have an end to end guide for building a production ready, commercial grade Fabric/ Composer platform? With all security features enabled and a real consensus in place?
uber.twin (Thu, 06 Jul 2017 14:19:20 GMT):
@sstone1 But are there any plans to have an end to end guide for building a production ready, commercial grade Fabric/ Composer platform? With all security features enabled and a real consensus in place?
Pere-Lluis (Thu, 06 Jul 2017 14:19:27 GMT):
by the way is there a backlog?
sstone1 (Thu, 06 Jul 2017 14:20:18 GMT):
@Pere-Lluis all our work is tracked as GitHub issues: https://github.com/hyperledger/composer/issues
sstone1 (Thu, 06 Jul 2017 14:20:53 GMT):
we have a master issue that records everything for a "v1.0" (though it is unlikely to be called v1.0)
sstone1 (Thu, 06 Jul 2017 14:20:55 GMT):
https://github.com/hyperledger/composer/issues/1390
Pere-Lluis (Thu, 06 Jul 2017 14:21:33 GMT):
@sstone1 Thank you, I'll take a look
sstone1 (Thu, 06 Jul 2017 14:22:23 GMT):
@uber.twin a lot of that guide would be the Fabric documentation describing how to set up a proper production network. once they have that kind of documentation then we can explain how to deploy Composer to that Fabric, and how to deploy additional components like the REST server.
ulysses (Thu, 06 Jul 2017 14:24:28 GMT):
@davidkel that worked!
Still not sure about the first instance.
davidkel (Thu, 06 Jul 2017 14:28:26 GMT):
@ulysses The error comes from grpc by the looks of things. Can you describe your 1st instance setup. Operating System, Memory, Disk space, Virtual or Real ?
davidkel (Thu, 06 Jul 2017 14:28:44 GMT):
Also check your level of node and npm on that machine as well
Pere-Lluis (Thu, 06 Jul 2017 14:35:40 GMT):
@sstone1 That's the feeling I get trying to think of a real world implementation, that Fabric still lacks a more user-friendly approach to provide documentation in order to create one. I guess it's understandable as it is in development, in that sense I feel more comfortable working with composer.
sstone1 (Thu, 06 Jul 2017 14:37:26 GMT):
Agreed. There is a team now focusing on at least the documentation improved for Fabric - you can see that work being discussed in #fabric-documentation and I think they have regular calls, if you wanted to get involved.
sstone1 (Thu, 06 Jul 2017 14:37:26 GMT):
Agreed. There is a team now focusing on getting the documentation improved for Fabric - you can see that work being discussed in #fabric-documentation and I think they have regular calls, if you wanted to get involved.
Pere-Lluis (Thu, 06 Jul 2017 14:38:46 GMT):
oh, cool, maybe I will once I get more comfortable with it
sstone1 (Thu, 06 Jul 2017 14:39:01 GMT):
As an example, this is one of the new pages that they've built: https://hyperledger-fabric.readthedocs.io/en/latest/write_first_app.html
sstone1 (Thu, 06 Jul 2017 14:39:09 GMT):
And it's infinitely better than what was there before ;)
Pere-Lluis (Thu, 06 Jul 2017 14:39:22 GMT):
I will work full time from now, so I will get more time to try to help to
Pere-Lluis (Thu, 06 Jul 2017 14:40:12 GMT):
yeah, I saw that example and thought the same
Pere-Lluis (Thu, 06 Jul 2017 14:40:54 GMT):
I don't want to seem like complaining, I totally understand there's to much work at the time to think about documentation
Pere-Lluis (Thu, 06 Jul 2017 14:41:25 GMT):
but it's a classic for developers, it happens to me to, to forget documentation
ulysses (Thu, 06 Jul 2017 14:45:05 GMT):
@davidkel It's ubuntu 16.04, (1 vCPU, 3.75 GB memory), 20 gb disk, VM hosted on cloud
ulysses (Thu, 06 Jul 2017 14:46:19 GMT):
on a similar vm, I'm running a nodejs app using hlfv1-rc
dwakeman (Thu, 06 Jul 2017 14:49:32 GMT):
is the fabric-tools.zip file corrupt in the 0.9.1 release? I keep trying to download it using this command:
```curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip```
but I can't unzip the file that it downloads.
sstone1 (Thu, 06 Jul 2017 14:50:44 GMT):
works for me @dwakeman
sstone1 (Thu, 06 Jul 2017 14:50:58 GMT):
can you edit it in a text editor and see if it contains an HTTP error or something daft?
dwakeman (Thu, 06 Jul 2017 14:51:06 GMT):
hmmm... okay. I must be having a moron moment.
davidkel (Thu, 06 Jul 2017 14:53:56 GMT):
@ulysses 3.75Gb is below the minimum we recommend. Also what level of node and npm on that machine ?
dwakeman (Thu, 06 Jul 2017 14:55:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ySaYa7WfCKwnaeH5N) @sstone1 must have been something wrong with the transfer. I did it several times and got the same result, but this time the file is bigger, and it extracted properly. Thanks for checking it!
ulysses (Thu, 06 Jul 2017 14:56:09 GMT):
node v6.11.0
npm 4.1.0
ulysses (Thu, 06 Jul 2017 14:56:09 GMT):
@davidkel node v6.11.0 npm v4.1.0
davidkel (Thu, 06 Jul 2017 15:01:11 GMT):
@ulysses I have no idea what the issue is, it's a grpc error and composer doesn't use grpc directly it uses the fabric-node-sdk which uses grpc. If you have tried clearing everything out and starting again and still have the problem then all I can think of is that 3.75Gb really isn't enough. I assume it is a 64bit instance of Ubuntu and not 32bit (If that even still exists for 16.04).
ulysses (Thu, 06 Jul 2017 15:03:47 GMT):
@davidkel it's a 64 bit instance. I'll try reprovisioning a VM with more RAM and see if it works
mahoney1 (Thu, 06 Jul 2017 15:43:28 GMT):
@here fyi the Community call will start in about 19 minutes - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3
jeffgarratt (Thu, 06 Jul 2017 15:44:27 GMT):
@mahoney1 is the comm call right forum for specific q's?
jeffgarratt (Thu, 06 Jul 2017 15:45:08 GMT):
I have a few wrt to participant IDs and user mapping
mahoney1 (Thu, 06 Jul 2017 15:45:36 GMT):
@here agenda is here: https://github.com/hyperledger/composer/wiki/Meeting-6th-July-2017
coder-ajay (Thu, 06 Jul 2017 16:05:00 GMT):
@sstone1 @mahoney1 : any other clue on why the explorer is not refreshing after changes in the asset, participant and transaction structure? After uploading on playground, the submit transaction is throwing error which I need to look into. Can this be the reason for explorer not getting updated?
Pere-Lluis (Thu, 06 Jul 2017 17:16:42 GMT):
I couldn't join the meeting but I have question regarding the ACL. Is it possible to allow participants only to issue transactions, but then allow those transactions to create or modify assets belonging to that participant or others?
Pere-Lluis (Thu, 06 Jul 2017 17:31:45 GMT):
okey, nervermind, found it in the documentation
dtyson (Thu, 06 Jul 2017 18:06:00 GMT):
Has joined the channel.
mahoney1 (Thu, 06 Jul 2017 20:06:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ssMwC5WM2JGubdXu6) @coder-ajay I think I may have a clue - the prepublish earlier is premised on doing a mkdir &&
mahoney1 (Thu, 06 Jul 2017 20:06:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ssMwC5WM2JGubdXu6) @coder-ajay I think I may have a clue - the prepublish earlier is premised on doing a mkdir &&
mahoney1 (Thu, 06 Jul 2017 20:08:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=S6E6BbaNA7ykJLiwg) @jeffgarratt sorry for delay, yes indeed please ask away..
gauthampamu (Thu, 06 Jul 2017 20:25:00 GMT):
@sstone1 Do you have a working sample of Composer that uses Fabric with Kafka and Zookeepers. Fabric sample just uses fabric with solo orderer which is not really how you would use in production/pilot environment. So I wanted to try composer with kafka network configuration.
sstone1 (Thu, 06 Jul 2017 20:25:52 GMT):
@gauthampamu no, we don't - there's nothing in Composer that cares what ordering service you use, so if you set up a Fabric with Kafka then Composer will deploy to it just fine.
gauthampamu (Thu, 06 Jul 2017 20:31:14 GMT):
If there are five organizations in the network and each organization has one peer or two peers. If you are building the application for organization A so when you are defining the connection profile, do you have to provide the hostnames of all the peers in the network, or is it sufficient to just provide the peer of your organization.
sstone1 (Thu, 06 Jul 2017 20:53:25 GMT):
when you are submitting Fabric v1.0 transactions, you must submit the transaction to all peers in the network that need to endorse that transaction
sstone1 (Thu, 06 Jul 2017 20:53:37 GMT):
so your Composer connection profile needs to have all peers required to meet the endorsement policy
levinkwong (Fri, 07 Jul 2017 03:02:55 GMT):
Has joined the channel.
baoyangc (Fri, 07 Jul 2017 03:40:01 GMT):
`VALID_ENDORSEMENT_POLICY_STRING = '{"identities":[{ "role": { "name": "member", "mspId": "Org1MSP" }}], "policy": {"1-of": [{"signed-by":0}]}}';` i see this in the source code. so in cli, if i want to config policy,
the command should like "composer network deploy -o '{"identities":[{ "role": { "name": "member", "mspId": "Org1MSP" }}], "policy": {"1-of": [{"signed-by":0}]}}'
dselman (Fri, 07 Jul 2017 03:52:37 GMT):
please check docs
dselman (Fri, 07 Jul 2017 03:53:01 GMT):
see the cli docs for `composer network deploy`
baoyangc (Fri, 07 Jul 2017 03:59:30 GMT):
thanks, i have see the updates at https://hyperledger.github.io/composer/reference/composer.network.deploy.html
BalajiSR (Fri, 07 Jul 2017 05:13:57 GMT):
Has joined the channel.
hei 48 (Fri, 07 Jul 2017 05:34:23 GMT):
Has joined the channel.
chenxuan (Fri, 07 Jul 2017 07:08:32 GMT):
Message Attachments
chenxuan (Fri, 07 Jul 2017 07:08:43 GMT):
@sstone1 take a look
chenxuan (Fri, 07 Jul 2017 07:09:09 GMT):
i start the docker-composer the test the bna
sstone1 (Fri, 07 Jul 2017 07:09:11 GMT):
you are trying to import a BNA file using the Add file button
chenxuan (Fri, 07 Jul 2017 07:09:17 GMT):
yes
sstone1 (Fri, 07 Jul 2017 07:09:24 GMT):
you need to use the Import button in the bottom left corner
chenxuan (Fri, 07 Jul 2017 07:10:15 GMT):
no
chenxuan (Fri, 07 Jul 2017 07:10:24 GMT):
when i import the bna file
chenxuan (Fri, 07 Jul 2017 07:10:27 GMT):
it tell me
chenxuan (Fri, 07 Jul 2017 07:10:30 GMT):
the error
chenxuan (Fri, 07 Jul 2017 07:11:13 GMT):
i follow the tutorials to test
chenxuan (Fri, 07 Jul 2017 07:11:20 GMT):
https://hyperledger.github.io/composer/tutorials/tutorials.html
chenxuan (Fri, 07 Jul 2017 07:12:10 GMT):
drwxr-xr-x 3 root root 4096 7月 7 14:12 ./
drwxr-xr-x 10 root root 4096 7月 7 08:17 ../
drwxr-xr-x 3 root root 4096 7月 7 14:12 composer-data/
-rwxr-xr-x 1 root root 26012 7月 6 20:35 composer.sh*
chenxuan (Fri, 07 Jul 2017 07:12:28 GMT):
i use the composer.sh to start the playground
chenxuan (Fri, 07 Jul 2017 07:12:34 GMT):
it's ok
chenxuan (Fri, 07 Jul 2017 07:12:48 GMT):
it provide an example to test
chenxuan (Fri, 07 Jul 2017 07:13:11 GMT):
but i follow the tutorials to produce the bna
chenxuan (Fri, 07 Jul 2017 07:13:20 GMT):
the step is all right
chenxuan (Fri, 07 Jul 2017 07:13:33 GMT):
but when i import the bna file to the playground
chenxuan (Fri, 07 Jul 2017 07:13:37 GMT):
it's wrong
RudiDahle (Fri, 07 Jul 2017 07:21:06 GMT):
Has joined the channel.
sstone1 (Fri, 07 Jul 2017 07:22:52 GMT):
yes, you are clicking the wrong file to import the bna file
sstone1 (Fri, 07 Jul 2017 07:22:52 GMT):
yes, you are clicking the wrong button to import the bna file
sstone1 (Fri, 07 Jul 2017 07:23:34 GMT):
the dialog i can see behind the unsupported file type error in your screen shot is the "add file" dialog, not the "import file" dialog
Pere-Lluis (Fri, 07 Jul 2017 07:26:05 GMT):
Check this @chenxuan
Pere-Lluis (Fri, 07 Jul 2017 07:26:14 GMT):
Message Attachments
chenxuan (Fri, 07 Jul 2017 07:27:38 GMT):
@sstone1 sorry @Pere-Lluis thx
Pere-Lluis (Fri, 07 Jul 2017 07:29:33 GMT):
No problem, it's from the documentation I'm making, the rest is in catalan, but the gif should be understandable
RudiDahle (Fri, 07 Jul 2017 07:52:58 GMT):
Hi.
I am using the trade-network from composer-sample-networks, and I have altered the trading.cto file with my own class names (Commodity, Trader, Trade etc.) but I have not changed the namespace. I also changed the functions in lib/logic.js to a function that previously have worked for me when I used composer 0.8.1. The namespace reference for the function in the logic.js file has been set to reffer to my own Trade class in the .cto.
When I try to create the .bna file with npm install I get this error message:
TypeNotFoundException: Type Commodity is not defined in namespace org.acme.trading
at ModelManager.getType (/home/bcadmin/trade-network/node_modules/composer-common/lib/modelmanager.js:380:19)
at Select.validate (/home/bcadmin/trade-network/node_modules/composer-common/lib/query/select.js:124:45)
at Query.validate (/home/bcadmin/trade-network/node_modules/composer-common/lib/query/query.js:119:21)
at queries.forEach (/home/bcadmin/trade-network/node_modules/composer-common/lib/query/queryfile.js:102:19)
at Array.forEach (native)
at QueryFile.validate (/home/bcadmin/trade-network/node_modules/composer-common/lib/query/queryfile.js:101:22)
at QueryManager.setQueryFile (/home/bcadmin/trade-network/node_modules/composer-common/lib/querymanager.js:70:19)
at Function.fromDirectory (/home/bcadmin/trade-network/node_modules/composer-common/lib/businessnetworkdefinition.js:543:51)
at Function.handler (/home/bcadmin/trade-network/node_modules/composer-cli/lib/cmds/archive/lib/create.js:80:42)
at Object.module.exports.handler (/home/bcadmin/trade-network/node_modules/composer-cli/lib/cmds/archive/createCommand.js:31:30)
What am I missing here?
RudiDahle (Fri, 07 Jul 2017 08:00:56 GMT):
Side note. I just tried to change my asset name back to Commodity. Now "npm install" runs without any errors. Why can't I rename Commodity to something else?
sstone1 (Fri, 07 Jul 2017 08:02:04 GMT):
looks like Commodity is referenced somewhere else
sstone1 (Fri, 07 Jul 2017 08:02:12 GMT):
in a `queries.qry` file judging by the error
RudiDahle (Fri, 07 Jul 2017 08:04:04 GMT):
I was thinking it might be something like that. But I hav epreviously done the same thing in the my-network tutorial (this was in composer 0.8.1), and I could rename Commodity to whatever as long as I referenced to the new name in my .js functions
RudiDahle (Fri, 07 Jul 2017 08:04:30 GMT):
Which worked fine
Pere-Lluis (Fri, 07 Jul 2017 08:26:50 GMT):
There's something weird with playground. I used to be able to debug and set breakpoints to the .js to debug a transaction (using chrome Developer Tools) and with the latest version, breakpoints don't stop the code.
Pere-Lluis (Fri, 07 Jul 2017 08:27:09 GMT):
Is it only happening to me or has anyone else experienced it to?
sstone1 (Fri, 07 Jul 2017 08:36:12 GMT):
@Pere-Lluis i didn't know you could do that, cool!
sstone1 (Fri, 07 Jul 2017 08:36:22 GMT):
i did have it working in VSCode
sstone1 (Fri, 07 Jul 2017 08:36:40 GMT):
will take a look
Pere-Lluis (Fri, 07 Jul 2017 08:40:24 GMT):
Well it's working now using firefox
Pere-Lluis (Fri, 07 Jul 2017 08:40:36 GMT):
And I'm trying to restart chrome
Pere-Lluis (Fri, 07 Jul 2017 08:40:40 GMT):
it's very useful, yes
Pere-Lluis (Fri, 07 Jul 2017 08:41:05 GMT):
how are you able to debug using VSCode? you have to attach it or something?
Banggijin (Fri, 07 Jul 2017 08:45:31 GMT):
I think there are some bug on AssetRegistry.updateAll()
Banggijin (Fri, 07 Jul 2017 08:45:45 GMT):
accounts.forEach(function(account){
openAccountRegistry.update(account);
});
//openAccountRegistry.updateAll(accounts);
Banggijin (Fri, 07 Jul 2017 08:46:19 GMT):
I have two assets in openAccount asset
Banggijin (Fri, 07 Jul 2017 08:47:02 GMT):
when modifed them in processor function and updateAll(), only first one of the asset array updated
Banggijin (Fri, 07 Jul 2017 08:47:21 GMT):
and after that I used update with forEach, then they updated properly
RudiDahle (Fri, 07 Jul 2017 08:55:30 GMT):
@sstone1 You were right! There was several references in the query.qry file (a file I did not know existed, just started with composer 0.9 yesterday). Thank you!
chenxuan (Fri, 07 Jul 2017 09:02:42 GMT):
Error: error trying login and get user Context. Error: error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
Command failed
chenxuan (Fri, 07 Jul 2017 09:03:19 GMT):
@sstone1
chenxuan (Fri, 07 Jul 2017 09:03:26 GMT):
composer network deploy -a my-network.bna -p hlfv1 -i admin -s adminpw
chenxuan (Fri, 07 Jul 2017 09:03:40 GMT):
i user the command to
davidkel (Fri, 07 Jul 2017 09:18:35 GMT):
@chenxuan the command is unable to communicate with your locally running fabric. Have you started it ? Also for network deploy you cannot use the 'admin' id to deploy. If you are using the fabric dev server we provide then you must use the id 'PeerAdmin' to deploy. There is no secret for it but you do need to provide a secret for now
davidkel (Fri, 07 Jul 2017 09:18:35 GMT):
@chenxuan the command is unable to communicate with your locally running fabric. Have you started it ? Also for network deploy you cannot use the 'admin' id to deploy. If you are using the fabric dev server we provide then you must use the id 'PeerAdmin' to deploy. There is no secret for it but you do need to provide a secret for now (so you can leave it as adminpw if you wish)
chenxuan (Fri, 07 Jul 2017 09:19:54 GMT):
root@chenxuan-ThinkPad-X240:/home/chenxuan/project/my-network/dist# composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My very first Hyperledger Composer Network
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed
Command failed
davidkel (Fri, 07 Jul 2017 09:20:53 GMT):
@chenxuan same symptom different error, it cannot communicate with a locally running fabric. Have you started it ?
chenxuan (Fri, 07 Jul 2017 09:21:19 GMT):
ok
chenxuan (Fri, 07 Jul 2017 09:21:27 GMT):
@davidkel i try it
Pere-Lluis (Fri, 07 Jul 2017 09:21:29 GMT):
I have a var index = asset.apportionments.findIndex(x => x.getIdentifier() === (asset.getIdentifier()+me.getIdentifier()))
but I get that the token > is not allowed in playground, isn't it allowed?
Pere-Lluis (Fri, 07 Jul 2017 09:22:08 GMT):
(I am trying to make a "getIndex" for an array of objects)
davidkel (Fri, 07 Jul 2017 09:22:15 GMT):
@Pere-Lluis arrow functions are not supported, sorry.
Pere-Lluis (Fri, 07 Jul 2017 09:22:34 GMT):
okey @davidkel Do you have any alternative solution?
Pere-Lluis (Fri, 07 Jul 2017 09:23:01 GMT):
I have an array of relationships on an asset, and I want to get the index of the one with a certain identifier
Pere-Lluis (Fri, 07 Jul 2017 09:23:41 GMT):
it is in order to set a ACL, kind of how it's done for the pii example, but with an array of objects, instead of a string
davidkel (Fri, 07 Jul 2017 09:24:23 GMT):
@Pere-Lluis you have to use old style function declarations of javascipt. This page gives an example
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/findIndex
Pere-Lluis (Fri, 07 Jul 2017 09:25:14 GMT):
@davidkel thanks!
chenxuan (Fri, 07 Jul 2017 09:28:58 GMT):
root@chenxuan-ThinkPad-X240:/home/chenxuan/project/my-network/dist# composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My very first Hyperledger Composer Network
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
Command failed
root@chenxuan-ThinkPad-X240:/home/chenxuan/project/my-network/dist# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e24b64340ba2 hyperledger/fabric-peer:x86_64-1.0.0-rc1 "peer node start -..." 3 minutes ago Up 3 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
0f20c32fd75f hyperledger/fabric-orderer:x86_64-1.0.0-rc1 "orderer" 3 minutes ago Up 3 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
b3ce776ab9c3 hyperledger/fabric-couchdb:x86_64-1.0.0-rc1 "tini -- /docker-e..." 3 minutes ago Up 3 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
33b5185d65bb hyperledger/fabric-ca:x86_64-1.0.0-rc1 "sh -c 'fabric-ca-..." 3 minutes ago Up 3 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
root@chenxuan-ThinkPad-X240:/home/chenxuan/project/my-network/dist#
chenxuan (Fri, 07 Jul 2017 09:29:01 GMT):
@davidkel
davidkel (Fri, 07 Jul 2017 09:30:00 GMT):
@chenxuan could you re-run `createComposerProfile.sh` and try again
Pere-Lluis (Fri, 07 Jul 2017 09:30:01 GMT):
@chenxuan have you created your identity for PeerAdmin?
chenxuan (Fri, 07 Jul 2017 09:31:07 GMT):
i try it
chenxuan (Fri, 07 Jul 2017 09:31:55 GMT):
it's ok
Pere-Lluis (Fri, 07 Jul 2017 09:33:12 GMT):
@davidkel when you use findIndex for the ACL, where should I define the function for it?
Pere-Lluis (Fri, 07 Jul 2017 09:33:33 GMT):
I think it's something new added recently right? to use js in ACL?
davidkel (Fri, 07 Jul 2017 09:35:11 GMT):
I would use the old style javascript anonymous file declaration
```
arr.findIndex(function() {//some implementation})
```
davidkel (Fri, 07 Jul 2017 09:35:11 GMT):
I would use the old style javascript anonymous file declaration
```
arr.findIndex(function() {/*some implementation*/})
```
Pere-Lluis (Fri, 07 Jul 2017 09:36:41 GMT):
@davidkel okey thanks
Pere-Lluis (Fri, 07 Jul 2017 09:38:03 GMT):
@davidkel ny the way, how do you write code here in the chat? I can't figure it out
davidkel (Fri, 07 Jul 2017 09:38:46 GMT):
I use a single backtick to start/end an inline quote, three backticks to start/end a multiline quote
Pere-Lluis (Fri, 07 Jul 2017 09:39:19 GMT):
okey thanks!
Pere-Lluis (Fri, 07 Jul 2017 09:39:19 GMT):
okey thanks! `code`
Pere-Lluis (Fri, 07 Jul 2017 09:39:19 GMT):
okey thanks!
Pere-Lluis (Fri, 07 Jul 2017 09:39:34 GMT):
\ here is some code \
elrond (Fri, 07 Jul 2017 09:47:21 GMT):
Has joined the channel.
elrond (Fri, 07 Jul 2017 09:52:22 GMT):
hey guys, after i generate the bna file i run the command : "composer network deploy -a blockchain.bna -p hlfv1 -i PeerAdmin -s randomString" and get the following :
Deploying business network from archive: blockchain.bna
IllegalModelException: Failed to find namespace net.croz
Command failed
which makes no sense, since my friend runs the project normally. any help as to why its not getting the namespace?
mahoney1 (Fri, 07 Jul 2017 09:54:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Xxw5sW9GwrDWjtwMD) @elrond could you post the model file here please? Seems to be a problem in the model file at first glance.
levinkwong (Fri, 07 Jul 2017 09:54:39 GMT):
Hi all, I install the composer with `npm install -g composer-cli@0.9.0` but then I check the version with `composer -v`, it shows
```
composer-cli v0.9.0
composer-admin v0.9.1
composer-client v0.9.1
composer-common v0.9.1
composer-runtime-hlf v0.9.1
composer-runtime-hlfv1 v0.9.1
```
Why 0.9.1 stuffs are installed?
elrond (Fri, 07 Jul 2017 09:56:38 GMT):
ofcourse, here is a part of it:
namespace net.croz.blockchain
abstract participant PravnaOsoba identified by oib {
o String oib
}
//TODO regexi za provjeru (https://hyperledger.github.io/composer/reference/cto_language.html pod 'Field Validation')
participant PrivatnaOsoba extends PravnaOsoba {
o String ime
o String prezime
}
participant PoreznaUprava extends PravnaOsoba {
o PoreznaObveza[] listaDuznika
--> Banka banka
}
// ovo cemo mjenjati kada saznam jos vise o djelatnostima porezne uprave. Za pocetak reci cemo da je funkcija porezne provjeriti je li osoba duznik ili ne
// sto smo modelirali pomocu koncepta PoreznaObveza.
concept PoreznaObveza{
--> PravnaOsoba p
o Boolean duznikOsoba
}
elrond (Fri, 07 Jul 2017 09:56:52 GMT):
is this of any help to you?
mahoney1 (Fri, 07 Jul 2017 10:33:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=49gNr7pehHM3HeY5P) @elrond aside from the resolution of --> Banka banka (which may be elsewhere defined in your model file) it looks good. If you don't have a local playground installed, you can if you wish, validate your model in http://composer-playground.mybluemix.net/editor - it will highlight any exceptions (assuming you've not validated it already). One thing to note: the error above says 'failed to find namespace net.croz ' - in your model file the namespace is defined as namespace net.croz.blockchain - can you check the js files if you're using a shortened reference, @param maybe?
Velibor (Fri, 07 Jul 2017 10:36:03 GMT):
Has joined the channel.
mahoney1 (Fri, 07 Jul 2017 10:38:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8WMcrLqpcYYdREeL9) @levinkwong is this the first time you installed or you had a previous install? it would seem like v0.9.1 was there previously, so only CLI was 'downgraded' to v0.9.0. You should do `npm uninstall -g composer-cli` - then verify with `composer -v` that it is removed. Then perform the `npm install -g composer-cli@0.9.0` if you wish to install that version - then once again composer -v and see that the versions are as they should be.
Velibor (Fri, 07 Jul 2017 10:38:59 GMT):
Hi to all, does anyone know how to update composer, my current -v is 0.8.1?
mahoney1 (Fri, 07 Jul 2017 10:48:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qCiTMQ9utLhC2RukW) @Velibor hi, yes you need to unininstall with `npm uninstall -g composer-cli` and then perform `npm install -g composer-cli` and this will get you the latest Composer version (v0.9.1). (Also, if you have composer-rest-server or generator-hyperledger-composer installed backlevel you would have to uninstall and install to latest)
Velibor (Fri, 07 Jul 2017 10:49:54 GMT):
Thanks @mahoney1
davidoevans (Fri, 07 Jul 2017 11:02:13 GMT):
Can CQL be used to query for participants or does it only work for assets?
levinkwong (Fri, 07 Jul 2017 11:11:25 GMT):
@mahoney1 It is my first install
mahoney1 (Fri, 07 Jul 2017 11:15:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8WMcrLqpcYYdREeL9) @levinkwong it turns out that there is a Github issue relating to version inconsistency when installing earlier composer versions https://github.com/hyperledger/composer/issues/651 (item 2) - so doing `npm install -g composer-cli@0.9.0` will still give you the same version mix (as you had posted before). Until that Github issue is resolved, the alternative solution is to get the docker image eg. `docker pull hyperledger/composer-cli:0.9.0` and `docker run hyperledger/composer:0.9.0` and do your development inside the docker image
mahoney1 (Fri, 07 Jul 2017 11:15:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8WMcrLqpcYYdREeL9) @levinkwong it turns out that there is a Github issue relating to version inconsistency when installing earlier composer versions https://github.com/hyperledger/composer/issues/651 (item 2) - so doing `npm install -g composer-cli@0.9.0` will still give you the same version mix (as you had posted before). Until that Github issue is resolved, the alternative solution is to get the docker image eg. `docker pull hyperledger/composer-cli:0.9.0` and `docker run hyperledger/composer-cli:0.9.0` and do your development inside the docker image
levinkwong (Fri, 07 Jul 2017 11:16:17 GMT):
@mahoney1 Thanks :) I may first try to move on to 0.9.1
mahoney1 (Fri, 07 Jul 2017 11:16:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AmjnNCA7NfpoG9Mes) @levinkwong thanks for the info. posted a response just now.
mahoney1 (Fri, 07 Jul 2017 11:16:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ezyj7MWf22fZPs8mX) @levinkwong ok thanks @levinkwong
Pere-Lluis (Fri, 07 Jul 2017 11:31:01 GMT):
Okey, I'm getting something weird `Error: error trying deploy. Error: error trying instantiate chaincode. Error: Failed to execute transaction (Timeout expired while executing transaction)`
Pere-Lluis (Fri, 07 Jul 2017 11:31:15 GMT):
When I try to deploy the .bna
Pere-Lluis (Fri, 07 Jul 2017 11:31:53 GMT):
I have tried to rise the timeout to 600, but still got it, will try to rise it more but is this usual?
Pere-Lluis (Fri, 07 Jul 2017 11:38:11 GMT):
Also I don't think it has to do with the timeout in the connection profile
Pere-Lluis (Fri, 07 Jul 2017 11:38:19 GMT):
any clue someone?
Pere-Lluis (Fri, 07 Jul 2017 11:38:19 GMT):
cool thanks, I will now
davidkel (Fri, 07 Jul 2017 11:41:15 GMT):
@Pere-Lluis look in the docker-compose.yml file (in the hlfv1 directory) of the fabric dev server. In the environment section add
`- CORE_CHAINCODE_EXECUTETIMEOUT=90s` to set the fabric execution timeout to 90 secs. eg
```
peer0.org1.example.com:
container_name: peer0.org1.example.com
image: hyperledger/fabric-peer:x86_64-1.0.0-rc1
environment:
- CORE_LOGGING_PEER=debug
- CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
davidkel (Fri, 07 Jul 2017 11:41:15 GMT):
@Pere-Lluis look in the docker-compose.yml file (in the hlfv1 directory) of the fabric dev server. In the environment section add
`- CORE_CHAINCODE_EXECUTETIMEOUT=90s` to set the fabric execution timeout to 90 secs. eg
```
peer0.org1.example.com:
container_name: peer0.org1.example.com
image: hyperledger/fabric-peer:x86_64-1.0.0-rc1
environment:
- CORE_CHAINCODE_EXECUTETIMEOUT=90s
- CORE_LOGGING_PEER=debug
- CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
Velibor (Fri, 07 Jul 2017 11:43:29 GMT):
I was recently created tic-tac game in hyperledger composer where participant is "Player", asset is "Game" and transaction is NextMove(there i have info about which player is on move, field on hi is playing, type of field(TIC or TAC) and relation to Game). If try to play fast(which means large number of transaction per second) a get this error: "at process._tickCallback (internal/process/next_tick.js:109:7)
Unhandled error for request POST /api/NextMove: Error: error trying invoke chaincode. Error: Peer has rejected transaction 'cc0883d0249b9514aab6efd409e4c3a3b09c71f5972b08ed4c30ad4762a14c7f' with cdoe MVCC_READ_CONFLICT
at _initializeChannel.then.then.then.then.catch (/usr/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:839:3".
Pere-Lluis (Fri, 07 Jul 2017 11:45:30 GMT):
@davidkel worked, thanks!
Velibor (Fri, 07 Jul 2017 11:47:51 GMT):
Is there limitation for number of transaction per second in hyperledger fabric?
coder-ajay (Fri, 07 Jul 2017 11:49:33 GMT):
hi ... is`npm install` the correct command to update an existing .bna file locally? or its `composer archive create`?
coder-ajay (Fri, 07 Jul 2017 11:49:33 GMT):
hi ... is`npm install` the correct command to update an existing .bna file locally? or its `composer archive create`?
chenxuan (Fri, 07 Jul 2017 12:17:48 GMT):
Error: EACCES: permission denied, open '/root/.config/configstore/insight-yo.json'
You don't have access to this file
chenxuan (Fri, 07 Jul 2017 12:17:56 GMT):
anyone occur the question
mahoney1 (Fri, 07 Jul 2017 12:49:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2cDXPHLPL6PNmY9EP) @coder-ajay it is definitely better to use `composer archive create` as in `composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna` - as its a composer task. The npm install (in the tutorial at least) will do the archive create the first time you install the app. Beyond that, its good to get in the habit of running the composer command line to archive, deploy etc.
mahoney1 (Fri, 07 Jul 2017 13:04:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GeQjiyRxJz4xPC8e2) @chenxuan hi there - can you create a Stack Overflow question for this - as there is a reason why you are seeing this (to do with yo, but broader advice too)
chenxuan (Fri, 07 Jul 2017 13:05:01 GMT):
@mahoney1 i have send email to the yo
chenxuan (Fri, 07 Jul 2017 13:05:40 GMT):
oot@chenxuan-ThinkPad-X240:/home/chenxuan# yo
/root/.nvm/versions/node/v6.11.0/lib/node_modules/yo/node_modules/insight/node_modules/configstore/index.js:53
throw err;
^
Error: EACCES: permission denied, open '/root/.config/configstore/insight-yo.json'
You don't have access to this file.
at Error (native)
at Object.fs.openSync (fs.js:641:18)
at Object.fs.readFileSync (fs.js:509:33)
at Object.get (/root/.nvm/versions/node/v6.11.0/lib/node_modules/yo/node_modules/insight/node_modules/configstore/index.js:34:26)
at Object.Configstore.get (/root/.nvm/versions/node/v6.11.0/lib/node_modules/yo/node_modules/insight/node_modules/configstore/index.js:81:13)
at Insight.get (/root/.nvm/versions/node/v6.11.0/lib/node_modules/yo/node_modules/insight/lib/index.js:48:22)
at Object.
chenxuan (Fri, 07 Jul 2017 13:05:54 GMT):
@mahoney1 i try to modify the owner of the file
chenxuan (Fri, 07 Jul 2017 13:06:08 GMT):
but it is generated each time
chenxuan (Fri, 07 Jul 2017 13:06:29 GMT):
i think it's a bug about yo
chenxuan (Fri, 07 Jul 2017 13:06:54 GMT):
root@chenxuan-ThinkPad-X240:/home/chenxuan# ll /root/.config/configstore//insight-yo.json
-rw------- 1 root root 30 7月 7 21:05 /root/.config/configstore//insight-yo.json
chenxuan (Fri, 07 Jul 2017 13:07:08 GMT):
root@chenxuan-ThinkPad-X240:/home/chenxuan# ll /root/.config/configstore//insight-yo.json
-rw------- 1 root root 30 7月 7 21:05 /root/.config/configstore//insight-yo.json
root@chenxuan-ThinkPad-X240:/home/chenxuan# ^C
root@chenxuan-ThinkPad-X240:/home/chenxuan# yo
/root/.nvm/versions/node/v6.11.0/lib/node_modules/yo/node_modules/insight/node_modules/configstore/index.js:53
throw err;
^
Error: EACCES: permission denied, open '/root/.config/configstore/insight-yo.json'
You don't have access to this file.
at Error (native)
at Object.fs.openSync (fs.js:641:18)
at Object.fs.readFileSync (fs.js:509:33)
at Object.get (/root/.nvm/versions/node/v6.11.0/lib/node_modules/yo/node_modules/insight/node_modules/configstore/index.js:34:26)
at Object.Configstore.get (/root/.nvm/versions/node/v6.11.0/lib/node_modules/yo/node_modules/insight/node_modules/configstore/index.js:81:13)
at Insight.get (/root/.nvm/versions/node/v6.11.0/lib/node_modules/yo/node_modules/insight/lib/index.js:48:22)
at Object.
chenxuan (Fri, 07 Jul 2017 13:07:14 GMT):
the time is not equal
mahoney1 (Fri, 07 Jul 2017 13:15:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jyXihGD77H45gY26w) @chenxuan the cause of your problem is yo is not supported as user 'root' . Note also (by way of information) you should also not install composer or composer modules as root, you can encounter problems (preferably use a 'normal' Ubuntu user or use "npm config set prefix /home/myuser/" -
In this case, global binaries are placed in /home/myuser/bin which is in your PATH, and the modules are placed in /home/myuser/lib ...
ShobhanaSundararaman (Fri, 07 Jul 2017 13:31:08 GMT):
After repeated attempts I was able to install the composer development environment with latest fabric 1.0-RC1. But after starting the composer-rest-server for generating the REST API, I get a successful message as Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer. But when I access the URL in browser it says "ERR_CONNECTION_REFUSED". Mine is a Ubuntu VM running on AWS. I even tried access by giving the IP. http://IPaddress:3000/explorer, but still unsuccessful. Can someone help me
mahoney1 (Fri, 07 Jul 2017 13:33:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3BGz7rwhw5mKW6QPv) @ShobhanaSundararaman as its Ubuntu can you post `netstat -a |grep 3000` please - also did the composer-rest-server output indicate it discovered your business network? (assuming its deployed).
ShobhanaSundararaman (Fri, 07 Jul 2017 13:37:39 GMT):
@mahoney1 Please find the details..
ShobhanaSundararaman (Fri, 07 Jul 2017 13:37:40 GMT):
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
ShobhanaSundararaman (Fri, 07 Jul 2017 13:37:52 GMT):
ubuntu@ip-172-31-42-136:~$ netstat -a |grep 3000
unix 3 [ ] STREAM CONNECTED 13000 /run/systemd/journal/stdout
mahoney1 (Fri, 07 Jul 2017 13:40:28 GMT):
ok, so composer-rest-server (which should still be running in the same window above) is not running... the question is did it exit - can you try running it again `composer-rest-server`
mahoney1 (Fri, 07 Jul 2017 13:41:22 GMT):
and it should stay as an active process in your current window (then try browser your REST APIs at http://localhost:3000/explorer )
ShobhanaSundararaman (Fri, 07 Jul 2017 13:46:50 GMT):
@mahoney1 The composer-rest-server is running in Window1 (Active). I tried the netstat in window2
davidoevans (Fri, 07 Jul 2017 13:46:58 GMT):
as of v0.9.0 CQL is returning empty results when I try to query participants. However, I am able to query assets. I tried going back to accessing the `
ShobhanaSundararaman (Fri, 07 Jul 2017 13:49:09 GMT):
@mahoney1 Sorry my netstat result is as follows:
ShobhanaSundararaman (Fri, 07 Jul 2017 13:49:11 GMT):
ubuntu@ip-172-31-42-136:~$ netstat -a |grep 3000
tcp 0 0 *:3000 *:* LISTEN
unix 3 [ ] STREAM CONNECTED 13000 /run/systemd/journal/stdout
ShobhanaSundararaman (Fri, 07 Jul 2017 14:01:08 GMT):
@mahoney1 Thanks..got the result now after enabling the port 3000 in Security group of aws
Pere-Lluis (Fri, 07 Jul 2017 14:01:19 GMT):
I'm getting a weird error when using the Composer-rest-server
Pere-Lluis (Fri, 07 Jul 2017 14:02:03 GMT):
If I issue an identity using `composer identity issue -n 'bonusetis' -i admin -s adminpw -u danigranados -a "org.basetis.bonusetis.user#dani" -p hlfv1` it works
mahoney1 (Fri, 07 Jul 2017 14:02:17 GMT):
ok cool [ ](https://chat.hyperledger.org/channel/composer?msg=NpytSSToDnXmKtdx6) @ShobhanaSundararaman ah, cool, great -
thought it might be network security related
Pere-Lluis (Fri, 07 Jul 2017 14:02:41 GMT):
but when I try to do it using the restAPI with the same participant (admin:adminpw), i get the following:
Pere-Lluis (Fri, 07 Jul 2017 14:02:56 GMT):
```{
"error": {
"statusCode": 500,
"name": "Error",
"message": "error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Invalid fully qualified participant identifier)",
"stack": "Error: error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Invalid fully qualified participant identifier)\n at _initializeChannel.then.then.then.then.catch (/usr/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:839:34)"
}
}```
Pere-Lluis (Fri, 07 Jul 2017 14:03:52 GMT):
the composer rest server was started with the command `composer-rest-server -p hlfv1 -n bonusetis -i admin -s adminpw -N never`
Pere-Lluis (Fri, 07 Jul 2017 14:07:35 GMT):
Is there anything in the RestAPI to prevent issuing new Identities? Do we have to issue them elsewhere?
Dpkkmr (Fri, 07 Jul 2017 14:19:22 GMT):
Message Attachments
mahoney1 (Fri, 07 Jul 2017 14:19:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uwT9ouhPzukx3sCrB) @Pere-Lluis could you raise a Stack overflow with the code that trying to do the same `issue` and we can see what's going on ?
Dpkkmr (Fri, 07 Jul 2017 14:19:46 GMT):
Message Attachments
Dpkkmr (Fri, 07 Jul 2017 14:19:50 GMT):
Hi All,
I am facing one strange issue.
I am using beta build of the fabric to test car auction sample code. I am able to generate and deploy the carauction-network.bna file. I am able to use composer-rest-server and connect to carauction-network.
Using Rest service I am able to generate:
1. Auctioneer, Members
2. Vehicle and Listing
3. I am able to offer first bid.
But when I am trying to submit my second offer using Post webservice I am getting this error.
Dpkkmr (Fri, 07 Jul 2017 14:19:50 GMT):
Hi All,
I am facing one strange issue.
I am using beta build of the fabric to test car auction sample code. I am able to generate and deploy the carauction-network.bna file. I am able to use composer-rest-server and connect to carauction-network.
Using Rest service I am able to generate:
1. Auctioneer, Members
2. Vehicle and Listing
3. I am able to offer first bid.
But when I am trying to submit my second offer using Post, I am getting this error.
Any help in resolving this issue is appriciated.
Dpkkmr (Fri, 07 Jul 2017 14:19:50 GMT):
Hi All,
I am facing one strange issue.
I am using beta build of the fabric to test car auction sample code. I am able to generate and deploy the carauction-network.bna file. I am able to use composer-rest-server and connect to carauction-network.
Using Rest service I am able to generate:
1. Auctioneer, Members
2. Vehicle and Listing
3. I am able to offer first bid.
But when I am trying to submit my second offer using Post, I am getting this error.
Any help in resolving this issue is appreciated.
Dpkkmr (Fri, 07 Jul 2017 14:20:09 GMT):
Any help in resolving this issue will be a great help
Velibor (Fri, 07 Jul 2017 14:21:58 GMT):
@Dpkkmr which version of composer you use? Type in terminal composer -v.
mahoney1 (Fri, 07 Jul 2017 14:22:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QBCnRZXg6JRCeax7r) @Dpkkmr "Invalid or missing identifier for Type Offer" - can you check your model here if you wish https://composer-playground.mybluemix.net/#/editor
Dpkkmr (Fri, 07 Jul 2017 14:24:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5H5Kks9aTmf8o5SjQ) @mahoney1
I think model file looks good, I am even able to submit my first bid offer. Issue occurs when I submit the second bid offer.
Dpkkmr (Fri, 07 Jul 2017 14:24:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5H5Kks9aTmf8o5SjQ) @mahoney1
I am using the same model file present in github. I have not modified a single line in it. I think model file looks good, I am even able to submit my first bid offer. Issue occurs when I submit the second bid offer.
Pere-Lluis (Fri, 07 Jul 2017 14:30:07 GMT):
@mahoney1 sure thing!
mahoney1 (Fri, 07 Jul 2017 14:31:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jFHPP9Lh9Fs78Z6cg) @Dpkkmr ok, in which case, it sounds to me like the format of the second bid offer wasn't kosher ie missing an identifier, that the first offer DID have - is there something wrong in the JSON? That's all I can think of right now (iie the bid offer transaction)
Pere-Lluis (Fri, 07 Jul 2017 14:39:21 GMT):
@mahoney1 which code part should I add?
mahoney1 (Fri, 07 Jul 2017 14:42:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SCwxyiB4QEJwkPyLs) @Pere-Lluis the piece that shows you injecting the relevant JSON to the RESTful API call to issue the identity.
Pere-Lluis (Fri, 07 Jul 2017 14:50:34 GMT):
@mahoney1 okey, but I'm using the rest-composer-server with the Loopback
Pere-Lluis (Fri, 07 Jul 2017 14:50:43 GMT):
I'll add anyways what the loopback is sending
sstone1 (Fri, 07 Jul 2017 14:52:43 GMT):
@Pere-Lluis can you send the JSON request body?
Pere-Lluis (Fri, 07 Jul 2017 14:53:12 GMT):
@sstone1 https://stackoverflow.com/questions/44973828/issuing-an-identity-for-a-participant-not-working-on-restapi-but-it-does-in-com
mahoney1 (Fri, 07 Jul 2017 14:53:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WF52zrR5ENyMsH5yb) @Velibor this is really a Fabric question - it depends on the complexity of the network setup and a whole host of factors - you can post your question on #fabric-questions
Pere-Lluis (Fri, 07 Jul 2017 14:54:09 GMT):
@sstone1 I just deleted the options: {}
Pere-Lluis (Fri, 07 Jul 2017 14:54:28 GMT):
but I still got the error if I left it empty
davidkel (Fri, 07 Jul 2017 14:58:41 GMT):
@Pere-Lluis With the deploy timeout you were receiving, could you recreate it and create a github issue with the chaincode logs attached please ? might be that there is useful information to help us improve performance
mahoney1 (Fri, 07 Jul 2017 15:03:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=f5AekeTeizg8vtmFE) @Pere-Lluis hi there, I responded to this on S/Overflow. You need the fully-qualified participant name in the CURL command effectively. (Example in S/O(
Pere-Lluis (Fri, 07 Jul 2017 15:05:30 GMT):
@davidkel I will try to recreate it and post it @mahoney1 thanks, I'll take a look now
Dpkkmr (Fri, 07 Jul 2017 15:08:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KPXniQvcsWq6WuFde) @Velibor
Composer v0.9.0
Pere-Lluis (Fri, 07 Jul 2017 15:08:34 GMT):
@mahoney1 oh, I see, then it was totally my fault, I thought that it the RestAPI was only needed to add the ID of the participant, not the full name. It worked now
Dpkkmr (Fri, 07 Jul 2017 15:09:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=X2jgaH5udb5MRFimG) @mahoney1
Working Condition:
When I submit the first transaction
Dpkkmr (Fri, 07 Jul 2017 15:09:45 GMT):
Message Attachments
Dpkkmr (Fri, 07 Jul 2017 15:10:41 GMT):
Message Attachments
Dpkkmr (Fri, 07 Jul 2017 15:10:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sWBqJsKmDATxgDPAQ) @Dpkkmr
When I try to submit second bid it fails :(
Dpkkmr (Fri, 07 Jul 2017 15:10:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sWBqJsKmDATxgDPAQ)
When I try to submit second bid it fails :(
Pere-Lluis (Fri, 07 Jul 2017 15:23:24 GMT):
@davidkel https://github.com/hyperledger/composer/issues/1514
Pere-Lluis (Fri, 07 Jul 2017 15:24:51 GMT):
@davidkel should I add the .bna to?
JennFoley (Fri, 07 Jul 2017 15:25:45 GMT):
Message Attachments
JennFoley (Fri, 07 Jul 2017 15:26:38 GMT):
If my .bna worked with Composer Playground (on Bluemix) 0.8 but now gets this, do I just need to fix the namespaces or is there something else that keeps it from uploading?
mahoney1 (Fri, 07 Jul 2017 15:28:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vw5zuR8Lkr7pHAfwY) @Dpkkmr so I see (from the screenshots) two successful bids for member c1 (code:200) and one failed bid for member c2 (code:500). Suggests to me a further bid offer to c1 would also work - I don't know what dependencies there are in your model file to cause the missing identifier for the member c2 that causes the problem. The error message could be a lot better admittedly.
Pere-Lluis (Fri, 07 Jul 2017 15:29:46 GMT):
@JennFoley Can you tell what's inside the .bna?
Pere-Lluis (Fri, 07 Jul 2017 15:30:18 GMT):
I had a similar problem and there were some unused files that probably messed it up
mahoney1 (Fri, 07 Jul 2017 15:32:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kTosf8oK7ZnXQL5Lf) @JennFoley you mean you get this with a local Playground..
JennFoley (Fri, 07 Jul 2017 15:32:29 GMT):
Message Attachments
JennFoley (Fri, 07 Jul 2017 15:32:31 GMT):
Hi @Pere-Lluis this is the content.
JennFoley (Fri, 07 Jul 2017 15:33:25 GMT):
@mahoney1, the error occurs in the Composer Playground running on Bluemix. I'm guessing it's at version 0.9.1. I have a lab using that running next week
JennFoley (Fri, 07 Jul 2017 15:33:32 GMT):
Trying to get things fixed before then
Pere-Lluis (Fri, 07 Jul 2017 15:33:51 GMT):
try deleting the Archive.bna file
JennFoley (Fri, 07 Jul 2017 15:36:02 GMT):
@Pere-Lluis, no dice. Without the Archive.bna I still get the same error message
Pere-Lluis (Fri, 07 Jul 2017 15:38:08 GMT):
@JennFoley that's weird. And there's no strange files in lib or models folders, other that the js and the cto?
JennFoley (Fri, 07 Jul 2017 15:38:36 GMT):
shouldn't be. Created the file in Composer Playground originally :)
mahoney1 (Fri, 07 Jul 2017 15:39:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qWjb6WNLEEs6rcXpP) @JennFoley - if you have a query file in the bna its currently unsupported in playground I believe. Otherwise, try exporting the definition in playground to a bna and then importing - I believe its running 0.9.1 yeah.
JennFoley (Fri, 07 Jul 2017 15:40:40 GMT):
@mahoney1, I shouldn't have a query file. I wrote the code when Composer was at 0.7. How could I verify that?
mahoney1 (Fri, 07 Jul 2017 15:43:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rKGgAFRqMA4vjCxJ2) @JennFoley probably easier to paste your definition into Playground, you won't have queries given your history..I'm not sure what's causing that. Could raise an issue for this on Github https://github.com/hyperledger/composer/issues/
JennFoley (Fri, 07 Jul 2017 15:44:25 GMT):
Okay
Pere-Lluis (Fri, 07 Jul 2017 15:50:21 GMT):
@mahoney1 I'm getting an error on Playground using a transaction that used to work
Pere-Lluis (Fri, 07 Jul 2017 15:50:31 GMT):
`ReferenceError: asset is not defined`
Pere-Lluis (Fri, 07 Jul 2017 15:51:09 GMT):
but there's no variable named asset in the transaction code
davidkel (Fri, 07 Jul 2017 15:51:35 GMT):
@Pere-Lluis if you don't mind sharing the .bna file then that would be useful too. Many thanks for doing that
Pere-Lluis (Fri, 07 Jul 2017 15:53:57 GMT):
I tried to debug and the transaction is working properly, the error was:
Pere-Lluis (Fri, 07 Jul 2017 15:54:13 GMT):
Message Attachments
Pere-Lluis (Fri, 07 Jul 2017 15:54:23 GMT):
@davidkel okey, I'll add it now
Pere-Lluis (Fri, 07 Jul 2017 15:56:25 GMT):
@davidkel done
Pere-Lluis (Fri, 07 Jul 2017 15:58:06 GMT):
@mahoney1 it's working now... I don't know what was going wrong
Pere-Lluis (Fri, 07 Jul 2017 15:58:27 GMT):
I just deployed the bna again
Pere-Lluis (Fri, 07 Jul 2017 15:58:30 GMT):
anyway, thanks
davidkel (Fri, 07 Jul 2017 16:19:53 GMT):
@JennFoley Looks like you clicked "Add a file" to try to import a .bna file, you need to click import/replace instead
geoms (Fri, 07 Jul 2017 16:25:04 GMT):
I want have multiple nodes(peers) in composer environment . Is is possible to add an additional peer in hyperledger fabric through composer?
geoms (Fri, 07 Jul 2017 16:26:27 GMT):
I see in docker-compose.yml file there is a default peer peer0.org1.example.com
geoms (Fri, 07 Jul 2017 16:27:45 GMT):
When i tried to add another peer here. But not succeeded.
geoms (Fri, 07 Jul 2017 16:28:03 GMT):
Not sure, this is the right method to add another peer.
geoms (Fri, 07 Jul 2017 16:28:38 GMT):
I explored, Connection Profiles(https://hyperledger.github.io/composer/reference/connectionprofile.html).
geoms (Fri, 07 Jul 2017 16:29:55 GMT):
It seems, this will help to connect to a runtime, which already up and running. Means its doesn't add a new node(peer)
geoms (Fri, 07 Jul 2017 16:30:22 GMT):
Please help me on this
JennFoley (Fri, 07 Jul 2017 16:55:43 GMT):
@davidkel I didn't (tried a few times), but I figured out some things might have been cached and was able to modify my code in an old version of Composer Playground to remove TransactionID and be able to import to the new version. Any chance when you add code to the Playground that it doesn't deploy but lets one upload first to then make changes before deployment?
DannyWong (Fri, 07 Jul 2017 17:01:31 GMT):
Hi, i would like to know when I am defining the ACL in a composer app
DannyWong (Fri, 07 Jul 2017 17:01:49 GMT):
which layer will the ACL translated into?
DannyWong (Fri, 07 Jul 2017 17:01:58 GMT):
the express middleware?
DannyWong (Fri, 07 Jul 2017 17:02:31 GMT):
or at chaincode level before calling the JavaScript tx processor script?
mahoney1 (Fri, 07 Jul 2017 17:28:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3Ypfnbby43motkNLt) @geoms its a Fabric question - see here for an example -> http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html this brings up a 4 peer network for two orgs using a channel 'mychannel' please note - you can use this and its samples as a guide.
Creating peer0.org1.example.com
Creating peer1.org1.example.com
Creating peer0.org2.example.com
Creating orderer.example.com
Creating peer1.org2.example.com
Creating cli
mahoney1 (Fri, 07 Jul 2017 17:33:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Pp9g9vhPcNekgLsSd) @JennFoley it lets you validate your code, allows you to change it too - but will only deploy to the Fabric when you click Deploy
geoms (Fri, 07 Jul 2017 17:38:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tWbQALnMZQa9ZuSDz) @mahoney1 Thanks. That means, the environment provides by 'Fabric composer' is for single organisation and one peer in the organisation ?
mahoney1 (Fri, 07 Jul 2017 17:51:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=R9RGK37qk39xXdu52) @DannyWong The ACL rules protect access to data stored in the world state
The ACL rules on assets and participants are implemented in Composer. Composer's Access Control Engine prevents transaction processor functions written in Javascript from accessing the data in the ledger, based on the type of access requested, the current participant, and the transaction being processed
Dpkkmr (Fri, 07 Jul 2017 17:58:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5fMftqFiq6Ky4rw55) @mahoney1
I think there is a bug here. I am able to submit only for the first time. After which irrespective of user it is throwing this error.
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Invalid or missing identifier for Type Offer in namespace org.acme.vehicle.auction)",
"stack": "Error: error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Invalid or missing identifier for Type Offer in namespace org.acme.vehicle.auction)\n at _initializeChannel.then.then.then.then.catch (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:806:34)"
}
}
Dpkkmr (Fri, 07 Jul 2017 17:58:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5fMftqFiq6Ky4rw55) @mahoney1
I think there is a bug here. I am able to submit only for the first time. After which irrespective of user it is throwing this error.
REST Response :
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Invalid or missing identifier for Type Offer in namespace org.acme.vehicle.auction)",
"stack": "Error: error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Invalid or missing identifier for Type Offer in namespace org.acme.vehicle.auction)\n at _initializeChannel.then.then.then.then.catch (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:806:34)"
}
}
Dpkkmr (Fri, 07 Jul 2017 17:58:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5fMftqFiq6Ky4rw55) @mahoney1
I think there is a bug here. I am able to submit only for the first time. After which irrespective of user it is throwing this error.
REST Response :
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Invalid or missing identifier for Type Offer in namespace org.acme.vehicle.auction)",
"stack": "Error: error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Invalid or missing identifier for Type Offer in namespace org.acme.vehicle.auction)\n at _initializeChannel.then.then.then.then.catch (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:806:34)"
}
}
Console Response:
Unhandled error for request POST /api/VehicleListing: Error: Invalid or missing identifier for Type Offer in namespace org.acme.vehicle.auction
at Factory.newResource (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/factory.js:77:19)
at JSONPopulator.convertItem (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:142:50)
at JSONPopulator.visitField (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:104:34)
at JSONPopulator.visit (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:60:25)
at Field.accept (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/introspect/property.js:48:24)
at JSONPopulator.visitClassDeclaration (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:83:60)
at JSONPopulator.visit (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:56:25)
at AssetDeclaration.accept (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/introspect/classdeclaration.js:65:24)
at Serializer.fromJSON (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer.js:160:26)
at ensureConnected.then (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:558:43)
at process._tickCallback (internal/process/next_tick.js:109:7)
Unhandled error for request POST /api/Offer: Error: error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Invalid or missing identifier for Type Offer in namespace org.acme.vehicle.auction)
at _initializeChannel.then.then.then.then.catch (/root/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:806:34)
mahoney1 (Fri, 07 Jul 2017 18:32:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eXCxcNrLqrdvJXLDw) @Dpkkmr can you raise this exact issue on Stack overflow please - and include the JSON for the transactions and responses as you had done here earlier, basically anything that helps with diagnosing the issue you see with a 2nd POST through the REST APIs exposed for that business network. By the way, and perhaps unrelated, we don't advocate that composer is installed using npm as root as it can cause issues - rather its install as a non-root user., I just noted this on the screenshot above. Thank you..
davidkel (Fri, 07 Jul 2017 18:50:00 GMT):
@geoms Not at all. Hyperledger composer will work with a variety of different topologies of hyperledger fabric. It's goal is not to provide any operational hyperledger fabric capabilities but work with a predefined hyperledger fabric topology. We provide a simple hyperledger fabric environment for development purposes only to assist in getting people started with hyperledger composer and hyperledger fabric.
davidkel (Fri, 07 Jul 2017 18:50:00 GMT):
@geoms Hyperledger composer will work with a variety of different topologies of hyperledger fabric. It's goal is not to provide any operational hyperledger fabric capabilities but work with a predefined hyperledger fabric topology. We provide a simple hyperledger fabric environment for development purposes only to assist in getting people started with hyperledger composer and hyperledger fabric.
davidkel (Fri, 07 Jul 2017 18:50:00 GMT):
@geoms Hyperledger composer will work with a variety of different topologies of hyperledger fabric. It's goal is not to provide any operational hyperledger fabric capabilities but work with a predefined hyperledger fabric topology. We provide a simple hyperledger fabric environment for development purposes to assist in getting people started with hyperledger composer and hyperledger fabric.
gen_el (Fri, 07 Jul 2017 20:11:16 GMT):
@davidkel Hi! How do i get the return value of a submitTransaction() call?
CT123 (Fri, 07 Jul 2017 21:51:25 GMT):
Quick Q on running local version of composer: the docs on how to install and start are fine -- but I would like to simply restart the current version of HL composer I have locally. With docker already running is there a simple command to just restart composer? Running on a mac if that helps. Thanks in advance.
CT123 (Fri, 07 Jul 2017 22:54:24 GMT):
May have answered my own question -- composer.sh in the local install dir seems to do the trick
DannyWong (Sat, 08 Jul 2017 03:14:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ntsxzTs5qJW7PrnzA) @mahoney1 Concept level I totally understood. I want to know more that
1) the ACL logic is translated into the NodeJS Express (the app that generated by composer); or
into some go chaincode; or
into some JavaScript and execute in the Duktape JavaScript VM that spin up by the Composer.go executor
2) The ACL rules (after translated) where are they stored? in some state? or directly translate as code
We need to know more... as the ACL if just translated to middleware level... it means that someone can build another middleware with pure Fabric SDK then retrieve everything.
DannyWong (Sat, 08 Jul 2017 03:41:14 GMT):
Guys, just read the Composer v1 Grand Plan. The remaining stories are very exciting
https://github.com/hyperledger/composer/issues/1390
davidkel (Sat, 08 Jul 2017 07:57:23 GMT):
@gen_el you can't get a return value from a submitted transaction and it wouldn't make sense to do so. You can however emit events from transaction processors see https://hyperledger.github.io/composer/business-network/publishing-events.html
davidkel (Sat, 08 Jul 2017 07:57:23 GMT):
@gen_el you can't get a return value from a submitted transaction and it wouldn't make sense to do so. You can however emit events from transaction processors see https://hyperledger.github.io/composer/business-network/publishing-events.htm
davidkel (Sat, 08 Jul 2017 07:57:23 GMT):
@gen_el you can't get a return value from a submitted transaction. You can however emit events from transaction processors see https://hyperledger.github.io/composer/business-network/publishing-events.htm
UnmeshB (Sat, 08 Jul 2017 08:15:34 GMT):
Has joined the channel.
dselman (Sat, 08 Jul 2017 11:56:45 GMT):
@DannyWong the ACL rules are interpreted by the Composer system chaincode ("middleware"). Conceptually this is no different to writing procedural Go code that does access control. I.e. if someone has physical access to the peer node, or can modify/redeploy the chaincode/business network definition, then all privacy protections are void.
dselman (Sat, 08 Jul 2017 18:25:28 GMT):
At the risk of preaching to the choir! :-) https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/
AdhishPendharkar (Sat, 08 Jul 2017 23:14:33 GMT):
Has joined the channel.
coder-ajay (Sun, 09 Jul 2017 09:37:11 GMT):
getting below error for ` composer-rest-server `
To restart the REST server using the same options, issue the following command:
composer-rest-server -p hlfv1 -n vehicle-lifecycle-network -i admin -s adminpw -N never
Discovering types from business network definition ...
Connection fails: Error: error trying to ping. Error: error trying to query chaincode. Error: could not find chaincode with name 'vehicle-lifecycle-network' - make sure the chaincode vehicle-lifecycle-network has been successfully instantiated and try again
It will be retried for the next request.
Error: error trying to ping. Error: error trying to query chaincode. Error: could not find chaincode with name 'vehicle-lifecycle-network' - make sure the chaincode vehicle-lifecycle-network has been successfully instantiated and try again
at queryChainCode.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:699:34)
note- fabric is running
dselman (Sun, 09 Jul 2017 09:38:53 GMT):
Did you deploy the `vehicle-lifecycle-network` ?
coder-ajay (Sun, 09 Jul 2017 09:39:14 GMT):
yes .. followed all steps from npm-install
coder-ajay (Sun, 09 Jul 2017 09:39:14 GMT):
yes .. followed all steps starting from npm-install
dselman (Sun, 09 Jul 2017 09:39:59 GMT):
can you try `composer network deploy -a vehicle-lifecycle-network.bna -p hlfv1 -i PeerAdmin -s blah` and paste the result
coder-ajay (Sun, 09 Jul 2017 09:40:18 GMT):
ok
coder-ajay (Sun, 09 Jul 2017 09:42:06 GMT):
Deploying business network from archive: vehicle-lifecycle-network.bna
Business network definition:
Identifier: vehicle-lifecycle-network@0.1.1
Description: Vehicle Lifecycle Network
✔ Deploying business network definition. This may take a minute...
Command succeeded
dselman (Sun, 09 Jul 2017 09:42:43 GMT):
Ok, great
dselman (Sun, 09 Jul 2017 09:42:59 GMT):
now `composer --version` please
coder-ajay (Sun, 09 Jul 2017 09:43:50 GMT):
composer-cli v0.9.1
composer-admin v0.9.1
composer-client v0.9.1
composer-common v0.9.1
composer-runtime-hlf v0.9.1
composer-runtime-hlfv1 v0.9.1
dselman (Sun, 09 Jul 2017 09:43:59 GMT):
great
dselman (Sun, 09 Jul 2017 09:44:28 GMT):
now, let's try `npm uninstall -g composer-rest-server` followed by `npm install -g composer-rest-server`
coder-ajay (Sun, 09 Jul 2017 09:45:41 GMT):
well ... I did this uninstall-install step few times in last couple of days...
coder-ajay (Sun, 09 Jul 2017 09:45:46 GMT):
i am facing issue with ` composer-rest-server ` inconsistently.
coder-ajay (Sun, 09 Jul 2017 09:46:16 GMT):
yesterday i created a new project directory and it worked well. ...
dselman (Sun, 09 Jul 2017 09:46:38 GMT):
please humour me... let's just make sure your versions are consistent
dselman (Sun, 09 Jul 2017 09:46:47 GMT):
(try the easy stuff first, right!) :-)
coder-ajay (Sun, 09 Jul 2017 09:46:47 GMT):
sure ... i will do it right away
dselman (Sun, 09 Jul 2017 09:48:54 GMT):
when that is complete, please run `docker ps -a` and paste the result
coder-ajay (Sun, 09 Jul 2017 09:50:29 GMT):
result for ` docker ps -a `
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
15e92d3ab49f dev-peer0.org1.example.com-vehicle-lifecycle-network-0.9.1 "chaincode -peer.a..." 8 minutes ago Up 8 minutes dev-peer0.org1.example.com-vehicle-lifecycle-network-0.9.1
6fb1ba50c5f8 hyperledger/fabric-peer:x86_64-1.0.0-rc1 "peer node start -..." 15 minutes ago Up 15 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
c6735d6619b2 hyperledger/fabric-orderer:x86_64-1.0.0-rc1 "orderer" 16 minutes ago Up 15 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
eb54dd66d3f5 hyperledger/fabric-couchdb:x86_64-1.0.0-rc1 "tini -- /docker-e..." 16 minutes ago Up 15 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
cb1e9fa75418 hyperledger/fabric-ca:x86_64-1.0.0-rc1 "sh -c 'fabric-ca-..." 16 minutes ago Up 15 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
dselman (Sun, 09 Jul 2017 09:50:54 GMT):
Looks good.
dselman (Sun, 09 Jul 2017 09:51:54 GMT):
Now type `composer-rest-server -p hlfv1 -n vehicle-lifecycle-network -i admin -s adminpw -N never`
coder-ajay (Sun, 09 Jul 2017 09:54:00 GMT):
this command is working for . http://localhost:3000/explorer/
dselman (Sun, 09 Jul 2017 09:54:26 GMT):
So, it worked?
coder-ajay (Sun, 09 Jul 2017 09:54:30 GMT):
yes
dselman (Sun, 09 Jul 2017 09:54:36 GMT):
Ok, great
coder-ajay (Sun, 09 Jul 2017 09:55:06 GMT):
what went wrong earlier?
dselman (Sun, 09 Jul 2017 09:56:40 GMT):
Not sure. Perhaps you had deployed the network with an earlier version of composer-cli? Or you had a typo in the name of the network? Or the docker image for the network was stopped / crashed?
coder-ajay (Sun, 09 Jul 2017 09:58:10 GMT):
i believe the last option .. which of the above commands helped to restart it?
dselman (Sun, 09 Jul 2017 09:58:38 GMT):
the `composer network deploy` would spin up a new chaincode container
dselman (Sun, 09 Jul 2017 09:58:58 GMT):
if you see it again, run a `docker ps -a` and check the status of the containers
coder-ajay (Sun, 09 Jul 2017 10:00:38 GMT):
they are showing 'up with some minutes
dselman (Sun, 09 Jul 2017 10:00:51 GMT):
That's good. They are running. :-)
coder-ajay (Sun, 09 Jul 2017 10:01:15 GMT):
so if i face this again, i should run this command to check if the dockers are running... right?
dselman (Sun, 09 Jul 2017 10:01:27 GMT):
You can use `docker logs` to view the logs from each of the containers. The chaincode container (the one with `vehicle-lifecycle-demo` in the name is where your code is running).
dselman (Sun, 09 Jul 2017 10:01:27 GMT):
You can use `docker logs` to view the logs from each of the containers. The chaincode container (the one with `vehicle-lifecycle` in the name is where your code is running)
dselman (Sun, 09 Jul 2017 10:01:54 GMT):
right
dselman (Sun, 09 Jul 2017 10:02:40 GMT):
I've not seen this issue before. On our systems they are very stable. You might want to investigate allocating more memory to Docker. There are options for that.
coder-ajay (Sun, 09 Jul 2017 10:03:44 GMT):
ok. one more thing .. what to do if ` docker ps -a ` shows any of the container down?
dselman (Sun, 09 Jul 2017 10:05:13 GMT):
rerun the ./startFabric.sh script to restart everything and then run `composer network deploy` to deploy your network
coder-ajay (Sun, 09 Jul 2017 10:06:03 GMT):
ok. will try this if i face the issue again. Thanks a ton @dselman .
dselman (Sun, 09 Jul 2017 10:06:17 GMT):
:thumbsup:
coder-ajay (Sun, 09 Jul 2017 11:24:11 GMT):
hi @dselman ... facing the issue again ... increased docker memory allocation to 4 GB in _docker>preferences>advanced_ ... run ` docker ps -a ` ... last container is shown as exited ...
coder-ajay (Sun, 09 Jul 2017 11:24:18 GMT):
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
084a61b51dba hyperledger/fabric-peer:x86_64-1.0.0-rc1 "peer node start -..." 2 minutes ago Up 2 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
d96217128c84 hyperledger/fabric-ca:x86_64-1.0.0-rc1 "sh -c 'fabric-ca-..." 2 minutes ago Up 2 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
9d2bc904941e hyperledger/fabric-couchdb:x86_64-1.0.0-rc1 "tini -- /docker-e..." 2 minutes ago Up 2 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
761e8c9269ff hyperledger/fabric-orderer:x86_64-1.0.0-rc1 "orderer" 2 minutes ago Up 2 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
15e92d3ab49f dev-peer0.org1.example.com-vehicle-lifecycle-network-0.9.1 "chaincode -peer.a..." 2 hours ago Exited (2) About an hour ago dev-peer0.org1.example.com-vehicle-lifecycle-network-0.9.1
coder-ajay (Sun, 09 Jul 2017 11:26:21 GMT):
tried to restart fabric ... last container is still showing exited.
dselman (Sun, 09 Jul 2017 12:48:18 GMT):
can you check the logs of that excited container. Any clues why it shutdown?
dselman (Sun, 09 Jul 2017 12:48:18 GMT):
can you check the logs of that exited container. Any clues why it shutdown?
coder-ajay (Sun, 09 Jul 2017 12:54:43 GMT):
ok ... i'll check ... I stopped the fabric to check if it starts again properly and to test the solution we discussed.
chenxuan (Sun, 09 Jul 2017 13:33:27 GMT):
composer just a chaincode to define your logic
wael (Sun, 09 Jul 2017 14:23:07 GMT):
trying to run : businessNetworkConnection.connect('hlfv1', 'my-network', 'admin', 'adminpw');
But Get error :
Error: Collection with ID '$sysdata' does not exist
Any suggestions ?
wael (Sun, 09 Jul 2017 14:23:07 GMT):
trying to run : businessNetworkConnection.connect('hlfv1', 'my-network', 'admin', 'adminpw');
But error :
Error: Collection with ID '$sysdata' does not exist
Any suggestions ?
newint (Sun, 09 Jul 2017 19:57:16 GMT):
Has joined the channel.
coder-ajay (Mon, 10 Jul 2017 04:52:13 GMT):
Hi ... when I run ` docker ps -a ' I can see below 4 containers running. But still facing issue with ` composer-rest-server `. Earlier I could see 5 containers. Is this related?
peer0.org1.example.com
couchdb
ca.org1.example.com
orderer.example.com
coder-ajay (Mon, 10 Jul 2017 04:52:13 GMT):
Hi ... when I run ` docker ps -a ` I can see below 4 containers running. But still facing issue with ` composer-rest-server `. Earlier I could see 5 containers. Is this related?
peer0.org1.example.com
couchdb
ca.org1.example.com
orderer.example.com
coder-ajay (Mon, 10 Jul 2017 05:07:13 GMT):
with above still running ... in the _dist_ folder ... I run ` composer-rest-server -p hlfv1 -n vehicle-lifecycle-network -i admin -s adminpw -N never `... below is the error...
Discovering types from business network definition ...
Connection fails: Error: error trying to ping. Error: error trying to query chaincode. Error: could not find chaincode with name 'vehicle-lifecycle-network' - make sure the chaincode vehicle-lifecycle-network has been successfully instantiated and try again
It will be retried for the next request.
Error: error trying to ping. Error: error trying to query chaincode. Error: could not find chaincode with name 'vehicle-lifecycle-network' - make sure the chaincode vehicle-lifecycle-network has been successfully instantiated and try again
coder-ajay (Mon, 10 Jul 2017 05:07:57 GMT):
i get same issue with any other project directory.
coder-ajay (Mon, 10 Jul 2017 05:07:57 GMT):
i get same error with any other project directory.... with the corresponding chaincode name.
coder-ajay (Mon, 10 Jul 2017 07:03:53 GMT):
The rest server probably times out after some if machine is inactive. Followed below steps and things seem to be working for now...
1. Run:
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
```
Killing existing containers seems to be most important step. Else, the error persists.
2. Run: ` npm install `
3. _cd dist_ > run ` composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString ` (with correct .bna file name)
4. Run: ` composer-rest-server `
These steps are helping most of the time.
mahoney1 (Mon, 10 Jul 2017 07:22:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ihNTziknrCBCSRWiZ) @coder-ajay it is related in the sense that the chaincode docker container with name `vehicle-lifecycle-network`is removed (hence the REST server complaining on startup where you specify the '-n' parameter) and that was created when the business network was deployed initially. So given you've deployed 'my-network' you'll see a container for that in `docker ps -a` output
coder-ajay (Mon, 10 Jul 2017 07:25:24 GMT):
Okay. Thanks @mahoney1 . Things seem to going good as of now.
dselman (Mon, 10 Jul 2017 07:26:43 GMT):
@coder-ajay where you able to get any logs from the vehicle-lifecycle container?
coder-ajay (Mon, 10 Jul 2017 07:28:20 GMT):
@dselman ... i run ` docker logs ` ... but its asking for parameters. I am missing something.
coder-ajay (Mon, 10 Jul 2017 07:29:29 GMT):
i tried few things in ` docker logs --help ` but could not find anything that I could use.
uber.twin (Mon, 10 Jul 2017 07:34:06 GMT):
hi, in the context of a Fabric network, is it possible to use the same Couchdb container for multiple peers or each peer claims its own Couchdb container?
dselman (Mon, 10 Jul 2017 07:35:10 GMT):
Each peer has its own CouchDB. The peers can operate independently.
dselman (Mon, 10 Jul 2017 07:36:13 GMT):
@coder-ajay to grab logs you do `docker logs
uber.twin (Mon, 10 Jul 2017 07:37:03 GMT):
@dselman thank you
hpurmann (Mon, 10 Jul 2017 08:20:02 GMT):
Has joined the channel.
Pere-Lluis (Mon, 10 Jul 2017 08:26:09 GMT):
Hi! I see that in fabric docs they have added much more stuff about working with Vagrant. Is there any advantages over docker? Would Composer work if working with Vagrant?
sstone1 (Mon, 10 Jul 2017 08:33:53 GMT):
they have? i thought they were getting away from using vagrant as a dev env
sstone1 (Mon, 10 Jul 2017 08:34:20 GMT):
https://hyperledger-fabric.readthedocs.io/en/latest/dev-setup/devenv.html
sstone1 (Mon, 10 Jul 2017 08:34:39 GMT):
> we strongly encourage that the non-Vagrant development setup be used
Pere-Lluis (Mon, 10 Jul 2017 08:37:45 GMT):
Yeah, but then if u check the new tutorials, they still put it first option
Pere-Lluis (Mon, 10 Jul 2017 08:37:48 GMT):
kind of weird
Pere-Lluis (Mon, 10 Jul 2017 08:38:02 GMT):
okey
Pere-Lluis (Mon, 10 Jul 2017 08:38:04 GMT):
nevermind
Pere-Lluis (Mon, 10 Jul 2017 08:38:26 GMT):
I was checking older documentation!
Pere-Lluis (Mon, 10 Jul 2017 08:38:49 GMT):
http://fabricrepo.readthedocs.io/en/master/Setup/Chaincode-setup/
sstone1 (Mon, 10 Jul 2017 08:38:52 GMT):
ah phew
Pere-Lluis (Mon, 10 Jul 2017 08:39:01 GMT):
they should get rid of that, sorry my bad
sstone1 (Mon, 10 Jul 2017 08:39:26 GMT):
np
satishbhat12 (Mon, 10 Jul 2017 09:09:35 GMT):
Has joined the channel.
satishbhat12 (Mon, 10 Jul 2017 09:15:06 GMT):
I am trying to deploy bna file using command : composer network deploy -p hlfv1 -a /home/ubuntu/assign-network/composer-sample-networks/dist/assign-network.bna -i PeerAdmin -s peeradmin
satishbhat12 (Mon, 10 Jul 2017 09:16:29 GMT):
I am trying to deploy bna file using command : composer network deploy -p hlfv1 -a /home/ubuntu/assign-network/composer-sample-networks/dist/assign-network.bna -i PeerAdmin -s peeradmin I am getting error like this Deploying business network from archive: /home/ubuntu/assign-network/composer-sample-networks/dist/assign-network.bna
Business network definition:
Identifier: assign-networks@0.1.1
Description: You must install [Lerna](https://lernajs.io) to build this multi-package repository.
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: Failed to deserialize creator identity, err ParseCertificate failed asn1: structure error: tags don't match (2 vs {class:0 tag:6 length:7 isCompound:false}) {optional:false explicit:false application:false defaultValue:
Velibor (Mon, 10 Jul 2017 09:31:59 GMT):
Hi @sstone1, please, do you have info about HL-fabric performance, is there limitation on transaction per second? I made a stress test on carauction-network and got an error: Peer has rejected transaction 'a93f6830cedb052a0cf3c321f7e2987364fb693bb7caead176fac8da8db33cac' with cdoe MVCC_READ_CONFLICT.
mahoney1 (Mon, 10 Jul 2017 10:30:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RS4FkaYbPEcLh3Xhx) @satishbhat12 can you post a `docker ps -a` listing please to begin with? thanks
kleniu (Mon, 10 Jul 2017 10:45:36 GMT):
Has joined the channel.
SushilShintre (Mon, 10 Jul 2017 11:01:52 GMT):
Has joined the channel.
dselman (Mon, 10 Jul 2017 11:12:57 GMT):
@Velibor you can read more about how HLF v1 implements optimistic concurrency here: https://media.readthedocs.org/pdf/hyperledger-fabric/latest/hyperledger-fabric.pdf
dselman (Mon, 10 Jul 2017 11:13:18 GMT):
(search for MVCC)
Velibor (Mon, 10 Jul 2017 11:13:39 GMT):
Thanks @dselman
mahoney1 (Mon, 10 Jul 2017 11:17:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nYNSk4vnKDRYfZaza) @Velibor in addition to @dselman post above - this is really a Fabric question - notwithstanding the rejection you encountered using carauction, it depends on the complexity of the network setup, configuration and a whole host of factors - suggest to post your question on #fabric-questions relating to transaction throughput - perhaps give an indication there, if your Fabric setup. cheers
Velibor (Mon, 10 Jul 2017 11:18:25 GMT):
Thanks @mahoney1
elrond (Mon, 10 Jul 2017 11:48:02 GMT):
@mahoney1 referring to the namespace problem, "aside from the resolution of --> Banka banka (which may be elsewhere defined in your model file) it looks good. If you don't have a local playground installed, you can if you wish, validate your model in http://composer-playground.mybluemix.net/editor - it will highlight any exceptions (assuming you've not validated it already). One thing to note: the error above says 'failed to find namespace net.croz ' - in your model file the namespace is defined as namespace net.croz.blockchain - can you check the js files if you're using a shortened reference, @param maybe?
"
what js files would i need to check exactly
elrond (Mon, 10 Jul 2017 11:51:50 GMT):
i keep getting IllegalModelException: Failed to find namespace as an error, it just doesnt make sense to me, yet for my all friends, it is working
uber.twin (Mon, 10 Jul 2017 11:58:17 GMT):
@dselman hi, it looks like the ordere container, in the composer-tools setup is given access to the other orgs certificates, besides its own
- ./crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/:/etc/hyperledger/msp/orderer
- ./crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/:/etc/hyperledger/msp/peerOrg1
- ./crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/:/etc/hyperledger/msp/peerOrg2
uber.twin (Mon, 10 Jul 2017 11:59:04 GMT):
is this required?
uber.twin (Mon, 10 Jul 2017 12:01:03 GMT):
it looks like the setup in the Fabric sample (release/linux-amd64/base/docker-compose-base.yaml) doesn't
gatakka (Mon, 10 Jul 2017 12:02:28 GMT):
Has left the channel.
uber.twin (Mon, 10 Jul 2017 12:02:53 GMT):
there, the mapped volumes refer only the orderer's certificates:
- ../crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp
- ../crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls
mahoney1 (Mon, 10 Jul 2017 12:40:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5ke6DSWnEqiKWnM7i) @elrond part of your .bna includes a script file eg. a _.js_ file where your transaction processors are defined eg. lib/_filename.js_ can send me your .bna file direct and I can take a look if you wish.
mahoney1 (Mon, 10 Jul 2017 12:40:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NXCjah9Q63FYqppvs) @Velibor ... y/welcome!
mahoney1 (Mon, 10 Jul 2017 12:44:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RS4FkaYbPEcLh3Xhx) @satishbhat12 glad your issue with KeyValStore was resolved. thanks.
ecn (Mon, 10 Jul 2017 13:01:44 GMT):
Hello,
I've update fabric composer from 0.8.1 to 0.9.1 and I'm can't enroll users anymore using fabric-client (except the admin). I'm always getting the error below :
Error: error trying to enroll user. Error: Failed to generate CSR for enrollmemnt due to error [TypeError: asn1.x509.X500Name.ldapToOneline is not a function]
(I am using the
ecn (Mon, 10 Jul 2017 13:01:44 GMT):
Hello,
I've update fabric composer from 0.8.1 to 0.9.1 and I'm can't enroll users anymore using fabric-client (except the admin). I'm always getting the error below :
Error: error trying to enroll user. Error: Failed to generate CSR for enrollmemnt due to error [TypeError: asn1.x509.X500Name.ldapToOneline is not a function]
ecn (Mon, 10 Jul 2017 13:01:44 GMT):
Hello,
I've update fabric composer from 0.8.1 to 0.9.1 and I'm can't enroll users anymore using composer-client (except the admin). I'm always getting the error below :
Error: error trying to enroll user. Error: Failed to generate CSR for enrollmemnt due to error [TypeError: asn1.x509.X500Name.ldapToOneline is not a function]
wael (Mon, 10 Jul 2017 13:40:09 GMT):
Hi I am trying to connect with adminConnection.connect('defaultProfile', 'PeerAdmin', 'adminpw');
I get : *Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]*
and whenever I Connect with adminConnection.connect('defaultProfile', 'admin', 'adminpw'), it succeeds but when deploying businessNetwork with
adminConnection.deploy(businessNetworkDefinition) I got : *Error: error trying deploy. Error: error trying install chaincode.*
wael (Mon, 10 Jul 2017 13:41:43 GMT):
in meanWhile deploying the businessNetwork with *composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s adminpw* works great
wael (Mon, 10 Jul 2017 13:42:11 GMT):
so any suggestions ?
sstone1 (Mon, 10 Jul 2017 13:43:04 GMT):
@wael did you run `composer identity import` to import the PeerAdmin certificate?
sstone1 (Mon, 10 Jul 2017 13:43:27 GMT):
PeerAdmin is not a user defined on the Fabric CA and so it cannot "enrol" - you must get and import the certificates manually
davidoevans (Mon, 10 Jul 2017 13:46:44 GMT):
It seems our ACL rules are not being applied when doing in memory testing. Other changes to our model are getting applied fine. Is this expected behaviour?
wael (Mon, 10 Jul 2017 13:50:48 GMT):
@sstone1 import what ?
wael (Mon, 10 Jul 2017 13:51:51 GMT):
@sstone1 when should I import that ? and when I should use PeerAdmin ? and why I couldn't just use admin to connect and deploy ?
mahoney1 (Mon, 10 Jul 2017 13:52:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zKvH44D7ya54EEkbx) @wael in addition to @sstone1 post ; with the default Composer dev Fabric setup, you use PeerAdmin to deploy the network ; you use 'admin' thereafyter to interact with it - eg. operations like 'connect', 'ping' etc https://hyperledger.github.io/composer/business-network/bnd-deploy.html
mahoney1 (Mon, 10 Jul 2017 13:53:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=M4J9LkAmT6RXxETjN) @mahoney1 sorry, typo 'you use 'admin' thereafter (ie as the default admin).
sstone1 (Mon, 10 Jul 2017 13:59:54 GMT):
@wael you should import it before you attempt to use the PeerAdmin identity to deploy the network. the admin identity is not a peer administrator nor a channel administrator and does not have the fabric permissions required to deploy chaincode.
davidoevans (Mon, 10 Jul 2017 14:11:01 GMT):
@sstone1 - should my ACL rules be getting picked up when I do InMemory testing?
nippleDonkey (Mon, 10 Jul 2017 14:17:35 GMT):
Has joined the channel.
reggiefelias (Mon, 10 Jul 2017 14:20:46 GMT):
Has joined the channel.
davidoevans (Mon, 10 Jul 2017 14:21:09 GMT):
Since I don't seem to be seeing ACL rules applied using `BusinessNetworkDefinition.fromDirectory`, I am trying it using `BusinessNetworkDefinition.fromArchive` but that throws `Error: Can't find end of central directory : is this a zip file ?`. I've confirm the path to archive is resolved correctly.
reggiefelias (Mon, 10 Jul 2017 14:21:29 GMT):
Hi All, good day! Is there any code sample for decrypting/encrypting data using private/public key in composer? Thanks in advance
davidoevans (Mon, 10 Jul 2017 14:21:40 GMT):
let me know if i'm heading in the right direction.
sstone1 (Mon, 10 Jul 2017 14:22:42 GMT):
@davidoevans are you using the admin id?
sstone1 (Mon, 10 Jul 2017 14:22:52 GMT):
or an ID with the word admin in it?
sstone1 (Mon, 10 Jul 2017 14:23:07 GMT):
@reggiefelias not yet, no
davidoevans (Mon, 10 Jul 2017 14:23:54 GMT):
yes `return adminConnection.connect('hlfv1', 'admin', 'adminpw');`
trygvevang (Mon, 10 Jul 2017 14:24:50 GMT):
Hi, can someone explain to me the purpose of connection profiles? I've already read the document on hyperledger.github.io.
reggiefelias (Mon, 10 Jul 2017 14:25:07 GMT):
@@sstone1 thanks, so it means it is public/private key encrypt/decrypt is not supported? any other encrypt/decrypt of data I can use? Thanks you very much
davidoevans (Mon, 10 Jul 2017 14:25:25 GMT):
again...other changes to the model are getting recognized...so the network is getting deployed in memory...but if I modify ACL rules, they are not taking effect in memory.
davidoevans (Mon, 10 Jul 2017 14:32:26 GMT):
@sstone1 - but in my actual tests, i am using a non-admin id that is created beforeEach test.
JGraft (Mon, 10 Jul 2017 14:36:12 GMT):
Has joined the channel.
hpurmann (Mon, 10 Jul 2017 14:47:29 GMT):
Hey peeps! I'm searching for a simple and easy step-by-step tutorial for composer. I tried the yeoman generator for "Business Network" but the test doesn't run successfully afterwards. I get
```
hpurmann (Mon, 10 Jul 2017 14:47:29 GMT):
Hey peeps! I'm searching for a simple and easy step-by-step tutorial for composer. I tried the yeoman generator for "Business Network" but the test doesn't run successfully afterwards. I get
```
1) #org.acme.biznet "before all" hook:
IllegalModelException: Asset is a reserved type name. File '/Users/hpurmann/dev/go/bachelor/watercash/models/org.acme.biznet.cto': line 11 column 1, to line 14 column 2.
```
hpurmann (Mon, 10 Jul 2017 14:47:29 GMT):
Hey peeps! I'm searching for a simple and easy step-by-step tutorial for composer. I've tried the yeoman generator for "Business Network" but the test doesn't run successfully afterwards. I get
```
1) #org.acme.biznet "before all" hook:
IllegalModelException: Asset is a reserved type name. File '/Users/hpurmann/dev/go/bachelor/watercash/models/org.acme.biznet.cto': line 11 column 1, to line 14 column 2.
```
hpurmann (Mon, 10 Jul 2017 14:48:28 GMT):
Would appreciate any help :)
Sandeep (Mon, 10 Jul 2017 14:49:33 GMT):
@here We are in the process of migrating an application that was built using go lang to use composer. We are using composer-rest-server to do the invokes and queries on items based on primary identifier. But, there are many screens where data needs to displayed based on queries on multiple fields. Is there any workaround to use complex queries (other than using node API) until they become available from composer-rest-server ?. Is there any timeline on integrating complex queries into REST Server ?.
kleniu (Mon, 10 Jul 2017 14:52:32 GMT):
@hpurmann - I can help (I guess) - take a look into my recent work on https://github.com/kleniu/my-network_HLFv1.0_extsec.git where you can find tut for case you are looking for
davidoevans (Mon, 10 Jul 2017 14:55:32 GMT):
@sstone1 I was able to reproduce the carauction-network. If I replace all of the ACL rules in that project with a dummy one, the tests still pass.
davidoevans (Mon, 10 Jul 2017 14:55:32 GMT):
@sstone1 I was able to reproduce the issue using the carauction-network samples. If I replace all of the ACL rules in that project with a dummy one, the tests still pass.
anarancio (Mon, 10 Jul 2017 14:56:02 GMT):
Has joined the channel.
mahoney1 (Mon, 10 Jul 2017 15:00:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3BruS7FZt59BY4y95) @trygvevang typically, a connection profile enables a user to connect to a running Hyperledger Fabric. As you can read here https://hyperledger.github.io/composer/reference/connectionprofile.html a connection profile (.json) describes the semantics of how to connect to a particular runtime environment (as you may have more than one).
sstone1 (Mon, 10 Jul 2017 15:00:18 GMT):
@davidoevans the car auction network ACL rules are ignored during testing
sstone1 (Mon, 10 Jul 2017 15:00:21 GMT):
because it uses the admin ID
mahoney1 (Mon, 10 Jul 2017 15:02:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4oyKzssteatifNabE) @hpurmann hi there, a simple tutorial to run (that uses the yo generator as part of that tutorial) is here -> https://hyperledger.github.io/composer/tutorials/developer-guide.html
anarancio (Mon, 10 Jul 2017 15:03:50 GMT):
hi guys, one noob question. When you try to deploy a BNA to a bluemix fabric 0.6... I create a new profile for the bluemix connection but when I try to use it, it keeps loading and never connects. I think is related to the certificate field... where can I get this certificate? right now I am pasting the URL that I get from the credentials in bluemix (field cert). Any clue?
davidoevans (Mon, 10 Jul 2017 15:04:33 GMT):
thanks @sstone1 I just tried the same in basic-sample-network and ACL rules are getting picked up...i'll look closer at what's different in our case.
sstone1 (Mon, 10 Jul 2017 15:08:04 GMT):
cool - AFAIK that's the only business network with unit tests that actually validate the ACL rules work
mahoney1 (Mon, 10 Jul 2017 15:22:31 GMT):
@elrond - in your .bna file, your permissions.acl file needs to be corrected, you're missing the '.*' like so - ```rule Default {
description: "Allow all participants access to all resources"
participant: "ANY"
operation: ALL
resource: "net.croz.blockchain.**"
action: ALLOW
}```
mahoney1 (Mon, 10 Jul 2017 15:22:31 GMT):
@elrond - in your .bna file, your permissions.acl file needs to be corrected, you're missing the '.*' like so - ```rule Default {
description: "Allow all participants access to all resources"
participant: "ANY"
operation: ALL
resource: "net.croz.blockchain.**"
action: ALLOW
}``` Then recreate the archive using `composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna` ie your bna filename etc etc and try to deploy that.
mahoney1 (Mon, 10 Jul 2017 15:27:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZEReHeBeXdm2Q2qd5) @anarancio you need to paste the contents of the certificate rather than the URL - see example here specifically certificate entry -> https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
mahoney1 (Mon, 10 Jul 2017 15:27:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZEReHeBeXdm2Q2qd5) @anarancio you need to paste the contents of the certificate rather than the URL
nippleDonkey (Mon, 10 Jul 2017 15:30:37 GMT):
Hi guys, hopefully someone can help. I've setup a basic-sample-network locally on my mac and it works fine. However trying the same setup on an AWS ubuntu instance I'm running into the following issue when I deploy:
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
Command failed
Any thoughts appreciated.
mahoney1 (Mon, 10 Jul 2017 15:34:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Kdm88wZA9swhBBkwB) @nippleDonkey hi there, what do you get when you run `composer -v` on your AWS vm and what doc did you follow to setup there for interest? Also, hopefully you did not install composer there as root.
nippleDonkey (Mon, 10 Jul 2017 15:35:53 GMT):
hi @mahoney1, thanks for the reply. The composer -v returns :
composer-cli v0.9.1
composer-admin v0.9.1
composer-client v0.9.1
composer-common v0.9.1
composer-runtime-hlf v0.9.1
composer-runtime-hlfv1 v0.9.1
and it was not installed as root.
nippleDonkey (Mon, 10 Jul 2017 15:36:04 GMT):
the documentation i followed is:
nippleDonkey (Mon, 10 Jul 2017 15:36:14 GMT):
https://hyperledger.github.io/composer/installing/development-tools.html
mahoney1 (Mon, 10 Jul 2017 15:37:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gPPYyBMr5nLLdXymJ) @nippleDonkey ok thanks @nippleDonkey can you post your versions of npm, node and docker please `npm -v` `node -v` and `docker -v`
nippleDonkey (Mon, 10 Jul 2017 15:38:02 GMT):
npm: 5.1.0
node: 6.11.0
docker: 17.06.0-ce, build 02c1d87
mahoney1 (Mon, 10 Jul 2017 15:42:35 GMT):
ah, ok, so npm version is likely to be the cause - we only support npm 3 or 4 presently -> https://hyperledger.github.io/composer/unstable/installing/development-tools.html Suggest to downgrade your npm and then `npm uninstall -g composer-cli composer-rest-server` ...including the other modules installed earlier from that doc page.. ..get npm to the right level ...then do the npm installs again.
nippleDonkey (Mon, 10 Jul 2017 15:43:29 GMT):
@mahoney1 thanks for the help, much appreciated. I'll give that a bash and let you know how it turns out
mahoney1 (Mon, 10 Jul 2017 15:44:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TtB4yTGhk38X8AAZF) @nippleDonkey you're welcome..
anarancio (Mon, 10 Jul 2017 16:10:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=N8ox8TvzS26s2gjPc) @mahoney1 yes I did that but didn't work :(
anarancio (Mon, 10 Jul 2017 16:11:23 GMT):
@mahoney1 actually he talks about a JSON but the cert I downloaded were not in a json format
mahoney1 (Mon, 10 Jul 2017 16:14:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fJndxe7bw6KxyvP9g) @anarancio np - I believe they're talking about the JSON in the connection profile (ie newline to delimit the certificate entry etc etc) - can you post your v0.6 connection profile pls and assume you downloaded your bluemix cert earlier?
anarancio (Mon, 10 Jul 2017 16:54:58 GMT):
@mahoney1 this is my connection.json
anarancio (Mon, 10 Jul 2017 16:54:59 GMT):
{
"name": "bluemix",
"description": "A description for a V0.6 Profile",
"type": "hlf",
"peerURL": "grpcs://a1c266d1cb684cf38d99632572517565-vp0.us.blockchain.ibm.com:30001",
"membershipServicesURL": "grpcs://a1c266d1cb684cf38d99632572517565-ca.us.blockchain.ibm.com:30001",
"eventHubURL": "grpcs://a1c266d1cb684cf38d99632572517565-vp0.us.blockchain.ibm.com:31001",
"keyValStore": "/home/composer/.composer-credentials",
"deployWaitTime": 300,
"invokeWaitTime": "300",
"certificate": "",
"certificatePath": "/certs/peer/cert.pem"
}
anarancio (Mon, 10 Jul 2017 16:55:24 GMT):
I removed the certificate value but is like: -----BEGIN CERTIFICATE----- MIID6TCCA26gAwIBAgIQCi.....
anarancio (Mon, 10 Jul 2017 16:55:30 GMT):
I downlaoded that from bluemix
Sandeep (Mon, 10 Jul 2017 17:07:50 GMT):
@here We have an external process (chokidar file watcher) which needs to integrated on node server (in this case composer rest server). What is the best way to approach this ?. Do you think it okay to add code on rest server to handle this ?.
Sandeep (Mon, 10 Jul 2017 17:07:50 GMT):
@here We have an external process (chokidar file watcher) which needs to integrated on node server (in this case composer rest server). What is the best way to approach this ?.Is it a good practice to add code on rest server to handle this ?.
sstone1 (Mon, 10 Jul 2017 17:17:17 GMT):
@Sandeep it seems a bit strange to integrate a file watcher into the REST server? can you explain what you are using the file watcher for?
youngdahlm (Mon, 10 Jul 2017 17:30:35 GMT):
Has joined the channel.
Sandeep (Mon, 10 Jul 2017 18:05:41 GMT):
@sstone1 We have a some files that come from SAP that needs to be sent to blockchain. When SAP places these files on a share drive, the node server should pick up and put them on blockchain. Does that make sense ?
Sandeep (Mon, 10 Jul 2017 18:05:41 GMT):
@sstone1 We have files that come from SAP that needs to be saved to blockchain. When SAP places these files on a share drive, the node server should pick up and put them on ledger. Does that make sense ?
Sandeep (Mon, 10 Jul 2017 18:11:42 GMT):
@sstone1 In addition to that, we have a scenario where the approval request from the UI needs to be digitally signed by the user's private key before storing it on the ledger. To implement any of these external process, We are thinking about what would the best approach be.
Sandeep (Mon, 10 Jul 2017 18:11:42 GMT):
@sstone1 In addition to that, we have a scenario where the approval request from the UI needs to be digitally signed by the user's private key before storing it on the ledger. To implement any of these external process, we are thinking about what would the best approach be.
RobertGarrett (Mon, 10 Jul 2017 18:40:13 GMT):
Has joined the channel.
sstone1 (Mon, 10 Jul 2017 18:44:57 GMT):
@Sandeep yeah - the integration with SAP makes sense
sstone1 (Mon, 10 Jul 2017 18:45:18 GMT):
but i do not think you want to put that integration process (files -> REST server) into the REST server - i think you should manage it as an external process
RobertGarrett (Mon, 10 Jul 2017 18:47:27 GMT):
if anyone has any experience with the node-red hyperledger composer nodes (with composer v0.9.1) I would be super thankful for any expertise/opinions on this issue! https://stackoverflow.com/questions/45016176/unexpected-output-with-node-red-contrib-composer-nodes-in-composer-v0-9-x?answertab=oldest#tab-top
Sandeep (Mon, 10 Jul 2017 19:03:18 GMT):
@sstone1 . Thanks. One more question. Is there any REST endpoint we can use to issue an identity to a participant ?. I can only see the CLI command to issue identity. We have a UI screen where an admin needs to issue an identity to a participant on the network.
sstone1 (Mon, 10 Jul 2017 19:03:39 GMT):
yeah, look under the "System" category
RobertGarrett (Mon, 10 Jul 2017 19:14:00 GMT):
@caroline-church Thank you!
caroline-church (Mon, 10 Jul 2017 19:14:28 GMT):
np is it all ok now?
DennisM330 (Mon, 10 Jul 2017 19:15:16 GMT):
Trying to to deploy BNA with composer v0.9.1 and fabric rc1 and get error in attached trace. Any ideas where to find root cause? 2017-07-10T19:06:49.302Z INFO ConnectionProfileManager :constructor() Created a new ConnectionProfileManager {"0":{"fs":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDW
R":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":64,"O_EXCL":128,"O_NOCTTY":256,"O_TRUNC"
:512,"O_APPEND":1024,"O_DIRECTORY":65536,"O_NOATIME":262144,"O_NOFOLLOW":131072,"O_SYNC":4096,"O_DIRECT":16384,"O_NONBLOCK":2048,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":
64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1}}}$
2017-07-10T19:06:49.306Z INFO FSConnectionProfileStore :save() Saved connection profile hlfv1 {}$
2017-07-10T19:06:49.307Z INFO ConnectionProfileManager :connect() Connecting using hlfv1 {"0":null}$
2017-07-10T19:06:49.309Z INFO FSConnectionProfileStore :load() Loaded connection profile hlfv1 {"0":"{\n \"type\": \"hlfv1\",\n \"orderers\": [\n
{\n \"url\": \"grpc://localhost:7050\"\n }\n ],\n \"ca\": {\n \"url\": \"http://localhost:7054\",\n \"name\": \"ca.org1.example.com\"\n },\n
\"peers\": [\n {\n \"requestURL\": \"grpc://localhost:7051\",\n \"eventURL\": \"grpc://localhost:7053\"\n }\n ],\n \"keyValStore\": \"/
home/student/.composer-credentials\",\n \"channel\": \"composerchannel\",\n \"mspID\": \"Org1MSP\",\n \"timeout\": \"300\"\n}"}$
2017-07-10T19:06:49.310Z INFO ConnectionProfileManager :getConnectionManager() Looking up a connection manager for profile {"0":"hlfv1"}$
2017-07-10T19:06:49.311Z INFO FSConnectionProfileStore :load() Loaded connection profile hlfv1 {"0":"{\n \"type\": \"hlfv1\",\n \"orderers\": [\n
{\n \"url\": \"grpc://localhost:7050\"\n }\n ],\n \"ca\": {\n \"url\": \"http://localhost:7054\",\n \"name\": \"ca.org1.example.com\"\n },\n
\"peers\": [\n {\n \"requestURL\": \"grpc://localhost:7051\",\n \"eventURL\": \"grpc://localhost:7053\"\n }\n ],\n \"keyValStore\": \"/
home/student/.composer-credentials\",\n \"channel\": \"composerchannel\",\n \"mspID\": \"Org1MSP\",\n \"timeout\": \"300\"\n}"}$
2017-07-10T19:06:49.668Z INFO ConnectionProfileManager :getConnectionManager() Using this connection manager {"0":{"connectionProfileManager":{"connectionProfileStore":{"fs":
{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_C
REAT":64,"O_EXCL":128,"O_NOCTTY":256,"O_TRUNC":512,"O_APPEND":1024,"O_DIRECTORY":65536,"O_NOATIME":262144,"O_NOFOLLOW":131072,"O_SYNC":4096,"O_DIRECT":16384,"O_NONBLOCK":2048,"S_IRW
XU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK"
:1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1}}}}}$
2017-07-10T19:06:56.166Z ERROR HLFConnection :_install() {"message":"error trying install chaincode. Error","stack":"Error: error trying install chaincod
e. Error\n at temp.mkdir.then.then.then.then.then.catch (/home/student/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlfconne
ction.js:368:34)"}$
RobertGarrett (Mon, 10 Jul 2017 19:15:24 GMT):
Yes, everything is back up and running with the sample network and with the network we're developing as well.
DennisM330 (Mon, 10 Jul 2017 19:25:34 GMT):
I tried a different bna as well and got the same issue (carauction-network). Docker ps shows: CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
04e0eadb777b hyperledger/fabric-peer:x86_64-1.0.0-rc1 "peer node start -..." 6 minutes ago Up 6 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
1964706e254b hyperledger/fabric-couchdb:x86_64-1.0.0-rc1 "tini -- /docker-e..." 6 minutes ago Up 6 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
af6e3a297d50 hyperledger/fabric-orderer:x86_64-1.0.0-rc1 "orderer" 6 minutes ago Up 6 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
de160f3d5965 hyperledger/fabric-ca:x86_64-1.0.0-rc1 "sh -c 'fabric-ca-..." 6 minutes ago Up 6 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
DennisM330 (Mon, 10 Jul 2017 19:40:54 GMT):
I see this error in the Docker logs for the peer container where it appears an errorcode of 500 is returned: 2017-07-10 19:39:27.109 UTC [endorser] simulateProposal -> DEBU 437 Exit
2017-07-10 19:39:27.109 UTC [endorser] ProcessProposal -> ERRO 438 simulateProposal() resulted in chaincode response status 500 for txid: de58f48dbb17c2f9815588f1a1454f0233bdc05b45a0b37ccbcbf7c25f5ca758
2017-07-10 19:39:27.119 UTC [endorser] ProcessProposal -> DEBU 439 Exit
2017-07-10 19:39:27.843 UTC [eventhub_producer] validateEventMessage -> DEBU 43a ValidateEventMessage starts for signed event 0xc4212fbd70
2017-07-10 19:39:27.844 UTC [eventhub_producer] deRegisterHandler -> DEBU 43b deregistering event type: BLOCK
2017-07-10 19:39:27.855 UTC [eventhub_producer] Chat -> ERRO 43c error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
Sandeep (Mon, 10 Jul 2017 19:47:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kCPrA7u4XuSawYK3P) @sstone1 thanks
anarancio (Mon, 10 Jul 2017 20:06:02 GMT):
guys someone had this issue trying to deploy to bluemix fabric 0.6?
anarancio (Mon, 10 Jul 2017 20:06:03 GMT):
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)
anarancio (Mon, 10 Jul 2017 20:06:20 GMT):
I just trying to deploy the basic-sample-network example
anarancio (Mon, 10 Jul 2017 20:14:32 GMT):
found the error, was a typo in my connection profile
mahoney1 (Mon, 10 Jul 2017 20:19:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4w2PyLGBDsyhSQm5T) @anarancio thanks for letting us know..
anarancio (Mon, 10 Jul 2017 20:21:11 GMT):
@mahoney1 I finally was able to deploy to bluemix fabric. One question do you know if composer-rest-server will work using a profile pointing to bluemix?
anarancio (Mon, 10 Jul 2017 20:23:16 GMT):
seems it works but you have to use a different user than the one you used to make the deploy (at least with the same user didn't worked for me)
mahoney1 (Mon, 10 Jul 2017 20:53:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gRzkkD3o34GESHB6a) @anarancio it should do - this doc gives you an idea (including ENV variables) for deploying it in a production level. In particular, the info about what connection profile it uses.
mahoney1 (Mon, 10 Jul 2017 20:57:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ugCN4Sy556LAmMrXn) @DennisM330 hi, what command did you use to deploy the business network to your v1 Fabric environmnet? And can you confirm your npm and composer versions also pls and thanks
mahoney1 (Mon, 10 Jul 2017 20:57:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ugCN4Sy556LAmMrXn) @DennisM330 hi, what command did you use to deploy the business network to your v1 Fabric environmnet? And can you confirm your npm version also pls and thanks
DennisM330 (Mon, 10 Jul 2017 21:16:48 GMT):
I got another BNA to deploy so I will refactor my previous custom network and see what is up
anarancio (Mon, 10 Jul 2017 21:25:44 GMT):
thanks @mahoney1
DennisM330 (Mon, 10 Jul 2017 22:09:21 GMT):
All is OK now, updated my environment after being on vacation. What does RandomString do when deploying an archive? cd dist
composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
mahoney1 (Mon, 10 Jul 2017 22:32:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=iPWadDDAzk3RJ5YER) @DennisM330 cool. Randomstring does nothing, its just fulfilling the -s param (PeerAdmin is pre-enrolled so there's no secret per se)
DennisM330 (Tue, 11 Jul 2017 00:07:13 GMT):
Is there a way aside from developer a client, to look at events emitted a result of a transaction? I have an a event defined in the composer model and updated one of my transactions to emit the event. The invocation of the transaction via the composer-rest-server succeeds. Doing a docker logs on the chaincode peer shows 2017-07-11 00:01:10.656 UTC [Composer] Debug -> DEBU 2422 Emitting event from EventService.transactionCommit []
DennisM330 (Tue, 11 Jul 2017 02:04:47 GMT):
Appears I can use Node Red to pick up my events
DannyWong (Tue, 11 Jul 2017 03:46:46 GMT):
I recall in Composer (or playground), it provides some of facility to generate some random test data right?
coder-ajay (Tue, 11 Jul 2017 04:54:45 GMT):
Hi, whats life of test data created in development environment from angular UI?
coder-ajay (Tue, 11 Jul 2017 04:54:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vom597jfqirEeGAQA) @mahoney1 Thanks a lot. I will check in pdf.
shidosan (Tue, 11 Jul 2017 06:06:39 GMT):
Has joined the channel.
levinkwong (Tue, 11 Jul 2017 06:37:47 GMT):
Hi guys,
I have the following commands:
```
"deploy": "composer archive create --sourceName . --sourceType dir && composer network deploy --archiveFile mybna.bna -p hlfv1 -i PeerAdmin -s adminpw && composer network list -n mynetwork -p hlfv1 -i admin -s adminpw",
"undeploy": "composer network undeploy -n mynetwork -p hlfv1 -i PeerAdmin -s adminpw",
"list": "composer network list -n mynetwork -p hlfv1 -i admin -s adminpw"
```
After I run `deploy`, I run `undeploy`, and successful messages are returned.
But 1) The chaincode container `dev-peer0.org1.example.com-mynetwork-0.9.1` is still there
2) I run `deploy` again, it shows success at `composer network deploy` stage, but it shows `error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The business network has been undeployed)
`
levinkwong (Tue, 11 Jul 2017 06:37:47 GMT):
Hi guys,
I have the following commands:
```
"deploy": "composer archive create --sourceName . --sourceType dir && composer network deploy --archiveFile mybna.bna -p hlfv1 -i PeerAdmin -s adminpw && composer network list -n mynetwork -p hlfv1 -i admin -s adminpw",
"undeploy": "composer network undeploy -n mynetwork -p hlfv1 -i PeerAdmin -s adminpw",
"list": "composer network list -n mynetwork -p hlfv1 -i admin -s adminpw"
```
After I run `deploy`, I run `undeploy`, and successful messages are returned.
But 1) The chaincode container `dev-peer0.org1.example.com-mynetwork-0.9.1` is still there
2) I run `deploy` again, it shows success at `composer network deploy` stage, but it shows
```
error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The business network has been undeployed)
```
levinkwong (Tue, 11 Jul 2017 06:37:47 GMT):
Hi guys,
I have the following commands:
```
"deploy": "composer archive create --sourceName . --sourceType dir && composer network deploy --archiveFile mybna.bna -p hlfv1 -i PeerAdmin -s adminpw && composer network list -n mynetwork -p hlfv1 -i admin -s adminpw",
"undeploy": "composer network undeploy -n mynetwork -p hlfv1 -i PeerAdmin -s adminpw",
"list": "composer network list -n mynetwork -p hlfv1 -i admin -s adminpw"
```
After I run `deploy`, I run `undeploy`, and successful messages are returned.
But 1) The chaincode container `dev-peer0.org1.example.com-mynetwork-0.9.1` is still there
2) I run `deploy` again, it shows success at `composer network deploy` stage, but it shows
```
error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The business network has been undeployed)
```
levinkwong (Tue, 11 Jul 2017 06:37:47 GMT):
Hi guys,
I have the following commands:
```
"deploy": "composer archive create --sourceName . --sourceType dir && composer network deploy --archiveFile mybna.bna -p hlfv1 -i PeerAdmin -s adminpw && composer network list -n mynetwork -p hlfv1 -i admin -s adminpw",
"undeploy": "composer network undeploy -n mynetwork -p hlfv1 -i PeerAdmin -s adminpw",
"list": "composer network list -n mynetwork -p hlfv1 -i admin -s adminpw"
```
After I run `deploy`, I run `undeploy`, and successful messages are returned.
But 1) The chaincode container `dev-peer0.org1.example.com-mynetwork-0.9.1` is still there
2) I run `deploy` again, it shows success at `composer network deploy` stage, but it shows
```
error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The business network has been undeployed)
```
Anyone has idea why?
levinkwong (Tue, 11 Jul 2017 06:37:47 GMT):
Hi guys,
I have the following commands:
```
"deploy": "composer archive create --sourceName . --sourceType dir && composer network deploy --archiveFile mybna.bna -p hlfv1 -i PeerAdmin -s adminpw && composer network list -n mynetwork -p hlfv1 -i admin -s adminpw",
"undeploy": "composer network undeploy -n mynetwork -p hlfv1 -i PeerAdmin -s adminpw",
"list": "composer network list -n mynetwork -p hlfv1 -i admin -s adminpw"
```
After I run `deploy`, I run `undeploy`, and successful messages are returned.
But 1) The chaincode container `dev-peer0.org1.example.com-mynetwork-0.9.1` is still there
2) I run `deploy` again, it shows success at `composer network deploy` stage, but in the `composer network list` stage, it shows
```
error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The business network has been undeployed)
```
Anyone has idea why?
dselman (Tue, 11 Jul 2017 07:10:49 GMT):
Fabric does not yet support undeploying chaincode (stopping/removing the chaincode container). Use `composer network update` to update the contents of an existing network, or increment the version number of the network in package.json and use `deploy`
baoyangc (Tue, 11 Jul 2017 07:11:38 GMT):
hi guys,
i meet errors below:
```composer network deploy -a dist/bqj.bna -p hlv1 -i PeerAdmin -s abcd
Deploying business network from archive: dist/bqj.bna
Business network definition:
Identifier: banquanjia@0.0.10
Description: The Hello World of Hyperledger Composer samples
Error: {"created":"@1499756575.620297000","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1499756575.620287000","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1499756575.620293000","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
Command failed
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-admin/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-admin/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/local/lib/node_modules/composer-admin/node_modules/grpc/src/node/src/client.js:634:14```
dselman (Tue, 11 Jul 2017 07:12:06 GMT):
@DennisM330 in v0.9.1 we added the ability to view emitted events to Playground.
baoyangc (Tue, 11 Jul 2017 07:12:15 GMT):
my composer version is v0.9.1
dselman (Tue, 11 Jul 2017 07:13:36 GMT):
Looks like you might be using an incompatible version of Fabric. How did you start Fabric? Did you use the Composer scripts to install and start it?
dselman (Tue, 11 Jul 2017 07:13:49 GMT):
What do you see when you type `docker ps -a`?
baoyangc (Tue, 11 Jul 2017 07:14:14 GMT):
```CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ca9e3b2f1c0f hyperledger/fabric-peer:x86_64-1.0.0-rc1 "peer node start -..." 14 minutes ago Up 14 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
9bf01ed671e5 hyperledger/fabric-orderer:x86_64-1.0.0-rc1 "orderer" 14 minutes ago Up 14 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
423a6a65247a hyperledger/fabric-ca:x86_64-1.0.0-rc1 "sh -c 'fabric-ca-..." 14 minutes ago Up 14 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
e6e202de40e5 hyperledger/fabric-couchdb:x86_64-1.0.0-rc1 "tini -- /docker-e..." 14 minutes ago Up 14 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb```
baoyangc (Tue, 11 Jul 2017 07:14:19 GMT):
rc1
baoyangc (Tue, 11 Jul 2017 07:15:05 GMT):
yes , i run ./startFabric.sh
dselman (Tue, 11 Jul 2017 07:16:30 GMT):
I think you are missing an `f` in `-p hlv1`
dselman (Tue, 11 Jul 2017 07:16:49 GMT):
should be `-p hlfv1`
baoyangc (Tue, 11 Jul 2017 07:17:01 GMT):
o thanks
baoyangc (Tue, 11 Jul 2017 07:17:30 GMT):
sorry for disturb
dselman (Tue, 11 Jul 2017 07:17:50 GMT):
no problem
mahoney1 (Tue, 11 Jul 2017 07:35:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qryGxMe26yKhHupBS) @DannyWong yes, in Playground, there is a Test tab, where you can get / add data as JSON objects, whether its assets, participants or transactions. Can use to do in-browser testing or against a runtime Fabric once you connect.
mahoney1 (Tue, 11 Jul 2017 07:37:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pPzMQW8ys34GXD9Ba) @coder-ajay if your runtime dockerized fabric environment is still available, then the test data generated has been submitted to that fabric.
baoyangc (Tue, 11 Jul 2017 07:44:42 GMT):
is there a way to use composer-rest-server in "Specify if you want the generated REST API to be secured :NO" mode
dselman (Tue, 11 Jul 2017 07:45:32 GMT):
You can launch it passing all arguments on the command line
baoyangc (Tue, 11 Jul 2017 07:46:00 GMT):
we want use it as an http server
dselman (Tue, 11 Jul 2017 07:46:07 GMT):
The arguments are printed at startup (after you complete the forms)
baoyangc (Tue, 11 Jul 2017 07:46:08 GMT):
but without oauth login
baoyangc (Tue, 11 Jul 2017 07:46:45 GMT):
yes i know the command:` composer-rest-server -p hlfv1 -n banquanjia -i PeerAdmin -s abcd -N never`
dselman (Tue, 11 Jul 2017 07:46:48 GMT):
```
Options:
-p, --connectionProfileName The connection profile name [string]
-n, --businessNetworkName The business network identifier [string]
-i, --enrollId The enrollment ID of the user [string]
-s, --enrollSecret The enrollment secret of the user [string]
-N, --namespaces Use namespaces if conflicting types exist [string] [choices: "always", "required", "never"] [default: "always"]
-P, --port The port to serve the REST API on [number]
-S, --security Enable security for the REST API [boolean] [default: false]
-h, --help Show help [boolean]
```
dselman (Tue, 11 Jul 2017 07:47:08 GMT):
So `-S false` would do it
baoyangc (Tue, 11 Jul 2017 07:47:51 GMT):
yes . i see.
coder-ajay (Tue, 11 Jul 2017 07:48:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=L2CQYGtjrHbQedAf3) @mahoney1 ok. How is data maintained in real world data managed? Is this done with some database and services?
baoyangc (Tue, 11 Jul 2017 07:49:49 GMT):
in -S false mode, how composer-rest-server know which participant is creating an asset or make transaction
baoyangc (Tue, 11 Jul 2017 07:50:09 GMT):
is there a login method in this mode
baoyangc (Tue, 11 Jul 2017 07:50:11 GMT):
?
dselman (Tue, 11 Jul 2017 07:52:33 GMT):
Using the `-i` enrollment id
dselman (Tue, 11 Jul 2017 07:52:44 GMT):
All transactions will be processed using that id
baoyangc (Tue, 11 Jul 2017 07:53:36 GMT):
i mean make transaction with http API of composer-rest-server
baoyangc (Tue, 11 Jul 2017 07:53:53 GMT):
not in command line
dselman (Tue, 11 Jul 2017 07:54:13 GMT):
Yes -- that is the id that will be used
dselman (Tue, 11 Jul 2017 07:54:24 GMT):
What else could it be? :-)
baoyangc (Tue, 11 Jul 2017 07:54:48 GMT):
i see, composer-rest-server -i enrollId
baoyangc (Tue, 11 Jul 2017 07:54:56 GMT):
you mean this enrollId?
dselman (Tue, 11 Jul 2017 07:55:03 GMT):
yes
baoyangc (Tue, 11 Jul 2017 07:55:05 GMT):
got it
baoyangc (Tue, 11 Jul 2017 07:57:17 GMT):
this enrollId could be connected with an participantId.
baoyangc (Tue, 11 Jul 2017 07:57:50 GMT):
all operation is done by this participantId
dselman (Tue, 11 Jul 2017 07:59:06 GMT):
yes
dselman (Tue, 11 Jul 2017 07:59:17 GMT):
using `composer identity issue`
shidosan (Tue, 11 Jul 2017 08:10:50 GMT):
Hello to all community members. I have a beginner level question. I am planning to write a PoC app on Hyperledger Composer and was thinking what would be a setup to connect to local Hyperledger Fabric as 2 different kind of participants to test the PoC? Any help is appreciated.
dselman (Tue, 11 Jul 2017 08:14:17 GMT):
For POC you can use the Fabric development server installed by Composer. You can then create 2 participants and issue them identities (certificates). https://hyperledger.github.io/composer/managing/participantsandidentities.html
shidosan (Tue, 11 Jul 2017 08:30:16 GMT):
@dselman Thank you very much! The documentation is more about creating and managing identities for participants. It does not say anything about connecting to the network as a newly created participant.
dselman (Tue, 11 Jul 2017 08:34:22 GMT):
issuing an identity for a participant creates an enrollment id that can be used to connect
shidosan (Tue, 11 Jul 2017 08:53:57 GMT):
@dselman Oh, I got it, you can then use the enrollment id and secret to connect to BN using either composer REST API or composer-client via Node app. Thank you very much again! I hope one day I can be as helpful as you in this community :)
dselman (Tue, 11 Jul 2017 08:55:01 GMT):
:thumbsup:
ecn (Tue, 11 Jul 2017 09:02:31 GMT):
Hello, how can I issue an identity that will be able to issue others identity using the composer-client ? (bizNetworkConnection.issueIdentity method)
ecn (Tue, 11 Jul 2017 09:02:31 GMT):
Hello, how can I issue an identity that will be able to issue other identities using the composer-client ? (bizNetworkConnection.issueIdentity method)
sstone1 (Tue, 11 Jul 2017 09:03:59 GMT):
@ecn you can pass in additional options using the optional third parameter
sstone1 (Tue, 11 Jul 2017 09:04:16 GMT):
`issueIdentity('org.acme.Participant#FRED', 'fredid1', { issuer: true })`
ecn (Tue, 11 Jul 2017 09:05:09 GMT):
@sstone1 Oh thanks !
baoyangc (Tue, 11 Jul 2017 09:15:34 GMT):
do we support grpcs mode
baoyangc (Tue, 11 Jul 2017 09:15:38 GMT):
?
baoyangc (Tue, 11 Jul 2017 09:16:21 GMT):
and how to define an connection.json to support grpcs mode
mahoney1 (Tue, 11 Jul 2017 09:25:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=w9aYLWScQdCNELAdK) @coder-ajay yes, in the world state DB (eg. CouchDB, LevelDB ie pluggable) see here -> https://media.readthedocs.org/pdf/hyperledger-fabric/latest/hyperledger-fabric.pdf.
coder-ajay (Tue, 11 Jul 2017 09:39:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vom597jfqirEeGAQA) @mahoney1 Thanks a lot. I will check the PDF.
elrond (Tue, 11 Jul 2017 09:58:33 GMT):
github authentification not working, im not getting the 401 error, its letting me pass through normally?
levinkwong (Tue, 11 Jul 2017 10:12:32 GMT):
Hi guys, I have the following *Person* and *VIP* participant and have a *setupTransaction* to create a participant:
```
participant Person identified by personId {
o String personId
o DateTime dateOfBirth
}
participant VIP extends Person {
}
transaction Setup {
}
function setupTransactionProcessor(setupTransaction)
{
var factory = getFactory();
var NS = 'com.app';
var harry= factory.newResource(NS, 'VIP', "Harry");
return getParticipantRegistry(NS + '.VIP')
.then(function(vipRegistry) {
return vipRegistry.add(harry);
})
}
```
After I submit a setup transaction, it returns success.
But when I `composer network list`, it shows error
```
error trying to query chaincode. Error: chaincode error (status: 500, message: Error: Instance com.app.VIP#Harry missing required field dateOfBirth)
```
I can understand the error but *WHY* the setupTransaction do not throws error at that moment?
Is it related to the `extends`?
baoyangc (Tue, 11 Jul 2017 10:25:19 GMT):
```composer network deploy -a ./dist/bqj.bna -p swarm -i PeerAdmin -s abcd
Deploying business network from archive: ./dist/bqj.bna
Business network definition:
Identifier: banquanjia@0.0.10
Description: The Hello World of Hyperledger Composer samples
Error: PEM encoded certificate is required.
Command failed```
try to deploy bna to fabric cluster. but got this error
mahoney1 (Tue, 11 Jul 2017 10:37:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GB6QGupoqJJeiNEz8) @elrond a github 401 error means unauthorized (you know that) but have you registered Composer in Github itself ? https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
mahoney1 (Tue, 11 Jul 2017 10:42:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2kyrky38yXNMEDvHp) @levinkwong if you make dateOfBirth optional then you won't get the error but to your main question: javascript is not compiled.
baoyangc (Tue, 11 Jul 2017 10:43:33 GMT):
could `composer network deploy ` deploy network to multi org peers?
coder-ajay (Tue, 11 Jul 2017 10:47:26 GMT):
hi, where can i get details for creating different form fields? Like defining a field as String in an asset, creates a text field in UI.
mahoney1 (Tue, 11 Jul 2017 10:55:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EZykiSrZ2o9N7Ged7) @coder-ajay here -> https://hyperledger.github.io/composer/reference/cto_language.html it describes the primitive types - outside that you can look at the artifacts from the developer tutorial to help you https://hyperledger.github.io/composer/unstable/tutorials/developer-guide.html
levinkwong (Tue, 11 Jul 2017 11:01:37 GMT):
@mahoney1
Does that mean since the 'getter' was not executed when I add my VIP object, it is ok. But when I try to list the objects, the composer tries to 'get' the value from that object, then it returns error because it is empty.
coder-ajay (Tue, 11 Jul 2017 11:02:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Dr8Gg5L8XuoNxk9vX) @mahoney1 Ok. Thanks for the links.
mahoney1 (Tue, 11 Jul 2017 11:08:23 GMT):
the network is ultimately deployed (via your HLF connection) to the endorsing peers in your Fabric runtime and there is an example of multi-org peers using a multi-org channel here -> http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html.
mahoney1 (Tue, 11 Jul 2017 11:18:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4rjfYWGJpAuMCo7HX) @levinkwong hi - if you mean a previous asset that had no value for that field, then yes, it would error, as it doesn't match the current schema.
levinkwong (Tue, 11 Jul 2017 11:20:22 GMT):
@mahoney1 But my asset is created with the current schema
levinkwong (Tue, 11 Jul 2017 11:21:00 GMT):
with a missing mandatory field
mahoney1 (Tue, 11 Jul 2017 11:33:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QmThMQxuWv3ASGsgC) @levinkwong right, so the required field was already in the schema for the deployed network prior to you submitting the txn ; it does seem strange, will look into this.
levinkwong (Tue, 11 Jul 2017 11:35:39 GMT):
@mahoney1 Thanks! I asked to understand more about the composer. For my app, I already updated to provide the mandatory information
simoneromani (Tue, 11 Jul 2017 11:46:26 GMT):
Has joined the channel.
mahoney1 (Tue, 11 Jul 2017 11:48:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tqQBuJSBpFmukTFdf) @levinkwong perfectly reasonable question :)
DennisM330 (Tue, 11 Jul 2017 11:51:53 GMT):
When I deploy a BNA for a network that already exists - same version, the deploy is successful. Does this replace my previously deployed network? Trying to get a handle on when to version, etc
mahoney1 (Tue, 11 Jul 2017 12:02:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zJrkirpoqZTcXBmr7) @mahoney1 albeit with a different network (basic sample network) - we could not replicate your error in v0.9.1 when trying to submit a transaction from client code or using playground, and thus composer network list - the only time we see it is if an object was added before, the schema was changed to make the property required - then composer network list 'complains' about the instance). Could you raise a Stack Overflow ticket please and attach everything including your network, thank you
dselman (Tue, 11 Jul 2017 12:27:54 GMT):
@levinkwong the data should have been validated before it was persisted. We may have a bug... I will look into how you were able to persist invalid data
levinkwong (Tue, 11 Jul 2017 12:32:22 GMT):
@dselman Thanks! I will see if I can make a minimal source codes without business logic tomorrow.
DennisM330 (Tue, 11 Jul 2017 12:33:38 GMT):
This is my code to emit an event: var factory = getFactory();
var vehicleAddAssemblyEvent = factory.newEvent('net.biz.digitalpartsnetwork', 'vehicleAddAssemblyEvent');
vehicleAddAssemblyEvent.eventMessage = "Added assembly to vehicle";
vehicleAddAssemblyEvent.vehicle = vehicle;
vehicleAssAssemblyEvent.component = component;
emit(vehicleAddAssemlyEvent);
dselman (Tue, 11 Jul 2017 12:36:43 GMT):
@levinkwong ... you need to add a `harry.dateOfBirth = new Date()` or something when you create your asset
dselman (Tue, 11 Jul 2017 12:36:43 GMT):
@levinkwong ... you need to add a `harry.dateOfBirth = new Date()` or something when you create your participant
elrond (Tue, 11 Jul 2017 12:38:06 GMT):
Now, navigate to the REST API explorer at http://localhost:3000/explorer/. If security has been successfully enabled, any attempts to call one of the business network REST API operations using the REST API explorer should be rejected with an HTTP 401 Authorization Required message
i am not getting the error message, although it is connected to the auth service because visiting the link "http://localhost:3000/auth/github" asks me for authorization
elrond (Tue, 11 Jul 2017 12:38:29 GMT):
im wondering as to why the error doesnt pop up naturally when trying to access the rest api without going through with authorization?
levinkwong (Tue, 11 Jul 2017 12:39:43 GMT):
@dselman Yeah, But shouldn't it throws error if I didn't assign any value?
dselman (Tue, 11 Jul 2017 12:45:22 GMT):
Yes. the bug has been fixed https://github.com/hyperledger/composer/pull/1508
dselman (Tue, 11 Jul 2017 12:45:32 GMT):
Will be delivered in v0.9.2
levinkwong (Tue, 11 Jul 2017 13:03:43 GMT):
@dselman Thanks very much
mahoney1 (Tue, 11 Jul 2017 13:37:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KaDuHfXc83bcfoPXp) @elrond can you raise a Stack Overflow question pls - it seems there's something wrong with your config - the Github auth is documented here -> https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
sachaLiguori (Tue, 11 Jul 2017 13:38:16 GMT):
Hi, when I try to launch a cmd "node cli.js myCmd", I get the error Error: Could not parse enrollment response [404 page not found
] as JSON due to error [SyntaxError: Unexpected token p in JSON at position 4]
The error come from the init part of my program, when the progran try to connect to bizNetworkConnection
uber.twin (Tue, 11 Jul 2017 13:43:46 GMT):
@dselman @mahoney1 hi, is it possibe to know how are the artefacts under "hlfv1/composer/creds" produced?
uber.twin (Tue, 11 Jul 2017 13:53:31 GMT):
I'm trying to build a network setup from scratch and I'm not sure how to produce the corresponding of the keys in "hlfv1/composer/creds"
jmcnevin (Tue, 11 Jul 2017 14:50:29 GMT):
Is there any way to override the location of the composer connection profiles directory?
mahoney1 (Tue, 11 Jul 2017 16:04:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GEGNm2BzKoCY4H724) @uber.twin under ~/.composer-credentials your enrollment certificate would be imported into the local composer KeyValStore. The Admin's crypto material (eg., PeerAdmin) needs to be available to deploy a business network (the Developer tools install page on our docs site discusses pulling down the fabric-dev-servers scripts which does the PeerAdmin import as part of the setup . hlfv1 refers to a profile subdirectory under .composer-connection-profiles.
mahoney1 (Tue, 11 Jul 2017 16:06:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SRkDDZFJ9DAi2RXkj) @sachaLiguori can you raise a Stack Overflow, with your full code sample and how you tried to connect to the biz network you have presumably deployed - also describe your environment (npm/node/docker versions) and confirm which HL/Fabric version you're running with. Also include a docker ps -a there, thanks
bgaillar (Tue, 11 Jul 2017 16:07:39 GMT):
Has joined the channel.
bgaillar (Tue, 11 Jul 2017 16:07:43 GMT):
Has the Query and Historian features been added to Hyperledger Fabric's Composer or the Playground yet? Do we have a timeline?
mahoney1 (Tue, 11 Jul 2017 16:16:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Az7XpmyJQn4Z6GgrH) @jmcnevin hi there - is there an implementation reason why you would want to change location - am interested to know, that's all as the credentials dir is also in the users directory. But you could in theory use COMPOSER_CONFIG environment variable eg. ```Connection profiles are also loaded from the COMPOSER_CONFIG environment variable. This should be a JSON string with a root connectionProfiles key, with a set of connection profiles indexed by name.
Eg. you can add this to a Docker compose YAML file - note the example below is a v0.6 connection profile, but you get the picture:
environment:
COMPOSER_CONFIG: >
{
"connectionProfiles": {
"hlfabric": {
"type": "hlf",
"keyValStore": "/home/composer/.composer-credentials",
"membershipServicesURL": "grpc://membersrvc:7054",
"peerURL": "grpc://vp0:7051",
"eventHubURL": "grpc://vp0:7053",
"deployWaitTime": 300,
"invokeWaitTime": 30
}
},
"credentials": {
"hlfabric": {
"admin": "Xurw3yU9zI0l"
}
}
}```
jmcnevin (Tue, 11 Jul 2017 16:18:12 GMT):
@mahoney1 Just curious, really... looking into setting up a CI/CD pipeline for our BNA
mahoney1 (Tue, 11 Jul 2017 16:19:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kxfaaxRd4N6mJ5PEp) @bgaillar Query exists today (since v0.9.0) https://hyperledger.github.io/composer/reference/query-language.html and Historian's timeline is sometime later this month..
mahoney1 (Tue, 11 Jul 2017 16:25:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=K6kyXD89neWhoQund) @DennisM330 not sure you had a response but - `composer network update` will update your BN to your latest changes - `composer network deploy` will deploy anew ; if it exists (ie using deploy) it will say 'already exists'
mahoney1 (Tue, 11 Jul 2017 16:25:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3xnsNmjJovb5qon44) @shidosan think you need to specify the resource you're denying eg `participant: "com.acme.network.Admin#bob@example.com"
Joseph (Tue, 11 Jul 2017 17:08:18 GMT):
Before I upgraded to the latest composer version v0.9.1, I would test my network assumptions by putting the BNA on composer playground local, but recently, I noticed that it started allowing transactions / assets to be submitted for participants that are not explicitly defined beforehand. Is this working as designed?
sstone1 (Tue, 11 Jul 2017 17:17:32 GMT):
do you mean participants that are referenced in the JSON input for the transaction?
sstone1 (Tue, 11 Jul 2017 17:18:07 GMT):
e.g. your JSON includes: `"participant": "resource:org.acme.Participant#FRED"`
Joseph (Tue, 11 Jul 2017 17:19:05 GMT):
Yep! exactly...
Joseph (Tue, 11 Jul 2017 17:24:59 GMT):
More details: So the asset I have is a loan between two people, a borrower and a lender. And so in the cto file, my loan asset references (-->) these two participants.
Joseph (Tue, 11 Jul 2017 17:25:25 GMT):
So I submit this in playground "create asset"
Joseph (Tue, 11 Jul 2017 17:25:33 GMT):
{
"$class": "com.innovate.iloanate.Loan",
"loanID": "loanID:0003",
"loanStatus": "LOAN_CREATED",
"loanRequestDate": "",
"loanDuration": "",
"loanAmount": 0,
"borrower": "resource:com.innovate.iloanate.Borrower#memberId:8896",
"lender": "resource:com.innovate.iloanate.Lender#memberId:1081"
}
Joseph (Tue, 11 Jul 2017 17:26:05 GMT):
And it let it go through even though neither that borrower or lender has been defined...
sstone1 (Tue, 11 Jul 2017 17:26:13 GMT):
so, that is expected
sstone1 (Tue, 11 Jul 2017 17:26:23 GMT):
we're doing a lot of work on cleaning up our security model at the moment
sstone1 (Tue, 11 Jul 2017 17:26:48 GMT):
part of this is being able to cope with things that you do have access to, where those things relate to other things that you do not have access to
sstone1 (Tue, 11 Jul 2017 17:27:37 GMT):
before we tried to resolve the entire asset/participant graph and threw an error if any part of it could not be accessed (either due to it not existing or not having access)
Joseph (Tue, 11 Jul 2017 17:28:03 GMT):
oh so that's why before this would not have worked for me...
sstone1 (Tue, 11 Jul 2017 17:29:23 GMT):
yeah
sstone1 (Tue, 11 Jul 2017 17:29:37 GMT):
so now, any relationships that cannot be resolved are replaced with `InvalidRelationship` objects
sstone1 (Tue, 11 Jul 2017 17:30:02 GMT):
we're missing a good way to "check" to see if a relationship is valid or not
sstone1 (Tue, 11 Jul 2017 17:30:13 GMT):
but if you try and access any properties of an `InvalidRelationship`
sstone1 (Tue, 11 Jul 2017 17:30:26 GMT):
for example: `loan.borrower.socialSecurityNumber`
sstone1 (Tue, 11 Jul 2017 17:30:30 GMT):
then an error will be thrown
sstone1 (Tue, 11 Jul 2017 17:30:53 GMT):
`loan.borrower.memberId` is OK though, as we know the identifier
sstone1 (Tue, 11 Jul 2017 17:31:10 GMT):
we really need a `isValid(loan.borrower)` to test relationships point to real things
Joseph (Tue, 11 Jul 2017 17:39:30 GMT):
Yes!
Joseph (Tue, 11 Jul 2017 17:40:57 GMT):
@sstone1 Could I define a rule in permissions.acl that would prevent this from happening?
sstone1 (Tue, 11 Jul 2017 17:45:01 GMT):
you could do - just try accessing a property of the relationship
sstone1 (Tue, 11 Jul 2017 17:46:20 GMT):
```
rule R7 {
description: "The owner of a vehicle can update the vehicle"
participant(p): "systest.accesscontrols.SampleParticipant"
operation: UPDATE
resource(loan): "systest.accesscontrols.Loan"
condition: (loan.borrower.socialSecurityNumber && otherConditions)
action: ALLOW
}
```
sstone1 (Tue, 11 Jul 2017 17:46:28 GMT):
i'll look at adding the `isValid`
sstone1 (Tue, 11 Jul 2017 17:46:43 GMT):
you should just be able to have `condition: (isValid(loan.borrower))`
Joseph (Tue, 11 Jul 2017 17:48:08 GMT):
Cool! Thank you :)
Joseph (Tue, 11 Jul 2017 18:25:45 GMT):
Does anyone have a running example of using the queries.qry file that they can share?
Joseph (Tue, 11 Jul 2017 18:34:12 GMT):
I created a file and put a simple query in it, and file itself in the models directory (is this appropriate) and then I tried call it in the .js file following transaction. But getting a query not found error in playground.
dselman (Tue, 11 Jul 2017 18:55:34 GMT):
`queries.qry` goes in the root of the network (next to package.json)
dselman (Tue, 11 Jul 2017 18:56:09 GMT):
sample: https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network
Joseph (Tue, 11 Jul 2017 19:02:13 GMT):
Awesome @dselman! So just took a look at the example. Question: So do I need to define a transaction for each query?
dselman (Tue, 11 Jul 2017 19:02:53 GMT):
No - if you look at the unit test you can see it is calling queries from the client side
DennisM330 (Tue, 11 Jul 2017 19:02:55 GMT):
Is there a way in the Node Red Hyperledger Composer In node to retrieve the payload of an event? I tried to load msg.payload but that gets an Undefined in the Debug tab. So I log the entire message which gives me the overall event but not payload body as shown: Resource {id=net.biz.digitalpartsnetwork.vehicleAddAssemblyEvent#4c7d07ea-5c66-42d9-8150-723358f9f767#0}
dselman (Tue, 11 Jul 2017 19:04:43 GMT):
It looks like the full JSON for the event should be displayed:
dselman (Tue, 11 Jul 2017 19:04:48 GMT):
```
node.log('received event ' + JSON.stringify(deserializedEvent));
node.send(deserializedEvent);
```
dselman (Tue, 11 Jul 2017 19:05:05 GMT):
Are you sure you are using the latest version of the Node-RED nodes?
dselman (Tue, 11 Jul 2017 19:05:54 GMT):
@caroline-church may know more
dselman (Tue, 11 Jul 2017 19:06:10 GMT):
she wrote that code
DennisM330 (Tue, 11 Jul 2017 19:06:52 GMT):
@deselman Yes, using latest release on NPM 1.0.1-20170531221840 is the latest release
PatisP (Tue, 11 Jul 2017 19:16:50 GMT):
bluemix
bgaillar (Tue, 11 Jul 2017 20:52:23 GMT):
There was a study that noted that in version 0.6 hyperledger fabric's scalability was called into question as they found a limit to only 16 nodes. I know they intended on addressing this problem in version 1.0 but does anyone have any insight on whether that was accomplished. Here is the link to that article I am referencing (see part 4: Performance Benchmarking) ttps://arxiv.org/pdf/1703.04057.pdf
sstone1 (Tue, 11 Jul 2017 20:53:56 GMT):
@bgaillar that's really a question for the fabric team in #fabric
dselman (Tue, 11 Jul 2017 21:09:49 GMT):
@DennisM330 seems to work for me
dselman (Tue, 11 Jul 2017 21:09:57 GMT):
Message Attachments
dselman (Tue, 11 Jul 2017 21:10:24 GMT):
Message Attachments
JennFoley (Wed, 12 Jul 2017 00:05:57 GMT):
Anyone know how to setup the Connection information for Hyperledger Composer nodes in NodeRed?
JennFoley (Wed, 12 Jul 2017 00:07:38 GMT):
Message Attachments
reggiefelias (Wed, 12 Jul 2017 02:57:01 GMT):
Hi All good morning! Is it possible to use Crypto2 in composer? https://github.com/thenativeweb/crypto2. Thank you in advance
shidosan (Wed, 12 Jul 2017 06:12:55 GMT):
Is it possible to make ACL where one party is denied to create another party? I have a rule:
`
rule R2 {
description: "Deny Admin to C*UD LegalEntity"
participant: "com.acme.network.Admin"
operation: CREATE, UPDATE, DELETE
resource: "*com.acme.network.LegalEntity"
action: DENY
}
`
But then in my tests I am able to create LegalEntity as Admin. I am a little confused.
shidosan (Wed, 12 Jul 2017 06:12:55 GMT):
Is it possible to make ACL where one party is denied to create another party? I have a rule:
`
rule R2 {
description: "Deny Admin to C*UD LegalEntity"
participant: "com.acme.network.Admin"
operation: CREATE, UPDATE, DELETE
resource: "com.acme.network.LegalEntity"
action: DENY
}
`
But then in my tests I am able to create LegalEntity as Admin. I am a little confused.
shidosan (Wed, 12 Jul 2017 06:12:55 GMT):
Is it possible to make ACL where one party is denied to create another party? I have a rule:
`
rule R2 {
description: "Deny Admin to C*UD LegalEntity"
participant: "com.acme.network.Admin"
operation: CREATE, UPDATE, DELETE
resource: "com.acme.network.LegalEntity"
action: DENY
}
`
But then in my tests I am able to create LegalEntity as Admin. Before creating LegalEntity I've added Admin participant, issued identity to it and connected to network as Admin. I am a little confused.
baoyangc (Wed, 12 Jul 2017 06:18:01 GMT):
```npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "-g" "composer-cli"
npm ERR! node v6.11.1
npm ERR! npm v3.10.10
npm ERR! shasum check failed for /tmp/npm-18081-4f31ba2f/registry.npmjs.org/composer-runtime-hlf/-/composer-runtime-hlf-0.9.1.tgz
npm ERR! Expected: 9ae224a5d28fb1a961f0fcea0e6254a3287e1c00
npm ERR! Actual: 3948b3c53265f2a7b6e1894b4b5782dcf1948a60
npm ERR! From: https://registry.npmjs.org/composer-runtime-hlf/-/composer-runtime-hlf-0.9.1.tgz
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR!
baoyangc (Wed, 12 Jul 2017 06:18:07 GMT):
errors meet
reggiefelias (Wed, 12 Jul 2017 06:18:22 GMT):
Hi All good afternoon! Is there a sample for calling Get Rest API for composer? Thank you
shidosan (Wed, 12 Jul 2017 06:20:22 GMT):
@reggiefelias are you referring to composer-rest-server APIs?
reggiefelias (Wed, 12 Jul 2017 06:26:08 GMT):
@shidosan Yes :), I created two network, network 1 i deployed and generated the composer-rest-server APIs. Now I'm developing network 2 to call REST API generated from network 1
dselman (Wed, 12 Jul 2017 06:31:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WkfNSKrsLXrkxjN3h) @JennFoley via the connection profile (which needs to be stored in the user homedir in `~/.composer-connection-profiles/STSA-FSS/connection.json`
shidosan (Wed, 12 Jul 2017 06:32:13 GMT):
@reggiefelias You can run composer-rest-server, navigate to http://localhost:3000/explorer/ where you can play around with APIs and get Curl snippets. You can also use nodejs fetch libs to call APIs
fh48 (Wed, 12 Jul 2017 06:32:48 GMT):
Hi I am trying to create my-network ```fabianhinsenkamp$ composer archive create --sourceType dir --sourceName . -a ./dist/mynetwork.bna``` but get the error ```Input directory: /Users/fabianhinsenkamp/Documents/businessNetwork
/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Expected "#", "." or "\"" but "-" found. Line 14 column 20``` Does someone know what that means?
fh48 (Wed, 12 Jul 2017 06:32:48 GMT):
Hi I am trying to create my-network ```fabianhinsenkamp$ composer archive create --sourceType dir --sourceName . -a ./dist/mynetwork.bna``` but get the error ```Input directory: /Users/fabianhinsenkamp/Documents/businessNetwork
/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Expected "#", "." or "\"" but "-" found. Line 14 column 20``` Does someone know what that means?
fh48 (Wed, 12 Jul 2017 06:32:48 GMT):
Hi I am trying to create my-network ```fabianhinsenkamp$ composer archive create --sourceType dir --sourceName . -a ./dist/mynetwork.bna ``` but get the error ```Input directory: /Users/fabianhinsenkamp/Documents/businessNetwork
/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Expected "#", "." or "\"" but "-" found. Line 14 column 20``` Does someone know what that means?
fh48 (Wed, 12 Jul 2017 06:32:48 GMT):
Hi I am trying to create my-network ```Input directory: /Users/fabianhinsenkamp/Documents/businessNetwork
/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Expected "#", "." or "\"" but "-" found. Line 14 column 20``` Does someone know what that means?
fh48 (Wed, 12 Jul 2017 06:32:48 GMT):
Hi I am trying to create my-network ```Input directory: /Users/fabianhinsenkamp/Documents/businessNetwork
/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Expected "#", "." or "\"" but "-" found. Line 14 column 20``` Does someone know what that means?
fh48 (Wed, 12 Jul 2017 06:32:48 GMT):
Hi I am trying to create my-network - fabianhinsenkamp$ composer archive create --sourceType dir --sourceName . -a ./dist/mynetwork.bna but get the error ```Input directory: /Users/fabianhinsenkamp/Documents/businessNetwork
/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Expected "#", "." or "\"" but "-" found. Line 14 column 20``` Does someone know what that means?
fh48 (Wed, 12 Jul 2017 06:32:48 GMT):
Hi I am trying to create my-network - fabianhinsenkamp$ composer archive create --sourceType dir --sourceName . -a ./dist/mynetwork.bna but get the error ```Input directory: /Users/fabianhinsenkamp/Documents/businessNetwork
/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Expected "#", "." or "\"" but "-" found. Line 14 column 20``` What does that error mean?
dselman (Wed, 12 Jul 2017 06:33:51 GMT):
@reggiefelias you can experiment with using the `post` method from a TP function to call the other network.
reggiefelias (Wed, 12 Jul 2017 06:35:48 GMT):
@dselman noted & thanks
dselman (Wed, 12 Jul 2017 06:36:15 GMT):
@fh48 this is a syntax error in one of your files. Probably using a `-` in an identifier. Opening the files in VSCode with the Composer extension may help you find this.
dselman (Wed, 12 Jul 2017 06:36:32 GMT):
Please create an issue for the error message, we should be displaying the file name
dselman (Wed, 12 Jul 2017 06:39:35 GMT):
@reggiefelias you would have to webpack the crypto library so it can be included as a .js file inside the business network archive.
fh48 (Wed, 12 Jul 2017 06:40:10 GMT):
@dselman thanks - finally found it. Thanks so much!
dselman (Wed, 12 Jul 2017 06:40:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dpaS2EhNQHT9Ddna7) @baoyangc somehow the content of the npm package got corrupted during download.
baoyangc (Wed, 12 Jul 2017 06:44:21 GMT):
thanks
coder-ajay (Wed, 12 Jul 2017 06:47:04 GMT):
Hi .. I am facing problem with the rest server getting updated ... after minor changes in .cto file I run ``` composer archive create `, dist > ` composer network deploy ` ... just to
coder-ajay (Wed, 12 Jul 2017 06:54:13 GMT):
hi ... sorry for posting this again ... I am facing problem in the rest server getting updated in ` localhost:3000/explorer ` .. i run below commands after I did minor changes in .cto file (basically casing) ...
```
1. composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna`
2. dist > composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
3. composer-rest-server -p hlfv1 -n my-network -i admin -s adminpw -N never
```
I also ran ` npm install `, just in case.
The .bna ran successfully in Bluemix.
When I restarted the fabric, changes started reflecting. But I thought above three commands should be enough?
Am I missing something?
coder-ajay (Wed, 12 Jul 2017 06:54:13 GMT):
hi ... sorry for posting this again ... I am facing problem in the rest server getting updated in ` localhost:3000/explorer ` .. i run below commands after I did minor changes in .cto file (basically casing) ...
```
1. composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna`
2. dist > composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
3. composer-rest-server -p hlfv1 -n my-network -i admin -s adminpw -N never
```
I also ran ` npm install `, just in case.
The .bna ran successfully in Bluemix.
When I restarted the fabric, changes started reflecting. But I thought above three commands should be good enough?
Am I missing something?
coder-ajay (Wed, 12 Jul 2017 06:54:13 GMT):
hi ... sorry for posting this again ... I am facing problem in the rest server getting updated in ` localhost:3000/explorer ` .. i run below commands after I did minor changes in .cto file (basically casing) ...
```
1. composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna`
2. dist > composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
3. composer-rest-server -p hlfv1 -n my-network -i admin -s adminpw -N never
```
I also ran ` npm install `, just in case.
The .bna ran successfully in Bluemix. All containers are ruuning.
When I restarted the fabric, changes started reflecting. But I thought above three commands should be good enough?
Am I missing something?
dselman (Wed, 12 Jul 2017 07:04:18 GMT):
you probably want `composer network update` not `composer network deploy`
coder-ajay (Wed, 12 Jul 2017 07:12:58 GMT):
Ok. Let me try
reggiefelias (Wed, 12 Jul 2017 07:26:36 GMT):
hi All, I found this sample for Rest API post
reggiefelias (Wed, 12 Jul 2017 07:26:37 GMT):
https://hyperledger.github.io/composer/integrating/call-out.html
reggiefelias (Wed, 12 Jul 2017 07:27:29 GMT):
Is there a get? I tried using the post command for get operation but no results returned
dselman (Wed, 12 Jul 2017 07:27:50 GMT):
no, only POST is supported
reggiefelias (Wed, 12 Jul 2017 07:28:34 GMT):
@dselman. Thank you for your quick response as always
dselman (Wed, 12 Jul 2017 07:28:44 GMT):
:thumbsup:
coder-ajay (Wed, 12 Jul 2017 07:31:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9YYnAdtG55Goopamj) @dselman Yes... this is working. Thanks lot.
shidosan (Wed, 12 Jul 2017 08:01:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3xnsNmjJovb5qon44) @shidosan I've figured out this myself. I was creating Admin participant with userID='admin' which is the same as composer admin :)
Audrius (Wed, 12 Jul 2017 08:07:09 GMT):
Has joined the channel.
JonathanTan (Wed, 12 Jul 2017 08:18:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5MkfN4gDjvuchsB2w) @shidosan so we can use other external/third-party node.js packages?
prasoc (Wed, 12 Jul 2017 08:19:11 GMT):
Has joined the channel.
seungchan (Wed, 12 Jul 2017 08:19:34 GMT):
Has joined the channel.
tallharish (Wed, 12 Jul 2017 08:28:12 GMT):
Has joined the channel.
seungchan (Wed, 12 Jul 2017 08:29:17 GMT):
sorry, I hope you understand me even if i used rude sentence. I'm a high school student. not good English. When i studying "Composer", i found it has applications that "node.js" and "web or mobile". then "hyperledger fabric" also has a application. I really confused... what is the difference between "composer application" and "fabric application"? Does "fabric application" contains ability of "composer application"?
JonathanTan (Wed, 12 Jul 2017 08:34:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5FhLwMvNLNsBmMikD) @seungchan Composer builds application for a Fabric Network, in essence it is to help you quickly create a blockchain application
JonathanTan (Wed, 12 Jul 2017 08:34:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5FhLwMvNLNsBmMikD) @seungchan Composer builds applications for a Fabric Network, in essence it is to help you quickly create a blockchain application
baoyangc (Wed, 12 Jul 2017 08:34:51 GMT):
in the connection.json, what is the trustedRoots of ca? it's ca's "ca.org1.bqj.cn-cert.pem"?
JonathanTan (Wed, 12 Jul 2017 08:36:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DTm3SogfzQMNjZNnu) I also think it is destined to help deploy the same business network/application to other Hyperledger projects besides Fabric
baoyangc (Wed, 12 Jul 2017 08:38:50 GMT):
`composer network deploy ` can only deploy bna to peers in the same one org, do we have a plan to support deploy on multi orgs?
baoyangc (Wed, 12 Jul 2017 08:38:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=p8i5bYqcEXP59NZHn) @mahoney1 , but when i execute `composer network deploy -i PeerAdmin -s secret`, this PeerAdmin can deploy chaincode to all peers in all orgs?
seungchan (Wed, 12 Jul 2017 08:46:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4qg9f4Drgkt6Bug3N) @JonathanTan so much thank you. "composer applications" is used for to deploy business network and to create REST API. And "fabric application" is used for "Client Application" besides "composer" deploy other business network as well as "fabic". Is that correct?
?
baoyangc (Wed, 12 Jul 2017 08:48:39 GMT):
```⠋ Deploying business network definition. This may take a minute...E0712 16:47:24.013050000 140735226695680 ssl_transport_security.c:611] Could not load any root certificate.
E0712 16:47:24.013087000 140735226695680 ssl_transport_security.c:1348] Cannot load server root certificates.
E0712 16:47:24.013363000 140735226695680 security_connector.c:837] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0712 16:47:24.013380000 140735226695680 secure_channel_create.c:127] Failed to create secure subchannel for secure name '47.93.61.219:7053'
E0712 16:47:24.013389000 140735226695680 secure_channel_create.c:158] Failed to create subchannel arguments during subchannel creation.
E0712 16:47:24.014031000 140735226695680 ssl_transport_security.c:611] Could not load any root certificate.
E0712 16:47:24.014045000 140735226695680 ssl_transport_security.c:1348] Cannot load server root certificates.
E0712 16:47:24.014057000 140735226695680 security_connector.c:837] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0712 16:47:24.014063000 140735226695680 secure_channel_create.c:127] Failed to create secure subchannel for secure name '47.93.61.219:7153'
E0712 16:47:24.014067000 140735226695680 secure_channel_create.c:158] Failed to create subchannel arguments during subchannel creation.
⠋ Deploying business network de```
deploy meet error
JonathanTan (Wed, 12 Jul 2017 09:03:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ejoBHBmrjohXX2G2k) @seungchan not exactly, there's no real fabric application, we usually deploy chaincode or smart contracts into Fabric (these are usually coded in Go), so Composer helps to develop these chaincode/smart contracts using the Composer Business Network Definition (composer modelling/javascript) , composer also has a rest-server to quickly spin up a RESTful API server (based on Loopback) and also generate a basic Angular front-end
shidosan (Wed, 12 Jul 2017 09:13:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mteZ5KxutS4jruAD4) @JonathanTan Sure, I don't see why not. I suppose you could call composer-rest-server APIs once they are generated using third party libraries to build up your application.
baoyangc (Wed, 12 Jul 2017 09:16:24 GMT):
in grpcs mode, could we config like `"requestURL": "grpcs://47.93.61.219:7051"`? or should we use only domain name instead of IP address
JonathanTan (Wed, 12 Jul 2017 09:17:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hSPQgt9tEvuocGieb) @shidosan that's extending from the RESTful Fabric Client that's generated, I was thinking about using other node.js libraries in a transaction logic function, example, using the crypto2 library to validate a signature
shidosan (Wed, 12 Jul 2017 09:18:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NZfTkG5Y7uqWrAxdH) @JonathanTan Oh, sorry, I got your answer wrong) I haven't done anything like that for now, but curious how one would go about doing that.
seungchan (Wed, 12 Jul 2017 09:30:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ia4gnjxrzbkWzaG3E) @JonathanTan really.. thank you.. i have to ask at fabric channel.. i thought it is for client that the application explained in http://hyperledger-fabric.readthedocs.io/en/latest/write_first_app.html?highlight=node.js%20SDK.
mahoney1 (Wed, 12 Jul 2017 09:53:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WfFjXq6HdyxQKnG9H) @baoyangc you can do both _grpcs://
mahoney1 (Wed, 12 Jul 2017 09:53:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WfFjXq6HdyxQKnG9H) @baoyangc you can do both _grpcs://
baoyangc (Wed, 12 Jul 2017 09:53:57 GMT):
thanks
shidosan (Wed, 12 Jul 2017 10:18:01 GMT):
Getting `Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]` error when trying to issue identity to newly created participant using admin:adminpw
coder-ajay (Wed, 12 Jul 2017 10:32:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9YYnAdtG55Goopamj) @dselman Sorry for late reply... seems that messages are getting delayed... Yes this worked .. Thanks a lot.
mahoney1 (Wed, 12 Jul 2017 10:38:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CkM82zGAo9FtAZ5z7) @baoyangc composer deploys to the peers relating to the Fabric runtime defined in your connection profile, in whatever Orgs those peers were defined for Fabric (eg, using Organisations in configtxgen in Fabric).
mahoney1 (Wed, 12 Jul 2017 10:48:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LbYYSsY7G49sfiMqb) @baoyangc have you configured/terminated your cert entry correctly? See example here with descriptions of each field (its a grpcs example using Bluemix in this case) https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
richnash (Wed, 12 Jul 2017 10:51:26 GMT):
Has joined the channel.
levinkwong (Wed, 12 Jul 2017 10:53:16 GMT):
Hi guys, I currently using this connection profile:
```
{
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://localhost:7050" }
],
"ca": { "url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"maxSendSize": "-1",
"maxRecvSize": "-1",
"keyValStore": "${HOME}/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}
```
I have specify the `maxSendSize` and `maxRecvSize` because I am saving huge data into the ledger. However, I still receive the following errors :
```
Error: error trying invoke chaincode. Error: Error: Received message larger than max (5868842 vs. 4194304)
```
richnash (Wed, 12 Jul 2017 11:00:59 GMT):
Hi, following the developer guide instructions https://hyperledger.github.io/composer/tutorials/developer-guide.html on a completely new ubuntu vm.. all works great apart from when i generate an angular app the "npm start" generates a bunch of webpack and css-loader errors? ERROR in multi webpack-dev-server/client?http://0.0.0.0:4200 ./src/main.ts
[0] Module not found: Error: Can't resolve 'webpack-dev-server/client?http://0.0.0.0:4200' in '/home/rich/my-network/my-app'
[0] @ multi webpack-dev-server/client?http://0.0.0.0:4200 ./src/main.ts
mahoney1 (Wed, 12 Jul 2017 11:17:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zPErkRGAbnEum3xZL) @richnash hi there thanks for the feedback - strange one on the failure to generate webpacks etc. do you have the output (as a matter of interest) from your `yo hyperledger-composer` and does it say (immediately after) that it 'connected' to your 'my-network' - thanks
coder-ajay (Wed, 12 Jul 2017 11:29:05 GMT):
hi, the enum values appear as string in ng2 UI. Can they be radio button / checkbox instead? E.g. in marbles-network example 'marble size' enum be displayed as radio buttons and 'marble colour' be displayed as checkboxes. Below link shows this to be fixed, but couldn't figure out the syntax to execute it.
\[ https://github.com/hyperledger/composer/issues/1083 ]\
coder-ajay (Wed, 12 Jul 2017 11:29:05 GMT):
hi, the enum values appear as string in ng2 UI. Can they be radio button / checkbox instead? E.g. in marbles-network example 'marble size' enum be displayed as radio buttons and 'marble colour' be displayed as checkboxes. Below link shows this to be fixed, but couldn't figure out the syntax to execute it.
https://github.com/hyperledger/composer/issues/1083
GirijaShankarMishra (Wed, 12 Jul 2017 11:30:22 GMT):
Has joined the channel.
GirijaShankarMishra (Wed, 12 Jul 2017 11:31:46 GMT):
Hi, while executing the below command :-
composer network deploy -a my-network.bna -p hlfv1 -i admin -s adminpw
I am getting the error below :-
TypeError: Channel options must be an object with string keys and integer or string values
Command failed
mahoney1 (Wed, 12 Jul 2017 11:32:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nPg6oZ3EDcXJnrKgi) @levinkwong reading here -> https://github.com/hyperledger/fabric/blob/master/core/comm/config.go and here https://jira.hyperledger.org/browse/FAB-5049 says max gRPC message size in Fabric is 100Mb - will try find out more.
mahoney1 (Wed, 12 Jul 2017 11:37:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9n8Fk7ZzisnuayahJ) @GirijaShankarMishra your -i flag for deploying should be PeerAdmin (authority to deploy) but the Channel options error ordinarily would look like a channel config error. Judging from the network name - are you following the developer tutorial https://hyperledger.github.io/composer/tutorials/developer-guide.html (where a default channel is defined/configured for you) ?
GirijaShankarMishra (Wed, 12 Jul 2017 11:41:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2TMmgs8X5ze7vo8WY) @mahoney1 Yes i am following the developer tutorial. First i tried with PeerAdmin it didn't worked
levinkwong (Wed, 12 Jul 2017 11:47:15 GMT):
@mahoney1 thanks very much🙇🏻
davidkel (Wed, 12 Jul 2017 11:51:28 GMT):
@levinkwong in your connection profile, don't specify maxSendSize or maxRecvSize as strings. Specify them as numbers, eg
```
```
davidkel (Wed, 12 Jul 2017 11:51:28 GMT):
@levinkwong in your connection profile, don't specify maxSendSize or maxRecvSize as strings. Specify them as numbers, eg
```
"maxSendSize": -1,
"maxRecvSize": -1,
```
levinkwong (Wed, 12 Jul 2017 11:52:26 GMT):
@davidkel
levinkwong (Wed, 12 Jul 2017 11:52:47 GMT):
ok I will try that out, I just follow the timeout setting to use string
ecn (Wed, 12 Jul 2017 11:55:25 GMT):
Hello, using fabric-client, how can I get a list of all transactions (even the creation of assets etc...) of the blockchain? bizNetworkConnection.getTransactionRegistry() only returns the transactions that have been call explicitly. I can get the transactions when I create a Participant or an Asset
mahoney1 (Wed, 12 Jul 2017 12:05:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kvKaFgmQ8a37QjCHx) @coder-ajay correct - it was fixed. So you're saying you regenerated the NG2 app using `yo hyperledger-composer` from the updated network/model file?
coder-ajay (Wed, 12 Jul 2017 12:07:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2mPW23dGvddcdzqod) @mahoney1 Yes.
coder-ajay (Wed, 12 Jul 2017 12:07:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q53hFGsZ6YEjnQ3B3) @mahoney1 : Hi.. I have raised a new issue.
https://github.com/hyperledger/composer/issues/1541
mahoney1 (Wed, 12 Jul 2017 12:11:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nWsZzRRN6pagGSaqD) @GirijaShankarMishra can you provide your npm/node/docker - and python versions please? Also what is the host OS + version. Its hard to tell - if Linux did you execute as non-root ? Thanks
mahoney1 (Wed, 12 Jul 2017 12:22:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q53hFGsZ6YEjnQ3B3) @coder-ajay right, suggest to refer back to this issue https://github.com/hyperledger/composer/issues/1083 and reopen or create new - .the salient point is they don't show as 'enums' in Swagger / explorer in your sample marbles network. Give details of your environment when you submit.
GirijaShankarMishra (Wed, 12 Jul 2017 12:23:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zJo476jiY2ApuKLau) @mahoney1
Docker version 17.05.0-ce, build 89658be
Node version 6.9.1
Npm version 3.10.8
Python 2.7.12
Ubuntu 16.04 LTS, Memory 3.71Gb
GirijaShankarMishra (Wed, 12 Jul 2017 12:24:36 GMT):
@mahoney1 Yes I am executing as non root user
GirijaShankarMishra (Wed, 12 Jul 2017 12:24:36 GMT):
@mahoney1
In Connection profile channel specified was composerchannel.
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
544e6c6f9459 hyperledger/fabric-peer:x86_64-1.0.0-rc1 "peer node start -..." About a minute ago Up About a minute 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
bf5bd488ad22 hyperledger/fabric-ca:x86_64-1.0.0-rc1 "sh -c 'fabric-ca-..." About a minute ago Up About a minute 0.0.0.0:7054->7054/tcp ca.org1.example.com
70ed252bfb77 hyperledger/fabric-orderer:x86_64-1.0.0-rc1 "orderer" About a minute ago Up About a minute 0.0.0.0:7050->7050/tcp orderer.example.com
f9efef9f8425 hyperledger/fabric-couchdb:x86_64-1.0.0-rc1 "tini -- /docker-e..." About a minute ago Up About a minute 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
fc76cb19c89b dev-peer0.org1.example.com-org-acme-biznet-0.9.1 "chaincode -peer.a..." 2 hours ago Exited (0) 6 minutes ago dev-peer0.org1.example.com-org-acme-biznet-0.9.1
mahoney1 (Wed, 12 Jul 2017 12:29:57 GMT):
mychannel
mahoney1 (Wed, 12 Jul 2017 12:33:40 GMT):
can you send the output of `docker ps -a` - when you ran `startFabric.sh` - did you see messages about the peer joining the [default] channel mychannel ? Also normally we recommend a min of 4Gb mem realistically but you're not far off that.
Joseph (Wed, 12 Jul 2017 12:41:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=h7HQTCpQp3fQnJr6A) @DennisM330 We had the same problem and it is solved here https://stackoverflow.com/questions/45016176/unexpected-output-with-node-red-contrib-composer-nodes-in-composer-v0-9-x
GirijaShankarMishra (Wed, 12 Jul 2017 12:46:42 GMT):
@mahoney1
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
544e6c6f9459 hyperledger/fabric-peer:x86_64-1.0.0-rc1 "peer node start -..." About a minute ago Up About a minute 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
bf5bd488ad22 hyperledger/fabric-ca:x86_64-1.0.0-rc1 "sh -c 'fabric-ca-..." About a minute ago Up About a minute 0.0.0.0:7054->7054/tcp ca.org1.example.com
70ed252bfb77 hyperledger/fabric-orderer:x86_64-1.0.0-rc1 "orderer" About a minute ago Up About a minute 0.0.0.0:7050->7050/tcp orderer.example.com
f9efef9f8425 hyperledger/fabric-couchdb:x86_64-1.0.0-rc1 "tini -- /docker-e..." About a minute ago Up About a minute 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
fc76cb19c89b dev-peer0.org1.example.com-org-acme-biznet-0.9.1 "chaincode -peer.a..." 2 hours ago Exited (0) 6 minutes ago dev-peer0.org1.example.com-org-acme-biznet-0.9.1
GirijaShankarMishra (Wed, 12 Jul 2017 13:10:58 GMT):
@mahoney1 I was going through the message history, I had found similar issue was raised on 6 July 2017, it is also not resolved yet.
mahoney1 (Wed, 12 Jul 2017 13:13:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=77F9Nie9eYfXMXNMB) @GirijaShankarMishra ok pls raise a Stack Overflow question - after all it looks like you deployed org-acme-biznet sample network in your docker ps above - include the output from above and the last messages from the startFabric,.sh startup script pls and thanks.
JennFoley (Wed, 12 Jul 2017 13:24:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nnfg4eLpSaq2GhNmb) @dselman I understand that part (from the connection.json). What I don't understand is how NodeRed knows how to get to my Composer if it's on another server. Which it is in this case. NodeRed is running on a laptop and Composer is on a z server. Can you not use these nodes in that case?
kkauffma (Wed, 12 Jul 2017 13:32:19 GMT):
Has joined the channel.
caroline-church (Wed, 12 Jul 2017 13:43:34 GMT):
Hi @JennFoley The name of the connection profile that you use on your node must be one which is on the machine that you are running the node red nodes from so in your case your laptop. In that connection profile the urls that you specify for the location of the peers etc this would point to the server
JennFoley (Wed, 12 Jul 2017 13:46:00 GMT):
Hi @caroline-church. Thanks! Does that mean I would:
1) Copy my connection.json to the server and modify it to not say localhost but instead the remote server IP
OR
2) Have to install Composer local to NodeRed
JennFoley (Wed, 12 Jul 2017 13:46:00 GMT):
Hi @caroline-church Thanks! Does that mean I would:
1) Copy my connection.json to the server and modify it to not say localhost but instead the remote server IP
OR
2) Have to install Composer local to NodeRed
caroline-church (Wed, 12 Jul 2017 13:50:36 GMT):
@JennFoley neither, so when you install the composer node red nodes that depends on composer so will pull in the required npm packages.
caroline-church (Wed, 12 Jul 2017 13:50:59 GMT):
oh sorry just reread what you wrote, you need option 1 i think
caroline-church (Wed, 12 Jul 2017 13:50:59 GMT):
@JennFoley option 1
JennFoley (Wed, 12 Jul 2017 13:51:38 GMT):
Okay, thanks @caroline-church
tallharish (Wed, 12 Jul 2017 14:03:18 GMT):
Hi, Composer community, we are implementing business use cases using blockchain, and we find composer convenient for our needs. However, we are implementing some new privacy techniques, for which we are poking at the chaincode level. We are doing it fine by directly writing our own chaincode without using fabric-composer and deploying on the default 4 peer configuration of hlfv1. For more complex business use cases, we thought of leveraging the composer to generate the chaincode and datamodel, and then poke our stuff on the chaincode. When I do `composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString`, I am not able to figure out how the chaincode is deployed, where the code is, and whether it too abstract or readable enough. Thank You.
tallharish (Wed, 12 Jul 2017 14:03:18 GMT):
Hi, Composer community, we are implementing business use cases using blockchain, and we find composer convenient for our needs. However, we are implementing some new privacy techniques, for which we are poking at the chaincode level. Before using composer, we were writing our own chaincode (with the privacy sauce) and deploying on the default 4 peer configuration of hlfv1. For more complex business use cases, we thought of leveraging the composer to generate the chaincode and datamodel, and then poke our stuff on the chaincode. Otherwise, we need to manually write chaincode / docker-compose files for each use-case, and its a pain. When I do `composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString`, I am not able to figure out how the chaincode is deployed, where the code is, and whether it too abstract or readable enough. What approach do you recommend? Thank You.
kletkeman (Wed, 12 Jul 2017 14:57:46 GMT):
Question: If I want to write a generic component that routes messages to the blockchain and if I want to support HLComposer as one of the possible chaincode targets, would I have to deploy an instance of the REST server per BNA? Or would one instance be able to service many BNAs?
kletkeman (Wed, 12 Jul 2017 14:57:46 GMT):
Question: If I want to write a generic component that routes messages to the blockchain and if I want to support HLComposer as one of the possible chaincode targets, would I have to deploy an instance of the REST server per BNA? Or would one instance be able to service many BNAs? @dselman @sstone1
kletkeman (Wed, 12 Jul 2017 14:57:46 GMT):
Question: If I want to write a generic component that routes messages to the blockchain and if I want to support HLComposer as one of the possible chaincode targets, would I have to deploy an instance of the REST server per BNA? Or would one instance be able to service many BNAs? @dselman @sstone1
Note that one aspect of my question has to do with the end to end flow control requirement imposed by Fabric v1 to avoid late failures on key collissions.
kletkeman (Wed, 12 Jul 2017 14:57:46 GMT):
Question: If I want to write a generic component that routes messages to the blockchain and if I want to support HLComposer as one of the possible chaincode targets, would I have to deploy an instance of the REST server per BNA? Or would one instance be able to service many BNAs? @dselman @sstone1
Note that one aspect of my question has to do with the end to end flow control requirement imposed by Fabric v1 to avoid late failures on key collisions.
JonathanTan (Wed, 12 Jul 2017 15:13:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TNohrZTGNvk5fL6xR) maybe @dselman @sstone1 can help , I created an issue https://stackoverflow.com/questions/45061533/can-hyperledger-composer-transactions-support-third-party-javascript-libraries-n
JonathanTan (Wed, 12 Jul 2017 15:13:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TNohrZTGNvk5fL6xR) maybe @dselman @sstone1 can help , I added a question on stackoverflow https://stackoverflow.com/questions/45061533/can-hyperledger-composer-transactions-support-third-party-javascript-libraries-n
ThomasBouquet (Wed, 12 Jul 2017 15:44:32 GMT):
Has joined the channel.
JennFoley (Wed, 12 Jul 2017 15:45:29 GMT):
Message Attachments
JennFoley (Wed, 12 Jul 2017 15:45:31 GMT):
If I have a BNA file developed in Composer Playground v0.9.1 where they write transaction processor functions without "on" before the transaction name, can I deploy it to Composer v0.8.1? I'm getting the following error message when I try
baoyangc (Wed, 12 Jul 2017 15:45:53 GMT):
so the [ ](https://chat.hyperledger.org/channel/composer?msg=p8i5bYqcEXP59NZHn) @mahoney1 [ ](https://chat.hyperledger.org/channel/composer?msg=p8i5bYqcEXP59NZHn)
JennFoley (Wed, 12 Jul 2017 15:45:53 GMT):
Message Attachments
ThomasBouquet (Wed, 12 Jul 2017 15:46:47 GMT):
Hi guys ! I would like to configure the number of peers and organisations for the fabric. How can I do that to fit the composer requirements ? On the demo there is only one peer belonging to one organisation running :/
baoyangc (Wed, 12 Jul 2017 15:47:17 GMT):
@mahoney1 `composer network deploy -i peerAdmin -s secret ....` . the "PeerAdmin" can deploy chaincode to all peers in any org?
JennFoley (Wed, 12 Jul 2017 15:47:44 GMT):
@ThomasBouquet Figuring they allow it, but you'd need a different docker-compose.yml file. Some come with the fabric. Then when you do network deploy, it'll deploy across all of the peers
ThomasBouquet (Wed, 12 Jul 2017 15:50:35 GMT):
@JennFoley I will try to modify the yaml file. Do you know how to connect to the fabric with another peer from another computer ?
JennFoley (Wed, 12 Jul 2017 15:55:45 GMT):
@ThomasBouquet I do not! I know others that have done it but I haven't. Not sure if anyone else here has . . .
JennFoley (Wed, 12 Jul 2017 16:01:49 GMT):
When is the next expected update to Composer?
jeffgarratt (Wed, 12 Jul 2017 16:16:03 GMT):
@ThomasBouquet there is a way to do this using the fabric BDD system
wwendy (Wed, 12 Jul 2017 16:17:04 GMT):
Has joined the channel.
jeffgarratt (Wed, 12 Jul 2017 16:20:47 GMT):
https://jira.hyperledger.org/browse/FAB-3551
ThomasBouquet (Wed, 12 Jul 2017 16:25:36 GMT):
@jeffgarratt Thank you !
ssaddem (Wed, 12 Jul 2017 16:55:51 GMT):
guys no new videos on your youtube channel tutorial how fabric-ca work with peers ? architecture rules schema .....
ssaddem (Wed, 12 Jul 2017 16:56:41 GMT):
now with 1.0 is release
ssaddem (Wed, 12 Jul 2017 16:56:41 GMT):
now with 1.0 is released
DennisM330 (Wed, 12 Jul 2017 17:26:57 GMT):
@Joseph I appear to have the latest as I have the Delete option @caroline-church refers to in the StackOverflow
Joseph (Wed, 12 Jul 2017 17:37:11 GMT):
I see... wierd
DennisM330 (Wed, 12 Jul 2017 17:48:37 GMT):
It appears there are two Node-Red composer packages in NPM which might of led to my confusion: node-red-contrib-composer and node-red-contrib-hyperledger-composer. I have the later installed
DennisM330 (Wed, 12 Jul 2017 17:50:27 GMT):
Appears I do not have the latest installed and actually had both installed
DennisM330 (Wed, 12 Jul 2017 17:50:40 GMT):
Not sure how that happened
DennisM330 (Wed, 12 Jul 2017 18:07:08 GMT):
Are both those packages in NPM legit or is the node-red-contrib-composer the only one that should be used?
JennFoley (Wed, 12 Jul 2017 18:09:00 GMT):
I also am wondering, with NodeRed for Composer, can I send a Form to it or should I send some specific payload?
jdockter (Wed, 12 Jul 2017 18:50:43 GMT):
Do events get stored in any kind of registry?
jmcnevin (Wed, 12 Jul 2017 19:18:09 GMT):
has anyone here successfully used webpack with their business logic definition file?
jeffgarratt (Wed, 12 Jul 2017 19:31:56 GMT):
@jdockter speaking for the fabric, all events are available in the associated transactions on the chain
jeffgarratt (Wed, 12 Jul 2017 19:31:56 GMT):
@jdockter wrt to the fabric, all events are available in the associated transactions on the chain
JennFoley (Wed, 12 Jul 2017 19:43:22 GMT):
anyone got the NodeRed nodes talking to a fabric?
JennFoley (Wed, 12 Jul 2017 19:43:22 GMT):
anyone got the NodeRed nodes talking to a fabric? Basically I'm after if I have to generate a token for it OR if I need to copy my keystore on to that machine.
markparz (Wed, 12 Jul 2017 19:48:11 GMT):
Has joined the channel.
caroline-church (Wed, 12 Jul 2017 19:52:25 GMT):
@DennisM330 you should just use `node-red-contrib-composer`
caroline-church (Wed, 12 Jul 2017 19:53:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3X2bE9n4aup9EYuND) @JennFoley I'm not really sure what you mean
caroline-church (Wed, 12 Jul 2017 19:54:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GZhP96sQghvBQiKyZ) @JennFoley if you use your actual user secret in the node red config then you won't need to do either of those things, you would only need to do either of those options if you expect to already have the certificate
JennFoley (Wed, 12 Jul 2017 19:59:30 GMT):
Hey @caroline-church I setup the NodeRed Hyperledger Composer node, and I exported my connection.json to that machine. Where will NodeRed look for that connection.json. It doesn't seem to actually be looking for my remote server
caroline-church (Wed, 12 Jul 2017 20:01:00 GMT):
the connection.json needs to be `~/.composer-connection-profiles/
JennFoley (Wed, 12 Jul 2017 20:02:10 GMT):
it is.
JennFoley (Wed, 12 Jul 2017 20:04:15 GMT):
I'm getting ```"Error: error trying to ping. Error: error trying to query chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority"```
JennFoley (Wed, 12 Jul 2017 20:04:37 GMT):
It's like it isn't picking up the connection.json
dwakeman (Wed, 12 Jul 2017 20:07:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GZhP96sQghvBQiKyZ) @JennFoley I have done it with node red running locally on my mac, where it could use the connection profile on my machine, but that was before the crypto stuff was enabled. I would think you need to create the connection profile on whatever machine you want to run node red, copy the signer cert and keystore to that machine and run `composer identity import`.
JennFoley (Wed, 12 Jul 2017 20:08:04 GMT):
interesting @dwakeman . I'm willing to try it
Joseph (Wed, 12 Jul 2017 20:13:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yPmxpG75KqsTycctK) @dselman How to write queries where the clause includes a reference to a concept defined in the model file?
Joseph (Wed, 12 Jul 2017 20:15:40 GMT):
For instance: ```query selectREDCommodities {
description: "Select commodities based on quantity"
statement:
SELECT org.acme.trading.Commodity
WHERE ([descriptorconcept].color == 'RED')
}```
Joseph (Wed, 12 Jul 2017 20:16:28 GMT):
Imagine i've define a concept in the cto file for colors and --> referenced it into the asset.
JennFoley (Wed, 12 Jul 2017 20:16:30 GMT):
@caroline-church which NodeRed package should we be using? scroll up is also an acceptable answer
caroline-church (Wed, 12 Jul 2017 20:17:10 GMT):
`node-red-contrib-composer` it should have the delete option on the output node if you have the latest version
Joseph (Wed, 12 Jul 2017 20:28:29 GMT):
Another thing I thought made sense was ```query selectREDCommodities {
description: "Select commodities based on quantity"
statement:
SELECT org.acme.trading.Commodity
WHERE ([descriptorconcept].color == 'RED')
}```
Joseph (Wed, 12 Jul 2017 20:32:18 GMT):
Something else I thought made sense was ```query selectREDCommodities {
description: "Select commodities based on color"
statement:
SELECT org.acme.trading.Descriptors
FROM org.acme.trading.Commodity
WHERE (color == 'RED')
}``` But that gives an error "Can only select assets, participants, and transactions".
sstone1 (Wed, 12 Jul 2017 20:43:37 GMT):
@Joseph this doesn't work at the moment - tomorrows release will allow you to query data within concepts
sstone1 (Wed, 12 Jul 2017 20:43:52 GMT):
```
query selectREDCommodities {
description: "Select commodities based on color"
statement:
SELECT org.acme.trading.Commodity
WHERE (concept.concept.concept.color == 'RED')
}
```
sstone1 (Wed, 12 Jul 2017 20:43:57 GMT):
is the syntax to use though
sstone1 (Wed, 12 Jul 2017 20:44:15 GMT):
@jdockter events will be recorded in the historian component
JennFoley (Wed, 12 Jul 2017 20:44:19 GMT):
Is it possible to run two `composer -rest-server`for two different business network identifiers on the same server?
sstone1 (Wed, 12 Jul 2017 20:44:53 GMT):
@JennFoley yep, just give them different ports to use e.g. `-n biznet1 -P 3000` and `-n biznet2 -P 4000`
JennFoley (Wed, 12 Jul 2017 20:45:10 GMT):
THANK YOU @sstone1 !!
sstone1 (Wed, 12 Jul 2017 20:45:17 GMT):
np :)
jdockter (Wed, 12 Jul 2017 20:46:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KcgK9JrdHhNsqo8uj) @sstone1 thanks
jdockter (Wed, 12 Jul 2017 20:57:13 GMT):
@sstone1 not sure if your git hub milestones/playbacks are reflective of the grand master plan but I see historian apart of playback 7 or will that be later?
sstone1 (Wed, 12 Jul 2017 21:11:16 GMT):
we'll be working on the historian this month
DennisM330 (Wed, 12 Jul 2017 21:32:49 GMT):
For queries, can I do a SELECT that is almost like a JOIN. For example, I have a relationship between a Part asset and a Supplier participant. I want to select all Part Numbers and then JOIN with the Suppliers where Supplier ID = $Param. A part number has a relationship to a Supplier. A supplier has a Supplier ID. I may want to subquery that with Suppliers in the State of New York for example
DennisM330 (Wed, 12 Jul 2017 21:38:09 GMT):
Does the Composer shield you from all the details of working with the SDK such as working with RW Sets and the Ordering Service if you look at the 7 steps of a transaction? If so, are there scenarios when I might need to drop down to the using the SDK?
sstone1 (Wed, 12 Jul 2017 21:41:01 GMT):
@DennisM330 no JOINs yet. we know people want to be able to query over relationships, but this is difficult as CouchDB does not support JOINs.
sstone1 (Wed, 12 Jul 2017 21:41:28 GMT):
and yes, all of the proposal/RW sets/ordering stuff is hidden from you by the Composer APIs
sstone1 (Wed, 12 Jul 2017 21:41:40 GMT):
there shouldn't be any scenarios where you need to use the SDK to build an application
DennisM330 (Wed, 12 Jul 2017 21:47:26 GMT):
@stone1 Thanks you guys are amazing at timely responses in Rocket Chat. I hope you all sleep sometime
JennFoley (Wed, 12 Jul 2017 22:45:25 GMT):
@caroline-church has the `node-red-contrib-composer` been updated for Fabric beta or rc1 (Composer 0.8.1 or later)? Basically we're after if there is a better way to connect the nodes in NodeRed than exporting and importing keys from the fabric system. cc: @dwakeman
JennFoley (Wed, 12 Jul 2017 22:46:42 GMT):
Also, I'm curious in the Compose Playground, if you have multiple bna's deployed that create different business network ID's (intentional because they're different), could you access them from the Composer Playground? Currently, I can only access one but there is nothing in the start up or connection profile that specify which one it should use. I also haven't restarted it since I deployed the newest BNA.
DennisM330 (Wed, 12 Jul 2017 22:59:27 GMT):
@caroline-church Thanks I got my events to log just fine now in Node-Red
chainhead (Thu, 13 Jul 2017 00:18:17 GMT):
Has joined the channel.
camdenT (Thu, 13 Jul 2017 01:48:25 GMT):
Hi all! I've been messing around with Hyperledger Fabric for a couple weeks now, and I just recently started to look into Fabric Composer. From what I understand, Composer is intended to help make Fabric application development easier for developers. Is this true, and are there other benefits to using it? With that in mind, are there any downsides to using Composer versus doing all of the development manually (in terms of flexibility, performance, etc.)? I'm trying to help my team decide which direction to take.
Joseph (Thu, 13 Jul 2017 03:14:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NchYkA7GX3shgDxdz) @camdenT I believe this answers your questions directly https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/
baoyangc (Thu, 13 Jul 2017 03:28:48 GMT):
my connection file is below
```
{
"type": "hlfv1",
"orderers": [
{
"url": "grpcs://47.93.61.219:7050",
"cert":"" //value is content of orderer0.bqj.cn/tls/ca.crt
}
],
"ca": {
"url": "https://47.93.61.219:7054",
"name": "ca.org1.bqj.cn",
"trustedRoots":"",
"verify":true
},
"peers": [
{
"requestURL": "grpcs://peer0.org1.bqj.cn:7051",
"eventURL": "grpcs://peer0.org1.bqj.cn:7053",
"cert":"" //value is content of peer0.org1.bqj.cn's tls ca.crt
},
{
"requestURL":"grpcs://peer1.org1.bqj.cn:7151",
"eventURL":"grpcs://peer1.org1.bqj.cn:7153",
"cert":"" //value is content of peer1.org1.bqj.cn's tls ca.crt
}
],
"keyValStore": "/Users/baoyangc/.composer-credentials",
"channel": "bqjchannel",
"maxSendSize":10,
"maxRecvSize":15,
"mspID": "Org1MSP",
"timeout": "300"
}```
baoyangc (Thu, 13 Jul 2017 03:28:58 GMT):
is this correct?
baoyangc (Thu, 13 Jul 2017 05:58:54 GMT):
`composer network deploy` meet error:```
Error: error trying deploy. Error: error trying instantiate chaincode. Error: Error: SERVICE_UNAVAILABLE```
baoyangc (Thu, 13 Jul 2017 06:21:19 GMT):
i checked my service, all is ok. i don't know why this error
camdenT (Thu, 13 Jul 2017 06:44:40 GMT):
@Joseph Thank you for sharing that article with me, that was very helpful!
tallharish (Thu, 13 Jul 2017 06:44:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eda2t8jegTWATcvpX) @tallharish @dselman @sstone1
mahoney1 (Thu, 13 Jul 2017 07:46:12 GMT):
fyi the Community call will start today at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear your Composer stories and use cases on the call :-) Agenda is here -> https://github.com/hyperledger/composer/wiki/Meeting-13th-July-2017
amaclean (Thu, 13 Jul 2017 08:15:03 GMT):
Has joined the channel.
amaclean (Thu, 13 Jul 2017 08:48:05 GMT):
Hey, I'm trying to develop a composer-client nodejs application. I've been looking at the docs, and I'm unable to get a participant registry with either BusinessNetworkDefinition or BusinessNetworkConnection classes. I kindly ask for a helping hand if anyone could please enlighten me. Thanks!
pancake (Thu, 13 Jul 2017 08:54:45 GMT):
Has joined the channel.
harj91 (Thu, 13 Jul 2017 08:55:38 GMT):
hi, has anyone seen this error message before when trying to run yo hyperledger-composer angular app generator: Error: error trying to ping. Error: Deployed chain-code (0.8.0) is incompatible with client (0.9.1)
pancake (Thu, 13 Jul 2017 08:56:55 GMT):
Fail to use `composer archive create -a dist/my-network.bna --sourceType dir --sourceName .`
pancake (Thu, 13 Jul 2017 08:57:06 GMT):
Message Attachments
pancake (Thu, 13 Jul 2017 08:57:45 GMT):
Composer version is 1.5-dev, could anybody give me some help?
pancake (Thu, 13 Jul 2017 08:58:04 GMT):
Thx a lot!
pancake (Thu, 13 Jul 2017 09:04:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rnmXK23W3FxqqaCvi) @harj91 Hi, it seems that you have experience using composer, could you pls give me some help?
amaclean (Thu, 13 Jul 2017 09:04:42 GMT):
@harj91 Your client composer version is a different version than when the chaincode was deployed. I had a similar problem, revert back to 0.8.0 with "npm install -g composer-cli@0.8.0". It should then work, otherwise you can undeploy your network, update composer followed by re-archiving and re-deploy your network (but you can expect a few errors to fix in your network definition).
amaclean (Thu, 13 Jul 2017 09:07:27 GMT):
@pancake weird error, I'm running 0.9.1 and -a parameter works for me.
viz2702 (Thu, 13 Jul 2017 09:07:34 GMT):
Has joined the channel.
sstone1 (Thu, 13 Jul 2017 09:08:11 GMT):
@pancake there is no Composer 1.5, where did you install Composer from?
sstone1 (Thu, 13 Jul 2017 09:08:27 GMT):
it looks like you have a completely different product installed :)
sstone1 (Thu, 13 Jul 2017 09:12:32 GMT):
@tallharish Composer does *not* generate chaincode. there is a generic chaincode (10% Go, 90% JavaScript) that understands business network definitions. can you talk more about these privacy features that you're adding, and why Composer access control lists do not solve the problem? are these encryption features?
pancake (Thu, 13 Jul 2017 09:13:30 GMT):
Oh, this composer does not mean `php composer` right?:joy:
sstone1 (Thu, 13 Jul 2017 09:13:46 GMT):
no afraid not :joy:
sstone1 (Thu, 13 Jul 2017 09:13:54 GMT):
`npm install -g composer-cli`
amaclean (Thu, 13 Jul 2017 09:13:57 GMT):
:joy:
pancake (Thu, 13 Jul 2017 09:14:37 GMT):
Got it, thank you very much, i have install composer-cli, but the ubuntu can't find compser command...
pancake (Thu, 13 Jul 2017 09:15:36 GMT):
The doc of composer is wonderful, thx a lot to take time to do this.
amaclean (Thu, 13 Jul 2017 09:19:20 GMT):
I've got a problem trying to getParticipantRegistry by following the docs. The error is "networkDefinition.getParticipantRegistry is not a function". Is this expected, or is the code faulty?
amaclean (Thu, 13 Jul 2017 09:19:29 GMT):
```const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
var networkConnection = new BusinessNetworkConnection();
networkConnection.connect('hlfv1', 'academic-network', 'PeerAdmin', 'adminpw')
.then(function (networkDefinition) {
return networkDefinition.getParticipantRegistry('academicnet.Registrar');
})
.then(function (registrarRegistry) {
return registrarRegistry.getAll();
})
.then(function (registryParticipants) {
console.log(registryParticipants);
})
.catch(function (error) {
console.log(error.message);
});```
pancake (Thu, 13 Jul 2017 09:19:58 GMT):
BTW, i can't open the playground online, it was stopped at this page.
pancake (Thu, 13 Jul 2017 09:20:10 GMT):
Message Attachments
mahoney1 (Thu, 13 Jul 2017 09:22:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rnmXK23W3FxqqaCvi) @harj91 Your client composer version is a different version - you should undeploy your network with `composer network undeploy` then with v0.9.1 composer level re-archive your network `composer network archive` and then re-deploy your network (ts possible you may have to fix a few errors in your network definition, test it in Composer playground https://composer-playground.mybluemix.net/)
mahoney1 (Thu, 13 Jul 2017 09:23:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=x2py8ZRa33GinHKNG) @pancake did you try reload? Seems to be cache issue (you should get splash screen on reload)
mahoney1 (Thu, 13 Jul 2017 09:43:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=feX6nyTHXhRWzgeL4) @amaclean some observations - you would normally return NetworkConnection eg. businessNetworkConnection.getParticipantRegistry() not networkDefinition - see 'Write Unit Tests' here for an example -> https://hyperledger.github.io/composer/tutorials/developer-guide.html also 2) is your registry academicnet or academic.net and 3) networkConnection.connect () should not use PeerAdmin - that's for network deploys only - try 'admin' for example.
harj91 (Thu, 13 Jul 2017 10:04:19 GMT):
does anyone know where I could get help on writing a function for transfer of money between accounts that I could use in hyperledger composer playground? I found something like this before but I can't seem to locate it again
amaclean (Thu, 13 Jul 2017 10:04:45 GMT):
@mahoney1 thanks for your help. Running into SecurityContext errors now.
mahoney1 (Thu, 13 Jul 2017 10:05:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qrJ5DMzv9f99TPccj) @baoyangc would have to see your composer network deploy command - possibly an error in comms with the Orderer - can you include a `docker ps -a` - also the docker logs for the chaincode container would be good.
geoms (Thu, 13 Jul 2017 10:11:39 GMT):
Hi,
I am trying to extend the Composer environment to add additional Organisations and Peers.
I could add it and the network is up and running.
When I try to deploy the *.bna file, in the network
composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
I am getting below error.
Error: error trying deploy. Error: error trying install chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")
Command failed
I can see PeerAdmin under fabric-tools/fabric-scripts/hlfv1/composer/creds folder. Which is not matching with my modification. Looks like I need to create a new Enrolment Id & Secret.
How can I create a new Enrolment Id & Secret in Composer environment?
mahoney1 (Thu, 13 Jul 2017 10:17:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NchYkA7GX3shgDxdz) @camdenT hi camden T and welcome - yes "Hyperledger Composer" to give it its correct name is intended to make life easier developing blockchain use cases, whether app development as you say or integrating with existing systems. Its toolset includes a modeling playground for modeling the business network and testing it, with or without a running Fabric in situ. It also includes generators to accelerate developing use cases. Finally, the modeling language and framework enables to you think about developing for longer-term production use cases (eg. applications and integration challenges) and not be sidetracked or derailed in your app dev quest with the complications of understanding network infrastructure or how to engage with a Fabric blockchain itself.
baoyangc (Thu, 13 Jul 2017 10:17:38 GMT):
@mahoney1 thanks for your reply, I'm rebuilding my environment. after that I'll redo it.
caroline-church (Thu, 13 Jul 2017 10:27:42 GMT):
@JennFoley the node red nodes will work with the latest version of composer they depend on the latest version i.e in package.json. I'm not sure if there is a better way the best person to answer would probably be @davidkel
mahoney1 (Thu, 13 Jul 2017 10:37:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=T9eFvgW4PYnrReQQ7) @geoms can you try running (from 'fabric-tools' dir) the script `createComposerProfile.sh` and try again, should re-create the credentials vault/KeyValStore)
mahoney1 (Thu, 13 Jul 2017 10:38:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8ENnxw6wt5wnr8gZM) @mahoney1 your deploy command is correct and you can re-use (and assuming you're in the same dir as the .bna file (assuming you've re-generated it using composer network archive etc etc etc), just FYI.
geoms (Thu, 13 Jul 2017 11:10:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ckew8zSmP9rHbptQi) @mahoney1 Thanks for your suggestion. I tried the same. But network deploy is failing.
geoms (Thu, 13 Jul 2017 11:16:06 GMT):
@mahoney1 Looks like credentials under 'fabric-tools/fabric-scripts/hlfv1/composer/creds' folder is not regenerating as per new setup.
geoms (Thu, 13 Jul 2017 11:16:32 GMT):
Is there any way to regenerate PeerAdmin credentials ?
pancake (Thu, 13 Jul 2017 11:39:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YoZ7idcnwXYsujxTA) @mahoney1 Thanks for your reply, this problem doesn't caused by reload. For china's GFW, i can't visit this website. I use shadowsocks, but still can't visit..
baoyangc (Thu, 13 Jul 2017 11:46:31 GMT):
```Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca0.org1.bqj.cn' does not exist"}]]
Command failed```, what's this mean?
pancake (Thu, 13 Jul 2017 11:54:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uRR7CTjYFbLm39APm) @sstone1 Hi sstone1, i have try `npm install -g composer-cli`, but the command `composer` still can't found:`The program 'composer' is currently not installed. You can install it by typing:sudo apt install composer`, could you pls give me some help when you are in convenient?
pancake (Thu, 13 Jul 2017 12:02:14 GMT):
Found composer when install on other computer, thanks for you help again! @sstone1
baoyangc (Thu, 13 Jul 2017 12:06:21 GMT):
```composer network deploy -a ./bqj.bna -p swarm -i PeerAdmin -s abcd
Deploying business network from archive: ./bqj.bna
Business network definition:
Identifier: banquanjia@0.0.10
Description: The Hello World of Hyperledger Composer samples
⠋ Deploying business network definition. This may take a minute...E0713 20:04:59.480885101 10298 ssl_transport_security.c:611] Could not load any root certificate.
E0713 20:04:59.480910754 10298 ssl_transport_security.c:1348] Cannot load server root certificates.
E0713 20:04:59.480921879 10298 security_connector.c:837] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0713 20:04:59.480927185 10298 secure_channel_create.c:127] Failed to create secure subchannel for secure name 'peer0.org1.bqj.cn:7053'
E0713 20:04:59.480930380 10298 secure_channel_create.c:158] Failed to create subchannel arguments during subchannel creation.
Error: unknown service protos.Events
⠹ Deploying business network definition. This may take a minute...E0713 20:05:10.616947970 10298 ssl_transport_security.c:611] Could not load any root certificate.
E0713 20:05:10.616978561 10298 ssl_transport_security.c:1348] Cannot load server root certificates.
E0713 20:05:10.616989440 10298 security_connector.c:837] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0713 20:05:10.616994719 10298 secure_channel_create.c:127] Failed to create secure subchannel for secure name 'peer1.org1.bqj.cn:7151'
E0713 20:05:10.616997922 10298 secure_channel_create.c:158] Failed to create subchannel arguments during subchannel creation.
⠹ Deploying business network definition. This may take a minute...```
baoyangc (Thu, 13 Jul 2017 12:06:39 GMT):
i don't know how to solve it
mahoney1 (Thu, 13 Jul 2017 12:07:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wfug5mdaLyrzr5L57) @geoms its very strange, as PeerAdmin is pre-enrolled. Can you do a teardown of your docker dev images, and startFabric.sh then createComposerProfile.sh - something is not right here. I would regenerate the archive file to deploy the network once your network is up
mahoney1 (Thu, 13 Jul 2017 12:07:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=P8Bj9cMm6t5Qkg5sr) @baoyangc seems likely to be an issue with your "certificate": definition might not be defined correctly / terminated properly eg. END CERTIFICATE-----\n - see example here -> https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
mahoney1 (Thu, 13 Jul 2017 12:22:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=x2py8ZRa33GinHKNG) @pancake are you using shadowsocks as a secure proxy to get out to Playground?
mahoney1 (Thu, 13 Jul 2017 12:22:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=x2py8ZRa33GinHKNG) @pancake are you using shadowsocks as a secure proxy to get out to Playground? What happens when you try another browser? Is the default locale En (english) - will be interested to know if you get the same result.
geoms (Thu, 13 Jul 2017 12:23:37 GMT):
@mahoney1 I tried deleting the images by stop, teardown fabric and teardown images commands
geoms (Thu, 13 Jul 2017 12:23:58 GMT):
Now Im seeing a different error while network deploy
geoms (Thu, 13 Jul 2017 12:24:04 GMT):
Error: error trying login and get user Context. TypeError: Cannot read property 'identity' of undefined
Command failed
baoyangc (Thu, 13 Jul 2017 12:25:59 GMT):
@mahoney1 thanks. i solved the problem
but ,now i get this error:
```eploying business network from archive: ./bqj.bna
Business network definition:
Identifier: banquanjia@0.0.10
Description: The Hello World of Hyperledger Composer samples
⠋ Deploying business network definition. This may take a minute...Error: unknown service protos.Events
Error: unknown service protos.Events```
geoms (Thu, 13 Jul 2017 12:26:22 GMT):
@mahoney1 Also now I can see the time stamp of PeerAdmin changed to todays date
mahoney1 (Thu, 13 Jul 2017 12:30:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ah3GwQks5jtwoWRxK) @geoms question: First I would run createComposerProfile.sh (if you have not already then 'deploy'. Else, can you provide a composer -v please and a docker ps -a and the full command and output of the subsequent deploy pls and thanks
mahoney1 (Thu, 13 Jul 2017 12:31:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wjhs84TxegvFQoWnz) @baoyangc cool on certs issue - on deploy issue: can you provide a composer -v please and a docker ps -a and the full command and output of the subsequent deploy pls and thanks
geoms (Thu, 13 Jul 2017 12:34:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=b8cnCKbxAdnpB8L2R) @mahoney1 Do you need the result of these commands ?
baoyangc (Thu, 13 Jul 2017 12:34:13 GMT):
``` composer -v
composer-cli v0.9.1
composer-admin v0.9.1
composer-client v0.9.1
composer-common v0.9.1
composer-runtime-hlf v0.9.1
composer-runtime-hlfv1 v0.9.1```
```composer network deploy -a ./bqj.bna -p swarm -i PeerAdmin -s abcd
Deploying business network from archive: ./bqj.bna
Business network definition:
Identifier: banquanjia@0.0.10
Description: The Hello World of Hyperledger Composer samples
⠋ Deploying business network definition. This may take a minute...E0713 20:30:04.740748339 11020 ssl_transport_security.c:611] Could not load any root certificate.
E0713 20:30:04.740777931 11020 ssl_transport_security.c:1348] Cannot load server root certificates.
E0713 20:30:04.740791539 11020 security_connector.c:837] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0713 20:30:04.740797039 11020 secure_channel_create.c:127] Failed to create secure subchannel for secure name 'peer1.org1.bqj.cn:7153'
E0713 20:30:04.740801789 11020 secure_channel_create.c:158] Failed to create subchannel arguments during subchannel creation.
Error: unknown service protos.Events
⠴ Deploying business network definition. This may take a minute...
⠏ Deploying business network definition. This may take a minute...
⠧ Deploying business network definition. This may take a minute...
⠙ Deploying business network definition. This may take a minute...````
baoyangc (Thu, 13 Jul 2017 12:34:39 GMT):
last time log is below
```composer network deploy -a ./bqj.bna -p swarm -i PeerAdmin -s abcd
Deploying business network from archive: ./bqj.bna
Business network definition:
Identifier: banquanjia@0.0.10
Description: The Hello World of Hyperledger Composer samples
⠋ Deploying business network definition. This may take a minute...Error: unknown service protos.Events
Error: unknown service protos.Events
⠙ Deploying business network definition. This may take a minute...
⠼ Deploying business network definition. This may take a minute...
⠏ Deploying business network definition. This may take a minute...
⠸ Deploying business network definition. This may take a minute...
⠦ Deploying business network definition. This may take a minute...
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: REQUEST_TIMEOUT```
geoms (Thu, 13 Jul 2017 12:34:52 GMT):
@mahoney1 composer-cli v0.9.1
composer-admin v0.9.1
composer-client v0.9.1
composer-common v0.9.1
composer-runtime-hlf v0.9.1
composer-runtime-hlfv1 v0.9.1
geoms (Thu, 13 Jul 2017 12:35:18 GMT):
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
88928ac5c17e hyperledger/fabric-peer:x86_64-1.0.0 "peer node start -..." 15 minutes ago Up 15 minutes 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
570e253426d7 hyperledger/fabric-peer:x86_64-1.0.0 "peer node start -..." 15 minutes ago Up 15 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
0bb103e7b190 hyperledger/fabric-peer:x86_64-1.0.0 "peer node start -..." 15 minutes ago Up 15 minutes 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
79e4745fe3ba hyperledger/fabric-peer:x86_64-1.0.0 "peer node start -..." 15 minutes ago Up 15 minutes 0.0.0.0:11051->7051/tcp, 0.0.0.0:11053->7053/tcp peer0.org3.example.com
44422425266d hyperledger/fabric-peer:x86_64-1.0.0 "peer node start -..." 15 minutes ago Up 15 minutes 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
39a505ab9290 hyperledger/fabric-couchdb:x86_64-1.0.0 "tini -- /docker-e..." 15 minutes ago Up 15 minutes 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
7ad639f8df5b hyperledger/fabric-couchdb:x86_64-1.0.0 "tini -- /docker-e..." 15 minutes ago Up 15 minutes 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
8a3e872f8a22 hyperledger/fabric-couchdb:x86_64-1.0.0 "tini -- /docker-e..." 15 minutes ago Up 15 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
99ec771f13d5 hyperledger/fabric-couchdb:x86_64-1.0.0 "tini -- /docker-e..." 15 minutes ago Up 15 minutes 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
03c90339baa2 hyperledger/fabric-orderer:x86_64-1.0.0 "orderer" 15 minutes ago Up 15 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
08827a891945 hyperledger/fabric-ca:x86_64-1.0.0 "sh -c 'fabric-ca-..." 15 minutes ago Up 15 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
2bca16ace81d hyperledger/fabric-couchdb:x86_64-1.0.0 "tini -- /docker-e..." 15 minutes ago Up 15 minutes 4369/tcp, 9100/tcp, 0.0.0.0:9984->5984/tcp couchdb4
baoyangc (Thu, 13 Jul 2017 12:36:02 GMT):
my fabric is deploy with docker swarm, I 'm sure all the container is ok
geoms (Thu, 13 Jul 2017 12:37:43 GMT):
Message Attachments
geoms (Thu, 13 Jul 2017 12:37:56 GMT):
@mahoney1 for better view
baoyangc (Thu, 13 Jul 2017 12:39:06 GMT):
Message Attachments
baoyangc (Thu, 13 Jul 2017 12:39:07 GMT):
Message Attachments
baoyangc (Thu, 13 Jul 2017 12:48:45 GMT):
i juste add "\n" at then end of "cert". but the deploy go wrong again
baoyangc (Thu, 13 Jul 2017 12:50:23 GMT):
Message Attachments
DennisM330 (Thu, 13 Jul 2017 12:50:48 GMT):
Can Java be used with hyperledger composer to integrate with the hyperledger fabric I know you could use a Java application to issue HTTP requests to the composer-rest-server but I am guessing you cannot use Java directly and need to use the Composer JavaScript APIs. Asking on behalf of some Java developers who were asking me
DennisM330 (Thu, 13 Jul 2017 12:53:47 GMT):
The other option would be to use the Hyperledger Fabric Java SDK, correct?
baoyangc (Thu, 13 Jul 2017 12:54:53 GMT):
where we can paste log?
mahoney1 (Thu, 13 Jul 2017 12:55:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=iCC8TwiMQEMYwWgTJ) @baoyangc you can attach and I can take a look - send dmsg if you prefer.
baoyangc (Thu, 13 Jul 2017 12:56:01 GMT):
Message Attachments
baoyangc (Thu, 13 Jul 2017 12:56:08 GMT):
@mahoney1
baoyangc (Thu, 13 Jul 2017 12:56:08 GMT):
I will leave for metro
pancake (Thu, 13 Jul 2017 13:01:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uDdSKspiDc7X5st3d) @mahoney1 Thanks! i would try it later, for it seems need to rebbot
geoms (Thu, 13 Jul 2017 13:04:30 GMT):
@mahoney1 I tried to *import Composer Identity* following https://hyperledger.github.io/composer/reference/composer.identity.import.html
geoms (Thu, 13 Jul 2017 13:04:49 GMT):
import was successful for the PeerAdmin
geoms (Thu, 13 Jul 2017 13:05:06 GMT):
then again try to deploy
baoyangc (Thu, 13 Jul 2017 13:07:29 GMT):
I will leave for metro.
geoms (Thu, 13 Jul 2017 13:07:38 GMT):
But still the identity issue persists
geoms (Thu, 13 Jul 2017 13:14:09 GMT):
Error: error trying deploy. Error: Failed to deserialize creator identity, err MSP Org1MSP is unknown
Command failed
mahoney1 (Thu, 13 Jul 2017 13:18:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aATd3Xg7jYeicFntb) @baoyangc from first glance, you have no continuation \ in your certificate after RV ? - otherwise it looks fine - see previous example
mahoney1 (Thu, 13 Jul 2017 13:18:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aATd3Xg7jYeicFntb) @baoyangc from first glance, you have no continuation \ in your certificate after RV ? - otherwise it looks fine - see previous example. The complaint is about the root certificate.
theathibm (Thu, 13 Jul 2017 13:22:43 GMT):
Has anyone tried to use a debugger to interactive debug transaction processor functions? I'd like to set some break points and inspect the input payload and logic inside the running transaction processor functions.
theathibm (Thu, 13 Jul 2017 13:22:43 GMT):
Has anyone tried to use a debugger to interactively debug transaction processor functions? I'd like to set some break points and inspect the input payload and logic inside the running transaction processor functions.
baoyangc (Thu, 13 Jul 2017 13:31:22 GMT):
@mahoney1 what is RV
mahoney1 (Thu, 13 Jul 2017 13:32:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MaB3LLgzoyzpei269) @geoms hi there thanks for the docker ps -a - so you're running with composer v0.9.1 and you need to *x86_64-1.0.0-rc1* Hyperledger Fabric v1.0 RC1.for v0.9.1 - and you are using older Fabric images x86_64-1.0.0 that syncs with an earlier release of composer - so 1) pull down the new fabric-dev-scripts (see here for info https://hyperledger.github.io/composer/installing/development-tools.html ) 2) perform a teardown.sh 3) remove your old docker *images* 4) downloadFabric,sh (from within fabric-tools of your new scripts 5) startFabric.sh 6) createComposerProfile.sh (for the new env) - your network archive bna should be already 'good' to try deploying with PeerAdmin after.
mahoney1 (Thu, 13 Jul 2017 13:38:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=z8QWbZmR6Lbgv6TTJ) @baoyangc in your certificate - it looks like a newline after 'RV' in the cert string - not sure if it is causing an issue for valid cert.
baoyangc (Thu, 13 Jul 2017 13:38:22 GMT):
the cert should be the file content of peers tls ca.crt
baoyangc (Thu, 13 Jul 2017 13:39:16 GMT):
wrapline in vscode
baoyangc (Thu, 13 Jul 2017 13:39:32 GMT):
not new line
baoyangc (Thu, 13 Jul 2017 13:41:05 GMT):
whatis the correct value of cert
baoyangc (Thu, 13 Jul 2017 13:41:14 GMT):
?
geoms (Thu, 13 Jul 2017 13:42:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KvDizFnt6mX59ju55) @mahoney1 Thanks! Very good catch. Let me try and pos you the update.
mahoney1 (Thu, 13 Jul 2017 14:00:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2ccefkuE7AvkAvxKm) @baoyangc if its all on oneline with the (\n delimiters embedded as you have them presently) then that is a valid certificate like shown here https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service - and the cert path is shown as relative, then I'm not sure why the certificate is error-ing as 'invalid' in this case
mahoney1 (Thu, 13 Jul 2017 14:00:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2ccefkuE7AvkAvxKm) @baoyangc if its all on oneline with the (\n delimiters embedded as you have them presently) then that is a valid certificate like shown here including BEGIN CERTIFICATE / END CERTIFICATE both delimited .. https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service - and the cert path is shown as relative, then I'm not sure why the certificate is error-ing as 'invalid' in this case
amaclean (Thu, 13 Jul 2017 14:00:38 GMT):
I'm getting a "SecurityException: A valid SecurityContext must be specified." using composer-client on nodejs when trying to getParticipantRegistry. Anybody have an idea?
ThomasBouquet (Thu, 13 Jul 2017 14:05:21 GMT):
Hi ! Does someone know how to set up the number of peers and organisations for the fabric to fit the composer requirements ?
mahoney1 (Thu, 13 Jul 2017 14:11:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2ZnkfdZeHWpEnRkHW) @amaclean [ ](https://chat.hyperledger.org/channel/composer?msg=2ZnkfdZeHWpEnRkHW) @amaclean hi SecurityContext should be provided when you login (connect) in your code - see example here -> https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/lib/landRegistry.js did you provide a participant id and password for example?
mahoney1 (Thu, 13 Jul 2017 14:14:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SsT33uYtimMznnbWf) @ThomasBouquet you can look at a 4 peer, multi-org (3 members 1 Orderer and two peer Orgs) example here -> http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html
ThomasBouquet (Thu, 13 Jul 2017 14:16:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ystqLTJjwWyDy7LgX) @mahoney1 Thank you, and then can I run the composer easily on top of it ? How can I do the connection between the fabric and the composer ?
theathibm (Thu, 13 Jul 2017 14:18:25 GMT):
addAll timeout
theathibm (Thu, 13 Jul 2017 14:18:32 GMT):
Whoops....ignore
geoms (Thu, 13 Jul 2017 14:19:10 GMT):
Message Attachments
geoms (Thu, 13 Jul 2017 14:19:18 GMT):
@mahoney1 I try to pull the latest Composer
geoms (Thu, 13 Jul 2017 14:19:37 GMT):
Looks like old version is getting pulled
geoms (Thu, 13 Jul 2017 14:19:59 GMT):
I am not finding x86_64-1.0.0-rc1
mahoney1 (Thu, 13 Jul 2017 14:20:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XFsPRQrADops3r9Fk) @ThomasBouquet yes. Composer is a layer above Fabric, the blockchain infrastructure. Composer connects to running Fabric(s) using a Connection Profile - its that simple -> https://hyperledger.github.io/composer/introduction/key-concepts.html - sample definition further down the page here -> https://hyperledger.github.io/composer/reference/connectionprofile.html
geoms (Thu, 13 Jul 2017 14:24:56 GMT):
@mahoney1 Ignore my message earlier about Composer Pull
baoyangc (Thu, 13 Jul 2017 14:25:07 GMT):
@,a
baoyangc (Thu, 13 Jul 2017 14:25:17 GMT):
@mahoney1 thanks
mahoney1 (Thu, 13 Jul 2017 14:29:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=k9hcemWmqjk5aeXa8) @geoms sure you mean docker pull - I've just realised that today's build is pulling x86_64-1.0.0 is `docker pull hyperledger/fabric-peer:x86_64-1.0.0` FYI
geoms (Thu, 13 Jul 2017 14:29:46 GMT):
@mahoney1 Yes :)
geoms (Thu, 13 Jul 2017 14:29:54 GMT):
I saw in the downloadFabric.sh file
geoms (Thu, 13 Jul 2017 14:30:01 GMT):
its pulling older version
geoms (Thu, 13 Jul 2017 14:30:08 GMT):
# Pull and tag the latest Hyperledger Fabric base image.
docker pull hyperledger/fabric-peer:x86_64-1.0.0
docker pull hyperledger/fabric-ca:x86_64-1.0.0
docker pull hyperledger/fabric-ccenv:x86_64-1.0.0
docker pull hyperledger/fabric-orderer:x86_64-1.0.0
docker pull hyperledger/fabric-couchdb:x86_64-1.0.0
geoms (Thu, 13 Jul 2017 14:30:21 GMT):
Will you release new script ?
mahoney1 (Thu, 13 Jul 2017 14:43:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FQ2pk3zxY2jpgpeqq) @geoms so we now have release v0.9.2 and it uses the Hyperledger Fabric GA images (suffixed 1.0.0) as you've shown above). Suggest to uninstall and install Composer v0.9.2 (if your composer -v is not 0.9.2 already).
mahoney1 (Thu, 13 Jul 2017 14:43:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FQ2pk3zxY2jpgpeqq) @geoms so we now have release v0.9.2 and it uses the Hyperledger Fabric GA images (suffixed 1.0.0) as you've shown above). Suggest to uninstall and install Composer v0.9.2 (if your composer -v is not 0.9.2 already). (Your fabric scripts pulls these images)
amaclean (Thu, 13 Jul 2017 14:46:46 GMT):
@mahoney1 I provided the user admin and secret adminpw. I'm guessing it has something to do with my authentication or implementation. So the SecurityContext is not an issue when you successfully connected to the deployed network? Maybe it's because I have not explicitly configured any credentials.
kvnlee (Thu, 13 Jul 2017 14:51:49 GMT):
Hi all, I am working on a web app for a business use case network on Hyperledger Fabric. I have my business network deployed and can access it using Composer REST Server. It is running on a Linux on Z image. I have another server for the web app making REST calls to the Composer REST Server, and it works well. I was wondering if there is a way to SSL enable the REST Server, and if so, how can I do it? I will attach a diagram of my setup. Thanks!
kvnlee (Thu, 13 Jul 2017 14:52:04 GMT):
Message Attachments
sstone1 (Thu, 13 Jul 2017 14:58:42 GMT):
@here we've released Hyperledger Composer v0.9.2, including Hyperledger Fabric v1.0, read all about it on GitHub: https://github.com/hyperledger/composer/releases/tag/v0.9.2 🎉
mahoney1 (Thu, 13 Jul 2017 14:59:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=etZgHbRWkfihu8QM9) @amaclean you can see an example here -> https://hyperledger.github.io/composer/applications/node.html it uses connect https://hyperledger.github.io/composer/jsdoc/module-composer-admin.AdminConnection.html#connect__anchor
amaclean (Thu, 13 Jul 2017 15:07:12 GMT):
@mahoney1 Ah the admin user should use the AdminConnection class to connect to the fabric? I had been following those node instructions
mahoney1 (Thu, 13 Jul 2017 15:08:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mjvAPXwsgihvzX33h) @kvnlee you can see Loopback SSL example here https://github.com/strongloop/loopback-example-ssl and documentation here -> https://loopback.io/doc/en/lb2/Preparing-for-deployment.html
mahoney1 (Thu, 13 Jul 2017 15:10:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xjwST9Fddt3NEzKLp) @amaclean business network connection is the context for adding assets etc etc. AdminConnection is for network deploy update etc.
uber.twin (Thu, 13 Jul 2017 15:23:58 GMT):
@sstone1 @mahoney1 hi, I am not sure I understand how the ACL rules are effective at enforcing the access restriction. Isn't it true that each organization has it's own "admin" user which is omnipotent over the whole network?
uber.twin (Thu, 13 Jul 2017 15:23:58 GMT):
@sstone1 @mahoney1 hi, I am not sure I understand how the ACL rules are effective at enforcing the access restriction. Isn't it true that each organization has it's own "admin" user which is omnipotent over the whole network? I guess there could be one entity holding all "admin" users which will create Participants for each organization and than distribute the corresponding identities to org level users?
uber.twin (Thu, 13 Jul 2017 15:23:58 GMT):
@sstone1 @mahoney1 hi, I am not sure I understand how the ACL rules are effective at enforcing the access restriction. Isn't it true that each organization has it's own "admin" user which is omnipotent over the whole network? I guess there could be one entity holding all "admin" users, which will create Participants for each organization and than distribute the corresponding identities to org level users?
uber.twin (Thu, 13 Jul 2017 15:27:27 GMT):
wouldn't it make more sense to have only one "admin" user for the whole consortium?
mahoney1 (Thu, 13 Jul 2017 15:37:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fqrLeQ9Xoypdkauum) @theathibm you can use VSCode for this, along with the embedded runtime - https://code.visualstudio.com/docs/editor/debugging
mahoney1 (Thu, 13 Jul 2017 15:37:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Y6CWfFjB6mC5sH7Cg) @amaclean hiya, ok just looked - so the error you're getting trying to execute - can you post ? you should be able to get a listing looking at your code...
fidiot (Thu, 13 Jul 2017 15:38:12 GMT):
Has joined the channel.
amaclean (Thu, 13 Jul 2017 15:42:22 GMT):
@mahoney1 My network is already deployed and pingable with the credentials I used, I just want to connect to the deployed network using node and access its contents. I have been following that node documentation online. Is it because of incorrect admin credentials?
mahoney1 (Thu, 13 Jul 2017 15:45:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=soFpkMSr8YrAbBk5b) @amaclean hi there - can you post your code please and thanks.
amaclean (Thu, 13 Jul 2017 15:46:55 GMT):
@m,ah
amaclean (Thu, 13 Jul 2017 15:47:13 GMT):
@mahoney1
```'use strict';
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
class AcademicNetwork {
constructor() {
this.networkConnection = new BusinessNetworkConnection();
}
init() {
return this.networkConnection.connect('hlfv1', 'academic-network', 'admin', 'adminpw')
.then(function (result) {
this.networkDefinition = result;
console.log('connected');
})
.catch(function (error) {
throw error;
});
}
getRegistrars() {
return this.networkConnection.getParticipantRegistry('academicnet.Registrar')
.then(function (registrarRegistry) {
return registrarRegistry.getAll();
})
.then(function (registryParticipants) {
console.log(registryParticipants);
})
.catch(function (error) {
throw error;
});
}
}
var network = new AcademicNetwork();
network.init()
network.getRegistrars();```
mahoney1 (Thu, 13 Jul 2017 16:36:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Y6CWfFjB6mC5sH7Cg) @amaclean can you post the SecurityContext error you see - just looking at your code posted...
mahoney1 (Thu, 13 Jul 2017 16:36:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=odn7i574RXurXxSzP) @amaclean posted your reply on your code snippet
mahoney1 (Thu, 13 Jul 2017 16:36:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=odn7i574RXurXxSzP) @amaclean posted a reply on your code snippet
amaclean (Thu, 13 Jul 2017 16:39:16 GMT):
Yeah sorry for the block spam. Thanks for the time. The error occurs on the first line of the getRegistrars function.
```/node_modules/composer-common/lib/util.js:37
throw new SecurityException(Globalize.formatMessage('util-securitycheck-novalidcontext'));
^
SecurityException: A valid SecurityContext must be specified.```
amaclean (Thu, 13 Jul 2017 16:40:32 GMT):
`at Function.securityCheck (/node_modules/composer-common/lib/util.js:37:19)`
JGraft (Thu, 13 Jul 2017 17:14:42 GMT):
Is there a construct for creating assets with auto-generated ids similar to transactions? Where the business network would assign an id to the asset?
davidkel (Thu, 13 Jul 2017 17:18:54 GMT):
@amaclean try
```
var network = new AcademicNetwork();
network.init()
.then(() => {
network.getRegistrars();
});
```
mahoney1 (Thu, 13 Jul 2017 17:21:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zWDoYQKbXe33xFgcc) @uber.twin The idea being that once all those changes go in, when you deploy a business network you will have to define at least one bootstrap participant who is issued or bound to a Blockchain identity (certificate). After deployment, you will have to use a Blockchain identity for a bootstrap participant to interact with the deployed business work. None of the admin users will be allowed in unless their certificates are bound to a participant. System ACLs will let users have full and complete control over which participants in a deployed business network can do what - you can define who can update the business network definition, who can create asset registries, who can issue identities, etc - there are ongoing issues (#722 (system ACLs), issue #1291 (public key signatures), issue #1290 (identity bind), and #670 (bootstrap participants) posted on github listed https://github.com/hyperledger/composer/issues
mahoney1 (Thu, 13 Jul 2017 17:21:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zWDoYQKbXe33xFgcc) @uber.twin So for ACLs, currently Composer disables ACL enforcement when a certificate with a Common Name (CN) with the word 'admin' in it is used to submit transactions to the Blockchain. This behaviour is a hangover from Hyperledger Fabric v0.6, and we are making changes to remove this "feature". This applies to `admin`, `PeerAdmin`, `WebAppAdmin`, etc. The idea being that once all those changes (see issues below) go in, when you deploy a business network you will have to define at least one bootstrap participant who is issued or bound to a Blockchain identity (certificate). After deployment, you will have to use a Blockchain identity for a bootstrap participant to interact with the deployed business work. None of the admin users will be allowed in unless their certificates are bound to a participant. System ACLs will let users have full and complete control over which participants in a deployed business network can do what - you can define who can update the business network definition, who can create asset registries, who can issue identities, etc - there are ongoing issues (#722 (system ACLs), issue #1291 (public key signatures), issue #1290 (identity bind), and #670 (bootstrap participants) posted on github listed https://github.com/hyperledger/composer/issues
arbfay (Thu, 13 Jul 2017 17:24:03 GMT):
Has joined the channel.
Joseph (Thu, 13 Jul 2017 17:43:55 GMT):
```abstract participant Member identified by memberId {
o String memberId
o String email
}
participant Lender extends Member {
}
participant Borrower extends Member {
}``` Question: A lender and a borrower should not be able to have the same memberId, right?
Joseph (Thu, 13 Jul 2017 17:44:58 GMT):
In my tests on playground, I'm able to... Is this expected behavior?
Joseph (Thu, 13 Jul 2017 17:48:00 GMT):
```{
"$class": "com.innovate.iloanate.Lender",
"memberId": "memberId:0000",
"email": ""
}
{
"$class": "com.innovate.iloanate.Borrower",
"memberId": "memberId:0000",
"email": ""
}```
sstone1 (Thu, 13 Jul 2017 18:05:53 GMT):
they can have the same memberId as they live in different registries
sstone1 (Thu, 13 Jul 2017 18:05:57 GMT):
IDs are unique per registry
sstone1 (Thu, 13 Jul 2017 18:05:59 GMT):
rather than per type
sstone1 (Thu, 13 Jul 2017 18:09:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=46zTPt9izCouotF6D) @JGraft you should generate the ID client side (using UUIDs for example) and pass that into the Composer APIs. the only safe, deterministic way to "generate" an ID on the Blockchain side in a Composer transaction processor function is to use the transaction ID.
guruprasath (Thu, 13 Jul 2017 18:28:40 GMT):
Has joined the channel.
DennisM330 (Thu, 13 Jul 2017 18:40:09 GMT):
I am trying Node-Red with Hyperledger Composer 0.9.2 and Hyperledger Fabric 1.0 ga Get an error on Listener using the Composer nodes: [hyperledger-composer-in:Listen for Blockchain Events] Error: error trying to ping. Error: Deployed chain-code (0.9.2) is incompatible with client (0.9.1)
DennisM330 (Thu, 13 Jul 2017 18:41:23 GMT):
Is there an update for Node-Red Composer nodes? or do I just do an npm update in the .node-red directory?
sstone1 (Thu, 13 Jul 2017 18:44:57 GMT):
@DennisM330 just checking what you need to do
sstone1 (Thu, 13 Jul 2017 18:45:55 GMT):
@DennisM330 you may just need to uninstall them
sstone1 (Thu, 13 Jul 2017 18:45:59 GMT):
and then install them again
DennisM330 (Thu, 13 Jul 2017 18:50:58 GMT):
actually I got it to work, pretty simple. Go to .node-red directory and npm uninstall node-red-contrib-composer and npm install node-red-contrib-composer
DennisM330 (Thu, 13 Jul 2017 18:51:46 GMT):
It will uninstall the previous Composer 0.9.1 packages and reinstall with the Composer 0.9.2 packages
sstone1 (Thu, 13 Jul 2017 18:57:43 GMT):
cool
chrisg (Thu, 13 Jul 2017 19:31:43 GMT):
Has anyone gotten this error with the Fabric Rest `Error: RangeError: valstack limit` ?
chrisg (Thu, 13 Jul 2017 19:32:23 GMT):
Appears in the logs when I make a GET request to the Rest Server?
DennisM330 (Thu, 13 Jul 2017 19:33:02 GMT):
Is there a way to test a query in the composer playground in v0.9.2 or we can just manage the query file and edit it?
Joseph (Thu, 13 Jul 2017 19:38:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pkkvHvSCYCt6FopX4) @sstone1 So question, how about this case:```
participant Borrower identified by memberId {
o String memberId
o String email
}
participant Lender extends Member {
}``` I do see that they are in different registries, so that makes sense that it's allowing duplicates. But how should I design my CTO file in the case where a lender is just a special class of borrower?
Joseph (Thu, 13 Jul 2017 19:38:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pkkvHvSCYCt6FopX4) @sstone1 So question, how about this case:```
participant Borrower identified by memberId {
o String memberId
o String email
}
participant Lender extends Borrower {
}``` I do see that they are in different registries, so that makes sense that it's allowing duplicates. But how should I design my CTO file in the case where a lender is just a special class of borrower?
Joseph (Thu, 13 Jul 2017 19:40:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kPawTyWJaumc7zvXH) @DennisM330 You should see the query.qry file added to list of files on the left that you can manage if you've got one.
Joseph (Thu, 13 Jul 2017 19:40:30 GMT):
Did you upgrade playground?
Joseph (Thu, 13 Jul 2017 19:40:30 GMT):
Did you upgrade / redeploy playground?
garMobTest (Thu, 13 Jul 2017 20:03:14 GMT):
could you please someone explain why I'm getting this error: composer network deploy -a personal-records.bna -p hlfabric -i PeerAdmin -s doesntmatter
Deploying business network from archive: personal-records.bna
Business network definition:
Identifier: personal-records@0.0.2
Description: Personal Medical Records
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
garMobTest (Thu, 13 Jul 2017 20:36:36 GMT):
I got it - composer -v was lesser than 0.8
pancake (Fri, 14 Jul 2017 02:17:50 GMT):
Hi, i am try to use fabric 0.6 in composer v0.9.1, but when i run `downloadFabric.sh`, it only download `hyperledger/fabric-baseimage` without peer, couchDB or other components, so when i run `./startFabric.sh`, an error occur: `Status: Downloaded newer image for hyperledger/fabric-membersrvc:latest
Pulling vp0 (hyperledger/fabric-peer:latest)...
ERROR: manifest for hyperledger/fabric-peer:latest not found
`
pancake (Fri, 14 Jul 2017 02:17:50 GMT):
Hi, i am try to use fabric 0.6 in composer v0.9.1, but when i run `downloadFabric.sh`, it only download `hyperledger/fabric-baseimage` without peer, couchDB or other components, so when i run `./startFabric.sh`, an error occur: `Status: Downloaded newer image for hyperledger/fabric-membersrvc:latest
Pulling vp0 (hyperledger/fabric-peer:latest)...
ERROR: manifest for hyperledger/fabric-peer:latest not found
`
pancake (Fri, 14 Jul 2017 02:17:50 GMT):
Hi, i am try to use fabric 0.6 in composer v0.9.1, but when i run `downloadFabric.sh`, it only download `hyperledger/fabric-baseimage` without peer, couchDB or other components, so when i run `./startFabric.sh`, an error occur:
pancake (Fri, 14 Jul 2017 02:18:45 GMT):
Status: Downloaded newer image for hyperledger/fabric-membersrvc:latest
Pulling vp0 (hyperledger/fabric-peer:latest)...
ERROR: manifest for hyperledger/fabric-peer:latest not found
pancake (Fri, 14 Jul 2017 02:19:36 GMT):
Could you pls give me some help when you are convient?
pancake (Fri, 14 Jul 2017 02:19:36 GMT):
Could you pls give me some help when you are convenient?
seungchan (Fri, 14 Jul 2017 02:30:05 GMT):
Hello, I have a question.
Can I create "byfn.sh" using Hyperledger composer, which is used to start the network in the Fabric? https://github.com/hyperledger/fabric-samples/blob/master/first-network/byfn.sh
I do not know if I should ask Fabric or Composer either...
pancake (Fri, 14 Jul 2017 02:49:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uDdSKspiDc7X5st3d) @mahoney1 Thanks a lot! It works :smile:
camdenT (Fri, 14 Jul 2017 03:02:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gRgPKfskKquXd296m) @mahoney1 didn't see your response until now. Thank you for the explanation! I will definitely give it a try
jdockter (Fri, 14 Jul 2017 03:13:56 GMT):
@sstone1 @dselman installed 0.9.2 a per normal, even uninstall composer-cli and deleted node_modules directory, on unit test I'm getting ```Error: Failed to load connector module "composer-connector-embedded" for connection profile "hlfv1"
``` and regular transactions I'm getting ```Error: error trying to ping. Error: Deployed chain-code (0.9.2) is incompatible with client (0.9.1)```
jdockter (Fri, 14 Jul 2017 03:13:56 GMT):
@sstone1 @dselman installed 0.9.2 a per normal, even uninstall composer-cli and deleted node_modules directory, on unit test I'm getting `Error: Failed to load connector module "composer-connector-embedded" for connection profile "hlfv1"
` and regular transactions I'm getting ```Error: error trying to ping. Error: Deployed chain-code (0.9.2) is incompatible with client (0.9.1)```
jdockter (Fri, 14 Jul 2017 03:13:56 GMT):
@sstone1 @dselman installed 0.9.2 a per normal, even uninstall composer-cli and deleted node_modules directory, on unit test I'm getting ```Error: Failed to load connector module composer-connector-embedded for connection profile hlfv1
``` and regular transactions I'm getting ```Error: error trying to ping. Error: Deployed chain-code (0.9.2) is incompatible with client (0.9.1)```
jdockter (Fri, 14 Jul 2017 03:13:56 GMT):
@sstone1 @dselman installed 0.9.2 a per normal, even uninstall composer-cli and deleted node_modules directory, on unit test I'm getting ```Error: Failed to load connector module composer-connector-embedded for connection profile hlfv1
```
jdockter (Fri, 14 Jul 2017 03:15:38 GMT):
and regular transactions I'm getting ```Error: error trying to ping. Error: Deployed chain-code (0.9.2) is incompatible with client (0.9.1)```
jdockter (Fri, 14 Jul 2017 03:16:12 GMT):
thoughts as to what might be getting cached or not loaded correctly?
jdockter (Fri, 14 Jul 2017 03:16:28 GMT):
```jdockter@ubuntu:~/github/customs/network$ composer -v
composer-cli v0.9.2
composer-admin v0.9.2
composer-client v0.9.2
composer-common v0.9.2
composer-runtime-hlf v0.9.2
composer-runtime-hlfv1 v0.9.2
```
jdockter (Fri, 14 Jul 2017 03:21:46 GMT):
sigh...nm...I think this new npm package-lock.json file was pulling in old versions of code some how ...deleted that file and npm installed again under my network and it's working
gitSrinidhi (Fri, 14 Jul 2017 06:16:42 GMT):
Has joined the channel.
gitSrinidhi (Fri, 14 Jul 2017 06:17:54 GMT):
is there any documentation to go through composer ?
chenxuan (Fri, 14 Jul 2017 06:20:45 GMT):
i strong recommend that deploy a local composer ground is a good method to learn composer
gitSrinidhi (Fri, 14 Jul 2017 06:23:09 GMT):
any documentation ?
seungchan (Fri, 14 Jul 2017 07:03:46 GMT):
i saw "configtx.yaml" in this tutorial http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#generate-network-artifacts. it is difference with Business Network Definition of "Composer"?
seungchan (Fri, 14 Jul 2017 07:03:46 GMT):
i saw "crypto-config.yaml" in this tutorial http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#generate-network-artifacts. it is difference with Business Network Definition of "Composer"?
ThomasBouquet (Fri, 14 Jul 2017 07:40:13 GMT):
Hi ! Does someone know how can I define "Connection Profiles" for multiple peers/organisations ? Another question, what is TLS ?
baoyangc (Fri, 14 Jul 2017 08:11:30 GMT):
hqh
baoyangc (Fri, 14 Jul 2017 08:11:35 GMT):
haha
baoyangc (Fri, 14 Jul 2017 08:11:59 GMT):
please read this https://hyperledger.github.io/composer/reference/connectionprofile.html
baoyangc (Fri, 14 Jul 2017 08:12:03 GMT):
@ThomasBouquet
coder-ajay (Fri, 14 Jul 2017 08:14:13 GMT):
Hi, in the vehicle-lifestyle-network, i couldn't see any .cto file where assets, participants or business network is defined. Is this as expected?
coder-ajay (Fri, 14 Jul 2017 08:17:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5xuqnbXfwydCNKNmP) @gitSrinidhi Below URLs should be helpful-
https://www.youtube.com/watch?v=fdFUsrsv5iw
https://hyperledger.github.io/composer/index.html
gitSrinidhi (Fri, 14 Jul 2017 08:17:54 GMT):
@coder-ajay Thanks mate :)
SanthoshKumarMK (Fri, 14 Jul 2017 08:18:44 GMT):
Has joined the channel.
SanthoshKumarMK (Fri, 14 Jul 2017 08:19:40 GMT):
Hi, I have upgraded the client to 0.9.2, but when i run composer-rest-server i am getting this error - /usr/bin/composer-rest-server: No such file or directory. Can you suggest me?
ThomasBouquet (Fri, 14 Jul 2017 08:20:29 GMT):
@baoyangc I know that but how can I modify it to fit with several organisation ? Second questions, how can I set up the composer credential ?
baoyangc (Fri, 14 Jul 2017 08:21:35 GMT):
`composer identity import` setup the composer credential
baoyangc (Fri, 14 Jul 2017 08:21:57 GMT):
you can create multi connection.json
baoyangc (Fri, 14 Jul 2017 08:22:20 GMT):
```ls ~/.composer-connection-profiles/
MyProfile hlfv1 hlv1 swarm test```
baoyangc (Fri, 14 Jul 2017 08:22:56 GMT):
did you use grpcs in the connection.json?
ThomasBouquet (Fri, 14 Jul 2017 08:25:43 GMT):
No, I don't understand it :/
ThomasBouquet (Fri, 14 Jul 2017 08:26:25 GMT):
on connection profile you have : "mspID": "Org1MSP"
ThomasBouquet (Fri, 14 Jul 2017 08:26:47 GMT):
How do you modify it if you want to fit with multiple organisations ?
baoyangc (Fri, 14 Jul 2017 08:32:34 GMT):
Message Attachments
baoyangc (Fri, 14 Jul 2017 08:32:36 GMT):
create multiple connection.json
baoyangc (Fri, 14 Jul 2017 08:32:47 GMT):
@ThomasBouquet
mahoney1 (Fri, 14 Jul 2017 08:36:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5xuqnbXfwydCNKNmP) @gitSrinidhi yes indeed, https://hyperledger.github.io/composer/
baoyangc (Fri, 14 Jul 2017 08:44:10 GMT):
```# turn off security for the peer
AdminPrincipal: Role.MEMBER```
this appears in the configtx.yaml . why we need set this?
baoyangc (Fri, 14 Jul 2017 08:45:31 GMT):
the scripts in ` fabric-dev-server ` can't create an fabric network with TLS enabled.
mahoney1 (Fri, 14 Jul 2017 08:45:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jxW4sfmNCgwrWqw7Y) @seungchan yes big difference - that doc link refers a YAML for configuring up a Hyperledger Fabric blockchain network. A Composer *Business* Network Definition defines the structure of the resources (using a domain specific language that use concepts that describe real business networks) that will be stored on the ledger, such as assets, participants, or indeed processed as/by transactions. Once you define your BND (to define the domain data model for the business network itself) developers can capture _smart contracts_ as executable transaction processor functions (written in JavaScript). This Composer business network definition gets deployed *onto* the underlying runtime Hyperledger Fabric blockchain network.
ThomasBouquet (Fri, 14 Jul 2017 08:45:49 GMT):
@baoyangc Thank you ! When we connect to the composer is it only with one organisation as we have to specify multiple connection.json files ?
baoyangc (Fri, 14 Jul 2017 08:46:21 GMT):
is there a way to create an farbric network with TLS eabled?
ThomasBouquet (Fri, 14 Jul 2017 08:46:47 GMT):
@baoyangc what is TLS ?
baoyangc (Fri, 14 Jul 2017 08:47:36 GMT):
in the connection.json : "url": "grpcs://47.93.61.219:7050",
baoyangc (Fri, 14 Jul 2017 08:47:40 GMT):
and https
baoyangc (Fri, 14 Jul 2017 08:48:17 GMT):
in the container - `CORE_PEER_TLS_ENABLED=true`
baoyangc (Fri, 14 Jul 2017 08:48:59 GMT):
```"ca": {
"url": "https://47.93.61.219:7054",
"name": "ca.org1.bqj.cn",
"trustedRoots": "",
"verify": true
},
"peers": [
{
"requestURL": "grpcs://peer0.org1.bqj.cn:7051",
"eventURL": "grpcs://peer0.org1.bqj.cn:7053",
"cert": "-----BEGIN CERTIFICATE-----\nMIICOTCCAd+gA.....```
baoyangc (Fri, 14 Jul 2017 08:49:58 GMT):
@ThomasBouquet did you use grpcs?
baoyangc (Fri, 14 Jul 2017 08:51:24 GMT):
hi @mahoney1 , why set `AdminPrincipal: Role.MEMBER` in configtx.yaml?
ThomasBouquet (Fri, 14 Jul 2017 08:51:34 GMT):
@baoyangc Yes but I don't understand the difference, can you explain ?
baoyangc (Fri, 14 Jul 2017 08:52:40 GMT):
did you success deploy bna to the fabric ? I tried several days ,but failed.
mahoney1 (Fri, 14 Jul 2017 08:53:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q5HSk3AZFeXYTsy3s) @baoyangc correct, it sets up a default Fabric (dev) environment (non-TLS)
mahoney1 (Fri, 14 Jul 2017 08:53:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q5HSk3AZFeXYTsy3s) @baoyangc correct, it sets up a default Fabric (dev) environment (non-TLS) - see more in Hyperledger Fabric Samples on configtx.yaml here -> https://media.readthedocs.org/pdf/hyperledger-fabric/latest/hyperledger-fabric.pdf on your Fabric question relating to configtx.yaml -> AdminPrincipal dictates the type of principal used for an organization's Admins policy. Today, only the values of Role.ADMIN and Role.MEMBER are accepted, which, oddly enough, indicates a principal of role type ADMIN and role type MEMBER respectively.
mahoney1 (Fri, 14 Jul 2017 08:53:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q5HSk3AZFeXYTsy3s) @baoyangc correct, it sets up a default Fabric (dev) environment (non-TLS) - see more in Hyperledger Fabric Samples on configtx.yaml here -> https://media.readthedocs.org/pdf/hyperledger-fabric/latest/hyperledger-fabric.pdf on your Fabric question relating to configtx.yaml -> AdminPrincipal dictates the type of principal used for an organization's Admins policy. Today, only the values of Role.ADMIN and Role.MEMBER are accepted, which, oddly enough, indicates a principal of role type ADMIN and role type MEMBER respectively. It is a Fabric configuration parameter (used by Composer to stand-up a Fabric dev environment setup and use of AdminPrincipal is described more here -> http://hyperledger-fabric.readthedocs.io/en/latest/policies.html
baoyangc (Fri, 14 Jul 2017 08:55:31 GMT):
in TLS environment , do we need to set another value for `AdminPrincipal`?
davidkel (Fri, 14 Jul 2017 08:56:54 GMT):
@baoyangc The fabric development server was designed to be a simple entry point to using a real fabric. So we explicitly disabled any need for Admin roles where we could and also explicitly did not use TLS to keep things as simple as possble. Note that the AdminPrincipal setting is not relevant to TLS whatsoever.
ThomasBouquet (Fri, 14 Jul 2017 08:57:55 GMT):
@baoyangc For 3 organisations, i need to create connection1.json, connection2.json and connection3.json ?
davidkel (Fri, 14 Jul 2017 08:57:59 GMT):
@baoyangc If you want to create a more complex fabric runtime setup then I would suggest following the fabric documentation rather than using our development server as a template as it isn't our intention to show how to build fabric setups
baoyangc (Fri, 14 Jul 2017 09:01:46 GMT):
can `composer identity import ` be used in TLS enabled environment?
baoyangc (Fri, 14 Jul 2017 09:01:49 GMT):
@davidkel
davidkel (Fri, 14 Jul 2017 09:03:00 GMT):
@ThomasBouquet The connection profile defines how you from your organisation would interact with a single business network which could have been deployed to a consortium of multiple organisations. This is why a connection profile has an MSPid as it represents your organisations MSPid. You can define peers from other organisations in your connection profile when you want to submit a transaction and you need endorsements from those organisations. The important difference is deployment of a business network. Individual organisations would be expected to deploy the business network to the Peers for which they are allowed to do so (People in one organisation would not be allowed to deploy a business network to other organisation peers) so the likelyhood is that you would have a connection profile for deploy and another for submitting transactions.
davidkel (Fri, 14 Jul 2017 09:03:28 GMT):
@baoyangc yes because it doesn't have anything to do with TLS setup of a fabric
coder-ajay (Fri, 14 Jul 2017 09:12:56 GMT):
Hi, in the vehicle-lifestyle-network, i couldn't see .cto file where assets, participants or business network definition are mentioned. Is this as expected?
ThomasBouquet (Fri, 14 Jul 2017 09:15:32 GMT):
@davidkel Hi, thank you for your answer. As far as I understand for each organisation I have to deployed two connection profiles, one for deploying and one for transaction. What is the difference between the two connection profiles and how can I deploy a business network for deploying a consortium of multiple organisations ?
seungchan (Fri, 14 Jul 2017 09:16:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2YS2LyBTzcXYPs3uP) @mahoney1 thank you.. sorry, It takes time for me to understand.. I have two questions.
1. Does the organization in crypto-config.yaml refer to a set of peers or orderers that belongs to a channel?
2. is The unit of the MSP (Membership Service Provider) an Organization or a Participant?
seungchan (Fri, 14 Jul 2017 09:16:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2YS2LyBTzcXYPs3uP) @mahoney1 thank you.. sorry, It takes time for me to understand.. I have two questions.
1. Does the organization in crypto-config.yaml refer to a set of peers or orderers that belongs to a channel?
2. is The unit of the MSP (Membership Service Provider) an Organization or a Participant?
seungchan (Fri, 14 Jul 2017 09:16:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2YS2LyBTzcXYPs3uP) @mahoney1 thank you.. sorry, It takes time for me to understand.. I have three questions.
1. I have seen that Composer provides transaction definitions and transaction processor functions. What is different from the chain code?
2. Does the organization in crypto-config.yaml refer to a set of peers or orderers that belong to a channel?
3. Is the unit of the MSP an Organization or a Participant?
davidkel (Fri, 14 Jul 2017 09:21:16 GMT):
@ThomasBouquet basically each organisation will need to get the business network onto their peers so each organisation will have a connection profile (containing their peers) to do this. Then each organisation will have their own connection profile to submit transactions to peers across organisations depending on their defined endorsement policy (that connection profile will have the peers to submit transactions to)
ThomasBouquet (Fri, 14 Jul 2017 09:31:14 GMT):
@davidkel Ok and to deploy the business network I only write : user@ubuntu $ composer network deploy -a my-network.bna -p connection1 -i PeerAdmin -s adminpw
ThomasBouquet (Fri, 14 Jul 2017 09:31:23 GMT):
For each organisation ?
elrond (Fri, 14 Jul 2017 09:37:16 GMT):
is it possible in the subscribing to events in the composer e.g "businessNetworkConnection.on('event', (event) => {
// event: { "$class": "org.namespace.BasicEvent", "eventId": "0000-0000-0000-000000#0" }
console.log(event);
});" is the example in the documentation. is it possible to make another peer listen to events from another peer in the network?
say peer on executes a function in which it emits an event called "specialEvent", could for instance peer2 subscribe to listening to the "specialEvent" and based on such, execute or do something else?
davidkel (Fri, 14 Jul 2017 09:38:51 GMT):
@ThomasBouquet It will be something like that, but in the real would a person from 1 organisation won't be deploying to another organisation's environment. If you are trying to do it yourself say in a test environment then it is going to be a lot more complex due to security around who can put chaincode onto a peer and trying to manage this from a single machine. PeerAdmin isn't a userid, it is purely a label referencing cryptographic material you have imported into your keyValStore of your connection profile which has meaning to a single Peer or set of Peers within the same organisation, depending of course on how you have defined you fabric topology. I would highly recommend understanding a fabric topology first by reviewing the hyperledger fabric documentation and getting help on the other fabric channels
ThomasBouquet (Fri, 14 Jul 2017 09:41:32 GMT):
Ok thank you
davidkel (Fri, 14 Jul 2017 09:44:47 GMT):
@ThomasBouquet yw
ThomasBouquet (Fri, 14 Jul 2017 09:45:23 GMT):
@davidkel Do you work for IBM ?
geoms (Fri, 14 Jul 2017 09:47:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JR4zS3TGbmFq3zrKB) @mahoney1 I downloaded new images and able to deploy the chain code successfully. Thanks for that.
mahoney1 (Fri, 14 Jul 2017 09:47:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PtGmShbSYPEkCzojx) @seungchan 1. yes see examples in Hyperledger Fabric repo and script https://github.com/hyperledger/fabric/blob/master/examples/e2e_cli/generateArtifacts.sh for bigger picture -> also getting started sample here -> http://fabric-rtd.readthedocs.io/en/latest/getting_started.html 2. depends on who's provide MSP services but ordinarily looks like Organization -> http://hyperledger-fabric.readthedocs.io/en/latest/msp.html and in particular the 'Best Practices' section further down, will give you the desciption you need - if you need further clarification/explanation on that, you will need to ask on #fabric or #fabric-questions channels.
mahoney1 (Fri, 14 Jul 2017 09:47:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PtGmShbSYPEkCzojx) @seungchan 1. yes see examples in Hyperledger Fabric repo and script https://github.com/hyperledger/fabric/blob/master/examples/e2e_cli/generateArtifacts.sh for bigger picture -> also getting started sample here -> http://fabric-rtd.readthedocs.io/en/latest/getting_started.html 2. depends on who's providing MSP services (in a singleton/multiples context) but ordinarily looks like Organization -> http://hyperledger-fabric.readthedocs.io/en/latest/msp.html and in particular the 'Best Practices' section further down, will give you the desciption you need - if you need further clarification/explanation on that, you will need to ask on #fabric or #fabric-questions channels.
geoms (Fri, 14 Jul 2017 09:49:43 GMT):
@mahoney1 I am facing a new problem. As I mentioned earlier, I was trying to extend the composer environment. Here I created multiple Orgs and created a channel. Later peers from other Orgs trying to join this channel.
geoms (Fri, 14 Jul 2017 09:50:33 GMT):
Here, peer from Org1(comes default in composer sample) able to join the channel
geoms (Fri, 14 Jul 2017 09:51:17 GMT):
But other peers from Org2 & Org3 unable to join the channel.
geoms (Fri, 14 Jul 2017 09:51:24 GMT):
Getting below error
geoms (Fri, 14 Jul 2017 09:51:38 GMT):
Error: genesis block file not found open composerchannel.block: no such file or directory
geoms (Fri, 14 Jul 2017 09:52:14 GMT):
Any Idea, what's going wrong?
elrond (Fri, 14 Jul 2017 10:01:40 GMT):
is it possible whilst the transaction processor function is running to get user input or does it have to be complete automated?
SanthoshKumarMK (Fri, 14 Jul 2017 10:06:59 GMT):
Can someone guide how to write query in playground?
mahoney1 (Fri, 14 Jul 2017 10:07:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EMQXEzyEZd5J5ECqu) @elrond So, when transactions call the `emit` function to emit an event, the events are not emitted immediately, instead, the events are added into the output of the transaction ; the transaction then gets added into a block and committed. When a peer receives a new committed block, it emits all of the events in that block to all connected clients. *All* peers in a defined channel receive all the new blocks - so - all peers get all the events. Hope this helps.
mahoney1 (Fri, 14 Jul 2017 10:09:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=K4QvWYuLufY3nWgZS) @SanthoshKumarMK check the docs page? https://hyperledger.github.io/composer/reference/query-language.html - see sample here ->https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network and in particular the file https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry
mahoney1 (Fri, 14 Jul 2017 10:09:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=K4QvWYuLufY3nWgZS) @SanthoshKumarMK check the docs page? https://hyperledger.github.io/composer/reference/query-language.html - see sample here -> https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network and in particular the file https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry
elrond (Fri, 14 Jul 2017 10:10:54 GMT):
mahoney, that helps a real lot! thanks a bunch for that one. what about the possibility of user input in a tpf? possible, impossible?
SanthoshKumarMK (Fri, 14 Jul 2017 10:17:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pSAsdwveYBE3tHrY7) @mahoney1 Thank you. can we call these query methods from composer-rest-server using REST APIs?
mahoney1 (Fri, 14 Jul 2017 10:18:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=X3Quot7jHCsLWqNfi) @elrond depends if it will make your business logic non-deterministic. if this code is run by multiple endorsing peers running on different machines, then each peer will come up with a different answer etc
mahoney1 (Fri, 14 Jul 2017 10:21:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ubdxobEMioyJMwXsm) @SanthoshKumarMK They will be, we're working on adding that functionality, will have it available soon (and announce this in our release notes / schedule on Rocketchat)
elrond (Fri, 14 Jul 2017 10:22:08 GMT):
@mahoney1 thanks for the high quality input mahoney!
mahoney1 (Fri, 14 Jul 2017 10:23:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SQbG4qkdnvCtGfQZj) @geoms hi, suggest to raise a Stack Overflow issue - we have to see all the data of exactly how you've configured your environment eg configuration metadata etc -, also ensure you post your composer/npm/node versions and any logs that would help with diagnosis, thanks
elrond (Fri, 14 Jul 2017 11:12:30 GMT):
@mahoney1 is there a way to create a listener on the adding of new block by another peer. a onBlockAdded method or such. where the peer can do some work based of the received block
VinodPai (Fri, 14 Jul 2017 11:13:51 GMT):
Has joined the channel.
VinodPai (Fri, 14 Jul 2017 11:17:19 GMT):
New to Composer, I created a model , script and ACL. While executing the transaction in playground, it gives me an error saying, could not find any functions for the transaction.. I have a transaction in model file and also have an entry for same in script file with a logic . Any help please?
mahoney1 (Fri, 14 Jul 2017 11:21:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tkJ7mRNsqJPNDWvpC) @elrond this is a fabric question and event - https://stackoverflow.com/questions/40769741/how-do-i-notify-the-client-application-when-a-chaincode-is-invoked in particular the explanation for types of events - also - example of event block listener here -> https://github.com/hyperledger/fabric/tree/master/examples/events/block-listener - see README for explanation.
mahoney1 (Fri, 14 Jul 2017 11:24:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CByT8pXzteH23CuAz) @VinodPai hi there and welcome to Composer :-) have you tried out the sample business network definition in Playground -> https://composer-playground.mybluemix.net/ - did you deploy your network first?
VinodPai (Fri, 14 Jul 2017 11:28:13 GMT):
I deployed the network @mahoney1
mahoney1 (Fri, 14 Jul 2017 11:41:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4qnBYobJSma2KMPCz) @VinodPai send me your exported network definition pls to take a look - you can dmsg me if you like.
VinodPai (Fri, 14 Jul 2017 11:55:56 GMT):
@mahoney1 - have sent dmsg to you
JGraft (Fri, 14 Jul 2017 12:37:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jjjW9dnbKMRF4YmAw) @sstone1 Thank you!
albertlee (Fri, 14 Jul 2017 13:30:24 GMT):
Has joined the channel.
mahoney1 (Fri, 14 Jul 2017 14:21:32 GMT):
1) on line 21 of your CTO file - that line becomes `asset TravelRecord identified by pnbr {` and 2). in your script file it should be
mahoney1 (Fri, 14 Jul 2017 14:21:32 GMT):
1) on line 21 of your CTO file - that line becomes `asset TravelRecord identified by pnbr {` and 2). in your script file it should be a newline immediately before function on line 23 */
function recordEntries(travelRecord) {
mahoney1 (Fri, 14 Jul 2017 15:49:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qv9YTxZoeoci2rzBN) @VinodPai I resent your .bna network file back to you - you need to look at a number of things including relationships to be defined, but at least you can see from the sample I sent - and you can submit transactions. The Modeling language is here - https://hyperledger.github.io/composer/reference/cto_language.html. A fundamental problem in your Transaction Processor was the transaction identifier being passed. cheers
ekivol (Fri, 14 Jul 2017 16:22:20 GMT):
Has joined the channel.
JGraft (Fri, 14 Jul 2017 16:24:01 GMT):
If you had an Address concept (as demonstrated here https://hyperledger.github.io/composer/reference/cto_language.html), then how would you write the cucumber features to account for a required Address concept on an asset? I see how to do it with the mocha.js examples using factory.newConcept but is it possible to pull this off using cucumber?
```
And I have added the following assets of type org.acme.Address
| addressId | street1 | city | state | zipcode |
| AddressA | 123 West 3rd | Anywhere | Texas | 12345 |
| AddressB | 123 West 3rd | Anywhere | Texas | 12345 |
And I have added the following assets of type org.acme.Load
| loadId | origin | destination |
| 1 | AddressA | AddressB |
| 2 | AddressA | AddressB |
```
I also posted here on Stack Overflow https://stackoverflow.com/questions/45107591/testing-a-concept-type-in-hypledger-composer-with-cucumber
ekivol (Fri, 14 Jul 2017 16:24:08 GMT):
I'm struggling on importing a namespace from one model file to another. For example, I have A, that has a transaction that involves a field from B. I have A.cto and B.cto in the same models directory, but I cannot simply import org.B into org.A. Any advice on how to proceed? I've tried googling around and I haven't found anything, and the documentation only stated that you can import.
ekivol (Fri, 14 Jul 2017 16:24:25 GMT):
I apologize in advance for such an novice question.
ekivol (Fri, 14 Jul 2017 16:45:53 GMT):
Solved.
pnovotny (Fri, 14 Jul 2017 18:16:45 GMT):
Has joined the channel.
sstone1 (Fri, 14 Jul 2017 19:01:22 GMT):
@JGraft you need to inline the data using JSON
sstone1 (Fri, 14 Jul 2017 19:01:29 GMT):
hang on, i have an example somewhere...
sstone1 (Fri, 14 Jul 2017 19:02:08 GMT):
https://github.com/hyperledger/composer/blob/master/packages/composer-cucumber-steps/features/assets.feature#L17
JGraft (Fri, 14 Jul 2017 19:08:30 GMT):
That did it. Thank you
```
And I update the following asset of type org.acme.Load
"""
{"$class": "org.acme.Load", "loadId": "4", "origin": {"$class":"org.acme.Address", "street1": "123 West Nowhere", "city": "Anywhere", "state": "Texas"}}
"""
```
sstone1 (Fri, 14 Jul 2017 19:08:50 GMT):
np
fz (Fri, 14 Jul 2017 20:14:30 GMT):
Has joined the channel.
sstone1 (Fri, 14 Jul 2017 20:14:34 GMT):
@here IBM Blockchain is sponsoring a topcoder challenge this month; the challenge is to use Hyperledger Composer to build a Blockchain business network around government regulations, and there are cash prizes on offer. You can find the details of the challenge here: https://www.topcoder.com/challenge-details/30057924/
dwakeman (Fri, 14 Jul 2017 20:17:01 GMT):
If I want to deploy my network directly from playground local, am I still required to use org.acme.biznet as my namespace?
sstone1 (Fri, 14 Jul 2017 20:18:14 GMT):
afraid so @dwakeman, there's a lot of progress being made on removing the restrictions but it's a large piece of work and it's going to take some time - we are calling this work "ID Cards"
dwakeman (Fri, 14 Jul 2017 20:18:55 GMT):
no worries, thx @sstone1!
sstone1 (Fri, 14 Jul 2017 20:19:59 GMT):
oh - also - we had to change it to `org-acme-biznet` as those Fabric guys banned dots in chaincode IDs for some reason :(
Joseph (Fri, 14 Jul 2017 20:33:06 GMT):
Hey how do I make a participant [ ](https://chat.hyperledger.org/channel/composer?msg=WEGBwEmCmn3DEdywm) Hey is this possible? I'm trying to create a participant that subsets an existing participant's registry so that it rejects duplicate unique IDs?
Joseph (Fri, 14 Jul 2017 20:33:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WEGBwEmCmn3DEdywm) Hey is this possible? I'm trying to create a participant that subsets an existing participant's registry so that it rejects duplicate unique IDs?
fz (Fri, 14 Jul 2017 20:33:19 GMT):
is there an architecture document for fabric composer which captures the design decisions.. ?
fz (Fri, 14 Jul 2017 20:33:28 GMT):
sorry hyperledger composer..
raheelz (Fri, 14 Jul 2017 22:00:01 GMT):
Hi All, I am trying to update multiple assets in a atomic transaction. What would be the best approach? thanks
coder-ajay (Sat, 15 Jul 2017 13:26:58 GMT):
Hi.. getting below error and similar errors when I ` npm start ` vehicle-lifecycle-network...
../vehicle-lifecycle-network/vehicle-app/src/app/org.acme.vehicle.lifecycle.manufacturer.ts (13,38): Cannot find name 'Business'
Earlier, no .cto was present in the directory. I copied all .cto files and updated all .js files from bluemix.
coder-ajay (Sat, 15 Jul 2017 13:26:58 GMT):
Hi.. getting below error and similar errors when I ` npm start ` vehicle-lifecycle-network...
../vehicle-lifecycle-network/vehicle-app/src/app/org.acme.vehicle.lifecycle.manufacturer.ts (13,38): Cannot find name 'Business'
In business.cto file, it highlights error as: _[Composer] IllegalModelException: Namespace is not defined for type composer.base.Person_
Earlier, no .cto was present in the directory. I copied all .cto files and updated all .js files from bluemix. I get similar errors for all .cto files.
trygvevang (Sat, 15 Jul 2017 17:50:57 GMT):
Message Attachments
dstarina (Sat, 15 Jul 2017 21:08:45 GMT):
Hi. Question. Who is "current participant" - function getCurrentParticipant() - when testing transactions from the playground?
dstarina (Sat, 15 Jul 2017 21:09:06 GMT):
Is it possible to simulate different participants?
wael (Sat, 15 Jul 2017 22:25:09 GMT):
Hi, could I use promises with reject and resolve in functions at Transaction Processor Functions ?
jeffgarratt (Sun, 16 Jul 2017 00:39:29 GMT):
@trygvevang the peer is not recognizing the submitter of the install as an admin for the peer's local MSP config.
bart.cant@gmail.com (Sun, 16 Jul 2017 01:55:46 GMT):
Message Attachments
bart.cant@gmail.com (Sun, 16 Jul 2017 01:55:53 GMT):
hi. I installed composer and when I go to the environments is giving me this error message
bart.cant@gmail.com (Sun, 16 Jul 2017 01:57:40 GMT):
This is for a local playground
trygvevang (Sun, 16 Jul 2017 09:38:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5obrQRmrRjWNBpE6A) @jeffgarratt How should I solve it?
davidkel (Sun, 16 Jul 2017 09:58:50 GMT):
@trygvevang remove any previously imported Peer admin certificates from your keyValStore directory defined in your connection profile, then use `composer identity import` to import each peers admin certificate (if they are different) into your keyValStore. Then you can deploy to each peer as required using appropriate identities you have imported that have admin rights on the peers.
baoyangc (Sun, 16 Jul 2017 10:43:01 GMT):
meet error:```events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)
root@k8s2:dockerfile#```
when i run composer network deploy
dstarina (Sun, 16 Jul 2017 21:03:45 GMT):
Hi. What's the latest composer version? I have been installing composer using this command: curl -sSL http://hyperledger.github.io/composer/install-hlfv1.sh | bash
dstarina (Sun, 16 Jul 2017 21:03:57 GMT):
It installs v0.7.2
dstarina (Sun, 16 Jul 2017 21:04:57 GMT):
But according to this I should be using at least v 0.8.0: (https://stackoverflow.com/questions/44595831/could-not-deploy-business-network-to-hyperledger-fabric-beta-using-composer)
davidkel (Sun, 16 Jul 2017 23:10:10 GMT):
@dstarina that install process installs a fabric development server and playground as a docker image, then starts containers of those images up. It doesn't affect composer-cli for example. So if you are running `composer -v` to determine the version then it won't change that
davidkel (Sun, 16 Jul 2017 23:10:10 GMT):
@dstarina that install process installs a fabric development server and playground as docker images, then starts containers of those images up. It doesn't affect composer-cli for example. So if you are running `composer -v` to determine the version then it won't change that
cre8bidio (Mon, 17 Jul 2017 00:45:35 GMT):
Has joined the channel.
dstarina (Mon, 17 Jul 2017 06:44:01 GMT):
@davidkel Is Yeoman generator installed in the process? And REST server?
davidkel (Mon, 17 Jul 2017 06:50:29 GMT):
@dstarina no, it only installs playground and a development fabric environment.
dstarina (Mon, 17 Jul 2017 06:53:28 GMT):
Thank you!
ThomasBouquet (Mon, 17 Jul 2017 07:01:03 GMT):
Does someone know if the current version of composer fits with several organisations of peers ?
benjaminverhaegen (Mon, 17 Jul 2017 07:13:57 GMT):
Hello, i have completed the development tutorial for composer. So i have a running API on the playground. What's the next step? How can the Angular api be able to use other funtions then add, update and delete?
camdenT (Mon, 17 Jul 2017 07:14:35 GMT):
Has anyone in China been able to successfully install Composer without the use of a VPN?
davidkel (Mon, 17 Jul 2017 07:21:19 GMT):
@ThomasBouquet Yes it can, you define your connection profiles to match your fabric topology see
https://hyperledger.github.io/composer/reference/connectionprofile.html for information about connection profiles.
ThomasBouquet (Mon, 17 Jul 2017 07:30:59 GMT):
@davidkel It is compulsory to specify the cert of peers, ca and orderers ? Where can I find these certs ?
ThomasBouquet (Mon, 17 Jul 2017 08:19:25 GMT):
Hey, how can I create the credentials with "composer identity import"
rushikesh90 (Mon, 17 Jul 2017 08:31:28 GMT):
Has joined the channel.
GirijaShankarMishra (Mon, 17 Jul 2017 09:11:09 GMT):
Hey, I have issued an identity to my participant, any one knows whether an enrollment cert and pub/priv key pair is generated and where it gets stored.
panyuleo (Mon, 17 Jul 2017 09:25:47 GMT):
Has joined the channel.
davidkel (Mon, 17 Jul 2017 09:40:09 GMT):
@ThomasBouquet If your fabric uses TLS then you will need to provide the appropriate certificate information. Whoever sets up the fabric will provide those certificates
davidkel (Mon, 17 Jul 2017 09:42:24 GMT):
@ThomasBouquet composer identity import should be used to import peer and channel admin crypto material into your profile keyValStore so that you are able to deploy business networks. Again whoever set up your fabric should provide that information to you. At the moment we can only support deploy where Peer Admins are also channel admins, but we are looking to being able to support environments where this isn't the case in the very near future.
mahoney1 (Mon, 17 Jul 2017 09:48:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SRzSSbneHNEFi4avT) @coder-ajay difficult to know where your app state is at - I wouldn't suggest copying files from Bluemix to fix. I suggest to clone https://github.com/hyperledger/composer-sample-applications then from within vehicle-lifecycle subfolder, follow the exact instructions to install from the README.md cheers
mahoney1 (Mon, 17 Jul 2017 09:50:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=93K3x7ZqqSBL8W9cS) @wael yes you should be able to.
mahoney1 (Mon, 17 Jul 2017 10:01:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qgepS3MRSudkrvprs) @fz https://hyperledger.github.io/composer/introduction/key-concepts.html and https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture should help you with background
mahoney1 (Mon, 17 Jul 2017 10:17:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gkNmsbjQKci8aqXt5) @bart.cant@gmail.com hi Bart are you following these instructions to install ? https://hyperledger.github.io/composer/installing/using-playground-locally.html . If you haven't already, you must follow the process for importing to connect using the peer admin identity.
mahoney1 (Mon, 17 Jul 2017 10:21:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JtsnKNDuPDowpbep7) @dstarina [ ](https://chat.hyperledger.org/channel/composer?msg=JtsnKNDuPDowpbep7) @dstarina latest is v0.9.2. You're installing composer local playground yes (using that command it will get 'the latest' - the Stack Overflow link is from Jun 16, so we've moved on quite a bit (in versions) since then.
mahoney1 (Mon, 17 Jul 2017 10:21:06 GMT):
@dstarina [ ](https://chat.hyperledger.org/channel/composer?msg=JtsnKNDuPDowpbep7) @dstarina latest is v0.9.2. You're installing composer local playground yes (using that command it will get 'the latest' - the Stack Overflow link is from Jun 16, so we've moved on quite a bit (in versions) since then.
mahoney1 (Mon, 17 Jul 2017 10:28:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XsHEFTHWRxpk8KQtM) @baoyangc the issue here might be that the version of the node modules that are being used (ie installed on your local environment) in Composer and running Fabric are at mismatched levels - the current Composer version v0.9.2 really needs to run with the current edition of Fabric and not backlevel beta for example. Also check your levels are in compliance with the 'Before you begin' section here -> https://hyperledger.github.io/composer/unstable/installing/development-tools.html
baoyangc (Mon, 17 Jul 2017 10:30:38 GMT):
@mahoney1 ,thanks
baoyangc (Mon, 17 Jul 2017 10:31:59 GMT):
i got the ssl error again ```DEBUG=* composer network deploy -a bqj.bna -p swarm -i PeerAdmin -s adminpw
Deploying business network from archive: bqj.bna
Business network definition:
Identifier: banquanjia@0.0.10
Description: The Hello World of Hyperledger Composer samples
⠋ Deploying business network definition. This may take a minute...E0717 18:26:49.382168565 24256 ssl_transport_security.c:947] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
Error: The async function encountered an error
Error: Connect Failed
E0717 18:26:49.392178309 24256 ssl_transport_security.c:947] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
Error: The async function encountered an error
Error: Connect Failed
⠏ Deploying business network definition. This may take a minute...E0717 18:27:00.041551001 24256 ssl_transport_security.c:947] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0717 18:27:00.041876033 24256 ssl_transport_security.c:947] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed
Command failed
```
baoyangc (Mon, 17 Jul 2017 10:37:07 GMT):
```"ca": {
"url": "https://ca.org1.sdchoi.com:7054",
"name": "ca.org1.sdchoi.com",
"verify": true
},```
GirijaShankarMishra (Mon, 17 Jul 2017 10:39:07 GMT):
@mahoney1 I have issued an identity to my participant, can you tell me whether an enrollment cert and pub/priv key pair is generated and where it gets stored.
ThomasBouquet (Mon, 17 Jul 2017 11:11:52 GMT):
Hi, I try to create the needed credentials required for the composer but I am facing the following issue : Error : ailed to import identity. Failed to load connector module "composer-connector-undefined"
ThomasBouquet (Mon, 17 Jul 2017 11:18:41 GMT):
*composer-connector-hlfv1
coder-ajay (Mon, 17 Jul 2017 11:51:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=cD8rzC3bEu8QTticc) @mahoney1 Thanks. This works. I am slightly confused since, I cannot find any .cto file. How and where are the assets, participants and transactions defined? The bluemix example has all these files.
baoyangc (Mon, 17 Jul 2017 11:53:10 GMT):
```composer network deploy -a bqj.bna -p swarm -i PeerAdmin -s adminpw
Deploying business network from archive: bqj.bna
Business network definition:
Identifier: banquanjia@0.0.10
Description: The Hello World of Hyperledger Composer samples
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying instantiate chaincode. Error: Error starting container: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer
/opt/go/pkg/tool/linux_amd64/link: running gcc failed: fork/exec /usr/bin/gcc: cannot allocate memory
"
Command failed```
@mahoney1
baoyangc (Mon, 17 Jul 2017 11:53:30 GMT):
maybe this is a bug
mahoney1 (Mon, 17 Jul 2017 12:27:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=R6xAuWWM6gD24HTPJ) @benjaminverhaegen you should add the relevant REST API calls in your Angular app - see this Stack Overflow for more info (links to Angular tutorials) https://stackoverflow.com/questions/45085949/modifying-hyperledger-composer-webapp
mahoney1 (Mon, 17 Jul 2017 12:32:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TZr3GYih6jeisgzp5) @baoyangc it would look like you have a lack of memory or configured insufficient swap space judging by the error "running gcc failed: fork/exec /usr/bin/gcc: cannot allocate memory" - see the issue described here -> https://github.com/golang/go/issues/16082 and here https://github.com/kubernetes/kubernetes/issues/27614
mahoney1 (Mon, 17 Jul 2017 12:38:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HdKjvGWMbncySecSt) @coder-ajay hi there, the .cto file is archived inside the .bna file for vehicle lifecycle - for deploying during install - and that is located here (equivalent directory in your clone) ./vehicle-lifecycle/installers/hlfv1/vehicle-lifecycle-network.bna - it is a zip file so you can extract it in a tmp directory (of your choice) to have a look at the .CTO file. cheers.
DennisM330 (Mon, 17 Jul 2017 12:38:52 GMT):
Since endorsement policies are specified at chaincode instantiation time, would there be any benefits to specifying endorsement policies with Composer command line or playground perhaps in the future?
mahoney1 (Mon, 17 Jul 2017 12:45:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=G3s8K8uwkjxhNPWkE) @ThomasBouquet "Failed to load connector module composer-connector-hlfv1" is usually an install issue. Can you confirm your npm / node / versions , that you did the install as non-root and using a supported OS version. The supported versions are as shown under 'Before you Begin" section @ https://hyperledger.github.io/composer/installing/development-tools.html . Next step would be to run `npm uninstall -g composer-cli` followed by `npm install -g composer-cli` and ensure you have the corresponding latest Hyperledger Fabric v1.0 GA docker images (suggest to remove earlier 'beta' images and containers if they exist to avoid confusion, using docker rmi command for images fyi) - and check that there are no install issues./
RudiDahle (Mon, 17 Jul 2017 12:51:18 GMT):
When I create an asset I need this action to be recorded on my blockchain. To be able to do this should I create an event in my .cto file? I.e.: ```event AssetCreationNotification {
--> Asset asset
}```
Would this work?
RudiDahle (Mon, 17 Jul 2017 12:55:31 GMT):
The asset will be created from the web application that communicates with blockchain.
DennisM330 (Mon, 17 Jul 2017 12:57:19 GMT):
Is there a way to not insert namespaces when an asset is created in front of the value for the attribute? using the apis to create the assets, participants, and relationships
DennisM330 (Mon, 17 Jul 2017 13:01:27 GMT):
@RudiDahle you have to emit the event in your transaction code. The Composer doc has some examples
mahoney1 (Mon, 17 Jul 2017 13:02:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=efm3keb9DMLR7PgGp) @DennisM330 we're open to the idea, albeit it is Fabric metadata currently - and I've noticed it is captured here https://github.com/hyperledger/composer/issues/62 as needing further investigation.
DennisM330 (Mon, 17 Jul 2017 13:09:29 GMT):
@RudiDahle https://hyperledger.github.io/composer/business-network/publishing-events.html
RudiDahle (Mon, 17 Jul 2017 13:13:11 GMT):
@DennisM330 Thank you! Would you say that an event is the best way to go in order to record the creation of an asset, or should it be defined as a part of a transaction?
DennisM330 (Mon, 17 Jul 2017 13:16:06 GMT):
@RudiDahle event is the way to go if you want to trigger some type of external integration as a result of the event
RudiDahle (Mon, 17 Jul 2017 13:17:26 GMT):
Ok, thank you!
benjaminverhaegen (Mon, 17 Jul 2017 13:25:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Dy8xQRXeYf38zYsR8) @mahoney1 thanks allot!!
mahoney1 (Mon, 17 Jul 2017 13:27:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AstWinNMDXzmuu8ZT) @DennisM330 something like this ```
let instance = factory.newResource('org.acme.namespace', 'Asset');
instance.property1 = 'prop';
assetRegistry.update(instance);``` or setting a global NS variable (to refer to in your code or assignments) might help..
ThomasBouquet (Mon, 17 Jul 2017 13:31:10 GMT):
@mahoney1 It was working for the getting started. I am trying tu run multiple peers and organisations on the fabric. The error appears when I import Identity : "composer identity import -p hlfv1_Org1 -u Ord1PeerAdmin ...."
mahoney1 (Mon, 17 Jul 2017 13:42:55 GMT):
KeyValstore
mahoney1 (Mon, 17 Jul 2017 13:45:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=d4zhBepXuwmnyBmwb) @GirijaShankarMishra [ ](https://chat.hyperledger.org/channel/composer?msg=d4zhBepXuwmnyBmwb) @GirijaShankarMishra your Ecert gets stored in your KeyValStore (.composer-credentials) once you've used it (logged in as that identity).
mahoney1 (Mon, 17 Jul 2017 13:45:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=d4zhBepXuwmnyBmwb) @GirijaShankarMishra your Ecert gets stored in your KeyValStore (.composer-credentials) once you've used it (logged in as that identity).
mahoney1 (Mon, 17 Jul 2017 13:55:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xcRPM4Zze3zbSfP8r) @mahoney1 can you provide your composer -v npm -v / node -v versions and also `docker ps -a` and your connection.json profile. Difficult to know without this information but it points to an install issue if that module is not loading
ThomasBouquet (Mon, 17 Jul 2017 14:12:06 GMT):
@mahoney1 Yes sorry, composer v0.9.2 ; npm v5.3.0 ; node 6.11.1 and my connection.json :
ThomasBouquet (Mon, 17 Jul 2017 14:12:08 GMT):
{
"type": "hlfv1",
"orderers": [
"grpc://localhost:7050 "
],
"ca": "http://localhost:7054",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/home/.composer-credentials",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": 300
}
ThomasBouquet (Mon, 17 Jul 2017 14:21:52 GMT):
I have already uninstal and install verything and it is still not working ...
ThomasBouquet (Mon, 17 Jul 2017 14:22:26 GMT):
This connection.json is in a folder hlv1_Org1
mahoney1 (Mon, 17 Jul 2017 14:23:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7L37ykRaRvgv52BzK) @ThomasBouquet I'm afraid your problem lies in the npm version 5.0.3 which is not supported - it can also explain why you did not see this earlier. The module in question was not built and this is due to the NPM version, almost inevitably. I suggest you downgrade your npm version (global install) to 3.10.5, then (as in previous instruction) uninstall composer-cli and install again. You should also need to uninstall any other composer modules that were previously installed here -> https://hyperledger.github.io/composer/installing/development-tools.html and install them again once npm v3.10.5 is in place.
mahoney1 (Mon, 17 Jul 2017 14:23:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7L37ykRaRvgv52BzK) @ThomasBouquet I'm afraid your problem lies in the npm version 5.0.3 which is not supported - it can also explain why you did not see this earlier in your tutorial execution. The module in question was not built and this is due to the NPM version, almost inevitably. I suggest you downgrade your npm version (global install) to 3.10.5, then (as in previous instruction) uninstall composer-cli and install again. You should also need to uninstall any other composer modules that were previously installed here -> https://hyperledger.github.io/composer/installing/development-tools.html and install them again once npm v3.10.5 is in place.
ThomasBouquet (Mon, 17 Jul 2017 14:25:09 GMT):
Ok I will do that :) Thank you a lot from your answer ! great job
coder-ajay (Mon, 17 Jul 2017 15:02:51 GMT):
Hi, regarding Yeoman. I had two transactions for which ` yo hyperledger-composer ` created two folders. Later I deleted one of the transactions, but ` yo hyperledger-composer ` didn't remove it from the app folder and throw error on ' npm run '. I manually deleted the folder for 2nd transaction and it worked well. Is there a better to remove ng2 files for the transaction no longer needed?
coder-ajay (Mon, 17 Jul 2017 15:02:51 GMT):
Hi, regarding Yeoman. I had two transactions for which ` yo hyperledger-composer ` created two folders. Later I deleted one of the transactions, but ` yo hyperledger-composer ` didn't remove it from the app folder and throw error on ` npm run `. I manually deleted the folder for 2nd transaction and it worked well. Is there a better to remove ng2 files for the transaction no longer needed?
mahoney1 (Mon, 17 Jul 2017 15:06:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pNhYdB8gHDdWgicrH) @coder-ajay Yes, it is. `yo hypeledger-composer` is generating a skeleton app rather than delete what was already there (I'm no yeoman expert)
coder-ajay (Mon, 17 Jul 2017 15:08:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mreHKKdMpn6cLoyic) @mahoney1 Ok. Thanks.
coder-ajay (Mon, 17 Jul 2017 15:12:56 GMT):
When the ng2 app is generated, asset variable names are displayed as table headings. E.g. String networkID or enum OPTION1. Is there a way by which the heading be displayed as *Network ID* or *Option 1* ... How to handle the casing and spacing?
coder-ajay (Mon, 17 Jul 2017 15:12:56 GMT):
@mahoney1 : When the ng2 app is generated, asset variable names are displayed as table headings. E.g. String networkID or enum OPTION1. Is there a way by which the heading be displayed as *Network ID* or *Option 1* ... How to handle the casing and spacing?
suganuma (Mon, 17 Jul 2017 15:14:52 GMT):
Has joined the channel.
varnitgoyal (Mon, 17 Jul 2017 15:27:39 GMT):
Has joined the channel.
ansonlau3 (Mon, 17 Jul 2017 15:37:27 GMT):
just want to ask a simple question, for those getParticipantRegistry, assetRegistry records, will it stored in state DB or Ledger ?
mahoney1 (Mon, 17 Jul 2017 15:49:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=cMwrAiFRRxS8sNZq7) @coder-ajay please refer to the tutorial links or check out the {asset} subdirectory your generated NG2 app has created - eg. under /src/app - where an HTML is generated with
mahoney1 (Mon, 17 Jul 2017 15:49:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=cMwrAiFRRxS8sNZq7) @coder-ajay please refer to the tutorial links (I previously sent) or check out the {asset} subdirectory your generated NG2 app has created - eg. under /src/app - where an HTML is generated with
coder-ajay (Mon, 17 Jul 2017 16:00:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nJxjkD9NwFJqXqNbe) @mahoney1 The spacing cannot be surely handled using CSS. I will check the links though. Thanks.
mahoney1 (Mon, 17 Jul 2017 16:03:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Eayy2uNcNrJdY88ua) @ansonlau3 they would come from the world state db
theophoric (Mon, 17 Jul 2017 16:30:02 GMT):
I'm getting back into a project after a few weeks -- getting this error when building the archive file: `IllegalModelException: Transaction should not specify an identifying field`. Docs and vscode extension still specify or expect transactions types to have an "identified by" statement
theophoric (Mon, 17 Jul 2017 16:30:23 GMT):
e.g.
```
transaction IssueTokens identified by transactionID {
o String transactionID // this can be tied to a gateway transaction
o Long amount // # of tokens
}
```
ansonlau3 (Mon, 17 Jul 2017 16:36:47 GMT):
@mahoney1 just confirmation world state db means Ledger ?
davidkel (Mon, 17 Jul 2017 16:39:52 GMT):
@ansonlau3 The world state DB is an upto date view on the current state of the ledger.
ansonlau3 (Mon, 17 Jul 2017 16:40:47 GMT):
@davidkel thanks :pray:
davidkel (Mon, 17 Jul 2017 16:42:53 GMT):
@theophoric what level of the vscode extension do you have ? Could you post where the docs still show transactions using identified by ?
theophoric (Mon, 17 Jul 2017 16:43:08 GMT):
yeah.. 1 sec
theophoric (Mon, 17 Jul 2017 16:43:23 GMT):
** just saw the .9.2 release notes
davidkel (Mon, 17 Jul 2017 16:44:10 GMT):
@theophoric system model changes came in the 0.9.0 release
theophoric (Mon, 17 Jul 2017 16:47:03 GMT):
Ah right.. was referring to `Prevent identifying fields in transaction and event model (#1517) #1544` bug in 0.9.2
theophoric (Mon, 17 Jul 2017 16:47:14 GMT):
vs code extension is at 0.9.1 which appears to be latest
theophoric (Mon, 17 Jul 2017 16:48:21 GMT):
reporting this error when I remove "identified by" bit in transactions: ```
severity: 'Error'
message: 'IllegalModelException: line 267 column 1, to line 272 column 2. Class IssueTokens is not declared as abstract. It must define an identifying field.'
at: '267,1'
source: 'Composer'
```
theophoric (Mon, 17 Jul 2017 16:49:13 GMT):
in docs here: https://hyperledger.github.io/composer/reference/cto_language.html
theophoric (Mon, 17 Jul 2017 16:49:54 GMT):
Message Attachments
theophoric (Mon, 17 Jul 2017 16:50:29 GMT):
States that events and transactions are classes, and all classes have an identifier
theophoric (Mon, 17 Jul 2017 16:50:35 GMT):
followed by this sample code:
theophoric (Mon, 17 Jul 2017 16:50:40 GMT):
```/**
* An abstract transaction type for animal movements
*/
abstract transaction AnimalMovement identified by transactionId {
o String transactionId
--> Animal animal
}```
davidkel (Mon, 17 Jul 2017 16:56:32 GMT):
@theophoric thanks for the doc issues, suggest you raise an issue about the vscode plugin
theophoric (Mon, 17 Jul 2017 17:04:11 GMT):
@davidkel will do. Running into a related issue now when I import the compiled archive file into composer-playground @0.9.2
theophoric (Mon, 17 Jul 2017 17:04:35 GMT):
Message Attachments
theophoric (Mon, 17 Jul 2017 17:06:44 GMT):
do I need to explicitly import `org.hyperlegder.composer.system.Transaction` ?
davidkel (Mon, 17 Jul 2017 17:17:45 GMT):
@theophoric no, you don't need to explicitly import it, not unless something has changed between 0.9.1 and 0.9.2. Do you get the same problem if you try the online playground ?
theophoric (Mon, 17 Jul 2017 17:19:18 GMT):
No -- works fine with online version
davidkel (Mon, 17 Jul 2017 17:22:17 GMT):
@theophoric that's strange, the online version is 0.9.2. Is you local playground a docker container ?
theophoric (Mon, 17 Jul 2017 17:31:58 GMT):
just the npm package
theophoric (Mon, 17 Jul 2017 17:38:23 GMT):
* https://github.com/hyperledger/composer-vscode-plugin/issues/41
davidkel (Mon, 17 Jul 2017 17:53:04 GMT):
@theophoric do you get the same problem if you use a chrome incognito window on your local version of playground ?
anandap2 (Mon, 17 Jul 2017 17:58:31 GMT):
Has joined the channel.
anandap2 (Mon, 17 Jul 2017 18:03:43 GMT):
Hello everybdoy. I've been trying to install the latest version of composer. On the development guide is said to ```curl -O https://raw.githubusercontent.com/hyperledger/composer-sample-applications/master/packages/getting-started/scripts/prereqs-ubuntu.sh``` I'm getting file not found from this command
davidkel (Mon, 17 Jul 2017 18:08:47 GMT):
@anandap2 could you raise an issue please, looks like we need to find a new home for that script and update the docs
dstarina (Mon, 17 Jul 2017 18:11:17 GMT):
Hi. I'm trying to install the newest version of composer. I tried to install the prereqs using the script mentioned here: https://hyperledger.github.io/composer/installing/development-tools.html
dstarina (Mon, 17 Jul 2017 18:11:30 GMT):
But I get a 404 on the script
dstarina (Mon, 17 Jul 2017 18:13:00 GMT):
Am I using the right version of the manual? (please check the link I provided). It is mentioning the latest version of HLF being v1.0-RC
dstarina (Mon, 17 Jul 2017 18:13:39 GMT):
So I'm not sure whether the manual is not updated or I am using the wrong version of the manual :)
dstarina (Mon, 17 Jul 2017 18:15:37 GMT):
Oh sorry. I should read the posts before me :D
dstarina (Mon, 17 Jul 2017 18:17:32 GMT):
Never mind me
dstarina (Mon, 17 Jul 2017 18:17:32 GMT):
I'm having the same problem
dstarina (Mon, 17 Jul 2017 18:18:18 GMT):
@davidkel Is it possible in the mean time you provide a copy of the script here?
dstarina (Mon, 17 Jul 2017 18:19:34 GMT):
Or should this one work? https://github.com/hyperledger-archives/composer-sample-applications-hlfv1/blob/master/packages/getting-started/scripts/prereqs-ubuntu.sh
davidkel (Mon, 17 Jul 2017 18:43:16 GMT):
@dstarina unfortunately that one is too old.
dstarina (Mon, 17 Jul 2017 18:44:20 GMT):
yeah, i see, i'm getting some python version errors when installing composer-cli
davidkel (Mon, 17 Jul 2017 18:45:27 GMT):
@anandap2 @dstarina try this one
curl -O https://raw.githubusercontent.com/hyperledger/composer-sample-applications/c023b4c28216ac288d30449673185eb057a0dcf1/packages/getting-started/scripts/prereqs-ubuntu.sh
dstarina (Mon, 17 Jul 2017 18:45:56 GMT):
@davidkel Thank you!
dstarina (Mon, 17 Jul 2017 18:52:05 GMT):
@davidkel I'm getting an error when trying to install composer-cli: `gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.`
dstarina (Mon, 17 Jul 2017 18:53:13 GMT):
if i set the PYTHON variable to python3 available on Ubuntu 16, I get another error - apparently the python provided with Ubuntu is too new
dstarina (Mon, 17 Jul 2017 18:54:33 GMT):
So, I do: `export PYTHON=/usr/bin/python3`
dstarina (Mon, 17 Jul 2017 18:54:46 GMT):
And the error I get:
dstarina (Mon, 17 Jul 2017 18:54:46 GMT):
And the error I get: `gyp ERR! stack Error: Python executable "/usr/bin/python3" is v3.5.2, which is not supported by gyp.`
davidkel (Mon, 17 Jul 2017 18:55:07 GMT):
@dstarina try `sudo apt-get install -y python-minimal`
dstarina (Mon, 17 Jul 2017 18:55:28 GMT):
oh, ok. Thx.
raheelz (Mon, 17 Jul 2017 19:07:55 GMT):
Hi, I am wondering if the transactions made in Composer are atomic or if they can be made atomic. I am updating multiple assets and would like to have all updated or none in case of error / crash. Code sample of transaction:
```
function ResidentToResident(UpdateValues) {
UpdateValues.coinsInc.value = UpdateValues.coinsInc.value + UpdateValues.coinsValue;
UpdateValues.coinsDec.value = UpdateValues.coinsDec.value - UpdateValues.coinsValue;
UpdateValues.energyInc.value = UpdateValues.energyInc.value + UpdateValues.energyValue;
UpdateValues.energyDec.value = UpdateValues.energyDec.value - UpdateValues.energyValue;
return getAssetRegistry('org.acme.mynetwork.Coins')
.then(function (assetRegistry) {
return assetRegistry.update(UpdateValues.coinsInc);
})
.then(function () {
return getAssetRegistry('org.acme.mynetwork.Energy')
.then(function (assetRegistry) {
return assetRegistry.update(UpdateValues.energyInc);
});
})
.then(function () {
return getAssetRegistry('org.acme.mynetwork.Coins')
.then(function (assetRegistry) {
return assetRegistry.update(UpdateValues.coinsDec);
});
})
.then(function () {
return getAssetRegistry('org.acme.mynetwork.Energy')
.then(function (assetRegistry) {
return assetRegistry.update(UpdateValues.energyDec);
});
});
}
```
raheelz (Mon, 17 Jul 2017 19:09:38 GMT):
Hi, I am wondering if the transactions made in Composer are atomic or if they can be made atomic. I am updating multiple assets and would like to have all updated or none. Code sample of transaction:
```
function ResidentToResident(UpdateValues) {
UpdateValues.coinsInc.value = UpdateValues.coinsInc.value + UpdateValues.coinsValue;
UpdateValues.coinsDec.value = UpdateValues.coinsDec.value - UpdateValues.coinsValue;
return getAssetRegistry('org.acme.mynetwork.Coins')
.then(function (assetRegistry) {
return assetRegistry.update(UpdateValues.coinsInc);
})
.then(function () {
return getAssetRegistry('org.acme.mynetwork.Coins')
.then(function (assetRegistry) {
return assetRegistry.update(UpdateValues.coinsDec);
});
});
}
```
sstone1 (Mon, 17 Jul 2017 19:10:34 GMT):
@raheelz composer transactions are atomic
raheelz (Mon, 17 Jul 2017 19:11:09 GMT):
Thank you @sstone1
gauthampamu (Mon, 17 Jul 2017 19:39:41 GMT):
In the current version do we support rich queries ?
CT123 (Mon, 17 Jul 2017 19:42:49 GMT):
Recently updated / reinstalled local version of composer - composer.sh appears to run correctly however I'm getting the following error upon 'let's blockchain': Error: Failed to save connection profile $default -- any suggestions or tips?
CT123 (Mon, 17 Jul 2017 19:43:36 GMT):
When trying to import an existing .bna file I also get the following error: Failed to connect: TypeError: Invalid argument type to path.join: object
kletkeman (Mon, 17 Jul 2017 19:44:33 GMT):
@raheelz Transactions are atomic by definition. Unless everything goes perfectly, the read/write set that is generated during endorsement never gets committed and everything you did was effectively rolled back.
kletkeman (Mon, 17 Jul 2017 19:44:33 GMT):
@raheelz Transactions are atomic by definition. Unless everything goes perfectly, the read/write set that is generated during endorsement never gets committed and everything you did was effectively rolled back.
Edit: Oops ... I see it was already answered.
theophoric (Mon, 17 Jul 2017 19:47:40 GMT):
@davidkel Yeah -- same issue with local composer-playground on chrome private tab
kletkeman (Mon, 17 Jul 2017 19:55:38 GMT):
@sstone1 I'm using the latest composer on master (just past the release of a few days ago I believe) and I am wondering if this version can still work with a v0.6 fabric, or has the shift to v1 in v0.9.2 locked out compatibility? thx
theophoric (Mon, 17 Jul 2017 19:55:55 GMT):
^^ Docker version checks out
dstarina (Mon, 17 Jul 2017 20:05:40 GMT):
Hi. Another question. I developed a network and successfully deployed it. Generated REST API, all successful. Then generated an Angular app with Yeoman - seemed to work ok, and I started it. If I now try opening http://
dstarina (Mon, 17 Jul 2017 20:08:12 GMT):
The last message I got on "npm start" was `webpack: Compiled successfully.`
dstarina (Mon, 17 Jul 2017 20:08:12 GMT):
This seems to be the same issue: https://github.com/hyperledger/composer/issues/1518 - is there a possible solution for this? I have done all installation on a remote server, so I can't open the application on the same server locally.
CT123 (Mon, 17 Jul 2017 20:11:36 GMT):
Update -- I'm running composer v0.9.2 and running Safari Version 10.1.1 (12603.2.4) -- if I run in 'private browsing mode' I get the errors described above / earlier. However if I launch http://localhost:8080/editor in "regular" or non-private mode, it appears to run correctly, e.g. when composer.sh launches localhost editor in non-private mode it immediately brings up basic-sample-network 0.1.0 and will successfully deploy the car auction network, for example.
CT123 (Mon, 17 Jul 2017 20:12:42 GMT):
Net-net documentation needs to reflect that for users running against Safari they must be in non-private broswing mode for a local composer implementation to run correctly
muratfirat (Mon, 17 Jul 2017 20:13:40 GMT):
I recently updated to the most recent version. When I use the NodeJS modules to issue transactions, I started getting this error:
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: error trying login and get user Context. Error: error trying to enroll user. Error: Failed to generate CSR for enrollmemnt due to error [TypeError: asn1.x509.X500Name.ldapToOneline is not a function]
muratfirat (Mon, 17 Jul 2017 20:19:53 GMT):
However, if I ping the network from the CLI first using the identity, then try submitting a transaction from NodeJS, it works...
sstone1 (Mon, 17 Jul 2017 20:46:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vPXAPWXax7rpMyWTS) @gauthampamu yes we do, but rich queries are not yet available via the REST API.
sstone1 (Mon, 17 Jul 2017 20:47:51 GMT):
@CT123 private browsing mode blocks access to browser local storage which Composer requires to operate. can you raise a GitHub issue for the docs updates please?
sstone1 (Mon, 17 Jul 2017 20:48:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tHMk9oErspahMXu2u) @kletkeman yes, but FYI we are starting to plan for the deprecation and removal of Fabric v0.6 support now that Fabric v1.0 has released.
kletkeman (Mon, 17 Jul 2017 20:49:18 GMT):
@sstone1 Thanks. We don't need the support for all that long, so I think we're covered.
kletkeman (Mon, 17 Jul 2017 20:50:34 GMT):
@sstone1 Regarding rich queries ... is there a sample that shows how to use them today?
sstone1 (Mon, 17 Jul 2017 20:53:16 GMT):
@kletkeman the commodity trading network has some sample queries:
sstone1 (Mon, 17 Jul 2017 20:53:17 GMT):
https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry
kletkeman (Mon, 17 Jul 2017 20:53:24 GMT):
thx
sstone1 (Mon, 17 Jul 2017 20:53:44 GMT):
https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L46 shows how to call a query from a TP function
sstone1 (Mon, 17 Jul 2017 20:53:57 GMT):
note that complex/rich queries are not supported in Fabric v0.6
kletkeman (Mon, 17 Jul 2017 20:54:05 GMT):
oh ... sorry ... I was wondering how to use them if REST does not have support
sstone1 (Mon, 17 Jul 2017 20:54:13 GMT):
ah, you need to use the client APIs
sstone1 (Mon, 17 Jul 2017 20:54:26 GMT):
let me try and find a sample
kletkeman (Mon, 17 Jul 2017 20:54:33 GMT):
k, thx
sstone1 (Mon, 17 Jul 2017 20:54:56 GMT):
some in the tests: https://github.com/hyperledger/composer/blob/master/packages/composer-systests/systest/queries.js#L259
kletkeman (Mon, 17 Jul 2017 20:55:45 GMT):
thx
davidkel (Mon, 17 Jul 2017 21:36:13 GMT):
@theophoric All I can suggest is to uninstall your local playground and re-install to see if it solves the problem, 0.9.2 shouldn't be reporting that error as seen by the online playground
CT123 (Mon, 17 Jul 2017 21:36:14 GMT):
@sstone1 - thanks will add a note to git -- if memory serves believe @davidkel mentioned a while back that running in Chrome (may have been firefox) in 'incognito' mode seemed to work for him so perhaps this is a Safari issue? Will add the notes anyway - thanks
davidkel (Mon, 17 Jul 2017 21:37:37 GMT):
@CT123 it is a safari restriction (and probably firefox as well)
vandan101 (Mon, 17 Jul 2017 22:41:10 GMT):
Has joined the channel.
vandan101 (Mon, 17 Jul 2017 22:41:35 GMT):
Hi,
I'm trying to install the development tools for Hyperledger composer and having 2 issues, following the directions from:
'https://hyperledger.github.io/composer/tutorials/developer-guide.html'
1. curl -O https://raw.githubusercontent.com/hyperledger/composer-sample-applications/master/packages/getting-started/scripts/prereqs-ubuntu.sh
-- does not download the contents of the file, shows 404 not found
2. when executing then following below:
composer archive create -a dist/my-network.bna --sourceType dir --sourceName .
-- it fails saying "[RuntimeException] The "-a" option does not exist."
[6:35]
any suggestions ??
bart.cant@gmail.com (Tue, 18 Jul 2017 01:43:55 GMT):
Message Attachments
bart.cant@gmail.com (Tue, 18 Jul 2017 01:44:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4EZyLALya5YMpL2Pk) @mahoney1 yes . I followed the instructions and also did the import (see above) but I still get the same type of error message
seungchan (Tue, 18 Jul 2017 02:56:46 GMT):
hello, today. i wanna get a prerequisites for development environment. i use ubuntu. but prereqs-ubuntu.sh not execute.. somebody help me..https://hyperledger.github.io/composer/installing/development-tools.html
davidkel (Tue, 18 Jul 2017 06:08:30 GMT):
@vandan101 please see https://github.com/hyperledger/composer/issues/1587 for a temporary solution
davidkel (Tue, 18 Jul 2017 06:09:38 GMT):
@seungchan please see https://github.com/hyperledger/composer/issues/1587 for a temporary solution
davidkel (Tue, 18 Jul 2017 06:14:01 GMT):
@bart.cant@gmail.com you get this message because playground remembers your last identity you were using. Unfortunately the last identity you used isn't PeerAdmin and so doesn't have authority to get the list of instantiated chaincodes. If playground lets you, you need to switch identities to PeerAdmin or you have going to have to clear local storage.
davidkel (Tue, 18 Jul 2017 06:17:32 GMT):
@vandan101 for your second question, it looks you have installed something called 'composer' but it isn't hyperledger composer you have installed.
davidkel (Tue, 18 Jul 2017 06:17:32 GMT):
@vandan101 for your second question, it looks you have installed something called 'composer' but it isn't hyperledger composer you have installed. Suggest you uninstall that composer program by using the appropriate uninstall process for the way you installed it and then install hyperledger composer using `npm install -g composer-cli`
satishbhat12 (Tue, 18 Jul 2017 06:34:42 GMT):
Hello All I working on fabric composer, where i am trying to exchange "status value"between two Participants Trader and Processor using a transaction . I am successfully able generate REST API. All Participants and transaction class get generated but i am not getting value of "transactionId" .What changes i need to add to my transaction function in ".js" file so that i can check,my "transactionId" for that particular transaction.Code snippet for lib/operator.js
trygvevang (Tue, 18 Jul 2017 06:42:04 GMT):
Hi! Is the Rest API generated based on the business logic? So if I define some transaction, would the generated API support rest calls towards that transaction?
trygvevang (Tue, 18 Jul 2017 06:43:03 GMT):
Hi! Is the Rest API generated based on the business logic? So if I define some transaction, would the generated API support rest calls towards that transaction-type?
seungchan (Tue, 18 Jul 2017 07:21:59 GMT):
The installation of hyperledger composer development tool was good yesterday.but today, i wanna install the other computer but it can not be installed. something is "Permission denied" and something is "Just ERR".
seungchan (Tue, 18 Jul 2017 07:22:30 GMT):
Does the installation of hyperledger composer development tool work well now?
baoyangc (Tue, 18 Jul 2017 07:41:30 GMT):
```Deploying business network from archive: bqj.bna
Business network definition:
Identifier: banquanjia@0.0.10
Description: The Hello World of Hyperledger Composer samples
⠋ Deploying business network definition. This may take a minute...Error: unknown service protos.Events
Error: unknown service protos.Events
Error: unknown service protos.Events
Error: unknown service protos.Events
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying instantiate chaincode. Error: The event hub has not been connected to the event source
Command failed```
baoyangc (Tue, 18 Jul 2017 07:42:09 GMT):
is there any parameter can be adapted to solve this problem?
davidkel (Tue, 18 Jul 2017 08:10:25 GMT):
@baoyangc that error implies that the fabric-client node module dependency hasn't installed correctly. Suggest you uninstall composer-cli and re-install it
baoyangc (Tue, 18 Jul 2017 08:11:21 GMT):
but I successfully make it yestoday.
baoyangc (Tue, 18 Jul 2017 08:11:21 GMT):
@mahoney1 , I tried to deploy bna to multi ORG. Only make it in the first Org ,in the second, there is alway error
baoyangc (Tue, 18 Jul 2017 08:11:21 GMT):
@mahoney1 , I tried to deploy bna to multi ORG. Only make it in the first Org ,in the second, there is alway error
davidkel (Tue, 18 Jul 2017 08:25:00 GMT):
@baoyangc something must have changed somewhere in your setup. The only time I have seen this error is if the following line in the fabric-client EventHub.js file hasn't worked.
```
var _events = grpc.load(__dirname + '/protos/peer/events.proto').protos;
```
fabric-client is a dependency for composer-cli which would have been pulled down when you installed the cli
SanthoshKumarMK (Tue, 18 Jul 2017 08:25:18 GMT):
Once we successfully issue an identity for a participant using (POST /system/issueIdentity) what is the API(Composer-rest-server) should be used validate the identity of the participant?
biksen (Tue, 18 Jul 2017 08:41:52 GMT):
Has joined the channel.
biksen (Tue, 18 Jul 2017 08:45:37 GMT):
Hi, I am currently playing with Hyperledger Composer Playground...My first confusion is that, is it mandatory have docker installed in my machine to connect to my already running Hyperledger Fabric 1.0 network?
biksen (Tue, 18 Jul 2017 08:47:07 GMT):
I have installed Hyperledger Composer natively on Windows7 without docker
biksen (Tue, 18 Jul 2017 08:48:02 GMT):
My Fabric 1.0 network running on different machine...Is there any gap of my understanding??
biksen (Tue, 18 Jul 2017 08:49:49 GMT):
I am getting an error while trying to connect to Fanric 1.0 network through Composer Playground using connection profile....
biksen (Tue, 18 Jul 2017 08:50:18 GMT):
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile.....ConnectionProfileManager :getConnectionManager() No yet located the module The specified module could not be found.
mahoney1 (Tue, 18 Jul 2017 09:15:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=d3wTwtP9WWu4RJmxS) @trygvevang yes - see the Trade example here https://hyperledger.github.io/composer/unstable/tutorials/developer-guide.html (REST description further down the page)
baoyangc (Tue, 18 Jul 2017 09:34:14 GMT):
@mahoney1 , I deploy bna with composer to multi ORG
baoyangc (Tue, 18 Jul 2017 09:34:31 GMT):
but only make it in the first ORG.
baoyangc (Tue, 18 Jul 2017 09:35:04 GMT):
in the second org, it alway said that: `DEBU ad4 Exit
2017-07-18 09:29:38.792 UTC [endorser] ProcessProposal -> ERRO ad5 simulateProposal() resulted in chaincode response status 500 for txid: a9f0eaff2d9321b38173401430625fb23a9ffba1eeb546eeefad9c8b1aebb450`
mahoney1 (Tue, 18 Jul 2017 09:35:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oypnRdvebyjY8hbcq) @satishbhat12 example: `function onMyTransaction(myTransaction) {
console.log('transaction id is: ' + myTransaction.getIdentifier(); In this case, the parameter passed is an instance of _`Resource`_ which has the `getIdentifier()` function.
}`
mahoney1 (Tue, 18 Jul 2017 09:35:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oypnRdvebyjY8hbcq) @satishbhat12 example: `function onMyTransaction(myTransaction) {
console.log('transaction id is: ' + myTransaction.getIdentifier();` In this case, the parameter passed is an instance of _`Resource`_ which has the `getIdentifier()` function.
}`
mahoney1 (Tue, 18 Jul 2017 09:35:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oypnRdvebyjY8hbcq) @satishbhat12 example: ```function onMyTransaction(myTransaction) {
console.log('transaction id is: ' + myTransaction.getIdentifier();``` In this case, the parameter passed is an instance of _`Resource`_ which has the `getIdentifier()` function.
}`
mahoney1 (Tue, 18 Jul 2017 09:42:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HBB5iDzX46bEzHd4Q) @seungchan difficult to know without seeing your environment on the new computer: looks like you're trying to write (during an npm install) to a directory your user doesn't have write permission.. also don't know your npm / node / docker / python versions - see also the info about the pre-reqs-ubuntu.sh workaround if you encountered this - see https://github.com/hyperledger/composer/issues/1587 for a temporary solution
seungchan (Tue, 18 Jul 2017 09:46:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ydwWPm5BQ4JKpNtym) @mahoney1 i using the temporary solution.. but i can't explain, because some err is to difficult interpreting..
mahoney1 (Tue, 18 Jul 2017 09:50:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8qq9LYtaNzmrEpTZd) @seungchan please create a Stack Overflow issue, including the exact and full error transcript - including the command(s) you have executed - and also provide the OS version ; npm version, node version ; python version and docker version on your new system.- thank you.
mahoney1 (Tue, 18 Jul 2017 10:06:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MyKdSvyDG5C6wJG7d) @biksen no - your reasoning is fine. It is not mandatory no - docker is used where you have docker containers 'stood up' :-) So your Composer connection profile defined in Playground would connect to a 'remote' Fabric, but the error you are seeing is related to a problem with your environment (in the sense that Composer did not installed properly (so that particular module did not build properly) - can you provide your composer -v output - also npm -v, node -v versions and also `docker ps -a`.. Difficult to know without this information but it points to an install issue if that module is not loading
mahoney1 (Tue, 18 Jul 2017 10:06:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MyKdSvyDG5C6wJG7d) @biksen no - your reasoning is fine. It is not mandatory no - docker is used where you have docker containers 'stood up' :-) So your Composer connection profile defined in Playground would connect to a 'remote' Fabric, but the error you are seeing is related to a problem with your environment (in the sense that Composer did not installed properly (so that particular module did not build properly) - can you provide your composer -v output - also npm -v, node -v versions and also `docker ps -a`.. Difficult to know without this information but it points to an install issue if that module is not loading - oops I see you've got Windows 7 - Composer isn't yet supported on Windows, so it won't work presently. -> https://hyperledger.github.io/composer/installing/development-tools.html
mahoney1 (Tue, 18 Jul 2017 10:34:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kW3J4fN5855i8Q6jz) @baoyangc this is really a Fabric configuration issue - what guide did you use to set up/configure your multi-org Fabric environment? The deploy error you're seeing is a symptom. Can you send a `docker ps -a` please?
baoyangc (Tue, 18 Jul 2017 10:37:30 GMT):
I deploy it with docker swarm
what's your purpose of asked me run `docker ps -a`
baoyangc (Tue, 18 Jul 2017 10:38:10 GMT):
I"m sure all the containers is ok
baoyangc (Tue, 18 Jul 2017 10:38:59 GMT):
@mahoney1
baoyangc (Tue, 18 Jul 2017 10:39:33 GMT):
you can read https://github.com/ChoiSD/hyperledger_on_swarm
davidkel (Tue, 18 Jul 2017 10:39:44 GMT):
@baoyangc As you have created your own topology you need to configure your connection profiles and identities appropriately. The error you have posted above indicates that you don't have authority to deploy to that peer.
baoyangc (Tue, 18 Jul 2017 10:39:46 GMT):
it can help you deploy mulit-org fabric
baoyangc (Tue, 18 Jul 2017 10:40:53 GMT):
Message Attachments
baoyangc (Tue, 18 Jul 2017 10:40:56 GMT):
@davidkel
mahoney1 (Tue, 18 Jul 2017 10:41:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Rrw978gqBAv7YZPBD) @SanthoshKumarMK you can test the Blockchain identity is being used by calling the GET /system/ping operation described here -> https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
baoyangc (Tue, 18 Jul 2017 10:41:24 GMT):
I have multi connection files
baoyangc (Tue, 18 Jul 2017 10:41:43 GMT):
one file only contain the peers in the same org
baoyangc (Tue, 18 Jul 2017 10:42:01 GMT):
and all the orderers in the fabric network
baoyangc (Tue, 18 Jul 2017 10:43:00 GMT):
@davidkel
davidkel (Tue, 18 Jul 2017 10:46:08 GMT):
@baoyangc ok, so when you deploy to your failing peer, what is the error returned by the CLI. The log you posted could indicate that the identity you are using is not authorised to install onto that peer
baoyangc (Tue, 18 Jul 2017 10:47:02 GMT):
I don't use cli. i just run composer network deploy
baoyangc (Tue, 18 Jul 2017 10:47:27 GMT):
`DEBUG=* composer network deploy -a bqj.bna -p org2 -i PeerOrg2Admin -s adminpw `
davidkel (Tue, 18 Jul 2017 10:47:30 GMT):
@baoyangc sorry, that is the cli
davidkel (Tue, 18 Jul 2017 10:47:49 GMT):
what was the Error message from that command ?
baoyangc (Tue, 18 Jul 2017 10:48:07 GMT):
```Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying instantiate chaincode. Error: chaincode error (status: 500, message: chaincode exists banquanjia)```
baoyangc (Tue, 18 Jul 2017 10:48:42 GMT):
```root@swarm1:~# docker ps -a|grep dev
f63b556ace0f dev-peer3.org4.sdchoi.com-banquanjia-0.9.1 "chaincode -peer.a..." 3 hours ago Up 3 hours dev-peer3.org4.sdchoi.com-banquanjia-0.9.1
7b1b855628fa dev-peer1.org4.sdchoi.com-banquanjia-0.9.1 "chaincode -peer.a..." 3 hours ago Up 3 hours dev-peer1.org4.sdchoi.com-banquanjia-0.9.1
root@swarm1:~#```
baoyangc (Tue, 18 Jul 2017 10:48:58 GMT):
i only success deploy on org4
baoyangc (Tue, 18 Jul 2017 10:49:13 GMT):
on org2 ,not success
mahoney1 (Tue, 18 Jul 2017 10:50:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MyKdSvyDG5C6wJG7d) @biksen I updated my response please note
baoyangc (Tue, 18 Jul 2017 10:51:17 GMT):
`composer network deploy` = `peer chaincode install`+`peer chaincode instantiate`?
baoyangc (Tue, 18 Jul 2017 10:51:37 GMT):
is this right
baoyangc (Tue, 18 Jul 2017 10:51:40 GMT):
?
baoyangc (Tue, 18 Jul 2017 10:52:42 GMT):
peers in org1 ,org2,org3 and org4 are all in the same channel
baoyangc (Tue, 18 Jul 2017 10:53:40 GMT):
I execute `composer network deploy ` on org4, and success
baoyangc (Tue, 18 Jul 2017 10:54:02 GMT):
when I execute that on other orgs. It failed
davidkel (Tue, 18 Jul 2017 10:55:57 GMT):
@baoyangc that's correct about deploy, although it should check to see if the chaincode is already instantiated on the channel and not attempt to instantiate again. You can check the file system of peer2 to see if the chaincode has been installed, but if you have got as far as instantiation then deploy assumes it either installed or was installed already. Can you try sending a request to peer2 to see if the chaincode container starts
baoyangc (Tue, 18 Jul 2017 10:57:09 GMT):
yes, in peer2,and peer0, the chaincode is instantiated
baoyangc (Tue, 18 Jul 2017 10:59:18 GMT):
sorry , in peer2, it's not instantiated
baoyangc (Tue, 18 Jul 2017 11:00:52 GMT):
you mean i shoud make an transaction
baoyangc (Tue, 18 Jul 2017 11:01:05 GMT):
i see.
davidkel (Tue, 18 Jul 2017 11:01:31 GMT):
@baoyangc if you send a request specifically to peer2 does it start the chaincode container ? This is a feature of hyperledger fabric in that it only starts the container when required.
baoyangc (Tue, 18 Jul 2017 11:02:28 GMT):
how to make that?
baoyangc (Tue, 18 Jul 2017 11:03:34 GMT):
with Fabric node SDK?
baoyangc (Tue, 18 Jul 2017 11:03:59 GMT):
or to call RestAPI of composer-rest-server?
davidkel (Tue, 18 Jul 2017 11:04:52 GMT):
@baoyangc you could create an asset or run a transaction. The composer command line has ways to do it or you could use composer-rest-server
baoyangc (Tue, 18 Jul 2017 11:04:55 GMT):
I think i shoud instantiate chaincode with peer chaincode instantatied in the `cli` container
davidkel (Tue, 18 Jul 2017 11:05:34 GMT):
@baoyangc You only need to instantiate once.
davidkel (Tue, 18 Jul 2017 11:05:34 GMT):
@baoyangc You only need to instantiate once. You don't have to instantiate on every peer.
baoyangc (Tue, 18 Jul 2017 11:06:14 GMT):
instantiate chaincode for other orgs, not for this one
davidkel (Tue, 18 Jul 2017 11:06:47 GMT):
@baoyangc instantiate is a channel wide transaction. It only needs to be done once for the channel.
baoyangc (Tue, 18 Jul 2017 11:07:08 GMT):
thanks, i got it
coder-ajay (Tue, 18 Jul 2017 11:07:10 GMT):
Message Attachments
coder-ajay (Tue, 18 Jul 2017 11:07:10 GMT):
Message Attachments
baoyangc (Tue, 18 Jul 2017 11:08:10 GMT):
i will try add an participant
baoyangc (Tue, 18 Jul 2017 11:12:15 GMT):
@davidkel ```DEBUG=* composer participant add -p org4 -n 'banquanjia' -i PeerOrg4Admin -s adminpw -d '{"$class":"org.bqj.cn.BanquanjiaUser","userID":"chai22","createTime":"2017-06-29T07:11:44z","email":"sdfas@gmail.com"}'
Error: error trying to ping. Error: error trying to query chaincode. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
Command failed```
baoyangc (Tue, 18 Jul 2017 11:12:57 GMT):
how to set timeout to be longger
davidkel (Tue, 18 Jul 2017 11:14:35 GMT):
It's a configuration on the peer.
it's defined by environment variable for example
`CORE_CHAINCODE_EXECUTETIMEOUT=90s` sets the timeout to 90 seconds. The default is 30 seconds. However did the chaincode container start at all ?
baoyangc (Tue, 18 Jul 2017 11:17:12 GMT):
in my connection.json, there are 4 peers, so I don't know which peer execute it
baoyangc (Tue, 18 Jul 2017 11:17:37 GMT):
```CORE_CHAINCODE_EXECUTETIMEOUT=90s DEBUG=* composer participant add -p org4 -n 'banquanjia' -i PeerOrg4Admin -s adminpw -d '{"$class":"org.bqj.cn.BanquanjiaUser","userId":"chai22","createTime":"2017-06-29T07:11:44z","email":"sdfas@gmail.com"}'
IllegalModelException: Transaction should not specify an identifying field. File 'models/bqj.cto': line 85 column 1, to line 87 column 2.
Command failed```
my cto should be updated
baoyangc (Tue, 18 Jul 2017 11:19:24 GMT):
Message Attachments
davidkel (Tue, 18 Jul 2017 11:25:02 GMT):
@baoyangc all peers in your connection profile will be sent the request for endorsement
davidkel (Tue, 18 Jul 2017 11:25:02 GMT):
@baoyangc all peers in your connection profile will be sent the request for endorsement. The environment variable is a peer environment variable. You have to set it for the peer and restart the peer
baoyangc (Tue, 18 Jul 2017 12:02:46 GMT):
i see
baoyangc (Tue, 18 Jul 2017 12:02:54 GMT):
thanks @davidkel
bart.cant@gmail.com (Tue, 18 Jul 2017 13:22:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8FqdRCJG5EbAdQpsg) @davidkel clearing the browser cache got me passed the issue but now I encountered a new issue. See screenshot below
bart.cant@gmail.com (Tue, 18 Jul 2017 13:24:38 GMT):
Message Attachments
davidkel (Tue, 18 Jul 2017 13:37:26 GMT):
@bart.cant@gmail.com looks like you have run out of memory on the machine where you are running fabric
baoyangc (Tue, 18 Jul 2017 13:37:34 GMT):
memory not enough
baoyangc (Tue, 18 Jul 2017 13:37:34 GMT):
composer release every week?
baoyangc (Tue, 18 Jul 2017 13:39:09 GMT):
shouldthe connection.json include all orderers and all peers in the same org?
mahoney1 (Tue, 18 Jul 2017 14:16:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=na6qCKsLsyYLjFjhk) @baoyangc 1) yes, every thursday and announce here and release notes will be (for the current release) here -> https://github.com/hyperledger/composer/releases/ and 2) Each organisation will need to get the Composer business network (definition) onto their peers, so each organisation will have a connection profile (containing their peers) to do this. Thus, each organisation will have their own connection profile to submit transactions to peers across organisations, depending on their defined endorsement policy (that connection profile will have the peers to submit transactions to). More than one organisation can be added to the Ordering Service. -> http://hyperledger-fabric.readthedocs.io/en/latest/txflow.html
mahoney1 (Tue, 18 Jul 2017 14:16:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=na6qCKsLsyYLjFjhk) @baoyangc 1) yes, every thursday and announced here on RC and release notes will be (for the current release) here -> https://github.com/hyperledger/composer/releases/ and 2) Each organisation will need to get the Composer business network (definition) onto their peers, so each organisation will have a connection profile (containing their peers) to do this. Thus, each organisation will have their own connection profile to submit transactions to peers across organisations, depending on their defined endorsement policy (that connection profile will have the peers to submit transactions to). More than one organisation can be added to the Ordering Service. -> http://hyperledger-fabric.readthedocs.io/en/latest/txflow.html
baoyangc (Tue, 18 Jul 2017 14:23:58 GMT):
@mahoney1 thanks
davidkel (Tue, 18 Jul 2017 14:45:07 GMT):
@baoyangc note that there is a restriction currently for connection profiles to hlfv1. Although you can add multiple orderers to a connection profile, only the first one will receive the request. This is a limitation of the hyperledger fabric node sdk.
baoyangc (Tue, 18 Jul 2017 14:45:48 GMT):
@davidkel thanks
raheelz (Tue, 18 Jul 2017 18:53:17 GMT):
Hello, In my script file getting `null` for `var me = getCurrentParticipant();`.
How do I set and check who calls the transaction? Also, how does the permission.acl check which participant is accessing the asset/transaction?
Would appreciate any guidance, link to documentation or examples. Thanks
mahoney1 (Tue, 18 Jul 2017 19:58:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eqzMhHzZoHrcqD4qM) @raheelz see example here: https://hyperledger.github.io/composer/managing/current-participant.html (scroll down). The return value could be null, if the transaction was submitted using an identity, that does not map to a participant...
mahoney1 (Tue, 18 Jul 2017 19:58:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fxFwne2rKveQWMfL7) @prashant94 hi there, connect failed suggests you don't have a v1.0 connection profile? Did you run createComposerProfile.sh, and assuming you executed Step 2 from the setup page -> https://hyperledger.github.io/composer/installing/development-tools.html - what is your OS, npm, node version please?
wael (Tue, 18 Jul 2017 20:17:11 GMT):
hi , I have some questions after I ran my nodejs application based on hyperledgerComposer:
- How could I know who submitted the transaction ? after I get transaction registry using getTransactionRegistry() .. ?
- Is every participant that is submitting a transaction equals to peer ?
- participant who
wael (Tue, 18 Jul 2017 20:17:11 GMT):
hi , I have some questions after I ran my nodejs application based on hyperledgerComposer:
- How could I know who submitted the transaction ? after I get transaction registry using getTransactionRegistry() .. ?
- Is every participant that is submitting a transaction equals to peer ?
- how could I define another peers to be in touch with my deployed businessNetwork , and how could I define them so that I can control them by the file permissions.acl ?
dstarina (Tue, 18 Jul 2017 21:26:09 GMT):
Hi. Question. What happens on "composer network deploy" when trying to deploy multiple versions of the same network definition (a changed .bna file)? I saw through the REST api calls that my original code is still being executed, not the changed one.
prashant94 (Tue, 18 Jul 2017 21:27:55 GMT):
Has joined the channel.
prashant94 (Tue, 18 Jul 2017 21:31:29 GMT):
Hi, I am using the "Developer Tutorial for creating a Hyperledger Composer solution" and I am getting error at the step "Deploy to the running Hyperledger Fabric".
ScottMorris (Tue, 18 Jul 2017 21:31:31 GMT):
Has joined the channel.
prashant94 (Tue, 18 Jul 2017 21:31:33 GMT):
composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My very first Hyperledger Composer Network
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed
Command failed
prashant94 (Tue, 18 Jul 2017 21:31:56 GMT):
Anyone knows how to solve this? Thanks!
raheelz (Tue, 18 Jul 2017 21:49:16 GMT):
Thank you @mahoney1 ! That helps. I am trying to figure out how to submit transaction that would map to a participant..
kletkeman (Wed, 19 Jul 2017 03:05:55 GMT):
@sstone1 I was reading Blockchain Explored and something struck me that *might* be an interesting security optimization. It seems to me that not deploying transactions would make sense for any peer that does not have endorsement intent. So exclusive committers would have queries on them and no execution capability. By only deploying transactions to the endorsers, those can be locked up in a bullet proof environment and all other peers can be trusted to be impervious to transaction based attacks on blockchain content. Just curious if such a thing makes any sense given the spread responsibilities for consensus etc?
qiang0723 (Wed, 19 Jul 2017 03:52:51 GMT):
Has joined the channel.
knagware9 (Wed, 19 Jul 2017 06:25:50 GMT):
Has joined the channel.
knagware9 (Wed, 19 Jul 2017 06:26:24 GMT):
Hi All,
knagware9 (Wed, 19 Jul 2017 06:29:30 GMT):
I have tried to use hyperledger composer and created business network .But when I am deploying to fabric its giving error because I already running one another fabric network on my machine using docker .Could you please help me to create two fabric network ,one for my general and another for composer..Or I can have only one fabric network at a time..
ThomasBouquet (Wed, 19 Jul 2017 07:37:55 GMT):
Hi all, I try to create a connection profile for one peer and one organisation which fit to the fabric getting started. I have to specify in this file, the "ca" but when I launch the getting started I don't have a container fabric-ca running. How can I do that ?
caroline-church (Wed, 19 Jul 2017 08:09:03 GMT):
Hi @ThomasBouquet which getting started do you mean?
ThomasBouquet (Wed, 19 Jul 2017 08:09:38 GMT):
From fabric http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html
caroline-church (Wed, 19 Jul 2017 08:09:44 GMT):
Hi @knagware9 i think that is a more fabric specific thing try asking in the #fabric channel
caroline-church (Wed, 19 Jul 2017 08:10:20 GMT):
@ThomasBouquet are you trying to use just fabric or fabric with composer?
ThomasBouquet (Wed, 19 Jul 2017 08:12:06 GMT):
fabric with composer but with "first network"
caroline-church (Wed, 19 Jul 2017 08:17:47 GMT):
if you follow these instructions it will create you a running fabric and connection profile. If you then download the sample-networks from https://github.com/hyperledger/composer-sample-networks you can then deploy the marbles network which is like the first network but written using composer rather than go code
davidkel (Wed, 19 Jul 2017 08:26:18 GMT):
@ThomasBouquet You will need to modify the byfn docker containers to include starting a fabric-ca yourself. You can see how we do it for our composer fabric development server and how we set the connection profile to use that server and apply that to your changes.
ThomasBouquet (Wed, 19 Jul 2017 08:26:54 GMT):
@davidkel Thank you I will dot that !
levinkwong (Wed, 19 Jul 2017 08:42:52 GMT):
Hi guys, I have deployed my composer network using a bna file (created by `composer archive create`)
After a while, I updated my transactions and create the same bna file using same command. Then I do a `composer network update`.
However, I the transaction content is not updated.
Did I miss any steps?
levinkwong (Wed, 19 Jul 2017 08:42:52 GMT):
~Hi guys, I have deployed my composer network using a bna file (created by `composer archive create`)
After a while, I updated my transactions and create the same bna file using same command. Then I do a `composer network update`.
However, I the transaction content is not updated.
Did I miss any steps?~
levinkwong (Wed, 19 Jul 2017 08:42:52 GMT):
Completed my bad, the `composer update` works fine
levinkwong (Wed, 19 Jul 2017 08:42:52 GMT):
My bad, the `composer update` works fine
RudiDahle (Wed, 19 Jul 2017 08:43:13 GMT):
When I create an asset I would like this to be recorded on the blockchain. The creation is not a part of a transaction, how can I record this to the blockchain? I've looked at events in the .cto-file, but it seems to me that events are emited by a transaction, is this correct?
wael (Wed, 19 Jul 2017 08:45:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XZhLTpNLj3569nFtu) ??
mahoney1 (Wed, 19 Jul 2017 09:00:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=W92t79oS7pAy4A7kJ) @wael 1) getCurrentParticipant() - see here for example of getting who the participant is (identity of the caller submitting the txn) -> https://hyperledger.github.io/composer/managing/current-participant.html 2) every participant submitting a txn via transaction processor functions are automatically invoked by the runtime when transactions are submitted to the Fabric peers in essence, subject to endorsement and endorsement policy etc http://hyperledger-fabric.readthedocs.io/en/latest/txflow.html 3) Configuring more peers is a Fabric question ; permissions.acl is a Composer concept and definition ; ACL rules (within the context of the Composer business network definition) determine which users/roles are permitted to create, read, update or delete elements in a business network's domain model. You don't control 'peers' in permissions.acl
dselman (Wed, 19 Jul 2017 09:02:35 GMT):
@wael we have an issue open to extend the metadata collected by the transaction registry (historian) to capture things like the current participant id.
dselman (Wed, 19 Jul 2017 09:06:28 GMT):
Issue 55, linked from here: https://github.com/hyperledger/composer/issues/1390
ThomasBouquet (Wed, 19 Jul 2017 09:12:30 GMT):
Hi again ! I am trying to deploy my network but I have the following issue : Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My very first Hyperledger Composer Network
Error: error trying login and get user Context. Error: error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: Parse Error]
Command failed
ThomasBouquet (Wed, 19 Jul 2017 09:12:46 GMT):
My connectyion.json
ThomasBouquet (Wed, 19 Jul 2017 09:12:49 GMT):
{
"type": "hlfv1",
"orderers": [
"grpc://localhost:7050"
],
"ca": "http://localhost:7054",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "~/.composer-credentials",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": 300
}
mahoney1 (Wed, 19 Jul 2017 09:16:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ENPnhDP3NtL5odMWX) @RudiDahle In Composer, the asset is recorded on a connected blockchain, (in this case, Hyperledger Fabric). It is a blockchain transaction, in effect "this asset was created on ddmmyy by xyz". The current state of assets and participants are stored in the blockchain state database https://hyperledger.github.io/composer/introduction/key-concepts.html The definition (of say assets or indeed participants) in a model .CTO file are exactly that : modeled definitions. In Composer, the state of assets and participants in the business network (ie already recorded on the blockchain) can be modified by the processing of business transactions through Transaction Processor functions or business logic. Events emitted 'out ' of' Transaction Processor functions are usually for the purpose of notifying or publishing to external applications, that are looking for or are responsible for taking action based on those 'threads' - ie. if this event happens, I want to do something in my application. - the events are ALSO modeled (ie event definition) . - https://hyperledger.github.io/composer/business-network/publishing-events.html
mahoney1 (Wed, 19 Jul 2017 09:53:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8JzmevfJv5K4ukeuA) @ThomasBouquet assuming you mean file connection.json ? If you've tried to deploy with the -i PeerAdmin parameter - then it sounds like your keyValStore doesn't have the correct PeerAdmin credentials /certificate (assuming you used the Dev setup previously from previous threads). If so (or you haven't imported other IDs), I suggest to clear it from your $HOME/.composer-credentials and having downloaded/extracted the latest fabric-dev-servers.zip to *say) fabric-tools, then (from that tools directory) simply run createComposerProfile.sh (the script will recreate the composer credentials and the composer connection profile together). Then try to deploy again eg ```composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString```
davidkel (Wed, 19 Jul 2017 10:32:41 GMT):
@ThomasBouquet are you sure you have a fabric-ca server listening on port 7054 ?
mahoney1 (Wed, 19 Jul 2017 10:38:57 GMT):
fyi @here - the Community call tomorrow (Thurs) will be at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest Composer release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-20th-July-2017 best regards Paul
ascatox (Wed, 19 Jul 2017 11:03:40 GMT):
Has joined the channel.
mna2016 (Wed, 19 Jul 2017 11:04:51 GMT):
Has joined the channel.
mna2016 (Wed, 19 Jul 2017 11:08:39 GMT):
Hi Team! This is the first time I am using hyperledger chat. But an instant Q&A tool like this looks really awesome.
mna2016 (Wed, 19 Jul 2017 11:09:59 GMT):
I have 2 questions
1) I am following a tutorial of hyperledger compower. The screenshot of the browser Ui does not exactly match with the screen I am seeing(I am accesing on a windows 10 laptop). The top status bar does not show the profile icon. Instead it shows "admin" link. How do I change a profile
2) I have a blockchain service residing on IBM bluemix. I would like that blockchain to be used via the hyperledger composer playground. I assume I have to use a profile to connect to IBM bluemix blockchain. I need the sample profile template\file that I can import into hyperledger playground.
mahoney1 (Wed, 19 Jul 2017 12:44:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5MeK5rxYSB5fz37uv) @mna2016 hi there and welcome online :-) on 1) the online playground is for testing / deploying your business network definition - install the local playground to then be able to define a connection profile - eg. to connect to your running Hyperledger Fabric blockchain in Bluemix. 2) Yes. Once you get setup and installed locally, you can check this the answer and description here -> https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service/ for a definition of the profile for Bluemix. You will need your own unique enrolment ID and enrolment secret to use out on Bluemix ie from the credentials page;
mna2016 (Wed, 19 Jul 2017 12:46:23 GMT):
@mahoney1 Thanks for the reply. Let me install composer' local playground.
mahoney1 (Wed, 19 Jul 2017 12:46:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4naixdrhEPxcjLC9p) @mna2016 no worries..
elrond (Wed, 19 Jul 2017 13:25:47 GMT):
IllegalModelException: Transaction should not specify an identifying field.
elrond (Wed, 19 Jul 2017 13:25:54 GMT):
anyone get this error_
elrond (Wed, 19 Jul 2017 13:25:55 GMT):
?
elrond (Wed, 19 Jul 2017 13:26:20 GMT):
the error occurs upon npm install trying to generate the bna file
sachaLiguori (Wed, 19 Jul 2017 13:46:32 GMT):
Hi there! I'm trying to create n transaction for the n line of a csv file, my parser works well. I store all the promise like this `MyTransac.push(cnx.submitTransaction(transaction)); ` and after I recursively execute ```var submitTrans = function (trans, nb) {
if (nb === 0) {
return trans[nb];
}
else {
submitTrans(trans, nb - 1);
return trans[nb];
}
}
return submitTrans(iswcTransac, iswcTransac.length - 1); ``` but I get an error 'Error: error trying invoke chaincode. Error: Peer has rejected transaction '30d9b3c6d74b825199eacc78497e555e0a764e54e30370c499ad30ddff6a2ac3' with cdoe MVCC_READ_CONFLICT'
sachaLiguori (Wed, 19 Jul 2017 13:46:32 GMT):
It's not possible to force lock ?
ascatox (Wed, 19 Jul 2017 13:48:01 GMT):
Hi All, I have a simple question: Is it possible do deploy a bna package in a *remote Fabric runtime* using the *composer network*
ascatox (Wed, 19 Jul 2017 13:48:01 GMT):
Hi All, I have a simple question: Is it possible do deploy a bna package in a *remote Fabric runtime* using the *composer network* command?
ascatox (Wed, 19 Jul 2017 13:48:11 GMT):
Thanks for the help!!!
dselman (Wed, 19 Jul 2017 14:00:20 GMT):
yes, you just have to create a connection profile for your remote server (and have the certs)
dselman (Wed, 19 Jul 2017 14:01:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AjcWM8n2hPsZkLjxR) @sachaLiguori this means that 2 transactions where processes in parallel and both tried to update the same keys. Fabric uses an optimistic locking scheme... I recommend you check the Fabric docs / channels for more details.
sachaLiguori (Wed, 19 Jul 2017 14:04:01 GMT):
@dselman it's not possible to force the locking ?
sstone1 (Wed, 19 Jul 2017 14:13:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EiDo2vxopCFhuNmFT) @kletkeman it's something that we've discussed in the team before - the ability to deploy the transaction processor functions to the peers that are required to endorse them. this would require some metadata that would map Composer participants/transactions to the Fabric peers. additionally, there is some work starting in Fabric to introduce a "topology" document that describes the Fabric network.
prashant94 (Wed, 19 Jul 2017 14:14:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=t3SByKkZJCuhueQHM) @mahoney1 Hi! I did step 2 from the setup page -> https://hyperledger.github.io/composer/installing/development-tools.html and I only have v1.0 running on my laptop. My OS version is Mac OS X Yosemite version 10.10.3 and npm --version
3.10.10
Sunils-Air:~ sunilkumardewan$ node -v
v6.11.1
Thanks!
mahoney1 (Wed, 19 Jul 2017 14:27:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vxQxjW8iosY4GsNaq) @prashant94 can you send the output of `docker ps -a` pls and thanks.
prashant94 (Wed, 19 Jul 2017 14:31:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HDte6vh6QygLNTsky) @mahoney1 Here is the output : docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
930159a70c8f hyperledger/fabric-peer:x86_64-1.0.0 "peer node start -..." 18 hours ago Exited (255) 18 hours ago 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
f9f3ee85f95a hyperledger/fabric-orderer:x86_64-1.0.0 "orderer" 18 hours ago Exited (255) 18 hours ago 0.0.0.0:7050->7050/tcp orderer.example.com
b7f71926b7ae hyperledger/fabric-couchdb:x86_64-1.0.0 "tini -- /docker-e..." 18 hours ago Exited (255) 18 hours ago 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
b7b49aaf88c7 hyperledger/fabric-ca:x86_64-1.0.0 "sh -c 'fabric-ca-..." 18 hours ago Exited (255) 18 hours ago 0.0.0.0:7054->7054/tcp ca.org1.example.com
mahoney1 (Wed, 19 Jul 2017 14:36:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GpJs2P3WvwRYMkZwC) @prashant94 hi there - your deploy problem is because you don't have a running Fabric - all the nodes have 'exited' ... Simplest way to restart is to go to your 'fabric-tools' directory and run ./startFabric,sh - it will stand up new containers. then do a `docker ps -a` to check they are running. After that, try to deploy your network again. cheers
prashant94 (Wed, 19 Jul 2017 14:40:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KgTSpSR9dbHDneC4m) @mahoney1 Hi! That worked. Thanks alot. Cheers!
ascatox (Wed, 19 Jul 2017 15:03:06 GMT):
Hi all, in a production env what's the correct way to start and stop the composer without loosing the bna deployed?
baoyangc (Wed, 19 Jul 2017 15:32:09 GMT):
```services:
ca0:
deploy:
replicas: 1
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
hostname: ca.org1.sdchoi.com
image: hyperledger/fabric-ca:x86_64-1.0.0
networks:
hyperledger-ov:
aliases:
- ca_peerOrg1
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca-org1
- FABRIC_CA_SERVER_TLS_ENABLED=true
- FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.sdchoi.com-cert.pem
- FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/26f2873d1e7dae3be807a5788c17d50e188bcd2719acfbb103847744af33d01f_sk
ports:
- 7054:7054
command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.sdchoi.com-cert.pem
--ca.keyfile /etc/hyperledger/fabric-ca-server-config/26f2873d1e7dae3be807a5788c17d50e188bcd2719acfbb103847744af33d01f_sk -b admin:adminpw
-d'
volumes:
- ./crypto-config/peerOrganizations/org1.sdchoi.com/ca/:/etc/hyperledger/fabric-ca-server-config```
this is my ca docker config
what should config the value of ca in the connection.json
baoyangc (Wed, 19 Jul 2017 15:32:49 GMT):
```"ca": {
"url": "https://ca.org1.sdchoi.com:7054",
"name": "ca.org1.sdchoi.com",
"verify": false
},```
is this correct?
baoyangc (Wed, 19 Jul 2017 15:33:09 GMT):
```DEBUG=* composer identity issue -p org1 -n 'banquanjia' -i admin -s adminpw -u chai22 -a "cn.bqj.copyright.BanquanjiaUser#chai22"
Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca.org1.sdchoi.com' does not exist"}]]
Command failed```
baoyangc (Wed, 19 Jul 2017 15:34:24 GMT):
@mahoney1
adrianasz (Wed, 19 Jul 2017 15:37:51 GMT):
Has joined the channel.
theophoric (Wed, 19 Jul 2017 16:12:04 GMT):
It seems that the docker playground deploys using the identifier `org-acme-biznet` -- I would like to use a different identifier (e.g. `my-composer-app`) so that my client app and the playground can both interact with the same deployment. Any easy way to do this? Or would I need to use the `org-acme-biznet` identifier in both contexts?
davidkel (Wed, 19 Jul 2017 16:24:50 GMT):
@baoyangc you defined the name of you ca as
```
- FABRIC_CA_SERVER_CA_NAME=ca-org1
```
so that is the name you should put into the connection.json
davidkel (Wed, 19 Jul 2017 16:28:21 GMT):
@ascatox that's an operational hyperledger fabric question. You might find some help here
http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html
under the section "A Note on Data Persistence", not sure if even this approach would be the best way in a real production environment
baoyangc (Wed, 19 Jul 2017 16:31:10 GMT):
thanks, i changed it and redeploy fabric-ca. but it always said:```Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca.org1.sdchoi.com' does not exist"}]]
Command failed```
baoyangc (Wed, 19 Jul 2017 16:38:41 GMT):
`Failed to verify certificate: Failed to verify certificate: x509: certificate signed by unknown authority`
baoyangc (Wed, 19 Jul 2017 16:39:21 GMT):
is this mean there is some error in my connection.json
baoyangc (Wed, 19 Jul 2017 16:39:54 GMT):
```CORE_CHAINCODE_EXECUTETIMEOUT=90s DEBUG=* composer identity issue -p org1 -n 'banquanjia' -i admin -s adminpw -u chai22 -a "cn.bqj.copyright.BanquanjiaUser#chai22"
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed```
baoyangc (Wed, 19 Jul 2017 16:40:25 GMT):
but i did participant add successfully
baoyangc (Wed, 19 Jul 2017 16:57:09 GMT):
```017/07/19 16:55:50 [DEBUG] Received request
POST /api/v1/register
Authorization: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNGakNDQWJ5Z0F3SUJBZ0lRTHhHcXVnYjJEamd0V3RFM3RrRHJGVEFLQmdncWhrak9QUVFEQWpCeE1Rc3cKQ1FZRFZRUUdFd0pWVXpFVE1CRUdBMVVFQ0JNS1EyRnNhV1p2Y201cFlURVdNQlFHQTFVRUJ4TU5VMkZ1SUVaeQpZVzVqYVhOamJ6RVlNQllHQTFVRUNoTVBiM0puTVM1elpHTm9iMmt1WTI5dE1Sc3dHUVlEVlFRREV4SmpZUzV2CmNtY3hMbk5rWTJodmFTNWpiMjB3SGhjTk1UY3dOekU1TURNeE1EQTFXaGNOTWpjd056RTNNRE14TURBMVdqQmEKTVFzd0NRWURWUVFHRXdKVlV6RVRNQkVHQTFVRUNCTUtRMkZzYVdadmNtNXBZVEVXTUJRR0ExVUVCeE1OVTJGdQpJRVp5WVc1amFYTmpiekVlTUJ3R0ExVUVBd3dWUVdSdGFXNUFiM0puTVM1elpHTm9iMmt1WTI5dE1Ga3dFd1lICktvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVtV3QvWnRhV1NIZXRGOERNbW0vSkl5dkttdWlYeXJ2R0wyZ1QKRkVwV3h0R3dHTUNuNnVTeWhzTGZvRkZidThvTHBhOEdRcGlZbGNrYm40dnhzNzZXenFOTk1Fc3dEZ1lEVlIwUApBUUgvQkFRREFnZUFNQXdHQTFVZEV3RUIvd1FDTUFBd0t3WURWUjBqQkNRd0lvQWdKdktIUFI1OXJqdm9CNlY0CmpCZlZEaGlMelNjWnJQdXhBNFIzUks4ejBCOHdDZ1lJS29aSXpqMEVBd0lEU0FBd1JRSWhBSTZOYUZscGk0NlkKcDgyVERXUjdvQlFiaWkxQUducWFDY1pvYWdxaW5wb0ZBaUJzZ0FDSVJvWnNXNG1UTDBNZmc5OGU1bkR5UUJ2VwpPWUUrdjhuby9sclZzZz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K.MEUCIQDnisX6NRuBRpuezKfxzcjphUWRijHOoI1AFItTgCnJMQIgajiGG9Bfs+2yE22miFp/PRA+es211Kny23vN10lZ6tg=
{"id":"chai22","type":"client","affiliation":"org1","max_enrollments":0,"attrs":[],"caName":"ca.org1.sdchoi.com"}
2017/07/19 16:55:50 [DEBUG] Directing traffic to CA ca.org1.sdchoi.com
2017/07/19 16:55:50 [DEBUG] Checking for revocation/expiration of certificate owned by 'Admin@org1.sdchoi.com'
2017/07/19 16:55:50 [DEBUG] DB: Get certificate by serial (2f11aaba06f60e382d5ad137b640eb15) and aki (26f2873d1e7dae3be807a5788c17d50e188bcd2719acfbb103847744af33d01f)
2017/07/19 16:55:50 [ERROR] No certificates found for provided serial and aki
root@k8s3:~#```
when i execute `composer identity import -p org1 -u Org1Admin -c crypto-config/peerOrganizations/org1.sdchoi.com/users/Admin@org1.sdchoi.com/msp/signcerts/Admin@org1.sdchoi.com-cert.pem -k crypto-config/peerOrganizations/org1.sdchoi.com/users/Admin@org1.sdchoi.com/msp/keystore/5ef6334e9b38ae599189b7aee4c4cb2b64b7d12572dfcb88e20251e60d8f0b31_sk`
mahoney1 (Wed, 19 Jul 2017 16:59:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4AhBv6RJnDrqseKeK) @ascatox [ ](https://chat.hyperledger.org/channel/composer?msg=4AhBv6RJnDrqseKeK) @ascatox - So if you're using a docker based environment - `docker stop _container_id_` stopping ca, orderer, peers containers (using id) and the business network container, then in sequence, start them in an orderly fashion using `docker start _container_id_` - your deployed network is still available (as your assets, participants, transactions). You mention production and that demands persistence. The ledger's block-chain is a transaction log structured as hash-linked blocks stored on disk. The world state is also persisted to disk in each peer at /var/hyperledger/production as persistent key value store to store/retrieve the world state.
With or without Docker, have you considered data volumes ? That is, persistent storage 'outside' whether for the docker containers or even highly available nodes (non-Docker)
If Docker based, read this article and diagram - specifically jump to the section 'Host based persistence' and read on from there
https://thenewstack.io/methods-dealing-container-storage/
This is the Docker page (tutorial) on configuration
https://docs.docker.com/engine/tutorials/dockervolumes/
mahoney1 (Wed, 19 Jul 2017 16:59:33 GMT):
@ascatox [ ](https://chat.hyperledger.org/channel/composer?msg=4AhBv6RJnDrqseKeK) @ascatox - So if you're using a docker based environment - `docker stop _container_id_` stopping ca, orderer, peers containers (using id) and the business network container, then in sequence, start them in an orderly fashion using `docker start _container_id_` - your deployed network is still available (as your assets, participants, transactions). You mention production and that demands persistence. The ledger's block-chain is a transaction log structured as hash-linked blocks stored on disk. The world state is also persisted to disk in each peer at /var/hyperledger/production as persistent key value store to store/retrieve the world state.
With or without Docker, have you considered data volumes ? That is, persistent storage 'outside' whether for the docker containers or even highly available nodes (non-Docker)
If Docker based, read this article and diagram - specifically jump to the section 'Host based persistence' and read on from there
https://thenewstack.io/methods-dealing-container-storage/
This is the Docker page (tutorial) on configuration
https://docs.docker.com/engine/tutorials/dockervolumes/
rodders1991 (Wed, 19 Jul 2017 17:02:24 GMT):
Hi guys, is polymorphism a feature on the composer? I can't seem to get a sub asset when I retrieve it through the super?
davidkel (Wed, 19 Jul 2017 17:10:49 GMT):
@baoyangc if you restarted your ca server, then any admin certificate you previously enrolled probably isn't valid, you should clear out the credentials and re-enroll. If you want credentials to persist across ca restarts then you need to find out more about how to configure the ca server
baoyangc (Wed, 19 Jul 2017 17:13:07 GMT):
@davidkel re-renroll? not `composer identiy import `?
mahoney1 (Wed, 19 Jul 2017 17:13:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q9mJeRSnYxxEQHJuR) @theophoric you can edit the new network (see edit icon) in playground, with new name quite easily - but you then deploy it as a new network (as that is what it is). You can then interact with the 'new' network (with the same model) . When you export it as a .bna (zip archive) file - it has the new name in the package.json file.
baoyangc (Wed, 19 Jul 2017 17:20:33 GMT):
after restart fabric-ca-server, I do ```composer identity import -p org1 -u PeerOrg1Admin -c crypto-config/peerOrganizations/org1.sdchoi.com/users/Admin@org1.sdchoi.com/msp/signcerts/Admin@org1.sdchoi.com-cert.pem -k crypto-config/peerOrganizations/org1.sdchoi.com/users/Admin@org1.sdchoi.com/msp/keystore/5ef6334e9b38ae599189b7aee4c4cb2b64b7d12572dfcb88e20251e60d8f0b31_sk
An identity was imported with name 'PeerOrg1Admin' successfully
Command succeeded
root@master:first-network# composer identity issue -p org1 -n 'banquanjia' -i PeerOrg1Admin -s adminpw -u chai22 -a "cn.bqj.copyright.BanquanjiaUser#chai23"
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
root@master:first-network#```
baoyangc (Wed, 19 Jul 2017 17:20:55 GMT):
it failed again
baoyangc (Wed, 19 Jul 2017 17:28:36 GMT):
@davidkel i see, I need make a request to the fabric server to get new certificate
baoyangc (Wed, 19 Jul 2017 17:34:04 GMT):
but, after restart ca, without reenroll , I can execute `DEBUG=* composer participant add -p org1 -n 'banquanjia' -i Org1Admin -s adminpw -d '{"$class":"cn.bqj.copyright.BanquanjiaUser","userId":"chai24","createTime":"2017-06-29T07:11:44z","email":"sdfas@gmail.com"}'
ibm-concerto Factory.newResource created chai24 +0ms
Participant was added to participant registry.
Command succeeded`
successfully
arsalan 4 (Wed, 19 Jul 2017 18:10:32 GMT):
Has joined the channel.
arsalan 4 (Wed, 19 Jul 2017 18:10:38 GMT):
Hey all!
arsalan 4 (Wed, 19 Jul 2017 18:11:03 GMT):
has anyone seen this error before when trying to deploy a .bna?
arsalan 4 (Wed, 19 Jul 2017 18:11:04 GMT):
error trying login and get user Context. Error: error trying to enroll user. Error: Calling enrollment endpoint failed with error
ScottMorris (Wed, 19 Jul 2017 20:08:04 GMT):
Hi there, I'm trying to figure out how to change the business network that the playground connects too. Is this possible? It kinda looks like it from the composer documentation.
dselman (Wed, 19 Jul 2017 20:40:24 GMT):
@ScottMorris not yet possible, we are working on that right now. Playground is currently hardcoded to connect to org-acme-biznet
dselman (Wed, 19 Jul 2017 20:40:51 GMT):
So, if you name your network org-acme-biznet, then Playground will connect to it
davidkel (Wed, 19 Jul 2017 21:12:28 GMT):
@baoyangc in order to make a request to the fabric-ca you need to use an identity understood by the fabric-ca. 'admin' is an id your configuration has defined as the bootstrap id. However you have an old admin identity and certificate in your keyValStore directory and won't match the one in your fabric-ca because whenever your fabric-ca is restarted it creates a new admin identity with new certificates.
ScottMorris (Wed, 19 Jul 2017 21:16:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Kg5MaEsfd54rp4ar5) @dselman Thanks for the heads up. This is the conclusion I reached but wanted to verify this.
ki0apa (Wed, 19 Jul 2017 23:26:03 GMT):
Has joined the channel.
ki0apa (Wed, 19 Jul 2017 23:26:07 GMT):
Hello,
ki0apa (Wed, 19 Jul 2017 23:26:29 GMT):
I created a rest server and sent around 500 requests in 10 minutes and I got this error
ki0apa (Wed, 19 Jul 2017 23:26:31 GMT):
unhandled error for request post /api/org.example.mynetwork.commodity: error: error trying to query chaincode. error: error executing chaincode: failed to execute transaction (timeout expired while executing transaction) at channel.querybychaincode.then.catch (/home/ubuntu/composer/my-network/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:758:34)
ki0apa (Wed, 19 Jul 2017 23:26:41 GMT):
Any idea on how I can fix this?
dselman (Wed, 19 Jul 2017 23:28:37 GMT):
can you grab the logs from the chaincode container please (using docker logs)
dselman (Wed, 19 Jul 2017 23:28:47 GMT):
let's try to see why you got the timeout
ki0apa (Wed, 19 Jul 2017 23:29:19 GMT):
Sure, one second
ki0apa (Wed, 19 Jul 2017 23:38:07 GMT):
Here is the standard error
ki0apa (Wed, 19 Jul 2017 23:38:38 GMT):
Message Attachments
ki0apa (Wed, 19 Jul 2017 23:38:43 GMT):
and here is the stdout
ki0apa (Wed, 19 Jul 2017 23:38:50 GMT):
Message Attachments
dselman (Wed, 19 Jul 2017 23:45:40 GMT):
There are several errors in that log that look like you have submitted invalid data...
dselman (Wed, 19 Jul 2017 23:45:42 GMT):
eg.
dselman (Wed, 19 Jul 2017 23:45:46 GMT):
```
[31m2017-07-19 23:33:49.689 UTC [Composer] Error -> ERRO 1f1b[0m @JS : Resolver :resolveRelationship() Failed to resolve relationship [object Object]
[36m2017-07-19 23:33:49.689 UTC [Composer] Debug -> DEBU 1f1c[0m @JS : Resolver :resolveResourceOrConcept() > Resource {id=org.example.mynetwork.Trade#a17330ce-96d0-41e9-aff6-01b2aec6fe45}, [object Object]
dselman (Wed, 19 Jul 2017 23:45:47 GMT):
```
dselman (Wed, 19 Jul 2017 23:46:16 GMT):
```
[36m2017-07-19 23:33:49.752 UTC [Composer] Debug -> DEBU 2051[0m @JS : CompiledScriptBundle :execute() Executing function tradeCommodity
[31m2017-07-19 23:33:49.754 UTC [Composer] Error -> ERRO 2052[0m @JS : Engine :invoke() Caught error, rethrowing [object Object]
``
dselman (Wed, 19 Jul 2017 23:46:39 GMT):
```
[36m2017-07-19 23:33:49.755 UTC [Composer] Debug -> DEBU 2065[0m Exiting Composer.Invoke Error: Object with ID 'SZFYAIRVVP_c8' in collection with ID 'Asset:org.example.mynetwork.Commodity' does not exist
```
dselman (Wed, 19 Jul 2017 23:47:01 GMT):
Search the log for `ERROR`
ki0apa (Wed, 19 Jul 2017 23:52:41 GMT):
That's strange, I'll further investigate and let you know if I have any more problems
baoyangc (Thu, 20 Jul 2017 01:45:25 GMT):
```composer participant add -p hlfv1 -n 'banquanjia' -i PeerAdmin -s abcd -d '{"$class":"cn.bqj.copyright.BanquanjiaUser","userId":"chai1","createTime":"2017-06-29T07:11:44z","email":"sdfas1@gmail.com"}'
composer identity issue -p hlfv1 -n 'banquanjia' -i admin -s 'adminpw' -u chai1 -a "cn.bqj.copyright.BanquanjiaUser#chai1"
```
these two command can not use the same -enrollId
why?
germanhs (Thu, 20 Jul 2017 03:17:26 GMT):
baoyangc you use them on the same host?
germanhs (Thu, 20 Jul 2017 03:18:44 GMT):
because when one identity can only be used by one host or with the rest server one user.
baoyangc (Thu, 20 Jul 2017 03:45:21 GMT):
@germanhs did you enable github OAuth?
KevinBai (Thu, 20 Jul 2017 04:22:57 GMT):
how to renew the creds/* keys?
germanhs (Thu, 20 Jul 2017 04:25:24 GMT):
@baoyangc I did try out the github passport yes. You need 1 Identity to start the rest server and 1 identity in your wallet after authentificating. and then you can send as many requests as you want with this Identity but you cant use it in the command line anymore. And the rest server account cant be used by the github account.
germanhs (Thu, 20 Jul 2017 04:26:22 GMT):
What I did is starting 2 Servers on 2 different ports (one running with the admin account secured and one unsecured rest server that uses an Identity from a participant with read only access)
germanhs (Thu, 20 Jul 2017 04:26:59 GMT):
So that everybody can read the data without authentificating but needs to authentificate and add an identity to do something else
KevinBai (Thu, 20 Jul 2017 04:55:27 GMT):
Message Attachments
KevinBai (Thu, 20 Jul 2017 04:56:22 GMT):
hello, everybody, i dont know how to fix it
baoyangc (Thu, 20 Jul 2017 05:04:44 GMT):
@germanhs yes, you are right
baoyangc (Thu, 20 Jul 2017 05:05:56 GMT):
the PeerAdmin is used to start the composer-rest-server
baoyangc (Thu, 20 Jul 2017 05:06:36 GMT):
it can't issue identity to any participant
baoyangc (Thu, 20 Jul 2017 05:06:48 GMT):
but the admin can do that
davidkel (Thu, 20 Jul 2017 06:02:02 GMT):
@baoyangc issue identity uses the ca server to create the identity crypto material. When communicating with the ca server you have to use an identity associated with crypto material that the ca server recognises. That's why admin works and PeerAdmin doesn't
baoyangc (Thu, 20 Jul 2017 06:10:00 GMT):
what are the ablities of PeerAdmin
baoyangc (Thu, 20 Jul 2017 06:10:11 GMT):
usage of PeerAdmin
davidkel (Thu, 20 Jul 2017 06:14:55 GMT):
@baoyangc To be able to install chaincode onto a peer.
baoyangc (Thu, 20 Jul 2017 06:19:49 GMT):
got it
ascatox (Thu, 20 Jul 2017 06:37:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=unB4J9tddrDp4jejp) @mahoney1 Thank you very much for your help!!!
mahoney1 (Thu, 20 Jul 2017 07:26:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gDhFWewSi3Td8cRnZ) @arsalan 4 what was your composer network deploy command? What is the output of `docker ps -a`
camdenT (Thu, 20 Jul 2017 07:28:37 GMT):
hey all, I'm currently following the installation instructions for the composer developer environment. I tried to download the prereqs with the following command:
curl -O https://raw.githubusercontent.com/hyperledger/composer-sample-applications/master/packages/getting-started/scripts/prereqs-ubuntu.sh
However, there was no file found at this location. I checked the GitHub page to look for it, but it seems that the "getting-started" folder has been removed? is there another location that it was moved to where I can access the script? Thanks!
adrianasz (Thu, 20 Jul 2017 07:29:31 GMT):
Hi all! Does anybody have experience with composer queries and could help me figure out a few things? In particular, how to use regular expression in the "WHERE" part of the statement, how to access nested fields in a document and also, if it's possible, how to access fields in the linked documents (at least their ID). I was not able to find much about this in the documentation, if you have some good source with more info, that would be very helpful :)
adrianasz (Thu, 20 Jul 2017 07:29:31 GMT):
Hi all! Does anybody have experience with composer queries and could help me figure out a few things? In particular, how to use regular expression in the `WHERE` part of the statement, how to access nested fields in a document and also, if it's possible, how to access fields in the linked documents (at least their ID). I was not able to find much about this in the documentation, if you have some good source with more info, that would be very helpful :)
davidkel (Thu, 20 Jul 2017 07:31:42 GMT):
@camdenT this will be addressed in the next release, please find a temporary solution here for now
https://github.com/hyperledger/composer/issues/1587
mahoney1 (Thu, 20 Jul 2017 07:33:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pQeuLrXHqGw6hZBAD) @KevinBai if using the dev Fabric setup provided for the Dev tutorials, and you pulled down fabric-dev-server-scripts.zip - you can run createComposerProfile.sh - if you mean in general - see here -> https://hyperledger.github.io/composer/managing/identity-issue.html
ascatox (Thu, 20 Jul 2017 07:35:49 GMT):
Hi All! A simple question from a newbie. I'd like to add another identity in the composer playground in addition to *admin* and *PeerAdmin*, but I can't understand how to achieve this result.
ascatox (Thu, 20 Jul 2017 07:35:49 GMT):
Hi All! A simple question from a newbie. I'd like to add *another identity* in the composer playground in addition to *admin* and *PeerAdmin*, but I can't understand how to achieve this result.
mahoney1 (Thu, 20 Jul 2017 07:41:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oieAKkC9poQ65cFxM) @KevinBai In Playground? its likely you get this message because playground remembers your last identity you were using. Unfortunately the last identity you used doesn't have authority to get the list of instantiated chaincodes. If playground lets you, you need to switch identities to PeerAdmin or - you have to clear local storage.
ascatox (Thu, 20 Jul 2017 08:17:37 GMT):
I tried to add a further identity to my wallet using the Playground interface, but I receive this error: `Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]``
ascatox (Thu, 20 Jul 2017 08:17:37 GMT):
I tried to add a further identity to my wallet using the Playground interface, but I receive this error: `Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]`, someone knows the cause of this error. Thanks in advance.
camdenT (Thu, 20 Jul 2017 08:22:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MssqhpcJsgmkaSkGb) @davidkel That worked, cheers!
camdenT (Thu, 20 Jul 2017 08:29:02 GMT):
@davidkel having a more recent version of npm won't be an issue, right? The script downloaded 5.3 instead of 3.10
elrond (Thu, 20 Jul 2017 08:30:28 GMT):
for a condition in an acl file it says "JavaScript expressions used for the condition of an ACL rule can refer to JavaScript utility functions in a script file", is there any example of this anywhere?
Shwetrai (Thu, 20 Jul 2017 09:21:40 GMT):
Has joined the channel.
Shwetrai (Thu, 20 Jul 2017 09:27:20 GMT):
Hello, I need help to generate angular applications. I am able to generate REST API with hlfv1 connection profile but it is failing while generating angular application. Error is 'Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"'
Shwetrai (Thu, 20 Jul 2017 09:27:20 GMT):
Hello, I need help to generate angular applications. I am able to generate REST API with hlfv1 connection profile but it is failing while generating angular application. Error is 'Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"'... I am on Ubuntu Zesty 17.04
bestbeforetoday (Thu, 20 Jul 2017 09:51:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LmGhfR9ZujDhePGgD) @ascatox Are you using the _admin_ identity (not _PeerAdmin_)?
ascatox (Thu, 20 Jul 2017 09:53:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=idyTTrbzbZi3o8vyN) @bestbeforetoday I tried to create a new identity *ascatox* using the interface, but I have the same error launching the compose-rest-server with *admin* user.
ascatox (Thu, 20 Jul 2017 09:53:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=idyTTrbzbZi3o8vyN) @bestbeforetoday I tried to create a new identity *ascatox* using the interface, but I have the same error launching the compose-rest-server with *admin* user too.
mahoney1 (Thu, 20 Jul 2017 09:53:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LmGhfR9ZujDhePGgD) @ascatox if you are using online playground, the default id 'admin' will allow you to issue identities -> then you can add that new identity to your wallet and use it - sent you screenshot..
pospi (Thu, 20 Jul 2017 09:59:15 GMT):
Are there any docs on the Composer query language which specify what's possible in the `WHERE` clause? Are "in array" queries possible?
adrianasz (Thu, 20 Jul 2017 10:09:36 GMT):
^ I was also wondering about that
davidkel (Thu, 20 Jul 2017 10:27:17 GMT):
@camdenT I've been testing npm 5.3.0 and haven't hit any problems yet. So welcome other people to try as well as you may find something I didn't.
ascatox (Thu, 20 Jul 2017 10:41:04 GMT):
Someone between us has tried to use REST Server authentication using Github Passport?
ascatox (Thu, 20 Jul 2017 10:41:04 GMT):
Someone of us has tried to use REST Server authentication using Github Passport?
ascatox (Thu, 20 Jul 2017 10:41:04 GMT):
Someone of us has tried to use REST Server authentication using Github Passport? I'm facing the same issue, described here https://stackoverflow.com/questions/44814851/hyperledger-composer-error-authenticating-to-the-rest-server
ascatox (Thu, 20 Jul 2017 10:42:52 GMT):
I followed the guide Enabling REST API authentication for a business network but I get a *404* on the path `/auth/github`
ascatox (Thu, 20 Jul 2017 10:42:52 GMT):
I followed the guide _Enabling REST API authentication for a business network_ but I get a *404* on the path `/auth/github`
dselman (Thu, 20 Jul 2017 10:46:58 GMT):
@pop
dselman (Thu, 20 Jul 2017 10:47:20 GMT):
@pospi we need to add some docs for that. AFAIK we do not yet support array operators.
pospi (Thu, 20 Jul 2017 10:47:33 GMT):
no worries thanks for letting me know
Cartsanov (Thu, 20 Jul 2017 10:48:00 GMT):
Has joined the channel.
dselman (Thu, 20 Jul 2017 10:49:37 GMT):
const arrayCombinationOperators = [ 'AND', 'OR' ];
const conditionOperators = [ '<', '<=', '>', '>=', '==', '!=' ];
dselman (Thu, 20 Jul 2017 10:50:01 GMT):
Is all that is supported right now
dselman (Thu, 20 Jul 2017 10:50:31 GMT):
I'll create an issue to add support for array operators
harsha (Thu, 20 Jul 2017 10:55:10 GMT):
Has joined the channel.
baoyangc (Thu, 20 Jul 2017 11:06:28 GMT):
```"ca": {
"url": "https://ca.org1.sdchoi.com:7054",
"name": "ca.org1.sdchoi.com",
"verify": false
}```, what's this verify mean?
adrianasz (Thu, 20 Jul 2017 11:37:05 GMT):
@dselman Thank you. Is it possible to use regex in an expression with '==' ? And is there a way to access linked documents?
davidkel (Thu, 20 Jul 2017 11:39:47 GMT):
@baoyangc see https://fabric-sdk-node.github.io/global.html#TLSOptions for a description
dselman (Thu, 20 Jul 2017 12:23:52 GMT):
@adrianasz no regex support yet
dselman (Thu, 20 Jul 2017 12:24:01 GMT):
or support for joins
ThomasBouquet (Thu, 20 Jul 2017 12:46:00 GMT):
install chaincode
dselman (Thu, 20 Jul 2017 12:49:29 GMT):
?
sstone1 (Thu, 20 Jul 2017 13:03:36 GMT):
@here we've released Hyperledger Composer v0.10.0, with system level access control, improved support for Hyperledger Fabric v1.0 configurations with multiple organisations, and REST API support queries, read all about it on GitHub: https://github.com/hyperledger/composer/releases/tag/v0.10.0 🎉
mahoney1 (Thu, 20 Jul 2017 13:13:34 GMT):
@here - fyi a reminder that today's Composer community call will be at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest Composer release as @sstone just mentioned, and indeed what's upcoming see agenda here -> https://github.com/hyperledger/composer/wiki/Meeting-20th-July-2017 best regards Paul
elrond (Thu, 20 Jul 2017 13:15:49 GMT):
composer common module not found is there error i keep getting whilst trying to run tests. Anony have any ideas?
dselman (Thu, 20 Jul 2017 13:16:57 GMT):
stack trace please
ThomasBouquet (Thu, 20 Jul 2017 13:46:52 GMT):
@davidkel how did you fixed this issue : https://github.com/hyperledger/composer/issues/1184
ThomasBouquet (Thu, 20 Jul 2017 13:47:16 GMT):
I think that I have '/n' in my root certificate too and so it fails
elrond (Thu, 20 Jul 2017 13:49:06 GMT):
@dselman
blockchain@0.0.1 test /home/jan/blockchain
> mocha --recursive -t 4000
module.js:471
throw err;
^
Error: Cannot find module 'composer-common'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.
wael (Thu, 20 Jul 2017 13:56:15 GMT):
Hi I got :
error trying to ping. Error: Deployed chain-code (0.9.1) is incompatible with client (0.10.0) ,
is there any link to what's updated in that version ?
davidkel (Thu, 20 Jul 2017 13:58:10 GMT):
@ThomasBouquet are you using playground ?
ThomasBouquet (Thu, 20 Jul 2017 14:04:02 GMT):
@davidkel No but I have exactly the same issue : 0|composer | E0606 12:00:03.918329093 22 ssl_transport_security.c:611] Could not load any root certificate.
0|composer | E0606 12:00:03.918393517 22 ssl_transport_security.c:1348] Cannot load server root certificates.
0|composer | E0606 12:00:03.918425180 22 security_connector.c:837] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
0|composer | E0606 12:00:03.918445456 22 secure_channel_create.c:127] Failed to create secure subchannel for secure name ‘ldn1-zbc5a.2.secure.blockchain.ibm.com:33521’
0|composer | E0606 12:00:03.918464133 22 secure_channel_create.c:158] Failed to create subchannel arguments during subchannel creation.
ThomasBouquet (Thu, 20 Jul 2017 14:04:46 GMT):
@davidkel So I wonder if it could be the fault of '/n'
ThomasBouquet (Thu, 20 Jul 2017 14:05:19 GMT):
Because I have created a script which read a file and for each line add it to connection.json, I don't copy pas it
davidkel (Thu, 20 Jul 2017 14:05:30 GMT):
@ThomasBouquet did you add /n yourself as that isn't a valid escape character
ThomasBouquet (Thu, 20 Jul 2017 14:07:01 GMT):
To add the cert I use these lines :
ThomasBouquet (Thu, 20 Jul 2017 14:07:03 GMT):
filename="$FABRIC_CFG_PATH/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem"
string=""
while read -r line
do
#remove '/n' at the end of each line
string="$string""$line"
done < "$filename"
echo " \"cert\": \"$string\"" >> ~/.composer-connection-profiles/hlfv1_Org$i/connection.json
mahoney1 (Thu, 20 Jul 2017 14:07:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bnaFvEKiiRJ3BYij2) @Shwetrai hi there - there are multitude of possible reasons why you got the 'failed to load' error - many of them captured here -> https://github.com/hyperledger/composer/issues/1531 (see last comment on this issue tracker). It points at composer-cli not installing properly. Did you install as root or non-root ? What is your npm version
ThomasBouquet (Thu, 20 Jul 2017 14:08:13 GMT):
@davidkel So I read line by line the file ca.example.com-cert.pem and add it to connection.json
davidkel (Thu, 20 Jul 2017 14:09:18 GMT):
@ThomasBouquet as you are putting the embedded cert into a json document, the cert MUST contain escaped newline definitions. The PEM specification requires that each line in the pem file not exceed a certain number of characters, so by not including the new lines the pem text isn't valid
ThomasBouquet (Thu, 20 Jul 2017 14:11:09 GMT):
So I need to include /n right ?
davidkel (Thu, 20 Jul 2017 14:11:27 GMT):
it would be \n but yes
ThomasBouquet (Thu, 20 Jul 2017 14:11:36 GMT):
ok :) thank you
davidkel (Thu, 20 Jul 2017 14:12:04 GMT):
You could always use playground the edit the connection profile and export it for you.
davidkel (Thu, 20 Jul 2017 14:12:04 GMT):
You could always use playground to edit the connection profile and export it for you.
ThomasBouquet (Thu, 20 Jul 2017 14:14:17 GMT):
@davidkel I can't, I have created a script wich ask the user, how many organisations he wants and after for each organisation, how many peers he want. My script needs to fill automatically the connection profile
elrond (Thu, 20 Jul 2017 14:21:43 GMT):
i get this exception now:
IllegalModelException: Undeclared type Person in property Bar.foo.fooProperty
elrond (Thu, 20 Jul 2017 14:21:51 GMT):
i dont have such a property
elrond (Thu, 20 Jul 2017 14:21:58 GMT):
so i havent a clue where this is coming from
elrond (Thu, 20 Jul 2017 14:22:31 GMT):
https://github.com/hyperledger/composer/blob/8910798a545d7d9de5c3c85651da6a7863c7fdf0/packages/composer-common/test/concerto/i18n.js#L200
ThomasBouquet (Thu, 20 Jul 2017 14:28:54 GMT):
Hey I'm facing this issue :
ThomasBouquet (Thu, 20 Jul 2017 14:29:04 GMT):
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My very first Hyperledger Composer Network
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed
Command failed
ThomasBouquet (Thu, 20 Jul 2017 14:29:59 GMT):
Does anyone has an idea ?
mahoney1 (Thu, 20 Jul 2017 14:34:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XyWg99ePkoKcRkCoh) @wael hi, we've just released version 0.10.0 and looks like you've installed the latest Composer version ; if so, then your business network definition needs to be deployed to be compatible with your current runtime - suggest to stop and docker rm
mahoney1 (Thu, 20 Jul 2017 14:34:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XyWg99ePkoKcRkCoh) @wael hi, we've just released version 0.10.0 and looks like you've installed the latest Composer version ; if so, then your business network definition needs to be deployed to be compatible with your current runtime - suggest to stop and docker rm
mahoney1 (Thu, 20 Jul 2017 14:36:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=W4QKLoQMi3nHrZNim) @ThomasBouquet composer -v, docker ps -a, and composer deploy cmd you used please.
mahoney1 (Thu, 20 Jul 2017 14:41:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=r2kZh94rodcGokP9n) @elrond its unclear the context of what operation or action preceded this - can you let us know what action(s) or steps you took leading up to this pls and thanks..
baoyangc (Thu, 20 Jul 2017 14:46:23 GMT):
@sstone1 we want deploy composer to the production environment, do you have any suggestion?
mahoney1 (Thu, 20 Jul 2017 14:48:54 GMT):
@elrond, just seen your previous trace post ; have you done an `npm install` ? - missing node modules suggests you haven't done this..
silliman (Thu, 20 Jul 2017 14:49:22 GMT):
my understanding was the *composer-sample-applications* GitHub repo was updated to support Composer 0.10.0. I just now cloned this repo and have observed that in the *package.json* file for *packages/digitalproperty-app* it is calling for ^0.9.0-0 as a dependency for the composer-* packages. Should I infer that *digitalproperty-app* was not updated to be compatible with Composer 0.10.0 or was this just an oversight in not updating the *package.json* for it?
elrond (Thu, 20 Jul 2017 15:03:56 GMT):
dumb question but my colleague left while logged in w/ his account here, when I log out I don't have an option to create a new acc it just logs me back into his, what should I do?
elrond (Thu, 20 Jul 2017 15:08:22 GMT):
I cleared my cookies for this url of course
corazza (Thu, 20 Jul 2017 15:10:57 GMT):
Has joined the channel.
corazza (Thu, 20 Jul 2017 15:11:01 GMT):
ok done
corazza (Thu, 20 Jul 2017 15:13:01 GMT):
anyway, regarding the issue @elrond asked about (cc @mahoney1): the steps to resolve it were:
1. `rm -rf node_modules`
2. revert `package.json`--there were some unexpected external changes to that file by some other node module (specific versions for dependencies instead of `latest`)
3. `npm install`
Then, the tests and so on worked as well.
ascatox (Thu, 20 Jul 2017 15:16:13 GMT):
A simple question!!! Is it possible to deploy multiple bnas at the same time or deploying one excludes another in composer???
rojanjose (Thu, 20 Jul 2017 15:24:46 GMT):
Has joined the channel.
dselman (Thu, 20 Jul 2017 15:35:39 GMT):
you can deploy as many BNAs as you need to Fabric
mahoney1 (Thu, 20 Jul 2017 15:40:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gCGvG3Dv9W4phuWJ5) @silliman thanks for pointing this out and noted - it will still pull the latest packages so you shouldn't need to update the package.json in your dir..
silliman (Thu, 20 Jul 2017 15:41:21 GMT):
@mahoney1 it installs composer-cli 0.9.2 locally
mahoney1 (Thu, 20 Jul 2017 15:42:20 GMT):
fyi a reminder that today's Composer community call starts in 20 mins: 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - agenda here -> https://github.com/hyperledger/composer/wiki/Meeting-20th-July-2017
silliman (Thu, 20 Jul 2017 15:42:28 GMT):
@mahoney1 e.g. I did a global install of composer-cli and composer --version returns 0.10.0 for all the components but then after doing npm install in *digitalproperty-apps* it does a composer --version as part of postinall and then it returns v0.9.2 for all of the components
mbwhite (Thu, 20 Jul 2017 15:44:02 GMT):
@silliman it's probably worth clearing out the `node_modules` directory in the digitalproperty-app = if there's an old copy of the composer modules there then NPM won't update them.. IF they still match the version specified
silliman (Thu, 20 Jul 2017 15:45:39 GMT):
@mbwhite this was from a fresh system... I think the problem is that this is in package.json
"composer-cli":"^0.9.0-0",
"composer-client":"^0.9.0-0",
mbwhite (Thu, 20 Jul 2017 15:48:00 GMT):
that wouldn't be working they way I would have expected those numbers to be resolved.
mbwhite (Thu, 20 Jul 2017 15:48:12 GMT):
I've fresh Ubuntu vm here .. just trying it
mbwhite (Thu, 20 Jul 2017 15:51:03 GMT):
you're right... is installed 0.9.2..
baoyangc (Thu, 20 Jul 2017 15:51:25 GMT):
why this release is 0.10.0? when will be 0.11.0 or 1.0.0?
silliman (Thu, 20 Jul 2017 15:54:23 GMT):
@mbwhite I know I could just try taking those two dependencies out and see if it plays well with 0.10.0, I was just being lazy and thought I'd ask here first if 0.9.0-0 was left in their for a specific reason :-)
silliman (Thu, 20 Jul 2017 15:54:23 GMT):
@mbwhite I know I could just try taking those two dependencies out and see if it plays well with 0.10.0, I was just being lazy and thought I'd ask here first if 0.9.0-0 was left in there for a specific reason :-)
mbwhite (Thu, 20 Jul 2017 15:55:06 GMT):
@silliman no - it was based on the faulty assumption that the ^0.9.0-0 would select the 0.10.0 version...
mbwhite (Thu, 20 Jul 2017 15:55:38 GMT):
@baoyangc due to the nature of the changes it required the jump.
silliman (Thu, 20 Jul 2017 15:55:58 GMT):
i believe it will change up to the most right-most non-zero digit with the ^ (not 100% sure)
silliman (Thu, 20 Jul 2017 15:56:17 GMT):
so sounds like I could take those two out and let 'er rip against 0.10.0 then
baoyangc (Thu, 20 Jul 2017 15:57:21 GMT):
before v1.0.0, you don't make sure there is no break changes?
sstone1 (Thu, 20 Jul 2017 16:10:01 GMT):
@baoyangc we are following the rules for semantic versioning - when we make breaking changes we have to increase the middle version.
sstone1 (Thu, 20 Jul 2017 16:10:46 GMT):
and we will keep following those rules - so when we publish a v1.0.0 we will only publish compatible changes in v1.x.y
joshhw (Thu, 20 Jul 2017 16:13:40 GMT):
Has joined the channel.
mbwhite (Thu, 20 Jul 2017 16:27:50 GMT):
The example code I was showing on the community call. https://github.com/ampretia/composer-dpn-scenario
mahoney1 (Thu, 20 Jul 2017 16:41:02 GMT):
@here: during the Composer Community call today, I asked about any news on Composer projects you're involved in or building? Please direct message me on Rocketchat or you can email the details to me (will send you email id) if you wish to use that route. The Hyperledger Composer team are building a list of projects and plan to share the list (in summary form) on the Hyperledger Composer website if you're interested. Many thanks. Paul.
theathibm (Thu, 20 Jul 2017 16:59:57 GMT):
Transaction Processor Function: I would like to know how a transaction processor function can return data back to the caller? Synch? Asynch via Event emission?
theathibm (Thu, 20 Jul 2017 17:01:36 GMT):
Also, would like to know if transaction processor functions can be used to "require()" npm modules
theathibm (Thu, 20 Jul 2017 17:01:57 GMT):
currently using composer7.4
dselman (Thu, 20 Jul 2017 17:03:30 GMT):
First, upgrade to Composer v0.10.0
dselman (Thu, 20 Jul 2017 17:03:43 GMT):
You can use emit to return information to the caller
dselman (Thu, 20 Jul 2017 17:04:20 GMT):
No, you cannot require npm modules (TP functions are executed in a non-Node.js environment). We are working with the Fabric team on support for native Node.js execution.
bzeyben (Thu, 20 Jul 2017 17:11:56 GMT):
Has joined the channel.
kletkeman (Thu, 20 Jul 2017 17:26:34 GMT):
@mahoney1 @dselman I am wondering if the historian in Fabric v1 will be exposed through the composer REST server, or is there a separate historian being worked on? I've found this confusing in the past. (Note: from what I heard on our interlock today, the historian is complete and exposed through the SDK. The functionality sounds quite complete -- list of assey key states with txid, read tx and get r/w set, etc.)
gauthampamu (Thu, 20 Jul 2017 17:41:51 GMT):
In composer developer sample, what should we use for the userid and password
gauthampamu (Thu, 20 Jul 2017 17:41:52 GMT):
https://hyperledger.github.io/composer/tutorials/developer-guide.html
gauthampamu (Thu, 20 Jul 2017 17:42:10 GMT):
So far, we've created our business network definition, written a unit test and interactively tested the solution in the Playground.
Now it is time to deploy to a real blockchain! We are going to deploy the BNA (suffix .bna) file to Hyperledger Fabric v1.0; this blockchain environment was set up earlier in this guide.
Switch to the terminal, change directory to the dist folder containing the my-network.bna file and type:
Copy
cd dist
composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
gauthampamu (Thu, 20 Jul 2017 17:42:34 GMT):
Instructions suggest PeerAdmin and password is randomString ? Is this correct...
mahoney1 (Thu, 20 Jul 2017 17:46:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Q8kivvdG2LKHAJPF8) @gauthampamu yes, correct, its random. PeerAdmin isn't a userid, it is purely a label referencing cryptographic material you have imported into your keyValStore defined in your connection profile (as part of the Dev tutorial set up that is).
gauthampamu (Thu, 20 Jul 2017 17:47:22 GMT):
Which script imports into the keystore...
gauthampamu (Thu, 20 Jul 2017 17:47:29 GMT):
the command composer network deploy or curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash
gauthampamu (Thu, 20 Jul 2017 17:48:39 GMT):
The script install-hlfv1.sh output this to screen, where can you find the compose.sh script
gauthampamu (Thu, 20 Jul 2017 17:48:39 GMT):
--------------------------------------------------------------------------------------
Hyperledger Fabric and Hyperledger Composer installed, and Composer Playground launched
Please use 'composer.sh' to re-start, and 'composer.sh stop' to shutdown all the Fabric and Composer docker images
gauthampamu (Thu, 20 Jul 2017 17:49:13 GMT):
Found the file
ploverman (Thu, 20 Jul 2017 17:50:31 GMT):
Has joined the channel.
davidkel (Thu, 20 Jul 2017 18:19:11 GMT):
@gauthampamu it's the install-hlfv1.sh script that creates a connection profile then imports the peer's admin certificates into the profiles keyValStore so you can deploy
mescoba1 (Thu, 20 Jul 2017 18:37:36 GMT):
Has joined the channel.
theathibm (Thu, 20 Jul 2017 19:05:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=W4PFC9LmJtQjDSY8j) @dselman Thanks!!!
gauthampamu (Thu, 20 Jul 2017 21:11:13 GMT):
@davidkel Can you explain what this script actually does install-hlfv1.sh. There is payload in the script, what the purpose of the payload. Also I see that there is creds folder with three files in composer, how is this file generated in this sample. Is it generated using a nodejs application and you just packaged the files created by the nodejs application when store the credentials. ~/composer-data/fabric-dev-servers/fabric-scripts/hlfv1/composer/creds
ScottMorris (Thu, 20 Jul 2017 21:55:16 GMT):
I'm looking at deploying a bna onto one of the sample networks created in the hyperledger fabric samples. based on the discussions that are above, i think I need to setup the composer to deploy the bna. I'm not sure how to get the credentials for the users in the sample network to deploy with once i've setup the composer. Do i have to generate new credentials or do they live on the peers? thx
ScottMorris (Thu, 20 Jul 2017 21:55:16 GMT):
I'm looking at deploying a bna onto one of the sample networks created in the hyperledger fabric samples. based on the discussions that are above, i think I need to setup the composer to deploy the bna. I'm not sure how to get the credentials for the users in the sample network to deploy with once i've setup the composer. Do i have to generate new credentials or do they live on the peers?
I found under the sample code some key files for one of the peers under an organization: the path `basic-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com`
dwakeman (Thu, 20 Jul 2017 22:09:10 GMT):
I have made some changes to my business network that were significant enough that I decided to use `composer network undeploy` to remove it, then `composer network deploy` to redeploy it. That succeeds, but now my composer-rest-server fails with this error:
```Connection fails: Error: error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The business network has been undeployed)```
I restarted my composer-rest-server after I did the redploy. Am I not allowed to redeploy a network with the same name? I did it in this case to get rid of some assets that had bad values in them and there were too many of them to do it one at a time with the rest api.
dwakeman (Thu, 20 Jul 2017 22:16:46 GMT):
Never mind. I see a post from a couple of weeks ago stating that Fabric does not yet support this scenario.
camdenT (Fri, 21 Jul 2017 01:01:38 GMT):
@davidkel awesome, thanks!
camdenT (Fri, 21 Jul 2017 01:12:53 GMT):
I feel dumb for having to ask this question, but what all do I need to do to update Composer to v0.10.0? I want to make sure I don't miss anything. Thanks!
janndogcome (Fri, 21 Jul 2017 04:42:33 GMT):
Has joined the channel.
baoyangc (Fri, 21 Jul 2017 05:07:16 GMT):
``` composer network ping -n banquanjia -i chai22 -s qazZPRhIYNRP -p hlfv1
Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed```
after composer upgrade to v0.10.0,I meet this error
baoyangc (Fri, 21 Jul 2017 05:11:40 GMT):
in the composer-rest-server ,`GET /system/ping` meet error: "message": "error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{\"code\":400,\"message\":\"Authorization failure\"}]]",
baoyangc (Fri, 21 Jul 2017 05:34:40 GMT):
I did that followed the guid `https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html`
davidkel (Fri, 21 Jul 2017 05:35:26 GMT):
@ScottMorris I would first recommend using v0.10.0 of composer as we now support an install/start mechanism which is the new way to deploying composer onto a fabric. You will need to use the `composer identity import` command to import each different peer admin user (and the directory you posted is where you get the admin user for org1) into a composer keyValStore directory. Most fabric examples I have seen make all admins of peers channel admins as well, but if they didn't you would need to import that as well. Once done you would install the runtime on each endorsing peer using `composer runtime install` then you would start a business network using the `composer network start` command. These commands are documented on our website.
davidkel (Fri, 21 Jul 2017 05:51:37 GMT):
@baoyangc when you ran the composer ping command it will look for the identity chai22 in your keyValStore. If it isn't there, it then contacts the CA Server to enroll that user and retrieve the crypto material for that user and store it in the keyValStore as the identity chai22. The error returned is from the CA Server saying that chai22 isn't known to the user or the secret specified is not correct. If you killed your CA Server container and started a new one then you will have lost any issued identities
baoyangc (Fri, 21 Jul 2017 05:53:15 GMT):
really? how about `GET /system/ping`
baoyangc (Fri, 21 Jul 2017 05:54:23 GMT):
my composer-rest-server worked with mongo
baoyangc (Fri, 21 Jul 2017 05:55:11 GMT):
Message Attachments
baoyangc (Fri, 21 Jul 2017 05:55:37 GMT):
there is no certificate in the mongo
baoyangc (Fri, 21 Jul 2017 05:55:49 GMT):
just private key
baoyangc (Fri, 21 Jul 2017 05:56:19 GMT):
@davidkel
baoyangc (Fri, 21 Jul 2017 05:59:42 GMT):
```composer network ping -n banquanjia -i chai22 -s qazZPRhIYNRP -p hlfv1
Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed``` this is ping result
davidkel (Fri, 21 Jul 2017 06:00:19 GMT):
@baoyangc the CA server either has no identity defined called chai22 or the secret is wrong
baoyangc (Fri, 21 Jul 2017 06:01:34 GMT):
not possible
baoyangc (Fri, 21 Jul 2017 06:04:43 GMT):
```composer participant add -p hlfv1 -n 'banquanjia' -i PeerAdmin -s abcd -d '{"$class":"cn.bqj.copyright.BanquanjiaUser","userId":"chai","createTime":"2017-06-29T07:11:44z","email":"sdfas@gmail.com"}'
Participant was added to participant registry.
Command succeeded
```
```composer identity issue -p hlfv1 -n 'banquanjia' -i admin -s 'adminpw' -u chai -a "cn.bqj.copyright.BanquanjiaUser#chai"
An identity was issued to the participant 'cn.bqj.copyright.BanquanjiaUser#chai'
The participant can now connect to the business network with the following details:
userID = chai
userSecret = nVQubkvSzCjP
Command succeeded
```
baoyangc (Fri, 21 Jul 2017 06:06:24 GMT):
```composer network ping -p hlfv1 -n 'banquanjia' -i chai -s nVQubkvSzCjP
Error: error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The current identity has not been registered)
Command failed
```
davidkel (Fri, 21 Jul 2017 06:07:14 GMT):
@baoyangc so as you see from the above, the CA server knew about `chai`.
baoyangc (Fri, 21 Jul 2017 06:07:44 GMT):
why not registered?
baoyangc (Fri, 21 Jul 2017 06:08:32 GMT):
would i need bind an public.key?
baoyangc (Fri, 21 Jul 2017 06:12:21 GMT):
I think that the `composer identity issue ` has register chai to the CA
baoyangc (Fri, 21 Jul 2017 06:12:34 GMT):
so chai should be registered
baoyangc (Fri, 21 Jul 2017 06:13:24 GMT):
i want gen a public.key with openssl from a private.key
baoyangc (Fri, 21 Jul 2017 06:13:41 GMT):
how to do that
baoyangc (Fri, 21 Jul 2017 06:14:01 GMT):
as you know, we cann't use genrsa
davidkel (Fri, 21 Jul 2017 06:16:29 GMT):
@baoyangc chai has been enrolled from the ca and it's crypto material will now be in your keyValStore. The problem you are seeing is a response from the new Identity Manager that was released in 0.10.0 and is part of the composer runtime running in the fabric. Not sure why you are getting this error though
baoyangc (Fri, 21 Jul 2017 06:18:29 GMT):
thanks, maybe I should bind the public.key
davidkel (Fri, 21 Jul 2017 06:21:41 GMT):
@baoyangc No I don't think that will help at this point. I assume you have read the release notes about the breaking changes introduced in this release and especially around system ACLs and updated your BNA accordingly ?
https://github.com/hyperledger/composer/releases
baoyangc (Fri, 21 Jul 2017 06:23:12 GMT):
must add the `systemACL` into permission.acl?
davidkel (Fri, 21 Jul 2017 06:26:49 GMT):
If you haven't defined any system ACLs then this will be the problem
baoyangc (Fri, 21 Jul 2017 06:32:10 GMT):
ok, I will define it
dselman (Fri, 21 Jul 2017 06:44:48 GMT):
@kletkeman do you have a link to the Fabric historian work?
baoyangc (Fri, 21 Jul 2017 07:02:22 GMT):
`"$class": "org.acme.bond.Member",` found this in composer-rest-server
baoyangc (Fri, 21 Jul 2017 07:04:47 GMT):
where this class come from
baoyangc (Fri, 21 Jul 2017 07:05:48 GMT):
got it , it come composer-rest-server
krupabathia (Fri, 21 Jul 2017 07:06:06 GMT):
Hello, I am trying to execute the install-hlfv1.sh file but it is giving me the following error. can someone please help me with it
krupabathia (Fri, 21 Jul 2017 07:06:11 GMT):
Message Attachments
camdenT (Fri, 21 Jul 2017 07:12:08 GMT):
Hey all, after reading the "installing a developer environment" article, I'm a bit confused as to when I should be using the following scripts:
./downloadFabric.sh
./startFabric.sh
./createComposerProfile.sh
./stopFabric.sh
./teardownFabric.sh
At what point in the development process do you run them? The developer tutorial doesn't make any direct comment about these scripts, it just references the developer environment install guide.
When going through the developer tutorial, I receive the following error in the "Deploy to the running Hyperledger Fabric" section. The only script I ran beforehand is the ./downloadFabric.sh .
(is this error happening because I didn't use the other scripts?)
camdenT (Fri, 21 Jul 2017 07:12:21 GMT):
Message Attachments
rodders1991 (Fri, 21 Jul 2017 07:13:53 GMT):
Hi guys, I'm getting a timeout issue when I try to deploy a business network and I don't know where to start on debugging it, here's my stack trace:
```
2017-07-21T07:01:06.134Z INFO ModelManager :info()
namespace org.hyperledger.composer.system
abstract asset Asset { }
abstract participant Participant { }
abstract transaction Transaction identified by transactionId{
o String transactionId
o DateTime timestamp
}
abstract event Event identified by eventId{
o String eventId
o DateTime timestamp
}
{}$
2017-07-21T07:01:06.658Z INFO ConnectionProfileManager :constructor() Created a new ConnectionProfileManager {"0":{"fs":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":512,"O_EXCL":2048,"O_NOCTTY":131072,"O_TRUNC":1024,"O_APPEND":8,"O_DIRECTORY":1048576,"O_NOFOLLOW":256,"O_SYNC":128,"O_SYMLINK":2097152,"O_NONBLOCK":4,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1}}}$
2017-07-21T07:01:06.668Z INFO FSConnectionProfileStore :save() Saved connection profile test_bpapiv1_local {}$
2017-07-21T07:01:06.669Z INFO ConnectionProfileManager :connect() Connecting using test_bpapiv1_local {"0":null}$
2017-07-21T07:01:06.671Z INFO FSConnectionProfileStore :load() Loaded connection profile test_bpapiv1_local {"0":"{\n \"type\": \"hlfv1\",\n \"orderers\": [\n {\n \"url\": \"grpc://localhost:7050\"\n }\n ],\n \"ca\": {\n \"url\": \"http://localhost:8054\",\n \"name\": \"ca.org1.example.com\"\n },\n \"peers\": [\n {\n \"requestURL\": \"grpc://localhost:7051\",\n \"eventURL\": \"grpc://localhost:7053\"\n }\n ],\n \"keyValStore\": \"/Users/georgeormrod/.composer-connection-profiles/test_bpapiv1/credentials\",\n \"channel\": \"mychannel\",\n \"mspID\": \"Org1MSP\",\n \"timeout\": \"700\"\n}"}$
2017-07-21T07:01:06.671Z INFO ConnectionProfileManager :getConnectionManager() Looking up a connection manager for profile {"0":"test_bpapiv1_local"}$
2017-07-21T07:01:06.672Z INFO FSConnectionProfileStore :load() Loaded connection profile test_bpapiv1_local {"0":"{\n \"type\": \"hlfv1\",\n \"orderers\": [\n {\n \"url\": \"grpc://localhost:7050\"\n }\n ],\n \"ca\": {\n \"url\": \"http://localhost:8054\",\n \"name\": \"ca.org1.example.com\"\n },\n \"peers\": [\n {\n \"requestURL\": \"grpc://localhost:7051\",\n \"eventURL\": \"grpc://localhost:7053\"\n }\n ],\n \"keyValStore\": \"/Users/georgeormrod/.composer-connection-profiles/test_bpapiv1/credentials\",\n \"channel\": \"mychannel\",\n \"mspID\": \"Org1MSP\",\n \"timeout\": \"700\"\n}"}$
2017-07-21T07:01:07.929Z INFO ConnectionProfileManager :getConnectionManager() Using this connection manager {"0":{"connectionProfileManager":{"connectionProfileStore":{"fs":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":512,"O_EXCL":2048,"O_NOCTTY":131072,"O_TRUNC":1024,"O_APPEND":8,"O_DIRECTORY":1048576,"O_NOFOLLOW":256,"O_SYNC":128,"O_SYMLINK":2097152,"O_NONBLOCK":4,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1}}}}}$
2017-07-21T07:05:21.329Z ERROR HLFConnection :_instantiate() {"message":"error trying instantiate chaincode. Error: Failed to execute transaction (Timeout expired while executing transaction)","stack":"Error: error trying instantiate chaincode. Error: Failed to execute transaction (Timeout expired while executing transaction)\n at _initializeChannel.then.then.then.then.then.catch (/Users/georgeormrod/.nvm/versions/node/v6.10.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:483:34)"}$
```
Any ideas?
rodders1991 (Fri, 21 Jul 2017 07:15:01 GMT):
My connection profile also:
```
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://localhost:7050"
}
],
"ca": {
"url": "http://localhost:8054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/Users/georgeormrod/.composer-connection-profiles/test_bpapiv1/credentials",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": "700"
}
```
dselman (Fri, 21 Jul 2017 07:15:34 GMT):
@camdenT please feel free to submit a pull request with suggested edits to https://hyperledger.github.io/composer/installing/development-tools.html
dselman (Fri, 21 Jul 2017 07:15:53 GMT):
It sounds like you have not started your fabric
dselman (Fri, 21 Jul 2017 07:16:13 GMT):
Message Attachments
dselman (Fri, 21 Jul 2017 07:17:18 GMT):
@rodders1991 what command are you using to deploy? Did you read the v0.10.0 release notes about system ACLs?
dselman (Fri, 21 Jul 2017 07:18:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uxnKSYqDEPrx5wCiW) @krupabathia looks like a network issue contacting docker hub.
krupabathia (Fri, 21 Jul 2017 07:19:30 GMT):
sure thanks
rodders1991 (Fri, 21 Jul 2017 07:21:10 GMT):
@dselman I'm using this command `composer network deploy -p test_bpapiv1_local -a network.zip -i PeerAdmin -s testIdentity`, I've not yet sorry
ascatox (Fri, 21 Jul 2017 07:23:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=b76Bwzb55mnCQoC4B) @krupabathia If you are behind a corporate proxy, you can try to set the ENV variables ``` export http_proxy="http://127.0.0.1:3128/"
export https_proxy="http://127.0.0.1:3128/"
export HTTP_PROXY="http://127.0.0.1:3128/"
export HTTPS_PROXY="http://127.0.0.1:3128/"```
ascatox (Fri, 21 Jul 2017 07:23:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=b76Bwzb55mnCQoC4B) @krupabathia If you are behind a corporate proxy, you can try to set the ENV variables: ``` export http_proxy="http://127.0.0.1:3128/"
export https_proxy="http://127.0.0.1:3128/"
export HTTP_PROXY="http://127.0.0.1:3128/"
export HTTPS_PROXY="http://127.0.0.1:3128/"```
krupabathia (Fri, 21 Jul 2017 07:24:03 GMT):
these are already set
ascatox (Fri, 21 Jul 2017 07:24:17 GMT):
:thumbsup:
krupabathia (Fri, 21 Jul 2017 07:24:30 GMT):
but still it doesn't work
camdenT (Fri, 21 Jul 2017 07:24:52 GMT):
@dselman so at what point do you need to startFabric and createComposerProfile? right before you want to deploy your bna file?
And when would you do a "stop" versus a "teardown"?
Does the "1st time on new fabric" mean that you have to run createComposerProfile if you're starting up after a teardown?
camdenT (Fri, 21 Jul 2017 07:24:58 GMT):
sorry for all the questions
ascatox (Fri, 21 Jul 2017 07:28:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TAXzdd9eivarufooy) @krupabathia Have a look to this docker link, in the section *Proxy* https://docs.docker.com/engine/admin/systemd/#httphttps-proxy
dstarina (Fri, 21 Jul 2017 07:37:06 GMT):
Hi. Any way to tell Yeoman which version oh Composer to use? I got an error when creating an angular site with yo (also genereated a new REST api), so I had to install new version of composer. Which was fine, but wouldn't be great for production environment.
mahoney1 (Fri, 21 Jul 2017 07:45:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2keg5LCW9JEQGDZep) @camdenT having 'downloaded' Fabric (you've done that), you run 'startFabric' script - then as a first time user - yes, you run createComposerProfile to create a connection profile (so that you can connect to the Fabric runtime from Composer) and it imports the PeerAdmin certificate. So at that point you can run the Composer network deploy command to deploy the business network definition (.bna file). Teardown only comes once you've need to look to recreate an environment
camdenT (Fri, 21 Jul 2017 08:09:12 GMT):
@mahoney1 If I understand correctly, after the first time, I will really only need to use the start and stop commands? I won't really have a need for teardown?
rodders1991 (Fri, 21 Jul 2017 08:19:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mLpgzzxY9nW7pjRxS) @dselman I don't have a ACL specified, so the breaking changes wouldn't make a difference right? Or do I need to specify one?
AlexanderEx123 (Fri, 21 Jul 2017 08:23:25 GMT):
Has joined the channel.
AlexanderEx123 (Fri, 21 Jul 2017 08:24:31 GMT):
Hello guys, i have a problem then trying to use fabric v1 with composer:
Error: error trying deploy. Error: error trying install chaincode. Error: chaincode error (status: 500, message: Authorization for INSTALL has been denied (error-Failed verifying that proposal's creator satisfies local MSP principal during channelless check policy with policy [Admins]: [This identity is not an admin]))
does anybody meet the same error?
krupabathia (Fri, 21 Jul 2017 08:26:16 GMT):
@ascatox - thanks.. it works! :)
ascatox (Fri, 21 Jul 2017 08:27:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=r4MMFtp7s2pCHjHsF) @krupabathia :thumbsup:
baoyangc (Fri, 21 Jul 2017 09:00:53 GMT):
"stack": "Error: error trying to ping. Error: error trying to query chaincode. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)\n at queryChainCode.then.catch (/usr/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:699:34)"
```
how to set composer-rest-server timeout
baoyangc (Fri, 21 Jul 2017 09:01:23 GMT):
```"stack": "Error: error trying to ping. Error: error trying to query chaincode. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)\n at queryChainCode.then.catch (/usr/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:699:34)"```
baoyangc (Fri, 21 Jul 2017 09:02:32 GMT):
got it CORE_CHAINCODE_EXECUTETIMEOUT=90s
ascatox (Fri, 21 Jul 2017 09:11:49 GMT):
A question for the composer experts! Importing a bna using the Playground UI is not exactly the same to make a deploy using the command `composer network deploy`
?
ascatox (Fri, 21 Jul 2017 09:11:49 GMT):
A question for the composer experts! *Importing a BNA* using the Playground UI is not exactly the same to make a deploy using the command `composer network deploy`?
mahoney1 (Fri, 21 Jul 2017 09:14:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PSKTCAJtqoK6YQa4a) @camdenT correct from https://hyperledger.github.io/composer/installing/development-tools.html bullet 3 under step 2 "_If this is the first time, you'll need to download the fabric first. If you have already downloaded then first start the fabric, and create a Composer profile. After that you can then choose to stop the fabric, and start it again later. Alternatively, to completely clean up you can teardown the Fabric and the Composer profile_ "
mahoney1 (Fri, 21 Jul 2017 09:14:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PSKTCAJtqoK6YQa4a) @camdenT correct from https://hyperledger.github.io/composer/installing/development-tools.html bullet 3 under step 2 " _If this is the first time, you'll need to download the fabric first. If you have already downloaded then first start the fabric, and create a Composer profile. After that you can then choose to stop the fabric, and start it again later. Alternatively, to completely clean up you can teardown the Fabric and the Composer profile_ "
mahoney1 (Fri, 21 Jul 2017 09:18:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NtFpBPLb5WT8tXzDg) @AlexanderEx123 Alex - have you set up your environment as described here (including the version setup advocated here) -> https://hyperledger.github.io/composer/installing/development-tools.html
camdenT (Fri, 21 Jul 2017 09:18:54 GMT):
@mahoney1 Okay, thank you! I just wasn't sure what all was meant by "completely clean up"
camdenT (Fri, 21 Jul 2017 09:19:05 GMT):
@dselman Thank you for your help as well!
mahoney1 (Fri, 21 Jul 2017 09:19:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2cg6zB95xi7YfA9nG) @camdenT no worries camdenT, - more than welcome - thanks for the feedback :-)
AlexanderEx123 (Fri, 21 Jul 2017 09:20:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XyAotLDhGWLGirCHN)
AlexanderEx123 (Fri, 21 Jul 2017 09:20:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XyAotLDhGWLGirCHN)
the problem was in using admin:adminpw instead of PeerAdmin then deploy the network
mahoney1 (Fri, 21 Jul 2017 09:26:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WZgcXQcNyGJD62h97) @ascatox correct - Importing is effectively loading the business network definition (eg model, script files, ACLs) into Playground (eg with a view to modifying/testing/validating it) ; whereas `composer network deploy` is deploying the business network definition to a Hyperledger Fabric runtime (v1.0 for example). This can be from Playground or from an archive file on disk.
mahoney1 (Fri, 21 Jul 2017 09:26:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WZgcXQcNyGJD62h97) @ascatox correct - Importing is effectively loading the business network definition (eg model, script files, ACLs) into Playground (eg with a view to modifying/testing/validating it) ; whereas `composer network deploy` is deploying the business network definition to a Hyperledger Fabric runtime (v1.0 for example) - the latter can be from (say) a local Playground or from an archive file on disk
ascatox (Fri, 21 Jul 2017 09:29:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3crNKHsXGz5KGoYBh) @mahoney1 Ok now all is clear! Thanks a lot :slight_smile:
mahoney1 (Fri, 21 Jul 2017 09:43:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NTNHXyEW3jQCBKpo6) @AlexanderEx123 thanks for letting us know!
ShobhanaSundararaman (Fri, 21 Jul 2017 10:01:14 GMT):
I followed the steps to create a composer development environment and when I try to deploy the my-network.bna file to the fabric I get the below error.
ShobhanaSundararaman (Fri, 21 Jul 2017 10:01:21 GMT):
events.js:160
throw er; // Unhandled 'error' event
^
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
ShobhanaSundararaman (Fri, 21 Jul 2017 10:01:37 GMT):
I followed the exact steps as mentioned in the tutorials..
ShobhanaSundararaman (Fri, 21 Jul 2017 10:02:16 GMT):
My env is Ubuntu 16.04, node version is 6.11.1 and npm version is 3.10.10
ShobhanaSundararaman (Fri, 21 Jul 2017 10:02:31 GMT):
I installed everything using sudo command
ShobhanaSundararaman (Fri, 21 Jul 2017 10:02:44 GMT):
Can someone help me with this?
ShobhanaSundararaman (Fri, 21 Jul 2017 10:29:38 GMT):
I don't get this issue when I run on a Azure Ubuntu VM as I need not sudo to run every command. But in AWS Ubuntu VM, for the user "ubuntu" I need to sudo every command
mahoney1 (Fri, 21 Jul 2017 10:31:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TiNZxiN9iz6srced9) @dstarina [ ](https://chat.hyperledger.org/channel/composer?msg=TiNZxiN9iz6srced9) @dstarina on Yeoman - not really. Its an app generator in its own right - the generator creates Angular components based upon the different modelled types. (eg. assets, transactions and participants) which can also be from a business archive file You can connect to an existing running REST API server.
ascatox (Fri, 21 Jul 2017 10:32:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7EQpRXzFbkf4d4r4H) @ShobhanaSundararaman the user you are using to deploy is the owner or has the right permission for reading and writing in .~/.composer-connection-profiles
ascatox (Fri, 21 Jul 2017 10:32:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7EQpRXzFbkf4d4r4H) @ShobhanaSundararaman the user you are using to deploy is the owner or has the right permissions for reading and writing in .~/.composer-connection-profiles
ShobhanaSundararaman (Fri, 21 Jul 2017 10:36:02 GMT):
@ascatox I do not get it. In EC2 Ubuntu I login as ubuntu (I didn't give root or sudo privilege). And the privilegesis
ShobhanaSundararaman (Fri, 21 Jul 2017 10:36:02 GMT):
-rw-rw-r-- 1 ubuntu ubuntu 274 Jul 21 09:55 connection.json
ShobhanaSundararaman (Fri, 21 Jul 2017 10:37:58 GMT):
and I'm runnuing the command "composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString" and it failed with the above error
mahoney1 (Fri, 21 Jul 2017 10:42:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7EQpRXzFbkf4d4r4H) @ShobhanaSundararaman Not sure why you had to use 'sudo' to install Composer on ubuntu and we advocate that you don't use sudo, it causes problems with npm. I would strongly advise to to uninstall the Composer modules eg `npm -g uninstall composer-cli` and install as user 'ubuntu' ie without sudo access. Then run startFabric,sh script - In any case - on the error you posted: can you post the output of `docker ps -a` thanks
ShobhanaSundararaman (Fri, 21 Jul 2017 10:45:01 GMT):
@mahoney1 when i do any npm command with ubuntu (without sudo) I get errors like these
ShobhanaSundararaman (Fri, 21 Jul 2017 10:45:01 GMT):
npm ERR! Error: EACCES: permission denied, access '/usr/lib/node_modules/composer-cli/node_modules/@protobufjs/aspromise'
ShobhanaSundararaman (Fri, 21 Jul 2017 10:45:21 GMT):
formany other folders too
silliman (Fri, 21 Jul 2017 10:45:58 GMT):
```
silliman (Fri, 21 Jul 2017 10:45:58 GMT):
```
npm config get prefix
npm config set prefix $HOME # or some other directory your non-root user can write to
npm config get cache
npm config set cache $HOME/.npm # if it is not already set to something your non-root user can write to
```
doing this should allow you to run npm without sudo
@ShotbhanaSundaraman
silliman (Fri, 21 Jul 2017 10:45:58 GMT):
```
npm config get prefix
npm config set prefix $HOME # or some other directory your non-root user can write to
npm config get cache
npm config set cache $HOME/.npm # if it is not already set to something your non-root user can write to
```
doing this should allow you to run npm without sudo
@ShobhanaSundaraman
silliman (Fri, 21 Jul 2017 10:45:58 GMT):
```
npm config get prefix
npm config set prefix $HOME # or some other directory your non-root user can write to
npm config get cache
npm config set cache $HOME/.npm # if it is not already set to something your non-root user can write to
```
doing this should allow you to run npm without sudo
@ShobhanaSundararaman
ascatox (Fri, 21 Jul 2017 10:46:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AenoKDGFJFByCnScQ) @ShobhanaSundararaman Try to fix with this guide https://docs.npmjs.com/getting-started/fixing-npm-permissions.
mahoney1 (Fri, 21 Jul 2017 10:47:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AenoKDGFJFByCnScQ) @ShobhanaSundararaman right, so its environmental ... Ideally, when you install composer modules globally (eg. composer-cli) you should install using a designated, non-root user. If there are issues (eg, on Ubuntu with permissions to write/update node directories located in system directories like /usr/local or /usr/lib as you wrote of) - the solution is perform the npm install to a *directory you have access to* - rather than resort to root or sudo access, as this is not good practice. Here is what to do to set the npm prefix to a given directory, ...
"npm config set prefix /home/myuser/"
In this case, global binaries are placed in /home/myuser/bin which is in your PATH, and the modules are placed in /home/myuser/lib ...
This is a method to do all the 'global' installs as non-root
mahoney1 (Fri, 21 Jul 2017 10:47:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=R5GxBZspeBPR4hZmP) @ascatox thanks ascatox !
ShobhanaSundararaman (Fri, 21 Jul 2017 11:35:54 GMT):
@mahoney1 and @ascatox Thanks a lot. Changing the npm settings had my bna file deployed succesfully
AlexanderEx123 (Fri, 21 Jul 2017 11:53:46 GMT):
how can i increase timeout for transaction? i have an issue then trying to submit 50 transaction in same time ;(
mahoney1 (Fri, 21 Jul 2017 13:15:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nHjzy6JwmNmL2NtYE) @AlexanderEx123 need to understand where you're seeing the timeout specifically - if you could post the error(s) that you're seeing that would be great, as the nature of the timeout (and any proposed solution) can vary ..
AlexanderEx123 (Fri, 21 Jul 2017 13:20:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aJJewCEqv5dFu7HE4) @mahoney1 Error: error trying to query chaincode. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
AlexanderEx123 (Fri, 21 Jul 2017 13:22:46 GMT):
https://gist.github.com/anonymous/ab8a4bdd56ddc67eab12cfb793db60c4
code that occur this error
mahoney1 (Fri, 21 Jul 2017 13:31:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5R9tPwN8FeMAmHRcQ) @AlexanderEx123 can you post the chaincode logs for the period in question . and the peer logs using docker logs
mahoney1 (Fri, 21 Jul 2017 13:53:39 GMT):
@here sharing a link to a video recording of our Community call yesterday (20th) - would encourage you to check it out ! -> https://drive.google.com/file/d/0B_NJV6eJXAA1MUFnU3ZmRUhpYWs/view and all previous recordings are here -> https://drive.google.com/drive/folders/0B_NJV6eJXAA1b25MdHlXdkM0LWc
ascatox (Fri, 21 Jul 2017 14:06:03 GMT):
A dumb question is macOS fully supported to use and contribute to the composer project?
ascatox (Fri, 21 Jul 2017 14:06:03 GMT):
A dumb question is *macOS* fully supported to use and contribute to the composer project?
mahoney1 (Fri, 21 Jul 2017 14:25:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=avpyrPpHbcE8PPP4v) @ascatox hi there, yes Mac OS 10.12 is currently supported for installing the Composer Dev Tools / Env https://hyperledger.github.io/composer/installing/development-tools.html
ascatox (Fri, 21 Jul 2017 14:26:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HbYqjknKkwEhXv4rK) @mahoney1 Good news, Thanks for the answer!!!
FVLLAM (Fri, 21 Jul 2017 15:37:04 GMT):
Has joined the channel.
DannyWong (Fri, 21 Jul 2017 16:02:25 GMT):
Hi is there any composer feature (or roadmap) to query the history DB of Fabric via Composer?
DannyWong (Fri, 21 Jul 2017 16:02:58 GMT):
as i know even the nodeJS SDK seems has not implemented this feature yet (seems only the Go SDK implemented)
DannyWong (Fri, 21 Jul 2017 16:05:10 GMT):
sorry, seems Go SDK also not implemented
dselman (Fri, 21 Jul 2017 16:07:19 GMT):
Which `shim` method are your referring to?
DannyWong (Fri, 21 Jul 2017 16:10:07 GMT):
fabric/core/ledger/kvledger/history/historydb/historyleveldb/historyleveldb_query_executer.go
dselman (Fri, 21 Jul 2017 16:12:37 GMT):
How is that exposed to chaincode? Is it available?
DannyWong (Fri, 21 Jul 2017 16:13:35 GMT):
or chaincode.go `func (stub *ChaincodeStub) GetHistoryForKey(key string) (HistoryQueryIteratorInterface, error) {`
dselman (Fri, 21 Jul 2017 16:13:52 GMT):
Ah, yes -- GetHistoryForKey.
DannyWong (Fri, 21 Jul 2017 16:18:30 GMT):
so... if SDK/Composer can support this (or even add query) on it.... it will be super nice.
DannyWong (Fri, 21 Jul 2017 16:19:15 GMT):
although most of the time we will work with the "state", however, what makes Fabric special is the historyDB that makes the change readable...
dselman (Fri, 21 Jul 2017 16:19:56 GMT):
We've nothing in the immediate plan to expose that via Composer. It would be good to get some use cases to drive it.
dselman (Fri, 21 Jul 2017 16:20:04 GMT):
```
// KeyModification -- QueryResult for history query. Holds a transaction ID, value,
// timestamp, and delete marker which resulted from a history query.
message KeyModification {
string tx_id = 1;
bytes value = 2;
google.protobuf.Timestamp timestamp = 3;
bool is_delete = 4;
}
```
dselman (Fri, 21 Jul 2017 16:20:45 GMT):
We'd have to think about how a Composer user wanted to consume that
dselman (Fri, 21 Jul 2017 16:22:40 GMT):
keys in Composer are assets or participants, and you can query the transaction registry (soon to become the Historian)
paul.sitoh (Fri, 21 Jul 2017 16:22:58 GMT):
@DannyWong i think i have seen it in blockdecoder. Travelling now. So can't access. Check there.
paul.sitoh (Fri, 21 Jul 2017 16:23:47 GMT):
Not 100per cent
dselman (Fri, 21 Jul 2017 16:27:21 GMT):
I.e. is it more natural to say "find all transactions that update the state of asset x with conditions a, b, c" or to say "give me all transaction for asset x"
javiercuicapuza (Fri, 21 Jul 2017 16:52:48 GMT):
hi guys, one a question
javiercuicapuza (Fri, 21 Jul 2017 16:53:02 GMT):
how yo deploy a bna file in ibm bluemix
javiercuicapuza (Fri, 21 Jul 2017 16:53:10 GMT):
are there a tutorial?
javiercuicapuza (Fri, 21 Jul 2017 16:54:27 GMT):
and how to setting the membership, peer, certificate
anarancio (Fri, 21 Jul 2017 17:01:08 GMT):
@javiercuicapuza first you have to create a profile pointing to your bluemix installation (there is a good response of @sstone1 about each field here: https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service)
anarancio (Fri, 21 Jul 2017 17:01:33 GMT):
after you create the profile you can deploy it using the CLI
anarancio (Fri, 21 Jul 2017 17:01:41 GMT):
composer network deploy command
anarancio (Fri, 21 Jul 2017 17:02:20 GMT):
composer network deploy -p
anarancio (Fri, 21 Jul 2017 17:02:47 GMT):
and after some minutes that should deploy your bna on bluemix
javiercuicapuza (Fri, 21 Jul 2017 17:10:50 GMT):
and is possible to execute the following command: composer-rest-server -p hlfv1 -n basic-sample-network -i admin -s adminpw -N never ?
GregSessions (Fri, 21 Jul 2017 17:23:40 GMT):
Has joined the channel.
GregSessions (Fri, 21 Jul 2017 17:25:07 GMT):
Trying to do a local Composer install on Mac following these instructions: https://hyperledger.github.io/composer/unstable/installing/development-tools.html but this does not result in a running, local composer container. Followed these instructions, https://hyperledger.github.io/composer/unstable/installing/using-playground-locally.html, but can never seem to get a browser connection to the Composer container that results. Anyone done this and documented it?
dselman (Fri, 21 Jul 2017 17:49:17 GMT):
Hey Greg. Any reason you are using the `unstable` docs?
dselman (Fri, 21 Jul 2017 17:49:37 GMT):
Many of the team use/test on Macs. What are you seeing? Got any error messages?
anarancio (Fri, 21 Jul 2017 17:53:07 GMT):
@javiercuicapuza right, after you deploy your bna you should be able to run composer-rest-server but off course you have to do it with the bluemix profile
javiercuicapuza (Fri, 21 Jul 2017 17:56:12 GMT):
@GregSessions what is the problem?
javiercuicapuza (Fri, 21 Jul 2017 17:56:35 GMT):
Message Attachments
GregSessions (Fri, 21 Jul 2017 18:18:29 GMT):
@dselman I don't see any particular error messages.
GregSessions (Fri, 21 Jul 2017 18:21:11 GMT):
@javiercuicapuza Thank you for responding Javier. My goal is to install Composer locally on a Mac. When I follow the instructions to install locally using curl, the process completes successfully and I even see the fabric and composer containers running fine. When I go to connect to localhost:8080, my browser (tried Mozilla and Chrome) cannot find the endpoint.
GregSessions (Fri, 21 Jul 2017 18:23:59 GMT):
@javiercuicapuza what process did you use to install Composer locally?
anarancio (Fri, 21 Jul 2017 18:28:25 GMT):
@GregSessions I used https://hyperledger.github.io/composer/installing/using-playground-locally.html to install composer on my Mac environment
anarancio (Fri, 21 Jul 2017 18:28:38 GMT):
after that I installed the CLI and composer-rest-server
GregSessions (Fri, 21 Jul 2017 18:38:00 GMT):
@javiercuicapuza Thanks Javier. That's what I did. I'll try again and look more carefully for any errors.
javiercuicapuza (Fri, 21 Jul 2017 18:49:53 GMT):
Step 1:
composer archive create -a dist/basic-sample-network.bna --sourceType dir --sourceName .
Step 2:
cd dist
composer network deploy -a basic-sample-network.bna -p hlfv1 -i PeerAdmin -s randomString
composer network ping -n basic-sample-network -p hlfv1 -i admin -s adminpw
Step 3:
cd ..
composer-rest-server
Finally:
composer-rest-server -p hlfv1 -n basic-sample-network -i admin -s adminpw -N never
huizar_mx (Fri, 21 Jul 2017 19:08:09 GMT):
Has joined the channel.
huizar_mx (Fri, 21 Jul 2017 19:15:11 GMT):
Hi Everyone! I'm new to composer. I'm building a business network. I have 2 Assets let's say is A and B, A has an array of relationships to B. I have already created a transaction that affects some properties of B and has some business logic. Now I need to define a transaction that affects A and also has to perform the same operation defined in the first transaction on every B that belongs to that A. My questions are:
s
huizar_mx (Fri, 21 Jul 2017 19:15:11 GMT):
Hi Everyone! I'm new to composer. I'm building a business network. I have 2 Assets let's say is A and B, A has an array of relationships to B. I have already created a transaction that affects some properties of B and has some business logic. Now I need to define a transaction that affects A and also has to perform the same operation defined in the first transaction on every B that belongs to that A. My questions are:
Is there a way to submit a new instance of the first transaction from the function of the second transaction? If not, what is the best practice to reuse code between transactions.
Thanks in advance for your help.
Best Regards
GregSessions (Fri, 21 Jul 2017 20:02:53 GMT):
@javiercuicapuza @anarancio Thank you both for helping me. I don't know exactly what the root of the problem was, but I re-installed Docker and all is well. I think I just messed things up during my install. Learning.
javiercuicapuza (Fri, 21 Jul 2017 20:04:12 GMT):
someone are building all of this https://hyperledger-fabric.readthedocs.io/en/latest/prereqs.html?
salmanbaset (Sat, 22 Jul 2017 03:09:09 GMT):
Has joined the channel.
JunLi_June (Sat, 22 Jul 2017 16:37:55 GMT):
hihi, could anyone help for below? I follow the developer guide tutorial and run the npm test, but it threw error as below,
JunLi_June (Sat, 22 Jul 2017 16:37:58 GMT):
> my-network@0.0.1 doc /home/junli/my-network
> jsdoc --pedantic --recurse -c jsdoc.conf
Cannot parse the config file jsdoc.conf: Error: ENOENT: no such file or directory, open 'jsdoc.conf'
Exiting JSDoc because an error occurred. See the previous log messages for details.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-network@0.0.1 doc: `jsdoc --pedantic --recurse -c jsdoc.conf`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.0.1 doc script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/junli/.npm/_logs/2017-07-22T16_24_39_211Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-network@0.0.1 postlicchk: `npm run doc`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.0.1 postlicchk script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/junli/.npm/_logs/2017-07-22T16_24_39_240Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-network@0.0.1 postlint: `npm run licchk`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.0.1 postlint script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/junli/.npm/_logs/2017-07-22T16_24_39_293Z-debug.log
npm ERR! Test failed. See above for more details.
dselman (Sat, 22 Jul 2017 17:53:14 GMT):
can you try changing package.json to reference jsdoc.json please
dselman (Sat, 22 Jul 2017 17:54:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GnoS75G3zRT6cKR9W) @huizar_mx move the common code into a utility function that you call from the transaction processing functions.
vandan101 (Sat, 22 Jul 2017 19:16:21 GMT):
Hi, can someone please help
I'm creating a sample app and getting the following error, when bizNetworkConnection.Connect(...) is called :
Error: error trying to ping. Error: Deployed chain-code (0.10.0) is incompatible with client (0.9.2)
at queryChainCode.then.catch (/home/rootadmin/composer/my-network/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:699:34)
I installed the composer-cli using the the following command:
**npm install -g composer-cli
installed version is "5.3.0"
OS : Ubuntu 16.04 LTS
huizar_mx (Sat, 22 Jul 2017 20:57:19 GMT):
@dselman I'll try that out. Thanks for your reply!
huizar_mx (Sat, 22 Jul 2017 21:04:04 GMT):
@dselman I really appreciate all your help. I hope you don't mind if I ask you something else, how can I look at the output of the console.log invocations in my TP functions? I'm very new to docker and would be very helpful to help me debug the different TP.
JunLi_June (Sat, 22 Jul 2017 21:29:37 GMT):
@dselman Thanks so much! It works
JGraft (Sat, 22 Jul 2017 21:39:58 GMT):
Trying to better understand how a user would interface with transaction history. If we had a Car asset and a Purchase transaction, is there meant to be a function that would let a user query the Purchase transactions for a specific car? In the composer-rest-server and the node.js client examples, I saw functions for querying an asset registry and but not the transaction history of that asset?
JGraft (Sat, 22 Jul 2017 21:39:58 GMT):
Trying to better understand how a user would interface with transaction history. If we had a Car asset and a Purchase transaction, is there meant to be a function that would let a user query the Purchase transactions for a specific car? In the composer-rest-server and the node.js client examples, I saw functions for querying an asset registry but not the transaction history of that asset?
JunLi_June (Sat, 22 Jul 2017 22:33:05 GMT):
@vandan101 I got similar error. To figured it out, I double checked my composer-cli version and modified the associated data in the package.json file, then it worked, maybe you can try
acevallosh (Sat, 22 Jul 2017 23:39:59 GMT):
Has joined the channel.
hudhaifahz (Sat, 22 Jul 2017 23:55:21 GMT):
Has joined the channel.
UDeshmukh (Sun, 23 Jul 2017 01:41:29 GMT):
Has joined the channel.
vandan101 (Sun, 23 Jul 2017 01:58:45 GMT):
@JunLi_June thank you ... it works now after I made the modifications as well
kostas (Sun, 23 Jul 2017 02:16:31 GMT):
Has joined the channel.
kostas (Sun, 23 Jul 2017 02:24:26 GMT):
Hi everyone, I am giving Composer a go but I'm failing early on in the process. Specifically when I attempt to `npm install -g composer-cli` I get the following: https://gist.github.com/kchristidis/3efaac15138ca67b68e1ff3fed8c66d1
kostas (Sun, 23 Jul 2017 02:24:26 GMT):
Hi everyone, I am giving Composer a go but I'm failing early on in the process. Specifically when I attempt to `npm install -g composer-cli` (Step 1 pretty much) I get the following: https://gist.github.com/kchristidis/3efaac15138ca67b68e1ff3fed8c66d1
kostas (Sun, 23 Jul 2017 02:24:26 GMT):
Hi everyone, I am giving Composer a go but I'm failing early on in the process. Specifically when I attempt to `npm install -g composer-cli` (Step 1 pretty much) I get the following: https://gist.github.com/kchristidis/3efaac15138ca67b68e1ff3fed8c66d1 (the referenced `npm-debug.log` file can be found [here](https://gist.github.com/kchristidis/6b9b67283889b9bf7be49799521387f1))
kostas (Sun, 23 Jul 2017 02:24:41 GMT):
I'd appreciate any pointers. Thanks in advance.
kostas (Sun, 23 Jul 2017 02:24:41 GMT):
I am following [this guide](https://hyperledger.github.io/composer/installing/development-tools.html) and Vagrant environment satisfies the prerequisites. I'd appreciate any pointers you may have. Thanks in advance.
dselman (Sun, 23 Jul 2017 05:27:41 GMT):
Looks like you need to install Python (used by some npm module for native compilation).
dselman (Sun, 23 Jul 2017 05:29:39 GMT):
@JGraft we are working on expanding the transaction registry to capture more metadata, including the assets that are updated, created, modified during transaction processing. We are calling this the Historian. https://github.com/hyperledger/composer/issues?q=is%3Aissue+is%3Aopen+historian+label%3Ahistorian
dselman (Sun, 23 Jul 2017 05:30:46 GMT):
Until the Historian comes online what you can do is add a collection of transactions to your asset model. When a transaction is processed that updates an asset you store the transaction in the asset.
dselman (Sun, 23 Jul 2017 05:32:04 GMT):
Example: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/models/perishable.cto#L61
dselman (Sun, 23 Jul 2017 05:32:44 GMT):
@huizar_mx you can view the logs of a running docker container using the `docker logs` command
dselman (Sun, 23 Jul 2017 05:33:29 GMT):
```
daniels-mbp-2:composer dselman$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5025fa77f355 dev-peer0.org1.example.com-trade-network-0.10.0 "chaincode -peer.a..." 2 days ago Up 2 days dev-peer0.org1.example.com-trade-network-0.10.0
376d03a19bce hyperledger/fabric-peer:x86_64-1.0.0 "peer node start -..." 2 days ago Up 2 days 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
7b70fbd67a89 hyperledger/fabric-couchdb:x86_64-1.0.0 "tini -- /docker-e..." 2 days ago Up 2 days 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
132d8f57483c hyperledger/fabric-orderer:x86_64-1.0.0 "orderer" 2 days ago Up 2 days 0.0.0.0:7050->7050/tcp orderer.example.com
04c214965d91 hyperledger/fabric-ca:x86_64-1.0.0 "sh -c 'fabric-ca-..." 2 days ago Up 2 days 0.0.0.0:7054->7054/tcp ca.org1.example.com
ac4a9e742c8f dev-peer0.org1.example.com-trade-network-0.9.2 "chaincode -peer.a..." 2 days ago Exited (0) 2 days ago dev-peer0.org1.example.com-trade-network-0.9.2
```
dselman (Sun, 23 Jul 2017 05:33:43 GMT):
And then...
dselman (Sun, 23 Jul 2017 05:33:49 GMT):
```
docker logs 5025fa77f355
```
dselman (Sun, 23 Jul 2017 05:34:27 GMT):
Add the `-f` flag to "follow" the logs continuously...
dselman (Sun, 23 Jul 2017 05:34:32 GMT):
`docker logs -f 5025fa77f355`
dselman (Sun, 23 Jul 2017 05:37:20 GMT):
For example, here are the log entries when a query is executed (and the results are filtered by the ACL engine):
dselman (Sun, 23 Jul 2017 05:37:25 GMT):
```
2017-07-20 16:56:18.229 UTC [Composer] Debug -> DEBU 1da1 Exiting Context.getHTTPService 1
2017-07-20 16:56:18.230 UTC [Composer] Debug -> DEBU 1da2 @JS : Engine :invoke() Calling engine function executeQuery
2017-07-20 16:56:18.231 UTC [Composer] Debug -> DEBU 1da3 @JS : EngineQueries :executeQuery() > [object Object], named,selectCommoditiesByType,{"type":"PERISHABLE"}
2017-07-20 16:56:18.231 UTC [Composer] Debug -> DEBU 1da4 @JS : EngineQueries :executeQuery() queryType named
2017-07-20 16:56:18.231 UTC [Composer] Debug -> DEBU 1da5 Entering Context.getDataService &{0xc4201bf680}
2017-07-20 16:56:18.231 UTC [Composer] Debug -> DEBU 1da6 Exiting Context.getDataService 1
2017-07-20 16:56:18.231 UTC [Composer] Debug -> DEBU 1da7 @JS : CompiledQueryBundle :execute() > [object Object], selectCommoditiesByType, [object Object]
2017-07-20 16:56:18.231 UTC [Composer] Debug -> DEBU 1da8 @JS : CompiledQueryBundle :execute() Found query by name lookup
2017-07-20 16:56:18.232 UTC [Composer] Debug -> DEBU 1da9 @JS : CompiledQueryBundle :executeInternal() > [object Object], [object Object], [object Object]
2017-07-20 16:56:18.232 UTC [Composer] Debug -> DEBU 1daa Entering DataService.executeQuery &{0xc4201bf680}
2017-07-20 16:56:18.232 UTC [Composer] Debug -> DEBU 1dab CouchDB query string {"selector":{"$class":"org.acme.trading.Commodity","$registryType":"Asset","$registryId":"org.acme.trading.Commodity","commodityType":{"$eq":"PERISHABLE"}}}
2017-07-20 16:56:18.262 UTC [Composer] Debug -> DEBU 1dac Got an iterator &{0xc420620bd0}
2017-07-20 16:56:18.262 UTC [Composer] Debug -> DEBU 1dad Element index 0
2017-07-20 16:56:18.262 UTC [Composer] Debug -> DEBU 1dae -- key.Key Asset:org.acme.trading.CommodityABC
2017-07-20 16:56:18.262 UTC [Composer] Debug -> DEBU 1daf -- key.Value {"$class":"org.acme.trading.Commodity","$registryId":"org.acme.trading.Commodity","$registryType":"Asset","commodityType":"PERISHABLE","description":"string","mainExchange":"EX","owner":"resource:org.acme.trading.Trader#DAN","quantity":1000,"tradingSymbol":"ABC"}
2017-07-20 16:56:18.263 UTC [Composer] Debug -> DEBU 1db0 Exiting DataService.executeQuery 0
2017-07-20 16:56:18.264 UTC [Composer] Debug -> DEBU 1db1 @JS : CompiledQueryBundle :executeInternal() < [object Object]
2017-07-20 16:56:18.264 UTC [Composer] Debug -> DEBU 1db2 @JS : CompiledQueryBundle :execute() < [object Object]
2017-07-20 16:56:18.266 UTC [Composer] Debug -> DEBU 1db3 @JS : AccessController :check() > org.acme.trading.Commodity#ABC, READ
2017-07-20 16:56:18.266 UTC [Composer] Debug -> DEBU 1db4 @JS : AccessController :check() No participant
2017-07-20 16:56:18.266 UTC [Composer] Debug -> DEBU 1db5 @JS : AccessController :check() <
2017-07-20 16:56:18.269 UTC [Composer] Debug -> DEBU 1db6 @JS : EngineQueries :executeQuery() < [object Object]
```
huizar_mx (Sun, 23 Jul 2017 06:56:44 GMT):
@dselman thank you so much!
davidkel (Sun, 23 Jul 2017 07:37:24 GMT):
@kostas `sudo apt-get install -y python-minimal` will install python v2 which is the version you need.
harsha (Sun, 23 Jul 2017 08:59:32 GMT):
Hi, do we know based on which Dockerfile was https://hub.docker.com/r/hyperledger/composer-playground/ generated ?
sstone1 (Sun, 23 Jul 2017 09:21:01 GMT):
@harsha https://github.com/hyperledger/composer/blob/master/packages/composer-playground/docker/Dockerfile
JGraft (Sun, 23 Jul 2017 13:14:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hQFZ4Tas79oLs6632) @dselman Thank you!
kostas (Sun, 23 Jul 2017 14:18:16 GMT):
@davidkel: That seems to have worked, thank you. (Seems like a requirement for the "Before you begin" section?)
davidkel (Sun, 23 Jul 2017 14:24:20 GMT):
@kostas Thanks. will update the docs. Our pre-req script does check for it but the docs are a little out of date there
RudiDahle (Sun, 23 Jul 2017 19:10:32 GMT):
I have been using the trade-network example and made a few changes to it. I've added multiple types of participants, and several types of assets. I set up the participants like this:
```
abstract participant Actor identified by aId {
o String aId
o String name
}
participant Supervisor extends Actor {
}
participant Worker extends Actor {
}
```
But when I try to do a transaction of an asset from one participant to another I get this error:
```
"error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Object with ID 'Participant:org.acme.move.Actor' in collection with ID '$sysregistries' does not exist)"
```
Why is it trying to look for an Actor when this doesn't even exist in the database? And how may I best solve this?
tmenner (Sun, 23 Jul 2017 20:13:56 GMT):
Has joined the channel.
DannyWong (Mon, 24 Jul 2017 01:35:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mFoMeEw2wx3wd4LSu) @dselman Indeed.
baoyangc (Mon, 24 Jul 2017 03:06:50 GMT):
``` "stack": "Error: error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The current identity has not been registered)\n at queryChainCode.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:707:34)\n at process._tickDomainCallback (internal/process/next_tick.js:135:7)"
```
baoyangc (Mon, 24 Jul 2017 03:06:50 GMT):
but ``` composer network ping -p hlfv1 -i chai3 -s vaoUvyZOhPkr -n banquanjia
The connection to the network was successfully tested: banquanjia
version: 0.10.0
participant: cn.bqj.copyright.BanquanjiaUser#chai3
Command succeeded```
baoyangc (Mon, 24 Jul 2017 03:07:40 GMT):
why when i execute GET /api/system/ping, it throwed error
baoyangc (Mon, 24 Jul 2017 03:09:16 GMT):
i have add ```rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}``` into permissions.acl
vghorakavi (Mon, 24 Jul 2017 03:19:56 GMT):
Has joined the channel.
huizar_mx (Mon, 24 Jul 2017 04:11:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=53j5NyAfpWXJ6zEhH) @RudiDahle Could you share some code of the TP function and the way that you are submitting the transaction to better understand your issue? Best R
adrianblakey (Mon, 24 Jul 2017 04:25:07 GMT):
Is there a tutorial on writing transactions?
adrianblakey (Mon, 24 Jul 2017 04:25:27 GMT):
oh and debugging and testing them?
sstone1 (Mon, 24 Jul 2017 06:30:20 GMT):
@adrianblakey our developer guide shows you some of this: https://hyperledger.github.io/composer/tutorials/developer-guide.html
sstone1 (Mon, 24 Jul 2017 06:30:39 GMT):
i'm (very slowly!) working on a blog that demonstrates how to use VSCode to debug a transaction processor function... need to finish that off
sstone1 (Mon, 24 Jul 2017 06:31:25 GMT):
@baoyangc what version of the composer-rest-server do you have installed? `npm ls -g --depth=0` should tell you
RudiDahle (Mon, 24 Jul 2017 06:35:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hqWz6EjuuYjp64gDX) @huizar_mx By TP function are you refering to the transaction logic? If so, here it is:
```
* @param {org.acme.move.Transfer} transfer - the transfer to be processed
* @transaction
*/
function transferCase(transfer) {
transfer.case.owner = transfer.newOwner;
return getAssetRegistry('org.acme.move.Case')
.then(function (assetRegistry) {
return assetRegistry.update(transfer.case);
});
```
baoyangc (Mon, 24 Jul 2017 06:37:13 GMT):
``` composer-cli@0.10.0
├── composer-common@0.9.0
├── composer-playground@0.8.1
├── composer-rest-server@0.9.1
├── composer-runtime-hlf@0.10.0
├── composer-runtime-hlfv1@0.10.0```
baoyangc (Mon, 24 Jul 2017 06:38:02 GMT):
but ``` composer -v
composer-cli v0.10.0
composer-admin v0.10.0
composer-client v0.10.0
composer-common v0.10.0
composer-runtime-hlf v0.10.0
composer-runtime-hlfv1 v0.10.0```
sstone1 (Mon, 24 Jul 2017 06:38:30 GMT):
is that all the output from npm? i would have expected to see a `composer-rest-server` entry without the `├── ` bit at the front
sstone1 (Mon, 24 Jul 2017 06:39:09 GMT):
in any case, that looks wrong - you should have `0.10.0` of everything
baoyangc (Mon, 24 Jul 2017 06:39:17 GMT):
├── composer-rest-server@0.9.1
baoyangc (Mon, 24 Jul 2017 06:39:52 GMT):
got it. but why the result of `composer -v ` show that all are `0.10.0`
shidosan (Mon, 24 Jul 2017 06:40:10 GMT):
Hi, everyone! I am having trouble running .bna file developed a week ago on Composer online playground. Specifically, it's throwing an error that Identity does not have access to one of the example networks when I am switching to a different user. Last week I did not not have such a problem. Has there been an update to Online Composer Playground? What should I do to fix the problem? Any help is appreciated.
geoms (Mon, 24 Jul 2017 06:41:34 GMT):
Hi, I am trying to use the *Events* from composer. I am able to generate the events.
How to consume the events in an Angular based web app ?
It seems only NodeJS app can consume the events.
sstone1 (Mon, 24 Jul 2017 06:45:31 GMT):
@baoyangc I suspect if you look in `/usr/local/lib/node_modules/composer-cli/node_modules` you will find `0.10.0` versions of all those modules
sstone1 (Mon, 24 Jul 2017 06:45:48 GMT):
the `npm ls -g --depth=0` command should only show things that you have explicitly installed using `npm install -g`
sstone1 (Mon, 24 Jul 2017 06:46:34 GMT):
@shidosan please read the release notes, particularly those around breaking changes and system ACLs: https://github.com/hyperledger/composer/releases/tag/v0.10.0
sstone1 (Mon, 24 Jul 2017 06:47:21 GMT):
@geoms the REST server does not currently support event publication, this is a feature we are keen to add: https://github.com/hyperledger/composer/issues/1177
baoyangc (Mon, 24 Jul 2017 06:47:33 GMT):
got it, thanks
sstone1 (Mon, 24 Jul 2017 06:48:19 GMT):
in the mean time you need to use the Node.js client APIs, or use the Node-RED nodes. Node-RED is an open source integration program, and you can use it to receive Composer events and publish them to a WebSocket.
geoms (Mon, 24 Jul 2017 07:08:09 GMT):
@sstone1 Thanks!
dselman (Mon, 24 Jul 2017 07:33:22 GMT):
@RudiDahle most likely explanation is that you are submitting a trade transaction which has a relationship to you abstract Actor type, rather than your concrete Supervisor or Worker.
RudiDahle (Mon, 24 Jul 2017 07:34:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yoHdniaAqgBvwr86m) @dselman I'll look into that, and I'll try to redefine my transaction class and logic. thank you
RudiDahle (Mon, 24 Jul 2017 08:14:42 GMT):
I tried to make the transaction relate to only the worker. But still the same error. Could it be that the Case also has a relationship to the abstract Actor? How should I define this to make it work?
```
abstract participant Actor identified by aId {
o String aId
o String name
}
participant Supervisor extends Actor {
}
participant Worker extends Actor {
}
```
And the Case definition:
```
asset Case identified by caseNo {
o String caseNo
o DateTime timeStamp optional
--> Actor owner
}
```
sstone1 (Mon, 24 Jul 2017 08:15:57 GMT):
@RudiDahle how did you submit the transaction? using the REST server?
RudiDahle (Mon, 24 Jul 2017 08:16:07 GMT):
Transaction:
```
transaction Transfer {
--> Case case
--> Worker newOwner
}
```
RudiDahle (Mon, 24 Jul 2017 08:16:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SXmR9c2iTCAGfmChx) @sstone1 Yes, I submitted it using the REST server
sstone1 (Mon, 24 Jul 2017 08:16:30 GMT):
please can you provide the JSON request body ?
RudiDahle (Mon, 24 Jul 2017 08:16:46 GMT):
For the transaction?
sstone1 (Mon, 24 Jul 2017 08:16:49 GMT):
yeah
RudiDahle (Mon, 24 Jul 2017 08:18:16 GMT):
```
{
"$class": "org.acme.move.Transfer",
"case": "1",
"newOwner": "002",
"transactionId": "",
"timestamp": "2017-07-24T08:09:21.862Z"
}
```
sstone1 (Mon, 24 Jul 2017 08:26:43 GMT):
`newOwner` needs to be in URI format
sstone1 (Mon, 24 Jul 2017 08:27:04 GMT):
try: `resource:org.acme.move.Supervisor#002`
sstone1 (Mon, 24 Jul 2017 08:27:39 GMT):
@dselman maybe we should ban the old formats at the next semver breaking chance we get? or at least throw errors if you provide just the ID for an abstract type?
pospi (Mon, 24 Jul 2017 09:02:24 GMT):
question: do queries work yet, or am I doing something wrong here:
```
query testQueryByField {
description: "Search TestAssets, matching on testField"
statement:
SELECT net.test.boilerplate.TestAsset
WHERE (testField == _$searchString)
}
```
As far as I can tell from the source code, `==` should be the correct operator, but the query compiler is giving me `Error: Unrecognised type: object, value: {"type":"AssignmentExpression","operator":"=","left":{"type":"Identifier","name":"value"},"right":{"type":"Identifier","name":"_$searchString"}}`.
pospi (Mon, 24 Jul 2017 09:02:52 GMT):
is the parser still a work in progress or should this be doable?
pospi (Mon, 24 Jul 2017 09:10:44 GMT):
(I'm on Composer 0.9.2 btw)
shidosan (Mon, 24 Jul 2017 09:19:25 GMT):
@sstone1 Thanks! Modified the .bna according to new version and it works now.
sstone1 (Mon, 24 Jul 2017 09:25:50 GMT):
@pospi that should work, though the error you have doesn't match with the query file
sstone1 (Mon, 24 Jul 2017 09:26:05 GMT):
it suggests you have a query like `SELECT x WHERE (value = _$searchString)`
pospi (Mon, 24 Jul 2017 09:55:19 GMT):
oh, yes thats weird. possible caching issue...
geoms (Mon, 24 Jul 2017 10:09:08 GMT):
@sstone1 When I am creating an *EVENT* and emit it during a transaction, it is receiving *twice* in the NodeJS app.
geoms (Mon, 24 Jul 2017 10:09:24 GMT):
How to prevent the duplicate event ?
davidkel (Mon, 24 Jul 2017 10:23:55 GMT):
@geoms a common problem when this happens is that you have registered to listen for the event more than once in your client application.
RudiDahle (Mon, 24 Jul 2017 10:37:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HhcdAgAypdqoJK7XD) @sstone1 This got me a bit closer, thank you. This seems to work when I define the owner in URI format when i create an asset. Then it works fine when I try to transfer from Supervisor to Worker. But when I try to transfer the other way around something goes wrong:
```
"message": "Instance org.acme.move.Transfer#7bb2af93-935b-4b09-a78f-813c15e7f650 has property newOwner with type org.acme.move.Supervisor that is not derived from org.acme.move.Worker"
```
indira.kalagara (Mon, 24 Jul 2017 10:39:56 GMT):
Hi ,
I would like to know, how to use DevOps approach for business network deployment to HSBN network on Bluemix ?
I would like to create a delivery pipeline which builds / creates .bna file and deploy to HSBN n/w on Bluemix through toolchain.
Please let me know your thoughts.
geoms (Mon, 24 Jul 2017 11:20:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ke9inpxKQEcx79ZAw) @davidkel I cross checked the client app(NodeJS), I listening only one time for the event. Also when I uploaded the BNA file into composer play ground bluemix, same issue(2 times events are received) is happening.
baoyangc (Mon, 24 Jul 2017 11:46:19 GMT):
@sstone1 could composer update endorserpolicy dynamiclly
davidkel (Mon, 24 Jul 2017 11:46:56 GMT):
@baoyangc No we only support defining the endorsement policy at instantiation time
mahoney1 (Mon, 24 Jul 2017 11:47:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BLfKubC9AZm978Ch4) @indira.kalagara Composer was built understanding the importance of continuous integration and robust testing, staging and promotion processes. Create unit and system tests for business network definitions just as you would for your other code. Use your DevOps best practices of choice. As you mentioned Bluemix, here is an article that can help guide you in that context: https://www.ibm.com/devops/method/content/deliver/practice_delivery_pipeline/
baoyangc (Mon, 24 Jul 2017 11:47:16 GMT):
thanks @davidkel
dselman (Mon, 24 Jul 2017 12:20:33 GMT):
@geoms I'd expect each peer to emit an event. Do you have 2 peers? You can use the eventId to dedupe the events on the client side.
theathibm (Mon, 24 Jul 2017 12:32:47 GMT):
I'm using composer 7.4.0 at the moment. The assetRegistry.find() seems a little slow. As a work around we created a RESTful service to couchdb to get results faster for a couple hundred assets. I'm not found of going directly to the couchdb, and it's probably not proper to do so. But the find() method on the AssetRegistry is just to slow. Any thoughts?
dselman (Mon, 24 Jul 2017 12:45:45 GMT):
Upgrade to v0.10.0 and use the Composer Query Language
dselman (Mon, 24 Jul 2017 12:46:08 GMT):
It compiles queries to CouchDB and exposes the queries over REST
theathibm (Mon, 24 Jul 2017 12:58:03 GMT):
@dselman Thanks!
davidkel (Mon, 24 Jul 2017 12:59:43 GMT):
@geoms So you are saying that you get a notification box saying 2 events triggered when you submit your single transaction in bluemix playground ? I've just tried a simple sample on it and it only emits a single event for me. Is it possible your transaction code invokes emit twice ?
krupabathia (Mon, 24 Jul 2017 13:04:02 GMT):
Hi,
Getting the following error while re creating the .bna file after editing the sample.js in the test folder to run the unit tests
krupabathia (Mon, 24 Jul 2017 13:04:08 GMT):
Message Attachments
elrond (Mon, 24 Jul 2017 13:17:34 GMT):
if i have an id of a transaction on the blockchain, how do i get that transaction as an object as i would an asset?
elrond (Mon, 24 Jul 2017 13:29:06 GMT):
does a getransactionregistry method exist?
dselman (Mon, 24 Jul 2017 13:30:26 GMT):
@krupabathia out of date version of composer-cli or the module dependencies?
dselman (Mon, 24 Jul 2017 13:31:03 GMT):
@elrond the transaction registry is exposed over REST and in the client JS API
krupabathia (Mon, 24 Jul 2017 13:31:33 GMT):
How do I check/correct that.. I cloned the git repository and was following the steps as mentioned in the developer guide?
elrond (Mon, 24 Jul 2017 13:36:27 GMT):
@dselman can the client JS API be used inside a TPF? currently I think I only use it in test code, and in TPFs I use code from composer-common or runtime, not composer-client
elrond (Mon, 24 Jul 2017 13:36:39 GMT):
@dselman which does have a getTransactionRegistry method I believe
dselman (Mon, 24 Jul 2017 13:42:16 GMT):
@elrond you could run a query against the transactions -- I *think* that would work, not tried it however. Alternatively you can associate your transactions with the asset (by modelling a containment relationship). The perisable-network sample does that.
dselman (Mon, 24 Jul 2017 13:42:41 GMT):
@krupabathia in a terminal type `composer --version`
krupabathia (Mon, 24 Jul 2017 13:54:03 GMT):
it is 0.8.1
dselman (Mon, 24 Jul 2017 13:54:35 GMT):
That's what I suspected. You need to run `npm uninstall -g composer-cli`
dselman (Mon, 24 Jul 2017 13:54:48 GMT):
followed by `npm install -g composer-cli`
krupabathia (Mon, 24 Jul 2017 13:56:24 GMT):
ohh.. will try that.. Thank you for your response!
krupabathia (Mon, 24 Jul 2017 14:07:09 GMT):
Works.. the cli is updated to 0.10.0. Hope the tutorial works for this version too.. Thanks again.. :)
krupabathia (Mon, 24 Jul 2017 14:18:53 GMT):
Error while deploying it on the actual network.. How to debug such errors?
krupabathia (Mon, 24 Jul 2017 14:18:58 GMT):
Message Attachments
dselman (Mon, 24 Jul 2017 14:21:22 GMT):
Please run `docker ps -a`
adrianblakey (Mon, 24 Jul 2017 14:22:31 GMT):
@sstone1 TY for the link
krupabathia (Mon, 24 Jul 2017 14:23:22 GMT):
Composer is running
krupabathia (Mon, 24 Jul 2017 14:23:27 GMT):
Message Attachments
adrianblakey (Mon, 24 Jul 2017 14:25:59 GMT):
Is there a simple example transaction that someone could point me to that does a DB/CR i.e. and incoming transaction atomically debits one asset ledger and credits another?
baoyangc (Mon, 24 Jul 2017 14:27:14 GMT):
do we support other data source
baoyangc (Mon, 24 Jul 2017 14:27:26 GMT):
for example: mysql
baoyangc (Mon, 24 Jul 2017 14:28:19 GMT):
@dselman
ScottMorris (Mon, 24 Jul 2017 14:31:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=z5YDXeGQ2DtPmY53H) @davidkel Sorry for interrupting. I'm trying to start my business network using the ```composer network start``` command, and when I run it I get the following error.
```
✖ Starting business network definition. This may take a minute...
Error: error trying to instantiate chaincode. Error: Error: Invalid results returned ::NOT_FOUND
```
I've installed the network via ```composer runtime install`` and got a ```Command succeeded``` message.
ScottMorris (Mon, 24 Jul 2017 14:31:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=z5YDXeGQ2DtPmY53H) @davidkel Sorry for interrupting. I'm trying to start my business network using the `composer network start` command, and when I run it I get the following error.
```
✖ Starting business network definition. This may take a minute...
Error: error trying to instantiate chaincode. Error: Error: Invalid results returned ::NOT_FOUND
```
I've installed the network via `composer runtime install` and got a `Command succeeded` message.
davidkel (Mon, 24 Jul 2017 14:32:40 GMT):
@ScottMorris When you set your fabric up, did you join the peers to the channel ?
ScottMorris (Mon, 24 Jul 2017 14:35:23 GMT):
@davidkel I think so? I stated with one of the samples from the Fabric sample repository called _basic network_. Maybe it didn't join the peers. When I run `docker ps` I see a peer, and orderer and the CA containers running.
davidkel (Mon, 24 Jul 2017 14:36:49 GMT):
@krupabathia are you running inside a provisioned VM ? You could try setting the env var as follows and running the command again `export GRPC_VERBOSITY=DEBUG`
baoyangc (Mon, 24 Jul 2017 14:37:46 GMT):
@davidkel does composer-rest-server support mysql
baoyangc (Mon, 24 Jul 2017 14:37:50 GMT):
?
krupabathia (Mon, 24 Jul 2017 14:38:22 GMT):
@davidkel yes.. I ll try that.. atleast some place to start the debugging would be useful..
kletkeman (Mon, 24 Jul 2017 14:38:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7sKz4dWzCkeP7xigN) @dselman Dan, Jim replied to my query this morning that there is no SDK object for history, which makes sense since that is exposed through the stub and is thus available only to the chaincode itself. Were I using my existing IoT contract platform, I would simply tap into the "getHistoryForKey" feature to trace the transactions to the states. I would presume that Composer would do exactly the same thing, although I don't think the history feature is actually documented. What I could find:
In the module kv_query_result.proto I found this definition, which is one history state for a key:
// KeyModification -- QueryResult for history query. Holds a transaction ID, value,
// timestamp, and delete marker which resulted from a history query.
message KeyModification {
string tx_id = 1;
bytes value = 2;
google.protobuf.Timestamp timestamp = 3;
bool is_delete = 4;
}
The definition of what is in bytes is not shown, nor is it documented. But of course there is the actual code inside module historyleveldb_query_executor.go, which crawls the modifictions in transaction order, looking for writes to the specific namespace and key. The payload is the actual write:
// look for the namespace and key by looping through the transaction's ReadWriteSets
for _, nsRWSet := range txRWSet.NsRwSets {
if nsRWSet.NameSpace == namespace {
// got the correct namespace, now find the key write
for _, kvWrite := range nsRWSet.KvRwSet.Writes {
if kvWrite.Key == key {
return &queryresult.KeyModification{TxId: txID, Value: kvWrite.Value,
Timestamp: timestamp, IsDelete: kvWrite.IsDelete}, nil
}
} // end keys loop
return nil, errors.New("Key not found in namespace's writeset")
} // end if
} //end namespaces loop
return nil, errors.New("Namespace not found in transaction's ReadWriteSets")
Unfortunately, this appears to be all you get.
alisonb (Mon, 24 Jul 2017 14:39:05 GMT):
I just installed v0.10.0 and downloaded the basic sample bna from playground, but when I try to deploy it, it fails:
alisonb (Mon, 24 Jul 2017 14:39:07 GMT):
Deploying business network from archive: basic-sample-network.bna
Business network definition:
Identifier: basic-sample-network@0.1.2
Description: The Hello World of Hyperledger Composer samples
Error: error trying login and get user Context. TypeError: this is not a typed array.
Command failed
alisonb (Mon, 24 Jul 2017 14:39:25 GMT):
Can anyone help with what I did wrong, please?
ScottMorris (Mon, 24 Jul 2017 14:42:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jkEh8sQyQ868MTx4d) @davidkel I've looked through the `start.sh` script that is provided with the _basic-network_ sample and it looks like it joins the peer to the network.
```
# Join peer0.org1.example.com to the channel.
docker exec -e "CORE_PEER_LOCALMSPID=Org1MSP" -e "CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp/users/Admin@org1.example.com/msp" peer0.org1.example.com peer channel join -b mychannel.block
```
ScottMorris (Mon, 24 Jul 2017 14:46:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6CJdaGcfmCc6WmLRS) @alisonb Have you imported an admin peer's identity into the identity store? Or used the admin identity's default credentials?
baoyangc (Mon, 24 Jul 2017 14:48:38 GMT):
hi all, I have configure `COMPOSER_DATASOURCES='{"db": {"name": "db","connector": "mongodb","host": "mongo"}}'`, how change it to be mysql, or redis
baoyangc (Mon, 24 Jul 2017 14:48:55 GMT):
does composer-rest-server support redis?
krupabathia (Mon, 24 Jul 2017 14:50:01 GMT):
@davidkel - It is not able to connect to the peer listening at 7053. The HTTP request is failing with 503 error. "HTTP proxy returned response code 503","file":"../src/core/ext/client_channel/http_connect_handshaker.c","file_line":229}
I am behind a corporate proxy can that be a reason and should I try something else for that?
alisonb (Mon, 24 Jul 2017 14:51:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KD5b5hfBN7aHtZSwq) @ScottMorris I used "-i PeerAdmin -s randomString" - there's a PeerAdmin certificate appeared in the directory pointed to by my connection's keyValStore
alisonb (Mon, 24 Jul 2017 14:51:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KD5b5hfBN7aHtZSwq) @ScottMorris I used "-i PeerAdmin -s randomString" - there's a PeerAdmin certificate appeared in the directory pointed to by my connection's keyValStore
CT123 (Mon, 24 Jul 2017 14:57:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tJf9chPDqeLK8XrWc) @sstone1 I'm working through your developer guide which is quite helpful however we do not use VSCode for a variety of reasons to include some clients refuse to install it. Is there a similar extension for sublime or another editor or can you provide steps for *any* generic editor -- can't imagine that it's required for anyone to have a specific editor or composer plug-in to edit the .cto, .js, . acl files that create a .bna environment. Or what am I missing? Thanks much in advance.
alisonb (Mon, 24 Jul 2017 14:57:42 GMT):
Tried cloudusr@alisonb-ubuntu-16:~/.composer-credentials$ composer identity import -p hlfv1 -u PeerAdmin -c 114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457-pub -k 114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457-priv
Error: failed to import identity. this is not a typed array.
Command failed
cloudusr@alisonb-ubuntu-16:~/.composer-credentials$
CT123 (Mon, 24 Jul 2017 14:58:03 GMT):
Also, you should note that the links to Community within the developer tutorial page fail as an incorrect URL.....
ScottMorris (Mon, 24 Jul 2017 14:59:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gKvrpWeHYB5ZAYeFH) @CT123 The Visual Studio Code extension only is used for syntax highlighting I believe, any text editor should work well, just need to setup the syntax structure in the editor's settings if you want things to look pretty.
CT123 (Mon, 24 Jul 2017 15:00:34 GMT):
Much appreciated - thank you!
ScottMorris (Mon, 24 Jul 2017 15:01:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pK2iL3GETqCm7WKRp) @alisonb I've had to run some of these commands via `sudo` as they require right permissions to places that my user doesn't have permissions to write.
baoyangc (Mon, 24 Jul 2017 15:05:52 GMT):
or do we support replca set of mongodb
davidkel (Mon, 24 Jul 2017 15:08:11 GMT):
@krupabathia you need to change your connection profile from using `localhost` to using the explicit ip address where your fabric is running
mahoney1 (Mon, 24 Jul 2017 15:08:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=a3SwugvGbr3B39K4r) @baoyangc they're loopback datasources so for mysql its "connector": "mysql" in your stanza and ref 'redis' see here -> https://loopback.io/doc/en/lb2/Redis-connector.html and obviously you need to install the connectors
ScottMorris (Mon, 24 Jul 2017 15:13:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fygJsBvuNQKG3HfZ2) @ScottMorris If I try and run the `composer runtime install` command again it gives me an error that paraphrases to _the code already exists_. Is there a way to verify the peer is actually connected?
ScottMorris (Mon, 24 Jul 2017 15:13:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fygJsBvuNQKG3HfZ2) @davidkel If I try and run the `composer runtime install` command again it gives me an error that paraphrases to _the code already exists_. Is there a way to verify the peer is actually connected?
davidkel (Mon, 24 Jul 2017 15:15:58 GMT):
@ScottMorris I got NOT FOUND myself recently doing the start because the peers had not been joined to the channel. You could have a look in both the peer and orderer logs for information. Another thing to check would be that the channel you have created has the correct name in the connection profile
davidkel (Mon, 24 Jul 2017 15:17:26 GMT):
@alisonb these are strange errors. You don't need to import any identities if your keyValStore has PeerAdminas it appears you have. How much memory does your VM have ?
davidkel (Mon, 24 Jul 2017 15:17:26 GMT):
@alisonb these are strange errors. You don't need to import any identities if your keyValStore has PeerAdmin as it appears you have. How much memory does your VM have ?
ScottMorris (Mon, 24 Jul 2017 15:19:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2ZmaxTCJ7xhcSeRNL) @davidkel Thanks so much!! It was the channel, it started successfully after making the composer `connection.json` channel and the channel the Peer was part of match. I can't believe I didn't verify that piece when I was combing over everythign.
mahoney1 (Mon, 24 Jul 2017 15:19:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hTXG4MpjQrZ8MYcvc) @CT123 as @ScottMorris mentioned, its syntax highlighting. You can always use a local install of Playground (one line installer) see here -> https://hyperledger.github.io/composer/installing/using-playground-locally.html to do what you want (with validation/checking of your network scripts/artifacts such as for your model, js, queries etc). For a dev project perspective, you can use Atom editor for example - there's a syntax plugin here -> https://github.com/hyperledger/composer-atom-plugin
alisonb (Mon, 24 Jul 2017 15:22:50 GMT):
@ScottMorris Great, thank you, ran with sudo and now it's complaining:
alisonb (Mon, 24 Jul 2017 15:22:50 GMT):
@ScottMorris Great, thank you, ran with sudo and now it's complaining:
alisonb (Mon, 24 Jul 2017 15:22:50 GMT):
@ScottMorris Great, thank you, ran with sudo and now it's complaining: Error: failed to import identity. Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1". Error: Module version mismatch. Expected 48, got 46.
but composer --version shows: composer-cli v0.10.0
composer-admin v0.10.0
composer-client v0.10.0
composer-common v0.10.0
composer-runtime-hlf v0.10.0
composer-runtime-hlfv1 v0.10.0
ScottMorris (Mon, 24 Jul 2017 15:30:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PnbBq2SgZMhw36q7S) @alisonb I haven't run into this exact issue myself, maybe there was a package update recently that bumped the version number up?
mahoney1 (Mon, 24 Jul 2017 15:38:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PnbBq2SgZMhw36q7S) @alisonb hi Alison, how are you? The errors suggest that the Composer env was built on another [virtual] machine or environment and imported /copied by some method into a Cloud environment. Is this true or was the environment built in a Cloud virtual instance? The error "Module version mismatch" suggests so. 2) Composer should not be installed using sudo (and you won't need to in future) - because it can (in essence) cause problems that yield install issues such as the failure message you added 3) The syntax of the identity import isn't correct and it seems you already have PeerAdmin (only judging by the files you are sourcing) from your identity CLI usage.
mahoney1 (Mon, 24 Jul 2017 15:38:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PnbBq2SgZMhw36q7S) @alisonb hi Alison, how are you? The errors suggest that the Composer env was built on another [virtual] machine or environment and imported /copied by some method into a Cloud environment. Is this true or was the environment built in a Cloud virtual instance? The error "Module version mismatch" suggests the 'former'. 2) Composer should not be installed using sudo (and you won't need to in future) - because it can (in essence) cause problems that yield install issues such as the failure message you added 3) The syntax of the identity import isn't correct and it seems you already have PeerAdmin (only judging by the files you are sourcing) from your identity CLI usage.
mahoney1 (Mon, 24 Jul 2017 15:38:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PnbBq2SgZMhw36q7S) @alisonb hi Alison, how are you? The errors suggest that the Composer env was built on another [virtual] machine or environment and imported /copied by some method into a Cloud environment. Is this true or was the environment built in a Cloud virtual instance? The error "Module version mismatch" suggests the 'former'. 2) Composer should not be installed using sudo (and you won't need to in future) - because it can (in essence) cause problems that yield install issues such as the failure message you added 3) The syntax of the identity import isn't correct and it seems you already have PeerAdmin imported (only judging by the files you are sourcing) from your identity CLI usage.
ScottMorris (Mon, 24 Jul 2017 15:48:23 GMT):
I'm trying to generate the Angular client and when I run `yo` and select Angular it blows up without any intervention from me. Has anyone tried out the Angular client before?
```
fvadmin@ubuntu-hyperledger:~$ sudo yo hyperledger-composer
Welcome to the Hyperledger Composer project generator
? Please select the type of project: Angular
You can run this generator using: 'yo hyperledger-composer:angular'
Welcome to the Hyperledger Composer Angular project generator
? Do you want to connect to a running Business Network? (y/N)
events.js:160
throw er; // Unhandled 'error' event
^
Error: EACCES: permission denied, open 'logs/trace_61769.log'
at Error (native)
fvadmin@ubuntu-hyperledger:~$
```
arbfay (Mon, 24 Jul 2017 16:03:22 GMT):
Does anyone have ever written kind of tutorial on how to deploy a Fabric network + BNA with Composer on a REMOTE Linux server (AWS, DigitalOcean)?
I tried for days, solving bugs after bugs :sob:
arbfay (Mon, 24 Jul 2017 16:03:22 GMT):
Have anyone ever written kind of tutorial on how to deploy a Fabric network + BNA with Composer on a REMOTE Linux server (AWS, DigitalOcean)?
I tried for days, solving bugs after bugs :sob:
alisonb (Mon, 24 Jul 2017 16:03:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qD5pFX3taRW3AgQou) @mahoney1 I used npm install from Ubuntu
mahoney1 (Mon, 24 Jul 2017 16:05:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ePAyMFfRbGKNSmQEQ) @ScottMorris hi Scott - is your business network up and running ? Also (difficult to see from screenshot) did you respond 'Yes' to connect to a running Business Network ? As mentioned earlier (and noted in your output - ' permission denied' ) using sudo can cause problems. Ideally, when you install composer modules globally (eg. composer-cli) you should install using a designated, non-root user (and thereafter you run composer tools as a non-privileged user). If there are issues (eg, such as you're seeing, eg. on Ubuntu with permissions to write/update node directories located in system directories like /usr/local) - the solution is perform the initial composer npm install to a directory you have access to - rather than resort to root or superuser /sudo access, as this is not good practice. Here is what to do to set the npm prefix to a given directory, ...
"npm config set prefix /home/myuser/"
In this case, global binaries are placed in /home/myuser/bin which is in your PATH, and the modules are placed in /home/myuser/lib
mahoney1 (Mon, 24 Jul 2017 16:12:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FBYRPSCurfXhkjgYf) @arbfay what kind of issues - does your remote server outbound access to WWW to install as non-root user ? How much memory (Gbs) etc etc. Are you using Dockerized Fabric runtime in your remote environment?
kvnlee (Mon, 24 Jul 2017 16:13:13 GMT):
Hi all, is it possible to make a REST API call to get the current block height from a running Fabric? I tried making a GET from Postman doing http://
mahoney1 (Mon, 24 Jul 2017 16:25:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MjE3JEAtdbTh6Q5Y4) @kvnlee this is a Fabric concept - Composer generally exposes business network related operations/schema (eg. assets, participants, transactions) over REST. This Stack Overflow answer might be useful to you -> https://stackoverflow.com/questions/45172999/how-to-check-the-blockchain-height-in-hyperledger-fabric
arbfay (Mon, 24 Jul 2017 16:31:20 GMT):
@mahoney1 right now, I'm stuck with this error when I try to deploy a basic-sample-network :
```~/my-network/dist# composer network deploy -a my-netwo rk.bna -p hlfv1 -i PeerAdmin -s randomString
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: basic-sample-network@0.1.1
Description: The Hello World of Hyperledger Composer samples
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1". Error: Cannot find module '/root/.nvm/versions/node/v6.11.1/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/grpc_node.node'
Command failed```
arbfay (Mon, 24 Jul 2017 16:33:19 GMT):
@mahoney1 Here is what I have in the path ``/root/.nvm/versions/node/v6.11.1/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/`` :
```ext index.js README.md src```
arbfay (Mon, 24 Jul 2017 16:33:19 GMT):
@mahoney1 Here is what I have in the path `/root/.nvm/versions/node/v6.11.1/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/` :
```ext index.js README.md src```
arbfay (Mon, 24 Jul 2017 16:34:44 GMT):
Of course, I tried to reinstall composer-cli
mahoney1 (Mon, 24 Jul 2017 16:38:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=64v6XSdahdKwMfdXR) @alisonb could you confirm your npm and node (-v) versions please? Reading about this it could be that 1) usually happens when you install a package (such as composer-cli) using one version of Node, then change to a different version. 2) This can happen when you update or upgrade Node 3) It can also happen if you're trying to run a process as root with a globally installed Node. I would definitely recommend uninstalling composer and re-installing given the 'Node mismatch' and 'failed to load' errors. If you're using NVM, I would (as the non-root user) set your global node version using (eg.) `nvm use 6.11.1`
ScottMorris (Mon, 24 Jul 2017 16:41:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=doSZBQHoZtZCZ4Zy5) @mahoney1 There was somepoint where I ran `sudo`and ended up installing things as root. Since this is a test machine I ran with it. I've since found this article talking about configuring _npm_ to run non-privileged. https://github.com/sindresorhus/guides/blob/master/npm-global-without-sudo.md
As for my answer to the _Do you want to connect to a running Business Network? (y/N)_ question, I never had a chance to say _y_ or _n_ to it, the error comes out immediately after it prints that question to the screen. So I'm not sure what is generating the error.
ScottMorris (Mon, 24 Jul 2017 16:41:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=doSZBQHoZtZCZ4Zy5) @mahoney1 There was somepoint where I ran `sudo`and ended up installing things as root. Since this is a test machine I ran with it. I've since found this article talking about configuring _npm_ to run non-privileged. https://github.com/sindresorhus/guides/blob/master/npm-global-without-sudo.md
As for my answer to the _Do you want to connect to a running Business Network? (y/N)_ question, I never had a chance to say _y_ or _n_ to it, the error comes out immediately after it prints that question to the screen. So I'm not sure what is generating the error.
Another issue is the log file that it says it generates doesn't seem to exist anywhere...
ScottMorris (Mon, 24 Jul 2017 16:41:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=doSZBQHoZtZCZ4Zy5) @mahoney1 There was somepoint where I ran `sudo`and ended up installing things as root. Since this is a test machine I ran with it. I've since found this article talking about configuring _npm_ to run non-privileged. https://github.com/sindresorhus/guides/blob/master/npm-global-without-sudo.md Do you know if it is possible to change the prefix now that stuff is setup under root? Or did I need to rebuild the system?
As for my answer to the _Do you want to connect to a running Business Network? (y/N)_ question, I never had a chance to say _y_ or _n_ to it, the error comes out immediately after it prints that question to the screen. So I'm not sure what is generating the error.
Another issue is the log file that it says it generates doesn't seem to exist anywhere...
baoyangc (Mon, 24 Jul 2017 16:48:09 GMT):
` GMT strong-globalize *** f63af79ff8a01dcd636897df49f5c1fb not found for en. Fall back to: "must provide a valid SharedClass" *** Error: E_MISSING_MESSAGE: Missing required message content `f63af79ff8a01dcd636897df49f5c1fb`.`
baoyangc (Mon, 24 Jul 2017 16:48:27 GMT):
why there is this error
mahoney1 (Mon, 24 Jul 2017 16:49:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bcuRmLpkHweQLK2u3) @ScottMorris 1) on sudo - cool, all sorted. 2) Oh, I see, not good! - on `sudo yo hyperledger-composer` - what is the output of `docker ps -a` ? What happens if you JUST run `yo hyperledger-composer` the selection should say 'Angular 2 project' ? And (assuming its running) for your running business network, what is the output of `composer network ping -n digitalproperty-network -p hlfv1 -i admin -s adminpw ` ? (replace 'digitalproperty-network' with
mahoney1 (Mon, 24 Jul 2017 16:57:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bcuRmLpkHweQLK2u3) @ScottMorris ps. on prefix, not sure you can change to retrofit what's already been installed, as its an install-time thing (and an NPM thing). https://docs.npmjs.com/getting-started/fixing-npm-permissions
dselman (Mon, 24 Jul 2017 16:59:34 GMT):
You should not `npm install` as root... You will end up with your globally installed modules in the wrong place and with dangerous permissions.
dselman (Mon, 24 Jul 2017 16:59:44 GMT):
There should be no need to run as root to use Composer.
mahoney1 (Mon, 24 Jul 2017 17:03:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=cKef9Tvj56Jqat9pM) @dselman we will add a note to the docs here to help matters -> https://hyperledger.github.io/composer/installing/development-tools.html
dselman (Mon, 24 Jul 2017 17:03:37 GMT):
we use to have that in the docs... did it get lost?
arbfay (Mon, 24 Jul 2017 17:06:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Epsx8CijDsoH7dDko) @arbfay I found a solution. I uninstalled composer-cli globally and reinsalled with `--unsafe-perm`...
So I ran ```npm remove -g composer-cli && npm install -g composer-cli --unsafe-perm```
Then the deployment was successful
mahoney1 (Mon, 24 Jul 2017 17:10:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rqLjYWcRh5HMKmQNY) @dselman correct, we used to
mahoney1 (Mon, 24 Jul 2017 17:18:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dotqamw6seMLvsQZg) @arbfay ok thanks
arbfay (Mon, 24 Jul 2017 17:25:25 GMT):
After trying to generate a REST API, I got that error :
```To restart the REST server using the same options, issue the following command:
composer-rest-server -p hlfv1 -n my-network -i admin -s adminpw -N never
Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for conn ection profile "hlfv1"
It will be retried for the next request.
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hl fv1"
at connectionProfileStore.load.then.e (/root/.nvm/versions/node/v6.11.1/lib/node_modules /composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:151:27)
```
arbfay (Mon, 24 Jul 2017 17:32:32 GMT):
Same solution, going with ``--unsafe-perm`` for ``composer-rest-server``
Is it because I am root user that I have to do that? So we should rather don't use Composer as root users?
arbfay (Mon, 24 Jul 2017 17:32:32 GMT):
Same solution, going with `--unsafe-perm` for `composer-rest-server`
Is it because I am root user that I have to do that? So we should rather don't use Composer as root users?
javiercuicapuza (Mon, 24 Jul 2017 17:52:04 GMT):
Message Attachments
javiercuicapuza (Mon, 24 Jul 2017 17:54:17 GMT):
and now we need to persist the data and create a network where a lot of people can to connect
javiercuicapuza (Mon, 24 Jul 2017 17:54:47 GMT):
can you help me :pray:
javiercuicapuza (Mon, 24 Jul 2017 17:55:54 GMT):
i am reading this https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html but i don't understand
mahoney1 (Mon, 24 Jul 2017 18:03:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wTQLpFpJfqW9J6bz4) @arbfay Yes. You should not `npm install` as root... You will end up with your globally installed modules in the wrong place and with dangerous permissions. There should be no need to run as root to use Composer.
nehalshah50 (Mon, 24 Jul 2017 19:15:05 GMT):
Message Attachments
nehalshah50 (Mon, 24 Jul 2017 19:15:05 GMT):
Message Attachments
mahoney1 (Mon, 24 Jul 2017 19:23:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GXNmJ6Lz5MPSMvpv4) @javiercuicapuza hi there - The REST server should be configured with a LoopBack connector that stores data in a highly available data source, such as a NOSQL database. To do this, you would use (and install) a loopback connector for that database. Then your REST server will be able to connect (once the datasource for that DB is configured). The Composer REST server is configured using environment variables, as shown on Docs page https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html, Once configured and the business network is discovered,and the REST server available on your network, your REST API client / browser can connect to the Composer business network and perform operations as normal.
mahoney1 (Mon, 24 Jul 2017 19:25:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ps2Nth67iG3gT3Mxy) @nehalshah50 'identified by' is not required, this was changed in version 0.9.2 from memory. See the Composer Playground for an example: eg. ```transaction SampleTransaction {
--> SampleAsset asset
o String newValue
}```
mahoney1 (Mon, 24 Jul 2017 19:25:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ps2Nth67iG3gT3Mxy) @nehalshah50 'identified by' is not required, this was changed in version 0.9.2 from memory. See the Composer Playground https://composer-playground.mybluemix.net/editor for an example: eg. ```transaction SampleTransaction {
--> SampleAsset asset
o String newValue
}```
javiercuicapuza (Mon, 24 Jul 2017 19:53:23 GMT):
@mahoney1 thanks, Where should I configure it.
javiercuicapuza (Mon, 24 Jul 2017 19:53:35 GMT):
Message Attachments
javiercuicapuza (Mon, 24 Jul 2017 19:54:59 GMT):
I only execute this to start our environment cd ~/fabric-tools
./downloadFabric.sh
./startFabric.sh
./createComposerProfile.sh
adrianblakey (Mon, 24 Jul 2017 20:02:52 GMT):
test message
dselman (Mon, 24 Jul 2017 20:03:38 GMT):
@javiercuicapuza if you start that server, and then use IP addresses in your connection profile, then any number of people could access it as a shared server.
javiercuicapuza (Mon, 24 Jul 2017 20:09:48 GMT):
is it not necessary create a certificate by the other user?
dselman (Mon, 24 Jul 2017 20:17:54 GMT):
Please read the docs on adding participants and issuing identities
JennFoley (Mon, 24 Jul 2017 20:25:13 GMT):
Hi all, does anyone know if Composer-Playground at prior versions (.9.1 or .9.2) are gone? I'm getting the following: ```linux1@journey-bc1:/data/linux1> npm install -g composer-playground@9.1
npm ERR! Linux 4.4.59-92.17-default
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g" "composer-playground@9.1"
npm ERR! node v6.9.5
npm ERR! npm v3.10.10
npm ERR! code ETARGET
npm ERR! notarget No compatible version found: composer-playground@9.1
npm ERR! notarget Valid install targets:
npm ERR! notarget 0.10.1-20170724192647, 0.10.1-20170724110825, 0.10.1-20170724100623, 0.10.1-20170724084400, 0.10.1-20170724013518, 0.10.1-20170723212902, 0.10.1-20170723144039, 0.10.1-20170723114008, 0.10.1-20170723013408, 0.10.1-20170722175103, 0.10.1-20170721170215, 0.10.1-20170721114620, 0.10.1-20170721093446, 0.10.1-20170721013337, 0.10.1-20170720171011, 0.10.1-20170720141313, 0.10.1-20170720130758, 0.10.0, 0.10.0-20170720115823, 0.10.0-20170720064757, 0.10.0-20170720013307, 0.10.0-20170720001703, 0.10.0-20170719175959, 0.10.0-20170719125025, 0.10.0-20170719110146, 0.10.0-20170719013324, 0.10.0-20170718230718, 0.10.0-20170718222741, 0.10.0-20170718215014, 0.10.0-20170718162410, 0.10.0-20170718103921, 0.10.0-20170718091803, 0.10.0-20170718013203, 0.10.0-20170717170048, 0.9.3-20170717141333, 0.9.3-20170717123902, 0.9.3-20170717093332, 0.9.3-20170717085755, 0.9.3-20170717013352, 0.9.3-20170716013419, 0.9.3-20170714211206, 0.9.3-20170714141839, 0.9.3-20170714125110, 0.9.3-20170714114055, 0.9.3-20170714013508, 0.9.3-20170713154628, 0.9.2, 0.9.2-20170713104326, 0.9.2-20170713013748, 0.9.2-20170712191321, 0.9.2-20170712122719, 0.9.2-20170712101339, 0.9.2-20170712013730, 0.9.2-20170711194349, 0.9.2-20170711160346, 0.9.2-20170711100540, 0.9.2-20170711013616, 0.9.2-20170710204448, 0.9.2-20170710013425, 0.9.2-20170709013623, 0.9.2-20170708013516, 0.9.2-20170707134618, 0.9.2-20170707093530, 0.9.2-20170707084747, 0.9.2-20170707013550, 0.9.2-20170706210417, 0.9.2-20170706193051, 0.9.2-20170706172419, 0.9.2-20170706163301, 0.9.2-20170706133401, 0.9.1, 0.9.1-20170706174224, 0.9.1-20170706091101, 0.9.1-20170705233136, 0.9.1-20170705215533, 0.9.1-20170705173733, 0.9.1-20170705134508, 0.9.1-20170705130753, 0.9.1-20170705122141, 0.9.1-20170705110430, 0.9.1-20170705091813, 0.9.1-20170705080624, 0.9.1-20170705013313, 0.9.1-20170704215055, 0.9.1-20170704195406, 0.9.1-20170704170050, 0.9.1-20170704161018, 0.9.1-20170704153112, 0.9.1-20170704144606, 0.9.1-20170704091039, 0.9.1-20170704075743, 0.9.1-20170704063254, 0.9.1-20170704013139, 0.9.1-20170703172042, 0.9.1-20170703142206, 0.9.1-20170703134827, 0.9.1-20170703114731, 0.9.1-20170703102219, 0.9.1-20170703094214, 0.9.1-20170703013146, 0.9.1-20170702150150, 0.9.1-20170701113005, 0.9.1-20170701101756, 0.9.1-20170701093201, 0.9.1-20170701012849, 0.9.1-20170630154149, 0.9.0, 0.9.0-20170630131714, 0.9.0-20170630120930, 0.9.0-20170630111036, 0.9.0-20170630101328, 0.9.0-20170630012831, 0.9.0-20170629193010, 0.9.0-20170629143322, 0.9.0-20170629133414, 0.9.0-20170629131100, 0.9.0-20170629090600, 0.9.0-20170629081450, 0.9.0-20170629013118, 0.9.0-20170628231010, 0.9.0-20170628164930, 0.9.0-20170628090531, 0.9.0-20170628075608, 0.9.0-20170628013101, 0.9.0-20170627220132, 0.9.0-20170627164838, 0.9.0-20170627153207, 0.9.0-20170627102828, 0.9.0-20170627091831, 0.9.0-20170627081948, 0.9.0-20170627012847, 0.9.0-20170626224354, 0.9.0-20170626131511, 0.9.0-20170626124243, 0.9.0-20170626100418, 0.9.0-20170626012707, 0.9.0-20170625012751, 0.9.0-20170624142630, 0.9.0-20170624133851, 0.9.0-20170624012558, 0.9.0-20170623172712, 0.9.0-20170623130352, 0.9.0-20170623122804, 0.9.0-20170623102701, 0.9.0-20170623101407, 0.9.0-20170623012723, 0.9.0-20170622165635, 0.9.0-20170622145250, 0.9.0-20170621102802, 0.9.0-20170620162939, 0.9.0-20170620133801, 0.9.0-20170620120252, 0.8.2-20170622115410, 0.8.1, 0.8.1-20170622090108, 0.8.1-20170622080828, 0.8.1-20170622012741, 0.8.1-20170621195318, 0.8.1-20170621164943, 0.8.1-20170621152351, 0.8.1-20170621140644, 0.8.1-20170621133629, 0.8.1-20170621120037, 0.8.1-20170621114714, 0.8.1-20170621080312, 0.8.1-20170621012511, 0.8.1-20170620112952, 0.8.1-20170620072547, 0.8.1-20170620024939, 0.8.1-20170620023202, 0.8.1-20170620014620, 0.8.1-20170620012447, 0.8.1-20170619211155, 0.8.1-20170619160931, 0.8.1-20170619142352, 0.8.1-20170619125346, 0.8.1-20170619111330, 0.8.1- . . . .
npm ERR! notarget
npm ERR! notarget This is most likely not a problem with npm itself.
npm ERR! notarget In most cases you or one of your dependencies are requesting
npm ERR! notarget a package version that doesn't exist.
npm ERR! Please include the following file with any support request:
npm ERR! /data/linux1/npm-debug.log```
adrianblakey (Mon, 24 Jul 2017 20:27:46 GMT):
Are there any plans for the tutorials to run on RHEL 7? Or do you want some feedback on my attempts to get it to work?
dselman (Mon, 24 Jul 2017 20:30:02 GMT):
We'd love feedback, preferably as a Pull Request! :-)
adrianblakey (Mon, 24 Jul 2017 20:31:02 GMT):
OK - let's see what I can do
JennFoley (Mon, 24 Jul 2017 20:36:33 GMT):
I figured out my error. Is it worth opening an issue for consistency with npms?
adrianblakey (Mon, 24 Jul 2017 20:55:27 GMT):
Is it essential to run the AUFS storage driver on Linux? Or will overlay suffice - since that's what comes ootb with RHEL.
davidkel (Mon, 24 Jul 2017 21:14:01 GMT):
@adrianblakey That depends I guess, if it works then it would be fine for a development machine.
malhotrasumi1990 (Tue, 25 Jul 2017 05:33:54 GMT):
Has joined the channel.
malhotrasumi1990 (Tue, 25 Jul 2017 05:34:06 GMT):
Hi Team,
malhotrasumi1990 (Tue, 25 Jul 2017 05:59:05 GMT):
I am trying to deploy my .bna file on my Bluemix (Hyperledger 1.0). After creating the connection Profile from my local Fabric composer, when I am trying to deploy the same on Bluemix , I am getting and Error : "Error and Connection Profile screenshot Attached"
malhotrasumi1990 (Tue, 25 Jul 2017 06:00:52 GMT):
Message Attachments
malhotrasumi1990 (Tue, 25 Jul 2017 06:02:38 GMT):
Message Attachments
malhotrasumi1990 (Tue, 25 Jul 2017 06:51:58 GMT):
Also please suggest the value that can Come in "trustedRoots" Key in below JSON for Connection Profile:
malhotrasumi1990 (Tue, 25 Jul 2017 06:52:39 GMT):
{
"type": "hlfv1",
"orderers": [
{
"url": "grpcs://",
"cert": ""
},
{
"url": "grpcs://",
"cert": ""
}
],
"ca": {
"url:" "https://",
"name": "",
"trustedRoots": "",
"verify": true
},
"peers": [
{
"requestURL": "grpcs://",
"eventURL": "grpcs://",
"cert": ""
},
{
"requestURL": "grpcs://",
"eventURL": "grpcs://",
"cert": ""
}
],
"keyValStore": "/YOUR_HOME_DIR/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": 300,
"globalcert": "",
"maxSendSize": 10,
"maxRecvSize": 15
}
davidkel (Tue, 25 Jul 2017 07:16:54 GMT):
@malhotrasumi1990 The definition of you ca must be incorrect or the ca is down as a request to it returned a 404 Page Not Found. I would suggest not including trustedRoots or verify as it should work without them being defined.
prmdmshra (Tue, 25 Jul 2017 07:19:58 GMT):
Has joined the channel.
prmdmshra (Tue, 25 Jul 2017 07:22:34 GMT):
Hi am a newbie in Composer. I am using the following link to create a network on Fabric on my local system
https://hyperledger.github.io/composer/tutorials/developer-guide.html
But, I am getting the following error on running 'npm install' in the directory. Kindly suggest.
> node-gyp configure build
/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js:7
^
SyntaxError: Unexpected token <
at createScript (vm.js:74:10)
at Object.runInThisContext (vm.js:116:10)
at Module._compile (module.js:533:28)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:503:32)
at tryModuleLoad (module.js:466:12)
at Function.Module._load (module.js:458:3)
at Function.Module.runMain (module.js:605:10)
at startup (bootstrap_node.js:158:16)
at bootstrap_node.js:575:3
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.2 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! hashtable@2.0.2 install: `node-gyp configure build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the hashtable@2.0.2 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
prmdmshra (Tue, 25 Jul 2017 07:22:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4CB6t5keLCdt6wQTX) @mahoney1
I reinstalled Composer, but the version still shows 0.9.0. Also, I am getting the following error on running npm install.
/home/pwc/Desktop/my-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
SyntaxError: The keyword 'const' is reserved (17:0)
at Parser.pp$4.raise (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:2488:13)
at Parser.pp$3.parseIdent (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:2436:12)
at Parser.pp$3.parseExprAtom (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1946:19)
at Parser.pp$3.parseExprSubscripts (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1872:19)
at Parser.pp$3.parseMaybeUnary (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1849:17)
at Parser.pp$3.parseExprOps (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1791:19)
at Parser.pp$3.parseMaybeConditional (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1774:19)
at Parser.pp$3.parseMaybeAssign (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1750:19)
at Parser.pp$3.parseExpression (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1722:19)
at Parser.pp$1.parseStatement (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:777:45)
prmdmshra (Tue, 25 Jul 2017 07:22:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4CB6t5keLCdt6wQTX) @mahoney1
I reinstalled Composer, but the version still shows 0.9.0. Also, I am getting the following error on running npm install.
/home/pwc/Desktop/my-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
SyntaxError: The keyword 'const' is reserved (17:0)
at Parser.pp$4.raise (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:2488:13)
at Parser.pp$3.parseIdent (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:2436:12)
at Parser.pp$3.parseExprAtom (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1946:19)
at Parser.pp$3.parseExprSubscripts (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1872:19)
at Parser.pp$3.parseMaybeUnary (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1849:17)
at Parser.pp$3.parseExprOps (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1791:19)
at Parser.pp$3.parseMaybeConditional (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1774:19)
at Parser.pp$3.parseMaybeAssign (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1750:19)
at Parser.pp$3.parseExpression (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1722:19)
at Parser.pp$1.parseStatement (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:777:45)
akshay111meher (Tue, 25 Jul 2017 07:25:59 GMT):
is it possible to do the following?
getTransactionRegistry()
and then delete any one of the transaction in the registry
gitSrinidhi (Tue, 25 Jul 2017 07:28:06 GMT):
Hi,
I have installed lerna and bootstrapped to run the tests for all the sample applications under
https://github.com/dselman/composer-sample-networks
gitSrinidhi (Tue, 25 Jul 2017 07:28:23 GMT):
can some one tell how to run the sample applications
gitSrinidhi (Tue, 25 Jul 2017 07:28:24 GMT):
?
gitSrinidhi (Tue, 25 Jul 2017 07:28:55 GMT):
separately
mahoney1 (Tue, 25 Jul 2017 07:33:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rxJipw3c9BYpuC2mf) @prmdmshra can you provide your node / npm versions and OS please. Also post the output of `npm ls -g --depth=0` . Also can you confirm your memory (in Gb) for your environment. Thanks
mahoney1 (Tue, 25 Jul 2017 07:33:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rxJipw3c9BYpuC2mf) @prmdmshra can you provide your node / npm versions and OS please. Also post the output of `npm ls -g --depth=0` . Also can you confirm your memory (in Gb) for your environment. Lastly, did you follow this guide for installing Composer initially: https://hyperledger.github.io/composer/installing/development-tools.html and use the prereqs script shown there? Thanks
mahoney1 (Tue, 25 Jul 2017 07:36:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4N76TTLuHYArEDest) @JennFoley depends on the issue, if you describe we can help..
prmdmshra (Tue, 25 Jul 2017 07:40:01 GMT):
@mahoney1 : Please find the required details below. Thanks
Node Version: v8.1.4
npm Version: 5.3.0
OS: Ubuntu 16.04
Output of npm ls -g --depth=0:
/usr/lib
+-- @angular/cli@1.2.0
+-- bower@1.8.0
+-- composer-cli@0.9.0
+-- composer-rest-server@0.9.0
+-- generator-hyperledger-composer@0.9.0
+-- generator-webapp@3.0.1
+-- loopback-cli@3.0.0
+-- node-gyp@3.6.2
+-- npm@5.3.0
+-- typings@2.1.1
`-- yo@2.0.0
Memory info:
MemTotal: 8046132 kB
MemFree: 538976 kB
MemAvailable: 3326320 kB
Buffers: 580344 kB
Cached: 2602376 kB
prmdmshra (Tue, 25 Jul 2017 07:40:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=x83gzrr4ZcPwE7tc3) @mahoney1
akshay111meher (Tue, 25 Jul 2017 07:55:22 GMT):
i want to know what is the effect of deleting of deleting a transaction from transactionRegistry. how will it effect the chain
elrond (Tue, 25 Jul 2017 08:52:25 GMT):
whilst running the npm install command to generate the BNA file i get the following error:
error Unexpected end of input at 1:23302
41 error on-as-promised":"^4.0.2"},"directories":{},"dist":{"shasum":"6b6e5d10
41 error
elrond (Tue, 25 Jul 2017 08:52:33 GMT):
i was not getting this before
elrond (Tue, 25 Jul 2017 08:52:35 GMT):
any ideas
elrond (Tue, 25 Jul 2017 08:54:02 GMT):
Unexpected end of input at 1:25329
npm ERR! poser-client":"0.4.1-20170202071214","composer-common":"0.4.1-2017020
mahoney1 (Tue, 25 Jul 2017 09:00:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jg7PoAky9gFJEauhy) @prmdmshra hi there, the problem is your node version - we support v6.x presently (v7 or v8 not supported). -> https://hyperledger.github.io/composer/installing/development-tools.html ..Also I would suggest to install to the latest edition of Composer (v0.10.0) as you have to `npm uninstall -g composer-cli` and reinstall `npm install -g composer-cli` and use the prereqs-ubuntu script to get all pre-reqs installed.
uber.twin (Tue, 25 Jul 2017 09:03:39 GMT):
@mahoney1 hi, is a channel creation persistent over a docker start/stop cycle?
indira.kalagara (Tue, 25 Jul 2017 09:12:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rEsoSPGLay7KHermr) @mahoney1 Thank you for the response. I am looking more on how to configure the toolchain to deploy the BNA to HSBN service as it required to have the connection profile / certificates should be available.
geoms (Tue, 25 Jul 2017 09:15:01 GMT):
Hi Team, Is it possible for applying access control for *creation of assets* ?
geoms (Tue, 25 Jul 2017 09:16:06 GMT):
For example, I have defined 3 types of participants in the Model file
geoms (Tue, 25 Jul 2017 09:16:36 GMT):
There is a Super user kind of participant, who should create the asset.
geoms (Tue, 25 Jul 2017 09:16:55 GMT):
Other participant can update the assets.
geoms (Tue, 25 Jul 2017 09:17:31 GMT):
Can we restrict only the super user participant will be able to create an asset ?
mahoney1 (Tue, 25 Jul 2017 09:22:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=snBLqLJrNkWvemQcE) @uber.twin yes it should be for straight docker start/stop cycle - ie starts the stopped container(s) from its current state(s) eg in a dev environment. Beyond that, for other environments you might want to consider persistence -> http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html - eg. each channel has their own separate ledger which are stored on each peer on said channel
uber.twin (Tue, 25 Jul 2017 09:28:50 GMT):
@mahoney1 sure, I was wandering if the ```"peer channel create", "peer channel join" , "peer channel update"``` commands need be executed after a docker stop/ start
vinitesh (Tue, 25 Jul 2017 09:31:07 GMT):
Hello, Is there a way to query another chaincode deployed on the same peer, from transaction processor function?
vinitesh (Tue, 25 Jul 2017 09:31:07 GMT):
Hello, Is there a way to query another chaincode deployed on the same peer, from transaction processor function? like what 'InvokeChaincode' of ChaincodeStubInterface does
uber.twin (Tue, 25 Jul 2017 09:31:33 GMT):
@mahoney1 supposing the channel was setup after the initial "docker up" and there was no "docker down"
vinitesh (Tue, 25 Jul 2017 09:31:34 GMT):
like what 'InvokeChaincode' of ChaincodeStubInterface does
gitSrinidhi (Tue, 25 Jul 2017 09:40:11 GMT):
Hi,
I have installed lerna and bootstrapped to run the tests for all the sample applications under
https://github.com/dselman/composer-sample-networks
can some one tell how to run the sample applications
?
separately
akshay111meher (Tue, 25 Jul 2017 09:47:57 GMT):
i tried to remove some transaction using transactionRegistry.remove()
akshay111meher (Tue, 25 Jul 2017 09:48:20 GMT):
i am getting this *Error: cannot remove transactions from a transaction registry
at TransactionRegistry.remove (/home/akshay/Desktop/fabric-composer-tests/invoice2/node_modules/composer-client/lib/transactionregistry.js:189:15)*
akshay111meher (Tue, 25 Jul 2017 09:48:49 GMT):
what can be the probable issue??
ascatox (Tue, 25 Jul 2017 10:02:41 GMT):
Hi All! I'm trying to deploy a bna in my local env, using Ubuntu 16.04. I encounter always this generic error `Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed`
ascatox (Tue, 25 Jul 2017 10:02:41 GMT):
Hi All! I'm trying to deploy a bna in my *local env*, using Ubuntu 16.04. I encounter always this generic error `Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed`
ascatox (Tue, 25 Jul 2017 10:03:46 GMT):
the command used to deploy is that given in the developer guide: `composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString``
ascatox (Tue, 25 Jul 2017 10:04:37 GMT):
Someone could help me! Thanks in advance!!!
mahoney1 (Tue, 25 Jul 2017 10:05:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MvqjNTXdbak3m7as5) @uber.twin there are many factors to consider eg that the environment stayed the same and I'm purely discussing a Dev setup - and that has a different goal to say an upscale test or production setup (where you wouldn't use docker stop/start in the same context realistically and data persisted elsewhere - that said, the configured peers on restart should rejoin) - I have been able to restart 'work' such as `composer network list` of a previously deployed business network and see registries etc etc. I guess this answers your question (the channel was rejoined by the peer).
mahoney1 (Tue, 25 Jul 2017 10:05:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MvqjNTXdbak3m7as5) @uber.twin there are many factors to consider eg that the environment stayed the same and I'm purely discussing a Dev setup - and that has a different goal to say an upscale test or production setup (where you wouldn't use docker stop/start in the same context realistically and data is persisted elsewhere - that said, the configured peers on restart should rejoin) - I have been able to restart 'work' such as `composer network list` of a previously deployed business network and see registries etc etc. I guess this answers your question (the channel was rejoined by the peer).
geoms (Tue, 25 Jul 2017 10:22:11 GMT):
@mahoney1 Is it possible for applying access control for *creation of assets* ?
For example, I have defined 3 types of participants in the Model file
There is a Super user kind of participant, who should create the asset.
Other participant can update the assets.
Can we restrict only the super user participant will be able to create an asset ?
mahoney1 (Tue, 25 Jul 2017 10:25:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qQQ2WfNd78AK7PRpF) @uber.twin docker-compose up? In this case, the container is instantiated from the docker image specified in your .yml file..anything you add/define/configure channel-wise remains there (but would not if you did a docker-compose down).
akshay111meher (Tue, 25 Jul 2017 10:29:44 GMT):
@dselman
is it possible have this kind of scenario in composer..
i have transactions t1-->t2-->t3-->t4-->t5-->t6-->t7-->t8-->t10-->t11
now i want want t6 should not be in chain...
what is possible solution? do we need a fork there?
mahoney1 (Tue, 25 Jul 2017 10:40:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gKDvLzJ7RHxPBSuEo) @geoms yes -> https://hyperledger.github.io/composer/reference/acl_language.html you just need to specify the participant type and the operation they can perform ```rule SimpleRule {
description: "Description of the ACL rule"
participant: "org.example.SampleParticipant"
operation: READ, UPDATE
resource: "org.example.SampleAsset"
action: ALLOW
}```
geoms (Tue, 25 Jul 2017 10:43:59 GMT):
Thanks @mahoney1
mahoney1 (Tue, 25 Jul 2017 11:10:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zBqeq3uTWP8k3Qhbc) @vinitesh No Composer doesn't currently have any direct way to communicate with other business networks (chaincode containers) as yet. But it is in plan (ie a links feature when implemented will introduce a mechanism for biz network A to call biz network B directly) Presently, business networks can emit events (from Transaction Processors) which can be subscribed to 'externally' by a client application (eg. receive an event from biz network A and use it in a transaction on biz network B)
mahoney1 (Tue, 25 Jul 2017 11:12:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LisjFae85EEESP7ud) @akshay111meher if an app user (or from a connected Playground to runtime v1 Fabric) creates a transaction then deletes - the effects on the blockchain itself are an 'add' txn for original txn followed by the 'delete' txn - eg could be separate blocks (eg. delete happens weeks later?) - and the effect of the delete is merely to update the world state - ie reverse the original txn's update on the World state (eg an asset or participant update) assuming they are in sequence.
vinitesh (Tue, 25 Jul 2017 11:16:40 GMT):
@mahoney1 Is there a story around (ie a links feature when implemented will introduce a mechanism for biz network A to call biz network B directly)
uber.twin (Tue, 25 Jul 2017 11:16:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uMywcM2nM4vJRdx24) @mahoney1 thank you
mahoney1 (Tue, 25 Jul 2017 11:28:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YTW87ShzsdPBpbFd2) @akshay111meher can you post your code where you're performing this thanks
mahoney1 (Tue, 25 Jul 2017 11:28:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gmLZvpXkBAxfS7XKw) @vinitesh yes - its here -> https://github.com/hyperledger/composer/issues/898
arnabsutar (Tue, 25 Jul 2017 11:29:18 GMT):
Has joined the channel.
arnabsutar (Tue, 25 Jul 2017 11:29:25 GMT):
Hi team, I am using hyperledger composer node.js sdk. getting the following error while trying to use ORDER BY clause : error trying to query chaincode. Error: chaincode error (status: 500, message: Error: http: read on closed response body)
sstone1 (Tue, 25 Jul 2017 11:30:24 GMT):
@akshay111meher can you explain what you are trying to do? the ledger is an *immutable* log of transactions, you cannot remove a transaction once it has been committed to the ledger.
mahoney1 (Tue, 25 Jul 2017 11:31:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pYwtTS7j2g3qbEzGn) @arnabsutar see examples here -> https://hyperledger.github.io/composer/business-network/query.html
sstone1 (Tue, 25 Jul 2017 11:32:16 GMT):
@akshay111meher if you have committed a transaction that is a mistake/in error, the standard practice in blockchain is to submit another transaction to rectify the mistake/error.
arnabsutar (Tue, 25 Jul 2017 11:35:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SgWfgTwyG3Z5vjuG4) @mahoney1 I was referring the doc; and was able to run the queries. It only fails when i use ORDER BY clause. my query is like 'SELECT com.cts.ipl.uw.Customer ORDER BY [userId ASC]'.
dselman (Tue, 25 Jul 2017 11:38:30 GMT):
@arnabsutar sounds like there is a Fabric or CouchDB issue with ORDER BY https://github.com/hyperledger/composer/issues/1640
mahoney1 (Tue, 25 Jul 2017 11:43:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YMy5nKc3n4949js7n) @gitSrinidhi hi there, please use the main repo https://github.com/hyperledger/composer-sample-networks - these are sample networks please note. The sample applications are here -> https://github.com/hyperledger/composer-sample-applications - I suggest to try out the digitalproperty network sample app (see the README) https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/README.md or else try the tutorial first -> https://hyperledger.github.io/composer/tutorials/developer-guide.html
arnabsutar (Tue, 25 Jul 2017 11:44:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=K7pMQF77fXSjSRMz6) @dselman Thanks for the information. I am facing the exact the same issue and getting the exact same error
vinitesh (Tue, 25 Jul 2017 11:53:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9EetC3rDnkrdyCuKG) Thanks
uber.twin (Tue, 25 Jul 2017 11:54:36 GMT):
@sstone1 hi, are there any estimates for when to expect the features specified at https://github.com/hyperledger/fabric/blob/master/proposals/r1/Next-Ledger-Architecture-Proposal.md
sstone1 (Tue, 25 Jul 2017 11:56:48 GMT):
@uber.twin i'm not a fabric developer - you should ask in #fabric
uber.twin (Tue, 25 Jul 2017 11:57:29 GMT):
of course, thank you:)
gitSrinidhi (Tue, 25 Jul 2017 12:02:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bzrAANFx7aSAoedaN) @mahoney1 Thanks much !
malhotrasumi1990 (Tue, 25 Jul 2017 12:07:10 GMT):
Hi Team, While deploying BNA to Bluemix via CLI i am getting below error : Error: error trying login and get user Context. Error: error trying to enroll user. Error: Could not parse enrollment response [404 page not found
geoms (Tue, 25 Jul 2017 12:10:33 GMT):
@sstone1 I am trying to put access control while creating an asset.
geoms (Tue, 25 Jul 2017 12:11:36 GMT):
I'm testing it in composer playground
geoms (Tue, 25 Jul 2017 12:11:56 GMT):
'rule R1 {
description: "Description of the ACL rule"
participant(m): "org.acme.move.ControlUnit"
operation: CREATE
resource: "org.acme.move.MoveCase"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}'
geoms (Tue, 25 Jul 2017 12:12:46 GMT):
But the rule is does not applying any restriction
sstone1 (Tue, 25 Jul 2017 12:14:29 GMT):
are you using the admin identity (see in the top right)
geoms (Tue, 25 Jul 2017 12:15:41 GMT):
Yes
geoms (Tue, 25 Jul 2017 12:16:49 GMT):
Ok.. I need to issue different identities to each participants, then only it will work ?
sstone1 (Tue, 25 Jul 2017 12:20:22 GMT):
correct
geoms (Tue, 25 Jul 2017 12:22:29 GMT):
got it. Thanks!
sstone1 (Tue, 25 Jul 2017 12:22:44 GMT):
np
gen_el (Tue, 25 Jul 2017 12:28:37 GMT):
i am unable to use buildQuery with a transaction function (in logic.js). Why is that?
gen_el (Tue, 25 Jul 2017 12:29:05 GMT):
The documentation says its available in composer-runtime
geoms (Tue, 25 Jul 2017 12:41:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2KezfRpvNdraem4Af) @sstone1 I tried to issue a identity to the participant
geoms (Tue, 25 Jul 2017 12:42:32 GMT):
Should I login with this identity and do the transactions ?
geoms (Tue, 25 Jul 2017 12:42:55 GMT):
I added the new identity in the playground wallet
geoms (Tue, 25 Jul 2017 12:43:14 GMT):
Then trying to test the access control
geoms (Tue, 25 Jul 2017 12:43:57 GMT):
But there was no BNA file found. The BNA file uploaded by admin is cleared
geoms (Tue, 25 Jul 2017 12:44:51 GMT):
Can access control related test can be done in Playground environemnt ?
coder-ajay (Tue, 25 Jul 2017 12:49:20 GMT):
In below structure
```
asset Vehicle identified by vin {
o String vin
--> VehicleTrader Name
}
abstract participant VehicleTrader identified by businessName {
o String businessName
}
```
The GET generates array as :
```
{
"$class": "org.acme.vehiclenetwork.Vehicle",
"vin": "1234",
"Name": "resource:org.acme.vehiclenetwork.VehicleTrader#Super%20Cars"
}
```
Can we get rid for the _resource:org.acme.vehiclenetwork.VehicleTrader#_ and replace _%20_ by _space_ and simply have _Super Cars_ ?
coder-ajay (Tue, 25 Jul 2017 12:49:20 GMT):
In below structure
```
asset Vehicle identified by vin {
o String vin
--> VehicleTrader Name
}
abstract participant VehicleTrader identified by businessName {
o String businessName
}
```
The GET generates array as :
```
{
"$class": "org.acme.vehiclenetwork.Vehicle",
"vin": "1234",
"Name": "resource:org.acme.vehiclenetwork.VehicleTrader#Super%20Cars"
}
```
Can we get rid of the _resource:org.acme.vehiclenetwork.VehicleTrader#_ and replace _%20_ by _space_ to have simply _Super Cars_ ?
zupan (Tue, 25 Jul 2017 13:14:17 GMT):
What would be the easiest way to get newRelationsip from fully qualified name?
zupan (Tue, 25 Jul 2017 13:14:17 GMT):
What would be the easiest way to get newRelationsip from fully qualified name? I found fromURI method, but for this I would need `modelManager`.
zupan (Tue, 25 Jul 2017 13:14:17 GMT):
What would be the easiest way to get newRelationsip from fully qualified name? I found Relationship.fromURI method, but for this I would need `modelManager`.
zupan (Tue, 25 Jul 2017 13:14:17 GMT):
What would be the easiest way to get `newRelationsip` from fully qualified name? I found `Relationship.fromURI()` method, but for this I would need `modelManager`.`
zupan (Tue, 25 Jul 2017 13:14:17 GMT):
What would be the easiest way to get `newRelationsip` from fully qualified name? I found `Relationship.fromURI()` method, but for this I would need `modelManager`.
gitSrinidhi (Tue, 25 Jul 2017 13:33:39 GMT):
Hi,
gitSrinidhi (Tue, 25 Jul 2017 13:33:51 GMT):
Getting - ./prereqs-ubuntu.sh: line 1: syntax error near unexpected token `<'
gitSrinidhi (Tue, 25 Jul 2017 13:34:19 GMT):
when i try to set up pre-requisites for hyperledger composer
gitSrinidhi (Tue, 25 Jul 2017 13:34:27 GMT):
on Ubuntu
gitSrinidhi (Tue, 25 Jul 2017 13:35:16 GMT):
when i run this line
gitSrinidhi (Tue, 25 Jul 2017 13:35:18 GMT):
./prereqs-ubuntu.sh
gitSrinidhi (Tue, 25 Jul 2017 13:35:40 GMT):
under https://hyperledger.github.io/composer/installing/development-tools.html
mahoney1 (Tue, 25 Jul 2017 13:42:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4cd9BqvQ8bS3pe9dR) @coder-ajay [ ](https://chat.hyperledger.org/channel/composer?msg=4cd9BqvQ8bS3pe9dR) @coder-ajay nope - As its a relationship - Composer language requires it to be a tuple composed of:
The namespace of the type being referenced
The type name of the type being referenced
The identifier of the instance being referenced
mahoney1 (Tue, 25 Jul 2017 13:42:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4cd9BqvQ8bS3pe9dR) @coder-ajay [ ](https://chat.hyperledger.org/channel/composer?msg=4cd9BqvQ8bS3pe9dR) @coder-ajay nope - As its a relationship - Composer language requires it to be a tuple composed of:
The namespace of the type being referenced
The type name of the type being referenced
The identifier of the instance being referenced
mahoney1 (Tue, 25 Jul 2017 13:42:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4cd9BqvQ8bS3pe9dR) @coder-ajay nope - As its a relationship (transactions will need the fully qualified resource) - Composer language requires it to be a tuple composed of:
The namespace of the type being referenced
The type name of the type being referenced
The identifier of the instance being referenced
mahoney1 (Tue, 25 Jul 2017 13:53:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qWEmKM7DYQ28RCex6) @gitSrinidhi I just ran ```curl -O https://hyperledger.github.io/composer/prereqs-ubuntu.sh
chmod u+x prereqs-ubuntu.sh``` from the page https://hyperledger.github.io/composer/installing/development-tools.html and it runs for me. I suggest to remove it (as non-root user) and try again, it doesn't sound like its been 'curled' properly :-)
gitSrinidhi (Tue, 25 Jul 2017 13:55:01 GMT):
@mahoney1 yes.. i removed s from HTTP and got that script placed in my directory. But problem in executing that script
gitSrinidhi (Tue, 25 Jul 2017 13:55:01 GMT):
@mahoney1 yes.. i removed s from HTTPS and got that script placed in my directory. But problem in executing that script
gitSrinidhi (Tue, 25 Jul 2017 13:55:29 GMT):
even with a non root user
mahoney1 (Tue, 25 Jul 2017 13:59:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AQJD2yjoRtyPiaYdx) @gitSrinidhi so why did you remove the 's' ? If you 'cat' the script, you'll probably see why you're getting the token '<' error: - its going to look something like this: ```cat prereqs-ubuntu.sh
gitSrinidhi (Tue, 25 Jul 2017 14:01:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dNe29wor8xnfFecQt) @mahoney1 that was in the curl command
mahoney1 (Tue, 25 Jul 2017 14:01:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AQJD2yjoRtyPiaYdx) @gitSrinidhi recommend you cut and paste the instruction or get the script from here if you can't -> https://github.com/hyperledger/composer/blob/master/packages/composer-website/jekylldocs/prereqs-ubuntu.sh
alisonb (Tue, 25 Jul 2017 14:04:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QejFqFR3KZQ7zoyoX) @mahoney1 Thanks! Rebuilt and reinstalled and all working a treat now
mahoney1 (Tue, 25 Jul 2017 14:05:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hhTvwW3ggnomZnYhY) @alisonb awesome :-) !
gitSrinidhi (Tue, 25 Jul 2017 14:05:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=N6w5sda6SAb8cy6gd) @mahoney1 Awesome !! That worked for non-root user now. Thanks much !
vinitesh (Tue, 25 Jul 2017 14:08:21 GMT):
Hello, In the ACL documentation i found following statement. JavaScript expressions used for the condition of an ACL rule can refer to JavaScript utility functions in a script file. This allows a user to easily implement complex access control logic, and re-use the same access control logic functions across multiple ACL rules. Is there any example of JavaScript utility functions in a script file?
vinitesh (Tue, 25 Jul 2017 14:08:21 GMT):
Hello, In the ACL documentation i found following statement. ' JavaScript expressions used for the condition of an ACL rule can refer to JavaScript utility functions in a script file. This allows a user to easily implement complex access control logic, and re-use the same access control logic functions across multiple ACL rules.' Is there any example of JavaScript utility functions in a script file?
mahoney1 (Tue, 25 Jul 2017 14:09:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TLssWHfgPMcrTiuu5) @zupan see this issue https://github.com/hyperledger/composer/issues/696 and see the example further down. Note that the relationships returned will have the new URI format, rather than the old format (ie just an id)
gitSrinidhi (Tue, 25 Jul 2017 14:10:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Q6hQYJ3cvzH6Jv4zX) @mahoney1 i can ignore this correct ?
gitSrinidhi (Tue, 25 Jul 2017 14:10:37 GMT):
Message Attachments
gitSrinidhi (Tue, 25 Jul 2017 14:11:01 GMT):
can i ignore this ?
gitSrinidhi (Tue, 25 Jul 2017 14:11:01 GMT):
can i ignore this ? @mahoney1
zupan (Tue, 25 Jul 2017 14:11:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pacTCBvzszEa3afZk) @mahoney1 Thank you!
mahoney1 (Tue, 25 Jul 2017 14:16:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ruNZaWrFwN4MpzTuf) @vinitesh yes there is - see JS test samples here:: https://github.com/hyperledger/composer/blob/master/packages/composer-systests/systest/data/accesscontrols.js#L19
GitHub and accompanying ACLs here : https://github.com/hyperledger/composer/blob/master/packages/composer-systests/systest/data/accesscontrols.acl#L42
mahoney1 (Tue, 25 Jul 2017 14:17:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hoRtgkChoQz7bEptR) @gitSrinidhi sorry can't see it to say either way - access denied ..
uber.twin (Tue, 25 Jul 2017 14:30:02 GMT):
@mahoney1 hi, any advise on what I'm doing wrong when trying to issue an identity to a participant?
```
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
at IncomingMessage.
uber.twin (Tue, 25 Jul 2017 14:31:14 GMT):
I did manage to add the participant, just before, as part of the same client app routine
ScottMorris (Tue, 25 Jul 2017 14:43:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bPGjvjcLgWFiQS4M9) @mahoney1 If I run just `yo hyperledger-composer` I get the following output
```
fvadmin@ubuntu-hyperledger:~$ yo hyperledger-composer
Welcome to the Hyperledger Composer project generator
? Please select the type of project: (Use arrow keys)
❯ CLI
Angular
Business Network
Model
```
I have a business network all setup and ready to go. Here is the rest of the requested information.
```
fvadmin@ubuntu-hyperledger:~$ sudo docker ps -a
[sudo] password for fvadmin:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ffa29de1d827 dev-peer0.org1.example.com-mynetwork-0.10.0 "chaincode -peer.a..." 23 hours ago Up 23 hours dev-peer0.org1.example.com-mynetwork-0.10.0
97dcd2f73c4e hyperledger/fabric-peer:x86_64-1.0.0 "peer node start" 4 days ago Up 4 days 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
8eac1fc1a0df hyperledger/fabric-orderer:x86_64-1.0.0 "orderer" 4 days ago Up 4 days 0.0.0.0:7050->7050/tcp orderer.example.com
0796181d1ae7 hyperledger/fabric-couchdb:x86_64-1.0.0 "tini -- /docker-e..." 4 days ago Up 4 days 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
b023e404b4ae hyperledger/fabric-ca:x86_64-1.0.0 "sh -c 'fabric-ca-..." 4 days ago Up 4 days 0.0.0.0:7054->7054/tcp ca.example.com
```
```
fvadmin@ubuntu-hyperledger:~$ sudo composer network ping -n mynetwork -p hlfv1 -i PeerAdminOrg1 -s secret
The connection to the network was successfully tested: mynetwork
version: 0.10.0
participant:
ascatox (Tue, 25 Jul 2017 14:48:31 GMT):
Hi All! I've a conceptual question! Is it possible in composer to add peers to the blockchain when I need? Is this a problem for the BNA deployed?
jorisjh (Tue, 25 Jul 2017 14:54:39 GMT):
Has joined the channel.
gen_el (Tue, 25 Jul 2017 14:56:10 GMT):
Hello why doesn't buildQuery work in business network logic js file?
dselman (Tue, 25 Jul 2017 15:00:48 GMT):
@ascatox no, that is an operational concern, handled by Fabric
dselman (Tue, 25 Jul 2017 15:01:03 GMT):
@gen_el it should, what are you seeing?
gen_el (Tue, 25 Jul 2017 15:01:19 GMT):
npm test kept failing
dselman (Tue, 25 Jul 2017 15:01:27 GMT):
stack?
jorisjh (Tue, 25 Jul 2017 15:02:26 GMT):
I see there is a generator for an angular project, any plans to expand this to let's say Vue? I guess I could just consume the REST API with Vue otherwise.
ascatox (Tue, 25 Jul 2017 15:02:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZX7ARFhn6699bxmiX) @dselman Thanks for the answer!
gen_el (Tue, 25 Jul 2017 15:02:52 GMT):
325:18 error 'buildQuery' is not defined no-undef
327:12 error 'query' is not defined no-undef
gen_el (Tue, 25 Jul 2017 15:02:59 GMT):
@dselman
dselman (Tue, 25 Jul 2017 15:04:04 GMT):
@jorisjh we'd love a contribution for that
dselman (Tue, 25 Jul 2017 15:04:40 GMT):
Yeoman templates are easy to create... but you do have to understand what you are generating! :-)
gen_el (Tue, 25 Jul 2017 15:04:42 GMT):
am i support to import a module? @dselman
dselman (Tue, 25 Jul 2017 15:04:47 GMT):
I know nothing about Vue
dselman (Tue, 25 Jul 2017 15:05:10 GMT):
@gen_el Can you paste your TP function code please
jorisjh (Tue, 25 Jul 2017 15:05:44 GMT):
I know nothing about yeoman, but once I do, I'll give it a go.
gen_el (Tue, 25 Jul 2017 15:06:06 GMT):
`var query1 = buildQuery('SELECT com.xxx.zone.FeeSettlementRequest WHERE (transactionId == _$inputValue)');` @dselman
dselman (Tue, 25 Jul 2017 15:06:27 GMT):
buildQuery is a static method on Query
dselman (Tue, 25 Jul 2017 15:06:38 GMT):
Try Query.buildQuery
gen_el (Tue, 25 Jul 2017 15:06:42 GMT):
Oh!
dselman (Tue, 25 Jul 2017 15:07:21 GMT):
Actually, I take that back...
dselman (Tue, 25 Jul 2017 15:07:23 GMT):
https://hyperledger.github.io/composer/unstable/jsdoc/module-composer-runtime.html#buildQuery__anchor
mahoney1 (Tue, 25 Jul 2017 15:08:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gtNfRDWn4ECM73KdY) @uber.twin would need to see your `composer identity issue` command to know and assuming its linked to a FQ participant in your registry. In general terms - in order to make a request to the fabric-ca you need to use an identity understood by the fabric-ca. Usually (in dev) its using 'admin' which (in the dev setup) is a bootstrap id. However if your fabric CA docker container was cleared/restarted you could have an old admin identity and certificate in your keyValStore directory and thus won't match the one in your fabric-ca because whenever your fabric-ca is restarted it creates a new admin identity with new certificates.
dselman (Tue, 25 Jul 2017 15:08:22 GMT):
@gen_el is that a linting rule that is failing?
dselman (Tue, 25 Jul 2017 15:08:49 GMT):
You can control that with...
gen_el (Tue, 25 Jul 2017 15:08:59 GMT):
I suspect @dselman
dselman (Tue, 25 Jul 2017 15:09:00 GMT):
```
/*eslint-disable no-unused-vars*/
/*eslint-disable no-undef*/
/*eslint-disable no-var*/
```
gen_el (Tue, 25 Jul 2017 15:09:31 GMT):
Had to confirm that before messing with those rules @dselman
dselman (Tue, 25 Jul 2017 15:09:38 GMT):
Put that at the top of your file
dselman (Tue, 25 Jul 2017 15:10:25 GMT):
Or you can tweak the rules in eslintrc.yml
dselman (Tue, 25 Jul 2017 15:11:18 GMT):
or .eslintignore the files
gen_el (Tue, 25 Jul 2017 15:11:26 GMT):
Ok. Thanks @dselman
mahoney1 (Tue, 25 Jul 2017 15:18:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=36DjLEXWPeKbvm9j3) @ScottMorris - this was your issue from yesterday `"to generate the Angular client and when I run `yo` and select Angular it blows up without any intervention from me. Has anyone tried out the Angular client before` right ? Can you post `npm ls -g --depth=0` - also I suspect your Angular issue (many, many users have used yo hyperledger-composer and run it successfullly but as non-root) is still an EACCESS denied issue? What is your node version incidentally...
mahoney1 (Tue, 25 Jul 2017 15:18:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=36DjLEXWPeKbvm9j3) @ScottMorris - this was your issue from yesterday `"to generate the Angular client and when I run `yo` and select Angular it blows up without any intervention from me. Has anyone tried out the Angular client before"` right ? Can you post `npm ls -g --depth=0` - also I suspect your Angular issue (many, many users have used yo hyperledger-composer and run it successfullly but as non-root) is still an EACCESS denied issue? What is your node version incidentally...
mahoney1 (Tue, 25 Jul 2017 15:18:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=36DjLEXWPeKbvm9j3) @ScottMorris - this was your issue from yesterday `"to generate the Angular client and when I run yo and select Angular, it blows up without any intervention from me. Has anyone tried out the Angular client before"` right ? Can you post `npm ls -g --depth=0` - also I suspect your Angular issue (many, many users have used yo hyperledger-composer and run it successfullly but as non-root) is still an EACCESS denied issue? What is your node version incidentally...
ScottMorris (Tue, 25 Jul 2017 15:23:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vTE9KmwSdDaSMjbfa) @mahoney1 Yup, that is my issue. I'm starting to think that a command in the yo script runs as a non-privileged user but since I've installed stuff as the privilaged user it doesn't have access. My solution then would be to resetup everything to use npm as me and not as root.
```
fvadmin@ubuntu-hyperledger:~$ npm ls -g --depth=0
/usr/lib
├── composer-cli@0.10.0
├── composer-rest-server@0.10.0
├── npm@4.2.0
└── yo@2.0.0
```
My _npm_ and _NodeJS_ versions are
```
fvadmin@ubuntu-hyperledger:~$ npm -v
4.2.0
fvadmin@ubuntu-hyperledger:~$ node -v
v6.11.1
```
uber.twin (Tue, 25 Jul 2017 15:24:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YBQzjLJSWfD8cXLdQ) @mahoney1 I'm using the client JS API bizNetworkConnection.issueIdentity() and just before trying to issue the identity, I added the participant, in the same client script so my identity is got to be good, isn't it?
uber.twin (Tue, 25 Jul 2017 15:26:47 GMT):
@mahoney1 so it is not related to this change ```We have introduced system level access control so that you can control who in your business network is allowed to perform "system" level tasks such as accessing registries, creating new registries, and managing identities within a business network! ```
uber.twin (Tue, 25 Jul 2017 15:26:47 GMT):
@mahoney1 so it is not related to this change? ```We have introduced system level access control so that you can control who in your business network is allowed to perform "system" level tasks such as accessing registries, creating new registries, and managing identities within a business network! ```
mahoney1 (Tue, 25 Jul 2017 15:26:55 GMT):
@ScottMorris yes, I think so. Someone else had a similar issue yesterday, and (expectedly) came back all good installing as non-root user. With npm, it is the best way forward.
ScottMorris (Tue, 25 Jul 2017 15:27:39 GMT):
@mahoney1 Ok, I'll try this, thanks for your help
akshay111meher (Tue, 25 Jul 2017 15:39:40 GMT):
what kind of error is this
error Error: Peer has rejected transaction '81fc94fb8dcabb6d10f3e952c6a3f395aaac9878e1ba68841ba11d676d5c42db' with cdoe MVCC_READ_CONFLICT
at eh.registerTxEvent (/home/akshay/Desktop/fabric-composer-tests/invoice2/node_modules/composer-client/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:818:32)
at EventHub.txCallback (/home/akshay/Desktop/fabric-composer-tests/invoice2/node_modules/composer-client/node_modules/fabric-client/lib/EventHub.js:324:5)
mahoney1 (Tue, 25 Jul 2017 16:04:53 GMT):
@uber.twin _I'm using the client JS API bizNetworkConnection.issueIdentity() and just before trying to issue the identity, I added the participant, in the same client script so my identity is got to be good, isn't it?_ Yes, I would generally agree :-). You could post your code, but the error suggests that the issuer hasn't got the authority to issue identities... So the identity that connects to the business network (substitute variables below as appropriate) eg. ```this.bizNetworkConnection.connect(this.CONNECTION_PROFILE_NAME, this.businessNetworkIdentifier, participantId, participantPwd)
.then((result) => {
this.businessNetworkDefinition = result;
});``` would need to have the authority to issue identities by the CA (eg. if it wasn't 'admin', 'adminpw' that was supplied). You may already have covered this, that said.
mahoney1 (Tue, 25 Jul 2017 16:04:53 GMT):
@uber.twin _I'm using the client JS API bizNetworkConnection.issueIdentity() and just before trying to issue the identity, I added the participant, in the same client script so my identity is got to be good, isn't it?_ Yes, I would generally agree :-). You could post your code, but the error suggests that the issuer hasn't got the authority to issue identities... So the identity that connects to the business network (substitute variables below as appropriate) eg. ```this.bizNetworkConnection.connect(this.CONNECTION_PROFILE_NAME, this.businessNetworkIdentifier, participantId, participantPwd)
.then((result) => {
this.businessNetworkDefinition = result;
});``` would need to have the authority (issuer flag 'enabled'?) to issue identities by the CA (eg. if it wasn't 'admin', 'adminpw' that was supplied). Can't use PeerAdmin just FYI.You may already have covered this question, that said.
mahoney1 (Tue, 25 Jul 2017 16:04:53 GMT):
@uber.twin _I'm using the client JS API bizNetworkConnection.issueIdentity() and just before trying to issue the identity, I added the participant, in the same client script so my identity is got to be good, isn't it?_ Yes, I would generally agree :-). You could post your code, but the error suggests that the issuer hasn't got the authority to issue identities... So the identity that connects to the business network (substitute variables below as appropriate) eg. ```this.bizNetworkConnection.connect(this.CONNECTION_PROFILE_NAME, this.businessNetworkIdentifier, participantId, participantPwd)
.then((result) => {
this.businessNetworkDefinition = result;
});``` would need to have the authority (issuer flag 'enabled'?) to issue identities by the CA (eg. if it wasn't 'admin', 'adminpw' that was supplied). Can't use PeerAdmin just FYI. You may already have covered this question, that said.
baoyangc (Tue, 25 Jul 2017 16:17:05 GMT):
@mahoney1 do we have a way to set instantiate policy for chaincode
davidkel (Tue, 25 Jul 2017 16:17:38 GMT):
@baoyangc No we don't support being able to set instantiate policy
sstone1 (Tue, 25 Jul 2017 16:21:43 GMT):
@davidkel that's set at channel creation time right?
davidkel (Tue, 25 Jul 2017 16:23:11 GMT):
@sstone1 last time I looked I think it was set at chaincode install time, but I haven't gone back to see what/how/if etc this works
dselman (Tue, 25 Jul 2017 16:25:43 GMT):
@akshay111meher that is a Fabric error saying that 2 threads/peers have tried to modify the same key concurrently. Fabric uses a lock-free optimistic concurrency model and will roll back transactions that read/write modified keys
dselman (Tue, 25 Jul 2017 16:26:20 GMT):
Your next question is likely to be how to program to that! ;-)
davidkel (Tue, 25 Jul 2017 16:27:31 GMT):
@sstone1 reading the docs here http://hyperledger-fabric.readthedocs.io/en/latest/chaincode4noah.html?highlight=instantiation%20policy
you define the instantiation policy in your chaincode package. Then you would use that package to install onto all the peers, so sort of set at install time but defined in the install package
sstone1 (Tue, 25 Jul 2017 16:29:23 GMT):
ok, so maybe something we could do through a `-o` option
davidkel (Tue, 25 Jul 2017 16:31:09 GMT):
it could be an option on the runtime install, only interesting thing would be if 2 orgs install onto their peers what if they put different instantiation policies ?
DennisM330 (Tue, 25 Jul 2017 16:31:16 GMT):
Using composer rest server with images in Kubernetes. I have some queries in my business network. When I try to test them using the composer server error, I get a LevelDB error - ". I noticed queries are not working when trying to test them in the composer rest server?
{ "error": { "statusCode": 500, "name": "Error", "message": "error trying to query chaincode. Error: chaincode error (status: 500, message: Error: ExecuteQuery not supported for leveldb)", "stack": "Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: ExecuteQuery not supported for leveldb)\n at channel.queryByChaincode.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:766:34)" } }"
dselman (Tue, 25 Jul 2017 16:31:59 GMT):
You need to use CouchDB for Fabric queries
dselman (Tue, 25 Jul 2017 16:32:19 GMT):
It's even in the docs! ;-)
DennisM330 (Tue, 25 Jul 2017 16:33:30 GMT):
@dselman, Is that something I need to configure in Fabric, was using sample scripts in Github - https://github.ibm.com/IBM-Blockchain/ibm-container-service
dselman (Tue, 25 Jul 2017 16:34:00 GMT):
Yes. Take a look at the scripts for the fabric dev server
sstone1 (Tue, 25 Jul 2017 16:34:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KEfP9d7Yx5qaiQ7JL) @davidkel no idea, which is why i thought it would be a channel creation thing (whos signatures are required to instantiate chaincode on this channel) - it seems very weird to get people to provide it at install time!
DennisM330 (Tue, 25 Jul 2017 16:34:48 GMT):
Ah found it: To enable CouchDB as the state database, configure the /fabric/sampleconfig/core.yaml
dselman (Tue, 25 Jul 2017 16:35:18 GMT):
https://github.com/hyperledger/composer-tools/blob/master/packages/fabric-dev-servers/fabric-scripts/hlfv1/composer/docker-compose.yml
davidkel (Tue, 25 Jul 2017 16:36:28 GMT):
@sstone1 It is an odd idea to define it in the package such that each install has to bundle a policy
DennisM330 (Tue, 25 Jul 2017 16:47:42 GMT):
When it is appropriate to perform a composer network start? Still using composer network deploy. Does deploy automatically start the network? Seems it still does
DennisM330 (Tue, 25 Jul 2017 17:28:00 GMT):
composer network start
DennisM330 (Tue, 25 Jul 2017 17:31:08 GMT):
I see the difference between deploy and start - main question was if deploy calls the start API, appears it does for now?
mahoney1 (Tue, 25 Jul 2017 17:38:16 GMT):
@here hi everyone, don't forget - our Composer Community call is 9am UTC tomorrow (Weds -10am UK, 2:30pm IST, 5pm CST) - would love to hear about the things you are building with Composer, what you like/don't like ; your experiences thus far with Composer ; please join in and let us know! Meeting details are here: https://github.com/hyperledger/composer/wiki/Meeting-26th-July-2017 - join the call via Zoom Conferencing from a PC, Mac, Linux, iOS or Android: https://zoom.us/j/441168172
titog (Tue, 25 Jul 2017 17:45:27 GMT):
Has joined the channel.
RudiDahle (Tue, 25 Jul 2017 18:01:07 GMT):
ies.qry
sstone1 (Tue, 25 Jul 2017 18:02:20 GMT):
@DennisM330 "network deploy" does an install followed by a start, where as "network start" just does the start - and we have a "runtime install" command for the install
sstone1 (Tue, 25 Jul 2017 18:02:38 GMT):
the long term plan is to deprecate the "network deploy" and get everybody using install and start
imtiyazbhat (Tue, 25 Jul 2017 18:07:09 GMT):
Has joined the channel.
imtiyazbhat (Tue, 25 Jul 2017 18:09:52 GMT):
Hi Everyone - I am going through "Hyperledger Composer" tutorial. npm test command is failing. Its giving error "npm@3.10.10 /usr/local/lib/node_modules/npm
npm ERR! Test failed. See above for more details." I am using Mac OS. Any help is appreciated
RudiDahle (Tue, 25 Jul 2017 18:14:24 GMT):
I am trying to permanently save and display in a webapp the information about an asset when it's created. How can i best get a hold of this information?
RudiDahle (Tue, 25 Jul 2017 18:14:43 GMT):
And where can I find said information?
dselman (Tue, 25 Jul 2017 18:25:27 GMT):
@RudiDahle You can model your asset with a creationDate. You then model a CreateAsset transaction, with the TP function for CreateAsset creating the asset and setting the creationDate. You can then write an ACL rule to prevent the creation of the asset using the CRUD methods -- ensuring the asset is only created by submitting a CreateAsset transaction. In the future you will be able to pull this information from the Historian component we are building.
dselman (Tue, 25 Jul 2017 18:25:27 GMT):
@RudiDahle You can model your asset with a creationDate. You then model a CreateAsset transaction, with the TP function for CreateAsset creating the asset and setting the creationDate. You can then write an ACL rule to prevent the creation of the asset using the CRUD methods -- ensuring the asset is only created by submitting a CreateAsset transaction. Note that In the future you will be able to pull this information from the Historian component we are building.
RudiDahle (Tue, 25 Jul 2017 18:26:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tAB7D29mCPpJHrEZf) @dselman Thank you!
ScottMorris (Tue, 25 Jul 2017 18:30:14 GMT):
@mahoney1 I got the generator working, thanks again for the help there. When I try to run the web app I'm getting errors running `ng serve`.
It starts out working then barfs on the models' TypeScript files. When I inspect them it they are missing imports for the types that they are trying to reference.
```
$ ng serve
Your global Angular CLI version (1.2.4) is greater than your local
version (1.0.1). The local Angular CLI version is used.
To disable this warning use "ng set --global warnings.versionMismatch=false".
** NG Live Development Server is running on http://localhost:4200 **
Hash: dd02d9694d30d90a809b
Time: 19766ms
chunk {0} polyfills.bundle.js, polyfills.bundle.js.map (polyfills) 250 kB {5} [initial] [rendered]
chunk {1} main.bundle.js, main.bundle.js.map (main) 78.9 kB {4} [initial] [rendered]
chunk {2} styles.bundle.js, styles.bundle.js.map (styles) 183 kB {5} [initial] [rendered]
chunk {3} scripts.bundle.js, scripts.bundle.js.map (scripts) 435 kB {5} [initial] [rendered]
chunk {4} vendor.bundle.js, vendor.bundle.js.map (vendor) 3.61 MB [initial] [rendered]
chunk {5} inline.bundle.js, inline.bundle.js.map (inline) 0 bytes [entry] [rendered]
```
The error I get is
`Error in ./path/to/typescript/ctoFileName.ts: Cannot find name 'AssetName'.
Is there something that controls the generation of the TS files from the CTO files?
ScottMorris (Tue, 25 Jul 2017 18:30:14 GMT):
@mahoney1 I got the generator working, thanks again for the help there. When I try to run the web app I'm getting errors running `ng serve`.
It starts out working then barfs on the models' TypeScript files. When I inspect them it they are missing imports for the types that they are trying to reference.
```
$ ng serve
Your global Angular CLI version (1.2.4) is greater than your local
version (1.0.1). The local Angular CLI version is used.
To disable this warning use "ng set --global warnings.versionMismatch=false".
** NG Live Development Server is running on http://localhost:4200 **
Hash: dd02d9694d30d90a809b
Time: 19766ms
chunk {0} polyfills.bundle.js, polyfills.bundle.js.map (polyfills) 250 kB {5} [initial] [rendered]
chunk {1} main.bundle.js, main.bundle.js.map (main) 78.9 kB {4} [initial] [rendered]
chunk {2} styles.bundle.js, styles.bundle.js.map (styles) 183 kB {5} [initial] [rendered]
chunk {3} scripts.bundle.js, scripts.bundle.js.map (scripts) 435 kB {5} [initial] [rendered]
chunk {4} vendor.bundle.js, vendor.bundle.js.map (vendor) 3.61 MB [initial] [rendered]
chunk {5} inline.bundle.js, inline.bundle.js.map (inline) 0 bytes [entry] [rendered]
```
The error I get is
`Error in ./path/to/typescript/ctoFileName.ts: Cannot find name 'AssetName'.`
Is there something that controls the generation of the TS files from the CTO files?
dselman (Tue, 25 Jul 2017 18:53:54 GMT):
they should not need namespaces, they are just stripped out right now
dselman (Tue, 25 Jul 2017 18:54:26 GMT):
is there anything unusual about the names?
dselman (Tue, 25 Jul 2017 19:05:02 GMT):
You can run the generator using:
dselman (Tue, 25 Jul 2017 19:05:09 GMT):
```
Daniels-MBP-2:~ dselman$ composer generator create
composer generator create --archiveFile digitialPropertyNetwork.bna --format Go --outputDir ./dev/go-app
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--archiveFile, -a Business network archive file name. Default is based on the Identifier of the BusinessNetwork [string] [required]
--format, -f Format of code to generate: Java, Go (beta), PlantUML, Typescript (beta), JSONSchema. [required]
--outputDir, -o Output Location [required]
```
imtiyazbhat (Tue, 25 Jul 2017 19:15:19 GMT):
why npm test is failing with pecify configs in the ini-formatted file. I am running through tutorial "https://hyperledger.github.io/composer/tutorials/developer-guide.html". Any details highly appreciated.
dselman (Tue, 25 Jul 2017 19:52:24 GMT):
What step is it failing at?
DennisM330 (Tue, 25 Jul 2017 19:52:25 GMT):
@sstone1 Excellant!
coder-ajay (Tue, 25 Jul 2017 19:54:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=f6B4hGZ9bZb73xxmA) @mahoney1 Ok. This means, the relationship data needs to be processed/truncated before publishing on web app. Thanks for the reply.
ki0apa (Tue, 25 Jul 2017 20:50:32 GMT):
I am having the following problem and I have no idea why
ki0apa (Tue, 25 Jul 2017 20:50:46 GMT):
Unhandled error for request POST /api/org.example.mynetwork.Trader: Error: error trying to query chaincode. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
ki0apa (Tue, 25 Jul 2017 20:51:04 GMT):
It occurs after 400 or so rest requests
ki0apa (Tue, 25 Jul 2017 20:51:41 GMT):
What is strange is there are no errors in the logs. In fact, the whole network shuts down as soon as this error occurs
ki0apa (Tue, 25 Jul 2017 20:52:36 GMT):
I'm running the basic-sample-network btw
dselman (Tue, 25 Jul 2017 21:02:31 GMT):
very odd
dselman (Tue, 25 Jul 2017 21:02:42 GMT):
all the docker containers stop?
dselman (Tue, 25 Jul 2017 21:03:41 GMT):
yes
dselman (Tue, 25 Jul 2017 21:13:43 GMT):
if all the containers stop it sounds like a docker problem - perhaps you need to increase more resources for Docker?
dselman (Tue, 25 Jul 2017 21:14:12 GMT):
Message Attachments
ki0apa (Tue, 25 Jul 2017 21:18:56 GMT):
Not all, just the dev-vp-... one
dselman (Tue, 25 Jul 2017 21:19:48 GMT):
what are the last logs that are written to it?
ki0apa (Tue, 25 Jul 2017 21:20:38 GMT):
2017-07-25 21:15:48.954 UTC [Composer] Debug -> DEBU f6d Exiting DataCollection.get 0
2017-07-25 21:15:48.954 UTC [Composer] Debug -> DEBU f6e Entering DataService.getCollection &{0xc4201489a0}
2017-07-25 21:15:48.957 UTC [Composer] Debug -> DEBU f6f Entering NewDataCollection &{0xc4201489a0} &{0xc42013a160 0xc421193c80} 0xc420e69650
2017-07-25 21:15:48.957 UTC [Composer] Debug -> DEBU f70 Exiting NewDataCollection &{0xc420028d78 0xc421193c80 Participant:org.example.mynetwork.Trader}
2017-07-25 21:15:48.957 UTC [Composer] Debug -> DEBU f71 Exiting DataService.getCollection 0
2017-07-25 21:15:48.957 UTC [Composer] Debug -> DEBU f72 @JS : AccessController :check() > org.example.mynetwork.Trader#jceflpsych_t3, CREATE
2017-07-25 21:15:48.957 UTC [Composer] Debug -> DEBU f73 @JS : AccessController :check() No participant
2017-07-25 21:15:48.957 UTC [Composer] Debug -> DEBU f74 @JS : AccessController :check() <
2017-07-25 21:15:48.958 UTC [Composer] Debug -> DEBU f75 Entering DataCollection.add &{0xc4201489a0}
2017-07-25 21:15:48.961 UTC [Composer] Debug -> DEBU f76 Exiting DataCollection.add 0
2017-07-25 21:15:48.961 UTC [Composer] Debug -> DEBU f77 @JS : EngineResources :addResourceToRegistry() <
2017-07-25 21:15:48.961 UTC [Composer] Debug -> DEBU f78 Entering Context.getDataService &{0xc4201489a0}
2017-07-25 21:15:48.961 UTC [Composer] Debug -> DEBU f79 Exiting Context.getDataService 1
2017-07-25 21:15:48.961 UTC [Composer] Debug -> DEBU f7a Entering Context.getEventService &{0xc4201489a0}
2017-07-25 21:15:48.961 UTC [Composer] Debug -> DEBU f7b Exiting Context.getEventService 1
2017-07-25 21:15:48.961 UTC [Composer] Debug -> DEBU f7c Entering Context.getIdentityService &{0xc4201489a0}
2017-07-25 21:15:48.961 UTC [Composer] Debug -> DEBU f7d Exiting Context.getIdentityService 1
2017-07-25 21:15:48.961 UTC [Composer] Debug -> DEBU f7e Entering Context.getHTTPService &{0xc4201489a0}
2017-07-25 21:15:48.961 UTC [Composer] Debug -> DEBU f7f Exiting Context.getHTTPService 1
2017-07-25 21:15:48.962 UTC [Composer] Debug -> DEBU f80 Entering Context.getDataService &{0xc4201489a0}
2017-07-25 21:15:48.962 UTC [Composer] Debug -> DEBU f81 Exiting Context.getDataService 1
2017-07-25 21:15:48.962 UTC [Composer] Debug -> DEBU f82 Entering Context.getEventService &{0xc4201489a0}
2017-07-25 21:15:48.962 UTC [Composer] Debug -> DEBU f83 Exiting Context.getEventService 1
2017-07-25 21:15:48.962 UTC [Composer] Debug -> DEBU f84 Entering Context.getIdentityService &{0xc4201489a0}
2017-07-25 21:15:48.962 UTC [Composer] Debug -> DEBU f85 Exiting Context.getIdentityService 1
2017-07-25 21:15:48.962 UTC [Composer] Debug -> DEBU f86 Entering Context.getHTTPService &{0xc4201489a0}
2017-07-25 21:15:48.962 UTC [Composer] Debug -> DEBU f87 Exiting Context.getHTTPService 1
2017-07-25 21:15:48.962 UTC [Composer] Debug -> DEBU f88 Entering EventService.transactionCommit &{0xc4201489a0}
2017-07-25 21:15:48.962 UTC [Composer] Debug -> DEBU f89 @JS : EventService :getEvents() >
2017-07-25 21:15:48.962 UTC [Composer] Debug -> DEBU f8a @JS : EventService :getEvents() <
2017-07-25 21:15:48.962 UTC [Composer] Debug -> DEBU f8b Emitting event from EventService.transactionCommit []
2017-07-25 21:15:48.963 UTC [Composer] Debug -> DEBU f8c Exiting EventService.transactionCommit 0
2017-07-25 21:15:48.963 UTC [Composer] Debug -> DEBU f8d Entering Context.getDataService &{0xc4201489a0}
2017-07-25 21:15:48.963 UTC [Composer] Debug -> DEBU f8e Exiting Context.getDataService 1
2017-07-25 21:15:48.963 UTC [Composer] Debug -> DEBU f8f Entering Context.getEventService &{0xc4201489a0}
2017-07-25 21:15:48.963 UTC [Composer] Debug -> DEBU f90 Exiting Context.getEventService 1
2017-07-25 21:15:48.963 UTC [Composer] Debug -> DEBU f91 Entering Context.getIdentityService &{0xc4201489a0}
2017-07-25 21:15:48.963 UTC [Composer] Debug -> DEBU f92 Exiting Context.getIdentityService 1
2017-07-25 21:15:48.963 UTC [Composer] Debug -> DEBU f93 Entering Context.getHTTPService &{0xc4201489a0}
2017-07-25 21:15:48.963 UTC [Composer] Debug -> DEBU f94 Exiting Context.getHTTPService 1
2017-07-25 21:15:48.964 UTC [Composer] Debug -> DEBU f95 @JS : Engine :invoke() <
2017-07-25 21:15:48.964 UTC [Composer] Debug -> DEBU f96 Entering Engine.handleCallback 0xc421096780 &{0xc4201489a0}
2017-07-25 21:15:48.964 UTC [Composer] Debug -> DEBU f97 Exiting Engine.handleCallback 0
2017-07-25 21:15:48.964 UTC [Composer] Debug -> DEBU f98 Exiting Composer.Invoke
ki0apa (Tue, 25 Jul 2017 21:20:58 GMT):
It actually didn't shut down, but it stopped logging
ki0apa (Tue, 25 Jul 2017 21:21:03 GMT):
And the rest server no longer works
dselman (Tue, 25 Jul 2017 21:22:01 GMT):
if you do a `composer network ping` does it respond?
ki0apa (Tue, 25 Jul 2017 21:23:55 GMT):
no, it doesn't even pritn an error or anything
dselman (Tue, 25 Jul 2017 21:25:30 GMT):
just hangs?
ki0apa (Tue, 25 Jul 2017 21:25:36 GMT):
yes
dselman (Tue, 25 Jul 2017 21:25:51 GMT):
what version of docker? How much resource have you allocated?
ki0apa (Tue, 25 Jul 2017 21:26:04 GMT):
Docker version 17.06.0-ce, build 02c1d87
ki0apa (Tue, 25 Jul 2017 21:26:07 GMT):
4 CPUs
ki0apa (Tue, 25 Jul 2017 21:26:15 GMT):
15 GB of memory
ki0apa (Tue, 25 Jul 2017 21:26:39 GMT):
docker-compose version 1.13.0, build 1719ceb
ki0apa (Tue, 25 Jul 2017 21:27:22 GMT):
I'm running on an aws instance. Could that cause problems with memory?
dselman (Tue, 25 Jul 2017 21:27:49 GMT):
given it seems related to logging I'm erring more towards disk space
dselman (Tue, 25 Jul 2017 21:28:14 GMT):
is it easy to reproduce?
ki0apa (Tue, 25 Jul 2017 21:29:58 GMT):
Not really
ki0apa (Tue, 25 Jul 2017 21:30:06 GMT):
I'll give you as much information as I can
dselman (Tue, 25 Jul 2017 21:30:15 GMT):
https://aws.amazon.com/blogs/compute/optimizing-disk-usage-on-amazon-ecs/
dselman (Tue, 25 Jul 2017 21:30:25 GMT):
"Failure to monitor disk space utilization can cause problems that prevent Docker containers from working as expected. Amazon EC2 instance disks are used for multiple purposes, such as Docker daemon logs, containers, and images. This post covers techniques to monitor and reclaim disk space on the cluster of EC2 instances used to run your containers."
dselman (Tue, 25 Jul 2017 21:30:31 GMT):
Could be worth a read...?
ki0apa (Tue, 25 Jul 2017 21:32:49 GMT):
I ran df -h and it seems like I have free disk space
ki0apa (Tue, 25 Jul 2017 21:37:50 GMT):
I'm also getting these errors
ki0apa (Tue, 25 Jul 2017 21:37:51 GMT):
at channel.queryByChaincode.then.catch (/home/ubuntu/composer/my-network/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:758:34)
Unhandled error for request POST /api/org.example.mynetwork.Commodity: Error: error trying to query chaincode. Error: Error executing chaincode: premature execution - chaincode (my-network:0.9.2) is being launched
at channel.queryByChaincode.then.catch (/home/ubuntu/composer/my-network/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:758:34)
Unhandled error for request POST /api/org.example.mynetwork.Trader: Error: error trying to query chaincode. Error: Error executing chaincode: Error chaincode is being launched: my-network:0.9.2
dselman (Tue, 25 Jul 2017 21:40:38 GMT):
"chaincode being launched" means that the peer is starting the docker container for the chaincode I believe
ki0apa (Tue, 25 Jul 2017 21:41:05 GMT):
Do you know how I can fix this?
dselman (Tue, 25 Jul 2017 21:41:44 GMT):
I'd do the easy stuff first -- update to Composer v0.10, and HLF v1.0 GA
ki0apa (Tue, 25 Jul 2017 21:42:28 GMT):
composer-cli v0.10.0
composer-admin v0.10.0
composer-client v0.10.0
composer-common v0.10.0
composer-runtime-hlf v0.10.0
composer-runtime-hlfv1 v0.10.0
ki0apa (Tue, 25 Jul 2017 21:42:42 GMT):
I'm already on fabric v0.10, I'll check fabric now
dselman (Tue, 25 Jul 2017 21:43:30 GMT):
Can you create a stack over flow question and we'll move it to there -- that way you can attach logs etc and we won't pollute this chat
dselman (Tue, 25 Jul 2017 21:43:33 GMT):
?
ki0apa (Tue, 25 Jul 2017 21:43:46 GMT):
Sure
dselman (Tue, 25 Jul 2017 21:44:17 GMT):
Please supply as much environement info as you can and the logs and we will do our best!
ki0apa (Tue, 25 Jul 2017 21:44:41 GMT):
Awesome, thanks!
ki0apa (Tue, 25 Jul 2017 22:01:59 GMT):
Just posted the question
ScottMorris (Tue, 25 Jul 2017 22:03:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=H4JWQmXRrm2sgwZ3q) @dselman This seems to be the issue, the referenced types it is looking for are in other files, which could be imported in TS using `import` but since that isn't being done the system dies. I guess I can manually add that statement in but that is time consuming each time I do an update to the data model.
ScottMorris (Tue, 25 Jul 2017 22:04:50 GMT):
Basically dependencies between files aren't being resolved in the generation process.
dselman (Tue, 25 Jul 2017 22:10:41 GMT):
The code is here if you want to patch it and submit a PR: https://github.com/hyperledger/composer/blob/master/packages/composer-common/lib/codegen/fromcto/typescript/typescriptvisitor.js
dselman (Tue, 25 Jul 2017 22:10:59 GMT):
Or you move all your types into the same namespace...
dselman (Tue, 25 Jul 2017 22:11:19 GMT):
Can you create an issue please and attach the models required to reproduce?
sstone1 (Tue, 25 Jul 2017 22:13:05 GMT):
^ i hit the same problem earlier trying to generate an app for the vehicle lifecycle demo
ScottMorris (Tue, 25 Jul 2017 22:21:50 GMT):
@dselman I'll look into documenting this and generate the required models. Going over the _js_ code atm.
dselman (Tue, 25 Jul 2017 22:25:51 GMT):
thanks
gitSrinidhi (Wed, 26 Jul 2017 06:11:24 GMT):
Hi im new here.
im trying samples on composer. I'm setting up prerequisites to deploy banana file on Block chain.
when i run *./prereqs-ubuntu.sh* i get the error related to certificate.
curl: (60) server certificate verification failed. *CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none*
any comments ?
gitSrinidhi (Wed, 26 Jul 2017 06:11:24 GMT):
Hi im new here.
im trying samples on composer. I'm setting up prerequisites to deploy banana file on Block chain on Ubuntu.
when i run *./prereqs-ubuntu.sh* i get the error related to certificate.
curl: (60) server certificate verification failed. *CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none*
any comments ?
akshay111meher (Wed, 26 Jul 2017 06:17:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=shkFtBDQoeDD3DfcC) @dselman
sure let me know :joy:
prmdmshra (Wed, 26 Jul 2017 07:13:45 GMT):
I am gtting the following error on running 'npm install'. I am using the steps mentioned in below link.
https://hyperledger.github.io/composer/tutorials/developer-guide.html
Also, according to the following issue 1439, please suggest whether the workaround is to install specifc Node version(6.9.5)?
https://github.com/hyperledger/composer/issues/1439
Creating Business Network Archive
my-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
SyntaxError: The keyword 'const' is reserved (17:0)
at Parser.pp$4.raise (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:2488:13)
at Parser.pp$3.parseIdent (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:2436:12)
at Parser.pp$3.parseExprAtom (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1946:19)
Output of npm ls -g --depth=0:
+-- @angular/cli@1.2.0
+-- bower@1.8.0
+-- composer-cli@0.9.0
+-- generator-hyperledger-composer@0.9.0
+-- generator-webapp@3.0.1
+-- loopback-cli@3.0.0
+-- n@2.1.8
+-- node-gyp@3.6.2
prmdmshra (Wed, 26 Jul 2017 07:13:45 GMT):
I am gtting the following error on running 'npm install'. I am using the steps mentioned in below link.
https://hyperledger.github.io/composer/tutorials/developer-guide.html
Also, according to the following issue 1439, please suggest whether the workaround is to install specifc Node version(6.9.5)?
https://github.com/hyperledger/composer/issues/1439
Creating Business Network Archive
my-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
SyntaxError: The keyword 'const' is reserved (17:0)
at Parser.pp$4.raise (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:2488:13)
at Parser.pp$3.parseIdent (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:2436:12)
at Parser.pp$3.parseExprAtom (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1946:19)
Output of npm ls -g --depth=0:
+-- @angular/cli@1.2.0
+-- bower@1.8.0
+-- composer-cli@0.9.0
+-- generator-hyperledger-composer@0.9.0
+-- generator-webapp@3.0.1
+-- loopback-cli@3.0.0
+-- n@2.1.8
+-- node-gyp@3.6.2
prmdmshra (Wed, 26 Jul 2017 07:13:45 GMT):
I am gtting the following error on running 'npm install'. I am using the steps mentioned in below link.
https://hyperledger.github.io/composer/tutorials/developer-guide.html
Also, according to the following issue 1439, please suggest whether the workaround is to install specifc Node version(6.9.5)?
https://github.com/hyperledger/composer/issues/1439
Creating Business Network Archive
my-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
SyntaxError: The keyword 'const' is reserved (17:0)
at Parser.pp$4.raise (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:2488:13)
at Parser.pp$3.parseIdent (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:2436:12)
at Parser.pp$3.parseExprAtom (/home/pwc/Desktop/my-network/node_modules/acorn/dist/acorn.js:1946:19)
Output of npm ls -g --depth=0:
+-- @angular/cli@1.2.0
+-- bower@1.8.0
+-- composer-cli@0.9.0
+-- generator-hyperledger-composer@0.9.0
+-- generator-webapp@3.0.1
+-- loopback-cli@3.0.0
+-- n@2.1.8
+-- node-gyp@3.6.2
jorisjh (Wed, 26 Jul 2017 07:19:26 GMT):
Say I want to test my business network on a wider network, running peers on different machines, that config is solely on the fabric (or other hyperledger DLT) side right?
mahoney1 (Wed, 26 Jul 2017 07:24:12 GMT):
reminder that the Composer Community call is 9am UTC today (10am UK, 2:30pm IST, 5pm CST) - would love to hear about the things you are building with Composer, your experiences thus far with Composer ; please join in and let us know! Meeting details are here: https://github.com/hyperledger/composer/wiki/Meeting-26th-July-2017 - join the call via Zoom Conferencing from a PC, Mac, Linux, iOS or Android: https://zoom.us/j/441168172
mahoney1 (Wed, 26 Jul 2017 07:27:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SWrsoTohChvdE5CX8) @prmdmshra a version of Node 6 (6.x.x) is supported - can you post your model file please or send as attachment
prmdmshra (Wed, 26 Jul 2017 07:33:05 GMT):
----------------------------------------------------------------------
/**
* My commodity trading network
*/
namespace org.acme.mynetwork
asset Commodity identified by tradingSymbol {
o String tradingSymbol
o String description
o String mainExchange
o Double quantity
--> Trader owner
}
participant Trader identified by tradeId {
o String tradeId
o String firstName
o String lastName
}
transaction Trade {
--> Commodity commodity
--> Trader newOwner
}
prmdmshra (Wed, 26 Jul 2017 07:34:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xkyq99guWFrcJBrgx) @mahoney1
/**
* My commodity trading network
*/
namespace org.acme.mynetwork
asset Commodity identified by tradingSymbol {
o String tradingSymbol
o String description
o String mainExchange
o Double quantity
--> Trader owner
}
participant Trader identified by tradeId {
o String tradeId
o String firstName
o String lastName
}
transaction Trade {
--> Commodity commodity
--> Trader newOwner
}
davidkel (Wed, 26 Jul 2017 07:46:51 GMT):
@prmdmshra That error suggests you have used the keyword `const` in your transaction javascript. Unfotunately transaction javascript code is limited to ES5 syntax and so `const` cannot be used.
wael (Wed, 26 Jul 2017 08:48:41 GMT):
Hi, is there any enhancement to access and changing consensus, or endorsement policy ? and what about channels ?
prmdmshra (Wed, 26 Jul 2017 09:24:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zwAKApZArbzHmENyQ) @davidkel
Yes, there seems to be keyword const in the transaction javascript.It would be great if you could suggest any other sample(without const in transaction. I have installed Fabric & Composer locally and want to kick start and play around any sample/example network as soon as possible.
pospi (Wed, 26 Jul 2017 09:28:20 GMT):
can I do table joins in the composer query language?
gitSrinidhi (Wed, 26 Jul 2017 09:29:15 GMT):
Hi im new here.
im trying samples on composer. I'm setting up prerequisites to deploy banana file on Block chain on Ubuntu.
when i run *./prereqs-ubuntu.sh* i get the error related to certificate.
curl: (60) server certificate verification failed. *CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none*
any comments ?
camdenT (Wed, 26 Jul 2017 09:34:40 GMT):
If I were to make a business network that handles multiple currencies (USD, CNY, EUR, etc.), would I need a separate asset definition for each currency, or is there a way to combine it all into one asset? What would be an asset identifier in a case like this?
Thanks!
Dalf (Wed, 26 Jul 2017 09:36:43 GMT):
Has joined the channel.
davidkel (Wed, 26 Jul 2017 09:47:14 GMT):
@prmdmshra where did you get the sample from ? none of our samples will contain that. You can find sample networks at https://github.com/hyperledger/composer-sample-networks
jorisjh (Wed, 26 Jul 2017 09:50:13 GMT):
Hi All, is the cto modelling language based on anything existing or invented for this?
jorisjh (Wed, 26 Jul 2017 09:50:19 GMT):
https://hyperledger.github.io/composer/reference/cto_language.html
mahoney1 (Wed, 26 Jul 2017 10:02:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rZhxSvm5Lp4BqZMMu) @gitSrinidhi hi there, sorry for the delay - at first glance, it would suggest that the preceding line in prereqs-ubuntu.sh did not 'install' -- ie `sudo apt-get -y install apt-transport-https ca-certificates` - possibly an incorrect password (step skipped|?) can you run this single command (and enter sudo password) and post the output please? Also the output of `date -R` from the cmdline - as certs are time sensitive.
prmdmshra (Wed, 26 Jul 2017 10:06:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mFuZDnL58Si2fq4LK) @davidkel
Thanks David!!
I have imported carauction-network in Composer locally. The transactions is successfull and the BNA file is also created. But when I run 'composer network deploy -a carauction-network.bna -p hlfv1 -i PeerAdmin -s randomString', I get the following error. I have tried after installing 'npm install composer-connector-hlf':
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1"
Command failed
Sorry for troubling you guys with silly questions :-(
mahoney1 (Wed, 26 Jul 2017 10:08:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qrLA5t4LPjs6gigFP) @jorisjh not based on 'existing' per se: it was created as a domain specific model definition language for making it easy to model and write business logic, based on javascript.
wael (Wed, 26 Jul 2017 10:25:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=X6SmW55wa4hSb3wx2)
prmdmshra (Wed, 26 Jul 2017 10:36:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JcWWDDjBoQPLAhcAG) @prmdmshra
The issue is resolved on reinstalling composer npm uninstall -g composer-cli followed by npm install -g composer-cli :-)
ansonlau3 (Wed, 26 Jul 2017 10:50:25 GMT):
hi all, is there any ways to convert the query result toJSON (like using the getSerializer().toJSON) ?
gitSrinidhi (Wed, 26 Jul 2017 10:52:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SCPmFpApXtatb5nqx) @mahoney1 Kindly check.
kumar@kumar-VirtualBox:~/Desktop/SBT$ *sudo apt-get -y install apt-transport-https ca-certificates*
Reading package lists... Done
Building dependency tree
Reading state information... Done
*ca-certificates is already the newest version (20160104ubuntu1).*
apt-transport-https is already the newest version (1.2.20).
The following packages were automatically installed and are no longer required:
linux-headers-4.4.0-34 linux-headers-4.4.0-34-generic linux-image-4.4.0-34-generic linux-image-extra-4.4.0-34-generic
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 188 not upgraded.
kumar@kumar-VirtualBox:~/Desktop/SBT$ *date -R*
*Wed, 26 Jul 2017 16:20:29 +0530*
kumar@kumar-VirtualBox:~/Desktop/SBT$
baoyangc (Wed, 26 Jul 2017 11:00:54 GMT):
does any one meet this error:`UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: error trying login and get user Context. Error: error trying to enroll user. Error: Failed to generate CSR for enrollmemnt due to error [TypeError: asn1.x509.X500Name.ldapToOneline is not a function]`
mahoney1 (Wed, 26 Jul 2017 11:06:33 GMT):
@gitSrinidhi thanks for the info - so the ca-certificates were installed successfully (from previous run). Can you confirm what version of Ubuntu you're running on ? Is this a local VM (Virtualbox) instance or Cloud based? Should be one of these: Ubuntu LTS 14.04 / 16.04 LTS (both 64-bit)... Thanks
mahoney1 (Wed, 26 Jul 2017 11:18:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QQiDQSckWaWbjDrTg) @wael hi there - these are really #fabric questions - and #fabric-consensus questions : Composer is not a 'Fabric' configuration/management tool per se; it just includes a sample Fabric dev runtime setup for getting going quickly with Composer, but it will deploy to any instance of Fabric that you configure, that includes your consensus config (that's supported by Hyperledger Fabric). So suggest to ask on #fabric-consensus - currently Solo, Kafka, in time, SBFT mechanisms https://jira.hyperledger.org/browse/FAB-33
gitSrinidhi (Wed, 26 Jul 2017 11:27:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XceAHgSY3HvCFPK8i) @mahoney1 Its a local VM instance, 16.04 LTS 64bits.
mahoney1 (Wed, 26 Jul 2017 11:51:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oL8waim524JNDxr9x) @ansonlau3 the Serializer won't work with an array (of Resource objects in this example) - but you can use the Serializer to convert those Resource objects into JSON objects - so try this ```const jsonArray = queryResults.map((resource) => {
return serializer.toJSON(resource);
});```
mahoney1 (Wed, 26 Jul 2017 11:51:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oL8waim524JNDxr9x) @ansonlau3 the Serializer won't work with an array (of Resource objects in this example) - but you can use the Serializer to convert those Resource objects into JSON objects - so try this ```const jsonArray = queryResults.map((resource) => {
return serializer.toJSON(resource);
});```
mahoney1 (Wed, 26 Jul 2017 11:51:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oL8waim524JNDxr9x) @ansonlau3 the Serializer won't work with an array (of Resource objects in this example) - but you can use the Serializer to convert those Resource objects into JSON objects - so try this ```const jsonArray = queryResults.map((resource) => {
return serializer.toJSON(resource);
});```
mahoney1 (Wed, 26 Jul 2017 11:51:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oL8waim524JNDxr9x) @ansonlau3 the Serializer won't work with an array (of Resource objects in this example) - but you can use the Serializer to convert those Resource objects into JSON objects - so try this ```const jsonArray = queryResults.map((resource) => {
return serializer.toJSON(resource);
});``` where '=>' is '=>' in the snippet..
mahoney1 (Wed, 26 Jul 2017 11:59:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=j4vdEBefPGWqT36y7) @gitSrinidhi thanks - are you behind a firewall or proxy by any chance ? I would suggest to run the `./prereqs-ubuntu.sh` script again - but one thing you mentioned previously you had an issue with - was https (eg curl command for prereq script yesterday) so you would need to monitor the output when you run the prereqs script as a non-root user. You can capture the output to a file using `./prereqs-ubuntu.sh | tee -a out.log to review after (or send to me for review if this second attempt does not work).
mahoney1 (Wed, 26 Jul 2017 11:59:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=j4vdEBefPGWqT36y7) @gitSrinidhi thanks - are you behind a firewall or proxy by any chance ? I would suggest to run the `./prereqs-ubuntu.sh` script again - but one thing you mentioned previously you had an issue with - was https (eg curl command for prereq script yesterday) so you would need to monitor the output when you run the prereqs script as a non-root user. You can capture the output to a file using `./prereqs-ubuntu.sh | tee -a out.log` to review after (or send to me for review if this second attempt does not work).
uber.twin (Wed, 26 Jul 2017 12:06:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EbcbsnvkwTNdAr2WS) @mahoney1 My client app is using the admin/ adminpw identity. However, I tried to generate my own multi organizations network from scratch, including the certificates library.
I've verified the admin/ adminpw is good, since I could use it to add the participant instances and list them.
The bizNetworkConnection.issueIdentity() fails, though
maybe the CA log associated with my connection profile could help?
```
2017-07-26T07:48:16.331855497Z 2017/07/26 07:48:16 [DEBUG] Database (/etc/hyperledger/fabric-ca-server/fabric-ca-server.db) exists
2017-07-26T07:48:16.331866092Z 2017/07/26 07:48:16 [DEBUG] Successfully opened sqlite3 DB
2017-07-26T07:48:16.331875929Z 2017/07/26 07:48:16 [DEBUG] Initializing identity registry
2017-07-26T07:48:16.331885985Z 2017/07/26 07:48:16 [DEBUG] Initialized DB identity registry
2017-07-26T07:48:16.331895834Z 2017/07/26 07:48:16 [INFO] Initialized sqlite3 database at /etc/hyperledger/fabric-ca-server/fabric-ca-server.db
2017-07-26T07:48:16.331906054Z 2017/07/26 07:48:16 [DEBUG] Initializing enrollment signer
2017-07-26T07:48:16.331915661Z 2017/07/26 07:48:16 [DEBUG] validating configuration
2017-07-26T07:48:16.331925163Z 2017/07/26 07:48:16 [DEBUG] validate local profile
2017-07-26T07:48:16.331934701Z 2017/07/26 07:48:16 [DEBUG] profile is valid
2017-07-26T07:48:16.331944113Z 2017/07/26 07:48:16 [DEBUG] validate local profile
2017-07-26T07:48:16.331953588Z 2017/07/26 07:48:16 [DEBUG] profile is valid
2017-07-26T07:48:16.331963094Z 2017/07/26 07:48:16 [DEBUG] CA initialization successful
2017-07-26T07:48:16.331972699Z 2017/07/26 07:48:16 [INFO] Home directory for default CA: /etc/hyperledger/fabric-ca-server
2017-07-26T07:48:16.331981840Z 2017/07/26 07:48:16 [DEBUG] 1 CA instance(s) running on server
2017-07-26T07:48:16.331990867Z 2017/07/26 07:48:16 [INFO] Listening on http://0.0.0.0:7054
2017-07-26T07:50:31.235344751Z 2017/07/26 07:50:31 [DEBUG] Received request
2017-07-26T07:50:31.235381460Z POST /api/v1/register
2017-07-26T07:50:31.235388073Z Authorization: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUI0VENDQVllZ0F3SUJBZ0lVSkEvRFNycnlod0FkZTJHWEJDbGpQVDc4NG5vd0NnWUlLb1pJemowRUF3SXcKWXpFTE1Ba0dBMVVFQmhNQ1ZWTXhFekFSQmdOVkJBZ1RDa05oYkdsbWIzSnVhV0V4RmpBVUJnTlZCQWNURFZOaApiaUJHY21GdVkybHpZMjh4RVRBUEJnTlZCQW9UQ0daeWJua3VZMjl0TVJRd0VnWURWUVFERXd0allTNW1jbTU1CkxtTnZiVEFlRncweE56QTNNalF4TXpBMk1EQmFGdzB4T0RBM01qUXhNekEyTURCYU1CQXhEakFNQmdOVkJBTVQKQldGa2JXbHVNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUV1OXgzenk1bENuYU9GMThqSFFLawpqK2pYOGZrdE1SNFM5SFZuWWRreDM1bFdZNkNIZ051OHlUZ2JqUXFtUTdpNFNBR2JHcjRVTXdCZHpSN2IrVUI3CjVxTnNNR293RGdZRFZSMFBBUUgvQkFRREFnZUFNQXdHQTFVZEV3RUIvd1FDTUFBd0hRWURWUjBPQkJZRUZKK2cKTUwyRzhLRlZtd252bGdzb2xBME1BUis0TUNzR0ExVWRJd1FrTUNLQUlEMHFxaHVSeURLZVBPdUcyMXpSNXBLeApOVEdYallKRUtEVVI2VFc1ZXp2Qk1Bb0dDQ3FHU000OUJBTUNBMGdBTUVVQ0lRQytEaXYzRHhSWEtpMTkyL1d6CmM3VU5IdStsWjBvdmZWOWU5eGNNeU5aRHl3SWdMV1FMeWFoQklRRjNsSTRIUlRTWXJ1aTEzSmV5WG9WU0dWdDAKQkpUVGs2ND0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=.MEUCIQDmLlrrCU1ylaFtYGE0kXmTv04300b8AgpsT6CY7wIa5QIgeMvhVWHonwOXpSg44aaM02BjkKI/jj1SAYF+WWrNK7k=
2017-07-26T07:50:31.235396351Z {"id":"ORG1US33XXX","type":"client","affiliation":"org1","max_enrollments":0,"attrs":[],"caName":"ca.frny.com"}
2017-07-26T07:50:31.235558665Z 2017/07/26 07:50:31 [DEBUG] Directing traffic to CA ca.frny.com
2017-07-26T07:50:31.236587442Z 2017/07/26 07:50:31 [DEBUG] Checking for revocation/expiration of certificate owned by 'admin'
2017-07-26T07:50:31.236597698Z 2017/07/26 07:50:31 [DEBUG] DB: Get certificate by serial (240fc34abaf287001d7b61970429633d3efce27a) and aki (3d2aaa1b91c8329e3ceb86db5cd1e692b13531978d8244283511e935b97b3bc1)
2017-07-26T07:50:31.240195603Z 2017/07/26 07:50:31 [ERROR] No certificates found for provided serial and aki
```
mahoney1 (Wed, 26 Jul 2017 12:08:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EEcCf8QnAbnYBFsFR) @baoyangc it is possibly how your code is written or a .catch is missing or not in the right place? - and does this help you -> https://stackoverflow.com/questions/40500490/what-is-unhandled-promise-rejection - if all is good on your side, its possible we have to look too ...
mahoney1 (Wed, 26 Jul 2017 12:08:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vSTxER4TnbedqKe45) @UDeshmukh going back to your original question, there's a distinction between the install steps for Hyperledger Fabric and those for Hyperledger Composer :-) welcome by the way ! :-) -> but they're two separate install streams - Composer creates a simple 'Fabric' development environment as the 'runtime' blockchain to interact with from Hyperledger Composer - to install Hyperledger Composer - follow these steps https://hyperledger.github.io/composer/installing/development-tools.html - for Ubuntu - there is a pre-requisites install script described there . For your Ubuntu Server 16.04 (64 bit) you can find out more here -> https://www.ubuntu.com/download/server and that would be installed inside your virtual machine. Once installed, you can start with installing the Composer environment - on the same page link - it describes how the dockerized, simple Fabric blockchain network can be downloaded and started when you get going with Composer. Hope this helps.
uber.twin (Wed, 26 Jul 2017 12:08:50 GMT):
@mahoney1 no sure who sets the affiliation attribute or the request : ```"affiliation":"org1"```
uber.twin (Wed, 26 Jul 2017 12:10:17 GMT):
my current org is 'frny' (the connecting identity, and the corresponding connection profile point to the "frny" peer and CA)
uber.twin (Wed, 26 Jul 2017 12:12:52 GMT):
is it possible that my CA knows about the peer but doesn't know about the user?
prmdmshra (Wed, 26 Jul 2017 12:16:37 GMT):
I am getting the following error on running 'yo hyperledger-composer'. I beleive the issue is addressed for 'digitalproperty-network' in https://github.com/hyperledger/composer/issues/1645. I am working on the carauction-network sample. Please suggest
events.js:160
throw er; // Unhandled 'error' event
^
Error: error trying to ping. Error: Deployed chain-code (0.10.0) is incompatible with client (0.9.0)
at queryChainCode.then.catch (/usr/lib/node_modules/generator-hyperledger-composer/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:666:34)
prmdmshra (Wed, 26 Jul 2017 12:16:37 GMT):
I am getting the following error on running 'yo hyperledger-composer'. I believe the issue is addressed for 'digitalproperty-network' in https://github.com/hyperledger/composer/issues/1645. I am working on the carauction-network sample. Please suggest
events.js:160
throw er; // Unhandled 'error' event
^
Error: {"created":"@1501097299.312735443","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1501097299.312712678","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1501097299.312727024","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
at /usr/lib/node_modules/generator-hyperledger-composer/node_modules/grpc/src/node/src/client.js:417:17
ascatox (Wed, 26 Jul 2017 12:18:10 GMT):
What's for the main reasons to start to use Fabric Composer, instead to use Fabric directly?
ascatox (Wed, 26 Jul 2017 12:18:10 GMT):
What's for you the main reasons to start to use Fabric Composer, instead to use Fabric directly?
jorisjh (Wed, 26 Jul 2017 12:28:08 GMT):
No imports are allowed?
```/Users/jorishoogeboom/Work/hyperledger-composer/my-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
SyntaxError: The keyword 'import' is reserved (20:0)```
davidkel (Wed, 26 Jul 2017 12:28:59 GMT):
@uber.twin CA Servers are not connected in any way to a running fabric (ie there is no communication between it and peers) They are standalone certificate authorities.
I don't know how you have set up your CA Server, however I suspect that it is setup in such as manner that if you stop and start the CA server or remove the container and start a new container from a CA image then the admin cert you may have enrolled previously and stored in your wallet/KeyValStore now isn't recognised as a known identity for your CA Server.
davidkel (Wed, 26 Jul 2017 12:28:59 GMT):
@uber.twin CA Servers are not connected in any way to a running fabric (ie there is no communication between it and peers/orderers) They are standalone certificate authorities.
I don't know how you have set up your CA Server, however I suspect that it is setup in such as manner that if you stop and start the CA server or remove the container and start a new container from a CA image then the admin cert you may have enrolled previously and stored in your wallet/KeyValStore now isn't recognised as a known identity for your CA Server.
davidkel (Wed, 26 Jul 2017 12:28:59 GMT):
@uber.twin CA Servers are not connected in any way to a running fabric (ie there is no communication between it and peers/orderers) They are standalone certificate authorities.
I don't know how you have set up your CA Server, however I suspect that it is setup in such as manner that if you stop and relaunch the CA server process or remove the container and start a new container from a CA image then the admin cert you may have enrolled previously and stored in your wallet/KeyValStore now isn't recognised as a known identity for your CA Server.
davidkel (Wed, 26 Jul 2017 12:30:44 GMT):
@jorisjh import is not possible for transaction javascript code.
jorisjh (Wed, 26 Jul 2017 12:30:55 GMT):
Thank you, it seems like the weirdest choice to use o and --> as delimiters, but fine. I was hoping to find a little more about the language, since the description is ok, but not really explaining everything.[ ](https://chat.hyperledger.org/channel/composer?msg=KeCNzysY7Lu5mBmS5) @mahoney1
ansonlau3 (Wed, 26 Jul 2017 12:32:48 GMT):
@mahoney1 thanks:thumbsup:
davidkel (Wed, 26 Jul 2017 12:36:01 GMT):
@prmdmshra the version of the hyperledger-composer-generator probably needs to be updated, try `npm uninstall -g hyperledger-composer-generator && npm install -g hyperledger-composer-generator`
uber.twin (Wed, 26 Jul 2017 12:43:48 GMT):
@davidkel You are right, I did restart the CA server meanwhile. I think I had this problem before, thanks again. After I deleted the admin cert and keys it works.
I still have this uncertainty regarding the identity requet "affiliation" attribute set to "org1" as my connecting identity does not belong to "org1"
uber.twin (Wed, 26 Jul 2017 12:43:55 GMT):
``` Received registration request from admin: &{RegistrationRequest:{Name:ORG3US33XXX Type:client Secret:<
davidkel (Wed, 26 Jul 2017 12:46:40 GMT):
@uber.twin affiliation is a concept specific to the fabric CA Server. I am assuming you have done no configuration of the CA server and are just using the standard command line to bootstrap the admin identity and leave everything else as default. Thus org1 is the default affiliation in the CA Server.
jorisjh (Wed, 26 Jul 2017 12:48:18 GMT):
What is the suggested way to get around this? Not do anything complex in transactions? can you ship any other code that gets used in the peers? [ ](https://chat.hyperledger.org/channel/composer?msg=jEdccqcNGzxzn8MwE) @davidkel
uber.twin (Wed, 26 Jul 2017 12:53:58 GMT):
@davidkel this is my CA start command
```
command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.frny.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/*_sk -b admin:adminpw -d'
volumes:
- ./crypto-config/peerOrganizations/frny.com/ca/:/etc/hyperledger/fabric-ca-server-config
```
and the ca.frny.com-cert.pem looks like bellow:
```Identity: ca.frny.com
Verified by: ca.frny.com
Expires: 22.07.2027
Subject Name
C (Country): US
ST (State): California
L (Locality): San Francisco
O (Organization): frny.com
CN (Common Name): ca.frny.com
Issuer Name
C (Country): US
ST (State): California
L (Locality): San Francisco
O (Organization): frny.com
CN (Common Name): ca.frny.com
```
davidkel (Wed, 26 Jul 2017 12:55:30 GMT):
@uber.twin that's pretty much a non configured CA server than bootstraps an admin identity with a password of adminpw
davidkel (Wed, 26 Jul 2017 12:55:30 GMT):
@uber.twin that's pretty much a non configured CA server that bootstraps an admin identity with a password of adminpw
mahoney1 (Wed, 26 Jul 2017 12:57:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=G4XtcGW46JQfTaJXC) @ascatox this article might help you (in particular the summary at the end if you don't have time to read all of it -> https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/ and also here https://www.slideshare.net/SimonStone8/introduction-to-hyperledger-composer . Of course - this is also a question for anyone @here that can share their own perspective in their own journey to date.
mahoney1 (Wed, 26 Jul 2017 12:57:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=G4XtcGW46JQfTaJXC) @ascatox this article might help you (in particular the summary at the end if you don't have time to read all of it ) -> https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/ and also here https://www.slideshare.net/SimonStone8/introduction-to-hyperledger-composer . Of course - this is also a question for anyone @here that can share their own perspective in their own journey to date.
mahoney1 (Wed, 26 Jul 2017 12:57:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=G4XtcGW46JQfTaJXC) @ascatox this article might help you (in particular the summary at the end if you don't have time to read all of it ) -> https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/ and also here https://www.slideshare.net/SimonStone8/introduction-to-hyperledger-composer . Of course - this is also a question for anyone @here that can share their own perspective on their own journey to date.
ascatox (Wed, 26 Jul 2017 12:58:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sbBB6LuM52xmAatEG) @mahoney1 Thank you all for contributions in advance!!!
davidkel (Wed, 26 Jul 2017 13:05:27 GMT):
@uber.twin more info about configuring a fabric ca server can be found
http://hyperledger-fabric-ca.readthedocs.io/en/latest/users-guide.html#
uber.twin (Wed, 26 Jul 2017 13:10:30 GMT):
@davidkel thank you
corazza (Wed, 26 Jul 2017 13:27:04 GMT):
how do you refer to the invoking participant inside the TPF? is it maybe the `this` object inside the function?
sstone1 (Wed, 26 Jul 2017 13:29:44 GMT):
`getCurrentParticipant()`
corazza (Wed, 26 Jul 2017 13:30:36 GMT):
thanks @sstone1
gitSrinidhi (Wed, 26 Jul 2017 13:32:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yn5wmYwSP88MCWQrd) @mahoney1 can i go ahead with - k option ? (turn off curl's verification)
Installing Hyperledger Composer prereqs for Ubuntu xenial
# Updating package lists
Hit:1 http://in.archive.ubuntu.com/ubuntu xenial InRelease
Get:2 http://in.archive.ubuntu.com/ubuntu xenial-updates InRelease [102 kB]
Get:3 http://in.archive.ubuntu.com/ubuntu xenial-backports InRelease [102 kB]
Hit:4 http://ppa.launchpad.net/ethereum/ethereum-dev/ubuntu xenial InRelease
Hit:5 http://ppa.launchpad.net/ethereum/ethereum-qt/ubuntu xenial InRelease
Hit:6 http://ppa.launchpad.net/ethereum/ethereum/ubuntu xenial InRelease
Hit:7 http://ppa.launchpad.net/webupd8team/sublime-text-3/ubuntu xenial InRelease
Get:8 http://security.ubuntu.com/ubuntu xenial-security InRelease [102 kB]
Fetched 306 kB in 3s (84.4 kB/s)
Reading package lists... Done
# Installing GitHub
Reading package lists... Done
Building dependency tree
Reading state information... Done
git is already the newest version (1:2.7.4-0ubuntu1.1).
The following packages were automatically installed and are no longer required:
linux-headers-4.4.0-34 linux-headers-4.4.0-34-generic linux-image-4.4.0-34-generic linux-image-extra-4.4.0-34-generic
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 188 not upgraded.
# Installing nvm dependencies
Reading package lists... Done
Building dependency tree
Reading state information... Done
build-essential is already the newest version (12.1ubuntu2).
libssl-dev is already the newest version (1.0.2g-1ubuntu4.8).
The following packages were automatically installed and are no longer required:
linux-headers-4.4.0-34 linux-headers-4.4.0-34-generic linux-image-4.4.0-34-generic linux-image-extra-4.4.0-34-generic
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 188 not upgraded.
# Executing nvm installation script
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
curl: (60) server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none
More details here: http://curl.haxx.se/docs/sslcerts.html
curl performs SSL certificate verification by default, using a "bundle"
of Certificate Authority (CA) public keys (CA certs). If the default
bundle file isn't adequate, you can specify an alternate file
using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
the bundle, the certificate verification probably failed due to a
problem with the certificate (it might be expired, or the name might
not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
the -k (or --insecure) option.
# Installing nodeJS
Installing latest LTS version.
root@kumar-VirtualBox:/home/kumar/Desktop/SBT#
nippleDonkey (Wed, 26 Jul 2017 13:32:37 GMT):
Hi chaps, I'm just working with the access control language and experiencing some odd behaviour.
```
rule OperatorUpdate {
description: "Allow the Operator to view the submitted amounts"
participant(p): "org.sandp.submission.User"
operation: UPDATE
resource(r): "org.sandp.submission.Commodity"
condition: (p.organization.organizationType == 'SUBMITTER' && p.organization.organizationId == r.organization.organizationId)
action: ALLOW
}
```
The odd thing is when i run my test and update 3 commodities, only the 1st one get updated. No errors are thrown. Removing this permission I can update all 3 successfully.
Any thoughts on what I'm doing wrong would be greatly appreciated. Thanks in advance.
elrond (Wed, 26 Jul 2017 13:32:40 GMT):
how do i call a tpf function within a service in angular??
elrond (Wed, 26 Jul 2017 13:32:43 GMT):
anyone?
gitSrinidhi (Wed, 26 Jul 2017 13:35:45 GMT):
@mahoney1 getting ssl issue for the below lines in the script.
# Execute nvm installation script
echo "# Executing nvm installation script"
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
mahoney1 (Wed, 26 Jul 2017 13:42:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CDKTA7tFNcu4KQYwz) @elrond as mentioned, use dataService:DataService
davidkel (Wed, 26 Jul 2017 13:48:00 GMT):
@jorisjh You can have multiple js files in the lib directory. Any function declared in one of those files should be callable from functions in other files. So your transaction function can invoke common functions in the same or other scripts. In the future we hope to see a native node.js chaincode container which would allow require
mahoney1 (Wed, 26 Jul 2017 13:48:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=r34QTALCQCJ3fmYWW) @gitSrinidhi not sure why you're getting ssl issues, except something to do with your environment - > I've just run `curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh >install.sh` and checked that the script file downloaded is valid ; I suspect if you do the same - you will be able to `cat install.sh` and see what your error is ? I'm not sure why you're getting SSL issues in your environment sorry - I've just checked in in my dev VM and it pulls the content just fine.
mahoney1 (Wed, 26 Jul 2017 13:48:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=r34QTALCQCJ3fmYWW) @gitSrinidhi not sure why you're getting ssl issues, except something to do with your environment - > I've just run `curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh >install.sh` and checked that the script file downloaded is valid ; I suspect if you do the same - you will be able to `cat install.sh` and see what your error is ? I'm not sure why you're getting SSL issues in your environment sorry - I've just checked in my dev VM and it pulls the content just fine.
mahoney1 (Wed, 26 Jul 2017 13:49:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CDKTA7tFNcu4KQYwz) @elrond you can call the TPF using the Composer REST APIs or Node.js client APIs, which will submit a request to 'the blockchain' to run the TPF
jorisjh (Wed, 26 Jul 2017 13:51:55 GMT):
Thank you! That sounds like a reasonable solution. [ ](https://chat.hyperledger.org/channel/composer?msg=aHSDzuYEh65gQWGPG) @davidkel
jogando (Wed, 26 Jul 2017 14:02:01 GMT):
Hello everyone. Composer seems to be a lot easier than writing chaincode and deploying it to Fabric. Are there any limitations in Composer? for example, things you can do in chaincode but not available in Composer. Thanks!
Ricckk (Wed, 26 Jul 2017 14:03:48 GMT):
Has joined the channel.
jorisjh (Wed, 26 Jul 2017 14:12:24 GMT):
New to node.js, it seems require works, at least it doesn't throw errors yet.[ ](https://chat.hyperledger.org/channel/composer?msg=bai3fWiYicMf8vHcu) @jorisjh
jorisjh (Wed, 26 Jul 2017 14:12:24 GMT):
New to node.js, it seems require works, at least it doesn't throw errors yet.[ ](https://chat.hyperledger.org/channel/composer?msg=bai3fWiYicMf8vHcu) @davidkel
uber.twin (Wed, 26 Jul 2017 14:22:20 GMT):
@davidkel I am looking at my CA config file (fabric-ca-server-config.yaml) and the CA section looks like a default, i.e.
ca:
# Name of this CA
name:
# Key file (default: ca-key.pem)
keyfile: ca-key.pem
# Certificate file (default: ca-cert.pem)
certfile: ca-cert.pem
# Chain file (default: chain-cert.pem)
chainfile: ca-chain.pem
even though I've started it with explicit --ca.chainfile --ca.keyfile options:
```
fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.frny.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/*_sk -b admin:adminpw -d
```
uber.twin (Wed, 26 Jul 2017 14:22:20 GMT):
@davidkel I am looking at my CA config file (fabric-ca-server-config.yaml) and the CA section looks like a default, i.e.
```
ca:
# Name of this CA
name:
# Key file (default: ca-key.pem)
keyfile: ca-key.pem
# Certificate file (default: ca-cert.pem)
certfile: ca-cert.pem
# Chain file (default: chain-cert.pem)
chainfile: ca-chain.pem
```
even though I've started it with explicit --ca.chainfile --ca.keyfile options:
```
fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.frny.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/*_sk -b admin:adminpw -d
```
uber.twin (Wed, 26 Jul 2017 14:22:20 GMT):
@davidkel I am looking at my CA config file (fabric-ca-server-config.yaml) and the CA section looks like a default, i.e.
```
ca:
# Name of this CA
name:
# Key file (default: ca-key.pem)
keyfile: ca-key.pem
# Certificate file (default: ca-cert.pem)
certfile: ca-cert.pem
# Chain file (default: chain-cert.pem)
chainfile: ca-chain.pem
```
even though I've started it with explicit --ca.certfile --ca.keyfile options:
```
fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.frny.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/*_sk -b admin:adminpw -d
```
uber.twin (Wed, 26 Jul 2017 14:22:49 GMT):
is this normal?
uber.twin (Wed, 26 Jul 2017 14:26:37 GMT):
only the -b option seems to be reflected by the config file : ```registry:
# Maximum number of times a password/secret can be reused for enrollment
# (default: -1, which means there is no limit)
maxenrollments: -1
# Contains identity information which is used when LDAP is disabled
identities:
- name: admin
pass: adminpw```
mahoney1 (Wed, 26 Jul 2017 14:36:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CsJEzEsyCwgxp6GRP) @nippleDonkey at first glance, the ACL looks fine (notwithstanding the odd behaviour reported) - I've seen a similar use for string comparison operator here -> https://github.com/hyperledger/composer/blob/master/packages/composer-common/test/acl/test.acl line 91 `condition: (tx.asset.colour === 'blue')` - but both should work fine in your case.
nippleDonkey (Wed, 26 Jul 2017 14:37:46 GMT):
thanks @mahoney1 do you know if the && operands are acceptable? I can't find documentation to say what is or isn't supported?
mahoney1 (Wed, 26 Jul 2017 14:45:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SLFLRBE77RnW57syd) @nippleDonkey ah, ok - we should add something about that. Yes it is supported and your use of it is fine. An example of && shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/permissions.acl
nippleDonkey (Wed, 26 Jul 2017 14:45:47 GMT):
Thanks!
corazza (Wed, 26 Jul 2017 14:49:09 GMT):
`getCurrentParticipant()` returns `null` inside a TPF. I think this is because the test that submitted the transaction didn't specify which participant was submitting it. how do I specify that?
davidkel (Wed, 26 Jul 2017 14:53:52 GMT):
@uber.twin I don't know much about configuring the CA Server but I assume that CLI options would override any other config definition
corazza (Wed, 26 Jul 2017 14:56:17 GMT):
@mahoney1 pls help
mahoney1 (Wed, 26 Jul 2017 14:57:01 GMT):
2 [ ](https://chat.hyperledger.org/channel/composer?msg=oXqbtnEYymPFEHjd2) @corazza on `getCurrentParticipant()` - see here for example of getting who the participant is (identity of the caller submitting the txn) -> https://hyperledger.github.io/composer/managing/current-participant.html but the key for non-null 'return' is that an identity is associated (ssued) for the participant
mahoney1 (Wed, 26 Jul 2017 14:57:01 GMT):
2 [ ](https://chat.hyperledger.org/channel/composer?msg=oXqbtnEYymPFEHjd2) @corazza on `getCurrentParticipant()` - see here for example of getting who the participant is (identity of the caller submitting the txn) -> https://hyperledger.github.io/composer/managing/current-participant.html but the key for non-null 'return' is that an identity is associated (issued) for the participant
mahoney1 (Wed, 26 Jul 2017 14:57:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oXqbtnEYymPFEHjd2) @corazza on `getCurrentParticipant()` - see here for example of getting who the participant is (identity of the caller submitting the txn) -> https://hyperledger.github.io/composer/managing/current-participant.html but the key for non-null 'return' is that an identity is associated (issued) for the participant
corazza (Wed, 26 Jul 2017 14:57:39 GMT):
@mahoney1 I think I get what you mean, but for my tests to pass, I need that to be non-null
corazza (Wed, 26 Jul 2017 14:58:04 GMT):
ideally it'd look like `submitTransaction(txn, participant)`
corazza (Wed, 26 Jul 2017 14:58:35 GMT):
but that method has no way of connecting the txn with the participant, which I generate dynamically in the test alongisde the txn
corazza (Wed, 26 Jul 2017 14:59:17 GMT):
if it was a live system I suppose that would be specified by the submitting system or whatever and it would work, but in the testing environment it doesn't
mahoney1 (Wed, 26 Jul 2017 15:15:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=57ZocMfAnboLYX5GY) @corazza right - see example here of setting up a trade transaction is set up to submitTransaction() https://hyperledger.github.io/composer/tutorials/developer-guide.html you can add a `participant` property to your transaction and assign it the participant who submitted the transaction. It uses the credentials for the identity you specified when you connect to the business network ie to identify the participant and and set it using `getCurrentParticipant()
mahoney1 (Wed, 26 Jul 2017 15:15:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=57ZocMfAnboLYX5GY) @corazza right - see example here of setting up a trade transaction to submitTransaction() https://hyperledger.github.io/composer/tutorials/developer-guide.html - you can add a `participant` property to your transaction and assign it the participant who submitted the transaction. It uses the credentials for the identity you specified when you connect to the business network ie to identify the participant and set it using `getCurrentParticipant()
corazza (Wed, 26 Jul 2017 15:34:21 GMT):
@mahoney1 Yeah, that's what we previously did, but my logic was that we shouldn't be required to set a `participant` field in the transaction since that would be redundant--all transactions are inherently tied to participants, right?
corazza (Wed, 26 Jul 2017 15:34:46 GMT):
But still, if that's the simpler solution, I'll add like a `self` field and go with that..
corazza (Wed, 26 Jul 2017 15:34:46 GMT):
@dselman yes, I know, but that method doesn't work in a testing environment
dselman (Wed, 26 Jul 2017 15:35:28 GMT):
TP functions can call `getCurrentParticipant()` to retrieve the participant that has submitted a transaction
dselman (Wed, 26 Jul 2017 15:36:58 GMT):
it should
dselman (Wed, 26 Jul 2017 15:37:05 GMT):
we have tests that do that
corazza (Wed, 26 Jul 2017 15:37:09 GMT):
nope. returns `null`
corazza (Wed, 26 Jul 2017 15:37:15 GMT):
can you give me an example?
dselman (Wed, 26 Jul 2017 15:37:22 GMT):
probably because you've not issues the identity in your test
dselman (Wed, 26 Jul 2017 15:37:31 GMT):
e.g. see the test for the pii-network
corazza (Wed, 26 Jul 2017 15:37:34 GMT):
yeah probably, I don't know much about that
corazza (Wed, 26 Jul 2017 15:37:47 GMT):
have a link?
dselman (Wed, 26 Jul 2017 15:38:12 GMT):
https://github.com/hyperledger/composer-sample-networks/tree/master/packages/pii-network
corazza (Wed, 26 Jul 2017 15:43:15 GMT):
@dselman went over your test code
corazza (Wed, 26 Jul 2017 15:43:19 GMT):
it makes sense now
corazza (Wed, 26 Jul 2017 15:43:25 GMT):
we won't do that:D
corazza (Wed, 26 Jul 2017 15:43:28 GMT):
not now, that is
theophoric (Wed, 26 Jul 2017 15:51:08 GMT):
I've suddenly run into an issue where couchdb container isn't starting -- everything was working fine a couple days ago using the `https://hyperledger.github.io/composer/install-hlfv1.sh` script. Has anyone run into this or have suggestions ?
dwakeman (Wed, 26 Jul 2017 16:23:54 GMT):
I have a fabric 1.0.0 environment running in containers that are accessible from bluemix. I want to build a cloud foundry app (node.js) to use the node api to connect to my network. I think I know what dependencies to add to my package.json to load the composer libraries, but how do I do the `composer identity import`? I know how to build the connection profile in a directory as part of the deploy pipeline, and I used to just create an empty keystore directory, but that no longer works. I have the certs for my fabric environment but I'm not sure how to do the import. Anybody done this? I searched through the channel but didn't find anything. thx!!
mahoney1 (Wed, 26 Jul 2017 16:27:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vwNnbdXTm8foLwjeR) @gitSrinidhi I can't advise on use of -k option - I did read that article you posted. SSL peer certificate errors usually occur when validation of the trust chain (not the actual certificate) fails. Normally, my first recommendation would be to update the CA bundle on the machine. You need to get the pre-requisites manually (ie by following the script we made available to assist with the pre-reqs install) and see exactly where the problem lies. Have you tried another VM for example or pristine snapshot state? Sorry I can't help with this particular issue further.
davidkel (Wed, 26 Jul 2017 16:42:45 GMT):
@dwakeman composer identity import is used to import crypto-material into your connection profile's keyValStore and assign it label. An example where you would need to do that is to import the crypto material for a Peer administrator so that you can then install the composer runtime onto a peer using the `composer runtime install` command. The command should have an example of it's use at
https://hyperledger.github.io/composer/reference/composer.identity.import.html
dwakeman (Wed, 26 Jul 2017 17:01:23 GMT):
right, I've used it successfully locally and in docker images I have built, but I'm not sure how to do that for a cloud foundry app.
davidkel (Wed, 26 Jul 2017 18:21:39 GMT):
@dwakeman It's available on AdminConnection Class
Which for some reason doesn't appear in our documentation Doh
```
let adminConnection = cmdUtil.createAdminConnection();
let signerCert;
let key;
try {
signerCert = fs.readFileSync(publicKeyFile).toString();
} catch(error) {
return Promise.reject(new Error('Unable to read public key file ' + publicKeyFile + '. ' + error.message));
}
try {
key = fs.readFileSync(privateKeyFile).toString();
} catch(error) {
return Promise.reject(new Error('Unable to read private key file ' + privateKeyFile + '. ' + error.message));
}
return adminConnection.importIdentity(connectionProfileName, userId, signerCert, key)
.then((result) => {
console.log(`An identity was imported with name '${userId}' successfully`);
});
```
from the CLI command
dwakeman (Wed, 26 Jul 2017 18:24:56 GMT):
@davidkel so I can run the app and do that before i make a regular connection? using the admin credentials I assume.
davidkel (Wed, 26 Jul 2017 18:27:06 GMT):
@dwakeman It depends on the credentials you are importing as to what you want to do with that identity. If it is an identity you need to install the composer runtime or start the business network then you need them imported before doing either of those 2 tasks
dwakeman (Wed, 26 Jul 2017 18:28:23 GMT):
it's an identity I can use to subscribe to events emitted by my network. I've been using PeerAdmin locally, but I suppose it could be any identity with the right permissions. Thx for the info!!
jorisjh (Wed, 26 Jul 2017 19:08:42 GMT):
Any idea how to get the peers to call an outside API or get outside resources from the web?
```
0 passing (1s)
1 failing
1) Commodity Trading #tradeCommodity should be able to trade a commodity:
ReferenceError: XMLHttpRequest is not defined
at httpGet (eval at
jorisjh (Wed, 26 Jul 2017 19:08:42 GMT):
Any idea how to get the peers to call an outside API or get outside resources from the web?
```
0 passing (1s)
1 failing
1) Commodity Trading #tradeCommodity should be able to trade a commodity:
ReferenceError: XMLHttpRequest is not defined
at httpGet (eval at
jorisjh (Wed, 26 Jul 2017 19:08:42 GMT):
Any idea how to get the peers to call an outside API or get outside resources from the web?
```
0 passing (1s)
1 failing
1) Commodity Trading #tradeCommodity should be able to trade a commodity:
ReferenceError: XMLHttpRequest is not defined
at httpGet (eval at
jorisjh (Wed, 26 Jul 2017 19:08:42 GMT):
Any idea how to get the peers to call an outside API or get outside resources from the web?
```
0 passing (1s)
1 failing
1) Commodity Trading #tradeCommodity should be able to trade a commodity:
ReferenceError: XMLHttpRequest is not defined
at httpGet (eval at
dselman (Wed, 26 Jul 2017 19:16:47 GMT):
you can use the experimental `post` api to do that (see docs)
dselman (Wed, 26 Jul 2017 19:17:00 GMT):
we don't yet support `HTTP GET`
jorisjh (Wed, 26 Jul 2017 19:17:38 GMT):
It seems the runtime is actually otto? Any way to get these extensions installed? https://github.com/deoxxa/ottoext
jorisjh (Wed, 26 Jul 2017 19:18:07 GMT):
and thanks @dselman for helping along, just trying to wrap my head around how to achieve this
dselman (Wed, 26 Jul 2017 19:22:27 GMT):
We now use Duktape - much better performance
dselman (Wed, 26 Jul 2017 19:23:10 GMT):
We are working with the Fabric team on native Node.js chaincode execution, which will give us even better performance and open up chaincode to use any npm module
dselman (Wed, 26 Jul 2017 19:23:23 GMT):
That won't hit until Oct/Nov however
jorisjh (Wed, 26 Jul 2017 19:23:23 GMT):
Yes that would be fantastic
jdockter (Wed, 26 Jul 2017 19:24:17 GMT):
@dselman are you guys doing a release tomorrow? If so, what are you hoping to include for functionality?
dselman (Wed, 26 Jul 2017 19:26:21 GMT):
impatient!
dselman (Wed, 26 Jul 2017 19:26:35 GMT):
let me check what's on the train
jdockter (Wed, 26 Jul 2017 19:27:09 GMT):
ha thanks
jorisjh (Wed, 26 Jul 2017 19:30:31 GMT):
is Duktape extendable to allow something like an XMLhttprequest?
dselman (Wed, 26 Jul 2017 19:31:19 GMT):
```
TLS support for composer-rest-server
Emitted events put on Web Socket for composer-rest-server
README.md file editor for Playground
composer network upgrade command
composer identity list command
Validation of queries
Doc and website fixes
All the README.md files for the sample networks have been updated
```
dselman (Wed, 26 Jul 2017 19:31:40 GMT):
@jorisjh no, not easily
dselman (Wed, 26 Jul 2017 19:32:14 GMT):
You'll have to use the POST stuff and stick something like Node-RED in front of it to broker a POST into a GET.
dselman (Wed, 26 Jul 2017 19:32:14 GMT):
You'll have to use the post API and stick something like Node-RED in front of it to broker a POST into a GET.
UDeshmukh (Wed, 26 Jul 2017 20:03:17 GMT):
I’m trying to install Development environment on my (Windows 7 – 64 bit) Laptop but am facing issues – pl. see details below.
I’m following installation steps mentioned on below URL:
https://hyperledger.github.io/composer/installing/development-tools.html
I already have following installed as part of Fabric installation:
Node version v6.11.0
npm version 5.3.0
Docker version 17.05.0-ce build 89658be
Docker-compose version 1.13.0 build 1719ceb8
Git version 2.13.2.windows.1
I have Docker Quickstart Terminal installed
When I ran ./prereqs-ubuntu.sh (as mentioned on the URL above) I got following error
Error: Release information not found. Run script passing Ubuntu version codename as a parameter
So I tried following ./prereqs-ubuntu.sh xenial – and I got following error message:
./prereqs-ubuntu.sh Line 35: sudo: command not found
My PATH environment variable is set as:
PATH=/c/Users/IBM_ADMIN/bin:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/mingw64/b
in:/usr/bin:/c/Users/IBM_ADMIN/bin:/c/windows/system32:/c/windows:/c/windows/Sys
tem32/Wbem:/c/windows/System32/WindowsPowerShell/v1.0:/c/Program Files/ThinkPad/
Bluetooth Software:/c/Program Files/ThinkPad/Bluetooth Software/syswow64:/c/Prog
ram Files (x86)/Skype/Phone: C:/Program Files (x86)/cURL:/cmd:/c/Program Files/n
odejs:/c/Go/bin:/c/Program Files/Docker Toolbox:/c/Users/IBM_ADMIN/AppData/Roami
ng/npm:/c/Program Files (x86)/Microsoft VS Code/bin:/usr/bin/vendor_perl:/usr/bi
n/core_perl
I checked and found that I don’t have both sudo & su in the /usr/bin Folder.
Appreciate any help/suggestions.
Thanks!
Udayan
sstone1 (Wed, 26 Jul 2017 20:13:25 GMT):
@UDeshmukh windows is not supported. you must use linux or macos.
sstone1 (Wed, 26 Jul 2017 20:13:41 GMT):
you could use virtualbox/vmware on windows to create an ubuntu virtual machine though
UDeshmukh (Wed, 26 Jul 2017 20:16:17 GMT):
Hi @sstone1 I have oracle VM Virtual Box installed. should that not help?
prmdmshra (Wed, 26 Jul 2017 20:16:46 GMT):
I have deployed sample carauction-network successfully. But, I am getting the following error on executing 'yo hyperledger-composer' to generate Angular application. Please suggest.
events.js:160
throw er; // Unhandled 'error' event
^
Error: {"created":"@1501097299.312735443","description":"Failed parsing HTTP/2","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":2022,"grpc_status":14,"referenced_errors":[{"created":"@1501097299.312712678","description":"Expected SETTINGS frame as the first frame, got frame type 80","file":"../src/core/ext/transport/chttp2/transport/parsing.c","file_line":479}{"created":"@1501097299.312727024","description":"Trying to connect an http1.x server","file":"../src/core/ext/transport/chttp2/transport/chttp2_transport.c","file_line":1995,"http_status":400}]}
at /usr/lib/node_modules/generator-hyperledger-composer/node_modules/grpc/src/node/src/client.js:417:17
sstone1 (Wed, 26 Jul 2017 20:19:16 GMT):
@UDeshmukh from the error above it looks like you are running in a bash shell in the windows environment rather than in a linux virtual machine
sstone1 (Wed, 26 Jul 2017 20:19:16 GMT):
there are loads of references to windows style paths in your PATH - /c/Users/... - etc
UDeshmukh (Wed, 26 Jul 2017 20:21:50 GMT):
I see... I'm sure you can tell that I'm a newbie at this... :blush: What do I need to do to use Virtualbox/vmware instead? Canyou kindly send relevant links that I could follow
RudiDahle (Wed, 26 Jul 2017 21:03:21 GMT):
I am using composer 0.9. I generated a new skeleton webapp now, and then I got an error message saying
```
Connection fails: Error: error trying to ping. Error: Deployed chain-code (0.9.0) is incompatible with client (0.10.0)
```
RudiDahle (Wed, 26 Jul 2017 21:04:07 GMT):
How can i generate a webapp compatible with version 0.9 (updating to composer 0.10 is not an option)
RudiDahle (Wed, 26 Jul 2017 21:04:07 GMT):
How can i generate a webapp compatible with version 0.9 (updating to composer 0.10 is not an option)?
dselman (Wed, 26 Jul 2017 21:09:27 GMT):
You need to edit the generated package.json to use the right version of the composer modules
dselman (Wed, 26 Jul 2017 21:10:37 GMT):
And make sure you have the `npm install -g composer-cli@0.9.0`
nehalshah50 (Wed, 26 Jul 2017 21:12:46 GMT):
Hi, I am trying to add new identity through playground and keep getting error Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]()
RudiDahle (Wed, 26 Jul 2017 21:15:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9p7AQyzaz8CHa7aKy) @dselman Thank you!
nehalshah50 (Wed, 26 Jul 2017 21:17:11 GMT):
{
"name": "trade_network",
"version": "0.0.1",
"description": "A network for trade",
"scripts": {
"test": "mocha --recursive"
},
"author": "Nehal Shah",
"email": "nehal.shah@usbank.com",
"license": "Apache-2.0",
"devDependencies": {
"composer-admin": "latest",
"composer-client": "latest",
"composer-connector-embedded": "latest",
"browserfs": "latest",
"chai": "latest",
"eslint": "latest",
"istanbul": "latest",
"mkdirp": "latest",
"mocha": "latest"
}
}
nehalshah50 (Wed, 26 Jul 2017 21:17:23 GMT):
this is what I have in the package.json
nehalshah50 (Wed, 26 Jul 2017 21:20:25 GMT):
I am on 0.10.0 version
nehalshah50 (Wed, 26 Jul 2017 21:21:26 GMT):
I can define and test network fine in playground but can't add new identity
dwakeman (Wed, 26 Jul 2017 21:39:23 GMT):
Hello, question about `composer identity import`..... I know what it does and I've done it locally on my mac, where I can connect successfully to my fabric. If I want to use composer on a different environment (say an ubuntu vmware image running on my mac), do I have to copy the certs into ubuntu and run `composer identity import` inside the image, or can I just copy the contents of my `keyValStore` directory on my mac into the image?
dwakeman (Wed, 26 Jul 2017 21:39:23 GMT):
Hello, question about `composer identity import`..... I know what it does and I've done it locally on my mac, where I can connect successfully to my fabric. If I want to use composer on a different environment (say an ubuntu vmware image running on my mac), do I have to copy the certs into ubuntu and run `composer identity import` inside the image, or can I just copy the contents of my `keyValStore` directory on my mac into the image? My fabric environment is not running on my mac, if that matters.
dwakeman (Wed, 26 Jul 2017 21:39:23 GMT):
Hello, question about `composer identity import`..... I know what it does and I've done it locally on my mac, where I can connect successfully to my fabric. If I want to use composer on a different environment (say an ubuntu vmware image running on my mac), do I have to copy the certs into ubuntu and run `composer identity import` inside the image, or can I just copy the contents of my `keyValStore` directory on my mac into the image? My fabric environment is not running on my mac, if that matters.
davidkel (Wed, 26 Jul 2017 21:50:49 GMT):
@dwakeman if it is communicating with the same fabric, then you can copy the contents from one keyValStore to another or if you are feeling adventurous you could share your current keyValStore with between the 2 systems
davidkel (Wed, 26 Jul 2017 21:50:49 GMT):
@dwakeman if it is communicating with the same fabric, then you can copy the contents from one keyValStore to another or if you could share your current keyValStore with between the 2 system
davidkel (Wed, 26 Jul 2017 21:50:49 GMT):
@dwakeman if it is communicating with the same fabric, then you can copy the contents from one keyValStore to another or you could share your current keyValStore with between the 2 systems
davidkel (Wed, 26 Jul 2017 21:50:49 GMT):
@dwakeman if it is communicating with the same fabric, then you can copy the contents from one keyValStore to another or you could share your current keyValStore between the 2 systems
davidkel (Wed, 26 Jul 2017 21:50:49 GMT):
@dwakeman if it is communicating with the same fabric, then you can copy the contents from one keyValStore to another or you could share your current keyValStore between the 2 systems using shared folders for example
UDeshmukh (Wed, 26 Jul 2017 21:58:22 GMT):
Message Attachments
UDeshmukh (Wed, 26 Jul 2017 22:00:08 GMT):
@sstone1 @dselman I have VirtualBox on my Laptop as seen above .I guess it was installed as part of docker install ? But I see that it's not Linux Ubuntu. Do I need to create another VM for composer ?
dwakeman (Wed, 26 Jul 2017 22:05:15 GMT):
@davidkel What I really want to do is add the contents of the keyValStore to my github repo so that I can copy it to my node.js app container in Bluemix when I deploy it. Rather than writing code into my app to do it. Not a production solution, but I am just building some prototypes/demos. thx!
sstone1 (Wed, 26 Jul 2017 23:12:36 GMT):
@UDeshmukh it looks like you have set up Docker Machine. We don't support that. You need to download Ubuntu and install an Ubuntu VM in Virtual Box, and use Composer inside the Ubuntu VM.
UDeshmukh (Wed, 26 Jul 2017 23:20:02 GMT):
Hello @sstone1 I had used steps mentioned at http://hyperledger-fabric.readthedocs.io/en/latest/dev-setup/devenv.html?highlight=git%20config#note-to-windows-users to install Fabric. These steps installed all the components I currently have. Do I need to uninstall these in order to follow the Ubuntu VM install as you suggest?
ArnabChatterjee (Wed, 26 Jul 2017 23:38:22 GMT):
Has joined the channel.
ArnabChatterjee (Wed, 26 Jul 2017 23:47:35 GMT):
Hello everyone. I am trying to deploy a sample network from https://github.com/hyperledger/composer-sample-networks/tree/master/packages/basic-sample-network by following the tutorial from https://hyperledger.github.io/composer/installing/development-tools.html, https://hyperledger.github.io/composer/reference/composer.network.deploy.html , and https://hyperledger.github.io/composer/tutorials/developer-guide.html but I am facing the below error while running the command `composer network deploy -l DEBUG -a dist/basic-sample-network.bna -p hlfv1 -i admin -s adminpw` Deploying business network from archive: dist/basic-sample-network.bna
Business network definition:
Identifier: basic-sample-network@0.1.3
Description: The Hello World of Hyperledger Composer samples
✖ Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying install chaincode. Error: Connect Failed
Command failed
ArnabChatterjee (Wed, 26 Jul 2017 23:48:29 GMT):
Below are the docker images running on my system:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
57fab31eae01 hyperledger/fabric-peer:x86_64-1.0.0 "peer node start -..." 13 hours ago Up 13 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
ce59cf445057 hyperledger/fabric-couchdb:x86_64-1.0.0 "tini -- /docker-e..." 13 hours ago Up 13 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
5719ad5a4048 hyperledger/fabric-orderer:x86_64-1.0.0 "orderer" 13 hours ago Up 13 hours 0.0.0.0:7050->7050/tcp orderer.example.com
dc396b91080d hyperledger/fabric-ca:x86_64-1.0.0 "sh -c 'fabric-ca-..." 13 hours ago Up 13 hours 0.0.0.0:7054->7054/tcp ca.org1.example.com
ArnabChatterjee (Wed, 26 Jul 2017 23:49:04 GMT):
Message Attachments
ArnabChatterjee (Wed, 26 Jul 2017 23:49:27 GMT):
Thanks
camdenT (Thu, 27 Jul 2017 01:19:26 GMT):
Hey all! I'm trying to use the Yeoman generator to create a skeleton business network; however, I am running into an error when I try to assign the network a name. It is not recognizing the name I give it as valid. Anyone else run into this issue?
camdenT (Thu, 27 Jul 2017 01:19:40 GMT):
Message Attachments
camdenT (Thu, 27 Jul 2017 01:19:55 GMT):
Message Attachments
camdenT (Thu, 27 Jul 2017 02:20:56 GMT):
On a separate note: In the developer tutorial, why is tradingSymbol used as the unique identifier of Commodity? In the real world, multiple people have assets with the same trading symbol; doesn't that mean the identifier isn't unique?
ZiaullhaqSavanur (Thu, 27 Jul 2017 06:59:51 GMT):
Has joined the channel.
ZiaullhaqSavanur (Thu, 27 Jul 2017 06:59:54 GMT):
Does any body know how to upload a document using Hyperledger Composer.
KevinBai (Thu, 27 Jul 2017 07:22:58 GMT):
Can composer call other chaincode? example code by Golang?
KevinBai (Thu, 27 Jul 2017 07:24:11 GMT):
my chaincode have deployed, I want to use it in composer
KevinBai (Thu, 27 Jul 2017 07:28:53 GMT):
@sstone1
vikas_hada (Thu, 27 Jul 2017 07:55:17 GMT):
Has joined the channel.
geoms (Thu, 27 Jul 2017 08:06:29 GMT):
Team, I'm trying to implement participant-based access control
baoyangc (Thu, 27 Jul 2017 08:07:13 GMT):
"keyValStore": "/home/composer/.hfc-key-store"
baoyangc (Thu, 27 Jul 2017 08:07:29 GMT):
is this correct for image composer-rest-server
baoyangc (Thu, 27 Jul 2017 08:07:30 GMT):
?
baoyangc (Thu, 27 Jul 2017 08:08:08 GMT):
`"keyValStore":"/home/composer/.composer-credentials",`
baoyangc (Thu, 27 Jul 2017 08:10:52 GMT):
`oser | Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]`
I start composer-rest-server in docker, and it report this
baoyangc (Thu, 27 Jul 2017 08:12:54 GMT):
` set "composer" to { connectionProfileName: 'org1', businessNetworkIdentifier: 'banquanjia', participantId: 'admin', participantPwd: 'adminpw', namespaces: 'never', port: undefined, security: true }`
baoyangc (Thu, 27 Jul 2017 08:14:17 GMT):
my fabric-ca-server is booted with -b admin:adminpw
camdenT (Thu, 27 Jul 2017 08:19:49 GMT):
@geoms did you look through this page? :
https://hyperledger.github.io/composer/reference/acl_language.html
lucrezia.dm (Thu, 27 Jul 2017 09:02:30 GMT):
Has joined the channel.
dselman (Thu, 27 Jul 2017 09:05:34 GMT):
@KevinBai not yet... we are planning to add support to that through a generic "links" mechanism.
lucrezia.dm (Thu, 27 Jul 2017 09:05:41 GMT):
Hi people,
camdenT (Thu, 27 Jul 2017 09:08:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8KCtoKWZvoYxJSDY9) To be clear, I have been trying to think of a way where you have two commodities with the same trading symbol (not currently possible with the tutorial setup), owned by two separate participants. If one of the participants were to give the entirety of his/her asset to the other participant, instead of the receiving participant having two separate assets with the same symbol, he/she would have one asset with the combined value of the two assets; however, I can't think of a way to properly implement it with the modeling language. Anyone have any ideas? How would you uniquely identify the assets in this scenario?
lucrezia.dm (Thu, 27 Jul 2017 09:08:56 GMT):
When I use Playground of Composer and I choose the example "pii-network" I have the same error for actions "authorize access"and " revoke access" . It's " TypeError: Cannot read property 'getIdentifier' of null " . CAn anyone help me?! Thanks a lot
dselman (Thu, 27 Jul 2017 09:12:32 GMT):
@lucrezia.dm you are using composer-playground.mybluemix.net ?
lucrezia.dm (Thu, 27 Jul 2017 09:13:08 GMT):
@dselman yes!
dselman (Thu, 27 Jul 2017 09:15:50 GMT):
You are probably running it as "admin" which has not been mapped to a participant. You should click "admin" in the header bar to access the Wallet for admin, and then add 2 new participants (alice and bob, for example), add them to your Wallet and then switch between them for testing.
dselman (Thu, 27 Jul 2017 09:16:29 GMT):
The error is coming from the transaction processor function most likely:
dselman (Thu, 27 Jul 2017 09:16:34 GMT):
```
var me = getCurrentParticipant();
console.log('**** AUTH: ' + me.getIdentifier() + ' granting access to ' + authorize.memberId );
```
dselman (Thu, 27 Jul 2017 09:17:08 GMT):
We should add a check there (or ACL rule) to reject the transaction if it has not been submitted by a certificate that is mapped to a participant.
KevinBai (Thu, 27 Jul 2017 09:27:01 GMT):
@dselman Can I use third sdk in the composer? fabric-sdk-node?
dselman (Thu, 27 Jul 2017 09:27:40 GMT):
@here reminder - if you are frustrated that your question is getting buried in the constant influx of chat don't hesitate to post well-formed questions to StackOverflow. Currently almost all questions on there are answered! ;-)
dselman (Thu, 27 Jul 2017 09:28:02 GMT):
https://stackoverflow.com/questions/tagged/hyperledger-composer
dselman (Thu, 27 Jul 2017 09:29:14 GMT):
@KevinBai no, not yet. We are working on native Node.js chaincode execution which will open up all npm modules for use in TP functions.
mahoney1 (Thu, 27 Jul 2017 09:32:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=F8onv3YDawENjuocM) @UDeshmukh hi there and welcome ! yes you do - and have a minimum of 4Gb or more available for that virtual machine. You can get an Ubuntu Server 16.04 LTS image such as https://www.ubuntu.com/download/server .. Note that Composer will 'stand up' a simple runtime Fabric blockchain environment for you - so your install links for Fabric (where you see Windows references) are not particularly relevant just to stand up a Fabric for developing using Composer. The install guide for Hyperledger Composer (once you've installed your Ubuntu server image inside a VM) is here - https://hyperledger.github.io/composer/installing/development-tools.html - you will note that there it talks about a prereqs-ubuntu.sh script which you can use to install pre-requisites - and further down the page there are instructions for pulling down the dockerized Fabric environment to run inside your Ubuntu VM. I hope this helps.
mahoney1 (Thu, 27 Jul 2017 09:40:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FCBHPmMPDrDQaNQx4) @ArnabChatterjee you need to use PeerAdmin not admin : `composer network deploy -l DEBUG -a dist/basic-sample-network.bna -p hlfv1 -i PeerAdmin -s random` . its already imported into your keyValStore and hlfv1 defined in your connection profile.
zupan (Thu, 27 Jul 2017 09:55:17 GMT):
I have a conceptual question. I'm performing async requests to Composer REST and I'm getting message: `'error trying invoke chaincode. Error: Peer has rejected transaction \'552b42fa4d2cfd366ff1b7d01371878f53f7553b44f141187c6db86b75f68906\' with cdoe MVCC_READ_CONFLICT', `. I got the same problem when using node-sdk. What is the reason for that? Shouldn't it be possible to submit multiple transactions asynchronously?
dselman (Thu, 27 Jul 2017 09:59:05 GMT):
@zupan Fabric uses lock-free optimistic concurrency, with rollback in case of dirty read/writes. You need to avoid key collisions as far as possible and may need to write retry logic on the client side.
dselman (Thu, 27 Jul 2017 09:59:19 GMT):
Best to take this up on the #fabric channel
zupan (Thu, 27 Jul 2017 10:00:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=b58X7Sbo3qTHaHhhW) @dselman Thank you for the response and direction!
dselman (Thu, 27 Jul 2017 10:02:03 GMT):
Captured this as an FAQ here: https://stackoverflow.com/questions/45347439/mvcc-read-conflict-when-submitting-multiple-transactions-concurrently/45347452#45347452
Bilings_s (Thu, 27 Jul 2017 10:02:20 GMT):
Has joined the channel.
ascatox (Thu, 27 Jul 2017 10:12:01 GMT):
Someone has encountered this error in deploying a bna archive ` Transaction returned with failure: SyntaxError: unterminated statement (line 73)`?
dselman (Thu, 27 Jul 2017 10:13:25 GMT):
It's a syntax error in your JS
dselman (Thu, 27 Jul 2017 10:13:49 GMT):
Open your JS script files in VSCode, should help you find it
dselman (Thu, 27 Jul 2017 10:14:08 GMT):
(install the ESLint) extension if you don't have it
ascatox (Thu, 27 Jul 2017 10:14:21 GMT):
Thank you very much @dselman !!!
dselman (Thu, 27 Jul 2017 10:14:44 GMT):
...we need to add the file name into the error message somehow.
ascatox (Thu, 27 Jul 2017 10:24:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ucqDZx3LftifDHdQa) @dselman The file name would be very very useful :grin:
dselman (Thu, 27 Jul 2017 10:45:37 GMT):
can you create an issue for that please -- if you could attach a BNA to reproduce that would be ace
dselman (Thu, 27 Jul 2017 10:45:52 GMT):
https://github.com/hyperledger/composer/issues
ascatox (Thu, 27 Jul 2017 11:24:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EfoPvWptRDxyv6GZK) @dselman https://github.com/hyperledger/composer/issues/1680
UDeshmukh (Thu, 27 Jul 2017 11:39:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KqoobKpjsw84ct9mB) @mahoney1 Many Thanks! I'll get on with your suggestion, regards, Udayan
baoyangc (Thu, 27 Jul 2017 11:52:06 GMT):
could i set such ENV ```export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "REPLACE_WITH_CLIENT_ID",
"clientSecret": "REPLACE_WITH_CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
``` into a config file
uber.twin (Thu, 27 Jul 2017 12:10:42 GMT):
@dselman hi, could I get and advice on the following client app error when trying to invoke chaincode, targeting a peer(p2) different than the peer(p1) which I used to deploy the network and load data.
seems strange because I've checked the "p2" peer couchdb and it has the channel database, populated with data.
```
[exec] Error: error trying to ping. Error: error trying to query chaincode. Error: cannot retrieve package for chaincode my-network/0.10.0, error open /var/hyperledger/production/chaincodes/my-network.0.10.0: no such file or directory
[exec] at queryChainCode.then.catch (/home/pg/workspace/composer-sample-applications/packages/my-network/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:707:34)
[exec] [31merror[39m: [Core] Error: error trying to ping. Error: error trying to query chaincode. Error: cannot retrieve package for chaincode my-network/0.10.0, error open /var/hyperledger/production/chaincodes/my-network.0.10.0: no such file or directory
```
Pere-Lluis (Thu, 27 Jul 2017 12:11:57 GMT):
Hi there, has something happened with Playground? New transactions have shown up and I can't set new identities for the participants like it used to be done
Pere-Lluis (Thu, 27 Jul 2017 12:12:18 GMT):
I have tried to look for where this changes are explained but I can't find it
dselman (Thu, 27 Jul 2017 12:14:56 GMT):
The "new transaction showing up" is a bug that will be fixed in the release today.
dselman (Thu, 27 Jul 2017 12:15:04 GMT):
Not sure what you mean about identities
dselman (Thu, 27 Jul 2017 12:16:46 GMT):
@uber.twin you have to INSTALL the chaincode on all peers, then instantiate once. I'm guessing that the chaincode was not installed on peer2
dselman (Thu, 27 Jul 2017 12:17:11 GMT):
@davidkel probably knows more
Pere-Lluis (Thu, 27 Jul 2017 12:20:15 GMT):
Don't know why but the secret wasn't showing up, tried to deploy from 0 again and worked
Pere-Lluis (Thu, 27 Jul 2017 12:20:19 GMT):
thanks
davidkel (Thu, 27 Jul 2017 12:20:27 GMT):
@uber.twin @dselman is correct it looks like you haven't installed the composer runtime on that peer. Use the `composer runtime install` command with an appropriate connection profile to install the runtime on that peer.
uber.twin (Thu, 27 Jul 2017 12:33:44 GMT):
@dselman @davidkel I didn't explicitly install the composer runtime on peer1. Bellow is the command I use to deploy the network. Do I need to the the same thing, using -p peer2Profile?
```composer network deploy -p peer1Profile --archiveFile myNetwork.bna --enrollId PeerAdmin --enrollSecret adminpw```
uber.twin (Thu, 27 Jul 2017 12:33:44 GMT):
@dselman @davidkel I didn't explicitly install the composer runtime on peer1. Bellow is the command I use to deploy the network. Do I need to do the the same thing, using -p peer2Profile?
```composer network deploy -p peer1Profile --archiveFile myNetwork.bna --enrollId PeerAdmin --enrollSecret adminpw```
davidkel (Thu, 27 Jul 2017 12:37:01 GMT):
@uber.twin The Fabric way for setting up peers and a channel are to 1) install the chaincode on all the peers 2) instantiate the chaincode. Our deploy command can be used to just install chaincode onto other peers if the chaincode has already been instantiated and it tries to work out what to do. However we want to move away from deploy to an install/start process as it better aligns with what fabric requires. So you could use deploy, but I would recommand using the runtime install command instead
davidkel (Thu, 27 Jul 2017 12:37:01 GMT):
@uber.twin The Fabric way for setting up peers and a channel are to 1) install the chaincode on all the peers 2) instantiate the chaincode. Our deploy command can be used to just install chaincode onto other peers if the chaincode has already been instantiated and it tries to work out what to do. However we want to move away from deploy to an install/start process as it better aligns with what fabric requires. So you could use deploy, but I would recommend using the runtime install command instead
uber.twin (Thu, 27 Jul 2017 12:48:55 GMT):
@davidkel is there a doc section addressing this, similar to the the "deploy" alternative -https://hyperledger.github.io/composer/business-network/bnd-deploy.html
uber.twin (Thu, 27 Jul 2017 12:48:55 GMT):
@davidkel is there a doc section addressing this, similar to the the "deploy" alternative -https://hyperledger.github.io/composer/business-network/bnd-deploy.html
I'd like to look at some samples, but it seems the composer-sample-applications/packages/digitalproperty-app is still using the "deploy" style
lucrezia.dm (Thu, 27 Jul 2017 12:49:18 GMT):
how I can create new .acl file?
(I would like create new project about identity management in IoT but I need to modify "pii" example)
Thank you
Sanjay_Nishank (Thu, 27 Jul 2017 12:59:26 GMT):
Has joined the channel.
gitSrinidhi (Thu, 27 Jul 2017 13:01:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hjxGWacXWz6mb8biW) @mahoney1 Hi, Managed it installing manually. After that when i *install composer-cli* Im getting the error below. Any Clue ?
449 http fetch GET 200 https://registry.npmjs.org/grpc/-/grpc-1.0.0.tgz 9822ms
450 silly pacote https://registry.npmjs.org/grpc/-/grpc-1.0.0.tgz extracted in 10174ms
451 silly addBundled read tarball
452 silly cleanup remove extracted module
453 verbose stack Error: *Command failed: /usr/bin/git clone --depth=1 -q -b master https://github.com/mcavage/node-asn1.git /root/.npm/_cacache/tmp/git-clone-14a755c8*
*453 verbose stack fatal: could not create leading directories of '/root/.npm/_cacache/tmp/git-clone-14a755c8': Permission denied*
453 verbose stack
453 verbose stack at ChildProcess.exithandler (child_process.js:204:12)
453 verbose stack at emitTwo (events.js:106:13)
453 verbose stack at ChildProcess.emit (events.js:191:7)
453 verbose stack at maybeClose (internal/child_process.js:891:16)
453 verbose stack at Socket.
gitSrinidhi (Thu, 27 Jul 2017 13:01:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hjxGWacXWz6mb8biW) @mahoney1 Hi, Managed it installing manually. After that when i *install composer-cli* Im getting the error below. Any Clue ?
is this related to git version issue ? i'm using *git 2.7.4*
449 http fetch GET 200 https://registry.npmjs.org/grpc/-/grpc-1.0.0.tgz 9822ms
450 silly pacote https://registry.npmjs.org/grpc/-/grpc-1.0.0.tgz extracted in 10174ms
451 silly addBundled read tarball
452 silly cleanup remove extracted module
453 verbose stack Error: *Command failed: /usr/bin/git clone --depth=1 -q -b master https://github.com/mcavage/node-asn1.git /root/.npm/_cacache/tmp/git-clone-14a755c8*
*453 verbose stack fatal: could not create leading directories of '/root/.npm/_cacache/tmp/git-clone-14a755c8': Permission denied*
453 verbose stack
453 verbose stack at ChildProcess.exithandler (child_process.js:204:12)
453 verbose stack at emitTwo (events.js:106:13)
453 verbose stack at ChildProcess.emit (events.js:191:7)
453 verbose stack at maybeClose (internal/child_process.js:891:16)
453 verbose stack at Socket.
Sanjay_Nishank (Thu, 27 Jul 2017 13:04:00 GMT):
I followed all the steps as given in the Composer tutorial, "developer guide" and tried generating bna. I got the following error
Sanjay_Nishank (Thu, 27 Jul 2017 13:04:02 GMT):
./src/node/ext/call.cc:616:20: error: no member named 'SetHiddenValue' in 'v8::Object'
info.This()->SetHiddenValue(Nan::New("channel_").ToLocalChecked(),
~~~~~~~~~~~ ^
../src/node/ext/call.cc:624:69: warning: 'NewInstance' is deprecated [-Wdeprecated-declarations]
MaybeLocal
dselman (Thu, 27 Jul 2017 13:04:48 GMT):
You are using Node v8 - that is not supported. Please use Node v6
Sanjay_Nishank (Thu, 27 Jul 2017 13:05:24 GMT):
ok, will try it back..thx
davidkel (Thu, 27 Jul 2017 13:15:06 GMT):
@uber.twin We don't have any documentation about this yet sorry. I will create an issue to get that section updated though
uber.twin (Thu, 27 Jul 2017 13:24:58 GMT):
@davidkel so than something like bellow needs to be done for each peer in every organization, using their respective connection profiles?
```composer runtime install -n my-network -p peer1Profile -i PeerAdmin -s adminpw
composer network start -a myNetwork.bna -p peer1Profile -i PeerAdmin -s adminpw```
davidkel (Thu, 27 Jul 2017 13:29:18 GMT):
@uber.twin all organizations need to perform the runtime install. Only one party needs to do the start (and that may be a 3rd party arbitrator for example). At this moment in time the start only has to be sent to 1 peer in the channel to bring business network up
uber.twin (Thu, 27 Jul 2017 13:30:39 GMT):
@davidkel great, thank you
sstone1 (Thu, 27 Jul 2017 13:46:40 GMT):
@here Hyperledger Composer v0.10.1 has been released. Includes TLS and WebSockets (for events) support for the REST server and README.md editing in playground. Read all about it here: https://github.com/hyperledger/composer/releases/tag/v0.10.1 :tada:
dselman (Thu, 27 Jul 2017 13:47:10 GMT):
:muscle:
KevinBai (Thu, 27 Jul 2017 13:47:46 GMT):
@dselman excuse me, can you tell me about time if you plan to release version supported invoke external chain code coded by golang?
dselman (Thu, 27 Jul 2017 13:48:16 GMT):
If I had to guess, it will be sometime in Sept.
KevinBai (Thu, 27 Jul 2017 13:49:17 GMT):
ok. Thanks :kissing_closed_eyes:
Sanjay_Nishank (Thu, 27 Jul 2017 13:58:15 GMT):
I still was not able to generate the bna. The following was the error I got
Sanjay_Nishank (Thu, 27 Jul 2017 13:58:15 GMT):
npm ERR! Darwin 16.6.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v6.11.1
npm ERR! npm v3.10.10
npm ERR! code ENOTFOUND
npm ERR! errno ENOTFOUND
npm ERR! syscall getaddrinfo
npm ERR! network getaddrinfo ENOTFOUND registry.npmjs.org registry.npmjs.org:443
npm ERR! network This is most likely not a problem with npm itself
npm ERR! network and is related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settings.
npm ERR! network
npm ERR! network If you are behind a proxy, please make sure that the
npm ERR! network 'proxy' config is set properly. See: 'npm help config'
mahoney1 (Thu, 27 Jul 2017 14:03:11 GMT):
@gitSrinidhi as mentioned, don't install composer as 'root' (as mentioned in your output).- as mentioned here -> https://hyperledger.github.io/composer/installing/development-tools.html .
- this causes problems for npm -you should install using a designated, non-root user. If there are issues doing that the solution is perform the npm install to a directory you have access to. Here is what to do to set the npm prefix to a given directory you have r/w access to, ...
"npm config set prefix /home/myuser/"
In this case, global binaries are placed in /home/myuser/bin which is in your PATH, and the modules are placed in /home/myuser/lib ...
mahoney1 (Thu, 27 Jul 2017 14:03:11 GMT):
@gitSrinidhi as mentioned, don't install composer as 'root' (as shown in your output).- as mentioned here -> https://hyperledger.github.io/composer/installing/development-tools.html .
- this causes problems for npm -you should install using a designated, non-root user. If there are issues doing that the solution is perform the npm install to a directory you have access to. Here is what to do to set the npm prefix to a given directory you have r/w access to, ...
"npm config set prefix /home/myuser/"
In this case, global binaries are placed in /home/myuser/bin which is in your PATH, and the modules are placed in /home/myuser/lib ...
davidkel (Thu, 27 Jul 2017 14:05:41 GMT):
@Sanjay_Nishank are you behind a proxy ? if so take a look at
https://forum.freecodecamp.org/t/npm-behind-a-proxy-server/19386
for commands to allow npm through a proxt
davidkel (Thu, 27 Jul 2017 14:05:41 GMT):
@Sanjay_Nishank are you behind a proxy ? if so take a look at
https://forum.freecodecamp.org/t/npm-behind-a-proxy-server/19386
for commands to allow npm through a proxy
mahoney1 (Thu, 27 Jul 2017 14:09:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4HwtjSLScNYRgvaNZ) @lucrezia.dm with a local playground install, or with an editor like VSCode ...as you've seen from https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/permissions.acl you need a `permissions.acl` that will form part of your business network definition - see grammar section here: https://hyperledger.github.io/composer/reference/acl_language.html
gitSrinidhi (Thu, 27 Jul 2017 14:09:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=idrW53Xp84drRFuNp) @mahoney1 U mean while installing *composer-cli* ? when i do this with a non-root user i get the below error.
*Error: EACCES: permission denied, access '/usr/lib/node_modules'*
gitSrinidhi (Thu, 27 Jul 2017 14:09:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=idrW53Xp84drRFuNp) @mahoney1 U mean while installing *composer-cli* ? when i do this with a non-root user i get the below error.
*Error: EACCES: permission denied, access '/usr/lib/node_modules'*
gitSrinidhi (Thu, 27 Jul 2017 14:16:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mQgu4B2DsQ7A2SKYi) @mahoney1 But when i install as a root user i get the below error.
npm ERR! Command failed: /usr/bin/git clone --depth=1 -q -b master https://github.com/mcavage/node-asn1.git /root/.npm/_cacache/tmp/git-clone-b959c978
gitSrinidhi (Thu, 27 Jul 2017 14:16:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mQgu4B2DsQ7A2SKYi) @mahoney1 But when i install as a root user i get the below error.
npm ERR! Command failed: /usr/bin/git clone --depth=1 -q -b master https://github.com/mcavage/node-asn1.git /root/.npm/_cacache/tmp/git-clone-b959c978
gitSrinidhi (Thu, 27 Jul 2017 14:16:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mQgu4B2DsQ7A2SKYi) @mahoney1 But when i install as a root user i get the below error.
Is this because of the *GIT version ? My git version is 2.7.4*
npm ERR! Command failed: /usr/bin/git clone --depth=1 -q -b master https://github.com/mcavage/node-asn1.git /root/.npm/_cacache/tmp/git-clone-b959c978
mahoney1 (Thu, 27 Jul 2017 14:24:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mQgu4B2DsQ7A2SKYi) @gitSrinidhi right, because npm -g is a global install to a default location and because it was previously installed as sudo or root (and its permissions:-) ). You should (as sudo or root) do an `npm uninstall -g composer-cli` to remove the composer modules first in /usr/lib/node_modules firstly. Next, set your npm config (as mentioned - choose your npm install method as described here -> https://docs.npmjs.com/getting-started/fixing-npm-permissions ) - then you can (as non-root user) do a `npm install -g composer-cli` etc etc.
mahoney1 (Thu, 27 Jul 2017 14:24:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mQgu4B2DsQ7A2SKYi) @gitSrinidhi right, because npm -g is a global install to a default location and because it was previously installed as sudo or root (and its permissions:-) ). You should (as sudo or root) do an `npm uninstall -g composer-cli` to remove the composer modules including in /usr/lib/node_modules firstly. Next, set your npm config (as mentioned - choose your npm install method as described here -> https://docs.npmjs.com/getting-started/fixing-npm-permissions ) - then you can (as non-root user) do a `npm install -g composer-cli` etc etc.
Sanjay_Nishank (Thu, 27 Jul 2017 15:01:11 GMT):
While running the Unit test, I faced the following error
Sanjay_Nishank (Thu, 27 Jul 2017 15:01:13 GMT):
Cannot parse the config file jsdoc.conf: Error: ENOENT: no such file or directory, open 'jsdoc.conf'
Exiting JSDoc because an error occurred. See the previous log messages for details.
npm ERR! Darwin 16.6.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "doc"
npm ERR! node v6.11.1
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! my-network@0.0.1 doc: `jsdoc --pedantic --recurse -c jsdoc.conf`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.0.1 doc script 'jsdoc --pedantic --recurse -c jsdoc.conf'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the my-network package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! jsdoc --pedantic --recurse -c jsdoc.conf
Sanjay_Nishank (Thu, 27 Jul 2017 15:02:23 GMT):
I am using Node 6.11.1
dselman (Thu, 27 Jul 2017 15:06:10 GMT):
jsdoc has decided (in their infinite wisdom) that jsdoc.conf should now be called jsdoc.json
dselman (Thu, 27 Jul 2017 15:06:23 GMT):
I think we've updated them all... When did you download that project?
dselman (Thu, 27 Jul 2017 15:06:56 GMT):
you probably can just edit package.json to replace jsdoc.conf with jsdoc.json and rename the file
Sanjay_Nishank (Thu, 27 Jul 2017 15:07:09 GMT):
today, 3 hours back
dselman (Thu, 27 Jul 2017 15:07:18 GMT):
which project?
Sanjay_Nishank (Thu, 27 Jul 2017 15:10:06 GMT):
composer-sample-networks/packages/basic-sample-network
dselman (Thu, 27 Jul 2017 15:11:34 GMT):
I see jsdoc.json: https://github.com/hyperledger/composer-sample-networks/tree/master/packages/basic-sample-network
dselman (Thu, 27 Jul 2017 15:11:47 GMT):
https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/package.json#L17
Sanjay_Nishank (Thu, 27 Jul 2017 15:20:58 GMT):
strange, I downloaded it today, I had "jsdoc.conf", neway, changed to .json and ran it again. Got the following error
Sanjay_Nishank (Thu, 27 Jul 2017 15:21:01 GMT):
> my-network@0.0.1 test /Users/sanjaykumarnishank/my-network
> mocha --recursive -t 4000
Commodity Trading
1) "before all" hook
0 passing (4s)
1 failing
1) Commodity Trading "before all" hook:
Error: Timeout of 4000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.
dselman (Thu, 27 Jul 2017 15:32:01 GMT):
what does your test look like?
jdockter (Thu, 27 Jul 2017 15:33:01 GMT):
@dselman can we throw a custom error message out of a transaction? So if I had some sort of MyError object that had some defined fields that I could always populate and throw
dselman (Thu, 27 Jul 2017 15:33:16 GMT):
sure
dselman (Thu, 27 Jul 2017 15:33:39 GMT):
they even make it back to the client now (thanks to Fabric v1)!
Sanjay_Nishank (Thu, 27 Jul 2017 15:34:48 GMT):
@dselman Sorry, didn't get what you meant. the test failed, as I mentioned above
dselman (Thu, 27 Jul 2017 15:35:04 GMT):
Can you paste the contents of the test
Sanjay_Nishank (Thu, 27 Jul 2017 15:35:28 GMT):
SKN-Mac:my-network sanjaykumarnishank$ npm test
> my-network@0.0.1 pretest /Users/sanjaykumarnishank/my-network
> npm run lint
> my-network@0.0.1 lint /Users/sanjaykumarnishank/my-network
> eslint .
> my-network@0.0.1 postlint /Users/sanjaykumarnishank/my-network
> npm run licchk
> my-network@0.0.1 licchk /Users/sanjaykumarnishank/my-network
> license-check
> my-network@0.0.1 postlicchk /Users/sanjaykumarnishank/my-network
> npm run doc
> my-network@0.0.1 doc /Users/sanjaykumarnishank/my-network
> jsdoc --pedantic --recurse -c jsdoc.json
> my-network@0.0.1 test /Users/sanjaykumarnishank/my-network
> mocha --recursive -t 4000
Commodity Trading
1) "before all" hook
0 passing (4s)
1 failing
1) Commodity Trading "before all" hook:
Error: Timeout of 4000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.
npm ERR! Test failed. See above for more details.
dselman (Thu, 27 Jul 2017 15:38:26 GMT):
I mean the js for the test you are running. You probably have a bug in it.
dselman (Thu, 27 Jul 2017 15:38:41 GMT):
Most likely in how you connect to the network if I had to guess.
Sanjay_Nishank (Thu, 27 Jul 2017 15:40:52 GMT):
I have taken sample.js from the below page
Sanjay_Nishank (Thu, 27 Jul 2017 15:40:53 GMT):
https://hyperledger.github.io/composer/tutorials/developer-guide.html
Sanjay_Nishank (Thu, 27 Jul 2017 15:41:06 GMT):
for the unit testing
guyho (Thu, 27 Jul 2017 15:41:07 GMT):
I
jdockter (Thu, 27 Jul 2017 15:44:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4YFTAw9BZ6mapB6NL) @dselman Would that also be thrown back via the REST server?
dselman (Thu, 27 Jul 2017 15:44:45 GMT):
I believe so, the client should get a 500 response with the message in the body
dselman (Thu, 27 Jul 2017 15:44:59 GMT):
Not sure I've tried that specifically
jdockter (Thu, 27 Jul 2017 15:45:25 GMT):
Okay
Sanjay_Nishank (Thu, 27 Jul 2017 15:58:55 GMT):
@dselman any further suggestions?
dselman (Thu, 27 Jul 2017 16:01:54 GMT):
In your position I would rm -r your git checkout directory and git clone the sample again (so you have the latest code) and then apply the changes again.
dselman (Thu, 27 Jul 2017 16:02:14 GMT):
I suspect you are somehow working with an old version
dselman (Thu, 27 Jul 2017 16:02:33 GMT):
that jsdoc.json change went in 3 days ago
Sanjay_Nishank (Thu, 27 Jul 2017 16:04:58 GMT):
ok
mahoney1 (Thu, 27 Jul 2017 16:14:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bGYLh55cZXjrYd2ZD) @Sanjay_Nishank @dselman we need a change to the developer guide - the package.json 'copy' snippet , to match the `jsdoc.json` that you both refer to and shown in the original basic-network here -> https://github.com/hyperledger/composer-sample-networks/tree/master/packages/basic-sample-network
mahoney1 (Thu, 27 Jul 2017 16:14:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bGYLh55cZXjrYd2ZD) @Sanjay_Nishank @dselman we need a change to the developer guide - the package.json 'copy' snippet , to match the `jsdoc.json` that you both refer to and shown in the original basic-network here -> https://github.com/hyperledger/composer-sample-networks/tree/master/packages/basic-sample-network - I'll get it changed.
mahoney1 (Thu, 27 Jul 2017 16:17:39 GMT):
demo
nehalshah50 (Thu, 27 Jul 2017 17:01:16 GMT):
how do i connect to new deployed network( using "composer network deploy") through playground? When i try to connect to using Fabric 1.0 connection profile it connects to default chaincode container "dev-peer0.org1.example.com-org-acme-biznet-0.10.0". Also when I deploy a new .bna through local playground it all goes to this default container.
dselman (Thu, 27 Jul 2017 17:03:17 GMT):
Playground is currently hardcoded to interact with the org-acme-biznet network.
nehalshah50 (Thu, 27 Jul 2017 17:03:28 GMT):
Message Attachments
dselman (Thu, 27 Jul 2017 17:03:38 GMT):
We are working on fixing that but it is going to take a few more weeks
dselman (Thu, 27 Jul 2017 17:04:10 GMT):
So - if you want to connect to your network using Playground it must be deployed with the name org-acme-biznet
nehalshah50 (Thu, 27 Jul 2017 17:04:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ypmAoe8eLAiNvF3Nx) @dselman Ok. Thanks
suvpatil (Thu, 27 Jul 2017 17:10:21 GMT):
Has joined the channel.
prmdmshra (Thu, 27 Jul 2017 17:18:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3nSqraKD3yQgynqch) @prmdmshra
baoyangc (Thu, 27 Jul 2017 18:06:14 GMT):
i run composer-rest-server in docker
baoyangc (Thu, 27 Jul 2017 18:07:01 GMT):
it always said that:`oser | Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]`
baoyangc (Thu, 27 Jul 2017 18:08:32 GMT):
```Connection fails: Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
0|composer | It will be retried for the next request.```
baoyangc (Thu, 27 Jul 2017 18:09:23 GMT):
my ca is configured "trustedRoots":"","verify":false}
baoyangc (Thu, 27 Jul 2017 18:10:33 GMT):
my COMPOSER_ENROLLMENT_ID=admin
COMPOSER_ENROLLMENT_SECRET=adminpw
baoyangc (Thu, 27 Jul 2017 18:10:45 GMT):
the default of fabric-ca
Sanjay_Nishank (Thu, 27 Jul 2017 18:41:24 GMT):
While trying to deploy to the running hyperledger fabric, usiing the following
Sanjay_Nishank (Thu, 27 Jul 2017 18:41:26 GMT):
cd dist
composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
Sanjay_Nishank (Thu, 27 Jul 2017 18:41:45 GMT):
I get "-bash: composer: command not found"
Sanjay_Nishank (Thu, 27 Jul 2017 18:41:56 GMT):
Anything I missed?
Sanjay_Nishank (Thu, 27 Jul 2017 18:54:11 GMT):
I am using Mac OSx
albrandt (Thu, 27 Jul 2017 19:14:56 GMT):
Has left the channel.
dselman (Thu, 27 Jul 2017 19:31:25 GMT):
@Sanjay_Nishank `npm install -g composer-cli`
nehalshah50 (Thu, 27 Jul 2017 19:42:12 GMT):
When using composer playground, when creating new assets, participants etc.. Do they get stored in ledger? As playground gives edit option you can change data at anytime, how do you make sure that all updates gets recorded in the blockchain?
nehalshah50 (Thu, 27 Jul 2017 19:44:19 GMT):
If its part of world state then why we would it let you update directly without going through transaction? Why do we create REST API end points to allow you to do update/delete etc.
dselman (Thu, 27 Jul 2017 19:46:43 GMT):
@nehalshah50 there's a common misconception that "immutable" means data on the blockchain cannot be changed. That clearly wouldn't be a very useful data structure. What is immutable is the history of transactions. So, every update to an asset is via a transaction, and they get stored immutably on the blockchain. Replay all the transactions and you get to the current "world state" of the blockchain. So there is no UNDO. All you can do is submit a new transaction that undoes the change that you've made to an asset. So all the operations you make in Playground are generating transactions, and those transactions are stored on the blockchain and may update world state.
nehalshah50 (Thu, 27 Jul 2017 19:53:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=itQcSzewBXBsePxf8) @dselman Yes are correct. But When I use the edit feature on the asset or participant , change data and submit I don't see transaction being generated and I can delete what I created by simply pressing a delete button
dselman (Thu, 27 Jul 2017 20:05:51 GMT):
there are underlying blockchain that are created for all interactions
dselman (Thu, 27 Jul 2017 20:06:15 GMT):
You would see those at the Fabric level. They used to have Blockchain Explorer, I think they are working on a new version of that
nehalshah50 (Thu, 27 Jul 2017 20:10:07 GMT):
A good feature for playground would be to expose those transactions/blocks as currently it feels it completely bypasses blockchain
sstone1 (Thu, 27 Jul 2017 20:10:18 GMT):
that work is being done at the moment by @mbwhite
sstone1 (Thu, 27 Jul 2017 20:10:30 GMT):
*all* operations in composer will be modelled as system transactions
sstone1 (Thu, 27 Jul 2017 20:10:43 GMT):
and they will appear in the transaction registry, or historian as it will be known
sstone1 (Thu, 27 Jul 2017 20:11:01 GMT):
so you will start seeing AddAssetToRegistry, UpdateAssetInRegistry, RemoveAssetFromRegistry transactions appear
sstone1 (Thu, 27 Jul 2017 20:11:11 GMT):
this work has already started with the identity management operations
sstone1 (Thu, 27 Jul 2017 20:11:30 GMT):
if you issue an identity to a participant in v0.10.0+, you will see an IssueIdentity transaction appear in the transaction registry
nehalshah50 (Thu, 27 Jul 2017 20:15:18 GMT):
Great!!.. I see already IssueIdentity being an option in dropdown when Submitting transaction and also I see the transaction appearing when I create new identity. My second suggestion was exactly to add "AddAssetToRegistry, UpdateAssetInRegistry, RemoveAssetFromRegistry" in the available option as well
sstone1 (Thu, 27 Jul 2017 20:18:05 GMT):
that's actually been fixed - the "system transactions" have been removed from the dropdown in playground for submitting a transaction
sstone1 (Thu, 27 Jul 2017 20:18:17 GMT):
all of those operations are available via other actions in the playground UI
sstone1 (Thu, 27 Jul 2017 20:18:47 GMT):
so once matthew does that work - when you add an asset to an asset registry using the Test view, an AddAssetToAssetRegistry transaction will be submitted
nehalshah50 (Thu, 27 Jul 2017 20:59:44 GMT):
Gr8..Thx
ScottMorris (Thu, 27 Jul 2017 21:19:59 GMT):
Hi there, I'm trying to setup authentication on the REST server and I've run into an issue that is effecting the REST server and the cli. When I try and issue a new Identity I get a message saying the CA does not exist. I thought it had to do with the REST API using the PeerAdmin identity that I have imported when I set things up locally. For context I'm using the _basic-network_ sample from the Fabric samples. I decided to change the REST server's identity to be _admin/adminpw_ to see if it was something up with my PeerAdmin user and I got the same message (see below).
```
$ composer-rest-server -p hlfv1 -n mynetwork -i admin -s adminpw -N always -S false
Discovering types from business network definition ...
Connection fails: Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca.org1.example.com' does not exist"}]]
It will be retried for the next request.
```
My environment is Ubuntu 16.04 running Docker. Docker Ps gives
```
IMAGE PORTS NAMES
f890caf1c996 hyperledger/fabric-peer:x86_64-1.0.0 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
f3091c77443c hyperledger/fabric-orderer:x86_64-1.0.0 0.0.0.0:7050->7050/tcp orderer.example.com
cb3b8f585483 hyperledger/fabric-couchdb:x86_64-1.0.0 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
46c66c6b9462 hyperledger/fabric-ca:x86_64-1.0.0 0.0.0.0:7054->7054/tcp ca.example.com
```
and I can give my connection file if need.
I can connect to the CA via telnet so it definitely exists. Has anyone seen this before?
ScottMorris (Thu, 27 Jul 2017 21:19:59 GMT):
Hi there, I'm trying to setup authentication on the REST server and I've run into an issue that is effecting the REST server and the cli. When I try and issue a new Identity I get a message saying the CA does not exist. I thought it had to do with the REST API using the PeerAdmin identity that I have imported when I set things up locally. For context I'm using the _basic-network_ sample from the Fabric samples. I decided to change the REST server's identity to be _admin/adminpw_ to see if it was something up with my PeerAdmin user and I got the same message (see below).
```
$ composer-rest-server -p hlfv1 -n mynetwork -i admin -s adminpw -N always -S false
Discovering types from business network definition ...
Connection fails: Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca.org1.example.com' does not exist"}]]
It will be retried for the next request.
```
My environment is Ubuntu 16.04 running Docker. Docker Ps gives
```
IMAGE PORTS NAMES
hyperledger/fabric-peer:x86_64-1.0.0 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
hyperledger/fabric-orderer:x86_64-1.0.0 0.0.0.0:7050->7050/tcp orderer.example.com
hyperledger/fabric-couchdb:x86_64-1.0.0 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
hyperledger/fabric-ca:x86_64-1.0.0 0.0.0.0:7054->7054/tcp ca.example.com
```
and I can give my connection file if need.
I can connect to the CA via telnet so it definitely exists. Has anyone seen this before?
ScottMorris (Thu, 27 Jul 2017 21:19:59 GMT):
Hi there, I'm trying to setup authentication on the REST server and I've run into an issue that is effecting the REST server and the cli. When I try and issue a new Identity I get a message saying the CA does not exist. I thought it had to do with the REST API using the PeerAdmin identity that I have imported when I set things up locally. For context I'm using the _basic-network_ sample from the Fabric samples. I decided to change the REST server's identity to be _admin/adminpw_ to see if it was something up with my PeerAdmin user and I got the same message (see below).
```
$ composer-rest-server -p hlfv1 -n mynetwork -i admin -s adminpw -N always -S false
Discovering types from business network definition ...
Connection fails: Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca.org1.example.com' does not exist"}]]
It will be retried for the next request.
```
My environment is Ubuntu 16.04 running Docker. Docker Ps gives
```
IMAGE PORTS NAMES
hyperledger/fabric-peer:x86_64-1.0.0 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
hyperledger/fabric-orderer:x86_64-1.0.0 0.0.0.0:7050->7050/tcp orderer.example.com
hyperledger/fabric-couchdb:x86_64-1.0.0 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
hyperledger/fabric-ca:x86_64-1.0.0 0.0.0.0:7054->7054/tcp ca.example.com
```
and I can give my connection file if needed.
I can connect to the CA via telnet so it definitely exists. Has anyone seen this before?
ScottMorris (Thu, 27 Jul 2017 21:19:59 GMT):
Hi there, I'm trying to setup authentication on the REST server and I've run into an issue that is effecting the REST server and the cli. When I try and issue a new Identity I get a message saying the CA does not exist. I thought it had to do with the REST API using the PeerAdmin identity that I have imported when I set things up locally. For context I'm using the _basic-network_ sample from the Fabric samples. I decided to change the REST server's identity to be _admin/adminpw_ to see if it was something up with my PeerAdmin user and I got the same message (see below).
```
$ composer-rest-server -p hlfv1 -n mynetwork -i admin -s adminpw -N always -S false
Discovering types from business network definition ...
Connection fails: Error: error trying login and get user Context. Error: error trying to enroll user. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca.org1.example.com' does not exist"}]]
It will be retried for the next request.
```
My environment is Ubuntu 16.04 running Docker. Docker Ps gives
```
IMAGE PORTS NAMES
hyperledger/fabric-peer:x86_64-1.0.0 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
hyperledger/fabric-orderer:x86_64-1.0.0 0.0.0.0:7050->7050/tcp orderer.example.com
hyperledger/fabric-couchdb:x86_64-1.0.0 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
hyperledger/fabric-ca:x86_64-1.0.0 0.0.0.0:7054->7054/tcp ca.example.com
```
The _ca_ connection profile section
```
"ca": {
"url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
```
I can connect to the CA via telnet so it definitely exists. Has anyone seen this before?
nehalshah50 (Thu, 27 Jul 2017 21:22:03 GMT):
Hi..I am trying to install composer-sample-application but keep gettint this error `
IllegalModelException: line 38 column 1, to line 41 column 2. Class RegisterPropertyForSale is not declared as abstract. It must define an identifying field.
at TransactionDeclaration.validate (/Users/nxshah5/github/composer-sample-applications/getting-started/node_modules/composer-common/lib/introspect/classdeclaration.js:199:27)`
silliman (Thu, 27 Jul 2017 21:26:11 GMT):
@ScottMorris your connection profile points at *ca._org1_.example.com* but based on you `docker ps` output your CA is named *ca.example.com*
davidkel (Thu, 27 Jul 2017 21:26:12 GMT):
@ScottMorris when you configured your CA what name did you give it ? One way to set the name is via an environment variable in the environment section in the docker-compose.yml file
jdockter (Thu, 27 Jul 2017 21:26:25 GMT):
@dselman is it possible to have a select clause of specific fields in an asset, not the entire asset?
jdockter (Thu, 27 Jul 2017 21:26:38 GMT):
for query
ScottMorris (Thu, 27 Jul 2017 21:26:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Mxfz7ttTyDkQNGPuo) @silliman D'oh, the name matters I bet...
ScottMorris (Thu, 27 Jul 2017 21:28:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Zz7kmWyTCYnfo66aL) @davidkel @silliman Thanks! Apparently it doesn't check the CA if you have the identity imported
dselman (Thu, 27 Jul 2017 21:31:21 GMT):
@jdockter no
jdockter (Thu, 27 Jul 2017 21:31:56 GMT):
okay thanks
jdockter (Thu, 27 Jul 2017 21:37:52 GMT):
@dselman if I have a where clause that needs to select asset.concept-level1.concept-leve2.fieldA ...how should my syntax look to limit fieldA = xyz
jdockter (Thu, 27 Jul 2017 21:38:38 GMT):
just use the dot notation
dselman (Thu, 27 Jul 2017 21:38:41 GMT):
yes
jdockter (Thu, 27 Jul 2017 21:38:49 GMT):
okay thanks
dselman (Thu, 27 Jul 2017 21:38:58 GMT):
let me get an example for you
dselman (Thu, 27 Jul 2017 21:40:35 GMT):
https://github.com/hyperledger/composer/blob/master/packages/composer-common/test/query/test.qry#L144
jdockter (Thu, 27 Jul 2017 21:41:11 GMT):
great
jdockter (Thu, 27 Jul 2017 21:45:05 GMT):
sweet worked
UDeshmukh (Thu, 27 Jul 2017 21:48:35 GMT):
Message Attachments
UDeshmukh (Thu, 27 Jul 2017 21:49:00 GMT):
Can someone advise how I get around this issue? Thanks!
silliman (Thu, 27 Jul 2017 21:52:13 GMT):
@UDeshmukh looks like you set your FABRIC_VERSION variable with an uppercase L instead of lowercase l, i.e. hLfv1, not hlfv1
dselman (Thu, 27 Jul 2017 21:53:12 GMT):
you don't need to set that if you want to use HLF v1
dselman (Thu, 27 Jul 2017 21:53:32 GMT):
...which you definitely should be using now that it is GA.
dselman (Thu, 27 Jul 2017 21:53:45 GMT):
we will be pulling support for 0.6 fairly soon
UDeshmukh (Thu, 27 Jul 2017 22:01:23 GMT):
@silliman @dselman You were right... that worked !! Thanks very much... :-)
sstone1 (Fri, 28 Jul 2017 00:59:49 GMT):
@davidkel @mbwhite worth reviewing the FABRIC_VERSION property as part of the "bye bye HLFv0.6" changes
sstone1 (Fri, 28 Jul 2017 00:59:53 GMT):
see above ^
camdenT (Fri, 28 Jul 2017 03:00:27 GMT):
Does anyone know when you're supposed to use "npm install" versus "composer archive create -a dist/my-network.bna --sourceType dir --sourceName ." to create the .bna file?
sstone1 (Fri, 28 Jul 2017 03:04:21 GMT):
@camdenT "npm install" runs "npm run prepublish", and "npm run prepublish" builds the BNA
sstone1 (Fri, 28 Jul 2017 03:04:49 GMT):
the idea for that was that we build the BNA before publishing the business network modules to npm (so the BNA is included in what is on npm)
sstone1 (Fri, 28 Jul 2017 03:05:35 GMT):
"npm install" no longer runs "npm run prepublish" as of npm 5
sstone1 (Fri, 28 Jul 2017 03:06:43 GMT):
"npm install" is for installing dependencies so i would not recommend it for building the BNA
sstone1 (Fri, 28 Jul 2017 03:06:57 GMT):
either use "npm run prepublish" or the "composer archive create" command
camdenT (Fri, 28 Jul 2017 03:08:05 GMT):
@sstone1 so in the developer tutorial, instead of using "npm install", I should use "npm run prepublish"?
sstone1 (Fri, 28 Jul 2017 03:08:59 GMT):
yeah, that's just weird - i'll raise a GH issue for that
sstone1 (Fri, 28 Jul 2017 03:09:10 GMT):
(to fix the developer tutorial)
camdenT (Fri, 28 Jul 2017 03:10:07 GMT):
Okay, sounds good. Thanks!
camdenT (Fri, 28 Jul 2017 03:10:39 GMT):
as a note, I have npm version 5.3, but running "npm install" still seems to build the BNA
sstone1 (Fri, 28 Jul 2017 03:12:40 GMT):
oh! it looks like the npm team changed their mind, or at least postponed the change
sstone1 (Fri, 28 Jul 2017 03:12:46 GMT):
https://github.com/npm/npm/issues/16685
sstone1 (Fri, 28 Jul 2017 03:15:02 GMT):
ok, so the developer tutorial just needs expanding i think
sstone1 (Fri, 28 Jul 2017 03:15:09 GMT):
"npm install" should be used the first time you build the BNA
sstone1 (Fri, 28 Jul 2017 03:15:31 GMT):
as you need to install the devDependencies to install the prereqs for building the BNA
sstone1 (Fri, 28 Jul 2017 03:15:46 GMT):
for rebuilding it afterwards it should just be "npm run prepublish"
camdenT (Fri, 28 Jul 2017 03:19:22 GMT):
That makes sense. Thanks again for the help!
camdenT (Fri, 28 Jul 2017 03:20:05 GMT):
and "npm run prepublish" does the same thing as "composer archive create"?
sstone1 (Fri, 28 Jul 2017 03:21:43 GMT):
it runs "composer archive create"
sstone1 (Fri, 28 Jul 2017 03:21:56 GMT):
https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/package.json#L11
camdenT (Fri, 28 Jul 2017 03:25:33 GMT):
ahh, okay got it. Thanks for the help!
jdockter (Fri, 28 Jul 2017 03:46:21 GMT):
@dselman in your example if address was an array would that still be the snytax to find a postal code, assuming the query can resolve arrays of concepts?
baoyangc (Fri, 28 Jul 2017 06:37:29 GMT):
`Exception: Error: error trying login and get user Context. Error: error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]
0|composer | Error: error trying login and get user Context. Error: error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]`
baoyangc (Fri, 28 Jul 2017 06:37:35 GMT):
```Exception: Error: error trying login and get user Context. Error: error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]
0|composer | Error: error trying login and get user Context. Error: error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]```
baoyangc (Fri, 28 Jul 2017 06:37:53 GMT):
why there is this error
davidkel (Fri, 28 Jul 2017 06:44:41 GMT):
@baoyangc suggest you try the #fabric-ca channel as the error `Error: unsupported certificate purpose` comes from there
davidkel (Fri, 28 Jul 2017 06:44:41 GMT):
@baoyangc suggest you try the #fabric-ca channel as the error `Error: unsupported certificate purpose` comes from the ca server
davidkel (Fri, 28 Jul 2017 06:44:41 GMT):
@baoyangc suggest you try the #fabric-ca channel as the error `Error: unsupported certificate purpose` comes from the ca server, or node-sdk
baoyangc (Fri, 28 Jul 2017 06:45:17 GMT):
but this is reported by composer-rest-server
baoyangc (Fri, 28 Jul 2017 06:45:57 GMT):
```at client.getUserContext.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:293:34)
0|composer | at process._tickDomainCallback (internal/process/next_tick.js:135:7)
PM2 | App [composer-rest-server] with id [0] and pid [116], exited with code [1] via signal [SIGINT]
PM2 | Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
PM2 | App name:composer-rest-server id:0 online```
davidkel (Fri, 28 Jul 2017 06:46:32 GMT):
@baoyangc composer calls the node-sdk to communicate with the ca server. Composer just reports the error it received
baoyangc (Fri, 28 Jul 2017 06:47:12 GMT):
I set the connection.json.ca.trustedRoots=["---certificate--"], connection.json.ca.verify=true
baoyangc (Fri, 28 Jul 2017 06:47:19 GMT):
is this correct?
davidkel (Fri, 28 Jul 2017 06:49:58 GMT):
the description for these fields can be found here https://fabric-sdk-node.github.io/global.html#TLSOptions
davidkel (Fri, 28 Jul 2017 06:52:23 GMT):
@baoyangc so could be being reported back from the node-sdk rather than the ca if you have set these options
baoyangc (Fri, 28 Jul 2017 06:53:22 GMT):
Message Attachments
baoyangc (Fri, 28 Jul 2017 06:53:36 GMT):
maybe we should change this
davidkel (Fri, 28 Jul 2017 06:54:04 GMT):
That example is meant to show all possible options, rather than what should be set
davidkel (Fri, 28 Jul 2017 06:54:55 GMT):
but yes, we should change it as it is "" rather than []
davidkel (Fri, 28 Jul 2017 06:57:26 GMT):
@baoyangc good spot, thanks for that. We should also reference the HLF docs about their meaning
davidkel (Fri, 28 Jul 2017 07:13:40 GMT):
@baoyangc could you DM me directly the entry you put into trustedRoots ?
baoyangc (Fri, 28 Jul 2017 07:14:12 GMT):
ok
dselman (Fri, 28 Jul 2017 07:27:55 GMT):
@jdockter we do not yet support queries over arrays. Could you file an issue for that with the details of the sorts of query you would like?
gitSrinidhi (Fri, 28 Jul 2017 07:49:01 GMT):
Where can i create peers ? within composer of fabric ?
gitSrinidhi (Fri, 28 Jul 2017 07:49:01 GMT):
Where can i create peers ? within composer or fabric ?
dselman (Fri, 28 Jul 2017 07:49:39 GMT):
Fabric.
dselman (Fri, 28 Jul 2017 07:49:53 GMT):
Composer creates the solutions that run on a Fabric
gitSrinidhi (Fri, 28 Jul 2017 07:51:09 GMT):
Thank you !
gitSrinidhi (Fri, 28 Jul 2017 07:51:51 GMT):
Any example code which has both integrated ?
dselman (Fri, 28 Jul 2017 08:00:01 GMT):
not sure what you mean by integrated
uber.twin (Fri, 28 Jul 2017 08:15:54 GMT):
@dselman hi, I'm trying to define a Participant relation to a certain Organization. There is no explicit Composer support for this kind of association, isn't it?
uber.twin (Fri, 28 Jul 2017 08:21:54 GMT):
@dselman would it make sense to add a MSPID field to my Participant specialization, pointing to the desired Organization, and issue a corresponding identity using the CA related to that specific Organization?
natarajan1c (Fri, 28 Jul 2017 08:45:56 GMT):
Has joined the channel.
mahoney1 (Fri, 28 Jul 2017 08:53:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CsrTQFkWYuw2tAZHo) @gitSrinidhi you can review an example here -> https://github.com/hyperledger/composer/blob/master/packages/composer-systests/hlfv1/docker-compose.yml or in `fabric-scripts/hlfv1/composer/docker-compose.yml` if you've done the Composer developer tutorial. To understand about setting up your own Fabric network, and understand the Hyperledger Fabric network setup see here -> http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html - once you establish that, you can configure Composer to connect to it.
natarajan1c (Fri, 28 Jul 2017 09:01:20 GMT):
i have built a working model with Composer online playground & have a .BNA file. Want to build a web UI rapidly from here. I understand there is an option & tried yeoman generator. Struggling a bit (with few errors) to get all the required packages installed. Is there an option use reuse an aws EC2 instance (anyone within this community have this & willing to share) with all the prerequisite packages to generate the angular web UI quickly?
gitSrinidhi (Fri, 28 Jul 2017 09:10:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=iabKRydeoyPToAB3J) @mahoney1 Thanks much ! very heplful :)
gitSrinidhi (Fri, 28 Jul 2017 09:10:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=iabKRydeoyPToAB3J) @mahoney1 Thanks much ! very helpful :)
uber.twin (Fri, 28 Jul 2017 09:12:40 GMT):
@davidkel hi, is "composer network update" retaining the ledger state?
davidkel (Fri, 28 Jul 2017 09:17:04 GMT):
@uber.twin yes it does of course we update the ledger to record the changing of the business network definition
uber.twin (Fri, 28 Jul 2017 09:19:45 GMT):
@davidkel that's great; and it's operational right after the "update", meaning no "composer network start" is required?
davidkel (Fri, 28 Jul 2017 09:22:18 GMT):
@uber.twin correct it's a composer concept rather than a fabric concept
uber.twin (Fri, 28 Jul 2017 09:23:11 GMT):
@davidkel thank you
suvpatil (Fri, 28 Jul 2017 09:28:18 GMT):
while running "pii sample network" i got following error:
Error: error trying invoke chaincode. Error: chaincode error (status: 500, message: TypeError: cannot read property 'getIdentifier' of null)\n at _initializeChannel.then.then.then.then.catch (/home/suvit/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:847:34)"
}
}
martijnwouters (Fri, 28 Jul 2017 09:33:21 GMT):
Hi, I'm wondering if it is possible to export / import between different .js files in the lib dir? I'm creating some larger contracts and would like to split it up and import generic functions / checks.
mahoney1 (Fri, 28 Jul 2017 10:03:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7RXtP4wLP27D3mQps) @suvpatil at what point, or what was the preceding command you used to yield this error? Thanks.
mahoney1 (Fri, 28 Jul 2017 10:05:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CSbhLgsxQm9KnYzxG) @martijnwouters So, you can have multiple js files in the lib directory. Any function declared in one of those files should be callable from functions in other files. So your transaction function can invoke common functions in the same or other scripts. FYI, in the future we hope to see a native node.js chaincode container which would allow 'require'
martijnwouters (Fri, 28 Jul 2017 10:13:02 GMT):
@mahoney1 Thanks!
suvpatil (Fri, 28 Jul 2017 10:18:15 GMT):
@mahoney1 I follow these steps :1) add participant 2) issue identity to that participant 3) ping that issued identity 4) use composer rest server to test transaction. I done transaction using "/AuthorizeAccess"....here I am getting error.
mahoney1 (Fri, 28 Jul 2017 11:25:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7fXTm6bt9jNPNoSLt) @suvpatil hmmm null suggests an association issue at first glance - can we check the mapping of identity to participant - what is the outpuf of `composer network ping -n digitalproperty-network -p hlfv1 -i _id_ -s _password_ ` to see which participant attempts to ping - or does it perhaps reveal an ACL issue ?
mahoney1 (Fri, 28 Jul 2017 11:25:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7fXTm6bt9jNPNoSLt) @suvpatil hmmm null suggests an association issue at first glance - can we check the mapping of identity to participant - what is the output of `composer network ping -n digitalproperty-network -p hlfv1 -i _id_ -s _password_ ` to see which participant attempts to ping - or does it perhaps reveal an ACL issue ?
mahoney1 (Fri, 28 Jul 2017 11:25:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7fXTm6bt9jNPNoSLt) @suvpatil hmmm null suggests an association issue at first glance - can we check the mapping of identity to participant - what is the output of `composer network ping -n _your_network_ -p hlfv1 -i _id_ -s _password_ ` to see which participant attempts to ping - or does it perhaps reveal an ACL issue ?
mahoney1 (Fri, 28 Jul 2017 11:25:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7fXTm6bt9jNPNoSLt) @suvpatil hmmm null suggests an association issue at first glance - can we check the mapping of identity to participant - what is the output of `composer network ping -n _your_network_ -p hlfv1 -i _id_ -s _password_ ` to see which participant attempts to ping - or does it perhaps reveal an ACL issue ? One other thing: are you using REST auth ?
mahoney1 (Fri, 28 Jul 2017 11:28:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DKBsXWN8PKaBA5FrZ) @natarajan1c others here may respond on the instance question, but: what errors are you struggling with and on which OS?
jdockter (Fri, 28 Jul 2017 12:17:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8YeFMJjprYKwijJn6) @dselman sure thing
gitSrinidhi (Fri, 28 Jul 2017 12:37:02 GMT):
Hi,
gitSrinidhi (Fri, 28 Jul 2017 12:39:38 GMT):
Hi,
when i run this - *composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString*
i get [InvalidArgumentException]
Command "network" is not defined.
This is happening while deploying .bna in to running hyperledger.
Any clue ?
dselman (Fri, 28 Jul 2017 12:47:26 GMT):
did you install the wrong "composer"?
mahoney1 (Fri, 28 Jul 2017 12:47:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oLoYbkqebvfDC9Ped) @gitSrinidhi let's see - can you run `composer -v` and return the output for me? Also give me the user (in your listing) that is executing this
mahoney1 (Fri, 28 Jul 2017 12:47:31 GMT):
thanks
dselman (Fri, 28 Jul 2017 12:47:47 GMT):
make sure you `npm install -g composer-cli` (not the `-cli`)!
dselman (Fri, 28 Jul 2017 12:47:47 GMT):
make sure you `npm install -g composer-cli` (note the `-cli`)!
dselman (Fri, 28 Jul 2017 12:48:14 GMT):
there is another npm module called `composer` that you don't want
gitSrinidhi (Fri, 28 Jul 2017 12:54:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=B8ic25cXnJTudf88c) @dselman this is the composer i have - *composer-cli@0.10.1*
dselman (Fri, 28 Jul 2017 12:55:03 GMT):
what do you get if you type `composer -v`
gitSrinidhi (Fri, 28 Jul 2017 12:56:23 GMT):
i see this
$ composer -v
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version @package_branch_alias_version@ (1.0.0-beta2) 2016-03-27 16:00:34
gitSrinidhi (Fri, 28 Jul 2017 12:56:23 GMT):
@dselman i see this
$ composer -v
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version @package_branch_alias_version@ (1.0.0-beta2) 2016-03-27 16:00:34
gitSrinidhi (Fri, 28 Jul 2017 12:56:23 GMT):
@dselman i see this - A big composer
$ composer -v
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version @package_branch_alias_version@ (1.0.0-beta2) 2016-03-27 16:00:34
gitSrinidhi (Fri, 28 Jul 2017 13:08:11 GMT):
@dselman i have removed "composer" and reinstalled "composer-cli', it shows The program 'composer' is currently not installed.
mahoney1 (Fri, 28 Jul 2017 13:24:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hR4eAAdGDGgqbQrHa) @gitSrinidhi not sure how the 'other composer' was removed or whether the hyperledger composer executable was also removed in the process (if you say you get 'not found' have installed composer-cli using Dan's instructions. - can you do a `which composer` first and provide output - and can you confirm your node version `node -v` thanks
mahoney1 (Fri, 28 Jul 2017 13:24:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hR4eAAdGDGgqbQrHa) @gitSrinidhi not sure how the 'other composer' was removed or whether the hyperledger composer executable was also removed in the process (if you say you get 'not found' having installed composer-cli using Dan's instructions. - can you do a `which composer` first and provide output - and can you confirm your node version `node -v` thanks
gitSrinidhi (Fri, 28 Jul 2017 13:27:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=x44ww6bMujHBZNEcF) @mahoney1
srinidhi@srinidhi-VirtualBox:~$ which composer
srinidhi@srinidhi-VirtualBox:~$ node -v
v6.11.1
srinidhi@srinidhi-VirtualBox:~$
mahoney1 (Fri, 28 Jul 2017 13:32:54 GMT):
@gitSrinidhi thanks - so the output was blank - you definitely have not installed (hyperledger) composer as user `srinidhi` - can you perform `npm -v` and `python --version`
mahoney1 (Fri, 28 Jul 2017 13:34:52 GMT):
@gitSrinidhi the next step is to run `npm install -g composer-cli` and assuming you've completed all the prerequisite install steps (which prereqs-ubuntu.sh runs)
uber.twin (Fri, 28 Jul 2017 13:35:50 GMT):
@mahoney1 hi, is there support, in the client API, to read the values defined by the connection.json(see bellow) e.g. I'd like to know my current "mspID" at runtime
```
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://localhost:7050"
}
],
"ca": {
"url": "http://localhost:7054",
"name": "ca.org1.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "...",
"channel": "my-channel",
"mspID": "MSPID",
"timeout": "300"
}
```
gitSrinidhi (Fri, 28 Jul 2017 13:37:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9hQyjmjkpMpSyqfS3) @mahoney1 I have installed all these, but still i dont see their path.
srinidhi@srinidhi-VirtualBox:~$ which composer-cli
srinidhi@srinidhi-VirtualBox:~$ which generator-hyperledger-composer
srinidhi@srinidhi-VirtualBox:~$ which composer-rest-server
will reinstall again and check.
gitSrinidhi (Fri, 28 Jul 2017 13:38:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9hQyjmjkpMpSyqfS3) @mahoney1
srinidhi@srinidhi-VirtualBox:~$ npm -v
5.3.0
srinidhi@srinidhi-VirtualBox:~$ python --version
Python 2.7.12
sstone1 (Fri, 28 Jul 2017 13:40:34 GMT):
@gitSrinidhi is the name of the npm package, not the name of the command
sstone1 (Fri, 28 Jul 2017 13:40:49 GMT):
if you have run `npm install -g composer-cli` try running `composer -v` or `which composer`
sstone1 (Fri, 28 Jul 2017 13:41:00 GMT):
and if that doesn't work run `npm ls -g --depth=0`
gitSrinidhi (Fri, 28 Jul 2017 13:41:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qSifD67TYrtaKWPKF) @sstone1 @mahoney1
`+ composer-cli@0.10.1`
added 114 packages and updated 1 package in 142.135s
srinidhi@srinidhi-VirtualBox:~$ `which composer`
srinidhi@srinidhi-VirtualBox:~$ `which composer-cli`
sstone1 (Fri, 28 Jul 2017 13:42:23 GMT):
`npm ls -g --depth=0` <- please run that and paste all the output into here
gitSrinidhi (Fri, 28 Jul 2017 13:42:29 GMT):
okay
gitSrinidhi (Fri, 28 Jul 2017 13:44:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bKtavChkGqw5NQ2Zm) @sstone1
srinidhi@srinidhi-VirtualBox:~$' npm ls -g --depth=0'
/home/srinidhi/.npm-global/lib
'+-- composer-cli@0.10.1'
'+-- composer-rest-server@0.10.1'
'+-- generator-hyperledger-composer@0.10.1'
'+-- jshint@2.9.5'
'`-- yo@2.0.0'
gitSrinidhi (Fri, 28 Jul 2017 13:44:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bKtavChkGqw5NQ2Zm) @sstone1
srinidhi@srinidhi-VirtualBox:~$` npm ls -g --depth=0`
*/home/srinidhi/.npm-global/lib*
`+-- composer-cli@0.10.1`
`+-- composer-rest-server@0.10.1`
`+-- generator-hyperledger-composer@0.10.1`
`+-- jshint@2.9.5`
``-- yo@2.0.0`
gitSrinidhi (Fri, 28 Jul 2017 13:44:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bKtavChkGqw5NQ2Zm) @sstone1
srinidhi@srinidhi-VirtualBox:~$`npm ls -g --depth=0`
*/home/srinidhi/.npm-global/lib*
`+-- composer-cli@0.10.1`
`+-- composer-rest-server@0.10.1`
`+-- generator-hyperledger-composer@0.10.1`
`+-- jshint@2.9.5`
`-- yo@2.0.0`
gitSrinidhi (Fri, 28 Jul 2017 13:47:08 GMT):
@sstone1 @mahoney1 i'm i pointing to wrong location ?
sstone1 (Fri, 28 Jul 2017 13:48:26 GMT):
can you run `echo $PATH` and paste the output in here?
gitSrinidhi (Fri, 28 Jul 2017 13:55:17 GMT):
@sstone1
srinidhi@srinidhi-VirtualBox:~$ `echo $PATH`
*/home/srinidhi/bin:/home/srinidhi/.local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/snap/bin*
srinidhi@srinidhi-VirtualBox:~$
sstone1 (Fri, 28 Jul 2017 13:56:22 GMT):
ok, so I'm guessing your binaries are in `/home/srinidhi/.npm-global/bin`
sstone1 (Fri, 28 Jul 2017 13:56:27 GMT):
and that is not on your PATH
sstone1 (Fri, 28 Jul 2017 13:56:48 GMT):
how did you install node.js and npm? where did the `.npm-global` directory come from? i've not seen that before.
gitSrinidhi (Fri, 28 Jul 2017 13:58:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CBwu6LzbLzBM528QK) @sstone1 using apt-get
gitSrinidhi (Fri, 28 Jul 2017 13:58:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=chu4BHYoXXdCj3E5c) @sstone1 using apt get
mahoney1 (Fri, 28 Jul 2017 13:58:45 GMT):
@uber.twin use `adminConnection.getProfile(connectionProfileName)` eg. ```// Retrieve the connection profile.
const adminConnection = new AdminConnection();
return adminConnection.getProfile('testprofile')
.then((profile) => {
// Retrieved profile
console.log(profile);
});```
uber.twin (Fri, 28 Jul 2017 14:00:01 GMT):
@mahoney1 right, but I'm using a ```BusinessNetworkConnection``` object which doesn't seem to have a similar ```getProfile()``` function
uber.twin (Fri, 28 Jul 2017 14:01:07 GMT):
I'll just create an extra AdminConnection object then
mahoney1 (Fri, 28 Jul 2017 14:02:53 GMT):
yep, the former is to connect/interact with a deployed biz network (definition)
uber.twin (Fri, 28 Jul 2017 14:03:28 GMT):
alright, thank you
ErmyasTeshome (Fri, 28 Jul 2017 14:12:34 GMT):
Has joined the channel.
nehalshah50 (Fri, 28 Jul 2017 14:17:17 GMT):
Hi..I am trying to install composer-sample-application but keep getting this error `
IllegalModelException: line 38 column 1, to line 41 column 2. Class RegisterPropertyForSale is not declared as abstract. It must define an identifying field.
at TransactionDeclaration.validate (/Users/nxshah5/github/composer-sample-applications/getting-started/node_modules/composer-common/lib/introspect/classdeclaration.js:199:27)`
nehalshah50 (Fri, 28 Jul 2017 14:26:28 GMT):
I am trying to follow instruction at https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/README.md
nehalshah50 (Fri, 28 Jul 2017 14:26:28 GMT):
I am trying to follow instruction at https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/README.md and getting error while running npm run deployNetwork
mahoney1 (Fri, 28 Jul 2017 14:56:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qXYqpdW2c6F2Gj7q4) @nehalshah50 is it possible you've missed a closing `}` bracket in your DigitalLandTitle.cto file - the last item in that file is the transaction RegisterPropertyForSale eg see https://github.com/hyperledger/composer-sample-models/blob/master/packages/digitalproperty-model/models/DigitalLandTitle.cto
nehalshah50 (Fri, 28 Jul 2017 14:59:12 GMT):
@mahoney1 I have not changed any code. I ran it right after cloned the repository
mahoney1 (Fri, 28 Jul 2017 14:59:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4zpeYmwova3zFDtdW) @nehalshah50 okidoki will take a look
nehalshah50 (Fri, 28 Jul 2017 15:01:00 GMT):
This is the content of the file namespace net.biz.digitalPropertyNetwork
asset LandTitle identified by titleId {
o String titleId
--> Person owner
o String information
o Boolean forSale optional
}
asset SalesAgreement identified by salesId {
o String salesId
--> Person buyer
--> Person seller
--> LandTitle title
}
participant Person identified by personId {
o String personId
o String firstName
o String lastName
}
transaction RegisterPropertyForSale {
--> Person seller
--> LandTitle title
}
dselman (Fri, 28 Jul 2017 15:06:02 GMT):
@nehalshah50 you are likely using an old version of composer. The models have been updated and now require Composer v0.9+
nehalshah50 (Fri, 28 Jul 2017 15:07:21 GMT):
I am using latest ones 0.10... composer-cli v0.10.0
composer-admin v0.10.0
composer-client v0.10.0
composer-common v0.10.0
composer-runtime-hlf v0.10.0
composer-runtime-hlfv1 v0.10.0
nehalshah50 (Fri, 28 Jul 2017 15:08:20 GMT):
i have playground and fabric working fine...but now want to look at NodeJS based sample application
dselman (Fri, 28 Jul 2017 15:09:34 GMT):
what does package.json for that sample have in it for composer version?
dselman (Fri, 28 Jul 2017 15:09:41 GMT):
Maybe it is out of date?
dselman (Fri, 28 Jul 2017 15:11:23 GMT):
Can you try making that ^0.10.1 please
dselman (Fri, 28 Jul 2017 15:11:28 GMT):
then rm -r node_modules
dselman (Fri, 28 Jul 2017 15:11:32 GMT):
and rerun npm install
dselman (Fri, 28 Jul 2017 15:12:16 GMT):
also, the latest is now 0.10.1 ;-)
dselman (Fri, 28 Jul 2017 15:12:30 GMT):
but 0.10.0 should work as well
nehalshah50 (Fri, 28 Jul 2017 15:14:08 GMT):
@dselman There are multiple package.json files...one under getting-started folder and one under /getting-starged/node_modules/digitalproperty-model and one under /getting-starged/node_modules/digitalproperty-network
dselman (Fri, 28 Jul 2017 15:15:34 GMT):
where did you git clone this from please?
nehalshah50 (Fri, 28 Jul 2017 15:16:29 GMT):
@dselman Following instructions at https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/README.md
nehalshah50 (Fri, 28 Jul 2017 15:16:29 GMT):
@dselman Following instructions at https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/README.md .. starting with step 2 . 1
ansonlau3 (Fri, 28 Jul 2017 15:18:13 GMT):
hi all, does the query function support (query datetime between xxxx AND xxxx ) ?
ansonlau3 (Fri, 28 Jul 2017 15:18:38 GMT):
because I did not find the "between" in the docs
uber.twin (Fri, 28 Jul 2017 15:34:31 GMT):
@mahoney1 I'm getting the following error at connection time, when trying to connect with an issued identity. Is there a special ACL rule just for granting connection rights?
```
error trying to query chaincode. Error: chaincode error (status: 500, message: Error: Participant 'my.Party#ORG1US33001' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#my-network@1.0.0')
dselman (Fri, 28 Jul 2017 15:34:45 GMT):
@ansonlau3 You can use `>` and `<`
dselman (Fri, 28 Jul 2017 15:36:36 GMT):
@uber.twin you can add
dselman (Fri, 28 Jul 2017 15:36:45 GMT):
```
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
dselman (Fri, 28 Jul 2017 15:37:08 GMT):
This grants all participants all access to all the system resources
dselman (Fri, 28 Jul 2017 15:38:22 GMT):
@nehalshah50 that is out of date sorry, and references @mbwhite repo
uber.twin (Fri, 28 Jul 2017 15:38:52 GMT):
@dselman but wouldn't that be more than what's necessary?
nehalshah50 (Fri, 28 Jul 2017 15:39:14 GMT):
@dselman @mbwhite Ok. Please let me know new instructions if any available
dselman (Fri, 28 Jul 2017 15:40:40 GMT):
@nehalshah50 you should follow the developer tutorial here: https://hyperledger.github.io/composer/tutorials/developer-guide.html
dselman (Fri, 28 Jul 2017 15:42:15 GMT):
@uber.twin yes - but it will get you going. You can always prune things down later.
nehalshah50 (Fri, 28 Jul 2017 15:42:27 GMT):
@dselman Yes I did follow everything on developer-guide.... I was just trying to look at sample applications. I only followed from step 2.1 on github...As I said I don't have problem with running playground and fabric 1.0
dselman (Fri, 28 Jul 2017 15:42:57 GMT):
If you followed the developer guide you will have built a sample application end to end.
uber.twin (Fri, 28 Jul 2017 15:44:23 GMT):
@dselman but it happens that I'd like to setup a participant which is only allowed to list a certain asset.
uber.twin (Fri, 28 Jul 2017 15:44:23 GMT):
@dselman but it happens that I'd like to setup a participant which is only allowed to list a certain asset.so I wrote a couple of rules which I though would do that. problem is I can even connect using this Party
ansonlau3 (Fri, 28 Jul 2017 15:45:51 GMT):
@dselman thanks.
nehalshah50 (Fri, 28 Jul 2017 15:48:18 GMT):
@dselman On this page https://hyperledger.github.io/composer/applications/node.html there is a link to landRegistry.js for example...So I followed the link then i navigated to composer-sample-application and thats where i found this instruction
dselman (Fri, 28 Jul 2017 15:52:58 GMT):
@uber.twin as I said, I would start with that permissive rule and then tune it down. Your participant will need read access t the network at least
uber.twin (Fri, 28 Jul 2017 15:58:58 GMT):
alright, so I'll try the rule with "operation" attribute set on "READ", thank you
ScottMorris (Fri, 28 Jul 2017 16:00:25 GMT):
Hello again, I'm running the composer REST server as PeerAdmin (org1's admin peer). When I try and issue a new Identity through it I get the following message `fabric-ca request register failed with errors [[{\"code\":400,\"message\":\"Authorization failure\"}]]`. I've tried running the API with `-i admin -s adminpw` but it fails to start saying an invalid cert. I have PeerAdmin's cert imported into my local wallet. What do I need to setup to authenticate with the CA?
sstone1 (Fri, 28 Jul 2017 16:01:12 GMT):
@ScottMorris PeerAdmin does not have permission to issue identities
sstone1 (Fri, 28 Jul 2017 16:01:15 GMT):
you need to use admin
sstone1 (Fri, 28 Jul 2017 16:01:28 GMT):
is it possible you have an old admin cert in your keyValStore from a previous fabric installation?
ScottMorris (Fri, 28 Jul 2017 16:02:01 GMT):
i didn't have any admin certs in my keyValStore as I set this machine up from scratch
ScottMorris (Fri, 28 Jul 2017 16:03:00 GMT):
[ ] (https://chat.hyperledger.org/channel/composer?msg=qXy7e8Ne2EraNRb5F) @sstone1 i wasn't sure which certs to import so I grabbed to one's from the docker image of the CA and imported them, but they don't work
sstone1 (Fri, 28 Jul 2017 16:03:15 GMT):
for admin? you don't need to import certs
sstone1 (Fri, 28 Jul 2017 16:03:28 GMT):
you can just enrol using admin + adminpw (the enrolment secret)
ScottMorris (Fri, 28 Jul 2017 16:04:57 GMT):
When I run `$ composer-rest-server -p hlfv1 -n mynetwork -i admin -s adminpw -N always -S false` I get the following
```
Discovering types from business network definition ...
Connection fails: Error: error trying to ping. Error: error trying to query chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
It will be retried for the next request.
Exception: Error: error trying to ping. Error: error trying to query chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
Error: error trying to ping. Error: error trying to query chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
at queryChainCode.then.catch (/home/fvadmin/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:707:34)
```
sstone1 (Fri, 28 Jul 2017 16:05:55 GMT):
can you run `ls -lart ~/.composer-credentials` ?
ScottMorris (Fri, 28 Jul 2017 16:08:03 GMT):
This is what I get
```
$ ls -lart ~/.composer-credentials
total 64
-rw-r--r-- 1 fvadmin fvadmin 246 Jul 21 12:43 afe4c0e79336277629af4261154f4449ba4a82ad7e0b2d4d6c5d30f7901af598-priv
-rw-r--r-- 1 fvadmin fvadmin 246 Jul 25 10:40 fb542955b52d77558a59b473143f4004568edc39277c75bc8c28b9e3625ca200-priv
-rw-r--r-- 1 fvadmin fvadmin 246 Jul 25 10:41 6ea2fb497f012406ee0f72af79f4e7861542dfb504c33dbfab4c81e18c4a27e2-priv
-rw-rw-r-- 1 fvadmin fvadmin 246 Jul 27 16:54 729e474188df51ee6e06dc4ca1df15b378630a286e3f55a1cbee664310b79fbc-priv
-rw-rw-r-- 1 fvadmin fvadmin 246 Jul 27 17:03 6f517d95ed9e3fbe70f2cabf198fe9455ba85c86857aa76becb93141b0e40099-priv
-rw-rw-r-- 1 fvadmin fvadmin 246 Jul 27 17:05 245199cc56c6dde22a8cfff84f6dcac7219d556ac4a45204ce46804bfd5e8c04-priv
-rw-rw-r-- 1 fvadmin fvadmin 246 Jul 27 17:27 260564e163e0501abd44d8c826be07ee3c192649426a2163a512a8d8376431bb-priv
drwxr-xr-x 18 fvadmin fvadmin 4096 Jul 28 11:38 ..
-rw-rw-r-- 1 fvadmin fvadmin 246 Jul 28 11:40 30faf4852228090ee4f467c1db156b7693ec51a1028478c0e7e738065eab7bb5-priv
-rw-rw-r-- 1 fvadmin fvadmin 182 Jul 28 11:41 ae01c378698647f445175cc4e40d0e8e8671e25e2a760551cca3adef6d9cdc08-pub
-rw-rw-r-- 1 fvadmin fvadmin 1018 Jul 28 11:41 caAdmin
-rw-r--r-- 1 fvadmin fvadmin 182 Jul 28 11:45 afe4c0e79336277629af4261154f4449ba4a82ad7e0b2d4d6c5d30f7901af598-pub
-rw-r--r-- 1 fvadmin fvadmin 1028 Jul 28 11:45 PeerAdminOrg1
-rw-rw-r-- 1 fvadmin fvadmin 182 Jul 28 12:04 260564e163e0501abd44d8c826be07ee3c192649426a2163a512a8d8376431bb-pub
-rw-rw-r-- 1 fvadmin fvadmin 928 Jul 28 12:04 admin
drwxr-xr-x 2 fvadmin fvadmin 4096 Jul 28 12:07 .
```
uber.twin (Fri, 28 Jul 2017 16:15:53 GMT):
@dselman I included the SystemACL rule(operation: ALL) but I still get an error at connection time
```
Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The runtime API is not available)
at channel.queryByChaincode.then.catch (/home/pg/workspace/composer-sample-applications/packages/my-network/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:766:34)
Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The runtime API is not available)
```
uber.twin (Fri, 28 Jul 2017 16:19:43 GMT):
it's working fine when I update my network with no permissions.acl
mahoney1 (Fri, 28 Jul 2017 16:38:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=t3nQc2wdqKsz9KBSm) @nehalshah50 think I see the problem. The README talks about an `npm run deployNetwork` which you naturally applied to the digitalproperty-network app. However, its package.json does not have this instructive, so that's why you see the error. In my npm 3.10.x setup, it successfully did the prepublish step (when npm install was run) and that creates a business network archive file in `dist/digitalproperty-network.bna` ; the timestamp reveals its recent creation, You can create that BNA file simply by doing the `npm run prepublish` step (to create the BNA). Then to DEPLOY your network to a running v1.0 Fabric - you run `composer network deploy -a dist/digitalproperty-network.bna -p hlfv1 -i PeerAdmin -s randomString` from the digitalproperty-app directory. Hope this helps.
mahoney1 (Fri, 28 Jul 2017 16:56:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3FnuPndsRNzSCXuo2) @uber.twin could you post the contents of your current `permissions.acl` pls and thanks.
uber.twin (Fri, 28 Jul 2017 17:05:28 GMT):
@mahoney1 I've got just one rule:
```
rule NetworkAccess {
description: "Network access rights"
participant: "my.Party"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
uber.twin (Fri, 28 Jul 2017 17:11:21 GMT):
my client application fails as stated, when trying to connect
mahoney1 (Fri, 28 Jul 2017 17:20:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Qucj2KwT3EjdWmF3K) @uber.twin quick and obvious q: so is "my.Party' the FQ name ie with namespace prefix? And: it doesn't fail to connect (if you've tested it) when you use the broader filter that dselman posted earlier? Admittedly a runtime error would seem strange at that point.
davidkel (Fri, 28 Jul 2017 17:25:14 GMT):
@ScottMorris is your ca configured to create certificates that are valid for your fabric ? It looks like the certificates being created by your CA are being signed by an authority that your peer(s) don't know about.
uber.twin (Fri, 28 Jul 2017 17:26:38 GMT):
@mahoney1 yes, it's fully qualified. just tried it and it fails just the same when using the broader rule, i.e.
```
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
uber.twin (Fri, 28 Jul 2017 17:30:00 GMT):
no problem when I drop permissions.acl
sstone1 (Fri, 28 Jul 2017 17:42:02 GMT):
@uber.twin you mentioned earlier you had written other rules:
sstone1 (Fri, 28 Jul 2017 17:42:09 GMT):
> but it happens that I'd like to setup a participant which is only allowed to list a certain asset.so I wrote a couple of rules which I though would do that. problem is I can even connect using this Party
sstone1 (Fri, 28 Jul 2017 17:42:12 GMT):
please provide those rules
uber.twin (Fri, 28 Jul 2017 17:43:31 GMT):
yes, at that point, I was getting this other error : ```error trying to query chaincode. Error: chaincode error (status: 500, message: Error: Participant 'my.Party#ORG1US33001' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#my-network@1.0.0')```
uber.twin (Fri, 28 Jul 2017 17:43:59 GMT):
than I placed the SystemACL on top of all
uber.twin (Fri, 28 Jul 2017 17:44:09 GMT):
than I left it alone
sstone1 (Fri, 28 Jul 2017 17:44:13 GMT):
the error `The runtime API is not available` can only appear in one place - when executing the `condition` of an ACL rule.
ScottMorris (Fri, 28 Jul 2017 17:44:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tw4Xz38mQDA4uXg4h) @davidkel How do I check this?
sstone1 (Fri, 28 Jul 2017 17:44:21 GMT):
so please provide those other rules as they are not correct
uber.twin (Fri, 28 Jul 2017 17:46:17 GMT):
but I have removed them all, and did a network update
sstone1 (Fri, 28 Jul 2017 17:46:57 GMT):
did you rebuild the BNA after removing them all? can you provide the BNA?
uber.twin (Fri, 28 Jul 2017 17:54:37 GMT):
yes, BNA gets rebuilt
uber.twin (Fri, 28 Jul 2017 17:54:57 GMT):
can't provide it, but my previous rules look like this:
```
rule AdminPartyGrantAll {
description: "Admin Party identities can manage all resources under the my namespace"
participant(party): "my.Party"
operation: ALL
resource: "my.**"
condition:(party.admin==true)
action: ALLOW
}
rule PartyGuard {
description: "Party identities can see themselves"
participant(party): "my.Party"
operation: READ
resource(res): "my.Party"
condition:(party.bic==res.bic)
action: ALLOW
}
rule AccountGuard {
description: "Party identities can see their own accounts"
participant(party): "my.Party"
operation: READ
resource(res): "my.Account"
condition:(party.bic==res.owner.bic)
action: ALLOW
}
uber.twin (Fri, 28 Jul 2017 17:55:23 GMT):
they might have errors but they shouldn't be there anymore
uber.twin (Fri, 28 Jul 2017 17:56:08 GMT):
I'll try to tear down the network and restart from scratch
uber.twin (Fri, 28 Jul 2017 17:56:59 GMT):
however, when I do an update with no permissions.acl file, it works
davidkel (Fri, 28 Jul 2017 18:08:54 GMT):
@ScottMorris Can you post your docker-compose.yml file ?
ScottMorris (Fri, 28 Jul 2017 18:10:16 GMT):
@davidkel Yup
ScottMorris (Fri, 28 Jul 2017 18:12:15 GMT):
Message Attachments
davidkel (Fri, 28 Jul 2017 18:16:28 GMT):
@ScottMorris Can I check you didn't use composer identity import to create the 'admin' id ?
davidkel (Fri, 28 Jul 2017 18:16:28 GMT):
@ScottMorris Can I check you didn't use `composer identity import` to create the 'admin' id ?
davidkel (Fri, 28 Jul 2017 18:17:46 GMT):
As your docker-compose file looks as though it should work.
ScottMorris (Fri, 28 Jul 2017 18:26:21 GMT):
I don't remember using `composer identity import` to import the admin, maybe I can just remove that identity from the keyValueStore?
ScottMorris (Fri, 28 Jul 2017 18:26:21 GMT):
@davidkel I don't remember using `composer identity import` to import the admin, maybe I can just remove that identity from the keyValueStore?
ScottMorris (Fri, 28 Jul 2017 18:26:42 GMT):
Maybe I can just delete it?
davidkel (Fri, 28 Jul 2017 18:28:38 GMT):
@ScottMorris could try that, you need to open the `admin` file and it will have value next to `signingIdentity` and delete the files that have that value as the first part of their filename, then delete the `admin` file
ScottMorris (Fri, 28 Jul 2017 18:33:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HaHBKKtfxBFkvos9h) @davidkel So I deleted the keys and then the admin file. Then reran the REST api with _admin/adminpw_. When it starts it throws out this error and dies
```
k$ composer-rest-server -p hlfv1 -n fvmicroinsurance -i admin -s adminpw -N always -S false
Discovering types from business network definition ...
Connection fails: Error: error trying login and get user Context. Error: error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN
It will be retried for the next request.
Exception: Error: error trying login and get user Context. Error: error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN
Error: error trying login and get user Context. Error: error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN
at client.getUserContext.then.then.catch (/home/fvadmin/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:293:34)
at process._tickCallback (internal/process/next_tick.js:109:7)
```
It also recreates the `admin` file with new keys
davidkel (Fri, 28 Jul 2017 18:42:33 GMT):
@ScottMorris if the file names have changed then it has downloaded a new admin certificate which was different to your last one. It don't know what the problem is here, but it would be a fabric configuration problem around the MSP setup.
davidkel (Fri, 28 Jul 2017 18:43:23 GMT):
@ScottMorris You may be able to get some information from the orderer log as I am guessing the error came from it. But you could check the peer logs as well.
davidkel (Fri, 28 Jul 2017 18:44:02 GMT):
@ScottMorris Would you be able to use our development fabric server documented by our install guides ?
ScottMorris (Fri, 28 Jul 2017 18:46:33 GMT):
@davidkel Yeah, it keeps getting new keys, so something is generating them. I thought it was the CA but maybe it is another source. I'm currently using the _basic-network_ sample from the _fabic-sample_ repo, https://github.com/hyperledger/fabric-samples/tree/master/basic-network. I can probably move everything over to one set up from the dev guides, I'll look into making a new VM to do this.
ScottMorris (Fri, 28 Jul 2017 18:48:19 GMT):
@davidkel I found some logs in the `.composer-credentials` directory that seem to align with when I run the REST api with the message of `"error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN`
ScottMorris (Fri, 28 Jul 2017 18:48:19 GMT):
@davidkel I found some logs in the `.composer-credentials` directory that seem to align with when I run the REST api with the message of `"error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN` from the `registerAndEnroll()` method.
davidkel (Fri, 28 Jul 2017 18:51:42 GMT):
@ScottMorris I think that would be best to get you started with Composer and a real fabric
ScottMorris (Fri, 28 Jul 2017 18:52:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=petA7Xc2ATSyDLs8F) @davidkel Ok, I'll give this a whirl. Thanks
davidkel (Fri, 28 Jul 2017 18:54:01 GMT):
@ScottMorris no probs. That basic sample is very similar to our dev server
ScottMorris (Fri, 28 Jul 2017 18:56:08 GMT):
@davidkel that's good. I'll be familiar with the architecture then :)
ekivol (Fri, 28 Jul 2017 19:35:35 GMT):
In the composer CLI list, I don't see anything about creating assets on the blockchain. How would I go about adding an asset from command line?
ScottMorris (Fri, 28 Jul 2017 20:17:43 GMT):
In my attempt to setup the Composer dev network on a new Ubunut box, I seem to have broke something. Has anyone see a `Cannot find module` error before with the _composer-cli_ package before?
```
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1". Error: Cannot find module '/home/smorris/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/grpc_node.node'
```
ScottMorris (Fri, 28 Jul 2017 20:17:43 GMT):
In my attempt to setup the Composer dev network on a new Ubunut box, I seem to have broke something. Has anyone see a `Cannot find module` error before with the _composer-cli_ package before?
```
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1". Error: Cannot find module '/home/smorris/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/grpc_node.node'
```
ScottMorris (Fri, 28 Jul 2017 21:21:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gs55xCREYdX7FaByQ) @ekivol One way to create assets is to use the REST server
ScottMorris (Fri, 28 Jul 2017 21:32:54 GMT):
I'm trying to setup _passport-http_ has the authentication method for the REST API and I'm trying to find out where the Username and Password credentials come from. I've found in `passport-configurator.js` a reference to some kind of `User` model, but I can't find the model itself or where it is supposed to get the data. Bases on line 42 of this file
```
this.userModel = options.userModel || loopback.getModelByType(this.app.models.User);
```
I can set it up via the options JSON config that is taken from an environment variable, or it will try and look up the model byType, however, I have no clue where this model comes from or where the data comes from for the `findOne` call on line 294 of `passport-configurator.js` under the `local` `authType` case. Has anyone tried using _passport-http_ for authentication?
SANTIAGOVALLEJO (Sat, 29 Jul 2017 03:11:24 GMT):
Has joined the channel.
baoyangc (Sat, 29 Jul 2017 05:50:47 GMT):
I think the docker image composer-rest-server:0.10.0 has a bug
baoyangc (Sat, 29 Jul 2017 05:51:19 GMT):
it can' start the the port
baoyangc (Sat, 29 Jul 2017 07:35:26 GMT):
```[chaincode] func1 -> DEBU c3f [e9013557] getting state for chaincode banquanjia, key Asset:org.hyperledger.composer.system.Identity5059c04945addd80074c7a9cd018aa668e16413755f249de9d449f9a82645331, channel composerchannel
2017-07-29 05:39:04.740 UTC [statecouchdb] GetState -> DEBU c40 GetState(). ns=banquanjia, key=Asset:org.hyperledger.composer.system.Identity5059c04945addd80074c7a9cd018aa668e16413755f249de9d449f9a82645331
2017-07-29 05:39:04.740 UTC [couchdb] ReadDoc -> DEBU c41 Entering ReadDoc() id=[banquanjiaAsset:org.hyperledger.composer.system.Identity5059c04945addd80074c7a9cd018aa668e16413755f249de9d449f9a82645331]
2017-07-29 05:39:04.740 UTC [couchdb] handleRequest -> DEBU c42 Entering handleRequest() method=GET url=http://couchdb:5984/composerchannel/banquanjia%00%00Asset:org.hyperledger.composer.system.Identity%005059c04945addd80074c7a9cd018aa668e16413755f249de9d449f9a82645331%00?attachments=true
2017-07-29 05:39:04.740 UTC [couchdb] handleRequest -> DEBU c43 HTTP Request: GET /composerchannel/banquanjia%00%00Asset:org.hyperledger.composer.system.Identity%005059c04945addd80074c7a9cd018aa668e16413755f249de9d449f9a82645331%00?attachments=true HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2017-07-29 05:39:04.743 UTC [couchdb] handleRequest -> DEBU c44 Couch DB Error:not_found, Status Code:404, Reason:missing
2017-07-29 05:39:04.743 UTC [couchdb] ReadDoc -> DEBU c45 Document not found (404), returning nil value instead of 404 error```
baoyangc (Sat, 29 Jul 2017 07:35:59 GMT):
why it report `Couch DB Error:not_found,`
baoyangc (Sat, 29 Jul 2017 07:36:03 GMT):
does it matter
baoyangc (Sat, 29 Jul 2017 07:36:06 GMT):
?
baoyangc (Sat, 29 Jul 2017 07:36:29 GMT):
what 's `org.hyperledger.composer.system.Identity%005059c04945addd80074c7a9cd018aa668e16413755f249de9d449f9a82645331%00`
wangmzdl (Sat, 29 Jul 2017 10:44:00 GMT):
Has joined the channel.
wangmzdl (Sat, 29 Jul 2017 10:44:25 GMT):
Hello guys
wangmzdl (Sat, 29 Jul 2017 10:45:06 GMT):
I got a error I tried dev guide: https://hyperledger.github.io/composer/tutorials/developer-guide.html
wangmzdl (Sat, 29 Jul 2017 10:45:25 GMT):
npm test error:
wangmzdl (Sat, 29 Jul 2017 10:45:28 GMT):
Error: No chaincode ID found for business network 'my-network'
at testIdentity.then (node_modules/composer-connector-embedded/lib/embeddedconnection.js:165:27)
at process._tickCallback (internal/process/next_tick.js:103:7)
wangmzdl (Sat, 29 Jul 2017 10:46:19 GMT):
checked the code, found : adminConnection.connect('defaultProfile', 'admin', 'adminpw');
wangmzdl (Sat, 29 Jul 2017 10:46:59 GMT):
any idea about admin/adminpw? I didn't set it, what pwd I should use
jorisjh (Sat, 29 Jul 2017 10:47:50 GMT):
Hi all! is there documentation about the functions usable in the transactions? I've seen getAssetRegistry(), how do I point it to one asset in particular?
jarvis488 (Sat, 29 Jul 2017 10:48:05 GMT):
Has joined the channel.
baoyangc (Sat, 29 Jul 2017 12:22:54 GMT):
@sstone1 ```export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "REPLACE_WITH_CLIENT_ID",
"clientSecret": "REPLACE_WITH_CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'```
baoyangc (Sat, 29 Jul 2017 12:23:14 GMT):
this callbackurl will be http or https
baoyangc (Sat, 29 Jul 2017 12:23:23 GMT):
how to set it
baoyangc (Sat, 29 Jul 2017 12:23:49 GMT):
please visit https://bc.bqj.cn/auth/bqj
baoyangc (Sat, 29 Jul 2017 12:25:10 GMT):
Message Attachments
suvpatil (Sun, 30 Jul 2017 12:40:37 GMT):
Hi all......How to provide role and affiliation in hyperledger composer............do we have any document for that?
UDeshmukh (Sun, 30 Jul 2017 16:35:25 GMT):
Generate the Business Network Archive fails when I run npm install. @sstone1 I read your response to a prior thread - that npm run prepublish or composer archive create should instead be used. I tried both nut they fail with same error as seen in attached screenshot
UDeshmukh (Sun, 30 Jul 2017 16:36:55 GMT):
Message Attachments
robert07ravikumar (Sun, 30 Jul 2017 18:23:56 GMT):
Has joined the channel.
SuzanneLivingston (Mon, 31 Jul 2017 00:37:25 GMT):
Has joined the channel.
camdenT (Mon, 31 Jul 2017 01:54:24 GMT):
When conducting unit testing, is there a way to create a participant/asset with its default values? I keep getting errors unless I explicitly assign each attribute, even though I set "default" values in the model
camdenT (Mon, 31 Jul 2017 01:55:14 GMT):
Also, is there a way to set default values for an array, or is that not supported? Thanks!
camdenT (Mon, 31 Jul 2017 01:55:14 GMT):
Also, are default values supported for arrays, or no? I haven't seen any examples of it in the documentation. Thanks!
vinit_3101 (Mon, 31 Jul 2017 04:04:56 GMT):
Has joined the channel.
vinit_3101 (Mon, 31 Jul 2017 04:05:40 GMT):
Hi All .. I am setting up hyperledger composer from installation guide
vinit_3101 (Mon, 31 Jul 2017 04:05:42 GMT):
: https://hyperledger.github.io/composer/unstable/installing/development-tools.html
vikas_hada (Mon, 31 Jul 2017 05:19:12 GMT):
Referring to article mentioned here https://hyperledger-fabric.readthedocs.io/en/latest/msp.html#how-to-generate-msp-certificates-and-their-signing-keys. It says "Hyperledger *Fabric CA can also be used* to generate the keys and certificates needed to configure an MSP." Does that mean that Fabric CA is optional if one uses cryptogen - i.e. will there be no case where we need CA while building the network.
mahoney1 (Mon, 31 Jul 2017 09:18:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oE6RD7meEaPhXwd7h) @wangmzdl problem connecting to your 'my-network' chaincode container : 1) did you deploy the network to the runtime Fabric, per the tutorial (you should see a container for it in `docker ps -a` 2) did you run createComposerProfile.sh to import PeerAdmin creds 3) if both 1 and 2 are done, what do you see when you `composer network list -n my-network -p hlfv1 -s admin -p adminpw (note: you question on 'defaultProfile' above - that's an in-memory browser test in the sample test code - it doesn't use a HLFV1 connection profile (like the deploy does) to connect to 'Fabric' at that point).
jarvis488 (Mon, 31 Jul 2017 09:58:51 GMT):
Hi everyone want o ask that the difference if i use composer network deploy command and if i use composer identity import command i am attaching the link hyperledger.github.io/composer/business-network/bnd-deploy.html plz if u can help what the difference in deploying with those commands or are they same
SandeepKhore (Mon, 31 Jul 2017 10:06:35 GMT):
Has joined the channel.
SandeepKhore (Mon, 31 Jul 2017 10:06:48 GMT):
yes.. i have same doubt too...
mahoney1 (Mon, 31 Jul 2017 10:16:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZF83yu7zjdcHyaweS) @camdenT strange, woudl have thought it 'honoured' the fact you set a default (and you've obviously test a value for a setting in a newResource right) . I suggest to raise an Github issue with your model and your unit test, showing attribute is not set despite default / errors shown as you mentioned. Thanks. No, it seems you can't set default array in model presently (you can test this in onine playground). You should set them therefore in your test.
mahoney1 (Mon, 31 Jul 2017 10:16:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZF83yu7zjdcHyaweS) @camdenT strange, would have thought it 'honoured' the fact you set a default (and you've obviously test a value for a setting in a newResource right) . I suggest to raise an Github issue with your model and your unit test, showing attribute is not set despite default / errors shown as you mentioned. Thanks. No, it seems you can't set default array in model presently (you can test this in onine playground). You should set them therefore in your test.
mahoney1 (Mon, 31 Jul 2017 10:16:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZF83yu7zjdcHyaweS) @camdenT strange, would have thought it 'honoured' the fact you set a default (and you've obviously tested a value for a setting in a newResource right) . I suggest to raise an Github issue with your model and your unit test, showing attribute is not set despite default / errors shown as you mentioned. Thanks. No, it seems you can't set default array in model presently (you can test this in onine playground). You should set them therefore in your test.
mahoney1 (Mon, 31 Jul 2017 10:18:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tcuZYHaerTQ8XMkpi) @UDeshmukh hi there - there's something wrong in your model file - and it won't create the archive - can you post / dmsg / send it to me, thanks..
SandeepKhore (Mon, 31 Jul 2017 10:29:47 GMT):
Hi all....
I want to know how to deploy business network archive .bna on ibm bluemix cloud.
I have deployed it on local playground but i want to deploy it on bluemix to access API on other system.
mahoney1 (Mon, 31 Jul 2017 10:30:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SC9KuL7nn5jxDWd4m) @jarvis488 `composer network deploy` deploys your modeled network (of assets, participants and transaction processors including the business logic behind those transactions) to - for example a running Hyperledger Fabric blockchain. Identities that consume or interact with that runtime, are linked to Participants (a Composer concept) who are interacting with those assets and creating transactions (eg, create, update, query etc). `composer identity import` imports the crypto material (ie identity = certificate) so that the identity is known and able to 'sign' transactions etc (the identity is associated/linked with a participant in Composer) to be able to carry out transactions against the deployed business network (or networks that the Participant has access to) as mentioned etc.
camdenT (Mon, 31 Jul 2017 10:30:57 GMT):
@mahoney1 What do you mean by "test a value for a setting in a newResource"? I'm using
"const wallet = factory.newResource(NS, 'Wallet', 'Wallet1');" to create a wallet (defined in my model file). Is there a parameter I need to include in this function to make it use the default attribute values that I set for the wallet in the model file, or should it be automatically instantiating those values?
UDeshmukh (Mon, 31 Jul 2017 10:39:12 GMT):
Message Attachments
jarvis488 (Mon, 31 Jul 2017 10:40:04 GMT):
@mahoney1 composer network deploy (i t deploys to my local fabric block chain only )?? if its on local how to make it public or peer to peer
UDeshmukh (Mon, 31 Jul 2017 10:40:08 GMT):
Hi @mahoney1 pl. see attached screenshot of my sample.cto. Pl. take a quick look... Thanks!
jarvis488 (Mon, 31 Jul 2017 10:40:38 GMT):
@mahoney1 thnks for reply
uber.twin (Mon, 31 Jul 2017 11:32:57 GMT):
@mahoney1 regarding this error
```
Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The runtime API is not available)
at channel.queryByChaincode.then.catch (/home/pg/workspace/composer-sample-applications/packages/my-network/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:766:34)
Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The runtime API is not available)
```
generated when trying to connect with an identity issued using the composer API,
maybe the peer log could help?
```
[Composer] Debug -> DEBU 3349[0m @JS : Resolver :resolveResourceOrConcept() < Resource {id=my.Party#FRNYUS33FX1}
[Composer] Debug -> DEBU 334a[0m @JS : Resolver :prepare() < Resource {id=my.Party#FRNYUS33FX1}
[Composer] Debug -> DEBU 334b[0m @JS : AccessController :matchPredicate() Executing compiled ACL predicate
[Composer] Debug -> DEBU 334c[0m @JS : CompiledAclBundle :execute() > [object Object], Resource {id=org.hyperledger.composer.system.Network#my-network@1.0.0}, Resource {id=my.Party#FRNYUS33FX1}, undefined
[Composer] Error -> ERRO 334d[0m @JS : AccessController :check() Error: The runtime API is not available
[Composer] Error -> ERRO 334e[0m @JS : Engine :invoke() Caught error, rethrowing [object Object]
```
uber.twin (Mon, 31 Jul 2017 11:32:57 GMT):
@mahoney1 regarding this error
```
Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The runtime API is not available)
at channel.queryByChaincode.then.catch (/home/pg/workspace/composer-sample-applications/packages/my-network/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:766:34)
Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The runtime API is not available)
```
generated when trying to connect with an identity issued using the composer API,
maybe the peer log could help?
```
[Composer] Debug -> DEBU 3349[0m @JS : Resolver :resolveResourceOrConcept() < Resource {id=my.Party#FRNYUS33FX1}
[Composer] Debug -> DEBU 334a[0m @JS : Resolver :prepare() < Resource {id=my.Party#FRNYUS33FX1}
[Composer] Debug -> DEBU 334b[0m @JS : AccessController :matchPredicate() Executing compiled ACL predicate
[Composer] Debug -> DEBU 334c[0m @JS : CompiledAclBundle :execute() > [object Object], Resource {id=org.hyperledger.composer.system.Network#my-network@1.0.0}, Resource {id=my.Party#FRNYUS33FX1}, undefined
[Composer] Error -> ERRO 334d[0m @JS : AccessController :check() Error: The runtime API is not available
[Composer] Error -> ERRO 334e[0m @JS : Engine :invoke() Caught error, rethrowing [object Object]
``` FRNYUS33FX1 is the identity issued for a participant with the same ID
uber.twin (Mon, 31 Jul 2017 11:32:57 GMT):
@mahoney1 regarding this error
```
Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The runtime API is not available)
at channel.queryByChaincode.then.catch (/home/pg/workspace/composer-sample-applications/packages/my-network/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:766:34)
Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The runtime API is not available)
```
generated when trying to connect with an identity issued using the composer API,
maybe the peer log could help?
```
[Composer] Debug -> DEBU 3349[0m @JS : Resolver :resolveResourceOrConcept() < Resource {id=my.Party#FRNYUS33FX1}
[Composer] Debug -> DEBU 334a[0m @JS : Resolver :prepare() < Resource {id=my.Party#FRNYUS33FX1}
[Composer] Debug -> DEBU 334b[0m @JS : AccessController :matchPredicate() Executing compiled ACL predicate
[Composer] Debug -> DEBU 334c[0m @JS : CompiledAclBundle :execute() > [object Object], Resource {id=org.hyperledger.composer.system.Network#my-network@1.0.0}, Resource {id=my.Party#FRNYUS33FX1}, undefined
[Composer] Error -> ERRO 334d[0m @JS : AccessController :check() Error: The runtime API is not available
[Composer] Error -> ERRO 334e[0m @JS : Engine :invoke() Caught error, rethrowing [object Object]
``` FRNYUS33FX1 is the identity issued for a participant with the same ID; what does this log entry mean: "Resource {id=org.hyperledger.composer.system.Network#my-network@1.0.0}, Resource {id=my.Party#FRNYUS33FX1}, undefined"
mahoney1 (Mon, 31 Jul 2017 11:36:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AuCHqxAZN7rhACPT4) @camdenT sorry that was 'tested for' not 'test' (...for a value). So I've just tested this with the sample-network 'trade-network' out on Github and default definitely works for me. I set this line ` String description default = "mydescription" ` in my model file (I then used `composer network update` to update a previously deployed network). In my test script I did a `before` and `after` test for an attribute (before = default from model' ..after = 'assign new value') - I did a simple create Commodity object test ```// create the commodity
const commodity = factory.newResource(NS, 'Commodity', 'EMA');
console.log( 'Value before is : ' + commodity.description );
commodity.description = 'Corn';
console.log( 'Value after is : ' + commodity.description );``` and the result was ``` Commodity Trading
#tradeCommodity
Value before is : mydescription
Value after is : Corn
``` . (Also checked Playground for good measure) - hope this helps.
mahoney1 (Mon, 31 Jul 2017 11:36:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AuCHqxAZN7rhACPT4) @camdenT sorry that was 'tested for' not 'test' (...for a value). So I've just tested this with the sample-network 'trade-network' out on Github and default definitely works for me. I set this line ` String description default = "mydescription" ` in my model file (I then used `composer network update` to update a previously deployed network). In my test script I did a `before` and `after` test for an attribute (before = default from model' ..after = 'assign new value') - I did a simple create Commodity object test ``` // create the commodity
const commodity = factory.newResource(NS, 'Commodity', 'EMA');
console.log( 'Value before is : ' + commodity.description );
commodity.description = 'Corn';
console.log( 'Value after is : ' + commodity.description );``` and the result was ``` Commodity Trading
#tradeCommodity
Value before is : mydescription
Value after is : Corn
``` (Also checked Playground for good measure) - hope this helps.
mahoney1 (Mon, 31 Jul 2017 11:36:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AuCHqxAZN7rhACPT4) @camdenT sorry that was 'tested for' not 'test' (...for a value). So I've just tested this with the sample-network 'trade-network' out on Github and default definitely works for me. I set this line ` String description default = "mydescription" ` in my model file (I then used `composer network update` to update a previously deployed network). In my test script I did a `before` and `after` test for an attribute (before = default from model' ..after = 'assign new value') - I did a simple create Commodity object test ``` // create the commodity
const commodity = factory.newResource(NS, 'Commodity', 'EMA');
console.log( 'Value before is : ' + commodity.description );
commodity.description = 'Corn';
console.log( 'Value after is : ' + commodity.description ); ```
mahoney1 (Mon, 31 Jul 2017 11:39:28 GMT):
@camdenT and the result was ``` Commodity Trading
#tradeCommodity
Value before is : mydescription
Value after is : Corn
``` (Also checked Playground for good measure) - hope this helps.
mahoney1 (Mon, 31 Jul 2017 11:42:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QKQiz6i2dxuqzMTaP) @UDeshmukh '-' or hyphen is now allowed in namespaces - cut and paste your model into a running Playground to validate the model, either locally or online -> https://composer-playground.mybluemix.net/editor
mahoney1 (Mon, 31 Jul 2017 11:42:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QKQiz6i2dxuqzMTaP) @UDeshmukh '-' or hyphen is not allowed in namespaces - cut and paste your model into a running Playground to validate the model, either locally or online -> https://composer-playground.mybluemix.net/editor
mahoney1 (Mon, 31 Jul 2017 11:56:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eyYqu4dHKkJDTneXh) @jarvis488 it deploys to the peers defined in your connection profile, yes. You (as an admin) are responsible for that. In the real world Peers in different organisations will have different admin users. Only someone from that peer's organisation (using their connection profiles), will be able to deploy a business network to their peers. Those other admins won't be able to deploy to peers 'in a different organisation'. Whoever does the first deploy of a business network (to their peer or peers as its configured etc) will also be the person who instantiates that business network.
ekivol (Mon, 31 Jul 2017 12:25:00 GMT):
@ScottMorris Thanks.
ekivol (Mon, 31 Jul 2017 12:26:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gzCwQx2QmCxNYRTbz) @jorisjh https://hyperledger.github.io/composer/jsdoc/module-composer-runtime.html
ekivol (Mon, 31 Jul 2017 12:28:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Nkv8kTYvLn7xnmXWZ) @ScottMorris Thanks
UDeshmukh (Mon, 31 Jul 2017 12:47:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6sjTsECQMzFhx7MHj) @mahoney1 I removed the hyphen from the network name in model file but the error seems to be resulting from package.json file. Pl. see below for error I got when I dropped the hyphen from the namespace
UDeshmukh (Mon, 31 Jul 2017 12:49:10 GMT):
Message Attachments
UDeshmukh (Mon, 31 Jul 2017 12:49:10 GMT):
Message Attachments
jaguarg (Mon, 31 Jul 2017 12:54:17 GMT):
Hi, we have build a successful projet with composer . Now I would like to take it to the next level. There are some grey areas for me. Is this the right channel to ask about those ?
mahoney1 (Mon, 31 Jul 2017 13:02:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=m4YAmzq8uwq75FvPr) @UDeshmukh that should be `Double` not `double` for quantity in your model file - recreate your archive when you've validated your model / business network.
mahoney1 (Mon, 31 Jul 2017 13:05:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5yQWqtqEzyg4WGnD3) @jaguarg glad to hear - yes, please post your questions here for Composer :-)
jaguarg (Mon, 31 Jul 2017 13:24:51 GMT):
Thank yo u @mahoney1 , Here is our initial list of questions.
jaguarg (Mon, 31 Jul 2017 13:24:51 GMT):
Thank you @mahoney1 , Here is our initial list of questions.
jaguarg (Mon, 31 Jul 2017 13:25:07 GMT):
1/ How can we manage peers (and their roles) within the business network ?
Say we need to add peers on the fly. What would be the process ?
2/ Seems that REST API does not support authentication. How can we specify the user invoking it ()
3/ When it comes Assets and transactions, is it possible to have rules that restrict access to specific properties ?
4/ We have been running composer out of the box. There 1 CA, 1 Peer, 1 Ordered, 1 Couch db, chain code containers.
What is the default consensus model ?
5/ Is there a practical use case of the CA ? The way it is used in conjunction with composer is obscure to me.
6/ Privacy use case. Say I have 3 nodes : A, B, C.
Transaction is a BUY order for a PRNO stock at 20$ for client Eric. I need this information to be available to node A and B. C should only be able to access Client Details and Stock Name - not the price.
How can we model that with composer.
jaguarg (Mon, 31 Jul 2017 13:25:07 GMT):
1/ How can we manage peers (and their roles) within the business network ?
Say we need to add peers on the fly. What would be the process ?
2/ Seems that REST API does not support authentication. How can we specify the user invoking it ?
3/ When it comes Assets and transactions, is it possible to have rules that restrict access to specific properties ?
4/ We have been running composer out of the box. There 1 CA, 1 Peer, 1 Ordered, 1 Couch db, chain code containers.
What is the default consensus model ?
5/ Is there a practical use case of the CA ? The way it is used in conjunction with composer is obscure to me.
6/ Privacy use case. Say I have 3 nodes : A, B, C.
Transaction is a BUY order for a PRNO stock at 20$ for client Eric. I need this information to be available to node A and B. C should only be able to access Client Details and Stock Name - not the price.
How can we model that with composer.
jaguarg (Mon, 31 Jul 2017 13:25:07 GMT):
1/ How can we manage peers (and their roles) within the business network ?
Say we need to add peers on the fly. What would be the process ?
2/ Seems that REST API does not support authentication. How can we specify the user invoking it ?
3/ When it comes Assets and transactions, is it possible to have rules that restrict access to specific properties ?
4/ We have been running composer out of the box. There is 1 CA, 1 Peer, 1 Ordered, 1 Couch db, chain code containers.
What is the default consensus model ?
5/ Is there a practical use case of the CA ? The way it is used in conjunction with composer is obscure to me.
6/ Privacy use case. Say I have 3 nodes : A, B, C.
Transaction is a BUY order for a PRNO stock at 20$ for client Eric. I need this information to be available to node A and B. C should only be able to access Client Details and Stock Name - not the price.
How can we model that with composer.
jaguarg (Mon, 31 Jul 2017 13:25:07 GMT):
1/ How can we manage peers (and their roles) within the business network ?
Say we need to add peers on the fly. What would be the process ?
2/ Seems that REST API does not support authentication. How can we specify the user invoking it ?
3/ When it comes Assets and transactions, is it possible to have rules that restrict access to specific properties ?
4/ We have been running composer out of the box. There is 1 CA, 1 Peer, 1 Orderer, 1 Couch db and chain code containers.
What is the default consensus model ? How can we specify others Peers
5/ Is there a practical use case of the CA ? The way it is used in conjunction with composer is obscure to me.
6/ Privacy use case. Say I have 3 nodes : A, B, C.
Transaction is a BUY order for a PRNO stock at 20$ for client Eric. I need this information to be available to node A and B. C should only be able to access Client Details and Stock Name - not the price.
How can we model that with composer.
UDeshmukh (Mon, 31 Jul 2017 13:33:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=L7DanZpk3nscxjtuC) @mahoney1 Thanks! I fixed it but it still results in the same error message as shown in my earlier screenshot .. :-(
mahoney1 (Mon, 31 Jul 2017 13:34:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gF8JodkesJrLkbXtH) @uber.twin and you say you're only running with the standard ACLs (from previous thread) ```rule SystemACL {
description: "System ACL to permit all access"
participant: "my.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}``` I can see a situation where (as an identity the subject of ACL rules) without a rule for your specific network eg. ```rule EverybodyCanReadEverything {
description: "Allow all participants read access to all resources"
participant: "my.mynetworkParticipant"
operation: READ
resource: "my.mynetwork.*"
action: ALLOW
}
``` you might get issues trying to read the ParticipantRegistry *for that network* (as opposed to system objects) to see if an identity is bound to a given Participant - you can check your ACL rules out in Playground (local or otherwise) and use the browser debug Console to see what error you get (just use the sample network there) - that might help in debugging your ACL rules. Otherwise send me (dmsg or otherwise your ACL rules)
mahoney1 (Mon, 31 Jul 2017 13:34:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gF8JodkesJrLkbXtH) @uber.twin and you say you're only running with the standard ACLs (from previous thread) `rule SystemACL {
description: "System ACL to permit all access"
participant: "my.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}` I can see a situation where (as an identity the subject of ACL rules) without a rule for your specific network eg. ```rule EverybodyCanReadEverything {
description: "Allow all participants read access to all resources"
participant: "my.mynetworkParticipant"
operation: READ
resource: "my.mynetwork.*"
action: ALLOW
}
``` you might get issues trying to read the ParticipantRegistry *for that network* (as opposed to system objects) to see if an identity is bound to a given Participant - you can check your ACL rules out in Playground (local or otherwise) and use the browser debug Console to see what error you get (just use the sample network there) - that might help in debugging your ACL rules. Otherwise send me (dmsg or otherwise your ACL rules)
mahoney1 (Mon, 31 Jul 2017 13:34:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gF8JodkesJrLkbXtH) @uber.twin and you say you're only running with the standard ACLs (from previous thread) ```rule SystemACL {
description: "System ACL to permit all access"
participant: "my.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}```
mahoney1 (Mon, 31 Jul 2017 13:37:45 GMT):
@uber.twin I can see a situation where (as an identity the subject of ACL rules) without a rule for your specific network eg. ```rule EverybodyCanReadEverything {
description: "Allow all participants read access to all resources"
participant: "my.mynetworkParticipant"
operation: READ
resource: "my.mynetwork.*"
action: ALLOW
}```
you might get issues trying to read the ParticipantRegistry *for that network* (as opposed to system objects) to see if an identity is bound to a given Participant - you can check your ACL rules out in Playground (local or otherwise) and use the browser debug Console to see what error you get (just use the sample network there) - that might help in debugging your ACL rules. Otherwise send me (dmsg or otherwise your ACL rules)
mahoney1 (Mon, 31 Jul 2017 13:42:00 GMT):
@SandeepKhore `Hi i want to know how can i deploy business network archive on ibm bluemix cloud. or is there any way to deploy it on aws cloud.` - yes - it deploys to a running (runtime) Fabric deployed 'somewhere' (such as AWS). You can see the Bluemix example here with clear explanation of the attributes, but the principles apply equally AWS and certs you would download from there -> https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
gitSrinidhi (Mon, 31 Jul 2017 14:00:26 GMT):
Hi,
my-network.bna failed.
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My very first Hyperledger Composer Network
✖ Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying to instantiate chaincode. *Error: Error starting container: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer*
/opt/go/pkg/tool/linux_amd64/link: running gcc failed: *fork/exec /usr/bin/gcc: cannot allocate memory*
Any clue ?
gitSrinidhi (Mon, 31 Jul 2017 14:00:26 GMT):
Hi,
my-network.bna deployment failed.
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My very first Hyperledger Composer Network
✖ Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying to instantiate chaincode. *Error: Error starting container: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer*
/opt/go/pkg/tool/linux_amd64/link: running gcc failed: *fork/exec /usr/bin/gcc: cannot allocate memory*
Any clue ?
gitSrinidhi (Mon, 31 Jul 2017 14:00:50 GMT):
fabric 1.0 is up and running
gitSrinidhi (Mon, 31 Jul 2017 14:03:31 GMT):
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d64e703abd66 *hyperledger/fabric-peer:x86_64-1.0.0* "peer node start -..." 9 minutes ago Up 9 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp *peer0.org1.example.com
26859d7c05c5 *hyperledger/fabric-ca:x86_64-1.0.0* "sh -c 'fabric-ca-..." 10 minutes ago Up 9 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
3575ddd02c1b *hyperledger/fabric-couchdb:x86_64-1.0.0* "tini -- /docker-e..." 10 minutes ago Up 9 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
1365dc6fc9bd *hyperledger/fabric-orderer:x86_64-1.0.0* "orderer" 10 minutes ago Up 10 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
ScottMorris (Mon, 31 Jul 2017 14:20:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ei4NHyP7NnYxZ6o45) Hi there, I'm still having an issue with the HTTP Basic authentication. I found the user model, it is part of password. But I'm not sure how the is wired up to the API.
ScottMorris (Mon, 31 Jul 2017 14:20:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ei4NHyP7NnYxZ6o45) Hi there, I'm still having an issue with the HTTP Basic authentication. I found the user model, it is part of password. But I'm not sure how the is wired up to the API. Maybe only OAuth works?
ScottMorris (Mon, 31 Jul 2017 14:20:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ei4NHyP7NnYxZ6o45) Hi there, I'm still having an issue with the HTTP Basic authentication. I found the user model, it is part of password. But I'm not sure how the is wired up to the API. Maybe only OAuth works?
The composer providers config I set up is
```
"http": {
"provider": "http",
"module": "passport-http",
"strategy": "BasicStrategy",
"clientID": "",
"clientSecret": "",
"authPath": "/auth/http/",
"callbackURL": "/auth/http/callback",
"successRedirect": "/",
"failureRedirect": "/",
"userModel": [{
"id": "AmyPM",
"username": "Amy",
"password": "CqqCUrrzNHXe",
"email": "amy@example.com",
"status": "Active"
}]
}
````
ScottMorris (Mon, 31 Jul 2017 14:20:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ei4NHyP7NnYxZ6o45) Hi there, I'm still having an issue with the HTTP Basic authentication. I found the user model, it is part of password. But I'm not sure how the is wired up to the API. Maybe only OAuth works?
The composer providers config I set up is
```
"http": {
"provider": "http",
"module": "passport-http",
"strategy": "BasicStrategy",
"clientID": "",
"clientSecret": "",
"authPath": "/auth/http/",
"callbackURL": "/auth/http/callback",
"successRedirect": "/",
"failureRedirect": "/",
"userModel": [{
"id": "AmyPM",
"username": "Amy",
"password": "CqqCUrrzNHXe",
"email": "amy@example.com",
"status": "Active"
}]
}
```
mahoney1 (Mon, 31 Jul 2017 14:47:58 GMT):
@gitSrinidhi yes - you don't have enough memory -> please ensure you have a minimum of 4Gb. And/or configured insufficient swap space judging by the error "running gcc failed: fork/exec /usr/bin/gcc: cannot allocate memory" - see the issue described here -> https://github.com/golang/go/issues/16082 and here https://github.com/kubernetes/kubernetes/issues/27614
gauthampamu (Mon, 31 Jul 2017 15:02:39 GMT):
@sstone1 How to implement or define the endorsement policy with Composer SDK. In Fabric you have to first install the chaincode on each peer and then instantiate the chaincode. Let say you are building a network with participants who are running the peers outside your firewall. The command line tool deploys the BNA file on the peers but is it possible for participant A deploys the bna file on his peers and participant B deploys the bba file on their peers.
kostas (Mon, 31 Jul 2017 16:36:05 GMT):
Is anyone here running business network archives on a Windows/Vagrant setup?
kostas (Mon, 31 Jul 2017 16:36:05 GMT):
Is anyone here creatingbusiness network archives on a Windows/Vagrant setup?
kostas (Mon, 31 Jul 2017 16:36:05 GMT):
Is anyone here creating business network archives on a Windows/Vagrant setup?
mahoney1 (Mon, 31 Jul 2017 16:36:12 GMT):
On Composer command line tool - it will deploy to a peer (where Composer runtime is deployed) and then committed to the World state once endorsed. committed etc. Whoever does the first deploy of a business network to their peer or peers will also be the identity that instantiated that business network - so OrgA's peers PeerA + PeerB (say) will ultimately have it deployed. OrgB's peers Peer A + B (in the same business network, and private blockchain network - but different Org, eg. allowing for Fabric configurables eg channel, endorsement policy, ACLs etc), will also have Composer Runtime deployed (as part of its setup) and then they will join the business network (replicated to their peers via the leading peer) through their connection profiles / setup - (ie its deployed once)
mahoney1 (Mon, 31 Jul 2017 16:36:12 GMT):
@gauthampamu On Composer command line tool - it will deploy to a peer (where Composer runtime is deployed) and then committed to the World state once endorsed. committed etc. Whoever does the first deploy of a business network to their peer or peers will also be the identity that instantiated that business network - so OrgA's peers PeerA + PeerB (say) will ultimately have it deployed. OrgB's peers Peer A + B (in the same business network, and private blockchain network - but different Org, eg. allowing for Fabric configurables eg channel, endorsement policy, ACLs etc), will also have Composer Runtime deployed (as part of its setup) and then they will join the business network (replicated to their peers via the leading peer) through their connection profiles / setup - (ie its deployed once)
UDeshmukh (Mon, 31 Jul 2017 16:43:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6z26LxDZWJn9csdHe) Hi appreciate if anyone can point to what maybe causing the issue. I'm uploading both sample.cto and my package.json files for your reference.
UDeshmukh (Mon, 31 Jul 2017 16:43:51 GMT):
Message Attachments
UDeshmukh (Mon, 31 Jul 2017 16:43:57 GMT):
Message Attachments
mahoney1 (Mon, 31 Jul 2017 16:45:14 GMT):
@ScottMorris - does this help ```(req, res, next) => {
if (req.accessToken) {
app.models.User.findById(req.accessToken.userId, (err, user) => {
if (!err) {
req.user = user;
}
});
}
next()
} ``` from https://github.com/strongloop/loopback-component-passport/issues/134
mahoney1 (Mon, 31 Jul 2017 16:45:14 GMT):
@ScottMorris - does this help ie findById .. ```(req, res, next) => {
if (req.accessToken) {
app.models.User.findById(req.accessToken.userId, (err, user) => {
if (!err) {
req.user = user;
}
});
}
next()
} ``` from https://github.com/strongloop/loopback-component-passport/issues/134
kostas (Mon, 31 Jul 2017 16:52:32 GMT):
I am walking through the [Developer Guide](https://hyperledger.github.io/composer/tutorials/developer-guide.html) and am unable to move past the "Generate the BNA" stage. Specifically, when I run "npm install", I get this output on the console: https://gist.github.com/kchristidis/12bf22295023bd28116d6f520dfea060 (npm-debug.log provided here: https://gist.github.com/kchristidis/15c6ef56f5e0e6f9e22204c22a750812)
kostas (Mon, 31 Jul 2017 16:53:22 GMT):
If you have any pointers, please let me know. (Using Vagrant on a Windows machine, and managed to complete all the previous steps, incl. installation Composer modules/binaries, etc. successfully.)
mahoney1 (Mon, 31 Jul 2017 16:53:52 GMT):
@UDeshmukh there's nothing wrong with your package.json or your model file. Just send the bna.
mahoney1 (Mon, 31 Jul 2017 16:58:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZGizGoC4ZZettTP2h) @kostas so Ubuntu 16.04 ? Should work (it does work on 16.04) . I can't vouch for how you've installed Composer (and the prereqs ?) but seems environmental. And `npm --unsafe-perm install ` is not in Dev tutorial guide - is this Cloud or local ?
UDeshmukh (Mon, 31 Jul 2017 16:59:33 GMT):
@mahoney1 it doesn't generate the bna file - as it ends up in error. Pl. see below screen from my latest run
UDeshmukh (Mon, 31 Jul 2017 17:00:01 GMT):
Message Attachments
mahoney1 (Mon, 31 Jul 2017 17:00:02 GMT):
ok paste the script file and anything else in your network def.
kostas (Mon, 31 Jul 2017 17:01:59 GMT):
@mahoney1: 16.04, yes. I used the "--unsafe-perm" flag as a last resort of sorts, based on some Googling. I am having the exact same issue whether I use that flag or not.
kostas (Mon, 31 Jul 2017 17:02:27 GMT):
I am following all instructions to the letter, with the addition of this step which will be added to the guide: https://chat.hyperledger.org/channel/composer?msg=M5sACTKvoAh95uZRd
UDeshmukh (Mon, 31 Jul 2017 17:03:44 GMT):
Message Attachments
DennisM330 (Mon, 31 Jul 2017 17:25:24 GMT):
I have a partNo Asset which has a relationship to a Supplier asset asset ComponentPart identified by partNo {
o String partNo
o String description
--> Supplier supplier
o Integer quantity
o Boolean defective
} When I create the PartNo asset using the Composer REST Server the supplier relationship is populated like this "supplier": "resource:net.biz.digitalpartsnetwork.Supplier#SUP1122334455" Is this to be expected or can I somehow only have SUP1122334455 populated? Always wondered about this but never asked?
FenglianXu (Mon, 31 Jul 2017 17:28:41 GMT):
Did you get any data returned?
FenglianXu (Mon, 31 Jul 2017 17:31:59 GMT):
At moment, you would have to pass the whole string: "resource:net.biz.digitalpartsnetwork.Supplier#SUP1122334455" to get the data back
mahoney1 (Mon, 31 Jul 2017 17:34:37 GMT):
@UDeshmukh it breaks because your code uses events, your model doesn't have any events modeled. Your use of 'asset' in Sample.js is trying to set values using inaccessible methods. Suggest you just use snippet below (to set ownership of commodity from one to other) bye for now ```
function tradeCommodity(tx) {
trade.commodity.owner = trade.newOwner;
return getAssetRegistry('org.acme.udci.Commodity')
.then(function (assetRegistry) {
return assetRegistry.update(trade.commodity);
});
}```
suvpatil (Mon, 31 Jul 2017 17:36:27 GMT):
HI all......how can we manage peers or add peers in the network?
mahoney1 (Mon, 31 Jul 2017 17:46:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TegQ555WwYN5YoJfY) @suvpatil please check Rocketchat history or else check out Fabric docs http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html as it provides a helper script
uber.twin (Mon, 31 Jul 2017 17:47:27 GMT):
@mahoney1 it seems my ACL error i.e.
```
Error: Error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The runtime API is not available)
at channel.queryByChaincode.then.catch (/home/pg/workspace/composer-sample-applications/packages/my-network/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:779:34)
Error: Error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The runtime API is not available)
```
doesn't appear if I remove all my chaincode and keep only the model. I can inset data and list it.
So how could the chaincode cause this error if it's no invoked. Could version 0.10 make some additional checking, because I believe it used to work fine till the update.
uber.twin (Mon, 31 Jul 2017 17:47:27 GMT):
@mahoney1 it seems my ACL error i.e.
```
Error: Error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The runtime API is not available)
at channel.queryByChaincode.then.catch (/home/pg/workspace/composer-sample-applications/packages/my-network/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:779:34)
Error: Error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The runtime API is not available)
```
doesn't appear if I remove all my chaincode and keep only the model and the rules. I can inset data and list it.
So how could the chaincode cause this error if it's no invoked. Could version 0.10 make some additional checking, because I believe it used to work fine till the update.
DennisM330 (Mon, 31 Jul 2017 17:52:46 GMT):
@FenglianXu thanks, yes that is why I asked. For a query you have to pass fully qualified relationship string
mahoney1 (Mon, 31 Jul 2017 17:54:47 GMT):
@uber.twin to understand the behaviour: if no permissions.acl is present - ie if this file is missing from the business network definition (and deployed) then all access is permitted.. If permissions.acl is present (it is because you added system rules), then the rules are evaluated in order, and the first rule whose condition matches, determines whether access is granted or denied. If no rule matches, then access is denied (you have no rules for your biz network at that point). You need to grant access to your biz network objects as mentioned. See 'Access Control Rule Grammar' section onwards.
mahoney1 (Mon, 31 Jul 2017 17:57:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DBJ9nRcPrZKKeN5kD) @DennisM330 indeed, and for the /POST part asset creation - with the FQ supplier as you indicated above.
uber.twin (Mon, 31 Jul 2017 17:59:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YHG46Ag5CAQvN4hYB) @mahoney1 yes, I do have the permissions.acl and the data model. A this point I can use a client app to insert data and I can query it. But when I add the chaincode, I can't even connect.
uber.twin (Mon, 31 Jul 2017 17:59:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YHG46Ag5CAQvN4hYB) @mahoney1 yes, I do have the permissions.acl and the data model. A this point I can use a client app to insert data and I can query it. But when I add the chaincode, I can't even connect. I do not explicity invoke the chaincode and I do not submit any transaction types
mahoney1 (Mon, 31 Jul 2017 18:02:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KtSSJzDKJf7ZySnMS) @uber.twin ok.....have you tried testing your rules with test data in Playground?
mahoney1 (Mon, 31 Jul 2017 18:03:11 GMT):
(taking out the need for a deployed network, ie just working with rules and data )
uber.twin (Mon, 31 Jul 2017 18:04:24 GMT):
@mahoney1 didn't touch the playground, I thought it better to have my own environment
uber.twin (Mon, 31 Jul 2017 18:04:24 GMT):
@mahoney1 didn't touch the playground, I thought is better to have my own environment
mahoney1 (Mon, 31 Jul 2017 18:04:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6XY6pqwfBe2wQX7CT) @uber.twin sure I understand...you can install Playground locally too...
mahoney1 (Mon, 31 Jul 2017 18:05:27 GMT):
https://hyperledger.github.io/composer/installing/using-playground-locally.html it might help
uber.twin (Mon, 31 Jul 2017 18:08:18 GMT):
@mahoney1 is there a debug flag making composer display the rule evaluation process and possibly the actual cause for the negative evaluation result?
davidkel (Mon, 31 Jul 2017 18:12:50 GMT):
@uber.twin Do your ACL's have conditions defined ?
UDeshmukh (Mon, 31 Jul 2017 18:15:07 GMT):
Message Attachments
uber.twin (Mon, 31 Jul 2017 18:15:36 GMT):
@davidkel no conditions at all
UDeshmukh (Mon, 31 Jul 2017 18:16:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tAkxxCd9rNfWsazDe) @mahoney1 I dropped the event form the Script as you suggested and reran - but it still errors out. can you take q uick look at the debug log attached ? Thanks
UDeshmukh (Mon, 31 Jul 2017 18:16:32 GMT):
Message Attachments
uber.twin (Mon, 31 Jul 2017 18:20:32 GMT):
@davidkel is it reasonable that they pass when I deploy my network with not chaincode at all and they fail when I pack the chaincode too?
davidkel (Mon, 31 Jul 2017 18:26:38 GMT):
@uber.twin Reason I ask about conditions is that if they are calling some defined function in your javascript code and they were making calls to certain apis such as GetAssetRegistry, then you would get the error you are seeing. And by taking out the chaincode for some reason the acl works because now it isn't invoking that code. Which would be a bug because if the ACL cannot validate properly it should fail the validation.
uber.twin (Mon, 31 Jul 2017 18:40:45 GMT):
@davidkel this is my dev peer log ```2017-07-31T18:35:42.338926708Z [31m2017-07-31 18:35:42.338 UTC [Composer] Error -> ERRO 4c15[0m @JS : AccessController :check() Error: The runtime API is not available
2017-07-31T18:35:42.339895466Z [31m2017-07-31 18:35:42.339 UTC [Composer] Error -> ERRO 4c16[0m @JS : Engine :invoke() Caught error, rethrowing [object Object]
2017-07-31T18:35:42.339904386Z [36m2017-07-31 18:35:42.339 UTC [Composer] Debug -> DEBU 4c17[0m Entering Context.getDataService &{0xc42025e4e0}
2017-07-31T18:35:42.339908610Z [36m2017-07-31 18:35:42.339 UTC [Composer] Debug -> DEBU 4c18[0m Exiting Context.getDataService 1
2017-07-31T18:35:42.339990404Z [36m2017-07-31 18:35:42.339 UTC [Composer] Debug -> DEBU 4c19[0m Entering Context.getEventService &{0xc42025e4e0}
2017-07-31T18:35:42.339995975Z [36m2017-07-31 18:35:42.339 UTC [Composer] Debug -> DEBU 4c1a[0m Exiting Context.getEventService 1
2017-07-31T18:35:42.340000006Z [36m2017-07-31 18:35:42.339 UTC [Composer] Debug -> DEBU 4c1b[0m Entering Context.getIdentityService &{0xc42025e4e0}
2017-07-31T18:35:42.340004166Z [36m2017-07-31 18:35:42.339 UTC [Composer] Debug -> DEBU 4c1c[0m Exiting Context.getIdentityService 1
2017-07-31T18:35:42.340009314Z [36m2017-07-31 18:35:42.339 UTC [Composer] Debug -> DEBU 4c1d[0m Entering Context.getHTTPService &{0xc42025e4e0}
2017-07-31T18:35:42.340087194Z [36m2017-07-31 18:35:42.339 UTC [Composer] Debug -> DEBU 4c1e[0m Exiting Context.getHTTPService 1
2017-07-31T18:35:42.340979594Z [36m2017-07-31 18:35:42.340 UTC [Composer] Debug -> DEBU 4c1f[0m Entering Context.getDataService &{0xc42025e4e0}
2017-07-31T18:35:42.340987209Z [36m2017-07-31 18:35:42.340 UTC [Composer] Debug -> DEBU 4c20[0m Exiting Context.getDataService 1
2017-07-31T18:35:42.340998277Z [36m2017-07-31 18:35:42.340 UTC [Composer] Debug -> DEBU 4c21[0m Entering Context.getEventService &{0xc42025e4e0}
2017-07-31T18:35:42.341002767Z [36m2017-07-31 18:35:42.340 UTC [Composer] Debug -> DEBU 4c22[0m Exiting Context.getEventService 1
2017-07-31T18:35:42.341008309Z [36m2017-07-31 18:35:42.340 UTC [Composer] Debug -> DEBU 4c23[0m Entering Context.getIdentityService &{0xc42025e4e0}
2017-07-31T18:35:42.341012449Z [36m2017-07-31 18:35:42.340 UTC [Composer] Debug -> DEBU 4c24[0m Exiting Context.getIdentityService 1
2017-07-31T18:35:42.341098271Z [36m2017-07-31 18:35:42.341 UTC [Composer] Debug -> DEBU 4c25[0m Entering Context.getHTTPService &{0xc42025e4e0}
2017-07-31T18:35:42.341103481Z [36m2017-07-31 18:35:42.341 UTC [Composer] Debug -> DEBU 4c26[0m Exiting Context.getHTTPService 1
2017-07-31T18:35:42.342164985Z [36m2017-07-31 18:35:42.342 UTC [Composer] Debug -> DEBU 4c27[0m Entering Engine.handleCallback 0xc4213729c0 &{0xc42025e4e0}
2017-07-31T18:35:42.342178231Z [36m2017-07-31 18:35:42.342 UTC [Composer] Debug -> DEBU 4c28[0m Exiting Engine.handleCallback 0
2017-07-31T18:35:42.342290195Z [36m2017-07-31 18:35:42.342 UTC [Composer] Debug -> DEBU 4c29[0m Exiting Composer.Invoke Error: The runtime API is not available
2017-07-31T18:35:42.342297525Z [36m2017-07-31 18:35:42.342 UTC [Composer] Debug -> DEBU 4c2a[0m Entering ComposerPool.Put &{0xc42002e020 0xc42025c760 0xc42002e030}
2017-07-31T18:35:42.342301843Z [36m2017-07-31 18:35:42.342 UTC [Composer] Debug -> DEBU 4c2b[0m Exiting ComposerPool.Put true
2017-07-31T18:35:42.342383409Z [36m2017-07-31 18:35:42.342 UTC [Composer] Debug -> DEBU 4c2c[0m Exiting Chaincode.Invoke 500 Error: The runtime API is not available
2017-07-31T18:35:42.344231535Z Error: Unhandled promise rejection {}
2017-07-31T18:35:42.344244429Z at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
2017-07-31T18:35:42.344248388Z at error () native strict preventsyield
2017-07-31T18:35:42.344251844Z at [anon] (eval:2) strict
2017-07-31T18:35:42.344255147Z at [anon] (eval:2) strict
2017-07-31T18:35:42.344258455Z at [anon] (eval:2) strict
2017-07-31T18:35:42.344261677Z at [anon] (eval:1)
2017-07-31T18:35:42.344264813Z at [anon] (eval:1)
2017-07-31T18:35:42.344268031Z at [anon] (eval:1) preventsyield
2017-07-31T18:35:42.344271339Z at call () native strict preventsyield
2017-07-31T18:35:42.344274618Z at [anon] (eval:1) preventsyield```
uber.twin (Mon, 31 Jul 2017 18:41:53 GMT):
should I remove my chaincode 'use strict' directive?
davidkel (Mon, 31 Jul 2017 18:42:14 GMT):
@UDeshmukh what error do you get if you just try executing the command `mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/udci-network.bna` yourself ?
davidkel (Mon, 31 Jul 2017 18:43:17 GMT):
@uber.twin it won't have any effect to do that
uber.twin (Mon, 31 Jul 2017 18:45:42 GMT):
is this a duktape crash?
davidkel (Mon, 31 Jul 2017 18:48:23 GMT):
@uber.twin no it isn't, but it is something that needs more investigation but won't have any bearing on the problem you have. I think the only way forward is for you to create an issue attaching a recreatable test case. Somehow during an ACL check, some of your javascript code is being executed and is trying to use api calls which are not permitted during acl checks
uber.twin (Mon, 31 Jul 2017 18:50:32 GMT):
I did try to implement an Enum type and I guess that gets executed as the chaincode is loaded
davidkel (Mon, 31 Jul 2017 18:55:20 GMT):
@uber.twin Could you give an example of what you tried to do there ?
davidkel (Mon, 31 Jul 2017 18:55:20 GMT):
@uber.twin Could you give an example of what you tried to do there ? And is that something you reference in your ACL ?
uber.twin (Mon, 31 Jul 2017 19:01:54 GMT):
nothing at all in the ACL
uber.twin (Mon, 31 Jul 2017 19:02:13 GMT):
i just jave this enum type defined in my chaincode
uber.twin (Mon, 31 Jul 2017 19:02:13 GMT):
i just have this enum type defined in my chaincode
uber.twin (Mon, 31 Jul 2017 19:02:26 GMT):
```function EnumType(name) {
this.name = name;
this.index = this.getGlobalCounter();
this.addName(name);
console.log('### instantiating '+ this.getType() + '.' + name + '/' + this.index);
}
EnumType.prototype = {
constructor: EnumType,
getInstanceName: function(instanceIndex) {
return this.typeGlobal.domain[instanceIndex];
},
addName: function (name) {
this.typeGlobal.domain.push(name);
this.typeGlobal.counter++;
},
getGlobalCounter: function() {
return this.typeGlobal.counter;
},
getInstance: function(name) {
return this[name];
},
equals: function(enumInstance) {
return this.name == enumInstance.name;
},
equalsName: function(enumName) {
return this.name == enumName;
},
toString: function() {
return this.name;
},
listDomain: function() {
for (var i = 0; i< this.typeGlobal.domain.length; i++) {
console.log(this.typeGlobal.domain[i]);
}
},
getType: function() {
var funcNameRegex = /function (.{1,})\(/;
var results = (funcNameRegex).exec((this).constructor.toString());
return (results && results.length > 1) ? results[1] : "";
}
}
function EnumA(name) {
EnumType.call(this, name);
}
EnumA.prototype = Object.create(EnumType.prototype);
EnumA.prototype.typeGlobal = {counter:0, domain:[]};
EnumA.prototype.constructor = EnumA;
EnumA.FAMT = new EnumA("EnumA01");
EnumA.UNIT = new EnumA("EnumA02");
function EnumB(name) {
EnumType.call(this, name);
}
EnumB.prototype = Object.create(EnumType.prototype);
EnumB.prototype.typeGlobal = {counter:0, domain:[]};
EnumB.prototype.constructor = EnumB;
EnumB.DBIT = new EnumB("EnumB01");
EnumB.CRDT = new EnumB("EnumB02");```
uber.twin (Mon, 31 Jul 2017 19:04:48 GMT):
chaincode is more than this but it is not invoked
davidkel (Mon, 31 Jul 2017 19:09:39 GMT):
@uber.twin I can't see it invoking any of the Runtime API commands
```
'getFactory',
'getSerializer',
'getAssetRegistry',
'getParticipantRegistry',
'getCurrentParticipant',
'post',
'emit',
'buildQuery',
'query'
```
davidkel (Mon, 31 Jul 2017 19:12:10 GMT):
And I am not sure it would get invoked. I would have to check but I'm pretty sure we only register functions and invoke functions based on transaction submission or ACL rule invocation
uber.twin (Mon, 31 Jul 2017 19:14:29 GMT):
yes, it's fine when I deploy it alone
CT123 (Mon, 31 Jul 2017 19:20:32 GMT):
Quick Q -- just (re)installed composer-playground following developer tools tutorial, etc. Receive the following errors -- can someone assist?
npm list -g --depth=0
/usr/local/lib
├── composer-cli@0.7.4
├── composer-playground@0.10.1
├── composer-rest-server@0.10.1
├── generator-hyperledger-composer@0.8.0
├── generator-jquery@1.2.3
├── mocha@3.4.2
├── npm@3.10.10
└── yo@2.0.0
npm ERR! peer dep missing: @angular/core@^2.3.1 || ^4.0.0, required by @ng-bootstrap/ng-bootstrap@1.0.0-alpha.24
npm ERR! peer dep missing: @angular/common@^2.3.1 || ^4.0.0, required by @ng-bootstrap/ng-bootstrap@1.0.0-alpha.24
npm ERR! peer dep missing: @angular/forms@^2.3.1 || ^4.0.0, required by @ng-bootstrap/ng-bootstrap@1.0.0-alpha.24
UDeshmukh (Mon, 31 Jul 2017 19:30:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Gm7rWXSgRWjs5GtS6) @davidkel It errors out with message - No command found as below
UDeshmukh (Mon, 31 Jul 2017 19:30:44 GMT):
Message Attachments
uber.twin (Mon, 31 Jul 2017 19:32:39 GMT):
@davidkel it looks like this is causing it ```function MyConstructor() {
}
MyConstructor.prototype = {
constructor: MyConstructor,
factory: getFactory(),
}```
uber.twin (Mon, 31 Jul 2017 19:35:58 GMT):
@davidkel can't call "getFactory()" when initializing a prototype
uber.twin (Mon, 31 Jul 2017 19:35:58 GMT):
@davidkel can't call "getFactory()" when initializing a prototype. It doesn't care though, when I connect with an admin identity
uber.twin (Mon, 31 Jul 2017 19:35:58 GMT):
@davidkel can't call "getFactory()" when initializing a prototype. It doesn't care though, when I connect with an admin identity and I believe it used to work for regular identities too, prior to 0.10
UDeshmukh (Mon, 31 Jul 2017 19:36:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4S5i3KDvxKLST73fG) @so I tried just composer create .... but it errors out as below
UDeshmukh (Mon, 31 Jul 2017 19:36:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LTRPqq862DuN6JXx3) @davidkel
MkDirP was missing on my Ubuntu VM - so I went ahead & installed it as mentioned in the note below:
https://www.npmjs.com/package/mkdirp
So this isn't a issue anymore - and as I mentioned in another post earlier, I tried:
composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna
But this gave a error message:
TypeNotFoundException: Type trade is not defined in namespace org.acme.udci ....
To me it appears misleading, considering the transaction type trade is there in the model file.
You may want to check out the error message screens I uploaded for reference
UDeshmukh (Mon, 31 Jul 2017 19:36:18 GMT):
Message Attachments
UDeshmukh (Mon, 31 Jul 2017 20:02:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=teDSs8NojFgH85EmF) @UDeshmukh TypeNotFoundException: Type trade is not defined in namespace org.acme.udci .... appears misleading, considering the transaction type trade is there in the model file.. ???
UDeshmukh (Mon, 31 Jul 2017 20:02:52 GMT):
Message Attachments
ScottMorris (Mon, 31 Jul 2017 20:22:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=B65ysBWkDMZcHFE3x) @mahoney1 Not really, as I'm not sure where the user information is stored that it validates against. I've moved on to using the _passport-google-oauth_ passport provider. I have it successfully get the authenication working, it is very similar to the _GitHub_ example here: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html However, after I set up the identity with my wallet and try to call the `GET /system/ping` call I get the following error.
```
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "No enrollment ID or enrollment secret has been provided",
"stack": <% omitted for length %>
}
}
```
I can see my participant there, part of my wallet and is set as default, I've also made sure my `permissions.acl` contains access to `org.hyperledger.composer.system.**`. Any help would be greatly appeciated.
ScottMorris (Mon, 31 Jul 2017 20:22:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=B65ysBWkDMZcHFE3x) @mahoney1 Not really, as I'm not sure where the user information is stored that it validates against. I've moved on to using the _passport-google-oauth_ passport provider. I have it successfully get the authenication working, it is very similar to the _GitHub_ example here: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html However, after I set up the identity with my wallet and try to call the `GET /system/ping` call I get the following error.
```
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "No enrollment ID or enrollment secret has been provided",
"stack": <% omitted for length %>
}
}
```
I can see my participant there, part of my wallet and is set as default, I've also made sure my `permissions.acl` contains access to `org.hyperledger.composer.system.**`. Any help would be greatly appeciated.
ScottMorris (Mon, 31 Jul 2017 20:22:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=B65ysBWkDMZcHFE3x) @mahoney1 Not really, as I'm not sure where the user information is stored that it validates against. I've moved on to using the _passport-google-oauth_ passport provider. I have it successfully get the authenication working, it is very similar to the _GitHub_ example here: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html However, after I set up the identity with my wallet and try to call the `GET /system/ping` call I get the following error.
```
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: Error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The current identity has not been registered)",
"stack": <% omitted for length %>
}
}
```
I can see my participant there, part of my wallet and is set as default, I've also made sure my `permissions.acl` contains access to `org.hyperledger.composer.system.**`. Any help would be greatly appreciated.
ScottMorris (Mon, 31 Jul 2017 20:22:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=B65ysBWkDMZcHFE3x) @mahoney1 Not really, as I'm not sure where the user information is stored that it validates against. I've moved on to using the _passport-google-oauth_ passport provider. I have it successfully get the authentication working, it is very similar to the _GitHub_ example here: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
CT123 (Mon, 31 Jul 2017 20:46:27 GMT):
So, referencing back on all the documentation -- I can't find a single instance anywhere where @angular is required as a prerequisite for composer-playground -- can someone assist? [ ](https://chat.hyperledger.org/channel/composer?msg=eEWe6SXDamcrAjHrL) @CT123
ScottMorris (Mon, 31 Jul 2017 21:38:47 GMT):
I have setup the REST client following the web instructions but using _passport-google_ instead of _passport-github_. THis seems to be working ok until I try and make a REST call. When I try to call `GET system/ping` I get the following error. `Error trying to ping. Error: Error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The current identity has not been registered)`
When I make the same call using the CLI i get the same error.
```
fvadmin@ubuntu-hyperledger2:~$ composer network ping -p hlfv1 -n mynetwork-i Amy -s CqqCUerzNHXe
Error: Error trying to ping. Error: Error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The current identity has not been registered)
Command failed
```
It seems the error is coming from Fabric? When I query the identity and participant they are both there.
davidkel (Mon, 31 Jul 2017 22:17:17 GMT):
@UDeshmukh looks like `mkdirp` is a typo. It should read `mkdir`
davidkel (Mon, 31 Jul 2017 22:39:24 GMT):
@ScottMorris The error comes from the composer runtime and I've only seen this error if the user doesn't have read access to the identity registry (through ACLs), but in that case it should have given a different error.
davidkel (Mon, 31 Jul 2017 22:39:24 GMT):
@ScottMorris The error comes from the composer runtime and I've only seen this error if the user doesn't have read access to the identity registry (through ACLs), but in that case it should have given a different error as that error would only occur if there was some sort of mismatch of component versions for composer.
davidkel (Mon, 31 Jul 2017 22:48:15 GMT):
@uber.twin It's likely that the release 0.9.1 caused the problems for you when support for functions defined in you JS code could be called from ACLs was added.
davidkel (Mon, 31 Jul 2017 22:48:15 GMT):
@uber.twin It's likely that the release 0.9.1 caused the problems for you when support for functions defined in you JS code could be called from ACLs was added. I will raise an issue to at least discuss how to deal with this limitation. It may just result in this being documented as a limitation though.
davidkel (Mon, 31 Jul 2017 22:48:15 GMT):
@uber.twin It's likely that the release 0.9.1 caused the problems for you when support for functions defined in you JS code could be called from ACLs was added. I will raise an issue to at least discuss how to deal with this limitation. It may just result in this being documented as a limitation though. At least the cause has now been identified and this definitely useful to know so thanks for the information
UDeshmukh (Mon, 31 Jul 2017 23:10:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LTRPqq862DuN6JXx3) @davidkel
MkDirP was missing on my Ubuntu VM - so I went ahead & installed it as mentioned in the note below:
https://www.npmjs.com/package/mkdirp
So this isn't a issue anymore - and as I mentioned in another post earlier, I tried:
composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna
But this gave a error message:
TypeNotFoundException: Type trade is not defined in namespace org.acme.udci ....
To me it appears misleading, considering the transaction type trade is there in the model file.
You may want to check out the error message screens I uploaded for reference
KevinBai (Tue, 01 Aug 2017 03:05:07 GMT):
@here Hi All, Can I use the "crypto" in the composer?
arnabsutar (Tue, 01 Aug 2017 03:06:32 GMT):
hi.. is there any way we can get all the object property for a reference. for reference we get : "resource:package.participant#ID" but we want the total object for reference. Is it possible using serializer?
camdenT (Tue, 01 Aug 2017 03:09:13 GMT):
Message Attachments
camdenT (Tue, 01 Aug 2017 03:10:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=crcM9CTCjQ4Aq9KJM) @mahoney1 Thanks for looking into that for me! I did some more testing on the subject and I've come to realize that while default values work for both Strings and Integers, I can't get them to work for Doubles. Instead of getting the defaulted Double value, an NaN value is assigned. Attached below is a screenshot from my unit test
camdenT (Tue, 01 Aug 2017 03:10:29 GMT):
Message Attachments
camdenT (Tue, 01 Aug 2017 03:12:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xi5wdR9qiywgXLent) @mahoney1 Thanks for looking into that for me! I did some more testing on the subject and I've come to realize that while default values work for both Strings and Integers, I can't get them to work for Doubles. Instead of getting the defaulted Double value, an NaN value is assigned. Attached below is a screenshot from my unit test
camdenT (Tue, 01 Aug 2017 03:12:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xi5wdR9qiywgXLent) @mahoney1 Thanks for looking into that for me! I did some more testing on the subject and I've come to realize that while default values work for both Strings and Integers, I can't get them to work for Doubles. Instead of getting the defaulted Double value, an NaN value is assigned. Attached below is a screenshot from my unit test. It corresponds to the following statement in my model "o Double targetPoints default = 10.5"
camdenT (Tue, 01 Aug 2017 03:12:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xi5wdR9qiywgXLent) @mahoney1 Thanks for looking into that for me! I did some more testing on the subject and I've come to realize that while default values work for both Strings and Integers, I can't get them to work for Doubles. Instead of getting the defaulted Double value, an NaN value is assigned. Attached below is a screenshot from my unit test. It corresponds to the following statement in my model: "o Double targetPoints default = 10.5"
camdenT (Tue, 01 Aug 2017 03:12:25 GMT):
Message Attachments
camdenT (Tue, 01 Aug 2017 03:14:07 GMT):
@mahoney1 Also, when used in the playground, it causes a "Generated Invalid JSON" error
camdenT (Tue, 01 Aug 2017 03:14:07 GMT):
@mahoney1 Also, when used in the playground, Doubles with default values cause a "Generated Invalid JSON" error
camdenT (Tue, 01 Aug 2017 03:14:07 GMT):
@mahoney1 Also, when used in the playground, Doubles with default values cause a "Generated Invalid JSON" error (Not the case with default Strings and Integers)
arnabsutar (Tue, 01 Aug 2017 03:46:23 GMT):
how to know who has invoke a transaction in composer?
arnabsutar (Tue, 01 Aug 2017 03:58:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wnPuBStsgLEzobYxi) @arnabsutar got the answer : var currentParticipant = getCurrentParticipant();
jarvis488 (Tue, 01 Aug 2017 05:02:54 GMT):
i want to deploy my bna on bluemix is it possible
prmdmshra (Tue, 01 Aug 2017 05:55:40 GMT):
Hi, I am getting the following error on executing 'yo hyperledger-composer'. Please advice the component I need to upgrade.
events.js:160
throw er; // Unhandled 'error' event
^
Error: error trying to ping. Error: Deployed chain-code (0.10.0) is incompatible with client (0.9.0)
at queryChainCode.then.catch (/usr/lib/node_modules/generator-hyperledger-composer/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:666:34)
camdenT (Tue, 01 Aug 2017 06:22:05 GMT):
@prmdmshra try using the following two commands:
first, run "npm uninstall -g generator-hyperledger-composer"
Once that is finished, run "npm install -g generator-hyperledger-composer"
camdenT (Tue, 01 Aug 2017 06:22:05 GMT):
@prmdmshra try using the following two commands:
first, run "npm uninstall -g generator-hyperledger-composer"
Once that is finished, run "npm install -g generator-hyperledger-composer"
The "Updating Hyperledger Composer" page of the documentation currently contains some incorrect instructions, but I believe someone is working to fix that soon.
camdenT (Tue, 01 Aug 2017 06:22:12 GMT):
let me know if that fixes it
camdenT (Tue, 01 Aug 2017 06:28:20 GMT):
The "Updating Hyperledger Composer" page of the documentation currently contains some incorrect instructions, but I believe someone is working to fix that soon.
ArunKaitha (Tue, 01 Aug 2017 06:43:48 GMT):
Has joined the channel.
ArunKaitha (Tue, 01 Aug 2017 06:43:58 GMT):
i am using fabric composer locally but whenever i restart data is being lost
is there anyway to save the bna file
instead of export and import evrytime
ArunKaitha (Tue, 01 Aug 2017 07:01:03 GMT):
anyone any suugestions plz
prmdmshra (Tue, 01 Aug 2017 07:02:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YYvkMczNSybFvx3XQ) @camdenT
I am still getting the same error on running the uninstalling and reinstalling generator-hyperledger-composer.
/home/pwc/.nvm/versions/node/v6.11.1/lib
`-- generator-hyperledger-composer@0.10.1
+-- composer-client@0.10.1
| +-- composer-connector-hlf@0.10.1
| | +-- composer-runtime-hlf@0.10.1
events.js:160
throw er; // Unhandled 'error' event
^
Error: error trying to ping. Error: Deployed chain-code (0.10.0) is incompatible with client (0.9.0)
at queryChainCode.then.catch (/usr/lib/node_modules/generator-hyperledger-composer/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:666:34)
davidkel (Tue, 01 Aug 2017 07:16:49 GMT):
@uber.twin I have raised https://github.com/hyperledger/composer/issues/1716 Many thanks for the time spent on investigation to understand your problem
uber.twin (Tue, 01 Aug 2017 07:24:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TF3LHwqCwv3Yge2vx) @davidkel no problem, I'm nowhere close to compensate for you patience:)
even only for design considerations, runtime resources should probably not be initialized by object constructors and prototypes anyway, but the "init" functions should be used instead
camdenT (Tue, 01 Aug 2017 08:14:34 GMT):
@prmdmshra I'm not entirely sure what the issue is then, sorry. Maybe someone else knows the answer?
prmdmshra (Tue, 01 Aug 2017 08:40:50 GMT):
I am still getting the same error on running the uninstalling and reinstalling generator-hyperledger-composer.
/home/pwc/.nvm/versions/node/v6.11.1/lib
`-- generator-hyperledger-composer@0.10.1
+-- composer-client@0.10.1
| +-- composer-connector-hlf@0.10.1
| | +-- composer-runtime-hlf@0.10.1
events.js:160
throw er; // Unhandled 'error' event
^
Error: error trying to ping. Error: Deployed chain-code (0.10.0) is incompatible with client (0.9.0)
at queryChainCode.then.catch (/usr/lib/node_modules/generator-hyperledger-composer/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:666:34)
salmanprk (Tue, 01 Aug 2017 09:06:45 GMT):
Has joined the channel.
prmdmshra (Tue, 01 Aug 2017 09:11:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wKLLmHxtuzEJGZvAk)
I am unable to generate skeleton angular application. Could someone please help me on it :-(
mahoney1 (Tue, 01 Aug 2017 10:02:40 GMT):
@CT123 Local playground install has dependencies on Angular yes. Check out package.json for that list of angular dependencies. Doesn't look like your playground installed correctly, if its showing missing dependencies (@angular/core etc) Suggest to `npm uninstall -g composer-playground` and use the one-liner (installs playground in a docker container) from here `curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash` ... On generator (in your 'depth' list) I would do an `npm uninstall -g generator-hyperledger-composer (its out of date) then re-install using `npm install -g generator-hyperledger-composer`.
mahoney1 (Tue, 01 Aug 2017 10:05:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YYvkMczNSybFvx3XQ) @camdenT thanks for pointing this out - and raising the GH issue.
Hellstellar (Tue, 01 Aug 2017 10:27:51 GMT):
Has joined the channel.
Hellstellar (Tue, 01 Aug 2017 10:28:47 GMT):
What is the channel characteristic when creating a connection profile
mahoney1 (Tue, 01 Aug 2017 10:41:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pazPhxqHm83wayQLE) @jarvis488 yes - see this S/Overflow answer - read from 'Here's the connection profile' section and bluemix config info is defined in your connection profile (connection.json) ie from where you will launch your `composer network deploy`
mahoney1 (Tue, 01 Aug 2017 10:41:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pazPhxqHm83wayQLE) @jarvis488 yes - see this S/Overflow answer https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service - read from 'Here's the connection profile' section and bluemix config info is defined in your connection profile (connection.json) ie from where you will launch your `composer network deploy`
mahoney1 (Tue, 01 Aug 2017 10:44:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hNJdu2J2ZZ95LqCjN) @Hellstellar it relates to the channel defined over which member peers communicate and for which there is a unique channel-specific ledger. http://hyperledger-fabric.readthedocs.io/en/latest/glossary.html#channel
UDeshmukh (Tue, 01 Aug 2017 10:56:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hsN58z4tJpLrhftNc) Appreciate any help to troubleshoot this issue, Thanks!
mahoney1 (Tue, 01 Aug 2017 10:56:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sBbXYMDoZbbEi46WK) @prmdmshra can you do an `npm list -g --depth=0` please - not sure yet why you're getting a v0.9.0 incompatibilty issue
Sven_Moeller (Tue, 01 Aug 2017 11:23:14 GMT):
Has joined the channel.
baoyangc (Tue, 01 Aug 2017 11:24:35 GMT):
lots such error :```Error: Error trying to query chaincode. Error: chaincode error (status: 500, message: RangeError: valstack limit)}```
mahoney1 (Tue, 01 Aug 2017 11:28:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Bv6tTzyvc2biJt2Lm) @UDeshmukh hi - I resent you your correct BNA file with explanations of why it wouldn't build previously, cheers
mahoney1 (Tue, 01 Aug 2017 11:42:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CmCpxMmuia9BKgJv6) @arnabsutar yes. Use `.get()` . See example at L90 - you set up the promise and then pass the identifier https://github.com/hyperledger/composer-sample-networks/blob/master/packages/digitalproperty-network/test/DigitalLandTitle.js
mahoney1 (Tue, 01 Aug 2017 11:42:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CmCpxMmuia9BKgJv6) @arnabsutar yes. Use `.get()` . See example at L90 - you set up the promise and then pass the identifier (eg fully-qualified etc) https://github.com/hyperledger/composer-sample-networks/blob/master/packages/digitalproperty-network/test/DigitalLandTitle.js
prmdmshra (Tue, 01 Aug 2017 11:43:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=m5pKH25RhNRFjc2Fv) @mahoney1
Please find the details below:
npm list -g --depth=0
/home/pwc/.nvm/versions/node/v6.11.1/lib
+-- @angular/cli@1.2.4
+-- bower@1.8.0
+-- composer-cli@0.10.0
+-- composer-rest-server@0.10.0
+-- express@4.15.3
+-- generator-hyperledger-composer@0.10.1
+-- hfc@0.6.5
+-- npm@3.10.10
`-- yo@2.0.0
mahoney1 (Tue, 01 Aug 2017 11:44:53 GMT):
@prmdmshra looks ok at first glance. Can you return a `docker ps -a` and paste thx
mahoney1 (Tue, 01 Aug 2017 11:49:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tobtACBzeWWhpDtQF) @camdenT cucumber tests? Will see if I can dig something out...this is a known issue (eg .features thing) I believe.
prmdmshra (Tue, 01 Aug 2017 11:50:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tjqRRD72Z9u2zAQu8) @mahoney1
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b3980876e9e6 dev-peer0.org1.example.com-carauction-network-new-0.10.0 "chaincode -peer.a..." 8 minutes ago Up 8 minutes dev-peer0.org1.example.com-carauction-network-new-0.10.0
f1a832954188 dev-peer0.org1.example.com-carauction-network-0.10.0 "chaincode -peer.a..." 29 minutes ago Up 28 minutes dev-peer0.org1.example.com-carauction-network-0.10.0
b3241745bcb5 dev-peer0.org1.example.com-org-acme-biznet-0.10.1 "chaincode -peer.a..." 31 minutes ago Up 31 minutes dev-peer0.org1.example.com-org-acme-biznet-0.10.1
d7ccdb94c87c hyperledger/composer-playground "pm2-docker compos..." 31 minutes ago Up 31 minutes 0.0.0.0:8080->8080/tcp composer
9db49a113ccb hyperledger/fabric-peer:x86_64-1.0.0 "peer node start -..." 32 minutes ago Up 32 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
fecdf40a9935 hyperledger/fabric-orderer:x86_64-1.0.0 "orderer" 32 minutes ago Up 32 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
6aec1b9bfcac hyperledger/fabric-couchdb:x86_64-1.0.0 "tini -- /docker-e..." 32 minutes ago Up 32 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
418540f59251 hyperledger/fabric-ca:x86_64-1.0.0 "sh -c 'fabric-ca-..." 32 minutes ago Up 32 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
baoyangc (Tue, 01 Aug 2017 11:52:09 GMT):
@sstone1 do you have meet the error like below:
```composer-rest-server -i uid5 -s bYRIkeUKvjqg -p org1 -n banquanjia -N never -P 4000
Discovering types from business network definition ...
Connection fails: Error: error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: RangeError: valstack limit)
It will be retried for the next request.
Exception: Error: error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: RangeError: valstack limit)
Error: error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: RangeError: valstack limit)
at queryChainCode.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:707:34)```
mahoney1 (Tue, 01 Aug 2017 11:53:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tobtACBzeWWhpDtQF) @camdenT I've just tried online playground https://composer-playground.mybluemix.net/editor and set a property `o Double abc default = 1.2` and it works fine and I can build my archive fine. Should expect it to work in code too.
mahoney1 (Tue, 01 Aug 2017 12:10:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HsZ7ENBK3kFoNRu9R) @baoyangc hi there - can you raise a Github issue please ....https://github.com/hyperledger/composer/issues/ . Can you make sure to attach: 1) chaincode container logs 2) the BNA business network archive file that creates the problem as well. Thanks.
prmdmshra (Tue, 01 Aug 2017 14:01:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oqRTBrrJnFrMSAqE2)
Could someone please help me on this
e1191947 (Tue, 01 Aug 2017 14:11:41 GMT):
Has joined the channel.
e1191947 (Tue, 01 Aug 2017 14:12:04 GMT):
Creating a new participant as part of step 7 of the https://hyperledger.github.io/composer/tutorials/playground-guide.html tutorial leads to an indefinite timeout (spinner spins indefinately after the Create participant button is pressed).
e1191947 (Tue, 01 Aug 2017 14:12:04 GMT):
Creating a new participant as part of step 7 of the https://hyperledger.github.io/composer/tutorials/playground-guide.html tutorial leads to an indefinite timeout (spinner spins indefinately after the *Create participant* button is pressed).
e1191947 (Tue, 01 Aug 2017 14:12:04 GMT):
Creating a new participant as part of step 7 of the https://hyperledger.github.io/composer/tutorials/playground-guide.html tutorial leads to an indefinite timeout (spinner spins indefinately after the _Create participant_ button is pressed).
e1191947 (Tue, 01 Aug 2017 14:12:04 GMT):
Creating a new participant as part of step 7 of the https://hyperledger.github.io/composer/tutorials/playground-guide.html tutorial leads to an indefinite timeout (spinner spins indefinately after the _Create participant_ button is pressed).
e1191947 (Tue, 01 Aug 2017 14:12:04 GMT):
Creating a new participant as part of step 7 of the https://hyperledger.github.io/composer/tutorials/playground-guide.html tutorial leads to an indefinite timeout (spinner spins indefinately after the _Create participant_ button is pressed).
```
vendor.f14b6f8….bundle.js:1 ERROR TypeError: (intermediate value)(intermediate value)(intermediate value)[e] is not a function
at e.retrieveResourceRegistry (main.8760c6d….bundle.js:1)
at e.addOrUpdateResource (main.8760c6d….bundle.js:1)
at Object.eval [as handleEvent] (e.ngfactory.js:660)
at Object.b [as handleEvent] (vendor.f14b6f8….bundle.js:1)
at Object.handleEvent (vendor.f14b6f8….bundle.js:1)
at Zt (vendor.f14b6f8….bundle.js:1)
at vendor.f14b6f8….bundle.js:1
at HTMLButtonElement.
e1191947 (Tue, 01 Aug 2017 14:12:23 GMT):
Message Attachments
prmdmshra (Tue, 01 Aug 2017 14:13:52 GMT):
It would be great if you could please confirm on the below queries(I currently have the car-audition sample network running on my local):
1. Do I need to export and deploy the BNA file from archive to Fabric, after I have added members in Composer?
(I am currently unable to see the newly added members after deploying the BNA file and executing the Get rest api from rest server)
2. How do we query for the blocks created on Fabric in local?
e1191947 (Tue, 01 Aug 2017 14:26:25 GMT):
```
ScottMorris (Tue, 01 Aug 2017 14:27:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fpchkwZdWaWon4ie6) @davidkel hmm, my versions all seem to match.
```
fvadmin@ubuntu-hyperledger2:~$ composer -v
composer-cli v0.10.1
composer-admin v0.10.1
composer-client v0.10.1
composer-common v0.10.1
composer-runtime-hlf v0.10.1
composer-runtime-hlfv1 v0.10.1
```
ScottMorris (Tue, 01 Aug 2017 14:27:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fpchkwZdWaWon4ie6) @davidkel hmm, my versions all seem to match.
```
fvadmin@ubuntu-hyperledger2:~$ composer -v
composer-cli v0.10.1
composer-admin v0.10.1
composer-client v0.10.1
composer-common v0.10.1
composer-runtime-hlf v0.10.1
composer-runtime-hlfv1 v0.10.1
```
Edit: I've figured out what the issue is, my identities get mangled when updating the Business Network. After assigning new identities after each update and readding them to the wallet the errors go away.
ScottMorris (Tue, 01 Aug 2017 14:27:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fpchkwZdWaWon4ie6) @davidkel hmm, my versions all seem to match.
```
fvadmin@ubuntu-hyperledger2:~$ composer -v
composer-cli v0.10.1
composer-admin v0.10.1
composer-client v0.10.1
composer-common v0.10.1
composer-runtime-hlf v0.10.1
composer-runtime-hlfv1 v0.10.1
```
*Edit*: I've figured out what the issue is, my identities get mangled when updating the Business Network. After assigning new identities after each update and readding them to the wallet the errors go away.
ScottMorris (Tue, 01 Aug 2017 15:09:25 GMT):
General question, what side effects does running `hyperledger network deploy` have? It seems to break my Participant ↔ Identity links. I'm wondering if there are any other side effects that come out of this process.
ScottMorris (Tue, 01 Aug 2017 15:09:25 GMT):
General question, what side effects does running `hyperledger network deploy` have? It seems to break my Participant ↔ Identity links. I'm wondering if there are any other side effects that come out of this process.
Edit: apparently I should be using `composer network update`
ScottMorris (Tue, 01 Aug 2017 15:09:25 GMT):
General question, what side effects does running `hyperledger network deploy` have? It seems to break my Participant ↔ Identity links. I'm wondering if there are any other side effects that come out of this process.
*Edit*: apparently I should be using `composer network update`
ScottMorris (Tue, 01 Aug 2017 15:09:25 GMT):
General question, what side effects does running `composer network deploy` have? It seems to break my Participant ↔ Identity links. I'm wondering if there are any other side effects that come out of this process.
*Edit*: apparently I should be using `composer network update`
ScottMorris (Tue, 01 Aug 2017 15:09:25 GMT):
General question, what side effects does running `composer network deploy` have? It seems to break my Participant ↔ Identity links. I'm wondering if there are any other side effects that come out of this process.
*Edit*: apparently I should be using `composer network update`
*Edit 2*: It seems that still messes up the identity assignments. I'm wondering if this is a bug? The work around seems to be constantly reissuing new identities and then readding them to the wallet.
PulkitManiktala (Tue, 01 Aug 2017 15:22:17 GMT):
Has joined the channel.
mahoney1 (Tue, 01 Aug 2017 16:01:12 GMT):
@prmdmshra you need to upgrade your carauction-network* business networks as they're on v0.10.0 (one micro level down than your runtime). Use `composer network upgrade -n _network-name_ - p hlfv1 -i admin -s adminpw` and supply your network name for -n parameter each time.
mahoney1 (Tue, 01 Aug 2017 16:01:12 GMT):
@prmdmshra you need to upgrade your carauction-network* business networks as they're on v0.10.0 (one micro level down than your runtime). Presently the `composer network upgrade` won't work - but fixed in this weeks release (Thursday). So suggest to undeploy those networks, and re-deploy using `composer network deploy` to get them to the latest version. Then try to generate the Angular skeleton app. (edited)
mahoney1 (Tue, 01 Aug 2017 16:01:12 GMT):
@prmdmshra you need to upgrade your carauction-network* business networks as they're on v0.10.0 (one micro level down than your runtime). Presently the `composer network upgrade` command won't work - fixed in this weeks release (Thursday). So in the meantime, suggest to undeploy those networks, and re-deploy using `composer network deploy` to get them to the latest version (v0.10.1 like your Composer runtime). Then try to generate the Angular skeleton app. (edited)
Raje (Tue, 01 Aug 2017 16:04:35 GMT):
Has joined the channel.
mahoney1 (Tue, 01 Aug 2017 16:10:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7rKKy9qzn75JMi7NK) @ScottMorris it shouldn't break, unless changes made in the model (before and after) break it ??
ScottMorris (Tue, 01 Aug 2017 16:14:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5cGHGkuRkt2qvqSnj) @mahoney1 The only change I made was to the `permissions.acl` file. I added the new SystemACL rule. Then updated.
```
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.*"
action: ALLOW
}
```
ScottMorris (Tue, 01 Aug 2017 16:17:06 GMT):
Also noticed that on the acl page under _Granting network access control_ the all access rule didn't work for us. We had to change the double * into a single *. `resource: "org.hyperledger.composer.system.**"` → `resource: "org.hyperledger.composer.system.*"`. After doing this the participants could participate.
ScottMorris (Tue, 01 Aug 2017 16:17:06 GMT):
Also noticed that on the acl page under _Granting network access control_ the all access rule didn't work for us. We had to change the double ** into a single **. `resource: "org.hyperledger.composer.system.**"` → `resource: "org.hyperledger.composer.system.*"`. After doing this the participants could participate.
ScottMorris (Tue, 01 Aug 2017 16:17:06 GMT):
Also noticed that on the acl page under _Granting network access control_ the all access rule didn't work for us. We had to change the double *** into a single ***. `resource: "org.hyperledger.composer.system.**"` → `resource: "org.hyperledger.composer.system.*"`. After doing this the participants could participate.
ScottMorris (Tue, 01 Aug 2017 16:17:06 GMT):
Also noticed that on the acl page under _Granting network access control_ the all access rule didn't work for us. We had to change the double \* into a single \*. `resource: "org.hyperledger.composer.system.**"` → `resource: "org.hyperledger.composer.system.*"`. After doing this the participants could participate.
davidkel (Tue, 01 Aug 2017 16:43:13 GMT):
@ScottMorris regarding the issue with ** vs *. ** should cover everything * does plus child namespaces, so if you found it wasn't working then it sounds like a bug. Could you raise a github issue please ?
davidkel (Tue, 01 Aug 2017 16:43:13 GMT):
@ScottMorris regarding the issue with '**' vs '*'. '**' should cover everything * does plus child namespaces, so if you found it wasn't working then it sounds like a bug. Could you raise a github issue please ?
mahoney1 (Tue, 01 Aug 2017 16:47:17 GMT):
@ScottMorris ```rule AllAccess {
description: "AllAccess - grant everything to everybody"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}``` ie two '*' is meant to allow access at that level - and below. Still also doesn't explain the breakage you're seeing, as @davidkel wrote, pls raise a GH issue with your scenario / & output thanks..
mahoney1 (Tue, 01 Aug 2017 16:58:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BNNda7J3JThXPWdNb) @prmdmshra 1. Yes you need to deploy BNA first off. Subsequent changes to same, use 'update' to update it in runtime. If you mean 'Members' as a Participant, did you stop and re-run composer-rest-server - those REST Endpoints should be exposed as part of the business-network that you pointed to (unless you somehow didn't manage to update the business network using `composer network update` if it was prev deployed. 2) On Blocks question that's really a #fabric question - you may want to review this S/O https://stackoverflow.com/questions/40466580/how-to-get-all-transaction-history-against-a-chaincode-in-hyperledger-fabric to see REST options available per block
mahoney1 (Tue, 01 Aug 2017 16:58:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BNNda7J3JThXPWdNb) @prmdmshra 1. Yes you need to deploy BNA first off, and yes needs to be exported first. If the network wa prev deployed, use 'composer network update' to update it in runtime. If you mean 'Members' as a Participant in your model, did you stop and re-run composer-rest-server - those REST Endpoints should be exposed as part of the business-network that you pointed to 2) On Blocks question that's really a #fabric question - you may want to review this S/O https://stackoverflow.com/questions/40466580/how-to-get-all-transaction-history-against-a-chaincode-in-hyperledger-fabric to see REST options available per block
l1nux (Tue, 01 Aug 2017 17:23:33 GMT):
Has joined the channel.
l1nux (Tue, 01 Aug 2017 17:27:52 GMT):
How do I define two ca in the connection profile? I have a fabric network with two organizations with its individual MSP hence 2 MSP. Each organization manages 1 peer, I want to create a channel and have the
peer of each Org to join this channel, would composer be able to handle two MSP? The
createComposerProfile.sh seems able to create multiple peers but not multiple MSP. How do I create a
connection profile to associate the different MSP for the individual peer?
davidkel (Tue, 01 Aug 2017 18:51:16 GMT):
@l1nux A connection profile represents a single organisation interacting on a single channel. Of course in a fabric you are allowed to submit transactions to other peers in different organisations, but not likely that someone from one organisation will be given access to another organisation's CA. So if you want to simulate handling of 2 or more organisations then you will need profiles for each organisation.
createComposerProfile.sh actually only creates a single peer in the connection profile.
davidkel (Tue, 01 Aug 2017 18:51:16 GMT):
@l1nux A connection profile represents a single organisation interacting on a single channel. Of course in a fabric you are allowed to submit transactions to other peers in different organisations so that connection profile can contain peers from other organisatons but only for transaction submission. It is not very likely that someone from one organisation will be given access to another organisation's CA so a connection profile only supports a single CA. If you want to simulate handling of 2 or more organisations then you will need profiles for each organisation.
createComposerProfile.sh actually only creates a single peer in the connection profile.
l1nux (Tue, 01 Aug 2017 18:55:21 GMT):
@davidkel Why would my case be sharing a org CA with another org?
davidkel (Tue, 01 Aug 2017 18:56:24 GMT):
@l1nux Sorry, not sure I understand. Anyway just to clarify you can only define a single CA in a connection profile.
giridharg (Tue, 01 Aug 2017 19:27:07 GMT):
@here I am trying to pass default/wildcard character to Composer query but could not find anything related in documentation. Is there a wildcard operator in Composer Query language?
theathibm (Tue, 01 Aug 2017 21:15:06 GMT):
@dselman would it be possible to have built-in functions for the WHERE clause expressions and not just a finite set of operators? Would like to even write javascript in the WHERE clauses directly
crystalsong (Wed, 02 Aug 2017 01:08:40 GMT):
Has joined the channel.
crystalsong (Wed, 02 Aug 2017 01:11:14 GMT):
hello everyone! pretty new to the scene and i'm currently trying to get composer set up --> following the develop guide tutorial
crystalsong (Wed, 02 Aug 2017 01:15:22 GMT):
I'm currently running into this error and was wondering if anyone here can point me to how to fix it? i've tried googling this with no luck
crystalsong (Wed, 02 Aug 2017 01:15:23 GMT):
composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.1.5
Description: The Hello World of Hyperledger Composer samples
events.js:160
throw er; // Unhandled 'error' event
^
Error
at ClientDuplexStream._emitStatusIfDone (/home/osboxes/.nvm/versions/node/v6.11.2/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._readsDone (/home/osboxes/.nvm/versions/node/v6.11.2/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
at readCallback (/home/osboxes/.nvm/versions/node/v6.11.2/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)
crystalsong (Wed, 02 Aug 2017 01:53:34 GMT):
nvm rookie mistake i've got it :)
dklesev (Wed, 02 Aug 2017 02:07:05 GMT):
when I deploy my BNA using composer, how can I switch to it then? only org-acme-biznet is available in Composer Playground
crystalsong (Wed, 02 Aug 2017 02:15:03 GMT):
what do you mean by switch to it?
dklesev (Wed, 02 Aug 2017 02:17:25 GMT):
when I deploy the bna using composer I want to see it in playground
dklesev (Wed, 02 Aug 2017 02:18:01 GMT):
when I use the one-line-setup-script playground auto-deploys the org-acme-biznet
baoyangc (Wed, 02 Aug 2017 03:03:52 GMT):
Message Attachments
baoyangc (Wed, 02 Aug 2017 03:04:48 GMT):
the log reports:``` this.bizNetworkConnection.connect(this.CONNECTION_PROFILE_NAME,this.businessNetworkIdentifier,participantId,participantPwd);
^
TypeError: Cannot read property 'connect' of undefined```
baoyangc (Wed, 02 Aug 2017 03:05:20 GMT):
why the `this.bizNetworkConnection` is undefined
arnabsutar (Wed, 02 Aug 2017 03:09:48 GMT):
Where i can found certificate files for existing identity? I need to bind existing identity with participant
baoyangc (Wed, 02 Aug 2017 03:41:42 GMT):
` "message": "Error: Error trying invoke chaincode. Error: The event hub has not been connected to the event source"`
freddi (Wed, 02 Aug 2017 07:00:06 GMT):
Has joined the channel.
mahoney1 (Wed, 02 Aug 2017 09:11:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=d8CStS4GRgJwhqXx9) @giridharg on wildcard - no we don't support it currently, if you could create a Github issue for this and add an example query that you'd like to use we'll follow up. On default, not sure what you mean - you can pass a default as a parameter to a query,,
mahoney1 (Wed, 02 Aug 2017 09:12:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PR8ZLyTpsjxzNvxk5) @theathibm on wildcard - no we don't support it currently, if you could create a Github issue for this and add an example query that you'd like to use we'll follow up. Thanks.
mahoney1 (Wed, 02 Aug 2017 09:12:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PR8ZLyTpsjxzNvxk5) @theathibm on javascript expression in queries - no we don't support it currently, if you could create a Github issue for this and add an example query that you'd like to use we'll follow up. Thanks.
mahoney1 (Wed, 02 Aug 2017 09:14:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=59myECuiC38doyoTp) @crystalsong cool, nice one and welcome !
mahoney1 (Wed, 02 Aug 2017 09:53:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2bnhJMonwgRYcLjER) @dklesev if you want to connect to your network using Playground currently, it must be deployed with the name org-acme-biznet - presently Playground is currently hardcoded to interact with the org-acme-biznet network.We are working on that right now..
baoyangc (Wed, 02 Aug 2017 10:13:53 GMT):
hi guys, this is a explorer of fabric `http://47.93.185.254:8080/`, our users hope can query raw data of an asset in this explorer. could composer supply the raw transactionId
baoyangc (Wed, 02 Aug 2017 10:14:56 GMT):
@mahoney1 would you please see this
mna2016 (Wed, 02 Aug 2017 10:16:45 GMT):
Hi Team, Is it possible to install Hyperledger Compose on a Windows 7 laptop? If yes, links with downloadables will be appreciated.
baoyangc (Wed, 02 Aug 2017 10:16:46 GMT):
Message Attachments
mahoney1 (Wed, 02 Aug 2017 10:23:38 GMT):
@arnabsutar in your KeyValStore (eg. $HOME/,composer-credentials - configured using the KeyValStore property in the connection profile)
mahoney1 (Wed, 02 Aug 2017 10:27:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=prQntgjiJfa5GxXsj) @baoyangc its being actioned -> https://github.com/hyperledger/composer/issues/936 Composer will eventually use the Fabric txn ID
mahoney1 (Wed, 02 Aug 2017 10:29:33 GMT):
@baoyangc did try the fab explorer link, but hangs fyi
mahoney1 (Wed, 02 Aug 2017 10:31:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RwPRnFA4j7sWpsGFm) @baoyangc nice !!
baoyangc (Wed, 02 Aug 2017 10:31:38 GMT):
yes it need long time to load
mahoney1 (Wed, 02 Aug 2017 10:32:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EmmxCW8qKP5yXmSGw) @mna2016 sorry no, not at present - Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12 only at the moment...
gitSrinidhi (Wed, 02 Aug 2017 10:35:55 GMT):
Hi
Getting this while starting i start `composer-rest-server` After successful deployment of `my-network.bna`.
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
(node:6911) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): *TypeError: cb is not a function*
FenglianXu (Wed, 02 Aug 2017 10:40:50 GMT):
@gitSrinidhi can you show me your query.qry file pls?
gitSrinidhi (Wed, 02 Aug 2017 10:44:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xFKFzq8jFKWKQuSJx) @FenglianXu I didnt find query.qry.
mahoney1 (Wed, 02 Aug 2017 10:53:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=snA5KkYfqgwTxH7fP) @baoyangc sounds like a property of your connect is undefined -> you can check the connect setup here -> https://hyperledger.github.io/composer/applications/node.html
davidkel (Wed, 02 Aug 2017 11:07:31 GMT):
@arnabsutar Can I assume from your question that you enrolled a user through different means rather than using identity issue ? How did you create this existing identity ?
shivann (Wed, 02 Aug 2017 11:50:58 GMT):
Hi Team, Can I get help in downloading Fabric composer dependency installation in Ubuntu Xenial, I have tried to run script from
https://hyperledger.github.io/composer/prereqs-ubuntu.sh , but getting error saying package has unmet dependency ..
mahoney1 (Wed, 02 Aug 2017 12:08:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=szSMJuRPn2PtoCK33) @mahoney1 noticed that you have 3 `'nnn's` (first line of your Constructor) - likely to be your problem.
mahoney1 (Wed, 02 Aug 2017 12:19:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yYJjgom67e9jBAJTX) @gitSrinidhi would look at your code - the error above suggest you're calling something that's not a function and also .. an unhandled promise - possibly one too many curly brackets or parentheses, { ) in your code ? also see more here - > https://stackoverflow.com/questions/40500490/what-is-unhandled-promise-rejection
mahoney1 (Wed, 02 Aug 2017 12:25:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=i3Z4xkubJRsq4Hvj2) @shivann strange.... sounds like an apt-get issue. Would suggest to try `sudo apt-get clean` followed by `sudo apt-get update` and retry the pre-reqs-ubuntu.sh - otherwise could suggest to read this to fix -> https://askubuntu.com/questions/563178/the-following-packages-have-unmet-dependencies
JeremyH (Wed, 02 Aug 2017 12:56:39 GMT):
Has joined the channel.
JeremyH (Wed, 02 Aug 2017 13:01:32 GMT):
Hi, I'm using a local playground instance and trying to get a simple model working. One thing that I'm noticing is that when accessing the transactions passed via the REST API, the TransactionId for the transactions are all showing up as an empty string "". When using the same model on the online playground, I can see actual TransactionId's. I think this may have to do with the online playground being logged in as 'admin'. Has anyone come across this/ know how to access the REST API as 'admin' or another identity?
theathibm (Wed, 02 Aug 2017 13:18:24 GMT):
I have an enumeration defined in my model. I'm writing a transaction processor function where I would like to set and enumeration value into an asset. I can't seem to find the correct syntax to use the enum. Any ideas?
theathibm (Wed, 02 Aug 2017 13:28:53 GMT):
More specifically I would like to use my enum's in both transaction processor functions and also in my queries.qry
theathibm (Wed, 02 Aug 2017 13:29:42 GMT):
I might revert back to just using simple strings and forget about enums for now.
theathibm (Wed, 02 Aug 2017 13:30:03 GMT):
was hoping to make use of enums in modeling and usage
mahoney1 (Wed, 02 Aug 2017 13:30:42 GMT):
@JeremyH The online playground is not connected (runs in-browser storage) to a running Fabric, Your local one is. Are you firstly using 'admin' in your local playground? I assume you are running composer-rest-server (with -i admin ??) to be able to POST transactions using REST in the first place?
baoyangc (Wed, 02 Aug 2017 13:39:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vPj3qRqe32F8gfLWh) @mahoney1 thanks
baoyangc (Wed, 02 Aug 2017 13:48:13 GMT):
``` LOG.debug(method, `Received ${results.length} results(s) from invoking the chaincode`, results);
const proposalResponses = results[0];
this._validateResponses(proposalResponses, true);
// Submit the endorsed transaction to the primary orderers.
const proposal = results[1];
const header = results[2];```
how to make this LOG.debug print the log in composer-rest-server
baoyangc (Wed, 02 Aug 2017 13:48:39 GMT):
this code is come from hfcconnection.js
JeremyH (Wed, 02 Aug 2017 13:57:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EmoxoTTk2EtT68ftQ) @mahoney1 Thanks for your reply! I am indeed using '-i admin' when running the composer-rest-server, so I'm not sure if I'm doing anything else wrong. Do you know if there is a command in the command line that is used to 'switch' identities?Building on the current problem I'm facing, I have a web app that represents different entities, each one of these being a participant in the network.
JeremyH (Wed, 02 Aug 2017 13:57:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EmoxoTTk2EtT68ftQ) @mahoney1 Thanks for your reply! I am indeed using '-i admin' when running the composer-rest-server, so I'm not sure if I'm doing anything else wrong. Do you know if there is a command in the command line that is used to 'switch' identities?Building on the current problem I'm facing, I have a web app that represents different entities, each one of these being a participant in the network. Each participant should only be able to see it's own assets, and the API call that I'm using is showing all assets - so similarly, is there a modification to the call that needs to be made to sort of explain that that call is happening as a certain identity? Thank you for any help
JeremyH (Wed, 02 Aug 2017 13:57:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EmoxoTTk2EtT68ftQ) @mahoney1 Thanks for your reply! I am indeed using '-i admin' when running the composer-rest-server, so I'm not sure if I'm doing anything else wrong. Do you know if there is a command in the command line that is used to 'switch' identities? Building on the current problem I'm facing, I have a web app that represents different entities, each one of these being a participant in the network. Each participant should only be able to see it's own assets, and the API call that I'm using is showing all assets - so similarly, is there a modification to the call that needs to be made to sort of explain that that call is happening as a certain identity? Thank you for any help!
JeremyH (Wed, 02 Aug 2017 13:57:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EmoxoTTk2EtT68ftQ) @mahoney1 Thanks for your reply! I am indeed using '-i admin' when running the composer-rest-server, so I'm not sure if I'm doing anything else wrong. Do you know if there is a command in the command line that is used to 'switch' identities? Building on the current problem I'm facing, I have a web app that represents different entities, each one of these being a participant in the network. Each participant should only be able to see it's own assets, and the API call that I'm using is showing all assets - so similarly, is there a modification to the call that needs to be made to sort of explain that that call is happening as a certain identity? Thank you for any help!
ScottMorris (Wed, 02 Aug 2017 14:49:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fW4eu3r96Hp6hMkPW) @davidkel @mahoney1 An update on this, so it appears to work as intended, not sure what was up as I reverted my single "*" to a "**" and it works now...weird, maybe I had an older BNA version the first time around.
gauthampamu (Wed, 02 Aug 2017 15:20:19 GMT):
Are there any differences between Composer with v0.6 and v1.0. Is it possible to migrate from v0.6 to v1.0 without any changes to the application code assuming we will create the channel and provide the new connection profile for v1.0. Is there potential problem with developing the solution with v0.6 fabric and composer.
mahoney1 (Wed, 02 Aug 2017 15:23:22 GMT):
@ScottMorris yes, possibly.
davidkel (Wed, 02 Aug 2017 15:34:33 GMT):
@gauthampamu applications developed for v0.6 should port without change to v1.0 (there is one caveat where due to changes from v0.6 to v1.0 you can't read your own writes so it would be possible to craft a transaction implementation that would work on v0.6 but not on v1.0). Note that we have deprecated v0.6 support as of our 0.10.0 release and intent to drop support for it fully in our v0.11.0 release
davidkel (Wed, 02 Aug 2017 15:34:33 GMT):
@gauthampamu applications developed for v0.6 should port without change to v1.0 (there is one caveat where due to changes in Hyperledger Fabric from v0.6 to v1.0 you can't read your own writes so it would be possible to craft a transaction implementation that would work on v0.6 but not on v1.0). Note that we have deprecated v0.6 support as of our 0.10.0 release and intent to drop support for it fully in our v0.11.0 release
uber.twin (Wed, 02 Aug 2017 15:37:00 GMT):
hi, the "composer-rest-server" command is suppose to be blocking, isn't it
uber.twin (Wed, 02 Aug 2017 15:37:00 GMT):
hi, the "composer-rest-server" command is suppose to be blocking, isn't it?. it ends up printing the error bellow and keeps waiting
```
(node:17379) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: cb is not a function
```
uber.twin (Wed, 02 Aug 2017 15:37:00 GMT):
hi, the "composer-rest-server" command is suppose to be blocking, isn't it? it ends up printing the error bellow and keeps waiting; it seems operational though
```
(node:17379) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: cb is not a function
```
uber.twin (Wed, 02 Aug 2017 15:37:00 GMT):
hi, the "composer-rest-server" command is suppose to be blocking, isn't it? it ends up printing the error below and keeps waiting; it seems operational though
```
(node:17379) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: cb is not a function
```
gauthampamu (Wed, 02 Aug 2017 15:38:42 GMT):
@davidkel Thanks for the response. Can you explain what you meant by you cannot read your own writes with v1.0.
davidkel (Wed, 02 Aug 2017 15:39:51 GMT):
@gauthampamu In pure chaincode terms, if you do a PutState, doing a subsequent GetState will not return the value you set with the PutState, but rather the current World State value
JeremyH (Wed, 02 Aug 2017 16:20:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tiWooMaksXeBwbqLd) @JeremyH Update - When submitting a transaction using the REST API, there is a TransactionId that we can enter. The default is: TransactionId: "string", which returns an error. Deleting 'string' so that TransactionId: "" results in no error, but the TransactionId showing up as "" in the transaction registry. Deleting the whole line ' TransactionId: "String" ' results in an actual TransactionId being displayed in the asset registry.
ScottMorris (Wed, 02 Aug 2017 16:22:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eaZGJFNWhnou2jq5P) @JeremyH From my understanding `transactionId` comes with every transaction object and isn't used when making an API call.
ScottMorris (Wed, 02 Aug 2017 16:24:07 GMT):
Has anyone used a local authentication strategy with the composer rest server? If so, did you get it working and where did the username/password data come from?
theophoric (Wed, 02 Aug 2017 16:27:46 GMT):
Is there any reference for the different valid `type` values for AdminConnection options?
```
return adminConnection.createProfile('defaultProfile', {
type: 'embedded'
})
```
mahoney1 (Wed, 02 Aug 2017 16:27:47 GMT):
@JeremyH you can use REST authentication (to know and switch identities) - see here -> https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html ...You can show 'who' the identity is too. You can set up ACLs to configure (for example) 'Participant A can only see assets for which Participant A is the owner' - see examples https://hyperledger.github.io/composer/reference/acl_language.html on this page.
mahoney1 (Wed, 02 Aug 2017 16:27:47 GMT):
@JeremyH you can use REST authentication (to know and switch identities) - see here -> https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html ...You can show 'who' the identity is too. You can set up ACLs to configure (for example) 'Participant A can only see assets for which Participant A is the owner' and test in REST (ie the identity linked to the Participant in Composer) see examples https://hyperledger.github.io/composer/reference/acl_language.html on this page.
theophoric (Wed, 02 Aug 2017 16:27:58 GMT):
specifically for the "embedded" type
jamescarlyle (Wed, 02 Aug 2017 16:35:53 GMT):
Has joined the channel.
hobozilla (Wed, 02 Aug 2017 17:06:12 GMT):
Has joined the channel.
mahoney1 (Wed, 02 Aug 2017 17:20:24 GMT):
documented in step 4 here -> https://hyperledger.github.io/composer/reference/connectionprofile.html but for 'embedded' 'web' is mentioned here
mahoney1 (Wed, 02 Aug 2017 17:20:24 GMT):
documented in step 4 here -> https://hyperledger.github.io/composer/reference/connectionprofile.html but for 'embedded' 'web' is mentioned here : so 'web', 'hlf', 'hlfv1'.
mahoney1 (Wed, 02 Aug 2017 17:20:24 GMT):
documented in step 4 here -> https://hyperledger.github.io/composer/reference/connectionprofile.html but for 'embedded' 'web' is mentioned here : so 'web', 'hlf', 'hlfv1' - in your JS code its 'embedded'
davidkel (Wed, 02 Aug 2017 17:29:11 GMT):
@uber.twin We see this as well. I think something has changed in our dependency tree to cause the problem, we need to work out why
mahoney1 (Wed, 02 Aug 2017 17:37:21 GMT):
@JeremyH Composer generates the `transactionId` for you (if you omit the property or you set it to null)
mahoney1 (Wed, 02 Aug 2017 17:44:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4DqY2xBndAtbfyCnG) @theathibm https://github.com/hyperledger/composer-sample-networks/blob/master/packages/animaltracking-network/lib/mozart.cto.js and here https://github.com/hyperledger/composer-sample-models/blob/master/packages/animaltracking-model/models/com.ibm.concerto.mozart.cto
theophoric (Wed, 02 Aug 2017 17:52:32 GMT):
Got it -- thanks mahoney
theathibm (Wed, 02 Aug 2017 17:54:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=iToi8bhNNPF8gEi3p) @mahoney1 Thanks for the answer, seems that hand coded literals are needed like 'IN_TRANSIT'. I get it. Was hoping enum classes/objects would be available in the tpf's. thx
theathibm (Wed, 02 Aug 2017 17:55:43 GMT):
Can Transaction Processer Functions pullin / require other js files like a "utils.js". I have many little functions that I would like to reuse in my various TPF's
theathibm (Wed, 02 Aug 2017 17:56:23 GMT):
I'm trying various techniques to include a utils.js file into my TPF's but not having success. Thx in Advance
theathibm (Wed, 02 Aug 2017 18:05:08 GMT):
basically looking for something like :
theathibm (Wed, 02 Aug 2017 18:05:11 GMT):
Message Attachments
mahoney1 (Wed, 02 Aug 2017 18:10:06 GMT):
@theathibm on ENUMs - the point is Enumerated types are to define the potential content of properties - of other resources. By using enumerated types, the expected content in a field (as you mention, in your code) can be restricted and controlled, reducing unexpected data.
mahoney1 (Wed, 02 Aug 2017 18:10:48 GMT):
@theathibm on 'requires' - Not yet. We are working on native Node.js chaincode execution which will open up all npm modules for use in TP functions.
theathibm (Wed, 02 Aug 2017 18:10:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NJggNnRRqKCHcryzD) @mahoney1 yes, thanks, I'm glad the restrictions are in place
theathibm (Wed, 02 Aug 2017 18:11:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=r9Wfu8fAoq6ffdC6D) @mahoney1 great, would be very helpful to have require() working, thanks
scrdhrt (Wed, 02 Aug 2017 18:11:32 GMT):
Has joined the channel.
davidkel (Wed, 02 Aug 2017 18:11:57 GMT):
@theathibm you can't require javascript files in transaction logic. If you put all the js files into lib directory, all functions in those files are loaded so you should be able to call functions in other js files
theathibm (Wed, 02 Aug 2017 18:13:04 GMT):
Message Attachments
theathibm (Wed, 02 Aug 2017 18:13:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fLA273pAaKAX3Ajyo) @davidkel Thanks, my lib dir is as above
theathibm (Wed, 02 Aug 2017 18:13:42 GMT):
lib dir is going to have various folders and js files
theathibm (Wed, 02 Aug 2017 18:14:24 GMT):
the functions in the "trans_utils.js" did not seem to be available when referenced in the other js files with the TPF's
theathibm (Wed, 02 Aug 2017 18:14:40 GMT):
so I started looking into doing requires
scrdhrt (Wed, 02 Aug 2017 18:15:33 GMT):
Hi. Is the Composer tutorial dev guide (https://hyperledger.github.io/composer/tutorials/developer-guide.html) out of date, or am I missing something? The git I clone, referenced in the guide, doesn't contain the same content as in the guide. For example, my package.json is telling me that I need to install Lerna, but the tutorial doesn't say anything about Lerna at all
mahoney1 (Wed, 02 Aug 2017 18:24:18 GMT):
@scrdhrt hiya - you need to look at the source 'basic-sample-network' (which hasn't anything to do with lerna in its package.json) - you might be looking at the top level package,json - for sample networks itself - I suspect. Anway, the trade-network project copies from basic-sample-network as a starting point, and it does not reference lerna. I would read the tutorial again
mahoney1 (Wed, 02 Aug 2017 18:24:18 GMT):
@scrdhrt hiya - you need to look at the source 'basic-sample-network' (which hasn't anything to do with lerna in its package.json) - you might be looking at the top level package,json - for sample networks itself - I suspect. Anyway, the trade-network project copies from basic-sample-network as a starting point, and it does not reference lerna. I would read the tutorial again
mahoney1 (Wed, 02 Aug 2017 18:25:07 GMT):
@theathibm interesting, I would suggest to try at same 'lib' level (should be fine to call) and then one subdir down (does it fail still?) - if so would raise a GH issue, Thanks
theathibm (Wed, 02 Aug 2017 18:25:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GNbkX5e5GG66qFcMx) @mahoney1 Sure, thanks, I will experiment
scrdhrt (Wed, 02 Aug 2017 18:25:50 GMT):
@mahoney1 *doh* - Thanks
scrdhrt (Wed, 02 Aug 2017 18:26:27 GMT):
I shouldn't be doing this on an empty stomach
giridharg (Wed, 02 Aug 2017 18:43:28 GMT):
@mahoney1 I am trying to use skip and limit parameters in composer query. But the parameters provided are not respected. My query is similar to this:
SELECT org.ibm.driver
WHERE (DriverName==_$driverName)
LIMIT _$limitParam
mahoney1 (Wed, 02 Aug 2017 18:57:26 GMT):
@giridharg suggest to try it out using REST (very easy to set up with composer-rest-server) - your queries are provided as endpoints there -> if you provide test data with /POST and then test the parameterised query, you see what's going on.... this query ``query selectCommoditiesByOwner {
description: "Select all commodities based on their owner"
statement:
SELECT org.acme.trading.Commodity
WHERE (owner == _$owner)
}``` is similar - and works. (Different network/namespace obviously).
mahoney1 (Wed, 02 Aug 2017 18:57:26 GMT):
@giridharg suggest to try it out using REST (very easy to set up with composer-rest-server) - your queries are provided as endpoints there -> if you provide test data with /POST and then test the parameterised query, you see what's going on.... this query ```query selectCommoditiesByOwner {
description: "Select all commodities based on their owner"
statement:
SELECT org.acme.trading.Commodity
WHERE (owner == _$owner)
}``` is similar - and works. (Different network/namespace obviously).
mahoney1 (Wed, 02 Aug 2017 18:57:26 GMT):
@giridharg suggest to try it out using REST (very easy to set up with composer-rest-server) - your queries are provided as endpoints there (once you deploy or update a previously deployed network from a BNA file obviously) -> if you provide test data with /POST and then test the parameterised query, you see what's going on.... this query ```query selectCommoditiesByOwner {
description: "Select all commodities based on their owner"
statement:
SELECT org.acme.trading.Commodity
WHERE (owner == _$owner)
}``` is similar - and works. (Different network/namespace obviously).
giridharg (Wed, 02 Aug 2017 19:03:41 GMT):
I am using composer-rest-server and exposing these parameters in REST server. When I use LIMIT or SKIP after WHERE condition without ORDER BY, the parameter provided is not respected meaning if I set limitParam=1 in REST call, I still see 4 records
giridharg (Wed, 02 Aug 2017 19:03:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=X6F7eexeAvtyBQNnu) @mahoney1 I am using composer-rest-server and exposing these parameters in REST server. When I use LIMIT or SKIP after WHERE condition without ORDER BY, the parameter provided is not respected meaning if I set limitParam=1 in REST call, I still see 4 records
mahoney1 (Wed, 02 Aug 2017 19:07:19 GMT):
@giridharg ah ok cool - can you raise a Stack Overflow and paste your complete query with the info you provided. Thanks
VickyWang (Thu, 03 Aug 2017 01:22:44 GMT):
Has joined the channel.
pospi (Thu, 03 Aug 2017 02:46:38 GMT):
While we're talking queries- access control for queries, is that something in the pipeline?
germanhs (Thu, 03 Aug 2017 05:14:02 GMT):
hey people is my fabric image outdated or did they change the syntax again that you now need an identifier for a transaction again?
germanhs (Thu, 03 Aug 2017 05:14:54 GMT):
Because of the recent update I removed the IDs from my transactions in the model and now I get an error again with: * is not declared abstract. must define an identifying field.
germanhs (Thu, 03 Aug 2017 05:15:13 GMT):
Just want to know the latest best practises
germanhs (Thu, 03 Aug 2017 06:41:47 GMT):
@pospi isnt this done with the acl file?
germanhs (Thu, 03 Aug 2017 06:51:39 GMT):
my composer version seems to be the problem (v.0.7.5) fabric image is up to date thats the problem^^
germanhs (Thu, 03 Aug 2017 06:51:47 GMT):
#fixed
davidkel (Thu, 03 Aug 2017 07:19:26 GMT):
@pospi ACLs are applied to the results of the query so you only get back what you are allowed to see.
pospi (Thu, 03 Aug 2017 07:19:38 GMT):
nice. Good to know!
prmdmshra (Thu, 03 Aug 2017 07:43:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=p47yRfnh9TFpGtp3t) @mahoney1
I am still getting the same error on undeploying and reimporting the network. Do I need to remove all the modules and reinstall. Kindly suggest
https://github.com/hyperledger/composer/issues/1645
srikanthanthargam (Thu, 03 Aug 2017 07:53:03 GMT):
Has joined the channel.
srikanthanthargam (Thu, 03 Aug 2017 07:53:15 GMT):
how to store playground bna file on blockchain and access it again back?
germanhs (Thu, 03 Aug 2017 07:58:48 GMT):
can somebody tell me the standard username and password for the admin to start the rest server? It seems they changed it
germanhs (Thu, 03 Aug 2017 07:59:01 GMT):
as i Get and error it should be in same org as the peer admin
baoyangc (Thu, 03 Aug 2017 08:11:51 GMT):
the operation `add participant` consume about 2 seconds. do we have any plan to optimize it
baoyangc (Thu, 03 Aug 2017 08:12:41 GMT):
@germanhs you fabric-ca started with -b admin:adminpw?
germanhs (Thu, 03 Aug 2017 08:18:35 GMT):
I just used the dev tools
germanhs (Thu, 03 Aug 2017 08:18:54 GMT):
so i didnt start it but i think so yes but my network is deployed with peeradmin and pw: randomString
germanhs (Thu, 03 Aug 2017 08:19:12 GMT):
previously i used admin and pw: Xur[..]
germanhs (Thu, 03 Aug 2017 08:19:22 GMT):
but they changed a lot
sachaLiguori (Thu, 03 Aug 2017 08:49:31 GMT):
Hi there !
sachaLiguori (Thu, 03 Aug 2017 08:51:00 GMT):
We would be very interested in a multithreaded version but Node Js does not allow this
mahoney1 (Thu, 03 Aug 2017 08:55:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WkxfGvfcnfptMfXRW) @pospi its already there. When returning the results of a query, your access control rules are applied to the results. Any content which the current Participant (say) does not have authority to view is stripped from the results.
For example, if the current Participant sends a query that would return all assets, if they only have authority to view a limited selection of assets, the query would return only that limited set of assets.
germanhs (Thu, 03 Aug 2017 09:08:46 GMT):
what does this error mean: ERROR: manifest for hyperledger/fabric-peer:latest not found
germanhs (Thu, 03 Aug 2017 09:11:12 GMT):
i can also not docker pull the image always getting this error
absingh0 (Thu, 03 Aug 2017 09:13:10 GMT):
Has joined the channel.
absingh0 (Thu, 03 Aug 2017 09:14:24 GMT):
Hi All, Do anyone know why I am getting this error while doing npm test
```my-network@0.0.1 doc /home/abhi/Composer/my-network
> jsdoc --pedantic --recurse -c jsdoc.conf
Cannot parse the config file jsdoc.conf: Error: ENOENT: no such file or directory, open 'jsdoc.conf'
Exiting JSDoc because an error occurred. See the previous log messages for details.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-network@0.0.1 doc: `jsdoc --pedantic --recurse -c jsdoc.conf`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.0.1 doc script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/abhi/.npm/_logs/2017-08-03T09_13_29_125Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-network@0.0.1 postlicchk: `npm run doc`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.0.1 postlicchk script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/abhi/.npm/_logs/2017-08-03T09_13_29_173Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-network@0.0.1 postlint: `npm run licchk`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.0.1 postlint script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/abhi/.npm/_logs/2017-08-03T09_13_29_221Z-debug.log
npm ERR! Test failed. See above for more details.
```
absingh0 (Thu, 03 Aug 2017 09:15:43 GMT):
I am trying to run sample business network
suvpatil (Thu, 03 Aug 2017 09:50:49 GMT):
hi.....I am getting below error when deploying the network
Error: Error trying deploy. Error: Error trying install chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")
Command failed
prmdmshra (Thu, 03 Aug 2017 09:56:23 GMT):
I am enabling Rest authentication using the below link:
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
I am getting the following error on attempting to authenticate the Rest server (http://localhost:3000/explorer woks fine for me and 401 error is displayed on attempting to POST any request):
Error
404 Cannot GET /auth/github
status: 404
Error: Cannot GET /auth/github
at raiseUrlNotFoundError (/home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/server/middleware/url-not-found.js:21:17)
at Layer.handle [as handle_request] (/home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)
at trim_prefix (/home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)
at /home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7
at Function.process_params (/home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)
at next (/home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)
at /home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:635:15
at next (/home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:260:14)
at Function.handle (/home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:174:3)
at router (/home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:47:12)
at Layer.handle [as handle_request] (/home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)
at trim_prefix (/home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)
at /home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7
at Function.process_params (/home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)
at next (/home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)
at urlencodedParser (/home/pwc/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/body-parser/lib/types/urlencoded.js:91:7)
mahoney1 (Thu, 03 Aug 2017 10:04:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ks4P9XeXCugp5tLTs) @srikanthanthargam you set up a connection profile in playground to the runtime Fabric 'blockchain' (eg. called hlfv1 or example) -> https://hyperledger.github.io/composer/reference/connectionprofile.html
baoyangc (Thu, 03 Aug 2017 10:15:47 GMT):
@mahoney1 how many peers should be configured in the connection.json
hschell (Thu, 03 Aug 2017 10:15:54 GMT):
What is the right version / commit level of composer we should use to connect to IBM Blockchain High Security Plan - vNext Limited Beta (Hyperledger/fabric - 14055d70d9593e99295c7846076fc9dcfb1e052e)? Attempt to use latest composer version failed as at least the CA API changed a bit. Thanks!
davidkel (Thu, 03 Aug 2017 10:34:16 GMT):
That commit id indicates the alpha1 release of hyperledger fabric. You need to use version 0.7.5 of composer to work with that level
davidkel (Thu, 03 Aug 2017 10:34:16 GMT):
@hschell That commit id indicates the alpha1 release of hyperledger fabric. You need to use version 0.7.5 of composer to work with that level
Shwetrai (Thu, 03 Aug 2017 10:41:12 GMT):
Can anyone help me to understand Fabric Composer from Network operator point of view? When I use hyperledger fabric v1,0 I can explain network, peer and other component but with Fabric Composer I am confused. When I start fabric I see only one org, 1 Peer but I can create many asset or participants. I am struggling to understand Fabric Composer and hyperleger fabric together.
CedricHumbert (Thu, 03 Aug 2017 10:49:05 GMT):
Has joined the channel.
mahoney1 (Thu, 03 Aug 2017 10:50:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4tDvwZuiRTmwjndcZ) @giridharg this Couchdb issue/bug (for SKIP and LIMIT) is something the Fabric team has to address (the Composer settings you define are getting over-ridden) - it has been captured here -> https://jira.hyperledger.org/projects/FAB/issues/FAB-5369?filter=allissues
davidkel (Thu, 03 Aug 2017 11:15:43 GMT):
@Shwetrai Hyperledger composer can work with any type of Hyperledger Fabric topology (Multiple organisations for example). You appear to be referring to the simple development server we provide in our tutorials in order to provide a simple development enviroment with a real hyperledger fabric. So you would create your Hyperledger fabric topology and then you would deploy a business network using hyperledger composer to that topology
mdanaci (Thu, 03 Aug 2017 11:57:26 GMT):
Has joined the channel.
mdanaci (Thu, 03 Aug 2017 11:57:39 GMT):
I'm using hyperledger-composer and implementing Transaction Processor Functions for our project. Where can i find a complete list of built in functions like `assetRegistry.update()`? Any documentations?
indira.kalagara (Thu, 03 Aug 2017 12:31:48 GMT):
Can we use the "composer network deploy" command as non-root user ? without sudo access ? When I tried, I am getting "Error: EACCES: permission denied, open 'logs/trace_13203.log'
at Error (native)
"
theathibm (Thu, 03 Aug 2017 12:53:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GNbkX5e5GG66qFcMx) @mahoney1 Ok, put files in /lib and in various folders works. In fact you don't need to explicitly "require" the js files into your TPF's js files. This is nice since I have many little utilities that I reuse in all my TPF's js files.
theathibm (Thu, 03 Aug 2017 12:55:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fLA273pAaKAX3Ajyo) @davidkel thanks, you're right about the lib directory and all the various js files you might put in it. you can have folders and files in any level in your lib directory and then resuse functions anytime
theathibm (Thu, 03 Aug 2017 12:57:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rGQmtKbqmFidP5YQA) @mahoney1 This is a huge problem for our team which includes @giridharg. We want to heavily use queries . But controlling pagination and limit sizes is critical. Hopefully this gets fixed right away. Urgent!!! :-)
theathibm (Thu, 03 Aug 2017 12:57:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rGQmtKbqmFidP5YQA) @mahoney1 This is a huge problem for our team which includes @giridharg . We want to heavily use queries . But controlling pagination and limit sizes is critical. Hopefully this gets fixed right away. Urgent!!! :-)
davidkel (Thu, 03 Aug 2017 12:59:15 GMT):
@theathibm It doesn't look like it is going into the fabric 1.0.1 release which is due soon.
theathibm (Thu, 03 Aug 2017 13:00:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Xt5svvqJLi5WMNnNy) @davidkel I'm assuming you mean the SKIP and LIMIT fix is not going into new composer releases anytime soon? Can you think of work arounds ?
davidkel (Thu, 03 Aug 2017 13:01:58 GMT):
@theathibm the problem is with hyperledger fabric itself. Until they fix it we cannot do SKIP and LIMIT. I don't know of any workarounds without having to process the complete dataset yourself
theathibm (Thu, 03 Aug 2017 13:02:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=P4TW6pux38zxycDNL) @davidkel so basically retrieve everything up to client app and then create some custom pagination in memory?
mahoney1 (Thu, 03 Aug 2017 13:19:07 GMT):
fyi @here - the Community call today (Thurs) will be at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> URL https://github.com/hyperledger/composer/wiki/Meeting-3rd-August-2017 best regards Paul
davidkel (Thu, 03 Aug 2017 13:20:47 GMT):
@theathibm Can't think of any better way at the moment
mahoney1 (Thu, 03 Aug 2017 13:24:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EwqSQHBt9cmyRExCh) @mdanaci see here https://hyperledger.github.io/composer/unstable/applications/node.html and https://hyperledger.github.io/composer/unstable/jsdoc/index.html and here https://hyperledger.github.io/composer/unstable/applications/applications-index.html
theathibm (Thu, 03 Aug 2017 13:31:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Dcwmr7QrmegzQuvJM) @theathibm @giridharg @mahoney1 @davidkel Any chance we can write some sort of code to poke the poking ( override the overriding) that fabric is doing just before the query is invoked? :-)
davidkel (Thu, 03 Aug 2017 13:44:41 GMT):
@theathibm I don't think so.
mahoney1 (Thu, 03 Aug 2017 14:05:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=G96Lgk876oQC4dbCb) @indira.kalagara the answer most certainly is 'yes' - you should have installed composer modules as a non-root user per the docs (apols if you already have). Ideally, when you install composer modules globally (eg. composer-cli) you should install using a designated, non-root user. If there are issues (eg, on Ubuntu with permissions to write/update node directories located in system directories like /usr/local, its on cloud etc) - the solution is perform the npm install to a directory you have access to - rather than resort to root or superuser access, as this is not good practice. Here is what to do to set the npm prefix to a given directory, ...
"npm config set prefix /home/myuser/"
In this case, global binaries are placed in /home/myuser/bin which is in your PATH, and the modules are placed in /home/myuser/lib ...
This is a method to do all the 'global' installs as non-root
mdanaci (Thu, 03 Aug 2017 14:05:34 GMT):
I was Looking for this `https://hyperledger.github.io/composer/jsdoc/module-composer-runtime.AssetRegistry.html` Thank you[ ](https://chat.hyperledger.org/channel/composer?msg=4rv5rtoPeyxNqP7vm) @mahoney1
mdanaci (Thu, 03 Aug 2017 14:13:32 GMT):
Let's say i have Participant, Asset models and a transaction that changes the assets ownership. Can i get the asset history from blockchain (like this asset first given to this participant and then to this participant) or do i need to implement another model like AssetHistory and fill it when transaction happens.
jdockter (Thu, 03 Aug 2017 14:26:52 GMT):
@davidkel seems like on large transactions, as in the size of the JSON, or if the number of transactions is to be a lot at once my local environment will see timeouts..is there anything I can tweak in the fabric-tools configuration that would help?
davidkel (Thu, 03 Aug 2017 14:32:18 GMT):
@jdockter is it a transaction timeout ? could you post the message you are seeing ?
jdockter (Thu, 03 Aug 2017 14:32:54 GMT):
let me dig it up
jdockter (Thu, 03 Aug 2017 14:42:09 GMT):
sigh...well...can't find the logs...and recreating doesn't seem to work...now system is handling volumes just fine
davidkel (Thu, 03 Aug 2017 14:50:18 GMT):
@jdockter ok, guess it depends on the load of the machine. There is a transaction execution timeout value on the peers you can tweak. The default value is 30 seconds. If you want to set it to 90 seconds for example, add this to your peer environment
`- CORE_CHAINCODE_EXECUTE_TIMEOUT=90s`
davidkel (Thu, 03 Aug 2017 14:50:18 GMT):
@jdockter ok, guess it depends on the load of the machine. There is a transaction execution timeout value on the peers you can tweak. The default value is 30 seconds. If you want to set it to 90 seconds for example, add this to your peer environment
`- CORE_CHAINCODE_EXECUTETIMEOUT=90s`
jdockter (Thu, 03 Aug 2017 14:53:28 GMT):
okay will try to stress again to see if it breaks
mahoney1 (Thu, 03 Aug 2017 14:54:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PKBnWmZm85728X5pb) @mdanaci the 'historian' feature is going into the build v0.11.0 being released later today so 'createAssets', createParticipants, updateAssets, createIdentity etc transactions are added. https://github.com/hyperledger/composer/releases/
mahoney1 (Thu, 03 Aug 2017 14:54:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PKBnWmZm85728X5pb) @mdanaci the 'historian' feature is going into the build v0.11.0 hopefully being released later today so 'createAssets', createParticipants, updateAssets, createIdentity etc transactions are added. https://github.com/hyperledger/composer/releases/
davidkel (Thu, 03 Aug 2017 14:54:42 GMT):
@jdockter Also note that a memory leak fix is going in the next release and depending on how you stressed composer might also impact you
davidkel (Thu, 03 Aug 2017 14:54:42 GMT):
@jdockter Also note that a memory leak fix is going in the next release (hopefully today) and depending on how you stressed composer might also impact you
jdockter (Thu, 03 Aug 2017 14:55:27 GMT):
ah okay...wasn't aware of that issue
jdockter (Thu, 03 Aug 2017 15:06:29 GMT):
okay...got it to puke.... [error] [hyperledger-composer-out:Create Transaction] Error trying to query chaincode. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
jdockter (Thu, 03 Aug 2017 15:06:36 GMT):
loaded about 800+ transactions
jdockter (Thu, 03 Aug 2017 15:07:03 GMT):
before I was do a delay of about 1 sec on each using node red node
jdockter (Thu, 03 Aug 2017 15:07:03 GMT):
before I was doing a delay of about 1 sec on each using node red node
jdockter (Thu, 03 Aug 2017 15:07:17 GMT):
@davidkel ^^^
jdockter (Thu, 03 Aug 2017 15:08:27 GMT):
mmm looks like my peer blew up
jdockter (Thu, 03 Aug 2017 15:08:40 GMT):
Exited (137) 15 seconds ago
jdockter (Thu, 03 Aug 2017 15:09:27 GMT):
and it won't start back up :(
jdockter (Thu, 03 Aug 2017 15:11:07 GMT):
from docker log ...```2017-08-03 15:09:14.175 UTC [shim] func1 -> ERRO 002 Received error from server: rpc error: code = Unknown desc = Error handling message, ending stream: transition canceled with error: peer will not accepting external chaincode connection name:"customs-network:0.10.1" (except in dev mode), ending chaincode stream
```
mahoney1 (Thu, 03 Aug 2017 15:17:13 GMT):
fyi @here reminder - the Community call today (Thurs) is in 15 mins - 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest (impending) release and what's upcoming -> URL https://github.com/hyperledger/composer/wiki/Meeting-3rd-August-2017 best regards Paul
mahoney1 (Thu, 03 Aug 2017 15:17:13 GMT):
fyi @here reminder - the Community call today (Thurs) is in 45 mins - 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest (impending) release and what's upcoming -> URL https://github.com/hyperledger/composer/wiki/Meeting-3rd-August-2017 best regards Paul
DannyWong (Thu, 03 Aug 2017 15:52:05 GMT):
Hi, the event defined in CTO file is application-level event, which is not a block event....
Such application level event is emitted by each peer during endorsement... (however, not tx might not committed)
DannyWong (Thu, 03 Aug 2017 15:52:40 GMT):
what is the use case to emit an event that a transaction has not been "consensus"-ed and committed
jtonline (Thu, 03 Aug 2017 15:58:49 GMT):
0.11.0 release is on the way! https://github.com/hyperledger/composer/releases/tag/v0.11.0 The online playground will be unavailable for a short time during the release build.
Shwetrai (Thu, 03 Aug 2017 16:24:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7DdkzpnPF5mfA3hzE) @davidkel Thank you! I have few more questions like When I create business network it doesn't takes fabric topology in consideration, why? What is purpose of creating multiple participants in a single org? How can we create participants from different org using Fabric composer? Any guide or document would be helpful to understand. I have created POC for client on Fabric Composer but I want to present him multiple org with participants from each org using Fabric Composer.
Binay1 (Thu, 03 Aug 2017 16:26:26 GMT):
Message Attachments
Binay1 (Thu, 03 Aug 2017 16:26:34 GMT):
Hi I was trying to do the dev tutorial and got the following error when I tried to run composer-rest-server
Shwetrai (Thu, 03 Aug 2017 16:27:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bPCgSudr8aDGPvppn) @Binay1 It seems that you haven't deployed your bna
JeremyH (Thu, 03 Aug 2017 16:27:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uM4JXfrF7aCGnwFkr) @Binay1 Can you try going up one directory before running composer-rest-server. So to your my-network directory instead of my-network/dist
Binay1 (Thu, 03 Aug 2017 16:28:42 GMT):
Okay. Let me try that
Binay1 (Thu, 03 Aug 2017 16:29:38 GMT):
Went up one directory. It's still the same
Binay1 (Thu, 03 Aug 2017 16:34:26 GMT):
I redeployed and now I've got this
Binay1 (Thu, 03 Aug 2017 16:34:34 GMT):
Message Attachments
Binay1 (Thu, 03 Aug 2017 16:35:11 GMT):
Do I need to update composer-cli ?
bestbeforetoday (Thu, 03 Aug 2017 16:48:22 GMT):
You do need to client version to be in step with the deployed chain-code version. You may need to update both composer-cli and composer-rest-server. The commands are at https://hyperledger.github.io/composer/installing/development-tools.html: ```npm install -g composer-cli@0.10.1
npm install -g composer-rest-server@0.10.1```
bestbeforetoday (Thu, 03 Aug 2017 16:48:22 GMT):
@Binay1 You do need to client version to be in step with the deployed chain-code version. You may need to update both composer-cli and composer-rest-server. The commands are at https://hyperledger.github.io/composer/installing/development-tools.html: ```npm install -g composer-cli@0.10.1
npm install -g composer-rest-server@0.10.1```
bestbeforetoday (Thu, 03 Aug 2017 16:49:19 GMT):
Make sure you specify the version or you'll end up at v0.11.0 if you run now
davidkel (Thu, 03 Aug 2017 16:50:41 GMT):
@jdockter hmm, think you might have to ask the fabric developers about that one.
davidkel (Thu, 03 Aug 2017 16:53:01 GMT):
@DannyWong Not sure I understand what you are stating, but to clarify. Events defined in the CTO will only be emitted when the block is committed to the chain.
jtonline (Thu, 03 Aug 2017 16:54:08 GMT):
Message Attachments
jtonline (Thu, 03 Aug 2017 16:54:31 GMT):
Worth checking the release notes this week
davidkel (Thu, 03 Aug 2017 16:56:42 GMT):
@Shwetrai Business networks don't need to know the topology per se. Composer connection profiles allow you to define the peers/orders/cas that you require to interact with. So you deploy a business network using a connection profile.
davidkel (Thu, 03 Aug 2017 16:56:42 GMT):
@Shwetrai Business networks don't need to know the topology per se. Composer connection profiles allow you to define the peers/orders/cas that you require to interact with. So you deploy a business network using a connection profile. Connection profiles represent a connection from a single organisation. Different organisations would have their own connection profiles
davidkel (Thu, 03 Aug 2017 17:05:10 GMT):
@Shwetrai You can certainly have a multi-org setup and composer will happily work with that. Unfortunately we don't have anything demonstrating that kind of setup yet. It's something we would like to do with our Vehicle Lifecycle sample, but just haven't got around to extending that into that sort of scenario
mahoney1 (Thu, 03 Aug 2017 17:06:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EigmgsytsjJLutwqo) @Binay1 [ ](https://chat.hyperledger.org/channel/composer?msg=EigmgsytsjJLutwqo) @Binay1 yes ,you should do an `npm uninstall -g composer-cli` followed by a `npm install -g composer-cli@0.10.1` for your current environment.
mahoney1 (Thu, 03 Aug 2017 17:06:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EigmgsytsjJLutwqo) @Binay1 yes ,you should do an `npm uninstall -g composer-cli` followed by a `npm install -g composer-cli@0.10.1` for your current environment.
mahoney1 (Thu, 03 Aug 2017 17:06:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EigmgsytsjJLutwqo) @Binay1 yes ,you should do an `npm uninstall -g composer-cli` followed by a `npm install -g composer-cli@0.10.1` for your current environment. And the rest server as mentioned earlier.
Binay1 (Thu, 03 Aug 2017 17:09:08 GMT):
Thanks @bestbeforetoday and @mahoney1
Shwetrai (Thu, 03 Aug 2017 17:24:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=usrxN4h87rKCAbcv2) @davidkel Thank you! Any guide on how Fabric Composer works with fabric topology would be great to start with my POC. However, I got a starting point to deep dive :) Thank you!
UDeshmukh (Thu, 03 Aug 2017 18:57:41 GMT):
Message Attachments
UDeshmukh (Thu, 03 Aug 2017 18:57:41 GMT):
Message Attachments
UDeshmukh (Thu, 03 Aug 2017 18:58:24 GMT):
Can anyone help what could be causing this? Also Where can I find documentation to get more details of the modelling language used in Composer ?
mahoney1 (Thu, 03 Aug 2017 19:06:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PaaYHgStDdNCvZnaS) @UDeshmukh there's a LINT problem in your sample.js and language is here https://hyperledger.github.io/composer/reference/cto_language.html and examples in the samples-networks directory..
UDeshmukh (Thu, 03 Aug 2017 19:10:42 GMT):
Message Attachments
UDeshmukh (Thu, 03 Aug 2017 19:13:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3aLqGdNYeB243Laff) @mahoney1 I used unit test code provided in the tutorial - and just modified namespace... as uploaded above. Not sure what went wrong with that...
CT123 (Thu, 03 Aug 2017 20:16:53 GMT):
@UDeshmukh @mahoney1 This is a good issue -- in the developer guide there is a disconnect in the discussion of name v. namespace -- for the package.json file and in what is used in sample.js and other files -- question: does the "name" in the package.json file need to be *exactly* the same as the namespace used in the sample.js and other files? Thx
prmdmshra (Thu, 03 Aug 2017 21:04:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sigAApa4eSoc2GDbw)
I upgraded the components to below: .
But, I am still getting the following error message on running 'yo hyperledger-composer'
Also, I tried running the following but an new error seems to appear. I am blocked for generating angular application for any sample code.
composer network upgrade -n basic-sample-network -p hlfv1 -i admin -s adminpw
✖ Upgrading runtime for business network basic-sample-network. This may take a minute...
Error: Error trying upgrade chaincode. Error: Error trying to query chaincode. Error: Missing "chaincodeId" parameter in the proposal request
Command failed
prmdmshra (Thu, 03 Aug 2017 21:04:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sigAApa4eSoc2GDbw)
I upgraded the components to below: .npm list -g --depth=0
/home/pwc/.nvm/versions/node/v6.11.1/lib
+-- @angular/cli@1.2.4
+-- bower@1.8.0
+-- composer-cli@0.10.1
+-- composer-rest-server@0.10.1
+-- express@4.15.3
+-- generator-hyperledger-composer@0.11.0
+-- hfc@0.6.5
+-- npm@3.10.10
+-- passport-github@1.1.0
`-- yo@2.0.0
But, I am still getting the following error message on running 'yo hyperledger-composer': events.js:160
throw er; // Unhandled 'error' event
^
Error: error trying to ping. Error: Deployed chain-code (0.10.1) is incompatible with client (0.9.0)
at queryChainCode.then.catch (/usr/lib/node_modules/generator-hyperledger-composer/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:666:34)
Also, I tried running the following but an new error seems to appear. I am blocked for generating angular application for any sample code.
composer network upgrade -n basic-sample-network -p hlfv1 -i admin -s adminpw
✖ Upgrading runtime for business network basic-sample-network. This may take a minute...
Error: Error trying upgrade chaincode. Error: Error trying to query chaincode. Error: Missing "chaincodeId" parameter in the proposal request
Command failed
sanjay-saxena (Thu, 03 Aug 2017 23:23:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=usrxN4h87rKCAbcv2) @davidkel This would be extremely useful!
germanhs (Fri, 04 Aug 2017 01:48:05 GMT):
`Status: Downloaded newer image for hyperledger/fabric-membersrvc:latest
Pulling vp0 (hyperledger/fabric-peer:latest)...
ERROR: manifest for hyperledger/fabric-peer:latest not found
`
germanhs (Fri, 04 Aug 2017 01:48:05 GMT):
`Status: Downloaded newer image for hyperledger/fabric-membersrvc:latest
Pulling vp0 (hyperledger/fabric-peer:latest)...
ERROR: manifest for hyperledger/fabric-peer:latest not found`
germanhs (Fri, 04 Aug 2017 01:48:05 GMT):
`Status: Downloaded newer image for hyperledger/fabric-membersrvc:latest`
`Pulling vp0 (hyperledger/fabric-peer:latest)...`
`ERROR: manifest for hyperledger/fabric-peer:latest not found`
germanhs (Fri, 04 Aug 2017 01:48:32 GMT):
Please help me what this error means. Is hlfv0.6 not supported anymore or why cant I run the startFabric.sh?
germanhs (Fri, 04 Aug 2017 01:49:11 GMT):
`test`
germanhs (Fri, 04 Aug 2017 01:56:54 GMT):
ok nevermind docker registry is the problem the tag latest is not available: see this if you face the same problem: https://github.com/paritytech/parity/issues/4503
indira.kalagara (Fri, 04 Aug 2017 05:13:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kpwGrGBsEmFt94zjC) @mahoney1 Thank you for the response. I will try this approach.
suvpatil (Fri, 04 Aug 2017 06:05:26 GMT):
I am getting error while deploying the .bna file : Error trying deploy. Error: Error trying install chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")
Command failed
suvpatil (Fri, 04 Aug 2017 06:05:55 GMT):
can we have any solution for this?
Redscarfs (Fri, 04 Aug 2017 06:24:04 GMT):
Has joined the channel.
Redscarfs (Fri, 04 Aug 2017 06:24:53 GMT):
I tried to install Hyperledger Composer on my AWS Lightsail following instructions documented on https://hyperledger.github.io/composer/installing/development-tools.html
I succeeded until step 3, where I entered "npm install -g composer-rest-server". It complains about several deprecated items and on the 5th times, it just got frozen.[enter image description here][1]
[1]: https://i.stack.imgur.com/kOTaD.png
Can someone please help? Thanks!
germanhs (Fri, 04 Aug 2017 06:54:28 GMT):
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID DEFAULT, received ]] :(
germanhs (Fri, 04 Aug 2017 06:55:21 GMT):
I dont like the update before i could just deploy the composer bna file with the admin accont but now not. PLease just gimme the current standard account to deploy and start a rest server.
DannyWong (Fri, 04 Aug 2017 07:48:15 GMT):
Error: Serializer.toJSON only accepts instances of Resource.
DannyWong (Fri, 04 Aug 2017 07:48:20 GMT):
Any idea?...
DannyWong (Fri, 04 Aug 2017 07:48:41 GMT):
I use the composer query to return an asset from Fabric
DannyWong (Fri, 04 Aug 2017 07:48:53 GMT):
the JSON is printed at console and looks good
DannyWong (Fri, 04 Aug 2017 07:49:07 GMT):
but when i format it as JSON as HTTP response
DannyWong (Fri, 04 Aug 2017 07:49:22 GMT):
it throws error said only accept instances of resource.
germanhs (Fri, 04 Aug 2017 08:13:01 GMT):
please someone has deployed a network with the new default membersrvc right? what user for deploy and what for start rest server? somehow admin and peeradmin dont work anymore because they dont have the organisation as the peer Org1
germanhs (Fri, 04 Aug 2017 08:13:22 GMT):
and i never worked with this organisation stuff. its just annoying that its changed
JanRzepecki (Fri, 04 Aug 2017 08:13:45 GMT):
Has joined the channel.
germanhs (Fri, 04 Aug 2017 08:23:31 GMT):
Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
germanhs (Fri, 04 Aug 2017 08:24:06 GMT):
WTF i dont know what is happening .. I cant deploy anymore. Either I get authorization failure or the peer org is not equal identity org.
germanhs (Fri, 04 Aug 2017 08:24:30 GMT):
Somebody can explain me how to fix it or how to get back to the old 0.6 version?
germanhs (Fri, 04 Aug 2017 08:27:06 GMT):
I tried reinstalling already but I always end up with error while deploying. with the old version I had no problems at all just install create archive deploy start server
germanhs (Fri, 04 Aug 2017 08:29:09 GMT):
ok nevermind I am just frustrated I just deleted the .composer folders and recreated them now it works (hopefully)
mahoney1 (Fri, 04 Aug 2017 08:55:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6hXgru5oSGbKB7AJH) @CT123 no it doesn't - they are separate entities. the package.json name for the business network can only contain lowercase alphanumerics, _ or - no '.'
mahoney1 (Fri, 04 Aug 2017 08:55:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6hXgru5oSGbKB7AJH) @CT123 no it doesn't - they are separate entities. the package.json name for the business network can only contain lowercase alphanumerics, _ or '-' no '.'
mahoney1 (Fri, 04 Aug 2017 08:55:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JGo6mAhz6zd5vEdo9) @germanhs hi there - suggest you download v1.0 Hyperledger dev environment .The use of Hyperledger Fabric 0.6 is now deprecated and not supported, we will be working to remove all code support for Hyperledger Fabric 0.6 within Composer. (Albeit our docs refer still to 0.6 at this deprecation level but this will be updated in due course) Please download a v1.0 dev environment as shown here (and remove the v0.6 dev docker containers) https://hyperledger.github.io/composer/installing/development-tools.html
germanhs (Fri, 04 Aug 2017 09:01:11 GMT):
still getting this error for the start rest server but this one:
germanhs (Fri, 04 Aug 2017 09:01:14 GMT):
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
germanhs (Fri, 04 Aug 2017 09:01:29 GMT):
@mahoney1 this organisation tag is my biggest issue
germanhs (Fri, 04 Aug 2017 09:05:26 GMT):
@mahoney1 I downloaded and installed hlfv1
germanhs (Fri, 04 Aug 2017 09:05:48 GMT):
startet the network with the Peeradmin randomString user
germanhs (Fri, 04 Aug 2017 09:09:59 GMT):
@mahoney1 tried out admin peeradmin both dont work as they are not Org1MSP and today is my last workday i just want to leave my colleagues with a running network :) your help would be really appreciated
mahoney1 (Fri, 04 Aug 2017 09:12:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9PeG9J5wyKMqbkBdo) @prmdmshra your client is out of date for basic-sample-network. I Also your generator-hyperledger-composer is 'up-level' (from yesterday's release) and different to current composer levels (v0.10.1) that you have installed. Suggest 1) `npm uninstall -g composer-cli composer-rest-server ` 2) `npm install -g composer-cli` 3) `npm install composer-rest-server` and 4) In that sample network dir, `rm -rf node_modules` and do an `npm install` 5) `docker rm
mahoney1 (Fri, 04 Aug 2017 09:12:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9PeG9J5wyKMqbkBdo) @prmdmshra your client is out of date for basic-sample-network. Also - your generator-hyperledger-composer is 'up-level' (from yesterday's release) and different to current composer levels (v0.10.1) that you have installed. Suggest 1) `npm uninstall -g composer-cli composer-rest-server ` 2) `npm install -g composer-cli` 3) `npm install composer-rest-server` and 4) In that sample network dir, `rm -rf node_modules` and do an `npm install` 5) `docker rm
mahoney1 (Fri, 04 Aug 2017 09:12:31 GMT):
@prmdmshra your client is out of date for basic-sample-network. Also - your generator-hyperledger-composer is 'up-level' (from yesterday's release) and different to current composer levels (v0.10.1) that you have installed. Suggest 1) `npm uninstall -g composer-cli composer-rest-server ` 2) `npm install -g composer-cli` 3) `npm install composer-rest-server` and 4) In that sample network dir, `rm -rf node_modules` and do an `npm install` 5) `docker rm
mahoney1 (Fri, 04 Aug 2017 09:12:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vK7wqLWDqpPdATH2Y) @germanhs cool - did you run createComposerProfile.sh ( if you installed the standard dev Fabric setup that is) - if "they are not Org1MSP" then you've changed the MSPid in your connection,json...or set up your own?
germanhs (Fri, 04 Aug 2017 09:18:04 GMT):
i ran it you want me to post the connection.json?
germanhs (Fri, 04 Aug 2017 09:18:28 GMT):
it contains mspID: Org1MSP
germanhs (Fri, 04 Aug 2017 09:19:47 GMT):
and my composer rest server command looks like this: composer-rest-server -p hlfv1 -n indiplat-network -i Peeradmin - s randomString -n "always" -p 3001 -S false 1> rest.log 2> rest_error.log &
mahoney1 (Fri, 04 Aug 2017 09:21:53 GMT):
to start the rest server its straightforward `composer-rest-server -p hlfv1 -n my-network -i admin -s adminpw` (example). So I'm guessing you've not deployed a business network yet. Yes please post your connection.json (its PeerAdmin by the way - maybe you knew that - and for network deploy / update - *only*)
mahoney1 (Fri, 04 Aug 2017 09:22:07 GMT):
no - not PeerAdmin.
germanhs (Fri, 04 Aug 2017 09:22:18 GMT):
i deployed the network with peeradmin
germanhs (Fri, 04 Aug 2017 09:22:59 GMT):
ah okay so which one to use for the rest server? (previously with hlfv0.6 i used the admin for both)
germanhs (Fri, 04 Aug 2017 09:22:59 GMT):
ah okay so which one to use for the rest server? (previously with hlfv0.6 i used the admin for both deploy and start rest server)
germanhs (Fri, 04 Aug 2017 09:23:41 GMT):
\[
"type": "hlfv1",
"orderers": [
{
"url": "grpc://localhost:7050"
}
],
"ca": {
"url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/home/fabricadmin/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}
]\
germanhs (Fri, 04 Aug 2017 09:23:41 GMT):
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://localhost:7050"
}
],
"ca": {
"url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/home/fabricadmin/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}
mahoney1 (Fri, 04 Aug 2017 09:24:13 GMT):
no - as I said - you use 'admin' (see the command I pasted)
germanhs (Fri, 04 Aug 2017 09:24:30 GMT):
when I use admin adminpw
germanhs (Fri, 04 Aug 2017 09:24:34 GMT):
i get the same error
germanhs (Fri, 04 Aug 2017 09:24:55 GMT):
as i said above i tried peeradmin, admin (with adminpw and the Xurw password)
germanhs (Fri, 04 Aug 2017 09:25:08 GMT):
but all return "identity is not in org1" error
Binay1 (Fri, 04 Aug 2017 09:25:39 GMT):
I've got an error here saying that my composer-rest-server and composer-cli are incompatible. Even though they are clearly not
Binay1 (Fri, 04 Aug 2017 09:25:46 GMT):
Message Attachments
Binay1 (Fri, 04 Aug 2017 09:26:23 GMT):
Message Attachments
germanhs (Fri, 04 Aug 2017 09:26:31 GMT):
@Binary check your package.json if it has a specific version as dependency (could be that globally you have same version but not locally)
prmdmshra (Fri, 04 Aug 2017 09:27:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9PeG9J5wyKMqbkBdo) @mahoney1
I think your response got deleted. Could you please suggest what components I need to update.
germanhs (Fri, 04 Aug 2017 09:28:05 GMT):
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
germanhs (Fri, 04 Aug 2017 09:28:14 GMT):
now ran with admin adminpw
Binay1 (Fri, 04 Aug 2017 09:28:44 GMT):
The composer-cli is set to latest
germanhs (Fri, 04 Aug 2017 09:30:16 GMT):
binary try npm upgrade composer -g
germanhs (Fri, 04 Aug 2017 09:30:23 GMT):
and then run agai
mahoney1 (Fri, 04 Aug 2017 09:33:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=maz57XQrdHwRLe7Th) @Binay1 1) `npm -g ls --depth=0` 2) don't use PeerAdmin here - docs say 'admin' https://hyperledger.github.io/composer/tutorials/developer-guide.html 3) your composer node_modules in your my-network dir are out of date. Why not (see earlier post) clean up per above (and have your env in synch).
Binay1 (Fri, 04 Aug 2017 09:46:11 GMT):
I've redeployed and used admin this time but still the same error
Binay1 (Fri, 04 Aug 2017 09:46:34 GMT):
Plus, I recently deleted the node modules folder and used npm install
gitSrinidhi (Fri, 04 Aug 2017 09:48:42 GMT):
Where exactly the business logio runs in Fabric 1.0 my-network example ? is part of modeling language or will it reside some where in fabric container as chain code ?
gitSrinidhi (Fri, 04 Aug 2017 09:48:42 GMT):
Where exactly the business logic runs in Fabric 1.0 my-network example ? is part of modeling language or will it reside some where in fabric container as chain code ?
gitSrinidhi (Fri, 04 Aug 2017 09:48:42 GMT):
Where exactly the business logic runs in Fabric 1.0 in my-network example ? is part of modeling language or will it reside some where in fabric container as chain code ?
mahoney1 (Fri, 04 Aug 2017 09:50:59 GMT):
@germanhs - can you run `npm -g ls --depth=0` firstly and paste output? And secondly a `docker ps -a` thanks
kmohanar (Fri, 04 Aug 2017 09:51:00 GMT):
Has joined the channel.
davidkel (Fri, 04 Aug 2017 09:56:20 GMT):
@DannyWong The Serializer.toJSON is not a generic serializer and is part of the composer API to serialize resources. That's why it throws an error if you try to pass in anything that isn't descended from a resource.
Binay1 (Fri, 04 Aug 2017 10:07:32 GMT):
How do I upgrade my composer runtime ?
czar0 (Fri, 04 Aug 2017 10:13:57 GMT):
hey there, I have upgraded my version of composer from `0.10.0` to `0.10.1`, but I see it breaks something with `PeerAdmin` authentication. Anyone else registering the same issue?
```
2017/08/02 16:20:44 [DEBUG] Received request
POST /api/v1/enroll
Authorization: Basic UGVlckFkbWluOmFkbWlucHc=
{"caName":"ca.example.com","certificate_request":"-----BEGIN CERTIFICATE REQUEST-----\r\nMIHPMHYCAQAwFDESMBAGA1UEAwwJUGVlckFkbWluMFkwEwYHKoZIzj0CAQYIKoZI\r\nzj0DAQcDQgAEGxlF00WwIeW9XQpooznDaRXMdXQupOcNn/vQQTmbAF8NX9HVwuwd\r\nUL2bO+Ns+C8rK3qPciKQNS5orsTea5EXWaAAMAwGCCqGSM49BAMCBQADRwAwRAIg\r\nStlmIo8z5jYm1XQJDybzb/MFIC1twIr9a+u7PX38dosCIDxemhg0XlFf9ZCWBgf5\r\nkEbHS6EXX0sLk6yeYuK/RDkO\r\n-----END CERTIFICATE REQUEST-----\r\n"}
2017/08/02 16:20:44 [DEBUG] Directing traffic to CA ca.example.com
2017/08/02 16:20:44 [DEBUG] DB: Getting identity PeerAdmin
2017/08/02 16:20:44 [DEBUG] Failed to get identity 'PeerAdmin': sql: no rows in result set
Composer:
Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
```
mahoney1 (Fri, 04 Aug 2017 10:26:44 GMT):
@prmdmshra @Binay1 a) your client in sample-network is out of date 2) your generator-hyperledger-composer is v0.11.0, your composer install level is 0.10.1 and c) your deployed network containers are at 0.10.1
1) Suggest to `docker rm
mahoney1 (Fri, 04 Aug 2017 10:26:44 GMT):
@prmdmshra @Binay1 a) your client in sample-network is out of date 2) your generator-hyperledger-composer is v0.11.0, your composer install level is 0.10.1 and c) your deployed network containers are at 0.10.1
1) Suggest to `docker rm
mahoney1 (Fri, 04 Aug 2017 10:32:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8NMTYg3QDJNjYZ55T) @Binay1 you won't be able to composer network upgrade to go from 0.10.1 to 0.11.0 using the upgrade command (the latter is a minor level change)
Binay1 (Fri, 04 Aug 2017 10:52:53 GMT):
@mahoney1 did everything you told me. Here's a screenshot
Binay1 (Fri, 04 Aug 2017 10:53:04 GMT):
Message Attachments
Binay1 (Fri, 04 Aug 2017 10:53:43 GMT):
But I still get this error
Binay1 (Fri, 04 Aug 2017 10:53:54 GMT):
Message Attachments
xuanyue202 (Fri, 04 Aug 2017 11:00:57 GMT):
@sstone1 Hi Simon, I read your new design about the identity and think there might be a problem for the current implementation. Currently hash(PEM.raw) is used as the Identifier. Such design fails to capture the use-case where user re-enrolls a certificate (the old one get expired) or enrolls multiple certificates at the same time (maxEnrollments!=1) and want to use a single identity to represent himself. Each time CA issues a new cert, the fields of Serial Number and potentially Valid From/To will change, which makes hash(PEM.raw) a different value. I am not sure why we do not simply use hash(Common Name, Issuer) as the identifier?
JeremyH (Fri, 04 Aug 2017 11:26:53 GMT):
Hi, I'm running a local instance of Hyperledger, does anyone know how I can deploy an updated .bna file (after deploying a previous version) without having to restart my whole instance? So for example, I have a deployed network, I'd like to make some modifications to the transaction .js script, and I'd like these to be reflected in the network. Is there a simple way to do this? Thanks
mahoney1 (Fri, 04 Aug 2017 11:34:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MdrcAxvcQYdPBvN4K) @Binay1 please post `docker ps -a ` thanks
Binay1 (Fri, 04 Aug 2017 11:43:56 GMT):
Message Attachments
Codegidi (Fri, 04 Aug 2017 12:02:32 GMT):
Has joined the channel.
Codegidi (Fri, 04 Aug 2017 12:04:33 GMT):
Hi! Am trying to implement a query function in the logic.js. I am not able to return values from the function. How do i do that? Is there an example of a query function in the logic.
davidkel (Fri, 04 Aug 2017 12:21:02 GMT):
@xuanyue202 thanks for the information. There was also discussion about using the SKI as the hash on a community call and I have raised a github issue to track your use cases as well
mahoney1 (Fri, 04 Aug 2017 12:30:31 GMT):
@Binay1 your chaincode containers are backlevel but more importantly your *Fabric* images are backlevel (its beta - see image you sent). You need to do a teardown.sh and then a downloadFabric,sh then a startFabric.sh - see this doc (link below) to get the latest fabric-tools (remove any previous editions of 'fabric-tools' in your image and go and get the LATEST images (using the curl command to get fabric-dev scripts from the link -> https://hyperledger.github.io/composer/installing/development-tools.html
mahoney1 (Fri, 04 Aug 2017 12:30:31 GMT):
@Binay1 your chaincode containers are backlevel but more importantly your *Fabric* images are backlevel (its beta - see image you sent). You need the *GA* edition Hyperledger Fabric docker images. You need to do a teardown.sh and then a downloadFabric,sh then a startFabric.sh - see this doc (link below) to get the latest fabric-tools (remove any previous editions of 'fabric-tools' in your image and go and get the LATEST images (using the curl command to get fabric-dev scripts from the link -> https://hyperledger.github.io/composer/installing/development-tools.html
mahoney1 (Fri, 04 Aug 2017 12:33:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9dqk9uZHTZ2cEESPN) @Codegidi yes see the docs for query example (tutorial). https://hyperledger.github.io . It has sample TP function code showing how queries return the result sets - in the function.. It also shows how to use REST with queries
mahoney1 (Fri, 04 Aug 2017 12:33:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9dqk9uZHTZ2cEESPN) @Codegidi yes see the docs for query example (tutorial). https://hyperledger.github.io . Also see query language it has examples. The tutorial also has sample TP function code showing how queries return the result sets - in the function.. It also shows how to use REST with queries
mahoney1 (Fri, 04 Aug 2017 12:39:32 GMT):
@here please ensure you are running with the latest Hyperledger Fabric images (GA editions) if you're not already that is - and that you have removed all backlevel Fabric images (RC1, beta levels - can be seen in docker ps -a) . Furthermore, please ensure your chaincode containers (from docker ps -a again) are the same level as the Composer levels you've installed - npm -g ls --depth=0` - currently we're at v0.11.0 as a general guide. If levels are not in synch, then please make sure they are at the same level (ie take appropriate action to get them in synch) - thank you.
DannyWong (Fri, 04 Aug 2017 13:05:40 GMT):
@davidkel I figured it out~ Thank you very much.
mahoney1 (Fri, 04 Aug 2017 13:20:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rg6pavtdFk8XRyNov) @JeremyH hi Jeremy - easy - once you've created your .bna archive file with the changes use `composer network update -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString` (as an example). It should then be available to use.
mna2016 (Fri, 04 Aug 2017 13:38:36 GMT):
Hi Team, I have installed hyperledger v1 on Ubuntu. followed all steps on this page https://hyperledger.github.io/composer/installing/development-tools.html - Now when I connect to "http://localhost:8080" I don't get the local playground running.
mna2016 (Fri, 04 Aug 2017 13:39:03 GMT):
What I am doing wrong. How Do I check?
mna2016 (Fri, 04 Aug 2017 13:42:14 GMT):
I have followed all the steps to get all prerequisites of hyperledger composer installed. I have started the fabric, created a composer profile, but still localhost:8080 does not work.
JeremyH (Fri, 04 Aug 2017 13:50:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=iLtWZ388CYJm9CYQb) @mna2016 Have you run the composer-rest-server command successfully?
mna2016 (Fri, 04 Aug 2017 13:59:37 GMT):
No. It seems none of the 2 pages mention this comand 1)https://hyperledger.github.io/composer/installing/using-playground-locally.html and 2) https://hyperledger.github.io/composer/installing/development-tools.html. Please correct me if I am not.
mna2016 (Fri, 04 Aug 2017 14:00:46 GMT):
Please let me know the complete command and what directory should I run it from? Thanks!
JeremyH (Fri, 04 Aug 2017 14:01:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=J6ARBhsTpi3eDnLTx) @mna2016 This is explained in the 'Developer Guide' link at the bottom of the development-tools article. https://hyperledger.github.io/composer/tutorials/developer-guide.html. I agree there is a lot to go through, but you'll get there eventually! :) I have been working on getting it all working for a few days now
mna2016 (Fri, 04 Aug 2017 14:08:09 GMT):
@JeremyH It seems a number of more steps need to be completed before I can run composer-rest-server command.Thanks for the quick reply.
ekivol (Fri, 04 Aug 2017 14:56:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=J6ARBhsTpi3eDnLTx) @mna2016 I believe that the workflow, at least the one I use, is to start up a fabric, then use composer archive create, then composer network deploy, then use composer-rest-server. Run composer archive create from the home directory of your app (wherever the package.json file is). As long as you specify the path to the bna file, it doesn't really matter where you run composer network deploy, and it does not matter at all where you run composer-rest-server.
mahoney1 (Fri, 04 Aug 2017 15:22:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=iLtWZ388CYJm9CYQb) @mna2016 apols for delay - had a fire alarm assembly ! Further down https://hyperledger.github.io/composer/installing/development-tools.html it mentions how to RUN a local playground `npm install -g composer-playground`. Did you manage to do that . To INSTALL a dockerized local Composer playground + Fabric its https://hyperledger.github.io/composer/installing/using-playground-locally.html
mna2016 (Fri, 04 Aug 2017 15:29:07 GMT):
I thinknk I did run "npm install -g composer-playground)
mna2016 (Fri, 04 Aug 2017 15:31:02 GMT):
i am running it again now. hope rerunning wont be an issue.
isramos (Fri, 04 Aug 2017 15:43:59 GMT):
Has joined the channel.
isramos (Fri, 04 Aug 2017 15:45:55 GMT):
How do I find the "businessNetworkIdentifier" for my running setup in Playground?
theophoric (Fri, 04 Aug 2017 15:48:05 GMT):
I think it's always set to `biz-acme-org`
theophoric (Fri, 04 Aug 2017 15:51:24 GMT):
** `org-acme-biznet`
isramos (Fri, 04 Aug 2017 15:52:41 GMT):
wow @theophoric that did it!!! thank sooo much!
theophoric (Fri, 04 Aug 2017 15:54:33 GMT):
np
theophoric (Fri, 04 Aug 2017 15:54:34 GMT):
I'
theophoric (Fri, 04 Aug 2017 15:58:19 GMT):
I'm trying to add a "dev/test/mock" mode to my client application and am following the same pattern that's used in the `basic-sample-network` test's `beforeEach()` block. The code is effectively identical (running from archive instead of directory but I've confirmed that this doesn't affect things) but I'm running into this error:
```
Error: Failed to load connector module "composer-connector-embedded" for connection profile "defaultProfile". Error: Must create ConnectionManager with a ConnectionProfileManager implementation.
```
on the line: `businessNetwork.connect(connectionProfile, businessNetwork, enrollmentID, enrollmentSecret);`,
theophoric (Fri, 04 Aug 2017 15:58:30 GMT):
Any suggestions?
mahoney1 (Fri, 04 Aug 2017 16:10:13 GMT):
@theophoric yes - update your package.json devDependencies with embedde module ```"composer-admin": "^0.9.0",
"composer-cli": "^0.9.0",
"composer-client": "^0.9.0",
"composer-connector-embedded": "^0.9.0", ``` then npm install and npm test etc
mahoney1 (Fri, 04 Aug 2017 16:10:13 GMT):
@theophoric yes - update your package.json devDependencies with embedded module ```"composer-admin": "^0.9.0",
"composer-cli": "^0.9.0",
"composer-client": "^0.9.0",
"composer-connector-embedded": "^0.9.0", ``` then npm install and npm test etc
theophoric (Fri, 04 Aug 2017 16:15:00 GMT):
Already have that in -- was barfing earlier on without it
uber.twin (Fri, 04 Aug 2017 16:36:38 GMT):
@mahoney1 hi, my "composer identity import" appears to have stopped working; my fabric is x86_64-1.0.0 and composer is v0.10.1
might the problem be the update to 0.10.1?
uber.twin (Fri, 04 Aug 2017 16:50:47 GMT):
@mahoney1 I just confirmed it. went back to composer 0.10.0 and the "composer identity import" works again
mahoney1 (Fri, 04 Aug 2017 18:57:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4cmasBeTq2P27zpqf) @uber.twin thanks for the info uber,twin - I've raised a defect https://github.com/hyperledger/composer/issues/1765 if you wish to add some logs or output please attach in the issue.
Raje (Fri, 04 Aug 2017 20:16:21 GMT):
When I am trying to Deploy to the running Hyperledger Fabric, it is giving me an error "Error: Failed to save connection profile hlfv1" . Can anyone help me on this?
theophoric (Fri, 04 Aug 2017 20:43:44 GMT):
@mahoney1 any other suggestions of what I might try?
sanjay-saxena (Fri, 04 Aug 2017 21:46:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=soxL4J6EiEGSq4Yt4) @Raje You can check whether you have write privileges for `~/.composer-connection-profiles/` directory. And, then execute `fabric-tools/createComposerProfile.sh` again.
Redscarfs (Sat, 05 Aug 2017 03:36:58 GMT):
Frozen
gen_el (Sat, 05 Aug 2017 09:11:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LSu7gpoAj6ADDgRYj) I had the same problem. Reverting back.
davidkel (Sat, 05 Aug 2017 09:28:00 GMT):
@here unfortunately composer identity import was broken in 0.10.1 and is still broken in 0.11.0. You need to use 0.10.0 for this command for now. It will be fixed in the next release. The easiest way I have found to manage this is if you are using nvm, install a slightly different level of node using nvm and install globally composer-cli@0.10.0 into this version of node, then you can use nvm to quickly switch between versions of composer-cli
coder-ajay (Sat, 05 Aug 2017 14:08:25 GMT):
Hi.. couple of queries related to participant creation and login:
1. Its mentioned in \[ https://hyperledger.github.io/composer/tutorials/developer-guide.html \] that participants cannot be created using Angular skeleton and needs to be created using Playground. I assume that _http://localhost:3000/explorer/_ is referred as Playground here rather than Bluemix… am I correct?
2. Any URL to guide on creation of login feature?
coder-ajay (Sat, 05 Aug 2017 14:08:25 GMT):
Hi.. couple of queries related to participant creation and login:
1. Its mentioned in _https://hyperledger.github.io/composer/tutorials/developer-guide.html_ that participants cannot be created using Angular skeleton and needs to be created using Playground. I assume that _http://localhost:3000/explorer/_ is referred as Playground here rather than Bluemix… am I correct?
2. Any URL to guide on creation of login feature?
jayhe (Sat, 05 Aug 2017 16:47:19 GMT):
Has joined the channel.
suvpatil (Sat, 05 Aug 2017 17:28:08 GMT):
HiTeam, I am not understood this error : returned x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com"..... I got this error while deploying network.
davidkel (Sat, 05 Aug 2017 18:46:08 GMT):
@suvpatil When you deploy you specify an id. That id will be associated with a public certificate (stored in the keyValStore directory of the connection profile) used to sign various requests sent to the fabric. The fabric is trying to verify that signature but can't as it doesn't recognise the authority that issued that certificate. The id's crypto material is not appropriate for the fabric it is trying to communicate with
davidkel (Sat, 05 Aug 2017 19:16:04 GMT):
@coder-ajay playground refers to our UI for examining, editting and testing various aspects of a business network. We host a simple version of it in bluemix, but it is more powerful if you install it locally. See
https://hyperledger.github.io/composer/installing/using-playground-locally.html
coder-ajay (Sat, 05 Aug 2017 20:03:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pzHmu9Nwv4GxfynTQ) @davidkel : Okay. So, can the participants created in this local playground environment be used in http://localhost:4200/ ? E.g. if I create vehicle sellers, buyers and govt registration authorities as participants in local playground, can these participants be used in the vehicle network application running locally on http://localhost:4200 ?
davidkel (Sat, 05 Aug 2017 22:14:55 GMT):
@coder-ajay Participants are created/displayed in the business network you are connected to. If playground and your application that is exposing access on http://localhost:4200 are connected to the same business network then both will know about those participants on that business network
mahoney1 (Sat, 05 Aug 2017 22:33:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=soxL4J6EiEGSq4Yt4) @Raje Connection profiles are saved to the ~/.composer-connection-profiles/ directory (where '~ '= $HOME) . Ensure that this is directory is writable.
mahoney1 (Sat, 05 Aug 2017 22:33:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=soxL4J6EiEGSq4Yt4) @Raje Connection profiles are saved to the '~/.composer-connection-profiles/' subdirectory (where '~ '= $HOME) . Ensure that this is directory is writable.
mahoney1 (Sat, 05 Aug 2017 22:33:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=soxL4J6EiEGSq4Yt4) @Raje Connection profiles are saved to the \~/.composer-connection-profiles/ directory (where '~ '= $HOME) . Ensure that this is directory is writable.
mahoney1 (Sat, 05 Aug 2017 22:33:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=soxL4J6EiEGSq4Yt4) @Raje Connection profiles are saved to the ~/.composer-connection-profiles/ directory (where '~ '= $HOME) . Ensure that this is directory is writable.
mahoney1 (Sat, 05 Aug 2017 23:01:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hKFDPMe7sCYWEEeaG) @theophoric would suggest to remove your node_modules directory in your custom network then try npm install followed by npm test. Let me know how it goes. I mean, does it also happen when you try out trade-network ('out of the box' as it were) when cloned as-is from https://github.com/hyperledger/composer-sample-network ( curious..)
mahoney1 (Sat, 05 Aug 2017 23:01:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hKFDPMe7sCYWEEeaG) @theophoric would suggest to remove your node_modules directory in your custom network then try npm install followed by npm test. Let me know how it goes. I mean, does it also happen when you try out trade-network ('out of the box' as it were) when cloned as-is from https://github.com/hyperledger/composer-sample-network ( curious..) - also an `npm -g ls --depth=0` would be interesting to see.
coder-ajay (Sun, 06 Aug 2017 05:13:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=r2v4wG6M9taLaksZM) @davidkel Ok. Great !! Thanks.
VickyWang (Sun, 06 Aug 2017 06:14:44 GMT):
composer 的原理是什么
coder-ajay (Sun, 06 Aug 2017 13:51:59 GMT):
Hi ... does ` composer identity issue ` (along with parameters) take considerable of time to execute? Its more than 2-3 mins and nothing is happening.
coder-ajay (Sun, 06 Aug 2017 13:51:59 GMT):
Hi ... does ` composer identity issue ` (along with parameters) take considerable of time to execute? Its more than 2-3 mins and nothing is happening. Clearly something is wrong.. but not sure what.
MohammadObaid (Sun, 06 Aug 2017 14:34:02 GMT):
Has joined the channel.
MohammadObaid (Sun, 06 Aug 2017 14:34:39 GMT):
Hey. Has anyone implmented fabric-composer on real different systems?
y204990 (Sun, 06 Aug 2017 16:24:33 GMT):
Has joined the channel.
jdockter (Sun, 06 Aug 2017 18:08:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2Wo9TJerBCKJ2JiPC) @mahoney1 Hey Paul, was the Aug. 3rd call recorded? Would like to hear more about the Historian.
scrdhrt (Sun, 06 Aug 2017 18:12:52 GMT):
Hey, I'm getting an error message in the playground I can't decipher. I know it has something to do with my model setup, but I can't figure out what to change. This is my model file: https://pastebin.com/09JjJ0R6 and this is my functions file: https://pastebin.com/z6xpCH0E. The error message says: t: Instance se.blockproof.myAsset#assetKey:0661 has property previousOwners with type se.blockproof.assetOwner that is not derived from se.blockproof.changeOwner[]
All pointers appreciated
jdockter (Sun, 06 Aug 2017 18:14:04 GMT):
@mahoney1 it seems like the current functionality for the Historian is just meant to be included in a transaction and then returns a list of HistorianRecords per this doc https://hyperledger.github.io/composer/reference/historian.html ? Also, for the ` --> Transaction transactionInvoked` will that allow me to see what data what changed via the transaction or just list the transaction ID?
coder-ajay (Mon, 07 Aug 2017 03:44:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=r2v4wG6M9taLaksZM) @davidkel :
1. Ok. I am writing code on the development environment rather than the playground. I created participants as suggested in https://hyperledger.github.io/composer/reference/composer.participant.add.html . Do I still need to install the playground environment and create participants in this environment? Sorry if this sounds silly question, but I am trying to understand why the participants needs to be created in playground environment when rest of the application is created in dev environment?
2. Meanwhile, I could successfully create participants as suggested in above URL. But not able to issue identity https://hyperledger.github.io/composer/managing/identity-issue.html. When I run the command ` composer identity issue .... `, nothing happens.
3. Also, once the users are created, how can run my angular application using different users? They have different operational authorities like 'ALL' and 'READ'.
coder-ajay (Mon, 07 Aug 2017 03:44:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=r2v4wG6M9taLaksZM) @davidkel :
1. Ok. I am writing code on the development environment rather than the playground. I created participants as suggested in https://hyperledger.github.io/composer/reference/composer.participant.add.html . Do I still need to install the playground environment and create participants in this environment? Sorry if this sounds silly question, but I am trying to understand why the participants needs to be created in playground environment when rest of the application is created in dev environment?
2. Meanwhile, I could successfully create participants as suggested in above URL. But not able to issue identity https://hyperledger.github.io/composer/managing/identity-issue.html. When I run the command ` composer identity issue .... `, nothing happens.
3. Also, once the users are created, how can run my angular application using different users? They have different operational authorities like 'ALL' and 'READ'.
coder-ajay (Mon, 07 Aug 2017 03:44:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=r2v4wG6M9taLaksZM) @davidkel :
1. Ok. I am writing code on the development environment rather than the playground. I created participants as suggested in https://hyperledger.github.io/composer/reference/composer.participant.add.html . Do I still need to install the playground environment and create participants in this environment? Sorry if this sounds silly question, but I am trying to understand why the participants needs to be created in playground environment when rest of the application is created in dev environment?
Is it okay to install playground locally in the same folder where the dev environment is running?
2. Meanwhile, I could successfully create participants as suggested in above URL. But not able to issue identity https://hyperledger.github.io/composer/managing/identity-issue.html. When I run the command ` composer identity issue .... `, nothing happens.
3. Also, once the users are created, how can run my angular application using different users? They have different operational authorities like 'ALL' and 'READ'.
baoyangc (Mon, 07 Aug 2017 05:03:37 GMT):
in composer-cli@v0.11.0, how can we deploy an bna file to avoid the chaincode is instantiate in multi peers?
baoyangc (Mon, 07 Aug 2017 05:05:26 GMT):
with `composer runtime install`->`composer network update`-> `composer network start`?
coder-ajay (Mon, 07 Aug 2017 05:07:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PKBnWmZm85728X5pb) @mdanaci : Hi ... did you get chance to implement this feature? Did you make a separate model 'AssetHistory'?
suvpatil (Mon, 07 Aug 2017 06:21:21 GMT):
@davidkel so can I create user from Fabric ca and use that user id while deplyoing? instead of generating crypto materials!!!
ztanaka1971 (Mon, 07 Aug 2017 06:44:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uYS8EBZZWQL6KLGbP) @mna2016 Hi, I also followed procedure in "https://hyperledger.github.io/composer/installing/development-tools.html". I need to start composer-playground
ztanaka1971 (Mon, 07 Aug 2017 06:47:59 GMT):
c [ ](https://chat.hyperledger.org/channel/composer?msg=uYS8EBZZWQL6KLGbP) @mna2016 Hi, I also followed procedure in "https://hyperledger.github.io/composer/installing/development-tools.html". I need to start composer-playground by running "composer-playground" from shell prompt. Now I can open "http://localhot:8080", but I got error "Error: error trying to setup a keystore path. EACCES" on browser, and following error in output of composer-playground.
`HLFConnectionManager :_setupWallet() !! _setupWallet, EACCES
HLFConnectionManager :connect() !! connect, {"stack":["{Error}error trying to setup a keystore path. EACCES Error: error trying to setup a keystore path. EACCES"," at Client.newDefaultKeyValueStore.then.catch (/home/htanaka/.nvm/versions/node/v6.11.2/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnectionmanager.js:337:36)"," at process._tickCallback (internal/process/next_tick.js:109:7)"]}
ConnectorServer :Error: error trying to setup a keystore path. EACCES() !! {"stack":["{Error}error trying to setup a keystore path. EACCES Error: error trying to setup a keystore path. EACCES"," at Client.newDefaultKeyValueStore.then.catch (/home/htanaka/.nvm/versions/node/v6.11.2/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnectionmanager.js:337:36)"," at process._tickCallback (internal/process/next_tick.js:109:7)"]}`
ztanaka1971 (Mon, 07 Aug 2017 06:47:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uYS8EBZZWQL6KLGbP) @mna2016 Hi, I also followed procedure in "https://hyperledger.github.io/composer/installing/development-tools.html". I need to start composer-playground by running "composer-playground" from shell prompt. Now I can open "http://localhot:8080", but I got error "Error: error trying to setup a keystore path. EACCES" on browser, and following error in output of composer-playground.
`HLFConnectionManager :_setupWallet() !! _setupWallet, EACCES
HLFConnectionManager :connect() !! connect, {"stack":["{Error}error trying to setup a keystore path. EACCES Error: error trying to setup a keystore path. EACCES"," at Client.newDefaultKeyValueStore.then.catch (/home/htanaka/.nvm/versions/node/v6.11.2/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnectionmanager.js:337:36)"," at process._tickCallback (internal/process/next_tick.js:109:7)"]}
ConnectorServer :Error: error trying to setup a keystore path. EACCES() !! {"stack":["{Error}error trying to setup a keystore path. EACCES Error: error trying to setup a keystore path. EACCES"," at Client.newDefaultKeyValueStore.then.catch (/home/htanaka/.nvm/versions/node/v6.11.2/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnectionmanager.js:337:36)"," at process._tickCallback (internal/process/next_tick.js:109:7)"]}`
ztanaka1971 (Mon, 07 Aug 2017 06:47:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uYS8EBZZWQL6KLGbP) @mna2016 Hi, I also followed procedure in "https://hyperledger.github.io/composer/installing/development-tools.html". I need to start composer-playground by running "composer-playground" from shell prompt. Now I can open "http://localhot:8080", but I got error "Error: error trying to setup a keystore path. EACCES" on browser, and following error in output of composer-playground.
```HLFConnectionManager :_setupWallet() !! _setupWallet, EACCES
HLFConnectionManager :connect() !! connect, {"stack":["{Error}error trying to setup a keystore path. EACCES Error: error trying to setup a keystore path. EACCES"," at Client.newDefaultKeyValueStore.then.catch (/home/htanaka/.nvm/versions/node/v6.11.2/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnectionmanager.js:337:36)"," at process._tickCallback (internal/process/next_tick.js:109:7)"]}
ConnectorServer :Error: error trying to setup a keystore path. EACCES() !! {"stack":["{Error}error trying to setup a keystore path. EACCES Error: error trying to setup a keystore path. EACCES"," at Client.newDefaultKeyValueStore.then.catch (/home/htanaka/.nvm/versions/node/v6.11.2/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnectionmanager.js:337:36)"," at process._tickCallback (internal/process/next_tick.js:109:7)"]}```
ztanaka1971 (Mon, 07 Aug 2017 06:47:59 GMT):
@mna2016 Hi, I also followed procedure in "https://hyperledger.github.io/composer/installing/development-tools.html". I need to start composer-playground by running "composer-playground" from shell prompt. Now I can open "http://localhot:8080", but I got error "Error: error trying to setup a keystore path. EACCES" on browser, and following error in output of composer-playground.
```HLFConnectionManager :_setupWallet() !! _setupWallet, EACCES
HLFConnectionManager :connect() !! connect, {"stack":["{Error}error trying to setup a keystore path. EACCES Error: error trying to setup a keystore path. EACCES"," at Client.newDefaultKeyValueStore.then.catch (/home/htanaka/.nvm/versions/node/v6.11.2/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnectionmanager.js:337:36)"," at process._tickCallback (internal/process/next_tick.js:109:7)"]}
ConnectorServer :Error: error trying to setup a keystore path. EACCES() !! {"stack":["{Error}error trying to setup a keystore path. EACCES Error: error trying to setup a keystore path. EACCES"," at Client.newDefaultKeyValueStore.then.catch (/home/htanaka/.nvm/versions/node/v6.11.2/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnectionmanager.js:337:36)"," at process._tickCallback (internal/process/next_tick.js:109:7)"]}```
davidkel (Mon, 07 Aug 2017 06:49:43 GMT):
@suvpatil not easily. The fabric has to already have the crypto material to know who are the admin users. You then deploy (install/start) using those admin users.
davidkel (Mon, 07 Aug 2017 06:51:03 GMT):
@baoyangc use 1 connection profile to install to all the peers, use another connection profile (with a single peer) to perform the start
ztanaka1971 (Mon, 07 Aug 2017 07:01:24 GMT):
Hi, I'm following this guide, and it almost works fine.
>Developer Tutorial for creating a Hyperledger Composer solution
>https://hyperledger.github.io/composer/tutorials/developer-guide.html
But Skeleton Web Application doesn't work well. When I open http://localhost:4200, I got following error in Web browser. I appreciate any advice/comment to solve this error.
`Error: Could not connect to REST server. Please check your configuration details`
ztanaka1971 (Mon, 07 Aug 2017 07:01:24 GMT):
Hi, I'm following this guide, and it almost works fine.
>Developer Tutorial for creating a Hyperledger Composer solution
>https://hyperledger.github.io/composer/tutorials/developer-guide.html
But Skeleton Web Application doesn't work well. When I open http://localhost:4200, I got following error in Web browser. I will appreciate any advice/comment to solve this error.
`Error: Could not connect to REST server. Please check your configuration details`
dklesev (Mon, 07 Aug 2017 07:05:35 GMT):
@ztanaka1971 have you started the rest-server?
dklesev (Mon, 07 Aug 2017 07:06:14 GMT):
`composer-rest-server`
ztanaka1971 (Mon, 07 Aug 2017 07:08:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jDL9Y2ZN5b5q4kehS) @dklesev I can see REST server GUI on "http://localhost:3000/explorer/", so I think rest-server is running.
ztanaka1971 (Mon, 07 Aug 2017 07:09:01 GMT):
@ztanaka1971 Test
dklesev (Mon, 07 Aug 2017 07:11:12 GMT):
then check your configuration if you've set the right port. relaunch the web-app.
coder-ajay (Mon, 07 Aug 2017 07:44:50 GMT):
Is it okay to install local playground in the same directory where the dev environment application is running?
ThomasBouquet (Mon, 07 Aug 2017 07:50:22 GMT):
Hi every body ! I am trying to run hyperledger composer on top of hyperleger fabric with multiples peers, organisations. When I deploy my.bna I face this issue : thomas@thomas-VirtualBox:~/Desktop/my-network/dist$ sudo composer network deploy -a my-network.bna -p hlfv1_Org1 -i Org1PeerAdmin -s adminpw
[sudo] password for thomas:
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My very first Hyperledger Composer Network
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: Connect Failed
Command failed
ThomasBouquet (Mon, 07 Aug 2017 07:51:18 GMT):
I have this connection.json :
ThomasBouquet (Mon, 07 Aug 2017 07:51:21 GMT):
{
"type": "hlfv1",
"orderers": [
{
"url": "grpcs://localhost:7050",
"cert": "-----BEGIN CERTIFICATE-----\nMIICLzCCAdWgAwIBAgIQFE/jN/oKKt2CgVh0ecLIADAKBggqhkjOPQQDAjBpMQsw\nCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuI$
}
],
"ca": {
"url": "https://localhost:7054",
"name": "ca_peerOrg1",
"verify": false
},
"peers": [
{
"requestURL": "grpcs://localhost:7051",
"eventURL": "grpcs://localhost:7053",
"cert": "-----BEGIN CERTIFICATE-----\nMIICGTCCAb+gAwIBAgIQWbOoxyh8ebtI8xVQjVatSDAKBggqhkjOPQQDAjBzMQsw\nCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuI$
},
{
"requestURL": "grpcs://localhost:8051",
"eventURL": "grpcs://localhost:8053",
"cert": "-----BEGIN CERTIFICATE-----\nMIICGTCCAb+gAwIBAgIQV3aT/EF5psF56bC2tbJRKzAKBggqhkjOPQQDAjBzMQsw\nCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuI$
}
],
"keyValStore": "/home/thomas/.composer-credentials",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": 300,
"globalcert": "",
"maxSendSize": -1,
"maxRecvSize": -1
}
ThomasBouquet (Mon, 07 Aug 2017 07:51:47 GMT):
And when I write : docker ps -a I have this :
ThomasBouquet (Mon, 07 Aug 2017 07:52:13 GMT):
thomas@thomas-VirtualBox:~/Desktop/fabric-samples/first-network$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
64ea1560e9fb hyperledger/fabric-tools "/bin/bash -c './s..." 8 minutes ago Exited (1) 7 minutes ago cli
8f4879f4f004 hyperledger/fabric-ca "sh -c 'fabric-ca-..." 8 minutes ago Up 8 minutes 0.0.0.0:7054->7054/tcp ca_peerOrg1
762f2eaaeaa7 hyperledger/fabric-couchdb "tini -- /docker-e..." 8 minutes ago Up 8 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
a042e1bd753b hyperledger/fabric-peer "peer node start" 8 minutes ago Up 8 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
818ff2bee934 hyperledger/fabric-couchdb "tini -- /docker-e..." 8 minutes ago Up 8 minutes 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
f21b7d003d8e hyperledger/fabric-ca "sh -c 'fabric-ca-..." 8 minutes ago Up 8 minutes 0.0.0.0:8054->7054/tcp ca_peerOrg2
49097278cc2c hyperledger/fabric-couchdb "tini -- /docker-e..." 9 minutes ago Up 8 minutes 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
7bdc4cabf79f hyperledger/fabric-orderer "orderer" 9 minutes ago Up 8 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
9e43e076b226 hyperledger/fabric-peer "peer node start" 9 minutes ago Up 8 minutes 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
a0d8747d57cf hyperledger/fabric-peer "peer node start" 9 minutes ago Up 8 minutes 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
2304f269602c hyperledger/fabric-peer "peer node start" 9 minutes ago Up 8 minutes 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
9b3314b8a9e0 hyperledger/fabric-couchdb "tini -- /docker-e..." 9 minutes ago Up 8 minutes 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
dklesev (Mon, 07 Aug 2017 07:54:18 GMT):
@ThomasBouquet sudo may be the problem
ThomasBouquet (Mon, 07 Aug 2017 07:56:02 GMT):
If I don't use sudo I have this eror : thomas@thomas-VirtualBox:~/Desktop/my-network/dist$ composer network deploy -a my-network.bna -p hlfv1_Org1 -i Org1PeerAdmin -s randomString
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My very first Hyperledger Composer Network
Error: Failed to save connection profile hlfv1_Org1
Command failed
ThomasBouquet (Mon, 07 Aug 2017 07:56:10 GMT):
It instantly stop to work
mna2016 (Mon, 07 Aug 2017 07:58:17 GMT):
Hi Team, i am on the "npm test" step of running local hyperledger playground. npm tests passes initial few steps but later on giving eror message "Type NotFoundException: Namespace is not definedfor type org.acme.sample.SampleParticipant".
dklesev (Mon, 07 Aug 2017 07:58:37 GMT):
@ThomasBouquet run `ls -la ~/.composer-connection-profiles/` please
ThomasBouquet (Mon, 07 Aug 2017 07:59:09 GMT):
total 16
drwxr-xr-x 4 root root 4096 août 7 09:29 .
drwxr-xr-x 26 thomas thomas 4096 août 7 09:42 ..
drwxr-xr-x 2 root root 4096 août 7 09:29 hlfv1_Org1
drwxr-xr-x 2 root root 4096 août 7 09:29 hlfv1_Org2
ThomasBouquet (Mon, 07 Aug 2017 07:59:13 GMT):
I have that
dklesev (Mon, 07 Aug 2017 07:59:40 GMT):
`sudo chown -R thomas:thomas ~/.composer-connection-profiles/`
dklesev (Mon, 07 Aug 2017 07:59:52 GMT):
and try again
ThomasBouquet (Mon, 07 Aug 2017 08:00:04 GMT):
I have nothing with this command
dklesev (Mon, 07 Aug 2017 08:00:41 GMT):
root owns your user dirs, which is not correct
dklesev (Mon, 07 Aug 2017 08:00:50 GMT):
just run the command I pasted
ThomasBouquet (Mon, 07 Aug 2017 08:01:38 GMT):
I did it but it returns nothing
ThomasBouquet (Mon, 07 Aug 2017 08:02:15 GMT):
Message Attachments
dklesev (Mon, 07 Aug 2017 08:02:32 GMT):
if you look on the result of ls -la the rights should have changed to thomas:thomas. now you can try running composer again
ThomasBouquet (Mon, 07 Aug 2017 08:03:59 GMT):
I have another error now
ThomasBouquet (Mon, 07 Aug 2017 08:04:02 GMT):
sudo chown -R thomas:thomas ~/.composer-connection-profiles/
ThomasBouquet (Mon, 07 Aug 2017 08:04:21 GMT):
It seems that it is a right issue
ThomasBouquet (Mon, 07 Aug 2017 08:04:34 GMT):
thomas@thomas-VirtualBox:~/.composer-connection-profiles/hlfv1_Org1$ cd ~/Desktop/my-network/dist/
thomas@thomas-VirtualBox:~/Desktop/my-network/dist$ composer network deploy -a my-network.bna -p hlfv1_Org1 -i Org1PeerAdmin -s adminpw
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My very first Hyperledger Composer Network
Error: error trying login and get user Context. Error: EACCES: permission denied, open '/home/thomas/.composer-credentials/65ca85a5fdb9fc64d5aad70a99bac213e80b221f5cf481e01e095d14b726b0a4-pub'
Command failed
ThomasBouquet (Mon, 07 Aug 2017 08:22:59 GMT):
I have this issue :
ThomasBouquet (Mon, 07 Aug 2017 08:23:10 GMT):
thomas@thomas-VirtualBox:~/Desktop/my-network/dist$ composer network deploy -a my-network.bna -p hlfv1_Org1 -i Org1PeerAdmin -s adminpw
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.0.1
Description: My very first Hyperledger Composer Network
✖ Deploying business network definition. This may take a minute...
Error: error trying deploy. Error: error trying install chaincode. Error: Endpoint read failed
Command failed
ztanaka1971 (Mon, 07 Aug 2017 08:37:26 GMT):
@ztanaka1971 Problem resolved by updating "src/app/configuration.ts". I changed localhost to actual IP address. I'm not sure why it works ...
davidkel (Mon, 07 Aug 2017 08:50:56 GMT):
@ThomasBouquet do this command first, then re-run your deploy.
`export GRPC_VERBOSITY=DEBUG`
It will give you more information about the problem, but I suspect it is a problem with the certificates you have defined in your connection profile
mahoney1 (Mon, 07 Aug 2017 09:50:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6JXdHxDimKmKg7ak7) @VickyWang see here -> https://www.youtube.com/watch?v=kI30R9iIUWs for an intro and purpose
mahoney1 (Mon, 07 Aug 2017 09:52:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Tihz4DojKNkDry7oL) @coder-ajay have you checked your Fabric is up and running - use the composer network ping or list cmd to test your network.
coder-ajay (Mon, 07 Aug 2017 09:56:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PeKmxRF6DjK9jda75) @mahoney1 : I run ` composer network list ` with relevant options. Its showing command succeeded.
coder-ajay (Mon, 07 Aug 2017 09:56:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PeKmxRF6DjK9jda75) @mahoney1 : I run ` composer network list ` with relevant options. Its showing command succeeded.
For ` composer network ping ` with relevant options, its giving below response:
The connection to the network was successfully tested: cph-application
version: 0.9.1
participant:
mahoney1 (Mon, 07 Aug 2017 09:56:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GY47spf5o24cF7t32) @MohammadObaid http://www.nasdaq.com/article/analysis-spoilt-for-choice-enterprise-distributed-ledgers-part-one-cm771127 more info
mahoney1 (Mon, 07 Aug 2017 09:58:53 GMT):
@jdockter normally posted here -> https://drive.google.com/drive/folders/0B_NJV6eJXAA1b25MdHlXdkM0LWc not seen the Aug 3rd recording as of yet (its auto-recorded normally and copied to this Drive)
suvpatil (Mon, 07 Aug 2017 10:13:45 GMT):
@davidkel so how did i know that admin users? how can i deep drive that......
prmdmshra (Mon, 07 Aug 2017 10:26:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Q8xLWq4FfkMwuRnZL) @mahoney1
I tried uninstalling and deploying a new sample network. But, the same error is displayed on executing 'yo hyperledger-composer' :-(
events.js:160
throw er; // Unhandled 'error' event
^
Error: error trying to ping. Error: Deployed chain-code (0.11.0) is incompatible with client (0.9.0)
at queryChainCode.then.catch (/usr/lib/node_modules/generator-hyperledger-composer/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:666:34)
mahoney1 (Mon, 07 Aug 2017 10:32:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NeAixmErqE6QdQtep) @jdockter will have the transaction object for the transaction invoked. Relationship is just like that to Participant or Identity in Historian .
mahoney1 (Mon, 07 Aug 2017 10:36:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7HXcwacWkdL8Xdzpa) @coder-ajay hi there - you can do either (your cmd but playground is probably easier) - suggested use of playground is because you can connect (using the hlfv1 connection profile - that you define in playground) to connect your SAME running Fabric environment. Creating participants,especially if you're creating quite a few (or other items like identities, assets blah blah) through playground, while connected to your runtime, makes life easier
mahoney1 (Mon, 07 Aug 2017 10:39:14 GMT):
@coder-ajay install playground locally -> `npm install -g composer-playground` and launch in the browser in your dev environment. Don't install the docker-based playground in your current environment (which is here -> https://hyperledger.github.io/composer/installing/using-playground-locally.html) as it stands up its own Hyperledger Fabric and you've already got one !
coder-ajay (Mon, 07 Aug 2017 11:01:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZFtLPzKwCae4Ty2Pc) @mahoney1 Ok. Trying it.
mahoney1 (Mon, 07 Aug 2017 11:02:27 GMT):
@ztanaka1971 EACCES usually means 'permission denied' - did you perhaps do a previous install of composer as sudo or root ? What OS / version are you using ? Thanks
coder-ajay (Mon, 07 Aug 2017 11:09:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZFtLPzKwCae4Ty2Pc) @mahoney1 composer-playground installed successfully. But I didn't completely understand what it means by: 'and launch in the browser in your dev environment'.
coder-ajay (Mon, 07 Aug 2017 11:09:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZFtLPzKwCae4Ty2Pc) @mahoney1 composer-playground installed successfully. But I didn't completely understand what it means by: 'and launch in the browser in your dev environment'. Are you suggesting to run `npm start ` and the hit http://localhost:8080/ ?
mahoney1 (Mon, 07 Aug 2017 11:20:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LNqmAhEwjFYob7vuF) @ThomasBouquet aside from the issues you may have with your certificates (mentioned previously) - looks like you've installed the Fabric runtime (including creating connection profiles) using sudo or root. You may even have installed composer modules as sudo. Both of these are wrong if so. https://hyperledger.github.io/composer/installing/development-tools.html
mahoney1 (Mon, 07 Aug 2017 11:33:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RXRYfocE4K4syJcrM) @mna2016 do you mean npm test for your sample network ? Did you change it - you can send me a BNA file direct, can examine. You shouldn't be getting this error for standard sample basically
mna2016 (Mon, 07 Aug 2017 11:34:31 GMT):
Yes I am indeed working on sample network.
mna2016 (Mon, 07 Aug 2017 11:35:03 GMT):
@mahoney1 i will send the bna file to you(let me find it first :) )
mahoney1 (Mon, 07 Aug 2017 11:35:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3cffzpaWnTA4eNgAC) @mna2016 it probably didn't create it as its broken -) - but you can send me the artifacts.
mahoney1 (Mon, 07 Aug 2017 11:35:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3cffzpaWnTA4eNgAC) @mna2016 it probably didn't create it as its broken -) - but you can send me the artifacts. From CTO and js I can compare.
ThomasBouquet (Mon, 07 Aug 2017 11:35:44 GMT):
Hey, how can I create the credentials needed by the composer to work with the fabric ?
ThomasBouquet (Mon, 07 Aug 2017 11:35:45 GMT):
:)
mahoney1 (Mon, 07 Aug 2017 11:39:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vopgcF4wA2KaJZwSW) @ThomasBouquet run somewhere (as non-root, not as sudo) `mkdir ~/fabric-tools && cd ~/fabric-tools
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip` and then `cd fabric-tools` Now you can run `./createComposerProfile.sh` to get admin credentials if that's what you want to do.
mahoney1 (Mon, 07 Aug 2017 11:39:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vopgcF4wA2KaJZwSW) @ThomasBouquet run somewhere (as non-root, not as sudo) eg. `mkdir $HOME/fabric-tools && cd ~/fabric-tools
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip` and then `cd fabric-tools` Now you can run `./createComposerProfile.sh` to get admin credentials if that's what you want to do.
mahoney1 (Mon, 07 Aug 2017 11:39:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vopgcF4wA2KaJZwSW) @ThomasBouquet run somewhere (as non-root, not as sudo) eg. `mkdir $HOME/fabric-tools && cd ~/fabric-tools` then `curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip` then
`unzip fabric-dev-servers.zip` and then `cd fabric-tools` Now you can run `./createComposerProfile.sh` to get admin credentials if that's what you want to do.
ThomasBouquet (Mon, 07 Aug 2017 11:48:10 GMT):
Thank you for your answer but I want to generate the credentials with composer identity import
DannyWong (Mon, 07 Aug 2017 11:50:19 GMT):
For the composer query, how do I write a query to "SELECT Child WHERE child.parent = $(parentId)"
asset Parent identified by parentId {
o String parentId
}
asset Child identified by childId {
o String childId
--> Parent parent
}
DannyWong (Mon, 07 Aug 2017 11:50:19 GMT):
For the composer query, how do I write a query to "SELECT Child WHERE child.parent = $(parentId)"
```
asset Parent identified by parentId {
o String parentId
}
asset Child identified by childId {
o String childId
--> Parent parent
}
```
ThomasBouquet (Mon, 07 Aug 2017 11:58:58 GMT):
@mahoney1 How can I use 'composer identity import' to create the credentials ?
mna2016 (Mon, 07 Aug 2017 12:07:30 GMT):
Message Attachments
mna2016 (Mon, 07 Aug 2017 12:07:57 GMT):
@mahoney1 please see sample composer network.txt
mna2016 (Mon, 07 Aug 2017 12:08:41 GMT):
i have pasted lib/sample.js, test/sample.js, cto file, package.json in a single text file.
hancockp (Mon, 07 Aug 2017 12:10:10 GMT):
@ThomasBouquet as far as I can tell you don't create the credentials with that command. the documentation at https://hyperledger.github.io/composer/reference/composer.identity.import.html says
"The composer identity import command imports peer admin identities from a running instance of Hyperledger Fabric into a defined keyValStore. These admin identities can then be used to deploy business networks to that peer."
ThomasBouquet (Mon, 07 Aug 2017 12:14:35 GMT):
Then how do you create the credentials ?
mahoney1 (Mon, 07 Aug 2017 12:15:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jCTLfcSDfLy4kZLxi) @ThomasBouquet the 'import' command doesn't 'generate' credentials, it imports fabric peer admin identities - see command here -> https://hyperledger.github.io/composer/reference/composer.identity.import.html - But do note that you will have to wait for the new release build later today (eg 0.11.1) to fix - or use the suggestion shown here: `an issue identified in the current (0.11.0) per this note on Friday `unfortunately composer identity import was broken in 0.10.1 and is still broken in 0.11.0. You need to use 0.10.0 for this command for now. It will be fixed in the next release. The easiest way I have found to manage this is if you are using nvm, install a slightly different level of node using nvm and install globally composer-cli@0.10.0 into this version of node, then you can use nvm to quickly switch between versions of composer-cli`
mahoney1 (Mon, 07 Aug 2017 12:15:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jCTLfcSDfLy4kZLxi) @ThomasBouquet the 'import' command doesn't 'generate' credentials, it imports fabric peer admin identities - see command here -> https://hyperledger.github.io/composer/reference/composer.identity.import.html - But do note that you will have to wait for the new release build later today (eg 0.11.1) to fix an issue in current (0.11.0) level - or use the suggestion shown here: `an issue identified in the current (0.11.0) per this note on Friday `unfortunately composer identity import was broken in 0.10.1 and is still broken in 0.11.0. You need to use 0.10.0 for this command for now. It will be fixed in the next release. The easiest way I have found to manage this is if you are using nvm, install a slightly different level of node using nvm and install globally composer-cli@0.10.0 into this version of node, then you can use nvm to quickly switch between versions of composer-cli`
mahoney1 (Mon, 07 Aug 2017 12:15:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jCTLfcSDfLy4kZLxi) @ThomasBouquet the 'import' command doesn't 'generate' credentials, it imports fabric peer admin identities - see command here -> https://hyperledger.github.io/composer/reference/composer.identity.import.html - But do note that you will have to wait for the new release build later today (eg 0.11.1) to fix an issue in current (0.11.0) level - or use the suggestion shown here: an issue identified in the current (0.11.0) per this note last Friday `unfortunately composer identity import was broken in 0.10.1 and is still broken in 0.11.0. You need to use 0.10.0 for this command for now. It will be fixed in the next release. The easiest way I have found to manage this is if you are using nvm, install a slightly different level of node using nvm and install globally composer-cli@0.10.0 into this version of node, then you can use nvm to quickly switch between versions of composer-cli`
ThomasBouquet (Mon, 07 Aug 2017 12:18:06 GMT):
@mahoney1 Ok thank you a lot, I had version 0.9 before and it was working. I didn't understant why it was not working any more
mahoney1 (Mon, 07 Aug 2017 12:18:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xjCBK8pw54LHDWDJo) @ThomasBouquet ..y/welcome..
ThomasBouquet (Mon, 07 Aug 2017 12:20:13 GMT):
How can I install version 0.10 with nvm ?
mahoney1 (Mon, 07 Aug 2017 12:26:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4MgzgrinQcJ6zAo5L) @ThomasBouquet you install the a slightly different version of ....node..with.. nvm - this link might be useful https://davidwalsh.name/nvm . Then, if you do go down that route, you would install composer-cli@0.10.0
mahoney1 (Mon, 07 Aug 2017 12:26:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4MgzgrinQcJ6zAo5L) @ThomasBouquet you install a slightly different version of ....node..with.. nvm - this link might be useful https://davidwalsh.name/nvm . Then, if you do go down that route, you would install composer-cli@0.10.0
mahoney1 (Mon, 07 Aug 2017 12:28:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jGTrZv2DqzT6NG7A3) @coder-ajay after installing using npm - it should be running (and yes, launch with the URL @ port:8080)
mahoney1 (Mon, 07 Aug 2017 12:30:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EaETBpgg5v2SjLjsc) @mna2016 update your package.json (for the stanza in question it should be: ```"name": "my-network",
"version": "0.0.1",
"description": "My very first Hyperledger Composer Network",
"scripts": {
"prepublish": "mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna",
"pretest": "npm run lint",
"lint": "eslint .",
"postlint": "npm run licchk",
"licchk": "license-check",
"postlicchk": "npm run doc",
"doc": "jsdoc --pedantic --recurse -c jsdoc.conf",
"test-inner": "mocha --recursive && cucumber-js",
"test-cover": "nyc npm run test-inner",
"test": "mocha --recursive -t 4000"
},``` think the npm test error you're seeing is a cucumber test - this needs to be updated (sample.features). Use this package.json
mahoney1 (Mon, 07 Aug 2017 12:30:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EaETBpgg5v2SjLjsc) @mna2016 update your package.json (for the stanza in question it should be): ```"name": "my-network",
"version": "0.0.1",
"description": "My very first Hyperledger Composer Network",
"scripts": {
"prepublish": "mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna",
"pretest": "npm run lint",
"lint": "eslint .",
"postlint": "npm run licchk",
"licchk": "license-check",
"postlicchk": "npm run doc",
"doc": "jsdoc --pedantic --recurse -c jsdoc.conf",
"test-inner": "mocha --recursive && cucumber-js",
"test-cover": "nyc npm run test-inner",
"test": "mocha --recursive -t 4000"
},``` think the npm test error you're seeing is a cucumber test - this needs to be updated (sample.features). Use this package.json
DannyWong (Mon, 07 Aug 2017 12:36:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ke2NqLMQEQ99enKGC) @here anyone?
mahoney1 (Mon, 07 Aug 2017 12:37:52 GMT):
@prmdmshra composer-client issue - its backlevel? `npm ls --depth=0` and `docker ps -a`
ztanaka1971 (Mon, 07 Aug 2017 12:39:27 GMT):
@mahoney1 I realized problem installing with sudo, so I reinstalled Ubuntu 16.04.2 and installed other components with non-root.
mahoney1 (Mon, 07 Aug 2017 12:39:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nNurc3A6vReGz6C6v) @ztanaka1971 ok great, thanks for the info !!
coder-ajay (Mon, 07 Aug 2017 12:40:47 GMT):
I upgraded versions to ` npm install -g composer-cli@0.10.0 ` and ` npm install -g composer-rest-server@0.10.0 1 ` and redeployed the bna file. When I run ` composer-rest-server `, below error is displayed:
_npm install -g composer-rest-server@0.10.0_
Explorer @3000 seems to work fine though.
How to remove this error?
coder-ajay (Mon, 07 Aug 2017 12:40:47 GMT):
I upgraded versions to ` npm install -g composer-cli@0.10.0 ` and ` npm install -g composer-rest-server@0.10.0 1 ` and redeployed the bna file. When I run ` composer-rest-server `, below error is displayed:
_(node:12125) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: cb is not a function_
How to remove this error?
coder-ajay (Mon, 07 Aug 2017 12:40:47 GMT):
I upgraded versions to ` npm install -g composer-cli@0.10.0 ` and ` npm install -g composer-rest-server@0.10.0 1 ` and redeployed the bna file. When I run ` composer-rest-server `, below error is displayed:
*(node:12125) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: cb is not a function*
How to remove this error?
coder-ajay (Mon, 07 Aug 2017 12:40:47 GMT):
@mahoney1 : I upgraded versions ` npm install -g composer-cli@0.10.0 ` and ` npm install -g composer-rest-server@0.10.0 ` and redeployed the bna file. When I run ` composer-rest-server `, below error is displayed:
*(node:12125) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: cb is not a function*
How to remove this error? This error was not coming before the upgrade and it seems to have impact on the web application where the application is not able to fetch the api.
scrdhrt (Mon, 07 Aug 2017 12:47:42 GMT):
@mahoney1 Sent you a PM, it would be much appreciated if you could take a look at it when you got a moment
mahoney1 (Mon, 07 Aug 2017 13:23:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AhFqpGq7RNpifTy29) @coder-ajay This problem is actually fixed in Composer release v0.11.0 (and a problem in v0.10.0). Slight catch-22 for you. The rest server issue was caused by a dependency issue loopback-boot version change from 2.25 to 2.26. You may also want to have the composer identity import command and the release (to fix that too) is v0.11.1 which is being built today (and will announce the release here on RC).
coder-ajay (Mon, 07 Aug 2017 13:26:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NadoHSPeuqqjJYmCw) @mahoney1 : Ok. So is it advisable to upgrade directly to v0.11.1 after its announced?
mahoney1 (Mon, 07 Aug 2017 13:26:39 GMT):
@coder-ajay yes, would say its best for you.
coder-ajay (Mon, 07 Aug 2017 13:28:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fQabu976EZnTs9YiZ) @mahoney1 Ok. Thanks. Do you feel the ` composer identity issue ' issue which I mentioned above will also be addressed with this upgrade?
mahoney1 (Mon, 07 Aug 2017 13:31:38 GMT):
your problem may have been a different issue. Suggest to try with this new release & 'stood up' runtime fabric (I assume its a dev setup, which makes it more unlikely it was performance, ie other transient). The fix in this build - is to do with `composer identity import` FYI.
coder-ajay (Mon, 07 Aug 2017 13:32:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ERFsH8hdv99sgxBLC) @mahoney1 Ok. Will try. Thanks.
DannyWong (Mon, 07 Aug 2017 13:46:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=THftYmYLAz2RgJKFQ) @DannyWong Found the answer myself... thanks.
mahoney1 (Mon, 07 Aug 2017 13:59:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sjrFpheeaFmrf4PCk) @DannyWong cool, using query result sets? Not presently a way of doing so using a 'Resource' join..
mahoney1 (Mon, 07 Aug 2017 14:30:49 GMT):
Message Attachments
mahoney1 (Mon, 07 Aug 2017 14:30:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NeAixmErqE6QdQtep) @jdockter an example is
mahoney1 (Mon, 07 Aug 2017 14:30:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NeAixmErqE6QdQtep) @jdockter an example is pasted above
davidkel (Mon, 07 Aug 2017 14:51:00 GMT):
@here We have released a new version today, v0.11.1 which address some important defects. Please see https://github.com/hyperledger/composer/releases/tag/v0.11.1
for a list of issues addressed.
greg.haskins (Mon, 07 Aug 2017 16:30:50 GMT):
Has left the channel.
coder-ajay (Mon, 07 Aug 2017 17:14:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AeypxPDzXow3YELJx) @davidkel : Hi ... updated using below commands:
```
npm install -g composer-cli@0.11.1
npm install -g composer-rest-server@0.11.1
```
Is this correct? (The localhost:3000/explorer api is still not accessible from http://localhost:4200 after ` npm start `)
davidkel (Mon, 07 Aug 2017 17:16:03 GMT):
@coder-ajay not sure I understand. The rest server listens on port 3000 by default, not 4200 so if you want to communicate with the rest server you need to use port 3000
tom.appleyard (Mon, 07 Aug 2017 17:23:16 GMT):
How would I go about finding the transactions that have been issued already?
tom.appleyard (Mon, 07 Aug 2017 17:23:32 GMT):
In the sense of how playground lists issued transactions - where would I get this info from?
nehalshah50 (Mon, 07 Aug 2017 17:30:56 GMT):
How do I set DateTime in script? I tried using Following but is not working. var date = new Date();
myObj.lastTrackedTime = date.toISOString();
coder-ajay (Mon, 07 Aug 2017 17:31:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5we6kzoYyuzEPTJF8) @davidkel : Okay ... i believe any data added via 3000/explorer is reflected on 4200 ... and vice versa. I am not able to access 3000 api for POST/GET etc via 4200.
coder-ajay (Mon, 07 Aug 2017 17:31:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5we6kzoYyuzEPTJF8) @davidkel : Okay ... i believe any data added via 3000/explorer is accessible on 4200 ... and vice versa. I am not able to access 3000 api for POST/GET etc via 4200. I was able to do this earlier.
davidkel (Mon, 07 Aug 2017 18:39:13 GMT):
@coder-ajay So the rest server listens on port 3000. I am guessing you have generated an application using the yo generator ? The application is provided by a file server that is listening on port 4200. So are you saying that the rest server isn't running ? When you try to browse to http://localhost:3000/explorer it returns a 404 not found ? What was the output when you did npm start ?
nehalshah50 (Mon, 07 Aug 2017 19:05:56 GMT):
I am trying to integrate with Node-RED using instructions given here https://www.npmjs.com/package/node-red-contrib-hyperledger-composer But keep getting error
"Error: error trying to ping. Error: Deployed chain-code (0.10.0) is incompatible with client (0.8.0)"
8/7/2017, 1:04:15 PMnode: HLFV1
msg : string[83]
"update: error thrown doing update Cannot read property 'getSerializer' of undefined"
dwakeman (Mon, 07 Aug 2017 19:47:04 GMT):
@nehalshah50 That error means that your node-red app is using composer 0.8.0 but your business network was deployed with composer 0.10.0. You probably need to update the package.json for your node red app to make sure it points to the latest version of composer-client.
nehalshah50 (Mon, 07 Aug 2017 19:52:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=up4PPRWiZLvQnLtN6) @dwakeman Where would I find the package.json? I looked under node_red installation and I could not find composer dependency defined in the package.json
dwakeman (Mon, 07 Aug 2017 19:56:43 GMT):
yeah, I was just looking at one of my node-red apps and didn't see it either. do you have `"node-red-contrib-hyperledger-composer": "latest"` in your package.json?
dwakeman (Mon, 07 Aug 2017 19:56:43 GMT):
yeah, I was just looking at one of my node-red apps and didn't see it either. do you have `"node-red-contrib-hyperledger-composer": "latest"` in your package.json? What do you get when you run the command `composer -v` on the system where you are running node-red?
smcambria22 (Mon, 07 Aug 2017 20:00:09 GMT):
Has joined the channel.
nehalshah50 (Mon, 07 Aug 2017 20:05:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6smQMdWXAtzkM5iEu) @dwakeman I get 0.10.0
nehalshah50 (Mon, 07 Aug 2017 20:07:00 GMT):
@dwakeman I used Node-RED pallette manager to install the node-red-contrib-hyperledger-composer
nehalshah50 (Mon, 07 Aug 2017 20:12:45 GMT):
@dwakeman I found .node-red/node_modules folder under my home folder and it has composer client related sub folders and each module has its own package.json file. Looking at few it all points 0.8.0. I think the node-red-contrib-hyperleger-composer itself needs to be updated
JohnWhitton (Mon, 07 Aug 2017 22:20:15 GMT):
Hi all - we've been getting the below error for a while now any insight would be useful
```
0|composer | Connection fails: Error: error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: RangeError: valstack limit)
0|composer | It will be retried for the next request.
0|composer | Exception: Error: error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: RangeError: valstack limit)
0|composer | Error: error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: RangeError: valstack limit)
0|composer | at queryChainCode.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:707:34)
PM2 | App [composer-rest-server] with id [0] and pid [1044], exited with code [1] via signal [SIGINT]
PM2 | Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
PM2 | App name:composer-rest-server id:0 online
```
jdockter (Mon, 07 Aug 2017 22:22:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XNnHNxxynBZPMZoE8) @mahoney1 Thanks I did the same in my local playground so I see the structure now
dwakeman (Mon, 07 Aug 2017 23:12:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AfpvHWrRKibatssXj) @nehalshah50 I looked back in the channel because I remember some confusion about node-red. It turns out that there are two sets of nodes out there: `node-red-contrib-hyperledger-composer` and `node-red-contrib-composer`. The ones you should be using are `node-red-contrib-composer`. You might try uninstalling the ones you installed and install `node-red-contrib-composer`. I checked my home/.node-red/node_modules directory and I am using `node-red-contrib-composer`, which loads the latest version of `composer-cli` (at the time you install the nodes).
samuel.alencar (Tue, 08 Aug 2017 01:06:25 GMT):
Has joined the channel.
baoyangc (Tue, 08 Aug 2017 01:46:58 GMT):
```root@k8s1:~# composer -v
composer-cli v0.10.0
composer-admin v0.10.0
composer-client v0.10.0
composer-common v0.10.0
composer-runtime-hlf v0.10.0
composer-runtime-hlfv1 v0.10.0```
``` fabrictools git:(master) ✗ composer -v
composer-cli v0.11.1
composer-runtime-hlf v0.11.1
composer-runtime-hlfv1 v0.11.1````
baoyangc (Tue, 08 Aug 2017 01:48:07 GMT):
in composer-cli@v0.11.1, composer-client,composer-admin and composer-common are gone
baoyangc (Tue, 08 Aug 2017 01:48:15 GMT):
is this correct?
baoyangc (Tue, 08 Aug 2017 02:02:35 GMT):
maybe this problem is produced by the command `npm install -g composer-cli composer-rest-server` with npm versioned `5.3.0`
baoyangc (Tue, 08 Aug 2017 02:03:56 GMT):
I run `npm install -g composer-cli` and `npm install -g composer-rest-server`
the result is below:
```fabrictools git:(master) ✗ composer -v
composer-cli v0.11.1
composer-admin v0.11.1
composer-client v0.11.1
composer-common v0.11.1
composer-runtime-hlf v0.11.1
composer-runtime-hlfv1 v0.11.1
➜ fabrictools git:(master) ✗ composer-rest-server -v
composer-rest-server v0.11.1
composer-client v0.11.1
composer-common v0.11.1
composer-runtime-hlf v0.11.1
composer-runtime-hlfv1 v0.11.1```
nehalshah50 (Tue, 08 Aug 2017 03:00:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=poifZYvqgTFyq64c8) @dwakeman No Luck. Still getting same error
coder-ajay (Tue, 08 Aug 2017 03:24:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=b58YJTcG8Fuvn7vLa) @davidkel : I understand why this happening. When I run ` npm-start `, its giving me error:
*Error: Deployed chain-code (0.11.1) is incompatible with client (0.9.2)*
So the ` composer-rest-server ` is not starting.
The temporary solution I implemented is running ` composer-rest-server ` and ` nom-start ` in two separate terminals. So irrespective of above error, the 4200 is application is fetching data from 3000.
But how to fix above error? What does client refer to which needs to be updated?
mavstronaut (Tue, 08 Aug 2017 04:03:31 GMT):
Has joined the channel.
davidkel (Tue, 08 Aug 2017 05:23:28 GMT):
@coder-ajay your generated application will have a dependency on the rest server and when you first generated your application it will have pulled down a version of the rest server at whatever level was available at that time. `npm start` starts that version which in your case is 0.9.2 and as you can see it won't be compatible with a business network that has been deployed with newer levels of the CLI (in your case 0.11.1). To solve the problem, you need to upgrade the dependencies for your generated application. The safest way to do that is to go into your application directory and delete the directory `node_modules`, then re-run `npm install`. You could also try running `npm update` instead of deleting the directory but I am not sure if this does the job properly of updating dependencies correctly and it may be that you have to run `npm --depth 9999 update` which is why I tend to always do the deleting of the node modules directory and doing an npm install.
coder-ajay (Tue, 08 Aug 2017 05:25:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FHMm3sf8shshf2GHT) @davidkel : Okay. Let me try this. Thanks.
coder-ajay (Tue, 08 Aug 2017 05:37:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FHMm3sf8shshf2GHT) @davidkel : Okay. deleted and reinstalled npm_modules successfully. Earlier, I also installed composer-playground locally to create participants. After restarting the fabric, its not allowing me to deply. ` composer network deploy ... `, its giving me error: *Error: error trying to setup a keystore path. ENOTSUP* .
davidkel (Tue, 08 Aug 2017 05:41:25 GMT):
@coder-ajay it's having a problem with the directory defined by the keyValStore property in your connection profile, although I have never seen a not supported operation error before.
coder-ajay (Tue, 08 Aug 2017 05:42:28 GMT):
@davidkel : Okay. So how to progress with this?
davidkel (Tue, 08 Aug 2017 05:42:57 GMT):
@coder-ajay you need to see what the problem is with that directory
davidkel (Tue, 08 Aug 2017 05:44:04 GMT):
connection profiles are described here
https://hyperledger.github.io/composer/reference/connectionprofile.html
coder-ajay (Tue, 08 Aug 2017 05:50:29 GMT):
@davidkel : Okay. Thanks. I will have a look.
prmdmshra (Tue, 08 Aug 2017 06:24:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PhFhBACqRR8qoFxwa) @mahoney1
I am able to create the angular js application using command 'yo hyperledger-composer' after uninstalling and reinstalling the components . Thanks for your support.
But, I am receiving following errors on running 'npm ls --depth=0'
error: ENOENT: no such file or directory, open '/home/pwc/node_modules/@protobufjs/aspromise/package.json
+-- error: ENOENT: no such file or directory, open '/home/pwc/node_modules/@protobufjs/base64/package.json
+-- error: ENOENT: no such file or directory, open '/home/pwc/node_modules/@protobufjs/codegen/package.json
+-- error: ENOENT: no such file or directory, open '/home/pwc/node_modules/@protobufjs/eventemitter/package.json
+-- error: ENOENT: no such file or directory, open '/home/pwc/node_modules/@protobufjs/fetch/package.json
gitSrinidhi (Tue, 08 Aug 2017 06:37:29 GMT):
where can we set business rules for an application ? is it part of Compose or with in some chaincode in Fabric ?
gitSrinidhi (Tue, 08 Aug 2017 06:37:29 GMT):
where can we write business logic for an application ? is it part of Compose or with in some chaincode in Fabric ?
gitSrinidhi (Tue, 08 Aug 2017 06:37:29 GMT):
where can we write business logic for an application ? is it part of a Composer or with in some chaincode in Fabric ?
gitSrinidhi (Tue, 08 Aug 2017 06:40:50 GMT):
And where can we write our own REST APIs ?
gitSrinidhi (Tue, 08 Aug 2017 07:08:27 GMT):
Where is Query linked with REST URLs in my-network sample ? Can someone put light here ?
mahoney1 (Tue, 08 Aug 2017 07:29:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=cwtmJKai6ur5oweWC) @tom.appleyard hi Tom - probably using businessNetworkConnection.getHistorian() - check out this page https://hyperledger.github.io/composer/reference/historian.html added recently. It shows how to access the Historian registry as its defined today.
mahoney1 (Tue, 08 Aug 2017 07:34:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=poifZYvqgTFyq64c8) @dwakeman thanks and noted.
mahoney1 (Tue, 08 Aug 2017 07:47:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=D9Ge4ouGSnhvepE5x) @gitSrinidhi You do it with Composer - you don't need to go and write native chaincode. You define it in the lib folder of your business network definition. Composer expresses the business logic for a business network using JavaScript functions. These functions are automatically executed when a transaction is submitted for processing. See https://hyperledger.github.io/composer/tutorials/developer-guide.html . Composer ultimately dispatches this javascript logic (as part of the business network) to the underlying runtime Fabric when you deploy the business network to Composer runtime.
mahoney1 (Tue, 08 Aug 2017 07:48:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aLiWQChmGh4k4i9hN) @gitSrinidhi - see the Queries tutorial https://hyperledger.github.io/composer/tutorials/queries.html Its an Endpoint that's created when you run `composer-rest-server1 (as shown in the tutorial) as it discovers the Query schema and as mentioned yields the REST Endpoints from which to call the query operations
mahoney1 (Tue, 08 Aug 2017 07:58:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xvWF6kQYjjqPfBoYm) @nehalshah50 If its for a transaction (in a deterministic sense, all transactions have a system property called timestamp, so you can use myTransaction.timestamp eg shown here https://stackoverflow.com/questions/43656164/getting-timestamps-in-deterministic-way-in-hyperledger-composer-transactions - otherwise something like `const dateTime = new Date();
dateTime.setTime(Date.parse(defaultValue));
this.setPropertyValue(field.getName(), dateTime);`
mahoney1 (Tue, 08 Aug 2017 07:58:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xvWF6kQYjjqPfBoYm) @nehalshah50 If its for a transaction (in a deterministic sense), all transactions have a system property called timestamp, so you can use myTransaction.timestamp eg shown here https://stackoverflow.com/questions/43656164/getting-timestamps-in-deterministic-way-in-hyperledger-composer-transactions - otherwise something like `const dateTime = new Date();
dateTime.setTime(Date.parse(defaultValue));
this.setPropertyValue(field.getName(), dateTime);`
gitSrinidhi (Tue, 08 Aug 2017 09:19:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bqLJCFbHQHkiHupAJ) @mahoney1 is it ok to rename these files `lib/sample.js` to meaning full names in my application? are they referenced elsewhere ?
gitSrinidhi (Tue, 08 Aug 2017 09:19:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bqLJCFbHQHkiHupAJ) @mahoney1 is it ok to rename these files `lib/sample.js` to meaningful names in my application? are they referenced elsewhere ?
mahoney1 (Tue, 08 Aug 2017 09:31:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GxXeCc93vtKMftdoe) @gitSrinidhi sure - you can call it `logic.js` for example...
coder-ajay (Tue, 08 Aug 2017 09:33:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ys8tWsxjZ3dqivFRe) @davidkel : I tried to change the connection.json as suggested in https://hyperledger.github.io/composer/reference/connectionprofile.html. But somehow its still giving same error:
*Error: error trying to setup a keystore path. ENOTSUP*
Below is the connection.json file that is created by default.
```
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://orderer.example.com:7050"
}
],
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer0.org1.example.com:7053"
}
],
"keyValStore": "/home/composer/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": 300,
"name": "hlfv1",
"description": "Hyperledger Fabric v1.0"
}
```
coder-ajay (Tue, 08 Aug 2017 09:33:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ys8tWsxjZ3dqivFRe) @davidkel : I tried to change the connection.json as suggested in https://hyperledger.github.io/composer/reference/connectionprofile.html. But somehow its still giving same error:
*Error: error trying to setup a keystore path. ENOTSUP*
I noticed that I have started facing this issue after running ` composer-playground `.
Below is the connection.json file that is created by default.
```
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://orderer.example.com:7050"
}
],
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer0.org1.example.com:7053"
}
],
"keyValStore": "/home/composer/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": 300,
"name": "hlfv1",
"description": "Hyperledger Fabric v1.0"
}
```
coder-ajay (Tue, 08 Aug 2017 09:33:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ys8tWsxjZ3dqivFRe) @davidkel , @mahoney1 :
I tried to change the connection.json as suggested in https://hyperledger.github.io/composer/reference/connectionprofile.html. But somehow its still giving same error:
*Error: error trying to setup a keystore path. ENOTSUP*
I noticed that I have started facing this issue after running ` composer-playground `.
Below is the connection.json file that is created by default.
```
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://orderer.example.com:7050"
}
],
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer0.org1.example.com:7053"
}
],
"keyValStore": "/home/composer/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": 300,
"name": "hlfv1",
"description": "Hyperledger Fabric v1.0"
}
```
mahoney1 (Tue, 08 Aug 2017 09:42:06 GMT):
Message Attachments
mahoney1 (Tue, 08 Aug 2017 09:42:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hR8AewNWhcmhxC4cH) @baoyangc no module names have not changed.
mahoney1 (Tue, 08 Aug 2017 09:42:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hR8AewNWhcmhxC4cH) @baoyangc module names have not changed.
mahoney1 (Tue, 08 Aug 2017 09:52:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2zbAzLEJCtdmAcY6N) @prmdmshra what OS did you install on, what is your node version `node -v` and `composer --version` ? Sounds like your npm cache is possibly corrupt.
davidkel (Tue, 08 Aug 2017 09:54:03 GMT):
@coder-ajay is this a valid directory ? `/home/composer/.composer-credentials` it's valid if playground is a docker container but if you are just running composer-playground then this needs to be a valid path
coder-ajay (Tue, 08 Aug 2017 10:04:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=89wBLkm6DZdow46r3) @davidkel : Is this supposed to be the path for connection.json file?
coder-ajay (Tue, 08 Aug 2017 10:04:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=89wBLkm6DZdow46r3) @davidkel : Is this supposed to be the path for connection.json file? The path ` /home/composer/.composer-credentials ` opens the home directory.
mahoney1 (Tue, 08 Aug 2017 10:25:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sghrbrsHmCPEQHsot) @coder-ajay this is the path where the public certificate inside the connection profile's keyValStore. As @davidkel wrote - If using the playground docker images, then use the "/home/composer/.composer-credentials" path, otherwise - use a directory that exists on your machine. Is there a user 'composer' on your system??
mahoney1 (Tue, 08 Aug 2017 10:25:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sghrbrsHmCPEQHsot) @coder-ajay this is the path where the public certificate exists inside the connection profile's keyValStore. As @davidkel wrote - If using the playground docker images, then use the "/home/composer/.composer-credentials" path, otherwise - use a directory that exists on your machine. Is there a user 'composer' on your system??
coder-ajay (Tue, 08 Aug 2017 10:34:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=H5MAovkSHC5mnhkb2) @mahoney1 : As discussed yesterday, I am using local playground to create participants and then use these participants in dev environment. Can playground and dev environment be worked on simultaneously? ` /home/composer/.composer-credentials ` navigates to home directory which is blank. So bit confused here.
I am not sure how to find whether user 'composer' is present on the system. Can you please suggest?
scrdhrt (Tue, 08 Aug 2017 10:56:27 GMT):
Newbie question: I've made an asset which keep a record of what participants have had ownership of the asset, previousParticipants[]. But is this the right way of doing things if I want to keep record? Is it possible to get a list of what participants have been involved in a transaction of a particular asset with timestamps through a query? ie: asset A, participant X->participant Y at someDate...
scrdhrt (Tue, 08 Aug 2017 10:58:32 GMT):
That is, directly from the chain of transactions
coder-ajay (Tue, 08 Aug 2017 11:33:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=H5MAovkSHC5mnhkb2) @mahoney1 : The related paths in finder is : ` Users/admin/.composer-credentials/hlfv1/connection.json ` and ` Users/admin/.composer-connection-profiles `. What should be the correct keyValStore please?
mahoney1 (Tue, 08 Aug 2017 11:38:27 GMT):
@coder-ajay your credentials folder (.composer-credentials) should not have a `hlfv1/connection.json` defined there (its a credentials directory containing keyfiles) - not sure how that .json got there, because that connection profile should exist, as a subdirectory under your `Users/admin/.composer-connection-profiles` with that user's directory permissions etc.
mahoney1 (Tue, 08 Aug 2017 11:38:27 GMT):
@coder-ajay your credentials folder (.composer-credentials) should not have a `hlfv1/connection.json` defined there (its a credentials directory containing keyfiles) - not sure how that .json got there, because that connection profile should exist, as a subdirectory under your `Users/admin/.composer-connection-profiles` with that user's directory permissions etc. The keyValStore definition in your connection profile, points to the .composer-credentials for the user that launched playground in this case.
mahoney1 (Tue, 08 Aug 2017 11:40:44 GMT):
You can create a new Participant/issued identity in playground, then use that when you import an existing hlfv1 connection profile (from disk) into playground. Then connect to your fabric (already in your new profile) using those.
coder-ajay (Tue, 08 Aug 2017 12:06:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Rbd97TToBYD72sr7d) @mahoney1 : Okay. I have:
- cut-paste the ` hlfv1/connection.json ` directory to ` Users/admin/.composer-connection-profiles `.
- In ` hlfv1/connection.json ` at new location, changed the keyValStore to ` /Users/admin/.composer-credentials `.
- In application folder run ` composer archive create --sourceType dir --sourceName . -a ./dist/
mahoney1 (Tue, 08 Aug 2017 12:30:36 GMT):
@coder-ajay can you do a `docker ps -a` pls
coder-ajay (Tue, 08 Aug 2017 12:31:43 GMT):
```
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b4848ab8caaa hyperledger/fabric-peer:x86_64-1.0.0-rc1 "peer node start -..." 2 minutes ago Up 3 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
47ec18a8849a hyperledger/fabric-ca:x86_64-1.0.0-rc1 "sh -c 'fabric-ca-..." 3 minutes ago Up 3 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
8d4146753bf6 hyperledger/fabric-couchdb:x86_64-1.0.0-rc1 "tini -- /docker-e..." 3 minutes ago Up 3 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
22bc505d6c86 hyperledger/fabric-orderer:x86_64-1.0.0-rc1 "orderer" 3 minutes ago Up 3 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
```
coder-ajay (Tue, 08 Aug 2017 12:31:43 GMT):
@mahoney1
```
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b4848ab8caaa hyperledger/fabric-peer:x86_64-1.0.0-rc1 "peer node start -..." 2 minutes ago Up 3 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
47ec18a8849a hyperledger/fabric-ca:x86_64-1.0.0-rc1 "sh -c 'fabric-ca-..." 3 minutes ago Up 3 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
8d4146753bf6 hyperledger/fabric-couchdb:x86_64-1.0.0-rc1 "tini -- /docker-e..." 3 minutes ago Up 3 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
22bc505d6c86 hyperledger/fabric-orderer:x86_64-1.0.0-rc1 "orderer" 3 minutes ago Up 3 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
```
coder-ajay (Tue, 08 Aug 2017 12:32:36 GMT):
To make a fresh start, I have just restarted it after clearing all the images using :
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
```
WatserAanDeHand (Tue, 08 Aug 2017 12:34:37 GMT):
Has joined the channel.
mahoney1 (Tue, 08 Aug 2017 13:07:56 GMT):
Now I see one of the problems for the failed network deploy and other issues - you have Fabric images that are RC1 - ` hyperledger/fabric-ca:x86_64-1.0.0-rc1` - as mentioned in previous release notes, these should be removed (using `docker images rmi` ...) . They won't work with v0.11.1 - you must use the latest GA edition docker images (which you can get using the CURL command here ``` mkdir ~/fabric-tools && cd ~/fabric-tools
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip ``` (to get it to pull new docker GA images and new docker image configuration etc etc. ) - see https://hyperledger.github.io/composer/installing/development-tools.html
mahoney1 (Tue, 08 Aug 2017 13:07:56 GMT):
@coder-ajay Now I see one of the problems for the failed network deploy and other issues - you have Fabric images that are RC1 - ` hyperledger/fabric-ca:x86_64-1.0.0-rc1` - as mentioned in previous release notes, these should be removed (using `docker images rmi` ...) . They won't work with v0.11.1 - you must use the latest GA edition docker images (which you can get using the CURL command here ``` mkdir ~/fabric-tools && cd ~/fabric-tools
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip ``` (to get it to pull new docker GA images and new docker image configuration etc etc. ) - see https://hyperledger.github.io/composer/installing/development-tools.html
mahoney1 (Tue, 08 Aug 2017 13:07:56 GMT):
@coder-ajay Now I see one of the problems for the failed network deploy and other issues - you have Fabric images that are RC1 - ` hyperledger/fabric-ca:x86_64-1.0.0-rc1` - as mentioned in previous release notes, these should be removed (using `docker images rmi` ...) . They won't work with v0.11.1 - you must use the latest GA edition *Fabric runtime* docker images (which you can get using the CURL command here ``` mkdir ~/fabric-tools && cd ~/fabric-tools
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip ``` (to get it to pull new docker GA images and new docker image configuration etc etc. ) - see https://hyperledger.github.io/composer/installing/development-tools.html
mahoney1 (Tue, 08 Aug 2017 13:07:56 GMT):
@coder-ajay Now I see one of the problems for the failed network deploy and other issues - you have Fabric images that are RC1 - ` hyperledger/fabric-ca:x86_64-1.0.0-rc1` - as mentioned in previous release notes, these should be removed (using `docker images rmi` ...) . They won't work with v0.11.1 - you must use the latest GA edition *Fabric runtime* docker images (which you can get using the CURL command here (to remove any confusion, remove any previous fabric-tools subdirectories that you created for this purpose in the past) and then: ``` mkdir ~/fabric-tools && cd ~/fabric-tools
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip ``` (to get it to pull new docker GA images and new docker image configuration etc etc. ) - see https://hyperledger.github.io/composer/installing/development-tools.html
JeremyH (Tue, 08 Aug 2017 13:09:07 GMT):
Hey everyone, it seems that in the new version of composer when I view transactions using GET /system/transactions/{id}, I see the transaction's $class, transactionId, timestamp, and the identity used, but not the information that was passed into the relevant transaction class. For example if the three arguments for a transaction are a PAYER, PAYEE, and VALUE, I would like to see these in the ledger, which I assume to be the list of transactions, however those details are not present. Is this by design or am I doing something wrong?
JeremyH (Tue, 08 Aug 2017 13:15:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MDK4p4kSb4mrSM2eZ) @JeremyH Actually it looks like the GET /system/transactions/{id} only works for system transactions, so my business transactions are not being found. Is there an API call to retrieve those?
scrdhrt (Tue, 08 Aug 2017 13:29:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Mj4rTFKCYsFYGi8Az) @JeremyH Also interested in an answer to this
coder-ajay (Tue, 08 Aug 2017 13:31:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WtNSxWANZnLzktZMX) @mahoney1 : So to summarize ... for an existing application to work with v0.11.1, it would involve:
1. Follow steps in installation URL starting from removal of images to createComposerProfile.sh
2. As the new /fabric-tools folder will not have any application, follow all steps to get my-network project from https://hyperledger.github.io/composer/tutorials/developer-guide.html
3. Copy existing application assets, permissions, logic etc, deploy and run yeoman to get new application
Correct?
mahoney1 (Tue, 08 Aug 2017 13:59:49 GMT):
As you mention, retain any JSON data/ assets etc you want to retain/re-use. then the easiest thing is 1) clear your .composer-credentials directory completely 2) Do (as written) "Step 1:" and "Step 2:" as shown here : https://hyperledger.github.io/composer/installing/development-tools.html including the createComposerProfile.sh (as you mention it) then once you have your Fabric up and running, you can deploy your business network archive (bna), and then generate your application . I also assume before this you did the docker images rmi of your old docker images.
coder-ajay (Tue, 08 Aug 2017 14:04:09 GMT):
@mahoney1 : Okay. I will follow the steps.
mahoney1 (Tue, 08 Aug 2017 14:10:43 GMT):
@JeremyH so since v0.11.0 business transactions are stored in the HistorianRecord (Registry) (even though you can GET the transaction from the system registry as you did via REST). This allows history to be queried and maintained of changes to the assets - in a business network, and which participants and identities are/were involved. You can read more about it here https://hyperledger.github.io/composer/reference/historian.html (will have to wait for more detail on REST operations on this, as its only recenty the first part of this was implemented more details on the design and goals of this is here -> https://github.com/hyperledger/composer/issues/55
mahoney1 (Tue, 08 Aug 2017 14:11:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uhBpDKbXkzw7HmKif) @coder-ajay sorry you've had some troubles, Composer and sometimes the Fabric we inherit is moving along quite quickly :-)
mahoney1 (Tue, 08 Aug 2017 14:11:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uhBpDKbXkzw7HmKif) @coder-ajay sorry you've had some troubles, Composer and sometimes the underlying Fabric we inherit is moving along quite quickly :-)
coder-ajay (Tue, 08 Aug 2017 14:14:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bg7SdAuSjBChSpANx) @mahoney1 : No worries at all. Its expected when product and application development go simultaneously. You have been a great help with tons of patience :)
JeremyH (Tue, 08 Aug 2017 14:18:41 GMT):
Another question from me:disappointed_relieved: I have used the Github OAuth to authenticate into my secured REST server running on AWS. Now I have a web app hosted on Heroku, that I would like to authenticate in order to make API calls. I have changed the homepage URL in the Github authentication settings to the Heroku application URL, but to no avail. The documentation I have seen seems to stop at the Github authentication into the REST server, has anyone managed to get a webpage working with a secured REST server?
JeremyH (Tue, 08 Aug 2017 14:45:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7vLWb3NZLcQLKjbSK) @JeremyH So if I authenticated in Chrome, trying to access the REST server fails in Internet Explorer and Firefox fails. This kind of stumps me as to how I could authenticate my app in Heroku
mahoney1 (Tue, 08 Aug 2017 14:46:14 GMT):
Fyi @here - the Community call tomorrow (Weds) will be at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-9th-August-2017
hschell (Tue, 08 Aug 2017 14:59:47 GMT):
Try to join the call tomorrow, we still struggle with Composer v0.7.5 and HSBN vNext Beta :-(
hschell (Tue, 08 Aug 2017 15:00:54 GMT):
Found the composer issue with the CRLF, reported and fixed a while ago, in the (TLS) certificate handling we have to take from the bluemix service
mahoney1 (Tue, 08 Aug 2017 15:13:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6gmBLmRccL26P6P4s) @hschell thank you for the update..
m7azeem (Tue, 08 Aug 2017 15:18:14 GMT):
Has joined the channel.
razik29 (Tue, 08 Aug 2017 15:44:33 GMT):
Has joined the channel.
razik29 (Tue, 08 Aug 2017 15:47:44 GMT):
Hi, I have the same problem as @JeremyH. We are trying to access the Rest API from our own web application, it throws an error 'Authorization Failure'. Note that, I have already logged in as a Github user and authenticated the Rest API URL as given in this doc. https://hyperledger.github.io/composer/unstable/integrating/enabling-rest-authentication.html
razik29 (Tue, 08 Aug 2017 15:48:51 GMT):
When I try to access the rest api explorer directly, I can access the api as different participants. But not from an web-app calling the rest api.
razik29 (Tue, 08 Aug 2017 15:49:13 GMT):
Does anyone faced similar problem? Or do I miss anything here?
mahoney1 (Tue, 08 Aug 2017 16:33:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=io85u3aSvGXgGvDYR) @JeremyH so you changed Settings to add your application homepage - but was the callback changed in Settings too? like Composer, it would need to be configured with an auth path like shown here https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html ..going to another webpage and make REST calls should be not be majorly different to accessing loopback Explorer in the example. Obviously you would stop and restart the application once configured etc like you did the REST server. Difficult to know your env, we've just got one example using the REST server in our docs.
mahoney1 (Tue, 08 Aug 2017 16:53:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=njyaWJjFuNCzJuGJY) @razik29 difficult to know how your app is aware of the auth / callback paths. But if you're using oauth it should be the same auth and callback paths as before. This sample is effectively doing a similar thing (fyi) https://github.com/feathersjs/feathers-authentication-popups-github
UDeshmukh (Tue, 08 Aug 2017 17:23:38 GMT):
Message Attachments
UDeshmukh (Tue, 08 Aug 2017 17:23:55 GMT):
Folks,
I’m trying to download / install Digital Property sample from Github as below:
https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/README.md
I’m stuck at step 3 – Deploy the Business Network
$ cd packages/getting-started
$ npm run deployNetwork
There is no folder Packages – and no file named deployNetwork
Any suggestions what is that I have missed ?
Thanks!
mahoney1 (Tue, 08 Aug 2017 17:36:33 GMT):
hi @UDeshmukh Steps are: 1. `cd composer-sample-applications/packages/digitalproperty-app` then 2. `npm install` (important) and finally 3. `npm run deployNetwork` and 4 `npm test` (bootstraps/add some titles) So - that README needs updating.
mahoney1 (Tue, 08 Aug 2017 17:36:33 GMT):
hi @UDeshmukh Steps are: 1. `cd composer-sample-applications/packages/digitalproperty-app` then 2. `npm install` (important) 3. `npm run deployNetwork` and and finally 4. `npm test` (bootstraps/add some titles) So - that README needs updating.
mahoney1 (Tue, 08 Aug 2017 17:36:33 GMT):
hi @UDeshmukh Steps are: 1. `cd composer-sample-applications/packages/digitalproperty-app` then 2. `npm install` (important) 3. `npm run deployNetwork` and finally 4. `npm test` (bootstraps/add some titles) So - that README needs updating.
mahoney1 (Tue, 08 Aug 2017 17:45:01 GMT):
@UDeskmukh - could be wrong (ie you created a directory called 'getting-started' yourself) but looks like you have an old composer-sample-applications repo - if so, I suggest before you do the above steps that you remove your old composer-sample-applications (above) and get a later copy ie `git clone https://github.com/hyperledger/composer-sample-applications.git` with later models etc and then work with that.
mahoney1 (Tue, 08 Aug 2017 17:45:01 GMT):
@UDeskmukh - could be wrong (ie you created a directory called 'getting-started' yourself) but looks like you have an old composer-sample-applications repo - if so, I suggest before you do the above steps that you remove your old composer-sample-applications (above) and get a later copy ie `git clone https://github.com/hyperledger/composer-sample-applications.git` with later samples etc and then work with that.
jdockter (Tue, 08 Aug 2017 17:59:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7vLWb3NZLcQLKjbSK) @JeremyH what does your COMPOSER_PROVIDERS look like?
UDeshmukh (Tue, 08 Aug 2017 18:18:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4aGpJeu4Jijj42md7) Thanks @mahoney1 that worked... the git clone URL in the documentation needs updating... By the way towards end of npm install I got a message "npm notice created a lockfile as package-lock.json. You should commit this file" I guess this is a new npm feature? Is there something I need to do for this?
mahoney1 (Tue, 08 Aug 2017 18:40:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XAnqSPvZNXQj6BWCw) @UDeshmukh cool, thanks .nothing to do..
coder-ajay (Tue, 08 Aug 2017 19:49:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=chiyFjnqhr8w2zCkb) @mahoney1 : By installing the latest GA, I am able to deploy successfully. ` composer-rest-server ... ` is running correctly. But for ` yo hyperledger-composer ` its giving me below error:
*Error: error trying to ping. Error: Deployed chain-code (0.11.1) is incompatible with client (0.9.1)*
I had cleared images using below commands:
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
docker rm $(docker ps -a -q)
docker rmi $(docker images -q)
```
coder-ajay (Tue, 08 Aug 2017 19:49:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=chiyFjnqhr8w2zCkb) @mahoney1 : By installing the latest GA, I am able to deploy successfully. ` composer-rest-server ... ` is running correctly. But for ` yo hyperledger-composer ` its giving me below error:
*Error: error trying to ping. Error: Deployed chain-code (0.11.1) is incompatible with client (0.9.1)*
I had cleared images using below commands. Have I missed any?
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
docker rm $(docker ps -a -q)
docker rmi $(docker images -q)
```
` docker ps -a ` result:
```
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
bb4c60133a7a hyperledger/fabric-peer:x86_64-1.0.0 "peer node start -..." 27 seconds ago Up 26 seconds 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
7ea4c29edbfe hyperledger/fabric-couchdb:x86_64-1.0.0 "tini -- /docker-e..." 28 seconds ago Up 27 seconds 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
eae91b94ddc0 hyperledger/fabric-ca:x86_64-1.0.0 "sh -c 'fabric-ca-..." 28 seconds ago Up 27 seconds 0.0.0.0:7054->7054/tcp ca.org1.example.com
59620709f0d5 hyperledger/fabric-orderer:x86_64-1.0.0 "orderer" 28 seconds ago Up 28 seconds 0.0.0.0:7050->7050/tcp orderer.example.com
```
tom.appleyard (Tue, 08 Aug 2017 19:50:24 GMT):
Has anyone seen the following error when trying to deploy before: `Error: Error trying deploy. Error: Error trying to instantiate chaincode. Error: Error starting container: API error (404): {"message":"network basic not found"}`
xinlinw (Tue, 08 Aug 2017 21:25:55 GMT):
Has joined the channel.
DennisM330 (Wed, 09 Aug 2017 01:38:07 GMT):
When is it better to define a transaction to create/update an asset vs. using the generated POST/PUT methods generated by the composer rest server?
baoyangc (Wed, 09 Aug 2017 02:48:56 GMT):
when executing `composer network start`, errors below appeared
```2017-08-09 01:36:53.365 UTC [Composer] Info -> INFO 001 Setting the Composer pool size to 8
2017-08-09 01:36:53.398 UTC [shim] userChaincodeStreamGetter -> ERRO 002 Error trying to connect to local peer: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "tlsca.org1.example.com")```
baoyangc (Wed, 09 Aug 2017 02:51:21 GMT):
there is no tlsca cert in my peer's config ``` environment:
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
- CORE_LOGGING_LEVEL=DEBUG
- CORE_PEER_TLS_ENABLED=true
- CORE_PEER_GOSSIP_USELEADERELECTION=true
- CORE_PEER_GOSSIP_ORGLEADER=false
- CORE_PEER_PROFILE_ENABLED=true
- CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt
- CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key
- CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt
- CORE_PEER_ID=peer0.org1.example.com
- CORE_PEER_ADDRESS=peer0.org1.example.com:7051
- CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051
- CORE_PEER_LOCALMSPID=Org1MSP
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=hyperledger-ov
- CORE_LEDGER_STATE_STATEDATABASE=CouchDB
- CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb0:5984
- CORE_PEER_GOSSIP_BOOTSTRAP=peer0.org1.example.com:7051
working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer
command: peer node start
volumes:
- /var/run/:/host/var/run/
- ./crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/fabric/msp
- ./crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls```
baoyangc (Wed, 09 Aug 2017 02:58:38 GMT):
I checked my connection.json
in the ca->trustedRoots:["---content of ca.org1.example.com-cert.pem---"]
baoyangc (Wed, 09 Aug 2017 02:59:26 GMT):
should I changed it to be ["----content of tlca.org1.example.com-cert.pem--"]
seungchan (Wed, 09 Aug 2017 03:20:33 GMT):
I confirmed that there is only one KeyValStore in Connection Profile as the following figure. Does not KeyValStore have one per peer (eg couchDB or levelDB)?
However, the picture below seems to have one KeyValStore in the channel, so I was curious to ask.
seungchan (Wed, 09 Aug 2017 03:20:39 GMT):
Message Attachments
baoyangc (Wed, 09 Aug 2017 03:22:54 GMT):
keyvalstore is used to store your user private and public key
ddhulla (Wed, 09 Aug 2017 05:04:27 GMT):
Has joined the channel.
seungchan (Wed, 09 Aug 2017 06:25:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KnCkAM8aSRkSGtoxo) @baoyangc Is Composer's keyvalstore diffrence with Fabric's one?
baoyangc (Wed, 09 Aug 2017 06:47:55 GMT):
sorry, I don't know the Fabirc's
baoyangc (Wed, 09 Aug 2017 06:48:00 GMT):
@seungchan
seungchan (Wed, 09 Aug 2017 06:50:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jJMjZ8gmtNJXQ58m3) @baoyangc Could you please tell me where to find information about composer's KeyValStore? please..
baoyangc (Wed, 09 Aug 2017 06:51:48 GMT):
Message Attachments
baoyangc (Wed, 09 Aug 2017 06:52:12 GMT):
in your ~/.composer-credentials or in mongo
baoyangc (Wed, 09 Aug 2017 06:53:05 GMT):
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
davidkel (Wed, 09 Aug 2017 07:01:07 GMT):
@seungchan see https://hyperledger.github.io/composer/reference/connectionprofile.html for information about composer connection profiles
gitSrinidhi (Wed, 09 Aug 2017 07:04:04 GMT):
composer network deploy -a my-network.bna -p hlfv1 -i `PeerAdmin` -s randomString
what is `peerAdmin` ? where is it defined ?
mahoney1 (Wed, 09 Aug 2017 07:08:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=f5MPGtG4LvXZamRMc) @gitSrinidhi PeerAdmin (imported as part of Composer's Dev tools Fabric runtime setup) isn't a userid, it is purely an identity label referencing cryptographic (eg. signer certificate) material you have imported into the keyValStore identified in your connection profile which has meaning to a single Peer (in our dev setup) or set of Peers (if configured in another way) within the same organisation
mahoney1 (Wed, 09 Aug 2017 07:15:58 GMT):
Fyi @here - reminder that the Community call is at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-9th-August-2017
baoyangc (Wed, 09 Aug 2017 07:16:53 GMT):
@mahoney1 , I meet error:```HLFConnection :ping() !! {"0":"ping","1":{"stack":["{Error}Error trying to ping. Error: Error trying to query chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate has expired or is not yet valid Error: Error trying to ping. Error: Error trying to query chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate has expired or is not yet valid"," at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:696:34)"," at process._tickDomainCallback (internal/process/next_tick.js:129:7)"]}}$```
baoyangc (Wed, 09 Aug 2017 07:17:13 GMT):
```|composer | Connection fails: Error: Error trying to ping. Error: Error trying to query chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate has expired or is not yet valid
0|composer | It will be retried for the next request.
0|composer | Exception: Error: Error trying to ping. Error: Error trying to query chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate has expired or is not yet valid
0|composer | Error: Error trying to ping. Error: Error trying to query chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not```
baoyangc (Wed, 09 Aug 2017 07:17:44 GMT):
and i set `COMPOSER_DATASOURCES={"db": {"name": "db","connector": "mongodb","host": "mongo","port":27017}}`
baoyangc (Wed, 09 Aug 2017 07:18:27 GMT):
```COMPOSER_ENROLLMENT_ID=admin
CORE_CHAINCODE_EXECUTETIMEOUT=90s
COMPOSER_ENROLLMENT_SECRET=adminpw```
GirijaShankarMishra (Wed, 09 Aug 2017 07:19:03 GMT):
Message Attachments
GirijaShankarMishra (Wed, 09 Aug 2017 07:19:03 GMT):
Message Attachments
baoyangc (Wed, 09 Aug 2017 07:19:27 GMT):
I can make sure the certificate is correct. because it is enrolled by ca.org1.example.com
mahoney1 (Wed, 09 Aug 2017 07:20:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9piYZDe9semrpcq2M) @tom.appleyard seen something similar when trying to instantiate a chaincode container (eg. ccenv, later renamed to the biz network name) where the baseos docker image wasn't found - would check for any logs - also you could post a `docker images`
davidkel (Wed, 09 Aug 2017 07:23:33 GMT):
@GirijaShankarMishra suggest you try the #fabric-sdk-node channel as this doesn't look related to composer
baoyangc (Wed, 09 Aug 2017 07:23:47 GMT):
the peer alway print logs below:``` -> DEBU d9f Entry
2017-08-09 07:21:12.862 UTC [protoutils] ValidateProposalMessage -> DEBU da0 ValidateProposalMessage starts for signed proposal 0xc421328960
2017-08-09 07:21:12.862 UTC [protoutils] validateChannelHeader -> DEBU da1 validateChannelHeader info: header type 3
2017-08-09 07:21:12.862 UTC [protoutils] checkSignatureFromCreator -> DEBU da2 checkSignatureFromCreator starts
2017-08-09 07:21:12.863 UTC [endorser] ProcessProposal -> DEBU da3 Exit
2017-08-09 07:21:17.361 UTC [eventhub_producer] validateEventMessage -> DEBU da4 ValidateEventMessage starts for signed event 0xc42150c210
2017-08-09 07:21:17.362 UTC [eventhub_producer] Chat -> ERRO da5 Error handling message: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [The supplied identity is not valid, Verify() returned x509: certificate has expired or is not yet valid]]```
baoyangc (Wed, 09 Aug 2017 07:24:34 GMT):
composer-rest-server@0.11.1 can't used admin:adminpw?
baoyangc (Wed, 09 Aug 2017 07:25:19 GMT):
as --enrollId and --enrollSecret?
gitSrinidhi (Wed, 09 Aug 2017 07:32:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GkTBt8LzRszoespEt) @mahoney1 Thanks.
gitSrinidhi (Wed, 09 Aug 2017 07:32:46 GMT):
Found this in queries.qry
// we have to return all the promises
return Promise.all(promises);
What is this Promise ? is it something like static class in java ?
gitSrinidhi (Wed, 09 Aug 2017 07:32:46 GMT):
Found this in queries.qry
// we have to return all the promises
return `Promise.all(promises)`;
What is this Promise ? is it something like static class in java ?
bitnut (Wed, 09 Aug 2017 07:43:55 GMT):
Has joined the channel.
baoyangc (Wed, 09 Aug 2017 07:55:36 GMT):
```:registerAndEnroll() !! {"0":"registerAndEnroll","1":{"stack":["{Error}Error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN Error: Error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN"," at caClient.enroll.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:197:34)"," at process._tickDomainCallback (internal/process/next_tick.js:129:7)"]}}$
0|composer | 2017-08-09T07:47:18.811Z ERROR HLFConnection :login() !! {"0":"login","1":{"stack":["{Error}Error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN Error: Error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN"," at caClient.enroll.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:197:34)"," at process._tickDomainCallback (internal/process/next_tick.js:129:7)"]}}$
0|composer | Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN```
baoyangc (Wed, 09 Aug 2017 07:55:59 GMT):
why did i get this error
baoyangc (Wed, 09 Aug 2017 07:56:34 GMT):
I just run composer-rest-server with `-i admin -s adminpw`
baoyangc (Wed, 09 Aug 2017 08:19:45 GMT):
@mahoney1 I think the runtime is just part of the chaincode, we should install the bna to the peer
baoyangc (Wed, 09 Aug 2017 08:20:10 GMT):
not just start a bna in one peer
bestbeforetoday (Wed, 09 Aug 2017 08:20:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ykN7B8TvokibvKitk) @gitSrinidhi A Promise is an abstraction for the result of an asynchronous operation. The Java equivalent would be `java.util.concurrent.Future`. See here for more information: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Promise
DannyWong (Wed, 09 Aug 2017 08:42:33 GMT):
wanna ask for long time.... cto file... full name is?
DannyWong (Wed, 09 Aug 2017 08:42:44 GMT):
bna = business network archive (pronounced as banana file)
DannyWong (Wed, 09 Aug 2017 08:42:54 GMT):
so what is full name of CTO file
mahoney1 (Wed, 09 Aug 2017 08:51:31 GMT):
@here if there are specific Github issues that are holding you back / blocking your progress https://github.com/hyperledger/composer/issues that you see as a priority for speedier resolution, please let us know here or on the Community call (in 10) cheers Paul
baoyangc (Wed, 09 Aug 2017 08:58:11 GMT):
hi all, I create an repository at https://github.com/baoyangc/fabricDev, this project can quickly create a fabric network with https enabled and with composer-rest-server started
baoyangc (Wed, 09 Aug 2017 08:59:25 GMT):
I will rewrite readme.md in English, before this, I think you can just read the code
alisonb (Wed, 09 Aug 2017 09:28:50 GMT):
When I run the REST server in a docker container it fails with:
alisonb (Wed, 09 Aug 2017 09:29:15 GMT):
0|composer | Connection fails: EACCES
0|composer | It will be retried for the next request.
0|composer | EACCES
alisonb (Wed, 09 Aug 2017 09:29:58 GMT):
The same credentials work fine just running it on the command line, so I think I must have got the settings wrong. I'm trying to run it without any extra security, so set:
alisonb (Wed, 09 Aug 2017 09:30:33 GMT):
COMPOSER_CONNECTION_PROFILE=fred
COMPOSER_BUSINESS_NETWORK=marbles-network
COMPOSER_ENROLLMENT_ID=blockchain_fred
COMPOSER_ENROLLMENT_SECRET=HwEKHgleIyBn
COMPOSER_NAMESPACES=never
COMPOSER_SECURITY=false
COMPOSER_CONFIG='{
"connectionProfiles": {
"fred": {
"name": "fred",
"description": "Hyperledger Fabric v1.0",
"type": "hlfv1",
"keyValStore": "/home/cloudusr/.composer-credentials",
"timeout": 300,
"orderers": [
{
"url": "grpc://9.20.64.180:7050"
}
],
"channel": "composerchannel",
"mspID": "Org1MSP",
"ca": {
"url": "http://9.20.64.180:7054",
"name": "ca.org1.example.com"
},
"networks": [
"marbles-network"
],
"peers": [
{
"requestURL": "grpc://9.20.64.180:7051",
"eventURL": "grpc://9.20.64.180:7053"
}
]
}
}
}'
COMPOSER_DATASOURCES='{}'
COMPOSER_PROVIDERS='{}'
alisonb (Wed, 09 Aug 2017 09:31:30 GMT):
What am I doing wrong, please?
mahoney1 (Wed, 09 Aug 2017 09:51:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6e94tgJe8wLZgDmbL) @coder-ajay as mentioned, the 'client' element is almost inevitably in your generated app. You also need to `npm uninstall -g generator-hyperledger-composer` and install the latest level `npm install -g generator-hyperledger-composer` to get it to the right level. After that you can regenerate your app and the client should be at the right level. If that's not the case, its an issue (why the client is at 0.9.1) ..
mahoney1 (Wed, 09 Aug 2017 09:56:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ykN7B8TvokibvKitk) @gitSrinidhi see Promises tutorial link at the bottom of this page -> https://hyperledger.github.io/composer/applications/node.html A promise represents the eventual result of an asynchronous operation
mahoney1 (Wed, 09 Aug 2017 10:00:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zFGvpNyv5RF5pBiPN) @DannyWong it was an initial naming suffix for a model file (part of the business network [definition] archive or .bna) back when Composer wasn't called 'Composer' and that's now legacy in naming convention. Nothing more.
coder-ajay (Wed, 09 Aug 2017 10:19:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QiwZ6hviitPfM3azQ) @mahoney1 : Hi ... its working now. ` npm uninstall -g generator-hyperledger-composer` and ` npm install -g generator-hyperledger-composer ` was also required. Thanks a lot for the help.
mahoney1 (Wed, 09 Aug 2017 10:33:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vY4KoKDCNTZXS2YEm) @baoyangc nice one @baoyangc thanks for sharing.
mahoney1 (Wed, 09 Aug 2017 10:47:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7smrTjvyAzhPQsCAK) @alisonb depends if you're using the hyperledger/composer-rest-server dockerhub image or whether you built your own. But the error looks like user composer can't read the keyValStore in the docker image.
mahoney1 (Wed, 09 Aug 2017 10:47:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7smrTjvyAzhPQsCAK) @alisonb depends if you're using the hyperledger/composer-rest-server dockerhub image or whether you built your own. But the error looks like user composer can't read (access) the keyValStore in the docker image.
alisonb (Wed, 09 Aug 2017 10:48:24 GMT):
Hi @mahoney1 I'm just using the standard image
mahoney1 (Wed, 09 Aug 2017 10:51:04 GMT):
Would suggest to replicate the config here then https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html 'Deploying the REST server with persistent data store' - you don't have to use authentication if you don't want to.
JeremyH (Wed, 09 Aug 2017 11:16:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qeuSYwz7d8mZS6bfn) @jdockter I followed the Enabling Rest Authentication tutorial on https://hyperledger.github.io/composer/unstable/integrating/enabling-rest-authentication.html, for authenticating using the Github passport package. This command from the tutorial was run, so COMPOSER_PROVIDERS should be:
export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "REPLACE_WITH_CLIENT_ID",
"clientSecret": "REPLACE_WITH_CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
tom.appleyard (Wed, 09 Aug 2017 11:30:06 GMT):
@mahoney1 Actually managed to fix it but thanks!
tom.appleyard (Wed, 09 Aug 2017 11:30:26 GMT):
New error though, when using playground with ACLs has anyone seen this:
`t: Participant 'org.sandp.phudge.submission.AdminUser#regAdmin' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#org-acme-biznet@0.0.1'`\
tom.appleyard (Wed, 09 Aug 2017 11:30:26 GMT):
New error though, when using playground with ACLs has anyone seen this:
`t: Participant 'org.sandp.phudge.submission.AdminUser#regAdmin' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#org-acme-biznet@0.0.1'`
mahoney1 (Wed, 09 Aug 2017 11:39:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HkZarZSDyQyduWjBs) @tom.appleyard ok cool thx Tom..
tom.appleyard (Wed, 09 Aug 2017 11:39:31 GMT):
The same error as the above also happens for identity after you allow it
JeremyH (Wed, 09 Aug 2017 11:40:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PAmbkGdMSSZSGNw2d) @mahoney1 When you say we don't need to use authentication if we don't want to, are you referring to setting the COMPOSER_SECURITY to false? Is setting *COMPOSER_SECURITY to 'true'* analogous to doing *composer-rest-server -S true*?
What I'm essentially wondering is if there's a way to avoid doing any actual authentication, while still having an identity wallet that I can use in the REST API.
mahoney1 (Wed, 09 Aug 2017 11:41:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4ticMsiYHLAaZthMr) @baoyangc with regards to this and your later deserialize creator identity error - ithe question remains whether your current CA is configured properly to create certificates that are valid for your runtime fabric ? It looks currently like the certificates being created by your CA are being signed by an authority that your *peer(s)* don't know about (referring to peer log too). Is that possible?
mahoney1 (Wed, 09 Aug 2017 11:41:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4ticMsiYHLAaZthMr) @baoyangc with regards to this and your later deserialize creator identity error - the question remains whether your current CA is configured properly to create certificates that are valid for your runtime fabric ? It looks currently like the certificates being created by your CA are being signed by an authority that your *peer(s)* don't know about (referring to peer log too). Is that possible? I would suggest to ask about this #fabric channel if you say you've configured your CA correctly, as this is a certificate issue.
gitSrinidhi (Wed, 09 Aug 2017 12:19:34 GMT):
How do i share my smart contracts defined in `.cto` files in one organisation to another organisation ?
baoyangc (Wed, 09 Aug 2017 12:30:08 GMT):
@mahoney1 thanks, It maybe produced by my old chaincode image.
mahoney1 (Wed, 09 Aug 2017 12:41:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=swmEisDyofrfAE7Se) @gitSrinidhi You can share the BNA (including the model cto, smart contract business logic etc) into (for example) a shared playground or you can send a signed copy of your BNA to the other organisation for them to stand up etc. If you mean to go further and interact/test with it, then they can deploy it (once Composer is installed. Eg all the things you've done to get Composer + runtime Fabric up and running, in that org. So importing admin IDs for that org, deploying composer runtime on peers, starting the network etc etc.).
uber.twin (Wed, 09 Aug 2017 12:54:45 GMT):
@mahoney1 hi, is it correct that the REST API filtering (e.g.: ```http://localhost:3000/api/my.Participant?filter=
uber.twin (Wed, 09 Aug 2017 12:54:45 GMT):
@mahoney1 hi, is it correct that the REST API filtering e.g.: ```http://localhost:3000/api/my.Participant?filter=
mahoney1 (Wed, 09 Aug 2017 12:59:59 GMT):
@JeremyH yes it is analogous
gitSrinidhi (Wed, 09 Aug 2017 13:01:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QwgFqnkPHL3L4K7Mo) @mahoney1 wil definately try !
gitSrinidhi (Wed, 09 Aug 2017 13:02:39 GMT):
Changes in `.cto` not getting reflected. its always getting me the old deployed piece. is this a bug ? i tried clearing browser history as well.
gitSrinidhi (Wed, 09 Aug 2017 13:03:21 GMT):
i used `npm install`
mahoney1 (Wed, 09 Aug 2017 13:42:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dLXSFXLQ55eWHszY2) @uber.twin as farcorrect, plus its the Endpoint (not the fully qualified resource name) that's exposed (along with the defined operations)
mahoney1 (Wed, 09 Aug 2017 13:42:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dLXSFXLQ55eWHszY2) @uber.twin correct, plus its the Endpoint (not the fully qualified resource name) that's exposed (along with the defined operations)
gitSrinidhi (Wed, 09 Aug 2017 13:44:30 GMT):
Changes in `.cto` not getting reflected. its always getting me the old deployed piece. is this a bug ? i tried clearing browser history as well.
i used `npm install
dstarina (Wed, 09 Aug 2017 13:44:53 GMT):
I have a basic Composer development network set up. When my OS is restarted and I start the network with startFabric.sh, I lose the data (the .bna file is not deployed anymore). How should I set up the system to have the data persisted?
mahoney1 (Wed, 09 Aug 2017 13:46:44 GMT):
@gitSrinidhi npm install only creates the archive. You need to (and should) use `composer network update` command to actually deploy the updated network from the newly created bna file (you can check the timestamp of the BNA file to see when it was last created too)
uber.twin (Wed, 09 Aug 2017 14:03:55 GMT):
@mahoney1 what would be an appropriate statement to query for transactions? I tried
```SELECT org.hyperledger.composer.system.transaction```
and it returns
```
{
"content-type": "application/json; charset=utf-8",
"content-length": "2",
"etag": "W/\"2-l9Fw4VUO7kr8CvBlt4zaMCqXZ0w\"",
"vary": "Origin",
"date": "Wed, 09 Aug 2017 14:01:25 GMT",
"access-control-allow-credentials": "true",
"x-xss-protection": "1; mode=block",
"x-frame-options": "DENY",
"x-download-options": "noopen",
"x-content-type-options": "nosniff"
}
```
uber.twin (Wed, 09 Aug 2017 14:03:55 GMT):
@mahoney1 what would be an appropriate statement to query for transactions? I tried
SELECT org.hyperledger.composer.system.transaction
and it returns
```
{
"content-type": "application/json; charset=utf-8",
"content-length": "2",
"etag": "W/\"2-l9Fw4VUO7kr8CvBlt4zaMCqXZ0w\"",
"vary": "Origin",
"date": "Wed, 09 Aug 2017 14:01:25 GMT",
"access-control-allow-credentials": "true",
"x-xss-protection": "1; mode=block",
"x-frame-options": "DENY",
"x-download-options": "noopen",
"x-content-type-options": "nosniff"
}
```
uber.twin (Wed, 09 Aug 2017 14:06:00 GMT):
is there a way to retrieve transactions of a certain type?
gitSrinidhi (Wed, 09 Aug 2017 14:06:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Q6sJChdWWpJCyeT3s) @mahoney1
`composer network update`-a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
tried this in `dist`. Still facing the same issue.
gitSrinidhi (Wed, 09 Aug 2017 14:07:29 GMT):
For the latest bna deployemt
mahoney1 (Wed, 09 Aug 2017 14:14:34 GMT):
@uber.twin see here -> https://hyperledger.github.io/composer/reference/historian.html you access the transaction registry through the Historian record `org.hyperledger.composer.system.HistorianRecord` - it isn't exposed via REST presently (and obviously will be the 'transaction history' as this feature develops. Today, transactions (as exposed today) are under 'system' in your API explorer (at the bottom)
mahoney1 (Wed, 09 Aug 2017 14:14:34 GMT):
@uber.twin see here -> https://hyperledger.github.io/composer/reference/historian.html you access the transaction registry through the Historian record `org.hyperledger.composer.system.HistorianRecord` - it isn't exposed via REST presently (but obviously will be the 'transaction history' as this feature develops). Today, transactions (as exposed today) are under 'system' in your API explorer (at the bottom)
mahoney1 (Wed, 09 Aug 2017 14:16:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NvssAEpekCHA52fHQ) @gitSrinidhi then the BNA file can't have included your latest changes, if the 'composer network update' gave a message of success ?? What do you see when you import the same BNA into a Composer playground environment..
alisonb (Wed, 09 Aug 2017 14:18:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PAmbkGdMSSZSGNw2d) Hi @mahoney1 That's what I was trying to follow, less the COMPOSER_PROVIDERS, COMPOSER_DATASOURCES and COMPOSER_TLS* variables and anything to do with building my own image etc. How can I debug this further, please?
alisonb (Wed, 09 Aug 2017 14:18:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PAmbkGdMSSZSGNw2d) Hi @mahoney1 That's what I was trying to follow, less the COMPOSER_PROVIDERS, COMPOSER_DATASOURCES and COMPOSER_TLS* variables and anything to do with building my own image etc. How can I debug this further, please?
alisonb (Wed, 09 Aug 2017 14:18:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PAmbkGdMSSZSGNw2d) Hi @mahoney1 That's what I was trying to follow, less the COMPOSER_PROVIDERS, COMPOSER_DATASOURCES and COMPOSER_TLS* variables and anything to do with building my own image etc. How can I debug this further, please? I see the peer is complaining: [36m2017-08-09 15:03:55.219 UTC [eventhub_producer] validateEventMessage -> DEBU 1a1e5^[[0m ValidateEventMessage starts for signed event 0xc422a13a40
^[[31m2017-08-09 15:03:55.219 UTC [eventhub_producer] Chat -> ERRO 1a1e6^[[0m Error handling message: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]] but I have Org1MSP set in the connection profile I pass
gitSrinidhi (Wed, 09 Aug 2017 14:19:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=g95fYCeaEBEbZBdeQ) @mahoney1 `composer network update` asked me for options. I gave the full command as - `composer network update`-a my-network.bna -p hlfv1 -i PeerAdmin -s randomString - which is success.
gitSrinidhi (Wed, 09 Aug 2017 14:19:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=g95fYCeaEBEbZBdeQ) @mahoney1 `composer network update` asked me for options. I gave the full command as - `composer network update`-a my-network.bna -p hlfv1 -i PeerAdmin -s randomString - which is success. Do i need a composer-rest-server restart ??
gitSrinidhi (Wed, 09 Aug 2017 14:21:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2bJpoxkZatQy9sjFY) @gitSrinidhi Server restart worked ! thanks :)
uber.twin (Wed, 09 Aug 2017 14:22:20 GMT):
@mahoney1 alright, I guess I'll need to wait for the "composer identity import" bug to be solved before moving to composer v 0.11
uber.twin (Wed, 09 Aug 2017 14:22:20 GMT):
@mahoney1 alright, I guess I'll need to wait for the "composer identity import" bug to be solved before moving to composer v 0.11. with v0.10, there is no query resolving to the transaction registry, as implemented by v0.10, isn't it?
tom.appleyard (Wed, 09 Aug 2017 14:27:09 GMT):
What would cause this when issuing a new identitiy: `Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]`?
tom.appleyard (Wed, 09 Aug 2017 14:27:18 GMT):
I'm issuing as PeerAdmin
bhavyaM (Wed, 09 Aug 2017 14:29:07 GMT):
Has joined the channel.
davidkel (Wed, 09 Aug 2017 14:34:00 GMT):
@tom.appleyard PeerAdmin did not come from the CA so the CA has no idea who PeerAdmin is
tom.appleyard (Wed, 09 Aug 2017 14:34:50 GMT):
Ah right, so how do I get the credentials for admin?
davidkel (Wed, 09 Aug 2017 14:37:07 GMT):
You make a request using the admin id and secret and if you haven't downloaded the creds it will do it
tom.appleyard (Wed, 09 Aug 2017 14:37:27 GMT):
what's the command for that?
tom.appleyard (Wed, 09 Aug 2017 14:37:35 GMT):
(sorry if these are stupid questions)
davidkel (Wed, 09 Aug 2017 14:37:57 GMT):
do it on your issue identity required (-i admin -s adminpw)
davidkel (Wed, 09 Aug 2017 14:37:57 GMT):
do it on your issue identity request (-i admin -s adminpw)
tom.appleyard (Wed, 09 Aug 2017 14:46:26 GMT):
```
Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN
at client.getUserContext.then.then.catch (/Users/thomasappleyard/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:292:34)
at process._tickCallback (internal/process/next_tick.js:103:7)
```
Suma (Wed, 09 Aug 2017 14:49:14 GMT):
How would you use composer apis for basic fabric calls, for example, getting chain height or a block? Or is it advisable to directly use fabric apis in such cases
tom.appleyard (Wed, 09 Aug 2017 14:59:27 GMT):
@davidkel it still comes up with an error if I do that
tom.appleyard (Wed, 09 Aug 2017 14:59:37 GMT):
```
Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
```
davidkel (Wed, 09 Aug 2017 15:07:17 GMT):
@tom.appleyard have you used admin in the past, then rebounced your CA server ? if you have and depending on how you have set up the CA server the certs you have for admin may no longer bre valid
tom.appleyard (Wed, 09 Aug 2017 15:16:13 GMT):
@davidkel
So the process I'm using is to generate the cryptogen material and run a fabric-ca server with:
```
command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/org1.example.com-cert.pem \
--ca.keyfile /etc/hyperledger/fabric-ca-server-config/${CA_ROOT_CERT} \
-b admin:adminpw \
-d'
```
Where the `${CA_ROOT_CERT}` is the `_sk` file in `crypto-config/peerOrganizations/org1.example.com/ca/` that gets mounted to the CA. I then import `PeerAdmin` using:
```
composer identity import -p channel1 \
-u PeerAdmin \
-c ./crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem \
-k ./crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/$(ls crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/)
```
From there I'm using `PeerAdmin` in the `BusinessNetworkConnection` object as the credentials (I get the same results if I import `admin` and use that)
davidkel (Wed, 09 Aug 2017 15:24:18 GMT):
So you have setup a CA server with a bootstrap id of admin which means it's certs will change every time you restart it.
alisonb (Wed, 09 Aug 2017 15:34:46 GMT):
I see the peer is complaining: [36m2017-08-09 15:03:55.219 UTC [eventhub_producer] validateEventMessage -> DEBU 1a1e5^[[0m ValidateEventMessage starts for signed event 0xc422a13a40
^[[31m2017-08-09 15:03:55.219 UTC [eventhub_producer] Chat -> ERRO 1a1e6^[[0m Error handling message: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
but that's what is defined in the connection profile
tom.appleyard (Wed, 09 Aug 2017 15:42:30 GMT):
I suppose so yes
tom.appleyard (Wed, 09 Aug 2017 15:42:58 GMT):
All of this is in a script where the entire network (and associated artefacts) are torn down each time
tom.appleyard (Wed, 09 Aug 2017 15:49:37 GMT):
So if I don't have the script deploy or copy over the files and I issue:
I get this:
tom.appleyard (Wed, 09 Aug 2017 15:49:37 GMT):
So if I don't have the script deploy or copy over the files and I issue `composer network deploy -p channel -a fujairah.bna -i admin -s adminpw`
I get this:
```
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/Users/thomasappleyard/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/Users/thomasappleyard/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /Users/thomasappleyard/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
```
tom.appleyard (Wed, 09 Aug 2017 15:49:37 GMT):
So if I don't have the script deploy or copy over the files and I issue `composer network deploy -p channel -a fujairah.bna -i admin -s adminpw`
I get this:
```
Error: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org1MSP, received ]]
at ClientDuplexStream._emitStatusIfDone (/Users/thomasappleyard/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/Users/thomasappleyard/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)
at /Users/thomasappleyard/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14
```
JeremyH (Wed, 09 Aug 2017 16:53:24 GMT):
Been researching and trying some stuff (like alternative passport packages, and following this example https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html, which I likely did wrong and corrupted my AWS instance) to try and authenticate a Heroku hosted app to make calls to the secure REST API. The reason the REST API is secured is that I can use and switch identities. I've only managed to get authentication working via Github on my own my own machine. Is there a way to be able to use have access to the Identity Wallet in the REST API without actually requiring any authentication? This would save me a lot of headaches
ScottMorris (Wed, 09 Aug 2017 17:33:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xBpAbAicn8FCY9ecu) @JeremyH I've tried to get `passport-http` writing, but no luck. However, `passport-google-oauth` using OAuth 2 works quite well. It seems the _local_ strategy providers don't work.
mahoney1 (Wed, 09 Aug 2017 18:06:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TmLequM9rXFs8Gb35) @uber.twin v0.11.1 announced earlier this week on RC @here fixed the import problem. Yes, Historian first came in ... in v0.11.0 FYI..but definitely go with v0.11.1 (or next release due to be pub'ed tomorrow)
mahoney1 (Wed, 09 Aug 2017 18:24:45 GMT):
@alisonb - I see - your peer error is the problem, not your REST server config. Seems like you've started a new CA server to get the deserialize event creator error - ie the question is whether your current, running CA is configured properly to create certificates that are valid for your runtime fabric ? It looks currently like the certificate being created by your CA are being signed by an authority that your peer doesn't know about (referring to peer error). If a dev environment, suggest to 1) ensure you have removed old (eg RC1 or earlier) editions of Fabric images when you perform `docker images`and 2) 'Step 2: 'Starting Hyperledger Fabric' here https://hyperledger.github.io/composer/installing/development-tools.html to get a clean Fabric. Then deploy your bna and try your REST server config as you've set it up.
mahoney1 (Wed, 09 Aug 2017 18:24:45 GMT):
@alisonb - I see - your peer error is the problem, not your REST server config. Seems like you've started a new CA server to get the deserialize event creator error - ie the question is whether your current, running CA is configured properly to create certificates that are valid for your runtime fabric ? It looks currently like the certificate being created by your CA is signed by an authority that your peer doesn't know about (referring to peer error). If a dev environment, suggest to 1) ensure you have removed old (eg RC1 or earlier) editions of Fabric images when you perform `docker images`and 2) 'Step 2: 'Starting Hyperledger Fabric' here https://hyperledger.github.io/composer/installing/development-tools.html to get a clean Fabric. Then deploy your bna and try your REST server config as you've set it up.
mahoney1 (Wed, 09 Aug 2017 18:30:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9NNrgh6rC2pwfnjS4) @Suma you don't use composer apis for fabric calls. You need Fabric for that. This can help you -> https://stackoverflow.com/questions/45172999/how-to-check-the-blockchain-height-in-hyperledger-fabric - > do note the comment at the bottom (Aug 5: The REST API has been deprecated and removed in v1.0.x and a new REST SDK is being developed in its place.) - also check out the channel #blockchain-explorer here on RC
jdockter (Wed, 09 Aug 2017 18:30:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=36LaAo47nMfKxvEcp) @ScottMorris were having problems with google oauth after awhile of running...see https://github.com/hyperledger/composer/issues/1784 how do you have it configured?
jdockter (Wed, 09 Aug 2017 18:31:24 GMT):
@ScottMorris I guess we have passport-google-oauth2
ScottMorris (Wed, 09 Aug 2017 18:35:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6RXPrAq5kaAhb4kgP) @jdockter Below is the setup I have in the ``.bashrc file``. As for the identities, I'm having a related issue [#1731](https://github.com/hyperledger/composer/issues/1731) with the identities, but they seem to work for ~10 min, then time out and I have to issue new ones.
```
,"google": {
"provider": "google",
"module": "passport-google-oauth",
"strategy": "OAuth2Strategy",
"clientID":
ScottMorris (Wed, 09 Aug 2017 18:35:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6RXPrAq5kaAhb4kgP) @jdockter Below is the setup I have in the `.bashrc file`. I've told it to the the `OAuth2Strategy` via the JSON. As for the identities, I'm having a related issue [#1731](https://github.com/hyperledger/composer/issues/1731) with the identities, but they seem to work for ~10 min, then time out and I have to issue new ones.
```
,"google": {
"provider": "google",
"module": "passport-google-oauth",
"strategy": "OAuth2Strategy",
"clientID":
jdockter (Wed, 09 Aug 2017 18:39:48 GMT):
okay that is basically what we have ...scope value is a little different...and no returnURL but successRedirect seems to the trick
jdockter (Wed, 09 Aug 2017 18:40:21 GMT):
see that same problem with timeout
ScottMorris (Wed, 09 Aug 2017 18:40:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yRnWpNkLyfuKa8tiL) @jdockter When I tried to run it google wanted a returnURL. I wasn't sure what to set for the scope so I started with basic info.
davidkel (Wed, 09 Aug 2017 18:41:10 GMT):
@ScottMorris @jdockter Have either of you tried with github authentication ? That was what I tried and couldn't recreate the problem. Sorry I've not had much chance to look at doing it using oauth today
jdockter (Wed, 09 Aug 2017 18:41:52 GMT):
@davidkel I just configured github about an hour ago so will give it a go shortly
ScottMorris (Wed, 09 Aug 2017 18:43:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hWGoyrnnCrW3WNBKk) @davidkel I haven't tried using GitHub authentication yet.
nehalshah50 (Wed, 09 Aug 2017 19:53:48 GMT):
How do I change the identity secret once generated through 'composer issue identity' command?
coder-ajay (Wed, 09 Aug 2017 20:28:06 GMT):
Hi .. i want to confirm about the scope of participants created from ` composer-playground ` (localhost:8080) and from terminal.
A participant created in localhost:8080 can be viewed only on browser at localhost:8080. It wont be available on localhost:3000/explorer.
To have a participant in localhost:4200 application, it needs to be created either running ` composer participant add ... ` or on localhost:3000/explorer. But this participant wont be available in localhost:8080.
This is what I have noticed but wanted to confirm. Is that right?
ScottMorris (Wed, 09 Aug 2017 20:45:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=L72AX2S4Nc5EtqZZ6) @coder-ajay I believe this has to do with the REST API and the Playground operating on different business networks.
coder-ajay (Wed, 09 Aug 2017 20:49:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=j88Hwne7j45C9Ps2q) @ScottMorris : I am running both ` composer-playground ` and `compose participant add ..` commands in the same application directory. So i believe its the same business network. The files displayed in 8080 browser are the application files e.g. .cto file. ` docker ps -a ` is showing the application up.
ScottMorris (Wed, 09 Aug 2017 20:53:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=b5hgZoD5F5EnyX4oY) @coder-ajay The Playground is running on the business network `org-acme-biznet`. When you run the REST API have you told it to connect to that network? `composer-rest-server -p hlfv1 -n org-acme-biznet ...`
jdockter (Wed, 09 Aug 2017 20:54:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hWGoyrnnCrW3WNBKk) @davidkel have github working in memory now with secure rest server
ScottMorris (Wed, 09 Aug 2017 20:54:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sTfh6jvDwX9qcRigL) @jdockter With GitHub you don't have the chaincode error?
jdockter (Wed, 09 Aug 2017 20:54:55 GMT):
@ScottMorris well for the time being I'm not getting it
jdockter (Wed, 09 Aug 2017 20:55:01 GMT):
only been a couple of minutes
ScottMorris (Wed, 09 Aug 2017 20:55:41 GMT):
@jdockter From what my co-worker and I found yesterday is it took ~10 min then it broke
ScottMorris (Wed, 09 Aug 2017 20:55:41 GMT):
@jdockter From what my co-worker and I found yesterday is it took ~10 min from enrolling the identity then it broke
jdockter (Wed, 09 Aug 2017 20:56:17 GMT):
@ScottMorris will let you know shortly :)
coder-ajay (Wed, 09 Aug 2017 21:00:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fXb4KXBEhBvnKPJ8S) @ScottMorris : When you say org-acme-biznet in ` composer-rest-server ...`, it would be the business network name I am using? e.g. my-application. in my case. Right?
coder-ajay (Wed, 09 Aug 2017 21:00:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fXb4KXBEhBvnKPJ8S) @ScottMorris : I didn't understand completely. When I run ` composer-rest-server .. `, I use my application business network name so in my case its ` composer-rest-server -p hlfv1 -n my-applicaion ... `
ScottMorris (Wed, 09 Aug 2017 21:27:46 GMT):
I've noticed that when writing transaction JavaScript functions in the composer you can't use `let` (`SyntaxError: Unexpected token`) or `const` (`SyntaxError: The keyword 'const' is reserved`). Is this intentional, or a byproduct of the parser that packages the JavaScript?
davidkel (Wed, 09 Aug 2017 21:28:28 GMT):
@ScottMorris it's intentional as transaction code can only use ES5 constructs
davidkel (Wed, 09 Aug 2017 21:29:08 GMT):
@jdockter looking forward to hear the results as well
jdockter (Wed, 09 Aug 2017 21:29:23 GMT):
busted
jdockter (Wed, 09 Aug 2017 21:29:42 GMT):
500, message: Error: The current identity has not been registered
jdockter (Wed, 09 Aug 2017 21:30:13 GMT):
didn't track the time but it wasn't hours
jdockter (Wed, 09 Aug 2017 21:30:42 GMT):
less than 30 mins
davidkel (Wed, 09 Aug 2017 21:30:51 GMT):
@jdockter Well, i'm both glad and sad about that. Glad because I couldn't see how the auth mechanism would affect this at all, sad because I haven't been able to recreate it. Time to clean out my environment and start fresh.
nehalshah50 (Wed, 09 Aug 2017 22:18:36 GMT):
Hi...I keep getting following error while installing composer-cli eventhough I am installing with sudo......gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/composer-cli/node_modules/hashtable/build'
gyp ERR! stack at Error (native)
gyp ERR! System Darwin 16.7.0
DennisM330 (Wed, 09 Aug 2017 23:22:13 GMT):
Is there a document on best practices for business network versioning, having multiple versions deployed?
DennisM330 (Wed, 09 Aug 2017 23:24:36 GMT):
Also should asset creation be in a transaction or is use of the Composer rest server sufficient to issue the POST/PUT ?
DennisM330 (Wed, 09 Aug 2017 23:54:45 GMT):
The same question would apply if I used the Composer JS APIs. Are there recommended
DennisM330 (Thu, 10 Aug 2017 00:32:31 GMT):
guidelines when one should create/update an asset in the context of a transaction vs just doing the create/update directly. I suppose a transaction would allow multiple updates to occur or be rolled back?
ScottMorris (Thu, 10 Aug 2017 01:21:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=69Jb7xepLnXcRRH6s) @jdockter If you look at your CA logs do you see a new `POST /api/v1/enroll` call the CA that happens to an already enrolled user? If so the timestamps should give away the time lapse. In my issue I note what I found in [this comment](https://github.com/hyperledger/composer/issues/1731#issuecomment-321053207)
ScottMorris (Thu, 10 Aug 2017 01:21:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=69Jb7xepLnXcRRH6s) @jdockter If you look at your CA logs (`docker logs ca.org1.example.com 2>logs.txt`) do you see a new `POST /api/v1/enroll` call the CA that happens to an already enrolled user? If so the timestamps should give away the time lapse. In my issue I note what I found in [this comment](https://github.com/hyperledger/composer/issues/1731#issuecomment-321053207)
ScottMorris (Thu, 10 Aug 2017 01:23:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TYyngFMC64p9gawbH) @davidkel Thanks, this through us a bit since Promises seem to be supported, maybe they are using a shim.
pradeeppadmarajaiah (Thu, 10 Aug 2017 05:15:27 GMT):
I Create a asset called record having the record data as a String. During the transaction , we want to see the record data value in playground during transaction window and modify the value. I can see one example where they change the value from oldvalue to new value.
But, my condition I want to see the data first during the submit transaction in playground test and change it. Could you please suggest Also, same question , if i want get the state which is defined via enum. Please suggest
asset Record identified by recordId {
o String recordId
o String data
}
transaction UpdateRecord{
--> Record asset
o String newData
}
/**
* Update Record
* @param {org.acme.model.UpdateRecord} updateRecord - the updateRecord transaction
* @transaction
*/
function UpdateRecord(record) {
record.asset.data = record.newData;
return getAssetRegistry('org.acme.model.Record')
.then(function (assetRegistry) {
return assetRegistry.update(record.asset);
});
}
pradeeppadmarajaiah (Thu, 10 Aug 2017 05:15:27 GMT):
I Create a asset called record having the record data as a String. During the transaction , we want to see the record data value in playground during transaction window and modify the value. I can see one example where they change the value from oldvalue to new value.
But, my condition I want to see the data first during the submit transaction in playground test and change it. Could you please suggest Also, same question , if i want get the state which is defined via enum. Please suggest
asset Record identified by recordId {
o String recordId
o String data
}
transaction UpdateRecord{
--> Record asset
o String newData
}
/**
* Update Record
* @param {org.acme.model.UpdateRecord} updateRecord - the updateRecord transaction
* @transaction
*/
function UpdateRecord(record) {
record.asset.data = record.newData;
return getAssetRegistry('org.acme.model.Record')
.then(function (assetRegistry) {
return assetRegistry.update(record.asset);
});
}
pradeeppadmarajaiah (Thu, 10 Aug 2017 05:15:27 GMT):
I Create a asset called record having the record data as a String. During the transaction , we want to see the record data value in playground during transaction window and modify the value. I can see one example where they change the value from oldvalue to new value.
But, my condition I want to see the data first during the submit transaction in playground test and change it. Could you please suggest Also, same question , if i want get the existing state which is defined via enum. Please suggest
asset Record identified by recordId {
o String recordId
o String data
}
transaction UpdateRecord{
--> Record asset
o String newData
}
/**
* Update Record
* @param {org.acme.model.UpdateRecord} updateRecord - the updateRecord transaction
* @transaction
*/
function UpdateRecord(record) {
record.asset.data = record.newData;
return getAssetRegistry('org.acme.model.Record')
.then(function (assetRegistry) {
return assetRegistry.update(record.asset);
});
}
arsalan 4 (Thu, 10 Aug 2017 06:09:16 GMT):
I've been trying to debug this for some time, has anyone seen this before?
' #Assign Driver to Freight Order should be approved status:
Error: Object with ID 'Participant:12' in collection with ID '$sysregistries' does not exist
at PouchDBUtils.getDocument.then (fbap-network/node_modules/composer-runtime-pouchdb/lib/pouchdbdatacollection.js:83:27)
at process._tickCallback (internal/process/next_tick.js:103:7)'
arsalan 4 (Thu, 10 Aug 2017 06:09:54 GMT):
This is my model:
arsalan 4 (Thu, 10 Aug 2017 06:10:15 GMT):
`participant CarrierDriver identified by userId {
o String userId
o String firstName
o String lastName
o String email
o String password
o String companyName
--> FreightOrder order optional
--> TrackingLog log optional
}`
arsalan 4 (Thu, 10 Aug 2017 06:10:32 GMT):
then my test that calls it:
arsalan 4 (Thu, 10 Aug 2017 06:11:24 GMT):
```var driver = factory.newResource(NS, 'CarrierDriver', '12');
// driver.SCAC = "scac";
driver.firstName = "Stuart";
driver.lastName = "Little";
driver.email = "stuartlittle@driver.com"
driver.password = "pw";
driver.companyName = "Contractor";
driver.log = factory.newRelationship(NS, 'TrackingLog', '6789');
driver.order = factory.newRelationship(NS, 'FreightOrder', '3456');
```
arsalan 4 (Thu, 10 Aug 2017 06:12:09 GMT):
```
const assignJob = factory.newTransaction(NS, 'AssignJob');
assignJob.driver = factory.newRelationship(NS, 'CarrierDriver', driver.$identifier);
assignJob.order = factory.newRelationship(NS, 'FreightOrder', freightOrder.$identifier);
assignJob.log = factory.newRelationship(NS, 'TrackingLog', trackingLog.$identifier);
//todo add frieght order to correct asset registry as well
// Get the asset registry.
return businessNetworkConnection.getAssetRegistry(NS + '.TrackingLog')
.then((assetRegistry) => {
// add the tracking log to the asset registry.
return assetRegistry.add(trackingLog)
.then(() => {
return businessNetworkConnection.getParticipantRegistry(NS + '.CarrierDriver');
})
.then((participantRegistry) => {
// add the driver
return participantRegistry.add(driver);
})
.then(() => {
return businessNetworkConnection.participantRegistryExists(driver.$identifier);
})
.then((exists) => {
if (exists === true) {
console.log("Exists!!");
}
})
```
arsalan 4 (Thu, 10 Aug 2017 06:12:31 GMT):
It fails right at participantRegistryExists
arsalan 4 (Thu, 10 Aug 2017 06:12:34 GMT):
in which it returns
arsalan 4 (Thu, 10 Aug 2017 06:12:50 GMT):
```
0 passing (3m)
1 failing
1) #Assign Driver to Freight Order should be approved status:
Error: Object with ID 'Participant:12' in collection with ID '$sysregistries' does not exist
at PouchDBUtils.getDocument.then (fbap-network/node_modules/composer-runtime-pouchdb/lib/pouchdbdatacollection.js:83:27)
at process._tickCallback (internal/process/next_tick.js:103:7)
```
arsalan 4 (Thu, 10 Aug 2017 06:13:29 GMT):
anyone have any thoughts? I've looked through other people's responses on this $registries error, but no one's responses seem to answer my error
arsalan 4 (Thu, 10 Aug 2017 06:13:34 GMT):
why is this happening?
saurabhxtiwari (Thu, 10 Aug 2017 06:35:29 GMT):
Has joined the channel.
saurabhxtiwari (Thu, 10 Aug 2017 06:37:53 GMT):
I am stuck on this issue, while deploying a network using composer cli to an already running instance of fabric locally. "TypeError: Channel options must be an object with string keys and integer or string values() "
saurabhxtiwari (Thu, 10 Aug 2017 06:37:53 GMT):
I am stuck on this issue, while deploying a network using composer cli to an already running instance of fabric locally. "TypeError: Channel options must be an object with string keys and integer or string values() "
Has anybody seen this before ?
saurabhxtiwari (Thu, 10 Aug 2017 06:37:53 GMT):
I am stuck on this issue, while deploying a network using composer cli to an already running instance of fabric locally. "*TypeError: Channel options must be an object with string keys and integer or string values()*"
Has anybody seen this before ?
saurabhxtiwari (Thu, 10 Aug 2017 07:00:34 GMT):
Message Attachments
GongZhang (Thu, 10 Aug 2017 07:07:35 GMT):
Has joined the channel.
levinkwong (Thu, 10 Aug 2017 07:22:52 GMT):
Hi guys,
My composer network sometimes throws error
```
SyntaxError: Unexpected token (551:0)
at Parser.pp$4.raise (/home/mladmin/chaincode/insurance-network-middleware/node_modules/acorn/dist/acorn.js:2488:13)
```
And I have further found the cause is from couchDB 404
```
nonode@nohost <0.1757.0> 503504d9f1 couchdb:5984 172.19.0.5 undefined GET /composerchannel/insurance-network%00%00Asset:org.hyperledger.composer.system.Identity%0094e1d85a83263707256a05649d9d1f17730755f737980f44fa8a75c4b12699ca%00?attachments=true 404 ok 1
Add Comment
```
As *org.hyperledger.composer.system.Identity* should be composer internal things, does anyone have idea what it is and why it is throwing 404 from couchDB?
uber.twin (Thu, 10 Aug 2017 08:31:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vnbhfcN8zmeAiSqND) @mahoney1 alright, I will. It'll be reassuring to see that the "composer-sample-applications" gets the version updates too, seems it is still set with v 0.10
davidkel (Thu, 10 Aug 2017 08:35:03 GMT):
@levinkwong The unexpected token is a problem we haven't been able to recreate ? The error occurs because the parser detects something bad at the end of one of the javascript files but as these files don't change were are unsure as to why it fails intermittently. Could you raise a github issue with a failing bna ?
davidkel (Thu, 10 Aug 2017 08:36:12 GMT):
I'm not sure it is related what you see in the logs regarding couchdb. A 404 is not necessarily a problem but it's difficult from the snippet posted to tell if that is a problem
davidkel (Thu, 10 Aug 2017 08:44:43 GMT):
@nehalshah50 In our docs We say you should not use sudo to install composer due to it causing the exact problems you are describing.
davidkel (Thu, 10 Aug 2017 08:55:30 GMT):
@saurabhxtiwari I've seen to possible causes of this but there could be others
1 playground hasn't installed correctly (if you get the problem with CLI as well then CLI didn't install correctly)
2 you don't have enough memory
mahoney1 (Thu, 10 Aug 2017 09:11:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JDgcnHwceeg2yFzhg) @uber.twin that's likely because you need to (ie for the sample app in question - say digitalproperty-app for example) remove the node_modules in the dir where you cloned to, then do an `npm install` (nothing more) - it should then pick up the latest modules (current being v0.11.1 at the time of writing) in node_modules and therefore the latest fixes.
levinkwong (Thu, 10 Aug 2017 09:16:43 GMT):
@davidkel
Originally I thought it was related to this : https://github.com/hyperledger/composer/issues/1670
But turns out not the same problem.
davidkel (Thu, 10 Aug 2017 09:17:20 GMT):
@levinkwong I think it is the same problem as https://github.com/hyperledger/composer/issues/1611 but we've not been able to recreate it
uber.twin (Thu, 10 Aug 2017 09:20:42 GMT):
@mahoney1 seems the "dependencies" section in package.json is explicitly referring the version 0.10, not "latest". So I thought, if digitalproperty-app is not pointing to the new versions, I shouldn't either:)
saurabhxtiwari (Thu, 10 Aug 2017 09:24:13 GMT):
@davidkel Uninstalling and installing CLI didn't help. Memory is also ruled out.
saurabhxtiwari (Thu, 10 Aug 2017 09:24:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3YWxs4PnAx4ou68ZM) @davidkel Uninstalling and installing CLI didn't help. Memory is also ruled out.
davidkel (Thu, 10 Aug 2017 09:32:30 GMT):
@saurabhxtiwari The error you showed was for playground do you get the problem in CLI as well ?
jarvis488 (Thu, 10 Aug 2017 10:01:49 GMT):
Message Attachments
jarvis488 (Thu, 10 Aug 2017 10:02:38 GMT):
Message Attachments
mahoney1 (Thu, 10 Aug 2017 10:26:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oby2q4iAnSreCCuj6) @DennisM330 no written best practises per se. The biz network deployed as you know is a unique name - but can deploy as many versions (however you choose to do that) as you wish - can maintain different versions (identified in your package.json), published in a private or organisation npm repo etc for example) - it would be more a question of who you want to share with and tracking versions. If your business transaction logic dictates asset creation, such as a modeled asset history record for example or similar then that can be done. Normally REST is sufficient. The API docs have examples of API use https://hyperledger.github.io/composer/jsdoc/
adityasinha4u (Thu, 10 Aug 2017 10:40:40 GMT):
Has joined the channel.
mahoney1 (Thu, 10 Aug 2017 11:08:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gGoxrBxhhjWfuX3a2) @uber.twin thanks for pointing that out - you're right. We need to get that changed - have raised a Github issue to get it changed to the right minor level etc. cheers
saurabhxtiwari (Thu, 10 Aug 2017 11:10:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=roRqHHuKN8hvg8cwA) @davidkel Yes. Both playground as well as CLI
davidkel (Thu, 10 Aug 2017 11:11:45 GMT):
@saurabhxtiwari can you confirm what your operating system is, memory, version of node, npm, python ?
saurabhxtiwari (Thu, 10 Aug 2017 11:16:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=59qenWETaay7B4fb2) @davidkel OS: mac OS X Yosemite 10.10.5
Memory: 16 GB 1600 MHz DDR3
Node: v6.11.1
NPM: 3.10.10
Python 2.7.11
davidkel (Thu, 10 Aug 2017 11:21:13 GMT):
@saurabhxtiwari do you have xcode installed? The error you are getting is explicitly a problem with the node grpc modules which composer has a dependency on
saurabhxtiwari (Thu, 10 Aug 2017 11:23:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DisaTSSmjy3RXtw7H) @davidkel Oh I see. Sadly I don't have xcode. Will switching to an older version of node help ?
davidkel (Thu, 10 Aug 2017 11:24:24 GMT):
@saurabhxtiwari No unfortunately not. On a Mac, xcode is a pre-requisite. Sorry. I have a mac but tend to use virtual box and vagrant to provide linux images
adityasinha4u (Thu, 10 Aug 2017 11:26:02 GMT):
Hi Guys,
saurabhxtiwari (Thu, 10 Aug 2017 11:26:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gBbqQnM7BkpSn9oMH) @davidkel I found a similar thread on stackoverflow but not of much help though https://stackoverflow.com/questions/45059003/hyperledger-fabric-composer-typeerror-channel-options-must-be-an-object-with-st
davidkel (Thu, 10 Aug 2017 11:27:51 GMT):
@saurabhxtiwari Alternatively there are docker images for composer-playground and composer-rest-server as well as a 1-click installer that will download and setup Hyperledger fabric v1 and composer playground, so long as you can install Docker for Mac (there is an older Docker engine for mac I believe but you should avoid that version)
saurabhxtiwari (Thu, 10 Aug 2017 11:30:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5viceH5G7p4TN2fiw) @davidkel Yeah. that works for me. This issue only shows up when I try to connect to an already running fabric instance.
uber.twin (Thu, 10 Aug 2017 11:33:40 GMT):
@mahoney1 is the HistorianRecord suppose to be queryable?
with v0.11.1, having this query "SELECT org.hyperledger.composer.system.HistorianRecord", response is
```
{
"vary": "Origin, Accept-Encoding",
"access-control-allow-credentials": "true",
"x-xss-protection": "1; mode=block",
"x-frame-options": "DENY",
"x-download-options": "noopen",
"x-content-type-options": "nosniff",
"content-type": "application/json; charset=utf-8",
"content-length": "2",
"etag": "W/\"2-l9Fw4VUO7kr8CvBlt4zaMCqXZ0w\"",
"date": "Thu, 10 Aug 2017 11:28:20 GMT",
"connection": "keep-alive"
}
```
uber.twin (Thu, 10 Aug 2017 11:33:40 GMT):
@mahoney1 is the HistorianRecord supposed to be queryable?
with v0.11.1, having this query "SELECT org.hyperledger.composer.system.HistorianRecord", response is
```
{
"vary": "Origin, Accept-Encoding",
"access-control-allow-credentials": "true",
"x-xss-protection": "1; mode=block",
"x-frame-options": "DENY",
"x-download-options": "noopen",
"x-content-type-options": "nosniff",
"content-type": "application/json; charset=utf-8",
"content-length": "2",
"etag": "W/\"2-l9Fw4VUO7kr8CvBlt4zaMCqXZ0w\"",
"date": "Thu, 10 Aug 2017 11:28:20 GMT",
"connection": "keep-alive"
}
```
davidkel (Thu, 10 Aug 2017 11:41:11 GMT):
@uber.twin It is queryable. See
https://hyperledger.github.io/composer/reference/historian.html
mahoney1 (Thu, 10 Aug 2017 11:56:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yHYwt6pev2AzhDSzW) @arsalan 4 think you're trying to find a *registry* that doesn't exist (as you've defined in your code) - see example usage here https://hyperledger.github.io/composer/jsdoc/module-composer-client.BusinessNetworkConnection.html
coder-ajay (Thu, 10 Aug 2017 11:57:16 GMT):
Hi .. ` composer-rest-server … ` is giving below error. ` docker ps -a ` showing all images up. The dev-per0.org1.example not showing any port, but its up and running.
```
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
events.js:160
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE :::3000
at Object.exports._errnoException (util.js:1018:11)
at exports._exceptionWithHostPort (util.js:1041:20)
at Server._listen2 (net.js:1258:14)
at listen (net.js:1294:10)
at Server.listen (net.js:1390:5)
at module.exports.promise.then.then (/usr/local/lib/node_modules/composer-rest-server/cli.js:148:19)
at process._tickCallback (internal/process/next_tick.js:109:7)
```
coder-ajay (Thu, 10 Aug 2017 11:57:16 GMT):
@mahoney1 : Hi .. i am stuck here... ` composer-rest-server … ` is giving below error. ` docker ps -a ` showing all images up. The dev-per0.org1.example not showing any port, but its up and running.
```
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
events.js:160
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE :::3000
at Object.exports._errnoException (util.js:1018:11)
at exports._exceptionWithHostPort (util.js:1041:20)
at Server._listen2 (net.js:1258:14)
at listen (net.js:1294:10)
at Server.listen (net.js:1390:5)
at module.exports.promise.then.then (/usr/local/lib/node_modules/composer-rest-server/cli.js:148:19)
at process._tickCallback (internal/process/next_tick.js:109:7)
```
` docker ps -a `
```
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
29eab9cf69d4 dev-peer0.org1.example.com-
mahoney1 (Thu, 10 Aug 2017 12:00:11 GMT):
@jarvis488 - check this article out - you need to delimit in the body of your pasted certificates (and terminate as shown) in this SO question
mahoney1 (Thu, 10 Aug 2017 12:00:11 GMT):
@jarvis488 - check this article out - you need to delimit in the body of your pasted certificates (and terminate as shown) in this SO question https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
mahoney1 (Thu, 10 Aug 2017 12:00:11 GMT):
@jarvis488 - check this article out - you need to delimit in the body of your pasted certificates (and terminate as shown) in this SO question https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service eg. `-----BEGIN CERTIFICATE-----\nMIID6TCCA26gAwIBAgIQCiYEWw1fao ` blah blah
uber.twin (Thu, 10 Aug 2017 12:01:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wWXZF2euqPdCxrwAY) @davidkel I see I'm missing the "FROM" clause. Sample doesn't show though how can one drill in the actual transaction data, as the response seem to only point to a reference e.g.:"transactionInvoked": "resource:org.hyperledger.composer.system.Transaction#2dd4c958-d1b2-44ae-8079-52fd5db85252"
mahoney1 (Thu, 10 Aug 2017 12:03:32 GMT):
See section `Generate REST API` in this doc https://hyperledger.github.io/composer//tutorials/developer-guide.html - its quite straightforward really. If you can `composer network list` the artifacts or assets etc in your running network, then that's a giveway...in your screenshot, it did not discover your network assets, participants, transactions etc.
mahoney1 (Thu, 10 Aug 2017 12:07:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=39J4cHTJqD4GzeB9f) @uber.twin note that it does say at the top of the doc _ "This is the first part of the implementation of functionality to track the transactions" _ :-)
uber.twin (Thu, 10 Aug 2017 12:09:05 GMT):
@mahoney1 so there is not yet query capability to list transaction content?
gen_el (Thu, 10 Aug 2017 12:13:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=v76i7MDFcZoAMXhPz) @uber.twin Seems to be a similar issue. Running queries like `select com.example.TradeTransaction` returns an empty array []
adityasinha4u (Thu, 10 Aug 2017 12:16:14 GMT):
Hi Guys,
I tried to setup a persistent data store for REST server but was unable to do it. I followed the steps mentioned at https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html , all of the commands got executed successfully however when I am trying to access the rest server through URL it is throwing “connection refused” error.
Did anyone faced similar issue ?
mahoney1 (Thu, 10 Aug 2017 12:16:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zWMWSJ5AP6LTp6t2D) @pradeeppadmarajaiah if you want to see it during the submit from your Txn processor, why not use console.log() then change is reflected on asset in Playground when required. see here https://stackoverflow.com/questions/45428189/when-to-call-getassetregistry-to-update-assets-and-the-participants-equivalent . If you've successfully updated the asset, then whey you re-query in Playground connected to the same runtime (Fabric), it should get its current state from the world state
mahoney1 (Thu, 10 Aug 2017 12:16:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zWMWSJ5AP6LTp6t2D) @pradeeppadmarajaiah if you want to see it during the submit from your Txn processor, why not use console.log() the change is reflected on the asset in Playground when re-listed. see here https://stackoverflow.com/questions/45428189/when-to-call-getassetregistry-to-update-assets-and-the-participants-equivalent . If you've successfully updated the asset, then when you re-query in Playground, connected to the same runtime (Fabric), it should get its (the asset's) current state from the world state
uber.twin (Thu, 10 Aug 2017 12:25:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gesxdL8sR6CxZnjQg) @mahoney1 I guess it can be done it two steps,
1)query for transaction trakers:
```SELECT org.hyperledger.composer.system.HistorianRecord FROM HistorianRegistry
WHERE (transactionType == 'myTranType'
```
2)use the returned HistorianRecord.transactionInvoked references to get the actual transaction:
```http://localhost:3001/api/system/transactions/2dd4c958-d1b2-44ae-8079-52fd5db85252```
uber.twin (Thu, 10 Aug 2017 12:25:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gesxdL8sR6CxZnjQg) @mahoney1 I guess it can be done it two steps,
1)query for transaction trackers:
```SELECT org.hyperledger.composer.system.HistorianRecord FROM HistorianRegistry
WHERE (transactionType == 'myTranType'
```
2)use the returned HistorianRecord.transactionInvoked references to get the actual transaction:
```http://localhost:3001/api/system/transactions/2dd4c958-d1b2-44ae-8079-52fd5db85252```
jdockter (Thu, 10 Aug 2017 12:27:47 GMT):
@mahoney1 @davidkel for a transaction processor are there different levels of logging that can be toggled, for example, info, warn, error, debug, etc... ? Right now I just have console.log which is always displayed
davidkel (Thu, 10 Aug 2017 12:42:59 GMT):
@jdockter sorry, no there isn't anything like that
jdockter (Thu, 10 Aug 2017 12:48:03 GMT):
ok
sk (Thu, 10 Aug 2017 12:55:06 GMT):
Has joined the channel.
sk (Thu, 10 Aug 2017 13:13:52 GMT):
I have setup fabric and composer locally, developed simple app & created its .bna with composer-cli. Also have created and started service on Bluemix of (High Security Plan - vNext Limited Beta) and now I want to deploy this *.bna on Bluemix. I have created new connection profile on local-composer-playground and when I click on "Use This Profile", I get dialog box asking "Connect With Identity". What details I need to give here? Also is there any good/straight-forward doc which guides on how to deploy *.bna on Bluemix Blockchain?
I explored on internet but info related to this (how to deploy *.bna on Bluemix Blockchain) not much available.
coder-ajay (Thu, 10 Aug 2017 13:24:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uAh9cW7erBjDGeqbq) @coder-ajay Solved. I already had one instance of ` composer-rest-server ... ` running which was conflicting when I tried to start another instance.
mahoney1 (Thu, 10 Aug 2017 13:33:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=v76i7MDFcZoAMXhPz) @uber.twin querying of transaction content / deltas is a work in progress
mahoney1 (Thu, 10 Aug 2017 13:40:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RFEyoCYAqkPqfBYw5) @uber.twin sure , using System transaction by transaction ID (historian query or otherwise) using REST works fine as things stands today. with the right ACLs allowing etc. So it will give the transaction update carried out, or asset added etc
coder-ajay (Thu, 10 Aug 2017 13:52:25 GMT):
Hi ... where can i get community call videos?
mtgran (Thu, 10 Aug 2017 13:52:44 GMT):
Has joined the channel.
mahoney1 (Thu, 10 Aug 2017 13:54:11 GMT):
you can get them here -> https://drive.google.com/drive/folders/0B_NJV6eJXAA1b25MdHlXdkM0LWc (I noticed that the auto-recordings for this week/last week's are not in that folder yet, will find out) fyi.
coder-ajay (Thu, 10 Aug 2017 14:04:10 GMT):
Thanks. I wanted to see the recording for creating participants from local playground as I am facing problem in syncing participants created in playground and REST API. I am sure this video is available.
torresjeff (Thu, 10 Aug 2017 14:18:07 GMT):
has anyone been able to configure the Fabric CA to connect to an LDAP?
davidkel (Thu, 10 Aug 2017 14:28:17 GMT):
Fabric have some docs here
http://hyperledger-fabric-ca.readthedocs.io/en/latest/users-guide.html#configuring-ldap
if you still have problems suggest asking on the #fabric-ca channel
torresjeff (Thu, 10 Aug 2017 14:39:06 GMT):
thanks!
ScottMorris (Thu, 10 Aug 2017 15:05:15 GMT):
With the REST API and security set, (Noob question) How does one interact with the server via OAuth from a client, like Postman? I've found if I do the OAuth in the browser then steal the cookies and add them to the request it work, but this is far from idea. Any tips?
jdockter (Thu, 10 Aug 2017 15:13:43 GMT):
@ScottMorris would also be interested in that information...just need to the REST server to stay up long enough to figure it out :)
jdockter (Thu, 10 Aug 2017 15:18:24 GMT):
@mahoney1 with the historian, is it possible to find all transactions for a specific asset, like an audit log?
jdockter (Thu, 10 Aug 2017 15:24:40 GMT):
seems like I would have to emit an event for each update to an asset and then capture via the event the asset identifier....then query into the historian record of eventsEmitted where asset identifier was found???
ScottMorris (Thu, 10 Aug 2017 15:25:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aq8RdFmavBErhNtHM) @jdockter We've had no luck in tracking the case of this yet. We're trying to work around it atm.
davidkel (Thu, 10 Aug 2017 15:42:21 GMT):
@here Hyperledger Composer v0.11.2 has been released. A few more important bug fixes have gone into this release. Read all about it here: https://github.com/hyperledger/composer/releases/tag/v0.11.2
ScottMorris (Thu, 10 Aug 2017 15:43:13 GMT):
lol, i just updated to v0.11.1 an hr ago... :shrug:
davidkel (Thu, 10 Aug 2017 15:46:41 GMT):
@ScottMorris so it should be possible to update both client side and chaincode side to 0.11.2.
ScottMorris (Thu, 10 Aug 2017 15:48:09 GMT):
@davidkel hmm, I only updated the client, is there any easy way to update the chaincode without toasting everything? A `composer network update` perhaps?
davidkel (Thu, 10 Aug 2017 15:49:50 GMT):
@ScottMorris it's 2 commands
```
composer runtime install -n (your_business_network) -p hlfv1 -i PeerAdmin
composer network upgrade -n (your_business_network) -p hlfv1 -i PeerAdmin
```
davidkel (Thu, 10 Aug 2017 15:50:23 GMT):
@ScottMorris unfortunately we don't have a fix for the rest server yet :-(
ScottMorris (Thu, 10 Aug 2017 15:51:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZxbivPKgZYBeudiSA) @davidkel Any luck in reproducing it? If you need any additional information let me know.
davidkel (Thu, 10 Aug 2017 15:51:35 GMT):
@ScottMorris No sorry, not had a chance today. Going to start fresh tomorrow
ScottMorris (Thu, 10 Aug 2017 15:51:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZxbivPKgZYBeudiSA) @davidkel Thanks! Hopefully I can go from v0.10.1 to v0.11.2.
ScottMorris (Thu, 10 Aug 2017 15:52:32 GMT):
@davidkel Thanks fro the commands! Hopefully I can go from v0.10.1 to v0.11.2.
davidkel (Thu, 10 Aug 2017 15:54:14 GMT):
I hope you mean 0.11.1 ?
davidkel (Thu, 10 Aug 2017 15:54:46 GMT):
It won't let you do 0.10.1 to 0.11.x as there are incompatible runtime changes
ScottMorris (Thu, 10 Aug 2017 15:56:34 GMT):
@davidkel ahh, then this is a minor issue. Good thing it's all test data. Is there a way to clear the data and install? Maybe _install_ then _deploy_?
davidkel (Thu, 10 Aug 2017 15:57:55 GMT):
@ScottMorris you would have to change the name of your business network as we use that for the chaincode id in fabric
ScottMorris (Thu, 10 Aug 2017 16:00:10 GMT):
@davidkel If I run `stopFabric.sh` then `startFabric.sh` that should reinitialise the docker images I believe
davidkel (Thu, 10 Aug 2017 16:01:28 GMT):
@ScottMorris You may not need the stop, the start probably tears down anything that is running
ScottMorris (Thu, 10 Aug 2017 16:02:57 GMT):
@davidkel nothing like rebuilding a house to upgrade the kitchen sink
ScottMorris (Thu, 10 Aug 2017 16:02:57 GMT):
@davidkel nothing like rebuilding a house to upgrade the kitchen sink :)
davidkel (Thu, 10 Aug 2017 16:05:09 GMT):
Our dev server is a bit brutal that way :-)
ScottMorris (Thu, 10 Aug 2017 16:07:33 GMT):
@davidkel One thing that just occurred to me is the Playground's Wallet's Identities don't seem to be expiring. @jdockter have you played with the playground as of late? Noticed this issue there?
davidkel (Thu, 10 Aug 2017 16:09:00 GMT):
@ScottMorris The way playground persists information is completely different to the way the rest server does it. The rest server uses the Loopback persistentModel facilities that allows you to specify different connectors to persist the information to different back ends
ScottMorris (Thu, 10 Aug 2017 16:10:07 GMT):
@davidkel That explains it then, similar to how Loopback uses Passport to allow the use of different auth methods
nehalshah50 (Thu, 10 Aug 2017 16:13:33 GMT):
How do I change the identity secret once generated through 'composer issue identity' command?
mahoney1 (Thu, 10 Aug 2017 16:25:48 GMT):
@nehalshah50 You can only use the enrollment ID + secret once, as you got the enrollment certificate back - which gets placed into that keyValStore directory - the enrollment secret is ignored for subsequent commands as thereafter, the enrollment certificate is retrieved from the keyValStore directory
mahoney1 (Thu, 10 Aug 2017 16:25:48 GMT):
@nehalshah50 You can only use the enrollment ID + secret once, as you got the enrollment certificate back - which gets placed into the keyValStore directory - the enrollment secret is ignored for subsequent commands as thereafter, the enrollment certificate is retrieved from the keyValStore directory
nehalshah50 (Thu, 10 Aug 2017 16:30:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ebFN8uSehQgsENHxu) @mahoney1 When issuing a new identity lets say from playground gives a secret back with clear warning saying that it is only displayed once. And I assume that the user needs to be given the user id/secret so that he can login. But what if he wants to change his secret? How can he do it? Also sometime in playground I forget to click the 'Add to My wallet' option and then I loose the secret and no way of adding user back to the wallet.
mahoney1 (Thu, 10 Aug 2017 16:44:28 GMT):
@nehalshah50 - I don’t believe you can change the secret once it has been issued. Yes he would need the id/secret.
arsalan 4 (Thu, 10 Aug 2017 17:02:35 GMT):
damn it looks like there are more issues/bugs people are facing then help haha
arsalan 4 (Thu, 10 Aug 2017 17:02:38 GMT):
no answers :(
arsalan 4 (Thu, 10 Aug 2017 17:02:46 GMT):
Gonna repost my issue, can someone support?? Pls im dying here
arsalan 4 (Thu, 10 Aug 2017 17:03:04 GMT):
I've been trying to debug this for some time, has anyone seen this before?
' #Assign Driver to Freight Order should be approved status:
Error: Object with ID 'Participant:12' in collection with ID '$sysregistries' does not exist
at PouchDBUtils.getDocument.then (fbap-network/node_modules/composer-runtime-pouchdb/lib/pouchdbdatacollection.js:83:27)
at process._tickCallback (internal/process/next_tick.js:103:7)'
This is my model:
`participant CarrierDriver identified by userId {
o String userId
o String firstName
o String lastName
o String email
o String password
o String companyName
--> FreightOrder order optional
--> TrackingLog log optional
}`
then my test that calls it:
```
var driver = factory.newResource(NS, 'CarrierDriver', '12');
// driver.SCAC = "scac";
driver.firstName = "Stuart";
driver.lastName = "Little";
driver.email = "stuartlittle@driver.com"
driver.password = "pw";
driver.companyName = "Contractor";
driver.log = factory.newRelationship(NS, 'TrackingLog', '6789');
driver.order = factory.newRelationship(NS, 'FreightOrder', '3456');
```
```
const assignJob = factory.newTransaction(NS, 'AssignJob');
assignJob.driver = factory.newRelationship(NS, 'CarrierDriver', driver.$identifier);
assignJob.order = factory.newRelationship(NS, 'FreightOrder', freightOrder.$identifier);
assignJob.log = factory.newRelationship(NS, 'TrackingLog', trackingLog.$identifier);
//todo add frieght order to correct asset registry as well
// Get the asset registry.
return businessNetworkConnection.getAssetRegistry(NS + '.TrackingLog')
.then((assetRegistry) => {
// add the tracking log to the asset registry.
return assetRegistry.add(trackingLog)
.then(() => {
return businessNetworkConnection.getParticipantRegistry(NS + '.CarrierDriver');
})
.then((participantRegistry) => {
// add the driver
return participantRegistry.add(driver);
})
.then(() => {
return businessNetworkConnection.participantRegistryExists(driver.$identifier);
})
.then((exists) => {
if (exists === true) {
console.log("Exists!!");
}
})
```
It fails right at participantRegistryExists
in which it returns
```
0 passing (3m)
1 failing
1) #Assign Driver to Freight Order should be approved status:
Error: Object with ID 'Participant:12' in collection with ID '$sysregistries' does not exist
at PouchDBUtils.getDocument.then (fbap-network/node_modules/composer-runtime-pouchdb/lib/pouchdbdatacollection.js:83:27)
at process._tickCallback (internal/process/next_tick.js:103:7)
```
anyone have any thoughts? I've looked through other people's responses on this $registries error, but no one's responses seem to answer my error
why is this happening?
arsalan 4 (Thu, 10 Aug 2017 17:03:17 GMT):
ANYONE - PLEASE :'(
nkl199 (Thu, 10 Aug 2017 17:10:29 GMT):
@arsalan 4 - in `businessNetworkConnection.getParticipantRegistry(NS + '.CarrierDriver');` you are correctly passing the name of a registry into bnc.getParticipantRegistry(), and then later you are querying for the existence of a participant registry based on the identifier of an individual within the registry ... not the identifier of the registry
arsalan 4 (Thu, 10 Aug 2017 17:10:50 GMT):
not the identifier of the registry?
arsalan 4 (Thu, 10 Aug 2017 17:11:31 GMT):
Thanks for responding quickly @nkl199, but if im using the same ID shouldn't that work?
nkl199 (Thu, 10 Aug 2017 17:13:21 GMT):
I would assume that driver.$identifier is the identifier of the driver, not the identity of the registry
nkl199 (Thu, 10 Aug 2017 17:14:22 GMT):
participantRegistryExists(id), where id is the unique identifier of the participant registry
arsalan 4 (Thu, 10 Aug 2017 17:15:49 GMT):
identitiy of the registry?
arsalan 4 (Thu, 10 Aug 2017 17:16:02 GMT):
hmm...but I'm checking if that specific driver is IN the registry
arsalan 4 (Thu, 10 Aug 2017 17:16:07 GMT):
but let me try what you're saying
arsalan 4 (Thu, 10 Aug 2017 17:16:15 GMT):
how would I do that exactly, pass the identitiy of the registry?
nkl199 (Thu, 10 Aug 2017 17:16:15 GMT):
if you want to check that the driver has been placed into the registry, then you need to perform a get on the registry
nkl199 (Thu, 10 Aug 2017 17:16:35 GMT):
participantRegistry.add(driver); ... participantRegistry.get(driver);
arsalan 4 (Thu, 10 Aug 2017 17:16:36 GMT):
really? I thought i need to perform an exists in the registry to see if the driver exists in the registry?
arsalan 4 (Thu, 10 Aug 2017 17:16:40 GMT):
interesting
nkl199 (Thu, 10 Aug 2017 17:17:13 GMT):
exists is for the registry itself
nkl199 (Thu, 10 Aug 2017 17:17:18 GMT):
not items within it
arsalan 4 (Thu, 10 Aug 2017 17:17:29 GMT):
oh wow
arsalan 4 (Thu, 10 Aug 2017 17:17:40 GMT):
why would you want to check if the registry exists, rather than the items in the registry? O.o
arsalan 4 (Thu, 10 Aug 2017 17:17:46 GMT):
interesting - oK let me try what you're saying
arsalan 4 (Thu, 10 Aug 2017 17:17:58 GMT):
it still doesn't really explain why driver is missing from the $sysregistries
arsalan 4 (Thu, 10 Aug 2017 17:18:01 GMT):
what does that really mean?
nkl199 (Thu, 10 Aug 2017 17:18:19 GMT):
it is the error you get if you check to see if a registry exists, when it doesnt
arsalan 4 (Thu, 10 Aug 2017 17:18:42 GMT):
ooooohhhh
arsalan 4 (Thu, 10 Aug 2017 17:18:44 GMT):
interesting
arsalan 4 (Thu, 10 Aug 2017 17:19:00 GMT):
I see so what its saying is that the Participant:12 REGISTRY doesnt exist
arsalan 4 (Thu, 10 Aug 2017 17:19:03 GMT):
rather than the item itself
nkl199 (Thu, 10 Aug 2017 17:19:25 GMT):
yeh - that is my assumption
nkl199 (Thu, 10 Aug 2017 17:19:47 GMT):
but participant:12 should exist in the registry itself
arsalan 4 (Thu, 10 Aug 2017 17:20:48 GMT):
yeah exactly
arsalan 4 (Thu, 10 Aug 2017 17:20:53 GMT):
ok just trying it one sec
arsalan 4 (Thu, 10 Aug 2017 17:25:21 GMT):
ehh I can't figure out what to do in my .then after adding to the participant registrylol
arsalan 4 (Thu, 10 Aug 2017 17:25:27 GMT):
i keep getting the next object to be undefined
arsalan 4 (Thu, 10 Aug 2017 17:25:29 GMT):
i.e
arsalan 4 (Thu, 10 Aug 2017 17:25:42 GMT):
```
.then((participantRegistry) => {
// add the driver
return participantRegistry.add(driver);
})
.then(() => {
return
})
```
arsalan 4 (Thu, 10 Aug 2017 17:25:59 GMT):
in that second return participantRegistry is undefined
arsalan 4 (Thu, 10 Aug 2017 17:26:14 GMT):
do I need to do businessnetwork.getParticipantRegistry again :S
nkl199 (Thu, 10 Aug 2017 17:26:59 GMT):
needs to be in the same link of the chain
nkl199 (Thu, 10 Aug 2017 17:36:31 GMT):
`.then((participantRegistry) => {
// add the driver
return participantRegistry.add(driver).then(() => { registry in scope here } )
})
`
arsalan 4 (Thu, 10 Aug 2017 17:38:50 GMT):
i see
arsalan 4 (Thu, 10 Aug 2017 17:38:50 GMT):
thank you sir
arsalan 4 (Thu, 10 Aug 2017 17:54:22 GMT):
seems ' return participantRegistry.get(driver);
' is invalid
arsalan 4 (Thu, 10 Aug 2017 17:54:35 GMT):
participantRegistry.get(driver) doesn't seem to be valid
arsalan 4 (Thu, 10 Aug 2017 17:54:51 GMT):
```
Error: invalid arg specified: Resource {id=org.acme.fbapnetwork.fbap.CarrierDriver#12}
```
arsalan 4 (Thu, 10 Aug 2017 17:59:41 GMT):
so @nkl199 getting the same problem....
arsalan 4 (Thu, 10 Aug 2017 18:00:00 GMT):
```
Error: Object with ID 'Asset:org.acme.fbapnetwork.fbap.CarrierDriver' in collection with ID '$sysregistries' does not exist
at DataCollection.get.PouchDBUtils.getDocument.then (fbap-network/node_modules/composer-runtime-pouchdb/lib/pouchdbdatacollection.js:83:27)
```
arsalan 4 (Thu, 10 Aug 2017 18:00:30 GMT):
heres the code block
arsalan 4 (Thu, 10 Aug 2017 18:00:35 GMT):
```
return businessNetworkConnection.getAssetRegistry(NS + '.TrackingLog')
.then((assetRegistry) => {
// add the tracking log to the asset registry.
return assetRegistry.add(trackingLog)
.then(() => {
return businessNetworkConnection.getParticipantRegistry(NS + '.CarrierDriver');
})
.then((participantRegistry) => {
// add the driver
return participantRegistry.add(driver);
})
.then(() => {
return businessNetworkConnection.getParticipantRegistry(NS + '.CarrierDriver');
})
.then((participantRegistry) => {
return participantRegistry.get(driver.$identifier);
})
.then((exists) => {
if (exists === true) {
console.log("Exists!!");
}
})
```
arsalan 4 (Thu, 10 Aug 2017 18:00:47 GMT):
im not sure its about the participant REGISTRY id anymore
arsalan 4 (Thu, 10 Aug 2017 18:00:52 GMT):
it seems its related to the object itself..?
arsalan 4 (Thu, 10 Aug 2017 18:24:50 GMT):
anyone any ideaas?
arsalan 4 (Thu, 10 Aug 2017 18:25:14 GMT):
if I'm looking for a participant in the registry, why is it saying $sysregistries null
coder-ajay (Thu, 10 Aug 2017 18:30:43 GMT):
Hi .... where does the file cert.pem file gets generated? Path of this file needs to be added in ` composer identity bind -p hlfv1 -n 'digitalproperty-network' -c /tmp/cert.pem ... ` ? I could search cert.pem in `
coder-ajay (Thu, 10 Aug 2017 18:30:43 GMT):
Hi .... where does the file cert.pem file gets generated? Path of this file needs to be added in ` composer identity bind -p hlfv1 -n 'digitalproperty-network' -c /tmp/cert.pem ... ` ? I could search cert.pem in `
mahoney1 (Thu, 10 Aug 2017 18:32:01 GMT):
similar example to what you're doing here https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/test/CarAuction.js L167 - only difference is they've defined 'buyer' as a const (not a var) earlier on. Another example is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/test/CarAuction.js (for assetRegistry - ie just another registry)
mahoney1 (Thu, 10 Aug 2017 18:32:01 GMT):
@arsalan 4 similar example to what you're doing here https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/test/CarAuction.js L167 - only difference is they've defined 'buyer' as a const (not a var) earlier on. Another example is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/test/CarAuction.js (for assetRegistry - ie just another registry)
mahoney1 (Thu, 10 Aug 2017 18:32:01 GMT):
@arsalan 4 similar example to what you're doing here https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/test/CarAuction.js L167 - only difference is they've defined 'buyer' as a const (not a var) earlier on. Another example is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/test/CarAuction.js (for assetRegistry - ie just another registry)
mahoney1 (Thu, 10 Aug 2017 18:50:15 GMT):
@coder-ajay - The cert is provided by Hyperledger Fabric certificate authority (CA) eg using something like `cryptogen`. You're binding an existing fabric identity with a Composer identity linked to a participant. The certificate obviously must be valid for use for submitting transactions on that Hyperledger Fabric network. https://hyperledger.github.io/composer/unstable/managing/identity-bind.html . The path to the public certificate is just the location of where to bind from.
coder-ajay (Thu, 10 Aug 2017 18:55:07 GMT):
@mahoney1 : Okay. But is the file placed at some standard location? Above URL shows the path as _/tmp/cert.pem_. For this path, the bind command throws error as: `Error: Unable to read public key file /tmp/cert.pem. ENOENT: no such file or directory, open '/tmp/cert.pem'`.
arsalan 4 (Thu, 10 Aug 2017 18:57:48 GMT):
@mahoney1 hmm...
arsalan 4 (Thu, 10 Aug 2017 18:58:05 GMT):
@mahoney1 are you suggesting I should just do it like the example? Or have a solution to my problem O.o
arsalan 4 (Thu, 10 Aug 2017 18:58:52 GMT):
@mahoney1 having a hard time seing what Im doing wrong lool
davidkel (Thu, 10 Aug 2017 19:02:50 GMT):
@coder-ajay for the bind command, the certificate (ie the .pem file) is where-ever you have placed it. You have obtained the certificate files (from using cryptogen fabric tool or from a certificate authority) in the form of a .pem file and you have placed it somewhere on your file system. When you issue the bind command you specify the location of the .pem file that is on your file system. Only you know the right path to put into the `-c` parameter.
coder-ajay (Thu, 10 Aug 2017 19:10:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=esxSv3cAbJxEeKBE2) @davidkel Okay. I am unaware of this step of obtaining the certificate file from certificate authority. Can you kindly share URL having details to get this certificate?
davidkel (Thu, 10 Aug 2017 19:21:27 GMT):
@coder-ajay You obtain them from your certificate authority who can generate certificates that are applicable to your fabric in a real world scenario. Alternatively you may find whoever set up the fabric will be able to provide certificates for specific reasons. It would all depend on how the fabric is being operated and what is trying to be achieved. If you are just using a simple development type of fabric setup then I'm not sure why you would need to use bind. Why do you think you need to use bind rather than doing an issue which will obtain certificates from the certificate authority registered in the connection profile and will bind it to the participant specified and also import those certificate into your keyValStore ?
davidkel (Thu, 10 Aug 2017 19:21:27 GMT):
@coder-ajay You obtain them from your certificate authority who can generate certificates that are applicable to your fabric in a real world scenario. Alternatively you may find whoever set up the fabric will be able to provide certificates for specific reasons. It would all depend on how the fabric is being operated and what is trying to be achieved. If you are just using a simple development type of fabric setup then I'm not sure why you would need to use bind. Why do you think you need to use bind rather than doing an issue which will obtain certificates from the certificate authority registered in the connection profile and will bind it to the participant specified ?
coder-ajay (Thu, 10 Aug 2017 19:44:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ehDbbxr28FCKGkxSX) @davidkel : I get your point. To provide some background, I am trying to create participants for REST API. I could create participants by running command `composer participant add …` as suggested in https://hyperledger.github.io/composer/managing/participant-add.html.
But I am continuously failing to issue identity to the participant using command `composer identity issue …` as mentioned in https://hyperledger.github.io/composer/managing/identity-issue.html. This command does not give any output on CLI.
What I understood from the discussion on this form is to create participants and issue identity using `composer-playgroud`, which I could do successfully. Now as per https://drive.google.com/drive/folders/0B_NJV6eJXAA1b25MdHlXdkM0LWc (at approx 49 mins), to get these participants in result of CLI command `composer network ping…` they need to be binded using the command `composer identity bind …’. This bind command needs the location of the certificate file as required parameter, which is where the need of this file arises.
From what you have mentioned, I am clearly mixing things. But unclear on how to issue identity in this case.
davidkel (Thu, 10 Aug 2017 19:58:05 GMT):
@coder-ajay I think we need to understand why composer identity issue is not working correctly for you as that really is the command that you need. You could try setting the debug string `export DEBUG=composer:*` then try the command again to see first the console output and also should put a log file in the logs directory
coder-ajay (Thu, 10 Aug 2017 20:10:36 GMT):
@davidkel : Trying `export DEBUG=composer:*`
andrewdlt (Thu, 10 Aug 2017 20:14:39 GMT):
Has joined the channel.
coder-ajay (Thu, 10 Aug 2017 20:21:19 GMT):
Message Attachments
coder-ajay (Thu, 10 Aug 2017 20:21:28 GMT):
@davidkel : When I run the identity issue command, the cursor just moves to next line and nothing happens. Attaching screenshot.
coder-ajay (Thu, 10 Aug 2017 20:22:43 GMT):
No errors listed below. CLI just don't move further.. neither success nor fail.
CT123 (Thu, 10 Aug 2017 20:29:44 GMT):
@davidkel like coder-ajay and others I'm testing but due to the updated composer release yesterday I need to completely update -- what are the detailed steps to stop fabric, kill docker, remove files, and reinstall against most recent fabric and composer and composer-platground? I've 'starred' and tried 3 different suggested steps and they all produce errors. Can you please detail how one correctly updates? Thanks much in advance.
ScottMorris (Thu, 10 Aug 2017 20:40:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CzL27jtWBd4LPec9B) @CT123 What i'm about to do is run `startFabric.sh` last time I ran it it wiped everything, which should allow me to easily reinstall the network with the updated version of _composer_
ScottMorris (Thu, 10 Aug 2017 20:40:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CzL27jtWBd4LPec9B) @CT123 What i'm about to do is run `startFabric.sh` last time I ran it it wiped everything, which should allow me to easily reinstall the network with the updated version of _composer_.
CT123 (Thu, 10 Aug 2017 20:44:57 GMT):
@ScottMorris thank you -- fabric is currently running - should I run stopFabric.sh first? Also, based on 3 recent posts it's not completely clear what *exact* steps I should take to update composer to the most current version - one suggested manually removing a directory; one suggested issuing a series of npm uninstall and kill commands, etc. Any suggestions? I'm documenting as I go as I need to hand this off to someone who is testing my work on a different platform so will be happy to share back to the community -- but I need a best practices suggestion for upgrading. Thanks in advance.
ScottMorris (Thu, 10 Aug 2017 20:46:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2cTswcNzLZoT3gc4p) @CT123 I didn't need to run `stopFabric.sh`, start stopped it then started it again.
ScottMorris (Thu, 10 Aug 2017 20:46:16 GMT):
@CT123 I didn't need to run `stopFabric.sh`, start stopped it then started it again.
ScottMorris (Thu, 10 Aug 2017 20:46:16 GMT):
in teh REST API how do you figure out what your default Identity is? There is a POST call to set a default, but no GET call to get the default.
davidkel (Thu, 10 Aug 2017 20:47:28 GMT):
@coder-ajay the `>` is a unix line continuation prompt meaning it's expecting more input. Try this version of your command
```
composer identity issue -p hlfv1 -n cph-application -i admin -s adminpw -u govtone -a org.acme.cphnetwork.Govt#GivtOn
```
I've removed the quotes and the the word resource from the -a parameter (not sure though why that caused a continuation prompt) but if you try my version let's see how you get on
coder-ajay (Thu, 10 Aug 2017 20:53:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CzL27jtWBd4LPec9B) @CT123 : I followed below steps to upgrade the version correctly. Few commands might not be needed, but they didn't harm (like first 3 image removing commands). Hope this helps.
1- Remove all the existing images. (Simply the last two commands might work)
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
docker rm -f $(docker ps -a -q)
docker rmi -f $(docker images -q)
```
2- Delete all files and folder from '.composer-connection-profiles' and '.composer-credentials' folders. These folders are normally created under the login folder (admin in my case). These folders are hidden by default
3- Uninstall and install 'composer-cli', 'generator-hyperledger-composer', 'composer-rest-server'.
4- Download and unzip the latest fabric tools, download, start the fabric and create a new composer profile.
Ref: https://hyperledger.github.io/composer/unstable/installing/development-tools.html
```
mkdir ~/fabric-tools && cd ~/fabric-tools
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip
```
```
cd ~/fabric-tools
./downloadFabric.sh
./startFabric.sh
./createComposerProfile.sh
```
5- Delete the node_modules folder from your application directory and run`npm install`
coder-ajay (Thu, 10 Aug 2017 20:53:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CzL27jtWBd4LPec9B) @CT123 : I followed below steps to upgrade the version correctly. Few commands might not be needed, but they didn't harm (like first 3 image removing commands). Hope this helps.
1- Remove all the existing images. (Simply the last two commands might work)
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
docker rm -f $(docker ps -a -q)
docker rmi -f $(docker images -q)
```
2- Delete all files and folder from '.composer-connection-profiles' and '.composer-credentials' folders. These folders are normally created under the login folder (admin in my case). These folders are hidden by default
3- Uninstall and install 'composer-cli', 'generator-hyperledger-composer', 'composer-rest-server'.
4- Download and unzip the latest fabric tools, download, start the fabric and create a new composer profile.
Ref: https://hyperledger.github.io/composer/unstable/installing/development-tools.html
```
mkdir ~/fabric-tools && cd ~/fabric-tools
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip
```
and
```
cd ~/fabric-tools
./downloadFabric.sh
./startFabric.sh
./createComposerProfile.sh
```
5- Delete the node_modules folder from your application directory and run`npm install`
coder-ajay (Thu, 10 Aug 2017 20:53:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CzL27jtWBd4LPec9B) @CT123 : I followed below steps to upgrade the version correctly. Few commands might not be needed, but they didn't harm (like first 3 image removing commands). Hope this helps.
1- Remove all the existing images. (Simply the last two commands might work)
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
docker rm -f $(docker ps -a -q)
docker rmi -f $(docker images -q)
```
2- Delete all files and folder from '.composer-connection-profiles' and '.composer-credentials' folders. These folders are normally created under the login folder (admin in my case). These folders are hidden by default
3- Uninstall and install 'composer-cli', 'generator-hyperledger-composer', 'composer-rest-server'.
4- Download and unzip the latest fabric tools, download, start the fabric and create a new composer profile.
Ref: https://hyperledger.github.io/composer/unstable/installing/development-tools.html
```
mkdir ~/fabric-tools && cd ~/fabric-tools
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip
```
and
```
cd ~/fabric-tools
./downloadFabric.sh
./startFabric.sh
./createComposerProfile.sh
```
5- Delete the node_modules folder from your application directory and run`npm install`
coder-ajay (Thu, 10 Aug 2017 20:53:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CzL27jtWBd4LPec9B) @CT123 : I followed below steps to upgrade the version correctly. Few commands might not be needed, but they didn't harm (like first 3 image removing commands). Hope this helps.
1- Remove all the existing images. (Simply the last two commands might work)
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
docker rm -f $(docker ps -a -q)
docker rmi -f $(docker images -q)
```
2- Delete all files and folder from '.composer-connection-profiles' and '.composer-credentials' folders. These folders are normally created under the login folder (admin in my case). These folders are hidden by default
3- Uninstall and install 'composer-cli', 'generator-hyperledger-composer', 'composer-rest-server'.
4- Download and unzip the latest fabric tools, download, start the fabric and create a new composer profile.
Ref: https://hyperledger.github.io/composer/unstable/installing/development-tools.html
```
mkdir ~/fabric-tools && cd ~/fabric-tools
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip
```
and
```
cd ~/fabric-tools
./downloadFabric.sh
./startFabric.sh
./createComposerProfile.sh
```
5- Delete the node_modules folder from your application directory and run`npm install`
coder-ajay (Thu, 10 Aug 2017 20:53:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CzL27jtWBd4LPec9B) @CT123 : I followed below steps to upgrade the version correctly. Few commands might not be needed, but they didn't harm (like first 3 image removing commands). Hope this helps.
1- Remove all the existing images. (Simply the last two commands might work)
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
docker rm -f $(docker ps -a -q)
docker rmi -f $(docker images -q)
```
2- Delete all files and folder from '.composer-connection-profiles' and '.composer-credentials' folders. These folders are normally created under the login folder (admin in my case). These folders are hidden by default
3- Uninstall and install 'composer-cli', 'generator-hyperledger-composer', 'composer-rest-server'.
4- Download and unzip the latest fabric tools, download, start the fabric and create a new composer profile.
Ref: https://hyperledger.github.io/composer/unstable/installing/development-tools.html
mkdir ~/fabric-tools && cd ~/fabric-tools
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip
and
cd ~/fabric-tools
./downloadFabric.sh
./startFabric.sh
./createComposerProfile.sh
5- Delete the node_modules folder from your application directory and run`npm install`
coder-ajay (Thu, 10 Aug 2017 20:53:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CzL27jtWBd4LPec9B) @CT123 : I followed below steps to upgrade the version correctly. Few commands might not be needed, but they didn't harm (like first 3 image removing commands). Hope this helps.
1- Remove all the existing images. (Simply the last two commands might work)
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
docker rm -f $(docker ps -a -q)
docker rmi -f $(docker images -q)
```
2- Delete all files and folder from '.composer-connection-profiles' and '.composer-credentials' folders. These folders are normally created under the login folder (admin in my case). These folders are hidden by default
3- Uninstall and install 'composer-cli', 'generator-hyperledger-composer', 'composer-rest-server'.
4- Download and unzip the latest fabric tools, download, start the fabric and create a new composer profile.
Ref: https://hyperledger.github.io/composer/unstable/installing/development-tools.html
mkdir ~/fabric-tools && cd ~/fabric-tools
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip
and
cd ~/fabric-tools
./downloadFabric.sh
./startFabric.sh
./createComposerProfile.sh
5- Delete the node_modules folder from your application directory and run`npm install`
CT123 (Thu, 10 Aug 2017 21:00:36 GMT):
@coder-ajay Thank you very much -- will give those a try!
coder-ajay (Thu, 10 Aug 2017 21:01:42 GMT):
@CT123 : Sorry for the poor code highlighting above :)
coder-ajay (Thu, 10 Aug 2017 21:02:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=v747yT6E8cRJJWkXj) @davidkel : Its running now but giving error: `Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]`
davidkel (Thu, 10 Aug 2017 21:06:29 GMT):
@coder-ajay ok, thats a good step forward. I suspect that it fails because the admin id currently in your keyValStore is not valid because since you enrolled admin and downloaded the certs you have stopped and started the CA Server.
To fix that you need to remove the certificate information from the ~/.composer-credentials directory. The easiest way for that is to delete that directory and just re-run createComposerProfile.sh as this will put back in there the PeerAdmin credential information required to install/start/deploy to our fabric-dev-server
davidkel (Thu, 10 Aug 2017 21:07:31 GMT):
Then try the command again
coder-ajay (Thu, 10 Aug 2017 21:08:07 GMT):
@davidkel : Okay. Let me try this.
coder-ajay (Thu, 10 Aug 2017 21:24:20 GMT):
@davidkel : Yes .. it worked :)
coder-ajay (Thu, 10 Aug 2017 21:24:23 GMT):
Thanks for all the help :thumbsup:
coder-ajay (Thu, 10 Aug 2017 21:24:32 GMT):
Much appreciated.
CT123 (Thu, 10 Aug 2017 21:43:52 GMT):
@coder-ajay docker kill $(docker ps -q) presents the following errors:
docker kill $(docker ps -q)
"docker kill" requires at least 1 argument(s).
See 'docker kill --help'.
Usage: docker kill [OPTIONS] CONTAINER [CONTAINER...]
Kill one or more running containers
coder-ajay (Thu, 10 Aug 2017 21:45:21 GMT):
@CT123 : You can ignore it. After your all commands run ` docker ps -a ` which should return empty table.
coder-ajay (Thu, 10 Aug 2017 21:45:54 GMT):
You can refer https://davidwalsh.name/docker-remove-all-images-containers to remove all images.
coder-ajay (Thu, 10 Aug 2017 21:49:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RNbaJYXAonHqXJTeB) @davidkel : A newbie question. How to stop ` export DEBUG=composer:* ` and let CLI run in normal way?
arsalan 4 (Thu, 10 Aug 2017 21:49:23 GMT):
this is so weird!!
davidkel (Thu, 10 Aug 2017 21:49:34 GMT):
@coder-ajay `unset DEBUG`
arsalan 4 (Thu, 10 Aug 2017 21:49:39 GMT):
can someone explain, why I'm getting this - doesn't make any sense:
arsalan 4 (Thu, 10 Aug 2017 21:50:03 GMT):
```
participant CarrierDriver identified by userId {
o String userId
o String firstName
o String lastName
o String email
o String password
o String companyName
--> FreightOrder order optional
--> TrackingLog log optional
}
```
arsalan 4 (Thu, 10 Aug 2017 21:50:07 GMT):
then I see this error
arsalan 4 (Thu, 10 Aug 2017 21:51:02 GMT):
with this code in test
arsalan 4 (Thu, 10 Aug 2017 21:51:08 GMT):
```
eturn businessNetworkConnection.getAssetRegistry(NS + '.TrackingLog')
.then((assetRegistry) => {
// add the tracking log to the asset registry.
return assetRegistry.add(trackingLog)
.then(() => {
return businessNetworkConnection.getParticipantRegistry(NS + '.CarrierDriver');
})
.then((participantRegistry) => {
// add the driver
return participantRegistry.add(driver);
})
.then(() => {
return businessNetworkConnection.getParticipantRegistry(NS + '.CarrierDriver');
})
```
arsalan 4 (Thu, 10 Aug 2017 21:51:10 GMT):
and the error:
arsalan 4 (Thu, 10 Aug 2017 21:51:22 GMT):
```
1) #Assign Driver to Freight Order should be approved status:
Error: Object with ID 'Asset:org.acme.fbapnetwork.fbap.CarrierDriver' in collection with ID '$sysregistries' does not exist
```
arsalan 4 (Thu, 10 Aug 2017 21:51:32 GMT):
Why does it say 'Asset:org.acme.fbapnetwork.fbap.CarrierDriver'
arsalan 4 (Thu, 10 Aug 2017 21:51:42 GMT):
its clearly a 'Participant' as highlighted by the model!!
arsalan 4 (Thu, 10 Aug 2017 21:51:43 GMT):
wtf?
arsalan 4 (Thu, 10 Aug 2017 21:53:04 GMT):
that doesn't make any sense? Can someone clearly translate what $sysregistries is?
ScottMorris (Thu, 10 Aug 2017 21:56:00 GMT):
in teh REST API how do you figure out what your default Identity is? There is a POST call to set a default, but no GET call to get the default.
adrianblakey (Thu, 10 Aug 2017 22:04:51 GMT):
Please can someone point me to the URL for the javascript apis?
jdockter (Thu, 10 Aug 2017 22:05:10 GMT):
@ScottMorris I think all you have is system/ping which will resolve to the participant you issued the current identity to....system/identities has a state field but I think it just shows which identities are ACTIVATED
jdockter (Thu, 10 Aug 2017 22:05:30 GMT):
@adrianblakey https://hyperledger.github.io/composer/jsdoc/index.html
adrianblakey (Thu, 10 Aug 2017 22:05:35 GMT):
ty
adrianblakey (Thu, 10 Aug 2017 22:06:54 GMT):
argh - I seem to be going in hyperlink circles - I need a link to the "javadoc" for the api
coder-ajay (Thu, 10 Aug 2017 22:11:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5p8bTPyu9ruqzN8s9) @ScottMorris I don't think you can simply get data from GET without putting in the id parameter value. You need to put id value and see the result. To get list of identities you an run ` composer network list ` .... if thats what you want to know.
arsalan 4 (Thu, 10 Aug 2017 22:24:12 GMT):
anyone have any response to my bug listed above?
arsalan 4 (Thu, 10 Aug 2017 22:24:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=g9rgCAwXGwMD4adfx) @arsalan 4 anyone?
arsalan 4 (Thu, 10 Aug 2017 22:56:20 GMT):
does ANYONE know what $systemregistries means? O.o
CT123 (Thu, 10 Aug 2017 23:51:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CETxJ843iqvBBwthn) @coder-ajay
CT123 (Thu, 10 Aug 2017 23:51:26 GMT):
all works except npm install composer-rest-server which return:
npm install composer-rest-server
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
fabric-dev-servers@0.0.5 /Users/CT15/temp/HL-COMPOSE/fabric-tools
└── (empty)
npm ERR! code 1
CT123 (Thu, 10 Aug 2017 23:51:26 GMT):
all works except npm install composer-rest-server which return:
npm install composer-rest-server
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
fabric-dev-servers@0.0.5 /Users/CT15/temp/HL-COMPOSE/fabric-tools
└── (empty)
npm ERR! code 1
CT123 (Thu, 10 Aug 2017 23:52:10 GMT):
was there something you needed to do to get composer-rest-server to work after the reinstall?
glupta (Fri, 11 Aug 2017 05:36:06 GMT):
Has joined the channel.
dcmartin (Fri, 11 Aug 2017 05:47:31 GMT):
Has joined the channel.
coder-ajay (Fri, 11 Aug 2017 06:42:32 GMT):
@CT123 : Did you uninstall and then installed composer-rest-server? If not, its recommended. Regarding the warnings and errors, I remember getting these warnings... not sure about the error. So at the end did it show installation successful or command fail?
gitSrinidhi (Fri, 11 Aug 2017 07:28:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KbwAaoTrCtL73D887) @gitSrinidhi Cant it be done on the same machine ?
IvanPopkov (Fri, 11 Aug 2017 07:58:58 GMT):
Has joined the channel.
gitSrinidhi (Fri, 11 Aug 2017 08:05:46 GMT):
Hi<
gitSrinidhi (Fri, 11 Aug 2017 08:09:18 GMT):
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Could not find any functions to execute for
transaction org.acm.assetcontrol.`RemoveLowConfigRam`#234f1cf6-1ad7-41bb-9aa0-d05c0dafd420)",
"stack": "Error: Error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Could not find any functions to execute for
transaction org.acm.assetcontrol.`RemoveLowConfigRam`#234f1cf6-1ad7-41bb-9aa0-d05c0dafd420)\n at
_initializeChannel.then.then.then.then.catch (/home/srinidhi/.nvm/versions/node/v6.11.2/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:860:34)"
}
}
gitSrinidhi (Fri, 11 Aug 2017 08:09:18 GMT):
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Could not find any functions to execute for
transaction org.acm.assetcontrol.`RemoveLowConfigRam`#234f1cf6-1ad7-41bb-9aa0-d05c0dafd420)",
"stack": "Error: Error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Could not find any functions to execute for
transaction org.acm.assetcontrol.`RemoveLowConfigRam`#234f1cf6-1ad7-41bb-9aa0-d05c0dafd420)\n at
_initializeChannel.then.then.then.then.catch (/home/srinidhi/.nvm/versions/node/v6.11.2/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:860:34)"
}
}
gitSrinidhi (Fri, 11 Aug 2017 08:10:52 GMT):
i have `disposeLowConfigRam` in my queries.qry and referring to same from transaction processor functions.
mahoney1 (Fri, 11 Aug 2017 08:44:57 GMT):
@gitSrinidhi yes, it can be done on the same machine
mahoney1 (Fri, 11 Aug 2017 08:50:52 GMT):
@gitSrinidhi see this S/Overflow https://stackoverflow.com/questions/43666890/fabric-composer-test-code-not-working - its likely to be (as it says above) missing function name - see item 2 (annotation approach) and check how you've defined it , once you're happy with it (try testing it in playground) try updating your network
FabricWhiskey (Fri, 11 Aug 2017 08:54:25 GMT):
Has joined the channel.
gitSrinidhi (Fri, 11 Aug 2017 09:28:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=69Mb8hFBf4umnxL7Z) @mahoney1 Followed annotations. still facing the same issue.
IvanPopkov (Fri, 11 Aug 2017 09:33:45 GMT):
https://github.com/hyperledger/composer/blob/master/packages/composer-rest-server/server/providers.json - as I can see there is a default auth strategy, but how can I pass required params through curl? If I understood clearly I should pass identity and secret
pradeeppadmarajaiah (Fri, 11 Aug 2017 09:36:02 GMT):
I have a requirement where the asset has the multiple attributes. For example, if asset has an attachment attribute, how to handle it.??
Like String , Integer Do we any type or reference to handle ??
pradeeppadmarajaiah (Fri, 11 Aug 2017 09:36:02 GMT):
I have a requirement where the asset has the multiple attachment attributes. For example, if the asset has an attachment attribute, how to handle it.??
Like String, Integer Do we any type or reference to handling attachment ??
pradeeppadmarajaiah (Fri, 11 Aug 2017 09:47:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7TqS9MKgnpwWpBi3v) @mahoney1
pradeeppadmarajaiah (Fri, 11 Aug 2017 09:49:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7TqS9MKgnpwWpBi3v) @mahoney1 I was see the existing data in the composer playground test enviroment, then based the current data. I have to modify it. Similarly , I need to see the record status ,before modifying it. Please suggest
pradeeppadmarajaiah (Fri, 11 Aug 2017 09:49:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7TqS9MKgnpwWpBi3v) @mahoney1 I want to see the existing data in the composer playground test enviroment, then based the current data, I have to modify it. Similarly, I need to see the record status ,before modifying it. Please suggest
gitSrinidhi (Fri, 11 Aug 2017 10:02:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=69Mb8hFBf4umnxL7Z) @mahoney1 It worked ! Thanks for your continuous support :)
mahoney1 (Fri, 11 Aug 2017 10:06:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vGKEPKzifNsFFyQ2H) @gitSrinidhi can't do much without seeing your model and script/ txn processor definition
mahoney1 (Fri, 11 Aug 2017 10:07:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WCfBtmtqX9JbvSity) @gitSrinidhi just seen your post.
gitSrinidhi (Fri, 11 Aug 2017 10:07:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sXrcovnoMZs9vRjT2) @mahoney1 it worked. Thanks.
mahoney1 (Fri, 11 Aug 2017 10:14:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tKkw3rjWiNofcpnXh) @IvanPopkov https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html - not tried with curl sorry - perhaps you can use curl -u _id:secret_ and -L to follow redirection? ie after providing your PROVIDER info etc.
mahoney1 (Fri, 11 Aug 2017 10:24:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oAajCCzkAyvaKMXyo) @pradeeppadmarajaiah Not sure what the use case is. - if an asset has multiple attachment associated can't it be an array? See https://hyperledger.github.io/composer/reference/cto_language.html as in array of attachment references (presumably) to BLOBs or such like? All types in Composer may be declared as array.
mahoney1 (Fri, 11 Aug 2017 10:29:10 GMT):
@pradeeppadmarajaiah _I want to see the existing data in the composer playground test enviroment, then based the current data, I have to modify it. Similarly, I need to see the record status ,before modifying it._ What you're seeing is (if connected to a runtime Fabric) what's in the world state. If you want to see what the transaction you submitted did (for which you get a transaction ID - check out the Historian in playground) - then suggest to spin up composer-rest-server and do a ```
http://localhost:300/api/system/transactions//{id} ``` to see what happened.
mahoney1 (Fri, 11 Aug 2017 10:29:10 GMT):
@pradeeppadmarajaiah _I want to see the existing data in the composer playground test enviroment, then based the current data, I have to modify it. Similarly, I need to see the record status ,before modifying it._ What you're seeing is (if connected to a runtime Fabric) what's in the world state. If you want to see what the transaction you submitted did (for which you get a transaction ID - check out the Historian in playground) - then suggest to spin up composer-rest-server and do a ```
http://localhost:3000/api/system/transactions//{id} ``` to see what happened.
IvanPopkov (Fri, 11 Aug 2017 10:35:36 GMT):
@mahoney1 no luck with -u :( API says "message":"Authorization Required"
mahoney1 (Fri, 11 Aug 2017 10:38:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=f9KJazRZCaysXy2v2) @IvanPopkov well at least you know its telling the truth :-) If you want to use CURL, you'll have to experiment, assuming you've got REST server up and authorizing presently :-) This blog may help ? https://blog.scottlowe.org/2014/02/19/using-curl-to-interact-with-a-restful-api/
indira.kalagara (Fri, 11 Aug 2017 11:33:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AaGSyox3D2qno8mgr) @mahoney1 Hi, I have tried the approach. On my local machine (Mac OS) I have set the npm config prefix to a directory for which i have permissions, then set the Path, install the composer-cli and could run composer network deploy succuessfully . However I am trying the same steps on the Bluemix Delivery Pipeline ....on Build Stage. However I still get the "EACCESS" error, when the composer network deploy is executed.
Does composer network deploy is trying to access any system files ?
I do see that it is creating the trace_xx.log in current directory ...So I have created logs folder with the permissions as well. I still see the same EACCESS issue.
Can you help me what exactly happens in background ? Do we need to request any more file system permissions to run the deploy command.
mahoney1 (Fri, 11 Aug 2017 11:38:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kiKY8whayiAocmw59) @arsalan 4 try using getFullyQualifiedIdentifer() to see your participant (code snippet) ```.then(() => {
return businessNetworkConnection.getParticipantRegistry(NS + '.CarrierDriver');
})
.then((participantRegistry) => {
console.log('Seen Trader : ' + driver.getFullyQualifiedIdentifier() + 'driver info ');
}) ``` should give you the FQ driver (and the object) you want - so should return a driver object (eg. org.acme.fbapnetwork.fbap.CarrierDriver#abc1 ) from the Participant Registry Participant:org.acme.fbapnetwork.fbap.CarrierDriver etc etc so replace the console log (or add to etc) above with something like ```return participantRegistry.get(driver.getFullyQualifiedIdentifier()); ```
mahoney1 (Fri, 11 Aug 2017 11:38:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kiKY8whayiAocmw59) @arsalan 4 try using getFullyQualifiedIdentifer() to see your participant (code snippet) ```.then(() => {
return businessNetworkConnection.getParticipantRegistry(NS + '.CarrierDriver');
})
.then((participantRegistry) => {
console.log('Seen Driver : ' + driver.getFullyQualifiedIdentifier() + 'driver info ');
}) ``` should give you the FQ driver (and the object) you want - so should return a driver object (eg. org.acme.fbapnetwork.fbap.CarrierDriver#abc1 ) from the Participant Registry Participant:org.acme.fbapnetwork.fbap.CarrierDriver etc etc so replace the console log (or add to etc) above with something like ```return participantRegistry.get(driver.getFullyQualifiedIdentifier()); ```
mahoney1 (Fri, 11 Aug 2017 11:38:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kiKY8whayiAocmw59) @arsalan 4 try using getFullyQualifiedIdentifer() to see your participant (code snippet) ```.then(() => {
return businessNetworkConnection.getParticipantRegistry(NS + '.CarrierDriver');
})
.then((participantRegistry) => {
console.log('Seen Driver : ' + driver.getFullyQualifiedIdentifier() + 'driver info ');
})
mahoney1 (Fri, 11 Aug 2017 11:38:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kiKY8whayiAocmw59) @arsalan 4 try using getFullyQualifiedIdentifer() to see your participant (code snippet) ```.then(() => {
return businessNetworkConnection.getParticipantRegistry(NS + '.CarrierDriver');
})
.then((participantRegistry) => {
console.log('Seen Driver : ' + driver.getFullyQualifiedIdentifier() + 'driver info ');
}) ``` should give you the FQ driver (and the object) you want - so should return a driver object (eg. org.acme.fbapnetwork.fbap.CarrierDriver#abc1 ) from the Participant Registry Participant:org.acme.fbapnetwork.fbap.CarrierDriver etc etc so replace the console log (or add to etc) above with something like ```return participantRegistry.get(driver.getFullyQualifiedIdentifier()); ```
mahoney1 (Fri, 11 Aug 2017 11:38:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kiKY8whayiAocmw59) @arsalan 4 try using getFullyQualifiedIdentifer() to see your participant (code snippet) ```.then(() => {
return businessNetworkConnection.getParticipantRegistry(NS + '.CarrierDriver');
})
.then((participantRegistry) => {
console.log('Seen Driver : ' + driver.getFullyQualifiedIdentifier() + 'driver info ');
}) ``` should give you the FQ driver (and the object) you want - so should return a driver object (eg. org.acme.fbapnetwork.fbap.CarrierDriver#abc1 ) from the Participant Registry Participant:org.acme.fbapnetwork.fbap.CarrierDriver etc etc so replace the console log (or add to etc) above with something like ` return participantRegistry.get(driver.getFullyQualifiedIdentifier()); `
gitSrinidhi (Fri, 11 Aug 2017 11:42:21 GMT):
Is there any sample that demonstrates sharing of smart contracts b/w two organizations ?
gitSrinidhi (Fri, 11 Aug 2017 11:42:59 GMT):
or any document which gives idea to create two organisation in fabric ?
mahoney1 (Fri, 11 Aug 2017 11:49:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2pnry2vJYJZDvrSMQ) @indira.kalagara composer network deploys - to composer runtime on the peer(s). Just to clarify that first. Now to your EACCESS problem. If there's some logs (as you've mentioned) being written to then that would explain it (EACESS is a *filesystem* error on Unix or at best file cache error ... So - what is the issue with having a user with the appropriate level authority in the directory where you're installing, I ask. ICan npm set config not be done here again if you are restricted? some questions for you.
mahoney1 (Fri, 11 Aug 2017 11:49:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2pnry2vJYJZDvrSMQ) @indira.kalagara composer network deploys - to composer runtime on the peer(s). Just to clarify that first. Now to your EACCESS problem. If there's some logs (as you've mentioned) being written to then that would explain it (EACESS is a *filesystem* error on Unix or at best file cache error ... So - what is the issue with having a user with the appropriate level authority in the directory where you're installing, I ask. Can npm set config not be done here again if you are restricted? some questions for you.
mahoney1 (Fri, 11 Aug 2017 12:08:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zAmm9cwe8sFttr3Md) @gitSrinidhi For Fabric question - you can look at a 4 peer, multi-org (3 members 1 Orderer and two peer Orgs) example here -> http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html - not sure what you mean on first q - the smart contract code is agreed between parties (via collaborative effort or otherwise) in the first place. ie already shared. May wish to elaborate.
indira.kalagara (Fri, 11 Aug 2017 12:17:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MShcc32MiZXEiFjyg) @mahoney1 Hi, Thanks for your response. As I mentioned earlier I am trying this on Bluemix Delivery pipeline to automate the smart contract deployment. So on delivery pipeline I have permissions on the directory called pipeline and from this directory I am executing the network deploy command. Since the same approach is working fine on Local machine without root access, I would like to understand what else is the composer network deploy command is trying to access, so that I can verify and see if I am missing any required things.
I have tried with our without setting the 'npm config set prefix' and in both the cases I see the same EACCESS issue.
mahoney1 (Fri, 11 Aug 2017 12:33:23 GMT):
composer network deploy will instantiate the business network on the Fabric and essentially start / spins-up a new chaincode container for the business network where none exists before.
mahoney1 (Fri, 11 Aug 2017 12:33:23 GMT):
@indira.kalagara composer network deploy will instantiate the business network on the Fabric and essentially start / spins-up a new chaincode container for the business network where none exists before.
Hefziben (Fri, 11 Aug 2017 13:50:47 GMT):
Has joined the channel.
Hefziben (Fri, 11 Aug 2017 13:53:35 GMT):
Hello team, I am new to composer and I like help on developing a simple network to sell products where balance is deducted from customer after purchase. any help?
Hefziben (Fri, 11 Aug 2017 13:55:49 GMT):
this is something like, I receive balance, I purchase an asset with a set price and balance gets transferred to seller
mastersingh24 (Fri, 11 Aug 2017 14:06:10 GMT):
[moving to the #composer channel ](https://chat.hyperledger.org/channel/general?msg=nkmjyNaFYSmuDhMcz) @AdeshShah
AdeshShah (Fri, 11 Aug 2017 14:06:10 GMT):
Has joined the channel.
ScottMorris (Fri, 11 Aug 2017 14:26:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zeRh6wFubuXy2nDsD) @jdockter Thanks! This should help in my quest.
ScottMorris (Fri, 11 Aug 2017 14:30:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=K6PgbYyzx2M3P7mCY) @coder-ajay As @jdockter said, Ping returns to you the participant you are making the call as, which will give me the default ID, and I can then restrict things in code via that.
ScottMorris (Fri, 11 Aug 2017 14:33:27 GMT):
The one thing I'm still confused about is how to authenticate with the REST server via OAuth, then use that in an external client that isn't the browser?
SmokingAze (Fri, 11 Aug 2017 14:55:35 GMT):
Has joined the channel.
SmokingAze (Fri, 11 Aug 2017 14:56:23 GMT):
Hi - is this channel open to asking questions regarding errors in composer for hyperledger ?
DannyWong (Fri, 11 Aug 2017 15:04:45 GMT):
not just errors.... discussion on thoughts, design discussions also go here
DannyWong (Fri, 11 Aug 2017 15:05:53 GMT):
folks, I cant quite believe it takes 3-4 seconds to complete a tx (1 endroser + solo orderer) on my mac (new model with 16G ram)
DannyWong (Fri, 11 Aug 2017 15:06:06 GMT):
5-6 seconds sometimes
DannyWong (Fri, 11 Aug 2017 15:06:36 GMT):
with pure SDK, it usually just 2-2.5 seconds... What are you guys experience?
DannyWong (Fri, 11 Aug 2017 15:07:07 GMT):
i set the log level of peer and `composer network loglevel` to ERROR already..
mahoney1 (Fri, 11 Aug 2017 15:17:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nemyQGEKoQ2inuqLN) @Hefziben hi there and welcome ! Try out the developer tutorial for starters to get going -> https://hyperledger.github.io/composer/tutorials/developer-guide.html Then take a look at some of the sample networks in particular Car Auction network https://github.com/hyperledger/composer-sample-networks Also, you can look at Car Auction network and see the example of a trigger on acceptance of highest bidder, above a Reserve price being met for example. https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/lib/logic.js - or you could look at this account balance scenario here https://stackoverflow.com/questions/45428189/when-to-call-getassetregistry-to-update-assets-and-the-participants-equivalent .
mahoney1 (Fri, 11 Aug 2017 15:17:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nemyQGEKoQ2inuqLN) @Hefziben hi there and welcome ! Try out the developer tutorial for starters to get going -> https://hyperledger.github.io/composer/tutorials/developer-guide.html Then take a look at some of the sample networks in particular Car Auction network https://github.com/hyperledger/composer-sample-networks Also, you can look at Car Auction network transaction processor (smart contract) logic and see the example of a trigger on acceptance of highest bidder, above a Reserve price being met for example. https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/lib/logic.js - or you could look at this account balance scenario here https://stackoverflow.com/questions/45428189/when-to-call-getassetregistry-to-update-assets-and-the-participants-equivalent .
mahoney1 (Fri, 11 Aug 2017 15:19:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=z7a9qHkMaB48ero7F) @SmokingAze would suggest to create a Stack Overflow ticket (tagged hyperledger composer) at https://stackoverflow.com/questions/tagged/hyperledger-composer with a clear definition of the problem, environment, version used, including any relevant output or logs to give background or context to the problem - thanks
mahoney1 (Fri, 11 Aug 2017 15:25:40 GMT):
@AdeshShah suggest you paste your command to deploy :0-) If you downloaded the dev tools and fabric as per here https://hyperledger.github.io/composer/installing/development-tools.html then would suggest to go to `fabric-tools` directory - then from inside here - run `./createComposerProfile.sh` to recreate your credentials. Your BNA file must be deployed (in this setup) using `PeerAdmin` user as in `composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString1 by way of example.
mahoney1 (Fri, 11 Aug 2017 15:25:40 GMT):
@AdeshShah suggest you paste your command to deploy :0-) If you downloaded the dev tools and fabric as per here https://hyperledger.github.io/composer/installing/development-tools.html then would suggest to go to `fabric-tools` directory - then from inside here - run `./createComposerProfile.sh` to recreate your credentials. Your BNA file must be deployed (in this setup) using `PeerAdmin` user as in ```composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString1``` by way of example.
mahoney1 (Fri, 11 Aug 2017 15:25:40 GMT):
@AdeshShah suggest you paste your command to deploy :0-) If you downloaded the dev tools and fabric as per here https://hyperledger.github.io/composer/installing/development-tools.html then would suggest to go to `fabric-tools` directory - then from inside here - run `./createComposerProfile.sh` to recreate your credentials. Your BNA file must be deployed (in this setup) using `PeerAdmin` user as in ```composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString1``` by way of example. 'randomString1' can be 'any password' for PeerAdmin (-s flag) as it does not matter here.
SmokingAze (Fri, 11 Aug 2017 15:27:57 GMT):
@mahoney1 Thank you for the directions! I was wondering if anyone here has ever seen a very generic error I came across. It's goes like this: TypeError: e.getIdentifier is not a function
SmokingAze (Fri, 11 Aug 2017 15:28:36 GMT):
I have absolutely no idea where to even go from here, because composer feels so black box compared to just doing all this in GoLang from the bottom up
SmokingAze (Fri, 11 Aug 2017 15:29:08 GMT):
Already scoured the forums for this particular error. And it just seems so generic
mahoney1 (Fri, 11 Aug 2017 15:31:04 GMT):
@SmokingAze in an ACL or in your transaction or test js logic ?
SmokingAze (Fri, 11 Aug 2017 15:32:19 GMT):
In the transaction - as in; once a transaction is submitted - that error is all I'm getting. I hope to debug and fix myself. But I'm stumped to what this error even means
SmokingAze (Fri, 11 Aug 2017 15:32:46 GMT):
I would love to paste screenshot, but I'm on my phone at the moment
CT123 (Fri, 11 Aug 2017 20:49:50 GMT):
I did both uninstall and install -- this is the error I received - npm ERR code 1 -- see below
[ ](https://chat.hyperledger.org/channel/composer?msg=TXZPA6xWYQ77M3uov) @coder-ajay
npm install composer-rest-server
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
fabric-dev-servers@0.0.5 /Users/CT15/temp/HL-COMPOSE/fabric-tools
└── (empty)
npm ERR! code 1
CT123 (Fri, 11 Aug 2017 20:49:50 GMT):
@coder-ajay I did both uninstall and install -- this is the error I received - npm ERR code 1 -- see below
[ ](https://chat.hyperledger.org/channel/composer?msg=TXZPA6xWYQ77M3uov) @coder-ajay
npm install composer-rest-server
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
fabric-dev-servers@0.0.5 /Users/CT15/temp/HL-COMPOSE/fabric-tools
└── (empty)
npm ERR! code 1
CT123 (Fri, 11 Aug 2017 20:53:30 GMT):
@coder-ajay just tried it again -- did a npm uninstall composer-rest-server which completed as expected and then did a npm install composer-rest-server which returned the following:
npm install composer-rest-server
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
fabric-dev-servers@0.0.5 /Users/CT15/temp/HL-COMPOSE/fabric-tools
└── (empty)
npm ERR! code 1
CT123 (Fri, 11 Aug 2017 20:54:06 GMT):
thoughts? anyone?
CT123 (Fri, 11 Aug 2017 20:54:19 GMT):
This was working prior to composer upgrade earlier this week
ScottMorris (Sat, 12 Aug 2017 04:45:41 GMT):
@CT123 Do you have some installed globally and some installed locally?
neeravarora (Sat, 12 Aug 2017 13:55:08 GMT):
Has joined the channel.
CT123 (Sat, 12 Aug 2017 15:06:39 GMT):
@ScottMorris of which modules? npm I believe is install globally, as is docker -- that is system wide as opposed to per user -- from the error above do I need to install fabric-dev-servers before re-installing composer-rest-server? Thanks much!
davidkel (Sat, 12 Aug 2017 16:09:42 GMT):
@ct123 What @ScottMorris was referring to is it looks like you have done a mixture of installing composer globally (using npm install -g) and into your current working directory (using npm install without the -g option). This definitely could be the problems you are encountering, not knowing whether you are using a local or global version of the composer tools. You should always use the `-g` option when installing and uninstalling composer-cli, composer-rest-server and composer-playground
neeravarora (Sat, 12 Aug 2017 21:23:44 GMT):
Message Attachments
wlieldin (Sun, 13 Aug 2017 07:44:33 GMT):
Has joined the channel.
coder-ajay (Sun, 13 Aug 2017 13:12:19 GMT):
Hi .. a query ...
System allows to issue multiple identities to a participant. What’s the significance of these different identities?
Example: The participant mae@biznet.org, can have two identities maeid1 and maeid2 using the issue commands:
` composer identity issue -p hlfv1 -n 'digitalproperty-network' -i admin -s adminpw -u maeid1 -a "resource:net.biz.digitalPropertyNetwork.Person#mae@biznet.org" `
` composer identity issue -p hlfv1 -n 'digitalproperty-network' -i admin -s adminpw -u maeid2 -a "resource:net.biz.digitalPropertyNetwork.Person#mae@biznet.org" `
KentLandholm (Sun, 13 Aug 2017 13:54:27 GMT):
Has joined the channel.
coder-ajay (Sun, 13 Aug 2017 15:45:48 GMT):
Another query ... in ` composer-rest-server ` by default the Fabric username is admin and secret id adminpw. We can also connect the rest server using the the userid and userSecret in ` composer identity issue … `. Whats the difference in these two connections?
coder-ajay (Sun, 13 Aug 2017 15:45:48 GMT):
Another query ... in ` composer-rest-server ` by default the Fabric username is admin and secret id adminpw. We can also connect the rest server using the the userid and userSecret in ` composer identity issue … `. Whats the difference in these two connections? Whats the impact on the transactions done?
carlojbs (Sun, 13 Aug 2017 17:58:58 GMT):
Has joined the channel.
Hefziben (Sun, 13 Aug 2017 20:08:14 GMT):
hi, how can I do to start the local composer playground after being installed. I find myself downloadinf everything from zero any time I want to use locally again. thankss
coder-ajay (Mon, 14 Aug 2017 05:19:34 GMT):
Hi .. has anyone implemented Login functionality using passport-http/local or any other strategy for yo generated angular application? Whats the best approach?
coder-ajay (Mon, 14 Aug 2017 05:19:34 GMT):
Hi .. has anyone implemented Login functionality using passport-http/local or any other strategy for yo generated angular application? Whats the best approach? Can the userID and userSecret issued via ` composer identity issue ... ` command be used in passport authentication strategy for angular apps? Or the participant in .cto should have username and password string parameters?
linyuadam (Mon, 14 Aug 2017 05:28:43 GMT):
Has joined the channel.
linyuadam (Mon, 14 Aug 2017 07:33:38 GMT):
Hi, all, is there any API document for composer-client
mahoney1 (Mon, 14 Aug 2017 09:25:05 GMT):
@coder-ajay The identity can then be used by the participant to interact with the business network (such as invoking transactions as that identity) in the context of that participant.
Participants represent the people/orgs that are members of a business network. An identity is issued (or revoked in time) for a participant, and the identity <--> participant mapping is stored in world state by Composer. A single participant may have multiple identities, but an identity is related to a single participant. The identity is stored in an ECert as an encrypted attribute, so that when a transaction is submitted Composer can retrieve the identity, and through the identity-participant mapping table retrieve the associated participant.
if i'm an organisational entity (say) eg. such as multiple dealerships or sites, I could have a single participant id but and multiple identities I would use to authenticate on a system. You could either distribute a single identity across all of the sites, or use multiple identities, mapped to the same participant ID.
Suggest you read here in our docs https://hyperledger.github.io/composer/managing/participantsandidentities.html for more detail (you'll find an answer to a lot of your questions by the way in our docs or just searching Rocketchat)
mahoney1 (Mon, 14 Aug 2017 09:25:05 GMT):
@coder-ajay The identity can then be used by the participant to interact with the business network (such as invoking transactions as that identity) in the context of that participant.
Participants represent the people/orgs that are members of a business network. An identity is issued (or revoked in time) for a participant, and the identity <--> participant mapping is stored in world state by Composer. A single participant may have multiple identities, but an identity is related to a single participant. The identity is stored in an ECert as an encrypted attribute, so that when a transaction is submitted Composer can retrieve the identity, and through the identity-participant mapping table retrieve the associated participant.
if i'm an organisational entity (say) eg. such as multiple dealerships or sites, I could have a single participant id but multiple identities I would use to authenticate on a system. You could either distribute a single identity across all of the sites, or use multiple identities, mapped to the same participant ID.
Suggest you read here in our docs https://hyperledger.github.io/composer/managing/participantsandidentities.html for more detail (you'll find an answer to a lot of your questions by the way in our docs or just searching Rocketchat)
mahoney1 (Mon, 14 Aug 2017 09:30:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BKxdwfCcHn7tnKQXe) @coder-ajay see first paragraph here https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html essentially means transactions executed are as that identity. Also read first couple of paragraphs here for alternatives https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
mahoney1 (Mon, 14 Aug 2017 10:06:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AmCzwPbn8g3PsLe3j) @CT123 Can I ask 1) what OS and version you're using 2)
your Node version - does it comply with the pre-requisite versions https://hyperledger.github.io/composer/installing/development-tools.html and 3) and were pre-reqs installed correctly (if this is a new environment).
mahoney1 (Mon, 14 Aug 2017 10:06:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AmCzwPbn8g3PsLe3j) @CT123 From your command line, you've installed locally not globally (-g) - hopefully you've uninstalled globally too in the first instance (`npm uninstall -g composer-rest-server`)
mahoney1 (Mon, 14 Aug 2017 10:13:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=82ZQbKcQeqQnPNKe2) @Hefziben If you have an existing running Fabric, you can simply run `npm install -g composer-playground` in your local dev environment. To run composer-playground, type `composer-playground` (running it in your current terminal window) as the user that installed it, and it willspin it up in a browser on http://localhost:8080 ....If you want to install playground in an environment or VM (for example) where _no Fabric runtime_ exists, you can install the dockerized version of Playground with a local runtime here -> https://hyperledger.github.io/composer/installing/using-playground-locally.html
mahoney1 (Mon, 14 Aug 2017 11:19:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bGevnoKfkBRWo6psu) @neeravarora your log is giving 'forbidden' errors (inacessible).
jdockter (Mon, 14 Aug 2017 12:25:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5xuGMJYSCHaH5WBt4) @ScottMorris I believe those are stored locally inside the docker container and managed via Composer APIs, not through the REST server. @mahoney1 or @sstone1 should be able to confirm.
neeravarora (Mon, 14 Aug 2017 12:31:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5gBrjFJAXxrTJFNmN) @mahoney1 Thanks for ur reply , ya i had seen that already b4 posting , i ran the commands as a root user , could there be any other reason that could have contributes towards the same
neeravarora (Mon, 14 Aug 2017 12:31:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5gBrjFJAXxrTJFNmN) @mahoney1 Thanks for ur reply , ya i had seen that already b4 posting , i ran the commands as a root user but i still got that error , could there be any other reason that could have contributes towards the same , iam using ubuntu vm for development?
mahoney1 (Mon, 14 Aug 2017 12:48:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NtRT6igiGAC7Yjty4) @linyuadam see module info here https://hyperledger.github.io/composer/jsdoc/module-composer-client.html - note that the client APIs interact thru the business network connection see here https://hyperledger.github.io/composer/jsdoc/composer-client_lib_businessnetworkconnection.js.html and here https://hyperledger.github.io/composer/applications/node.html
mahoney1 (Mon, 14 Aug 2017 12:54:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WNupvi4RC7EsxjpKs) @neeravarora see here -> https://hyperledger.github.io/composer/installing/development-tools.html - as it says, don't install Composer as superuser ( no 'sudo' or 'root' privileges). If you do it will cause issues with the NPM install). So - Composer should be installed as a non-privileged user (suggest to create one and login as that user). First as root, I would remove any remnants of failed installs with `npm uninstall -g composer-cli composer-rest-server generator-hyperledger-composer` - you should also check your prereq versions match up (from a support perspective)
rorogarcete (Mon, 14 Aug 2017 13:14:44 GMT):
Has joined the channel.
mahoney1 (Mon, 14 Aug 2017 13:31:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8TYgsKYjTr67QigDc) @jdockter [ ](https://chat.hyperledger.org/channel/composer?msg=8TYgsKYjTr67QigDc) @jdockter correct, its inside the container.. as a CA generated cert, I believe its one year from reading the Fabric docs site (obviously each time you spin a new Playground env up you get a new cert).
FabricWhiskey (Mon, 14 Aug 2017 13:45:36 GMT):
Hello! I'm triyng to test out composer's local authentication method (which seems to be the default method). I didn't change anything in the `COMPOSER_PROVIDERS` json file, just exported its contents. I start the rest server with command `composer-rest-server -p hlfv1 -n my-network -i admin -s adminpw -S true`. Then i create a participant and issue an ID to it. Then I try to get the access token by making a POST request via Postman: `http://10.31.12.68:3000/auth/local` with body like this:
```{
"username": "issued ID",
"password": "secret, that I've got while issuing"
}```
The server returns standard json with server start time and uptime, bu there doesn't seem to be any access tokens. Am I missing something?
FabricWhiskey (Mon, 14 Aug 2017 13:45:36 GMT):
Hello! I'm triyng to test out composer's local authentication method (which seems to be the default method). I didn't change anything in the `COMPOSER_PROVIDERS` json file, just exported its contents. I start the rest server with command `composer-rest-server -p hlfv1 -n my-network -i admin -s adminpw -S true`. Then I create a participant and issue an ID to it. Then I try to get the access token by making a POST request via Postman: `http://
suvpatil (Mon, 14 Aug 2017 14:07:58 GMT):
Hello....while deploying I got the following error : Error trying login and get user Context. Error: Error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: getaddrinfo ENOTFOUND ca.org1.example.com ca.org1.example.com:7054]
Command failed
mahoney1 (Mon, 14 Aug 2017 15:07:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2xESt7P3jMgauZuxz) @FabricWhiskey hi there - our default example is using OAuth (with github example). You would need to configure local auth as a strategy - this may help you (stanza shown for loopback eg, local testing) https://loopback.io/doc/en/lb2/Configuring-providers.json.html or Passport strategies http://passportjs.org/
mahoney1 (Mon, 14 Aug 2017 15:17:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WkLGGwDf5fDaCh9Mn) @suvpatil you didn't post what command failed.. But it sounds like you CA ca.org1.example.com container can't be resolved. What does `docker ps -a` show ?? Did you do a restart...
mahoney1 (Mon, 14 Aug 2017 15:17:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WkLGGwDf5fDaCh9Mn) @suvpatil you didn't post what command failed.. But it sounds like your CA ca.org1.example.com container can't be resolved. What does `docker ps -a` show ?? Did you do a restart...
mahoney1 (Mon, 14 Aug 2017 15:17:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WkLGGwDf5fDaCh9Mn) @suvpatil you didn't post exactly what command failed..` But it sounds like your CA ca.org1.example.com container can't be resolved. What does `docker ps -a` show ?? Did you do a restart...
gabrielpsilva (Mon, 14 Aug 2017 15:51:46 GMT):
Has joined the channel.
gabrielpsilva (Mon, 14 Aug 2017 15:54:17 GMT):
Hi guys …
Composer is a great framework .. Love it .. great job on that .. Also loved the documentation.
I have played with composer for the last weeks, but I’m still have some doubts about it.
Is it recommended/possible to use the .bna file created by composer and the composer-rest-server tool to run in prod environment or these are only development tools used to speed up proofs of concept.
gabrielpsilva (Mon, 14 Aug 2017 15:54:29 GMT):
?
torresjeff (Mon, 14 Aug 2017 21:06:10 GMT):
@here is there any way we can see the code generated from composer REST server?
mahoney1 (Mon, 14 Aug 2017 23:09:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Poed5FSzxRFYrf7Tx) @gabrielpsilva thanks for the feedback - to answer your question - yes, its production oriented (and the network deploy is ultimately to a running production fabric environment)- You can look at these links to get a better understanding of the Composer Architecture (in particular slide 5): https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture - and also this architecture deep dive shows the internal workings, in terms of runtime architecture -> https://www.slideshare.net/dselman/hyperleger-composer-architecure-deep-dive . Composer's runtime ultimately for running in a production environment. In some ways, the richness of the framework (language, modeling semantics, validation, consistency etc) and the tooling (generators, REST etc ) might take from the fact that Composer is just a level of needed abstraction above the runtime Hyperledger Fabric.
mahoney1 (Mon, 14 Aug 2017 23:09:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Poed5FSzxRFYrf7Tx) @gabrielpsilva thanks for the feedback - to answer your question - yes, its production oriented (and the network deploy is ultimately to a running production fabric environment)- You can look at these links to get a better understanding of the Composer Architecture (in particular slide 5): https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture - and also this architecture deep dive shows the internal workings, in terms of runtime architecture -> https://www.slideshare.net/dselman/hyperleger-composer-architecure-deep-dive . Composer's runtime ultimately for running in a production environment. In some ways, the richness of the framework (language, modeling semantics, validation, consistency etc) and the tooling (generators, REST etc ) might take from the fact that Composer is in addition, a level of needed abstraction above the runtime Hyperledger Fabric.
Hefziben (Tue, 15 Aug 2017 00:48:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Cgnuo3pEMxiDRZ3TJ) @mahoney1 thanks, this was really helpful
gabrielpsilva (Tue, 15 Aug 2017 02:25:59 GMT):
@mahoney1 Thank you ! I wasn't sure about what to expect of Composer.
Based on this I will definitely incorporate it in the application we are building.
pasimoes (Tue, 15 Aug 2017 04:47:24 GMT):
Has joined the channel.
prmdmshra (Tue, 15 Aug 2017 06:47:54 GMT):
Could you please suggest whether we have any sample network where I can test/demonstrate multiple endorsing peers on a chaincode and consensus mechanism?
mahoney1 (Tue, 15 Aug 2017 07:38:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=k3gDooc8kGqve66v2) @prmdmshra you can check out a dockerized 2 org, 4 peer, Solo ordering setup up here from the Hyperledger Fabric docs site -> http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html - it also has links to other sample-networks from that page. Once you've set it up / joined the peers (as instructed there), you can install Composer onto each peer and demonstrate/deploy any of our Composer sample-networks and interact with the Fabric you've setup.
mahoney1 (Tue, 15 Aug 2017 07:39:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KrYGyuQpCtqMf5ojz) @gabrielpsilva you're welcome
FabricWhiskey (Tue, 15 Aug 2017 08:02:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tE4btP8puNm66aAGe) @mahoney1 Thank you for the links. I did some investigation, and it appears that composer recognizes the local strategy fine. The problem is, when I send a POST request with identity credentials to `http://
wy (Tue, 15 Aug 2017 08:13:27 GMT):
Has joined the channel.
wy (Tue, 15 Aug 2017 08:41:49 GMT):
@here is anyone here able to show me how i can add peers/nodes on fabric composer and how can i tie the node to a participant? Also how can i set who is the endorser/orderer?
mahoney1 (Tue, 15 Aug 2017 09:10:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q8258x7gjPqFmmXm2) @torresjeff there is no code generated by the Composer REST server. ...
mahoney1 (Tue, 15 Aug 2017 09:22:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mXyJA3rqKBBQcBmWq) @wy adding peers/nodes is really a #fabric question. Composer doesn't deal with the structure/topology of the underlying HLF. You use HLF tools to manage the peers in the network etc. You can check out examples here -> http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html and here http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html not to mention there are some Stack Overflow examples . Participant in Composer is associated with one or more identities. Participant in a Fabric context relates more to the participant in a Fabric network and used in a broader context ie an entity participating in the network.
wy (Tue, 15 Aug 2017 09:28:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qxvNKKgxqBssXkPDM) @mahoney1 So is there no way to link a participant to a node?
wy (Tue, 15 Aug 2017 09:28:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qxvNKKgxqBssXkPDM) @mahoney1 So is there no way to link a participant to a node/peer (i.e. docker container)?
wy (Tue, 15 Aug 2017 09:29:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kQEANZ6AjkSME6XcH) @wy
PatisP (Tue, 15 Aug 2017 09:52:18 GMT):
Historain
mahoney1 (Tue, 15 Aug 2017 09:57:23 GMT):
@wy I guess it depends on whether you mean a Composer participant (I suspect you do) which can mean an individual or even an organisation or party defined in Composer, participating in a deployed business network (deployed to the Fabric). In the case of an org, you are in effect establishing a link between the org participant and its peers - the participant linked to identity (identities) and that exist in that org only (even if they are signing transactions etc that will, post peer committal be written to the world state). Each peer maintains a copy of the ledger for each channel of which they are a member. In Fabric, a participant member is generally an org or party taking part in the fabric network (blockchain infrastructure) and each org will likely have their own member CA.
alisonb (Tue, 15 Aug 2017 10:09:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=T7rM9sw58LCoeWMCK) Hi @mahoney1 I've started with a clean Linux image, re-installed everything, deployed my bna, added a new participant, issued it with an identity, checked if you run the rest server from the command line it works fine, then tried again to run it in a docker image. It still fails and I find EACCES errors in the rest container's log when it tries to connect. Is there a step I'm missing, please?
wy (Tue, 15 Aug 2017 10:41:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wCtfTgueRJNK3LcYi) @mahoney1 so how can i define which nodes act as the endorser along with the endorsement policies? that is usually defined during installation of the chaincode
mahoney1 (Tue, 15 Aug 2017 11:26:31 GMT):
@wy For a Composer business network (ie deployed) - you can define the endorsement to use as a command line option (-o or -O ) https://hyperledger.github.io/composer/reference/composer.network.start.html As as for Fabric (nodes and which ones act as endorser) - see here for policy configuration info http://hyperledger-fabric.readthedocs.io/en/latest/policies.html and here for policy design info http://hyperledger-fabric.readthedocs.io/en/latest/endorsement-policies.html and see examples here -> https://stackoverflow.com/questions/44924939/who-can-configure-endorsement-policy-in-hyper-ledger-fabric . The architecture explains more about what the endorser can perform here http://hyperledger-fabric.readthedocs.io/en/latest/arch-deep-dive.html . You may well be looking at particular endorser nodes responsible for particular chaincode and/or partitioning of chaincode. From a composer standpoint, this is not something we deal with as our runtime sits atop if you like. If this info isn't enough for you, you could ask on #fabric
mahoney1 (Tue, 15 Aug 2017 11:26:31 GMT):
@wy For a Composer business network (ie deployed) - you can define the endorsement policy to use (be sent) as a command line option (-o or -O ) https://hyperledger.github.io/composer/reference/composer.network.start.html As as for Fabric (nodes and which ones act as endorser) - see here for policy configuration info http://hyperledger-fabric.readthedocs.io/en/latest/policies.html and here for policy design info http://hyperledger-fabric.readthedocs.io/en/latest/endorsement-policies.html and see examples here -> https://stackoverflow.com/questions/44924939/who-can-configure-endorsement-policy-in-hyper-ledger-fabric . The architecture explains more about what the endorser can perform here http://hyperledger-fabric.readthedocs.io/en/latest/arch-deep-dive.html . You may well be looking at particular endorser nodes responsible for particular chaincode and/or partitioning of chaincode. From a composer standpoint, this is not something we deal with as our runtime sits atop if you like. If this info isn't enough for you, you could ask on #fabric
mahoney1 (Tue, 15 Aug 2017 12:13:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9Kjd8mS82x5mwuWWi) @alisonb are you using the example here -> https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html or did you create your own Dockerfile for this ? The errors you're reporting sounds like a directory permissions error - can u attach logs ? Can you do an `ls -l `of /home in your container ? wondering if your 'composer' directory has the right perms - it should have as I just spun up a container this moment to check the perms and capability - otherwise see discussion near the end here -> https://github.com/moby/moby/issues/1295 )
harik (Tue, 15 Aug 2017 12:20:19 GMT):
Has joined the channel.
harik (Tue, 15 Aug 2017 12:30:37 GMT):
Hi , i am unable to deploy sample application(basic-sample-network) which i have exported from composer on my local fabric hlfv1 environment , following error is displayed "Type error:channel options must be an object with string keys ,and integer or string values . My fabric network is as follows : fabric-ca-server setup with tls enabled , created 1 organization ,1 peer , 1 orderer , mspid of peer is peer1 and for orderer is orderer1 ,network is up and running properly but unable to know the root cause of the error
torresjeff (Tue, 15 Aug 2017 13:22:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3JtH4oKNZuqvg2EXQ) @mahoney1 So if I use the generated composer service, would i have to make an HTTP request within my own server? Wouldn't this be a bit slow?
adityasinha4u (Tue, 15 Aug 2017 13:24:58 GMT):
Hi Guys,
I tried to setup a persistent data store for REST server but was unable to do it. I followed the steps mentioned at https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html , all of the commands got executed successfully however when I am trying to access the rest server through URL it is throwing “connection refused” error.
Did anyone faced similar issue ?
adityasinha4u (Tue, 15 Aug 2017 13:24:58 GMT):
@mahoney1 - I tried to setup a persistent data store (mongo db) for REST server with github authentication but was unable to do it. I followed the steps mentioned at https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html , all of the commands got executed successfully but when I am trying to access the rest server through URL it is throwing “connection refused” error.
Can you please help me on this. I am stuck on this for almost two days now :(
torresjeff (Tue, 15 Aug 2017 13:25:27 GMT):
Say, I have an app with a dashboard, the user logs in, so i would have to make the request to get transactions for example to the REST service and show them in the dashboard instead of just calling the getAllTransactions() from the composer-client?
mahoney1 (Tue, 15 Aug 2017 13:56:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=J6t8z8xqsusoxHAJ2) @torresjeff you can do either for your app. Remember the REST server can be deployed anywhere, if not secured in addition. Also you may be deploying a REST server in production to be highly available (as discussed here https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html ). - and consumed by other apps too.
mahoney1 (Tue, 15 Aug 2017 13:59:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=B57sHrd5yHjD2qLtm) @harik think you may be running into the same problem as shown here -> https://stackoverflow.com/questions/45059003/hyperledger-fabric-composer-typeerror-channel-options-must-be-an-object-with-st for v0.9.2 read v0.11.2 - you should probably use the Composer dev setup captured here in detail to get started. Then use that as the basis for getting started
mahoney1 (Tue, 15 Aug 2017 13:59:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=B57sHrd5yHjD2qLtm) @harik think you may be running into the same problem as shown here -> https://stackoverflow.com/questions/45059003/hyperledger-fabric-composer-typeerror-channel-options-must-be-an-object-with-st for v0.9.2 read v0.11.2 - you should probably read the issues described there (with links to the Fabric docs, as you had started out that route).
wy (Tue, 15 Aug 2017 14:08:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2t4Zz25hbuxJ2GdLd) @mahoney1 so am i right to say that endorsement policies are tied to identites and not nodes for composer while in the actual fabric network, the endorsement policies are tied to nodes?
davidkel (Tue, 15 Aug 2017 14:31:27 GMT):
@wy In fabric, endorsement policies are tied to MSP's as described here
http://hyperledger-fabric.readthedocs.io/en/latest/endorsement-policies.html
Composer doesn't make use of endorsement policies in any way. It just provides the ability to define the endorsement policy deploy your business network onto an existing Fabric topology.
davidkel (Tue, 15 Aug 2017 14:31:27 GMT):
@wy In fabric, endorsement policies are tied to MSP's as described here
http://hyperledger-fabric.readthedocs.io/en/latest/endorsement-policies.html
Composer doesn't make use of endorsement policies in any way. It just provides the ability to define the endorsement policy when you deploy your business network onto an existing Fabric topology.
wy (Tue, 15 Aug 2017 14:37:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=THdMtJGELRHc8DWTQ) @davidkel what i mean by tied is that the endorsers are actually specified nodes while in composer, the 'endorsers' are not tied to any nodes per se
rthatcher (Tue, 15 Aug 2017 16:17:40 GMT):
Has joined the channel.
ScottMorris (Tue, 15 Aug 2017 16:28:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2xESt7P3jMgauZuxz) @FabricWhiskey It returns a cookie called `connect.sid`. When I try to use Local Authenttication I always get an error `Authorization Required`. I have _OAuth 2_ working, but haven't been able to get _local_ auth working.
rthatcher (Tue, 15 Aug 2017 16:29:40 GMT):
@alisonb - I was just talking with @mahoney1 about your Rest Server in a container and I was able to set one up in a few steps which I will detail now - I was broadly following the Doc mahoney1 referred to but I was specifically NOT implementing the mongodb persisted database, and NOT using any authentication via github. I would suggest removing the failing docker container and docker image you have before starting with these steps:
``` docker pull hyperledger/composer-rest-server
set the following environment variables
rthatcher (Tue, 15 Aug 2017 16:32:50 GMT):
@alisonb continued ...
``` COMPOSER_CONNECTION_PROFILE=hlfv1
COMPOSER_BUSINESS_NETWORK=my-network
COMPOSER_ENROLLMENT_ID=admin
COMPOSER_ENROLLMENT_SECRET=adminpw
COMPOSER_NAMESPACES=never
COMPOSER_SECURITY=false
COMPOSER_CONFIG='{
"connectionProfiles": {
"hlfv1": {
"name": "hlfv1",
"description": "Hyperledger Fabric v1.0",
"type": "hlfv1",
"keyValStore": "/home/composer/.composer-credentials",
"timeout": 300,
"orderers": [
{
"url": "grpc://orderer.example.com:7050"
}
],
"channel": "composerchannel",
"mspID": "Org1MSP",
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer0.org1.example.com:7053"
}
]
}
}
}'
export each of the variables too
now run the docker image as follows:
docker run \
-d \
-e COMPOSER_CONNECTION_PROFILE=${COMPOSER_CONNECTION_PROFILE} \
-e COMPOSER_BUSINESS_NETWORK=${COMPOSER_BUSINESS_NETWORK} \
-e COMPOSER_ENROLLMENT_ID=${COMPOSER_ENROLLMENT_ID} \
-e COMPOSER_ENROLLMENT_SECRET=${COMPOSER_ENROLLMENT_SECRET} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_SECURITY=${COMPOSER_SECURITY} \
-e COMPOSER_CONFIG="${COMPOSER_CONFIG}" \
--name resttest \
--network composer_default \
-p 3000:3000 \
hyperledger/composer-rest-server```
Be sure that you have cleared the variables COMPOSER_DATASOURCES and COMPOSER_PROVIDERS before you run that command
ScottMorris (Tue, 15 Aug 2017 18:02:08 GMT):
I'm wondering if anyone knows anything about the `AclManager` class? It seems like it mimics the `ModelManager` class but I can't really find any uses of it aside from getting the _acl_ file when making _BNA_ file.
sstone1 (Tue, 15 Aug 2017 18:21:10 GMT):
@ScottMorris it doesn't do much more than manage the ACL file and give you a quick way of getting all of the ACL rules - it's likely to be extended in the future to cover multiple ACL files though.
ScottMorris (Tue, 15 Aug 2017 18:48:06 GMT):
@sstone1 I noticed it contains an `accept` method that follows the visitor pattern design of the `ModelManager` but this functionality isn't used anywhere. I'm pondering if there is a way to restrict the angular client's available functions based on the ACLs instead of showing a user all functionality and having them fail when making requests.
sstone1 (Tue, 15 Aug 2017 18:49:30 GMT):
`AclCompiler` should use the visitor pattern design, but doesn't at the moment
sstone1 (Tue, 15 Aug 2017 18:50:24 GMT):
i'm not sure i recommend that - you may end up having to build/copy quite a bit of logic to find out whether the end user of the app is allowed or denied access based on the ACL rule
ScottMorris (Tue, 15 Aug 2017 18:55:35 GMT):
_thinking out loud_ If there was a user check in the Angular App, then the rule condition logic from the ACL's could be copied to a TS file that is then evaluated in the app to dynamically show functionality. Might a can of worms though since anything could be written in the `condition` section of a rule.
sstone1 (Tue, 15 Aug 2017 19:29:30 GMT):
including navigating relationships and calling JS functions in a script file
sstone1 (Tue, 15 Aug 2017 19:30:01 GMT):
you also need to retrieve the participant, resource, and potentially transaction as objects and pass them into the ACL rule
daneshvar (Tue, 15 Aug 2017 20:20:22 GMT):
Has joined the channel.
torresjeff (Tue, 15 Aug 2017 21:21:36 GMT):
Regarding best practices, is it better to call a REST service from the client side and pass its response to a TP function, or is it better to call a REST service from within the TP function (using the `post` function)? When would one be preferable over the other (advantages/disadvantages)?
sstone1 (Tue, 15 Aug 2017 21:37:02 GMT):
@torresjeff it depends on what information the REST service is doing, and why the transaction processor function needs it. if you use the `post` function, the REST service will be called by every peer in the business network, so you need to ensure that 1) all peers can access the REST service 2) all peers get the same response from the REST service. you may want to do this so all parties can get consensus on the response from the REST service.
sstone1 (Tue, 15 Aug 2017 21:37:02 GMT):
@torresjeff it depends on what information the REST service is doing, and why the transaction processor function needs it. if you use the `post` function, the REST service will be called by every peer in the business network, so you need to ensure that 1) all peers can access the REST service 2) all peers get the same response from the REST service. you may want to do this so all parties can get consensus on the response from the REST service 3) the REST service is not unhappy at being called multiple times with the same request
torresjeff (Tue, 15 Aug 2017 21:40:37 GMT):
@sstone1 thanks, that definitely helps!
LuizSilva (Wed, 16 Aug 2017 01:16:41 GMT):
Has joined the channel.
wy (Wed, 16 Aug 2017 01:57:15 GMT):
@here is having a separate .bna file the way to create separate 'channels'? I noticed that the fabric network setup by composer only has one actual channel
tennenjl (Wed, 16 Aug 2017 02:03:34 GMT):
@wy The channel is actually created using the startFabric.sh file found in the fabric-tools/fabric-scripts/hlfv1 dir. It is actually calling the fabric configtx tool to create the channel. You can read about it here: http://hyperledger-fabric.readthedocs.io/en/latest/configtx.html
wy (Wed, 16 Aug 2017 02:05:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uWLkWMh9izHLjadCK) @tennenjl i understand that it is created using startFabric.sh. However in composer i dont see any way to actually choose the channel to deploy my chaincodes into. Am i missing something?
tennenjl (Wed, 16 Aug 2017 02:07:23 GMT):
@wy ah, ok sorry I misunderstood. The channel that you use is specified in the connection.json file. Is that what you were asking?
wy (Wed, 16 Aug 2017 02:09:01 GMT):
@tennenjl ah, so there is a way to set the channel to deploy the codes to? are there any links to the docs which describes the connection.json file?
tennenjl (Wed, 16 Aug 2017 02:09:51 GMT):
So you point to the profile when you run the composer network deploy -p
tennenjl (Wed, 16 Aug 2017 02:10:42 GMT):
and that profile name points back to the directory which contains the connection.json file which contains the channel name
tennenjl (Wed, 16 Aug 2017 02:11:20 GMT):
`{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://localhost:7050"
}
],
"ca": {
"url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/Users/jeff/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}`
tennenjl (Wed, 16 Aug 2017 02:12:21 GMT):
if you are coding on a mac, it should be under your home directory
tennenjl (Wed, 16 Aug 2017 02:12:21 GMT):
if you are coding on a mac, it should be under your
wy (Wed, 16 Aug 2017 02:14:11 GMT):
i cant seem to find that file @tennenjl
tennenjl (Wed, 16 Aug 2017 02:15:41 GMT):
When you first set up your composer fabric env, there is a command run under fabric-tools called createComposerProfile.sh
tennenjl (Wed, 16 Aug 2017 02:16:47 GMT):
that creates the profile and places creds in your keyvalstore
tennenjl (Wed, 16 Aug 2017 02:18:29 GMT):
@wy it should all be documented here: https://hyperledger.github.io/composer/installing/development-tools.html
tennenjl (Wed, 16 Aug 2017 02:19:34 GMT):
See section 2 step 3.
wy (Wed, 16 Aug 2017 02:24:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KH9tTkTSDnYc7YGKq) @tennenjl cool, i see it now.
wy (Wed, 16 Aug 2017 02:24:56 GMT):
but question is, how do i connect it to multiple channels?
tennenjl (Wed, 16 Aug 2017 02:25:37 GMT):
You use different profiles for different channels
wy (Wed, 16 Aug 2017 02:26:11 GMT):
so you mean i need to do a network deploy for each channel i require?
tennenjl (Wed, 16 Aug 2017 02:31:13 GMT):
@wy You would normally deploy to a single channel which contains multiple peers
tennenjl (Wed, 16 Aug 2017 02:49:43 GMT):
yes and you need a separate connection profile. You can read more about creating profiles here: https://hyperledger.github.io/composer/reference/connectionprofile.html
yyyyyyy9 (Wed, 16 Aug 2017 03:04:49 GMT):
Has joined the channel.
wy (Wed, 16 Aug 2017 03:46:15 GMT):
@here Hi all, is there an 'init' function for the .js chaincodes which triggers upon code instantiation/upgrade just like in the golang chaincodes?
suvpatil (Wed, 16 Aug 2017 05:47:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kgB5QxyjbDaRS24Rk) @mahoney1 I have added one extra peer in compose file and tring to deploy the network using "composer network deploy -p hlfv1 -a basic-sample-network.bna -i PeerAdmin -s adminpw", but it fails. output of docker ps -a : CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ddd4d589108e hyperledger/fabric-peer:x86_64-1.0.0 "peer node start -..." 47 hours ago Up 47 hours 0.0.0.0:7056->7051/tcp, 0.0.0.0:7058->7053/tcp peer1.org1.example.com
3af5a73980c7 hyperledger/fabric-peer:x86_64-1.0.0 "peer node start -..." 47 hours ago Up 47 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
dd36e4c4c385 hyperledger/fabric-ca:x86_64-1.0.0 "sh -c 'fabric-ca-..." 47 hours ago Up 47 hours 0.0.0.0:7054->7054/tcp ca.org1.example.com
306348d037f6 hyperledger/fabric-orderer:x86_64-1.0.0 "orderer" 47 hours ago Up 47 hours 0.0.0.0:7050->7050/tcp orderer.example.com
mahoney1 (Wed, 16 Aug 2017 08:50:39 GMT):
@suvpatil so for the extra done added to the organization, )and using the appropriately adapted connection profile set up to connect) you need to install the Composer runtime on that peer. Then after start the network so the command sequence (substitute as appropriate) is `composer runtime install -n my-network -p hlfv1 -i PeerAdmin -s randomstring` and then `composer network start -a mynetwork.bna -p hlfv1 -i PeerAdmin -s randomstring` - then you can try pinging your network eg `composer network ping -n my-network -p hlfv1 -i admin -s adminpw`
mahoney1 (Wed, 16 Aug 2017 08:50:39 GMT):
@suvpatil so for the extra peer added to the organization, )and using the appropriately adapted connection profile set up to connect) you need to install the Composer runtime on that peer. Then after start the network so the command sequence (substitute as appropriate) is `composer runtime install -n my-network -p hlfv1 -i PeerAdmin -s randomstring` and then `composer network start -a mynetwork.bna -p hlfv1 -i PeerAdmin -s randomstring` - then you can try pinging your network eg `composer network ping -n my-network -p hlfv1 -i admin -s adminpw`
mahoney1 (Wed, 16 Aug 2017 08:50:39 GMT):
@suvpatil so for the extra peer added to the organization, (and using the appropriately adapted connection profile set up to connect) you need to install the Composer runtime on that peer. Then after start the network so the command sequence (substitute as appropriate) is `composer runtime install -n my-network -p hlfv1 -i PeerAdmin -s randomstring` and then `composer network start -a mynetwork.bna -p hlfv1 -i PeerAdmin -s randomstring` - then you can try pinging your network eg `composer network ping -n my-network -p hlfv1 -i admin -s adminpw`
mahoney1 (Wed, 16 Aug 2017 08:50:39 GMT):
@suvpatil so for the extra peer added to the organization, (and using the appropriately adapted connection profile set up to connect) you need to install the Composer runtime on that peer. Then after start the network so - the command sequence (substitute as appropriate) is `composer runtime install -n my-network -p hlfv1 -i PeerAdmin -s randomstring` and then `composer network start -a mynetwork.bna -p hlfv1 -i PeerAdmin -s randomstring` - then you can try pinging your network eg `composer network ping -n my-network -p hlfv1 -i admin -s adminpw`
suvpatil (Wed, 16 Aug 2017 09:11:38 GMT):
when i run the Composer runtime command it gives me same error again. Please find my connection.json file and suggest me any changes if required:{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://localhost:7050"
}
],
"ca": {
"url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
},
{
"requestURL": "grpc://localhost:7056",
"eventURL": "grpc://localhost:7058"
}
],
"keyValStore": "/home/suvit/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}
suvpatil (Wed, 16 Aug 2017 09:12:18 GMT):
and how can i install Composer runtime on that particular peer?
mahoney1 (Wed, 16 Aug 2017 09:28:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qq8iXtJC9kFtTBv3L) @wy [ ](https://chat.hyperledger.org/channel/composer?msg=qq8iXtJC9kFtTBv3L) @wy yes - slide 4 will give you a clearer picture here -> https://www.slideshare.net/dselman/hyperleger-composer-architecure-deep-dive and you can see the Init is done in the runtime -> https://github.com/hyperledger/composer/blob/master/packages/composer-runtime-hlf/chaincode.go In HLF V1 there are 2 steps to getting chaincode executing. Step 1 is to install chaincode onto the peer. In Composer 's case the chaincode runtime is packaged and installed on the peer (also get's versioned with the version number of the composer runtime + the name of the business network archive). Step 2 , when the instantiate is called on the peer, composer passes the BNA to that runtime and as part of the init call the composer chaincode processes the Business Network Archive and initialises it.
mahoney1 (Wed, 16 Aug 2017 09:28:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qq8iXtJC9kFtTBv3L) @wy yes - slide 4 will give you a clearer picture here -> https://www.slideshare.net/dselman/hyperleger-composer-architecure-deep-dive and you can see the Init is done in the runtime -> https://github.com/hyperledger/composer/blob/master/packages/composer-runtime-hlf/chaincode.go In HLF V1 there are 2 steps to getting chaincode executing. Step 1 is to install chaincode onto the peer. In Composer 's case the chaincode runtime is packaged and installed on the peer (also get's versioned with the version number of the composer runtime + the name of the business network archive). Step 2 , when the instantiate is called on the peer, composer passes the BNA to that runtime and as part of the init call the composer chaincode processes the Business Network Archive and initialises it.
wy (Wed, 16 Aug 2017 09:31:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oqzFMcinxarxdfRcJ) @mahoney1 so what should i name the function which i want to be initialised at the start
mahoney1 (Wed, 16 Aug 2017 09:46:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sGnvrpevv4wRReEPd) @wy not sure if I'm answering your question but you would use the AdminConnection class https://hyperledger.github.io/composer/jsdoc/module-composer-admin.AdminConnection.html to connect and deploy - as mentioned here on slide 5 the 'deploy' takes care of the installs / instantiates the chaincode (Go) from a Composer perspective https://www.slideshare.net/dselman/hyperleger-composer-architecure-deep-dive
mahoney1 (Wed, 16 Aug 2017 09:46:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sGnvrpevv4wRReEPd) @wy not sure if I'm answering your question but you would use the AdminConnection class https://hyperledger.github.io/composer/jsdoc/module-composer-admin.AdminConnection.html to connect and deploy - as mentioned here on slide 5 the 'deploy' installs / instantiates the chaincode (Go) from a Composer perspective https://www.slideshare.net/dselman/hyperleger-composer-architecure-deep-dive
mahoney1 (Wed, 16 Aug 2017 10:05:21 GMT):
@suvpatil - you need to specify your full node names and add your 2nd org peer as shown in your docker ps output eg. ``````
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://orderer.example.com:7050"
}
],
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer0.org1.example.com:7053"
}
],
"keyValStore": "/home/composer/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": 300,
"name": "hlfv1",
"description": "Hyperledger Fabric v1.0"
}
``` your current connection profile does not reflect your runtime environment
mahoney1 (Wed, 16 Aug 2017 10:05:21 GMT):
@suvpatil - you need to specify your full node names and add your 2nd org peer as shown in your docker ps output example below. ```
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://orderer.example.com:7050"
}
],
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer0.org1.example.com:7053"
}
],
"keyValStore": "/home/composer/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": 300,
"name": "hlfv1",
"description": "Hyperledger Fabric v1.0"
}
``` your current connection profile does not reflect your runtime environment
mahoney1 (Wed, 16 Aug 2017 10:05:21 GMT):
@suvpatil - you need to specify your full node names and add your 2nd org peer as shown in your docker ps output example below. ```
{
"type": "hlfv1",
"orderers": [
{
"url": "grpc://orderer.example.com:7050"
}
],
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer0.org1.example.com:7053"
}
],
"keyValStore": "/home/suvit/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": 300,
"name": "hlfv1",
"description": "Hyperledger Fabric v1.0"
}
``` your current connection profile does not reflect your runtime environment
woutersm (Wed, 16 Aug 2017 10:15:37 GMT):
Has joined the channel.
wy (Wed, 16 Aug 2017 10:41:01 GMT):
```COMPOSER_CONFIG: >
{
"defaultConnectionProfile": "hlfabric",
"connectionProfiles": {
"hlfabric": {
"name": "hlfabric",
"description": "Hyperledger Fabric v1.0",
"type": "hlfv1",
"keyValStore": "/home/composer/.composer-credentials",
"timeout": 300,
"orderers": [
{
"url": "grpc://orderer.example.com:7050"
}
],
"channel": "composerchannel",
"mspID": "Org1MSP",
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer0.org1.example.com:7053"
}
]
}
},
"credentials": {
"hlfabric": {
"PeerAdmin": "NOTUSED",
"admin": "adminpw"
}
}
}```
wy (Wed, 16 Aug 2017 10:42:04 GMT):
for the docker-compose.yml file, i see the COMPOSER_CONFIG field as pasted above. Will i need to put all the channels available in the network?
wy (Wed, 16 Aug 2017 10:43:57 GMT):
or is this not required?
coder-ajay (Wed, 16 Aug 2017 10:54:32 GMT):
Hi … The ‘System’ REST api does not seem to have a exported class in Yo angular application (at-least not showing in the _src/app/
coder-ajay (Wed, 16 Aug 2017 10:54:32 GMT):
Hi … I am trying to print the asset transaction history. Like Added, updated etc along with timestamp and user.
This data can be accessed at 3000 to get _/system/transaction_ data. The ‘System’ REST api does not seem to have a exported class in Yo angular application (at-least not showing in the _src/app/
coder-ajay (Wed, 16 Aug 2017 10:54:32 GMT):
Hi … I am trying to print the asset transaction history. Like Added, updated etc along with timestamp and user.
This data can be accessed at 3000 from GET _/system/transaction_ data. The ‘System’ REST api does not seem to have a exported class in Yo angular application (at-least not showing in the _src/app/
mahoney1 (Wed, 16 Aug 2017 11:53:22 GMT):
@wy No, - no just the channel relating to the connection profile you're using to connect, as shown in your stanza. The connection profile defines the channel name to connect to, so that means you would create one connection profile (eg. cpA) for (eg) channel A and another (eg cpB) for (eg,) channel B.
mahoney1 (Wed, 16 Aug 2017 11:53:22 GMT):
@wy No, - just the channel relating to the connection profile you're using to connect, as shown in your stanza. The connection profile defines the channel name to connect to, so that means you would create one connection profile (eg. cpA) for (eg) channel A and another (eg cpB) for (eg,) channel B.
mahoney1 (Wed, 16 Aug 2017 11:53:22 GMT):
@wy No,- just the channel relating to the connection profile you're using to connect, as shown in your stanza. The connection profile defines the channel name to connect to, so that means you would create one connection profile (eg. cpA) for (eg) channel A and another (eg cpB) for (eg,) channel B.
coder-ajay (Wed, 16 Aug 2017 12:46:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=y2Nfpcbua6TuYx9y9) @coder-ajay :
@here : I have found a work around for this. I changed the name space in the service file to ` private NAMESPACE: string = 'system/transactions'; `. I am sure this is not the recommended way to execute. Any suggestions?
mahoney1 (Wed, 16 Aug 2017 13:08:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=y2Nfpcbua6TuYx9y9) @coder-ajay it isn't exported, as its just generates a skeleton app. @angular/http is part of the generated app, and included in data.service.ts - so /GET /POST etc are exposed by default in your routed application (see app-routing.module.ts). You can take a look at your generated app and see the current operations. You should be able to access like any normal REST call - this may help you https://www.sitepoint.com/angular-rxjs-create-api-service-rest-backend/ The REST APIs for Historian - they will be added in the next phase (or .next phase) don't have a timescale for this. You're correct on REST /GET operation for transaction data
xfreeman (Wed, 16 Aug 2017 13:22:39 GMT):
Has joined the channel.
wy (Wed, 16 Aug 2017 13:26:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=84yTPkSujsjNwmhnp) @mahoney1 is this file only relevant to the playground? will i need it if i dont need to use the playground to code?
mahoney1 (Wed, 16 Aug 2017 13:37:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5T35nZ5sdocSmYDnM) @wy this docker-compose.yml is relevant to playground only, yes. docker-compose files are used elsewhere too (setting up a dev environment - like we do in `fabric-scripts` to spin up a v1 Fabric environment - or (say) a test environmnet blah blah). Its just a convenient way of 'composing' your environment setup. You don't have to use it :-)
mahoney1 (Wed, 16 Aug 2017 13:37:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5T35nZ5sdocSmYDnM) @wy this docker-compose.yml is relevant to playground only, yes. docker-compose files are used elsewhere too (setting up a dev environment - like we do in `fabric-scripts` to spin up a v1 Fabric environment - or (say) a test environment blah blah). Its just a convenient way of 'composing' your environment setup. You don't have to use it :-)
mahoney1 (Wed, 16 Aug 2017 14:21:14 GMT):
fyi @here - a reminder that the Composer Community call is tomorrow (Thurs) will be at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 or dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories or use cases on the call - please join us ! We'll also discuss the latest work on Composer and what's upcoming -> see Agenda here - URL https://github.com/hyperledger/composer/wiki/Meeting-17th-August-2017
mahoney1 (Wed, 16 Aug 2017 14:21:14 GMT):
fyi @here - a reminder that the Composer Community call tomorrow (Thurs) will be at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 or dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories or use cases on the call - please join us ! We'll also discuss the latest work on Composer and what's upcoming -> see Agenda here - URL https://github.com/hyperledger/composer/wiki/Meeting-17th-August-2017
coder-ajay (Wed, 16 Aug 2017 15:01:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=69Ez3bcJcdi5Yq7Aa) @mahoney1 : REST APIs for Historian is what I need... will wait for future releases. Is there any plan to add the Identity UserId in the history response .. i.e. to find which user did the transaction? Or its going to be as below?
```
transactionId: string;
transactionType: string;
transactionInvoked: Transaction;
participantInvoking: Participant;
identityUsed: Identity;
eventsEmitted: Event[];
transactionTimestamp: Date;
```
ShenthilkumarCK (Wed, 16 Aug 2017 15:52:37 GMT):
Has joined the channel.
DennisM330 (Wed, 16 Aug 2017 15:56:50 GMT):
Running thru developer tutorial again, npm test Cucumber tests are failing with the following error: "ssage:
ValidationException: Model violation in instance org.acme.mynetwork.Commodity#1 field quantity has value "1" (string) expected type Double:" Is there a workaround for this?
rthatcher (Wed, 16 Aug 2017 16:21:33 GMT):
@DennisM330 - this was a known problem that has been fixed - so if you use the latest sample networks and the latest composer packages you should be ok.
there is a workaround too if it is not convenient for you to get the latest versions - you can redefine Quantity to be a string and then update your BNA and re-test
jmcnevin (Wed, 16 Aug 2017 17:05:34 GMT):
Has left the channel.
DennisM330 (Wed, 16 Aug 2017 17:53:24 GMT):
@rthatcher ok, I did a git clone https://github.com/hyperledger/composer-sample-networks.git which should have pulled down the latest sample networks, and my composer CLI is at 0.11.2. Strange
DennisM330 (Wed, 16 Aug 2017 18:01:50 GMT):
@rthatcher I thought about the workaround but it is best to leave Quantity as a Double so it is real life
DennisM330 (Wed, 16 Aug 2017 18:31:18 GMT):
@rthatcher Might want to check sample networks. I fixed this by specifying in package.json "composer-cucumber-steps": "^0.11.0",
DennisM330 (Wed, 16 Aug 2017 18:31:43 GMT):
It was at 0.9.0
jdockter (Wed, 16 Aug 2017 18:33:19 GMT):
Anyone using query to select specific transactions? This test seems to indicate that you can, https://github.com/hyperledger/composer/blob/master/packages/composer-common/test/data/query/test.qry#L9 ...but not working for me
DennisM330 (Wed, 16 Aug 2017 18:49:09 GMT):
@jdockter I have used a query to only select a specific asset , for example select all parts provided by a supplier ID=?
jdockter (Wed, 16 Aug 2017 18:49:47 GMT):
yup that seems to work for me as well
davidkel (Wed, 16 Aug 2017 18:59:36 GMT):
@jdockter that test query file looks like it is only about validation and not necessarily providing working examples of queries being tested. Have you looked at querying the historian ?
jdockter (Wed, 16 Aug 2017 18:59:57 GMT):
@davidkel was just doing that :)
jdockter (Wed, 16 Aug 2017 19:00:10 GMT):
so the one example page shows what looks like a transaction
jdockter (Wed, 16 Aug 2017 19:00:29 GMT):
but could I just write a query via the query file?
jdockter (Wed, 16 Aug 2017 19:04:18 GMT):
editor doesn't like it
jdockter (Wed, 16 Aug 2017 19:04:30 GMT):
Type HistorianRecord is not defined in namespace org.hyperledger.composer.system
davidkel (Wed, 16 Aug 2017 19:04:55 GMT):
using VSCode ?
jdockter (Wed, 16 Aug 2017 19:05:02 GMT):
correct
jdockter (Wed, 16 Aug 2017 19:05:20 GMT):
[Composer] TypeNotFoundException: Type HistorianRecord is not defined in namespace org.hyperledger.composer.system
jdockter (Wed, 16 Aug 2017 19:05:48 GMT):
```query selectFromHistorian {
description: "Select from Historian"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
}```
davidkel (Wed, 16 Aug 2017 19:06:12 GMT):
Seem to remember someone mentioning that there could be an issue with VSCode. Don't know if an issue was raised about it, could you raise an issue ?
jdockter (Wed, 16 Aug 2017 19:06:24 GMT):
sure
jdockter (Wed, 16 Aug 2017 19:07:37 GMT):
in the example on using historian is shows businessNetworkConnection and buildQuery ...are those objects accessible in a transaction?
davidkel (Wed, 16 Aug 2017 19:08:48 GMT):
No, that would be a client application example showing building a query dynamically, but I think the syntax should be the same going into a query file
davidkel (Wed, 16 Aug 2017 19:09:03 GMT):
ie the statement
jdockter (Wed, 16 Aug 2017 19:11:52 GMT):
mmm, bna builds but REST server doesn't like it
jdockter (Wed, 16 Aug 2017 19:12:11 GMT):
Message Attachments
jdockter (Wed, 16 Aug 2017 19:12:26 GMT):
and doesn't return data
jdockter (Wed, 16 Aug 2017 19:12:47 GMT):
```query selectTrxForHistorian {
description: "Select Trx from Historian"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
WHERE (transactionType=='UpdateExportDeclaredData' OR transactionType=='CreateShipment')
}```
jdockter (Wed, 16 Aug 2017 19:21:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WNjtd7Mj7iADMWhEn) @davidkel , https://github.com/hyperledger/composer/issues/1887
brianY (Wed, 16 Aug 2017 19:44:21 GMT):
Has joined the channel.
davidkel (Wed, 16 Aug 2017 19:44:42 GMT):
@jdockter I think you are missing the registry you are querying
```
SELECT org.hyperledger.composer.system.HistorianRecord FROM HistorianRegistry
```
jdockter (Wed, 16 Aug 2017 19:45:17 GMT):
I will try again but thought I had done that
jdockter (Wed, 16 Aug 2017 19:50:08 GMT):
@davidkel thanks that worked
xfreeman (Wed, 16 Aug 2017 21:03:41 GMT):
i am beginning with hyperledger and composer and some doubts, assuming we have a hospital with its bussines model and medical equipment manufacturer and they make bussines between them, what would be the rigth way, create a blockchain for hospital another for the manufacturer and comunicate them some way, or create a blockchain with 2 organizations ??
sstone1 (Wed, 16 Aug 2017 21:54:34 GMT):
@xfreeman the participants (the hospital and the manufacturer) would deploy a single Blockchain business network so they could share data
sai_ganesh (Thu, 17 Aug 2017 04:47:44 GMT):
Has joined the channel.
sai_ganesh (Thu, 17 Aug 2017 05:17:55 GMT):
Hi all. I am new to composer, following the developer guide https://hyperledger.github.io/composer/tutorials/developer-guide.html. Once I made the changes to the model file, the acl file and the script, I did npm install to generate the *.bna* file and then changed the features file to run the test. When I ram *npm test*, I am getting failures like this 1) Scenario: Alice can read all of the assets - features/sample.feature:27 Step: And I have added the following assets of type org.acme.mynetwork.Commodity - features/sample.feature:21
Step Definition: node_modules/composer-cucumber-steps/lib/assetsteps.js:19
Message:
ValidationException: Model violation in instance org.acme.mynetwork.Commodity#1 field quantity has value "1" (string) expected type Double*
sai_ganesh (Thu, 17 Aug 2017 05:17:55 GMT):
Hi all. I am new to composer, following the developer guide https://hyperledger.github.io/composer/tutorials/developer-guide.html. Once I made the changes to the model file, the acl file and the script, I did npm install to generate the *.bna* file and then changed the features file to run the test. When I ram *npm test*, I am getting failures like this *1) Scenario: Alice can read all of the assets - features/sample.feature:27 Step: And I have added the following assets of type org.acme.mynetwork.Commodity - features/sample.feature:21
Step Definition: node_modules/composer-cucumber-steps/lib/assetsteps.js:19
Message:
ValidationException: Model violation in instance org.acme.mynetwork.Commodity#1 field quantity has value "1" (string) expected type Double*
sai_ganesh (Thu, 17 Aug 2017 05:17:55 GMT):
Hi all. I am new to composer, following the developer guide https://hyperledger.github.io/composer/tutorials/developer-guide.html. Once I made the changes to the model file, the acl file and the script, I did npm install to generate the *.bna* file and then changed the features file to run the test. When I ram *npm test*, I am getting failures like this
1) Scenario: Alice can read all of the assets - features/sample.feature:27 Step: And I have added the following assets of type org.acme.mynetwork.Commodity features/sample.feature:21
Step Definition: node_modules/composer-cucumber-steps/lib/assetsteps.js:19
Message:
ValidationException: Model violation in instance org.acme.mynetwork.Commodity#1 field quantity has value "1" (string) expected type Double
sai_ganesh (Thu, 17 Aug 2017 05:17:55 GMT):
Hi all. I am new to composer, following the developer guide https://hyperledger.github.io/composer/tutorials/developer-guide.html. Once I made the changes to the model file, the acl file and the script, I did npm install to generate the *.bna* file and then changed the features file to run the test. When I ram *npm test*, I am getting failures like this
1) Scenario: Alice can read all of the assets - features/sample.feature:27 Step: And I have added the following assets of type org.acme.mynetwork.Commodity features/sample.feature:21
Step Definition: node_modules/composer-cucumber-steps/lib/assetsteps.js:19
Message:
ValidationException: Model violation in instance org.acme.mynetwork.Commodity#1 field quantity has value "1" (string) expected type Double
suvpatil (Thu, 17 Aug 2017 05:34:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=E5ZvFEdPBMgm6XtJJ) @mahoney1 I have change the connection.json as mention by you and run the composer runtime install, but still that error persist : Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: getaddrinfo ENOTFOUND ca.org1.example.com ca.org1.example.com:7054]
Command failed
Not understood what is going wrong!!
munireddya (Thu, 17 Aug 2017 05:39:28 GMT):
Has joined the channel.
suvpatil (Thu, 17 Aug 2017 05:42:38 GMT):
and when I saw .composer-credentials folder there only priv key is created
munireddya (Thu, 17 Aug 2017 05:43:11 GMT):
Message Attachments
munireddya (Thu, 17 Aug 2017 05:43:46 GMT):
Could any body suggest me ..what could be the problem plz...
sk (Thu, 17 Aug 2017 05:45:15 GMT):
@munireddya share your connection profile
munireddya (Thu, 17 Aug 2017 05:53:46 GMT):
@sk i am new to fabric and composer how can I get that.?
sai_ganesh (Thu, 17 Aug 2017 05:56:56 GMT):
Message Attachments
sai_ganesh (Thu, 17 Aug 2017 05:58:02 GMT):
Message Attachments
sai_ganesh (Thu, 17 Aug 2017 05:58:59 GMT):
Message Attachments
sai_ganesh (Thu, 17 Aug 2017 06:00:44 GMT):
This is the failure I was refering to in the question
sai_ganesh (Thu, 17 Aug 2017 06:01:09 GMT):
Message Attachments
sk (Thu, 17 Aug 2017 06:02:29 GMT):
@munireddya in case of Mac - /Users/
munireddya (Thu, 17 Aug 2017 06:12:15 GMT):
@sk i am using ubuntu...path of file? any idea?..if you don't mind can you explain how i can resolve this...so that i can try at home in my machine.
sk (Thu, 17 Aug 2017 06:13:03 GMT):
@munireddya just search for ".composer-connection-profiles" directory into Ubuntu
sk (Thu, 17 Aug 2017 06:13:18 GMT):
@munireddya generally its into current user directory
munireddya (Thu, 17 Aug 2017 06:14:08 GMT):
@sk how can i resolve it..plz..
sk (Thu, 17 Aug 2017 06:14:45 GMT):
@munireddya for that I need to see connection profile
munireddya (Thu, 17 Aug 2017 06:14:51 GMT):
ok
akshay111meher (Thu, 17 Aug 2017 06:32:14 GMT):
{ Error: RangeError: valstack limit
at /home/akshay/Desktop/ctogitlab/revenue-leakage/invoice2/node_modules/composer-client/node_modules/grpc/src/node/src/client.js:434:17 code: 2, metadata: Metadata { _internal_repr: {} } }
what kind of error is this?
Abhi119 (Thu, 17 Aug 2017 07:34:43 GMT):
Has joined the channel.
davidkel (Thu, 17 Aug 2017 07:58:15 GMT):
@suvpatil Are the urls you are providing valid in each of the entries valid ? do those hostnames resolve to a valid ip address, you can check by doing `ca.org1.example.com` for example. From the error you describe these will not resolve to a valid IP address. Question is where is your hyperledger fabric running ? try replacing the hostnames in the connection profile with the actual IP Address of where your fabric is running
davidkel (Thu, 17 Aug 2017 07:58:15 GMT):
@suvpatil Are the urls you are providing valid in each of the entries valid ? do those hostnames resolve to a valid ip address, you can check by doing `ca.org1.example.com` for example. From the error you describe these will not resolve to a valid IP address. Question is where is your hyperledger fabric running ? try replacing the hostnames in the connection profile with the actual IP Address of where your fabric is running
davidkel (Thu, 17 Aug 2017 07:58:15 GMT):
@suvpatil Are the urls you are providing in each of the entries valid ? do those hostnames resolve to a valid ip address, you can check by doing `ca.org1.example.com` for example. From the error you describe these will not resolve to a valid IP address. Question is where is your hyperledger fabric running ? try replacing the hostnames in the connection profile with the actual IP Address of where your fabric is running
davidkel (Thu, 17 Aug 2017 07:58:15 GMT):
@suvpatil Are the urls you are providing in each of the entries valid ? do those hostnames resolve to a valid ip addresses ?, you can check by doing `ca.org1.example.com` for example on the ca definition. From the error you describe these will not resolve to a valid IP addresses. Question is where is your hyperledger fabric running ? try replacing the hostnames in the connection profile with the actual IP Address of where your fabric is running
czar0 (Thu, 17 Aug 2017 08:53:12 GMT):
Hi, I am facing some problems writing a feature.
```
ValidationException: Model violation in instance org.digitalcmr.LegalOwnerAdmin#lapo@leaseplan.org class org.digitalcmr.Address has value Concept expected a Resource or a Concept.
```
Is there also any guide/example a bit more detailed about features and tests? (that is, using resources, concepts and relationships)
czar0 (Thu, 17 Aug 2017 08:53:12 GMT):
Hi, I am facing some problems writing a feature.
```
ValidationException: Model violation in instance org.digitalcmr.LegalOwnerAdmin#lapo@leaseplan.org class org.digitalcmr.Address has value Concept expected a Resource or a Concept.
```
Is there also any guide/example a bit more detailed about features and tests? (that is, using resources, concepts and relationships)
@sstone1 @mahoney1
sai_ganesh (Thu, 17 Aug 2017 09:26:23 GMT):
*composer --version* command is not working. The reply is *bash: /usr/bin/composer: No such file or directory*. I have already installed composer-cli using npm.
gbd-douglas (Thu, 17 Aug 2017 09:59:04 GMT):
Has joined the channel.
gbd-douglas (Thu, 17 Aug 2017 10:11:03 GMT):
Hi, is the right channel to ask general questions about composer, such as risk management and community structure? If not, please can someone redirect? Cheers!
coder-ajay (Thu, 17 Aug 2017 10:29:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=69Ez3bcJcdi5Yq7Aa) @mahoney1 :Okay. If I understand correctly, (as of now) below code is useful only if the .bna file is uploaded on the playground.
```
.then(() => {
return businessNetworkConnection.getHistorian();
}).then((historian) => {
return historian.getAll();
}).then((historianRecords) => {
console.log(prettyoutput(historianRecords));
})
```
If I want this data to be available for angular application now then I will have to build my own REST api (Ref: https://www.sitepoint.com/angular-rxjs-create-api-service-rest-backend/).
Right?
UDeshmukh (Thu, 17 Aug 2017 10:50:03 GMT):
Not sure if this is the right forum for this question.... there are 8 different sample business applications networks available for download on Github - https://github.com/bestbeforetoday/composer-sample-networks/tree/master/packages I was wondering if one was available anywhere for download for Healthcare Service providers network (Patients/Hospitals/Insurers as participants) I wanted to understand how the HIPAA https://www.hhs.gov/hipaa/for-professionals/security/laws-regulations/index.html compliance would be handled.... Thanks!
mahoney1 (Thu, 17 Aug 2017 11:27:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TRufEK7ZWSkJoD3yr) @sai_ganesh hi there and welcome, a minor change in your 'package.json' is required - change the dependencies for `composer-` to become level `"^0.11.0",` then save it and run `npm install` - then carry on to run the `npm test` again.
mahoney1 (Thu, 17 Aug 2017 11:27:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TRufEK7ZWSkJoD3yr) @sai_ganesh hi there and welcome, a minor change in your 'package.json' is required - change the dependencies for `composer-` to become level `"^0.11.0",` then save it and run `npm install` - then carry on to run the `npm test` again. (This dependency level is fixed in the release of Composer due later today FYI)
mahoney1 (Thu, 17 Aug 2017 11:27:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TRufEK7ZWSkJoD3yr) @sai_ganesh hi there and welcome, a minor change in your 'package.json' is required - change the levels (in the devDependencies section) for `composer-` to become `"^0.11.0",` then save it and run `npm install` - then carry on to run the `npm test` again. (This dependency level is fixed in the release of Composer due later today FYI)
mahoney1 (Thu, 17 Aug 2017 11:36:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LHammXzieQaf5fsF4) @munireddya so your real problem is that for some reason (not used -g ? ) your composer-client did not install properly - can you do the following to resolve 1) `composer npm uninstall -g composer-cli ` then 2) `npm install -g composer-cli ` - then we can try to deploy your network again.
sai_ganesh (Thu, 17 Aug 2017 11:39:15 GMT):
@mahoney1 . Thanks for that. It's working fine now. But I am not able to do *composer network deploy*. Even *composer --version* command is not working though I have installed the composer-cli using npm.
levinkwong (Thu, 17 Aug 2017 11:46:53 GMT):
Hi guys, I have a question during the development of a transaction:
I have the following objects:
```
asset Object identified by id {
o String id
o Animal animal
}
abstract concept Animal {
}
concept Cat extends Animal {
o String catType
}
concept Cat extends Animal {
o String dogType
}
```
When I get the Object by id (by getAssetRegistry), I want to do something like `if (Object is cat) then ...`
But I have no idea how to do so, please help!
:cat::dog:
levinkwong (Thu, 17 Aug 2017 11:46:53 GMT):
Hi guys, I have a question during the development of a transaction:
I have the following objects:
```
asset Object identified by id {
o String id
o Animal animal
}
abstract concept Animal {
}
concept Cat extends Animal {
o String catType
}
concept Cat extends Animal {
o String dogType
}
```
Inside my transaction, I get the Object by id (by getAssetRegistry), I want to do something like `if (Object is cat) then ...`
But I have no idea how to do so, please help!
:cat::dog:
levinkwong (Thu, 17 Aug 2017 11:46:53 GMT):
Hi guys, I have a question during the development of a transaction:
I have the following objects:
```
asset Object identified by id {
o String id
o Animal animal
}
abstract concept Animal {
}
concept Cat extends Animal {
o String catType
}
concept Cat extends Animal {
o String dogType
}
```
Inside my transaction, I get the Object by id (by getAssetRegistry), I want to do something like `if (Object.animal is cat) then ...`
But I have no idea how to do so, please help!
:cat::dog:
munireddya (Thu, 17 Aug 2017 11:57:29 GMT):
@mahoney1 npm WARN checkPermissions Missing write access to /usr/lib/node_modules/composer-cli/node_modules/pkcs11js/node_modules/@types
npm WARN checkPermissions Missing write access to /usr/lib/node_modules
npm ERR! path /usr/lib/node_modules/composer-cli/node_modules/@types
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/usr/lib/node_modules/composer-cli/node_modules/@types'
npm ERR! { Error: EACCES: permission denied, access '/usr/lib/node_modules/composer-cli/node_modules/@types'
npm ERR! stack: 'Error: EACCES: permission denied, access \'/usr/lib/node_modules/composer-cli/node_modules/@types\'',
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/usr/lib/node_modules/composer-cli/node_modules/@types' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/powersquare/.npm/_logs/2017-08-17T11_54_13_078Z-debug.log
munireddya (Thu, 17 Aug 2017 11:57:40 GMT):
when I did
munireddya (Thu, 17 Aug 2017 11:57:42 GMT):
1) `composer npm uninstall -g composer-cli ` then 2) `npm install -g composer-cli ` - then we can try to deploy your network again.
mahoney1 (Thu, 17 Aug 2017 11:57:43 GMT):
@sai_ganesh ok...can you do the following: 1. `which composer` and paste the output and 2. `cd ; npm list -g --depth=0` and paste the output - thanks
mahoney1 (Thu, 17 Aug 2017 11:58:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mwMfPidCZGXcuKdwN) @munireddya can I ask what OS / version you are installing onto please?
sai_ganesh (Thu, 17 Aug 2017 11:59:52 GMT):
1. */home/sai/.nvm/versions/node/v6.11.2/bin/composer*
2. /home/sai/.nvm/versions/node/v6.11.2/lib
+-- composer-cli@0.11.2
+-- composer-rest-server@0.11.2
+-- generator-hyperledger-composer@0.11.2
+-- npm@5.3.0
`-- yo@2.0.0
munireddya (Thu, 17 Aug 2017 12:00:36 GMT):
@mahoney1 16.04 LTS
mahoney1 (Thu, 17 Aug 2017 12:03:42 GMT):
@sai_ganesh strange - that setup looks good - what happens when you do `composer-rest-server -v ` (output)
sai_ganesh (Thu, 17 Aug 2017 12:04:42 GMT):
@mahoney1 . This is the output I get
sai_ganesh (Thu, 17 Aug 2017 12:04:43 GMT):
composer-rest-server v0.11.2
composer-admin v0.11.2
composer-client v0.11.2
composer-common v0.11.2
composer-runtime-hlf v0.11.2
composer-runtime-hlfv1 v0.11.2
sai_ganesh (Thu, 17 Aug 2017 12:05:31 GMT):
But *composer --version* is throwing this output bash: /usr/bin/composer: No such file or directory
mahoney1 (Thu, 17 Aug 2017 12:07:04 GMT):
@munireddya can you post your `npm -v` and `node -v` output please - also - did you install using sudo - the `permission denied` messages suggest that an install may have been attempted previously (aborted or otherwise) and possibly with a non-privileged user its not able to overwrite?
mahoney1 (Thu, 17 Aug 2017 12:07:34 GMT):
@sai_ganesh - ok so paste the exact message of your commmand `composer -v` and the output of that please and thanks.
sai_ganesh (Thu, 17 Aug 2017 12:08:17 GMT):
@mahoney1 This is the exact output *bash: /usr/bin/composer: No such file or directory*
munireddya (Thu, 17 Aug 2017 12:08:27 GMT):
@mahoney1 powersquare@powersquare-desktop:~$ npm -v
5.3.0
powersquare@powersquare-desktop:~$ node -v
v8.3.0
mahoney1 (Thu, 17 Aug 2017 12:09:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uwSq2GqtARqngYSfg) @UDeshmukh we don't have one in samples presently, but happy to share it with others if community members have such a model..
sai_ganesh (Thu, 17 Aug 2017 12:09:12 GMT):
@mahoney1 sai@sai-Lap:~$ composer -v
bash: /usr/bin/composer: No such file or directory
munireddya (Thu, 17 Aug 2017 12:10:57 GMT):
@mahoney1 powersquare@powersquare-desktop:~$ npm -v
5.3.0
powersquare@powersquare-desktop:~$ node -v
v8.3.0
munireddya (Thu, 17 Aug 2017 12:13:37 GMT):
@mahoney1 powersquare@powersquare-desktop:~$ composer-rest-server -v
composer-rest-server v0.11.2
composer-client v0.11.2
composer-common v0.11.2
composer-runtime-hlf v0.11.2
composer-runtime-hlfv1 v0.11.2
mahoney1 (Thu, 17 Aug 2017 12:14:38 GMT):
@sai_ganesh - so your $PATH (would seem) is seeking composer in /usr/bin - which suggests you installed a 'different composer' once upon a time (ie not HYPERLEDGER Composer) - the output of your 'which' command - is that possible? /usr/bin is alien to a Hyperledger Composer install but some PATH variable (I can only conclude) is looking for it there. So I would check your PATH firstly and edit accordingly. for example my user's PATH looks like this `/home/demo/.nvm/versions/node/v6.11.0/bin:/home/demo/bin:/home/demo/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin`
mahoney1 (Thu, 17 Aug 2017 12:14:38 GMT):
@sai_ganesh - so your $PATH (would seem) is seeking composer in /usr/bin - which suggests you installed a 'different composer' once upon a time (ie not HYPERLEDGER Composer) - the output of your 'which' command - is that possible? /usr/bin is alien to a Hyperledger Composer install but your PATH variable (I can only conclude) is looking for it there. So I would check your PATH firstly and edit accordingly. for example my user's PATH looks like this `/home/demo/.nvm/versions/node/v6.11.0/bin:/home/demo/bin:/home/demo/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin`
sai_ganesh (Thu, 17 Aug 2017 12:16:31 GMT):
@mahoney1 . I had the composer php package manager installed there, a few days ago. Later I removed it so that there is no confusion with the hyperledger composer. Thanks for that info. I will look into the PATH
mahoney1 (Thu, 17 Aug 2017 12:16:50 GMT):
@munireddya ah, I see - so check the pre-requisites here -> https://hyperledger.github.io/composer/installing/development-tools.html Node 6.x only is supported (we don't presently support Node 8) - Suggest to install an edition of Node 6 - and follow the instructions prescriptively (it includes a prerequisite script also)
mahoney1 (Thu, 17 Aug 2017 12:16:50 GMT):
@munireddya ah, I see - so check the pre-requisites here -> https://hyperledger.github.io/composer/installing/development-tools.html Node 6.x only is supported (we don't presently support Node 8 ) - Suggest to install an edition of Node 6 - and follow the instructions prescriptively (it includes a prerequisite script also)
mahoney1 (Thu, 17 Aug 2017 12:17:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eHnWAuCnzfZGzaps6) @sai_ganesh right, makes sense as to why you/we saw that behaviour..
munireddya (Thu, 17 Aug 2017 12:21:08 GMT):
@mahoney1 small general question can I use 12.04 ubuntu..with out any problem?
sai_ganesh (Thu, 17 Aug 2017 12:23:46 GMT):
@mahoney1. This is my PATH currently. /home/sai/.nvm/versions/node/v6.11.2/bin:/home/sai/Projects/Proj1/bin:/usr/local/go/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/sai/Projects/Proj1
Do I need to add and unset something here?
mahoney1 (Thu, 17 Aug 2017 12:25:02 GMT):
@levinkwong have you checked out the sample network for Animal Tracking https://github.com/hyperledger/composer-sample-models/blob/master/packages/animaltracking-model/models/com.ibm.concerto.mozart.cto ? It has something similar. The transaction logic that accompanies that model is here https://github.com/hyperledger/composer-sample-networks/tree/master/packages/animaltracking-network let me know if this helps.
mahoney1 (Thu, 17 Aug 2017 12:27:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dozpoA3bPzXeSMZ5F) @munireddya we don't currently support 12.04 Ubuntu :-)
munireddya (Thu, 17 Aug 2017 12:32:22 GMT):
@mahoney1
munireddya (Thu, 17 Aug 2017 12:32:24 GMT):
powersquare@powersquare-desktop:~$ node -v
v6.11.2
powersquare@powersquare-desktop:~$ npm -v
3.10.10
powersquare@powersquare-desktop:~$ cd /home/powersquare/fabric-tools/my-network/dist
powersquare@powersquare-desktop:~/fabric-tools/my-network/dist$ composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.1.6
Description: My Commodity Trading network
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1". Error: Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/grpc_node.node'
Command failed
mahoney1 (Thu, 17 Aug 2017 12:45:39 GMT):
@munireddya before we proceed, do you have python installed ? `python -v` ?
mahoney1 (Thu, 17 Aug 2017 12:45:39 GMT):
@munireddya before we proceed, do you have python installed ? `python -v` ? Level 2.7 supported.
mahoney1 (Thu, 17 Aug 2017 12:53:27 GMT):
If python level is good - then - although you've set up a new node version now - you will still need to `npm uninstall -g composer-cli composer-rest-server generator-hyperledger-composer` (if the latter 2 are installed too) and then install - ie with node 6 present ie `npm install -g composer-cli ; npm install -g composer-rest-server ; npm install -g generator-hyperledger-composer`
mahoney1 (Thu, 17 Aug 2017 12:53:27 GMT):
@munireddya ..if your python level is good - then - although you've set up a new node version now - you will still need to `npm uninstall -g composer-cli composer-rest-server generator-hyperledger-composer` (if the latter 2 are installed too) and then install - ie with node 6 present ie `npm install -g composer-cli ; npm install -g composer-rest-server ; npm install -g generator-hyperledger-composer`
mahoney1 (Thu, 17 Aug 2017 12:58:33 GMT):
@sai_ganesh to properly move the 'other composer' I suggest you review this https://askubuntu.com/questions/716230/cant-remove-composer-via-terminal seems like you would need `composer global remove phpunit/phpunit` followed by something like `sudo apt-get purge --auto-remove composer` from here https://stackoverflow.com/questions/30396451/remove-composer ..Then try a reboot and see if `composer -v` works.
mahoney1 (Thu, 17 Aug 2017 12:58:33 GMT):
@sai_ganesh to properly remove the 'other composer' I suggest you review this https://askubuntu.com/questions/716230/cant-remove-composer-via-terminal seems like you would need `composer global remove phpunit/phpunit` followed by something like `sudo apt-get purge --auto-remove composer` from here https://stackoverflow.com/questions/30396451/remove-composer ..Then try a reboot and see if `composer -v` works.
mahoney1 (Thu, 17 Aug 2017 13:03:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nEiBHxZt9awyeY7H5) @czar0 hi there - I think this Stack Overflow (and link therein) will help you - https://stackoverflow.com/questions/45107591/testing-a-concept-type-in-hypledger-composer-with-cucumber please let me know if you need more assistance.
mahoney1 (Thu, 17 Aug 2017 13:07:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nMAXp3Mx9ExjiTscj) @coder-ajay no the class is available via the APIs as well - that example ecords a typical promise chain snippet . Its a Registry not unlike the other Registries that you can call from the APIs as well.
mahoney1 (Thu, 17 Aug 2017 13:07:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nMAXp3Mx9ExjiTscj) @coder-ajay no the class and Registry is available via the APIs as well - that example records a typical promise chain snippet . Its a Registry not unlike the other Registries that you can call from the APIs as well. So once you connect to your deployed network (or it could be in a test script) you can list the historical records.
mahoney1 (Thu, 17 Aug 2017 13:15:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=c4espEPkgwc4fjuYP) @gbd-douglas please ask. On community structure, Rocketchat is the main discussion (and indeed support) vehicle, along with Community calls weekly...
mahoney1 (Thu, 17 Aug 2017 13:28:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=G3MBFufbkMauB4QtM) @akshay111meher hi there - can you tell me the circumstances leading up to the error. Can you also post the memory size (in Gb) please? You need a minimum of 4Gb for a dev/test setup. Did you rebuild your Fabric environment and then try connect to a business network - without seeing the complete log, its difficult to know.. this error could also happen when a 'Failed to deserialize creator identity, err MSP Org1MSP ' was generated (ie the admin credentials in KeyValStore no longer match a new CA server container)
mahoney1 (Thu, 17 Aug 2017 13:33:02 GMT):
fyi @here - a reminder that the Composer Community call today is at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 or dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories or use cases on the call - please join us ! We'll also discuss the latest work on Composer and what's upcoming -> see Agenda here - URL https://github.com/hyperledger/composer/wiki/Meeting-17th-August-2017
mahoney1 (Thu, 17 Aug 2017 13:33:02 GMT):
fyi @here - a reminder that the Composer Community call today is at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://ibm.zoom.us/j/391705436 or dial-in numbers available if travelling: https://ibm.zoom.us/zoomconference?m=j03lAW9nOFpG2cxO79svowGCBHWoLDlh would be great to hear from you and hear your Composer stories or use cases on the call - please join us ! We'll also discuss the latest work on Composer and what's upcoming -> see Agenda here - URL https://github.com/hyperledger/composer/wiki/Meeting-17th-August-2017 ** NOTE CHANGE OF MEETING ID ABOVE (problem with the 'old' one)
bestbeforetoday (Thu, 17 Aug 2017 13:51:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TRufEK7ZWSkJoD3yr) @sai_ganesh I made a change a couple of weeks back to coerce primitive types specified within tables in Cucumber scenario definitions to the type defined by the model. Previously all values in tables were treated as strings, which seems to be the behaviour you are seeing. You might want to make sure you are on the latest Composer release, which it looks like you've had some help with already
sstone1 (Thu, 17 Aug 2017 15:21:22 GMT):
@here we've released Hyperledger Composer v0.11.3, w/ fixes for several bugs & issues, read all about it on GitHub: https://github.com/hyperledger/composer/releases/tag/v0.11.3 🎉
DennisM330 (Thu, 17 Aug 2017 15:23:31 GMT):
transaction time
DennisM330 (Thu, 17 Aug 2017 15:37:41 GMT):
Here is a good question I received. This applies to composer-rest-server and JS SDK. How do we prevent the timestamp from being submitted with the transaction? Currently, every transaction automatically has a timestamp field that can be populated and submitted by the participant, allowing the participant to override the time that the transaction was submitted. Is this something we can turn off? Is there another way we should be accessing the transaction time?
mahoney1 (Thu, 17 Aug 2017 15:46:14 GMT):
fyi @here - a reminder that the Composer Community call today is at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://ibm.zoom.us/j/391705436 or dial-in numbers available if travelling: https://ibm.zoom.us/zoomconference?m=j03lAW9nOFpG2cxO79svowGCBHWoLDlh would be great to hear from you and hear your Composer stories or use cases on the call - please join us ! We'll also discuss the latest work on Composer and what's upcoming -> see Agenda here - URL https://github.com/hyperledger/composer/wiki/Meeting-17th-August-2017 ** NOTE CHANGE OF MEETING ID ABOVE (problem with the 'old' one)
UDeshmukh (Thu, 17 Aug 2017 15:54:41 GMT):
Message Attachments
jtonline (Thu, 17 Aug 2017 16:00:42 GMT):
@UDeshmukh we're having the same problem... hopefully we'll get it started soon...
mahoney1 (Thu, 17 Aug 2017 16:01:06 GMT):
meeting ID -> https://ibm.zoom.us/j/398645298 has changed (dynamic apparently)
mahoney1 (Thu, 17 Aug 2017 16:05:04 GMT):
just repeeating the MEETING ID is now https://ibm.zoom.us/j/398645298
mahoney1 (Thu, 17 Aug 2017 16:05:04 GMT):
just repeating ..the MEETING ID is now https://ibm.zoom.us/j/398645298
gauthampamu (Thu, 17 Aug 2017 16:07:08 GMT):
I am in the process of doing capacity planning for a project. I wanted to understand the storage implication of using Composer. Let say the transaction input is around 1KB and we have close to 5 Million Transactions per year. What is the hard disk requirements with Composer. Since we also have transaction history in the workstate, should we multiple by 3 (because approx 5G for Asset Registry + 5G for the Transaction Registry + 5 GB for the Blockchain). Let says the replication factor is 3 for Kafka so can we estimate the hard requirement would be around 15GB for the Kafka cluster and additional space for Docker logs and Kafka logs.
mahoney1 (Thu, 17 Aug 2017 17:21:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Pb9iaJDpd3kNDa7nu) @DennisM330 as a dev discipline : linting checks is one way to make sure its not added. If it is in the code,. But to your point - can you raise a Github issue for this please - while they can get hold of the transaction object, and submit it - the timestamps should be thrown away, as Composer is responsible for setting it deterministically. - thanks
brianY (Thu, 17 Aug 2017 19:45:16 GMT):
i'm having trouble finding the JSdocs for npm composer modules. Can someone point me to them?
sstone1 (Thu, 17 Aug 2017 19:57:40 GMT):
@brianY https://hyperledger.github.io/composer/jsdoc/index.html
sstone1 (Thu, 17 Aug 2017 19:58:37 GMT):
@gauthampamu we haven't done any work on capacity planning yet. have you received some guidance from the #fabric team? i would suggest that is the place to start, and based on their figures for transaction/ledger usage vs world state usage you can start to figure out what composer requires on top of that.
gauthampamu (Thu, 17 Aug 2017 19:59:58 GMT):
I have posted some questions related to this on fabric channel. https://chat.hyperledger.org/channel/fabric-consensus?msg=BKQB4iFc4qcg7epLD
jdockter (Thu, 17 Aug 2017 20:04:25 GMT):
Does the CQL language support appending a filter parameter to an existing string in a query, so something like WHERE (order == '000'+_$orderNumber)
sstone1 (Thu, 17 Aug 2017 20:05:47 GMT):
afraid not @jdockter
sstone1 (Thu, 17 Aug 2017 20:05:56 GMT):
sorry to keep disappointing you so much at the moment :P
jdockter (Thu, 17 Aug 2017 20:06:23 GMT):
ha...never...I will just pass in the whole string
LuizSilva (Thu, 17 Aug 2017 23:14:03 GMT):
Getting the Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
The steps below are based on the documentation https://hyperledger.github.io/composer/managing/identity-issue.html related to adding participants and issuing identity
Steps to reproduce
1) First I install locally according to the instructions https://hyperledger.github.io/composer/installing/development-tools.html
2) Then I clone based on the code from https://github.com/hyperledger/composer-sample-networks/tree/master/packages
3) From Terminal
cd ~/fabric-tools
/startFabric.sh
4) cd /hyperledger/samples/composer-sample-networks/packages/basic-sample-network
5) composer archive create -a dist/basic-sample-network.bna --sourceType dir --sourceName .
6) cd dist
7) composer network deploy -a basic-sample-network.bna -p hlfv1 -i PeerAdmin -s randomString
8) composer network ping -n basic-sample-network -p hlfv1 -i admin -s adminpw
9) cd ..
10) composer-rest-server -p hlfv1 -n basic-sample-network -i admin -s adminpw -N never -w true
11) starts another Terminal
12) composer participant add -p hlfv1 -n 'basic-sample-network' -i admin -s adminpw -d '{"$class":"org.acme.sample.SampleParticipant","participantId":"TRADER1","firstName":"Jenny","lastName":"Jones"}'
13) composer participant add -p hlfv1 -n 'basic-sample-network' -i admin -s adminpw -d '{"$class":"org.acme.sample.SampleParticipant","participantId":"TRADER2","firstName":"Amy","lastName":"Williams"}'
14) composer identity issue -p hlfv1 -n 'basic-sample-network' -i admin -s adminpw -u TRADER1 -a "resource:org.acme.sample.SampleParticipant#TRADER1"
15) The command above returns Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
levinkwong (Fri, 18 Aug 2017 02:05:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Kn6qx8jx3HJLddChw) @mahoney1
Sorry for the late response. I think the sample is not helping, because my question is on how to detect the runtime subType and further do some logic on a particular subType.
levinkwong (Fri, 18 Aug 2017 02:05:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Kn6qx8jx3HJLddChw) @mahoney1
Sorry for the late response. I think the sample is not helping, because my question is on how to detect the runtime type of a concept (or asset) and further do some logic on a particular type.
levinkwong (Fri, 18 Aug 2017 02:10:25 GMT):
Can I do something like
```
if (animal.$class == 'namespace.Cat') {
... business logic ...
}
```
coder-ajay (Fri, 18 Aug 2017 04:09:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jhpgm5ciFrsHhW2AW) @LuizSilva : Try deleting the ` Users/
rohitaneja8 (Fri, 18 Aug 2017 05:36:55 GMT):
Has joined the channel.
ibmamnt (Fri, 18 Aug 2017 05:59:15 GMT):
Hi, I got this error when I try to connect to TLS enabled Hyperledger Fabric V1.0 in Composer Playground.
```E0818 14:56:49.641869210 18742 ssl_transport_security.c:947] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.``
This is what I did. I used first business network model.
ibmamnt (Fri, 18 Aug 2017 05:59:15 GMT):
Hi, I got this error when I try to connect to TLS enabled Hyperledger Fabric V1.0 in Composer Playground.
```E0818 14:56:49.641869210 18742 ssl_transport_security.c:947] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.```
This is what I did. I used first business network model.
ibmamnt (Fri, 18 Aug 2017 06:03:09 GMT):
1. Setup Hyperledger Fabric with this procedure. https://hyperledger-fabric.readthedocs.io/en/latest/build_network.html
2. Copied these TLS and enter these into certificate.
Ordererer: crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem
Peer: crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem
ibmamnt (Fri, 18 Aug 2017 06:03:39 GMT):
I guess I copied wrong one. What are the correct certificate ?
ibmamnt (Fri, 18 Aug 2017 08:08:26 GMT):
By the way, when I disable TLS, it works (e.g. composer network deploy, etc). So this is not problem in connection user credential (I've imported via "composer identity import".
levinkwong (Fri, 18 Aug 2017 08:16:38 GMT):
Hi, anyone know how to debug the composer transaction ?
Every error are shown as duktape error.
```
Levin Debug : 005 - 1
Levin Debug : 005 - 1 - 1 DltCoverageCST
Levin Debug : 005 - 1 - 1 DltFundsCST
Levin Debug : 005 - 1 - 1 DltFinancialOptionCST
Levin Debug : 007
Error: completeMERCharge: {}
at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
at error () native strict preventsyield
at [anon] (input:765)
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1) preventsyield
at call () native strict preventsyield
at [anon] (eval:1) preventsyield
[...]
```
levinkwong (Fri, 18 Aug 2017 08:16:38 GMT):
Hi, anyone know how to debug the composer transaction ?
Every error are shown as duktape error.
```
Levin Debug : 005 - 1
Levin Debug : 005 - 1 - 1
Levin Debug : 005 - 1 - 1
Levin Debug : 005 - 1 - 1
Levin Debug : 007
Error: completeMERCharge: {}
at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
at error () native strict preventsyield
at [anon] (input:765)
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1) preventsyield
at call () native strict preventsyield
at [anon] (eval:1) preventsyield
[...]
```
jingweili (Fri, 18 Aug 2017 08:23:03 GMT):
Has joined the channel.
arnabsutar (Fri, 18 Aug 2017 08:30:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oZk9CMF7zjuCMu9BK) @mahoney1 thanks
arnabsutar (Fri, 18 Aug 2017 08:31:51 GMT):
Where we can find the generated chaincode for .bna files (if they actually generate)?
arnabsutar (Fri, 18 Aug 2017 08:34:40 GMT):
Some queries:
1. Can we extend our composer network with multiple peers?
2. Is it possible to create private channel between two participants?
3. Can composer created network work with multiple organization?
mahoney1 (Fri, 18 Aug 2017 08:40:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jhpgm5ciFrsHhW2AW) @LuizSilva Hi LuizSilva - the step you missed from the instructions - af step 3) in your sequence and straight after `./startFabric.sh` is `./createComposerProfile.sh` - both with (with leading '.') - this script will copy PeerAdmin's credentials into the keyValStore
mahoney1 (Fri, 18 Aug 2017 08:40:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jhpgm5ciFrsHhW2AW) @LuizSilva Hi LuizSilva - the step you missed from the instructions - af step 3) in your sequence and straight after `./startFabric.sh` is `./createComposerProfile.sh` - (both with leading '.') - this script will copy PeerAdmin's credentials into the keyValStore
davidkel (Fri, 18 Aug 2017 09:06:40 GMT):
@ibmamnt They should use the one's you have setup your orderer and peers. For example if you are using a docker-compose environment then for the ordererer you would use the contents of the file you have specified for
```
ORDERER_GENERAL_TLS_CERTIFICATE
```
in your docker compose file.
ibmamnt (Fri, 18 Aug 2017 09:17:09 GMT):
Which one should I use ?
```
orderer
- ORDERER_GENERAL_TLS_ENABLED=true
- ORDERER_GENERAL_TLS_PRIVATEKEY=/var/hyperledger/orderer/tls/server.key
- ORDERER_GENERAL_TLS_CERTIFICATE=/var/hyperledger/orderer/tls/server.crt
- ORDERER_GENERAL_TLS_ROOTCAS=[/var/hyperledger/orderer/tls/ca.crt]
These are comming from this location.
- ../crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls
peer
- CORE_PEER_PROFILE_ENABLED=true
- CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt
- CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key
- CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt ```
These are coming from this location.
- ../crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls ```
ibmamnt (Fri, 18 Aug 2017 09:17:09 GMT):
Which one should I use ?
```
orderer
- ORDERER_GENERAL_TLS_ENABLED=true
- ORDERER_GENERAL_TLS_PRIVATEKEY=/var/hyperledger/orderer/tls/server.key
- ORDERER_GENERAL_TLS_CERTIFICATE=/var/hyperledger/orderer/tls/server.crt
- ORDERER_GENERAL_TLS_ROOTCAS=[/var/hyperledger/orderer/tls/ca.crt]
These are comming from this location.
- ../crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls
peer
- CORE_PEER_PROFILE_ENABLED=true
- CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt
- CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key
- CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt
These are coming from this location.
- ../crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls ```
ibmamnt (Fri, 18 Aug 2017 09:17:09 GMT):
@davidkel Which one should I use ?
```
orderer
- ORDERER_GENERAL_TLS_ENABLED=true
- ORDERER_GENERAL_TLS_PRIVATEKEY=/var/hyperledger/orderer/tls/server.key
- ORDERER_GENERAL_TLS_CERTIFICATE=/var/hyperledger/orderer/tls/server.crt
- ORDERER_GENERAL_TLS_ROOTCAS=[/var/hyperledger/orderer/tls/ca.crt]
These are comming from this location.
- ../crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls
peer
- CORE_PEER_PROFILE_ENABLED=true
- CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt
- CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key
- CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt
These are coming from this location.
- ../crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls ```
ibmamnt (Fri, 18 Aug 2017 09:26:00 GMT):
I tried both server.crt and ca.crt file. But I still get "Handshake failed with fatal error SSL_ERROR_SSL"
WatserAanDeHand (Fri, 18 Aug 2017 09:27:15 GMT):
Has left the channel.
ibmamnt (Fri, 18 Aug 2017 09:40:53 GMT):
Sorry, I seems to have specfied wrong files. Please forget about SSL errors.
ibmamnt (Fri, 18 Aug 2017 09:40:53 GMT):
@davidkel Sorry, I seems to have specfied wrong files. Please forget about SSL errors.
pmcosta1 (Fri, 18 Aug 2017 09:59:05 GMT):
Hi. Can someone point me in the direction of subscribing to events exposed via websocket on the rest server? Thanks in advance.
mahoney1 (Fri, 18 Aug 2017 10:29:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ambz6jNyCQopbAato) @pmcosta1 see here -> https://hyperledger.github.io/composer/applications/subscribing-to-events.html and more info here https://github.com/hyperledger/composer/issues/1177
pmcosta1 (Fri, 18 Aug 2017 10:29:54 GMT):
thanks! @mahoney1
pmcosta1 (Fri, 18 Aug 2017 10:32:26 GMT):
@mahoney1 I was under the impression on the first link that events aren't passing through the rest server (am I mistaken)?
mahoney1 (Fri, 18 Aug 2017 11:56:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ymfe9SSCFXeKywyMW) @pmcosta1 the `-w` flag on composer-rest-server enables event publication over websockets `composer-rest-server -h
Usage: composer-rest-server [options]
Options:
-p, --connectionProfileName The connection profile name [string]
-n, --businessNetworkName The business network identifier [string]
-i, --enrollId The enrollment ID of the user [string]
-s, --enrollSecret The enrollment secret of the user [string]
-N, --namespaces Use namespaces if conflicting types exist [string] [choices: "always", "required", "never"] [default: "always"]
-P, --port The port to serve the REST API on [number]
-S, --security Enable security for the REST API [boolean] [default: false]
-w, --websockets Enable event publication over WebSockets [boolean] [default: true]
-t, --tls Enable TLS security for the REST API [boolean] [default: false]
-c, --tlscert File containing the TLS certificate [string] [default: "/home/demo/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/cert.pem"]
-k, --tlskey File containing the TLS private key [string] [default: "/home/demo/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/key.pem"]
-h, --help Show help [boolean]
-v, --version Show version number [boolean]` - there is an example here https://github.com/hyperledger/composer/blob/master/packages/composer-rest-server/test/data/bond-network/lib/logic.js
mahoney1 (Fri, 18 Aug 2017 11:56:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ymfe9SSCFXeKywyMW) @pmcosta1 the `-w` flag on composer-rest-server enables event publication over websockets ```composer-rest-server -h
Usage: composer-rest-server [options]
Options:
-p, --connectionProfileName The connection profile name [string]
-n, --businessNetworkName The business network identifier [string]
-i, --enrollId The enrollment ID of the user [string]
-s, --enrollSecret The enrollment secret of the user [string]
-N, --namespaces Use namespaces if conflicting types exist [string] [choices: "always", "required", "never"] [default: "always"]
-P, --port The port to serve the REST API on [number]
-S, --security Enable security for the REST API [boolean] [default: false]
-w, --websockets Enable event publication over WebSockets [boolean] [default: true]
-t, --tls Enable TLS security for the REST API [boolean] [default: false]
-c, --tlscert File containing the TLS certificate [string] [default: "/home/demo/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/cert.pem"]
-k, --tlskey File containing the TLS private key [string] [default: "/home/demo/.nvm/versions/node/v6.11.0/lib/node_modules/composer-rest-server/key.pem"]
-h, --help Show help [boolean]
-v, --version Show version number [boolean]```` - there is an example here https://github.com/hyperledger/composer/blob/master/packages/composer-rest-server/test/data/bond-network/lib/logic.js
DushyantBhalgami (Fri, 18 Aug 2017 12:07:04 GMT):
Has joined the channel.
DushyantBhalgami (Fri, 18 Aug 2017 12:07:44 GMT):
Hello... How can i get list of all the blocks of chaincode using Hyperledger Composer?
razik29 (Fri, 18 Aug 2017 12:26:06 GMT):
Hi Guys,
razik29 (Fri, 18 Aug 2017 12:27:02 GMT):
I am facing an issue in accessing the hyperledger Rest API's from my web application. Please find the detail below.
razik29 (Fri, 18 Aug 2017 12:27:11 GMT):
I have a hyperledger env running in secure mode by following this link https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
and it works fine if I authenticate as specified in the document (hitting http://localhost:3000/auth/github from a browser) and then access the Rest API from the http://localhost:3000/explorer and could authorize as various participants (i.e, issuing identity and adding them to the wallet and setting one as default at a time) and could see the assets as per the .acl file.
But I started facing problems when I started integrating the Rest API's from my web application. As a first step from my web app, I called the http://localhost:3000/auth/github to authenticate and then started calling the other APIs (transaction/list, ect.,) but I do always get
Error 401: 'Authorization Failure'.
I have tried the following to resolve this and nothing worked.
i. Gave my web application URL as the 'Redirect URL' in the env variable for the hyperledger. And upon successful authentication (calling http://localhost:3000/auth/github) it successfully redirected to my webapp home page but afterwards accessing the Rest API's (from web app) always throw 'Authorization Failure' error.
Env. variable as below,
export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "CLIENT_ID",
"clientSecret": "CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "http://localhost:8080/home.html",
"failureRedirect": "/"
}
}'
ii. Incorporated 'github-passport2' mechanism in my web application (i.e, registered my app with the oauth of github) and upon successful login to my web application; called the http://localhost:3000/auth/github to authenticate to the blockchain and it did not work out as well.
I have a few questions,
Is it feasible to call the secured hyperledger Rest API's from another web application?
If Yes, how to do it? I don't find that information in the hyperledger composer documentation.
Have been trying this for a week now and have no answers. Any help would be greatly appreciated.
Please let me know if anything is unclear. Thanks.
mahoney1 (Fri, 18 Aug 2017 13:01:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ETqw3rPst2diwuJqn) @DushyantBhalgami you don't use composer apis to get a list of blocks - you need Fabric for that. This can help you -> https://github.com/hyperledger/fabric-sdk-rest - some parts are work in progress. But the salient point is the chaincode ID is the business network ID where deployed Composer business networks are concerned. eg. ```$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9982c1c7e84b dev-peer0.org1.example.com-vehicle-lifecycle-network-0.11.3 "chaincode -peer.a.```
DushyantBhalgami (Fri, 18 Aug 2017 13:51:41 GMT):
@mahoney1 Thanks. Also can you tell me how to connect composer with Fabric 0.6 running in IBM Bluemix ?
uber.twin (Fri, 18 Aug 2017 13:54:24 GMT):
@mahoney1 hi, the REST GUI section exemplifying the posting of a transaction, suggest an instance which specifies the "transactionId" and the "timestamp" fields as below
```
"transactionId": "string",
"timestamp": "2017-08-18T13:40:30.549Z"
```
but I guess those fields will be ignored at processing time, isn't it?
mahoney1 (Fri, 18 Aug 2017 14:43:33 GMT):
@levinkwong would've thought it looked somethng like this (you can experment) ```/**
* Sample business network definition.
*/
namespace org.acme.sample
asset Object identified by id {
o String id
o Animal animal
}
abstract concept Animal {
o String animalType
}
concept Cat extends Animal {
o String catType
}
concept Dog extends Animal {
o String dogType
}
abstract transaction AnimalMovement {
o String[] logs optional
--> Object animal
}
/**
* A transaction type for an animal movement - for example
*/
transaction AnimalMovementType extends AnimalMovement {
o String Direction
}
in your script file, assuming you had set up a Transaction 'movementType' below etc etc
/**
*
* @param {com.biz.AnimalMovementType} movementType
* @transaction
*/
function onAnimalMovementType(movementType) {
console.log('onAnimalMovementType');
if (movementType.animal.animalType == 'CAT') {
console.log('Animal is a CAT');
}
// blah blah (getAssetRegistry(), or set up catType etc etc)
if (cat.catType == 'Persian') {
console.log('Cat is a Persian');
}``` The Bond and PII sample networks use Concepts in both scripts https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/lib/logic.js and in tests FYI )
mahoney1 (Fri, 18 Aug 2017 14:45:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=f9ZrM3ifDNHPYdQp5) @DushyantBhalgami similar to this. https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service - however, do note the use of Hyperleger Fabric 0.6 is now deprecated in Composer, we will be working to remove all code support for Hyperledger Fabric 0.6 within Composer
dazzaji (Fri, 18 Aug 2017 14:48:09 GMT):
Has joined the channel.
mahoney1 (Fri, 18 Aug 2017 14:59:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7bygW3m7e22NtHF9R) @uber.twin yes exactly. Composer updates the transactionId / timestamp itself as its generated,this is a Loopback -> Swagger conversion issue as it should not appear (for example) in a /POST REST operation - captured here https://github.com/strongloop/loopback/issues/3447
davidkel (Fri, 18 Aug 2017 15:22:50 GMT):
@levinkwong Can you provide a bit more detail of the problem you are getting ? Is this coming out in the chaincode logs ? The console error from duktape we don't believe to be a problem just an annoyance. You can turn on chaincode logging using the `composer network loglevel` command documented here
https://hyperledger.github.io/composer/reference/composer.network.logLevel.html
mahoney1 (Fri, 18 Aug 2017 15:24:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tNiREc6mZC6G7WeXp) @razik29 because the REST server is on a different port number to your web application, you need to specify an additional option to your HTTP client - to pass the cookies to the REST server. Using the Angular HTTP client, you add the withCredentials flag, for example:
this.http.get('http://localhost:3000/api/MyAsset', { withCredentials: true })
mahoney1 (Fri, 18 Aug 2017 15:33:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=obrhpeKRxu9Cgo6Gn) @arnabsutar Where we can find the generated chaincode for .bna files (if they actually generate)?
Some queries:
1. Can we extend our composer network with multiple peers? YES
2. Is it possible to create private channel between two participants? YES. A Composer connection profile defines the channel name to connect to, so you can create one connection profile for the channel.
3. Can composer created network work with multiple organization? YES - See here for how to build such a network (ie a Fabric network). The composer network is the business network or business networks deployed on top of the Fabric being maintained by multiple organisations (eg, each with their own CA, network infrastructure, peers etc etc)
mahoney1 (Fri, 18 Aug 2017 15:33:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=obrhpeKRxu9Cgo6Gn) @arnabsutar Where we can find the generated chaincode for .bna files (if they actually generate)?
Some queries:
1. Can we extend our composer network with multiple peers? YES
2. Is it possible to create private channel between two participants? YES. A Composer connection profile defines the channel name to connect to, and obviously the connection profile describes the connectoin information for the running Fabric network it intends to connect to)
3. Can composer created network work with multiple organization? YES - See here for how to build such a network (ie a Fabric network). The composer network is the business network or business networks deployed on top of the Fabric being maintained by multiple organisations (eg, each with their own CA, network infrastructure, peers etc etc)
deepakvparmar (Sun, 20 Aug 2017 05:43:52 GMT):
what is fullform of .cto extension?
sstone1 (Sun, 20 Aug 2017 10:54:56 GMT):
@deepakvparmar it doesn't really have a full form, it's the extension that we use for the Composer model files. Originally (nearly a year ago now!) the project was called Concerto, and we used that name to pick the .cto extension. But it doesn't really mean anything today.
ivaylopivanov (Sun, 20 Aug 2017 14:01:08 GMT):
Hello, I followed the docs and deployed locally a new network with REST API. I tried to add a new org to that example, generated new keys etc, but I get the following error ```Error: Error trying deploy. Error: Error trying install chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
``` There is a PeerAdmin file that contains the identity of the user. I found the private key for the newly generated user, but my question is how can I obtain the cert and the public key so I can update the PeerAdmin file for thew new user.
ivaylopivanov (Sun, 20 Aug 2017 14:06:24 GMT):
the error occurs once I try to deploy the updated network
levinkwong (Sun, 20 Aug 2017 16:45:54 GMT):
@mahoney1
Thanks, this is exactly what I am doing, but in my opinion, composer should either support full polymorphism or not support it at all. But still, thank you very much for answering my questio.
levinkwong (Sun, 20 Aug 2017 16:54:20 GMT):
@davidkel
My log level is already debug.
And the case is, every single bug of my code, e.g. accessing undefined variable, using wrong variable name, forgot to define variable and all kinds of newbie javascript errors, they all show as duktape error.
adrianblakey (Sun, 20 Aug 2017 19:40:23 GMT):
Is there a reason the model semantics are so constrained? I'd really like to be able to represent not only 1:1 and 1:N relationships but also 0:1 and 0:N (I know from my code that 0:1 does not work - I am assuming 0:N does not either). It would also be some much more useful if the relationships were bi-directional - it would save a lot of work. Without richer semantics it does not seem possible to reference assets from participants - only participants from assets. Is that correct?
adrianblakey (Sun, 20 Aug 2017 19:41:25 GMT):
Also, I'd really like the convenience of an identifier generator - a bit like an Oracle sequence. None of the examples really shows how to do this.
adrianblakey (Sun, 20 Aug 2017 19:43:14 GMT):
Also, as a (quickly learning) js programmer - some sort of explanation/links to "Promises" might be really useful. Once I figured these out it started to make sense.
adrianblakey (Sun, 20 Aug 2017 19:44:48 GMT):
Also, please please pretty please could someone provide a short how to debug transactions in the playground?
Hefziben (Sun, 20 Aug 2017 21:42:43 GMT):
Hello Team, I am trying to implement a transaction to place an order as the one you have on the vehicle- lifecycle-network however it is not working. I am able to submit the orderr; however when I try to update the status, I get an error saying that the order is not part of the collection ID; however, it works if I can create it with the add asset process. the same happen when testin the vehicle- lifecycle-network in the online playground. please advise.
adrianblakey (Mon, 21 Aug 2017 01:01:00 GMT):
I mostly figured out how to debug transactions in the browser/playground. Firefox is much stricter about js typos - like a missing ';' than Chrome and gives an error on deployment that Firefox doesn't. I am starting to realize that the model semantics are designed to support transaction semantics i.e. you can't reference something until it's in the ledger.
DannyWong (Mon, 21 Aug 2017 01:56:17 GMT):
https://github.com/hyperledger/composer/issues/1640 Any idea who in the community is follow-up this?
DannyWong (Mon, 21 Aug 2017 01:56:33 GMT):
even single column sorting does not work for me.
DannyWong (Mon, 21 Aug 2017 01:56:43 GMT):
right now, i am implementing sorting in middleware..
wy (Mon, 21 Aug 2017 02:21:49 GMT):
hi guys, for the connection profiles there is a field `"keyValStore": "/home/.composer-credentials"`
wy (Mon, 21 Aug 2017 02:22:21 GMT):
what am i supposed to put there? the keys for the peer node? orderer? or ca?
wy (Mon, 21 Aug 2017 02:22:53 GMT):
@here
dave.enyeart (Mon, 21 Aug 2017 02:24:16 GMT):
@wy Please don't spam all 700+ members with at-here. at-here is reserved for channel announcements.
DannyWong (Mon, 21 Aug 2017 02:26:53 GMT):
in composer, how do it specify the endorsement policy of chaincode... (as the js tx processor is running in duktape vm spawned by the composer go-lang system chaincode)
jeffgarratt (Mon, 21 Aug 2017 02:32:21 GMT):
@wy I believe that will be populated as you register users
wy (Mon, 21 Aug 2017 02:49:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6z9bMhmGTCLbaXztD) @jeffgarratt i have set up a fabric network with multiple nodes and channels and i would like to create a connection profile for each channel
jeffgarratt (Mon, 21 Aug 2017 02:50:44 GMT):
@wy each connection profile can have it's own keyValStore value
wy (Mon, 21 Aug 2017 02:57:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PEW3zstxy6dQdH9qs) @jeffgarratt i understand there, but what should be in the keyvalstore though? credentials for the user?
wy (Mon, 21 Aug 2017 03:01:54 GMT):
im getting `IllegalModelException: Transaction should not specify an identifying field.` when running `composer archive create`
wy (Mon, 21 Aug 2017 03:02:03 GMT):
does anyone know what is wrong?
DannyWong (Mon, 21 Aug 2017 03:20:48 GMT):
remove "identified by xxxid" from the transaction definition in CTO file
DannyWong (Mon, 21 Aug 2017 03:21:06 GMT):
it is quite self expressing...
Rick (Mon, 21 Aug 2017 03:33:54 GMT):
Has joined the channel.
adrianblakey (Mon, 21 Aug 2017 04:22:36 GMT):
Is the right way to express a 0:N relationship, to create a subclass of the asset containing the relationship and then either new the base class or its subclass depending upon whether the data contains a relationship?
levinkwong (Mon, 21 Aug 2017 04:42:03 GMT):
Does anyone know why I get the following error?
```
TypeError: connection.getBusinessNetwork(...).buildQuery is not a function
```
I make build the query according to https://hyperledger.github.io/composer/jsdoc/module-composer-client.BusinessNetworkConnection.html#buildQuery__anchor
coder-ajay (Mon, 21 Aug 2017 05:58:22 GMT):
Hi.. The ` /system/transactions ` REST API gives details of changes in terms of ‘added’ or ‘updated’ It does not show what parameter was changed. E.g. for car asset:
```
asset car identified by carNumber{
o String carNumber
o String color
o String owner
}
```
` /system/transactions ` will show as ‘updated’ for both color and owner change, but not as ‘color updated’ or ‘owner updated’. I assume that this needs to be developed separately under current composer structure. What I want to know is, will the Historian API (whenever released in future) have such granular details of the changes? Basically, is it worth to invest time in developing something thats already planned with composer team?
coder-ajay (Mon, 21 Aug 2017 05:58:22 GMT):
Hi.. The ` /system/transactions ` REST API gives details of changes in terms of ‘added’ or ‘updated’ It does not show what parameter was changed. E.g. for car asset:
```
asset car identified by carNumber{
o String carNumber
o String color
o String owner
}
```
` /system/transactions ` will show as ‘updated’ for both color and owner change, but not as ‘color updated’ or ‘owner updated’. I assume that this needs to be developed separately under current composer structure. What I want to know is, will the Historian REST API (whenever released in future) have such granular details of the changes?
sstone1 (Mon, 21 Aug 2017 07:10:55 GMT):
@adrianblakey you can have optional properties, including optional relationships: `--> SampleAsset asset optional`
sstone1 (Mon, 21 Aug 2017 07:12:05 GMT):
@levinkwong as per that example code, `buildQuery` is a method on the `BusinessNetworkConnection` class - not sure where you got the `getBusinessNetwork` from?
rohitaneja8 (Mon, 21 Aug 2017 07:14:56 GMT):
I have created Business Network, and played around on HL-Composer Playground, now i need to create something, where i can play with chaincodes, deploy my chaincodes, Query on blocks etc, how do i proceed? Where do we actually write chaincodes in BNA?
sstone1 (Mon, 21 Aug 2017 07:15:26 GMT):
you don't need to do anything with chaincodes
sstone1 (Mon, 21 Aug 2017 07:15:37 GMT):
you deploy the BNA to a Blockchain platform, e.g. Hyperledger Fabric
sstone1 (Mon, 21 Aug 2017 07:15:44 GMT):
it then becomes a running Blockchain business network
sstone1 (Mon, 21 Aug 2017 07:16:03 GMT):
you can then interact with that running Blockchain business network using APIs
levinkwong (Mon, 21 Aug 2017 07:16:29 GMT):
@sstone1 Seems I have mix up BusinessNetworkConnection and BusinessNetworkDefinition, I will check again
rohitaneja8 (Mon, 21 Aug 2017 07:16:49 GMT):
Right, now suppose i am using supplier-commodity scenario, now i need to write chaincode/ or logic where on every commodity supplied by supplier, if it is defective, raise a violation
rohitaneja8 (Mon, 21 Aug 2017 07:17:17 GMT):
how do i arrive at this functionality in BNA?
rohitaneja8 (Mon, 21 Aug 2017 07:17:29 GMT):
can i use logic.js for this?
sstone1 (Mon, 21 Aug 2017 07:17:49 GMT):
yes - you would write that logic as JavaScript transaction processor functions in Composer
sstone1 (Mon, 21 Aug 2017 07:18:11 GMT):
that logic then gets executed on the Blockchain when you deploy the BNA and submit transactions to the deployed Blockchain business network
sstone1 (Mon, 21 Aug 2017 07:19:34 GMT):
@coder-ajay correct, in future the historian will show the changes to assets that occur as part of an update operation - that work is separate from the work to add the historian to the REST API though.
suvpatil (Mon, 21 Aug 2017 07:30:30 GMT):
Hi ..... I am getting error while composer runtime install command -> composer runtime install -n basic-sample-network -p hlfv1 -i PeerAdmin -s adminp and result is -> Error: Error trying login and get user Context. TypeError: Cannot read property '_key' of null
Command failed
rohitaneja8 (Mon, 21 Aug 2017 07:31:00 GMT):
What would you recommend for productive and wide scenario of network having complex chaincodes and smart contracs >
1. Peers, ordered, chaincode custom made deployed to network and exposed to REST using loopback
2. Network made using Hyperledger-Composer, deployed on Fabric and Smart Contract/Logic written in BNA to expose REST for Web APP?
sstone1 (Mon, 21 Aug 2017 07:37:50 GMT):
@rohitaneja8 you're asking whether you should write Fabric chaincode or Composer business network definitions?
sstone1 (Mon, 21 Aug 2017 07:39:42 GMT):
Composer is designed to make the solution development process much faster; because it has a higher level of abstraction than Fabric, it is much quicker to map your use case to running code. Composer also includes a REST server (powered by LoopBack), an application generator (Yeoman), and integration capabilities (Node-RED) to help speed up development of applications.
sstone1 (Mon, 21 Aug 2017 07:41:10 GMT):
There are some chaincode APIs that Composer doesn't expose yet, such as the ability to call one chaincode from another - that is coming in Composer as part of a new "links" feature, which is being developed at the moment.
rohitaneja8 (Mon, 21 Aug 2017 07:51:31 GMT):
Thanks @sstone1 for comprehensive and clear discussion on it. ! Appreciate !
rohitaneja8 (Mon, 21 Aug 2017 07:52:29 GMT):
But as i see, it always runs with 1 peer, 1 ordered and a very simple scenario. Complex is also possible right?
mahoney1 (Mon, 21 Aug 2017 07:54:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nwTp4h2NKh3pgkSKF) @ivaylopivanov It looks like the certificates being created by your CA (ie being signed by your CA authority) that your peer(s) don't know about. If you're using the Composer dev setup, try running `./createComposerProfile.sh` use `composer identity import` to import your Peer identity into the KeyValStore (defined in connection.json in the .composer-connection-profiles in your $HOME dir)
mahoney1 (Mon, 21 Aug 2017 07:54:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nwTp4h2NKh3pgkSKF) @ivaylopivanov It looks like the certificates being created by your CA (ie being signed by your CA authority) that your peer(s) don't know about - not sure if you've added peers when you say add a new org. If you have, you'll need to install a composer runtime `composer runtime install -n my-network -p hlfv1 -i PeerAdmin -s randomstring` and then `composer network start -a mynetwork.bna -p hlfv1 -i PeerAdmin -s randomstring` - Otherwise, if you're using the Composer dev setup, try running `./createComposerProfile.sh` use `composer identity import` to import your Peer identity into the KeyValStore (defined in connection.json in the .composer-connection-profiles in your $HOME dir)
wy (Mon, 21 Aug 2017 09:18:15 GMT):
hi, is there an easier way to create the files used for the `keyValStore` folder for connections.json? these are not created by cryptogen and i have to manually change the files
wy (Mon, 21 Aug 2017 09:18:15 GMT):
hi, is there an easier way to create the files used for the `keyValStore` folder for connections.json? these are not created by cryptogen and i have to manually change the files (including creating the public key)
mahoney1 (Mon, 21 Aug 2017 09:24:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aZf8PoYtXJzjKrQRT) @suvpatil as mentioned, without seeing your connection profile, and you verifying that your added peer resolves correctly by name, difficult to see what your problem is. The sample Composer dev network that we discussed previously is set up using this Docker compose file https://github.com/hyperledger/composer-tools/blob/master/packages/fabric-dev-servers/fabric-scripts/hlfv1/composer/docker-compose.yml
DushyantBhalgami (Mon, 21 Aug 2017 09:38:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wwkmjxiH5HYjq7me6) @mahoney1 Can you point me to any example where Application has been implemented using Fabric Composer along with the access the Blocks of chainblock?
I'm not sure how to use fabric-sdk-rest for locally deployed hlfv1...
shidosan (Mon, 21 Aug 2017 09:40:47 GMT):
hi, all! I am getting `ReferenceError: module is not defined` in my tests in following code:
```
return businessNetworkConnection.issueIdentity(bank.getFullyQualifiedIdentifier(), bank.$identifier)
.then((identity) => {
console.log(identity);
bankIdentity = identity;
});
```
shidosan (Mon, 21 Aug 2017 09:40:47 GMT):
hi, all! I am getting `ReferenceError: module is not defined` in my tests in following code:
```
return businessNetworkConnection.issueIdentity(bank.getFullyQualifiedIdentifier(), bank.$identifier)
.then((identity) => {
console.log(identity);
bankIdentity = identity;
});
```
Initially composer packages' version specified in package.json was ^0.9.0 (installed 0.9.2). The test runs ok with that version. But when I change it to 0.11.3 it fails with this error. Did anybody encounter the same?
mahoney1 (Mon, 21 Aug 2017 09:42:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vyAKNJaW6tYRzW8LX) @wy have you considered openssl, ? See here also https://media.readthedocs.org/pdf/fabric-rtd/latest/fabric-rtd.pdf ...MSP configuration bit onwards p65
wy (Mon, 21 Aug 2017 09:43:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5rPig9BuAko5NASQa) @mahoney1 i did use openssl to generate the public key
wy (Mon, 21 Aug 2017 09:44:12 GMT):
but its so hard to manage when you have multiple channels which needs multiple connection profiles
wy (Mon, 21 Aug 2017 09:47:25 GMT):
i will eventually need to create more than 20 channels
sstone1 (Mon, 21 Aug 2017 09:56:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=j9tdAZwvRm59jAoWz) @rohitaneja8 correct, you can use Composer with any configuration of peers/organisations. However, Composer is not a tool for configuring or managing the underlying Fabric - we provide a basic, sample configuration to get going with - but you are still responsible for learning Fabric and building a configuration that meets your needs.
mahoney1 (Mon, 21 Aug 2017 09:56:44 GMT):
@wy - https://hyperledger.github.io/composer/reference/composer.identity.import.html is what Composer uses to import the files into KeyValStore - fyi this SO shows an extraction process in the first place captured in a YAML file for example https://stackoverflow.com/questions/44492228/hyperledger-composer-with-hlf-1-0-how-to-setup-credentials-for-network-deployme
mahoney1 (Mon, 21 Aug 2017 09:56:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wbXJJMj4jow92EwK7) @shidosan what is the output of `npm list -g --depth=0` and `docker ps -a` please
shidosan (Mon, 21 Aug 2017 10:28:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wnHRsjXR3R2pyGjuY) @mahoney1 I've figured it out. Apparently, I've put a file in `lib` with nodejs `module.exports` and used it in test files. Forgot that `lib` is included in browser runtime. That was giving me a trouble running tests. Thank you!
mahoney1 (Mon, 21 Aug 2017 10:40:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EMRXemRRn8i5pX4qd) @DannyWong on this issue - have no more news on the CouchDB support front (obviously Composer relies on that I read this at issue https://github.com/pouchdb/pouchdb/issues/6359 when the question about CouchDB support was asked (I know it says PouchDB here). - see response at the end.
mahoney1 (Mon, 21 Aug 2017 10:40:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EMRXemRRn8i5pX4qd) @DannyWong on this issue - have no more news on the CouchDB support front (obviously Composer relies on that) - I read this at issue https://github.com/pouchdb/pouchdb/issues/6359 when the question about CouchDB support was asked (I know it says PouchDB here). - see response at the end.
mahoney1 (Mon, 21 Aug 2017 10:41:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dTKSDvzKxKpfnf6vr) @shidosan cool, glad you spotted it.
DannyWong (Mon, 21 Aug 2017 10:45:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zeu2nEReMHHM74FYv) @mahoney1 Understood the mix sort has issue (and acceptable), but even defining the sort in single column also does not work
mahoney1 (Mon, 21 Aug 2017 11:12:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tYE5cxypysus9qEu7) @DushyantBhalgami this sample app shows Blocks being added, to the runtime Fabric, as Composer assets are generated/updated by participants on the network https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-lifecycle ....Composer's Historian Feature will provide the historical transactions created (eg for an asset) and will show the input to the transaction in question for each historical transaction. As mentioned, if you do insist on accessing Blocks, you should use the method I sent you.
uber.twin (Mon, 21 Aug 2017 11:33:47 GMT):
@mahoney1 hi, is it possible, in chaincode, to initiate a new independent transaction from within a parent transaction, by explicitly calling a function annotated as below?
```
@param {my.Tran} myTran
@transaction
```
uber.twin (Mon, 21 Aug 2017 11:33:47 GMT):
@mahoney1 hi, is it possible, in chaincode, to initiate a new independent transaction from within a parent transaction, by explicitly calling a function annotated as below?
```
@param {my.Tran} myTran
@transaction
```
uber.twin (Mon, 21 Aug 2017 11:33:47 GMT):
@mahoney1 hi, is it possible, in chaincode, to initiate a new independent transaction from within a parent transaction, by explicitly calling a function annotated as below?
```
@param {my.Tran} myTran
@transaction
also, as an alternative, is it possible for a client which needs to submit multiple transaction in a batch, to get a chaincode runtime lock and such be sure there are no other client's transactions possibly geting mixed with its own?
uber.twin (Mon, 21 Aug 2017 11:33:47 GMT):
@mahoney1 hi, is it possible, in chaincode, to initiate a new independent transaction from within a parent transaction, by explicitly calling a function annotated as below?
```
@param {my.Tran} myTran
@transaction```
also, as an alternative, is it possible for a client which needs to submit multiple transaction in a batch, to get a chaincode runtime lock and such be sure there are no other client's transactions possibly geting mixed with its own?
mahoney1 (Mon, 21 Aug 2017 11:44:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WbuQmsNZJGgBjE6za) @DannyWong ok (not a Couch expert) I assume you've indexed your sort field? Have you tried using a JSON index instead of the text index? questions, questions. ```db.createIndex({#
index: {
fields: ['age']
}
});``` what error do you get for single column?
DannyWong (Mon, 21 Aug 2017 11:45:01 GMT):
shit, i did not create
DannyWong (Mon, 21 Aug 2017 11:45:03 GMT):
sorry
DannyWong (Mon, 21 Aug 2017 11:45:08 GMT):
thanks for helping
mahoney1 (Mon, 21 Aug 2017 12:09:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tysKmDqJK3EMnpbJq) @uber.twin So, no is the short of it. We don't have any way to "submit" another transaction , not using the language semantics you gave as an example. However in the grander scheme,. it's something we're interested in. As you know, transaction processor functions can call other transaction processor functions today. we are interested in transactions being able to trigger other transactions - possibly via the use of Composer events
Of course, Fabric allows us to do that today, but - within the scope of a single Fabric transaction.
rohitaneja8 (Mon, 21 Aug 2017 12:11:01 GMT):
composer-rest-service generates some set of rest services for each participant type, asset system and say trade, can it also generate some custom REST api's say, a rest service to record a sensor data in database, or say fetch all blocks/ particular block... etc.
rohitaneja8 (Mon, 21 Aug 2017 12:11:01 GMT):
composer-rest-service generates some set of rest services for each participant type, asset system and transaction, can it also generate some custom REST api's say, a rest service to record a sensor data in database, or say fetch all blocks/ particular block... etc.
mahoney1 (Mon, 21 Aug 2017 12:17:05 GMT):
@uber.twin on the second part of your question: I'm not sure this is the function of a blockchain (or how its meant blockchain operate, as a ledger) - - usually this something the orderer takes care of .... On the client side, any locking of source transaction input is surely an application responsibility...setting up a property/field for 'LOCK' /UNLOCK might be a way to deal with that 'lock' status. ie such that its LOCKED till the transaction is committed (verified batch of transactions) then UNLOCK with another transaction...Perhaps you can use Events to control that (got something back from the runtime blockchain)
sstone1 (Mon, 21 Aug 2017 12:18:52 GMT):
@rohitaneja8 the composer-rest-server is a standard LoopBack application that uses the Composer LoopBack connector to connect to the Blockchain business network. you can copy that LoopBack application and modify it to do whatever you want (including adding other data sources), but you will have to keep it inline with the "official" Composer version.
benjaminverhaegen (Mon, 21 Aug 2017 12:32:27 GMT):
Hello, i'm trying to change a property from a participant but when i execute the code, it stays the same all the time. Somebody who could help? this is the code:
benjaminverhaegen (Mon, 21 Aug 2017 12:33:16 GMT):
"/**
* Make an lid for a potlisting
* @param {org.acme.mynetwork.MaakLid} lid - het lid
* @transaction
*/
function MaakLid(lid) {
var listing = lid.listing;
var persoon = lid.persoon;
if (listing.leden == null) {
listing.leden = [];
}
//Boolean "goedgekeurd" should change to true
if(persoon.goedgekeurd == false){
persoon.goedgekeurd = true;
}
//name of person should change to this
persoon.firstName == 'TestNameChanged';
listing.leden.push(lid);
return getParticipantRegistry('org.acme.mynetwork.Lid')
.then(function(lidRegistry){
/*if(lid.persoon.goedgekeurd == false){
lid.persoon.goedgekeurd == true;
}
lid.persoon.firstName = "Franky";*/
return lidRegistry.update(persoon);
})
.then(function(){
return getAssetRegistry('org.acme.mynetwork.PotListing');
})
.then(function( potListingRegistry){
return potListingRegistry.update(listing);
});
}"
smhi (Mon, 21 Aug 2017 12:58:21 GMT):
Has joined the channel.
uber.twin (Mon, 21 Aug 2017 12:59:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pL7L9doSeRuzqDwh8) @mahoney1 Thank you for your considerations. I am interested in a scenario where the current message(transaction) may have credited some account which already has a debiting pending payment, instructed by a previous message, no processed at the time because of insufficient funds. Now it'll be its time to be processed, not another's competing payment possibly being instructed by a subsequent message(transaction) sent by another client.
As far as I understand, currently, those pending payments can be reconsider for processing only in the context of the current transaction, right?
uber.twin (Mon, 21 Aug 2017 12:59:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pL7L9doSeRuzqDwh8) @mahoney1 Thank you for your considerations. I am interested in a scenario where the current message(transaction) may have credited some account which already has a debiting pending payment, instructed by a previous message, no processed at the time because of insufficient funds. Now it'll be its time to be processed, not another's competing payment possibly being instructed by a subsequent message(transaction) sent by another client.
As far as I understand, currently, those pending payments can be reconsidered for processing only in the context of the current transaction, right?
uber.twin (Mon, 21 Aug 2017 12:59:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pL7L9doSeRuzqDwh8) @mahoney1 Thank you for your considerations. I am interested in a scenario where the current message(transaction) may have credited some account which already has a debiting pending payment, instructed by a previous message, not processed at the time because of insufficient funds. Now it'll be its time to be processed, not another's competing payment possibly being instructed by a subsequent message(transaction) sent by another client.
As far as I understand, currently, those pending payments can be reconsidered for processing only in the context of the current transaction, right?
uber.twin (Mon, 21 Aug 2017 12:59:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pL7L9doSeRuzqDwh8) @mahoney1 Thank you for your considerations. I am interested in a scenario where the current message(transaction) may have credited some account which already has an associated pending debiting payment, instructed by a previous message, stored as such in the registry but not processed at the time because of insufficient funds. Now it'll be its time to be processed, not another's competing payment possibly being instructed by a subsequent message(transaction) sent by another client.
As far as I understand, currently, those pending payments can be reconsidered for processing only in the context of the current transaction, right?
uber.twin (Mon, 21 Aug 2017 12:59:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pL7L9doSeRuzqDwh8) @mahoney1 Thank you for your considerations. I am interested in a scenario where the current message(transaction) may have credited some account which already has an associated pending debiting payment, instructed by a previous message, stored as such in the registry but not processed at the time because of insufficient funds. Now it'll be its time to be processed, not another's competing payment possibly being instructed by a subsequent message(transaction) sent by another client.
As far as I understand, currently, those pending payments can be reconsidered for processing only in the context of the current transaction, if the precedence is to be enforced, right?
MKabanau (Mon, 21 Aug 2017 13:19:29 GMT):
Has joined the channel.
Hefziben (Mon, 21 Aug 2017 13:33:05 GMT):
Hello Guys, can you help me with this? I am trying to implement a transaction to place an order as the one you have on the vehicle- lifecycle-network however it is not working. I am able to submit the orderr; however when I try to update the status, I get an error saying that the order is not part of the collection ID; however, it works if I can create it with the add asset process. the same happen when testin the vehicle- lifecycle-network in the online playground. please advise.
coder-ajay (Mon, 21 Aug 2017 13:37:33 GMT):
Hi ... I get below error when i try to create the archive file using ` composer archive create... `. The only change I did in the existing .cto file was to comment an asset variable which is no longer required. Earlier it was working fine working fine.
```
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /Users/admin/
benjaminverhaegen (Mon, 21 Aug 2017 14:13:58 GMT):
How to change a value of boolean in js?
mahoney1 (Mon, 21 Aug 2017 14:18:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YbZ2SnMrwH98pBYkJ) @benjaminverhaegen is it `persoon.firstName = 'TestNameChanged';;` assignment vs relational..and obviously second assignment is commented out...etc.
mahoney1 (Mon, 21 Aug 2017 14:18:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YbZ2SnMrwH98pBYkJ) @benjaminverhaegen is it `persoon.firstName = 'TestNameChanged';` assignment vs relational..and obviously second assignment is commented out...etc.
benjaminverhaegen (Mon, 21 Aug 2017 14:21:21 GMT):
@mahoney1 i have a person boolean i have to change to another value, but when i execute it nothing happens. i can show you my current code in pm?
mahoney1 (Mon, 21 Aug 2017 14:21:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oacxmoQTmMWkXXhdw) @benjaminverhaegen ? you mean negation `x = !x` as defining is 'Boolean' is true or false ?
mahoney1 (Mon, 21 Aug 2017 14:21:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oacxmoQTmMWkXXhdw) @benjaminverhaegen ? did you mean negation `x = !x` as defining is 'Boolean' is a [ simple case of ] true or false ?
mna2016 (Mon, 21 Aug 2017 14:22:32 GMT):
Hi Team, Would you also answer questions related to deploying a blockchain inside of "IBM Container Service"?
benjaminverhaegen (Mon, 21 Aug 2017 14:24:30 GMT):
@mahoney1 this is the latest code i have: /**
* Make an lid for a potlisting
* @param {org.acme.mynetwork.MaakLid} lid - het lid
* @transaction
*/
function MaakLid(lid) {
var listing = lid.listing;
var persoon = lid.persoon;
if (listing.leden == null) {
listing.leden = [];
}
if(persoon.goedgekeurd == true){
listing.leden.push(lid);
return getAssetRegistry('org.acme.mynetwork.PotListing')
.then(function( potListingRegistry){
return potListingRegistry.update(listing);
});
} else{
console.log('Sorry persoon is nog niet goedgekeurd');
}
}
/**
* Keur persoon goed
* @param {org.acme.mynetwork.KeurGoed} persoon - De persoon
* @transaction
*/
function keurGoed(persoon){
var persoon = persoon.persoon;
if(persoon.goedgekeurd != true){
persoon.goedgekeurd
console.log(persoon.goedgekeurd);
}else{
console.log('al goedgekeurd');
}
return getParticipantRegistry('org.acme.mynetwork.Lid')
.then(function (lidRegistry){
//var factory = getFactory();
return lidRegistry.update(persoon);
})
.catch(function (error){
console.log('something went wrong at function: keurGoed()');
});
}
benjaminverhaegen (Mon, 21 Aug 2017 14:25:36 GMT):
@mahoney1 problem is when running my test with "npm test" the value of the boolean "persoon.goedgekeurd" never changes..
mahoney1 (Mon, 21 Aug 2017 14:57:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=b28dZc4ZvXXZo6ZXr) @benjaminverhaegen is it because you need to use the assignment operator ? ? persoon.goedgekeurd - is it defined as Boolean in your model? Check otu Developer tutorial trade network 'Write Unit Test -> https://hyperledger.github.io/composer/unstable/tutorials/developer-guide.html or the source test script - https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/test/trading.js
mahoney1 (Mon, 21 Aug 2017 15:01:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nMcwMuYnhpgNkEWrW) @mna2016 sorry this Channel is for Hyperledger Composer - for support with your environment you should go to this page https://console.bluemix.net/containers-kubernetes/launch?env_id=ibm:yp:eu-gb and also review troubleshooter section the https://console.bluemix.net/docs/containers/cs_troubleshoot.html#cs_troubleshoot - seems they're using Stack overflow http://stackoverflow.com/search?q=bluemix+containers. If your question is related to Composer then obviously you can post here or raise a ticket on Stack Overflow (eg. your setup posted).
coder-ajay (Mon, 21 Aug 2017 15:39:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vcXRBp2dBQ36og9kW) @coder-ajay : Anyone? (btw i reverted back the change but error remains).
mahoney1 (Mon, 21 Aug 2017 15:51:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vcXRBp2dBQ36og9kW) @coder-ajay are you running into this issue -> https://github.com/hyperledger/composer/issues/1372 - check your logic.js
coder-ajay (Mon, 21 Aug 2017 16:21:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ky7iRdFfJqXqatsaq) @mahoney1 : Yes, the fat arrow operator in the historian methods was the issue. Thanks.
ivaylopivanov (Mon, 21 Aug 2017 18:59:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=67ktduGLaoDFFtyw4) @mahoney1 thank you for your answer. when I run`./createComposerProfile.sh` the signingIdentity is updated but the `certificate` remains the same. Now when I try to deploy the network I get `Error: Error trying login and get user Context. TypeError: Cannot read property '_key' of null`
ivaylopivanov (Mon, 21 Aug 2017 18:59:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=67ktduGLaoDFFtyw4) @mahoney1 thank you for your answer. when I run`./createComposerProfile.sh` the signingIdentity is updated but the `certificate` remains the same in the `PeerAdmin` file. Now when I try to deploy the network I get `Error: Error trying login and get user Context. TypeError: Cannot read property '_key' of null`
adrianblakey (Mon, 21 Aug 2017 22:16:40 GMT):
@sstone1 TY
rohitaneja8 (Tue, 22 Aug 2017 04:39:23 GMT):
As composer works on couchDB at present, can i use another database like GraphDB or DynamoDB with it? is it suitable, or recommended ?
sstone1 (Tue, 22 Aug 2017 07:18:42 GMT):
@rohtianeja8 we can only use the databases supported by the underlying Hyperledger Fabric, and they currently support CouchDB or LevelDB
sai_ganesh (Tue, 22 Aug 2017 08:34:45 GMT):
Message Attachments
mahoney1 (Tue, 22 Aug 2017 09:08:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ai6ze6SnyeXgbeh4D) @sai_ganesh connect failed: did you run createComposerProfile.sh to create a connection profile? Otherwise if so, suggest to do a `docker ps -a` and check your runtime Fabric is up and running
mahoney1 (Tue, 22 Aug 2017 09:13:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RBD6CFXWE39Wv2xrT) @ivaylopivanov can you post what's in your permissions.acl please ?
mahoney1 (Tue, 22 Aug 2017 09:13:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RBD6CFXWE39Wv2xrT) @ivaylopivanov can you post what's in your permissions.acl please ? (The certificates will remain the same, as it copies the source crypto material from the same source (creds) - just FYI)
sai_ganesh (Tue, 22 Aug 2017 09:14:27 GMT):
@mahoney1 . Thankyou. I missed it! That worked
vishwasrao (Tue, 22 Aug 2017 09:44:18 GMT):
Hello All,
I am trying with Composer Playground... I put some console.log() statements insde transaction function
vishwasrao (Tue, 22 Aug 2017 09:44:28 GMT):
where can i see those logs ?
uber.twin (Tue, 22 Aug 2017 10:20:16 GMT):
@mahoney1 hi, a reference type attribute(introduced by -->) can't be navigated when writing the where clause of a query, right?
mahoney1 (Tue, 22 Aug 2017 10:38:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8bwHH8wBswjQhWJ4o) @uber.twin not navigated, correct - presently you have to specify a fully-qualified relationship parameter (string !) - as in "resource:net.biz.digitalpropertynetwork.TitleIDr#FRE1122334455" - but this navigation or expansion to regex or otherwise is tagged as enhancement here -> https://github.com/hyperledger/composer/issues/1622 for future ref.
mahoney1 (Tue, 22 Aug 2017 10:38:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8bwHH8wBswjQhWJ4o) @uber.twin not navigated, correct - presently you have to specify a fully-qualified relationship parameter (string !) - as in "resource:net.biz.digitalpropertynetwork.TitleID#FRE1122334455" - but this navigation or expansion to regex or otherwise is tagged as enhancement here -> https://github.com/hyperledger/composer/issues/1622 for future ref.
mahoney1 (Tue, 22 Aug 2017 10:39:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7Ms2gj9HiYPvejn4x) @vishwasrao you can see them in your browser console log probably? Eg Developer tools on Chrome ..
LucaSchiatti (Tue, 22 Aug 2017 12:35:42 GMT):
Has joined the channel.
LucaSchiatti (Tue, 22 Aug 2017 12:35:51 GMT):
Hi All, quick question: how the Hyperledger Composer Modeling Language from Hyperledger Composer is related to Chaincodes?
reggiefelias (Tue, 22 Aug 2017 12:59:41 GMT):
Hi All, good day! I heard there is a pending ticket for hyperledger composer cross channel invocation. Is there a link I can refer to see any updates? Thank you in advance
mahoney1 (Tue, 22 Aug 2017 13:03:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=83eW8Lw285wx5cqrx) @LucaSchiatti In short, with Hyperledger Composer you don't need to go and write native chaincode - with Fabric - you do. You can look at these links to get a better understanding of the Composer Architecture (in particular slide 5): https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture - and also this architecture deep dive shows the internal workings, in terms of runtime architecture -> https://www.slideshare.net/dselman/hyperleger-composer-architecure-deep-dive. Composer also has a Modeling Language, used to specify the structure and relationships between assets/participants/transactions. The richness of the Composer framework (language, modeling semantics, validation, consistency, types etc) and the tooling (generators, REST etc ) offers a level of needed abstraction (for app developers) above the runtime Hyperledger Fabric. Soon there will also be the ability to call one Composer 'chaincode' (as its ultimately deployed to Fabric as thus) from another - that is coming in Composer as part of a new "links" feature, which is being developed at the moment.
mahoney1 (Tue, 22 Aug 2017 13:06:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jkb5C2nBxd7JWvzvL) @reggiefelias its this one https://github.com/hyperledger/composer/issues/898
reggiefelias (Tue, 22 Aug 2017 13:10:13 GMT):
thanks @mahoney1. The title is different i was searching for "cross" "channel" keywords
reggiefelias (Tue, 22 Aug 2017 13:33:14 GMT):
Hi All, another question. Is there a way for me to use crypto2 in hyperledger composer? https://github.com/thenativeweb/crypto2
reggiefelias (Tue, 22 Aug 2017 13:34:35 GMT):
My objective is a way to have a client application encrypt a string using a private key and is verified in the hyperledger side using a public key
mahoney1 (Tue, 22 Aug 2017 15:01:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ieixkn6r3qhkQqGng) @reggiefelias not presently, but when we get nodejs chaincode support natively, its possible to starting exploiting it
wael (Tue, 22 Aug 2017 15:04:54 GMT):
Hi . I am trying to issueIdentity to existing participant by using javascript API.
after I do businessNetworkConnection.issueIdentity(..) and I got userID, and userSecret , I can now just use businessNetworkConnection.connect(..) with the new userID and userSecret params ?
or I should use businessNetworkConnection.bindIdentity with a certificate and then connect ?
uber.twin (Tue, 22 Aug 2017 15:12:39 GMT):
@mahoney1 as of now, there is no way to load an existing transaction object into the chaincode runtime, is it?
uber.twin (Tue, 22 Aug 2017 15:12:52 GMT):
just for read purposes
mahoney1 (Tue, 22 Aug 2017 15:20:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9PLQTAZzrjmsg4rE4) @wael yes eg. ``` const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
let businessNetworkConnection = new BusinessNetworkConnection();
return businessNetworkConnection.connect('hlfv1', 'digitalproperty-network', 'maeid1', 'RJJmlOpvNVRV')
.then(() => {
return businessNetworkConnection.ping();
})
.then((result) => {
console.log(`participant = ${result.participant ? result.participant : '
mahoney1 (Tue, 22 Aug 2017 15:20:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9PLQTAZzrjmsg4rE4) @wael yes eg. using id and secret ``` const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
let businessNetworkConnection = new BusinessNetworkConnection();
return businessNetworkConnection.connect('hlfv1', 'digitalproperty-network', 'maeid1', 'RJJmlOpvNVRV')
.then(() => {
return businessNetworkConnection.ping();
})
.then((result) => {
console.log(`participant = ${result.participant ? result.participant : '
wael (Tue, 22 Aug 2017 15:25:55 GMT):
so what
wael (Tue, 22 Aug 2017 15:26:00 GMT):
is bindIdentity ?
wael (Tue, 22 Aug 2017 15:26:20 GMT):
I don't have to use it ?
mahoney1 (Tue, 22 Aug 2017 15:29:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=389gcXmkpJiR9zfSS) @uber.twin Composer transactions are loaded as JS transaction objects through the Composer runtime (JS) only then deployed to Fabric like any other chaincode.
mahoney1 (Tue, 22 Aug 2017 15:29:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=389gcXmkpJiR9zfSS) @uber.twin Composer transactions are loaded as JS transaction objects through the Composer runtime (JS) only then deployed to Fabric like any other chaincode. That said, if you want to raise a Github issue (eg getting it from something like a getTransactionRegistry in Composer) and full description/example of what you require, we will pursue it.
uber.twin (Tue, 22 Aug 2017 15:35:12 GMT):
@mahoney1 my context is a transaction processing function. is it possible to read another transaction object(already processed in a previous transaction flow) by its transactionId?
uber.twin (Tue, 22 Aug 2017 15:35:12 GMT):
@mahoney1 my context is a transaction processing function. is it possible to read another transaction object(already processed in a previous transaction flow) by its transactionId?
suppose the first time a transaction(message) was subtited, it initiated a business flow which didn't reach a final status because some preconditions were not met.
meanwhile, another transaction processing may have brought those conditions to realization. now the former transaction may resume processing, but there is no way to load it
uber.twin (Tue, 22 Aug 2017 15:36:54 GMT):
a getTransactionRegistry() function doesn't seem to be available in the runtime API
wael (Tue, 22 Aug 2017 15:49:15 GMT):
Participant 'org.acme.simpleParticipant#123456789' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#my-network@0.0.1'v
wael (Tue, 22 Aug 2017 15:49:25 GMT):
anyone could help with that ??
wael (Tue, 22 Aug 2017 15:49:56 GMT):
just after I have issued identity to this participant I got this error !!
mahoney1 (Tue, 22 Aug 2017 16:06:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3e9exQDTsTQQByuye) @uber.twin hi - I see, you mentioned 'chaincode runtime' .. ok.. you can't do so, in your TPF (ie in the runtime) - you can only do so in composer-client eg. getTransactionRegistry() is available and once you connect you should be able to do a `registry.get('abxbb-393838-sssshsh-skskssk');` eg the transaction ID. Or you can emit an event from the TPF with the transaction id that is consumed (subscribed to) by your client.
mahoney1 (Tue, 22 Aug 2017 16:06:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3e9exQDTsTQQByuye) @uber.twin hi - I see, you mentioned 'chaincode runtime' .. ok.. you can't do so, in your TPF (ie in the runtime) - you can only do so in composer-client eg. getTransactionRegistry() is available and once you connect you should be able to do a `registry.get('abxbb-393838-sssshsh-skskssk');` (ie whatever). eg the transaction ID. Or you can emit an event from the TPF with the transaction id that is consumed (subscribed to) by your client.
mahoney1 (Tue, 22 Aug 2017 16:06:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3e9exQDTsTQQByuye) @uber.twin hi - I see, you mentioned 'chaincode runtime' .. ok.. you can't do so, in your TPF (ie in the runtime) - you can only do so in composer-client eg. getTransactionRegistry() is available and once you connect you should be able to do a `registry.get('abxbb-393838-sssshsh-skskssk');` (ie whatever eg the transaction ID). Or you can emit an event from the TPF with the transaction id that is consumed (subscribed to) by your client.
mahoney1 (Tue, 22 Aug 2017 16:07:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XmNwM8hZWHWH3vPoy) @wael are you using default ACLs? - you'll need the system ACLs.. ```/**
* Access control rules for mynetwork
*/
rule Default {
description: "Allow all participants access to all resources"
participant: "ANY"
operation: ALL
resource: "org.acme.mynetwork.*"
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
pradeeppadmarajaiah (Tue, 22 Aug 2017 16:33:42 GMT):
Hi Team,
pradeeppadmarajaiah (Tue, 22 Aug 2017 16:36:04 GMT):
Hi Team,
I am trying to install Composer on Ubuntu 14.04. I was able to install the prerequisites using below linkhttps://hyperledger.github.io/composer/installing/development-tools.html
When installing composer, I get the following error. Please suggest ,how to fix it.
npm install -g composer-cli
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated crypto@0.0.3: This package is no longer supported. It's now a built-in Node module. If you've depended on crypto, you should switch to the one that's built-in.
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
/root/.nvm/versions/node/v6.11.2/bin/composer -> /root/.nvm/versions/node/v6.11.2/lib/node_modules/composer-cli/cli.js
> hashtable@2.0.2 install /root/.nvm/versions/node/v6.11.2/lib/node_modules/composer-cli/node_modules/hashtable
> node-gyp configure build
sh: 1: node-gyp: Permission denied
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.2 (node_modules/composer-cli/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! hashtable@2.0.2 install: `node-gyp configure build`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the hashtable@2.0.2 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2017-08-22T16_31_22_412Z-debug.log
JGraft (Tue, 22 Aug 2017 17:25:20 GMT):
@pradeeppadmarajaiah check your npm version is 3.x. Had that same error
mahoney1 (Tue, 22 Aug 2017 18:18:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gGYpCMpdj94RrGThP) @pradeeppadmarajaiah simple - don't use root (it says so in the instructions at https://hyperledger.github.io/composer/installing/development-tools.html ) - suggest to do an `npm uninstall -g composer-cli` first to clear out. Then create a non-root user. Then login as that user. Next, check you meet the pre-requisites as shown on that web page before proceeding. Once done, you can do as instructed on that page (eg `npm install -g composer-cli` etc).
mahoney1 (Tue, 22 Aug 2017 18:20:49 GMT):
fyi @here - the Community call tomorrow (Wednesday) will be at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and a design update.
pfuntner (Tue, 22 Aug 2017 20:08:29 GMT):
Has joined the channel.
reggiefelias (Tue, 22 Aug 2017 22:52:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eegZ7FC6mCGKtHjmb) @mahoney1 Thank you as always. Is this the ticket # for Nodejs support? https://github.com/hyperledger/composer/issues/554
wael (Wed, 23 Aug 2017 06:12:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CAHKyiQrdtQY8YRou) @mahoney1 what do you mean by system ACLs ?
wael (Wed, 23 Aug 2017 06:17:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CAHKyiQrdtQY8YRou) @mahoney1 Thanks, but is there any docs for systemACL ?
mahoney1 (Wed, 23 Aug 2017 07:25:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vuce2geZBdc73gBjy) @reggiefelias its this one https://github.com/hyperledger/composer/issues/61 with a Fabric (FAB) ticket ref assigned near the bottom.
mahoney1 (Wed, 23 Aug 2017 07:28:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wAJwcZDeug6MiR4o2) @wael just whats in here presently https://hyperledger.github.io/composer/reference/acl_language.html
mahoney1 (Wed, 23 Aug 2017 07:28:41 GMT):
fyi @here - reminder that the Community call will be at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and a design update.
akshay111meher (Wed, 23 Aug 2017 07:54:13 GMT):
@dklesev
Can we define relations in our Business Network Definition Script(.js) file
Precisely I have Invoice.cto file and Invoice.js file..
I want to define something like *getFactory().newRelation('net.biz.Invoice','Project',projectId)* in the Script(.js) file only,
but when i use is this way, I see no objects being created.
Can you look into it and help me?
uber.twin (Wed, 23 Aug 2017 07:58:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uxnyBhhWELGFnLvJ7) @mahoney1 I suppose I'll need to make a clone of my transaction as an asset type. That way I'll be able to reload it in a TPF and use it to build an equivalent mock transaction object.
uber.twin (Wed, 23 Aug 2017 07:58:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uxnyBhhWELGFnLvJ7) @mahoney1 I suppose I'll need to make a clone of my transaction as an asset type, at the time when transaction is submited. That way, later on, I'll be able to reload the asset in a TPF and use it to build an equivalent mock transaction object.
nasht00 (Wed, 23 Aug 2017 08:07:19 GMT):
Has joined the channel.
nasht00 (Wed, 23 Aug 2017 08:07:43 GMT):
I am trying to choose the secret when creating an identity. However it does not seem to pickup the secret I gave it ("sam"):
```
nathanh-mbp:~ nathanh$ composer identity issue -p hlfv1 -n 'vbc-network' -i admin -s adminpw -u sam1 -a "resource:MyParticipant#sam" -s "sam"
An identity was issued to the participant 'resource:MyParticipant#sam'
The participant can now connect to the business network with the following details:
userID = sam1
userSecret = QgXoOOLAYQmM
```
caroline-church (Wed, 23 Aug 2017 08:11:00 GMT):
@nasht00 the secret is assigned to you you don't choose it
nasht00 (Wed, 23 Aug 2017 08:12:04 GMT):
```
nathanh-mbp:~ nathanh$ composer identity issue --help
composer identity issue [options]
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--connectionProfileName, -p The connection profile name [string]
--businessNetworkName, -n The business network name [string] [required]
--enrollId, -i The enrollment ID of the user [string] [required]
--enrollSecret, -s The enrollment secret of the user [string]
--newUserId, -u The user ID for the new identity [string] [required]
--participantId, -a The particpant to issue the new identity to [string] [required]
--issuer, -x If the new identity should be able to issue other new identities [boolean] [required]
--option, -o Options that are specific specific to connection. Multiple options are specified by repeating this option [string]
--optionsFile, -O A file containing options that are specific to connection [string]
```
Qhat is `enrollSecret` then ?
kofman.alex@gmail.com (Wed, 23 Aug 2017 08:12:15 GMT):
@caroline-church so there is no way to provide a secret (neither CLI or API)? The node SDK for the fabric does have this option...
davidkel (Wed, 23 Aug 2017 08:12:37 GMT):
@nasht00 Looks like it should be possible but the HLF V1 connector doesn't pass that information in, please could you raise an issue
nasht00 (Wed, 23 Aug 2017 08:19:08 GMT):
https://github.com/hyperledger/composer/issues/1970
kofman.alex@gmail.com (Wed, 23 Aug 2017 08:35:43 GMT):
@davidkel alternatively, is it possible to change the secret for an existing identity?
Binay1 (Wed, 23 Aug 2017 08:38:23 GMT):
Hi, could somebody help me through this
Binay1 (Wed, 23 Aug 2017 08:38:23 GMT):
@mahoney1 . Here it is
Binay1 (Wed, 23 Aug 2017 08:38:50 GMT):
Message Attachments
AnkitSingh5 (Wed, 23 Aug 2017 08:57:54 GMT):
Has joined the channel.
mna2016 (Wed, 23 Aug 2017 09:04:46 GMT):
Hi Team, how to access the chaincode created by hyperledger composer from external systems? For example: 1) How Do I access the chaincode created by composer via postman? 2) What is the peer URL to be used here? 3) Are the endpoints "/registrar" and "/chaincode" still valid? 4) Any links to the API interface?
davidkel (Wed, 23 Aug 2017 09:11:10 GMT):
@kofman.alex@gmail.com No it isn't, but once you have the certificates you won't be contacting the CA server again
davidkel (Wed, 23 Aug 2017 09:13:22 GMT):
@mna2016 You should use the composer-rest-server to do just that.
davidkel (Wed, 23 Aug 2017 09:13:22 GMT):
@mna2016 You should use the composer-rest-server to do just that. see https://hyperledger.github.io/composer/integrating/integrating-index.html
SergeyTsybulnik (Wed, 23 Aug 2017 09:18:36 GMT):
Has joined the channel.
HannahRayner (Wed, 23 Aug 2017 09:42:01 GMT):
Has joined the channel.
mna2016 (Wed, 23 Aug 2017 09:45:34 GMT):
@davidkel Would the API interface work in the same manner i.e. hlv0.6? I mean can i still make GET and POST calls from postman?
mna2016 (Wed, 23 Aug 2017 09:45:34 GMT):
Hi Team, Thanks for the information so far.
I now see the composer rest server API documentation. But these endpoints look be the ones provided by the nodeJS application. I am looking for system level blockchain endpoints. For example "/blocks/1" to get the hashcode inside of block 1 and other details.
mahoney1 (Wed, 23 Aug 2017 09:46:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pDfNkmQaqbpe5W4WC) @akshay111meher you need to use `newRelationship` eg ` var factory = getFactory();
* // Create a new relationship to the vehicle.
* var vehicle = factory.newRelationship('org.acme', 'Vehicle', 'VEHICLE_1');`
mahoney1 (Wed, 23 Aug 2017 09:46:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pDfNkmQaqbpe5W4WC) @akshay111meher you need to use `newRelationship` eg ```var factory = getFactory();
* // Create a new relationship to the vehicle.
* var vehicle = factory.newRelationship('org.acme', 'Vehicle', 'VEHICLE_1');```
mahoney1 (Wed, 23 Aug 2017 09:56:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=v7i2GmxzmWnjdh3oo) @uber.twin yes, as a business flow, but your first transaction (by id) represents a state on the ledger, and then subsequently your new object (when committed to the ledger) will represent a later state (with another id). I'm guessing you're checking the asset for the incomplete (unmet) state you refer to.
davidkel (Wed, 23 Aug 2017 09:58:37 GMT):
@mna2016 it's a rest api so you can use whatever tool can issue rest requests, you will need to know the appropriate rest calls to make of course. The composer-rest-server comes with an explorer where you can use a browser to make rest api calls. I would highly recommend reading the information on our website about it.
alisonb (Wed, 23 Aug 2017 10:02:27 GMT):
truther
alisonb (Wed, 23 Aug 2017 10:23:32 GMT):
Hi, please could I have some advice on "identity bind"? I issued this for an existing blockchain identity to register it as a participant on a second business network. The command worked and says:
'''An identity was bound to the participant 'resource:org.acme.vehicle.auction.Member#alisonb2@cars.net'
The participant can now connect to the business network using the identity
Command succeeded'''
but when I try to ping the network using the id and secret it says "The current identity has not been registered". Have I missed a step, please?
alisonb (Wed, 23 Aug 2017 10:23:32 GMT):
Hi, please could I have some advice on "identity bind"? I issued this for an existing blockchain identity to register it as a participant on a second business network. The command worked and says:
'''An identity was bound to the participant 'resource:org.acme.vehicle.auction.Member#alisonb2@cars.net'
The participant can now connect to the business network using the identity
Command succeeded'''
but when I try to ping the network using the id and secret it says "The current identity has not been registered". Have I missed a step, please?
rohitaneja8 (Wed, 23 Aug 2017 10:42:16 GMT):
Any Supply Chain Business use case, that can me made using composer for demo or learning? I have seen sample BNA's on playground but need one with supply chain business oriented? Ideas welcome !
Michael_Bradley (Wed, 23 Aug 2017 10:48:50 GMT):
Has joined the channel.
mahoney1 (Wed, 23 Aug 2017 10:53:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dCStK6eEyACfy7Bu6) @Binay1 can you provide your node version please? Also can you provide the output of `npm list -g --depth=0` thanks
mahoney1 (Wed, 23 Aug 2017 11:04:26 GMT):
@alisonb example of bind command ` composer identity bind -p hlfv1 -n 'digitalproperty-network' -i admin -s adminpw -c /tmp/cert.pem -a "resource:net.biz.digitalPropertyNetwork.Person#mae@biznet.org"` and then the ping command for same ` composer network ping -p hlfv1 -n 'digitalproperty-network' -i maeid1 -s RJJmlOpvNVRV` - if you've done something similar and still fails, please let me know your `composer -v` version please?
HannahRayner (Wed, 23 Aug 2017 11:16:58 GMT):
Hello!
I'm Hannah from the design team. ✍🏼As raised in the Community Call this morning, the team and I have been discussing what things in playground we can improve and have come up with a list of ten issues. We would like to get everyone’s opinion on how important you think these issues are and therefore, we have created a short questionnaire.
All the issues were discussed in detail on the call this morning, which was recorded, and there are also corresponding GitHub links are written next to each issue.
We’d also be interested to hear if you think there are any other issues that are not mentioned so please put those at the bottom.
Any questions, please contact me, @HannahRayner or @winslet. 👈🏼 🙂
Thanks! 😁https://goo.gl/forms/Es2g0TsCr6wLcigY2
HannahRayner (Wed, 23 Aug 2017 11:16:58 GMT):
Hello!
I'm Hannah from the design team. ✍🏼As raised in the Community Call this morning, the team and I have been discussing what things in playground we can improve and have come up with a list of ten issues. We would like to get everyone’s opinion on how important you think these issues are and therefore, we have created a short questionnaire.
All the issues were discussed in detail on the call this morning, which was recorded, and there are also corresponding GitHub links are written next to each issue.
We’d also be interested to hear if you think there are any other issues that are not mentioned so please put those at the bottom.
Any questions, please contact me, @HannahRayner or @winslet . 👈🏼 🙂
Thanks! 😁https://goo.gl/forms/Es2g0TsCr6wLcigY2
Binay1 (Wed, 23 Aug 2017 11:28:40 GMT):
Message Attachments
Binay1 (Wed, 23 Aug 2017 11:29:07 GMT):
@mahoney1 Here it is
davidkel (Wed, 23 Aug 2017 11:40:41 GMT):
@alisonb can you provide a bit more detail, for example where did you get the certificates from and where are they stored ? I'm assuming you then didn't import them into the composer keyValStore and by providing a secret, composer went off and got new certificates for that identity and imported them into the composer keyValStore
mahoney1 (Wed, 23 Aug 2017 11:46:43 GMT):
@Binay1 There's a problem with pulling down the pre-built binaries in your setup (when I read of the underlying grpc node module errors in your screenshot) - suggest to first try to do an `npm uninstall -g composer-rest-server` and then `npm install -g composer-rest-server` then try to connect to your business network again with the REST server..
AlexanderEx123 (Wed, 23 Aug 2017 11:46:57 GMT):
Has left the channel.
alisonb (Wed, 23 Aug 2017 12:15:04 GMT):
Fi @davidkel I'm re-using an existing identity that I created using composer issue identity. When I used that identity it put certificates into the composer keyValStore so I used the public one there. Isn't that the right one to use then, please?
davidkel (Wed, 23 Aug 2017 12:17:27 GMT):
@alisonb so those files are public and private keys, what you need to provide is a public certificate and a private key so you can't use those files with the identity import command
alisonb (Wed, 23 Aug 2017 12:26:43 GMT):
@davidkel ah right, thank you. What certificate should I use then, please?
vijayin26 (Wed, 23 Aug 2017 12:27:00 GMT):
Has joined the channel.
vijayin26 (Wed, 23 Aug 2017 12:32:59 GMT):
I have got below error trying to setup IBM Blockchain cloud
My Bluemix cluster was in "Ready" state but it was not allowing to communicate with master server and throwing "Connection refused" internally caused the above "Internal Error" .......... I did not thought it was the cluster that was causing the issue and tried all kinds of solutions to resolve the "connection refused" ... Deleting the cluster and re-created works fine now..... Is anyone know why it created issue even though cluster state was ready for the first time?
vijayin26 (Wed, 23 Aug 2017 12:33:33 GMT):
Message Attachments
pfuntner (Wed, 23 Aug 2017 12:45:51 GMT):
I'm having trouble installing hyperledger composer on a Ubuntu machine. I posted to stackoverflow with details: https://stackoverflow.com/questions/45840089/eacces-while-installing-hyperledger-composer
davidkel (Wed, 23 Aug 2017 12:51:11 GMT):
@alisonb There isn't an easy way to get to the crypto material for an id that's already imported into your keyValStore
Binay1 (Wed, 23 Aug 2017 12:51:28 GMT):
@mahoney1 I tried uninstalling and reinstalling composer-rest-server. Nothing changed
mna2016 (Wed, 23 Aug 2017 12:53:28 GMT):
Hi Team, Thanks for the information so far.
I now see the composer rest server API documentation. But these endpoints look be the ones provided by the nodeJS application. I am looking for system level blockchain endpoints. For example "/blocks/1" to get the hashcode inside of block 1 and other details.
davidkel (Wed, 23 Aug 2017 12:54:48 GMT):
@mna2016 you would need to ask the fabric team about that on one of their channels, maybe #fabric-questions ?
mahoney1 (Wed, 23 Aug 2017 12:57:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5FGRePGnWzEjSiZeq) @vijayin26 sorry this Channel is for Hyperledger Composer - for support with your environment you should go to this page https://console.bluemix.net/containers-kubernetes/launch?env_id=ibm:yp:eu-gb and also review troubleshooter section the https://console.bluemix.net/docs/containers/cs_troubleshoot.html#cs_troubleshoot - seems they're using Stack overflow http://stackoverflow.com/search?q=bluemix+containers.
mna2016 (Wed, 23 Aug 2017 13:00:13 GMT):
@davidkel Thanks for forwarding me to the other channel.
mahoney1 (Wed, 23 Aug 2017 13:12:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6udHZNYGCbN9F2TLh) @pfuntner hi there - I have responded to your Stack Overflow question -> https://stackoverflow.com/questions/45840089/eacces-while-installing-hyperledger-composer/45840756#45840756
alisonb (Wed, 23 Aug 2017 13:12:58 GMT):
@davidkel thanks for your reply. So if you're going to need to use more than one business network then is it better to obtain your blockchain identity outside of composer?
mahoney1 (Wed, 23 Aug 2017 13:17:32 GMT):
@Binay1 what version of python have you installed `python --version` - are the prerequisites like gcc, make etc installed ? Do you have the OUTPUT of the (re)-install)of composer-rest-server ?
davidkel (Wed, 23 Aug 2017 13:17:49 GMT):
@alisonb What composer does automatically for you when you run commands with a user/secret combination is to obtain the certificate/private key and import that into your wallet if it's not there already for it's use. So you don't see the material used by identity import/bind commands. At some point we should provide the ability to request an identity from the CA and also export an identity from the wallet as well
pfuntner (Wed, 23 Aug 2017 13:20:05 GMT):
@mahoney1 thanks, i'll try what you suggested
rwadhwa (Wed, 23 Aug 2017 13:32:05 GMT):
Has joined the channel.
rwadhwa (Wed, 23 Aug 2017 13:32:25 GMT):
Hi All
rwadhwa (Wed, 23 Aug 2017 13:32:52 GMT):
I set up the Hyperledger Composer as defined in the official page.
rwadhwa (Wed, 23 Aug 2017 13:34:10 GMT):
I have a question. Can I define multiple assets in a .cto file. The reason I'm asking this question, I'm getting errors while building the bna network file.
rwadhwa (Wed, 23 Aug 2017 13:34:21 GMT):
Can someone provide more inputs on this?
mahoney1 (Wed, 23 Aug 2017 13:52:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4H7xemTHoi6gcmpan) @rwadhwa yes, absolutely, you can paste it here, or into a Composer playground (for example) for validation
rwadhwa (Wed, 23 Aug 2017 14:04:01 GMT):
@mahoney1 Okay. Let me try that. Thanks :)
sstone1 (Wed, 23 Aug 2017 15:23:07 GMT):
@here FYI, the release tomorrow of v0.12.0 is being cancelled; the ID cards functionality is in, but we do not feel that the documentation/tutorials are in a good enough state considering how big a change it is. the cloud playground is also broken and we need to fix that before we can release.
alisonb (Wed, 23 Aug 2017 15:41:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dvy6iaX8iW2jCqige) @davidkel Ah, thanks David
adrianblakey (Wed, 23 Aug 2017 16:48:07 GMT):
Are there any plans to provide better support for say a Type/Concept library? I am starting to find I need robust Concepts like "Duration" "Currency" "Address" etc. with the same sort of protocol as their java equivalent. It would be nice say to be able to import/require org.hyperledger.composer.types into the model and poke settings into them in the model
Hefziben (Wed, 23 Aug 2017 16:48:54 GMT):
hello team, I gettng this error while trying to run the composer-rest-server after generating and starting the scheleton of the angular app: Connection fails: Error: Error trying to ping. Error: Error trying to query chaincode. Error: Connect Failed
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Error trying to query chaincode. Error: Connect Failed
Error: Error trying to ping. Error: Error trying to query chaincode. Error: Connect Failed
at _checkRuntimeVersions.then.catch (/home/node/.nvm/versions/node/v6.11.2/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:696:34)
adrianblakey (Wed, 23 Aug 2017 17:01:55 GMT):
Also - just a thought ... it would be cool if the code generators not only generated a REST server but also a cron server, which we could use to fire transactions on timer events.
JohnWhitton (Wed, 23 Aug 2017 17:36:20 GMT):
HI all,
Quick questions we're currently using composer 11.2
Can someone give me an update on the latest version available and changes
I'm currently looking at https://github.com/hyperledger/composer/releases
But I see we have docker images for 0.12 here https://hub.docker.com/r/hyperledger/composer-rest-server/tags/
And 11.3 on npm here https://www.npmjs.com/package/composer-cli
fjblau (Wed, 23 Aug 2017 19:55:32 GMT):
Has joined the channel.
fjblau (Wed, 23 Aug 2017 19:56:20 GMT):
Why does the documentation only print one page? Is there a way to get PDF docs?
torresjeff (Wed, 23 Aug 2017 20:28:26 GMT):
When using composer REST server with authentication, is it necessary to have a default identity for a wallet? What if I want users to access only what they have permission to access or if I want to keep sessions? Would I have to send the `id` of the identity in every request in a special header or something like that?
torresjeff (Wed, 23 Aug 2017 20:29:37 GMT):
I was reading the docs on authentication with composer rest server here: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
torresjeff (Wed, 23 Aug 2017 20:29:50 GMT):
and they set `alice1` as the default identity for the default wallet
torresjeff (Wed, 23 Aug 2017 20:30:23 GMT):
what if i have a multi-user app? how can I make every user use their own identity instead of the default `alice1`?
ygnr (Thu, 24 Aug 2017 04:59:46 GMT):
Hello, Is it possible to add an array of assets at a time in composer?
arnabsutar (Thu, 24 Aug 2017 06:45:17 GMT):
h
arnabsutar (Thu, 24 Aug 2017 06:50:12 GMT):
@mahoney1 thanks a lot for clarification.
arnabsutar (Thu, 24 Aug 2017 06:53:35 GMT):
How transaction processors being invoked by the generic chaincode and where these scripts file getting stored from .bna files?
What are the different files generated from .bna and how they are integrated?
abelkuruvilla (Thu, 24 Aug 2017 07:02:21 GMT):
Has joined the channel.
nasht00 (Thu, 24 Aug 2017 07:54:27 GMT):
If I want to READ data, what is the difference between writing a Query in chaincode, vs accessing the registry directly from the nodejs app?
benjaminverhaegen (Thu, 24 Aug 2017 08:08:57 GMT):
if i want to change a participant "user" in a transaction to a participant "member extends user" . How should i do this?
uber.twin (Thu, 24 Aug 2017 08:16:22 GMT):
@mahoney1 hi, when loading an asset type object(asset1) in TPF, what is the corrent way of accessing its properties which are relations?
when trying to convert such properties(relationProp1) to String e.g.
```String(asset1.relationProp1), I get "Relationship {id=my.property.type#objId}"```
when evaluating "asset1.relationProp1.id" I get "undefined"
nasht00 (Thu, 24 Aug 2017 08:32:41 GMT):
Does Playground support queries? I can write one, but I don't see any option to run/test it
JeroenDePrest (Thu, 24 Aug 2017 08:42:25 GMT):
Has joined the channel.
uber.twin (Thu, 24 Aug 2017 08:44:13 GMT):
@mahoney1 apparently these are my relationship property fields:
```
$modelManager
$namespace
$type
$identifier
$class
```
not really consistent with the jsdoc for the Relationship class which lists the following:
```
modelManager
ns
type
id
```
mahoney1 (Thu, 24 Aug 2017 09:03:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=cdWjTz6iEHvJpToqy) @JohnWhitton hi John - the current (latest) release is 0.11.3. Yesterday, we cancelled v0.12.0 release (although the ID cards functionality is i'n, we didn't feel that the documentation/tutorials were in a good enough state for this big change and we need to fix). The release notes will be amended (the 0.12.0 notes you saw were prepped ahead of time, needs amending as does Dockerhub).
mahoney1 (Thu, 24 Aug 2017 09:19:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kpXXzXATPjNycv49d) @adrianblakey thanks for your input - please feel free to raise a Github issue to articulate your requirements in the modeling language, and give some examples in your discussion thread.
mahoney1 (Thu, 24 Aug 2017 09:22:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bYDdCfRGXspSj2WEj) @Hefziben if your business network is up and running at the time of generation, you should already have the composer-rest-server running when you `npm start` the generated application - you don't need to start it a second time? Your app is accessible at http://localhost:4200
mahoney1 (Thu, 24 Aug 2017 09:50:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NDpsMPzMS3rPo5zHK) @ygnr sure, in your code using ., or through REST APIs via JSON? eg. ```return getAssetRegistry('org.acme.Vehicle')
.then(function (vehicleAssetRegistry) {
// Get the factory for creating new asset instances.
var factory = getFactory();
// Create the first vehicle.
var vehicle1 = factory.newResource('org.acme', 'Vehicle', 'VEHICLE_1');
vehicle1.colour = 'BLUE';
// Create the second vehicle.
var vehicle2 = factory.newResource('org.acme', 'Vehicle', 'VEHICLE_2');
vehicle2.colour = 'GREEN';
// Add the vehicles to the vehicle asset registry.
return vehicleAssetRegistry.addAll([vehicle1, vehicle2]);
})
.catch(function (error) {
// Add optional error handling here.
});```
mahoney1 (Thu, 24 Aug 2017 09:50:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NDpsMPzMS3rPo5zHK) @ygnr sure, in your code, or through REST APIs via JSON? [ ](https://chat.hyperledger.org/channel/composer?msg=NDpsMPzMS3rPo5zHK) @ygnr
mahoney1 (Thu, 24 Aug 2017 09:50:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NDpsMPzMS3rPo5zHK) @ygnr sure, in your code, or through REST APIs via JSON?
mudlee (Thu, 24 Aug 2017 09:54:52 GMT):
Has joined the channel.
mahoney1 (Thu, 24 Aug 2017 09:56:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hL7LocodnhNv7vEX8) @fjblau its just a docs site presently - it maybe something to consider for Jekyll -> PDF - I believe in Acrobat if you have it you can PDF an entire website under 'Create PDF' / web Capture (not used it).
mahoney1 (Thu, 24 Aug 2017 09:56:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hL7LocodnhNv7vEX8) @fjblau its just a docs site presently - it maybe something to consider for our site eg. Jekyll generated -> PDF - I believe in Acrobat if you have it you can PDF an entire website under 'Create PDF' / web Capture (not used it).
arnabsutar (Thu, 24 Aug 2017 09:57:04 GMT):
1. How transaction processors being invoked by the generic chaincode and where these scripts file getting stored from .bna files?
2. What are the different files generated from .bna and how they are integrated?
abelkuruvilla (Thu, 24 Aug 2017 10:26:18 GMT):
While generating REST using the CLI it asks for fabric username and password. Can someone explain to me what is that?? (I'm quite new to Composer)
mahoney1 (Thu, 24 Aug 2017 10:34:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gJDaH7gaQXuuD2crX) @arnabsutar [ ](https://chat.hyperledger.org/channel/composer?msg=gJDaH7gaQXuuD2crX) @arnabsutar it installs and instantiates a chaincode per business network and its runtime handles the execution of TPFs being invoked to update/query the world state in Fabric its all explained here (including the different files - one not yet shown in the diagram on slide 4 (components of a BNA) is the optional queries definition file -> https://www.slideshare.net/dselman/hyperleger-composer-architecure-deep-dive
mahoney1 (Thu, 24 Aug 2017 10:37:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=w55hefxAqwbN5X4KP) @nasht00 yes - so in the online playground - https://composer-playground.mybluemix.net/editor you just 'add a file' and choose Query file - check out our sample networks for examples eg https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry the Trade network
mahoney1 (Thu, 24 Aug 2017 10:45:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=L4hvMaAQPbFE5NpJK) @nasht00 you can write Queries in Composer (.qry file part of your BNA). But the former is defined and consumable/reusable by name, the latter is something you can use to achieve the same, in a function or otherwise. Furthermore, Queries are exposed as REST endpoints.
nasht00 (Thu, 24 Aug 2017 10:49:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xv8FmrEEQW7Rd2Z9Y) @mahoney1 thanks but like I said, I am able to add the query, but there is no UI to run the query in the playground. Like there is a "new transaction" button, there is no "new query" button
mahoney1 (Thu, 24 Aug 2017 10:56:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Hx46XQRcn6bTRTWG3) @benjaminverhaegen you mean in the model file ? An example is shown here -> https://github.com/hyperledger/composer-sample-models/blob/master/packages/animaltracking-model/models/com.ibm.concerto.mozart.cto - you can't change it in a 'transaction' per se.
benjaminverhaegen (Thu, 24 Aug 2017 10:59:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kXGXawBZeFkX4o7Pa) @mahoney1 i mean like this:
abstract participant User identified by email {
o String email
o String firstName
o String lastName
}
participant Lid extends User {
o Double balance
--> User user
}
transaction KeurGoed {
// change normal person to a "Lid"
}
benjaminverhaegen (Thu, 24 Aug 2017 11:01:03 GMT):
@mahoney1 so after transaction 'KeurGoed' a normal person should change to a Lid
jarvis488 (Thu, 24 Aug 2017 11:06:34 GMT):
i have generated a api of my business network with use of now i m stuck where to deploy my bna to make global what are the steps nedded is there any live instance of fabric??
jarvis488 (Thu, 24 Aug 2017 11:08:00 GMT):
i have generated a api of my business network with use of fabric-composr but its running on local host now i m stuck where to deploy my bna to make global what are the steps nedded is there any live instance of fabric??
AlexDobjanschi (Thu, 24 Aug 2017 11:09:21 GMT):
Has joined the channel.
AlexDobjanschi (Thu, 24 Aug 2017 11:09:48 GMT):
hello guys, I'm new to hyperledger, so far I've tried composer to model some of my use cases, but got stuck to a simple flow (first one) - transfer between accounts in 2 steps:
1. txn TransferRequest creates a Transfer asset
2. txn TransferConfirm performs the actual money transfer
However, when I queried for Transfer, I no longer can access the references accounts (`--> Account from`). If I provide these references with the txn TransferConfirm, money movement works. So my question was, is there any difference between references sent with transaction and fetched through query?
AlexDobjanschi (Thu, 24 Aug 2017 11:09:48 GMT):
hello guys, I'm new to hyperledger, so far I've tried composer to model some of my use cases, but got stuck to a simple flow (first one) - transfer between accounts in 2 steps:
1. txn TransferRequest creates a Transfer asset
2. txn TransferConfirm performs the actual money transfer
However, when I queried for Transfer (step 2), I no longer can access the references accounts (`--> Account from`). If I provide these references with the txn TransferConfirm, money movement works. So my question was, is there any difference between references sent with transaction and fetched through query?
AlexDobjanschi (Thu, 24 Aug 2017 11:21:10 GMT):
because in my case, sending these refs with transaction request makes no sense (Transfer asset was already created, now I want to confirm it :) )
DushyantBhalgami (Thu, 24 Aug 2017 11:29:49 GMT):
I'm trying to add participant using nodejs but getting error
`let factory = businessNetworkConnection.getFactory();`
DushyantBhalgami (Thu, 24 Aug 2017 11:29:49 GMT):
I'm trying to add participant using nodejs but getting error
`let factory = businessNetworkConnection.getFactory();`
TypeError: businessNetworkConnection.getFactory is not a function
DushyantBhalgami (Thu, 24 Aug 2017 11:29:49 GMT):
I'm trying to add participant using nodejs but getting error
```
let BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
let businessNetworkConnection = new BusinessNetworkConnection();
let factory = businessNetworkConnection.getFactory();
```
TypeError: businessNetworkConnection.getFactory is not a function
DushyantBhalgami (Thu, 24 Aug 2017 11:29:49 GMT):
I'm trying to add participant using nodejs but getting error
```
let BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
let businessNetworkConnection = new BusinessNetworkConnection();
return businessNetworkConnection.connect('hlfv1', 'first_network', 'PeerAdmin', 'adminpw').then(function() {
let factory = businessNetworkConnection.getFactory();
```
TypeError: businessNetworkConnection.getFactory is not a function
mahoney1 (Thu, 24 Aug 2017 11:36:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hXceMi7BsusRz9DCP) @uber.twin check out the Trade TPF example here: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/digitalproperty-network/lib/DigitalLandTitle.js It has a relationship to the LandTitle and Person in the Model file (https://github.com/hyperledger/composer-sample-models/blob/master/packages/digitalproperty-model/models/DigitalLandTitle.cto). So accessing the properties is via the transaction name (defined in the decorator for the TPF). eg. `propertyForSale.title.forSale = true;` or ``propertyForSale.seller.PersonId = 'Person:1234567';`
mahoney1 (Thu, 24 Aug 2017 11:36:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hXceMi7BsusRz9DCP) @uber.twin check out the Trade TPF example here: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/digitalproperty-network/lib/DigitalLandTitle.js It has a relationship to the LandTitle and Person in the Model file (https://github.com/hyperledger/composer-sample-models/blob/master/packages/digitalproperty-model/models/DigitalLandTitle.cto). So accessing the properties is via the transaction name (defined in the decorator for the TPF). eg. `propertyForSale.title.forSale = true;` or `propertyForSale.seller.PersonId = 'Person:1234567';`
nasht00 (Thu, 24 Aug 2017 11:39:52 GMT):
If my model has relationship, how do queries handle this?
I get (from node sdk):
```
product:
Relationship {
'$modelManager': ModelManager { modelFiles: [Object] },
'$namespace': 'vbc',
'$type': 'Product',
'$identifier': 'ew',
'$class': 'Relationship' },
```
But how do I extract any data about this `Product` instance?
mahoney1 (Thu, 24 Aug 2017 11:40:38 GMT):
@uber.twin your relationship property fields in your TPFs are through the transaction you modeled and for which you have defined relationships using '-->' in the model file
uber.twin (Thu, 24 Aug 2017 11:47:47 GMT):
@mahoney1 That is what I would expect, but what I am saying is that when loading a propertyForSale object in TPF, the propertyForSale.title is not a LandTitle type but some kind of relationship proxy object
uber.twin (Thu, 24 Aug 2017 11:48:27 GMT):
well, in my case, I am loading an asset, not a transaction
uber.twin (Thu, 24 Aug 2017 11:50:43 GMT):
specifically, is in object which exposes the following properties
uber.twin (Thu, 24 Aug 2017 11:50:43 GMT):
specifically, it is in object which exposes the following properties
uber.twin (Thu, 24 Aug 2017 11:50:43 GMT):
specifically, it is an object which exposes the following properties
uber.twin (Thu, 24 Aug 2017 11:50:44 GMT):
$modelManager
$namespace
$type
$identifier
$class
mahoney1 (Thu, 24 Aug 2017 11:51:41 GMT):
@benjaminverhaegen so ```transaction KeurGoed { --> Lid lid }``` then refer to this in your TPF as (eg.) keurgoed.lid.propertyname etc where you defined it as Keurgoed keurgoed in your param decorator - see this model file for guidance https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/models/auction.cto
mahoney1 (Thu, 24 Aug 2017 11:57:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8ykL4DKyp4BHeZp8X) @jarvis488 for a 'global' or 'live instance' of your first network, you need to read the Fabric docs to set that up -> http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html and http://hyperledger-fabric.readthedocs.io/en/latest/getting_started.html - once you have that up and running, you can create a Composer connection profile to connect to it.
mahoney1 (Thu, 24 Aug 2017 12:08:45 GMT):
@AlexDobjanschi hi there and welcome ! by references do you mean relationships (eg' -->') Not sure of your complete scenario or model but the answer is no real difference, its the same fully qualified relationship (identifer such as a Participant). In the TPF, to which the transaction is sent, you can query something added/updated in a registry (once it has been committed by peers to the world state), if it hasn't yet been committed to the world state at the time of query, then the asset won't be there !).
jarvis488 (Thu, 24 Aug 2017 12:14:36 GMT):
ok mahoney thanks for reply
mahoney1 (Thu, 24 Aug 2017 12:18:32 GMT):
@DushyantBhalgami its `factory = businessNetworkDefinition.getFactory(); ` and you should not be using PeerAdmin to connect to your network - that 'id' is only used to deploy the network eg. `let factory = this.businessNetworkDefinition.getFactory();
owner = factory.newResource('net.biz.digitalPropertyNetwork', 'Person', 'PID:1234567890');
owner.firstName = 'Fred';
owner.lastName = 'Bloggs';`
mahoney1 (Thu, 24 Aug 2017 12:18:32 GMT):
@DushyantBhalgami its `factory = businessNetworkDefinition.getFactory(); ``` and you should not be using PeerAdmin to connect to your network - that 'id' is only used to deploy the network eg. `let factory = this.businessNetworkDefinition.getFactory();
owner = factory.newResource('net.biz.digitalPropertyNetwork', 'Person', 'PID:1234567890');
owner.firstName = 'Fred';
owner.lastName = 'Bloggs';```
nasht00 (Thu, 24 Aug 2017 12:18:46 GMT):
@mahoney1 I think a realize my above question is almost the same as @uber.twin .
My model has relationships. When I query for an asset, I also want to access the values of its relationships.
AlexDobjanschi (Thu, 24 Aug 2017 12:19:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=N3Kp8YMYQKG2pwZjR) @mahoney1
```
```
AlexDobjanschi (Thu, 24 Aug 2017 12:19:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=N3Kp8YMYQKG2pwZjR) @mahoney1
```
```
transaction TransferRequest {
o String id
o Double amount
o String currency
o DateTime when
--> Account from
--> Account to
}
transaction TransferConfirm {
o String id
}
function confirmTransfer(confirm) {
/* select the transfer by id */
return query('Q1', { id: confirm.id })
.then(function(transfers) {
if (transfers.length == 0) {
throw Error('Transfer not found');
}
return transfers[0];
}).then(function(transfer) {
... some checks here ...
transfer.from.amount -= transfer.amount;
transfer.to.amount += transfer.amount;
...
AlexDobjanschi (Thu, 24 Aug 2017 12:25:49 GMT):
transfer.from.amount -= transfer.amount doesn't seem to work, however it also doesn't give me an error until the end, when I get *Serializer.toJSON only accepts instances of Resource.*
AlexDobjanschi (Thu, 24 Aug 2017 12:25:49 GMT):
```
transfer.from.amount -= transfer.amount doesn't seem to work, however it also doesn't give me an error until the end, when I get *Serializer.toJSON only accepts instances of Resource.*
jarvis488 (Thu, 24 Aug 2017 12:29:14 GMT):
@mahoney1 will this will work the same for setting network https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
jarvis488 (Thu, 24 Aug 2017 12:30:35 GMT):
or i have to use link you gave to me https://chat.hyperledger.org/channel/composer?msg=7n2wZk8kdLv4grpca
sstone1 (Thu, 24 Aug 2017 12:40:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rbSzucx6mPGk2cm46) @nasht00 you cannot query across relationships when using the Composer query functionality (e.g. `WHERE relationship.property.otherRelationship.value == 'foo'`
nasht00 (Thu, 24 Aug 2017 12:41:01 GMT):
Not what I meant
nasht00 (Thu, 24 Aug 2017 12:41:35 GMT):
I have no `WHERE`.
I am talking about the resulting json object I get back.
nasht00 (Thu, 24 Aug 2017 12:41:47 GMT):
How do I read the relationship it contains?
sstone1 (Thu, 24 Aug 2017 12:41:58 GMT):
which API are you using? the Node.js or the REST APIs?
nasht00 (Thu, 24 Aug 2017 12:42:21 GMT):
Node. Although the REST api also doesn't include the relationships
sstone1 (Thu, 24 Aug 2017 12:42:49 GMT):
so you don't get a JSON object from the Node.js APIs - you get a `Resource` instance
sstone1 (Thu, 24 Aug 2017 12:43:02 GMT):
that `Resource` instance has properties for each property in the model
sstone1 (Thu, 24 Aug 2017 12:43:16 GMT):
relationship properties will have `Relationship` instances
sstone1 (Thu, 24 Aug 2017 12:43:39 GMT):
you need to resolve those relationships
nasht00 (Thu, 24 Aug 2017 12:43:48 GMT):
```
product:
Relationship {
'$modelManager': ModelManager { modelFiles: [Object] },
'$namespace': 'vbc',
'$type': 'Product',
'$identifier': 'erw',
'$class': 'Relationship' },
```
nasht00 (Thu, 24 Aug 2017 12:43:57 GMT):
How do you "resolve" a relationship?
sstone1 (Thu, 24 Aug 2017 12:44:06 GMT):
don't use those properties - they are internal properties
sstone1 (Thu, 24 Aug 2017 12:45:06 GMT):
you can use the method `product.getFullyQualifiedType()` to get the fully qualified type, which is the registry ID
sstone1 (Thu, 24 Aug 2017 12:45:18 GMT):
you can then use the registry ID with a call to `getAssetRegistry` or `getParticipantRegistry`
sstone1 (Thu, 24 Aug 2017 12:45:40 GMT):
you can then use the method `product.getIdentifier()` to get the identifier for the asset or participant
nasht00 (Thu, 24 Aug 2017 12:46:22 GMT):
ah, so you need to separately fetch each relation item.
For for example if you have 100 results, each with a relationship, you need 100 requests to build the needed json?
sstone1 (Thu, 24 Aug 2017 12:46:36 GMT):
```
return bnc.getAssetRegistry(product.getFullyQualifiedType())
.then((assetRegistry) => {
return assetRegistry.get(product.getIdentifier());
})
.then((resolvedProduct) => {
// yay i got the resolved product
})
```
sstone1 (Thu, 24 Aug 2017 12:47:08 GMT):
correct
sstone1 (Thu, 24 Aug 2017 12:47:31 GMT):
there are the methods `resolveAll` and `resolve` on an AssetRegistry and ParticipantRegistry
sstone1 (Thu, 24 Aug 2017 12:47:47 GMT):
i don't recommend them because they attempt to recursively resolve all relationships
sstone1 (Thu, 24 Aug 2017 12:47:52 GMT):
but it is in a single request
nasht00 (Thu, 24 Aug 2017 12:47:54 GMT):
ok
AlexDobjanschi (Thu, 24 Aug 2017 12:57:22 GMT):
I fixed my problem by having a relationship between TransferConfirm and Transfer, instead of relying on id and loading from database. While this fixes the issue, I don't understand why, but will continue investigating. Thanks!
nasht00 (Thu, 24 Aug 2017 13:25:45 GMT):
By the way, you guys should know that the person who recorded the animation on this page (https://hyperledger.github.io/composer/tutorials/queries.html) included the soudtrack of breathing and clicking on his mouse :)
Go ahead go the page, scroll to the animation below "Confirm to replace the current network definition in Playground.", and put full volume :)
mahoney1 (Thu, 24 Aug 2017 13:36:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=L6Kc3pZ6Ex2Xf3s55) @nasht00 thanks will correct this, video obviously recorded with mic on.
mahoney1 (Thu, 24 Aug 2017 13:40:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=R24YgSWc5cuF5QHPE) @AlexDobjanschi shouldn't need a relationship between the two transactions you defined see this, this example may help you -> https://stackoverflow.com/questions/45428189/when-to-call-getassetregistry-to-update-assets-and-the-participants-equivalent/45469571#45469571
DushyantBhalgami (Thu, 24 Aug 2017 13:41:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KmzoxxBuphB5rpaXs) @mahoney1 and how would I get `this.businessNetworkDefinition` ?
In docs, I found that `let factory = businessNetworkConnection.getBusinessNetwork().getFactory();`
So what is the difference, between these two?
munireddya (Thu, 24 Aug 2017 13:45:01 GMT):
@mahoney1
munireddya (Thu, 24 Aug 2017 13:45:04 GMT):
muni@munisubuntu:~/my-network$ npm install
npm WARN prepublish-on-install As of npm@5, `prepublish` scripts are deprecated.
npm WARN prepublish-on-install Use `prepare` for build steps and `prepublishOnly` for upload-only.
npm WARN prepublish-on-install See the deprecation note in `npm help scripts` for more information.
> my-network@0.1.6 prepublish /home/muni/my-network
> mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna
sh: 1: mkdirp: not found
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! my-network@0.1.6 prepublish: `mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the my-network@0.1.6 prepublish script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm WARN Local package.json exists, but node_modules missing, did you mean to install?
npm ERR! A complete log of this run can be found in:
npm ERR! /home/muni/.npm/_logs/2017-08-24T13_37_57_104Z-debug.log
munireddya (Thu, 24 Aug 2017 13:47:02 GMT):
can you please suggest me what could be the wrong?
mahoney1 (Thu, 24 Aug 2017 13:47:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HgE5Rjumvp2w2bJ83) @DushyantBhalgami that's using promises (this) but you can see an example here -> https://hyperledger.github.io/composer/applications/node.html -
mahoney1 (Thu, 24 Aug 2017 13:47:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HgE5Rjumvp2w2bJ83) @DushyantBhalgami that's using promises (this) but you can see an example here ->https://hyperledger.github.io/composer/managing/participant-add.html and here -> https://hyperledger.github.io/composer/applications/node.html -
munireddya (Thu, 24 Aug 2017 13:48:59 GMT):
@mahoney1 can you suggest me what could be the wrong?
mahoney1 (Thu, 24 Aug 2017 13:52:09 GMT):
so mkdirp is missing in your installation - https://www.npmjs.com/package/mkdirp
mahoney1 (Thu, 24 Aug 2017 14:03:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Z2kXwzGvbDck63ZNN) @munireddya so mkdirp is missing in your installation - https://www.npmjs.com/package/mkdirp
mahoney1 (Thu, 24 Aug 2017 14:20:51 GMT):
@jarvis488 - correct you can use the link you posted, to configure your REST server on the network, to talk to your runtime Fabric environment, and discover (create schema, expose REST endpoints etc) for your BUSINESS network that you've deployed to that runtime Fabric.
Hefziben (Thu, 24 Aug 2017 15:24:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hYZFHp7jAtyXLRwKM) @mahoney1 I followed this instructions, and from there on, I keep getting. the same message. I will reinstall everything and try again. thanks,
Hefziben (Thu, 24 Aug 2017 15:25:03 GMT):
Generate your Skeleton Web Application
You are now ready to create a skeleton Angular web application to interact with your business network.
Shut the composer-rest-server process down by pressing CTRL-C in the terminal window.
Run the Hyperledger Composer generator, selecting the options below to generate an Angular application and to also generate a new REST API when prompted
lucrezia.dm (Thu, 24 Aug 2017 15:41:35 GMT):
hello, I'm a beginner. :-)
I changed the starting code of "basic-sample-network" on my local pc. I created a folder that was the same as I downloaded. Now, to load it on the Playground platform I need to have a *.bna* file, how do I create it?
mahoney1 (Thu, 24 Aug 2017 16:51:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LpMmXYG7CLXkguXJt) @lucrezia.dm hi there and welcome - if you have composer installed on your local machine (eg. in a VM etc) - you can run ```composer archive create -a my-network.bna --sourceType dir --sourceName . ``` ie with trailing '.' meaning current directory. If you don't have composer installed, you can always simply paste your changes into the online playground (normally its easier just to edit the model file there). The .bna file is really a zip so you could zip it up (same structure) and rename the suffix to .bna
mahoney1 (Thu, 24 Aug 2017 16:51:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LpMmXYG7CLXkguXJt) @lucrezia.dm hi there and welcome - if you have composer installed on your local machine (eg. in a VM etc) - you can run ```composer archive create -a my-network.bna --sourceType dir --sourceName . ``` ie with trailing '.' meaning current directory. If you don't have composer installed, you can always simply paste your changes into the online playground (normally its easier just to edit the model file there). Its easy to re-package the .bna file from your project folder to become a .bna - ie it is really a zip
file so you could zip it up (same structure) and rename the suffix to .bna from .zip
Hefziben (Thu, 24 Aug 2017 16:55:06 GMT):
hell again, guys, I want to create a ionic project instead of an angular one, what do you know what is the basic configuration needed?
mahoney1 (Thu, 24 Aug 2017 17:32:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eXHXrwcJzjiZrtNEh) @Hefziben Vehicle Lifecycle sample application is uses Ionic - take a look at this here -> https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-lifecycle (see the README) - its easy to find the relevant Ionic config files using the github link under sample-applications FYI.
abelkuruvilla (Thu, 24 Aug 2017 17:40:19 GMT):
While generating REST using the CLI it asks for fabric username and password. Can someone explain to me what is that?? (I'm quite new to Composer)
Hefziben (Thu, 24 Aug 2017 17:49:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=J4ZTLv2GAWtEt4WkX) @mahoney1 thanks a lot, you are really helpful
mescoba1 (Thu, 24 Aug 2017 18:03:39 GMT):
When writing the transaction methods in js, do we treat the model entities as objects? How do I create a new instance of `concept` and append it to an array of an asset? If I am using enumeration in my model, how do I reflect that in the transaction script?
lucrezia.dm (Thu, 24 Aug 2017 20:11:17 GMT):
[Thank you.
I created a zip file and renamed with suffix .bna but when I try to import my file in Playground, It shows me the following error : " Cannot import an invalid Business Network Definition. Found Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html" . How can I do it? ](https://chat.hyperledger.org/channel/composer?msg=MsDrWNXtccNjQxgis) @mahoney1
lucrezia.dm (Thu, 24 Aug 2017 20:11:17 GMT):
[Thank you.
I don't have Composer installed.
I created a zip file and renamed with suffix .bna but when I try to import my file in Playground, It shows me the following error : " Cannot import an invalid Business Network Definition. Found Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html" . How can I do it? ](https://chat.hyperledger.org/channel/composer?msg=MsDrWNXtccNjQxgis) @mahoney1
lucrezia.dm (Thu, 24 Aug 2017 20:11:17 GMT):
[Thank you.
I don't have Composer installed.
I created a zip file and renamed with suffix .bna but when I try to import my file in Playground, It shows me the following error : " Cannot import an invalid Business Network Definition. Found Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html" . How can I do it? ](https://chat.hyperledger.org/channel/composer?msg=MsDrWNXtccNjQxgis) @mahoney1
lucrezia.dm (Thu, 24 Aug 2017 20:11:17 GMT):
[Thank you.
I do not have Composer installed.
I created a zip file and renamed with suffix .bna but when I try to import my file in Playground, It shows me the following error : " Cannot import an invalid Business Network Definition. Found Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html" . How can I do it? ](https://chat.hyperledger.org/channel/composer?msg=MsDrWNXtccNjQxgis) @mahoney1
lucrezia.dm (Thu, 24 Aug 2017 20:11:17 GMT):
Hi !
I'm using online Playground and I modified the starting code "basic-sample-network" locally and I tried to upload it on the platform but it occours an error "Cannot import an invalid Business Network Definition. Found Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html"
(I downloaded the package, I opened and modified it and I create again a .zip package and I modified the name extention lastly).
How can I solve this problem? Thanks. :-)
ccorley (Thu, 24 Aug 2017 21:40:20 GMT):
Hello. We are thinking of opening an issue "As a user, I would like to be able to switch between multiple, deployed models without losing information such as logged transactions." Is this function already planned for 0.12.0 or 1.0? The 0.11.3 behavior is somewhat counter-intuitive ("I know there were more transactions than this, why can't I see them?"). I've looked through issues, stack exchange and rocket chat (as best as possible) and can't find any discussion on this.
mmyburgh (Fri, 25 Aug 2017 02:03:07 GMT):
Has joined the channel.
mmyburgh (Fri, 25 Aug 2017 02:05:20 GMT):
I created a business network and tested it in the playground. It all works fine. I can create transactions, assets and participants. When i try and create a rest interface with the composer-rest-server, the participant and asset rest interface is created, but the transactions are not. Any information why not is welcome?
ansonlau3 (Fri, 25 Aug 2017 03:29:30 GMT):
is there anyways to throw the transaction processor functions error to the middleware for processing ? (instead of just handled in the tx function)
mahoney1 (Fri, 25 Aug 2017 09:17:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=iiorzB2nFmRPF5rjx) @mmyburgh that's unusual - can you post your model fle- can DM me if you want to.
mahoney1 (Fri, 25 Aug 2017 09:35:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6DF77EKj5H93eFMLD) @ansonlau3 you could use /emit events to handle the errors ?https://hyperledger.github.io/composer/business-network/publishing-events.html
mahoney1 (Fri, 25 Aug 2017 09:35:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6DF77EKj5H93eFMLD) @ansonlau3 you could use / emit events to handle the errors ?https://hyperledger.github.io/composer/business-network/publishing-events.html
mahoney1 (Fri, 25 Aug 2017 09:58:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=r6SY3nymmGn66vWyP) @ccorley I suggest to raise a github issue - what you're requesting is not reflected in the current Playground list and specifically to switch views in Playground?. The closest, relating to 'saving off 'data' is https://github.com/hyperledger/composer/issues/1240. The scope is in-browser testing of multiple network models Iin Playground (If you've deployed your network containing your model , you can connect to the runtime Fabric (dev/test) and still get the historical transaction data etc.
mahoney1 (Fri, 25 Aug 2017 09:58:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=r6SY3nymmGn66vWyP) @ccorley I suggest to raise a Github issue - what you're requesting is not reflected in the current Playground list and specifically ability to switch views in Playground? You can have multiple model files (.cto) files in the same business network FYI. The closest, relating to this is saving off / exporting 'data' you create (or is submitted, such as transactions) see https://github.com/hyperledger/composer/issues/1240. The scope is in-browser testing of multiple network models in Playground (as, If you've deployed your network containing your model , you can connect to the runtime Fabric (dev/test) and still get the asset/participant/historical transaction data or data in registries relating to that modeled network etc).
mahoney1 (Fri, 25 Aug 2017 11:42:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=v4eyhMfGNSrQrCMrh) @abelkuruvilla hi there and welcome ! The user id and password represents firstly a 'default admin id and password' (for this dev setup) to connect to the business network (to then 'discover' and create Swagger schema and REST endpoints for), that is deployed to your running Fabric (blockchain) environment. Hyperledger Composer has its own runtime that is installed on each of the Fabric peers running in the Fabric network - if you like, Composer is a layer of abstraction above the Fabric blockchain infrastructure - (see also here for the default Fabric CA server setup http://hyperledgerdocs.readthedocs.io/en/latest/ca_setup.html)
mahoney1 (Fri, 25 Aug 2017 11:42:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=v4eyhMfGNSrQrCMrh) @abelkuruvilla hi there and welcome ! The user id and password represents firstly a 'default admin id and password' (for this dev setup) to connect to the business network (to then 'discover' and create Swagger schema and REST endpoints for), that is deployed to your running Fabric (blockchain) environment. Hyperledger Composer has its own runtime that is installed on each of the Fabric peers running in the Fabric network - if you like, Composer is a layer of abstraction above the Fabric blockchain infrastructure - (see also here for more info on the default Fabric CA server setup http://hyperledgerdocs.readthedocs.io/en/latest/ca_setup.html )
mahoney1 (Fri, 25 Aug 2017 11:44:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TAf2KdJyDiAyNRGdb) @lucrezia.dm send your BNA file by DM and I'll take a look - there's clearly something amiss in the business network definition.
AuHuR (Fri, 25 Aug 2017 11:47:52 GMT):
Has joined the channel.
mahoney1 (Fri, 25 Aug 2017 12:32:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HPhwe2d7zXYH6PRbj) @mescoba1 See examples here https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/lib/logic.js(access to registry classes and objects from your TP functions and how to use relationships and access/set enumeration types - the model file is here -
under 'models' https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/models/auction.cto ) - . This article (see Composer bit near the bottom) will also provide more insight. https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/ . The bond sample network gives you example if using the `concept` https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/models/bond.cto and sample code is here https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js eg ```
paymentFrequency.periodMultiplier = 6;
paymentFrequency.period = 'MONTH';
const bond = factory.newConcept(NS, 'Bond');
bond.instrumentId = ['ACME'];
bond.exchangeId = ['NYSE'];
bond.maturity = new Date('2018-02-27T21:03:52+00:00');
bond.parValue = 1000;``` Appending to an array of asset or manipulating an array in an asset is shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js
mahoney1 (Fri, 25 Aug 2017 12:32:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HPhwe2d7zXYH6PRbj) @mescoba1 See examples here https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/lib/logic.js(access to registry classes and objects from your TP functions and how to use relationships and access/set enumeration types - the model file is here -
under 'models' https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/models/auction.cto ) - . This article (see Composer bit near the bottom) will also provide more insight. https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/ . The bond sample network gives you example of creating a new `concept` resource https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/models/bond.cto with sample code here https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js eg ```
paymentFrequency.periodMultiplier = 6;
paymentFrequency.period = 'MONTH';
const bond = factory.newConcept(NS, 'Bond');
bond.instrumentId = ['ACME'];
bond.exchangeId = ['NYSE'];
bond.maturity = new Date('2018-02-27T21:03:52+00:00');
bond.parValue = 1000;``` Appending to an array of asset or manipulating an array in an asset is shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js
mahoney1 (Fri, 25 Aug 2017 12:32:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HPhwe2d7zXYH6PRbj) @mescoba1 See examples here https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/lib/logic.js (access to registry classes and objects from your TP functions and how to use relationships and access/set enumeration types - the model file is here -
under 'models' https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/models/auction.cto ) - . This article (see Composer bit near the bottom) will also provide more insight. https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/ . The bond sample network gives you example of creating a new `concept` resource https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/models/bond.cto with sample code here https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js eg ```
paymentFrequency.periodMultiplier = 6;
paymentFrequency.period = 'MONTH';
const bond = factory.newConcept(NS, 'Bond');
bond.instrumentId = ['ACME'];
bond.exchangeId = ['NYSE'];
bond.maturity = new Date('2018-02-27T21:03:52+00:00');
bond.parValue = 1000;``` Appending to an array of asset or manipulating an array in an asset is shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js
mescoba1 (Fri, 25 Aug 2017 16:38:59 GMT):
Under the query tutorial, I saw the use of events in the model file. How do you use events to get notifications? Are there any examples?
mahoney1 (Fri, 25 Aug 2017 16:59:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=n44bfemkq8uihaFZs) @mescoba1 See the sample PII network Model https://github.com/hyperledger/composer-sample-networks/tree/master/packages/pii-network/models code -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/lib/logic.js and example of subscription here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js
mescoba1 (Fri, 25 Aug 2017 17:01:28 GMT):
Thanks @mahoney1 :thumbsup:
mescoba1 (Fri, 25 Aug 2017 17:41:42 GMT):
Can a concept have a concept have a relationship?
mescoba1 (Fri, 25 Aug 2017 17:41:42 GMT):
Can a concept have a relationship?
mahoney1 (Fri, 25 Aug 2017 18:09:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hqrBEezHccnTeeXNs) @mescoba1 yes. Examples here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/models/bond.cto and https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js
mescoba1 (Fri, 25 Aug 2017 18:19:53 GMT):
Okay one last question for now, I see that pii example is able to emit events, how can I handle an event has occured?
theathibm (Fri, 25 Aug 2017 20:46:21 GMT):
I'm looking to "automate": 1. creation of participant instances, 2. "issuing" of identities for all the created participants. 3. creation or wallets for all the participants 4. the placement of all identities or participants into the corresponding wallets.
theathibm (Fri, 25 Aug 2017 20:46:21 GMT):
I'm looking to "automate": 1. creation of participant instances, 2. "issuing" of identities for all the created participants. 3. creation of wallets for all the participants 4. the placement of all identities for the participants into the corresponding wallets.
theathibm (Fri, 25 Aug 2017 20:46:25 GMT):
Any thoughts?
theathibm (Fri, 25 Aug 2017 20:46:31 GMT):
or samples?
sstone1 (Fri, 25 Aug 2017 21:09:55 GMT):
@mescoba1 you can use the Node.js client API in `composer-client` to subscribe to events, or the REST server using WebSockets - there's some unreleased docs for the latter here: https://hyperledger.github.io/composer/unstable/integrating/publishing-events.html
sstone1 (Fri, 25 Aug 2017 21:11:08 GMT):
@theathibm 1) and 2) can be automated using the APIs or CLI, however 3) and 4) are not yet possible with the REST server today - you cannot administer somebody else's wallet
dusanz (Fri, 25 Aug 2017 22:09:39 GMT):
Has joined the channel.
ErroneousFatality (Sat, 26 Aug 2017 03:40:28 GMT):
Has joined the channel.
ErroneousFatality (Sat, 26 Aug 2017 04:29:31 GMT):
Excuse me if this is a beginner question. Once I've issued an identity for a participant, and now have my userId and userSecret, how do I use them to identify myself using the REST API so I can execute transactions as a participant?
ErroneousFatality (Sat, 26 Aug 2017 04:29:31 GMT):
Excuse me if this is a beginner question. Once I've issued an identity for a participant, and now have my userId and userSecret, how do I use them to identify myself using the REST API so I can execute transactions as that participant?
ErroneousFatality (Sat, 26 Aug 2017 04:29:31 GMT):
Could you help me out with my current situation perhaps.
We've created a remote Composer on the IBM server. We've successfully deployed our .cto, script and access code there. I've created a transaction which some Participants (moderators) can call to create new Participants (users). The moderator sends the participantId to the user he wants to add to the network. The user calls the default api call POST /system/identities/issue, which issues him a new identity for that participantId.
After that what should the new user call to continue the certification process?
I'm aware that maybe this whole approach could be wrong, so please correct me if it is.
rainey (Sat, 26 Aug 2017 08:10:27 GMT):
Has joined the channel.
sstone1 (Sat, 26 Aug 2017 09:01:28 GMT):
@ErroneousFatality see the docs here: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
abelkuruvilla (Sat, 26 Aug 2017 09:23:24 GMT):
I have been reading just the Hyperledger Composer dev guide. Should I work around with Fabric first? Is it necessary?[ ](https://chat.hyperledger.org/channel/composer?msg=M7CDkiZQna7N3JGbQ) @mahoney1
flycoderRuan (Sat, 26 Aug 2017 09:31:58 GMT):
Has joined the channel.
flycoderRuan (Sat, 26 Aug 2017 09:41:18 GMT):
Hello, I have some trouble here. I try to use composer to connect the network built by files of balance of tranfer , and there is an error :`Error: Error trying deploy. Error: Error trying to instantiate chaincode. Error: Error: SERVICE_UNAVAILABLE`
sstone1 (Sat, 26 Aug 2017 09:54:51 GMT):
@flycoderRuan which enrolment ID and secret are you specifying on the deploy command?
Stas Sorokin (Sat, 26 Aug 2017 10:22:30 GMT):
Has joined the channel.
flycoderRuan (Sat, 26 Aug 2017 10:38:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=t7Suu23frYggECBLH) @sstone1 Id PeerAdmin secret randomString
deker1991 (Sat, 26 Aug 2017 12:40:59 GMT):
Has joined the channel.
ErroneousFatality (Sat, 26 Aug 2017 13:45:48 GMT):
@sstone1 Thanks for the reply, but I've read it and still don't understand how. I don't want to use a 3rd party autherization, I want my users to log in with their userName and userSecret after I create an identity for their Participant model.
sstone1 (Sat, 26 Aug 2017 13:59:59 GMT):
@ErroneousFatality it doesn't work that way i'm afraid. the enrolment secret is a one time token that you can send to the Fabric certificate authority - it return the Fabric CA gives you an enrolment certificate that you can use to sign transactions. that process is called enrolment.
sstone1 (Sat, 26 Aug 2017 13:59:59 GMT):
@ErroneousFatality it doesn't work that way i'm afraid. the enrolment secret is a one time token that you can send to the Fabric certificate authority - in return the Fabric CA gives you an enrolment certificate that you can use to sign transactions. that process is called enrolment.
sstone1 (Sat, 26 Aug 2017 14:00:19 GMT):
you (or Composer for that matter) cannot use it as a method to authenticate users - it's not a password.
ErroneousFatality (Sat, 26 Aug 2017 15:18:31 GMT):
@sstone1
We deployed the Composer to the IBM remote servers. We successfully deployed scripts and everything works as expected when we use the playground with various Roles, Identities and Participants.
I've created a transaction so that users with identities bound to a Moderator role can create new User participants.
The idea was that moderator should send the ParticipantId to the user and then the user could call call the POST /system/identities/issue with that ParticipantId and a userId.
Now our user has the userSecret.
What should he do with it now, through the API?
sstone1 (Sat, 26 Aug 2017 15:22:59 GMT):
as per the link above, you need to configure the REST server with an authentication mechanism
sstone1 (Sat, 26 Aug 2017 15:23:09 GMT):
there are 300 available passport strategies to choose from
sstone1 (Sat, 26 Aug 2017 15:23:53 GMT):
each authenticated user then gets a "wallet", a private space on the REST server where they can put Blockchain identities (enrolment ID/secrets/certificates) for interacting with the Blockchain business network work
sstone1 (Sat, 26 Aug 2017 15:23:53 GMT):
each authenticated user then gets a "wallet", a private space on the REST server where they can put Blockchain identities (enrolment ID/secrets/certificates) for interacting with the Blockchain business network
ErroneousFatality (Sat, 26 Aug 2017 15:24:22 GMT):
Oh, great. Thank you. Will look into that now. Sorry for the hassle.
sstone1 (Sat, 26 Aug 2017 15:24:38 GMT):
np
ErroneousFatality (Sat, 26 Aug 2017 16:14:14 GMT):
So, since we're using the IBM remote servers, where could I ask how I could change their rest servers' configurations? Is this channel still ok for that? I've found their config file but don't know how to change it before restarting the rest server.
sstone1 (Sat, 26 Aug 2017 16:17:23 GMT):
this isn't really the right place for discussing IBM specific stuff but i'm not sure where the right place is at the moment
sstone1 (Sat, 26 Aug 2017 16:17:28 GMT):
i assume you're using these scripts?
sstone1 (Sat, 26 Aug 2017 16:17:29 GMT):
https://github.com/IBM-Blockchain/ibm-container-service
sstone1 (Sat, 26 Aug 2017 16:17:53 GMT):
the REST server configuration is specified in Kubernetes files:
https://github.com/IBM-Blockchain/ibm-container-service/blob/master/cs-offerings/free/kube-configs/composer-rest-server.yaml
ErroneousFatality (Sat, 26 Aug 2017 16:22:01 GMT):
Yes, that's the configuration into which I'd like to insert the COMPOSER_PROVIDERS config object for autherization.
ErroneousFatality (Sat, 26 Aug 2017 16:22:23 GMT):
We followed this extremely simple guide for deployment https://ibm-blockchain.github.io/interacting/
ErroneousFatality (Sat, 26 Aug 2017 16:23:36 GMT):
I'll try to change the local file and redeploy using the kubernetes
ErroneousFatality (Sat, 26 Aug 2017 16:48:35 GMT):
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
This guide only covers how to add github authentication config. I'm wondering how should I know how to fill out the config for other authentication strategies? Like 0Auth for example?
gsarwate (Sat, 26 Aug 2017 17:43:56 GMT):
Has joined the channel.
Vrai1127 (Sat, 26 Aug 2017 19:08:46 GMT):
Has joined the channel.
Vrai1127 (Sat, 26 Aug 2017 19:09:00 GMT):
My Question is pretty fundamental. Q is who hosts the network? Does one of the organization host network to get it started and others join the network through peers? Again these peers are running in the network hosted by one organization. So doesn't that mean one of the organization has little more control than others? Actually I'm fine with it if that's how it has to be. I just want to be clear that network is hosted/originated by 1 org, others join the network through proper credentials. But all the components like ledger, couchdb, chaincode etc for each peer are all within that hosted network not in individual's organization own infrastructure.
ErroneousFatality (Sun, 27 Aug 2017 00:26:48 GMT):
Could someone help me out how I can set the Composer to use CouchDB so I can run queries properly? Otherwise I'm afraid my whole 2-day project is a bust if I can't query my blockchain for results.
ErroneousFatality (Sun, 27 Aug 2017 00:27:35 GMT):
I see the issue for adding it to the configuration, which was closed by @sstone1 https://github.com/hyperledger/composer/issues/969, but am unsure if support for it was added in the end.
ErroneousFatality (Sun, 27 Aug 2017 00:52:07 GMT):
So, the two things I'm missing are: how to know to alter the config files appropriately to use the CouchDB, and to use (lets say) OAuth for authorization.
ErroneousFatality (Sun, 27 Aug 2017 04:03:08 GMT):
@sstone1 Could you give me an example of how the composer-rest-server.yaml COMPOSER_PROVIDERS value would look like if I'd use Auth0 or SAML. I'm not sure where to find that info.
Soumen 4 (Sun, 27 Aug 2017 07:11:14 GMT):
Has joined the channel.
fintanmcelroy (Sun, 27 Aug 2017 08:03:19 GMT):
Has joined the channel.
flycoderRuan (Sun, 27 Aug 2017 12:20:28 GMT):
Could you help me please? I set up a network using the "balabce-transfer" files in "fabric-samples".i run the runApp.sh and testAPI.sh and i find there are 10 dockers online.But when i want to use the composer playground to connect the network,i meet some trouble.There is the error:Error trying to instantiate chaincode. Error: Error: SERVICE_UNAVAILABLE`.
flycoderRuan (Sun, 27 Aug 2017 12:25:47 GMT):
i use the id PeerAdmin and the secret randomString.And i fill in the connection file according to the "network-config.json" file in the "balance-transfer".But i still failed.What should I do?
flycoderRuan (Sun, 27 Aug 2017 13:02:20 GMT):
By the way, how can i connect the network in another computer using the composer in my computer?i try but i meet some trouble.If i use the Id PeerAdmin and secret randomString, it report the error:Failed to connect: Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]. If i use the id admin and the password adminpw,it report the error:Failed to connect: Error: Error trying to list instantiated chaincodes. Error: chaincode error (status: 500, message: Authorization for GETCHAINCODES on channel getchaincodes has been denied with error Failed verifying that proposal's creator satisfies local MSP principal during channelless check policy with policy [Admins]: [This identity is not an admin]). It makes me confused.Is there something i need to pay attention to ? Thank you very much.
flycoderRuan (Sun, 27 Aug 2017 13:12:51 GMT):
When i use the Id admin and the secret adminpw, the computer which run the network report:Error handling message: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")]]; When i use the id PeerAdmin and the secret randomString,it report that:fail to get identity PeerAdmin.
deraw (Sun, 27 Aug 2017 13:37:34 GMT):
Has joined the channel.
deraw (Sun, 27 Aug 2017 13:46:23 GMT):
When I run the command I get an error: The "-a" option does not exist. [ ](https://chat.hyperledger.org/channel/composer?msg=MsDrWNXtccNjQxgis) @mahoney1
deraw (Sun, 27 Aug 2017 13:46:33 GMT):
I installed composer from curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
deraw (Sun, 27 Aug 2017 13:46:52 GMT):
Is it the wrong one? Where can I find the right composer
Pasteis (Sun, 27 Aug 2017 13:49:52 GMT):
The composer rest server can be started without using namespaces. How can I change the
Pasteis (Sun, 27 Aug 2017 13:49:52 GMT):
The composer rest server can be started without using namespaces. How can I remove the fully qualified reference fields, as in "owner": "resource:org.acme.trading.Trader#TRADER1" to be TRADER1?
Pasteis (Sun, 27 Aug 2017 13:49:52 GMT):
The composer rest server can be started without using namespaces. How can I remove the fully qualified reference fields, as in "resource:org.acme.trading.Trader#TRADER1" to be TRADER1?
deraw (Sun, 27 Aug 2017 14:17:52 GMT):
I get: command not found: composer
deraw (Sun, 27 Aug 2017 14:18:05 GMT):
but followed this guide: https://hyperledger.github.io/composer/installing/development-tools.html
deraw (Sun, 27 Aug 2017 14:18:13 GMT):
what could be wrong?
deraw (Sun, 27 Aug 2017 14:44:37 GMT):
When I'm running npm install the integrated composer command works, but not from the command line
deraw (Sun, 27 Aug 2017 16:14:55 GMT):
when running the composer command is it referring to: https://getcomposer.org ?
timsamshuijzen (Sun, 27 Aug 2017 18:42:14 GMT):
Has joined the channel.
JGraft (Sun, 27 Aug 2017 18:58:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yxi3Rz5wcwSuR8EPu) @deraw no
JGraft (Sun, 27 Aug 2017 18:58:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rdthbSAGvv95ry9us) @deraw you need to run ```npm install -g composer-cli```
deraw (Sun, 27 Aug 2017 19:30:18 GMT):
Thank you for your reply. I installed that command before. After deinstalled the wrong composer I get the following error: '-bash: /usr/local/bin/composer: No such file or directory'
mahoney1 (Sun, 27 Aug 2017 21:28:31 GMT):
@deraw its `composer archive create --sourceType dir --sourceName . -a dist/my-network.bna`
mahoney1 (Sun, 27 Aug 2017 21:45:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wN7BXpuRxksY8i7Ap) @deraw see https://askubuntu.com/questions/716230/cant-remove-composer-via-terminal
mahoney1 (Sun, 27 Aug 2017 21:45:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wN7BXpuRxksY8i7Ap) @deraw see https://askubuntu.com/questions/716230/cant-remove-composer-via-terminal then suggest a reboot when done, then install hyperledger
mahoney1 (Sun, 27 Aug 2017 21:45:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wN7BXpuRxksY8i7Ap) @deraw see https://askubuntu.com/questions/716230/cant-remove-composer-via-terminal then suggest a reboot when done, then install hyperledger composer
mescoba1 (Mon, 28 Aug 2017 00:56:31 GMT):
I was having trouble getting a transaction to go through, when I use the explorer to invoke a transaction I get this error: ```{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke chaincode. Error: chaincode error (status: 500, message: TypeError: cannot read property 'peerID' of undefined)",
"stack": "Error: Error trying invoke chaincode. Error: chaincode error (status: 500, message: TypeError: cannot read property 'peerID' of undefined)\n at _initializeChannel.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:863:34)"
}
}```
mescoba1 (Mon, 28 Aug 2017 00:57:26 GMT):
Message Attachments
mescoba1 (Mon, 28 Aug 2017 01:06:36 GMT):
Message Attachments
levinkwong (Mon, 28 Aug 2017 03:50:39 GMT):
Hi all,
I get the following errors while running `composer network list`
```
List business network insurance-network
error trying to query chaincode. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
```
seungchan (Mon, 28 Aug 2017 05:33:23 GMT):
HI, i playing tutorial.(developer guide)
seungchan (Mon, 28 Aug 2017 05:35:19 GMT):
I tried to deploy Fabric network, but The error is shown. Please help me, I don't know what it means.. (please, understand my English skill..)
seungchan (Mon, 28 Aug 2017 05:35:22 GMT):
Message Attachments
ParthRaval (Mon, 28 Aug 2017 06:08:52 GMT):
Has joined the channel.
ParthRaval (Mon, 28 Aug 2017 06:09:26 GMT):
Hello All, Is there any way to compare date using hyperledger composer query language?
AnkitSingh5 (Mon, 28 Aug 2017 09:12:45 GMT):
```this.bizNetworkConnection
.issueIdentity('org.acme.biznet.User#user@test.com', 'user')
})```
`Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]`
ibmamnt (Mon, 28 Aug 2017 09:15:05 GMT):
Appreciate if someone answer to my question in stackover flow.
https://stackoverflow.com/questions/45915565/how-can-i-specify-canonical-server-name-in-composer-connection-profile
levinkwong (Mon, 28 Aug 2017 09:29:33 GMT):
@ParthRaval
This works for me
```
trxnLastUpdateDate > _$startDate
```
ibmamnt (Mon, 28 Aug 2017 09:35:21 GMT):
Oh, sorry I found a solution. "hostnameOverride" option.
ParthRaval (Mon, 28 Aug 2017 09:40:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zMSWPBArGK28jSSry) @levinkwong thanks. But I want to compare it with today's date. Is there any function available in query language to get current date without user input?
ParthRaval (Mon, 28 Aug 2017 10:00:01 GMT):
There is DateTime data type available. Can somebody please reference methods of it?
lucrezia.dm (Mon, 28 Aug 2017 11:27:28 GMT):
Hi !
I'm using online Playground and I modified the starting code "basic-sample-network" locally and I tried to upload it on the platform but it occours an error "Cannot import an invalid Business Network Definition. Found Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html"
(I downloaded the package, I opened and modified it and I create again a .zip package and I modified the name extention lastly).
How can I solve this problem? Thanks. :-)
ParthRaval (Mon, 28 Aug 2017 12:14:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QqhdKv9KsPyoYFXM6) @lucrezia.dm After npm install .bna file will be generated in dist folder. Upload that .bna file without changing its extension to .zip.
cweiers (Mon, 28 Aug 2017 12:30:14 GMT):
Has joined the channel.
cweiers (Mon, 28 Aug 2017 12:47:21 GMT):
@seungchan Your Problem seems to be referenced here : https://stackoverflow.com/questions/45026265/error-failed-to-save-connection-profile-hlfv1. the ~./composer-connection-profiles/ directory has to be writable for your user
koushikd05 (Mon, 28 Aug 2017 13:18:00 GMT):
Has joined the channel.
MaheshBiradar (Mon, 28 Aug 2017 14:16:02 GMT):
Has joined the channel.
MaheshBiradar (Mon, 28 Aug 2017 14:17:24 GMT):
Is there any business use case for two Organization buisines network..any tutorials for this please help..
theathibm (Mon, 28 Aug 2017 14:33:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=cRT7mD3v6n7uN6PX3) @sstone1 Thanks for the reply!
isramos (Mon, 28 Aug 2017 15:42:26 GMT):
tls ca
sbrakev (Mon, 28 Aug 2017 18:26:06 GMT):
Is the sample app generated by composer written in Angular 2.x or Angular 1.x?
jdockter (Mon, 28 Aug 2017 18:30:15 GMT):
@sbrakev believe its actually Angular 4
jdockter (Mon, 28 Aug 2017 18:31:21 GMT):
https://github.com/hyperledger/composer/issues/694
sbrakev (Mon, 28 Aug 2017 18:32:22 GMT):
ty!
isramos (Mon, 28 Aug 2017 18:59:29 GMT):
Does Composer v0.11.3 support a TLS enabled CA? I don't see option to upload TLS cert in the Playground's Connection Profile window (cc: @Suma )
mescoba1 (Mon, 28 Aug 2017 20:07:28 GMT):
How do I check if a given Asset/Participant in a given Transaction exists? I want to create a given the asset if it does not exist
jdockter (Mon, 28 Aug 2017 20:14:26 GMT):
@mescoba1 should be able to do something like this ``` return getAssetRegistry('org.acme.Example')
.then(function (registry) {
return registry.exists(assetID);
}).then(function (assetFound) {
if (assetFound) {
console.log('found');
} else {
console.log('not found');
}
} ```
mescoba1 (Mon, 28 Aug 2017 20:16:40 GMT):
Thank you @jdockter :+1:
giridharg (Mon, 28 Aug 2017 20:41:48 GMT):
@here I am trying to do couple of additions to composer asset registries using single composer transaction (using composer rest server). And I see this error in the logs:
2017-08-28 20:14:59.669 UTC [shim] handleGetState -> ERRO f2f4 [1a1c14f3]GetState received error ERROR
2017-08-28 20:14:59.669 UTC [Composer] Debug -> DEBU f2f5 Exiting DataCollection.add 0
Catch of Add : Error: [1a1c14f3]No ledger context for GetState. Sending ERROR
How can I resolve this?
mescoba1 (Mon, 28 Aug 2017 22:57:41 GMT):
I had a question about creating new resources, I'm trying to create a new Asset if the ID of the one provided doesn't exist. When I try to account for this, the Asset does not get created in the registry nor update an existing Asset. What am I doing wrong? I feel like it's something involving value vs reference: ```function pushSoftware(push) {
// ASSUMPTIOM: Build and Peer already exits
var factory = getFactory();
var NS = 'org.acme.destro';
var software = push.software;
var found = true; //refers to if push.software exists
// Might want to create a new Build on the spot
return getAssetRegistry(NS + '.Build')
.then(function (buildRegistry) {
return buildRegistry.exists(push.software.buildID);
}).then(function (assetFound) {
if (!assetFound) {
found = false;
software = factory.newResource(NS, 'Build', push.software.buildID);
}
});
console.log('Pushing new software...');
/* Update software version and corresponding file */
software.version = push.newVersion;
software.data = push.newData; // Pointer to the right file
/* Call function to hash the newData */
var hashedData = hashGivenFile(push.newData);
software.dataHash = hashedData;
/* Have builder sign the given build */
var builder = push.builder;
console.log('Peer: ' + builder.peerID + " Key: " + builder.peerPubKey);
var signature = factory.newConcept(NS, 'Signature');
signature.peerSig = generateSignature(builder);
signature.signer = factory.newRelationship(NS, 'Peer', builder.peerID);
software.builderSig = signature;
software.currStatus = 'BUILT';
console.log('Build was built by peer ' + builder.peerID);
var event = factory.newEvent(NS,'newBuild');
event.software = software;
emit(event);
/* Get rid off PeerSigs: new Build => new Sigs */
if(software.peerSigs != null){
software.peerSigs = null;
}
if(!found){ // reset the pointer
push.software = software;
}
return getAssetRegistry(NS + '.Build')
.then(function (assetRegistry) {
return assetRegistry.update(push.software);
});
}```
mescoba1 (Mon, 28 Aug 2017 23:24:49 GMT):
Got rid the `return` in `return getAssetRegistry(NS + '.Build')`
ilfrich (Tue, 29 Aug 2017 04:14:14 GMT):
Has joined the channel.
adrianblakey (Tue, 29 Aug 2017 04:26:28 GMT):
How can I pretty print (toString) an object? I tried JSON.stringify and got a msg saying use JSerializer.toJSON - which is a bust.
ParthRaval (Tue, 29 Aug 2017 04:57:55 GMT):
How can I get current Date in Query language? SQL function Now() not working.
coder-ajay (Tue, 29 Aug 2017 06:01:10 GMT):
Hi .. Is there a REST API available for getParticipantRegistry(id) and getCurrentParticipant()?
jingweili (Tue, 29 Aug 2017 06:32:09 GMT):
Hi all , I got error when deploying a network.
jingweili (Tue, 29 Aug 2017 06:32:17 GMT):
`casoul@7d5dcd60b767:~/my-network/dist$ composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s sdf
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.1.8
Description: The Hello World of Hyperledger Composer samples
✖ Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying install chaincode. Error: The creator's signature over the proposal is not valid, err The signature is invalid
Command failed
`
jingweili (Tue, 29 Aug 2017 06:32:49 GMT):
casoul@7d5dcd60b767:~/my-network/dist$ composer -v
composer-cli v0.11.3
composer-admin v0.11.3
composer-client v0.11.3
composer-common v0.11.3
composer-runtime-hlf v0.11.3
composer-runtime-hlfv1 v0.11.3
jingweili (Tue, 29 Aug 2017 06:33:38 GMT):
I got an error message in peer docker,
jingweili (Tue, 29 Aug 2017 06:33:40 GMT):
2017-08-29 06:27:32.344 UTC [eventhub_producer] validateEventMessage -> DEBU 3ad ValidateEventMessage starts for signed event 0xc421aec5a0
2017-08-29 06:27:32.345 UTC [eventhub_producer] Chat -> ERRO 3ae Error handling message: event message must be properly signed by an identity from the same organization as the peer: [failed verifying the event signature: The signature is invalid]
coder-ajay (Tue, 29 Aug 2017 06:33:52 GMT):
Hi … not exactly a composer question. Which is the best platform for hosting composer generated angular app? AWS?
coder-ajay (Tue, 29 Aug 2017 06:33:52 GMT):
Hi … not exactly a composer question. Which is the best platform for hosting composer generated angular app, so that a URL is available to access the app? ... AWS?
sstone1 (Tue, 29 Aug 2017 07:19:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tNcnMjbgja7wMWLD9) @ErroneousFatality you need to use the Passport documentation for this; you can find the list of supported strategies and links to the documentation for each strategy here: http://passportjs.org
DushyantBhalgami (Tue, 29 Aug 2017 07:22:47 GMT):
I'm having one question regarding EnrollmentId and EnrollmentSecret...
In my application, even if I'm providing a WRONG enrollmentSecret, code is working fine, for example, it connects to the Business Network as well as creates the resources (participant)
So can you please let me know, what is the use of enrollmentSecret? How can I restrict the access to business network when enrillmentSecret is wrong
sstone1 (Tue, 29 Aug 2017 07:25:32 GMT):
@DushyantBhalgami enrolment secret is only used the first time you interact with a Blockchain network. the enrolment secret is passed to the Fabric CA and exchanged for an enrolment certificate as part of a process called enrolment. that enrolment certificate gets put into the keyValStore directory specified in your connection profile. once we have an enrolment certificate, the enrolment secret is ignored.
sstone1 (Tue, 29 Aug 2017 07:25:52 GMT):
we have a GitHub issue open to make the enrolment secret optional in the CLIs/APIs to reflect this
DushyantBhalgami (Tue, 29 Aug 2017 07:27:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZjPj9rxMnxJvfyST8) @sstone1 So is there any way where I can restrict or check for the identity of a user before performing the certain operation? Something like Username and Passowrd?
sstone1 (Tue, 29 Aug 2017 07:29:28 GMT):
@DushyantBhalgami if you are using the REST API, you can authenticate users of the REST API using Passport (which supports lots of different authentication mechanisms). see here for more information: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
sstone1 (Tue, 29 Aug 2017 07:29:49 GMT):
for the Node.js APIs or CLIs it is up to you to protect access to the enrolment certificates in the keyValStore
nikit-os (Tue, 29 Aug 2017 07:35:20 GMT):
Has joined the channel.
sstone1 (Tue, 29 Aug 2017 08:02:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=j23qmBe2zghK97HmP) @coder-ajay REST APIs are generated for each participant type, e.g. `/api/SampleParticipant` - you can use `/api/system/ping` to get the fully qualified identifier of the current participant
rohitaneja8 (Tue, 29 Aug 2017 08:59:26 GMT):
How can i manage my users, their certificate, where can i store them? and use valid identities to perform transactions in composer? Any reference?
wy (Tue, 29 Aug 2017 09:08:49 GMT):
hi guys
wy (Tue, 29 Aug 2017 09:09:26 GMT):
for the certificate field in my user file:
wy (Tue, 29 Aug 2017 09:10:02 GMT):
```{"name":"admin","mspid":"Org1MSP","roles":null,"affiliation":"","enrollmentSecret":"","enrollment":{"signingIdentity":"096d49bb3f64f82c3e35cef6348387891fb4dc29ef5f26fb6c4167045d7ba2bf","identity":{"certificate":"-----BEGIN CERTIFICATE-----\nMIICFjCCAbygAwIBAgIQWiKB6xSGpmb8WE+3YyFRvTAKBggqhkjOPQQDAjBxMQsw\nCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy\nYW5jaXNjbzEYMBYGA1UEChMPbWFzLmV4YW1wbGUuY29tMRswGQYDVQQDExJjYS5t\nYXMuZXhhbXBsZS5jb20wHhcNMTcwODIxMTA0ODU2WhcNMjcwODE5MTA0ODU2WjBa\nMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2Fu\nIEZyYW5jaXNjbzEeMBwGA1UEAwwVQWRtaW5AbWFzLmV4YW1wbGUuY29tMFkwEwYH\nKoZIzj0CAQYIKoZIzj0DAQcDQgAEI5AyduroislS4auoM25AOzG5m+GXPdppGi7j\n3h6/lpK50gnypUyOBPTML9fBjiBu2s4Auura5vYe+m/w8a/N9aNNMEswDgYDVR0P\nAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAg5WteuR6tLEW/fwVa\nFk0kL7q2Wde4t30XrspL1HemIHEwCgYIKoZIzj0EAwIDSAAwRQIhAILKNhvzgCX6\nj6YWXOvShhlfwzKbCaFznjI+e41qHZvrAiBE/SqrXe8W7mI8Udgp9LoZVnhA4Mhj\nyddnRgYDwIzJEQ==\n-----END CERTIFICATE-----\n"}}}```
wy (Tue, 29 Aug 2017 09:10:13 GMT):
what certificate is this actually referring to?
DushyantBhalgami (Tue, 29 Aug 2017 09:15:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qZbnwywRFfMj2AKrx) @sstone1 If I go with the REST API option, all the transactions will be marked against the one identity though I'm using different users to invoke the REST API, correct?
How can I replicate the certificates for one identity on multiple machines? For example, I'm having the same business network running over multiple Peers how can I replicate the identity to all the peers?
sstone1 (Tue, 29 Aug 2017 09:18:21 GMT):
@DushyantBhalgami if you read that documentation, each authenticated user of the REST API can upload their own identities into their wallets for signing transactions
sstone1 (Tue, 29 Aug 2017 09:18:55 GMT):
i don't understand your question about replicating it to multiple peers
sstone1 (Tue, 29 Aug 2017 09:19:23 GMT):
you only need to replicate the identity across the different machines running applications that are signing and submitting transactions to the blockchain as that participant
sstone1 (Tue, 29 Aug 2017 09:20:00 GMT):
@wy the certificate is the certificate of the identity used to sign and submit transactions to the blockchain
sstone1 (Tue, 29 Aug 2017 09:20:54 GMT):
@rohitaneja8 please read the documentation - this topic is discussed in detai, the starting point is here: https://hyperledger.github.io/composer/managing/participantsandidentities.html
sstone1 (Tue, 29 Aug 2017 09:20:54 GMT):
@rohitaneja8 please read the documentation - this topic is discussed in detail, the starting point is here: https://hyperledger.github.io/composer/managing/participantsandidentities.html
wy (Tue, 29 Aug 2017 09:21:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GAFpJyfkQ3hXknCpY) @sstone1 is this cert related to the key files which "signingidentity" is referring to?
sstone1 (Tue, 29 Aug 2017 09:21:39 GMT):
correct - signingidentity points to the public and private key files, the certificate contains the public key + a bit more info
wy (Tue, 29 Aug 2017 09:22:42 GMT):
is there anyway to generate the files quickly? i have the private key and the cert generated using crypto-gen
wy (Tue, 29 Aug 2017 09:23:09 GMT):
but is there a way to ingest these 2 files to produce the 3 files i need?
sstone1 (Tue, 29 Aug 2017 09:23:37 GMT):
`composer identity import`
sstone1 (Tue, 29 Aug 2017 09:23:58 GMT):
it will import the specified identity into your wallet (the keyValStore directory)
DushyantBhalgami (Tue, 29 Aug 2017 09:25:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QkpBoFdhEyWE2QCfq) @sstone1 Any reference on how to replicate identity across different machines?
sstone1 (Tue, 29 Aug 2017 09:29:16 GMT):
@DushyantBhalgami you can just copy the directory between machines
DushyantBhalgami (Tue, 29 Aug 2017 09:30:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bsSaymDdvmFH8dp98) @sstone1 `.composer-credentials` this one right?
sstone1 (Tue, 29 Aug 2017 09:30:46 GMT):
correct
sstone1 (Tue, 29 Aug 2017 09:30:57 GMT):
it's the value of the `keyValStore` in your connection profile
wy (Tue, 29 Aug 2017 09:39:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sgbiRAFGiKQ6tSAan) @sstone1 where do the files get stored into after running the command?
sstone1 (Tue, 29 Aug 2017 09:43:10 GMT):
the answer is above ;)
JeremyH (Tue, 29 Aug 2017 09:47:59 GMT):
Hey everyone,
JeremyH (Tue, 29 Aug 2017 09:47:59 GMT):
Hey everyone, I'm working on a blockchain demo, where I'd like to show three different participants in different browsers interacting, each with their own Github (or other) authentication. Currently I have changed the default identity in order to simulate being different participants, but only one at a time. In order to do this simultaneously, my understanding is that I will need have a node running for each participant - is that correct?
wy (Tue, 29 Aug 2017 09:49:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mFyv258GwywrtDqNE) @sstone1 ah, of course.. thanks!!
sstone1 (Tue, 29 Aug 2017 10:05:45 GMT):
@JeremyH you don't need multiple nodes for each participant for that demo - unless you want to also show those participants separately endorsing transactions
JeremyH (Tue, 29 Aug 2017 10:18:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CWrXrYutAD3srNZz6) @sstone1 Hey sstone1, thanks for the answer as usual. Therefore, is there a way that I can log in as different identities (using separate OAuth callbacks) simultaneously when accessing the same REST API? Also are you aware of any specific documentation regarding how this works (may reduce the number of questions I come back with :) ). Thanks
coder-ajay (Tue, 29 Aug 2017 10:39:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uEczx9kc4cWGFCR9X) @sstone1 : Okay. And to get the identity which is used in the ` composer rest server `, the passport js needs to implemented. Correct?
coder-ajay (Tue, 29 Aug 2017 10:40:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=K8cTbajqkwRXKKbbv) @coder-ajay : Anyone please? Is it https://ibm-blockchain.github.io/?cm_mc_uid=66621465728015026574145&cm_mc_sid_50200000=1504003253 ?
sachinkj (Tue, 29 Aug 2017 12:24:25 GMT):
Has joined the channel.
sstone1 (Tue, 29 Aug 2017 12:50:33 GMT):
@JeremyH the docs you've probably already followed are all we have at the moment: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
sstone1 (Tue, 29 Aug 2017 12:51:06 GMT):
when you authenticate to the REST API using GitHub, the REST server generates an access token (in a cookie) that can be extracted and used to call the REST API
sstone1 (Tue, 29 Aug 2017 12:51:18 GMT):
if you log in with 3 different users, you get 3 different access tokens to use
sstone1 (Tue, 29 Aug 2017 12:51:59 GMT):
unfortunately we make it hard to find that access token... fixing that at the moment
sstone1 (Tue, 29 Aug 2017 12:54:41 GMT):
@coder-ajay not sure what you mean - the identity used for the `composer-rest-server` CLI or the identities placed in the users wallet (using passport) must have access to the participant types
sstone1 (Tue, 29 Aug 2017 12:55:38 GMT):
also with regards to the cloud - you won't get a unbiased answer here - there are many clouds to choose from ;) composer should work the same on any cloud though
koushikd05 (Tue, 29 Aug 2017 13:08:44 GMT):
Hi guys..When I am trying to create .bna file by using "composer archive create -a dist/decentralized-energy-network.bna --sourceType dir --sourceName ."
koushikd05 (Tue, 29 Aug 2017 13:09:04 GMT):
I am getting thsi error..
koushikd05 (Tue, 29 Aug 2017 13:10:26 GMT):
Message Attachments
koushikd05 (Tue, 29 Aug 2017 13:11:17 GMT):
FYI, I am using vagrant
Sneha (Tue, 29 Aug 2017 13:32:26 GMT):
Has joined the channel.
sstone1 (Tue, 29 Aug 2017 14:22:25 GMT):
@koushikd05 you have not followed the instructions - you installed the wrong composer (looks like PHP composer)
sstone1 (Tue, 29 Aug 2017 14:22:29 GMT):
`npm install -g composer-cli`
koushikd05 (Tue, 29 Aug 2017 15:10:09 GMT):
@sstone1 thanks. After trying that command, I am getting another error. so .bna file is not created.
sstone1 (Tue, 29 Aug 2017 15:10:36 GMT):
what error do you get?
koushikd05 (Tue, 29 Aug 2017 15:11:07 GMT):
Message Attachments
sstone1 (Tue, 29 Aug 2017 15:11:42 GMT):
the `dist` directory does not exist
koushikd05 (Tue, 29 Aug 2017 15:13:05 GMT):
yes.but this command should create the dist directory by itself."composer archive create -a dist/decentralized-energy-network.bna --sourceType dir --sourceName ." Am I right??
sstone1 (Tue, 29 Aug 2017 15:13:38 GMT):
no - it won't create the directory for you
sstone1 (Tue, 29 Aug 2017 15:14:07 GMT):
are you following a guide?
koushikd05 (Tue, 29 Aug 2017 15:14:13 GMT):
yes
koushikd05 (Tue, 29 Aug 2017 15:15:45 GMT):
then i should create 'dist' directory by mkdir command,then I should run the command "composer archive create -a dist/decentralized-energy-network.bna --sourceType dir --sourceName ."?
sstone1 (Tue, 29 Aug 2017 15:18:38 GMT):
yeah
sstone1 (Tue, 29 Aug 2017 15:18:42 GMT):
can you ping me the link to the guide?
meiguosg (Tue, 29 Aug 2017 15:21:32 GMT):
Has joined the channel.
koushikd05 (Tue, 29 Aug 2017 15:22:01 GMT):
thanks @sstone1 .. .bna file created.
meiguosg (Tue, 29 Aug 2017 15:25:57 GMT):
Hello guys, in the Hyperledger Composer tutorial, for the Queries Guide (https://hyperledger.github.io/composer/tutorials/queries.html), it seems the REST api can not do the transactions (trade) for the specific quantity. I am trying to make it work for trading the specific quantity, but I am not sure where I should start. Is there anyone who can help me, thanks.
Sakshi_44 (Tue, 29 Aug 2017 15:36:12 GMT):
Has joined the channel.
Sakshi_44 (Tue, 29 Aug 2017 15:39:16 GMT):
I have tried to serve up the rest_api.json.
cd /opt/gopath/src/github.com/hyperledger/fabric/core/rest
http-server -a 0.0.0.0 -p 5554 --cors
DannyWong (Tue, 29 Aug 2017 15:39:22 GMT):
Hi, how to config different endorsement policy in Composer?
Sakshi_44 (Tue, 29 Aug 2017 15:39:50 GMT):
But not able to open http://localhost:5554/rest_api.json
coder-ajay (Tue, 29 Aug 2017 15:51:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=v8ref8jrsh439L28a) @sstone1 : :) :) . Okay. Actually I am new to uploading anything on the cloud and simply need to upload for demo purpose. I believe I can safely assume that all the development tools required to run composer app will be present in the ibm blockchain cloud ... but just wanted to confirm.
sstone1 (Tue, 29 Aug 2017 16:06:56 GMT):
@Sakshi_44 you appear to be trying to use the Fabric REST API, you should ask questions about it in the #fabric channel (this is for Composer)
sstone1 (Tue, 29 Aug 2017 16:08:01 GMT):
@DannyWong see this page: https://hyperledger.github.io/composer/reference/composer.network.deploy.html
DannyWong (Tue, 29 Aug 2017 16:08:31 GMT):
got it, thanks. Nice
JeremyH (Tue, 29 Aug 2017 16:13:59 GMT):
Is there a way to 'log out' after authenticating into the REST API using Github?
sstone1 (Tue, 29 Aug 2017 16:15:54 GMT):
`http://localhost:3000/auth/logout`
DannyWong (Tue, 29 Aug 2017 16:16:54 GMT):
2 more questions
1) The debug journey of composer tx processor (js) is not very friendly... the duktape error is not really meaningful. Also, the docker logs
DannyWong (Tue, 29 Aug 2017 16:19:14 GMT):
To supplement the first point, `docker logs
DannyWong (Tue, 29 Aug 2017 16:21:02 GMT):
should i just `2>&1` on the docker logs command?
DannyWong (Tue, 29 Aug 2017 16:22:08 GMT):
Seems working the `2>&1`... but how about the duktape troubleshooting...
tennenjl (Tue, 29 Aug 2017 16:24:04 GMT):
Hi Team, in the past, for my composer api projects, I have created nodejs apps which use composer libraries to invoke chaincode operations. If we are building APIs that call both off chain data (e.g. mongodb or cloudant) along with on-chain data, are there any guidelines on when to use the REST API server versus developing a nodejs app that calls the appropriate composer libraries? I also was wondering where are the loopback artifacts which get generated when using the composer-rest-server. I was thinking that I may be able to extend or modify the generated loopback APIs to call both the chaincode and offchain datasources. Thanks!
JeremyH (Tue, 29 Aug 2017 16:45:35 GMT):
Last question for the day - If I set up three nodes, can I have different validation rules per node? If so, is this done by changing the script .js file?
adrianblakey (Tue, 29 Aug 2017 16:48:05 GMT):
One more try - please can someone tell me how I may pretty print (toString) an object? I tried JSON.stringify and got a msg saying use JSerializer.toJSON - which is a bust.
rohitaneja8 (Tue, 29 Aug 2017 17:10:51 GMT):
Can i use some graph database? how do i design graph for participants on the network - using structures in cto file is only option?
sstone1 (Tue, 29 Aug 2017 17:13:37 GMT):
@DannyWong we (Composer and Fabric) are working on adding Node.js chaincode support to Fabric, at which point we will ditch Go & Duktape. I know it's not friendly, but expect it to get better in the future ;)
sstone1 (Tue, 29 Aug 2017 17:13:55 GMT):
You can also just rethrow the error by `throw error`
sstone1 (Tue, 29 Aug 2017 17:15:20 GMT):
@tennenjl no guidance on when to use one vs the other - also the REST server doesn't generate any LoopBack code on disk that you could work with - it's all dynamic + in memory. you can pull the LoopBack connector into your own LoopBack application though (maybe by starting with a copy of the REST server code) and extend it as you like to add new APIs.
sstone1 (Tue, 29 Aug 2017 17:15:44 GMT):
by creating your own LoopBack application you can add connectors for MongoDB/Cloudant into the same REST API as the Composer connector.
sstone1 (Tue, 29 Aug 2017 17:16:30 GMT):
@JeremyH no, you can't & shouldn't do that - the different nodes will end up with different answers for each transaction (note that the transaction gets executed on all of the peers in the connection profile) and that will fail the endorsement policy
sstone1 (Tue, 29 Aug 2017 17:17:32 GMT):
@adrianblakey if you're in a transaction processor function, `JSON.stringify(getSerializer().toJSON(resource))`
sstone1 (Tue, 29 Aug 2017 17:18:55 GMT):
@rohitaneja8 Fabric does not support a graph database for the world state, so Composer doesn't support one either (for storing resources in registries). if you want to use an external graph database, you can do that, but there's no assistance for building a solution with an external graph database around the Blockchain parts.
tennenjl (Tue, 29 Aug 2017 17:41:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=d9rMGHpArzyuBkRsx) @sstone1 Thanks! So just to confirm, I would grab the Loopback connector and then point to fabric and then generate loopback artifacts that I could then add an additional datasource using another loopback connector to ultimately extend the APIs.
davidoevans (Tue, 29 Aug 2017 18:01:21 GMT):
This query raises two questions: `SELECT org.healthchain.Fish WHERE (water.type CONTAINS _$waterType)`
1. Does CQL support querying concepts of an asset?
2. Does CQL support a CONTAINS or equivalent syntax against array properties?
jdockter (Tue, 29 Aug 2017 18:06:45 GMT):
@sstone1 we have the secure REST server configured and my assumption is that when we interact with the swagger document via the browser it assumes we are the default admin correct? if so, what type of participant + ACL would we need to enable the usage of the GET and POST of /wallets and /system/ping...if I have that all correct
sstone1 (Tue, 29 Aug 2017 20:52:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QcLWMn8P4WLmaPYrk) @tennenjl correct!
sstone1 (Tue, 29 Aug 2017 20:52:20 GMT):
one of the many benefits of using LoopBack :)
sstone1 (Tue, 29 Aug 2017 20:52:44 GMT):
@davidoevans yes, you can do `water.type`, no you can't currently do a `CONTAINS`
tennenjl (Tue, 29 Aug 2017 20:53:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=d9rMGHpArzyuBkRsx) @sstone1 Thanks! Working on it now. Have a datasources.json which looks like this:
tennenjl (Tue, 29 Aug 2017 20:53:20 GMT):
{
"hlfds": {
"name": "hlfds",
"connector": "composer",
"connectionProfileName": "hlfv1",
"businessNetworkIdentifier": "my-network",
"participantId": "PeerAdmin",
"participantPwd": "randomString",
"namespaces": "false"
},
sstone1 (Tue, 29 Aug 2017 20:54:01 GMT):
@jdockter no, it assumes you have authenticated. if you haven't authenticated, then you'll get a 401 for all APIs, if you haven't added an identity into your wallet then you'll get a 401 for any business network APIs - the default admin identity never gets used again after startup
tennenjl (Tue, 29 Aug 2017 20:54:39 GMT):
and working on a model def (unless there is some way to do autogenerate those
DennisM330 (Tue, 29 Aug 2017 20:57:28 GMT):
Question on a version mismatch. The composer -v cli command shows: composer-cli v0.11.3
composer-admin v0.11.3
composer-client v0.11.3
composer-common v0.11.3
composer-runtime-hlf v0.11.3
composer-runtime-hlfv1 v0.11.3
However when I do a composer-rest-server -v it shows: composer-rest-server v0.11.3
composer-admin v0.10.1
composer-client v0.11.3
composer-common v0.11.3
composer-runtime-hlf v0.11.3
composer-runtime-hlfv1 v0.11.3
Notice composer-admin is at v0.10.1 for the composer-rest-server. Is this intended? I completely uninstalled and reinstalled npm install -g composer-rest-server
sstone1 (Tue, 29 Aug 2017 21:03:33 GMT):
@tennenjl you need to steal the boot scripts used by the REST server... they drive the model discovery process: https://github.com/hyperledger/composer/tree/master/packages/composer-rest-server/server/boot
sstone1 (Tue, 29 Aug 2017 21:03:40 GMT):
`composer-discovery.js` is the most important one
sstone1 (Tue, 29 Aug 2017 21:05:38 GMT):
@DennisM330 `composer-rest-server` doesn't actually depend on or use `composer-admin` (only for unit testing - it's a devDependency)
tennenjl (Tue, 29 Aug 2017 21:05:54 GMT):
@DennisM330 maybe need to npm install -g composer-rest-server
tennenjl (Tue, 29 Aug 2017 21:06:13 GMT):
my composer-rest-server -v is returning 0.11.3
sstone1 (Tue, 29 Aug 2017 21:06:24 GMT):
however the version printing code in that version still tries to load and print its version, which has been removed in the next release - can you run `npm ls -g --depth=0`, it's possible it's coming from somewhere else
DennisM330 (Tue, 29 Aug 2017 21:13:07 GMT):
$ npm ls -g --depth=0
/home/student/.nvm/versions/node/v6.10.3/lib
├── apiconnect@2.6.71
├── composer-cli@0.11.3
├── composer-playground@0.11.3
├── composer-playground-api@0.7.4
├── composer-rest-server@0.11.3
├── generator-hyperledger-composer@0.11.3
├── loopback-connector-mongodb@3.2.1
├── node-red@0.17.4
├── npm@3.10.10
├── passport-github@1.1.0
├── passport-jwt@3.0.0
├── passport-oauth2@1.4.0
└── yo@2.0.0
sstone1 (Tue, 29 Aug 2017 21:17:03 GMT):
none of those explain where a `0.10.1` could come from!
mescoba1 (Tue, 29 Aug 2017 21:27:26 GMT):
How would I find out how many Assets exists in a given registry?
mescoba1 (Tue, 29 Aug 2017 21:28:19 GMT):
Would I have to create a query to find out?
mescoba1 (Tue, 29 Aug 2017 21:34:45 GMT):
And if I do have to create a query, does Composer support aggregates like `count(*)`?
torresjeff (Tue, 29 Aug 2017 21:45:38 GMT):
is there any way to execute TP functions from the yeoman generated app?
torresjeff (Tue, 29 Aug 2017 21:46:03 GMT):
or can we only CRUD assets from the generated app?
torresjeff (Tue, 29 Aug 2017 21:48:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uEczx9kc4cWGFCR9X) @sstone1 So if i have a multi-user app and generate the REST server using Composer REST Server, will every participant have to point to a different API endpoint?
DennisM330 (Wed, 30 Aug 2017 01:21:54 GMT):
@sstone1 I deinstalled composer-rest-server 0.11.3 and reinstalled npm uninstall -g composer-rest-server and npm install -g composer-rest-server. Same results with the composer-admin 0.10.1. So next I cleared the npm cache rm -rf ~/.npm
# npm cache clear Had same results. So then I went into the /home/student/.nvm/versions/node/v6.10.3/lib/node_modules/composer-rest-server
and did a npm install. After that all shows 0.11.3. Not sure why the npm uninstall and install of composer-rest-server did not pick up correct versions. I knew something was amiss because a defect fixed in 0.11.3 regarding a secured rest server with mongo was not working for me. After I did the npm install to ensure all packages were updated, everything worked
DennisM330 (Wed, 30 Aug 2017 01:23:24 GMT):
@stone1 Any insights on what I need to do from now on regarding installing new versions of the composer-rest-server will be appreciated. I will keep an eye on this
DennisM330 (Wed, 30 Aug 2017 02:23:13 GMT):
On a Mac, I go into /usr/local/lib/node_modules/composer-rest-server and do a npm install without the -g flag. Had done above on Ubuntu but saw same issue on Mac
sstone1 (Wed, 30 Aug 2017 07:21:30 GMT):
@DennisM330 you shouldn't need to do that - had you done that before you hit this problem?
sstone1 (Wed, 30 Aug 2017 07:23:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=phJGurEaKCv7FbWWB) @torresjeff you can easily add code to the Angular app to call the REST API to submit transactions. we have an open GitHub issue for adding this to the generator
sstone1 (Wed, 30 Aug 2017 07:24:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LsjitkF5svvcz7NvN) @torresjeff every participant *type* will be a different REST API endpoint, different participants can use the same REST server when the REST server is configured with security or multi-user mode
rohitaneja8 (Wed, 30 Aug 2017 07:26:01 GMT):
In composer, resources are always -> Asset, Participants and Trades? Can it be something else? Like Networks, Links, Participants ..?
sstone1 (Wed, 30 Aug 2017 07:26:47 GMT):
@rohitaneja8 resources are always Assets, Participants, and Transactions
sstone1 (Wed, 30 Aug 2017 07:26:51 GMT):
you can also have events
sstone1 (Wed, 30 Aug 2017 07:27:45 GMT):
Networks, or business networks, already exist - it is the collection of model files, JavaScript transaction processor functions, access control lists, and query files that make up a business network definition
sstone1 (Wed, 30 Aug 2017 07:28:05 GMT):
Links is a feature we are working on which will allow relationships to resources in other business networks
atulkamble (Wed, 30 Aug 2017 07:42:01 GMT):
Has joined the channel.
dselman (Wed, 30 Aug 2017 08:37:08 GMT):
@rohitaneja8 and of course you can sub-class Asset, Participant, Transaction to introduce your own domain-specific types.
rohitaneja8 (Wed, 30 Aug 2017 09:23:24 GMT):
@sstone1 i think having Links to other bna's will be really helpful going ahead. Can we deploy multiple business networks on one fabric and play with common api's?
rthatcher (Wed, 30 Aug 2017 09:36:33 GMT):
fyi @here - the Community call today (Thurs) will be at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming : Wiki meeting page -> https://github.com/hyperledger/composer/wiki/Meeting-31st-August-2017
rthatcher (Wed, 30 Aug 2017 09:36:56 GMT):
The Call is Tomorrow (Thurs) !
JeremyH (Wed, 30 Aug 2017 09:44:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sJcMocqakfyi8YC8r) @sstone1 Not having any luck with '/auth/logout'. I've authenticated a separate Github account in order to set a different identity as the default. After supposedly logging out I did a system ping and it says I'm still that identity. I was expecting a 401 error. Am I doing something wrong?
chinvitha (Wed, 30 Aug 2017 10:38:15 GMT):
Has joined the channel.
chinvitha (Wed, 30 Aug 2017 10:41:58 GMT):
i am trying to access http://localhost:3000/explorer/ and its not working for me ,i have verified 3000 port is open
sayantantarafdar (Wed, 30 Aug 2017 10:42:00 GMT):
Has joined the channel.
DennisM330 (Wed, 30 Aug 2017 10:59:33 GMT):
@sstone1 No I had not did that before I had that problem. Just standard uninstall -g and install -g of Composer rest server to upgrade from 0.10.1 to 0.11.3
coder-ajay (Wed, 30 Aug 2017 11:35:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=v8ref8jrsh439L28a) @sstone1 : Can you please share the URL where the process of hosting composer angular app on IBM cloud is mentioned? I checked couple of URLs but I am confused which one can provide hosting which is good enough for demo purpose.
rthatcher (Wed, 30 Aug 2017 11:36:04 GMT):
@chinvitha Have you started the REST server with the `composer-rest-server` command? Are there any errors from that command?
chinvitha (Wed, 30 Aug 2017 11:44:24 GMT):
@rthatcher below are the errors To restart the REST server using the same options, issue the following command:
composer-rest-server -p Decentralized-Energy-Composer -n Decentralized-Energy-Composer.bna -i admin -s adminpw -N never -w true
Discovering types from business network definition ...
Connection fails: Error: Failed to load connection profile Decentralized-Energy-Composer. Error was Error: ENOENT: no such file or directory, open '/home/ubuntu/.composer-connection-profiles/Decentralized-Energy-Composer/connection.json'
It will be retried for the next request.
Exception: Error: Failed to load connection profile Decentralized-Energy-Composer. Error was Error: ENOENT: no such file or directory, open '/home/ubuntu/.composer-connection-profiles/Decentralized-Energy-Composer/connection.json'
Error: Failed to load connection profile Decentralized-Energy-Composer. Error was Error: ENOENT: no such file or directory, open '/home/ubuntu/.composer-connection-profiles/Decentralized-Energy-Composer/connection.json'
at fs.readFile.then.catch (/home/ubuntu/.nvm/versions/node/v6.11.2/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/fsconnectionprofilestore.js:87:23)
chinvitha (Wed, 30 Aug 2017 11:45:25 GMT):
Message Attachments
rthatcher (Wed, 30 Aug 2017 12:12:13 GMT):
@chinvitha Looking at the command line the name of your network (-n Decentralized-Energy-Composer.bna) will cause a problem - you have specified the name of your .bna file. Hopefully you have already deployed your .bna file so on this command line you should specify the name of your network which is likely to be (-n Decentralized-Energy-Composer ).
However the error being displayed is a problem with the Connection Profile (-p Decentralized-Energy-Composer). Use this command `ls ~/.composer-connection-profiles/` to see what connection profiles you have - perhaps `hlfv1` ? If you do have hlfv1 then this is the connection profile you have to specify (-p hlfv1).
So your command to start the REST server might be:
`composer-rest-server -p hlfv1 -n Decentralized-Energy-Composer -i admin -s adminpw -N never -w true`
chinvitha (Wed, 30 Aug 2017 12:30:13 GMT):
@rthatcher now i am getting below error
chinvitha (Wed, 30 Aug 2017 12:30:14 GMT):
Message Attachments
chinvitha (Wed, 30 Aug 2017 12:37:56 GMT):
@rthatcher I tried to deploy the bna file again and got the below error
chinvitha (Wed, 30 Aug 2017 12:37:56 GMT):
Message Attachments
szlaci1983 (Wed, 30 Aug 2017 13:06:14 GMT):
Has joined the channel.
suvpatil (Wed, 30 Aug 2017 13:27:08 GMT):
Hi all,......I am trying to build query(buildQuery(query)) in .js file but giving me error for this line "const BusinessNetworkDefinition = require('composer-admin').BusinessNetworkDefinition;"
suvpatil (Wed, 30 Aug 2017 13:27:33 GMT):
error : The keyword 'const' is reserved (21:0)
rthatcher (Wed, 30 Aug 2017 13:31:38 GMT):
@chinvitha - this error shows again a 'Connect Failed' - like your REST server. So some questions ...
Did you run the command `ls ~/.composer-connection-profiles/` to show what Connection Profiles you have?
If you have a `hlfv1` connection profile - can you show the file `connection.json` under that profile?
Do you have a Fabric running - perhaps a dev environment in Docker Containers? - Are they running OK?
dselman (Wed, 30 Aug 2017 13:42:07 GMT):
@suvpatil is this in client code or inside a transaction processor function?
JeremyH (Wed, 30 Aug 2017 13:57:14 GMT):
Think I might be missing some foundational knowledge - If I have 3 participants (pretend they're banks), each as its own node, and that a bank can only see the account balance of another bank if it's receiving money from it. In the course of a transaction, will only 2 of the 3 nodes be able to verify that the payer has enough money to pay the payee? I would have this verification in the script .js file, but obviously the third bank can't carry out this verification (because of permissions in the .acl file). Is the running of the script.js file part of the node validation/endorsement?
JeremyH (Wed, 30 Aug 2017 13:57:14 GMT):
If I have 3 participants (pretend they're banks), each as its own node, and that a bank can only see the account balance of another bank if it's receiving money from it. In the course of a transaction, will only 2 of the 3 nodes be able to verify that the payer has enough money to pay the payee? I would have this verification in the script .js file, but obviously the third bank can't carry out this verification (because of permissions in the .acl file). Is the running of the script.js file part of the node validation/endorsement?
NikhilNanjappa (Wed, 30 Aug 2017 13:57:53 GMT):
Has joined the channel.
NikhilNanjappa (Wed, 30 Aug 2017 13:58:08 GMT):
Hi guys
NikhilNanjappa (Wed, 30 Aug 2017 13:58:49 GMT):
following this https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html. I have successfully authenticated into api
NikhilNanjappa (Wed, 30 Aug 2017 13:59:08 GMT):
but I m not sure how to logout of the instance
NikhilNanjappa (Wed, 30 Aug 2017 13:59:32 GMT):
http://aws:3000/auth/logout does not seem to do it
NikhilNanjappa (Wed, 30 Aug 2017 14:00:25 GMT):
it redirects me to its home but the user seems to be still logged in .. could someone shed some light on this
NikhilNanjappa (Wed, 30 Aug 2017 14:00:33 GMT):
thanks in advance
koushikd05 (Wed, 30 Aug 2017 14:32:23 GMT):
Hi @rthatcher ..thanks for your help. me and @chinvitha are working together. I am also getting the same error. The connection profile name is "hlfv1".but there is no connection.json file under that profile.
koushikd05 (Wed, 30 Aug 2017 14:36:49 GMT):
Message Attachments
koushikd05 (Wed, 30 Aug 2017 14:37:52 GMT):
@rthatcher can you please tell us the path of "composer-connection-profile"?
rthatcher (Wed, 30 Aug 2017 14:53:09 GMT):
Message Attachments
rthatcher (Wed, 30 Aug 2017 14:54:57 GMT):
The `connection.json` file shows where the fabric servers are - mine are default development containers - which are running
koushikd05 (Wed, 30 Aug 2017 15:00:09 GMT):
@rthatcher this is my connection.json file,that looks similar like yours
koushikd05 (Wed, 30 Aug 2017 15:00:16 GMT):
Message Attachments
JPlaCo (Wed, 30 Aug 2017 15:09:39 GMT):
Has joined the channel.
rthatcher (Wed, 30 Aug 2017 15:12:28 GMT):
@koushikd05 - so are your docker containers running? (I'm assuming you are using a local dev environment) `docker ps`
koushikd05 (Wed, 30 Aug 2017 15:13:28 GMT):
@rthatcher I am using vagrant env.
rthatcher (Wed, 30 Aug 2017 15:16:47 GMT):
OK well you need to be sure your fabric is available on the addresses and ports in that connection.json file, and that any firewall you have allows connections. You might also want to check the logs of those VMs to see that they started OK.
torresjeff (Wed, 30 Aug 2017 15:26:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KwPGseZNBHSzh4ocX) @sstone1 Where can I read about this multi-user mode? From what I've read in the docs at https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html they set a default identity for the default wallet
torresjeff (Wed, 30 Aug 2017 15:26:50 GMT):
that means that every request will be served with the same identity regardless of the user actually using the app, correct?
torresjeff (Wed, 30 Aug 2017 15:27:33 GMT):
is it mandatory to set a default identity? How can I differentiate between each user and not use a default identity?
torresjeff (Wed, 30 Aug 2017 15:27:42 GMT):
Would I have to send a token with every request?
sstone1 (Wed, 30 Aug 2017 15:43:25 GMT):
@torresjeff each authenticated user gets their own wallet and their own default identity, and all requests made by that authenticated user will use their own identity
mescoba1 (Wed, 30 Aug 2017 16:21:56 GMT):
@sstone1 is there a way to figure out the # of assets in a given registry during runtime?
sstone1 (Wed, 30 Aug 2017 16:27:30 GMT):
@mescoba1 you can call `getAll` on the registry and then do a count
coder-ajay (Wed, 30 Aug 2017 17:32:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oijGMakBCLiEiQ7g4) @sstone1 : I found https://console.bluemix.net/catalog/services/blockchain for hosting. But this seems to be a paid service, not suitable for demo.
hi.prabhat@gmail.com (Wed, 30 Aug 2017 17:47:51 GMT):
Has joined the channel.
hi.prabhat@gmail.com (Wed, 30 Aug 2017 17:48:14 GMT):
What's the PAYLOAD in composer.sh file? Its pretty binary and I am unable to understand its purpose but seems to be important since when I upgraded the scripts to pull 1.0.1 from the default 1.0.0 it failed there.
ScottMorris (Wed, 30 Aug 2017 18:32:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pZwJkaEqW2XMxDgeq) @hi.prabhat@gmail.com What I have noted quickly about the `PAYLOAD` is that it is a zip(tar?) of some scripts that the `composer.sh` file uses that get extracted then deleted when complete
adrianblakey (Wed, 30 Aug 2017 18:47:26 GMT):
@sstone1 TY
adrianblakey (Wed, 30 Aug 2017 18:53:50 GMT):
In trying to get things going on RHEL. I am comparing my reference MacOS, working install to the RH behavior, which is different. I get the following error doing: npm install -g composer-cli : 11:24:37 /opt/node-v6.11.2-linux-x64/lib
11:24:37 └─┬ composer-cli@0.11.3
11:24:37 └─┬ composer-admin@0.11.3
11:24:37 └─┬ composer-connector-hlf@0.11.3
11:24:37 └─┬ hfc@0.6.5
11:24:37 ├── asn1@0.2.3 (git+https://github.com/mcavage/node-asn1.git#2c2a19e285a609adfca36a0114bb5b86cf4ac61b)
11:24:37 ├─┬ grpc@1.0.0
11:24:37 │ └── nan@2.7.0
11:24:37 └─┬ hashtable@2.0.2
11:24:37 └── nan@2.7.0
11:24:37
11:24:37 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/composer-cli/node_modules/chokidar/node_modules/fsevents):
11:24:37 npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
adrianblakey (Wed, 30 Aug 2017 18:54:31 GMT):
I do not have access to Ubuntu (yet) to compare and see if this is normal for Linux. Should I worry? Is this really an issue?
chinvitha (Wed, 30 Aug 2017 18:55:34 GMT):
Hi , when i am trying to create a .bna file i got runtime exception for -a , but . bna file is created but while trying to deploy it i am getting runtime argument exception error " Command network is not defined. Can someone help in what is missing
sstone1 (Wed, 30 Aug 2017 19:00:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pZwJkaEqW2XMxDgeq) @hi.prabhat@gmail.com the PAYLOAD is a tarball that contains the docker compose scripts and crypto material (generated by cryptoconfig and configtxgen) to start Fabric - we will be publishing a new version that uses Fabric 1.0.1 soon
sstone1 (Wed, 30 Aug 2017 19:02:24 GMT):
and @ScottMorris is correct - it gets extracted into a `composer-data` directory and the files are used from there
sstone1 (Wed, 30 Aug 2017 19:03:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zWCY5cHKbYpmLdqiZ) @coder-ajay there is no such URL that explicitly describes how to deploy a Composer generated angular application to any of the cloud providers
sstone1 (Wed, 30 Aug 2017 19:24:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=267NnvMoGSsaaa8jq) @adrianblakey the `fsevents` warning is standard and can be ignored - i think its a mac only module that fills in some missing functionality that is present on linux systems
sstone1 (Wed, 30 Aug 2017 19:24:42 GMT):
we don't depend on it explicitly but something else does
sstone1 (Wed, 30 Aug 2017 19:24:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eLcDAkbPysrcuCXsB) @chinvitha please provide the full command used and the full output of running the command
chinvitha (Wed, 30 Aug 2017 19:26:37 GMT):
@sstone1 Below are the commands used
chinvitha (Wed, 30 Aug 2017 19:26:39 GMT):
Message Attachments
sstone1 (Wed, 30 Aug 2017 19:26:53 GMT):
you have installed the wrong composer command
sstone1 (Wed, 30 Aug 2017 19:27:09 GMT):
did you install it following the instructions in the documentation?
chinvitha (Wed, 30 Aug 2017 19:28:27 GMT):
yes i followed all the instructions from same document
sstone1 (Wed, 30 Aug 2017 19:28:54 GMT):
what command did you run to install the composer command?
chinvitha (Wed, 30 Aug 2017 19:31:52 GMT):
ok got it actually while trying to create the .bna file i got a message that composer is not installed and for installing it run "Sudo apt install composer"
sstone1 (Wed, 30 Aug 2017 19:32:12 GMT):
yep, that is the wrong command
sstone1 (Wed, 30 Aug 2017 19:32:25 GMT):
`npm install -g composer-cli` or `sudo npm install -g composer-cli` (depending on your system)
chinvitha (Wed, 30 Aug 2017 19:32:42 GMT):
ok i will try with this thank you
sstone1 (Wed, 30 Aug 2017 19:32:47 GMT):
np
Vrai1127 (Wed, 30 Aug 2017 19:54:32 GMT):
ACL Permissions : Are these stored somewhere on the blockchain and read by chaincode during execution time?
chinvitha (Wed, 30 Aug 2017 20:21:02 GMT):
@sstone1 Hi after installing composer with npm instal -g composer-cli i am still getting the same error
mescoba1 (Wed, 30 Aug 2017 20:50:49 GMT):
Is there a way to traceback an error to the chaincode when getting an error on the rest-server? ```Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
at _initializeChannel.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:863:34)```
mescoba1 (Thu, 31 Aug 2017 00:01:14 GMT):
Is there a flag for *timeout* when using `composer-rest-server`?
DennisM330 (Thu, 31 Aug 2017 00:16:23 GMT):
Is there a way to point the composer rest server to a specific version of the deployed business network assuming I set a unique version in the model?
ygnr (Thu, 31 Aug 2017 01:20:57 GMT):
Is it possible for a contract to act as an Escrow? (i.e Can Smart contract be an asset owner?)
karoshima (Thu, 31 Aug 2017 05:30:45 GMT):
Has joined the channel.
suvpatil (Thu, 31 Aug 2017 05:31:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gkp75GAoLKcDomsuy) @dselman its in sample.js file within lib folder. I declared this statement at first line, outside transaction function.
mna2017 (Thu, 31 Aug 2017 05:39:44 GMT):
Has joined the channel.
mna2017 (Thu, 31 Aug 2017 05:41:32 GMT):
HI Team, I have created a sample blockchain network in composer. I have a question. Can I communicate with the underlying blockchain of this network using nodeJS SDK? If yes How? Any links and examples will be a great help. Thanks!
leogzl (Thu, 31 Aug 2017 05:52:24 GMT):
Has joined the channel.
sstone1 (Thu, 31 Aug 2017 06:20:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PHFiuoZbBRpuNvxkB) @mescoba1 not easily - it's something we need to work on. the chaincode logs will contain an amount of information depending on the current log level of the business network.
sstone1 (Thu, 31 Aug 2017 06:20:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PcDQ4ZRa6W83cAzKm) @mescoba1 no, no timeout flag - what timeout are you after?
sstone1 (Thu, 31 Aug 2017 06:22:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2zQ9MCMCnKbjwgBuT) @DennisM330 can you explain more? have you deployed multiple versions of a business network archive? there can only be one version of a business network running on any given channel
sstone1 (Thu, 31 Aug 2017 06:24:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=v8uiJb5jQtrJaWmzw) @ygnr yes - you could model the escrow as a participant in the business network, and transfer ownership of the asset to the escrow participant. alternatively you could just set the "owner" property of the asset to null to indicate that nobody owns it.
sstone1 (Thu, 31 Aug 2017 06:25:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6NkskEphrdqnTCTFg) @mna2017 you can use either the Node.js APIs in the `composer-client` module, or the REST APIs provided by the `composer-rest-server` to build applications:
Node.js APIs: https://hyperledger.github.io/composer/applications/node.html
REST APIs: https://hyperledger.github.io/composer/integrating/getting-started-rest-api.html
chinvitha (Thu, 31 Aug 2017 06:26:10 GMT):
Hi @sstone1 now i am getting the below errors while performing npm start
chinvitha (Thu, 31 Aug 2017 06:26:11 GMT):
Message Attachments
sstone1 (Thu, 31 Aug 2017 06:27:04 GMT):
that error means that the fabric is not running on the URLs specified in the connection profile
SiddarthaPadhi (Thu, 31 Aug 2017 06:27:14 GMT):
Has joined the channel.
mescoba1 (Thu, 31 Aug 2017 06:31:36 GMT):
@sstone1 I was trying to count the number of participants to create a new Participant dynamically through a transaction, but I'm getting a timeout error. ` Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)`
sstone1 (Thu, 31 Aug 2017 06:32:00 GMT):
what does the transaction code look like?
mescoba1 (Thu, 31 Aug 2017 06:32:15 GMT):
```function enrollNewPeer(enroll){
var factory = getFactory();
var NS = 'org.acme.destro';
if(enroll.typeOfPeer == null){
enroll.typeOfPeer = 'Peer';
}
/* Make sure type exists */
enroll.typeOfPeer = 'Peer';
/* Make sure peerID does not exist */
return getParticipantRegistry(NS + '.Peer')
.then(function (peerRegistry) {
return peerRegistry.exists(enroll.peerID);
}).then(function (assetFound) {
if (assetFound) {
throw new Error("Peer Already Exitsts");
}
if(enroll.peerID == null){
return getParticipantRegistry(NS + '.Peer')
.then(function (peerRegistry) {
return peerRegistry.getAll(); //returns list of Peers
}).then(function(allPeers){
var peerNum = (allPeers.length) + 1; // get #of peers and add 1
var event = factory.newEvent(NS,'numPeers');
event.peers = peerNum;
emit(event);
enroll.peerID = 'peer' + peerNum;
});
}
}).then(function() {
var peer = factory.newResource(NS, enroll.typeOfPeer, enroll.peerID);
peer.peerPubKey = assignKey(peer.peerID);
var event = factory.newEvent(NS,'newPeer');
event.peer = peer;
emit(event);
return getParticipantRegistry(NS + '.' + enroll.typeOfPeer)
.then(function(participantRegistry) {
return participantRegistry.add(peer);
});
});
}```
sstone1 (Thu, 31 Aug 2017 06:37:21 GMT):
how many peers do you have?
sstone1 (Thu, 31 Aug 2017 06:37:54 GMT):
how many peers will you have?
mescoba1 (Thu, 31 Aug 2017 06:38:37 GMT):
Right now I only have 1 peer
mescoba1 (Thu, 31 Aug 2017 06:40:09 GMT):
Not sure how many peers we look to expand to, still in the POC stage
sstone1 (Thu, 31 Aug 2017 07:22:59 GMT):
the solution above will not scale well for lots of peers
sstone1 (Thu, 31 Aug 2017 07:23:15 GMT):
every time you want to add a new peer you will have to read all of the existing ones
sstone1 (Thu, 31 Aug 2017 07:24:05 GMT):
this can also cause problems if you have other transactions trying to read and update the existing peers at the same time - Fabric will reject the transactions with MVCC version conflict errors
sstone1 (Thu, 31 Aug 2017 07:25:21 GMT):
recommend that you generate a UUID on the client side and send that in as part of the transaction, and use that as the ID
sstone1 (Thu, 31 Aug 2017 07:25:47 GMT):
you can also use the transaction ID to generate the ID - `enroll.transactionId`
ivaylopivanov (Thu, 31 Aug 2017 07:34:00 GMT):
@sstone1 I'm not sure why the above will not scale, assuming you're adding a new peer once per month or so, may you clarify?
sstone1 (Thu, 31 Aug 2017 07:34:42 GMT):
if you have 10000 peers, you have to read and parse 10000 peers when you want to add a new one
sstone1 (Thu, 31 Aug 2017 07:34:49 GMT):
if you add a new peer once a month then fine, it's not so bad
ivaylopivanov (Thu, 31 Aug 2017 07:35:24 GMT):
ah, 10000 .. ok :D makes sense, thank you
nasht00 (Thu, 31 Aug 2017 07:56:41 GMT):
When using `Registry`'s `resolve` API, does it resolve only 1 level or recursively?
uber.twin (Thu, 31 Aug 2017 08:07:25 GMT):
@sstone1 hi, I got a query like below, which used to work fine till I added the "ORDER BY" clause, not sure why it's not liking it
```
query selectTranTrackers{
description: "retrieves HistorianRecord entries"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord FROM HistorianRegistry
WHERE (transactionType == _$tranType)
ORDER BY [transactionTimestamp DESC]
}
```
here is the runtime log
```
2017-08-31T07:48:33.412374456Z [36m2017-08-31 07:48:33.412 UTC [Composer] Debug -> DEBU 2707[0m CouchDB query string {"selector":{"$class":"org.hyperledger.composer.system.HistorianRecord","$registryType":"Historian","$registryId":"HistorianRegistry","transactionType":{"$eq":"FundsInstruction"}},"sort":[{"transactionTimestamp":"desc"}]}
2017-08-31T07:48:34.295067914Z [31m2017-08-31 07:48:34.294 UTC [shim] handleGetQueryResult -> ERRO 2708[0m [08e8b40b]Received ERROR
2017-08-31T07:48:34.295115725Z [36m2017-08-31 07:48:34.295 UTC [Composer] Debug -> DEBU 2709[0m Exiting DataService.executeQuery 0
szlaci1983 (Thu, 31 Aug 2017 08:33:01 GMT):
Hi guys, is there a detailed documentation on the query syntax? I try to create a query with LIKE, but composer doesn't like it....
dselman (Thu, 31 Aug 2017 08:38:17 GMT):
https://hyperledger.github.io/composer/reference/query-language.html
dselman (Thu, 31 Aug 2017 08:40:38 GMT):
@uber.twin you may be hitting a CouchDB/Fabric issue: https://stackoverflow.com/questions/45919898/order-by-not-working-in-named-query/45966828#45966828
dselman (Thu, 31 Aug 2017 08:40:56 GMT):
@nasht00 recursively
uber.twin (Thu, 31 Aug 2017 08:56:34 GMT):
@dselman I see there is an answer advising to define a sort index. is it relevant?
uber.twin (Thu, 31 Aug 2017 08:58:25 GMT):
the related issue doesn't seem to have a resolution (https://github.com/hyperledger/composer/issues/1640)
wael (Thu, 31 Aug 2017 10:20:39 GMT):
Hi, I am trying to send a DateTime (object in composer) in js api and everytime I got invalid time Range. is there any specific format to set a dateTime in javascript ?
uber.twin (Thu, 31 Aug 2017 10:33:45 GMT):
it seems to be yyyy-MM-ddThh:mm:ss:SSSZ, e.g. 2017-08-24T07:56:12.875Z
uber.twin (Thu, 31 Aug 2017 10:33:45 GMT):
it seems to be ```yyyy-MM-ddThh:mm:ss:SSSZ```, e.g. 2017-08-24T07:56:12.875Z
wael (Thu, 31 Aug 2017 11:15:12 GMT):
@uber.twin I can't just set a Date without time ?
nicehyperledger (Thu, 31 Aug 2017 11:15:47 GMT):
Has joined the channel.
uber.twin (Thu, 31 Aug 2017 11:53:06 GMT):
@wael never did a set operation, but it seems this is the string representation of a dateTime object
szlaci1983 (Thu, 31 Aug 2017 13:22:23 GMT):
@dselman Hi, I read the reference for the query language but it doesn't mention LIKE operator....
dselman (Thu, 31 Aug 2017 13:39:34 GMT):
...because we don't yet support LIKE
dselman (Thu, 31 Aug 2017 13:39:51 GMT):
@wael any valid JS Date() instance should work
dselman (Thu, 31 Aug 2017 13:40:23 GMT):
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/parse
szlaci1983 (Thu, 31 Aug 2017 13:46:25 GMT):
thanks @dselman
wael (Thu, 31 Aug 2017 13:58:27 GMT):
@dselman actually I tried as new Date('11/11/1991') and didn't work .
dselman (Thu, 31 Aug 2017 13:59:17 GMT):
that sounds like a generic JS question to me
dselman (Thu, 31 Aug 2017 13:59:33 GMT):
the JS docs have lots of examples
wael (Thu, 31 Aug 2017 14:00:18 GMT):
okay I will try another formats ,thanks
dselman (Thu, 31 Aug 2017 14:00:32 GMT):
```
The date time string may be in a simplified ISO 8601 format. For example, "2011-10-10" (just date) or "2011-10-10T14:48:00" (date and time) can be passed and parsed.
```
wael (Thu, 31 Aug 2017 14:02:15 GMT):
I have a question regarding ACL permission if you could help:
I am trying to make a transaction that updates an asset that has two relationships with participants.
In one hand , participant couldn't read other participants asset , but he could submit that transaction.
dselman (Thu, 31 Aug 2017 14:04:07 GMT):
sounds similar to the rules for the PII network: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/permissions.acl
JeremyH (Thu, 31 Aug 2017 14:07:47 GMT):
Is there any execution of the script.js file when nodes validate transactions? I have a sort of network where different participants can send each other money, one of the business rules that I've implemented in the script.js file is that the participant must have enough funds to send. Some of my lines of code are:
'''if(tx.payer.balance < tx.payment) {
throw new Error('Payer has insufficient funds to transfer');
}'''
and then for the execution of the transaction ( updating the balances)
I've made the participants' accounts private using the .acl file, so that A can update
wael (Thu, 31 Aug 2017 14:10:23 GMT):
in that network a member can access another member's details if the member has added him to his authorized list, but in my situation any participant could do this transaction
wael (Thu, 31 Aug 2017 14:11:56 GMT):
this transaction updates other participant's asset, but in the other hand I don't want anyone read others assets , is it possible ?
JeremyH (Thu, 31 Aug 2017 14:12:23 GMT):
Is there any execution of the script.js file when nodes validate transactions? I have a sort of network where different participants can send each other money, one of the business rules that I've implemented in the script.js file is that the participant must have enough funds to send.
```
if(tx.payer.balance < tx.payment) {
throw new Error('Payer has insufficient funds to transfer');
}
```
and then for the execution of the transaction ( updating the balances)
```
tx.payer.balance = tx.payer.balance - tx.payment;
tx.payee.balance = tx.payee.balance + tx.payment;
```
I've made the participants' accounts private using the .acl file, so that Participant A can update Participant B's balance if carrying out a transaction.
#My question is, does this verification via the script.js file also get carried out by other validation nodes (that are not Participant A or Participant B?)? No other participants have the required READ or UPDATE access to the balances of the parties involved in the transaction.
JeremyH (Thu, 31 Aug 2017 14:12:23 GMT):
Is there any execution of the script.js file when nodes validate transactions? I have a sort of network where different participants can send each other money, one of the business rules that I've implemented in the script.js file is that the participant must have enough funds to send.
```
if(tx.payer.balance < tx.payment) {
throw new Error('Payer has insufficient funds to transfer');
}
```
and then for the execution of the transaction ( updating the balances)
```
tx.payer.balance = tx.payer.balance - tx.payment;
tx.payee.balance = tx.payee.balance + tx.payment;
```
I've made the participants' accounts private using the .acl file, so that Participant A can only update Participant B's balance if carrying out a transaction.
My question is, does this verification via the script.js file also get carried out by other validation nodes (that are not Participant A or Participant B?)? No other participants have the required READ or UPDATE access to the balances of the parties involved in the transaction.
lucrezia.dm (Thu, 31 Aug 2017 14:26:58 GMT):
hi !!
I'm using online Playground.
Importing "trade-network" example it DOES NOT RUN. Can someone help me?
rthatcher (Thu, 31 Aug 2017 14:40:53 GMT):
fyi @here - the Community call today (Thurs) will be at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming : Wiki meeting page -> https://github.com/hyperledger/composer/wiki/Meeting-31st-August-2017
chrispoole (Thu, 31 Aug 2017 14:44:27 GMT):
Has left the channel.
rthatcher (Thu, 31 Aug 2017 14:49:08 GMT):
@lucrezia.dm - are you following the Developer Tutorial? What errors are you seeing ?
lucrezia.dm (Thu, 31 Aug 2017 14:52:45 GMT):
when I'm in Test section , I select Submit Transaction and the error is :
"TypeError: Cannot read property 'getIdentifier' of null "
It's the same for both Transaction Type:
- AuthorizeAccess
-RevokeAccess
[ ](https://chat.hyperledger.org/channel/composer?msg=tMH8EBFQwq9MxkWog) @rthatcher
rthatcher (Thu, 31 Aug 2017 15:03:17 GMT):
@lucrezia.dm - can you show a screenshot of the error?
(Just to confirm - before you try a 'Trade' transaction - you have added a Participant and an Asset?)
lucrezia.dm (Thu, 31 Aug 2017 15:06:17 GMT):
Message Attachments
lucrezia.dm (Thu, 31 Aug 2017 15:07:05 GMT):
Message Attachments
JeremyH (Thu, 31 Aug 2017 15:07:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BB6ZLMtSegz9ZPhim) @lucrezia.dm is the member Id "email:1" as opposed to just "1" ?
lucrezia.dm (Thu, 31 Aug 2017 15:08:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uPTu3FaJss5LdsP5w) @rthatcher
I cannot add Asset. It does not allow it.
I added Participant
lucrezia.dm (Thu, 31 Aug 2017 15:08:53 GMT):
Message Attachments
elliechen23 (Thu, 31 Aug 2017 15:09:29 GMT):
Has joined the channel.
lucrezia.dm (Thu, 31 Aug 2017 15:10:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3sxCNSMRAssLwDe9Q) @JeremyH
If I write email:1 The error persists
JeremyH (Thu, 31 Aug 2017 15:13:44 GMT):
@lucrezia.dm I've not used that sample network before. Have you tried the tutorial example in the Online Playground?
dselman (Thu, 31 Aug 2017 15:15:06 GMT):
@lucrezia.dm I suspect this is because you are submitting the transaction as 'admin' -- you need to have a current participant for the TP function to work.
dselman (Thu, 31 Aug 2017 15:15:30 GMT):
I.e. you need to issue identities for the email:1 and email:2 and then switch to those identities
lucrezia.dm (Thu, 31 Aug 2017 15:16:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=c6ccvANvaDQEqDdbv) @JeremyH
yes! I would like use it for an application of my study (for University)
dselman (Thu, 31 Aug 2017 15:16:18 GMT):
i.e. for the 'admin' user the getCurrentParticipant() call will return null
dselman (Thu, 31 Aug 2017 15:19:01 GMT):
You can see this flow (issuing identities, switching identities, submitting transactions, running queries) in the unit test for the network: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js
dselman (Thu, 31 Aug 2017 15:19:17 GMT):
You should be able to replicate that flow by clicking the buttons in Playground.
dselman (Thu, 31 Aug 2017 15:20:09 GMT):
If you can submit a PR to update the README for the network with the correct steps we'd be very grateful.
lucrezia.dm (Thu, 31 Aug 2017 15:34:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RG42BczEkn8vztEgw) @dselman
I created first participant "email:1" with admin
I switched to admin2(that I created)
I created second participant email:2
I tried to submit transaction with both admin and admin2 with all possible combinations
lucrezia.dm (Thu, 31 Aug 2017 15:34:49 GMT):
but It's the same error again
dselman (Thu, 31 Aug 2017 15:51:17 GMT):
please use identity names foo and bar, rather than admin and admin2
dselman (Thu, 31 Aug 2017 15:52:02 GMT):
also note that we are building 0.12, so if you are using the online hosted playground it is about to go down
tublu (Thu, 31 Aug 2017 15:57:10 GMT):
Has joined the channel.
sstone1 (Thu, 31 Aug 2017 15:57:16 GMT):
@here we've released #Hyperledger #Composer v0.12.0, w/ the fantastic new ID cards, read all about it on GitHub: https://github.com/hyperledger/composer/releases/tag/v0.12.0 🎉
tublu (Thu, 31 Aug 2017 15:58:56 GMT):
Hi, while executing nom install -g composer-cli , getting error : In file included from ../src/hashtable.cpp:1:
../src/hashtable.h:7:10: fatal error: 'tr1/unordered_map' file not found
#include
tublu (Thu, 31 Aug 2017 16:00:29 GMT):
Mac OS ... please suggest how to execute the command ....
dselman (Thu, 31 Aug 2017 16:30:40 GMT):
@tublu you probably have an unsupported version of Node
mescoba1 (Thu, 31 Aug 2017 16:34:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jWdC7b5ocxqrPbW8r) @sstone1 can you get the `transactionId` while executing the transaction?
tublu (Thu, 31 Aug 2017 16:45:40 GMT):
ok .. could you suggest me alternate version which can support @dselman
dselman (Thu, 31 Aug 2017 16:47:02 GMT):
Please read the docs here: https://hyperledger.github.io/composer/installing/development-tools.html
tublu (Thu, 31 Aug 2017 16:48:20 GMT):
ok .. thanx @dselman
prijindal (Thu, 31 Aug 2017 16:54:55 GMT):
Has joined the channel.
prijindal (Thu, 31 Aug 2017 16:55:29 GMT):
Is there a way to install composer tools with node js 8
It seems that they only work on node.js 6.9.0 to 7.0
mescoba1 (Thu, 31 Aug 2017 17:08:01 GMT):
When setting up the acl permissions, can you restrict the rest-server? I wanted to prevent the rest-server from creating assets directly, having to invoke a transaction to create an asset instead.
jfodale (Thu, 31 Aug 2017 17:10:38 GMT):
Has joined the channel.
jfodale (Thu, 31 Aug 2017 17:11:42 GMT):
Hello - I'm trying to subscribe to events emitted by my transaction processors. It's working when using the SDK via a node.js application, but I'm not getting anything back when using the new functionality of events over REST. (I'm following the instructions here: https://hyperledger.github.io/composer/unstable/integrating/publishing-events.html). Anyone else had this same problem?
jfodale (Thu, 31 Aug 2017 17:18:49 GMT):
@mescoba1 I'm not sure if it's the intended route or not, but what I've done so far is to use two different ACL rules. The first rule grants create access to the assets only when within a certain transaction. The second rule denies create access to the assets overall. I think the ordering matters here - I believe the ACL goes from the top down until it finds a rule that matches. This link has an example of how to create the first rule there: https://hyperledger.github.io/composer/reference/acl_language.html
jfodale (Thu, 31 Aug 2017 17:19:01 GMT):
rule SampleConditionalRuleWithTransaction {
description: "Description of the ACL rule"
participant(m): "org.example.SampleParticipant"
operation: READ, CREATE, UPDATE
resource(v): "org.example.SampleAsset"
transaction(tx): "org.example.SampleTransaction"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}
mescoba1 (Thu, 31 Aug 2017 17:28:52 GMT):
When sending a curl command to perform say create an asset, what would be the participant in the rule? @jfodale
mescoba1 (Thu, 31 Aug 2017 17:31:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NKq4sj5CedaQ2dqEg) @jfodale I'm also using a web socket to subscribe to events, I am able to get the events when certain transactions occur. Are you sure you are emitting the event? Does the transaction resolve?
dselman (Thu, 31 Aug 2017 18:38:52 GMT):
@mescoba1 if the composer-rest-server is running in single user mode, then it will be the participant id that was used to launch the server. If it is running in multiple user mode then you can plugin an auth provider and map from an external auth scheme (e.g. twitter id) to a cert managed by Fabric. Read on here: https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
dselman (Thu, 31 Aug 2017 18:40:57 GMT):
@jfodale they should be emitted over a websocket. What have you tried?
dselman (Thu, 31 Aug 2017 18:41:58 GMT):
did you launch the server with the -w commmand?
dselman (Thu, 31 Aug 2017 18:42:03 GMT):
https://hyperledger.github.io/composer/integrating/publishing-events.html
mescoba1 (Thu, 31 Aug 2017 18:42:15 GMT):
Does a transaction need to permissions to update a given asset?
dselman (Thu, 31 Aug 2017 18:43:30 GMT):
```
rule SampleConditionalRuleWithTransaction {
description: "Description of the ACL rule"
participant(m): "org.example.SampleParticipant"
operation: READ, CREATE, UPDATE
resource(v): "org.example.SampleAsset"
transaction(tx): "org.example.SampleTransaction"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}
```
dselman (Thu, 31 Aug 2017 18:43:34 GMT):
This rule states that:
dselman (Thu, 31 Aug 2017 18:43:39 GMT):
For example, the rule below states that any instance of the org.example.SampleParticipant type can perform ALL operations on all instances of org.example.SampleAsset IF the participant is the owner of the asset AND the participant submitted a transaction of the org.example.SampleTransaction type to perform the operation.
dselman (Thu, 31 Aug 2017 18:43:43 GMT):
https://hyperledger.github.io/composer/reference/acl_language.html
dselman (Thu, 31 Aug 2017 18:44:23 GMT):
I.e. the participant is granted access to READ, CREATE, UPDATE the resource SampleAsset if the SampleTransaction is being executed
mescoba1 (Thu, 31 Aug 2017 18:44:54 GMT):
Ah okay perfect, that's what I'm looking for!
tublu (Thu, 31 Aug 2017 19:24:41 GMT):
@dselman I have installed required version of Node ... but facing following problem .. Error: Error trying deploy. Error: Error trying install chaincode. Error: Connect Failed
Command failed
tublu (Thu, 31 Aug 2017 19:24:58 GMT):
at time of deployment in network .. please inform
tublu (Thu, 31 Aug 2017 19:25:06 GMT):
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.1.8
Description: My Commodity Trading Network
✖ Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying install chaincode. Error: Connect Failed
Command failed
adrianblakey (Thu, 31 Aug 2017 19:39:38 GMT):
What may/may not be coded in a transaction? Seems like anything that's require'd causes a runtime error, is it only js language primitives?
adrianblakey (Thu, 31 Aug 2017 19:40:31 GMT):
Nice job on 0.12.0 btw
tublu (Thu, 31 Aug 2017 19:58:26 GMT):
@adrianblakey how can I detect the error ??? Yes its only js language primitive .... please inform
mescoba1 (Thu, 31 Aug 2017 20:02:14 GMT):
When I perform a `Verify` transaction I get the message `t: Participant 'org.acme.destro.Peer#peer1' does not have 'UPDATE' access to resource 'org.acme.destro.Build#build1'` however I have ```rule verifyBuild {
description: "Description of the ACL rule"
participant(m): "org.acme.destro.Peer"
operation: READ, CREATE, UPDATE
resource(v): "org.acme.destro.Build"
transaction(tx): "org.acme.destro.Verify"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}``` in the ACL, I'm using the playground to issue the `Peer` participant. Any ideas what's going on?
dselman (Thu, 31 Aug 2017 20:25:52 GMT):
The most likely explanation is that this condition failed... `(v.owner.getIdentifier() == m.getIdentifier())`
dselman (Thu, 31 Aug 2017 20:27:08 GMT):
@adrianblakey 'require' is not supported yet -- we need native Node.js execution for that (work in progress).
mescoba1 (Thu, 31 Aug 2017 20:27:10 GMT):
I also have a ```rule read {
description: "AllAccess - grant everything to everybody"
participant: "org.hyperledger.composer.system.Participant"
operation: READ
resource: "org.acme.destro.Build"
action: ALLOW
}```
dselman (Thu, 31 Aug 2017 20:27:42 GMT):
that rule would not fire for an UPDATE
mescoba1 (Thu, 31 Aug 2017 20:28:09 GMT):
When I run the Verify the resource has not yet been created
mescoba1 (Thu, 31 Aug 2017 20:28:17 GMT):
Could that be why the condition fails?
dselman (Thu, 31 Aug 2017 20:28:26 GMT):
@tublu this sounds like your Fabric is not running.
mescoba1 (Thu, 31 Aug 2017 20:28:28 GMT):
Build resource*
dselman (Thu, 31 Aug 2017 20:28:56 GMT):
@tublu follow this https://hyperledger.github.io/composer/installing/development-tools.html and then this https://hyperledger.github.io/composer/tutorials/developer-guide.html
tublu (Thu, 31 Aug 2017 20:29:04 GMT):
@dselman now its running thanx for support
dselman (Thu, 31 Aug 2017 20:29:17 GMT):
:thumbsup:
dselman (Thu, 31 Aug 2017 20:30:00 GMT):
@mescoba1 now I'm confused...
dselman (Thu, 31 Aug 2017 20:30:06 GMT):
Can you post your TP function?
tublu (Thu, 31 Aug 2017 20:30:18 GMT):
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
Web server listening at: https://localhost:3000
Browse your REST API at https://localhost:3000/explorer
tublu (Thu, 31 Aug 2017 20:30:32 GMT):
... thanx ..
dselman (Thu, 31 Aug 2017 20:30:37 GMT):
np
mescoba1 (Thu, 31 Aug 2017 20:32:21 GMT):
Oh my bad I have a `Push` and `Verify` transaction, both of which a `Peer` should be able to invoke to Create/Update a Build
mescoba1 (Thu, 31 Aug 2017 20:33:12 GMT):
As of now I cannot get `Peer` participant to create a `Build` via `Push`
mescoba1 (Thu, 31 Aug 2017 20:33:32 GMT):
And I cannot get a `Peer` to update `Build` with `Verify`
dselman (Thu, 31 Aug 2017 20:34:39 GMT):
can you post your whole ACL file?
mescoba1 (Thu, 31 Aug 2017 20:35:40 GMT):
```rule peerBuild {
description: "Peer can create/update a build"
participant: "org.acme.destro.Peer"
operation: CREATE
resource: "org.acme.destro.Push"
action: ALLOW
}
rule pushBuild {
description: "Description of the ACL rule"
participant(m): "org.acme.destro.Peer"
operation: READ, CREATE, UPDATE
resource(v): "org.acme.destro.Build"
transaction(tx): "org.acme.destro.Push"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}
rule peerVerify {
description: "Peer can create/update a build"
participant: "org.acme.destro.Peer"
operation: CREATE
resource: "org.acme.destro.Verify"
action: ALLOW
}
rule verifyBuild {
description: "Description of the ACL rule"
participant(m): "org.acme.destro.Peer"
operation: READ, CREATE, UPDATE
resource(v): "org.acme.destro.Build"
transaction(tx): "org.acme.destro.Verify"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}
rule AllAccess {
description: "AllAccess - grant everything to everybody"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule read {
description: "AllAccess - grant everything to everybody"
participant: "org.hyperledger.composer.system.Participant"
operation: READ
resource: "org.acme.destro.Build"
action: ALLOW
}```
dselman (Thu, 31 Aug 2017 20:36:57 GMT):
Is peerBuild correct? Should the resource not be org.acme.destro.Build ?
mescoba1 (Thu, 31 Aug 2017 20:38:07 GMT):
Push is the transaction
dselman (Thu, 31 Aug 2017 20:38:38 GMT):
what are you trying to say in English?
mescoba1 (Thu, 31 Aug 2017 20:39:12 GMT):
A Peer can create a Push that has the ability to update/create/read a Build
dselman (Thu, 31 Aug 2017 20:41:04 GMT):
Perhaps there's a conceptual misunderstanding? The ACL rules are of the form: when participant
does operation
dselman (Thu, 31 Aug 2017 20:41:04 GMT):
Perhaps there's a conceptual misunderstanding? The ACL rules are of the form: when participant
does operation
dselman (Thu, 31 Aug 2017 20:41:33 GMT):
e.g.
dselman (Thu, 31 Aug 2017 20:41:50 GMT):
A drive called Dan can update a vehicle if he owns the vehicle.
dselman (Thu, 31 Aug 2017 20:41:50 GMT):
A driver called Dan can update a vehicle if he owns the vehicle.
dselman (Thu, 31 Aug 2017 20:42:50 GMT):
Or -- an update order status transaction can update an order, if the order is not in the SHIPPED state
mescoba1 (Thu, 31 Aug 2017 20:50:41 GMT):
So the following ACL doesn't say, Peer can create Build when performing a Push ?
mescoba1 (Thu, 31 Aug 2017 20:52:59 GMT):
When using the `Peer`, I am able to submit the transaction. However, the `Build registry` doesn't reflect the `Build` that should have created. It does reflect when I used `admin` tho
dselman (Thu, 31 Aug 2017 21:48:24 GMT):
which rule?
mescoba1 (Thu, 31 Aug 2017 22:14:58 GMT):
peerBuild and pushBuild
guoger (Fri, 01 Sep 2017 02:47:21 GMT):
A quick question, does Composer work with Fabric only?
guoger (Fri, 01 Sep 2017 02:47:21 GMT):
-A quick question, does Composer work with Fabric only?- never mind, found the answer
guoger (Fri, 01 Sep 2017 02:47:21 GMT):
~A quick question, does Composer work with Fabric only?~ never mind, found the answer
Hefziben (Fri, 01 Sep 2017 03:07:24 GMT):
hello guys, I am recently getting this error when trying to deploy the network: Error: Error trying deploy. Error: Failed to deserialize creator identity, err MSP Org1MSP is unknown. any advise is appreciated
rwadhwa (Fri, 01 Sep 2017 06:08:45 GMT):
Hi, I'm running Balance Transfer App, Fabric network for that app is Up. Now I want to deploy bna file on top of it, via composer. But getting the error:
✖ Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying install chaincode. Error: Endpoint read failed
Command failed
rwadhwa (Fri, 01 Sep 2017 06:08:57 GMT):
Any idea about this?
rohitaneja8 (Fri, 01 Sep 2017 06:22:39 GMT):
How do i enable user context from REST API? I have deployed .bna on fabrics and enabled REST using composer-rest-server now how do login with specific id and perform transactions on rest calls?
lucrezia.dm (Fri, 01 Sep 2017 07:35:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=u7K3dHz7zM747yqEP) @dselman
With new version, I'm not able to create new IDs. I wait the load but it does not give the expected results.
'
I still have problem with "Personally Identifiable Information Network" example. How can I do?
thanks.
coder-ajay (Fri, 01 Sep 2017 07:59:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4z367ANRgWAfqDFZS) @sstone1 : Okay. Thanks.
babedev (Fri, 01 Sep 2017 07:59:58 GMT):
Has joined the channel.
dselman (Fri, 01 Sep 2017 08:48:35 GMT):
@lucrezia.dm let me record a demo and post it, and update the README. Will try to get to it today
rohitaneja8 (Fri, 01 Sep 2017 09:35:13 GMT):
How do i enable user context from REST API? I have deployed .bna on fabrics and enabled REST using composer-rest-server now how do login with specific id and perform transactions on rest calls?
dselman (Fri, 01 Sep 2017 09:36:24 GMT):
Read about REST Server configuration here: https://hyperledger.github.io/composer/integrating/integrating-index.html
lucrezia.dm (Fri, 01 Sep 2017 09:50:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YTfoG3MhDH7x6Mt6c) @dselman
Now, with the new released version it's not possible to add new ID as well as admin.
yesterday (on online Playground) I was able to create admin2, today nothing .
lmrln (Fri, 01 Sep 2017 09:59:33 GMT):
Has joined the channel.
JeremyH (Fri, 01 Sep 2017 10:47:11 GMT):
Message Attachments
JeremyH (Fri, 01 Sep 2017 10:47:11 GMT):
Message Attachments
JeremyH (Fri, 01 Sep 2017 10:47:11 GMT):
Message Attachments
JeremyH (Fri, 01 Sep 2017 10:47:11 GMT):
Message Attachments
JeremyH (Fri, 01 Sep 2017 10:47:11 GMT):
Message Attachments
JeremyH (Fri, 01 Sep 2017 10:47:11 GMT):
Message Attachments
JeremyH (Fri, 01 Sep 2017 10:47:11 GMT):
Message Attachments
JeremyH (Fri, 01 Sep 2017 10:50:12 GMT):
Hi I'm trying to make a query to look at the historian records. I'm following this documentation to make the .qry file
https://hyperledger.github.io/composer/business-network/query.html,
but I'm running into an error when doing `npm install` where the org.hyperledger.composer.system.HistorianRecord namespace isn't found. Does the class have to be manually defined or am I doing something wrong?
JeremyH (Fri, 01 Sep 2017 10:50:12 GMT):
Hi I'm trying to make a query to look at the historian records. I'm following this documentation to make the .qry file
https://hyperledger.github.io/composer/business-network/query.html,
but I'm running into an error when doing `npm install` where the *org.hyperledger.composer.system.HistorianRecord* namespace isn't found. Does the class have to be manually defined or am I doing something wrong?
dselman (Fri, 01 Sep 2017 10:50:22 GMT):
@lucrezia.dm here is the video: https://www.youtube.com/watch?v=VTX-9VyO6OU&feature=youtu.be
dselman (Fri, 01 Sep 2017 10:50:49 GMT):
@JeremyH can you paste the error?
JeremyH (Fri, 01 Sep 2017 10:52:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FxqjzmRwvi7BSFCyD) @dselman It's the one above, was having trouble posting formatted text as its description
dselman (Fri, 01 Sep 2017 10:52:49 GMT):
What version of Composer does your app reference in package.json?
dselman (Fri, 01 Sep 2017 10:53:09 GMT):
How do you get the error exactly
JeremyH (Fri, 01 Sep 2017 10:53:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9iDZsCAqrmzn6WYou) @dselman @dselman It's the one above, was having trouble posting formatted text as its description.
dselman (Fri, 01 Sep 2017 10:54:25 GMT):
@JeremyH most likely explanation is that you reference an old version of Composer in your package.json
JeremyH (Fri, 01 Sep 2017 10:55:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PrBEiJRjAjxwzohpr) @dselman Thanks Daniel, I'll check that out
JeremyH (Fri, 01 Sep 2017 11:11:43 GMT):
@dselman v 0.9 is referenced under "engines", as well as in a number of other areas: "composer-client", "composer-cli", etc.
Is there a way to regenerate the package.json with correct values or is it possible to just change all the 0.9.0's to 0.12.0's manually without breaking anything?
dselman (Fri, 01 Sep 2017 11:12:22 GMT):
you should update all to be 0.12.0, then delete the node_modules folder and rerun npm install
JeremyH (Fri, 01 Sep 2017 11:34:36 GMT):
@dselman fixed, thank you!
lucrezia.dm (Fri, 01 Sep 2017 11:41:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FxqjzmRwvi7BSFCyD) @dselman
lucrezia.dm (Fri, 01 Sep 2017 11:41:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FxqjzmRwvi7BSFCyD) @dselman
I understood . thank you a lot. :-)
dselman (Fri, 01 Sep 2017 12:02:44 GMT):
:thumbsup:
dlubom (Fri, 01 Sep 2017 12:48:13 GMT):
Has joined the channel.
dlubom (Fri, 01 Sep 2017 12:48:51 GMT):
hello, is it possible to send to transaction array?
dlubom (Fri, 01 Sep 2017 12:48:53 GMT):
transaction GateOpenTransaction {
--> Permission[] asset
}
dlubom (Fri, 01 Sep 2017 13:00:02 GMT):
and how to work with this array in js : function GateOpenTransaction(tx) { ? }
dselman (Fri, 01 Sep 2017 13:02:57 GMT):
@dlubom this sample code may help - it uses `push` and `splice` JS array methods to add/remove entries from a JS array: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/lib/logic.js
dselman (Fri, 01 Sep 2017 13:03:08 GMT):
(standard JS stuff)
uber.twin (Fri, 01 Sep 2017 13:07:41 GMT):
@dselman hi, is is possible to hold on to the blockchain data when upgrading the runtime to a new version?
uber.twin (Fri, 01 Sep 2017 13:07:41 GMT):
@dselman hi, is it possible to hold on to the blockchain data when upgrading the runtime to a new version?
dlubom (Fri, 01 Sep 2017 13:09:37 GMT):
thx @dselman
dselman (Fri, 01 Sep 2017 13:10:18 GMT):
@uber.twin yes -- you can use the `composer network upgrade` CLI command.
davidkel (Fri, 01 Sep 2017 13:18:03 GMT):
@uber.twin there is a but in addition to using the `composer network upgrade` option. It can only upgrade microversions (eg 0.11.0 to 0.11.1 or 0.11.1 to 0.11.3 for example) it won't allow you to upgrade from 0.11.x to 0.12.0 as this kind of version change could imply a breaking change in the runtime
davidkel (Fri, 01 Sep 2017 13:18:03 GMT):
@uber.twin there is a "but" to using the `composer network upgrade` option. It can only upgrade microversions (eg 0.11.0 to 0.11.1 or 0.11.1 to 0.11.3 for example) it won't allow you to upgrade from 0.11.x to 0.12.0 as this kind of version change could imply a breaking change in the runtime
rwadhwa (Fri, 01 Sep 2017 13:27:38 GMT):
Hi, While deploying the network, I'm getting Handshaker factory creation failed with TSI_INVALID_ARGUMENT
Any idea what's the reason for this?
uber.twin (Fri, 01 Sep 2017 13:30:19 GMT):
@dselman @davidkel Alright, thank you for clarifying it. So when possible, the "upgrade" operation must be issued after a "runtime install"?
davidkel (Fri, 01 Sep 2017 13:32:47 GMT):
@uber.twin you always have to do a `composer runtime install` first to put the upgraded level of the composer runtime onto the peer(s). Then you can do a `composer network upgrade` upgrade the runtime. This will create a whole new docker container (note fabric leaves the old one still running but doesn't use it anymore)
uber.twin (Fri, 01 Sep 2017 13:40:46 GMT):
@davidkel yes, now I got two "dev" peers: 0.11.1 and 0.12.0. Is it OK to manually remove the unused containers?
davidkel (Fri, 01 Sep 2017 14:04:41 GMT):
@uber.twin Shouldn't be a problem is they aren't being used. Note that if the peer is using them it will restart them if it doesn't find it running
NikhilNanjappa (Fri, 01 Sep 2017 14:51:21 GMT):
Hi guys, I am currently implementing the authentication token feature of 0.12.0
uber.twin (Fri, 01 Sep 2017 14:51:24 GMT):
@davidkel is there availability for contracting Hyperledger Composer support for a commercial project?
NikhilNanjappa (Fri, 01 Sep 2017 14:52:31 GMT):
my first question is -- how do we get the value of the "access_token" as this value seems to be dynamic
NikhilNanjappa (Fri, 01 Sep 2017 14:53:19 GMT):
the REST UI does display the access_token but how can we make this available to the webapp to use
NikhilNanjappa (Fri, 01 Sep 2017 14:53:39 GMT):
more in lines of calling an api and getting the token etc. ?
NikhilNanjappa (Fri, 01 Sep 2017 15:12:52 GMT):
@sstone1
NikhilNanjappa (Fri, 01 Sep 2017 15:21:08 GMT):
I am calling the secured rest api via another webapp(call from the node side)
NikhilNanjappa (Fri, 01 Sep 2017 15:21:08 GMT):
I am calling the secured rest api from another webapp(call from the node side)
NikhilNanjappa (Fri, 01 Sep 2017 15:21:08 GMT):
I am calling the secured rest api from another webapp(calls made from the node side)
NikhilNanjappa (Fri, 01 Sep 2017 15:21:08 GMT):
I am calling the secured rest api from another webapp with different ports(calls made from the node side)
JeremyH (Fri, 01 Sep 2017 15:47:37 GMT):
I'm trying to see transaction inputs using queries to the HistorianRecord. In order to do this I'm aiming to emit events containing that information, however cannot get this to work in the REST API, my transactions are showing up without the events emitted (first screenshot). This is however working in the online playground (second screenshot).
My code for the event is:
```
event testEvent{
o String testvalue
}
```
And this is included in the script.js file
```
.then(function () {
var event = getFactory().newEvent('org.acme.sample','testEvent');
event.testvalue = "A";
emit(event);
});
```
My hope is that my query to the HistorianRecord will resemble Simon's example here _https://github.com/hyperledger/composer/issues/1850_ with the transaction details in the *eventsEmitted* part.
JeremyH (Fri, 01 Sep 2017 15:47:37 GMT):
I'm trying to see transaction inputs using queries to the HistorianRecord. In order to do this I'm aiming to emit events containing that information, however cannot get this to work in the REST API, my transactions are showing up without the events emitted (first screenshot). This is however working in the online playground (second screenshot).
My code for the event is:
```
event testEvent{
o String testvalue
}
```
And this is included in the script.js file
```
.then(function () {
var event = getFactory().newEvent('org.acme.sample','testEvent');
event.testvalue = "A";
emit(event);
});
```
My hope is that my query to the HistorianRecord will resemble Simon's example here _https://github.com/hyperledger/composer/issues/1850_ with the transaction details in the *eventsEmitted* part.
Alternatively, if there is a way to show the transaction inputs directly from a query to the HistorianRecord that would be great.
JeremyH (Fri, 01 Sep 2017 15:48:27 GMT):
Message Attachments
JeremyH (Fri, 01 Sep 2017 15:49:27 GMT):
Message Attachments
DomSteil (Fri, 01 Sep 2017 16:09:58 GMT):
Has joined the channel.
mescoba1 (Fri, 01 Sep 2017 16:57:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jzDNhbKnNRhjrBAJB) @JeremyH What is shown in the Events tab of that transaction?
mescoba1 (Fri, 01 Sep 2017 16:59:27 GMT):
@dselman ```rule pushBuild {
description: "Peer can alter Build when performing Push"
participant(m): "org.acme.destro.Peer"
operation: READ, CREATE, UPDATE
resource(v): "org.acme.destro.Build"
transaction(tx): "org.acme.destro.Push"
condition: (TRUE)
action: ALLOW
}``` Does this rule say, A `Peer` can create a `Build` when performing `Push`?
rwadhwa (Fri, 01 Sep 2017 17:28:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=R8swGJm3G4wkfKfup) @rwadhwa Hi All, Can someone throw some light on this? I'm completely stuck because of this.
mescoba1 (Fri, 01 Sep 2017 17:29:07 GMT):
What are you using to deploy network? @rwadhwa
rwadhwa (Fri, 01 Sep 2017 17:31:40 GMT):
@mescoba1 On local machine. I brought the "Balance Transfer" Network up..
rwadhwa (Fri, 01 Sep 2017 17:32:05 GMT):
and Trying to deploy the bna network separately created
rwadhwa (Fri, 01 Sep 2017 17:32:38 GMT):
Before deploying, I modified the hlfv1/Connection.json file
rwadhwa (Fri, 01 Sep 2017 17:33:41 GMT):
TLS for Balance Transfer Network is enabled...and I don't understand what exact values should I give for "cert" fields in Connection.json
rwadhwa (Fri, 01 Sep 2017 17:35:24 GMT):
@mescoba1 And to deploy the Network I'm using the command:
"composer network deploy -a my-network.bna -p hlfv1 -i MyAdmin-s kOstyuKjFpgH"
mescoba1 (Fri, 01 Sep 2017 17:40:19 GMT):
@rwadhwa I haven't messed with the TLS options myself. I don't think I'll be of much help, sorry.
rwadhwa (Fri, 01 Sep 2017 17:41:41 GMT):
@mescoba1 Me too. It's just that I haven't modified anything in the network..I'm using it as it is..and I'm not sure what values should be there for "Cert" fields in COnnection.json
mescoba1 (Fri, 01 Sep 2017 17:43:44 GMT):
Did you try using fabric tools https://hyperledger.github.io/composer/installing/development-tools.html to bring up network?
rwadhwa (Fri, 01 Sep 2017 17:54:49 GMT):
@mescoba1 By default, it's bringing up a test network with 1 peer, 1 orderer, 1 ca and with TLS disabled,,,which doesn't require any cert files in connection profile while deploying the network
rwadhwa (Fri, 01 Sep 2017 17:54:54 GMT):
so it's straight forward
rwadhwa (Fri, 01 Sep 2017 17:55:10 GMT):
In actual implementation, this won't work. Any suggestion on this?
mescoba1 (Fri, 01 Sep 2017 18:09:01 GMT):
Haven't gotten that far, working on POC first
rwadhwa (Fri, 01 Sep 2017 18:15:53 GMT):
@mescoba1 Okay. Thanks @mescoba1 :)
And All the Best :)
ilovelinux (Sat, 02 Sep 2017 00:45:37 GMT):
Has joined the channel.
ilovelinux (Sat, 02 Sep 2017 00:47:42 GMT):
What is the typical size of a BlockChain? Does every transaction create/update - creates a new block? Is there a way to see how blocks are assigned?
tublu (Sat, 02 Sep 2017 03:17:21 GMT):
Hi, I am trying to run yo hyperledger-composer but got this error : /usr/local/lib/node_modules/yo/node_modules/insight/node_modules/configstore/index.js:53
throw err;
^
Error: EACCES: permission denied, open '/Users/kaustavr/.config/configstore/insight-yo.json'
You don't have access to this file.
at Error (native)
at Object.fs.openSync (fs.js:641:18)
at Object.fs.readFileSync (fs.js:509:33)
at Object.get (/usr/local/lib/node_modules/yo/node_modules/insight/node_modules/configstore/index.js:34:26)
at Object.Configstore (/usr/local/lib/node_modules/yo/node_modules/insight/node_modules/configstore/index.js:27:44)
at new Insight (/usr/local/lib/node_modules/yo/node_modules/insight/lib/index.js:38:34)
at Object.
rainey (Sat, 02 Sep 2017 09:04:42 GMT):
hi everyone, so pleased to join you all.
rainey (Sat, 02 Sep 2017 09:04:59 GMT):
Having troubles with composer and love your help
rainey (Sat, 02 Sep 2017 09:05:07 GMT):
my command:
composer network deploy
rainey (Sat, 02 Sep 2017 09:05:19 GMT):
error:
[Symfony\Component\Console\Exception\CommandNotFoundException]
Command "network" is not defined.
rwadhwa (Sat, 02 Sep 2017 10:25:19 GMT):
@rainey Hi, I think, that's an issue with the installation of your Composer on your machine.
natarajan1c (Sat, 02 Sep 2017 12:24:45 GMT):
composer network deploy -a medical-device-tracking.bna -p hlfv1 -i admin -s adminpw
Deploying business network from archive: medical-device-tracking.bna
Business network definition:
Identifier: medical-device-tracking@0.0.1
Description: Empty Business Network
Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Failed to generate key for enrollment due to error [Error: EACCES: permission denied, open '/home/natarajan/.composer-credentials/45046634db126a73be068ddad2adb0751bfca57a81209728a81d09e0f38c831a-priv']
Command failed
natarajan1c (Sat, 02 Sep 2017 12:24:45 GMT):
composer network deploy -a medical-device-tracking.bna -p hlfv1 -i admin -s adminpw
Deploying business network from archive: medical-device-tracking.bna
Business network definition:
Identifier: medical-device-tracking@0.0.1
Description: Empty Business Network
Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Failed to generate key for enrollment due to error [Error: EACCES: permission denied, open '/home/natarajan/.composer-credentials/45046634db126a73be068ddad2adb0751bfca57a81209728a81d09e0f38c831a-priv']
Command failed
natarajan1c (Sat, 02 Sep 2017 12:24:45 GMT):
composer network deploy -a medical-device-tracking.bna -p hlfv1 -i admin -s adminpw
Deploying business network from archive: medical-device-tracking.bna
Business network definition:
Identifier: medical-device-tracking@0.0.1
Description: Empty Business Network
Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Failed to generate key for enrollment due to error [Error: EACCES: permission denied, open '/home/natarajan/.composer-credentials/45046634db126a73be068ddad2adb0751bfca57a81209728a81d09e0f38c831a-priv']
Command failed
natarajan1c (Sat, 02 Sep 2017 12:26:27 GMT):
Unable to deploy a network to a running instance of a fabric
glenlau (Sat, 02 Sep 2017 13:09:26 GMT):
Has joined the channel.
rainey (Sat, 02 Sep 2017 13:19:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=iehvvL7T7B5NpmSNa) @rwadhwa i have the following version:
composer -V
Composer version 1.5.1 2017-08-09 16:07:22
rwadhwa (Sat, 02 Sep 2017 13:19:55 GMT):
try PeerAdmin user if you are using the default network
rwadhwa (Sat, 02 Sep 2017 13:20:10 GMT):
@natarajan1c
rwadhwa (Sat, 02 Sep 2017 13:22:48 GMT):
@rainey composer -v returns this for me:
composer-cli v0.11.2
composer-admin v0.11.2
composer-client v0.11.2
composer-common v0.11.2
composer-runtime-hlf v0.11.2
composer-runtime-hlfv1 v0.11.2
rainey (Sat, 02 Sep 2017 13:24:17 GMT):
@rwadhwa hmmm.. i dont have all those.. however am a newbie.. any ideas how i get those? maybe the rest installed in a different path?
rainey (Sat, 02 Sep 2017 13:24:44 GMT):
composer-admin
zsh: command not found: composer-admin
rwadhwa (Sat, 02 Sep 2017 13:25:44 GMT):
I'm also a newbie...Try reinstalling it...Follow this: https://hyperledger.github.io/composer/installing/development-tools.html
rainey (Sat, 02 Sep 2017 13:33:30 GMT):
its now coming back its because i had errors in installation for stuff which i ignored.. :pensive: error probot@0.5.0: The engine "node" is incompatible with this module. Expected version "^7.7".
error Found incompatible module
info Visit https://yarnpkg.com/en/docs/cli/global for documentation about this command.
rainey (Sat, 02 Sep 2017 13:34:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=66FHHHS8zKdbCBpQS) @rwadhwa that's where I was following
JohnWhitton (Sat, 02 Sep 2017 18:08:10 GMT):
Updated the ticket with valstack error we've been having if anyone wants to take a look
https://github.com/hyperledger/composer/issues/1783
tublu (Sun, 03 Sep 2017 03:08:11 GMT):
Hi, I have installed Yeoman globally. But still getting this error.
tublu (Sun, 03 Sep 2017 03:08:13 GMT):
Error: EACCES: permission denied, open '/Users/kaustavr/.config/configstore/insight-yo.json'
You don't have access to this file.
tublu (Sun, 03 Sep 2017 03:08:36 GMT):
please suggest what to do ??
nasht00 (Sun, 03 Sep 2017 06:58:24 GMT):
Hi, regarding queries, it says:
> Note that query parameters must be primitive types (String, Integer, Double, Long, Boolean, DateTime), *a Relationship* or an Enumeration.
Is there an example on how you query on a relationship? Pass an ID? A resource?
shahidkhan (Sun, 03 Sep 2017 07:46:47 GMT):
Has joined the channel.
harsha (Sun, 03 Sep 2017 15:10:44 GMT):
Whilst installing `composer-cli` npm on ppc64le, I see `grpc@1.2.4` as a dependency failing, can this be grpc version bumped to 1.6.1 ?
harsha (Sun, 03 Sep 2017 15:10:44 GMT):
Whilst installing `composer-cli` npm on ppc64le, I see `grpc@1.2.4` as a dependency failing, can the grpc version bumped to 1.6.1 ?
liuwenliang0632 (Sun, 03 Sep 2017 16:14:26 GMT):
Has joined the channel.
liuwenliang0632 (Sun, 03 Sep 2017 16:31:07 GMT):
how to resolve this problem https://github.com/hyperledger/composer/issues/775
natarajan1c (Sun, 03 Sep 2017 18:21:39 GMT):
I am still getting an error message trying to deploy my first .BNA network to a running instance of the fabric:
natarajan@natarajan-Inspiron-7560:~/fabric-tools/my-network/dist$ composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: basic-sample-network@0.1.8
Description: The Hello World of Hyperledger Composer samples
Error: Error trying login and get user Context. Error: EACCES: permission denied, open '/home/natarajan/.composer-credentials/114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457-pub'
Command failed
jplew (Sun, 03 Sep 2017 20:43:55 GMT):
Has joined the channel.
jplew (Sun, 03 Sep 2017 20:47:00 GMT):
I want to upgrade to v12.0. Is this the best way to do this: npm update -g generator-hyperledger-composer
jplew (Sun, 03 Sep 2017 22:24:39 GMT):
I presume these two need to be updated as well: `npm update -g composer-rest-server` and `npm install -g composer-cli`
Salomon (Mon, 04 Sep 2017 01:57:02 GMT):
Has joined the channel.
Salomon (Mon, 04 Sep 2017 01:59:23 GMT):
Hi Im having issues with installing hyperledger composer playground local it doesnt work!
ilfrich (Mon, 04 Sep 2017 04:20:52 GMT):
@jplew Yes, from what I've seen the versions of the components have to be in sync.
jplew (Mon, 04 Sep 2017 04:21:26 GMT):
@ilfrich ok, thanks. looks like it's working.
ilfrich (Mon, 04 Sep 2017 04:21:33 GMT):
`npm start` fails, if you're generator version varies from the `composer-rest-server`
ilfrich (Mon, 04 Sep 2017 04:21:49 GMT):
Is it only those 2 packages that you have updated?
jplew (Mon, 04 Sep 2017 04:23:13 GMT):
I updated four: `generator-hyperledger-composer`, `composer-rest-server`, `composer-playground`, and `composer-cli`
ilfrich (Mon, 04 Sep 2017 04:23:38 GMT):
oh, ok. The CLI as well. I guess the playground is optional (only if you need it)
jplew (Mon, 04 Sep 2017 04:24:13 GMT):
I got the conflict error at first, but then rebooted my network deployment and now v12 is working smooth
ygnr (Mon, 04 Sep 2017 04:25:28 GMT):
Where will the keys/certificates stored if I add new identities by using `issueIdentity`?
ilfrich (Mon, 04 Sep 2017 04:25:44 GMT):
in `~/.composer-credentials`
ilfrich (Mon, 04 Sep 2017 04:25:44 GMT):
in `~/.composer-credentials` (I think...) :D
jplew (Mon, 04 Sep 2017 04:26:22 GMT):
I still haven't succeeded in installing the playground locally. I get this error: `npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.2 requires a peer of @angular/core@^4.0.3 but none was installed.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.2 requires a peer of @angular/common@^4.0.3 but none was installed.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.2 requires a peer of @angular/forms@^4.0.3 but none was installed.`
jplew (Mon, 04 Sep 2017 04:26:42 GMT):
which I find strange considering I'm using @angular/core 4.3
ilfrich (Mon, 04 Sep 2017 04:26:47 GMT):
That should be fine. Just warnings @jplew
ygnr (Mon, 04 Sep 2017 04:27:31 GMT):
@ilfrich you are right. Thanks
jplew (Mon, 04 Sep 2017 04:27:35 GMT):
oh, I'll try it then :)
ilfrich (Mon, 04 Sep 2017 04:28:08 GMT):
Looks like something requires `@angular/core@^4.0.3`, but you have 4.3 already installed, which means the thing that needs 4.0.3 will have to use 4.3 (I think). As long as they're backwards compatible, all should be fine.
jplew (Mon, 04 Sep 2017 04:28:36 GMT):
@ilfrich ok great. Are you one of the project devs?
ilfrich (Mon, 04 Sep 2017 04:28:42 GMT):
nah
ilfrich (Mon, 04 Sep 2017 04:28:56 GMT):
Just played around with it for a week.
jplew (Mon, 04 Sep 2017 04:29:04 GMT):
ok
jplew (Mon, 04 Sep 2017 04:32:35 GMT):
did you succeed in getting the playground to work locally?
jplew (Mon, 04 Sep 2017 04:33:04 GMT):
I know it's not essential, was just curious how to get it working
ilfrich (Mon, 04 Sep 2017 04:34:08 GMT):
Nah, haven't tried. I think the online playground would be good enough for most things.
ilfrich (Mon, 04 Sep 2017 04:34:20 GMT):
And you don't have to worry about all the containers and deployment.
ilfrich (Mon, 04 Sep 2017 04:34:40 GMT):
But ye, should probably work.
jplew (Mon, 04 Sep 2017 04:34:59 GMT):
yeah, I won't worry about it then
leixianting (Mon, 04 Sep 2017 05:14:58 GMT):
Has joined the channel.
nicehyperledger (Mon, 04 Sep 2017 06:27:05 GMT):
How I create local network for Hyper ledger fabric
Any one have any document for reference
Thanks in advance
ygnr (Mon, 04 Sep 2017 06:27:32 GMT):
Can we use custom password for identities instead of generated one by `issueIdentity` ?
subbu165 (Mon, 04 Sep 2017 06:50:46 GMT):
Has joined the channel.
ilfrich (Mon, 04 Sep 2017 07:31:09 GMT):
I don't think so @ygnr - even if you use the CLI, it will generate a password and print it out only once (you have to write it down, otherwise there's no way to retrieve it). I believe this is a security measure to avoid weak passwords.
NikhilNanjappa (Mon, 04 Sep 2017 08:21:29 GMT):
Can someone suggest, considering I have a webapp on a different server trying to access the secured rest api -- how to make the authentication token available to the webapp ? So I can use that to my subsequent requests
NikhilNanjappa (Mon, 04 Sep 2017 08:22:17 GMT):
The cookies in the callback does not seem to have the auth token
NikhilNanjappa (Mon, 04 Sep 2017 08:28:41 GMT):
I am currently using "passport-github" strategy
ilfrich (Mon, 04 Sep 2017 08:31:26 GMT):
Have you checked the response header of the auth REST call? @NikhilNanjappa
sstone1 (Mon, 04 Sep 2017 08:33:09 GMT):
@ygnr it's not a password - it's an enrolment secret, and you pass that secret to a CA (certificate authority). in return the CA gives you an enrolment certificate that you can use to sign and submit transactions to the Blockchain. once you have an enrolment certificate the enrolment secret is no longer used
sstone1 (Mon, 04 Sep 2017 08:33:55 GMT):
@NikhilNanjappa if you pick up the latest release v0.12.0, you will be able to see the access token in the REST API explorer. there is also new documentation on using the access token to make requests with any HTTP or REST client
sstone1 (Mon, 04 Sep 2017 08:34:18 GMT):
Message Attachments
NikhilNanjappa (Mon, 04 Sep 2017 08:34:20 GMT):
@sstone1 - I am actually using the latest release
NikhilNanjappa (Mon, 04 Sep 2017 08:34:51 GMT):
When I copy the token and manually use it in my request , I can access it
sstone1 (Mon, 04 Sep 2017 08:35:00 GMT):
great
NikhilNanjappa (Mon, 04 Sep 2017 08:35:14 GMT):
but since this token is dynamic I need a reliable way to get the same token everytime
sstone1 (Mon, 04 Sep 2017 08:35:43 GMT):
have you configured the REST server with a persistent data source such as MongoDB?
NikhilNanjappa (Mon, 04 Sep 2017 08:35:49 GMT):
yes
sstone1 (Mon, 04 Sep 2017 08:36:00 GMT):
the access token should not change then
sstone1 (Mon, 04 Sep 2017 08:36:06 GMT):
you should be able to use the same access token
sstone1 (Mon, 04 Sep 2017 08:36:29 GMT):
it might generate a new one each time you authenticate but the old access tokens should still be OK
NikhilNanjappa (Mon, 04 Sep 2017 08:37:08 GMT):
oh ok .. so even if the explorer shows a new one, the old token should ideally work ?
sstone1 (Mon, 04 Sep 2017 08:38:20 GMT):
yeah, i don't know why loopback chooses to generate a new token each time... seems a bit pointless unless the user explicitly requests a new token
ilfrich (Mon, 04 Sep 2017 08:38:47 GMT):
Well, I guess it doesn't care about the origin of the auth request. So each auth request is like it comes from a not-logged in user.
NikhilNanjappa (Mon, 04 Sep 2017 08:39:19 GMT):
wow thats great .. didnt know that information! I will test this asap :thumbsup: Thanks @sstone1
JeremyH (Mon, 04 Sep 2017 08:39:39 GMT):
I'm trying to build a Historian Query that will allow me to see Transactions (and their original inputs). I was kind of trying out an idea based on this issue https://github.com/hyperledger/composer/issues/1850, but that was fixed in the Composer Playground. So now I'm wondering how I can achieve this in the REST API without relying on events to hold the transaction input information.
The query I'm using from following the documentation is:
```
query HistorianRecords {
description: "Select from HistorianRecords"
statement: SELECT org.hyperledger.composer.system.HistorianRecord
}
```
But I expect that there's more that might need to be added?
NikhilNanjappa (Mon, 04 Sep 2017 08:40:47 GMT):
@ilfrich -- Thats good because currently via my webapp, I am just redirecting to the aws/auth/github and on success just redirecting back to my webapp again
NikhilNanjappa (Mon, 04 Sep 2017 08:43:01 GMT):
Also great to see new people joining the community ... Brilliant ! :woo:
rthatcher (Mon, 04 Sep 2017 08:48:25 GMT):
@ygnr there is an open issue for this https://github.com/hyperledger/composer/issues/1970
ilfrich (Mon, 04 Sep 2017 08:48:48 GMT):
I haven't found a way to extend the REST server. Are there any hooks to provide custom code for the REST server or add additional endpoints. Any way to add jobs or other hooks that might come in useful (e.g. startup hooks, shutdown hooks)?
sstone1 (Mon, 04 Sep 2017 08:51:38 GMT):
@ilfrich the REST server `composer-rest-server` is a standard LoopBack application, and Composer provides a standard LoopBack connector `loopback-connector-composer` - this means that you can create your own LoopBack application (maybe starting with a copy of the REST server code) and add whatever you need into it
sstone1 (Mon, 04 Sep 2017 08:52:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mQo3ohMTTpcMJ6tpG) @JeremyH @mbwhite can you help out with this one?
ilfrich (Mon, 04 Sep 2017 08:52:09 GMT):
Ok, but I would have to use the original code of the `composer-rest-server` as a baseline.
ilfrich (Mon, 04 Sep 2017 08:52:09 GMT):
Ok, but I would have to use the original code of the `composer-rest-server` as a baseline?
sstone1 (Mon, 04 Sep 2017 08:53:14 GMT):
yeah. if you create a new loopback application from scratch you'd probably want to steal our boot scripts at the very least - they drive the discovery process, which discovers the model files on the Blockchain and gives them to LoopBack in a format it understands
sstone1 (Mon, 04 Sep 2017 08:53:32 GMT):
https://github.com/hyperledger/composer/blob/master/packages/composer-rest-server/server/boot/composer-discovery.js
ilfrich (Mon, 04 Sep 2017 08:54:45 GMT):
Ye, that's the least you want. My biggest worry is that in order to extend loopback models (with hooks), I think they have to exist first. So not sure how that works in terms of passing a reference to the actual model back into the custom code that extends (hooks, etc.), if the actual model detection is async (or am I mistaken here?)
Akashgoyal (Mon, 04 Sep 2017 08:55:59 GMT):
Has joined the channel.
sstone1 (Mon, 04 Sep 2017 08:56:48 GMT):
agreed, that might be difficult
sstone1 (Mon, 04 Sep 2017 08:57:08 GMT):
it _should_ be possible to save the generated models to disk and then skip the discovery process
sstone1 (Mon, 04 Sep 2017 08:57:30 GMT):
the REST server does it dynamically so you can just restart it to pick up the changes, but maybe that doesn't suit all use cases
DannyWong (Mon, 04 Sep 2017 10:19:08 GMT):
Hi, did the current composer query supports querying an attribute match in a inner concept of an asset/
DannyWong (Mon, 04 Sep 2017 10:19:09 GMT):
?
DannyWong (Mon, 04 Sep 2017 10:21:54 GMT):
Seems that I first need to create a CouchDB view then write direct query to it?
sstone1 (Mon, 04 Sep 2017 10:44:55 GMT):
@DannyWong you should be able to run a query over inner concepts by just using dot notation `conceptProperty.innerConcept.theValue == 'foo'`
DannyWong (Mon, 04 Sep 2017 10:45:09 GMT):
ic, let me try
gcarrerat (Mon, 04 Sep 2017 11:16:26 GMT):
Has joined the channel.
gcarrerat (Mon, 04 Sep 2017 11:17:17 GMT):
Hello, is there any way to query all the transactions that contain a specific asset in Hyperledger Composer?
gcarrerat (Mon, 04 Sep 2017 12:54:44 GMT):
Like is there any way in /system/transactions of obtaining only the ones related to a specific asset
gcarrerat (Mon, 04 Sep 2017 12:55:35 GMT):
like querying the reply from /system/transactions from the composer, instead of getting the full history and then querying
ynkumar143 (Mon, 04 Sep 2017 13:03:29 GMT):
Has joined the channel.
Sakshi_44 (Mon, 04 Sep 2017 13:16:13 GMT):
Please guide me how can I configure the REST server with a persistent data source.
nasht00 (Mon, 04 Sep 2017 13:30:08 GMT):
I wrote a loop to generate test transactions.
One of the transactions in the loop fails with `MVCC_READ_CONFLICT`.
Can anyone explain?
nasht00 (Mon, 04 Sep 2017 13:30:08 GMT):
I wrote a loop to generate test transactions.
Some of the transactions in the loop fails with `MVCC_READ_CONFLICT`.
Can anyone explain?
mastersingh24 (Mon, 04 Sep 2017 13:37:10 GMT):
(https://chat.hyperledger.org/channel/general?msg=42BSY4z4w7AdbdspM) @Sakshi_44
rthatcher (Mon, 04 Sep 2017 13:44:11 GMT):
@Sakshi_44 - this document explains how to use a MongoDb as a persistent store. Other stores can be used.
https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
Sakshi_44 (Mon, 04 Sep 2017 13:45:26 GMT):
thank you @rthatcher
mahoney1 (Mon, 04 Sep 2017 14:05:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LsJTZCPPKaS4fQgsq) @nasht00 That is a Fabric error saying that (likely) 2 threads/peers have tried to modify the same key concurrently. Fabric uses a lock-free optimistic concurrency model and will roll back transactions that read/write modified keys.
You can read more about how HLF v1 implements optimistic concurrency here: https://media.readthedocs.org/pdf/hyperledger-fabric/latest/hyperledger-fabric.pdf . You need to avoid key collisions as far as possible and may need to write retry logic on the client side.
nasht00 (Mon, 04 Sep 2017 14:07:53 GMT):
But if all my keys are unique? Can it still happen?
nasht00 (Mon, 04 Sep 2017 14:11:06 GMT):
Actually, maybe I understand, my transaction includes a relationship asset, which may have the same ID...
Sakshi_44 (Mon, 04 Sep 2017 14:14:13 GMT):
In my application for example i have registered 2 (Sam, Tom) users. it got registered now I want to login with Sam so how can i authenticate that user at the time of login. is it with a secret id or password. i am not getting what should the procedure i need to follow. Please help
rthatcher (Mon, 04 Sep 2017 14:20:46 GMT):
@Sakshi_44 - There are a couple of different concepts here, and I will point you at a concepts doc in a moment. But I would suggest you look at `participants` and `identities` ('user' is a bit ambiguous). When you are OK with these concepts I would suggest looking at the doc for Authentication of the REST server - I will post that link in a moment too.
JeremyH (Mon, 04 Sep 2017 14:22:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CJjM6pdrkpNEuZ7xY) @sstone1 Got this working using
```
query Transactions1 {
description: "Select from transaction objects"
statement: SELECT org.acme.sample.Transfer
}
```
rthatcher (Mon, 04 Sep 2017 14:22:14 GMT):
https://hyperledger.github.io/composer/reference/glossary.html
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
mahoney1 (Mon, 04 Sep 2017 14:22:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EvKsAznCej84bCioE) @nasht00 quite possibly yes.. if the transactions are coming fast enough to end up in the same block and modify the same *state*, then you will have that problem.one solution (as this is a Fabric issue best asked on #fabric) - iswaiting for the transaction and checking it's status and if it's invalid, then repeating it
or not changing state concurrently, of course. a test script here https://github.com/hyperledger/fabric-sdk-go/blob/master/test/integration/events_test.go has something similar going on (in terms of checking). .This thread over on Fabric may also help https://chat.hyperledger.org/channel/fabric?msg=b7RuQ9m3jfYsc5oqW
lucrezia.dm (Mon, 04 Sep 2017 15:14:06 GMT):
hi, I have a question.
Starting from "pii-network" example , I would like to modify acl file.
I would combine:
- rule AuthorizeAccessTransaction {
description: "Allow all participants to submit AuthorizeAccess transactions"
participant: "ANY"
operation: CREATE
resource: "org.acme.model.AuthorizeAccess"
action: ALLOW
}
with something like :
-rule R1 {
description: "participants can not Authorize access for himself"
participant(r): "ANY"
operation: CREATE
resource(c): "org.acme.model.AuthorizeAccess"
condition: (c.getIdentifier() == r.getIdentifier())
action: DENY
}
what did I wrong?
Thanks.
MikeMayori (Mon, 04 Sep 2017 15:19:47 GMT):
participant (r) : any is calling me the attention, this rule should not be applied for a namespace??
MikeMayori (Mon, 04 Sep 2017 15:21:21 GMT):
for example : org.acme.bond.Issuer
MikeMayori (Mon, 04 Sep 2017 15:21:21 GMT):
like this :
lucrezia.dm (Mon, 04 Sep 2017 15:21:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qN9kPt3Qi6GiKfGGm) @MikeMayori
I never modify this :
- rule AuthorizeAccessTransaction {
description: "Allow all participants to submit AuthorizeAccess transactions"
participant: "ANY"
operation: CREATE
resource: "org.acme.model.AuthorizeAccess"
action: ALLOW
}
I only would like AuthorizeAccess for everyone but not for himself.
lucrezia.dm (Mon, 04 Sep 2017 15:22:38 GMT):
It was like this in the pii example on online playground. It runs.
MikeMayori (Mon, 04 Sep 2017 15:23:32 GMT):
rule OwnRecordFullAccess {
description: "Allow all participants full access to their own record"
participant(p): "org.acme.pii.Member"
operation: ALL
resource(r): "org.acme.pii.Member"
condition: (r.getIdentifier() === p.getIdentifier())
action: ALLOW
}
MikeMayori (Mon, 04 Sep 2017 15:24:15 GMT):
I see
MikeMayori (Mon, 04 Sep 2017 15:26:37 GMT):
can you share your environment
MikeMayori (Mon, 04 Sep 2017 15:26:46 GMT):
i can give you access to my playground
MikeMayori (Mon, 04 Sep 2017 15:29:15 GMT):
Do you have a single participant or multiple and different kinds
Sakshi_44 (Mon, 04 Sep 2017 15:47:06 GMT):
i want to check all identities of my network. ( composer identity list ) but getting this error. Is there anything wrong in the command.
Sakshi_44 (Mon, 04 Sep 2017 15:49:09 GMT):
Message Attachments
mahoney1 (Mon, 04 Sep 2017 16:06:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TYzFt3S7QsCoarAwD) @Sakshi_44 the most likely explanation for your 'denied' message is here -> https://stackoverflow.com/questions/45902288/hyperledger-composer-eacces-permission-denied - you can check the permissions yourself on using `ls -ld .composer-credentials` and check permissions. Did you install / re-install the composer npm modules using sudo - this is a likely case of the permissions problems
koushikd05 (Mon, 04 Sep 2017 16:07:48 GMT):
Hello guys..I added participant in my UI..
koushikd05 (Mon, 04 Sep 2017 16:07:53 GMT):
Message Attachments
koushikd05 (Mon, 04 Sep 2017 16:09:00 GMT):
after adding I can't find this user information in hyperledger playground when I import my .bna file in it .
koushikd05 (Mon, 04 Sep 2017 16:09:28 GMT):
where I can find my data(user information)???
Sakshi_44 (Mon, 04 Sep 2017 16:12:12 GMT):
i have tried with ls -ld .composer-credentials but got error. and yes initially i have done npm install but i was not able to open my rest server so I used sudo npm install and with sudo , rest -server worked (localhost:3000).
Sakshi_44 (Mon, 04 Sep 2017 16:12:53 GMT):
Message Attachments
mahoney1 (Mon, 04 Sep 2017 16:50:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8HHw9iE8Ghk5cjsQg) @Sakshi_44 .composer-credentials is in your $HOME. As mentioned here in bold we recommend you don't use sudo - it causes problems (and is not needed by Hyperledger Composer). https://hyperledger.github.io/composer//installing/development-tools.html
mahoney1 (Mon, 04 Sep 2017 16:50:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8HHw9iE8Ghk5cjsQg) @Sakshi_44 .composer-credentials is in your $HOME. As mentioned here in bold we recommend you don't use sudo - it causes problems (and is not needed by Hyperledger Composer). https://hyperledger.github.io/composer//installing/development-tools.html . Furthermore, if you're using our dev server setup, its likely you may still have been 'sudo' when you ran the setup script (createComposerProfile.sh) as it creates (re-)creates the .composer-credentials subdirectory.
mahoney1 (Mon, 04 Sep 2017 17:37:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GwfZnuhb9HHGvzzAD) @koushikd05 you deployed your network when you created your skeleton NG4 app? So you should be able to import the connection profile into Playground and connect to the same runtime Fabric - your data is there.
harsha (Mon, 04 Sep 2017 18:51:37 GMT):
Whilst installing `composer-cli` npm on ppc64le, I see `grpc@1.2.4` as a dependency failing, how can this be fixed ?
MaheshBiradar (Mon, 04 Sep 2017 19:51:55 GMT):
How can I do confidential transactions using Composer...My requirement is competitors should not see the auction amount from others..Please help
ilfrich (Tue, 05 Sep 2017 00:32:20 GMT):
Ye, the only way I see is by encrypting the transaction/payload [each participant owns some private key and it uses that key to encrypt the payload, then submit the transaction and the transaction code then needs to decrypt the payload and store the result] - and even then it is probably gonna be difficult. Don't take my word for it @MaheshBiradar, but I don't think Composer supports this.
karoshima (Tue, 05 Sep 2017 01:22:17 GMT):
Has left the channel.
AlexAlper (Tue, 05 Sep 2017 04:54:07 GMT):
Has joined the channel.
rohitaneja8 (Tue, 05 Sep 2017 06:33:17 GMT):
Seems like *"Adding a Blockchain identity to the default wallet"* from tutorial is not working. I am getting Error trying to get user context even after setting default identity.
rohitaneja8 (Tue, 05 Sep 2017 06:33:30 GMT):
Message Attachments
rohitaneja8 (Tue, 05 Sep 2017 06:35:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vdKcFBcwgR97QbkuE) @MaheshBiradar You need to define such rule in your business network. Find out permissions.acl file in composer, edit that as per your defined rule and that should do the job.
mna2017 (Tue, 05 Sep 2017 07:04:17 GMT):
Hi Team, How to (1) deploy a chaincode program written in golang? (2) How to install and instantiate?
mna2017 (Tue, 05 Sep 2017 07:05:46 GMT):
I am running Hyperledger version 1.0 and hyperledger composer inside of an IBM containter servce(kubernetes). I have finished all steps of deploying a basic chaincode(example02). I now want to get my custom chaincode up and running?
lucrezia.dm (Tue, 05 Sep 2017 07:33:42 GMT):
Hi,
I'm tring to modify acl file from "pii-network" example.
I would like to have authorized access only if participant want to authorize another member and not himself... How can I do it?
I did the following but it does not work as I expected.
rule AuthorizeAccessTransaction {
description: "Allow all participants to submit AuthorizeAccess transactions"
participant: "org.acme.model.Doctor"
operation: CREATE
resource: "org.acme.model.AuthorizeAccess"
action: ALLOW
}
rule RevokeAccessTransaction {
description: "Allow all participants to submit RevokeAccess transactions"
participant: "org.acme.model.Doctor"
operation: CREATE
resource: "org.acme.model.RevokeAccess"
action: ALLOW
}
rule OwnRecordFullAccess {
description: "Allow all participants full access to their own record"
participant(p): "org.acme.model.Doctor"
operation: ALL
resource(r): "org.acme.model.Doctor"
condition: (r.getIdentifier() === p.getIdentifier())
action: ALLOW
}
rule ForeignRecordConditionalAccess {
description: "Allow participants access to other people's records if granted"
participant(p): "org.acme.model.Doctor"
operation: ALL
resource(r): "org.acme.model.Doctor"
condition: (r.authorized && r.authorized.indexOf(p.getIdentifier()) > -1)
action: ALLOW
}
rule R1 {
description: "doctor can not Authorize access for himself"
participant(r): "org.acme.model.Doctor"
operation: CREATE
resource(c): "org.acme.model.AuthorizeAccess"
condition: (c.getIdentifier() == r.getIdentifier())
action: DENY
}
rule R2 {
description: "doctor can not Revoke access for himself"
participant(r): "org.acme.model.Doctor"
operation: CREATE
resource(c): "org.acme.model.RevokeAccess"
condition: (c.getIdentifier() == r.getIdentifier())
action: DENY
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
akshay111meher (Tue, 05 Sep 2017 07:37:34 GMT):
after starting my docker container and processing some transaction (via fabric-composer)
container size keeps on increasing and finally exceeds 2GB and the container stops working. is there any way that i could come out of it.
akshay111meher (Tue, 05 Sep 2017 07:38:45 GMT):
Message Attachments
uber.twin (Tue, 05 Sep 2017 07:46:23 GMT):
@mahoney1 hi, is Docker a viable solution for supporting a commercial Fabric deployment? also, are there other options potentially better suited for a production environment?
davidkel (Tue, 05 Sep 2017 08:05:11 GMT):
@akshay111meher Could you confirm what level of composer runtime you have installed on the chaincode containers (a composer network ping should give you the level). Also how quickly do you get to 2Gb ?
SimonOberzan (Tue, 05 Sep 2017 08:58:23 GMT):
Has joined the channel.
rohitaneja8 (Tue, 05 Sep 2017 09:12:34 GMT):
How can i enable user based access in REST services ? After enabling Auth, setting default user identity to wallet is not working.
akshay111meher (Tue, 05 Sep 2017 09:24:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=D3LwfGRHRbjhbegZ4) @davidkel
composer version is 0.7.5
approximately after 400 transactions i get to around 2GB.
akshay111meher (Tue, 05 Sep 2017 09:25:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=D3LwfGRHRbjhbegZ4) @davidkel
also the transaction registry get so large that
when I do *.getTransacationRegistry* the system crashses
JeremyH (Tue, 05 Sep 2017 09:27:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nFdGSYKeXkC5oXRSC) @rohitaneja8 There are a few steps needed to do this (assuming no error)
1. Export the COMPOSER_PROVIDERS, mentioning the passport module you are using and a client id and secret (github if you are using the github-passport, and vice versa)
2. Start the rest server in secured mode
3. Access your RESTAPI:3000/auth/github (or another url depending on what you provide in the COMPOSER_PROVIDERS)
4. Create identities in the command line https://hyperledger.github.io/composer/reference/composer.identity.issue.html (note that the participants must already exist)
5. Add the created identities in the API using POST wallet/identities
6. Then you can set the default
While working through these steps doing a GET System/Ping to see whether you are authorized or identified is very useful. A 401 Error will occur because you haven't been authenticated yet, a 'no enrollment id' is because you've been authenticated but are not using an identity, finally, if you have set the default identity correctly, the system ping will return the participant that the identity belongs to.
davidkel (Tue, 05 Sep 2017 09:27:54 GMT):
@akshay111meher that's quite an old version. We fixed a memory leak in 0.11 version which may help somewhat
akshay111meher (Tue, 05 Sep 2017 09:29:01 GMT):
i had built a whole lot of framework and application around 0.7.5 . However i will migrate to 0.11 now
rohitaneja8 (Tue, 05 Sep 2017 09:29:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jBmP3B8wZpjCwNgKH) @JeremyH Thanks for response, i think i missed step 4. let me check and get back
JeremyH (Tue, 05 Sep 2017 09:30:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hjZBpbdrWMp8agm9Y) @rohitaneja8 Also, you will have to delete the 'id' input (3rd row) in the JSON for the POST wallet/identity, the identity id will autonumber.
JeremyH (Tue, 05 Sep 2017 09:30:38 GMT):
[ ] @rohitaneja8 Also, you will have to delete the 'id' input (3rd row) in the JSON for the POST wallet/identity, the identity id will autonumber.
JeremyH (Tue, 05 Sep 2017 09:30:38 GMT):
@rohitaneja8 Also, you will have to delete the 'id' input (3rd row) in the JSON for the POST wallet/identity, the identity id will autonumber.
JeremyH (Tue, 05 Sep 2017 09:31:32 GMT):
@rohitaneja8 Also, you will have to delete the 'id' input (3rd row) in the JSON for the POST wallet/identity, the identity id will autonumber.
davidkel (Tue, 05 Sep 2017 09:31:49 GMT):
@akshay111meher I would recommend moving to 0.12 as this is the latest release. However things have changed a lot since 0.7.5 so there will be breaking changes you will have to address
rohitaneja8 (Tue, 05 Sep 2017 09:32:34 GMT):
Sure @JeremyH i did not missed that one though.
akshay111meher (Tue, 05 Sep 2017 09:56:24 GMT):
@davidkel
as mentioned, my problem doesnt look like a memory problem, it looks more why 2GB of space is being occupied so fast.
davidkel (Tue, 05 Sep 2017 09:59:45 GMT):
@akshay111meher So I would hope to eliminate this particular memory leak issue, however any fixes that might help this scenario won't be applied to earlier releases
rohitaneja8 (Tue, 05 Sep 2017 10:35:50 GMT):
Unable to issue new identity using PeerAdmin or admin, it says Authorization failed.
rohitaneja8 (Tue, 05 Sep 2017 10:35:56 GMT):
Message Attachments
rohitaneja8 (Tue, 05 Sep 2017 10:36:18 GMT):
Message Attachments
sstone1 (Tue, 05 Sep 2017 11:20:20 GMT):
@rohitaneja8 PeerAdmin is not a valid user on the CA, so it cannot issue identities. you need to use admin / adminpw which is a valid user on the CA.
uber.twin (Tue, 05 Sep 2017 12:56:14 GMT):
@sstone1 hi, other than the samples below, are there more specifications and possibly an actual, effective sample for the endorsement policy file?
spec:
```
{"endorsementPolicy": {"Identities": [...].
"policy: {...}"
},
"someOtherOption": "A Value"
}
```
sample
```
{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
}
],
"policy": {
"1-of": [
{
"signed-by": 0
}
]
}
}
```
sstone1 (Tue, 05 Sep 2017 13:04:14 GMT):
@uber.twin the Fabric project are responsible for the endorsement policy specification, we just pass it through to them - suggest you ask in #fabric or #fabric-sdk-node
uber.twin (Tue, 05 Sep 2017 13:06:26 GMT):
but aparently with the Fabric CLI, the policy declaration looks nothing like this, e.g. -P "AND('Org1.member', 'Org2.member')"
uber.twin (Tue, 05 Sep 2017 13:07:38 GMT):
I'd like to know the format required by the Composer CLI
uber.twin (Tue, 05 Sep 2017 13:07:38 GMT):
I'd like to know the format required by the Composer CLI
uber.twin (Tue, 05 Sep 2017 13:11:08 GMT):
I mean thought Composer CLI has it's own format for declaring the endorsement policy
uber.twin (Tue, 05 Sep 2017 13:11:08 GMT):
I mean I thought Composer CLI has it's own format for declaring the endorsement policy
JosephKovuri (Tue, 05 Sep 2017 13:11:12 GMT):
Has joined the channel.
sstone1 (Tue, 05 Sep 2017 13:13:30 GMT):
no, it's the JSON format specified by the Node.js SDK
sstone1 (Tue, 05 Sep 2017 13:13:30 GMT):
no, it's the JSON format specified by the Fabric Node.js SDK
sstone1 (Tue, 05 Sep 2017 13:14:03 GMT):
for some reason those Fabric guys thought it would be a good idea to have an endorsement policy format for the CLI and a format for the Node.js SDK
sstone1 (Tue, 05 Sep 2017 13:14:12 GMT):
you can't use the CLI format with the Node.js SDK and vice versa though
sstone1 (Tue, 05 Sep 2017 13:14:17 GMT):
:confused:
uber.twin (Tue, 05 Sep 2017 13:34:55 GMT):
I can't see any reference to the JSON format except in the Composer docs
uber.twin (Tue, 05 Sep 2017 13:35:01 GMT):
in a Composer environment, is correct that the only peer(s) wich will have access to chaincode is the one used to start the chaincode, i.e., the one referenced by the -p connection profile argument of the "composer network start"? and it'll also be the only endorser, if no endorsing policy is specified?
uber.twin (Tue, 05 Sep 2017 13:35:01 GMT):
in a Composer environment, is it correct that the only peer(s) which will have access to chaincode is the one used to start the chaincode, i.e., the one referenced by the -p connection profile argument of the "composer network start"? and it'll also be the only endorser, if no endorsing policy is specified?
mahoney1 (Tue, 05 Sep 2017 13:35:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Cxb5T77vAgg8K7ifm) @uber.twin sorry for delay. I can't say either way. Would've thought secured containers would be required, whatever type of container service you use eg. protect code throughout the blockchain application and effectively encapsulating 'the blockchain' into a virtual appliance, denying access even to privileged users etc etc What persistence architecture is set up if you use containers etc. etc. Tamper-responsive security modules to protect encrypted data for storage of cryptographic keys etc etc. Its a Fabric question really if you want to ask there - you can also google for other options available out there. BTW when you say 'commercial' I take it implies 'production grade or scale'
mahoney1 (Tue, 05 Sep 2017 13:35:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Cxb5T77vAgg8K7ifm) @uber.twin sorry for delay. I can't say either way. Would've thought secured containers would be required, whatever type of container service you use eg. protect code throughout the blockchain application and effectively encapsulating 'the blockchain' into a virtual appliance, denying access even to privileged users etc etc What persistence architecture is set up if you use secured containers etc. etc (if commercial, is this cloud based etc etc). Tamper-responsive security modules to protect encrypted data for storage of cryptographic keys etc etc. Its a Fabric question really if you want to ask there - you can also google for other options available out there. BTW when you say 'commercial' I take it implies 'production grade or scale'
mna2017 (Tue, 05 Sep 2017 13:36:21 GMT):
Hi Team, How to (1) deploy a chaincode program written in golang? (2) How to install and instantiate?
I am running Hyperledger version 1.0 and hyperledger composer inside of an IBM containter servce(kubernetes). I have finished all steps of deploying a basic chaincode(example02). I now want to get my custom chaincode up and running?
davidkel (Tue, 05 Sep 2017 13:39:21 GMT):
@uber.twin at the bottom of the page https://hyperledger.github.io/composer/reference/composer.network.deploy.html you will find a link to the hyperledger node sdk page that describes endorsement policy formats
davidkel (Tue, 05 Sep 2017 13:40:39 GMT):
Also at the bottom of the network start command as well
mahoney1 (Tue, 05 Sep 2017 13:40:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=teJDFaknaxhqtacgq) @mna2017 sorry this Channel is for Hyperledger Composer - for support with your environment you should go to this page https://console.bluemix.net/containers-kubernetes/launch?env_id=ibm:yp:eu-gb and also review troubleshooter section the https://console.bluemix.net/docs/containers/cs_troubleshoot.html#cs_troubleshoot - seems they're using Stack overflow http://stackoverflow.com/search?q=bluemix+containers.
mna2017 (Tue, 05 Sep 2017 13:42:09 GMT):
@mahoney1 I have been trying to get answers to this question. Posted on chaincode-dev channel as well but no reply so far.
mna2017 (Tue, 05 Sep 2017 13:43:40 GMT):
@mahoney1 The problem is, after the release of hyperledger fabric v1.0 everybody seems to be talking about chaincode developed via composer. I have a working chaincode program written in golang that was working fine with hyperledger fabric V0.6. I want to know how to quickly set this chaincode up and running on v1.0.
mna2017 (Tue, 05 Sep 2017 13:44:51 GMT):
@mahoney1 The question is more about chaincode and blockchain than kubernetes cluster. Could you guide to the right group or community who could answer this?
mahoney1 (Tue, 05 Sep 2017 13:47:59 GMT):
@mna2017 suggest to try #fabric or check on Stack Overflow https://stackoverflow.com/questions/tagged/hyperledger-fabric or https://stackoverflow.com/search?q=%5Bhyperledger-fabric%5D+example02
mahoney1 (Tue, 05 Sep 2017 13:47:59 GMT):
@mna2017 suggest to try #fabric or check on Stack Overflow https://stackoverflow.com/questions/tagged/hyperledger-fabric
mna2017 (Tue, 05 Sep 2017 14:07:57 GMT):
@mahoney1 Thanks for the links. I will try those!
dlubom (Tue, 05 Sep 2017 14:11:40 GMT):
hello, I have this user and assets: asset Permission identified by PermissionId {
o String PermissionId
o DateTime from
o DateTime to
o String location
}
participant User identified by userId {
o String userId
--> Permission[] permissions
o String firstName
o String lastName
}
how to make this conndition for all of table elements ?
condition: (r.getIdentifier() === p.permissions[0].getIdentifier())
mahoney1 (Tue, 05 Sep 2017 14:47:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DaLftbKhmpBxkHWrg) @dlubom you need something like this, to check/scan the (array of) relationships eg.
(function) https://stackoverflow.com/questions/44459155/includes-function-in-acl-condition or example here (rule R4) https://github.com/hyperledger/composer/blob/master/packages/composer-systests/systest/data/accesscontrols.acl#L42 and sample function code usage here https://github.com/hyperledger/composer/blob/master/packages/composer-systests/systest/data/accesscontrols.js#L19
dlubom (Tue, 05 Sep 2017 14:55:08 GMT):
thanks
GirijaShankarMishra (Tue, 05 Sep 2017 16:18:29 GMT):
Message Attachments
bestbeforetoday (Tue, 05 Sep 2017 16:35:52 GMT):
@GirijaShankarMishra I _think_ one of your resource URIs is referring to something that is not a resource. Do you have a type of `net.biz.irdaNetwork.User` defined somewhere in your model? The left-hand panel in your screen shot suggests you might have Person, Client and Insurer, but not User.
GirijaShankarMishra (Tue, 05 Sep 2017 16:38:07 GMT):
@bestbeforetoday This is my CTO
namespace net.biz.irdaNetwork
abstract participant User identified by id {
o String id
o String name
o String userType
}
participant Insurer extends User {
o String insurerOrg
o Double balance
}
participant Client extends User{
--> Insurer clientInsurer
o Boolean approveConsent optional
}
GirijaShankarMishra (Tue, 05 Sep 2017 16:39:55 GMT):
Message Attachments
GirijaShankarMishra (Tue, 05 Sep 2017 16:39:55 GMT):
Message Attachments
ilovelinux (Tue, 05 Sep 2017 17:33:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BKxBjP7qFxBm8yu9v) @GirijaShankarMishra Can you show what is in your Participant and Asset? Seems like you are trying to refer to a Participant which does not exists...
GirijaShankarMishra (Tue, 05 Sep 2017 17:35:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DnvsYzgY2HMoz5GcB) @ilovelinux This is my CTO
namespace net.biz.irdaNetwork
asset MedRecords identified by medId {
o String medId
--> Insurer owner
o String information
o String[] permittedParties
}
abstract participant User identified by id {
o String id
o String name
o String userType
}
participant Insurer extends User {
o String insurerOrg
o Double balance
}
participant Client extends User{
--> Insurer clientInsurer
o Boolean approveConsent optional
}
transaction UploadMedRecords {
--> Insurer insurer
--> MedRecords medRecord
}
transaction RequestConsent {
--> Insurer consentRequestedBy
--> MedRecords medId
}
transaction ProvideConsent {
--> Insurer consentProvidedFrom
--> MedRecords medId
}
uber.twin (Tue, 05 Sep 2017 17:45:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NjTTntAJ2rRupcdFy) @sstone1 @davidkel I can confirm that the endorsement policy can be setup using the "-o endorsementPolicyFile=./endorsementPolicy.json", with the policy file content below
```
{
"identities": [
{
"role": {
"name": "member",
"mspId": "myOrgMSP"
}
}
],
"policy": {
"1-of": [
{
"signed-by": 0
}
]
}
}
```
SethiSaab (Tue, 05 Sep 2017 20:41:16 GMT):
Hi team i am new to hyperledger and am etting error while running ./byfn.sh -m generate
Error on outputBlock: Error writing genesis block: open ./channel-artifacts/genesis.block: no such file or directory
Failed to generate orderer genesis block...
anyone please help me out
itmoss (Tue, 05 Sep 2017 23:51:29 GMT):
Has joined the channel.
ilfrich (Wed, 06 Sep 2017 02:42:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dzPdiNqehCWrNm9Qq) @SethiSaab Does the referenced file exist?
ilfrich (Wed, 06 Sep 2017 02:42:09 GMT):
@SethiSaab Does the referenced file exist?
levinkwong (Wed, 06 Sep 2017 03:21:35 GMT):
Hi guys, anyone here using Windows to play with Composer? There is problem on pkcs11 during installing Composer.
linyuadam (Wed, 06 Sep 2017 03:50:47 GMT):
Hi, all, I have a question about the query language. In couchdb query, there is sth like $elemMatch to test whether elements of an array hit sth. Is there any similar operator in the Composer query language
AkshayMisal (Wed, 06 Sep 2017 04:14:02 GMT):
Has joined the channel.
rohitaneja8 (Wed, 06 Sep 2017 04:50:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hjZBpbdrWMp8agm9Y) @rohitaneja8 Thanks Jeremy, it worked this time with registered participant, but there is still an issue, i see difference in identities issues in CLI and when i do get of identities in Wallet. Are we issuing System identities when we do it from CLI?
rohitaneja8 (Wed, 06 Sep 2017 04:50:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hjZBpbdrWMp8agm9Y) @rohitaneja8 Thanks Jeremy, it worked this time with registered participant, but there is still an issue, i see difference in identities issued in CLI and in Wallet, they are separate. Are we issuing System identities when we do it from CLI and walled identities when we do it in wallet?
rohitaneja8 (Wed, 06 Sep 2017 04:50:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Nm7CLsT6etr8oLnEc) @sstone1 Thanks it worked with admin user. but there is an issue as below
rohitaneja8 (Wed, 06 Sep 2017 04:52:21 GMT):
I can ping network from CLI but doesn't work when I try from REST services
rohitaneja8 (Wed, 06 Sep 2017 04:52:21 GMT):
*I can ping network from CLI but doesn't work when I try from REST services*
rohitaneja8 (Wed, 06 Sep 2017 04:52:21 GMT):
*I can ping network from CLI but doesn't work when I try from REST services, using same identity : rohitId*
rohitaneja8 (Wed, 06 Sep 2017 04:52:22 GMT):
Message Attachments
davidkel (Wed, 06 Sep 2017 06:28:47 GMT):
@rohitaneja8 The problem you are seeing is described in https://github.com/hyperledger/composer/issues/1761
davidkel (Wed, 06 Sep 2017 06:33:30 GMT):
@levinkwong We know there are lots of issues with trying to install various parts of composer on windows so we don't support it.
davidkel (Wed, 06 Sep 2017 06:33:30 GMT):
@levinkwong We know there are lots of issues with trying to install various parts of composer on windows so we don't support it. There is some investigation into this described by https://github.com/hyperledger/composer/issues/65 and https://github.com/hyperledger/composer/issues/1628
mna2017 (Wed, 06 Sep 2017 06:42:51 GMT):
Hi Team, I have deployed local composer inside of ibm container. The composer playground is working fine. The composer REST explorer which is generally shown on "http://YOUR_PUBLIC_IP_HERE:31090/explorer/" is not working. I am following this link "https://github.ibm.com/IBM-Blockchain/ibm-container-service/blob/v1.0.0/cs-offerings/free/docs/setup-composer.md". I have ran both the commands to bring up the composer-rest-server but its not running as of now.
mna2017 (Wed, 06 Sep 2017 06:43:05 GMT):
Am i Missing any step?
linyuadam (Wed, 06 Sep 2017 06:49:04 GMT):
Hi, anyone knows the syntax to use 'SKIP' and 'LIMIT' in composer query language
nasht00 (Wed, 06 Sep 2017 06:57:04 GMT):
My `package.json` says `"composer-cli": "latest",`.
Today I ran `npm update`, and got the following error:
`npm ERR! invalid: composer-cli@0.12.0 /Users/nathanh/Git/WatsonHealth/vbcontracts/scripts/node_modules/composer-cli`
nasht00 (Wed, 06 Sep 2017 06:57:04 GMT):
My `package.json` says `"composer-cli": "latest",`.
Today I ran `npm update`, and got the following error:
`npm ERR! invalid: composer-cli@0.12.0 /Users/some-path/node_modules/composer-cli`
nasht00 (Wed, 06 Sep 2017 07:00:19 GMT):
I deleted the node_modules dir and did a `npm install`, and now it works ...
linyuadam (Wed, 06 Sep 2017 07:14:47 GMT):
@sstone1 Thanks for your answer to me in composer-dev channel. Another question is that it seems the SKIP and LIMIT keyword in composer query language is not working. This is my syntax: statement:
SELECT com.Agreement
WHERE (country == _$country) LIMIT _$limitNo SKIP _$skipNo
sstone1 (Wed, 06 Sep 2017 07:25:00 GMT):
@linyuadam this is a Fabric problem; Fabric hardcodes SKIP to 0 and LIMIT to 10000
sstone1 (Wed, 06 Sep 2017 07:25:06 GMT):
https://jira.hyperledger.org/browse/FAB-5369
linyuadam (Wed, 06 Sep 2017 07:25:33 GMT):
@sstone1 I see. Thanks!
sstone1 (Wed, 06 Sep 2017 07:25:44 GMT):
looks like it's been folded into https://jira.hyperledger.org/browse/FAB-2809
levinkwong (Wed, 06 Sep 2017 07:26:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=r7vFPoMqYcWs2mvcr) @davidkel
OK, thanks.
mahoney1 (Wed, 06 Sep 2017 07:27:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dzPdiNqehCWrNm9Qq) @SethiSaab hi there welcome to Hyperledger world, although your question should be asked on the Fabric #fabric Rocketchat channel -> perhaps this helps https://jira.hyperledger.org/browse/FAB-3467
rohitaneja8 (Wed, 06 Sep 2017 07:29:39 GMT):
I can ping network from CLI but doesn't work when I try from REST services, using same identity : rohitId
rohitaneja8 (Wed, 06 Sep 2017 07:29:47 GMT):
Message Attachments
mahoney1 (Wed, 06 Sep 2017 07:30:52 GMT):
fyi @here - the Community call will be at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories or use cases on the call best regards Paul
davidkel (Wed, 06 Sep 2017 07:33:52 GMT):
@rohitaneja8 you are definitely hitting the situation described by https://github.com/hyperledger/composer/issues/1761. The certificate being used by the CLI are not exactly the same as the one the rest server is using even though they represent the same identity
rohitaneja8 (Wed, 06 Sep 2017 07:36:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NS6wAQHycmuvspCvJ) @davidkel So you mean there is no way ahead of this, if i want my network to work with Multi user on REST until this issue is fixed? Or can i simply identity somehow and link to participant only from REST to proceed with multi user setup?
rohitaneja8 (Wed, 06 Sep 2017 07:36:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NS6wAQHycmuvspCvJ) @davidkel So you mean there is no way ahead of this, if i want my network to work with Multi user on REST until this issue is fixed? Or can i simply create identity somehow and link to participant only from REST to proceed with multi user setup?
davidkel (Wed, 06 Sep 2017 07:41:35 GMT):
@rohitaneja8 Once you have issued the identity, don't ping it from the CLI. If you need to ping it, use the rest server and let the rest server activate that identity
davidkel (Wed, 06 Sep 2017 07:41:35 GMT):
@rohitaneja8 Once you have issued the identity, don't ping it from the CLI. If you need to ping it, use the rest server but let the rest server activate that identity
rohitaneja8 (Wed, 06 Sep 2017 07:42:20 GMT):
ok let me try that.
nasht00 (Wed, 06 Sep 2017 08:19:10 GMT):
Is there an API that would allow me to check the last change time to the registry or ledger?
For performance purposes, I'm thinking to cache data and not query the ledger every time.
I need a way to check if something changed ...
bestbeforetoday (Wed, 06 Sep 2017 08:23:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=s2cRRD3kBQtSdoWf6) @GirijaShankarMishra There seems to be a mismatch between your CTO and the network that is actually deployed (or at least what is displayed on your Playground UI). Your screenshot shows the participants as Person, Client and Insurer. No User.
czar0 (Wed, 06 Sep 2017 08:44:21 GMT):
hey guys, I am following all the steps to set up a blockchain network (together with composer) on a kubernetes cluster. Everything works fine till I need to use the composer connection file ( https://ibm-blockchain.github.io/interacting/ ). I believe the presented connection file is not formatted as it should and misses some information: `oderders` and `peers` should be arrays and not objects; `type` should be specified; some syntax errors.
After fixing all this, I tried to ping the network with the `admin` identity and `adminpw` secret, receiving:
`Error: No key value store directory or wallet has been specified`
So, I guess also `keyValStore` should be specified.
@sstone1 @mahoney1 @davidkel could you provide some inputs to successfully connect an external application to a remote blockchain network through composer?
mna2017 (Wed, 06 Sep 2017 08:46:26 GMT):
Hi Team, I have written a basic network on composer using marbles demo as the skeleton. My frontend which is a nodeJS app now want to have "createAsset" and "queryAsset" transactions available. The marbles demo and all other demos that I have seen only talk about the update transaction of some form. Could you guys give some example about "query" and "create".
dselman (Wed, 06 Sep 2017 08:50:07 GMT):
Sample of running a named query in a TP function: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L42
dselman (Wed, 06 Sep 2017 08:51:13 GMT):
Sample of creating assets and participants in a TP function: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L127
dragon82 (Wed, 06 Sep 2017 08:58:58 GMT):
Has joined the channel.
linyuadam (Wed, 06 Sep 2017 09:09:39 GMT):
@sstone1 for composer query language, is there any aggregate function we can use in the query to count result no., (e.x. select count(sth) from ...)
dselman (Wed, 06 Sep 2017 09:24:46 GMT):
Not implemented yet: https://github.com/hyperledger/composer/issues/2052
mpiekarska (Wed, 06 Sep 2017 09:27:06 GMT):
Has joined the channel.
mpiekarska (Wed, 06 Sep 2017 09:28:11 GMT):
hi @here is the community call happening?
mahoney1 (Wed, 06 Sep 2017 09:29:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eA3zKJWmczhypZS4B) @linyuadam not presently. This issue is captured here -> https://github.com/hyperledger/composer/issues/2052 . At this time, you can a count on the query result(s) in your code.
mahoney1 (Wed, 06 Sep 2017 09:29:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eA3zKJWmczhypZS4B) @linyuadam not presently. This issue is captured here -> https://github.com/hyperledger/composer/issues/2052 . At this time, you can do a count on the query result(s) in your code.
rthatcher (Wed, 06 Sep 2017 09:31:09 GMT):
@czar0 - in the example `connection.json` file that I have there is a variable for keyValStore
`"keyValStore": "/home/ibm/.composer-credentials",`
My example is from an Ubuntu system with the user called 'ibm'.
The directory/folder for keyValStore will need the certificates for the admin user to be added, or you might be better off issuing a new identity from the Composer Playground and then when you specifiy the ID and Secret for the first time, the Certificate will be downloaded to the keyValStore.
GirijaShankarMishra (Wed, 06 Sep 2017 09:31:17 GMT):
Message Attachments
linyuadam (Wed, 06 Sep 2017 09:31:41 GMT):
@mahoney1 Thanks for your information. We may have a large return result, and we won't cause memory hogging. So we want to count on the query level.
davidkel (Wed, 06 Sep 2017 09:33:37 GMT):
@czar0 details of connection profiles are here
https://hyperledger.github.io/composer/reference/connectionprofile.html
rthatcher (Wed, 06 Sep 2017 09:39:09 GMT):
@GirijaShankarMishra - the error is showing that you are missing a `connection.json` file under the folder for the connection profile `hlfv1` - assuming that the file isn't there ...
Are you working with a locally installed dev fabric? Did you create it using the 'fabric-tools' scripts? Did you remember to run the `createComposerProfile.sh` script?
czar0 (Wed, 06 Sep 2017 09:46:16 GMT):
@davidkel how does that match with the one shown in this page? https://ibm-blockchain.github.io/interacting/
For instance, in your example `ca` is a single component, what if we have more like in the standard configuration on bluemix cluster? what about multiple organizations?)
Could you please provide a correct version of it?
GirijaShankarMishra (Wed, 06 Sep 2017 09:46:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2A9yre8tfw67xGxQG) @rthatcher Thanks. I am just doing that steps. Somehow I missed it.
lucrezia.dm (Wed, 06 Sep 2017 09:49:14 GMT):
Hi,
I'm tring to modify acl file from "pii-network" example.
I would like to have authorized access only if participant want to authorize another member and not himself... How can I do it?
I did the following but it does not work as I expected.
rule AuthorizeAccessTransaction {
description: "Allow all participants to submit AuthorizeAccess transactions"
participant: "org.acme.model.Doctor"
operation: CREATE
resource: "org.acme.model.AuthorizeAccess"
action: ALLOW
}
rule RevokeAccessTransaction {
description: "Allow all participants to submit RevokeAccess transactions"
participant: "org.acme.model.Doctor"
operation: CREATE
resource: "org.acme.model.RevokeAccess"
action: ALLOW
}
rule OwnRecordFullAccess {
description: "Allow all participants full access to their own record"
participant(p): "org.acme.model.Doctor"
operation: ALL
resource(r): "org.acme.model.Doctor"
condition: (r.getIdentifier() === p.getIdentifier())
action: ALLOW
}
rule ForeignRecordConditionalAccess {
description: "Allow participants access to other people's records if granted"
participant(p): "org.acme.model.Doctor"
operation: ALL
resource(r): "org.acme.model.Doctor"
condition: (r.authorized && r.authorized.indexOf(p.getIdentifier()) > -1)
action: ALLOW
}
rule R1 {
description: "doctor can not Authorize access for himself"
participant(r): "org.acme.model.Doctor"
operation: CREATE
resource(c): "org.acme.model.AuthorizeAccess"
condition: (c.getIdentifier() == r.getIdentifier())
action: DENY
}
rule R2 {
description: "doctor can not Revoke access for himself"
participant(r): "org.acme.model.Doctor"
operation: CREATE
resource(c): "org.acme.model.RevokeAccess"
condition: (c.getIdentifier() == r.getIdentifier())
action: DENY
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
mahoney1 (Wed, 06 Sep 2017 09:52:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rqBpee6DdxznwknDR) @mpiekarska it happened :-) it was 10am (UK time).
mpiekarska (Wed, 06 Sep 2017 09:53:20 GMT):
oh, I dialed into the zoom at 10.15 and there was nobody there?
mahoney1 (Wed, 06 Sep 2017 09:55:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fYXyFGef3awnhX67A) @mpiekarska I see..yes it was a short community call this 'morning', so it had ended just before that time..recordings will be posted here https://drive.google.com/drive/folders/0B_NJV6eJXAA1b25MdHlXdkM0LWc
mpiekarska (Wed, 06 Sep 2017 09:55:41 GMT):
Thanks!
dselman (Wed, 06 Sep 2017 09:59:34 GMT):
@lucrezia.dm please post this to Stackoverflow and include more information about the analysis you've carried out, what you are seeing, and what you expect to see.
GirijaShankarMishra (Wed, 06 Sep 2017 10:00:58 GMT):
Message Attachments
GirijaShankarMishra (Wed, 06 Sep 2017 10:00:58 GMT):
Message Attachments
ilfrich (Wed, 06 Sep 2017 10:23:31 GMT):
Are your docker containers for the fabric up&running? (`docker ps`)
ilfrich (Wed, 06 Sep 2017 10:23:31 GMT):
Are your docker containers for the fabric up&running? `docker ps`
GirijaShankarMishra (Wed, 06 Sep 2017 10:50:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=S2BE2r9tkuzSQL4hf) @ilfrich Yes all the containers are up
ilfrich (Wed, 06 Sep 2017 10:59:52 GMT):
Hm local network issues?
lucrezia.dm (Wed, 06 Sep 2017 11:05:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KgSSk7BCAjmwuZao3) @dselman
ok thank you. Now, I'm doing it.7
GirijaShankarMishra (Wed, 06 Sep 2017 11:09:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YYXx8faj5P6DE5ETH) @ilfrich This issue has been resolved
GirijaShankarMishra (Wed, 06 Sep 2017 11:13:23 GMT):
Hi I have successfully deployed the bna file in composer network locally. When I pinged the same I am getting the following error
Error: Error trying to ping. Error: Error trying to query chaincode. Error: could not find chaincode with name 'dp-network' - make sure the chaincode dp-network has been successfully instantiated and try again
Command failed
Also please find the container logs below :
Error: Unhandled promise rejection {}
at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
at error () native strict preventsyield
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1) preventsyield
at call () native strict preventsyield
at [anon] (eval:1) preventsyield
Error: Unhandled promise rejection {}
at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
at error () native strict preventsyield
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1) preventsyield
at call () native strict preventsyield
at [anon] (eval:1) preventsyield
Error: Unhandled promise rejection {}
at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
at error () native strict preventsyield
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1) preventsyield
at call () native strict preventsyield
at [anon] (eval:1) preventsyield
lucrezia.dm (Wed, 06 Sep 2017 11:26:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KgSSk7BCAjmwuZao3) @dselman
https://stackoverflow.com/questions/46073996/acl-permission-hyperledger-composer.
rwadhwa (Wed, 06 Sep 2017 11:32:54 GMT):
I have a network running with 4 peers, 2 orgs, 1 orderer and 2 CAs
rwadhwa (Wed, 06 Sep 2017 11:33:17 GMT):
I want to deploy .bna file, but getting the cannot read endpoint error..
rwadhwa (Wed, 06 Sep 2017 11:33:27 GMT):
Connection profile has the correct URLs
rwadhwa (Wed, 06 Sep 2017 11:33:37 GMT):
Is there anything that I need to check?
UDeshmukh (Wed, 06 Sep 2017 12:13:58 GMT):
Hi there,
For the ‘Provider-Payer’ proof-of-concept scenario I’m building – I have coded SetupDemo Transaction to create multiple patients (& their respective electronic health) master records for my development/testing purposes.
abstract participant Person identified by personID {
o String personID
o RoleType role
o String title
o String firstName
o String lastName
o Address address
}
participant Patient extends Person {
o String DOB
o String SSN
o Double balance // Health Savings Account (HSA) Balance
}
asset HealthRecord identified by recordID {
o String recordID
o String recordDate
--> Patient patient
--> Doctor doctor
--> Laboratory laboratory optional
o String notes
}
I would like to build in a feature to ‘import’ this data (extracted from a legacy application) Is there a sample code available somewhere which I can leverage/build upon for this ?
Thanks
ilfrich (Wed, 06 Sep 2017 12:19:33 GMT):
@UDeshmukh if I understand your question correctly, I think you need to build a separate connector (application), that reads from the legacy system and uses the REST server to update the blockchain.
UDeshmukh (Wed, 06 Sep 2017 12:21:08 GMT):
Yes sir... subsequently to make it real time... For now I'd like to test this out in the online playground via a separate transaction. I presume I would have to build a JSon format data file to be imported in?
ilfrich (Wed, 06 Sep 2017 12:23:27 GMT):
Sort of. You can use whatever you want for this (e.g. a python script, a nodejs script, ...) - you connect to the legacy system (via whatever connection is offered by that system). Read (and parse) the records - convert the record structure into your `HealthRecord` / `Patient` format - and then call the REST server provided by composer to insert (or update already migrated) assets and participants.
ilfrich (Wed, 06 Sep 2017 12:24:07 GMT):
The REST endpoint accepts JSON.
ilfrich (Wed, 06 Sep 2017 12:24:07 GMT):
The REST endpoints accepts JSON.
UDeshmukh (Wed, 06 Sep 2017 12:28:22 GMT):
I get it conceptually. Was looking for help with the 2nd part (...call the REST server provided by composer to insert (or update already migrated) assets and participants. ) once a JSon formatted data file was ready to be processed. Is there some sample code available somewhere that I could leverage ?
UDeshmukh (Wed, 06 Sep 2017 12:31:44 GMT):
I read this exchange: https://stackoverflow.com/questions/14484613/load-local-json-file-into-variable but could not figure out how I would code it in Composer. Pl. forgive me ..my JS knowledge is just 2 months old... :-(
JeremyH (Wed, 06 Sep 2017 12:33:27 GMT):
is anyone experiencing that the Composer 0.12.0 Rest API is slower than previous Composer versions?
ilfrich (Wed, 06 Sep 2017 13:23:20 GMT):
@UDeshmukh you can use `request-promise` (npm package) to call the REST api - the API endpoint spec with the expected payload you can see in the explorer (default http://localhost:3000/explorer). Additionally you might need to authenticate (separate endpoints - see explorer + setting an authentication header for subsequent requests).
UDeshmukh (Wed, 06 Sep 2017 13:27:44 GMT):
@ilfrich Thanks! let me research the resources you mention
lucrezia.dm (Wed, 06 Sep 2017 14:15:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=C8J9Zn6s8sBYyz4Zu) @dselman
do you think someone will answer me?
lucrezia.dm (Wed, 06 Sep 2017 14:35:05 GMT):
Message Attachments
lucrezia.dm (Wed, 06 Sep 2017 14:35:05 GMT):
Message Attachments
JeremyH (Wed, 06 Sep 2017 14:36:20 GMT):
I have an issue where using my API, eventually it runs out of memory and the API becomes unresponsive. Is there a mechanism to release memory after API calls have been made?
mescoba1 (Wed, 06 Sep 2017 16:26:36 GMT):
I'm running the `Composer Rest Server` and when I perform curl commands, from my understanding those are running with Admin credentials.
Is there a way for me to perform rest calls to the server using an `Issued Identity`?
arsalan 4 (Wed, 06 Sep 2017 18:40:44 GMT):
hey guys im seeing some weird shit when trying to get fabric up and running with my business definition
ScottMorris (Wed, 06 Sep 2017 18:57:34 GMT):
is there a way to find out the version of a Business Network that is deployed?
torresjeff (Wed, 06 Sep 2017 19:19:03 GMT):
@ScottMorris using `composer network ping`
ScottMorris (Wed, 06 Sep 2017 19:20:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3y7j3r2YrAvHDWqWS) @torresjeff That seems to only return the version of composer installed.
ScottMorris (Wed, 06 Sep 2017 19:20:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3y7j3r2YrAvHDWqWS) @torresjeff That seems to only return the version of composer installed.
```
composer network ping -p hlfv1 -n myNetwork -i PeerAdmin -s secret
The connection to the network was successfully tested: myNetwork
version: 0.12.0
participant:
torresjeff (Wed, 06 Sep 2017 19:22:07 GMT):
hmm right
torresjeff (Wed, 06 Sep 2017 19:23:32 GMT):
you could try downloading the network and checking the version in the package.json
torresjeff (Wed, 06 Sep 2017 19:23:46 GMT):
using `composer network download`
SethiSaab (Wed, 06 Sep 2017 19:37:45 GMT):
Hi team
i am trying not able to generate crypto-config.yaml can you please tell me how to generate this file because when i run the command i am getting the following error ./cryptogen generate --config=./crypto-config.yaml
cryptogen: error: open ./crypto-config.yaml: no such file or directory, try --help
torresjeff (Wed, 06 Sep 2017 19:44:23 GMT):
Are all sample networks deployed to the default chaincode container (org-acme-biznet)? what if i want composer playground to connect to a business network i have deployed with the CLI (ie. has its own cc container)?
ScottMorris (Wed, 06 Sep 2017 20:03:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=cSH9u7P2PDp69ZZ2M) @torresjeff This worked, when it makes the new bna file it tells you what version of the BN you are downloading.
ScottMorris (Wed, 06 Sep 2017 20:22:03 GMT):
does anyone know if there is a way to debug the ACLs?
mescoba1 (Wed, 06 Sep 2017 20:40:08 GMT):
I would use the playground @ScottMorris
mescoba1 (Wed, 06 Sep 2017 20:41:33 GMT):
Upload the BNA to the playground.
On the playground, you will be able to Issue ID's with Participants, store them in your wallet, and perform transactions on their behalf
ScottMorris (Wed, 06 Sep 2017 20:44:38 GMT):
does connecting the playground to another network via ID card allow one to play with the files there?
ScottMorris (Wed, 06 Sep 2017 20:44:38 GMT):
does connecting the playground to another network via an ID card allow one to play with the files there?
mescoba1 (Wed, 06 Sep 2017 20:45:18 GMT):
You can mess with the Assets and call Transactions
mescoba1 (Wed, 06 Sep 2017 20:45:25 GMT):
If that's what you mean
gauthampamu (Wed, 06 Sep 2017 21:24:29 GMT):
@sstone1 Composer Rest prompt for input, is it possible to provide a configuration so that it does not prompt for the information.
jdockter (Wed, 06 Sep 2017 21:49:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=niCMH3AXea2syCPTQ) @ScottMorris I've used the embedded runtime to create unit tests with identity, example from the basic-sample-network was very helpful, https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/test/sample.js
sstone1 (Wed, 06 Sep 2017 21:53:36 GMT):
@gauthampamu yes, you just need to supply the command line options instead, e.g. `composer-rest-server -p hlfv1 -n basic-sample-network -i admin -s adminpw`
sstone1 (Wed, 06 Sep 2017 21:54:02 GMT):
after you answer the questions, it should print out the appropriate command line to run
szlaci1983 (Wed, 06 Sep 2017 22:05:18 GMT):
hi, i have an issue running the basic-sample-network. I issue npm install to install the node_modules but it fails to install because node-gyp doesn't have some rights or stg... I can do --unsafe-perm with the global install but this option doesnt work here.... any idea?
mescoba1 (Wed, 06 Sep 2017 22:23:37 GMT):
@sstone1 Do you know how one would send transactions to Rest Server using a generated `IssueID` credentials?
ygnr (Thu, 07 Sep 2017 01:10:31 GMT):
@sstone1 Is it possible to store and use certificates from database instead of on disk? Also can you please point me where does signing happens in the composer code?
ygnr (Thu, 07 Sep 2017 01:15:57 GMT):
A transaction takes around 3 seconds. Is that normal?
ilfrich (Thu, 07 Sep 2017 01:17:23 GMT):
depends on the infrastructure and transaction logic.
ilfrich (Thu, 07 Sep 2017 01:17:23 GMT):
Depends on the infrastructure and transaction logic.
ilfrich (Thu, 07 Sep 2017 01:17:23 GMT):
Depends on the infrastructure and transaction logic, but a little bit of overhead due to initialisation of a call / communication / distribution is normal.
tiennv (Thu, 07 Sep 2017 02:48:23 GMT):
Has joined the channel.
gauthampamu (Thu, 07 Sep 2017 03:42:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Pr9iHby7nhDmmNFs7) @sstone1 We should have documentation how to pass command line option. Even if we don't provide an example, we should atleast have the output of composer-rest-server -help command. composer-rest-server --help
Usage: composer-rest-server [options]
Options:
-p, --connectionProfileName The connection profile name [string]
-n, --businessNetworkName The business network identifier [string]
-i, --enrollId The enrollment ID of the user [string]
-s, --enrollSecret The enrollment secret of the user [string]
-N, --namespaces Use namespaces if conflicting types exist [string] [choices: "always", "required", "never"] [default: "always"]
-P, --port The port to serve the REST API on [number]
-a, --authentication Enable authentication for the REST API using Passport [boolean] [default: false]
-m, --multiuser Enable multiple user and identity management using wallets (implies -a) [boolean] [default: false]
-w, --websockets Enable event publication over WebSockets [boolean] [default: true]
-t, --tls Enable TLS security for the REST API [boolean] [default: false]
-c, --tlscert File containing the TLS certificate [string] [default: "/Users/gauthampamu/.nvm/versions/node/v6.11.3/lib/node_modules/composer-rest-server/cert.pem"]
-k, --tlskey File containing the TLS private key [string] [default: "/Users/gauthampamu/.nvm/versions/node/v6.11.3/lib/node_modules/composer-rest-server/key.pem"]
-h, --help Show help [boolean]
-v, --version Show version number [boolean]
rohitaneja8 (Thu, 07 Sep 2017 06:47:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gqk8XzkxB8LrJhXHf) @davidkel Yes, pinging directly from REST server worked. BTW this issue doesnt look like will be solved, why is there a difference of identities in CLI and REST?
sujitedu (Thu, 07 Sep 2017 06:53:11 GMT):
Has joined the channel.
sujitedu (Thu, 07 Sep 2017 06:58:57 GMT):
Hi, please help me. Is there any UI by which I can monitor occupied storage per block and required time for consensus for every transaction?
davidkel (Thu, 07 Sep 2017 07:17:50 GMT):
@sujitedu Your question isn't related to composer, would suggest the #fabric or #fabric-questions for questions about hyperledger fabric
davidkel (Thu, 07 Sep 2017 07:22:08 GMT):
@rohitaneja8 It's because both environments enroll that identity from the CA Server (And the server is set up to all this in our development environment at the moment rather than only allowing an enrollment to occur once) which means that the certificates each environment gets is subtlety different (such as issue and expiry dates) . One get's registered in the runtime and when the other one is presented when a transaction is submitted they aren't the same so the participant cannot be located.
davidkel (Thu, 07 Sep 2017 07:32:27 GMT):
@ygnr signing doesn't occur in the composer code, it is done by the fabric node sdk which composer depends on. A single transaction taking 3 seconds from submission to full completion is expected if you are using our provided development fabric server as the batch size for the orderer is set to 2 seconds. For storing certificates in a database, see https://hyperledger.github.io/composer/integrating/enabling-multiuser.html for how to enable the rest server to do this. It's not possible to do it for playground or the cli but would also be possible for your own composer client applications by implementing the Wallet api.
NikhilNanjappa (Thu, 07 Sep 2017 07:42:16 GMT):
@sstone1 - After upgrading to latest v0.12.0, we are facing significant memory consumption of the API server. After few api calls, the server just slows down drastically.
Any suggestions or minimal configuration requirements using the new version ?
NikhilNanjappa (Thu, 07 Sep 2017 07:42:16 GMT):
@sstone1 - After upgrading to latest v0.12.0, we are facing significant memory consumption of the API server. After few api calls, the server memory just runs out & slows down drastically.
Any suggestions or minimal configuration requirements using the new version ?
wael (Thu, 07 Sep 2017 09:07:29 GMT):
is it possible for now to return an relationship participant of an specified asset using query ?
wael (Thu, 07 Sep 2017 09:07:29 GMT):
is it possible for now to return a relationship participant of an specified asset using query ?
raduciobanu (Thu, 07 Sep 2017 09:08:42 GMT):
Has joined the channel.
wael (Thu, 07 Sep 2017 09:13:13 GMT):
Message Attachments
wael (Thu, 07 Sep 2017 09:13:54 GMT):
e.g :
SELECT CAR
FROM Manufacturer
WHERE Manufacturer.id = “04058"
wael (Thu, 07 Sep 2017 09:13:54 GMT):
e.g :
SELECT Manufacturer
FROM Manufacturer
WHERE Manufacturer.id = “04058"
wael (Thu, 07 Sep 2017 09:13:54 GMT):
e.g :
SELECT Manufacturer
FROM CAR
WHERE CAR.id = “04058"
ygnr (Thu, 07 Sep 2017 09:26:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wwAGesuqa5Rv8Ydct) @davidkel Is the batch size configurable?
szlaci1983 (Thu, 07 Sep 2017 09:33:21 GMT):
@sstone1 Hi, can you help me with installing npm packages for basic-simple-network? ( node v8.4.0 npm v3.10.10 under ubuntu) Im getting :
error: ‘class v8::Object’ has no member named ‘SetHiddenValue’
info.This()->SetHiddenValue(Nan::New("channel_").ToLocalChecked(),
^
../src/node/ext/call.cc:625:19: warning: ‘v8::Local
davidkel (Thu, 07 Sep 2017 09:34:08 GMT):
@szlaci1983 Node 8 isn't supported yet, we only support node 6
szlaci1983 (Thu, 07 Sep 2017 09:34:32 GMT):
ah that explains everything :D thanks @davidkel
davidkel (Thu, 07 Sep 2017 09:36:01 GMT):
@NikhilNanjappa could you raise a stack overflow or github issue and provide more details about your environment and how what measurements you have taken (eg memory, cpu utilisation) and what version were you at previously where you didn't experience the problem.
ygnr (Thu, 07 Sep 2017 09:42:31 GMT):
@davidkel thank you. Any example for implementing wallet API?
davidkel (Thu, 07 Sep 2017 10:31:57 GMT):
@ygnr there is an example here https://github.com/sstone1/sample-bluemix-composer-app
UDeshmukh (Thu, 07 Sep 2017 10:39:17 GMT):
My Code isn't connecting to the JSon data file I have uploaded to my Google Drive - any clues what maybe going wrong in here ?
Thanks
/**
* This script will read JSon formatted Patient Master file uploaded from off-chain location & populate Patient Registry
*
* @param {net.digitalHealth.Network.UploadPatientMaster} patientMasterInput - the Upload JSon datafile transaction
* @transaction
*/
function UploadPatientMaster (patientMasterInput)
{
var requestURL = 'https://drive.google.com/file/d/0B-YLPLqOaIH5RGpMaDB2OEVuZEU/view?usp=sharing';
//var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
var request = new XMLHttpRequest();
request.open('GET', requestURL);
request.responseType = 'json';
request.send();
request.onload = function(patientRegistry)
{
var patientMasterRecord = request.response;
populatePatientRegistry(patientMasterRecord);
}
function populatePatientRegistry(patientsJSonObj) {
var factory = getFactory();
var NS = 'net.digitalHealth.Network';
for (var i = 0; i < patientsJSonObj.length; i++)
{
var patient = factory.newResource(NS, 'Patient', patientsJSonObj.PersonID);
patient.role = patientsJSonObj.Role;
patient.title = patientsJSonObj.Title;
patient.firstName = patientsJSonObj.Firstname;
patient.lastName = patientsJSonObj.Lastname
var patientAddress = factory.newConcept(NS, 'Address');
patientAddress.country = 'CANADA';
patient.address = patientAddress;
patient.balance = patientsJSonObj.Balance;
patient.DOB = patientsJSonObj.DoB;
patient.SSN = patientsJSonObj.SSN;
// add new patient to the Registry
return populatePatientRegistry.addAll([patient]);
}
}
}
nasht00 (Thu, 07 Sep 2017 11:04:35 GMT):
In Visual Studio Code, what is the proper way for jshint to not complain about `getCurrentParticipant`, `getFactory` ... not being defined?
nasht00 (Thu, 07 Sep 2017 11:23:09 GMT):
Different question: Can I use ES6 in transaction code?
davidkel (Thu, 07 Sep 2017 11:26:26 GMT):
@nasht00 not at the moment
nasht00 (Thu, 07 Sep 2017 11:32:05 GMT):
In the online playground, when I try to create a participant (random data), I get `TypeError: Cannot read property 'apply' of null`
nasht00 (Thu, 07 Sep 2017 11:36:41 GMT):
oh well now the entire playground gives me `404 Not Found: Requested route ('composer-playground.mybluemix.net') does not exist.` :disappointed:
davidkel (Thu, 07 Sep 2017 11:46:56 GMT):
@nasht00 I think we are in the process of publishing a new release, so to do so means online playground will go down for a while
erNail (Thu, 07 Sep 2017 12:00:47 GMT):
Has joined the channel.
erNail (Thu, 07 Sep 2017 12:02:30 GMT):
Hi, i'm pretty new to Hyperledger in general. I wanted to ask, is there any difference between Hyperledger Composer and Cello ? It seems to me like they both can be used to manage blockchain networks.
WatserAanDeHand (Thu, 07 Sep 2017 12:14:11 GMT):
Has joined the channel.
sstone1 (Thu, 07 Sep 2017 12:19:31 GMT):
@here It's Thursday, which means that it's release day! Get your hands on Hyperledger Composer v0.12.1 🎉 https://github.com/hyperledger/composer/releases/tag/v0.12.1
theathibm (Thu, 07 Sep 2017 12:22:57 GMT):
When using "auth/github" we successfully git an "access_token" and "userid" in the resulting cookie. Everything works fine, however, we cannot figure out how to identify the user. Here is a cookie we get back from the composer-rest-server.
theathibm (Thu, 07 Sep 2017 12:22:57 GMT):
When using 3rd login provider in composer-rest-server ("auth/github") we successfully get an "access_token" and "userid" in the resulting cookie. Everything works fine, however, we cannot figure out how to identify the userid. We would like to get the userid or login id of the currently logged in oauth2 github user. Here is a cookie we get back from the composer-rest-server.
theathibm (Thu, 07 Sep 2017 12:22:57 GMT):
When using 3rd login provider in composer-rest-server ("auth/github") we successfully get an "access_token" and "userid" in the resulting cookie. Everything works fine, however, we cannot figure out how to identify the userid. We would like to get the userid or login id of the currently logged in oauth2 github user. Here is a cookie we get back from the composer-rest-server:
theathibm (Thu, 07 Sep 2017 12:22:57 GMT):
When using 3rd login provider in composer-rest-server ("auth/github") we successfully get an "access_token" and "userid" in the resulting cookie. Everything works fine, however, we cannot figure out how to identify the userid. We would like to get the userid or login id of the currently logged in oauth2 github user. Here is a cookie we get back from the composer-rest-server: "cookie":"_ga=GA1.1.497742466.1503668715;
connect.sid=s%3AS5iITD5gtxg1sl9wE_uzqajYbO9v6rAQ.L2jhZLJZnUBONjztiicZm6%2BrYGQ3o6Fw7pmHo%2BwrciI;
access_token=s%3AvCljm0VJ9D46XloOux8h150AdbPDbiEC4EoLFaTkcnUfMYKryFzcSmiUa7fAHKaR.9hASVPYKGt7KkdQrbfLxBc8HibWAWFhKKsqFV8usOVk;
userId=s%3A1.cJt90VPvLRb6wgFdnj86fADkYfCuYUekaSPp%2BMgYdzo"
theathibm (Thu, 07 Sep 2017 12:23:05 GMT):
"cookie":"_ga=GA1.1.497742466.1503668715;
theathibm (Thu, 07 Sep 2017 12:23:15 GMT):
connect.sid=s%3AS5iITD5gtxg1sl9wE_uzqajYbO9v6rAQ.L2jhZLJZnUBONjztiicZm6%2BrYGQ3o6Fw7pmHo%2BwrciI;
theathibm (Thu, 07 Sep 2017 12:23:22 GMT):
access_token=s%3AvCljm0VJ9D46XloOux8h150AdbPDbiEC4EoLFaTkcnUfMYKryFzcSmiUa7fAHKaR.9hASVPYKGt7KkdQrbfLxBc8HibWAWFhKKsqFV8usOVk;
theathibm (Thu, 07 Sep 2017 12:23:31 GMT):
userId=s%3A1.cJt90VPvLRb6wgFdnj86fADkYfCuYUekaSPp%2BMgYdzo"
WatserAanDeHand (Thu, 07 Sep 2017 12:23:41 GMT):
Hi all, is it possible to create a crypto coin with Composer?
theathibm (Thu, 07 Sep 2017 12:24:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JGtohyJv44Km68Tj7) @theathibm Is there a way to figure out who this userId is?
theathibm (Thu, 07 Sep 2017 12:25:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kWbrHsQFquKkAHpEd) @theathibm how can the userid id be figured out from the "access_token"?
erNail (Thu, 07 Sep 2017 12:53:10 GMT):
j
erNail (Thu, 07 Sep 2017 12:54:18 GMT):
unix
jadhavajay (Thu, 07 Sep 2017 13:04:26 GMT):
Has joined the channel.
NikhilNanjappa (Thu, 07 Sep 2017 13:04:29 GMT):
@davidkel - As you suggested, please find the issue raised on Github
https://github.com/hyperledger/composer/issues/2081
NikhilNanjappa (Thu, 07 Sep 2017 13:04:29 GMT):
@davidkel - As you suggested, please find more details of the issue raised on Github
https://github.com/hyperledger/composer/issues/2081
NikhilNanjappa (Thu, 07 Sep 2017 13:04:29 GMT):
@davidkel - As you suggested [here](https://chat.hyperledger.org/channel/composer?msg=5sTMEyPwyEP3sNGhR), please find more details of the issue raised on Github
https://github.com/hyperledger/composer/issues/2081
sstone1 (Thu, 07 Sep 2017 13:21:18 GMT):
@theathibm if you check out v0.12.0/v0.12.1 the REST API explorer now shows you the access token in the UI (once you have authenticated)
sstone1 (Thu, 07 Sep 2017 13:22:43 GMT):
but essentially the access token is the portion of this between the `s%3A` and the first `.` so for access_token=s%3AvCljm0VJ9D46XloOux8h150AdbPDbiEC4EoLFaTkcnUfMYKryFzcSmiUa7fAHKaR.9hASVPYKGt7KkdQrbfLxBc8HibWAWFhKKsqFV8usOVk the access token is `vCljm0VJ9D46XloOux8h150AdbPDbiEC4EoLFaTkcnUfMYKryFzcSmiUa7fAHKaR`
HannahRayner (Thu, 07 Sep 2017 13:23:57 GMT):
@here Hello everyone!
I’m Hannah and I'm on the design team.
As raised in the Community Call around the 23rd August the team and I have been discussing what things in playground we can improve and have come up with a list of ten issues. We would like to get everyone’s opinion on how important you think these issues are and therefore, we have created a short questionnaire.
All the issues were discussed in detail on the call, which was recorded and can be found at:
https://drive.google.com/file/d/0B_NJV6eJXAA1MU5IbExuY205Ylk/view (and start at 13mins 40seconds).
There are also corresponding GitHub links are written next to each issue.
We’d also be interested to hear if you think there are any other issues that are not mentioned so please put those at the bottom.
We will be closing this on Thursday 14th September so you have a week to fill it in.
Thanks all! 😁
Here’s the link to the questionnaire
https://goo.gl/forms/Es2g0TsCr6wLcigY2
UDeshmukh (Thu, 07 Sep 2017 13:33:06 GMT):
@sstone1 Hey Simon Can you pl. take a quick look at the issue I posted a while ago? I can provide you more details if you like... Thanks! Udayan
nasht00 (Thu, 07 Sep 2017 13:45:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ku4ceKdZd7GDuDckg) @HannahRayner
done, I want to add "A way to test Queries", because right now I did not find an easy solution.
nasht00 (Thu, 07 Sep 2017 13:51:00 GMT):
I created this since I found no existing issues: https://github.com/hyperledger/composer/issues/2086
lucrezia.dm (Thu, 07 Sep 2017 13:58:04 GMT):
Error: Object with ID 'new_producted_recordId:2932' in collection with ID 'Asset:org.acme.New_producted_record' does not exist
Do you know what means it ?
davidkel (Thu, 07 Sep 2017 14:49:23 GMT):
@UDeshmukh what error did you get ? have you tried your TP in playground ?
UDeshmukh (Thu, 07 Sep 2017 14:50:49 GMT):
there was no error... the transaction completed successfully but it did not create the 5 patient master records from the JSON data file... yes I tested this in online playground
theathibm (Thu, 07 Sep 2017 14:51:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nzhH5MKzG64XJYP5N) @sstone1 Hi Simon, Thanks for the reply. Would you know how to decrypt the userid in the cookie?
theathibm (Thu, 07 Sep 2017 14:51:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nzhH5MKzG64XJYP5N) @sstone1 Hi Simon, Thanks for the reply. Would you know how to decrypt the userid in the cookie? userId=s%3A1.cJt90VPvLRb6wgFdnj86fADkYfCuYUekaSPp%2BMgYdzo"
theathibm (Thu, 07 Sep 2017 14:52:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nzhH5MKzG64XJYP5N) @sstone1 Hi Simon, Would love to see the USER ID or User Name of the logged on individual as well, not just the access_token
davidkel (Thu, 07 Sep 2017 14:52:34 GMT):
@UDeshmukh ok, interesting that you didn't get any error. First thing to note is that require is not available in tp functions
sstone1 (Thu, 07 Sep 2017 14:52:38 GMT):
@UDeshmukh you have a `return` in the for loop, so it will do one iteration of the loop and then quit
sstone1 (Thu, 07 Sep 2017 14:53:03 GMT):
also you cannot use XMLHTTPRequest in a transaction processor function deployed to a real Hyperledger Fabric instance - it will only work in the web (simulated Blockchain) profile
UDeshmukh (Thu, 07 Sep 2017 14:54:33 GMT):
@davidkel @sstone1 Ok, I see... in that case how do you suggest I'd build the code for reading from a JSon datafile ?
UDeshmukh (Thu, 07 Sep 2017 14:55:27 GMT):
Message Attachments
sstone1 (Thu, 07 Sep 2017 14:55:47 GMT):
you can build an application using the Node.js client APIs in `composer-client` or using the REST APIs in `composer-rest-server`
sstone1 (Thu, 07 Sep 2017 14:55:57 GMT):
that application can load the file and submit transactions to the blockchain
UDeshmukh (Thu, 07 Sep 2017 14:56:26 GMT):
Can you point me to some sample code which can help me understand this process?
akshay111meher (Thu, 07 Sep 2017 15:20:01 GMT):
akshay111 [ ](https://chat.hyperledger.org/channel/composer?msg=jzXekXCRmxwFwv3mi) @davidkel
this is the kind of error i Get after memory gets exhausted
error: invoice:addEffortData Error: RangeError: valstack limit
at /home/akshay/Desktop/ctogitlab/revenue-leakage/invoice2/node_modules/composer-client/node_modules/grpc/src/node/src/client.js:434:17
davidkel (Thu, 07 Sep 2017 15:22:59 GMT):
@akshay111meher see https://github.com/hyperledger/composer/issues/1783 as it's probably relevant
ScottMorris (Thu, 07 Sep 2017 15:25:49 GMT):
in the `permissions.acl` file, is there a way to call functions for the conditions instead of cramming a long like of checks into...well...one line?
theathibm (Thu, 07 Sep 2017 15:35:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PQ98HYgbEWiYAMnuy) @sstone1 I think the OAuth access_token is suppose to be 40 characters..... The portion between the s%3A and the . is 64 characters. I tried using uudecode and base64 decode to see what would happen but without success. Do you know if the access_token format in the composer-rest-server can be converted to the oauth format?
koushikd05 (Thu, 07 Sep 2017 15:38:09 GMT):
Hi guys.I am getting the below error,while trying to run .sh file.
koushikd05 (Thu, 07 Sep 2017 15:38:13 GMT):
Message Attachments
koushikd05 (Thu, 07 Sep 2017 15:39:04 GMT):
though that download.sh file is available on that location.
sstone1 (Thu, 07 Sep 2017 15:42:28 GMT):
@ScottMorris yes, it works just like you'd hope it would :)
sstone1 (Thu, 07 Sep 2017 15:42:35 GMT):
stick functions in JS file, call them from ACL condition
ScottMorris (Thu, 07 Sep 2017 15:43:27 GMT):
@sstone1 that sounds overly simple, the JS file can be anywhere or does it have to be at the same level as the _acl_ file?
sstone1 (Thu, 07 Sep 2017 15:43:41 GMT):
can be anywhere
ScottMorris (Thu, 07 Sep 2017 15:43:50 GMT):
sweet!
ScottMorris (Thu, 07 Sep 2017 15:44:05 GMT):
thanks, I'll give it a whirl
sstone1 (Thu, 07 Sep 2017 15:44:18 GMT):
np
sstone1 (Thu, 07 Sep 2017 15:44:22 GMT):
@theathibm these aren't OAuth tokens, they're LoopBack tokens that LoopBack generates after you authenticate using Passport (OAuth/LDAP/SAML)
theathibm (Thu, 07 Sep 2017 15:54:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Sxxb5Lgbmddavnacp) @sstone1 do you have any sample code for decoding either the loopback "access_token" or the "userId" that comes back from the composer-rest-server?
sstone1 (Thu, 07 Sep 2017 15:55:06 GMT):
no - as far as i know the access_token is just a random binary string
sstone1 (Thu, 07 Sep 2017 15:55:10 GMT):
not really sure what the userId is
sstone1 (Thu, 07 Sep 2017 15:55:20 GMT):
are you using "multi user" mode?
sstone1 (Thu, 07 Sep 2017 15:55:24 GMT):
with multiple blockchain identities?
theathibm (Thu, 07 Sep 2017 15:55:34 GMT):
yes, multiple identities
sstone1 (Thu, 07 Sep 2017 15:55:36 GMT):
because you can call `/api/system/ping` which will give you the participant ID
theathibm (Thu, 07 Sep 2017 15:55:42 GMT):
multiple participants
sstone1 (Thu, 07 Sep 2017 15:55:45 GMT):
you can then use that to look up the participant information
sstone1 (Thu, 07 Sep 2017 15:55:53 GMT):
and find out which identity is being used
theathibm (Thu, 07 Sep 2017 15:56:33 GMT):
ok, will keep trying, thx
sstone1 (Thu, 07 Sep 2017 15:56:41 GMT):
np
NikhilNanjappa (Thu, 07 Sep 2017 16:01:06 GMT):
@sstone1 - using the 'passport github strategy' how to logout of the authenticated client from the rest server because using the `/logout` does not seem to log the user out.
kletkeman (Thu, 07 Sep 2017 16:03:28 GMT):
@here Trying to work locally in dev mode with whatever is pulled down when you follow the tutorials ... seems impossible to get started because you run into chicken-and-egg identity issues and the docs are pretty light ... there is no video on youtube either ... so, should I try using 11.3 until 12 is working? and if so, is there a set of instructions on what to change to use 11.3?
sstone1 (Thu, 07 Sep 2017 16:03:45 GMT):
@NikhilNanjappa sounds like a bug
sstone1 (Thu, 07 Sep 2017 16:03:51 GMT):
i've heard similar reports
sstone1 (Thu, 07 Sep 2017 16:04:13 GMT):
please raise a github issue for it
caroline-church (Thu, 07 Sep 2017 16:04:22 GMT):
@kletkeman which tutorial are you following?
kletkeman (Thu, 07 Sep 2017 16:04:45 GMT):
https://hyperledger.github.io/composer/installing/development-tools.html
kletkeman (Thu, 07 Sep 2017 16:04:59 GMT):
and https://hyperledger.github.io/composer/installing/using-playground-locally.html
NikhilNanjappa (Thu, 07 Sep 2017 16:05:03 GMT):
sure @sstone1 - this `/logout` is supposed to logout the user out of rest server right ? and not github ?
kletkeman (Thu, 07 Sep 2017 16:05:49 GMT):
@sstone1 there is a lot of overlap between those and the docs do not make much about the difference clear ...
NikhilNanjappa (Thu, 07 Sep 2017 16:05:56 GMT):
just want to understand the working of `/logout`
caroline-church (Thu, 07 Sep 2017 16:06:30 GMT):
@kletkeman you are getting stuck on the wallet page because you need to create an identity?
kletkeman (Thu, 07 Sep 2017 16:06:52 GMT):
@caroline-church that sounds about right ...
sstone1 (Thu, 07 Sep 2017 16:06:57 GMT):
@NikhilNanjappa it should log the user out of the REST server and invalidate the access token, but it doesn't
NikhilNanjappa (Thu, 07 Sep 2017 16:08:03 GMT):
perfect ... will raise a bug .. thanks for the support
caroline-church (Thu, 07 Sep 2017 16:09:16 GMT):
@kletkeman https://hyperledger.github.io/composer/playground/id-cards-playground.html scroll down to the manually creating id cards section. Coming soon we will make this easier so that you will be able to create the id card for PeerAdmin within playground and attach the certificates, but until then you have to create the card manually and import it
kletkeman (Thu, 07 Sep 2017 16:09:48 GMT):
@caroline-church thanks very much ... will do that now
kletkeman (Thu, 07 Sep 2017 16:11:29 GMT):
that's buried pretty deep ... at the least, the tutorials should all be tweaked to send people there ... some will give up before coming here
Sakshi_44 (Thu, 07 Sep 2017 16:15:34 GMT):
Message Attachments
Sakshi_44 (Thu, 07 Sep 2017 16:17:12 GMT):
I was going through it so that I will be able to assign secret id to the participant. Can you please tell in which file I should do these changes. i am not sure whether i am going in right path or not. Please guide. thanks
caroline-church (Thu, 07 Sep 2017 16:26:16 GMT):
@kletkeman do you want to raise an issue for that in github please
kletkeman (Thu, 07 Sep 2017 16:41:37 GMT):
@caroline-church I am able to deploy now, but I am not certain that I needed to create the PeerAdmin ID manually ... I now have two copies ... what I was doing wrong was not naming the network correctly -- the user interface looks modern and attractive, but nothing at all is obvious ... anyway, I will have to try to recreate the issue when I have time before I log it as real
kletkeman (Thu, 07 Sep 2017 16:42:15 GMT):
caroline-church (Thu, 07 Sep 2017 16:42:36 GMT):
ahhh that is my fault i forgot that you would alreayd have that if you are running the playground insde a docker image
kletkeman (Thu, 07 Sep 2017 16:42:43 GMT):
lol ... no doubt because the PeerAdmin was able to deploy
caroline-church (Thu, 07 Sep 2017 16:43:45 GMT):
the reason you get the admin card is because PeerAdmin should be used to connect to the network so when you deploy we then create the admin card so that you can connect to the business network and use that to create other identities
caroline-church (Thu, 07 Sep 2017 16:43:45 GMT):
the reason you get the admin card is because PeerAdmin shouldn't be used to connect to the network so when you deploy we then create the admin card so that you can connect to the business network and use that to create other identities
kletkeman (Thu, 07 Sep 2017 16:45:07 GMT):
@caroline-church one last question then ... is it possible to connect a folder containing my business network (which I edit with vscode) to the playground so that I can get the best of both worlds? or do I have to copy paste to the playground to edit the business network? I've never figured that out
caroline-church (Thu, 07 Sep 2017 16:46:36 GMT):
@kletkeman if you create a .bna file using that folder you can then import it into playground that way. Or you could create an empty business network from the deploy screen and import each of the files
kletkeman (Thu, 07 Sep 2017 16:47:07 GMT):
ok ... so we can't yet synchronize them ... that's a real bummer
caroline-church (Thu, 07 Sep 2017 16:47:24 GMT):
no you could raise an issue for that requirement though
kletkeman (Thu, 07 Sep 2017 16:48:30 GMT):
I will ... it's a critical feature for productivity ... I'm surprised no one has raised it yet ...
mudlee (Thu, 07 Sep 2017 17:32:33 GMT):
hi huys. A short question. When I install Composer locally, if I run the "composer.sh stop" command, doest that command not just stop fabric but also removes already deployed chaincodes? I mean if I stop and then rerun composer.sh does it start from scratch?
mudlee (Thu, 07 Sep 2017 17:33:27 GMT):
I've already sent an issue about that, but maybe it's not an issue (https://github.com/hyperledger/composer/issues/2075)
hi.prabhat@gmail.com (Thu, 07 Sep 2017 18:01:51 GMT):
eifjccfuvdergfvbdkuiukcltcbbhevlgudrehgbkctt
mescoba1 (Thu, 07 Sep 2017 18:34:29 GMT):
When I set the `-m true` flag for multiple User support in the Composer Rest Server, I do not see the `Wallet` category on my local host. As descirbed in:
https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
Anyone have this issue?
ScottMorris (Thu, 07 Sep 2017 18:45:08 GMT):
In _CTO_ files, can anything be optional, like arrays and strings, etc. or only reference types?
mescoba1 (Thu, 07 Sep 2017 18:45:51 GMT):
Yes
mescoba1 (Thu, 07 Sep 2017 18:46:19 GMT):
Arrays,Strings, Concepts can be optional
mescoba1 (Thu, 07 Sep 2017 18:46:19 GMT):
I don't believe so @ScottMorris
ScottMorris (Thu, 07 Sep 2017 18:46:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bv8qJk37qT46qRJY9) @mescoba1 did you authenticate?
mescoba1 (Thu, 07 Sep 2017 18:48:17 GMT):
Can you set authentication without using github passport?
sstone1 (Thu, 07 Sep 2017 19:10:19 GMT):
@mescoba1 you need to select an authentication mechanism. the great thing about passport is that it supports 300+ different authentication strategies, so there's lots of choice - google, twitter, facebook, SAML, LDAP, github
sstone1 (Thu, 07 Sep 2017 19:10:19 GMT):
@mescoba1 you need to select an authentication mechanism. the great thing about passport is that it supports 300+ different authentication strategies, so there's lots of choice - google, twitter, facebook, SAML, LDAP, github, etc
sstone1 (Thu, 07 Sep 2017 19:10:43 GMT):
see http://passportjs.org for the full list
sstone1 (Thu, 07 Sep 2017 19:11:10 GMT):
bear in mind each strategy has its own configuration options and we only document how to use github - a lot of the oauth ones are very similar though
sstone1 (Thu, 07 Sep 2017 19:44:07 GMT):
@here I'm going to be at the Hyperledger Hackfest in Chicago on the 21-22nd September - who else from the Composer community is going to be there? :)
sstone1 (Thu, 07 Sep 2017 19:45:04 GMT):
If you're building apps with Composer then I'd love to hear about how you're getting on, what you've built, and your experiences of using it so far :ear:
sstone1 (Thu, 07 Sep 2017 19:45:35 GMT):
And if you fancy getting started with hacking on and contributing to Composer, I'd be glad to sit down with you and get you up and running :keyboard:
MikeMayori (Thu, 07 Sep 2017 19:45:52 GMT):
my plan is to go , i am not sure if my company will send me since they are more with microsoft
rcnewman (Thu, 07 Sep 2017 19:48:19 GMT):
Has joined the channel.
sstone1 (Thu, 07 Sep 2017 19:48:23 GMT):
Be good to see you there if you can make it
rcnewman (Thu, 07 Sep 2017 19:48:31 GMT):
Does Composer compile down to chaincode?
MikeMayori (Thu, 07 Sep 2017 19:49:47 GMT):
i wil be doing my best here
sstone1 (Thu, 07 Sep 2017 19:51:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HmunxK8YFj5YbGLJd) @rcnewman no, we directly execute the JavaScript using a JavaScript virtual machine called Duktape - it has Go bindings, so we have a small layer between Go and JavaScript. @davidkel and the Fabric team are working on delivering native Node.js chaincode support into Fabric, which when available will allow us to drop both Duktape and Go altogether :D
rcnewman (Thu, 07 Sep 2017 19:58:55 GMT):
Thanks @sstone1
UDeshmukh (Thu, 07 Sep 2017 20:06:00 GMT):
Message Attachments
ScottMorris (Thu, 07 Sep 2017 20:06:02 GMT):
I'm having an issue where it is saying my participant needs _UPDATE_ permissions, but I have an explicit acl that grants them that. Is there a way to find out what it is actually trying to do?
UDeshmukh (Thu, 07 Sep 2017 20:06:41 GMT):
I'm getting this error after I re-installed Composer packages just now ... Wonder what's gone wrong?
mescoba1 (Thu, 07 Sep 2017 20:07:42 GMT):
@ScottMorris Do you have any conditions for the Rule? Maybe those are not being met
mescoba1 (Thu, 07 Sep 2017 20:29:20 GMT):
After setting up Github passport, exporting `COMPOSER_PROVIDERS`, and setting `-a true` flag. I am getting a 404 error when accessing http://localhost:3000/auth/github
ScottMorris (Thu, 07 Sep 2017 21:15:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5w5njXYEznB9mh2YF) @mescoba1 the same permissions are being used to read and that is working fine
mescoba1 (Thu, 07 Sep 2017 21:26:55 GMT):
@ScottMorris I can only assume that a condition isn't met, sucks that it doesn't tell you why :neutral_face: :
gauthampamu (Thu, 07 Sep 2017 22:33:55 GMT):
@sstone1 Can you use composer without Fabric CA. I noticed the composer deploy command was trying to connect to the CA server.
mescoba1 (Thu, 07 Sep 2017 23:02:35 GMT):
@gauthampamu the alternative is cryptogen, not sure as to how you would configure it for composer
gauthampamu (Thu, 07 Sep 2017 23:09:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5W7NRkDtMhL8ofoaB) @mescoba1 Yes, I have used Cryptogen and already have a network up and running but I want to figure out how to connect to the network from Composer.
coder-ajay (Fri, 08 Sep 2017 04:04:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mpQMCEd4jXBkBReRx) @NikhilNanjappa : Hi... did you raise the bug? Can you share the defect URL please?
mna2017 (Fri, 08 Sep 2017 05:31:12 GMT):
HI Team,
Here's a snapshot of my .bna file on composer:
asset Vehicle identified by vehicleId {
o String vehicleId
o String transactionType
o String model
o String engineserial
o String color
--> Player owner
}
transaction UpdateVehicle {
--> Vehicle vehicle
--> Player newOwner
o String transactionType
o String model
o String engineserial
o String color
}
function updateVehicle(updateAsset) {
/* write the entire vehicle structure to world state\registry */
}
I want the transaction updateVehicle to be flexible enough with respect to the passed input fields for a vehicle. i.e. The calling module should be able to pass as many fields as it likes. Only the fields that are present in the input arguments will be updated on asset registry. those that are not present will not be updated on the asset registry.
For example: If the caller pass on only one field i.e. "model", then only the new value for model field should be updated on registry. other fields including transactiontype, engineserial, color retains their old value. How to achieve this? Any example links will be appreciated.
mna2017 (Fri, 08 Sep 2017 05:31:12 GMT):
Thanks
sstone1 (Fri, 08 Sep 2017 06:46:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=s95K3wDxKJoHmyfuD) @gauthampamu yes, you can import the certificate/private key pairs using `composer identity import` and you can also bind certificates to participants using `composer identity bind` - i think you might need to specify a CA in the connection profile, but you might be able to get away with specifying one that does not exist
rwadhwa (Fri, 08 Sep 2017 06:52:58 GMT):
@sstone1 I have a question. I setup a network with 1 orderer, 2 CAs, 4 Peers. I created the network .bna file separately. Now, I'm trying to deploy it on this network. However, I can deploy it with TLS Disabled...But things aren't working properly with TLS Enabled. When TLS is enabled, I'm providing the cert field values in connection profile. 'composer network deloy' command fails with the error that it couldn't find the root certificate, and command ultimately times out. Do you have any idea about this?
sstone1 (Fri, 08 Sep 2017 07:02:35 GMT):
@rwadhwa no - please open a question on stack overflow with the tag `hyperledger-composer` and attach the connection profile along with the `composer network deploy` command being used and the output from the command
rwadhwa (Fri, 08 Sep 2017 07:07:21 GMT):
@sstone1 Sure.
rwadhwa (Fri, 08 Sep 2017 07:07:25 GMT):
Thanks.
rwadhwa (Fri, 08 Sep 2017 07:08:24 GMT):
@sstone1 In any network, I'm I supposed to modify the fabric-ca-server-config.yaml
rwadhwa (Fri, 08 Sep 2017 07:08:24 GMT):
@sstone1 In any network, Am I supposed to modify the fabric-ca-server-config.yaml?
nandubatchu (Fri, 08 Sep 2017 08:03:24 GMT):
Has joined the channel.
NikhilNanjappa (Fri, 08 Sep 2017 08:07:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BKpDKh55PSaqpXwga) @coder-ajay
Here is the Issue link - https://github.com/hyperledger/composer/issues/2095
NikhilNanjappa (Fri, 08 Sep 2017 08:07:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BKpDKh55PSaqpXwga) @coder-ajay @sstone1
Here is the Issue link - https://github.com/hyperledger/composer/issues/2095
john2000 (Fri, 08 Sep 2017 08:22:05 GMT):
does composer has a plan for ethereum module develop? In my private blockchian network need ethereum for endorse( Send a new bock hash once in one minute);
mahoney1 (Fri, 08 Sep 2017 09:05:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YTuQbHcvvkBsYyo7c) @rwadhwa its the config file for the CA server. So modify if you deem it necessary for your Fabric configuration
psymatix (Fri, 08 Sep 2017 09:14:37 GMT):
Has joined the channel.
psymatix (Fri, 08 Sep 2017 09:15:24 GMT):
Hi guys! For the connection profile to peers with TLS enabled, which of the certificates go into the "cert" field?
atulkamble (Fri, 08 Sep 2017 09:46:59 GMT):
Hi All, I am getting an error at the following link: https://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#create-join-channel
atulkamble (Fri, 08 Sep 2017 09:47:17 GMT):
While executing the below command:
peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
atulkamble (Fri, 08 Sep 2017 09:47:43 GMT):
Could anyone please help with it ?
rwadhwa (Fri, 08 Sep 2017 09:56:44 GMT):
@psymatix I think it should be tlscacerts
rwadhwa (Fri, 08 Sep 2017 09:56:57 GMT):
But for me also, It didn't work
rwadhwa (Fri, 08 Sep 2017 09:57:42 GMT):
@mahoney1 Do we need to modify it to enable the TLS? Because just by passing the parameters while bringing up the servers, It's not working.
psymatix (Fri, 08 Sep 2017 10:05:16 GMT):
@rwadhwa thanks. I'll give it a go and let you know if it works for me
geoms (Fri, 08 Sep 2017 10:13:38 GMT):
Hello Team. I have some doubts in IBM Blockchain Platform
geoms (Fri, 08 Sep 2017 10:14:16 GMT):
Is this the right channel for IBM Blockchian platform quires ?
LabibFarag (Fri, 08 Sep 2017 10:22:08 GMT):
Has joined the channel.
mahoney1 (Fri, 08 Sep 2017 10:44:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NxypKPh624EXNAbmf) @rwadhwa see TLS specific instructions in http://hyperledgerdocs.readthedocs.io/en/latest/ca_setup.html and also here http://hyperledgerdocs.readthedocs.io/en/latest/ca_setup.html#enabling-tls
mahoney1 (Fri, 08 Sep 2017 10:48:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=d4d5rgBxWcmptgpYP) @geoms hi there, you contacted me direct - as mentioned,follow the link to https://console-regional.stage1.ng.bluemix.net/docs/services/blockchain/ibmblockchain_support.html#ibmblockchain_support
mahoney1 (Fri, 08 Sep 2017 11:24:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fTAXkDywNhmcChSjw) @atulkamble hi there, you need to ask Fabric questions on #fabric
mahoney1 (Fri, 08 Sep 2017 11:32:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9gDu6wcmXSr4yiKGa) @psymatix cert field should be populated with the public certificate string in pem format - example with delimiters described here > https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service. This string is of the form:
-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----
note that this pattern could be repeated multiple times if more than one cert is required and all that information needs to be stored in that field
psymatix (Fri, 08 Sep 2017 11:46:04 GMT):
@mahoney1 I get this error: "Error: Error trying to deploy. Error: Error trying to install chaincode. Error: connect failed."
The cert contents are in the format specified. The cert is generated by cryptogen and I've used the one in peerOrganizations/PEER_ORG_ID/peers/PEER_URL/msp/tlscacerts/tlsca.PEER_ORG_ID-cert.pem
psymatix (Fri, 08 Sep 2017 11:47:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NxypKPh624EXNAbmf) @rwadhwa do you get this error: "Error: Error trying to deploy. Error: Error trying to install chaincode. Error: connect failed."
mahoney1 (Fri, 08 Sep 2017 12:18:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XtLKn8vPWrQhNsoaE) @psymatix if you think you've configured your connection profile correctly, its going to be a Fabric issue - see the links in this SO -> https://stackoverflow.com/questions/45567700/hyperledger-composer-error-when-using-tls in particular MSP setup. Furthermore, you may wish to import peer admin identities once you've got it your environment working. https://hyperledger.github.io/composer/reference/composer.identity.import.html
rwadhwa (Fri, 08 Sep 2017 12:24:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XtLKn8vPWrQhNsoaE) @psymatix Also check which cert file did you mention in configuration yaml file which is used to bring up the docker images. And verify, it's the same one.
psymatix (Fri, 08 Sep 2017 13:07:37 GMT):
@rwadhwa @mahoney1 I'll modify some things and let you guys know
rwadhwa (Fri, 08 Sep 2017 13:15:01 GMT):
@psymatix Sure. Thanks.
VoR0220 (Fri, 08 Sep 2017 13:23:51 GMT):
Has joined the channel.
a.ochs (Fri, 08 Sep 2017 13:26:48 GMT):
Has joined the channel.
a.ochs (Fri, 08 Sep 2017 13:46:41 GMT):
Hey. Does the arrow --> in the composer files mean that it is mandatory to fill this variable and otherwise it will not be accepted?
uber.twin (Fri, 08 Sep 2017 14:15:41 GMT):
@mahoney1 hi, given a certain composer network setup, are there any reference performance metrics available?
uber.twin (Fri, 08 Sep 2017 14:15:41 GMT):
@mahoney1hi, given a certain composer network setup, are there any reference performance metrics available?
it seems, my network of 4 peers using couchdb databases and a single endorser, needs 3 seconds(measured on the client app) to conclude a transaction which inserts a record of around 10 short fields
not sure how this observation stands against other results
uber.twin (Fri, 08 Sep 2017 14:15:41 GMT):
@mahoney1 hi, given a certain composer network setup, are there any reference performance metrics available?
it seems, my network of 4 peers using couchdb databases and a single endorser, needs 3 seconds(measured on the client app) to conclude a transaction which inserts a record of around 10 short fields
not sure how this observation stands against other results
uber.twin (Fri, 08 Sep 2017 14:15:41 GMT):
@mahoney1 hi, given a certain composer network setup, are there any reference performance metrics available?
it seems, my network of 4 peers using couchdb databases and a single endorser, needs 3 seconds(measured on the client app) to conclude a transaction which inserts a record of around 10 short fields
not sure how this observation stands against other results. It seems the same 3 seconds are necesary for processing a transaction which triggers chaincode doing lookups and performing additional inserts
a.ochs (Fri, 08 Sep 2017 14:18:19 GMT):
Oh my. I found a stackoverflow link with a nice answer to 'o' and '-->'
https://stackoverflow.com/a/44410656/4222324
SethiSaab (Fri, 08 Sep 2017 14:21:02 GMT):
Hi i am facing issue while running this command " fabric-ca-server " it is aying command not found
i have followed everything properly as mentioned in docs
somebody please guide me as i am new to hyperledger
mahoney1 (Fri, 08 Sep 2017 14:21:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7ivvw2sjKioxWqNgR) @a.ochs in modeling terms, it means (in the model file) you're defining a relationship - as denoted by '-->' to another modeled resource (eg Participant) - https://hyperledger.github.io/composer/reference/cto_language.html
mahoney1 (Fri, 08 Sep 2017 14:21:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7ivvw2sjKioxWqNgR) @a.ochs in modeling terms, it means (in the model file) you're defining a relationship (eg., say, an Asset attribute - as denoted by '-->' ) to another modeled resource (eg Participant) - https://hyperledger.github.io/composer/reference/cto_language.html
mahoney1 (Fri, 08 Sep 2017 14:25:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=C3HeWL6qKj8QtsRkw) @SethiSaab hi there - see https://stackoverflow.com/questions/45571558/cannot-start-fabric-ca-server-natively and the doc link (user guide) https://hyperledger-fabric-ca.readthedocs.io/en/latest/users-guide.html#install - this is a Fabric issue (and component) ultimately...if you have more issues, suggest to ask on #fabric
AlexAlper (Fri, 08 Sep 2017 15:12:14 GMT):
Has left the channel.
uber.twin (Fri, 08 Sep 2017 15:43:09 GMT):
@mahoney1 I'm gettig the following client error when trying to read a couple of hundred records. I tried to set a larger timeout value in my connection profile(60000) but it didn't seem to help, it gives up after 30 seconds. Is the maximum timeout limited to 30 seconds, no matter the corresponding parameter value?
```
[exec] info: Error: Error trying to query chaincode. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
[exec] at channel.queryByChaincode.then.catch (/home/pg/workspace/composer-sample-applications/packages/my-network/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:782:34)
```
davidkel (Fri, 08 Sep 2017 16:08:27 GMT):
@uber.twin The timeout is a fabric timeout as opposed to a composer timeout, there's no way to control it dynamically. If you are launching your peer through Docker Composer then you can set the timeout in your Docker Compose file, for example to set the transaction timeout to 90 seconds you add an entry for `CORE_CHAINCODE_EXECUTE_TIMEOUT=90s` Here is how you would add that to the compose file
```
peer0.org1.example.com:
container_name: peer0.org1.example.com
image: hyperledger/fabric-peer:x86_64-1.0.1
environment:
- CORE_CHAINCODE_EXECUTETIMEOUT=90s
- CORE_LOGGING_PEER=debug
- CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
- CORE_PEER_ID=peer0.org1.example.com
...
```
davidkel (Fri, 08 Sep 2017 16:08:27 GMT):
@uber.twin The timeout is a fabric timeout as opposed to a composer timeout, there's no way to control it dynamically. If you are launching your peer through Docker Composer then you can set the timeout in your Docker Compose file, for example to set the transaction timeout to 90 seconds you add an entry for `CORE_CHAINCODE_EXECUTETIMEOUT=90s` Here is how you would add that to the compose file
```
peer0.org1.example.com:
container_name: peer0.org1.example.com
image: hyperledger/fabric-peer:x86_64-1.0.1
environment:
- CORE_CHAINCODE_EXECUTETIMEOUT=90s
- CORE_LOGGING_PEER=debug
- CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
- CORE_PEER_ID=peer0.org1.example.com
...
```
davidkel (Fri, 08 Sep 2017 16:08:27 GMT):
@uber.twin The timeout is a fabric timeout as opposed to a composer timeout, there's no way to control it dynamically. If you are launching your peer through Docker Compose then you can set the timeout in your Docker Compose file, for example to set the transaction timeout to 90 seconds you add an entry for `CORE_CHAINCODE_EXECUTETIMEOUT=90s` Here is how you would add that to the compose file
```
peer0.org1.example.com:
container_name: peer0.org1.example.com
image: hyperledger/fabric-peer:x86_64-1.0.1
environment:
- CORE_CHAINCODE_EXECUTETIMEOUT=90s
- CORE_LOGGING_PEER=debug
- CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
- CORE_PEER_ID=peer0.org1.example.com
...
```
aatkddny (Fri, 08 Sep 2017 17:38:31 GMT):
Has joined the channel.
aatkddny (Fri, 08 Sep 2017 17:40:35 GMT):
So node isn't my thing. I've done a small poc with some real data using fabric-compose and everything is great until I try to send real data. Then I hit a problem with the message size - Error: request entity too large.
aatkddny (Fri, 08 Sep 2017 17:40:35 GMT):
So node isn't my thing. I've done a small poc with some real data using fabric-compose and everything is great until I try to send real data. Then I hit a problem with the message size - Error: request entity too large. I've tried editing the config.json files - the bit that says "json" : "limit" both locally in my model and using the path for the -g install but even after restarting the compose server I still am facing the same issue. What am I missing?
aatkddny (Fri, 08 Sep 2017 17:40:35 GMT):
So node isn't my thing. I've done a small poc for one of our use cases using fabric-compose and everything is great until I try to send real data. Then I hit a problem with the message size - Error: request entity too large. I've tried editing the config.json files - the bit that says "json" : "limit" both locally in my model and using the path for the -g install but even after restarting the compose server I still am facing the same issue. What am I missing?
aatkddny (Fri, 08 Sep 2017 17:40:35 GMT):
So node isn't my thing. I've done a small poc for one of our use cases using fabric-compose and everything is great until I try to send real data. Then I hit a problem with the message size - Error: request entity too large. I've tried editing the config.json files - the bit that says "json" : "limit" both locally in my model and using the path for the -g install but even after restarting the compose server I still am facing the same issue. What am I missing?
mahoney1 (Fri, 08 Sep 2017 18:25:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wMWzqcvRG58yNmfKn) @aatkddny hi suggest to create a Stack Overflow here https://stackoverflow.com/questions/tagged/hyperledger-composer with exact details of what you're trying out (too little info) - including any relevant code / JSON snippets - its not clear ("compose server"?) whether you mean a Hyperledger Composer REST server or nor, for example - thanks
uber.twin (Fri, 08 Sep 2017 18:36:23 GMT):
@davidkel allright, thank you again. Regarding the transaction completion time, it seems I'm getting 3 seconds, consistently, apparently not depending of the chaincode workload: one or many store operations, business chaincode invocation or no business logic at all.
Is it more a matter of network topology that of chaincode complexity?
uber.twin (Fri, 08 Sep 2017 18:38:54 GMT):
I've deployed a network of 4 peers, backed by couchdb databases, with a unique endorser policy,
uber.twin (Fri, 08 Sep 2017 18:48:22 GMT):
talking about a regular transaction here, not the relatively large volume data retrieval operation which times out
davidkel (Fri, 08 Sep 2017 18:56:28 GMT):
@uber.twin I think it would depend on how you have configured your orderer(s), if you have used a configtx.yaml file from byfn for example then the orderer is probably configured to batch requests on a 2 second timeout basis.
gauthampamu (Fri, 08 Sep 2017 20:52:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8XAs8x6Drs5Modtac) @sstone1 The command was not importing the credentials. I have installed the tool again on my machine and retried it and it is working now. I have to check what version we have on the test system.
ThomasWatson (Fri, 08 Sep 2017 21:00:57 GMT):
Has joined the channel.
ThomasWatson (Fri, 08 Sep 2017 21:03:15 GMT):
Hi....new to Composer. When testing in the Composer where can I see console.log output in Composer GUI? example - console.log('updating ledger with new coin transaction'); thanks
TCosley1 (Fri, 08 Sep 2017 21:36:52 GMT):
Has joined the channel.
kletkeman (Sat, 09 Sep 2017 06:05:40 GMT):
@sstone1 I'm going quietly nuts. I'm trying to create an asset programmatically inside the script and I cannot find the name of the function to do that. I've tried create, update and put and no joy. I use a field instead of a reference specifically because I want to be able to perform custom asset manipulation and event emission upon create. Surely this is not impossible?
kletkeman (Sat, 09 Sep 2017 06:11:49 GMT):
Also, any idea what this means? Error: Error trying invoke chaincode. Error: chaincode error (status: 500, message: TypeError: undefined not callable)
kletkeman (Sat, 09 Sep 2017 06:12:38 GMT):
Is that the function name or something else? The UI sees the function, so that does not seem to be it ...
kievu (Sat, 09 Sep 2017 07:46:12 GMT):
Has joined the channel.
kletkeman (Sat, 09 Sep 2017 07:47:39 GMT):
@sstone1 Question regarding console logging -- where does that come out? I am using a container service based hlfv1 and running playground on my Mac. It all works really well, but I am finding debugging to be painful. The error messages are ok for simple syntax stuff, but I am finding that I need to start peering into what composer thinks it is playing with, and that requires that I dump intermediate results etc. Is there a simple method that does not require that I ferret out containers and try to dig into remote logs etc? I.e. is there a way to get the console logs to come back to the playground, which I consider the console? Thanks.
kievu (Sat, 09 Sep 2017 07:58:15 GMT):
@sstone1 I just watched the "Introduction to Fabric Composer" and got some questions. What is actually added to the blockchain? In your example, the business network includes participant/auctioneer/transaction - registry. Is this added to the blockchain? Because when you add the asset, for instance "create new participant" (28:30 in video) quote "it will store a record participant in the world state in the blockchain". I am a bit confused. Is the participant appended to the blockchain or is the participant registry mutably altered to store the new participant? I don't understand how you can remove an asset (i.e a vehicle), if by creating the asset it gets appended to the blockchain.
kievu (Sat, 09 Sep 2017 07:58:15 GMT):
@sstone1 I just watched the "Introduction to Fabric Composer" and got some questions. What is actually added to the blockchain? In your example, the business network includes participant/auctioneer/transaction - registry. Is this added to the blockchain? Because when you add the asset, for instance "create new participant" (28:30 in video) quote "it will store a record participant in the world state in the blockchain". I am a bit confused. Is the participant appended to the blockchain or is the participant registry mutably altered to store the new participant? I don't understand how you can remove an asset (i.e a vehicle), if by creating the asset it gets appended to the blockchain and deleting data on the blockchain doesn't make sense
ThomasWatson (Sat, 09 Sep 2017 14:03:45 GMT):
Hi, I'm trying to setup my local composer/fabric env.
Pre-reqs and Install went fine, using these steps: https://hyperledger.github.io/composer/installing/development-tools.html.
ThomasWatson (Sat, 09 Sep 2017 14:04:18 GMT):
moving on to https://hyperledger.github.io/composer/tutorials/developer-guide.html, I am failing on the
I am failing on the deployment to the local HyperLedger Fabric 1.0.
ThomasWatson (Sat, 09 Sep 2017 14:04:37 GMT):
the command is: composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
the error is: Error: Error trying deploy. Error: Error trying install chaincode. Error: Connect Failed
Command failed
ThomasWatson (Sat, 09 Sep 2017 14:05:23 GMT):
no errors on my install, config, test, just failing when I deploy to the real blockchain on my laptop.
ThomasWatson (Sat, 09 Sep 2017 14:09:00 GMT):
Message Attachments
tkuhrt (Sun, 10 Sep 2017 00:09:13 GMT):
The other day, I was on a plane. I wanted to deploy a new business network to my hlfabric instance. I may even have tried to do the same thing to my Web Browser instance, but I cannot remember for sure. Anyway, the problem I had is that because I did not have a network connection, the "Model Network Starter Template" portion of the screen just had a spinning circle. Is a connection to the internet required in order to deploy a new business network? I am assuming it was going out to look at the code samples that exist. Is there a way that I could have worked around this?
tkuhrt (Sun, 10 Sep 2017 00:10:58 GMT):
If not, I might create an issue to install the basic sample if network connectivity is not available (assuming this issue does not already exist)
rcnewman (Sun, 10 Sep 2017 01:49:50 GMT):
Has left the channel.
jstevenperry (Sun, 10 Sep 2017 04:43:38 GMT):
Has joined the channel.
jstevenperry (Sun, 10 Sep 2017 04:44:40 GMT):
I'm new here, and I have a mundane question (and yes, I have searched Google high and low for the answer and have come up with zilch, nada, zero). What does CTO (as in .cto file) stand for?
jstevenperry (Sun, 10 Sep 2017 04:55:07 GMT):
I found a post (https://chat.hyperledger.org/channel/composer?msg=gXp6ssRsPQgQQRYW3) where Simon Stone says CTO is from the original project name (Concerto). If anyone has different info, please LMK. Thanks.
wael (Sun, 10 Sep 2017 06:28:29 GMT):
is it possible for now to return a relationship participant of an specified asset using query ?
wael (Sun, 10 Sep 2017 06:28:29 GMT):
is it possible for now to return a relationship participant of an specified asset using query ?
wael (Sun, 10 Sep 2017 06:28:36 GMT):
e.g :
SELECT Manufacturer
FROM CAR
WHERE CAR.id = “04058"
nasht00 (Sun, 10 Sep 2017 07:42:46 GMT):
Given an asset with an array of relationships:
```
asset Group identified by id {
o String id
--> Person[] members
}
```
Can I enforce uniqueness in `members`? Or do I need to do this manually on every transaction?
nasht00 (Sun, 10 Sep 2017 07:42:46 GMT):
Given an asset with an array of relationships:
```
asset Group identified by id {
o String id
--> Person[] members
}
```
Can I enforce uniqueness in `members`? Or do I need to do this manually on every transaction?
ThomasWatson (Sun, 10 Sep 2017 13:40:03 GMT):
@ThomasWatson Issue Resolved, fabric not started (duh). I had stopped my vm to take a snapshot and forgot to start the fabric up (startFabric.sh).
ThomasWatson (Sun, 10 Sep 2017 13:42:34 GMT):
perhaps the script can be enhanced to check if fabric is started...or maybe a better error message.
ThomasWatson (Sun, 10 Sep 2017 14:05:24 GMT):
Hi, I am failing on the command to start the REST server (./composer-rest-server)...composer runtime (0.12.0) is not compatible with client (0.11.3)..how to fix?
ThomasWatson (Sun, 10 Sep 2017 14:06:06 GMT):
Message Attachments
ThomasWatson (Sun, 10 Sep 2017 14:07:05 GMT):
Does my Search need to be configured somehow...when I enter "REST" into the search window, I get people names with string "rest" in the names.
ThomasWatson (Sun, 10 Sep 2017 14:08:15 GMT):
Message Attachments
sebstar (Sun, 10 Sep 2017 20:33:18 GMT):
Has joined the channel.
sebstar (Sun, 10 Sep 2017 20:36:05 GMT):
Hi, Is there a general recommendation as to how to debug js libs? eslint doesn't show any errors. I have deployed my network to a locally running playground. Now sending a transaction shows the unhelpful error: "TypeError: e is undefined"
sebstar (Sun, 10 Sep 2017 20:36:30 GMT):
No file name or line
sebstar (Sun, 10 Sep 2017 20:37:39 GMT):
and there isn't a variable named 'e' in any of my libs
alisonb (Sun, 10 Sep 2017 21:31:17 GMT):
Has anyone successfully used `composer identity bind`? I used fabric-ca-client to enrol a user and obtain their certificate. I then added that user as a participant to a business network then used identity bind to bind the enrolled user to their participant definition. However, when I try `composer network ping` it fails with:
alisonb (Sun, 10 Sep 2017 21:31:17 GMT):
Has anyone successfully used `composer identity bind`? I used fabric-ca-client to register and enrol a user and obtain their certificate. I then added that user as a participant to a business network then used identity bind to bind the enrolled user to their participant definition. However, when I try `composer network ping` it fails with: ```
Error: Error trying to ping. Error: Error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The current identity has not been registered:test2)```
kletkeman (Sun, 10 Sep 2017 23:43:02 GMT):
@sebstar @here I've been pretty frustrated with the lack useful debugging options with the online playground and the playground when connected to a fabric. This should be easier than it is to do simple debugging. Like piping stdout or logs back to the playground in real time. Anyway, I came up with a fairly decent option that offers me quite a bit of useful info -- add an emitted event in place of debug output. This works surprisingly well because all emitted events are stored and you can review them whether your transaction succeeds or fails. So you see trace events intermingled with real events in the transaction and in the right order. How I do this is to add this simple definition to the CTO file:
event LogInfoEvent {
o String message
o String payload
}
Then I add this
kletkeman (Sun, 10 Sep 2017 23:43:02 GMT):
@sebstar @here I've been pretty frustrated with the lack useful debugging options with the online playground and the playground when connected to a fabric. This should be easier than it is to do simple debugging. Like piping stdout or logs back to the playground in real time. Anyway, I came up with a fairly decent option that offers me quite a bit of useful info -- add an emitted event in place of debug output. This works surprisingly well because all emitted events are stored and you can review them whether your transaction succeeds or fails. So you see trace events intermingled with real events in the transaction and in the right order. How I do this is to add this simple definition to the CTO file:
~~~
event LogInfoEvent {
o String message
o String payload
}
~~~
Then I add this function to the lib js file:
~~~
kletkeman (Sun, 10 Sep 2017 23:43:02 GMT):
@sebstar @here I've been pretty frustrated with the lack useful debugging options with the online playground and the playground when connected to a fabric. This should be easier than it is to do simple debugging. Like piping stdout or logs back to the playground in real time. Anyway, I came up with a fairly decent option that offers me quite a bit of useful info -- add an emitted event in place of debug output. This works surprisingly well because all emitted events are stored and you can review them whether your transaction succeeds or fails. So you see trace events intermingled with real events in the transaction and in the right order. How I do this is to add this simple definition to the CTO file:
~~~
event LogInfoEvent {
o String message
o String payload
}
~~~
Then I add this function to the lib js file:
~~~
function emitTraceEvent(namespace, eventname, message, payload) {
var evt = getFactory().newEvent(namespace, eventname);
evt.message = message;
try {
evt.payload = "object: " + JSON.stringify(payload);
} catch (err) {
evt.payload = "resource: " + JSON.stringify(serializer.toJSON(payload)); // yes, seriously
}
emit(evt);
}
~~~
You may be surprised at how useful this can be ...
kletkeman (Sun, 10 Sep 2017 23:43:02 GMT):
@sebstar @here I've been pretty frustrated with the lack useful debugging options with the online playground and the playground when connected to a fabric. This should be easier than it is to do simple debugging. Like piping stdout or logs back to the playground in real time. Anyway, I came up with a fairly decent option that offers me quite a bit of useful info -- add an emitted event in place of debug output. This works surprisingly well because all emitted events are stored and you can review them whether your transaction succeeds or fails. So you see trace events intermingled with real events in the transaction and in the right order. How I do this is to add this simple definition to the CTO file:
event LogInfoEvent {
o String message
o String payload
}
Then I add this function to the lib js file:
function emitTraceEvent(namespace, eventname, message, payload) {
var evt = getFactory().newEvent(namespace, eventname);
evt.message = message;
try {
evt.payload = "object: " + JSON.stringify(payload);
} catch (err) {
evt.payload = "resource: " + JSON.stringify(serializer.toJSON(payload)); // yes, seriously
}
emit(evt);
}
You may be surprised at how useful this can be ...
kletkeman (Mon, 11 Sep 2017 03:35:48 GMT):
@sstone1 I'm getting an error when I try to use outside projects like deepmerge. For example, this line:
var deepmerge = require('deepmerge');
results in this error as soon as I try the "new asset" button in playground.
TypeError: Cannot read property 'apply' of null
I have the dependency in the package file:
"dependencies": {
"deepmerge": "^1.5.1"
}
The dependency itself is not the issue since commenting out the require statement fixes the problem.
Is it forbidden to use node packages?
mna2017 (Mon, 11 Sep 2017 03:55:27 GMT):
HI Team, I have created a custom composer network and created an asset and a couple transactions inside it. Inside the updateAsset transaction I first need to read the asset from the registry first, and then make changes to only a few fields(not all). How do I read the current asset from the registry inside this transaction function ?
mna2017 (Mon, 11 Sep 2017 03:55:51 GMT):
function updateVehicle(updateAsset) {
/* first read the asset from registry, and see the values of various fields */
// I want to read hte asset here....
/* Now update hte asset fields */
updateAsset.vehicle.truckMod = updateAsset.truckMod
updateAsset.vehicle.truckPDate = updateAsset.truckPDate
updateAsset.vehicle.truckChnum = updateAsset.truckChnum
updateAsset.vehicle.truckEnnum = updateAsset.truckEnnum
updateAsset.vehicle.owner = updateAsset.newOwner
return getAssetRegistry('org.hyperledger_composer.swed.Vehicle')
.then(function (assetRegistry) {
return assetRegistry.update(updateAsset.vehicle);
});
}
ilfrich (Mon, 11 Sep 2017 05:19:14 GMT):
Hey, what is the recommendation for the development setup when customising / developing the Yeoman generator?
ilfrich (Mon, 11 Sep 2017 05:19:14 GMT):
Hey, what is the recommendation for the development setup when customising / developing the Yeoman generator?
ilfrich (Mon, 11 Sep 2017 05:19:14 GMT):
Hey, what is the recommendation for the development setup when customising / developing the Yeoman generator? I'm constantly getting version conflicts (`Error: Composer runtime (0.11.3) is not compatible with client (0.12.1)`)
ilfrich (Mon, 11 Sep 2017 05:19:14 GMT):
Hey, what is the recommendation for the development setup when customising / developing the Yeoman generator? I'm constantly getting version conflicts: `Error: Composer runtime (0.11.3) is not compatible with client (0.12.1)`
kletkeman (Mon, 11 Sep 2017 06:05:04 GMT):
@mna2017 The basic mechanism is
assetObject = assetRegistry.get(stringid)
kletkeman (Mon, 11 Sep 2017 06:08:59 GMT):
@sstone1 I'm suddenly getting some funky results from the runtime version of assetRegistry.get(id) ... when I display it using JSON.stringify (because it is not returning a resource), I get "payload": "object: object {\"__zone_symbol__state\":null,\"__zone_symbol__value\":[]}"
kletkeman (Mon, 11 Sep 2017 06:08:59 GMT):
@sstone1 I'm suddenly getting some funky results from the runtime version of assetRegistry.get(id) ... when I display it using JSON.stringify (because it is not returning a resource), I get "payload": "object: object {\"__zone_symbol__state\":null,\"__zone_symbol__value\":[]}"
Do you have any thoughts on what might be happening? I've spent an hour trying to figure this out ...
mna2017 (Mon, 11 Sep 2017 06:42:09 GMT):
@kletkeman Thanks for the reply. This is precisely what i am trying to figure ou.
mna2017 (Mon, 11 Sep 2017 06:43:10 GMT):
return getAssetRegistry('org.hyperledger_composer.swed.Vehicle')
.then(function (assetRegistry) {
assetObject = assetRegistry.get("01");
alert (JSON.stringify(assetObject));
mna2017 (Mon, 11 Sep 2017 06:44:11 GMT):
This is how am trying to get the asset data. I have created an asset with assetId = "01" and hardcoded this inside logic.js. Even this is returning the same "__zone_symbol....." king of meaningless string.
nasht00 (Mon, 11 Sep 2017 06:44:46 GMT):
Repost:
Given an asset with an array of relationships:
```
asset Group identified by id {
o String id
--> Person[] members
}
```
Can I enforce uniqueness in `members`? Or do I need to do this manually on every transaction?
mna2017 (Mon, 11 Sep 2017 07:14:00 GMT):
@kletkeman by the way, i just tested "exists(id)" and it returned a TRUE meaning the asset exists
dlubom (Mon, 11 Sep 2017 07:15:53 GMT):
hello, is it sensible to write Chaincode natively in Go instead in Composer? Are there arguments or cases not to use Composer?
mna2017 (Mon, 11 Sep 2017 07:37:43 GMT):
@kletkeman I am now getting data out of assetRegistry.get(id). However, JSON.stringify on the output object results in an exception for me.
ilfrich (Mon, 11 Sep 2017 08:07:23 GMT):
@dlubom I think the current framework only supports JS chaincode. The advantage / thinking behind that is that with JS chaincode, everything is JS, which makes it easier to develop/maintain - especially for people/teams without Go knowledge (since it is a newer language, devs with good Go knowledge are rare).
ilfrich (Mon, 11 Sep 2017 08:07:23 GMT):
@dlubom I think the current framework only supports JS chaincode. The advantage / thinking behind that is that with JS chaincode, everything is JS, which makes it easier to develop/maintain - especially for people/teams without Go knowledge (since it is a newer language, devs with good Go knowledge are rare). Additionally people are currently working on NodeJS support for the chaincode (hyperledger v1.1 feature). Once that is done, there'll be no need for the current wrapper.
NikhilNanjappa (Mon, 11 Sep 2017 08:09:31 GMT):
@davidkel , @coder-ajay -- Could you please if someone is looking into this issue - https://github.com/hyperledger/composer/issues/2095
NikhilNanjappa (Mon, 11 Sep 2017 08:09:31 GMT):
@davidkel , @coder-ajay -- Could you please confirm if someone is looking into this issue - https://github.com/hyperledger/composer/issues/2095
NikhilNanjappa (Mon, 11 Sep 2017 08:09:31 GMT):
@davidkel , @coder-ajay -- Could you please confirm if someone is looking into this issue? https://github.com/hyperledger/composer/issues/2095
lucrezia.dm (Mon, 11 Sep 2017 08:34:40 GMT):
hi,
lucrezia.dm (Mon, 11 Sep 2017 08:34:40 GMT):
hi,
what does exactly means " Undeclared type New_Producted_RecordType in property org.acme.New_Producted_Record.species" error?
sk (Mon, 11 Sep 2017 08:36:37 GMT):
Has left the channel.
Sakshi_44 (Mon, 11 Sep 2017 08:43:05 GMT):
Message Attachments
Sakshi_44 (Mon, 11 Sep 2017 08:45:27 GMT):
i was going to the document https://hyperledger.github.io/composer/managing/identity-issue.html but not getting in which file I need to add this to provide user secret to the new participant. i have .html and .ts files for my application POC.
atulkamble (Mon, 11 Sep 2017 09:23:01 GMT):
Hi All,
I am following the Building Your First Network Guide at https://hyperledger-fabric.readthedocs.io/en/latest/build_network.html. Under the section "Create and Join Channel" the below command:
peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
is supposed to return a genesis block -
atulkamble (Mon, 11 Sep 2017 09:23:41 GMT):
Message Attachments
atulkamble (Mon, 11 Sep 2017 09:24:20 GMT):
Could anyone please help with
lucrezia.dm (Mon, 11 Sep 2017 09:34:14 GMT):
Hello,
I'm working on the Hyperledger Composer Online Player.
I'm beginner and I need help. I am editing some examples. If they will work I will share them with everyone.
At the moment, I need help with errors.
Where can I get support? several times I asked for help, but here I do not get a response.
can anyone tell me How/Where to do it?
atulkamble (Mon, 11 Sep 2017 09:37:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Kh5TBJwS2coCJ8zTD) @lucrezia.dm You can ask it here or Log it on Stack overflow with the tag: hyperledger-composer
lucrezia.dm (Mon, 11 Sep 2017 09:39:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=cB97fpe827NKm2f37) @atulkamble
nobody answered me also on StackOverflow, I did it
https://stackoverflow.com/questions/46073996/acl-permission-hyperledger-composer
amolpednekar (Mon, 11 Sep 2017 09:41:17 GMT):
Has joined the channel.
lucrezia.dm (Mon, 11 Sep 2017 09:41:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=cB97fpe827NKm2f37) @atulkamble
Also some minutes ago, I wrote about my problem on this Chat.... but no response....
atclik 1 (Mon, 11 Sep 2017 09:53:40 GMT):
Has joined the channel.
rthatcher (Mon, 11 Sep 2017 10:01:43 GMT):
@lucrezia.dm - can you share you Model file with us ?
rthatcher (Mon, 11 Sep 2017 10:08:48 GMT):
@atulkamble - this channel is intended for Hyperledger Composer questions. I think your question is an underlying HyperLedger Fabric question.
Can you please re-post in the #fabric channel.
atulkamble (Mon, 11 Sep 2017 10:23:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tDDJu8zmS8ftk6tyy) @rthatcher Thanks! I will :)
lucrezia.dm (Mon, 11 Sep 2017 10:52:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=83zabmTeWKWCiRamm) @rthatcher
namespace com.biz
/**
* The types of new_producted_records that could be moved
*/
enum New_producted_recordType {
o SHEEP_GOAT
o CATTLE
o PIG
o DEER_OTHER
}
/**
* The movement status for an new_producted_record
*/
enum MovementStatus {
o IN_FIELD
o IN_TRANSIT
}
/**
* The production type associated with an new_producted_record
*/
enum ProductionType {
o MEAT
o WOOL
o DAIRY
o BREEDING
o OTHER
}
/**
* A Doctor participant
*/
abstract participant User identified by email {
o String email
o String firstName
o String lastName
}
/**
* A Doctor participant
*/
participant Doctor extends User {
o String address1
o String address2
o String county
o String postcode
--> Hospital_Department hospital_department optional
}
/**
* A Ssn participant
*/
participant Ssn extends User {
}
/**
* A Patient asset. A Patient is related to a list of new_producted_records
*/
asset Patient identified by cph {
o String cph
o String name
--> Hospital_Department hospital_department
}
/**
* An New_producted_record asset, which is related to a Patient
*/
asset New_producted_record identified by new_producted_recordId {
o String new_producted_recordId
o New_producted_recordType species
o MovementStatus movementStatus
o ProductionType productionType
--> Patient location optional
--> Doctor owner
}
/**
* A Hospital_Department asset which is owned by a Doctor, is related to a list of fields
* and has a list of incoming new_producted_records.
*/
asset Hospital_Department identified by sbi {
o String sbi
o String address1
o String address2
o String county
o String postcode
--> Doctor owner
--> New_producted_record[] incomingNew_producted_records optional
}
/**
* An abstract transaction type for new_producted_record movements
*/
abstract transaction New_producted_recordMovement {
o String[] logs optional
--> New_producted_record new_producted_record
--> Hospital_Department from
--> Hospital_Department to
}
/**
* A transaction type for an new_producted_record leaving a hospital
*/
transaction New_producted_recordMovementDeparture extends New_producted_recordMovement {
--> Patient fromField
}
/**
* A transaction type for an new_producted_record arriving at a field
*/
transaction New_producted_recordMovementArrival extends New_producted_recordMovement {
--> Patient arrivalField
}
transaction SetupDemo {
}
lucrezia.dm (Mon, 11 Sep 2017 10:52:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=83zabmTeWKWCiRamm) @rthatcher
namespace org.acme
/**
* The types of new_producted_records that could be moved
*/
enum New_producted_recordType {
o MEDICAL_REPORT
o DIAGNOSTIC_IMAGES
o MEDICATIONS_ADMINISTERED
o ALLERGIES
}
/**
* The movement status for an new_producted_record
*/
enum MovementStatus {
o IN_DEPARTMENT
o LOADING
}
/**
* The production type associated with an new_producted_record
*/
enum ProductionType {
o COLOR
o BLACK_WHITE
o OTHER
}
/**
* A Doctor participant
sui = single user identifier
*/
abstract participant User identified by sui {
o String sui
o String firstName
o String lastName
}
/**
* A Doctor participant
*/
participant Doctor extends User {
o String address
o String county
o String postcode
--> Hospital_Department hospital_department optional
}
/**
* A Ssn participant
*/
participant Ssn extends User {
}
/**
* A Patient asset. A Patient is related to a list of new_producted_records
spi(single patient identifier)
*/
asset Patient identified by spi {
o String spi
o String name
--> Hospital_Department hospital_department
}
/**
* An New_Producted_Record asset, which is related to a Patient
*/
asset New_Producted_Record identified by new_producted_recordId {
o String new_producted_recordId
o New_Producted_RecordType species
o MovementStatus movementStatus
o ProductionType productionType
--> Patient location optional
--> Doctor owner
}
/**
* A Hospital_Department asset which is owned by a Doctor, is related to a list of patients
* and has a list of incoming new_producted_records.
*/
asset Hospital_Department identified by sdi {
o String sdi
o String address
o String county
o String postcode
--> Doctor owner
--> New_Producted_Record[] incomingNew_Producted_Records optional
}
/**
* An abstract transaction type for new_producted_record movements
*/
abstract transaction New_Producted_RecordMovement {
o String[] logs optional
--> New_Producted_Record new_producted_record
--> Hospital_Department from
--> Hospital_Department to
}
/**
* A transaction type for an new_producted_record leaving a hospital
*/
transaction SendingDataPacket extends New_Producted_RecordMovement {
--> Patient fromPatient
}
/**
* A transaction type for an new_producted_record arriving at a patient
*/
transaction LoadingDataPacket extends New_Producted_RecordMovement {
--> Patient arrivalFolder
}
transaction SetupDemo {
}
lucrezia.dm (Mon, 11 Sep 2017 11:13:35 GMT):
I did it.
rthatcher (Mon, 11 Sep 2017 11:14:22 GMT):
@Sakshi_44 - If you are writing a Web App, you could look at the Composer REST Server which has functions for System e.g. http://localhost:3000/api/system/identities
It might be more straightforward than using the JavaScript API code excerpt you quoted. If you use the JavaScript API code, you will need to integrate it into your Web App.
rthatcher (Mon, 11 Sep 2017 11:14:46 GMT):
@lucrezia.dm - good news - what change did you make ?
lucrezia.dm (Mon, 11 Sep 2017 11:35:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=typwx5KAca8d35u3H) @rthatcher
I started from beginning.
lucrezia.dm (Mon, 11 Sep 2017 11:35:49 GMT):
I would like share my modified code with whole community. How can I do?
nippleDonkey (Mon, 11 Sep 2017 12:57:43 GMT):
Hello everyone. I'm hoping someone could shed some light on an issue I am having. I've setup my business network with multiple channels. Once my network is setup i perform a test:
```
composer network ping -p submissionchannel1 -n submission-network -i admin -s adminpw
```
This returns the following error:
```
Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN
Command failed
```
This is where is get weird. If I go into .composer-credentials folder and delete the admin cert and perform a ping again. If it fails, I delete the new cert and try again ... after 'n' number of tries it eventually works. This is completely random. Sometimes it will work first time, other times it has taken 12 deletes before it worked. Any ideas as to why this is happening would be very welcome.
nippleDonkey (Mon, 11 Sep 2017 12:59:42 GMT):
It's also worth noting that the error message I get back (the one above) is the first error message, subsequent ping attempts will return this error:
```
Error: Error trying to ping. Error: Error trying to query chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate has expired or is not yet valid
Command failed
```
davidkel (Mon, 11 Sep 2017 13:17:35 GMT):
@nippleDonkey check the valid and expiry timestamps of your admin certificate and see if they fit into the date/time range as seen by the peer and orderer. It could be that the exact times of the CA/Order/Peer processes are not always absolutely identical
nippleDonkey (Mon, 11 Sep 2017 13:19:46 GMT):
I have looked at the expiry dates which all seems to be 10 years in the future. The only difference i can see is that my dev machine is in BST and the docker images are UTC. However if this was the issue the certs would always be invalid.
how would you sync the times if that was the case?
UDeshmukh (Mon, 11 Sep 2017 13:27:47 GMT):
I'm trying to configure user authentication via REST API using Github strategy per documentation at:
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
I Installed the passport-github strategy by executing - npm install -g passport-github
But noticed that it did not create a Folder "authPath": "/auth/github" on my VM.
I read on Github website: https://github.com/cfsghost/passport-github
"The author of Passport-Github has not maintained the original module for a long time. Features in his module don't work since Github upgraded their API to version 3.0. We forked it and re-published it to NPM with a new name passport-github2"
Can someone confirm if this needs correction? And if so what exact steps I need foolow?
davidkel (Mon, 11 Sep 2017 13:30:32 GMT):
@nippleDonkey well the fact that they work eventually implies some sort of minor clock discrepancy, if you do the first ping and it fails, how long do you have to wait before it finally works successfully ? Once that is done you have certificates that will continue to work so save them (and don't restart your CA unless you have it configured in such a way that the admin cert will remain valid across CA reboots)
nippleDonkey (Mon, 11 Sep 2017 13:35:09 GMT):
@davidkel thanks for your responses. If the ping fails, the certs seem to be invalid indefinitely (although the maximum time I've waited is 48 hours) I have tried various time combinations and changing timezones with the same result.
To give you an idea, this is what my credentials folder looks like after "hunting" for a valid certificate.
```
0 drwxr-xr-x 24 user MHF\Domain Users 816B 11 Sep 13:51 .
0 drwxr-xr-x+ 56 user MHF\Domain Users 1.9K 11 Sep 13:46 ..
8 -rw-r--r-- 1 user MHF\Domain Users 246B 11 Sep 13:49 2bd163d28ab2dbf7177aa6ceae732774c92dc091e99af0b208825bac603871a2-priv
8 -rw-r--r-- 1 user MHF\Domain Users 182B 11 Sep 13:49 2bd163d28ab2dbf7177aa6ceae732774c92dc091e99af0b208825bac603871a2-pub
8 -rw-r--r-- 1 user MHF\Domain Users 246B 11 Sep 13:46 387fe397a7d2ae1ea0afbe1945dda65bb5c8207e963d2aee349f3b0ed686e3f8-priv
8 -rw-r--r-- 1 user MHF\Domain Users 182B 11 Sep 13:51 387fe397a7d2ae1ea0afbe1945dda65bb5c8207e963d2aee349f3b0ed686e3f8-pub
8 -rw-r--r-- 1 user MHF\Domain Users 246B 11 Sep 13:50 3dcf854b563bd6f1082df2e48f8c1b6012a192b3bf3ab1c152ed4691da8d5dc7-priv
8 -rw-r--r-- 1 user MHF\Domain Users 182B 11 Sep 13:50 3dcf854b563bd6f1082df2e48f8c1b6012a192b3bf3ab1c152ed4691da8d5dc7-pub
8 -rw-r--r-- 1 user MHF\Domain Users 246B 11 Sep 13:49 4a9d86786df622d25e2bea2256b732db21b88e011c29472637e7a46c2f3e1a44-priv
8 -rw-r--r-- 1 user MHF\Domain Users 182B 11 Sep 13:49 4a9d86786df622d25e2bea2256b732db21b88e011c29472637e7a46c2f3e1a44-pub
8 -rw-r--r-- 1 user MHF\Domain Users 246B 11 Sep 13:49 965c9b3337fd6defbb90d55340a092487993da3e77f76e1ba57c697722314408-priv
8 -rw-r--r-- 1 user MHF\Domain Users 182B 11 Sep 13:49 965c9b3337fd6defbb90d55340a092487993da3e77f76e1ba57c697722314408-pub
8 -rw-r--r-- 1 user MHF\Domain Users 246B 11 Sep 13:49 97cac35e0e1ea36ec6e65101de77271ad05d936a2f63af22feaf7d5295499c29-priv
8 -rw-r--r-- 1 user MHF\Domain Users 182B 11 Sep 13:49 97cac35e0e1ea36ec6e65101de77271ad05d936a2f63af22feaf7d5295499c29-pub
8 -rw-r--r-- 1 user MHF\Domain Users 1.0K 11 Sep 13:51 PeerAdmin
8 -rw-r--r-- 1 user MHF\Domain Users 246B 11 Sep 13:49 aaa38920b51e800decb6e583a7443f62460961f127fe16ea7fe526e36d9c3a57-priv
8 -rw-r--r-- 1 user MHF\Domain Users 182B 11 Sep 13:49 aaa38920b51e800decb6e583a7443f62460961f127fe16ea7fe526e36d9c3a57-pub
8 -rw-r--r-- 1 user MHF\Domain Users 962B 11 Sep 13:52 admin
8 -rw-r--r-- 1 user MHF\Domain Users 246B 11 Sep 13:49 c385c45009b5479eeae2787cfb2c2310e1f9b8cd90cff737f8e1967bbbf981ab-priv
8 -rw-r--r-- 1 user MHF\Domain Users 182B 11 Sep 13:49 c385c45009b5479eeae2787cfb2c2310e1f9b8cd90cff737f8e1967bbbf981ab-pub
8 -rw-r--r-- 1 user MHF\Domain Users 246B 11 Sep 13:51 cd88a313f4ae4b7ceaa66c06af9331c9ca4c8523557cfa1f6b8c555768d0bc9f-priv
8 -rw-r--r-- 1 user MHF\Domain Users 182B 11 Sep 13:52 cd88a313f4ae4b7ceaa66c06af9331c9ca4c8523557cfa1f6b8c555768d0bc9f-pub
8 -rw-r--r-- 1 user MHF\Domain Users 246B 11 Sep 13:49 f0debd4585073494a0d1588690bfd79a3c2c1e504542663bec43e33e4fa72e89-priv
8 -rw-r--r-- 1 user MHF\Domain Users 182B 11 Sep 13:49 f0debd4585073494a0d1588690bfd79a3c2c1e504542663bec43e33e4fa72e89-pub
```
nippleDonkey (Mon, 11 Sep 2017 13:37:06 GMT):
@davidkel I could do what you are suggesting, by keeping a copy of the working certs, but this seems to be ignoring an underlining issue which will reappear if the CA gets rebooted. It will be fine for dev, but not a production environment.
psymatix (Mon, 11 Sep 2017 14:44:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZfdhJkmhk88T8PgEy) @rwadhwa @mahoney1 Hi guys. I got it working by using the certificate in PEER_ORG_ID/peers/PEER_URL/msp/tlscacerts/tlsca.PEER_ORG_ID-cert.pem and also using PEER_URL in the connection.json file under Request and EventURL rather than localhost :-)
davidkel (Mon, 11 Sep 2017 14:45:44 GMT):
@nippleDonkey In a production environment your CA will probably only allow you download the certificates once and after that you won't be able to download again, regardless of a reboot
psymatix (Mon, 11 Sep 2017 14:47:44 GMT):
I've got a question regarding deploying from Composer to a channel on a network. I've deployed a BNA file to one peer on the channel successfully but I cannot ping the network from another peer nor start a rest server. It receives all events on the channel. The error I get is "Error: Error trying to ping. Error: Error trying to query chaincode. Error: Error executing chaincode: Could not get deployment transaction from LSCC for my-network:0.12.0 - Get ChaincodeDeploymentSpec for my-network/mychannel from LSCC error: invalid deployment spec : open /var/hyperledger/production/chaincodes/my-network.0.12.0: no such file or directory" @rwadhwa @mahoney1
psymatix (Mon, 11 Sep 2017 14:50:18 GMT):
I also noticed that in that directory /var/hyperledger/production/chaincodes/ there is a chaincode with the same name but a different version. Has anyone else experienced this?
rthatcher (Mon, 11 Sep 2017 15:25:26 GMT):
@psymatix - I believe the version number you refer to is the version number of composer that used to generate and deploy the chaincode - so if you see different versions I'm wondering if you have some mixed and possibly incompatible versions on different peers ?
psymatix (Mon, 11 Sep 2017 15:36:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=N37PscbrziqzcZwCA) @rthatcher yes! I've just noticed that. I'm tearing down and starting up again on the same version to see if it fixes it. Thanks.
OlegB 1 (Mon, 11 Sep 2017 15:54:27 GMT):
Has joined the channel.
a.ochs (Mon, 11 Sep 2017 16:34:59 GMT):
Is there a tutorial or article about: "Use working Go chaincode and build the same with a Composer bna" ?
grice_32 (Mon, 11 Sep 2017 17:03:20 GMT):
Can someone point to the google drive where the composer webcasts are stored?
UDeshmukh (Mon, 11 Sep 2017 17:19:15 GMT):
https://drive.google.com/drive/folders/0B_NJV6eJXAA1b25MdHlXdkM0LWc
mescoba1 (Mon, 11 Sep 2017 17:27:02 GMT):
When using `abstract` for a participant, am I able to access all Participants that extend the abstract type? I am currently getting `Error: Object with ID 'Participant:org.acme.destro.Peer' in collection with ID '$sysregistries' does not exist` when trying to access the Abstract Participant Registry
UDeshmukh (Mon, 11 Sep 2017 17:52:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uPsiGp92hfcPXLewh) @mescoba1 If you have a scenario similar to below - then you should be able to access Participant registries for Patients & Doctors.
abstract participant Person identified by personID {
o String personID
o String title
o String firstName
o String lastName
}
participant Patient extends Person {
o DateTime DateOfBrth
o String SSN
o Double balance
}
participant Doctor extends Person {
o String degree
o String specialization
o Hospital hospital
}
I'll be happy to stand corrected but I don't believe you can access registry for abstract participant Person.
mescoba1 (Mon, 11 Sep 2017 17:53:48 GMT):
Can you access Person registry that would give you all of Doctors and Patients?
mescoba1 (Mon, 11 Sep 2017 17:54:13 GMT):
Or do they simply inherit fields from Person only
UDeshmukh (Mon, 11 Sep 2017 17:59:20 GMT):
Never tried accessing abstract Person registry... in above example the 2 participants that extend the abstract class have few different set of fields, so not sure it'd work
Raje (Mon, 11 Sep 2017 20:48:20 GMT):
I have two components in my hyperledger project i) .bna file which has composer rest endpoints (APIs) and ii) fabric network with 2 channel using hlfv1-1 connection profile. The next step is to deploy the .bna file on the network with two channels using hlfv1-1. I am trying command "dist $ network deploy -p hlfv1-1 -a my-network.bna -i Admin -s randomString" but getting following error msg.
Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: Parse Error]
Command failed
Raje (Mon, 11 Sep 2017 20:48:26 GMT):
How can we solve this?
UDeshmukh (Mon, 11 Sep 2017 22:22:16 GMT):
Message Attachments
UDeshmukh (Mon, 11 Sep 2017 22:29:33 GMT):
Message Attachments
arsalan 4 (Mon, 11 Sep 2017 22:53:06 GMT):
hey guys, has anyone seen this before:
arsalan 4 (Mon, 11 Sep 2017 22:53:15 GMT):
2) #Exchange batch from breeder to hatcher "before all" hook:
Error: Failed to save connection profile defaultProfile
at mkdirp.then.then.catch (node_modules\composer-common\lib\fsconnectionprofilestore.js:110:23)
at runMicrotasksCallback (internal/process/next_tick.js:64:5)
at _combinedTickCallback (internal/process/next_tick.js:73:7)
at process._tickCallback (internal/process/next_tick.js:104:9)
arsalan 4 (Mon, 11 Sep 2017 22:54:12 GMT):
heres my test
arsalan 4 (Mon, 11 Sep 2017 22:54:44 GMT):
before(() => {
BrowserFS.initialize(new BrowserFS.FileSystem.InMemory());
const adminConnection = new AdminConnection({fs: bfs_fs});
return adminConnection.createProfile('defaultProfile', {
type: 'embedded'
})
.then(() => {
return adminConnection.connect('defaultProfile', 'admin', 'adminpw');
})
.then(() => {
return BusinessNetworkDefinition.fromDirectory(path.resolve(__dirname, '..'));
})
.then((businessNetworkDefinition) => {
return adminConnection.deploy(businessNetworkDefinition);
})
.then(() => {
businessNetworkConnection = new BusinessNetworkConnection({fs: bfs_fs});
return businessNetworkConnection.connect('defaultProfile', 'cbanetwork', 'admin', 'adminpw');
});
});
arsalan 4 (Mon, 11 Sep 2017 23:04:44 GMT):
hmmm so ive done some investigating, and it seems it may be because of the fabric environment i have up and running
arsalan 4 (Mon, 11 Sep 2017 23:04:47 GMT):
has anyone seen this error?
arsalan 4 (Mon, 11 Sep 2017 23:04:57 GMT):
# Create the channel
docker exec peer0.org1.example.com peer channel create -o orderer.example.com:7050 -c composerchannel -f /etc/hyperl
2017-09-11 22:59:13.265 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2017-09-11 22:59:13.265 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2017-09-11 22:59:13.268 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized
Error: channel create configuration tx file not found open C:/Program Files/Git/etc/hyperledger/configtx/composer-ch
Usage:
peer channel create [flags]
arsalan 4 (Mon, 11 Sep 2017 23:05:01 GMT):
this makes 0 sense to me
arsalan 4 (Mon, 11 Sep 2017 23:05:12 GMT):
if only hyperledger's documentation was actually correct step by step :'(
arsalan 4 (Mon, 11 Sep 2017 23:05:25 GMT):
im running on windows env, with all my dependency at the correct version
rainey (Tue, 12 Sep 2017 06:42:26 GMT):
am struggling to get my first hyperledger network up and running and would appreciate some hand holding..
rainey (Tue, 12 Sep 2017 06:43:49 GMT):
for example - i cloned the git clone https://github.com/hyperledger/composer-sample-networks.git
and got this:
rainey (Tue, 12 Sep 2017 06:44:37 GMT):
lerna ERR! execute In file included from ../src/hashtable.cpp:1:
lerna ERR! execute ../src/hashtable.h:7:10: fatal error: 'tr1/unordered_map' file not found
lucrezia.dm (Tue, 12 Sep 2017 07:13:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4bdk5iBdkh9MPEFR6) @UDeshmukh
I'm studying for Biomedical engineering graduation... I'm really interested to this kind of things. I would like share mine and yours. Is it possible?
lucrezia.dm (Tue, 12 Sep 2017 07:24:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZNa3M4dHayzajqfzu) @UDeshmukh
I'm really interested in your health network. can we share our works? I use it only for university project, nothing more
davidkel (Tue, 12 Sep 2017 07:35:58 GMT):
@UDeshmukh admin doesn't have authority to install and start chaincode on the fabric. You need to use identities that have this authority. If you are using the fabric development server provided by composer then this identity is preloaded for you and is called `PeerAdmin`
[ ](https://chat.hyperledger.org/channel/composer?msg=quLKBS4SZuwaQarso)
liujinlong (Tue, 12 Sep 2017 08:33:40 GMT):
Has joined the channel.
nasht00 (Tue, 12 Sep 2017 08:47:48 GMT):
Are there examples of how and when to use `FROM` in the query language? The documentation on it is very light...
dlubom (Tue, 12 Sep 2017 09:31:59 GMT):
hello, should I see my-network in web-browser(http://localhost:8080/) after `composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString` ?
rthatcher (Tue, 12 Sep 2017 09:50:41 GMT):
@dlubom - I assume that you `composer network deploy` command succeeded OK. :-)
You will not see your network on your browser at that address unless you start the composer playground locally on your machine
Maybe you have already seen the Composer Tutorial - but otherwise it is a good place to start
Are you currently looking at the Developer Tutorial?
JeremyH (Tue, 12 Sep 2017 09:52:42 GMT):
Hey, is there a way to set permission rules on a property level using the .acl file? For example, I have a participant, with two properties: name and account number. I'd like other participants to view the names of other participants, but not their account numbers, is this possible with using separate classes?
dlubom (Tue, 12 Sep 2017 10:02:18 GMT):
@rthatcher yes `composer network deploy` command succeeded, playground is started locally, yes - I do everything as in Developer Tutorial.
dlubom (Tue, 12 Sep 2017 10:03:06 GMT):
web-browser(http://localhost:8080) is working but not see my deployed network
Sakshi_44 (Tue, 12 Sep 2017 10:07:49 GMT):
Message Attachments
Sakshi_44 (Tue, 12 Sep 2017 10:08:24 GMT):
i am facing issue in deploying the network.
rthatcher (Tue, 12 Sep 2017 10:43:34 GMT):
@dlubom - Are you seeing the login screen on your Browser with `My Wallet` ?
Often people will have created a new network within the Playground and will see their ID cards to select from, and login to their Network.
In your case you have an already deployed network, so you will need to create an ID Card ...
Give your ID Card a name, and then accept all the defaults *except* `Key Value Store Directory Path` - I'm on Ubuntu and I specified `/home/
UDeshmukh (Tue, 12 Sep 2017 10:44:06 GMT):
@lucrezia.dm I'll be happy to collaborate... pl. let me know the scope of what you're aiming to build... cheers! Udayan
rthatcher (Tue, 12 Sep 2017 10:49:04 GMT):
@Sakshi_44 - at the end of your command you need `--sourceType dir --sourceName .` you need to make sure you are putting a *space* and a *period* character at the end of the line. (you are then specifying that the SourceName is your current folder/directory)
UDeshmukh (Tue, 12 Sep 2017 10:51:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gGZWj8cJLBk9QnZeo) @davidkel Thanks David! I tried with PeerAdmin and was able to deploy the network... and also able to test the REST Server. Having said that what about the Github Passport strategy that I want to implement for User Authentication? Would I be able to do it. I'd read this note somewhere: "PeerAdmin is not a valid user on the CA, so it cannot issue identities. you need to use admin / adminpw which is a valid user on the CA" What impact/consequence does this have if i deploy the network using PeerAdmin ?
davidkel (Tue, 12 Sep 2017 11:06:10 GMT):
@UDeshmukh It has no impact, you have to deploy using the PeerAdmin identity is it is the only one that has the authority to do so.
rthatcher (Tue, 12 Sep 2017 11:13:45 GMT):
@nasht00 - at the moment the `FROM` is not supported (I will follow up with to find out why it is in the documentation)
Maybe your real question is about whether you can do the equivalent of a relational JOIN across registries? and the answer is that it is not available at the moment.
nasht00 (Tue, 12 Sep 2017 11:19:27 GMT):
Thanks. Yes, that's the real question.
Maybe it would be good to list what the query language can and cannot do on that documentation page?
It would probably avoid many questions ...
satyajitsasmal (Tue, 12 Sep 2017 11:28:33 GMT):
Has joined the channel.
dlubom (Tue, 12 Sep 2017 11:55:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6YqxgpdWFXdBESuxE) @rthatcher thanks, working now
dlubom (Tue, 12 Sep 2017 12:15:10 GMT):
one more question, how to access http://localhost:3000/explorer/ api using userID and userSecret?
rthatcher (Tue, 12 Sep 2017 12:29:45 GMT):
@dlubom - I'm guessing that you have seen that when you start a 'default/basic' REST API server in a dev environment it is started with the admin credentials, and that all activity on the REST server is done in the context of the admin credentials.
This doc https://hyperledger.github.io/composer/integrating/enabling-multiuser.html specifically explains about how to use Multiuser mode - but I would suggest starting with the parent doc: https://hyperledger.github.io/composer/integrating/integrating-index.html
UDeshmukh (Tue, 12 Sep 2017 12:34:42 GMT):
@rthatcher David pointed to me earlier this morning - using admin credential does not work... It only works for PeerAdmin.
In my case composer-rest-server -p hlfv1 -n digital-health-network -i admin -s adminpw does not work.
composer-rest-server -p hlfv1 -n health-network -i PeerAdmin -s randomString ... works
dlubom (Tue, 12 Sep 2017 12:35:10 GMT):
ok thanks @rthatcher , is there other COMPOSER_PROVIDERS than github described?
UDeshmukh (Tue, 12 Sep 2017 12:37:00 GMT):
@dlubom http://passportjs.org/ website mentions it supports 300+ ... and as I understand you can have more than 1 strategy implemented at the same time. @rthatcher not sure whether Composer supports multiple strategies at this time ?
nasht00 (Tue, 12 Sep 2017 12:52:41 GMT):
Using the pre-configured fabric that comes with the samples, a single transaction takes about 4 to 5 seconds.
Can someone say if this sounds fair, or if there is something wrong in my code?
rthatcher (Tue, 12 Sep 2017 13:01:13 GMT):
@UDeshmukh - I noticed that you are using a different network name on the 2 commands so maybe that explains why one works and the other doesn't ? On my dev environment both PeerAdmin and Admin can start the REST server and I can create and read data.
davidkel (Tue, 12 Sep 2017 13:02:42 GMT):
@UDeshmukh PeerAdmin should only be used to deploy, you would not use it as the identity for the rest server. In reality you wouldn't use the CA admin identity either, but that should also work for the same reasons that PeerAdmin works, they are both seen as 'admin' identities by the composer runtime and are both from the same MSP
nasht00 (Tue, 12 Sep 2017 13:04:05 GMT):
Also: in ACL, for the `transaction` parameter, can I mention more than 1 txn? For example `transaction: txn1 OR txn2` ?
UDeshmukh (Tue, 12 Sep 2017 13:05:53 GMT):
@rthatcher sorry that was a typo here in the chat window... It's the same network (same bna file) that I could not deploy with 'admin' identity (I posted screenshot yesterday ... I'll re-post for your easy reference) but was able to deploy with PeerAdmin. i was also able to launch REST API Explorer with PeerAdmin
UDeshmukh (Tue, 12 Sep 2017 13:07:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gGZWj8cJLBk9QnZeo) @davidkel @rthatcher here is the admin vis-a-vis PeerAdmin deploy issue I refer to.. can you pl. take a quick look & advise.
rthatcher (Tue, 12 Sep 2017 13:11:40 GMT):
@nasht00 - I have seen previous questions in this channel regarding performance (and you can search it too :-) ) but my reading of it is that there are timeouts/timers set in the underlying Fabric e.g. In a default dev environment the Orderer(s) node will have a default batch timeout of 2s. So on a dev env a time of 3 secs for a transaction seems ok.
nasht00 (Tue, 12 Sep 2017 13:12:37 GMT):
What about 5 seconds? With those same default settings
UDeshmukh (Tue, 12 Sep 2017 13:47:12 GMT):
Message Attachments
rthatcher (Tue, 12 Sep 2017 13:55:00 GMT):
@UDeshmukh - quick thought - I think it forces HTTP*S* - did you try that ?
UDeshmukh (Tue, 12 Sep 2017 14:06:09 GMT):
Message Attachments
UDeshmukh (Tue, 12 Sep 2017 14:08:17 GMT):
Message Attachments
uber.twin (Tue, 12 Sep 2017 14:20:10 GMT):
@davidkel hi, could I please get an advice on the cause for encountering the error below when trying to do "getSerializer().toJSON(asset001). The asset001 instance does have a relationship field referring the party001
```Error: Model violation in instance my.Asset#001 class my.Party has value Resource {id=my.Party#001} expected a Relationship.```
uber.twin (Tue, 12 Sep 2017 14:20:10 GMT):
@davidkel hi, could I please get an advice on the cause for encountering the error below when trying to do "getSerializer().toJSON(asset001). The asset001 instance does have a relationship field referring the party001, and apparently, it is resolved
```Error: Model violation in instance my.Asset#001 class my.Party has value Resource {id=my.Party#001} expected a Relationship.```
uber.twin (Tue, 12 Sep 2017 14:20:10 GMT):
@davidkel hi, could I please get an advice on the cause for encountering the error below when trying to do "getSerializer().toJSON(asset001). The asset001 instance does have a relationship field referring the party001, and apparently it is resolved
```Error: Model violation in instance my.Asset#001 class my.Party has value Resource {id=my.Party#001} expected a Relationship.```
linyuadam (Tue, 12 Sep 2017 14:38:41 GMT):
Hi, all for certificate input in the connection profile, we should use "\n" for next line?
rthatcher (Tue, 12 Sep 2017 15:38:46 GMT):
@UDeshmukh - just checking the doc you referred to - to enable authentication (with github for example) you need to use `-a true` I don't think I have seen -S being used.
UDeshmukh (Tue, 12 Sep 2017 15:40:52 GMT):
Message Attachments
UDeshmukh (Tue, 12 Sep 2017 15:40:59 GMT):
Uh..oh... I'll try -a true ... this is what the documentation currently shows
rthatcher (Tue, 12 Sep 2017 15:42:12 GMT):
Message Attachments
arsalan 4 (Tue, 12 Sep 2017 15:44:01 GMT):
hey guys, I'm having probelems getting fabric up and running on windows 10 professional
arsalan 4 (Tue, 12 Sep 2017 15:44:10 GMT):
i see this when i run startFabric.sh
arsalan 4 (Tue, 12 Sep 2017 15:44:18 GMT):
# Create the channel
docker exec peer0.org1.example.com peer channel create -o orderer.example.com:7050 -c composerchannel -f /etc/hyperledger/configtx/composer-channel.tx
Error response from daemon: Container 562aa2ff7118d0540b070031b77f1c4356f2b4d792063763574ac6f2a7f98249 is not running
arsalan 4 (Tue, 12 Sep 2017 15:44:23 GMT):
anyone seen this before?
arsalan 4 (Tue, 12 Sep 2017 15:44:28 GMT):
I find everything else works smoothly
arsalan 4 (Tue, 12 Sep 2017 15:50:44 GMT):
anyone? i'm super confused
arsalan 4 (Tue, 12 Sep 2017 15:50:48 GMT):
doesn't make much sense to me lol
arsalan 4 (Tue, 12 Sep 2017 15:50:55 GMT):
would like to get this working
arsalan 4 (Tue, 12 Sep 2017 15:51:12 GMT):
if only you guys had a smooth setup process on windows :'(
rthatcher (Tue, 12 Sep 2017 15:51:48 GMT):
@arsalan 4 - I have seen these scripts running on Ubuntu and on Mac
arsalan 4 (Tue, 12 Sep 2017 15:51:59 GMT):
what do you mean?
arsalan 4 (Tue, 12 Sep 2017 15:52:03 GMT):
They can run on windows too
arsalan 4 (Tue, 12 Sep 2017 15:52:17 GMT):
unless there are separate windows scripts i wasn't told about
rthatcher (Tue, 12 Sep 2017 15:55:13 GMT):
@arsalan 4 - are you following a specific tutorial or document?
When I look at this doc https://hyperledger.github.io/composer/installing/development-tools.html
I see this " Operating Systems: Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12 "
arsalan 4 (Tue, 12 Sep 2017 15:58:29 GMT):
you're right @rthatcher but I really want to get it working on my PC then my shitty 7 year old mac
arsalan 4 (Tue, 12 Sep 2017 15:58:38 GMT):
and don't really want to use a linux VM
arsalan 4 (Tue, 12 Sep 2017 15:58:43 GMT):
im honestly sooo close
arsalan 4 (Tue, 12 Sep 2017 15:58:57 GMT):
its just this channel which won't get created
arsalan 4 (Tue, 12 Sep 2017 15:59:05 GMT):
there's this issue about setting up on windows: https://github.com/hyperledger/composer/issues/65
arsalan 4 (Tue, 12 Sep 2017 16:00:08 GMT):
so truthfully i need to understand why the creation of this channel is failing, my tests and all the other code ive written can't run on my environment obviously - if Fabric isn't running entirely
JonathanLevi (Tue, 12 Sep 2017 16:01:58 GMT):
Hey, 7 year old Macs are not s4itty ! ;-)
JonathanLevi (Tue, 12 Sep 2017 16:02:18 GMT):
Provided you have the right version of vim...
rthatcher (Tue, 12 Sep 2017 16:02:30 GMT):
@arsalan 4 - I run an Ubuntu Linux VM under Windows and it works well for me - it might be better if you can try that because even if you succeed in solving this problem there might be other problems downstream.
arsalan 4 (Tue, 12 Sep 2017 16:10:35 GMT):
@JonathanLevi hahaha true true
arsalan 4 (Tue, 12 Sep 2017 16:10:54 GMT):
@rthatcher Yeah it seems you're right, at this point it looks like I have no choice sadly. But this is just annoying!
arsalan 4 (Tue, 12 Sep 2017 16:11:03 GMT):
I feel so close to having it functional
UDeshmukh (Tue, 12 Sep 2017 16:11:26 GMT):
Message Attachments
UDeshmukh (Tue, 12 Sep 2017 16:11:27 GMT):
@rthatcher Thanks for the catch -a true did work. I was able to trigger the github-passport strategy, authenticate myself etc. - however I do not see the Wallets in my REST API Explorer as seen in the screenshot. I also did not get the “No enrollment ID or enrollment secret has been provided” error message as mentioned in the documentation.
Raje (Tue, 12 Sep 2017 16:19:20 GMT):
Message Attachments
rthatcher (Tue, 12 Sep 2017 16:19:58 GMT):
@UDeshmukh - good news that you can now authenticate :-)
To get the Wallets working you will also need ` -m true ` to enable multi user mode.
... and just a warning moving forward if you haven't seen this - the REST server will not Persist data unless you set it up to do that - meaning that if you stop and start the rest server you will lose the Wallets and Certificates and have to Issue new Identities. There is a doc about persisting data on the REST server https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
UDeshmukh (Tue, 12 Sep 2017 16:20:57 GMT):
Thanks @rthatcher for the heads up.... :thumbsup:
rthatcher (Tue, 12 Sep 2017 16:22:26 GMT):
@Raje - you need to use ` PeerAdmin ` not admin on our command line
(There was a good discussion about this earlier today in this channel that you can check out)
mna2017 (Tue, 12 Sep 2017 17:15:49 GMT):
Hi Team, How does the composer rest server know which business network it has to create the interface for. I mean is there a .yaml file that tells the composer-rest-server which network to pick. Any examples will be appreciated. Thanks!
Raje (Tue, 12 Sep 2017 19:45:04 GMT):
Message Attachments
Raje (Tue, 12 Sep 2017 19:49:05 GMT):
@rthatcher : Nvm, got the solution
ScottMorris (Tue, 12 Sep 2017 19:49:51 GMT):
if one reboots the machine that fabric/composer is running on, is there a way of starting everything again without hosing all the images and having it start from scratch?
UDeshmukh (Tue, 12 Sep 2017 19:55:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pL9vHXKwjf3dQkxwg) @mna2017 composer-rest-server -p hlfv1 -n my-network -i PeerAdmin -s randomString - you're instructing it to connect to "my-network"
ScottMorris (Tue, 12 Sep 2017 20:14:34 GMT):
I tried to rebuild my network using the documentation on the composer docs site and when i try to issue a new identity I get the error `fabric-ca request register failed with errors`. I tore down everything and rebuilt it again and I get the same error
ScottMorris (Tue, 12 Sep 2017 20:14:34 GMT):
I tried to rebuild my network using the documentation on the composer docs site and when i try to issue a new identity I get the error `"fabric-ca request register failed with errors [[{\"code\":400,\"message\":\"Authorization failure\"}]]"`. I tore down everything and rebuilt it again and I get the same error
mescoba1 (Tue, 12 Sep 2017 20:19:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oG2HwAjWEAQLt3kqX) @UDeshmukh I am also having trouble with authentication, was not able to get it working yet.
UDeshmukh (Tue, 12 Sep 2017 20:21:24 GMT):
@mescoba1 at which stage are you having issue?
mescoba1 (Tue, 12 Sep 2017 20:22:42 GMT):
I am able to access http://localhost:3000/explorer/#/ however getting a 404 when accessing http://localhost:3000/auth/github
UDeshmukh (Tue, 12 Sep 2017 20:24:22 GMT):
are you using the correct flags for enabling security for composer-rest-server ?
UDeshmukh (Tue, 12 Sep 2017 20:24:55 GMT):
@rthatcher had the documentation corrected earlier today... there was a typo in there
mescoba1 (Tue, 12 Sep 2017 20:25:55 GMT):
`composer-rest-server -p hlfv1 -n destro -i admin -s adminpw -N never -a true -m true`
UDeshmukh (Tue, 12 Sep 2017 20:28:20 GMT):
Ah... that was one place I got stuck too - you can't use admin. You have to use PeerAdmin... so in your case you have to launch it as composer-rest-server -p hlfv1 -n destro -i PeerAdmin -s randomString -N never -a true -m true
mescoba1 (Tue, 12 Sep 2017 20:29:24 GMT):
Ah okay, I'll give that a try
ScottMorris (Tue, 12 Sep 2017 20:40:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q8vkfqcQLQronLXzS) @ScottMorris When I run `composer identity issue` via the command line it works using admin/adminpw, but when I run the rest server it gives me the auth error.
ScottMorris (Tue, 12 Sep 2017 20:40:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q8vkfqcQLQronLXzS) When I run `composer identity issue` via the command line it works using admin/adminpw, but when I run the rest server it gives me the auth error.
ScottMorris (Tue, 12 Sep 2017 20:40:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q8vkfqcQLQronLXzS) When I run `composer identity issue` via the command line it works using admin/adminpw, but when I run the rest server it gives me the auth error.
mescoba1 (Tue, 12 Sep 2017 20:44:28 GMT):
@UDeshmukh When running
`composer-rest-server -p hlfv1 -n destro -i PeerAdmin -s randomString -N never -a true -m true` I get the following error
```Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Registering named query: buildsByPeer
Registering named query: buildsByStatus
Registering named query: getPeer
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Swagger: skipping unknown type "Peer".
Swagger: skipping unknown type "Signature".
Swagger: skipping unknown type "Peer".
Added schemas for all types to Loopback
events.js:160
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE :::3000
at Object.exports._errnoException (util.js:1018:11)
at exports._exceptionWithHostPort (util.js:1041:20)
at Server._listen2 (net.js:1258:14)
at listen (net.js:1294:10)
at Server.listen (net.js:1390:5)
at module.exports.promise.then.then (/usr/local/lib/node_modules/composer-rest-server/cli.js:148:19)
at process._tickCallback (internal/process/next_tick.js:109:7)```
mescoba1 (Tue, 12 Sep 2017 20:44:42 GMT):
Any ideas?
UDeshmukh (Tue, 12 Sep 2017 20:46:56 GMT):
looks like it's running into an issue with the way your event(s) are defined. Can you comment out the events ...just for testing the REST APIs authentication part?
davidkel (Tue, 12 Sep 2017 20:49:53 GMT):
@mescoba1 The key to the problem is this `listen EADDRINUSE :::3000`. It is saying that it cannot use port 3000 (which is the default port the rest server tries to use) because something else is already using it (EADDRINUSE).
davidkel (Tue, 12 Sep 2017 20:51:16 GMT):
@ScottMorris what identity did the rest server try to use to issue the new identity ? it should be possible to see it from the CA logs
ScottMorris (Tue, 12 Sep 2017 20:55:21 GMT):
@davidkel i used admin/adminpw in both cases
mescoba1 (Tue, 12 Sep 2017 20:55:52 GMT):
@davidkel I had a rest-server running on a different tab
mescoba1 (Tue, 12 Sep 2017 20:56:22 GMT):
The PeerAdmin didn't resolve the original issue however
davidkel (Tue, 12 Sep 2017 20:56:38 GMT):
Do the CA logs show one admin working and another admin failing ?
davidkel (Tue, 12 Sep 2017 20:56:38 GMT):
@ScottMorris Do the CA logs show one admin working and another admin failing ?
davidkel (Tue, 12 Sep 2017 21:10:06 GMT):
@mescoba1 No, because it would work with admin. There may be a problem with the passport-github module, we've not had a chance to confirm but we have an issue raised to investigate, please see
https://github.com/hyperledger/composer/issues/2109
davidkel (Tue, 12 Sep 2017 21:10:06 GMT):
@mescoba1 No, because it would work with admin. There may be a problem with the passport-github module, we've not had a chance to confirm but we have an issue raised to investigate, please see
https://github.com/hyperledger/composer/issues/2109
if this isn't a problem then it could be a configuration problem
sbrakev (Tue, 12 Sep 2017 21:20:27 GMT):
is there documentation on best practices for parsing through and generating Composer objects from a JSON mapping?
sbrakev (Tue, 12 Sep 2017 21:21:15 GMT):
I'm sending JSON strings into my composer functions for simplicity sake and converting the IDs and associated properties into the correct Objects in my model
ScottMorris (Tue, 12 Sep 2017 21:22:19 GMT):
@davidkel does the mongo db store any data related to this?
ScottMorris (Tue, 12 Sep 2017 21:22:25 GMT):
maybe i need to blow away that?
davidkel (Tue, 12 Sep 2017 21:23:28 GMT):
@ScottMorris If you have persisted the admin cert into the store, then rebooted your CA and your CA is not specifically setup to handle being rebooted to retain information then that admin id will no longer be valid
davidkel (Tue, 12 Sep 2017 21:24:52 GMT):
The way we configure the CA in our simple development server is the most basic simplest way possible. So if you reboot the CA it just starts from new and any certificate it has issued will not be recognised anymore
ScottMorris (Tue, 12 Sep 2017 21:25:07 GMT):
@davidkel the top text is from the cli command, the bottom text is from the REST API. I wiped my setup and started fresh, although I couldn't find the Mongo DB.
```
POST /api/v1/register
Authorization: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUI4RENDQVplZ0F3SUJBZ0lVR2c5cncxTDZrQ1lmWTU0dzd1Z1hEZ0hkd0swd0NnWUlLb1pJemowRUF3SXcKY3pFTE1Ba0dBMVVFQmhNQ1ZWTXhFekFSQmdOVkJBZ1RDa05oYkdsbWIzSnVhV0V4RmpBVUJnTlZCQWNURFZOaApiaUJHY21GdVkybHpZMjh4R1RBWEJnTlZCQW9URUc5eVp6RXVaWGhoYlhCc1pTNWpiMjB4SERBYUJnTlZCQU1UCkUyTmhMbTl5WnpFdVpYaGhiWEJzWlM1amIyMHdIaGNOTVRjd09URXlNakV3T0RBd1doY05NVGd3T1RFeU1qRXcKT0RBd1dqQVFNUTR3REFZRFZRUURFd1ZoWkcxcGJqQlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQQpCUGwyVDhhQ2Z4T3VqZHRhQW5icGdHM3VhaERmdjhvZmxSSDFLY2owMjkzSkRwTWFycGtMT2d4Y0Q0dE9STVVqClZlTFBSdmJ2UEJ0RTZhaE1QeDhBMW5DamJEQnFNQTRHQTFVZER3RUIvd1FFQXdJSGdEQU1CZ05WSFJNQkFmOEUKQWpBQU1CMEdBMVVkRGdRV0JCVGRkK2dMYjJFYWo0c2oyT3R5c0lYMjFwV0dqREFyQmdOVkhTTUVKREFpZ0NBWgpxMldydXdTQWZhMFM1TUNwcXFaa25uQ0dqanE5QWhlakl0aWVSK0dtcmpBS0JnZ3Foa2pPUFFRREFnTkhBREJFCkFpQUdvZHBFLzliNHhXb1IvQnFXa0pGdG9YdGViVkRHUkRzOWdldmJ1RkxFdndJZ0ZFeFk5djF5RDBIMTFMZ0oKdjYwNVBqS1ZNQjJEVVVhWWw4cGFGaGw1QUxzPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==.MEQCIF2OE0agNwIhxoRnDglVxqGijVBqbI6iGQBQcXAL514DAiB1b1sgZQmWfK9maMEOBwU2oKT6d+wV7Q+j2IaPYSdACA==
{"id":"smorris","type":"client","affiliation":"org1","max_enrollments":0,"attrs":[],"caName":"ca.org1.example.com"}
2017/09/12 21:13:20 [DEBUG] Directing traffic to CA ca.org1.example.com
2017/09/12 21:13:20 [DEBUG] Checking for revocation/expiration of certificate owned by 'admin'
2017/09/12 21:13:20 [DEBUG] DB: Get certificate by serial (1a0f6bc352fa90261f639e30eee8170e01ddc0ad) and aki (19ab65abbb04807dad12e4c0a9aaa6649e70868e3abd0217a322d89e47e1a6ae)
2017/09/12 21:13:20 [DEBUG] Successful authentication of 'admin'
2017/09/12 21:13:20 [DEBUG] Register request received
2017/09/12 21:13:20 [DEBUG] Received registration request from admin: &{RegistrationRequest:{Name:smorris Type:client Secret:<
davidkel (Tue, 12 Sep 2017 21:25:29 GMT):
(note that it won't be recognised by the CA, those certs are still valid for fabric interaction)
davidkel (Tue, 12 Sep 2017 21:26:33 GMT):
The CLI and Rest Server have different admin certificates
davidkel (Tue, 12 Sep 2017 21:28:09 GMT):
And given the error message, it's likely they are from different CA executions
mescoba1 (Tue, 12 Sep 2017 21:49:41 GMT):
When you perform a query, can you access fields of objects within the Object you are selecting? Do you need a `FROM` statement?
mescoba1 (Tue, 12 Sep 2017 21:50:45 GMT):
```query buildsByPeer {
description: "Get all Build built by Peer"
statement:
SELECT org.acme.destro.Build
WHERE (builderSig.signer.peerID == _$peerID)
} ```
`builderSig` is a concept that has a relationship to a Participant, however I can perform the query sucessfully
ScottMorris (Tue, 12 Sep 2017 22:02:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ueP9Q8n9qrWhKFW64) @davidkel how does one clear the REST API's cert?
davidkel (Tue, 12 Sep 2017 22:08:35 GMT):
@ScottMorris Are you are persisting them using MongoDB ? Also the rest server will use the identity defined in you connection profile as well but I would guess you used the same connection profile for the CLI commands as well as launching the rest server so they would use the same keyValStore
ScottMorris (Tue, 12 Sep 2017 22:09:25 GMT):
I'm using MongoDB, and when running the rest server and the CLI i'm using the same creds
davidkel (Tue, 12 Sep 2017 22:10:09 GMT):
When you say the same creds are they also using the same connection profile ?
davidkel (Tue, 12 Sep 2017 22:11:07 GMT):
and thus pointing to the same directory on your machine ?
ScottMorris (Tue, 12 Sep 2017 22:11:52 GMT):
yeah, both the hlfv1 profile with the admin/adminpw
ScottMorris (Tue, 12 Sep 2017 22:12:42 GMT):
i just found the database in Mongo, it was called `test`. After dropping it and starting the REST server again things seem to be back in order. I'm not sure what collection the certs were stored though...should have looked into that...
ScottMorris (Tue, 12 Sep 2017 22:15:56 GMT):
I should wire the nodes up to be persistent. My issue was the VM I was running things in crashed.
pxuereb (Wed, 13 Sep 2017 03:25:10 GMT):
Has joined the channel.
pxuereb (Wed, 13 Sep 2017 06:56:21 GMT):
Hi, i'm having issues deploying composer on top of a multi org, multi peer network. My network has two CA's, one order and six peers (two per org). The network uses TLS, which is giving me some issues. When running composer network ping -n network2 -p org1 -i admin -s adminpw i am receiving SSL errors;E0913 16:54:49.855499904 120141 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0913 16:54:49.864638248 120141 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0913 16:54:49.865108661 120141 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0913 16:54:49.865506771 120141 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
Error: Error trying to ping. Error: Error trying to query chaincode. Error: Connect Failed
Command failed
pxuereb (Wed, 13 Sep 2017 06:56:52 GMT):
Here is my connection file; {
"type": "hlfv1",
"name": "org1",
"orderers": [
{ "url" : "grpcs://localhost:7050",
"cert" : "-----BEGIN CERTIFICATE-----\nMIICFjCCAb2gAwIBAgIUCg+gzIn5AGd49e+izQD4Mf5tmvAwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTE3MDkxMzA1MjIwMFoXDTMyMDkwOTA1MjIwMFowaDELMAkG\nA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQKEwtIeXBl\ncmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMtY2Etc2Vy\ndmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaR3AhkwN5Wlz9/LapA2Soz6H\nY/FHohJLebABXmrInJqUPA6phMbj0S1fkkJ5PtriR8k9QOEkHJxxeBCEARVEtaNF\nMEMwDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYE\nFPEMhmO1YA/u34weEXIDtEauNnucMAoGCCqGSM49BAMCA0cAMEQCIG6ISMyAd09I\nrWuGMpnSG+a31sGI09qP6jh2QHLc7XqUAiBTnXQR+2XNWsO9zT/tv9AvWvv7o4qz\njaEie75He7Z9vQ==\n-----END CERTIFICATE-----\n"
}
],
"ca": { "url": "http://localhost:7054",
"name": "ca_peerOrg1",
"trustedRoots": [""],
"verify": true
},
"peers": [
{
"requestURL": "grpcs://localhost:7051",
"eventURL": "grpcs://localhost:7053",
"cert" : "-----BEGIN CERTIFICATE-----\nMIICFjCCAb2gAwIBAgIUCg+gzIn5AGd49e+izQD4Mf5tmvAwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTE3MDkxMzA1MjIwMFoXDTMyMDkwOTA1MjIwMFowaDELMAkG\nA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQKEwtIeXBl\ncmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMtY2Etc2Vy\ndmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaR3AhkwN5Wlz9/LapA2Soz6H\nY/FHohJLebABXmrInJqUPA6phMbj0S1fkkJ5PtriR8k9QOEkHJxxeBCEARVEtaNF\nMEMwDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYE\nFPEMhmO1YA/u34weEXIDtEauNnucMAoGCCqGSM49BAMCA0cAMEQCIG6ISMyAd09I\nrWuGMpnSG+a31sGI09qP6jh2QHLc7XqUAiBTnXQR+2XNWsO9zT/tv9AvWvv7o4qz\njaEie75He7Z9vQ==\n-----END CERTIFICATE-----\n"
},
{
"requestURL": "grpcs://localhost:8051",
"eventURL": "grpcs://localhost:8053",
"cert" : "-----BEGIN CERTIFICATE-----\nMIICFjCCAb2gAwIBAgIUCg+gzIn5AGd49e+izQD4Mf5tmvAwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTE3MDkxMzA1MjIwMFoXDTMyMDkwOTA1MjIwMFowaDELMAkG\nA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQKEwtIeXBl\ncmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMtY2Etc2Vy\ndmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaR3AhkwN5Wlz9/LapA2Soz6H\nY/FHohJLebABXmrInJqUPA6phMbj0S1fkkJ5PtriR8k9QOEkHJxxeBCEARVEtaNF\nMEMwDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYE\nFPEMhmO1YA/u34weEXIDtEauNnucMAoGCCqGSM49BAMCA0cAMEQCIG6ISMyAd09I\nrWuGMpnSG+a31sGI09qP6jh2QHLc7XqUAiBTnXQR+2XNWsO9zT/tv9AvWvv7o4qz\njaEie75He7Z9vQ==\n-----END CERTIFICATE-----\n"
}
],
"keyValStore": "/home/paul/.composer-credentials",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": "300",
"globalcert": "",
"maxSendSize": -1,
"maxRecvSize": -1
}
pxuereb (Wed, 13 Sep 2017 06:58:14 GMT):
The value of cert matches the contents of the .pem file used to start the CA (sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem)
ArunKaitha (Wed, 13 Sep 2017 07:11:57 GMT):
How to authenticate REST using google , any example ?
ArunKaitha (Wed, 13 Sep 2017 07:12:20 GMT):
any one any suggestion ?
davidkel (Wed, 13 Sep 2017 07:43:49 GMT):
@pxuereb you should use the ca certificate of the tls cert definitions for the peer and also for the orderer, this isn't going to be the root cert defined for your ca server if you used crpytogen. There should be specific tls directories where you can find them
magooster (Wed, 13 Sep 2017 07:47:51 GMT):
Has joined the channel.
erNail (Wed, 13 Sep 2017 08:36:43 GMT):
Is there any way to connect peers to a chain started via composer fabric-tools ?
erNail (Wed, 13 Sep 2017 08:44:34 GMT):
And is there any way to manage running chains created via composer ? Or any way to deploy business networks to chains created via cello ?
dlubom (Wed, 13 Sep 2017 09:17:17 GMT):
hello, how to use user cert stored in .composer-credentials ? how to connect using this to rest api?
FlexyZ-xx (Wed, 13 Sep 2017 09:34:02 GMT):
Has joined the channel.
FlexyZ-xx (Wed, 13 Sep 2017 10:21:38 GMT):
Is there any workshops/courses out there using composer?
rthatcher (Wed, 13 Sep 2017 10:23:25 GMT):
@FlexyZ-xx - There are tutorials for Composer here:
https://hyperledger.github.io/composer/tutorials/tutorials.html
FlexyZ-xx (Wed, 13 Sep 2017 10:24:37 GMT):
thx would be great to have hands-on with professionals that know composer
rthatcher (Wed, 13 Sep 2017 10:27:25 GMT):
@dlubom - The best approach is to issue new identities and use the Secret the first time. These 2 documents show how you enable Authentication on your REST server and then Multiuser mode. (You need to enable Authentication before Multiuser mode)
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
dlubom (Wed, 13 Sep 2017 10:29:09 GMT):
thanks @rthatcher but its about passport-github, I need just something simpler, is there any description?
srikanthanthargam (Wed, 13 Sep 2017 10:30:37 GMT):
Not able to issue identity using admin/adminpw
srikanthanthargam (Wed, 13 Sep 2017 10:30:52 GMT):
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
rthatcher (Wed, 13 Sep 2017 10:33:30 GMT):
@dlubom - The REST server uses the open source Passport authentication middleware, and GitHub is an example of what can be done. You can look at the Passport website and see what other options (strategies) are there that might suit you.
http://passportjs.org/
rthatcher (Wed, 13 Sep 2017 10:36:20 GMT):
@FlexyZ-xx - sometimes there are workshops, but generally there is a move to online training. This is quite a good place to start:
https://www.ibm.com/developerworks/cloud/library/cl-ibm-blockchain-101-quick-start-guide-for-developers-bluemix-trs/index.html
srikanthanthargam (Wed, 13 Sep 2017 10:41:47 GMT):
composer identity issue -p hlfv1 -n academicwallet -i admin -s adminpw -u srikantha -a resource:org.stravis.base.Student#srikantha@stravissolutions.com -x false
Not able to issue identity using admin/adminpw
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
i am able to list identities using admin/adminpw, but not able to issue any identitites
krupabathia (Wed, 13 Sep 2017 10:45:43 GMT):
Hello,
I have created a sample network and I am trying to create/submit transactions in the sample network. But the window that appears on clicking submit transactions is not scrollable and neither does it resize according to the size of my browser window, due to which I am not able to view/click on the submit transaction button
krupabathia (Wed, 13 Sep 2017 10:46:08 GMT):
Can someone suggest a workaround this?
lucrezia.dm (Wed, 13 Sep 2017 11:21:13 GMT):
(try) : ctrl + mouse wheel
lucrezia.dm (Wed, 13 Sep 2017 11:21:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vrESzPyjtPzSu8vym) @krupabathia
(try) : ctrl + mouse wheel
krupabathia (Wed, 13 Sep 2017 11:22:01 GMT):
doesn't work :(
Sneha (Wed, 13 Sep 2017 11:31:28 GMT):
@krupabathia Try doing it in full-screen mode ( on my laptop it is F11)
Sneha (Wed, 13 Sep 2017 11:31:28 GMT):
@krupabathia Try in full-screen mode ( on my laptop it is Fn+F11)
Sneha (Wed, 13 Sep 2017 11:31:28 GMT):
@krupabathia Try doing it in full-screen mode ( on my laptop it is Fn+F11)
dlubom (Wed, 13 Sep 2017 11:32:15 GMT):
@rthatcher I read this https://hyperledger.github.io/composer/integrating/enabling-multiuser.html and do it, github also, but still dont know how to connect to rest api once like alice once like bob
srikanthanthargam (Wed, 13 Sep 2017 11:40:53 GMT):
composer identity issue -p hlfv1 -n academicwallet -i admin -s adminpw -u srikantha -a resource:org.stravis.base.Student#srikantha@stravissolutions.com -x false
Not able to issue identity using admin/adminpw
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
i am able to list identities using admin/adminpw, but not able to issue any identitites
uber.twin (Wed, 13 Sep 2017 11:42:59 GMT):
@davidkel hi, I tried to use events for confirming the completion of an asynchronously submitted transaction but it appears that the event is fired even if the transaction fails "with code MVCC_READ_CONFLICT"
so, is it possible to use events for confirming a transaction?
davidkel (Wed, 13 Sep 2017 11:44:47 GMT):
@uber.twin could you raise a github issue providing as much detail as possible, I don't think we want to be emitting events for failed transactions. We use the underlying fabric for event emission so would need to confirm the expected fabric behaviour as well
krupabathia (Wed, 13 Sep 2017 11:49:54 GMT):
@Sneha Works! Thanks!
nasht00 (Wed, 13 Sep 2017 11:53:14 GMT):
Hi,
In the *.cto, do all "participants" extend some global Participant class by default?
Meaning, in my permission rules, can I rely on some global abstract participant for rules that apply to ALL participants?
krupabathia (Wed, 13 Sep 2017 12:18:01 GMT):
Anyone getting this error
*Error: Error trying deploy. Error: Error trying install chaincode. Error: Connect Failed*
while trying to deploy the .bna file on the network using the following command
_composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s fadsfadss_
nasht00 (Wed, 13 Sep 2017 12:33:42 GMT):
Can I have more than 1 logic file? Can they reference each other (for example a common.js file with constants)?
dlubom (Wed, 13 Sep 2017 12:42:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=t79izWQrvi8sAFW2F) have the same question, @torresjeff did You get response for that?
dlubom (Wed, 13 Sep 2017 12:44:17 GMT):
`When using composer REST server with authentication, is it necessary to have a default identity for a wallet? What if I want users to access only what they have permission to access or if I want to keep sessions? Would I have to send the `id` of the identity in every request in a special header or something like that?
I was reading the docs on authentication with composer rest server here: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
and they set `alice1` as the default identity for the default wallet
what if i have a multi-user app? how can I make every user use their own identity instead of the default `alice1`?`
JeremyH (Wed, 13 Sep 2017 12:45:06 GMT):
Hi, has anyone run into a 404 error when accessing URL:3000/auth/github using the github passport? I'm running Composer 0.12.1
JeremyH (Wed, 13 Sep 2017 12:47:03 GMT):
@dlubom @torresjeff I have used authentication using three separate github accounts, each gets its own wallet. After setting an identity as the default for each wallet separately, I have found that it remains the default even after logging out and back in, switching browser sessions, etc. Hope that helps?
dlubom (Wed, 13 Sep 2017 12:54:01 GMT):
Thanks, but still its not clear, its should be clear written in documentation
uber.twin (Wed, 13 Sep 2017 13:19:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yR9Lq4o3xrTbZmqi3) @davidkel I've tried to describe it in here https://stackoverflow.com/questions/46198380/hyperledger-composer-events-are-emitted-even-when-the-current-transaction-fails
jaguarg (Wed, 13 Sep 2017 13:31:23 GMT):
Hello, I have produced a proof of concept with composer and it works brilliantly . Now I would like add more physical nodes in the network. How can I achieve that ? Is there a way to configure nodes with composer ?
a.ochs (Wed, 13 Sep 2017 14:07:07 GMT):
*Is there a tutorial or article about: "Use working Go chaincode and build the same with a Composer bna" ?*
ScottMorris (Wed, 13 Sep 2017 14:30:21 GMT):
apparently one can use JS functions as the ACL rule conditions, and the JS functions can be anywhere in the project, however, for me, they seem to be failing to work properly. Are there any examples of this style of use anywhere? I figure I should be able to pass in the parameters from the condition property to the rules, but maybe not?
biksen (Wed, 13 Sep 2017 15:09:51 GMT):
Any one came across composer chaincode error like : Error: The current identity must be activated (ACTIVATION_REQUIRED)?? The identity which I am using showing ISSUED in composer-playground. But once I am using System/ping through REST server, chaincode log throwing this error. I am not sure how to overcome this error. Appreciate! your help.
pfuntner (Wed, 13 Sep 2017 15:12:55 GMT):
is this a good place to a question about the developer tutorial: https://hyperledger.github.io/composer/tutorials/developer-guide.html
rthatcher (Wed, 13 Sep 2017 15:13:51 GMT):
@a.ochs - I have seen this blog which compares the 2 approaches:
https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/
rthatcher (Wed, 13 Sep 2017 15:14:53 GMT):
@pfuntner - yes - go ahead with a tutorial question
pfuntner (Wed, 13 Sep 2017 15:15:21 GMT):
in the section _Deploy to the running Hyperledger Fabric_ it says _Now it is time to deploy to a real blockchain! We are going to deploy the BNA (suffix .bna) file to Hyperledger Fabric v1.0; this blockchain environment was set up earlier in this guide._
pfuntner (Wed, 13 Sep 2017 15:15:53 GMT):
i don't know what fabric environment it's talking about. when it says _in this gude_, is it referring to that page?
biksen (Wed, 13 Sep 2017 15:25:16 GMT):
@pfuntner, Composer is a application development tool, not a Blockchain platform. Hyperledger Fabric is a Blockchain platform. So you have to setup Hyperledger Fabric (Blockchain platform) to deploy your Composer application. I hope this answered your question.
pfuntner (Wed, 13 Sep 2017 15:25:44 GMT):
i appreciate that but the instructions said that there were already steps to set up the network
pfuntner (Wed, 13 Sep 2017 15:26:15 GMT):
i think the instructions should point to a page that walks you through setting up the network
rthatcher (Wed, 13 Sep 2017 15:30:47 GMT):
@jaguarg - short answer is that you can't use Composer to add additional Peers to your underlying Fabric.
Longer answer is that Composer is a dev and runtime tool to connect to an existing Hyperledger Fabric, but we do provide a dev Fabric environment for prototyping, development and functional testing. The dev Fabric we provide is limited and not suitable for production - you will need to understand and create a Production Grade Fabric, and then connect Composer to it.
rthatcher (Wed, 13 Sep 2017 15:33:37 GMT):
@pfuntner - this doc is referred to in the Developer tutorial and the 'Step 2' is where you start the dev version of a Hyperledger Fabric:
https://hyperledger.github.io/composer/installing/development-tools.html
rthatcher (Wed, 13 Sep 2017 15:36:08 GMT):
@biksen - can you provide some more details of how you got to your error with ACTIVATION_REQUIRED - and what your setup/configuration is
uber.twin (Wed, 13 Sep 2017 15:44:09 GMT):
@rthatcher hi, I got this query which used to work and it seems it doesn't anymore, not sure what is the reason
```
query selectAllTranTrackers {
description: "retrieves HistorianRecord entries"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord FROM HistorianRegistry
}
```
the response is:
```
{
"access-control-allow-credentials": "true",
"content-length": "2",
"content-type": "application/json; charset=utf-8",
"date": "Wed, 13 Sep 2017 14:37:43 GMT",
"etag": "W/\"2-l9Fw4VUO7kr8CvBlt4zaMCqXZ0w\"",
"vary": "Origin",
"x-content-type-options": "nosniff",
"x-download-options": "noopen",
"x-frame-options": "DENY",
"x-xss-protection": "1; mode=block"
}
```
and this is the peer log
```
2017-09-13T15:35:35.716601162Z [36m2017-09-13 15:35:31.849 UTC [Composer] Debug -> DEBU 8885[0m @JS : Engine :invoke() Calling engine function executeQuery
2017-09-13T15:35:35.716603681Z [36m2017-09-13 15:35:31.849 UTC [Composer] Debug -> DEBU 8886[0m @JS : EngineQueries :executeQuery() > [object Object], named,selectAllTranTrackers,{}
2017-09-13T15:35:35.716606299Z [36m2017-09-13 15:35:31.849 UTC [Composer] Debug -> DEBU 8887[0m @JS : EngineQueries :executeQuery() queryType named
2017-09-13T15:35:35.716608773Z [36m2017-09-13 15:35:31.849 UTC [Composer] Debug -> DEBU 8888[0m Entering Context.getDataService &{0xc42156eb60}
2017-09-13T15:35:35.716611209Z [36m2017-09-13 15:35:31.849 UTC [Composer] Debug -> DEBU 8889[0m Exiting Context.getDataService 1
2017-09-13T15:35:35.716613622Z [36m2017-09-13 15:35:31.850 UTC [Composer] Debug -> DEBU 888a[0m @JS : CompiledQueryBundle :execute() > [object Object], selectAllTranTrackers, [object Object]
2017-09-13T15:35:35.716616212Z [36m2017-09-13 15:35:31.850 UTC [Composer] Debug -> DEBU 888b[0m @JS : CompiledQueryBundle :execute() Found query by name lookup
2017-09-13T15:35:35.716618745Z [36m2017-09-13 15:35:31.850 UTC [Composer] Debug -> DEBU 888c[0m @JS : CompiledQueryBundle :executeInternal() > [object Object], [object Object], [object Object]
2017-09-13T15:35:35.716621362Z [36m2017-09-13 15:35:31.850 UTC [Composer] Debug -> DEBU 888d[0m Entering DataService.executeQuery &{0xc42156eb60}
2017-09-13T15:35:35.716623819Z [36m2017-09-13 15:35:31.850 UTC [Composer] Debug -> DEBU 888e[0m CouchDB query string {"selector":{"$class":"org.hyperledger.composer.system.HistorianRecord","$registryType":"Asset","$registryId":"HistorianRegistry"}}
2017-09-13T15:35:35.716627372Z [36m2017-09-13 15:35:31.868 UTC [Composer] Debug -> DEBU 888f[0m Got an iterator &{0xc4217bbdd0}
2017-09-13T15:35:35.716629817Z [36m2017-09-13 15:35:31.869 UTC [Composer] Debug -> DEBU 8890[0m Exiting DataService.executeQuery 0
```
uber.twin (Wed, 13 Sep 2017 15:44:09 GMT):
@rthatcher hi, I got this query which used to work and it seems it doesn't anymore, not sure what is the reason
```
query selectAllTranTrackers {
description: "retrieves HistorianRecord entries"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord FROM HistorianRegistry
}
```
the response is:
```
{
"access-control-allow-credentials": "true",
"content-length": "2",
"content-type": "application/json; charset=utf-8",
"date": "Wed, 13 Sep 2017 14:37:43 GMT",
"etag": "W/\"2-l9Fw4VUO7kr8CvBlt4zaMCqXZ0w\"",
"vary": "Origin",
"x-content-type-options": "nosniff",
"x-download-options": "noopen",
"x-frame-options": "DENY",
"x-xss-protection": "1; mode=block"
}
```
and this is the dev peer log
```
2017-09-13T15:35:35.716601162Z [36m2017-09-13 15:35:31.849 UTC [Composer] Debug -> DEBU 8885[0m @JS : Engine :invoke() Calling engine function executeQuery
2017-09-13T15:35:35.716603681Z [36m2017-09-13 15:35:31.849 UTC [Composer] Debug -> DEBU 8886[0m @JS : EngineQueries :executeQuery() > [object Object], named,selectAllTranTrackers,{}
2017-09-13T15:35:35.716606299Z [36m2017-09-13 15:35:31.849 UTC [Composer] Debug -> DEBU 8887[0m @JS : EngineQueries :executeQuery() queryType named
2017-09-13T15:35:35.716608773Z [36m2017-09-13 15:35:31.849 UTC [Composer] Debug -> DEBU 8888[0m Entering Context.getDataService &{0xc42156eb60}
2017-09-13T15:35:35.716611209Z [36m2017-09-13 15:35:31.849 UTC [Composer] Debug -> DEBU 8889[0m Exiting Context.getDataService 1
2017-09-13T15:35:35.716613622Z [36m2017-09-13 15:35:31.850 UTC [Composer] Debug -> DEBU 888a[0m @JS : CompiledQueryBundle :execute() > [object Object], selectAllTranTrackers, [object Object]
2017-09-13T15:35:35.716616212Z [36m2017-09-13 15:35:31.850 UTC [Composer] Debug -> DEBU 888b[0m @JS : CompiledQueryBundle :execute() Found query by name lookup
2017-09-13T15:35:35.716618745Z [36m2017-09-13 15:35:31.850 UTC [Composer] Debug -> DEBU 888c[0m @JS : CompiledQueryBundle :executeInternal() > [object Object], [object Object], [object Object]
2017-09-13T15:35:35.716621362Z [36m2017-09-13 15:35:31.850 UTC [Composer] Debug -> DEBU 888d[0m Entering DataService.executeQuery &{0xc42156eb60}
2017-09-13T15:35:35.716623819Z [36m2017-09-13 15:35:31.850 UTC [Composer] Debug -> DEBU 888e[0m CouchDB query string {"selector":{"$class":"org.hyperledger.composer.system.HistorianRecord","$registryType":"Asset","$registryId":"HistorianRegistry"}}
2017-09-13T15:35:35.716627372Z [36m2017-09-13 15:35:31.868 UTC [Composer] Debug -> DEBU 888f[0m Got an iterator &{0xc4217bbdd0}
2017-09-13T15:35:35.716629817Z [36m2017-09-13 15:35:31.869 UTC [Composer] Debug -> DEBU 8890[0m Exiting DataService.executeQuery 0
```
rthatcher (Wed, 13 Sep 2017 15:51:18 GMT):
@uber.twin - my initial reaction is to see DENY in the response and ask what ACLs you have in place? Perhaps they are denying access ?
uber.twin (Wed, 13 Sep 2017 15:59:21 GMT):
@rthatcher I removed all ACLs
uber.twin (Wed, 13 Sep 2017 16:00:13 GMT):
"x-frame-options" seems to be a standard directive for the http client
biksen (Wed, 13 Sep 2017 16:01:00 GMT):
@rthatcher I am getting ACTIVATION_REQUIRED error in my Composer chaincode log. I have used Composer CLI to add participant and issued identity. Then I directly coming to REST server and adding the identity to my default wallet and set the identity as my default identity. I am not using CLI after I issued identity to participant. I hope at the time when a participant submits a transaction using an enrollment certificate, the Composer chaincode extracts the enrollment ID from the enrollment certificate, and uses it to look up the participant instance that the identity was issued to. But identity is showing ISSUED not ACTIVE.
rthatcher (Wed, 13 Sep 2017 16:37:10 GMT):
@biksen - I have just done some testing ...
I'm using Composer v0.12.1
I issued these 3 commands for the CLI:
composer participant add -p hlfv1 -n basic-sample-network -i admin -s adminpw -d '{"$class":"org.acme.sample.SampleParticipant","participantId": "CP1","firstName":"C","lastName":"P"}'
composer identity issue -p hlfv1 -n basic-sample-network -i admin -s adminpw -u carol -a resource:org.acme.sample.SampleParticipant#CP1 -x FALSE
composer-rest-server -p hlfv1 -n basic-sample-network -i admin -s adminpw -N never -w true -a true -m true -t
and then I followed the exact instructions in this doc: https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
are you doing the same as me ?
rthatcher (Wed, 13 Sep 2017 16:39:18 GMT):
@uber.twin - I assume that you removed specifically targeted ACLs but retained wildcard ACLs for your namespace *and* for system?
How are you invoking the Query?
pfuntner (Wed, 13 Sep 2017 16:45:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tPhb5jYCHNG5EYC2X) @rthatcher Thanks, that got me working!
uber.twin (Wed, 13 Sep 2017 17:31:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vtFC5RMNwHC7YhLfq) @rthatcher I have removed the permissions.acl completely. Could you confirm that this query is returning non empty result for composer v0.12.0?
uber.twin (Wed, 13 Sep 2017 17:31:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vtFC5RMNwHC7YhLfq) @rthatcher I have removed the permissions.acl completely. Could you confirm that this query is returning non empty result for composer v0.12.0? I am initiating the query through the REST GUI
uber.twin (Wed, 13 Sep 2017 17:31:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vtFC5RMNwHC7YhLfq) @rthatcher I have removed the permissions.acl completely. Could you confirm that this query is returning non empty result for composer v0.12.0? I am initiating the query through the REST server GUI
ScottMorris (Wed, 13 Sep 2017 17:38:50 GMT):
anyone have any examples of using an external file for the ACL predicates (conditions)?
ScottMorris (Wed, 13 Sep 2017 17:38:50 GMT):
anyone have any examples/experience of using an external file for the ACL predicates (conditions)?
Raje (Wed, 13 Sep 2017 17:39:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jnFizDpkrQMDijASM) @srikanthanthargam you have to use PeerAdmin instead of admin
biksen (Wed, 13 Sep 2017 18:22:40 GMT):
@rthatcher I was using the command
biksen (Wed, 13 Sep 2017 18:22:45 GMT):
composer participant add -p hlfv1 -n basic-sample-network -i admin -s adminpw -d '{"$class":"org.acme.sample.SampleParticipant","participantId": "CP1","firstName":"C","lastName":"P"}'
biksen (Wed, 13 Sep 2017 18:23:02 GMT):
but was getting Authorization Failure
biksen (Wed, 13 Sep 2017 18:24:19 GMT):
So, I created another admin user in Fabric CA using Fabric CA client e.g admin11 and using the same command as your but with user admin11
biksen (Wed, 13 Sep 2017 18:25:36 GMT):
After I followed the same instructions as provided in the link with MongoDB as storage for REST server.
gauthampamu (Wed, 13 Sep 2017 18:30:17 GMT):
What is the correct format to provide the cert in the connection profile. I am getting the PEM encoded certificate is required error.
gauthampamu (Wed, 13 Sep 2017 18:30:41 GMT):
I have tried various combinations \n new line characters, it is not working
pxuereb (Wed, 13 Sep 2017 22:20:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Eg7pF336DJhyD2puX) @davidkel Thanks, will give this a try
RodrigoCastilla (Thu, 14 Sep 2017 01:32:11 GMT):
Has joined the channel.
RodrigoCastilla (Thu, 14 Sep 2017 01:44:10 GMT):
Why in the examples of the documents (https://hyperledger.github.io/composer/business-network/bnd-create.html and https://www.npmjs.com/package/generator-hyperledger-composer)
When execute the command *$yo hyperledger-composer*, at least in the examples this returned the next "outcome":
Welcome to the Hyperledger Composer Skeleton Application Generator
But, when I execute the command *$yo hyperledger-composer* I get as result *Welcome to the Hyperledger Composer project generator*
Why this is happening ?
Tanks, for your help :)
ilfrich (Thu, 14 Sep 2017 02:18:51 GMT):
Not entirely sure where your problem is @RodrigoCastilla
GirijaShankarMishra (Thu, 14 Sep 2017 05:21:33 GMT):
Hello,
I have deployed my business network on bluemix, till this all things are working properly so now i have done it till Step 3:Develop Your Business Network. When i started Step 4: Start and Access the Composer REST Server by executing this command- cd cs-offerings/free/scripts/
./create/create_composer-rest-server.sh then in console i got this message 'Composer rest server created successfully', but when i am trying to access this URL http://YOUR_PUBLIC_IP_HERE:31090/explorer then i am not able to connect with it. Message shown over on browser is 'refused to connect.'
dlubom (Thu, 14 Sep 2017 07:12:05 GMT):
Hellom, I was reading the docs on authentication with composer rest server here: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
and they set `alice1` as the default identity for the default wallet
what if i have a multi-user app? how can I make every user use their own identity instead of the default `alice1`? For example `bob1`.
dlubom (Thu, 14 Sep 2017 07:12:05 GMT):
Hello, I was reading the docs on authentication with composer rest server here: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
and they set `alice1` as the default identity for the default wallet
what if i have a multi-user app? how can I make every user use their own identity instead of the default `alice1`? For example `bob1`.
dlubom (Thu, 14 Sep 2017 07:12:05 GMT):
Hello, I was reading the docs on authentication with composer rest server here: and https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
and they set `alice1` as the default identity for the default wallet
what if i have a multi-user app? how can I make every user use their own identity instead of the default `alice1`? For example `bob1`.
dlubom (Thu, 14 Sep 2017 07:12:05 GMT):
Hello, I was reading the docs on authentication with composer rest server here: https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
and they set `alice1` as the default identity for the default wallet
what if i have a multi-user app? how can I make every user use their own identity instead of the default `alice1`? For example `bob1`.
mna2017 (Thu, 14 Sep 2017 07:52:04 GMT):
Hi Team, How to use connection profile (connection.json) to talk to a deployed composer network? Any links to examples or tutorials will be a great help.
lucrezia.dm (Thu, 14 Sep 2017 08:13:30 GMT):
hi team, I'm editing "perishable goods network" . My goal is to realize a "organs and tissue transport" : by measuring the temperature during the transport, an hospital understand if the item is safe.
I did some changes. Now, my last problems are two:
-accoutBalance becomes a satisfaction variable (0-100%) and, therefore, must be reset to each transaction
-unitCount becomes a number (including between 1 and 10) associated with the type chosen in the shipment (example: if the type is bananas its value is 5)
lucrezia.dm (Thu, 14 Sep 2017 08:13:30 GMT):
hi team, I'm editing "perishable goods network" . My goal is to realize a "organs and tissue transport" : by measuring the temperature during the transport, an hospital understand if the item is safe.
I did some changes. Now, my last problems are two:
-accoutBalance becomes a satisfaction variable (0-100%) and, therefore, must be reset to each transaction
-unitCount becomes a number (including between 1 and 10) associated with the type chosen in the shipment (example: if the type is bananas its value is 5)
How I can do it?
lucrezia.dm (Thu, 14 Sep 2017 08:16:07 GMT):
Message Attachments
caroline-church (Thu, 14 Sep 2017 08:26:32 GMT):
Hi @mna2017 what exactly do you want to be able to do?
jaguarg (Thu, 14 Sep 2017 08:34:27 GMT):
thank you @rthatcher , can someone point us to a getting started for a production network deployment ? I have a set of servers and I would like to create a network across those .
snehalpansare (Thu, 14 Sep 2017 09:14:49 GMT):
Has joined the channel.
mna2017 (Thu, 14 Sep 2017 09:25:03 GMT):
@caroline-church 1Thanks for the reply. ) I have created a composer business network(.bna file) on composer running on top of an IBM container service. I now want a nodeJS application to talk to the chaincode that composer is running. I am able to test the business network and is working fine on the composer playground UI. I have the connection profile(connection.json) file with details like peer and orderer URL etc. 2) I have a blockchain service running on IBM cloud(verson 1.0). Here also I have deployed the composer network successfully. Now, I want to be able to use the connection profile to connect a nodeJS application to the blockchain running on ibm cloud.
mna2017 (Thu, 14 Sep 2017 09:26:43 GMT):
@caroline-church I need example nodejS code and/or steps to follow in order to achieve a connection for point 1 and 2 above.
caroline-church (Thu, 14 Sep 2017 09:34:30 GMT):
@mna2017 ok let me find some example code for you
munireddya (Thu, 14 Sep 2017 09:37:20 GMT):
munireddy@muniubuntu:~/my-network/dist$ composer network deploy -a my-network.bna -p hlfv1 -i admin -s adminpw
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.1.6
Description: My Commodity Trading network
Error: Failed to load connection profile hlfv1. Error was Error: ENOENT: no such file or directory, open '/home/munireddy/.composer-connection-profiles/hlfv1/connection.json'
Command failed
munireddya (Thu, 14 Sep 2017 09:37:44 GMT):
@caroline-church could you help me in this please
caroline-church (Thu, 14 Sep 2017 09:41:29 GMT):
@mna2017 if you have a look at this link https://hyperledger.github.io/composer/tutorials/developer-guide.html there is a section called Writing Unit Tests this will show you how to connect to the business network
caroline-church (Thu, 14 Sep 2017 09:42:01 GMT):
@munireddya have you created the connection profile hlfv1
mna2017 (Thu, 14 Sep 2017 09:43:17 GMT):
@caroline-church Thanks for the link. I will follow the steps given on this page.
munireddya (Thu, 14 Sep 2017 09:43:44 GMT):
i followed all the steps to composer solution
mna2017 (Thu, 14 Sep 2017 09:44:46 GMT):
@munireddya I am not an expert. But I think you need to create a directory named "/home/munireddy/.composer-connection-profiles/hlfv1" before running the deploy command of composer.
mna2017 (Thu, 14 Sep 2017 09:45:21 GMT):
@munireddya And after creating the directory, place your connection.json inside this directory.
munireddya (Thu, 14 Sep 2017 09:45:59 GMT):
@mna2017 where can i find this connection.json...do i need to create it?
caroline-church (Thu, 14 Sep 2017 09:47:05 GMT):
@munireddya yes you need to create it
caroline-church (Thu, 14 Sep 2017 09:47:24 GMT):
are you following one of the tutorials?
munireddya (Thu, 14 Sep 2017 09:47:43 GMT):
Developer Tutorial for creating a Hyperledger Composer solution
munireddya (Thu, 14 Sep 2017 09:48:26 GMT):
i did't see anything about connection.json
caroline-church (Thu, 14 Sep 2017 09:49:21 GMT):
@munireddya have you followed this tutorial first to setup your fabric https://hyperledger.github.io/composer/installing/development-tools.html
munireddya (Thu, 14 Sep 2017 09:49:59 GMT):
i skipped Step 2: Starting Hyperledger Fabric
munireddya (Thu, 14 Sep 2017 09:50:11 GMT):
is it required..?
munireddya (Thu, 14 Sep 2017 09:51:24 GMT):
i skipped "2: Starting Hyperledger Fabric "
caroline-church (Thu, 14 Sep 2017 09:52:02 GMT):
you should follow all the steps in the tutorial
munireddya (Thu, 14 Sep 2017 09:52:16 GMT):
ok
munireddya (Thu, 14 Sep 2017 09:52:21 GMT):
let me do then
munireddya (Thu, 14 Sep 2017 10:05:41 GMT):
@caroline-church munireddy@muniubuntu:~/my-network/dist$ composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.1.6
Description: My Commodity Trading network
✖ Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying install chaincode. Error: Connect Failed
Command failed
munireddy@muniubuntu:~/my-network/dist$
caroline-church (Thu, 14 Sep 2017 10:11:29 GMT):
@munireddya can you try `composer network ping -p hlfv1 -i PeerAdmin -s randomString
caroline-church (Thu, 14 Sep 2017 10:11:29 GMT):
@munireddya can you try `composer network ping -p hlfv1 -i PeerAdmin -s randomString`
caroline-church (Thu, 14 Sep 2017 10:11:55 GMT):
actually nm that won't work
caroline-church (Thu, 14 Sep 2017 10:13:28 GMT):
what environment are you running in? i.e. is it a virtual machine?
munireddya (Thu, 14 Sep 2017 10:14:17 GMT):
vm
munireddya (Thu, 14 Sep 2017 10:14:23 GMT):
yes
munireddya (Thu, 14 Sep 2017 10:15:22 GMT):
in vm it won't work?
munireddya (Thu, 14 Sep 2017 10:17:15 GMT):
@caroline-church ...i am using vm...will it work?
caroline-church (Thu, 14 Sep 2017 10:18:05 GMT):
is it an externally provisioned vm?
munireddya (Thu, 14 Sep 2017 10:19:17 GMT):
YEs..Oracle virtual machine
caroline-church (Thu, 14 Sep 2017 10:25:43 GMT):
ok we have seen problems where the firewall doesn't like localhost so you need to edit the connection profile and change localhost to the actual ip address of the machine
dlubom (Thu, 14 Sep 2017 10:28:12 GMT):
I was reading the docs on authentication with composer rest server here: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html and https://hyperledger.github.io/composer/integrating/enabling-multiuser.html and they set alice1 as the default identity for the default wallet what if i have a multi-user app? how can I make every user use their own identity instead of the default alice1? For example bob1.
pxuereb (Thu, 14 Sep 2017 10:36:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HvEgppSjSjsv3vZ8f) @caroline-church i am experiencing an issue when using locahost in my connection profile. Should i change it to 127.0.0.1 or the mapped IP of the docker container? (ie: run docker inspect and use the IPAddress value)
munireddya (Thu, 14 Sep 2017 10:51:03 GMT):
@pxuereb in which file you are going to change localhost - ip address?
munireddya (Thu, 14 Sep 2017 10:51:45 GMT):
or where can i find connection profile..?
munireddya (Thu, 14 Sep 2017 10:52:49 GMT):
@caroline-church where can i find connection profile..?
munireddya (Thu, 14 Sep 2017 10:59:23 GMT):
any help plz...
pxuereb (Thu, 14 Sep 2017 11:03:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5TGdSC2h9GavAFGQS) @munireddya the connections.json file, which is created by a script createComposerProfile.sh
caroline-church (Thu, 14 Sep 2017 11:04:26 GMT):
@munireddya it will be in `/home/munireddy/.composer-connection-profiles/hlfv1`
munireddya (Thu, 14 Sep 2017 11:08:21 GMT):
i couldn't see such directory...tell me the file name so that i can search...connection.json?
munireddya (Thu, 14 Sep 2017 11:08:21 GMT):
i couldn't see such directory...tell me the file name so that i can search...connection.json?
davidkel (Thu, 14 Sep 2017 11:11:42 GMT):
@munireddya if you do an `ls -al ~/.composer-connection-profiles` what does it output ?
munireddya (Thu, 14 Sep 2017 11:13:29 GMT):
@davidkel munireddy@muniubuntu:~$ ls -al ~/.composer-connection-profiles
total 12
drwxrwxr-x 3 munireddy munireddy 4096 Sep 14 15:30 .
drwxr-xr-x 29 munireddy munireddy 4096 Sep 14 15:30 ..
drwxrwxr-x 2 munireddy munireddy 4096 Sep 14 15:30 hlfv1
davidkel (Thu, 14 Sep 2017 11:14:14 GMT):
@munireddya ok, so the hlfv1 directory is there, in that directory should be the file connection.json that you need to edit
munireddya (Thu, 14 Sep 2017 11:16:55 GMT):
@davidkel
munireddya (Thu, 14 Sep 2017 11:16:58 GMT):
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://localhost:7050" }
],
"ca": { "url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "${HOME}/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
munireddya (Thu, 14 Sep 2017 11:17:22 GMT):
@davidkel is this file you are talking about?
munireddya (Thu, 14 Sep 2017 11:18:20 GMT):
createComposerProfile.sh file it is....
pxuereb (Thu, 14 Sep 2017 11:19:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tdgWWQ5ymihp2vubm) @munireddya the createComposerProfile.sh script will create the connections.json file for you, you can either edit it directly or edit the script and run it to regenerate connections.json
munireddya (Thu, 14 Sep 2017 11:19:47 GMT):
ok
pxuereb (Thu, 14 Sep 2017 11:20:22 GMT):
@davidkel should the connections profile be using the container names of the peers / orderer etc or is localhost ok?
pxuereb (Thu, 14 Sep 2017 11:20:49 GMT):
i'm having issues with using localhost with TLS enabled, as the certificate isn't valid for localhost
munireddya (Thu, 14 Sep 2017 11:24:10 GMT):
munireddy@muniubuntu:~$ ifconfig
docker0 Link encap:Ethernet HWaddr 02:42:12:00:09:37
inet addr:172.17.0.1 Bcast:0.0.0.0 Mask:255.255.0.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
enp0s3 Link encap:Ethernet HWaddr 08:00:27:13:fe:ed
inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0
inet6 addr: fe80::3a3e:a32b:6c6a:9ddd/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:580677 errors:0 dropped:0 overruns:0 frame:0
TX packets:142145 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:638485125 (638.4 MB) TX bytes:10837366 (10.8 MB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:10370 errors:0 dropped:0 overruns:0 frame:0
TX packets:10370 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2071484 (2.0 MB) TX bytes:2071484 (2.0 MB)
munireddya (Thu, 14 Sep 2017 11:24:56 GMT):
as i am using Oracle VM Virtualbox...which ip i need to use for connection.json
munireddya (Thu, 14 Sep 2017 11:25:32 GMT):
@pxuereb
davidkel (Thu, 14 Sep 2017 11:34:59 GMT):
@munireddya ahh, so not an externally provisioned vm then. You are running virtual box on your machine I guess. Can you do `docker ps` to see if your hyperledger fabric network is running
munireddya (Thu, 14 Sep 2017 11:37:11 GMT):
ok
munireddya (Thu, 14 Sep 2017 11:38:03 GMT):
munireddy@muniubuntu:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
davidkel (Thu, 14 Sep 2017 11:39:13 GMT):
@pxuereb there is an option for certs to allow you to override the hostname.,eg for a peer
```
{
requestURL: 'grpcs://localhost:7051',
eventURL: 'grpcs://localhost:7053',
hostnameOverride: 'peer0.org1.example.com',
cert: '
davidkel (Thu, 14 Sep 2017 11:39:13 GMT):
@pxuereb there is an option for certs to allow you to override the hostname.,eg for a peer
```
{
requestURL: 'grpcs://localhost:7051',
eventURL: 'grpcs://localhost:7053',
hostnameOverride: 'peer0.org1.example.com',
cert: '
davidkel (Thu, 14 Sep 2017 11:40:38 GMT):
@munireddya your hyperledger fabric network isn't running, did you run `startFabric.sh` ?
munireddya (Thu, 14 Sep 2017 11:43:49 GMT):
@davidkel munireddy@muniubuntu:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5f3a04a9f817 hyperledger/fabric-peer:x86_64-1.0.1 "peer node start -..." About a minute ago Up About a minute 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
9fcac2a5879b hyperledger/fabric-couchdb:x86_64-1.0.1 "tini -- /docker-e..." About a minute ago Up About a minute 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
e1b584ca96f7 hyperledger/fabric-ca:x86_64-1.0.1 "sh -c 'fabric-ca-..." About a minute ago Up About a minute 0.0.0.0:7054->7054/tcp ca.org1.example.com
404486b5945d hyperledger/fabric-orderer:x86_64-1.0.1 "orderer" About a minute ago Up About a minute 0.0.0.0:7050->7050/tcp orderer.example.com
munireddya (Thu, 14 Sep 2017 11:59:45 GMT):
Thank you guys...deployed successfully...
dlubom (Thu, 14 Sep 2017 12:21:45 GMT):
hello, please help me with this: I was reading the docs on authentication with composer rest server here: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html and https://hyperledger.github.io/composer/integrating/enabling-multiuser.html and they set alice1 as the default identity for the default wallet what if i have a multi-user app? how can I make every user use their own identity instead of the default alice1? For example bob1
sstone1 (Thu, 14 Sep 2017 12:24:40 GMT):
@here Woop woop! #Hyperledger #Composer v0.12.2 is here, with some great enhancements to ID cards! 🎉
You can now create ID cards from scratch in the Composer Playground using existing certificates. You can also define certificate roles, which is required to connect and deploy to existing Fabric instances.
https://github.com/hyperledger/composer/releases/tag/v0.12.2
mna2017 (Thu, 14 Sep 2017 12:36:25 GMT):
Team, I have the composer-rest-server running now. I have noticed that the rest server endpoints reside at "http://localhost:3000/api". Now, How would an external application(like a nodeJS application running on a different computer) access the REST enpoints that the composer rest server has just created?
mna2017 (Thu, 14 Sep 2017 12:39:19 GMT):
My computer cannot run 24/7 and has dynamic IP address so external will not like the idea of accessing REST endpoints going through my computer.
uber.twin (Thu, 14 Sep 2017 12:39:36 GMT):
@sstone1 hi, could you please confirm that the following query is working for composer v0.12.0 and up? Not sure what is the reason why it returns empty result.
```
query selectAllTranTrackers {
description: "retrieves HistorianRecord entries"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord FROM HistorianRegistry
}
```
davidkel (Thu, 14 Sep 2017 12:42:08 GMT):
@uber.twin you should drop the `FROM` from the statement
davidkel (Thu, 14 Sep 2017 12:42:31 GMT):
ie
```
query selectAllTranTrackers {
description: "retrieves HistorianRecord entries"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
}
```
uber.twin (Thu, 14 Sep 2017 12:57:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bWaM7t5ZjFN9zhjxq) @davidkel thank you, that did it. but it used to be fine for versions prior to v0.12.0, isn't it?
davidkel (Thu, 14 Sep 2017 12:58:02 GMT):
@uber.twin it was changed in the 0.12.0 release
uber.twin (Thu, 14 Sep 2017 13:05:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RPLjokriB3TXZKRba) @davidkel thank you for confirming it
mna2017 (Thu, 14 Sep 2017 13:09:41 GMT):
@davidkel Could you look at my question please. How would external application talk to the rest interface created by composer-rest-server? the rest interface runs at localhost:3000/api?
davidkel (Thu, 14 Sep 2017 13:36:27 GMT):
@mna2017 depending on what you want to achieve I would assume you would use a REST library of some description to help you make rest api calls to the rest server, or you might want to generate a client using a generator that can be driven from the swagger document which can be found at http://localhost:3000/explorer/swagger.json
rthatcher (Thu, 14 Sep 2017 13:38:15 GMT):
fyi @here - the Community call today (Thurs) will be at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming : Wiki meeting page -> https://github.com/hyperledger/composer/wiki/Meeting-31st-August-2017
dlubom (Thu, 14 Sep 2017 13:39:54 GMT):
please help me with this: I was reading the docs on authentication with composer rest server here: https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html and https://hyperledger.github.io/composer/integrating/enabling-multiuser.html and they set alice1 as the default identity for the default wallet what if i have a multi-user app? how can I make every user use their own identity instead of the default alice1? For example bob1
uber.twin (Thu, 14 Sep 2017 14:07:31 GMT):
@davidkel It seems that when submitting asynchronous transactions through a node sdk client application, they will not be completed if the application exists before promises are resolved in the background.
Is there a way to know that a Node application has no pending promises, without explicitly keeping track of them?
UDeshmukh (Thu, 14 Sep 2017 14:16:11 GMT):
Hi @dselman Reference to your response to my Stackoverflow question: https://stackoverflow.com/questions/46185606/would-like-to-upload-json-format-datafile-into-hyperledger-composer-asset-regist
Would following be correct formatting of data in .json file?
[
{
"$class": "net.digitalHealth.Network.Patient",
"PersonID": "Patient-011",
"Role": "Patient",
"Title": "Mr",
"Firstname": "John",
"Lastname": "Doe",
"DoB": "1-Jan-50",
"SSN": 999888111,
"Balance": 100000
},
{
"$class": "net.digitalHealth.Network.Patient",
"PersonID": "Patient-012",
"Role": "Patient",
"Title": "Mr",
"Firstname": "Donny",
"Lastname": "Trumpf",
"DoB": "1-Mar-45",
"SSN": 999888112,
"Balance": 150000
},
{
"$class": "net.digitalHealth.Network.Patient",
"PersonID": "Patient-013",
"Role
rthatcher (Thu, 14 Sep 2017 14:21:44 GMT):
@dlubom - when you are running in Multi user mode each user will login/authenticate for example with GitHub ID (or other passport enabled strategy) - each user will then have a separate Wallet.
My guess is that you are testing with a single GitHub ID .
ScottMorris (Thu, 14 Sep 2017 14:31:29 GMT):
After digging through the Composer code, and trying to figure out how the ACLs are parsed (using a peg parser it looks like) and how the JS files are handled (they must be in a folder called _lib_ to to loaded into the `ScriptManager`) I still can't figure out why my conditions that are written in a separate JS file (in _lib_) don't work. The tests for the ACLs are calling external functions that are loaded by the `ScriptManager` so it looks like everything is in order. Anyone have any ideas why they may not be working?
caroline-church (Thu, 14 Sep 2017 14:35:43 GMT):
https://twitter.com/CazChurchUk/status/908338246417088512
caroline-church (Thu, 14 Sep 2017 14:35:43 GMT):
New version of the composer node-red nodes https://www.npmjs.com/package/node-red-contrib-composer
NikhilNanjappa (Thu, 14 Sep 2017 15:03:22 GMT):
can someone please confirm, if the REST authentication related "/logout" is being looked into ?
NikhilNanjappa (Thu, 14 Sep 2017 15:03:22 GMT):
can someone please confirm, if the REST authentication related "/logout" issue is being looked into ?
NikhilNanjappa (Thu, 14 Sep 2017 15:03:22 GMT):
can someone please confirm, if the REST authentication related "/logout" bug is being looked into ?
NikhilNanjappa (Thu, 14 Sep 2017 15:03:27 GMT):
https://github.com/hyperledger/composer/issues/2095
dselman (Thu, 14 Sep 2017 15:05:25 GMT):
@ScottMorris can you DM me your project? I'll take a quick look...
TomaszRozmus (Thu, 14 Sep 2017 15:05:32 GMT):
Has joined the channel.
ScottMorris (Thu, 14 Sep 2017 15:08:26 GMT):
@dselman are the rules respected in the order they are written? ie. more specific rules should be above the more general rules?
dselman (Thu, 14 Sep 2017 15:09:13 GMT):
yes - they are evaluated from top to bottom. As soon as the condition of a rule matches, it it fired and evaluation stops.
dselman (Thu, 14 Sep 2017 15:09:31 GMT):
If no rules fire then access is denied
pfuntner (Thu, 14 Sep 2017 15:10:32 GMT):
I'm having trouble with the _Generate your Skeleton Web Application_ step at https://hyperledger.github.io/composer/tutorials/developer-guide.html
dselman (Thu, 14 Sep 2017 15:10:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HWeixjdhJz5HxWaYh) @UDeshmukh if you are POSTing to create a patient, you would submit each patient as a separate POST request.
pfuntner (Thu, 14 Sep 2017 15:10:58 GMT):
when i go to the 4200 port, just see `Invalid Host header`
pfuntner (Thu, 14 Sep 2017 15:11:27 GMT):
i opened this yesterday: https://stackoverflow.com/questions/46206023/invalid-host-header-starting-skeleton-web-application-for-hyperledger-develope
ScottMorris (Thu, 14 Sep 2017 15:11:35 GMT):
@dselman are the operations separated out from each other? so an all access Read above a restricted access update shouldn't effect each other.
UDeshmukh (Thu, 14 Sep 2017 15:12:43 GMT):
@dselman sure... but I want to read these records from a .json file... and so trying to figure out how to write that code
UDeshmukh (Thu, 14 Sep 2017 15:14:35 GMT):
Earlier I wrote a standard Javascript File handling code ... only to later find out from Simon that it's not supported in Composer. Can you pl. advise how I would handle a .json data file which contains these records (extracted form legacy Applications and formatted as json data) in my Composer code ?
dselman (Thu, 14 Sep 2017 15:17:23 GMT):
Are you writing a client-side bulk loader (to bootstrap you application), or trying to run this code from within a TP function itself?
dselman (Thu, 14 Sep 2017 15:18:21 GMT):
@ScottMorris yes
dselman (Thu, 14 Sep 2017 15:18:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qTQjknvkAQj2YkSDF) @pfuntner just replied on SO
UDeshmukh (Thu, 14 Sep 2017 15:19:19 GMT):
at this time... as part of my PoC development, I'm writing a separate TP in Composer .. as seen below
UDeshmukh (Thu, 14 Sep 2017 15:19:26 GMT):
Message Attachments
dselman (Thu, 14 Sep 2017 15:21:23 GMT):
Yeah, that's not going to work... Instead I think you should write a Node.js client application that takes a directory name as input, reads each JSON file, and then uses the Composer Serializer and BusinessNetworkClient APIs to create your resources in the network via API.
dselman (Thu, 14 Sep 2017 15:21:57 GMT):
Let me point you at some code that might be a useful starting point...
UDeshmukh (Thu, 14 Sep 2017 15:22:23 GMT):
Great... much appreciate that....:thumbsup:
dselman (Thu, 14 Sep 2017 15:23:34 GMT):
https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/test/CarAuction.js#L28
dselman (Thu, 14 Sep 2017 15:24:02 GMT):
This unit test for a sample network creates some assets, participants and submits some transactions using the Node.js API
dselman (Thu, 14 Sep 2017 15:24:51 GMT):
Instead of using factory.newResource to create your assets you will want to use getSerializer().fromJSON(obj) to convert a JS Object to a Composer Resource
dselman (Thu, 14 Sep 2017 15:25:25 GMT):
`businessNetworkConnection.getBusinessNetwork().getSerializer()`
Edama (Thu, 14 Sep 2017 15:26:06 GMT):
Has joined the channel.
TomaszRozmus (Thu, 14 Sep 2017 15:26:18 GMT):
Hi, writing node.js application, based on examples from https://hyperledger.github.io/composer/applications/node.html,
dselman (Thu, 14 Sep 2017 15:26:33 GMT):
You can just remove all the stuff to create a connection profile, and just reference your `hlfv1` profile so that the app runs against your local running Fabric
TomaszRozmus (Thu, 14 Sep 2017 15:26:38 GMT):
his.bizNetworkConnection.connect(this.connectionProfile, this.businessNetworkIdentifier, this.participantId, this.participantPwd)
.then((result) => {
this.businessNetworkDefinition = result;
});
this.bizNetworkConnection.getAssetRegistry('org.bctrade')
.then((registry) => {
return this.registry.getAll();
});
TomaszRozmus (Thu, 14 Sep 2017 15:27:18 GMT):
receiving SecurityException
TomaszRozmus (Thu, 14 Sep 2017 15:27:39 GMT):
bc/bctrade-network/node_modules/composer-common/lib/util.js:37
throw new SecurityException(Globalize.formatMessage('util-securitycheck-novalidcontext'));
^
SecurityException: A valid SecurityContext must be specified.
at Function.securityCheck (/Users/trozmus/bc/bctrade-network/node_modules/composer-common/lib/util.js:37:19)
at BusinessNetworkConnection.getAssetRegistry (/Users/trozmus/bc/bctrade-network/node_modules/composer-client/lib/businessnetworkconnection.js:137:14)
at Object.
TomaszRozmus (Thu, 14 Sep 2017 15:28:02 GMT):
any idea how to cope with that?
dselman (Thu, 14 Sep 2017 15:28:46 GMT):
Probably because your call to getAssetRegistry is not in the Promise chain, so it executes before the call to bizNetworkConnection.connect completes
dselman (Thu, 14 Sep 2017 15:28:54 GMT):
(read about Promises)... ;-)
ScottMorris (Thu, 14 Sep 2017 15:29:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YDkDxqbqoN7ggGGkm) Thanks @dselman, got the permissions working!
dselman (Thu, 14 Sep 2017 15:29:44 GMT):
woot!
pfuntner (Thu, 14 Sep 2017 15:29:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=cqkQyF9TAsHjZ76fp) @dselman Wow! That worked! Thanks!
dselman (Thu, 14 Sep 2017 15:30:16 GMT):
I'm on a roll!
dselman (Thu, 14 Sep 2017 15:32:13 GMT):
@TomaszRozmus you need some more `then` calls I think, to sequence the 2 async operations: connect and getAssetRegistry.getAll(). E.g. see https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/test/CarAuction.js#L235
ScottMorris (Thu, 14 Sep 2017 15:32:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=d2vNSPrgsnnxGfpkE) @dselman the problem was JS allowing you to write anything you want without any checking until runtime :/. Is there a log somewhere where the errors will end up in?
dselman (Thu, 14 Sep 2017 15:33:32 GMT):
Yes, they will end up in the Docker logs for the chaincode container. E.g. `docker logs xxxx`
mna2017 (Thu, 14 Sep 2017 20:00:30 GMT):
@caroline-church Can a query(.qry) read blockchain system level information. I want to read 1) Block hash 2) Current blockchain height.
mna2017 (Thu, 14 Sep 2017 20:05:41 GMT):
Team, The "composer network deploy" command is giving me the following error: `Error: Failed to load connector module "composer-connector-undefined" for connection profile "cont-hlfv1". Error: Cannot find module 'composer-connector-undefined'
Command failed
`
ScottMorris (Thu, 14 Sep 2017 21:41:51 GMT):
When using Mongo with the REST server, has anyone experienced high memory usage? It appears to be using 1.3 GB of Virtual Memory, which seems kinda high to me, maybe this is normal?
pxuereb (Thu, 14 Sep 2017 22:14:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=55azZQRkwGhWnzfG3) @davidkel Thanks, are these parameters documented anywhere?
GirijaShankarMishra (Fri, 15 Sep 2017 06:01:59 GMT):
Deploying a persistent and secured REST server using Docker with mongodb
I am getting the following error after creating a participant or wallet
{
"error": {
"statusCode": 401,
"name": "Error",
"message": "Authorization Required",
"code": "AUTHORIZATION_REQUIRED",
"stack": "Error: Authorization Required\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/loopback/lib/application.js:392:21\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/loopback/lib/model.js:353:7\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:528:16\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/async/dist/async.js:3861:9\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/async/dist/async.js:421:16\n at iteratorCallback (/usr/local/lib/node_modules/composer-rest-server/node_modules/async/dist/async.js:998:13)\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/async/dist/async.js:906:16\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/async/dist/async.js:3858:13\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:510:17\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/role.js:244:9\n at _combinedTickCallback (internal/process/next_tick.js:73:7)\n at process._tickDomainCallback (internal/process/next_tick.js:128:9)"
}
}
GirijaShankarMishra (Fri, 15 Sep 2017 06:01:59 GMT):
Deploying a persistent and secured REST server using Docker with mongodb
I am getting the following error after creating a participant or wallet
{
"error": {
"statusCode": 401,
"name": "Error",
"message": "Authorization Required",
"code": "AUTHORIZATION_REQUIRED",
"stack": "Error: Authorization Required\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/loopback/lib/application.js:392:21\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/loopback/lib/model.js:353:7\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:528:16\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/async/dist/async.js:3861:9\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/async/dist/async.js:421:16\n at iteratorCallback (/usr/local/lib/node_modules/composer-rest-server/node_modules/async/dist/async.js:998:13)\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/async/dist/async.js:906:16\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/async/dist/async.js:3858:13\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:510:17\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/role.js:244:9\n at _combinedTickCallback (internal/process/next_tick.js:73:7)\n at process._tickDomainCallback (internal/process/next_tick.js:128:9)"
}
}
dlubom (Fri, 15 Sep 2017 07:25:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tXLCSRefX6rLJXEev) @rthatcher how connect alice GitHub ID with allice in blockchain and the same for bob ?
biksen (Fri, 15 Sep 2017 07:59:01 GMT):
Any one came across hyperledger composer's chaincode error like : Error: The current identity must be activated (ACTIVATION_REQUIRED)?? The identity which I am using showing ISSUED in composer-playground. But once I am using System/ping through REST server, chaincode log showing this error. I hope at the time when a participant submits a transaction using an enrollment certificate, the Composer chaincode extracts the enrollment ID from the enrollment certificate, and uses it to look up the participant instance that the identity was issued to. I issued identity through CLI and then I am using it in REST server without doing anything in CLI. I am not sure how to overcome this error. Appreciate! any help.
noeticforce (Fri, 15 Sep 2017 08:29:00 GMT):
Has joined the channel.
noeticforce (Fri, 15 Sep 2017 08:30:14 GMT):
Hello friends....i am new to hyperledger, windows 10 home edition. Looks like for hyper-v, need to upgrade to windows pro, i dont want to spend money, any alternative ideas
rthatcher (Fri, 15 Sep 2017 08:33:29 GMT):
@dlubom - the process of setting up the default wallet is what links the login id (e.g. GitHub) with the Composer Identity. I would clear the History and use separate browsers for tests (e.g. Chrome for Alice and Firefox for Bob)
dlubom (Fri, 15 Sep 2017 08:37:53 GMT):
@rthatcher ok, will try, but composer-rest-server should be run using admin account?
rthatcher (Fri, 15 Sep 2017 08:42:26 GMT):
@dlubom in Multi user mode the composer-rest-server must be started with an ID that has access to read the business network in order to build the network specific calls, and you can see that in the output. All other access is then in the context of the IDs that you specify in the Wallets.
So in a dev/test environment admin/adminpw should be fine.
rthatcher (Fri, 15 Sep 2017 08:57:20 GMT):
@biksen can you write the exact steps you are using, and describe the environment?
SimonOberzan (Fri, 15 Sep 2017 11:09:10 GMT):
Has left the channel.
mamtabharadwaj (Fri, 15 Sep 2017 11:33:29 GMT):
Has joined the channel.
mamtabharadwaj (Fri, 15 Sep 2017 11:33:39 GMT):
Hi,
I have successfully executed this 'docker run \' command and got token but while executing 'docker logs' command to see container id i have encounter an error like this:
dell@dell-Latitude-E6420:~/mongo$ docker logs 0478b2bef889
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
0|composer | Discovering types from business network definition ...
0|composer | Connection fails: Error: Error trying to ping. Error: Composer runtime (0.12.2) is not compatible with client (0.12.1)
0|composer | It will be retried for the next request.
0|composer | Exception: Error: Error trying to ping. Error: Composer runtime (0.12.2) is not compatible with client (0.12.1)
0|composer | Error: Error trying to ping. Error: Composer runtime (0.12.2) is not compatible with client (0.12.1)
0|composer | at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/li
rthatcher (Fri, 15 Sep 2017 12:05:54 GMT):
@mamtabharadwaj not sure of your setup, but I would think that if you uninstall your composer-cli and re-install you will get v.0.12.2 should fix the problem. Perhaps these commands:
rthatcher (Fri, 15 Sep 2017 12:06:59 GMT):
composer -v
npm uninstall -g composer-cli
npm install -g composer-cli
composer -v
TomaszRozmus (Fri, 15 Sep 2017 12:14:59 GMT):
composer -v
UDeshmukh (Fri, 15 Sep 2017 14:44:52 GMT):
Message Attachments
UDeshmukh (Fri, 15 Sep 2017 14:44:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PvWjg4hTq8C6p3Hb3) @dselman module I wrote to read/Parse Json data from a disc File in nodeJS is working fine... but am facing an issue connecting to the network as seen in the screenshot. how do I get around this ?
UDeshmukh (Fri, 15 Sep 2017 14:47:09 GMT):
Message Attachments
eacoeytaux (Fri, 15 Sep 2017 15:01:27 GMT):
Has joined the channel.
ajp (Fri, 15 Sep 2017 15:03:21 GMT):
Has joined the channel.
eacoeytaux (Fri, 15 Sep 2017 15:06:36 GMT):
Hello,
I'm fairly new to composer and have a couple basic questions:
1) when defining models, is there a way to specify arrays? I haven't found anything in the documentation
2) is there any built in functionality to confirm signatures or otherwise guarantee that the entity executing a tx is authorized to do so? (e.g. only the owner of an asset can trade it) or is this something that's left to the developer to implement as they want?
rthatcher (Fri, 15 Sep 2017 15:22:21 GMT):
@UDeshmukh I assume you need to specify composer-client and perhaps other module dependencies in your project - I would check some of the sample applicatons to see what they do
UDeshmukh (Fri, 15 Sep 2017 15:26:15 GMT):
@rthatcher yes I referred to the sample code link Dan gave y'day... but I think that code fires from inside Composer which probably takes care of the dependencies. So I wanted to know what additional code I need to put in my node JS code to work around this.
rthatcher (Fri, 15 Sep 2017 15:28:15 GMT):
@eacoeytaux see this example:
```
/**
* A car asset. A car is related to a list of parts
*/
asset Car extends Vehicle {
o String model
--> Part[] Parts
}
```
In the document on Modelling language https://hyperledger.github.io/composer/reference/cto_language.html
For authorising transactions - I would think using ACLs is the way to go - also covered in the reference documentation
eacoeytaux (Fri, 15 Sep 2017 15:29:44 GMT):
@rthatcher thank you this is exactly what I was looking for!
UDeshmukh (Fri, 15 Sep 2017 16:28:26 GMT):
Message Attachments
UDeshmukh (Fri, 15 Sep 2017 16:28:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tjddJdBneLnKfdYix) @rthatcher I installed composer-client and composer-admin modules via npm install as seen... however it still fails.... is my PATH setting incorrect?
ScottMorris (Fri, 15 Sep 2017 17:50:39 GMT):
@dselman I'm wondering if you know where the ACLs are checked in the execution flow, are they at the chaincode level on the peer?
dselman (Fri, 15 Sep 2017 17:54:20 GMT):
they are enforced by the composer chaincode
ScottMorris (Fri, 15 Sep 2017 18:01:46 GMT):
So any syntax errors should show in which log?
ScottMorris (Fri, 15 Sep 2017 18:01:46 GMT):
So any syntax errors should show in the peer's log?
dselman (Fri, 15 Sep 2017 18:02:16 GMT):
chaincode logs
dselman (Fri, 15 Sep 2017 18:02:34 GMT):
chaincode container -- the docker container that contains the name of your business network
ScottMorris (Fri, 15 Sep 2017 18:08:17 GMT):
ohh, ok, i found the chain code, my docker output was severely cutoff, it appears to be on a container called `dev-peer0.org1.example.com-mynetwork...`, thx!
ScottMorris (Fri, 15 Sep 2017 18:13:24 GMT):
if one were to put console.logs in, would they get redirected to this log file, or is there a recommended way of logging within the rules/chaincode?
ScottMorris (Fri, 15 Sep 2017 19:42:56 GMT):
I can see in my log file `[36m2017-09-15 19:39:11.029 UTC [Composer] Debug -> DEBU 1342a[0m @JS : CompiledAclBundle :execute() Function threw error [object Object]` and at the end I see a small stack trace
```
Error: Unhandled promise rejection {name:"Error"}
at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
at error () native strict preventsyield
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1) preventsyield
at call () native strict preventsyield
at [anon] (eval:1) preventsyield
```
but I don't seem to be able to find the error that the function threw. I tried putting in `console.log` into the JS function I suspected, but it doesn't seem to make it to the log.
ScottMorris (Fri, 15 Sep 2017 19:42:56 GMT):
I can see in my log file
```
[36m2017-09-15 19:39:11.028 UTC [Composer] Debug -> DEBU 13429[0m @JS : CompiledAclBundle :execute() Executing function AssignedPeopleCanAddNotes
[36m2017-09-15 19:39:11.029 UTC [Composer] Debug -> DEBU 1342a[0m @JS : CompiledAclBundle :execute() Function threw error [object Object]
```
and at the end of the log I see a small stack trace
```
Error: Unhandled promise rejection {name:"Error"}
at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
at error () native strict preventsyield
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1) preventsyield
at call () native strict preventsyield
at [anon] (eval:1) preventsyield
```
but I don't seem to be able to find the error that the function threw. I tried putting in `console.log` into the JS function I suspected, but it doesn't seem to make it to the log.
davidkel (Fri, 15 Sep 2017 20:26:26 GMT):
@ScottMorris could you raise an issue about this we details of what you have tried. We need to find ways to improve how to debug acl issues including that logging output plus this unhandled promise rejection.
ScottMorris (Fri, 15 Sep 2017 20:30:46 GMT):
I've discovered where there error message is coming from in the composer code, the part where it says `Function threw error [Object object]`. It comes from compiledaclbundle.js,
```
// Execute the function.
const functionName = aclRule.getName();
const func = bundle[functionName];
let funcResult;
try {
LOG.debug(method, 'Executing function', functionName);
funcResult = func(resource, participant, transaction);
LOG.debug(method, 'Function returned', funcResult);
} catch (e) {
LOG.debug(method, 'Function threw error', e); //<---- Error Message from here
}
```
I'm wondering if all that needs to be done here is to append `.message` to the `e` so that it prints the error message out (assuming it is throwing Error). I'm continuing to investigate if it is our ACL rule logic that is throwing the error, and I'm trying to figure out if I can have my ACL predicate use `LOG.debug` to output to the same log.
ScottMorris (Fri, 15 Sep 2017 20:30:46 GMT):
I've discovered where there error message is coming from in the composer code, the part where it says `Function threw error [Object object]`. It comes from compiledaclbundle.js,
```
// Execute the function.
const functionName = aclRule.getName();
const func = bundle[functionName];
let funcResult;
try {
LOG.debug(method, 'Executing function', functionName);
funcResult = func(resource, participant, transaction);
LOG.debug(method, 'Function returned', funcResult);
} catch (e) {
LOG.debug(method, 'Function threw error', e); //<---- Error Message from here
}
```
I'm wondering if all that needs to be done here is to append `.message` to the `e` so that it prints the error message out (assuming it is throwing Error). I'm continuing to investigate if it is our ACL rule logic that is throwing the error, and I'm trying to figure out if I can have my ACL predicate use `LOG.debug` to output to the same log.
ScottMorris (Fri, 15 Sep 2017 20:30:46 GMT):
@davidkel I've discovered where there error message is coming from in the composer code, the part where it says `Function threw error [Object object]`. It comes from compiledaclbundle.js,
```
// Execute the function.
const functionName = aclRule.getName();
const func = bundle[functionName];
let funcResult;
try {
LOG.debug(method, 'Executing function', functionName);
funcResult = func(resource, participant, transaction);
LOG.debug(method, 'Function returned', funcResult);
} catch (e) {
LOG.debug(method, 'Function threw error', e); //<---- Error Message from here
}
```
I'm wondering if all that needs to be done here is to append `.message` to the `e` so that it prints the error message out (assuming it is throwing Error). I'm continuing to investigate if it is our ACL rule logic that is throwing the error, and I'm trying to figure out if I can have my ACL predicate use `LOG.debug` to output to the same log.
ScottMorris (Fri, 15 Sep 2017 20:30:46 GMT):
@davidkel I've discovered where there error message is coming from in the composer code, the part where it says `Function threw error [Object object]`. It comes from compiledaclbundle.js,
```
// Execute the function.
const functionName = aclRule.getName();
const func = bundle[functionName];
let funcResult;
try {
LOG.debug(method, 'Executing function', functionName);
funcResult = func(resource, participant, transaction);
LOG.debug(method, 'Function returned', funcResult);
} catch (e) {
LOG.debug(method, 'Function threw error', e); //<---- Error Message from here
}
```
I'm wondering if all that needs to be done here is to append `.message` to the `e` so that it prints the error message out (assuming it is throwing `Error`). I'm continuing to investigate if it is our ACL rule logic that is throwing the error, and I'm trying to figure out if I can have my ACL predicate use `LOG.debug` to output to the same log.
davidkel (Fri, 15 Sep 2017 21:02:23 GMT):
@ScottMorris logging is definitely lacking as it doesn't handle objects in a manner that is useful so that needs to be addressed as this is just one unfortunate example of a wider problem. We also need to consider better handling of ACLs which could throw errors and best practices and an issue around this would help to ensure it isn't something that gets forgotten. It's also interesting that there is a potential unhandled promise rejection could be related.
davidkel (Fri, 15 Sep 2017 21:02:23 GMT):
@ScottMorris logging is definitely lacking as it doesn't handle objects in a manner that is useful so that needs to be addressed as this is just one unfortunate example of a wider problem (see https://github.com/hyperledger/composer/issues/2104). We also need to consider better handling of ACLs which could throw errors and best practices and an issue around this would help to ensure it isn't something that gets forgotten. It's also interesting that there is a potential unhandled promise rejection could be related.
ScottMorris (Fri, 15 Sep 2017 21:04:39 GMT):
I will create an issue for this on GitHub. I've stripped my ACL down to having the _condition_ section calling a simple function that just returns true and it is still giving me the issue. Without the error message this is hard to debug.
davidkel (Fri, 15 Sep 2017 21:05:43 GMT):
@ScottMorris thank you. I think it is worth doing as there are a few things there that need to be improved
ScottMorris (Fri, 15 Sep 2017 21:05:48 GMT):
Where does the compiledaclbundle.js file end up in terms of the structure of the chain code? Is it installed right into the Fabric runtime?
ScottMorris (Fri, 15 Sep 2017 21:05:48 GMT):
Where does the _compiledaclbundle.js_ file end up in terms of the structure of the chain code? Is it installed right into the Fabric runtime?
davidkel (Fri, 15 Sep 2017 21:07:08 GMT):
@ScottMorris no, it is part of the composer runtime and so only runs in the context of the chaincode container
ScottMorris (Fri, 15 Sep 2017 21:07:48 GMT):
so if I connect directly to the container I should be able to make changes to it to test out something?
davidkel (Fri, 15 Sep 2017 21:09:23 GMT):
@ScottMorris unfortunately that won't be a simple thing to do.
ScottMorris (Fri, 15 Sep 2017 21:11:04 GMT):
to get into the container was pretty easy, `docker exec -i -t
ScottMorris (Fri, 15 Sep 2017 21:11:04 GMT):
Getting into the container was pretty easy, `docker exec -i -t
davidkel (Fri, 15 Sep 2017 21:12:19 GMT):
@ScottMorris You won't find the file as it isn't stored in the file system of the container.
ScottMorris (Fri, 15 Sep 2017 21:13:03 GMT):
Ahh, that explains why I'm coming up empty, too bad. I guess I can build a custom version of the runtime and figure out for to deploy it. (a bit more work, haha)
UDeshmukh (Fri, 15 Sep 2017 23:02:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3maWNpkXFkEvd5ubx) @dselman @rthatcher @sstone1 any suggestion how I can get past this issue? Thanks!
mamtabharadwaj (Sat, 16 Sep 2017 05:47:38 GMT):
@rthatcher thank you. I will check it.
mamtabharadwaj (Sat, 16 Sep 2017 05:53:04 GMT):
Hi,
Guys can you help me out for hyperledger fabric sdk?, i didnt found any documentation for 'hyperledger fabric sdk' except github.
Thank you.
dselman (Sat, 16 Sep 2017 09:41:57 GMT):
API docs fro Fabric are here: https://godoc.org/github.com/hyperledger/fabric/core/chaincode/shim#Chaincode
dselman (Sat, 16 Sep 2017 09:42:14 GMT):
Linked from: https://hyperledger-fabric.readthedocs.io/en/latest/chaincode4ade.html
james3443112 (Sat, 16 Sep 2017 09:50:00 GMT):
Has joined the channel.
UDeshmukh (Sat, 16 Sep 2017 18:16:04 GMT):
Message Attachments
UDeshmukh (Sat, 16 Sep 2017 18:16:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3uCSkcDmn2J5CRA28) @UDeshmukh I was able to sort out the node path issues... not able to connect to my 'deployed' network, though... Any suggestions what's amiss here? Thanks!
conroydave (Sat, 16 Sep 2017 18:36:23 GMT):
Regarding authentication to hyperledger composer applications
conroydave (Sat, 16 Sep 2017 18:36:27 GMT):
is anyone doing firebase for this?
conroydave (Sat, 16 Sep 2017 18:36:31 GMT):
what authentication methods exist?
conroydave (Sat, 16 Sep 2017 18:36:39 GMT):
for user management
conroydave (Sat, 16 Sep 2017 21:18:06 GMT):
looking more into passport
conroydave (Sat, 16 Sep 2017 21:18:13 GMT):
I have gotten the passport-github working
conroydave (Sat, 16 Sep 2017 21:18:23 GMT):
but having trouble with the others like google
conroydave (Sat, 16 Sep 2017 21:22:49 GMT):
Cannot find module 'passport-google-oauth'
jdockter (Sat, 16 Sep 2017 21:39:44 GMT):
@conroydave we used passport-google-oauth2
jdockter (Sat, 16 Sep 2017 21:40:05 GMT):
Here is what we did....```Successfully setup rest server security with google passport. The following are details:
1) Within Google developer console: https://console.developers.google.com/apis/
Enable Google+ API
Create credential for 'web application'.
--> Authorized JavaScript origins: http://localhost:3000
--> Authorized redirect URIs: http:localhost:3000/auth/google/callback
--> Note the given clientID and clientSecret
2) Use the following composer_provider export (fill in ID and secret accordingly:
export COMPOSER_PROVIDERS='{
"google": {
"provider": "google",
"module": "passport-google-oauth2",
"clientID": "xxxx",
"clientSecret": "xxxx",
"authPath": "/auth/google",
"callbackURL": "/auth/google/callback",
"scope": "https://www.googleapis.com/auth/plus.login",
"successRedirect": "/",
"failureRedirect": "/"
}
}'```
conroydave (Sat, 16 Sep 2017 21:40:07 GMT):
can you show me an example of your composer provider env variable
conroydave (Sat, 16 Sep 2017 21:40:07 GMT):
thanks
conroydave (Sat, 16 Sep 2017 21:41:18 GMT):
now does this need to be added to composer-rest-server somehow or is google oauth2 supported out of box
jdockter (Sat, 16 Sep 2017 21:42:48 GMT):
We followed this document to initially set it up, https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
conroydave (Sat, 16 Sep 2017 21:43:23 GMT):
thanks
conroydave (Sat, 16 Sep 2017 21:43:27 GMT):
been following that myself
conroydave (Sat, 16 Sep 2017 21:43:36 GMT):
let me see if this new env variable helps
conroydave (Sat, 16 Sep 2017 21:43:44 GMT):
i dont have the client id for google yet need to set that up
conroydave (Sat, 16 Sep 2017 21:43:53 GMT):
it should get further than i am without it, some key error
conroydave (Sat, 16 Sep 2017 21:43:58 GMT):
as opposed to module not supported
jdockter (Sat, 16 Sep 2017 21:44:33 GMT):
Then we created our own REST server using the deploy instructions to persist the identities to mongo, here https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
jdockter (Sat, 16 Sep 2017 21:45:00 GMT):
We have not updated since the switch to multi user but I think that is basically just a parameter change...at least I hope :)
conroydave (Sat, 16 Sep 2017 21:45:27 GMT):
famous last words :-)
conroydave (Sat, 16 Sep 2017 21:46:29 GMT):
so yeah
conroydave (Sat, 16 Sep 2017 21:46:34 GMT):
i am still getting module not found
conroydave (Sat, 16 Sep 2017 21:47:21 GMT):
https://pastebin.com/DJYg9ZPh
jdockter (Sat, 16 Sep 2017 21:48:02 GMT):
did you install with -g for global
conroydave (Sat, 16 Sep 2017 21:48:20 GMT):
trying now
conroydave (Sat, 16 Sep 2017 21:48:42 GMT):
i have been tinkering with this stuff for like 10 months so i hope its not some versioning issue on the composer-rest-server
jdockter (Sat, 16 Sep 2017 21:48:57 GMT):
npm install passport-google-oauth2 -g
conroydave (Sat, 16 Sep 2017 21:49:07 GMT):
now that i think of this
conroydave (Sat, 16 Sep 2017 21:49:21 GMT):
even if i have the packages locally in my app , if it is calling the global npm packages
conroydave (Sat, 16 Sep 2017 21:49:23 GMT):
itd fail
conroydave (Sat, 16 Sep 2017 21:49:24 GMT):
shiiit
conroydave (Sat, 16 Sep 2017 21:50:08 GMT):
-g did the trick
conroydave (Sat, 16 Sep 2017 21:50:10 GMT):
cheers man.
jdockter (Sat, 16 Sep 2017 21:50:26 GMT):
cool...best of luck...gotta run
conroydave (Sat, 16 Sep 2017 21:50:29 GMT):
later
conroydave (Sat, 16 Sep 2017 23:57:59 GMT):
i am curious to what people do for permission levels
conroydave (Sat, 16 Sep 2017 23:59:35 GMT):
i have to update permissions.acl to set appropriate user registrations from google?
conroydave (Sun, 17 Sep 2017 00:00:03 GMT):
appropriate permissions*
nasht00 (Sun, 17 Sep 2017 07:54:20 GMT):
Hi,
When running my query, I get `Error: unknown operator "0" - should be one of $eq, $lte...`.
The error goes away when I remove this part of the query: `AND startDate < _$startDate`.
Why wouldn't `<` be a recognized operator?
nasht00 (Sun, 17 Sep 2017 07:58:56 GMT):
uh oh, nevermind, it fails whenever I have 3 conditions in my query:
`WHERE (contract == _$contract AND startDate == _$startDate AND status == 'ACTIVE' )`
If I remove any of the 3, it start working again.
nasht00 (Sun, 17 Sep 2017 08:09:59 GMT):
Something seems wrong. I opened an issue: https://github.com/hyperledger/composer/issues/2160
sstone1 (Sun, 17 Sep 2017 11:19:50 GMT):
@nasht00 looks broken - thanks for raising the issue
sstone1 (Sun, 17 Sep 2017 11:20:06 GMT):
you can probably work around it by grouping it with ( and )
sstone1 (Sun, 17 Sep 2017 11:20:18 GMT):
e.g. `(contract == _$contract AND (startDate == _$startDate AND status == 'ACTIVE' ))`
nasht00 (Sun, 17 Sep 2017 11:22:54 GMT):
I tried that as well, same thing. I'll add it to the issue.
sstone1 (Sun, 17 Sep 2017 11:30:01 GMT):
ok, thanks
conroydave (Sun, 17 Sep 2017 13:56:28 GMT):
good morning all. I'm workin on a web app that is distributed marketplace - allowing user registration with passsport oauth - does anyone have examples of how to do access control based on participants added during the self registration processes vs say an admin user
conroydave (Sun, 17 Sep 2017 13:57:09 GMT):
i want self registrants to have read/write access to items they add, and read perms to the public items
conroydave (Sun, 17 Sep 2017 13:57:22 GMT):
i am guessing this is down with permissions.acl?
conroydave (Sun, 17 Sep 2017 13:57:30 GMT):
done with*
sstone1 (Sun, 17 Sep 2017 15:08:52 GMT):
@conroydave there is no way to autom
sstone1 (Sun, 17 Sep 2017 15:08:53 GMT):
]A
sstone1 (Sun, 17 Sep 2017 15:09:22 GMT):
@conroydave there is no built in way for participants to self register
sstone1 (Sun, 17 Sep 2017 15:10:28 GMT):
you need to build functionality into your application that allows new users to authenticate and then register - that registration process requires creating a new participant on the blockchain, and then issuing that participant with a blockchain identity
conroydave (Sun, 17 Sep 2017 15:11:43 GMT):
what about the passport github plugin
conroydave (Sun, 17 Sep 2017 15:11:53 GMT):
is that just to generate a token?
sstone1 (Sun, 17 Sep 2017 15:12:22 GMT):
it's only for authenticating and identifying clients to the REST server
conroydave (Sun, 17 Sep 2017 15:12:32 GMT):
i see
conroydave (Sun, 17 Sep 2017 15:12:54 GMT):
so clients as in applications, not people
sstone1 (Sun, 17 Sep 2017 15:12:54 GMT):
you still need to issue each client a blockchain identity. the REST server will take care of mapping between clients (for example GitHub IDs) to blockchain identities.
sstone1 (Sun, 17 Sep 2017 15:13:10 GMT):
clients as in whatever authenticates to the REST server :)
conroydave (Sun, 17 Sep 2017 15:15:09 GMT):
ok. so the app we build needs to have the ability to authenticate with the rest server, and the functionality to then once connected, create the blockchain entities and marry them to their passport id
conroydave (Sun, 17 Sep 2017 15:15:29 GMT):
i apologize for the noob questions by the way , really trying hard to understand this
conroydave (Sun, 17 Sep 2017 15:17:29 GMT):
or the app we build uses passport to authenticate the client to the rest server, but then also needs to create the participant on the chain
conroydave (Sun, 17 Sep 2017 15:19:10 GMT):
anyone here attending this? https://www.hyperledger.org/event/hyperledger-chicago-hackfest
sstone1 (Sun, 17 Sep 2017 15:23:50 GMT):
np - and you're correct
sstone1 (Sun, 17 Sep 2017 15:23:58 GMT):
quite a bit to do in that process
sstone1 (Sun, 17 Sep 2017 15:24:03 GMT):
you need to create a participant on the chain
sstone1 (Sun, 17 Sep 2017 15:24:07 GMT):
issue that participant with an identity
sstone1 (Sun, 17 Sep 2017 15:24:18 GMT):
then add that identity into the authenticated users wallet on the REST server
sstone1 (Sun, 17 Sep 2017 15:24:40 GMT):
also, i'll be at the chicago hackfest :D
conroydave (Sun, 17 Sep 2017 15:26:31 GMT):
nice. i am helping organize it with Linux Foundation and State of Illinois
conroydave (Sun, 17 Sep 2017 15:26:51 GMT):
there is also a meetup the night inbetween the two day hackfest
conroydave (Sun, 17 Sep 2017 15:26:53 GMT):
same venue
sstone1 (Sun, 17 Sep 2017 15:27:17 GMT):
ooo, i wasn't aware of that
conroydave (Sun, 17 Sep 2017 15:27:28 GMT):
pizza and beer
sstone1 (Sun, 17 Sep 2017 15:27:34 GMT):
:+1: sounds good
conroydave (Sun, 17 Sep 2017 15:27:37 GMT):
https://www.meetup.com/Hyperledger-Chicago/events/242827910/
conroydave (Sun, 17 Sep 2017 15:30:21 GMT):
would be nice if someone had already built the self registration part and open sourced it. if i get mine working i will
conroydave (Sun, 17 Sep 2017 15:30:35 GMT):
seems critical to many of these marketplace apps
conroydave (Sun, 17 Sep 2017 15:30:43 GMT):
decentralizing
sstone1 (Sun, 17 Sep 2017 15:30:59 GMT):
agree, we don't really have a good "how to do login" example, let alone "login and register"
conroydave (Sun, 17 Sep 2017 15:32:09 GMT):
early days.
conroydave (Sun, 17 Sep 2017 15:32:16 GMT):
the composer sample network stuff is great
mamtabharadwaj (Sun, 17 Sep 2017 17:32:52 GMT):
Hi,
Guys, please help with this error for hyperledger fabric-sdk-rest
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "failed to load private key data",
"stack": "Error: failed to load private key data\n at promise.then (/home/dell/node_modules/fabric-client/lib/Client.js:1100:12)"
}
}
sstone1 (Sun, 17 Sep 2017 17:39:48 GMT):
@mamtabharadwaj wrong channel, that's a fabric question not a composer question
mamtabharadwaj (Sun, 17 Sep 2017 17:54:10 GMT):
ohh sorry...
UDeshmukh (Mon, 18 Sep 2017 00:32:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7SXgW44q45t3pSSJ4) re-posting....still needing help. Have also logged a SO issue: https://stackoverflow.com/questions/46270080/node8232-unhandledpromiserejectionwarning-error-could-not-find-chaincode-wit
conroydave (Mon, 18 Sep 2017 02:19:55 GMT):
has anyone here gotten this part working? https://ibm-blockchain.github.io/interacting/
conroydave (Mon, 18 Sep 2017 02:20:24 GMT):
i can get the hyperledger composer playground running in my bluemix cluster
conroydave (Mon, 18 Sep 2017 02:20:52 GMT):
but the composer rest server doesnt boot up even though create script returns successful
sstone1 (Mon, 18 Sep 2017 05:25:26 GMT):
@UDeshmukh you've used the namespace `net.digitalHealth.Network` - this is wrong, you should use the name of the business network `digital-health-network`
mna2017 (Mon, 18 Sep 2017 05:51:38 GMT):
@conroydave I am also stuck at the same point. The composer rest server script has run fine, but this does not necessarily mean it has loaded the business network correctly. When I went and checked composer-rest-servers logs on kubernetes UI, it was showing an error that the myNetwork was not found. Please check the logs of composer rest server.
zasamen (Mon, 18 Sep 2017 06:49:25 GMT):
Has joined the channel.
sstone1 (Mon, 18 Sep 2017 06:58:27 GMT):
@mna2017 your business network cannot be called `myNetwork` - what is the full output of the error message?
zasamen (Mon, 18 Sep 2017 07:02:40 GMT):
Hi. I would like to ask a question.I use composer. I have to do multiple manipulations with the same asset in one transaction. It looks like: create -> change some values -> update ... . Or create -> create relations -> link this asset with other -> link any other asset with that. But when i try to create relationship i've got an error. It says that my object doesn't exist. Or if i try to get object after i update it in same transaction i'm receiving an old version of object.
How should i do this sequence of manipulation?
zasamen (Mon, 18 Sep 2017 07:02:40 GMT):
Hi. I would like to ask a question.I use composer. I have to do multiple manipulations with the same asset in one transaction. It looks like: create -> change some values -> update ... . Or create -> create relations -> link this asset with other -> link any other asset with that. But when i try to create relationship i've got an error. It says that my object doesn't exist. Or if i try to get object after i update it in same transaction i'm receiving an old version of object.
How should i do this sequence of manipulations?
argman (Mon, 18 Sep 2017 07:15:23 GMT):
Has joined the channel.
sstone1 (Mon, 18 Sep 2017 07:19:22 GMT):
@zasamen Fabric v1.0 does not support read your own writes; when you create or update an asset, you cannot read those changes back until after the transaction has been committed. You must code for this behaviour.
Amjadnz (Mon, 18 Sep 2017 07:19:38 GMT):
@sstone1 - Can you please clarify if the composer support multiple channels? Like I have 4 nodes and want NODE1 and NODE2 to have a private channel. Can the composer app detect that or i can post it on public channels only.
sstone1 (Mon, 18 Sep 2017 07:21:31 GMT):
@Amjadnz a Composer business network gets deployed into an existing channel and is scoped to that channel. note that there is no such thing as a public or private channel - they're just channels with a different set of peer nodes.
sstone1 (Mon, 18 Sep 2017 07:21:50 GMT):
bear in mind you cannot communicate between the different channels yet; we are working on introducing a feature called "links" that will support this.
zasamen (Mon, 18 Sep 2017 07:22:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A6ifBJqKvnTk3TvEG) @sstone1 Thank you for answer.
Amjadnz (Mon, 18 Sep 2017 07:23:38 GMT):
@sstone1 Thanks. So in essence I have to have a composer BN deployed on each channel to have that taken care of. And as you said - if "links" are not active yet must "invoke" it externally (for cross channel talking).
Amjadnz (Mon, 18 Sep 2017 07:24:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Yv85JYD6CQFjkSkBN) @sstone1 Yea got it. Public I meant shared by all.
baohua (Mon, 18 Sep 2017 07:33:10 GMT):
Has joined the channel.
nasht00 (Mon, 18 Sep 2017 07:38:46 GMT):
In permissions, regarding the `condition`. Is the condition evaluated BEFORE the transaction or after?
Meaning if my condition is `(r.status == 'ACTIVE')`, and the condition being called modifies that status, when does it compare?
sstone1 (Mon, 18 Sep 2017 07:39:24 GMT):
@Amjadnz correct - you'd have to build an external app for communicating between channels
jgiron (Mon, 18 Sep 2017 07:39:30 GMT):
Has joined the channel.
argman (Mon, 18 Sep 2017 08:26:25 GMT):
Message Attachments
argman (Mon, 18 Sep 2017 08:26:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A6ifBJqKvnTk3TvEG) @sstone1 Hello, about that problem I have one more question. In Animal-Tracking-Network example in setupDemo transaction we create Farmers and Buisness relationship to that Farmers in ONE transaction? How is it possible?
sstone1 (Mon, 18 Sep 2017 08:27:47 GMT):
@argman as long as you don't try to read (using the `get` or `getAll` APIs) the assets that you create or update then you should be fine
zasamen (Mon, 18 Sep 2017 08:34:36 GMT):
@sstone1 But why do i have there error: 'order with that id not found'?
zasamen (Mon, 18 Sep 2017 08:34:42 GMT):
Message Attachments
mna2017 (Mon, 18 Sep 2017 09:00:51 GMT):
@sstone1 This the exact error message that I am getting "2017-09-12T17:04:53.145304605Z 0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
2017-09-12T17:04:53.227881891Z 0|composer | Discovering types from business network definition ...
2017-09-12T17:04:54.430092022Z 0|composer | Connection fails: Error: Error trying to ping. Error: Error trying to query chaincode. Error: could not find chaincode with name 'myexamplenetwork' - make sure the chaincode 'myexamplenetwork' has been successfully instantiated and try again
2017-09-12T17:04:54.430114937Z 0|composer | It will be retried for the next request."
sstone1 (Mon, 18 Sep 2017 09:07:18 GMT):
@mna2017 when do you get that error? when you submit a `RequestConfiguration` transaction?
mna2017 (Mon, 18 Sep 2017 09:14:20 GMT):
@sstone1 Hi Simon, I have followed this tutorial "https://ibm-blockchain.github.io/interacting/"
In Step #4, the script "./create/create_composer-rest-server.sh" logs this error on the log file.
mna2017 (Mon, 18 Sep 2017 09:14:35 GMT):
@sstone1 Let me attach the script file and .yaml file over here
mna2017 (Mon, 18 Sep 2017 09:15:34 GMT):
Message Attachments
mna2017 (Mon, 18 Sep 2017 09:17:04 GMT):
Message Attachments
mna2017 (Mon, 18 Sep 2017 09:19:56 GMT):
@sstone1 Please note that I can see the composer playground fine on "http://YOUR_PUBLIC_IP_HERE:31080". Its just the composer rest server that is not coming up.
sstone1 (Mon, 18 Sep 2017 09:20:08 GMT):
did you deploy a business network using the composer playground?
sstone1 (Mon, 18 Sep 2017 09:20:22 GMT):
the yaml file has a business network name of `myExampleNetwork` which is an invalid business network name
sstone1 (Mon, 18 Sep 2017 09:20:49 GMT):
oops this was meant for @zasamen when do you get that error? when you submit a `RequestConfiguration` transaction?
zasamen (Mon, 18 Sep 2017 09:21:27 GMT):
@sstone1 Yes.
mna2017 (Mon, 18 Sep 2017 09:22:54 GMT):
@sstone1 ok. What ID should be used against the field "COMPOSER_BUSINESS_NETWORK" inside of hte yaml file. Should it be the name of the business network archive file (i.e. myExampleNetwork.bna)? Or should it be some other ID?
sstone1 (Mon, 18 Sep 2017 09:23:02 GMT):
is that the full text of the error you get @zasamen ?
zasamen (Mon, 18 Sep 2017 09:23:08 GMT):
Message Attachments
sstone1 (Mon, 18 Sep 2017 09:23:29 GMT):
it should be the name of the business network, this is set in the `package.json` file and should also be visible from the ID cards screen in the playground
sstone1 (Mon, 18 Sep 2017 09:24:06 GMT):
@zasamen what does the `getId` function do?
zasamen (Mon, 18 Sep 2017 09:24:48 GMT):
it is stub for identifier generation
zasamen (Mon, 18 Sep 2017 09:26:07 GMT):
Message Attachments
sstone1 (Mon, 18 Sep 2017 09:27:41 GMT):
you know you shouldn't use random number generators in a blockchain smart contract right? it will produce non-deterministic results when it runs on more than one peer node.
sstone1 (Mon, 18 Sep 2017 09:27:53 GMT):
anyway, i see the error
sstone1 (Mon, 18 Sep 2017 09:27:56 GMT):
you add the order, and then update it
sstone1 (Mon, 18 Sep 2017 09:28:17 GMT):
put the add where the update is
zasamen (Mon, 18 Sep 2017 09:31:00 GMT):
thank you)
sstone1 (Mon, 18 Sep 2017 09:31:16 GMT):
the update will try to read the existing order but will fail because it hasn't been committed yet
zasamen (Mon, 18 Sep 2017 09:31:30 GMT):
It helped
zasamen (Mon, 18 Sep 2017 09:31:38 GMT):
i understand
zasamen (Mon, 18 Sep 2017 09:32:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wZNpAFFquy7ngQPcG) @sstone1 so i've said it is only stub and will be modified later.
argman (Mon, 18 Sep 2017 09:33:13 GMT):
and is there any ID-generator in composer?
sstone1 (Mon, 18 Sep 2017 09:34:51 GMT):
nope - the best practice is to generate IDs client side, and send them in via the transaction
sstone1 (Mon, 18 Sep 2017 09:35:03 GMT):
you can also use the transaction ID as the base for new IDs
argman (Mon, 18 Sep 2017 09:35:29 GMT):
ok, thanks)
sstone1 (Mon, 18 Sep 2017 09:35:30 GMT):
but UUID generation, random numbers, auto incrementing numbers are all very difficult to do on a blockchain
sstone1 (Mon, 18 Sep 2017 09:35:50 GMT):
very difficult or impossible ;)
mna2017 (Mon, 18 Sep 2017 09:35:57 GMT):
@sstone1 The .bna file which the composer creates after we write the business network and "save" it, contains a package.json in itself. Is my understanding correct?
sstone1 (Mon, 18 Sep 2017 09:36:28 GMT):
yes
sstone1 (Mon, 18 Sep 2017 09:37:18 GMT):
Message Attachments
sstone1 (Mon, 18 Sep 2017 09:37:36 GMT):
Message Attachments
sstone1 (Mon, 18 Sep 2017 09:37:45 GMT):
in both cases the business network name is `hello-network`
mna2017 (Mon, 18 Sep 2017 10:13:40 GMT):
@sstone1 Thanks for the information. I am not sure if this will make the composer server script run fine but i will try this name instead. One more question. How to edit the contents of package.json? it's contained inside the .bna file, and composer does not list package.json for editing\viewing.
mna2017 (Mon, 18 Sep 2017 10:14:49 GMT):
@sstone1 I got the answer. editing readme opens up package.json.
mna2017 (Mon, 18 Sep 2017 10:25:37 GMT):
@sstone What does the field COMPOSER_CONNECTION_PROFILE indicate in .yaml file. Currently it has the value "hlfv1".
atclik 1 (Mon, 18 Sep 2017 10:29:17 GMT):
hello everyone
I have some problems to link hyperledger composer to a V1.0.2 fabric instance. (I use the docker image hyperledger/composer-playground without any tag to raise the service in a docker cluster).
Is there a documentation on this ?
Is there any example to create a connection profile according to the crypto material defined for the hyperledger fabric (Generated via cryptogen tool)?
note: TLS is active on the hyperledger instance, a channel has been created and two peers are connected to it
atclik 1 (Mon, 18 Sep 2017 10:35:49 GMT):
@mna2017
I think that the COMPOSER_CONNECTION_PROFILE value indicates the configuration required to join an existing hyperledger instance.
It's an environment variable that is given to the docker container that hosts the composer playground.
hpurmann (Mon, 18 Sep 2017 10:37:45 GMT):
Has left the channel.
mna2017 (Mon, 18 Sep 2017 11:17:04 GMT):
@atclik 1 I have a hyperledger composer running in kubernetes cluster. The composer network has been deployed and it works fine on the composer playground UI. when I am now giving the "composer network ping -p ibm-bc-org1 -n myasset2 -i admin -s adminpw" the ping is failing and giving me the error "Could not find chaincode
mna2017 (Mon, 18 Sep 2017 11:18:19 GMT):
@atclik 1 please note that I have created hte composer connection profile and connection-credentials directory inside my home folder. I am trying to follow step #5 on this page "https://ibm-blockchain.github.io/interacting/"
mna2017 (Mon, 18 Sep 2017 11:59:25 GMT):
Team, After creating hyperledger composer on a container, I am trying to follow step #5 on this page "https://ibm-blockchain.github.io/interacting". But when I try to ping the business network that is running on composer, the "composer network ping" command returns me an error that the "chaincode could not be found".
sstone1 (Mon, 18 Sep 2017 12:01:17 GMT):
@mna2017 that means you have not deployed a business network or have got the name of the business network wrong
sstone1 (Mon, 18 Sep 2017 12:01:39 GMT):
Message Attachments
sstone1 (Mon, 18 Sep 2017 12:01:43 GMT):
please provide a screenshot of this screen in the playground
mna2017 (Mon, 18 Sep 2017 12:22:34 GMT):
@sstone1 How can i send a direct message to you? i will share all the details?
sstone1 (Mon, 18 Sep 2017 12:23:39 GMT):
can't you just post it in here?
mna2017 (Mon, 18 Sep 2017 12:25:39 GMT):
Message Attachments
mna2017 (Mon, 18 Sep 2017 12:25:59 GMT):
@sstone1 the first one i.e. defenseasset2 is the one i am trying to connect now.
mna2017 (Mon, 18 Sep 2017 12:27:01 GMT):
Message Attachments
mna2017 (Mon, 18 Sep 2017 12:27:08 GMT):
@sstone and this is the ping error that i get
sstone1 (Mon, 18 Sep 2017 12:27:52 GMT):
you've deployed the business networks to the web profile
sstone1 (Mon, 18 Sep 2017 12:28:02 GMT):
they are listed under "identities for web browser"
sstone1 (Mon, 18 Sep 2017 12:28:14 GMT):
can you clear your browser local storage and refresh the playground?
mna2017 (Mon, 18 Sep 2017 12:28:59 GMT):
@sstone1 ok let me clear the local memory. it will take a couple mins.
mna2017 (Mon, 18 Sep 2017 12:37:32 GMT):
Message Attachments
mna2017 (Mon, 18 Sep 2017 12:37:45 GMT):
@sstone1 Here's how the composer login screen now looks
sstone1 (Mon, 18 Sep 2017 12:43:52 GMT):
does it not have a "Identities for hlfabric" in there?
mna2017 (Mon, 18 Sep 2017 12:46:33 GMT):
@sstone1 currently it does not have any. please let me have a link which I can follow to create one.
jparth11 (Mon, 18 Sep 2017 12:47:04 GMT):
Has joined the channel.
mna2017 (Mon, 18 Sep 2017 12:47:12 GMT):
@sstone I have been running the same browser session for more than a week now. I had deployed and tested a business network but did not create an ID card.
jparth11 (Mon, 18 Sep 2017 12:48:56 GMT):
I want to use passport-local strategy as the REST server authentication. Can anyone help me withthis?
NikhilNanjappa (Mon, 18 Sep 2017 12:49:31 GMT):
@sstone1 - could you please confirm if the /logout bug will be fixed anytime soon ?
NikhilNanjappa (Mon, 18 Sep 2017 12:49:31 GMT):
@sstone1 - could you please confirm the status of the '/logout' bug ?
sstone1 (Mon, 18 Sep 2017 12:49:50 GMT):
@mna2017 did you clear local storage in the web browser ? by using the developer console and running `localStorage.clear()` or something else ?
mna2017 (Mon, 18 Sep 2017 12:50:40 GMT):
@sstone1 I cleared using ccleaner.
sstone1 (Mon, 18 Sep 2017 12:51:01 GMT):
can you try the developer console and `localStorage.clear()` ?
sstone1 (Mon, 18 Sep 2017 12:56:39 GMT):
@NikhilNanjappa the fix should go in this week
jparth11 (Mon, 18 Sep 2017 12:58:20 GMT):
@sstone1 I want to use passport-local strategy as the REST server authentication method. can you please help me with that?
mna2017 (Mon, 18 Sep 2017 12:58:43 GMT):
@sstone1 localStorage.clear() issued. local storage earlier showed a json string looking like an ID card. now clear.
sstone1 (Mon, 18 Sep 2017 12:58:59 GMT):
we've only tested the strategies that include existing users, not a local user store
sstone1 (Mon, 18 Sep 2017 12:59:14 GMT):
so don't really know what passport-local needs
NikhilNanjappa (Mon, 18 Sep 2017 13:09:16 GMT):
thanks @sstone1 . So it will be available with the next release(date please?)
NikhilNanjappa (Mon, 18 Sep 2017 13:09:16 GMT):
thanks @sstone1 . can you also mention the date of the next release(assuming this fix will be available as part of it)
NikhilNanjappa (Mon, 18 Sep 2017 13:09:16 GMT):
thanks @sstone1 . can you also mention the date of the next release(assuming this fix will be part of it)
mna2017 (Mon, 18 Sep 2017 13:15:04 GMT):
@sstn
mna2017 (Mon, 18 Sep 2017 13:15:48 GMT):
@sstone1 Is creation of an ID card must for deploying a business network? Currently I dont have any.
mahoney1 (Mon, 18 Sep 2017 14:27:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MDee5PtrrqEftes7m) @NikhilNanjappa Releases are done on Thursdays, next one being 21st
jparth11 (Mon, 18 Sep 2017 14:29:13 GMT):
Does python SDK for hyperledger fabric is ready to use? What is the latest stable version for python SDK for hyperledger fabric?
mahoney1 (Mon, 18 Sep 2017 14:33:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=peTb9FaKkF5zLx66Z) @atclik 1 example of a TLS connection profile here (scroll down) -> https://stackoverflow.com/questions/42309207/fabric-composer-integration-with-bluemix-blockchain-service
jparth11 (Mon, 18 Sep 2017 14:41:40 GMT):
@mahoney1 Is python SDK for hyperledger fabric v1 up and running? What is the latest stable version? Thanks.
mahoney1 (Mon, 18 Sep 2017 14:48:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YeDaziDCWZcnnRN6d) @jparth11 please ask on #fabric as this is where you're likely to find the answer to this question - also see the Docs pages here -> http://hyperledgerdocs.readthedocs.io/en/latest/pythonsdk.html
NikhilNanjappa (Mon, 18 Sep 2017 15:04:03 GMT):
@mahoney1 - awesome cheers!
conroydave (Mon, 18 Sep 2017 15:10:41 GMT):
active morning on here
HintikkaKimmo (Mon, 18 Sep 2017 15:56:54 GMT):
Has joined the channel.
Udayan_Deshmukh (Mon, 18 Sep 2017 17:10:40 GMT):
Has joined the channel.
jfodale (Mon, 18 Sep 2017 18:01:10 GMT):
Hello - I've been running some automated test scripts against my BNA using mocha and executing them through 'npm test'. I just added a new query to my BNA that gets information from the Historian. If I deploy this new BNA with the Historian query to my blockchain, it works great and I can execute the query and get data back... however 'npm test' fails every time with this error:
"Type HistorianRecord is not defined in namespace org.hyperledger.composer.system"
Anyone seen this error or might know what is causing it? Thanks!
ScottMorris (Mon, 18 Sep 2017 18:14:58 GMT):
i'm trying to run the composer-rest server and i'm getting this error message ` Cannot initialize connector "composer": Path must be a string. Received [ 'hlfv1', '3001' ]`.
ajp (Mon, 18 Sep 2017 18:22:22 GMT):
Is there any way to retrieve data placed inside of a previous transaction in the transaction processing functions? For example, we have an OrderRequest transaction which contains an array of Resource assets, and later in the process we want to be able to refer back to the request to get the list of resources. Conceptually, we don't see why OrderRequest or Order should be an asset, since we see assets as actual objects being traded, while Order is a way to exchange these assets.
ajp (Mon, 18 Sep 2017 18:23:03 GMT):
@sstone1
sbrakev (Mon, 18 Sep 2017 18:27:15 GMT):
Any good examples of the query language getting historical value changes of an object
sbrakev (Mon, 18 Sep 2017 18:27:21 GMT):
object's properties
jdockter (Mon, 18 Sep 2017 18:28:53 GMT):
@sbrakev I don't believe that support is there yet, as far as deltas between transactions, @mbwhite might know more on the latest and greatest
sbrakev (Mon, 18 Sep 2017 18:30:06 GMT):
There may be a method using the Historian to see what transactions update that particular value, right? Could I construct a response from the Historian ?
jdockter (Mon, 18 Sep 2017 18:57:49 GMT):
We do it in multiple steps. First our model has a relationship in each transaction back to our main asset...but doing this we can query transactions, of which we only have four, by resource / asset id. By querying the transaction by asset id we get back the transaction id.
Then we get a list of transactions by asset id and run a historian query.
jdockter (Mon, 18 Sep 2017 18:57:49 GMT):
We do it in multiple steps. First our model has a relationship in each transaction back to our main asset...by doing this we can query transactions, of which we only have four, by resource / asset id. By querying the transaction by asset id we get back the transaction id.
Then we get a list of transactions by asset id and run a historian query.
jdockter (Mon, 18 Sep 2017 18:57:51 GMT):
query selectHistorianByTrxId {
description: "Select from Historian"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
WHERE (transactionId==_$trxID)
}
nehalshah50 (Mon, 18 Sep 2017 19:56:58 GMT):
Hi..I used to run following command with 0.11 release
composer participant add -p hlfv1 -n com-acme-biznet -i admin -s adminpw -d
Now with 0.12 its not working…Any idea
ScottMorris (Mon, 18 Sep 2017 20:01:47 GMT):
I'm trying to setup the most recent version of master of the composer project. In the past i've just gone to the `/package` dir and run `npm install` and it sets everything up. Since I've updated to master I'm not gettin an error when it tries to setup the composer@0.13.0. here is the message I get. Is it a dependency issue with the build order?
```
> composer@0.13.0 pkgcheck /home/fvadmin/source/composer
> node ./scripts/pkgcheck.js
module.js:471
throw err;
^
Error: Cannot find module '/home/fvadmin/source/composer/packages/composer-connector-hlf/package.json'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at packageNames.forEach (/home/fvadmin/source/composer/scripts/pkgcheck.js:47:25)
at Array.forEach (native)
at Object.
ScottMorris (Mon, 18 Sep 2017 20:07:58 GMT):
It looks like the `composer-connector-hlf` dir is empty, when before it had files in it
ScottMorris (Mon, 18 Sep 2017 20:08:58 GMT):
it also looks like it doesn't exist in master of the main repo, maybe it is a merge issue with mine...
dselman (Mon, 18 Sep 2017 20:14:46 GMT):
Message Attachments
dselman (Mon, 18 Sep 2017 20:14:58 GMT):
This may be useful to someone...
dselman (Mon, 18 Sep 2017 20:15:50 GMT):
@sstone1 @mgk @EdProsser I can submit a PR for ^^^ What do you think?
ScottMorris (Mon, 18 Sep 2017 20:17:55 GMT):
I've used the PlantUML function, it was pretty neat
dselman (Mon, 18 Sep 2017 20:18:57 GMT):
I just wish there was a native JS renderer... :-/
ScottMorris (Mon, 18 Sep 2017 20:21:03 GMT):
Yeah, it took me a bit to setup, as I didn't have a handy guide. I just cobbled the tools together
ScottMorris (Mon, 18 Sep 2017 20:26:13 GMT):
I"m still getting this error about the composer-runtime-hlf file. It seems that folder no longer exists on master but it's still looking for it
ScottMorris (Mon, 18 Sep 2017 20:26:13 GMT):
I"m still getting this error about the composer-runtime-hlf file. It seems that folder no longer exists on master but it's still looking for it
Edit, for some reason the old dirs still existed, and there were more than one causing the issues but the only difference was the name connector vs. runtime, I removed both and it magically worked :)
ScottMorris (Mon, 18 Sep 2017 20:26:13 GMT):
I"m still getting this error about the composer-runtime-hlf file. It seems that folder no longer exists on master but it's still looking for it
Edit, for some reason the old dirs still existed, and there were more than one causing the issues but the only difference was the name connector vs. runtime, I removed both and it worked :)
nehalshah50 (Mon, 18 Sep 2017 20:43:21 GMT):
How do we deploy a new network to already running network? I tried creating new ID Card for admin and then I don't see option to deploy the network
nehalshah50 (Mon, 18 Sep 2017 20:45:16 GMT):
I create new ID card with PeerAdmin userID and with password 'adminpw' and then tried deploying my business network and got this error Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
nehalshah50 (Mon, 18 Sep 2017 20:47:47 GMT):
If I use 'admin' with password 'adminpw' then I get Error: Error trying install chaincode. Error: chaincode error (status: 500, message: Authorization for INSTALL has been denied (error-Failed verifying that proposal's creator satisfies local MSP principal during channelless check policy with policy [Admins]: [This identity is not an admin]))
davidkel (Mon, 18 Sep 2017 20:59:08 GMT):
@ScottMorris you should delete that folder, with it deleted pkgcheck will work
davidkel (Mon, 18 Sep 2017 20:59:08 GMT):
@ScottMorris you should delete that folder, with it deleted pkgcheck will work. Which I just read you had done :-)
ScottMorris (Mon, 18 Sep 2017 21:00:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wbYCt5YYi7QB2b5yD) @davidkel I'd just missed that there were two with the same name, lol. Must be monday
nehalshah50 (Mon, 18 Sep 2017 21:03:42 GMT):
I have also tried clearing browser cache but still keep getting error ...... Error: chaincode error (status: 500, message: Authorization for INSTALL has been denied (error-Failed verifying that proposal's creator satisfies local MSP principal during channelless check policy with policy [Admins]: [This identity is not an admin]))
nehalshah50 (Mon, 18 Sep 2017 21:05:49 GMT):
Also...how do i get org-acme-biznet installed?
davidkel (Mon, 18 Sep 2017 21:10:16 GMT):
@nehalshah50 the identity 'admin' comes from the CA Server and is basically the bootstrap admin id for the CA server. ie it is the only id to begin with and it can issue new identities. It has no admin authority for the fabric and as such is not able to perform any admin activities on the running network such as install chaincode or instantiate chaincode which is basically the error you are seeing. PeerAdmin is something our development tools server setups up for you so that you can deploy but it's name is irrelevant, it is purely an alias for correctly imported crypto material that has admin authority not only on the peer but the channel as well.
mahoney1 (Mon, 18 Sep 2017 21:12:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rASwmFBGN98SZ3Zxk) @nehalshah50 what is the error - example ```composer participant add -p hlfv1 -n 'com-acme-biznet ' -i admin -s adminpw -d '{"$class":"net.biz.digitalPropertyNetwork.Person","personId":"mae@biznet.org","firstName":"Mae","lastName":"Smith"}' ```
mahoney1 (Mon, 18 Sep 2017 21:12:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rASwmFBGN98SZ3Zxk) @nehalshah50 what is your error? - example ```composer participant add -p hlfv1 -n 'com-acme-biznet ' -i admin -s adminpw -d '{"$class":"net.biz.digitalPropertyNetwork.Person","personId":"mae@biznet.org","firstName":"Mae","lastName":"Smith"}' ```
nehalshah50 (Mon, 18 Sep 2017 21:14:23 GMT):
@davidkel I can't exact steps with new release.... After I start my network using ./startFabric.sh .....I use composer-playground command to start the playground locally....Then I try creating new ID card with default selection....But as I use mac I give keyvalue path as ${HOME}/.composer-credentials....then I select to create a new user with 'admin', 'adminpw' with Peer Admin and admin role ..then I am trying to deploy new network and I keep getting error
nehalshah50 (Mon, 18 Sep 2017 21:14:23 GMT):
@davidkel I can't find exact steps with new release.... After I start my network using ./startFabric.sh .....I use composer-playground command to start the playground locally....Then I try creating new ID card with default selection....But as I use mac I give keyvalue path as ${HOME}/.composer-credentials....then I select to create a new user with 'admin', 'adminpw' with Peer Admin and admin role ..then I am trying to deploy new network and I keep getting error
nehalshah50 (Mon, 18 Sep 2017 21:15:44 GMT):
it would nice if exact steps are given in online documentation
sbrakev (Mon, 18 Sep 2017 21:16:29 GMT):
@dselman @davidkel @sstone1 is there a way to quickly generate a class diagram from my cto file? Wasn't there a tool?
conroydave (Mon, 18 Sep 2017 21:17:56 GMT):
you can use compose rest server ,which generates an api you can view with explorer
conroydave (Mon, 18 Sep 2017 21:18:01 GMT):
or i think node red can also do some ui
sbrakev (Mon, 18 Sep 2017 21:19:43 GMT):
Yes I am comfortable getting the rest server built, but I thought there was way to generate the UML diagram simply. @mahoney1 or maybe @jdockter do you know?
nehalshah50 (Mon, 18 Sep 2017 21:58:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CpDwssrr6XXpsMX3n) @mahoney1 I think my problem is not able to set up the com-acme-biznet network successfully with this new ID card process
jdockter (Mon, 18 Sep 2017 21:58:52 GMT):
@sbrakev I remember talks of that in the past but never saw it done. I'm sure @sstone1 would know :)
sbrakev (Mon, 18 Sep 2017 21:59:14 GMT):
Those lazy boys are probably out of the office. Always slacking, that Composer crew...
DennisM330 (Tue, 19 Sep 2017 01:30:59 GMT):
Passport has a variety of different authentication.
DennisM330 (Tue, 19 Sep 2017 01:32:38 GMT):
How does one know what values COMPOSER_PROVIDER supports to support the different passport strategies
conroydave (Tue, 19 Sep 2017 02:35:50 GMT):
trial and error ;-)
conroydave (Tue, 19 Sep 2017 02:36:15 GMT):
i got 2-3 of them working the other day (one at a time)
conroydave (Tue, 19 Sep 2017 02:36:24 GMT):
is there one in particular you are struggling with
conroydave (Tue, 19 Sep 2017 02:39:33 GMT):
i usually would visit the repo of the specific passport implementation ,like if it was passport-google-oauth , or passport-auth0 , and look what their tutorials included for field names
conroydave (Tue, 19 Sep 2017 02:39:50 GMT):
and with a bit of tinkering had success
natchapon.pa (Tue, 19 Sep 2017 03:22:37 GMT):
Has joined the channel.
zekzit (Tue, 19 Sep 2017 04:48:17 GMT):
Has joined the channel.
pxuereb (Tue, 19 Sep 2017 06:03:23 GMT):
Hi, i'm trying to deploy a composer archive to a multi peer fabric network. IT looks like PeerAdmin doesn't have access to Fabric, as i am getting errors such as Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
pxuereb (Tue, 19 Sep 2017 06:04:04 GMT):
I've tried importing an identity via composer identity import -p org1 -u admin -c /home/a/BC/yeasy/hyperledger/1.0/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem -k /home/a/BC/yeasy/hyperledger/1.0/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk
pxuereb (Tue, 19 Sep 2017 06:04:48 GMT):
but when i use this identity as part of the parameter enrollId i am receiving an Authorization Failed error
pxuereb (Tue, 19 Sep 2017 06:04:58 GMT):
What am i doing wrong?
mna2017 (Tue, 19 Sep 2017 06:39:24 GMT):
Team, I have a composer playground running over kubernetes container. I have the composer network working fine(I am able to test the transaction). Despite all this I am not able to ping the business network. 1) Does the business network need anything else to get deployed? 2) I dont have any ID cards on my playground dashboard. Is it a problem?
sagarnikam123 (Tue, 19 Sep 2017 07:53:51 GMT):
Has joined the channel.
sagarnikam123 (Tue, 19 Sep 2017 07:56:13 GMT):
While executing composer playground online tutorials, https://hyperledger.github.io/composer/tutorials/playground-guide.html
I got error in **Step Five: Adding a transaction processor script file**
**Error** - t: Namespace is not defined for type org.acme.mynetwork.Trade
cweiers (Tue, 19 Sep 2017 08:37:57 GMT):
blockchain
cweiers (Tue, 19 Sep 2017 08:42:02 GMT):
well
cweiers (Tue, 19 Sep 2017 08:43:06 GMT):
that wasnt intended :(. Anyhow. I wanted to ask how passport.js-based access tokens are linked to wallets in a multi-user REST server setup
cweiers (Tue, 19 Sep 2017 08:49:53 GMT):
i read the story here : https://github.com/hyperledger/composer/issues/142 , and I set up a multi-user enabled composer-rest-server with different participants, for whom I issued identities. I stored the enrolment id/secret in wallets "belonging" to the participants. I still don`t understand wether there is a one-to-one mapping between wallet and (lets say) github-account used for authorization, and how that connection is made
lucrezia.dm (Tue, 19 Sep 2017 08:55:10 GMT):
Hi community! :-)
I have a problem while editinig pii-network example. Would someone help me? thank youuu
lucrezia.dm (Tue, 19 Sep 2017 08:55:10 GMT):
Hi community! :-)
I have a problem while editinig pii-network example. Would someone help me? thank youuu
https://stackoverflow.com/questions/46073996/pii-network-acl-permission-authorize-revoke-access-network-but-not-to-himself
zekzit (Tue, 19 Sep 2017 09:17:31 GMT):
Hi! I want to do a scenario about participant owns multiple assets and want to lend to other participants in a period of time. Do anyone has any ideas?
atclik 1 (Tue, 19 Sep 2017 09:20:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FrqgNR4XcDxSoZymw) @mahoney1
I am currently playing with hyperleder V1.0.2. (This composer connection profile seems to be crafted for version 0.6 of hyperledger fabric)
In addition, I don't use bluemix but a local docker orchestrator and I am not sure about which certificates to use in my case.
Thank you very much for you help and sorry for the lack of detail in my previous post. :smile:
mahoney1 (Tue, 19 Sep 2017 09:27:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=td5CnBQ2oyPCTr8CM) @sbrakev that humour @sbrakev, should bottle it like mineral water and sell it :-) Try this message thread -> https://chat.hyperledger.org/channel/composer?msg=hixbAdncpoRhuixWG or look for the link under 'Starred Messages' on the right :-) :star:
rthatcher (Tue, 19 Sep 2017 09:27:39 GMT):
@mna2017 - I have just tested this and can Ping my network which is hosted on IBM Bluemix Containers. I have followed these instructions exactly:
/home/ibm/.composer-credentials/ibm-bc-org1
What error are you seeing?
mna2017 (Tue, 19 Sep 2017 09:32:00 GMT):
@rthatcher I am pasting the screenshot
mna2017 (Tue, 19 Sep 2017 09:32:36 GMT):
Message Attachments
mna2017 (Tue, 19 Sep 2017 09:34:17 GMT):
@rthatcher Do I need to deploy the business network on the container using "composer network deploy" command?
rthatcher (Tue, 19 Sep 2017 09:37:43 GMT):
@mna2017 - yes you need to deploy a network before you can ping it. You can either deploy it using Composer Playground in the Browser, or if you have a .BNA file already you can deploy it on the command line. If you are new to Composer and Hyperledger Fabric I would suggest using the Playground in the first instance. If you deploy an existing .BNA file - make sure it is the same version.
mna2017 (Tue, 19 Sep 2017 09:38:04 GMT):
@rhat
mna2017 (Tue, 19 Sep 2017 09:38:45 GMT):
@rthatcher ok. I have already clicked on "update" button on composer playground in browser.
mna2017 (Tue, 19 Sep 2017 09:39:18 GMT):
@rthatcher And i got the "deployed successfull" tooltip message soon after that. But despite this the ping does not work.
mna2017 (Tue, 19 Sep 2017 09:39:56 GMT):
@rthatcher Do I need to have an ID card on the composer playground for the business network to be deployed on the container?
rthatcher (Tue, 19 Sep 2017 09:42:59 GMT):
@cweiers - the Default Wallet is set up on a 'per authenticated' basis - so in many test cases, a default wallet for each GitHub user you test with. However do be aware the the Composer REST server will store these details in memory until it is restarted unless you have set up a persistent data store. The example persistent data store is MongoDB.
rthatcher (Tue, 19 Sep 2017 09:49:28 GMT):
Message Attachments
rthatcher (Tue, 19 Sep 2017 09:49:34 GMT):
@mna2017 - do you get the same error after you have deployed the network? I assume that you are connecting to your own Playground container on Port :31080 ? Can you send a screenshot of "My Wallet" from the Playground - similar to mine below
mna2017 (Tue, 19 Sep 2017 09:56:42 GMT):
Message Attachments
mna2017 (Tue, 19 Sep 2017 09:57:13 GMT):
@rthatcher here it is. Yes I am running composer playgroung on port:31080 of my own playground container
mahoney1 (Tue, 19 Sep 2017 09:57:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NXuFnjpxTg5jzuCAm) @atclik 1 please see this Stack Overflow -> https://stackoverflow.com/questions/45567700/hyperledger-composer-error-when-using-tls and here -> https://stackoverflow.com/questions/46191040/hyperledger-composer-connection-issue-when-using-tls - if these (and the links referred ot in the answers) don't help, suggest to post full details, outputs, errors / evidence on Stack Overflow - thanks
cweiers (Tue, 19 Sep 2017 09:57:33 GMT):
@rthatcher ah, so if I set the default wallet, this is not a "global" setting for all clients, but just a setting for the currently authenticated user? As in, if I use a different github account for auth, I have a separate setting ? What happens if I use different accounts on the same browser ? i.e. I have access tokens from two different github accounts in my browser cookie storage ?
pxuereb (Tue, 19 Sep 2017 10:09:47 GMT):
composer runtime install
TomaszRozmus (Tue, 19 Sep 2017 10:11:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tcDXycn96GA4tffop) @dselman Thanks very
dselman (Tue, 19 Sep 2017 10:12:13 GMT):
:ok_hand:
rthatcher (Tue, 19 Sep 2017 10:13:00 GMT):
@cweiers - can I suggest that you test using different browsers for different users (clearing history too) - and verify it works as expected - then experiment with other combinations? :-)
rthatcher (Tue, 19 Sep 2017 10:21:34 GMT):
@mna2017 - so your error on the command line indicates that you can reach the Fabric that your connection profile points to, but that a network of that name cannot be found. Can you create a screenshot like mine showing the various folders and showing your connection.json file
rthatcher (Tue, 19 Sep 2017 10:21:58 GMT):
Message Attachments
umamani113 (Tue, 19 Sep 2017 10:23:11 GMT):
Has joined the channel.
umamani113 (Tue, 19 Sep 2017 10:26:47 GMT):
Hi, I m new to composer, I've done all setups and following composer tutorial, I've edited some code in trade sample network and tried to get bna file using "npm install" command. I m getting error like function 'createBO' process 'Asset' which is not a transaction...Can you help me to resolve this error
mna2017 (Tue, 19 Sep 2017 10:28:22 GMT):
Message Attachments
mna2017 (Tue, 19 Sep 2017 10:28:28 GMT):
@rthatcher here it is. the connection profile.
mna2017 (Tue, 19 Sep 2017 10:31:03 GMT):
Message Attachments
mna2017 (Tue, 19 Sep 2017 10:31:59 GMT):
@rthatcher And another screenshot where i want to show that I have both ".composer-connection-profiles/ibm-bc-org1" and ".composer-credentials/ibm-bc-org1" in my home directory
rthatcher (Tue, 19 Sep 2017 10:39:19 GMT):
@mna2017 - I think we have identified the problem ... You have deployed your network just in your local browser storage, not to your underlying fabric. You will see in my screenshot below that the Playground allows you co connect to a Web Browser test environment, or to a real fabric. You may see this further down in your browser window, or you may need to reset your browser/composer session.
rthatcher (Tue, 19 Sep 2017 10:39:50 GMT):
Message Attachments
mna2017 (Tue, 19 Sep 2017 10:41:40 GMT):
@rthatcher Thanks for catching the annoying issue. Now, how do I deploy teh business to underlying fabric. Clicking on the update button deploys it by default on the browser I guess.
mna2017 (Tue, 19 Sep 2017 10:44:21 GMT):
@rthatcher there's nothing further down my browser screen. so that means I dont have a identity cards for hlfv1.
rthatcher (Tue, 19 Sep 2017 10:44:29 GMT):
@mna2017 - first I would export the Business Network you have to save your work, and then you can import it later. Next I would clear browser history and restart the browser and hit your composer server on the Container service and you should be ok from there.
mna2017 (Tue, 19 Sep 2017 10:49:46 GMT):
@rthatcher ok. Thanks for the help. Let me start all over again. I am deleting all the pods i created on the cluster. and will create all of them all over again.
SurendraKushwaha (Tue, 19 Sep 2017 10:52:00 GMT):
Has joined the channel.
pxuereb (Tue, 19 Sep 2017 11:11:25 GMT):
Hi, really struggling to get anywhere with getting composer to run on top of an existing fabric setup
pxuereb (Tue, 19 Sep 2017 11:12:06 GMT):
The basic example and connection profile works fine, but when i try and run composer on top of a fabric setup i keep getting certificate errors
pxuereb (Tue, 19 Sep 2017 11:13:07 GMT):
what are the steps to run? should i be running this as the first step? composer identity import -p org1 -u PeerAdmin -c /home/a/BC/yeasy/hyperledger/1.0/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem -k /home/a/BC/yeasy/hyperledger/1.0/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/1b595cb4d43779536a3e96b458352ee809494e6cd82c05c0adaff46a3ec1ca28_sk
pxuereb (Tue, 19 Sep 2017 11:13:23 GMT):
org1 is my connection profile
pxuereb (Tue, 19 Sep 2017 11:15:23 GMT):
The CA was started with this command sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk -b admin:adminpw -d'
pxuereb (Tue, 19 Sep 2017 11:15:43 GMT):
should i be importing that cert and key with as the enrollment 'admin'?
mna2017 (Tue, 19 Sep 2017 11:34:07 GMT):
Team, what does the command composer-rest-server do? does it create a node application somewhere and store it locally?
cweiers (Tue, 19 Sep 2017 11:47:30 GMT):
@mna2017 have a look at https://www.npmjs.com/package/composer-rest-server (the npm package description). It is basically a Loopback application. Anything the REST server would save is stored in-memory and gone when you stop the rest-server, unless you use a different loopback connector (for example https://github.com/strongloop/loopback-connector-mongodb ) to store the data in a more permanent database
davidkel (Tue, 19 Sep 2017 11:57:03 GMT):
@pxuereb In order to install the composer runtime using the `composer install runtime` command you need to have imported crypto material which is defined as an admin for the peer you plan to install on. If you are using the cryptogen structure then each organisation defines an admin user which you should ensure that each of the peers in that organisation uses that admin user (the fabric examples should already do this). That user can be found in the users directory of the organisations for the peer, you need the file in msp/signcert for the public certificate and the msp/keystore for the private key for the `composer identity import` command. You can all that user anything you like, but that is the user you specify for the -i flag. Then you need to start your business network, for that you need to use a channel admin identity. I'm pretty sure all the fabric examples make the peer admins channel admins as well. It all depends on how you have set your network up, unfortunately in order to composer on more complex networks you need to have an understanding of how the networks and channels have been configured in order to utilise the composer commands to set composer up appropriately
davidkel (Tue, 19 Sep 2017 11:57:03 GMT):
@pxuereb In order to install the composer runtime using the `composer install runtime` command you need to have imported crypto material which is defined as an admin for the peer you plan to install on. If you are using the cryptogen structure then each organisation defines an admin user which you should ensure that each of the peers in that organisation uses that admin user (the fabric examples should already do this). That user can be found in the users directory of the organisations for the peer, you need the file in msp/signcert for the public certificate and the msp/keystore for the private key for the `composer identity import` command. You can call that user anything you like, but that is the user you specify for the -i flag. Then you need to start your business network, for that you need to use a channel admin identity. I'm pretty sure all the fabric examples make the peer admins channel admins as well so you would use `composer network start` and specify that user for the -i option. It all depends on how you have set your network up, unfortunately in order to composer on more complex networks you need to have an understanding of how the networks and channels have been configured in order to utilise the composer commands to set composer up appropriately
pxuereb (Tue, 19 Sep 2017 12:12:19 GMT):
Thanks @davidkel . I can see a single signcert, however my keystore folder has a number of private keys. How do i identify which is the correct private key for my certificate?
davidkel (Tue, 19 Sep 2017 12:14:04 GMT):
@pxuereb Sorry I have no idea, cryptogen would only put 1 entry in there as far as I am aware so don't know where the others would have come from.
davidkel (Tue, 19 Sep 2017 12:14:04 GMT):
@pxuereb Sorry I have no idea, cryptogen would only put 1 entry in there as far as I am aware so don't know where the others would have come from. If you are running cryptogen yourself then I would clear everything out and regen. If you are working with an already setup network then I would suggest working with whoever created that network to provide information about it's setup
mna2017 (Tue, 19 Sep 2017 12:29:12 GMT):
@cweiers ok. Thanks for the link. My idea is to run this node application on cloud so that it runs 24/7 hence exposing the endpoints all the time, has a global application URL that external application can connect to. I hope memory should not be an issue for small use cases.
czar0 (Tue, 19 Sep 2017 13:16:54 GMT):
Hi all, I want to report a bug, not sure someone mentioned already before (I could not find references in here or in github):
I registered some issues using`cucumber@3.0.0` together with `composer-cucumber-steps@0.12.1`
```
✖ Before # node_modules/composer-cucumber-steps/lib/hooks.js:21
TypeError: Cannot read property 'scenario' of undefined
```
Everything seems to be solved rolling back to `cucumber@2.3.1`.
czar0 (Tue, 19 Sep 2017 13:16:54 GMT):
Hi all, I want to report a bug, not sure someone mentioned already before (I could not find references in here or in github):
I registered some issues using `cucumber@3.0.0` together with `composer-cucumber-steps@0.12.1`
```
✖ Before # node_modules/composer-cucumber-steps/lib/hooks.js:21
TypeError: Cannot read property 'scenario' of undefined
```
Everything seems to be solved rolling back to `cucumber@2.3.1`.
jorgedr (Tue, 19 Sep 2017 14:39:26 GMT):
Hello guys, I am using the latest Composer Playground UI. I am having a hard time figuring out how to get to the connection profile. There used to be a button on the top right hand side that would allow me to switch connection profiles but I no longer where to do that.
jorgedr (Tue, 19 Sep 2017 14:39:26 GMT):
Hello guys, I am using the latest Composer Playground UI. I am having a hard time figuring out how to get to the connection profile. There used to be a button on the top right hand side that would allow me to switch connection profiles but I no longer where to do that. Any pointers would be appreciated! Thank you :)
jorgedr (Tue, 19 Sep 2017 14:39:26 GMT):
Hello guys, I am using the latest Composer Playground UI. I am having a hard time figuring out how to get to the connection profile. There used to be a button on the top right hand side that would allow me to switch connection profiles but I no longer where to do that. Any pointers would be appreciated! Thank you :) PS: Composer Playground is running as a docker image.
nehalshah50 (Tue, 19 Sep 2017 15:15:59 GMT):
Message Attachments
nehalshah50 (Tue, 19 Sep 2017 15:15:59 GMT):
Message Attachments
nehalshah50 (Tue, 19 Sep 2017 15:15:59 GMT):
Message Attachments
dlubom (Tue, 19 Sep 2017 15:22:03 GMT):
hello, is it possible to run docker composer on windows?
dlubom (Tue, 19 Sep 2017 15:22:03 GMT):
hello, is it possible to run Hyperledger composer on windows?
dlubom (Tue, 19 Sep 2017 15:22:03 GMT):
hello, is it possible to run Hyperledger Composer on windows?
bestbeforetoday (Tue, 19 Sep 2017 15:27:26 GMT):
@jorgedr Connection profile, business network name and the identity used to connect are now all wrapped up together as an Identity Card. So rather than switching connection profiles, you log out (drop-down top-right of the Playground UI) and connect using a different Identity Card. The first few steps of the (Playground tutorial) [https://hyperledger.github.io/composer/tutorials/playground-guide.html] might make this clearer.
jorgedr (Tue, 19 Sep 2017 15:41:23 GMT):
Thanks @bestbeforetoday ! Will take a look.
Amjadnz (Tue, 19 Sep 2017 15:51:42 GMT):
@sstone1 - can you please guide me if I have to use a complex query process to query for more than 1 field with 1 or more and/or conditions?
Amjadnz (Tue, 19 Sep 2017 15:53:41 GMT):
Can I use the same JAVA SCRIPT functions - with any logic to get the business rules driving?
Amjadnz (Tue, 19 Sep 2017 15:54:17 GMT):
In Hyperledger Fabric 1.0 we were using couch db as our state DB and it allowed for complex query - hence was the basis of my query.
caroline-church (Tue, 19 Sep 2017 15:57:57 GMT):
Hi @nehalshah50 i think the problem is that you also need a card with the channelAdmin role. So if the identity you imported has the privileges to install and start the business network, when you create the id card you need to check both roles.
nehalshah50 (Tue, 19 Sep 2017 16:02:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FFmhEHFNnqqTrPRa6) @caroline-church I tried that..the option showed up but then I keep getting this error when I try to deploy my custom .bna file..... Error: Error trying install chaincode. Error: chaincode error (status: 500, message: Authorization for INSTALL has been denied (error-Failed verifying that proposal's creator satisfies local MSP principal during channelless check policy with policy [Admins]: [This identity is not an admin]))
caroline-church (Tue, 19 Sep 2017 16:03:50 GMT):
that means that the certificate and private key you used when you imported the identity using the import identity command doesn't allow you to be able to install the network
nehalshah50 (Tue, 19 Sep 2017 16:06:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HQ2uPGSvrEGwyCPCb) @caroline-church I am running this command ..... composer identity import -p hlfv1 -u PeerAdmin -c ./fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin\@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k ./fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin\@org1.example.com/msp/keystore/114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457_sk
caroline-church (Tue, 19 Sep 2017 16:09:08 GMT):
where did you get the certificate and private key from?
nehalshah50 (Tue, 19 Sep 2017 16:09:54 GMT):
it came with the following command curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip
nehalshah50 (Tue, 19 Sep 2017 16:10:53 GMT):
Instructions are given here at https://hyperledger.github.io/composer/business-network/bnd-deploy.html are not clear
caroline-church (Tue, 19 Sep 2017 16:11:00 GMT):
ahh if you are using that then you can just run the `createConnectionProfile` script and that will create the profile and do the identtiy import for you
caroline-church (Tue, 19 Sep 2017 16:11:25 GMT):
then in the playground you can create the id card
nehalshah50 (Tue, 19 Sep 2017 16:12:06 GMT):
I usually have shell script which does all that...i used to run createConnectionProfile with 0.11 release
nehalshah50 (Tue, 19 Sep 2017 16:12:08 GMT):
~/Documents/Fabric/1.0/fabric-tools/stopFabric.sh
~/Documents/Fabric/1.0/fabric-tools/startFabric.sh
rm ~/.composer-credentials/*
~/Documents/Fabric/1.0/fabric-tools/createComposerProfile.sh
caroline-church (Tue, 19 Sep 2017 16:12:40 GMT):
yes i meant the `createComposerProfile.sh` script
caroline-church (Tue, 19 Sep 2017 16:13:00 GMT):
you won't need to do the identity import after running that script
nehalshah50 (Tue, 19 Sep 2017 16:13:05 GMT):
looks like the createComposerProfile doesn't bring the correct certificate for PeerAdmin under ${HOME}/.composer-credentials folder
caroline-church (Tue, 19 Sep 2017 16:14:56 GMT):
if you try running that script again and then try the deploy again does it work?
nehalshah50 (Tue, 19 Sep 2017 16:15:08 GMT):
giving it one more try
nehalshah50 (Tue, 19 Sep 2017 16:16:54 GMT):
I get ... Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
nehalshah50 (Tue, 19 Sep 2017 16:17:29 GMT):
looks like there is issue with createComposerProfile.sh script
mahoney1 (Tue, 19 Sep 2017 16:18:14 GMT):
fyi @here - the Community call tomorrow (Weds) will be at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> URL best regards Paul
Jakeeyturner (Tue, 19 Sep 2017 16:20:12 GMT):
@mahoney1 Hey, I'm assuming it'll be recorded?
caroline-church (Tue, 19 Sep 2017 16:21:15 GMT):
@nehalshah50 how are you running playground?
caroline-church (Tue, 19 Sep 2017 16:21:15 GMT):
@nehalshah50 how are you running playground? Is it through a docker image
nehalshah50 (Tue, 19 Sep 2017 16:21:51 GMT):
the createComposerProfile.sh script copies credentials from ./fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin\@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem
nehalshah50 (Tue, 19 Sep 2017 16:21:51 GMT):
the createComposerProfile.sh script copies credentials from ./fabric-scripts/hlfv1/composer/creds but when I run the identity import i bring it from crypto-config/peerOrganizations/org1.example.com/users/Admin\@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem
nehalshah50 (Tue, 19 Sep 2017 16:22:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=p7a4SKpbTKy7CRW3K) @caroline-church I just run 'composer-playground'
caroline-church (Tue, 19 Sep 2017 16:23:29 GMT):
ok so at some point you did `npm install -g composer-playground`?
mahoney1 (Tue, 19 Sep 2017 16:25:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vq35Lb4qYFK4TwDhA) @Jakeeyturner oh yes, certainly will be..
Jakeeyturner (Tue, 19 Sep 2017 16:26:22 GMT):
Thanks Paul!
nehalshah50 (Tue, 19 Sep 2017 16:26:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WipobaCwvJaz6LDYA) @caroline-church Yes
caroline-church (Tue, 19 Sep 2017 16:28:12 GMT):
@nehalshah50 what i suggest you try then is when you create an id card you can paste in the certificates try that, i suggest you delete the PeerAdmin cards you already have
nehalshah50 (Tue, 19 Sep 2017 16:32:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yEDdSFSyTFbTmssqy) @caroline-church I am following this steps....1) stopFabric.sh 2)startFabric.sh 3) createComposerProfile.sh 4) run composer-playground 5) Open Chrome Ignito window and goto localhost:8080 6) create new Card 7) put 'hlfv1' for connection name and ${HOME}/.composer-credentials for the keystore location 8) use enrollment Id/secret option and put PeerAdmin and adminpw for the userid/secret and check two checkboxes for the PeerAdmin and admin role 9) select deploy network option 10) select drag and drop option for custom .bna file 11) give business network name 12)click deploy
caroline-church (Tue, 19 Sep 2017 16:32:55 GMT):
and that gives an error?
nehalshah50 (Tue, 19 Sep 2017 16:32:59 GMT):
yes
caroline-church (Tue, 19 Sep 2017 16:33:25 GMT):
ok so instead of using a id/secret you can try using the certificate option
nehalshah50 (Tue, 19 Sep 2017 16:33:26 GMT):
The only other way I could make it work was to deploy network using command line
nehalshah50 (Tue, 19 Sep 2017 16:33:38 GMT):
composer network deploy -p hlfv1 -a ~/Documents/Fabric/1.0/fishnetwork/fish-trade-network.bna -i PeerAdmin -s adminpw
caroline-church (Tue, 19 Sep 2017 16:33:46 GMT):
that worked?
nehalshah50 (Tue, 19 Sep 2017 16:33:52 GMT):
yes
nehalshah50 (Tue, 19 Sep 2017 16:34:23 GMT):
if I pick certificate option where do I bring certificate from?
caroline-church (Tue, 19 Sep 2017 16:34:57 GMT):
if the deploy works from the command line then it must be something wrong in playground
caroline-church (Tue, 19 Sep 2017 16:35:09 GMT):
do you have lots of id cards for the connection profile you are using?
nehalshah50 (Tue, 19 Sep 2017 16:35:35 GMT):
I also noticed weird thing....when I try to deploy my custom .bna then it creates $HOME/.composer-credentials folder in the same location where the bna file is located
nehalshah50 (Tue, 19 Sep 2017 16:36:36 GMT):
Message Attachments
caroline-church (Tue, 19 Sep 2017 16:37:15 GMT):
can you show us your connection profile?
nehalshah50 (Tue, 19 Sep 2017 16:37:26 GMT):
It also creates another connection profile folder
nehalshah50 (Tue, 19 Sep 2017 16:37:36 GMT):
Message Attachments
caroline-church (Tue, 19 Sep 2017 16:38:08 GMT):
so the connection profile folder is expect. Playground creates the unexpected one
nehalshah50 (Tue, 19 Sep 2017 16:39:01 GMT):
If you have time we can do a quick webex...i can send DM you my webex
caroline-church (Tue, 19 Sep 2017 16:39:23 GMT):
sure
DennisM330 (Tue, 19 Sep 2017 16:40:53 GMT):
@conroydave Trying JWT, a lot of trial and error indeed. JWT is tricky as the encryption key is tricky to pass in an environment variable.
conroydave (Tue, 19 Sep 2017 16:42:54 GMT):
if the login/self-register had some working examples this ecosystem would explode
conroydave (Tue, 19 Sep 2017 16:43:15 GMT):
we can easily create business networks but have no easy management of users
nileshyjadhav (Tue, 19 Sep 2017 17:17:32 GMT):
Has joined the channel.
ScottMorris (Tue, 19 Sep 2017 17:24:21 GMT):
Running on the master branch my ACL rules issues have vanished...has there been work on the underlying ACL framework since 12.1?
harsha (Tue, 19 Sep 2017 19:20:17 GMT):
So how can one kick off the karma related testing to make use of `firefox` as browser instead of `google-chrome`
davidkel (Tue, 19 Sep 2017 19:24:48 GMT):
@harsha I've not tried it, but it is probably changing the entry in composer-playground/config/karma.conf.js from Chrome to Firefox.
harsha (Tue, 19 Sep 2017 19:27:01 GMT):
@davidkel Cool, I will give this a try, also I am trying to change occurrences of `karma-chrome-launcher` inside package.json inorder to get the whole test suite working across ppc64le arch.
harsha (Tue, 19 Sep 2017 19:27:01 GMT):
@davidkel Cool, I will give this a try, also I am trying to change occurrences of `karma-chrome-launcher` inside package.json for every package inorder to get the whole test suite working across ppc64le arch.
harsha (Tue, 19 Sep 2017 19:27:01 GMT):
@davidkel Cool, I will give this a try, also I am trying to change occurrences of `karma-chrome-launcher` inside package.json for every package, inorder to get the whole test suite working across ppc64le arch.
davidkel (Tue, 19 Sep 2017 19:28:01 GMT):
Yeah that's true you would need a karma plugin for firefox
TomaszRozmus (Tue, 19 Sep 2017 21:10:56 GMT):
Hi , having Relationship to the object i.e Asset like {id=org.bctrade.Commodity#PID:1}, what is the quickest method to get access to attributes of this Asset (i.e to compare, change etc)
glotov (Tue, 19 Sep 2017 21:26:07 GMT):
Has joined the channel.
ykcai (Tue, 19 Sep 2017 21:54:12 GMT):
Has joined the channel.
ykcai (Tue, 19 Sep 2017 21:55:28 GMT):
Hey everyone, if anyone has time to answer a few questions about composer from someone that just started working with it, it would be appreciated!
- We are currently in the process of moving from hlfv0.6 to hlfv1.0. Looking at Composer, it seems like I will have to convert my Go chaincode into a Composer model and Javascript functions. This is quite a bit of work for us as we had a fairly long and complex Go chaincode. Is there any process or manual that can guide us through this migration?
- Composer seems to add quite a bit of abstraction on top of Fabric - is there any way to see the underlying cryptography?
For example
- Is there a way to see transaction hashes?
- Is there a way to examine past blocks?
- Composer still relies on a locally deployed fabric running on docker? Can i do this on Bluemix?]
- A Guide into using the Hyperledger Composer API and how to write JS functions. Maybe a collective process made by someone that did this before?
sbrakev (Wed, 20 Sep 2017 00:08:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=38DHiDDaksqzyNjyM) @jdockter do you have a sample model file I can peep at for this? I'm trying to get some historical querying done, and have 1 main asset that changes 1 value over time I need to track.
sbrakev (Wed, 20 Sep 2017 00:17:13 GMT):
also, @jdockter how do you associate the txn ID to the array of transactions in the case in your logic?
DannyWong (Wed, 20 Sep 2017 05:27:53 GMT):
Anyone in community has tried to run some simple load testing / perf test with multi-host (multi-instances) nodejs middleware + composer app + multihost Fabric?
DannyWong (Wed, 20 Sep 2017 05:44:01 GMT):
How can i get rid of the chaincode log `IdentityManager :getIdentity() Error: The current identity has not been registered:`
DannyWong (Wed, 20 Sep 2017 05:44:11 GMT):
obviously i missed out some config
dlubom (Wed, 20 Sep 2017 06:37:49 GMT):
hello, is it possible to run Hyperledger Composer on Windows?
WatserAanDeHand (Wed, 20 Sep 2017 06:39:25 GMT):
@dlubom yes
WatserAanDeHand (Wed, 20 Sep 2017 06:39:39 GMT):
all tech needed to run composer is cross-platform
WatserAanDeHand (Wed, 20 Sep 2017 06:39:53 GMT):
node, npm, git, hyperledger, docker etc.
davidkel (Wed, 20 Sep 2017 06:54:10 GMT):
@dlubom there are lots of issues trying to run composer on windows and as such it isn't a supported platform, sorry
davidkel (Wed, 20 Sep 2017 07:05:24 GMT):
@DannyWong are you using the admin identity ?
DannyWong (Wed, 20 Sep 2017 07:05:46 GMT):
yes.. as I am building a sample app..
davidkel (Wed, 20 Sep 2017 07:07:42 GMT):
Then that could be the cause of this log entry, currently any identity that has a common name with the text admin is like a super user and unless done explicity isn't bound to any participant in the registry
DannyWong (Wed, 20 Sep 2017 07:07:45 GMT):
Also, the timeout in connection profile `https://hyperledger.github.io/composer/reference/connectionprofile.html` is in what unit?...
davidkel (Wed, 20 Sep 2017 07:08:01 GMT):
seconds
DannyWong (Wed, 20 Sep 2017 07:08:07 GMT):
ok got it, thanks.
DannyWong (Wed, 20 Sep 2017 07:08:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oCjxCSJeeAE2jxfyH) @davidkel ic ...
davidkel (Wed, 20 Sep 2017 07:09:23 GMT):
Note that this is only temporary in composer, the admin check will be removed soon when we add the ability to bind at deploy time
mna2017 (Wed, 20 Sep 2017 07:36:09 GMT):
Hi Team, I have created and tested a business network in local playground and transactions working fine. I am able to create and update assets and I am able to test the transactions that I wrote. Now I have deployed this network on blockchain on ibm cloud following instructions on "https://ibm-blockchain.github.io/platform-deployment/". I connected the composer-rest-server to this blockchain network and tried testing the REST endpoints and transactions given over there. The transactions that were working fine on playground UI are not working on the REST server(i.e. http://localhost:3000/explorer). All the transactions are resulting in unfamiliar errors.
mna2017 (Wed, 20 Sep 2017 07:39:59 GMT):
"message": "The `CreateAsset` instance is not valid. Details: `transactionId` can't be set (value: \"string\").",
uber.twin (Wed, 20 Sep 2017 07:46:29 GMT):
@davidkel hi, regarding the scenarion when the REST server is used for client conectivity, the required Fabric identity is presented by the REST server itself, throught the connection profile.
is there a plan to define a REST methodology which will allow that the Fabric identity to be presented by the REST clienet which is using the REST server and not the the REST server itself?
uber.twin (Wed, 20 Sep 2017 07:46:29 GMT):
@davidkel hi, regarding the scenario when the REST server is used for client conectivity, the required Fabric identity is presented by the REST server itself, through the connection profile.
is there a plan to define a REST methodology which will allow that the Fabric identity to be presented by the REST client which is using the REST server and not the the REST server itself?
uber.twin (Wed, 20 Sep 2017 07:50:31 GMT):
the goal would be to have multiple Fabric identities able to use the same REST server
davidkel (Wed, 20 Sep 2017 08:07:53 GMT):
@uber.twin Doesn't the rest server in multi-user mode not cover what you require ?
uber.twin (Wed, 20 Sep 2017 08:12:55 GMT):
@davidkel thank you, multiuser mode seems to address exactly what I was thinking about
davidkel (Wed, 20 Sep 2017 08:15:01 GMT):
@mna2017 When you submit a transaction through explorer if it adds the fields 'transactionId' and/or 'timestamp' you should delete those fields before submission. This is an issue with loopback which we can't get around.
nileshyjadhav (Wed, 20 Sep 2017 08:39:24 GMT):
Hi, I am trying to connect composer to existing hyperledger fabric network (first-network). This network has 2 organizations with 2 peers in each org. I am able to deploy .bna file to org1. While trying to deploy it to Org2, I am getting error "Error: Error trying deploy. Error: Error trying install chaincode. Error: Failed to deserialize creator identity, err Expected MSP ID Org2MSP, received Org1MSP
Command failed". Can you please help?
davidkel (Wed, 20 Sep 2017 08:43:31 GMT):
@nileshyjadhav The identity you are using to try to install is not a member of the same MSP as the peer. You need to use an identity that is a) a member of the same MSP as the peers b) is recognised as an admin identity for those peers
yonchin (Wed, 20 Sep 2017 08:46:41 GMT):
Has joined the channel.
nileshyjadhav (Wed, 20 Sep 2017 08:52:04 GMT):
Thanks @davidkel! I am able to resolve this issue and deployed .bna to org2/peer1. It was typo in import identity command (my bad). To test this deployment, I have disabled TLS. Do you recommend any post to use TLS on fabric and connect composer to this network? I was getting cert error while trying to connect composer to first-network with TLS enabled.
rthatcher (Wed, 20 Sep 2017 08:54:37 GMT):
fyi all - the Community call will begin shortly at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> URL best regards Paul
dselman (Wed, 20 Sep 2017 09:24:39 GMT):
I presented the Pull Request for this issue, if people want to view the recording: https://github.com/hyperledger/composer/issues/2157
devadot (Wed, 20 Sep 2017 09:38:46 GMT):
Has joined the channel.
mna2017 (Wed, 20 Sep 2017 09:44:14 GMT):
@davidkel you are spot on! Removing transaction ID and timestamp did the trick. Thanks :)
mna2017 (Wed, 20 Sep 2017 09:48:52 GMT):
Hi Team, composer-rest-server is technically a nodeJS application. how can I install this node application on cloud environment. Currently the composer rest server works on ipaddress= localhost which is not practical for external applications to connect to. This is the reason why I need composer-rest-server to run on cloud so that it can be accessed via globally accessible URL. Is this idea ok? or is there any flaw in it? Looking for suggestions.
adityaad27 (Wed, 20 Sep 2017 09:49:08 GMT):
Has joined the channel.
adityaad27 (Wed, 20 Sep 2017 09:51:00 GMT):
hello all.. I am a newbee to hyperledger technology and want to learn how to develop hypeledger-fabric based applications from scratch.. If someone can kindly help me regarding the same? Thanks in advance..
dselman (Wed, 20 Sep 2017 09:52:38 GMT):
I suggest you follow the tutorials here: https://hyperledger.github.io/composer/tutorials/playground-guide.html
dselman (Wed, 20 Sep 2017 09:53:38 GMT):
The developer guide will walk you through creating your own blockchain solution, including a user interface that connects to it.
adityaad27 (Wed, 20 Sep 2017 09:55:26 GMT):
Respected Sir, I already tried and replicated a small blockchain using the link which you provided.. and it is working fine.. the issue is I can't figure out how the APIs work and how the test cases need to be written.. kindly guide me regarding the same. Thanks again
dselman (Wed, 20 Sep 2017 09:57:55 GMT):
If you have specific technical question please post them to StackOverflow. If you are struggling with the APIs and writing tests perhaps you need to read up on Javascript? Composer uses standard JS and common JS libraries like mocha, sinon etc.
dselman (Wed, 20 Sep 2017 09:58:21 GMT):
The Composer tag on StackOverflow is #hyperledger-composer
adityaad27 (Wed, 20 Sep 2017 09:58:46 GMT):
Thank you so much Sir :)
dselman (Wed, 20 Sep 2017 10:17:48 GMT):
No "Sir" required! Good luck!
Sakshi_44 (Wed, 20 Sep 2017 10:29:07 GMT):
I have created a .bna file but i want to edit in that file. So how can i set default values to my coins and cash field. I have to initialize these value from .bna file.
Sakshi_44 (Wed, 20 Sep 2017 10:29:22 GMT):
Message Attachments
mna2017 (Wed, 20 Sep 2017 10:44:04 GMT):
@davidkel @dselman Please advice for my question regarding running composer-rest-server on cloud.
davidkel (Wed, 20 Sep 2017 10:46:46 GMT):
@mna2017 you access the rest server using localhost because it is running locally on your machine. If you setup the rest server in a cloud environment then you would access it using the hostname/external ip address where the rest server is executing
davidkel (Wed, 20 Sep 2017 10:46:46 GMT):
@mna2017 you access the rest server using localhost because it is running locally on your machine. If you setup the rest server in a cloud environment then you would access it using the hostname/external ip address where the rest server is executing. So there is no problem running the rest server in a cloud environment
mna2017 (Wed, 20 Sep 2017 10:48:47 GMT):
@davidkel ok. What is a reliable source code repository for downloading the source code for "composer-rest-server". Should I get it via "npm install" or should i clone a github repo.
davidkel (Wed, 20 Sep 2017 11:16:35 GMT):
@mna2017 are you sure you want the source or just the ability to run the rest server ? If you want to just run it then we have both a npm module and also a prebuilt docker container
mna2017 (Wed, 20 Sep 2017 11:17:46 GMT):
@davidkel My only objective is to be able to run the rest server on cloud environment like bluemix. Please let me know how can I achieve this?
mna2017 (Wed, 20 Sep 2017 11:18:46 GMT):
@davidkel And what is this docker container? I would like to know more about it.
davidkel (Wed, 20 Sep 2017 11:21:48 GMT):
@mna2017 cloud service providers such as bluemix have a multitude of ways to run services. You need to investigate those services and decide which is the best way for you. In the case of bluemix you might find this page from IBM of some assistance.
https://developer.ibm.com/blockchain/sandbox/
thomas_p (Wed, 20 Sep 2017 11:39:53 GMT):
Has joined the channel.
mahoney1 (Wed, 20 Sep 2017 11:51:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aRhyL9HRxTt4rRMwE) @Sakshi_44 presently you can't do this on a relationship attribute in the Composer modeling language. I'm not sure of your use case, but if you really wanted, you could set the single fully-qualified default (or composite of) as a String (in either case, as you must know it) in the same structure - and refer to these in your code or otherwise when you want to retrieve your defaults.
Sakshi_44 (Wed, 20 Sep 2017 12:00:51 GMT):
Thank you for your reply. Could you please give me the example how can I set single fully-qualified default.
mahoney1 (Wed, 20 Sep 2017 12:11:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TMJxxtzPu3GehGeyf) @Sakshi_44 you can try/test this out for yourself in Playground https://composer-playground.mybluemix.net/ (eg. using basic-sample-network) eg. ```namespace org.acme.sample
asset SampleAsset identified by assetId {
o String assetId
--> SampleParticipant owner
o String value
o String ownerdef default = "resource:org.acme.sample.SampleParticipant#participantId:1000"
}
```
mahoney1 (Wed, 20 Sep 2017 12:11:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TMJxxtzPu3GehGeyf) @Sakshi_44 you can try/test this out for yourself in Playground https://composer-playground.mybluemix.net/ (eg. using basic-sample-network) eg. ```namespace org.acme.sample
asset SampleAsset identified by assetId {
o String assetId
--> SampleParticipant owner
o String value
o String ownerdef default = "resource:org.acme.sample.SampleParticipant#participantId:1000"
}
``` but obviously, as you know, this is not as 'static' as the normal String default usage, for reasons explained earlier.
mahoney1 (Wed, 20 Sep 2017 12:11:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TMJxxtzPu3GehGeyf) @Sakshi_44 you can try/test this out for yourself in Playground https://composer-playground.mybluemix.net/ (eg. using basic-sample-network) eg. ```namespace org.acme.sample
asset SampleAsset identified by assetId {
o String assetId
--> SampleParticipant owner
o String value
o String ownerdef default = "resource:org.acme.sample.SampleParticipant#participantId:1000"
}
``` but obviously, as you know, this is not as 'static' as the normal String default usage, for reasons explained earlier. And footnote: I had set up that participant earlier in the ParticipantRegistry as the referenceable instance.
ChristosBampis (Wed, 20 Sep 2017 12:12:18 GMT):
Has joined the channel.
ChristosBampis (Wed, 20 Sep 2017 12:13:00 GMT):
hello! Can I catch a "Unhandled promise rejection" in feature testing using cucumber? I m using "Then I should get an error matching /does not have .* access to resource/ " but there is no error thrown.
Colonel_HLE (Wed, 20 Sep 2017 12:18:02 GMT):
Has joined the channel.
lucrezia.dm (Wed, 20 Sep 2017 12:38:19 GMT):
Message Attachments
lucrezia.dm (Wed, 20 Sep 2017 12:38:39 GMT):
Message Attachments
mna2017 (Wed, 20 Sep 2017 12:48:35 GMT):
@davidkel Thanks!
jexus6 (Wed, 20 Sep 2017 12:55:44 GMT):
Has joined the channel.
jexus6 (Wed, 20 Sep 2017 12:56:10 GMT):
Hi! How is the easiest way to delete a business-network from hyperledger composer with local fabric installation?
SushilShintre (Wed, 20 Sep 2017 12:56:46 GMT):
Hello there i am new to hyperledger composer and i am following the developer guide. i am stuck with an issue, please can any one help me with issue. i am getting following error while deploying the network. thanks in advance:slight_smile:
SushilShintre (Wed, 20 Sep 2017 12:57:10 GMT):
Message Attachments
jexus6 (Wed, 20 Sep 2017 12:57:26 GMT):
for development purpose I have to test different business networks
jdockter (Wed, 20 Sep 2017 12:57:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rp57nRnxAFemBtQcL) @sbrakev I will ping you
bestbeforetoday (Wed, 20 Sep 2017 13:19:18 GMT):
@ChristosBampis Have you got any more detail on the error (maybe an associated stack trace) and the test being run?
asaningmaxchain (Wed, 20 Sep 2017 13:31:36 GMT):
Has joined the channel.
WatserAanDeHand (Wed, 20 Sep 2017 13:31:51 GMT):
Hi
WatserAanDeHand (Wed, 20 Sep 2017 13:32:46 GMT):
can I create a DPoS coin with Hyperledger?
ChristosBampis (Wed, 20 Sep 2017 13:33:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A7Gq8miC9ukJoSkgg) @bestbeforetoday I have the following feature test:
```
Scenario: John can not add a new Asset when he is not the owner
When I use the identity john@owner.org
And I submit the following transaction of type org.sample.AddAsset
"""
{"$class":"org.sample.AddAsset", "asset":{"$class":"org.sample.Asset", "ownerID":"jane", "assetName":"asset1}}
"""
Then I should get an error matching /does not have .* access to resource/
```
And I get the following error:
```
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: AccessException: Participant 'org.mloea.Owner#john@owner.org' does not have 'CREATE' access to resource 'org.sample.Asset#asset1'
```
ChristosBampis (Wed, 20 Sep 2017 13:33:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A7Gq8miC9ukJoSkgg) @bestbeforetoday I have the following feature test:
```
Scenario: John can not add a new Asset when he is not the owner
When I use the identity john@owner.org
And I submit the following transaction of type org.sample.AddAsset
"""
{"$class":"org.sample.AddAsset", "asset":{"$class":"org.sample.Asset", "ownerID":"jane", "assetName":"asset1}}
"""
Then I should get an error matching /does not have .* access to resource/
```
And I get the following error:
```
Message:
Error: an error was expected, but no errors have been thrown
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: AccessException: Participant 'org.sample.Owner#john@owner.org' does not have 'CREATE' access to resource 'org.sample.Asset#asset1'
```
ChristosBampis (Wed, 20 Sep 2017 13:33:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A7Gq8miC9ukJoSkgg) @bestbeforetoday I have the following feature test:
```
Scenario: John can not add a new Asset when he is not the owner
When I use the identity john@owner.org
And I submit the following transaction of type org.sample.AddAsset
"""
{"$class":"org.sample.AddAsset", "asset":{"$class":"org.sample.Asset", "ownerID":"jane", "assetName":"asset1}}
"""
Then I should get an error matching /does not have .* access to resource/
```
And I get the following error:
```
Message:
Error: an error was expected, but no errors have been thrown
John doesn't have access to Create the asset so we get this promise rejection:
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: AccessException: Participant 'org.sample.Owner#john@owner.org' does not have 'CREATE' access to resource 'org.sample.Asset#asset1'
```
Can I can this rejection in my scenario?
ChristosBampis (Wed, 20 Sep 2017 13:33:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A7Gq8miC9ukJoSkgg) @bestbeforetoday I have the following feature test:
```
Scenario: John can not add a new Asset when he is not the owner
When I use the identity john@owner.org
And I submit the following transaction of type org.sample.AddAsset
"""
{"$class":"org.sample.AddAsset", "asset":{"$class":"org.sample.Asset", "ownerID":"jane", "assetName":"asset1}}
"""
Then I should get an error matching /does not have .* access to resource/
```
And I get the following error:
```
Message:
Error: an error was expected, but no errors have been thrown
John doesn't have access to Create the asset so we get this promise rejection:
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: AccessException: Participant 'org.sample.Owner#john@owner.org' does not have 'CREATE' access to resource 'org.sample.Asset#asset1'
```
Can I can this rejection in my scenario?
ChristosBampis (Wed, 20 Sep 2017 13:33:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A7Gq8miC9ukJoSkgg) @bestbeforetoday I have the following feature test:
```
Scenario: John can not add a new Asset when he is not the owner
When I use the identity john@owner.org
And I submit the following transaction of type org.sample.AddAsset
"""
{"$class":"org.sample.AddAsset", "asset":{"$class":"org.sample.Asset", "ownerID":"jane", "assetName":"asset1}}
"""
Then I should get an error matching /does not have .* access to resource/
```
And I get the following error:
```
Message:
Error: an error was expected, but no errors have been thrown
```
John doesn't have access to Create the asset so we get this promise rejection:
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: AccessException: Participant 'org.sample.Owner#john@owner.org' does not have 'CREATE' access to resource 'org.sample.Asset#asset1'
```
Can I can this rejection in my scenario?
ChristosBampis (Wed, 20 Sep 2017 13:33:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A7Gq8miC9ukJoSkgg) @bestbeforetoday I have the following feature test:
```
Scenario: John can not add a new Asset when he is not the owner
When I use the identity john@owner.org
And I submit the following transaction of type org.sample.AddAsset
"""
{"$class":"org.sample.AddAsset", "asset":{"$class":"org.sample.Asset", "ownerID":"jane", "assetName":"asset1}}
"""
Then I should get an error matching /does not have .* access to resource/
```
And I get the following error:
```
Message:
Error: an error was expected, but no errors have been thrown
```
John doesn't have access to Create the asset so we get this promise rejection:
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: AccessException: Participant 'org.sample.Owner#john@owner.org' does not have 'CREATE' access to resource 'org.sample.Asset#asset1'
```
Can I can this rejection in my scenario?
ChristosBampis (Wed, 20 Sep 2017 13:33:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A7Gq8miC9ukJoSkgg) @bestbeforetoday I have the following feature test:
```
Scenario: John can not add a new Asset when he is not the owner
When I use the identity john@owner.org
And I submit the following transaction of type org.sample.AddAsset
"""
{"$class":"org.sample.AddAsset", "asset":{"$class":"org.sample.Asset", "ownerID":"jane", "assetName":"asset1}}
"""
Then I should get an error matching /does not have .* access to resource/
```
And I get the following error:
```
Message:
Error: an error was expected, but no errors have been thrown
```
```
John doesn't have access to Create the asset so we get this promise rejection:
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: AccessException: Participant 'org.sample.Owner#john@owner.org' does not have 'CREATE' access to resource 'org.sample.Asset#asset1'
```
Can I can this rejection in my scenario?
ChristosBampis (Wed, 20 Sep 2017 13:33:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A7Gq8miC9ukJoSkgg) @bestbeforetoday I have the following feature test:
```
Scenario: John can not add a new Asset when he is not the owner
When I use the identity john@owner.org
And I submit the following transaction of type org.sample.AddAsset
"""
{"$class":"org.sample.AddAsset", "asset":{"$class":"org.sample.Asset", "ownerID":"jane", "assetName":"asset1}}
"""
Then I should get an error matching /does not have .* access to resource/
```
And I get the following error:
```
Message:
Error: an error was expected, but no errors have been thrown
```
```
John doesn't have access to Create the asset so we get this promise rejection:
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: AccessException: Participant 'org.sample.Owner#john@owner.org' does not have 'CREATE' access to resource 'org.sample.Asset#asset1'
```
Can I catch this rejection in my scenario?
ChristosBampis (Wed, 20 Sep 2017 13:33:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A7Gq8miC9ukJoSkgg) @bestbeforetoday I have the following feature test:
```
Scenario: John can not add a new Asset when he is not the owner
When I use the identity john@owner.org
And I submit the following transaction of type org.sample.AddAsset
"""
{"$class":"org.sample.AddAsset", "asset":{"$class":"org.sample.Asset", "ownerID":"jane", "assetName":"asset1}}
"""
Then I should get an error matching /does not have .* access to resource/
```
And I get the following error:
```
Message:
Error: an error was expected, but no errors have been thrown
```
John doesn't have access to Create the asset so we get this promise rejection:
```
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: AccessException: Participant 'org.sample.Owner#john@owner.org' does not have 'CREATE' access to resource 'org.sample.Asset#asset1'
```
Can I catch this rejection in my scenario?
bestbeforetoday (Wed, 20 Sep 2017 13:42:36 GMT):
@ChristosBampis Thank you for the information. I suspect this might be a bug in the test step definitions, but I would need to recreate to be sure. If you have a simple scenario (Business Network Archive and associated Cucumber unit test) that you can share and that I can use to recreate, could you open a new issue on GitHub and attach it there? https://github.com/hyperledger/composer/issues
ChristosBampis (Wed, 20 Sep 2017 13:52:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nqJeFMKn9ddaNPE2a) @bestbeforetoday
In my smart contract I have this function:
```
function createAssetSample(tx) {
return getAssetRegistry('org.sample.AssetSample')
.then(function (assetRegistry) {
assetRegistry.add(tx.assetSample)
.catch(function (error) {
console.log('inside error:', error);
throw (error);
});
})
.catch(function (error) {
console.log('An error occurred while saving the assets', error);
throw error;
});
}
```
I can console the log of this error: "console.log('inside error:', error);" but it's not catching the error
rthatcher (Wed, 20 Sep 2017 14:08:26 GMT):
@SushilShintre - you need to run your `composer archive create' from the folder containing your package.json file i.e. the my-network folder
rthatcher (Wed, 20 Sep 2017 14:08:26 GMT):
@SushilShintre - you need to run your `composer archive create` from the folder containing your package.json file i.e. the my-network folder
rthatcher (Wed, 20 Sep 2017 14:12:38 GMT):
@jexus6 - did you create you development environment using instructions from this page?
https://hyperledger.github.io/composer/installing/development-tools.html
If you did then you can use the `teardownFabric.sh` script and then the `start.sh` script to achieve a clean fabric environment
SushilShintre (Wed, 20 Sep 2017 15:16:04 GMT):
@rthatcher i have already created .bna file and its there is dist folder...but while deploying i am getting that error
rthatcher (Wed, 20 Sep 2017 15:19:59 GMT):
@SushilShintre in the screenshot you are showing the command `composer archive create` with an error. In order to deploy you will need the `composer network deploy` command.
mahoney1 (Wed, 20 Sep 2017 15:47:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=78ycyoKD8Sg9z7QCK) @lucrezia.dm I had a quick look at your code in Playground - the problem is in your function logic in your sample.js. For example - you reference `sender_hospital.accountBalance = 0;` which doesn't exist (and other references in your code in the immediate vicinity also fail to expand the correct relationship). so its likely to come through the shipment asset eg. ` var sender_hospital = shipmentReceived.shipment.sender_hospital; sender_hospital.accountBalance = 0 ; ` etc etc. Hence the anomalies in Playground. Suggest to use console.log in your code to see output etc etc. See example here https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js
ykcai (Wed, 20 Sep 2017 18:26:42 GMT):
Where does your console.logs go when you log things inside the transactions JS file using Composer-rest-server
ykcai (Wed, 20 Sep 2017 18:26:42 GMT):
Where does your console.logs go when you log things inside the transactions JS file using Composer-rest-server?
lyql (Wed, 20 Sep 2017 18:51:47 GMT):
Has joined the channel.
mna2017 (Wed, 20 Sep 2017 19:57:44 GMT):
Hi All, I am getting the following message when i try to run the digital property app with the composer network already deployed
mna2017 (Wed, 20 Sep 2017 19:58:57 GMT):
mna@mna-VirtualBox:~/myworkspace/digitalproperty-app$ node cli landregistry list
info: [DigitalProperty-App] Hyperledger Composer: Digital Property console application
error: [DigitalProperty-App] Error: Error trying to ping. Error: Composer runtime (0.12.1) is not compatible with client (0.11.3)
Command failed.
mna@mna-VirtualBox:~/myworkspace/digitalproperty-app$ composer network ping -p hlfv1 -n myFirstNetwork -i admin -s adminpw
The connection to the network was successfully tested: myFirstNetwork
version: 0.12.1
participant:
ykcai (Wed, 20 Sep 2017 20:51:11 GMT):
I have a question about Composer's Transaction Processor Functions and how the pass by references work if I want to access a reference of a reference
rafizan.baharum (Thu, 21 Sep 2017 00:17:54 GMT):
Has joined the channel.
asaningmaxchain (Thu, 21 Sep 2017 01:23:19 GMT):
hi,everyone,i install the composer-playground in my host
pxuereb (Thu, 21 Sep 2017 04:50:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NwNJmEwDpHpgx3Dfz) @davidkel Thanks, i managed to get this working by mapping all six private keys individually and eventually found that it was the fifth that worked! FYI if anyone was wondering, the fabric profile i am using came from yeasy's templates - https://github.com/yeasy/docker-compose-files/blob/master/hyperledger/1.0
qingsongGuo (Thu, 21 Sep 2017 04:59:38 GMT):
Has joined the channel.
mna2017 (Thu, 21 Sep 2017 07:28:59 GMT):
Hi All, I need somebody to look into this problem. I downloaded and tried testing the digitalproperty-app
mna2017 (Thu, 21 Sep 2017 07:29:03 GMT):
mna@mna-VirtualBox:~/myworkspace/digitalproperty-app$ node cli landregistry list
info: [DigitalProperty-App] Hyperledger Composer: Digital Property console application
error: [DigitalProperty-App] Error: Error trying to ping. Error: Composer runtime (0.12.1) is not compatible with client (0.11.3)
Command failed.
mna2017 (Thu, 21 Sep 2017 07:29:40 GMT):
I received this error which talks about incompatibility between composer runtimeand client
DannyWong (Thu, 21 Sep 2017 08:18:26 GMT):
My network day1 has 3 peers and I installed Composer all to them, run some tx (and now I have data)
If i need to add the 4th
DannyWong (Thu, 21 Sep 2017 08:18:41 GMT):
the 4th peer joined the channel, and got the blocks
DannyWong (Thu, 21 Sep 2017 08:19:12 GMT):
I updated the .composer-connection-credentials as well
DannyWong (Thu, 21 Sep 2017 08:19:45 GMT):
but seems that the `network deploy` or `network update` cannot install / instantiate the composer app on the 4th peer
DannyWong (Thu, 21 Sep 2017 08:19:47 GMT):
right???
mna2017 (Thu, 21 Sep 2017 08:38:13 GMT):
The issue is now resolved. In package.json, I removed the version against ""composer-cli": "" and "composer-client": "". Did an "npm install" after this and it solved the issue.
mna2017 (Thu, 21 Sep 2017 08:48:59 GMT):
@ykcai can't say about console.log. I used alert() to display runtime values. and it worked fine.
mahoney1 (Thu, 21 Sep 2017 09:01:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PLKaZ3KChRi7sHAPX) @DannyWong if adding a 4th peer, you'll need to install a composer runtime first eg, `composer runtime install -n my-network -p hlfv1 -i PeerAdmin -s randomstring` and then perform a composer network start eg. `composer network start -a mynetwork.bna -p hlfv1 -i PeerAdmin -s randomstring`
DannyWong (Thu, 21 Sep 2017 09:02:10 GMT):
my data should remain, right?
mahoney1 (Thu, 21 Sep 2017 09:02:32 GMT):
yes, your data is on the blockchain still :-)
DannyWong (Thu, 21 Sep 2017 09:19:05 GMT):
Another problem after previous one, anyone hitting this randomly, when the Fabric network is having more peers (now I have 4). The frequency of hitting this grpc subchannel creation failure increases when the no. of peers increases (1 peer = no problem, 2 peers = no problems, 3 peers = quite often, 4 peers = only able to dodge this error by luck). After some google-ing, it looks like concurrency issue when a lot of gRPCs connections are made at the same time.
```
$ composer network update --archiveFile build/abc-network.bna -p hlfv1-swarm -i admin -s adminpw
Deploying business network from archive: build/abc-network.bna
Business network definition:
Identifier: abc-network@1.0.0
Description: ABC
E0921 09:13:29.605557944 42762 ssl_transport_security.c:584] Could not load any root certificate.
E0921 09:13:29.605659748 42762 ssl_transport_security.c:1297] Cannot load server root certificates.
E0921 09:13:29.605696849 42762 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0921 09:13:29.605724550 42762 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer1.manulife.com:7058'
E0921 09:13:29.605748251 42762 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
```
DannyWong (Thu, 21 Sep 2017 09:19:05 GMT):
Another problem after previous one, anyone hitting this randomly, when the Fabric network is having more peers (now I have 4). The frequency of hitting this grpc subchannel creation failure increases when the no. of peers increases (1 peer = no problem, 2 peers = no problems, 3 peers = quite often, 4 peers = only able to dodge this error by luck). After some google-ing, it looks like concurrency issue when a lot of gRPCs connections are made at the same time.
```
$ composer network update --archiveFile build/abc-network.bna -p hlfv1-swarm -i admin -s adminpw
Deploying business network from archive: build/abc-network.bna
Business network definition:
Identifier: abc-network@1.0.0
Description: ABC
E0921 09:13:29.605557944 42762 ssl_transport_security.c:584] Could not load any root certificate.
E0921 09:13:29.605659748 42762 ssl_transport_security.c:1297] Cannot load server root certificates.
E0921 09:13:29.605696849 42762 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0921 09:13:29.605724550 42762 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer1.abc.com:7058'
E0921 09:13:29.605748251 42762 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
```
DannyWong (Thu, 21 Sep 2017 09:19:41 GMT):
This error can occur not just during deployment, it also potentially happen in my NodeJS middleware (with the composer-client v0.12.2)
DannyWong (Thu, 21 Sep 2017 09:20:52 GMT):
`https://github.com/grpc/grpc/blob/master/src/core/ext/transport/chttp2/client/secure/secure_channel_create.c`
davidkel (Thu, 21 Sep 2017 09:23:40 GMT):
@DannyWong I believe the fabric-node-sdk updated their dependency of grpc to a newer version and that may have some fixes to this problem. Can you determine the version of grpc being used by the composer-cli ?
DannyWong (Thu, 21 Sep 2017 09:32:25 GMT):
let me check, right now, i am already using v0.12.2 composer
davidkel (Thu, 21 Sep 2017 09:33:31 GMT):
@DannyWong depending on when you npm installed it you might have picked up fabric-client 1.0.1 rather than fabric-client 1.0.2 which would have the newer level or grpc
DannyWong (Thu, 21 Sep 2017 09:52:23 GMT):
umm... The fabric client version (1.0.1 or 1.0.2) should be npm installed as a transitive dependency (Do I have control?) when I specify composer-client v0.12.2???
davidkel (Thu, 21 Sep 2017 09:53:15 GMT):
@DannyWong It depends when you ran the npm install. If you ran it when 1.0.2 was not available then you get 1.0.1 if you ran it when it was available you got 1.0.3
davidkel (Thu, 21 Sep 2017 09:53:15 GMT):
@DannyWong It depends when you ran the npm install. If you ran it when 1.0.2 was not available then you get 1.0.1 if you ran it when it was available you got 1.0.2
DannyWong (Thu, 21 Sep 2017 09:53:34 GMT):
ah ic.
mna2017 (Thu, 21 Sep 2017 09:56:25 GMT):
@davidkel I am looking for composer node SDK examples of reading blockchain height, reading blocks. I want to do this on a composer network deployed. Am looking for example or sample code doing this. or some documentation link. Thanks.
DannyWong (Thu, 21 Sep 2017 09:57:17 GMT):
@davidkel from the node_modules, the fabric-client is already v1.0.2
davidkel (Thu, 21 Sep 2017 09:57:29 GMT):
@mna2017 composer doesn't provide any capability to do those things. You would need to look at the fabric node sdk to see if they provide it.
davidkel (Thu, 21 Sep 2017 09:57:51 GMT):
@DannyWong and just to confirm then that grpc version is at 1.3.5 ?
DannyWong (Thu, 21 Sep 2017 09:57:59 GMT):
grpc = "version": "1.6.0"
DannyWong (Thu, 21 Sep 2017 09:58:27 GMT):
node_modules/grpc/package.json --> "version": "1.6.0"
davidkel (Thu, 21 Sep 2017 09:59:37 GMT):
ahh, they specify >=1.3.5 <2.0.0 so it would be the latest 1.x release at the time
DannyWong (Thu, 21 Sep 2017 10:01:46 GMT):
So, i can only confirm right now...
1) Composer v0.12.2
2) gRPC v1.6
3) Fabric client v1.0.2
4) 3+ peers with TLS...
Very likely to hit the gRPC subchannel creation issue
davidkel (Thu, 21 Sep 2017 10:02:56 GMT):
@DannyWong do you know if grpc have an issue raised about it ?
DannyWong (Thu, 21 Sep 2017 10:03:52 GMT):
I saw some related one but not exact
davidkel (Thu, 21 Sep 2017 10:05:30 GMT):
@DannyWong Not sure how you want to raise this issue. But I would suggest you raise it with grpc yourself, might also be worth creating a jira issue on the fabric node sdk so that they are aware
DannyWong (Thu, 21 Sep 2017 10:06:04 GMT):
https://github.com/grpc/grpc/issues/12642
DannyWong (Thu, 21 Sep 2017 10:06:12 GMT):
https://github.com/grpc/grpc/issues/8382
DannyWong (Thu, 21 Sep 2017 10:06:18 GMT):
The 12642 is almost exactly the same
DannyWong (Thu, 21 Sep 2017 10:06:46 GMT):
This one was opened 2 days ago XDDDD
davidkel (Thu, 21 Sep 2017 10:07:14 GMT):
I wonder if this was a problem introduced into newer versions of grpc ?
zasamen (Thu, 21 Sep 2017 10:13:44 GMT):
Hello, may i ask a question?
If i get some data from query, can i update the registry after that?
mahoney1 (Thu, 21 Sep 2017 11:04:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GygJPebJK8axCkg37) @zasamen yes you can - see the Queries tutorial for a complete example - in particular the processing of query results (based on query criteria) in section 'Update Transaction logic to use Queries & Events'
mahoney1 (Thu, 21 Sep 2017 11:04:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GygJPebJK8axCkg37) @zasamen yes you can - see the Queries tutorial https://hyperledger.github.io/composer/tutorials/queries.html for a complete example - in particular the processing of query results (based on query criteria) in section 'Update Transaction logic to use Queries & Events'
mahoney1 (Thu, 21 Sep 2017 11:14:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wyTZKoGwG57ujL4WJ) @ykcai Take a look at https://github.com/hyperledger/composer-sample-networks/tree/master/packages/perishable-network and in particular the model (firstly) and then how its used in the TPFs in lib/logic,js (and how references are made to properties/attributes etc.
mahoney1 (Thu, 21 Sep 2017 11:20:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=c5ndexJjJjkY4m48s) @ykcai you can see them in your browser 'sconsole log probably? Eg Developer tools on Chrome ..
zasamen (Thu, 21 Sep 2017 11:22:22 GMT):
@mahoney1 it was issue with factory. I've tried to create relationship with object by different factories. Thank you
nkl199 (Thu, 21 Sep 2017 12:40:53 GMT):
@here We are currently in the process of publishing a new release of Composer ... this means that the online Playground will be unavailable for a short period
dselman (Thu, 21 Sep 2017 12:44:41 GMT):
Message Attachments
argman (Thu, 21 Sep 2017 12:46:05 GMT):
Hello! I've got one question. Is there any possibility to generate ID for asset automatically?
dselman (Thu, 21 Sep 2017 12:46:52 GMT):
No - this would either lead to performance issue or indeterminism (causing consensus failure).
dselman (Thu, 21 Sep 2017 12:47:28 GMT):
IDs should be passed in from the client in a transaction, or somehow based on the id of the transaction itself.
argman (Thu, 21 Sep 2017 12:49:28 GMT):
How to get ID of transaction itself? Where can I read?
dselman (Thu, 21 Sep 2017 12:51:45 GMT):
tx.getIdentifier() will return it. It will be a UUID that has been assigned by the client process that submitted the transaction.
argman (Thu, 21 Sep 2017 12:52:59 GMT):
OK. Much thanks :)
dselman (Thu, 21 Sep 2017 12:54:18 GMT):
You are welcome.
nborggren (Thu, 21 Sep 2017 13:13:07 GMT):
Has joined the channel.
nborggren (Thu, 21 Sep 2017 13:14:35 GMT):
Hello, it seems that the hyperledger composer online playground is down. I'm trying 'to blockchain' and the links are sending me: 404 Not Found: Requested route ('composer-playground.mybluemix.net') does not exist.
mbwhite (Thu, 21 Sep 2017 13:16:39 GMT):
@nborggren see nkl99 post at 1:40pm
nborggren (Thu, 21 Sep 2017 13:18:20 GMT):
from yesterday? I'm not seeing it.
argman (Thu, 21 Sep 2017 13:18:33 GMT):
at 15:40 today
mbwhite (Thu, 21 Sep 2017 13:20:11 GMT):
ah sorry - seems RocketChat is showing me local times! 1:40pm UK
nborggren (Thu, 21 Sep 2017 13:20:48 GMT):
ok, thanks!
WatserAanDeHand (Thu, 21 Sep 2017 13:37:38 GMT):
hey, does Composer use CouchDB or LevelDB?
silliman (Thu, 21 Sep 2017 13:44:57 GMT):
@WatserAanDeHand that is determined by the underlying Hyperledger Fabric that Hyperledger Composer connects to
WatserAanDeHand (Thu, 21 Sep 2017 13:49:25 GMT):
Ah I see
WatserAanDeHand (Thu, 21 Sep 2017 13:49:32 GMT):
Thanks @silliman
WatserAanDeHand (Thu, 21 Sep 2017 13:50:15 GMT):
Is there anything wrong with using a third party cryptocurrency in my hyperledger application?
silliman (Thu, 21 Sep 2017 13:54:12 GMT):
@WatserAanDeHand Since Hyperledger Fabric does not have a built-in cryptocurrency the usage of a third-party cryptocurrency is an application-level decision that I'll leave for others to comment on.
WatserAanDeHand (Thu, 21 Sep 2017 14:04:39 GMT):
Okay. I'm just wondering if it makes sense to fork en existing cryptocurrency for the purpose of building blockchain applications using Hyperledger that use the new cryptocurrency
ykcai (Thu, 21 Sep 2017 17:02:35 GMT):
Hello I am getting an error when i try to access my playground running on a kubernetes cluster on bluemix ```Error: Required metadata field not found: userName```
jinvanstee (Thu, 21 Sep 2017 17:46:49 GMT):
composer playground down?
davidkel (Thu, 21 Sep 2017 18:21:31 GMT):
@jinvanstee it should be up and running and seems to be for me. What problems are you seeing ?
nehalshah50 (Thu, 21 Sep 2017 19:24:15 GMT):
Hi...I have been playing the .acl file to define some access rules. For some reason now some participants in my network doesn't have CREATE access anymore...Eventhough I changed the ACL to following…Any idea?
rule AllAccess {
description: "AllAccess - grant everything to everybody"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
nehalshah50 (Thu, 21 Sep 2017 19:24:15 GMT):
Hi...I have been playing the .acl file to define some access rules. For some reason now some participants in my network doesn't have CREATE access anymore...Eventhough I changed the ACL to following…Any idea?
rule AllAccess {
description: "AllAccess - grant everything to everybody"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
I even tried this on online playground. As soon as I add the ACL file with full access, participants other than admin loose CREATE access
nehalshah50 (Thu, 21 Sep 2017 19:24:15 GMT):
Hi...I have been playing the .acl file to define some access rules. For some reason now some participants in my network doesn't have CREATE access anymore...Eventhough I changed the ACL to following…Any idea?
rule AllAccess {
description: "AllAccess - grant everything to everybody"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
I even tried this on online playground. As soon as I add the ACL file with full access, participants other than admin loose CREATE,READ,UPDATE access
nehalshah50 (Thu, 21 Sep 2017 20:28:21 GMT):
I even tried this on online playground. As soon as I add the ACL file with full access, participants other than admin loose CREATE access
iwhanttoknow (Thu, 21 Sep 2017 20:51:33 GMT):
Has joined the channel.
iwhanttoknow (Thu, 21 Sep 2017 21:06:51 GMT):
Hey! I am playing with Personally Identifiable Information (PII) network. Looks like AuthorizeAccess and RevokeAccess transactions do not work. memberA@acme.org do not have an ability to view memberB@acme.org data in Test --> PARTICIPANTS --> Members
DiogoSilva (Thu, 21 Sep 2017 21:07:06 GMT):
Has joined the channel.
iwhanttoknow (Thu, 21 Sep 2017 21:11:06 GMT):
Might be I misunderstood something. If so, how can I check this statement from Readme "This AuthorizeAccess allowed memberA@acme.org permission to view personal information of other members."
iwhanttoknow (Thu, 21 Sep 2017 21:11:11 GMT):
Thanks!
DiogoSilva (Thu, 21 Sep 2017 21:11:45 GMT):
Using the HyperLedger Compose playground online, on the network's test when i'm going to add a participant doesn't appear to me the option "Create New". Has anyone had the same problem?
xpert540 (Fri, 22 Sep 2017 01:42:21 GMT):
Has joined the channel.
xpert540 (Fri, 22 Sep 2017 01:44:23 GMT):
i am trying to test the network and i am getting this error message: " Failed to save connection profile defaultProfile"
xpert540 (Fri, 22 Sep 2017 01:54:23 GMT):
Message Attachments
Luxii (Fri, 22 Sep 2017 05:51:17 GMT):
Has joined the channel.
argman (Fri, 22 Sep 2017 06:51:57 GMT):
Hello! I want to export method from one .js file to another. How can I do it,if it possible?
dselman (Fri, 22 Sep 2017 08:15:45 GMT):
@xpert540 Windows is not a supported platform. If you are on Windows you need to run inside an Ubuntu VM using VirtualBox.
rameshaug (Fri, 22 Sep 2017 09:19:26 GMT):
Has joined the channel.
uber.twin (Fri, 22 Sep 2017 09:31:02 GMT):
@dselman hi, is there a documentation section describing what is the role of the "dev" peer container started when chaincode is invoked?
dselman (Fri, 22 Sep 2017 09:32:05 GMT):
Not in the Composer docs - maybe in the Fabric docs. Basically it provides Docker level isolation and management for the chaincode.
dselman (Fri, 22 Sep 2017 09:33:29 GMT):
By using Docker + gRPC for the chaincode containers the Fabric can be completely language agnostic - it doesn't know or care is executing inside the chaincode container, as long as it respects the gRPC protocol, it will work with the peer.
dselman (Fri, 22 Sep 2017 09:33:29 GMT):
By using Docker + gRPC for the chaincode containers the Fabric can be completely language agnostic - it doesn't know or care what is executing inside the chaincode container, as long as it respects the gRPC protocol, it will work with the peer.
dselman (Fri, 22 Sep 2017 09:34:51 GMT):
It also means that the peer can start/stop the chaincode containers and be sure that they don't have access to the native file system.
uber.twin (Fri, 22 Sep 2017 09:37:10 GMT):
would a regular organization need a chaincode container if it is not an endorser?
uber.twin (Fri, 22 Sep 2017 09:38:08 GMT):
(and supposedly doesn't need to simulate transactions)
SushilShintre (Fri, 22 Sep 2017 09:42:08 GMT):
Hello everyone i am getting the following error while deploying the .bna file...please help me to resovle this issue. thanks in advance
SushilShintre (Fri, 22 Sep 2017 09:42:27 GMT):
Message Attachments
rthatcher (Fri, 22 Sep 2017 09:48:02 GMT):
@SushilShintre - are you running the Developer tutorial?
Have you gone through the steps to create your development fabric environment - including the step to run the script `createComposerProfile.sh` ?
SushilShintre (Fri, 22 Sep 2017 09:51:50 GMT):
@rthatcher yes, i am following the developer tutorial and i have already run the following commands .
SushilShintre (Fri, 22 Sep 2017 09:51:55 GMT):
./downloadFabric.sh
./startFabric.sh
./createComposerProfile.sh
rthatcher (Fri, 22 Sep 2017 10:04:54 GMT):
@SushilShintre - this may be a permission error - can you do full directory listings of the folders ~/.composer-connection-profiles and ~/.composer-credentials and then maybe copy a text file into the folder ~/.composer-connection-profiles/hlfv1
rthatcher (Fri, 22 Sep 2017 10:04:54 GMT):
@SushilShintre - this may be a permission error - can you do full directory listings of the folders `~/.composer-connection-profiles` and `~/.composer-credentials` and then maybe copy a text file into the folder `~/.composer-connection-profiles/hlfv1`
wampum (Fri, 22 Sep 2017 11:41:17 GMT):
Has joined the channel.
Udayan_Deshmukh (Fri, 22 Sep 2017 11:43:28 GMT):
Message Attachments
mahoney1 (Fri, 22 Sep 2017 11:43:37 GMT):
[ [ ](https://chat.hyperledger.org/channel/composer?msg=TtzFiPmQEvTykyxcf) @nehalshah50 hi there, have you given access to the resources in your business network (aside from system access to participants) eg. ```rule Default {
description: "Allow all business network participants access to all resources in this business network"
participant: "ANY"
operation: ALL
resource: "org.acme.shipping.network.*"
action: ALLOW
}```
Luxii (Fri, 22 Sep 2017 12:35:14 GMT):
Why do I get this error ?
Luxii (Fri, 22 Sep 2017 12:35:24 GMT):
Message Attachments
rthatcher (Fri, 22 Sep 2017 13:37:53 GMT):
@Luxii - are you following the Developer tutorial?
The error I can see suggests that somewhere in your project you have a reference to `org.acme.sample` whereas the my-network tutorial uses `org.acme.mynetwork` - I would check that you have copied/pasted all the content of the various files correctly.
Luxii (Fri, 22 Sep 2017 13:38:10 GMT):
@rthatcher solved it now
Luxii (Fri, 22 Sep 2017 13:38:19 GMT):
Thanks for your response
rthatcher (Fri, 22 Sep 2017 13:38:33 GMT):
good news!
mahoney1 (Fri, 22 Sep 2017 14:32:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mQSkQ5x5L3SZro4Lm) @Udayan_Deshmukh it says the stack size is being exceeded , are you doing some kind of recursion with arrays in your transaction code (elements being pushed onto the stack)? Think your code might be a good place to start. Suggest to post all the relevant code, logs, peer logs on Stack Overflow where everything can be reviewed in unison. Thanks
tkuhrt (Fri, 22 Sep 2017 14:37:15 GMT):
Message Attachments
sstone1 (Fri, 22 Sep 2017 14:40:42 GMT):
@tkuhrt you need to clear your browser local storage - just raised https://github.com/hyperledger/composer/issues/2209 for this
sstone1 (Fri, 22 Sep 2017 14:40:53 GMT):
open up the developer console (F12) and type in `localStorage.clear()`
tkuhrt (Fri, 22 Sep 2017 14:45:02 GMT):
Thanks. That helped
mahoney1 (Fri, 22 Sep 2017 15:11:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pQYDFm4buZEZzc6CG) @uber.twin peers run chaincode containers in order to perform read/write operations to the ledger.they maintain. Peers are owned and maintained by member organisations normally. .Chaincode should only be installed on endorsing peer nodes of the owning members of the chaincode to protect the confidentiality of the chaincode logic from other members on the network. Those members without the chaincode, can’t therefore be the endorsers of the chaincode’s transactions; that is, they can’t execute the chaincode. However, they can still validate and commit the transactions to the ledger as part of the network.
nehalshah50 (Fri, 22 Sep 2017 15:28:59 GMT):
Hi...I have been playing the .acl file to define some access rules. For some reason now some participants in my network doesn't have CREATE access anymore...Eventhough I changed the ACL to following…Any idea?
rule AllAccess {
description: "AllAccess - grant everything to everybody"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
I even tried this on online playground. As soon as I add the ACL file with full access, participants other than admin loose CREATE,READ,UPDATE access
danconway (Fri, 22 Sep 2017 15:33:39 GMT):
Has joined the channel.
mahoney1 (Fri, 22 Sep 2017 15:47:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q73uwsQ8j6GFJytyK) @nehalshah50 pasting response from earlier: hi there, have you given access to the resources in your business network (aside from system access to participants) eg. ```rule Default {
description: "Allow all business network participants access to all resources in this business network"
participant: "ANY"
operation: ALL
resource: "org.acme.shipping.network.*"
action: ALLOW
}```
bestbeforetoday (Fri, 22 Sep 2017 16:16:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=49BbSGMgubg9tW8sB) @ChristosBampis I had a poke at this today and the problem looks to be that you are missing a `return` statement. The line ```assetRegistry.add(tx.assetSample)``` should read ```return assetRegistry.add(tx.assetSample)``` to allow exceptions thrown during the asynchronous operation of `assetRegistry.add` to be handled by the promise chain rather than lost
bestbeforetoday (Fri, 22 Sep 2017 16:16:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=49BbSGMgubg9tW8sB) @ChristosBampis I had a poke at this today and the problem looks to be that you are missing a `return` statement. The line
```assetRegistry.add(tx.assetSample)```
should read
```return assetRegistry.add(tx.assetSample)```
to allow exceptions thrown during the asynchronous operation of `assetRegistry.add` to be handled by the promise chain rather than lost
bestbeforetoday (Fri, 22 Sep 2017 16:16:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=49BbSGMgubg9tW8sB) @ChristosBampis I had a poke at this today and the problem looks to be that you are missing a `return` statement. The line
```
assetRegistry.add(tx.assetSample)
```
should read
```
return assetRegistry.add(tx.assetSample)
```
to allow exceptions thrown during the asynchronous operation of `assetRegistry.add` to be handled by the promise chain rather than lost
nehalshah50 (Fri, 22 Sep 2017 16:39:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NPTbrqnhuQaKEHrtz) @mahoney1 ..I just tried that as well...I think the correct syntax is following
rule Default {
description: "Allow all business network participants access to all resources in this business network"
participant: "ANY"
operation: ALL
resource: "org.hyperledger.composer.system.Network"
action: ALLOW
}
t: Participant 'org.acme.trade.Fisherman#bob@fisherman.com' does not have 'CREATE' access to resource 'org.acme.trade.RegisterFishCatch#4ebb29ac-f3f0-4378-b8b7-c3855123a84b'
nehalshah50 (Fri, 22 Sep 2017 16:39:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NPTbrqnhuQaKEHrtz) @mahoney1 ..I just tried that as well...I think the correct syntax is following
rule Default {
description: "Allow all business network participants access to all resources in this business network"
participant: "ANY"
operation: ALL
resource: "org.hyperledger.composer.system.Network"
action: ALLOW
}
But still getting error....see error below...
t: Participant 'org.acme.trade.Fisherman#bob@fisherman.com' does not have 'CREATE' access to resource 'org.acme.trade.RegisterFishCatch#4ebb29ac-f3f0-4378-b8b7-c3855123a84b'
nehalshah50 (Fri, 22 Sep 2017 16:39:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NPTbrqnhuQaKEHrtz) @mahoney1 ..I just tried that as well...I think the correct syntax is following ??
rule Default {
description: "Allow all business network participants access to all resources in this business network"
participant: "ANY"
operation: ALL
resource: "org.hyperledger.composer.system.Network"
action: ALLOW
}
But still getting error....see error below...
t: Participant 'org.acme.trade.Fisherman#bob@fisherman.com' does not have 'CREATE' access to resource 'org.acme.trade.RegisterFishCatch#4ebb29ac-f3f0-4378-b8b7-c3855123a84b'
mahoney1 (Fri, 22 Sep 2017 16:58:44 GMT):
@nehalshah50 - let me give a better example (the 'network' you've pasted is in a system context you got from the docs I suspect - my sample was a business network). So - your rule is: ```Default {
description: "Allow all participants access to all resources... in the business network"
participant: "ANY"
operation: ALL
resource: "org.acme.trade.*"
action: ALLOW
} ```
mahoney1 (Fri, 22 Sep 2017 17:01:04 GMT):
@nehalshah50 or see here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/permissions.acl for examples of more contextual/succinct access control examples.
mahoney1 (Fri, 22 Sep 2017 17:29:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZG9KHPTXN7Jymfiw4) @mahoney1 as mentioned, you need to access the specific property of the related object by its identifier through the relationship defined in the PreAuthTransaction (passed in), and access the asset (HealthInsContract in the screenshot) accordingly similar to examples shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js
mahoney1 (Fri, 22 Sep 2017 17:29:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZG9KHPTXN7Jymfiw4) as mentioned, you need to access the specific property of the related object by its identifier through the relationship defined in the PreAuthTransaction (passed in), and access the asset (HealthInsContract in the screenshot) accordingly similar to examples shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js
stcroppe (Fri, 22 Sep 2017 17:49:54 GMT):
Has joined the channel.
stcroppe (Fri, 22 Sep 2017 17:59:37 GMT):
Is there any more up to date documentation (in NPM or GitHub) on how to install and use composer on a local machine (e.g. Mac). One problem that I think needs to be addressed is that there is already a composer in the npm registry doowb/composer -> https://github.com/doowb/composer. So npm install gets confused. perhaps prefix the npm modules with Hyperledger or hlf-composer? I'll add this as an issue in the git repo.
ykcai (Fri, 22 Sep 2017 19:22:21 GMT):
Can anyone tell me how to query for all transactions using composer queries?
t_stephens67 (Fri, 22 Sep 2017 19:33:54 GMT):
Has joined the channel.
t_stephens67 (Fri, 22 Sep 2017 19:34:56 GMT):
Does anyone know if you can deploy a network across 2 peers and how to configure the yaml files for this?
t_stephens67 (Fri, 22 Sep 2017 19:47:26 GMT):
Please respond
rbulgarelli (Fri, 22 Sep 2017 19:50:44 GMT):
Has joined the channel.
vmd90 (Fri, 22 Sep 2017 20:54:19 GMT):
Has joined the channel.
m.egal (Fri, 22 Sep 2017 23:01:02 GMT):
I ran a POST command from REST server and it keeps timing out.
m.egal (Fri, 22 Sep 2017 23:01:04 GMT):
Unhandled array of errors for request POST /api/Member
Error: Error trying to query chaincode. Error: REQUEST_TIMEOUT
at channel.queryByChaincode.then.catch (/Users/mohamoudegal_ibm/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:782:34)
m.egal (Fri, 22 Sep 2017 23:01:33 GMT):
Message Attachments
m.egal (Fri, 22 Sep 2017 23:01:58 GMT):
^^ that's the JSON content I put into the POST request to add a Member
adrianblakey (Sat, 23 Sep 2017 00:56:00 GMT):
Is there a way to declaratively initialize an array? Like this: asset foo identified by fooId {
o String fooId
o String[] ct default = {"US", "UK"} // Is this possible?
}
ruf47 (Sat, 23 Sep 2017 08:21:15 GMT):
Has joined the channel.
ruf47 (Sat, 23 Sep 2017 08:25:18 GMT):
Hello! I am writting simple node app, that deploys business deifnition, adds parcitipants and assets. Do I need to make invoke bussinessNetworkConnection each time? I have noticed that when not doing so, only one task is done per one runtime ( so first runtime only add participants, second runtime adds the assets, third one commits transaction)
dselman (Sat, 23 Sep 2017 10:18:22 GMT):
@adrianblakey no, we don't currently support default values for arrays
dselman (Sat, 23 Sep 2017 10:18:51 GMT):
Nice idea though.
dselman (Sat, 23 Sep 2017 10:18:58 GMT):
Create an issue and we can track it
dselman (Sat, 23 Sep 2017 10:20:36 GMT):
@ruf47 I suspect your `Promise` chain is somehow messed up (usually because of a missing `then` or `return` somewhere). You have to remember that these are async calls, and if you want them to run in sequence you must chain them together using `then` calls.
dselman (Sat, 23 Sep 2017 10:21:06 GMT):
If they don't run sequentially then some of the operations may be failing, due to missing data.
dselman (Sat, 23 Sep 2017 10:22:14 GMT):
@stcroppe lots of documentation here: https://hyperledger.github.io/composer/installing/prereqs-mac.html and https://hyperledger.github.io/composer/installing/development-tools.html
dselman (Sat, 23 Sep 2017 10:22:23 GMT):
The npm module name is `composer-cli`
dselman (Sat, 23 Sep 2017 10:26:46 GMT):
@ykcai you can use this query ```query getHistorianRecords {
description: "get all Historian records"
statement: SELECT org.hyperledger.composer.system.HistorianRecord
}```
GirijaShankarMishra (Sat, 23 Sep 2017 18:39:05 GMT):
Hi friends I am running composer rest server while adding participant or getting details I am getting the following error
Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err MSP Org1MSP is unknown
zenware (Sat, 23 Sep 2017 20:33:52 GMT):
Has joined the channel.
zenware (Sat, 23 Sep 2017 20:39:17 GMT):
When using the ACL is it possible to define rules that say, a participant may access, not just the entirety of a resource, but only certain fields of a resource?
dselman (Sat, 23 Sep 2017 21:40:17 GMT):
No, not yet
zachgoll (Sat, 23 Sep 2017 23:30:15 GMT):
Has joined the channel.
zachgoll (Sun, 24 Sep 2017 01:03:29 GMT):
I'm trying to install dependencies, and keep getting a failure on hashtable.
zachgoll (Sun, 24 Sep 2017 01:03:31 GMT):
In file included from ../src/hashtable.cpp:1:
../src/hashtable.h:10:10: fatal error: 'unordered_map' file not found
#include
zachgoll (Sun, 24 Sep 2017 01:17:29 GMT):
Updated Node version from v6 to v8 and was able to install https://github.com/fabrice102/node-hashtable.git, but now deploying my business network is failing. Have been informed that deploying business networks on later versions of Node sometimes fails?
dselman (Sun, 24 Sep 2017 01:38:04 GMT):
Please check you are on a supported platform.
dselman (Sun, 24 Sep 2017 01:38:37 GMT):
Most likely explanation is that you are using an unsupported OS, version of npm/node
zachgoll (Sun, 24 Sep 2017 02:09:54 GMT):
I am on a supported platform, was not on a supported Node version. Thanks!
zachgoll (Sun, 24 Sep 2017 02:10:08 GMT):
Got packages installed!
davidoevans (Sun, 24 Sep 2017 14:09:50 GMT):
So far, we have only been issuing identities in Composer/Fabric...so when listing identities we see
```
$class: org.hyperledger.composer.system.Identity
identityId: 0cd5ac3f4170071bf8db7fca1fb122998bd370be2e14efc83d1610bfeb75ea9d
name: Sally
issuer: a7380edc8a35851301cfe3c26a094d81289970e7a3e40d90d927d4169f069c19
certificate:
state: ISSUED
participant: resource:org.healthchain.Dispenser#Sally
```
If we try binding a public key certificate to this identity, I expect it will populate the certificate property on this identity. Some questions:
1. What will the bound certificate actually be used for? (i.e. as best I can tell a user will still authenticate the same way...and fabric signs transactions using the private key associated with the issued identity).
2. Is the certificate meant to decrypt a transaction signed by a corresponding private key? If so, can the certificate be associated with a system outside of the Fabric/Fabric-CA/Composer world?
lucrezia.dm (Sun, 24 Sep 2017 14:15:26 GMT):
hi,
anyone know what is this kind of error "An error has occurred -->> Error: Required metadata field not found: userName" ??
It doesn't let me use Hyperledger Composer Playground on Bluemix.
TrucNguyen (Sun, 24 Sep 2017 14:41:28 GMT):
Has joined the channel.
dselman (Sun, 24 Sep 2017 16:21:06 GMT):
Clear you browser local storage.
dselman (Sun, 24 Sep 2017 16:21:06 GMT):
Clear your browser local storage.
dselman (Sun, 24 Sep 2017 16:21:31 GMT):
localStorage.clear() in the JS console
adrianblakey (Sun, 24 Sep 2017 17:09:00 GMT):
Playground does not seem to understand imported assets. In one model file: namespace org.acme.claim
import org.acme.common.*
adrianblakey (Sun, 24 Sep 2017 17:10:31 GMT):
Usage in this file in an asset like: asset Foo identified by fooId { o String fooId o Address address }
adrianblakey (Sun, 24 Sep 2017 17:10:59 GMT):
and in the common I define: concept Address { o ... }
adrianblakey (Sun, 24 Sep 2017 17:12:09 GMT):
Running a simple transaction to create an instance of Foo - I get: t: Type Address is not defined in namespace org.acme.claim
dselman (Sun, 24 Sep 2017 17:51:53 GMT):
There are several samples that use that - are you sure that there are no syntax errors in any of the files?
adrianblakey (Sun, 24 Sep 2017 20:14:19 GMT):
@dselman Nothing shows up in VSC - but I'll go back and isolate it.
adrianblakey (Sun, 24 Sep 2017 20:22:42 GMT):
I am trying to define my own types with similar names to the system types and getting inconsistent errors in VSC e.g. namespace foo; abstract concept BaseType {} concept Integer extends BaseType { o Integer integer} <-- this seems to work but: concept Boolean extends BaseType { o Boolean boolean} <-- this throws up a ParseException in VSC and if I do: concept String extends BaseType { o String string } and concept Code extends String { } concept Code extends String {} <-- this throws a TypeError. I have tried prefixing my types with the namespace name e.g. concept Code extends foo.String {} - this gives a parse error. Should this work?
adrianblakey (Sun, 24 Sep 2017 20:42:45 GMT):
Is there a way to default a concept on the model to a specific value - for example: concept Country { o String twoCharCode o String threeCharCode} asset Foo identifed by fooId { o Country default = [ "US", "USA]
Shaishavgaur (Sun, 24 Sep 2017 20:52:16 GMT):
Has joined the channel.
dselman (Sun, 24 Sep 2017 21:34:03 GMT):
The names of primitives (Integer, Boolean, Double etc) are effectively reserved. We should raise errors if you try to define your own types with these names.
dselman (Sun, 24 Sep 2017 21:34:20 GMT):
No, there is no way to define defaults for concepts.
mgk (Sun, 24 Sep 2017 22:21:00 GMT):
Hmm so this passes validation in VSC: namespace foo
abstract concept BaseType {}
concept Integer extends BaseType { o Integer integer}
concept Boolean extends BaseType { o Boolean boolean}
concept String extends BaseType { o String string }
mgk (Sun, 24 Sep 2017 22:21:00 GMT):
Hmm so this passes validation in VSC:
namespace foo
abstract concept BaseType {}
concept Integer extends BaseType { o Integer integer}
concept Boolean extends BaseType { o Boolean boolean}
concept String extends BaseType { o String string }
mgk (Sun, 24 Sep 2017 22:21:00 GMT):
Hmm, hi @dselman so this passes validation in VSC and so seems to allow overriding of the base type names - so is this a defect:
namespace foo
abstract concept BaseType {}
concept Integer extends BaseType { o Integer integer}
concept Boolean extends BaseType { o Boolean boolean}
concept String extends BaseType { o String string }
mgk (Sun, 24 Sep 2017 22:22:31 GMT):
and so does this which should give defaults at the concept level:
concept Country
{
o String twoCharCode default = "US"
o String threeCharCode default = "USA"
}
asset Foo identified by fooId
{
o Country country
o String fooId
}
mgk (Sun, 24 Sep 2017 22:22:31 GMT):
and this also passes VSC validation and should give defaults at the concept level:
concept Country
{
o String twoCharCode default = "US"
o String threeCharCode default = "USA"
}
asset Foo identified by fooId
{
o Country country
o String fooId
}
mgk (Sun, 24 Sep 2017 22:22:31 GMT):
and this also passes VSC validation and should give defaults at the concept level (but there is not way to override when it's used):
concept Country
{
o String twoCharCode default = "US"
o String threeCharCode default = "USA"
}
asset Foo identified by fooId
{
o Country country
o String fooId
}
mgk (Sun, 24 Sep 2017 22:22:31 GMT):
and this also passes VSC validation and should give defaults at the concept level (but there is no way to override when it's used):
concept Country
{
o String twoCharCode default = "US"
o String threeCharCode default = "USA"
}
asset Foo identified by fooId
{
o Country country
o String fooId
}
FengChen_1982 (Mon, 25 Sep 2017 03:02:11 GMT):
Has joined the channel.
FengChen_1982 (Mon, 25 Sep 2017 03:04:16 GMT):
@here I've used fabric 1.0 for a couple weeks but new to composer here. I'm wondering if I use composer can I get rid of all the CLI tools during the network creation process?
ilfrich (Mon, 25 Sep 2017 03:05:02 GMT):
What CLI tools are you referring to?
FengChen_1982 (Mon, 25 Sep 2017 03:06:52 GMT):
like the peer channel join. cryptogen, configtxgen...
KevinBai (Mon, 25 Sep 2017 03:15:31 GMT):
Hi @dselman , Can latest version invoke external chaincode?
natchapon.pa (Mon, 25 Sep 2017 04:13:43 GMT):
Hi.
In composer, Is it possible to view some specific field in each model.
For example, i can allow all participant to view information in asset `Car` but i don't want to expose data of `carOwner` contained in those assets
Is it possible to do it within composer.
natchapon.pa (Mon, 25 Sep 2017 04:13:43 GMT):
Hi.
In composer, Is it possible to view some specific field in each model?
For example, i can allow all participant to view information in asset `Car` but i don't want to expose data of `carOwner` contained in those assets
Is it possible to do it within composer?
ThiagoAzevedo (Mon, 25 Sep 2017 04:46:39 GMT):
Has joined the channel.
Luxii (Mon, 25 Sep 2017 05:11:51 GMT):
Hey I'm getting this error when deploying my .bna file into the local network ``` Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.1.6
Description: My Commodity Trading network
Error: Failed to load connection profile hlfv1. Error was Error: ENOENT: no such file or directory, open '/home/lakshay/.composer-connection-profiles/hlfv1/connection.json'```
ilfrich (Mon, 25 Sep 2017 05:28:55 GMT):
@natchapon.pa I'm pretty certain, that ACLs (access control lists) can only be applied to assets and not fields of assets.
ilfrich (Mon, 25 Sep 2017 05:28:55 GMT):
@natchapon.pa I'm pretty certain, that ACLs (access control lists) can only be applied to assets and not fields of assets. You'd have to solve this probably in the front-end.
ilfrich (Mon, 25 Sep 2017 05:28:55 GMT):
@natchapon.pa I'm pretty certain, that ACLs (access control lists) can only be applied to assets and not fields of assets. You'd have to solve this probably in the front-end (hide the information, the user is not allowed to see).
ilfrich (Mon, 25 Sep 2017 05:30:22 GMT):
@Luxii have you executed the `createComposerProfile.sh` from the `fabric-tools` (https://github.com/hyperledger/composer-tools/tree/master/packages/fabric-dev-servers/fabric-scripts/hlfv1)?
Luxii (Mon, 25 Sep 2017 05:30:44 GMT):
just did , solved it now
ilfrich (Mon, 25 Sep 2017 05:30:49 GMT):
It tells you what's wrong (`no such file or directory, open '/home/lakshay/.composer-connection-profiles/hlfv1/connection.json'`)
Luxii (Mon, 25 Sep 2017 05:30:57 GMT):
Thanks for your response
zasamen (Mon, 25 Sep 2017 08:30:25 GMT):
Hi.
I've updated the version of composer today. But if i try to deploy my app to network, it fails with _*Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1". Must create ConnectionManager with a ConnectionProfileManager implementation.*_ error. I'va already tried to resolve it with guide in this issue (https://github.com/hyperledger/composer/issues/1531) but it did not help. What should i do to fix that error?
lucrezia.dm (Mon, 25 Sep 2017 09:23:31 GMT):
is your online playground Composer still running? mine not
lucrezia.dm (Mon, 25 Sep 2017 09:36:55 GMT):
Message Attachments
zasamen (Mon, 25 Sep 2017 09:45:36 GMT):
@lucrezia.dm , Try to clear the cache & cookies. It helped for me. you'll be redirected to the login page. (you can try to open the login page (https://composer-playground.mybluemix.net/login) at first)
glotov (Mon, 25 Sep 2017 10:06:23 GMT):
Is the Fabric composer intended for production projects (in contrast to proof-of-concept demos)? If so, are there any recommendation or "best practices" to prepare the project for production level?
atulkamble (Mon, 25 Sep 2017 10:07:01 GMT):
Hello All,
My question is: Is Chaincode defined by Javascript Transaction defined in Hyperledger Composer as opposed to the Go Language code in Hyperledger Fabric ?
ilfrich (Mon, 25 Sep 2017 10:55:39 GMT):
Yes, @atulkamble
Composer uses a generic piece of Go chaincode, that starts a JS execution runtime that executes the transaction script.
Once Fabric supports native JS chaincode, afaik the plan is to stick with JS for transaction logic. Or someone develops native Go chaincode support that integrates with the .cto data model.
atulkamble (Mon, 25 Sep 2017 10:56:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pwBF9xxmsEPX2iRjF) @ilfrich Thanks a lot ! :)
kkado (Mon, 25 Sep 2017 11:44:26 GMT):
Has joined the channel.
zasamen (Mon, 25 Sep 2017 12:08:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aXttMzACMJvmC63jr) could anybody help with that?
Luxii (Mon, 25 Sep 2017 12:11:53 GMT):
Can we use composer for production level applications or is it just suitbale for poc only ?
mahoney1 (Mon, 25 Sep 2017 13:15:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5fNiAEcxv7DfKLBPN) @zasamen can you provide your OS version, node version and the output of ` can you provide the output of `npm list -g --depth=0` thanks..
mahoney1 (Mon, 25 Sep 2017 13:15:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5fNiAEcxv7DfKLBPN) @zasamen can you provide your OS version, node version and can you provide the output of `npm list -g --depth=0` thanks..
nicolapaoli (Mon, 25 Sep 2017 13:25:29 GMT):
Has joined the channel.
ppcm (Mon, 25 Sep 2017 13:53:26 GMT):
Has joined the channel.
pcg (Mon, 25 Sep 2017 14:07:27 GMT):
Has joined the channel.
pcg (Mon, 25 Sep 2017 14:11:34 GMT):
Hello to all, I am new to block chain and to hyperledger/composer - I have a setup dev environment and deployed the business network... I now need to write a script to receive records via tcp socket and write to hyperledger ... I need a hint please...
mahoney1 (Mon, 25 Sep 2017 14:13:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HRZbi4wW7ZFH2SRTs) @Luxii @glotov Yes, Composer is aimed at production level applications - ultimately, you'll be deploying production networks and transaction logic written in javascript that will execute on the blockchain network you configure. Currently, we directly execute the JavaScript using a JavaScript virtual machine called Duktape - it has Go bindings, so we have a small layer between Go and JavaScript. A member of the Composer Dev team is working with the Fabric dev team to deliver native Node.js chaincode support into Fabric. But there's no reason you can't develop your applications now to deploy to GA version of Hyperledger Composer and the supported runtime Fabric.
mahoney1 (Mon, 25 Sep 2017 14:13:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HRZbi4wW7ZFH2SRTs) @Luxii Yes, Composer is aimed at production level applications - ultimately, you'll be deploying production networks and transaction logic written in javascript that will execute on the blockchain network you configure. Currently, we directly execute the JavaScript using a JavaScript virtual machine called Duktape - it has Go bindings, so we have a small layer between Go and JavaScript. A member of the Composer Dev team is working with the Fabric dev team to deliver native Node.js chaincode support into Fabric. But there's no reason you can't develop your applications now to deploy to GA version of Hyperledger Composer and the supported runtime Fabric.
mahoney1 (Mon, 25 Sep 2017 14:16:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=E424rvYKhaBt42K3t) @lucrezia.dm open up the developer console (F12) and type in `localStorage.clear() or in some browsers (Chrome, Firefox) you can click the clear icon in the popup console panel.
mahoney1 (Mon, 25 Sep 2017 14:23:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=At7HbiLpxau6YgMkp) @FengChen_1982 you will still need Fabric tools - it deals with the Fabric infrastructure (Composer does not replicate these nor their function). Composer is mainly about the Developing Blockchain apps experience and sits above (is a layer above) but interacts with the runtime Fabric. Hyperledger Composer supports the existing Hyperledger Fabric blockchain infrastructure and runtime, See here for more info https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture. Hyperledger Composer is essentially an extensive, open development toolset and framework to make developing blockchain applications easier, and develop/model/test/deploy/interact in a more a consistent way.
mahoney1 (Mon, 25 Sep 2017 15:00:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=imqGHRmQfaH5Eg3XR) @pcg hi there, welcome ! You can try out the tutorials https://hyperledger.github.io/composer/tutorials/tutorials.html or read more about developing your script logic here -> https://hyperledger.github.io/composer/applications/node.html . We have plenty of example networks, with sample models and transactions here -> https://github.com/hyperledger/composer-sample-networks/tree/master/packages some of them have models in those individual sample network directories.
ykcai (Mon, 25 Sep 2017 15:18:55 GMT):
Am i able to call a transaction processor function from within another transaction processor function?
cweiers (Mon, 25 Sep 2017 15:45:07 GMT):
Has anybody here tried to adapt the generated angular2 app with a multi-user composer rest server with github-authentification? I was able to finally understand how multi-user-mode for the rest server works (thanks to some nice hints by @rthatcher :) ). I would now like to use the same authentification in my angular-app thats based on the yeoman-generated one. Do I have to check the access token cookie in the angular data service? I'm lacking a bit of experience when it comes to js / angular development unfortunately, and right now I don`t know where to look next. As always, your help is much appreciated
cweiers (Mon, 25 Sep 2017 15:45:07 GMT):
Has anybody here tried to adapt the generated angular2 app to use a multi-user composer rest server with github-authentification? I was able to finally understand how multi-user-mode for the rest server works (thanks to some nice hints by @rthatcher :) ). I would now like to use the same authentification in my angular-app thats based on the yeoman-generated one. Do I have to check the access token cookie in the angular data service? I'm lacking a bit of experience when it comes to js / angular development unfortunately, and right now I don`t know where to look next. As always, your help is much appreciated
Udayan_Deshmukh (Mon, 25 Sep 2017 15:46:00 GMT):
Message Attachments
Udayan_Deshmukh (Mon, 25 Sep 2017 15:46:08 GMT):
The screenshot shows 2 diff ways of creating 'Invoices.
Code for the first case is straightforward - whereas I populate each of the Asset fields from the Transaction parameter values in 2nd case.
The difference as seen is the way Transaction ID is populated in the Registry - resulting in relationship pointers breaking in first case, whereas they work just fine in the second (where Transaction ID is same as Invoice number)
My Question - wouldn't the secon Transaction get a unique Transaction ID (different form my Invoice number) like that in the frist case ? If so where/how do I retrieve it from?
ykcai (Mon, 25 Sep 2017 16:10:11 GMT):
Can you write a composer query such that it returns values the results sorted by the timestamp?
cweiers (Mon, 25 Sep 2017 16:38:28 GMT):
@ykcai Is the timestamp a DateTime field in your asset/participant definition? If yes, it should work (well, as long as DateTime objects are comparable, that is). See https://hyperledger.github.io/composer/reference/query-language.html : "ORDER BY is an optional operator which defines the sorting or results." So you could write a query for all assets/participants of the desired type and order by timestamp. Not 100% sure if it works that way though, but thats something to try out :)
ajp (Mon, 25 Sep 2017 17:12:07 GMT):
Hello all, I was wondering what the standard is for handling asset creation when I want to attach logic to the creation? For example, there are fields in my Asset that I want to set at creation-time but that the user should not be able to choose, but when loading the network in composer or running the REST server, the PUT interaction is automatically generated for the asset and I can't gatekeep that interaction with a JS function. There are two ways I see this happening:
1. Somehow a JS function can be attached to the REST calls that are automatically generated for an asset
2. I disallow all interactions with an asset using an ACL and only allow interaction with specific transactions that do what I want when it comes to creating assets etc.
Unless there's a different method I'm not aware of, is one of these the accepted way for handling these situations?
ajp (Mon, 25 Sep 2017 17:12:07 GMT):
Hello all, I was wondering what the standard is for handling asset creation when I want to attach logic to the creation? For example, there are fields in my Asset that I want to set at creation-time but that the user should not be able to choose, but when loading the network in composer or running the REST server, the PUT interaction is automatically generated for the asset and I can't gatekeep that interaction with a JS function. There are two ways I see this happening:
1. Somehow a JS function can be attached to the REST calls that are automatically generated for an asset
2. I disallow all interactions with an asset using the ACL and only allow interaction with specific transactions that do what I want when it comes to creating assets etc.
Unless there's a different method I'm not aware of, is one of these the accepted way for handling these situations?
ykcai (Mon, 25 Sep 2017 17:20:23 GMT):
@cweiers can i do this if i query the HistorianRecords? It has a timestamp field but it has a different order in which it appears
ykcai (Mon, 25 Sep 2017 17:48:43 GMT):
@cweiers Id like to order by the default timestamp that it created for transactions
ykcai (Mon, 25 Sep 2017 17:48:43 GMT):
@cweiers Id like to order by the default timestamp that is created for transactions
mahoney1 (Mon, 25 Sep 2017 18:23:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YjrtFuEyfbK5wwtA6) @ykcai yes, you can call another transaction processor function from a transaction processor function
mahoney1 (Mon, 25 Sep 2017 18:37:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=p8LaeimvZTxo9WaTz) @cweiers @ykcai See also here about sort index -> https://stackoverflow.com/questions/45919898/order-by-not-working-in-named-query/45966828#45966828
ykcai (Mon, 25 Sep 2017 18:48:41 GMT):
@mahoney1 this seems to be problematic, using ORDER BY...
mahoney1 (Mon, 25 Sep 2017 19:02:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=W3oEXxZrXsx6S6g2b) @Udayan_Deshmukh yes, it would - you've created two assets. If you go to the historian, you can see the 'system' type AddAsset transactions and ids (generated for you).. I'm not entirely clear why you've created (based on your screenshot) an Asset with a transaction id.
mahoney1 (Mon, 25 Sep 2017 19:04:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2dKQxykZ9y76XoNPi) @ykcai single sort field ? Did you define an index ? From here, seems you should be able to do this https://github.com/hyperledger/composer/issues/1640
ykcai (Mon, 25 Sep 2017 19:10:35 GMT):
@mahoney1 How do i define an index here?
AccentSandy (Mon, 25 Sep 2017 20:41:02 GMT):
Hi Guys - It appears the following link to download the fabric-tools is not working. https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip. Does anyone knows if the link has been updated. Thanks
davidkel (Mon, 25 Sep 2017 21:48:51 GMT):
@Udayan_Deshmukh In the case of the top entry in the asset registry, you've actually added the transaction object to the asset registry rather than the object you created as you can see from the $class entry, also it is a transaction object because it has a transaction id and timestamp. I have raised an issue about this because I don't think it should be possible to add that object to the asset registry.
iwhanttoknow (Mon, 25 Sep 2017 21:57:02 GMT):
Hey. I am trying to issue new ID and then have this error "Error: fabric-ca request register failed with error [[{"code":400,"message":"Authorization failure"}]]".
ujjwalmishra (Tue, 26 Sep 2017 03:09:57 GMT):
Has joined the channel.
ujjwalmishra (Tue, 26 Sep 2017 03:14:43 GMT):
Hi Guys, I am new to Hyperledger.
Can we use keys generated by fabric ca as ids for composer participants ?
Is there any documentation for same, kindly guide.
ilfrich (Tue, 26 Sep 2017 04:34:43 GMT):
@Luxii - both - PoC and production scenarios are supposed to be supported.
mamtabharadwaj (Tue, 26 Sep 2017 04:34:45 GMT):
Message Attachments
jon_s (Tue, 26 Sep 2017 05:19:29 GMT):
Has joined the channel.
ZazaLamour (Tue, 26 Sep 2017 06:30:25 GMT):
Has joined the channel.
ZazaLamour (Tue, 26 Sep 2017 06:31:10 GMT):
can someone help install fabricc and composer 50.00 paid effort
ZazaLamour (Tue, 26 Sep 2017 06:31:24 GMT):
showbox654265@gmail.com
ZazaLamour (Tue, 26 Sep 2017 06:31:32 GMT):
please help
pcg (Tue, 26 Sep 2017 06:31:44 GMT):
@mahoney1 - Thanks - I will try them out
pcg (Tue, 26 Sep 2017 07:16:20 GMT):
hi there - I wrote a simple node.js script and run it my ubuntu dev machine where I deployed the digitalproperty-network and I get the following error:
pcg (Tue, 26 Sep 2017 07:16:21 GMT):
digitalproperty-network
pcg (Tue, 26 Sep 2017 07:16:40 GMT):
return getParticipantRegistry('net.biz.digitalPropertyNetwork.Person')
^
ReferenceError: getParticipantRegistry is not defined
zasamen (Tue, 26 Sep 2017 07:45:16 GMT):
@mahoney1 ,Hi, ubuntu 16.04, node 6.11.2 ,
zasamen (Tue, 26 Sep 2017 07:45:16 GMT):
Message Attachments
davidkel (Tue, 26 Sep 2017 07:58:30 GMT):
@zasamen could you provide more detail about what you were trying to do when you got that error ? I suspect it is your own application rather than the cli, rest-server or playground outputting that message. If it is your application then could you also provide a code snippet showing the code and the line the generates the error
zasamen (Tue, 26 Sep 2017 08:32:08 GMT):
i've added to scripts of 'package.json' next line to the script paragraph "deploy": "cd ./dist && composer network deploy -a hc-blockchain.bna -p hlfv1 -i PeerAdmin -s randomString && cd ..",
in the terminal i write `npm run deploy`, then it generates the error i've mentioned earlier
zasamen (Tue, 26 Sep 2017 08:32:08 GMT):
i've added to scripts of 'package.json' next line to the script paragraph `"deploy": "cd ./dist && composer network deploy -a hc-blockchain.bna -p hlfv1 -i PeerAdmin -s randomString && cd .."`,
in the terminal i write `npm run deploy`, then it generates the error i've mentioned earlier
Luxii (Tue, 26 Sep 2017 09:03:11 GMT):
In trading commodity example , how are we supposed to use *Trade* transaction in our local dev environment using *api/explorer* ?
Luxii (Tue, 26 Sep 2017 09:04:06 GMT):
cause everytime i try to .. it gives me this error ```{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: chaincode error (status: 500, message: Error: Instance org.acme.mynetwork.Commodity#hope missing required field owner)",
"stack": "Error: Error trying invoke business network. Error: chaincode error (status: 500, message: Error: Instance org.acme.mynetwork.Commodity#hope missing required field owner)\n at _initializeChannel.then.then.then.then.catch (/home/lakshay/.nvm/versions/node/v6.11.3/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:836:34)"
}
}```
uber.twin (Tue, 26 Sep 2017 09:05:04 GMT):
@davidkel hi, would a non endorsing peer be able to execute by itself a query only operation with the ledger? or the participation of an endorsing peer is always necessary, now matter if the transaction has a read only nature?
uber.twin (Tue, 26 Sep 2017 09:05:04 GMT):
@davidkel hi, would a non endorsing peer be able to execute by itself a query only operation with the ledger? or the participation of an endorsing peer is always necessary, no matter if the transaction has a read only nature?
tbltzk (Tue, 26 Sep 2017 09:22:14 GMT):
@uber.twin good question! I'd love to know that as well. As this does not really refer to composer, maybe you try in the more general #fabric channel
john2000 (Tue, 26 Sep 2017 09:50:04 GMT):
export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "REPLACE_WITH_CLIENT_ID",
"clientSecret": "REPLACE_WITH_CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
john2000 (Tue, 26 Sep 2017 09:54:30 GMT):
I set "successRedirect": "htpp://chain-web.demo.com"; But when composer callback success, browser redirect to "htpp://chain.demo.com/htpp://chain-web.demo.com"
davidkel (Tue, 26 Sep 2017 09:54:38 GMT):
@uber.twin so long as the business network has been installed on thar peer, even if it's not an endorsing peer you should still be able to use it for queries, you just can't submit transactions
john2000 (Tue, 26 Sep 2017 09:58:18 GMT):
If i set "http://chain-api.demo.com" as composer rest server, successRedirect need redirect to another URL like "http://chain-web.demo.com" as user interface, not "http://chain-api.demo.com/http://chain-web.demo.com"
Udayan_Deshmukh (Tue, 26 Sep 2017 09:58:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tR3LLnd7yhSQGqb8H) @davidkel Thanks for logging an issue. I accidentally discovered this issue. In my PoC scenario (Only Doctor is allowed to CreateMedicalExamReport while only Billing Desk is allowed CreateInvoice transaction) I ended up coding them differently and ran into an issue not being able to access 'related' transaction records. As Paul suggested I checked the Historian Record to confirm that both ways of coding are indeed stamped with a Transaction ID (though in the 2nd case it doesn't display in Asset Registry) ... as of thsi writing I'm still trying to understand pros-and-cons of coding it 2 different ways... appreciate any additional info/details... Thanks!
Udayan_Deshmukh (Tue, 26 Sep 2017 09:58:53 GMT):
Message Attachments
john2000 (Tue, 26 Sep 2017 09:59:08 GMT):
export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "REPLACE_WITH_CLIENT_ID",
"clientSecret": "REPLACE_WITH_CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "http://chain-web.demo.com",
"failureRedirect": "/"
}
}'
john2000 (Tue, 26 Sep 2017 09:59:19 GMT):
If i set "http://chain-api.demo.com" as composer rest server, successRedirect need redirect to another URL like "http://chain-web.demo.com" as user interface, not "http://chain-api.demo.com/http://chain-web.demo.com"
john2000 (Tue, 26 Sep 2017 10:01:31 GMT):
somebody has the same problem?
harj91 (Tue, 26 Sep 2017 10:24:20 GMT):
Hi, trying to deploy my .bna file to fabric via terminal and I get the following error: Missing required argument: archiveFile. any idea how to fix this? Thanks
pcg (Tue, 26 Sep 2017 10:39:30 GMT):
what is the command you typed ? did you include the bna file ?
natchapon.pa (Tue, 26 Sep 2017 10:59:36 GMT):
Hi
In rest server api, when i request any transaction , it will response with output including `transactionId` and `timestamp` in body
My question is Can i modify these response output to show other information in the body
pagecj (Tue, 26 Sep 2017 11:17:21 GMT):
Has joined the channel.
mahoney1 (Tue, 26 Sep 2017 11:49:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LXtZyXHZeqysQaYTq) @ykcai see here http://docs.couchdb.org/en/latest/ddocs/views/intro.html?highlight=view
mahoney1 (Tue, 26 Sep 2017 11:50:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=m74K2X2JMgSYFCuFv) @harj91 see here for example -> https://hyperledger.github.io/composer/reference/composer.archive.create.html eg. `composer archive create --sourceType dir --sourceName
mahoney1 (Tue, 26 Sep 2017 11:50:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=m74K2X2JMgSYFCuFv) @harj91 For archiving firstly - see here for example -> https://hyperledger.github.io/composer/reference/composer.archive.create.html eg. `composer archive create --sourceType dir --sourceName
mahoney1 (Tue, 26 Sep 2017 11:52:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nNYJCYtx6y4yqPShH) @john2000 in which case, suggest to use '/' as the root path
mahoney1 (Tue, 26 Sep 2017 11:52:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nNYJCYtx6y4yqPShH) @john2000 in which case, suggest to use '/' as the 'successRedirect' path
mahoney1 (Tue, 26 Sep 2017 11:56:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xekr7Q6f34SejcXnR) @pcg would need to post your code pls and thanks.
pcg (Tue, 26 Sep 2017 12:16:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hGa9KPzuYX2owTyPv) @mahoney1
pcg (Tue, 26 Sep 2017 12:19:38 GMT):
@mahoney1 thanks - pls see below:
pcg (Tue, 26 Sep 2017 12:19:40 GMT):
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
this.bizNetworkConnection = new BusinessNetworkConnection();
this.CONNECTION_PROFILE_NAME = 'hlfv1' ;
this.businessNetworkIdentifier = 'digitalproperty-network' ;
this.bizNetworkConnection.connect(this.CONNECTION_PROFILE_NAME, this.businessNetworkIdentifier, 'admin', 'adminpw')
.then((result) => {
this.businessNetworkDefinition = result;
});
// Get the participant registry.
return getParticipantRegistry('net.biz.digitalPropertyNetwork.Person')
.then(function (participantRegistry) {
// Get the factory for creating new participant instances.
var factory = getFactory();
// Create the first driver.
var person1 = factory.newResource('net.biz.digitalPropertyNetwork.Person', 'Person', 'mmm_1@biznet.org');
person1.firstName = 'myperson-fn1';
person1.lastName = 'myperson-ln1';
// Create the second driver.
var person2 = factory.newResource('org.acme', 'Driver', 'VEHICLE_2');
person2.firstName = 'myperson-fn2';
person2.lastName = 'myperson-ln2';
// Add the drivers to the driver participant registry.
return participantRegistry.addAll([person1, person2]);
})
.catch(function (error) {
// Add optional error handling here.
});
this.bizNetworkConnection.disconnect();
mahoney1 (Tue, 26 Sep 2017 12:27:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=awHcZfuFJx4QNCLgi) @AccentSandy hmmm - some temporary thing going on? It seems fine now. Pls try and let me know. Thanks.
Luxii (Tue, 26 Sep 2017 12:32:52 GMT):
how can we make a concept like object in our script.js and push it to our model.cto ?
Luxii (Tue, 26 Sep 2017 12:47:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=m7GFSGLJggeR8p5sD) @Luxii Found the solution ! we have to use `getFactory().newConcept('
nasht00 (Tue, 26 Sep 2017 13:09:10 GMT):
Hi,
My code was working fine, then in the past few days I get this error:
`Error: Failed to load connector module "composer-connector-embedded" for connection profile "test". Must create ConnectionManager with a ConnectionProfileManager implementation.- at connectionProfileStore.load.then.e (node_modules/composer-admin/node_modules/composer-common/lib/connectionprofilemanager.js:160:38)`
Has something changed recently?
mahoney1 (Tue, 26 Sep 2017 13:12:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gFdbw2ssbSAKwFsHp) @pcg see examples here - probably need to use the promise returned using something like `this.bizNetworkConnection.getParticipantRegistry('net.biz.digitalPropertyNetwork.Person')`
mahoney1 (Tue, 26 Sep 2017 13:15:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BfDTR8PwJf7rvmZDC) @nasht00 nothing changed in this regard I believe. Does your package.json devDependencies have `composer-connector-embedded` defined ?
mahoney1 (Tue, 26 Sep 2017 13:15:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BfDTR8PwJf7rvmZDC) @nasht00 nothing changed in this regard I believe. Does your package.json devDependencies have `composer-connector-embedded` defined ? If not, add it to the stanza and then `npm install` etc.
nasht00 (Tue, 26 Sep 2017 13:17:08 GMT):
It does, I haven't touched this part of my code (the test suite) for a while, for it started failing a few days ago
nasht00 (Tue, 26 Sep 2017 13:17:08 GMT):
It does, I haven't touched this part of my code (the test suite) for a while, but it started failing a few days ago
nasht00 (Tue, 26 Sep 2017 13:38:35 GMT):
Am I supposed to manually create a `ConnectionManager`? I don't see any public API for this so I'm not sure the error is intended for end-user developers?
mahoney1 (Tue, 26 Sep 2017 13:42:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8dzzsQC5RsHd2XaBo) @nasht00 that's interesting .... what level of Composer have you installed ? can you post a `npm list -g --depth=0`
mahoney1 (Tue, 26 Sep 2017 13:42:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8dzzsQC5RsHd2XaBo) @nasht00 that's interesting .... what level of Composer have you installed ? can you post a `npm list -g --depth=0` thanks
nasht00 (Tue, 26 Sep 2017 13:44:10 GMT):
`-g`? Aren't we more interested in the packages for this specific project?
nasht00 (Tue, 26 Sep 2017 13:44:33 GMT):
I'll give you both just in case.
nasht00 (Tue, 26 Sep 2017 13:45:42 GMT):
```
nathanh-mbp:vbcclient nathanh$ npm list --depth=0
vbc-client@0.1.0 somepath
├── browserfs@1.4.3
├── composer-admin@0.13.0
├── composer-client@0.12.2
├── composer-common@0.12.2
├── composer-connector-embedded@0.12.2
├── mocha@3.5.3
├── sinon@2.4.1
└── supertest@3.0.0
```
```
nathanh-mbp:vbcclient nathanh$ npm list -g --depth=0
/Users/nathanh/.nvm/versions/node/v6.11.2/lib
├── @angular/cli@1.3.0
├── composer@0.14.2
├── composer-cli@0.12.0
├── composer-rest-server@0.12.0
├── depcheck@0.6.7
├── eslint@4.4.1
├── generator-hyperledger-composer@0.12.0
├── jshint@2.9.5
├── lerna@2.0.0
├── nodemon@1.11.0
├── npm@3.10.10
├── typescript@2.5.2
├── vbc-client@0.1.0 -> somepath/vbcclient
└── yo@2.0.0
npm ERR! extraneous: composer-admin@0.13.0 /Users/nathanh/.nvm/versions/node/v6.11.2/lib/node_modules/vbc-client/node_modules/composer-admin
npm ERR! extraneous: mocha@3.5.3 /Users/nathanh/.nvm/versions/node/v6.11.2/lib/node_modules/vbc-client/node_modules/mocha
npm ERR! extraneous: sinon@2.4.1 /Users/nathanh/.nvm/versions/node/v6.11.2/lib/node_modules/vbc-client/node_modules/sinon
npm ERR! extraneous: supertest@3.0.0 /Users/nathanh/.nvm/versions/node/v6.11.2/lib/node_modules/vbc-client/node_modules/supertest
```
nasht00 (Tue, 26 Sep 2017 13:52:12 GMT):
aha - I think I've got something.
I noticed that admin was 0.13 while embedded was 0.12.2.
I tried to put all of them as "latest" and it seems to solve the issue
john2000 (Tue, 26 Sep 2017 14:08:44 GMT):
@mahoney1 use '/' as the 'successRedirect' path , redirect to ""
john2000 (Tue, 26 Sep 2017 14:10:49 GMT):
use '/' as the 'successRedirect' path, redirect to "http://chain-api.demo.com/explorer/#/". may be i need use nginx agent?
mahoney1 (Tue, 26 Sep 2017 14:21:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XNTqaHSpM2a5XMZQN) @john2000 - the working Github example is here -> https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html- it uses successRedirect set to '/' in COMPOSER_PROVIDERS to redirect to the localhost REST server eg. http://localhost:3000/explorer/ - so from a distance, not sure what's missing in your setup?
mahoney1 (Tue, 26 Sep 2017 14:21:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XNTqaHSpM2a5XMZQN) @john2000 - the working Github example is here -> https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html- it uses successRedirect set to '/' in COMPOSER_PROVIDERS to redirect to the localhost REST server eg. http://localhost:3000/explorer/ in the Docs example - so from a distance, not sure what's missing in your setup - host resolution?
john2000 (Tue, 26 Sep 2017 14:30:48 GMT):
@mahoney1 yeah,if you set successRedirect to '/' browse would redirect to " http://localhost:3000/explorer/#/", if you host is "localhost".
john2000 (Tue, 26 Sep 2017 14:32:09 GMT):
but what i want is like "xxx.localhost" not "localhost/xxx"
john2000 (Tue, 26 Sep 2017 14:33:03 GMT):
in real buessiness of the company not just a "http://localhost"
ykcai (Tue, 26 Sep 2017 14:44:11 GMT):
Does anyone know what Object i need to pass inorder to call a transaction processor function from another transaction processor function? The object that is passed to it by the Composer API doesnt seem to be JSON just a random Object. For example if my transactions has the fields
```transaction Trade {
--> Commodity commodity
--> Trader newOwner
}```
john2000 (Tue, 26 Sep 2017 15:03:20 GMT):
@ykcai you can use event
ykcai (Tue, 26 Sep 2017 15:10:39 GMT):
@john2000 can you explain further? I am new to Composer functionalities! D:
cweiers (Tue, 26 Sep 2017 15:35:09 GMT):
Message Attachments
cweiers (Tue, 26 Sep 2017 15:35:30 GMT):
I have a rather strange problem (well, a few of them actually, but one at the time :D ). When I start my (modified) yeoman generated angular app via npm start, the "npm run app" part that starts the rest server doesn't show anything besides the calls to the system endpoint
cweiers (Tue, 26 Sep 2017 15:37:44 GMT):
if I however call the exact same command (composer-rest-server -p hlfv1 -n geo-network -i admin -s adminpw -N never -w true) , I do get the correct rest server setup
Cgravel (Tue, 26 Sep 2017 16:40:45 GMT):
Has joined the channel.
ppcm (Tue, 26 Sep 2017 17:14:22 GMT):
Hello guys
ppcm (Tue, 26 Sep 2017 17:15:46 GMT):
I have a little problem with the new version of composer. My chaincode works fine with the 0.11, now with the 0.13, when I add an asset outside of a chaincode, I have the error: "Error: Missing id"
Any idea?
ppcm (Tue, 26 Sep 2017 17:15:46 GMT):
I have a little problem with the new version of composer. My chaincode worked fine with the 0.11, now with the 0.13, when I add an asset outside of a chaincode, I have the error: "Error: Missing id"
Any idea?
ppcm (Tue, 26 Sep 2017 17:32:03 GMT):
Of course, the ID is present in the new asset after the creation ;-)
ykcai (Tue, 26 Sep 2017 17:52:26 GMT):
Anyone know how I can query on fields inside the eventsEmitted under historian ```{
"$class": "org.hyperledger.composer.system.HistorianRecord",
"transactionId": "c1bcd961-41bb-43a3-b5ee-c1c3694f7736",
"transactionType": "Transfer",
"transactionInvoked": "resource:org.hyperledger.composer.system.Transaction#c1bcd961-41bb-43a3-b5ee-c1c3694f7736",
"eventsEmitted": [{
"$class": "org.hyperledger.composer.TradeNotification",
"type": "hello",
"eventId": "65256cfe-2ac3-43bf-b58d-c80178bc0dc1#0",
"timestamp": "2017-09-26T15:20:28.574Z"
}],
"transactionTimestamp": "2017-09-04T07:55:54.405Z"
}```
ykcai (Tue, 26 Sep 2017 17:52:26 GMT):
Anyone know how I can query on fields inside the eventsEmitted under historian such as access the type field in a query file```{
"$class": "org.hyperledger.composer.system.HistorianRecord",
"transactionId": "c1bcd961-41bb-43a3-b5ee-c1c3694f7736",
"transactionType": "Transfer",
"transactionInvoked": "resource:org.hyperledger.composer.system.Transaction#c1bcd961-41bb-43a3-b5ee-c1c3694f7736",
"eventsEmitted": [{
"$class": "org.hyperledger.composer.TradeNotification",
"type": "hello",
"eventId": "65256cfe-2ac3-43bf-b58d-c80178bc0dc1#0",
"timestamp": "2017-09-26T15:20:28.574Z"
}],
"transactionTimestamp": "2017-09-04T07:55:54.405Z"
}```
ykcai (Tue, 26 Sep 2017 17:52:26 GMT):
Anyone know how I can query on fields inside the eventsEmitted under historian such as access the` type` field in a query file```{
"$class": "org.hyperledger.composer.system.HistorianRecord",
"transactionId": "c1bcd961-41bb-43a3-b5ee-c1c3694f7736",
"transactionType": "Transfer",
"transactionInvoked": "resource:org.hyperledger.composer.system.Transaction#c1bcd961-41bb-43a3-b5ee-c1c3694f7736",
"eventsEmitted": [{
"$class": "org.hyperledger.composer.TradeNotification",
"type": "hello",
"eventId": "65256cfe-2ac3-43bf-b58d-c80178bc0dc1#0",
"timestamp": "2017-09-26T15:20:28.574Z"
}],
"transactionTimestamp": "2017-09-04T07:55:54.405Z"
}```
jfodale (Tue, 26 Sep 2017 18:34:53 GMT):
I'm trying to create an asset, and I would like it to just be identified by a one-up number that increments each time another asset of that type is created. Is there any 'native' syntax for this in the modeling language?
jfodale (Tue, 26 Sep 2017 18:35:39 GMT):
maybe something like 'autokey' or something? :/
mahoney1 (Tue, 26 Sep 2017 18:57:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LuDSxPpfpMAqGqs4J) @cweiers so you saw all the info about webpacks too? And you went to port 4200 for the application?
mahoney1 (Tue, 26 Sep 2017 19:08:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=H8uWCahtuzJ4EWb2Y) @jfodale not presently. You could just have a property that gets updated when you've captured that the asset was added.
jfodale (Tue, 26 Sep 2017 19:08:30 GMT):
@mahoney1 thanks!
dselman (Tue, 26 Sep 2017 19:10:07 GMT):
@jfodale this won't work once you have multiple peers processing multiple transactions concurrently. The only reliable way is to allocate ids on the client and pass them in, or to derive them (deterministically) from the incoming transaction id somehow.
dselman (Tue, 26 Sep 2017 19:11:15 GMT):
@ppcm stack trace?
nileshyjadhav (Tue, 26 Sep 2017 19:13:52 GMT):
I am trying to create composer-rest-server (with no-security), I am getting below error :
nileshyjadhav (Tue, 26 Sep 2017 19:16:00 GMT):
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
0|composer | Discovering types from business network definition ...
0|composer | Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
0|composer | It will be retried for the next request.
0|composer | Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
0|composer | at client.getUserContext.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:302:34)
0|composer | at process._tickDomainCallback (internal/process/next_tick.js:135:7)
0|composer | Exception: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
PM2 | App [composer-rest-server] with id [0] and pid [18], exited with code [1] via signal [SIGINT]
PM2 | Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
PM2 | App name:composer-rest-server id:0 online
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
COMPOSER_CONNECTION_PROFILE=hlfv1
COMPOSER_BUSINESS_NETWORK=vivar-network-2
COMPOSER_ENROLLMENT_ID=PeerAdmin
COMPOSER_ENROLLMENT_SECRET=PeerAdmin
COMPOSER_NAMESPACES=never
COMPOSER_AUTHENTICATION=false
COMPOSER_MULTIUSER=false
COMPOSER_CONFIG='{
"connectionProfiles": {
"hlfv1": {
"name": "hlfv1",
"description": "Hyperledger Fabric v1.0",
"type": "hlfv1",
"keyValStore": "/home/composer/.composer-credentials",
"timeout": 300,
"orderers": [
{
"url": "grpc://localhost:7050"
}
],
"channel": "mychannel",
"mspID": "AODMSP",
"ca": {
"url": "http://localhost:7054",
"name": "ca.aod.aexp.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
]
}
}
}'
mahoney1 (Tue, 26 Sep 2017 19:18:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=e7rn4TaEy2NQiYXFG) @ykcai we do not yet support queries across/over arrays. Perhaps you could you file a Github issue for that - with the details of the sorts of query you would like? Thanks
mahoney1 (Tue, 26 Sep 2017 19:18:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=e7rn4TaEy2NQiYXFG) @ykcai we do not yet support queries across/over arrays (eventsEmitted). Perhaps you could you file a Github issue for that - with the details of the sorts of query you would like? Thanks
Raje (Tue, 26 Sep 2017 19:32:57 GMT):
the `composer network ping` works but the `composer-rest-server` doesn't. It is giving this error message "composer-rest-server -p Visa-hlfv1 -n my-network -i PeerAdmin -s randomString -N never
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: Error trying to query chaincode. Error: could not find chaincode with name 'my-network' - make sure the chaincode my-network has been successfully instantiated and try again
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Error trying to query chaincode. Error: could not find chaincode with name 'my-network' - make sure the chaincode my-network has been successfully instantiated and try again
Error: Error trying to ping. Error: Error trying to query chaincode. Error: could not find chaincode with name 'my-network' - make sure the chaincode my-network has been successfully instantiated and try again
at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:696:34)".
Raje (Tue, 26 Sep 2017 19:33:30 GMT):
I have started the network successfully
ppcm (Tue, 26 Sep 2017 19:46:40 GMT):
@dselman Nothing in trace
When I put the analog code in a chaincode, I have the following error:
Error: Error trying invoke business network. Error: chaincode error (status: 500, message: Error: Object with ID 'Resource {id=zzz.yyy.xxx.tttt#e60e56d92a6928d3f4d1c5bc9bb828c3fc0a292c26ccc35935c594ac0e160c28}' in collection with ID 'Asset:zzz.yyy.xxx.tttt' does not exist)
ppcm (Tue, 26 Sep 2017 19:47:38 GMT):
@dselman The identity which plays the code is the default admin
dselman (Tue, 26 Sep 2017 19:49:27 GMT):
The error appears to be saying that you've submitted a transaction that is related to `-->` an asset that does not exist.
ppcm (Tue, 26 Sep 2017 19:51:26 GMT):
That's what I understand too, but I try to add the asset with a composer-client.AssetRegistry.add() method
dselman (Tue, 26 Sep 2017 19:52:05 GMT):
That is an async method call, are you sure it has completed (using a `.then` in your promise chain) when you submit the transaction?
ppcm (Tue, 26 Sep 2017 19:54:30 GMT):
Yes, I do
Here an extract of the code
```
return getAssetRegistry(NS + '.ttt')
.then(function (tttRegistry) {
// Add new ttt
return tttRegistry.add(ttt)
.then(function () {
// Emit an event.
```
ppcm (Tue, 26 Sep 2017 19:55:08 GMT):
And the error is on the add call
prmdmshra (Tue, 26 Sep 2017 19:55:44 GMT):
I am getting the following error on launching the Angular2 web application for Trade network Sample:
Error: Failed to execute 'open' on 'XMLHttpRequest': Invalid URL
ppcm (Tue, 26 Sep 2017 19:58:25 GMT):
@dselman What do you think, is it possible that the error comes from ACL?
ppcm (Tue, 26 Sep 2017 19:58:25 GMT):
@dselman What do you think : is it possible that the error comes from ACL?
dselman (Tue, 26 Sep 2017 19:59:00 GMT):
@ppcm that look ok... Perhaps you can compare with this: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/marbles-network/test/MarblesTests.js
dselman (Tue, 26 Sep 2017 20:01:46 GMT):
Hard to tell from that. You can get the chaincode stacktrace and logs from your chaincode container using the `docker logs` command, of if you are testing in the Playground with the web connection profile by simply looking in the JS console.
ppcm (Tue, 26 Sep 2017 20:11:13 GMT):
@dselman Thanks for your help, I will take a look to the docker logs if I can find something...
jfodale (Tue, 26 Sep 2017 20:15:57 GMT):
I'm interested in possibly storing documents (such as pictures, or PDFs) as a property of an asset. Is there a data type in the modeling language that can store this? Possibly I could store it as a byte array? Or is storing documents on the blockchain not recommended?
ppcm (Tue, 26 Sep 2017 20:17:43 GMT):
@dselman Perhaps I found somthing, but I don't know what does it mean:
```
2017-09-26T20:09:39.841Z ERROR HLFConnectionManager :fabric-client() [client-utils.js]: sendPeersProposal - Promise is rejected: Error: chaincode error (status: 500, message: Error: The current identity must be activated (ACTIVATION_REQUIRED))
at /home/hyperledger/node_modules/grpc/src/node/src/client.js:554:15 {}$
2017-09-26T20:09:39.842Z ERROR HLFConnection :queryChainCode() {"message":"Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity must be activated (ACTIVATION_REQUIRED))","stack":"Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity must be activated (ACTIVATION_REQUIRED))\n at channel.queryByChaincode.then.catch (/home/hyperledger/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:754:34)"}$
2017-09-26T20:09:39.842Z ERROR HLFConnection :ping() {"message":"Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity must be activated (ACTIVATION_REQUIRED))","stack":"Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity must be activated (ACTIVATION_REQUIRED))\n at _checkRuntimeVersions.then.catch (/home/hyperledger/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:668:34)"}$
```
ppcm (Tue, 26 Sep 2017 20:55:04 GMT):
@dselman I found this https://stackoverflow.com/questions/46201984/hyperledger-composer-error-the-current-identity-must-be-activated-activation but versions of composer and packages are the same
I can't understand...
ppcm (Tue, 26 Sep 2017 20:55:04 GMT):
@dselman I found this https://stackoverflow.com/questions/46201984/hyperledger-composer-error-the-current-identity-must-be-activated-activation but versions of composer and packages are the same
I can't understand what's happening...
nileshyjadhav (Tue, 26 Sep 2017 21:47:37 GMT):
While running composer-rest-server using docker, I am getting below error
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
0|composer | Discovering types from business network definition ...
0|composer | Connection fails: Error: Error trying to ping. Error: Composer runtime (0.12.2) is not compatible with client (0.13.0)
0|composer | It will be retried for the next request.
0|composer | Exception: Error: Error trying to ping. Error: Composer runtime (0.12.2) is not compatible with client (0.13.0)
0|composer | Error: Error trying to ping. Error: Composer runtime (0.12.2) is not compatible with client (0.13.0)
0|composer | at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:668:34)
nileshyjadhav (Tue, 26 Sep 2017 23:29:38 GMT):
Resolved this issue by updating packages for composer runtime
pxuereb (Wed, 27 Sep 2017 01:17:03 GMT):
Hi all, i've been struggling with composer since updating the packages composer-cli, composer-rest-server and generator-hyperledger-composer. When trying to interact with my network i am getting an error 'Composer runtime (0.11.3) is not compatible with client (0.13.0). Any ideas how to resolve this? To update composer i followed the steps described in here https://hyperledger.github.io/composer/managing/updating-composer.html
pxuereb (Wed, 27 Sep 2017 01:38:44 GMT):
Resolved the above issue by 1) changing the engines->composer version number to 13 in packages.json 2) bringing down my fabric network, bringing it back up again and then deploying the composer runtime and archive
pxuereb (Wed, 27 Sep 2017 01:58:18 GMT):
Looks like the latest version of composer-rest-server has issues with filters on asset registries. None of my tests for filters seem to be working, yet if i pass the same parameter to a query it gives me the correct result
pxuereb (Wed, 27 Sep 2017 02:50:09 GMT):
Following the comment above on the composer-rest-server, if i generate an angular web interface with yo hyperledger-composer none of my attempts to create and read an asset from the web interface are working (eg: i have an asset called Equity, if i browse to the Equity screen and click "Add Asset" the record is created, but the Equity asset html table does not display the record). If i run the query which i have built, it definately returns the asset.
pxuereb (Wed, 27 Sep 2017 02:52:22 GMT):
If i browse to the rest swagger page, i can see that my Equity exists, executing the 'Find a model instance by {{id}} from the data source'. Strangely running the 'Find all instances of the model matched by filter from the data source' returns no records, which is why i assume the table in the generated angular web interface is empty
natchapon.pa (Wed, 27 Sep 2017 02:53:07 GMT):
Hi.In rest api, can i modify or edit response output to show other information in res body other than default one?
natchapon.pa (Wed, 27 Sep 2017 02:53:07 GMT):
Hi. In rest api, can i modify or edit response output to show other information in res body other than default one?
pxuereb (Wed, 27 Sep 2017 03:08:10 GMT):
I thought that perhaps the issue i'm describing above was somehow related to my own custom business network, so ran through the steps to deploy one of the sample networks (carauction-network) to my fabric instance. It deploys fine, and i can start the rest server, but the same symptoms described above exist; I can create an object of type auctioneer, but when running the call to the api http://localhost:3000/api/Auctioneer returns no results, adding the filter {"email":"a"} returns no results, but when i call the API http://localhost:3000/api/Auctioneer/a it returns my record. Something must have been broken in the latest release of composer-rest-server, as this was working fine last week
pxuereb (Wed, 27 Sep 2017 04:42:44 GMT):
One more update - i've tried to replicate the issue above on a fabric setup that uses the basic single CA, single peer network that was shipped with the composer example and the same symptoms don't occur. So it appears to be related to my multi org / ca, multi peer network setup
Luxii (Wed, 27 Sep 2017 05:17:04 GMT):
how can we add a new asset into our *worldstate* through transaction ?
dselman (Wed, 27 Sep 2017 05:31:58 GMT):
@here it's hard to follow the interleaved questions. If you are stuck I recommend you carefully complete the developer tutorial, review the samples, browse the docs to get a good sense of the reference information that is there, and then create a stack overflow question tagged with the #hyperledger-composer tag.
devchaud (Wed, 27 Sep 2017 08:15:08 GMT):
Has joined the channel.
Luxii (Wed, 27 Sep 2017 09:35:16 GMT):
Any help on this would be appreciated https://stackoverflow.com/questions/46444377/hyperledger-composer-how-to-push-array-of-assets-into-another-assets-field
ppcm (Wed, 27 Sep 2017 10:05:34 GMT):
@dselman as requested, the problem was posted here https://stackoverflow.com/questions/46441738/composer-0-13-0-error-missing-id
Thanks for the help
dselman (Wed, 27 Sep 2017 10:11:17 GMT):
@natchapon.pa you would have to customize the rest server to do that. Loopback supports hooks to do that sort of thing. E.g. https://loopback.io/doc/en/lb3/Adding-logic-to-models.html
uber.twin (Wed, 27 Sep 2017 10:31:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nbdB4X67tzEr5zPRe) @davidkel but is there a way to control if the chaincode is installed on a peer or not? I thought only the composer runtime is explicitly installed on every peer.
uber.twin (Wed, 27 Sep 2017 10:31:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nbdB4X67tzEr5zPRe) @davidkel but is there a way to control if the chaincode is installed on a peer or not? I thought only the composer runtime is explicitly installed on every peer. And the chaincode is propagated by the network after it was instantiated on a certain peer.
uber.twin (Wed, 27 Sep 2017 10:31:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nbdB4X67tzEr5zPRe) @davidkel but is there a way to control if the chaincode is installed on a peer or not? I thought only the composer runtime is explicitly installed on every peer. And the chaincode is propagated by the network after it was started on a certain peer.
davidkel (Wed, 27 Sep 2017 10:42:38 GMT):
@uber.twin chaincode is not propogated by the network. You have to explicitly install chaincode on any peer that you would plan to use for endorsing or querying at the chaincode level.
uber.twin (Wed, 27 Sep 2017 10:45:32 GMT):
@davidkel is this "chaincode installation" the operation done by the "composer network start" command?
uber.twin (Wed, 27 Sep 2017 10:45:32 GMT):
@davidkel is this "chaincode installation" the operation done by the "composer network start" command? I imagine it's not the "composer runtime install", since this operation has no "*.bna" argument, which is the chaincode
davidkel (Wed, 27 Sep 2017 11:12:13 GMT):
@uber.twin The chaincode installation is done by the `composer runtime install`. The bna is an archive containing the business network definition which is interpreted/driven by the composer runtime chaincode.
Luxii (Wed, 27 Sep 2017 12:18:02 GMT):
how can we get already registered assets in worldstate into our transaction ?
Luxii (Wed, 27 Sep 2017 12:19:27 GMT):
`getFactory().newResource('org.acme.mynetwork',
mahoney1 (Wed, 27 Sep 2017 12:33:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rnNGN3vHvCxJAtApA) @ppcm as mentioned in Stack Overflow, please post (ie there) your permissions.acl file - thanks
dselman (Wed, 27 Sep 2017 12:45:16 GMT):
@Luxii complete the tutorial, read the docs? ;-) getAssetRegistry().add adds a new asset. getAssetRegistry().get returns an existing asset. It's all in the JSDocs in the reference section.]
mahoney1 (Wed, 27 Sep 2017 12:47:34 GMT):
@Luxii exactly as @dselman mentions. Example also here https://github.com/hyperledger/composer-sample-networks/blob/master/packages/digitalproperty-network/test/DigitalLandTitle.js#L90 (onwards) - albeit in a test script here.
Luxii (Wed, 27 Sep 2017 13:00:15 GMT):
Thanks guys for the response
GirijaShankarMishra (Wed, 27 Sep 2017 14:22:22 GMT):
Hi guys, I am using mutliple user composer rest services and while creating a Participant I am getting the below error.
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":400,\"message\":\"Authorization failure\"}]]",
"stack": "Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":400,\"message\":\"Authorization failure\"}]]\n at client.getUserContext.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:302:34)\n at process._tickDomainCallback (internal/process/next_tick.js:135:7)"
}
}
iwhanttoknow (Wed, 27 Sep 2017 16:26:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PE5n9PWrJ9HeH9syw) @GirijaShankarMishra I had kind of the the same problem. Try to check CA connection and correct keyValStore
eacoeytaux (Wed, 27 Sep 2017 16:42:48 GMT):
Hi everyone, I'm having trouble accessing the fields of a pointer when handling a transaction. I have a tx, approveContract, which points to an asset contract. contract also has a field 'duration'. I can call 'approveContract.contract' just fine but when I try to access 'approveContract.contract.duration' playground gives me the error "Error: Object with ID 'id:1234' in collection with ID 'Asset:ContractApproval' does not exist", although I suspect the issue is not what the error describes. I've tried everything I can think of with no luck so far. Any advice?
dselman (Wed, 27 Sep 2017 16:55:55 GMT):
To help debug you could try adding: `console.log( 'contract is: ' + JSON.stringify(getSerializer().toJSON(approveContract)) );
dselman (Wed, 27 Sep 2017 16:55:55 GMT):
To help debug you could try adding: `console.log( 'contract is: ' + JSON.stringify(getSerializer().toJSON(approveContract)) );`
Raje (Wed, 27 Sep 2017 17:05:39 GMT):
I am trying to run composer-rest server by "composer-rest-server -p Visa-hlfv1 -n my-network -i PeerAdmin -s randomString -N never" I am getting incompatibility error => !! {"0":"ping","1":{"stack":["{Error}Error trying to ping. Error: Composer runtime (0.12.1) is not compatible with client (0.11.1) Error: Error trying to ping. Error: Composer runtime (0.12.1) is not compatible with client (0.11.1)"," at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:696:34)"," at process._tickCallback (internal/process/next_tick.js:109:7)"]}}$
Connection fails: Error: Error trying to ping. Error: Composer runtime (0.12.1) is not compatible with client (0.11.1)
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Composer runtime (0.12.1) is not compatible with client (0.11.1)
Error: Error trying to ping. Error: Composer runtime (0.12.1) is not compatible with client (0.11.1)
Steps=> I changed package.json file and changed composer-cli and composer-client versions from 0.11.0 to 0.12.1. Then created .bna file again, started network but still it is giving same error. Any suggestions?
mahoney1 (Wed, 27 Sep 2017 17:14:52 GMT):
@eacoeytaux check the sample network (and model file) here -> https://github.com/hyperledger/composer-sample-networks/tree/master/packages/perishable-network/models and example of use here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js
silliman (Wed, 27 Sep 2017 17:19:07 GMT):
@Raje I think that after you change the version levels in package.json you need to remove the node_modules file in that directory and re-run npm install and then re-create your .bna file
t_stephens67 (Wed, 27 Sep 2017 17:39:01 GMT):
I had my composer-rest-server running in a docker container and suddenly I started getting connection refused when I try to access it any ideas?
iwhanttoknow (Wed, 27 Sep 2017 17:41:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RRyX8zuuPBBXC5XNq) @t_stephens67 Yes, rest server as well as node red tend to fail. Looks like it should run as a service, not a command.
iwhanttoknow (Wed, 27 Sep 2017 17:45:17 GMT):
I have dummy question :-) . I found docs here http://hyperledger-fabric.readthedocs.io and https://hyperledger.github.io/composer/tutorials/playground-guide.html
I installed dev-environment with rest server And composer playground on another vm and "playing with it".
Now I misunderstanding some IBM ideas. What is exactly Chain-Code? Business Network Definition itself or something more?
mahoney1 (Wed, 27 Sep 2017 18:00:03 GMT):
fyi @here - the Community call tomorrow (Thurs) will be at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss work in progress, the latest release and what's upcoming -best regards Paul
ScottMorris (Wed, 27 Sep 2017 19:50:35 GMT):
I've been running a copy of fabric with composer and just a few min ago it stopped working, when I try to restart the docker containers I see the chaincode logs have the statement `peer will not accepting external chaincode connection name`. Has anyone see this before and is there an order to restarting the containers?
davidkel (Wed, 27 Sep 2017 20:59:49 GMT):
@ScottMorris Pure speculation on my part but did you try to restart the chaincode container ? It could be that you need to let the peer restart it (which is should do when the first request comes in)
davidkel (Wed, 27 Sep 2017 20:59:49 GMT):
@ScottMorris Pure speculation on my part but did you try to restart the chaincode container ? It could be that you need to let the peer restart it (which it should do when the first request comes in)
ScottMorris (Wed, 27 Sep 2017 21:29:58 GMT):
@davidkel I stopped and restarted the container, so that is what output the error message, but for some reason the peer didn't restart it
ScottMorris (Wed, 27 Sep 2017 21:30:14 GMT):
i ended up upgrading Composer from 12.2 to 13
davidkel (Wed, 27 Sep 2017 21:31:36 GMT):
@ScottMorris The Peer will only restart the container when a request to that peer comes in. Maybe it also only restarts it if there is no stopped container. Not tried the situation myself but it could be something worth reporting back to the fabric team.
kuyseng (Thu, 28 Sep 2017 02:16:07 GMT):
Has joined the channel.
star936 (Thu, 28 Sep 2017 03:30:56 GMT):
Has joined the channel.
star936 (Thu, 28 Sep 2017 03:49:58 GMT):
Hi,everyone! TLS is active,so how can i create connection profile?
star936 (Thu, 28 Sep 2017 03:53:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WAv3AcdTp9FhjsPSA) @ibmamnt I have the same problem,did you solve it?If yes,can you tell me?
star936 (Thu, 28 Sep 2017 04:02:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WAv3AcdTp9FhjsPSA) @ibmamnt {
"type": "hlfv1",
"orderers": [
{
"url" : "grpcs://localhost:7050",
"cert": "../crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt"
}
],
"ca": {
"url": "https://localhost:7054",
"name": "ca_peerOrg1",
"trustedRoots": [],
"verify": true
},
"peers": [
{
"requestURL": "grpcs://localhost:7051",
"eventURL": "grpcs://localhost:7053",
"cert": "../crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt"
}
],
"keyValStore": "/home/fabric3/.composer-credentials",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": "30000",
"globalcert": "",
"maxSendSize": 10,
"maxRecvSize": 15
}
star936 (Thu, 28 Sep 2017 04:04:57 GMT):
```{
"type": "hlfv1",
"orderers": [
{
"url" : "grpcs://localhost:7050",
"cert": "../crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt"
}
],
"ca": {
"url": "https://localhost:7054",
"name": "ca_peerOrg1",
"trustedRoots": [],
"verify": true
},
"peers": [
{
"requestURL": "grpcs://localhost:7051",
"eventURL": "grpcs://localhost:7053",
"cert": "../crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt"
}
],
"keyValStore": "/home/fabric3/.composer-credentials",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": "30000",
"globalcert": "",
"maxSendSize": 10,
"maxRecvSize": 15
}```
star936 (Thu, 28 Sep 2017 04:06:33 GMT):
@ibmamnt like this?
Luxii (Thu, 28 Sep 2017 05:23:16 GMT):
Any help on this would be appreciated https://stackoverflow.com/questions/46461518/hyperledger-composer-tranaction-error-typeerror-getassetregistry-get-is-n
chfalak (Thu, 28 Sep 2017 05:25:48 GMT):
Has joined the channel.
chfalak (Thu, 28 Sep 2017 05:26:53 GMT):
Hi everyone, Can someone let me know a good tutorial for composer?
dselman (Thu, 28 Sep 2017 05:30:20 GMT):
https://hyperledger.github.io/composer/tutorials/tutorials.html
chfalak (Thu, 28 Sep 2017 05:50:25 GMT):
thanks
devadot (Thu, 28 Sep 2017 06:44:05 GMT):
Can someone please share the link to Documentation of composer-client node SDK
devadot (Thu, 28 Sep 2017 06:47:43 GMT):
Nevermind.. found it at https://hyperledger.github.io/composer/jsdoc/module-composer-client.html
asuchit (Thu, 28 Sep 2017 09:38:36 GMT):
Has joined the channel.
asuchit (Thu, 28 Sep 2017 09:40:18 GMT):
I am new for hyperledger and do not know much about docker as well. I am able to run the 'first network' example (fabric example) successfully on a host. I want to run it on multiple host setup. Is there any guide present for it? Thanks in advance
asuchit (Thu, 28 Sep 2017 09:40:30 GMT):
I am running Orderer in one PC and all peers in another PC and while creating the channel, I am getting below error. Please help me, How can I fix it.
asuchit (Thu, 28 Sep 2017 09:40:53 GMT):
root@e145030d1a92:/opt/gopath/src/github.com/hyperledger/fabric/peer# peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
2017-09-28 06:02:56.934 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2017-09-28 06:02:56.934 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2017-09-28 06:02:56.938 UTC [grpc] Printf -> DEBU 003 grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: Error while dialing dial tcp: lookup orderer.example.com on 127.0.0.11:53: no such host"; Reconnecting to {orderer.example.com:7050
asuchit (Thu, 28 Sep 2017 09:41:14 GMT):
It is trying to look the Orderer in local PC only.
kuyseng (Thu, 28 Sep 2017 09:42:35 GMT):
Hi everyone, when I stopFabric `./startFabric.sh`, all of records (transactions) are lost. How to keep those data when startFabric again
kuyseng (Thu, 28 Sep 2017 09:42:35 GMT):
Hi everyone, when I stopFabric `./stopFabric.sh`, all of records (transactions) are lost. How to keep those data when startFabric again
Sakshi_44 (Thu, 28 Sep 2017 11:11:19 GMT):
Hi, I have transactions API in my rest server. I want to show these transactions in blocks in my front end. How can I achieve this. Is here any example available for this.
vishwasrao (Thu, 28 Sep 2017 11:27:32 GMT):
Hi All, Might be very simple question.. How can I get current time in specific format?
Let say I want current time and in format 'YYYY-MM-DD HH:mm:ss'
vishwasrao (Thu, 28 Sep 2017 11:27:43 GMT):
Do we have any function for it?
cweiers (Thu, 28 Sep 2017 11:36:31 GMT):
ls
uber.twin (Thu, 28 Sep 2017 11:38:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=thRxtFPJWS69Pppki) @davidkel ok, I thought, from a composer developer point of view, the chaincode is only the .bna file
now, considering that the actual chaincode is the composer runtime, is there a way to limit the propagation of the actual business application(the .bna code) through all the peers which have the composer runtime installed?
mna2017 (Thu, 28 Sep 2017 11:39:37 GMT):
Hi All, The composer ping command is working fine, but says "no participants found". Although I have created 2 participants on the composer business network on the playground UI.
mna2017 (Thu, 28 Sep 2017 11:39:39 GMT):
composer network ping -p ibm-bc-org1 -n mytestnetwork5 -i admin -s admin
The connection to the network was successfully tested: mytestnetwork5
version: 0.13.0
participant:
cweiers (Thu, 28 Sep 2017 11:43:54 GMT):
@mna2017 the "participant not found" means that the identity you used for pinging the network is not linked to a participant in your business network. Which makes sense considering you ping as the bootstrap admin / adminpw user that has no corresponding participant
cweiers (Thu, 28 Sep 2017 11:44:16 GMT):
this is not for getting a list of all participants
dselman (Thu, 28 Sep 2017 11:46:45 GMT):
@vishwasrao call `new Date()` and then use the JS formatting APIs.
dselman (Thu, 28 Sep 2017 11:48:19 GMT):
Be careful using `new Date` in TP functions, it could lead to consensus failure across your peers if you store the date!
cweiers (Thu, 28 Sep 2017 12:01:00 GMT):
Message Attachments
cweiers (Thu, 28 Sep 2017 12:01:05 GMT):
Hey,
I have a problem with a local installation of composer-playground where the site freezes after failing to load the npm samples. I tried to document my findings as best as I could in a stackoverflow post, if someone wants to take a look at it: https://stackoverflow.com/questions/46468146/local-playground-installation-fails-to-fetch-sample-list-from-npm . Screen looks like this :
cweiers (Thu, 28 Sep 2017 12:01:05 GMT):
Hey,
I have a problem with a local installation of composer-playground where the site freezes after failing to load the npm samples. I tried to document my findings as best as I could in a stackoverflow post, if someone wants to take a look at it: https://stackoverflow.com/questions/46468146/local-playground-installation-fails-to-fetch-sample-list-from-npm . Screen looks like in the picture above
vishwasrao (Thu, 28 Sep 2017 12:51:03 GMT):
@dselman Thanks !!! I am using it to generate unique ID for each asset instead of user input
dselman (Thu, 28 Sep 2017 12:51:48 GMT):
On the client side that is fine... don't do that in a TP function.
kievu (Thu, 28 Sep 2017 12:53:55 GMT):
Does anyone know why my hyperledger composer rest server does not update my changes?
kievu (Thu, 28 Sep 2017 12:54:27 GMT):
While if I do update in the bluemix playground things get updated right away. Is it command to update changes?
uber.twin (Thu, 28 Sep 2017 12:58:04 GMT):
@dselman hi, are there composer API(or query language) features supporting the implementation of a paged retrieval strategy for querying a large asset registry?
dselman (Thu, 28 Sep 2017 12:58:42 GMT):
query language supports LIMIT and SKIP for paging, however last time I checked it was not working in the underlying Fabric
dselman (Thu, 28 Sep 2017 12:58:52 GMT):
check the issues for latest status
uber.twin (Thu, 28 Sep 2017 13:01:34 GMT):
@sure, thank you
uber.twin (Thu, 28 Sep 2017 13:01:34 GMT):
@dselman sure, thank you
uber.twin (Thu, 28 Sep 2017 13:02:06 GMT):
@dselman but I think it'll be useful to have an API function or query suport for retrieving the number of assets in a registry
uber.twin (Thu, 28 Sep 2017 13:02:06 GMT):
@dselman but I think it'll be useful to have an API function or query support for retrieving the number of assets in a registry
uber.twin (Thu, 28 Sep 2017 13:02:15 GMT):
is there anything like that?
ilfrich (Thu, 28 Sep 2017 13:02:32 GMT):
I think the frontend should at least support it, to limit server-client payload.
dselman (Thu, 28 Sep 2017 13:02:43 GMT):
Not yet -- there's an open issue to support aggregates like COUNT in the query language
uber.twin (Thu, 28 Sep 2017 13:03:19 GMT):
ok, thanks again
erNail (Thu, 28 Sep 2017 13:08:32 GMT):
Hi, i have a question about the _startFabric.sh_-script and how it works together with creating a fabric network. Is the script starting up a blockchain with "simulated" peers or is it like starting one node ?
cweiers (Thu, 28 Sep 2017 13:10:23 GMT):
@erNail If you have a look at the docker-compose.yaml in the fabric-scripts/hlfv1/composer/ folder , you'll see the docker configuration
cweiers (Thu, 28 Sep 2017 13:10:49 GMT):
its 1 peer, 1 ca, 1 orderer and a couchdb worl state ledger for your peer
cweiers (Thu, 28 Sep 2017 13:10:49 GMT):
its 1 peer, 1 ca, 1 orderer and a couchdb world state db for your peer
sstone1 (Thu, 28 Sep 2017 13:12:45 GMT):
@here we've released Hyperledger Composer v0.13.1, with plenty of documentation and bug fixes, as well as model decorators 🎉 https://github.com/hyperledger/composer/releases/tag/v0.13.1
erNail (Thu, 28 Sep 2017 13:14:05 GMT):
@cweiers I see, thanks. So, what are the steps i'd need to take to use composer with my own fabric-network ?
ilfrich (Thu, 28 Sep 2017 13:15:49 GMT):
You can probably extend the network by adding more peers to the docker-compose. But then wiring it all together with the composer, I don't know how to do -.- (I'm sure it's documented somewhere)
cweiers (Thu, 28 Sep 2017 13:16:55 GMT):
@sstone1 Ah, that probably explains my version conflict between composer-runtime and composer-client I have right now :) I just updated via https://hyperledger.github.io/composer/managing/updating-composer.html , and now I my client is still 0.13.0, whereas my runtime is still 0.13.0
cweiers (Thu, 28 Sep 2017 13:16:55 GMT):
@sstone1 Ah, that probably explains my version conflict between composer-runtime and composer-client I have right now :) I just updated via https://hyperledger.github.io/composer/managing/updating-composer.html , and now I my client is still 0.13.0, whereas my runtime is 0.13.1
cweiers (Thu, 28 Sep 2017 13:17:50 GMT):
Will just have to try to get my versions properly set, shouldn't be to big of a problem though. probably just weird timing
cweiers (Thu, 28 Sep 2017 13:19:26 GMT):
@erNail the connection profile used to connect to your running fabric instance is in ~/.composer-connection-profiles/hlfv1/connection.json for the standard example network
cweiers (Thu, 28 Sep 2017 13:19:38 GMT):
you would have to make a connection profile for your own network
erNail (Thu, 28 Sep 2017 13:24:37 GMT):
@cweiers Alright, thanks. Do you know where i can find documentation about this ? If there is any ?
cweiers (Thu, 28 Sep 2017 13:27:04 GMT):
@erNail https://hyperledger.github.io/composer/reference/connectionprofile.html
erNail (Thu, 28 Sep 2017 13:27:34 GMT):
@cweiers Thank you very much.
cweiers (Thu, 28 Sep 2017 13:28:39 GMT):
No problem, good luck (and enough patience) putting it together.
kletkeman (Thu, 28 Sep 2017 14:47:28 GMT):
@sstone1 @dselman Question re node packages. I get errors when I import node packages -- not at compile time, but later when I try to run it in the playground. Is this supported in some way? Or ir is going to be supported soon? The reason I ask is that we need deep merge capability for asset updates and there is an excellent (and very small) pair of project that provide exactly what we need. Unless of course we already has some form of built in deep merge into an asset's state? Thanks.
kletkeman (Thu, 28 Sep 2017 14:47:28 GMT):
@sstone1 @dselman Question re node packages. I get errors when I import node packages -- not at compile time, but later when I try to run it in the playground. Is this supported in some way? Or is it going to be supported soon? The reason I ask is that we need deep merge capability for asset updates and there is an excellent (and very small) pair of project that provide exactly what we need. Unless of course we already has some form of built in deep merge into an asset's state? Thanks.
kletkeman (Thu, 28 Sep 2017 14:47:28 GMT):
@sstone1 @dselman Question re node packages. I get errors when I import node packages -- not at compile time, but later when I try to run it in the playground. Is this supported in some way? Or is it going to be supported soon? The reason I ask is that we need deep merge capability for asset updates and there is an excellent (and very small) pair of projects that provide exactly what we need. Unless of course we already has some form of built in deep merge into an asset's state? Thanks.
kletkeman (Thu, 28 Sep 2017 14:47:28 GMT):
@sstone1 @dselman Question re node packages. I get errors when I import node packages -- not at compile time, but later when I try to run it in the playground. Is this supported in some way? Or is it going to be supported soon? The reason I ask is that we need deep merge capability for asset updates and there is an excellent (and very small) pair of projects that provide exactly what we need. Unless of course we already have some form of built in deep merge into an asset's state? Thanks.
AlexAlper (Thu, 28 Sep 2017 17:21:57 GMT):
Has joined the channel.
mna2017 (Thu, 28 Sep 2017 17:27:59 GMT):
HI All, when I change the structure of an asset in the business models.cto file, do I have restart composer-rest-server all over again? Or will the composer rest server pick the changes dynamically?
Jakeeyturner (Thu, 28 Sep 2017 17:28:45 GMT):
@mna2017 I'm pretty sure you'll need to restart the rest server
AlexAlper (Thu, 28 Sep 2017 17:28:56 GMT):
Hello!
Question!
Is it possible to make a paperwork on Composer?
Any tips?
mna2017 (Thu, 28 Sep 2017 17:29:07 GMT):
@Jakeeyturner Thanks for the quick reply!
pravinghuge (Thu, 28 Sep 2017 17:42:28 GMT):
Has joined the channel.
pravinghuge (Thu, 28 Sep 2017 17:43:00 GMT):
how to validate or approve a transaction between participants??
in hyperledger-composer
pravinghuge (Thu, 28 Sep 2017 17:43:05 GMT):
thanks a lot in advance
AlexAlper (Thu, 28 Sep 2017 18:46:14 GMT):
Can you help with solving the problem?
AlexAlper (Thu, 28 Sep 2017 18:46:34 GMT):
Message Attachments
kletkeman (Thu, 28 Sep 2017 18:58:14 GMT):
@pravinghuge What do you mean validate or approve? Are you saying that you want a third party to be able to approve a transaction to allow it to become final (and thus move the money?) That would require a multi-stage transaction with people in two roles (transactor and approver) and once the approver is aware of a pending transaction (where each transactor has signed perhaps) the transactor's signature could execute the final transaction's code. I.e. transacxtion started by one party, agreed to by the other, approved by the third. That's three discrete transactions in composer. Only the approval causes the final stage, which moves the money or whatever. ACLs might be enough to do the trick ...
michaelgriffith (Thu, 28 Sep 2017 19:27:32 GMT):
Has joined the channel.
michaelgriffith (Thu, 28 Sep 2017 19:31:54 GMT):
Not sure if this is the right place to post this, but how do you dynamically change permissions (ACL) of an asset to a participant dynamically?
dselman (Thu, 28 Sep 2017 21:08:52 GMT):
@michaelgriffith you can't... changing permissions on the network requires redeploying the business network. The other participants in the network may have to approve changes to access control.
dselman (Thu, 28 Sep 2017 21:09:16 GMT):
Of course, you could write an ACL rule that was data driven...
michaelgriffith (Thu, 28 Sep 2017 21:10:33 GMT):
@dselman thanks for the reply. >>ACL rule that was data driven. Are there any examples of this?
dselman (Thu, 28 Sep 2017 21:11:27 GMT):
the PII sample network includes a rule that says someone can access someone else's data if they have been added to a list of approved people
michaelgriffith (Thu, 28 Sep 2017 21:12:19 GMT):
@dselman thanks could you hbo with a link? I have no idea where to find this.
dselman (Thu, 28 Sep 2017 21:13:07 GMT):
https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/permissions.acl
michaelgriffith (Thu, 28 Sep 2017 21:15:49 GMT):
@dselman thank you!
michaelgriffith (Thu, 28 Sep 2017 21:15:49 GMT):
if I am passing an asset to a transaction via --> do I need to then fetch it? It seems like one of the attributes that is an array is always undefined.
pravinghuge (Fri, 29 Sep 2017 02:52:46 GMT):
@kletkeman thanks, i want is if i transfer money to a second person so once the money is transfer from my account it needs to approved by the second person so then only the ledger will be updated.
pravinghuge (Fri, 29 Sep 2017 02:54:39 GMT):
would that be defined in ACL
pravinghuge (Fri, 29 Sep 2017 02:55:12 GMT):
or in the logic.js
SumitTembe (Fri, 29 Sep 2017 05:02:02 GMT):
Has joined the channel.
vamshi.varaganti (Fri, 29 Sep 2017 05:33:34 GMT):
Has joined the channel.
NehaAdkar (Fri, 29 Sep 2017 06:47:40 GMT):
Has joined the channel.
uber.twin (Fri, 29 Sep 2017 07:47:58 GMT):
@dselman hi, wouldn't it be easier if the resources links would allways be a target resource instance rather than a String when not resolved(e.g. 'resource:
uber.twin (Fri, 29 Sep 2017 07:47:58 GMT):
@dselman hi, wouldn't it be easier if the resources links would always be a target resource instance rather than a String when not resolved(e.g. 'resource:
lclclc (Fri, 29 Sep 2017 08:21:44 GMT):
Has joined the channel.
lclclc (Fri, 29 Sep 2017 08:22:41 GMT):
Anyone knows how to resolve this deployment error? What causes it?
lclclc (Fri, 29 Sep 2017 08:22:49 GMT):
Error: Error trying deploy. Error: Error trying install composer runtime. Error: Connect Failed
lclclc (Fri, 29 Sep 2017 08:22:49 GMT):
`Error: Error trying deploy. Error: Error trying install composer runtime. Error: Connect Failed`
lclclc (Fri, 29 Sep 2017 08:24:54 GMT):
I can run playground locally, but I can't deploy my .bna file to fabric instance.
pradeeppadmarajaiah (Fri, 29 Sep 2017 09:16:29 GMT):
how to export an id card from composer-playground.mybluemix.net .I dont see an aption to perform this exercise
mahoney1 (Fri, 29 Sep 2017 09:18:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=T5hjfZJmoJnLqDAmE) @pravinghuge it would be in your transaction processor logic (eg. logic.js) .
pravinghuge (Fri, 29 Sep 2017 09:18:58 GMT):
thanks @mahoney1
camilavilarinho (Fri, 29 Sep 2017 09:37:51 GMT):
Has joined the channel.
mahoney1 (Fri, 29 Sep 2017 09:50:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wzqANBGeKjm2tsx8E) @AlexAlper so you're following the Dev tutorial? did you create a connection profile or use/run createComposerProfile.sh from the tools setup -> https://hyperledger.github.io/composer/installing/development-tools.html
mahoney1 (Fri, 29 Sep 2017 09:50:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wzqANBGeKjm2tsx8E) @AlexAlper so you're following the Dev tutorial? did you create a connection profile or use/run createComposerProfile.sh )to create one) from the tools setup -> https://hyperledger.github.io/composer/installing/development-tools.html
mahoney1 (Fri, 29 Sep 2017 09:50:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wzqANBGeKjm2tsx8E) @AlexAlper so you're following the Dev tutorial? did you create a connection profile or use/run createComposerProfile.sh (to create one) from the tools setup -> https://hyperledger.github.io/composer/installing/development-tools.html
mahoney1 (Fri, 29 Sep 2017 09:56:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=L86HgMQvNEHdhKy4G) @AlexAlper paperwork = recording biz transactions ? Yes. Check out the sample networks for ideas. https://github.com/hyperledger/composer-sample-networks/tree/master/packages
vishwasrao (Fri, 29 Sep 2017 09:57:39 GMT):
How can we send data to specific user in Composer, Let say participant A requested some data owned by B, I have triggered event which will notify B for request now once B approves that request data should be sent to A
vishwasrao (Fri, 29 Sep 2017 09:58:17 GMT):
how we can achive this? Do we need to emit another event with data or there is better way to send it to specific user
jtonline (Fri, 29 Sep 2017 09:58:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NRg9RJ894JfvooJAs) @pradeeppadmarajaiah in the online playground, everything is running inside your browser so there is no way for anyone else to connect, hence the option to export ID cards is disabled in this environment
mahoney1 (Fri, 29 Sep 2017 09:59:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3h32PxzdaHxPniaWs) @kletkeman thanks for the Q ! So require' is not supported yet -- we need native Node.js execution for that (that work is in progress)
mahoney1 (Fri, 29 Sep 2017 09:59:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3h32PxzdaHxPniaWs) @kletkeman thanks for the Q ! So require' is not supported yet (eg. `var deepmerge = require('deepmerge'); ` blah blah) -- we need native Node.js execution for that (that work is in progress)
lclclc (Fri, 29 Sep 2017 10:00:05 GMT):
Message Attachments
lclclc (Fri, 29 Sep 2017 10:00:50 GMT):
Don't know why I can't bootstrap the playground now. Any one knows why it is looking for a user "composer"'s connection profile?
lclclc (Fri, 29 Sep 2017 10:00:59 GMT):
Anything corrupted?
mahoney1 (Fri, 29 Sep 2017 10:17:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XQtewg2NMRz2kmuyR) @lclclc not sure if you've just built but check out this issue (similar here) -> https://github.com/hyperledger/composer/issues/1938 , This happens because the connection profile doesn't get created on the file system until connect happens but import identity needs to be called before this and have the profile there. Then see the Deploy section (discusses identity import) here https://hyperledger.github.io/composer/installing/using-playground-locally.html
lclclc (Fri, 29 Sep 2017 10:18:44 GMT):
I googled and found some issue, not sure which one I hit, thanks for the link. Let me check.
lclclc (Fri, 29 Sep 2017 10:19:51 GMT):
It worked before but after I run development tools script then everything is incorrect
lclclc (Fri, 29 Sep 2017 10:20:17 GMT):
```cd ~/fabric-tools
./downloadFabric.sh
./startFabric.sh
./createComposerProfile.sh```
lclclc (Fri, 29 Sep 2017 10:20:32 GMT):
some of these corrupt the environment variables.
lclclc (Fri, 29 Sep 2017 10:28:22 GMT):
Actually there is such a file, but the composer want a file of user "composer".
lclclc (Fri, 29 Sep 2017 10:32:03 GMT):
```$ cat .composer-connection-profiles/hlfv1/connection.json
{
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://localhost:7050" }
],
"ca": { "url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/Users/magicliang/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}```
lclclc (Fri, 29 Sep 2017 10:32:36 GMT):
```$ pwd
/Users/magicliang```
lclclc (Fri, 29 Sep 2017 10:42:51 GMT):
looks like when the localhost:8080 was open by the commandline tool, server is unstable. I just wait for several minutes and reopen this playground and everything is ok.
mahoney1 (Fri, 29 Sep 2017 11:22:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QosbrqTwiCALHaJYg) @lclclc correct - Playground uses a user 'composer' Playground and its own credential store- inside the container. So 'magicliang''s connection profile is not relevant here
mahoney1 (Fri, 29 Sep 2017 11:22:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QosbrqTwiCALHaJYg) @lclclc correct - Playground uses a user 'composer' and its own credential store- inside the container. So 'magicliang''s connection profile is not relevant here
zachgoll (Fri, 29 Sep 2017 12:06:35 GMT):
I created a Composer development environment setup screencast. Is there a specific place that I could contribute this? Or just keep it on my YouTube channel? https://www.youtube.com/watch?v=nS_MRqAeEbQ&feature=youtu.be
mahoney1 (Fri, 29 Sep 2017 13:46:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AbPaF8zhm8Pt7AF5S) @zachgoll hi Zach, nice one - thanks for sharing with the Community, looks good. I'll pin it here for now but a member of the Hyperledger team will reach out to you about the video. Cheers !
johncaboose (Fri, 29 Sep 2017 14:04:23 GMT):
Has joined the channel.
zachgoll (Fri, 29 Sep 2017 14:05:10 GMT):
Awesome. Speaking to Tracy now.
johncaboose (Fri, 29 Sep 2017 14:10:13 GMT):
Hello! I have a question.
Where can I find a good description of the relationship between a business network created in composer and a hyperledger fabric network? How the participants are related to one another etc. For example is a composer "participant" the same as a fabric "client"? Are the systems completely separated? Any good links or descriptions would be greatly appreciated. Thank you.
ppcm (Fri, 29 Sep 2017 14:19:21 GMT):
Hello
During the transaction processing, is there a way to know which particpant emits a transaction?
jtonline (Fri, 29 Sep 2017 14:24:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AbPaF8zhm8Pt7AF5S) @zachgoll It looks like there's a Composer playlist on the Hyperledger channel. Would be good to get the video on your channel in there. (In fact it looks like there are a few other Composer videos it would be nice to include in that playlist.)
gleidsonp (Fri, 29 Sep 2017 14:25:13 GMT):
Has joined the channel.
gleidsonp (Fri, 29 Sep 2017 14:28:21 GMT):
Has left the channel.
zachgoll (Fri, 29 Sep 2017 14:31:07 GMT):
@jtonline Agreed! Working on that now :)
ykcai (Fri, 29 Sep 2017 14:32:18 GMT):
How can i emit an event when a participant of asset has been added? Here I can see nothing about the person being added
```{
"$class": "org.hyperledger.composer.system.HistorianRecord",
"transactionId": "ec8e2025-00b8-46b1-9201-8c8180b2f131",
"transactionType": "AddParticipant",
"transactionInvoked": "resource:org.hyperledger.composer.system.Transaction#ec8e2025-00b8-46b1-9201-8c8180b2f131",
"eventsEmitted": [],
"transactionTimestamp": "2017-09-28T13:57:14.069Z"
},```
zachgoll (Fri, 29 Sep 2017 14:32:22 GMT):
@jtonline Also if you have watched it, feel free to critique for future screencasts. I'd love some feedback!
mahoney1 (Fri, 29 Sep 2017 14:43:14 GMT):
hi there, trying reading the concepts here first -> https://hyperledger.github.io/composer/introduction/key-concepts.html and see this slideshare https://www.slideshare.net/SimonStone8/introduction-to-hyperledger-composer . On your question: participants are the everyday participants that interact with 'the blockchain' or more succinctly the business network with which they engage/transact with ie other Orgs, parties etc). Participants in Composer are linked to identities that perform actions (eg., submit transactions) on the business network. They can be owners of assets, they can be access controlled etc. etc. A Fabric client is generally a client application talks to a Fabric peer over (eg either REST or GRPC interface) and submits transactions and queries to the peer to chaincodes. - that is interaction at a Hyperledger Fabric level - as you'll see from the materials shared - Composer operates at a level above (and sits atop) the Fabric and its infrastructure (generally speaking).
mahoney1 (Fri, 29 Sep 2017 14:43:14 GMT):
@johncaboose hi there, trying reading the concepts here first -> https://hyperledger.github.io/composer/introduction/key-concepts.html and see this slideshare https://www.slideshare.net/SimonStone8/introduction-to-hyperledger-composer . On your question: participants are the everyday participants that interact with 'the blockchain' or more succinctly the business network with which they engage/transact with ie other Orgs, parties etc). Participants in Composer are linked to identities that perform actions (eg., submit transactions) on the business network. They can be owners of assets, they can be access controlled etc. etc. A Fabric client is generally a client application talks to a Fabric peer over (eg either REST or GRPC interface) and submits transactions and queries to the peer to chaincodes. - that is interaction at a Hyperledger Fabric level - as you'll see from the materials shared - Composer operates at a level above (and sits atop) the Fabric and its infrastructure (generally speaking).
mahoney1 (Fri, 29 Sep 2017 14:47:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Esn2vu9DcgZTBWsax) @ppcm yes - `var currentParticipant = getCurrentParticipant();` see example shown here -> https://hyperledger.github.io/composer/business-network/programmatic-access-control.html under 'Procedure' (meant to be bullet 2).
mahoney1 (Fri, 29 Sep 2017 14:47:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Esn2vu9DcgZTBWsax) @ppcm yes - `var currentParticipant = getCurrentParticipant();` see example shown here -> https://hyperledger.github.io/composer/business-network/programmatic-access-control.html under 'Procedure' (meant to be bullet 2). I take 'emit' as meaning the getting the current participant for the transaction submitted.
dselman (Fri, 29 Sep 2017 14:52:28 GMT):
@ppcm you can also get this from the Historian
mahoney1 (Fri, 29 Sep 2017 14:56:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XJWQkfAigcnjrxnGQ) @ykcai not sure if you're running with an old version of Playground - you can try in online Playground (click on the link to the 'record' in Historian) - you should see the full PartcipantAdd Transaction type eg. `{
"$class": "org.hyperledger.composer.system.AddParticipant",
"resources": [
{
"$class": "org.acme.sample.SampleParticipant",
"participantId": "participantId:1000",
"firstName": "Fugiat et.",
"lastName": "Veniam laboris enim irure enim."
}
],
"targetRegistry": "resource:org.hyperledger.composer.system.ParticipantRegistry#org.acme.sample.SampleParticipant",
"transactionId": "01d12fc2-81b5-4ef2-a34b-b43c9c7060f8",
"timestamp": "2017-09-29T14:52:24.508Z"
}`
mahoney1 (Fri, 29 Sep 2017 14:56:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XJWQkfAigcnjrxnGQ) @ykcai not sure if you're running with an old version of Playground - you can try in online Playground (click on the link to the 'record' in Historian) - you should see the full PartcipantAdd Transaction type eg. ```{
"$class": "org.hyperledger.composer.system.AddParticipant",
"resources": [
{
"$class": "org.acme.sample.SampleParticipant",
"participantId": "participantId:1000",
"firstName": "Fugiat et.",
"lastName": "Veniam laboris enim irure enim."
}
],
"targetRegistry": "resource:org.hyperledger.composer.system.ParticipantRegistry#org.acme.sample.SampleParticipant",
"transactionId": "01d12fc2-81b5-4ef2-a34b-b43c9c7060f8",
"timestamp": "2017-09-29T14:52:24.508Z"
}```
mahoney1 (Fri, 29 Sep 2017 15:02:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QZKcQPko3tCrL58WM) @vishwasrao you could have a look at https://github.com/hyperledger/composer-sample-networks/tree/master/packages/pii-network - its authorisation approval model does something similar to what you're looking at. check out the model file too under 'models' (same parent directory above)
jtonline (Fri, 29 Sep 2017 15:02:38 GMT):
@zachgoll my only criticism is that it was a bit long for me- I know it's really difficult to keep this type of video short, and it's not always practical to break down into shorter segments, but anything longer than a few minutes is a big investment. Obviously I'm a Composer fan though, so I watched it :)
ppcm (Fri, 29 Sep 2017 15:24:38 GMT):
@mahoney1 and @dselman , thanks for transactions, and for events, do you think it can be the same?
uber.twin (Fri, 29 Sep 2017 15:29:01 GMT):
@mahoney1 hi, is there a chance that the upcoming versions of composer will offer support for defining couchdb indexes in a dedicated file, at the application level, similarly how queries are declared in queries.qry?
ujjwalmishra (Fri, 29 Sep 2017 16:48:21 GMT):
When I deploy a bna it throws error "PEM encoded certificate is required" . After running 'composer identity import' command it created two files in .hfc-key-stores : one ending in '-priv' and other in '-pub'. How can I fix this?
PreetSinojiya (Fri, 29 Sep 2017 16:56:52 GMT):
Has joined the channel.
rbailey (Fri, 29 Sep 2017 17:05:11 GMT):
Has joined the channel.
rbailey (Fri, 29 Sep 2017 17:06:15 GMT):
What is the correct way to create an Id?
rbailey (Fri, 29 Sep 2017 17:10:07 GMT):
for example when i submit the setup transaction for the car auction demo network, Id's are created with only the id attribute details, when i "add" an asset via composer screen, Id's are created like companyId:Randy
rbailey (Fri, 29 Sep 2017 17:11:48 GMT):
companyId:Randy
{
"$class": "org.acme.vehicle.lifecycle.Regulator",
"companyId": "companyId:Randy"
}
regulator
{
"$class": "org.acme.vehicle.lifecycle.Regulator",
"companyId": "regulator"
}
ykcai (Fri, 29 Sep 2017 17:21:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WejdvBrCCrTpwBckB) @mahoney1 That is weird, i am running the lastest version 0.13.1 i do not see that, I am not running on playground, this is through the generated API by Composer. It looks like the information you have is inside the deserialized transaction. I am looking for a way to event an event when a participant is added so I can subscribe to that event from a NodeJS server.
mahoney1 (Fri, 29 Sep 2017 17:38:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=amLo2izLiYDHNuNXQ) @ykcai i see - to your Qs - On Historian https://hyperledger.github.io/composer/reference/historian.html - note it mentions that "It's important to note that the Transaction, Participant and Identity are relationships. Applications that wish to obtain these attributes must resolve this relationship" - on Events - check out Vehicle Lifecycle (sample) network - here, an event (PlaceOrderEvent) is emitted on a a new order (new asset) being added (L29) https://github.com/hyperledger/composer-sample-networks/blob/master/packages/vehicle-lifecycle-network/lib/manufacturer.js#L40 and the modeled event is here -> https://github.com/hyperledger/composer-sample-models/blob/master/packages/vehicle-lifecycle-model/models/manufacturer.cto you can do the same thing with your Participant etc. etc.
mahoney1 (Fri, 29 Sep 2017 18:11:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Gu67aM9g47sG4i4o2) @rbailey hi there - I agree it looks slightly odd (eg. you hit generate random data in Playground Test for vehicle.cto) to have the preceding field name in the 'value' bit. The answer is both are plausible 'company IDs' (as far as random data goes) because they're just 'Strings' contained inside quotes in JSON etc etc., I'll get this looked into, its not just 'company ID' is the same elsewhere.
bingbong (Fri, 29 Sep 2017 19:44:45 GMT):
Has joined the channel.
bingbong (Fri, 29 Sep 2017 19:53:34 GMT):
Hello! What's the difference between writing "chain code" for hyperledger fabric and developing Business Networks using Hyperledger Composer?
t_stephens67 (Fri, 29 Sep 2017 20:01:27 GMT):
@bingbong you dont have to write the chaincode the business network does all the hard work for you
bingbong (Fri, 29 Sep 2017 20:03:43 GMT):
@t_stephens67 - thanks for the reply. So in composer, is the 'smart contracts' now these JavaScript files
silliman (Fri, 29 Sep 2017 20:03:45 GMT):
@bingbong Here's a great blog post on the subject: https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/
bingbong (Fri, 29 Sep 2017 20:04:45 GMT):
@silliman -- thank you I will read that.
rbulgarelli (Fri, 29 Sep 2017 20:29:10 GMT):
@t_stephens67 are you sure that is how the business network works?
t_stephens67 (Fri, 29 Sep 2017 20:29:44 GMT):
@rbulgarelli Never been more sure in all my life
rbulgarelli (Fri, 29 Sep 2017 20:30:56 GMT):
@t_stephens67 I think this would be more appropriate for the #rocketchat-chat
FernandoLisboa (Fri, 29 Sep 2017 20:46:36 GMT):
Has joined the channel.
fabr (Fri, 29 Sep 2017 20:55:29 GMT):
Has joined the channel.
john2000 (Sat, 30 Sep 2017 02:00:28 GMT):
how can i get the fabric block from rest server?
kuyseng (Sat, 30 Sep 2017 03:54:21 GMT):
Hi everyone, i'm new to Composer and Docker. Can anyone tell how to config composer to save data?
problem: every restart, all the data is lost.
Riussi (Sat, 30 Sep 2017 12:15:21 GMT):
Has joined the channel.
alwaysgaryorourke (Sat, 30 Sep 2017 12:22:11 GMT):
Has joined the channel.
haarism (Sat, 30 Sep 2017 13:24:29 GMT):
Has joined the channel.
Onur (Sat, 30 Sep 2017 13:44:29 GMT):
Has joined the channel.
michaelgriffith (Sat, 30 Sep 2017 15:49:26 GMT):
when I try to persist an asset into the registry, I am getting this error: `Error: Object with ID 'Asset:org.acme.sample.PatientContact' in collection with ID '$sysregistries' does not exist` what does this possibly mean?
beto983 (Sat, 30 Sep 2017 22:59:12 GMT):
Has joined the channel.
pradeeppadmarajaiah (Sun, 01 Oct 2017 06:45:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=phZSwXtdcz3GiZvav) @jtonline Thank you. But how to test it /??
nasht00 (Sun, 01 Oct 2017 07:52:52 GMT):
Can I use `query` in logic.hs?
nasht00 (Sun, 01 Oct 2017 07:52:52 GMT):
Can I use `query` in logic.js?
vishwasrao (Sun, 01 Oct 2017 10:03:53 GMT):
Hi All,
How to check size of array in query in Composer
vishwasrao (Sun, 01 Oct 2017 10:04:15 GMT):
in where clause I want to check if array size is 0
adrianblakey (Sun, 01 Oct 2017 16:48:03 GMT):
Please could someone point me to some documentation for annotations - is there some jsdoc for them?
adrianblakey (Sun, 01 Oct 2017 17:16:30 GMT):
I have found it https://hyperledger.github.io/composer/reference/cto_language.html bottom of the page ...
uchi (Sun, 01 Oct 2017 17:16:36 GMT):
I apoloigize if my question is dumb.
I was able to setup Hyperledger Composer on docker containers on a mac by following the instructions here: https://hyperledger.github.io/composer/installing/development-tools.html. I was also able to develop a proof of concept project with both a mobile an web app that connected the blockchain via a rest api.
Now, I am trying to run the nodes on actual Ubuntu servers in a local network but I can't seem to find any tutorial to explains how to do that.
I know I might have some gap in my knowledge of computer architecture or networking in general that's why I am struggling with this.
I was looking at the `downloadFabric.sh` script in `fabric-tools` and I see how the docker images are fulled. I was thinking maybe I should just pull the docker images to the individual linux servers.
`### Pull and tag the latest Hyperledger Fabric base image.`
`docker pull hyperledger/fabric-peer:$ARCH-1.0.1` on server 1
`docker pull hyperledger/fabric-ca:$ARCH-1.0.1` on server 2
`docker pull hyperledger/fabric-ccenv:$ARCH-1.0.1` on server 3
`docker pull hyperledger/fabric-orderer:$ARCH-1.0.1`
`docker pull hyperledger/fabric-couchdb:$ARCH-1.0.1`
and so on.
Please, how will you do this? Is there any resources I missed while researching how to do this? Can you point me to some resources that I can read to help understand how to do this. Thank you.
adrianblakey (Sun, 01 Oct 2017 18:09:48 GMT):
@uchi 5 Have you installed the prerequisites to run the composer dockers on Ubuntu? After that it's really not different from running on a Mac.
adrianblakey (Sun, 01 Oct 2017 18:12:01 GMT):
My model decorators fail during npm install. I deleted node_modules before running. Error: ParseException: Expected "abstract", "asset", "concept", "enum", "event", "participant", "transaction", comment, end of input, end of line or whitespace but "@" found. Line 238 column 2 Any ideas?
michaelgriffith (Sun, 01 Oct 2017 18:20:19 GMT):
I'm trying to deploy my bna file using the documentation as a guide. 1) it seems like the docs are out of date because the command line doesn't mention passing an enrollId. So this caused me to go back and read the docs on creating an ID card and deploying. I created an admin user (not tied to any BN) with a simple user name using my initials (mg/mg). I gave the user 'ChannelAdmin' and 'PeerAdmin' roles when creating the id card. When deploying my BNA using this command 'composer network deploy -a ./dist/emr.bna -p hlfv1 --loglevel DEBUG -i mg` I am prompted for my password (mg) and the whole thing fails with this error: ```
Deploying business network from archive: ./dist/emr.bna
prompt: What is the enrollment secret of the user?: **
Business network definition:
Identifier: my-emr@0.1.10
Description: IBM Blockchain Tinker Training 1.0 EMR
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
```
Any/all replies appreciated!
michaelgriffith (Sun, 01 Oct 2017 18:20:19 GMT):
I'm trying to deploy my bna file using the documentation as a guide. 1) it seems like the docs are out of date because the command line doesn't mention passing an enrollId. So this caused me to go back and read the docs on creating an ID card and deploying. I created an admin user (not tied to any BN) with a simple user name using my initials (mg/mg). I gave the user `ChannelAdmin` and `PeerAdmin`roles when creating the id card. When deploying my BNA using this command `composer network deploy -a ./dist/emr.bna -p hlfv1 --loglevel DEBUG -i mg` I am prompted for my password (mg) and the whole thing fails with this error: ```
Deploying business network from archive: ./dist/emr.bna
prompt: What is the enrollment secret of the user?: **
Business network definition:
Identifier: my-emr@0.1.10
Description: IBM Blockchain Tinker Training 1.0 EMR
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
```
Any/all replies appreciated!
adrianblakey (Sun, 01 Oct 2017 18:23:10 GMT):
Ah - figured it out - update package.json references to 0.13.1
BernardLin (Sun, 01 Oct 2017 18:28:55 GMT):
Has joined the channel.
mahoney1 (Sun, 01 Oct 2017 18:41:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oYp4gYTCL4SwzAWwz) @kuyseng you're really using Docker containers for persistence (Composer is using it for a dev env). You can either look at the correct answer here -> https://stackoverflow.com/questions/19585028/i-lose-my-data-when-the-container-exits ("ways to persist container data" bit) or review Docker docs here -> https://docs.docker.com/engine/reference/commandline/commit/ - note that if you stop your docker container using `docker stop` and then do a docker start, the container should will have your changes.
mahoney1 (Sun, 01 Oct 2017 18:41:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oYp4gYTCL4SwzAWwz) @kuyseng you're really wanting to use Docker containers with persistence (Composer is using Docker to build a runtime Fabric Dev environment). You can either look at the correct answer here -> https://stackoverflow.com/questions/19585028/i-lose-my-data-when-the-container-exits ("ways to persist container data" bit) or review Docker docs here -> https://docs.docker.com/engine/reference/commandline/commit/ - note that if you stop your docker container using `docker stop` and then do a docker start, the container should will have your changes.
mahoney1 (Sun, 01 Oct 2017 18:42:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jChCpAgWJvveq5RfG) @nasht00 yes - see Developer tutorial and logic here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js
adrianblakey (Sun, 01 Oct 2017 18:46:20 GMT):
Can decorators be called in transactions? var foo = theFactory.newResource(NS, 'Foo', '1'); var val = foo.getDecorator('description').getArguments()[1]; Where the mode: @description("Some foo")
asset Foo extends FooBar { ... Error message in playground: TypeError: foo.getDecorator is not a function. (In 'foo.getDecorator('description')', 'foo.getDecorator' is undefined)
mahoney1 (Sun, 01 Oct 2017 18:58:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eGJ62DfEskHRXkzHM) @michaelgriffith the docs indicate you need to pass the -s https://hyperledger.github.io/composer/reference/composer.network.deploy.html The error suggests a problem with the set up of the fabric CA you are trying to communicate with. I would try to check the CA connection and also that you've configured the correct keyValStore
mahoney1 (Sun, 01 Oct 2017 18:58:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eGJ62DfEskHRXkzHM) @michaelgriffith the docs indicate you need to pass the `-s` parameter (but you were prompted to enter the full password as you indicated) https://hyperledger.github.io/composer/reference/composer.network.deploy.html The error suggests a problem with the set up of the fabric CA you are trying to communicate with. I would try to check the CA connection and also that you've configured the correct keyValStore
mahoney1 (Sun, 01 Oct 2017 19:01:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=nKovxLQBXxT8MpZoo) @uchi 5 as a non-root user - run the Ubuntu pre-reqs script -> https://hyperledger.github.io/composer/installing/development-tools.html (see the curl command - this sets up all your pre-reqs when you download and run it). - See also the info about versions.
mahoney1 (Sun, 01 Oct 2017 19:10:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PuRoaKyZjBfQ9uuG4) @vishwasrao normally you would use `_array.length_` for the result set - see an example here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/test/trading.js#L134
mahoney1 (Sun, 01 Oct 2017 19:10:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PuRoaKyZjBfQ9uuG4) @vishwasrao normally you would use _array.length_ for the result set - see an example here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/test/trading.js#L134
mahoney1 (Sun, 01 Oct 2017 19:11:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vW9JZKh4azvJBpKWQ) @pradeeppadmarajaiah Install a local playground, connect to a Fabric, then export
mahoney1 (Sun, 01 Oct 2017 19:19:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GzLhgyDzY74p4oqxx) @john2000 you can't get a fabric block using Composer - rather, using a Fabric method. -> https://www.npmjs.com/package/fabric-rest . Its a loopback application that provides a REST API on top of fabric-sdk-node using a loopback connector for hyperledger fabric.
mahoney1 (Sun, 01 Oct 2017 19:22:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qGykWNMwiQA3Z6HbD) @bingbong correct, the smart contract transaction logic is written in the javascript based Transaction Processor functions -> https://hyperledger.github.io/composer/reference/js_scripts.html
michaelgriffith (Sun, 01 Oct 2017 19:37:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hfHyrSWSxsxaSAKiP) @mahoney1 Thanks for the reply. I had some trouble with the environment setup b/c my mac was still on 10.11. I've upgraded to 10.13 now and going to try to re-setup everything.
mahoney1 (Sun, 01 Oct 2017 19:37:50 GMT):
@michaelgriffith ok cool, you're welcome.
rahul-1996 (Sun, 01 Oct 2017 20:45:32 GMT):
Has joined the channel.
mikailcetinkaya (Sun, 01 Oct 2017 21:13:42 GMT):
Has joined the channel.
mikailcetinkaya (Sun, 01 Oct 2017 21:16:04 GMT):
Hi how to disable admin to delete or update
uchi (Sun, 01 Oct 2017 21:18:14 GMT):
@adrianblakey Thank you. I am trying to install this on multiple ubuntu servers, not as docker containers on an ubuntu server. So one server runs one node. I have the servers all in the same network and I can ssh into them from the network
mikailcetinkaya (Sun, 01 Oct 2017 21:22:53 GMT):
Composer admin can delete anything anyone know how to disable?
adrianblakey (Sun, 01 Oct 2017 21:51:49 GMT):
Please can someone point me to some code that shows how to dispatch a transaction from within a transaction? I presume you do something like: var NS = 'org.acme.claim';
var theFactory = getFactory();
var myXA = theFactory.newTransaction(NS, 'MyXA');
adrianblakey (Sun, 01 Oct 2017 21:52:04 GMT):
but what comes next?
adrianblakey (Sun, 01 Oct 2017 22:10:19 GMT):
Oh well that doesn't work: TypeError: theFactory.newTransaction is not a function. (In 'theFactory.newTransaction(NS, 'MyXA')', 'theFactory.newTransaction' is undefined)
kuyseng (Mon, 02 Oct 2017 03:09:38 GMT):
@mahoney1 Thanks for your reply. And I try to make volume on couchdb image. but it's still not working. after `./startFabric` it still lost data. Am I wrong something
kuyseng (Mon, 02 Oct 2017 03:09:43 GMT):
Message Attachments
dselman (Mon, 02 Oct 2017 07:02:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4KH5DFYbjdhyMXvvx) @adrianblakey you can't. If you want to share code between transaction processor functions you can break it out into a helper function to sa
dselman (Mon, 02 Oct 2017 07:02:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4KH5DFYbjdhyMXvvx) @adrianblakey you can't. If you want to share code between transaction processor functions you can break it out into a helper function to share it. Interested to learn more about this requirement and what you are trying to achieve.
dselman (Mon, 02 Oct 2017 07:06:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BodW5RqjPQ4xcR3eM) @adrianblakey decorators are attached to the classdeclarations, not to the instances. So, you need to to use something like: foo.getClassDeclaration().getDecorator(...)
mimineko (Mon, 02 Oct 2017 07:19:51 GMT):
Has joined the channel.
mimineko (Mon, 02 Oct 2017 07:54:54 GMT):
Hi all, I made four peers and two orderers, and started Composer server after deploying the bna file. It worked. However when I stop one peer, then POST from explorer fails.
I found that it works again when I delete the URLs of stopped peer from `connection.json` and restart the server. (Actually I have specified URLs of all peers.)
How can I keep the Composer server working even when some peers stop?
erNail (Mon, 02 Oct 2017 09:34:53 GMT):
Hi, i'm trying to wrap my head around how channels work with hyperledger composer. Is there even a way to implement channels with composer ?
uber.twin (Mon, 02 Oct 2017 09:37:15 GMT):
@dselman hi, is there a replacement for the "system/transactions/
uber.twin (Mon, 02 Oct 2017 09:55:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=d4w44ophx4tMsEDZ6) @erNail "channel": "composerchannel", see https://hyperledger.github.io/composer/reference/connectionprofile.html
uber.twin (Mon, 02 Oct 2017 09:55:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=d4w44ophx4tMsEDZ6) @erNail ```"channel": "composerchannel"```, see https://hyperledger.github.io/composer/reference/connectionprofile.html
erNail (Mon, 02 Oct 2017 10:01:44 GMT):
@uber.twin
So, how do you create the channel ? Do you deploy a new business network for each channel ?
mikailcetinkaya (Mon, 02 Oct 2017 10:05:45 GMT):
What kind of a Participant ad min is?
uber.twin (Mon, 02 Oct 2017 10:11:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LKe3fWKuGoA76CksC) @erNail channel creation it's a Fabric setup task, not related to Composer:
```https://github.com/hyperledger/composer-tools/blob/master/packages/fabric-dev-servers/fabric-scripts/hlfv1/startFabric.sh```
this will walk you through the complete procedure of setting up Fabric, including the channel
```https://github.com/hyperledger/composer-tools/blob/master/packages/fabric-dev-servers/README.md```
uber.twin (Mon, 02 Oct 2017 10:11:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LKe3fWKuGoA76CksC) @erNail channel creation it's a Fabric setup task, not related to Composer:
```https://github.com/hyperledger/composer-tools/blob/master/packages/fabric-dev-servers/fabric-scripts/hlfv1/startFabric.sh```
this will walk you through the complete procedure of setting up Fabric, including the channel
https://github.com/hyperledger/composer-tools/blob/master/packages/fabric-dev-servers/README.md
uber.twin (Mon, 02 Oct 2017 10:11:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LKe3fWKuGoA76CksC) @erNail channel creation is a Fabric setup task, not related to Composer:
```https://github.com/hyperledger/composer-tools/blob/master/packages/fabric-dev-servers/fabric-scripts/hlfv1/startFabric.sh```
this will walk you through the complete procedure of setting up Fabric, including the channel
https://github.com/hyperledger/composer-tools/blob/master/packages/fabric-dev-servers/README.md
erNail (Mon, 02 Oct 2017 10:25:52 GMT):
@uber.twin Okay, so let's assume i have created 2 channels. I also have created 2 connection profiles, one wich connects to channel A (public channel, all participants are in it), the other to channel B (Only 2 participants are in it). Now, i have transactions which should be public on channel A, and transactions which should be private on channel B. Am i assuming right that i have to deploy 2 different Business-Network-Archives(bna), one with the public transactions and one with the private transactions ? Or is there a way to use the same bna's, but prevent certain transactions from being executed on channel A ?
uber.twin (Mon, 02 Oct 2017 10:34:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Km3jjyqfWQg2Hk8MB) @erNail you can use the same channel and same bna with ACL
https://hyperledger.github.io/composer/reference/acl_language.html
erNail (Mon, 02 Oct 2017 10:38:52 GMT):
@uber.twin Does that mean i don't need different channels for private transactions ? I can simply deny READ for certain transactions ?
uber.twin (Mon, 02 Oct 2017 10:40:17 GMT):
yes, as long as the READ is done through the Composer API
uber.twin (Mon, 02 Oct 2017 10:42:48 GMT):
but each Fabric peer stores all data
erNail (Mon, 02 Oct 2017 10:50:09 GMT):
@uber.twin Okay, thank you very much. I think i understand it now :thumbsup:
uber.twin (Mon, 02 Oct 2017 10:51:58 GMT):
sure, have fun with it:)
cweiers (Mon, 02 Oct 2017 10:53:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FRG6rzWpw3eQaouzQ) @mikailcetinkaya the default admin user with adminpw as enrollment secret is not linked to any business network participant (the composer ping command shows the associated network participant btw)
dselman (Mon, 02 Oct 2017 11:16:26 GMT):
@uber.twin You can use the `system/historian` REST route. https://hyperledger.github.io/composer/business-network/historian.html
erNail (Mon, 02 Oct 2017 11:38:17 GMT):
I have another question concerning the Network Access Control. Let's say you deny a certain participant to update an asset. Would he still be able to change it when not using the composer API ? For example with a fabric sdk ?
multimedial (Mon, 02 Oct 2017 11:41:21 GMT):
Has joined the channel.
multimedial (Mon, 02 Oct 2017 11:43:14 GMT):
Hello there, new dev here from Germany. I am slowly starting with fabric, and got my example up and running using the bluemix composer. Now I would like to install the composer locally on a Windows 10 machine, yet the npm install and scripts all fail due to wrong paths. It seems to me that Windows 10 is not really well supported as development platform? I'd rather want it to do on MacOS X or Linux, but I am bound to use Windows 10 by my employer.
erNail (Mon, 02 Oct 2017 11:46:05 GMT):
@multimedial You could use Vagrant to run a ubuntu vm, and install the composer there. I don't know if there is a way to run it directly on Windows 10.
Menniti (Mon, 02 Oct 2017 11:47:06 GMT):
Has joined the channel.
mikailcetinkaya (Mon, 02 Oct 2017 12:00:57 GMT):
@cweiers i Want to know how to disable admin delete any data
erNail (Mon, 02 Oct 2017 12:05:08 GMT):
Is it possible to connect different peers to the network via one identity card ? If i have a identity card for one organisation, could it be used for several machines to interact with the blockchain ?
erNail (Mon, 02 Oct 2017 12:25:50 GMT):
Or: My Company has several servers. If there are any problems, they should log it in the fabric blockchain. Does every server need to be a participant with it's own identity card, or can they interact with my business model through my companys identity card ?
uber.twin (Mon, 02 Oct 2017 12:46:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Gz6qnwkmrYayvNyGQ) @dselman sure, the HistorianRecord used to be available before also. But, as far as I remember, the "system/transactions/
uber.twin (Mon, 02 Oct 2017 12:46:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Gz6qnwkmrYayvNyGQ) @dselman sure, the HistorianRecord used to be available before also. But, as far as I remember, the "system/transactions/
cweiers (Mon, 02 Oct 2017 13:03:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=u5oBdPW4y3miDyZFp) @multimedial I would also recommend to just use a linux vm. Doesnt even need to use vagrant (which is a bit overkill imho if you just want a single developing machine for yourself. Its another thing if there is a whole team around you). Installing virtualbox and downloading a .iso file of your favorite distribution is all it takes
cweiers (Mon, 02 Oct 2017 13:08:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fz5Ey7wWM7qTbAvZf) @mikailcetinkaya Eh.. I don't think i really understand you here. Do you want to keep the admin user from deleting data ? Do you want to disable the admin user ?
dselman (Mon, 02 Oct 2017 13:10:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=F8m2TKc2vLHvjvZH9) @uber.twin sure it does. That is the `transactionInvoked` field on the HistorianRecord.
mikailcetinkaya (Mon, 02 Oct 2017 13:13:23 GMT):
@cweiers i want to disable delete by admin
cweiers (Mon, 02 Oct 2017 13:16:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xApATAYTWM7F52G4A) @mikailcetinkaya So that your admin user has no rights to delete/create assets ? Or what is going to be deleted here ? As long as your ACL requires a certain participant type for these actions, I don't think admin can ever do that considering he has no associated participant
erNail (Mon, 02 Oct 2017 13:23:55 GMT):
@cweiers Why do you think using vagrant would be overkill ? I think vagrant is the fastest way to get going. Simply download a ready-to-go ubuntu box, forward the ports you need in the vagrant file and enter the commands to install the composer-environment.
t_stephens67 (Mon, 02 Oct 2017 13:24:05 GMT):
If I have a network that has 2 organizations how do I specify which org is used for the transaction in composer?
t_stephens67 (Mon, 02 Oct 2017 13:26:14 GMT):
I guess to add to that if I had multiple channels how does composer use those channels
erNail (Mon, 02 Oct 2017 13:29:36 GMT):
@t_stephens67 look at the conversation starting at 11:34 (https://chat.hyperledger.org/channel/composer?msg=d4w44ophx4tMsEDZ6), i had pretty much the same questions.
uber.twin (Mon, 02 Oct 2017 13:30:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ld78mRMsKMiGkHvhL) @dselman and doesn't it only carry transaction metadata? I think that's what it use to. Than, is there a generic way to query for the underlying business transaction content(no matter what kind of transaction), starting from a HistorianRecord?
uber.twin (Mon, 02 Oct 2017 13:30:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ld78mRMsKMiGkHvhL) @dselman OK, I see,
uber.twin (Mon, 02 Oct 2017 13:30:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ld78mRMsKMiGkHvhL) @dselman OK, I see,
mikailcetinkaya (Mon, 02 Oct 2017 13:33:28 GMT):
@cweiers on playground it can delete and add . On an actual Network it will be disabled you say right ?
Menniti (Mon, 02 Oct 2017 13:51:56 GMT):
Hyperledger composer is on production enviroment?
cweiers (Mon, 02 Oct 2017 13:52:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xQvGx2zNtgck6KWeX) @mikailcetinkaya Hm. I know in my setup the standard admin/adminpw user couldn't create any assets or do anything with them. I have the default 1 peer /w couchDB / 1 ca / 1 orderer fabric setup with composer-rest-server running
cweiers (Mon, 02 Oct 2017 13:53:34 GMT):
in the default playground case your "blockchain" is browser storage only though, and having just looked at a random example network I can't seem to find wether there is actually a participant linked to the "admin" in that case
cweiers (Mon, 02 Oct 2017 13:54:24 GMT):
you can't ommit the participant field when you create a new ID in playground though, so that leads me to believe that the playground admin actually has a participant linked
cweiers (Mon, 02 Oct 2017 13:54:55 GMT):
maybe someone with more knowledge can add more to this
cweiers (Mon, 02 Oct 2017 14:01:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rHCuhfCbvvbpWwftT) @erNail I just felt it always took more. Want a gui (i want one), have corporate proxy settings / networking things to add, memory etc... . Sure, in the simple case its probably not much of a difference, but for a single user I feel its easier to just install it "normally" through virtualbox instead of... telling a vagrantfile how to configure virtualbox to basically achieve the same thing. If you need to multiply it for more users / single uses, sure. Vagrant shines there. But for a single user I really don't see the need for it
cweiers (Mon, 02 Oct 2017 14:01:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rHCuhfCbvvbpWwftT) @erNail I just felt it always took more. Want a gui (i want one), have corporate proxy settings / networking things to add, memory etc... . Sure, in the simple case its probably not much of a difference, but for a single user I feel its easier to just install it "normally" through virtualbox instead of... telling a vagrantfile how to configure virtualbox to basically achieve the same thing. If you need to multiply it for more users / "throwaway" uses, sure. Vagrant shines there. But for a single user I really don't see the need for it
dsingh45 (Mon, 02 Oct 2017 14:12:46 GMT):
Has joined the channel.
t_stephens67 (Mon, 02 Oct 2017 14:13:44 GMT):
@erNail Thank you but just to confirm if I create 2 composer channels and 2 connection profiles do I also need to create 2 composer-rest-servers one for each connection profile?
uchi (Mon, 02 Oct 2017 14:14:41 GMT):
How can I setup composer in a production-like environment? So multiple ubuntu servers on the same network (Not docker containers). There doesn't seem to be any tutorial that show how to do that
erNail (Mon, 02 Oct 2017 14:21:18 GMT):
@t_stephens67 I'm not entirely sure, but i think so.
@uchi 5 Haven't tried it myself, but you need to set up a fabric network (http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html), then change the connection profile to make composer connect to the runtime (https://hyperledger.github.io/composer/reference/connectionprofile.html)
erNail (Mon, 02 Oct 2017 14:35:18 GMT):
Does anyone know if the Access Control effects users that don't use the composer API ? What if i hava a participant which is not allowed to update an asset, could he do it without using the composer API ?
uchi (Mon, 02 Oct 2017 15:10:34 GMT):
@erNail thank you. The change to the connection profile will be handy.
mikailcetinkaya (Mon, 02 Oct 2017 15:10:55 GMT):
@cweiers thank you
tennenjl (Mon, 02 Oct 2017 15:24:25 GMT):
Hi, currently when I code a composer nodejs application, I connect to my running business network creating a new BusinessNetworkConnection and then connect pointing to a connection profile, along with a business network identifier, participant id and participant password. Does this change or will this change with the move towards business network cards? Thanks!
mahoney1 (Mon, 02 Oct 2017 16:16:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fz5Ey7wWM7qTbAvZf) @mikailcetinkaya see here -> https://github.com/hyperledger/composer/issues/670 - in particular comments of Apr 12 and Apr 22.
mahoney1 (Mon, 02 Oct 2017 16:22:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3XLKpmEszggrXQy8d) @t_stephens67 through the identities issued by that Org and linked to a participant in Composer - 1 channel = 1 private ledger (between Orgs on that channel) and 1 business network = 1 REST server instance serving the Orgs/participants on the network.
a.ochs (Mon, 02 Oct 2017 17:07:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZkPiWMPWH7HxwrsC4) @rthatcher Thank you, i just saw it now.
SanketModi (Mon, 02 Oct 2017 17:18:47 GMT):
Has joined the channel.
t_stephens67 (Mon, 02 Oct 2017 18:00:43 GMT):
@mahoney1 to specify who is making the call to the rest server (Org1 vs Org2) will I need to set up OAuth2. What credentials goes through the rest server to say this is a request for Org1 vs Org2
mahoney1 (Mon, 02 Oct 2017 19:02:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xwnvYyStNmnyvyGyF) @tennenjl it doesn't change at the moment, no. The network ID cards are for Playground.
mahoney1 (Mon, 02 Oct 2017 19:11:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HdgxFgKov8bk2zGrd) @t_stephens67 - you'll need to set up the strategy that you prefer. You mention OAuth2 - OAuth2 web authentication flows require the use of a web browser to navigate to the authentication providers website, to get a token and then authenticate. Going back to your earlier question - the transaction is generated by a participant (mapped to an identity) in that Org (whatever transaction types were modeled and deployed as part of the business network) https://hyperledger.github.io/composer/reference/js_scripts.html. That transaction updates the blockchain ie goes onto the ledger / channel shared between the Orgs (and subject to whatever access controls see what transactions took place).
tennenjl (Mon, 02 Oct 2017 21:23:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JTEFqHyBCX5nvn8Et) @mahoney1 Thank you!
mikailcetinkaya (Mon, 02 Oct 2017 23:06:54 GMT):
@mahoney thank you
kletkeman (Tue, 03 Oct 2017 03:44:39 GMT):
I was forced to downgrade my composer on a free kubernets cluster on bluemix this afternoon and have spent the evening wrestling with composer 12.2, which has always worked great. Now I get errors as soon as the playground launches, with this one leading the parade: Error: Required metadata field not found: name. I get that flashing up just before the "Let's Blockchain" dialog, and then it comes up and stays after I click the let's blockchain button. There is no PeerAdmin, and nothing I do (importing IDs, creating IDs) makes it happy. Any thoughts? Thanks.
kletkeman (Tue, 03 Oct 2017 03:44:39 GMT):
I was forced to downgrade my composer on a free kubernets cluster on bluemix this afternoon and have spent the evening wrestling with composer 12.2, which has always worked great. Now I get errors as soon as the playground launches, with this one leading the parade: Error: Required metadata field not found: name. I get that flashing up just before the "Let's Blockchain" dialog, and then it comes up and stays after I click the let's blockchain button. There is no PeerAdmin, and nothing I do (importing IDs, creating IDs) makes it happy. Any thoughts? Thanks. Oh yeah ... one last thing: after I dismiss the second instance of the error, it pops a dialog with a spinning circle saying that it is initalizing the playground. That goes on forever and if you click on the main window it disappears, but that leaves it in a state where all the attempts I mentioned fail.
nuxibyte_old (Tue, 03 Oct 2017 08:14:34 GMT):
Has joined the channel.
uber.twin (Tue, 03 Oct 2017 08:19:44 GMT):
@mahoney1 hi, having a HistorianRecord instance(histRecord), would a query like below always work and retrieve the actual transaction message?
```
SELECT
rthatcher (Tue, 03 Oct 2017 09:01:59 GMT):
@kletkeman - I would think that you have some 'old' data still in your browser from a different version of Composer. You could try entering the command `localstorage.clear()` in your browser console. If that doesn't work, then hit the `login` screen which should clear existing name/username data. e.g. for the hosted bluemix system login screen is `http://composer-playground.mybluemix.net/login`
ppcm (Tue, 03 Oct 2017 11:05:54 GMT):
hi, does anyone successfully played with queries in composer 0.13?
medhak19 (Tue, 03 Oct 2017 11:06:28 GMT):
Has joined the channel.
mahoney1 (Tue, 03 Oct 2017 11:08:48 GMT):
@here - fyi There's a call you may be interested in "Creating Blockchain Apps with Hyperledger Composer. Live demo, best practices, engage experts" TODAY at 2pm (UTC) ,10am ET (US), 3pm (UK) - join via Zoom link: https://zoom.us/my/markparz
rbulgarelli (Tue, 03 Oct 2017 12:16:15 GMT):
Hi, has anyone used docker swarm and composer? I am trying to deploy the business network across nodes and not having any luck.
mrshah-ibm (Tue, 03 Oct 2017 12:23:02 GMT):
Has joined the channel.
IanSparkes (Tue, 03 Oct 2017 12:37:00 GMT):
@rbulgarelli Yes, we do that. What problems are you getting?
rbulgarelli (Tue, 03 Oct 2017 12:45:10 GMT):
@IanSparkes I guess I don't know where to begin with deploying the network across nodes. Is there a tutorial or some sort of documentation available for me to get a better idea of how to combine these two?
kkarasavvas (Tue, 03 Oct 2017 12:45:20 GMT):
Has joined the channel.
IanSparkes (Tue, 03 Oct 2017 13:03:37 GMT):
TBH, I wouldn't take into account very much that Swarm is there: it gives you a nice ingress network handling, scaling, restarting of services and so on, but in reality it not really much more than a sort of "docker-compose with superpowers"
IanSparkes (Tue, 03 Oct 2017 13:04:30 GMT):
there are plenty of tutorials about Swarm out there, and you might end up developing a docker-compose v3 file to launch it
IanSparkes (Tue, 03 Oct 2017 13:06:50 GMT):
but it's more of a operational add on to the standard network. I'd suggest you divide the problem into Composer on docker-compose (as per tutorials) and then come back to the Swarm subject when you are up to speed on Composer topics. Don't try to eat the elephant all in one go... ;-)
MadhavaReddy (Tue, 03 Oct 2017 13:14:43 GMT):
Has joined the channel.
t_stephens67 (Tue, 03 Oct 2017 13:39:22 GMT):
vp1 | 2017-10-03 13:38:28.407 UTC [dockercontroller] Start -> DEBU 393 Started container dev-vp1-upb-network-0.12.0
vp1 | 2017-10-03 13:38:28.407 UTC [container] unlockContainer -> DEBU 394 container lock deleted(dev-vp1-upb-network-0.12.0)
vp2 | 2017-10-03 13:38:28.494 UTC [dockercontroller] Start -> DEBU 393 Started container dev-vp2-upb-network-0.12.0
vp2 | 2017-10-03 13:38:28.494 UTC [container] unlockContainer -> DEBU 394 container lock deleted(dev-vp2-upb-network-0.12.0)
vp0 | 2017-10-03 13:38:28.557 UTC [dockercontroller] Start -> DEBU 403 Started container dev-vp0-upb-network-0.12.0
vp0 | 2017-10-03 13:38:28.557 UTC [container] unlockContainer -> DEBU 404 container lock deleted(dev-vp0-upb-network-0.12.0)
t_stephens67 (Tue, 03 Oct 2017 13:39:35 GMT):
my network deployement is getting stuck there^
ppcm (Tue, 03 Oct 2017 13:56:19 GMT):
no one players with queries?
Because, when I follow the tutorial, I get the error
````
Error: The specified query does not exist
at CompiledQueryBundle.execute (node_modules/composer-runtime/lib/compiledquerybundle.js:100:19)
at Engine.executeQuery (node_modules/composer-runtime/lib/engine.queries.js:69:49)
at context.initialize.then.then (node_modules/composer-runtime/lib/engine.js:369:37)
at process._tickCallback (internal/process/next_tick.js:109:7)
```
ppcm (Tue, 03 Oct 2017 13:56:19 GMT):
no one players with queries?
Because, when I follow the tutorial, I get the error
```
Error: The specified query does not exist
at CompiledQueryBundle.execute (node_modules/composer-runtime/lib/compiledquerybundle.js:100:19)
at Engine.executeQuery (node_modules/composer-runtime/lib/engine.queries.js:69:49)
at context.initialize.then.then (node_modules/composer-runtime/lib/engine.js:369:37)
at process._tickCallback (internal/process/next_tick.js:109:7)
```
eacoeytaux (Tue, 03 Oct 2017 14:12:51 GMT):
Hello all, I'm trying to make a get call to a deterministic api, could anyone tell me if this is possible and if so how I can do it? So far in the docs I've only found how to post (https://hyperledger.github.io/composer/integrating/call-out.html)
adrianblakey (Tue, 03 Oct 2017 14:58:42 GMT):
@dselman Thanks for your help. I tried: var foo = theFactory.newResource(NS, 'Foo', '1'); var val = foo.getClassDeclaration().getDecorator('description').getArguments()[1];
console.log('Foo decorator: ' + val); Error: val undefined. Any other suggestions?
adrianblakey (Tue, 03 Oct 2017 15:01:07 GMT):
@dselman As for the question about calling an XA from an XA - not so sure it's a real use case - but the code is: GetAll instances of an asset, call GetById for each specific instance. I can obviously do the call down into getId from the getAll - but ...
kletkeman (Tue, 03 Oct 2017 15:10:22 GMT):
@rthatcher Thanks, I've tried the clear local storage thing. And the login screens have all gone off it seems ... meaning that even the Bluemix resident playground is giving errors now ... this one for example: Error: Required metadata field not found: userName
rthatcher (Tue, 03 Oct 2017 15:11:22 GMT):
@kletkeman I had that problem this morning and hitting the URL with /login at the end worked for me
rthatcher (Tue, 03 Oct 2017 15:11:22 GMT):
@kletkeman I had that problem this morning and hitting the URL address with just /login at the end worked for me
kletkeman (Tue, 03 Oct 2017 15:17:01 GMT):
@rthatcher That's what I have been doing for 24 hours. I think Chrome is part of the problem (and changing name to Username is the other part :-() so I tried Safari on the Bluemix resident one and it worked great.
kletkeman (Tue, 03 Oct 2017 15:18:01 GMT):
And Safari throws "Error: Required metadata field not found: name"
kletkeman (Tue, 03 Oct 2017 15:18:28 GMT):
So moving back to 12.2 has caused credential confusion ...
kletkeman (Tue, 03 Oct 2017 15:18:53 GMT):
In my experience, gratuitous changes always bite back
rthatcher (Tue, 03 Oct 2017 15:19:31 GMT):
@kletkeman (Sorry if I have been repeating advice - but our working days are not aligned)
My testing has not been going back versions - but going forward, so maybe different results to you - I guess I would try Private windows in the browser too (or clear history)
kletkeman (Tue, 03 Oct 2017 15:19:37 GMT):
Strangely, I have a fabric on 12.2 that has always worked and still does ... that I don't understand
kletkeman (Tue, 03 Oct 2017 15:20:26 GMT):
private window .... that's a good idea, will give it a shot ... and yes, once you run 13.1 in a browser, you seem to ruin it for 12.2 ... the tab that was never dismissed is the only 12.2 that works at all ...
ajp (Tue, 03 Oct 2017 15:50:35 GMT):
@eacoeytaux I'm running into the same issue, is there no solution to this?
kletkeman (Tue, 03 Oct 2017 15:53:51 GMT):
I think it comes down to the rename of "name" to "userName" ... I am in the ludicrous situation of having two Chrome tabs complaining: a 12.2 composer on kubernetes complaining about one variant "Error: Required metadata field not found: name" and a 13.1 composer on bluemix complaining about the other "Error: Required metadata field not found: userName".
But I do have bluemix playground working on Safari, so it can work, but trying to use them together is destroying my day (the last 24 hours, actually). So what is one to do?
VaibhavShah (Tue, 03 Oct 2017 16:13:56 GMT):
Has joined the channel.
pradeeppadmarajaiah (Tue, 03 Oct 2017 16:22:40 GMT):
Hi Composer Experts,
I am building the application using Composer from three months.
Some questions come to mind , when I am developing the application.
1) Is Composer provide all the fabric features in future to develop end to end application. I don't need to write smart contract at all in future ???
2) How transactions from composer are created to block and committed to the fabric. Could please provide the document if available ??
3) How performance is calculated. Is it based on the number of participants or request ??.Is there any AI or ML mechanism notification which says that your performance is getting reduced due to increase in Data, participant or request ??.
Is there any tool, to calculate a different number of peers (endorsing, committing, ordered) real time, based on the request.
I am not able to find the documentation related to this part.I feel this is main part to consider, during the production deployment.
4) How to save image files in composer ??
5) How to retrieve blocks via composer ??
If some of the above questions are invalid, Please ignore.
mahoney1 (Tue, 03 Oct 2017 16:23:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tG9692chSoQk7y6Ks) @eacoeytaux from Transaction Process functions, you can't do GETs yet, only POSTs (experimental feature presently) - we have an issue open for GETs -> https://github.com/hyperledger/composer/issues/1843
eacoeytaux (Tue, 03 Oct 2017 16:24:09 GMT):
@mahoney1 okay thanks good to know. Does it being experimental mean that the feature might eventually be removed though?
mahoney1 (Tue, 03 Oct 2017 16:37:38 GMT):
@pradeeppadmarajaiah 1. Composer is a dev framework and toolset - that uses Fabric as the underlying blockchain. You still need 'smart contract' transaction logic (which you can use Composer to do) for any business/transaction logic you need implementing ! 2. See here -> https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture Blocks are created on Fabric in the same way as before Q3. and 4 you can ask on #fabric channel 5. Again, you decide what you want to save on the fabric - would you really want to store a large image file on a blockchain ? You decide - as opposed to create a hash and link to a URL. If you wanted to you could use String and base64 encode it as a field in an Asset for example and have responsibility for decoding later etc etc. - 6. You retrieve blocks in Fabric (not Composer) so use a Fabric path eg.. -> https://www.npmjs.com/package/fabric-rest . Its a loopback application that provides a REST API on top of fabric-sdk-node using a loopback connector for hyperledger fabric.
mahoney1 (Tue, 03 Oct 2017 16:44:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EHyKRPTEua2pouCya) @eacoeytaux the status at https://hyperledger.github.io/composer/integrating/call-out.html means exactly what it says on the tin :-) so I can't definitively say it wouldn't be removed ..
pradeeppadmarajaiah (Tue, 03 Oct 2017 16:47:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yTTNAyb7K2EdjDuXC) @mahoney1 Still not clear. Last question , Can i build end to end production application using current Composer release which caters all the underlying fabric 1.0 features ??
kletkeman (Tue, 03 Oct 2017 16:47:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SwuKKbZf3mBkmDDuZ) @pradeeppadmarajaiah
I am building the application using Composer from three months.
Some questions come to mind , when I am developing the application.
1) Is Composer provide all the fabric features in future to develop end to end application. I don't need to write smart contract at all in future ???
*Composer hosts business networks, which are effectively smart contracts.*
2) How transactions from composer are created to block and committed to the fabric. Could please provide the document if available ??
*The composer run-time is a chaincode written in Go to my knowledge. It interprets the transactions you submit and applies them as the usual reads and writes to their "registries", which are name spaced groups of keys. Once the reads and writes and completed, and if your transaction does not abort, the read/write sets follow the normal path from there (endorsement, ordering, commit).*
3) How performance is calculated. Is it based on the number of participants or request ??.Is there any AI or ML mechanism notification which says that your performance is getting reduced due to increase in Data, participant or request ??.
Is there any tool, to calculate a different number of peers (endorsing, committing, ordered) real time, based on the request.
*It's way too early to expect that kind of network and application support from Fabric or from Composer.*
I am not able to find the documentation related to this part.I feel this is main part to consider, during the production deployment.
*Yes, it is. There are some numbers floating around w.r.t. sizing and performance, but I think thiss area is still developing and you will just have to do your best for now with limited information.*
4) How to save image files in composer ??
*If you mean "how to store image files into world state" then you would do that by applying as much compression as you can and then ASCIIfying them (e.g. base64). For large images, you would off course store them off chain and save a link and a hash in the chain, but then you have a lot of coordination and distribution of the image store to think about. No free lunch.*
5) How to retrieve blocks via composer ??
*We are using the Node SDK for working directly with blocks. You application can use both the Composer and the Node SDKs simultaneously I think. Composer is very much transaction oriented and I doubt that we should expect them to completely replace all the SDKs.*
pradeeppadmarajaiah (Tue, 03 Oct 2017 16:52:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YEh2AWtLFpFh9kkxA) @kletkeman Thanks a lot . I have got fair idea now. Can you please provide the link , to go through sizing and performance. This will be a great help to start with.
My main agenda, is to become a core composer full stack developer. Wanted to make all the things clear from the basics.
kletkeman (Tue, 03 Oct 2017 16:55:53 GMT):
@pradeeppadmarajaiah I know of no such link, sorry.
pradeeppadmarajaiah (Tue, 03 Oct 2017 16:57:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YEh2AWtLFpFh9kkxA) @kletkeman Appreciate your time for responding back to my queries. I will try to find .Thanks a lot
mahoney1 (Tue, 03 Oct 2017 17:03:41 GMT):
@pradeeppadmarajaiah Yes, Composer is aimed at production level applications - ultimately, you'll be deploying production networks and transaction logic written in javascript that will execute on the blockchain network you configure. Currently, we directly execute the JavaScript using a JavaScript virtual machine called Duktape - it has Go bindings, so we have a small layer between Go and JavaScript. A member of the Composer Dev team is working with the Fabric dev team to deliver native Node.js chaincode support into Fabric too. But there's no reason you can't develop your applications now to deploy to GA version of Hyperledger Composer and the supported runtime Fabric.
pradeeppadmarajaiah (Tue, 03 Oct 2017 17:06:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uSF7SFKFkTXhoo8pi) @mahoney1 Thanks a lot for your inputs. I am able to achieve all the features. Only features is authentication, I am trying to find samples on how it is achieved. Its like a login to the application, that has to be validated by the ID cards/Wallets user and password. I can see some overview documentation in the composer, But not extensively
mahoney1 (Tue, 03 Oct 2017 17:11:45 GMT):
fyi @here - the Community call tomorrow (Weds) will be at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> URL best regards Paul
mahoney1 (Tue, 03 Oct 2017 17:11:45 GMT):
fyi @here - the Community call tomorrow (Weds) will be at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-4th-October-2017 best regards Paul
pradeeppadmarajaiah (Tue, 03 Oct 2017 17:15:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RRRANKH3eqgrfWKCG) @mahoney1 I will try to make it tommo call. Will share my stories as well.
mahoney1 (Tue, 03 Oct 2017 17:16:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=46mfeBaWYRW4iire4) @pradeeppadmarajaiah great, thank you.
mahoney1 (Tue, 03 Oct 2017 17:17:29 GMT):
@pradeeppadmarajaiah will probably add an OAuth2 authentication example to the docs in due course.
pradeeppadmarajaiah (Tue, 03 Oct 2017 17:25:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=w83qg7hKvuzBKAnJi) @mahoney1 That should help. Missing part in current documentation (Please include this point, if I miss the Tommo's call).
1) Need end to end documentation for implementing ID cards and wallets
2) There is separate menu which says integration using Node-RED. Please explain in-detail in composer document itself
3) Will composer provide any monitoring performance tool, to know the underlying transaction data measurement
4) A detailed unit test case document is missing.
5) Some documentation related to the mapping of the composer to fabric components. This will help us to get a complete clarity.
6) Please provide the structured information of generated skeleton angular application and how to customize. This will random make, all developers to use skeleton project practically.
mrosack (Tue, 03 Oct 2017 18:16:53 GMT):
Has joined the channel.
mrosack (Tue, 03 Oct 2017 19:34:31 GMT):
Hey all - i'm working on a project using fabric/composer, where the plan is to have one public channel that all participants belong to and then multiple restricted channels that only certain parties have access to. Are there any best practices for setting up a composer dev environment with multiple channels? Also, I know fabric doesn't support cross-channel transactions yet, but is there any guidance out there as to thoughts about how it's going to be implemented to help with making design decisions? Thanks!
glotov (Tue, 03 Oct 2017 21:00:11 GMT):
Hi! I am installing my network: ```$ composer runtime install -n educhain-network -p mainorg -i MainPeerAdmin -s randomString
✖ Installing runtime for business network educhain-network. This may take a minute...
Error: Error trying install composer runtime. Error: Connect Failed
Command failed
glotov (Tue, 03 Oct 2017 21:00:11 GMT):
Hi! I am installing my network:
glotov (Tue, 03 Oct 2017 21:00:11 GMT):
Hi! I am installing my network:
```
$ composer runtime install -n my-network -p my-org -i MyPeerAdmin -s myPassString
✖ Installing runtime for business network my-network. This may take a minute...
Error: Error trying install composer runtime. Error: Connect Failed
Command failed
```
Connect to what failed? Is there a way to know it?
glotov (Tue, 03 Oct 2017 21:00:11 GMT):
Hi! I am installing my network:
```$ composer runtime install -n my-network -p my-org -i MyPeerAdmin -s myPassString
✖ Installing runtime for business network my-network. This may take a minute...
Error: Error trying install composer runtime. Error: Connect Failed
Command failed```
Connect to what failed? Is there a way to know it?
glotov (Tue, 03 Oct 2017 21:00:11 GMT):
Hi! I am installing my network using composer v0.13.1:
```$ composer runtime install -n my-network -p my-org -i MyPeerAdmin -s myPassString
✖ Installing runtime for business network my-network. This may take a minute...
Error: Error trying install composer runtime. Error: Connect Failed
Command failed```
Connect to what failed? Is there a way to know it?
glotov (Tue, 03 Oct 2017 21:05:30 GMT):
Ironically, the `composer-logs` directory is empty: ```$ ls -a composer-logs/
. ..
```, although it is created every time if I delete it. Where are the logs?
Raje (Tue, 03 Oct 2017 22:22:50 GMT):
@glotov : you can debug using "DEBUG=composer:*" command
joebynoe (Tue, 03 Oct 2017 22:29:15 GMT):
Has joined the channel.
theathibm (Tue, 03 Oct 2017 22:29:42 GMT):
networks
Raje (Tue, 03 Oct 2017 22:32:22 GMT):
I am trying to bind an identity using following command but I am not able to see that participant in ping command. '$ composer identity bind -p Bank1-hlfv1 -n 'my-network' -i PeerAdmin -s randonString -c ./peerOrganizations/bank1.example.com/users/Admin@bank1.example.com/msp/keystore/269c67da03055b599812b251919cc5a89a3ff24e6e1ab0d59e_sk -a "resource:org.acme.model.Bank#1"
An identity was bound to the participant 'resource:org.acme.model.Bank#1'
The participant can now connect to the business network using the identity
Command succeeded
$ composer network ping -p Bank1-hlfv1 -n 'my-network' -i PeerAdmin -s randomString
The connection to the network was successfully tested: my-network
version: 0.12.1
participant:
theathibm (Tue, 03 Oct 2017 22:32:51 GMT):
Anyone have tips/tricks regarding multiple channels and Composer? Can one bna network be used on multiple channels?
theathibm (Tue, 03 Oct 2017 22:33:33 GMT):
Do you need one distinct BNA per channel?
Raje (Tue, 03 Oct 2017 22:33:48 GMT):
@theathibm : yes, one network bna can be used on multiple channels.
theathibm (Tue, 03 Oct 2017 22:35:07 GMT):
any guidance?
theathibm (Tue, 03 Oct 2017 22:35:07 GMT):
@Raje any guidance?
theathibm (Tue, 03 Oct 2017 22:35:07 GMT):
@Raje any guidance? actually, we deploy the same bna onto each channel already. But running into problems issuing identities and creating participants
theathibm (Tue, 03 Oct 2017 22:40:12 GMT):
using wallets, participants, identities, via composer-rest-server (one composer-rest-server per channel)
theathibm (Tue, 03 Oct 2017 22:40:51 GMT):
there seems to be a problem issuing Identities onto each composer-rest-server.
Raje (Tue, 03 Oct 2017 23:08:48 GMT):
bna will be installed using composer runtime install command. https://hyperledger.github.io/composer/reference/composer.runtime.install.html
glotov (Tue, 03 Oct 2017 23:18:50 GMT):
guys, have you seen 'Segmentation fault` during compose install? ```$ composer runtime install -n my-network -p my-org -i MyPeerAdmin -s myPassString
⠴ Installing runtime for business network educhain-network. This may take a minute...Segmentation fault (core dumped)```
glotov (Tue, 03 Oct 2017 23:18:50 GMT):
guys, have you seen 'Segmentation fault` during compose install? ```$ composer runtime install -n my-network -p my-org -i MyPeerAdmin -s myPassString
⠴ Installing runtime for business network my-network. This may take a minute...Segmentation fault (core dumped)```
glotov (Tue, 03 Oct 2017 23:22:36 GMT):
composer 0.12.2 and 0.13.1, node 6.11.2 and 6.9.5, ubuntu Ubuntu 17.04, upgraded all packages, rebooted, ...
glotov (Tue, 03 Oct 2017 23:22:36 GMT):
Constantly happens on composer (0.12.2 and 0.13.1), node (6.11.2 and 6.9.5), ubuntu Ubuntu 17.04, upgraded all packages, rebooted, ...
ykcai (Tue, 03 Oct 2017 23:32:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CjMLP329Mxu45g4Da) @mahoney1 I see what you are saying but all this is through a transaction processor function. I am creating my participant through the generate API endpoint for that participant (with composer-rest-server). I want HistorianRecord to capture that data/or emit my own data when that endpoint is hit. Is there a way to do this without having to make a JS function? Or are events only limited to those TP functions?
ykcai (Tue, 03 Oct 2017 23:34:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DudqsrJxzbvPBoH3F) @glotov I have gotten after upgrading. I used `composer-rest-server (v0.13.1)` but tried to install a BNA that was created by `composer (v0.12.1)` but im not sure if this applies to you as you are just doing runtime install..
ykcai (Tue, 03 Oct 2017 23:34:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DudqsrJxzbvPBoH3F) @glotov I have gotten this after upgrading to the new version of `composer-cli`. I used `composer-rest-server (v0.13.1)` but tried to install a BNA that was created by `composer (v0.12.1)` but im not sure if this applies to you as you are just doing runtime install..
ykcai (Tue, 03 Oct 2017 23:34:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DudqsrJxzbvPBoH3F) @glotov I have gotten this after upgrading to the new version of `composer-cli`. I tried to use `composer-rest-server (v0.13.1)` but tried to install a BNA that was created by `composer (v0.12.1)` but im not sure if this applies to you as you are just doing runtime install..
ykcai (Tue, 03 Oct 2017 23:34:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DudqsrJxzbvPBoH3F) @glotov I have gotten this after upgrading to the new version of `composer-cli`. I tried to use `composer-rest-server (v0.13.1)` to install a BNA that was created by `composer (v0.12.1)` but im not sure if this applies to you as you are just doing runtime install..
glotov (Tue, 03 Oct 2017 23:46:26 GMT):
Thank you, @ykcai, I just rebuilt my .bna (npm i) and removed and recreated ~/.composer-credentials/, but still the same segfault... Is there anything else that I forgot to update?
ykcai (Wed, 04 Oct 2017 00:44:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZDZb2PWhpCHX5wcAB) @glotov Have you tried using composer network to deploy locally?
```
composer archive create -a {directory of BNA}/{BNA name}.bna --sourceType dir --sourceName .
composer network deploy -a {directory of BNA}/{BNA name}.bna -p hlfv1 -i PeerAdmin -s randomString
composer network ping -n {network name} -p hlfv1 -i admin -s adminpw
```
This is what i used to create and deploy my BNA
ykcai (Wed, 04 Oct 2017 00:44:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZDZb2PWhpCHX5wcAB) @glotov Have you tried using composer network to deploy locally?
```composer archive create -a {directory of BNA}/{BNA name}.bna --sourceType dir --sourceName .
composer network deploy -a {directory of BNA}/{BNA name}.bna -p hlfv1 -i PeerAdmin -s randomString
composer network ping -n {network name} -p hlfv1 -i admin -s adminpw
```
This is what i used to create and deploy my BNA
mahoney1 (Wed, 04 Oct 2017 07:09:07 GMT):
fyi @here - the Community call today is at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> URL best regards Paul
nippleDonkey (Wed, 04 Oct 2017 07:59:28 GMT):
Morning all, I'm following this example:
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
But i keep getting 404 on the callback. I can see the URL change to:
http://127.0.0.1:3000/auth/github/callback?code=xxxxxxxxxxx
But that page doesn't exist. Any ideas as to why?
erNail (Wed, 04 Oct 2017 08:42:15 GMT):
Hi, i was wondering: Will i be able to see transactions, performed through REST-API, in my local playground installation ?
nippleDonkey (Wed, 04 Oct 2017 08:48:01 GMT):
hey @erNail are you talking about blockchain transactions? If you are using the composer API you could always use /api/system/historian to see transactions
erNail (Wed, 04 Oct 2017 08:57:53 GMT):
@nippleDonkey Yes, i'm talking about blockchain transactions., Yeah, i read about the historian, but i was wondering if playground also uses the historian to display successfull transactions. That way i would already have a nice UI to inspect transactions.
zasamen (Wed, 04 Oct 2017 09:52:04 GMT):
Hi. Could anybody help me with auth in angular with github? I'm trying to do it, but when browser gets redirect (302) angular do not recognize it?
erNail (Wed, 04 Oct 2017 10:10:06 GMT):
Hi, i have a question about the playground. If i create an asset on my fabric instance through REST-API, will i be able to see it in my local playground installation ?
erNail (Wed, 04 Oct 2017 10:34:19 GMT):
Also, is it possible to use one identity on different nodes at the same time ? Can one company with one identity set up multiple nodes that interact with assets ?
mahoney1 (Wed, 04 Oct 2017 11:35:16 GMT):
@ykcai correct events are limited to transaction JavaScript in the transaction processor functions file.https://hyperledger.github.io/composer/business-network/publishing-events.html Node.js applications can then subscribe to events from the business network by using the composer-client.BusinessNetworkConnection.on API call
mahoney1 (Wed, 04 Oct 2017 11:37:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aot7uTWPZSX2Y53yN) @erNail - yes you should - Historian in Playground shows all the transactions (as defined in your model and exposed via REST)
mahoney1 (Wed, 04 Oct 2017 11:38:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aNaHjAzqmZeuG7kG4) @erNail if you mean via Composer REST APIs (using the fabric instance) then yes, you would see it in Playground when you connect to the business network (through the connection profile) to the running Fabric,
mahoney1 (Wed, 04 Oct 2017 11:38:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aNaHjAzqmZeuG7kG4) @erNail if you mean via Composer REST APIs (using the fabric instance) then yes, you would see it in Playground when you connect to the business network (through the connection profile, as this along with the correct identity credentials is how you connect) deployed to the running Fabric.
mahoney1 (Wed, 04 Oct 2017 11:51:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pz63inLzZJuRawPtD) @erNail Identities can interact with your deployed business network runniing on the blockchain (however many nodes you configure in your Org) to interact with the assets you refer to - you can bind it to a participant then control what access levels he/she has to assets etc.
mahoney1 (Wed, 04 Oct 2017 12:16:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PaWo2eYCTvYfEQkSF) @glotov miniimum 4Gb memory for environment?
JeremyH (Wed, 04 Oct 2017 12:20:43 GMT):
Hi everyone, I'm trying to set up a persistent data store following the instructions on *https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html*. I get as far as starting the docker container (the last step). No REST Server starts, and looking at the docker logs, there is an error `Error: Error trying to ping. Error: Composer runtime (0.12.1) is not compatible with client (0.13.1)`
Has anyone run into this before/ knows the fix? Thanks
zasamen (Wed, 04 Oct 2017 12:31:47 GMT):
@JeremyH, check global composer packages versions
JeremyH (Wed, 04 Oct 2017 12:32:34 GMT):
@zasamen Thanks, I'll check those out
rbochenski (Wed, 04 Oct 2017 12:44:59 GMT):
Has joined the channel.
mahoney1 (Wed, 04 Oct 2017 12:52:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EAAdqGyswtJHwqgqA) @JeremyH corrective to 1) change package.json file and update levels composer package levels to be right levels - current is 0.13.1 and 2) `npm uninstall -g composer-cli` and then `npm install -g composer-cli` and 3) then update your business network to be at the latest level.
mahoney1 (Wed, 04 Oct 2017 12:52:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EAAdqGyswtJHwqgqA) @JeremyH corrective is to 1) change package.json file and update levels composer package levels to be right levels - current is 0.13.1 and 2) `npm uninstall -g composer-cli` and then `npm install -g composer-cli` and 3) then update your business network to be at the latest level.
JennFoley (Wed, 04 Oct 2017 14:35:20 GMT):
Hey! I'm trying to update my lab to Composer at 0.13.1, once I already have a bna in the Composer Playground using a default ID, is there anyway I can connect it to a new ID that talks to HLFV1?
stevehooperjr (Wed, 04 Oct 2017 14:52:06 GMT):
Has joined the channel.
jonathansinclair (Wed, 04 Oct 2017 15:09:36 GMT):
Has joined the channel.
stevehooperjr (Wed, 04 Oct 2017 15:09:48 GMT):
Hello, I'm very new to Composer. I've been using the Playground online and I'm trying to create an asset that I've defined, but I get this error when I try to create it:
`t: Instance org.hyperledger.composer.system.AddAsset#... has property resources with type org.met.employer.Employee that is not derived from org.hyperledger.composer.system.Asset[]`
My employee asset extends an abstract concept from another namespace. Is this not allowed, or do I need to fix something in my Access Control?
stevehooperjr (Wed, 04 Oct 2017 15:09:48 GMT):
Hello, I'm very new to Composer. I've been using the Playground online and I'm trying to create an asset that I've defined, but I get this error when I try to create it:
`t: Instance org.hyperledger.composer.system.AddAsset#... has property resources with type org.met.employer.Employee that is not derived from org.hyperledger.composer.system.Asset[]`
My employee asset extends an abstract concept from another namespace. Is this not allowed, or do I need to fix something in my Access Control? Currently I'm allowing all participants to do everything with org.met.employer.* and org.met.abstracts.* with two "default" rules (taken from the Playground tutorial).
dselman (Wed, 04 Oct 2017 15:22:57 GMT):
Assets cannot extend Concepts -- they should only extend Assets.
dselman (Wed, 04 Oct 2017 15:23:34 GMT):
Please create an issue for this (attach your model files that reproduce), as it should have been detected and reported as an issue.
stevehooperjr (Wed, 04 Oct 2017 15:34:13 GMT):
Thank you. I will do that.
The reason that I wanted to extend a concept was that I have two assets that share many properties but have different identifiers. I thought a concept would be appropriate since it doesn't have an identifier and I could just add one when I made my concrete assets. Is there a better way to achieve the effect I want, or should I just keep my two assets separate?
dselman (Wed, 04 Oct 2017 15:45:15 GMT):
You can create 2 assets that both contain a concept `o MyConcept sharedData`
arsalan 4 (Wed, 04 Oct 2017 15:48:56 GMT):
Hey @sstone1 been trying to find your contact information, IBM email, etc. Wanted to reach out to you regarding my firm's desire to get involved with more heavy contributions on composer. Our team wanted to understand what some of the major priorities around the project are right now, I've gone through the GitHub issues, which there are quite a lot of. But would love to get clarity on what the priorities/roadmap is!
arsalan 4 (Wed, 04 Oct 2017 15:49:58 GMT):
This question is open to anyone else involved in fabric-composer's development, is there any vision on what the priorities are for the project for the next year onward, etc. ? OR just slowly fixing bugs one release at a time? We're looking to focus a few teams on contributing part time :)
dselman (Wed, 04 Oct 2017 15:54:02 GMT):
@arsalan 4 this sort of thing is best asked on the #composer-dev channel
mahoney1 (Wed, 04 Oct 2017 15:54:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=K8AuMS9MBpBkNeQrk) @JennFoley so you've not tried to issue a new ID and connect with that ? (you connect the ID to the business network)
arsalan 4 (Wed, 04 Oct 2017 15:55:58 GMT):
Thanks @dselman ill revert
mrosack (Wed, 04 Oct 2017 15:56:50 GMT):
i hope i'm missing something obvious - how do i create the composer credentials in this format (https://github.com/hyperledger/composer-tools/tree/master/packages/fabric-dev-servers/fabric-scripts/hlfv1/composer/creds) after i've run cryptogen to generate new keys?
mrosack (Wed, 04 Oct 2017 17:19:02 GMT):
i was able to do it by manually piecing things together, there's no utility i'm missing, right?
SiddarthaPadhi (Wed, 04 Oct 2017 18:17:57 GMT):
Hi, I needed some help in designing an auction system with block chains as the base. If anyone has experience designing such systems, please let me know. I would like to get some questions answered.
GOWDHAMAN (Wed, 04 Oct 2017 19:04:20 GMT):
Hi, I'm trying to deploy the BNA file in BlockChain service in Bluemix. I'm getting this error "Error: Error trying install composer runtime. Error: Failed to deserialize creator identity, err ParseCertificate failed asn1: structure error: tags don't match (2 vs {class:0 tag:6 length:7 isCompound:false}) {optional:false explicit:false application:false defaultValue:
Hefziben (Wed, 04 Oct 2017 19:08:26 GMT):
Hello team, I am developing the angular app for the business network, is the any way to add participant to certain identity like clients through the app as they register? such, as when you register for githup or any other app? instructions will be helpful. I saw the vehicle network app, but that app has test identity by default.
theathibm (Wed, 04 Oct 2017 19:30:02 GMT):
Has anyone used multiple channels in a composer solution? I'm using composer to create a business network with two channels having deployed the ".bna" on each channel. Then I'm using a composer-rest-server on each channel (i.e. two composer-rest-server's). I experience a problem when creating Participants and then Issuing Identities on each channel.
theathibm (Wed, 04 Oct 2017 19:30:02 GMT):
Has anyone used multiple channels in a composer solution? I'm using composer to create a business network with two channels having deployed the ".bna" on each channel. Then I'm using a composer-rest-server on each channel (i.e. two composer-rest-server's). I experience a problem when creating Participants and then Issuing Identities on each channel. NOTE: Starting each composer-rest-server with security turned on. Trying to create a participant into each channel and then issuing and identity
theathibm (Wed, 04 Oct 2017 19:30:02 GMT):
Has anyone used multiple channels in a composer solution? I'm using composer to create a business network with two channels having deployed the ".bna" on each channel. Then I'm using a composer-rest-server on each channel (i.e. two composer-rest-server's). I experience a problem when creating Participants and then Issuing Identities on each channel. NOTE: Starting each composer-rest-server with security turned on. Trying to create a participant into each channel and then issuing and identity. Any thoughts @sstone1 ?
theathibm (Wed, 04 Oct 2017 19:39:29 GMT):
Creating the Participants is working fine, issuing identities complains on the second channel saying the identity already exists. The end result is that the second channel is unusable by any participant.
theathibm (Wed, 04 Oct 2017 19:39:29 GMT):
@sstone1 Creating the Participants is working fine, issuing identities complains on the second channel saying the identity already exists. The end result is that the second channel is unusable by any participant.
Raje (Wed, 04 Oct 2017 20:36:39 GMT):
I have created two channels with one peer in common. In connection.json should I give => "channel": "mychannel1, mychannel2" ?
cryptozee (Wed, 04 Oct 2017 20:47:30 GMT):
Has joined the channel.
glotov (Wed, 04 Oct 2017 21:26:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aqKjdLSZEr2hqLCZ7) @ykcai, just tried: the same-looking segfault during 'composer network deploy'.
[ ](https://chat.hyperledger.org/channel/composer?msg=qJHkmDFpCmWFBFuCv) @mahoney1 Interesting. My host has total 4G RAM, will try to play with it...
erNail (Thu, 05 Oct 2017 07:26:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qL7zbsmKfrM3ka3yn) @Raje It seems like you can't use one single json for 2 channels. See here: https://stackoverflow.com/questions/44525752/how-to-configure-multiple-channel-in-fabric-1-0-using-hyperledger-composer
xuzhao103389 (Thu, 05 Oct 2017 09:29:26 GMT):
Hi , I have deployed a blockchain network onto bluemix, I am following the link : https://ibm-blockchain.github.io/interacting/
xuzhao103389 (Thu, 05 Oct 2017 09:29:50 GMT):
but I hit a problem , that the composer reset server is started , but I cant access
xuzhao103389 (Thu, 05 Oct 2017 09:33:47 GMT):
as of mentioned in this link,
1 deployed blockchain network, and then start a pod for composer rest server,
2. deploy an example from composer play ground, ./create/create_composer-rest-server.sh --business-network-id INSERT_BIZNET_NAME
3.then http://YOUR_PUBLIC_IP_HERE:31090/explorer/
xuzhao103389 (Thu, 05 Oct 2017 09:33:58 GMT):
31090 port is not working
zupan (Thu, 05 Oct 2017 10:30:40 GMT):
Is anyone else getting this error when starting local composer deployment `Error: Required metadata field not found: userName`. All packages are of version 0.13.1
zupan (Thu, 05 Oct 2017 10:30:40 GMT):
Is anyone else getting this error when starting local composer deployment `Error: Required metadata field not found: userName`? All packages are of version 0.13.1
zupan (Thu, 05 Oct 2017 10:30:40 GMT):
Is anyone else getting this error in the Playground when starting local composer deployment `Error: Required metadata field not found: userName`? All packages are of version 0.13.1
rospatro (Thu, 05 Oct 2017 10:32:39 GMT):
Has joined the channel.
rospatro (Thu, 05 Oct 2017 10:34:19 GMT):
Hi, From Hyperledger composer is there any way to listen the events that is created from composer? If yes how?
mrosack (Thu, 05 Oct 2017 11:04:01 GMT):
Hey again - I'm trying to set up my own composer network with a custom connection profile and crypto keys - I'm able to deploy the business network, using my PeerAdmin identity just like things
work with the fabric-dev-servers and standard tutorial. However, past that I'm lost - *where does the "admin" identity come from in the tutorial?* I can ping my network with `composer network ping -p mychannel -n btf-sourcing-network -i PeerAdmin -s randomString`, but not `composer network ping -p mychannel -n btf-sourcing-network -i admin -s adminPw`. I can add participants using the PeerAdmin identity, but when I try to issue identities using PeerAdmin I get `Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]`. Thanks!
mrosack (Thu, 05 Oct 2017 11:04:01 GMT):
Hey again - I'm trying to set up my own composer network with a custom connection profile and crypto keys - I'm able to deploy the business network, using my PeerAdmin identity just like things
work with the fabric-dev-servers and standard tutorial. However, past that I'm lost - *where does the "admin" identity come from in the tutorial?* I can ping my network with `composer network ping -p mychannel -n my-network -i PeerAdmin -s randomString`, but not `composer network ping -p mychannel -n my-network -i admin -s adminPw`. I can add participants using the PeerAdmin identity, but when I try to issue identities using PeerAdmin I get `Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]`. Thanks!
mahoney1 (Thu, 05 Oct 2017 11:18:35 GMT):
@mrosack the identity 'admin' comes from the Fabric CA Server and is basically the bootstrap admin id for the CA server. ie it is the only id to begin with - and it can issue new identities. That's why it exists in the Dev server environment., 'admin' has no admin authority for the runtime fabric and as such is not able to perform any admin activities on the running network such as - install chaincode or instantiate chaincode (deploy networks) .So you can issue identities with it, . PeerAdmin is something our development tools server setups up for you - to get you going - so that you can deploy but it's name is irrelevant, it is purely an alias for correctly imported crypto material that has admin authority not only on the peer but the channel as well - and has the ability to deploy the business network. .So you can use the ping command with that.
mahoney1 (Thu, 05 Oct 2017 11:21:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gR98L8CHeac9nomrX) @rospatro See the docs https://hyperledger.github.io/composer/applications/subscribing-to-events.html use the APIs. Its then up to the application to choose to what extent those events are integrated. Could use node-red to test/prototype https://hyperledger.github.io/composer/integrating/node-red.html
mahoney1 (Thu, 05 Oct 2017 11:27:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=L2jkmsJNbHM23xcmb) @zupan need to clear local storage in the web browser by using the developer console and running `localStorage.clear()` or something there's an icon top left of that pane (depending on browser). Then try playground again
mrosack (Thu, 05 Oct 2017 11:31:01 GMT):
Thanks @mahoney1, but I think I'm still missing something obvious - where do the admin credentials reside, or how do they get created? When I'm running through the tutorial, the credentials for admin don't exist in .composer-credentials until after I execute a command for admin, and I can't find the keys for admin anywhere in the crypto-config. Is there a command in composer I need to run to generate the admin user in my custom network?
mahoney1 (Thu, 05 Oct 2017 11:31:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qL7zbsmKfrM3ka3yn) @Raje its one channel, per connection profile..
czar0 (Thu, 05 Oct 2017 11:40:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AxbEpfXLz5kbfLuwf) @mahoney1 `An identity was imported with name 'admin' successfully` (with `admin` and `adminpw` and passing the right `Admin@org1.example.com-cert.pem` certificate).
With this user I am able to deploy a bna, but I am not able to issue identities. I am receiving the same error as @mrosack .
mna2016 (Thu, 05 Oct 2017 11:43:29 GMT):
Hi Team,
mna2016 (Thu, 05 Oct 2017 11:43:30 GMT):
Message Attachments
mna2016 (Thu, 05 Oct 2017 11:44:05 GMT):
I am getting this error quite often when I try to ping the business network deployed. Is there a permanent fix to this?
cweiers (Thu, 05 Oct 2017 11:48:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qQf5kqHYHQSwKAnLL) @mna2016 There is. You will have to update your composer runtime. The error is also mentioned in this post : https://stackoverflow.com/questions/45565506/hyperledger-composer-incompatible-versions-error-and-the-versions-are-the-same
cweiers (Thu, 05 Oct 2017 11:50:44 GMT):
please beware that if your current client is 0.13.0, you will have the same problem the other way around, as re-installing the newest runtime will give you 0.13.1. So you will have to do a new npm install of your project too
cweiers (Thu, 05 Oct 2017 11:50:59 GMT):
and you will also have to build the bna file new too
mahoney1 (Thu, 05 Oct 2017 11:52:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WqycMDL7jFEbNsWoz) @mrosack on the peer / orderer - see explanation on Fabric docs -> http://hyperledger-fabric.readthedocs.io/en/latest/msp.html . The dev server setup used cryptogen to create them in the first place. Example of the file structure that the dev server Fabric set up uses is here -> https://github.com/hyperledger/composer-tools/tree/master/packages/fabric-dev-servers/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp
mahoney1 (Thu, 05 Oct 2017 11:52:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WqycMDL7jFEbNsWoz) @mrosack on the peer / orderer - see explanation on Fabric docs -> http://hyperledger-fabric.readthedocs.io/en/latest/msp.html . The dev server setup used cryptogen to create them in the first place. Example of the file structure that the dev server Fabric set up uses is here -> https://github.com/hyperledger/composer-tools/tree/master/packages/fabric-dev-servers/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp
mna2016 (Thu, 05 Oct 2017 11:53:49 GMT):
@cweiers right! The problem got solved when I redid the "npm install" in the project root. but "ping" was solved by re-installing different packages at different times. What is the complete list of packages to install to get rid of "version mistmach". Let me list a few 1) npm install -g composer-cli 2) npm install -g composer 2) npm install -g composer-rest-server
mrosack (Thu, 05 Oct 2017 11:53:50 GMT):
I think I see what I'm missing, @mahoney1 - these commented out lines in the docker compose.yaml are what i'm assuming is the default "admin" identity: ``` environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca.org1.example.com
# - FABRIC_CA_SERVER_CA_CERTFILE=/etc/hyperledger/fabric-ca-server-config/org1.example.com-cert.pem
# - FABRIC_CA_SERVER_CA_KEYFILE=/etc/hyperledger/fabric-ca-server-config/a22daf356b2aab5792ea53e35f66fccef1d7f1aa2b3a2b92dbfbf96a448ea26a_sk```
mrosack (Thu, 05 Oct 2017 11:54:04 GMT):
i've just got to get that set up
zupan (Thu, 05 Oct 2017 11:59:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4jsHdriwufm9bsvMa) @mahoney1 Thank you, that worked.
mahoney1 (Thu, 05 Oct 2017 12:04:48 GMT):
@mrosack Yep. an admin user's identities and crypto material must be available to the peer before any network deploys etc. and can be imported using composer identity import
cweiers (Thu, 05 Oct 2017 12:14:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yJnqFzxaSHYig3osx) @mna2016 If i remember it right I also had to reset my docker-based fabric network (and kill of the chaincode container before re-deploying), although I'm not sure if an "composer update" would suffice.
t_stephens67 (Thu, 05 Oct 2017 12:40:02 GMT):
When will we be able to use version 3 docker compose files with composer? We are needing to deploy our network using swarm.
sstone1 (Thu, 05 Oct 2017 12:42:20 GMT):
@t_stephens67 AFAIK our Docker images can be deployed with any version of Docker, you just need to create the right compose files ;)
t_stephens67 (Thu, 05 Oct 2017 12:47:57 GMT):
@sstone1 when we try deploying our business network we get "Version 3 is not supported please use and older version"
sstone1 (Thu, 05 Oct 2017 12:48:41 GMT):
did you change the docker compose files we provide as samples to reflect the version 3 format?
t_stephens67 (Thu, 05 Oct 2017 12:48:56 GMT):
Let me check I wasnt the one who did it
sstone1 (Thu, 05 Oct 2017 12:49:10 GMT):
all of our compose files are version 2
sstone1 (Thu, 05 Oct 2017 12:49:50 GMT):
but they're just samples, so if you need version 3 ones then you can go change them and adjust them to your needs (add extra peers, etc)
t_stephens67 (Thu, 05 Oct 2017 12:50:49 GMT):
yea we have modified the files a ton almost unrecognizable. I suppose we will convert them to reflect version 3 format. Any documentation for that?
sstone1 (Thu, 05 Oct 2017 12:53:09 GMT):
https://docs.docker.com/compose/overview/
awjh (Thu, 05 Oct 2017 13:11:02 GMT):
Has joined the channel.
mrosack (Thu, 05 Oct 2017 13:47:56 GMT):
I feel like I'm so close, but still missing something - this line in the docker-compose.yml is what allows composer to issue identies with the CA, right? `command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/__CA-SIGNING-KEY__ -b admin:adminpw -d'` I've got a script that substitutes __CA-SIGNING-KEY__ appropriately, but when I call `composer network ping -p mychannel -n 'my-network' -i admin -s adminpw` i get `Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Error: Invalid results returned ::FORBIDDEN`.
nippleDonkey (Thu, 05 Oct 2017 14:18:22 GMT):
@mrosack if you run the ping command again do you get the same message?
nippleDonkey (Thu, 05 Oct 2017 14:18:34 GMT):
or do you get "The supplied identity is not valid, Verify() returned x509: certificate has expired or is not yet valid"
mrosack (Thu, 05 Oct 2017 14:59:31 GMT):
@nippleDonkey - yup, i get that error the second time!
nippleDonkey (Thu, 05 Oct 2017 15:00:58 GMT):
I had / have the same issue. Hopefully this solution works for you. Apparently there is a 5minute time delay on the certs generated. So if you try using a cert before 5 minutes there is a chance it would be invalid. Apparently this is fixed in fabric v1.0.3
nippleDonkey (Thu, 05 Oct 2017 15:01:14 GMT):
You could try setting up your network and waiting 5min
mrosack (Thu, 05 Oct 2017 15:01:32 GMT):
awesome, thanks, i'll give it a shot!
Hefziben (Thu, 05 Oct 2017 15:09:08 GMT):
Hello team, I am developing the angular app for the business network, is the any way to add participant to certain identity like clients through the app as they register? such, as when you register for githup or any other app? instructions will be helpful. I saw the vehicle network app, but that app has test identity by default @sstone1 any thounghts?
Hefziben (Thu, 05 Oct 2017 15:09:08 GMT):
@sstone1 I hadn't take a look at that. I will check and try. do you have any code example I can use for angular?
mrosack (Thu, 05 Oct 2017 15:12:50 GMT):
thanks so much @nippleDonkey, that was it!
sstone1 (Thu, 05 Oct 2017 15:19:43 GMT):
@here we just published Hyperledger Composer v0.13.2 with plenty of goodness and bug fixes 🎉 https://github.com/hyperledger/composer/releases/tag/v0.13.2
sstone1 (Thu, 05 Oct 2017 15:19:54 GMT):
Plus a good reason to read the release notes; the first of the Hyperledger Composer Conga comics by the extremely talented @edmoffat!
sstone1 (Thu, 05 Oct 2017 15:20:15 GMT):
Message Attachments
sstone1 (Thu, 05 Oct 2017 15:21:12 GMT):
@Hefziben have you read the integration guides around setting up authentication and multi-user mode for the Composer REST server?
jljordan_bcgov (Thu, 05 Oct 2017 15:46:59 GMT):
Has left the channel.
d88 (Thu, 05 Oct 2017 16:52:28 GMT):
Has joined the channel.
PeterGirard (Thu, 05 Oct 2017 17:50:39 GMT):
Has joined the channel.
andreasp1994 (Thu, 05 Oct 2017 20:08:11 GMT):
Has joined the channel.
andreasp1994 (Thu, 05 Oct 2017 20:09:06 GMT):
Hey guys! Quick question! What is the difference of the 'o' and the '-->' operator in front of model properties in the composer's model files???
iuriarte (Thu, 05 Oct 2017 20:09:43 GMT):
Has joined the channel.
silliman (Thu, 05 Oct 2017 20:42:50 GMT):
@andreasp1994 'o' is a named property and '-->' is a relationship, that is, a reference see https://hyperledger.github.io/composer/reference/cto_language.html
Raje (Thu, 05 Oct 2017 20:52:15 GMT):
Then installed chaincode on two participants in a channel and started network with network start command successfully. After that I tried to bind identity participant2 to it's connection profile, and participant binded successfully but when I do network ping command with the same connection profile, I am getting "No participants found". Anyone has idea about this?
Raje (Thu, 05 Oct 2017 20:52:15 GMT):
I installed chaincode on two participants in a channel and started network with network start command successfully. After that I tried to bind identity participant2 to it's connection profile, and participant binded successfully but when I do network ping command with the same connection profile, I am getting "No participants found". Anyone has idea about this?
theathibm (Thu, 05 Oct 2017 21:34:52 GMT):
Anybody stumble across an error like this? " Error: Failed to find the default transaction registry"
theathibm (Thu, 05 Oct 2017 21:35:15 GMT):
I'm trying to setup ACL's and finding lots of funny issues
theathibm (Thu, 05 Oct 2017 22:17:51 GMT):
ok, finally, making progress with ACL's
pankaj1308 (Fri, 06 Oct 2017 01:39:15 GMT):
Has joined the channel.
pankaj1308 (Fri, 06 Oct 2017 01:40:59 GMT):
has anyone used console.log in composer-playground? Do I need to do some setup? How can I check log statements..
natchapon.pa (Fri, 06 Oct 2017 04:56:25 GMT):
Hi guys, I'm curious about which protocol does Composer REST Server used to communicate with Hyperledger Fabric?
natchapon.pa (Fri, 06 Oct 2017 04:56:57 GMT):
Is it HTTP or is it gRPC?
sstone1 (Fri, 06 Oct 2017 06:02:15 GMT):
The Composer REST server uses the Fabric Node.js SDK under the covers, so gRPC
sstone1 (Fri, 06 Oct 2017 06:02:23 GMT):
^ @natchapon.pa
sstone1 (Fri, 06 Oct 2017 06:02:45 GMT):
@pankaj1308 they will appear in the developer console in your browser (using the web profile) or the chaincode logs (using Hyperledger Fabric)
mikailcetinkaya (Fri, 06 Oct 2017 06:23:01 GMT):
hi
sstone1 (Fri, 06 Oct 2017 06:27:49 GMT):
hello :wave:
mna2016 (Fri, 06 Oct 2017 06:49:31 GMT):
@sstone1 Is there a code example which uses both nodeSDK and composer-client SDK? My use case wants to read asset data as well as block hash?
sstone1 (Fri, 06 Oct 2017 06:51:37 GMT):
@mna2016 not that i've seen - if you get it working, would be good to see it :)
zasamen (Fri, 06 Oct 2017 07:11:16 GMT):
Hi. Can anybody say me how to login as certain participant at REST server?
sstone1 (Fri, 06 Oct 2017 07:12:46 GMT):
@zasamen please read the documentation around the REST server: https://hyperledger.github.io/composer/integrating/integrating-index.html
sstone1 (Fri, 06 Oct 2017 07:12:59 GMT):
in particular the steps around authentication and multi-user mode
zasamen (Fri, 06 Oct 2017 07:15:51 GMT):
@sstone1 i've read but i found a lot of steps how to enable it, but no one how to login.
sstone1 (Fri, 06 Oct 2017 07:16:35 GMT):
"Enabling authentication for the REST server" tells you how to authenticate
zasamen (Fri, 06 Oct 2017 07:22:10 GMT):
@sstone1 thank you. But i tell you my version just to clarify:
1) User auths via git hub
2) He issues identity for himself
3) all is ready?
sstone1 (Fri, 06 Oct 2017 07:23:43 GMT):
you cannot issue an identity for yourself
sstone1 (Fri, 06 Oct 2017 07:23:52 GMT):
an existing participant has to issue the identity to you
zasamen (Fri, 06 Oct 2017 07:26:21 GMT):
@sstone1 Ok, then how server understands who i am, after i auth via github
zasamen (Fri, 06 Oct 2017 07:26:21 GMT):
@sstone1 Ok, then how does server understand who i am, after i auth via github
sstone1 (Fri, 06 Oct 2017 07:28:11 GMT):
once you authenticate, you have a private wallet on the REST server, associated with that GitHub user ID
sstone1 (Fri, 06 Oct 2017 07:28:23 GMT):
you must then add an identity (enrollment ID and secret) into that private wallet
sstone1 (Fri, 06 Oct 2017 07:28:31 GMT):
only then can you interact with the blockchain
sstone1 (Fri, 06 Oct 2017 07:28:38 GMT):
this is covered in the "multi-user mode" part of the docs
mthieke (Fri, 06 Oct 2017 07:31:46 GMT):
Has joined the channel.
zasamen (Fri, 06 Oct 2017 07:37:38 GMT):
@sstone1 thank you very much. I understood it. But could you add that sentence to documentation [ once you authenticate, you have a private wallet on the REST server, associated with that GitHub user ID](https://chat.hyperledger.org/channel/composer?msg=XyoYhYcLWssQx8bJR)
sstone1 (Fri, 06 Oct 2017 07:38:08 GMT):
>>> Once a client has authenticated to the REST API, that client can add Blockchain identities to a wallet. The wallet is private to that client, and is not accessible to other clients. When a client makes a request to the REST server, a Blockchain identity in the clients wallet is used to digitally sign all transactions made by that client.
sstone1 (Fri, 06 Oct 2017 07:38:08 GMT):
> Once a client has authenticated to the REST API, that client can add Blockchain identities to a wallet. The wallet is private to that client, and is not accessible to other clients. When a client makes a request to the REST server, a Blockchain identity in the clients wallet is used to digitally sign all transactions made by that client.
sstone1 (Fri, 06 Oct 2017 07:38:12 GMT):
which bit isn't clear?
andrew-coleman (Fri, 06 Oct 2017 08:03:28 GMT):
Has joined the channel.
erNail (Fri, 06 Oct 2017 08:31:55 GMT):
When a participant executes a transaction, can you also see the identity ? If the participant has 2 identities (2 idientities issued to one participant), can you differantiate which identity executed a transaction ?
sstone1 (Fri, 06 Oct 2017 08:46:14 GMT):
@erNail not today, we don't have a getCurrentIdentity() call
sstone1 (Fri, 06 Oct 2017 08:46:24 GMT):
we probably should... want to raise a GitHub issue for it?
erNail (Fri, 06 Oct 2017 08:54:06 GMT):
@sstone1 Thanks, good to know. I'll create an issue.
sstone1 (Fri, 06 Oct 2017 09:00:56 GMT):
oh - although - we do record which identity was used in the historian
sstone1 (Fri, 06 Oct 2017 09:01:12 GMT):
do you need to access the identity from within the transaction processor function?
erNail (Fri, 06 Oct 2017 09:21:11 GMT):
@sstone1 What is the transaction processor function ?
I basically just wanted to know if, after a transaction is executed, it is possible to differentiate which identity executed it. Which would work with the historian record.
Maybe it would be useful to add the identity field to the playground transaction view, when you click "view record" ?
ferorus (Fri, 06 Oct 2017 09:49:22 GMT):
Has joined the channel.
sstone1 (Fri, 06 Oct 2017 10:02:45 GMT):
@erNail the transaction processor function is the JavaScript function that runs when a transaction is submitted; if historian view in the playground is all you need, let's get that into the issue instead of `getCurrentIdentity`
erNail (Fri, 06 Oct 2017 10:21:45 GMT):
@sstone1 I've created the issue:
https://github.com/hyperledger/composer/issues/2303
sstone1 (Fri, 06 Oct 2017 10:21:56 GMT):
thanks!
sstone1 (Fri, 06 Oct 2017 10:23:26 GMT):
i've tagged it so our design folk take a look, i know @winslet has a bit of a historian redesign on his TODO list at the moment
erNail (Fri, 06 Oct 2017 10:31:07 GMT):
@sstone1 okay, thanks
uber.twin (Fri, 06 Oct 2017 10:32:27 GMT):
@sstone1 hi, could I please get a hint on what is causing the chaincode execution error listed below
peer dev container log:
```
2017-10-06T09:54:52.237723506Z [36m2017-10-06 09:54:52.237 UTC [Composer] Debug -> DEBU 21c45[0m Exiting DataCollection.update 0
2017-10-06T09:54:52.239336858Z ###Error: [868d73b7]No ledger context for GetState. Sending ERROR
2017-10-06T09:54:52.239349443Z ###Error: [868d73b7]No ledger context for GetState. Sending ERROR
2017-10-06T09:54:52.239354459Z ###Error: [868d73b7]No ledger context for GetState. Sending ERROR
2017-10-06T09:54:52.239437837Z ###Error: [868d73b7]No ledger context for GetState. Sending ERROR
2017-10-06T09:54:52.239448237Z ###Error: [868d73b7]No ledger context for GetState. Sending ERROR
2017-10-06T09:54:52.241951338Z Error: Unhandled promise rejection {}
2017-10-06T09:54:52.241967951Z at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
2017-10-06T09:54:52.241972664Z at error () native strict preventsyield
2017-10-06T09:54:52.241976094Z at [anon] (eval:2) strict
2017-10-06T09:54:52.241979393Z at [anon] (eval:2) strict
2017-10-06T09:54:52.241982707Z at [anon] (eval:2) strict
2017-10-06T09:54:52.241985892Z at [anon] (eval:1)
2017-10-06T09:54:52.241989049Z at [anon] (eval:1)
2017-10-06T09:54:52.241992503Z at [anon] (eval:1) preventsyield
2017-10-06T09:54:52.241995891Z at call () native strict preventsyield
2017-10-06T09:54:52.241999155Z at [anon] (eval:1) preventsyield
```
uber.twin (Fri, 06 Oct 2017 10:32:53 GMT):
@sstone1 peer container log:
```
2017-10-06T09:54:54.359160226Z [36m2017-10-06 09:54:54.359 UTC [couchdb] ReadDoc -> DEBU 1dc74[0m Entering ReadDoc() id=[statedb_savepoint]
2017-10-06T09:54:54.359243451Z [36m2017-10-06 09:54:54.359 UTC [couchdb] handleRequest -> DEBU 1dc75[0m Entering handleRequest() method=GET url=http://couchdb.peer0.myOrg:5984/my-channel/statedb_savepoint?attachments=true
2017-10-06T09:54:54.359355769Z [36m2017-10-06 09:54:54.359 UTC [couchdb] handleRequest -> DEBU 1dc76[0m HTTP Request: GET /my-channel/statedb_savepoint?attachments=true HTTP/1.1 | Host: couchdb.peer0.myOrg:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2017-10-06T09:54:54.361111271Z [36m2017-10-06 09:54:54.360 UTC [couchdb] handleRequest -> DEBU 1dc77[0m Exiting handleRequest()
2017-10-06T09:54:54.361375139Z [36m2017-10-06 09:54:54.361 UTC [couchdb] ReadDoc -> DEBU 1dc78[0m Exiting ReadDoc()
2017-10-06T09:54:54.361385119Z [36m2017-10-06 09:54:54.361 UTC [couchdb] handleRequest -> DEBU 1dc79[0m Entering handleRequest() method=PUT url=http://couchdb.peer0.myOrg:5984/my-channel/statedb_savepoint
2017-10-06T09:54:54.361595948Z [36m2017-10-06 09:54:54.361 UTC [couchdb] handleRequest -> DEBU 1dc7a[0m HTTP Request: PUT /my-channel/statedb_savepoint HTTP/1.1 | Host: couchdb.peer0.myOrg:5984 | User-Agent: Go-http-client/1.1 | Content-Length: 218 | Accept: application/json | Content-Type: application/json | If-Match: 145-ec9d9161bea3e9a154c1db212ba5003b | Accept-Encoding: gzip | |
2017-10-06T09:54:54.367031133Z [36m2017-10-06 09:54:54.366 UTC [couchdb] handleRequest -> DEBU 1dc7b[0m Exiting handleRequest()
2017-10-06T09:54:54.367369594Z [36m2017-10-06 09:54:54.367 UTC [couchdb] SaveDoc -> DEBU 1dc7c[0m Exiting SaveDoc()
2017-10-06T09:54:54.367387170Z [36m2017-10-06 09:54:54.367 UTC [lockbasedtxmgr] Commit -> DEBU 1dc7d[0m Updates committed to state database
2017-10-06T09:54:54.367597722Z [36m2017-10-06 09:54:54.367 UTC [historyleveldb] Commit -> DEBU 1dc7e[0m Channel [my-channel]: Updating history database for blockNo [145] with [1] transactions
2017-10-06T09:54:54.367833012Z [36m2017-10-06 09:54:54.367 UTC [historyleveldb] Commit -> DEBU 1dc7f[0m Channel [my-channel]: Updates committed to history database for blockNo [145]
2017-10-06T09:54:54.367846667Z [36m2017-10-06 09:54:54.367 UTC [eventhub_producer] SendProducerBlockEvent -> DEBU 1dc80[0m Entry
2017-10-06T09:54:54.367850763Z [36m2017-10-06 09:54:54.367 UTC [eventhub_producer] SendProducerBlockEvent -> DEBU 1dc81[0m Channel [my-channel]: Block event for block number [145] contains transaction id: 868d73b78797ee977e1203906f4a51b8021891dc0573615aaa41cb1f8b58baf0
2017-10-06T09:54:54.367963397Z 2017-10-06 09:54:54.367 UTC [eventhub_producer] SendProducerBlockEvent -> INFO 1dc82[0m Channel [my-channel]: Sending event for block number [145]
2017-10-06T09:54:54.367970770Z [36m2017-10-06 09:54:54.367 UTC [eventhub_producer] Send -> DEBU 1dc83[0m Entry
2017-10-06T09:54:54.367974488Z [36m2017-10-06 09:54:54.367 UTC [eventhub_producer] Send -> DEBU 1dc84[0m Event processor timeout > 0
2017-10-06T09:54:54.367978071Z [36m2017-10-06 09:54:54.367 UTC [eventhub_producer] Send -> DEBU 1dc85[0m Event sent successfully
2017-10-06T09:54:54.367981517Z [36m2017-10-06 09:54:54.367 UTC [eventhub_producer] Send -> DEBU 1dc86[0m Exit
2017-10-06T09:54:54.367984887Z [36m2017-10-06 09:54:54.367 UTC [eventhub_producer] SendProducerBlockEvent -> DEBU 1dc87[0m Exit
2017-10-06T10:11:29.934430902Z [36m2017-10-06 10:11:29.931 UTC [eventhub_producer] validateEventMessage -> DEBU 1dc88[0m ValidateEventMessage starts for signed event 0xc421ef2b10
2017-10-06T10:13:33.599438293Z [36m2017-10-06 10:11:29.939 UTC [eventhub_producer] deRegisterHandler -> DEBU 1dc89[0m deregistering event type: BLOCK
2017-10-06T10:13:33.599475079Z [31m2017-10-06 10:11:29.951 UTC [eventhub_producer] Chat -> ERRO 1dc8a[0m error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
```
uber.twin (Fri, 06 Oct 2017 10:33:25 GMT):
@sstone1 no error is conveyed to the client application
uber.twin (Fri, 06 Oct 2017 10:33:25 GMT):
@sstone1 no error is conveyed to the client application, as transaction had been executed successfully
uber.twin (Fri, 06 Oct 2017 10:33:25 GMT):
@sstone1 no error is conveyed to the client application, as if transaction had been executed successfully
erNail (Fri, 06 Oct 2017 10:35:14 GMT):
I have a question about a business-model with smart devices. How would one model organisations (participants) that own smart devices, which are able to create assets on their own (Let's say a device recognises that it needs a repair, so it creates a repair-request-asset)
Would you model the devices as assets ? If so, should they use the identity of the owning organisation to create the asset ? That way it may be hard to see which device created the asset. Or should the organisation create identities issues to themselves, which the devices can use ? If so, how would you map the identity to a device ? Or would you even model the smart devices as participants that are owned by organisation-participants ?
erNail (Fri, 06 Oct 2017 10:47:50 GMT):
@sstone1 Do you know if it's possible to use the "Identity-Asset" used in the Historian (--> Identity identityUsed) in the own model ? If so, what's the namespace to import ?
erNail (Fri, 06 Oct 2017 10:51:57 GMT):
Found it, it is org.hyperledger.composer.system.cto if anyone is interested.
erNail (Fri, 06 Oct 2017 10:54:54 GMT):
But i can't seem to import it.
erNail (Fri, 06 Oct 2017 11:14:20 GMT):
Okay, you need to import the specific asset/participant.
Hamza2404 (Fri, 06 Oct 2017 12:17:19 GMT):
Has joined the channel.
SametYilmaz (Fri, 06 Oct 2017 12:32:54 GMT):
Has joined the channel.
AnithaBet (Fri, 06 Oct 2017 12:51:46 GMT):
Has joined the channel.
AnithaBet (Fri, 06 Oct 2017 12:52:40 GMT):
Hi, Is Smart Contract coding is same as Transaction?
negupta (Fri, 06 Oct 2017 13:26:50 GMT):
Has joined the channel.
negupta (Fri, 06 Oct 2017 13:28:13 GMT):
What is the best sample app that uses the Node.js client?
negupta (Fri, 06 Oct 2017 13:28:13 GMT):
Hey Team! What is the best sample app that uses the Node.js client?
ikset (Fri, 06 Oct 2017 13:29:11 GMT):
Has joined the channel.
sstone1 (Fri, 06 Oct 2017 13:36:48 GMT):
@erNail the namespace is just `org.hyperledger.composer.system`, it should automatically be in scope though
Vadim (Fri, 06 Oct 2017 13:37:05 GMT):
Has joined the channel.
sstone1 (Fri, 06 Oct 2017 13:37:12 GMT):
not sure on your IoT device question, but in similar cases i have seen the device modelled as a participant and that works
Vadim (Fri, 06 Oct 2017 13:39:49 GMT):
hi all, in our cloud setup of fabric we need to enable GRPC keepalive on all node sdk connections. While in "pure" node sdk app this is quite straighforward, we don't know how to do it on composer. It seems that connection properties are hardcoded and we cannot add additional ones: https://github.com/hyperledger/composer/blob/3f38f4b0a150bf65c2e9a41030b611859c0fa8f1/packages/composer-connector-hlfv1/lib/hlfconnectionmanager.js#L106. Are we missing something obvious here?
t_stephens67 (Fri, 06 Oct 2017 14:51:05 GMT):
Has anyone used Blockchain-explorer with their composer network? I have pointed it to all the composer crypto-config files and even pointed it at the same keyvalstore. but I am getting failed to deserialize creator identity certificate signed by unknown authrity
fsiddiqi@gmail.com (Fri, 06 Oct 2017 15:17:03 GMT):
Has joined the channel.
theathibm (Fri, 06 Oct 2017 15:53:07 GMT):
Do "Queries" need ACL's as well? and is there an example?
RyanHendricks (Fri, 06 Oct 2017 16:46:08 GMT):
Has joined the channel.
theathibm (Fri, 06 Oct 2017 18:02:22 GMT):
What would cause "getAssetRegistry" to fail inside a transaction processor function when using ACLs? I have a transaction processor function that calls "getAssetRegistry" inside. The transaction processor function works without security turned on via the composer-rest-server. However the function fails when security is turned on using ACL's. I've looked in many logs in the docker images.
a.ochs (Fri, 06 Oct 2017 18:33:24 GMT):
When I open https://composer-playground.mybluemix.net/ I get the Message "Error: Required metadata field not found: userName". Doesn't it work now or is it just on my computer?
a.ochs (Fri, 06 Oct 2017 18:35:09 GMT):
I can't open/import anything
t_stephens67 (Fri, 06 Oct 2017 18:35:48 GMT):
clear the local storage
a.ochs (Fri, 06 Oct 2017 18:41:10 GMT):
Still the same error.
a.ochs (Fri, 06 Oct 2017 18:44:35 GMT):
wow firefox is working and chromium not. Even though I cleared the storage for this site. i think this is a friday evening problem and i should go home now
sstone1 (Fri, 06 Oct 2017 19:41:34 GMT):
@a.ochs how did you clear the local storage?
sstone1 (Fri, 06 Oct 2017 19:42:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8xqADq324WeZMDCow) @theathibm you're probably missing an ACL rule that grants access to the system type `org.hyperledger.composer.system.AssetRegistry` - have you got that namespace or type in your ACL rules at all?
sstone1 (Fri, 06 Oct 2017 19:42:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zkQ8TN8CsMsGWtYAP) @theathibm ACL rules are enforced on assets returned by queries; if you don't have READ access to an asset you won't see it in the results of a query
sstone1 (Fri, 06 Oct 2017 19:43:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=29QTWd3GmFhvXT83W) @t_stephens67 I haven't checked out Blockchain Explorer in ages - does it support Fabric v1.0 now? It shouldn't matter if it's a Composer sample network or not.
t_stephens67 (Fri, 06 Oct 2017 19:44:52 GMT):
@sstone1 Yea I actually got everything configured and it works. The only thing not working properly is it shows 1 peer when I have 3 on the channel. and the peerslist is showing the template information
sstone1 (Fri, 06 Oct 2017 19:45:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6SKMpxeRwm3qFbfF3) @Vadim sounds about right, can you raise a GitHub issue for this? FYI we will be moving to a common connection profile format with Fabric v1.1 (where we are simply passing the connection profile to the Fabric Node.js SDK) and you'll be able to pass whatever you like. but @davidkel is back next week and might have an idea or a quick change to put additional options in in the meantime
glotov (Fri, 06 Oct 2017 21:13:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qJHkmDFpCmWFBFuCv) @mahoney1 It didn't help unfortunately: I installed 6Gb, 5Gb was free by the time I run the composer.
glotov (Fri, 06 Oct 2017 21:13:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qJHkmDFpCmWFBFuCv) @mahoney1 It didn't help unfortunately: I installed 7Gb, 5Gb was free by the time I run the composer.
glotov (Fri, 06 Oct 2017 21:24:21 GMT):
Prepending `DEBUG=composer:*` gave a clue: ```...
⠸ Installing runtime for business network my-network. This may take a minute...2017-10-06T21:21:18.075Z INFO HLFConnectionManager :fabric-client() [packager/Golang.js]: packaging GOLANG from composer {}$
⠙ Installing runtime for business network my-network. This may take a minute...2017-10-06T21:21:25.544Z ERROR HLFConnectionManager :fabric-client() [client-utils.js]: sendPeersProposal - Promise is rejected: Error: Connect Failed
at /usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:554:15 {}$
⠦ Installing runtime for business network my-network. This may take a minute...Segmentation fault (core dumped)
``` But "connect failed" to what? How can I know it?
sstone1 (Fri, 06 Oct 2017 21:30:37 GMT):
@glotov please run `docker ps -a` and `cat /proc/meminfo`
sstone1 (Fri, 06 Oct 2017 21:31:04 GMT):
(and paste the results here)
glotov (Fri, 06 Oct 2017 21:31:24 GMT):
Regarding the segfault itself, I looked at the core dump with gdb and it was ```Core was generated by `node /usr/local/bin/composer network deploy -a ../dist/my-network.bna -p'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 grpc_closure_sched (exec_ctx=0x7ffddc4b8c60, c=0x29a5040, error=0x4) at ../src/core/lib/iomgr/closure.c:177```, googling it revealed [this](https://github.com/grpc/grpc/issues/12608) recently fixed grpc bug. So you should just upgrade to the latest grpc. But that still does not solve my problem with "Connect failed"...
glotov (Fri, 06 Oct 2017 21:35:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dxTce9kNe5j2bzAx6) @sstone1 ```CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0bf20549d534 hyperledger/fabric-peer:x86_64-1.0.1 "sh -c 'sleep 5; p..." 11 minutes ago Up 11 minutes my_peer0-node006.1.du91jovnbk0rbyv2w3hqvccqw
d34e0e2b16a1 hyperledger/fabric-ca:x86_64-1.0.1 "sh -c 'fabric-ca-..." 11 minutes ago Up 11 minutes 7054/tcp my_ca-node006.1.oeexolkkjisorqthmtfj0z9bz
e7a4631e93b7 hyperledger/fabric-couchdb:x86_64-1.0.1 "tini -- /docker-e..." 11 minutes ago Up 11 minutes 4369/tcp, 5984/tcp, 9100/tcp my_couchdb-node007.1.d1eeh2xp6tj0ega83gqmrnfgb
1b5e01f4d99f hyperledger/fabric-peer:x86_64-1.0.1 "sh -c 'sleep 5; p..." 11 minutes ago Up 11 minutes my_peer0-node007.1.pxknvean3xy8xitmc2z5pg02p
3d89203ebcad hyperledger/fabric-ca:x86_64-1.0.1 "sh -c 'fabric-ca-..." 11 minutes ago Up 11 minutes 7054/tcp my_ca-node007.1.21y4q22cnqj0ghj8l4t7z5rbc
ceadc6d45f99 hyperledger/fabric-orderer:x86_64-1.0.1 "orderer" 11 minutes ago Up 11 minutes 7050/tcp my_orderer.1.tndxzi4qooc6qyduhrv1joi3p
f93e0bd29e68 hyperledger/fabric-couchdb:x86_64-1.0.1 "tini -- /docker-e..." 11 minutes ago Up 11 minutes 4369/tcp, 5984/tcp, 9100/tcp my_couchdb-node006.1.cf2jbvj1c3o0ed9ii7dhj4g8p
```
glotov (Fri, 06 Oct 2017 21:37:38 GMT):
```$ cat /proc/meminfo
MemTotal: 7122136 kB
MemFree: 4713164 kB
MemAvailable: 5903468 kB
Buffers: 270132 kB
Cached: 1082452 kB
SwapCached: 0 kB
Active: 1201320 kB
Inactive: 668064 kB
Active(anon): 520568 kB
Inactive(anon): 74768 kB
Active(file): 680752 kB
Inactive(file): 593296 kB
Unevictable: 3656 kB
Mlocked: 3656 kB
SwapTotal: 7340028 kB
SwapFree: 7340028 kB
Dirty: 44 kB
Writeback: 0 kB
AnonPages: 493984 kB
Mapped: 122744 kB
Shmem: 76124 kB
Slab: 353160 kB
SReclaimable: 228256 kB
SUnreclaim: 124904 kB
KernelStack: 8096 kB
PageTables: 7816 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 10901096 kB
Committed_AS: 2295252 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 0 kB
VmallocChunk: 0 kB
HardwareCorrupted: 0 kB
AnonHugePages: 309248 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
CmaTotal: 0 kB
CmaFree: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 239552 kB
DirectMap2M: 2906112 kB
DirectMap1G: 4194304 kB
``` @sstone1 , what are you looking here? :)
sstone1 (Fri, 06 Oct 2017 21:38:24 GMT):
`Connect Failed` usually means your peer has died, but it appears to be running
sstone1 (Fri, 06 Oct 2017 21:38:31 GMT):
`node -v` ?
glotov (Fri, 06 Oct 2017 21:39:06 GMT):
```$ node -v
v6.11.2
```, I also tried 6.9.5 with the same result
glotov (Fri, 06 Oct 2017 21:41:07 GMT):
BTW, is there any working example of Composer working with TLS? Without TLS it works fine for me.
glotov (Fri, 06 Oct 2017 21:41:07 GMT):
BTW, is there any working example of Composer working with TLS-enabled Fabric network? Without TLS it works fine for me.
sstone1 (Fri, 06 Oct 2017 21:42:04 GMT):
our system tests use TLS
glotov (Fri, 06 Oct 2017 21:43:18 GMT):
can I look at the `connection.json` for TLS?
sstone1 (Fri, 06 Oct 2017 21:52:00 GMT):
```
{
type: 'hlfv1',
orderers: [
{
url: 'grpcs://localhost:7050',
hostnameOverride: 'orderer.example.com',
cert: './hlfv1/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt'
}
],
ca: {
url: 'https://localhost:7054',
name: 'ca.org1.example.com'
},
peers: [
{
requestURL: 'grpcs://localhost:7051',
eventURL: 'grpcs://localhost:7053',
hostnameOverride: 'peer0.org1.example.com',
cert: './hlfv1/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt'
},
{
requestURL: 'grpcs://localhost:8051',
hostnameOverride: 'peer0.org2.example.com',
cert: './hlfv1/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt'
}
],
keyValStore: keyValStoreOrg1,
channel: 'composerchannel',
mspID: 'Org1MSP',
timeout: '300'
}
```
glotov (Fri, 06 Oct 2017 21:53:42 GMT):
`hostnameOverride`!
sstone1 (Fri, 06 Oct 2017 21:59:57 GMT):
:) i did wonder
sstone1 (Fri, 06 Oct 2017 22:00:07 GMT):
... that shouldn't cause the process to crash though!
glotov (Fri, 06 Oct 2017 22:03:30 GMT):
I wrote that above [ ](https://chat.hyperledger.org/channel/composer?msg=HhjidXDQ894pKLusg)
sstone1 (Fri, 06 Oct 2017 22:05:12 GMT):
we don't pull in `grpc` directly - it's a bug to report against #fabric-sdk-node
glotov (Fri, 06 Oct 2017 22:05:38 GMT):
"Conect failed" is gone!
But now I have ```2017-10-06T22:01:55.827Z ERROR HLFConnectionManager :fabric-client() [client-utils.js]: sendPeersProposal - Promise is rejected: Error: REQUEST_TIMEOUT
at Timeout._onTimeout (/usr/local/lib/node_modules/composer-cli/node_modules/fabric-client/lib/Peer.js:107:19)
at ontimeout (timers.js:365:14)
at tryOnTimeout (timers.js:237:5)
at Timer.listOnTimeout (timers.js:207:5) {}$
2017-10-06T22:02:00.192Z ERROR HLFConnection :install() {}$
✖ Installing runtime for business network my-network. This may take a minute...
Error: Error trying install composer runtime. Error: REQUEST_TIMEOUT
Command failed
```
glotov (Fri, 06 Oct 2017 22:06:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SuwwL8tcASSz2SgMo) @sstone1 I think they do it sooner or later anyway...
glotov (Fri, 06 Oct 2017 22:57:09 GMT):
Which mspId should I use in connection.json if I have 2 orgs, @sstone1 ? When I use the first org mspId, it says `Error: Error trying install composer runtime. Error: Failed to deserialize creator identity, err Expected MSP ID Org2MSP, received MainOrgMSP
Command failed`, and when I use the second org's, it says the way round...
glotov (Fri, 06 Oct 2017 22:57:09 GMT):
Which mspId should I use in connection.json if I have 2 orgs, @sstone1 ? When I use the org1's mspId, it says ```Error: Error trying install composer runtime. Error: Failed to deserialize creator identity, err Expected MSP ID Org2MSP, received MainOrgMSP
Command failed``` and when I use the org2's, it says the way round...
glotov (Fri, 06 Oct 2017 22:57:09 GMT):
Which mspId should I use in connection.json if I have 2 orgs, @sstone1 ? When I use the org1's mspId, as in your example above, it says ```Error: Error trying install composer runtime. Error: Failed to deserialize creator identity, err Expected MSP ID Org2MSP, received MainOrgMSP
Command failed``` and when I use the org2's, it says the way round...
aitoribanez (Fri, 06 Oct 2017 23:44:24 GMT):
Has joined the channel.
sstone1 (Sat, 07 Oct 2017 11:56:32 GMT):
@glotov for `composer runtime install` you need two separate connection profiles, one for each org, with only that orgs peers in
saiprayaga (Sat, 07 Oct 2017 12:02:59 GMT):
Has joined the channel.
spiper957 (Sun, 08 Oct 2017 02:56:07 GMT):
Has joined the channel.
danielsun1106 (Sun, 08 Oct 2017 08:07:53 GMT):
Has joined the channel.
danielsun1106 (Sun, 08 Oct 2017 08:10:53 GMT):
Hi all, I installed playground 0.13.2 locally and try to visit `http://localhost:8080`, then I got `Error: Required metadata field not found: userName` in a web page. Could you tell me how to solve the issue? Thanks in advance!
danielsun1106 (Sun, 08 Oct 2017 08:14:18 GMT):
Here are the steps I installed palyground 0.13.2:
1) `docker ps -aq | xargs docker rm -f`
2) `docker images -aq | xargs docker rmi -f`
3) `curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash`
andreasp1994 (Sun, 08 Oct 2017 11:22:46 GMT):
Hey guys is it possible to connect the playground to a locally deployed network??
kostas (Sun, 08 Oct 2017 11:38:33 GMT):
Has left the channel.
dselman (Sun, 08 Oct 2017 14:07:06 GMT):
sure
dselman (Sun, 08 Oct 2017 14:07:26 GMT):
the developer install instructions describe it
dselman (Sun, 08 Oct 2017 14:07:57 GMT):
@danielsun1106 clear the browser local storage and try again
zaidmunir (Sun, 08 Oct 2017 14:18:22 GMT):
Has joined the channel.
zaidmunir (Sun, 08 Oct 2017 14:18:30 GMT):
hello everyone
zaidmunir (Sun, 08 Oct 2017 14:19:01 GMT):
ca someone point to a good resource detailing the internal workings of the composer
zaidmunir (Sun, 08 Oct 2017 14:19:20 GMT):
in particular how does it generate the chain code?
zaidmunir (Sun, 08 Oct 2017 14:19:38 GMT):
how can it be extended to support other block chains?
zaidmunir (Sun, 08 Oct 2017 14:19:43 GMT):
*can
ianyan (Sun, 08 Oct 2017 14:24:39 GMT):
Has joined the channel.
YvesCandel (Sun, 08 Oct 2017 15:20:14 GMT):
Has joined the channel.
GLB (Sun, 08 Oct 2017 18:35:08 GMT):
Has joined the channel.
GLB (Sun, 08 Oct 2017 18:35:59 GMT):
Hello, I am trying to generate a business network archive (.bna) file in my project home directory using 'npm install'. VisualStudio is not showing any syntax errors, but when I do try run 'npm install' I get the failure saying "the keyword 'const' is reserved" complaining about my .js script. My initial searches on the web seem to show some issue with ESLint configuration, but I haven't found any solid solutions. Has anyone seen anything like this? Any help much appreciated. Thanks!
Jakeeyturner (Sun, 08 Oct 2017 18:39:21 GMT):
@GLB Try changing your `const` to `var`
jesusiglesias (Sun, 08 Oct 2017 18:53:16 GMT):
Has joined the channel.
GLB (Sun, 08 Oct 2017 18:53:44 GMT):
@Jakeeyturner -- That got me past the original compiler error with 'const' but now I'm getting "The Keyword 'class' is reserved"...I'm wondering if maybe I have an issue with my .eslintrc.json file? Does it look okay to you?
GLB (Sun, 08 Oct 2017 18:54:01 GMT):
Message Attachments
GLB (Sun, 08 Oct 2017 18:54:36 GMT):
Message Attachments
GLB (Sun, 08 Oct 2017 18:54:59 GMT):
Or maybe the issue is unrelated to that? Not sure ..
Jakeeyturner (Sun, 08 Oct 2017 19:14:53 GMT):
Try changing 'class' to something else in your JS files, as it seems to be a reserved word
GLB (Sun, 08 Oct 2017 20:03:21 GMT):
so I'm trying to generate a .bna for the sample digitalProperty example...I changed the relevant class in the javascript file to just a function...Now when trying to compile I get this 'Unexpected token (27:24)' error...right where the .then((result) => ... ) is --I'm new to javascript, do you see any obvious issues?
GLB (Sun, 08 Oct 2017 20:03:36 GMT):
Message Attachments
GLB (Sun, 08 Oct 2017 20:04:58 GMT):
Message Attachments
Jakeeyturner (Sun, 08 Oct 2017 20:06:20 GMT):
Are you trying to create a Node.js app? Or are you trying to create the Javascript processor functions for a .bna archive?
Jakeeyturner (Sun, 08 Oct 2017 20:06:20 GMT):
Are you trying to create a Node.js app? Or are you trying to create the Javascript transaction processor functions for a .bna archive?
Jakeeyturner (Sun, 08 Oct 2017 20:14:14 GMT):
If you're creating the transaction processor functions, then take a look here: https://hyperledger.github.io/composer/reference/js_scripts.html
glotov (Sun, 08 Oct 2017 21:14:47 GMT):
Hi! I have a simple Fabric network with 2 orgs (one ca + one peer / each org) and TLS enabled. All is On a single host for simplicity. Chaincode is deployed (`composer network deploy ...`) fine for each org: each orgs' peer got its own chaincode container. I launched 2 copies of 'composer-rest-server': one for each org.
glotov (Sun, 08 Oct 2017 21:14:47 GMT):
Hi! I have a simple Fabric network with 2 orgs (one ca + one peer / each org) and TLS enabled. All is on a single host for simplicity. Chaincode is deployed (`composer network deploy ...`) fine for each org: each orgs' peer got its own chaincode container. I launched 2 copies of 'composer-rest-server': one for each org.
glotov (Sun, 08 Oct 2017 21:14:47 GMT):
Hi! I have a simple Fabric network with 2 orgs (one ca + one peer / each org) and TLS enabled. All is on a single host for simplicity. Chaincode is deployed (`composer network deploy ...`) fine for each org: each orgs peer got its own chaincode container. I launched 2 copies of 'composer-rest-server': one for each org.
glotov (Sun, 08 Oct 2017 21:14:47 GMT):
Hi! I have a simple Fabric network with 2 orgs (one ca + one peer / each org) and TLS enabled. All is on a single host for simplicity. Chaincode is deployed (`composer network deploy ...`) fine for each org: each orgs' peer got its own chaincode container. I launched 2 copies of 'composer-rest-server': one for each org.
glotov (Sun, 08 Oct 2017 21:18:15 GMT):
The first rest-server works just fine: in can query and invoke its chaincode. The second can query, but when it tries to invoke, it fails with ```Unhandled error for request POST /api/Credential: Error: Error trying invoke business network. Error: Error: SERVICE_UNAVAILABLE
at _initializeChannel.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:842:34)
at process._tickCallback (internal/process/next_tick.js:103:7)
```
glotov (Sun, 08 Oct 2017 21:21:16 GMT):
All 2 chaincode containers are up, no visible errors in their logs.
danielsun1106 (Mon, 09 Oct 2017 01:20:29 GMT):
@dselman I'll give it a try. Thanks :-)
YvesCandel (Mon, 09 Oct 2017 06:27:20 GMT):
Anyone have an example for restricting create/update/delete permissions but allowing them using a transaction? If I deny the CUD permissions then I get the error when doing a transaction that I'm not allowed to do it, but I don't just want to open up the Create permission because I really want some logic in there, attribute validation etc.
Vadim (Mon, 09 Oct 2017 07:03:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=p5jBXgSKvKNigJhGs) Thanks @sstone1 @davidkel, I've summarized the problem in the https://github.com/hyperledger/composer/issues/2317.
mahoney1 (Mon, 09 Oct 2017 09:17:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yQQdoftBJWsJdE7Zo) @glotov ? launched composer rest server twice on same machine (different port configs?) or launched on different (host resolved) machines? Assume its the same business network?
mamtabharadwaj (Mon, 09 Oct 2017 09:37:17 GMT):
Hello,
I am getting this error code for memory leak,is there any solutions for that???
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to query business network. Error: chaincode error (status: 500, message: RangeError: valstack limit)",
"stack": "Error: Error trying to query business network. Error: chaincode error (status: 500, message: RangeError: valstack limit)\n at channel.queryByChaincode.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:754:34)"
}
}
glotov (Mon, 09 Oct 2017 09:38:02 GMT):
@mahoney1, it is the same network. I run on the same host, rest-servers run on 2 different ports.
glotov (Mon, 09 Oct 2017 09:38:02 GMT):
@mahoney1, it is the same network. I run on the same host, rest-servers run on 2 different ports - I use `composer-rest-server ... -P nnn` to specify the port. Both rest servers are up and listerning. Just the second one cannot make invokes.
glotov (Mon, 09 Oct 2017 09:38:02 GMT):
@mahoney1, it is the same network (bna). I run on the same host, rest-servers run on 2 different ports - I use `composer-rest-server ... -P nnn` to specify the port. Both rest servers are up and listerning. Just the second one cannot make invokes.
lclclc (Mon, 09 Oct 2017 10:25:51 GMT):
I have a query which does not work, any one can have some advice about where I did wrong?
lclclc (Mon, 09 Oct 2017 10:26:19 GMT):
```namespace org.acme.charitynetwork
asset Money identified by moneyId {
o String moneyId
o Double value
--> Organization owner
}
participant Organization identified by orgId {
o String orgId
o String name
}
transaction Trade {
--> Money money
--> Organization newOwner
}
event TradeNotification {
--> Money money
}```
lclclc (Mon, 09 Oct 2017 10:26:35 GMT):
```query selectMoneyByOwner {
description: "Select all money based on their owner"
statement:
SELECT org.acme.charitynetwork.Money
WHERE (owner.orgId == _$owner)
}```
lclclc (Mon, 09 Oct 2017 10:27:04 GMT):
Am I writing a correct query which find money by its owner?
lclclc (Mon, 09 Oct 2017 10:27:14 GMT):
The rest server just not return anything.
mahoney1 (Mon, 09 Oct 2017 10:41:22 GMT):
@lclclc you need to 1) stop your current composer rest server and 2) make sure your query is defined in a .qry suffix file in the 'root' directory of your network project 3) regenerate your .bna file using `composer archive create` and then 4) use `composer network update` to update your running business network (already deployed). to see the additional changes. 5) run composer-rest-server again, answer the questions and it should discover/create the required schema - then check the messages when it generates.
lclclc (Mon, 09 Oct 2017 10:41:54 GMT):
oh
lclclc (Mon, 09 Oct 2017 10:41:54 GMT):
my bad,
lclclc (Mon, 09 Oct 2017 10:42:21 GMT):
" just not return anything" means return empty []
lclclc (Mon, 09 Oct 2017 10:43:07 GMT):
I know that query is deploy. this is a part of a query file. other queries work, only this does not work.
lclclc (Mon, 09 Oct 2017 10:43:39 GMT):
This query is like a SQL join, I am just not sure if I have correctly join 2 entites.
mahoney1 (Mon, 09 Oct 2017 11:02:15 GMT):
@lclclc you just need ```query selectMoneyByOwner {
description: "Select all money based on their owner Org"
statement:
SELECT org.acme.charitynetwork.Money
WHERE (owner == _$owner)
}```
mahoney1 (Mon, 09 Oct 2017 11:06:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yQQdoftBJWsJdE7Zo) @glotov are you using authentication ? Are you running your own Node app too ? Can you also confirm your version of Node ?
glotov (Mon, 09 Oct 2017 11:08:32 GMT):
@mahoney1 node 6.9.5, no my own app, just the rest-server yet
mahoney1 (Mon, 09 Oct 2017 11:08:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RMsoPpDanpYxwMrn4) @glotov OK, what happens when you start up the second only (on same port)
glotov (Mon, 09 Oct 2017 11:11:02 GMT):
``` DEBUG=composer-rest-server:* composer-rest-server -p org2 -n my-network -i MainPeerAdmin -s randomString -N never -w true -P 3002
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Registering named query: findCredentialByDocHash
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Swagger: skipping unknown type "Credential".
Swagger: skipping unknown type "Credential".
Swagger: skipping unknown type "Credential".
Swagger: skipping unknown type "Credential".
Added schemas for all types to Loopback
Web server listening at: http://localhost:3002
Browse your REST API at http://localhost:3002/explorer```
lclclc (Mon, 09 Oct 2017 11:13:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uxw8gjndNui72NZW5) @mahoney1 But I am using rest server to invoke this api, I can't pass by a owner entity in URL.
glotov (Mon, 09 Oct 2017 11:13:56 GMT):
@mahoney1, after that the second chaincode is up (can see it in `docker ps`), then I invoke my transactions and the errors appear: ```Browse your REST API at http://localhost:3002/explorer
Unhandled error for request POST /api/Ping: Error: Error trying invoke business network. Error: Error: SERVICE_UNAVAILABLE
at _initializeChannel.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:842:34)
Unhandled error for request POST /api/Credential: Error: Error trying invoke business network. Error: Error: SERVICE_UNAVAILABLE
at _initializeChannel.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:842:34)
at process._tickCallback (internal/process/next_tick.js:103:7)
Unhandled error for request POST /api/Ping: Error: Error trying invoke business network. Error: Error: SERVICE_UNAVAILABLE
at _initializeChannel.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:842:34)
at process._tickCallback (internal/process/next_tick.js:103:7)```
glotov (Mon, 09 Oct 2017 11:17:09 GMT):
(I use latest composer 0.13.2 and latest rest-server 0.13.2, rebuilt my .bna after I upgraded to those)
glotov (Mon, 09 Oct 2017 11:19:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PuCSx3yWfeBoHbQZQ) @mahoney1 ah, got your idea now, will try and reply with results
mahoney1 (Mon, 09 Oct 2017 11:24:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=p4xoQEuhFyppruKy6) @lclclc ? I just changed your WHERE)clause - that's it - I'm just saying what your query syntax should be (based on what you posted). To consume correctly in REST, you regenerate the network (as you change the query file) BNA file, do a network update from that (to see changes in the running network) - then restart the REST server / refresh browser (to see the query endpoint using the correct syntax) then in REST do a /GET using your defined query.
mahoney1 (Mon, 09 Oct 2017 11:24:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=p4xoQEuhFyppruKy6) @lclclc ? I just changed your WHERE clause - that's it - I'm just saying what your query syntax should be (based on what you posted). To consume correctly in REST, you regenerate the network (as you change the query file) BNA file, do a network update from that (to see changes in the running network) - then restart the REST server / refresh browser (to see the query endpoint using the correct syntax) then in REST do a /GET using your defined query.
mahoney1 (Mon, 09 Oct 2017 11:25:48 GMT):
thx @glotov
glotov (Mon, 09 Oct 2017 11:26:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PuCSx3yWfeBoHbQZQ) @mahoney1 The very same: ```$ DEBUG=composer-rest-server:* composer-rest-server -p org2 -n my-network -i MainPeerAdmin -s randomString -N never -w true
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Registering named query: findCredentialByDocHash
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Swagger: skipping unknown type "Credential".
Swagger: skipping unknown type "Credential".
Swagger: skipping unknown type "Credential".
Swagger: skipping unknown type "Credential".
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
Unhandled error for request POST /api/Ping: Error: Error trying invoke business network. Error: Error: SERVICE_UNAVAILABLE
at _initializeChannel.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:842:34)```
lclclc (Mon, 09 Oct 2017 11:27:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=prwq5Li9LGTAScAHG) @mahoney1 I try to post a orgId in Rest API. As you can see in model, the owner is an organization, and its id is orgId. The generated Rest api is an url with path parameter, which is owner id. If I just compare the owner in where clause, how should I pass owner?
mahoney1 (Mon, 09 Oct 2017 11:39:02 GMT):
@lclclc you're passing in _$owner as a parameter, which has a relationship to Organization, identified by OrgId - in REST, you provide the parameter.. eg.
mahoney1 (Mon, 09 Oct 2017 11:39:02 GMT):
@lclclc you're passing in _$owner as a parameter, which has a relationship to Organization, identified by OrgId - in REST, you provide the parameter.. eg. https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry
mahoney1 (Mon, 09 Oct 2017 11:39:20 GMT):
like this for Commodity by Exchange from sample network Trade Network
mahoney1 (Mon, 09 Oct 2017 11:39:25 GMT):
Message Attachments
lclclc (Mon, 09 Oct 2017 11:41:16 GMT):
I don't think exchange is like Owner.
lclclc (Mon, 09 Oct 2017 11:41:45 GMT):
exchange is a plain primitive string, if I pass a string in query parameter, it will be valid for comparation
lclclc (Mon, 09 Oct 2017 11:41:59 GMT):
But owner is an foreign key object
lclclc (Mon, 09 Oct 2017 11:43:26 GMT):
the problem is, if I declare the _$owner parameter in query file, the generated REST api is expecting a plain string, not a payload object.
glotov (Mon, 09 Oct 2017 11:44:02 GMT):
@mahoney1, there's one interesting thing: after my Fabric network is up, channel created, both peers joined it, ```composer runtime install -n my-network -p org2 -i MainPeerAdmin -s randomString
composer runtime install -n my-network -p mainorg -i MainPeerAdmin -s randomString``` run successfully, then I start to deploy. And I tried to deploy org2 first and got this error: ```$ DEBUG=composer:* composer network deploy -a ../dist/my-network.bna -p org2 -i MainPeerAdmin -s randomStringDeploying business network from archive: ../dist/my-network.bna
... ... ...2017-10-09T11:31:01.087Z ERROR HLFConnectionManager :fabric-client() [Channel.js]: getChannelConfig - Failed Proposal. Error: Error: SERVICE_UNAVAILABLE
at ClientDuplexStream.
glotov (Mon, 09 Oct 2017 11:44:02 GMT):
@mahoney1, there's one interesting thing: after my Fabric network is up, channel created, both peers joined it, ```composer runtime install -n my-network -p org2 -i MainPeerAdmin -s randomString
composer runtime install -n my-network -p mainorg -i MainPeerAdmin -s randomString``` run successfully, then I start to deploy. And I tried to deploy org2 first and got this error: ```$ DEBUG=composer:* composer network deploy -a ../dist/my-network.bna -p org2 -i MainPeerAdmin -s randomStringDeploying business network from archive: ../dist/my-network.bna
... ... ...2017-10-09T11:31:01.087Z ERROR HLFConnectionManager :fabric-client() [Channel.js]: getChannelConfig - Failed Proposal. Error: Error: SERVICE_UNAVAILABLE
at ClientDuplexStream.
glotov (Mon, 09 Oct 2017 11:44:02 GMT):
@mahoney1, there's one interesting thing: after my Fabric network is up, channel created, both peers joined it, ```composer runtime install -n my-network -p org2 -i MainPeerAdmin -s randomString
composer runtime install -n my-network -p mainorg -i MainPeerAdmin -s randomString``` run successfully, then I start to deploy. And I tried to deploy org2 first and got this error: ```$ DEBUG=composer:* composer network deploy -a ../dist/my-network.bna -p org2 -i MainPeerAdmin -s randomStringDeploying business network from archive: ../dist/my-network.bna
... 2017-10-09T11:31:01.087Z ERROR HLFConnectionManager :fabric-client() [Channel.js]: getChannelConfig - Failed Proposal. Error: Error: SERVICE_UNAVAILABLE
at ClientDuplexStream.
lclclc (Mon, 09 Oct 2017 11:44:03 GMT):
And it just does not work even I change clause like this: ```query selectMoneyByOwner {
description: "Select all money based on their owner Org"
statement:
SELECT org.acme.charitynetwork.Money
WHERE (owner == _$owner)
}```
lclclc (Mon, 09 Oct 2017 11:44:38 GMT):
the curl is like "curl -X GET --header 'Accept: application/json' 'http://localhost:3000/api/queries/selectMoneyByOwner?owner=mayigongyi'
"
glotov (Mon, 09 Oct 2017 11:47:53 GMT):
@mahoney1, but if I deploy `mainorg` first, then `org2`: both `composer network deploy ...` work fine...
davidkel (Mon, 09 Oct 2017 11:54:27 GMT):
@glotov A couple of things first. The steps you need to take are
```
1. Install the composer runtime on all your orgs peers
2. use composer network start to start the business network
```
As you are using `runtime install` to install the composer runtime, you shouldn't really use the `deploy` command, you should use the `network start` command. Also you start a business network on a channel you do not need to start it for each organisation which is what you are trying to do.
The SERVICE_UNAVAILABLE error you are seeing is likely to be because in one of your connection profiles the definition to the orderer is not correct.
glotov (Mon, 09 Oct 2017 12:09:07 GMT):
@davidkel Lots of thanks!!! You were right. I wish I could spot it from logs.
glotov (Mon, 09 Oct 2017 12:14:07 GMT):
@davidkel, is there currently any document where the right sequence of actions is described? I could not find any on [official site](https://hyperledger.github.io/composer/) so I tried to details from hints here and on stackoverflow... Thanks again for showing the right way, will try it now...
davidkel (Mon, 09 Oct 2017 12:29:05 GMT):
@glotov We have an issue to provide more information specific to the operational side around HLF V1 but we still need to get around to doing it
mahoney1 (Mon, 09 Oct 2017 12:59:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=s7Qt4G6pDeXy7H6dW) @lclclc its because you need to give the fully qualified relationship to the owner instance. I'll paste a REST example screenshot shortly - you'll see the URL (so you can see what I mean).
mahoney1 (Mon, 09 Oct 2017 12:59:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=s7Qt4G6pDeXy7H6dW) @lclclc its because you need to give the fully qualified relationship to the owner instance. I'll paste a REST example screenshot shortly - you'll see the URL (so you can see what I mean).
mahoney1 (Mon, 09 Oct 2017 12:59:35 GMT):
Message Attachments
uber.twin (Mon, 09 Oct 2017 14:18:17 GMT):
@mahoney1 hi, is there a docker-compose.yml version 3 sample for starting Fabric in docker swarm mode?
mahoney1 (Mon, 09 Oct 2017 14:31:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=92gtr447B7m6FW3hv) @uber.twin I don't see any (only v2 samples) - only looked in https://github.com/hyperledger/fabric/tree/master/examples or https://github.com/hyperledger/fabric best to ask on #fabric channel
Kristinsson (Mon, 09 Oct 2017 14:36:16 GMT):
Has joined the channel.
jfodale (Mon, 09 Oct 2017 14:59:30 GMT):
Howdy folks. I'm trying to write a query, but I need to concatenate some strings within the query's where clause. What is the syntax to do this in the Hyperledger Query language?
jfodale (Mon, 09 Oct 2017 15:00:02 GMT):
or is there a way to invoke something like getFullyQualifiedIdentifier() from the query language?
jfodale (Mon, 09 Oct 2017 15:00:15 GMT):
thanks in advance
theathibm (Mon, 09 Oct 2017 16:37:28 GMT):
Anyone know what to do when this appears in the log: "The current identity must be activated (ACTIVATION_REQUIRED)"
theathibm (Mon, 09 Oct 2017 17:10:26 GMT):
@davidkel I'm using composer-rest-server on a couple channels within one network. I've gotten past lots of issues regarding identities, participants, wallets, etc.... I'm not tackling ACL's but running into a couple problems that I can't seem to get by. I've tried many many permutations of ACL's and checked the logs using docker logs. Each ACL problem I saw in the logs I've fixed, but can't get by the problem I'm having right now (several days blocked). My transaction processor function is invoked, but won't execute successfully. NOTE: The same transaction processor function runs fine without security turned on via the composer-rest-server.
mna2016 (Mon, 09 Oct 2017 17:33:21 GMT):
Hi Team, I am trying to connect blockchain deployed using composer network. In the config file there is a field called "tls_cacerts". What should be the path/value in this field?
mahoney1 (Mon, 09 Oct 2017 17:33:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=P4mkxx3rF6NZr7g6p) @jfodale yes you can do `var currentParticipant = getCurrentParticipant(); currentParticipant.getFullyQualifiedIdentifier()` the latter is how to get the FQ identifier. See example here for building your query https://stackoverflow.com/questions/45168549/why-are-the-following-added-assets-not-persisted-in-the-hyperledger-registry
theathibm (Mon, 09 Oct 2017 17:42:03 GMT):
"Error: The runtime API is not available" , Anybody see this before?
jfodale (Mon, 09 Oct 2017 17:46:36 GMT):
@mahoney1 So that would be done from within a transaction, rather than in the query itself?
davidkel (Mon, 09 Oct 2017 17:55:17 GMT):
@theathibm The activation required is not necessarily a problem as when that message is sent back to the composer-client library it will then activate the id. The only reason it wouldn't is if you are still using an old version of the npm modules
theathibm (Mon, 09 Oct 2017 17:56:19 GMT):
we are using 0.10.1, maybe it's time to upgrade
theathibm (Mon, 09 Oct 2017 17:56:19 GMT):
we are using 0.10.1, maybe it's time to upgrade,basically we are trying to instrument ACL's with Identities, participants, wallets.
theathibm (Mon, 09 Oct 2017 17:56:19 GMT):
@davidkel we are using 0.10.1, maybe it's time to upgrade,basically we are trying to instrument ACL's with Identities, participants, wallets. everything works without security
davidkel (Mon, 09 Oct 2017 18:01:42 GMT):
@theathibm obviously there will be a lot a changes made as well as bug fixes in the later versions. But as you are 3 breaking releases behind (plus another breaking release planned for this week) there is going to be a lot of migration work required
theathibm (Mon, 09 Oct 2017 18:02:54 GMT):
@davidkel oh boy, maybe have to bite the bullet, but would prefer not to upgrade yet.
gstremote (Mon, 09 Oct 2017 18:39:31 GMT):
Has joined the channel.
gstremote (Mon, 09 Oct 2017 18:39:39 GMT):
Hey guys, is there a way to make a block that has an information, refer to a previous block, where that specific information changed, and show it on the actual block?
MarioHF (Mon, 09 Oct 2017 21:27:03 GMT):
Has joined the channel.
MarioHF (Mon, 09 Oct 2017 21:27:30 GMT):
Hey guys, someone could help me in return a concept as a Json in a transaction ? I am getting the request structure in the response body
douglasthiel (Mon, 09 Oct 2017 23:37:25 GMT):
Has joined the channel.
ibmamnt (Tue, 10 Oct 2017 01:37:18 GMT):
It seems I can not use getParticipantRegistry() in transaction processor. Especially, paritipantRegistry.exist(id) are not processed. Is this a spec ?
dselman (Tue, 10 Oct 2017 01:51:39 GMT):
@sstone1 @ibmamnt looks like the runtime API has disappeared from the JSDoc reference...
dselman (Tue, 10 Oct 2017 01:52:01 GMT):
I only see common and client.
dselman (Tue, 10 Oct 2017 01:52:30 GMT):
@ibmamnt I would expect getParticipantRegistry and then exist*s* to work
ibmamnt (Tue, 10 Oct 2017 01:55:57 GMT):
@dselman I'm using v0.13.1. ```getParticipantRegistry().then(function(registry) { registry.exist(id)}).```
Does not work.
dselman (Tue, 10 Oct 2017 01:56:09 GMT):
exist*s*
ibmamnt (Tue, 10 Oct 2017 01:56:40 GMT):
Oh, sorry. I'm using exists(id).
ibmamnt (Tue, 10 Oct 2017 01:57:05 GMT):
By the way, this is inside transaction processor, not client code.
dselman (Tue, 10 Oct 2017 01:57:06 GMT):
https://hyperledger.github.io/composer/api-doc-inline/registry.html#exists-string
dselman (Tue, 10 Oct 2017 01:58:30 GMT):
This is what the `perishable-network` has:
dselman (Tue, 10 Oct 2017 01:58:36 GMT):
```
return getParticipantRegistry('org.acme.shipping.perishable.Grower')
.then(function (growerRegistry) {
// update the grower's balance
return growerRegistry.update(contract.grower);
})
.then(function () {
return getParticipantRegistry('org.acme.shipping.perishable.Importer');
})
.then(function (importerRegistry) {
// update the importer's balance
return importerRegistry.update(contract.importer);
})
.then(function () {
return getAssetRegistry('org.acme.shipping.perishable.Shipment');
})
.then(function (shipmentRegistry) {
// update the state of the shipment
return shipmentRegistry.update(shipment);
});
```
dselman (Tue, 10 Oct 2017 01:58:42 GMT):
In a TP function
ibmamnt (Tue, 10 Oct 2017 01:59:16 GMT):
``` var parcelId = tx.parcelId;
var ownerId = tx.ownerId;
var NS = 'logistics';
var ar;
return getRegistry(NS + '.Trader')
.then(function(participantRegistry) {
var pr = participantRegistry;
if (ownerId !== '' && !pr.exists(ownerId)) {
throw new Error('Trader does not exist id = ' + ownerId);
}
return getAssetRegistry(NS + '.Parcel');
})
.then(function(assetRegistry) {
ar = assetRegistry;
// Obtain the parcel object.
return ar.get(parcelId);
})
.then(function(parcel) {```
ibmamnt (Tue, 10 Oct 2017 01:59:23 GMT):
This is current code.
dselman (Tue, 10 Oct 2017 01:59:41 GMT):
Should be 'getParticipantRegistry'
ibmamnt (Tue, 10 Oct 2017 02:00:11 GMT):
Oh, yes. I tried that. Since it did not work, I tried to chage. Hold on.
ibmamnt (Tue, 10 Oct 2017 02:01:13 GMT):
I changed to getParticipantRegistry(). Still it does not work for me.
dselman (Tue, 10 Oct 2017 02:01:33 GMT):
exists returns a Promise, not a boolean -- so that !pr.exists will always be true
dselman (Tue, 10 Oct 2017 02:01:46 GMT):
You need to add another `then`
dselman (Tue, 10 Oct 2017 02:02:09 GMT):
see JSDoc here: https://hyperledger.github.io/composer/api-doc-inline/registry.html#exists-string
ibmamnt (Tue, 10 Oct 2017 02:02:10 GMT):
Oh!
ibmamnt (Tue, 10 Oct 2017 02:02:54 GMT):
Sorry, I'll try to modify it.
dselman (Tue, 10 Oct 2017 02:02:57 GMT):
np
dselman (Tue, 10 Oct 2017 02:03:00 GMT):
happy to help
ibmamnt (Tue, 10 Oct 2017 02:14:01 GMT):
It seems, it worked all right. :)
ibmamnt (Tue, 10 Oct 2017 02:17:29 GMT):
@dselman Can I assume that composer runtime APIs can be used in transaction processor ? (not client APIs).
ibmamnt (Tue, 10 Oct 2017 02:19:32 GMT):
Sorry, I found your answer in stack overflow. I'll raise an issue.
lclclc (Tue, 10 Oct 2017 02:45:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qyZhBPesyBw78EewZ) @mahoney1 Now I get your point!! That's a very useful example and it makes my query work. Thanks. But I am confused why the rest api is designed by this, it is counterintuitive for ORM users.
lclclc (Tue, 10 Oct 2017 02:46:24 GMT):
It flattens an object to a plain string, not even by serialization.
MeenakshiSingh (Tue, 10 Oct 2017 06:02:53 GMT):
version
Amitchandra (Tue, 10 Oct 2017 06:57:08 GMT):
Has joined the channel.
ibmamnt (Tue, 10 Oct 2017 07:21:09 GMT):
@dselman I have submitted issue for "Composer Runtime API" documentation is missing. https://github.com/hyperledger/composer/issues/2325
Amber.Zhang (Tue, 10 Oct 2017 07:42:18 GMT):
Has joined the channel.
nasht00 (Tue, 10 Oct 2017 08:09:51 GMT):
Hello, can I use 3rd party npm modules in my composer chaincode?
davidkel (Tue, 10 Oct 2017 08:11:19 GMT):
@nasht00 No sorry not at this time. It's a feature we want to add in the future
nasht00 (Tue, 10 Oct 2017 08:11:48 GMT):
So in the meantime, I should copy the source of the module I want? Include it somehow?
nasht00 (Tue, 10 Oct 2017 08:16:25 GMT):
Can I include files somehow? Or more generally, what's the suggested workaround?
davidkel (Tue, 10 Oct 2017 08:29:45 GMT):
@nasht00 you can include javascript files in the lib directory and they will be loaded and then you can call functions within that javascript file. It's highly unlikely that including the source of a node module will work as the TP functions are not currently executed using a node runtime
nickyromeijn (Tue, 10 Oct 2017 08:33:17 GMT):
Has joined the channel.
nickyromeijn (Tue, 10 Oct 2017 08:34:13 GMT):
Good morning, am i correct in assuming the jsdocs pages are no more available? I used them as reference while developing but can't find them anymore
davidkel (Tue, 10 Oct 2017 08:36:54 GMT):
@nickyromeijn how are you trying to reference them, are you navigating through the web site or using a direct link ?
nickyromeijn (Tue, 10 Oct 2017 08:37:12 GMT):
Direct link to the JSdocs pages returns a 404
davidkel (Tue, 10 Oct 2017 08:37:40 GMT):
That link is not valid anymore, can you try navigating from the web site ?
nickyromeijn (Tue, 10 Oct 2017 08:38:35 GMT):
Do you mean the API reference section within the docs?
nickyromeijn (Tue, 10 Oct 2017 08:39:32 GMT):
If so, then yep i can use those as well. I thought the jsdocs pages to be a bit more easy to read and skim
nickyromeijn (Tue, 10 Oct 2017 08:42:30 GMT):
Other than where to find documentation i'm struggling to find out how to use the network-client connect function. I need to define a connection-profile (which i understand) but i cannot supply said path to the profile. I want to give users of my network a physical identity card so to say which carries their certificates, keys and connection profile. But if i cannot supply the path it always references to the $home/composer folder?
davidkel (Tue, 10 Oct 2017 08:48:36 GMT):
@nickyromeijn at the moment, the connection profile must point to a real directory that exists within the user's environment. If you are using docker containers to run something like playground then the directory will be $home/composer as this directory will exist within the containers file system. It is possible to define your own wallet implementation for storing credentials as well. An example of implementing a wallet and using it in an application can be found here
https://github.com/sstone1/sample-bluemix-composer-app
nickyromeijn (Tue, 10 Oct 2017 08:51:35 GMT):
@davidkel "the connection profile must point to a real directory that exists within the user's environment." i understand the documentation specifies this: connectionProfile string true The name of the connection profile
businessNetwork string true The identifier of the business network
enrollmentID string true the enrolment ID of the user
enrollmentSecret string true the enrolment secret of the user
additionalConnectOptions Object true Additional configuration options supplied
nickyromeijn (Tue, 10 Oct 2017 08:52:13 GMT):
@davidkel what specifies where the module looks for the connection profile? Where exactly does it default to? Always to $home/composer? or can it be set by specifying options?
nickyromeijn (Tue, 10 Oct 2017 08:52:22 GMT):
there's no documentation regarding this
davidkel (Tue, 10 Oct 2017 09:01:32 GMT):
@nickyromeijn connection profiles are located by name in the directory $home/.composer-connection-profiles. So if you have a connection profile called hlfv1 it will look for the file connection.json in $home/.composer-connection-profiles/hlfv1. More info can be found here
https://hyperledger.github.io/composer/reference/connectionprofile.html
You can also define connection profiles in environment variables which I thought was documented but I can't find it now. An example of this using docker-compose can be found here
https://github.com/hyperledger/composer/blob/master/packages/composer-website/installers/hlfv1/docker-compose-playground.yml
nickyromeijn (Tue, 10 Oct 2017 09:03:04 GMT):
Thank you i'll check out the links :)
davidkel (Tue, 10 Oct 2017 09:04:24 GMT):
The above example I gave was specifically for playground. Currently it only supports the "card" format. Another example is here
```
```
davidkel (Tue, 10 Oct 2017 09:04:24 GMT):
The above example I gave was specifically for playground. Currently it only supports the "card" format. Another example is here
```
env:
- name: COMPOSER_CONFIG
value: >
{
"defaultConnectionProfile": "hlfv1",
"connectionProfiles": {
"hlfv1": {
"type": "hlfv1",
"orderers": [
{
"url": "grpc://blockchain-orderer:31010"
}
],
"ca": {
"url": "http://blockchain-ca:30000",
"name": "CA1"
},
"peers": [
{
"requestURL": "grpc://blockchain-org1peer1:30110",
"eventURL": "grpc://blockchain-org1peer1:30111"
}
],
"keyValStore": "/home/composer/.hfc-key-store",
"channel": "channel1",
"mspID": "Org1MSP",
"timeout": "300"
}
},
"credentials": {
"hlfv1": {
"PeerAdmin": "notneeded",
"admin": "adminpw"
}
}
}
```
davidkel (Tue, 10 Oct 2017 09:05:37 GMT):
We are at the moment moving the CLI and API's over to using a new id.card mechanism so I would expect the above to look like the playground example in the future
nickyromeijn (Tue, 10 Oct 2017 09:05:59 GMT):
Ah no wonder
nickyromeijn (Tue, 10 Oct 2017 09:06:21 GMT):
So in the near future you should be able to authenticate using an idcard file instead of these profiles?
davidkel (Tue, 10 Oct 2017 09:08:00 GMT):
The id.card concept is an amalgamation of connection profile, identity and business network. A card represents the business network you want to connect to and the identity you want to connect with and the card needs a connection profile that defines where the business network is deployed
nickyromeijn (Tue, 10 Oct 2017 09:09:19 GMT):
I understand; but currently connecting works by referencing a connection-profile and certificates stored on disk (in a static folder)
nickyromeijn (Tue, 10 Oct 2017 09:09:55 GMT):
wrapping these into an id card makes connecting a bit more dynamic which exactly suits my current use-case :)
nickyromeijn (Tue, 10 Oct 2017 09:10:19 GMT):
That is if what i'm assuming is correct :sweat_smile:
davidkel (Tue, 10 Oct 2017 09:14:46 GMT):
We do have alternatives to using information persisted to disk (ie the environment variables and the wallet api) and we a definitely lacking documentation about this. Hopefully as the new card implementation comes in documentation will improve.
davidkel (Tue, 10 Oct 2017 09:14:46 GMT):
We do have alternatives to using information persisted to disk (ie the environment variables and the wallet api) and we are definitely lacking documentation about this. Hopefully as the new card implementation comes in documentation will improve.
nickyromeijn (Tue, 10 Oct 2017 09:16:47 GMT):
the wallet API is not what i'm looking for ( i think ) what would be the best reference for the env variable way of connecting? The source code?
Pinn.p (Tue, 10 Oct 2017 09:22:05 GMT):
Has joined the channel.
davidkel (Tue, 10 Oct 2017 09:23:34 GMT):
@nickyromeijn at the moment I can't find any documentation about it so the source code and examples of where it is used in a docker-compose files are the only information available.
davidkel (Tue, 10 Oct 2017 09:23:34 GMT):
@nickyromeijn at the moment I can't find any documentation about it so the source code and examples of where it is used in a docker-compose file are the only information available.
nickyromeijn (Tue, 10 Oct 2017 09:24:03 GMT):
Alright thank you :)
jtonline (Tue, 10 Oct 2017 09:33:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GKkRgyKTsxxRF5WqE) @nickyromeijn there is a copy of the old style jsdocs pages here for now if that helps -> http://bit.ly/hcapi
nickyromeijn (Tue, 10 Oct 2017 09:34:15 GMT):
Ah thanks!
jtonline (Tue, 10 Oct 2017 09:37:41 GMT):
It's currently just a temporary hack until the new style API documentation is sorted out in the next week or so but if it gets enough use I might look in to automating updates to keep it around for longer
erNail (Tue, 10 Oct 2017 10:01:26 GMT):
Hi, how exactly do peer nodes get the already existing data on the blockchain ? As far as i understood, to use Composer in your network, you do the following:
1. Follow the Fabric-Tutorial on how to set up your own network with peers
2. Deploy the bna on each peer
After deploying the bna, will i be able to fetch already existing data from my local blockchain ? Or do i have to take another step ?
nickyromeijn (Tue, 10 Oct 2017 11:27:57 GMT):
How does the RestServer actually work? I find it strange that authenticating works through passport policies like facebook and github instead of keys and certificates given out by the CA/MSP
nickyromeijn (Tue, 10 Oct 2017 11:28:06 GMT):
Or is it possible to use those for authentication?
davidkel (Tue, 10 Oct 2017 11:32:55 GMT):
@erNail It's probably a question you should ask the fabric guys on #fabric-questions for example. fabric-composer provides a chaincode runtime which can process business networks and it exploits the capabilities of hyperledger fabric.
davidkel (Tue, 10 Oct 2017 11:34:40 GMT):
@nickyromeijn When the rest server communicates with a running fabric it will use certificates. With multi-user mode, the user authenticates with the rest server using the passport policy configured. Once you have authenticated with the rest server you as that user can setup wallets which will hold certificates that you will use to transact on the business network
nickyromeijn (Tue, 10 Oct 2017 11:35:11 GMT):
But what if i want to hold the wallet myself in the form of a paper wallet?
nickyromeijn (Tue, 10 Oct 2017 11:37:37 GMT):
I just setup an ionic app with the composer-common / client library and the EnvConnectionProfileStore which works untill i try to connect and it needs the composer-cli module for communicating with the business network (which kinda bummed me out). What i want to do is give users a paperwallet which holds the certificates and keys (pretty much their wallet) and hoped i would be able to use the direct way of interfacing with the network instead of using the rest server. I might be completely misunderstanding the way composer works though so if i do please tell :)
davidkel (Tue, 10 Oct 2017 11:41:49 GMT):
@nickyromeijn You don't have to use the rest server you can develop your own client application using the composer-client, composer-admin modules, and in that way you have full control of connection profiles, wallets etc. The composer-cli module should only be required for performing command line type operations and shouldn't be needed for any client application. Can you provide a bit more detail about why you think it is required ?
nickyromeijn (Tue, 10 Oct 2017 11:43:39 GMT):
process.env.COMPOSER_CONFIG = JSON.stringify({
"connectionProfiles": {
"default":{
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://localhost:7050" }
],
"ca": { "url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/Users/nickyromeijn/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}
}
}
)
console.log("ENV VARS", process.env);
var connectionProfileStore = new composerCommon.EnvConnectionProfileStore();
var adminConnection = new AdminConnection({connectionProfileStore:connectionProfileStore});
//return adminConnection.createProfile('defaultProfile', JSON.parse(process.env.COMPOSER_CONFIG))
var businessNetwork = new composer.BusinessNetworkConnection({connectionProfileStore:connectionProfileStore});
return businessNetwork.connect('default', 'pgb-network', 'PeerAdmin', 'adminpw')
.catch((e)=>console.log("ERROR CONNECTING TO THE BUSINESS NETWORK",e));
gives me this error:
Failed to load connector module "composer-connector-hlfv1" for connection profile "default". curmod.require is not a function-connectionManagerLoader.require is not a function-connectionManagerLoader.require is not a function-Cannot find module "."
A quick google and some guessing on my part led me to think it was because of the CLI module
nickyromeijn (Tue, 10 Oct 2017 11:43:48 GMT):
(sorry for the code)
nickyromeijn (Tue, 10 Oct 2017 11:48:36 GMT):
Also: Failed to load module ./winstonInjector.js: Cannot find module "."
davidkel (Tue, 10 Oct 2017 11:50:46 GMT):
@nickyromeijn not sure what the problem is there, but definitely a problem loading node modules. You could try deleting your node_modules directory in your application directory and re-running npm install
davidkel (Tue, 10 Oct 2017 11:51:14 GMT):
definitely not indicating you need composer-cli module though.
nickyromeijn (Tue, 10 Oct 2017 11:51:39 GMT):
Ah that would be good news : )
nickyromeijn (Tue, 10 Oct 2017 11:52:15 GMT):
Might be an issue because i'm using ionic, i'll try a re-install
davidkel (Tue, 10 Oct 2017 11:53:15 GMT):
Sorry don't know anything about ionic so it could be causing issues
nickyromeijn (Tue, 10 Oct 2017 11:54:33 GMT):
no worries, thanks for the info
nasht00 (Tue, 10 Oct 2017 11:58:04 GMT):
I found a trick to make virtually any npm module available in composer.
For example I wanted to use `json-rules-engine`.
I ran `browserify -r json-rules-engine > lib/requires.js`.
Now I can call `require('json-rules-engine')` anywhere in my chaincode and it works.
davidkel (Tue, 10 Oct 2017 12:01:34 GMT):
@nasht00 is that just from testing in playground or have you tried that against a real fabric ?
nasht00 (Tue, 10 Oct 2017 12:02:08 GMT):
So far using the browser filesystem. About to test in real fabric now.
davidkel (Tue, 10 Oct 2017 12:02:49 GMT):
@nasht00 suspect it won't work in a real fabric. On a real fabric we use a javascript interpreter called duktape
nasht00 (Tue, 10 Oct 2017 12:06:53 GMT):
crap ... it fails to deploy
MarioHF (Tue, 10 Oct 2017 12:07:52 GMT):
Hey guys, someone could help me in return a concept as a Json in a transaction ? I am getting the request inside the body of my response
nasht00 (Tue, 10 Oct 2017 12:14:18 GMT):
@davidkel all it says is `Error: Error trying deploy. Error: Error trying to instantiate composer runtime. Error: Failed to execute transaction (Timeout expired while executing transaction)` - hard to know if what exactly is the issue
nasht00 (Tue, 10 Oct 2017 12:25:13 GMT):
Looking through the dev-peer logs, it prints out the content of all the js files, without error apprently, then I see this:
```
[36m2017-10-10 12:09:53.033 UTC [Composer] Debug -> DEBU 233[0m @JS : Engine :init() Loaded business network definition, storing in $sysdata collection
[36m2017-10-10 12:09:53.033 UTC [Composer] Debug -> DEBU 234[0m @JS : DataService :ensureCollection() > $sysdata
[36m2017-10-10 12:09:53.033 UTC [Composer] Debug -> DEBU 235[0m Entering DataService.getCollection &{0xc42012f180}
[31m2017-10-10 12:09:53.034 UTC [shim] handleGetState -> ERRO 236[0m [42125b85]GetState received error ERROR
[36m2017-10-10 12:09:53.034 UTC [Composer] Debug -> DEBU 237[0m Exiting DataService.getCollection 0
[36m2017-10-10 12:09:53.035 UTC [Composer] Debug -> DEBU 238[0m @JS : DataService :ensureCollection() The collection does not exist, creating
[36m2017-10-10 12:09:53.035 UTC [Composer] Debug -> DEBU 239[0m Entering DataService.createCollection &{0xc42012f180}
[31m2017-10-10 12:09:53.036 UTC [shim] handleGetState -> ERRO 23a[0m [42125b85]GetState received error ERROR
[36m2017-10-10 12:09:53.037 UTC [Composer] Debug -> DEBU 23b[0m Exiting DataService.createCollection 0
[31m2017-10-10 12:09:53.038 UTC [Composer] Error -> ERRO 23c[0m @JS : Engine :init() Caught error, rethrowing [object Object]
...
[36m2017-10-10 12:09:53.041 UTC [Composer] Debug -> DEBU 24d[0m Entering Engine.handleCallback 0xc420158960 &{0xc42012f180}
[36m2017-10-10 12:09:53.041 UTC [Composer] Debug -> DEBU 24e[0m Exiting Engine.handleCallback 0
[36m2017-10-10 12:09:53.041 UTC [Composer] Debug -> DEBU 24f[0m Exiting Composer.Init Error: [42125b85]No ledger context for GetState. Sending ERROR
[36m2017-10-10 12:09:53.041 UTC [Composer] Debug -> DEBU 250[0m Entering ComposerPool.Put &{0xc42013c080 0xc420017020 0xc42013c098 0}
[36m2017-10-10 12:09:53.041 UTC [Composer] Debug -> DEBU 251[0m Putting Composer object into pool 0
[36m2017-10-10 12:09:53.041 UTC [Composer] Debug -> DEBU 252[0m Exiting ComposerPool.Put true
[36m2017-10-10 12:09:53.041 UTC [Composer] Debug -> DEBU 253[0m Exiting Chaincode.Init 500 Error: [42125b85]No ledger context for GetState. Sending ERROR
[31m2017-10-10 12:09:53.041 UTC [shim] 2 -> ERRO 254[0m [[42125b85 ERROR]]Init get error response [%!s(MISSING)]. Sending %!s(MISSING)
Error: Unhandled promise rejection {}
at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
at error () native strict preventsyield
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1) preventsyield
at call () native strict preventsyield
at [anon] (eval:1) preventsyield
```
geoms (Tue, 10 Oct 2017 12:36:13 GMT):
Hello, I was searching for Composer API docs under https://hyperledger.github.io/composer/jsdoc/module-composer-runtime.html
geoms (Tue, 10 Oct 2017 12:36:32 GMT):
it seems, removed from this location.
geoms (Tue, 10 Oct 2017 12:36:48 GMT):
which is the latest JS doc URL ?
nickyromeijn (Tue, 10 Oct 2017 12:42:31 GMT):
jtonline sent me this link @geoms https://jt-nti.github.io/hyperledger-composer-docs/jsdoc/index.html
MarioHF (Tue, 10 Oct 2017 12:43:45 GMT):
Thanks @nickyromeijn
geoms (Tue, 10 Oct 2017 12:44:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FK8ZBXuejXM8ibHPt) @nickyromeijn Thanks!
jmcnevin (Tue, 10 Oct 2017 13:21:39 GMT):
Has joined the channel.
jmcnevin (Tue, 10 Oct 2017 13:46:56 GMT):
Hello all.. I'm trying to deploy a BNA using the composer-cli docker image to my network, and I'm running into a roadblock when using TLS on the peers:
```
D1010 13:38:41.261177878 130 env_linux.c:66] Warning: insecure environment read function 'getenv' used
⠋ Deploying business network definition. This may take a minute...E1010 13:38:42.047164972 130 ssl_transport_security.c:611] Could not load any root certificate.
E1010 13:38:42.047187404 130 ssl_transport_security.c:1348] Cannot load server root certificates.
E1010 13:38:42.047242966 130 security_connector.c:837] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E1010 13:38:42.047256392 130 secure_channel_create.c:127] Failed to create secure subchannel for secure name 'peer-0.peer:7053'
E1010 13:38:42.047291774 130 secure_channel_create.c:158] Failed to create subchannel arguments during subchannel creation.
⠏ Deploying business network definition. This may take a minute...E1010 13:38:50.268799296 130 ssl_transport_security.c:611] Could not load any root certificate.
E1010 13:38:50.268818010 130 ssl_transport_security.c:1348] Cannot load server root certificates.
E1010 13:38:50.269189982 130 security_connector.c:837] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E1010 13:38:50.269212823 130 secure_channel_create.c:127] Failed to create secure subchannel for secure name 'peer-0.peer:7051'
E1010 13:38:50.269263598 130 secure_channel_create.c:158] Failed to create subchannel arguments during subchannel creation.
⠴ Deploying business network definition. This may take a minute...
...
Error: Error trying deploy. Error: Error trying install composer runtime. Error: REQUEST_TIMEOUT
```
I'm trying this with just a single peer and orderer defined in the connection profile.
glotov (Tue, 10 Oct 2017 14:02:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zHcpbwoD6oQcbg4kz) After regenerating certs, I constantly see this error in the logs of the chaincode: ``` UTC [shim] userChaincodeStreamGetter -> ERRO 003 Error trying to connect to local peer: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "tlsca.node007.educhain.io")``` just after I do `composer network deploy` or `composer network start`. All fabric containers are up, working on the single host. I did `composer identity inport` for my both org after regenerated certs. I even found above and tried '"ca"."trustedRoots": ["---tlsca.node00?.my-org-cert.pem---"]` trick with no effect. How can I debug this error?
glotov (Tue, 10 Oct 2017 14:02:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zHcpbwoD6oQcbg4kz) After regenerating certs, I constantly see this error in the logs of the chaincode: ``` UTC [shim] userChaincodeStreamGetter -> ERRO 003 Error trying to connect to local peer: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "tlsca.node007.educhain.io")``` just after I do `composer network deploy` or `composer network start`. All fabric containers are up, working on the single host. I did `composer identity import` for my both org after regenerated certs. I even found above and tried '"ca"."trustedRoots": ["---tlsca.node00?.my-org-cert.pem---"]` trick with no effect. How can I debug this error?
glotov (Tue, 10 Oct 2017 14:02:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zHcpbwoD6oQcbg4kz) After regenerating certs, I constantly see this error in the logs of the chaincode: ``` UTC [shim] userChaincodeStreamGetter -> ERRO 003 Error trying to connect to local peer: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "tlsca.node007.educhain.io")``` just after I do `composer network deploy` or `composer network start`. All fabric containers are up, working on the single host. I did `composer identity import` for my both orgs after regenerated certs. I even found above and tried `"ca"."trustedRoots": ["---tlsca.node00?.my-org-cert.pem---"]` trick with no effect. How can I debug this error?
glotov (Tue, 10 Oct 2017 14:02:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zHcpbwoD6oQcbg4kz) After regenerating certs, I constantly see this error in the logs of the chaincode: ``` UTC [shim] userChaincodeStreamGetter -> ERRO 003 Error trying to connect to local peer: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "tlsca.node007.example.com")``` just after I do `composer network deploy` or `composer network start`. All fabric containers are up, working on the single host. I did `composer identity import` for my both orgs after regenerated certs. I even found above and tried `"ca"."trustedRoots": ["---tlsca.node00?.example.com-cert.pem---"]` trick with no effect. How can I debug this error?
t_stephens67 (Tue, 10 Oct 2017 14:06:18 GMT):
Real quick question I am trying to deploy my composer network to 3 peers each running on a separate VM in docker swarm. I configured my hlfv1 connection profile to point to each of those peers but I am getting a can not install composer runtime connect failed error. any ideas on this?
jfodale (Tue, 10 Oct 2017 14:10:00 GMT):
Hello - anyone know if there is a maximum length for Strings in composer?
lmars (Tue, 10 Oct 2017 14:53:44 GMT):
Has joined the channel.
t_stephens67 (Tue, 10 Oct 2017 14:54:08 GMT):
got it composer runtime was different on all 3 VM;s
jmcnevin (Tue, 10 Oct 2017 16:24:07 GMT):
I'm having some trouble getting a BNA deployed here. Using `composer network deploy` I can see my chaincode get installed on my peer, but I get this error back: `Error: Error trying deploy. Error: Failed to deserialize creator identity, err MSP (my msp name) is unknown`
douglasthiel (Tue, 10 Oct 2017 16:46:59 GMT):
Sorry, I don’t know where to post this support request regarding a composer install…
I’m installing composer for the first time on MacOS 10.13 High Sierra.
I’m following the guide [here](https://hyperledger.github.io/composer/installing/development-tools.html)
and the [installation guide for Mac OS X pre-requisites ](https://hyperledger.github.io/composer/installing/prereqs-mac.html)
**Installed are**:
Docker version 17.09.0-ce, build afdb6d4
docker-compose version 1.16.1, build 6d1ac21
node v6.11.4
npm 3.10.10
git version 2.14.2
Python 2.7.8
node-gyp v3.6.2
**The command that is failing**:
npm install -g composer-cli
I have all the command line output available on request There are many deprecated packages in this build, a bit worrying.
The ‘pkc11js’ library seems to be the issue.
> machine:~ douglas$ npm bugs pkc11js
npm ERR! Darwin 17.0.0
npm ERR! argv "/Users/douglas/.nvm/versions/node/v6.11.4/bin/node" "/Users/douglas/.nvm/versions/node/v6.11.4/bin/npm" "bugs" "pkc11js"
npm ERR! node v6.11.4
npm ERR! npm v3.10.10
npm ERR! code E404
npm ERR! 404 Registry returned 404 for GET on https://registry.npmjs.org/pkc11js
npm ERR! 404
npm ERR! 404 'pkc11js' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/douglas/npm-debug.log
machine:~ douglas$ npm owner ls pkcs11js
microshine
mrosack (Tue, 10 Oct 2017 17:30:36 GMT):
I think the answer to this is currently no, but is there any Decimal data type to use for storing exact fractional numbers in composer assets?
dselman (Tue, 10 Oct 2017 17:30:58 GMT):
no
MarioHF (Tue, 10 Oct 2017 17:31:54 GMT):
Could I create a GET request instead of a POST in my transaction functions ?
dselman (Tue, 10 Oct 2017 17:33:30 GMT):
no, not currently
MarioHF (Tue, 10 Oct 2017 17:35:48 GMT):
@dselman There is a way to return a model as JSON in the same way that queries returns ?
dselman (Tue, 10 Oct 2017 17:37:29 GMT):
return from where?
dselman (Tue, 10 Oct 2017 17:37:45 GMT):
when you say "model" what do you mean?
MarioHF (Tue, 10 Oct 2017 17:40:28 GMT):
I have a concept and I want to return it as a JSON using a function
MarioHF (Tue, 10 Oct 2017 17:41:29 GMT):
I can call the function via REST api but I did not get the concept in my response
MarioHF (Tue, 10 Oct 2017 17:42:17 GMT):
Message Attachments
davidkel (Tue, 10 Oct 2017 17:59:29 GMT):
@nasht00 that error usually means that the instantiation of the composer runtime took too long trying to process your business network archive. If you are in control of your fabric setup then you can increase the timeout but I still don't think it will work as the I don't think the `require` function will exist.
davidkel (Tue, 10 Oct 2017 18:00:58 GMT):
@MarioHF transactions cannot return information. You would need to emit an event and place the information into the event, then capture that event.
davidkel (Tue, 10 Oct 2017 18:02:43 GMT):
@douglasthiel do you have xcode installed ? pkcs11 has native code and so needs to be compiled.
MarioHF (Tue, 10 Oct 2017 18:03:32 GMT):
Thanks @davidkel
mahoney1 (Tue, 10 Oct 2017 18:46:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rHoWfKffpgzY4Qnde) @lclclc [ ](https://chat.hyperledger.org/channel/composer?msg=rHoWfKffpgzY4Qnde) @lclclc Composer just uses/generates the Open API (Swagger) REST API specification, you can read more by a quick search on that
mahoney1 (Tue, 10 Oct 2017 18:46:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rHoWfKffpgzY4Qnde) @lclclc Composer just uses/generates the Open API (Swagger) REST API specification, you can read more by a quick search on that
glotov (Tue, 10 Oct 2017 18:47:26 GMT):
Hi! I wonder, what should be specified to `"ca"."trustedRoots"` in connection profiles? Should it be a certificate name or a certificate body? Which certificate should it be? I am stuck with the problem that my chaincode dies right after its launch with error: ```UTC [shim] userChaincodeStreamGetter -> ERRO 003 Error trying to connect to local peer: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "tlsca.node007.example.com")```, how can I debug it?
MarioHF (Tue, 10 Oct 2017 18:51:40 GMT):
@davidkel How can I capture the event and sent it in the response after emit it ?
davidkel (Tue, 10 Oct 2017 18:53:35 GMT):
@MarioHF see https://hyperledger.github.io/composer/integrating/publishing-events.html if you are using the Rest Server.
davidkel (Tue, 10 Oct 2017 18:57:36 GMT):
@MarioHF see also https://hyperledger.github.io/composer/business-network/publishing-events.html on how to emit events from TP functions
MarioHF (Tue, 10 Oct 2017 19:14:28 GMT):
@davidkel I followed the steps but the WebSocket URL does not load in the browser and the WS listener does not catch the events to show into the console. Do you know what could be happening ?
mrosack (Tue, 10 Oct 2017 19:43:37 GMT):
Is there any way to import a cto file from somewhere else on the filesystem? I'm looking to set up some shared cto files between composer projects
douglasthiel (Tue, 10 Oct 2017 19:45:51 GMT):
@MarioHF Yes, the Xcode command line tools are installed
douglasthiel (Tue, 10 Oct 2017 19:50:50 GMT):
@MarioHF I don't believe the pkcs11 is being downloaded
Raje (Tue, 10 Oct 2017 22:30:30 GMT):
I am trying to bind participant3 identity and I got command succeded but when I did network ping, I didn't find that participant listed. So, again i tried to revoke identity and now I am getting following output =>
Raje (Tue, 10 Oct 2017 22:33:31 GMT):
The specified identity has already been revoked. Then again I run identity bind command but not able to see participant listed.
Raje (Tue, 10 Oct 2017 22:34:58 GMT):
Now I can see bind =>"Failed to add object with ID 'particularId' as the object already exists". for Revoke => "The specified identity has already been revoked". What can I do further?
lclclc (Wed, 11 Oct 2017 03:00:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=emp3Xc3AW9GNtSfWq) @mahoney1 actually I am using its swagger interface to interact with blockchain network. But its document information is not enough.
lclclc (Wed, 11 Oct 2017 03:02:18 GMT):
It does not have a example value, take my case as an example, it does not tell me how to pass a money reference.
YvesCandel (Wed, 11 Oct 2017 06:52:38 GMT):
We've been building a prototype in Composer for a while now, but are curious as to what the transition to a production scenario would look like... is there any guide for this?
nickyromeijn (Wed, 11 Oct 2017 07:15:59 GMT):
Good morning, i'm having issues trying to connect to my development chain. Getting the following error: Failed to load connector module "composer-connector-hlfv1" Anyone knows how to fix this? Tried reinstalling the composer modules and composer-cli with node6 but that didn't work
nickyromeijn (Wed, 11 Oct 2017 07:52:58 GMT):
Now getting errors about different version numbers: Error trying to ping. Error: Composer runtime (0.11.3) is not compatible with client (0.13.2), i'm using the playground containers which should be version 0.13 as well?
nasht00 (Wed, 11 Oct 2017 09:36:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TYXbsear3Sgr6ggbT) @davidkel
I use the technique described here: https://github.com/browserify/browserify#external-requires
Which exports the `require` function.
nasht00 (Wed, 11 Oct 2017 09:39:20 GMT):
If you have pointers on how to increase the timeout it would help (I use the default fabric setup provided by the tutorials).
At least we'll know if there are other issues involved or if that was it.
mahoney1 (Wed, 11 Oct 2017 10:12:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HiDAabKtAS5Wxq9cm) @nickyromeijn what OS ? did you follow all the pre-req steps in the docs https://hyperledger.github.io/composer/installing/development-tools.html? What version of Python ? Supported OS version? Are you installing with superuser privileges? if your python level is good - then `npm uninstall -g composer-cli composer-rest-server generator-hyperledger-composer` (if the latter 2 are installed too) and then install with `npm install -g composer-cli ; npm install -g composer-rest-server ; npm install -g generator-hyperledger-composer
nickyromeijn (Wed, 11 Oct 2017 10:12:36 GMT):
Yeah i uninstalled and reinstalled everything under node 6
nickyromeijn (Wed, 11 Oct 2017 10:12:37 GMT):
now it works
nickyromeijn (Wed, 11 Oct 2017 10:14:06 GMT):
Currently i'm figuring out if i want to use the REST server. You guys reckon it would be possible to implement a passport policy which uses a paperwallet for authentication instead of the restserver managing the wallets for users. (I want to give the users total ownership and responsibility regarding their keys and certificates)
nickyromeijn (Wed, 11 Oct 2017 10:18:40 GMT):
Something like this https://github.com/ripjar/passport-client-cert
mahoney1 (Wed, 11 Oct 2017 10:23:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=J9rF8ZZpCWBwN6sKb) @nickyromeijn ok thanks for the info.
mahoney1 (Wed, 11 Oct 2017 10:38:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gL48sxDnDoKXzZAMa) @Raje Once an identity has been revoked, the identity can no longer be used by the participant to interact with the business network in the context of that participant. If you're using playground, you can issue a new identity and bind to a participant - might help. Then try the ping command eg (where the identity is 'maeid1') ` composer network ping -p hlfv1 -n 'digitalproperty-network' -i maeid1 -s RJJmlOpvNVRV ` etc, etc
jtclark (Wed, 11 Oct 2017 10:50:50 GMT):
Has joined the channel.
razik29 (Wed, 11 Oct 2017 11:41:53 GMT):
Hello All,I am trying to deploy a .bna file onto the hyperledger fabric and getting this error. I've recently have set up the entire fabric environment.
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.1.8
Description: Our first network
✖ Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying install composer runtime. Error: REQUEST_TIMEOUT
Command failed
Has anyone faced this recently?
I had been deploying it before successfully. This error has come up recently (from yesterday). Version detail I use,
node --version
v6.11.4
npm --version
5.4.2
docker --version
Docker version 17.09.0-ce, build afdb6d4
docker-compose --version
docker-compose version 1.15.0, build e12f3b9
python -V
Python 2.7.12
composer -v
v0.13.2
razik29 (Wed, 11 Oct 2017 11:42:31 GMT):
Please let me know in case you need more detail.
razik29 (Wed, 11 Oct 2017 11:52:41 GMT):
I have seen a similar question posted on stackoverflow and I checked my docker containers and everything seem to running fine. https://stackoverflow.com/questions/46511988/error-error-trying-install-composer-runtime-error-connect-failed
gstremote (Wed, 11 Oct 2017 12:58:17 GMT):
When I make a transaction, is there an automatic process that records the previous 'hash' of some asset in some place?
For example, when I transact one asset from member A to B, Is there a way to track the transaction of my asset ? (Obs. I'm using composer and rest server)
theathibm (Wed, 11 Oct 2017 14:38:36 GMT):
I've been stuck on a problem for numerous days now.
Hoping I can find someone that can help
Error: chaincode error (status: 500, message: Error: The runtime API is not available)
Just can't get past this problem using Participant,Identities,Wallets, and ACL's to invoke "Transaction Processor Function"
The TPF starts up, but fails when trying to make it's first call to getAssetRegistry(). The TPF works if I'm "admin" but not with any participant other than admin
theathibm (Wed, 11 Oct 2017 14:38:36 GMT):
I've been stuck on a problem for numerous days now.
Hoping I can find someone that can help
Error: chaincode error (status: 500, message: Error: The runtime API is not available)
Just can't get past this problem using Participant,Identities,Wallets, and ACL's to invoke "Transaction Processor Function"
The TPF starts up, but fails when trying to make it's first call to getAssetRegistry(). The TPF works if I'm "admin" but not with any participant other than admin
theathibm (Wed, 11 Oct 2017 14:38:36 GMT):
I've been stuck on a problem for numerous days now.
Hoping I can find someone that can help
Error: chaincode error (status: 500, message: Error: The runtime API is not available)
Just can't get past this problem using Participant,Identities,Wallets, and ACL's to invoke "Transaction Processor Function"
The TPF starts up, but fails when trying to make it's first call to getAssetRegistry(). The TPF works if I'm "admin" but not with any participant other than admin @davidkel @sstone1
MarioHF (Wed, 11 Oct 2017 14:43:32 GMT):
Guys i am getting TypeError : undefined not callable when I try to emit an event. Do you know what is going on ?
davidkel (Wed, 11 Oct 2017 14:51:03 GMT):
@theathibm you are probably hitting this issue https://github.com/hyperledger/composer/issues/1716
davidkel (Wed, 11 Oct 2017 14:51:03 GMT):
@theathibm you might be hitting this issue https://github.com/hyperledger/composer/issues/1716
eacoeytaux (Wed, 11 Oct 2017 15:09:09 GMT):
Hello all, I've been having issues updating assets. I can update assets just fine if that's all I'm doing, but if I need to update an asset in a promise callback (the .then() function) from any sort of registry function (i.e. registry.get(), registry.exists(), etc.) then the asset is never updated, although there is no error message or any other warnings. Anyone have any ideas how to resolve this?
douglasthiel (Wed, 11 Oct 2017 15:11:13 GMT):
@MarioHF tried ‘npm install pkcs11js’ and got similar errors as before.
Noticed there were a bunch of python errors so
brew upgrade python
the python upgrade mentioned ‘High Sierra’
npm install -g composer-cli **seems to work now**
MarioHF (Wed, 11 Oct 2017 15:22:19 GMT):
Thanks @douglasthiel
theathibm (Wed, 11 Oct 2017 15:58:59 GMT):
Message Attachments
mahoney1 (Wed, 11 Oct 2017 16:09:44 GMT):
@razik29 can you do a `docker ps` please ?
mahoney1 (Wed, 11 Oct 2017 16:12:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Fjct7B2dhwbQRCoLy) @gstremote you can track what transactions took place against the asset in Historian https://hyperledger.github.io/composer/reference/historian.html see 'Tracking Transactions' section.
mahoney1 (Wed, 11 Oct 2017 16:21:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=RCvEB7M359bhXXDk4) @eacoeytaux check out Promises in this web doc https://hyperledger.github.io/composer/reference/js_scripts.html - see examples of registry get here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/digitalproperty-network/test/DigitalLandTitle.js#L94 or https://github.com/hyperledger/composer-sample-networks/blob/master/packages/marbles-network/test/MarblesTests.js
mahoney1 (Wed, 11 Oct 2017 16:36:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Wg8fDfis8FaJoZqMw) @YvesCandel it all depends on what a production scenario would look like (no two are the same) - eg. deploying your business network to a production cloud, who's in my network, etc . and all the networking/security/storage/operational decisions that go with that. . You might find some help here (as you'll need a production network)
http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html - the Composer business network you create is deployed to that.
JoshuaRippon (Wed, 11 Oct 2017 16:46:31 GMT):
Has joined the channel.
JoshuaRippon (Wed, 11 Oct 2017 16:51:29 GMT):
Hi guys. I have been working through this tutorial https://hyperledger.github.io/composer/tutorials/developer-guide.html . When I go to composer-rest-server, I get the error Connection fails: Error: Failed to load connection profile hlfvl. Error was Error: ENOENT: no such fi le or directory, open '/home/ubuntu/.composer-connection-profiles/hlfvl/connection.json' I find this strange as this file is definitely there
JoshuaRippon (Wed, 11 Oct 2017 16:52:05 GMT):
If anyone can help this newb, I would greatly appreciate it!!
theathibm (Wed, 11 Oct 2017 17:02:44 GMT):
@davidkel @sstone1 I added some details on the github issue:
theathibm (Wed, 11 Oct 2017 17:02:44 GMT):
@davidkel @sstone1 I added some details on the github issue:https://github.com/hyperledger/composer/issues/1716
theathibm (Wed, 11 Oct 2017 17:02:44 GMT):
@davidkel @sstone1 I added some details, regarding the "The runtime API is not available" problem, on the github issue:https://github.com/hyperledger/composer/issues/1716
eacoeytaux (Wed, 11 Oct 2017 17:09:00 GMT):
@mahoney1 thank you for the example, but this example doesn't quite address the issue I have - my mistake, I don't think I properly explained before. I get the assetRegistry for one type of asset, and then in that callback need to access an assetRegistry for a different type of asset, in which case function calls no longer work on the second assetRegistry
davidkel (Wed, 11 Oct 2017 18:53:51 GMT):
@theathibm Can you put together a simple recreate ? Also need to know version of composer runtime (from the ping command).
theathibm (Wed, 11 Oct 2017 18:54:17 GMT):
Hi David, thanks for the repsonse
theathibm (Wed, 11 Oct 2017 18:54:27 GMT):
I might be onto something
theathibm (Wed, 11 Oct 2017 18:54:39 GMT):
I have lots of transaction js files
theathibm (Wed, 11 Oct 2017 18:54:47 GMT):
and then some utility js file
theathibm (Wed, 11 Oct 2017 18:54:47 GMT):
s
theathibm (Wed, 11 Oct 2017 18:55:44 GMT):
I just noticed in the utility js files that I did something like: var draftutils = { f1 : function(blahblah) {}, f2: ..... }
theathibm (Wed, 11 Oct 2017 18:55:50 GMT):
i.e. defining global vars
davidkel (Wed, 11 Oct 2017 18:56:08 GMT):
@theathibm All of those files are pulled in by the acl compiler, so you need to be careful about how they use the runtime api (ie if they are no encapsulated properly in explicitly invocable functions) then this will cause the error you see
davidkel (Wed, 11 Oct 2017 18:56:08 GMT):
@theathibm All of those files are pulled in by the acl compiler, so you need to be careful about how they use the runtime api (ie if they are not encapsulated properly in explicitly invocable functions) then this will cause the error you see
theathibm (Wed, 11 Oct 2017 18:56:28 GMT):
although I not caching anything like getFactory
theathibm (Wed, 11 Oct 2017 18:56:48 GMT):
yes, I'm thinking it's related
theathibm (Wed, 11 Oct 2017 18:57:00 GMT):
I'm rewriting all my utility js files
theathibm (Wed, 11 Oct 2017 18:57:28 GMT):
I have about 30 transactions js files all in the proper format
Hefziben (Wed, 11 Oct 2017 18:57:31 GMT):
@mahoney1 @davidkel team, please help with this inquiry. I have a business network already modeled. I would like to know how, I can place an order transaction for 2 assets at the same time, let;s use the vehicle network as an example. this only let you order one car at the time, but what about if I want to place and order for 2 cars at the time to be recorded on the same order?
theathibm (Wed, 11 Oct 2017 18:57:59 GMT):
and about 6 or so utility js files that get used as well
theathibm (Wed, 11 Oct 2017 18:58:28 GMT):
@davidkel I'll get back to you by the end of day with a rewrite of my utilities js files
glotov (Wed, 11 Oct 2017 19:16:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aSRXt6hJWmiqHjtWo) The problem was solver by removing old docker images of the chaincode. So it appears that chaincode's docker images keeps some reference to the certificates and must be recreated if you update certs.
glotov (Wed, 11 Oct 2017 19:16:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aSRXt6hJWmiqHjtWo) The problem was solved by removing old docker images of the chaincode. So it appears that chaincode's docker images keeps some reference inside to the certificates and must be recreated if you update certs. No connection profiles involved.
jfodale (Wed, 11 Oct 2017 19:44:21 GMT):
@Hefziben You could remodel both the order asset and the placeOrder() transaction to hold an array of vehicle assets instead of a single vehicle. The transaction processor would then just need to loop through the incoming array
Hefziben (Wed, 11 Oct 2017 19:57:51 GMT):
@jfodale thanks, I had forgot about the array option. You made my day. I will try that.
chsriman (Wed, 11 Oct 2017 20:19:47 GMT):
Has joined the channel.
chsriman (Wed, 11 Oct 2017 20:22:06 GMT):
\[// Build and execute a query.
var businessNetwork = new BusinessNetworkConnection();
return businessNetwork.connect(this.CONNECTION_PROFILE_NAME, this.businessNetworkIdentifier, participantId, participantPwd)
.then(function () {
console.log('making query');
var query = this.bizNetworkConnection.buildQuery('SELECT ml.gi.mvp.employee.employeeRecord.Employee WHERE (serialNumber == _$serialNumber)');
console.log('query made');
return query(query, {serialNumber: '123'});
})
.then(function (assets) {
console.log('checking assets');
assets.forEach(function (asset) {
console.log('for each assets');
// Process each asset.
console.log(asset.social);
});
})
.catch(function (error) {
console.log('error with query');
// Add optional error handling here.
});]\
chsriman (Wed, 11 Oct 2017 20:25:39 GMT):
|>quote
chsriman (Wed, 11 Oct 2017 20:27:56 GMT):
Hi, I am trying to use the buildQuery function in a Node JS app exactly following the structure in https://hyperledger.github.io/composer/api-doc-inline/businessnetworkconnection.html#buildquery-string. However, the buildQuery statement fails
chsriman (Wed, 11 Oct 2017 20:29:10 GMT):
I am using `var query = this.bizNetworkConnection.buildQuery('SELECT ab.cd.efg.employee.employeeRecord.Employee WHERE (serialNumber == _$serialNumber)');`
chsriman (Wed, 11 Oct 2017 20:29:34 GMT):
The `bizNetworkConnection` is successful and I am able to verify it
chsriman (Wed, 11 Oct 2017 20:29:59 GMT):
Is there anything else we need to do apart from what is given in the documentation?
fabianpie (Wed, 11 Oct 2017 20:30:54 GMT):
Has joined the channel.
fabianpie (Wed, 11 Oct 2017 20:40:41 GMT):
Hi, any size limitations to store binary data in assets ? No availability of byte array so we might to use an Integer array right ?
theathibm (Wed, 11 Oct 2017 20:57:55 GMT):
@davidkel @sstone1 Hallelujah!!!! After days of struggling, not knowing the reason of the problems that I was having with Transaction Processor Functions and ACL, I am finally able to make things work while acting as a Participant other than the "admin". The Error: "The runtime API is not available", at least in my case, seems to be due to the structure of all the .js files that you have in your /lib folder of your composer project. Even though I don't have any ACL problems, the ACL checking causes the error to appear only when using "-m true" on composer-rest-server and also when using participants other than admin (with all identities/wallets/participants setup properly, and all ACL's in permission.acl all set properly).
theathibm (Wed, 11 Oct 2017 20:57:55 GMT):
@davidkel @sstone1 Hallelujah!!!! After days of struggling, not knowing the reason of the problems that I was having with Transaction Processor Functions and ACL, I am finally able to make things work while acting as a Participant other than the "admin". The Error: "The runtime API is not available", at least in my case, seems to be due to the structure of all the .js files that you have in your /lib folder of your composer project. Even though I don't have any ACL problems, the ACL checking causes the error to appear only when using "-m true" on composer-rest-server and also when using participants other than admin (with all identities/wallets/participants setup properly, and all ACL's in permissions.acl all set properly). NOTE: you can only have .js files in your /lib dir that use function declarations only, i.e. no singleton variables declared, no classes define, no js code of anykind outside of your function declarations.
theathibm (Wed, 11 Oct 2017 20:57:55 GMT):
@davidkel @sstone1 Hallelujah!!!! After days of struggling, not knowing the reason of the problems that I was having with Transaction Processor Functions and ACL, I am finally able to make things work while acting as a Participant other than the "admin". The Error: "The runtime API is not available", at least in my case, seems to be due to the structure of all the .js files that you have in your /lib folder of your composer project. Even though I don't have any ACL problems, the ACL checking causes the error to appear only when using "-m true" on composer-rest-server and also when using participants other than admin (with all identities/wallets/participants setup properly, and all ACL's in permissions.acl all set properly). NOTE: you can only have .js files in your /lib dir that use function declarations only, i.e. no singleton variables declared, no classes define, no js code of anykind outside of your function declarations. The code I have been running for months without issues, but adding in the multiuser and starting to use ACL's reveal the problem: i.e. The Error: "The runtime API is not available". I hope this helps anyone else that might experience the problem. Terry
jfodale (Wed, 11 Oct 2017 20:58:56 GMT):
@fabianpie I was wondering this too. It didn't look like there was a limit in composer, but there is a limit on the amount of incoming data over REST by default. Not sure how to increase the REST data limitation yet
glotov (Wed, 11 Oct 2017 21:03:51 GMT):
Does the Composer support running several chaincodes at the same time? For example old and new version of the chaincode?
michaelgriffith (Wed, 11 Oct 2017 21:04:58 GMT):
Is there a way to get the composer web ui to run against the fabric deployed using this guide: https://hyperledger.github.io/composer/installing/development-tools.html I have been running composer-playground and just realized it basically has its own fabric that is separate from my development environment.
theathibm (Wed, 11 Oct 2017 21:07:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3XxYn6ReDNRbpt6Tc) Thanks to @uber.twin @davidkel @sstone1 for interacting with me during this problem resolution
davidkel (Wed, 11 Oct 2017 21:08:48 GMT):
@theathibm if you could update the issue about your findings that would be great as it seems it not such as niche issue as first thought.
theathibm (Wed, 11 Oct 2017 21:09:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AcQS54ptaG5Ao5yyh) @davidkel right, I don't think it's niche, it's about code structure in the /lib folder in all the JS files
theathibm (Wed, 11 Oct 2017 21:09:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AcQS54ptaG5Ao5yyh) @davidkel right, I don't think it's niche, it's about code structure in the /lib folder in all the JS files.
theathibm (Wed, 11 Oct 2017 21:11:06 GMT):
Clipboard - October 11, 2017 5:10 PM
jcbombardelli (Wed, 11 Oct 2017 21:19:26 GMT):
Has joined the channel.
fabianpie (Wed, 11 Oct 2017 21:28:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MjxCiAEBSFB5uQxFo) @jfodale I think composer-client from node.js uses grpc and not the rest API
fabianpie (Wed, 11 Oct 2017 21:28:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MjxCiAEBSFB5uQxFo) @jfodale I think composer-client from node.js uses grpc and not the rest API so it wouldn't be a problem. I was thinking more about couchdb and the way composer is storing the assets in the database.
fabianpie (Wed, 11 Oct 2017 21:28:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MjxCiAEBSFB5uQxFo) @jfodale I think composer-client from node.js uses grpc and not the rest API so it wouldn't be a problem if you use the node.js module (my case). I was thinking more about couchdb and the way composer is storing the assets in the database.
luomin (Thu, 12 Oct 2017 01:12:43 GMT):
Has joined the channel.
GLB (Thu, 12 Oct 2017 01:37:47 GMT):
I have this .js file for a transaction which essentially just creates a type of asset...The first step is to create an instance of BusinessNetworkConnection which I can connect to...In order to use the constructor for that class, I obviously have to import it. Every example I see in other projects does 'const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;' before the function definition ... but the compiler will give me an error: 'keyword const is reserved'. I have tried replacing 'const' with 'var' as earlier suggested, but that does not seem to import the module. Can anyone advise? Thanks
dselman (Thu, 12 Oct 2017 01:45:32 GMT):
@GLB you don't need to create a connection if you are inside a TP function. You can just call `getFactory()` and then create your resource.
dselman (Thu, 12 Oct 2017 01:45:59 GMT):
Most of the sample networks create assets in TP functions.
GLB (Thu, 12 Oct 2017 01:53:13 GMT):
I took out the reference to businessnetworkconnection and now am getting 'Error: chaincode error (status: 500, message: TypeError: undefined not callable)' ... I'm not sure if that is complaining about my call to getAssetRegistry() or getFactory() ... Is that an import error?
lclclc (Thu, 12 Oct 2017 02:46:38 GMT):
@dselman Can you give me some advice about how to let composer target at another network. How many steps should I take?
dselman (Thu, 12 Oct 2017 02:48:17 GMT):
@GLB That means you are calling a function on an undefined object (null). I recommend you debug your TP functions using the embedded (Node.js) runtime as you get much faster turnaround and can connect a debugger. Look at the unit tests for the sample networks.
dselman (Thu, 12 Oct 2017 02:49:00 GMT):
@lclclc you just need to create a connection profile for the remote network and then use that connection profile (or ID card in the playground) to connect.
lclclc (Thu, 12 Oct 2017 02:49:19 GMT):
Actually I just did that
lclclc (Thu, 12 Oct 2017 02:49:33 GMT):
My problems are: ``` 1
lclclc (Thu, 12 Oct 2017 02:49:56 GMT):
``` 1 {
2 "type": "hlfv1",
3 "orderers": [
4 { "url" : "grpc://localhost:7050" }
5 ],
6 "ca": { "url": "http://localhost:7054",
7 "name": "ca.org1.example.com"
8 },
9 "peers": [
10 {
11 "requestURL": "grpc://localhost:7051",
12 "eventURL": "grpc://localhost:7053"
13 }
14 ],
15 "keyValStore": "/Users/magicliang/.composer-credentials",
16 "channel": "composerchannel",
17 "mspID": "Org1MSP",
18 "timeout": "300"
19 }```
lclclc (Thu, 12 Oct 2017 02:50:10 GMT):
``` 1 What is type here ```
lclclc (Thu, 12 Oct 2017 02:50:49 GMT):
```2 If my network has multiple ca instance, can I just change 'ca' element from object to array?```
lclclc (Thu, 12 Oct 2017 02:51:47 GMT):
```Is this the only thing I need to do: create a profile, create connection.json, and use profile name to connect?```
lclclc (Thu, 12 Oct 2017 02:52:59 GMT):
4 Where can I get the key
lclclc (Thu, 12 Oct 2017 02:53:31 GMT):
4 Where can I get the keyValStore for new networks, can I use the old one: /Users/magicliang/.composer-credentials
lclclc (Thu, 12 Oct 2017 02:55:38 GMT):
@dselman Can you help to answer my 4 questions? I search the whole document and found no clue, thanks in advance.
dselman (Thu, 12 Oct 2017 02:56:18 GMT):
please post this to StackOverflow using the #hyperledger-composer tag. And check the existing answers...
dselman (Thu, 12 Oct 2017 02:56:55 GMT):
you will find lots of information on connection profiles in the docs and on StackOverflow
lclclc (Thu, 12 Oct 2017 02:59:20 GMT):
That's good advice
andrewsantorelli (Thu, 12 Oct 2017 03:17:21 GMT):
Has joined the channel.
k_watanabe (Thu, 12 Oct 2017 03:54:08 GMT):
Has joined the channel.
nathanaw (Thu, 12 Oct 2017 03:57:52 GMT):
Has joined the channel.
nathanaw (Thu, 12 Oct 2017 03:57:56 GMT):
nathan.aw@NTT-Laptop69 MINGW64 ~/hyperledger
$ docker exec peer0.org1.example.com peer channel create -o orderer.example.com:7050 -c composerchannel -f /etc/hyperledger/configtx/composer-channel.tx
2017-10-12 03:57:22.537 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2017-10-12 03:57:22.537 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2017-10-12 03:57:22.538 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized
Error: channel create configuration tx file not found open C:/Program Files/Git/etc/hyperledger/configtx/composer-channel.tx: no such file or directory
nathanaw (Thu, 12 Oct 2017 03:58:01 GMT):
please help
nathanaw (Thu, 12 Oct 2017 03:58:31 GMT):
experts. i have been stucked at this step for more than 2 days. the file is there. I am running git on Windows 10. Was able to run fabric samples
nathanaw (Thu, 12 Oct 2017 03:58:38 GMT):
please help, please...
dselman (Thu, 12 Oct 2017 04:00:23 GMT):
Composer is not supported (doesn't work) on Windows. You need to install a VM.
dselman (Thu, 12 Oct 2017 04:01:30 GMT):
Docs...
dselman (Thu, 12 Oct 2017 04:02:00 GMT):
https://hyperledger.github.io/composer/installing/development-tools.html
nathanaw (Thu, 12 Oct 2017 04:04:05 GMT):
thanks dselman, but i am able to run fabric samples... problem is if i am going to use ubuntu, i will need to run virtualbox. not sure if nested virtualisation will work
Akshay2218 (Thu, 12 Oct 2017 04:21:12 GMT):
Has joined the channel.
Akshay2218 (Thu, 12 Oct 2017 04:25:31 GMT):
I have successfully save data but in response i got an error :
Akshay2218 (Thu, 12 Oct 2017 04:25:31 GMT):
I'm using hyperledger composer and my composer version is 0.13.0. I have successfully save data but in response i got an error :
Akshay2218 (Thu, 12 Oct 2017 04:25:33 GMT):
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: The event hub has not been connected to the event source",
"stack": "Error: Error trying invoke business network. Error: The event hub has not been connected to the event source\n at _initializeChannel.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:836:34)\n at process._tickDomainCallback (internal/process/next_tick.js:135:7)"
}
}
lclclc (Thu, 12 Oct 2017 05:09:12 GMT):
I searched stackoverflow and found a command ```composer identity import -p explorer -u Admin -c /Users/magicliang/Desktop/Programming/Hyperledger/blockchain-explorer/fabric-docker-compose-svt/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k /Users/magicliang/Desktop/Programming/Hyperledger/blockchain-explorer/fabric-docker-compose-svt/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/8f960099fcd376789ff3e325a007f82f107a06a11258eb6517fce046077a638a_sk```
lclclc (Thu, 12 Oct 2017 05:10:22 GMT):
This command succeeded. Then I added a new profile, whose connection.json is: ``` 1 connection.json X
1 {
2 "type": "hlfv1",
3 "orderers": [
4 { "url" : "grpc://localhost:7050" },
5 { "url" : "grpc://localhost:8050" },
6 { "url" : "grpc://localhost:9050" }
7 ],
8 "ca": { "url": "http://0.0.0.0:7054"
9 },
10 "peers": [
11 {
12 "requestURL": "grpc://localhost:7051",
13 "eventURL": "grpc://localhost:7053"
14 },
15 {
16 "requestURL": "grpc://localhost:8051",
17 "eventURL": "grpc://localhost:8053"
18 }
19
20 ],
21 "keyValStore": "/Users/magicliang/.composer-credentials",
22 "channel": "mychannel",
23 "mspID": "Org1MSP",
24 "timeout": "300"
25 }```
lclclc (Thu, 12 Oct 2017 05:11:08 GMT):
But when deploy my .bna file, I still get error: ```$ composer network deploy -a charity-network.bna -p explorer -i PeerAdmin -s randomString
Deploying business network from archive: charity-network.bna
Business network definition:
Identifier: charity-network@0.0.1
Description: A charity network
✖ Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying install composer runtime. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")
Command failed```
lclclc (Thu, 12 Oct 2017 05:11:50 GMT):
Am I importing the wrong admin public/private key?
kuyseng (Thu, 12 Oct 2017 05:17:11 GMT):
Create Member in Transaction. It wrong with class name
kuyseng (Thu, 12 Oct 2017 05:17:11 GMT):
Create Member in Transaction. It wrong with class name
kuyseng (Thu, 12 Oct 2017 05:17:11 GMT):
Create Member in Transaction. It wrong with class name
lclclc (Thu, 12 Oct 2017 05:33:02 GMT):
If you define an independent participant, it should have independent post interface, does't it work for you?
kuyseng (Thu, 12 Oct 2017 05:43:12 GMT):
Independent post interface works for me. Just I want to use one transaction create participant with its own asset. e.g. RegisterUser.. I should create new user (participant) and new account (asset).
kuyseng (Thu, 12 Oct 2017 05:43:12 GMT):
Independent post interface works for me. Just I want to use one transaction create participant with its own asset. e.g. RegisterUser.. It should create new user (participant) and new account (asset).
kuyseng (Thu, 12 Oct 2017 05:43:41 GMT):
is it wrong concept with transaction?
lclclc (Thu, 12 Oct 2017 05:53:37 GMT):
per my understanding, every rest api should an atomic operation for a concept entity.
lclclc (Thu, 12 Oct 2017 05:53:56 GMT):
What you want is usually something like "application transaction"
lclclc (Thu, 12 Oct 2017 05:54:15 GMT):
You need a facade to fabricate them together
lclclc (Thu, 12 Oct 2017 05:54:27 GMT):
Not try to abuse the atomic api.
kuyseng (Thu, 12 Oct 2017 06:07:52 GMT):
@lclclc . thanks for your advice.
Akshay2218 (Thu, 12 Oct 2017 06:23:50 GMT):
cxxsdfdf
davidkel (Thu, 12 Oct 2017 07:34:47 GMT):
@nathanaw virtual box doesn't support nested virtualisation but you shouldn't need it. I use virtualbox all the time to run my environments
nathanaw (Thu, 12 Oct 2017 07:35:28 GMT):
@davidkel but if i run those commands within a virtual box, it requires docker to be installed
nathanaw (Thu, 12 Oct 2017 07:35:58 GMT):
@davidkel you meant you have ran hyperledger composer within an ubuntu virtualbox before?
davidkel (Thu, 12 Oct 2017 07:37:16 GMT):
@nathanaw I run fabric and composer inside a linux vm using virtual box. hyperledger fabric and composer docker images are linux images
davidkel (Thu, 12 Oct 2017 07:37:49 GMT):
@nathanaw as they are linux docker images there is no need for any virtualisation when running in a linux system
nathanaw (Thu, 12 Oct 2017 07:38:40 GMT):
so in summary i can run fabric samples and composer within a linux vm on virtualbox on Windows 10?
davidkel (Thu, 12 Oct 2017 07:46:12 GMT):
@nathanaw correct
nickyromeijn (Thu, 12 Oct 2017 07:55:57 GMT):
Is there a way to eager load relationships with the npm libs?
erNail (Thu, 12 Oct 2017 08:52:15 GMT):
The access control rules define, that an owner can only change his assets. Would the rule still work if a participants tries to change an asset without using the composer api ?
uber.twin (Thu, 12 Oct 2017 08:56:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=g4vcdYwZutiPz6NjZ) @theathibm [ ](https://chat.hyperledger.org/channel /composer?msg=AcQS54ptaG5Ao5yyh) @davidkel I can confirm that Composer API invocations seem to be restricted to a TPF call stack. This is consistent with my experience on this issue when I was encountering the same error trying to initialize an object's prototype property with a Factory object.
But I think one can do arbitrary initializations, outside a TPF call stack as long as they don't involve calling Composer API.
uber.twin (Thu, 12 Oct 2017 08:56:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=g4vcdYwZutiPz6NjZ) @theathibm [ ](https://chat.hyperledger.org/channel /composer?msg=AcQS54ptaG5Ao5yyh) @davidkel I can confirm that Composer API invocations seem to be restricted to a TPF call stack. This is consistent with my experience on this issue when I was encountering the same error trying to initialize a prototype's property with a Factory object.
But I think one can do arbitrary initializations, outside a TPF call stack as long as they don't involve calling Composer API.
davidkel (Thu, 12 Oct 2017 09:06:58 GMT):
@erNail you won't be able to change an asset without going through composer
razik29 (Thu, 12 Oct 2017 09:25:24 GMT):
Clipboard - October 12, 2017 10:25 AM
razik29 (Thu, 12 Oct 2017 09:25:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZjcBTG7uQvMfXDfnn) @mahoney1 I have done a docker ps, everything seems fine. Please see below the screenshot.
erNail (Thu, 12 Oct 2017 09:42:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fECGaJL4xHCyyQuxh) @davidkel Thakns, nice to know. Why exactly is that ?
nickyromeijn (Thu, 12 Oct 2017 11:15:40 GMT):
Is supporting node8 currently on the roadmap? running into some compat issues regarding the npm modules and am wondering if it's going to be supported in the near future :)
mastersingh24 (Thu, 12 Oct 2017 11:41:05 GMT):
@nickyromeijn -
v1.0.x will be Node 6.9.x
v1.1.x will move to Node 8.4.x (and 6.9.x)
nickyromeijn (Thu, 12 Oct 2017 11:41:36 GMT):
Great! Thanks
erNail (Thu, 12 Oct 2017 12:00:32 GMT):
Is there a way to prevent a participant from updating a certain attribute of an asset ?
davidkel (Thu, 12 Oct 2017 12:20:05 GMT):
@nickyromeijn for composer official node 8 support is coming, however I am not aware of any problems using node 8 as yet, what problems are you having ?
davidkel (Thu, 12 Oct 2017 12:27:23 GMT):
@erNail No, sorry. There is an outstanding issue for that, see https://github.com/hyperledger/composer/issues/983
nickyromeijn (Thu, 12 Oct 2017 12:32:18 GMT):
@davidkel i am unable to use the composer-client & common module when using node8 it keeps throwing the error it cannot find the connector-module-hlfv1; works fine under node6 though
davidkel (Thu, 12 Oct 2017 12:39:53 GMT):
@nickyromeijn Could you paste the entire error it hopefully gives an indication of why it can't find it. Also what platform, node version, npm version are you using ? also the output of `npm ls -g grpc` would be great as well
nickyromeijn (Thu, 12 Oct 2017 12:47:09 GMT):
@davidkel node 8.6.0 npm 5.3.0 on OSX
Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1". Error: Cannot find module '/Users/nickyromeijn/Gitrepos/hyperledger/PGBB/network-definition/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node'
nickyromeijn (Thu, 12 Oct 2017 12:47:48 GMT):
@davidkel
npm ls -g grpc output:
/Users/nickyromeijn/.nvm/versions/node/v8.6.0/lib
└── (empty)
davidkel (Thu, 12 Oct 2017 12:50:39 GMT):
@nickyromeijn ok, so for you the install of composer-cli failed as it failed to install the grpc dependent module. Might be worth trying to install the CLI again. grpc is usually downloaded as a prebuilt binary for your platform, but if that fails it attempts to build it and for that python v2.7 and xcode need to be installed and I gather also that for Mac OS there may also be an issue with the specific version of python 2.7 as well
davidkel (Thu, 12 Oct 2017 12:50:59 GMT):
Although I cannot vouch for that as I don't use Mac OS to run composer
nickyromeijn (Thu, 12 Oct 2017 12:52:42 GMT):
@davidkel Alright i'll try reinstalling the CLI. Would that mean a client project is dependent on a global install of GRPC? (i'm asking this because i'm trying to run a nodejs app from within a mobile application)
davidkel (Thu, 12 Oct 2017 12:53:55 GMT):
@nickyromeijn composer requires the fabric node sdk which requires grpc.
davidkel (Thu, 12 Oct 2017 12:54:34 GMT):
so when you declare your dependency on any of the composer modules and do npm install it will pull down grpc
nickyromeijn (Thu, 12 Oct 2017 12:58:14 GMT):
@davidkel Hm i understand. Wondering if what i want to try is even possible then. I'm currently attempting to cut out the restserver as middleman and directly interface with fabric using the composer / fabric sdk. I was hoping this would get the job done: https://github.com/janeasystems/nodejs-mobile
im getting the feeling it's nearing over-engineering instead of just using the composer-rest server though
nickyromeijn (Thu, 12 Oct 2017 12:58:14 GMT):
@davidkel Hm i understand. Wondering if what i want to try is even possible then. I'm currently attempting to cut out the restserver as middleman and directly interface with fabric using the composer / fabric sdk. I was hoping this would get the job done: https://github.com/janeasystems/nodejs-mobile
im getting the feeling it's nearing over-engineering. I might just use the rest-server instead if this is going to take too much time : )
mahoney1 (Thu, 12 Oct 2017 13:01:30 GMT):
the Community call today is at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss work in progress, the latest release and what's upcoming -best regards Paul
nickyromeijn (Thu, 12 Oct 2017 13:04:30 GMT):
@davidkel reinstalling composer-cli under node 8 did not fix the error by the way
davidkel (Thu, 12 Oct 2017 13:11:52 GMT):
@nickyromeijn I would hope that somewhere there is an error saying why grpc failed to install
nickyromeijn (Thu, 12 Oct 2017 13:13:13 GMT):
@davidkel I did not get an error, npm ls -g grpc showed it was installed as well
Users/nickyromeijn/.nvm/versions/node/v8.6.0/lib
└─┬ composer-cli@0.13.2
└─┬ composer-admin@0.13.2
└─┬ composer-connector-hlfv1@0.13.2
├─┬ fabric-client@1.0.1
│ └── grpc@1.2.4
└── grpc@1.6.0
davidkel (Thu, 12 Oct 2017 13:13:46 GMT):
@nickyromeijn so what is the error now that you are getting ?
nickyromeijn (Thu, 12 Oct 2017 13:14:13 GMT):
The same as before, it's still not able to find the connector-module
mna2016 (Thu, 12 Oct 2017 13:16:52 GMT):
Hi All, I am getting this error "exceptopm error:Error: Use Serializer.toJSON to convert resource instances to JSON objects." after I call getAssetRegistry()
davidkel (Thu, 12 Oct 2017 13:17:21 GMT):
@nickyromeijn yes, but what reason does it give this time ?
nickyromeijn (Thu, 12 Oct 2017 13:26:15 GMT):
@davidkel Error: Failed to load connector module "composer-connector-hlfv1" for connection profile "hlfv1". Error: Cannot find module '/Users/nickyromeijn/Gitrepos/hyperledger/PGBB/network-definition/node_modules/fabric-client/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node'
davidkel (Thu, 12 Oct 2017 13:27:00 GMT):
@nickyromeijn so really grpc has failed to install again.
mna2016 (Thu, 12 Oct 2017 13:27:18 GMT):
I think the error is returned for : return assetRegistry.get(assetKey); I am passing the assetKey as 6 digit numeric.
nickyromeijn (Thu, 12 Oct 2017 13:38:41 GMT):
@davidkel Sorry, it was my bad. I just removed all modules from my system and reinstalled everything under node8. It now appears it work. Guess i messed up when switching node versions. Thanks for your info :)
nickyromeijn (Thu, 12 Oct 2017 13:38:41 GMT):
@davidkel Sorry, it was my bad. I just removed all modules from my system and reinstalled everything under node8. It now appears to work. Guess i messed up when switching node versions. Thanks for your info :)
erNail (Thu, 12 Oct 2017 13:39:35 GMT):
When creating new assets, is it the expected behaviour, that the owner doesn't have to exist ? In the playground, i can create assets that have a non-existing owner.
erNail (Thu, 12 Oct 2017 13:42:02 GMT):
e.g. non-existing participant
einarpersson (Thu, 12 Oct 2017 13:51:21 GMT):
Has joined the channel.
einarpersson (Thu, 12 Oct 2017 13:55:40 GMT):
Hi! I want a user to be able to create a asset through a "CreateAsset"-transaction (which also should handle setting the correct default values such as value = 0). But how is the assetId populated? If I just call factory.newResource(NS,'Account') it fails, but if I hardcode a id such as factory.newResource(NS,'Account', '12345') it's OK, but of course I don't want to do it that way
mna2016 (Thu, 12 Oct 2017 13:58:08 GMT):
@davidkel please have a look at this: assetRegistry.get(assetKey); is returning me an error "Use Serializer.toJSON to convert resource instances to JSON objects. I am sure earlier my call was running fine and this is an error that has popped up for the first time.
Jonny (Thu, 12 Oct 2017 14:06:32 GMT):
Has joined the channel.
theathibm (Thu, 12 Oct 2017 14:06:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mYToTh8h4b9FLHSfg) @uber.twin Hi uber.twin, my initializations that were outside the function declarations didn't make use of any composer API's during intialization, so I'm assuming/concluding that any initializations in the /lib folder js files should be avoided.
jfodale (Thu, 12 Oct 2017 14:08:21 GMT):
I'm trying to write an ACL rule that needs to do an asset lookup. I've written a small transaction in my scripts file that is invoked by the rule, but whenever this transaction tries to access the assetRegistry, the transaction bombs. No clear error is returned. The ACL file for sure invokes the transaction (I can see console.log() statements at the start), it just goes down on the assetRegistry lookups. Any idea why this is?
jfodale (Thu, 12 Oct 2017 14:09:46 GMT):
@einarpersson If you have a property that is unique, you can use that as the identifier and pass that value in as a variable into the third parameter of newResource(). If you have a "multi-part" key or identifier, what we've done in the past is concatenate multiple fields together and put it into the asset ID
jfodale (Thu, 12 Oct 2017 14:11:22 GMT):
something like:
newResource(NS,'Account', tx.firstName + ":" + tx.lastName + ":" + tx.emailAddress);
uber.twin (Thu, 12 Oct 2017 14:14:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=aRgQqFYzKYicvQEy4) @theathibm I've got a JS object implementing a java like Enum type and I use it to instatiate a couple of Enum domains and it seems to work alright
theathibm (Thu, 12 Oct 2017 14:15:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rB83dXQujcBJW6ihT) @uber.twin lucky you, I will continue to avoid initializations outside of function declarations.
uber.twin (Thu, 12 Oct 2017 14:16:08 GMT):
:)
einarpersson (Thu, 12 Oct 2017 14:16:21 GMT):
@jfodale Thanks for your answer. So the id argument is not optional and I need to generate the unique id myself
jfodale (Thu, 12 Oct 2017 14:17:07 GMT):
as far as I'm aware, yes :) I asked in here once if there was a function that would auto-generate a one-up number for the ID, and someone responded with "not yet"
einarpersson (Thu, 12 Oct 2017 14:17:17 GMT):
ah, ok!
jfodale (Thu, 12 Oct 2017 14:19:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NchhW8jyk36JRSDG9)
I get a stack trace when it tries to invoke the assetRegistry:
at aclRules.reduce.then (node_modules\composer-runtime\lib\accesscontroller.js:135:23)
mna2016 (Thu, 12 Oct 2017 14:21:57 GMT):
assetregistry.get() is failing with Error: Use Serializer.toJSON to convert resource instances to JSON objects. Is this a result of an ongoing update? The composer network that was working is throwing this error now.
einarpersson (Thu, 12 Oct 2017 14:22:21 GMT):
so now I tried to require('uuid') in the transaction processer file but it says require is not defined. Can't I use external libs???
adrianblakey (Thu, 12 Oct 2017 14:26:17 GMT):
@einarpersson no you can't - and you wouldn't want to because it'll be called in every peer and yield a different value which will not allow the transaction to be agreed upon
einarpersson (Thu, 12 Oct 2017 14:28:01 GMT):
Ok so it has to be pure and deterministic etc?
so what would be the right way of going about this?
If you want the transaction logic to do some calculations and use a external calc lib for example.
Inject it somehow?
adrianblakey (Thu, 12 Oct 2017 14:29:49 GMT):
@einarpersson I believe the composer team are in the process of implementing the capability to require libs. - Can someone else confirm? The right way is to pass the value for the identity from the client.
Vadim (Thu, 12 Oct 2017 14:31:54 GMT):
Has left the channel.
t_stephens67 (Thu, 12 Oct 2017 14:37:20 GMT):
I have 3 peers on 3 separate vm's using docker swarm. I can create a channel on the host peer and add the other 2 peers to the channel. When I attempt to deploy my network.bna file I get a connect failed. I have 2 connection profiles one with only the host peer and one with all 3 peers. when deploying onto only the host peer it is successful but when I try with all 3 peers it throws the error. If anyone has successfully done this I could use some help.
einarpersson (Thu, 12 Oct 2017 14:43:41 GMT):
@adrianblakey Thanks. Ok, hmmm...
nickyromeijn (Thu, 12 Oct 2017 14:49:28 GMT):
My ACL file is being completely ignored it seems. i'm deploying using the javascript api
BusinessNetworkDefinition.fromDirectory(path.resolve(__dirname, '..'));
It doesn't matter what i put in the ACL file i'm always allowed to do everything with any identity. Anyone have an idea what could be causing this?
einarpersson (Thu, 12 Oct 2017 14:50:18 GMT):
Last question for today: I'm both using the composer-rest-server generator to serve a api, but also the composer-playground (which I've managed to hook up to the same underlying fabric). But I would like to pre-seed the network and only use the playground to showcase that particular network, is that possible? Right now it gives the visitor the option to create its own networks and only browse my network after receiving a CardID on file. I want to use the playground to showcase my network, not showcase the playground itself.
Does my question make any sense? It it possible?
einarpersson (Thu, 12 Oct 2017 14:50:21 GMT):
:)
einarpersson (Thu, 12 Oct 2017 14:51:22 GMT):
I'd like to provide a public url to my hosted playground where ppl can see and interact with my network (but not create new networks...)
nickyromeijn (Thu, 12 Oct 2017 15:12:35 GMT):
Hm apparently deploying your network definition through the API does not update the ACL? I had to delete all my containers and redeploy before it started working
nickyromeijn (Thu, 12 Oct 2017 16:03:16 GMT):
So after i updated my network using composer network update i cannot reference to old assets and participants anymore; composer keeps saying it doesn't exist while creating an asset or participant with the same id as the old one gives the error that it actually does exist....
what's going on here? is this the expected behaviour?
mahoney1 (Thu, 12 Oct 2017 16:05:20 GMT):
the Community call is now on - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - cheers Paul
a.hyper (Thu, 12 Oct 2017 16:45:09 GMT):
Has joined the channel.
michaelgriffith (Thu, 12 Oct 2017 16:54:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SXggQbaD7LxswruDn) @einarpersson How did you get your composer-playground to hookup to the developer fabric? It seems I have both running and they are in separate containers. I can deploy a bna using the composer-cli tools but when I pull up the composer in the browser it doesn't see my deployed bna because its like it has its own fabric in the container, not using the same one the rest-server and composer-cli are using.
douglasthiel (Thu, 12 Oct 2017 18:02:30 GMT):
I’m at the end of the [HyperLedger Composer tutorial](https://hyperledger.github.io/composer/tutorials/developer-guide.html).
The “my-app Application” page shows up on
“http://localhost:4200”
But clicking on the “Assets/Commodity” menu choice gives me this error:
“**Error**: Could not connect to REST server. Please check your configuration details”
What should I check?
douglasthiel (Thu, 12 Oct 2017 18:17:05 GMT):
Never mind, the step prior to this told me to stop the rest server. Now restarted and the error is gone.
jtonline (Thu, 12 Oct 2017 18:21:28 GMT):
Apologies for the slight delay getting the hosted playground updated but hopefully 0.14.0 is finally ready for action. This release includes *breaking changes* so make sure you read the release notes! https://github.com/hyperledger/composer/releases/tag/v0.14.0 (Plus there is the second installment of the release comic in there!)
nickyromeijn (Thu, 12 Oct 2017 18:37:06 GMT):
@jtonline Awesome! :)
nickyromeijn (Thu, 12 Oct 2017 18:37:48 GMT):
How would i go about defining an ACL rule which defines an identity can only edit it's assigned participant?
JoshuaRippon (Thu, 12 Oct 2017 19:42:53 GMT):
Hi @jtonline. I don't know whether this is due to the recent changes or if it's just me being slow! When I go to issue a new ID on playground, it immediately puts the user in my wallet without it bringing up the option. Therefore I have no way of getting the user secret. I am following this tutorial https://hyperledger.github.io/composer/playground/id-cards-playground.html Am I missing something here?
manojamin (Thu, 12 Oct 2017 19:58:20 GMT):
Has joined the channel.
manojamin (Thu, 12 Oct 2017 20:00:21 GMT):
I had my BNA working fine until this NYC morning. Now, I am getting "t: Participant 'org.hyperledger.composer.system.NetworkAdmin#admin' does not have 'CREATE' access to resource 'my.namespace.XParticipant#PID'" - any idea why?
manojamin (Thu, 12 Oct 2017 20:02:53 GMT):
BTW: I have added full access to 'org.hyperledger.composer.system.**' resource for all hl participants (admin being one I guess as it was working with this)
rddill (Thu, 12 Oct 2017 20:42:50 GMT):
Has joined the channel.
manojamin (Thu, 12 Oct 2017 20:43:27 GMT):
It turned out that there are breaking changes (https://github.com/hyperledger/composer/releases) and adding "What do I need to do to my old BNAs?" listed permission has solved my issue!
rddill (Thu, 12 Oct 2017 20:43:44 GMT):
The release notes address this, at least in part. you have to make changes to both the permissions file and also to the deploy command line options
holocron (Thu, 12 Oct 2017 22:35:31 GMT):
Has joined the channel.
holocron (Thu, 12 Oct 2017 22:36:09 GMT):
I'm having some trouble trying to deploy a bna for the first time..
```
Error: Error trying deploy. Error: Error trying to instantiate composer runtime. Error: chaincode error (status: 500, message: chaincode instantiation policy violated(Failed to authenticate policy))
Command failed
```
holocron (Thu, 12 Oct 2017 22:36:23 GMT):
any clues on what to check? I so see chaincode got installed but not instantiated
holocron (Thu, 12 Oct 2017 22:36:23 GMT):
any clues on what to check? I do see chaincode got installed but not instantiated
holocron (Thu, 12 Oct 2017 22:36:46 GMT):
peer log shows
```
[31m2017-10-12 22:11:17.379 UTC [endorser] ProcessProposal -> ERRO 02f[0m simulateProposal() resulted in chaincode response status 500 for txid: ac6179fed44d8c57a389f00084ba2de09f79edbd3c7a7640c71627946ffeb373
[31m2017-10-12 22:11:17.471 UTC [eventhub_producer] Chat -> ERRO 030[0m error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
```
bennettneale (Thu, 12 Oct 2017 22:50:05 GMT):
Has joined the channel.
asaningmaxchain (Fri, 13 Oct 2017 07:42:36 GMT):
how can i build a image from the `composer` source code
asaningmaxchain (Fri, 13 Oct 2017 07:43:32 GMT):
@here
nippleDonkey (Fri, 13 Oct 2017 07:44:20 GMT):
composer archive create -a dist/example.bna --sourceType dir --sourceName example-network
asaningmaxchain (Fri, 13 Oct 2017 07:52:00 GMT):
@nippleDonkey this command is used to create a business network archive
nippleDonkey (Fri, 13 Oct 2017 08:04:24 GMT):
Sorry I thought that's what you meant by image.
einarpersson (Fri, 13 Oct 2017 08:05:13 GMT):
what is the difference between an asset and a concept? I didn't see concepts mentioned in the docs (maybe I missed it?) but I've seen it in sample projects
EdProsser (Fri, 13 Oct 2017 08:07:30 GMT):
Hey! Concepts are discussed in our modelling language docs here: https://hyperledger.github.io/composer/reference/cto_language.html
EdProsser (Fri, 13 Oct 2017 08:07:57 GMT):
They're separate from assets, but can be extended in the same way.
EdProsser (Fri, 13 Oct 2017 08:09:19 GMT):
Also, they don't need an identifying field. :)
einarpersson (Fri, 13 Oct 2017 08:24:42 GMT):
@EdProsser ahh thanks!
nickyromeijn (Fri, 13 Oct 2017 08:30:18 GMT):
Is there a proper way to debug conditions in the permission file?
jtonline (Fri, 13 Oct 2017 08:38:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yPmHLtn5srXKRwfXH) @JoshuaRippon You only get the options for what to do with a new identity with a real fabric connection. Since the Web Browser connection is only a simulated environment using your browsers local storage, giving someone else the secret won't work
mbwhite (Fri, 13 Oct 2017 08:43:01 GMT):
@nickyromeijn can you expand on what you doing please? ACL files can be tricky to debug - especially as it's for security it's tricky to know how much to code in the logs..
JoshuaRippon (Fri, 13 Oct 2017 08:43:30 GMT):
Thanks @jtonline!
nickyromeijn (Fri, 13 Oct 2017 08:44:00 GMT):
@mbwhite Im running into an issue where an equal to statement succeeds in my unit tests but does not pass the condition defined in the ACL
nickyromeijn (Fri, 13 Oct 2017 08:45:20 GMT):
@mbwhite So i kinda want to check what the value is of the resource when i'm trying to evaluate it in the ACL; can't figure out why it doesn't work while the unit tests say it should
mbwhite (Fri, 13 Oct 2017 08:52:03 GMT):
@nickyromeijn can you share what the ACL is please?
nickyromeijn (Fri, 13 Oct 2017 08:56:49 GMT):
rule RSReadContract {
description: "Allow participant to read a contract he or she signed"
participant(participant): "nl.government.pgb.Contractee"
operation: ALL
resource(contract): "nl.government.pgb.Contract"
condition:(participant.getIdentifier() == contract.signatureOne.signer.getIdentifier())
action: ALLOW
}
asset Contract identified by contractId {
o String contractId
--> Signature signatureOne optional
--> Signature signatureTwo optional
--> Agreement agreement
}
asset Signature identified by signature {
o String signature
--> Contractee signer
}
nickyromeijn (Fri, 13 Oct 2017 08:56:49 GMT):
rule RSReadContract {
description: "Allow participant to read a contract he or she signed"
participant(participant): "nl.Contractee"
operation: ALL
resource(contract): "nl.Contract"
condition:(participant.getIdentifier() == contract.signatureOne.signer.getIdentifier())
action: ALLOW
}
asset Contract identified by contractId {
o String contractId
--> Signature signatureOne optional
--> Signature signatureTwo optional
--> Agreement agreement
}
asset Signature identified by signature {
o String signature
--> Contractee signer
}
nickyromeijn (Fri, 13 Oct 2017 08:59:56 GMT):
@mbwhite in the unit test where the contract is signed i'm asserting that signatureOne.signer.$identifier equals the contractee.$identifier and it succeeds
a bit further on in my tests i'm trying to do a read operation as the contractee with above ACL but that fails because it says it cannot find the contract on the chain (no read access)
mbwhite (Fri, 13 Oct 2017 09:02:02 GMT):
Can appreciate the confusion - that ACL on a first would be appear to be what you want... it's worth checking if there is any rule - *before* that in the file that might apply to the 'Contractee' and the 'Contract' that would deny access.
bh4rtp (Fri, 13 Oct 2017 09:02:24 GMT):
@nickyromeijn can i access states of caller chaincode within the invoked chaincode?
nickyromeijn (Fri, 13 Oct 2017 09:03:01 GMT):
@bh4rtp Don't ask me, i'm a new guy here as well. Figuring out the platform as i go :)
nickyromeijn (Fri, 13 Oct 2017 09:04:20 GMT):
@mbwhite There are no denying rules above it. Even moving said rule to the top of the file doesn't change the outcome :(
erNail (Fri, 13 Oct 2017 09:07:14 GMT):
Hi, after generating the sekleton angular app, when trying to access it via localhost:4200, i get a "Invalid Host Header". Is there any workaround for it ? Seems to be an issue with the new webpack security updates.
nickyromeijn (Fri, 13 Oct 2017 09:19:07 GMT):
@mbwhite Getting back to ACL's in general, how does the system map an identity to a participant exactly? For example how do i define a rule which states only an identity may update their own mapped participant but no others.
nickyromeijn (Fri, 13 Oct 2017 09:24:40 GMT):
@mbwhite Fixed the issue. It was related to no rule for accessing the signature :)
mbwhite (Fri, 13 Oct 2017 09:27:07 GMT):
so you where blocked from accesing the signature !
mbwhite (Fri, 13 Oct 2017 09:28:59 GMT):
Identities are linked to participants... so if I use the identity 'mbw' to connect, and that has been mapped to 'developer' . then the acl rule will state that a developer can only update their own record.
vudathasaiomkar (Fri, 13 Oct 2017 09:29:55 GMT):
Has joined the channel.
nickyromeijn (Fri, 13 Oct 2017 09:33:47 GMT):
Ah so that is automatically enforced; great :)
erNail (Fri, 13 Oct 2017 10:19:36 GMT):
I'm writing a SetupDemo transaction for my business-model. Before using the 'factory.newRelationship()'-function, does the linked resource have to exist in the registry ? Or is it enough if you used 'factory.newResource()' for the linked resource ?
WimGof (Fri, 13 Oct 2017 10:20:37 GMT):
Has joined the channel.
WimGof (Fri, 13 Oct 2017 10:21:07 GMT):
Hi. I'm deploying a BNA file to a blockchain network, using composer. I'm getting the below error message.
Can anybody tell me where to look to understand and solve this issue?
$ composer network deploy -a ./DEV/my-network.bna -p kbc-kbcchannel -i admin -s jaja
Deploying business network from archive: ./DEV/my-network.bna
Business network definition:
Identifier: my-network@0.0.10
Description: HUB Composer Network
✖ Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying to instantiate composer runtime. Error: chaincode error (status: 500, message: chaincode instantiation policy violated(Failed to authenticate policy))
Command failed
davidkel (Fri, 13 Oct 2017 10:47:00 GMT):
@WimGof looks like you don't have channel admin authority to instantiate the composer runtime. Deploy does a composer runtime install followed by a composer network start. Depending on how your fabric and channel are set up these 2 separate actions might be allowed using the same authority, but in your case it would appear the a different authority is required to perform the instantiate whereas you have the correct authority to perform the install
davidkel (Fri, 13 Oct 2017 10:47:00 GMT):
@WimGof looks like you don't have channel admin authority to instantiate the composer runtime. Deploy does a composer runtime install followed by a composer network start. Depending on how your fabric and channel are set up these 2 separate actions might be allowed using the same authority, but in your case it would appear that a different authority is required to perform the instantiate whereas you have the correct authority to perform the install
davidkel (Fri, 13 Oct 2017 10:47:00 GMT):
@WimGof looks like you don't have channel admin authority to instantiate the composer runtime. Deploy does a composer runtime install followed by a composer network start. Depending on how your fabric and channel are set up these 2 separate actions might be allowed using the same authority, but in your case it would appear that a different authority is required to perform the instantiate whereas you have the correct authority to perform the install. I would think you need to look at how your fabric and channel have been configured
SumitTembe (Fri, 13 Oct 2017 11:04:11 GMT):
Is there any way i can use wallets or AD to authenticate user when user try to access composer-rest apis?
SumitTembe (Fri, 13 Oct 2017 11:05:13 GMT):
i have checked https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html but not looking for this. I want to utilize existing infra for this.
glotov (Fri, 13 Oct 2017 11:07:54 GMT):
hi! Does Composer support multiple versions of the bna at the same time? In raw Fabric there is a parameter - version of the chaincode to instantiate/install. But does the Composer support it?
einarpersson (Fri, 13 Oct 2017 11:18:51 GMT):
I'm struggling with understanding the implications of the ACL and it’s relation to CRUD vs transaction processors.
einarpersson (Fri, 13 Oct 2017 11:19:01 GMT):
Are the transaction processors always run within the “security context” of a participant?
Consider the following scenario: I don't want Alice to be able to update Bobs assets. However, I’d like Alice to be able to submit a transaction that triggers a change in Bobs asset. But is that possible? Or does the latter imply that Alice has to have UPDATE ALLOW for Bobs assets? Or are the transaction processors run in an “admin context”?
davidkel (Fri, 13 Oct 2017 11:20:55 GMT):
@einarpersson as of v0.14.0 of composer, TPs are always run with an associated participant
einarpersson (Fri, 13 Oct 2017 11:24:45 GMT):
@davidkel So if I understand it correctly, that means that if the -effect- of a transaction is that Bobs assets are updated, then the submitter of the transaction (Alice) need to have rights for that. Correct?
davidkel (Fri, 13 Oct 2017 11:25:46 GMT):
@einarpersson if you have a permissions.acl file then yes you need to grant permissions to allow an UPDATE action
nickyromeijn (Fri, 13 Oct 2017 11:33:09 GMT):
@einarpersson check the documentation for transactions within an ACL rule. I just implemented exactly what you are asking :)
einarpersson (Fri, 13 Oct 2017 11:34:44 GMT):
```rule SampleConditionalRuleWithTransaction {
description: "Description of the ACL rule"
participant(m): "org.example.SampleParticipant"
operation: READ, CREATE, UPDATE
resource(v): "org.example.SampleAsset"
transaction(tx): "org.example.SampleTransaction"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}```
einarpersson (Fri, 13 Oct 2017 11:34:54 GMT):
@nickyromeijn this you mean?
nickyromeijn (Fri, 13 Oct 2017 11:34:56 GMT):
@einarpersson yes, thats the one
einarpersson (Fri, 13 Oct 2017 11:35:25 GMT):
So then Alice gets access to Bobs assets but only if it's a certain kind of transaction? :D
nickyromeijn (Fri, 13 Oct 2017 11:35:51 GMT):
@einarpersson that basically defines a sampleParticipant is only allowed to READ,CREATE,UPDATE a sampleAsset when executing sampletransaction and when the assetowner is the same as the participant executing the transaction
nickyromeijn (Fri, 13 Oct 2017 11:36:16 GMT):
@einarpersson that sounded better in my head, but i hope you get it :D and yes to your question
einarpersson (Fri, 13 Oct 2017 11:36:51 GMT):
@nickyromeijn cool!
nickyromeijn (Fri, 13 Oct 2017 11:37:09 GMT):
So i just deployed my network through the javascript API (it was sucessful / no errors), however when i load up the fabric-explorer it says there are 0 chaincodes installed? What's up with that? Anyone knows?
jcbombardelli (Fri, 13 Oct 2017 12:58:39 GMT):
Hi guys and girls,
How to i find a infos de "enrollIiD" e "enrollSecret" info when deploy's the new BNA ?
jcbombardelli (Fri, 13 Oct 2017 13:05:33 GMT):
Hi guys and girls,
How to i find the info of "enrollIiD" and "enrollSecret" when deploy's the new BNA ?
einarpersson (Fri, 13 Oct 2017 13:21:29 GMT):
What does the following ACL rule really means?
```rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}```
einarpersson (Fri, 13 Oct 2017 13:21:52 GMT):
Does it talk about what an system admin can do, or what "any participant" can do?
einarpersson (Fri, 13 Oct 2017 13:24:50 GMT):
@jcbombardelli I think the enrolliD should be "admin" and that the secret can be any string
jcbombardelli (Fri, 13 Oct 2017 13:43:38 GMT):
@einarpersson i'm trying, but receive error 400 - Authorization failure. I'm new on Hyperledger Fabric and composer and de Docs dont explain exactly the origin the infos
einarpersson (Fri, 13 Oct 2017 13:44:20 GMT):
hmm which version do you have? I saw something about breaking changes that related to the admin user
jcbombardelli (Fri, 13 Oct 2017 13:45:57 GMT):
Composer v0.13.2
Docker 15.05.0-ce
davidkel (Fri, 13 Oct 2017 13:49:18 GMT):
@jcbombardelli For deploying a bna, the enrollment id and secret depend on your fabric setup, if you are following the tutorials or using our fabric development server, then you need to use the enrollment id of PeerAdmin and the secret is required but not used so can be anything
davidkel (Fri, 13 Oct 2017 13:49:18 GMT):
@jcbombardelli For deploying a bna, the enrollment id and secret depend on your fabric setup, if you are following our tutorials or using our fabric development server, then you need to use the enrollment id of PeerAdmin and the secret is required but not used so can be anything. For example `composer network deploy -a x.bna -p hlfv1 -i PeerAdmin -s blah`
davidkel (Fri, 13 Oct 2017 13:49:18 GMT):
@jcbombardelli For deploying a bna, the enrollment id and secret depend on your fabric setup, if you are following our tutorials or using our fabric development server, then you need to use the enrollment id of PeerAdmin and the secret is required but not used so can be anything. For example `composer network deploy -a x.bna -p hlfv1 -i PeerAdmin -s blah`. Note this applies to composer v0.13.2. If you plan or are using v0.14.0 you need to read the release notes to understand the changes to the security model.
mahoney1 (Fri, 13 Oct 2017 13:50:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=F2QmbSoPWduWDgPee) @einarpersson allows Participants to use system registries, otherwise nothing will be permitted. Eg. access to org.hyperledger.composer.system.HistorianRecord - the resources in that business network (eg, data, instances of participants, assets etc are controlled by the business network ACLs applied to control those - and obviously access to Historian records by Participants etc can be restricted too)
einarpersson (Fri, 13 Oct 2017 13:53:29 GMT):
@mahoney1 aha. So if I understand it correctly: It allows Participants to USE system registries - but the registries will not show any info about the content of the registries unless allow by other rules?
jcbombardelli (Fri, 13 Oct 2017 13:59:31 GMT):
Many thanks @einarpersson and @davidkel, I had already tried the PeerAdmin user, but without putting the password parameter and failed, but now it worked. Thank you so!!! <3
zupan (Fri, 13 Oct 2017 14:01:41 GMT):
I have an asset where the ID is a composite key of a participant and one other asset type (composite key). How can I form a rule where the condition checks if participants in the id equals the one that created this asset?
zupan (Fri, 13 Oct 2017 14:01:41 GMT):
I have an asset where the ID is a composite key of a participant id and one other asset type id. How can I form a rule where the condition checks if participants in the id equals the one that created this asset?
nickyromeijn (Fri, 13 Oct 2017 14:33:26 GMT):
How exactly are key protected in composer-rest-server? Are all certificates and keys just stored on the machine composer-rest-server is running on?
E.Gutarra.Tibco (Fri, 13 Oct 2017 14:46:50 GMT):
Has joined the channel.
E.Gutarra.Tibco (Fri, 13 Oct 2017 14:47:31 GMT):
Hi all, I'm having problems running this command. I don't know what's wrong I'm copying and pasting the command as is from the developer guide.
E.Gutarra.Tibco (Fri, 13 Oct 2017 14:47:43 GMT):
composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString -A admin -S
E.Gutarra.Tibco (Fri, 13 Oct 2017 14:47:50 GMT):
Unknown arguments: A, S
nippleDonkey (Fri, 13 Oct 2017 14:48:16 GMT):
sounds like you need to update composer
nippleDonkey (Fri, 13 Oct 2017 14:48:29 GMT):
to 0.14 -A and -S was added then
E.Gutarra.Tibco (Fri, 13 Oct 2017 14:48:34 GMT):
[qa@lin64vm369 dist]$ composer -v
v0.13.2
E.Gutarra.Tibco (Fri, 13 Oct 2017 14:48:41 GMT):
Oh.. I see
nippleDonkey (Fri, 13 Oct 2017 14:48:49 GMT):
if you dropped -A -S you should be ok
E.Gutarra.Tibco (Fri, 13 Oct 2017 14:49:01 GMT):
ok let me try dropping that
nippleDonkey (Fri, 13 Oct 2017 14:49:15 GMT):
FYI: https://github.com/hyperledger/composer/releases
E.Gutarra.Tibco (Fri, 13 Oct 2017 14:49:18 GMT):
that seems to work.
nippleDonkey (Fri, 13 Oct 2017 14:49:25 GMT):
explains the new addition
E.Gutarra.Tibco (Fri, 13 Oct 2017 14:50:07 GMT):
great thank you nippleDonkey.
nippleDonkey (Fri, 13 Oct 2017 14:50:11 GMT):
np
mahoney1 (Fri, 13 Oct 2017 14:52:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=D3Cvp2mSSeeqxbCb9) @jcbombardelli if you've used the Development tools environment to stand up your runtime Fabric, https://hyperledger.github.io/composer/installing/development-tools.html then the deploy command uses `-i PeerAdmin -s randomString` - not `admin` (who does not have the authority to deploy a BNA in the dev environment setup).
mahoney1 (Fri, 13 Oct 2017 14:58:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gfRjDk9hzMWEZBD5B) @SumitTembe https://www.npmjs.com/package/passport-activedirectory or have a read of this https://stackoverflow.com/questions/21439030/passport-active-directory-node-js
mahoney1 (Fri, 13 Oct 2017 15:02:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fXRB38nhz5ZmKzRDL) @erNail factory.newRelationship() should work, But likely you won't get a problem (eg submitting a transactoin) until you use it. Example of function use here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/test/perishable.js
nickyromeijn (Fri, 13 Oct 2017 15:09:58 GMT):
I honestly do not understand how the rest-server multi-user part is supposed to work underwater. What do i need to imagine with wallets, the way they are stored and why it's not persisted? How does it work? Anybody who can help me out?
nippleDonkey (Fri, 13 Oct 2017 15:13:55 GMT):
@nickyromeijn have you looked at this:
https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
nippleDonkey (Fri, 13 Oct 2017 15:14:17 GMT):
it uses mongodb to persist the data
nickyromeijn (Fri, 13 Oct 2017 15:19:32 GMT):
That i know, but what manages the priv,pub and certificates files/keys? Are they just stored in mongo for every database manager to see?
varunagarwal (Fri, 13 Oct 2017 15:21:57 GMT):
Has joined the channel.
varunagarwal (Fri, 13 Oct 2017 15:22:57 GMT):
Hi, I have developed and tested a PoC with solidity and am looking to shift to hyperledger for a larger rollout. Is there anyone here who could answer a few questions for me please?
varunagarwal (Fri, 13 Oct 2017 15:23:42 GMT):
I am proficient in javascript but have never used Go, so is it possible for me to use composer for an end to end product without having to use Go at any point?
E.Gutarra.Tibco (Fri, 13 Oct 2017 15:27:59 GMT):
Hmm I'm running into some error when I'm trying to start the generated web application:
E.Gutarra.Tibco (Fri, 13 Oct 2017 15:28:15 GMT):
[1] > my-app@0.0.1 app /home/qa/my-network/my-app
[1] > composer-rest-server -n my-network -p hlfv1 -i admin -s adminpw -N never -P 3000
[1]
[1] Discovering types from business network definition ...
[1] Connection fails: Error: Error trying to ping. Error: Composer runtime (0.13.2) is not compatible with client (0.14.0)
[1] It will be retried for the next request.
[1] Exception: Error: Error trying to ping. Error: Composer runtime (0.13.2) is not compatible with client (0.14.0)
[1] Error: Error trying to ping. Error: Composer runtime (0.13.2) is not compatible with client (0.14.0)
[1] at _checkRuntimeVersions.then.catch (/home/qa/my-network/my-app/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:663:34)
E.Gutarra.Tibco (Fri, 13 Oct 2017 15:28:34 GMT):
Is there a way around this without updating the composer?
nippleDonkey (Fri, 13 Oct 2017 15:29:47 GMT):
Are you trying to run the examples?
varunagarwal (Fri, 13 Oct 2017 15:32:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hoMCeMMLbBvYS4ydJ) @nippleDonkey me?
E.Gutarra.Tibco (Fri, 13 Oct 2017 15:32:52 GMT):
Yes
nippleDonkey (Fri, 13 Oct 2017 15:32:53 GMT):
no sorry, i meant @E.Gutarra.Tibco
nippleDonkey (Fri, 13 Oct 2017 15:33:07 GMT):
@E.Gutarra.Tibco my guess is they've updated the examples to 0.14.0
E.Gutarra.Tibco (Fri, 13 Oct 2017 15:33:09 GMT):
Yes, I'm trying to run the last step of the development guide
E.Gutarra.Tibco (Fri, 13 Oct 2017 15:33:24 GMT):
Hmmm.. is there a way to update the composer with apt-get?
varunagarwal (Fri, 13 Oct 2017 15:33:44 GMT):
@nippleDonkey ahh ok. Btw in hyperledger-composer, any idea what additional features chain-code has that this does not? In terms of smart contract dev
E.Gutarra.Tibco (Fri, 13 Oct 2017 15:33:46 GMT):
Trying to figure out the command but I'm not used to instaling a lot of stuff on unix
E.Gutarra.Tibco (Fri, 13 Oct 2017 15:35:36 GMT):
Hmm ok I'm using this command: npm install -g composer-cli
nippleDonkey (Fri, 13 Oct 2017 15:35:37 GMT):
@varunagarwal i'm not very good at GOLANG so i've been using composer from the start. I'm not sure if there are any differences. I think the JS gets compiled to chaincode once you build your banana file
E.Gutarra.Tibco (Fri, 13 Oct 2017 15:35:49 GMT):
I'm guessing that will update it as well
nippleDonkey (Fri, 13 Oct 2017 15:35:57 GMT):
I could be wrong, I'm sure one of the experts will let you know.
varunagarwal (Fri, 13 Oct 2017 15:36:30 GMT):
@nippleDonkey love your name btw :D But I am facing similar issue. I cannot learn GOLANG now and need to port my Ethereum based product to hyperledger
E.Gutarra.Tibco (Fri, 13 Oct 2017 15:36:46 GMT):
@nippleDonkey looks like it did update:
+ composer-cli@0.14.0
E.Gutarra.Tibco (Fri, 13 Oct 2017 15:37:15 GMT):
@nippleDonkey I'll try it doing all the npm installs and hopefully it works.
nippleDonkey (Fri, 13 Oct 2017 15:37:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rBLPAaTGFKD2j6FiN) @E.Gutarra.Tibco It should work. I did all mine today and have not had any issues. also remember to update composer-rest-api
E.Gutarra.Tibco (Fri, 13 Oct 2017 15:38:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bhmMk5RyPyrKxpk3n) @nippleDonkey ok cool
nippleDonkey (Fri, 13 Oct 2017 15:38:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EDXGv8FhBRThDX3h9) @varunagarwal lol we went from Solidity to Hyperledger too.
varunagarwal (Fri, 13 Oct 2017 15:39:08 GMT):
@nippleDonkey ahh good, more people like me. How was the experience? I got like 300-400 loc in solidity to switch over
nippleDonkey (Fri, 13 Oct 2017 15:40:41 GMT):
wow! we only built a small PoC and realised permissions were becoming our main issue. From my experience it's not been easy, I feel there is less documentation supporting composer.
varunagarwal (Fri, 13 Oct 2017 15:42:36 GMT):
ya definitely, for permissioning, i made a separate smart contract that held CRUD rules for each address and referenced it in all the other contracts
varunagarwal (Fri, 13 Oct 2017 15:43:11 GMT):
then for storage, I had used IPFS and mongodb, but privacy becomes an issue, which apparently fabric channels aim to solve in v1.0
nippleDonkey (Fri, 13 Oct 2017 15:43:32 GMT):
yeah
varunagarwal (Fri, 13 Oct 2017 15:43:47 GMT):
Permissioning can be handled in Eth, but encryption/ privacy is just not possible
nippleDonkey (Fri, 13 Oct 2017 15:44:20 GMT):
yeah, that's want i meant by permissions. The privacy side. Who can see what data.
varunagarwal (Fri, 13 Oct 2017 15:45:17 GMT):
So whats your use case in Eth? If you dont mind sharing
nickyromeijn (Fri, 13 Oct 2017 16:04:50 GMT):
Composer runtime (0.13.2) is not compatible with client (0.14.0) how to update runtime? composer -v tells me everything is at 0.14
mna2016 (Fri, 13 Oct 2017 16:08:17 GMT):
Hi All, Composer network deploy is not working. I have updated my composer network on the new composer playground and attempted deploy. Here;s the screenshot of the error:
mna2016 (Fri, 13 Oct 2017 16:09:16 GMT):
Clipboard - October 13, 2017 9:38 PM
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:15:51 GMT):
I'm wondering if it's also because that script: https://hyperledger.github.io/composer/prereqs-ubuntu.sh has been updated...
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:16:03 GMT):
Maybe it needs to be run again.. that's what I'm doing
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:16:28 GMT):
I'm also getting similar errors when deploying and then pinging the network.
mna2016 (Fri, 13 Oct 2017 16:18:04 GMT):
@E.Gutarra.Tibco Did simple running "prereqs-ubuntu.sh" solve the errors for you?
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:18:26 GMT):
@mna2016 Nope.. I ran it again and still running into a similar error :\
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:18:52 GMT):
Clipboard - October 13, 2017 11:18 AM
mna2016 (Fri, 13 Oct 2017 16:19:16 GMT):
@E.Gutarra.Tibco Hold on! did composer network deploy work fine for you?
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:19:24 GMT):
yes
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:19:46 GMT):
I ran the npm install commands on the requirements guide again
mna2016 (Fri, 13 Oct 2017 16:20:11 GMT):
@E.Gutarra.Tibco ok. this compatibility error gets solved by installing hte correct npm packages. basically composer-cli and composer-client i guess.
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:20:44 GMT):
Myabe try running all of this stuff from the beginning again:
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:21:00 GMT):
Clipboard - October 13, 2017 11:20 AM
mna2016 (Fri, 13 Oct 2017 16:21:05 GMT):
@E.Gutarra.Tibco
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:21:12 GMT):
@mna2016 Yea, but I think it has to be done all in sequential order
mna2016 (Fri, 13 Oct 2017 16:22:10 GMT):
I think for ping to work, only cli and client needs to be reinstalled.
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:22:35 GMT):
Hmm i did that, and it didn't fix it.
mna2016 (Fri, 13 Oct 2017 16:22:49 GMT):
but even if ping does not work, it does not mean your network was NOT deployed correctly. If you have a nodeSDK application for testing you could use it to see the data.
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:24:02 GMT):
I don't know what the nodeSDK application is. I haven't used it before.
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:24:29 GMT):
Is that the web app that runs on the rest server on port 3000?
mna2016 (Fri, 13 Oct 2017 16:26:16 GMT):
@E.Gutarra.Tibco this is nodeSDK example based on composer network https://github.com/hyperledger/composer-sample-networks
mna2016 (Fri, 13 Oct 2017 16:26:52 GMT):
@E.Gutarra.Tibco A quicker option for you would be to try and run all the npm install commands again. Also, update node on your system if you can. And then try the ping command.
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:28:06 GMT):
ok, i'll give it a shot
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:31:12 GMT):
ls
davidkel (Fri, 13 Oct 2017 16:35:29 GMT):
@mna2016 the error message you show in your screen shot shows that the install of the composer-cli had a problem trying to install a dependency called grpc. You could try uninstalling composer-cli and re-installing it.
nickyromeijn (Fri, 13 Oct 2017 16:37:36 GMT):
Im having the same issue [ ](https://chat.hyperledger.org/channel/composer?msg=tEzzA2jfmyj4Smq8D) @E.Gutarra.Tibco
davidkel (Fri, 13 Oct 2017 16:38:59 GMT):
@E.Gutarra.Tibco The problem you have is that you deployed a business network using v0.13.2 of the composer-cli (or playground). Now you have upgraded to v0.14.0 of the composer-cli but this is a version change and isn't compatible with the version 0.13.2 of the composer runtime that got deployed when you deployed your business network using v0.13.2. You either need to downgrade your level of cli back to 0.13.2 or you will have to restart your fabric and redeploy your bna again. Unfortunately because it is a breaking release you cannot use the composer runtime install/composer network upgrade path to upgrade the composer runtime.
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:40:28 GMT):
@davidkel so I need to restart my fabric network is that so?
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:40:32 GMT):
ls
E.Gutarra.Tibco (Fri, 13 Oct 2017 16:42:27 GMT):
@davidkel Could you tell me what part of the development guide, or requirements guide do I need to do again? Do I need to do the docker stuff again?
nickyromeijn (Fri, 13 Oct 2017 16:42:27 GMT):
@davidkel thanks, i'll try that.
davidkel (Fri, 13 Oct 2017 16:43:54 GMT):
@E.Gutarra.Tibco
```
- stopFabric.sh
- rm -fr ~/.composer-credentials
- createComposerProfile.sh
- startFabric.sh
- composer network deploy ...
```
davidkel (Fri, 13 Oct 2017 16:43:54 GMT):
@E.Gutarra.Tibco
```
- stopFabric.sh
- rm -fr ~/.composer-credentials
- createComposerProfile.sh
- startFabric.sh
- composer network deploy ...
```
Also as you have upgraded to v0.14.0 please read the release notes for that version
nickyromeijn (Fri, 13 Oct 2017 16:43:56 GMT):
I've just ran composer -v which returned 14.0 but running composer network deploy with the new -A and -S flags returned that they were unknown arguments. Guess there's something wrong with versioning :<
davidkel (Fri, 13 Oct 2017 16:44:36 GMT):
@nickyromeijn really ? can you paste your output here ?
nickyromeijn (Fri, 13 Oct 2017 16:46:16 GMT):
@davidkel I ment with my own project (sorry) have the .13 versions in my package.json
nickyromeijn (Fri, 13 Oct 2017 16:55:02 GMT):
@davidkel So i just updated everything to 14.0 but now the embedded connector doesn't work anymore :( `Failed to load connector module "composer-connector-embedded" for connection profile "defaultProfile". Cannot find module 'fast-json-patch`
davidkel (Fri, 13 Oct 2017 16:58:29 GMT):
@nickyromeijn it's used by the composer-runtime and is declared in the package. You might want to delete your node_modules directory for your app and redo and npm install, maybe there was some problem pulling dependencies
davidkel (Fri, 13 Oct 2017 16:58:29 GMT):
@nickyromeijn it's used by the composer-runtime and is declared in the package. You might want to delete your node_modules directory for your app and redo an npm install, maybe there was some problem pulling dependencies
nickyromeijn (Fri, 13 Oct 2017 17:04:03 GMT):
@davidkel Thanks bud, really appreciate the help :)
mna2016 (Fri, 13 Oct 2017 17:10:40 GMT):
@davidkel Thanks for the answer. I have an old composer connection profile. Would it work or do I need to create a new connection profile. The blockchain that I am running is running on cloud.
davidkel (Fri, 13 Oct 2017 17:12:13 GMT):
@mna2016 no changes to your connection profile required, your problem seems to be an install failure of the composer-cli
mna2016 (Fri, 13 Oct 2017 17:12:42 GMT):
ok I am now reinstalling composer-cli
nickyromeijn (Fri, 13 Oct 2017 17:19:12 GMT):
@davidkel Is there any documentation available regarding using different password strategies than the one defined on the website?
mna2016 (Fri, 13 Oct 2017 17:31:38 GMT):
@davidkel uninstalling and then running "npm install -g composer-cli" does not seem to install composer cli. Am still getting the same error. Is it some other package other than composer cli that needs installing.
davidkel (Fri, 13 Oct 2017 17:59:43 GMT):
@mna2016 no, so there could be lots of reasons why it has failed. For example depending on your platform you need to have all the required pre-reqs npm decides it needs to build grpc from source. So you need to have the latest python 2.7 installed and invocable by typing `python` on the command line. If you are a Mac user you have to have xcode installed
mna2016 (Fri, 13 Oct 2017 20:38:50 GMT):
@davidkel I did prereqs.sh all over again and then individually installed all the composer related tools. Now doing a composer network deploy returns an "cannot allocate memory" error. I will try the same command after some time so as to have a better chance of having memory the next time.
RodrigoCastilla (Sat, 14 Oct 2017 00:21:17 GMT):
It is possible to use Hyperledger Composer to make a "real transaction" (kind of Ripple) ?
RodrigoCastilla (Sat, 14 Oct 2017 00:21:17 GMT):
Is it possible to use Hyperledger Composer to make a "real transaction" (kind of Ripple) ?
RodrigoCastilla (Sat, 14 Oct 2017 02:44:40 GMT):
Im trying to create a decentralized application, Im using this example to understand how to make it ( _http://www.goverticalworkshop.com/resources/how-to-create-a-decentralized-application-running-on-hyperledger-fabric-network_ ).
When I trie to run the command `composer network ping -n news-network -p hlfv1 -i admin -s adminpw` I get the nexto error:
`Error: Error trying deploy. Error: Error trying install composer runtime. Error: Connect Failed`
Somebody knows what is going on?
Thanks.
mahoney1 (Sat, 14 Oct 2017 08:19:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=E626pLYPpG26REqYX) @einarpersson yes - business network related ACLs
mna2016 (Sat, 14 Oct 2017 08:26:05 GMT):
Hi, I need somebody to look at this urgently. Composer network deploy still errors out.I have done prereqs.sh all over again and installed all composer tools. Here's the errror screenshot
mna2016 (Sat, 14 Oct 2017 08:27:56 GMT):
Clipboard - October 14, 2017 1:57 PM
davidkel (Sat, 14 Oct 2017 09:23:05 GMT):
@mna how much memory do you have allocated ? Too little memory would also account for the grpc module problems, I am also guessing you are on s390x so there aren't any prebuilt grpc modules for that platform so npm will have to compile it.
davidkel (Sat, 14 Oct 2017 09:23:05 GMT):
@mna that is a fabric error, you need to look at why your fabric environment appears to not have enough memory
davidkel (Sat, 14 Oct 2017 09:23:05 GMT):
@mna2016 that is a fabric error, you need to look at why your fabric environment appears to not have enough memory
mna2016 (Sat, 14 Oct 2017 09:28:11 GMT):
@davidkel I am deploying the composer network on bluemix blockchain service. can i still get fabric related error?
davidkel (Sat, 14 Oct 2017 09:42:28 GMT):
@mna2016 that is an error that hyperledger fabric would report. The peer was not able to build the chaincode container due to lack of memory
mna2016 (Sat, 14 Oct 2017 09:45:20 GMT):
@davidkel ok let me check peer logs on teh blockchain service
mna2016 (Sat, 14 Oct 2017 09:49:44 GMT):
@davidkel yep I see the same error message on peer log. I will create a new channel and will try deploying hte network on it.
mna2016 (Sat, 14 Oct 2017 10:25:14 GMT):
@davidkel creating a new channel did not help. still getting memory error. Would creating a new peer help?
davidkel (Sat, 14 Oct 2017 10:32:23 GMT):
@mna2016 Sorry I have no idea, if it's an option then try it otherwise you will have to contact bluemix to get help
mna2016 (Sat, 14 Oct 2017 10:33:17 GMT):
@davidkel ok. thanks for the help so far. I will try asking them.
nathanaw (Sat, 14 Oct 2017 12:43:20 GMT):
hi experts, please help -- can we run composer without the internet connectivity?
nathanaw (Sat, 14 Oct 2017 12:43:42 GMT):
Clipboard - October 14, 2017 8:43 PM
nathanaw (Sat, 14 Oct 2017 12:44:10 GMT):
is there some way to start composer without having to pull images again?
douglasthiel (Sat, 14 Oct 2017 15:02:54 GMT):
I’m doing the Composer queries tutorial [here](https://hyperledger.github.io/composer/tutorials/queries.html).
I’ve already completed “The Developer Guide” tutorial successfully.
I’ve just copied the Cucumber test definition file to
features/sample.feature
Then I ran
npm test
and, surprisingly, got this output:
> my-network@0.1.11 pretest /Users/douglas/fabric-tools/my-network
> npm run lint
> my-network@0.1.11 lint /Users/douglas/fabric-tools/my-network
> eslint .
/Users/douglas/fabric-tools/my-network/my-app/karma.conf.js
4:1 error Use the global form of 'use strict' strict
5:3 error Expected indentation of 4 spaces but found 2 indent
6:5 error Expected indentation of 6 spaces but found 4 indent
7:5 error Expected indentation of 6 spaces but found 4 indent
8:5 error Expected indentation of 6 spaces but found 4 indent
9:7 error Expected indentation of 8 spaces but found 6 indent
10:7 error Expected indentation of 8 spaces but found 6 indent
11:7 error Expected indentation of 8 spaces but found 6 indent
12:7 error Expected indentation of 8 spaces but found 6 indent
13:7 error Expected indentation of 8 spaces but found 6 indent
15:5 error Expected indentation of 6 spaces but found 4 indent
16:7 error Expected indentation of 8 spaces but found 6 indent
18:5 error Expected indentation of 6 spaces but found 4 indent
21:5 error Expected indentation of 6 spaces but found 4 indent
22:7 error Expected indentation of 8 spaces but found 6 indent
24:5 error Expected indentation of 6 spaces but found 4 indent
25:7 error Expected indentation of 8 spaces but found 6 indent
27:5 error Expected indentation of 6 spaces but found 4 indent
28:7 error Expected indentation of 8 spaces but found 6 indent
29:7 error Expected indentation of 8 spaces but found 6 indent
31:5 error Expected indentation of 6 spaces but found 4 indent
32:7 error Expected indentation of 8 spaces but found 6 indent
34:5 error Expected indentation of 6 spaces but found 4 indent
37:5 error Expected indentation of 6 spaces but found 4 indent
38:5 error Expected indentation of 6 spaces but found 4 indent
39:5 error Expected indentation of 6 spaces but found 4 indent
40:5 error Expected indentation of 6 spaces but found 4 indent
41:5 error Expected indentation of 6 spaces but found 4 indent
42:5 error Expected indentation of 6 spaces but found 4 indent
/Users/douglas/fabric-tools/my-network/my-app/protractor.conf.js
4:1 error Use the global form of 'use strict' strict
7:3 error Expected indentation of 4 spaces but found 2 indent
8:3 error Expected indentation of 4 spaces but found 2 indent
9:5 error Expected indentation of 6 spaces but found 4 indent
11:3 error Expected indentation of 4 spaces but found 2 indent
12:5 error Expected indentation of 6 spaces but found 4 indent
14:3 error Expected indentation of 4 spaces but found 2 indent
15:3 error Expected indentation of 4 spaces but found 2 indent
16:3 error Expected indentation of 4 spaces but found 2 indent
17:3 error Expected indentation of 4 spaces but found 2 indent
18:5 error Expected indentation of 6 spaces but found 4 indent
19:5 error Expected indentation of 6 spaces but found 4 indent
20:5 error Expected indentation of 6 spaces but found 4 indent
22:3 error Expected indentation of 4 spaces but found 2 indent
23:5 error Expected indentation of 6 spaces but found 4 indent
24:7 error Expected indentation of 8 spaces but found 6 indent
27:3 error Expected indentation of 4 spaces but found 2 indent
28:5 error Expected indentation of 6 spaces but found 4 indent
28:5 error 'jasmine' is not defined no-undef
✖ 48 problems (48 errors, 0 warnings)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-network@0.1.11 lint: `eslint .`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.1.11 lint script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/douglas/.npm/_logs/2017-10-14T14_50_51_362Z-debug.log
npm ERR! Test failed. See above for more details.
npm test
ran successfully before this attempt.
I have no idea why lint would fail.
Any ideas?
douglasthiel (Sat, 14 Oct 2017 15:02:54 GMT):
I’m doing the Composer queries tutorial [here](https://hyperledger.github.io/composer/tutorials/queries.html).
I’ve already completed “The Developer Guide” tutorial successfully.
I’ve just copied the Cucumber test definition file to
features/sample.feature
Then I ran
npm test
and, surprisingly, got this output:
> my-network@0.1.11 pretest /Users/douglas/fabric-tools/my-network
> npm run lint
> my-network@0.1.11 lint /Users/douglas/fabric-tools/my-network
> eslint .
/Users/douglas/fabric-tools/my-network/my-app/karma.conf.js
4:1 error Use the global form of 'use strict' strict
5:3 error Expected indentation of 4 spaces but found 2 indent
6:5 error Expected indentation of 6 spaces but found 4 indent
7:5 error Expected indentation of 6 spaces but found 4 indent
8:5 error Expected indentation of 6 spaces but found 4 indent
9:7 error Expected indentation of 8 spaces but found 6 indent
10:7 error Expected indentation of 8 spaces but found 6 indent
11:7 error Expected indentation of 8 spaces but found 6 indent
12:7 error Expected indentation of 8 spaces but found 6 indent
13:7 error Expected indentation of 8 spaces but found 6 indent
15:5 error Expected indentation of 6 spaces but found 4 indent
16:7 error Expected indentation of 8 spaces but found 6 indent
18:5 error Expected indentation of 6 spaces but found 4 indent
21:5 error Expected indentation of 6 spaces but found 4 indent
22:7 error Expected indentation of 8 spaces but found 6 indent
24:5 error Expected indentation of 6 spaces but found 4 indent
25:7 error Expected indentation of 8 spaces but found 6 indent
27:5 error Expected indentation of 6 spaces but found 4 indent
28:7 error Expected indentation of 8 spaces but found 6 indent
29:7 error Expected indentation of 8 spaces but found 6 indent
31:5 error Expected indentation of 6 spaces but found 4 indent
32:7 error Expected indentation of 8 spaces but found 6 indent
34:5 error Expected indentation of 6 spaces but found 4 indent
37:5 error Expected indentation of 6 spaces but found 4 indent
38:5 error Expected indentation of 6 spaces but found 4 indent
39:5 error Expected indentation of 6 spaces but found 4 indent
40:5 error Expected indentation of 6 spaces but found 4 indent
41:5 error Expected indentation of 6 spaces but found 4 indent
42:5 error Expected indentation of 6 spaces but found 4 indent
/Users/douglas/fabric-tools/my-network/my-app/protractor.conf.js
4:1 error Use the global form of 'use strict' strict
7:3 error Expected indentation of 4 spaces but found 2 indent
8:3 error Expected indentation of 4 spaces but found 2 indent
9:5 error Expected indentation of 6 spaces but found 4 indent
11:3 error Expected indentation of 4 spaces but found 2 indent
12:5 error Expected indentation of 6 spaces but found 4 indent
14:3 error Expected indentation of 4 spaces but found 2 indent
15:3 error Expected indentation of 4 spaces but found 2 indent
16:3 error Expected indentation of 4 spaces but found 2 indent
17:3 error Expected indentation of 4 spaces but found 2 indent
18:5 error Expected indentation of 6 spaces but found 4 indent
19:5 error Expected indentation of 6 spaces but found 4 indent
20:5 error Expected indentation of 6 spaces but found 4 indent
22:3 error Expected indentation of 4 spaces but found 2 indent
23:5 error Expected indentation of 6 spaces but found 4 indent
24:7 error Expected indentation of 8 spaces but found 6 indent
27:3 error Expected indentation of 4 spaces but found 2 indent
28:5 error Expected indentation of 6 spaces but found 4 indent
28:5 error 'jasmine' is not defined no-undef
✖ 48 problems (48 errors, 0 warnings)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-network@0.1.11 lint: `eslint .`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.1.11 lint script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/douglas/.npm/_logs/2017-10-14T14_50_51_362Z-debug.log
npm ERR! Test failed. See above for more details.
npm test
ran successfully before this attempt.
I have no idea why lint would fail.
Any ideas?
douglasthiel (Sat, 14 Oct 2017 15:02:54 GMT):
I’m doing the Composer queries tutorial [here](https://hyperledger.github.io/composer/tutorials/queries.html).
I’ve already completed “The Developer Guide” tutorial successfully.
I’ve just copied the Cucumber test definition file to
features/sample.feature
Then I ran
npm test
and, surprisingly, got this output:
> my-network@0.1.11 pretest /Users/douglas/fabric-tools/my-network
> npm run lint
> my-network@0.1.11 lint /Users/douglas/fabric-tools/my-network
> eslint .
/Users/douglas/fabric-tools/my-network/my-app/karma.conf.js
4:1 error Use the global form of 'use strict' strict
5:3 error Expected indentation of 4 spaces but found 2 indent
6:5 error Expected indentation of 6 spaces but found 4 indent
7:5 error Expected indentation of 6 spaces but found 4 indent
8:5 error Expected indentation of 6 spaces but found 4 indent
9:7 error Expected indentation of 8 spaces but found 6 indent
10:7 error Expected indentation of 8 spaces but found 6 indent
11:7 error Expected indentation of 8 spaces but found 6 indent
12:7 error Expected indentation of 8 spaces but found 6 indent
13:7 error Expected indentation of 8 spaces but found 6 indent
15:5 error Expected indentation of 6 spaces but found 4 indent
16:7 error Expected indentation of 8 spaces but found 6 indent
18:5 error Expected indentation of 6 spaces but found 4 indent
21:5 error Expected indentation of 6 spaces but found 4 indent
22:7 error Expected indentation of 8 spaces but found 6 indent
24:5 error Expected indentation of 6 spaces but found 4 indent
25:7 error Expected indentation of 8 spaces but found 6 indent
27:5 error Expected indentation of 6 spaces but found 4 indent
28:7 error Expected indentation of 8 spaces but found 6 indent
29:7 error Expected indentation of 8 spaces but found 6 indent
31:5 error Expected indentation of 6 spaces but found 4 indent
32:7 error Expected indentation of 8 spaces but found 6 indent
34:5 error Expected indentation of 6 spaces but found 4 indent
37:5 error Expected indentation of 6 spaces but found 4 indent
38:5 error Expected indentation of 6 spaces but found 4 indent
39:5 error Expected indentation of 6 spaces but found 4 indent
40:5 error Expected indentation of 6 spaces but found 4 indent
41:5 error Expected indentation of 6 spaces but found 4 indent
42:5 error Expected indentation of 6 spaces but found 4 indent
/Users/douglas/fabric-tools/my-network/my-app/protractor.conf.js
4:1 error Use the global form of 'use strict' strict
7:3 error Expected indentation of 4 spaces but found 2 indent
8:3 error Expected indentation of 4 spaces but found 2 indent
9:5 error Expected indentation of 6 spaces but found 4 indent
11:3 error Expected indentation of 4 spaces but found 2 indent
12:5 error Expected indentation of 6 spaces but found 4 indent
14:3 error Expected indentation of 4 spaces but found 2 indent
15:3 error Expected indentation of 4 spaces but found 2 indent
16:3 error Expected indentation of 4 spaces but found 2 indent
17:3 error Expected indentation of 4 spaces but found 2 indent
18:5 error Expected indentation of 6 spaces but found 4 indent
19:5 error Expected indentation of 6 spaces but found 4 indent
20:5 error Expected indentation of 6 spaces but found 4 indent
22:3 error Expected indentation of 4 spaces but found 2 indent
23:5 error Expected indentation of 6 spaces but found 4 indent
24:7 error Expected indentation of 8 spaces but found 6 indent
27:3 error Expected indentation of 4 spaces but found 2 indent
28:5 error Expected indentation of 6 spaces but found 4 indent
28:5 error 'jasmine' is not defined no-undef
✖ 48 problems (48 errors, 0 warnings)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-network@0.1.11 lint: `eslint .`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-network@0.1.11 lint script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/douglas/.npm/_logs/2017-10-14T14_50_51_362Z-debug.log
npm ERR! Test failed. See above for more details.
npm test
ran successfully before this attempt.
I have no idea why lint would fail.
EDIT: "npm run test-inner" runs the tests successfully. So, I'm guessing it's just a eslint related issue.
varunagarwal (Sat, 14 Oct 2017 15:44:48 GMT):
Can I create transaction with optional parameters?
lmars (Sat, 14 Oct 2017 16:30:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7PwpjQ2ur32TYYdhj) @nippleDonkey
lmars (Sat, 14 Oct 2017 16:34:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7PwpjQ2ur32TYYdhj) @nippleDonkey there is Golang chaincode as part of Composer runtime which create Java Script engine and this engine run your bna
lmars (Sat, 14 Oct 2017 16:34:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7PwpjQ2ur32TYYdhj) @nippleDonkey there is Golang chaincode as part of Composer runtime which creates Java Script engine and this engine runs your bna
varunagarwal (Sat, 14 Oct 2017 17:07:11 GMT):
Yes I understand that part of composer, but what if I want to have a function that takes in optional parametres and reacts accordingly. The @descriptor type in the comment require you to declare the parameters, but I don't want it like that, and would rather leave it open.
guoger (Sat, 14 Oct 2017 17:28:10 GMT):
anybody know where to clone Composer doc to read offline?
mrosack (Sat, 14 Oct 2017 19:09:50 GMT):
is there any way to mock the post function in a transaction during unit testing?
harsha (Sun, 15 Oct 2017 10:07:15 GMT):
How do I fix issues like `Error: Required metadata field not found: userName` when I try to connect to my composer-playground on IP_ADDRESS:8080 ?
Jesse-Cameron (Sun, 15 Oct 2017 10:56:38 GMT):
Has joined the channel.
Jesse-Cameron (Sun, 15 Oct 2017 10:57:08 GMT):
Can anyone offer guidance on rolling back composer v0.14
Jesse-Cameron (Sun, 15 Oct 2017 10:57:23 GMT):
As the new release breaks everything
glotov (Sun, 15 Oct 2017 11:03:24 GMT):
How does `getCurrentParticipant()` detect the issuer of the transaction? Can I use `composer-rest-server` and need to authorize my actor with it before posting the transaction?
harsha (Sun, 15 Oct 2017 12:01:28 GMT):
When I try deploy my `.bna` I get the following error on web-browser :-
```Error: Error trying to instantiate composer runtime. Error: Failed to execute transaction (Timeout expired while executing transaction)```
Here's my `docker ps -a` and assocaited failing docker container log O/P :-
```root@p006vm30:/data/playground# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
989d3187d506 dev-peer0.org1.example.com-journey-0.13.1-1b9dd06e5f7353d448eb1dddc07640ec3fa9cd6d86460f686495369a1fae9d3e "chaincode -peer.a..." 10 seconds ago Exited (2) 8 seconds ago dev-peer0.org1.example.com-journey-0.13.1
448a73eec212 hyperledger/fabric-peer:ppc64le-1.0.1 "peer node start -..." 2 hours ago Up 2 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
79feb15b2d46 hyperledger/fabric-orderer:ppc64le-1.0.1 "orderer" 2 hours ago Up 2 hours 0.0.0.0:7050->7050/tcp orderer.example.com
41def009c67c hyperledger/fabric-couchdb:ppc64le-1.0.1 "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
298f3f84d183 hyperledger/fabric-ca:ppc64le-1.0.1 "sh -c 'fabric-ca-..." 2 hours ago Up 2 hours 0.0.0.0:7054->7054/tcp ca.org1.example.com
root@p006vm30:/data/playground#```
```root@p006vm30:/data/playground# docker logs 989d3187d506
2017-10-15 11:52:43.157 UTC [Composer] Info -> INFO 001 Setting the Composer pool size to 8
2017-10-15 11:52:43.157 UTC [bccsp] initBCCSP -> DEBU 002 Initialize BCCSP [SW]
2017-10-15 11:52:43.166 UTC [Composer] Debug -> DEBU 003 Entering getLogging 0xc420200640
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 004 Entering Chaincode.Init 0xc420200630
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 005 Entering ComposerPool.Get
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 006 Entering NewComposer
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 007 Entering Composer.createJavaScript
2017-10-15 11:52:43.189 UTC [Composer] Debug -> DEBU 008 Exiting Composer.createJavaScript
2017-10-15 11:52:43.189 UTC [Composer] Debug -> DEBU 009 Exiting NewComposer &{0xc420028000
harsha (Sun, 15 Oct 2017 12:01:28 GMT):
When I try deploy my `.bna` I get the following error on web-browser :-
```Error: Error trying to instantiate composer runtime. Error: Failed to execute transaction (Timeout expired while executing transaction)```
Here's my `docker logs` associated with failing docker container log O/P :-
```root@p006vm30:/data/playground# docker logs 989d3187d506
2017-10-15 11:52:43.157 UTC [Composer] Info -> INFO 001 Setting the Composer pool size to 8
2017-10-15 11:52:43.157 UTC [bccsp] initBCCSP -> DEBU 002 Initialize BCCSP [SW]
2017-10-15 11:52:43.166 UTC [Composer] Debug -> DEBU 003 Entering getLogging 0xc420200640
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 004 Entering Chaincode.Init 0xc420200630
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 005 Entering ComposerPool.Get
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 006 Entering NewComposer
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 007 Entering Composer.createJavaScript
2017-10-15 11:52:43.189 UTC [Composer] Debug -> DEBU 008 Exiting Composer.createJavaScript
2017-10-15 11:52:43.189 UTC [Composer] Debug -> DEBU 009 Exiting NewComposer &{0xc420028000
harsha (Sun, 15 Oct 2017 12:01:28 GMT):
When I try deploy my `.bna` I get the following error on web-browser :-
`Error: Error trying to instantiate composer runtime. Error: Failed to execute transaction (Timeout expired while executing transaction)`
Here's my `docker logs` associated with failing docker container log O/P :-
```root@p006vm30:/data/playground# docker logs 989d3187d506
2017-10-15 11:52:43.157 UTC [Composer] Info -> INFO 001 Setting the Composer pool size to 8
2017-10-15 11:52:43.157 UTC [bccsp] initBCCSP -> DEBU 002 Initialize BCCSP [SW]
2017-10-15 11:52:43.166 UTC [Composer] Debug -> DEBU 003 Entering getLogging 0xc420200640
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 004 Entering Chaincode.Init 0xc420200630
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 005 Entering ComposerPool.Get
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 006 Entering NewComposer
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 007 Entering Composer.createJavaScript
2017-10-15 11:52:43.189 UTC [Composer] Debug -> DEBU 008 Exiting Composer.createJavaScript
2017-10-15 11:52:43.189 UTC [Composer] Debug -> DEBU 009 Exiting NewComposer &{0xc420028000
harsha (Sun, 15 Oct 2017 12:01:28 GMT):
When I try deploy my `.bna` . Here's my `docker logs` associated with failing docker container log O/P :-
```root@p006vm30:/data/playground# docker logs 989d3187d506
2017-10-15 11:52:43.157 UTC [Composer] Info -> INFO 001 Setting the Composer pool size to 8
2017-10-15 11:52:43.157 UTC [bccsp] initBCCSP -> DEBU 002 Initialize BCCSP [SW]
2017-10-15 11:52:43.166 UTC [Composer] Debug -> DEBU 003 Entering getLogging 0xc420200640
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 004 Entering Chaincode.Init 0xc420200630
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 005 Entering ComposerPool.Get
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 006 Entering NewComposer
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 007 Entering Composer.createJavaScript
2017-10-15 11:52:43.189 UTC [Composer] Debug -> DEBU 008 Exiting Composer.createJavaScript
2017-10-15 11:52:43.189 UTC [Composer] Debug -> DEBU 009 Exiting NewComposer &{0xc420028000
harsha (Sun, 15 Oct 2017 12:01:28 GMT):
When I try deploy my `.bna` . Here's my failing `docker logs` associated container O/P :-
```root@p006vm30:/data/playground# docker logs 989d3187d506
2017-10-15 11:52:43.157 UTC [Composer] Info -> INFO 001 Setting the Composer pool size to 8
2017-10-15 11:52:43.157 UTC [bccsp] initBCCSP -> DEBU 002 Initialize BCCSP [SW]
2017-10-15 11:52:43.166 UTC [Composer] Debug -> DEBU 003 Entering getLogging 0xc420200640
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 004 Entering Chaincode.Init 0xc420200630
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 005 Entering ComposerPool.Get
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 006 Entering NewComposer
2017-10-15 11:52:43.170 UTC [Composer] Debug -> DEBU 007 Entering Composer.createJavaScript
2017-10-15 11:52:43.189 UTC [Composer] Debug -> DEBU 008 Exiting Composer.createJavaScript
2017-10-15 11:52:43.189 UTC [Composer] Debug -> DEBU 009 Exiting NewComposer &{0xc420028000
zachgoll (Sun, 15 Oct 2017 12:48:35 GMT):
I am getting npm ERR! when running the npm install. After removing the following rules from the permissions file, it works just fine. I am wondering why these permission rules are causing this error? Maybe the hyperledger default namespace not recognized?
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
zachgoll (Sun, 15 Oct 2017 12:48:35 GMT):
I am getting npm ERR! when running the npm install. After removing the following rules from the permissions file, it works just fine. I am wondering why these permission rules are causing this error? Maybe the hyperledger default namespace not recognized?
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
zachgoll (Sun, 15 Oct 2017 12:48:35 GMT):
I am getting npm ERR! when running the npm install. After removing the following rules from the permissions file, it works just fine. I am wondering why these permission rules are causing this error? Maybe the hyperledger default namespace not recognized?
```rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
zachgoll (Sun, 15 Oct 2017 12:48:35 GMT):
I am getting npm ERR! when running the npm install. After removing the following rules from the permissions file, it works just fine. I am wondering why these permission rules are causing this error? Maybe the hyperledger default namespace not recognized?
```rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
zachgoll (Sun, 15 Oct 2017 12:48:35 GMT):
I am getting npm ERR! when running the npm install. After removing the following rules from the permissions file, it works just fine. I am wondering why these permission rules are causing this error? Maybe the hyperledger default namespace not recognized?
```rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
```Looking for package.json of Business Network Definition
Input directory: /Volumes/Photo_Drive/projects/perishable-network
/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Expected identifier but "*" found. Line 24 column 16
at new AclFile (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-common/lib/acl/aclfile.js:52:23)
at Function.fromDirectory (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-common/lib/businessnetworkdefinition.js:530:33)
at Function.handler (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/lib/cmds/archive/lib/create.js:80:42)
at Object.module.exports.handler (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/lib/cmds/archive/createCommand.js:31:30)
at Object.self.runCommand (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/lib/command.js:233:22)
at Object.Yargs.self._parseArgs (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.self.runCommand (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/lib/command.js:204:45)
at Object.Yargs.self._parseArgs (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.get [as argv] (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:927:19)
at Object.
zachgoll (Sun, 15 Oct 2017 12:48:35 GMT):
I am getting npm ERR! when running the npm install. After removing the following rules from the permissions file, it works just fine. I am wondering why these permission rules are causing this error? Maybe the hyperledger default namespace not recognized?
```rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
```Looking for package.json of Business Network Definition
Input directory: /Volumes/Photo_Drive/projects/perishable-network
/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Expected identifier but "*" found. Line 24 column 16
at new AclFile (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-common/lib/acl/aclfile.js:52:23)
at Function.fromDirectory (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-common/lib/businessnetworkdefinition.js:530:33)
at Function.handler (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/lib/cmds/archive/lib/create.js:80:42)
at Object.module.exports.handler (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/lib/cmds/archive/createCommand.js:31:30)
at Object.self.runCommand (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/lib/command.js:233:22)
at Object.Yargs.self._parseArgs (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.self.runCommand (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/lib/command.js:204:45)
at Object.Yargs.self._parseArgs (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.get [as argv] (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:927:19)
at Object.
zachgoll (Sun, 15 Oct 2017 12:48:35 GMT):
I am getting npm ERR! when running the npm install. After removing the following rules from the permissions file, it works just fine. I am wondering why these permission rules are causing this error? Maybe the hyperledger default namespace not recognized?
```rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
```Looking for package.json of Business Network Definition
Input directory: /Volumes/Photo_Drive/projects/perishable-network
/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Expected identifier but "*" found. Line 24 column 16
at new AclFile (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-common/lib/acl/aclfile.js:52:23)
at Function.fromDirectory (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-common/lib/businessnetworkdefinition.js:530:33)
at Function.handler (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/lib/cmds/archive/lib/create.js:80:42)
at Object.module.exports.handler (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/lib/cmds/archive/createCommand.js:31:30)
at Object.self.runCommand (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/lib/command.js:233:22)
at Object.Yargs.self._parseArgs (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.self.runCommand (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/lib/command.js:204:45)
at Object.Yargs.self._parseArgs (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.get [as argv] (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:927:19)
at Object.
zachgoll (Sun, 15 Oct 2017 12:48:35 GMT):
I am getting npm ERR! when running the npm install. After removing the following rules from the permissions file, it works just fine. I am wondering why these permission rules are causing this error? Maybe the hyperledger default namespace not recognized?
```rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
```Looking for package.json of Business Network Definition
Input directory: /Volumes/Photo_Drive/projects/perishable-network
/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Expected identifier but "*" found. Line 24 column 16
at new AclFile (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-common/lib/acl/aclfile.js:52:23)
at Function.fromDirectory (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-common/lib/businessnetworkdefinition.js:530:33)
at Function.handler (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/lib/cmds/archive/lib/create.js:80:42)
at Object.module.exports.handler (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/lib/cmds/archive/createCommand.js:31:30)
at Object.self.runCommand (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/lib/command.js:233:22)
at Object.Yargs.self._parseArgs (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.self.runCommand (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/lib/command.js:204:45)
at Object.Yargs.self._parseArgs (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.get [as argv] (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:927:19)
at Object.
zachgoll (Sun, 15 Oct 2017 12:51:52 GMT):
```Looking for package.json of Business Network Definition
Input directory: /Volumes/Photo_Drive/projects/perishable-network
/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Expected identifier but "*" found. Line 24 column 16
at new AclFile (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-common/lib/acl/aclfile.js:52:23)
at Function.fromDirectory (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-common/lib/businessnetworkdefinition.js:530:33)
at Function.handler (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/lib/cmds/archive/lib/create.js:80:42)
at Object.module.exports.handler (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/lib/cmds/archive/createCommand.js:31:30)
at Object.self.runCommand (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/lib/command.js:233:22)
at Object.Yargs.self._parseArgs (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.self.runCommand (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/lib/command.js:204:45)
at Object.Yargs.self._parseArgs (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.get [as argv] (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:927:19)
at Object.
zachgoll (Sun, 15 Oct 2017 12:51:52 GMT):
```Looking for package.json of Business Network Definition
Input directory: /Volumes/Photo_Drive/projects/perishable-network
/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:1079
else throw err
^
ParseException: Expected identifier but "*" found. Line 24 column 16
at new AclFile (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-common/lib/acl/aclfile.js:52:23)
at Function.fromDirectory (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-common/lib/businessnetworkdefinition.js:530:33)
at Function.handler (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/lib/cmds/archive/lib/create.js:80:42)
at Object.module.exports.handler (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/lib/cmds/archive/createCommand.js:31:30)
at Object.self.runCommand (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/lib/command.js:233:22)
at Object.Yargs.self._parseArgs (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.self.runCommand (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/lib/command.js:204:45)
at Object.Yargs.self._parseArgs (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:990:30)
at Object.get [as argv] (/Volumes/Photo_Drive/projects/perishable-network/node_modules/composer-cli/node_modules/yargs/yargs.js:927:19)
at Object.
zachgoll (Sun, 15 Oct 2017 13:04:45 GMT):
Also, if this brings any context, when I run
```
cd dist
composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString -A admin -S
```
Composer is not recognizing the -A flag? It seems like the Admin namespace is not recognized on my system or something. Any suggestions on where I should look?
davidkel (Sun, 15 Oct 2017 14:12:36 GMT):
@zachgoll Those rules apply to v0.14.0 of composer. Specifically the `resource: "**"` where the resource can be just `**` is a new feature. It was failing for you because you were using an older version.
davidkel (Sun, 15 Oct 2017 14:13:47 GMT):
@harsha Not sure how you can get this error. What version of composer ? What platform are you using. Are you using pre-built libraries or are you trying to build them yourself ?
harsha (Sun, 15 Oct 2017 14:14:25 GMT):
@davidkel Composer version is 0.13 and I'm trying this on ubuntu-1604 on ppc64le arch
davidkel (Sun, 15 Oct 2017 14:16:53 GMT):
@Jesse-Cameron for npm you can install specific versions, eg `npm install -g composer-cli@0.13.2` or docker images docker pull hyperledger/composer-playground:0.13.2. I would recommend you persevere with 0.14.0 and read the release notes. There has been an important security enhancement added and it is probably the cause of your concerns.
davidkel (Sun, 15 Oct 2017 14:17:14 GMT):
@harsha via npm install ?
harsha (Sun, 15 Oct 2017 14:18:58 GMT):
@davidkel That's right, I have installed composer, composer-playground, composer-rest-server via npm install.
Exposed my composer-playground in background.
davidkel (Sun, 15 Oct 2017 14:25:40 GMT):
@harsha So on the face of it, it could be a platform issue, not sure why you would get that error though.
harsha (Sun, 15 Oct 2017 14:39:54 GMT):
@davidkel The .bna was processed successfully and relative docker image was created as well,
```root@p006vm30:~# docker images | grep -i dev
dev-peer0.org1.example.com-journey-0.13.1-1b9dd06e5f7353d448eb1dddc07640ec3fa9cd6d86460f686495369a1fae9d3e latest 09b781f01c65 3 hours ago 282MB
root@p006vm30:~# ``` .
harsha (Sun, 15 Oct 2017 14:39:54 GMT):
@davidkel The .bna was processed successfully and relative docker image was created as well,
```root@p006vm30:~# docker images | grep -i dev
dev-peer0.org1.example.com-journey-0.13.1-1b9dd06e5f7353d448eb1dddc07640ec3fa9cd6d86460f686495369a1fae9d3e latest 09b781f01c65 3 hours ago 282MB
root@p006vm30:~# ```
harsha (Sun, 15 Oct 2017 14:40:30 GMT):
The spawned container is failing with the mentioned error/issue.
zachgoll (Sun, 15 Oct 2017 16:27:30 GMT):
@davidkel Got it. Thanks! I will be sure to keep up with the releases better :)
zachgoll (Sun, 15 Oct 2017 16:27:30 GMT):
@davidkel Got it. Thanks! I will be sure to keep up with the releases better :)
zachgoll (Sun, 15 Oct 2017 17:09:00 GMT):
One other question... Is it possible to create a new network administrator using the `org.hyperledger.composer.system.NetworkAdmin` builtin? When you first deploy the network, the "admin" user has a password/secret of "adminpw" but I have no idea where to find this secret. I've checked the /Users/Zach/.composer-credentials/ and cannot see where this "adminpw" has come from?
zachgoll (Sun, 15 Oct 2017 17:09:00 GMT):
One other question... Is it possible to create a new network administrator using the `org.hyperledger.composer.system.NetworkAdmin` builtin? When you first deploy the network, the "admin" user has a password/secret of "adminpw" but I have no idea where to find this secret. I've checked the /Users/Zach/.composer-credentials/ and cannot see where this "adminpw" has come from?
zachgoll (Sun, 15 Oct 2017 17:09:00 GMT):
One other question... Is it possible to create a new network administrator using the `org.hyperledger.composer.system.NetworkAdmin` builtin? When you first deploy the network, the "admin" user has a password/secret of "adminpw" but I have no idea where to find this secret. I've checked the /Users/Zach/.composer-credentials/ and cannot see where this "adminpw" has come from?
zachgoll (Sun, 15 Oct 2017 17:12:21 GMT):
issue_new_identity.png
davidkel (Sun, 15 Oct 2017 18:26:37 GMT):
@harsha It's failing during init of instantiation proposal (so the chaincode container image will have been built successfully), If the npm modules aren't corrupted in anyway during download then maybe there is some sort of platform issue.
varunagarwal (Sun, 15 Oct 2017 18:39:26 GMT):
Hey I got a doubt, In my system there is one participant and one asset, ACL allows me to ensure only the asset created by a participant has *ALL* access to it, but now if I want to let one participant give read access to another participant for a specific asset, how would I define that in the acl file?
Sufbin (Sun, 15 Oct 2017 19:52:58 GMT):
Has joined the channel.
kletkeman (Mon, 16 Oct 2017 01:02:19 GMT):
I put in the acl entries that v0.14.0 requires and deployed my bna on 12.2 (which worked) and the 14.0 on bluemix. The latter gives me this error:
kletkeman (Mon, 16 Oct 2017 01:02:19 GMT):
I put in the acl entries that v0.14.0 requires and deployed my bna on 12.2 (which worked) and the 14.0 on bluemix. The latter gives me this error:
Error: The runtime API is not available
Any thoughts?
kletkeman (Mon, 16 Oct 2017 01:02:19 GMT):
I put in the acl entries that v0.14.0 requires and deployed my bna on 12.2 (which worked) and the 14.0 on bluemix. The latter gives me this error as a popup:
Error: The runtime API is not available
Any thoughts?
kletkeman (Mon, 16 Oct 2017 01:02:19 GMT):
I put in the acl entries that v0.14.0 requires and deployed my bna on 12.2 on a v1 kubernetes cluster (which worked) and the 14.0 on bluemix. The latter gives me this error as a popup:
Error: The runtime API is not available
Any thoughts?
kletkeman (Mon, 16 Oct 2017 01:46:16 GMT):
I updated all my composer components to 0.14.0 and rebuilt my bna with the new acl entries, but I get this error for all bna's, including an older one built for 0.12.2 ...
kletkeman (Mon, 16 Oct 2017 01:46:16 GMT):
I updated all my composer components to 0.14.0 and rebuilt my bna with the new acl entries, but I get this error for all bna's, including an older one built for 0.12.2 ...
Error: The runtime API is not available
Any thoughts?
lmars (Mon, 16 Oct 2017 02:26:34 GMT):
Somebody knows, what is the current status of Fabric Composer? Is it production ready?
harsha (Mon, 16 Oct 2017 03:34:27 GMT):
@davidkel I think you are correct it fails during init, this is what I see on my webpage ```Error: Error trying to instantiate composer runtime. Error: Failed to execute transaction (Timeout expired while executing transaction)```
einarpersson (Mon, 16 Oct 2017 04:41:45 GMT):
Can the system itself somehow listen to events being triggered, and run code when a event fires?
Let's say that I'd like to have a timeout-feature that returns a certain asset within x days if a condition hasn't been fulfilled until then (which would have triggered a event). I suppose I could implement this with creating a third party who would be "neutral" and listen to this event, and who would have the right permissions for revoking assets etc etc under the right conditions, but would that really be the right way of doing it? It seems wrong since I'd want this behaviour to be a part of the system logic itself and not something that requires a client.
Does my question make any sense?:)
nickyromeijn (Mon, 16 Oct 2017 06:17:09 GMT):
What would happen if peer1 has BNA version x and peer2 has BNA version y? Considering that updates must all be manually deployed across peers
nickyromeijn (Mon, 16 Oct 2017 06:17:09 GMT):
What would happen if peer1 has BNA version x and peer2 has BNA version y?
erNail (Mon, 16 Oct 2017 06:23:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oqB76NSc4G3mdnYDk) @kletkeman I'm getting the same problem. I got the error because i initialize variables outside of the transaction methods in my javascript.
sstone1 (Mon, 16 Oct 2017 06:40:07 GMT):
@einarpersson this is not possible i'm afraid; you need to use an external application (such as a crontab) to fire events in as transactions to the blockchain business network. composer can't do anything like you suggest (such as a scheduler) without fabric supporting it first, so worth raising the requirement against them?
sstone1 (Mon, 16 Oct 2017 06:41:30 GMT):
@nickyromeijn if the peers had different copies of the BNA (perhaps somebody edited the peers copy of the world state) and those different BNAs produced different changes when they executed a transaction, then the endorsement policy would reject the transaction
nickyromeijn (Mon, 16 Oct 2017 06:42:17 GMT):
@sstone1 Thanks :)
nickyromeijn (Mon, 16 Oct 2017 06:52:06 GMT):
@sstone1 Is it normal behaviour that when the BNA gets updated (upgraded ACL's / models); it is not possible to access assets or participants that have been created under the older version of the BNA? Because that's an issue im running into
sstone1 (Mon, 16 Oct 2017 06:52:35 GMT):
you can't make breaking changes to the models for any existing assets or participants
sstone1 (Mon, 16 Oct 2017 06:52:44 GMT):
for example you can't add a new required field that does not have a default value
nickyromeijn (Mon, 16 Oct 2017 06:53:24 GMT):
so you basically have to be 100% sure the requirements won't change during the existence of the blockchain?
sstone1 (Mon, 16 Oct 2017 06:53:51 GMT):
you can add new optional fields or new required fields that do have default values
nickyromeijn (Mon, 16 Oct 2017 06:54:10 GMT):
Understandable
sstone1 (Mon, 16 Oct 2017 06:54:20 GMT):
but other than that, yes - we don't have any functionality today to migrate between incompatible asset or participant models
nickyromeijn (Mon, 16 Oct 2017 06:54:54 GMT):
Well the thing was i created an identity under bna x updated the ACL's and tried to authenticate using identity x
nickyromeijn (Mon, 16 Oct 2017 06:55:26 GMT):
the network then told me the participant i tried to authenticate as didn't exist; recreating it gave me the error it did exist though
nickyromeijn (Mon, 16 Oct 2017 06:58:10 GMT):
Might've been broken ACL's though
erNail (Mon, 16 Oct 2017 07:12:07 GMT):
Is there a way to get a certain asset out of the assetRegistry ? My current code doesn't seem to work:
```return getAssetRegistry(NAMESPACE + '.MachineStatus')
.then(function(machineStatusRegistry) {
var machineStatus = machineStatusRegistry.get(machineStatusId);```
nickyromeijn (Mon, 16 Oct 2017 07:14:39 GMT):
.get returns a promise @erNail
nickyromeijn (Mon, 16 Oct 2017 07:15:04 GMT):
return getAssetRegistry(NAMESPACE + '.MachineStatus')
.then(function(machineStatusRegistry) {
var machineStatus = machineStatusRegistry.get(machineStatusId)
.then((machineStatus)=>{ console.log(machineStatus) });
erNail (Mon, 16 Oct 2017 07:21:25 GMT):
@nickyromeijn Thank you very much, that was easy.
prmdmshra (Mon, 16 Oct 2017 07:27:45 GMT):
Hi Team, Its been a while I worked on Composer. I am getting the following error in installing 'npm install -g @angular/cli' . Kindly suggest whether I need to upgarde the npm version?
Node -version : v6.11.1
npm -v: 5.3.0
npm ERR! code EINTEGRITY
npm ERR! sha512-nHsrD1PPTMSJDfU+osVsLtPkSP9YGeoOz4FDLN4r1DW4N5vqL1J+gACzTQHsfwIiWG/0/nV4yCzjTMo1zD8U1g== integrity checksum failed when using sha512: wanted sha512-nHsrD1PPTMSJDfU+osVsLtPkSP9YGeoOz4FDLN4r1DW4N5vqL1J+gACzTQHsfwIiWG/0/nV4yCzjTMo1zD8U1g== but got sha512-EvaQTxPiH2ga2PB7Rw1TTzzkUhseqJm7egynwTur3M8p6QIPrzYzsqIs8leRjTIfUbD6XSyJUkJ17QWqUdIzdw==.
prmdmshra (Mon, 16 Oct 2017 07:27:45 GMT):
Hi Team, Its been a while I worked on Composer. I am getting the following error in installing 'npm install -g @angular/cli' . Kindly suggest whether I need to upgarde the npm version? Everything seemed to be working some weeks back.
Node -version : v6.11.1
npm -v: 5.3.0
npm ERR! code EINTEGRITY
npm ERR! sha512-nHsrD1PPTMSJDfU+osVsLtPkSP9YGeoOz4FDLN4r1DW4N5vqL1J+gACzTQHsfwIiWG/0/nV4yCzjTMo1zD8U1g== integrity checksum failed when using sha512: wanted sha512-nHsrD1PPTMSJDfU+osVsLtPkSP9YGeoOz4FDLN4r1DW4N5vqL1J+gACzTQHsfwIiWG/0/nV4yCzjTMo1zD8U1g== but got sha512-EvaQTxPiH2ga2PB7Rw1TTzzkUhseqJm7egynwTur3M8p6QIPrzYzsqIs8leRjTIfUbD6XSyJUkJ17QWqUdIzdw==.
username343 (Mon, 16 Oct 2017 07:46:51 GMT):
Has joined the channel.
username343 (Mon, 16 Oct 2017 07:48:27 GMT):
Can anyone tell me the origin of the default PeerAdmin identity in the creds folder in composer installation?
nickyromeijn (Mon, 16 Oct 2017 07:54:02 GMT):
As i understand it is currently not possible to programmatically supply the businessnetwork.connect method with a certificate? (instead of storing this in ~/.composer-connection-profiles)
username343 (Mon, 16 Oct 2017 07:55:14 GMT):
so this PeerAdmin identity is pre generated and it is then supplied to create an admin on compser, am i right?
davidkel (Mon, 16 Oct 2017 07:57:32 GMT):
@username343 PeerAdmin is the result of doing a `composer identity import -p hlfv1 -u PeerAdmin -c (signer cert of a peer admin) -k (private key of said peer admin)`.
username343 (Mon, 16 Oct 2017 08:03:34 GMT):
thanks @davidkel , i presume this is a cli command. I will look into command line options for composer if it indeed is a cli program.
username343 (Mon, 16 Oct 2017 08:07:48 GMT):
so can i use any identity generated by cryptogen as the peeradmin or should i ask this question in channel fabric-ca?
einarpersson (Mon, 16 Oct 2017 08:08:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tm3C4CgRqXSHHeW7E) @sstone1 ok thanks. Is the capabilities any different if you write chaincode directly to the fabric rather than using composer, or should I understand you as if it's not possible either way as things are right now? Yes I might raise it in that case, because one of the reasons hyperledger is interesting is the robustness - and I'm afraid it is a bit lost if a core part of logic is put on an external service (that might fail!)
davidkel (Mon, 16 Oct 2017 08:13:09 GMT):
@username343 depends what you are trying to do and how your fabric is set up. All cryptogen identities will be a member of their associated MSPid so from a fabric point of view will be valid. cryptogen also defines identities that will be Peer Admin identities. Depending on how you set your channel up will dictate what identities have channel admin authority. We don't advocate using the Peer or Channel admin identities within a business network, but cryptogen can be used to generate general user identities.
username343 (Mon, 16 Oct 2017 08:16:46 GMT):
hi @davidkel , so are you saying that the identity Admin@org1.example.com generated by ca is any different than other users that can be generated using the count variable in crypto-config.yaml file?
erNail (Mon, 16 Oct 2017 08:24:14 GMT):
In the ACL, is there a way to check if a optional value is existing ? This does not seem to work:
`condition: (r.maintenanceProvider.getIdentifier === null)`
erNail (Mon, 16 Oct 2017 08:38:21 GMT):
Forget it, 3 '=' are wrong. Works with 2.
harsha (Mon, 16 Oct 2017 08:58:43 GMT):
@davidkel [ ](https://chat.hyperledger.org/channel/composer?msg=aF5kgxXHuhM4iMtea) With respect to above error, here's what was captured inside peer logs :-
```2017-10-16 08:53:13.799 UTC [couchdb] handleRequest -> DEBU a26 Entering handleRequest() method=GET url=http://couchdb:5984/composerchannel/journey-deploy%00ComposerLogLevel?attachments=true
2017-10-16 08:53:13.799 UTC [couchdb] handleRequest -> DEBU a27 HTTP Request: GET /composerchannel/journey-deploy%00ComposerLogLevel?attachments=true HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2017-10-16 08:53:13.803 UTC [couchdb] handleRequest -> DEBU a28 Couch DB Error:not_found, Status Code:404, Reason:missing
2017-10-16 08:53:13.803 UTC [couchdb] ReadDoc -> DEBU a29 Document not found (404), returning nil value instead of 404 error
2017-10-16 08:53:13.803 UTC [chaincode] func1 -> DEBU a2a [d588c7e8]No state associated with key: ComposerLogLevel. Sending RESPONSE with an empty payload
2017-10-16 08:53:13.803 UTC [chaincode] 1 -> DEBU a2b [d588c7e8]handleGetState serial send RESPONSE
2017-10-16 08:53:13.862 UTC [chaincode] processStream -> ERRO a2c Error handling chaincode support stream: rpc error: code = Canceled desc = context canceled
2017-10-16 08:53:13.862 UTC [chaincode] deregisterHandler -> DEBU a2d Deregister handler: journey-deploy:0.13.1
2017-10-16 08:53:13.862 UTC [chaincode] deregisterHandler -> DEBU a2e Deregistered handler with key: journey-deploy:0.13.1
2017-10-16 08:53:43.798 UTC [chaincode] Execute -> DEBU a2f Exit
2017-10-16 08:53:43.798 UTC [endorser] callChaincode -> DEBU a30 Exit
2017-10-16 08:53:43.798 UTC [endorser] simulateProposal -> ERRO a31 failed to invoke chaincode name:"lscc" on transaction d588c7e81a906202c5d476aa95e312488f9bae0fb533c012569d81624a19b160, error: Failed to execute transaction (Timeout expired while executing transaction)```
davidkel (Mon, 16 Oct 2017 09:14:33 GMT):
@username343 Admin@org1.example.com is an id generated by cryptogen and will have peer admin authority for peers in that organisation
username343 (Mon, 16 Oct 2017 09:16:55 GMT):
thanks @davidkel, i will follow up my remaining queries with folks in fabric-ca channel
lmars (Mon, 16 Oct 2017 09:17:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=H7JXjL5eBhjjhkJEy) @sstone1, is there such feature in the backlog?
What is the current status of Fabric Composer? Is it production ready? Do you have the roadmap to make it production ready? Where I can find this roadmap?
suvpatil (Mon, 16 Oct 2017 09:18:44 GMT):
Hi Team, I am using fabric network with TLS enable. But when I tried to deploy it gives me time out error.
below is my connection.json
{
"type": "hlfv1",
"orderers": [
{
"url": "grpcs://localhost:7050",
"hostnameOverride": "orderer.example.com",
"cert": "/home/GoWork/fabric_V1/fabric/examples/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt"
}
],
"ca": { "url": "https://localhost:7054",
"name": "ca_peerOrg1",
"trustedRoots": [],
"verify": true
},
"peers": [
{
"requestURL": "grpcs://localhost:7051",
"eventURL": "grpcs://localhost:7053",
"hostnameOverride": "peer0.org1.example.com",
"cert": "/home/GoWork/fabric_V1/fabric/examples/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt"
}
],
"keyValStore": "/home/.composer-credentials/hlfOrg1",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": 3000
}
suvpatil (Mon, 16 Oct 2017 09:23:14 GMT):
brief description of error :- Error: Error trying deploy. Error: Error trying to instantiate chaincode. Error: Timeout expired while starting chaincode basic-sample-network:0.12.2(networkid:dev,peerid:peer0.org1.example.com,tx:b4be34b950fe6284eae9395e27f22380a6fb6240464a0660cdaffc03979589fd)
Command failed
davidkel (Mon, 16 Oct 2017 09:40:15 GMT):
@suvpatil that error isn't related to TLS from the client side, you need to look at the peer logs and also the chaincode container logs to see why instantiation was either took too long, or failed to complete.
varunagarwal (Mon, 16 Oct 2017 09:41:38 GMT):
@davidkel Hey just wanted to know, can I have multiple participants access the same hyperledger fabric node?
varunagarwal (Mon, 16 Oct 2017 09:42:16 GMT):
In Ethereum, I can have a generic node, and have each participant maintain their keys and sign the transactions as needed, how is done in composer?
varunagarwal (Mon, 16 Oct 2017 09:43:47 GMT):
Basically say I have two organizations, each maintaining their own node, but within each organization there are sub-organizations that need to be represented as unique participants, how do I handle authentication of each?
sstone1 (Mon, 16 Oct 2017 09:48:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mmbmBHhpfyvoEL4MC) @lmars https://github.com/hyperledger/composer/issues/1390
varunagarwal (Mon, 16 Oct 2017 09:49:55 GMT):
@sstone1 Hey, could you answer my question posted above please?
sstone1 (Mon, 16 Oct 2017 09:51:30 GMT):
@varunagarwal it's handled a very similar way. participants who want to submit transactions to the blockchain business network need identities (digital certificates) that allow them to sign those transactions.
sstone1 (Mon, 16 Oct 2017 09:51:46 GMT):
https://hyperledger.github.io/composer/managing/participantsandidentities.html
lmars (Mon, 16 Oct 2017 09:58:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=YPkACTgSHYMj68bMo) @sstone1, thank you. So, before this list of tasks will be done, do you not recommend Fabric Composer for real (production) applications?
suvpatil (Mon, 16 Oct 2017 10:00:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uWXh9zQbqXcR86ajk) @davidkel I used kafka based ordering system...... do it effect composer network deploy?
davidkel (Mon, 16 Oct 2017 10:01:10 GMT):
@suvpatil No it will be transparent to composer. The error you received means that it hasn't got as far as interacting with the orderers
prmdmshra (Mon, 16 Oct 2017 10:20:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7Gtn2SG6SwiemMd9Q)
@sstone1 Could you please suggest
nathanaw (Mon, 16 Oct 2017 10:44:29 GMT):
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
nathanaw (Mon, 16 Oct 2017 10:54:02 GMT):
hi experts, while trying to create a new network I am getting this erro
nathanaw (Mon, 16 Oct 2017 10:54:06 GMT):
please help?
biksen (Mon, 16 Oct 2017 10:56:02 GMT):
Hi All,
biksen (Mon, 16 Oct 2017 10:56:57 GMT):
I am getting the following error while I am calling Composer REST API
biksen (Mon, 16 Oct 2017 10:56:59 GMT):
"Error trying invoke business network. Error: chaincode error (status: 500, message: Error: Serializer.toJSON only accepts instances of Resource.)"
biksen (Mon, 16 Oct 2017 10:57:50 GMT):
My composer model having nested structure
biksen (Mon, 16 Oct 2017 10:58:38 GMT):
I am using http://localhost:3000/explorer
MadhavaReddy (Mon, 16 Oct 2017 11:37:47 GMT):
hello Harsha
varunagarwal (Mon, 16 Oct 2017 12:11:41 GMT):
Anyone here know how to implement a multisig feature in the ACL file for composer?
erNail (Mon, 16 Oct 2017 12:42:19 GMT):
Is there a way to create Identities via the factory ?
robinrob (Mon, 16 Oct 2017 13:01:55 GMT):
Has joined the channel.
nickyromeijn (Mon, 16 Oct 2017 13:10:04 GMT):
what would be a proper way to get the authentication token of git or facebook through a mobile app? Opening the url in an iframe and grab the code won't work because of x-frame: deny headers
pancake (Mon, 16 Oct 2017 13:11:54 GMT):
Hi, guys! i am trying to find the blocks store in couchdb, but i can only found transactions. I use my-newrok BND, could you pls give me some advices about where composer store the info about block?
einarpersson (Mon, 16 Oct 2017 13:54:38 GMT):
Are there any plans to make ACL-rules apply to events? At first glance this seems to be a pretty critical issue for our use case (being able to communicate the events in a safe/private manner).
nickyromeijn (Mon, 16 Oct 2017 13:58:11 GMT):
Is there a proper programmatically way to retrieve the rest server access token?
lmars (Mon, 16 Oct 2017 14:12:23 GMT):
@sstone1, I'm sorry but I couldn't find described problem (impossible to do complex migration) in roadmap.
And, I suppose, you can close this: https://github.com/hyperledger/composer/issues/670 :)
lmars (Mon, 16 Oct 2017 14:14:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eWSWnAktNDMMx4mrj) @pancake, as I know, only world state is stored in couchdb
glotov (Mon, 16 Oct 2017 14:47:00 GMT):
Hi! Does `getCurrentParticipant()` works only if the transaction made by `composer-client` (like in 'pii' example)? If the transaction is made by the composer-rest-server, the function always returns null. Please confirm.
davidkel (Mon, 16 Oct 2017 14:51:15 GMT):
@glotov probably you are not running v0.14.0 and you are using the admin or PeerAdmin identity through the rest server. A security enhancement that has gone into v0.14.0 means that all identities are now bound to participants
glotov (Mon, 16 Oct 2017 14:55:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2KgndafmLcqR3RqDH) @davidkel do you mean, that rest-server 0.14.0 can issue transactions on behalf of an identity/participant? Is there any authentication there? Will definitely try, thank you
glotov (Mon, 16 Oct 2017 14:55:49 GMT):
@davidkel do you mean, that rest-server 0.14.0 can issue transactions on behalf of an identity/participant? Is there any authentication there? Will definitely try, thank you
pschnap (Mon, 16 Oct 2017 15:16:24 GMT):
Has joined the channel.
pschnap (Mon, 16 Oct 2017 15:17:01 GMT):
hey all, I'm trying to listen to a composer chaincode for events (using one of the client SDKs), does the composer chaincode user custom events or chaincode events when it emits?
pschnap (Mon, 16 Oct 2017 15:17:01 GMT):
hey all, I'm trying to listen to a composer chaincode for events (using one of the client SDKs), does the composer chaincode use custom events or chaincode events when it emits?
DennisM330 (Mon, 16 Oct 2017 15:26:26 GMT):
When using the hyperledger composer server with authentication enabled in multi-user mode, one must first issue the POST /wallets/{id}/identities/{fk}/setDefault using the wallet and identity you have registered. Once that is done you can access an API for which your identity, which is now the default used on API calls, has appropriate persmissions in the model's ACL. If multiple client applications or middleware clients are accessing a given instance of the composer-rest-server, how do you ensure when you do make an API call that the default identity you previously set using the POST above is the identity that is used on your API call? Would it not be possible that some other client application reset the default identity is between the time your client application set the identity and then issued the API call?
ajp (Mon, 16 Oct 2017 15:37:05 GMT):
@DennisM330 In the case of multiple middleware clients, you would have to register a separate user with a separate wallet for each of the accessing client applications. Each would have its own API key and would login using its own account as defined by the REST server's configured passport strategies.
ajp (Mon, 16 Oct 2017 15:39:24 GMT):
In the case of the application I'm currently making, I have a single front-end I've built out. The login page of this front-end redirects you to the REST server's auth endpoint (in my case, `/auth/github`), the user logs in and is then redirected (per OAuth 2.0 specs) to the REST server swagger UI. The user must copy the displayed access token and paste it into the front-end's login page and the client's session is then configured to use that API key which is connected to that user's wallet. The user is then shown an identity selection page which allows him to select which identity to use, which essentially translates into a POST call to the REST server setting the default identity for that wallet
ajp (Mon, 16 Oct 2017 15:39:24 GMT):
In the case of the application I'm currently making, I have a single front-end I've built out. The login page of this front-end redirects you to the REST server's auth endpoint (in my case, `/auth/github`), the user logs in and is then redirected (per OAuth 2.0 specs, because I'm using github, passport does not necessarily have to be oauth) to the REST server swagger UI. The user must copy the displayed access token and paste it into the front-end's login page and the client's session is then configured to use that API key which is connected to that user's wallet. The user is then shown an identity selection page which allows him to select which identity to use, which essentially translates into a POST call to the REST server setting the default identity for that wallet
ajp (Mon, 16 Oct 2017 15:40:49 GMT):
The biggest hurdle with this setup is that there cannot exist any automation for transferring the API key to client front-end. The user MUST go through the REST server's authentication flow.
ajp (Mon, 16 Oct 2017 15:41:46 GMT):
Unless the REST server back-end is modified to, for example, post the received API key as provided in the auth callback to a different server (i.e. my front-end). This is non-ideal as it requires modification of the REST server which should be a black box
nathanaw (Mon, 16 Oct 2017 15:42:22 GMT):
@DennisM330 Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
nathanaw (Mon, 16 Oct 2017 15:42:28 GMT):
please help folks?
DennisM330 (Mon, 16 Oct 2017 15:42:35 GMT):
@ajp Thanks, I think what you answered is key. I assume you mean the generated access token is the API Key? And the API key/access token is tied to the user's wallet
ajp (Mon, 16 Oct 2017 15:43:14 GMT):
@nathanaw Did you run `./createComposerProfile.sh` when setting up the local composer network?
ajp (Mon, 16 Oct 2017 15:43:26 GMT):
@DennisM330 Yes, API key == access token
ajp (Mon, 16 Oct 2017 15:43:26 GMT):
@DennisM330 Yes, API key == access token, and yes it is tied to the user's wallet
nathanaw (Mon, 16 Oct 2017 15:55:46 GMT):
yes i did. still throwing this error. @ajp please help... thank you
ajp (Mon, 16 Oct 2017 15:56:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jpmGw4uRKqGgToSPc) @nathanaw Can you describe the exact steps you're taking and what you're doing that is returning this error?
pschnap (Mon, 16 Oct 2017 15:58:54 GMT):
can I listen to composer chaincode events using the node SDK?
VincentBiret (Mon, 16 Oct 2017 15:59:52 GMT):
Has joined the channel.
DennisM330 (Mon, 16 Oct 2017 16:20:23 GMT):
@alp One follow-up if you do not mind? So if a client app tries to to set the default identity with a wallet ID that is not associated with its access token, I assume the client will receive some type of unauthorized error or other error?
nathanaw (Mon, 16 Oct 2017 16:28:22 GMT):
@DennisM330 hi dennis, is there a way to run ./composer.sh without having internet connection? ie. stop pulling latest fabric images
nathanaw (Mon, 16 Oct 2017 16:28:33 GMT):
please help @DennisM330 thank you
DennisM330 (Mon, 16 Oct 2017 16:39:09 GMT):
@nathanaw Which composer.sh are you referring to?
nathanaw (Mon, 16 Oct 2017 16:39:49 GMT):
https://hyperledger.github.io/composer/installing/using-playground-locally.html
nathanaw (Mon, 16 Oct 2017 16:43:17 GMT):
@DennisM330 https://hyperledger.github.io/composer/installing/using-playground-locally.html
nathanaw (Mon, 16 Oct 2017 16:43:54 GMT):
@DennisM330 also each time i run composer.sh, the previously created BNA disappeared
nickyromeijn (Mon, 16 Oct 2017 16:45:01 GMT):
@ajp i just automated the process, wrote a small script that injects javascript into a webview and reads the access token
nickyromeijn (Mon, 16 Oct 2017 16:45:23 GMT):
@ajp Not automating is destroys the usability of said api otherwise; it's a bit hacky but it works for a proof of concept app
nickyromeijn (Mon, 16 Oct 2017 16:45:23 GMT):
@ajp Not automating it destroys the usability of said api otherwise; it's a bit hacky but it works for a proof of concept app
nathanaw (Mon, 16 Oct 2017 16:52:58 GMT):
any tips folks?
DennisM330 (Mon, 16 Oct 2017 16:53:08 GMT):
@nathandaw If all you want to do is working with Playground locally, you can do a npm install -g composer-playground. But you must install Node.js first. See https://hyperledger.github.io/composer/installing/development-tools.html
nathanaw (Mon, 16 Oct 2017 16:53:40 GMT):
no need for fabric?
DennisM330 (Mon, 16 Oct 2017 17:14:24 GMT):
@nathanaw If you want to test against a Fabric, then yes you can follow step 2 in the link to install fabric
ajp (Mon, 16 Oct 2017 17:21:31 GMT):
@DennisM330 Yes, I imagine it will return some sort of Wallet not found error. I load up the chaincode wallet ID with a GET request first.
@nickyromeijn There's a couple ways the access token can be returned, but as you said, it's a bit hacky, and ideally a client application using the REST server wouldn't have to depend on such a solution.
@nathanaw You don't need any fabric to use the playground, in fact I encourage you to use http://composer-playground.mybluemix.net/ in order to play around with composer, learn how model file and transaction processor functions work, etc. When you're ready to test things out locally, I would follow the setup procedure for running the fabric network locally (not just the playground). once that's up and running, you can use the 'export' button in playground to download the bna file and deploy it to your local fabric network. But you do NOT need a fabric network initially to test out composer.
ajp (Mon, 16 Oct 2017 17:21:31 GMT):
@DennisM330 Yes, I imagine it will return some sort of Wallet not found error. I load up the chaincode wallet ID with a GET request first.
@nickyromeijn There's a couple ways the access token can be returned, but as you said, it's a bit hacky, and ideally a client application using the REST server wouldn't have to depend on such a solution.
@nathanaw You don't need any fabric to use the playground, in fact I encourage you to use http://composer-playground.mybluemix.net/ in order to play around with composer, learn how model file and transaction processor functions work, etc. When you're ready to test things out locally, I would follow the setup procedure for running the fabric network locally (not just the playground). once that's up and running, you can use the 'export' button in playground to download the bna file and deploy it to your local fabric network. But you do NOT need a fabric network initially to test out composer (which I think is one of composer's strengths!)
ajp (Mon, 16 Oct 2017 17:21:31 GMT):
@DennisM330 Yes, I imagine it will return some sort of Wallet not found error. I load up the chaincode wallet ID with a GET request first.
@nickyromeijn There's a couple ways the access token can be returned, but as you said, it's a bit hacky, and ideally a client application using the REST server wouldn't have to depend on such a solution.
@nathanaw You don't need any fabric to use the playground, in fact I encourage you to use http://composer-playground.mybluemix.net/ in order to play around with composer, learn how model file and transaction processor functions work, etc. When you're ready to test things out locally, I would follow the setup procedure for running the fabric network locally (not just the playground). once that's up and running, you can use the 'export' button in playground to download the bna file and deploy it to your local fabric network. But you do NOT need a fabric network initially to test out composer (which I think is one of composer's real strengths!)
ajp (Mon, 16 Oct 2017 17:21:31 GMT):
@DennisM330 Yes, I imagine it will return some sort of Wallet not found error. I load up the chaincode wallet ID with a GET request first.
@nickyromeijn There's a couple ways the access token can be returned, but as you said, it's a bit hacky, and ideally a client application using the REST server wouldn't have to depend on such a solution.
@nathanaw You don't need any fabric to use the playground, in fact I encourage you to use http://composer-playground.mybluemix.net/ in order to play around with composer, learn how model file and transaction processor functions work, etc. When you're ready to test things out locally, I would follow the setup procedure for running the fabric network locally (not just the playground). once that's up and running, you can use the 'export' button in playground to download the bna file and deploy it to your local fabric network. But you do NOT need a fabric network initially to test out composer (which I think is one of composer's big strengths!)
ajp (Mon, 16 Oct 2017 17:24:12 GMT):
Also @DennisM330 I highly recommend setting up a persistent data store either with mongo or some other db if you haven't done so yet, it makes using authentication/multi-user mode much nicer. Without persistent storage, every time you shut off `composer-rest-server` your identities and wallets will be destroyed, which is a real hassle to set-up again when you've got a bunch of different users each with their own identities etc. A DB will persist all that through restarts
glotov (Mon, 16 Oct 2017 18:34:21 GMT):
I upgraded to 0.14.0. Now, when I start my second rest server, for my second org, I get the following error: ```$ ~/bin/composer-rest-server -p org2 -n my-network -i MainPeerAdmin -s randomString -N never -w true -P 3002
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: Admin@node006.example.com)
It will be retried for the next request.``` But the first rest server, for my first org, works fine.
glotov (Mon, 16 Oct 2017 18:39:45 GMT):
If I get it right, it is connected to new auth feature of 0.14.0. So how can I introduce org2's admin to the rest server?
joaquimpedrooliveira (Mon, 16 Oct 2017 18:55:40 GMT):
Has joined the channel.
joaquimpedrooliveira (Mon, 16 Oct 2017 18:57:45 GMT):
Hi, all. Where can I find documentation about how to connect Composer to an existing hyperledger-fabric network?
joaquimpedrooliveira (Mon, 16 Oct 2017 18:58:32 GMT):
We have a custom network up and running and we'd like to use Composer to write/show some demos
tennenjl (Mon, 16 Oct 2017 19:10:23 GMT):
@joaquimpedrooliveira Check out the docs on connection profiles here: https://hyperledger.github.io/composer/reference/connectionprofile.html
joaquimpedrooliveira (Mon, 16 Oct 2017 19:51:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wAzDMbLDjsTdsefpb) @tennenjl Thank you! :thumbsup_tone3:
ykcai (Mon, 16 Oct 2017 19:55:28 GMT):
anyone know the timestamp date format that composer uses? `"timestamp": "2017-10-12T19:17:43.044Z"`
joaquimpedrooliveira (Mon, 16 Oct 2017 20:26:49 GMT):
@tennenjl , I've read the docs but couldn't find how to override (if it's needed) the files in `"keyValStore": "/YOUR_HOME_DIR/.composer-credentials"`
tennenjl (Mon, 16 Oct 2017 20:28:22 GMT):
@joaquimpedrooliveira Check out https://stackoverflow.com/questions/46664278/how-to-get-peer-admins-cert-and-key-for-deploy#
joaquimpedrooliveira (Mon, 16 Oct 2017 20:34:20 GMT):
@tennenjl Thanks! I'll check this!
miiiiiyoung (Tue, 17 Oct 2017 01:46:07 GMT):
Has joined the channel.
pancake (Tue, 17 Oct 2017 01:56:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KuKBZxrrKB9TCnvnv) @lmars Thanks for your reply Imars, i was wondering where is the blocks store, if you know, could you pls tell me? Thanks a lot!
lmars (Tue, 17 Oct 2017 02:34:01 GMT):
@pancake, I'm not sure, but there is something similar in /var/hyperledger/production (inside peer container)
pancake (Tue, 17 Oct 2017 02:42:21 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q2D85Y38CbMXjyyLH) @lmars Thanks for your advice, i would try it!
gquee (Tue, 17 Oct 2017 05:05:24 GMT):
Has joined the channel.
biksen (Tue, 17 Oct 2017 05:49:58 GMT):
Hi All,
I am getting the following error while I am calling Composer REST API (transaction processor function)
"Error trying invoke business network. Error: chaincode error (status: 500, message: Error: Serializer.toJSON only accepts instances of Resource.)"
My composer model having nested structure
I am using http://localhost:3000/explorer
biksen (Tue, 17 Oct 2017 05:50:04 GMT):
Please help
ibmamnt (Tue, 17 Oct 2017 06:49:21 GMT):
Hope someone could answer to my question in stackover flow.
ibmamnt (Tue, 17 Oct 2017 06:49:22 GMT):
https://stackoverflow.com/questions/46784080/how-do-i-generate-credentials-issued-by-composer-identity-issue-required-to
erNail (Tue, 17 Oct 2017 06:50:20 GMT):
Hi, is there a way to create identities via the factory ? I want to create identities in my setupDemo-Transaction
aneb (Tue, 17 Oct 2017 07:05:56 GMT):
Has joined the channel.
berndoostrum (Tue, 17 Oct 2017 07:24:41 GMT):
Has joined the channel.
metalog (Tue, 17 Oct 2017 07:49:40 GMT):
Has joined the channel.
johncaboose (Tue, 17 Oct 2017 08:11:44 GMT):
Has left the channel.
munireddya (Tue, 17 Oct 2017 09:51:21 GMT):
CAn any body tell me what coud be the wrong ...
munireddya (Tue, 17 Oct 2017 09:51:21 GMT):
Can any body tell me what could be the wrong ...
munireddya (Tue, 17 Oct 2017 10:11:07 GMT):
munireddy@muniubuntu:~/Decentralized-Energy-Composer/dist$ composer network deploy -a decentralized-energy-network.bna -p hlfv1 -i PeerAdmin -s randomString
Deploying business network from archive: decentralized-energy-network.bna
ParseException: Expected identifier but "*" found. Line 178 column 16
Command failed
JoshuaRippon (Tue, 17 Oct 2017 10:12:22 GMT):
Hi everyone. I am trying to piece together how creating a business network on Hyperledger Composer fits in with the concept of channels in Hyperledger Fabric. When I create a simple business network on Composer and I add participants and issue ID's, am I creating peers on one channel? I really like how I can set up access controls for all my participants, however since they all keep a record of the
varunagarwal (Tue, 17 Oct 2017 10:13:11 GMT):
Afaik channels need to made at the transaction stage and composer does not support this feature yet. Its in the roadmap though
JoshuaRippon (Tue, 17 Oct 2017 10:14:08 GMT):
...transactions, they can all see who made what transactions and the contents of the transactions. Is there a way of limiting what is printed on the transactions so other participants cannot see the contents of the transaction?
varunagarwal (Tue, 17 Oct 2017 10:15:36 GMT):
Yes that is called a channel, but composer does not support it. You will need chain code for it. Check this out => https://github.com/hyperledger/composer/issues/1390
varunagarwal (Tue, 17 Oct 2017 10:16:51 GMT):
Im new to composer as well, so might want to get a confirmation from someone else as well :D
mrosack (Tue, 17 Oct 2017 10:17:46 GMT):
i've been setting up a project where i have multiple composer projects running on the same fabric network in different channels, but it'd definitely be nice if there was a better way to do that ;)
varunagarwal (Tue, 17 Oct 2017 10:18:39 GMT):
@mrosack How did you manage that?
JoshuaRippon (Tue, 17 Oct 2017 10:19:01 GMT):
Sounds awesome @mrosack!
varunagarwal (Tue, 17 Oct 2017 10:19:14 GMT):
Fabirc is so complicated to setup compared to ethereum
mrosack (Tue, 17 Oct 2017 10:19:33 GMT):
just defining separate connection profiles instead of using the default hlfv1 profile
varunagarwal (Tue, 17 Oct 2017 10:19:37 GMT):
But the additional features are a lot . . . .
varunagarwal (Tue, 17 Oct 2017 10:20:06 GMT):
@mrosack What about storing common assets that every participant should have access to? Is there like a public channel?
mrosack (Tue, 17 Oct 2017 10:20:41 GMT):
nope, that's the big downfall, there's no atomic swaps between channels - we're implementing it using a cross-chain web service call
varunagarwal (Tue, 17 Oct 2017 10:20:57 GMT):
Im working in supply chain and eventually vendors would want to hide pricing data, any suggestions?
varunagarwal (Tue, 17 Oct 2017 10:21:32 GMT):
cause Golang is too much of investment for me to pickup
mrosack (Tue, 17 Oct 2017 10:22:06 GMT):
i'm not sure, we've got one public channel that everyone belongs to, and n private channels with subsets of participants
JoshuaRippon (Tue, 17 Oct 2017 10:22:26 GMT):
@mrosack what are the limitations of putting large amounts of participants (1000's) on just one business network?
mrosack (Tue, 17 Oct 2017 10:22:31 GMT):
obviously, that's not going to be fun to maintain, but i'm hoping some better guidance comes out before we go live
varunagarwal (Tue, 17 Oct 2017 10:22:40 GMT):
@mrosack Also does each participant maintains his own node? cause we might need one node to cater to multiple participants. In our system, they will intract with fabric via mobile app
mrosack (Tue, 17 Oct 2017 10:23:07 GMT):
i'm just a hacker, not a fabric/composer expert, i've only been playing with this for a month or so :)
JoshuaRippon (Tue, 17 Oct 2017 10:23:16 GMT):
Am I able to limit the data that is published on the transaction?
varunagarwal (Tue, 17 Oct 2017 10:23:19 GMT):
which means having one central nodejs server that provides the API calls for mobile apps to consume. Well you know way too much :D
JoshuaRippon (Tue, 17 Oct 2017 10:23:30 GMT):
haha thats a month more than me!!
varunagarwal (Tue, 17 Oct 2017 10:24:00 GMT):
@JoshuaRippon Yes that is via channels. Something we don't know how to do
I started this 2 days ago. Iv built dapps on solidity but fabric is a different beast
varunagarwal (Tue, 17 Oct 2017 10:25:45 GMT):
@JoshuaRippon btw, we will probably have around 150,000 participants on one business network and about 10,000 assets being added every week
JoshuaRippon (Tue, 17 Oct 2017 10:26:20 GMT):
Coz what I would like to do @varunagarwal is to (potentially) have one channel with lots of participants. They can make transactions and see their assets, but all they can see on the transaction log is a transaction Id, not the contents of their transaction
varunagarwal (Tue, 17 Oct 2017 10:26:22 GMT):
Cause our supply chain has those many small businesses so im quite worried as well :D
varunagarwal (Tue, 17 Oct 2017 10:27:04 GMT):
So contents of a transaction can be on a channel, whereas the transaction id can be shared via events maybe?
varunagarwal (Tue, 17 Oct 2017 10:27:34 GMT):
There is a way to limit read access to assets via the .acl file
varunagarwal (Tue, 17 Oct 2017 10:27:40 GMT):
Im just relying on that for now
mrosack (Tue, 17 Oct 2017 10:28:08 GMT):
but if you're running a full node, i think you can see everything regardless of ACL permissions, which I think is @JoshuaRippon's concern
varunagarwal (Tue, 17 Oct 2017 10:29:12 GMT):
yes , btw @mrosack how many nodes are you running?
You see my problem is, I have like 40-50 vendors who will access fabric via a mobile app. Now they can't afford to run their own nodes and some don't even own laptops
JoshuaRippon (Tue, 17 Oct 2017 10:29:15 GMT):
Yea, I have set up different read permissions, however people who shouldn't have access to read the transaction still can see it come up on the transaction history
nickyromeijn (Tue, 17 Oct 2017 10:29:16 GMT):
@mrosack Thats one of my concerns as well, im storing private data in the chain and while the ACL covers this on requests direct access to the node is a bit of an issue
nickyromeijn (Tue, 17 Oct 2017 10:29:34 GMT):
@varunagarwal You're going to use the REST server for mobile interfacing?
mrosack (Tue, 17 Oct 2017 10:29:36 GMT):
i'm running one development node, i have no production experience :)
varunagarwal (Tue, 17 Oct 2017 10:29:40 GMT):
yes REST server
varunagarwal (Tue, 17 Oct 2017 10:30:23 GMT):
but that also means one node will cater to like 40-50 different participants, so storing their certificates is another concern to me. Now I can control the read access via nodejs cause the nodes will only be run by regulator type roles
JoshuaRippon (Tue, 17 Oct 2017 10:30:39 GMT):
It would be great if I could make it so that the only thing you can see in the transaction history is just a reference to it, not the actual contents
JoshuaRippon (Tue, 17 Oct 2017 10:31:10 GMT):
or else the acl becomes a bit pointless
nickyromeijn (Tue, 17 Oct 2017 10:31:14 GMT):
@varunagarwal That is also one of my biggest issues with the current rest server; the product im creating is a POC so for now it's no big issue. However storing all the participant certificates in one mongo database sounds retarded
nasht00 (Tue, 17 Oct 2017 10:31:23 GMT):
Hi, regarding the 0.14 breaking changes, binding the admin user.
In the CLI, I got it it works fine adding `-A admin -S` to my deploy command.
How does it work with code however?
My test currently had the following:
```
profileName = 'test';
BrowserFS.initialize(new BrowserFS.FileSystem.InMemory());
var adminConnection = new AdminConnection({
fs: bfs_fs
});
sinon.stub(VBCClient.prototype, 'getNetworkConnection').callsFake((userID, password) => {
var businessNetworkConnection = new BusinessNetworkConnection({
fs: bfs_fs
});
return businessNetworkConnection.connect(profileName, 'vbc-network', userID, password)
.then(() => {
return Promise.resolve(businessNetworkConnection);
});
});
return adminConnection.createProfile(profileName, {
type: 'embedded'
})
.then(() => {
return adminConnection.connect(profileName, 'admin', 'Xurw3yU9zI0l');
})
.then(() => {
return BusinessNetworkDefinition.fromDirectory(path.resolve(__dirname, '../../contract-network'));
})
.then(bnd => {
return adminConnection.deploy(bnd);
});
```
I get a "document update conflict".
Not sure if it's related but, where should the admin binding happen?
razik29 (Tue, 17 Oct 2017 10:31:38 GMT):
The current setup (following the HL documents) with the hyperledger fabric composer allows one transaction per block. Is there a way we can configure a number of transactions (say 10 transactions in 1 block) in a single block?
varunagarwal (Tue, 17 Oct 2017 10:32:00 GMT):
@razik29 oh i thought many t x could be sent per block and in a fixd order
mrosack (Tue, 17 Oct 2017 10:32:18 GMT):
from what i've been able to piece together, i don't think that's on the roadmap @JoshuaRippon, but i think the eventual goal is to be able to have a "fabric" of different channels with atomic swaps where only participants of each channel have visibility to data in that channel
mrosack (Tue, 17 Oct 2017 10:32:53 GMT):
at least, i hope that's the eventual goal :)
razik29 (Tue, 17 Oct 2017 10:34:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CCECesw6KoDQKXerv) @varunagarwal Yeah, that's what the documentation says. Multiple transactions in a single block. But with the sample network running, following the composer documentation, it seems we can have only one transaction per block currently. I guess, there should be a way to configure this. I couldn't find out this info given in the documentation.
mrosack (Tue, 17 Oct 2017 10:35:12 GMT):
i'm not 100% sure, but i think i've been able to jam in multiple transactions in my dev environment using Promise.all, @razik29
mrosack (Tue, 17 Oct 2017 10:35:44 GMT):
when i'm seeding data to my fabric i Promise.all multiple transactions at once
JoshuaRippon (Tue, 17 Oct 2017 10:36:25 GMT):
Hopefully @mrosack. But at the moment, just using one channel, it seems like the transaction is recorded in its entirety on the blockchain. Doesn't this defeat the purpose of seeting up reading permissions for different participants?
mrosack (Tue, 17 Oct 2017 10:37:06 GMT):
yeah, i agree, but in my mind the ACL rules are more for enforcing business logic than privacy
mrosack (Tue, 17 Oct 2017 10:37:16 GMT):
party x can do this, but party y can't
mrosack (Tue, 17 Oct 2017 10:37:24 GMT):
not party x can see this and party y can't
mrosack (Tue, 17 Oct 2017 10:38:06 GMT):
i haven't used any read-prevention ACL rules so far, and agree that they seem useless
JoshuaRippon (Tue, 17 Oct 2017 10:38:26 GMT):
Ok. The ACL rules are actually really cool
mrosack (Tue, 17 Oct 2017 10:38:45 GMT):
but if you have a scenario where there are parties using the blockchain but trusting a third party to run the blockchain, the read ACLs could make sense
JoshuaRippon (Tue, 17 Oct 2017 10:39:45 GMT):
you can set it up so that only a particular participant can see their accountbalance (as an example). However when I created this, it added the accountBalance transaction to the blockchain for everyone to seee
JoshuaRippon (Tue, 17 Oct 2017 10:40:52 GMT):
They cannot see the accountBalance asset, however they can see a record of its creation
varunagarwal (Tue, 17 Oct 2017 10:41:07 GMT):
@mrosack Read preventions rules seem to work great in composer playground,
varunagarwal (Tue, 17 Oct 2017 10:41:32 GMT):
@JoshuaRippon How did you write two Acl for the same asset?
mrosack (Tue, 17 Oct 2017 10:41:59 GMT):
composer playground is just a controlled view of the blockchain, @varunagarwal
JoshuaRippon (Tue, 17 Oct 2017 10:42:37 GMT):
You can give different participants different access rules to the same asset
varunagarwal (Tue, 17 Oct 2017 10:43:00 GMT):
@mrosack Ya so when i login to the same business network from different participant ids, using READ acl rules, i could control which participant saw what assets, but now, why cant the node just send an SQL query for the information?
munireddya (Tue, 17 Oct 2017 10:43:55 GMT):
while deploying I got the below error
munireddya (Tue, 17 Oct 2017 10:43:55 GMT):
while deploying .bna file I got the below error
munireddya (Tue, 17 Oct 2017 10:43:57 GMT):
ParseException: Expected identifier but "*" found. Line 178 column 16
Command failed
munireddya (Tue, 17 Oct 2017 10:44:48 GMT):
What could be the problem?
JoshuaRippon (Tue, 17 Oct 2017 10:44:52 GMT):
Can I see the script @munireddya?
munireddya (Tue, 17 Oct 2017 10:46:37 GMT):
@JoshuaRippon file script you want to see?
munireddya (Tue, 17 Oct 2017 10:46:37 GMT):
@JoshuaRippon which file script you want to see?
JoshuaRippon (Tue, 17 Oct 2017 10:47:30 GMT):
The place which gave you the error, (Line 178 column 16)
varunagarwal (Tue, 17 Oct 2017 10:47:45 GMT):
its in an .acl file right?
munireddya (Tue, 17 Oct 2017 10:48:04 GMT):
munireddy@muniubuntu:~/Decentralized-Energy-Composer$ cd dist
munireddy@muniubuntu:~/Decentralized-Energy-Composer/dist$ composer network deploy -a decentralized-energy-network.bna -p hlfv1 -i PeerAdmin -s randomString
Deploying business network from archive: decentralized-energy-network.bna
ParseException: Expected identifier but "*" found. Line 178 column 16
Command failed
varunagarwal (Tue, 17 Oct 2017 10:48:30 GMT):
no what we meant was to show the exact line 178 so we can see
varunagarwal (Tue, 17 Oct 2017 10:48:50 GMT):
is it in an asset/ tx/ participant / event or acl file?
munireddya (Tue, 17 Oct 2017 10:49:06 GMT):
there is no file name..
varunagarwal (Tue, 17 Oct 2017 10:49:27 GMT):
then where is Line 178? Is is written somewhere right/
munireddya (Tue, 17 Oct 2017 10:49:29 GMT):
deploying .bna file
munireddya (Tue, 17 Oct 2017 10:49:53 GMT):
in virtual box ubuntu
varunagarwal (Tue, 17 Oct 2017 10:49:57 GMT):
Line 178 is stored somewhere, the error looks like a syntax based error
JoshuaRippon (Tue, 17 Oct 2017 10:50:00 GMT):
when you created the .bna file did you get any errors?
munireddya (Tue, 17 Oct 2017 10:50:09 GMT):
no
varunagarwal (Tue, 17 Oct 2017 10:50:19 GMT):
Upload the .bna file to composer playground
varunagarwal (Tue, 17 Oct 2017 10:50:27 GMT):
and see ?
varunagarwal (Tue, 17 Oct 2017 10:50:43 GMT):
" * " to me seems like a namespace issue
JoshuaRippon (Tue, 17 Oct 2017 10:51:43 GMT):
Hey any of you guys happen to live in London? I would be keen to meet up and discuss these things!
JoshuaRippon (Tue, 17 Oct 2017 10:52:41 GMT):
I agree with @varunagarwal. If you haven't tested the .bna file on playground, that would be a good start
erNail (Tue, 17 Oct 2017 10:53:35 GMT):
So, how can you use the playground locally with a running fabric chain ? I can use it locally with all data stored in the browser, but not with the chain. The PeerAdmin Login is greyed out
JoshuaRippon (Tue, 17 Oct 2017 10:57:41 GMT):
@erNail I think you have to download Composer locally, which only runs on Linux or Mac. I ran into that issue too because I am running my code on a ubuntu virtual box and only have a windows laptop
erNail (Tue, 17 Oct 2017 10:58:13 GMT):
@JoshuaRippon I've installed the playground locally
JoshuaRippon (Tue, 17 Oct 2017 10:58:27 GMT):
*playground haha
razik29 (Tue, 17 Oct 2017 10:58:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=H7cAFf56fSok8ur2S) @mrosack I call the Rest API to make a transaction from my client system. However fast I am to make transactions (Used performance tool such as Jmeter to make a transaction), it will create a block for each transaction. I would like to know if there is a way we can make multiple transactions in a block through the 'composer API'?
erNail (Tue, 17 Oct 2017 10:59:18 GMT):
@JoshuaRippon I guess i have to deploy the bna directly in the playground ? When i deploy it via console i can't see any way to connect to it in playground
JoshuaRippon (Tue, 17 Oct 2017 10:59:43 GMT):
Yea, have you tried that yet?
mrosack (Tue, 17 Oct 2017 11:00:17 GMT):
@razik29: you could try using the javascript composer-client library to send transactions instead of going through the REST API
mrosack (Tue, 17 Oct 2017 11:01:25 GMT):
that's how i seed my fabric
erNail (Tue, 17 Oct 2017 11:02:45 GMT):
@JoshuaRippon Trying now
erNail (Tue, 17 Oct 2017 11:08:02 GMT):
@JoshuaRippon Maybe you can help me with another thing: I have a SetupDemo-Transaction, and i want to create identities in it. Is that possible ?
JoshuaRippon (Tue, 17 Oct 2017 11:08:47 GMT):
hahaha I was literally trying to do the same thing this morning! Surely there is a way
JoshuaRippon (Tue, 17 Oct 2017 11:08:59 GMT):
I will have a look now
JoshuaRippon (Tue, 17 Oct 2017 11:09:55 GMT):
The question I am trying to answer atm @erNail is if I can limit the information that is published in the transaction record
JoshuaRippon (Tue, 17 Oct 2017 11:10:40 GMT):
I don't want the transaction record to record the actual details of the transaction, I just want it to be a reference to the transaction
erNail (Tue, 17 Oct 2017 11:16:58 GMT):
@JoshuaRippon Okay, thanks. Also, i tried to deploy the bna in my local playground, i get this error:
```Error: Failed to load connection profile ce0f135f7a63287ab86f0dcc0732e185c1a60d62-hlfabric. Error was Error: ENOENT: no such file or directory, open '/home/composer/.composer-connection-profiles/ce0f135f7a63287ab86f0dcc0732e185c1a60d62-hlfabric/connection.json'```
Regarding the transaction records: The transaction records are the same that are found in the historian, right ?
razik29 (Tue, 17 Oct 2017 11:27:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=a67nshHFaRE6SMaRD) @mrosack I have been believing that the 'transaction id' which we get out of doing a transaction is the 'Block ID' as I don't see anyother unique ID. Am I right?
razik29 (Tue, 17 Oct 2017 11:27:59 GMT):
Transaction_Ids.PNG
JoshuaRippon (Tue, 17 Oct 2017 11:44:04 GMT):
@erNail Do you currently have a fabric connection running?
varunagarwal (Tue, 17 Oct 2017 11:45:01 GMT):
@JoshuaRippon Is there an equivalent of a blockexplorer in fabric?
JoshuaRippon (Tue, 17 Oct 2017 11:45:31 GMT):
Not sure sorry!
erNail (Tue, 17 Oct 2017 11:45:50 GMT):
@JoshuaRippon I started the playground via the `curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash` command, which starts a fabric blockchain. Then i try to deploy via playground.
erNail (Tue, 17 Oct 2017 11:46:53 GMT):
@varunagarwal There is the Hyperledger Blockchain Explorer which can be used for fabric chains. https://github.com/hyperledger/blockchain-explorer
varunagarwal (Tue, 17 Oct 2017 11:47:09 GMT):
Thanks
varunagarwal (Tue, 17 Oct 2017 11:47:34 GMT):
Does this need a participant to be used? Caused arn't queries/ READ rights determined by the ACL file?
JoshuaRippon (Tue, 17 Oct 2017 11:51:34 GMT):
Because I have only used the web browser one I am not too sure sorry @erNail so you don't have to go through this script process on the bottom of this page https://hyperledger.github.io/composer/installing/development-tools.html
JoshuaRippon (Tue, 17 Oct 2017 11:51:36 GMT):
?
pradeeppadmarajaiah (Tue, 17 Oct 2017 12:24:09 GMT):
How to Start Playground in the developer environment ? Please provide the document.
I am following the developer installation guide. https://hyperledger.github.io/composer/tutorials/developer-guide.html
If you want to run the Playground locally, install the composer-playground using the following command.
npm install -g composer-playground
I dont see ,how to start the playground after that
ilyap (Tue, 17 Oct 2017 12:28:17 GMT):
Has joined the channel.
ilyap (Tue, 17 Oct 2017 12:28:58 GMT):
@pradeeppadmarajaiah just type "composer-playground" in console
pradeeppadmarajaiah (Tue, 17 Oct 2017 12:29:42 GMT):
pradeep@bcpoc-etz468l-lnx01:~$ composer-playground
composer-playground: command not found
ilyap (Tue, 17 Oct 2017 12:30:26 GMT):
did you have any error strings after npm install -g composer-playground?
pradeeppadmarajaiah (Tue, 17 Oct 2017 12:35:58 GMT):
no error it installed successfully.
pradeeppadmarajaiah (Tue, 17 Oct 2017 12:36:24 GMT):
but to start the composer
pradeeppadmarajaiah (Tue, 17 Oct 2017 12:36:41 GMT):
I see full different in playgorund locally script
mna2016 (Tue, 17 Oct 2017 12:37:49 GMT):
Hi Team, I have again started getting incompatibility message between composer client and runtime. Have tried npm install -g composer-cli and composer-client but no luck so far. Here's the error message.
mna2016 (Tue, 17 Oct 2017 12:38:42 GMT):
Clipboard - October 17, 2017 6:08 PM
pradeeppadmarajaiah (Tue, 17 Oct 2017 12:39:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WoHGYAMsmc4CmSQSP) @ilyap I get a warning
pradeeppadmarajaiah (Tue, 17 Oct 2017 12:39:26 GMT):
> composer-playground@0.14.0 postinstall /home/pradeep/.nvm/versions/node/v6.11.4/lib/node_modules/composer-playground
> npm list -json --depth=0 2>&1 | grep -iv ERR > ./src/assets/npmlist.json
npm WARN ngx-clipboard@8.0.4 requires a peer of @angular/core@>=4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-clipboard@8.0.4 requires a peer of @angular/common@>=4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-clipboard@8.0.4 requires a peer of @angular/platform-browser@>=4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-clipboard@8.0.4 requires a peer of core-js@>=2.4.1 but none is installed. You must install peer dependencies yourself.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.2 requires a peer of @angular/core@^4.0.3 but none is installed. You must install peer dependencies yourself.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.2 requires a peer of @angular/common@^4.0.3 but none is installed. You must install peer dependencies yourself.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.2 requires a peer of @angular/forms@^4.0.3 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-window-token@0.0.2 requires a peer of @angular/core@>=2.4.1 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-window-token@0.0.2 requires a peer of @angular/common@>=2.4.1 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-window-token@0.0.2 requires a peer of @angular/platform-browser@>=2.4.1 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-window-token@0.0.2 requires a peer of core-js@>=2.4.1 but none is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.2 (node_modules/composer-playground/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
ilyap (Tue, 17 Oct 2017 12:40:38 GMT):
@pradeeppadmarajaiah try run /home/pradeep/.nvm/versions/node/v6.11.4/lib/node_modules/composer-playground
ilyap (Tue, 17 Oct 2017 12:40:57 GMT):
or /home/pradeep/.nvm/versions/node/v6.11.4/lib/node_modules/composer-playground/bin/composer-playground
pradeeppadmarajaiah (Tue, 17 Oct 2017 12:41:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A2ETri52fJbYPdxHz) @ilyap
pradeeppadmarajaiah (Tue, 17 Oct 2017 12:41:30 GMT):
pradeep@bcpoc-etz468l-lnx01:~/.nvm/versions/node/v6.11.4/lib/node_modules/composer-playground$ npm start
> composer-playground@0.14.0 start /home/pradeep/.nvm/versions/node/v6.11.4/lib/node_modules/composer-playground
> npm run server:dev
> composer-playground@0.14.0 server:dev /home/pradeep/.nvm/versions/node/v6.11.4/lib/node_modules/composer-playground
> webpack-dev-server --config config/webpack.dev.js --progress --profile --watch --content-base src/
sh: 1: webpack-dev-server: not found
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! composer-playground@0.14.0 server:dev: `webpack-dev-server --config config/webpack.dev.js --progress --profile --watch --content-base src/`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the composer-playground@0.14.0 server:dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/pradeep/.npm/_logs/2017-10-17T12_41_12_928Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! composer-playground@0.14.0 start: `npm run server:dev`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the composer-playground@0.14.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/pradeep/.npm/_logs/2017-10-17T12_41_12_944Z-debug.log
pradeep@bcpoc-etz468l-lnx01:~/.nvm/versions/node/v6.11.4/lib/node_modules/composer-playground$
pradeeppadmarajaiah (Tue, 17 Oct 2017 12:41:35 GMT):
i get an error
pradeeppadmarajaiah (Tue, 17 Oct 2017 13:00:35 GMT):
Hi Composer Experts,
I wanted to try ID cards and wallets features. How to Start Playground in the developer environment? Could you please provide the document.
I am following the developer installation guide. https://hyperledger.github.io/composer/tutorials/developer-guide.html
If you want to run the Playground locally, install the composer-playground using the following command.
npm install -g composer-playground
Logs after executing command
> composer-playground@0.14.0 postinstall /home/pradeep/.nvm/versions/node/v6.11.4/lib/node_modules/composer-playground
> npm list -json --depth=0 2>&1 | grep -iv ERR > ./src/assets/npmlist.json
npm WARN ngx-clipboard@8.0.4 requires a peer of @angular/core@>=4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-clipboard@8.0.4 requires a peer of @angular/common@>=4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-clipboard@8.0.4 requires a peer of @angular/platform-browser@>=4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-clipboard@8.0.4 requires a peer of core-js@>=2.4.1 but none is installed. You must install peer dependencies yourself.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.2 requires a peer of @angular/core@^4.0.3 but none is installed. You must install peer dependencies yourself.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.2 requires a peer of @angular/common@^4.0.3 but none is installed. You must install peer dependencies yourself.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.2 requires a peer of @angular/forms@^4.0.3 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-window-token@0.0.2 requires a peer of @angular/core@>=2.4.1 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-window-token@0.0.2 requires a peer of @angular/common@>=2.4.1 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-window-token@0.0.2 requires a peer of @angular/platform-browser@>=2.4.1 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-window-token@0.0.2 requires a peer of core-js@>=2.4.1 but none is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.2 (node_modules/composer-playground/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
I tried to debug the playground.sh . I was able to pull the image. When i try to start using "docker-compose -p composer -f docker-compose-playground.yml up -d"
It throws following error "[Errno 2] No such file or directory: u'./docker-compose.yml'".
When i try to find the "docker-compose.yml", it does not exists. But, I can see in docker images
# pull and tage the correct image for the installer
docker pull hyperledger/composer-playground:0.14.0
docker tag hyperledger/composer-playground:0.14.0 hyperledger/composer-playground:latest
# Start all composer
docker-compose -p composer -f docker-compose-playground.yml up -d
# copy over pre-imported admin credentials
cd fabric-dev-servers/fabric-scripts/hlfv1/composer/creds
docker exec composer mkdir /home/composer/.composer-credentials
tar -cv * | docker exec -i composer tar x -C /home/composer/.composer-credentials
I don't see, how to start the playground after that. Please suggest.
ajp (Tue, 17 Oct 2017 13:16:06 GMT):
@pradeeppadmarajaiah The error you ran into when running `npm start` looks like a webpack error (AngularJS, used for the UI, uses webpack), try installing with `npm install -g webpack-dev-server`
mna2016 (Tue, 17 Oct 2017 13:29:44 GMT):
Hi team, I need somebody to look at my question urgently. Thanks.
pradeeppadmarajaiah (Tue, 17 Oct 2017 13:51:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fQKfvkAuTWQCPqPjv) @ajp I tried completed install running on composer modules. Not working. How exactly it works ?? if i execute, npm install composer-playground, will it start the playground ??. or is there any thing that needs to be done after that ??
ajp (Tue, 17 Oct 2017 14:34:15 GMT):
@mna2016 can you run `composer --version`?
mna2016 (Tue, 17 Oct 2017 14:35:27 GMT):
@ajp the command returns only 1 row "v0.14.0"
ajp (Tue, 17 Oct 2017 14:35:36 GMT):
@pradeeppadmarajaiah I'm not sure what you mean exactly. What steps have you taken apart from running `npm install composer-playground`? Did you try running `npm install -g webpack-dev-server` and then running `npm start` from within the `composer-playground` directory?
joaquimpedrooliveira (Tue, 17 Oct 2017 14:42:07 GMT):
Hello, guys. I'm trying to connect Composer to an existing Hyperledger Fabric network. What I did:
- Started the network
- Created and joined the channel
- Started Composer
- Created a new Business Network Card with the proper config and certificates
- When I try to instantiate a Business Network using one of the provided samples, I see the following error on console:
joaquimpedrooliveira (Tue, 17 Oct 2017 14:42:12 GMT):
```0|composer | HLFConnectionManager :fabric-client() [Orderer.js]: sendDeliver - start
0|composer | HLFConnectionManager :fabric-client() [Orderer.js]: sendDeliver - sent envelope
0|composer | HLFConnectionManager :fabric-client() [Orderer.js]: sendDeliver - on data
0|composer | HLFConnectionManager :fabric-client() [Orderer.js]: sendDeliver - rejecting - status:NOT_FOUND
0|composer | HLFConnectionManager :fabric-client() [Channel.js]: getChannelConfig - Failed Proposal. Error: Error: Invalid results returned ::NOT_FOUND
0|composer | at ClientDuplexStream.
joaquimpedrooliveira (Tue, 17 Oct 2017 14:43:59 GMT):
My Composer is running on docker using the image provided and I setup up a script that copy the credentials to `/home/composer/.composer-credentials`, as the `composer.sh` script does.
joaquimpedrooliveira (Tue, 17 Oct 2017 14:43:59 GMT):
My Composer is running on docker using the image provided and I setup up a script that copy the credentials to `/home/composer/.composer-credentials` and configue `COMPOSER_CONFIG` env var, as the `composer.sh` script does.
ajp (Tue, 17 Oct 2017 14:44:20 GMT):
@mna2016 Try updating `composer-runtime` in your composer project by running `npm install composer-runtime`
ajp (Tue, 17 Oct 2017 14:44:29 GMT):
from within the composer node project
mna2016 (Tue, 17 Oct 2017 14:44:51 GMT):
@ajp I did reinstall composer-runtime as well as composer-client. but none helped.
mna2016 (Tue, 17 Oct 2017 14:45:04 GMT):
@ajp is there a single command that shows the list of all composer related tools?
mna2016 (Tue, 17 Oct 2017 14:45:04 GMT):
@ajp is there a single command that shows the list of versions all composer related tools?
ajp (Tue, 17 Oct 2017 14:45:38 GMT):
Can you confirm that the correct runtime is running by looking in `node_modules/composer-runtime/package.json` and checking to see if the version is 0.14.0?
ajp (Tue, 17 Oct 2017 14:45:44 GMT):
And I don't think so
ajp (Tue, 17 Oct 2017 14:46:01 GMT):
Additionally, double check that you don't have an older composer runtime installed globally that's taking precedence
mna2016 (Tue, 17 Oct 2017 14:47:55 GMT):
@ajp where do I need to look? could you tell me the whole path for this node_modules/composer-runtime/package.json. I am running my commands from home directory.
mna2016 (Tue, 17 Oct 2017 14:48:42 GMT):
Clipboard - October 17, 2017 8:18 PM
ajp (Tue, 17 Oct 2017 14:49:05 GMT):
What is the output of `ls -al`
JoshuaRippon (Tue, 17 Oct 2017 14:49:55 GMT):
Hey @ajp I am trying to intall composer v0.14.0. I uninstalled composer and then ran 'npm install -g composer-cli' , ' npm install -g generator-hyperledger-composer', 'npm install -g composer-rest-server' however 'composer --version' is giving me back v0.13.2
JoshuaRippon (Tue, 17 Oct 2017 14:50:50 GMT):
do you know what the problem might be?
mna2016 (Tue, 17 Oct 2017 14:51:25 GMT):
@ajp right. now i see a node_modules fodler inside my home directory
ajp (Tue, 17 Oct 2017 14:52:57 GMT):
Haha I just went through the same process but my `composer -v` is giving me 0.14.0. The tricky thing with npm is figuring out where the executable is coming from, could be in the global npm install, in a local node_modules directory, and if it's in both, it could pull from either. Try running `composer -v | ps aux | grep composer`, you should something like this:
`alexand+ 28285 0.0 0.0 612488 14724 pts/0 Rl+ 10:51 0:00 node /home/alexandre/.nvm/versions/node/v6.9.5/bin/composer -v`
ajp (Tue, 17 Oct 2017 14:53:16 GMT):
That will give you an idea of where the binary is and we can go from there
mna2016 (Tue, 17 Oct 2017 14:53:41 GMT):
@ajp here is the screenshot of composer-runtime-hlfv1 package.json
JoshuaRippon (Tue, 17 Oct 2017 14:54:03 GMT):
ubuntu 16159 0.0 0.5 608280 17920 pts/3 Rl+ 14:53 0:00 node /usr/bin/composer -v
ubuntu 16161 0.0 0.0 12944 948 pts/3 S+ 14:53 0:00 grep --color=auto composer
mna2016 (Tue, 17 Oct 2017 14:54:12 GMT):
Clipboard - October 17, 2017 8:23 PM
mna2016 (Tue, 17 Oct 2017 14:54:48 GMT):
@ajp shall i delete this folder and install again?
ajp (Tue, 17 Oct 2017 14:55:52 GMT):
@mna2016 When you run `composer install -g composer-runtime` it actually install in a global node_modules folder and it's likely that the local is being run instead of the global. To remedy this, execute the following commands in your home (~) directory:
```
npm uninstall composer-runtime
npm install composer-runtime
```
Notice I am not adding the `-g` argument in
ajp (Tue, 17 Oct 2017 14:55:56 GMT):
Then double check the package.json
ajp (Tue, 17 Oct 2017 14:56:37 GMT):
@JoshuaRippon What are the contents of /usr/bin?
JoshuaRippon (Tue, 17 Oct 2017 14:58:01 GMT):
hmm it's saying i need to be root/Administrator, but I read somewhere that you should not sudo install....
ajp (Tue, 17 Oct 2017 14:58:23 GMT):
You shouldn't need sudo for anything we're doing so that's a good call
ajp (Tue, 17 Oct 2017 14:58:47 GMT):
Try doing this: `ls -al /usr/bin | grep composer`
ajp (Tue, 17 Oct 2017 14:59:08 GMT):
I think the exe in `/usr/bin` might be a symbolic link and I want to see the true location
ajp (Tue, 17 Oct 2017 14:59:08 GMT):
I think the binary in `/usr/bin` might be a symbolic link and I want to see the true location
JoshuaRippon (Tue, 17 Oct 2017 14:59:14 GMT):
`lrwxrwxrwx 1 root root 39 Oct 11 10:07 composer -> ../lib/node_modules/composer-cli/cli.js
lrwxrwxrwx 1 root root 47 Oct 11 10:11 composer-rest-server -> ../lib/node_modules/composer-rest-server/cli.js`
ajp (Tue, 17 Oct 2017 14:59:58 GMT):
There we go, that's where `composer` is actually being run from. cd to `/usr/lib/node_modules/composer-cli` and check the package.json for the version number
JoshuaRippon (Tue, 17 Oct 2017 15:01:11 GMT):
aha
JoshuaRippon (Tue, 17 Oct 2017 15:01:23 GMT):
it's all 0.13.2 in there
ajp (Tue, 17 Oct 2017 15:02:31 GMT):
Ok, try doing:
```
npm uninstall -g composer-cli
npm install -g composer-cli
```
See if that fixes it
ajp (Tue, 17 Oct 2017 15:02:55 GMT):
Unlike mna2016 it looks like everything is running from global for you
mna2016 (Tue, 17 Oct 2017 15:04:18 GMT):
@ajp the name is not composer-runtime but composer-runtime-hlfv1. i think i should use that/
mna2016 (Tue, 17 Oct 2017 15:06:17 GMT):
@ajp i have 2 folders inside node_modules. one is composer-runtime. the other is composer-runtime-hlfv1. I am going to install both.
ajp (Tue, 17 Oct 2017 15:07:06 GMT):
Try both and see what happens, let us know in case anyone else runs into the same thing :)
mna2016 (Tue, 17 Oct 2017 15:08:49 GMT):
@ajp my home folder is missing a package.json. i am not able to run "npm install composer-cli" etc
mna2016 (Tue, 17 Oct 2017 15:08:58 GMT):
can i have the latest package.json please.
JoshuaRippon (Tue, 17 Oct 2017 15:09:06 GMT):
when I ran `npm uninstall -g composer-cli` it didn't remove `/usr/lib/node_modules/composer-cli`
JoshuaRippon (Tue, 17 Oct 2017 15:09:20 GMT):
should it remove this folder?
ajp (Tue, 17 Oct 2017 15:10:08 GMT):
Is the folder still there but empty?
JoshuaRippon (Tue, 17 Oct 2017 15:10:30 GMT):
nope it's still there and full
ajp (Tue, 17 Oct 2017 15:11:14 GMT):
Feel free to delete it, and then run npm install -g composer-cli
JoshuaRippon (Tue, 17 Oct 2017 15:13:57 GMT):
Ok, I had to sudo uninstall, normal wouldn't work
ajp (Tue, 17 Oct 2017 15:15:29 GMT):
Does it work?
JoshuaRippon (Tue, 17 Oct 2017 15:15:55 GMT):
`composer --version`
`v0.14.0`
ajp (Tue, 17 Oct 2017 15:16:17 GMT):
:thumbsup:
JoshuaRippon (Tue, 17 Oct 2017 15:16:29 GMT):
Thank you so much @ajp, your patience has been amazing!!!
mna2016 (Tue, 17 Oct 2017 15:17:06 GMT):
@ajp I am puzzled. nothing's working.
mna2016 (Tue, 17 Oct 2017 15:17:32 GMT):
I can see the local ones. 1) where are the global node_modules installed
ajp (Tue, 17 Oct 2017 15:17:49 GMT):
No probs :)
ajp (Tue, 17 Oct 2017 15:18:19 GMT):
@mna2016 That depends on your OS and how you installed node/npm. I assume you're using Ubuntu, and do you know if you used `nvm` when installing node?
mna2016 (Tue, 17 Oct 2017 15:18:37 GMT):
yes I used nvm
ajp (Tue, 17 Oct 2017 15:19:48 GMT):
Ok so you have a `node_modules` in your home directory, which I assume is where you're hoping to develop your composer project right? Your global node_modules folder should be in `~/.nvm/versions/node/
mna2016 (Tue, 17 Oct 2017 15:23:24 GMT):
@ajp. Thanks for the bit. composer-client, composer-runtime, composer-cli are all v0.14.0 in my global node_modules directory
ajp (Tue, 17 Oct 2017 15:23:54 GMT):
Good, that means those are all good. Are they up to date inside the `node_modules` directory in `~/node_modules`
IliasStergiou (Tue, 17 Oct 2017 15:26:56 GMT):
Has joined the channel.
mna2016 (Tue, 17 Oct 2017 15:27:57 GMT):
@ajp in my home/node_modules directory : composer-client = 0.13.1, composer-runtime = 0.14.0, composer-cli is absent
ajp (Tue, 17 Oct 2017 15:31:08 GMT):
Ok, let's just nuke those, run `rm -rf composer-client` and `rm -rf composer-cli` from within the `~/node_modules` directory
ajp (Tue, 17 Oct 2017 15:31:29 GMT):
After you've done, cd back to `~` and open your package.json
ajp (Tue, 17 Oct 2017 15:32:30 GMT):
You should see dependencies listed in there, do you see `composer-client` and `composer-cli`? If you do, they might specify a version number, change it to `0.14.0` and then run `npm install composer-client` and `npm install composer-cli --save`
mna2016 (Tue, 17 Oct 2017 15:35:27 GMT):
@ajp I dont remember if I accidentally deleted it, I dont see a package.json inside my home directory.
mna2016 (Tue, 17 Oct 2017 15:35:54 GMT):
can i download it from github if one is there?
ajp (Tue, 17 Oct 2017 15:36:27 GMT):
No, your package.json should inherently be a part of your composer project. Where is your composer directory from when you followed the installation instructions?
mna2016 (Tue, 17 Oct 2017 15:36:59 GMT):
@ajp I am running most of the commands from home
ajp (Tue, 17 Oct 2017 15:37:50 GMT):
Is there a `projects` directory?
ajp (Tue, 17 Oct 2017 15:38:16 GMT):
in home
mna2016 (Tue, 17 Oct 2017 15:39:34 GMT):
@ajp No I dont have a projects directory in my home directory.
mna2016 (Tue, 17 Oct 2017 15:40:22 GMT):
Before last weeks release I have been running the composer commands from home directory and they all worked most of the times.
mna2016 (Tue, 17 Oct 2017 15:40:55 GMT):
I have my composer network .bna archive files kept inside home directly without any project. And i deploy them from there.
mna2016 (Tue, 17 Oct 2017 15:41:27 GMT):
the connection profile is in ".composer-connection-profiles" subdirectory
ajp (Tue, 17 Oct 2017 15:41:31 GMT):
How do you generate that bna file? Using `npm install` or manually with the composer CLI?
mna2016 (Tue, 17 Oct 2017 15:41:46 GMT):
I generate bna using playground UI.
ajp (Tue, 17 Oct 2017 15:41:50 GMT):
Also, have you tried pinging again to see if it works?
ajp (Tue, 17 Oct 2017 15:42:01 GMT):
Oooh gotcha
ajp (Tue, 17 Oct 2017 15:42:33 GMT):
Well if you've deleted the composer-client/cli folders in `~/node_modules` it *should* hopefully pull from the global node_modules, try it and see
mna2016 (Tue, 17 Oct 2017 15:42:56 GMT):
ok let me try that
mna2016 (Tue, 17 Oct 2017 15:47:04 GMT):
Clipboard - October 17, 2017 9:16 PM
mna2016 (Tue, 17 Oct 2017 15:47:42 GMT):
It's picking the composer stuff from somewhere else which is not updated it seems.
ajp (Tue, 17 Oct 2017 15:52:00 GMT):
You know what it is, have you kept the same network this whole time? It's trying to run the composer runtime from within a container. Run `./stopFabric.sh` and `./teardownFabric.sh`, restart fabric with `./startFabric.sh` and `./createComposerProfile.sh` and then deploy your network again
ajp (Tue, 17 Oct 2017 15:52:11 GMT):
And then try
ajp (Tue, 17 Oct 2017 15:52:11 GMT):
And then try again
ajp (Tue, 17 Oct 2017 15:54:38 GMT):
I have to head but I'll be back in an hour or so
mna2016 (Tue, 17 Oct 2017 15:56:24 GMT):
@ajp no problem. thanks for your time so far.
davidkel (Tue, 17 Oct 2017 16:03:27 GMT):
@mna2016 the error you are getting is because you have deployed a bna to a fabric which has included version 0.13.2 of the composer runtime. This is the level of runtime running inside the fabric. You have now updated your client side api to 0.14.0. 0.14.0 is not compatible with a running composer runtime of 0.13.2.
davidkel (Tue, 17 Oct 2017 16:04:29 GMT):
You have a choice of starting again by restarting your fabric and redeploying the bna using v0.14.0 of composer-cli or you need to revert your client back to 0.13.2 so it is compatible with the runtime handling your bna in your running fabric
joaquimpedrooliveira (Tue, 17 Oct 2017 16:35:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=c5YfcFHMugbMzH6y6) Hi, all. Any tips on the error below?
JoshuaRippon (Tue, 17 Oct 2017 16:59:22 GMT):
Hey guys. Has anyone come across this problem before? I have deployed my network with this command `composer network deploy -a my-business-vehicle-trading-network.bna -p hlfv1 -i PeerAdmin -s randomString -A admin -S` . I then get `Command succeeded` . However when I go to ping to see if it's there with `composer network ping -n 'my-business-vehicle-trading-network.bna' -p hlfv1 -i admin -s adminpw' I get the error `Error: Error trying to ping. Error: Error trying to query business network. Error: could not find chaincode with name 'my-business-vehicle-trading-network.bna' - make sure the chaincode my-business-vehicle-trading-network.bna has been successfully instantiated and try again Command failed'.
MarioHF (Tue, 17 Oct 2017 17:00:53 GMT):
Hey guys I am having the following error when I try to deploy a BNA in the hyperledger fabric : Error: Error trying deploy. Error: Error trying install chaincode. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")
JoshuaRippon (Tue, 17 Oct 2017 17:01:26 GMT):
It should be there as the deployment succeeded. Is there any way to check if the chaincode successfully instantiated?
ajp (Tue, 17 Oct 2017 17:25:07 GMT):
@mna2016 Did you resolve your issue? davidkel is spot on with the problem
ajp (Tue, 17 Oct 2017 17:25:52 GMT):
@JoshuaRippon don't wrap the network name in quotes and don't append `.bna` to it
mna2016 (Tue, 17 Oct 2017 17:26:01 GMT):
@ajp am testing it now. let me have a few mins.
ajp (Tue, 17 Oct 2017 17:26:09 GMT):
You also have an end quote on `-s adminpw`
mrosack (Tue, 17 Oct 2017 17:29:53 GMT):
@JoshuaRippon: -n should just be the name of the network, no .bna extension
mna2016 (Tue, 17 Oct 2017 17:31:54 GMT):
@ajp @davidkel Yes that's the main issue. Actually I had this blockchain and composer deployed on a ibm container(kubernetes). the composer playrground script uses a yml file that had "image: hyperledger/composer-playground:0.13.2". I changed it to 0.14.0 and recreated the composer playground. And now I see 0.14.0
mna2016 (Tue, 17 Oct 2017 17:32:21 GMT):
During "ping" I still get an error but that is related to credentials.
mna2016 (Tue, 17 Oct 2017 17:36:29 GMT):
Clipboard - October 17, 2017 11:06 PM
davidkel (Tue, 17 Oct 2017 17:38:26 GMT):
@mna2016 have you read the release notes for v0.14.0 ? there is important information about security enhancements
mna2016 (Tue, 17 Oct 2017 17:40:38 GMT):
@davidkel I updated ACL file with the 2 new rules that were mentioned in the release notes.
davidkel (Tue, 17 Oct 2017 17:41:02 GMT):
And did you follow the guidance on the new way to deploy ?
mna2016 (Tue, 17 Oct 2017 17:43:17 GMT):
@davidkel I did not deploy using "composer deploy". I have connected to the network using composer playground UI and added a few records to the blockchain over there.
mna2016 (Tue, 17 Oct 2017 17:44:30 GMT):
Let me check the page again, If I have missed anything.
davidkel (Tue, 17 Oct 2017 17:45:17 GMT):
@mna2016 If you deployed using playground then you can only easily use the admin identity from playground
mna2016 (Tue, 17 Oct 2017 17:57:14 GMT):
@davidkel the release notes say to append "-A admin -S" to the composer network deploy command. So what should the whole command look like.
mna2016 (Tue, 17 Oct 2017 17:58:18 GMT):
`composer network deploy -n mycomposernet.bna -p conn-profile-name -i admin -s adminpw -A admin -S `
mna2016 (Tue, 17 Oct 2017 17:58:27 GMT):
is it correct>
ajp (Tue, 17 Oct 2017 18:04:12 GMT):
The arhcive file should be in -a, there is no -n
ajp (Tue, 17 Oct 2017 18:04:12 GMT):
The archive file should be in -a, there is no -n
mna2016 (Tue, 17 Oct 2017 18:06:32 GMT):
@ajp that's a typo from my side. i actually used an -a in the command
mna2016 (Tue, 17 Oct 2017 18:08:20 GMT):
I think i will try to get an answer on the kubernetes channel.
mna2016 (Tue, 17 Oct 2017 18:08:54 GMT):
@davidkel I have the admin.card downloaded from composer playground. How do i use this admin.card to run composer network comands?
einarpersson (Tue, 17 Oct 2017 18:17:06 GMT):
@JoshuaRippon hey I read about your thoughts regarding ACL and the Historian / transaction history
I fiddled around and managed to revoke read access to the transaction history through the following code. Is that enough for your needs or have I missed something? Please try it out! I guess you could add different conditions to make it possible to make it possible to see your own transaction history, but haven't come so far yet.
(I'm also thinking alot about managing privacy without introducing different channels)
```rule RestrictHistory {
description: "Participants should not be able to see transaction history"
participant: "org.hyperledger.composer.system.Participant"
operation: READ
resource: "org.hyperledger.composer.system.HistorianRecord"
action: DENY
}```
einarpersson (Tue, 17 Oct 2017 18:18:12 GMT):
What is the "address" to the system admin? is it even theoretically possible to revoke access for admin users currently?
davidkel (Tue, 17 Oct 2017 18:27:57 GMT):
@mna2016 That's were things become more tricky as the CLI doesn't support cards yet, it's being worked on. The card is a zip file , you can unzip it and use the contents of the credentials directory with the `composer identity import` to import the identity into something the CLI can use
davidkel (Tue, 17 Oct 2017 18:27:57 GMT):
@mna2016 That's where things become more tricky as the CLI doesn't support cards yet, it's being worked on. The card is a zip file , you can unzip it and use the contents of the credentials directory with the `composer identity import` to import the identity into something the CLI can use
davidkel (Tue, 17 Oct 2017 18:27:57 GMT):
@mna2016 That's where things become more tricky as the CLI doesn't support cards yet, it's being worked on. The card is a zip file , you can unzip it and use the contents of the credentials directory with the `composer identity import` to import the identity for the CLI can use
davidkel (Tue, 17 Oct 2017 18:27:57 GMT):
@mna2016 That's where things become more tricky as the CLI doesn't support cards yet, it's being worked on. The card is a zip file , you can unzip it and use the contents of the credentials directory with the `composer identity import` to import the identity for the CLI to use
ajp (Tue, 17 Oct 2017 18:45:19 GMT):
I don't quite remember who was a part of the authentication/identity discussion yesterday, but for people turning on authentication/multi-user mode and trying to interface the REST server with a separate client front-end, and you're using an OAuth passport module, there IS a way to do the authentication, redirect to your website, and parse the access token all automatically.
1. Define a successCallback in your OAuth provider setup that points to your front-end (mine is `localhost:4200/token` for now)
2. On your client app, you can use the following regex to extract the access token from the cookie headers (I'm using expressjs and have included the full route definition for context):
```
app.get('/token', (req, res) => {
var cookie = req.headers.cookie;
var tokenPattern = new RegExp(/access_token=s%3A(.*?)\./);
var tokenMatches = cookie.match(tokenPattern);
if (tokenMatches.length == 2) {
req.session.token = tokenMatches[1];
};
res.redirect('/');
});
```
3. Use `req.session.token` to authenticate your REST calls
ajp (Tue, 17 Oct 2017 18:45:19 GMT):
I don't quite remember who was a part of the authentication/identity discussion yesterday, but for people turning on authentication/multi-user mode and trying to interface the REST server with a separate client front-end, and you're using an OAuth passport module, there IS a way to do the authentication, redirect to your website, and parse the access token all automatically.
1. Define a successCallback in your OAuth provider setup that points to your front-end (mine is `localhost:4200/token` for now)
2. On your client app, you can use the following regex to extract the access token from the cookie headers (I'm using expressjs and have included the full route definition for context):
```
app.get('/token', (req, res) => {
var cookie = req.headers.cookie;
var tokenPattern = new RegExp(/access_token=s%3A(.*?)\./);
var tokenMatches = cookie.match(tokenPattern);
if (tokenMatches &&tokenMatches.length == 2) {
req.session.token = tokenMatches[1];
};
res.redirect('/');
});
```
3. Use `req.session.token` to authenticate your REST calls
ajp (Tue, 17 Oct 2017 18:45:19 GMT):
I don't quite remember who was a part of the authentication/identity discussion yesterday, but for people turning on authentication/multi-user mode and trying to interface the REST server with a separate client front-end, and you're using an OAuth passport module, there IS a way to do the authentication, redirect to your website, and parse the access token all automatically.
1. Define a successCallback in your OAuth provider setup that points to your front-end (mine is `localhost:4200/token` for now)
2. On your client app, you can use the following regex to extract the access token from the cookie headers (I'm using expressjs and have included the full route definition for context):
```
app.get('/token', (req, res) => {
var cookie = req.headers.cookie;
var tokenPattern = new RegExp(/access_token=s%3A(.*?)\./);
var tokenMatches = cookie.match(tokenPattern);
if (tokenMatches && tokenMatches.length == 2) {
req.session.token = tokenMatches[1];
};
res.redirect('/');
});
```
3. Use `req.session.token` to authenticate your REST calls
theathibm (Tue, 17 Oct 2017 19:34:30 GMT):
In regards to OAuth2 providers, does anyone have information for W3id connectivity?
theathibm (Tue, 17 Oct 2017 19:34:52 GMT):
i.e with composer-rest-server and w3id
sstone1 (Tue, 17 Oct 2017 19:43:01 GMT):
@theathibm probably a better question to ask inside IBM ;)
theathibm (Tue, 17 Oct 2017 19:43:19 GMT):
ok
theathibm (Tue, 17 Oct 2017 19:43:20 GMT):
thanks
brianz (Tue, 17 Oct 2017 19:49:12 GMT):
Has joined the channel.
cbf (Tue, 17 Oct 2017 20:11:20 GMT):
@sstone1 I just ran through the developer tutorial and was trying to import my .bna into my local playground and I get "file my-network.bna has an unsupported file type"
sstone1 (Tue, 17 Oct 2017 20:11:45 GMT):
that's pretty weird
cbf (Tue, 17 Oct 2017 20:11:49 GMT):
yes
cbf (Tue, 17 Oct 2017 20:12:00 GMT):
I also deleted and recreated (npm run prepublish)
cbf (Tue, 17 Oct 2017 20:12:06 GMT):
same
sstone1 (Tue, 17 Oct 2017 20:12:08 GMT):
what version shows in the bottom right corner?
sstone1 (Tue, 17 Oct 2017 20:12:16 GMT):
(of playground)
cbf (Tue, 17 Oct 2017 20:12:16 GMT):
0.14.0
sstone1 (Tue, 17 Oct 2017 20:13:24 GMT):
when you imported the bna
sstone1 (Tue, 17 Oct 2017 20:13:29 GMT):
did you click the "add a file...." button
sstone1 (Tue, 17 Oct 2017 20:13:35 GMT):
or the "import/replace" button at the bottom
cbf (Tue, 17 Oct 2017 20:14:47 GMT):
import
cbf (Tue, 17 Oct 2017 20:14:50 GMT):
let me try add
sstone1 (Tue, 17 Oct 2017 20:15:15 GMT):
add definitely shouldn't work!
sstone1 (Tue, 17 Oct 2017 20:15:25 GMT):
but have seen people trying to "add" BNA files before and it has the same error
cbf (Tue, 17 Oct 2017 20:15:30 GMT):
odd
cbf (Tue, 17 Oct 2017 20:15:35 GMT):
that worked
cbf (Tue, 17 Oct 2017 20:16:18 GMT):
I clicked on 'deploy a new business network" and then chose upload
cbf (Tue, 17 Oct 2017 20:16:45 GMT):
what does not work is "Import Business Network Card"
cbf (Tue, 17 Oct 2017 20:16:51 GMT):
or is that another thing
sstone1 (Tue, 17 Oct 2017 20:16:56 GMT):
that's another thing
cbf (Tue, 17 Oct 2017 20:17:06 GMT):
you need better terms;-)
cbf (Tue, 17 Oct 2017 20:17:19 GMT):
or less confusing
sstone1 (Tue, 17 Oct 2017 20:17:52 GMT):
@EdMoffatt @winslet ^ FYI ;)
sstone1 (Tue, 17 Oct 2017 20:18:17 GMT):
we're doing some longer term work to redesign the first page ("My Business Networks") so good feedback
mna2016 (Tue, 17 Oct 2017 20:25:50 GMT):
@davidkel Thanks a ton mate! :) composer identity import using admin.card did the trick. Now I am able to ping the composer network deployed on my kubernetes cluster.
mna2016 (Tue, 17 Oct 2017 20:26:16 GMT):
and hopefully i will be able to deploy it as well using composer deploy
davidkel (Tue, 17 Oct 2017 20:30:28 GMT):
@mna2016 For deploying from the CLI you need to ensure you import an id that has Peer and Channel admin authority, There should be PeerAdmin card in playground you can export that will have those certs
mna2016 (Tue, 17 Oct 2017 20:36:38 GMT):
@davidkel I notice this in the metadata.json "roles":["PeerAdmin","ChannelAdmin"]. So if I add this field in my admin.card that I used in ping, will it work for deploy?
mna2016 (Tue, 17 Oct 2017 20:37:28 GMT):
@davidkel No issues. I will try it out once for deploy as well and will see.
davidkel (Tue, 17 Oct 2017 20:55:39 GMT):
@mna2016 No, the roles don't define what the cert can do, the roles tell playground what the cert if capable of
mna2016 (Tue, 17 Oct 2017 20:59:02 GMT):
@davidkel ok that makes sense.Thanks for the information.
CT123 (Tue, 17 Oct 2017 21:38:44 GMT):
back after several months and am needing to validate my install / or reinstall due to HL updates. I'm once again getting the following errors when trying to install composer-playground locally - and my question is do we install all the preq's LOCALLY or GLOBALLY? because the HL documentation is not consistent?
/Users/CT15/.nvm/versions/node/v6.11.4/lib
└─┬ composer-playground@0.14.0
├── UNMET PEER DEPENDENCY @angular/common@^4.0.3
├── UNMET PEER DEPENDENCY @angular/core@^4.0.3
├── UNMET PEER DEPENDENCY @angular/forms@^4.0.3
├── UNMET PEER DEPENDENCY @angular/platform-browser@>=4.0.0
└── UNMET PEER DEPENDENCY core-js@>=2.4.1
npm WARN ngx-clipboard@8.0.4 requires a peer of @angular/core@>=4.0.0 but none was installed.
npm WARN ngx-clipboard@8.0.4 requires a peer of @angular/common@>=4.0.0 but none was installed.
npm WARN ngx-clipboard@8.0.4 requires a peer of @angular/platform-browser@>=4.0.0 but none was installed.
npm WARN ngx-clipboard@8.0.4 requires a peer of core-js@>=2.4.1 but none was installed.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.2 requires a peer of @angular/core@^4.0.3 but none was installed.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.2 requires a peer of @angular/common@^4.0.3 but none was installed.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.2 requires a peer of @angular/forms@^4.0.3 but none was installed.
npm WARN ngx-window-token@0.0.2 requires a peer of @angular/core@>=2.4.1 but none was installed.
npm WARN ngx-window-token@0.0.2 requires a peer of @angular/common@>=2.4.1 but none was installed.
npm WARN ngx-window-token@0.0.2 requires a peer of @angular/platform-browser@>=2.4.1 but none was installed.
npm WARN ngx-window-token@0.0.2 requires a peer of core-js@>=2.4.1 but none was installed.
CT123 (Tue, 17 Oct 2017 21:43:18 GMT):
Should add that I have in fact installed the @angular preqs globally
kletkeman (Tue, 17 Oct 2017 21:44:29 GMT):
@sstone1 Sorry to bother you, but I am wondering if the playground supports queries? I finally figured out that the qry file was not part of the model, but rather a specially named queries file. The BNA now contains it, but when I replace the older version with the newer one, it does not show up anywhere where I can use it. It also does not appear on the define page. Note that we are still using 12.2 ...
dselman (Tue, 17 Oct 2017 22:08:57 GMT):
Yes, Playground supports query
kletkeman (Wed, 18 Oct 2017 00:41:41 GMT):
@dselman Thanks. I have not been able to figure out how the playground supports it, and I can't find any videos with query in the playground shown. Can you tell me what I should see in the playground? For example, when I deploy my BNA, I cannot see the queries file, but all the rest are shown.
kletkeman (Wed, 18 Oct 2017 00:41:41 GMT):
@dselman Thanks. I have not been able to figure out how the playground supports it, and I can't find any videos with query in the playground shown. When I deploy my BNA, I can see the queries file, but I don't see any way to test my queries.
kletkeman (Wed, 18 Oct 2017 00:41:41 GMT):
@dselman Thanks. I have not been able to figure out how the playground supports it, and I can't find any videos with query in the playground shown. When I deploy my BNA, I can see the queries file, but I don't see any way to test my queries. Again, remember that we are stuck on 0.12.2 for now.
Kmantrip (Wed, 18 Oct 2017 00:56:12 GMT):
Has joined the channel.
Kmantrip (Wed, 18 Oct 2017 01:01:19 GMT):
Hi composer community, is there any structured Hyperledger composer application development methodology to make it easier for newbies to build applications? Documentation is great but reading all the documentation to understand the starting and ending points can be time consuming.. Thanks a bunch for any help... Kumar
GLB (Wed, 18 Oct 2017 01:54:19 GMT):
Could anyone help explain to me the basics of logging? I know that any calls to console.log() will log it in the docker container log which I know how to obtain. What about console.error()? That did not seem to show up in the docker log. Is it somewhere else? How about other log locations or other log APIs?
TuiiuT (Wed, 18 Oct 2017 03:49:53 GMT):
Has joined the channel.
varunagarwal (Wed, 18 Oct 2017 05:47:50 GMT):
Hey is there a way in which I can create a query within a transaction?
varunagarwal (Wed, 18 Oct 2017 05:48:56 GMT):
I need to ensure automated queries that won't be tampered with
biksen (Wed, 18 Oct 2017 06:27:32 GMT):
Could anyone please help to resolve the below issue. I am following the steps using the url: https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
biksen (Wed, 18 Oct 2017 06:28:01 GMT):
But getting error when I running the composer rest server
biksen (Wed, 18 Oct 2017 06:28:17 GMT):
docker run \
-d \
-e COMPOSER_CONNECTION_PROFILE=${COMPOSER_CONNECTION_PROFILE} \
-e COMPOSER_BUSINESS_NETWORK=${COMPOSER_BUSINESS_NETWORK} \
-e COMPOSER_ENROLLMENT_ID=${COMPOSER_ENROLLMENT_ID} \
-e COMPOSER_ENROLLMENT_SECRET=${COMPOSER_ENROLLMENT_SECRET} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_CONFIG="${COMPOSER_CONFIG}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
--name rest \
--network e2ecli_default \
-p 3000:3000 \
myorg/my-composer-rest-server
biksen (Wed, 18 Oct 2017 06:28:25 GMT):
Error::::::
biksen (Wed, 18 Oct 2017 06:28:41 GMT):
root@ip-172-31-31-38:/home/ubuntu# docker logs rest
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
0|composer | Discovering types from business network definition ...
0|composer | D1018 06:23:37.746314727 18 env_linux.c:66] Warning: insecure environment read function 'getenv' used
root@ip-172-31-31-38:/home/ubuntu# docker logs rest
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
0|composer | Discovering types from business network definition ...
0|composer | D1018 06:23:37.746314727 18 env_linux.c:66] Warning: insecure environment read function 'getenv' used
0|composer | Connection fails: Error: Error trying invoke business network. Error: Connect Failed
0|composer | It will be retried for the next request.
0|composer | Error: Error trying invoke business network. Error: Connect Failed
0|composer | at _initializeChannel.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:837:34)
0|composer | Exception: Error: Error trying invoke business network. Error: Connect Failed
PM2 | App [composer-rest-server] with id [0] and pid [18], exited with code [1] via signal [SIGINT]
0 application online, exiting
Exiting PM2
PM2 | Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
PM2 | App name:composer-rest-server id:0 online
PM2 | 0
PM2 | Stopping app:composer-rest-server id:0
PM2 | App [composer-rest-server] with id [0] and pid [41], exited with code [0] via signal [SIGINT]
PM2 | [HandleExit] PM2 is being killed, stopping restart procedure...
PM2 | pid=41 msg=process killed
PM2 | ===============================================================================
PM2 | --- Stopping PM2 --------------------------------------------------------------
PM2 | Time : Wed Oct 18 2017 06:23:58 GMT+0000 (UTC)
PM2 | ===============================================================================
PM2 | RPC closed
menonks (Wed, 18 Oct 2017 07:40:02 GMT):
Has joined the channel.
nickyromeijn (Wed, 18 Oct 2017 07:41:43 GMT):
Does anyone know how to execute transactions with the rest-server?
nickyromeijn (Wed, 18 Oct 2017 07:41:51 GMT):
POST to the transaction resource?
AndreiZhigulin (Wed, 18 Oct 2017 07:47:31 GMT):
Has joined the channel.
JoshuaRippon (Wed, 18 Oct 2017 08:10:38 GMT):
@einarpersson Hey cheers for that! That could definitely work. I think a big point of confusion for me has been conflating the historian/transaction history with the actual blockchain. What I would really like to find out today is what exactly is recorded on a blockchain. This is an important issue because I
JoshuaRippon (Wed, 18 Oct 2017 08:11:02 GMT):
am also very concerned about the privacy on a channel
JoshuaRippon (Wed, 18 Oct 2017 08:12:15 GMT):
Maybe one of the experts can chip in on this? Can all the members of a channel read a transaction that is recorded on the blockchain?
einarpersson (Wed, 18 Oct 2017 08:13:23 GMT):
@JoshuaRippon Yeah, we seem to be in the same boat then. Please share your findings:)
JoshuaRippon (Wed, 18 Oct 2017 08:13:34 GMT):
Cool! Working on it today
einarpersson (Wed, 18 Oct 2017 08:14:19 GMT):
Have you read about privacy regarding the underlying fabric? Maybe it will give some guidance https://hyperledger-fabric.readthedocs.io/en/v1.0.0-beta/FAQ/architecture_FAQ.html
JoshuaRippon (Wed, 18 Oct 2017 08:18:23 GMT):
This is great stuff. It looks like there are a number of ways to keep the data private on a single channel
JoshuaRippon (Wed, 18 Oct 2017 08:20:58 GMT):
It would be cool if there was a diagram showing exactly what is happening to a transaction for one of the example networks
JoshuaRippon (Wed, 18 Oct 2017 08:23:28 GMT):
@ajp and @mrosack `Command succeeded` My favourite words. Cheers for the help
einarpersson (Wed, 18 Oct 2017 08:30:51 GMT):
Yeah, and I would really like to see a summary of what composer is doing "for you" - what assumptions, restrictions etc. And what could you customize and what do you need to go down the stack to fabric in order to do. And could you possibly work on both levels? I.e. shape a business network using composer and adding customizations directly to fabric also if needed?
varunagarwal (Wed, 18 Oct 2017 08:32:18 GMT):
I think you can work on both levels -> shape a business network using composer and then customize with fabric, will probably need two docker instances. Not exactly sure but I read about it somewhere in the docs
sstone1 (Wed, 18 Oct 2017 08:53:34 GMT):
@here the weekly community call starts very soon (9am UTC), Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - short agenda from us, I'll discuss the work delivered last week for business network admins and @nkl199 will talk about the perf testing work he's been doing.
lclclc (Wed, 18 Oct 2017 08:54:21 GMT):
What is Composer stories?
varunagarwal (Wed, 18 Oct 2017 08:54:39 GMT):
@lclclc Horror stories experienced by us :D
lclclc (Wed, 18 Oct 2017 08:54:52 GMT):
I
sstone1 (Wed, 18 Oct 2017 08:54:54 GMT):
:joy: yes, tell us about your experiences of using Composer... good or bad!
lclclc (Wed, 18 Oct 2017 08:54:59 GMT):
've got a lot of them
varunagarwal (Wed, 18 Oct 2017 08:55:06 GMT):
bad experiences?
lclclc (Wed, 18 Oct 2017 08:55:15 GMT):
good and bad
varunagarwal (Wed, 18 Oct 2017 08:55:42 GMT):
can we ask some doubts?
sstone1 (Wed, 18 Oct 2017 08:56:37 GMT):
definetely
varunagarwal (Wed, 18 Oct 2017 08:57:20 GMT):
So im from India, il just call the tollfree number mentioned under India?
varunagarwal (Wed, 18 Oct 2017 08:57:28 GMT):
or the other one?
sstone1 (Wed, 18 Oct 2017 08:57:39 GMT):
yeah, or use the zoom call and dial in thru your computer
lclclc (Wed, 18 Oct 2017 09:00:22 GMT):
so that is a network ip phone call?
dselman (Wed, 18 Oct 2017 09:01:18 GMT):
Zoom supports video and voice over IP
varunagarwal (Wed, 18 Oct 2017 09:01:30 GMT):
I installed zoom, its asking for a meeting id
varunagarwal (Wed, 18 Oct 2017 09:06:10 GMT):
got it
lclclc (Wed, 18 Oct 2017 09:08:54 GMT):
thans @dselman
ilyap (Wed, 18 Oct 2017 09:31:22 GMT):
Hi
When I write in composer script code "console.log('something')" can I see this log message anywhere?
ilyap (Wed, 18 Oct 2017 09:31:22 GMT):
Hi
When I write in composer script code "console.log('something')" can I see this log message somewhere?
glotov (Wed, 18 Oct 2017 09:33:45 GMT):
@ilyap look at the logs of your chaincode container (`docker logs ...`)
AndreiZhigulin (Wed, 18 Oct 2017 09:49:50 GMT):
Hello, I have a problem with tutorial.
AndreiZhigulin (Wed, 18 Oct 2017 09:49:55 GMT):
Error: Error trying deploy. Error: Failed to deserialize creator identity, err MSP Org1MSP is unknown
dselman (Wed, 18 Oct 2017 09:49:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=roGoc7uYfok3Q6fNn) @sstone1 good call! Thanks.
AndreiZhigulin (Wed, 18 Oct 2017 09:50:30 GMT):
I have a fresh docker version, aswell as specified msp path in the veriables folder
AndreiZhigulin (Wed, 18 Oct 2017 09:50:30 GMT):
I have a fresh docker version, aswell as specified msp path in the variables folder
AndreiZhigulin (Wed, 18 Oct 2017 09:50:30 GMT):
I have a fresh docker version, aswell as specified msp path in the variables
AndreiZhigulin (Wed, 18 Oct 2017 09:51:11 GMT):
I am using Windows 10
MarioHF (Wed, 18 Oct 2017 09:55:16 GMT):
@AndreiZhigulin I experienced the same error yesterday. You need to import the user credentials from the fabric and put the certificate key into your connection profile. See the links https://hyperledger.github.io/composer/reference/connectionprofile.html and https://hyperledger.github.io/composer//reference/composer.identity.import
MarioHF (Wed, 18 Oct 2017 09:55:52 GMT):
Also check if the peers joined the organization and the channel
AndreiZhigulin (Wed, 18 Oct 2017 09:57:03 GMT):
Well, I used the certs/pk from \fabric-tools\fabric-scripts\hlfv1\composer\crypto-config\peerOrganizations\org1.example.com in one of the guides
AndreiZhigulin (Wed, 18 Oct 2017 09:58:21 GMT):
My command to import was like this:
AndreiZhigulin (Wed, 18 Oct 2017 09:58:23 GMT):
composer identity import -p hlfv1 -u PeerAdmin -c C:\Users\Andrei_Zhigulin\fabric-tools\fabric-scripts\hlfv1\composer\crypto-config\peerOrganizations\org1.example.com\users\Admin@org1.example.com\msp\admincerts\Admin@org1.example.com-cert.pem -k C:\Users\Andrei_Zhigulin\fabric-tools\fabric-scripts\hlfv1\composer\crypto-config\peerOrganizations\org1.example.com\users\Admin@org1.example.com\msp\keystore\114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457_sk
AndreiZhigulin (Wed, 18 Oct 2017 10:01:50 GMT):
"and put the certificate key into your connection profile" - where should it be? And am I correct that this means that I should also specify "114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457_sk " somewhere in the connectionProfile?
AndreiZhigulin (Wed, 18 Oct 2017 10:02:09 GMT):
It looks like this atm:
{
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://localhost:7050" }
],
"ca": { "url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/c/Users/Andrei_Zhigulin/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}
MarioHF (Wed, 18 Oct 2017 10:04:41 GMT):
into the peer object you must to put a cert field and the his value must be the key that is defined into the user name file into the composer credentials folder. For instance you may have a PeerAdmin file in this folder.
ilyap (Wed, 18 Oct 2017 10:11:33 GMT):
@glotov It was first idea, unfortunately not it there
erNail (Wed, 18 Oct 2017 10:43:03 GMT):
Hi, i'm getting this error when trying to deploy a network in my local playground:
```Error: Failed to load connection profile ce0f135f7a63287ab86f0dcc0732e185c1a60d62-hlfabric. Error was Error: ENOENT: no such file or directory, open '/home/composer/.composer-connection-profiles/ce0f135f7a63287ab86f0dcc0732e185c1a60d62-hlfabric/connection.json'```
Where does the profile `ce0f135f7a63287ab86f0dcc0732e185c1a60d62-hlfabric` come from ? Do i need to create this profile or do i need to change it ?
MarioHF (Wed, 18 Oct 2017 11:04:45 GMT):
@erNail what command are you trying to execute ? Could you paste it ? The connection profiles could be generate by using composer playground or manually.
erNail (Wed, 18 Oct 2017 11:05:37 GMT):
@MarioHF In the Playground, beneath "Connection: hlfabric" i'm clicking "Deploy new business network"
MarioHF (Wed, 18 Oct 2017 11:08:13 GMT):
check if the hlfabric folder exists under .composer-connection-profile folder. If yes paste here the content of connection.json file
geoms (Wed, 18 Oct 2017 11:13:11 GMT):
Hello, I am trying to issue a identity to a participant in my blockchain network.
geoms (Wed, 18 Oct 2017 11:13:50 GMT):
I'm unable to do so in the Composer V0.14.0
geoms (Wed, 18 Oct 2017 11:14:33 GMT):
I am getting Authorization error
geoms (Wed, 18 Oct 2017 11:15:06 GMT):
I read in composer doc (https://hyperledger.github.io/composer/business-network/bnd-deploy.html)
geoms (Wed, 18 Oct 2017 11:16:44 GMT):
Hyperledger Fabric peer administrators may not have permission to issue new identities using the Hyperledger Fabric Certificate Authority (CA). This may restrict the ability of the business network administrator to on-board other participants from their organisation. For this reason, it may be preferable to create a business network administrator that does have permission to issue new identities using the Hyperledger Fabric Certificate Authority (CA).
geoms (Wed, 18 Oct 2017 11:17:52 GMT):
How to create an admin which has authority to issue identity to particpants ?
erNail (Wed, 18 Oct 2017 11:18:17 GMT):
@MarioHF It does not exist. Should it exist ? Should starting the playground create the profile ?
AndreiZhigulin (Wed, 18 Oct 2017 12:05:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xxAzkrcNu6nhd2erR) @MarioHF I've done this, nowI get error "Error: Failed to load connection profile hlfv1. Error was SyntaxError: Unexpected token U in JSON at position 334"
MarioHF (Wed, 18 Oct 2017 12:15:01 GMT):
@AndreiZhigulin, can you paste the entire JSON ?
AndreiZhigulin (Wed, 18 Oct 2017 12:20:57 GMT):
{"name":"PeerAdmin","mspid":"Org1MSP","roles":null,"affiliation":"","enrollmentSecret":"","enrollment":{"signingIdentity":"114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457","identity":{"certificate":"-----BEGIN CERTIFICATE-----\nMIICGjCCAcCgAwIBAgIRANuOnVN+yd/BGyoX7ioEklQwCgYIKoZIzj0EAwIwczEL\nMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG\ncmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh\nLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwNjI2MTI0OTI2WhcNMjcwNjI0MTI0OTI2\nWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN\nU2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNvbTBZ\nMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGu8KxBQ1GkxSTMVoLv7NXiYKWj5t6Dh\nWRTJBHnLkWV7lRUfYaKAKFadSii5M7Z7ZpwD8NS7IsMdPR6Z4EyGgwKjTTBLMA4G\nA1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIBmrZau7BIB9\nrRLkwKmqpmSecIaOOr0CF6Mi2J5H4aauMAoGCCqGSM49BAMCA0gAMEUCIQC4sKQ6\nCEgqbTYe48az95W9/hnZ+7DI5eSnWUwV9vCd/gIgS5K6omNJydoFoEpaEIwM97uS\nXVMHPa0iyC497vdNURA=\n-----END CERTIFICATE-----\n"}}}
MarioHF (Wed, 18 Oct 2017 12:28:35 GMT):
ok, and what you have in the connection.json file ?
AndreiZhigulin (Wed, 18 Oct 2017 12:29:16 GMT):
{
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://localhost:7050" }
],
"ca": { "url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053",
"cert": "C:\Users\Andrei_Zhigulin\.composer-credentials\PeerAdmin"
}
],
"keyValStore": "/c/Users/Andrei_Zhigulin/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}
MarioHF (Wed, 18 Oct 2017 12:29:21 GMT):
@erNail Yes, it should. Because the connection.profile have the information to connect with the fabric
MarioHF (Wed, 18 Oct 2017 12:30:01 GMT):
@AndreiZhigulin Change the path in the cert field to the certificate in the first json that you sent
erNail (Wed, 18 Oct 2017 12:32:10 GMT):
@MarioHF Okay, so what goes wrong while launching the playground ? I've simply used the following command: `curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash`
AndreiZhigulin (Wed, 18 Oct 2017 12:33:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wg5S7HaDwwhCze6aQ) @MarioHF Which one?
davidkel (Wed, 18 Oct 2017 12:42:40 GMT):
@AndreiZhigulin I am guessing you are on Windows ? Unfortunately windows is not a supported platform for composer.
AndreiZhigulin (Wed, 18 Oct 2017 12:55:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Shf5mBbYDpNWyRj8e) @davidkel Yes, it's Windows 10,I thought that it should work on this platform
davidkel (Wed, 18 Oct 2017 12:59:14 GMT):
@AndreiZhigulin Sorry Windows isn't a supported platform for composer. We have an issue about it, but there are so many things to be able to get the complete composer experience working, some of which are more complicated than we would like.
kletkeman (Wed, 18 Oct 2017 13:17:53 GMT):
@here Suddenly started getting this error last night when I refreshed my IBM Blockchain cluster with Composer 0.12.2.
An error has occurred
Error: Failed to load connection profile 7ad2bf193031326c0ca0064e404e420efe48e4ba-hlfv1. Error was Error: ENOENT: no such file or directory, open '/home/composer/.composer-connection-profiles/7ad2bf193031326c0ca0064e404e420efe48e4ba-hlfv1/connection.json'
I created a fresh new cluster and ran ./create_all --with-couchdb and the error persists. Does anyone know what causes this? I can't imagine what I am suddenly doing differently.
kletkeman (Wed, 18 Oct 2017 13:17:53 GMT):
@here Suddenly started getting this error last night when I refreshed my IBM Blockchain cluster with Composer 0.12.2.
An error has occurred
Error: Failed to load connection profile 7ad2bf193031326c0ca0064e404e420efe48e4ba-hlfv1. Error was Error: ENOENT: no such file or directory, open '/home/composer/.composer-connection-profiles/7ad2bf193031326c0ca0064e404e420efe48e4ba-hlfv1/connection.json'
I created a fresh new cluster and ran ./create_all --with-couchdb and the error persists. Does anyone know what causes this? I can't imagine what I am suddenly doing differently.
EDIT: Clear local storage ... the gift that keeps on giving :-)
IanSparkes (Wed, 18 Oct 2017 14:32:24 GMT):
Getting problems deploying a v0.14.0 composer bna file on Fabric 1.0.3. The composer network deploy fails with timeout. The chaincode container is created, but looking at the logs in the chaincode container, I the root cause error seems to be
```^[[36m2017-10-18 12:00:31.238 UTC [Composer] Debug -> DEBU 1de^[[0m @JS : Engine :init() Loaded compiled ACL bundle, storing in cache
^[[36m2017-10-18 12:00:31.238 UTC [Composer] Debug -> DEBU 1df^[[0m @JS : Context :cacheCompiledAclBundle() > bc102211bce91b11d1106b8fb9ef2fdc151b0ba42c5d53d8c1d37d8753e71e95, [object Object]
^[[36m2017-10-18 12:00:31.238 UTC [Composer] Debug -> DEBU 1e0^[[0m @JS : Context :cacheCompiledAclBundle() <
^[[36m2017-10-18 12:00:31.238 UTC [Composer] Debug -> DEBU 1e1^[[0m @JS : Engine :init() Loaded business network definition, storing in $sysdata collection
^[[36m2017-10-18 12:00:31.239 UTC [Composer] Debug -> DEBU 1e2^[[0m @JS : DataService :ensureCollection() > $sysdata
^[[36m2017-10-18 12:00:31.239 UTC [Composer] Debug -> DEBU 1e3^[[0m Entering DataService.getCollection &{0xc420130700}
^[[31m2017-10-18 12:00:31.239 UTC [shim] handleGetState -> ERRO 1e4^[[0m [030a1a1e]GetState received error ERROR
^[[36m2017-10-18 12:00:31.240 UTC [Composer] Debug -> DEBU 1e5^[[0m Exiting DataService.getCollection 0
^[[36m2017-10-18 12:00:31.240 UTC [Composer] Debug -> DEBU 1e6^[[0m @JS : DataService :ensureCollection() The collection does not exist, creating
^[[36m2017-10-18 12:00:31.240 UTC [Composer] Debug -> DEBU 1e7^[[0m Entering DataService.createCollection &{0xc420130700}
^[[31m2017-10-18 12:00:31.241 UTC [shim] handleGetState -> ERRO 1e8^[[0m [030a1a1e]GetState received error ERROR
^[[36m2017-10-18 12:00:31.241 UTC [Composer] Debug -> DEBU 1e9^[[0m Exiting DataService.createCollection 0
^[[31m2017-10-18 12:00:31.242 UTC [Composer] Error -> ERRO 1ea^[[0m @JS : Engine :init() Caught error, rethrowing [object Object]
```
Anyone seen anything like that?
JoshuaRippon (Wed, 18 Oct 2017 14:51:39 GMT):
Has anyone run into this problem when trying to deploy and angular app? `Error: Error trying to ping. Error: Composer runtime (0.14.0) is not compatible with client (0.13.2)`
JoshuaRippon (Wed, 18 Oct 2017 14:51:39 GMT):
Thanks guys. The uninstall wasn't getting rid of the old files so I just deleted the files manually
cweiers (Wed, 18 Oct 2017 14:53:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rQ2EgEdt2ZbN4tnQq) @JoshuaRippon Yes. The global composer runtime you installed has a different version than the one installed locally via npm install. If you happen to use "latest" in your package.json , it will install 0.14.0. right now. The global version is not updated automatically though, so you will have to reinstall it yourself
cweiers (Wed, 18 Oct 2017 14:54:57 GMT):
Note that you will have to rebuild the *.bna file before deploying. I would also advise to kill any chaincode docker containers
cweiers (Wed, 18 Oct 2017 14:56:02 GMT):
see here for how to update : https://hyperledger.github.io/composer/managing/updating-composer.html
cweiers (Wed, 18 Oct 2017 14:57:16 GMT):
kind of related, but also a bit old: https://stackoverflow.com/questions/45565506/hyperledger-composer-incompatible-versions-error-and-the-versions-are-the-same
corentindaniel (Wed, 18 Oct 2017 14:59:04 GMT):
Has joined the channel.
corentindaniel (Wed, 18 Oct 2017 14:59:43 GMT):
hi everyone i have a problem with ACL nothing DENY ACL are working
corentindaniel (Wed, 18 Oct 2017 14:59:52 GMT):
i'm following this tuto https://hyperledger.github.io/composer/reference/acl_language.html
corentindaniel (Wed, 18 Oct 2017 15:00:22 GMT):
for testing i have set only one rule to deny anyone on anything
corentindaniel (Wed, 18 Oct 2017 15:00:24 GMT):
but no
SamuelDare (Wed, 18 Oct 2017 15:00:43 GMT):
Has joined the channel.
cweiers (Wed, 18 Oct 2017 15:02:08 GMT):
So... your problem is what exactly ? That You can still do things despite having DENY on everything?
corentindaniel (Wed, 18 Oct 2017 15:02:19 GMT):
yes
SamuelDare (Wed, 18 Oct 2017 15:02:28 GMT):
Hi @community : I`composer archive create -a dist/my-network.bna --sourceType dir --sourceName` and getting the following error ` bash : composer : command not found ` what file path do I have to add to my `.bash_profile`?
cweiers (Wed, 18 Oct 2017 15:03:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=34kftQrLxEpc8fDNc) @corentindaniel So... how do you test this ? Do you use the REST explorer ? Which version of composer do you use ?
corentindaniel (Wed, 18 Oct 2017 15:03:24 GMT):
is there a process to restart after update acl
corentindaniel (Wed, 18 Oct 2017 15:03:26 GMT):
?
corentindaniel (Wed, 18 Oct 2017 15:03:44 GMT):
yes im using rest explorer
corentindaniel (Wed, 18 Oct 2017 15:04:06 GMT):
version of composer : 0.13.1
cweiers (Wed, 18 Oct 2017 15:04:18 GMT):
Well.. you will have to rebuild and redeploy the *.bna file
cweiers (Wed, 18 Oct 2017 15:04:30 GMT):
Do you even have DENY on the system namespace ?
corentindaniel (Wed, 18 Oct 2017 15:05:05 GMT):
what is this ? DENY on system namespace ?
IanSparkes (Wed, 18 Oct 2017 15:05:37 GMT):
@SamuelDare you don't have composer installed, you need to follow the steps here https://hyperledger.github.io/composer/installing/development-tools.html or here https://hyperledger.github.io/composer/installing/using-playground-locally.html to have it available
IanSparkes (Wed, 18 Oct 2017 15:06:50 GMT):
npm makes "composer" available if it is installed globally with something like ```npm install -g composer-cli```
cweiers (Wed, 18 Oct 2017 15:07:26 GMT):
on 0.13.1 , you generally do things as the admin / adminpw user. In most examples, you are free to do the transactions labeled as "System" in the REST explorer anyhow. See the example under "Granting Network Control" in https://hyperledger.github.io/composer/reference/acl_language.html
corentindaniel (Wed, 18 Oct 2017 15:08:20 GMT):
i have test on another computer and it works
cweiers (Wed, 18 Oct 2017 15:08:37 GMT):
anyhow, ACL's are enforced on participants. For them to be enforced you would need to have authentification setup on the REST server, otherwise the REST server wouldn't know WHICH participant you actually are
cweiers (Wed, 18 Oct 2017 15:09:19 GMT):
pre 0.14. (I dont know how it is now actually), the admin/adminpw enrollment / secret would not have been connected to a participant
cweiers (Wed, 18 Oct 2017 15:10:33 GMT):
as "admin / adminpw" , without auth activated on the rest server, you could always do anything as ACLs won't be enforced if I remember it right
corentindaniel (Wed, 18 Oct 2017 15:11:52 GMT):
Then, how do we actually set which participant the user is when initiating a transaction ? Right now, even thought our transactions worked and we could succesfully update both our asset & participant properties, the field "Participant ID" in the "Historian" (e.g the registry for All transactions apparently) is set to none every single time
cweiers (Wed, 18 Oct 2017 15:12:45 GMT):
it is set to none because the admin user is not linked to a participant, and thats the one you use per default without auth
corentindaniel (Wed, 18 Oct 2017 15:13:10 GMT):
That would probably explain why ACL aren't applied since we haven't any participant associated with each transaction, but we haven't figured how to do that yet nor found any information into the tutorial
cweiers (Wed, 18 Oct 2017 15:13:59 GMT):
take a look at https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
cweiers (Wed, 18 Oct 2017 15:15:15 GMT):
for the admin user, you might want to look at 0.14.0 , because there were some changes related to it
cweiers (Wed, 18 Oct 2017 15:15:29 GMT):
so maybe you'd rather want to switch now and get it right then
cweiers (Wed, 18 Oct 2017 15:15:50 GMT):
as opposed to getting it right on 0.13.1 and than having to redo a lot of stuff when switching
corentindaniel (Wed, 18 Oct 2017 15:16:52 GMT):
we can't switch we are on linux1 cloud and all stack is installed by 1 script ;)
cweiers (Wed, 18 Oct 2017 15:21:16 GMT):
Well, then here is what you do: The tutorial only covers github auth as passport strategy (https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html). I'm working on getting ldap to work right now, but I'm not quite there. You use the github tutorial for a start. After startup of the rest server, you link the account you use per default (the admin one) to a github account. In the default wallet (you may also create a new one), add admin/adminpw and set this wallet as the default wallet (the wallets/{id}/setDefault one). Create a new Participant after that, and issue an identity for this participant.
cweiers (Wed, 18 Oct 2017 15:21:52 GMT):
Open a new browser session / another browser / clear storage
cweiers (Wed, 18 Oct 2017 15:22:10 GMT):
auth yourself with ANOTHER github account
cweiers (Wed, 18 Oct 2017 15:22:24 GMT):
this one now also has a default wallet, with a different ID than the admin one
corentindaniel (Wed, 18 Oct 2017 15:23:16 GMT):
do i have to create a nex identity card for every user strating transaction ?
corentindaniel (Wed, 18 Oct 2017 15:23:22 GMT):
new*
cweiers (Wed, 18 Oct 2017 15:23:44 GMT):
identity cards are a playground feature, aren't they ?
cweiers (Wed, 18 Oct 2017 15:24:55 GMT):
In general, you need a login/auth per participant. the REST server internally links the (github) login to your wallet, which contains a blockchain identity linked to a participant
cweiers (Wed, 18 Oct 2017 15:25:50 GMT):
So when you are authenticated as a certain user, the REST server knows which blockchain identity to use when he "transfers" your request to the blockchain
cweiers (Wed, 18 Oct 2017 15:26:11 GMT):
and ACLs are enforced based on the participant type linked to that identity
corentindaniel (Wed, 18 Oct 2017 15:26:42 GMT):
ok ok tanks i'll do that
cweiers (Wed, 18 Oct 2017 15:27:34 GMT):
Good luck. It takes some testing and restarting here and there, but I'm confident you'll figure it out :) I'm out for now, maybe I'll be here later or tomorrow again if more questions arise
corentindaniel (Wed, 18 Oct 2017 15:27:58 GMT):
i'll be here tomorrow again :)
corentindaniel (Wed, 18 Oct 2017 15:28:10 GMT):
thank you very much
SamuelDare (Wed, 18 Oct 2017 15:31:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wYKhiTRxDRudHywuF) @IanSparkes Thanks alot!!!
kletkeman (Wed, 18 Oct 2017 15:34:00 GMT):
And for @JoshuaRippon , the same command works to align versions ... `npm install -g composer-cli@0.14.0` ... I used that to update the cli and rest server yesterday ...
JoshuaRippon (Wed, 18 Oct 2017 15:42:48 GMT):
working now
JoshuaRippon (Wed, 18 Oct 2017 15:42:53 GMT):
cheers
Hefziben (Wed, 18 Oct 2017 16:43:36 GMT):
hello Team,
einarpersson (Wed, 18 Oct 2017 17:10:31 GMT):
Is it possible to access the admin user in the ACL and do any kind of restrictions ?
cweiers (Wed, 18 Oct 2017 17:12:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=E8vdtw468BfNATEpi) @einarpersson in 0.14.0 it is : https://github.com/hyperledger/composer/releases look at the "how to deal with the change" section
cbf (Wed, 18 Oct 2017 17:13:50 GMT):
does the composer-rest-server have a means of saving off the swagger (openapi) definition so that another client might be generated?
davidkel (Wed, 18 Oct 2017 17:45:15 GMT):
@cbf http://localhost:3000/explorer/swagger.json give you the content in the browser window
cbf (Wed, 18 Oct 2017 17:46:41 GMT):
I was hoping it was saved to disk... ok thx
MarioHF (Wed, 18 Oct 2017 18:58:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=D6mPigZ38Js6gMpLc) @AndreiZhigulin , did you manage to get done ?
ajp (Wed, 18 Oct 2017 20:01:25 GMT):
Does anyone know if the access token generated by the REST server on authentication ever expires, or is it valid as long as it exists in the datastore?
cweiers (Wed, 18 Oct 2017 20:52:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=p4odkQSbh77nkoFX2) @ajp it does expire at some point, but its not a really short duration... if you mean the cookie in browser storage that is. I think it was ~1 month or more ?
cweiers (Wed, 18 Oct 2017 20:52:44 GMT):
you can look it up after authenticating when you look at your cookie list
ajp (Wed, 18 Oct 2017 21:01:08 GMT):
I don't use the cookie unfortunately, I retrieve the auth token and then pass it along as either a query parameter or a request header because I do all my requests server side. Since in the datastore there is no mention of an expiration date in the access token model, I didn't think it would ever expire but there may be some other mechanism I'm not aware.
ajp (Wed, 18 Oct 2017 21:01:08 GMT):
I don't use the cookie unfortunately, I retrieve the auth token and then pass it along as either a query parameter or a request header because I do all my requests server side. Since in the datastore there is no mention of an expiration date in the access token model, I didn't think it would ever expire but there may be some other mechanism I'm not aware of.
cweiers (Wed, 18 Oct 2017 21:17:34 GMT):
hrm. I'm out of ideas in this case. But also interested to know more about it, so if you find it out please tell me / us. Maybe one of the devs can chime in tomorrow :)
GLB (Thu, 19 Oct 2017 01:29:00 GMT):
What is the typical way to have a participant grab its identity secret? Do you assign the secret as one of the properties of the participant or do you store it in some file?
lclclc (Thu, 19 Oct 2017 02:18:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kMZ2R9fuXCGFZR7NT) @cbf I think just a curl command can save this swagger to disk. Anyway, you would always need extra command to generate other clients.
james.liu (Thu, 19 Oct 2017 03:39:31 GMT):
Has joined the channel.
BrianOtieno (Thu, 19 Oct 2017 05:11:35 GMT):
Has joined the channel.
BrianOtieno (Thu, 19 Oct 2017 05:30:04 GMT):
Hi guys, a newbie here. What are the limitations of using composer over just going the hard way of directly using Fabric?
meinvzou (Thu, 19 Oct 2017 08:12:58 GMT):
Has joined the channel.
JoshuaRippon (Thu, 19 Oct 2017 08:25:18 GMT):
Hi everyone. Just reading through the deployment documentation. What is the difference between `composer network deploy` and `composer network start`?
JoshuaRippon (Thu, 19 Oct 2017 08:26:36 GMT):
Actually don't worry, I got it! haha
erNail (Thu, 19 Oct 2017 10:00:17 GMT):
Hi, has anyone managed to connect a local playground to the local running chain ? I'm trying with the hlfv1 chain started in the developer guide, but when i create a card with the admin credentials, i can't deploy or access a business network.
sstone1 (Thu, 19 Oct 2017 11:46:07 GMT):
@here we've released Hyperledger Composer v0.14.1 with your serving of quality bug fixes and the latest CongaComic 🎉 https://github.com/hyperledger/composer/releases/tag/v0.14.1
baohua (Thu, 19 Oct 2017 12:04:15 GMT):
Congrats!
a.ochs (Thu, 19 Oct 2017 12:05:14 GMT):
I always can read the comic while updating the composer, it's so perfect
cweiers (Thu, 19 Oct 2017 12:11:24 GMT):
this conga comic is pretty much exactly the right amount of terrible pun :)
dselman (Thu, 19 Oct 2017 12:18:29 GMT):
I fear @EdMoffatt has many, many more puns.
jtonline (Thu, 19 Oct 2017 12:18:47 GMT):
Your fears are well founded
geoms (Thu, 19 Oct 2017 12:21:15 GMT):
Hello,
I am trying to deploy a composer rest server in production environment by following
(https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html).
Getting below error, when trying to start the composer rest server using 'docker run' (logs from 'rest' docker container).
'0|composer | Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
0|composer | It will be retried for the next request.
0|composer | Exception: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
0|composer | Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)'
I can see admin identity in Ubuntu ~/.composer-credentials
Anyone know, What would be the issue?
erNail (Thu, 19 Oct 2017 12:52:23 GMT):
@geoms What is the keyValStore path given in the connection.json ? I'm having a similar problem
geoms (Thu, 19 Oct 2017 12:56:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7zWitqbNhYCBotf5f) @erNail "keyValStore": "/home/composer/.composer-credentials",
geoms (Thu, 19 Oct 2017 12:57:16 GMT):
I followed as per the tutorial
erNail (Thu, 19 Oct 2017 12:57:59 GMT):
@geoms Am i guessing right that there is no admin identity in `/home/composer/.composer-credentials` ?
geoms (Thu, 19 Oct 2017 12:59:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=KYJ9yJsB4YJiZYGXd) @erNail Right. I am also thinking same. Because we are trying to put the REST server in docker container. Where this identity might not available.
erNail (Thu, 19 Oct 2017 13:04:09 GMT):
@geoms I'm not sure how to fix this. I'm having similiar problems when creating a identity with the playground.
geoms (Thu, 19 Oct 2017 13:08:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9u6k7wGuYrN5s7Lqr) @erNail I tried to get into the terminal of 'rest' docker container. Searched for the .composer-credentials directory. But not found.
erNail (Thu, 19 Oct 2017 13:27:49 GMT):
@geoms Another problem with the `/home/composer/.composer-credentials`-path is that you get permission-denied-errors when pinging or deploying networks via console. However, you can deploy with the playground.
LarissaAuberger (Thu, 19 Oct 2017 13:36:04 GMT):
Has joined the channel.
cweiers (Thu, 19 Oct 2017 13:45:51 GMT):
are you using 0.14.0 or 0.14.1 ? the "learn how to deal with it" section inhttps://github.com/hyperledger/composer/releases/tag/v0.14.0 explicitly mentions changes related to the admin user (that now has a participant and has to be dealt with in the ACL file
cweiers (Thu, 19 Oct 2017 13:45:51 GMT):
are you using 0.14.0 or 0.14.1 ? the "learn how to deal with it" section in https://github.com/hyperledger/composer/releases/tag/v0.14.0 explicitly mentions changes related to the admin user (that now has a participant and has to be dealt with in the ACL file
erNail (Thu, 19 Oct 2017 13:47:25 GMT):
@cweiers I'm using 0.14.0 at the moment. My ACL file contains the mentioned changes.
corentindaniel (Thu, 19 Oct 2017 14:02:40 GMT):
hi guys , is there an another method to deny access to update data instead of ACL ?
erNail (Thu, 19 Oct 2017 14:23:23 GMT):
Programmatic control access. In the javascript code, while your transaction is being executed you can do something like `if (getCurrentParticipant().getIdentifier() == myExpectedParticipant`
erNail (Thu, 19 Oct 2017 14:23:44 GMT):
@corentindaniel https://hyperledger.github.io/composer/business-network/programmatic-access-control.html
corentindaniel (Thu, 19 Oct 2017 14:25:03 GMT):
ty
nickyromeijn (Thu, 19 Oct 2017 15:50:37 GMT):
Good evening; im running into an issue where i cannot execute actions as admin anymore if i boot the rest-server in docker (not sure if that's the issue)
nickyromeijn (Thu, 19 Oct 2017 15:51:43 GMT):
I'm using the startfabric etc scripts from the guide on the website and on top of that i'm booting up the composer-rest-server in a docker container (this works) when i try to seed my chain with some data from my hostmachine using admin/adminpw i get the following error: (status: 500, message: Error: The current identity has not been registered: admin). What can this be?
nickyromeijn (Thu, 19 Oct 2017 15:52:37 GMT):
The specified connection profile and credentials are available at ~/.composer-* , and the rest server (from within docker) CAN connect using admin/adminpw
nickyromeijn (Thu, 19 Oct 2017 16:27:35 GMT):
I am deploying properly according to the 14.0 specs: -i PeerAdmin -s adminpw -A admin -S"
nickyromeijn (Thu, 19 Oct 2017 16:36:32 GMT):
Could it be that the rest-server consumes the admin/adminpw secret and therefor my host machine cannot connect anymore?
nickyromeijn (Thu, 19 Oct 2017 17:02:58 GMT):
This was what i needed: https://github.com/hyperledger/composer/issues/2387 thanks @davidkel
CT123 (Thu, 19 Oct 2017 18:13:52 GMT):
@sstone1 @davidkel -- Am updating composer, playground, etc. and am following or trying to follow all the 'updated' documentation -- the new-ish "Installing the pre-requisites for Hyperledger Composer on Mac OS X" now suggests installing and using nvm -- which is fine, however it breaks global npm installs -- we all want to be HL composer and fabric users not npm and nvm experts. Is there ANY info you can put into documentation -- and also reply to me here as well -- on how to configure nvm to use the global (/usr/local/lib) versions that npm installs? Please? I've spent two days trying to remove, reinstall, etc. only to find some new guidance is keeping me from developing composer code..... thanks in advance -- how do I fix this easily?
CT123 (Thu, 19 Oct 2017 18:14:31 GMT):
Does one just change the NVM_DIR to /usr/local/lib and move the .nvm folder there or what?
davidkel (Thu, 19 Oct 2017 18:20:13 GMT):
@CT123 The point and beauty of nvm is it doesn't make use of installing node and npm globally and makes it easy to use node from a non global environment which is the cause of permission problems etc. I would say that to use composer effectively it is worth having some understanding of how npm works as it is fundamental to how your client applications will be written and in the future transaction processors as well.
davidkel (Thu, 19 Oct 2017 18:20:13 GMT):
@CT123 The point and beauty of nvm is it doesn't make use of installing node and npm globally. It makes it easy to use node from a non global environment so you avoid any permission problems. I would say that to use composer effectively it is worth having some understanding of how npm works as it is fundamental to how your client applications will be written and in the future transaction processors as well.
davidkel (Thu, 19 Oct 2017 18:20:13 GMT):
@CT123 The point and beauty of nvm is it doesn't make use of installing node and npm globally into /usr directory. It makes it easy to use node from a non global environment so you avoid any permission problems. I would say that to use composer effectively it is worth having some understanding of how npm works as it is fundamental to how your client applications will be written and in the future transaction processors as well.
davidkel (Thu, 19 Oct 2017 18:20:13 GMT):
@CT123 The point and beauty of nvm is it doesn't make use of installing node and npm globally into /usr directory. It makes it easy to use node so you avoid any permission problems. I would say that to use composer effectively it is worth having some understanding of how npm works as it is fundamental to how your client applications will be written and in the future transaction processors as well.
CT123 (Thu, 19 Oct 2017 18:30:16 GMT):
@davidkel Thank you, I do appreciate that however, for a bevy of reasons we do install npm globally -- so, if given *this users environment*, can you please relay what we need to do to just fix this issue? If it's 'don't use nvm' that's ok we won't. Our customers and users have zero interest in becoming npm experts -- all they want to do is use the apps we're delivering to them. We have zero interest in becoming nvm or npm experts -- but we have extreme interest in leveraging HL composer, fabric, etc. In fact our users will never be HL, composer, fabric, etc experts either - we want them to use our solutions not become 'dependency' experts -- I hope you understand -- if what you're saying is that in order to effectively use composer, etc. you must be a npm expert then put that in the prerequisites. Magically we aren't docker experts but docker just seems to work with composer -- no terminal level hassle involved.
CT123 (Thu, 19 Oct 2017 18:39:34 GMT):
@davidkel or said another way, a little explanation for those who want to dig right in to composer would help -- and we will install both globally and locally if we have to - but for the rest of the community there is a good discussion of why local or global is here: https://stackoverflow.com/questions/5817874/how-do-i-install-a-module-globally-using-npm
E.Gutarra.Tibco (Thu, 19 Oct 2017 18:40:17 GMT):
Hi all, how does one go about adding a field for an image to an asset?
CT123 (Thu, 19 Oct 2017 18:42:03 GMT):
@davidkel So here's a suggestion for your install docs: if you want to install composer locally do this (to include how you install npm / nvm) -- if you're running npm globally, and running nvm to manage your npm distributions, you need to adjust these things. This way we get the managing the preqs out of the way and users can move forward with just enjoying composer, playground, etc - again, this isn't meant to be a bash, just some frustration with every time an update comes we need to do something different.... rant off! Thanks
VincentBiret (Thu, 19 Oct 2017 18:42:55 GMT):
Hey guys, little issue regarding the Historian, upon using the .getAll() inherited from the Registry it should return a list of Resources correct? raw output:
```
[ ValidatedResource {
'$modelManager': ModelManager { modelFiles: [Object] },
'$namespace': 'org.hyperledger.composer.system',
'$type': 'HistorianRecord',
```
But when I try to serialise it using the serializer from the bnc.getBusinessNetwork() it results in:
```
Error: Serializer.toJSON only accepts instances of Resource.
```
Am I missing something?
VincentBiret (Thu, 19 Oct 2017 18:44:25 GMT):
PS: I do not have any issue when using the Serializer for any other Resource
vitorduarte (Thu, 19 Oct 2017 19:11:35 GMT):
Has joined the channel.
nickyromeijn (Thu, 19 Oct 2017 20:26:16 GMT):
Do the composer-client, composer-admin and composer-common modules work under Windows?
rikmoedt (Thu, 19 Oct 2017 20:37:58 GMT):
I ran into the following situation:
We have a composer transaction function that retrieves, updates and saves an asset and sends out an event.
When I sent two identical request (so updating the same asset) using the composer client at (almost) the exact same time to the network, both the transaction success during the endorsement but when it is time to store both the transaction the peer rejects second transaction because of an "MVCC_READ_CONFLICT", which is expected.
However the composer client receives the event that the function has sent out twice.
From what I understand about composer/fabric it makes kinda sense to me that it can't be helped that the event is sent out even though the transaction wont end up stored in a block. So the question is more how can we check on the client side if the event that is received originated from a successful transaction.
davidkel (Thu, 19 Oct 2017 20:56:47 GMT):
@rikmoedt This is actually a bug in fabric which I am hoping will be fixed in the near future.
davidkel (Thu, 19 Oct 2017 20:56:47 GMT):
@rikmoedt This is actually a bug in fabric which I am hoping will be fixed in the near future. see https://jira.hyperledger.org/browse/FAB-6208
davidkel (Thu, 19 Oct 2017 21:05:34 GMT):
@nickyromeijn sorry we don't support windows, there are many issues to overcome to make it work on windows. There is an open issue about windows support in github
nickyromeijn (Thu, 19 Oct 2017 21:07:33 GMT):
@davidkel Thanks for the answer. I'll resort to interfacing with the rest-server instead
vkblue (Thu, 19 Oct 2017 22:59:39 GMT):
Has joined the channel.
LarissaAuberger (Fri, 20 Oct 2017 00:06:53 GMT):
Has someone tried to configure basic authentication + HTTPS as Passport strategy for the Composer REST Server? Any doc is highly appreciated. Thanks!
aneb (Fri, 20 Oct 2017 04:34:21 GMT):
Hi guys, a question, albeit maybe a stupid one, regarding the the use of passport-local and the rest-server. Basically you send username,password in the query string and then your user gets authenticated. My question is though: against what data is this password validated?
When I check the rest server and loopback-component-password source code I see that the password matching is done on the user model, which is a loopback ORM model I imagine. First a search query and then password validation. Until there all clear. However are these user identities or participants or is this a model that is only used by the rest server? Basically what it boils down too is that I don't understand yet just at what time that user model is created and if this password is an actual participant field or the actual ID enrollementSecret or something different all together.
Amazing framework by the way. Just finished my first production Fabric (all golang code) and after trying out Composer I don't think I am going back any time soon to doing all from scratch.
Thank you.
aneb (Fri, 20 Oct 2017 04:34:21 GMT):
Hi guys, a question, albeit maybe a stupid one, regarding the the use of passport-local and the rest-server. Basically you send username,password in the query string and then your user gets authenticated. My question is though: against what data is this password validated?
When I check the rest server and loopback-component-passport source code I see that the password matching is done on the user model, which is a loopback ORM model I imagine. First a search query and then password validation. Until there all clear. However are these user identities or participants or is this a model that is only used by the rest server? Basically what it boils down too is that I don't understand yet just at what time that user model is created and if this password is an actual participant field or the actual ID enrollementSecret or something different all together.
Amazing framework by the way. Just finished my first production Fabric (all golang code) and after trying out Composer I don't think I am going back any time soon to doing all from scratch.
Thank you.
Hefziben (Fri, 20 Oct 2017 05:29:47 GMT):
hello team, I tried to set the persistennt database with mongo, db, after I followed the instrucctions. I got this:
node@node-VirtualBox:~/docker-container/mongo$ docker run \
> -d \
> -e COMPOSER_CONNECTION_PROFILE=${COMPOSER_CONNECTION_PROFILE} \
> -e COMPOSER_BUSINESS_NETWORK=${COMPOSER_BUSINESS_NETWORK} \
> -e COMPOSER_ENROLLMENT_ID=${COMPOSER_ENROLLMENT_ID} \
> -e COMPOSER_ENROLLMENT_SECRET=${COMPOSER_ENROLLMENT_SECRET} \
> -e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
> -e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
> -e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
> -e COMPOSER_CONFIG="${COMPOSER_CONFIG}" \
> -e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
> -e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
> --name rest \
> --network composer_default \
> -p 3000:3000 \
> myorg/my-composer-rest-server
ed314b749ad30f08448caa75915a9c0a5361bb0dc02fe36238396249a752267a
but when I go to: http://localhost:3000/explorer/. the rest server is not ther. could you please tell me what I did wrong.
davidkel (Fri, 20 Oct 2017 06:09:27 GMT):
@CT123 nvm is not mandatory but depending on how node has been installed on your machine you may have to deal with permission problems when installing node modules globally. nvm is a tool that provides some useful capabilities. It provides easy management of installing node onto a system and also installing multiple versions of node. By virtue of how it installs node it also addresses the problem of permissions issues you can encounter if you do install node into /usr. If you are happy to deal with the issues that arrive with installing node into a privileged directory then by all means do so
davidkel (Fri, 20 Oct 2017 06:09:27 GMT):
@CT123 nvm is not mandatory but depending on how node has been installed on your machine you may have to deal with permission problems when installing node modules globally. nvm is a tool that provides some useful capabilities. It provides easy management of installing node onto a system and also installing multiple versions of node. By virtue of how it installs node it also addresses the problem of permissions issues you can encounter if you do install node into /usr.
SergeySadon (Fri, 20 Oct 2017 07:13:35 GMT):
Has joined the channel.
LarissaAuberger (Fri, 20 Oct 2017 07:14:27 GMT):
Is there a list of Password strategies that are ready-to-use in composer REST Server or planned? If not, is there a doc on how to add e.g. basic-digest following this instruction: http://passportjs.org/docs/basic-digest Thank you!
IanSparkes (Fri, 20 Oct 2017 07:23:22 GMT):
@Hefziben what does "docker logs" say about the container that was launched?
Willkopp (Fri, 20 Oct 2017 09:10:06 GMT):
Has joined the channel.
Willkopp (Fri, 20 Oct 2017 09:12:49 GMT):
hello, could someone help me going into the right direction. I am looking for a way to validate (check, compile, etc....) a .cto file from the command line. Is there tooling to do so?
davidkel (Fri, 20 Oct 2017 09:47:37 GMT):
@LarissaAuberger The Rest Server makes use of passport and as such should accept any passport strategy, it should then be just a case of understanding how that passport strategy works and defining the appropriate configuration for that strategy. I know that other people have used OAuth strategies with the rest server.
davidkel (Fri, 20 Oct 2017 09:47:37 GMT):
@LarissaAuberger The Rest Server makes use of passport and as such should accept any passport strategy, it should then be just a case of understanding how that passport strategy works and defining the appropriate configuration for that strategy. I know that other people have used OAuth strategies with the rest server as an example and worked fine with our rest server.
dselman (Fri, 20 Oct 2017 10:05:13 GMT):
@Willkopp if you run `composer archive create` it will validate the contents of a directory structure (including all the CTO files).
dselman (Fri, 20 Oct 2017 10:06:09 GMT):
If you use the VSCode extension for Composer it validates on every edit.
Willkopp (Fri, 20 Oct 2017 10:16:26 GMT):
Thanks @dselman I am not using VSCode, I am trying to make a home within Sublime. I tried composer archive create and that looks good, Thx.
Willkopp (Fri, 20 Oct 2017 10:21:11 GMT):
At that point, I published the basics: syntax and language for model and queries, snippets for both as well and a first build that create the archive (to /dev/null for now). It is all in here: https://github.com/chevdor/HyperledgerComposerSublimeText I have submitted a PR to add the package to the official SublimeText channel. It usually takes a few (few like in 10-20) days to go thru.
LarissaAuberger (Fri, 20 Oct 2017 10:21:52 GMT):
@davidkel, thanks for the answer. I went through the bsic-digest doc (http://passportjs.org/docs/basic-digest) and my impression was that I need to do (1) Configuration and (2) Protect Endpoints on my own. If not, how can I find out what to configure in COMPOSER_PROVIDERS='{
"basic-digest": {
"provider": ...,
"module": "passport-http",
???
}
}'
davidkel (Fri, 20 Oct 2017 10:34:40 GMT):
@LarissaAuberger I haven't looked at trying to use a different passport strategy myself but I would guess that whatever information that goes into the COMPOSER_PROVIDERS configuration will have to come from documentation about the strategy you want to use and is unique to that strategy. Maybe someone from the community could share their oauth example to provide a different example to examine. But for example in the github strategy
```
export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "REPLACE_WITH_CLIENT_ID",
"clientSecret": "REPLACE_WITH_CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
```
The properties for clientID, clientSecret,callbackURL are all properties expected by the Github passport strategy, successRedirect, failureRedirect are properties probably common to all sorts of different stragegies, maybe all of them.
davidkel (Fri, 20 Oct 2017 10:34:40 GMT):
@LarissaAuberger I haven't looked at trying to use a different passport strategy myself but I would guess that whatever information that goes into the COMPOSER_PROVIDERS configuration will have to come from documentation about the strategy you want to use and is unique to that strategy. Maybe someone from the community could share their oauth example to provide a different example to examine. But for example in the github strategy
```
export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "REPLACE_WITH_CLIENT_ID",
"clientSecret": "REPLACE_WITH_CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
```
The properties for clientID, clientSecret,callbackURL are all properties expected by the Github passport strategy, successRedirect, failureRedirect are properties not specific to the github strategy.
davidkel (Fri, 20 Oct 2017 10:39:16 GMT):
@LarissaAuberger this page may also help you more https://loopback.io/doc/en/lb2/Configuring-providers.json.html
aneb (Fri, 20 Oct 2017 10:53:10 GMT):
to understand what is going on more behind the scenes I also highly recommend to take a look at this code https://github.com/strongloop/loopback-component-passport/blob/master/lib/passport-configurator.js . For example successRedirect and failureRedirect are needed by this component and not the passport strategies as mentioned.
glotov (Fri, 20 Oct 2017 11:04:07 GMT):
I switched to 0.14.1, applied [release notes](https://github.com/hyperledger/composer/releases/tag/v0.14.0), but when I start my rest server, I get errors: '''$ ~/bin/composer-rest-server -p mainorg -n my-network -i admin -s randomString -N never -w true
Discovering types from business network definition ...
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 140278261262144:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:../deps/openssl/openssl/ssl/s23_clnt.c:794:
]``` It works well on 0.13.2. I have TLS enabled.
glotov (Fri, 20 Oct 2017 11:04:07 GMT):
I switched to 0.14.1, applied [release notes](https://github.com/hyperledger/composer/releases/tag/v0.14.0), but when I start my rest server, I get errors: ```$ ~/bin/composer-rest-server -p mainorg -n my-network -i admin -s randomString -N never -w true
Discovering types from business network definition ...
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 140278261262144:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:../deps/openssl/openssl/ssl/s23_clnt.c:794:
]``` It works well on 0.13.2. I have TLS enabled.
glotov (Fri, 20 Oct 2017 11:07:03 GMT):
How can I help it? When I deploy my BNA, I use `-A admin -S` or `-A admin -S randomString`.
glotov (Fri, 20 Oct 2017 11:07:03 GMT):
How can I help it? When I deploy my BNA, I use either `-A admin -S` or `-A admin -S randomString`.
glotov (Fri, 20 Oct 2017 11:28:40 GMT):
I tried to specify tls options explicitly for composer-rest-server, although 0.13.2 successfully used the ones in connection profile. The error remained the same :(
gatakka (Fri, 20 Oct 2017 11:40:41 GMT):
Has joined the channel.
MarioHF (Fri, 20 Oct 2017 11:50:30 GMT):
Hey guys, i am getting the following error. Someone know how can i get it fixed ? Participant 'org.hyperledger.composer.system.NetworkAdmin#PeerAdmin' does not have 'CREATE' access to resource 'com.model.transactions.registerDevice
gatakka (Fri, 20 Oct 2017 11:54:44 GMT):
Can Fabric-composer be used WITHOUT Couch-db and what are implications of this?
gatakka (Fri, 20 Oct 2017 11:54:44 GMT):
Can Fabric-composer be used WITHOUT CouchDb and what are implications of this?
davidkel (Fri, 20 Oct 2017 11:55:45 GMT):
@gatakka Hyperledger composer can be used without CouchDB but you will lose the capability to perform rich queries
gatakka (Fri, 20 Oct 2017 11:58:44 GMT):
@davidkel thank you, also I am investigating how easy we can migrate to composer, in our case we have a lot of Go chaincode and many of the logic require specific attributes taken from Ecert. So in short, can we use golang as chaincode and can we add attrubutes to certificates using Composer Auth mechanism.
rikmoedt (Fri, 20 Oct 2017 13:44:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mdtDHDNrjonN6gsAB) @davidkel Thnx
Dieku (Fri, 20 Oct 2017 15:06:03 GMT):
Has joined the channel.
nehalshah50 (Fri, 20 Oct 2017 15:51:05 GMT):
Hello.... I am trying to run composer rest server in multi user mode....i have followed instructions online but after setting default identity I can't get the ping working...Also I have Angular App which will use this rest server....How do I supply identity in the rest calls?
mikykey (Fri, 20 Oct 2017 16:47:22 GMT):
Has joined the channel.
mahoney1 (Fri, 20 Oct 2017 17:04:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kRK9yii3izHzHo77j) @nehalshah50 I would check you configured your COMPOSER_PROVIDERS correctly and using the -a -m flags on startup. Then ensure your issued Blockchain identity is linked to a Composer participant . Its all in the docd -> https://hyperledger.github.io/composer/integrating/enabling-multiuser.html you should be able to check that you can authenticate in the first case.
mahoney1 (Fri, 20 Oct 2017 17:04:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kRK9yii3izHzHo77j) @nehalshah50 I would check you configured your COMPOSER_PROVIDERS correctly and using the -m flag on startup. Then ensure your issued Blockchain identity is linked to a Composer participant . Its all in the docd -> https://hyperledger.github.io/composer/integrating/enabling-multiuser.html you should be able to check that you can authenticate in the first case.
mahoney1 (Fri, 20 Oct 2017 17:04:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kRK9yii3izHzHo77j) @nehalshah50 I would check you configured your COMPOSER_PROVIDERS correctly and using the -m flag on startup. Then ensure your issued Blockchain identity is linked to a Composer participant . Its all in the docs -> https://hyperledger.github.io/composer/integrating/enabling-multiuser.html you should be able to check that you can authenticate in the first case.
nehalshah50 (Fri, 20 Oct 2017 17:06:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WGQzHbe5PsFLKftMQ) @mahoney1 Yes. That was all done correctly. Also I am looking for how to use identity while making those rest calls from rest client in another web app
glotov (Fri, 20 Oct 2017 17:17:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xLz7nQaxka98SttyF) Composer 0.14 does not work with TLS-enabled Fabric network, right?
davidkel (Fri, 20 Oct 2017 17:31:23 GMT):
@glotov It should work as our system tests always run over a TLS-enabled fabric
davidkel (Fri, 20 Oct 2017 17:31:23 GMT):
@glotov It should work as our system tests always run over a TLS-enabled fabric. What level of fabric are you running ?
glotov (Fri, 20 Oct 2017 17:33:47 GMT):
Level? Fabric x86_64-1.0.1
glotov (Fri, 20 Oct 2017 17:33:47 GMT):
@davidkel, level? I use Fabric x86_64-1.0.1.
awsmike (Fri, 20 Oct 2017 17:39:30 GMT):
Has joined the channel.
davidkel (Fri, 20 Oct 2017 18:31:12 GMT):
@glotov we run our automated system tests against that version, so can't think why you are having a problem
bingbong (Fri, 20 Oct 2017 19:24:18 GMT):
Hi everyone - I installed Hyperledger Playground locally yesterday. How do I restart it again?
bingbong (Fri, 20 Oct 2017 19:46:40 GMT):
Has anyone tried using Playground online? I cannot get my own BNA networks to work, nor can I get the templated networks to work either.
LarissaAuberger (Fri, 20 Oct 2017 20:10:50 GMT):
I am trying to configure persistence and - according to the doc - (1) installed loopback connectr mongodb (npm install -g loopback-connector-mongodb), (2) configured datasource (COMPOSER_DATASOURCES='{"db": {"name": "db","connector": "mongodb", "host": "mongo" }} , (3) ran docker run with providing the env variable. The command returns with the container ID, however https.//localhost:3000/explorer does not work anymore. Anything wrong in my steps?
cweiers (Fri, 20 Oct 2017 20:38:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zGPGDQYD5k8Ftwq2Y) @LarissaAuberger so you run the rest server inside a docker container and provide the COMPOSER_DATASOURCES variable to the docker container ?
LarissaAuberger (Fri, 20 Oct 2017 20:49:53 GMT):
yes, as described here: https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
cweiers (Fri, 20 Oct 2017 20:58:36 GMT):
did you start the mongodb inside the same container ? I just tested it once with the same setup on my work station, no docker involved, and it worked like that if I remember it right. Maybe it gets more complicated in this case.
cweiers (Fri, 20 Oct 2017 20:59:00 GMT):
I suppose you do map port 3000:3000 in the dockerfile
cweiers (Fri, 20 Oct 2017 20:59:50 GMT):
*the same setup" means "I just defined both env vars like you did, but on my ubuntu 16.04 installation without docker involved
cweiers (Fri, 20 Oct 2017 21:00:24 GMT):
Anyhow, I kinda have to sleep right now :/ good luck, I'll check tomorrow if i find the time
davidkel (Fri, 20 Oct 2017 21:06:44 GMT):
@LarissaAuberger any info from the rest server docker container logs ?
LarissaAuberger (Fri, 20 Oct 2017 21:09:06 GMT):
@davidkel, this was actually what I am trying to find out next. how do I access the rest server docker container logs?
davidkel (Fri, 20 Oct 2017 21:09:57 GMT):
`docker logs` then either the name of the rest server container or it's id
LarissaAuberger (Fri, 20 Oct 2017 21:15:34 GMT):
I see this: Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
LarissaAuberger (Fri, 20 Oct 2017 21:16:22 GMT):
at client.getUserContext.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:302:34)
0|composer | at process._tickDomainCallback (internal/process/next_tick.js:135:7)
LarissaAuberger (Fri, 20 Oct 2017 21:17:50 GMT):
As env variables I defined COMPOSER_ENROLLMENT_ID=admin
COMPOSER_ENROLLMENT_SECRET=adminpw
LarissaAuberger (Fri, 20 Oct 2017 21:18:08 GMT):
Is this again what's causing the problem?
davidkel (Fri, 20 Oct 2017 21:20:17 GMT):
ECONNREFUSED means that it cannot connect. As the rest server is running in a docker container localhost is not a viable end point to connect to. Docker containers a like Virtual machines, so when you specify localhost you are trying to connect effectively to the same docker container which only has the rest server running.
davidkel (Fri, 20 Oct 2017 21:20:17 GMT):
ECONNREFUSED means that it cannot connect. As the rest server is running in a docker container localhost is not a viable end point to connect to. Docker containers are like Virtual machines, so when you specify localhost you are trying to connect effectively to the same docker container which only has the rest server running.
LarissaAuberger (Fri, 20 Oct 2017 21:21:04 GMT):
Oh, I see
davidkel (Fri, 20 Oct 2017 21:22:14 GMT):
docker-compose set will setup a special network for which the rest server is a part of, so it can communicate with other docker containers by their name
davidkel (Fri, 20 Oct 2017 21:22:14 GMT):
docker-compose will setup a special network for which the rest server is a part of, so it can communicate with other docker containers by their name
davidkel (Fri, 20 Oct 2017 21:22:45 GMT):
this is why the connection profiles for the VLD for example will not use localhost but explicit names such as orderer.example.com
davidkel (Fri, 20 Oct 2017 21:23:13 GMT):
as all the services are running in docker containers and they are all linked into a docker network
LarissaAuberger (Fri, 20 Oct 2017 21:30:52 GMT):
ok, I retried with the correct IP addresses and now see "Exception: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)" - where would I register it - it is currently registered in the business network's .composer-credentials
davidkel (Fri, 20 Oct 2017 21:33:15 GMT):
@LarissaAuberger so this is back to ensuring you have the right identity called admin. which was should still be in that directory discussed previously. Did you start the rest container and mount the appropriate volume ?
zachgoll (Fri, 20 Oct 2017 21:35:34 GMT):
Have a quick question regarding the fabric-tools...
When I start fabric via `./startFabric` and then stop and tear it down via `./stopFabric` and `./teardownFabric`, does this remove and forget about all identities created in a previous session?
I had been working on my network a few days ago and had issued a few identities that would show up using `composer identity list` but after stopping, tearing down, and starting back up again, I no longer see these identities?
LarissaAuberger (Fri, 20 Oct 2017 21:36:57 GMT):
@davidkel, yes I started the rest container, but did not do any explicit mount operations - how would I do this?
davidkel (Fri, 20 Oct 2017 21:47:12 GMT):
@zachgoll Because you have shutdown the hyperledger fabric containers you will have lost everything. All the information is stored in the container file system. If you want to be able to persist your data to survive this you would need to read
http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#a-note-on-data-persistence
and apply it to our dev server setup
zachgoll (Fri, 20 Oct 2017 21:48:03 GMT):
Thank you!
curtissummers (Fri, 20 Oct 2017 22:04:15 GMT):
Has joined the channel.
zachgoll (Fri, 20 Oct 2017 22:52:20 GMT):
Okay one more for today... I am playing around in the Node console getting familiar with the API, and I am unable to get the following code to run:
```
const AdminConnection = require('composer-admin').AdminConnection;
var adminConnection = new AdminConnection();
return adminConnection.ping()
.then(function(){
console.log('ping successful');
})
.catch(function(error){
console.log('ping failure');
});
```
It is throwing an `SyntaxError: Illegal return statement` error on me?
chrisg (Sat, 21 Oct 2017 05:31:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Lsnni9oqzDKySFHzZ) @zachgoll that's because a `return` statement should be within the context of a function
chrisg (Sat, 21 Oct 2017 05:31:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Lsnni9oqzDKySFHzZ) @zachgoll that's because a `return` statememt should be within the context of a function
glotov (Sat, 21 Oct 2017 07:34:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Sv47BNtwt28Ljtb8T) @davidkel Can I look at your automated tests please? I don't see them in [github repo](https://github.com/hyperledger/composer).
davidkel (Sat, 21 Oct 2017 07:47:28 GMT):
@glotov you can find the package here
https://github.com/hyperledger/composer/tree/master/packages/composer-systests
Ryzum (Sat, 21 Oct 2017 09:14:28 GMT):
Has joined the channel.
glotov (Sat, 21 Oct 2017 10:59:58 GMT):
@davidkel, I see no composer-rest-server cli calls there, probably it is not tested there.
davidkel (Sat, 21 Oct 2017 11:02:12 GMT):
@glotov the error you posted is about trying to contact a fabric over tls. And that error implies that a tls request from the rest server to the fabric was made but the fabric responded in a non-tls manner
glotov (Sat, 21 Oct 2017 11:03:08 GMT):
I replied there, I tried what you suggested as well.
glotov (Sat, 21 Oct 2017 11:03:08 GMT):
@davidkel, I replied there, I tried what you suggested as well. Please note that if I downgrade to 0.13.2, things work.
davidkel (Sat, 21 Oct 2017 11:08:11 GMT):
@glotov so my comment above applies
davidkel (Sat, 21 Oct 2017 11:08:11 GMT):
@glotov so my comment above applies. Have added it to the issue. Can you post your connection profile
amitkumarj441 (Sat, 21 Oct 2017 19:08:21 GMT):
Has joined the channel.
conroydave (Sat, 21 Oct 2017 21:33:46 GMT):
Hey Composer team!
conroydave (Sat, 21 Oct 2017 21:33:55 GMT):
at a hackathon right now looking to modify the vehicle life cycle demo
conroydave (Sat, 21 Oct 2017 21:34:03 GMT):
trying to edit the image and rebuilding it , but am running into an issue
conroydave (Sat, 21 Oct 2017 21:34:04 GMT):
https://github.com/hyperledger/composer-sample-applications/issues/101
conroydave (Sat, 21 Oct 2017 21:37:11 GMT):
oh
conroydave (Sat, 21 Oct 2017 21:37:16 GMT):
i never ran the ionic build
conroydave (Sat, 21 Oct 2017 21:37:20 GMT):
WHOOPS
gregorypro (Sun, 22 Oct 2017 05:24:52 GMT):
Has joined the channel.
gregorypro (Sun, 22 Oct 2017 05:29:19 GMT):
A novice question: Is (composer + Tools) local installation available for Win10? Or only Ubuntu and MacOS? Thanks
glotov (Sun, 22 Oct 2017 06:28:13 GMT):
@davidkel, looking at your [Composer systests](https://github.com/hyperledger/composer/blob/master/packages/composer-systests/hlfv1/docker-compose.tls.yml), what is your _key.pem_? ''' - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-tls/tlsca.org2.example.com-cert.pem
- FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-tls/key.pem''' Ctyptogen does not generate _key.pem_ there.
glotov (Sun, 22 Oct 2017 06:28:13 GMT):
@davidkel, looking at your [Composer systests](https://github.com/hyperledger/composer/blob/master/packages/composer-systests/hlfv1/docker-compose.tls.yml), what is your _key.pem_? ``` - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-tls/tlsca.org2.example.com-cert.pem
- FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-tls/key.pem``` Ctyptogen does not generate _key.pem_ there.
davidkel (Sun, 22 Oct 2017 08:16:21 GMT):
@gregorypro We don't support windows as there are issues trying to deliver the complete composer experience on it.
davidkel (Sun, 22 Oct 2017 08:17:16 GMT):
@glotov the private key files all get renamed to key.pem see
https://github.com/hyperledger/composer/blob/master/packages/composer-systests/scripts/run-system-tests.sh
glotov (Sun, 22 Oct 2017 08:27:17 GMT):
@davidkel, thanks, but how do you generate your [crypto-config](https://github.com/hyperledger/composer/blob/master/packages/composer-systests/scripts/run-system-tests.sh#L54) data? If I use __cryptogen__ 1.0.1 then it leads to `Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]`, by composer-rest-server.
glotov (Sun, 22 Oct 2017 08:27:17 GMT):
@davidkel, thanks, but how do you generate your [crypto-config](https://github.com/hyperledger/composer/blob/master/packages/composer-systests/scripts/run-system-tests.sh#L54) data? If I use _cryptogen_ 1.0.1 then it leads to `Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]`, by composer-rest-server.
glotov (Sun, 22 Oct 2017 08:30:40 GMT):
(or probably this is because I use `ca/`, not `tlsca/` as in your example above. Will try to use tlsca...)
ldesrosi (Sun, 22 Oct 2017 09:46:40 GMT):
Has joined the channel.
hellothere (Sun, 22 Oct 2017 18:35:31 GMT):
Has joined the channel.
hellothere (Sun, 22 Oct 2017 18:39:00 GMT):
Hello, I am a student and wanting to build and a deploy a blockchain using hyperledger composer that I can have a Java web application interact with. I really want to do this, but I'm lost on where to start with the blockchain. I've followed the developers guide to deploy an example blockchain, but I'm unfamiliar with almost every technology used (Docker, NPM, Node.js, CLI, JavaScript, JSON etc) which makes it really difficult to understand what's going on. Where do I start in this project?
vijayin26 (Sun, 22 Oct 2017 19:17:57 GMT):
@hellothere Start with Hyperledger playground online https://composer-playground.mybluemix.net/login
vijayin26 (Sun, 22 Oct 2017 19:38:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=poCA6fy3hD7ZPfDoN) @bingbong What is the error you are getting?
erNail (Mon, 23 Oct 2017 06:14:03 GMT):
Good morning everyone. I've been trying for 3 days now to connect my local playground to a local fabric chain. Either the connection works only via playground, or only via console, never both at the same time. For example, the playground starts a chain named "hlfabric". Via the playground, i can easily deploy a bna. However, when i try to ping the deployed network via console, i get a timeout. I'm using the connection.json you get when you download the admin card of the deployed network.
erNail (Mon, 23 Oct 2017 06:14:30 GMT):
Does anyone have experience in connecting with the blockchain via both, console and playground ?
erNail (Mon, 23 Oct 2017 06:40:13 GMT):
Okay, found the problem. It seems like the 2 ways to start the playground, behave differently. When starting the playground using composer-playground, you are not able to import cards where the `keyValStore' of the `connection.json' is `/home/composer/.composer-credentials`, and when starting the playground via `curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash` you are not able to import cards with `~/.composer-credentials`as `keyValStore`.
This leads to some more problems (Like not being able to connect via console). Now that i'm using `composer-playground` to start the playground, everything works.
nasht00 (Mon, 23 Oct 2017 07:19:36 GMT):
Hi!
Is there a roadmap document?
For example I'm interested in knowing when to expect support for full nodejs code, to include 3rd party libraries.
davidkel (Mon, 23 Oct 2017 07:32:14 GMT):
@nasht00 see https://github.com/hyperledger/composer/issues/1390
this includes support for node.js driven TP, but it won't include 3rd party library support
nasht00 (Mon, 23 Oct 2017 07:34:12 GMT):
Thanks. Is 3rd party library support planned for a different milestone or is it not planned at all?
lmars (Mon, 23 Oct 2017 07:35:13 GMT):
@davidkel, and unfortunately, it does not contain any information about the release date :(
davidkel (Mon, 23 Oct 2017 07:36:08 GMT):
@nasht00 It is something that will be done, but requires some investigation into how best to do this.
davidkel (Mon, 23 Oct 2017 07:38:34 GMT):
@lmars The node.js capabilities are dependent on hyperledger fabric and so we are dependent on official drops from them before we can exploit it. We do releases on a regular basis and are adding capability in line with that issue.
davidkel (Mon, 23 Oct 2017 07:38:34 GMT):
@lmars The node.js capabilities are dependent on hyperledger fabric and so we are dependent on official drops from them before we can exploit it. We do releases on a regular basis and are adding capability in line with that issue through these release cycles.
arner (Mon, 23 Oct 2017 07:38:53 GMT):
Hi, does anyone know how to use composer with a peer that runs in dev mode? I'm trying to optimize our boot process for development a bit.. When just starting the peer in dev mode and no other changes I get `Error: Error trying deploy. Error: Error trying to instantiate composer runtime. Error: Failed to init chaincode(handler not found for chaincode my-network:0.13.1)`.
nasht00 (Mon, 23 Oct 2017 07:39:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=agLxuJQsYfYjWDB6o) @davidkel
Do we have a link to Fabric's roadmap/ETA for 1.1 ?
davidkel (Mon, 23 Oct 2017 07:41:25 GMT):
@nasht00 This is the only thing I have seen posted that gives any indication about what HLF are aiming for.
https://wiki.hyperledger.org/groups/tsc/project-updates/fabric-2017-oct
nasht00 (Mon, 23 Oct 2017 07:42:30 GMT):
Thanks. "1.1 release before EOY 2017"
nasht00 (Mon, 23 Oct 2017 07:45:50 GMT):
Is there a github issue for 3rd party npm modules support, so I can track it?
nasht00 (Mon, 23 Oct 2017 07:49:23 GMT):
By the way, earlier this month I mentioned I was experimenting with a workaround:
Running `browserify -r json-logic-js > lib/requires.js` generated a plain javascript file that added the module I want (`json-logic-js` in this example), and allowed me to call it via `require('json-logic-js')` even within Fabric.
It did not work for any module. The first one I tried failed to deploy to Fabric. I think duktape got stuck trying to parse it or something.
But this smaller module worked like a charm.
It may be useful to others...
davidkel (Mon, 23 Oct 2017 07:53:58 GMT):
@nasht00 Not specifically. One of the proposals which would enable the capability can be found here
https://github.com/hyperledger/composer/issues/2186
davidkel (Mon, 23 Oct 2017 07:53:58 GMT):
@nasht00 Not specifically. A proposal which would enable the capability can be found here
https://github.com/hyperledger/composer/issues/2186
lmars (Mon, 23 Oct 2017 08:00:37 GMT):
@davidkel, `node chaincode.js` already changed, please, see: https://jira.hyperledger.org/browse/FAB-6280
raduciobanu (Mon, 23 Oct 2017 08:09:40 GMT):
I was looking at the tutorial on the composer website, specifically the part that describes how to create an identity for a participant
raduciobanu (Mon, 23 Oct 2017 08:11:08 GMT):
The code example shows that when you create an identity you will get an id and a enrollment secret
raduciobanu (Mon, 23 Oct 2017 08:11:47 GMT):
This is also mentioned "The Hyperledger Fabric certificate authority generates an enrollment secret that can be given to the participant, who can then use the enrollment secret to request their enrollment certificate and private keys from the Hyperledger Fabric certificate authority."
raduciobanu (Mon, 23 Oct 2017 08:12:21 GMT):
Does anyone know how to get from the returned ID, enrollment secret to the enrollment certificate and private keys?
sstone1 (Mon, 23 Oct 2017 08:20:10 GMT):
@raduciobanu you have to perform a process called "enrolment", this happens automatically when somebody uses the ID and secret with Composer for the first time
sstone1 (Mon, 23 Oct 2017 08:20:22 GMT):
you will see the enrolment certificate and private key appear in the `keyValStore` directory
raduciobanu (Mon, 23 Oct 2017 08:20:43 GMT):
@sstone1 Thanks for your reply!
raduciobanu (Mon, 23 Oct 2017 08:20:49 GMT):
Ok, so this happens automatically
erNail (Mon, 23 Oct 2017 08:38:20 GMT):
Hi, is there a way to stop the hlfv1 fabric chain without losing all data ?
davidkel (Mon, 23 Oct 2017 09:17:08 GMT):
@erNail see http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#a-note-on-data-persistence
erNail (Mon, 23 Oct 2017 09:20:45 GMT):
@davidkel Thank you
erNail (Mon, 23 Oct 2017 09:23:27 GMT):
I just saw that when generating an Angular app, this line is commented: `// import { TransactionComponent } from './Transaction/Transaction.component'
Is it possible to generate the app with the TransactionComponent ?
erNail (Mon, 23 Oct 2017 09:23:27 GMT):
I just saw that when generating an Angular app, this line is commented: `// import { TransactionComponent } from './Transaction/Transaction.component'`
Is it possible to generate the app with the TransactionComponent ?
Banggijin (Mon, 23 Oct 2017 09:31:03 GMT):
HI
Banggijin (Mon, 23 Oct 2017 09:31:14 GMT):
is there any way to interact with other chain code?
Banggijin (Mon, 23 Oct 2017 09:31:38 GMT):
composer code - composer code OR composer code - native 'GO' chaincode
Banggijin (Mon, 23 Oct 2017 09:32:43 GMT):
until now, what i found were
Banggijin (Mon, 23 Oct 2017 09:32:44 GMT):
https://stackoverflow.com/questions/44901088/how-to-query-or-get-other-chaincode-data-in-hyperledger-composer
Banggijin (Mon, 23 Oct 2017 09:32:48 GMT):
https://stackoverflow.com/questions/42628296/interoperability-with-existing-code
Banggijin (Mon, 23 Oct 2017 09:32:51 GMT):
NO to both.
nsdeo12 (Mon, 23 Oct 2017 09:45:44 GMT):
Has joined the channel.
nsdeo12 (Mon, 23 Oct 2017 09:46:49 GMT):
After updating to composer v 0.14.1 I am getting error "The current identity has not been registered: admin" .Is there a change in the steps to deploy in composer now?
davidkel (Mon, 23 Oct 2017 09:56:23 GMT):
@nsdeo12 take a look at the release notes for 0.14.0 https://github.com/hyperledger/composer/releases/tag/v0.14.0
lmars (Mon, 23 Oct 2017 10:15:44 GMT):
If my external system (or composer rest server) was offline and miss some events, how I can reread these events from some checkpoint?
aviralwal (Mon, 23 Oct 2017 10:19:11 GMT):
Has joined the channel.
lmars (Mon, 23 Oct 2017 10:19:21 GMT):
I know there is Historian API, but it isn't possible to read transactions (blocks) in chronology order, and there is no checkpoint (sequence) number.
lmars (Mon, 23 Oct 2017 10:36:26 GMT):
I look for something like original Node.js Fabric SDK API:
https://fabric-sdk-node.github.io/Channel.html#queryInfo
https://fabric-sdk-node.github.io/Channel.html#queryBlock
Are there something similar in Composer?
sstone1 (Mon, 23 Oct 2017 10:37:34 GMT):
@lmars why can't you use the Fabric SDK?
sstone1 (Mon, 23 Oct 2017 10:37:55 GMT):
we don't have anything regarding event playback
lmars (Mon, 23 Oct 2017 10:46:48 GMT):
@sstone1, because I am going to use composer-rest-server to communicate with my network
lmars (Mon, 23 Oct 2017 10:52:27 GMT):
I think it would be helpful to have a blockchain block API in composer-rest-server, isn't it? @sstone1
biksen (Mon, 23 Oct 2017 11:18:57 GMT):
Hello All,
biksen (Mon, 23 Oct 2017 11:19:21 GMT):
Any solution with this problem as we are stuck and not able to proceed
biksen (Mon, 23 Oct 2017 11:19:24 GMT):
https://github.com/hyperledger/composer/issues/1783
biksen (Mon, 23 Oct 2017 11:19:46 GMT):
following this guide
biksen (Mon, 23 Oct 2017 11:19:47 GMT):
https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
biksen (Mon, 23 Oct 2017 11:20:11 GMT):
getting error while trying start composer-rest-server
biksen (Mon, 23 Oct 2017 11:21:33 GMT):
We are using CouchDB
geoms (Mon, 23 Oct 2017 11:44:51 GMT):
Hi Team,
I am trying to leverage composer rest server for a production environment.
I had enabled composer REST server for 'multiple user mode' (Mongo + passport github strategy).
I understand that, we need to use composer 'Wallet' to store identity and using this identity all the transactions will be made.
Apparently, we need to use POST /wallets/{id}/identities/{fk}/setDefault to set the identity for that composer instance.
If we do like this, How multiple participants can use the same composer instance?
For example, two different participant trying to use same composer instance same time, and using 'setDefault' API might not work well.
sstone1 (Mon, 23 Oct 2017 12:23:18 GMT):
@geoms each authenticated user gets their own private wallet with their own default identity
geoms (Mon, 23 Oct 2017 12:30:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=i3j9xzNKn7WiMX7Ef) @sstone1 you mean, when the participants are authenticating against composer REST server API(protected), the identity gets stored in their private wallet ?
geoms (Mon, 23 Oct 2017 12:30:37 GMT):
We dont need to save it explicitly ?
biksen (Mon, 23 Oct 2017 12:54:36 GMT):
Hello Team, I am getting the following error while trying to run "composer-rest-server"
biksen (Mon, 23 Oct 2017 12:54:38 GMT):
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
0|composer | Discovering types from business network definition ...
0|composer | D1023 12:05:09.264217160 16 env_linux.c:66] Warning: insecure environment read function 'getenv' used
root@ip-172-31-44-150:/home/ubuntu# docker logs restdev
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
0|composer | Discovering types from business network definition ...
0|composer | D1023 12:05:09.264217160 16 env_linux.c:66] Warning: insecure environment read function 'getenv' used
0|composer | Connection fails: Error: Error trying invoke business network. Error: Connect Failed
0|composer | It will be retried for the next request.
0|composer | Exception: Error: Error trying invoke business network. Error: Connect Failed
0|composer | Error: Error trying invoke business network. Error: Connect Failed
0|composer | at _initializeChannel.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:837:34)
PM2 | App [composer-rest-server] with id [0] and pid [16], exited with code [1] via signal [SIGINT]
PM2 | Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
PM2 | App name:composer-rest-server id:0 online
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
0|composer | Discovering types from business network definition ...
0|composer | D1023 12:05:33.325777256 39 env_linux.c:66] Warning: insecure environment read function 'getenv' used
biksen (Mon, 23 Oct 2017 12:55:01 GMT):
Appreciate! your help
lmars (Mon, 23 Oct 2017 13:29:19 GMT):
@sstone1, оk, which is your solution, how to protect my application from losing events with current version of composer-rest-server?
lmars (Mon, 23 Oct 2017 13:29:19 GMT):
@sstone1, оk, which is your (Composer developer's) solution, how to protect my application from losing events with current version of composer-rest-server?
douglasthiel (Mon, 23 Oct 2017 13:47:50 GMT):
### Architecture Question
When I run “composer-rest-server” the REST API is generated. It runs in the webserver on port 3000. I can reach it via my browser here: http://localhost:3000/explorer.
Where is the webserver running? In the docker image? Outside of the docker image? How does it connect to the Peers?
Thanks.
biksen (Mon, 23 Oct 2017 14:06:10 GMT):
Anyone using "hyperledger/composer-rest-server" docker image to run rest server? I am following the link "https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html" but getting error starting rest server.
biksen (Mon, 23 Oct 2017 14:06:35 GMT):
ERROR:: NODE_APP_INSTANCE value of '0' did not match any instance config file names
biksen (Mon, 23 Oct 2017 14:07:02 GMT):
Is the link provided missing any information?
biksen (Mon, 23 Oct 2017 14:10:33 GMT):
"composer-rest-server" running natively fine
nasht00 (Mon, 23 Oct 2017 15:02:55 GMT):
Is there a way to see the "history" of a specific asset?
I see there is a `Historian` API (https://hyperledger.github.io/composer/api-doc-inline/historian.html), however its documentation is basically non-existent, and playing with it it seems to return every transaction (and not transactions related to a specific asset)
nasht00 (Mon, 23 Oct 2017 15:04:39 GMT):
I found another more detailed doc: https://hyperledger.github.io/composer/business-network/historian.html
But still no reference to assets.
Jakeeyturner (Mon, 23 Oct 2017 18:22:51 GMT):
@nasht00 In that second link, take a look at the 'System transactions' section to understand what system transactions are (basically they get submitted when you create/update/delete an asset, etc). Then have a look at the 'Querying the Historian' section. That should help you to retrieve the history of an asset (via querying the AddAsset system transaction type and perhaps an asset identifier)
BrianOtieno (Mon, 23 Oct 2017 19:01:51 GMT):
Hi guys, I would like to deploy a hyperledger fabric network in the cloud. However, I am wondering how much processing power and memory will I need to set aside for this project. I just want to create a network that a team of 4 can work on over time. Your help will be highly appreciated.
Willkopp (Mon, 23 Oct 2017 19:13:45 GMT):
@BrianOtieno double posts never bring love :)
BrianOtieno (Mon, 23 Oct 2017 19:26:51 GMT):
@Willkopp Sorry for that, but I have been trying in vain to get a response from last week
BrianOtieno (Mon, 23 Oct 2017 19:27:50 GMT):
Or maybe point me to a resource that could help me understand how to go about it
LarissaAuberger (Mon, 23 Oct 2017 19:33:29 GMT):
@biksen , I just ran into the same issue. I started getting this issue after I configured mongodb following the steps in https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html. Before applying these steps, REST server in "hyperledger/composer-rest-server" docker image was fine. I actually see this as a WARNING:
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
0|composer | Discovering types from business network definition ...
0|composer | D1023 19:25:17.687182644 17 env_linux.c:66] Warning: insecure environment read function 'getenv' used
LarissaAuberger (Mon, 23 Oct 2017 19:33:44 GMT):
Any hint on how to troubleshoot this, is highly appreciated
LarissaAuberger (Mon, 23 Oct 2017 19:34:58 GMT):
BTW: This is the only message I see in the log, but the REST server on http://localhost:3000/explorer can't be reached.
Jakeeyturner (Mon, 23 Oct 2017 19:53:44 GMT):
@BrianOtieno Did you want to develop using Hyperledger Composer or directly with Hyperledger Fabric?
glotov (Mon, 23 Oct 2017 20:55:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tBKQHBxsjq5aJeApk) I tried to use `tlsca/` keys as in your crypto-config, but that did not help, still have the error: `Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]`. On fabric-ca channel, there was a discussion that current Fabric's _cryptogen_ does not generate correct tls carts and this is fixed starting version 1.1 (in future). But how did you avoid the error now?
glotov (Mon, 23 Oct 2017 20:55:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tBKQHBxsjq5aJeApk) I tried to use `tlsca/` keys as in your crypto-config, but that did not help, still have the error: `Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]`. On fabric-ca channel, there was a [discussion](https://chat.hyperledger.org/channel/fabric-ca?msg=CGWfmPpMFEaKtb6eB) that current Fabric's _cryptogen_ does not generate correct tls carts and this is fixed starting version 1.1 (in future). But how did you avoid the error now?
glotov (Mon, 23 Oct 2017 20:55:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tBKQHBxsjq5aJeApk) I tried to use `tlsca/` keys as in your crypto-config, but that did not help, still have the error: `Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]`. On fabric-ca channel, there was a [discussion](https://chat.hyperledger.org/channel/fabric-ca?msg=Yyu6m6aBsKosuvAks) that current Fabric's _cryptogen_ does not generate correct tls carts and this is fixed starting version 1.1 (in future). But how did you avoid the error now?
glotov (Mon, 23 Oct 2017 20:55:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tBKQHBxsjq5aJeApk) I tried to use `tlsca/` keys as in your crypto-config, but that did not help, still have the error: `Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]`. On fabric-ca channel, there was a [discussion](https://chat.hyperledger.org/channel/fabric-ca?msg=Yyu6m6aBsKosuvAks) that current Fabric's _cryptogen_ does not generate correct tls carts and this is fixed starting version 1.1 (in future). @davidkel, how did you avoid the error now?
conroydave (Tue, 24 Oct 2017 00:26:37 GMT):
hello team
conroydave (Tue, 24 Oct 2017 00:30:35 GMT):
had a question about this script , in the composer sample applications , vehicle life cycle demo
conroydave (Tue, 24 Oct 2017 00:30:37 GMT):
https://github.com/hyperledger/composer-sample-applications/blob/master/packages/vehicle-lifecycle/installers/hlfv1/install.sh.in
conroydave (Tue, 24 Oct 2017 00:30:51 GMT):
this script creates an install.sh script with a large payload at the end
conroydave (Tue, 24 Oct 2017 00:31:05 GMT):
it appears to be precompiled but in a text script
conroydave (Tue, 24 Oct 2017 00:31:12 GMT):
without much explanation of what the payload is
lclclc (Tue, 24 Oct 2017 03:43:31 GMT):
I have a general question about composer.
lclclc (Tue, 24 Oct 2017 03:43:58 GMT):
Can composer send http request to other service outside the blockchain?
lclclc (Tue, 24 Oct 2017 03:44:30 GMT):
can the transaction function work like a normal nodejs function, communicate with outside world?
lclclc (Tue, 24 Oct 2017 03:44:46 GMT):
I didn't see Yes or no from document.
lclclc (Tue, 24 Oct 2017 03:45:03 GMT):
Is the composer application running in a special sandbox?
biksen (Tue, 24 Oct 2017 05:34:59 GMT):
@LarissaAuberger still stuck with the error :( No solution yet.
geoms (Tue, 24 Oct 2017 05:45:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Gr2Tjw9jk9yP3QzjM) @LarissaAuberger Looks like this is very initial logs from 'rest' docker container. What happened in my case was, soon after I do 'docker logs rest' to get the 'rest' container logs, I was not getting any logs. I tried again after some more time, then I started getting whole logs. So try extracting the logs in multiple tries. Then you should be able to figure out what exactly went wrong in REST server.
biksen (Tue, 24 Oct 2017 05:47:27 GMT):
@geoms I tried multiple times and wait for some hours but same error getting repeated :(
biksen (Tue, 24 Oct 2017 05:50:19 GMT):
As I can see "rest" docker container logs after checking multiple times and even after few hours but the same error getting repeated
BrianOtieno (Tue, 24 Oct 2017 06:20:13 GMT):
@Jakeeyturner I wanted to develop it using Hyperledger Composer, because it will simplify my development life. Though I am open to any other considerations - that decision is not cast in stone. Thanks for asking - looking forward to your response
nasht00 (Tue, 24 Oct 2017 07:10:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=NPyQnPEGeRtTtgW7r) @Jakeeyturner
I read that, however:
- I'm interested in any transaction that touched my asset
- Even with AddAsset alone, there is no reference to the asset identifier in model for HistorianRecord
- Unless this has changed, Query does not yet support complex queries that check relationships (JOIN).
nasht00 (Tue, 24 Oct 2017 07:26:52 GMT):
I wish there was a way to easily play with queries by the way, in the playground for example ...
erNail (Tue, 24 Oct 2017 07:33:16 GMT):
@nasht00 I think you can use the generated REST-API for that. But yes, it would be a neat feature to have in the playground.
nasht00 (Tue, 24 Oct 2017 08:14:37 GMT):
In the nodejs SDK, when I get a Resource object or array of resources, if I try to print it or send it over the network I get "Error: Use Serializer.toJSON to convert resource instances to JSON objects.".
I could not find such a serializer in the node sdk
Jakeeyturner (Tue, 24 Oct 2017 08:22:09 GMT):
@BrianOtieno Assuming that one person models your business network, you can achieve that using Composer Playground. Although if several people are developing the models & tx processor functions, you might want to use some source control. When you want to deploy your business network archive onto a Hyperledger Fabric instance, I believe you only need a minimum of 4GB RAM (although more is always better!).
nasht00 (Tue, 24 Oct 2017 08:25:59 GMT):
Nevermind I got it workinglike this: `businessNetworkConnection.getBusinessNetwork().getSerializer()`
Jakeeyturner (Tue, 24 Oct 2017 08:26:09 GMT):
@nasht00 Assuming your asset is touched, I'm assuming a property on it will have updated? So a UpdateAsset system transaction will appear in your historian records. In a HistorianRecord, there's a field called 'transactionInvoked'. I believe that contains the transaction that has been submitted, so hopefully that will have your asset in there.
nasht00 (Tue, 24 Oct 2017 08:28:19 GMT):
@Jakeeyturner it includes a relationship to the transaction. Which brings back to my point:
- Unless this has changed, Query does not yet support complex queries that check relationships (JOIN).
is that still true? Or can my historian query do something like `WHERE transactionInvoked.assetId = something` ?
nasht00 (Tue, 24 Oct 2017 08:28:32 GMT):
Last time I checked it could not
nasht00 (Tue, 24 Oct 2017 08:30:20 GMT):
Also, I am looking now, it has no records of transactions such as UpdateAsset or even CreateAsset. It only show my custom transactions (which created or updated the asset)
nasht00 (Tue, 24 Oct 2017 08:30:20 GMT):
Also, I am looking now, it has no records of transactions such as UpdateAsset or even CreateAsset. It only shows my custom transactions (which created or updated the asset)
Jakeeyturner (Tue, 24 Oct 2017 08:30:44 GMT):
I'm not sure, I haven't done much with queries. Hopefully someone else will know!
nasht00 (Tue, 24 Oct 2017 08:32:00 GMT):
This is why I wish there was a Query playground, playing with queries is cumbersome ...
Jakeeyturner (Tue, 24 Oct 2017 08:34:11 GMT):
I assume it's on the list of things to do, as a query builder inside playground would be really powerful.
Jakeeyturner (Tue, 24 Oct 2017 08:35:06 GMT):
I'm not sure, but maybe your ACL rules need to allow system transaction access or something?
Jakeeyturner (Tue, 24 Oct 2017 08:35:48 GMT):
Hopefully someone with more knowledge of system transactions & the historian can help!
nasht00 (Tue, 24 Oct 2017 08:37:59 GMT):
No I think it makes sense that there are no `CreateAsset` transactions. I assume that when an asset is created or updated by a custom transaction, that's the only transaction that happens.
`CreateAsset` I expect gets called only if you create an asset outside of chaincode.
asaningmaxchain (Tue, 24 Oct 2017 09:10:40 GMT):
@sstone1 i meet a question when i use the `composer network deploy ` cmd
asaningmaxchain (Tue, 24 Oct 2017 09:11:10 GMT):
Error: Error trying deploy. Error: Error trying install composer runtime. Error: Connect Failed
asaningmaxchain (Tue, 24 Oct 2017 09:11:26 GMT):
```Error: Error trying deploy. Error: Error trying install composer runtime. Error: Connect Failed```
asaningmaxchain (Tue, 24 Oct 2017 09:11:39 GMT):
how can i fix it up
erNail (Tue, 24 Oct 2017 09:48:33 GMT):
@asaningmaxchain Do you have a fabric chain running ? Are you trying to follow the tutorial ?
asaningmaxchain (Tue, 24 Oct 2017 09:49:02 GMT):
yes i follow the https://hyperledger.github.io/composer/tutorials/developer-guide.html
asaningmaxchain (Tue, 24 Oct 2017 09:49:43 GMT):
i use the `composer.sh ` to create the fabric network
asaningmaxchain (Tue, 24 Oct 2017 09:49:43 GMT):
i use the `composer.sh ` to create the fabric network,and i use the browser to test
asaningmaxchain (Tue, 24 Oct 2017 09:50:26 GMT):
it's ok and then i use the command to deploy the bna
erNail (Tue, 24 Oct 2017 09:51:31 GMT):
@asaningmaxchain Where do you get the `composer.sh` ? It's not in the fabric-tools as far as i know.
LarissaAuberger (Tue, 24 Oct 2017 09:51:40 GMT):
@sstone1 Hi Simon, I create an image from hyperledger/composer-rest-server and then create a container from this image using "docker run" with required parameters -> REST Server works fine. But by just adding the datasource and running docker run with the -e COMPOSER_DATASOURCES option leads to " Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)". (All other parameters in docker run remain unchanged) Why does adding the datasource lead to this issue?
asaningmaxchain (Tue, 24 Oct 2017 09:52:04 GMT):
`curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash`
erNail (Tue, 24 Oct 2017 09:55:40 GMT):
@asaningmaxchain You have to start the chain in a different way. At the moment the connection is probably not working because you are using a wrong connection.json, but even with the right one it would not work. The issue is mentioned here: https://github.com/hyperledger/composer/issues/2438.
To use `composer network deploy` you have to start the chain using the `./startFabric.sh` script. See here at the end: https://hyperledger.github.io/composer/installing/development-tools.html
asaningmaxchain (Tue, 24 Oct 2017 09:57:01 GMT):
@erNail are you sure
asaningmaxchain (Tue, 24 Oct 2017 09:57:01 GMT):
?
erNail (Tue, 24 Oct 2017 09:58:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yX2PiLHMNrfSQGSZF) @sstone1 @davidkel I think it would be a good idea to mention both ways to start the playground in the documentation, and also to note that it's not possible to use command line commands when starting the playground and the chain with `curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash`.
erNail (Tue, 24 Oct 2017 09:58:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yX2PiLHMNrfSQGSZF) @sstone1 @davidkel I think it would be a good idea to mention both ways to start the playground in the documentation, and also to note that it's not possible to use command line commands when starting the playground and the chain with `curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash`.
[ ](https://chat.hyperledger.org/channel/composer?msg=gBkmdCja2RK9QSxhq)
erNail (Tue, 24 Oct 2017 09:59:56 GMT):
@asaningmaxchain Read the first answer of the GitHub Issue. I've tried it the same way.
asaningmaxchain (Tue, 24 Oct 2017 10:01:30 GMT):
@erNail it still has error
asaningmaxchain (Tue, 24 Oct 2017 10:01:32 GMT):
`✖ Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying install composer runtime. Error: Connect Failed
Command failed
`
asaningmaxchain (Tue, 24 Oct 2017 10:01:32 GMT):
```✖ Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying install composer runtime. Error: Connect Failed
Command failed
```
erNail (Tue, 24 Oct 2017 10:15:49 GMT):
@asaningmaxchain Please post the complete command and your `connection.json`
asaningmaxchain (Tue, 24 Oct 2017 10:18:28 GMT):
```{
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://localhost:7050" }
],
"ca": { "url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/root/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}
```
lclclc (Tue, 24 Oct 2017 10:24:52 GMT):
I doubt that whether your network is up and functional.
erNail (Tue, 24 Oct 2017 10:32:06 GMT):
@asaningmaxchain What's the complete command you are using to deploy ?
erNail (Tue, 24 Oct 2017 10:32:38 GMT):
@asaningmaxchain And what is the output of `docker ps` ?
asaningmaxchain (Tue, 24 Oct 2017 10:33:17 GMT):
```composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString -A admin -S```
asaningmaxchain (Tue, 24 Oct 2017 10:34:25 GMT):
```CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
18b5a1e54c9d hyperledger/fabric-peer:x86_64-1.0.1 "peer node start -..." 14 minutes ago Up 14 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
5dfc84b9c1e6 hyperledger/fabric-ca:x86_64-1.0.1 "sh -c 'fabric-ca-..." 14 minutes ago Up 14 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
e6c17d18f156 hyperledger/fabric-orderer:x86_64-1.0.1 "orderer" 14 minutes ago Up 14 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
8f8197457d9e hyperledger/fabric-couchdb:x86_64-1.0.1 "tini -- /docker-e..." 14 minutes ago Up 14 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
```
czar0 (Tue, 24 Oct 2017 10:35:32 GMT):
Hi all, I moved from Composer 0.13.0 to Composer 0.14.1 and I followed the instructions to finally manage to deploy again the BNA. I imported the identity of the `admin` user first (with his own certificate), created the BNA and deployed with the new `-A admin -S` params, as it follows:
```
composer identity import -u admin \
-p defaultProfile -c /admin-crypto/signcerts/Admin@org1.example.com-cert.pem \
-k /admin-crypto/keystore/`ls /admin-crypto/keystore`
composer archive create -t dir -n bna -a network.bna
composer network deploy -a network.bna -i admin -s v -p defaultProfile -A admin -S
composer network ping -i admin -s adminpw -p defaultProfile -n network
```
The deployment works fine as much as for importing the `admin` identity, although I receive the following error on pinging the network as `admin` user:
```
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: Admin@org1.example.com)
```
Using the `composer-client` I receive a similar error, but the mentioned identity here is `admin` and not `Admin@org1.example.com`.
```
server_1 | Failed to connect. Error: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
server_1 | at _checkRuntimeVersions.then.catch (/usr/src/app/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:663:34)
```
Could you explain which are the right steps to register an `admin` user through CLI (using an existing certificate) and to make it available to issue other identities?
Thanks
erNail (Tue, 24 Oct 2017 10:35:52 GMT):
@asaningmaxchain Can't see the error so far. Did you start the chain with the fabric-tools ?
asaningmaxchain (Tue, 24 Oct 2017 10:36:03 GMT):
yes
Willkopp (Tue, 24 Oct 2017 10:36:21 GMT):
`yo hyperledger-composer:cli`then `npm install` fails with `ERROR: manifest for hyperledger/fabric-peer:latest not found`
erNail (Tue, 24 Oct 2017 10:40:15 GMT):
@asaningmaxchain Sorry, can't see the error. If you did everything in the same way as the developer guide tells you, it should work.
biksen (Tue, 24 Oct 2017 10:43:24 GMT):
@LarissaAuberger Can you please suggest how to overcome the error you have mentioned earlier with "hyperledger/composer-rest-server" and then create a container from this image using "docker run" as I am facing the same issue? Appreciate! your help or any suggestion.
nickyromeijn (Tue, 24 Oct 2017 10:47:48 GMT):
Hello could someone tell me why i am able to retrieve a list of all participants of type X when i'm authenticated as Participant X on the rest server? How would i define an ACL rule which makes it so that only i can see the participant i identify as on the network and not everyone else?
nasht00 (Tue, 24 Oct 2017 11:07:50 GMT):
@nickyromeijn
I would do something like:
```
rule ParticipantCanOnlySeeHimself {
description: "I can only see myself"
participant(p): "my.Participant"
operation: READ, UPDATE
resource(r): "my.Participant"
condition: (r.getIdentifier() == p.getIdentifier())
action: ALLOW
}
```
Although in most cases I think you expect to see other participants in the network, in other to transact with them ...
nickyromeijn (Tue, 24 Oct 2017 11:08:22 GMT):
Yeah certain types of participants but not all :)
nasht00 (Tue, 24 Oct 2017 11:08:27 GMT):
Right
nickyromeijn (Tue, 24 Oct 2017 11:08:27 GMT):
@nasht00 Thanks though!
nasht00 (Tue, 24 Oct 2017 11:08:40 GMT):
Make sure you don't have some other ACL rule that opens up to everyone
nickyromeijn (Tue, 24 Oct 2017 11:09:06 GMT):
basically i deny everything by default and only open up assets / participants by allow rules
nasht00 (Tue, 24 Oct 2017 11:09:39 GMT):
That's good, although it begs the question then, how were you able to see partipants if you deny by default ...
nickyromeijn (Tue, 24 Oct 2017 11:10:01 GMT):
Fair enough haha it might need some revision
nasht00 (Tue, 24 Oct 2017 11:10:01 GMT):
I use the same technique as yours, and before I added this rule, I was not able to see any participants
nasht00 (Tue, 24 Oct 2017 11:12:31 GMT):
Now my turn, anyone familiar with TransactionRegistry?
My historian shows: ` "transactionInvoked": "resource:vbc.signProposal#4708b0bc2e977c5927f4c0ae85a62f8f854dc9ffd888918bb65840bcf50ccd83",`
I wanted to get more information about this specific transaction to I used the TransactionRegistry to get this ID, I I get:
`Object with ID '4708b0bc2e977c5927f4c0ae85a62f8f854dc9ffd888918bb65840bcf50ccd83' in collection with ID 'Transaction:vbc.submitContractProposal' does not exist)`
The IDs are the same. Did I misunderstand what TransactionRegistry is for?
nasht00 (Tue, 24 Oct 2017 11:12:31 GMT):
Now my turn, anyone familiar with TransactionRegistry?
My historian shows: ` "transactionInvoked": "resource:vbc.signProposal#4708b0bc2e977c5927f4c0ae85a62f8f854dc9ffd888918bb65840bcf50ccd83",`
I wanted to get more information about this specific transaction so I used the TransactionRegistry to get this ID, I I get:
`Object with ID '4708b0bc2e977c5927f4c0ae85a62f8f854dc9ffd888918bb65840bcf50ccd83' in collection with ID 'Transaction:vbc.submitContractProposal' does not exist)`
The IDs are the same. Did I misunderstand what TransactionRegistry is for?
geoms (Tue, 24 Oct 2017 11:15:10 GMT):
@biksen, @LarissaAuberger I had same issue earlier. I followed below method to resolve it.
Step 1: I used 'admin' identity to add a participan(typ of NetworkAdmin) (ex. composeradmin)
composer participant add -p hlfv1 -i admin -s f -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"composeradmin"}' -n my-network
Step 2: Issued an identity with 'admin' identity to 'composeradmin'
Step 3: Used 'composeradmin' enrollment id and secret in composer rest server to start(docker run)
geoms (Tue, 24 Oct 2017 11:15:36 GMT):
Looks like some identity race is happening for 'admin' id
geoms (Tue, 24 Oct 2017 11:16:03 GMT):
@sstone1 , Please advice, is this a right method
nickyromeijn (Tue, 24 Oct 2017 11:22:28 GMT):
@nasht00 You using the restserver as well?
fake-or-dead (Tue, 24 Oct 2017 11:22:43 GMT):
Has joined the channel.
glotov (Tue, 24 Oct 2017 11:26:41 GMT):
I keep getting error `The current identity has not been registered:
admin` when running _composer_rest_server_ for my *2nd org*. For 1st org things are OK. Before running rest servers, I run ```composer network deploy -a ../dist/my-network.bna -p mainorg -i MainPeerAdmin -s randomString -A admin -S
composer network deploy -a ../dist/my-network.bna -p org2 -i Org2PeerAdmin -s randomString -A admin -S
```
glotov (Tue, 24 Oct 2017 11:26:41 GMT):
I keep getting error `The current identity has not been registered:
admin` when running _composer_rest_server_ for my *2nd org*. For 1st org things are OK. Before running rest servers, I run ```composer network deploy -a ../dist/my-network.bna -p mainorg -i MainPeerAdmin -s randomString -A admin -S
composer network deploy -a ../dist/my-network.bna -p org2 -i Org2PeerAdmin -s randomString -A admin -S
```
glotov (Tue, 24 Oct 2017 11:26:41 GMT):
I keep getting error `The current identity has not been registered: admin` when running _composer_rest_server_ for my *2nd org*. For 1st org things are OK. Before running rest servers, I run ```composer network deploy -a ../dist/my-network.bna -p mainorg -i MainPeerAdmin -s randomString -A admin -S
composer network deploy -a ../dist/my-network.bna -p org2 -i Org2PeerAdmin -s randomString -A admin -S
```
glotov (Tue, 24 Oct 2017 11:26:41 GMT):
I keep getting error `The current identity has not been registered: admin` when running __composer_rest_server__ for my *2nd org*. For 1st org things are OK. Before running rest servers, I run ```composer network deploy -a ../dist/my-network.bna -p mainorg -i MainPeerAdmin -s randomString -A admin -S
composer network deploy -a ../dist/my-network.bna -p org2 -i Org2PeerAdmin -s randomString -A admin -S
```
nasht00 (Tue, 24 Oct 2017 11:27:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CCkh78uyt2HJ59kop) @nickyromeijn
No
nickyromeijn (Tue, 24 Oct 2017 11:30:14 GMT):
@glotov you need to generate a new admin identity; the enrollmentId and secret for admin have been consumed by the first org
nickyromeijn (Tue, 24 Oct 2017 11:30:20 GMT):
I had the same issue
glotov (Tue, 24 Oct 2017 11:33:15 GMT):
@nickyromeijn, thanks, with `composer participant add`?
kiranarshakota (Tue, 24 Oct 2017 11:35:49 GMT):
Has joined the channel.
kiranarshakota (Tue, 24 Oct 2017 11:36:40 GMT):
Can you let me know the steps for deploying a BNA file in my custom fabric setup
kiranarshakota (Tue, 24 Oct 2017 11:37:02 GMT):
i am trying to deploy the bna file into a remote system
nickyromeijn (Tue, 24 Oct 2017 11:37:57 GMT):
@glotov yep
nickyromeijn (Tue, 24 Oct 2017 11:38:33 GMT):
`composer participant add -p hlfv1 -i admin -s adminpw -d '{\"$class\":\"org.hyperledger.composer.system.NetworkAdmin\", \"participantId\":\"'"+participantId+"'\"}' -n pgb-network`
nickyromeijn (Tue, 24 Oct 2017 11:38:43 GMT):
sorry for the escaping slashes, but something like that :)
nickyromeijn (Tue, 24 Oct 2017 11:39:37 GMT):
could it be that the rest-server does not adhere to the ACL rules of the currently logged in identity? The rest-server itself is booted up with an admin identity but has multi-user enabled
LarissaAuberger (Tue, 24 Oct 2017 11:45:55 GMT):
@biksen, this was a long journey... I still face an issue, but a different one now. I opened an issue that descirbes how I create an image from hyperledger/composer-rest-server and then use docker run to create a new docker container: https://github.com/hyperledger/composer/issues/2455. This doc also describes these steps https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
LarissaAuberger (Tue, 24 Oct 2017 11:49:12 GMT):
@geoms, this looks promising. I could resolve the issue by pointing the keyValStore of my connection profile to the .composer-credentials folder of my business network.
LarissaAuberger (Tue, 24 Oct 2017 11:51:01 GMT):
However, after adding a datasource I again see the issue with "The current identity has not been registered: admin". Not sure how to proceed now...
nickyromeijn (Tue, 24 Oct 2017 11:54:01 GMT):
@LarissaAuberger @glotov I ran into this problem when i used the admin identity in both a docker container (rest-server) and for an app running on my host machine. It was a racecondition for consumation of the admin enrollmentID and secret. It can only be used once to request a certificate from the MSP. If your issue is simmilliar i fixed it by creating another 'admin' identity to manage my webservice
see:
```
`composer participant add -p hlfv1 -i admin -s adminpw -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"participantXXX"}' -n network
```
biksen (Tue, 24 Oct 2017 11:58:21 GMT):
@LarissaAuberger @geoms I hope this will solve my problem :)
Richardpanf (Tue, 24 Oct 2017 12:01:24 GMT):
Has joined the channel.
Richardpanf (Tue, 24 Oct 2017 12:06:02 GMT):
hi,I deploy the composer-playground, but when I add a business network via webbrower ,an error throw
glotov (Tue, 24 Oct 2017 12:24:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eHfyPexemMxmyEAFE) @nickyromeijn but what is the password for _participantXXX` then?
glotov (Tue, 24 Oct 2017 12:24:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eHfyPexemMxmyEAFE) @nickyromeijn but what is the password for _participantXXX_ then?
nickyromeijn (Tue, 24 Oct 2017 12:25:16 GMT):
first you add the participant using composer participant add
nickyromeijn (Tue, 24 Oct 2017 12:25:31 GMT):
after that you use composer identity issue to issue an enrollmentId and secret for the new participant
nickyromeijn (Tue, 24 Oct 2017 12:26:10 GMT):
`composer identity issue -p hlfv1 -n network -i admin -s adminpw -u IDENTITYNAME -a org.hyperledger.composer.system.NetworkAdmin#participantXXX -x false`
nickyromeijn (Tue, 24 Oct 2017 12:26:25 GMT):
if you run that you get a new enrollmentid and secret
glotov (Tue, 24 Oct 2017 12:33:20 GMT):
@nickyromeijn, this works for 1st org, but for the 2nd I get again ```composer participant add -p org2 -i admin -s adminpw -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"adminorg2"}' -n educhain-network
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
Command failed```
glotov (Tue, 24 Oct 2017 12:33:20 GMT):
@nickyromeijn, this works for 1st org, but for the 2nd I get again ```composer participant add -p org2 -i admin -s adminpw -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"adminorg2"}' -n my-network
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
Command failed```
nickyromeijn (Tue, 24 Oct 2017 12:34:21 GMT):
because you can only create identities and participants with an admin
nickyromeijn (Tue, 24 Oct 2017 12:34:46 GMT):
you need to add the participant and run the issue identity command on org1 then you use the enrollmentId and secret on org2
glotov (Tue, 24 Oct 2017 12:35:03 GMT):
ah, let me try that...
nickyromeijn (Tue, 24 Oct 2017 12:35:25 GMT):
Also feel free to let me know where to find a guide to add multiple peers to a network; haven't touched that bit yet
glotov (Tue, 24 Oct 2017 12:39:42 GMT):
looks that I cannot use org1's participant on org2: ```$ ~/bin/composer-rest-server -p org2 -n my-network -i Admin2 -s aZlpfaZsxqMm -N never -w true -P 3002
Discovering types from business network definition ...
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]```
glotov (Tue, 24 Oct 2017 12:39:42 GMT):
@nickyromeijn, looks that I cannot use org1's participant on org2: ```$ ~/bin/composer-rest-server -p org2 -n my-network -i Admin2 -s aZlpfaZsxqMm -N never -w true -P 3002
Discovering types from business network definition ...
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]```
nickyromeijn (Tue, 24 Oct 2017 12:44:08 GMT):
that's weird; you sure they're connected and using the same MSP?
glotov (Tue, 24 Oct 2017 12:46:27 GMT):
@nickyromeijn, yes it works for _mainorg_, where my _admin_ lives, but failes for _org2_. What do you mean "connected and using the same MSP"? My orgs use different MSPs because they are different orgs :)
nickyromeijn (Tue, 24 Oct 2017 12:46:57 GMT):
Then it's me being stupid; i thought you were using the same MSP for both orgs
glotov (Tue, 24 Oct 2017 12:47:28 GMT):
why would you use same MSP? this makes your orgs same
glotov (Tue, 24 Oct 2017 12:47:28 GMT):
@nickyromeijn , why would you use same MSP? this makes your orgs indistinguishable
glotov (Tue, 24 Oct 2017 12:47:28 GMT):
@nickyromeijn , why would you use same MSP? this makes your orgs indistinguishable from Fabric point of view
glotov (Tue, 24 Oct 2017 12:47:28 GMT):
@nickyromeijn , why would you use same MSP? this makes your orgs indistinguishable from Fabric point of view (as I get it)
Richardpanf (Tue, 24 Oct 2017 13:00:14 GMT):
@sstone1 i start the fabric network successfully,and then i use the command `node cli.js` to start the playground in the source code ,and then i open the browser,and then i want to deploy new business network ,it tell me `Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]`
Richardpanf (Tue, 24 Oct 2017 13:01:11 GMT):
i see the ca container log `Authorization: Basic UGVlckFkbWluOk5PVFVTRUQ=
{"caName":"ca.org1.example.com","certificate_request":"-----BEGIN CERTIFICATE REQUEST-----\r\nMIHRMHYCAQAwFDESMBAGA1UEAwwJUGVlckFkbWluMFkwEwYHKoZIzj0CAQYIKoZI\r\nzj0DAQcDQgAEQg9/phc6f0Rz/5nDGLqjy5NyZy+d+kZfncCEmZnJ2uAMQK36Dgx/\r\nOdmesW2p+8Yg2PqtmV3cQSauhn5PL3LDqqAAMAwGCCqGSM49BAMCBQADSQAwRgIh\r\nAOLCHEfU3wPSNEMaYOeAY9/kipvzYge5hPkBBG9e/U9zAiEAt+AARi3J9xJSobtw\r\nt3lpr+8dRmleQtmb8Yy6Nmnzuuc=\r\n-----END CERTIFICATE REQUEST-----\r\n"}
2017/10/24 13:00:02 [DEBUG] Directing traffic to CA ca.org1.example.com
2017/10/24 13:00:02 [DEBUG] DB: Getting identity PeerAdmin
2017/10/24 13:00:02 [DEBUG] Failed to get identity 'PeerAdmin': sql: no rows in result set`
LarissaAuberger (Tue, 24 Oct 2017 13:49:31 GMT):
Was anyone successful with configuring datasource following these instructions: https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html. After adding the datasource I see "Error: The current identity has not been registered: admin" in the container logs " in the rest server container log. As soon as I remove the datasource from the configuration, the rest server works fine again. Do I need to somehow move the identities to the mongodb?
Willkopp (Tue, 24 Oct 2017 14:08:03 GMT):
does this error speaks to someone? `Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: Parse Error]`
ajp (Tue, 24 Oct 2017 15:13:46 GMT):
@Willkopp What are you doing that causes this error?
Willkopp (Tue, 24 Oct 2017 15:14:55 GMT):
`composer network deploy ...`
Willkopp (Tue, 24 Oct 2017 15:23:45 GMT):
I am trying to debug where this bug comes from but someone knowing the code could probably help me save some time
t_stephens67 (Tue, 24 Oct 2017 15:39:32 GMT):
@Willkopp make sure the certificate authority is configured properly and that the username you are using to deploy is enrolled
Willkopp (Tue, 24 Oct 2017 15:40:04 GMT):
I am using the generator that comes with composer. Using the composer shell, I can enroll with login and pwd.
Willkopp (Tue, 24 Oct 2017 15:40:43 GMT):
To help, the log level option seems not to work
rdhallman (Tue, 24 Oct 2017 15:57:36 GMT):
Has joined the channel.
JoshuaRippon (Tue, 24 Oct 2017 15:57:56 GMT):
Hey guys. In my use case, I would like peer to be able to list their assets
JoshuaRippon (Tue, 24 Oct 2017 15:58:16 GMT):
on one connection profile for all too see.
JoshuaRippon (Tue, 24 Oct 2017 15:59:28 GMT):
And then I would like to give peers the ability to create new connection profiles where they can add peers that they would like to do a deal with
JoshuaRippon (Tue, 24 Oct 2017 16:00:21 GMT):
Has anyone had experience in making such a network on composer?
ramyamandava (Tue, 24 Oct 2017 16:50:33 GMT):
Has joined the channel.
BrianOtieno (Tue, 24 Oct 2017 17:29:21 GMT):
@Jakeeyturner Thanks for the RAM size info. What about the processor size. Would the t1.micro offered by AWS do, or I need to go higher?
Jakeeyturner (Tue, 24 Oct 2017 17:36:31 GMT):
@BrianOtieno I'm not sure, sorry.
BrianOtieno (Tue, 24 Oct 2017 17:41:24 GMT):
@Jakeeyturner Thanks anyway, I appreciate. Could I ask you another quick one? For every members that joins the network - do they have to install some sort of client in order to be able to interact with the network - think of it like a user joining the network from a mobile app?
Jakeeyturner (Tue, 24 Oct 2017 17:51:27 GMT):
Well for a mobile app, you'll want to interact with the deployed business network using a REST API
Jakeeyturner (Tue, 24 Oct 2017 17:52:25 GMT):
You might need to set up some kind of authentication. All of the REST API stuff can be found here - https://hyperledger.github.io/composer/integrating/integrating-index.html
BrianOtieno (Tue, 24 Oct 2017 18:00:16 GMT):
@Jakeeyturner Thanks once again
Jakeeyturner (Tue, 24 Oct 2017 18:00:35 GMT):
no problem!
Hefziben (Tue, 24 Oct 2017 19:01:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DdhGYYSdCgaz4C7Yr) @IanSparkes this is what it says:
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
0|composer | Discovering types from business network definition ...
0|composer | D1024 18:57:46.506285075 16 env_linux.c:66] Warning: insecure environment read function 'getenv' used
0|composer | Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
LarissaAuberger (Tue, 24 Oct 2017 19:51:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eYFAtZFLyk2QvkQEG) @Hefziben Same here...
anarancio (Tue, 24 Oct 2017 20:06:04 GMT):
hi guys, quick question anyone knows how to get the service credentials from the new bluemix sandbox cluster?
Hefziben (Tue, 24 Oct 2017 21:00:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qgwRpsMPNjrSoJAk9) @LarissaAuberger I was able to solve by doing this:
update to the latest runtime https://hyperledger.github.io/composer/managing/updating-composer.html
and follwing the instructions from here https://github.com/hyperledger/composer/releases/tag/v0.14.0
go to section Breaking changes and then click on Learn how to deal with this change. hope it helps, let me know if this works for you
Hefziben (Tue, 24 Oct 2017 21:05:15 GMT):
anyone, please help me here. I was able to configure the REST server with a persistent data using mongoDB. now, when I I try to start the angular app I got the error that it could not connect to the rest server. How should I Start the app now that I am using mongodb Database, since "npm star" tries to connect to the regular composer-rest-server?
davidkel (Tue, 24 Oct 2017 21:14:03 GMT):
@LarissaAuberger I raised the following issue https://github.com/hyperledger/composer/issues/2461 for your info
Hefziben (Tue, 24 Oct 2017 21:16:03 GMT):
hi @davidkel could you help me with my new problem?
LarissaAuberger (Tue, 24 Oct 2017 21:17:45 GMT):
@davidkel, thank you!
davidkel (Tue, 24 Oct 2017 21:19:07 GMT):
@Hefziben not sure what you mean by "regular composer-rest-server".
davidkel (Tue, 24 Oct 2017 21:20:17 GMT):
@anarancio suggest you read the bluemix documentation or communicate on the appropriate bluemix channels
Hefziben (Tue, 24 Oct 2017 21:21:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Gp6x9PuEoF5jbzXkT) @davidkel I was using the default Rest
davidkel (Tue, 24 Oct 2017 21:22:10 GMT):
@Hefziben unfortunately that doesn't mean a lot to me. You need to describe what you are doing and what problem you are seeing.
davidkel (Tue, 24 Oct 2017 21:23:56 GMT):
@Hefziben Rocket chat is not great for that sort of thing, so maybe it's worth creating a stackoverflow question where you can describe your scenario, your environment and configurations and the problem you are encountering
davidkel (Tue, 24 Oct 2017 21:23:56 GMT):
The npm start of the application is trying to start an instance of the rest server. If you have it already up and running you can change the package.json of your application to not start the rest server, however it should fail to start anyway because you already have a rest server running on port 3000
Hefziben (Tue, 24 Oct 2017 21:28:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Gp6x9PuEoF5jbzXkT) @davidkel I was using the default Rest server which worked fine, and I Just set the persistent database with mongodb, and the new rest server is running at http://localhost:3000/explorer/. but when go about to run the angular app created with "npm start" it tryes to connect to the default Rest server:
startup-abalazo-app@0.0.1 app /home/node/my-startup/red-abalazo-startup/startup-abalazo-app
[1] > composer-rest-server -n red-abalazo-startup -p hlfv1 -i admin -s adminpw -N never -P 3000
onnection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
[1] It will be retried for the next request.
[1] Exception: Error: Error trying to ping. Error: Error trying to query business network. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
[1] Error: Error trying to ping. Error: Error trying to query business network. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
[1] at _checkRuntimeVersions.then.catch (/home/node/my-startup/red-abalazo-startup/startup-abalazo-app/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:668:34)
davidkel (Tue, 24 Oct 2017 21:33:45 GMT):
@Hefziben The npm start of the application is trying to start an instance of the rest server. If you have it already up and running you can change the package.json of your application to not start the rest server, however it should fail to start anyway because you already have a rest server running on port 3000
davidkel (Tue, 24 Oct 2017 22:01:19 GMT):
@Hefziben regarding the error messages you posted, the message `Failed to execute transaction (Timeout expired while executing transaction)` is a message from hyperledger fabric itself, so as part of the npm start something has contacted the running fabric, but it the ping for some reason has taken longer than the time fabric allows for an interaction to take place. Not sure why you would get that on a simple ping request.
gregorypro (Wed, 25 Oct 2017 04:02:14 GMT):
How do I find any info on Indy? the site says "Coming soon..." How soon? Is there code to look at? Anything?
kapilaArora (Wed, 25 Oct 2017 06:11:16 GMT):
Has joined the channel.
argman (Wed, 25 Oct 2017 07:03:23 GMT):
Hello! I would like to ask question about composer-rest-server. Haw can I config my rest-server?
argman (Wed, 25 Oct 2017 07:03:54 GMT):
How*
IanSparkes (Wed, 25 Oct 2017 07:09:17 GMT):
```Failed to execute transaction (Timeout expired while executing transaction)``` we had this, and localised it to the Composer BNA file just being too big. We trimmed out some of the functionality, and it worked again. We noticed that the chaincode containers even for fairly simple networks becomes HUGE. I'm guessing that we are running into some size (or performance) limitation on our fairly weak development environment.
davidkel (Wed, 25 Oct 2017 07:32:31 GMT):
@IanSparkes Fabric has a transaction timeout and the default is 30 seconds. You can change this value.
The timeout is a fabric timeout as opposed to a composer timeout, there's no way to control it dynamically. If you are launching your peer through Docker Compose then you can set the timeout in your Docker Compose file, for example to set the transaction timeout to 90 seconds you add an entry for `CORE_CHAINCODE_EXECUTETIMEOUT=90s` Here is how you would add that to the compose file
```
peer0.org1.example.com:
container_name: peer0.org1.example.com
image: hyperledger/fabric-peer:x86_64-1.0.1
environment:
- CORE_CHAINCODE_EXECUTETIMEOUT=90s
- CORE_LOGGING_PEER=debug
- CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
- CORE_PEER_ID=peer0.org1.example.com
...
```
IanSparkes (Wed, 25 Oct 2017 08:30:37 GMT):
@davidkel thanks for that!
Emmy (Wed, 25 Oct 2017 08:36:38 GMT):
Has joined the channel.
Emmy (Wed, 25 Oct 2017 08:36:51 GMT):
Hello,
I am new on this channel, and I need some help.
i am working with hyperledger composer and when i send out an transaction test I am receiving this error message, Error: Object with ID 'assetID:0138' in collection with ID 'Asset:org.acme.mynetwork.Sensor' does not exist can you help me?
nickyromeijn (Wed, 25 Oct 2017 08:37:01 GMT):
Would it be possible to create assets from within a transaction? For example i have a transaction where a person can create a contract and a transaction which assigns the contract to a person; What i want to do is create the contract within the transaction to prevent multiple http requests to the rest-server.
`transaction CreateContract
-->Person p
--> Contract c
`
is it possible to supply the transaction with a contract before it exists on the chain? eg a string representation of the contract instead of a reference to an existing one on the chain? Or would i have to turn the contract attribute a string and use a json string?
nickyromeijn (Wed, 25 Oct 2017 08:37:01 GMT):
Would it be possible to create assets from within a transaction? For example i have a transaction where a person can create a contract and a transaction which assigns the contract to a person; What i want to do is create the contract within the transaction to prevent multiple http requests to the rest-server.
```transaction CreateContract
-->Person p
--> Contract c```
is it possible to supply the transaction with a contract before it exists on the chain? eg a string representation of the contract instead of a reference to an existing one on the chain? Or would i have to turn the contract attribute a string and use a json string?
Ryzum (Wed, 25 Oct 2017 09:29:45 GMT):
Hi I'm also new on this channel and my question is related to @nickyromeijn's question. To answer his question I managed with this code :
```js
var factory = getFactory();
var NS = 'net.nus.com.cs6203';
var asset = factory.newResource(NS, 'BuyProposition', 'id');
```
My question is the following : Is it possible to automatically generate a new ID that is not in use as the third parameter ?
Ryzum (Wed, 25 Oct 2017 09:29:45 GMT):
Hi I'm also new on this channel and my question is related to @nickyromeijn's question. To answer his question I managed with this code :
```var factory = getFactory();
var NS = 'net.nus.com.cs6203';
var asset = factory.newResource(NS, 'BuyProposition', 'id');
```
My question is the following : Is it possible to automatically generate a new ID that is not in use as the third parameter ?
Ryzum (Wed, 25 Oct 2017 09:29:45 GMT):
Hi I'm also new on this channel and my question is related to @nickyromeijn's question. To answer his question I managed with this code :
```
var factory = getFactory();
var NS = 'net.nus.com.cs6203';
var asset = factory.newResource(NS, 'BuyProposition', 'id');
```
My question is the following : Is it possible to automatically generate a new ID that is not in use as the third parameter ?
Ryzum (Wed, 25 Oct 2017 09:29:45 GMT):
Hi I'm also new on this channel and my question is related to @nickyromeijn's question. To answer his question I managed with this code :
``` var factory = getFactory();
var NS = 'net.nus.com.cs6203';
var asset = factory.newResource(NS, 'BuyProposition', 'id');
```
My question is the following : Is it possible to automatically generate a new ID that is not in use as the third parameter ?
Ryzum (Wed, 25 Oct 2017 09:29:45 GMT):
Hi I'm also new on this channel and my question is related to @nickyromeijn's question. To answer his question I managed with this code :
``` var factory = getFactory();
var NS = 'net.nus.com.cs6203';
var asset = factory.newResource(NS, 'BuyProposition', 'id');
```
My question is the following : Is it possible to automatically generate a new ID that is not in use as the third parameter ?
Ryzum (Wed, 25 Oct 2017 09:29:45 GMT):
Hi I'm also new on this channel and my question is related to @nickyromeijn's question. To answer his question I managed with this code :
``` var factory = getFactory();
var NS = 'net.nus.com.cs6203';
var asset = factory.newResource(NS, 'BuyProposition', 'id');
```
My question is the following : Is it possible to automatically generate a new ID that is not in use as the third parameter ?
Ryzum (Wed, 25 Oct 2017 09:29:45 GMT):
Hi I'm also new on this channel and my question is related to @nickyromeijn's question. To answer his question I managed with this code :
``` var factory = getFactory();
var NS = 'net.nus.com.cs6203';
var asset = factory.newResource(NS, 'MyAsset', 'id');
```
My question is the following : Is it possible to automatically generate a new ID that is not in use as the third parameter ?
gut (Wed, 25 Oct 2017 09:41:10 GMT):
Has joined the channel.
gut (Wed, 25 Oct 2017 09:50:12 GMT):
Hi @Emmy,
It could simply be that you didin't create the Sensor with that Id. Or that the object you're receiving is not of type Sensor (and then is undefined).
Maybe a more detailed information about your Model and what are you trying to do would help.
You could also try a little debug via alerts.
gut (Wed, 25 Oct 2017 09:53:29 GMT):
@Ryzum, would an UUID help you? Or do you need something like an attribute verification?
geek07 (Wed, 25 Oct 2017 09:54:13 GMT):
Has joined the channel.
Emmy (Wed, 25 Oct 2017 10:00:10 GMT):
@gut this is my model: namespace org.acme.mynetwork
asset Sensor identified by assetID {
o String assetID
o String Frequency
o String longitude
o String latutide
o String name
--> Spectrum range
}
participant Spectrum identified by SpectrumId {
o String SpectrumId
o String Spectrumval
}
transaction SpectrumChange {
--> Sensor sensor
--> Spectrum newrange
}
Emmy (Wed, 25 Oct 2017 10:00:30 GMT):
and this is My sample.js file contains:
/**
* Track the trade of a commodity from one trader to another
* @param {org.acme.mynetwork.SpectrumChange} Change - the spectrum to be processed
* @transaction
*/
function Spectrumupdate(spectrumChange) {
spectrumChange.sensor.range = spectrumChange.newrange;
return getAssetRegistry('org.acme.mynetwork.Sensor')
.then(function (assetRegistry) {
return assetRegistry.update(spectrumChange.sensor);
});
}
Emmy (Wed, 25 Oct 2017 10:01:05 GMT):
@gut I am new in this so i have no idea what is happening
Emmy (Wed, 25 Oct 2017 10:02:21 GMT):
The thing is this was working few days back but I have no idea why now it is working while I have created the id of the asset in test
geek07 (Wed, 25 Oct 2017 10:43:00 GMT):
where do I define an asset in composer
argman (Wed, 25 Oct 2017 10:49:42 GMT):
Hello, I'm trying to enable cors at composer-rest-server. So, can you tell me where should I add responce for OPTION request?
biksen (Wed, 25 Oct 2017 11:00:26 GMT):
@LarissaAuberger I was going through your steps but didn't understand "-v" option..https://github.com/hyperledger/composer/issues/2455
biksen (Wed, 25 Oct 2017 11:02:09 GMT):
I followed @geoms suggestion but no luck :(
benjaminverhaegen (Wed, 25 Oct 2017 11:04:23 GMT):
Hi, i want to change some code in the html from the vehicle lifecycle demo. But when i run the command : 'cat installers/hlfv1/install.sh I bash' it keeps pulling the dockerfile and my changes aren't visible. How can i change this?
Jakeeyturner (Wed, 25 Oct 2017 11:16:15 GMT):
@benjaminverhaegen You probably want to edit the code in each of the vehicle-lifecycle-* packages here: https://github.com/hyperledger/composer-sample-applications/tree/master/packages
Jakeeyturner (Wed, 25 Oct 2017 11:16:37 GMT):
Then you can start each one by running `npm start` inside their directories
benjaminverhaegen (Wed, 25 Oct 2017 11:18:28 GMT):
@Jakeeyturner when executing npm start at the vehicle-lifecycle-vda directory i get following error message: Error connect ECONNREFUSED 127.0.0.1:1880
Jakeeyturner (Wed, 25 Oct 2017 11:21:24 GMT):
So it's trying to connect to a NodeRED instance on that port
Jakeeyturner (Wed, 25 Oct 2017 11:23:37 GMT):
If you were to install NodeRED, install the Hyperledger Composer node (https://www.npmjs.com/package/node-red-contrib-hyperledger-composer) then import the data flow found here (https://github.com/hyperledger/composer-sample-applications/blob/master/packages/vehicle-lifecycle/installers/hlfv1/flows.json) then I think it should work for you
kapilaArora (Wed, 25 Oct 2017 11:24:23 GMT):
Hi Composer Team, We have host our model on hyperledger fabric 1.0 and generated REST API using composer rest server 0.14.1 using admin credential only . But if i am trying to invoke any get url of any asset or query , i am getting one big html page . it talks about access token to provide in query string or http header. Can you please suggest on this one ?
benjaminverhaegen (Wed, 25 Oct 2017 11:39:36 GMT):
@Jakeeyturner done that, still same error mesage
Jakeeyturner (Wed, 25 Oct 2017 11:40:57 GMT):
Is NodeRED definitely running? Can you go to your browser and access localhost:1880?
gut (Wed, 25 Oct 2017 11:44:10 GMT):
@Emmy Could you try to change
@param {org.acme.mynetwork.SpectrumChange} *Change* - the spectrum to be processed
by
@param {org.acme.mynetwork.SpectrumChange} *spectrumChange* - the spectrum to be processed
benjaminverhaegen (Wed, 25 Oct 2017 11:44:15 GMT):
@Jakeeyturner i can't go to localhost:1880. How to start manually?
gut (Wed, 25 Oct 2017 11:44:27 GMT):
I think parameter names must be the same as declared
nickyromeijn (Wed, 25 Oct 2017 11:47:02 GMT):
how would one define an ACL rule based on a list of assets in a model? ```--> Model[] models``` models.indexOf(model.getIdentifier()) > -1 does not seem to work
Jakeeyturner (Wed, 25 Oct 2017 11:48:11 GMT):
I think you should be able to start node-red literally by entering the command `node-red` into your terminal
prmdmshra (Wed, 25 Oct 2017 11:49:39 GMT):
Hi Team,
Do we have any CLI to create Mobile/Android App for the deployed network. Any tutorial or sample code may also help.
Jakeeyturner (Wed, 25 Oct 2017 11:52:25 GMT):
@prmdmshra No, although I'm currently creating one as part of a university project
Emmy (Wed, 25 Oct 2017 11:53:00 GMT):
@gut I just tried but I am getting the same error
prmdmshra (Wed, 25 Oct 2017 11:54:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tjCAiF9m5mD5rKzme) @Jakeeyturner
Great! I would be thankful if you could please share the same or assist me in creating one.
benjaminverhaegen (Wed, 25 Oct 2017 12:01:24 GMT):
@Jakeeyturner it's working now, thanks allot!!!!
benjaminverhaegen (Wed, 25 Oct 2017 12:09:50 GMT):
@Jakeeyturner have to take tat one back, after running i show for couple minutes, then my terminal is filled with error messages? "client closed"
benjaminverhaegen (Wed, 25 Oct 2017 12:10:10 GMT):
it show*
Jakeeyturner (Wed, 25 Oct 2017 12:10:37 GMT):
Did you just close your tab in the browser?
benjaminverhaegen (Wed, 25 Oct 2017 12:11:17 GMT):
no, and none of the presetup cars aren't showing
benjaminverhaegen (Wed, 25 Oct 2017 12:14:37 GMT):
it runs for like 2 minutes then automatically gives back errors and crashes
Jakeeyturner (Wed, 25 Oct 2017 12:16:48 GMT):
I'm not sure then. I believe that in the node-red flow, there should be a config node. Check that perhaps? Might be worth creating a detailed stackoverflow issue so that someone can help you debug it
benjaminverhaegen (Wed, 25 Oct 2017 12:18:31 GMT):
ok i'll try that. thanks
angelhb (Wed, 25 Oct 2017 12:30:46 GMT):
Has joined the channel.
angelhb (Wed, 25 Oct 2017 12:30:54 GMT):
We are usingin a customer Composer REST API Server since several weeks a go but suddently the port 31090 appears as closed and is not usable anymore.
We change to other port in yaml config and the port become closed when start the server
joaquimpedrooliveira (Wed, 25 Oct 2017 12:33:27 GMT):
Hi, all! I had a network successfully deploy. After running `composer network undeploy...` and then `composer network deploy...` I get the message `The business network has been undeployed` altough the `deploy` command returns success
joaquimpedrooliveira (Wed, 25 Oct 2017 12:33:27 GMT):
Hi, all! I had a network successfully deployed and running. After running `composer network undeploy...` and then `composer network deploy...` I get the message `The business network has been undeployed` altough the `deploy` command returns success
joaquimpedrooliveira (Wed, 25 Oct 2017 12:33:27 GMT):
Hi, all! I had a network successfully deployed and running. After running `composer network undeploy...` and then `composer network deploy...` I get the message `The business network has been undeployed` although the `deploy` command returns success
joaquimpedrooliveira (Wed, 25 Oct 2017 12:33:31 GMT):
Any tips?
davidkel (Wed, 25 Oct 2017 12:52:13 GMT):
@joaquimpedrooliveira The documentation on undeploy explains this. Once you undeploy, you can't redeploy (as the business network is really still there but made unaccessible).
joaquimpedrooliveira (Wed, 25 Oct 2017 12:53:40 GMT):
@davidkel , thanks for your reply. I haven't read the docs, but a member of my team swore that it worked at his machine :D
joaquimpedrooliveira (Wed, 25 Oct 2017 12:53:50 GMT):
I'll take a look at the docs
joaquimpedrooliveira (Wed, 25 Oct 2017 13:10:09 GMT):
@davidkel , I've read the docs and just want to clarify: the right way to deploy big changes to an existing network (e.g.: one that updates/includes assets or new business rules) is to use `composer network update` or `composer network upgrade`?
davidkel (Wed, 25 Oct 2017 13:18:13 GMT):
@joaquimpedrooliveira you use `composer network update` to update your business network.
joaquimpedrooliveira (Wed, 25 Oct 2017 13:25:48 GMT):
thanks, @davidkel !
eacoeytaux (Wed, 25 Oct 2017 14:23:58 GMT):
hi everyone, I'm trying to update composer but when I run the script install-hlfv1.sh I'm getting the error "Error response from daemon: Get https://registry-1.docker.io/v2/hyperledger/fabric-peer/manifests/x86_64-1.0.1: unauthorized: incorrect username or password," I'm not sure what username/password it's even talking about, does anyone know how to get past this?
t_stephens67 (Wed, 25 Oct 2017 14:33:36 GMT):
I am trying to deploy composer chaincode to a swarm network and I am getting the following Error: Error trying deploy. Error: Error trying to instantiate chaincode. Error: Error: Invalid results returned ::NOT_FOUND
t_stephens67 (Wed, 25 Oct 2017 14:33:51 GMT):
I was able to create the channel and add peers to the channel successfully
garMobTest (Wed, 25 Oct 2017 14:42:11 GMT):
Hi - can someone please point me to a sample of using events?
Jakeeyturner (Wed, 25 Oct 2017 14:47:53 GMT):
@garMobTest The vehicle-lifecycle-network uses events - https://github.com/hyperledger/composer-sample-networks/blob/master/packages/vehicle-lifecycle-network/lib/manufacturer.js#L41
Jakeeyturner (Wed, 25 Oct 2017 14:48:20 GMT):
( Models are here - https://github.com/hyperledger/composer-sample-models/tree/master/packages/vehicle-lifecycle-model )
eacoeytaux (Wed, 25 Oct 2017 15:15:57 GMT):
I'm running the script because I'm trying to fix the error I get when running `npm install` in my app, `which is IllegalModelException: Failed to find class org.hyperledger.composer.system.NetworkAdmin ` even though `composer --version` returns v0.14.1, is there possibly a step I missed in updating composer?
eacoeytaux (Wed, 25 Oct 2017 15:15:57 GMT):
when running npm install in my composer app I'm told which is `IllegalModelException: Failed to find class org.hyperledger.composer.system.NetworkAdmin ` even though `composer --version` returns v0.14.1, is there possibly a step I missed in updating composer?
eacoeytaux (Wed, 25 Oct 2017 15:15:57 GMT):
when running npm install in my composer app I'm told `IllegalModelException: Failed to find class org.hyperledger.composer.system.NetworkAdmin ` even though `composer --version` returns v0.14.1, is there possibly a step I missed in updating composer?
davidoevans (Wed, 25 Oct 2017 18:49:04 GMT):
I'm trying to deploy composer-rest-server ...have all my environment variables sourced but getting following error including `$COMPOSER_CONNECTION_PROFILE` but am getting following error. ```0|composer | Exception: Error: Cannot initialize connector "composer": connectionProfileName not specified
0|composer | Error: Cannot initialize connector "composer": connectionProfileName not specified
0|composer | at new BusinessNetworkConnector (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:47:19)
0|composer | at Object.createConnector (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/index.js:27:12)
0|composer | at Object.initialize (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/index.js:41:36)
0|composer | at DataSource.setup (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/datasource.js:417:19)
0|composer | at new DataSource (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/datasource.js:123:8)
``` . Has anyone else run into this?
davidoevans (Wed, 25 Oct 2017 18:49:04 GMT):
I'm trying to deploy composer-rest-server ...have all my environment variables sourced including `$COMPOSER_CONNECTION_PROFILE` but am getting following error. ```0|composer | Exception: Error: Cannot initialize connector "composer": connectionProfileName not specified
0|composer | Error: Cannot initialize connector "composer": connectionProfileName not specified
0|composer | at new BusinessNetworkConnector (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:47:19)
0|composer | at Object.createConnector (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/index.js:27:12)
0|composer | at Object.initialize (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/index.js:41:36)
0|composer | at DataSource.setup (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/datasource.js:417:19)
0|composer | at new DataSource (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/datasource.js:123:8)
``` . Has anyone else run into this?
davidoevans (Wed, 25 Oct 2017 19:10:20 GMT):
never mind my last question - i wasn't passing settings properly.
Hefziben (Wed, 25 Oct 2017 19:14:03 GMT):
I get the Rest server with mongodb working as you can see below and after some time is says PM2 Daemon is dead and it stop working, do you now what the issue could be?
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
0|composer | Discovering types from business network definition ...
0|composer | D1025 19:07:54.443976443 16 env_linux.c:66] Warning: insecure environment read function 'getenv' used
0|composer | Discovered types from business network definition
0|composer | Generating schemas for all types in business network definition ...
0|composer | Generated schemas for all types in business network definition
0|composer | Adding schemas for all types to Loopback ...
0|composer | Added schemas for all types to Loopback
0|composer | Web server listening at: http://localhost:3000
0|composer | Browse your REST API at http://localhost:3000/explorer
conroydave (Thu, 26 Oct 2017 01:20:21 GMT):
any idea why i always get node-gyp errors when spinning up new fabric/composer tools in the sample applications repo
conroydave (Thu, 26 Oct 2017 01:21:37 GMT):
its fixable with sudo apt-get install node-gyp
conroydave (Thu, 26 Oct 2017 01:21:47 GMT):
but seems to be only dependency i have to do that for
ambrogi4 (Thu, 26 Oct 2017 02:16:38 GMT):
Has joined the channel.
username343 (Thu, 26 Oct 2017 06:14:54 GMT):
hi @davidkel can you please tell me what the fabric's organization peer consortium , channel equivalent in composer
username343 (Thu, 26 Oct 2017 06:18:04 GMT):
how do the transaction processor functions ensure that the participant invoking the transaction actually owns the asset on which the transaction is being invoked. For example only the participant that owns an asset should be allowed to initiate the transaction to change ownership of that asset
panickervinod (Thu, 26 Oct 2017 06:29:17 GMT):
Has joined the channel.
username343 (Thu, 26 Oct 2017 06:40:15 GMT):
In case of multiple organization who issues and revokes the identities to interact with the business network?
nickyromeijn (Thu, 26 Oct 2017 07:02:07 GMT):
@davidkel @sstone1 i remember one of you linking to an example of implementing your own wallet storage (which is currently undocumented i think?) I can't find the example anymore think it was something with bluemix. Could you link the example again?
nickyromeijn (Thu, 26 Oct 2017 07:06:23 GMT):
Als is it possible to use sha256 or something compareable inside a transaction?
labcoinpoc (Thu, 26 Oct 2017 07:06:47 GMT):
Has joined the channel.
LarissaAuberger (Thu, 26 Oct 2017 07:18:46 GMT):
I would like to configure basic authentication with HTTPS in Composer REST Server.
I worked through this documentaton of the passport-http authentication strategy: https://github.com/jaredhanson/passport-http
My impression is that some coding needs to be done on the Hyperledger Composer REST server side to enable usage of HTTP Basic. Could someone please confirm this?
If passport-http is not yet supported is there a roadmap for this strategy? If it is already supported, how would I find out how to configure COMPOSER_PROVIDERS in order to enable this strategy? Thanks!
davidkel (Thu, 26 Oct 2017 07:23:27 GMT):
@nickyromeijn https://github.com/sstone1/sample-bluemix-composer-app
labcoinpoc (Thu, 26 Oct 2017 07:26:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xBjqHYdSCkKLqWpP5) @LarissaAuberger I also did some work to integrate composer REST server and passport-local, and I gave up. I think REST server needs an OAuth service to return access-token. I am not sure about passport-http but passport-local cannot do this.
nickyromeijn (Thu, 26 Oct 2017 07:32:58 GMT):
@davidkel thanks
santidediego (Thu, 26 Oct 2017 07:34:00 GMT):
Has joined the channel.
santidediego (Thu, 26 Oct 2017 07:34:57 GMT):
Hi, I'm trying to make a query with params and I am not able to get any rows,
santidediego (Thu, 26 Oct 2017 07:35:32 GMT):
```SELECT org.acme.democracity.Paper
WHERE(poll.pollId == _$id)```
santidediego (Thu, 26 Oct 2017 07:35:49 GMT):
this is the query
santidediego (Thu, 26 Oct 2017 07:36:17 GMT):
```return query('PapersFromAPoll',{id : count.poll.pollId})```
and this is the code which calls the query
santidediego (Thu, 26 Oct 2017 07:36:44 GMT):
If don't use WHERE statement It works perfectly
nickyromeijn (Thu, 26 Oct 2017 07:38:47 GMT):
@davidkel In what namespace should i define an ACL rule regarding to the system/identities endpoint on the restserver? org.hyperledger.composer.system.identities does not work
davidkel (Thu, 26 Oct 2017 07:38:52 GMT):
@username343 How identities and participants are managed will be an operational decision between organisations. For example an agreement between organisations on a process for creating participants would be defined, but each organisation can manage creating identities and binding those identities to those predefined participants
davidkel (Thu, 26 Oct 2017 07:38:52 GMT):
@username343 How identities and participants are managed will be an operational decision between organisations. For example an agreement between organisations on a process for creating participants would be defined, but each organisation can manage creating identities and binding those identities to those predefined participants. A business network manages access to the business network resources through ACLs defined for that business network. Fabric specific information such as the channel and mspid are defined in the connection profile for a fabric.
nickyromeijn (Thu, 26 Oct 2017 07:42:37 GMT):
Nevermind :) its identity*
nickyromeijn (Thu, 26 Oct 2017 07:44:50 GMT):
The identityRegistry API does not match on ```org.hyperledger.composer.system.Identity```?
nickyromeijn (Thu, 26 Oct 2017 07:44:50 GMT):
The identityRegistry API does not match on ```org.hyperledger.composer.system.Identity``` ACL's?
Ryzum (Thu, 26 Oct 2017 07:59:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=DhJYLp6Lg8fywPM8Q) @gut Yes How can I do that using composer ?
username343 (Thu, 26 Oct 2017 08:00:30 GMT):
thanks @davidkel , so can we restrict the revocation of identities using acl? Can we upgrade the business network after deploying it once? The question that i have is what happens when of the parties revokes the identity of the other party and the changes the ownership of the asset after changing the acl to allow the non owner party to change the ownership.
davidkel (Thu, 26 Oct 2017 08:04:44 GMT):
@username343 it should be possible to restrict who can revoke identities. You can update a business network using `composer network update`. ACLs are an important part of a business network to ensure who can perform what action.
davidkel (Thu, 26 Oct 2017 08:06:53 GMT):
@Ryzum you should not generate an id within a transaction processor doing so would be non-deterministic and the transaction would be rejected because the results of the transaction processor running on different peers would not match. You can use uuid on the client side and pass it in as part of the TP payload.
username343 (Thu, 26 Oct 2017 08:09:35 GMT):
@davidkel so is it possible for me to define a network with two parties where one party initially deploys the composer business network, then issues an admin identity to the other party where none of these two identities can be revoked, and then these two identities will be be able to add the new identities from their organization and carry out usual operations
Ryzum (Thu, 26 Oct 2017 08:10:38 GMT):
@davidkel hum... sorry I'm new I understand why it can't work but can you explain how I can solve the problem ? How can I create a uuid client side ?
username343 (Thu, 26 Oct 2017 08:11:43 GMT):
@Ryzum are you asking how to generate an id using uuid on client side?
rohitaneja8 (Thu, 26 Oct 2017 08:24:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wQXtNrpesczJP2cDi) @kletkeman I would say its good to have feature, as anyways, you can directly code in composer itself..
Ryzum (Thu, 26 Oct 2017 08:33:56 GMT):
@username343 I more specifically have 2 questions : 1) Is this possible using playground ? and 2) If I create a uuid client side I don't want the client to fake the uuid and manually input an old id already in use
LarissaAuberger (Thu, 26 Oct 2017 08:37:35 GMT):
@labcoinpoc, my understanding (hope) was that since REST Server uses Passport as authentication middleware, potentially any of the 300+ strategies could be used. This is also what the doc suggests: "The REST server uses the open source Passport authentication middleware. Administrators of the REST server must select Passport strategies to authenticate clients. Multiple Passport strategies can be selected, allowing clients of the REST server to select a preferred authentication mechanism. Passport includes a wide range of strategies (300+ at the time of writing), including a mix of social media (Google, Facebook, Twitter) and enterprise (SAML, LDAP) strategies." see https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
LarissaAuberger (Thu, 26 Oct 2017 08:38:28 GMT):
However, it seems to be not possible to get an answer on how to enable REST Server to use these strategies (except for github)
LarissaAuberger (Thu, 26 Oct 2017 08:39:37 GMT):
I was hoping @sstone1 or @davidkel could comment on this
username343 (Thu, 26 Oct 2017 08:42:23 GMT):
@Ryzum 1) I don't know if its possible to use uuid in transaction processor functions 2) Even if client use the old uuid the transaction would be rejected because then that object would already be existing on blockchain (assuming that you are identifying your assets with that uuid)
nickyromeijn (Thu, 26 Oct 2017 08:50:29 GMT):
I am running into a usecase where i want to use my private key to encrypt a message between clients; however the restAPI does not expose this functionality; any tips on expanding the current composer-rest-server?
labcoinpoc (Thu, 26 Oct 2017 08:54:02 GMT):
@LarissaAuberger After some test on the multi-user mode of REST server, I notice that when user provides a different access token to the REST server, the default wallet&identity are reset. I think the user identity is bind with the access token. So whatever strategy you use, it should able to return an access token, and then bind the token with user identity(by setting default wallet&identity) then call API with the token, the server will know the identity.
davidkel (Thu, 26 Oct 2017 09:03:37 GMT):
@LarissaAuberger That is the intention of using passport and allowing you to configure which passport strategy to use and to provide strategy specific configuration. The example in our docs show how to use github and you need to use this example as basis to work out how to configure and use other strategies. I'm sure I have posted in the past other links that help describe how to define the strategy environment variable
nickyromeijn (Thu, 26 Oct 2017 09:07:22 GMT):
Is it possible to retrieve the private key of the user through the composer-rest-server? The identity registry does return the certificate but it only contains the pub key (i think)
RocMax (Thu, 26 Oct 2017 09:30:12 GMT):
Has joined the channel.
username343 (Thu, 26 Oct 2017 10:00:40 GMT):
@davidkel is it possible to obtain the participant id of the participant invoking the transaction in the processor transaction function
Emmy (Thu, 26 Oct 2017 10:08:27 GMT):
in my previous post i had this issue can someone help me? [ ](https://chat.hyperledger.org/channel/composer?msg=XHpSfhhFrEcYgg7ZA)
LarissaAuberger (Thu, 26 Oct 2017 10:09:15 GMT):
@davidkel, Dave, thanks. Yes, it is obvious that I need to configure other strategies on my own, but do I also have to write code on REST server to enable the strategy I want? This doc describes what an application that uses Passport as middleware needs to implement in order to support exactly this strategy: https://github.com/jaredhanson/passport-http. I doubt this has already been done for me on the REST server side. Is this something that I need to implement on my own?
jaswanth (Thu, 26 Oct 2017 10:10:36 GMT):
Has joined the channel.
davidkel (Thu, 26 Oct 2017 10:10:44 GMT):
@LarissaAuberger It is hoped that the passport strategies don't require any custom code in order to use them. If they did then it's not possible to use them in composer-rest-server
bestbeforetoday (Thu, 26 Oct 2017 10:24:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=74GH4AQJ4skoFZgsK) @username343 Is this what you are after? https://hyperledger.github.io/composer/jsdoc/module-composer-runtime.html#getCurrentParticipant__anchor
username343 (Thu, 26 Oct 2017 10:25:49 GMT):
yes that is exactly what is want, thanks @bestbeforetoday
username343 (Thu, 26 Oct 2017 10:25:49 GMT):
yes that is exactly what i want, thanks @bestbeforetoday
munireddya (Thu, 26 Oct 2017 12:13:16 GMT):
Hi Everyone
munireddya (Thu, 26 Oct 2017 12:13:52 GMT):
I would like to implement one POC like Org1 & Org2
munireddya (Thu, 26 Oct 2017 12:15:01 GMT):
and Employee1 would like to share his experience scanned document to Org1..
munireddya (Thu, 26 Oct 2017 12:15:26 GMT):
How can I do...any help would be great...
munireddya (Thu, 26 Oct 2017 12:15:26 GMT):
How can I do using hyperledger composer...any help would be great...
gut (Thu, 26 Oct 2017 12:39:30 GMT):
@Ryzum, I regret I can't help you as I'm not developing with Composer right now (in native Chaincode you just use the official library). [As @username343](https://chat.hyperledger.org/channel/composer?msg=oY62GNXg3oMwer4Cv), I don't think the UUID replication is a problem, because IDs are auto-generated at Chaincode level where final users can't intervent.
gut (Thu, 26 Oct 2017 12:39:30 GMT):
@Ryzum, I regret I can't help you as I'm not developing with Composer right now (in native Chaincode you just use the official library). [As @username343, I don't think the UUID replication is a problem, because IDs are auto-generated at Chaincode level where final users can't intervent](https://chat.hyperledger.org/channel/composer?msg=oY62GNXg3oMwer4Cv).
gut (Thu, 26 Oct 2017 12:43:01 GMT):
Also, Ids are widely use in Fabric's implementation. [For instance in transactions](https://github.com/hyperledger/composer/issues/936). You can look how to implement it in Composer.
jarvis26 (Thu, 26 Oct 2017 13:16:59 GMT):
Has joined the channel.
sstone1 (Thu, 26 Oct 2017 14:00:45 GMT):
@here we've released Hyperledger Composer v0.14.2, w/ new array query function, bug fixes, and the latest CongaComic! 🎉 https://github.com/hyperledger/composer/releases/tag/v0.14.2
nickyromeijn (Thu, 26 Oct 2017 14:09:05 GMT):
@sstone1 Thanks! The contains was exactly what i needed :D
nickyromeijn (Thu, 26 Oct 2017 14:09:05 GMT):
@sstone1 Thanks! contains was exactly what i needed :D
nickyromeijn (Thu, 26 Oct 2017 14:09:05 GMT):
@sstone1 Thanks! ```contains``` was exactly what i needed :D
t_stephens67 (Thu, 26 Oct 2017 14:16:03 GMT):
That comic was.....Spooky
ajp (Thu, 26 Oct 2017 14:31:35 GMT):
@LarissaAuberger I've run into similar issues trying to adapt the REST server's authentication to a client UI. There are two solutions I've found so far, let me know if you decide to use a better alternatives:
1. I treat the access_token as a "client secret" of sorts that must be manually generated by the UI developer and then plugged into a static config file into the UI server. The token is then used to authenticate all REST requests from the UI back-end.
2. The Composer REST server sets a cookie for its domain containing the access_token when it authenticates, e.g. via github. If you move all your REST calls to be browser-side js, that cookie will be there when the requests are made and will authenticate them. In your Composer REST environment variables, you can specify a successRedirect/failureRedirect that will redirect the browser to your client UI rather than the REST server's swagger UI.
As far as implementing other strategies, I'm also a bit confused on how to do this without writing code more on the back-end of composer REST server.
simoneromani (Thu, 26 Oct 2017 14:38:26 GMT):
hello, I have an issue with the deployment of business network (composer version 0.14.1): I request an identity to the fabric-ca (enrolling as _admin_ password _adminpw_ , same as the bootstrapping identity of the fabric-ca-server), I receive a certificate and a private key back, I import that identity into the userID _adminCC_ (matching the previous certificate and key to this userID) and I try to deploy a network with enrollmentID _adminCC_ and businessnetworkadmin _adminCC_ . I get an error saying that ```Error: Error trying deploy. Error: Error trying install composer runtime. Error: chaincode error (status: 500, message: Authorization for INSTALL has been denied (error-Failed verifying that proposal's creator satisfies local MSP principal during channelless check policy with policy [Admins]: [This identity is not an admin])) ``` Anyone understands why?
nsdeo12 (Thu, 26 Oct 2017 14:39:57 GMT):
Clipboard - October 26, 2017 8:09 PM
nsdeo12 (Thu, 26 Oct 2017 14:40:05 GMT):
After updating to composer version0.14.2 I am getting this weird error.The same running code(in composer v0.11.1) is not working in updated version.
nsdeo12 (Thu, 26 Oct 2017 14:40:39 GMT):
Any suggestion would be appreciated ?
rbulgarelli (Thu, 26 Oct 2017 15:18:24 GMT):
Hi. This is the log to our peer when we try to deploy chaincode... it is constantly timing out. Any suggestions?
rbulgarelli (Thu, 26 Oct 2017 15:18:31 GMT):
Peer0Logs.txt
mahoney1 (Thu, 26 Oct 2017 15:28:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=r8YymEPH4XHLiYqqW) @munireddya you create a runtime Fabric blockchain network that Org 1 and Org 2 can participate in ; you then install Composer runtime on their peer(s), you then deploy/instantiate the Composer business network you modeled and built onto a defined channel - so they can communicate on the same ledger to share what you mention -> https://hyperledger.github.io/composer/introduction/introduction.html
giridharg (Thu, 26 Oct 2017 15:37:30 GMT):
@mahoney1 We tried to upgrade to composer v13. Our blockchain data loader fails on composer v13 due to timeouts, the issues which used to be present in v7. Composer v10 was updated with better throughput (800/sec) but that seems to be changed in v13.
Error: Error trying invoke business network. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
at _initializeChannel.then.then.then.then.catch (/Users/giridhar/work/blockchain/CURRENT/IDT-MVP/invoice-loader-cv10/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:842:34)
giridharg (Thu, 26 Oct 2017 15:38:12 GMT):
@mahoney1 Is it a known issue in v13?
mattheleon (Thu, 26 Oct 2017 16:00:40 GMT):
Has joined the channel.
sstone1 (Thu, 26 Oct 2017 16:00:52 GMT):
@here community call starting now: https://zoom.us/j/441168172
andreasp1994 (Thu, 26 Oct 2017 17:23:50 GMT):
Hey guys when I deploy a network... after a make some changes if I run deploy again the old network gets replaced by the new one??
davidkel (Thu, 26 Oct 2017 17:46:29 GMT):
@andreasp1994 no, you need to use `composer network update`
andreasp1994 (Thu, 26 Oct 2017 17:48:42 GMT):
after I deploy or just update?
andreasp1994 (Thu, 26 Oct 2017 17:48:49 GMT):
@davidkel
davidkel (Thu, 26 Oct 2017 17:49:18 GMT):
@andreasp1994 after you have deployed the initial business network
andreasp1994 (Thu, 26 Oct 2017 17:50:50 GMT):
@davidkel Oh thank you! it makes sense :))
rddill (Thu, 26 Oct 2017 17:55:16 GMT):
@Jakeeyturner The event code referenced in the vehicle lifecycle network doesn't work with V0.13. It fails on the factory statement when using this as chaincode. It fails the same way if I use this as nodejs code. In the nodejs version, I have to first create a business network connection and then connect, then use the emit and factory functions within the bnc class. Is there a working example of using events with V0.13? Been trying to make this work for 2 days now.
raheelz (Thu, 26 Oct 2017 18:25:23 GMT):
Hello all, Does Composer provide way to generate tokens for transactions, or would it have to be architected as an asset?
ajp (Fri, 27 Oct 2017 00:49:29 GMT):
@raheelz What do you mean by "tokens for transactions"? What are you trying to accomplish?
aneb (Fri, 27 Oct 2017 03:10:47 GMT):
@LarissaAuberger
I am running into the same issues. I understand perfectly well what the idea behind the passport strategy setup is and how it is supposed to be implemented but somehow I can't get it to work when I try something else than the github strategy. Just feels like something small is missing and I am just not getting it :)
passport-jwt I can't get it to work because it actually requires a function to be set, which you can't set through ENV variables.
Refering to opts.jwtFromRequest = ExtractJwt.fromAuthHeaderAsBearerToken();
passport-local I can set up and get started but whatever credentials I login with, my user is not found. When I go through the source code I can see that loopback-component-passport just runs a query on the loopback user models and matches on your set username field or the email field and then matches the password. Very clear and easy to understand,but what is not clear is what user model is actually being queried. Just exactly which model needs to have that password field? Is it the actual stored participant or CA identity? It can't be a rest API server only user model because then you would be authenticating something that needs to be authenticated first to exist in the first place. If it is the latter, at what time is a rest api user model created etc.
My next try is setup my own oauth2 server and try like that. This should have the most chance of success as it is basically same as github.
As far as the the whole redirect is concerned, not being able to just receive the token in the response of a REST call, this is because of the loopback-component-passport implementation. It is very easy to modify this code and add a normal response functionality or redirect based on a flag. Of course doing that would mean you have to build your the composer rest server yourself which in my case I would like to keep as blackbox as possible.
I feel like it would be better to use another strategy as default for the tutorials and instruction pages. I can think of a many blockchain use cases for Hyperledger Composer and for only a few of them I would provide github passport access for customers or clients. Not a complaint as I understand that this is done with developers in mind and the passports are supposed to be interchangeable :) Once I get it up and running I am more than willing to provide all the samples.
Sorry for long text :)
aneb (Fri, 27 Oct 2017 03:10:47 GMT):
@LarissaAuberger
I am running into the same issues. I understand perfectly well what the idea behind the passport strategy setup is and how it is supposed to be implemented but somehow I can't get it to work when I try something else than the github strategy. Just feels like something small is missing and I am just not getting it
passport-jwt I can't get it to work because it actually requires a function to be set, which you can't set through ENV variables.
Refering to opts.jwtFromRequest = ExtractJwt.fromAuthHeaderAsBearerToken();
passport-local I can set up and get started but whatever credentials I login with, my user is not found. When I go through the source code I can see that loopback-component-passport just runs a query on the loopback user models and matches on your set username field or the email field and then matches the password. Very clear and easy to understand,but what is not clear is what user model is actually being queried. Just exactly which model needs to have that password field? Is it the actual stored participant or CA identity? It can't be a rest API server only user model because then you would be authenticating something that needs to be authenticated first to exist in the first place. If it is the latter, at what time is a rest api user model created etc.
My next try is setup my own oauth2 server and try like that. This should have the most chance of success as it is basically same as github.
As far as the the whole redirect is concerned, not being able to just receive the token in the response of a REST call, this is because of the loopback-component-passport implementation. It is very easy to modify this code and add a normal response functionality or redirect based on a flag. Of course doing that would mean you have to build your the composer rest server yourself which in my case I would like to keep as blackbox as possible.
I feel like it would be better to use another strategy as default for the tutorials and instruction pages. I can think of a many blockchain use cases for Hyperledger Composer and for only a few of them I would provide github passport access for customers or clients. Not a complaint as I understand that this is done with developers in mind and the passports are supposed to be interchangeable :) Once I get it up and running I am more than willing to provide all the samples.
Sorry for long text
lclclc (Fri, 27 Oct 2017 03:26:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dS2T5EWiRNNr8NzGN) @sstone1 How to upgrade from previous version?
lclclc (Fri, 27 Oct 2017 03:28:41 GMT):
What is `Aligns the delete modals to be the same` ?
LarissaAuberger (Fri, 27 Oct 2017 07:42:46 GMT):
@aneb , yes exactly my understanding. And if you look at http://www.passportjs.org/ - any of the strategies seems to require some code to be enabled in the REST server. Let me know how you are doing with your use case. Thanks
multimedial (Fri, 27 Oct 2017 09:52:41 GMT):
Hello, I got a question regarding the setup of composer on a running blockchain. Do I get this right that I can connect a local composer instance to a running fabric blockchain? If so, how to do that? I know that it involves Business Network cards, but how do I issue these from a running blockchain that I did NOT define in composer?
multimedial (Fri, 27 Oct 2017 09:52:47 GMT):
Any help is much appreciated.
zasamen (Fri, 27 Oct 2017 10:01:47 GMT):
Hello.
I would like to write the Web Client for my Rest Server.
How should i enable the CORS?
jaswanth (Fri, 27 Oct 2017 10:20:31 GMT):
hello all i passed a relation as an argument to the query ..am getting an error as ```Error: Use Serializer.toJSON to convert resource instances to JSON objects.``` can any one help me here
jaswanth (Fri, 27 Oct 2017 10:21:17 GMT):
i tried following ```function addStudentDetails(studentDetails) {
var ser = getSerializer();
// set the new owner of the commodity
return getAssetRegistry('org.acme.studentregistry.StudentDetails')
.then(function (assetRegistry) {
return query('selectStudentByStudentId',{studentID:(studentDetails.educationDetails.studentInfo)})
.then(function (results) {
ser.toJSON(results);
console.log(results);
if(results != []){
if(results.studentInfo != studentDetails.educationDetails.studentInfo && results.studentID != studentDetails.educationDetails.studentID){
// persist the state of the commodity
console.log(results);
return assetRegistry.add(studentDetails.educationDetails);
}else{
throw new Error('already exits')
}
}else{
return assetRegistry.add(studentDetails.educationDetails);
}
});
});
}
```
Emmy (Fri, 27 Oct 2017 10:24:30 GMT):
hello, I am creating a prototy where i need to enter new value and save it into one of my assets (sensor), does it mean that i have to create a new transaction or another asset which is in relation with the one i want to update
Emmy (Fri, 27 Oct 2017 10:24:37 GMT):
what i mean is:
Emmy (Fri, 27 Oct 2017 10:25:22 GMT):
this is my model
namespace org.acme.mynetwork
enum ShipmentStatus{
o Departure
o Arrived
}
/**
* A concept for a simple street address
*/
concept Address {
o String city optional
o String country
o String street optional
o String zip optional
}
asset Sensor identified by assetID {
o String assetID
o String Frequency
o String longitude
o String latitude
o String LocationName
--> Spectrum range
}
asset Spectrum identified by SpectrumId {
o String SpectrumId
o String Spectrumval
o String CorrespondingLocation
}
/**
* An abstract participant type in this business network
*/
abstract participant Business identified by email {
o String email
o Address address
}
/**
* A Buyer is a type of participant in the network
*/
participant Buyer extends Business {
}
/**
* A seller is a type of participant in the network
*/
participant seller extends Business {
}
transaction SpectrumChange {
--> Sensor sensor
--> Sensor newlongitude
--> Sensor newlatitude
--> Spectrum newrange
}
Emmy (Fri, 27 Oct 2017 10:25:42 GMT):
and this is my script.js
Emmy (Fri, 27 Oct 2017 10:27:25 GMT):
function Spectrumupdate(spectrumChange) {
var oldlongitude = spectrumChange.sensor.longitude;
var oldlatitude = spectrumChange.sensor.latitude;
if (oldlongitude != spectrumChange.newlongitude && oldlatitude != spectrumChange.newlatitude){
spectrumChange.sensor.range = spectrumChange.newrange;
spectrumChange.sensor.longitude = spectrumChange.newlongitude;
spectrumChange.sensor.latitude = spectrumChange.newlatitude;
return getAssetRegistry('org.acme.mynetwork.Sensor')
.then(function (assetRegistry) {
return assetRegistry.update(spectrumChange.sensor);
});
}
}
Emmy (Fri, 27 Oct 2017 10:27:25 GMT):
/*
* Track the trade of a commodity from one trader to another
* @param {org.acme.mynetwork.SpectrumChange} spectrumChange - the spectrum to be processed
* @transaction
*/
function Spectrumupdate(spectrumChange) {
var oldlongitude = spectrumChange.sensor.longitude;
var oldlatitude = spectrumChange.sensor.latitude;
if (oldlongitude != spectrumChange.newlongitude && oldlatitude != spectrumChange.newlatitude){
spectrumChange.sensor.range = spectrumChange.newrange;
spectrumChange.sensor.longitude = spectrumChange.newlongitude;
spectrumChange.sensor.latitude = spectrumChange.newlatitude;
return getAssetRegistry('org.acme.mynetwork.Sensor')
.then(function (assetRegistry) {
return assetRegistry.update(spectrumChange.sensor);
});
}
}
lclclc (Fri, 27 Oct 2017 10:28:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=M6vYSRFPEtHYbgquN) @zasamen I also have this requirement for my application.
ddhulla (Fri, 27 Oct 2017 10:28:35 GMT):
Hi, I started using Composer. Imported my-basic-sample application. When I go to Test and try to create participant.. it gives error "Error: Missing identifier for Type SampleParticipant in namespace org.acme.sample". Can someone guide why is this error?
mrosack (Fri, 27 Oct 2017 10:37:21 GMT):
@aneb / @LarissaAuberger: i've been trying to get JWT working as well, i created my own passport module to set the jwtFromRequest function: ```'use strict';
const passportJwt = require('passport-jwt');
const util = require('util');
function CustomJwtStrategy(options, verify) {
options.jwtFromRequest = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken();
passportJwt.Strategy.call(this, options, verify);
}
util.inherits(CustomJwtStrategy, passportJwt.Strategy);
module.exports = {
Strategy: CustomJwtStrategy
};```
and reference it with a local path in my COMPOSER_PROVIDERS like `"module": "../../../passport/btf-jwt.js"`, and it seems to get 90% of the way there, but i haven't got it fully working yet :(
mrosack (Fri, 27 Oct 2017 10:37:21 GMT):
@aneb / @LarissaAuberger: i've been trying to get JWT working as well, i created my own passport module to set the jwtFromRequest function: ```'use strict';
const passportJwt = require('passport-jwt');
const util = require('util');
function CustomJwtStrategy(options, verify) {
options.jwtFromRequest = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken();
passportJwt.Strategy.call(this, options, verify);
}
util.inherits(CustomJwtStrategy, passportJwt.Strategy);
module.exports = {
Strategy: CustomJwtStrategy
};```
and reference it with a local path in my COMPOSER_PROVIDERS like `"module": "../../../passport/custom-jwt.js"`, and it seems to get 90% of the way there, but i haven't got it fully working yet :(
mrosack (Fri, 27 Oct 2017 10:38:14 GMT):
it's been a couple weeks since i was playing with it, so i don't remember what the error i was running into was
mrosack (Fri, 27 Oct 2017 10:44:32 GMT):
here's my full provider config, that'd probably help too: ```"jwt": {
"provider": "jwt",
"module": "../../../passport/custom-jwt.js",
"secretOrKey": "--the secret--",
"authScheme": "saml",
"authPath": "/auth/jwt",
"successRedirect": "/",
"failureRedirect": "/",
"session": false
}```
Emmy (Fri, 27 Oct 2017 10:52:12 GMT):
hello, I am creating a prototype where i need to enter new value and save it into one of my assets (sensor), does it mean that i have to create a new transaction or another asset which is in relation with the one i want to update ```this is my model
namespace org.acme.mynetwork
enum ShipmentStatus{
o Departure
o Arrived
}
/**
* A concept for a simple street address
*/
concept Address {
o String city optional
o String country
o String street optional
o String zip optional
}
asset Sensor identified by assetID {
o String assetID
o String Frequency
o String longitude
o String latitude
o String LocationName
--> Spectrum range
}
asset Spectrum identified by SpectrumId {
o String SpectrumId
o String Spectrumval
o String CorrespondingLocation
}
/**
* An abstract participant type in this business network
*/
abstract participant Business identified by email {
o String email
o Address address
}
/**
* A Buyer is a type of participant in the network
*/
participant Buyer extends Business {
}
/**
* A seller is a type of participant in the network
*/
participant seller extends Business {
}
transaction SpectrumChange {
--> Sensor sensor
--> Sensor newlongitude
--> Sensor newlatitude
--> Spectrum newrange
}
```
Emmy (Fri, 27 Oct 2017 10:52:31 GMT):
and this is my script.js ```/*
* Track the trade of a commodity from one trader to another
* @param {org.acme.mynetwork.SpectrumChange} spectrumChange - the spectrum to be processed
* @transaction
*/
function Spectrumupdate(spectrumChange) {
var oldlongitude = spectrumChange.sensor.longitude;
var oldlatitude = spectrumChange.sensor.latitude;
if (oldlongitude != spectrumChange.newlongitude && oldlatitude != spectrumChange.newlatitude){
spectrumChange.sensor.range = spectrumChange.newrange;
spectrumChange.sensor.longitude = spectrumChange.newlongitude;
spectrumChange.sensor.latitude = spectrumChange.newlatitude;
return getAssetRegistry('org.acme.mynetwork.Sensor')
.then(function (assetRegistry) {
return assetRegistry.update(spectrumChange.sensor);
});
}
}
```
multimedial (Fri, 27 Oct 2017 11:42:09 GMT):
I would like to know how to attach the compose to my already running blockchain infrastructure (3 peers, one orderer), which is awaiting for code to be signed and installed.
davidkel (Fri, 27 Oct 2017 11:56:45 GMT):
@zasamen @lclclc cors should already be enabled on the composer-rest-server.
lclclc (Fri, 27 Oct 2017 11:57:54 GMT):
@davidkel Is it possible to send request inside the composer-rest-server to other service?
lclclc (Fri, 27 Oct 2017 11:58:39 GMT):
So the rest-server can communicate with other RESTful service.
davidkel (Fri, 27 Oct 2017 12:00:52 GMT):
@lclclc The Composer Rest Server is designed to communicate with a hyperledger fabric network and client applications communicate with the rest server, not sure what you are trying to achieve.
lclclc (Fri, 27 Oct 2017 12:01:28 GMT):
For example, can it send http request, to facebook web api
lclclc (Fri, 27 Oct 2017 12:01:32 GMT):
?
davidkel (Fri, 27 Oct 2017 12:02:06 GMT):
@lclclc No, why would you want to do that from the rest server ?
lclclc (Fri, 27 Oct 2017 12:02:27 GMT):
Because I want the smart contract to invoke other service
lclclc (Fri, 27 Oct 2017 12:02:36 GMT):
So i can be a judge of our workflow.
davidkel (Fri, 27 Oct 2017 12:05:16 GMT):
@multimedial You would first need a connection profile that describes your hyperledger fabric network. See https://hyperledger.github.io/composer/reference/connectionprofile.html
Then in order to deploy a business network you would need to import your peer admins using `composer identity import` so you can install the composer runtime using `composer runtime install` then you would need to import your channel admin (if different from your peer admins) in order to be able start your created business network.
davidkel (Fri, 27 Oct 2017 12:05:16 GMT):
@multimedial You would first need a connection profile that describes your hyperledger fabric network. See https://hyperledger.github.io/composer/reference/connectionprofile.html
Then in order to deploy a business network you would need to import your peer admins using `composer identity import` so you can install the composer runtime using `composer runtime install` then you would need to import your channel admin (if different from your peer admins) in order to be able start your created business network using `composer network start`
davidkel (Fri, 27 Oct 2017 12:05:59 GMT):
@lclclc So you want your TP function to make a call to the facebook api rather than the rest server ?
lclclc (Fri, 27 Oct 2017 12:06:46 GMT):
actually, I though tp function is behind the rest server
davidkel (Fri, 27 Oct 2017 12:07:36 GMT):
@lclclc no, TP functions execute in hyperleder fabric, the composer rest server provides a rest interface to your business network running in HLF nothing more
lclclc (Fri, 27 Oct 2017 12:08:09 GMT):
yes, TP functions are inside the fabric
lclclc (Fri, 27 Oct 2017 12:08:18 GMT):
and rest-server is a facade of it
lclclc (Fri, 27 Oct 2017 12:08:55 GMT):
rest-server is in the middle of fabric and users, so I thought TP function is *behind* the rest-server.
lclclc (Fri, 27 Oct 2017 12:09:46 GMT):
My requirement need the composer or composer-rest-server provides capability about sending http request out of the sandbox.
davidkel (Fri, 27 Oct 2017 12:12:58 GMT):
@lclclc currently the only capability in Composer from TP functions is this experimental feature
https://hyperledger.github.io/composer/jsdoc/module-composer-runtime.html#post__anchor
lclclc (Fri, 27 Oct 2017 12:14:00 GMT):
So it is not a complete http api?
lclclc (Fri, 27 Oct 2017 12:16:34 GMT):
Then I have to use a POST style api to recieve the message.
mrosack (Fri, 27 Oct 2017 12:18:23 GMT):
what i've done in my fabric is create a translation API that only exposes POST endpoints and handles all the communication with other services, it's a pain but it works
davidkel (Fri, 27 Oct 2017 12:21:34 GMT):
@lclclc For now, once we have the node.js fabric chaincode support then it should be possible to use 'request'.
davidkel (Fri, 27 Oct 2017 12:21:34 GMT):
@lclclc For now, once we have the node.js fabric chaincode support then it should be possible to use 'request' functionality that the node.js runtime provides.
JoeMcfall (Fri, 27 Oct 2017 13:38:09 GMT):
Has joined the channel.
JoeMcfall (Fri, 27 Oct 2017 13:39:47 GMT):
Quick easy(?) question: how can I generate a random id for a a new asset I'm creating in a transaction script?
t_stephens67 (Fri, 27 Oct 2017 14:38:35 GMT):
Does anyone know if I can fake OAUTH for the composer-rest-server by setting up a validation server and making a call the the /auth/callback with fake data and a Access Token that will be validated by my fake validation server
t_stephens67 (Fri, 27 Oct 2017 14:39:06 GMT):
Im trying to build a POC and can not use any passport strategies for known oauth providers
berndoostrum (Fri, 27 Oct 2017 16:25:12 GMT):
How do i export ID cards from the playground? The documentations about business network cards doesnt apply anymore to the current playground :(
Alejandro_Ruiz88 (Fri, 27 Oct 2017 16:26:59 GMT):
Has joined the channel.
Dieku (Fri, 27 Oct 2017 16:59:50 GMT):
good day, I would like to know how to use the REGEX validator in hyperledger composer, I am lost and I would be very grateful if you help me, thank you very much.
Dieku (Fri, 27 Oct 2017 17:13:46 GMT):
Clipboard - 27 de octubre de 2017 12:12
Dieku (Fri, 27 Oct 2017 17:14:39 GMT):
Because appears this error, my idea is to validate the name of the company in the participant' User'.
RonPiwetz (Fri, 27 Oct 2017 17:48:34 GMT):
Has joined the channel.
ykcai (Fri, 27 Oct 2017 17:50:11 GMT):
Anyone used Composer's business network runtime connection for NodeJS app and have gotten events from Composer i.e. with ```// Subscribe to events.
this.businessNetworkConnection.on('event', (event) => {
console.log('business event received', event);
});```
ykcai (Fri, 27 Oct 2017 17:50:11 GMT):
Anyone used Composer's business network runtime connection for NodeJS app and have gotten events from Composer? i.e. with ```// Subscribe to events.
this.businessNetworkConnection.on('event', (event) => {
console.log('business event received', event);
});```
RonPiwetz (Fri, 27 Oct 2017 17:50:54 GMT):
I have a business network deployed, using Docker containers on my MacBook, have composer-rest-server running and making REST calls successfully...would like to have composer-playground running as well...I have it installed from npm, but can't find information on running playground. Would someone point me to the proper documentation please?
ykcai (Fri, 27 Oct 2017 17:52:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oJv8XgfLFovCe9Gc8) @RonPiwetz are you running on localhost:3000/explorer/ for the REST APIs?
RonPiwetz (Fri, 27 Oct 2017 17:53:04 GMT):
@ykcai Yes I am
RonPiwetz (Fri, 27 Oct 2017 17:53:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JoWq4oFnRfYDSLWQE) @ykcai Yes I am
ykcai (Fri, 27 Oct 2017 17:54:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=N56nHtsPj6tcZckWN) @RonPiwetz https://hyperledger.github.io/composer/installing/using-playground-locally.html here is the info for running playground locally.
ykcai (Fri, 27 Oct 2017 17:54:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8rXT746rM5Jna9R3t) @RonPiwetz you need to upload a BNA file to playground in order to see your network
RonPiwetz (Fri, 27 Oct 2017 18:08:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=y9oeXe79xfgqzyXqu) @ykcai I ran those commands, but the network I deployed via `composer network deploy...` isn't showing up in the playground. It looks like I only get an option to use networks in the Web Browser, not in my locally deployed containers
raheelz (Fri, 27 Oct 2017 23:19:10 GMT):
@ajp By tokens, I mean an incentive to create transactions
meridian (Sat, 28 Oct 2017 13:54:21 GMT):
Has joined the channel.
meridian (Sat, 28 Oct 2017 13:55:14 GMT):
you mean economic incentive @raheelz
jstevenperry (Sat, 28 Oct 2017 16:49:11 GMT):
Hello, all. I pulled the composer-sample-networks from GitHub today, and it appears the mocha unit tests for the perishable-network are broken. Is anyone aware of this? Running on MacOS, installed nvm and latest Node.js. After pulling the composer-sample-networks code, navigate to perishable-network. Run npm install, then npm test, and 3/4 of the unit tests fail:
jstevenperry (Sat, 28 Oct 2017 16:49:11 GMT):
Hello, all. I pulled the composer-sample-networks from GitHub today, and it appears the mocha unit tests for the perishable-network are broken. Is anyone aware of this? Running on MacOS, installed nvm and latest Node.js. After pulling the composer-sample-networks code, navigate to perishable-network. Run npm install, then npm test, and 3/4 of the unit tests fail:
Example:
1 passing (2s)
3 failing
1) Perishable Shipping Network #shipment should receive nothing for a late shipment:
AssertionError: expected 5000 to equal 2500
+ expected - actual
-5000
+2500
at businessNetworkConnection.submitTransaction.then.then.then.then (test/perishable.js:134:53)
at process._tickCallback (internal/process/next_tick.js:109:7)
jstevenperry (Sat, 28 Oct 2017 16:49:11 GMT):
Hello, all. I pulled the composer-sample-networks from GitHub today, and it appears the mocha unit tests for the perishable-network are broken. Is anyone aware of this? Running on MacOS, installed nvm and latest Node.js. After pulling the composer-sample-networks code, navigate to perishable-network. Run npm install, then npm test, and 3/4 of the unit tests fail:
Example:
1 passing (2s)
3 failing
1) Perishable Shipping Network #shipment should receive nothing for a late shipment:
AssertionError: expected 5000 to equal 2500
+ expected - actual
-5000
+2500
at businessNetworkConnection.submitTransaction.then.then.then.then (test/perishable.js:134:53)
at process._tickCallback (internal/process/next_tick.js:109:7)
jstevenperry (Sat, 28 Oct 2017 16:49:11 GMT):
Hello, all. I pulled the composer-sample-networks from GitHub today, and it appears the mocha unit tests for the perishable-network are broken. Is anyone aware of this? Running on MacOS, installed nvm and latest Node.js. After pulling the composer-sample-networks code, navigate to perishable-network. Run npm install, then npm test, and 3/4 of the unit tests fail:
Example:
1 passing (2s)
3 failing
1) Perishable Shipping Network #shipment should receive nothing for a late shipment:
AssertionError: expected 5000 to equal 2500
+ expected - actual
-5000
+2500
at businessNetworkConnection.submitTransaction.then.then.then.then (test/perishable.js:134:53)
at process._tickCallback (internal/process/next_tick.js:109:7)
Looks like some kind of state problem in the embedded runtime. This worked fine a few days ago (before the latest release). Can someone look into this, please? Thanks,
jstevenperry (Sat, 28 Oct 2017 16:49:11 GMT):
Hello, all. I pulled the composer-sample-networks from GitHub today, and it appears the mocha unit tests for the perishable-network are broken. Is anyone aware of this? Running on MacOS, installed nvm and latest Node.js. After pulling the composer-sample-networks code, navigate to perishable-network. Run npm install, then npm test, and 3/4 of the unit tests fail:
Example:
1 passing (2s)
3 failing
1) Perishable Shipping Network #shipment should receive nothing for a late shipment:
AssertionError: expected 5000 to equal 2500
+ expected - actual
-5000
+2500
at businessNetworkConnection.submitTransaction.then.then.then.then (test/perishable.js:134:53)
at process._tickCallback (internal/process/next_tick.js:109:7)
Looks like some kind of state problem in the embedded runtime. This worked fine a few days ago (before the latest release). Can someone look into this, please? Thanks!
jstevenperry (Sat, 28 Oct 2017 17:38:33 GMT):
Hello, Composer Team! I believe a change to the embedded runtime component is causing the mocha tests for the perishable-network to fail. To reproduce, pull the latest composer-sample-network from GitHub, navigate to packages/perishable-network, do npm install, then npm test, and 3/4 of the mocha tests will fail. It looks like the tests assume that the blockchain is reset between test invocations, and after the latest release this is no longer true for the embedded runtime (which is good, but the unit tests are failing). I assume perishable-network is not part of your CI or you would have caught it. I have recoded the mocha test to reset the registries each time a test is run, and now all the tests have passed. Can someone please confirm that this is happening? Thanks! --jsp
HenryMascot (Sun, 29 Oct 2017 06:24:53 GMT):
Has joined the channel.
glotov (Sun, 29 Oct 2017 09:40:49 GMT):
Can a transaction return something in Composer?
davidkel (Sun, 29 Oct 2017 10:51:29 GMT):
@glotov Only using events
davidkel (Sun, 29 Oct 2017 10:51:29 GMT):
@glotov Only by using events
glotov (Sun, 29 Oct 2017 19:14:55 GMT):
but can I make a query that will have some javascript code, not only SQL-like one? I need to make a query that checks if the given asset is created by given participant.
lclclc (Mon, 30 Oct 2017 02:04:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=93y6t82gDHogpmhhm) @davidkel I thought all chaincode should be written in Golang. Does fabric have a plan to support other languages?
lclclc (Mon, 30 Oct 2017 02:04:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=93y6t82gDHogpmhhm) @davidkel I thought all chaincode should be written in Golang. Does fabric have a plan to support other languages? Even with golang, chaincode is still running in a sandbox(correct me if I am wrong), so, it can not leverage all Golang functionality. Network communication should be a basic feature of Golang's lib, but I don't see how we can achieve that in fabric. That's why I am interesting in composer-rest-server. It is running out of fabric network, and it has nodejs support.
aneb (Mon, 30 Oct 2017 04:43:21 GMT):
@mrosack Thank you for the information regarding passport-jwt. I will be trying out the code today as well. Just curious though, what is the 10% that is not working out yet for you? Thanks
lclclc (Mon, 30 Oct 2017 06:26:52 GMT):
Is it possible to make composer's transaction trigger automatically by time?
lclclc (Mon, 30 Oct 2017 06:27:50 GMT):
For example, I want transaction to be executed once per second, is it possible to do that?
pranaysoni0211 (Mon, 30 Oct 2017 07:10:51 GMT):
Has joined the channel.
biksen (Mon, 30 Oct 2017 07:21:34 GMT):
@LarissaAuberger ragarding the issue https://github.com/hyperledger/composer/issues/2455
gut (Mon, 30 Oct 2017 07:22:46 GMT):
Has left the channel.
biksen (Mon, 30 Oct 2017 07:26:45 GMT):
Are you able to successfully ran with mongo db? If so, can you please provide me little bit details how you are mapping ".composer-connection-profiles" and ".composer-credentials" directory with docker container directory as specified in your issue? Have you manually copied ".composer-connection-profiles" and ".composer-credentials" directory into your application directory "//composer-sample-applications/packages/vehicle-lifecycle/composer-data-latest/.composer-connection-profiles" and "//composer-sample-applications/packages/vehicle-lifecycle/composer-data-latest/.composer-credentials" respectively?
varunagarwal (Mon, 30 Oct 2017 07:47:59 GMT):
Hey I am trying this out => https://hyperledger.github.io/composer/tutorials/developer-guide.html . But when I run npm test I get the error Error: No chaincode ID found for business network 'my-network'. Can someone help?
aneb (Mon, 30 Oct 2017 08:07:27 GMT):
@varunagarwal Is the name setting in the package.json file already set to my-network?
varunagarwal (Mon, 30 Oct 2017 08:07:57 GMT):
@aneb yes, i found the mistake. There was some issue in the spelling i used while starting the docker cntainer for my-network
aneb (Mon, 30 Oct 2017 08:10:28 GMT):
Glad to hear.
Emmy (Mon, 30 Oct 2017 08:28:25 GMT):
hello, can you help me to know why the event part is not working in this code ```/* TO DO Later
type Geolocation struct {
Latitude *float64 `json:"latitude,omitempty"`
Longitude *float64 `json:"longitude,omitempty"`
}
type AssetState struct {
AssetID *string `json:"assetID,omitempty"` // all assets must have an ID, primary key of contract
Location *Geolocation `json:"location,omitempty"` // current asset location
Temperature *float64 `json:"temperature,omitempty"` // asset temp
Carrier *string `json:"carrier,omitempty"` // the name of the carrier
}
*/
namespace org.acme.mynetwork
enum ShipmentStatus{
o Departure_Kigali
o Arrived_Mombasa
o Arrived_Triester
}
/**
* A concept for a simple street address
*/
concept Address {
o String city optional
o String country
o String street optional
o String zip optional
}
asset Sensor identified by assetID {
o String assetID
o String Frequency
o String longitude
o String latitude
o String LocationName
o String sprange
o ShipmentStatus shipmentStatus
--> Spectrum range
}
asset Spectrum identified by SpectrumId {
o String SpectrumId
o String Spectrumval
o String CorrespondingLocation
}
/**
* An abstract participant type in this business network
*/
abstract participant Business identified by email {
o String email
o Address address
}
/**
* A Buyer is a type of participant in the network
*/
participant Buyer extends Business {
}
/**
* A seller is a type of participant in the network
*/
participant seller extends Business {
}
transaction SpectrumChange {
--> Sensor sensor
o String newlongitude
o String newlatitude
--> Spectrum newrange
}
/**
* Transaction to update the status of an order
*/
transaction UpdateShipmentStatus{
o ShipmentStatus shipmentStatus
--> Sensor sensor
}
event UpdateShipmentStatusEvent {
o ShipmentStatus shipmentStatus
o Sensor sensor
}``` this is the model
Emmy (Mon, 30 Oct 2017 08:28:42 GMT):
and the script is ```/*
* Track the spectrum and check the corresponding location
* @param {org.acme.mynetwork.SpectrumChange} spectrumChange - the spectrum to be processed
* @transaction
*/
function Spectrumupdate(spectrumChange) {
var oldlongitude = spectrumChange.sensor.longitude;
var oldlatitude = spectrumChange.sensor.latitude;
if (oldlongitude != spectrumChange.newlongitude && oldlatitude != spectrumChange.newlatitude){
if (spectrumChange.newlongitude == "30.1044" && spectrumChange.newlatitude == "1.9706"){
spectrumChange.sensor.sprange = "700 MHz";
spectrumChange.sensor.longitude = spectrumChange.newlongitude;
spectrumChange.sensor.latitude = spectrumChange.newlatitude;
spectrumChange.sensor.LocationName = "Kigali";
return getAssetRegistry('org.acme.mynetwork.Sensor')
.then(function (assetRegistry) {
return assetRegistry.update(spectrumChange.sensor);
});
}
else if (spectrumChange.newlongitude == "39.6682" && spectrumChange.newlatitude == "4.0435"){
spectrumChange.sensor.sprange = "400 MHz";
spectrumChange.sensor.longitude = spectrumChange.newlongitude;
spectrumChange.sensor.latitude = spectrumChange.newlatitude;
spectrumChange.sensor.LocationName = "Mombasa";
return getAssetRegistry('org.acme.mynetwork.Sensor')
.then(function (assetRegistry) {
return assetRegistry.update(spectrumChange.sensor);
});
}
else if (spectrumChange.newlongitude == "13.7768" && spectrumChange.newlatitude == "45.6495"){
spectrumChange.sensor.sprange = "600 MHz";
spectrumChange.sensor.longitude = spectrumChange.newlongitude;
spectrumChange.sensor.latitude = spectrumChange.newlatitude;
spectrumChange.sensor.LocationName = "Triester";
return getAssetRegistry('org.acme.mynetwork.Sensor')
.then(function (assetRegistry) {
return assetRegistry.update(spectrumChange.sensor);
});
}
}
}
/*
else{
spectrumChange.sensor.range = spectrumChange.newrange;
return getAssetRegistry('org.acme.mynetwork.Sensor')
.then(function (assetRegistry) {
return assetRegistry.update(spectrumChange.sensor);
});
}
*/
/**
* Update the status of a shipment
* @param {org.acme.mynetwork.UpdateShipmentStatus} updateShipmentStatus - the UpdateOrderStatus transaction
* @transaction
*/
function updateStatus(updateShipmentStatus) {
var oldlongitude = updateShipmentStatus.sensor.longitude;
var oldlatitude = updateShipmentStatus.sensor.latitude;
// save the new status of the order
if (oldlongitude == "30.1044" && oldlatitude == "1.9706"){
updateShipmentStatus.sensor.shipmentStatus = "Departure_Kigali"
updateShipmentStatus.sensor.shipmentStatus = updateShipmentStatus.shipmentStatus;
// get sensor registry
return getAssetRegistry('org.acme.mynetwork.Sensor')
.then(function (assetRegistry) {
return assetRegistry.update(updateShipmentStatus.sensor);
})
.then(function(){
var updateShipmentStatus = factory.newEvent('updateShipmentStatus');
updateShipmentStatus.shipmentStatus = updateShipmentStatus.sensor.shipmentStatus;
updateShipmentStatus.sensor = updateShipmentStatus.sensor;
emit(updateShipmentStatus);
});
}
else if (oldlongitude.newlongitude == "39.6682" && oldlongitude.newlatitude == "4.0435"){
updateShipmentStatus.sensor.shipmentStatus = "Arrived_Mombasa"
updateShipmentStatus.sensor.shipmentStatus = updateShipmentStatus.shipmentStatus;
// get sensor registry
return getAssetRegistry('org.acme.mynetwork.Sensor')
.then(function (assetRegistry) {
return assetRegistry.update(updateShipmentStatus.sensor);
});
}
else if (oldlongitude.newlongitude == "13.7768" && oldlongitude.newlatitude == "45.6495"){
updateShipmentStatus.sensor.shipmentStatus = "Arrived_Triester"
updateShipmentStatus.sensor.shipmentStatus = updateShipmentStatus.shipmentStatus;
// get sensor registry
return getAssetRegistry('org.acme.mynetwork.Sensor')
.then(function (assetRegistry) {
return assetRegistry.update(updateShipmentStatus.sensor);
})
.then(function(){
var updateShipmentStatus = factory.newEvent('updateShipmentStatus');
updateShipmentStatus.shipmentStatus = updateShipmentStatus.sensor.shipmentStatus;
updateShipmentStatus.sensor = updateShipmentStatus.sensor;
emit(updateShipmentStatus);
});
}
}```
razik29 (Mon, 30 Oct 2017 10:29:41 GMT):
Good Morning All. Is there a way we can set 'batch size' and 'batch timeout' while using composer in order to have multiple transactions in a 'single' block? My observation is the default is 'Only one transaction per block'. Any help is much appreciated.
anna (Mon, 30 Oct 2017 10:58:13 GMT):
Has joined the channel.
anna (Mon, 30 Oct 2017 11:06:35 GMT):
Hi! I wonder, why models description are missing is some composer samples, for example in [animal tracking network](https://github.com/hyperledger/composer-sample-networks/tree/master/packages/animaltracking-network) on github. However, when I load it to the playground, I see the model as _models/com.ibm.concerto.mozart.cto_. Why is not it on github?
rthatcher (Mon, 30 Oct 2017 11:41:51 GMT):
@razik29 - I'm not aware of a way to set these with Composer - they are Fabric parameters.
The one transaction per block may be seen because during development and testing the rate of transactions is very slow.
rthatcher (Mon, 30 Oct 2017 12:10:22 GMT):
@anna - references to Concerto are historic and are in the process of being removed.
The Composer Playground imports from NPM rather than Github as NPM doesn't require login.
I think the NPM versions should be in sync with GitHub and I will follow up later.
zachgoll (Mon, 30 Oct 2017 12:53:47 GMT):
Having a hard time understanding the difference between "org.hyperledger.composer.system.**" and "**". Anyone understand this well enough to explain the difference to me? Thanks!
JoshuaRippon (Mon, 30 Oct 2017 13:12:24 GMT):
Hey everyone! Is there any guide out there on how to connect multiple peers to a connection profile? I know that the peers must both be included in the connection.json file and that the composer runtime must be installed on both peers, but I am at a loss of how to actually do it. Could anyone lend me a hand?#
rthatcher (Mon, 30 Oct 2017 13:49:12 GMT):
@JoshuaRippon - this document
https://hyperledger.github.io/composer//reference/connectionprofile
shows that you can specify an array of json objects for peers in the connection profile
erNail (Mon, 30 Oct 2017 14:22:19 GMT):
Is there a way to create the Angular App with in one command with given parameters ?
conroydave (Mon, 30 Oct 2017 14:43:17 GMT):
hello world
E.Gutarra.Tibco (Mon, 30 Oct 2017 15:15:10 GMT):
Hi all, I've build an application using Hyperledger Composer, and deployed it in Hyperledger fabric. Where would I find the chaincode that was generated for this application?
E.Gutarra.Tibco (Mon, 30 Oct 2017 15:25:53 GMT):
If I wanted to fine tune the smart contract I defined using composer .. at the chaincode level, where would I do it? Is there a file in that docker image that I'd need to modify?
kletkeman (Mon, 30 Oct 2017 15:27:14 GMT):
@E.Gutarra.Tibco You will want to start developing composer contracts in a real dev environment. https://hyperledger.github.io/composer/tutorials/developer-guide.html
Jakeeyturner (Mon, 30 Oct 2017 15:34:35 GMT):
@E.Gutarra.Tibco Chaincode doesn't get generated. What happens is that the Hyperledger Composer runtime is effectively the chaincode that gets deployed to Hyperledger Fabric. The Composer runtime then acts as an interpreter
ajp (Mon, 30 Oct 2017 15:45:18 GMT):
If you're looking specifically for the actual code that defines the chaincode, it can be found in the `lib` folder inside the project directory. Alternately, it can be extracted from the `.bna` archive deployed to the network
anna (Mon, 30 Oct 2017 16:46:03 GMT):
hi! How can I make sure that the given asset is created by its owner. For example, in [basic sample network](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/models/sample.cto#L8), when a participant creates the SimpleAsset, it is free to set anyone else as its _owner_. How can I enforce _owner_ to be the actual creator?
conroydave (Mon, 30 Oct 2017 16:58:21 GMT):
perhaps thats in permission's ACL?
tmkaranraj (Mon, 30 Oct 2017 17:07:36 GMT):
Has joined the channel.
ajp (Mon, 30 Oct 2017 17:15:11 GMT):
@anna You can do it in the ACL or check it in the chaincode itself by using getCurrentParticipant()
anna (Mon, 30 Oct 2017 17:16:36 GMT):
many thanks, @conroydave, @ajp, just trying this now...
mrosack (Mon, 30 Oct 2017 18:31:12 GMT):
@aneb / @LarissaAuberger: i've got JWT authentication working, i've written up my procedure in this github ticket: https://github.com/hyperledger/composer/issues/2038
t_stephens67 (Mon, 30 Oct 2017 19:23:38 GMT):
any reason why I would be getting a 404 error when redirected to the callbackURL
steveruckdashel (Mon, 30 Oct 2017 19:57:08 GMT):
Has joined the channel.
conroydave (Mon, 30 Oct 2017 20:13:32 GMT):
can you share or double check the Composer Providers env
t_stephens67 (Mon, 30 Oct 2017 20:21:02 GMT):
@conroydave I am trying to use our own OAUTH2 with the PASSPORT-OAUTH2 strategy I can not use any external strategies.
t_stephens67 (Mon, 30 Oct 2017 20:21:43 GMT):
But regardless the URL should at least exist.
t_stephens67 (Mon, 30 Oct 2017 20:22:40 GMT):
Im able to go to /auth/example and redirect to the login page and then it sends it back to 3000/auth/example/callback but it just says URL not found
CT123 (Mon, 30 Oct 2017 20:31:03 GMT):
If I've already installed composer playground, e.g. npm install -g composer-playground, how do I stop and restart it *without* having to reinstall it?
t_stephens67 (Mon, 30 Oct 2017 20:34:49 GMT):
@conroydave Honestly this is just a POC if I can fake the authentication just so I can demonstrate the capabilities that would be fantastic
t_stephens67 (Mon, 30 Oct 2017 20:35:01 GMT):
Any quick solution will work the project is over friday
glotov (Mon, 30 Oct 2017 21:04:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eHfyPexemMxmyEAFE) @nickyromeijn I have created https://github.com/hyperledger/composer/issues/2505 to track this race. Or can it be that the Composer just does not support working with multiple orgs with different MSPs?..
jsg007 (Tue, 31 Oct 2017 07:17:30 GMT):
Has joined the channel.
labcoinpoc (Tue, 31 Oct 2017 07:31:57 GMT):
Is it possible to create a business network definition like https://github.com/hyperledger/fabric-samples/tree/release/high-throughput by composer? I need to change a value multiple times in one block, I try using an array to store changes of the value just like the example fabric chaincode (which uses composite key). but when i test the bna , it only accepts 1 request then returns MVCC_READ_CONFLICT error and refuses other requests. So in composer how can we do the trick like the example fabric chaincode?
nickyromeijn (Tue, 31 Oct 2017 07:50:03 GMT):
@glotov Thanks, i'm going to follow it
nickyromeijn (Tue, 31 Oct 2017 08:04:49 GMT):
When i request /identities on the rest server i get a list of issued identities by the MSP. These identities have a CERT property; is this only the public key? If so would it possible to retrieve the private key in some way? I need the private key of the user to encrypt messages between users
HawaKaba (Tue, 31 Oct 2017 09:05:25 GMT):
Has joined the channel.
prmdmshra (Tue, 31 Oct 2017 09:18:43 GMT):
I am building a PoC for a supply chain project. I have used the Perishable network sample to develop the network and Web application. Could you please suggest how can I demonstrate the temperature readings from an IoT(or mobile app for demostration)
rthatcher (Tue, 31 Oct 2017 09:38:19 GMT):
@prmdmshra - we have used Node-RED for linking IoT and Hyperledger Composer. Here is an intro to Node-RED:
rthatcher (Tue, 31 Oct 2017 09:38:19 GMT):
@prmdmshra - we have used Node-RED for linking IoT and Hyperledger Composer. Here is an intro to Node-RED:
http://heidloff.net/article/21.01.2015081841NHEAL8.htm
rthatcher (Tue, 31 Oct 2017 09:38:19 GMT):
@prmdmshra - we have used Node-RED for linking IoT and Hyperledger Composer. Here is an intro to Node-RED:
http://heidloff.net/article/21.01.2015081841NHEAL8.htm
and this link briefly describes the Node-RED nodes for Hyperledger Composer:
https://hyperledger.github.io/composer/integrating/node-red.html
HawaKaba (Tue, 31 Oct 2017 09:38:21 GMT):
Hello everyone, I'm new to this forum. I've a question for composer autoloder integration to remote system
HawaKaba (Tue, 31 Oct 2017 09:38:37 GMT):
Sorry for my english level :)
I'm working on ODIN which is an automation platform for operations and billing Services.
I developed an external APS package and deployed it in this platform. So now, I'm trying to include a composer autoloder in the APS resources class.
My architecture is:
- aps
- scripts
- Services
- CreateTenant.php
- Entity
- vendor
pra_tenant.php
I configured a composer.json in aps folder with autoloder psr4 like:
"autoload":{
"psr-4":{
"Business\\PraCloud\\" : "scripts/"
}
}
So I must include my class on Services/create-tenant.php in APS resource "pra_tenant.php" by namespace "Business\\PraCloud\\".
I put this line in the file "pra_tenant.php" :
use Business\PraCloud\Services\CreateTenant
But I've this error from ODIN Platform provisionning:
"PHP Fatal error: Class 'Business\\PraCloud\\Services\\CreateTenant' not found in /var/www/html/praclouddemo01/pra_tenant.php".
Can you help me for resolve this issue ?
HawaKaba (Tue, 31 Oct 2017 09:42:48 GMT):
Sorry, it the file Services/CreateTenant.php, not Services/create-tenant.php according to my architecture
rthatcher (Tue, 31 Oct 2017 09:44:52 GMT):
@HawaKaba - are you in the right Channel for Hyperledger Composer - working with Hyperledger Fabric?
rthatcher (Tue, 31 Oct 2017 09:44:52 GMT):
@HawaKaba - are you in the right Channel? This channel is for Hyperledger Composer - working with Hyperledger Fabric?
rthatcher (Tue, 31 Oct 2017 09:44:52 GMT):
@HawaKaba - are you in the right Channel? This channel is for *Hyperledger Composer* - working with Hyperledger Fabric?
HawaKaba (Tue, 31 Oct 2017 09:47:10 GMT):
Sorry, ok, I'll continue with Fabric
HawaKaba (Tue, 31 Oct 2017 09:47:15 GMT):
Thanks
prmdmshra (Tue, 31 Oct 2017 09:55:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fdSXPmarccmrtnb5g) @rthatcher
Let me try using it. Thanks a lot
jamessharpe (Tue, 31 Oct 2017 10:00:44 GMT):
Has joined the channel.
jamessharpe (Tue, 31 Oct 2017 10:04:26 GMT):
Can anyone help me with defining some ACLs for the following:
```
asset Item identified by itemID {
jamessharpe (Tue, 31 Oct 2017 10:08:45 GMT):
Can anyone help me with defining ACLs for the following structure of code:
```
asset Item identified by ItemID {
o String itemID
}
asset ItemAccess identified by itemAccessID {
o String itemAccessID
--> Item [] items
--> User user
}
```
I want to be able to restrict the list of Items accessible based upon the ItemAccess asset permissions. I can't see how you would do that based upon the docs without inverting the relationship from Items to ItemAccess. Is there a way of accessing ItemAccess from within Item's ACL?
sstone1 (Tue, 31 Oct 2017 10:52:14 GMT):
@jamessharpe no; you can have bidirectional relationships though, so Item can refer to ItemAccess and ItemAccess can refer to Item
sstone1 (Tue, 31 Oct 2017 10:52:20 GMT):
(if that helps)
MeenakshiSingh (Tue, 31 Oct 2017 11:27:19 GMT):
Hi..I was trying to create the connection profile json as described here `https://hyperledger.github.io/composer//reference/connectionprofile`. My network doesn't have tls enabled, but i have different certificate authorities for my peers and orderers, viz., one ca for each organization containing 2 peers each and one for my orderer organization. The connection profile json has only one ca key available. Is it for the orderer? How do I define different ca here?
jamessharpe (Tue, 31 Oct 2017 11:28:32 GMT):
@sstone1 Thanks. It'd be great if a future version of composer would have a feature similar to how Django's related_name works (https://docs.djangoproject.com/en/1.11/ref/models/fields/#django.db.models.ForeignKey.related_name) as it otherwise requires me to add a lot more business logic to ensure that everything gets kept in sync and appropriate permissions are applied
davidkel (Tue, 31 Oct 2017 11:47:03 GMT):
@MeenakshiSingh you need to create different connection profiles for each organisation.
MeenakshiSingh (Tue, 31 Oct 2017 11:49:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=b6eKhfKoKdvXWFGfN) @davidkel Ok..so how do I define what profile is defined for what organization
davidkel (Tue, 31 Oct 2017 11:49:59 GMT):
@MeenakshiSingh you would store them in different subdirectories under the .composer-connection-profiles directory in your home directory.
MeenakshiSingh (Tue, 31 Oct 2017 11:51:43 GMT):
ok, so the subdirectories can be of any name?
mahoney1 (Tue, 31 Oct 2017 12:05:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=q9xQsY83sj4kiSMW2) @MeenakshiSingh correct, just a regular subdirectory name will suffice (and obviously a connection.json file defined in each you use)
MeenakshiSingh (Tue, 31 Oct 2017 12:07:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XBRYMYk84Co68wQT6) @mahoney1 ok. so just a confirmation: in the json, the `ca` is the peer organization ca right
nickyromeijn (Tue, 31 Oct 2017 12:07:31 GMT):
it is not possible to use npm modules in transactions is it?
sstone1 (Tue, 31 Oct 2017 12:08:02 GMT):
@nickyromeijn not today, no
anna (Tue, 31 Oct 2017 12:08:06 GMT):
Hi! I want to try simple [passport-localapikey](try https://github.com/cholalabs/passport-localapikey) instead of passport-github for my composer-rest-server authentication. The strategy needs a function, can I still use `COMPOSER_PROVIDERS` or should it be more complex?
anna (Tue, 31 Oct 2017 12:08:06 GMT):
Hi! I want to try simple [passport-localapikey](https://github.com/cholalabs/passport-localapikey) instead of passport-github for my composer-rest-server authentication. The strategy needs a function, can I still use `COMPOSER_PROVIDERS` or should it be more complex?
nickyromeijn (Tue, 31 Oct 2017 12:09:36 GMT):
@sstone1 Thanks, Do you know if it's possible to retrieve the private key of a user through the rest-server? I take the identity cert is only the pub key..
sstone1 (Tue, 31 Oct 2017 12:15:32 GMT):
not today, no
sstone1 (Tue, 31 Oct 2017 12:15:36 GMT):
you mean through the wallet APIs?
MeenakshiSingh (Tue, 31 Oct 2017 12:18:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=npnYMLihqBEyaanuc) Also, ca definition for orderer org is not required??
nickyromeijn (Tue, 31 Oct 2017 12:18:59 GMT):
@sstone1 Through the wallet api would be nice yeah. The /identities endpoint returns a list of all issued identities with their pub keys (which is fine) but i need to retrieve the private key of a user to encrypt some messaging between two parties. I know when using the node libraries the private key is just stored on your filesystem. However i don't think it's possible to retrieve it from the rest-server.
nickyromeijn (Tue, 31 Oct 2017 12:18:59 GMT):
@sstone1 Through the wallet api would be nice yeah. The /identities endpoint returns a list of all issued identities with their pub keys (which is fine) but i need to retrieve the private key of a user to encrypt some messaging between two parties. I know when using the node libraries the private key is just stored on your filesystem. However i don't think it's possible to retrieve it from the rest-server at the moment?
sstone1 (Tue, 31 Oct 2017 12:19:36 GMT):
there's no way to export private keys from the wallet API today
sstone1 (Tue, 31 Oct 2017 12:19:52 GMT):
private keys aren't stored on the blockchain to it wouldn't come from the /identities endpoint
nickyromeijn (Tue, 31 Oct 2017 12:20:22 GMT):
@sstone1 Ah fair enough, where are they stored then? The mem storage / mongod of the restserver?
sstone1 (Tue, 31 Oct 2017 12:20:28 GMT):
yeah
sstone1 (Tue, 31 Oct 2017 12:20:37 GMT):
or the file system if you don't use multi user mode
nickyromeijn (Tue, 31 Oct 2017 12:20:45 GMT):
Yeah im running multi-user
mahoney1 (Tue, 31 Oct 2017 12:20:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=npnYMLihqBEyaanuc) @MeenakshiSingh correct.
nickyromeijn (Tue, 31 Oct 2017 12:22:06 GMT):
@sstone1 I'll figure something out then, it's a proof of concept app anyway but it would be a nice feature to have
MeenakshiSingh (Tue, 31 Oct 2017 12:22:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sLTWcX7givZCrqxxp) @mahoney1 ok..and ca definition for orderer org is not required??
nickyromeijn (Tue, 31 Oct 2017 12:23:52 GMT):
@sstone1 By the way, how exactly are they stored in the mongo database? I take it that they're only accessible by the identity it belongs to?
mahoney1 (Tue, 31 Oct 2017 12:31:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Pf9hAyNBrrgyNnLHk) @MeenakshiSingh correct, usually its 'your' organisation that you're defining in the connection profile ..
mahoney1 (Tue, 31 Oct 2017 12:33:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GT68XHnM5rTqtPWn6) @anna you should still be good to use COMPOSER_PROVIDERS. The REST server uses the open source Passport authentication middleware.of which that local API key strategy is a part.
MeenakshiSingh (Tue, 31 Oct 2017 12:38:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=adPYxKwKRRcYCQvNB) @mahoney1 ok, thanks. :)
sstone1 (Tue, 31 Oct 2017 12:40:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XRZBFPeYJfm8FS3gg) @nickyromeijn they are just stored as documents in the Mongo database; access to the records are enforced by LoopBack ACL rules
nickyromeijn (Tue, 31 Oct 2017 12:41:50 GMT):
@sstone1 Which are based on the permissions.acl of the netwerk definition?
nickyromeijn (Tue, 31 Oct 2017 12:41:50 GMT):
@sstone1 The LoopBack ACL rules are based on the permissions.acl of the netwerk definition?
sstone1 (Tue, 31 Oct 2017 12:42:54 GMT):
no - each user that authenticates to the REST server gets their own private wallet to put their credentials; LoopBack ensures only the authenticated user can access their own private wallet.
nickyromeijn (Tue, 31 Oct 2017 12:43:20 GMT):
Ah perfect. Nice to know :) Got a clear picture of how it works now
nickyromeijn (Tue, 31 Oct 2017 12:43:34 GMT):
Thanks!
sstone1 (Tue, 31 Oct 2017 12:44:55 GMT):
np
nsdeo12 (Tue, 31 Oct 2017 13:48:15 GMT):
Error: Cannot GET /auth/github\n at raiseUrlNotFoundError
nsdeo12 (Tue, 31 Oct 2017 13:48:15 GMT):
Enabling authentication for the REST server is not consistent.Sometimes it works and fails some other time.It shows Error: Cannot GET /auth/github\n at raiseUrlNotFoundError error
nsdeo12 (Tue, 31 Oct 2017 13:48:15 GMT):
Enabling authentication for the REST server is not consistent.Sometimes it works and fails some other time.It shows Error: Cannot GET /auth/github\n at raiseUrlNotFoundError error .Any suggestion?I am using composer v0.14.2
jsg007 (Tue, 31 Oct 2017 13:49:37 GMT):
On Composer playground with the 'my-basic-sample' business network, is anybody facing issues with the getIdentifier() condition in ACL?
I am referring to the following rule, which when evaluated gives, output as given below:
rule OwnerHasFullAccessToTheirAssets {
description: "Allow all participants full access to their assets"
participant(p): "org.acme.sample.SampleParticipant"
operation: ALL
resource(r): "org.acme.sample.SampleAsset"
condition: (r.owner.getIdentifier() === "participantId:"+p.getIdentifier())
action: ALLOW
}
Eval Output:
r.owner.getIdentifer() evaluates to "ParticipantId#P001"
p.getIdentifier() evaluates to "P001"
jsg007 (Tue, 31 Oct 2017 13:53:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=D6WSzkcj39G7BMbz4)
jsg007 (Tue, 31 Oct 2017 13:54:36 GMT):
The "participantId:" string I appended in the condition is a workaround for this issue.
SergeySadon (Tue, 31 Oct 2017 13:57:42 GMT):
Hello. I really need your help.
I can not understand what the problem is when I call getAssetRegistry or any other function from the composer-client I get the error that this is not a function.
What could be the problem?
node -v v6.11.5
```
function connectToBC() {
var bizNetworkConnection = new BusinessNetworkConnection();
return bizNetworkConnection.connect('hlfv1', 'roochey-network', 'admin', 'adminpw').then(function (businessNetworkDefinition) {
return businessNetworkDefinition;
}).then(function (assetRegistries) {
return console.log(assetRegistries.getAssetRegistry('roochey.manufacturerConcepts.LedgerCars'))
}).catch(function (error) {
console.log(error);
});
}
```
TypeError: assetRegistries.getAssetRegistry is not a function
Jakeeyturner (Tue, 31 Oct 2017 14:29:02 GMT):
@SergeySadon Are you writing a Node.js application? I suggest you take a look at https://hyperledger.github.io/composer/applications/node.html as there are some code snippets there that will help you
gen_el (Tue, 31 Oct 2017 14:56:14 GMT):
@Jakeeyturner Seems there is a challenge with the composer dev site. Not reachable.
Jakeeyturner (Tue, 31 Oct 2017 14:57:42 GMT):
Strange, it's working fine for me
gen_el (Tue, 31 Oct 2017 15:06:12 GMT):
@Jakeeyturner Fixed. Apologies for the false alarm. It was a weird network problem on my end.
mahoney1 (Tue, 31 Oct 2017 16:35:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=D6WSzkcj39G7BMbz4) @jsg007 thats interesting - so when you click on 'SampleAsset" under the'Test' tab in Playground - what value do you see for owner - is it `resource:org.acme.sample.SampleParticipant#participantId:P001 ` or something else?
mahoney1 (Tue, 31 Oct 2017 16:43:28 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wYKruu2vsJSFet27H) @nsdeo12 suspect you may be having something similar to this -> https://stackoverflow.com/questions/44814851/hyperledger-composer-error-authenticating-to-the-rest-server
t_stephens67 (Tue, 31 Oct 2017 17:29:07 GMT):
@nsdeo12 let me know what you find out I am also having the cannot GET error. I am trying to use my own oauth server
nehalshah50 (Tue, 31 Oct 2017 18:04:50 GMT):
I have been trying to make composer-rest-server working in multi user mode...I followed all the instructions given on the tutorial but keep getting following error. I have setup the identity as default but ping always gives me following error .Any idea?
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)",
"stack": "Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)\n at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:663:34)"
}
}
nehalshah50 (Tue, 31 Oct 2017 18:04:50 GMT):
I have been trying to make composer-rest-server working in multi user mode...I followed all the instructions given on the tutorial but keep getting following error. I have setup the identity as default but ping always gives me following error .Any idea? The identity which I am trying to make default works fine if I start the rest server using this identity.
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)",
"stack": "Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)\n at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:663:34)"
}
}
mahoney1 (Tue, 31 Oct 2017 18:08:32 GMT):
fyi @here - the Community call tomorrow (Weds) will be at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 - other dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming - cheers Paul
mahoney1 (Tue, 31 Oct 2017 18:31:02 GMT):
@nehalshah50 not sure what version of Composer you're running with `npm list -g --depth=0` but this Stack Overflow may be what you're seeing. https://stackoverflow.com/questions/46736101/composer-0-14-error-the-current-identity-has-not-been-registered-admin
nehalshah50 (Tue, 31 Oct 2017 18:32:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=s9vrEfM7s7CcTMbGs) @mahoney1 I am on 0.14.1
mbarton321 (Tue, 31 Oct 2017 18:36:27 GMT):
Has joined the channel.
mbarton321 (Tue, 31 Oct 2017 18:39:50 GMT):
I have followed the developer tutorial and managed to get my bn up and running, However when I try to add addition string variables in sample.cto and recreate bna file they are not appearing when I test on playground
nehalshah50 (Tue, 31 Oct 2017 18:46:09 GMT):
@mahoney1 I don't have any problem with the admin user or other identities i created and registered. I can use them without any issues on playground. It is only when I try to set up the composer-rest-server in multiuser user mode. I get issues.
mkopeck (Tue, 31 Oct 2017 20:45:12 GMT):
Has joined the channel.
mkopeck (Tue, 31 Oct 2017 20:50:24 GMT):
I'm trying to run the `npm install -g composer-cli` command, but I keep getting a permission denied error along with the message to try running the command again as root/Administrator. It says here https://hyperledger.github.io/composer/installing/development-tools.html *Please do not install Hyperledger Composer as a superuser - or use 'sudo' *
jeffgarratt (Tue, 31 Oct 2017 21:21:18 GMT):
Have an issue trying to integrate playground v0.14.2 with latest fabric master branch build...
jeffgarratt (Tue, 31 Oct 2017 21:21:22 GMT):
```Error: Error trying to instantiate composer runtime. Error: error starting container: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer/vendor/gopkg.in/olebedev/go-duktape.v3 chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.go:131: constant 18446744073709551615 overflows int "
jeffgarratt (Tue, 31 Oct 2017 21:21:51 GMT):
This appears to be a known bug in golang per some issues pages... https://github.com/golang/go/issues/21708
jeffgarratt (Tue, 31 Oct 2017 21:21:51 GMT):
This appears to be a known bug in golang 1.9 (which latest fabric builds uitlize) per some issues pages... https://github.com/golang/go/issues/21708
jeffgarratt (Tue, 31 Oct 2017 21:22:28 GMT):
@sstone1 @caroline-church wanted to discuss this here in case an issue should be created wrt to composer
davidkel (Tue, 31 Oct 2017 21:25:36 GMT):
@jeffgarratt This only applies to master and won't be something affected by the 1.0.x stream of fabric ? So when we have a drop of fabric based on that version of fabric we will be going over to the node.js chaincode runtime and won't have a go runtime anymore
davidkel (Tue, 31 Oct 2017 21:25:36 GMT):
@jeffgarratt This only applies to master and won't be something affected by the 1.0.x stream of fabric ? So when we have a drop of fabric based on a version of fabric from master we will be going over to the node.js chaincode runtime and won't have a go runtime anymore
jeffgarratt (Tue, 31 Oct 2017 21:26:29 GMT):
@davidkel I verified correct behavior on images for fabric tag x86_64-1.0.3, as they use golang 1.7.8 I believe.
jeffgarratt (Tue, 31 Oct 2017 21:26:46 GMT):
understood... makes sense
jeffgarratt (Tue, 31 Oct 2017 21:26:53 GMT):
just wanted to use the latest and greatest :)
davidkel (Tue, 31 Oct 2017 21:27:22 GMT):
And I would assume the 1.0.x stream won't be updated to go 1.9.x so I think we are good.
davidkel (Tue, 31 Oct 2017 21:27:57 GMT):
Well, the absolute latest and greatest (but unreleased) would be the node.js chaincode support :-)
jeffgarratt (Tue, 31 Oct 2017 21:27:59 GMT):
can I get my hands on a playground version that should work with master?
jeffgarratt (Tue, 31 Oct 2017 21:28:13 GMT):
i.e. node.js chaincode usage?
davidkel (Tue, 31 Oct 2017 21:28:56 GMT):
We don't have any builds available of it unfortunately
jeffgarratt (Tue, 31 Oct 2017 21:29:12 GMT):
np... can work with what I have for now on the x86_64-1.0.3
jeffgarratt (Tue, 31 Oct 2017 21:29:19 GMT):
just good to get it going again :)
davidkel (Tue, 31 Oct 2017 21:30:03 GMT):
We can't wait to move over to the node.js chaincode though. We will be so happy to finally retire the go code and embedded javascript interpreter
davidkel (Tue, 31 Oct 2017 21:30:03 GMT):
We can't wait to move over to the node.js chaincode though.
davidkel (Tue, 31 Oct 2017 21:30:03 GMT):
We can't wait to start exploiting to the node.js chaincode though coming in fabric soon
davidkel (Tue, 31 Oct 2017 21:30:03 GMT):
We can't wait to start exploiting the node.js chaincode though coming in fabric soon
parags (Wed, 01 Nov 2017 06:34:15 GMT):
Has joined the channel.
MeenakshiSingh (Wed, 01 Nov 2017 07:13:53 GMT):
@davidkel @mahoney1 What needs to be kept in the .composer-credentials while connecting to a distributed fabric network?
smartapp (Wed, 01 Nov 2017 07:45:36 GMT):
Has joined the channel.
smartapp (Wed, 01 Nov 2017 07:56:42 GMT):
Hi everyone, could any one suggest how to upgrade existing network's composer runtime to a minor version (say from 0.12.0 to 0.14.2) while keeping existing data? my network is configured with persistent data; since network update only supports micro version upgrade, I tried runtime install then network start, as expected it fails and says the chaincode already exists (my-network.0.12.0); i can certainly use a new network name but then I'd start brand new and previous data does not exist in the new network. Thanks for any advices
davidkel (Wed, 01 Nov 2017 08:05:15 GMT):
@MeenakshiSingh identities are stored in this directory (so long as your connection profile points to that directory in the keyValStore property). For the rest server if you specify a datasource then identities will be stored in the datasource instead.
davidkel (Wed, 01 Nov 2017 08:07:15 GMT):
@smartapp It isn't possible. A minor version change usually means that there has been an incompatible change to the runtime and we don't have any migration path in place for existing data stored in world state
smartapp (Wed, 01 Nov 2017 08:11:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xnkWfWXgFSwYbdyCP) @davidkel Thanks a lot for your quick reply. and understood, but I was wondering what'd be the suggestion for a production network? or composer is just meant to be for prototyping and not meant for production use? would appreicate your advice again. Thanks a lot!
davidkel (Wed, 01 Nov 2017 08:22:43 GMT):
@smartapp https://github.com/hyperledger/composer/issues/1390 provides the road map for what we consider to be a "v1.0" release, worth taking a look.
MeenakshiSingh (Wed, 01 Nov 2017 08:24:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Nqm7Go5j7oQZ5ikMq) @davidkel oh..ok. so do i need to store the cacert of each of my organization here in the `.composer-credentials` directory?
smartapp (Wed, 01 Nov 2017 08:25:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BQwiYBJq6QP52hTdJ) @davidkel thanks a again! appreciated!!
davidkel (Wed, 01 Nov 2017 08:27:01 GMT):
@MeenakshiSingh No. What it stores is the identities for which you will use to interact with the fabric and business network. Identities are put there either through automatic enrollment by composer or alternatively you use the `composer identity import` command to take an existing signer certificate and private key and import them into this location
MeenakshiSingh (Wed, 01 Nov 2017 08:29:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TfQBiZcbBWs5YYqrs) @davidkel oh..ok. So I don't need store anything here manually. Composer will be able to connect to my network and bring the identities and stores them here?
davidkel (Wed, 01 Nov 2017 08:34:10 GMT):
@MeenakshiSingh If you are using your own built fabric you will need to import the Peer and Channel identities in order to be able to install the composer runtime on the peer and start the business network. If you use our provided dev server then this is already done for you as PeerAdmin (which has both Peer and Channel admin authorities).
MeenakshiSingh (Wed, 01 Nov 2017 08:35:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=76QQSunYtWfvpgYJy) @davidkel Yes, I am using my own fabric network. How do I import these identities?
davidkel (Wed, 01 Nov 2017 08:41:03 GMT):
@MeenakshiSingh you need to use the `composer identity import` command
MeenakshiSingh (Wed, 01 Nov 2017 08:55:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=d5XWA2PToCwY7Z9fj) @davidkel `-c` flag here should contain the location of admincert on my network? This can be of any peer on the network?
davidkel (Wed, 01 Nov 2017 08:57:01 GMT):
@MeenakshiSingh it will all depend on how your network is configured
MeenakshiSingh (Wed, 01 Nov 2017 08:59:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MeweRHTHMKEextRgi) @davidkel My network consists of 2 orgs and 4 peers (2 peer in each org). They have their Ecerts generated with their org's CA. The peers are present on different nodes.
davidkel (Wed, 01 Nov 2017 09:02:45 GMT):
@MeenakshiSingh When you configured your network, you would have declared which identities are admins for each of your peers. Also you would have defined which identities are admins for your channels. These are the identities you will need to import.
davidkel (Wed, 01 Nov 2017 09:02:45 GMT):
@MeenakshiSingh When you configured your network, you would have declared which identities are admins for each of your peers. Also you would have defined which identities are admins for your channels. These are the identities you will need to import as each will have both a public certificate and a private key
anna (Wed, 01 Nov 2017 09:03:37 GMT):
Hi, I am trying to use local [passport-http](https://github.com/jaredhanson/passport-http) auth strategy to composer-rest-server. The server starts, but what user should I use to log it? The server uses loopback-component-passport and it uses its [userModel](https://github.com/strongloop/loopback-component-passport/blob/3.x-latest/lib/passport-configurator.js#L273) to look up users who try to authenticate. This model is set up by composer-rest-server [here](https://github.com/hyperledger/composer/blob/ad63369c8bca1d4185e634c4f5108eee87407909/packages/composer-rest-server/server/server.js#L118). How to add my local user there so I can authenticate my rest server?
MeenakshiSingh (Wed, 01 Nov 2017 09:53:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9dE35Rmucd8DpYkDb) @davidkel Upon executing the network deploy command, I am getting this error: `Error: error trying to setup a keystore path. Error: EACCES: permission denied, mkdir '/home/.composer-credentials'
Command failed
`
MeenakshiSingh (Wed, 01 Nov 2017 09:53:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9dE35Rmucd8DpYkDb) @davidkel Upon executing the network deploy command, I am getting this error: ```Error: error trying to setup a keystore path. Error: EACCES: permission denied, mkdir '/home/.composer-credentials'
Command failed
```
erNail (Wed, 01 Nov 2017 09:57:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ff7cmYt3wfPeebiPN) @MeenakshiSingh What's the keyValStore-value set in your connection.json ?
When you executy the network deploy command with sudo it should work.
mahoney1 (Wed, 01 Nov 2017 09:58:28 GMT):
@here the Composer Community call is in 3 mins FYI - Zoom : https://zoom.us/j/441168172
MeenakshiSingh (Wed, 01 Nov 2017 09:58:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=cCL4Qqy6FSkNkdA7v) @erNail Its `/home/.composer-credentials`
davidkel (Wed, 01 Nov 2017 10:05:04 GMT):
@MeenakshiSingh If that is the directory in your keyvalstore then i'm not surprised you get a permission denied. As a user on a unix platform you won't have authority to create directories in `/home`. You would haveever have permission to create directories in you user home directory which would be something like `/home/
davidkel (Wed, 01 Nov 2017 10:05:04 GMT):
@MeenakshiSingh If that is the directory in your keyvalstore then i'm not surprised you get a permission denied. As a user on a unix platform you won't have authority to create directories in `/home`. You would however have permission to create directories in you user home directory which would be something like `/home/
MeenakshiSingh (Wed, 01 Nov 2017 10:07:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QjX3f7jX3PwTReqxT) @davidkel yes. :( changed that. Now I am getting ```Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Error: Invalid results returned ::NOT_FOUND
Command failed``` I have already registered a admin with my CA with enrollId as admin and enroll secret as adminpw. I am using the same for -i and -s tags in the network-deploy command.
davidkel (Wed, 01 Nov 2017 10:10:34 GMT):
@MeenakshiSingh Just to confirm you are using a fabric-ca implementation ? The next step would be to check the logs of your CA to see what happened
deepakvparmar (Wed, 01 Nov 2017 10:19:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2mBhci2x7d6hjXkH4) @mahoney1 : I am sorry for keeping mic ON :(
mahoney1 (Wed, 01 Nov 2017 10:19:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=L9HDM4fwtwkHhW47d) @deepakvparmar no problem, all sorted!
MeenakshiSingh (Wed, 01 Nov 2017 10:47:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7QWDLyY5RS6HYLi2C) @davidkel I restarted my fabric ca server, now upon execution of network deploy command, I get the following logs at the ca server ```{"id":"admin","type":"client","affiliation":"org1.department1","max_enrollments":1,"caName":""}
2017/11/01 10:41:48 [DEBUG] Directing traffic to default CA
2017/11/01 10:41:48 [DEBUG] Checking for revocation/expiration of certificate owned by 'admin'
2017/11/01 10:41:48 [DEBUG] DB: Get certificate by serial (f86d046ce8a9de272d9e2232b5287ed717094d2) and aki (76a44a9ec01e7f33f019febe9355b7d337ef7b79)
2017/11/01 10:41:48 [DEBUG] Successful authentication of 'admin'
2017/11/01 10:41:48 [DEBUG] Register request received
2017/11/01 10:41:48 [DEBUG] Received registration request from admin: &{RegistrationRequest:{Name:admin Type:client Secret:<
MeenakshiSingh (Wed, 01 Nov 2017 10:47:44 GMT):
```Error: Error trying deploy. Error: Error trying install composer runtime. Error: chaincode error (status: 500, message: Authorization for INSTALL has been denied (error-Failed verifying that proposal's creator satisfies local MSP principal during channelless check policy with policy [Admins]: [This identity is not an admin]))
Command failed
```
mahoney1 (Wed, 01 Nov 2017 10:50:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zaHFgxw5anmn7bcAL) @mbarton321 did you deploy your changed network in Playground? That would be the first check.
davidkel (Wed, 01 Nov 2017 10:51:14 GMT):
@MeenakshiSingh The error from composer is from the fabric. The identity you have specified is not an identity defined as an admin for the peer(s) you are trying to install the composer runtime on.
mahoney1 (Wed, 01 Nov 2017 10:52:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zKsMrENFNMgADnayr) @nehalshah50 hi there, could you raise a Stack Overflow issue, with all of the appropriate configuration steps (eg COMPOSER_PROVIDERS settings etc) and steps you took, that would be the best way to help progress your issue.. Thanks.
geoms (Wed, 01 Nov 2017 10:55:30 GMT):
Team, I am trying to develop a NodeJS app using Composer JS APIs
geoms (Wed, 01 Nov 2017 10:56:22 GMT):
and trying to connecting to Blockchain network
geoms (Wed, 01 Nov 2017 10:57:28 GMT):
We need to provide connection profile name while connecting to the network
geoms (Wed, 01 Nov 2017 10:57:47 GMT):
Example: businessNetwork.connect('testprofile', 'businessNetworkIdentifier', 'WebAppAdmin', 'DJY27pEnl16d')
geoms (Wed, 01 Nov 2017 10:58:59 GMT):
connection profile is working when I run the NodeJS app in my local (Ubuntu)
geoms (Wed, 01 Nov 2017 10:59:25 GMT):
I am planning to deploy in Cloud environment (IBM Bluemix)
geoms (Wed, 01 Nov 2017 11:00:22 GMT):
For that purpose, I tried to change the location of the connection profile and places connection.json in my app folder
geoms (Wed, 01 Nov 2017 11:02:10 GMT):
When I reference that location, I am getting error. Looks like it always searches connection profile under /home/user/
geoms (Wed, 01 Nov 2017 11:02:56 GMT):
Is there any option to provide a custom path for connection profile, so that it will work in cloud environment ?
erNail (Wed, 01 Nov 2017 11:24:54 GMT):
So, i just realised, while investigating the data on the fabric chain with Hyperledger Explorer, that transactions are executed when changing the user in the playground. Can anyone elaborate this ?
mahoney1 (Wed, 01 Nov 2017 11:26:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=eWoGLgqqDFubMqmve) @anna have you reviewed this https://stackoverflow.com/questions/45734046/using-passport-http-on-hyperledger-composer-rest-api and the core docs page at https://hyperledger.github.io/composer//integrating/enabling-rest-authentication.html
anna (Wed, 01 Nov 2017 11:54:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rQjJZMnXEkwvLY2SR) @mahoney1, yes, I reviewed the second link and just looked at the first, thank you. The problem is, if I get things right, that _passport-http_ is a local strategy and _loopback-component-passport_ treats it differently (https://github.com/strongloop/loopback-component-passport/blob/3.x-latest/lib/passport-configurator.js#L258): in particular it uses `app.userModel` (line 273) to check auth credentials. So my question is, how can I configure my local credentials so they can be used for cpmposer-rest-server auth?
nickyromeijn (Wed, 01 Nov 2017 12:53:25 GMT):
What javascript interpreter does the transaction engine of composer use?
Jakeeyturner (Wed, 01 Nov 2017 12:54:09 GMT):
@nickyromeijn Duktape I believe
nickyromeijn (Wed, 01 Nov 2017 12:54:54 GMT):
@Jakeeyturner thanks! Is it limited to only deterministic operations? I haven't tested it yet but i would guess so. It would be weird to be able to use random() in a transaction no?
Jakeeyturner (Wed, 01 Nov 2017 12:54:55 GMT):
(go-duktape)
Jakeeyturner (Wed, 01 Nov 2017 12:56:10 GMT):
Yes. As random() will produce a different result for each peer that the transaction gets executed on, so consensus will not be achieved
nickyromeijn (Wed, 01 Nov 2017 12:56:33 GMT):
Ah ofcourse, thanks :)
mrosack (Wed, 01 Nov 2017 12:59:48 GMT):
is it possible to get the previous block hash in the transaction processor? you could use that as a seed as long as what you need the randomness for couldn't be maliciously gamed
Jakeeyturner (Wed, 01 Nov 2017 13:04:50 GMT):
I imagine that would cause issues as well. If a peer gets the last block hash, and in the meantime another block gets added, there might be other peers are a bit slower to execute the code. So, the 'last block hash' received could be different for each peer
Jakeeyturner (Wed, 01 Nov 2017 13:04:50 GMT):
I imagine that would cause issues as well. If a peer gets the last block hash, and in the meantime another block gets added, there might be other peers that are a bit slower to execute the code. So, the 'last block hash' received could be different for each peer
mrosack (Wed, 01 Nov 2017 13:06:00 GMT):
hmm, interesting is a fabric channel not a linked list of blocks?
Jakeeyturner (Wed, 01 Nov 2017 13:07:15 GMT):
I believe so, yes
mrosack (Wed, 01 Nov 2017 13:07:56 GMT):
ok, i guess i'm just having trouble following why the hash would be different, and if it was wouldn't that be a valid consensus issue anyway?
Jakeeyturner (Wed, 01 Nov 2017 13:13:34 GMT):
So with my example, Peer1 gets the latest 'previous hash'. Peer2 also goes to get the latest 'previous hash', but before Peer2 has executed that code, a new block has been added. Peer1 and Peer2 would then both receive different values for their 'previous hash'.
Jakeeyturner (Wed, 01 Nov 2017 13:14:19 GMT):
Maybe Fabric does something to prevent this kind of timing problem, I'm not sure to be honest.
mrosack (Wed, 01 Nov 2017 13:14:48 GMT):
i would assume it would have to, i think in your scenario the channel would be forking
mrosack (Wed, 01 Nov 2017 13:15:14 GMT):
if it doesn't, i'm extremely skeptical about my use of fabric :)
Jakeeyturner (Wed, 01 Nov 2017 13:20:26 GMT):
There may be some kind of 'locking' to prevent that problem, I'm not sure on the specifics. Maybe ask on the #fabric channel if this is a good idea?
mahoney1 (Wed, 01 Nov 2017 13:26:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Jy2nWgGMQrXggkzxJ) @anna Normally, you configure it just as indicated by the second link I sent, but for strategy passport-http and setting up the COMPOSER_PROVIDERS with the values for provider, modules, callback etc etc. I am not entirely sure (mainly because I've not used it) why you are wanting to configure loopback-component-passport independently for Composer REST auth - loopback-component-passport provides Loopback passport integration (which is independent of the configuration you would do for iauthenticating clients with the Composer REST server)
mahoney1 (Wed, 01 Nov 2017 13:26:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Jy2nWgGMQrXggkzxJ) @anna Normally, you configure it just as indicated by the second link I sent, but for strategy _passport-http_ and setting up the COMPOSER_PROVIDERS with the appropriate values eg. for provider, modules, callback etc etc. I am not entirely sure (mainly because I've not used it) why you are wanting to configure loopback-component-passport independently for Composer REST auth - loopback-component-passport provides Loopback passport integration (which is independent of the configuration you would do for iauthenticating clients with the Composer REST server)
mahoney1 (Wed, 01 Nov 2017 13:26:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Jy2nWgGMQrXggkzxJ) @anna Normally, you configure it just as indicated by the second link I sent, but for strategy _passport-http_ and setting up the COMPOSER_PROVIDERS with the appropriate values eg. for provider, modules, callback etc etc. I am not entirely sure (mainly because I've not used it) why you are wanting to configure loopback-component-passport independently for Composer REST auth - loopback-component-passport provides Loopback passport integration (which is independent of the configuration you would do for authenticating clients with the Composer REST server)
anna (Wed, 01 Nov 2017 13:27:27 GMT):
Looks that composer-rest-server does not work for _local_ auth strategies, am I right :(. I made a small hack so that any user will be accepted: created _custom-local-auth.js_: ```const passportLocal = require('passport-local');
const util = require('util');
function CustomStrategy(opts, verify) {
passportLocal.Strategy.call(this, opts, (user, passwd, done) => {
console.log("Auth: ", user);
done(null, user);
});
}
util.inherits(CustomStrategy, passportLocal.Strategy);
module.exports.Strategy = CustomStrategy;``` and I use ```export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "../../../custom-local-auth",
"strategy": "Strategy",
"authScheme": "local",
"authPath": "/auth/local",
"successRedirect": "/explorer",
"session": false
}
}'
``` Now, when I authenticate with _composer-rest-server_, I see my log message 'Auth: myuser', but nothing else happens, subsequent operations fail with "message": "Authorization Required". Any ideas, @mahoney1?
anna (Wed, 01 Nov 2017 13:27:27 GMT):
Looks that composer-rest-server does not work for _local_ auth strategies, am I right :(. I made a small hack so that any user will be accepted: created _custom-local-auth.js_: ```const passportLocal = require('passport-local');
const util = require('util');
function CustomStrategy(opts, verify) {
passportLocal.Strategy.call(this, opts, (user, passwd, done) => {
console.log("Auth: ", user);
done(null, user);
});
}
util.inherits(CustomStrategy, passportLocal.Strategy);
module.exports.Strategy = CustomStrategy;``` and I use ```export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "../../../custom-local-auth",
"strategy": "Strategy",
"authScheme": "local",
"authPath": "/auth/local",
"successRedirect": "/explorer",
"session": false
}
}'
``` Now, when I authenticate with _composer-rest-server_, I see my log message 'Auth: myuser', but nothing else happens, subsequent operations fail with "message": "Authorization Required". Any ideas, @mahoney1?
anna (Wed, 01 Nov 2017 13:27:27 GMT):
Looks that composer-rest-server does not work for _local_ auth strategies, am I right :(? I made a small hack so that any user will be accepted: created _custom-local-auth.js_: ```const passportLocal = require('passport-local');
const util = require('util');
function CustomStrategy(opts, verify) {
passportLocal.Strategy.call(this, opts, (user, passwd, done) => {
console.log("Auth: ", user);
done(null, user);
});
}
util.inherits(CustomStrategy, passportLocal.Strategy);
module.exports.Strategy = CustomStrategy;``` and I use ```export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "../../../custom-local-auth",
"strategy": "Strategy",
"authScheme": "local",
"authPath": "/auth/local",
"successRedirect": "/explorer",
"session": false
}
}'
``` Now, when I authenticate with _composer-rest-server_, I see my log message 'Auth: myuser', but nothing else happens, subsequent operations fail with "message": "Authorization Required". Any ideas, @mahoney1?
t_stephens67 (Wed, 01 Nov 2017 13:29:35 GMT):
I followed the directions in the "Enabling authentication for the REST server" tutorial using my own oauth2orize server and I use the passport-oauth2 strategy and everything worked perfectly :) :) :) :) however when I enable multi-user mode and do the same authorization process then go through the "Enabling multiple user mode for the REST server" tutorial I am getting a 500 enrollment failed error when I try to ping. my CA logs shows failed to get identity sql: no rows in result set.
anna (Wed, 01 Nov 2017 13:42:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FC5ciLC3JADEr6yXR) @mahoney1 I don't configure loopback-component-passport myself. I just look at its code to guess what parameters should I give to _COMPOSER_PROVIDERS_. Simply because I found no more information about it (if you know some doc, please share). My goal is to make _composer_rest_server_ work with auth, but not with github. Github auth is working fine for me, but my managers don't have github :). Why (what is the idea behind) using _passport-github_ strategy as an example? I see no use for it.
anna (Wed, 01 Nov 2017 13:42:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FC5ciLC3JADEr6yXR) @mahoney1 I don't configure loopback-component-passport myself. I just look at its code to guess what parameters should I give to COMPOSER_PROVIDERS. Simply because I found no more information about it (if you know some doc, please share). My goal is to make _composer_rest_server_ work with auth, but not with github. Github auth is working fine for me, but my managers don't have github :). Why (what is the idea behind) using _passport-github_ strategy as an example? I see no use for it.
anna (Wed, 01 Nov 2017 13:42:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FC5ciLC3JADEr6yXR) @mahoney1 I don't configure loopback-component-passport myself. I just look at its code to guess what parameters should I give to COMPOSER_PROVIDERS. Simply because I found no more information about it (if you know some doc, please share). My goal is to make _composer-rest-server_ work with auth, but not with github. Github auth is working fine for me, but my managers don't have github :). Why (what is the idea behind) using _passport-github_ strategy as an example? I see no use for it.
uber.twin (Wed, 01 Nov 2017 13:49:31 GMT):
@mahoney1 hi, could I please get an advise regarding the following error reported by the "composer network start" command. the "composer runtime install" appeared to work fine
```
Error: Error trying to instantiate composer runtime. Error: Error starting container: API error (500): {"message":"Could not attach to network composer_default: rpc error: code = NotFound desc = network composer_default not found"}
```
my connection profile points to a fabric network deployed over a docker swarm
```
...
"orderers": [
{ "url" : "grpc://192.168.99.100:7050" }
],
"ca": { "url": "http://192.168.99.100:7054", "name": "ca.frny.com"},
"peers": [
{
"requestURL": "grpc://192.168.99.100:7051",
"eventURL": "grpc://192.168.99.100:7053"
}
],
...
```
uber.twin (Wed, 01 Nov 2017 13:49:31 GMT):
@mahoney1 hi, could I please get an advise regarding the following error reported by the "composer network start" command. the "composer runtime install" appeared to work fine
```
Error: Error trying to instantiate composer runtime. Error: Error starting container: API error (500): {"message":"Could not attach to network composer_default: rpc error: code = NotFound desc = network composer_default not found"}
```
my connection profile points to a fabric network deployed over a docker swarm of two nodes(myvm1, myvm2)
```
...
"orderers": [
{ "url" : "grpc://192.168.99.100:7050" }
],
"ca": { "url": "http://192.168.99.100:7054", "name": "ca.frny.com"},
"peers": [
{
"requestURL": "grpc://192.168.99.100:7051",
"eventURL": "grpc://192.168.99.100:7053"
}
],
...
```
uber.twin (Wed, 01 Nov 2017 13:52:41 GMT):
here are my Fabric services
uber.twin (Wed, 01 Nov 2017 13:52:46 GMT):
```
njknu3d3rwyz dl_ca_org3_com.1 hyperledger/fabric-ca:x86_64-1.0.0 myvm2 Running Running 59 minutes ago
qn0tzcydk80f dl_ca_org2_com.1 hyperledger/fabric-ca:x86_64-1.0.0 myvm2 Running Running 59 minutes ago
zutlegm6u8ss dl_ca_frny_com.1 hyperledger/fabric-ca:x86_64-1.0.0 myvm1 Running Running 59 minutes ago
cjpaji7nj318 dl_peer0_frny_com.1 hyperledger/fabric-peer:x86_64-1.0.0 myvm2 Running Running 59 minutes ago
woxtobcb1tok dl_couchdb_peer0_org2.1 hyperledger/fabric-couchdb:x86_64-1.0.0 myvm1 Running Running 59 minutes ago
su6w39ec3l2g dl_couchdb_peer0_org1.1 hyperledger/fabric-couchdb:x86_64-1.0.0 myvm2 Running Running 59 minutes ago
s9w4u7d1mlri dl_ca_org1_com.1 hyperledger/fabric-ca:x86_64-1.0.0 myvm1 Running Running 59 minutes ago
9jvvif1rjcws dl_couchdb_peer0_frny.1 hyperledger/fabric-couchdb:x86_64-1.0.0 myvm1 Running Running 59 minutes ago
me9ws04bmfoh dl_peer0_org2_com.1 hyperledger/fabric-peer:x86_64-1.0.0 myvm2 Running Running 59 minutes ago
3vro3leb7kem dl_couchdb_peer0_org3.1 hyperledger/fabric-couchdb:x86_64-1.0.0 myvm1 Running Running 59 minutes ago
cfyctz11dvpk dl_orderer_federalreserve_com.1 hyperledger/fabric-orderer:x86_64-1.0.0 myvm2 Running Running 59 minutes ago
xjzfrc0jw3pr dl_peer0_org1_com.1 hyperledger/fabric-peer:x86_64-1.0.0 myvm1 Running Running 59 minutes ago
jj5hzzhx3avi dl_peer0_org3_com.1 hyperledger/fabric-peer:x86_64-1.0.0 myvm1 Running Running 59 minutes ago
```
maaar1234 (Wed, 01 Nov 2017 13:58:06 GMT):
Has joined the channel.
maaar1234 (Wed, 01 Nov 2017 14:07:10 GMT):
Hi all. I want to have a transaction in which the assets can only be transferred to a specific type of Participants defined as Part2. So I would like to require the program to compare the ID of the new owner given as a input with the register of the participants in Part2. I was thinking of using
return getParticipantRegistry('route.Part2#CandidateNameIntroducedAsInput')
But this is not working because it never finds this candidate. So then I am thinking of doing something like:
return getParticipantRegistry('route.Part2')
.then(function(parts2){
something that compares all the participants in there with mi Part2 introduced by input
}
I would appreciate so much any help!
t_stephens67 (Wed, 01 Nov 2017 14:08:50 GMT):
The CA is giving me Failed to verify certificate: Failed to verify certificate: x509: certificate signed by unknown authority When I try to issue an identity. any reason this might be?
mahoney1 (Wed, 01 Nov 2017 14:12:27 GMT):
@anna - sure, the document provides a parallel example and that was Github and which is perfectly reasonable - will try investigate the equivalent steps for passport-local strategy and try come back to you.
t_stephens67 (Wed, 01 Nov 2017 14:12:53 GMT):
NVM i am dumb
mahoney1 (Wed, 01 Nov 2017 14:13:56 GMT):
@uber.twin - I would check your docker compose files or however you set up your fabric environment, this looks like a networking (-- network composer_default) issue not a Composer issue per se.
anna (Wed, 01 Nov 2017 14:16:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=994ZCDiPpcqTpPwKe) @mahoney1 thank you, meanwhile I think of running some example oath2 server locally and use it for the rest server auth. Can you suggest some passport strategy, other that passport-github, that I should try for this?
razik29 (Wed, 01 Nov 2017 14:33:08 GMT):
Good Morning All. Posting this question here as I use composer rest server. I am trying to have multiple transactions per block. I have noticed in the file 'configtx.yaml' for *'batch timeout = 1s', 'batch size = 10', 'transaction size = 512 KB'*. However fast I tried to do the tranactions (using testing tools such as JMeter), the result it _'one transaction per block'_. I have concluded this result by looking at 'differnt transaction IDs' for differnt transactions and looking at the orderer log (where Block recevied for each transaction done).
I tried increasing the timeout to say 60s, but no change (after restarting the fabric and the composer rest server).
I have a few questions,
1. Is multiple transactions in a single block possible? If so how to achieve this?
2. There is an ambiguity in understanding Block ID and Transaction ID. Could anyone please explain the difference?
3. Modifying the 'configtx.yaml' did not show an effect on the result (restarted the fabric and the composer rest-server). Any one know how to achieve this?
uber.twin (Wed, 01 Nov 2017 14:35:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=m3rPAAL8ztxxy5TQ3) @mahoney1 it seems the error appears when Fabric is trying to instantiate the "dev" container. Is it possible that the docker container instantiation needs to be done differently when in swarm mode? ```2017-11-01 14:29:48.593 UTC [dockercontroller] createContainer -> DEBU 5aa Create container: dev-peer0_frny_com-my-core-network-0.13.1
2017-11-01 14:29:48.655 UTC [dockercontroller] createContainer -> DEBU 5ab Created container: dev-peer0_frny_com-my-core-network-0.13.1
2017-11-01 14:29:48.678 UTC [dockercontroller] Start -> ERRO 5ac start-could not start container: API error (500): {"message":"Could not attach to network composer_default: rpc error: code = NotFound desc = network composer_default not found"}
2017-11-01 14:29:48.678 UTC [container] unlockContainer -> DEBU 5ad container lock deleted(dev-peer0_frny_com-my-core-network-0.13.1)
2017-11-01 14:29:48.678 UTC [chaincode] Launch -> ERRO 5ae launchAndWaitForRegister failed Error starting container: API error (500): {"message":"Could not attach to network composer_default: rpc error: code = NotFound desc = network composer_default not found"}
2017-11-01 14:29:48.678 UTC [endorser] callChaincode -> DEBU 5af Exit
2017-11-01 14:29:48.678 UTC [endorser] simulateProposal -> ERRO 5b0 failed to invoke chaincode name:"lscc" on transaction f1a5de67ba80d530a972db01feed1ce882da7f4d9315745846ba6550ba0962be, error: Error starting container: API error (500): {"message":"Could not attach to network composer_default: rpc error: code = NotFound desc = network composer_default not found"}
2017-11-01 14:29:48.678 UTC [endorser] simulateProposal -> DEBU 5b1 Exit
2017-11-01 14:29:48.678 UTC [lockbasedtxmgr] Done -> DEBU 5b2 Done with transaction simulation / query execution [1010487e-2d8c-49ed-9e4e-072dc2fbc45c]
```
mahoney1 (Wed, 01 Nov 2017 14:36:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Nfh7sDyJTCQEhEejo) @maaar1234 if your modeled transaction has a relationship to your Asset and Participant, you can find the type of participant by using a relationship back to the new owner (ie before updating) - and then see its of 'type Part 2'. eg `if (trans.asset.newOwner.ptype === 'Part2') {
mahoney1 (Wed, 01 Nov 2017 14:48:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=97EztrKoyqnc3nEJ8) @anna hi there so we haven't tested passport-local and it is a lot more involved than the 'conventional' strategies like 'github' or OAUTH2 for example (eg. authentication requests are passed off to an external AUTH provider at the REST client - 'local' is more involved because it means - being local - it has to live on the REST server. OAUTH2 (eg using Google) would be a good one to try out. See thread here -> https://chat.hyperledger.org/channel/composer?msg=D7mbBSWS8xiwR542Q and locally installed using `npm install passport-google-oauth2 -g`
nickyromeijn (Wed, 01 Nov 2017 14:54:00 GMT):
Could someone supply me with some info on how to set up multiple peers on different hosts? I know it's supposed to docker-swarm but would love to see a step-by-step guide on howto
nickyromeijn (Wed, 01 Nov 2017 14:54:00 GMT):
Could someone supply me with some info on how to set up multiple peers on different hosts? I know it's supposed to use docker-swarm but would love to see a step-by-step guide on howto
jeaha (Wed, 01 Nov 2017 14:55:22 GMT):
Has joined the channel.
mahoney1 (Wed, 01 Nov 2017 14:56:28 GMT):
@uber.twin - I would say yes - as mentioned, composer_default is a label for a docker network and clearly this is not available in your setup and may be the result of a docker-compose configuration or start that I'm not privy to. It would appear the docker instantiation would progress, if it knew which network it was attached to :-)
mahoney1 (Wed, 01 Nov 2017 14:57:14 GMT):
@nickyromeijn that is a Fabric question, and you should really ask that on #fabric channel
jeaha (Wed, 01 Nov 2017 14:58:47 GMT):
I'm new to composer and trying to deploy trade sample BNA and I got following error. Any suggestion?
'jeahas-mbp:dist jeaha$ composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString -A admin –S
Deploying business network from archive: my-network.bna
Business network definition:
Identifier: my-network@0.1.11
Description: My Commodity Trading network
✖ Deploying business network definition. This may take a minute...
Error: Serializer.toJSON only accepts instances of Resource.
Command failed
'
anna (Wed, 01 Nov 2017 15:01:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jP6znqHXa6fChLiAX) @mahoney1, thank you for the link. Just one question: why should I pre-register our rest-server on my google account developer apis? This implies that other people will not be able to authenticate, right?
maaar1234 (Wed, 01 Nov 2017 15:06:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5eeGJWKTCuvg87CHh) @mahoney1
Thankyou so much. Actually that was my first idea, and I did something like:
if (trans.newOwner !== 'root.Part2'){throw new Error ...}
Having into account that Part2 is a specific type of participant, defined as a Extension of the general one. I'm not sure if this idea of comparing one ID (trans.newOwner) with all the IDs in a register (in root.Part2) can be made by this if. Any idea?
Thank you!!
maaar1234 (Wed, 01 Nov 2017 15:07:17 GMT):
PD.That solution is not working.
razik29 (Wed, 01 Nov 2017 15:12:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EmdLy3oQ9Zv6LzyHB) Even if I increased the 'batch timeout = 60s', 'batch size = 100', 'max transaction size = 1 MB', in the 'configtx.yaml', I still see a block created for each transaction opposed to creating a single block with multiple txs. .
razik29 (Wed, 01 Nov 2017 15:12:49 GMT):
transaction_per_block.png
razik29 (Wed, 01 Nov 2017 15:14:27 GMT):
Can anyone please explain what should I do to have 'multiple txs' in a 'single block'?
mkopeck (Wed, 01 Nov 2017 15:54:40 GMT):
Has left the channel.
kayadhami (Wed, 01 Nov 2017 15:59:23 GMT):
Has joined the channel.
jsg007 (Wed, 01 Nov 2017 16:13:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZrLQokvu8Pu5xF77u) @mahoney1 Thanks for showing your interest. Yes, I can see the owner as "resource:org.acme.sample.SampleParticipant#participantId:P001".
jsg007 (Wed, 01 Nov 2017 16:18:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ENiccGAMxQGbXK2LE) I am facing issues while putting the conditions between participant owners and their owned asset as given in the docs
condition: (r.owner.getIdentifier() === p.getIdentifier())
But this condition is not holding true since a few days. Can anyone confirm if its working fine for them? I have tried with the provided sample networks as well as my own.
mahoney1 (Wed, 01 Nov 2017 16:20:15 GMT):
@razik29 - it depends on many factors which is not subject matter for this #composer channel - this is best asked on #fabric channel - but I can say to see the deep dive here http://hyperledger-fabric.readthedocs.io/en/latest/arch-deep-dive.html and in particular block formation
mahoney1 (Wed, 01 Nov 2017 16:20:15 GMT):
@razik29 - it depends on many factors which is not subject matter for this #composer channel - this is best asked on #fabric channel if you want to pursue the thread there (or review the history of such a question in the searchbar) - but I can say to see the deep dive here http://hyperledger-fabric.readthedocs.io/en/latest/arch-deep-dive.html and in particular block formation
mahoney1 (Wed, 01 Nov 2017 16:22:05 GMT):
@jsg007 and what version of composer / composer-playground are you using ?
jsg007 (Wed, 01 Nov 2017 16:27:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=npsiYxYKJzNQnvyrg) @mahoney1 Playground v0.14.2
razik29 (Wed, 01 Nov 2017 16:29:35 GMT):
Thanks for your reply @mahoney1 . I will surely have a look at the deep dive. I already asked this question on #fabric and the answer was 'depends on the chaincode' for ex. https://github.com/hyperledger/fabric-samples/blob/release/balance-transfer/app/invoke-transaction.js#L121. But I used the composer documentation to stand up the network (We built our system on top of composer-sample-networks\packages\basic-sample-network) so no coding involving 'invoke-chaincode'. That's the reason I posted here to get views from the composer users.
raduciobanu (Wed, 01 Nov 2017 16:41:43 GMT):
Hi guys
raduciobanu (Wed, 01 Nov 2017 16:42:00 GMT):
I was trying to issue an identity for a new participant in my network using the composer identity issue command
raduciobanu (Wed, 01 Nov 2017 16:42:14 GMT):
and the PeerAdmin default identity
raduciobanu (Wed, 01 Nov 2017 16:42:36 GMT):
but I'm getting a 400 error message 'Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]'
raduciobanu (Wed, 01 Nov 2017 16:42:58 GMT):
any ideas why this is not working?
raduciobanu (Wed, 01 Nov 2017 16:43:13 GMT):
PeerAdmin is the only identity right now in my network
nickyromeijn (Wed, 01 Nov 2017 16:45:13 GMT):
Is it possible to automatically resolve relations with the rest server?
jinvanstee (Wed, 01 Nov 2017 16:54:12 GMT):
recorded
mahoney1 (Wed, 01 Nov 2017 16:54:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BTRecLkr7yBzvnkG9) @anna you're setting up/registering it as an OAuth2 client - when the user identity comes to authenticate using a REST client it will ask for consent and use that service. Your REST client (separate to the REST server) will use a specific identity to make the REST API calls once it has an auth token
mahoney1 (Wed, 01 Nov 2017 16:58:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jnFizDpkrQMDijASM) @srikanthanthargam did you put double quotes " " around your `-a` parameter.. Not least, if its Linux, # begins a comment..
mahoney1 (Wed, 01 Nov 2017 16:59:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vrESzPyjtPzSu8vym) @krupabathia you mean in Playground - its a known issue - just do CTRL and - (minus) to reduce until you see it...
anna (Wed, 01 Nov 2017 17:03:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pifnYdDx9w6zo5CZo) @mahoney1 I mean, from my user experience, when some web site wants to authenticate using, say, my Google account, I do not need to pre-register it manually. Why do I need pre-register here?
mahoney1 (Wed, 01 Nov 2017 17:21:57 GMT):
@anna suggest you read more on OAUTH2 here -> https://developers.google.com/identity/protocols/OAuth2 - I'm not saying you need to pre-register your user account manually.
mahoney1 (Wed, 01 Nov 2017 17:21:57 GMT):
@anna suggest you read more on OAUTH2 here -> https://developers.google.com/identity/protocols/OAuth2 - I'm not saying you need to pre-register your user account manually. Also see the info about OAUTH2 in the docs https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
ajp (Wed, 01 Nov 2017 17:30:52 GMT):
@anna When a website wants to allow users to authenticate using their Google account, they must register an app with Google which gives them a client ID and client secret. They use these values when setting up the google authentication on their website. Now, when a user comes along, the user doesn't need to pre-register anything, but the website must specify "this user is being authenticated to this app" and provides the client ID and secret. You are registering an app because you are setting up a website which will allow users to log in using their google account, if that makes sense.
t_stephens67 (Wed, 01 Nov 2017 17:44:17 GMT):
anybody had this problem 2017/11/01 17:37:09 [DEBUG] DB: Get certificate by serial (36cd59de301a7894c170cf0619930307) and aki (9aea36b3cdcb8f28ca4f69e4f714ab35bd0dbec8ad061c34c8655aaf3c05bfb6)
t_stephens67 (Wed, 01 Nov 2017 17:44:34 GMT):
2017/11/01 17:37:09 [ERROR] No certificates found for provided serial and aki
t_stephens67 (Wed, 01 Nov 2017 17:45:04 GMT):
these are from the CA when we are trying to issue an identity through the rest server
mahoney1 (Wed, 01 Nov 2017 17:53:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vcbz6hbZYYnotFcij) @raduciobanu try admin -> https://hyperledger.github.io/composer/managing/identity-issue.html
E.Gutarra.Tibco (Wed, 01 Nov 2017 18:33:40 GMT):
Hi all, Where would I find the chaincode in the peer docker process, after deplying it using hyperledger composer?
E.Gutarra.Tibco (Wed, 01 Nov 2017 18:34:16 GMT):
$ docker exec -it dev-peer0.org1.example.com-minihealthcare-network-0.14.0 bash
root@3f271f08e8e2:/# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
cbf (Wed, 01 Nov 2017 18:52:25 GMT):
I'm trying to track down where the source for hyperledger.github.io/composer is hidden
cbf (Wed, 01 Nov 2017 18:52:32 GMT):
@sstone1 ^^
sstone1 (Wed, 01 Nov 2017 18:54:08 GMT):
@cbf source for website is here:
https://github.com/hyperledger/composer/tree/master/packages/composer-website
build (using jekyll) pushes output to gh-pages branch:
https://github.com/hyperledger/composer/tree/gh-pages
ScottMorris (Wed, 01 Nov 2017 20:10:59 GMT):
hey, I'm trying to make a query to the REST API to a _queries_ endpoint and it isn't letting me specify the access token using the `?access_token=xxxx` query param. It returns back an error message. If I call the `system/ping` endpoint with the `access_token` param it works as expected. I'm assuming this is a bug with the _queries_ endpoints as they are assuming that GET query parameters are query parameters? The error I get from using the `access_token` param is,
```
Error trying to query chaincode. Error: chaincode error (status: 500, message: Error: No parameters should be specified for this query)
```
ScottMorris (Wed, 01 Nov 2017 20:10:59 GMT):
hey, I'm trying to make a query to the REST API to a _queries_ endpoint and it isn't letting me specify the access token using the `?access_token=xxxx` query param. It returns back an error message. If I call the `system/ping` endpoint with the `access_token` param it works as expected. I'm assuming this is a bug with the _queries_ endpoints as they are assuming that GET query parameters are query parameters? The error I get from using the `access_token` param is, ```
Error trying to query chaincode. Error: chaincode error (status: 500, message: Error: No parameters should be specified for this query)
```
andreasp1994 (Wed, 01 Nov 2017 20:14:57 GMT):
Hey all. I want to ask a question regarding the composer. I have read the architecture but I didn't fully understand what I am looking for. I was wondering.... are events kept on the ledger as well along with transactions? Or they are just disappeared after they are emmited?
cbf (Wed, 01 Nov 2017 20:54:03 GMT):
@sstone1 thanks!
aneb (Thu, 02 Nov 2017 01:29:24 GMT):
@ScottMorris Does it also fail when you send the access token with the http header instead of as query parameter? X-Access-Token header.
ramyamandava (Thu, 02 Nov 2017 01:41:13 GMT):
Hi. I'm getting the following error while after deploying BNA file on external/remote fabric
ramyamandava (Thu, 02 Nov 2017 01:41:15 GMT):
[Composer] Error -> ERRO 006 @JS : IdentityManager :validateIdentity() Error: The current identity must be activated (ACTIVATION_REQUIRED)
ramyamandava (Thu, 02 Nov 2017 01:42:40 GMT):
What can I do ?
labcoinpoc (Thu, 02 Nov 2017 01:46:02 GMT):
@t_stephens67 I met the same problem. my solution is before starting composer rest server, delete the admin(Not PeerAdmin which used to deploy network definition) cert and keys in /home/.composer-credentials. when rest server start, it will make new cert and keys for admin, then the issue command works fine in my server.
labcoinpoc (Thu, 02 Nov 2017 01:46:02 GMT):
@t_stephens67 I met the same problem. my solution is before starting composer rest server, delete the admin(Not PeerAdmin which used to deploy network definition) cert and keys in /root/.composer-credentials. when rest server start, it will make new cert and keys for admin, then the issue command works fine in my server.
labcoinpoc (Thu, 02 Nov 2017 02:12:49 GMT):
I have a confusing question, I noticed that many developers use composer api in their applications. I am now using composer rest server and building web app just by calling the rest api. My question is: if use composer api in app, does it mean creating a customized composer rest server rather than use the composer rest server project? Or there are some scenarios that need to use composer api and rest api both?
raduciobanu (Thu, 02 Nov 2017 05:16:43 GMT):
@mahoney1 I tried that one as well but I get this error message: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
Command failed
raduciobanu (Thu, 02 Nov 2017 05:17:24 GMT):
composer identity list only displays the PeerAdmin identity so that error makes sense
raduciobanu (Thu, 02 Nov 2017 05:17:49 GMT):
but I'm still not able to issue an identity
raduciobanu (Thu, 02 Nov 2017 05:18:53 GMT):
so composer identity issue using PeerAdmin gives me this error "Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]"
raduciobanu (Thu, 02 Nov 2017 05:20:02 GMT):
note: I'm using composer v0.14.1
jarvis26 (Thu, 02 Nov 2017 06:37:18 GMT):
Hi...while deploying my bna file onto my fabric network, I am getting the following error: ```✖ Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying install composer runtime. Error: chaincode error (status: 500, message: Error installing chaincode code my-network:0.14.2(open /var/hyperledger/production/chaincodes/my-network.0.14.2: no such file or directory))
Command failed
``` Could anybody please help. Thanks.
username343 (Thu, 02 Nov 2017 07:26:03 GMT):
how are the new identities enrolled in composer, after issuing the id username and secret?
jschulte0511 (Thu, 02 Nov 2017 07:32:13 GMT):
Has joined the channel.
lclclc (Thu, 02 Nov 2017 07:33:06 GMT):
I am setting-up a brand-new example network base on e2e test, and composer deployed business network successfully. When I tried to run composer-rest-server, I get this: ```Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca_peerOrg1' does not exist"}]]```
lclclc (Thu, 02 Nov 2017 07:33:54 GMT):
Clipboard
lclclc (Thu, 02 Nov 2017 07:34:13 GMT):
Actually this "ca_peerOrg1" is running now.
lclclc (Thu, 02 Nov 2017 07:34:51 GMT):
my connection-profile is: ```{
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://0.0.0.0:7050" },
{ "url" : "grpc://0.0.0.0:8050" },
{ "url" : "grpc://0.0.0.0:9050" }
],
"ca": { "url": "http://0.0.0.0:7054",
"name": "ca_peerOrg1"
},
"peers": [
{
"requestURL": "grpc://0.0.0.0:7051",
"eventURL": "grpc://0.0.0.0:7053"
},
{
"requestURL": "grpc://0.0.0.0:8051",
"eventURL": "grpc://0.0.0.0:8053"
}
],
"keyValStore": "/Users/magicliang/.composer-credentials",
"channel": "mychannel",
"mspID": "Org1MSP",
"timeout": "300"
}```
lclclc (Thu, 02 Nov 2017 07:35:31 GMT):
Why does composer-rest-server not recognize the ca node?
labcoinpoc (Thu, 02 Nov 2017 07:37:51 GMT):
in your log the ca_peeOrg1 port mapping in 7053?
lclclc (Thu, 02 Nov 2017 07:38:55 GMT):
The error log is here: ```Discovering types from business network definition ...
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca_peerOrg1' does not exist"}]]
It will be retried for the next request.
Exception: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca_peerOrg1' does not exist"}]]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca_peerOrg1' does not exist"}]]
at client.getUserContext.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:302:34)
at process._tickCallback (internal/process/next_tick.js:109:7)```
lclclc (Thu, 02 Nov 2017 07:39:08 GMT):
I don't see a 7053 here
lclclc (Thu, 02 Nov 2017 07:39:24 GMT):
docker ps shows: ```e31832dc07f8 hyperledger/fabric-ca "sh -c 'fabric-ca-..." 13 minutes ago Up 13 minutes 0.0.0.0:7054->7054/tcp ca_peerOrg1```
labcoinpoc (Thu, 02 Nov 2017 07:40:17 GMT):
oh, 7053 is peer0 , sorry...
lclclc (Thu, 02 Nov 2017 07:41:01 GMT):
Any idea will be appreciated
labcoinpoc (Thu, 02 Nov 2017 07:47:38 GMT):
in my setting file I use localhost instead of 0.0.0.0 , are they different?
lclclc (Thu, 02 Nov 2017 07:48:00 GMT):
no actually
lclclc (Thu, 02 Nov 2017 07:48:35 GMT):
trying to use 0.0.0.0 is to confront with docker ps result.
lclclc (Thu, 02 Nov 2017 07:57:00 GMT):
I don't understand why the ca server is running there, and can be telnet, but the rest-composer can not touch it.
davidkel (Thu, 02 Nov 2017 08:18:02 GMT):
@lclclc look at the logs for your ca, it's probably because the name of the ca is not ca_peerOrg1. Name doesn't refer to the the hostname, it refers to the name defined by the ca server itself.
lclclc (Thu, 02 Nov 2017 08:18:36 GMT):
Then the docker ps is cheating me?
lclclc (Thu, 02 Nov 2017 08:18:45 GMT):
Can docker inspect help find real name?
lclclc (Thu, 02 Nov 2017 08:18:56 GMT):
Or docker-compose file can help?
davidkel (Thu, 02 Nov 2017 08:19:31 GMT):
@lclclc docker ps shows the hostname
lclclc (Thu, 02 Nov 2017 08:20:09 GMT):
if I am the designer of this e2e network, I would make them consistent with each other.
lclclc (Thu, 02 Nov 2017 08:20:23 GMT):
Otherwise it is misleading.
lclclc (Thu, 02 Nov 2017 08:22:08 GMT):
Oh, I use the inspect command and found this: ``` "Env": [
"FABRIC_CA_SERVER_TLS_ENABLED=false",
"FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem",
"FABRIC_CA_SERVER_CA_NAME=ca-org1",
"FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/7be6f227d8b0fcc6bc7e97a416e6d5e6ef20c18225d24de992591cb65e8beca0_sk",
"FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server",
"no_proxy=*.local, 169.254/16",
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
],```
lclclc (Thu, 02 Nov 2017 08:22:21 GMT):
ca-org1 should be the correct name
davidkel (Thu, 02 Nov 2017 08:39:17 GMT):
@jarvis26 never seen that error before when attempting to install chaincode. Suggest you try one of the fabric channels as this is an error reported by the fabric
mahoney1 (Thu, 02 Nov 2017 10:25:22 GMT):
@andreasp1994 events emitted by transactions (identified by transaction id) are recorded in the Historian registry as part of the Historian record (on the ledger) for the business network
mahoney1 (Thu, 02 Nov 2017 10:46:37 GMT):
@razik29 np, that's cool
mahoney1 (Thu, 02 Nov 2017 10:50:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=C3TwP4n8pgSBnFjBk) @jarvis26 can you post your deploy command and also provide a docker ps of your Fabric environment
MeenakshiSingh (Thu, 02 Nov 2017 10:56:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=giGPhZEcRkJizMD9r) @mahoney1 `composer network deploy -a my-network.bna -p org2 -i Org2PeerAdmin -s adminpw`
MeenakshiSingh (Thu, 02 Nov 2017 10:56:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=giGPhZEcRkJizMD9r) @mahoney1 `composer network deploy -a my-network.bna -p org2 -i Org2PeerAdmin -s adminpw` Also, docker ps lists this:;
MeenakshiSingh (Thu, 02 Nov 2017 10:57:27 GMT):
Clipboard - November 2, 2017 4:27 PM
dselman (Thu, 02 Nov 2017 11:10:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=J9L9zpqztRa8g3CFJ) @nickyromeijn yes, pass the `resolve=true` flag. Search on StackOverflow for the details.
argman (Thu, 02 Nov 2017 12:20:04 GMT):
Hello!
Maybe it's quite stupid question, but I've stuck with it. I enable multiple user mode for the REST server with github-passport (from tutorial), and I can see token at the top of the REST page. Can you explain how can I get token with Angular 2 application (from dev tutorial) for using REST API?
t_stephens67 (Thu, 02 Nov 2017 12:42:57 GMT):
@argman its saved as a cookie
gregnotso (Thu, 02 Nov 2017 12:46:47 GMT):
is there a way to run the full composer stack on a Windows 10 machine? if not, what is the biggest hurdle to do that?
mahoney1 (Thu, 02 Nov 2017 13:17:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=2FHNfXawePG8DtLEb) @argman see this link -> https://github.com/hyperledger/composer/issues/142#issue inline (specifically comments from Aug 18) - you would need to specify an additional option to your HTTP client to pass the cookies to the REST server (the access token is stored in a cookie in the users web browser.). So, using the Angular HTTP client, as an example, you add the withCredentials flag, ` this.http.get('http://localhost:3000/api/MyAsset', { withCredentials: true })`
mahoney1 (Thu, 02 Nov 2017 13:22:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XMu5rgWoFWrm2PTHJ) @gregnotso hi there, not at this time, but we have a dependency on Fabric for that as well of course - we have captured an issue for this https://github.com/hyperledger/composer/issues/65 and you can see the full discussion there
gregnotso (Thu, 02 Nov 2017 13:53:05 GMT):
@mahoney1 from that thread it's not clear if anyone is working the issue #65 or what the delivery date would be or am i missing something?
argman (Thu, 02 Nov 2017 13:59:10 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jW5oSo4YphihBE8qy) @mahoney1 I understand how to use this token with Angular app. But how can I get this token without checking REST API? For example my user can't check view of REST API, but can use it only via Angular. Should I change callback URL to my Angular app or something else?
uber.twin (Thu, 02 Nov 2017 14:08:06 GMT):
@mahoney1 hi, it seems the default definitions for the client app connections (config/default.json) is loaded with
```require('config')```
I'm sure this is really basic, what would take to load an alternative connection definition file like the "config/playground.json" for example
uber.twin (Thu, 02 Nov 2017 14:10:05 GMT):
I tried ```require('config/playground.json')``` but it doesn't work
davidkel (Thu, 02 Nov 2017 14:10:11 GMT):
@gregnotso Windows support is not being looked at for the moment, but there are lots of issues around it making it difficult to create a completely seamless composer experience. Some people have had success using git bash and also WSL but they also introduce some other issues. There is no outlook for when we will support windows in some sort of hybrid native way.
ScottMorris (Thu, 02 Nov 2017 14:16:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EqHtqircNmyfCmMzR) @aneb it works with the Auth Header
mahoney1 (Thu, 02 Nov 2017 14:17:43 GMT):
@argman - sure - you can see answers here https://stackoverflow.com/questions/18456379/github-basic-authentication-using-angularjs and here for using Github auth https://developer.github.com/apps/building-integrations/setting-up-and-registering-oauth-apps/about-authorization-options-for-oauth-apps/
mahoney1 (Thu, 02 Nov 2017 14:28:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pmfPh2Ye3JnMqJXd5) @gregnotso not missing something - due to other dependencies, we don't have a delivery date / outline for that, as of yet.
mbwhite (Thu, 02 Nov 2017 14:34:31 GMT):
@uber.twin the `config` module is a 3rd party npm module that the sample application use for convenience. It's not part of Composer and it's the apps choice how it wants to handle it's config.... please check out the docs on config https://www.npmjs.com/package/config
uber.twin (Thu, 02 Nov 2017 14:40:51 GMT):
@mbwhite thank you
andreasp1994 (Thu, 02 Nov 2017 15:12:16 GMT):
Hey everyone, I am trying to do some modifications in the composer.sh script. However when I save the script the PAYLOAD gets corrupted and teh script doesn't work. Any workarounds for that?
andreasp1994 (Thu, 02 Nov 2017 15:15:04 GMT):
Okay ignore my last message.. problem is solved... vim seems to handle the script better than common IDEs ;)
sstone1 (Thu, 02 Nov 2017 16:25:14 GMT):
@here we've released Hyperledger Composer v0.14.3 w/ improved file handling in playground and a better historian view! 🎉 https://github.com/hyperledger/composer/releases/tag/v0.14.3
PradeepKunche (Thu, 02 Nov 2017 16:25:32 GMT):
Has joined the channel.
PradeepKunche (Thu, 02 Nov 2017 16:25:48 GMT):
hi every one
PradeepKunche (Thu, 02 Nov 2017 16:27:54 GMT):
Can any one help me with some understanding on consensus how this validation will be done in composer while implementing blockchain application
mahoney1 (Thu, 02 Nov 2017 17:38:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=x8q2p2rGAJA267utR) @PradeepKunche Consensus is done at a Fabric level - Composer uses Fabric as its underlying blockchain infastructure and includes the usage of endorsement policies to dictate which specific members must endorse a certain transaction class. Composer doesn't have it's own concept of consensus per se. As Composer interacts with Hyperledger Fabric, it is subject to the same policies as any other deployed chaincode so will be subject to whatever consensus implementation is being utilized by the underlying Fabric.Furthermore there are different types of pluggable consensus, that are supported - by Fabric.
andreasp1994 (Thu, 02 Nov 2017 18:55:26 GMT):
Hey how can I list the registries from the composer-cli if I have deployed a network from playground??
andreasp1994 (Thu, 02 Nov 2017 18:55:45 GMT):
I mean what is the admin's enrollment secret
andreasp1994 (Thu, 02 Nov 2017 18:55:50 GMT):
so I can use it in the command line
BrianOtieno (Thu, 02 Nov 2017 19:07:06 GMT):
Hello Guys,
BrianOtieno (Thu, 02 Nov 2017 19:08:49 GMT):
Could anyone help me define the stucture of my composer network manually i.e. determining to have 2 peers instead of the default 1 assigned by ./createComposerProfile.sh. I have tried re-editing the connection.js file to no avail. Thanks in advance.
andreasp1994 (Thu, 02 Nov 2017 19:49:51 GMT):
Hey guys I am on Mac running playground. However I get an error that playground cant find the connection profile but it looks in /home/.composer-connection-profiles/... instead of /Users/Andreas/.composer-connection-profiles/...
andreasp1994 (Thu, 02 Nov 2017 19:49:56 GMT):
Any ideas how to fix that?
ykcai (Thu, 02 Nov 2017 19:58:20 GMT):
Have there been any known race conditions when you try to update an Asset/Participant from two different transactions at the same time?
TheBean (Thu, 02 Nov 2017 20:26:15 GMT):
Has joined the channel.
andreasp1994 (Thu, 02 Nov 2017 20:35:58 GMT):
@sstone1 I had a problem with v0.14.3 that I didn't have with v0.14.2 ... is there a chance that is a bug??
nickyromeijn (Thu, 02 Nov 2017 20:59:57 GMT):
Does anyone know if it's possible to automatically resolve relationships with the rest server?
jeffgarratt (Fri, 03 Nov 2017 00:52:30 GMT):
@ykcai the underlying fabric incorporates an MVCC mechanism to disallow this. Are you seeing something that is concerning?
ykcai (Fri, 03 Nov 2017 02:51:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=StHdKw6DifhQuyRQH) @jeffgarratt Yes I had two transactions updating a single Participant at the same time and one overwrote the other :/ I will try again to make sure it wasnt my eyes playing tricks
raduciobanu (Fri, 03 Nov 2017 06:28:33 GMT):
@mahoney1 I figured out the identity issue problem. When deploying the BNA, I didn't add the -A admin -S parameters which set the admin identity as network admin
raduciobanu (Fri, 03 Nov 2017 06:28:33 GMT):
@mahoney1 I figured out the identity issue problem. When deploying the BNA, I didn't add the -A admin -S parameters which set the admin identity as network admin and I think PeerAdmin doesn't have issuer capabilities.
raduciobanu (Fri, 03 Nov 2017 06:28:53 GMT):
Now I was able to perform all commands using the admin/adminpw credentials
raduciobanu (Fri, 03 Nov 2017 06:28:53 GMT):
Now I did and I was able to perform all commands using the admin/adminpw credentials
raduciobanu (Fri, 03 Nov 2017 06:28:53 GMT):
Now I did and I was able to perform all commands using the admin/adminpw credentials, including issuing a new identity for a participant.
raduciobanu (Fri, 03 Nov 2017 06:28:53 GMT):
Now I did and I was able to perform all commands using the admin/adminpw credentials, including issuing a new identity for a participant. That part is probably quite easy to miss in the tutorial. Maybe we can add a section to emphasize this.
raduciobanu (Fri, 03 Nov 2017 06:30:16 GMT):
Are these admin/adminpw credentials hard-coded or how does the system know about them?
raduciobanu (Fri, 03 Nov 2017 06:38:31 GMT):
I think I found my answer in the composer-admin repo, adminconnection.js file
prmdmshra (Fri, 03 Nov 2017 07:28:04 GMT):
How do we start composer locally on http://localhost:8080
I already have the composer installed and am currently using the following command everytime to start the composer. Please advice.
curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash
raduciobanu (Fri, 03 Nov 2017 07:38:07 GMT):
@prmdmshra that command will download and setup fabric and composer playground. there's a bunch of docker containers that you should see running
raduciobanu (Fri, 03 Nov 2017 07:38:35 GMT):
you don't need to start composer unless you stop those containers
raduciobanu (Fri, 03 Nov 2017 07:38:35 GMT):
you don't need to start composer playground unless you stop those containers
raduciobanu (Fri, 03 Nov 2017 07:38:35 GMT):
You should see this message after you run that command: "Please use 'composer.sh' to re-start, and 'composer.sh stop' to shutdown all the Fabric and Composer docker images"
raduciobanu (Fri, 03 Nov 2017 07:38:35 GMT):
You should see this message after you run that command: "Please use 'composer.sh' to re-start, and 'composer.sh stop' to shutdown all the Fabric and Composer docker images"
raduciobanu (Fri, 03 Nov 2017 07:41:58 GMT):
use the second one if you wish to stop the containers and the first one to start them again
username343 (Fri, 03 Nov 2017 08:08:12 GMT):
@BrianOtieno [ ](https://chat.hyperledger.org/channel/composer?msg=Q8XWoYeh8KqpCtGpg) for that you will have to deploy a fabric network of 2 peers and add the information to the composer profile
username343 (Fri, 03 Nov 2017 08:10:32 GMT):
How does the concept of network admin work in multi organization network? How does composer prevent a single party from making any changes to the network after deployment? Is there a provision for signing the network upgrade packages like in case of fabric?
username343 (Fri, 03 Nov 2017 08:11:01 GMT):
How does the concept of network admin work in multi organization network? How does composer prevent a single party from making any changes to the network after deployment? Is there a provision for signing the network upgrade packages like in case of fabric?
username343 (Fri, 03 Nov 2017 08:12:15 GMT):
How does the concept of network admin work in multi organization network? How does composer prevent a single party from making any changes to the network after deployment? Is there a provision for signing the network upgrade packages like in case of fabric?
username343 (Fri, 03 Nov 2017 08:12:31 GMT):
How does the concept of network admin work in multi organization network? How does composer prevent a single party from making any changes to the network after deployment? Is there a provision for signing the network upgrade packages like in case of fabric?
username343 (Fri, 03 Nov 2017 08:13:28 GMT):
How does the concept of network admin work in multi organization network? How does composer prevent a single party from making any changes to the network after deployment? Is there a provision for signing the network upgrade packages like in case of fabric?
username343 (Fri, 03 Nov 2017 08:13:28 GMT):
How does the concept of network admin work in multi organization network? How does composer prevent a single party admin from making any changes to the network after deployment? Is there a provision for signing the network upgrade packages like in case of fabric?
Ryzum (Fri, 03 Nov 2017 08:21:49 GMT):
Hi I want to report than composer payground hosted on IBM mybluemix is broken for me right now. Even on the basic demo when I try to select a transaction the "class" parameter always refers to the first transaction of the list. Here's a screeshot
Ryzum (Fri, 03 Nov 2017 08:21:54 GMT):
Clipboard - 3 novembre 2017 16:21
prmdmshra (Fri, 03 Nov 2017 08:47:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gWMLQSkMJQSQmnypF) @raduciobanu
Could you please elaborate "use the second one if you wish to stop the containers and the first one to start them again"
raduciobanu (Fri, 03 Nov 2017 08:48:07 GMT):
./composer.sh stop
raduciobanu (Fri, 03 Nov 2017 08:48:07 GMT):
./composer.sh stop - to stop them
raduciobanu (Fri, 03 Nov 2017 08:48:22 GMT):
./composer.sh - to restart
prmdmshra (Fri, 03 Nov 2017 08:48:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xLrdgTeKMCzsQAAgv) @raduciobanu
Okk... Thanks a lot :-)
raduciobanu (Fri, 03 Nov 2017 08:49:12 GMT):
just make sure you are in the directory where you downloaded those scripts
rthatcher (Fri, 03 Nov 2017 10:00:52 GMT):
@Ryzum - I have seen the same problem and will investigate
davidkel (Fri, 03 Nov 2017 10:03:18 GMT):
@rthatcher I have raised a github issue about it
anna (Fri, 03 Nov 2017 10:06:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jP6znqHXa6fChLiAX) @mahoney1, tha passport-google-oauth2 strategy needs clientId, clientSecret. So I need to register my application (composer-rest-server) in my google account first. And thus other google accounts will not be able to use the rest server. Is there a strategy where every Google/Facebook/Github user may use rest server without the need to register something initially?
anna (Fri, 03 Nov 2017 10:06:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=jP6znqHXa6fChLiAX) @mahoney1, tha passport-google-oauth2 strategy needs clientId, clientSecret. So I need to register my application (composer-rest-server) in my google account first. And thus other google accounts will not be able to use the rest server. Is there a strategy where every Google (Facebook/Github/whatever) user may use rest server without the need to register something initially, just giving their consent when asked.
BrianOtieno (Fri, 03 Nov 2017 10:09:55 GMT):
@username343, thanks for your response. At a high level, you have answered my question. However, I was wondering how to change the ./compose.sh script such that it could do that on the fly without me recreating the network every time I want to run composer. I don't mind having it as my default configuration.[ ](https://chat.hyperledger.org/channel/composer?msg=5pgX5evRmH6Kbtt3C) @username343
raduciobanu (Fri, 03 Nov 2017 10:12:21 GMT):
@BrianOtieno is that development environment you're working on?
raduciobanu (Fri, 03 Nov 2017 10:12:21 GMT):
@BrianOtieno is that a development environment you're working on?
BrianOtieno (Fri, 03 Nov 2017 10:19:34 GMT):
@raduciobanu Yes it is
mahoney1 (Fri, 03 Nov 2017 10:23:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AZzeCAv3ZNJR3jFrZ) @nickyromeijn yes, pass the `resolve=true` flag.
raduciobanu (Fri, 03 Nov 2017 10:31:37 GMT):
@BrianOtieno Looking at those fabric scripts (startFabric.sh, downloadFabric.sh, etc) you probably need to make some changes in the startFabric.sh where the channel is created as well as the docker-compose.yml config where the network components are described
raduciobanu (Fri, 03 Nov 2017 10:31:37 GMT):
@BrianOtieno By looking at those fabric scripts (startFabric.sh, downloadFabric.sh, etc) you probably need to make some changes in the startFabric.sh where the channel is created as well as the docker-compose.yml config where the network components are described
raduciobanu (Fri, 03 Nov 2017 10:32:06 GMT):
I will try that myself soon
raduciobanu (Fri, 03 Nov 2017 10:36:09 GMT):
I'm assuming here that you have downloaded those "fabric-tools" set of scripts to run fabric
BrianOtieno (Fri, 03 Nov 2017 10:37:26 GMT):
@raduciobanu Thanks let me check this out.
mahoney1 (Fri, 03 Nov 2017 10:53:07 GMT):
@anna - ..correct - you need to register first. "..and thus other google accounts will not be able to use the rest server..." - other google account users will be able to authenticate through a REST client ie a browser. All REST API requests made by REST clients use a Blockchain identity (created by composer) and are stored in the clients wallet. You need to turn on multi-user authentication via the -m flag -> https://hyperledger.github.io/composer/integrating/enabling-multiuser.html and then other users can authenticate. Suggest you read https://developers.google.com/identity/protocols/OAuth2WebServer and in particular "Obtaining OAuth 2.0 access tokens" - note where it talks about 'the user' ...and his/her role.
anna (Fri, 03 Nov 2017 12:58:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=D7mbBSWS8xiwR542Q) @jdockter I followed your settings, things work fine, but after users consent and return to the rest server, I get the following error in composer-rest-server: ```Unhandled error for request GET /auth/google/callback?code=4/v...&prompt=none: InternalOAuthError: failed to fetch user profile
at /home/denis/node_modules/passport-google-oauth2/lib/oauth2.js:92:28
at passBackControl (/home/denis/node_modules/oauth/lib/oauth2.js:132:9)
at IncomingMessage.
anna (Fri, 03 Nov 2017 12:58:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=D7mbBSWS8xiwR542Q) @jdockter I followed your settings, things work fine, but after users consent and return to the rest server, I get the following error in composer-rest-server: ```Unhandled error for request GET /auth/google/callback?code=4/v...&prompt=none: InternalOAuthError: failed to fetch user profile
at /home/denis/node_modules/passport-google-oauth2/lib/oauth2.js:92:28
at passBackControl (/home/denis/node_modules/oauth/lib/oauth2.js:132:9)
at IncomingMessage.
anna (Fri, 03 Nov 2017 12:58:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=D7mbBSWS8xiwR542Q) @jdockter I followed your settings, things work fine, but after users consent and return to the rest server, I get the following error in composer-rest-server: ```Unhandled error for request GET /auth/google/callback?code=4/v...&prompt=none: InternalOAuthError: failed to fetch user profile
at /home/denis/node_modules/passport-google-oauth2/lib/oauth2.js:92:28
at passBackControl (/home/denis/node_modules/oauth/lib/oauth2.js:132:9)
at IncomingMessage.
anna (Fri, 03 Nov 2017 12:58:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=D7mbBSWS8xiwR542Q) @jdockter, thanks, Google plus auth works for me!
pravinghuge (Fri, 03 Nov 2017 13:25:56 GMT):
Clipboard - November 3, 2017 6:55 PM
pravinghuge (Fri, 03 Nov 2017 13:26:25 GMT):
anybody facing the problem in https://composer-playground.mybluemix.net/test
nickyromeijn (Fri, 03 Nov 2017 13:33:17 GMT):
@mahoney1 Passing the resolve=true flag as url parameter doesn't do much for me
nickyromeijn (Fri, 03 Nov 2017 13:36:07 GMT):
@mahoney1 Ah had to pass it as filter; however i'm storing json in one of my models and the rest server is throwing a 500 response: ```status: 500, message: Error: Generated invalid JSON```
GouthamKrishna (Fri, 03 Nov 2017 13:36:25 GMT):
Has joined the channel.
GouthamKrishna (Fri, 03 Nov 2017 13:38:27 GMT):
in composer-rest-server how are api generated is the based on functions we have created in script or random api are generated
rthatcher (Fri, 03 Nov 2017 13:44:09 GMT):
@GouthamKrishna - when you run the `composer-rest-server` it inspects the running Business Network on the Fabric and generates a specific REST API for your Network
erNail (Fri, 03 Nov 2017 13:48:50 GMT):
Has anyone here created a fabric-network ? I'm confused about what i have to do before i can use the `deploy` command of composer.
pravinghuge (Fri, 03 Nov 2017 13:56:05 GMT):
how to write a query to search inside a array?
["John","Snow","Dany"
query select_Employee {
description: "select Employee "
statement:
SELECT org.acme.test.Employee
WHERE employee CONTAINS _$EMPLOYEE
}
pravinghuge (Fri, 03 Nov 2017 13:56:05 GMT):
how to write a query to search inside a array?
["John","Snow","Dany","Nirm"]
query select_Employee {
description: "select Employee "
statement:
SELECT org.acme.test.Employee
WHERE employee CONTAINS _$EMPLOYEE
}
pravinghuge (Fri, 03 Nov 2017 13:57:13 GMT):
but CONTAINS gives error while deploying on the local environment is there upgrade in the composer
nickyromeijn (Fri, 03 Nov 2017 14:00:54 GMT):
Im guessing there's something bugging out with recursion and json stringify thats causing the error
pravinghuge (Fri, 03 Nov 2017 14:01:57 GMT):
but is CONTAINS the right method to search inside the array using query
pravinghuge (Fri, 03 Nov 2017 14:02:09 GMT):
@nickyromeijn
nickyromeijn (Fri, 03 Nov 2017 14:02:38 GMT):
Oh i was speaking to @mahoney1 , but yes to your question
BrianOtieno (Fri, 03 Nov 2017 14:13:45 GMT):
Guys, on the new playground, I don't see the "‘Use this Profile" globe. I would like to use it to connect to my connection profile
BrianOtieno (Fri, 03 Nov 2017 14:13:45 GMT):
Guys, on the new playground, I don't see the "‘Use this Profile" globe. I would like to use it to connect to my connection profile. Could anyone provide guidance?
NinadJagtap (Fri, 03 Nov 2017 14:42:47 GMT):
Has joined the channel.
NinadJagtap (Fri, 03 Nov 2017 14:43:48 GMT):
Hello, I am new to composer and trying to install it locally. Does composer work only on Mac and Linux ?
NinadJagtap (Fri, 03 Nov 2017 14:46:36 GMT):
can we install Composer on windows machine :(
davidkel (Fri, 03 Nov 2017 14:47:53 GMT):
@NinadJagtap There are issues with using windows so we don't officially support it, sorry
NinadJagtap (Fri, 03 Nov 2017 14:48:25 GMT):
Thank you David.
mahoney1 (Fri, 03 Nov 2017 14:56:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LBbrS6nD5shcuXFt5) @BrianOtieno hi there you should create a business network id card - see here -> https://hyperledger.github.io/composer/playground/id-cards-playground.html - you can also create one manually (see near the bottom of the page) to import and use for a network already deployed.
nickyromeijn (Fri, 03 Nov 2017 14:57:13 GMT):
@davidkel Do you know when the resolvement of relations actually stop (using the resolve flag @ the rest API)? It seems that circular references : ModelA refers to ModelB & ModelB refers to ModelA ends up in an infinite resolvement loop sometimes. But for some reason this is not always the case? When i retrieve ModelX for example that has a relation to either ModelB or A it doesn't end up in an infinite resolvement loop
nickyromeijn (Fri, 03 Nov 2017 14:57:13 GMT):
@davidkel Do you know when the resolvement of relations actually stop (using the resolve flag @ the rest API)? It seems that circular references : ModelA refers to ModelB & ModelB refers to ModelA ends up in an infinite resolvement loop sometimes. But for some reason this is not always the case? When i retrieve ModelX for example that has a relation to either ModelB or A it doesn't end up in an infinite loop
nickyromeijn (Fri, 03 Nov 2017 15:08:50 GMT):
It's weird because transactions can resolve these relationships just fine, how come it ends up in a recursion loop when using the rest server?
E.Gutarra.Tibco (Fri, 03 Nov 2017 15:43:10 GMT):
When I deploy a business network application to Hyperledger Fabric, where is the network deployed or running... When I list the processes running I see a dev-peer running the chaincode command, but I was expecting to see chaincode files under /opt/*
papaka (Fri, 03 Nov 2017 16:01:03 GMT):
Has joined the channel.
papaka (Fri, 03 Nov 2017 16:02:37 GMT):
I am a newbee... hate to say that off the bat, but true. Have laptop loaded with ubuntu and having a dickens of a time getting hyperledger loaded. Following steps, always end up with something not working. Can someone direct me to good tutorial link to get this accomplished?
rthatcher (Fri, 03 Nov 2017 16:22:19 GMT):
@papaka - assuming you wish to start with Hyperledger *Composer* since this is the Composer channel - then this link should help:
rthatcher (Fri, 03 Nov 2017 16:22:19 GMT):
@papaka - assuming you wish to start with Hyperledger *Composer* since this is the Composer channel - then this link should help:
https://hyperledger.github.io/composer/installing/installing-index.html
ykcai (Fri, 03 Nov 2017 17:11:39 GMT):
Has anyone tried the BusinessNetworkConnection for NodeJS, how do I get the credientaisl from a deployed BNA and save it in my server directory? I am getting `2017-11-03T13:07:32.83-0400 [APP/PROC/WEB/0] ERR (node:62) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]` when I try using the code
```const BusinessNetworkConnection = require("composer-client")
.BusinessNetworkConnection;
this.businessNetworkConnection = new BusinessNetworkConnection();
this.CONNECTION_PROFILE_NAME = "ibm-bc-org1";
this.businessNetworkIdentifier = "giveback";
this.businessNetworkConnection
.connect(
this.CONNECTION_PROFILE_NAME,
this.businessNetworkIdentifier,
"admin",
"adminpwd"
)
.then(result => {
this.businessNetworkDefinition = result;
console.log("BusinessNetworkConnection: ", result);
})```
ykcai (Fri, 03 Nov 2017 17:11:39 GMT):
Has anyone tried the BusinessNetworkConnection for NodeJS, how do I get the credentials from a deployed BNA and save it in my server directory? I am getting `2017-11-03T13:07:32.83-0400 [APP/PROC/WEB/0] ERR (node:62) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]` when I try using the code
```const BusinessNetworkConnection = require("composer-client")
.BusinessNetworkConnection;
this.businessNetworkConnection = new BusinessNetworkConnection();
this.CONNECTION_PROFILE_NAME = "ibm-bc-org1";
this.businessNetworkIdentifier = "giveback";
this.businessNetworkConnection
.connect(
this.CONNECTION_PROFILE_NAME,
this.businessNetworkIdentifier,
"admin",
"adminpwd"
)
.then(result => {
this.businessNetworkDefinition = result;
console.log("BusinessNetworkConnection: ", result);
})```
mahoney1 (Fri, 03 Nov 2017 18:15:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bzw2dGuWvMDJBHeoX) @pravinghuge yes. as in `WHERE stringArray CONTAINS ["stringValue1", "stringValue2", "stringValue3"]` - this is available since release 0.14.2
mahoney1 (Fri, 03 Nov 2017 18:24:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MPLo3J5kDfgQDp4ef) @nickyromeijn hi there, that's interesting. Using the include in the loopback filters is meant to take care of resolving related models (and querying data of related models). If you want to create a Stack Overflow for this with your outputs then someone can take a look at this.
papaka (Fri, 03 Nov 2017 18:41:05 GMT):
@rthatcher Thank you!
kiranarshakota (Fri, 03 Nov 2017 18:50:54 GMT):
Can i create a wallet to handle financial transactions along with assets
anna (Fri, 03 Nov 2017 19:18:06 GMT):
how can I specify expiration time for oauth token for google/facebook/github strategy for composer-rest-server authentication?
papaka (Fri, 03 Nov 2017 19:55:35 GMT):
@rthatcher I basically wiped and started again, So on the page installing dev tools, it says don't use 'sudo' but if I go to installing playground, I have to install some things like CURL. It only shows to install it using SUDO. So not sure what to do at this juncture.
davidkel (Fri, 03 Nov 2017 20:00:00 GMT):
@papaka our recommendation is not to use sudo to install node. using nvm provides an easy way to install and use node which is what we recommend
papaka (Fri, 03 Nov 2017 20:00:38 GMT):
ok so what is the syntax to install at item
davidkel (Fri, 03 Nov 2017 20:15:11 GMT):
Instructions for Mac: https://hyperledger.github.io/composer/installing/prereqs-mac.html
Instructions for Ubuntu: https://hyperledger.github.io/composer/installing/development-tools.html (basically run prereqs-ubuntu.sh.)
papaka (Fri, 03 Nov 2017 20:47:19 GMT):
@davidkel I run the "curl" script and just a line of does shows up, no install; run the chmod line and says cannot access the prereqs-ubuntu.sh. I am confused my friend.
papaka (Fri, 03 Nov 2017 20:47:41 GMT):
@davidkel line of script shows up
papaka (Fri, 03 Nov 2017 21:04:22 GMT):
@davidkel and then if you attempt npm, it says to use sudo apt install npm
dexhunter (Sat, 04 Nov 2017 03:41:44 GMT):
Has joined the channel.
dexhunter (Sat, 04 Nov 2017 09:36:06 GMT):
Can I create some default users (participates) in composer when deploying?
dexhunter (Sat, 04 Nov 2017 09:36:53 GMT):
Can anyone give some example codes? Thanks!
dexhunter (Sat, 04 Nov 2017 09:44:01 GMT):
And how to join in the system as a restricted participant? (since default is admin) Thanks
parags (Sat, 04 Nov 2017 09:52:00 GMT):
Hi folks - how can I point Composer to a custom Fabric? Not the Fabric that Composer itself starts up and connects to, but to another one - say the basic byfn fabric. Is there some documentation already available on this? If yes... can you please point me towards it. Thanks!
davidkel (Sat, 04 Nov 2017 10:18:57 GMT):
@parags Yes you can point to a custom fabric, but unfortunately we don't provide any general documentation on how to do that apart from describing the connection profiles here
https://hyperledger.github.io/composer/reference/connectionprofile.html
and also you will need to import fabric admin identities using
https://hyperledger.github.io/composer/reference/composer.identity.import.html
to allow you to install the composer runtime on peers, and start a business network
bh4rtp (Sat, 04 Nov 2017 11:22:40 GMT):
hi, may i ask a simple question? with composer, need i write chaincode?
bh4rtp (Sat, 04 Nov 2017 11:22:40 GMT):
hi, may i ask a simple question? with composer, need i write chaincode in go?
bh4rtp (Sat, 04 Nov 2017 11:22:40 GMT):
hi, may i ask a simple question? with composer, need i write chaincode in go? normally, to build a fabric network, we need to generate genesis block, channel tx file, docker-composer file, chaincode, and node sdk server, what can composer do for us with these things?
bh4rtp (Sat, 04 Nov 2017 11:22:40 GMT):
hi, may i ask a simple question? with composer, need i write chaincode in go? normally, to build a fabric network, we need to create genesis block, channel tx file, docker-composer file, chaincode, and node sdk server, what can composer do for us with these things?
bh4rtp (Sat, 04 Nov 2017 11:22:40 GMT):
hi, may i ask a simple question? with `composer`, need i write chaincode in go? normally, to build a fabric network, we need to create `genesis block`, `channel` tx file, `docker-composer` file, `chaincode`, and node sdk web server, what can composer do for us with these things?
bh4rtp (Sat, 04 Nov 2017 11:22:40 GMT):
hi, may i ask a simple question? with `composer`, need i write `chaincode` in go? or even more specific, to build a fabric network, we need to create `genesis block`, `channel` tx file, `docker-composer` file, `chaincode`, and node sdk web server, what can composer do for us with these things?
bh4rtp (Sat, 04 Nov 2017 11:22:40 GMT):
hi, may i ask a simple question? with `composer`, need i write `chaincode` in go? or even more specific, to build a fabric network, we need to create `genesis block`, `channel` tx file, `docker-composer` file, `chaincode`, and node sdk web server, what can `composer` do for us with these things?
dexhunter (Sat, 04 Nov 2017 11:32:23 GMT):
hi folks! is there a way to read bna locally?
parags (Sat, 04 Nov 2017 11:37:41 GMT):
Thanks @davidkel ... will give it a try.
varunagarwal (Sat, 04 Nov 2017 11:41:51 GMT):
@dexhunter Technically you write the code in .cto files using an editor like atom and then compile it into .bna. If you want to decompile a bna file into a text editor, composer play ground does it
varunagarwal (Sat, 04 Nov 2017 11:42:33 GMT):
Hey guys, does each participant have to have a certificate?
raduciobanu (Sat, 04 Nov 2017 11:45:32 GMT):
[You don't need to write Go if you use composer. Composer is nice when you want to quickly put together an app in your development environment. I have yet to see how the process looks like when you want to go to production. But with composer you don't need to touch any of those things mentioned by you to have a working app.](https://chat.hyperledger.org/channel/composer?msg=7tpm3qfuyAPDv6tmD) @bh4rtp
raduciobanu (Sat, 04 Nov 2017 11:45:32 GMT):
[You don\'t need to write Go if you use composer. Composer is nice when you want to quickly put together an app in your development environment. I have yet to see how the process looks like when you want to go to production. But with composer you don't need to touch any of those things mentioned by you to have a working app.](https://chat.hyperledger.org/channel/composer?msg=7tpm3qfuyAPDv6tmD) @bh4rtp
raduciobanu (Sat, 04 Nov 2017 11:45:32 GMT):
[You don t need to write Go if you use composer. Composer is nice when you want to quickly put together an app in your development environment. I have yet to see how the process looks like when you want to go to production. But with composer you don't need to touch any of those things mentioned by you to have a working app.](https://chat.hyperledger.org/channel/composer?msg=7tpm3qfuyAPDv6tmD) @bh4rtp
raduciobanu (Sat, 04 Nov 2017 11:45:32 GMT):
[You don t need to write Go if you use composer. Composer is nice when you want to quickly put together an app in your development environment. I have yet to see how the process looks like when you want to go to production. But with composer you don t need to touch any of those things mentioned by you to have a working app.](https://chat.hyperledger.org/channel/composer?msg=7tpm3qfuyAPDv6tmD) @bh4rtp
raduciobanu (Sat, 04 Nov 2017 11:47:22 GMT):
[The BNA archive can be deployed to a running fabric instance or you can use composer playground (online or local installation)](https://chat.hyperledger.org/channel/composer?msg=ikHsJr6oZEPzjLC6Q) @dexhunter
varunagarwal (Sat, 04 Nov 2017 11:50:03 GMT):
@raduciobanu HI, can you help me out? Does every participant need a certificate?
raduciobanu (Sat, 04 Nov 2017 11:51:05 GMT):
[ After you create a participant you need to create an identity as well otherwise you can t do any operations ](https://chat.hyperledger.org/channel/composer?msg=zAqnQ7ohh6QAFJDeF) @varunagarwal
bh4rtp (Sat, 04 Nov 2017 11:51:13 GMT):
@raduciobanu thanks. that makes me clear. but without Go chaincode, how can i uses the sdk and api seamlessly? for example, i want to do complicated query.
varunagarwal (Sat, 04 Nov 2017 11:51:35 GMT):
I thought that was well, but not sure where the identity is created in this example https://github.com/IBM/Decentralized-Energy-Composer
raduciobanu (Sat, 04 Nov 2017 11:52:03 GMT):
[ You can have logic written in JS and a language for queries in Composer. ](https://chat.hyperledger.org/channel/composer?msg=r7NKwGdaAnNcifJzi) @bh4rtp
raduciobanu (Sat, 04 Nov 2017 11:52:03 GMT):
[ You can have logic written in JS and a there is language to describe queries as well in Composer. ](https://chat.hyperledger.org/channel/composer?msg=r7NKwGdaAnNcifJzi) @bh4rtp
raduciobanu (Sat, 04 Nov 2017 11:52:03 GMT):
[ You can have logic written in JS and a there is language to describe queries as well in Composer. See this link for queries: https://hyperledger.github.io/composer/reference/query-language.html ](https://chat.hyperledger.org/channel/composer?msg=r7NKwGdaAnNcifJzi) @bh4rtp
raduciobanu (Sat, 04 Nov 2017 11:55:53 GMT):
[ First you add a participant to the network and then you need to issue an identity for that participant. If you look at the composer REST server there is an enpoint that allows you to do that /identity/issue. ](https://chat.hyperledger.org/channel/composer?msg=ZLPqhRngpek5PMGHJ) @varunagarwal
raduciobanu (Sat, 04 Nov 2017 11:55:53 GMT):
[ First you add a participant to the network and then you need to issue an identity for that participant. If you look at the composer REST server there is an enpoint that allows you to do that /identity/issue. I don't know that app in particular but that's how it works. ](https://chat.hyperledger.org/channel/composer?msg=ZLPqhRngpek5PMGHJ) @varunagarwal
raduciobanu (Sat, 04 Nov 2017 11:57:15 GMT):
I haven't checked that app yet.
varunagarwal (Sat, 04 Nov 2017 12:00:14 GMT):
Thanks, I have been trying to figure out this app. I wanted to see if it uses composer-passport
raduciobanu (Sat, 04 Nov 2017 12:04:35 GMT):
I'm building an app myself, maybe I'll write a tutorial.
bh4rtp (Sat, 04 Nov 2017 12:06:59 GMT):
@raduciobanu what do you mean `I have yet to see how the process looks like when you want to go to production`?
raduciobanu (Sat, 04 Nov 2017 12:10:10 GMT):
@bh4rtp I didn't get to the point where you deploy a Composer app on a production Fabric deployment.
raduciobanu (Sat, 04 Nov 2017 12:11:43 GMT):
All tutorials/examples are using composer/fabric in a development scenario, local deployment.
raduciobanu (Sat, 04 Nov 2017 12:11:55 GMT):
But will get there.
bh4rtp (Sat, 04 Nov 2017 12:12:48 GMT):
@raduciobanu yes. it is the reason why i asked the question.
bh4rtp (Sat, 04 Nov 2017 12:15:51 GMT):
i have taken composer as a deployment tool.
raduciobanu (Sat, 04 Nov 2017 12:16:11 GMT):
well it's not a deployment tool
raduciobanu (Sat, 04 Nov 2017 12:16:39 GMT):
it's sort of a framework built to easily write apps on blockchain
raduciobanu (Sat, 04 Nov 2017 12:16:43 GMT):
it's an abstraction level
raduciobanu (Sat, 04 Nov 2017 12:16:43 GMT):
it's an abstraction level
raduciobanu (Sat, 04 Nov 2017 12:18:11 GMT):
Fabric has SDKs now for Go, Java and also Python I think. You can probably try to just use those directly.
raduciobanu (Sat, 04 Nov 2017 12:19:20 GMT):
But you will also have to build other components like communication over HTTP to be able to access the blockchain from your traditional web app.
raduciobanu (Sat, 04 Nov 2017 12:22:12 GMT):
With composer, you basically have that but you need to install it on every peer I think
raduciobanu (Sat, 04 Nov 2017 12:22:23 GMT):
in real-world deployment scenario
raduciobanu (Sat, 04 Nov 2017 12:22:23 GMT):
in a real-world deployment scenario
bh4rtp (Sat, 04 Nov 2017 12:24:48 GMT):
so composer is most convenient for soc, or technique verification. to develop a blockchain product, maybe direct fabric sdk implementation is preferable. do you think so? @raduciobanu
raduciobanu (Sat, 04 Nov 2017 12:25:18 GMT):
it's definitely helpful for building a prototype fast
raduciobanu (Sat, 04 Nov 2017 12:26:36 GMT):
for a production environment I can't tell yet
raduciobanu (Sat, 04 Nov 2017 12:26:48 GMT):
maybe other people more experience with the system can answer this question
raduciobanu (Sat, 04 Nov 2017 12:26:48 GMT):
maybe other people more experienced with the system can answer this question
bh4rtp (Sat, 04 Nov 2017 12:28:15 GMT):
@raduciobanu thanks!
pancake (Sat, 04 Nov 2017 13:29:35 GMT):
Hi, i think there is an error in doc at https://github.com/hyperledger/blockchain-explorer, the command `mkdir -p ./channel_artifacts` seem should mkdir channel-artifacts rather channel_artifacts, am i right?
pancake (Sat, 04 Nov 2017 13:29:35 GMT):
Hi, i think there is an error in doc at https://github.com/hyperledger/blockchain-explorer, the command `mkdir -p ./channel_artifacts` seem should `mkdir channel-artifacts` rather `channel_artifacts`, am i right?
raduciobanu (Sat, 04 Nov 2017 14:21:26 GMT):
@pancake There's a channel for the blockchain-explorer project. Maybe somebody there knows more it.
raduciobanu (Sat, 04 Nov 2017 14:21:26 GMT):
@pancake There's a channel for the blockchain-explorer project. Maybe somebody there knows more about it.
prmdmshra (Sat, 04 Nov 2017 15:09:28 GMT):
Could you please suggest a theme(simple tool) which I can use on the Angular web skeleton app to make the UI more presentable
mklilley (Sat, 04 Nov 2017 17:54:27 GMT):
Has joined the channel.
varunagarwal (Sat, 04 Nov 2017 17:54:39 GMT):
https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
Hey guys I am reading this. it says the wallet can hold multiple identities. The REST calls are made using the default identity marked in the wallet. what if I want to keep making different API calls using different identities? How do I achieve that?
mklilley (Sat, 04 Nov 2017 18:01:13 GMT):
Hello fellow blockchainers. I am new to the hyperledger world and have been struggling to get going. I first started by trying follow the hyperledger fabric docs but found it quite a tough read. Today I discovered composer which seems to provide a much friendly way to get started. I have been following https://hyperledger.github.io/composer/installing/development-tools.html and everything seems to work fine. I am very curious though as to why I didn't have to install any platform specific binaries like the fabric documentation says to (https://hyperledger-fabric.readthedocs.io/en/latest/samples.html ) E.g. I don#t have things like cryptogen installed on my debian system but I didn't seem to get any errors.
mklilley (Sat, 04 Nov 2017 18:03:18 GMT):
Even more specifically, in the folder fabric-tools/fabric-scripts/hlfv1/composer (this gets created as you following the installation guide) I see files that reference things like cryptogen, e.g. howtobuild.txt
davidkel (Sat, 04 Nov 2017 18:21:47 GMT):
@mklilley
davidkel (Sat, 04 Nov 2017 18:21:47 GMT):
@mklilley we provide a pre-built development fabric network as part of our various installs which provides you with a way to develop against a real fabric
mklilley (Sat, 04 Nov 2017 18:30:32 GMT):
@davidkel thanks for getting back to me so quickly. So do I understand correctly that effectively all the "Generate network artifacts" stuff from https://hyperledger-fabric.readthedocs.io/en/latest/build_network.html has been taken care of already?
davidkel (Sat, 04 Nov 2017 19:08:41 GMT):
@mklilley ours is a simpler fabric network basically consisting of 1 organisation which has 1 peer + couchdb and 1 ca with a solo orderer in it's own organisation and the channel "composerchannel" defined. When you start it up we start up the services and join the peer to the channel. We also have pre-imported the peer/channel identity into composer and call it PeerAdmin we also define the required connection profile to allow composer to interact with the network.
andreasp1994 (Sat, 04 Nov 2017 19:36:17 GMT):
Hey everyone! Can anyone suggest a way to emit messages to only specific participants in the network. In simple words I don't want events to be emitted to everyone. Can this be done with the access control language of composer?
mklilley (Sat, 04 Nov 2017 19:47:15 GMT):
Thanks again @davidkel . One more thing if I may. I'm trying to figure out how to add certificates to participants so that when they interact with the ledger it is more secure than just using the "secret" that gets issued when you first assign an identity to a participant. I am however struggling to understand how these should be generated. the tutorial https://hyperledger.github.io/composer/managing/identity-bind.html says quite generally how one can use the fabric CA, but I must confess looking at the docs for that (http://hyperledger-fabric-ca.readthedocs.io/en/latest/users-guide.html) it is quite difficult to figure things out.
mklilley (Sat, 04 Nov 2017 19:48:49 GMT):
Is there something in the composer API that I missed that connect to the fabric CA to do this?
victors (Sat, 04 Nov 2017 23:25:25 GMT):
Has joined the channel.
victors (Sat, 04 Nov 2017 23:30:16 GMT):
Hi - i'm a newbee to fabric. One question i have is why do we use fabric client SDK and REST server (along with loopback connector) ... when I read it on the websites, they basically have the same purpose.. i.e. REST server generates Api using open Api while fabric SDK also allows developers generate Apis to talk to the fabric. please help
smartapp (Sun, 05 Nov 2017 00:57:17 GMT):
HI, the document suggest ACL can control access to a property in resource, but I don't seem to find any info how to define ACL rules to control this. would appreicate if anyone can advise or point me to documentations. thanks in advance!
smartapp (Sun, 05 Nov 2017 00:57:17 GMT):
HI, the documentation suggests ACL can control access to a property in resource: " Simple rules are used to control access to a namespace, asset or property of an asset". but I don't seem to find any info how to define ACL rules to control this. would appreicate if anyone can advise or point me to documentations. thanks in advance!
ykcai (Sun, 05 Nov 2017 01:46:09 GMT):
I am trying to use BusinessNetworkConnection for NodeJS, but how do I get the credentials from a deployed BNA on playground and save it in my server directory?
I am getting
2017-11-03T13:07:32.83-0400 [APP/PROC/WEB/0] ERR (node:62)
UnhandledPromiseRejectionWarning: Unhandled promise rejection
(rejection id: 1): Error: Error trying login and get user Context.
Error: Error trying to enroll user or load channel configuration.
Error: Enrollment failed with errors
[[{"code":400,"message":"Authorization failure"}]]
when I try using the code
const BusinessNetworkConnection = require("composer-client").BusinessNetworkConnection;
this.businessNetworkConnection = new BusinessNetworkConnection();
this.CONNECTION_PROFILE_NAME = "ibm-bc-org1";
this.businessNetworkIdentifier = "giveback";
this.businessNetworkConnection
.connect(
this.CONNECTION_PROFILE_NAME,
this.businessNetworkIdentifier,
"admin",
"adminpw"
)
.then(result => {
this.businessNetworkDefinition = result;
console.log("BusinessNetworkConnection: ", result);
})
I have a directory /home/vcap/app/.composer-connection-profiles/ibm-bc-org1 with a connection.json file that references /home/vcap/app/.composer-credentials/ibm-bc-org1 for my credentials (which starts with nothing inside). I can use the same code with this.CONNECTION_PROFILE_NAME = "hlfv1" and it will work locally.
The code worked for composer@0.13.2 but since then I moved over to composer@0.14.3. I removed the previous credentials , updated ACL and created a new playground etc. via IBM-container-service scripts. Everything is fresh and clean.
ykcai (Sun, 05 Nov 2017 01:46:09 GMT):
I am trying to use BusinessNetworkConnection for NodeJS, but how do I get the credentials from a deployed BNA on playground and save it in my server directory?
I am getting
```
2017-11-03T13:07:32.83-0400 [APP/PROC/WEB/0] ERR (node:62)
UnhandledPromiseRejectionWarning: Unhandled promise rejection
(rejection id: 1): Error: Error trying login and get user Context.
Error: Error trying to enroll user or load channel configuration.
Error: Enrollment failed with errors
[[{"code":400,"message":"Authorization failure"}]]
```
when I try using the code
```
const BusinessNetworkConnection = require("composer-client").BusinessNetworkConnection;
this.businessNetworkConnection = new BusinessNetworkConnection();
this.CONNECTION_PROFILE_NAME = "ibm-bc-org1";
this.businessNetworkIdentifier = "giveback";
this.businessNetworkConnection
.connect(
this.CONNECTION_PROFILE_NAME,
this.businessNetworkIdentifier,
"admin",
"adminpw"
)
.then(result => {
this.businessNetworkDefinition = result;
console.log("BusinessNetworkConnection: ", result);
})
```
I have a directory /home/vcap/app/.composer-connection-profiles/ibm-bc-org1 with a connection.json file that references /home/vcap/app/.composer-credentials/ibm-bc-org1 for my credentials (which starts with nothing inside). I can use the same code with `this.CONNECTION_PROFILE_NAME = "hlfv1"` and it will work locally.
The code worked for composer@0.13.2 but since then I moved over to composer@0.14.3. I removed the previous credentials , updated ACL and created a new playground etc. via IBM-container-service scripts. Everything is fresh and clean.
ykcai (Sun, 05 Nov 2017 01:46:09 GMT):
I am trying to use BusinessNetworkConnection for NodeJS, but how do I get the credentials from a deployed BNA on playground and save it in my server directory?
I am getting
```
(node:5432) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
```
when I try using the code
```
const BusinessNetworkConnection = require("composer-client").BusinessNetworkConnection;
this.businessNetworkConnection = new BusinessNetworkConnection();
this.CONNECTION_PROFILE_NAME = "ibm-bc-org1";
this.businessNetworkIdentifier = "giveback";
this.businessNetworkConnection
.connect(
this.CONNECTION_PROFILE_NAME,
this.businessNetworkIdentifier,
"admin",
"adminpw"
)
.then(result => {
this.businessNetworkDefinition = result;
console.log("BusinessNetworkConnection: ", result);
})
```
I have a directory /home/vcap/app/.composer-connection-profiles/ibm-bc-org1 with a connection.json file that references /home/vcap/app/.composer-credentials/ibm-bc-org1 for my credentials (which starts with nothing inside). I can use the same code with `this.CONNECTION_PROFILE_NAME = "hlfv1"` and it will work locally.
The code worked for composer@0.13.2 but since then I moved over to composer@0.14.3. I removed the previous credentials , updated ACL and created a new playground etc. via IBM-container-service scripts. Everything is fresh and clean.
ykcai (Sun, 05 Nov 2017 01:46:09 GMT):
I am trying to use BusinessNetworkConnection for NodeJS, but how do I get the credentials from a deployed BNA on playground and save it in my server directory?
I am getting
```
2017-11-04T21:24:40.73-0400 [APP/PROC/WEB/0] ERR (node:55)
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1):
Error: Error trying to ping. Error: Error trying to query business network.
Error: chaincode error (status: 500, message:
Error: The current identity has not been registered: admin)
```
when I try using the code
```
const BusinessNetworkConnection = require("composer-client").BusinessNetworkConnection;
this.businessNetworkConnection = new BusinessNetworkConnection();
this.CONNECTION_PROFILE_NAME = "ibm-bc-org1";
this.businessNetworkIdentifier = "giveback";
this.businessNetworkConnection
.connect(
this.CONNECTION_PROFILE_NAME,
this.businessNetworkIdentifier,
"admin",
"adminpw"
)
.then(result => {
this.businessNetworkDefinition = result;
console.log("BusinessNetworkConnection: ", result);
})
```
I have a directory /home/vcap/app/.composer-connection-profiles/ibm-bc-org1 with a connection.json file that references /home/vcap/app/.composer-credentials/ibm-bc-org1 for my credentials (which starts with nothing inside). I can use the same code with `this.CONNECTION_PROFILE_NAME = "hlfv1"` and it will work locally.
The code worked for composer@0.13.2 but since then I moved over to composer@0.14.3. I removed the previous credentials , updated ACL and created a new playground etc. via IBM-container-service scripts. Everything is fresh and clean.
ykcai (Sun, 05 Nov 2017 01:46:09 GMT):
I am trying to use BusinessNetworkConnection for NodeJS, but how do I get the credentials from a deployed BNA on playground and save it in my server directory?
I am getting
```2017-11-04T21:24:40.73-0400 [APP/PROC/WEB/0] ERR (node:55)
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1):
Error: Error trying to ping. Error: Error trying to query business network.
Error: chaincode error (status: 500, message:
Error: The current identity has not been registered: admin)
```
when I try using the code
```
const BusinessNetworkConnection = require("composer-client").BusinessNetworkConnection;
this.businessNetworkConnection = new BusinessNetworkConnection();
this.CONNECTION_PROFILE_NAME = "ibm-bc-org1";
this.businessNetworkIdentifier = "giveback";
this.businessNetworkConnection
.connect(
this.CONNECTION_PROFILE_NAME,
this.businessNetworkIdentifier,
"admin",
"adminpw"
)
.then(result => {
this.businessNetworkDefinition = result;
console.log("BusinessNetworkConnection: ", result);
})
```
I have a directory /home/vcap/app/.composer-connection-profiles/ibm-bc-org1 with a connection.json file that references /home/vcap/app/.composer-credentials/ibm-bc-org1 for my credentials (which starts with nothing inside). I can use the same code with `this.CONNECTION_PROFILE_NAME = "hlfv1"` and it will work locally.
The code worked for composer@0.13.2 but since then I moved over to composer@0.14.3. I removed the previous credentials , updated ACL and created a new playground etc. via IBM-container-service scripts. Everything is fresh and clean.
davidmd222 (Sun, 05 Nov 2017 02:24:51 GMT):
Has joined the channel.
pancake (Sun, 05 Nov 2017 02:39:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qF2eKdpWWw34fSXG2) @raduciobanu Thanks for your reply, i do enter channel, hah
varunagarwal (Sun, 05 Nov 2017 07:35:53 GMT):
Has anyone understood this part properly? https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
Im having issues in handling multiple identities in one wallet. Could someone link some examples/ help me out abit?
Swiftguy (Sun, 05 Nov 2017 09:13:22 GMT):
Has joined the channel.
Swiftguy (Sun, 05 Nov 2017 09:14:08 GMT):
Hello All, up vote
0
down vote
favorite
Trying to setup demo environment by deploying 'Perishable-Network' under Hyperledger playground.
Encountering following error when we select 'setupdemo' after clicking on 'Submit Transaction' in 'Test' mode.
Swiftguy (Sun, 05 Nov 2017 09:16:11 GMT):
Screen Shot 2017-11-05 at 2.44.45 PM.png
varunagarwal (Sun, 05 Nov 2017 09:27:09 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FarzM6oZHj49tKcoQ) @Swiftguy Two options, one remove the *optional* keyword in the .cto file. Or add a json key value pair saying centrigrade: 20 in the transaction json body
davidkel (Sun, 05 Nov 2017 09:31:56 GMT):
@Swiftguy unfortunately there is a bug in playground currently where the value for the $class property is not set correctly. If you look at the entry in your screenshot you will see it says `org.acme.shipping.perishable.TemperatureReading` but that is the wrong class definition for the SetupDemo transaction. If you look in the .cto file you will see that it's value should be `org.acme.shipping.perishable.SetupDemo`. If you change the value for $class to this, it should work.
Swiftguy (Sun, 05 Nov 2017 09:46:47 GMT):
@VarunMathur @davidkel thanks for responding with possible solutions. Changed the $class property as per @davidkel suggestion. It worked! @davidkel thx again!
VarunMathur (Sun, 05 Nov 2017 09:46:47 GMT):
Has joined the channel.
Swiftguy (Sun, 05 Nov 2017 11:34:59 GMT):
Screen Shot 2017-11-05 at 4.56.21 PM.png
Swiftguy (Sun, 05 Nov 2017 11:34:59 GMT):
Screen Shot 2017-11-05 at 4.56.21 PM.png
davidkel (Sun, 05 Nov 2017 11:57:36 GMT):
@Swiftguy There is an issue looking similar to your problem
https://github.com/hyperledger/composer/issues/2538
Is your problem the same ? If not could you raise an issue and include your cto file
Swiftguy (Sun, 05 Nov 2017 12:15:06 GMT):
@davidkel Probably similar problem but sure nevertheless created a new issue.
davidkel (Sun, 05 Nov 2017 12:18:39 GMT):
@Swiftguy Only thing I can suggest you do is to install playground locally but you need to explicitly download 0.14.2 for now. If you don't want to try to connect to a real fabric, you have a choice of either downloading a docker container or using node/npm to install
Swiftguy (Sun, 05 Nov 2017 12:21:34 GMT):
@davidkel Interested to try the local playground, appreciate if you can point me to an installation instructions page for the same.
davidkel (Sun, 05 Nov 2017 12:23:37 GMT):
The docs for installing playground locally are on our website, but it will install the latest version which will have the same problems you are seeing
davidkel (Sun, 05 Nov 2017 12:25:18 GMT):
So depends on how familiar you are with node/npm/nvm vs docker
bh4rtp (Sun, 05 Nov 2017 12:44:16 GMT):
hi, i have successfully installed `composer-cli`, `composer-rest-server` and `generator-hyperledger-composer`.
run `composer archive create -a dist/decentralized-energy-network.bna --sourceType dir --sourceName .`, it fails with messages:
```The program 'composer' is currently not installed. You can install it by typing:
sudo apt install composer```
how to fix it?
OlavCleemann (Sun, 05 Nov 2017 12:49:45 GMT):
Has joined the channel.
bh4rtp (Sun, 05 Nov 2017 12:56:48 GMT):
i noticed that `npm install` does run`mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/decentralized-energy-network.bna` ok.
bh4rtp (Sun, 05 Nov 2017 12:56:48 GMT):
i noticed that `npm install` does run```mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/decentralized-energy-network.bna``` ok.
bh4rtp (Sun, 05 Nov 2017 13:02:02 GMT):
npm install-composer.png
bh4rtp (Sun, 05 Nov 2017 13:02:31 GMT):
shell-composer.png
prmdmshra (Sun, 05 Nov 2017 13:09:19 GMT):
Could you please confirm on the below queries regarding Perishable Sample Application:
1. I presume the application runs on 1 peer, 1 order service. All the participants are created on the same peer. Please confirm.
2. The Business logic acts like a smart contract which can actually created many smart contracts based on the different agreements.
3. How can I demonstrate the features of Hyperledger Fabric(blocks created/transactions on the blockchain, etc) on the running network ?
4. Kindly confirm that the data on the network is saved in couchdb?
It would be great if you could please clarify on the above....Thanks in Advance
mahoney1 (Sun, 05 Nov 2017 17:48:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HRbmKBbAD69E8qtjT) @raduciobanu yeah agree its missing from here https://hyperledger.github.io/composer/reference/composer.network.deploy.html rather than the tutorial (where it has a footnote describing the use of -A and -S - so should be updated, thanks !
mahoney1 (Sun, 05 Nov 2017 17:52:08 GMT):
@pravinghuge examples `query myquery {
description: "Example CONTAINS Query"
statement:
SELECT org.acme.sample.TestAsset
WHERE (stringArrayValues CONTAINS (value == "pumpkin"))` or (with multi values) `SELECT org.acme.sample.TestAsset WHERE (stringArrayValues CONTAINS ["pumpkin", "jello", "candycane"])`
mahoney1 (Sun, 05 Nov 2017 17:52:08 GMT):
@pravinghuge examples ```query myquery {
description: "Example CONTAINS Query"
statement:
SELECT org.acme.sample.TestAsset
WHERE (stringArrayValues CONTAINS (value == "pumpkin"))``` or (with multi values) ```SELECT org.acme.sample.TestAsset WHERE (stringArrayValues CONTAINS ["pumpkin", "jello", "candycane"])```
mahoney1 (Sun, 05 Nov 2017 17:52:08 GMT):
@pravinghuge examples ```query myquery {
description: "Example CONTAINS Query"
statement:
SELECT org.acme.sample.TestAsset
WHERE (stringArrayValues CONTAINS (value == "pumpkin"))``` or (with multi values) ``` SELECT org.acme.sample.TestAsset WHERE (stringArrayValues CONTAINS ["pumpkin", "jello", "candycane"]) ```
mahoney1 (Sun, 05 Nov 2017 17:52:08 GMT):
@pravinghuge examples ```query myquery {
description: "Example CONTAINS Query"
statement:
SELECT org.acme.sample.TestAsset
WHERE (stringArrayValues CONTAINS (value == "pumpkin"))``` or (with multi values) ```SELECT org.acme.sample.TestAsset WHERE (stringArrayValues CONTAINS ["pumpkin", "jello", "candycane"])```
mahoney1 (Sun, 05 Nov 2017 17:52:08 GMT):
@pravinghuge examples ```query myquery {
description: "Example CONTAINS Query"
statement:
SELECT org.acme.sample.TestAsset
WHERE (stringArrayValues CONTAINS (value == "pumpkin"))```
mahoney1 (Sun, 05 Nov 2017 17:54:40 GMT):
@pravinghuge or (with multi values) ```SELECT org.acme.sample.TestAsset WHERE (stringArrayValues CONTAINS ["pumpkin", "jello", "candycane"]) ```
mahoney1 (Sun, 05 Nov 2017 18:10:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mcchGybYHapPQEQ6T) @prmdmshra 1. perishables is a sample Composer business network - it can run on whatever underlying Fabric v1 environment you've defined - one peer (eg. Dev setup) or multiple (eg. test/pilot setup. 2) the business network can business logic that represents one or more smart contracts you define, to execute the business logic 3. Use Blockchain Explorer https://github.com/hyperledger/blockchain-explorer 4. If that's what's configured as the state DB, yes 5) see here for a detailed explanation - Couchdb is used to maintain the latest values for all the keys on the blockchain.
mahoney1 (Sun, 05 Nov 2017 18:10:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mcchGybYHapPQEQ6T) @prmdmshra 1. perishables is a sample Composer business network - it can run on whatever underlying Fabric v1 environment you've defined - one peer (eg. Dev setup) or multiple (eg. test/pilot setup. 2) the business network contains business logic that represents one or more smart contracts you define, to execute the business logic 3. Use Blockchain Explorer https://github.com/hyperledger/blockchain-explorer 4. If that's what's configured as the state DB, yes 5) see here for a detailed explanation - Couchdb is used to maintain the latest values for all the keys on the blockchain.
mahoney1 (Sun, 05 Nov 2017 18:10:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mcchGybYHapPQEQ6T) @prmdmshra 1. perishables is a sample Composer business network - it can run on whatever underlying Fabric v1 environment you've defined - one peer (eg. Dev setup) or multiple (eg. test/pilot setup). 2) the business network contains business logic that represents one or more smart contracts you define, to execute the business logic 3. Use Blockchain Explorer https://github.com/hyperledger/blockchain-explorer 4. If that's what's configured as the state DB, yes 5) see here for a detailed explanation - Couchdb is used to maintain the latest values for all the keys on the blockchain.
mahoney1 (Sun, 05 Nov 2017 18:18:12 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Zo8Xo43SmHD642AWP) @bh4rtp how odd that the prepublish command (to do composer archive create) works from npm install, and yet be missing from your cmd line - both executed from the same shell / environment in succession? - can you confirm your environment pls (what OS / version / node version - thanks). Also did you (originally) install composer as sudo ?
pravinghuge (Sun, 05 Nov 2017 19:42:05 GMT):
thanks @mahoney1 and @davidkel
pravinghuge (Sun, 05 Nov 2017 20:08:15 GMT):
Error: Could not find any functions to execute for transaction
pravinghuge (Sun, 05 Nov 2017 20:09:26 GMT):
earlier the org.acme.test.paint was not proper after correcting it also it says transaction not found
pravinghuge (Sun, 05 Nov 2017 20:10:08 GMT):
i have copied the function to other file as well still it couldn't find the org.acme.test.paint function
mostafa.elsayyad (Sun, 05 Nov 2017 21:16:33 GMT):
Has joined the channel.
zachgoll (Sun, 05 Nov 2017 22:26:23 GMT):
I have been hacking away on the Angular template for a Composer network, but was wondering if anyone knew how to make the application recognize who is interacting with it so the permissions file works? It seems to me that by default, the composer-rest-server generated using the `yo-hyperledger-composer` command does not acknowledge users or permissions?
bh4rtp (Sun, 05 Nov 2017 22:55:33 GMT):
@mahoney1 yes, you are right. i have npm install =g composer=cli as su not sudo. now the problem is solved.
bh4rtp (Sun, 05 Nov 2017 22:55:33 GMT):
@mahoney1 yes, you are right. i did npm install =g composer=cli as su not sudo. now the problem is solved.
bh4rtp (Mon, 06 Nov 2017 03:43:59 GMT):
hi, i have successful made `Decentralized Energy` network running. but it can only operate on local host web browser. if i access the network from another host, an error will prompt:
```Error: Could not connect to REST server. Please check your configuration details```
i think it maybe be caused by enroll authorization failure. how to enable multiple user from different host accessible?
bh4rtp (Mon, 06 Nov 2017 03:43:59 GMT):
hi, i have successfully made `Decentralized Energy` network running. but it can only operate on local host by web browser. if i access the network from another host, an error will prompt:
```Error: Could not connect to REST server. Please check your configuration details```
while strangely, i can access `http://ipaddr:3000/explorer` from another host.
so how to enable multiple user from different host accessible to the network?
bh4rtp (Mon, 06 Nov 2017 03:43:59 GMT):
hi, i have successfully made `Decentralized Energy` network running. but it can only operate on local host by web browser. if i access the network from another host, an error will prompt:
```Error: Could not connect to REST server. Please check your configuration details```
while strangely, i can access `http://ipaddr:3000/explorer` from another host.
so how to enable multiple user from different hosts accessible to the network?
pravinghuge (Mon, 06 Nov 2017 05:16:24 GMT):
works on the local composer-playground
pravinghuge (Mon, 06 Nov 2017 05:16:36 GMT):
not on https://composer-playground.mybluemix.net/editor
baoyangc (Mon, 06 Nov 2017 05:17:29 GMT):
do we need node 8 in the latest release?
pravinghuge (Mon, 06 Nov 2017 05:17:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8fFnqgF4tQbt9pXBD) works on local composer-playground but not on https://composer-playground.mybluemix.net/editor
baoyangc (Mon, 06 Nov 2017 05:18:25 GMT):
as i run ` nvm install --lts`, i found that 'inary download from https://nodejs.org/dist/v8.9.0/node-v8.9.0.tar.gz failed, trying sourc'
varunagarwal (Mon, 06 Nov 2017 07:17:59 GMT):
Hey guys, I opened an issue over here https://github.com/IBM/Decentralized-Energy-Composer/issues/8 . If someone is part of this repo contribution, could you check it out and heklp. I want to contribute and send a PR
davidkel (Mon, 06 Nov 2017 08:00:50 GMT):
@baoyangc we will be moving to officially supporting node 8 with the next major release of composer (0.15.0) as node has just gone LTS for node 8.
baoyangc (Mon, 06 Nov 2017 08:02:31 GMT):
will the 0.15.0 release be scheduled at 15 days later?
davidkel (Mon, 06 Nov 2017 08:03:55 GMT):
@baoyangc we hope to release 0.15.0 this week.
baoyangc (Mon, 06 Nov 2017 08:04:24 GMT):
it's great!
SumitTembe (Mon, 06 Nov 2017 08:41:52 GMT):
I deployed .bna file locally and during testing application using rest api i am facing issue with one transaction function.
[1] Unhandled error for request POST /api/EmployeeActivity: Error: Error trying invoke business network. Error: chaincode error (status: 500, message: Error: Could not find any functions to execute for transaction org.acme.gsl.EmployeeActivity#d5d66b122bdc88d5dd6d8245b52d91677342e3dcc7a83a2e70f030faba96cfb4)
If i deploy same .bna file in hyperledger-composer playground it is working without any issue.
sidrmsh (Mon, 06 Nov 2017 08:54:08 GMT):
Has joined the channel.
sidrmsh (Mon, 06 Nov 2017 09:07:07 GMT):
If I'm building smart contract type of functions in my business logic, do I need to implement that in my model file?
sidrmsh (Mon, 06 Nov 2017 09:07:59 GMT):
*script file
sidrmsh (Mon, 06 Nov 2017 09:15:35 GMT):
Also, can applications be built using React?
sidrmsh (Mon, 06 Nov 2017 09:15:35 GMT):
can applications be built using React?
sidrmsh (Mon, 06 Nov 2017 09:32:12 GMT):
How should I go about sending IoT events into a composer app?
Luxii (Mon, 06 Nov 2017 09:35:46 GMT):
Any help on this would be appreciated https://stackoverflow.com/questions/47133754/hyperledger-composer-why-does-transaction-give-this-error
benjamin.verhaegen (Mon, 06 Nov 2017 10:06:58 GMT):
Has joined the channel.
benjamin.verhaegen (Mon, 06 Nov 2017 10:07:27 GMT):
anybody who has some good knowledge about node-red?
mahoney1 (Mon, 06 Nov 2017 10:28:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7kjfEC3Noscf567qY) @bh4rtp You need to make your REST server available on an IP or domain resolvable hostname so that other REST clients can consume it. Its likely your REST server (acessed through Explorer) is already listening on 0.0.0.0:3000 and hence listening on all configured interfaces (on your server), which would explain why you can access Explorer as you did. For REST server deployment more info here -> https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
bh4rtp (Mon, 06 Nov 2017 10:30:47 GMT):
@mahoney1 thanks.
pravinghuge (Mon, 06 Nov 2017 10:35:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7maNs2RaTgJrjsy6g) @SumitTembe
@mahoney1 do u have solution for this issue
mahoney1 (Mon, 06 Nov 2017 10:49:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MhnjG2g7qaWNnNpTi) @pravinghuge hi there, so, the problem appears to be that your function EmployeeActivity (though modeled) has not been found (to resolve to the endpoint) or is named different to that modeled now. So just thinking: you've not deployed an update to your business network running as chaincode on your runtime Fabric - is that possible? Because in Playground, its possible it is working fine because its in-browser. Difficult to tell 'remotely' but that would be my first 'guess'..
mahoney1 (Mon, 06 Nov 2017 10:49:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MhnjG2g7qaWNnNpTi) @pravinghuge hi there, so, the problem appears to be that your function EmployeeActivity (though modeled) has not been found (to resolve to the endpoint) or is named different to that modeled now. So just thinking: you've not deployed an update to your business network running as chaincode on your runtime Fabric - is that possible? Because in Playground, its possible it is working fine because its running in-browser (you will know what changes have been made). Difficult to tell 'remotely' but that would be my first 'guess' - your REST server has discovered the schema for EmployeeActivity (in your model) - it just doesn't have the actual API implementation to do anything.
mahoney1 (Mon, 06 Nov 2017 10:54:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5M7h6z3Np7pdndJ4o) @sidrmsh yes, and also depends on whether you mean Enterprise or Mobile (eg, React Native). This article may help you (found on Google FYI) https://www.lullabot.com/articles/building-an-enterprise-react-application-part-1
mahoney1 (Mon, 06 Nov 2017 10:54:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5M7h6z3Np7pdndJ4o) @sidrmsh yes (given that as a generalisation, it is a JavaScript library for building user interfaces - so much more to consider beyond that etc etc) and also depends on whether you mean Enterprise or Mobile (eg, React Native). This article may help you (found on Google FYI) https://www.lullabot.com/articles/building-an-enterprise-react-application-part-1
mahoney1 (Mon, 06 Nov 2017 11:01:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=F3NrEtn748YNZd6Ga) @sidrmsh by submitting them as modeled transactions, in the sense that anything going '_into a composer app'_i s really submitting an IoT transaction 'into the blockchain' through a deployed (modeled) network (rather than 'into an app' - if that makes sense). - so your IoT events might be particular sensor or lifecycle events, captured as transactions that update the state of assets (or are captured as an audit trail for same) or perhaps participants in the network and so on..
mahoney1 (Mon, 06 Nov 2017 11:01:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=F3NrEtn748YNZd6Ga) @sidrmsh by submitting them as modeled transactions, in the sense that anything going _'into a composer app'_ is really submitting an IoT transaction 'into the blockchain' through a deployed (modeled) network (rather than 'into an app' - if that makes sense). - so your IoT events might be particular sensor or lifecycle events, captured as transactions that update the state of assets (or are captured as an audit trail for same) or perhaps participants in the network and so on..
pravinghuge (Mon, 06 Nov 2017 11:20:11 GMT):
@mahoney1 the same function EmployeeActivity works in composer playground and it does not work composer rest-api
pravinghuge (Mon, 06 Nov 2017 11:20:21 GMT):
thanks for responding
pravinghuge (Mon, 06 Nov 2017 11:20:45 GMT):
after the update in composer
pravinghuge (Mon, 06 Nov 2017 11:20:54 GMT):
it was working earlier
mahoney1 (Mon, 06 Nov 2017 11:24:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bvmsQwiY4LqmY3KiL) @Luxii hi there I have responded on S/Overflow to your question - you have a number of things to consider - cheers
bh4rtp (Mon, 06 Nov 2017 11:36:54 GMT):
@mahoney1 i am using authorization and multiple user mode. http://localhost:3000/auth/github is redirected to http://localhost:3000/explorer. when i create a participant, it says:
```"statusCode": 500,
"name": "Error",
bh4rtp (Mon, 06 Nov 2017 11:36:54 GMT):
@mahoney1 i am using authorization and multiple user mode. http://localhost:3000/auth/github is redirected to http://localhost:3000/explorer. when i create a participant, it says:
```"statusCode": 500,
"name": "Error",
"message": "No enrollment ID or enrollment secret has been provided"```
bh4rtp (Mon, 06 Nov 2017 11:36:54 GMT):
@mahoney1 i am using authorization and multiple user mode. http://localhost:3000/auth/github is redirected to http://localhost:3000/explorer. when i create a participant by POST create participant, it says:
```"statusCode": 500,
"name": "Error",
"message": "No enrollment ID or enrollment secret has been provided"```
bh4rtp (Mon, 06 Nov 2017 11:36:54 GMT):
@mahoney1 i am using authorization and multiple user mode. http://localhost:3000/auth/github is redirected to http://localhost:3000/explorer. when i create a participant by POST create participant, it says:
```"statusCode": 500,
"name": "Error",
"message": "No enrollment ID or enrollment secret has been provided"```
i create the participant and then can use `composer identity issue` to get the enroll user id and secret. otherwise it will report the participant has not found.
bh4rtp (Mon, 06 Nov 2017 11:36:54 GMT):
@mahoney1 i am using authorization and multiple user mode. http://localhost:3000/auth/github is redirected to http://localhost:3000/explorer. when i create a participant by POST create participant, it says:
```"statusCode": 500,
"name": "Error",
"message": "No enrollment ID or enrollment secret has been provided"```
i create the participant as above and then can use `composer identity issue` to get the enroll user id and secret. otherwise it will report the participant has not found.
bh4rtp (Mon, 06 Nov 2017 11:36:54 GMT):
@mahoney1 i am using authorization and multiple user mode. http://localhost:3000/auth/github is redirected to http://localhost:3000/explorer. when i create a participant by POST create participant, it says:
```"statusCode": 500,
"name": "Error",
"message": "No enrollment ID or enrollment secret has been provided"```
i create the participant as above and then can use `composer identity issue` to get the enroll user id and secret. otherwise it will report the participant has not found.
bh4rtp (Mon, 06 Nov 2017 11:36:54 GMT):
@mahoney1 i am using authorization and multiple user mode. http://localhost:3000/auth/github is redirected to http://localhost:3000/explorer. when i create a participant by POST create participant, it says:
```"statusCode": 500,
"name": "Error",
"message": "No enrollment ID or enrollment secret has been provided"```
`curl -v http://localhost:3000/api/system/ping?access_token=xxxxx` gets the same error.
i create the participant as above and then can use `composer identity issue` to get the enroll user id and secret. otherwise it will report the participant has not found.
nasht00 (Mon, 06 Nov 2017 11:57:34 GMT):
Hi, I upgraded composer, and now my chaincode fails like this:
```
ReferenceError: s is not defined
at __generator (eval at
glotov (Mon, 06 Nov 2017 11:58:56 GMT):
I still struggle with making composer work in multiple orgs network, @sstone1, I tried your suggestions in https://github.com/hyperledger/composer/issues/2505 but got `Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Error: Invalid results returned ::FORBIDDEN`. Could you please look at my comments of the issue. Also you marked the issue closed, should I open a new one and move my comments there?
Luxii (Mon, 06 Nov 2017 12:02:45 GMT):
@mahoney1 Thanks for your response
mahoney1 (Mon, 06 Nov 2017 12:24:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pPrdAb8btRMdjJxcu) @pravinghuge Sounds like you haven't therefore been using the @transaction and @param annotations correctly? See below for an example.
The @transaction annotation indicates that the function would like to process transactions and the @param annotation is used to specify the type of the transaction to process.
```
/**
* do some kind of employee processing
* @param {org.acme.gsl.EmployeeActivity} employeeActivity - the EmployeeActivity transaction
* @transaction
*/
function employeeActivity(employeeActivity) {
blah blah
}
``` - then you need to make sure you have stopped your composer-rest-server process - go and regenerate the business network / .bna archive file - then deploy (update it, as it already exists) it on your running Fabric. Then - restart your composer-rest-server
mahoney1 (Mon, 06 Nov 2017 12:35:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GKJkQwsMorAWgsiHr) @nasht00 that is unusual, in the sense of the runtime error generated, purely based on the error -it suggests something has changed in your model or your code? Without seeing either, can't judge what's causing it.
nasht00 (Mon, 06 Nov 2017 12:37:03 GMT):
My teammates hat haven't yet upgraded composer are able to run the model/logic. If you want I can share with you the BNA in private
nasht00 (Mon, 06 Nov 2017 12:44:32 GMT):
Also our travis started failing around the time that 14.3 was released
nasht00 (Mon, 06 Nov 2017 12:52:43 GMT):
Actually I think I can pinpoint a single file: https://jsfiddle.net/4rekknuq/
This is a browserified version of the module json-logic-js.
The file itself hasn't changed since Oct 4th, yet it started failing 4 days ago
nasht00 (Mon, 06 Nov 2017 12:53:46 GMT):
The error happens during deploy. it lets me build the BNA, but fails to deploy, either on fabric or on playground
Emmy (Mon, 06 Nov 2017 13:03:31 GMT):
hello, while testing the car-auction example in composer i am getting this error ``` t: Instance org.acme.vehicle.auction.Offer#a50881fc-59d3-4982-bd9e-7af1d5531642 missing required field bidPrice``` when i run the closebidding transaction, can anyone tell me what is the issue?
benjamin.verhaegen (Mon, 06 Nov 2017 13:04:26 GMT):
When trying to deploy the vehicle-lifecycle-network with composer-rest-server i get some error messages like this: "Swagger: skipping unknown type "VehicleDetails" anybody knows how to fix this?
benjamin.verhaegen (Mon, 06 Nov 2017 13:04:40 GMT):
@Emmy you should add a bidprice
Emmy (Mon, 06 Nov 2017 13:08:01 GMT):
@benjamin.verhaegen there is no where to add this value as this is a different transaction
davidkel (Mon, 06 Nov 2017 13:14:06 GMT):
@Emmy if you are using playground version 0.14.3 then you are probably hitting this bug
https://github.com/hyperledger/composer/issues/2540
Emmy (Mon, 06 Nov 2017 13:23:57 GMT):
I don't see what they have provided as a fix though
mahoney1 (Mon, 06 Nov 2017 14:03:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uxNEjEH4S3c5zGveN) @Emmy as quick workaround - suggest to spin up your local composer-rest-server (`npm install -g composer-rest-server` if you've not installed). and then run `composer-rest-server` - you can then post your ``bidPrice` transaction (using the sample JSON provided as an example) - through the browser at http://localhost:3000/explorer for the VehicleListing instance you are bidding for (and Participant Member (owner) instance you're referring to). That's assuming you're running a local playground of course :-)
davidkel (Mon, 06 Nov 2017 14:18:10 GMT):
@Emmy the fix would be to change the value of the $class property yourself to the correct fully qualified transaction name. You can determine that from the .cto file
davidkel (Mon, 06 Nov 2017 14:18:10 GMT):
@Emmy the workaround would be to change the value of the $class property yourself to the correct fully qualified transaction name. You can determine that from the .cto file
davidkel (Mon, 06 Nov 2017 14:18:10 GMT):
@Emmy the workaround would be select the transaction you want to submit then change the value of the $class property yourself to the correct fully qualified transaction name. You can determine that from the .cto file
gnpranoy (Mon, 06 Nov 2017 14:29:16 GMT):
Has joined the channel.
andimit (Mon, 06 Nov 2017 14:49:30 GMT):
Has joined the channel.
mahoney1 (Mon, 06 Nov 2017 14:57:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oERaaAJBgZJoob9Hb) @benjamin.verhaegen there are no 'REST API endpoints' for Concept (eg VehicleDetails) or Abstract types as modeled in your Vehicle Lifecycle model. Hence the ignore message and no Loopback schema generated. The fields for VehicleDetails would be available from the 'Vehicle' asset (REST Endpoint) which uses the Concept in its definition.
benjamin.verhaegen (Mon, 06 Nov 2017 15:02:34 GMT):
@mahoney1 thanks! managed to get the vehicle-lifecycle-network working locally
joebynoe (Mon, 06 Nov 2017 16:00:26 GMT):
expressjs
berndoostrum (Mon, 06 Nov 2017 16:02:55 GMT):
Only one of my three transactions works, the other ones give the same errors everyone has...
berndoostrum (Mon, 06 Nov 2017 16:02:59 GMT):
this sucks
berndoostrum (Mon, 06 Nov 2017 16:04:43 GMT):
Error: Could not find any functions to execute for transaction org.
berndoostrum (Mon, 06 Nov 2017 16:05:00 GMT):
this is the error I get with all my transactions, except one
berndoostrum (Mon, 06 Nov 2017 16:05:11 GMT):
and yes, I have manually edited the JSOn
berndoostrum (Mon, 06 Nov 2017 16:45:46 GMT):
when I try to deploy my bna to my local fabric I get this error:
berndoostrum (Mon, 06 Nov 2017 16:45:54 GMT):
Error: Missing identifier for Type NetworkAdmin in namespace org.hyperledger.composer.system
Command failed
berndoostrum (Mon, 06 Nov 2017 16:46:09 GMT):
I didnt get all these problems before :(
berndoostrum (Mon, 06 Nov 2017 17:03:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ZpmFXHHxadAF6CNeR) @nasht00 this is happening with my project too... BNA build,but cant deploy
multimedial (Mon, 06 Nov 2017 17:04:11 GMT):
Is it possible to deploy a NBA file to a manually configured fabric blockchain network, and if so, how?
the_identity_guy (Mon, 06 Nov 2017 17:43:18 GMT):
Has joined the channel.
the_identity_guy (Mon, 06 Nov 2017 17:43:52 GMT):
I have a quick question, when developing a solution with Fabric, are privacy policies for a given business use case setup using the composer?
anna (Mon, 06 Nov 2017 18:51:32 GMT):
quick question: are the `.composer-connection-profiles/` dirs expected to be under home or can it be configured otherwise?
sidrmsh (Mon, 06 Nov 2017 19:05:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MujNDdQjTnxjcs8R3) @mahoney1 Thanks for your response. I'm wondering whether I really need to use Angular or not
bh4rtp (Tue, 07 Nov 2017 01:22:28 GMT):
hi, in which circumstance, need to use access token? i got it from http://localhost:3000/auth/github. but run `composer` ok without token access, while `curl -v http://localhost:3000/api/system/ping?access_token=xxxx` keeps says no erollmentID or enrollmentSecret. so, i am confused by the token. what is the correct use of it?
bh4rtp (Tue, 07 Nov 2017 01:22:28 GMT):
hi, in which circumstance, need to use access token? i got it from http://localhost:3000/auth/github. but run `composer` will be ok even without access token, while `curl -v http://localhost:3000/api/system/ping?access_token=xxxx` keeps says no erollmentID or enrollmentSecret. so, i am confused by the token. what is the correct use of it?
tennenjl (Tue, 07 Nov 2017 02:42:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fjyAA3hNL7e9nc3S4) @berndoostrum I hit the same error. When I rolled composer-cli and other composer libraries to 0.14.2 and rebuilt my code, everything started working. Note, I undeployed my business network prior to rolling back my code.
tennenjl (Tue, 07 Nov 2017 02:56:35 GMT):
Hi Team, I just wanted to check regarding the error message: "Could not find any functions to execute for transaction". I uninstalled the .bna, rolled back all my composer libraries to 0.14.2, rebuilt and redeployed my chain code and everything is now working.
Hefziben (Tue, 07 Nov 2017 03:49:29 GMT):
hello team, could you tell me how to fix this error: Composer runtime (0.14.1) is not compatible with client (0.13.0)
labcoinpoc (Tue, 07 Nov 2017 04:15:24 GMT):
@Hefziben update your composer client version in package.json of your app, run npm install composer-client --save in app directory
labcoinpoc (Tue, 07 Nov 2017 04:15:24 GMT):
@Hefziben update your composer client version in package.json of your app, run npm install composer-client 0.14.1 --save in app directory
labcoinpoc (Tue, 07 Nov 2017 04:15:24 GMT):
@Hefziben update your composer client version in package.json of your app, run npm install composer-client@0.14.1 --save in app directory
labcoinpoc (Tue, 07 Nov 2017 04:51:47 GMT):
@bh4rtp without access token you should meet an no authentication error when invoke the rest api. Im not quite sure about the enrollment part but you can first create a participant by running `composer participant add` command and then bind an identity to the participant by running `composer identity issue` command, this command will return enrollid and secret. In rest server add the identity into a wallet and set it to the default wallet&identity. after all this you can ping the network like you did. This workflow works in my server.
labcoinpoc (Tue, 07 Nov 2017 04:51:47 GMT):
@bh4rtp without access token you should meet an authentication error when invoke the rest api. Im not quite sure about the enrollment part but you can first create a participant by running `composer participant add` command and then bind an identity to the participant by running `composer identity issue` command, this command will return enrollid and secret. In rest server add the identity into a wallet and set it to the default wallet&identity. after all this you can ping the network like you did. This workflow works in my server.
bh4rtp (Tue, 07 Nov 2017 05:44:27 GMT):
@labcoinpoc thanks, it does work.
mna2016 (Tue, 07 Nov 2017 05:47:27 GMT):
Hi All, I have imported a composer archive .bna on "composer-playground.mybluemix.net". I created this archive on 18th oct 2017. The composer playground is not recognising the transactions i have declared. Is there a recent change to composer(after 18th oct) that may be the reason for this error?
mna2016 (Tue, 07 Nov 2017 05:58:22 GMT):
Clipboard - November 7, 2017 11:27 AM
Luxii (Tue, 07 Nov 2017 06:29:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AKEka9GdDtY4DsDv6) @mna2016 Same thing is happening with me
Luxii (Tue, 07 Nov 2017 06:31:19 GMT):
If you change the class to your transaction class then it gives `Error:Could not find any functions to execute this transaction `
Luxii (Tue, 07 Nov 2017 06:31:19 GMT):
If you change your class to your transaction class then it gives `Error:Could not find any functions to execute this transaction `
bh4rtp (Tue, 07 Nov 2017 06:40:02 GMT):
hi, i have cloned a composer sample. and install composer playground by `npm install -g composer-playground` including `composer-cli`, `generator-hyperledger-composer`, `composer-rest-server` and `yo`. my question is how to start up `composer-playground`?
bh4rtp (Tue, 07 Nov 2017 06:40:02 GMT):
hi, i have cloned a composer sample. and install composer playground by `npm install -g composer-playground` including `composer-cli`, `generator-hyperledger-composer`, `composer-rest-server` and `yo`. my question is how to start up `composer-playground` manually?
username343 (Tue, 07 Nov 2017 06:52:08 GMT):
Hi everyone, can anyone of you tell me about the concept of consensus on network upgrade in case of multi party business network? Is there any concept of signing a business network upgrade like in case of fabric? How does composer prevent admin of the network to make changes in business network unilaterally?
username343 (Tue, 07 Nov 2017 07:29:57 GMT):
Is it possible to revoke admin identity of the business network
nasht00 (Tue, 07 Nov 2017 07:38:40 GMT):
@berndoostrum @tennenjl I opened the following issue: https://github.com/hyperledger/composer/issues/2578
nickyromeijn (Tue, 07 Nov 2017 08:33:47 GMT):
Is there an eta on npm modules in the transaction engine? (is it even on the roadmap?)
Emmy (Tue, 07 Nov 2017 08:36:07 GMT):
Thank you for your help @mahoney1 I am using windows 7, I was hopping to find another fix that can work with it.@davidkel what you mean is that I should change the transaction name everytime I want to submit it?
fjblau (Tue, 07 Nov 2017 08:36:42 GMT):
I am seeing the same Composer Playground error above... it doesn't seem to recognize metadata/test changes without exporting and re-importing the bna file.
fjblau (Tue, 07 Nov 2017 08:37:27 GMT):
I was also wondering if there is a GitHub integration for bna code...
davidkel (Tue, 07 Nov 2017 08:47:01 GMT):
@tennenjl could you post you bna or you .js files for your BNA to https://github.com/hyperledger/composer/issues/2578 As well as details as to what you are trying to do
davidkel (Tue, 07 Nov 2017 08:47:01 GMT):
@tennenjl could you post you bna or your .js files for your BNA to https://github.com/hyperledger/composer/issues/2578 As well as details as to what you are trying to do so I can understand why you are getting the error could not find any functions to execute this transaction.
davidkel (Tue, 07 Nov 2017 08:52:09 GMT):
@Luxii could you provide details about how you changed your transaction class and got the error could not find any functions to execute ? Could you post you bna file to https://github.com/hyperledger/composer/issues/2578 ?
fjblau (Tue, 07 Nov 2017 08:53:40 GMT):
Also, does "Generate Random Data" do anything when Creating a new Participant? It doesn't in the most recent version... I have to manually create the json.
davidkel (Tue, 07 Nov 2017 08:56:25 GMT):
@fjblau if you are getting an empty participant when you try to create a new one (ie no JSON whatsoever) then this is a known issue and all you can do at the moment is enter the complete JSON from scratch. Is that the case ?
fjblau (Tue, 07 Nov 2017 08:58:48 GMT):
Yes
davidkel (Tue, 07 Nov 2017 09:04:13 GMT):
@fjblau https://github.com/hyperledger/composer/issues/2564
bh4rtp (Tue, 07 Nov 2017 09:07:07 GMT):
i am testing tls and https. now everyting is ok except `curl`. firstly i want to get the certificate from localhost by `openssl s_client -connect localhost:3000 > cert.pem`. and edit the certificate file to delete useless lines. and then run `curl --cacert cert.pem -v https://localhost:3000/api/system/ping`. it had been thought ok. but failed with errors:
```curl: (6) Could not resolve host: xn--v-5gn
{"error":{"statusCode":500,"name":"Error","message":"Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: bh4rtp)","stack":"Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: bh4rtp)```
bh4rtp (Tue, 07 Nov 2017 09:07:07 GMT):
i am testing tls and https. now everyting is ok except `curl`. firstly i want to get the certificate from localhost by `openssl s_client -connect localhost:3000 > cert.pem`. and edit the certificate file to delete useless lines. and then run `curl --cacert cert.pem -v https://localhost:3000/api/system/ping?access_token=xxxxxx`. it had been thought ok. but failed with errors:
```curl: (6) Could not resolve host: xn--v-5gn
{"error":{"statusCode":500,"name":"Error","message":"Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: bh4rtp)","stack":"Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: bh4rtp)```
bh4rtp (Tue, 07 Nov 2017 09:08:20 GMT):
so how to test rest server by using curl to test tls and https?
bh4rtp (Tue, 07 Nov 2017 09:08:20 GMT):
so how to test rest server by using curl tls and https?
bh4rtp (Tue, 07 Nov 2017 09:08:20 GMT):
so how to test the rest server by using curl with tls and https?
CodeReaper (Tue, 07 Nov 2017 09:28:32 GMT):
Has joined the channel.
davidkel (Tue, 07 Nov 2017 09:34:29 GMT):
@Emmy When you select the transaction you want to submit you need to check that the $class entry is correct for that transaction. If it isn't then you need to change it to the correct $class value. Usually that would mean just changing the last part to the correct transaction name.
CodeReaper (Tue, 07 Nov 2017 09:34:42 GMT):
I'm making a POC in composer, and made API through loopback, I saw a potential problem that the user selected such as the admin is chosen to sign all transactions. We can change the default user by a separate API. But when I have multiple users using those API at same time theyll keep changing default user and conflict with their process which requires signing their own transactions. Any way around?
Emmy (Tue, 07 Nov 2017 09:35:12 GMT):
@davidkel thank you
fjblau (Tue, 07 Nov 2017 09:49:13 GMT):
How often is the online playground synced with changes here?
mikiasda (Tue, 07 Nov 2017 09:51:18 GMT):
Has joined the channel.
mikiasda (Tue, 07 Nov 2017 09:51:59 GMT):
Hi, anyone knows how to publish/load the bussiness network on a ibm cluster?
Luxii (Tue, 07 Nov 2017 10:05:24 GMT):
@davidkel Solved it now there should be no new lines between the @param comment section and function definition. Your code should follow this - ``` /**
* Track the trade of a commodity from one trader to another
* @param { org.acme.mynetwork.YourTransactionName } generate - the trade to be processed
* @transaction
*/
function yourFunctionName(data)
Luxii (Tue, 07 Nov 2017 10:05:24 GMT):
@davidkel Solved it now there should be no new lines between the @param comment section and function definition. Your code should follow this - ``` /**
* Track the trade of a commodity from one trader to another
* @param { org.acme.mynetwork.GenerateRFQ } generate - the trade to be processed
* @transaction
*/
davidkel (Tue, 07 Nov 2017 10:06:24 GMT):
@Luxii So there was 1 or more new lines between the comment and the function correct ? If so then I understand the failure
Luxii (Tue, 07 Nov 2017 10:07:09 GMT):
@davidkel yes
Luxii (Tue, 07 Nov 2017 10:07:55 GMT):
Idk how but this used to work before I guess
davidkel (Tue, 07 Nov 2017 10:07:58 GMT):
Ok, many thanks for the info that is really useful. I understand what is causing the problem in our code now.
fjblau (Tue, 07 Nov 2017 10:11:19 GMT):
Hmmm... when I remove the lines between them I get a SyntaxError
Luxii (Tue, 07 Nov 2017 10:11:21 GMT):
@davidkel No problem , Can you respond to @CodeReaper question https://chat.hyperledger.org/channel/composer?msg=XtMK3A86MMAJBqvX5
mna2016 (Tue, 07 Nov 2017 10:16:29 GMT):
Hi All, How to have variable number of asset related fields in a transaction. I mean can we write the transaction in such a manner that whichever asset related fields are passed in the input are updated, rest are ommitted. I need an urgent response for this questoin. Thanks.
mna2016 (Tue, 07 Nov 2017 10:20:42 GMT):
@mikiasda I guess by cluster you meant "kubernetes cluster\ibm container service". Yes I have deployed network onto this.
mna2016 (Tue, 07 Nov 2017 10:20:42 GMT):
```asset myAsset identified by assetId {
o String assetId
o String transactionType
o String matnr
o String matnr2
o String grnum
o String arnum
o String gpsLat
o String gpsLon
o String owner
}
transaction UpdateMyAsset {
o String assetId
/* Payload has all fields stringified */
o String inPayload
}
```
berndoostrum (Tue, 07 Nov 2017 10:22:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=iJzxJWRmc7WYABA75) @tennenjl Thanks, Im going to try that
davidkel (Tue, 07 Nov 2017 10:36:02 GMT):
@CodeReaper Not sure what you are trying to do but the composer-rest-server is a loopback application that handles multiple users so you could look at the rest server code for inspiration
mahoney1 (Tue, 07 Nov 2017 10:53:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mEi6HZkvi4gqcZu4o) @bh4rtp type `composer-playground` on the command line - launches it in a browser.
bh4rtp (Tue, 07 Nov 2017 10:54:11 GMT):
@mahoney1 thanks. so easy. must i set variable `COMPOSER_CONFIG`?
CodeReaper (Tue, 07 Nov 2017 11:02:09 GMT):
@davidkel My question is the composer able to differentiate which api call is for which user(based on token) and sign that transaction using that user's context only?? Im building multiple applications which are using same composer-rest-api but are for different users. So I require to sign transactions through different users. If one sets the default user and other node app executes the transaction thinking its user's context will be used will create problems.
davidkel (Tue, 07 Nov 2017 11:03:23 GMT):
@CodeReaper you need to run the rest-server in multi-user mode. Each authenticated user will have their own wallet and thus can have their own identity
CodeReaper (Tue, 07 Nov 2017 11:04:37 GMT):
Have their own wallet...ok Thanks @davidkel
mahoney1 (Tue, 07 Nov 2017 11:06:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XtMK3A86MMAJBqvX5) @CodeReaper so you've reviewed the multi-user authentication doc ? Multiple user mode permits *clients* of the REST server to provide their own Blockchain identities for digitally signing transactions - furthermore, you can use any number of Passport strategies, one of which you must select.
mahoney1 (Tue, 07 Nov 2017 11:08:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PWjXeNmicWTHfyMfB) @bh4rtp no, just run the command
CodeReaper (Tue, 07 Nov 2017 11:11:10 GMT):
Thanks @mahoney1 , I did have one more query, I need to send my identifier for the participant in for the smart contract functions to execute. But i dont wanna store those identifiers outside blockchain. In chaincode i sued to map the the id through hashing certificate. How can I achieve this in composer
CodeReaper (Tue, 07 Nov 2017 11:11:10 GMT):
Thanks @mahoney1 , I did have one more query, I need to send my identifier for the participant in for the smart contract functions to execute. But i dont wanna store those identifiers outside blockchain. In chaincode i used to map the the id through hashing certificate. How can I achieve this in composer
Lucifer (Tue, 07 Nov 2017 11:13:58 GMT):
Has joined the channel.
mahoney1 (Tue, 07 Nov 2017 11:16:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=bzq7tZuJGszFRLTmj) @mna2016 do you have an example? Fields can be optional in your model. Have you considered using an array in your Transaction, passed in as a resource.. which can have ordinals and values, then process (or omit) accordingly? Not sure if that helps.
bh4rtp (Tue, 07 Nov 2017 11:19:25 GMT):
@mahoney1 when the browser opened by `composer-playground` command, one error will occur:
```Error: Failed to load connection profile ce0f135f7a63287ab86f0dcc0732e185c1a60d62-hlfabric. Error was Error: ENOENT: no such file or directory, open '/home/allen/.composer-connection-profiles/ce0f135f7a63287ab86f0dcc0732e185c1a60d62-hlfabric/connection.json'```
bh4rtp (Tue, 07 Nov 2017 11:20:30 GMT):
`/home/allen/.composer*` was deleted by me.
mna2016 (Tue, 07 Nov 2017 11:27:42 GMT):
@mahoney1 Here's a snippet from MyAsset.cto
mna2016 (Tue, 07 Nov 2017 11:28:19 GMT):
asset myAsset identified by assetId {
o String assetId
o String transactionType
o String matnr
o String matnr2
o String grnum
o String arnum
o String gpsLat
o String gpsLon
o String owner
}
transaction UpdateMyAsset {
o String assetId
/* Payload has all fields stringified */
o String inPayload
}
mna2016 (Tue, 07 Nov 2017 11:28:32 GMT):
@mahonet1
mna2016 (Tue, 07 Nov 2017 11:28:32 GMT):
Currently I am using the inPayload field which is the "JSOn stringified all fields" in it. That way whatever field I pass i can parse it into hte logic.js. But I dont like this approach. I want a cleaner approach than this.
mna2016 (Tue, 07 Nov 2017 11:30:46 GMT):
@mahoney1 Appreciate if you could give some example code that shows how to have optional field using the approach you mentioned.
mahoney1 (Tue, 07 Nov 2017 11:32:59 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=y6HTeLD58xmtqdtzm) @bh4rtp as mentioned by dm, you need to recreate your environment (including your credentials folder) and I've given you the Dev link to do that. cheers
CodeReaper (Tue, 07 Nov 2017 11:47:43 GMT):
This issue coming up https://stackoverflow.com/questions/44814851/hyperledger-composer-error-authenticating-to-the-rest-server . Any solutions?
mahoney1 (Tue, 07 Nov 2017 11:50:32 GMT):
so maybe its simpler to have a relationship to the asset in your modeled transaction, then you can do whatever checks you planned (there) on the Asset resource that's available to you in the transaction - see example in model file here -> https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network - hope this helps ```
asset myAsset identified by assetId {
o String assetId
o String transactionType
o String matnr
o String matnr2
o String grnum
o String arnum
o String gpsLat
o String gpsLon
o String owner
}
// or maybe instead, something like
asset myAsset identified by assetId {
o String assetId
o String[] payload optional
}
transaction UpdateMyAsset {
--> myAsset myInputAsset
}```
GouthamKrishna (Tue, 07 Nov 2017 11:58:22 GMT):
i have created a queries file and composer-rest-server was run , but did not create api for the query file
nickyromeijn (Tue, 07 Nov 2017 11:59:14 GMT):
Are the access tokens supplied by the composer-rest-service stateless?
GouthamKrishna (Tue, 07 Nov 2017 12:02:37 GMT):
thanks
mahoney1 (Tue, 07 Nov 2017 12:09:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=PWf3tXNg4dfdE9RHE) @CodeReaper have you tried getting the participant identifier (ie the participant associated with the identity submitting the transaction) using `getCurrentParticipant().getIdentifier() ` inside your TP function
mahoney1 (Tue, 07 Nov 2017 12:10:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7mMvm6dXNQXR9653C) @GouthamKrishna 1) is your queries file called `queries.qry` and 2) is it in the top level of your project folder (ie in the same directory as your package.json for example)
mahoney1 (Tue, 07 Nov 2017 12:10:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7mMvm6dXNQXR9653C) @GouthamKrishna 1) is your queries file called `queries.qry` and 2) is it in the top level of your project folder (ie in the same directory as your package.json for example). Those are good places to start. If you correct one or other, you would need to then recreate your BNA file - and do a `composer network update` to update your deployed network.
GouthamKrishna (Tue, 07 Nov 2017 12:11:22 GMT):
@mahoney1 yes
mahoney1 (Tue, 07 Nov 2017 12:13:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gXk9cNmx3c4mRiBv8) @GouthamKrishna did you stop your rest-server? Is your BNA actually showing a timestamp representing latest (queries changes) - have seen where its not recreated (as it already exists - for example). Then you need to do a `composer network update` as mentioned to get the BN updated.
GouthamKrishna (Tue, 07 Nov 2017 12:14:53 GMT):
composer network update should be run inside dist folder?
mahoney1 (Tue, 07 Nov 2017 12:20:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6nraGRdheseqATX32) @nickyromeijn roadmap is here https://github.com/hyperledger/composer/issues/1390 - issue https://github.com/hyperledger/composer/issues/61 being tracked here by Fabric team https://jira.hyperledger.org/browse/FAB-2331
mahoney1 (Tue, 07 Nov 2017 12:21:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7JyNY5NS6n74iWFCz) @GouthamKrishna yep, if that's where your latest .bna file is..alternative is you refer to it by PATH (if you're scripting it etc).
GouthamKrishna (Tue, 07 Nov 2017 12:22:43 GMT):
@mahoney1 done still not working
GouthamKrishna (Tue, 07 Nov 2017 12:23:06 GMT):
just normal api queries not displaying
mahoney1 (Tue, 07 Nov 2017 12:23:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SQ2CxB6oquwxeti8f) @GouthamKrishna send me your BNA if you like, can take a look
berndoostrum (Tue, 07 Nov 2017 12:24:42 GMT):
Did a rollback to 0.14.2 but still cant deploy bna
berndoostrum (Tue, 07 Nov 2017 12:24:56 GMT):
same error: Missing identifier for Type NetworkAdmin in namespace org.hyperledger.composer.system
berndoostrum (Tue, 07 Nov 2017 12:33:44 GMT):
are there composer devs in here? When will 0.14.4 be released?
mna2016 (Tue, 07 Nov 2017 12:41:36 GMT):
@mahoney1 how to call the native "update" transaction to update the asset. By native I mean the transaction that gets executed when we click on the pen icon on the composer playground as shown in the following screenshot
mna2016 (Tue, 07 Nov 2017 12:45:32 GMT):
Clipboard - November 7, 2017 6:15 PM
bh4rtp (Tue, 07 Nov 2017 12:48:05 GMT):
@mahoney1 i redo step 2 and the error remains. so i cheat the fool by manually creating the directory and copy a connection.json file here. now it is ok. i wonder `ce0f135f7a63287ab86f0dcc0732e185c1a60d62-hlfabric` was created by which program. i had set the COMPOSER_CONFIG to be:
```"connectionProfile": {
"name": "hlfabric",
"description": "Hyperledger Fabric v1.0",
"type": "hlfv1",
"keyValStore": "/home/allen/.composer-credentials",
"timeout": 300,
"orderers": [
{
"url": "grpc://orderer.example.com:7050"
}
],
"channel": "composerchannel",
"mspID": "Org1MSP",
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer0.org1.example.com:7053"
}
]
},```
gnpranoy (Tue, 07 Nov 2017 13:00:48 GMT):
I have created a asset and added a value to it. How to fetch the value of that asset using asset ID using composer
Luxii (Tue, 07 Nov 2017 13:08:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4pjrueBaEBorGuT34) @mna2016 `assetRegistry.update(yourUpdatedAssetObj)`
uber.twin (Tue, 07 Nov 2017 13:09:55 GMT):
@mahoney1 hello, regarding the REST server authenticated mode, are there alternative solution, other than using the "passport-github" strategy?
nippleDonkey (Tue, 07 Nov 2017 13:18:50 GMT):
Hi guys, i hope one of you could shed some light on this issue I'm experiencing. I have a node JS REST API which uses the composer-client SDK to access the business network. I've created a specific identity for the API to use and it appears to work well. However, after a number of minutes i get the following error message: Error: chaincode error (status: 500, message: Error: The current identity has not been registered: organisation1)
nippleDonkey (Tue, 07 Nov 2017 13:18:50 GMT):
Hi guys, i hope one of you could shed some light on this issue I'm experiencing. I have a node JS REST API which uses the composer-client SDK to access the business network. I've created a specific identity for the API to use and it appears to work well. However, after a number of minutes i get the following error message: Error: chaincode error (status: 500, message: Error: The current identity has not been registered: organisation1)
Composer version: 0.14.2
Emmy (Tue, 07 Nov 2017 13:26:12 GMT):
asset Spectrum identified by SpectrumId {
o String SpectrumId
o String Spectrumval
o String CorrespondingLocation
}```query spectrumSave {
description: "Select all drivers aged older than PARAM"
statement:
SELECT org.acme.mynetwork.Spectrum
WHERE (CorrespondingLocation == _$locationName)
}```
Emmy (Tue, 07 Nov 2017 13:27:36 GMT):
Hello, I am working on queries and i want to use select (an element) from (an asset type), does anyone know how to do that?
tennenjl (Tue, 07 Nov 2017 13:42:26 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EXKDRZPxDqaPg5sdi) @berndoostrum See @davidkel 's entries regarding any transaction functions which contain comments and where there is a blank line between the comments and the actual function definition. Thanks!
mahoney1 (Tue, 07 Nov 2017 13:48:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JaETw8gwnHqNLbMie) @uber.twin yes - plenty alternatives -> https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html - The REST server uses the open source Passport authentication middleware http://passportjs.org/
berndoostrum (Tue, 07 Nov 2017 13:51:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Bc3N7wAHyf5vF2pkR) @tennenjl dudeeeee that worked
berndoostrum (Tue, 07 Nov 2017 13:52:04 GMT):
one blank line between comment and cod
berndoostrum (Tue, 07 Nov 2017 13:52:07 GMT):
code*
mahoney1 (Tue, 07 Nov 2017 13:52:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A3bKEPdosCj26rccw) @Emmy you select the resource type as the SELECT target (rather than individual 'fields' (if that'w what you mean). So eg. a Participant or Asset type for example - see examples here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry
mahoney1 (Tue, 07 Nov 2017 13:52:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A3bKEPdosCj26rccw) @Emmy you select the resource type as the SELECT target (rather than individual 'fields' (if that'w what you mean). So eg. a Participant or Asset type for example - see examples here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry . If you mean element of an array - see this thread -> https://chat.hyperledger.org/channel/composer?msg=JL47TF7wPh9ozvxQL
berndoostrum (Tue, 07 Nov 2017 13:52:24 GMT):
hilarious :joy:
Emmy (Tue, 07 Nov 2017 13:55:34 GMT):
@mahoney1 how do you select then one value like mainExchanges in the commodity asset
mahoney1 (Tue, 07 Nov 2017 14:04:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=y9jJ8tpEYcK6eDNa3) @Emmy you work with your query results and then find the asset (individual field/attribute) you want to check/compare eg. *mainExchange* field - check out samples here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L46 and here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L148 and here ->
mahoney1 (Tue, 07 Nov 2017 14:04:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=y9jJ8tpEYcK6eDNa3) @Emmy you work with your query results and then find the asset (individual field/attribute) you want to check/compare eg. *mainExchange* field - check out samples here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L46 and here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L148
mahoney1 (Tue, 07 Nov 2017 14:04:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=y9jJ8tpEYcK6eDNa3) @Emmy you work with your query results and then find the asset (individual field/attribute) you want to check/compare eg. *mainExchange* field - check out samples here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L46 and here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L148 eg. ```var myattrValue = results[0].valueField ; // however you modeled it ```
uber.twin (Tue, 07 Nov 2017 14:05:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MnynuQri3gsdQQYMt) @mahoney1 all OAuth based, right?
Emmy (Tue, 07 Nov 2017 14:05:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gAujWtbXDMCAccv8p) @mahoney1 thank you
mahoney1 (Tue, 07 Nov 2017 14:06:16 GMT):
oauth (Github), OAuth2 (Google, FB, etc), LDAP, etc etc, there's a variety
mahoney1 (Tue, 07 Nov 2017 14:06:16 GMT):
@uber.twin OAuth (Github), OAuth2 (Google, FB, etc), LDAP, etc etc, there's a variety
uber.twin (Tue, 07 Nov 2017 14:11:09 GMT):
@mahoney1 is there documentation on setting it up with LDAP? (as far as I see, OAuth doesn't seem to be the highest recommended security standard)
mahoney1 (Tue, 07 Nov 2017 14:14:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=K5wNMccBSCzWZJ2R5) @gnpranoy use getIdentifier() ```return getAssetRegistry(myasset.getFullyQualifiedType())
.then((assetRegistry) => {
return assetRegistry.get(myasset.getIdentifier());
})
.then((resolved) => {
// do something, like check the value
})``` check out https://github.com/hyperledger/composer-sample-networks/blob/master/packages/animaltracking-network/lib/model.cto.js or here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/digitalproperty-network/test/DigitalLandTitle.js#L92
mahoney1 (Tue, 07 Nov 2017 14:31:36 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6y7SQh3Kr5DZiryWJ) @uber.twin not presently (that I'm aware of). LDAP / OAuth2 / OpenID Connect / JWT / SAML 2 would be more commonplace I suspect (than OAuth)
fjblau (Tue, 07 Nov 2017 15:27:50 GMT):
I created some transactions and was able to see them. I then changed the test script (and the name of a function) and now when I go to All Transactions, I get a dialog that says "Error: Cannot instantiate Type
fjblau (Tue, 07 Nov 2017 15:30:48 GMT):
The only "reset" I can do is to export the bna and reimport and replace. That fixes things sometimes... but other times I have to restart the whole container.
fjblau (Tue, 07 Nov 2017 15:32:06 GMT):
Is there some sort of "Hyperledger Development Best Practices" that I am missing?
Luxii (Tue, 07 Nov 2017 15:37:19 GMT):
I have made a authentication enabled loopback application and made multiple identities after authenticating adding them to the wallet.After stopping the application identities in a wallet seem to disappear when I restart it, although my wallet seems to have been persisted. What could be the reason ?
CodeReaper (Tue, 07 Nov 2017 15:42:02 GMT):
I've made a enabled authentication loopback application. I can do all functionalities regarding wallet after authentication, but I cant seem to add participant or other smart contract functionality?? Can adding participant only be performed by admin?? How do I use admin's context when authentication is turned on??
davidkel (Tue, 07 Nov 2017 15:51:58 GMT):
@CodeReaper admin is an identity represented by crypto material. The only authority that admin has is the ability to register new identities in a fabric ca server. ACLs define who can perform what in a business network and is focussed around the current participant performing the transaction. Your ACL will define which participants can perform actions like adding more participants. In order to act as a participant in a business network, identities are bound to participants. So when you interact with a specific identity, that will map to a participant within the business network.
davidkel (Tue, 07 Nov 2017 15:51:58 GMT):
@CodeReaper admin is an identity represented by crypto material. The only authority that admin (if you use our dev server setup for example) has is the ability to register new identities in a fabric ca server. ACLs define who can perform what in a business network and is focussed around the current participant performing the transaction. Your ACL will define which participants can perform actions like adding more participants. In order to act as a participant in a business network, identities are bound to participants. So when you interact with a specific identity, that will map to a participant within the business network.
jmcnevin (Tue, 07 Nov 2017 15:52:36 GMT):
I'm not having any luck deploying a BNA after enabling TLS on my peers... has anyone seen this error before? `[shim] userChaincodeStreamGetter -> ERRO 002 Error trying to connect to local peer: x509: certificate signed by unknown authority`
davidkel (Tue, 07 Nov 2017 15:53:55 GMT):
@jmcnevin I would suggest asking on the fabric channels (maybe #fabric-peer-endorser-committer )
mahoney1 (Tue, 07 Nov 2017 16:21:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=WDKK8TLpAfYjG2gXZ) @Luxii By default, the REST server uses the LoopBack "memory" connector to persist user information, which is lost when the application is terminated. You can persist it https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
PaulWilliams (Tue, 07 Nov 2017 17:12:30 GMT):
Has joined the channel.
PaulWilliams (Tue, 07 Nov 2017 17:22:48 GMT):
Good day ladies and gentlemen. For the last couple months I've been struggling with hyperledger for my undergrad capstone project. I have created a network and web app around the REST API that was built with the composer-rest-server command. I am able to add participants, assets and execute transaction with the default settings. I am now trying to add authentication to the REST server and I can’t seem to get it to work. I have followed the steps on https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html but I can’t seem to get the 401 error. Any assistance is greatly appreciated. Here is some background about my project and the steps that I take to run my REST server
(ibx): project folder (this would be my-network from the tutorial)
(ibx/IBX): angular project (this would be my-app from the tutorial)
Open terminal and go to cd to (ibx) paste the Composer_Providers line from the website where I add my clientID and clientSecret
Run $Composer_Providers to verify the previous line
Run composer-rest-server -p hlfv1 -n ibx -i admin -s adminpw -N never -a true -m true -w true (ibx is my network)
I go to localhost:3000/explorer and run a get or post on the server it returns with status code 200 I go to localhost:3000/auth/github I get a 404 error
I go to localhost:3000/explorer/auth/github I get a 404 error
mahoney1 (Tue, 07 Nov 2017 17:36:38 GMT):
@PaulWilliams - hi there - not sure if its related - but the environment variable (you refer to) is case sensitive and must be uppercase COMPOSER_PROVIDERS and also be exported - suggest to create a Stack overflow with more information thanks
PaulWilliams (Tue, 07 Nov 2017 17:38:28 GMT):
@mahoney1 thanks for the tip. I copied the sample text and added my id and secret. I created a stack overflow at :https://stackoverflow.com/questions/47125292/hyperledger-composer-rest-authentication/47141426?noredirect=1#comment81251390_47141426, but no luck as of yet
bmilleker (Tue, 07 Nov 2017 19:19:51 GMT):
Has joined the channel.
bmilleker (Tue, 07 Nov 2017 19:22:01 GMT):
Hey guys. I am having some issues defining a connection profile. I am using TLS, but I am unsure which certificates are needed to be specified. I have tried supplying the CA for each org, and orderer, as well as the individual TLS certificates for each peer.
bmilleker (Tue, 07 Nov 2017 19:22:29 GMT):
When trying to deploy the network, I receive Could not load any root certificate.
E1107 10:38:57.489150000 140737215624128 ssl_transport_security.c:1297] Cannot load server root certificates.
E1107 10:38:57.489165000 140737215624128 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E1107 10:38:57.489170000 140737215624128 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'localhost:7053'
E1107 10:38:57.489174000 140737215624128 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
bmilleker (Tue, 07 Nov 2017 19:24:27 GMT):
I am not sure where to go from here. The network appears to be up and running. I just can't get my composer deployed on it.
bmilleker (Tue, 07 Nov 2017 19:45:39 GMT):
https://jira.hyperledger.org/browse/FAB-6266 <- this is essentially the issue I am having, unfortunately
bmilleker (Tue, 07 Nov 2017 19:50:56 GMT):
Updated GRPC via NPM. Looks like I am past the issue.
bmilleker (Tue, 07 Nov 2017 19:51:10 GMT):
Thanks for the help everyone.
mahoney1 (Tue, 07 Nov 2017 20:10:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=4wnXsW4RcQfb82NN2) @PaulWilliams we should have a fix for this on Thursday FYI, at the moment it doesn't work per that doc.
JamesBlack (Tue, 07 Nov 2017 20:12:12 GMT):
Has joined the channel.
zArchitectBill (Tue, 07 Nov 2017 21:49:09 GMT):
Clipboard - November 7, 2017 3:49 PM
zArchitectBill (Tue, 07 Nov 2017 21:49:10 GMT):
Hello, Composer folks. I have a very basic problem with the Composer Playground - when I either load my own .bna or one of the beginner samples and then try to execute a transaction, I get an error when trying to run the transaction IF there are > 1 transactions in the .bna. It looks like
zArchitectBill (Tue, 07 Nov 2017 21:49:22 GMT):
...that screenshot
zArchitectBill (Tue, 07 Nov 2017 21:49:58 GMT):
It appears the $class value in the JSON isn't changing when a new transaction is selected in the drop-down
zArchitectBill (Tue, 07 Nov 2017 21:50:59 GMT):
It always puts the $class value of the first transaction in the file
zArchitectBill (Tue, 07 Nov 2017 21:51:13 GMT):
and not of the specific transaction selected
zArchitectBill (Tue, 07 Nov 2017 21:51:15 GMT):
Help?
davidkel (Tue, 07 Nov 2017 22:02:18 GMT):
@zArchitectBill It's a known issue, please see https://github.com/hyperledger/composer/issues/2540
JamesBlack (Tue, 07 Nov 2017 23:06:33 GMT):
I am trying to find a good, complex example to follow, so I found this: https://github.com/IBM/BlockchainSmartContractTrading-CompositeJourney but I get too many errors, so I am guessing that it is too old to be of use. I use 'npm test` and I get errors like:
20:1 error Missing JSDoc return description valid-jsdoc
27:10 error 'closeBidding' is defined but never used no-unused-vars
JamesBlack (Tue, 07 Nov 2017 23:06:52 GMT):
Is there a recent example that is better than the basic networks one?
davidkel (Tue, 07 Nov 2017 23:15:21 GMT):
@JamesBlack https://github.com/hyperledger/composer-sample-applications see the vehicle lifecycle demo
ykcai (Wed, 08 Nov 2017 00:51:00 GMT):
Does anyone have more information on this topic : https://stackoverflow.com/questions/45347439/mvcc-read-conflict-when-submitting-multiple-transactions-concurrently. I am currently getting this error when I try to do multiple transactions involving the updating/read of the same participant.
labcoinpoc (Wed, 08 Nov 2017 01:16:37 GMT):
@ykcai according to the fabric document http://hyperledger-fabric.readthedocs.io/en/release/readwrite.html?highlight=read%20set
`Further, if the transaction writes a value multiple times for a key, only the last written value is retained. Also, if a transaction reads a value for a key, the value in the committed state is returned even if the transaction has updated the value for the key before issuing the read. In another words, Read-your-writes semantics are not supported.`
labcoinpoc (Wed, 08 Nov 2017 01:22:49 GMT):
maybe this is the reason. And in fabric here is a high-throughput solution https://github.com/hyperledger/fabric-samples/tree/release/high-throughput , which use composite key to solve the read write set problem. I tried to use an array to imitate the solution above but it did not work. I am looking for other way to solve it...
labcoinpoc (Wed, 08 Nov 2017 01:22:49 GMT):
maybe this is the reason. And in fabric here is a high-throughput solution https://github.com/hyperledger/fabric-samples/tree/release/high-throughput , which use composite key to solve the read write set problem. In composer I tried to use an array to imitate the solution above but it did not work. I am looking for other way to solve it...
labcoinpoc (Wed, 08 Nov 2017 01:28:19 GMT):
maybe we can always create a new asset when reading/writing a key, but there will be too many assets and query should be more difficult
ykcai (Wed, 08 Nov 2017 01:35:03 GMT):
This is news to me, thanks for point that out. This means that we have to handle our calls very carefully
ykcai (Wed, 08 Nov 2017 01:35:03 GMT):
This is news to me, thanks for point that out. This means that we have to handle our read/writes very carefully and efficiently
GLB (Wed, 08 Nov 2017 02:08:11 GMT):
Hi all, Does anybody know how to enable authentication and multi-user mode on a rest server deployed to IBM (free) cloud containers? Doing it locally is simple enough with 'composer-rest-server -p hlfv1 -n my-network -i admin -s adminpw -m true' but is there an analogous way to do it with the ibm-container-service scripts (https://github.com/IBM-Blockchain/ibm-container-service)?
pravinghuge (Wed, 08 Nov 2017 06:47:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=e42sgNiM8kDp6c4ij) @mahoney1
still the same issue in rest-composer
SumitTembe (Wed, 08 Nov 2017 06:56:15 GMT):
Issue with generated Rest API for CONTAINS query #2539
https://github.com/hyperledger/composer/issues/2539
Anyone looking into this issue?
CodeReaper (Wed, 08 Nov 2017 07:02:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QQMgfspD6NmwP2kkt) @davidkel I'm seeing that not only CA admin but all users can add new identities in their wallet after they have authenticated. DO they all have ability to register new users by default? And how do I make the first participant in the smart contract?
CodeReaper (Wed, 08 Nov 2017 07:02:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QQMgfspD6NmwP2kkt) @davidkel I'm seeing that not only CA admin but all users can add new identities in their wallet after they have authenticated. DO they all have ability to register new users by default? And how do I add the first participant ?
CodeReaper (Wed, 08 Nov 2017 07:02:44 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=QQMgfspD6NmwP2kkt) @davidkel I'm seeing that not only CA admin but all users can add new identities in their wallet after they have authenticated. DO they all have ability to register new users by default? I cant see all these users when listing through the cli. And how do I switch to admin to issue identity when authentication is witched on?
CodeReaper (Wed, 08 Nov 2017 07:02:54 GMT):
Clipboard - November 8, 2017 12:32 PM
CodeReaper (Wed, 08 Nov 2017 07:03:26 GMT):
I authenticated a new user but cant seem to make a participant using it. here is my ACL-
CodeReaper (Wed, 08 Nov 2017 07:03:26 GMT):
I authenticated a new user but cant seem to make a participant using it, getting the above error. Here is my ACL-
CodeReaper (Wed, 08 Nov 2017 07:03:57 GMT):
Clipboard - November 8, 2017 12:33 PM
mna2016 (Wed, 08 Nov 2017 07:34:43 GMT):
```
mna2016 (Wed, 08 Nov 2017 07:36:26 GMT):
Hi All, I am trying to use "optional" fields in the update transaction. But I am not able to recieve them in the update transaction in logic.js(Please see the following code). How do I do that? Need quick help.
mna2016 (Wed, 08 Nov 2017 07:36:29 GMT):
```
asset myAsset identified by assetId {
o String assetId
o String transactionType optional
o String gpsLat optional
o String gpsLon optional
}
transaction UpdateMyAsset {
-->myAsset myInputAsset
}
/**
* Asset update transaction
* @param {org.hyperledger_composer.myProj.UpdateMyAsset} updateAsset - the updateAsset Transaction
* @transaction
*/
function UpdateMyAsset(updateAsset) {
alert(updateAsset.transactionType);
return getAssetRegistry('org.hyperledger_composer.myProj.myAsset')
.then(function (assetRegistry) {
return assetRegistry.update(updateAsset);
})
.catch(function (error) {
// Add optional error handling here.
console.log("updateAsset Failed:" + error);
});
}
```
SimonOberzan (Wed, 08 Nov 2017 08:42:55 GMT):
Has joined the channel.
davidkel (Wed, 08 Nov 2017 08:52:44 GMT):
@CodeReaper Not sure I understand, bet let me reclarify. the admin identity has authority to register new identities in a CA server. If you give a user an identity for example you give them the crypto material for that identity or you present them with a username and secret for which they can get the crypto material from the CA Server, then they should be allowed to add this identity to their wallet as they own that identity.
davidkel (Wed, 08 Nov 2017 08:52:44 GMT):
@CodeReaper Not sure I understand, bet let me reclarify. the admin identity has authority to register new identities in a CA server. If you give a user an identity for example you give them the crypto material for that identity or you present them with a username and secret for which they can get the crypto material from the CA Server, then they should be allowed to add this identity to their wallet as they own that identity. But the most important part is that identity must be bound to a participant in the business network in order for the user of that identity to be able to do anything on that business network.
seiferjp (Wed, 08 Nov 2017 09:05:14 GMT):
Has joined the channel.
JoshuaRippon (Wed, 08 Nov 2017 09:11:18 GMT):
Can someone please clarify for me what the difference is between a peer (in fabric) and a participant (in composer) is?
username343 (Wed, 08 Nov 2017 09:27:38 GMT):
@JoshuaRippon If my understanding is correct, i think peer in fabric is a node that commits the transactions and participant in composer is a participant who interacts with the business network to initiate transactions
mna2016 (Wed, 08 Nov 2017 09:28:38 GMT):
Hi All, I need a detailed explanation of how security is implemented in hyperledger fabric v1.0/composer latest. So far i have built PoCs not paying much attention to security. Thanks.
mna2016 (Wed, 08 Nov 2017 09:30:41 GMT):
Please share links with latest features
Luxii (Wed, 08 Nov 2017 09:34:27 GMT):
How do i get state of an existing participant in transaction without passing it in transaction input?
username343 (Wed, 08 Nov 2017 09:36:11 GMT):
@Luxii are you trying to read the state of a participant from participant registry, in a transaction?
Luxii (Wed, 08 Nov 2017 09:38:23 GMT):
yes
username343 (Wed, 08 Nov 2017 09:42:22 GMT):
@Luxii try getParticipantRegistry and it's functions to get participant using the participant id, for reference use this https://hyperledger.github.io/composer/jsdoc/module-composer-runtime.html
username343 (Wed, 08 Nov 2017 09:44:46 GMT):
Hi @davidkel, can you point me at any resources for ensuring that the network upgrades are signed by all the participants in the network rather than just the admin unilaterally upgrading the network?
varunagarwal (Wed, 08 Nov 2017 10:07:52 GMT):
Hi this https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html describes a way to use auth with `composer-rest-server`. But what if I do not want to use ` composer-rest-server` and instead write my own transactions? What to do?
username343 (Wed, 08 Nov 2017 10:17:12 GMT):
@varunagarwal are you trying to submit transaction to business network using your identity and secret?
varunagarwal (Wed, 08 Nov 2017 10:18:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=e6WKJ59k8oZtKf6Mz) @username343 yes
username343 (Wed, 08 Nov 2017 10:18:52 GMT):
are you aware of composer-client library of nodejs
varunagarwal (Wed, 08 Nov 2017 10:38:55 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=TpWjns2HFhmp2m4ES) @username343 Yes, but idk what to do with it for auth. No tutorial or guide for that
username343 (Wed, 08 Nov 2017 10:42:26 GMT):
@varunagarwal have a look at this sample application, it submits a transaction using composer-client library, for connecting to composer business network you need to have a userid and secret which you can obtain by issuing new identity either from composer playground or using composer-cli.
username343 (Wed, 08 Nov 2017 10:42:35 GMT):
link -> https://hyperledger.github.io/composer/tutorials/developer-guide.html
varunagarwal (Wed, 08 Nov 2017 10:45:27 GMT):
Ya i have seen it, but then managing the identities becomes an issue
harsha (Wed, 08 Nov 2017 11:24:19 GMT):
Do we have weekly call today .. ??
mahoney1 (Wed, 08 Nov 2017 11:29:41 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=z6tf3HQYthrezeLMF) @SumitTembe will take a look
mahoney1 (Wed, 08 Nov 2017 11:39:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CY2qtJJAZDKsediE6) @harsha hi, the Weekly community call is tomorrow Thursday at 4pm UTC https://zoom.us/j/441168172
harsha (Wed, 08 Nov 2017 11:39:21 GMT):
@mahoney1 Thank you !!
username343 (Wed, 08 Nov 2017 11:40:17 GMT):
@varunagarwal you need to issue an identity to a participant created in the system, using either playground or cli, then use that identity to connect to the network, unless you don't want to keep id and secret in plain source code files
varunagarwal (Wed, 08 Nov 2017 11:42:35 GMT):
@username343 So my doubt it, I got 4 nodes, can a participant access any node? Like how it is in Ethereum?
mahoney1 (Wed, 08 Nov 2017 11:42:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=n98hBagGF9f64KCom) @JoshuaRippon a Fabric peer is is a blockchain network entity that maintains a ledger and runs chaincode containers in order to perform read/write operations to the ledger. Peers are owned and maintained by [organisational or participating members]. A participant in Composer, is mapped to one (or more) identities in a Composer business network, that ultimately submit transactions on that business network, and ultimately, the ledger.
username343 (Wed, 08 Nov 2017 11:45:28 GMT):
@varunagarwal well i am not sure about that, but i think access to nodes is handled by the composer runtime
varunagarwal (Wed, 08 Nov 2017 11:46:36 GMT):
I mean, if I have API branching out from each node, when I call businessNetworkDefinition.connect() , does the certificate for the identity have to exist locally on the node? In Ethereum I can interact with any node as long as I have my key pair, is it similar here?
varunagarwal (Wed, 08 Nov 2017 11:49:02 GMT):
@username343 ^^
CodeReaper (Wed, 08 Nov 2017 11:51:34 GMT):
How do I switch to admin to do admin operations such as issuing new identities when I've turned on the authentication(git authentication) in loopback API??
mahoney1 (Wed, 08 Nov 2017 11:52:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JnFdJohezz5u3KWH8) @mna2016 you can find this by going to Fabric docs http://hyperledger-fabric.readthedocs.io/en/release/fabric_model.html Access control in Composer is described here - https://hyperledger.github.io/composer/reference/acl_language.html and also see this S/O posting here -> https://stackoverflow.com/questions/44154652/securing-confidential-information-in-hyperledger-composer
username343 (Wed, 08 Nov 2017 12:00:37 GMT):
@varunagarwal even i'm confused about that, how does the fabric-ca ensures that the identity is registered with all the nodes in the network, but i think you can try to edit the connection.json in connection profile and see for yourself if its working
davidkel (Wed, 08 Nov 2017 12:01:22 GMT):
@username343 fabric ca has no interaction with a fabric network. It is there purely to generate certificates that are part of your organisations MSP
varunagarwal (Wed, 08 Nov 2017 12:01:26 GMT):
@username343 So the mapping of identity to participant is stored in an identity registry that the entire network has access to
username343 (Wed, 08 Nov 2017 12:02:25 GMT):
@davidkel then how do all the peers identify whether the identity is actually authorized to access the resources?
varunagarwal (Wed, 08 Nov 2017 12:02:27 GMT):
@davidkel My question is, if I want to handle multiple participants from the same node, each having their own identities, how do I do it? And without using compoer-rest-server because passport.js cannot support my requirements
mahoney1 (Wed, 08 Nov 2017 12:04:03 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=S3iiyA83tDexgtmTE) @varunagarwal Use the APIs https://hyperledger.github.io/composer/api/api-doc-index.html - there's a lot of resources on the web that describe Auth options (if that's what you're wanting to achieve). - see also here https://stackoverflow.com/questions/46565683/hyperledger-composer-and-authentication
varunagarwal (Wed, 08 Nov 2017 12:05:07 GMT):
@mahoney1 Ya iv already gone through api-doc. It talks of issuing identities to new participants, but nothing on how to handle serving multiple articipants. The only mention of that is enabling auth on `composer-rest-server`
warm3snow (Wed, 08 Nov 2017 12:06:58 GMT):
Has joined the channel.
CodeReaper (Wed, 08 Nov 2017 12:11:50 GMT):
nk the composer-rest-server is a good way to go for every use case, coding with fabric-client and fabric-ca-client is better than to use composer npm modules to support multiple users functionality.
CodeReaper (Wed, 08 Nov 2017 12:11:50 GMT):
I think the composer-rest-server is a good way to go for every use case, coding with fabric-client and fabric-ca-client is better than to use composer npm modules to support multiple users functionality.
CodeReaper (Wed, 08 Nov 2017 12:11:50 GMT):
I think the composer-rest-server is a good way to go for every use case, coding with fabric-client and fabric-ca-client is better than to use composer npm modules to support multiple users functionality but it then requires building smart contract through olang then.
CodeReaper (Wed, 08 Nov 2017 12:11:50 GMT):
I think the composer-rest-server is a good way to go for every use case, coding with fabric-client and fabric-ca-client is better than to use composer npm modules to support multiple users functionality but it then requires building smart contract through olang then.
CodeReaper (Wed, 08 Nov 2017 12:15:59 GMT):
Can someone clarify how can I switvh to admin to issue more identities once I've turned the authentication on?
CodeReaper (Wed, 08 Nov 2017 12:15:59 GMT):
Can someone clarify how can I switch to admin to issue more identities once I've turned the authentication on?
varunagarwal (Wed, 08 Nov 2017 12:18:29 GMT):
@CodeReaper Actually, I can use composer to code the smart contracts and then composer-admin and the other APIs to handle all functionality and more that composer-rest-server offers
CodeReaper (Wed, 08 Nov 2017 12:20:53 GMT):
@varunagarwal I am new to composer. I have made a couple of POC thorugh pure fabric. Can you elaborate what sort of functionalities are not covered in composer-rest-server?
varunagarwal (Wed, 08 Nov 2017 12:22:07 GMT):
@CodeReaper Rest server has the functionalities but I can modify it. For example, If i want to create a `POST` request using express, I can use the npm modules, and add my middleware. If I wanted to do that with rest-server, I would have to make 2 API calls
varunagarwal (Wed, 08 Nov 2017 12:22:32 GMT):
Its just I like to have more control over my code
varunagarwal (Wed, 08 Nov 2017 12:22:38 GMT):
Even if it means writing more
CodeReaper (Wed, 08 Nov 2017 12:24:48 GMT):
Perhaps not adding an extra layer of express at all would do?? Thats why they suggest something like angular making direct API calls to compose-rest-server. No chance of messing the process as all the security will be covered in smart contract itself.
davidkel (Wed, 08 Nov 2017 12:31:56 GMT):
@varunagarwal If you plan on writing your own node.js application then you need to do identity management yourself if you plan on having it support multiple identity use. We don't really provide any capabilities of that in our client api. All I can suggest is you raise an issue about what kind of capabilities you would need from the rest server and maybe an issue about documenting how identities are stored for composer use so that more information could be provided
varunagarwal (Wed, 08 Nov 2017 12:34:14 GMT):
@davidkel So at this point, would you recommend something like this
1) User signs in to the system
2) My application server receives the auth data from the user
3) Application server sends request to `composer-rest-server` with the auth details
4) Application server gets token and sends it back to the user, who uses it for all future requests for that session
davidkel (Wed, 08 Nov 2017 12:34:37 GMT):
@username343 I would recommend asking that question on the one of the other fabric specific channels such as #fabric-questions. But basically fabric out of the box supports a PKI based MSP implementation. Members of an MSP will have the right certificate chain. Peer Admins and Channel admins are registered with the peer and channel config
CodeReaper (Wed, 08 Nov 2017 12:50:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Q7Dy9KBxMqMpqa9wD) @davidkel Please reply to this
wininani (Wed, 08 Nov 2017 12:55:11 GMT):
Has joined the channel.
kmohanar (Wed, 08 Nov 2017 13:11:43 GMT):
I am trying to add one more peer(peer1) to the organisation(org1) in the sample application my-network.
But, I i have done the below mentioned changes,
Filename - Update
Docker-compose.yaml - added peer peer1.org1.example.com by taking copy of peer0.org1.example.com and updated the port numbers and names.
createComposerProfile.sh - Added the peer urls as object to the peer array
startFabric.sh - added the below lines next to creation of peer0
# Join peer1.org1.example.com to the channel.
docker exec -e "CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp/users/@org1.example.com" target="_blank" rel="noopener noreferrer">Admin@org1.example.com/msp" peer1.org1.example.com peer channel join -b composerchannel.block
Error:
When i am trying to run the ./startFabric.sh file i am facing Container not running error.
Please verify the steps i have mentioned and suggest if anything wrong or changes needed.
jaguarg (Wed, 08 Nov 2017 13:25:09 GMT):
Hello guys, I am stuck with this error
jaguarg (Wed, 08 Nov 2017 13:25:43 GMT):
`error: error trying to ping. Error: error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The current identity must be activated (ACTIVATION_REQUIRED))`
sstone1 (Wed, 08 Nov 2017 14:22:15 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xEsNqBHZQ9qzuKTD7) @CodeReaper the LoopBack connector and REST servers have APIs for issuing new identities - did you see those?
mahoney1 (Wed, 08 Nov 2017 14:28:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=y3MreNChoy2emBy5a) @jaguarg hi there - see this Stack Overflow answer here -> https://stackoverflow.com/questions/46201984/hyperledger-composer-error-the-current-identity-must-be-activated-activation - This can happen if you are using an old version of the CLI/Client Application/Rest Server trying to connect to a much newer version of the composer runtime that is deployed when you deploy the business network.
mahoney1 (Wed, 08 Nov 2017 14:43:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JwkRMLizcf2s6eYJi) @kmohanar hi there - we (Composer) only provide a Development setup for Fabric - its not as simple as you wrote about (container missing is probably your second peer container btw) - you need to use the Fabric samples to build your own Fabric blockchain network - read more here -> http://hyperledger-fabric.readthedocs.io/en/release/build_network.html - there is a channel #fabric where people (very recently) ask similar questions and also share their docker-compose setups by way of affirmation/validation - this may help you also. Once you've set up your new Fabric environment, you can add the relevant information to your connection profile (for the relevant peer(s), channel name etc).
mahoney1 (Wed, 08 Nov 2017 14:43:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JwkRMLizcf2s6eYJi) @kmohanar hi there - we (Composer) only provide a Development setup for Fabric - its not as simple as you wrote about (container missing is probably your second peer container btw) - you need to use the Fabric samples to build your own Fabric blockchain network - read more here -> http://hyperledger-fabric.readthedocs.io/en/release/build_network.html - there is a channel #fabric where people (very recently) ask similar questions and also share their docker-compose setups by way of affirmation/validation - this may help you also, but follow the doc link I sent you. Once you've set up your new Fabric environment, you can add the relevant information to your Composer connection profile (for the relevant peer(s), channel name etc). - Composer connects to the Fabric you set up.
jaguarg (Wed, 08 Nov 2017 14:56:50 GMT):
@mahoney1 thanks !
jaguarg (Wed, 08 Nov 2017 14:57:39 GMT):
I am now running the rest server in multiple user mode ( -m true) - What is the end point to authenticate ?
mahoney1 (Wed, 08 Nov 2017 15:06:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gxfsvDc2Em8GiAydb) @jaguarg it would depend on what you're using to authenticate with - see section 'Authenticating to the REST server using a web browser' in the doc https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html - step 1 describes the Github auth path (for example) but there are config steps that needed to be done to get to that point.
CodeReaper (Wed, 08 Nov 2017 15:24:10 GMT):
@sstone1 I think only admin can register new identities through System API. So I woul want my front-end application to have an admin's section separately where he can register new users. After turning on authentication I cant switch on to admin. and my current user who authenticated cant register new users. It gives this error--
CodeReaper (Wed, 08 Nov 2017 15:24:37 GMT):
Clipboard - November 8, 2017 8:54 PM
CodeReaper (Wed, 08 Nov 2017 15:25:29 GMT):
Do i need to start another composer-rest-server on different port for admin?? I tried, it works, but do I have to necessarily start another composer-rest-server??
SimonOberzan (Wed, 08 Nov 2017 15:25:45 GMT):
Hi. I have the following problem: When I'm generating the skeleton Angular web application, I can connect to it with `localhost:4200`, but when i try to connect from other host using `{HOST_IP:4200}` I get Invalid Host header response. Is there a way to allow access from other hosts?
SimonOberzan (Wed, 08 Nov 2017 15:25:45 GMT):
Hi. I have the following problem: When I'm generating the skeleton Angular web application, I can connect to it with `localhost:4200`, but when i try to connect from other host using `{HOST_IP}:4200` I get Invalid Host header response. Is there a way to allow access from other hosts?
sstone1 (Wed, 08 Nov 2017 15:27:13 GMT):
@CodeReaper when you issue identities, if you want those new identities to be able to issue other identities, you need to specify the `issuer` flag
sstone1 (Wed, 08 Nov 2017 15:28:41 GMT):
```
POST /api/identities/issue
{ "participant":"resource:org.acme.SampleParticipant#5", "userID":"id5", "options":
{ "issuer":true } }
CodeReaper (Wed, 08 Nov 2017 15:29:17 GMT):
@sstone1 who will be the first issuer??
CodeReaper (Wed, 08 Nov 2017 15:29:39 GMT):
If admin then I need to turn off authentication at the beginning no?
sstone1 (Wed, 08 Nov 2017 15:29:49 GMT):
you need a pre-existing Fabric CA user that has permission to issue the first identity
sstone1 (Wed, 08 Nov 2017 15:29:56 GMT):
`admin` / `adminpw` is the default Fabric CA user
CodeReaper (Wed, 08 Nov 2017 15:30:53 GMT):
Ok, he will start his composer with authentication off as he'll be using a separate composer all together in reality
CodeReaper (Wed, 08 Nov 2017 15:31:24 GMT):
or he would just bind a certificate he has when adding identity
mmyburgh (Wed, 08 Nov 2017 15:31:47 GMT):
When using CONTAINS in a query i get an error when building the project. It states the following - ParseException: Expected "!=", "%=", "&", "&=", ")", "*=", "+=", ",", "-=", ".", "/=", "<", "<<", "<<=", "<=", "=", "==", ">", ">=", ">>", ">>=", ">>>", ">>>=", "?", "AND", "OR", "[", "^", "^=", "|", "|=", comment, end of line or whitespace but "C" found. Line 37 column 27 Line 37 column 27
mmyburgh (Wed, 08 Nov 2017 15:31:47 GMT):
When using CONTAINS in a query i get an error when building the project. It states the following - ParseException: Expected "!=", "%=", "&", "&=", ")", "*=", "+=", ",", "-=", ".", "/=", "<", "<<", "<<=", "<=", "=", "==", ">", ">=", ">>", ">>=", ">>>", ">>>=", "?", "AND", "OR", "[", "^", "^=", "|", "|=", comment, end of line or whitespace but "C" found. Line 37 column 27 Line 37 column 27. I am on 0.14.3
Query looks like this query selectSaleTransactionByProperty {
description: "Search transactions for property by PIN"
statement:
SELECT org.tibco.propertynetwork.Sale
WHERE (property CONTAINS (pin == _$pin))
}
CodeReaper (Wed, 08 Nov 2017 15:46:40 GMT):
@sstone1 My question actually is that when I turn the multpile user off and authentication off then the admin is able to issue the identities from API. When I turn on those two I cant use admin or any other CA enrolled user to have in my wallet. I tried the route /wallets/{id}/identities for adding admin(admin adminpw) user into my wallets identity collection. I set the default. But Cant seem to do any smartcontract functions or adding new users through system API. How do I add an already registered and enrolled user directly at the first time.
mahoney1 (Wed, 08 Nov 2017 15:53:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6R6FwFPi9kGEDYo46) @mmyburgh ```WHERE ( property CONTAINS ( _$pin ))
}``` perhaps..
mahoney1 (Wed, 08 Nov 2017 15:53:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=6R6FwFPi9kGEDYo46) @mmyburgh ```query selectSaleTransactionByProperty {
description: "Search transactions for property by PIN"
statement:
SELECT org.tibco.propertynetwork.Sale WHERE ( property CONTAINS ( _$pin ))
}``` perhaps..
mmyburgh (Wed, 08 Nov 2017 15:56:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uo6eQmkfEKmr3jWqL) @mahoney1 Same error :(
mahoney1 (Wed, 08 Nov 2017 15:58:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=usDQYFdNfChMZAoa7) @SimonOberzan yes - the change is in (say) `my-app/src/app/configuration.ts ` (where my-app is the generated app dir). So if you have a network interface/resolvable host you could change the property ```public ApiIP: string = "localhost";`` to be your IP / host. Then you should be able to start your app on that IP and be able to access the skeleton app on 4200 I believe,
mahoney1 (Wed, 08 Nov 2017 15:58:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=usDQYFdNfChMZAoa7) @SimonOberzan yes - the change is in (say) `my-app/src/app/configuration.ts ` (where my-app is the generated app dir). So if you have a network interface/resolvable host you could change the property ```public ApiIP: string = "localhost";````` to be your IP / host. Then you should be able to start your app on that IP and be able to access the skeleton app on 4200 I believe,
mahoney1 (Wed, 08 Nov 2017 15:58:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=usDQYFdNfChMZAoa7) @SimonOberzan yes - the change is in (say) `my-app/src/app/configuration.ts ` (where my-app is the generated app dir). So if you have a network interface/resolvable host you could change the property ```public ApiIP: string = "localhost"; ``` to be your IP / host. Then you should be able to start your app on that IP and be able to access the skeleton app on 4200 I believe,
PaulWilliams (Wed, 08 Nov 2017 15:58:34 GMT):
@CodeReaper I am running into a similar issue. I turned off multiuser mode and was trying to issue an idea via the rest server but I keep getting a 500 error code. My network has 2 participants businesses and customers. The business is set up as such
PaulWilliams (Wed, 08 Nov 2017 15:58:38 GMT):
Clipboard - November 8, 2017 10:58 AM
PaulWilliams (Wed, 08 Nov 2017 15:59:16 GMT):
My post to issue an identity is as such
PaulWilliams (Wed, 08 Nov 2017 15:59:19 GMT):
Clipboard - November 8, 2017 10:59 AM
PaulWilliams (Wed, 08 Nov 2017 16:00:49 GMT):
Respectfully request assistance. Any assistance is greatly appreciated
mahoney1 (Wed, 08 Nov 2017 16:01:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=o6vCdTh396RfQzjMe) @PaulWilliams see sstones post earlier (2 mins ago) - missing `resource:` for one thing,
mahoney1 (Wed, 08 Nov 2017 16:01:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=o6vCdTh396RfQzjMe) @PaulWilliams see sstones post earlier ofr syntax guidance (2 mins ago) - missing `resource:` for one thing,
mahoney1 (Wed, 08 Nov 2017 16:01:04 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=o6vCdTh396RfQzjMe) @PaulWilliams see sstones post earlier for syntax guidance (2 mins ago) - missing `resource:` for one thing,
sstone1 (Wed, 08 Nov 2017 16:09:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=M23zC4ttd5hpfEAuB) @CodeReaper I assume you get errors along the lines of:
sstone1 (Wed, 08 Nov 2017 16:09:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=M23zC4ttd5hpfEAuB) @CodeReaper I assume you get errors along the lines of:
> Error: The current identity has not been registered: admin
This is because we enrol the admin identity _twice_, which generates two different certificates, and the second one does not match the first one recorded in the Blockchain.
sstone1 (Wed, 08 Nov 2017 16:10:50 GMT):
we'll make this easier with tomorrows release by introducing business network cards, which amongst a whole lot of other improvements will allow you to easily import existing certificates into the REST server
sstone1 (Wed, 08 Nov 2017 16:11:18 GMT):
in the mean time you will have to use the CLI to issue a new identity for the REST server to use using `composer identity issue ... -x`
sstone1 (Wed, 08 Nov 2017 16:11:30 GMT):
and use that identity instead of `admin` / `adminpw` as the initial Fabric CA user
swapnilpatil (Wed, 08 Nov 2017 16:15:09 GMT):
Has joined the channel.
PaulWilliams (Wed, 08 Nov 2017 16:18:34 GMT):
I just started experimenting with adding identities to my participants via the REST server. Should I wait until the release tomorrow as not to get confused with the way things are set up currently?
sstone1 (Wed, 08 Nov 2017 16:23:37 GMT):
probably for the best
sstone1 (Wed, 08 Nov 2017 16:23:41 GMT):
it'll be _much_ simpler
PaulWilliams (Wed, 08 Nov 2017 16:24:50 GMT):
@sstone1 Roger that, thanks for the assistance
CodeReaper (Wed, 08 Nov 2017 17:54:44 GMT):
@sstone1 Can we expect new documentation along with the changed process all together?
sstone1 (Wed, 08 Nov 2017 17:55:58 GMT):
yes, we always try to update the docs at the same time as the code ;)
JamesBlack (Wed, 08 Nov 2017 18:05:03 GMT):
I have cloned https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-lifecycle but how do I change it so I can use the code on my local computer now, as I would like to make modifications and see how it works. Basically I want to create a new application that will come up with everything else.
JamesBlack (Wed, 08 Nov 2017 18:23:17 GMT):
When I do this command I want it to build the latest code from my directory and deploy it. cat installers/hlfv1/install.sh | bash
mmyburgh (Wed, 08 Nov 2017 18:51:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dbgFqC7v7pSrZnxb6) If this is the case, does it look like an error, how should i take this further to get this resolved?
sstone1 (Wed, 08 Nov 2017 19:07:40 GMT):
@mmyburgh have you got the definition of the `Sale` asset ?
sstone1 (Wed, 08 Nov 2017 19:08:18 GMT):
it should be `SELECT org.tibco.propertynetwork.Sale WHERE ( property CONTAINS _$pin)` (no `(` + `)` needed around the `_$pin` )
mmyburgh (Wed, 08 Nov 2017 19:13:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sqSNhKBmgkFcJ6Czm) @sstone1 Same error
mmyburgh (Wed, 08 Nov 2017 19:17:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hEv8EmhCzx5fMExv2) asset Property identified by pin {
o String pin
o String type
o Double acres
o String subdivision
o String streetAddress
o String city
o String state
o String zip
o Double appraisal
o Double taxAssesment
o Double lastSoldPrice
--> Owner owner
}
participant Owner identified by ownerSSN {
o String ownerSSN
o String firstName
o String lastName
o String emailAddress
o String telephone
}
transaction Sale {
o Double salePrice
--> Property property
--> Owner newOwner
}
mmyburgh (Wed, 08 Nov 2017 19:57:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hEv8EmhCzx5fMExv2) Does the definition help. Sale is not an asset its a transaction?
manojamin (Wed, 08 Nov 2017 21:27:13 GMT):
Is there a plan for Composer to be Production ready (not just a POC) tool with a multichannel supports?
sstone1 (Wed, 08 Nov 2017 23:28:40 GMT):
@mmyburgh CONTAINS is for testing whether or not an array contains a value
sstone1 (Wed, 08 Nov 2017 23:28:43 GMT):
you want
sstone1 (Wed, 08 Nov 2017 23:28:56 GMT):
SELECT org.tibco.propertynetwork.Sale WHERE ( property == _$pin)
sstone1 (Wed, 08 Nov 2017 23:29:05 GMT):
but _$pin has to be the URI format of the relationship
sstone1 (Wed, 08 Nov 2017 23:29:21 GMT):
`resource:org.tibco.propertynetwork.Property#1234`
sstone1 (Thu, 09 Nov 2017 00:33:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9F8zG52mEPKFPYShh) @manojamin there are two different questions there:
1) production readiness - we are working towards a Composer v1.0 release, but this is dependent on Fabric v1.1 being released (currently 1Q18) so we can migrate to Node.js chaincode.
2) multi-channel support - by this, I presume you mean the ability to share data across multiple business networks running in different business networks - there is a plan for this in a feature called "links".
bh4rtp (Thu, 09 Nov 2017 00:35:11 GMT):
@sstone1 fabric 1.1.0 preview has be released.
bh4rtp (Thu, 09 Nov 2017 00:35:11 GMT):
@sstone1 fabric 1.1.0 preview has been released.
sstone1 (Thu, 09 Nov 2017 00:35:57 GMT):
Yep, expect Composer to pick the preview build up soon.
sstone1 (Thu, 09 Nov 2017 00:36:13 GMT):
But bear in mind it's a "preview" and not feature complete.
sstone1 (Thu, 09 Nov 2017 00:36:34 GMT):
The latest we hear is that Fabric v1.1 "final" will come in 1Q18 some time
labcoinpoc (Thu, 09 Nov 2017 00:58:24 GMT):
@sstone1 Hi, I am not quite clear about the syntax of endorsement policy in composer. In the document there is an example:
```
{"identities":[...],
"policy": {...}}
```
what context should fill into the brackets,could you give a more detailed example? thanks!
labcoinpoc (Thu, 09 Nov 2017 00:58:24 GMT):
@sstone1 Hi, I am not quite clear about the syntax of endorsement policy in composer. In the document there is an example:
```
{"identities":[...],
"policy": {...}}
```
what content should fill into the brackets,could you give a more detailed example? thanks!
sstone1 (Thu, 09 Nov 2017 01:01:40 GMT):
@labcoinpoc endorsement policy format is defined by the Fabric SDK for Node.js
sstone1 (Thu, 09 Nov 2017 01:01:47 GMT):
you can see some examples here:
sstone1 (Thu, 09 Nov 2017 01:01:49 GMT):
https://fabric-sdk-node.github.io/global.html#ChaincodeInstantiateUpgradeRequest
sstone1 (Thu, 09 Nov 2017 01:02:09 GMT):
but bear in mind they are in JavaScript object format rather than JSON format
labcoinpoc (Thu, 09 Nov 2017 01:03:33 GMT):
it's very helpful, thank you!
sstone1 (Thu, 09 Nov 2017 01:04:18 GMT):
np
andreasp1994 (Thu, 09 Nov 2017 02:57:20 GMT):
Hey, how can I use some logging in the Composer transactions functions??
andreasp1994 (Thu, 09 Nov 2017 02:57:33 GMT):
console.log does not display anything
pradeeppadmarajaiah (Thu, 09 Nov 2017 04:14:50 GMT):
Hi Team, Can i use Composer for Production ready application ??
labcoinpoc (Thu, 09 Nov 2017 04:47:37 GMT):
I am testing endorsement policy in composer. If I delete the IP address of one peer in connection profile, then the network returns an `ENDORSEMENT_POLICY_FAILURE` when sending transaction, what just as expected. But if I stop the container of one peer, the response is `Unhandled error for request POST /api/User: Error: Error trying invoke business network. Error: Connect Failed`. Can composer ignore this connect failure,cause this would happen in real situation and the system should be still working.
labcoinpoc (Thu, 09 Nov 2017 04:47:37 GMT):
I am testing endorsement policy in composer rest server. If I delete the IP address of one peer in connection profile, then the network returns an `ENDORSEMENT_POLICY_FAILURE` when sending transaction, what just as expected. But if I stop the container of one peer, the response is `Unhandled error for request POST /api/User: Error: Error trying invoke business network. Error: Connect Failed`. Can composer rest server ignore this connect failure,cause this would happen in real situation and the system should be still working.
username343 (Thu, 09 Nov 2017 05:06:21 GMT):
what is the use of binding an identity to participant in composer? After binding the participant identity to a certificate, can i still use the userid and secret to connect to network using composer-client nodejs library ?
baoyangc (Thu, 09 Nov 2017 05:26:53 GMT):
@sstone1 what's the meaning of `1Q18`?
username343 (Thu, 09 Nov 2017 06:19:35 GMT):
@baoyangc probably first quarter of 2018, i may be wrong though
varunagarwal (Thu, 09 Nov 2017 06:23:55 GMT):
@andreasp1994 Some examples use `winston` as a logger for composer projects. Check it out
kmohanar (Thu, 09 Nov 2017 06:34:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5oJ7JfgAbq6NXJd6k) @mahoney1 : Thank you. i will check the shared links.
kmohanar (Thu, 09 Nov 2017 06:34:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=5oJ7JfgAbq6NXJd6k) @mahoney1 : Thank you. i will check the shared links and will update the status.
atulkamble (Thu, 09 Nov 2017 07:10:00 GMT):
Hi All,
I can change the value of variable in world state in CouchDB. This might disrupts the transactions going on in a network. By default the admin has access over all the features of CouchDB database. This can cause the compromise of value of vairables in world state (if the admin intends to). How do I control the access so as to not change the values in CouchDB manually.
argman (Thu, 09 Nov 2017 08:27:27 GMT):
Hello! Can you explain how composer-rest-server generate 'access_token', and how I can get it on my client application?
davidkel (Thu, 09 Nov 2017 08:33:09 GMT):
@username343 No, this isn't a userid and password system. It is a system for obtaining a unique certificate for that identity which you then register with the participant. If you tried with that secret again and if the CA let's you re-enroll that identity (currently our dev server fabric ca would allow that) then you actually get a completely new certificate for that identity which would not match the one registered to the participant and that identity would be rejected.
username343 (Thu, 09 Nov 2017 08:41:32 GMT):
thanks for responding @davidkel , so you are saying once i obtain the certificates from ca using that id and secret (user enrollment) ,i won't be able to use that secret again? Then how would i connect to the business network using the composer-cli, because the businessNetworkConnection.connect() function takes, profileName, networkName, id and secret the four strings are arguments?
username343 (Thu, 09 Nov 2017 08:41:32 GMT):
thanks for responding @davidkel , so you are saying once i obtain the certificates from ca using that id and secret (user enrollment) ,i won't be able to use that secret again? Then how would i connect to the business network using the composer-client, because the businessNetworkConnection.connect() function takes, profileName, networkName, id and secret the four strings are arguments?
SimonOberzan (Thu, 09 Nov 2017 08:56:23 GMT):
@mahoney1 I acctualy had to change `ng serve --host 0.0.0.0` to `ng serve --host {MY_IP}`, in addition to your answer and now it works. Thank you.
davidkel (Thu, 09 Nov 2017 09:00:25 GMT):
@username343 The api only uses the secret if no certificate is available, basically enrolling the identity for you.
username343 (Thu, 09 Nov 2017 09:01:29 GMT):
@davidkel so how would i specify my certificate for api to use that?
username343 (Thu, 09 Nov 2017 09:01:42 GMT):
or location of my certificate
warm3snow (Thu, 09 Nov 2017 09:23:03 GMT):
```
2017-11-09 09:18:24.470 UTC [statecouchdb] NewVersionedDBProvider -> DEBU 00b constructing CouchDB VersionedDBProvider
2017-11-09 09:18:24.471 UTC [couchdb] CreateConnectionDefinition -> DEBU 00c Entering CreateConnectionDefinition()
2017-11-09 09:18:24.471 UTC [couchdb] CreateConnectionDefinition -> DEBU 00d Created database configuration URL=[http://couchdb:5984]
2017-11-09 09:18:24.471 UTC [couchdb] CreateConnectionDefinition -> DEBU 00e Exiting CreateConnectionDefinition()
2017-11-09 09:18:24.471 UTC [couchdb] VerifyCouchConfig -> DEBU 00f Entering VerifyCouchConfig()
2017-11-09 09:18:24.471 UTC [couchdb] handleRequest -> DEBU 010 Entering handleRequest() method=GET url=http://couchdb:5984/
2017-11-09 09:18:24.471 UTC [couchdb] handleRequest -> DEBU 011 HTTP Request: GET / HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2017-11-09 09:18:59.472 UTC [couchdb] handleRequest -> WARN 012 Retrying couchdb request in 125ms. Attempt:1 Error:Get http://couchdb:5984/: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
2017-11-09 09:18:59.598 UTC [couchdb] handleRequest -> DEBU 013 HTTP Request: GET / HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2017-11-09 09:19:34.599 UTC [couchdb] handleRequest -> WARN 014 Retrying couchdb request in 250ms. Attempt:2 Error:Get http://couchdb:5984/: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
2017-11-09 09:19:34.850 UTC [couchdb] handleRequest -> DEBU 015 HTTP Request: GET / HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
```
When I start fabric by running `startFabric.sh`, I got this error.
warm3snow (Thu, 09 Nov 2017 09:24:25 GMT):
The script is from `fabric-dev-servers.zip`.
bestbeforetoday (Thu, 09 Nov 2017 09:41:18 GMT):
@username343 When the enrollment happens, the credentials are stored on the filesystem by the client, keyed by the user name. So if you call connect() again, the client will automagically use the stored certificate instead of the secret. I think the API-level support for cards in the next Composer release will help. The card bundles together all the information needed to connect to a business network (connection profile, network name, user name, and credentials or enrollment secret). You import a card and then just specify the card name when calling connect. You don't need to worry about the secret or certificates again. If you want to use that identity from somewhere else, just export the card and it will contain everything you need (including any certificates that might have been obtained by enrollment). Hope that makes sense!
kiknaio (Thu, 09 Nov 2017 09:41:24 GMT):
Has joined the channel.
bestbeforetoday (Thu, 09 Nov 2017 09:47:17 GMT):
If you want to import existing certificates for an identity prior to calling connect using the current (0.14.x) version of Composer, look at the `composer identity import` command-line and the `AdminConnection.importIdentity()` API call. Note that these are being replaced by cards (`composer card import` and `AdminConnection.importCard()`), hopefully later today
bestbeforetoday (Thu, 09 Nov 2017 09:47:17 GMT):
If you want to import existing certificates for an identity prior to calling connect using the current (0.14.x) version of Composer, look at the `composer identity import` command-line and the `AdminConnection.importIdentity()` API call. Note that these are being replaced by cards ( `composer card import` and `AdminConnection.importCard()`), hopefully later today
username343 (Thu, 09 Nov 2017 10:02:32 GMT):
thanks @bestbeforetoday i saw the composer cards in ~/.composer-credentials, so i guess you are talking about them. But i am confused with the connect function in composer-client, because right now i pass it four parameters. Once I've got these certificates, and my secret is rendered useless, how do i call the connect function to connect to the business network, i'm talking about concrete implementation, like what argument do i pass to connect function or do I need to call some other function to connect to the network?
username343 (Thu, 09 Nov 2017 10:07:21 GMT):
how do we define validating and committing peers in hyperledger composer?
bestbeforetoday (Thu, 09 Nov 2017 10:22:23 GMT):
You can pass whatever you want as the secret. It will be ignored if certificates are present
mahoney1 (Thu, 09 Nov 2017 10:23:27 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=AgGzf6d8Z4jGwRG2s) @warm3snow hi - where are you running your Fabric environment - on a local dev server (localhost runtime) or on a Cloud hosted environment for example? Is your peer up? Can you provide a `docker ps` ..
username343 (Thu, 09 Nov 2017 10:24:03 GMT):
thanks @bestbeforetoday now it's clear to me
username343 (Thu, 09 Nov 2017 10:24:38 GMT):
one more question that i wanna ask is how do i define endorsing peers in composer?
username343 (Thu, 09 Nov 2017 10:25:25 GMT):
In fabric the peers which have the chaincode installed are endorsing peers that i am sure of
bestbeforetoday (Thu, 09 Nov 2017 10:25:30 GMT):
@username343 Just a note... what you see in ~/.composer-credentials is actually Fabric client credentials and user data. It is not Composer card data. Once the next release goes out, card data (and the Fabric client data) should get saved within ~/.composer. You shouldn't touch this directly though. Import cards with `composer card import` (or `AdminConnection.importCard()`) and get them back out with `composer card export` (or `AdminConnection.exportCard()`)
bestbeforetoday (Thu, 09 Nov 2017 10:25:30 GMT):
@username343 Just a note... what you see in `~/.composer-credentials` is actually Fabric client credentials and user data. It is not Composer card data. Once the next release goes out, card data (and the Fabric client data) should get saved within ~/.composer. You shouldn't touch this directly though. Import cards with `composer card import` (or `AdminConnection.importCard()`) and get them back out with `composer card export` (or `AdminConnection.exportCard()`)
bestbeforetoday (Thu, 09 Nov 2017 10:28:20 GMT):
@username343 All the Fabric-specific client configuration (peers etc.) is in the connection profile ( `connection.json`)
username343 (Thu, 09 Nov 2017 10:29:18 GMT):
so if i add more peers in connection.json will the chaincode be installed on all those peers?
bestbeforetoday (Thu, 09 Nov 2017 10:35:14 GMT):
When you do `composer runtime install`, yes. Note that this is just telling the client which peers to talk to; not defining new peers in the configuration of Fabric itself
jaguarg (Thu, 09 Nov 2017 11:04:31 GMT):
Hi ,I am issuing identities and adding participants by code. Now I am stuck with the activation process. Is there some code I can use to activate an identity (i am using the nodejs modules) ?
nippleDonkey (Thu, 09 Nov 2017 11:27:41 GMT):
@jaguarg the identities are "activated" when used for the first time.
"When a participant uses an identity to submit a transaction to the deployed business network for the first time, that identity is Activated. This means that the entry in the identity registry is updated to record the fact that the identity was used for the first time" ...
https://hyperledger.github.io/composer/managing/participantsandidentities.html
Jay89 (Thu, 09 Nov 2017 11:28:47 GMT):
Has joined the channel.
Jay89 (Thu, 09 Nov 2017 11:31:36 GMT):
After issuing an identity, how can i get a users private and public key?
Jay89 (Thu, 09 Nov 2017 11:31:36 GMT):
@username343 how can i obtain them with node js? also do you have a link that can show me this?
SimonOberzan (Thu, 09 Nov 2017 12:05:44 GMT):
Hi. I have a fabric project where new peers, orderers, CAs can be added dynamically. Now how would I approach that with using composer. As I understand, I need to set a connection profile in connection.json, but how would adding additional nodes impact existing bussines networks? I probably have to somehow update the composer connection profile and update the network? How would you recommend solving this case?
SimonOberzan (Thu, 09 Nov 2017 12:05:44 GMT):
Hi. I have a fabric project where new peers, orderers, CAs can be added dynamically. Now how would I approach that with using composer. As I understand, I need to set a connection profile in connection.json, but how would adding additional nodes impact existing bussines networks? I probably have to somehow update the composer connection profile and update the network (or is there a way to do it with SDK?)? How would you recommend solving this case?
username343 (Thu, 09 Nov 2017 12:51:52 GMT):
thanks @bestbeforetoday you are very helpful
jaguarg (Thu, 09 Nov 2017 12:55:55 GMT):
@nippleDonkey thank you very much
jaguarg (Thu, 09 Nov 2017 13:01:38 GMT):
Hi, I am having a difficulty with getParticipantRegistry . When connected as admin, I can find participants. When connected as another identity, the returned array is empty .
jaguarg (Thu, 09 Nov 2017 13:02:02 GMT):
All I would like to do, is return the participants related to the identity I am connected as
jaguarg (Thu, 09 Nov 2017 13:02:17 GMT):
I am using the composer-client with nodejs
nippleDonkey (Thu, 09 Nov 2017 13:04:19 GMT):
Have you configured your ACL for the created participant to have READ access ?
jaguarg (Thu, 09 Nov 2017 13:05:52 GMT):
@nippleDonkey I have added this ```rule AllReadSystemNetwork {
description: "Grant ALL READ access to system resources"
participant: "**"
operation: READ
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}```
jaguarg (Thu, 09 Nov 2017 13:07:14 GMT):
but it does not seems to do the trick as my newly added identities get no result when querying the participant registries
nippleDonkey (Thu, 09 Nov 2017 13:10:37 GMT):
Yeah, perhaps the others can clarify the ACL a bit more but I was thinking you might have to give access to the specific resource. Something like:
```
rule ReadUsers {
description: "Description"
participant(p): "org.acme.common.SomeUser"
operation: READ
resource(u): "org.acme.common.SomeUser"
action: ALLOW
}
```
jaguarg (Thu, 09 Nov 2017 13:11:01 GMT):
I see, I was just about to try this ;-) ....
CodeReaper (Thu, 09 Nov 2017 13:11:39 GMT):
Can I make the database persist for wallets for multiple users without using docker?
CodeReaper (Thu, 09 Nov 2017 13:12:15 GMT):
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
CodeReaper (Thu, 09 Nov 2017 13:12:15 GMT):
Setting the environment variable-
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
CodeReaper (Thu, 09 Nov 2017 13:13:12 GMT):
I should edit my host as localhost. What should be the next step
username343 (Thu, 09 Nov 2017 13:13:36 GMT):
@Jay89 you can obtain the user's private and public key using the fabric-ca-client enroll command of the fabric-ca in the fabric network
username343 (Thu, 09 Nov 2017 13:13:58 GMT):
using the id and secret obtained after using the issue command from composer
jaguarg (Thu, 09 Nov 2017 13:16:29 GMT):
@nippleDonkey , that was it. Thanks a lot.
Jay89 (Thu, 09 Nov 2017 13:18:06 GMT):
@username343 do you have a link showing me this? how can i obtain with with node js?
Jay89 (Thu, 09 Nov 2017 13:18:15 GMT):
example
Jay89 (Thu, 09 Nov 2017 13:18:28 GMT):
.then(() => {
return businessNetworkConnection.issueIdentity(NS + '.Patient#alice@email.com', 'alice@email.com');
})
.then((result) => {
console.log(`ALICE: userID = ${result.userID}`);
console.log(`ALICE: userSecret = ${result.userSecret}`);
aliceIds.id = result.userID;
aliceIds.secret = result.userSecret;
})
nippleDonkey (Thu, 09 Nov 2017 13:21:10 GMT):
@jaguarg Yay!
warm3snow (Thu, 09 Nov 2017 13:30:47 GMT):
@mahoney1 It seems the peer tries to connect couchdb but failed, I run it on macOS locally. Strangely, when i test it on Ubuntu, there is no such problem.
andreasp1994 (Thu, 09 Nov 2017 13:31:51 GMT):
Is there a way to get the current participant binded witth the identity used to connect to the business network from the client API with a single command? or should I just query the participant registry?
mahoney1 (Thu, 09 Nov 2017 13:33:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ausBubLB3YpHCZDSo) @andreasp1994 `getcurrentParticipant();` see examples here https://hyperledger.github.io/composer/business-network/programmatic-access-control.html
andreasp1994 (Thu, 09 Nov 2017 13:35:19 GMT):
@mahoney1 But getCurrentParticipant is for the runtime API, I need to do it from the client API
nippleDonkey (Thu, 09 Nov 2017 13:36:01 GMT):
@andreasp1994 have you looked through this: https://hyperledger.github.io/composer/managing/identity-bind.html
vijayin26 (Thu, 09 Nov 2017 13:38:18 GMT):
Composer 0.14.3 version does not show up JSON Data Preview data if the model contains abstract key word and any other participant extends from it.
vijayin26 (Thu, 09 Nov 2017 13:38:18 GMT):
Composer 0.14.3 version does not show up JSON Data Preview data if the model contains abstract key word and any other participant extends from it. Does any one face the issue?
vijayin26 (Thu, 09 Nov 2017 13:38:18 GMT):
Composer 0.14.3 version does not show up JSON Data Preview data if the model contains abstract key word and any other participant extends from it. Does any one face the issue?
vijayin26 (Thu, 09 Nov 2017 13:38:18 GMT):
Composer 0.14.3 version does not show up JSON Data Preview data if the model contains abstract key word and any other participant extends from it. Does any one face the issue?
andreasp1994 (Thu, 09 Nov 2017 13:38:57 GMT):
@nippleDonkey Thanks! ping() has the participant in its response. I didn't notice that :)))
Emmy (Thu, 09 Nov 2017 13:41:38 GMT):
Hello, is there any way to catch errors?? what i mean is, for example if I query a value, but it doesn't exist I get an error that it is not defined or doesn't exist. is there a way that i can say that in case i receive that error, print an error message and continue?
mahoney1 (Thu, 09 Nov 2017 13:42:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rbF6LjzC6uqNEaDd4) @SimonOberzan Composer uses the running blockchain infrastructure aka your Fabric environment and connects based on how you want it to connect to the Fabric. Additional nodes (eg peers) may be set up for different channels (just one example) so the connection profile (which the business network will use to connect) is configured accordingly to reflect what peers and what channels the business network will connect to. Obviously using a different 'dynamic' CA also changes things up. If for some reason your peers or other nodes change, your connection profile (connection.json) would need to reflect this, however you create them / set them up. See more here and there's plenty of examples of connection profiles out on Stack overflow too -> https://hyperledger.github.io/composer/reference/connectionprofile.html
vijayin26 (Thu, 09 Nov 2017 13:44:53 GMT):
Composer 0.14.3 throws below error when trying to ping the IBM blockchain sandbox rest server... I did not get this error with previous versions of the composer ... Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: Object with ID 'admin' in collection with ID 'Asset:org.hyperledger.composer.system.Identity' does not exist)\n at channel.queryByChaincode.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:765:34
SimonOberzan (Thu, 09 Nov 2017 13:45:50 GMT):
@mahoney1 I see. So the easiest (only) way to update my business network is to change the connection.json file and update using the `composer network update ...`?
nippleDonkey (Thu, 09 Nov 2017 13:48:45 GMT):
@vijayin26 Did you make the changes to the deployment introduced in 0.14.0? You need to specify the network admin
vijayin26 (Thu, 09 Nov 2017 13:49:55 GMT):
@nippleDonkey Yes we included the new rules introduced in 0.14.0 it was working for 0.14.2 not with 0.14.3
nippleDonkey (Thu, 09 Nov 2017 13:53:10 GMT):
Ahh ok, I'm not using the IBM sandbox but running into similar issues with missing / not registered identities. Currently following this issue:
https://github.com/hyperledger/composer/issues/2585
Jay89 (Thu, 09 Nov 2017 13:53:53 GMT):
@username343 I did this to attempt to get the keys. teh documentation says it returns a promise however it does not work.
Jay89 (Thu, 09 Nov 2017 13:54:20 GMT):
var Fabric_Client = require('fabric-ca-client');
var fabric_client = new Fabric_Client("http://localhost:7054");
fabric_client.enroll({enrollmentID:aliceIds.id,enrollmentSecret:aliceIds.secret})
.then((result) => {
console.log(result)
})
vijayin26 (Thu, 09 Nov 2017 13:54:21 GMT):
Clipboard - November 9, 2017 7:54 AM
vijayin26 (Thu, 09 Nov 2017 13:56:07 GMT):
composer.PNG
vijayin26 (Thu, 09 Nov 2017 14:12:52 GMT):
@nippleDonkey Thank you for the issue link... Looks like we are also facing the same issue. Sandbox scripts provided by IBM use Org1 and Org 2.
vijayin26 (Thu, 09 Nov 2017 14:12:52 GMT):
@nippleDonkey Thank you for the issue link... Looks like we are also facing the same issue. Sandbox scripts provided by IBM use Org1 and Org 2. It was working with 0.13.2 without any issues as mentioned in that link.
vijayin26 (Thu, 09 Nov 2017 14:12:52 GMT):
@nippleDonkey Thank you for the issue link... Looks like we are also facing the same issue. Sandbox scripts provided by IBM use Org1 and Org 2. It was working with composer rest server 0.13.2 without any issues as mentioned in that link.
nippleDonkey (Thu, 09 Nov 2017 14:19:58 GMT):
I know this issue was posted on GitHub, but I'm going to post it here incase anyone knows the answer. If I use
```
composer network start -p some-profile -a network.bna -i PeerAdmin -s adminpw -A admin-org1 -C ./path/to/Admin@cert.pem
```
How do i use admin-org1 in something like a network ping that requires a secret?
davidkel (Thu, 09 Nov 2017 14:24:00 GMT):
@nippleDonkey you only have to specify a secret in case the identity crypto material has not been imported into the credentials store (keyValStore) in which case the command will request the crypto material from the CA server and import it for you. If you already have the crypto material (public cert, private key) you can use the composer identity import command
CodeReaper (Thu, 09 Nov 2017 14:25:45 GMT):
Hey, Can I make the database persist for wallets for multiple users without using docker?
Setting the environment variable-
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
I should edit my host as localhost. What should be the next step
nippleDonkey (Thu, 09 Nov 2017 14:26:27 GMT):
@davidkel Thank you! It's been staring at me in the face. I've been importing the PeerAdmin identities but not the network admin identities! Going to give that a go, but suspect that's my issue
mahoney1 (Thu, 09 Nov 2017 14:29:52 GMT):
@SimonOberzan the easiest way will be (given your context provided earlier) is to create business network cards using a Composer command line `composer card create` (which should come in a release later today) - sourcing the connection profile information that forms part of the card itself - and that is used in (say) `composer network update` - to connect to a deployed business network, so as to perform any updates to that business network (eg model or logic changes)
davidkel (Thu, 09 Nov 2017 14:30:19 GMT):
@vijayin26 there were some problems introduced in the 0.14.3 release. I would recommend going back to 0.14.2 for now
SimonOberzan (Thu, 09 Nov 2017 14:31:50 GMT):
@mahoney1 Ok, will try it when it tomorrow, thank you.
vijayin26 (Thu, 09 Nov 2017 14:35:30 GMT):
@davidkel Thank You...Will try to revert it to older version and see if that works....
nrrso (Thu, 09 Nov 2017 16:00:21 GMT):
Has joined the channel.
mahoney1 (Thu, 09 Nov 2017 16:06:40 GMT):
fyi @here - the Community call today (Thurs) will be at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming ->https://github.com/hyperledger/composer/wiki/Meeting-9th-November-2017 best regards Paul
sstone1 (Thu, 09 Nov 2017 17:19:43 GMT):
@here we've released Hyperledger Composer v0.15.0 with business network card support across the board, including the Node.js APIs, REST APIs, and CLIs. A fantastic step forwards in usability and a brilliant effort from the whole team to get it out today! 😁 https://github.com/hyperledger/composer/releases/tag/v0.15.0
jeffgarratt (Thu, 09 Nov 2017 17:28:57 GMT):
did I miss the call?
mahoney1 (Thu, 09 Nov 2017 17:37:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hPKZSBXqJb3dEM9Pn) @jeffgarratt hi Jeff, we finished about 5.26 :-( today
mahoney1 (Thu, 09 Nov 2017 17:39:06 GMT):
it was recorded though - in the next hours, it will show up on the recordings drive -> https://drive.google.com/open?id=0B_NJV6eJXAA1SDdTTjNmRktRdUk
mahoney1 (Thu, 09 Nov 2017 17:39:06 GMT):
it was recorded though - in the next hours, it will show up on the recordings drive -> https://drive.google.com/drive/folders/0B_NJV6eJXAA1b25MdHlXdkM0LWc
jeffgarratt (Thu, 09 Nov 2017 18:02:46 GMT):
perfect!! thnx so much @mahoney1
andreasp1994 (Thu, 09 Nov 2017 20:14:55 GMT):
Hey guys. Do you know how I can create a card binded to a specific participant???
andreasp1994 (Thu, 09 Nov 2017 20:50:46 GMT):
Does a scenario where I have more than 10000 clients continuously polling the registries will cause problems????
zachgoll (Thu, 09 Nov 2017 20:51:41 GMT):
Can someone knowledgeable about Composer please answer this question posted on StackOverflow? https://stackoverflow.com/questions/44697245/error-in-using-persistent-data-store-with-composer-rest-server
zachgoll (Thu, 09 Nov 2017 20:51:41 GMT):
Can someone knowledgeable about Composer please answer this question posted on StackOverflow? https://stackoverflow.com/questions/44697245/error-in-using-persistent-data-store-with-composer-rest-server
It seems like I am missing something small but have been at it for hours. @davidkel
zachgoll (Thu, 09 Nov 2017 20:51:41 GMT):
Can someone knowledgeable about Composer please answer this question posted on StackOverflow? https://stackoverflow.com/questions/44697245/error-in-using-persistent-data-store-with-composer-rest-server
It seems like I am missing something small but have been at it for hours.
zachgoll (Thu, 09 Nov 2017 20:51:41 GMT):
Can someone knowledgeable about Composer please answer this question posted on StackOverflow? https://stackoverflow.com/questions/44697245/error-in-using-persistent-data-store-with-composer-rest-server
It seems like I am missing something small but have been at it for hours. The docker container ran successfully, but it seems like the REST server is not connecting to `composer_default` or something?
zachgoll (Thu, 09 Nov 2017 20:51:41 GMT):
Can someone knowledgeable about Composer please answer this question posted on StackOverflow? https://stackoverflow.com/questions/44697245/error-in-using-persistent-data-store-with-composer-rest-server
It seems like I am missing something small but have been at it for hours. The docker container ran successfully, but it seems like the REST server is not connecting to `composer_default` or something?
Do I need to run `composer-rest-server` command after running the container?
andreasp1994 (Thu, 09 Nov 2017 20:59:31 GMT):
@zachgoll don't you run the composer-rest-server command in one of the containers?
andreasp1994 (Thu, 09 Nov 2017 20:59:53 GMT):
if you see the docker logs you can see that it has spawn up successfully?
sstone1 (Thu, 09 Nov 2017 21:06:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tWQhkZq4oynMrE6pG) @andreasp1994 see the `composer identity issue` CLI command or related Node.js client/REST APIs
sstone1 (Thu, 09 Nov 2017 21:07:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=awnsEKGB27DvLmE8G) @andreasp1994 there's no caching so each request will go to the peer and then to the chaincode, so it's not going to be fast ;) you might want to put a caching layer on top of Composer if the requests are all reads
andreasp1994 (Thu, 09 Nov 2017 21:10:27 GMT):
@sstone1 thanks for your response! I am actually trying to notify my clients that a transaction has occurred but I don't want to use events cause they are emitted to everyone. So I though of continuously polling the transaction registry to identify new transactions that are relevant to my different type of clients. Is there a better way to achieve what I am trying to do?
andreasp1994 (Thu, 09 Nov 2017 21:10:37 GMT):
thought*
zachgoll (Thu, 09 Nov 2017 21:14:48 GMT):
@andreasp1994 Yes that is what should happen it seems, but after doing the run command, I get nothing on localhost:3000
andreasp1994 (Thu, 09 Nov 2017 21:15:53 GMT):
@zachgoll can you send what you get when you run `docker ps`
zachgoll (Thu, 09 Nov 2017 21:16:28 GMT):
```
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
71e532cb4d8a myorg/my-composer-rest-server "pm2-docker compos..." 3 minutes ago Up 3 minutes 0.0.0.0:3000->3000/tcp rest
f9ed513770cd mongo "docker-entrypoint..." 6 minutes ago Up 6 minutes 0.0.0.0:27017->27017/tcp mongo
18970f382b56 dev-peer0.org1.example.com-basic-sample-network-0.14.0-48a26f5ee398a37ba49c82b7ade2047e44ad673443c416a53102dd2dbf9efa2a "chaincode -peer.a..." 8 minutes ago Up 8 minutes dev-peer0.org1.example.com-basic-sample-network-0.14.0
39ddaa63901a hyperledger/fabric-peer:x86_64-1.0.1 "peer node start -..." 10 minutes ago Up 10 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
ba605696bb12 hyperledger/fabric-couchdb:x86_64-1.0.1 "tini -- /docker-e..." 10 minutes ago Up 10 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
f5891b763c97 hyperledger/fabric-ca:x86_64-1.0.1 "sh -c 'fabric-ca-..." 10 minutes ago Up 10 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
777b1f6c765d hyperledger/fabric-orderer:x86_64-1.0.1 "orderer" 10 minutes ago Up 10 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
```
zachgoll (Thu, 09 Nov 2017 21:18:11 GMT):
I don't know if this is relevant, but when I run `docker build -t myorg/my-composer-rest-server .` I get the following error in the logs:
```
zachgoll (Thu, 09 Nov 2017 21:18:11 GMT):
I don't know if this is relevant, but when I run `docker build -t myorg/my-composer-rest-server .` I get the following error in the logs:
```
Step 2/2 : RUN npm install --production loopback-connector-mongodb passport-github && npm cache verify && ln -s node_modules .node_modules
---> Running in cdec20114495
npm WARN saveError ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN composer No description
npm WARN composer No repository field.
npm WARN composer No README data
npm WARN composer No license field.
+ loopback-connector-mongodb@3.3.0
+ passport-github@1.1.0
```
zachgoll (Thu, 09 Nov 2017 21:18:11 GMT):
@andreasp1994 I don't know if this is relevant, but when I run `docker build -t myorg/my-composer-rest-server .` I get the following error in the logs:
```
Step 2/2 : RUN npm install --production loopback-connector-mongodb passport-github && npm cache verify && ln -s node_modules .node_modules
---> Running in cdec20114495
npm WARN saveError ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN composer No description
npm WARN composer No repository field.
npm WARN composer No README data
npm WARN composer No license field.
+ loopback-connector-mongodb@3.3.0
+ passport-github@1.1.0
```
zachgoll (Thu, 09 Nov 2017 21:18:16 GMT):
Step 2/2 : RUN npm install --production loopback-connector-mongodb passport-github && npm cache verify && ln -s node_modules .node_modules
---> Running in cdec20114495
npm WARN saveError ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN composer No description
npm WARN composer No repository field.
npm WARN composer No README data
npm WARN composer No license field.
+ loopback-connector-mongodb@3.3.0
+ passport-github@1.1.0
```
andreasp1994 (Thu, 09 Nov 2017 21:20:07 GMT):
and when your run `docker logs rest` ?
zachgoll (Thu, 09 Nov 2017 21:20:40 GMT):
```
0|composer | ? Enter the name of the business network card to use:
0|composer |
```
andreasp1994 (Thu, 09 Nov 2017 21:20:58 GMT):
@zachgoll right
andreasp1994 (Thu, 09 Nov 2017 21:21:06 GMT):
your rest server is not spawning up
andreasp1994 (Thu, 09 Nov 2017 21:21:22 GMT):
you need to pass the network name as a parameter at composer-rest-server command
andreasp1994 (Thu, 09 Nov 2017 21:22:00 GMT):
oh sorry .. the network card not the network name
zachgoll (Thu, 09 Nov 2017 21:22:12 GMT):
@andreasp1994 so what is the network card I am passing in?
zachgoll (Thu, 09 Nov 2017 21:22:27 GMT):
I apologize I am fairly new to both docker and Composer
andreasp1994 (Thu, 09 Nov 2017 21:23:24 GMT):
@zachgoll no worries I am new too. I am kinda finding my way now as well
andreasp1994 (Thu, 09 Nov 2017 21:23:34 GMT):
are you using cli v.0.15?
zachgoll (Thu, 09 Nov 2017 21:24:01 GMT):
Nope using v.0.14
andreasp1994 (Thu, 09 Nov 2017 21:24:15 GMT):
Cool, what is the command in your dockerfile to run the composer-rest-server?
zachgoll (Thu, 09 Nov 2017 21:25:09 GMT):
I am just using the Dockerfile as shown in the tutorial:
```
FROM hyperledger/composer-rest-server
RUN npm install --production loopback-connector-mongodb passport-github && \
npm cache verify && \
ln -s node_modules .node_modules
```
PiyushSarwal (Thu, 09 Nov 2017 21:27:05 GMT):
Has joined the channel.
PiyushSarwal (Thu, 09 Nov 2017 21:28:44 GMT):
While Using composer-rest-server POST methods I get an “no response from server” error, even though the command actually succeeds (I can verify the update using GET which works fine without errors). Any pointers on how I can troubleshoot this error? The exact error from composer-rest-server is “Error: Failed to receive commit notification for transaction”
andreasp1994 (Thu, 09 Nov 2017 21:29:19 GMT):
Oh I see.. now I am confused as well.. Basically what is happening the composer-rest-server command needs some extra parameters and that is why it halts inside the container. Do you necessarily need to run this in the container? I run it outside of the container using the composer-rest-server command and passing the params in there . This may be more straightforward for you
zachgoll (Thu, 09 Nov 2017 21:31:36 GMT):
@andreasp1994 Right, I am able to successfully run the command `composer-rest-server -p hlfv1 -n perishable-network -i admin -s adminpw`. This is quite literally a replica of the Stack Overflow (https://stackoverflow.com/questions/44697245/error-in-using-persistent-data-store-with-composer-rest-server) when I am trying to spin up the data-peristent REST server.
davidkel (Thu, 09 Nov 2017 21:31:45 GMT):
@zachgoll If you are doing this now then you are pulling down 0.15.0 of the composer rest server. Unfortunately the docs for this have yet to be updated to cover the changes so for now try changing your dockerfile, for example
```
FROM hyperledger/composer-rest-server:0.14.3
```
And see if that works for you
zachgoll (Thu, 09 Nov 2017 21:32:31 GMT):
@davidkel Thanks for the tip. Will try it out and let you know in a min!
andreasp1994 (Thu, 09 Nov 2017 21:32:53 GMT):
@davidkel good point! This may work out
zachgoll (Thu, 09 Nov 2017 21:55:23 GMT):
@davidkel So here is what I did. I first killed off ALL containers, removed the composer-rest-server image, stopped fabric, teardown fabric. Then startFabric and deploy .bna file. So far so good. Then `docker run -d --name mongo --network composer_default -p 27017:27017 mongo` which works. Then `docker build -t myorg/my-composer-rest-server .` in the directory containing
```
FROM hyperledger/composer-rest-server:0.14.3
RUN npm install --production loopback-connector-mongodb passport-github && \
npm cache clean && \
ln -s node_modules .node_modules
```
After running this, I see that Step 1/2 works correctly, but I get the following warning in 2/2:
```
npm WARN enoent ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN composer No description
npm WARN composer No repository field.
npm WARN composer No README data
npm WARN composer No license field.
```
Moving on... I then ran `source envvars.txt` where this file contains:
```
export COMPOSER_CONNECTION_PROFILE=hlfv1
export COMPOSER_BUSINESS_NETWORK=basic-sample-network
export COMPOSER_ENROLLMENT_ID=admin
export COMPOSER_ENROLLMENT_SECRET=adminpw
export COMPOSER_NAMESPACES=never
export COMPOSER_AUTHENTICATION=true
export COMPOSER_MULTIUSER=true
export COMPOSER_CONFIG='{
"connectionProfiles": {
"hlfv1": {
"name": "hlfv1",
"description": "Hyperledger Fabric v1.0",
"type": "hlfv1",
"keyValStore": "/home/composer/.composer-credentials",
"timeout": 300,
"orderers": [
{
"url": "grpc://orderer.example.com:7050"
}
],
"channel": "composerchannel",
"mspID": "Org1MSP",
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer0.org1.example.com:7053"
}
]
}
}
}'
export COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "CLIENT_ID", // substitute in actual client id
"clientSecret": "CLIENT_SECRET", // substitute in actual client secret
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
```
Now finally I run:
```
docker run \
-d \
-e COMPOSER_CONNECTION_PROFILE=${COMPOSER_CONNECTION_PROFILE} \
-e COMPOSER_BUSINESS_NETWORK=${COMPOSER_BUSINESS_NETWORK} \
-e COMPOSER_ENROLLMENT_ID=${COMPOSER_ENROLLMENT_ID} \
-e COMPOSER_ENROLLMENT_SECRET=${COMPOSER_ENROLLMENT_SECRET} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_CONFIG="${COMPOSER_CONFIG}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
--name rest \
--network composer_default \
-p 3000:3000 \
myorg/my-composer-rest-server
```
I check `http://localhost:3000` and nothing is there. Any ideas?
zachgoll (Thu, 09 Nov 2017 21:55:23 GMT):
@davidkel @andreasp1994 So here is what I did. I first killed off ALL containers, removed the composer-rest-server image, stopped fabric, teardown fabric. Then startFabric and deploy .bna file. So far so good. Then `docker run -d --name mongo --network composer_default -p 27017:27017 mongo` which works. Then `docker build -t myorg/my-composer-rest-server .` in the directory containing
```
FROM hyperledger/composer-rest-server:0.14.3
RUN npm install --production loopback-connector-mongodb passport-github && \
npm cache clean && \
ln -s node_modules .node_modules
```
After running this, I see that Step 1/2 works correctly, but I get the following warning in 2/2:
```
npm WARN enoent ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN composer No description
npm WARN composer No repository field.
npm WARN composer No README data
npm WARN composer No license field.
```
Moving on... I then ran `source envvars.txt` where this file contains:
```
export COMPOSER_CONNECTION_PROFILE=hlfv1
export COMPOSER_BUSINESS_NETWORK=basic-sample-network
export COMPOSER_ENROLLMENT_ID=admin
export COMPOSER_ENROLLMENT_SECRET=adminpw
export COMPOSER_NAMESPACES=never
export COMPOSER_AUTHENTICATION=true
export COMPOSER_MULTIUSER=true
export COMPOSER_CONFIG='{
"connectionProfiles": {
"hlfv1": {
"name": "hlfv1",
"description": "Hyperledger Fabric v1.0",
"type": "hlfv1",
"keyValStore": "/home/composer/.composer-credentials",
"timeout": 300,
"orderers": [
{
"url": "grpc://orderer.example.com:7050"
}
],
"channel": "composerchannel",
"mspID": "Org1MSP",
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer0.org1.example.com:7053"
}
]
}
}
}'
export COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "CLIENT_ID", // substitute in actual client id
"clientSecret": "CLIENT_SECRET", // substitute in actual client secret
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
```
Now finally I run:
```
docker run \
-d \
-e COMPOSER_CONNECTION_PROFILE=${COMPOSER_CONNECTION_PROFILE} \
-e COMPOSER_BUSINESS_NETWORK=${COMPOSER_BUSINESS_NETWORK} \
-e COMPOSER_ENROLLMENT_ID=${COMPOSER_ENROLLMENT_ID} \
-e COMPOSER_ENROLLMENT_SECRET=${COMPOSER_ENROLLMENT_SECRET} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_CONFIG="${COMPOSER_CONFIG}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
--name rest \
--network composer_default \
-p 3000:3000 \
myorg/my-composer-rest-server
```
I check `http://localhost:3000` and nothing is there. Any ideas?
zachgoll (Thu, 09 Nov 2017 21:55:23 GMT):
@davidkel @andreasp1994 So here is what I did. I first killed off ALL containers, removed the composer-rest-server image, `stopFabric.sh`, `teardownFabric.sh`. Then `startFabric.sh` and deploy .bna file. So far so good. Then `docker run -d --name mongo --network composer_default -p 27017:27017 mongo` which works. Then `docker build -t myorg/my-composer-rest-server .` in the directory containing
```
FROM hyperledger/composer-rest-server:0.14.3
RUN npm install --production loopback-connector-mongodb passport-github && \
npm cache clean && \
ln -s node_modules .node_modules
```
After running this, I see that Step 1/2 works correctly, but I get the following warning in 2/2:
```
npm WARN enoent ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN composer No description
npm WARN composer No repository field.
npm WARN composer No README data
npm WARN composer No license field.
```
Moving on... I then ran `source envvars.txt` where this file contains:
```
export COMPOSER_CONNECTION_PROFILE=hlfv1
export COMPOSER_BUSINESS_NETWORK=basic-sample-network
export COMPOSER_ENROLLMENT_ID=admin
export COMPOSER_ENROLLMENT_SECRET=adminpw
export COMPOSER_NAMESPACES=never
export COMPOSER_AUTHENTICATION=true
export COMPOSER_MULTIUSER=true
export COMPOSER_CONFIG='{
"connectionProfiles": {
"hlfv1": {
"name": "hlfv1",
"description": "Hyperledger Fabric v1.0",
"type": "hlfv1",
"keyValStore": "/home/composer/.composer-credentials",
"timeout": 300,
"orderers": [
{
"url": "grpc://orderer.example.com:7050"
}
],
"channel": "composerchannel",
"mspID": "Org1MSP",
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://peer0.org1.example.com:7051",
"eventURL": "grpc://peer0.org1.example.com:7053"
}
]
}
}
}'
export COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "CLIENT_ID", // substitute in actual client id
"clientSecret": "CLIENT_SECRET", // substitute in actual client secret
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
```
Now finally I run:
```
docker run \
-d \
-e COMPOSER_CONNECTION_PROFILE=${COMPOSER_CONNECTION_PROFILE} \
-e COMPOSER_BUSINESS_NETWORK=${COMPOSER_BUSINESS_NETWORK} \
-e COMPOSER_ENROLLMENT_ID=${COMPOSER_ENROLLMENT_ID} \
-e COMPOSER_ENROLLMENT_SECRET=${COMPOSER_ENROLLMENT_SECRET} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_CONFIG="${COMPOSER_CONFIG}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
--name rest \
--network composer_default \
-p 3000:3000 \
myorg/my-composer-rest-server
```
I check `http://localhost:3000` and nothing is there. Any ideas?
zachgoll (Thu, 09 Nov 2017 22:00:03 GMT):
@davidkel Nevermind!!! I just didn't wait long enough. The REST server is up! You are a lifesaver thanks :)
zachgoll (Thu, 09 Nov 2017 22:04:22 GMT):
@davidkel So at this point all I need to do is push `org/my-composer-rest-server` up to DockerHub and deploy as a swarm correct?
zachgoll (Thu, 09 Nov 2017 22:04:22 GMT):
@davidkel So at this point all I need to do is push `myorg/my-composer-rest-server` up to DockerHub and deploy as a swarm correct?
davidkel (Thu, 09 Nov 2017 22:07:18 GMT):
@zachgoll Sorry I am not familiar with swarm, never tried it.
zachgoll (Thu, 09 Nov 2017 22:08:20 GMT):
No worries! I am just looking for deployment options for the REST server.
Jimskie (Thu, 09 Nov 2017 23:23:05 GMT):
Has joined the channel.
zachgoll (Fri, 10 Nov 2017 00:05:53 GMT):
@davidkel Sorry to bother again, but after successfully running the `myorg/my-composer-rest-server`, I can no longer interact with the business network via the composer CLI. When I try to run `composer network ping -p hlfv1 -n 'basic-sample-network' -i admin -s adminpw`, I get the following error message:
```
zachgoll (Fri, 10 Nov 2017 00:05:53 GMT):
@davidkel Sorry to bother again, but after successfully running the `myorg/my-composer-rest-server`, I can no longer interact with the business network via the composer CLI. When I try to run `composer network ping -p hlfv1 -n 'basic-sample-network' -i admin -s adminpw`, I get the following error message:
```
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
Command failed
```
zachgoll (Fri, 10 Nov 2017 00:05:53 GMT):
@davidkel Sorry to bother again, but after successfully running the `myorg/my-composer-rest-server`, I can no longer interact with the business network via the composer CLI. When I try to run `composer network ping -p hlfv1 -n 'basic-sample-network' -i admin -s adminpw`, I get the following error message:
```
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
Command failed
```
And when I call `GET /wallets` from the localhost:3000, it returns
```
[
{
"description": "Default wallet",
"id": "5a04e97bd949d300107ec96a"
}
]
```
zachgoll (Fri, 10 Nov 2017 00:05:53 GMT):
@davidkel Sorry to bother again, but after successfully running the `myorg/my-composer-rest-server`, I can no longer interact with the business network via the composer CLI. When I try to run `composer network ping -p hlfv1 -n 'basic-sample-network' -i admin -s adminpw`, I get the following error message:
```
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
Command failed
```
And when I call `GET /wallets` from the localhost:3000, it returns
```
[
{
"description": "Default wallet",
"id": "5a04e97bd949d300107ec96a"
}
]
```
I am trying to understand what is going on here but `5a04e97bd949d300107ec96a` doesn't even match a Docker container ID?
hypertest (Fri, 10 Nov 2017 01:14:18 GMT):
Has joined the channel.
hypertest (Fri, 10 Nov 2017 01:16:00 GMT):
Hi, I want to test pii-network sample of hyperledger composer. I can add two participants but when I want to sumbit the AuthorizeAccess transaction I get this error: "Instance admin has a property named authorized which is not declared in org.hyperledger.composer.system.NetworkAdmin". Do you have any idea what is the problem?
mmyburgh (Fri, 10 Nov 2017 03:20:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GpzsAmPAPQoSp3DFJ) All, Im really stuck here, should i log a bug or am i doing something wrong?
bh4rtp (Fri, 10 Nov 2017 03:23:25 GMT):
@zachgoll that's wallet id, not container id. i think `composer` as well as all sdk will not access the network by container id, actually by container name as given in configuration file. i don't know how the id is generated. but the wallet should keep the user's private key. so this id maybe a encrypted and digested value from private key.
bh4rtp (Fri, 10 Nov 2017 03:23:25 GMT):
@zachgoll that's wallet id, not container id. i think `composer` as well as all sdk will not access the network by container id, actually by container name as given in configuration file. i don't know how the id is generated. but the wallet should keep the user's private key. so this id maybe an encrypted and digested value from private key. can someone confirm it?
nileshyjadhav (Fri, 10 Nov 2017 03:40:32 GMT):
Hi...I am exploring endorsement policy with composer and composer rest server..I am getting below error in composer rest server.. Error: Error trying invoke business network. Error: Peer has rejected transaction '3f642981312d9722eb0a86d6dcf356f71b26aff9f56b262ff0491f8168b4fe54' with code ENDORSEMENT_POLICY_FAILURE
at _initializeChannel.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:836:34)
at
nileshyjadhav (Fri, 10 Nov 2017 03:40:51 GMT):
Can you please help? Any inputs will be of great help..Thanks!
andreasp1994 (Fri, 10 Nov 2017 04:26:27 GMT):
@mmyburgh what is the problem?
grice_32 (Fri, 10 Nov 2017 04:27:23 GMT):
Why is that when I go through the "yo Hyperledger-composer" generator and make my business network (.cto, .js, acl) and then run the "composer archive create -t dir -n ." command to package it into a .bna file. But if I take an existing network (.cto, .js, .acl) and then run the archive command to make the bna package - the command fails. Thus not able to make the network@0.0.1.bna file. Is it just because of my existing files didn't go through the yo composer generator?
aneb (Fri, 10 Nov 2017 04:28:25 GMT):
Hi all. Is there any difference between the generated GET composer rest server endpoints or using a query performance wise? For example /queries/selectAllUsers vs GET /users. I assume they are basically the same thing but when executing both from the explorer there is a difference in response time on my computer, albeit very very small, so I was wondering if maybe behind the screens both are doing something different.
Thanks.
oleg_ (Fri, 10 Nov 2017 04:29:08 GMT):
Has joined the channel.
vijayin26 (Fri, 10 Nov 2017 04:37:09 GMT):
@zachgoll The way identity works changed in new version. Try with latest version 0.15.0 and follow the updated documentation https://hyperledger.github.io/composer/tutorials/developer-guide.html
vijayin26 (Fri, 10 Nov 2017 04:44:25 GMT):
IBM blockchain sandbox scripts need to be updated (composer-identity-import.yaml) to reflect the new identity changes in version 0.15.0 -- command: ["sh", "-c", "composer identity import -p hlfv1 -u PeerAdmin -c /shared/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k /shared/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/key.pem"]
wininani (Fri, 10 Nov 2017 06:44:29 GMT):
hi everyone iam very beginner to composer.please help with how to use composer playground and help me with some built examples from git .Thankyou
nickyromeijn (Fri, 10 Nov 2017 07:13:55 GMT):
@sstone1 Apart from starting up the rest-server with a --card command are there any changes regarding the wallet functionality?
nickyromeijn (Fri, 10 Nov 2017 07:14:06 GMT):
@sstone1 & team thanks for the update :)
varunagarwal (Fri, 10 Nov 2017 07:27:53 GMT):
How do I query ALL the participants in a registry? Im confused
varunagarwal (Fri, 10 Nov 2017 07:30:39 GMT):
nvm, got it.
varunagarwal (Fri, 10 Nov 2017 07:34:02 GMT):
Is there ant way I can keep the queries.qry and permission.acl file not in the root folder?
jochemin (Fri, 10 Nov 2017 07:38:56 GMT):
Has joined the channel.
jochemin (Fri, 10 Nov 2017 07:40:29 GMT):
Hi, I'm doing IBM blockchain foundation developer course and in the first lab "Lab 1: Create a Hyperledger Composer solution" when I run "composer archive create -t dir -n ." an error occurs.
jochemin (Fri, 10 Nov 2017 07:40:45 GMT):
Clipboard - November 10, 2017 8:40 AM
varunagarwal (Fri, 10 Nov 2017 07:44:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=tX4Wyb6F8Cu68RoRy) @jochemin Might be an error when importing a namespace
varunagarwal (Fri, 10 Nov 2017 07:44:32 GMT):
Can you send a more detailed link?
varunagarwal (Fri, 10 Nov 2017 07:45:12 GMT):
Defining a trnasaction in composer is a bit weird. Got to be very careful with namespaces
jochemin (Fri, 10 Nov 2017 07:49:15 GMT):
I have followed this lab (step 2) https://hyperledger.github.io/composer/tutorials/developer-guide.html
sstone1 (Fri, 10 Nov 2017 07:58:11 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=amQ8JvFjdCci39CQS) @hypertest the error occurs because you are using the `admin`.
it looks like the instructions are incomplete. after running the step "Create two Member participants", you need to issue a Member with an identity and then switch to using that identity instead.
sstone1 (Fri, 10 Nov 2017 07:59:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=o2K5rzqKostcfitQD) @mmyburgh did you try the == query with the URI syntax as i suggested here? https://chat.hyperledger.org/channel/composer?msg=pS783PaJkd26djBKc
sstone1 (Fri, 10 Nov 2017 08:00:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=in4c7sPjD9D6nRZrA) @bh4rtp it's a unique id generated by your chosen database, for example MongoDB if you are following our instructions
sstone1 (Fri, 10 Nov 2017 08:01:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JiwoP4venCTH4YGpv) @nileshyjadhav have you got all the peers required for the endorsement policy in the connection profile that the REST server is using? if you have org1 and org2, and the endorsement policy says org1 and org2 must sign, then both org1 and org2s peers must be in your connection profile.
sstone1 (Fri, 10 Nov 2017 08:02:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qcTZN973fWrqjfc5u) @grice_32 might help if you supplied us with the errors you are getting ;)
sstone1 (Fri, 10 Nov 2017 08:04:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=vGvqwanNtasR62Swc) @aneb there is a bit more overhead to compile the Composer query into a CouchDB during first use, but really they both result in CouchDB queries at the end of the day. not sure why you'd model a "getAll" as a query in the Composer query language though.
sstone1 (Fri, 10 Nov 2017 08:06:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=acPhAQhaaJcejLDoZ) @wininani read the website, and follow the tutorials: http://hyperledger.github.io/composer/
labcoinpoc (Fri, 10 Nov 2017 08:06:46 GMT):
@sstone1 sorry to disturb I met a problem when testing endorsement policy, I have 4 peer addresses in connection profile, and I need 3 of them endorse transaction. But if I shut down container of one peer, the rest server wont work and return a Connect Failed error. I think rest server should work in this situation. Can rest server ignore this error?
sstone1 (Fri, 10 Nov 2017 08:17:43 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Ts9QTMJu7YbahBxyE) @nickyromeijn it's a lot simpler to use (i hope) - multiple wallets are gone, and the first card you upload is automatically set as the default
sstone1 (Fri, 10 Nov 2017 08:18:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dDxEXWQD5tKsAnLZ6) @varunagarwal nope. any reason you want to do this?
nickyromeijn (Fri, 10 Nov 2017 08:18:16 GMT):
@sstone1 Amazing, the multiple wallet feature was very error prone when automating the enrollment process
sstone1 (Fri, 10 Nov 2017 08:18:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=7y8u7qr7dtgyJkPTs) @labcoinpoc can you raise an issue for this on GitHub please? we should probably handle this, but we need to investigate who needs to fix it (in terms of Composer or the Fabric SDK we use under the covers)
labcoinpoc (Fri, 10 Nov 2017 08:20:17 GMT):
@sstone1 OK I will do it. thank you!
nickyromeijn (Fri, 10 Nov 2017 08:31:48 GMT):
@sstone1 so how do cards relate to identities? Because when i previously issued an identity i would get a secret and id, a user would post this to the rest server and the rest server would retrieve the corresponding certificates and keys. If i read the documentation of cards it is expected to already have a private key and certificate?
nickyromeijn (Fri, 10 Nov 2017 08:34:02 GMT):
@sstone1 nevermind; i missed this part: either an enrollSecret or both a certificate and privateKey.
nickyromeijn (Fri, 10 Nov 2017 08:34:39 GMT):
Considering it now works with cards; is it possible to retrieve the entire card from the api as well? (eg the private key? :D)
sstone1 (Fri, 10 Nov 2017 09:01:33 GMT):
@nickyromeijn yeah, the REST API has a new API for exporting a card `GET /wallet/:name/export`
nickyromeijn (Fri, 10 Nov 2017 09:02:18 GMT):
Awesome! for my specific usecase i needed the private key of the user to encrypt a digital signature
nickyromeijn (Fri, 10 Nov 2017 09:02:44 GMT):
Only downside now is that i cannot decrypt it within the transaction engine because npm modules are not supported yet; but it's a step closer :)
CodeReaper (Fri, 10 Nov 2017 09:05:06 GMT):
I dont understand, importing the defaualt networkadmin card that I made I should be able to do the access other API functionalities but I get an error as -- status: 500, message: Error: The current identity has not been registered: admin
bh4rtp (Fri, 10 Nov 2017 09:05:19 GMT):
then how to upgrade composer? i am using 0.14.3.
jaguarg (Fri, 10 Nov 2017 10:11:28 GMT):
Hi, I need to write an ACL where drivers car read car information for cars they are assigned
```
asset Car identified by plateNumer {
o String plateNumer
--> Driver[] drivers
--> Double mileage
--> DateTime purchaseDate
}
participant Driver identified by id {
o String id
o String Name
}
rule DriverCarReadHisCarInfo {
description: "Allow drivers to read cars info in his portfolio"
participant(p): "com.slib.participants.Driver"
operation: READ
resource(r): "com.slib.assets.car"
condition: ??????? what is the condition here ???????
action: ALLOW
}
```
What would the condition be ?
Thank you
jaguarg (Fri, 10 Nov 2017 10:11:28 GMT):
Hi, I need to write an ACL where drivers car read car information for cars they are assigned
```
asset Car identified by plateNumer {
o String plateNumer
--> Driver[] drivers
--> Double mileage
--> DateTime purchaseDate
}
participant Driver identified by id {
o String id
o String Name
}
rule DriverCanReadHisCarInfo {
description: "Allow drivers to read cars info in his portfolio"
participant(p): "com.slib.participants.Driver"
operation: READ
resource(r): "com.slib.assets.car"
condition: ??????? what is the condition here ???????
action: ALLOW
}
```
What would the condition be ?
Thank you
jaguarg (Fri, 10 Nov 2017 10:11:28 GMT):
Hi, I need to write an ACL where drivers car read car information for cars they are assigned
```
asset Car identified by plateNubmer {
o String plateNubmer
--> Driver[] drivers
--> Double mileage
--> DateTime purchaseDate
}
participant Driver identified by id {
o String id
o String Name
}
rule DriverCanReadHisCarInfo {
description: "Allow drivers to read cars info in his portfolio"
participant(p): "com.slib.participants.Driver"
operation: READ
resource(r): "com.slib.assets.car"
condition: ??????? what is the condition here ???????
action: ALLOW
}
```
What would the condition be ?
Thank you
jaguarg (Fri, 10 Nov 2017 10:11:28 GMT):
Hi, I need to write an ACL where drivers car read car information for cars they are assigned
```
asset Car identified by plateNumber {
o String plateNumber
--> Driver[] drivers
--> Double mileage
--> DateTime purchaseDate
}
participant Driver identified by id {
o String id
o String Name
}
rule DriverCanReadHisCarInfo {
description: "Allow drivers to read cars info in his portfolio"
participant(p): "com.slib.participants.Driver"
operation: READ
resource(r): "com.slib.assets.car"
condition: ??????? what is the condition here ???????
action: ALLOW
}
```
What would the condition be ?
Thank you
bh4rtp (Fri, 10 Nov 2017 10:19:44 GMT):
after upgrading, `composer network deploy` can not run.
```$ composer network deploy -a decentralized-energy-network.bna -A admin -S adminpwDeploying business network from archive: decentralized-energy-network.bna
/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1100
else throw err
^
TypeError: Path must be a string. Received undefined
at assertPath (path.js:7:11)
at Object.join (path.js:1211:7)
at FileSystemCardStore._cardPath (/usr/local/lib/node_modules/composer-cli/node_modules/composer-common/lib/cardstore/filesystemcardstore.js:63:21)
at FileSystemCardStore.get (/usr/local/lib/node_modules/composer-cli/node_modules/composer-common/lib/cardstore/filesystemcardstore.js:71:42)
at AdminConnection.getCard (/usr/local/lib/node_modules/composer-cli/node_modules/composer-admin/lib/adminconnection.js:150:31)
at Function.handler (/usr/local/lib/node_modules/composer-cli/lib/cmds/network/lib/deploy.js:56:32)
at Object.module.exports.handler (/usr/local/lib/node_modules/composer-cli/lib/cmds/network/deployCommand.js:43:37)
at Object.runCommand (/usr/local/lib/node_modules/composer-cli/node_modules/yargs/lib/command.js:228:22)
at Object.parseArgs [as _parseArgs] (/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1013:30)
at Object.runCommand (/usr/local/lib/node_modules/composer-cli/node_modules/yargs/lib/command.js:194:45)```
bh4rtp (Fri, 10 Nov 2017 10:19:44 GMT):
after upgrading, `composer network deploy` can not run.
```$ composer network deploy -a decentralized-energy-network.bna -A admin -S adminpw
Deploying business network from archive: decentralized-energy-network.bna
/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1100
else throw err
^
TypeError: Path must be a string. Received undefined
at assertPath (path.js:7:11)
at Object.join (path.js:1211:7)
at FileSystemCardStore._cardPath (/usr/local/lib/node_modules/composer-cli/node_modules/composer-common/lib/cardstore/filesystemcardstore.js:63:21)
at FileSystemCardStore.get (/usr/local/lib/node_modules/composer-cli/node_modules/composer-common/lib/cardstore/filesystemcardstore.js:71:42)
at AdminConnection.getCard (/usr/local/lib/node_modules/composer-cli/node_modules/composer-admin/lib/adminconnection.js:150:31)
at Function.handler (/usr/local/lib/node_modules/composer-cli/lib/cmds/network/lib/deploy.js:56:32)
at Object.module.exports.handler (/usr/local/lib/node_modules/composer-cli/lib/cmds/network/deployCommand.js:43:37)
at Object.runCommand (/usr/local/lib/node_modules/composer-cli/node_modules/yargs/lib/command.js:228:22)
at Object.parseArgs [as _parseArgs] (/usr/local/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1013:30)
at Object.runCommand (/usr/local/lib/node_modules/composer-cli/node_modules/yargs/lib/command.js:194:45)```
anisha (Fri, 10 Nov 2017 10:26:29 GMT):
Has joined the channel.
anisha (Fri, 10 Nov 2017 10:27:34 GMT):
Hi, does anyone know of a repository of sample .bna files?
davidkel (Fri, 10 Nov 2017 10:45:00 GMT):
@bh4rtp you are missing the `-c` option to specify the card name, but the command should have told you that rather than give that error. I have raised an issue about it.
see https://hyperledger.github.io/composer/reference/composer.network.deploy.html.
bh4rtp (Fri, 10 Nov 2017 10:46:12 GMT):
@davidkel ok. but the help info does not say required -c.
bh4rtp (Fri, 10 Nov 2017 10:50:44 GMT):
@davidkel i have not a card yet. how to create it?
davidkel (Fri, 10 Nov 2017 10:53:56 GMT):
You need to get the latest composer fabric dev server from composer-tools and then use the `createPeerAdminCard.sh` script
sstone1 (Fri, 10 Nov 2017 11:02:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MbadPeq2a2zw52Faq) @jaguarg you could try something like this: `(r.drivers.some(function (driver) { return driver.getIdentifier() === p.getIdentifier(); }))`
bh4rtp (Fri, 10 Nov 2017 11:09:33 GMT):
using card to deploy the network, it also fails with error:
```composer network deploy -a decentralized-energy-network.bna -c ~/admin.card -A admin
Deploying business network from archive: decentralized-energy-network.bna
Error: Card not found: /home/allen/admin.card
Command failed
$ ls /home/allen/*.card
/home/allen/admin.card```
bh4rtp (Fri, 10 Nov 2017 11:09:33 GMT):
using card to deploy the network, it also fails with error:
```$ composer network deploy -a decentralized-energy-network.bna -c ~/admin.card -A admin
Deploying business network from archive: decentralized-energy-network.bna
Error: Card not found: /home/allen/admin.card
Command failed
$ ls /home/allen/*.card
/home/allen/admin.card```
sstone1 (Fri, 10 Nov 2017 11:09:46 GMT):
you need to import the card first
sstone1 (Fri, 10 Nov 2017 11:09:50 GMT):
using `composer identity import`
sstone1 (Fri, 10 Nov 2017 11:09:50 GMT):
using `composer card import`
sstone1 (Fri, 10 Nov 2017 11:10:08 GMT):
and then the `-c` argument takes the name of the imported card
bh4rtp (Fri, 10 Nov 2017 11:10:23 GMT):
ok. thanks. @sstone1
jaguarg (Fri, 10 Nov 2017 11:14:41 GMT):
@sstone1 thanks. Let me try your suggestion
mahoney1 (Fri, 10 Nov 2017 11:16:26 GMT):
@jaguarg in addition to @sstone1 suggestion - you could check out https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/permissions.acl#L38 for the use of `indexOf(p.getIdentifier())` to check if the car is in the driver's portfolio (ie checking the Driver list for the car etc )
bh4rtp (Fri, 10 Nov 2017 11:23:12 GMT):
@sstone1 i use `composer card create` to create an admin card. how to authorize `admin` with both `PeerAdmin` and `ChannelAdmin`?
bh4rtp (Fri, 10 Nov 2017 11:23:12 GMT):
@sstone1 i use `composer card create` to create an admin card. how to authorize `admin` the role with both `PeerAdmin` and `ChannelAdmin`?
sstone1 (Fri, 10 Nov 2017 11:25:45 GMT):
`composer card create ... -r PeerAdmin -r ChannelAdmin`
erNail (Fri, 10 Nov 2017 11:26:15 GMT):
@sstone1 I see that the tutorial is missing the skeleton angular part. Why is that ?
CodeReaper (Fri, 10 Nov 2017 11:26:56 GMT):
Trying to build image to build for docker container- throwing error-
CodeReaper (Fri, 10 Nov 2017 11:27:08 GMT):
Clipboard - November 10, 2017 4:56 PM
bh4rtp (Fri, 10 Nov 2017 11:30:20 GMT):
i found a bug. first create a card. then import the card and delete it. finally import another card with the name as the deleted one. it will fail with the following error messages.
```$ composer card import -f /home/allen/admin.card -n fadmin
Error: Failed to load connector module "composer-connector-undefined" for connection type "undefined". Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'
Command failed```
sstone1 (Fri, 10 Nov 2017 11:32:49 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=oqENWvyezytwyiv3P) @erNail I think the answer is "coming soon", it got dropped as the card changes weren't in place for the generator at the time
sstone1 (Fri, 10 Nov 2017 11:32:54 GMT):
just checking though
sstone1 (Fri, 10 Nov 2017 11:32:55 GMT):
;)
sstone1 (Fri, 10 Nov 2017 11:34:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sNxeAfoMniYgB7Pk5) @bh4rtp can you raise a bug please? @bestbeforetoday @mbwhite FYI
bh4rtp (Fri, 10 Nov 2017 11:34:36 GMT):
@sstone1 ok. let me do it.
sstone1 (Fri, 10 Nov 2017 11:35:02 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mPPXbmGprBvnXGtzh) @CodeReaper you need to an additional argument to `npm install` - `--unsafe-perm`
sstone1 (Fri, 10 Nov 2017 11:35:22 GMT):
should look like `npm install --unsafe-perm --production -g module1 module2`
jaguarg (Fri, 10 Nov 2017 11:39:32 GMT):
@mahoney1 - Great. thx
mbwhite (Fri, 10 Nov 2017 11:41:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MKyKuwdAjE5BEcC3c) @sstone1 I *think* that is more to do with the connection profile of the last card then the sequence.
mbwhite (Fri, 10 Nov 2017 11:41:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MKyKuwdAjE5BEcC3c) @sstone1 I *think* that is more to do with the connection profile of the last card then the sequence. How was the final card used created? Specifically what does the connecction profile look like
sstone1 (Fri, 10 Nov 2017 11:43:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CJnHuXaihSGkMsHTF) @erNail definetely coming back to the tutorial soon
pradeeppadmarajaiah (Fri, 10 Nov 2017 11:44:13 GMT):
Can i use Composer as framework to create production based applications ??
bh4rtp (Fri, 10 Nov 2017 11:47:13 GMT):
@mbwhite i just changed `type` to `name` with value `hlfv1` in the `connection.json`. the card can be created ok.
``` 1 {
2 "name": "hlfv1",
3 "orderers": [
4 { "url" : "grpc://localhost:7050" }
5 ],
6 "ca": { "url": "http://localhost:7054",
7 "name": "ca.org1.example.com"
8 },
9 "peers": [
10 {
11 "requestURL": "grpc://localhost:7051",
12 "eventURL": "grpc://localhost:7053"
13 }
14 ],
15 "keyValStore": "/home/allen/.composer-credentials",
16 "channel": "composerchannel",
17 "mspID": "Org1MSP",
18 "timeout": "300"
19 }
```
sstone1 (Fri, 10 Nov 2017 11:47:26 GMT):
you need `type` AND `name`
mbwhite (Fri, 10 Nov 2017 11:47:42 GMT):
+1
bh4rtp (Fri, 10 Nov 2017 11:47:57 GMT):
@sstone1 @mbwhite let me redo it.
CodeReaper (Fri, 10 Nov 2017 11:48:20 GMT):
@sstone1 getting this error after your said modification
CodeReaper (Fri, 10 Nov 2017 11:48:34 GMT):
Clipboard - November 10, 2017 5:18 PM
CodeReaper (Fri, 10 Nov 2017 11:50:19 GMT):
Dockerfile-
CodeReaper (Fri, 10 Nov 2017 11:50:29 GMT):
Clipboard - November 10, 2017 5:20 PM
bh4rtp (Fri, 10 Nov 2017 11:54:53 GMT):
now get this error when deploy the network.
```$ composer network deploy -a decentralized-energy-network.bna -c admin -A admin -S adminpw
Deploying business network from archive: decentralized-energy-network.bna
Business network definition:
Identifier: decentralized-energy-network@0.1.11
Description: Decentralized Energy application with Hyperledger Composer
Error: Error trying to ping. Error: Error trying to query business network. Error: make sure the chaincode decentralized-energy-network has been successfully instantiated and try again: could not find chaincode with name 'decentralized-energy-network'
Command failed```
erNail (Fri, 10 Nov 2017 11:57:16 GMT):
@sstone1 Thanks for the info
davidkel (Fri, 10 Nov 2017 12:02:52 GMT):
@CodeReaper The documentation you are following has not been updated to 0.15.0 yet, so you are going to hit other problems if you follow this document once you get past building the docker image. If you really want to build a 0.15.0 docker image of the rest server then you may want to wait for corrected documentation to be published. There is a github issue for it https://github.com/hyperledger/composer/issues/2654
aneb (Fri, 10 Nov 2017 12:06:58 GMT):
@sstone1 Thanks for the answer. Yeah it is not really I was intending on doing. I only started thinking about it after seeing the selectAll queries in the developer guide. So made me wonder.
aneb (Fri, 10 Nov 2017 12:06:58 GMT):
@sstone1 Thanks for the answer. Yeah it is not really something I was intending on doing. I only started thinking about it after seeing the selectAll queries in the developer guide. So made me wonder.
jdockter (Fri, 10 Nov 2017 12:09:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=geGhte4XBLtMdFspX) @sstone1 multi wallets as in if I use Google auth strategy and login with my personal gmail account I will only be able to load one card or are you saying something else?
jdockter (Fri, 10 Nov 2017 12:09:23 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=geGhte4XBLtMdFspX) @sstone1 multi wallets are gone as in if I use Google auth strategy and login with my personal gmail account I will only be able to load one card or are you saying something else?
davidkel (Fri, 10 Nov 2017 12:09:58 GMT):
@jdockter Each user has their own single wallet that can hold 1 or more cards
jdockter (Fri, 10 Nov 2017 12:10:45 GMT):
Okay thought that was how it worked before :)
CodeReaper (Fri, 10 Nov 2017 12:21:55 GMT):
@davidkel I cant seem to persist my wallet data when I stop and restart application?? I think I should only be setting the environment variable of COMPOSER_DATASOURCES and installing loopback-connector-mongodb? What could be the reason
CodeReaper (Fri, 10 Nov 2017 12:22:19 GMT):
Also when can we expect fully updated docs?
bh4rtp (Fri, 10 Nov 2017 12:26:03 GMT):
will `composer` be scheduled to support already written golang chaincode?
geoms (Fri, 10 Nov 2017 12:28:43 GMT):
Any documentation available for Composer REST server for production environment in Kubernetes platform ?
geoms (Fri, 10 Nov 2017 12:29:02 GMT):
I want deploy Composer REST server in IBM Blockchain Platform
geoms (Fri, 10 Nov 2017 12:29:08 GMT):
*to
geoms (Fri, 10 Nov 2017 12:29:33 GMT):
Which supports Kubernetes pods and services
geoms (Fri, 10 Nov 2017 12:29:43 GMT):
Thanks
jaguarg (Fri, 10 Nov 2017 12:31:09 GMT):
Hi, I am facing yet another ACL issue :
jaguarg (Fri, 10 Nov 2017 12:31:14 GMT):
```Error: Error trying invoke business network.
Error: chaincode error (status: 500, message: Error: Participant 'org.slib.participants.Driver#1208ce6397'
does not have 'CREATE' access to resource 'org.hyperledger.composer.system.AddAsset#60dd468705cd0a')```
jaguarg (Fri, 10 Nov 2017 12:35:43 GMT):
Hi, I am facing another ACL issue :
jaguarg (Fri, 10 Nov 2017 12:35:47 GMT):
```Error: Error trying invoke business network.
Error: chaincode error (status: 500, message: Error: Participant 'org.slib.participants.Driver#1208ce6397'
does not have 'CREATE' access to resource 'org.hyperledger.composer.system.AddAsset#60dd468705cd0a')```
jaguarg (Fri, 10 Nov 2017 12:37:03 GMT):
I have granted create ACL to Driver for my resource (Journey) ... I don't know what the resouce org.hyperledger.composer.system.AddAsset#60dd468705cd0a is ? What ACL do I need to add ?
jaguarg (Fri, 10 Nov 2017 12:37:03 GMT):
I have granted create ACL to Driver for my resource (Journey) ... I don't know what the resource `org.hyperledger.composer.system.AddAsset#60dd468705cd0a` is ? What ACL do I need to add ?
davidkel (Fri, 10 Nov 2017 12:38:32 GMT):
@geoms no we don't have anything about k8s. If you want to use the IBM blockchain platform I suggest you go to https://ibm-blockchain.github.io/ for more information
mahoney1 (Fri, 10 Nov 2017 12:44:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Dh3h5zHpEasH7CBi3) @jaguarg hi suggest you check your system ACLs - see example here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/permissions.acl
mbwhite (Fri, 10 Nov 2017 13:00:38 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=mPdoRfwuB8rmBmWkm) @bh4rtp could you confirm if the card named admin is for the PeerAdmin role or not please?
jaguarg (Fri, 10 Nov 2017 13:00:43 GMT):
@mahoney1 , that's right. I missed the rule SystemACL. Thx
sstone1 (Fri, 10 Nov 2017 13:16:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=A6Pt5Fb9mGc9NLu4j) @jdockter a single user could have multiple wallets, each with multiple identities in. it was a bit overkill but the idea was that users could share their wallets with each other (or a group could share the same wallet).
PaulWilliams (Fri, 10 Nov 2017 13:55:02 GMT):
Good day, With the release of 0.15.0 I decided to go back through the tutorial and I ran into a problem on step 4.1 I get the following error
PaulWilliams (Fri, 10 Nov 2017 13:55:08 GMT):
Clipboard - November 10, 2017 8:55 AM
PaulWilliams (Fri, 10 Nov 2017 13:55:40 GMT):
Request to know if I missed a step somewhere?
SimonOberzan (Fri, 10 Nov 2017 13:59:03 GMT):
@PaulWilliams That card gets created and imported inside fabric-tools/createPeerAdmin.sh file. Did you run it?
SimonOberzan (Fri, 10 Nov 2017 13:59:03 GMT):
@PaulWilliams That card gets created and imported inside `fabric-tools/createPeerAdmin.sh` file. Did you run it? I think it is not descibed clear enough as I ran in the same problem.
PaulWilliams (Fri, 10 Nov 2017 14:00:12 GMT):
negative, I just ran though developer guide and did not see that command mentioned there
SimonOberzan (Fri, 10 Nov 2017 14:00:31 GMT):
Yeah it is in the installation guide
mahoney1 (Fri, 10 Nov 2017 14:05:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8ChXq6b5EuEsQxXnZ) @PaulWilliams as @SimonOberzan wrote - you need to run `./createPeerAdminCard.sh` in the `fabric-tools` subdirectory - referencing here for others -> https://hyperledger.github.io/composer/installing/development-tools.html
PaulWilliams (Fri, 10 Nov 2017 14:05:58 GMT):
@mahoney1 @SimonOberzan Thank you
snowy13 (Fri, 10 Nov 2017 14:24:40 GMT):
Has joined the channel.
PiyushSarwal (Fri, 10 Nov 2017 15:25:58 GMT):
trying to upgrade composer runtime but am getting the following errorcomposer network upgrade -c admin@pschaincode
✖ Upgrading runtime for business network undefined. This may take a minute...
Error: Error trying to ping. Error: Composer runtime (0.14.1) is not compatible with client (0.15.0)
Command failed
snowy13 (Fri, 10 Nov 2017 15:47:34 GMT):
Hi everyone. Is it me or the development tutorial changed overnight and no longer uses the sample-business-network?
PaulWilliams (Fri, 10 Nov 2017 16:04:15 GMT):
I believe it changed to reflect the v0.15.0 release yesterday
rddill (Fri, 10 Nov 2017 16:10:16 GMT):
Have just moved from V0.13.2 to V0.14.2 and am now getting following error in event processing. The error appears to be in the composer-client code, not mine. Any ideas on resolving? Events are still being posted and processed by my app.
```
error: [EventHub.js]: on.data - Error unmarshalling transaction= TypeError: Cannot read property 'getSerializer' of null
at events.forEach (
PiyushSarwal (Fri, 10 Nov 2017 16:16:43 GMT):
you can do this today to upgrade between patch levels (v0.11.1 to v0.11.2) using composer network upgrade - but not major or minor levels yet." Saw this athttps://github.com/hyperledger/composer/issues/1863 so is it not possible to upgrade composer run time from 0.14 to 0.15?
PaulWilliams (Fri, 10 Nov 2017 16:30:32 GMT):
If I have a network that contains businesses and customers can I issue an identity to say business 1 that has the authority to issue more identities to itself only? For example if the participant store A, the owner has the admin identity so he can issue his employees identities to work with his stores (Store A) assets? But he shouldn't be able to issue identities for the participant store B?
mastreips (Fri, 10 Nov 2017 16:44:32 GMT):
Has joined the channel.
rddill (Fri, 10 Nov 2017 16:56:50 GMT):
@PaulWilliams Paul, wouldn't the business have the responsibility to Register an employee, where the network admin would have the responsibility to issue an Identity to a (now registered) person?
zachgoll (Fri, 10 Nov 2017 16:58:45 GMT):
@snowy13 Yes, v0.15 has just released. https://github.com/hyperledger/composer/releases
You can read through to see all the changes :)
snowy13 (Fri, 10 Nov 2017 16:59:16 GMT):
Going through it now, thanks!
zachgoll (Fri, 10 Nov 2017 17:03:11 GMT):
I created a template with `yo hyperledger-composer:businessnetwork`, and the Chai test written in the template has the following code:
```
var adminConnection = new AdminConnection({ fs: bfs_fs });
return adminConnection.createProfile('defaultProfile', {
type: 'embedded'
})
.then(function() {
return adminConnection.connectWithDetails('defaultProfile', 'admin', 'Xurw3yU9zI0l');
})
```
I am not seeing anything in the API reference for `adminConnection.createProfile` or `adminConnection.connectWithDetails`. Can someone point me to where I can read up on these? Or have these methods been updated in v0.15 and not updated in the template generator?
zachgoll (Fri, 10 Nov 2017 17:03:11 GMT):
@sstone1 I created a template with `yo hyperledger-composer:businessnetwork`, and the Chai test written in the template has the following code:
```
var adminConnection = new AdminConnection({ fs: bfs_fs });
return adminConnection.createProfile('defaultProfile', {
type: 'embedded'
})
.then(function() {
return adminConnection.connectWithDetails('defaultProfile', 'admin', 'Xurw3yU9zI0l');
})
```
I am not seeing anything in the API reference for `adminConnection.createProfile` or `adminConnection.connectWithDetails`. Can someone point me to where I can read up on these? Or have these methods been updated in v0.15 and not updated in the template generator?
zachgoll (Fri, 10 Nov 2017 17:03:11 GMT):
@sstone1 I created a template with `yo hyperledger-composer:businessnetwork`, and the Chai test written in the template has the following code:
```
var adminConnection = new AdminConnection({ fs: bfs_fs });
return adminConnection.createProfile('defaultProfile', {
type: 'embedded'
})
.then(function() {
return adminConnection.connectWithDetails('defaultProfile', 'admin', 'Xurw3yU9zI0l');
})
```
I am not seeing anything in the API reference for `adminConnection.createProfile` or `adminConnection.connectWithDetails`. Can someone point me to where I can read up on these? Or have these methods been updated in v0.15 and not updated in the template generator? Or vice-versa? I see that the `adminConnection.connect()` method exists on sample networks from v0.14 while the template is using `adminConnection.connectWithDetails()`.
PaulWilliams (Fri, 10 Nov 2017 17:09:00 GMT):
@rddill thanks for the input. My thinking is that I want to give business the responsibility to manage its own people and not burden the network Admin for scalibility. For example If I have a couple of businesses with a few employees it would be manageable. However what if I have 500 business with 1000 employees each with varying degrees of hiring and firing. A network admin shouldn't have to process all of that and the business can handle it internally
PaulWilliams (Fri, 10 Nov 2017 17:13:12 GMT):
As some background this is for my senior capstone project. I have businesses and customers. My thought process was that customers sign up and get a generic identity issued to them per the acl that allows them to browse items that retailers have. A customer can create a purchase order to buy items from a business and have the ability to view any purchase orders associated with that customer. Business will sign up and get an identity that can issue more identites associate with its employees to manage various responsibilities (add / edit items, view / edit purchase orders associated with an employee or the entire company depending on the acl access)
PaulWilliams (Fri, 10 Nov 2017 17:13:48 GMT):
All of this is through a web application that uses the REST server to access the chain
nickyromeijn (Fri, 10 Nov 2017 17:47:11 GMT):
@zachgoll I'm having the same issue; how are we supposed to use the embedded connection with cards?
zachgoll (Fri, 10 Nov 2017 17:47:53 GMT):
@nickyromeijn I think there are new methods that have not been updated in the documentation...
zachgoll (Fri, 10 Nov 2017 17:49:16 GMT):
But I don't know that the `type: 'embedded'` line is the issue because when I run `npm test` for the generated network, it works fine. I am just trying to edit my pre-existing network test file to work and cannot seem to get it going!
nickyromeijn (Fri, 10 Nov 2017 17:56:01 GMT):
Could you share the connection part of your generated tests? @zachgoll
zachgoll (Fri, 10 Nov 2017 17:57:03 GMT):
@nickyromeijn The code snippet above is directly from the `yo hyperledger-composer:businessnetwork` Yeoman generator and works correctly.
nickyromeijn (Fri, 10 Nov 2017 17:57:36 GMT):
That actually gives me an error that no card can be found with the name defaultprifle
zachgoll (Fri, 10 Nov 2017 17:57:36 GMT):
So apparently `adminConnection.connectWithDetails()` is a valid method. I just can't find any documentation on it.
nickyromeijn (Fri, 10 Nov 2017 17:57:46 GMT):
defaultprofile*
zachgoll (Fri, 10 Nov 2017 17:58:52 GMT):
Did you run `./createPeerAdminCard.sh` from `fabric-tools`?
nickyromeijn (Fri, 10 Nov 2017 17:59:24 GMT):
that has nothing to do with the tests
nickyromeijn (Fri, 10 Nov 2017 17:59:35 GMT):
thats for actually deploying and executing actions against the business network
nickyromeijn (Fri, 10 Nov 2017 17:59:59 GMT):
the embedded connector is a virtual one stored in memory which makes it possible to test against the BNA. no real card should be needed
zachgoll (Fri, 10 Nov 2017 18:00:39 GMT):
True true. Did you run `npm install` yet on the generated network?
nickyromeijn (Fri, 10 Nov 2017 18:01:11 GMT):
Im not using the generated network. I'm using my old one
nickyromeijn (Fri, 10 Nov 2017 18:01:17 GMT):
i've upgraded from 14.3
nickyromeijn (Fri, 10 Nov 2017 18:01:34 GMT):
But yes i updated everything
zachgoll (Fri, 10 Nov 2017 18:01:57 GMT):
So you are using a network that you created already but have updated to v0.15?
nickyromeijn (Fri, 10 Nov 2017 18:02:05 GMT):
```"composer-admin": "^0.15.0",
"composer-client": "^0.15.0",
"composer-common": "^0.15.0",
"composer-connector-embedded": "^0.15.0",```
nickyromeijn (Fri, 10 Nov 2017 18:02:22 GMT):
Yes it's a 14.3 network that i just updated to 15
nickyromeijn (Fri, 10 Nov 2017 18:02:42 GMT):
the only thing to fix would be the auth system which shouldn't be a big issue
nickyromeijn (Fri, 10 Nov 2017 18:02:53 GMT):
It's just that there's no docs :<
zachgoll (Fri, 10 Nov 2017 18:03:07 GMT):
Yeah that is what I am stuck on then as well. `npm test` works for me only on the Yeoman template. My previous network is not working.
nickyromeijn (Fri, 10 Nov 2017 18:16:17 GMT):
@zachgoll it's very weird though, i removed my node modules folder reinstalled everything and it still doesn't work. Don't see any differences between the generated project and my old one :/
zachgoll (Fri, 10 Nov 2017 18:17:02 GMT):
@nickyromeijn I may just be reverting back to v0.14 until docs are up because I'm in the same boat here.
nickyromeijn (Fri, 10 Nov 2017 18:17:59 GMT):
yeah same
mastreips (Fri, 10 Nov 2017 18:21:28 GMT):
is it possible to view the docs for v0.14?
PiyushSarwal (Fri, 10 Nov 2017 18:24:52 GMT):
Are there any instructions on how to downgrade composer version?
nickyromeijn (Fri, 10 Nov 2017 18:27:09 GMT):
just pin the version in package.json? or install the specific version
nickyromeijn (Fri, 10 Nov 2017 18:32:25 GMT):
Ah i have the tests running; was an issue on my side :) still had some old .connect method calls in my tests instead of connectWithDetails
GeorgeG 8 (Fri, 10 Nov 2017 18:42:26 GMT):
Has joined the channel.
GeorgeG 8 (Fri, 10 Nov 2017 18:43:54 GMT):
Hi Channel, has anyone successfully edited create_composer-rest-server.sh to enable rest server authentication on their rest server deployed to ibm container service?
mastreips (Fri, 10 Nov 2017 18:49:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=M52zqMdwLMKyiKhzb) @SimonOberzan is this a configuration change? Where would I do it?
nileshyjadhav (Fri, 10 Nov 2017 18:54:56 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XhWSjB72a6gaz5Lnk) @sstone1 Thanks! This is helpful. Issue is resolved.
zachgoll (Fri, 10 Nov 2017 19:03:04 GMT):
@nickyromeijn I downloaded a sample network and ran `npm test` which had the the old .connect method calls and it worked fine??
nickyromeijn (Fri, 10 Nov 2017 19:03:30 GMT):
probably because it's using the old nodejs libraries composer-client * composer-common
zachgoll (Fri, 10 Nov 2017 19:04:45 GMT):
Yes yes that's exactly it. I saw the sample network engine was v0.15 so didn't bother to check to see the version of dependencies thanks!
nickyromeijn (Fri, 10 Nov 2017 19:16:04 GMT):
@CodeReaper I'm running into the same issue, did you manage to fix it? : ```The current identity has not been registered: admin```. This happens after importing the card that was created when deploying the bna
nickyromeijn (Fri, 10 Nov 2017 19:16:04 GMT):
@CodeReaper I'm running into the same issue, did you manage to fix it? : ```The current identity has not been registered: admin```. This happens after importing the card that was created when deploying the bna and using it to ping
nickyromeijn (Fri, 10 Nov 2017 19:41:31 GMT):
Using the following command: ```composer network deploy -a ./dist/network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin.card && composer card import --file networkadmin.card``` works but when i try to ping the network using the network admin card i get the above error: ```The current identity has not been registered: admin``` Is there something im missing?
nickyromeijn (Fri, 10 Nov 2017 19:41:31 GMT):
Using the following command: ```composer network deploy -a ./dist/network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin.card && composer card import --file networkadmin.card``` works but when i try to ping the network using the network admin card i get the above error: ```The current identity has not been registered: admin``` Is there something im missing?
nickyromeijn (Fri, 10 Nov 2017 19:41:31 GMT):
```composer network deploy -a ./dist/network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin.card && composer card import --file networkadmin.card``` works but when i try to ping the network using the network admin card i get the above error: ```The current identity has not been registered: admin``` Is there something im missing?
nickyromeijn (Fri, 10 Nov 2017 19:41:31 GMT):
```composer network deploy -a ./dist/network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin.card && composer card import --file networkadmin.card``` works but when i try to ping the network using the network admin card i get the above error: ```The current identity has not been registered: admin``` Is there something im missing?
nickyromeijn (Fri, 10 Nov 2017 19:41:31 GMT):
```composer network deploy -a ./dist/network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin.card``` works but when i try to ping the network using the network admin card i get the above error: ```The current identity has not been registered: admin``` Is there something im missing?
nickyromeijn (Fri, 10 Nov 2017 19:41:31 GMT):
Running the following command: ```composer network deploy -a ./dist/network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin.card``` works but when i try to ping the network using the network admin card i get the above error: ```The current identity has not been registered: admin``` Is there something im missing?
nickyromeijn (Fri, 10 Nov 2017 19:41:31 GMT):
Running the following command: ```composer network deploy -a ./dist/network.bna``` --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin.card``` works but when i try to ping the network using the network admin card i get the above error: ```The current identity has not been registered: admin``` Is there something im missing?
nickyromeijn (Fri, 10 Nov 2017 19:41:31 GMT):
Running the following command: composer network deploy -a ./dist/network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin.card, works but when i try to ping the network using the network admin card i get the above error: ```The current identity has not been registered: admin``` Is there something im missing?
zachgoll (Fri, 10 Nov 2017 22:28:14 GMT):
@nickyromeijn Did you import the newly created card? After running that command, try `composer card list` and see if admin has been added. If not, run `composer card import -f networkadmin.card`. Now if you run `composer card list` you should see the new admin card.
mastreips (Fri, 10 Nov 2017 22:28:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gsfZQqFQmrQzqaSvD) @mahoney1 I did this and changed the server.js option to disable host check, it finds the REST server now but I now get a could not find api route error. Why?
msmarcal (Fri, 10 Nov 2017 22:56:31 GMT):
Has joined the channel.
SimonOberzan (Fri, 10 Nov 2017 23:11:25 GMT):
@mastreips I don't recommend you disabling host check. I think that my solution of setting the `ng serve --host 0.0.0.0` to `ng serve --host {MY_IP}` in package.json combined with the change that @mahoney1 suggested is prefferable,
mastreips (Sat, 11 Nov 2017 00:23:16 GMT):
Clipboard - November 10, 2017 7:23 PM
mastreips (Sat, 11 Nov 2017 00:23:29 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MFQ7bhddKgjfAuNA9) @SimonOberzan I was able to get access by using a combination of public and private AWS ips but I still get "Could not find API route"
bh4rtp (Sat, 11 Nov 2017 05:59:57 GMT):
@mbwhite yes, it is create using `-r PeerAdmin` and `-r ChannelAdmin`
bh4rtp (Sat, 11 Nov 2017 05:59:57 GMT):
@mbwhite yes, it is created using `-r PeerAdmin` and `-r ChannelAdmin`
davidkel (Sat, 11 Nov 2017 07:40:56 GMT):
@bh4rtp when creating a card that is going to be used for deploying/installing/starting don't specify a business network. I think you must have used the `-n` flag on the card creation. eg
```
composer card create -p connection.json -u FabricAdmin -c
bh4rtp (Sat, 11 Nov 2017 07:45:03 GMT):
@davidkel i use user and secret, not keypair. is it ok?
davidkel (Sat, 11 Nov 2017 07:49:00 GMT):
@bh4rtp No that won't work because it won't be an identity known to the Peer or Channel as an admin identity
bh4rtp (Sat, 11 Nov 2017 08:42:40 GMT):
@davidkel but how can i generate the key pair? may i use `openssl` to get them?
bh4rtp (Sat, 11 Nov 2017 09:24:50 GMT):
@davidkel i use `openssl` to generate the key pairs.
```openssl ecparam -name secp521r1 -genkey -noout -out key.pem
openssl req -new -sha256 -key key.pem -out cert.pem```
and then create the card successfully taking your instructions. but it fails when import the card:
```composer card import -f FabricAdmin@decentralized-energy-network.card -n FabricAdmin
Error: Does not understand PEM contents other than ECDSA private keys and certificates```
nickyromeijn (Sat, 11 Nov 2017 09:48:50 GMT):
I don't think you can just generate that stuff and expect it to work; i think it has to be signed by the MSP
sstone1 (Sat, 11 Nov 2017 09:48:55 GMT):
+1
sstone1 (Sat, 11 Nov 2017 09:50:41 GMT):
@bh4rtp if you're building your own network, then I suggest you look at the Fabric documentation (https://hyperledger-fabric.readthedocs.io/en/latest/build_network.html) around building your own network - including cryptogen for generating crypto material
nickyromeijn (Sat, 11 Nov 2017 09:51:54 GMT):
@sstone1 Do you maybe know why my default admin card is not working? eg ```composer network deploy -a ./dist/network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin.card``` and also importing it. When i try to ping it works but when i try to issue an identity i'm getting an unauthorized error
sstone1 (Sat, 11 Nov 2017 09:52:23 GMT):
you issue an identity using the networkadmin.card ?
nickyromeijn (Sat, 11 Nov 2017 09:52:29 GMT):
yep
sstone1 (Sat, 11 Nov 2017 09:52:47 GMT):
have you got the full output from all three commands (deploy, import, ping) ?
nickyromeijn (Sat, 11 Nov 2017 09:53:14 GMT):
Not currently no. Can't generate it either atm
nickyromeijn (Sat, 11 Nov 2017 09:53:42 GMT):
I'll capture the output tomorrow and put it up here. Got to go now :) Was wondering if it was a common issue with 15.0
sstone1 (Sat, 11 Nov 2017 09:53:58 GMT):
not heard of any related issues _yet_ ;)
nickyromeijn (Sat, 11 Nov 2017 09:54:03 GMT):
Alright
JeetShah (Sat, 11 Nov 2017 11:03:48 GMT):
Has joined the channel.
JeetShah (Sat, 11 Nov 2017 11:05:06 GMT):
Hi, I'm new to Hyperledger Composer and the Blockchain Technology
I have installed all the prerequisites required.
I have a question about where is the data stored on which these transactions are logged ?
sstone1 (Sat, 11 Nov 2017 11:52:26 GMT):
@JeetShah it's stored in the ledger and world state database provided by Hyperledger Fabric (or more simply, on the blockchain)
SimonOberzan (Sat, 11 Nov 2017 12:59:46 GMT):
@mastreips You have correctly set the `ng serve --host {...}, but it cannot access the rest api yet. Now just set `public ApiIP: string = "localhost"` to this: `public ApiIP: string = "{YOUR_IP}"` in `my-app/src/app/configuration.ts` and it shoul work.
SimonOberzan (Sat, 11 Nov 2017 12:59:46 GMT):
@mastreips You have correctly set the `ng serve --host {...}`, but it cannot access the rest api yet. Now just set `public ApiIP: string = "localhost"` to this: `public ApiIP: string = "{YOUR_IP}"` in `my-app/src/app/configuration.ts` and it shoul work.
SimonOberzan (Sat, 11 Nov 2017 12:59:46 GMT):
@mastreips You have correctly set the `ng serve --host {...}`, but it cannot access the rest api yet. Now just set `public ApiIP: string = "localhost"` to this: `public ApiIP: string = "{YOUR_IP}"` in `my-app/src/app/configuration.ts` and it should work.
mastreips (Sat, 11 Nov 2017 13:03:06 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=zHhNv4HPE4GadGAm9) @SimonOberzan Thanks. I still had disable the host check in the Server.js and actually run the angular server on a separate instance from the REST API server as detailed here: https://github.com/angular/angular-cli/issues/6070 - works now
Pramoth12340 (Sat, 11 Nov 2017 14:46:25 GMT):
Has joined the channel.
Pramoth12340 (Sat, 11 Nov 2017 14:47:52 GMT):
Hello, newbie here! When I tried to deploy the network locally in hyperledger fabric, it says Missing argument value: networkAdminEnrollSecret
Pramoth12340 (Sat, 11 Nov 2017 14:48:23 GMT):
ex.png
gregnotso (Sat, 11 Nov 2017 15:00:38 GMT):
@sstone1 most probably the (composer) blockchain is stored and runs on IBM's cloud (hardware), unless other cloud providers decide to store it on their cloud and hardware, correct?
sstone1 (Sat, 11 Nov 2017 15:01:15 GMT):
the blockchain is stored wherever you choose to run the Hyperledger Fabric nodes
sstone1 (Sat, 11 Nov 2017 15:01:37 GMT):
they are just docker containers that you can choose to run anywhere
gregnotso (Sat, 11 Nov 2017 15:02:35 GMT):
those nodes and containers need to run 'somewhere' like someone else's cloud or data center, don't they?
gregnotso (Sat, 11 Nov 2017 15:03:29 GMT):
or at least communicate beyond once
gregnotso (Sat, 11 Nov 2017 15:03:36 GMT):
localhost
gregnotso (Sat, 11 Nov 2017 15:03:47 GMT):
one's
sstone1 (Sat, 11 Nov 2017 15:04:43 GMT):
yes correct
sstone1 (Sat, 11 Nov 2017 15:05:04 GMT):
again, you can run those docker containers wherever you like ;)
gregnotso (Sat, 11 Nov 2017 15:06:04 GMT):
right, wherever, but preferably on a W10 laptop for 'most' of us
mastreips (Sat, 11 Nov 2017 15:34:51 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rz8uueMmQvsikLjEK) @Pramoth12340 you are likely using the v14 of composer - that said, you need to give a password string after the -S flag
Pramoth12340 (Sat, 11 Nov 2017 15:36:47 GMT):
@mastreips When I add a string, it says Unknown arguments: p, i, s
Pramoth12340 (Sat, 11 Nov 2017 15:37:00 GMT):
ex1.png
mastreips (Sat, 11 Nov 2017 15:38:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=sfcdmPeHrWP3TeKcM) @Pramoth12340 check your composer version (if its v15) then you need to follow the new protocol for the updated version. The docs have been updated with the new cli commands
bh4rtp (Sat, 11 Nov 2017 15:41:20 GMT):
@mastreips could you please provide the updated docs link?
mastreips (Sat, 11 Nov 2017 15:42:32 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=HEJfqichhav2iPsK3) @bh4rtp same as before: https://hyperledger.github.io/composer/tutorials/developer-guide.html its just that they changed yesterday
bh4rtp (Sat, 11 Nov 2017 15:45:51 GMT):
@mastreips thanks. i am using mobile phone.
varunagarwal (Sat, 11 Nov 2017 16:36:51 GMT):
Over here it says to change COMPOSER_PROVIDERS environment variable . But how do I access it, say I want to see the current value of the variable?
thiago-moreira (Sat, 11 Nov 2017 16:45:35 GMT):
Has joined the channel.
thiago-moreira (Sat, 11 Nov 2017 16:50:16 GMT):
@!sstone1
thiago-moreira (Sat, 11 Nov 2017 16:51:08 GMT):
@sstone1, tks for your video on youtube, Introduction to Fabric Composer, very good!
CodeReaper (Sat, 11 Nov 2017 18:47:12 GMT):
@varunagarwal echo $COMPOSER_PROVIDERS
CodeReaper (Sat, 11 Nov 2017 18:48:12 GMT):
t@sstone1 On what parameter of the card does the authentication process rely on, the id and secret in it?? Doesnt that violate the fact enrollment secret is only supposed to be used once to get the crypto material?
CodeReaper (Sat, 11 Nov 2017 18:48:12 GMT):
@sstone1 On what parameter of the card does the authentication process rely on, the id and secret in it?? Doesnt that violate the fact enrollment secret is only supposed to be used once to get the crypto material?
sstone1 (Sat, 11 Nov 2017 18:49:29 GMT):
the ID and secret is only used once
sstone1 (Sat, 11 Nov 2017 18:49:51 GMT):
it gets used the first time you connect using a card to enrol against the Fabric CA
sstone1 (Sat, 11 Nov 2017 18:50:12 GMT):
it gets an enrolment certificate/private key pair which are then stored in the card and used for subsequent requests
hypertest (Sat, 11 Nov 2017 22:16:53 GMT):
I use this comand for issue new identity composer identity issue -c admin@pii-network -f memberAcard -u memberA -a "resource:org.acme.pii.Member#memberA@acme.org"
hypertest (Sat, 11 Nov 2017 22:16:53 GMT):
I use this comand for issue new identity composer identity issue -c admin@pii-network -f memberAcard -u memberA -a "resource:org.acme.pii.Member#memberA@acme.org" but I get this error Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]], I used the same command yesterday and it was successful I am not sure what is the reason of this error!! Do you have any idea?
chokha (Sat, 11 Nov 2017 23:27:02 GMT):
Has joined the channel.
glotov (Sun, 12 Nov 2017 00:22:39 GMT):
After moving to 0.15, what is the equivalent of `composer network start` where I could provide multiple admins:
glotov (Sun, 12 Nov 2017 00:22:39 GMT):
After moving to 0.15, what is the equivalent of `composer network start` where I could provide multiple admins:
```
# composer network start -a ../dist/my-network.bna -p mainorgtx \
# -i MainPeerAdmin -s randomString \
# -A admin-org1 -C ~/.identityCredentials/admin-org1-pub.pem \
# -A admin-org2 -C ~/.identityCredentials/admin-org2-pub.pem
```
glotov (Sun, 12 Nov 2017 00:22:39 GMT):
After moving to 0.15, what is the equivalent of `composer network start` where I could provide multiple admins:
``` # composer network start -a ../dist/my-network.bna -p mainorgtx \
# -i MainPeerAdmin -s randomString \
# -A admin-org1 -C ~/.identityCredentials/admin-org1-pub.pem \
# -A admin-org2 -C ~/.identityCredentials/admin-org2-pub.pem
```
glotov (Sun, 12 Nov 2017 00:22:39 GMT):
After moving to 0.15, what is the equivalent of `composer network start` where I could provide multiple admins:
```# composer network start -a ../dist/my-network.bna -p mainorgtx \
# -i MainPeerAdmin -s randomString \
# -A admin-org1 -C ~/.identityCredentials/admin-org1-pub.pem \
# -A admin-org2 -C ~/.identityCredentials/admin-org2-pub.pem
```
glotov (Sun, 12 Nov 2017 00:25:45 GMT):
I tried ```composer network start -a ../dist/my-network.bna -c MainPeerAdminTx@my-network \
-A admin-org1 -C ~/.identityCredentials/admin-org1-pub.pem -f /tmp/admin-org1.card \
-A admin-org2 -C ~/.identityCredentials/admin-org2-pub.pem -f /tmp/admin-org2.card``` but looks it does not work this way anymore :(
thiago-moreira (Sun, 12 Nov 2017 00:40:51 GMT):
I had order builde a car on http://car-builder.eu-gb.mybluemix.net/ but it don't showed on http://manufacturing.eu-gb.mybluemix.net/dashboard
thiago-moreira (Sun, 12 Nov 2017 00:41:40 GMT):
sholdn't showed?
hypertest (Sun, 12 Nov 2017 01:34:54 GMT):
Is there any complete web based application based on hyperledger composer? The only thing that I found is Decentralized-energy-composer.
thiago-moreira (Sun, 12 Nov 2017 01:45:16 GMT):
I thought they simulating 2 different applications on 2 different peers sharing the same blockchain , are not they?
ArnoldLeung (Sun, 12 Nov 2017 02:29:47 GMT):
Has joined the channel.
ArnoldLeung (Sun, 12 Nov 2017 02:31:24 GMT):
i am playing with the online playground, using the network tutorial that trade commodities. I tried to add a 'balance' to all participant, i was able to print all balance with event but can't seem to update the balance for each particpant
ArnoldLeung (Sun, 12 Nov 2017 02:32:07 GMT):
.then(function() {
return getParticipantRegistry('org.acme.mynetwork.Trader');
})
.then(function(traderRegistry) {
return traderRegistry.updateAll([buyer,seller]);
})
ArnoldLeung (Sun, 12 Nov 2017 02:32:26 GMT):
is this update code written correctly?
ArnoldLeung (Sun, 12 Nov 2017 02:54:26 GMT):
nvm found the mistake, there was a typo in my transaction logic
hounded (Sun, 12 Nov 2017 03:19:27 GMT):
Has joined the channel.
ArnoldLeung (Sun, 12 Nov 2017 04:33:29 GMT):
anyone know how to implement channel in composer?
ArnoldLeung (Sun, 12 Nov 2017 04:33:51 GMT):
like make sure certain chaincode can be run by a restricted group of participants
hounded (Sun, 12 Nov 2017 05:22:16 GMT):
Hi i'm trying to create an asset with the following
var factory = getFactory();
var NS_Purchaser = 'io.property.agreement.network.Purchaser'
var NS_Vendor = 'io.property.agreement.network.Vendor'
var NS_Property = 'io.property.agreement.network.Property'
var NS_PropertyListing = 'io.property.agreement.network.PropertyListing'
var NS_Agreement = 'io.property.agreement.network.Agreement'
var NS = 'io.property.agreement.network'
var Purchaser = {
"description": "James Cato Carlile Whiteman",
"FirstName": "James",
"LastName": "Whiteman"
}
return getAssetRegistry(NS_Purchaser)
.then(function(purchaserAssetRegistry){
var PurchaserResourse = factory.newResource(NS,'Purchaser','9238');
return purchaserAssetRegistry.add(PurchaserResourse);
})
.catch(function(error){
console.log(error);
});
hounded (Sun, 12 Nov 2017 05:22:39 GMT):
I get the following error 'Asset:io.property.agreement.network.Purchaser' in collection with ID '$sysregistries' does not exist
hounded (Sun, 12 Nov 2017 05:23:06 GMT):
ideas?
hounded (Sun, 12 Nov 2017 07:51:07 GMT):
don't worry everyone, I was using getAssetRegistry on a Participant
hounded (Sun, 12 Nov 2017 07:51:12 GMT):
my bad
davidkel (Sun, 12 Nov 2017 08:00:19 GMT):
@glotov Unfortunately the card generation on the start command isn't correct when you use specify multiple identities to bind.
see https://github.com/hyperledger/composer/issues/2665 plus as you are using the certificate option the card created would not work anyway as it won't have the private key
what you will have to do is use the `composer card create` to create the cards yourself
hounded (Sun, 12 Nov 2017 09:10:52 GMT):
@here anyone know to add a concept to a asset in the asset Registry in js?
hounded (Sun, 12 Nov 2017 09:11:51 GMT):
I have the following asset Agreement identified by id {
o String id
o Condition[] conditions
o FinancialCondition financialCondition
o PaymentPurchasePrice paymentPurchasePrice
o AgreementState status
--> Purchaser purchaser
--> Vendor vendor
--> Property property
}
concept Condition {
o String description
o Boolean required
}
hounded (Sun, 12 Nov 2017 09:12:41 GMT):
in my js I have the following
var agreement = factory.newResource(NS,'Agreement','1');
agreement.conditions = [
[
"Building report required",
true
]
];
hounded (Sun, 12 Nov 2017 09:13:15 GMT):
I get the following error
"Model violation in instance io.property.agreement.network.Agreement#1 class io.property.agreement.network.Condition has value Building report required,true expected a Resource or a Concept."
hounded (Sun, 12 Nov 2017 09:13:48 GMT):
if I pass it as a object I also get an error
hounded (Sun, 12 Nov 2017 09:17:56 GMT):
if I pass as a object I get the following error
"Model violation in instance io.property.agreement.network.Agreement#1 class io.property.agreement.network.Condition has value [object Object] expected a Resource or a Concept."
hounded (Sun, 12 Nov 2017 09:35:08 GMT):
cheers for the help who would of guessed factory newConcepts is what I needed
bh4rtp (Sun, 12 Nov 2017 12:17:50 GMT):
hi, i have created a card like this:
```$ composer card create -n decentralized-energy-network -p ./connection.json -u networkadmin -c ./cert.pem -k ./key.pem -r PeerAdmin -r ChannelAdmin
Successfully created business network card to networkadmin@decentralized-energy-network.card
Command succeeded```
but the card cannot be imported.
```$ composer card import -f networkadmin@decentralized-energy-network.card -n NetworkAdmin
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'```
still stuck at card create/import...:innocent:
bh4rtp (Sun, 12 Nov 2017 12:23:49 GMT):
here is my connection.json file.
``` 1 {
2 "type": "hlfv1",
3 "name": "hlfv1",
4 "orderers": [
5 { "url" : "grpc://localhost:7050" }
6 ],
7 "ca": { "url": "http://localhost:7054",
8 "name": "ca.org1.example.com"
9 },
10 "peers": [
11 {
12 "requestURL": "grpc://localhost:7051",
13 "eventURL": "grpc://localhost:7053"
14 }
15 ],
16 "keyValStore": "/home/allen/.composer-credentials",
17 "channel": "composer-channel",
18 "mspID": "Org1MSP",
19 "timeout": "300"
20 }```
bh4rtp (Sun, 12 Nov 2017 12:34:38 GMT):
i found the reason. use node 6.9.5 will be ok. 8.9.1 will get the error.
davidkel (Sun, 12 Nov 2017 12:35:57 GMT):
@bh4rtp If you want to change versions of node you should uninstall, change version of node and re-install. Some components are dependent on the level of node you are using and as such get pre-setup to that level when npm install is done
bh4rtp (Sun, 12 Nov 2017 12:36:55 GMT):
@davidkel thanks. newbie to `node.js` and `composer`. difficult to step forward...
bh4rtp (Sun, 12 Nov 2017 12:41:15 GMT):
@davidkel where can i find your mentioned `createPeerAdminCard.sh` file.
bh4rtp (Sun, 12 Nov 2017 12:41:15 GMT):
@davidkel where can i find your mentioned `createPeerAdminCard.sh` file. would you please provide a link?
davidoevans (Sun, 12 Nov 2017 12:44:32 GMT):
@bh4rtp `createPeerAdminCard.sh` is in `fabric-tools`
davidoevans (Sun, 12 Nov 2017 12:54:09 GMT):
Is the keyValStore setting within a connection profile still used in v0.15.0?
bh4rtp (Sun, 12 Nov 2017 12:58:23 GMT):
@davidkel at last, `composer network deploy` succeeded! i appreciate your helps all.
bh4rtp (Sun, 12 Nov 2017 12:59:49 GMT):
i shall note that node version should be confirmed for every shell.
davidkel (Sun, 12 Nov 2017 13:08:10 GMT):
@davidoevans It's optional and will be completely removed in the future. However at the moment if you use playground it will require you to define it when creating a business card. But from a CLI and Rest Server point I would recommend not including it in you connection profile.
glotov (Sun, 12 Nov 2017 13:11:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=99kHarCWYkLwAeWPx) [ ](https://chat.hyperledger.org/channel/composer?msg=T8JfmzgPyZRZHo6vG) `Error: The current identity has not been registered: admin-org2`. I filed an issue to track this https://github.com/hyperledger/composer/issues/2688, please upvote.
glotov (Sun, 12 Nov 2017 13:11:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=99kHarCWYkLwAeWPx) [ ](https://chat.hyperledger.org/channel/composer?msg=T8JfmzgPyZRZHo6vG) On 0.15.0, `Error: The current identity has not been registered: admin-org2`. I filed an issue to track this https://github.com/hyperledger/composer/issues/2688, please upvote.
davidkel (Sun, 12 Nov 2017 13:17:27 GMT):
@glotov don't use the -f flag and create the admin-org*.card files yourself using the composer card create
glotov (Sun, 12 Nov 2017 13:22:12 GMT):
@davidkel, I tried this too:
```
composer card create -p ~/.composer-connection-profiles/org2/connection.json -u Org2CaAdmin \
-c ~/.identityCredentials/admin-org2-pub.pem -k ~/.identityCredentials/admin-org2-priv.pem \
-r PeerAdmin -r ChannelAdmin -n my-network --file /tmp/Org2CaAdmin.card
composer card import --file /tmp/Org2CaAdmin.card
```
but this does not help the error.
glotov (Sun, 12 Nov 2017 13:22:12 GMT):
@davidkel, I tried this too: ```
composer card create -p ~/.composer-connection-profiles/org2/connection.json -u Org2CaAdmin \
-c ~/.identityCredentials/admin-org2-pub.pem -k ~/.identityCredentials/admin-org2-priv.pem \
-r PeerAdmin -r ChannelAdmin -n my-network --file /tmp/Org2CaAdmin.card
composer card import --file /tmp/Org2CaAdmin.card
```
but this does not help the error.
glotov (Sun, 12 Nov 2017 13:22:12 GMT):
@davidkel, I tried this too: ```composer card create -p ~/.composer-connection-profiles/org2/connection.json -u Org2CaAdmin \
-c ~/.identityCredentials/admin-org2-pub.pem -k ~/.identityCredentials/admin-org2-priv.pem \
-r PeerAdmin -r ChannelAdmin -n my-network --file /tmp/Org2CaAdmin.card
composer card import --file /tmp/Org2CaAdmin.card
```
but this does not help the error.
glotov (Sun, 12 Nov 2017 13:22:12 GMT):
@davidkel, I tried this too: ```composer card create -p ~/.composer-connection-profiles/org2/connection.json -u Org2CaAdmin \
-c ~/.identityCredentials/admin-org2-pub.pem -k ~/.identityCredentials/admin-org2-priv.pem \
-r PeerAdmin -r ChannelAdmin -n my-network --file /tmp/Org2CaAdmin.card
composer card import --file /tmp/Org2CaAdmin.card```
but this does not help the error.
davidkel (Sun, 12 Nov 2017 13:36:19 GMT):
@glotov did any admin id get bound into the NetworkAdmin participant ? ie can you do composer identity list as admin-org1 to see what is there
glotov (Sun, 12 Nov 2017 13:42:47 GMT):
@davidkel yes, I did this, please look inside https://github.com/hyperledger/composer/issues/2688 description.
glotov (Sun, 12 Nov 2017 13:45:23 GMT):
@davidkel in particular, ```$ composer identity list -c MainCaAdmin@my-network
✔ List all identities in the business network
-
$class: org.hyperledger.composer.system.Identity
identityId: 6db02a2500c24107f4274b58f36439c5866e327d02580019dfbc42f80d0c9e3d
name: Admin2
issuer: 33d1add3b20346c24bf18a3650ae221883650532d1e37f10cae55715ed04cb63
certificate:
state: ISSUED
participant: resource:org.hyperledger.composer.system.NetworkAdmin#admin-org2
-
$class: org.hyperledger.composer.system.Identity
identityId: c83c23d1aebc255a0eeb182572c3b16b46407167447081a92da6352babeb07ca
name: admin-org1
issuer: 33d1add3b20346c24bf18a3650ae221883650532d1e37f10cae55715ed04cb63
certificate:
"""
-----BEGIN CERTIFICATE-----
MIIB...g==
-----END CERTIFICATE-----
"""
state: ACTIVATED
participant: resource:org.hyperledger.composer.system.NetworkAdmin#admin-org1
Command succeeded
```.
glotov (Sun, 12 Nov 2017 13:56:33 GMT):
Also I noticed that `composer identity bind` excepts on `-c` key both card and certificate: ```$ composer identity bind
composer identity bind [options]
Bind an existing identity to a participant in a participant registry
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--card, -c Name of the network card to use [string] [required]
--participantId, -a The particpant to issue the new identity to [string] [required]
--certificateFile, -c File containing the certificate [string] [required]
```. Thus I cannot run it, even if I use full options names: ```$ composer identity bind --card MainCaAdmin@educhain-mainorg -a Admin2 --certificateFile ~/.identityCredentials/admin-org2-pub.pem
Error: Unable to read certificate file MainCaAdmin@educhain-mainorg,/home/denis/.identityCredentials/admin-org2-pub.pem. path must be a string or Buffer
Command failed
```
glotov (Sun, 12 Nov 2017 13:56:33 GMT):
Also I noticed that `composer identity bind` excepts on `-c` key both card and certificate: ```$ composer identity bind
composer identity bind [options]
Bind an existing identity to a participant in a participant registry
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--card, -c Name of the network card to use [string] [required]
--participantId, -a The particpant to issue the new identity to [string] [required]
--certificateFile, -c File containing the certificate [string] [required]
```. Thus I cannot run it, even if I use full options names: ```$ composer identity bind --card MainCaAdmin@my-mainorg -a Admin2 --certificateFile ~/.identityCredentials/admin-org2-pub.pem
Error: Unable to read certificate file MainCaAdmin@educhain-mainorg,/home/denis/.identityCredentials/admin-org2-pub.pem. path must be a string or Buffer
Command failed
```
glotov (Sun, 12 Nov 2017 13:56:33 GMT):
Also I noticed that `composer identity bind` excepts on `-c` key both card and certificate: ```$ composer identity bind
composer identity bind [options]
Bind an existing identity to a participant in a participant registry
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--card, -c Name of the network card to use [string] [required]
--participantId, -a The particpant to issue the new identity to [string] [required]
--certificateFile, -c File containing the certificate [string] [required]
``` Thus I cannot run it, even if I use full options names:
```$ composer identity bind --card MainCaAdmin@educhain-mainorg -a Admin2 --certificateFile ~/.identityCredentials/admin-org2-pub.pem
Error: Unable to read certificate file MainCaAdmin@educhain-mainorg,/home/denis/.identityCredentials/admin-org2-pub.pem. path must be a string or Buffer
Command failed
```
davidkel (Sun, 12 Nov 2017 13:58:00 GMT):
@glotov Just out of interest where did the Admin2 identity come from ?
bh4rtp (Sun, 12 Nov 2017 13:58:55 GMT):
@davidkel `composer network deploy` uses -c to specify card name. what does -f means? use a card and create a card?
bh4rtp (Sun, 12 Nov 2017 13:58:55 GMT):
@davidkel `composer network deploy` uses -c to specify card name. what does -f means? use a card and create another card?
glotov (Sun, 12 Nov 2017 13:59:55 GMT):
@davidkel I tried ```composer participant add -c MainCaAdmin@educhain-network -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"admin-org2"}'
composer identity issue -c MainCaAdmin@educhain-network -u Admin2 -a org.hyperledger.composer.system.NetworkAdmin#admin-org2 -x true``` in hope that it helps...
glotov (Sun, 12 Nov 2017 13:59:55 GMT):
@davidkel I tried ```composer participant add -c MainCaAdmin@my-network -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"admin-org2"}'
composer identity issue -c MainCaAdmin@my-network -u Admin2 -a org.hyperledger.composer.system.NetworkAdmin#admin-org2 -x true``` in hope that it helps...
davidkel (Sun, 12 Nov 2017 14:07:05 GMT):
@glotov identity issue isn't the right thing to do for you. It would be identity bind but it looks like that is another bug. Could you raise an issue about identity bind please ?
nickyromeijn (Sun, 12 Nov 2017 14:08:10 GMT):
Im deploying the network with the following command: ```composer network deploy -a ./dist/network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin.card && composer card import --file networkadmin.card``` this works but when i try to ping the network with the freshly enrolled network admin i get this: ```Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)```
davidoevans (Sun, 12 Nov 2017 14:11:32 GMT):
@nickyromeijn - i think you need to ping with the card rather than the identity
glotov (Sun, 12 Nov 2017 14:13:46 GMT):
@davidkel here it is: https://github.com/hyperledger/composer/issues/2689
nickyromeijn (Sun, 12 Nov 2017 14:15:57 GMT):
I am, i'm using ping with the imported admin card but it says it's not registered. When following the tutorial and not using the deploy command but runtime install & start network the identity is registered and i can ```ping``` the network. However when i try to issue an identity with ```composer identity issue --card admin@pgb-network ``` i get this error ```Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]```
nickyromeijn (Sun, 12 Nov 2017 14:15:57 GMT):
I am, i'm using ping with the imported admin card but it says it's not registered. When following the tutorial and not using the deploy command but runtime install & start network the identity is registered and i can ping the network. However when i try to issue an identity with composer identity issue --card admin@pgb-network i get this error ```Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]```
CodeReaper (Sun, 12 Nov 2017 14:19:46 GMT):
Hey, I was wondering that for a transaction the composer application should have the certificates of all the peers in the network...like in balance-transfer example and their path is mentioned in network-config.json. I dont see the composer app making use of any certificates. Does it have TLS off for transactions
CodeReaper (Sun, 12 Nov 2017 14:19:46 GMT):
Hey, I was wondering that for a transaction the composer application should have the certificates of all the peers in the network...like in balance-transfer example and their path is mentioned in network-config.json. I dont see the composer app making use of any certificates. Does it have TLS off for transactions? How and where should I feed them?
IssaAmit (Sun, 12 Nov 2017 14:25:38 GMT):
Has joined the channel.
IssaAmit (Sun, 12 Nov 2017 14:25:48 GMT):
Hello Need Help.
IssaAmit (Sun, 12 Nov 2017 14:27:10 GMT):
I had deployed by .bna file successfully
However on ping I recieve
Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request
Command failed
IssaAmit (Sun, 12 Nov 2017 14:27:10 GMT):
I had deployed by .bna file successfully
However on ping I recieve
'Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request
Command failed'
IssaAmit (Sun, 12 Nov 2017 14:27:10 GMT):
I had deployed by .bna file successfully
However on ping I recieve
`Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request
Command failed`
bh4rtp (Sun, 12 Nov 2017 14:28:51 GMT):
hi, does `composer-rest-server` 0.15.0 has changed api link? i remember `http://localhost:3000/api/org.decentralized.energy.network.Bank` was `http://localhost:3000/api/Bank` in 0.14.3.
nickyromeijn (Sun, 12 Nov 2017 14:30:28 GMT):
@bh4rtp Thats toggleable through the use namespace option when booting up the rest server
bh4rtp (Sun, 12 Nov 2017 14:31:01 GMT):
@nickyromeijn got it. thanks.
nickyromeijn (Sun, 12 Nov 2017 14:33:01 GMT):
Is there anyone that has been able to successfully issue a new identity using the cli and 0.15? I can't seem to get the networkadmin card to work properly. Either admin is an unknown entity for the network or it's not authorized to issue new identities.. this worked fine with 0.14.3
bh4rtp (Sun, 12 Nov 2017 14:33:33 GMT):
btw, `composer-rest-server` responds slowly for `-h` almost in 5 seconds.
bh4rtp (Sun, 12 Nov 2017 14:42:18 GMT):
@nickyromeijn big differences. i just passed `composer network deploy`. everything is ok include authentication and multiple user for 0.14.3. but after updated to 0.15.0, everything is changed. if any questions or improvements, let's talk here.
bh4rtp (Sun, 12 Nov 2017 14:42:18 GMT):
@nickyromeijn big differences. i just passed `composer network deploy`. everything is ok include authentication and multiple user for 0.14.3 yesterday. but after updated to 0.15.0, everything is changed. if any questions or improvements, let's talk here.
bh4rtp (Sun, 12 Nov 2017 14:42:18 GMT):
@nickyromeijn big differences. i just passed `composer network deploy`. everything was ok include authentication and multiple user for 0.14.3 yesterday. but after updated to 0.15.0, everything is changed. if any questions or improvements, let's talk here.
nickyromeijn (Sun, 12 Nov 2017 14:43:54 GMT):
Hm i know there are big differences with 0.15. The issue is that when i use the deploy as per documentation the generated admin@network card does not work properly. Pinging the network using the admin card works fine but when trying to issue a new identity i'm getting an unauthorized error
nickyromeijn (Sun, 12 Nov 2017 14:44:11 GMT):
while under 0.14 the admin identity was authorized to issue identities just fine
nickyromeijn (Sun, 12 Nov 2017 14:45:31 GMT):
Adding a ```org.hyperledger.composer.system.NetworkAdmin``` participant using the admin@network card works fine but when generating an identity it errors, eg: ```composer identity issue```
nickyromeijn (Sun, 12 Nov 2017 14:45:31 GMT):
Adding a ```org.hyperledger.composer.system.NetworkAdmin``` participant using the admin@network card works fine but when generating an identity it errors, eg: composer identity issue
davidoevans (Sun, 12 Nov 2017 14:49:43 GMT):
are there any examples of unit testing a network against v0.15.0?
bh4rtp (Sun, 12 Nov 2017 14:50:13 GMT):
@nickyromeijn so do i. i almost tried a hundred times of `create card`, `import card`, `network deploy`. with help of @davidkel, finally succeeded!
nickyromeijn (Sun, 12 Nov 2017 14:50:49 GMT):
@bh4rtp Could you show the steps to get to that point?
bh4rtp (Sun, 12 Nov 2017 14:51:31 GMT):
@nickyromeijn ok. let me write it down.
bh4rtp (Sun, 12 Nov 2017 15:03:37 GMT):
@nickyromeijn these steps `may` work.
```1. copy Admin private key and signcert from crypto-config to ~;
2. cd faric-tools && ./startFabric.sh
3. ./createComposerProfiles.sh
4. cd ~/.composer-connection-profiles
5. create card
$ composer card create -p connection.json -u FabricAdmin -c ~/cert.pem -k ~/key.pem -r PeerAdmin -r ChannelAdmin
6. import card
$ composer card import -f FabricAdmin@decentralized-energy-network.card -n NetworkAdmin
7. deploy network
$ cd dist && composer network deploy -a ./decentralized-energy-network.bna -c NetworkAdmin -A admin -S adminpw -f networkadmin.card
8. import networkadmin.card named as admin
9. use networkadmin.card to start composer-rest-server
$ composer-rest-server -n required -c admin -p 3000```
bh4rtp (Sun, 12 Nov 2017 15:03:37 GMT):
@nickyromeijn these steps `may` work.
```1. copy Admin private key and signcert from crypto-config to ~
2. cd faric-tools && ./startFabric.sh
3. ./createComposerProfiles.sh
4. cd ~/.composer-connection-profiles
5. create card
$ composer card create -p connection.json -u FabricAdmin -c ~/cert.pem -k ~/key.pem -r PeerAdmin -r ChannelAdmin
6. import card
$ composer card import -f FabricAdmin@decentralized-energy-network.card -n NetworkAdmin
7. deploy network
$ cd dist && composer network deploy -a ./decentralized-energy-network.bna -c NetworkAdmin -A admin -S adminpw -f networkadmin.card
8. import networkadmin.card named as admin
9. use networkadmin.card to start composer-rest-server
$ composer-rest-server -n required -c admin -p 3000```
bh4rtp (Sun, 12 Nov 2017 15:03:37 GMT):
@nickyromeijn these steps `may` work.
```1. copy Admin private key and signcert from crypto-config to ~
2. cd faric-tools && ./startFabric.sh
3. ./createComposerProfiles.sh
4. cd ~/.composer-connection-profiles/hlfv1, add name field in connection.json.
5. create card
$ composer card create -p connection.json -u FabricAdmin -c ~/cert.pem -k ~/key.pem -r PeerAdmin -r ChannelAdmin
6. import card
$ composer card import -f FabricAdmin@decentralized-energy-network.card -n NetworkAdmin
7. deploy network
$ cd dist && composer network deploy -a ./decentralized-energy-network.bna -c NetworkAdmin -A admin -S adminpw -f networkadmin.card
8. import networkadmin.card named as admin
9. use networkadmin.card to start composer-rest-server
$ composer-rest-server -n required -c admin -p 3000```
bh4rtp (Sun, 12 Nov 2017 15:03:37 GMT):
@nickyromeijn these steps `may` work.
```1. copy Admin private key and signcert from crypto-config to ~
2. cd faric-tools && ./startFabric.sh
3. ./createComposerProfiles.sh
4. cd ~/.composer-connection-profiles/hlfv1, add name field in connection.json.
5. create card
$ composer card create -p connection.json -u FabricAdmin -c ~/cert.pem -k ~/key.pem -r PeerAdmin -r ChannelAdmin
6. import card
$ composer card import -f FabricAdmin@decentralized-energy-network.card -n NetworkAdmin
7. deploy network
$ cd dist && composer network deploy -a ./decentralized-energy-network.bna -c NetworkAdmin -A admin -S adminpw -f networkadmin.card
8. import networkadmin.card named as admin
9. use the admin card to start composer-rest-server
$ composer-rest-server -n required -c admin -p 3000```
nickyromeijn (Sun, 12 Nov 2017 15:05:06 GMT):
The peeradmin part works fine for me
nickyromeijn (Sun, 12 Nov 2017 15:05:40 GMT):
it's this: ./decentralized-energy-network.bna -c NetworkAdmin -A admin -S adminpw -f networkadmin.card
8. import networkadmin.card named as admin. The network admin works for pinging and default operations but is not authorized to issue new identities
bh4rtp (Sun, 12 Nov 2017 15:08:11 GMT):
@nickyromeijn i still feel confused with identities and card and admin...
bh4rtp (Sun, 12 Nov 2017 15:11:08 GMT):
the `NetworkAdmin` card can be used to deploy network (create channel and install chaincode). but cannot ping the network. the admin card can be used to run `composer-rest-server`.
bh4rtp (Sun, 12 Nov 2017 15:11:08 GMT):
the `NetworkAdmin` card can be used to deploy network (create channel and install chaincode). but cannot ping the network. the admin card can be used to ping the network and run `composer-rest-server`.
nickyromeijn (Sun, 12 Nov 2017 15:12:04 GMT):
I know. I'm using the default peerAdmin card for deploying. That's not the issue i'm running into. It's really just related to the networkAdmin identity that's not doing what i want :(
bh4rtp (Sun, 12 Nov 2017 15:14:07 GMT):
@nickyromeijn do you mean the default `peerAdmin` card already existed and not need to create?
davidkel (Sun, 12 Nov 2017 15:17:36 GMT):
@nickyromeijn one thing to try is if you are starting from scatch, try clearing out your card store which can be found at $HOME/.composer. Once you have created the admin card from the deploy, import it into your card store, ping it, then export it from the card store and delete the original admin card. The admin identity is the bootstrap identity in the CA server and has issuer authority. You need to make sure that 1) you never try to access the admin id from another place that doesn't use the card but tries to use the secret. If you do, a new admin identity is created and that one is now the one that the CA Server will recognise and the old admin you have in your card will now not have authority to register new identities on the CA Server. 2) you don't restart your CA Server unless you have specifically configured it to keep previous registrations otherwise it will start totally clean and generate a whole new bootstrap admin identity for which the one you have will not work with the CA server anymore. Note that all these admin identities from the business network point of view remain `valid` unless you revoke them in the business network so these downloaded certificates will still work for any business network interaction.
nickyromeijn (Sun, 12 Nov 2017 15:18:52 GMT):
Ah so you reckon it's some sort of race condition on the enrollment id/secret?
davidkel (Sun, 12 Nov 2017 15:22:39 GMT):
@nickyromeijn a BN Card that only has a secret in should really only be used once. a BN card that has the crypto material in is guaranteed to be shareable. By doing a card import, ping, card export the new card will have the crypto material in.
CodeReaper (Sun, 12 Nov 2017 15:23:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=u2J6pN7WBWm4wAKYk) @davidkel Is it possible to have TLS enabled network for composer??
CodeReaper (Sun, 12 Nov 2017 15:23:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=u2J6pN7WBWm4wAKYk) @davidkel Is it possible to have TLS enabled peer network for composer??
CodeReaper (Sun, 12 Nov 2017 15:23:24 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=u2J6pN7WBWm4wAKYk) @davidkel Is it possible to have TLS enabled peer network for composer?? Or is to to be implemented in next versions?
nickyromeijn (Sun, 12 Nov 2017 15:24:24 GMT):
Thanks @davidkel i understand, i'll try your guide :)
nickyromeijn (Sun, 12 Nov 2017 15:24:58 GMT):
Should i delete the client-data as well?
davidkel (Sun, 12 Nov 2017 15:26:48 GMT):
@nickyromeijn yes
davidkel (Sun, 12 Nov 2017 15:27:26 GMT):
It ensures you are starting from a clean point, with no previous crypto material stored
bh4rtp (Sun, 12 Nov 2017 15:29:27 GMT):
the complicated thing is that all these steps must be done in correct order, otherwise it does not work. :relaxed:
nickyromeijn (Sun, 12 Nov 2017 15:30:20 GMT):
Yea i understand; could you elaborate why exporting and deleting the stored admin card would make a difference? I would've guessed that when the imported admin card pings it gets supplied with the correct crypto material from the CA because it consumes the id & secret.
davidkel (Sun, 12 Nov 2017 15:34:38 GMT):
@nickyromeijn When you do the ping the system will know that there is no crypto material available to communicate with the business network, so it uses the secret to get new crypto material for that identity and stores it. It then uses that material to perform the ping. When you export the card it will put the crypto material into the card as it is that crypto material that represents that identity.
nickyromeijn (Sun, 12 Nov 2017 15:35:11 GMT):
So i have to export it, then delete the one in the card store and then re-import it?
davidkel (Sun, 12 Nov 2017 15:37:14 GMT):
@nickyromeijn no the card store will have a version of the one you've exported
nickyromeijn (Sun, 12 Nov 2017 15:37:45 GMT):
Not if i delete it though?
davidkel (Sun, 12 Nov 2017 15:38:01 GMT):
Just export it, don't delete it
nickyromeijn (Sun, 12 Nov 2017 15:38:25 GMT):
Ah alright, so the export is necessary to fill the card with the correct material?
davidkel (Sun, 12 Nov 2017 15:38:41 GMT):
You export it so you can use it elsewhere
bh4rtp (Sun, 12 Nov 2017 15:38:52 GMT):
the mechanism sounds interesting!
davidkel (Sun, 12 Nov 2017 15:39:34 GMT):
For example on another system running composer
nickyromeijn (Sun, 12 Nov 2017 15:39:44 GMT):
Ah that way, i understand it basically makes a copy of the cryptomaterial
nickyromeijn (Sun, 12 Nov 2017 15:40:11 GMT):
I misunderstood the way you ment it :) thought it was related to my admin identity not being allowed to issue a new identity
nickyromeijn (Sun, 12 Nov 2017 15:40:46 GMT):
Now i am able to issue new identities just fine, think the issue was the ~/.composer cardstore
davidkel (Sun, 12 Nov 2017 15:41:20 GMT):
It was probably old crypto material stored in the client data directory
nickyromeijn (Sun, 12 Nov 2017 15:41:33 GMT):
yeah i guess so
nickyromeijn (Sun, 12 Nov 2017 15:42:28 GMT):
How would i go about booting up the rest-server in docker with the new card system?
nickyromeijn (Sun, 12 Nov 2017 15:42:49 GMT):
previously you just supplied the id and secret through env vars but the issue command now generates a new card
nickyromeijn (Sun, 12 Nov 2017 15:47:40 GMT):
Is that even going to work the way it's currently set up? Atm you supply the rest-server with a connection profile in plain json where the keyval store references a directory within the container. The generates cards always reference the host machine in they key-val store field.
nickyromeijn (Sun, 12 Nov 2017 15:50:25 GMT):
The way i used to solve this was generating a new id/secret and supply these through the env vars to the rest-server. Even though i can now share an already existing card (which i'm not sure i would ever want security wise) this will never work when used across containers. Or is the keyval store now deprecated?
nickyromeijn (Sun, 12 Nov 2017 15:59:15 GMT):
@davidkel Thanks btw :)
CodeReaper (Sun, 12 Nov 2017 16:26:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=iHJvewEPt6FoqXPZ9) Can anyone please comment on this I need to choose my technology stack for development accordingly.
davidkel (Sun, 12 Nov 2017 19:30:46 GMT):
@CodeReaper Fabric supports TLS (I think only non mutual currently) and so Composer can use TLS to communicate with a fabric. Composer rest server supports TLS comms.
CodeReaper (Sun, 12 Nov 2017 19:34:22 GMT):
@davidkel fabric examples such as balance transfer gather certificates of all peers before sending proposal for transactions and then commit them. I dont see composer having any space for certificates of peers. Am I missing something?
CodeReaper (Sun, 12 Nov 2017 19:34:22 GMT):
@davidkel fabric examples such as balance transfer gather certificates of all peers before sending proposal for transactions and then commit them. I dont see composer having any space for certificates of peers. Am I missing something? Usually the SDK sends proposal to all peers and gather their response to the proposal request and the send th transaction to commit. But the SDK needs to have all the certificates of all the peers. How does that take place in composer?
RaviArunachalam (Sun, 12 Nov 2017 19:44:01 GMT):
Has joined the channel.
RaviArunachalam (Sun, 12 Nov 2017 19:44:54 GMT):
Hi, I am setting up REST server to expose my business network functions as APIs on IBM container service (kubenetes). I followed these instructions. https://ibm-blockchain.github.io/interacting/
RaviArunachalam (Sun, 12 Nov 2017 19:45:38 GMT):
everything went fine. I can see the kubernetes pods are created. But i can't access the server using this URL - http://external_ip_addr:31090/
RaviArunachalam (Sun, 12 Nov 2017 19:45:46 GMT):
any suggestions?
GeorgeG 8 (Sun, 12 Nov 2017 21:38:07 GMT):
@RaviArunachalam In the main page to deploy new business network, make sure you are deploying a network under Connection: hlfv1, and not Connection: Web Browser ...then try creating the rest server again
GeorgeG 8 (Sun, 12 Nov 2017 22:09:36 GMT):
In composer playground*
chainsaw (Sun, 12 Nov 2017 22:55:55 GMT):
Has joined the channel.
chainsaw (Sun, 12 Nov 2017 22:57:07 GMT):
Where can I find documentation on how to write and deploy chaincode with composer?
karthikworks (Sun, 12 Nov 2017 23:47:58 GMT):
I am getting this error after the update..."Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request"
bh4rtp (Sun, 12 Nov 2017 23:53:33 GMT):
@karthikworks what is the command for the update?
karthikworks (Sun, 12 Nov 2017 23:54:02 GMT):
composer network ping -c PeerAdmin@hlfv1
karthikworks (Sun, 12 Nov 2017 23:55:09 GMT):
the same error on composer-rest-server as well
bh4rtp (Sun, 12 Nov 2017 23:56:20 GMT):
@karthikworks so do i. use the card to deploy bn first and ping it using the card created by deploy.
karthikworks (Sun, 12 Nov 2017 23:57:16 GMT):
actually its the same card, deploy worked fine. Only when we ping network or try composer-rest-server i get this error
bh4rtp (Sun, 12 Nov 2017 23:58:04 GMT):
ping works and composer=rest=server will work too.
karthikworks (Sun, 12 Nov 2017 23:58:31 GMT):
ok, deploy works with the same card.
bh4rtp (Mon, 13 Nov 2017 00:00:59 GMT):
i tried last night and succeeded. as explained by @davidkel , those two cards are not the same.
karthikworks (Mon, 13 Nov 2017 00:02:10 GMT):
oh ok..
karthikworks (Mon, 13 Nov 2017 00:08:37 GMT):
What is the other card that should be used ? because i am unable to find any other cards on the ~/.composer/cards
karthikworks (Mon, 13 Nov 2017 00:09:33 GMT):
This is the deploy command....composer network deploy -a simple-network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin.card
hounded (Mon, 13 Nov 2017 00:38:23 GMT):
hi all
hounded (Mon, 13 Nov 2017 00:40:30 GMT):
does anyone have any info on the following error i'm trying to use js factory to create an asset that references other assets
`Model violation in instance io.property.agreement.network.Agreement#5 class io.property.agreement.network.Property has value resource:io.property.agreement.network.Property#1 expected a Relationship.`
hounded (Mon, 13 Nov 2017 00:42:16 GMT):
after creating the asset agreement i'm trying to assign the property feature like ..
`agreement.property = "resource:io.property.agreement.network.Property#1";`
bh4rtp (Mon, 13 Nov 2017 00:55:18 GMT):
@karthikworks you need to import networkadmin.card.
karthikworks (Mon, 13 Nov 2017 01:25:33 GMT):
@bh4rtp thank you, it worked.
hounded (Mon, 13 Nov 2017 02:07:27 GMT):
cheers for the help apparently when you are referencing use the factory and create a reference `var propertyRelation = factory.newRelationship(NS,'Property','1')`
hounded (Mon, 13 Nov 2017 02:08:46 GMT):
:zzz:
RaviArunachalam (Mon, 13 Nov 2017 05:14:37 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ihvmpwJfNgFcamE4f) @GeorgeG 8 Hi, I had deployed the network under hlfv1 not web browser. any ideas what could be wrong?
kedarr (Mon, 13 Nov 2017 07:32:44 GMT):
Has joined the channel.
nickyromeijn (Mon, 13 Nov 2017 07:33:11 GMT):
@karthikworks The difference between the cards is that the PeerAdmin card is the actual hyperledger peer manager (basically an admin in the hyperledger domain) while the networkAdmin card is the admin within the composer domain
username343 (Mon, 13 Nov 2017 07:48:41 GMT):
hi everyone, can anyone tell me how does the business network definition(participants, assets, transaction processor function) interact with the composer runtime?
nickyromeijn (Mon, 13 Nov 2017 07:51:24 GMT):
Does anyone know if with the 0.15.0 update the node modules have an API for creating network cards? The issueIdentity method currently returns a secret and id and not a card.
caroline-church (Mon, 13 Nov 2017 08:11:06 GMT):
Hi @nickyromeijn yesyou can use the cli to create business network cards. The command is `composer card create`
nickyromeijn (Mon, 13 Nov 2017 08:15:57 GMT):
@caroline-church Hi, i'm talking about the SDK* :) sorry (composer-admin)
nickyromeijn (Mon, 13 Nov 2017 08:15:57 GMT):
@caroline-church Hi, i'm talking about the SDK* :) (composer-admin)
dselman (Mon, 13 Nov 2017 08:19:19 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ebfjNGyviqBZYyXxA) @username343 that's a big question! Can you be more specific? It will also be easier to answer a question like that on Stackoverflow.
caroline-church (Mon, 13 Nov 2017 08:23:05 GMT):
oh ok, sorry, in `composer-common` is the `IdCard` class. You can just create a new `IdCard using this. You will then need to import the card which you can do from `adminConnection.importCard`
nickyromeijn (Mon, 13 Nov 2017 08:23:32 GMT):
Alright thanks, is this documented somewhere?
caroline-church (Mon, 13 Nov 2017 08:25:26 GMT):
I don't think it is, although it should be so feel free to raise an issue for this. Also feel free to write the docs yourself for this
nickyromeijn (Mon, 13 Nov 2017 08:26:10 GMT):
:thumbsup: thanks
dselman (Mon, 13 Nov 2017 08:56:19 GMT):
Anyone got these instructions to work for a UK-based free IBM cloud account?
dselman (Mon, 13 Nov 2017 08:56:20 GMT):
https://ibm-blockchain.github.io/setup/
dselman (Mon, 13 Nov 2017 08:56:34 GMT):
For me it fails with
```
Daniels-MBP:fabric-tools dselman$ bx cs cluster-create --name blockchain
Creating cluster...
The machine-type flag was not specified. So a lite cluster with default parameters will be created. To customize the parameters, create a standard cluster and include all required flags.
FAILED
Specify your Bluemix organization and space. Run `bx target --cf`. If you want to specify a different org or space, run `bx target -o ORG -s SPACE`. To get the list of orgs or spaces, use the following commands: `bx iam orgs` and `bx iam spaces`. If you are using the API, include the header `X-Auth-Resource-Space`. (E0126)
Incident ID: bfb4af60-5437-4c3c-a8d4-8b23fcb78323
```
username343 (Mon, 13 Nov 2017 09:00:15 GMT):
hyperledger-composer-architecture-11-638.jpg
username343 (Mon, 13 Nov 2017 09:00:17 GMT):
thanks for responding @dselman , I want to know what happens when i trigger a transaction, which code handles the transaction request and how are the changes to the assets and participant registries made? Basically i want to know what does this picture mean
username343 (Mon, 13 Nov 2017 09:12:14 GMT):
I go the above image from here: https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture, another thing that i want to know is which is the composer-runtime, which is my business network definition( transaction processor function) does the, Composer runtime trigger the transaction processor functions?
username343 (Mon, 13 Nov 2017 09:12:14 GMT):
I go the above image from here: https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture, another thing that i want to know is which is the composer-runtime, which is my business network definition( transaction processor function) does the Composer runtime trigger the transaction processor functions?
dselman (Mon, 13 Nov 2017 09:12:18 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=CrNmDyzYYib9kWRZM) I fixed this with `bx target -r eu-gb` -- I was targeting the wrong region.
dselman (Mon, 13 Nov 2017 09:14:31 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rjHgRgZFnZS3iFcnx) @username343 some suggestions: 1/ listen to the recording for the session where Simon goes through those slides. You should find the recording linked from the community meetings page. 2/ Read this https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/#more-901
dselman (Mon, 13 Nov 2017 09:14:52 GMT):
3/ Post specific follow up questions on StackOverflow.
dselman (Mon, 13 Nov 2017 09:15:13 GMT):
4/ Write up your findings and share them with the community to help spread the knowledge
username343 (Mon, 13 Nov 2017 09:15:36 GMT):
thanks for these links @dselman
dselman (Mon, 13 Nov 2017 09:15:52 GMT):
My pleasure.
VinayakDeshpande (Mon, 13 Nov 2017 10:20:26 GMT):
Has joined the channel.
mahoney1 (Mon, 13 Nov 2017 10:24:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rFrpNc5ELvKsW7BZ7) @chainsaw see our docs site -> https://hyperledger.github.io/composer/reference/js_scripts.html . Once you've developed the business network (each business network is deployed in its own chaincode container) you need to deploy it https://hyperledger.github.io/composer/business-network/bnd-deploy.html also see -> https://hyperledger.github.io/composer/managing/managingindex.html for managing it after. See also https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/ for comparison of approaches with Fabric and Composer development
mahoney1 (Mon, 13 Nov 2017 10:24:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rFrpNc5ELvKsW7BZ7) @chainsaw see our docs site -> https://hyperledger.github.io/composer/reference/js_scripts.html . Once you've developed the business network you need to deploy it https://hyperledger.github.io/composer/business-network/bnd-deploy.html (each business network is deployed in its own chaincode container) also see -> https://hyperledger.github.io/composer/managing/managingindex.html for managing it after. See also https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/ for comparison of approaches with Fabric and Composer development
kmohanar (Mon, 13 Nov 2017 10:31:08 GMT):
Please find the initial Summary,
* Created connection profile for composer
* Started composer-rest-server in authentication and multiuser mode
* Logged in with github authentication
I have added the participant successfully using the below command in the latest environment,
composer participant add -p hlfv1 -n 'tutorial-network' -i admin -s adminpw -d '{"$class":"org.acme.biznet.Trader","tradeId":"alice4@biznet.org","firstName":"alice4","lastName":"a4"}'
while trying to issue identity inorder to get the credential for the participant and to register with the wallet, i used the below mentioned command
composer identity issue -p hlfv1 -n 'tutorial-network' -i admin -s adminpw -u alice4 -a "resource:org.acme.biznet.Trader#alice4@biznet.org"
But gettig the error message: Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Can any one please suggest what i am doing mistake here
jaguarg (Mon, 13 Nov 2017 10:38:36 GMT):
Hi, i am running v.0.15 and I can't activate my admin identity . I used to do it by starting the REST API
jaguarg (Mon, 13 Nov 2017 10:38:42 GMT):
how can I do it now ?
jaguarg (Mon, 13 Nov 2017 10:39:01 GMT):
When deploying my Chaincode I get a .card file for admin . Now I would like to activate it
mahoney1 (Mon, 13 Nov 2017 10:47:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gvPK8uwgwatjAHjzK) @kmohanar hi there, I would suggest move over to v0.15.0 of Composer, with support for new business network cards - the equivalent tutorial is here -> https://hyperledger.github.io/composer/tutorials/developer-guide.html - you will need to do an `npm uninstall -g` of the composer modules first (to remove the old versions) then do an `npm install -g` of the current (v0.15.0) then follow the tutorial as indicated.
mahoney1 (Mon, 13 Nov 2017 10:47:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gvPK8uwgwatjAHjzK) @kmohanar hi there, I would suggest to move over to v0.15.0 of Composer, with support for new business network cards - the equivalent tutorial is here -> https://hyperledger.github.io/composer/tutorials/developer-guide.html - you will need to do an `npm uninstall -g` of the composer modules first (to remove the old versions) then do an `npm install -g` of the current (v0.15.0) then follow the tutorial as indicated.
mahoney1 (Mon, 13 Nov 2017 10:47:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=gvPK8uwgwatjAHjzK) @kmohanar hi there, I would suggest to move over to v0.15.0 of Composer, with support for business network cards - the equivalent tutorial is here -> https://hyperledger.github.io/composer/tutorials/developer-guide.html - you will need to do an `npm uninstall -g` of the composer modules first (to remove the old versions) then do an `npm install -g` of the current (v0.15.0) then follow the tutorial as indicated.
mahoney1 (Mon, 13 Nov 2017 10:51:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kWFLccSiQQzSvKpYQ) @hypertest yes - see vehicle lifecycle demo application and business network here -> https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-lifecycle
kmohanar (Mon, 13 Nov 2017 10:54:16 GMT):
Thanks @mahoney1 . As of now i am in V0.14.2. i will update the composer version as suggested.
jaguarg (Mon, 13 Nov 2017 10:59:20 GMT):
@mahoney1 , I follwed these steps. I am making progress but now when trying to connect with admin I get `The current identity has not been registered: admin`
jaguarg (Mon, 13 Nov 2017 11:00:14 GMT):
But I can see it is : ```$ composer identity list -c admin@poc-network
✔ List all identities in the business network
-
$class: org.hyperledger.composer.system.Identity
identityId: df0c2cb34ef994978260e87956085e4770cf11b1cb05352d5125bb5ad33361fc
name: admin
issuer: 27c582d674ddf0f230854814b7cfd04553f3d0eac55e37d915386c614a5a1de9
certificate:
"""
-----BEGIN CERTIFICATE-----
MIIB8TCCAZegAwIBAgIUcqcKAM4GWopz9//mvnawE2Oi//gwCgYIKoZIzj0EAwIw
czELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNh
biBGcmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMT
E2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcxMTEzMTA0ODAwWhcNMTgxMTEzMTA0
ODAwWjAQMQ4wDAYDVQQDEwVhZG1pbjBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IA
BC4vOFKpY+P8fswnEIXAwjochpCoPRPBeK3TByGgq6gI09Kj8dh62zt0DMusaQHx
WHRnYdBjrAuwjy09AZH3zKujbDBqMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8E
AjAAMB0GA1UdDgQWBBRVI/a+jBpQpi1xDFxYtA0e9eK8djArBgNVHSMEJDAigCAZ
q2WruwSAfa0S5MCpqqZknnCGjjq9AhejItieR+GmrjAKBggqhkjOPQQDAgNIADBF
AiEA69yNKOeTTdB3/eyK/rqim4XE4NDivLd+f6BxommUDWACIBtns6QvRwVfO757
+LNzJE0E8GPlLgAt5MEnIXGDeB+L
-----END CERTIFICATE-----
"""
state: ACTIVATED
participant: resource:org.hyperledger.composer.system.NetworkAdmin#admin```
mahoney1 (Mon, 13 Nov 2017 11:09:38 GMT):
@jaguarg its difficult to know 'which admin' its referring because as you indicate, your identity is showing as 'ACTIVATED' in your listing. I suggest to 1) clean out your $HOME/.composer directory (to remove old or legacy card data or something left in the cache) and then 2) re-import your cards - ie start from scratch
CodeReaper (Mon, 13 Nov 2017 11:22:02 GMT):
I created my own docker network of 5 peers, updated my artifacts, created my channel and made the card to deploy my business network. Card was successfully made but installing the business network I'm getting this error-
CodeReaper (Mon, 13 Nov 2017 11:22:18 GMT):
Clipboard - November 13, 2017 4:52 PM
jaguarg (Mon, 13 Nov 2017 11:23:51 GMT):
@mahoney1 , I cleaned the ./composer folder. and restarted all. but same issue (`The current identity has not been registered: admin`). These are the commands I am running :
jaguarg (Mon, 13 Nov 2017 11:23:52 GMT):
```composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName poc-network
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile ./dist/poc-network.bna --file admin.card
composer card import --file admin.card
composer network ping --card admin@poc-network```
jaguarg (Mon, 13 Nov 2017 11:24:02 GMT):
Am i missing something ?
jaguarg (Mon, 13 Nov 2017 11:25:37 GMT):
The final ping command is returning a successful response : ```composer network ping --card admin@poc-network
The connection to the network was successfully tested: poc-network
version: 0.15.0
participant: org.hyperledger.composer.system.NetworkAdmin#admin
Command succeeded```
jaguarg (Mon, 13 Nov 2017 11:36:43 GMT):
the rest API is OK when starting it like this `composer-rest-server --card admin@poc-network -N never -p 8087`
jaguarg (Mon, 13 Nov 2017 11:37:37 GMT):
but admin can't connect to the business network from nodejs code
jaguarg (Mon, 13 Nov 2017 11:45:52 GMT):
Further progress, I updates compser-client node_module to 0.15 . but new issue now when connecting `Card not found: hlfv1`
jaguarg (Mon, 13 Nov 2017 11:46:21 GMT):
Please can you direct me to the updated version of the composer-client node module docs ?
ra_w (Mon, 13 Nov 2017 12:06:40 GMT):
Has joined the channel.
mahoney1 (Mon, 13 Nov 2017 12:20:53 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=qX34gKoGBNE86DthY) @jaguarg here is the link to composer-client firstly -> https://hyperledger.github.io/composer/jsdoc/module-composer-client
mahoney1 (Mon, 13 Nov 2017 12:22:56 GMT):
@jaguarg what APIs are you currently using in your nodejs code to connect to the biz network?
jaguarg (Mon, 13 Nov 2017 12:25:09 GMT):
@mahoney1 thank you . I am using `bizNetworkConnection.connect` , seems I need to pass the card name. How about the secret ? I would like to check the secret before authorising the connection.
jaguarg (Mon, 13 Nov 2017 12:26:21 GMT):
@mahoney1 also, I am adding participants and issuing identities with composer-client. But I can't see any card generated for the new identities I create.
Pramoth12340 (Mon, 13 Nov 2017 12:28:28 GMT):
Hi, a newbie here...Iam trying to deploy decentralised energy network...But getting some error in starting rest server
mahoney1 (Mon, 13 Nov 2017 12:28:35 GMT):
Yes, you should pass the card name, not the secret. Otherwise if you do use the secret, a new admin identity is created and that one is now the one that the CA Server will recognise and the old admin (that you have in your card) will then not have authority to register new identities on the CA Server.
Pramoth12340 (Mon, 13 Nov 2017 12:28:51 GMT):
1.png
jaguarg (Mon, 13 Nov 2017 12:33:41 GMT):
@mahoney1 thank you. How about the other point re: new identities and participants ?
mahoney1 (Mon, 13 Nov 2017 12:35:33 GMT):
to create cards for identities from the APIs , check out `composer-common` and use the `IdCard` class -> https://hyperledger.github.io/composer/unstable/api/common-idcard.html. You can create a new `IdCard` for identities using this. You will then need to import the card which you can do from `adminConnection.importCard`
mahoney1 (Mon, 13 Nov 2017 12:35:33 GMT):
to create cards for identities from the APIs , check out `composer-common` and use the `IdCard` class -> https://hyperledger.github.io/composer/api/common-idcard.html. You can create a new `IdCard` for identities using this. You will then need to import the card which you can do from `adminConnection.importCard`
mahoney1 (Mon, 13 Nov 2017 12:55:19 GMT):
@Pramoth12340 hi there - looks like the REST server options are not up to date. Can you confirm all of your Composer modules are at v0.15.0 (ie not using an 'older' version of composer-rest-server). The easiest thing to do is to start your composer-rest-server independently on the command line in a separate terminal window eg. `composer-rest-server` as shown here -> https://hyperledger.github.io/composer/integrating/getting-started-rest-api.html - connecting to your business network with an appropriate ID card for `decentralized-energy-network` (if you don't have an ID card presently, you can create one using `composer card create` or more likely, you may already have created one earlier (eg. when you deployed the business network eg ` composer network deploy -a ./dist/my-energy-network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkAdmin.card` -> more info on card creation here -> https://hyperledger.github.io/composer/reference/composer.card.create.html then - finally - suggest to go back up one level - remove your skeleton app and re-generate as before - but this time (in the generator dialogue - choose to _connect to an existing REST server_ as one of the answers. Lastly, you do an `npm start` as before and once again, connect to your Angular app on http://localhost:4200 etc etc
mahoney1 (Mon, 13 Nov 2017 12:57:43 GMT):
@Pramoth12340 the Dev guide https://hyperledger.github.io/composer/tutorials/developer-guide.html will be updated to add this back in (ie on Angular app generation) later this week FYI
jaguarg (Mon, 13 Nov 2017 12:58:28 GMT):
@mahoney1 thank you again. Would be great if you could point me to some example for creating `IdCard` . It seems I need to use `fromArchive` or `fromDirectory` but I don't know how to generate the contents.
davidoevans (Mon, 13 Nov 2017 13:01:37 GMT):
It seems the credentials are stored in client-data...so is the credentials directory within a card meant to be used?
davidoevans (Mon, 13 Nov 2017 13:01:37 GMT):
As of v0.15.0, tt seems the credentials are stored in client-data...so is the credentials directory within a card meant to be used?
davidoevans (Mon, 13 Nov 2017 13:01:37 GMT):
As of v0.15.0, it seems the credentials are stored in client-data...so is the credentials directory within a card meant to be used?
bestbeforetoday (Mon, 13 Nov 2017 13:23:02 GMT):
The `credentials` directory within a card is used. If you import a card with credentials then these credentials will be used by the client for that identity. If the card does not contain any credentials then the enrollment secret will be used to obtain them when it is first used to connect. If you subsequently export a card that was imported without credentials (and then used to connect), the exported card will contain credentials
davidoevans (Mon, 13 Nov 2017 13:28:56 GMT):
I've imported a few cards and the cards/credentials folder remains empty so far.
davidoevans (Mon, 13 Nov 2017 13:41:17 GMT):
I just did another test. Once I call ping (which results in the exchanging of the secret for credentials), the `.composer/client-data/
davidkel (Mon, 13 Nov 2017 13:59:41 GMT):
@davidoevans it will only get populated when you do a card export. The actual crypto material has stored elsewhere in a format specific to the node sdk which we use to communicate with fabric.
davidkel (Mon, 13 Nov 2017 13:59:41 GMT):
@davidoevans it will only get populated when you do a card export. The actual crypto material has been stored elsewhere in a format specific to the node sdk which we use to communicate with fabric.
davidoevans (Mon, 13 Nov 2017 14:08:11 GMT):
thanks for clarifying...i had not done export yet.
mahoney1 (Mon, 13 Nov 2017 14:15:14 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=58Nq7G6AWD7dwJZ29) @jaguarg hi there, I don't have an example right now, but we will be updating our samples quite soon with examples of this...
AkshayJindal (Mon, 13 Nov 2017 14:34:32 GMT):
Has joined the channel.
Emmy (Mon, 13 Nov 2017 15:23:03 GMT):
Hello, anyone know if we can have a function call in hyperledger? if yes can you please share a simple example.
fbenhamo (Mon, 13 Nov 2017 15:38:40 GMT):
Has joined the channel.
Vadim (Mon, 13 Nov 2017 15:46:26 GMT):
Has joined the channel.
Vadim (Mon, 13 Nov 2017 15:50:45 GMT):
Has left the channel.
RafaelGallino (Mon, 13 Nov 2017 16:00:48 GMT):
Has joined the channel.
RafaelGallino (Mon, 13 Nov 2017 16:03:08 GMT):
Hi! My name is Rafael. I'am from Buenos Aires, Argentina. I am looking for an example or instructions to configure composer-rest-server security with passport-local or passport-http provider via simple login-form with a simple db file with users/passwords.... anybody could help me? Thanks in advance!
bestbeforetoday (Mon, 13 Nov 2017 16:14:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=58Nq7G6AWD7dwJZ29) @jaguarg the `composer create card` provided in the `composer-cli` module ( `npm install -g composer-cli` ) may help you to generate the card content. These docs may also help:
- https://hyperledger.github.io/composer/reference/composer.card.create.html
- https://hyperledger.github.io/composer/managing/id-cards-playground.html
jaguarg (Mon, 13 Nov 2017 16:17:37 GMT):
thank you @bestbeforetoday, I managed to to instantiating the IdCard OK. Now I need the the steps to import the card using the adminConnection importCard or the CLI . Any suggestion is welcome
vitorduarte (Mon, 13 Nov 2017 16:19:10 GMT):
Hello, I am try to visualize my network using fabric explorer. I started the network using `startFabric.sh` and set the explore channelsList to `"composerchannel"` because this is the default channel created using fabric-tools. As you can see at image the fabric explorer recognize the peers, blocks and tx but didn't recognize the blockchain. How I can ensure that a network or a peer had instantiate an chaincode?
vitorduarte (Mon, 13 Nov 2017 16:19:31 GMT):
Clipboard - November 13, 2017 2:19 PM
bestbeforetoday (Mon, 13 Nov 2017 16:22:26 GMT):
@jaguarg Something like this (loading from directory, but loading from a pre-built card archive would be similar):
```javascript
const deployerCardName = 'deployer';
const userCardName = 'user';
const cardPath = path.resolve(__dirname, 'cards');
const adminConnection = new AdminConnection();
return IdCard.fromDirectory(path.join(cardPath, deployerCardName))
.then(card => {
return adminConnection.importCard(deployerCardName, card);
})
.then(() => {
return IdCard.fromDirectory(path.join(cardPath, userCardName));
})
.then(card => {
return adminConnection.importCard(userCardName, card);
})
.then(() => {
return adminConnection.connect(deployerCardName);
})
.then(() => {
return BusinessNetworkDefinition.fromDirectory('yourBusinessNetworkDirectoryHere'));
})
.then(businessNetworkDefinition => {
return adminConnection.deploy(businessNetworkDefinition);
});
```
vitorduarte (Mon, 13 Nov 2017 16:22:57 GMT):
I deployed using `composer network deploy`, should I use `composer network start`? The difference of this commands hasn't clear to me. Thanks
jaguarg (Mon, 13 Nov 2017 16:29:16 GMT):
@bestbeforetoday that's great . There is something I am clear about. How does the card related to an identity. My admin user is able to create identity and participant. Now I would like each participant to connect using his own card.
jaguarg (Mon, 13 Nov 2017 16:29:16 GMT):
@bestbeforetoday that's great . There is something I am not clear about. How does the card related to an identity. My admin user is able to create identity and participant. Now I would like each participant to connect using his own card.
jaguarg (Mon, 13 Nov 2017 16:29:16 GMT):
@bestbeforetoday that's great . There is something I am not clear about. How does the card related to an identity? My admin user is able to create identities and participants. Now I would like each participant to connect using his own card.
mahoney1 (Mon, 13 Nov 2017 16:34:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=SKPs2FrH3hb3JotHQ) @vitorduarte from a Fabric Explorer perspective - you can use the simple REST APIs as shown at https://github.com/hyperledger/blockchain-explorer -> see specifically the example given for 'Query on chaincode on target peers' - there are other REST APIs there too that can perform the queries you desire of Fabric (and Fabric Explorer). The Fabric setup that Composer provides, is a development setup, and use of Fabric Explorer with it is obviously optional. Hope this helps..
jaguarg (Mon, 13 Nov 2017 16:37:40 GMT):
@bestbeforetoday also, when calling `adminConnection.importCard(userCardName, card)` I get an exception : `UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: Path must be a string. Received IdCard `
mahoney1 (Mon, 13 Nov 2017 16:38:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BQQC2bprroPHZsrbD) @vitorduarte composer network deploy installs and starts the business network eg. on a single Org setup for example?. https://hyperledger.github.io/composer/reference/composer.network.deploy.html `composer network start` would come into its own when you are (say) you are instantiating a Composer business network across a channel (ledger) that's being used by multiple Organisations. In this case, it is used to install the Hyperledger Composer runtime on their respective Hyperledger Fabric peers on the blockchain network each is connecting to.They each would have had to do a `composer runtime install` on their peer(s) before a `composer network start` would have been performed for that channel by one of the parties.
mahoney1 (Mon, 13 Nov 2017 16:38:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BQQC2bprroPHZsrbD) @vitorduarte composer network deploy installs and starts the business network eg. on a single Org setup for example?. https://hyperledger.github.io/composer/reference/composer.network.deploy.html `composer network start` would come into its own when you are (say) instantiating a Composer business network across a channel (ledger) that's being used by multiple Organisations. In this case, it is used to install the Hyperledger Composer runtime on their respective Hyperledger Fabric peers on the blockchain network each is connecting to.They each would have had to do a `composer runtime install` on their peer(s) before a `composer network start` would have been performed for that channel by one of the parties.
mahoney1 (Mon, 13 Nov 2017 16:38:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=BQQC2bprroPHZsrbD) @vitorduarte composer network deploy installs and starts the business network eg. on a single Org setup for example?. https://hyperledger.github.io/composer/reference/composer.network.deploy.html `composer network start` would come into its own when you are (say) instantiating a Composer business network across a channel (ledger) that's being used by multiple Organisations. In this case, it is used start the business network, where previously Composer runtime was installed on their respective Hyperledger Fabric peers on the blockchain network each is connecting to. So, they each would have had to do a `composer runtime install` on their peer(s) before a `composer network start` would have been performed for that channel - by one of the parties. That starts the business network across the channel.
AkshayJindal (Mon, 13 Nov 2017 16:43:07 GMT):
Hello, I am new to composer. Is it possible to query the ledger on run-time for example, getting to know the status of asset on some another client and then create transaction for that client based on ledger output dynamically in composer?
mahoney1 (Mon, 13 Nov 2017 16:44:20 GMT):
@jaguarg for completeness and reference - posting the CLI equivalent for biz network card import here too -> https://hyperledger.github.io/composer/reference/composer.card.import.html
mahoney1 (Mon, 13 Nov 2017 16:57:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EuPZJgzvj92HmR7X5) @AkshayJindal hi there, welcome :-) yes it is possible. You can query the current world state on the ledger eg. to check the status of an asset on th eledger and also the history of transactions (including the inputs) that got the current asset status to where it is 'today'. Typically, your transaction or smart contract logic could check the current state of an asset and perform some branch logic in your transaction logic as a result . See example here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/lib/logic.js eg makeOffer checks status before doing anything and subsequently there may be many many bids.
mahoney1 (Mon, 13 Nov 2017 16:57:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EuPZJgzvj92HmR7X5) @AkshayJindal hi there, welcome :-) yes it is possible. You can query the current world state on the ledger eg. to check the status of an asset on thel edger and also the history of transactions (including the inputs) that got the current asset status to where it is 'today'. Typically, your transaction or smart contract logic could check the current state of an asset and perform some branch logic in your transaction logic as a result . See example here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/lib/logic.js eg makeOffer checks status before doing anything and subsequently there may be many many bids.
mahoney1 (Mon, 13 Nov 2017 16:57:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EuPZJgzvj92HmR7X5) @AkshayJindal hi there, welcome :-) yes it is possible. You can query the current world state on the ledger eg. to check the status of an asset on the ledger and also the history of transactions (including the inputs) that got the current asset status to where it is 'today'. Typically, your transaction or smart contract logic could check the current state of an asset and perform some branch logic in your transaction logic as a result . See example here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/lib/logic.js eg makeOffer checks status before doing anything and subsequently there may be many many bids.
AkshayJindal (Mon, 13 Nov 2017 17:11:07 GMT):
@mahoney1 Thanks a lot. I will look into the shared link :)
vitorduarte (Mon, 13 Nov 2017 17:51:13 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=n5N6Xa6fMHGn89dQX) @mahoney1 Thanks! I'l try to instantiate my Business Network for multiple peers. With v0.15.0 I think that I should use cards to refer the peers, right?
vitorduarte (Mon, 13 Nov 2017 18:06:04 GMT):
Reading the documentation I think that cards aren't referring to a peer but to a user. I'm in troubles to instantiate a blockchain for a specific peer.
tennenjl (Mon, 13 Nov 2017 18:16:59 GMT):
Hi Team is their info on how to get a node.js app (like our favorite landRegistry example) to work with business network cards. We can run businessNetwork.connect(‘cardName’), but where does it look for the card? Thanks!
mahoney1 (Mon, 13 Nov 2017 18:19:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FNtXjsxifDaxGcmG9) @vitorduarte yes you use cards. As well as the user Identity, a constituent part of the business network card - the connection Profile file - defines the peer(s) that the business network will ultimately be deployed to
mahoney1 (Mon, 13 Nov 2017 18:19:52 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=FNtXjsxifDaxGcmG9) @vitorduarte yes you use cards. As well as the user Identity, a constituent part of the business network card - the connection Profile file - defines the peer(s) that the business network will ultimately be deployed to (and as davidkel points out - the peer must be joined to a channel, also defined in the connection)
davidkel (Mon, 13 Nov 2017 18:20:21 GMT):
@vitorduarte whether a peer participates in a blockchain depends on whether it is joined to a channel or not.
davidkel (Mon, 13 Nov 2017 18:20:21 GMT):
@vitorduarte whether a peer participates in a blockchain depends on whether it is joined to a channel or not. If a peer is joined to a channel then whatever chaincode application (composer or otherwise) exists that peer will participate. Peers can be part of a single or multiple channels
mahoney1 (Mon, 13 Nov 2017 18:27:17 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=pH8AC5pwBavcXMvme) @tennenjl the docs / info are being updated for this. The cards live under $HOME/.composer normally
tennenjl (Mon, 13 Nov 2017 18:30:36 GMT):
@mahoney1. Thanks, much appreciated. I'll see if I can get it working.. I think I generated my card under the chaincode directory, so maybe I need to copy it to the $HOME/.composer dir before running my nodejs app and have it point to it.
davidkel (Mon, 13 Nov 2017 18:35:43 GMT):
@tennenjl no you don't copy the card to the .composer directory, you need to import the card using either the CLI or the API
tennenjl (Mon, 13 Nov 2017 18:36:34 GMT):
@davidkkel ah that makes sense. Let me import the card and see if that does the trick. Thanks!
tennenjl (Mon, 13 Nov 2017 18:44:48 GMT):
@davidKel, so would I have a copy of the card in my app directory and then use the IdCard.fromDirectory to create an instance of the IdCard. Once I have that instance, then I can use it to create my connection? Thanks!
RodrigoAcosta (Mon, 13 Nov 2017 19:07:51 GMT):
Has joined the channel.
RodrigoAcosta (Mon, 13 Nov 2017 19:08:52 GMT):
Hi all, I'm playing with composer and I', trying to create a token asset in a similar way as in Ethereum. Are there any examples that can help me get started? Does anyone has some experience?
RodrigoAcosta (Mon, 13 Nov 2017 19:12:51 GMT):
I have my assets in my bna file, and my trade transaction, but wanted to add a token like asset to simulate a crypto currency and be able to trade assets in exchange of the token crypto currency. I want for example to start the blockchain with a 21000000 MyOwnCoin token assets.
DennisM330 (Mon, 13 Nov 2017 19:23:20 GMT):
So I have card in v0.15 that was generated by composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile digitalpartsnetwork@0.1.1.bna --file networkadmin.card. Is it possible to import networkadmin.card into the playground? I did import it, but when I connect I got the error "Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)" I did previously issue the composer card import –file networkadmin.card command
mrosack (Mon, 13 Nov 2017 19:27:39 GMT):
is there any documentation on how to update unit tests to work with 0.15.0? it doesn't look like any of the examples have been updated, and when i run my existing tests i get `Error: Card not found: defaultProfile`
DennisM330 (Mon, 13 Nov 2017 19:59:54 GMT):
I did a composer identity issue for another identity and I could import it into the playground. Just curious what the purpose of the import of the networkadmin.card I referenced above from the tutorial if you cannot use that identity to connect
sstone1 (Mon, 13 Nov 2017 21:06:37 GMT):
@DennisM330 did you do anything with the `networkadmin.card` inbetween running `composer network start` and importing it into the playground?
sstone1 (Mon, 13 Nov 2017 21:09:12 GMT):
@mrosack not yet. we're working on it at the moment, the sample networks will be updated this week at some point.
tennenjl (Mon, 13 Nov 2017 21:27:35 GMT):
Hi Team, Dummy question, Is there a best practice or recommended way to protect the id cards via the wallet. If we want to create cards for multiple users and then have users authenticate to access those id cards. Thanks!
sstone1 (Mon, 13 Nov 2017 21:31:19 GMT):
@tennenjl when using the REST server, or using JavaScript APIs?
tennenjl (Mon, 13 Nov 2017 21:32:11 GMT):
@sstone, I'm using JS APIs, but I want to explore both options (there I go being difficult again.. )
sstone1 (Mon, 13 Nov 2017 21:32:32 GMT):
you absolute pain
sstone1 (Mon, 13 Nov 2017 21:32:32 GMT):
;)
sstone1 (Mon, 13 Nov 2017 21:33:06 GMT):
with the JS APIs, the authentication is all in your hands
sstone1 (Mon, 13 Nov 2017 21:33:17 GMT):
the cards are stored in a directory on the file system
sstone1 (Mon, 13 Nov 2017 21:33:30 GMT):
and the JS APIs will read from that directory
sstone1 (Mon, 13 Nov 2017 21:33:55 GMT):
you can build your own BusinessNetworkCardStore implementation (for persisting the cards) and use that instead by passing it into the right bit of the JS API
sstone1 (Mon, 13 Nov 2017 21:34:19 GMT):
you could do that if you wanted to have a user specific card store for example
sstone1 (Mon, 13 Nov 2017 21:34:48 GMT):
alternatively the REST APIs take care of all of that for you - each authenticated user of the REST server gets their own private wallet, and they can put their business network cards into that wallet
tennenjl (Mon, 13 Nov 2017 21:35:29 GMT):
Well that makes it easy, so I just need to protect the REST server
myin2000 (Mon, 13 Nov 2017 21:36:56 GMT):
Has joined the channel.
tennenjl (Mon, 13 Nov 2017 21:37:42 GMT):
so just follow the docs here: https://hyperledger.github.io/composer//integrating/enabling-rest-authentication yes?
sstone1 (Mon, 13 Nov 2017 21:37:49 GMT):
:+1:
sstone1 (Mon, 13 Nov 2017 21:37:56 GMT):
and then the next page "multi-user" mode
tennenjl (Mon, 13 Nov 2017 21:38:33 GMT):
Thanks!!
sstone1 (Mon, 13 Nov 2017 21:39:22 GMT):
np
DennisM330 (Mon, 13 Nov 2017 22:30:24 GMT):
@sstone1 Yes, I ran composer card import –file networkadmin.card
sstone1 (Mon, 13 Nov 2017 22:30:59 GMT):
you can only enroll once
sstone1 (Mon, 13 Nov 2017 22:31:12 GMT):
so if you use a card with the CLI
sstone1 (Mon, 13 Nov 2017 22:31:17 GMT):
and then try to use it with the playgroun
sstone1 (Mon, 13 Nov 2017 22:31:17 GMT):
and then try to use it with the playground
sstone1 (Mon, 13 Nov 2017 22:31:20 GMT):
it will fail
sstone1 (Mon, 13 Nov 2017 22:31:38 GMT):
_unless_ after using it will the CLI, you export the card again
sstone1 (Mon, 13 Nov 2017 22:31:48 GMT):
at which point the card will contain the certificates
sstone1 (Mon, 13 Nov 2017 22:31:53 GMT):
and then it's safe to use elsewhere
DennisM330 (Mon, 13 Nov 2017 22:37:10 GMT):
@sstone1 Thanks, yes that indeed works, just export and then the playground can use it
sstone1 (Mon, 13 Nov 2017 22:37:22 GMT):
great, np
DennisM330 (Mon, 13 Nov 2017 22:40:55 GMT):
@sstone1 For another two identities, I did a composer identity issue followed by a composer card import and I was able to import those cards into composer playground
sstone1 (Mon, 13 Nov 2017 22:41:12 GMT):
did you use the cards after importing them?
DennisM330 (Mon, 13 Nov 2017 22:41:54 GMT):
@stone1, no not until I imported into playground. So that is the difference here?
sstone1 (Mon, 13 Nov 2017 22:43:35 GMT):
correct
sstone1 (Mon, 13 Nov 2017 22:43:41 GMT):
import doesn't perform an enrollment
sstone1 (Mon, 13 Nov 2017 22:43:45 GMT):
any other command will do so
bh4rtp (Mon, 13 Nov 2017 23:57:00 GMT):
hi, what are the differences of network concerned background working among composer network deploy, start and runtime start?
mastreips (Tue, 14 Nov 2017 03:00:08 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hG7Z45RmQWDRTPFQg) @kvnlee THanks for bringing this up! I thought I was doing something wrong.
JosephKovuri (Tue, 14 Nov 2017 04:08:19 GMT):
hi I am new to this. I have started with create the BYFN fabric network, how do I connect the composer to this network? Can your share the connection.json file, do i need to copy the certificate file somewhere ?
ashok.pannala (Tue, 14 Nov 2017 05:39:31 GMT):
Has joined the channel.
zhenkunxu (Tue, 14 Nov 2017 07:23:18 GMT):
Has joined the channel.
sstone1 (Tue, 14 Nov 2017 07:39:03 GMT):
@JosephKovuri we don't have any good documentation on this at the moment, but i'm currently working on a tutorial for connecting composer to the BYFN network
sstone1 (Tue, 14 Nov 2017 07:39:20 GMT):
you can find an *incomplete* preview of that here: https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
sstone1 (Tue, 14 Nov 2017 07:39:40 GMT):
there's a bug stopping me from finishing it though:
https://github.com/hyperledger/composer/issues/2701
davidkel (Tue, 14 Nov 2017 07:45:25 GMT):
@sstone1 Has BYFN now started to include a fabric ca server or do you have to modify BYFN to include one ?
sstone1 (Tue, 14 Nov 2017 07:45:45 GMT):
https://gerrit.hyperledger.org/r/c/15453 ;)
zhenkunxu (Tue, 14 Nov 2017 07:54:26 GMT):
Hello, I want to know how the Access control language in composer can test the rules. Can you tell me?
sstone1 (Tue, 14 Nov 2017 07:55:27 GMT):
do you mean how are the rules enforced?
zhenkunxu (Tue, 14 Nov 2017 07:56:16 GMT):
no How does the test rule work
sstone1 (Tue, 14 Nov 2017 07:57:42 GMT):
sorry - not really sure i understand the question - can you explain the question in more detail?
jaguarg (Tue, 14 Nov 2017 08:06:16 GMT):
Hi, when calling `adminConnection.importCard(userCardName, card)` I get an exception : `UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: Path must be a string. Received IdCard .
sstone1 (Tue, 14 Nov 2017 08:09:12 GMT):
how are the variables userCardName and card created?
jaguarg (Tue, 14 Nov 2017 08:39:19 GMT):
@sstone1 userCardName is a string I generated, I am mapping that to the new Identity I created.
jaguarg (Tue, 14 Nov 2017 08:40:09 GMT):
The card is created like this : ```return ComposerCommon.IdCard.fromDirectory(dir).then(function (idCard) {
console.log(idCard);
var admConn = new AdminConnection();
admConn.connect("hlfv1", "admin", "adminpw").then(function () {
console.log("connected adminConnection");
//return admConn.importCard(memberId, idCard);
return admConn.importCard(memberId, idCard);
});```
jaguarg (Tue, 14 Nov 2017 08:41:28 GMT):
the idCard looke like this ```IdCard {
metadata:
{ version: 1,
userName: 'd178e3c366d985d5a416010a004a359d72b8ae51',
businessNetwork: 'poc-network',
enrollmentSecret: 'EsjhZnokejpQ' },
connectionProfile:
{ name: 'hlfv1',
type: 'hlfv1',
orderers: [ [Object] ],
ca: { url: 'http://localhost:7054', name: 'ca.org1.example.com' },
peers: [ [Object] ],
keyValStore: '/Users/jaguarg/.composer-credentials',
channel: 'composerchannel',
mspID: 'Org1MSP',
timeout: 300 },
credentials: {} }```
jaguarg (Tue, 14 Nov 2017 08:41:28 GMT):
the idCard looks like this ```IdCard {
metadata:
{ version: 1,
userName: 'd178e3c366d985d5a416010a004a359d72b8ae51',
businessNetwork: 'poc-network',
enrollmentSecret: 'EsjhZnokejpQ' },
connectionProfile:
{ name: 'hlfv1',
type: 'hlfv1',
orderers: [ [Object] ],
ca: { url: 'http://localhost:7054', name: 'ca.org1.example.com' },
peers: [ [Object] ],
keyValStore: '/Users/jaguarg/.composer-credentials',
channel: 'composerchannel',
mspID: 'Org1MSP',
timeout: 300 },
credentials: {} }```
sstone1 (Tue, 14 Nov 2017 09:17:23 GMT):
@jaguarg `importCard` should be called before `connect`
sstone1 (Tue, 14 Nov 2017 09:17:30 GMT):
and `connect` takes the name of an imported card
erNail (Tue, 14 Nov 2017 09:36:53 GMT):
Hi, i've just tried to deploy a bna on my own network, with `composer network deploy -a maintenance-network.bna -p maintenance -i PeerAdmin -s randomString -A admin -S` (using v.0.13.1). I get a `Error: Error trying deploy. Error: Error trying install composer runtime. Error: TCP Write failed`.
These are my docker containers:
```CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f1318f586aa8 hyperledger/fabric-peer "peer node start" 18 hours ago Up 18 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.biz.innovationcenter
a5ab1f53a392 hyperledger/fabric-orderer "orderer" 18 hours ago Up 18 hours 0.0.0.0:7050->7050/tcp orderer.biz.innovationcenter
9e6c49a2a772 hyperledger/fabric-peer "peer node start" 18 hours ago Up 18 hours 0.0.0.0:9051->9051/tcp, 0.0.0.0:9053->9053/tcp peer0.org2.biz.innovationcenter
c304ef6dcf3b hyperledger/fabric-ca "sh -c 'fabric-ca-..." 18 hours ago Up 18 hours 0.0.0.0:7054->7054/tcp ca.biz.innovationcenter
6dfda42c77d5 hyperledger/fabric-peer "peer node start" 18 hours ago Up 18 hours 0.0.0.0:10051->10051/tcp, 0.0.0.0:10053->10053/tcp peer1.org2.biz.innovationcenter
4cfcef009fde hyperledger/fabric-peer "peer node start" 18 hours ago Up 18 hours 0.0.0.0:8051->8051/tcp, 0.0.0.0:8053->8053/tcp peer1.org1.biz.innovationcenter
6cfe14789e18 hyperledger/fabric-couchdb "tini -- /docker-e..." 18 hours ago Up 18 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb```
Anyone know what the issue is ?
erNail (Tue, 14 Nov 2017 09:36:53 GMT):
Hi, i've just tried to deploy a bna on my own network, with `composer network deploy -a maintenance-network.bna -p maintenance -i PeerAdmin -s randomString -A admin -S` (using v.0.14.2). I get a `Error: Error trying deploy. Error: Error trying install composer runtime. Error: TCP Write failed`.
These are my docker containers:
```CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f1318f586aa8 hyperledger/fabric-peer "peer node start" 18 hours ago Up 18 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.biz.innovationcenter
a5ab1f53a392 hyperledger/fabric-orderer "orderer" 18 hours ago Up 18 hours 0.0.0.0:7050->7050/tcp orderer.biz.innovationcenter
9e6c49a2a772 hyperledger/fabric-peer "peer node start" 18 hours ago Up 18 hours 0.0.0.0:9051->9051/tcp, 0.0.0.0:9053->9053/tcp peer0.org2.biz.innovationcenter
c304ef6dcf3b hyperledger/fabric-ca "sh -c 'fabric-ca-..." 18 hours ago Up 18 hours 0.0.0.0:7054->7054/tcp ca.biz.innovationcenter
6dfda42c77d5 hyperledger/fabric-peer "peer node start" 18 hours ago Up 18 hours 0.0.0.0:10051->10051/tcp, 0.0.0.0:10053->10053/tcp peer1.org2.biz.innovationcenter
4cfcef009fde hyperledger/fabric-peer "peer node start" 18 hours ago Up 18 hours 0.0.0.0:8051->8051/tcp, 0.0.0.0:8053->8053/tcp peer1.org1.biz.innovationcenter
6cfe14789e18 hyperledger/fabric-couchdb "tini -- /docker-e..." 18 hours ago Up 18 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb```
Anyone know what the issue is ?
rthatcher (Tue, 14 Nov 2017 09:44:18 GMT):
@erNail - the format of the command you are using (with -A and -S at the end) was introduced in v0.14.0 and you have v0.13.1 so that looks like the problem.
The releases and the details are kept here: https://github.com/hyperledger/composer/releases
If you can move to v0.15.0 with Business Network Cards implemented that would be best.
erNail (Tue, 14 Nov 2017 09:44:49 GMT):
@rthatcher Sorry, just checked my version. It's v0.14.2
AndersonC (Tue, 14 Nov 2017 10:02:52 GMT):
Has joined the channel.
erNail (Tue, 14 Nov 2017 10:20:40 GMT):
So, the new error is `Error: Failed to deserialize creator identity, err expected MSP ID Org2MSP, received Org1MSP`
AkshayJindal (Tue, 14 Nov 2017 10:44:25 GMT):
Hello, I am new to composer and know that it runs over Fabric. In fabric, we need to define number of peers (endorsing and commiting), orderer (solo or kafka), channels and few other parameters. How composer set or decide these configuration details (related to fabric) since it is using Fabric as underlying framework? Thanks.
caroline-church (Tue, 14 Nov 2017 10:46:49 GMT):
Hi Akshay, in composer we have the concept of a card. This card contains all the information that is needed to connect to a business network. One of these is the connection profile. This is where you set things like the url of the peer and orders etc. In terms of defining the number of peers this is still done within fabric configuration
AkshayJindal (Tue, 14 Nov 2017 10:50:14 GMT):
@caroline-church Thanks :) when we develop application using composer, we need to define number of peers for each client or fabric will automatically assign? If its does automatically then how many peers by default for each client (or participant) ?
caroline-church (Tue, 14 Nov 2017 10:52:48 GMT):
composer itself doesn't do any of this. It is all in fabric, that would be a question for the fabric channel
mahoney1 (Tue, 14 Nov 2017 10:53:22 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Qxfhqy2YRjb8FieHn) @RodrigoAcosta you can check out this sample -> https://developer.ibm.com/tv/create-blockchain-energy-network-hyperledger-composer/ and it includes links to the code/tutorial at the bottom. Here the exchange is ultimately coins for fiat currency, but the patterns will be familiar to you.
mna2016 (Tue, 14 Nov 2017 10:59:22 GMT):
@caroline-church Hi there, Is there a comperehensive tutorial about writing chaincode in Javascript. I mean the code we write in logic.js of the composer network. I have already written a few of these codes. I am looking for a complete documentation to review all the features available. Thanks.
caroline-church (Tue, 14 Nov 2017 11:00:51 GMT):
Hi @mna2016 this describes transaction processor functions https://hyperledger.github.io/composer/unstable/reference/js_scripts.html
mna2016 (Tue, 14 Nov 2017 11:01:35 GMT):
@caroline-church Thanks for the quick response.
AkshayJindal (Tue, 14 Nov 2017 11:02:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=GzZAhtenaB8sw4hxy) @caroline-church Thanks :)
JosephKovuri (Tue, 14 Nov 2017 11:13:05 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=M2Qkfejv6WKXpBuHe) @sstone1 Thank You !!
sstone1 (Tue, 14 Nov 2017 11:39:14 GMT):
@here I posted an email to the mailing list with our release plans for the next 3-4 months: https://lists.hyperledger.org/pipermail/hyperledger-composer/2017-November/000044.html
sstone1 (Tue, 14 Nov 2017 11:39:26 GMT):
all comments welcome :)
sabbir (Tue, 14 Nov 2017 12:32:40 GMT):
Has joined the channel.
sabbir (Tue, 14 Nov 2017 12:33:21 GMT):
Hello everyone, I see channel name composer-dev-old, so what will be the new composer-dev channel :-(
uber.twin (Tue, 14 Nov 2017 12:46:44 GMT):
@sstone1 hi, is there a sample composer client setup based on the business network cards? I was looking at the "digitalproperty-app" sample app and it appears it is still using the "connection profile" setup style
bh4rtp (Tue, 14 Nov 2017 12:57:47 GMT):
@sstone1 i am using fabric 1.1 and composer 0.15.0. it is ok.
bh4rtp (Tue, 14 Nov 2017 12:58:46 GMT):
i always keep my local fabric updated and built once a week.
AuHuR (Tue, 14 Nov 2017 12:58:50 GMT):
Has left the channel.
harrijk (Tue, 14 Nov 2017 13:08:08 GMT):
Has left the channel.
sstone1 (Tue, 14 Nov 2017 13:35:02 GMT):
@sabbir the replacement for the dev channel is called #composer-contributors
UtkarshSingh (Tue, 14 Nov 2017 13:35:21 GMT):
Has joined the channel.
sstone1 (Tue, 14 Nov 2017 13:35:38 GMT):
@uber.twin i think we've already got people looking at that sample (@EllisHenderson maybe)
EllisHenderson (Tue, 14 Nov 2017 13:35:38 GMT):
Has joined the channel.
sstone1 (Tue, 14 Nov 2017 13:36:45 GMT):
@bh4rtp it might work, but we don't test it ;)
sstone1 (Tue, 14 Nov 2017 13:37:15 GMT):
no guarantee it will keep working either, fabric v1.1 is still under heavy development
greg2git (Tue, 14 Nov 2017 14:39:54 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=rCjD3TvD6w8TtAgGg) @davidkel without joining a channel there's no interacting with blockchain, correct? but is local installation of fabric also required for the composer explorer and hyperledger?
AkshayJindal (Tue, 14 Nov 2017 14:55:10 GMT):
Hello. I am thinking of developing automation application using composer where participant is remote IoT device and mutiple IoT devices are setting up some kind of business network. In this case, assests will be predefined which can be exchanged between IoT devices but transactions needs to be executed based on certain agorithm or functions. Basicaly this algo or function will check certain conditions and also query ledger, and then decide which transaction should be executed. Is this kind of application possible using composer?
AkshayJindal (Tue, 14 Nov 2017 14:55:10 GMT):
Hello. I am thinking of developing automation application using composer where participant is remote IoT device and mutiple IoT devices are setting up some kind of business network. In this case, assests will be predefined which can be exchanged between IoT devices but transactions needs to be executed based on certain algorithm or functions, within devices. Basicaly this algo or function will check certain conditions and also query ledger, and then decide which transaction should be executed. Is this kind of application possible using composer?
AkshayJindal (Tue, 14 Nov 2017 14:55:10 GMT):
Hello. I am thinking of developing automation application using composer where participant is remote IoT device and mutiple IoT devices are setting up some kind of business network. In this case, assests will be predefined which can be exchanged between IoT devices but transactions needs to be executed based on certain algorithm or functions, within devices. Basicaly this algo or function will check certain conditions and also query ledger, and then decide which transaction should be executed. Is this kind of application possible using composer? Also, is it possible to use Node-RED for data injection, initiating transactions based on conditions for IoT application?
mahoney1 (Tue, 14 Nov 2017 15:04:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3hxwLXFojfQ5PPxLL) @greg2git generally speaking, its whether it participates on that particular channel (ledger) or not - there can be many channels on the same blockchain network. A channel is effectively a private subnet of communication and there can be multiple chaincodes / business networks on that channel, thereafter the role of the peer is important, along with policy etc etc. See here for more details https://hyperledger-fabric.readthedocs.io/en/release/channels.html For more questions on Fabric architecture - suggest to read this https://hyperledger-fabric.readthedocs.io/en/release/arch-deep-dive.html or ask on #fabric rather than #composer for those questions. There is no 'composer explorer' - rather, there is a Hyperledger (Fabric) Explorer which is described here -> https://github.com/hyperledger/blockchain-explorer . You can connect that up to your running Fabric or the one you may build from the Fabric docs -> http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html cheers
mahoney1 (Tue, 14 Nov 2017 15:04:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=3hxwLXFojfQ5PPxLL) @greg2git generally speaking, its whether it (the peer I mean) participates on that particular channel (ledger) or not - there can be many channels on the same blockchain network. A channel is effectively a private subnet of communication and there can be multiple chaincodes / business networks on that channel, thereafter the role of the peer is important, along with policy etc etc. See here for more details https://hyperledger-fabric.readthedocs.io/en/release/channels.html For more questions on Fabric architecture - suggest to read this https://hyperledger-fabric.readthedocs.io/en/release/arch-deep-dive.html or ask on #fabric rather than #composer for those questions. There is no 'composer explorer' - rather, there is a Hyperledger (Fabric) Explorer which is described here -> https://github.com/hyperledger/blockchain-explorer . You can connect that up to your running Fabric or the one you may build from the Fabric docs -> http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html cheers
jdockter (Tue, 14 Nov 2017 15:26:48 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=knwRdRtDmQtPvCEC5) @sstone1 that link gives me a page not found error, even when logged into gerritt, do you have another link?
jdockter (Tue, 14 Nov 2017 15:28:53 GMT):
@sstone1 search found it I believe
jdockter (Tue, 14 Nov 2017 15:28:53 GMT):
@sstone1 nm, search found it I believe
jdockter (Tue, 14 Nov 2017 15:32:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=8jSfaAmnDodKBH3SH) @AkshayJindal check out Node-Red blog here, https://medium.com/@CazChurchUk/integrate-your-blockchain-with-anything-using-hyperledger-composer-and-nodered-4226676f7e54
jaguarg (Tue, 14 Nov 2017 16:32:52 GMT):
Hi, I get the exact same error : `(node:13983) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: Path must be a string. Received IdCard` [ ](https://chat.hyperledger.org/channel/composer?msg=3ZTr9kWJCSaRSKtBz) @sstone1
chainsaw (Tue, 14 Nov 2017 16:41:58 GMT):
Can you create chaincode in Composer and deploy the chaincode in Composer?
sstone1 (Tue, 14 Nov 2017 17:52:22 GMT):
@chainsaw no - you create business network definitions in Composer, and deploy those - you do this instead of writing low level Fabric chaincode
mahoney1 (Tue, 14 Nov 2017 17:52:45 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=hHk4K6f7n4mQKKopd) @chainsaw hi there, Composer does not directly generate chaincode. It uses a generic chaincode that maps models to chaincode tables and runs transaction processor functions in the javascript interpreter, called Duktape (but in plan is the Node.js chaincode support being delivered in unison with Fabric v1.1). Once you've developed a business network you deploy it https://hyperledger.github.io/composer/business-network/bnd-deploy.html (each business network is deployed in its own chaincode container) also see -> https://hyperledger.github.io/composer/managing/managingindex.html for managing it after. Finally see also https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development for comparison of approaches with Fabric and Composer development
JeetShah (Tue, 14 Nov 2017 18:14:46 GMT):
What kind of data can be exactly stored on blockchain ?
I understand that transactions are being stored on the chain, but is there any possibility to build an application where hash of a file can be stored on the blockchain ?
vitorduarte (Tue, 14 Nov 2017 18:50:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yif9y7nfHG4omoCKH) @sstone1 wow, this is exactly what i'm searching, thankss. I'l try follow this steps and help too. :D
jaguarg (Tue, 14 Nov 2017 19:55:48 GMT):
anyone used `AdminConnection.importCard` ? For me it is not working
hypertest (Tue, 14 Nov 2017 22:10:37 GMT):
I am using the new version of hyperledger composer and I removed two directories (.composer-credentials and .composer-connection-profiles), but when I run composer identity issue ... , I get this error --> fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]].
hounded (Tue, 14 Nov 2017 22:19:30 GMT):
Hi there is it possible to set up a one to many relationship ?
hounded (Tue, 14 Nov 2017 22:33:57 GMT):
if I have one asset, can I map many other assets to it
hounded (Tue, 14 Nov 2017 22:41:22 GMT):
how about many to many?
hounded (Tue, 14 Nov 2017 22:42:49 GMT):
if I wanted a many to many would I just set up 3 assets?
apple
orange
apples_oranges
with ..
apples_oranges
-->apples
-->oranges
??
AkshayJindal (Tue, 14 Nov 2017 23:29:52 GMT):
Hello all..Is there is any tutorial or sample code to understand more on "events" (subscribe and Publish) in composer? Thanks
bh4rtp (Wed, 15 Nov 2017 00:57:17 GMT):
@sstone1 it seams that your linked multiple orgnizations preview have errors in such key pair configuration as `INSERT_ORDERER_CA_CERT_FILE_PATH` which is set to be `crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt`. that cert is used for tls.
bh4rtp (Wed, 15 Nov 2017 00:57:17 GMT):
@sstone1 it seems that your linked multiple orgnizations preview have errors in such key pair configuration as `INSERT_ORDERER_CA_CERT_FILE_PATH` which is set to be `crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt`. that cert is used for tls.
bh4rtp (Wed, 15 Nov 2017 00:57:17 GMT):
@sstone1 it seems that your linked multiple orgnizations preview has errors in such key pair configuration as `INSERT_ORDERER_CA_CERT_FILE_PATH` which is set to be `crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt`. that cert is used for tls.
bh4rtp (Wed, 15 Nov 2017 00:57:17 GMT):
@sstone1 it seems that your linked multiple orgnizations preview has errors in such key pairs configurations as `INSERT_ORDERER_CA_CERT_FILE_PATH` which is set to be `crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt`. that cert is used for tls.
bh4rtp (Wed, 15 Nov 2017 00:57:17 GMT):
@sstone1 i recommend that the `cert` fields in `connection.json` to be renamed as `tls_cacert`, which is consistent with fabric.
bh4rtp (Wed, 15 Nov 2017 00:57:17 GMT):
@sstone1 i recommend that the `cert` fields in `connection.json` should be renamed as `tls_cacert`, which is consistent with fabric.
bh4rtp (Wed, 15 Nov 2017 00:57:17 GMT):
@sstone1 i recommend that the `cert` fields in `connection.json` should be renamed as `tls_cacerts`, which is consistent with fabric.
bh4rtp (Wed, 15 Nov 2017 00:57:17 GMT):
@sstone1 i recommend that the `cert` fields in `connection.json` should be renamed like `tls_cacerts`, which is consistent with fabric.
bh4rtp (Wed, 15 Nov 2017 00:57:17 GMT):
@sstone1 i recommend that the `cert` fields in `connection.json` should be renamed like `tls_cacerts`, `cacerts`, which is consistent with fabric.
bh4rtp (Wed, 15 Nov 2017 00:57:17 GMT):
@sstone1 i recommend that the `cert` fields in `connection.json` should be renamed like `tls_cacerts`, `cacerts`, or `caCert`, which is consistent with fabric.
bh4rtp (Wed, 15 Nov 2017 00:57:17 GMT):
@sstone1 i recommend that the `cert` fields in `connection.json` should be renamed like `tls_cacerts`, `cacerts`, or `caCert`, which is more definite.
mastreips (Wed, 15 Nov 2017 00:57:20 GMT):
For the REST API developers example - what are we supposed to put in the transaction ID's field? Also, is there a quantity field for each trade?
JosephKovuri (Wed, 15 Nov 2017 04:06:20 GMT):
Basic question : Isn't the rest api server a single point of failure ? Or do we setup up one rest api server for each org. #multiorg #restapisever
chainsaw (Wed, 15 Nov 2017 04:20:18 GMT):
@sstone1 Thx!
chainsaw (Wed, 15 Nov 2017 04:25:55 GMT):
@mahoney1 Your answer told me exactly what I was seeking to know. Thx!
sabbir (Wed, 15 Nov 2017 04:47:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=u9WPZTfkjB59fBrEe) @sstone1 thank you.
cminarovits (Wed, 15 Nov 2017 05:35:02 GMT):
Has joined the channel.
cminarovits (Wed, 15 Nov 2017 05:46:55 GMT):
Hi there! I installed Hyperledger according to IBM Blockchain Sandbox instructions (https://ibm-blockchain.github.io/) and have questions/challenges around Composer: I deployed the Perishable Network and issued some transactions - challenges: a) can´t find any transactions in the peer logs, composer rest server seems not to start (log entry "Error: could not find chaincode with name 'cmina-test'")
cminarovits (Wed, 15 Nov 2017 05:48:43 GMT):
wondering if/what log file entries I should find indicating/how I could check that the deploy happened successfully
cminarovits (Wed, 15 Nov 2017 05:49:38 GMT):
any hint/advise is appreciated (... hope that´s they way it works here, as I´m a newbie here)
ajksharma (Wed, 15 Nov 2017 08:04:03 GMT):
Has joined the channel.
mahoney1 (Wed, 15 Nov 2017 08:16:28 GMT):
fyi @here - the Community call tomorrow (Weds) will be at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories / use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-15th-November-2017
VinayakDeshpande (Wed, 15 Nov 2017 08:17:44 GMT):
Hi guys getting this error Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request
It will be retried for the next request.
VinayakDeshpande (Wed, 15 Nov 2017 08:17:57 GMT):
from where can i get chaincodeID
VinayakDeshpande (Wed, 15 Nov 2017 08:18:18 GMT):
the command I want to use is this:
composer-rest-server -c PeerAdmin@hlfv1 -n always -a true -m true -w true
nickyromeijn (Wed, 15 Nov 2017 08:18:21 GMT):
@JosephKovuri I believe the rest api is completely stateless is you can basically spin one up for each peer and use load balancing
nickyromeijn (Wed, 15 Nov 2017 08:18:21 GMT):
@JosephKovuri I believe the rest api is completely stateless, you can basically spin one up for each peer and use load balancing
nickyromeijn (Wed, 15 Nov 2017 08:20:22 GMT):
@VinayakDeshpande You are probably using the peerAdmin card to ping and not the composer admin one.
VinayakDeshpande (Wed, 15 Nov 2017 08:21:50 GMT):
the card I created locally is this admin@abc.card but when I use this it gives card not found error
VinayakDeshpande (Wed, 15 Nov 2017 08:25:26 GMT):
Screen Shot 2017-11-15 at 1.54.57 PM.png
mahoney1 (Wed, 15 Nov 2017 08:29:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=dJXgYss5P8Rjvp4iC) @JeetShah the same data you could, in theory, store elsewhere in a distributed database for example. But storing large objects such as files, blobs or media on the blockchain generally doesn't make sense, especially when you consider (not least) the replication factors, slowness to confirm in any case - and in some cases, the confidentiality of data. Rather, it is stored offchain - eg an exact copy of that data is kept (off chain) and a hash is stored like you wrote - hence the ability to prove that that specific data existed at the timestamp when the hash was stored on-chain - this article .can also help -> https://www.quora.com/How-can-blockchain-be-used-as-a-database-to-store-data
mahoney1 (Wed, 15 Nov 2017 08:33:01 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=wFf5N36oRWtcZf8Yh) @mastreips you leave transaction ID blank (this is a Swagger issue, was reported) - quantity is just a field for the asset Commodity - https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/models/trading.cto
mahoney1 (Wed, 15 Nov 2017 08:35:42 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=XAqBeguRx5EqZQ6Dx) @VinayakDeshpande even if you create locally, it would still need to be imported using Composer for it to deposit it under $HOME/.composer - if you followed the Dev setup, then PeerAdmin's card would have been imported for you under Step 2 of https://hyperledger.github.io/composer/installing/development-tools.html
VinayakDeshpande (Wed, 15 Nov 2017 08:37:45 GMT):
Ya that's right.. so in this case how can I create my own card?
mahoney1 (Wed, 15 Nov 2017 08:39:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=orRxwA8boQt4PaPQq) @JosephKovuri it would be, but you can use persistence to persistence.The REST server should be configured with a LoopBack such that it stores data in a highly available data source, for example a database. See https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html - it is spun up for each Composer business network, in an org and an appropriate authentication strategy (eg OAuth, OAuth2, SAML, LDAP etc) is setup for a multi-user config.
mahoney1 (Wed, 15 Nov 2017 08:39:46 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=orRxwA8boQt4PaPQq) @JosephKovuri it would be, but realistically you would use persistence.The REST server should be configured with a LoopBack such that it stores data in a highly available data source, for example a database. See https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html - it is spun up for each Composer business network, in an org and an appropriate authentication strategy (eg OAuth, OAuth2, SAML, LDAP etc) is setup for a multi-user config.
mahoney1 (Wed, 15 Nov 2017 08:40:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ar66i9RKsnasdCxHi) @VinayakDeshpande https://hyperledger.github.io/composer/reference/composer.card.create.html
VinayakDeshpande (Wed, 15 Nov 2017 08:41:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=56hRtTa64Xo99hJmR) @mahoney1 Thanks a lot.. will try this
poolarmy (Wed, 15 Nov 2017 08:53:27 GMT):
Has joined the channel.
poolarmy (Wed, 15 Nov 2017 08:53:50 GMT):
Errorrr.png
poolarmy (Wed, 15 Nov 2017 08:54:04 GMT):
pls, help me!
sabbir (Wed, 15 Nov 2017 09:05:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Y6pgrbMfQPJPB5Ask) @poolarmy first you need to run `createComposerProfile.sh` and then `createPeerAdminCard.sh`
PhuocBinh (Wed, 15 Nov 2017 09:15:33 GMT):
Has joined the channel.
JoshuaRippon (Wed, 15 Nov 2017 09:17:32 GMT):
I guys, quick question... Are participants in hyperledger composer the same as users in hyperledger fabric??
sabbir (Wed, 15 Nov 2017 09:21:12 GMT):
[ I think yes ](https://chat.hyperledger.org/channel/composer?msg=EnBCbwkW2ofjy7Z2n) @JoshuaRippon
rthatcher (Wed, 15 Nov 2017 09:40:07 GMT):
@sabbir @poolarmy - the `createComposerProfile.sh` script is for 'older' versions of Hyperledger Composer (v0.14.3 or less) the `createPeerAdminCard.sh` is for the latest version (v0.15.0)
By the look of the help text in the screenshot I would think @poolarmy is using v0.14.3 or less and so can't be using the new Business Network Cards.
Upgrading to v0.15.0 is probably the best think to do.
wininani (Wed, 15 Nov 2017 09:43:26 GMT):
@rthatcher how to upgrade to v0.15.0
wininani (Wed, 15 Nov 2017 09:44:12 GMT):
iam also getting same error as like in screenshot please help me i strucked here and iam unable to crete peer admin
rthatcher (Wed, 15 Nov 2017 09:49:20 GMT):
@wininani - I assume that you have no active Business Network, so no need to save that prior to an upgrade.
You will have to have installed Hyperledger Composer with some npm commands and so you need to uninstall those versions and install new.
Use `npm ls -g --depth=0` to find you existing Hyperledger Composer modules installed
then use commands like `npm uninstall -g composer-cli` to remove, then `npm install -g composer-cli` to reinstall the new modules
finally use the `npm ls ...` command again to check
wininani (Wed, 15 Nov 2017 09:52:08 GMT):
@rthatcher iam using node/v9.1.0
npm@5.5.1
AkshayJindal (Wed, 15 Nov 2017 09:57:05 GMT):
Hello....I would like to understand more on "events" in composer. Is there is any sample code or tuorial available?
AkshayJindal (Wed, 15 Nov 2017 09:57:05 GMT):
Hello....I would like to understand more on "events" in composer. Is there is any sample code or tuorial available? I would like to listen to the events and then submit the transactions based on those events. Is this possible?
AkshayJindal (Wed, 15 Nov 2017 09:57:05 GMT):
Hello....I would like to understand more on "events" in composer. Is there is any sample code or tutorial available? I would like to listen to the events and then submit the transactions based on those events. Is this possible?
mahoney1 (Wed, 15 Nov 2017 09:58:58 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=EnBCbwkW2ofjy7Z2n) @JoshuaRippon Yes - but think more 'identity' than just 'user'. See here -> https://stackoverflow.com/questions/43345825/how-are-participants-in-composer-related-to-members-in-fabric In Composer, a Participant can have one (usually) or more identities (each matched by a certificate issued by Fabric) associated with it (the participant). Hyperledger Fabric underpins a transactional network where all its 'participants' have known identities (as explained in that SO)
erNail (Wed, 15 Nov 2017 10:02:09 GMT):
Hey guys, i'm stuck at deploying a bna on my own created network. I'm getting a "TCP write failed" when trying to deploy. I also opened a stackoverflow-question at https://stackoverflow.com/questions/47304338/hyperledger-composer-bna-deployment-results-in-tcp-write-failed
Does anyone know what goes wrong ?
rthatcher (Wed, 15 Nov 2017 10:02:59 GMT):
@wininani node v9 is not supported
we are using v8.9
JeetShah (Wed, 15 Nov 2017 10:04:10 GMT):
@mahoney1 Thanks a lot, helped me clear a lot of doubts.
AkshayJindal (Wed, 15 Nov 2017 10:11:00 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=yLJf4cAXaQzM3Wbbp) @jdockter Thank you for this link :)
AkshayJindal (Wed, 15 Nov 2017 10:12:50 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=JqLyWSDCaPsupifX3) @jdockter Thank you for this link
mahoney1 (Wed, 15 Nov 2017 10:31:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LPW9AN9jzod8hLgtz) @AkshayJindal check out the Vehicle Lifecycle network samples - Model -> https://github.com/hyperledger/composer-sample-models/tree/master/packages/vehicle-lifecycle-model/models and Application -> https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-lifecycle - events are emitted by Composer during certain lifecycle events that follow the 'lifecycle' of the vehicle being ordered/manufactured etc. Also a more simple example is the Trade network, where events are emitted based on certain thresholds (field-based) are being exceeded -> https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network
mahoney1 (Wed, 15 Nov 2017 10:31:30 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=LPW9AN9jzod8hLgtz) @AkshayJindal check out the Vehicle Lifecycle network samples - Model -> https://github.com/hyperledger/composer-sample-models/tree/master/packages/vehicle-lifecycle-model/models and Application -> https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-lifecycle - events are emitted by Composer during certain lifecycle events that follow the 'lifecycle' of the vehicle being ordered/manufactured etc. Also a more simple example is the Trade network, where events are emitted based on certain thresholds (field-based) are being exceeded -> https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network - use the Queries tutorial to try it out -> https://hyperledger.github.io/composer/tutorials/queries.html
varunagarwal (Wed, 15 Nov 2017 10:49:51 GMT):
Hi I had a question. Say I have two participants A and B
A has UPDATE access only to A, while B has UPDATE access only to B.
A and B have READ access to each other
Now A wants to transfer some coins to B. In the transaction.js file, A's coins will be subtracted and B's coin will be incremented and updated. Now If A were to call this transaction, I am getting an error saying A cannot update B's coins (Obviously due to acl defined above). So how does this kind of transaction work?
varunagarwal (Wed, 15 Nov 2017 10:50:56 GMT):
Am I supposed to split the transaction into two parts? Could someone give me an exaple/ hint on how to do this?
AkshayJindal (Wed, 15 Nov 2017 10:54:20 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9iA3Yt7FCZ9vJ6bbM) @mahoney1 Thanks a lot :)
mahoney1 (Wed, 15 Nov 2017 11:26:25 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=uDTz3z84JmMAgzzgF) @varunagarwal if 'Account' (an asset to manage coin balance) were modeled separately, and had an owner or holder relationship back to the participant (holder), then your ACLs on participants would still be fine. Your transaction logic, invoked by a participant, can transfer the coin value on the asset as the transaction has a relationship defined to both - hope this helps.
umamani113 (Wed, 15 Nov 2017 11:32:04 GMT):
Hi, I m new to composer, We have tried to deploy bna file and running composer-rest-server, everything is working fine. I had one doubt, I need to build one small application with login, registration, I
umamani113 (Wed, 15 Nov 2017 11:33:46 GMT):
Hi, I m new to composer, We have tried to deploy bna file and running composer-rest-server, everything was working fine in local. I had one doubt, I need to build one small application with login. how can we add authentication which will be having username, password...and how we can link with that to composer..Please suggest an idea
umamani113 (Wed, 15 Nov 2017 11:33:46 GMT):
Hi, I m new to composer, We have tried to deploy bna file and run composer-rest-server, everything was working fine in local. I had one doubt, I need to build one small application with login. how can we add authentication which will be having username, password...and how we can link with that to composer..Please suggest an idea
mahoney1 (Wed, 15 Nov 2017 12:49:55 GMT):
@umamani113 hi there and welcome.. check out the authentication page on our docs site https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html including information (and link) to authentication strategies there. So for example using OAuth / OAuth2 strategy to allow users of applications to securely access data without having to reveal username and password credentials. Before making REST API calls, you must authenticate the application user using an appropriate strategy (such as OAuth2 - for example). Part of the strategy explains how to set up the endpoint for authentication requests from the user (such as OAuth2). The example shown in the docs is using the Github authentication strategy
erNail (Wed, 15 Nov 2017 13:20:14 GMT):
Hi guys, with v.0.15.0, is it still possible to generate the Skeleton Angular App ?
JMcWes (Wed, 15 Nov 2017 13:51:45 GMT):
Has joined the channel.
JMcWes (Wed, 15 Nov 2017 13:54:32 GMT):
Hi everyone, I've been playing around with Fabric and more recent with Composer. Composer look promising but I was wondering how the link was made with the existing Fabric network. Anyone has a link to a tutorial that uses an existing Fabric network with a Composer application? Futhermore is there a way to check the content of your assets/transactions in the blockchain itself?
mahoney1 (Wed, 15 Nov 2017 13:59:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=9LwNRRbu4a7Q8M2RC) @erNail yes you can. Start your REST server (for the biz network) with your business network (and using your business network card passed as a parameter,when prompted) - then run the angular generator eg `yo hyperledger-composer` specify the name of your deployed business network - and choose to connect to an existing REST server ..then start it in the usual fashion `npm start` cheers
erNail (Wed, 15 Nov 2017 13:59:35 GMT):
@mahoney1 Thanks :)
uber.twin (Wed, 15 Nov 2017 14:01:32 GMT):
@mahoney1 hi, is there an e2e sample showing "composer runtime install", "composer network start", "composer network list" and client application setup using the network business cards?
uber.twin (Wed, 15 Nov 2017 14:01:32 GMT):
@mahoney1 hi, is there an e2e sample showing "composer runtime install", "composer network start", "composer network list" and client application setup using the network business cards?I was able to start my network, using a card created as shown in
`/composer-tools/packages/fabric-dev-servers/fabric-scripts/hlfv1/createPeerAdminCard.sh` but "composer network list" won't work with the same card
uber.twin (Wed, 15 Nov 2017 14:01:32 GMT):
@mahoney1 hi, is there an e2e sample showing "composer runtime install", "composer network start", "composer network list" and client application setup using the network business cards?I was able to install the runtime and start my network, using a card created as shown in
`/composer-tools/packages/fabric-dev-servers/fabric-scripts/hlfv1/createPeerAdminCard.sh` but "composer network list" won't work with the same card
uber.twin (Wed, 15 Nov 2017 14:01:32 GMT):
@mahoney1 hi, is there an e2e sample showing "composer runtime install", "composer network start", "composer network list" and client application setup using the network business cards?I was able to install the runtime and start my network, using a card created as shown in
`/composer-tools/packages/fabric-dev-servers/fabric-scripts/hlfv1/createPeerAdminCard.sh` but "composer network list" won't work with the same card
uber.twin (Wed, 15 Nov 2017 14:01:32 GMT):
@mahoney1 hi, is there an e2e sample showing "composer runtime install", "composer network start", "composer network list" and client application setup using the network business cards?
I was able to install the runtime and start my network, using a card created as shown in
`/composer-tools/packages/fabric-dev-servers/fabric-scripts/hlfv1/createPeerAdminCard.sh`
But "composer network list" won't work with the same card:
`Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request`
jaguarg (Wed, 15 Nov 2017 14:06:41 GMT):
@mahoney1 @sstone1 please can you and team assit ? I am getting stuck here with v0.15 [ ](https://chat.hyperledger.org/channel/composer?msg=DKwzLyhguxAhvbsJq)
jaguarg (Wed, 15 Nov 2017 14:06:41 GMT):
@mahoney1 @sstone1 please can you and team assit ? I am getting stuck here with v0.15 [ ]Hi, when calling `adminConnection.importCard(userCardName, card)` I get an exception : `UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: Path must be a string. Received IdCard .
mahoney1 (Wed, 15 Nov 2017 14:07:23 GMT):
@JMcWes hi there - if you've already installed Composer, you will likely have used the Development Fabric blockchain network setup as part of that - it is bootstrapped with a PeerAdmin card to enable you to deploy composer business networks (for example - the Composer sample networks -> https://github.com/hyperledger/composer-sample-networks/ ). As far as tutorials are concerned, you can perform the trade network sample tutorial https://hyperledger.github.io/composer/tutorials/developer-guide.html which uses ..the existing Fabric network you have up and running (you indicate you have set it up already). - to check data on the blockchain, you simply run `composer-rest-server`, (shown here -> https://hyperledger.github.io/composer/integrating/getting-started-rest-api.html ) - answer a few questions about your network and how to connect and you can interact - with the Fabric (blockchain) through the browser and query any data you created, as part of the tutorial. That is the simplest way to check the contents of your assets (as shown/modeled in the trade network model here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/models/trading.cto
JMcWes (Wed, 15 Nov 2017 14:15:23 GMT):
@mahoney1 thanks. But i'm still missing some links with the peers/orderers themselfes. For example is it possible to hoop the Blockchain Explorer to the blockchain and monitor the transactions in this way?
JMcWes (Wed, 15 Nov 2017 14:16:32 GMT):
And can you use multiple blockchains to ensure segregation of certain data inbetween peers.
SergeySadon (Wed, 15 Nov 2017 14:18:15 GMT):
Hi.
How can i get transaction history of the Asset and the parameters that were poisoned in the transaction. ??
HistorianRecord does not store such information in itself, but maybe i'm doing something wrong, help, maybe someone has already encountered it.
Thanks.
mahoney1 (Wed, 15 Nov 2017 14:25:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kvz7uCjuimaroWg8Q) @JMcWes you're welcome. Blockchain explorer is a Fabric Explorer tool https://hyperledger.org/projects/explorer (and it has REST APIs too if you want to use that to get transaction JSON). - you can ask more on #blockchain-explorer - on q2. you might want to look at Cello https://hyperledger.org/projects/cello or on #cello - this is outside the scope of Composer really
mahoney1 (Wed, 15 Nov 2017 14:25:57 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=kvz7uCjuimaroWg8Q) @JMcWes you're welcome. Blockchain explorer is a Fabric Explorer tool https://hyperledger.org/projects/explorer (and it has REST APIs too if you want to use that to get the .. blockchain... transaction JSON) data. - you can ask more on #blockchain-explorer or try it out - on q2. you might want to look at Cello https://hyperledger.org/projects/cello or on #cello - this is outside the scope of Composer really
lesleyannj (Wed, 15 Nov 2017 14:27:15 GMT):
Has joined the channel.
mahoney1 (Wed, 15 Nov 2017 14:31:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xbfhXvhFkszifhu8R) @SergeySadon Historian records what was consensually agreed as the 'truth' - the whole point of the blockchain is to detect the 'poison' :-) If ledger
data had been altered or corrupted on a peer then the
transaction results would be inconsistent across endorsing
peers, the 'bad' peer will be found out, and the application
client can throw out the results from the bad peer before
submitting the transaction for ordering/commit. If client
application tries to submit a transaction with inconsistent
endorsement regardless, this will be detected and the
transaction will be invalidated by all peers at commit time.
If there is doubt about state database integrity on a specific
peer, the state database can be dropped and it will
automatically get regenerated from the chain source of truth.
If there is doubt about the chain integrity itself, then the
peer itself will need to be rebuilt and the chain will be state
transferred from another peer upon startup.
mahoney1 (Wed, 15 Nov 2017 14:31:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xbfhXvhFkszifhu8R) @SergeySadon Historian records what was consensually agreed as the 'truth' - the whole point of the blockchain is to detect the 'poison' :-) If ledger data had been altered or corrupted on a peer then the
transaction results would be inconsistent across endorsing
peers, the 'bad' peer will be found out, and the application
client can throw out the results from the bad peer before
submitting the transaction for ordering/commit. If client
application tries to submit a transaction with inconsistent
endorsement regardless, this will be detected and the
transaction will be invalidated by all peers at commit time.
If there is doubt about state database integrity on a specific
peer, the state database can be dropped and it will
automatically get regenerated from the chain source of truth.
If there is doubt about the chain integrity itself, then the
peer itself will need to be rebuilt and the chain will be state
transferred from another peer upon startup.
mahoney1 (Wed, 15 Nov 2017 14:31:33 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=xbfhXvhFkszifhu8R) @SergeySadon Historian records what was consensually agreed as the 'truth' - the whole point of the blockchain is to detect the 'poison' :-) If ledger data had been altered or corrupted on a peer then the transaction results would be inconsistent across endorsing peers, the 'bad' peer will be found out, and the application
client can throw out the results from the bad peer before submitting the transaction for ordering/commit. If client application tries to submit a transaction with inconsistent endorsement regardless, this will be detected and the transaction will be invalidated by all peers at commit time.If there is doubt about state database integrity on a specific peer, the state database can be dropped and it will automatically get regenerated from the chain source of truth. If there is doubt about the chain integrity itself, then the peer itself will need to be rebuilt and the chain will be state transferred from another peer upon startup.
SergeySadon (Wed, 15 Nov 2017 14:42:16 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=G9YNqaxLmDT66iixH) @mahoney1 Maybe you do not understand me. I want to get the changes on my Asset.
That's the question, how can you follow the history of asset changes?
Now I'm using "org.hyperledger.composer.system.HistorianRecord" to get the transactions, but I want to see the resources with which the transaction is associated inside.
mbwhite (Wed, 15 Nov 2017 14:50:05 GMT):
@jar
mbwhite (Wed, 15 Nov 2017 14:51:35 GMT):
@jaguarg The syntax of the `adminconnection.importCard(..)` needs to take a string which is the cardname to refer to this card by (string), and an instance of IdCard. (object)...
For my own reference - you're doing this direct to the API rather than use the CLI?
rthatcher (Wed, 15 Nov 2017 15:06:53 GMT):
@uber.twin - the PeerAdmin does not have the access (or the connection information) to list a Business Network.
When running the `composer network start` command you should have specified a `--file` parameter and a filename for the Card for the *Network Admin* , and then used a `composer card import` command. The you should be able to list the network using the Card for the Network Admin.
This link is for the Developer Tutorial which goes through the commands in sequence, and is a good starting point for v0.15 card features.
https://hyperledger.github.io/composer/tutorials/developer-guide.html
jaguarg (Wed, 15 Nov 2017 15:10:47 GMT):
@mbwhite I believe this is what I have done : ` return admConn.importCard(memberId, idCard).then(function () ... `
jaguarg (Wed, 15 Nov 2017 15:11:27 GMT):
This is what the idCard looks like : ```(node:13983) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: Path must be a string. Received IdCard {
metadata:
{ version: 1,
userName: 'd4541af2bdc67e8108b41803104a58595cbdb716',
businessNetwork: 'poc-network',
enrollmentSecret: 'ijJbBilmbuvO' },
connectionProfile:
{ name: 'hlfv1',
type: 'hlfv1',
orderers: [ [Object] ],
ca: { url: 'http://localhost:7054', name: 'ca.org1.example.com' },
peers: [ [Object] ],
keyValStore: '/Users/jaguarg/.composer-credentials',
channel: 'composerchannel',
mspID: 'Org1MSP',
timeout: 300 },
credentials: {} }
```
mbwhite (Wed, 15 Nov 2017 15:16:52 GMT):
@jaguarg I think you might have hit an issue - that has been fixed this week.. though can't recall the number.
mbwhite (Wed, 15 Nov 2017 15:17:06 GMT):
Have you tried using the CLI for a similar siutation?
mahoney1 (Wed, 15 Nov 2017 15:28:25 GMT):
@SergeySadon - sure, not answered part 2 of your question - this issue https://github.com/hyperledger/composer/issues/991 has been raised (eg history of changes) -> https://stackoverflow.com/questions/46372302/how-do-i-find-the-history-of-transactions-for-an-asset-in-a-blockchain-implement - for now the best thing to track changes to an asset would be write a query using the Transaction class eg ```query myTransactions{
description: "return all transactions made (not system transactions)"
statement: SELECT org.acme.sample.NAME_OF_TRANSACTION_CLASS
}``` for example `Trade` and scope it with (for example) asset instance (or set of) and perhaps using a date range for transactions etc.
mahoney1 (Wed, 15 Nov 2017 15:28:25 GMT):
@SergeySadon - sure, not answered part 2 of your question - this issue https://github.com/hyperledger/composer/issues/991 has been raised (eg history of changes) -> https://stackoverflow.com/questions/46372302/how-do-i-find-the-history-of-transactions-for-an-asset-in-a-blockchain-implement - for now the best thing to track changes to an asset would be write a query (as part of your biz network) using the Transaction class eg ```query myTransactions{
description: "return all transactions made"
statement: SELECT org.acme.sample.NAME_OF_TRANSACTION_CLASS
}``` for example `Trade` and scope it with (for example) asset instance (or set of) and perhaps using a date range for transactions etc. In time Historian will be the source for that (eg where queries are concerned. You can use Playground's historian to check individual transactions and the history of transactions performed in the business network
mahoney1 (Wed, 15 Nov 2017 15:28:25 GMT):
@SergeySadon - sure, not answered part 2 of your question - this issue https://github.com/hyperledger/composer/issues/991 has been raised (eg history of deltas or changes) -> https://stackoverflow.com/questions/46372302/how-do-i-find-the-history-of-transactions-for-an-asset-in-a-blockchain-implement - for now the best thing to track changes to an asset would be write a query (as part of your biz network) using the Transaction class eg ```query myTransactions{
description: "return all transactions made"
statement: SELECT org.acme.sample.NAME_OF_TRANSACTION_CLASS
}``` for example `Trade` and scope it with (for example) asset instance (or set of) and perhaps using a date range for transactions etc. In time Historian will be the source for that (eg where queries are concerned. You can use Playground's historian to check individual transactions and the history of transactions performed in the business network
nehalshah50 (Wed, 15 Nov 2017 15:55:10 GMT):
Hi I Just refreshed my composer environment to 0.15 and composer participant add command doesn't work as described in the documentations at https://hyperledger.github.io/composer/managing/participant-add.html
composer participant add -p hlfv1 -n 'digitalproperty-network' -i admin -s adminpw -d '{"$class":"net.biz.digitalPropertyNetwork.Person","personId":"mae@biznet.org","firstName":"Mae","lastName":"Smith"}'
uber.twin (Wed, 15 Nov 2017 16:01:40 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=fNDmb6dNF6A92GqEf) @rthatcher thank you, that did it. the "PeerAdmin" used to be able to list the network prior to v 0.15, isn't it?
kmohanar (Wed, 15 Nov 2017 16:04:04 GMT):
I have followed the steps mentioned in this link http://hyperledger-fabric.readthedocs.io/en/release/build_network.html and generated crypto-config folder(which is for 4 peers and 2 orgs(2 peer each org)).
To interact with this fabric setup i need to create connection json file.
So, Should i create two connection profile, for each org one file or only one connection.json is enough for both organization.
Can anyone please explain how to configure connection.json for multi orgs and/or multi channels.
mahoney1 (Wed, 15 Nov 2017 16:11:08 GMT):
@kmohanar we're currently working on a tutorial for connecting composer to the BYFN network
you can find an *incomplete* preview of that here: https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
there's a bug stopping it being completed at the moment -> https://github.com/hyperledger/composer/issues/2701
kmohanar (Wed, 15 Nov 2017 16:11:35 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=X6nuJEg3bjqDaY8iE) @nehalshah50 You can remove the flags -p, -n, -i,-s instead these flags you can give --card admin@tutorial-network like this and try
nehalshah50 (Wed, 15 Nov 2017 16:14:35 GMT):
@kmohanar I tried all that but it doesn't work. First I deployed my .bna using playground and using PeerAdmin then I added admin identity using playground then I downloaded the admin identity as a card file. I then tried using the downloaded card to run various composer command and have not been successful. Documentation is really not helping at all
kmohanar (Wed, 15 Nov 2017 16:15:39 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=MkwyjPqNP6nCAda4u) @mahoney1 : Thanks for the prompt reply. i will follow up the link shared with me.
rthatcher (Wed, 15 Nov 2017 16:29:18 GMT):
@uber.twin - yes PeerAdmin used to work differently and allow access to the Network in v0.13.2 and earlier
nehalshah50 (Wed, 15 Nov 2017 16:47:57 GMT):
Hi...I followed new developer's instructions to create business network , deploy business network etc... After I deploy the business network it produces networkadmin.card file. I tried using that file to import it into composer playground and tried connecting to business network i deployed but I keep gettting this error
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
nehalshah50 (Wed, 15 Nov 2017 16:51:44 GMT):
Also this command always fails as admin network card is always created when createPeerAdminCard.sh command is run
*composer card import --file networkadmin.card*
nehalshah50 (Wed, 15 Nov 2017 17:06:59 GMT):
I tried using different user id like "admin1" for network start command and tried importing it into playground and I am getting following error
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
AkshayJindal (Wed, 15 Nov 2017 17:31:23 GMT):
Hello... I am installing development environment. I am not clear on "PeerAdminCard". Could someone please explain me this and also what happen when we execute ./createPeerAdminCard.sh script?
mahoney1 (Wed, 15 Nov 2017 18:03:34 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=o9he6zdYM9uHZDQ5o) @nehalshah50 probably because you had cached previous admin card data there. Difficult to know 'which admin' is there currently and in what sequence you used it previously. Suggest to 1) clean out your $HOME/.composer directory (to remove old or legacy card / data left in the cache) and then 2) re-import your cards from scratch. Once you have created the Network admin card from the composer network deploy, import it into your card store - ping it (as in the guide) then export it from the card store to use elsewhere.
nehalshah50 (Wed, 15 Nov 2017 18:09:02 GMT):
@mahoney1 Yes...i am learning all this hard way...I figured that now with 0.15 its maintaining .composer directory instead of using .composer-credentials directory....it would be nice some of this manual steps of deleting content of .composer directory and giving some of this tips in the documenations
nehalshah50 (Wed, 15 Nov 2017 18:09:02 GMT):
@mahoney1 Yes...i am learning all this hard way...I figured that now with 0.15 its maintaining .composer directory instead of using .composer-credentials directory....it would be nice some of this manual steps of deleting content of .composer directory part of the startFabric.sh script and giving some of this tips in the documenations
mahoney1 (Wed, 15 Nov 2017 18:11:07 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=ByANxmw9XBSC3qDfo) @AkshayJindal It creates a 'bootstrrap' business network card (and the identity is automatically imported for you when you use the sample scripts) for starting the network. for a peer administrator so that you can deploy a sample network to the Development run-time Fabric (it has both PeerAdmin and ChannelAdmin fabric roles)
mahoney1 (Wed, 15 Nov 2017 18:11:47 GMT):
[ ](https://chat.hyperledger.org/channel/composer?msg=Goqn2FpFRYuHaFBC4) @nehalshah50 sure, good feedback, will get something done for this.
nehalshah50 (Wed, 15 Nov 2017 18:38:50 GMT):
@mahoney1 ...Now I am successfully able to create identity to existing participant using composer-cli but once the identity is imported under .composer folder ...I can't import into composer playground as composer playground is looking for credentials in .composer-credentials folder ....as a workaround i copy the credentials sitting under .composer/client-data folder to .composer-credentials folder then i can import and use admin card successfully
nehalshah50 (Wed, 15 Nov 2017 18:38:50 GMT):
@mahoney1 ...Now I am successfully able to create identity to existing participant using composer-cli but once the identity is imported under .composer folder ...I can't import into composer playground as composer playground is looking for credentials in .composer-credentials folder ....as a workaround i copy the credentials sitting under .composer/client-data folder to .composer-credentials folder then i can import and use admin card successfully
But then the new identity i create using composer-cli for other participant ...it doesn't generate cert files or anything like it..so not sure how do i import them. i tried importing the generated .card file but that doesn't allow me to connect when i import into playground
jaguarg (Wed, 15 Nov 2017 19:51:12 GMT):
@mbwhite how can I pull potential fix ? any guid to do the same with the CLI i.e. import a card and ?
jaguarg (Wed, 15 Nov 2017 19:51:12 GMT):
@mbwhite how can I pull potential fix ? any guid to do the same with the CLI i.e. create a card from a directory and the import a card ?
jaguarg (Wed, 15 Nov 2017 19:51:12 GMT):
@mbwhite how can I pull potential fix ? I have checked and it working fine with the CLI
jaguarg (Wed, 15 Nov 2017 19:51:12 GMT):
@mbwhite how can I pull potential fix for the node module ? I have checked and it is working fine with the CLI
nehalshah50 (Wed, 15 Nov 2017 20:49:52 GMT):
@mahoney1 ...i am now stuck at running composer-rest-server using the identity i created using composer-cli. I keep getting following error
*composer-rest-server -c fisherman_user@fish-trade-network
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)
at _checkRuntimeVersions.then.catch (/Users/nxshah5/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:679:34)
at
nehalshah50 (Wed, 15 Nov 2017 20:49:52 GMT): nehalshah50 (Wed, 15 Nov 2017 20:49:52 GMT): nehalshah50 (Wed, 15 Nov 2017 21:33:54 GMT): greg2git (Wed, 15 Nov 2017 21:34:05 GMT): ChrisMeg (Wed, 15 Nov 2017 21:39:27 GMT): davidkel (Wed, 15 Nov 2017 22:20:53 GMT): davidkel (Wed, 15 Nov 2017 22:25:33 GMT): davidkel (Wed, 15 Nov 2017 22:25:33 GMT): davidkel (Wed, 15 Nov 2017 22:25:33 GMT): nehalshah50 (Wed, 15 Nov 2017 23:37:43 GMT): nehalshah50 (Thu, 16 Nov 2017 00:37:25 GMT): labcoinpoc (Thu, 16 Nov 2017 02:25:54 GMT): seungchan (Thu, 16 Nov 2017 05:01:59 GMT): varunagarwal (Thu, 16 Nov 2017 05:37:09 GMT): satyajitsasmal (Thu, 16 Nov 2017 06:50:41 GMT): satyajitsasmal (Thu, 16 Nov 2017 06:50:53 GMT): varunagarwal (Thu, 16 Nov 2017 07:01:13 GMT): erNail (Thu, 16 Nov 2017 07:13:25 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:13:45 GMT): varunagarwal (Thu, 16 Nov 2017 07:15:33 GMT): varunagarwal (Thu, 16 Nov 2017 07:15:48 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:16:15 GMT): varunagarwal (Thu, 16 Nov 2017 07:16:31 GMT): varunagarwal (Thu, 16 Nov 2017 07:16:36 GMT): varunagarwal (Thu, 16 Nov 2017 07:16:54 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:17:01 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:17:23 GMT): varunagarwal (Thu, 16 Nov 2017 07:17:26 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:17:40 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:18:19 GMT): varunagarwal (Thu, 16 Nov 2017 07:18:20 GMT): varunagarwal (Thu, 16 Nov 2017 07:18:38 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:19:04 GMT): varunagarwal (Thu, 16 Nov 2017 07:19:06 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:19:23 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:19:36 GMT): varunagarwal (Thu, 16 Nov 2017 07:19:37 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:19:57 GMT): varunagarwal (Thu, 16 Nov 2017 07:20:12 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:20:12 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:20:18 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:20:22 GMT): varunagarwal (Thu, 16 Nov 2017 07:33:04 GMT): varunagarwal (Thu, 16 Nov 2017 07:36:14 GMT): satyajitsasmal (Thu, 16 Nov 2017 07:40:40 GMT): varunagarwal (Thu, 16 Nov 2017 07:41:49 GMT): erNail (Thu, 16 Nov 2017 07:45:57 GMT): argman (Thu, 16 Nov 2017 07:49:15 GMT): varunagarwal (Thu, 16 Nov 2017 07:52:20 GMT): varunagarwal (Thu, 16 Nov 2017 07:52:55 GMT): argman (Thu, 16 Nov 2017 07:56:30 GMT): davidkel (Thu, 16 Nov 2017 07:57:06 GMT): zhenkunxu (Thu, 16 Nov 2017 07:59:46 GMT): erNail (Thu, 16 Nov 2017 08:01:19 GMT): davidkel (Thu, 16 Nov 2017 08:02:54 GMT): davidkel (Thu, 16 Nov 2017 08:02:54 GMT): erNail (Thu, 16 Nov 2017 08:03:21 GMT): erNail (Thu, 16 Nov 2017 08:03:58 GMT): davidkel (Thu, 16 Nov 2017 08:04:30 GMT): varunagarwal (Thu, 16 Nov 2017 08:05:01 GMT): erNail (Thu, 16 Nov 2017 08:05:21 GMT): erNail (Thu, 16 Nov 2017 08:05:30 GMT): sravs (Thu, 16 Nov 2017 08:07:25 GMT): davidkel (Thu, 16 Nov 2017 08:14:49 GMT): davidkel (Thu, 16 Nov 2017 08:17:09 GMT): erNail (Thu, 16 Nov 2017 08:20:48 GMT): mna2016 (Thu, 16 Nov 2017 08:30:21 GMT): nasht00 (Thu, 16 Nov 2017 08:32:27 GMT): argman (Thu, 16 Nov 2017 08:39:44 GMT): enbochen (Thu, 16 Nov 2017 09:14:02 GMT): erNail (Thu, 16 Nov 2017 09:17:23 GMT): erNail (Thu, 16 Nov 2017 09:17:23 GMT): enbochen (Thu, 16 Nov 2017 09:19:56 GMT): enbochen (Thu, 16 Nov 2017 09:19:56 GMT): rthatcher (Thu, 16 Nov 2017 09:40:35 GMT): JMcWes (Thu, 16 Nov 2017 09:43:03 GMT): JMcWes (Thu, 16 Nov 2017 09:46:29 GMT): JMcWes (Thu, 16 Nov 2017 09:49:38 GMT): Akshatha (Thu, 16 Nov 2017 09:50:09 GMT): Akshatha (Thu, 16 Nov 2017 09:50:54 GMT): VinodPai (Thu, 16 Nov 2017 09:53:55 GMT): VinodPai (Thu, 16 Nov 2017 09:54:26 GMT): VinodPai (Thu, 16 Nov 2017 09:54:26 GMT): VinodPai (Thu, 16 Nov 2017 09:54:26 GMT): VinodPai (Thu, 16 Nov 2017 09:54:26 GMT): mastreips (Thu, 16 Nov 2017 09:58:08 GMT): Akshatha (Thu, 16 Nov 2017 10:00:33 GMT): VinodPai (Thu, 16 Nov 2017 10:00:38 GMT): mastreips (Thu, 16 Nov 2017 10:06:39 GMT): VinodPai (Thu, 16 Nov 2017 10:11:07 GMT): rthatcher (Thu, 16 Nov 2017 10:17:59 GMT): mastreips (Thu, 16 Nov 2017 10:21:11 GMT): skergetd (Thu, 16 Nov 2017 10:25:31 GMT): balmeida (Thu, 16 Nov 2017 10:28:12 GMT): davidkel (Thu, 16 Nov 2017 10:29:37 GMT): davidkel (Thu, 16 Nov 2017 10:29:37 GMT): davidkel (Thu, 16 Nov 2017 10:29:51 GMT): erNail (Thu, 16 Nov 2017 10:30:51 GMT): davidkel (Thu, 16 Nov 2017 10:31:58 GMT): skergetd (Thu, 16 Nov 2017 10:35:49 GMT): erNail (Thu, 16 Nov 2017 10:58:47 GMT): erNail (Thu, 16 Nov 2017 10:59:21 GMT): rthatcher (Thu, 16 Nov 2017 11:08:37 GMT): mastreips (Thu, 16 Nov 2017 11:09:59 GMT): JoshuaBarker (Thu, 16 Nov 2017 11:25:33 GMT): enbochen (Thu, 16 Nov 2017 11:31:26 GMT): erNail (Thu, 16 Nov 2017 11:37:39 GMT): rthatcher (Thu, 16 Nov 2017 11:48:10 GMT): enbochen (Thu, 16 Nov 2017 12:07:20 GMT): enbochen (Thu, 16 Nov 2017 12:07:20 GMT): enbochen (Thu, 16 Nov 2017 12:07:20 GMT): enbochen (Thu, 16 Nov 2017 12:07:20 GMT): enbochen (Thu, 16 Nov 2017 12:07:20 GMT): enbochen (Thu, 16 Nov 2017 12:07:20 GMT): rthatcher (Thu, 16 Nov 2017 12:14:46 GMT): enbochen (Thu, 16 Nov 2017 12:17:27 GMT): enbochen (Thu, 16 Nov 2017 12:17:27 GMT): sravs (Thu, 16 Nov 2017 12:31:20 GMT): sravs (Thu, 16 Nov 2017 12:31:38 GMT): sravs (Thu, 16 Nov 2017 12:38:51 GMT): enbochen (Thu, 16 Nov 2017 13:02:07 GMT): enbochen (Thu, 16 Nov 2017 13:02:07 GMT): enbochen (Thu, 16 Nov 2017 13:02:07 GMT): enbochen (Thu, 16 Nov 2017 13:06:05 GMT): AkshayJindal (Thu, 16 Nov 2017 13:39:03 GMT): skergetd (Thu, 16 Nov 2017 14:03:56 GMT): wininani (Thu, 16 Nov 2017 14:05:07 GMT): rthatcher (Thu, 16 Nov 2017 14:14:33 GMT): flash139 (Thu, 16 Nov 2017 14:16:08 GMT): rthatcher (Thu, 16 Nov 2017 14:36:09 GMT): nickyromeijn (Thu, 16 Nov 2017 14:37:34 GMT): skergetd (Thu, 16 Nov 2017 14:51:12 GMT): mahoney1 (Thu, 16 Nov 2017 15:02:00 GMT): mahoney1 (Thu, 16 Nov 2017 15:02:00 GMT): yogesh.fulsunge (Thu, 16 Nov 2017 15:09:42 GMT): yogesh.fulsunge (Thu, 16 Nov 2017 15:10:04 GMT): yogesh.fulsunge (Thu, 16 Nov 2017 15:11:52 GMT): yogesh.fulsunge (Thu, 16 Nov 2017 15:12:03 GMT): yogesh.fulsunge (Thu, 16 Nov 2017 15:12:36 GMT): yogesh.fulsunge (Thu, 16 Nov 2017 15:12:52 GMT): mahoney1 (Thu, 16 Nov 2017 15:30:24 GMT): mahoney1 (Thu, 16 Nov 2017 15:30:24 GMT): yogesh.fulsunge (Thu, 16 Nov 2017 15:31:32 GMT): mahoney1 (Thu, 16 Nov 2017 15:31:48 GMT): yogesh.fulsunge (Thu, 16 Nov 2017 15:32:12 GMT): yogesh.fulsunge (Thu, 16 Nov 2017 15:32:25 GMT): yogesh.fulsunge (Thu, 16 Nov 2017 15:33:11 GMT): yogesh.fulsunge (Thu, 16 Nov 2017 15:35:23 GMT): mahoney1 (Thu, 16 Nov 2017 15:37:43 GMT): mahoney1 (Thu, 16 Nov 2017 15:47:55 GMT): mahoney1 (Thu, 16 Nov 2017 15:47:55 GMT): mahoney1 (Thu, 16 Nov 2017 15:47:55 GMT): AkshayJindal (Thu, 16 Nov 2017 16:22:03 GMT): mahoney1 (Thu, 16 Nov 2017 16:29:31 GMT): mahoney1 (Thu, 16 Nov 2017 16:29:31 GMT): nickyromeijn (Thu, 16 Nov 2017 16:31:20 GMT): AkshayJindal (Thu, 16 Nov 2017 16:32:08 GMT): tennenjl (Thu, 16 Nov 2017 16:35:40 GMT): mahoney1 (Thu, 16 Nov 2017 16:49:05 GMT): mahoney1 (Thu, 16 Nov 2017 16:51:05 GMT): mahoney1 (Thu, 16 Nov 2017 16:51:05 GMT): AkshayJindal (Thu, 16 Nov 2017 16:53:23 GMT): AkshayJindal (Thu, 16 Nov 2017 16:53:23 GMT): nickyromeijn (Thu, 16 Nov 2017 16:59:09 GMT): nickyromeijn (Thu, 16 Nov 2017 16:59:51 GMT): nickyromeijn (Thu, 16 Nov 2017 17:00:36 GMT): JoshuaRippon (Thu, 16 Nov 2017 17:07:39 GMT): nickyromeijn (Thu, 16 Nov 2017 17:08:49 GMT): JoshuaRippon (Thu, 16 Nov 2017 17:09:32 GMT): JoshuaRippon (Thu, 16 Nov 2017 17:10:03 GMT): JoshuaRippon (Thu, 16 Nov 2017 17:10:22 GMT): mahoney1 (Thu, 16 Nov 2017 17:27:17 GMT): mahoney1 (Thu, 16 Nov 2017 17:27:17 GMT): mahoney1 (Thu, 16 Nov 2017 17:27:52 GMT): nickyromeijn (Thu, 16 Nov 2017 17:28:13 GMT): nickyromeijn (Thu, 16 Nov 2017 17:44:56 GMT): nickyromeijn (Thu, 16 Nov 2017 19:06:50 GMT): vitorduarte (Thu, 16 Nov 2017 19:18:12 GMT): vitorduarte (Thu, 16 Nov 2017 19:19:10 GMT): JosephKovuri (Thu, 16 Nov 2017 20:12:09 GMT): JosephKovuri (Thu, 16 Nov 2017 20:12:09 GMT): JosephKovuri (Thu, 16 Nov 2017 20:12:26 GMT): msmarcal (Thu, 16 Nov 2017 20:36:29 GMT): andreasp1994 (Thu, 16 Nov 2017 21:07:22 GMT): msmarcal (Thu, 16 Nov 2017 21:10:46 GMT): msmarcal (Thu, 16 Nov 2017 21:13:25 GMT): andreasp1994 (Thu, 16 Nov 2017 21:17:27 GMT): andreasp1994 (Thu, 16 Nov 2017 21:17:31 GMT): msmarcal (Thu, 16 Nov 2017 21:18:52 GMT): msmarcal (Thu, 16 Nov 2017 21:18:59 GMT): andreasp1994 (Thu, 16 Nov 2017 21:19:20 GMT): msmarcal (Thu, 16 Nov 2017 21:19:33 GMT): andreasp1994 (Thu, 16 Nov 2017 21:20:45 GMT): msmarcal (Thu, 16 Nov 2017 21:21:21 GMT): msmarcal (Thu, 16 Nov 2017 21:23:05 GMT): andreasp1994 (Thu, 16 Nov 2017 21:23:57 GMT): msmarcal (Thu, 16 Nov 2017 21:29:26 GMT): andreasp1994 (Thu, 16 Nov 2017 22:54:47 GMT): andreasp1994 (Thu, 16 Nov 2017 22:54:55 GMT): andreasp1994 (Thu, 16 Nov 2017 23:24:00 GMT): akshatbh (Fri, 17 Nov 2017 00:32:18 GMT): akshatbh (Fri, 17 Nov 2017 00:36:32 GMT): akshatbh (Fri, 17 Nov 2017 00:36:44 GMT): akshatbh (Fri, 17 Nov 2017 01:20:00 GMT): gjoshevski (Fri, 17 Nov 2017 01:58:08 GMT): gjoshevski (Fri, 17 Nov 2017 02:01:39 GMT): gjoshevski (Fri, 17 Nov 2017 02:02:26 GMT): tennenjl (Fri, 17 Nov 2017 02:17:52 GMT): tennenjl (Fri, 17 Nov 2017 02:17:52 GMT): mmyburgh (Fri, 17 Nov 2017 02:47:18 GMT): mmyburgh (Fri, 17 Nov 2017 02:47:18 GMT): mmyburgh (Fri, 17 Nov 2017 02:47:18 GMT): mmyburgh (Fri, 17 Nov 2017 02:47:18 GMT): aneb (Fri, 17 Nov 2017 02:55:12 GMT): ashutoshmca (Fri, 17 Nov 2017 03:57:18 GMT): ashutoshmca (Fri, 17 Nov 2017 03:58:40 GMT): ashutoshmca (Fri, 17 Nov 2017 03:59:36 GMT): JosephKovuri (Fri, 17 Nov 2017 04:46:18 GMT): JosephKovuri (Fri, 17 Nov 2017 04:46:23 GMT): Akshatha (Fri, 17 Nov 2017 04:55:58 GMT): andreasp1994 (Fri, 17 Nov 2017 04:56:35 GMT): andreasp1994 (Fri, 17 Nov 2017 04:56:57 GMT): andreasp1994 (Fri, 17 Nov 2017 04:57:49 GMT): andreasp1994 (Fri, 17 Nov 2017 04:58:06 GMT): Akshatha (Fri, 17 Nov 2017 04:58:08 GMT): andreasp1994 (Fri, 17 Nov 2017 04:58:22 GMT): Akshatha (Fri, 17 Nov 2017 04:58:50 GMT): Akshatha (Fri, 17 Nov 2017 05:00:11 GMT): andreasp1994 (Fri, 17 Nov 2017 05:00:37 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 05:27:17 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 05:27:54 GMT): flash139 (Fri, 17 Nov 2017 06:26:21 GMT): mna2016 (Fri, 17 Nov 2017 06:41:24 GMT): flash139 (Fri, 17 Nov 2017 06:45:27 GMT): mna2016 (Fri, 17 Nov 2017 06:46:28 GMT): zhenkunxu (Fri, 17 Nov 2017 08:05:28 GMT): davidkel (Fri, 17 Nov 2017 08:18:59 GMT): davidkel (Fri, 17 Nov 2017 08:22:58 GMT): davidkel (Fri, 17 Nov 2017 08:25:18 GMT): nickyromeijn (Fri, 17 Nov 2017 08:31:10 GMT): davidkel (Fri, 17 Nov 2017 08:55:01 GMT): nickyromeijn (Fri, 17 Nov 2017 08:55:30 GMT): mshen7310 (Fri, 17 Nov 2017 09:12:03 GMT): kiknaio (Fri, 17 Nov 2017 09:14:52 GMT): kiknaio (Fri, 17 Nov 2017 09:15:38 GMT): kiknaio (Fri, 17 Nov 2017 09:15:52 GMT): JoshuaRippon (Fri, 17 Nov 2017 09:15:54 GMT): rthatcher (Fri, 17 Nov 2017 09:26:18 GMT): rthatcher (Fri, 17 Nov 2017 09:28:47 GMT): rthatcher (Fri, 17 Nov 2017 09:43:15 GMT): kiknaio (Fri, 17 Nov 2017 09:44:41 GMT): kiknaio (Fri, 17 Nov 2017 09:44:54 GMT): kiknaio (Fri, 17 Nov 2017 09:44:59 GMT): kiknaio (Fri, 17 Nov 2017 09:45:02 GMT): rthatcher (Fri, 17 Nov 2017 09:53:45 GMT): JoshuaRippon (Fri, 17 Nov 2017 09:56:06 GMT): rthatcher (Fri, 17 Nov 2017 10:11:33 GMT): JoshuaRippon (Fri, 17 Nov 2017 10:13:04 GMT): Jocelyn97 (Fri, 17 Nov 2017 10:50:56 GMT): sstone1 (Fri, 17 Nov 2017 11:08:54 GMT): zhenkunxu (Fri, 17 Nov 2017 11:09:29 GMT): nickyromeijn (Fri, 17 Nov 2017 11:10:35 GMT): JoshuaRippon (Fri, 17 Nov 2017 11:12:42 GMT): nickyromeijn (Fri, 17 Nov 2017 11:12:56 GMT): JoshuaBarker (Fri, 17 Nov 2017 11:15:34 GMT): rthatcher (Fri, 17 Nov 2017 11:20:51 GMT): JoshuaBarker (Fri, 17 Nov 2017 11:23:33 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 11:25:29 GMT): rthatcher (Fri, 17 Nov 2017 11:30:52 GMT): varunagarwal (Fri, 17 Nov 2017 11:33:08 GMT): rthatcher (Fri, 17 Nov 2017 11:33:16 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 11:37:44 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 11:38:22 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 11:38:47 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 11:39:14 GMT): rthatcher (Fri, 17 Nov 2017 11:47:15 GMT): AkshayJindal (Fri, 17 Nov 2017 11:47:39 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 11:47:53 GMT): wininani (Fri, 17 Nov 2017 12:15:40 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 12:16:02 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 12:16:17 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 12:19:46 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 12:19:54 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 12:19:54 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 12:23:28 GMT): mahoney1 (Fri, 17 Nov 2017 12:24:35 GMT): mahoney1 (Fri, 17 Nov 2017 12:24:35 GMT): mahoney1 (Fri, 17 Nov 2017 12:24:37 GMT): mmyburgh (Fri, 17 Nov 2017 12:26:19 GMT): wininani (Fri, 17 Nov 2017 12:28:09 GMT): mahoney1 (Fri, 17 Nov 2017 12:28:29 GMT): mmyburgh (Fri, 17 Nov 2017 12:29:10 GMT): mahoney1 (Fri, 17 Nov 2017 12:30:33 GMT): mmyburgh (Fri, 17 Nov 2017 12:30:46 GMT): mmyburgh (Fri, 17 Nov 2017 12:31:23 GMT): mahoney1 (Fri, 17 Nov 2017 12:35:27 GMT): mmyburgh (Fri, 17 Nov 2017 12:38:57 GMT): mmyburgh (Fri, 17 Nov 2017 12:40:45 GMT): mahoney1 (Fri, 17 Nov 2017 12:50:46 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 12:56:22 GMT): yogesh.fulsunge (Fri, 17 Nov 2017 12:56:31 GMT): berndoostrum (Fri, 17 Nov 2017 13:09:56 GMT): berndoostrum (Fri, 17 Nov 2017 13:10:31 GMT): mahoney1 (Fri, 17 Nov 2017 13:32:28 GMT): mahoney1 (Fri, 17 Nov 2017 13:32:28 GMT): JoshuaRippon (Fri, 17 Nov 2017 13:38:33 GMT): jdockter (Fri, 17 Nov 2017 13:57:01 GMT): berndoostrum (Fri, 17 Nov 2017 15:00:30 GMT): berndoostrum (Fri, 17 Nov 2017 15:00:41 GMT): mahoney1 (Fri, 17 Nov 2017 15:00:53 GMT): mahoney1 (Fri, 17 Nov 2017 15:00:53 GMT): tennenjl (Fri, 17 Nov 2017 15:05:18 GMT): vitorduarte (Fri, 17 Nov 2017 15:06:14 GMT): mahoney1 (Fri, 17 Nov 2017 15:06:52 GMT): berndoostrum (Fri, 17 Nov 2017 15:08:32 GMT): mahoney1 (Fri, 17 Nov 2017 15:15:00 GMT): jdockter (Fri, 17 Nov 2017 15:16:25 GMT): jdockter (Fri, 17 Nov 2017 15:16:25 GMT): kiknaio (Fri, 17 Nov 2017 15:18:52 GMT): kiknaio (Fri, 17 Nov 2017 15:19:01 GMT): berndoostrum (Fri, 17 Nov 2017 15:19:44 GMT): jdockter (Fri, 17 Nov 2017 15:21:20 GMT): jdockter (Fri, 17 Nov 2017 15:22:30 GMT): Jakeeyturner (Fri, 17 Nov 2017 15:26:34 GMT): jdockter (Fri, 17 Nov 2017 15:28:32 GMT): jdockter (Fri, 17 Nov 2017 15:31:33 GMT): jdockter (Fri, 17 Nov 2017 15:32:46 GMT): mahoney1 (Fri, 17 Nov 2017 15:42:15 GMT): mahoney1 (Fri, 17 Nov 2017 15:42:15 GMT): Emmy (Fri, 17 Nov 2017 15:44:50 GMT): mahoney1 (Fri, 17 Nov 2017 15:50:12 GMT): agileThinker (Fri, 17 Nov 2017 15:52:51 GMT): agileThinker (Fri, 17 Nov 2017 15:53:44 GMT): Emmy (Fri, 17 Nov 2017 15:53:45 GMT): agileThinker (Fri, 17 Nov 2017 15:54:11 GMT): Emmy (Fri, 17 Nov 2017 15:54:21 GMT): agileThinker (Fri, 17 Nov 2017 15:54:21 GMT): jdockter (Fri, 17 Nov 2017 15:55:24 GMT): jdockter (Fri, 17 Nov 2017 15:55:24 GMT): agileThinker (Fri, 17 Nov 2017 15:55:25 GMT): agileThinker (Fri, 17 Nov 2017 15:56:37 GMT): agileThinker (Fri, 17 Nov 2017 15:56:38 GMT): agileThinker (Fri, 17 Nov 2017 15:56:39 GMT): jdockter (Fri, 17 Nov 2017 15:57:28 GMT): mahoney1 (Fri, 17 Nov 2017 15:57:50 GMT): agileThinker (Fri, 17 Nov 2017 15:58:10 GMT): agileThinker (Fri, 17 Nov 2017 15:58:16 GMT): agileThinker (Fri, 17 Nov 2017 15:58:16 GMT): Emmy (Fri, 17 Nov 2017 15:58:32 GMT): mahoney1 (Fri, 17 Nov 2017 15:58:33 GMT): RobertMiroballi (Fri, 17 Nov 2017 15:59:41 GMT): agileThinker (Fri, 17 Nov 2017 16:01:28 GMT): agileThinker (Fri, 17 Nov 2017 16:01:34 GMT): agileThinker (Fri, 17 Nov 2017 16:01:49 GMT): agileThinker (Fri, 17 Nov 2017 16:02:23 GMT): jdockter (Fri, 17 Nov 2017 16:04:10 GMT): berndoostrum (Fri, 17 Nov 2017 16:05:15 GMT): agileThinker (Fri, 17 Nov 2017 16:07:16 GMT): agileThinker (Fri, 17 Nov 2017 16:07:26 GMT): agileThinker (Fri, 17 Nov 2017 16:07:36 GMT): agileThinker (Fri, 17 Nov 2017 16:08:44 GMT): agileThinker (Fri, 17 Nov 2017 16:09:13 GMT): agileThinker (Fri, 17 Nov 2017 16:10:15 GMT): agileThinker (Fri, 17 Nov 2017 16:10:29 GMT): agileThinker (Fri, 17 Nov 2017 16:10:50 GMT): agileThinker (Fri, 17 Nov 2017 16:12:05 GMT): agileThinker (Fri, 17 Nov 2017 16:13:19 GMT): agileThinker (Fri, 17 Nov 2017 16:13:21 GMT): vitorduarte (Fri, 17 Nov 2017 16:19:02 GMT): vitorduarte (Fri, 17 Nov 2017 16:20:31 GMT): mahoney1 (Fri, 17 Nov 2017 16:20:34 GMT): mahoney1 (Fri, 17 Nov 2017 16:20:34 GMT): mahoney1 (Fri, 17 Nov 2017 16:20:34 GMT): mahoney1 (Fri, 17 Nov 2017 16:20:34 GMT): mahoney1 (Fri, 17 Nov 2017 16:23:15 GMT): agileThinker (Fri, 17 Nov 2017 16:27:49 GMT): agileThinker (Fri, 17 Nov 2017 16:28:07 GMT): agileThinker (Fri, 17 Nov 2017 16:28:14 GMT): agileThinker (Fri, 17 Nov 2017 16:28:20 GMT): agileThinker (Fri, 17 Nov 2017 16:28:27 GMT): agileThinker (Fri, 17 Nov 2017 16:28:45 GMT): mahoney1 (Fri, 17 Nov 2017 16:32:48 GMT): mahoney1 (Fri, 17 Nov 2017 16:32:48 GMT): mahoney1 (Fri, 17 Nov 2017 16:32:48 GMT): agileThinker (Fri, 17 Nov 2017 16:53:55 GMT): agileThinker (Fri, 17 Nov 2017 16:54:05 GMT): JoshuaRippon (Fri, 17 Nov 2017 17:02:41 GMT): rthatcher (Fri, 17 Nov 2017 17:28:19 GMT): mostafa.elsayyad (Fri, 17 Nov 2017 18:12:24 GMT): Buckley404 (Fri, 17 Nov 2017 18:28:37 GMT): Buckley404 (Fri, 17 Nov 2017 18:29:03 GMT): Buckley404 (Fri, 17 Nov 2017 18:29:19 GMT): ykcai (Fri, 17 Nov 2017 18:37:54 GMT): Buckley404 (Fri, 17 Nov 2017 18:39:13 GMT): ykcai (Fri, 17 Nov 2017 18:46:44 GMT): Buckley404 (Fri, 17 Nov 2017 18:47:56 GMT): Buckley404 (Fri, 17 Nov 2017 18:48:40 GMT): Buckley404 (Fri, 17 Nov 2017 18:48:55 GMT): ykcai (Fri, 17 Nov 2017 18:53:17 GMT): Buckley404 (Fri, 17 Nov 2017 18:56:13 GMT): Buckley404 (Fri, 17 Nov 2017 18:56:52 GMT): ykcai (Fri, 17 Nov 2017 18:58:43 GMT): Buckley404 (Fri, 17 Nov 2017 19:00:22 GMT): mostafa.elsayyad (Fri, 17 Nov 2017 19:16:18 GMT): ykcai (Fri, 17 Nov 2017 19:24:45 GMT): agileThinker (Fri, 17 Nov 2017 19:45:27 GMT): agileThinker (Fri, 17 Nov 2017 19:45:38 GMT): agileThinker (Fri, 17 Nov 2017 19:45:51 GMT): mostafa.elsayyad (Fri, 17 Nov 2017 19:46:33 GMT): agileThinker (Fri, 17 Nov 2017 19:51:07 GMT): agileThinker (Fri, 17 Nov 2017 19:51:22 GMT): agileThinker (Fri, 17 Nov 2017 19:51:31 GMT): mostafa.elsayyad (Fri, 17 Nov 2017 19:52:08 GMT): agileThinker (Fri, 17 Nov 2017 19:53:21 GMT): sstone1 (Fri, 17 Nov 2017 19:57:25 GMT): sstone1 (Fri, 17 Nov 2017 19:57:25 GMT): LuisBrime (Fri, 17 Nov 2017 20:18:24 GMT): mostafa.elsayyad (Fri, 17 Nov 2017 22:41:59 GMT): hounded (Sat, 18 Nov 2017 00:06:07 GMT): hounded (Sat, 18 Nov 2017 00:06:07 GMT): umamani113 (Sat, 18 Nov 2017 07:22:27 GMT): sstone1 (Sat, 18 Nov 2017 08:57:24 GMT): hounded (Sat, 18 Nov 2017 08:58:13 GMT): hounded (Sat, 18 Nov 2017 09:07:28 GMT): hounded (Sat, 18 Nov 2017 09:07:28 GMT): sstone1 (Sat, 18 Nov 2017 09:20:34 GMT): sstone1 (Sat, 18 Nov 2017 09:26:03 GMT): hounded (Sat, 18 Nov 2017 09:44:31 GMT): hounded (Sat, 18 Nov 2017 09:44:55 GMT): mostafa.elsayyad (Sat, 18 Nov 2017 11:14:50 GMT): mostafa.elsayyad (Sat, 18 Nov 2017 11:14:50 GMT): mostafa.elsayyad (Sat, 18 Nov 2017 11:14:50 GMT): mostafa.elsayyad (Sat, 18 Nov 2017 11:15:42 GMT): sstone1 (Sat, 18 Nov 2017 12:03:42 GMT): bh4rtp (Sat, 18 Nov 2017 12:51:47 GMT): sstone1 (Sat, 18 Nov 2017 12:51:56 GMT): sstone1 (Sat, 18 Nov 2017 12:52:09 GMT): sstone1 (Sat, 18 Nov 2017 12:52:09 GMT): sstone1 (Sat, 18 Nov 2017 12:52:23 GMT): bh4rtp (Sat, 18 Nov 2017 12:54:05 GMT): sstone1 (Sat, 18 Nov 2017 12:54:17 GMT): bh4rtp (Sat, 18 Nov 2017 13:05:00 GMT): sstone1 (Sat, 18 Nov 2017 13:05:40 GMT): bh4rtp (Sat, 18 Nov 2017 13:09:50 GMT): bh4rtp (Sat, 18 Nov 2017 13:14:44 GMT): sstone1 (Sat, 18 Nov 2017 13:24:02 GMT): sstone1 (Sat, 18 Nov 2017 13:24:52 GMT): sstone1 (Sat, 18 Nov 2017 13:25:25 GMT): UdayCTO (Sat, 18 Nov 2017 13:26:10 GMT): bh4rtp (Sat, 18 Nov 2017 13:59:10 GMT): sstone1 (Sat, 18 Nov 2017 13:59:20 GMT): varunagarwal (Sat, 18 Nov 2017 14:10:56 GMT): sstone1 (Sat, 18 Nov 2017 14:14:12 GMT): sstone1 (Sat, 18 Nov 2017 14:14:17 GMT): varunagarwal (Sat, 18 Nov 2017 15:25:07 GMT): varunagarwal (Sat, 18 Nov 2017 15:25:07 GMT): greg2git (Sat, 18 Nov 2017 22:50:36 GMT): mastreips (Sat, 18 Nov 2017 23:18:57 GMT): sstone1 (Sat, 18 Nov 2017 23:21:30 GMT): mastreips (Sat, 18 Nov 2017 23:21:49 GMT): mastreips (Sat, 18 Nov 2017 23:39:35 GMT): bh4rtp (Sun, 19 Nov 2017 00:22:32 GMT): greg2git (Sun, 19 Nov 2017 00:54:17 GMT): mastreips (Sun, 19 Nov 2017 04:24:29 GMT): mastreips (Sun, 19 Nov 2017 04:44:21 GMT): JosephKovuri (Sun, 19 Nov 2017 08:45:49 GMT): davidkel (Sun, 19 Nov 2017 09:21:40 GMT): gdeflaux (Sun, 19 Nov 2017 10:25:21 GMT): sstone1 (Sun, 19 Nov 2017 12:44:56 GMT): sstone1 (Sun, 19 Nov 2017 12:45:21 GMT): sstone1 (Sun, 19 Nov 2017 13:49:38 GMT): mastreips (Sun, 19 Nov 2017 14:01:13 GMT): sstone1 (Sun, 19 Nov 2017 14:01:41 GMT): sstone1 (Sun, 19 Nov 2017 14:01:55 GMT): greg2git (Sun, 19 Nov 2017 14:33:02 GMT): HerwigHabenbacher (Sun, 19 Nov 2017 14:36:39 GMT): HerwigHabenbacher (Sun, 19 Nov 2017 14:42:07 GMT): fabriziosta (Sun, 19 Nov 2017 20:04:05 GMT): ykcai (Mon, 20 Nov 2017 00:57:12 GMT): zalak13 (Mon, 20 Nov 2017 05:16:13 GMT): jinwooChu (Mon, 20 Nov 2017 06:25:47 GMT): jinwooChu (Mon, 20 Nov 2017 06:30:30 GMT): jinwooChu (Mon, 20 Nov 2017 06:30:30 GMT): jinwooChu (Mon, 20 Nov 2017 06:30:30 GMT): vamshi.varaganti (Mon, 20 Nov 2017 06:46:40 GMT): inna (Mon, 20 Nov 2017 09:02:44 GMT): JoshuaRippon (Mon, 20 Nov 2017 09:08:21 GMT): aneb (Mon, 20 Nov 2017 09:10:25 GMT): aneb (Mon, 20 Nov 2017 09:10:25 GMT): sravs (Mon, 20 Nov 2017 09:39:18 GMT): AkshayJindal (Mon, 20 Nov 2017 09:50:19 GMT): AkshayJindal (Mon, 20 Nov 2017 10:01:32 GMT): wininani (Mon, 20 Nov 2017 10:10:56 GMT): wininani (Mon, 20 Nov 2017 10:11:09 GMT): JoshuaRippon (Mon, 20 Nov 2017 10:21:11 GMT): JoshuaRippon (Mon, 20 Nov 2017 10:21:43 GMT): JoshuaRippon (Mon, 20 Nov 2017 10:23:13 GMT): JoshuaRippon (Mon, 20 Nov 2017 10:23:21 GMT): prmdmshra (Mon, 20 Nov 2017 10:29:11 GMT): prmdmshra (Mon, 20 Nov 2017 10:29:15 GMT): mahoney1 (Mon, 20 Nov 2017 10:29:24 GMT): mahoney1 (Mon, 20 Nov 2017 10:31:59 GMT): mahoney1 (Mon, 20 Nov 2017 10:34:01 GMT): mahoney1 (Mon, 20 Nov 2017 10:51:22 GMT): sravs (Mon, 20 Nov 2017 10:53:56 GMT): mahoney1 (Mon, 20 Nov 2017 10:54:41 GMT): JoshuaRippon (Mon, 20 Nov 2017 11:00:49 GMT): mahoney1 (Mon, 20 Nov 2017 11:05:25 GMT): AkshayJindal (Mon, 20 Nov 2017 11:06:48 GMT): rthatcher (Mon, 20 Nov 2017 11:12:47 GMT): rthatcher (Mon, 20 Nov 2017 11:13:05 GMT): mahoney1 (Mon, 20 Nov 2017 11:23:00 GMT): zasamen (Mon, 20 Nov 2017 11:24:46 GMT): rthatcher (Mon, 20 Nov 2017 11:35:48 GMT): VinayakDeshpande (Mon, 20 Nov 2017 11:46:17 GMT): JaikishanBukalsaria (Mon, 20 Nov 2017 12:00:58 GMT): JaikishanBukalsaria (Mon, 20 Nov 2017 12:01:04 GMT): rthatcher (Mon, 20 Nov 2017 12:02:26 GMT): VinayakDeshpande (Mon, 20 Nov 2017 12:02:52 GMT): VinayakDeshpande (Mon, 20 Nov 2017 12:03:14 GMT): mahoney1 (Mon, 20 Nov 2017 12:06:45 GMT): mahoney1 (Mon, 20 Nov 2017 12:06:45 GMT): yogesh.fulsunge (Mon, 20 Nov 2017 12:09:54 GMT): yogesh.fulsunge (Mon, 20 Nov 2017 12:09:57 GMT): yogesh.fulsunge (Mon, 20 Nov 2017 12:11:05 GMT): yogesh.fulsunge (Mon, 20 Nov 2017 12:11:58 GMT): yogesh.fulsunge (Mon, 20 Nov 2017 12:13:13 GMT): rthatcher (Mon, 20 Nov 2017 12:14:48 GMT): yogesh.fulsunge (Mon, 20 Nov 2017 12:16:08 GMT): mahoney1 (Mon, 20 Nov 2017 12:18:39 GMT): sravs (Mon, 20 Nov 2017 12:34:07 GMT): JaikishanBukalsaria (Mon, 20 Nov 2017 12:36:02 GMT): mahoney1 (Mon, 20 Nov 2017 13:05:29 GMT): mahoney1 (Mon, 20 Nov 2017 13:05:29 GMT): mahoney1 (Mon, 20 Nov 2017 13:05:29 GMT): mahoney1 (Mon, 20 Nov 2017 13:05:29 GMT): rthatcher (Mon, 20 Nov 2017 13:10:41 GMT): VinayakDeshpande (Mon, 20 Nov 2017 13:13:32 GMT): VinayakDeshpande (Mon, 20 Nov 2017 13:13:32 GMT): VinayakDeshpande (Mon, 20 Nov 2017 13:15:48 GMT): VinayakDeshpande (Mon, 20 Nov 2017 13:16:36 GMT): luminance (Mon, 20 Nov 2017 13:16:38 GMT): mahoney1 (Mon, 20 Nov 2017 13:24:05 GMT): mahoney1 (Mon, 20 Nov 2017 13:24:05 GMT): mahoney1 (Mon, 20 Nov 2017 13:24:05 GMT): VinayakDeshpande (Mon, 20 Nov 2017 13:26:20 GMT): mahoney1 (Mon, 20 Nov 2017 13:28:59 GMT): mahoney1 (Mon, 20 Nov 2017 13:28:59 GMT): JaikishanBukalsaria (Mon, 20 Nov 2017 13:29:53 GMT): luminance (Mon, 20 Nov 2017 13:30:50 GMT): mahoney1 (Mon, 20 Nov 2017 13:37:01 GMT): VinayakDeshpande (Mon, 20 Nov 2017 13:38:10 GMT): mahoney1 (Mon, 20 Nov 2017 13:39:02 GMT): mahoney1 (Mon, 20 Nov 2017 13:39:02 GMT): DennisM330 (Mon, 20 Nov 2017 13:52:44 GMT): mahoney1 (Mon, 20 Nov 2017 13:56:23 GMT): VinayakDeshpande (Mon, 20 Nov 2017 14:03:53 GMT): VinayakDeshpande (Mon, 20 Nov 2017 14:05:08 GMT): VinayakDeshpande (Mon, 20 Nov 2017 14:05:29 GMT): Abhijeet.K (Mon, 20 Nov 2017 14:06:31 GMT): DennisM330 (Mon, 20 Nov 2017 14:07:01 GMT): Abhijeet.K (Mon, 20 Nov 2017 14:07:10 GMT): Abhijeet.K (Mon, 20 Nov 2017 14:07:27 GMT): Abhijeet.K (Mon, 20 Nov 2017 14:07:39 GMT): luminance (Mon, 20 Nov 2017 14:07:54 GMT): Abhijeet.K (Mon, 20 Nov 2017 14:07:54 GMT): Abhijeet.K (Mon, 20 Nov 2017 14:07:54 GMT): mahoney1 (Mon, 20 Nov 2017 14:11:37 GMT): mahoney1 (Mon, 20 Nov 2017 14:11:37 GMT): mahoney1 (Mon, 20 Nov 2017 14:11:37 GMT): mahoney1 (Mon, 20 Nov 2017 14:11:37 GMT): mahoney1 (Mon, 20 Nov 2017 14:11:37 GMT): mahoney1 (Mon, 20 Nov 2017 14:11:37 GMT): mahoney1 (Mon, 20 Nov 2017 14:11:37 GMT): Abhijeet.K (Mon, 20 Nov 2017 14:16:44 GMT): Abhijeet.K (Mon, 20 Nov 2017 14:21:29 GMT): mahoney1 (Mon, 20 Nov 2017 14:22:20 GMT): ykcai (Mon, 20 Nov 2017 14:33:51 GMT): Jakeeyturner (Mon, 20 Nov 2017 14:35:46 GMT): maaar1234 (Mon, 20 Nov 2017 14:35:58 GMT): rthatcher (Mon, 20 Nov 2017 14:47:51 GMT): jdockter (Mon, 20 Nov 2017 14:55:27 GMT): jdockter (Mon, 20 Nov 2017 14:56:09 GMT): mahoney1 (Mon, 20 Nov 2017 15:01:43 GMT): jdockter (Mon, 20 Nov 2017 15:04:00 GMT): jdockter (Mon, 20 Nov 2017 15:04:00 GMT): jdockter (Mon, 20 Nov 2017 15:04:00 GMT): mahoney1 (Mon, 20 Nov 2017 15:21:00 GMT): AkshayJindal (Mon, 20 Nov 2017 15:28:28 GMT): dtylam (Mon, 20 Nov 2017 15:29:00 GMT): berndoostrum (Mon, 20 Nov 2017 15:32:48 GMT): berndoostrum (Mon, 20 Nov 2017 15:33:16 GMT): jdockter (Mon, 20 Nov 2017 15:33:26 GMT): mahoney1 (Mon, 20 Nov 2017 15:34:24 GMT): mahoney1 (Mon, 20 Nov 2017 15:34:24 GMT): mahoney1 (Mon, 20 Nov 2017 15:34:24 GMT): ykcai (Mon, 20 Nov 2017 16:23:27 GMT): rthatcher (Mon, 20 Nov 2017 16:26:43 GMT): berndoostrum (Mon, 20 Nov 2017 16:30:49 GMT): berndoostrum (Mon, 20 Nov 2017 16:35:17 GMT): rthatcher (Mon, 20 Nov 2017 16:36:59 GMT): berndoostrum (Mon, 20 Nov 2017 16:38:04 GMT): berndoostrum (Mon, 20 Nov 2017 16:38:12 GMT): rthatcher (Mon, 20 Nov 2017 17:55:23 GMT): mastercpt (Mon, 20 Nov 2017 18:07:08 GMT): mastercpt (Mon, 20 Nov 2017 18:11:11 GMT): ferorus (Mon, 20 Nov 2017 18:48:47 GMT): AkshayJindal (Mon, 20 Nov 2017 18:51:49 GMT): mastercpt (Mon, 20 Nov 2017 19:01:49 GMT): mahoney1 (Mon, 20 Nov 2017 20:36:48 GMT): mastercpt (Mon, 20 Nov 2017 20:39:11 GMT): mahoney1 (Mon, 20 Nov 2017 20:42:20 GMT): mahoney1 (Mon, 20 Nov 2017 20:52:22 GMT): mahoney1 (Mon, 20 Nov 2017 20:52:22 GMT): Shachindra (Mon, 20 Nov 2017 22:38:43 GMT): jdockter (Mon, 20 Nov 2017 23:39:17 GMT): Hefziben (Tue, 21 Nov 2017 02:14:30 GMT): kmohanar (Tue, 21 Nov 2017 05:14:52 GMT): kmohanar (Tue, 21 Nov 2017 05:14:52 GMT): kmohanar (Tue, 21 Nov 2017 05:14:52 GMT): kmohanar (Tue, 21 Nov 2017 05:14:52 GMT): sstone1 (Tue, 21 Nov 2017 06:32:32 GMT): sstone1 (Tue, 21 Nov 2017 06:33:15 GMT): umamani113 (Tue, 21 Nov 2017 06:54:07 GMT): kmohanar (Tue, 21 Nov 2017 06:58:00 GMT): labcoinpoc (Tue, 21 Nov 2017 06:58:11 GMT): yogesh.fulsunge (Tue, 21 Nov 2017 07:01:59 GMT): mna2016 (Tue, 21 Nov 2017 07:15:35 GMT): VinayakDeshpande (Tue, 21 Nov 2017 08:20:28 GMT): VinayakDeshpande (Tue, 21 Nov 2017 08:20:29 GMT): VinayakDeshpande (Tue, 21 Nov 2017 08:31:25 GMT): davidkel (Tue, 21 Nov 2017 08:49:46 GMT): marksta (Tue, 21 Nov 2017 09:03:17 GMT): rthatcher (Tue, 21 Nov 2017 09:47:48 GMT): VinayakDeshpande (Tue, 21 Nov 2017 10:04:13 GMT): rthatcher (Tue, 21 Nov 2017 10:12:49 GMT): yogesh.fulsunge (Tue, 21 Nov 2017 10:13:40 GMT): rthatcher (Tue, 21 Nov 2017 10:14:58 GMT): rthatcher (Tue, 21 Nov 2017 10:15:03 GMT): VinayakDeshpande (Tue, 21 Nov 2017 10:15:48 GMT): VinayakDeshpande (Tue, 21 Nov 2017 10:15:49 GMT): yogesh.fulsunge (Tue, 21 Nov 2017 10:16:13 GMT): yogesh.fulsunge (Tue, 21 Nov 2017 10:16:40 GMT): rthatcher (Tue, 21 Nov 2017 10:20:19 GMT): VinayakDeshpande (Tue, 21 Nov 2017 10:21:01 GMT): VinayakDeshpande (Tue, 21 Nov 2017 10:21:05 GMT): VinayakDeshpande (Tue, 21 Nov 2017 10:25:05 GMT): rthatcher (Tue, 21 Nov 2017 10:25:44 GMT): yogesh.fulsunge (Tue, 21 Nov 2017 10:26:37 GMT): rthatcher (Tue, 21 Nov 2017 10:35:50 GMT): erNail (Tue, 21 Nov 2017 10:37:35 GMT): evandro.franco (Tue, 21 Nov 2017 10:45:37 GMT): erNail (Tue, 21 Nov 2017 10:47:32 GMT): mahoney1 (Tue, 21 Nov 2017 10:53:22 GMT): mahoney1 (Tue, 21 Nov 2017 10:53:22 GMT): AkshayJindal (Tue, 21 Nov 2017 10:56:50 GMT): mahoney1 (Tue, 21 Nov 2017 11:15:07 GMT): mahoney1 (Tue, 21 Nov 2017 11:15:07 GMT): mahoney1 (Tue, 21 Nov 2017 11:19:09 GMT): mahoney1 (Tue, 21 Nov 2017 11:20:31 GMT): erNail (Tue, 21 Nov 2017 11:22:02 GMT): zasamen (Tue, 21 Nov 2017 11:39:09 GMT): jdockter (Tue, 21 Nov 2017 11:58:16 GMT): mna2016 (Tue, 21 Nov 2017 12:14:12 GMT): mna2016 (Tue, 21 Nov 2017 12:14:12 GMT): mahoney1 (Tue, 21 Nov 2017 12:27:32 GMT): mahoney1 (Tue, 21 Nov 2017 12:27:32 GMT): mna2016 (Tue, 21 Nov 2017 12:36:26 GMT): mahoney1 (Tue, 21 Nov 2017 12:43:58 GMT): Manasabingi (Tue, 21 Nov 2017 12:45:32 GMT): mna2016 (Tue, 21 Nov 2017 12:46:03 GMT): erNail (Tue, 21 Nov 2017 12:48:29 GMT): erNail (Tue, 21 Nov 2017 12:49:07 GMT): wininani (Tue, 21 Nov 2017 12:58:33 GMT): kmohanar (Tue, 21 Nov 2017 12:59:58 GMT): kmohanar (Tue, 21 Nov 2017 12:59:58 GMT): kmohanar (Tue, 21 Nov 2017 12:59:58 GMT): mahoney1 (Tue, 21 Nov 2017 13:23:15 GMT): mahoney1 (Tue, 21 Nov 2017 13:23:15 GMT): mahoney1 (Tue, 21 Nov 2017 13:24:56 GMT): jdockter (Tue, 21 Nov 2017 15:00:24 GMT): rthatcher (Tue, 21 Nov 2017 15:14:02 GMT): mahoney1 (Tue, 21 Nov 2017 15:17:40 GMT): mahoney1 (Tue, 21 Nov 2017 15:17:40 GMT): mahoney1 (Tue, 21 Nov 2017 15:36:41 GMT): pravinghuge (Tue, 21 Nov 2017 15:37:19 GMT): pravinghuge (Tue, 21 Nov 2017 15:38:09 GMT): pravinghuge (Tue, 21 Nov 2017 15:38:14 GMT): pravinghuge (Tue, 21 Nov 2017 15:38:56 GMT): ykcai (Tue, 21 Nov 2017 15:52:08 GMT): AkshayJindal (Tue, 21 Nov 2017 15:55:52 GMT): AkshayJindal (Tue, 21 Nov 2017 15:55:52 GMT): AkshayJindal (Tue, 21 Nov 2017 15:55:52 GMT): AkshayJindal (Tue, 21 Nov 2017 15:55:52 GMT): davidoevans (Tue, 21 Nov 2017 16:14:42 GMT): davidoevans (Tue, 21 Nov 2017 16:14:42 GMT): bestbeforetoday (Tue, 21 Nov 2017 16:17:19 GMT): bestbeforetoday (Tue, 21 Nov 2017 16:17:19 GMT): bestbeforetoday (Tue, 21 Nov 2017 16:18:08 GMT): bestbeforetoday (Tue, 21 Nov 2017 16:18:08 GMT): bestbeforetoday (Tue, 21 Nov 2017 16:18:46 GMT): mahoney1 (Tue, 21 Nov 2017 16:18:55 GMT): jdockter (Tue, 21 Nov 2017 16:25:57 GMT): davidoevans (Tue, 21 Nov 2017 16:27:27 GMT): bestbeforetoday (Tue, 21 Nov 2017 16:28:29 GMT): bestbeforetoday (Tue, 21 Nov 2017 16:29:20 GMT): davidoevans (Tue, 21 Nov 2017 16:29:59 GMT): medhak19 (Tue, 21 Nov 2017 16:43:00 GMT): pravinghuge (Tue, 21 Nov 2017 17:07:57 GMT): mahoney1 (Tue, 21 Nov 2017 17:10:46 GMT): mahoney1 (Tue, 21 Nov 2017 17:10:46 GMT): parags (Tue, 21 Nov 2017 17:20:29 GMT): C.Jason.Phelps (Tue, 21 Nov 2017 17:30:33 GMT): ykcai (Tue, 21 Nov 2017 19:18:31 GMT): akshatbh (Tue, 21 Nov 2017 19:31:18 GMT): ykcai (Tue, 21 Nov 2017 19:36:52 GMT): akshatbh (Tue, 21 Nov 2017 19:40:24 GMT): ykcai (Tue, 21 Nov 2017 19:45:11 GMT): davidkel (Tue, 21 Nov 2017 19:49:15 GMT): akshatbh (Tue, 21 Nov 2017 19:51:47 GMT): ykcai (Tue, 21 Nov 2017 20:07:30 GMT): ykcai (Tue, 21 Nov 2017 20:07:30 GMT): davidkel (Tue, 21 Nov 2017 20:11:12 GMT): ykcai (Tue, 21 Nov 2017 20:17:50 GMT): davidkel (Tue, 21 Nov 2017 20:22:26 GMT): davidkel (Tue, 21 Nov 2017 20:23:14 GMT): akshatbh (Tue, 21 Nov 2017 20:31:40 GMT): ykcai (Tue, 21 Nov 2017 20:49:14 GMT): davidkel (Tue, 21 Nov 2017 21:06:50 GMT): ykcai (Tue, 21 Nov 2017 21:34:45 GMT): ykcai (Tue, 21 Nov 2017 21:57:14 GMT): davidkel (Tue, 21 Nov 2017 22:18:37 GMT): davidkel (Tue, 21 Nov 2017 22:18:37 GMT): dwakeman (Wed, 22 Nov 2017 00:25:45 GMT): Hefziben (Wed, 22 Nov 2017 03:54:12 GMT): toddinpal (Wed, 22 Nov 2017 04:00:51 GMT): kmohanar (Wed, 22 Nov 2017 04:23:36 GMT): conroydave (Wed, 22 Nov 2017 04:29:30 GMT): conroydave (Wed, 22 Nov 2017 04:29:39 GMT): conroydave (Wed, 22 Nov 2017 04:30:16 GMT): conroydave (Wed, 22 Nov 2017 04:30:18 GMT): conroydave (Wed, 22 Nov 2017 04:31:36 GMT): conroydave (Wed, 22 Nov 2017 05:48:07 GMT): mayur.relekar (Wed, 22 Nov 2017 06:01:24 GMT): Akshatha (Wed, 22 Nov 2017 06:25:23 GMT): Akshatha (Wed, 22 Nov 2017 06:56:02 GMT): conroydave (Wed, 22 Nov 2017 07:19:38 GMT): erNail (Wed, 22 Nov 2017 07:32:56 GMT): aneb (Wed, 22 Nov 2017 07:47:30 GMT): aneb (Wed, 22 Nov 2017 07:47:30 GMT): bestbeforetoday (Wed, 22 Nov 2017 09:16:00 GMT): prmdmshra (Wed, 22 Nov 2017 09:33:28 GMT): rthatcher (Wed, 22 Nov 2017 09:45:50 GMT): erNail (Wed, 22 Nov 2017 10:11:02 GMT): erNail (Wed, 22 Nov 2017 10:12:13 GMT): erNail (Wed, 22 Nov 2017 10:13:24 GMT): erNail (Wed, 22 Nov 2017 10:19:09 GMT): mahoney1 (Wed, 22 Nov 2017 10:27:49 GMT): mahoney1 (Wed, 22 Nov 2017 10:28:52 GMT): mayur.relekar (Wed, 22 Nov 2017 10:32:31 GMT): rthatcher (Wed, 22 Nov 2017 10:39:32 GMT): rthatcher (Wed, 22 Nov 2017 10:39:32 GMT): parags (Wed, 22 Nov 2017 10:47:48 GMT): parags (Wed, 22 Nov 2017 10:50:46 GMT): mahoney1 (Wed, 22 Nov 2017 11:09:20 GMT): mahoney1 (Wed, 22 Nov 2017 11:12:40 GMT): mahoney1 (Wed, 22 Nov 2017 11:12:40 GMT): JoshuaRippon (Wed, 22 Nov 2017 11:22:07 GMT): mayur.relekar (Wed, 22 Nov 2017 11:22:49 GMT): JoshuaRippon (Wed, 22 Nov 2017 11:40:04 GMT): conroydave (Wed, 22 Nov 2017 11:40:39 GMT): conroydave (Wed, 22 Nov 2017 11:41:05 GMT): conroydave (Wed, 22 Nov 2017 11:41:36 GMT): JoshuaRippon (Wed, 22 Nov 2017 11:55:50 GMT): JoshuaRippon (Wed, 22 Nov 2017 11:56:30 GMT): HerwigHabenbacher (Wed, 22 Nov 2017 12:01:43 GMT): conroydave (Wed, 22 Nov 2017 12:02:27 GMT): conroydave (Wed, 22 Nov 2017 12:02:42 GMT): JoshuaRippon (Wed, 22 Nov 2017 12:08:31 GMT): rthatcher (Wed, 22 Nov 2017 12:15:34 GMT): aneb (Wed, 22 Nov 2017 12:16:37 GMT): HerwigHabenbacher (Wed, 22 Nov 2017 12:20:01 GMT): parags (Wed, 22 Nov 2017 12:47:21 GMT): parags (Wed, 22 Nov 2017 12:48:03 GMT): RobHekkelman (Wed, 22 Nov 2017 13:41:07 GMT): mahoney1 (Wed, 22 Nov 2017 13:50:43 GMT): IliasStergiou (Wed, 22 Nov 2017 13:54:28 GMT): mahoney1 (Wed, 22 Nov 2017 14:02:50 GMT): mahoney1 (Wed, 22 Nov 2017 14:25:01 GMT): IliasStergiou (Wed, 22 Nov 2017 14:28:52 GMT): IliasStergiou (Wed, 22 Nov 2017 14:29:53 GMT): berndoostrum (Wed, 22 Nov 2017 14:38:19 GMT): berndoostrum (Wed, 22 Nov 2017 14:38:59 GMT): berndoostrum (Wed, 22 Nov 2017 14:39:14 GMT): berndoostrum (Wed, 22 Nov 2017 14:39:36 GMT): JoshuaRippon (Wed, 22 Nov 2017 14:48:46 GMT): berndoostrum (Wed, 22 Nov 2017 14:53:02 GMT): berndoostrum (Wed, 22 Nov 2017 14:53:12 GMT): JoshuaRippon (Wed, 22 Nov 2017 14:55:01 GMT): JoshuaRippon (Wed, 22 Nov 2017 14:56:07 GMT): mahoney1 (Wed, 22 Nov 2017 15:01:27 GMT): mahoney1 (Wed, 22 Nov 2017 15:01:27 GMT): mayur.relekar (Wed, 22 Nov 2017 15:13:01 GMT): mahoney1 (Wed, 22 Nov 2017 15:16:29 GMT): berndoostrum (Wed, 22 Nov 2017 15:19:47 GMT): berndoostrum (Wed, 22 Nov 2017 15:20:10 GMT): mahoney1 (Wed, 22 Nov 2017 15:22:33 GMT): mayur.relekar (Wed, 22 Nov 2017 15:23:59 GMT): toddinpal (Wed, 22 Nov 2017 15:25:44 GMT): mayur.relekar (Wed, 22 Nov 2017 15:28:14 GMT): AkshayJindal (Wed, 22 Nov 2017 15:34:37 GMT): AkshayJindal (Wed, 22 Nov 2017 15:34:37 GMT): AkshayJindal (Wed, 22 Nov 2017 15:34:37 GMT): AkshayJindal (Wed, 22 Nov 2017 15:34:37 GMT): tbberg (Wed, 22 Nov 2017 15:36:04 GMT): mahoney1 (Wed, 22 Nov 2017 15:38:43 GMT): tbberg (Wed, 22 Nov 2017 15:39:03 GMT): tbberg (Wed, 22 Nov 2017 15:39:29 GMT): mahoney1 (Wed, 22 Nov 2017 15:42:03 GMT): rthatcher (Wed, 22 Nov 2017 15:43:06 GMT): rthatcher (Wed, 22 Nov 2017 15:43:06 GMT): mahoney1 (Wed, 22 Nov 2017 15:44:06 GMT): prmdmshra (Wed, 22 Nov 2017 15:45:39 GMT): rthatcher (Wed, 22 Nov 2017 15:50:09 GMT): mahoney1 (Wed, 22 Nov 2017 15:50:16 GMT): mahoney1 (Wed, 22 Nov 2017 15:50:16 GMT): toddinpal (Wed, 22 Nov 2017 15:53:36 GMT): rthatcher (Wed, 22 Nov 2017 15:59:11 GMT): AkshayJindal (Wed, 22 Nov 2017 16:13:47 GMT): AkshayJindal (Wed, 22 Nov 2017 16:13:47 GMT): jjoseph (Wed, 22 Nov 2017 16:49:07 GMT): conroydave (Wed, 22 Nov 2017 16:49:48 GMT): conroydave (Wed, 22 Nov 2017 16:50:10 GMT): berndoostrum (Wed, 22 Nov 2017 16:51:51 GMT): AkshayJindal (Wed, 22 Nov 2017 17:09:22 GMT): conroydave (Wed, 22 Nov 2017 17:09:42 GMT): conroydave (Wed, 22 Nov 2017 17:09:55 GMT): conroydave (Wed, 22 Nov 2017 17:10:42 GMT): conroydave (Wed, 22 Nov 2017 17:11:00 GMT): JoshuaRippon (Wed, 22 Nov 2017 17:24:55 GMT): rthatcher (Wed, 22 Nov 2017 17:31:17 GMT): tbberg (Wed, 22 Nov 2017 17:36:35 GMT): tbberg (Wed, 22 Nov 2017 17:36:43 GMT): tbberg (Wed, 22 Nov 2017 17:37:21 GMT): tbberg (Wed, 22 Nov 2017 17:37:32 GMT): tbberg (Wed, 22 Nov 2017 17:37:49 GMT): mahoney1 (Wed, 22 Nov 2017 17:51:22 GMT): berndoostrum (Wed, 22 Nov 2017 18:02:22 GMT): berndoostrum (Wed, 22 Nov 2017 18:03:20 GMT): JoshuaRippon (Wed, 22 Nov 2017 18:22:33 GMT): berndoostrum (Wed, 22 Nov 2017 18:26:21 GMT): berndoostrum (Wed, 22 Nov 2017 18:27:12 GMT): berndoostrum (Wed, 22 Nov 2017 20:32:03 GMT): berndoostrum (Wed, 22 Nov 2017 20:32:21 GMT): sstone1 (Wed, 22 Nov 2017 23:44:08 GMT): sstone1 (Wed, 22 Nov 2017 23:44:40 GMT): ykcai (Thu, 23 Nov 2017 01:24:26 GMT): chandrairawan (Thu, 23 Nov 2017 02:09:38 GMT): yogesh.fulsunge (Thu, 23 Nov 2017 05:12:01 GMT): yogesh.fulsunge (Thu, 23 Nov 2017 05:16:40 GMT): prmdmshra (Thu, 23 Nov 2017 06:02:06 GMT): parags (Thu, 23 Nov 2017 07:17:06 GMT): davidkel (Thu, 23 Nov 2017 07:18:03 GMT): davidkel (Thu, 23 Nov 2017 07:19:37 GMT): yogesh.fulsunge (Thu, 23 Nov 2017 07:22:15 GMT): yogesh.fulsunge (Thu, 23 Nov 2017 07:23:17 GMT): pascallimeux (Thu, 23 Nov 2017 08:13:27 GMT): pascallimeux (Thu, 23 Nov 2017 08:19:38 GMT): yogesh.fulsunge (Thu, 23 Nov 2017 08:48:18 GMT): yogesh.fulsunge (Thu, 23 Nov 2017 08:49:16 GMT): pascallimeux (Thu, 23 Nov 2017 08:52:05 GMT): yogesh.fulsunge (Thu, 23 Nov 2017 08:56:23 GMT): yogesh.fulsunge (Thu, 23 Nov 2017 08:56:50 GMT): yogesh.fulsunge (Thu, 23 Nov 2017 08:56:50 GMT): yogesh.fulsunge (Thu, 23 Nov 2017 08:56:50 GMT): yogesh.fulsunge (Thu, 23 Nov 2017 08:56:52 GMT): nickyromeijn (Thu, 23 Nov 2017 09:02:21 GMT): pascallimeux (Thu, 23 Nov 2017 09:04:05 GMT): JoshuaRippon (Thu, 23 Nov 2017 09:06:37 GMT): nickyromeijn (Thu, 23 Nov 2017 09:07:48 GMT): JoshuaRippon (Thu, 23 Nov 2017 09:08:37 GMT): JoshuaRippon (Thu, 23 Nov 2017 09:09:09 GMT): JoshuaRippon (Thu, 23 Nov 2017 09:09:53 GMT): nickyromeijn (Thu, 23 Nov 2017 09:11:21 GMT): nickyromeijn (Thu, 23 Nov 2017 09:11:54 GMT): sstone1 (Thu, 23 Nov 2017 09:12:21 GMT): nickyromeijn (Thu, 23 Nov 2017 09:12:40 GMT): nickyromeijn (Thu, 23 Nov 2017 09:12:41 GMT): pascallimeux (Thu, 23 Nov 2017 09:17:38 GMT): pascallimeux (Thu, 23 Nov 2017 09:17:47 GMT): wininani (Thu, 23 Nov 2017 09:20:40 GMT): sstone1 (Thu, 23 Nov 2017 09:22:04 GMT): nickyromeijn (Thu, 23 Nov 2017 09:22:26 GMT): nickyromeijn (Thu, 23 Nov 2017 09:22:38 GMT): sstone1 (Thu, 23 Nov 2017 09:24:00 GMT): sstone1 (Thu, 23 Nov 2017 09:24:04 GMT): nickyromeijn (Thu, 23 Nov 2017 09:24:10 GMT): sstone1 (Thu, 23 Nov 2017 09:24:36 GMT): nickyromeijn (Thu, 23 Nov 2017 09:25:02 GMT): nickyromeijn (Thu, 23 Nov 2017 09:27:29 GMT): sstone1 (Thu, 23 Nov 2017 09:28:10 GMT): sstone1 (Thu, 23 Nov 2017 09:28:20 GMT): nickyromeijn (Thu, 23 Nov 2017 09:30:53 GMT): nickyromeijn (Thu, 23 Nov 2017 09:31:00 GMT): nickyromeijn (Thu, 23 Nov 2017 09:31:00 GMT): nickyromeijn (Thu, 23 Nov 2017 09:31:20 GMT): nickyromeijn (Thu, 23 Nov 2017 09:31:20 GMT): nickyromeijn (Thu, 23 Nov 2017 09:31:57 GMT): sstone1 (Thu, 23 Nov 2017 09:33:11 GMT): sstone1 (Thu, 23 Nov 2017 09:33:14 GMT): nickyromeijn (Thu, 23 Nov 2017 09:34:33 GMT): Akshatha (Thu, 23 Nov 2017 09:36:20 GMT): Akshatha (Thu, 23 Nov 2017 09:37:08 GMT): JoshuaRippon (Thu, 23 Nov 2017 10:22:30 GMT): uber.twin (Thu, 23 Nov 2017 11:07:34 GMT): uber.twin (Thu, 23 Nov 2017 11:07:34 GMT): uber.twin (Thu, 23 Nov 2017 11:07:34 GMT): jaguarg (Thu, 23 Nov 2017 11:10:52 GMT): rthatcher (Thu, 23 Nov 2017 11:17:00 GMT): jaguarg (Thu, 23 Nov 2017 11:27:28 GMT): jaguarg (Thu, 23 Nov 2017 11:27:34 GMT): rthatcher (Thu, 23 Nov 2017 11:31:24 GMT): JoshuaRippon (Thu, 23 Nov 2017 11:40:24 GMT): ascatox (Thu, 23 Nov 2017 12:08:17 GMT): JoshuaRippon (Thu, 23 Nov 2017 12:16:22 GMT): rthatcher (Thu, 23 Nov 2017 12:35:20 GMT): rthatcher (Thu, 23 Nov 2017 12:35:20 GMT): uber.twin (Thu, 23 Nov 2017 12:46:59 GMT): uber.twin (Thu, 23 Nov 2017 12:46:59 GMT): uber.twin (Thu, 23 Nov 2017 12:49:36 GMT): uber.twin (Thu, 23 Nov 2017 12:49:36 GMT): Nightlaw (Thu, 23 Nov 2017 12:50:42 GMT): uber.twin (Thu, 23 Nov 2017 13:17:33 GMT): ascatox (Thu, 23 Nov 2017 13:31:32 GMT): rthatcher (Thu, 23 Nov 2017 14:06:20 GMT): rthatcher (Thu, 23 Nov 2017 14:06:20 GMT): AkshayJindal (Thu, 23 Nov 2017 14:07:46 GMT): mahoney1 (Thu, 23 Nov 2017 14:11:12 GMT): rthatcher (Thu, 23 Nov 2017 14:12:34 GMT): AkshayJindal (Thu, 23 Nov 2017 14:23:32 GMT): mahoney1 (Thu, 23 Nov 2017 14:31:27 GMT): mahoney1 (Thu, 23 Nov 2017 14:31:27 GMT): jaguarg (Thu, 23 Nov 2017 14:33:52 GMT): uber.twin (Thu, 23 Nov 2017 14:45:20 GMT): sstone1 (Thu, 23 Nov 2017 14:55:00 GMT): mahoney1 (Thu, 23 Nov 2017 15:09:32 GMT): AkshayJindal (Thu, 23 Nov 2017 15:48:24 GMT): mahoney1 (Thu, 23 Nov 2017 16:00:03 GMT): mahoney1 (Thu, 23 Nov 2017 16:00:03 GMT): AkshayJindal (Thu, 23 Nov 2017 16:10:08 GMT): mahoney1 (Thu, 23 Nov 2017 16:32:18 GMT): mahoney1 (Thu, 23 Nov 2017 16:32:18 GMT): jaguarg (Thu, 23 Nov 2017 16:37:39 GMT): mahoney1 (Thu, 23 Nov 2017 16:37:47 GMT): uber.twin (Thu, 23 Nov 2017 16:43:19 GMT): Buckley404 (Thu, 23 Nov 2017 16:50:44 GMT): mahoney1 (Thu, 23 Nov 2017 17:26:49 GMT): mahoney1 (Thu, 23 Nov 2017 17:26:49 GMT): mahoney1 (Thu, 23 Nov 2017 17:26:49 GMT): mahoney1 (Thu, 23 Nov 2017 17:26:49 GMT): Buckley404 (Thu, 23 Nov 2017 17:35:43 GMT): Buckley404 (Thu, 23 Nov 2017 17:54:21 GMT): Buckley404 (Thu, 23 Nov 2017 17:54:30 GMT): Buckley404 (Thu, 23 Nov 2017 17:54:38 GMT): Buckley404 (Thu, 23 Nov 2017 17:55:12 GMT): lucasdf (Thu, 23 Nov 2017 18:29:49 GMT): greg2git (Thu, 23 Nov 2017 19:12:55 GMT): Buckley404 (Thu, 23 Nov 2017 19:19:57 GMT): Buckley404 (Thu, 23 Nov 2017 19:20:56 GMT): greg2git (Thu, 23 Nov 2017 19:28:56 GMT): Buckley404 (Thu, 23 Nov 2017 19:34:11 GMT): Buckley404 (Thu, 23 Nov 2017 19:34:35 GMT): Buckley404 (Thu, 23 Nov 2017 19:34:51 GMT): Buckley404 (Thu, 23 Nov 2017 19:35:08 GMT): mydavidbrown (Thu, 23 Nov 2017 21:31:27 GMT): jasoncys (Fri, 24 Nov 2017 03:54:00 GMT): jasoncys (Fri, 24 Nov 2017 04:01:13 GMT): jasoncys (Fri, 24 Nov 2017 04:02:06 GMT): AshutoshGupta (Fri, 24 Nov 2017 05:29:50 GMT): Akshatha (Fri, 24 Nov 2017 06:09:46 GMT): Akshatha (Fri, 24 Nov 2017 06:14:34 GMT): jasoncys (Fri, 24 Nov 2017 07:35:38 GMT): SimonOberzan (Fri, 24 Nov 2017 09:02:48 GMT): hounded (Fri, 24 Nov 2017 09:04:18 GMT): SimonOberzan (Fri, 24 Nov 2017 09:08:02 GMT): argman (Fri, 24 Nov 2017 09:35:26 GMT): argman (Fri, 24 Nov 2017 09:35:27 GMT): rthatcher (Fri, 24 Nov 2017 09:42:31 GMT): kmohanar (Fri, 24 Nov 2017 09:49:33 GMT): rthatcher (Fri, 24 Nov 2017 09:52:08 GMT): erNail (Fri, 24 Nov 2017 10:03:34 GMT): mahoney1 (Fri, 24 Nov 2017 10:27:10 GMT): rthatcher (Fri, 24 Nov 2017 10:29:24 GMT): mahoney1 (Fri, 24 Nov 2017 10:29:25 GMT): mahoney1 (Fri, 24 Nov 2017 10:29:25 GMT): erNail (Fri, 24 Nov 2017 10:32:08 GMT): mahoney1 (Fri, 24 Nov 2017 10:35:53 GMT): mahoney1 (Fri, 24 Nov 2017 10:35:53 GMT): mahoney1 (Fri, 24 Nov 2017 10:35:53 GMT): Buckley404 (Fri, 24 Nov 2017 10:36:44 GMT): erNail (Fri, 24 Nov 2017 10:47:14 GMT): ascatox (Fri, 24 Nov 2017 10:49:16 GMT): ascatox (Fri, 24 Nov 2017 10:50:58 GMT): rthatcher (Fri, 24 Nov 2017 11:15:41 GMT): erNail (Fri, 24 Nov 2017 11:35:32 GMT): kmohanar (Fri, 24 Nov 2017 11:39:13 GMT): davidkel (Fri, 24 Nov 2017 11:41:48 GMT): davidkel (Fri, 24 Nov 2017 11:41:48 GMT): erNail (Fri, 24 Nov 2017 11:52:15 GMT): davidkel (Fri, 24 Nov 2017 11:53:21 GMT): erNail (Fri, 24 Nov 2017 11:54:42 GMT): erNail (Fri, 24 Nov 2017 11:54:42 GMT): davidkel (Fri, 24 Nov 2017 11:55:24 GMT): erNail (Fri, 24 Nov 2017 11:55:55 GMT): davidkel (Fri, 24 Nov 2017 11:57:03 GMT): davidkel (Fri, 24 Nov 2017 11:57:03 GMT): davidkel (Fri, 24 Nov 2017 11:57:48 GMT): mahoney1 (Fri, 24 Nov 2017 12:08:22 GMT): mahoney1 (Fri, 24 Nov 2017 12:08:22 GMT): mahoney1 (Fri, 24 Nov 2017 12:08:22 GMT): mahoney1 (Fri, 24 Nov 2017 12:13:12 GMT): erNail (Fri, 24 Nov 2017 12:15:10 GMT): indira.kalagara (Fri, 24 Nov 2017 12:45:11 GMT): indira.kalagara (Fri, 24 Nov 2017 13:00:01 GMT): erNail (Fri, 24 Nov 2017 13:23:09 GMT): erNail (Fri, 24 Nov 2017 13:40:04 GMT): erNail (Fri, 24 Nov 2017 13:40:04 GMT): erNail (Fri, 24 Nov 2017 13:41:17 GMT): erNail (Fri, 24 Nov 2017 13:41:17 GMT): jasoncys (Fri, 24 Nov 2017 14:03:56 GMT): mahoney1 (Fri, 24 Nov 2017 14:05:08 GMT): AkshayJindal (Fri, 24 Nov 2017 14:38:36 GMT): AkshayJindal (Fri, 24 Nov 2017 14:39:30 GMT): AkshayJindal (Fri, 24 Nov 2017 14:47:23 GMT): mahoney1 (Fri, 24 Nov 2017 15:02:25 GMT): Hefziben (Fri, 24 Nov 2017 15:24:15 GMT): dselman (Fri, 24 Nov 2017 15:46:00 GMT): jon_s (Fri, 24 Nov 2017 15:59:41 GMT): AkshayJindal (Fri, 24 Nov 2017 16:02:15 GMT): AkshayJindal (Fri, 24 Nov 2017 16:02:15 GMT): AkshayJindal (Fri, 24 Nov 2017 16:02:15 GMT): rthatcher (Fri, 24 Nov 2017 16:10:46 GMT): jon_s (Fri, 24 Nov 2017 16:11:29 GMT): jon_s (Fri, 24 Nov 2017 16:12:16 GMT): sstone1 (Fri, 24 Nov 2017 16:13:40 GMT): AkshayJindal (Fri, 24 Nov 2017 16:14:18 GMT): Hefziben (Fri, 24 Nov 2017 16:16:06 GMT): jon_s (Fri, 24 Nov 2017 16:19:34 GMT): jon_s (Fri, 24 Nov 2017 16:19:55 GMT): jon_s (Fri, 24 Nov 2017 16:20:19 GMT): rthatcher (Fri, 24 Nov 2017 16:22:38 GMT): jon_s (Fri, 24 Nov 2017 16:24:34 GMT): mahoney1 (Fri, 24 Nov 2017 16:26:44 GMT): mahoney1 (Fri, 24 Nov 2017 16:26:44 GMT): mahoney1 (Fri, 24 Nov 2017 16:26:44 GMT): AkshayJindal (Fri, 24 Nov 2017 16:29:52 GMT): mahoney1 (Fri, 24 Nov 2017 16:38:41 GMT): zhenkunxu (Sat, 25 Nov 2017 03:35:24 GMT): jon_s (Sat, 25 Nov 2017 05:15:24 GMT): zhenkunxu (Sat, 25 Nov 2017 05:30:05 GMT): jon_s (Sat, 25 Nov 2017 11:48:25 GMT): jasoncys (Sat, 25 Nov 2017 12:49:38 GMT): jasoncys (Sat, 25 Nov 2017 12:55:53 GMT): sstone1 (Sat, 25 Nov 2017 13:21:02 GMT): sstone1 (Sat, 25 Nov 2017 13:21:58 GMT): y4izus (Sat, 25 Nov 2017 21:26:16 GMT): jasoncys (Sun, 26 Nov 2017 05:08:34 GMT): MuhammadSalah (Sun, 26 Nov 2017 11:52:15 GMT): nickyromeijn (Sun, 26 Nov 2017 12:23:14 GMT): nickyromeijn (Sun, 26 Nov 2017 12:23:57 GMT): nickyromeijn (Sun, 26 Nov 2017 12:23:57 GMT): jon_s (Sun, 26 Nov 2017 14:44:42 GMT): ssoima (Sun, 26 Nov 2017 16:43:27 GMT): dtylam (Sun, 26 Nov 2017 23:32:36 GMT): zhoujunshan (Mon, 27 Nov 2017 01:27:07 GMT): zach_tsang (Mon, 27 Nov 2017 02:16:50 GMT): berndoostrum (Mon, 27 Nov 2017 05:11:57 GMT): aneb (Mon, 27 Nov 2017 06:01:56 GMT): aneb (Mon, 27 Nov 2017 06:01:56 GMT): aneb (Mon, 27 Nov 2017 06:01:56 GMT): aneb (Mon, 27 Nov 2017 06:01:56 GMT): argman (Mon, 27 Nov 2017 06:04:30 GMT): prmdmshra (Mon, 27 Nov 2017 06:57:26 GMT): prmdmshra (Mon, 27 Nov 2017 06:57:26 GMT): andreasp1994 (Mon, 27 Nov 2017 06:58:32 GMT): summalho (Mon, 27 Nov 2017 07:26:50 GMT): summalho (Mon, 27 Nov 2017 07:26:57 GMT): summalho (Mon, 27 Nov 2017 07:28:00 GMT): UtkarshSingh (Mon, 27 Nov 2017 07:30:28 GMT): SimonOberzan (Mon, 27 Nov 2017 07:50:23 GMT): Alvin1122 (Mon, 27 Nov 2017 08:29:05 GMT): Alvin1122 (Mon, 27 Nov 2017 08:30:15 GMT): erNail (Mon, 27 Nov 2017 08:31:26 GMT): erNail (Mon, 27 Nov 2017 08:33:34 GMT): davidkel (Mon, 27 Nov 2017 08:35:26 GMT): davidkel (Mon, 27 Nov 2017 08:36:32 GMT): davidkel (Mon, 27 Nov 2017 08:37:55 GMT): rthatcher (Mon, 27 Nov 2017 09:43:36 GMT): mahoney1 (Mon, 27 Nov 2017 09:57:26 GMT): jon_s (Mon, 27 Nov 2017 10:07:52 GMT): mahoney1 (Mon, 27 Nov 2017 10:12:17 GMT): rthatcher (Mon, 27 Nov 2017 10:15:01 GMT): jon_s (Mon, 27 Nov 2017 10:15:32 GMT): jon_s (Mon, 27 Nov 2017 10:15:48 GMT): rthatcher (Mon, 27 Nov 2017 10:16:48 GMT): jon_s (Mon, 27 Nov 2017 10:17:40 GMT): jon_s (Mon, 27 Nov 2017 10:18:03 GMT): jon_s (Mon, 27 Nov 2017 10:31:50 GMT): rthatcher (Mon, 27 Nov 2017 10:35:16 GMT): argman (Mon, 27 Nov 2017 10:37:51 GMT): mahoney1 (Mon, 27 Nov 2017 10:48:12 GMT): mahoney1 (Mon, 27 Nov 2017 10:48:12 GMT): mahoney1 (Mon, 27 Nov 2017 10:48:12 GMT): rthatcher (Mon, 27 Nov 2017 11:18:29 GMT): jon_s (Mon, 27 Nov 2017 11:19:35 GMT): jon_s (Mon, 27 Nov 2017 11:33:53 GMT): jon_s (Mon, 27 Nov 2017 11:34:07 GMT): jon_s (Mon, 27 Nov 2017 11:34:13 GMT): jon_s (Mon, 27 Nov 2017 11:34:18 GMT): jon_s (Mon, 27 Nov 2017 11:34:26 GMT): jon_s (Mon, 27 Nov 2017 11:34:28 GMT): jon_s (Mon, 27 Nov 2017 11:43:33 GMT): aneb (Mon, 27 Nov 2017 12:04:38 GMT): aneb (Mon, 27 Nov 2017 12:05:35 GMT): aneb (Mon, 27 Nov 2017 12:05:35 GMT): aneb (Mon, 27 Nov 2017 12:05:35 GMT): MarlonLeif (Mon, 27 Nov 2017 13:42:57 GMT): kmohanar (Mon, 27 Nov 2017 14:15:31 GMT): kmohanar (Mon, 27 Nov 2017 14:16:55 GMT): kmohanar (Mon, 27 Nov 2017 14:16:55 GMT): JoshuaRippon (Mon, 27 Nov 2017 14:35:54 GMT): Jakeeyturner (Mon, 27 Nov 2017 14:40:38 GMT): JoshuaRippon (Mon, 27 Nov 2017 14:43:43 GMT): Jakeeyturner (Mon, 27 Nov 2017 14:45:44 GMT): Jakeeyturner (Mon, 27 Nov 2017 14:47:02 GMT): mahoney1 (Mon, 27 Nov 2017 14:55:58 GMT): mostafa.elsayyad (Mon, 27 Nov 2017 15:14:33 GMT): JoshuaRippon (Mon, 27 Nov 2017 15:37:31 GMT): mahoney1 (Mon, 27 Nov 2017 16:10:07 GMT): Jakeeyturner (Mon, 27 Nov 2017 16:20:42 GMT): mostafa.elsayyad (Mon, 27 Nov 2017 16:28:20 GMT): mahoney1 (Mon, 27 Nov 2017 16:39:53 GMT): mahoney1 (Mon, 27 Nov 2017 16:39:53 GMT): aneb (Mon, 27 Nov 2017 16:41:44 GMT): aneb (Mon, 27 Nov 2017 16:41:44 GMT): aneb (Mon, 27 Nov 2017 16:45:24 GMT): aneb (Mon, 27 Nov 2017 16:45:24 GMT): mostafa.elsayyad (Mon, 27 Nov 2017 16:51:44 GMT): mahoney1 (Mon, 27 Nov 2017 17:05:57 GMT): jon_s (Mon, 27 Nov 2017 17:29:45 GMT): jon_s (Mon, 27 Nov 2017 17:30:01 GMT): jon_s (Mon, 27 Nov 2017 17:30:04 GMT): jon_s (Mon, 27 Nov 2017 17:37:33 GMT): jon_s (Mon, 27 Nov 2017 17:37:55 GMT): JoshuaRippon (Mon, 27 Nov 2017 17:52:00 GMT): InduBhatti (Mon, 27 Nov 2017 17:55:07 GMT): InduBhatti (Mon, 27 Nov 2017 17:56:04 GMT): InduBhatti (Mon, 27 Nov 2017 17:56:34 GMT): shabscan (Mon, 27 Nov 2017 17:58:10 GMT): InduBhatti (Mon, 27 Nov 2017 17:58:53 GMT): InduBhatti (Mon, 27 Nov 2017 17:58:53 GMT): InduBhatti (Mon, 27 Nov 2017 17:59:16 GMT): rthatcher (Mon, 27 Nov 2017 18:01:56 GMT): jon_s (Mon, 27 Nov 2017 18:10:18 GMT): jon_s (Mon, 27 Nov 2017 18:11:06 GMT): kofman.alex@gmail.com (Mon, 27 Nov 2017 18:21:52 GMT): kofman.alex@gmail.com (Mon, 27 Nov 2017 18:21:52 GMT): kofman.alex@gmail.com (Mon, 27 Nov 2017 18:21:52 GMT): jon_s (Mon, 27 Nov 2017 18:32:56 GMT): smpakes (Mon, 27 Nov 2017 20:08:03 GMT): aneb (Tue, 28 Nov 2017 01:53:47 GMT): aneb (Tue, 28 Nov 2017 01:53:47 GMT): aneb (Tue, 28 Nov 2017 01:53:47 GMT): aneb (Tue, 28 Nov 2017 01:53:47 GMT): tennenjl (Tue, 28 Nov 2017 02:39:36 GMT): AkhilBhavirisetty (Tue, 28 Nov 2017 02:53:28 GMT): AkhilBhavirisetty (Tue, 28 Nov 2017 02:55:40 GMT): prmdmshra (Tue, 28 Nov 2017 03:46:35 GMT): zhoujunshan (Tue, 28 Nov 2017 04:45:29 GMT): zhoujunshan (Tue, 28 Nov 2017 04:45:59 GMT): zhoujunshan (Tue, 28 Nov 2017 04:46:41 GMT): prabhat.kashyap (Tue, 28 Nov 2017 05:09:20 GMT): jon_s (Tue, 28 Nov 2017 06:09:00 GMT): jon_s (Tue, 28 Nov 2017 06:09:24 GMT): jon_s (Tue, 28 Nov 2017 06:09:26 GMT): jon_s (Tue, 28 Nov 2017 06:42:17 GMT): sravs (Tue, 28 Nov 2017 07:22:34 GMT): sravs (Tue, 28 Nov 2017 07:23:31 GMT): sravs (Tue, 28 Nov 2017 07:24:12 GMT): PulkitGupta (Tue, 28 Nov 2017 07:41:25 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 08:10:48 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 08:10:48 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 08:10:48 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 08:12:39 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 08:13:44 GMT): jon_s (Tue, 28 Nov 2017 08:17:48 GMT): jon_s (Tue, 28 Nov 2017 08:17:55 GMT): UdayCTO (Tue, 28 Nov 2017 09:06:23 GMT): UdayCTO (Tue, 28 Nov 2017 09:08:56 GMT): UdayCTO (Tue, 28 Nov 2017 09:09:35 GMT): rthatcher (Tue, 28 Nov 2017 09:50:22 GMT): rthatcher (Tue, 28 Nov 2017 09:50:22 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 09:59:48 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 09:59:58 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:00:21 GMT): rthatcher (Tue, 28 Nov 2017 10:04:18 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:11:31 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:11:32 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:12:58 GMT): rthatcher (Tue, 28 Nov 2017 10:13:15 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:13:51 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:16:27 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:16:28 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:18:02 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:18:11 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:18:34 GMT): rthatcher (Tue, 28 Nov 2017 10:20:03 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:20:44 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:21:29 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:21:32 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:24:23 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:24:24 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:26:40 GMT): rthatcher (Tue, 28 Nov 2017 10:27:11 GMT): rthatcher (Tue, 28 Nov 2017 10:31:56 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:32:54 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:33:08 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:37:52 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:37:52 GMT): rthatcher (Tue, 28 Nov 2017 10:38:33 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:39:19 GMT): rthatcher (Tue, 28 Nov 2017 10:41:15 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:41:19 GMT): Nightlaw (Tue, 28 Nov 2017 10:45:38 GMT): mahoney1 (Tue, 28 Nov 2017 10:47:59 GMT): mahoney1 (Tue, 28 Nov 2017 10:47:59 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:48:02 GMT): yogesh.fulsunge (Tue, 28 Nov 2017 10:48:41 GMT): uber.twin (Tue, 28 Nov 2017 12:04:12 GMT): rthatcher (Tue, 28 Nov 2017 12:12:09 GMT): sravs (Tue, 28 Nov 2017 12:49:27 GMT): sravs (Tue, 28 Nov 2017 12:49:57 GMT): sravs (Tue, 28 Nov 2017 12:50:26 GMT): mahoney1 (Tue, 28 Nov 2017 13:07:19 GMT): mahoney1 (Tue, 28 Nov 2017 13:07:19 GMT): mahoney1 (Tue, 28 Nov 2017 13:07:19 GMT): mahoney1 (Tue, 28 Nov 2017 13:07:19 GMT): mahoney1 (Tue, 28 Nov 2017 13:07:19 GMT): mahoney1 (Tue, 28 Nov 2017 13:07:19 GMT): eheyward (Tue, 28 Nov 2017 13:26:44 GMT): toneady (Tue, 28 Nov 2017 13:28:37 GMT): lucasdf (Tue, 28 Nov 2017 13:29:10 GMT): lucasdf (Tue, 28 Nov 2017 13:29:10 GMT): lucasdf (Tue, 28 Nov 2017 13:29:10 GMT): luminance (Tue, 28 Nov 2017 13:33:59 GMT): luminance (Tue, 28 Nov 2017 13:33:59 GMT): sstone1 (Tue, 28 Nov 2017 13:53:24 GMT): mahoney1 (Tue, 28 Nov 2017 13:54:52 GMT): rthatcher (Tue, 28 Nov 2017 13:56:34 GMT): rthatcher (Tue, 28 Nov 2017 13:56:34 GMT): lucasdf (Tue, 28 Nov 2017 14:17:02 GMT): lucasdf (Tue, 28 Nov 2017 14:17:02 GMT): bsteinfeld (Tue, 28 Nov 2017 15:04:22 GMT): bsteinfeld (Tue, 28 Nov 2017 15:07:31 GMT): bsteinfeld (Tue, 28 Nov 2017 15:08:16 GMT): mahoney1 (Tue, 28 Nov 2017 15:16:21 GMT): mahoney1 (Tue, 28 Nov 2017 15:16:21 GMT): bsteinfeld (Tue, 28 Nov 2017 15:24:17 GMT): bsteinfeld (Tue, 28 Nov 2017 15:26:08 GMT): mahoney1 (Tue, 28 Nov 2017 15:28:40 GMT): jdockter (Tue, 28 Nov 2017 15:29:07 GMT): mahoney1 (Tue, 28 Nov 2017 15:56:33 GMT): jon_s (Tue, 28 Nov 2017 15:56:58 GMT): jdockter (Tue, 28 Nov 2017 15:57:24 GMT): mahoney1 (Tue, 28 Nov 2017 16:02:13 GMT): jon_s (Tue, 28 Nov 2017 16:08:45 GMT): bsteinfeld (Tue, 28 Nov 2017 16:09:29 GMT): jon_s (Tue, 28 Nov 2017 16:19:00 GMT): jon_s (Tue, 28 Nov 2017 16:25:48 GMT): uber.twin (Tue, 28 Nov 2017 16:28:29 GMT): rthatcher (Tue, 28 Nov 2017 16:34:41 GMT): uber.twin (Tue, 28 Nov 2017 16:44:17 GMT): umamani113 (Tue, 28 Nov 2017 17:50:35 GMT): mahoney1 (Tue, 28 Nov 2017 17:56:11 GMT): mahoney1 (Tue, 28 Nov 2017 18:04:02 GMT): umamani113 (Tue, 28 Nov 2017 18:04:32 GMT): umamani113 (Tue, 28 Nov 2017 18:04:32 GMT): umamani113 (Tue, 28 Nov 2017 18:04:32 GMT): jdockter (Tue, 28 Nov 2017 18:04:45 GMT): jon_s (Tue, 28 Nov 2017 18:16:12 GMT): sttorry (Tue, 28 Nov 2017 20:37:15 GMT): sttorry (Tue, 28 Nov 2017 20:45:29 GMT): AkhilBhavirisetty (Tue, 28 Nov 2017 23:02:39 GMT): aneb (Wed, 29 Nov 2017 01:53:40 GMT): aneb (Wed, 29 Nov 2017 01:53:40 GMT): aneb (Wed, 29 Nov 2017 01:53:40 GMT): aneb (Wed, 29 Nov 2017 01:53:40 GMT): aneb (Wed, 29 Nov 2017 01:53:40 GMT): johnz (Wed, 29 Nov 2017 02:42:39 GMT): yrzr (Wed, 29 Nov 2017 03:18:53 GMT): UdayCTO (Wed, 29 Nov 2017 03:55:11 GMT): mostafa.elsayyad (Wed, 29 Nov 2017 07:18:01 GMT): ra_w (Wed, 29 Nov 2017 07:26:17 GMT): umamani113 (Wed, 29 Nov 2017 07:32:27 GMT): mostafa.elsayyad (Wed, 29 Nov 2017 07:36:10 GMT): mahoney1 (Wed, 29 Nov 2017 08:08:27 GMT): sravs (Wed, 29 Nov 2017 09:08:57 GMT): sravs (Wed, 29 Nov 2017 09:10:46 GMT): sravs (Wed, 29 Nov 2017 09:12:21 GMT): mostafa.elsayyad (Wed, 29 Nov 2017 09:13:29 GMT): wininani (Wed, 29 Nov 2017 09:28:01 GMT): wininani (Wed, 29 Nov 2017 09:28:01 GMT): aneb (Wed, 29 Nov 2017 09:28:10 GMT): sravs (Wed, 29 Nov 2017 09:29:48 GMT): maris.c (Wed, 29 Nov 2017 09:39:45 GMT): maris.c (Wed, 29 Nov 2017 09:45:23 GMT): rthatcher (Wed, 29 Nov 2017 09:45:59 GMT): Sivapavani (Wed, 29 Nov 2017 09:49:43 GMT): wininani (Wed, 29 Nov 2017 09:50:22 GMT): Sivapavani (Wed, 29 Nov 2017 09:51:36 GMT): Sivapavani (Wed, 29 Nov 2017 09:51:48 GMT): Manasabingi (Wed, 29 Nov 2017 09:52:23 GMT): mahoney1 (Wed, 29 Nov 2017 09:54:35 GMT): rthatcher (Wed, 29 Nov 2017 09:54:41 GMT): rthatcher (Wed, 29 Nov 2017 09:56:12 GMT): wininani (Wed, 29 Nov 2017 09:58:03 GMT): sravs (Wed, 29 Nov 2017 09:58:24 GMT): sravs (Wed, 29 Nov 2017 09:58:27 GMT): wininani (Wed, 29 Nov 2017 09:58:58 GMT): wininani (Wed, 29 Nov 2017 09:59:50 GMT): maris.c (Wed, 29 Nov 2017 10:02:40 GMT): rthatcher (Wed, 29 Nov 2017 10:03:14 GMT): sravs (Wed, 29 Nov 2017 10:06:49 GMT): rthatcher (Wed, 29 Nov 2017 10:06:57 GMT): sravs (Wed, 29 Nov 2017 10:07:24 GMT): rthatcher (Wed, 29 Nov 2017 10:08:20 GMT): wininani (Wed, 29 Nov 2017 10:08:36 GMT): wininani (Wed, 29 Nov 2017 10:09:35 GMT): sravs (Wed, 29 Nov 2017 10:11:48 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 10:17:13 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 10:17:39 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 10:18:39 GMT): rthatcher (Wed, 29 Nov 2017 10:22:06 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 10:24:21 GMT): wininani (Wed, 29 Nov 2017 10:25:44 GMT): sravs (Wed, 29 Nov 2017 10:26:57 GMT): rthatcher (Wed, 29 Nov 2017 10:27:34 GMT): sravs (Wed, 29 Nov 2017 10:27:49 GMT): sravs (Wed, 29 Nov 2017 10:28:05 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 10:30:59 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 10:31:19 GMT): rthatcher (Wed, 29 Nov 2017 10:31:29 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 10:32:00 GMT): wininani (Wed, 29 Nov 2017 10:37:01 GMT): rthatcher (Wed, 29 Nov 2017 10:37:29 GMT): wininani (Wed, 29 Nov 2017 10:37:32 GMT): rthatcher (Wed, 29 Nov 2017 10:38:48 GMT): wininani (Wed, 29 Nov 2017 10:40:57 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 10:46:13 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 10:46:39 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 10:46:50 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 10:47:24 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 10:47:29 GMT): rthatcher (Wed, 29 Nov 2017 10:54:45 GMT): pradeeppadmarajaiah (Wed, 29 Nov 2017 11:00:03 GMT): pradeeppadmarajaiah (Wed, 29 Nov 2017 11:00:03 GMT): mostafa.elsayyad (Wed, 29 Nov 2017 11:00:16 GMT): mostafa.elsayyad (Wed, 29 Nov 2017 11:00:16 GMT): mostafa.elsayyad (Wed, 29 Nov 2017 11:00:16 GMT): erNail (Wed, 29 Nov 2017 11:11:20 GMT): rthatcher (Wed, 29 Nov 2017 11:15:39 GMT): mostafa.elsayyad (Wed, 29 Nov 2017 11:19:29 GMT): arol (Wed, 29 Nov 2017 11:32:18 GMT): rthatcher (Wed, 29 Nov 2017 11:35:37 GMT): arol (Wed, 29 Nov 2017 11:37:49 GMT): erNail (Wed, 29 Nov 2017 11:38:21 GMT): rthatcher (Wed, 29 Nov 2017 11:51:13 GMT): rthatcher (Wed, 29 Nov 2017 12:00:37 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 12:03:03 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 12:03:29 GMT): rthatcher (Wed, 29 Nov 2017 12:05:31 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 12:06:42 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 12:07:03 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 12:07:19 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 12:08:22 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 12:08:37 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 12:12:07 GMT): rthatcher (Wed, 29 Nov 2017 12:15:52 GMT): deepakvin (Wed, 29 Nov 2017 12:19:13 GMT): deepakvin (Wed, 29 Nov 2017 12:21:57 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 12:26:06 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 12:26:08 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 12:26:17 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 12:31:50 GMT): JayasreeVenugopal (Wed, 29 Nov 2017 12:32:18 GMT): rthatcher (Wed, 29 Nov 2017 12:45:15 GMT): rthatcher (Wed, 29 Nov 2017 12:45:15 GMT): rthatcher (Wed, 29 Nov 2017 12:51:02 GMT): yogesh.fulsunge (Wed, 29 Nov 2017 13:04:43 GMT): Manasabingi (Wed, 29 Nov 2017 13:11:21 GMT): Manasabingi (Wed, 29 Nov 2017 13:11:38 GMT): UdayCTO (Wed, 29 Nov 2017 13:12:01 GMT): argman (Wed, 29 Nov 2017 13:18:13 GMT): argman (Wed, 29 Nov 2017 13:18:17 GMT): rthatcher (Wed, 29 Nov 2017 13:38:37 GMT): rthatcher (Wed, 29 Nov 2017 13:46:33 GMT): argman (Wed, 29 Nov 2017 14:00:04 GMT): argman (Wed, 29 Nov 2017 14:00:07 GMT): argman (Wed, 29 Nov 2017 14:01:36 GMT): argman (Wed, 29 Nov 2017 14:03:12 GMT): argman (Wed, 29 Nov 2017 14:03:44 GMT): argman (Wed, 29 Nov 2017 14:04:25 GMT): luminance (Wed, 29 Nov 2017 14:15:05 GMT): rthatcher (Wed, 29 Nov 2017 14:16:41 GMT): rthatcher (Wed, 29 Nov 2017 14:16:41 GMT): rthatcher (Wed, 29 Nov 2017 14:16:41 GMT): rthatcher (Wed, 29 Nov 2017 14:30:20 GMT): argman (Wed, 29 Nov 2017 14:33:46 GMT): IssaAmit (Wed, 29 Nov 2017 14:34:04 GMT): IssaAmit (Wed, 29 Nov 2017 14:34:54 GMT): luminance (Wed, 29 Nov 2017 14:37:43 GMT): luminance (Wed, 29 Nov 2017 14:37:43 GMT): rthatcher (Wed, 29 Nov 2017 14:45:19 GMT): luminance (Wed, 29 Nov 2017 14:53:01 GMT): luminance (Wed, 29 Nov 2017 14:53:01 GMT): luminance (Wed, 29 Nov 2017 14:53:01 GMT): prmdmshra (Wed, 29 Nov 2017 14:59:23 GMT): rthatcher (Wed, 29 Nov 2017 15:01:31 GMT): tanvirmahtab (Wed, 29 Nov 2017 15:07:51 GMT): tanvirmahtab (Wed, 29 Nov 2017 15:11:25 GMT): rthatcher (Wed, 29 Nov 2017 15:18:37 GMT): uber.twin (Wed, 29 Nov 2017 15:19:41 GMT): uber.twin (Wed, 29 Nov 2017 15:21:24 GMT): rthatcher (Wed, 29 Nov 2017 15:36:01 GMT): arol (Wed, 29 Nov 2017 15:36:20 GMT): uber.twin (Wed, 29 Nov 2017 15:39:05 GMT): uber.twin (Wed, 29 Nov 2017 15:39:05 GMT): uber.twin (Wed, 29 Nov 2017 15:39:05 GMT): uber.twin (Wed, 29 Nov 2017 15:40:07 GMT): uber.twin (Wed, 29 Nov 2017 15:40:07 GMT): mahoney1 (Wed, 29 Nov 2017 16:56:11 GMT): IssaAmit (Wed, 29 Nov 2017 17:46:41 GMT): alisonb (Wed, 29 Nov 2017 17:52:08 GMT): alisonb (Wed, 29 Nov 2017 17:52:08 GMT): davidkel (Wed, 29 Nov 2017 18:14:18 GMT): davidkel (Wed, 29 Nov 2017 18:14:18 GMT): SanjivBhatia (Wed, 29 Nov 2017 18:39:25 GMT): AkhilBhavirisetty (Wed, 29 Nov 2017 18:54:19 GMT): SanjivBhatia (Wed, 29 Nov 2017 18:54:35 GMT): davidkel (Wed, 29 Nov 2017 19:03:42 GMT): SanjivBhatia (Wed, 29 Nov 2017 19:18:52 GMT): davidkel (Wed, 29 Nov 2017 19:31:53 GMT): davidkel (Wed, 29 Nov 2017 19:31:53 GMT): compleatang (Wed, 29 Nov 2017 19:54:51 GMT): CT123 (Wed, 29 Nov 2017 19:59:05 GMT): sstone1 (Wed, 29 Nov 2017 20:03:43 GMT): SanjivBhatia (Wed, 29 Nov 2017 20:05:48 GMT): CT123 (Wed, 29 Nov 2017 20:25:00 GMT): theathibm (Wed, 29 Nov 2017 20:32:01 GMT): sstone1 (Wed, 29 Nov 2017 20:36:46 GMT): theathibm (Wed, 29 Nov 2017 20:36:58 GMT): theathibm (Wed, 29 Nov 2017 20:37:13 GMT): CT123 (Wed, 29 Nov 2017 20:39:30 GMT): sstone1 (Wed, 29 Nov 2017 20:40:52 GMT): sstone1 (Wed, 29 Nov 2017 20:41:06 GMT): sstone1 (Wed, 29 Nov 2017 20:41:24 GMT): CT123 (Wed, 29 Nov 2017 20:45:49 GMT): hounded (Wed, 29 Nov 2017 20:53:45 GMT): hounded (Wed, 29 Nov 2017 20:53:45 GMT): hounded (Wed, 29 Nov 2017 20:53:49 GMT): hounded (Wed, 29 Nov 2017 20:54:38 GMT): hounded (Wed, 29 Nov 2017 20:54:38 GMT): pradeeppadmarajaiah (Wed, 29 Nov 2017 20:54:54 GMT): yipcma (Wed, 29 Nov 2017 21:31:10 GMT): yipcma (Wed, 29 Nov 2017 21:39:37 GMT): toddinpal (Wed, 29 Nov 2017 23:11:10 GMT): toddinpal (Wed, 29 Nov 2017 23:13:10 GMT): davidkel (Wed, 29 Nov 2017 23:14:03 GMT): toddinpal (Wed, 29 Nov 2017 23:14:36 GMT): davidkel (Wed, 29 Nov 2017 23:14:56 GMT): toddinpal (Wed, 29 Nov 2017 23:17:48 GMT): toddinpal (Wed, 29 Nov 2017 23:18:14 GMT): davidkel (Wed, 29 Nov 2017 23:18:48 GMT): toddinpal (Wed, 29 Nov 2017 23:19:26 GMT): toddinpal (Wed, 29 Nov 2017 23:20:07 GMT): davidkel (Wed, 29 Nov 2017 23:21:00 GMT): toddinpal (Wed, 29 Nov 2017 23:21:58 GMT): davidkel (Wed, 29 Nov 2017 23:27:37 GMT): davidkel (Wed, 29 Nov 2017 23:29:13 GMT): hounded (Wed, 29 Nov 2017 23:30:05 GMT): AkhilBhavirisetty (Wed, 29 Nov 2017 23:47:46 GMT): AkhilBhavirisetty (Wed, 29 Nov 2017 23:48:06 GMT): AkhilBhavirisetty (Wed, 29 Nov 2017 23:49:28 GMT): AkhilBhavirisetty (Wed, 29 Nov 2017 23:50:01 GMT): AkhilBhavirisetty (Wed, 29 Nov 2017 23:53:06 GMT): AkhilBhavirisetty (Wed, 29 Nov 2017 23:53:08 GMT): SanjivBhatia (Thu, 30 Nov 2017 01:12:13 GMT): SanjivBhatia (Thu, 30 Nov 2017 01:13:13 GMT): meda0719 (Thu, 30 Nov 2017 01:48:57 GMT): aneb (Thu, 30 Nov 2017 04:08:16 GMT): aneb (Thu, 30 Nov 2017 04:08:16 GMT): umamani113 (Thu, 30 Nov 2017 04:35:42 GMT): Manasabingi (Thu, 30 Nov 2017 05:23:48 GMT): ra_w (Thu, 30 Nov 2017 05:33:47 GMT): JayasreeVenugopal (Thu, 30 Nov 2017 06:26:50 GMT): JayasreeVenugopal (Thu, 30 Nov 2017 06:26:56 GMT): davidkel (Thu, 30 Nov 2017 06:57:13 GMT): argman (Thu, 30 Nov 2017 07:21:56 GMT): prmdmshra (Thu, 30 Nov 2017 07:36:55 GMT): wininani (Thu, 30 Nov 2017 07:39:11 GMT): davidkel (Thu, 30 Nov 2017 08:13:16 GMT): RobHekkelman (Thu, 30 Nov 2017 08:52:51 GMT): yipcma (Thu, 30 Nov 2017 09:10:30 GMT): mahoney1 (Thu, 30 Nov 2017 09:58:00 GMT): mahoney1 (Thu, 30 Nov 2017 10:02:20 GMT): alisonb (Thu, 30 Nov 2017 10:11:17 GMT): mahoney1 (Thu, 30 Nov 2017 10:23:02 GMT): JayasreeVenugopal (Thu, 30 Nov 2017 10:26:36 GMT): wininani (Thu, 30 Nov 2017 10:27:43 GMT): GulamJilani (Thu, 30 Nov 2017 10:33:57 GMT): GulamJilani (Thu, 30 Nov 2017 10:34:53 GMT): prmdmshra (Thu, 30 Nov 2017 10:43:28 GMT): mahoney1 (Thu, 30 Nov 2017 10:51:18 GMT): mahoney1 (Thu, 30 Nov 2017 10:51:18 GMT): mahoney1 (Thu, 30 Nov 2017 10:53:48 GMT): JayasreeVenugopal (Thu, 30 Nov 2017 10:54:28 GMT): base128 (Thu, 30 Nov 2017 10:54:55 GMT): JayasreeVenugopal (Thu, 30 Nov 2017 10:55:35 GMT): JayasreeVenugopal (Thu, 30 Nov 2017 10:55:55 GMT): JayasreeVenugopal (Thu, 30 Nov 2017 10:56:10 GMT): mahoney1 (Thu, 30 Nov 2017 10:58:56 GMT): mayur.relekar (Thu, 30 Nov 2017 11:12:04 GMT): RobHekkelman (Thu, 30 Nov 2017 11:19:21 GMT): SanjivBhatia (Thu, 30 Nov 2017 11:23:20 GMT): argman (Thu, 30 Nov 2017 11:52:34 GMT): mahoney1 (Thu, 30 Nov 2017 12:16:55 GMT): JayasreeVenugopal (Thu, 30 Nov 2017 12:18:36 GMT): JayasreeVenugopal (Thu, 30 Nov 2017 12:19:05 GMT): JayasreeVenugopal (Thu, 30 Nov 2017 12:19:29 GMT): mahoney1 (Thu, 30 Nov 2017 12:22:03 GMT): mayur.relekar (Thu, 30 Nov 2017 12:26:31 GMT): mayur.relekar (Thu, 30 Nov 2017 12:26:59 GMT): wininani (Thu, 30 Nov 2017 12:30:15 GMT): mahoney1 (Thu, 30 Nov 2017 12:31:23 GMT): mahoney1 (Thu, 30 Nov 2017 12:38:50 GMT): mahoney1 (Thu, 30 Nov 2017 12:38:50 GMT): mahoney1 (Thu, 30 Nov 2017 12:38:50 GMT): AkshayJindal (Thu, 30 Nov 2017 12:41:33 GMT): mayur.relekar (Thu, 30 Nov 2017 12:45:02 GMT): mahoney1 (Thu, 30 Nov 2017 12:45:33 GMT): mahoney1 (Thu, 30 Nov 2017 12:47:36 GMT): mahoney1 (Thu, 30 Nov 2017 12:47:55 GMT): SanjivBhatia (Thu, 30 Nov 2017 12:59:36 GMT): rthatcher (Thu, 30 Nov 2017 13:18:15 GMT): rthatcher (Thu, 30 Nov 2017 13:18:15 GMT): Manasabingi (Thu, 30 Nov 2017 13:21:03 GMT): Manasabingi (Thu, 30 Nov 2017 13:21:15 GMT): Manasabingi (Thu, 30 Nov 2017 13:23:55 GMT): Manasabingi (Thu, 30 Nov 2017 13:27:30 GMT): rthatcher (Thu, 30 Nov 2017 13:32:10 GMT): Manasabingi (Thu, 30 Nov 2017 13:33:44 GMT): AkshayJindal (Thu, 30 Nov 2017 13:55:07 GMT): AkshayJindal (Thu, 30 Nov 2017 13:55:07 GMT): mahoney1 (Thu, 30 Nov 2017 13:59:24 GMT): InduBhatti (Thu, 30 Nov 2017 14:58:17 GMT): InduBhatti (Thu, 30 Nov 2017 14:58:47 GMT): InduBhatti (Thu, 30 Nov 2017 14:59:10 GMT): InduBhatti (Thu, 30 Nov 2017 14:59:27 GMT): InduBhatti (Thu, 30 Nov 2017 15:00:19 GMT): rthatcher (Thu, 30 Nov 2017 15:04:32 GMT): InduBhatti (Thu, 30 Nov 2017 15:05:42 GMT): InduBhatti (Thu, 30 Nov 2017 15:05:54 GMT): rthatcher (Thu, 30 Nov 2017 15:07:43 GMT): InduBhatti (Thu, 30 Nov 2017 15:08:11 GMT): InduBhatti (Thu, 30 Nov 2017 15:09:38 GMT): rthatcher (Thu, 30 Nov 2017 15:11:47 GMT): InduBhatti (Thu, 30 Nov 2017 15:14:55 GMT): nasht00 (Thu, 30 Nov 2017 15:19:04 GMT): InduBhatti (Thu, 30 Nov 2017 15:21:26 GMT): InduBhatti (Thu, 30 Nov 2017 15:22:04 GMT): nasht00 (Thu, 30 Nov 2017 15:22:10 GMT): InduBhatti (Thu, 30 Nov 2017 15:22:27 GMT): InduBhatti (Thu, 30 Nov 2017 15:22:46 GMT): InduBhatti (Thu, 30 Nov 2017 15:22:46 GMT): InduBhatti (Thu, 30 Nov 2017 15:24:29 GMT): InduBhatti (Thu, 30 Nov 2017 15:26:21 GMT): InduBhatti (Thu, 30 Nov 2017 15:27:23 GMT): rthatcher (Thu, 30 Nov 2017 15:32:36 GMT): InduBhatti (Thu, 30 Nov 2017 15:33:41 GMT): rthatcher (Thu, 30 Nov 2017 15:34:57 GMT): AkshayJindal (Thu, 30 Nov 2017 15:35:09 GMT): AkshayJindal (Thu, 30 Nov 2017 15:35:09 GMT): InduBhatti (Thu, 30 Nov 2017 15:40:31 GMT): InduBhatti (Thu, 30 Nov 2017 15:40:42 GMT): InduBhatti (Thu, 30 Nov 2017 15:52:05 GMT): CT123 (Thu, 30 Nov 2017 15:52:19 GMT): davidkel (Thu, 30 Nov 2017 15:58:13 GMT): meridian (Thu, 30 Nov 2017 15:59:40 GMT): rthatcher (Thu, 30 Nov 2017 16:13:00 GMT): InduBhatti (Thu, 30 Nov 2017 16:14:37 GMT): CT123 (Thu, 30 Nov 2017 16:16:46 GMT): InduBhatti (Thu, 30 Nov 2017 16:19:00 GMT): InduBhatti (Thu, 30 Nov 2017 16:20:12 GMT): davidkel (Thu, 30 Nov 2017 16:24:43 GMT): rthatcher (Thu, 30 Nov 2017 16:29:47 GMT): InduBhatti (Thu, 30 Nov 2017 16:30:06 GMT): InduBhatti (Thu, 30 Nov 2017 16:30:17 GMT): rthatcher (Thu, 30 Nov 2017 16:32:45 GMT): InduBhatti (Thu, 30 Nov 2017 16:33:14 GMT): rthatcher (Thu, 30 Nov 2017 16:37:27 GMT): InduBhatti (Thu, 30 Nov 2017 16:38:50 GMT): rthatcher (Thu, 30 Nov 2017 16:41:45 GMT): mahoney1 (Thu, 30 Nov 2017 16:42:18 GMT): InduBhatti (Thu, 30 Nov 2017 16:42:53 GMT): CT123 (Thu, 30 Nov 2017 16:52:00 GMT): mahoney1 (Thu, 30 Nov 2017 16:52:46 GMT): mahoney1 (Thu, 30 Nov 2017 16:52:46 GMT): mahoney1 (Thu, 30 Nov 2017 16:52:46 GMT): ankashu (Thu, 30 Nov 2017 17:30:44 GMT): AkshayJindal (Thu, 30 Nov 2017 17:31:58 GMT): AkshayJindal (Thu, 30 Nov 2017 17:31:58 GMT): ankashu (Thu, 30 Nov 2017 17:32:35 GMT): AkshayJindal (Thu, 30 Nov 2017 17:34:01 GMT): ankashu (Thu, 30 Nov 2017 17:36:09 GMT): ankashu (Thu, 30 Nov 2017 17:36:17 GMT): ankashu (Thu, 30 Nov 2017 17:36:57 GMT): mahoney1 (Thu, 30 Nov 2017 17:37:28 GMT): mahoney1 (Thu, 30 Nov 2017 17:37:28 GMT): AkshayJindal (Thu, 30 Nov 2017 17:42:48 GMT): mahoney1 (Thu, 30 Nov 2017 17:47:31 GMT): mbharadwaj (Thu, 30 Nov 2017 18:00:12 GMT): InduBhatti (Thu, 30 Nov 2017 19:35:03 GMT): InduBhatti (Thu, 30 Nov 2017 19:35:17 GMT): InduBhatti (Thu, 30 Nov 2017 19:35:29 GMT): InduBhatti (Thu, 30 Nov 2017 19:35:29 GMT): InduBhatti (Thu, 30 Nov 2017 19:35:29 GMT): InduBhatti (Thu, 30 Nov 2017 19:35:29 GMT): yipcma (Thu, 30 Nov 2017 20:17:12 GMT): InduBhatti (Thu, 30 Nov 2017 20:24:18 GMT): iamprem (Thu, 30 Nov 2017 21:54:22 GMT): downTheFallLine (Fri, 01 Dec 2017 04:42:02 GMT): JayasreeVenugopal (Fri, 01 Dec 2017 04:53:18 GMT): JayasreeVenugopal (Fri, 01 Dec 2017 04:53:47 GMT): JayasreeVenugopal (Fri, 01 Dec 2017 04:54:40 GMT): mvaibhavshah (Fri, 01 Dec 2017 04:59:13 GMT): mvaibhavshah (Fri, 01 Dec 2017 04:59:18 GMT): argman (Fri, 01 Dec 2017 06:19:30 GMT): yahiaalaa (Fri, 01 Dec 2017 06:30:04 GMT): yahiaalaa (Fri, 01 Dec 2017 06:30:53 GMT): Alvin1122 (Fri, 01 Dec 2017 07:32:47 GMT): Alvin1122 (Fri, 01 Dec 2017 07:44:57 GMT): yipcma (Fri, 01 Dec 2017 08:10:33 GMT): argman (Fri, 01 Dec 2017 08:21:09 GMT): dselman (Fri, 01 Dec 2017 08:51:01 GMT): yipcma (Fri, 01 Dec 2017 08:51:32 GMT): yipcma (Fri, 01 Dec 2017 08:52:09 GMT): yipcma (Fri, 01 Dec 2017 08:52:09 GMT): dselman (Fri, 01 Dec 2017 08:52:18 GMT): yipcma (Fri, 01 Dec 2017 08:52:53 GMT): dselman (Fri, 01 Dec 2017 08:53:28 GMT): yipcma (Fri, 01 Dec 2017 08:54:41 GMT): mahoney1 (Fri, 01 Dec 2017 09:38:43 GMT): mvaibhavshah (Fri, 01 Dec 2017 09:41:23 GMT): mahoney1 (Fri, 01 Dec 2017 09:58:35 GMT): mahoney1 (Fri, 01 Dec 2017 09:58:35 GMT): yipcma (Fri, 01 Dec 2017 10:10:09 GMT): yipcma (Fri, 01 Dec 2017 10:10:09 GMT): dselman (Fri, 01 Dec 2017 10:15:59 GMT): dselman (Fri, 01 Dec 2017 10:16:08 GMT): mvaibhavshah (Fri, 01 Dec 2017 10:17:42 GMT): yipcma (Fri, 01 Dec 2017 10:18:40 GMT): yipcma (Fri, 01 Dec 2017 10:19:19 GMT): yipcma (Fri, 01 Dec 2017 10:21:29 GMT): yipcma (Fri, 01 Dec 2017 10:21:29 GMT): yipcma (Fri, 01 Dec 2017 10:21:29 GMT): rthatcher (Fri, 01 Dec 2017 10:34:15 GMT): zhenkunxu (Fri, 01 Dec 2017 10:59:54 GMT): zhenkunxu (Fri, 01 Dec 2017 11:00:34 GMT): AkshayJindal (Fri, 01 Dec 2017 11:01:32 GMT): AkshayJindal (Fri, 01 Dec 2017 11:04:36 GMT): AkshayJindal (Fri, 01 Dec 2017 11:04:36 GMT): WatserAanDeHand (Fri, 01 Dec 2017 11:07:19 GMT): rthatcher (Fri, 01 Dec 2017 11:27:03 GMT): yipcma (Fri, 01 Dec 2017 11:34:47 GMT): AkshayJindal (Fri, 01 Dec 2017 11:45:47 GMT): AkshayJindal (Fri, 01 Dec 2017 11:45:47 GMT): rthatcher (Fri, 01 Dec 2017 11:47:17 GMT): WatserAanDeHand (Fri, 01 Dec 2017 11:51:49 GMT): rthatcher (Fri, 01 Dec 2017 11:53:08 GMT): rthatcher (Fri, 01 Dec 2017 11:55:57 GMT): WatserAanDeHand (Fri, 01 Dec 2017 11:57:21 GMT): WatserAanDeHand (Fri, 01 Dec 2017 11:57:43 GMT): AkshayJindal (Fri, 01 Dec 2017 11:59:30 GMT): AkshayJindal (Fri, 01 Dec 2017 11:59:30 GMT): rthatcher (Fri, 01 Dec 2017 12:02:28 GMT): AkshayJindal (Fri, 01 Dec 2017 12:05:35 GMT): AkshayJindal (Fri, 01 Dec 2017 12:05:35 GMT): AkshayJindal (Fri, 01 Dec 2017 12:05:48 GMT): rthatcher (Fri, 01 Dec 2017 12:15:26 GMT): WatserAanDeHand (Fri, 01 Dec 2017 12:20:41 GMT): rthatcher (Fri, 01 Dec 2017 12:29:24 GMT): WatserAanDeHand (Fri, 01 Dec 2017 12:30:18 GMT): mahoney1 (Fri, 01 Dec 2017 13:13:48 GMT): AkshayJindal (Fri, 01 Dec 2017 13:19:38 GMT): AkshayJindal (Fri, 01 Dec 2017 13:19:38 GMT): AkshayJindal (Fri, 01 Dec 2017 13:19:38 GMT): AkshayJindal (Fri, 01 Dec 2017 13:19:38 GMT): AkshayJindal (Fri, 01 Dec 2017 13:19:38 GMT): ankashu (Fri, 01 Dec 2017 13:20:50 GMT): ankashu (Fri, 01 Dec 2017 13:22:23 GMT): pcsanchez09 (Fri, 01 Dec 2017 13:50:47 GMT): pcsanchez09 (Fri, 01 Dec 2017 13:50:52 GMT): pcsanchez09 (Fri, 01 Dec 2017 13:50:57 GMT): pcsanchez09 (Fri, 01 Dec 2017 13:51:30 GMT): pcsanchez09 (Fri, 01 Dec 2017 13:51:31 GMT): pcsanchez09 (Fri, 01 Dec 2017 13:51:41 GMT): pcsanchez09 (Fri, 01 Dec 2017 13:52:05 GMT): ankashu (Fri, 01 Dec 2017 13:54:34 GMT): MohnishSharma (Fri, 01 Dec 2017 13:58:37 GMT): rthatcher (Fri, 01 Dec 2017 14:03:12 GMT): ankashu (Fri, 01 Dec 2017 14:07:20 GMT): bsteinfeld (Fri, 01 Dec 2017 14:15:12 GMT): bsteinfeld (Fri, 01 Dec 2017 14:15:12 GMT): bsteinfeld (Fri, 01 Dec 2017 14:16:26 GMT): bsteinfeld (Fri, 01 Dec 2017 14:16:34 GMT): davidoevans (Fri, 01 Dec 2017 14:23:49 GMT): mahoney1 (Fri, 01 Dec 2017 14:35:37 GMT): mahoney1 (Fri, 01 Dec 2017 14:35:37 GMT): mahoney1 (Fri, 01 Dec 2017 14:35:37 GMT): mahoney1 (Fri, 01 Dec 2017 14:35:37 GMT): bsteinfeld (Fri, 01 Dec 2017 14:43:46 GMT): mahoney1 (Fri, 01 Dec 2017 14:44:33 GMT): mahoney1 (Fri, 01 Dec 2017 14:44:33 GMT): mahoney1 (Fri, 01 Dec 2017 14:44:33 GMT): bsteinfeld (Fri, 01 Dec 2017 14:45:33 GMT): bsteinfeld (Fri, 01 Dec 2017 14:46:52 GMT): mbharadwaj (Fri, 01 Dec 2017 14:46:55 GMT): mbharadwaj (Fri, 01 Dec 2017 14:47:24 GMT): mbharadwaj (Fri, 01 Dec 2017 14:47:46 GMT): mbharadwaj (Fri, 01 Dec 2017 14:48:04 GMT): mahoney1 (Fri, 01 Dec 2017 15:18:20 GMT): evin 4 (Fri, 01 Dec 2017 15:20:56 GMT): mahoney1 (Fri, 01 Dec 2017 15:30:59 GMT): mahoney1 (Fri, 01 Dec 2017 15:32:06 GMT): AkshayJindal (Fri, 01 Dec 2017 15:37:16 GMT): AkshayJindal (Fri, 01 Dec 2017 15:37:16 GMT): mahoney1 (Fri, 01 Dec 2017 15:46:23 GMT): mahoney1 (Fri, 01 Dec 2017 15:46:23 GMT): AkshayJindal (Fri, 01 Dec 2017 16:03:48 GMT): AkshayJindal (Fri, 01 Dec 2017 16:04:15 GMT): AkshayJindal (Fri, 01 Dec 2017 16:04:57 GMT): rthatcher (Fri, 01 Dec 2017 16:22:24 GMT): davidkel (Fri, 01 Dec 2017 16:24:51 GMT): ankashu (Fri, 01 Dec 2017 16:32:47 GMT): davidkel (Fri, 01 Dec 2017 16:37:14 GMT): ankashu (Fri, 01 Dec 2017 16:38:27 GMT): ankashu (Fri, 01 Dec 2017 16:38:29 GMT): ankashu (Fri, 01 Dec 2017 16:39:21 GMT): davidkel (Fri, 01 Dec 2017 16:51:45 GMT): ankashu (Fri, 01 Dec 2017 16:52:40 GMT): Sandeep (Fri, 01 Dec 2017 17:04:27 GMT): rthatcher (Fri, 01 Dec 2017 17:13:39 GMT): Sandeep (Fri, 01 Dec 2017 17:24:40 GMT): Sandeep (Fri, 01 Dec 2017 17:24:40 GMT): mahoney1 (Fri, 01 Dec 2017 17:35:55 GMT): mahoney1 (Fri, 01 Dec 2017 17:35:55 GMT): Sandeep (Fri, 01 Dec 2017 17:39:08 GMT): AkshayJindal (Fri, 01 Dec 2017 21:28:39 GMT): AkshayJindal (Fri, 01 Dec 2017 21:28:39 GMT): AkshayJindal (Fri, 01 Dec 2017 21:30:54 GMT): vieiramanoel (Fri, 01 Dec 2017 21:33:06 GMT): NikkiNikki (Sat, 02 Dec 2017 04:35:55 GMT): Alvin1122 (Sat, 02 Dec 2017 07:09:08 GMT): bhanuc 1 (Sat, 02 Dec 2017 07:46:00 GMT): bhanuc 1 (Sat, 02 Dec 2017 07:48:27 GMT): bhanuc 1 (Sat, 02 Dec 2017 08:06:08 GMT): bhanuc 1 (Sat, 02 Dec 2017 08:06:49 GMT): bhanuc 1 (Sat, 02 Dec 2017 08:09:35 GMT): bhanuc 1 (Sat, 02 Dec 2017 08:11:19 GMT): bhanuc 1 (Sat, 02 Dec 2017 08:22:11 GMT): john111 (Sat, 02 Dec 2017 09:04:05 GMT): john111 (Sat, 02 Dec 2017 09:05:35 GMT): john111 (Sat, 02 Dec 2017 09:06:07 GMT): john111 (Sat, 02 Dec 2017 09:10:04 GMT): GiriMishra (Sat, 02 Dec 2017 09:29:40 GMT): GiriMishra (Sat, 02 Dec 2017 09:29:50 GMT): GiriMishra (Sat, 02 Dec 2017 09:31:12 GMT): varunagarwal (Sat, 02 Dec 2017 10:27:50 GMT): john111 (Sat, 02 Dec 2017 11:24:55 GMT): yipcma (Sat, 02 Dec 2017 16:13:49 GMT): DaveyEbb (Sat, 02 Dec 2017 18:01:29 GMT): DaveyEbb (Sat, 02 Dec 2017 18:02:51 GMT): Guitouuu (Sat, 02 Dec 2017 18:56:58 GMT): Guitouuu (Sat, 02 Dec 2017 18:57:43 GMT): dzeno (Sat, 02 Dec 2017 20:18:58 GMT): dzeno (Sat, 02 Dec 2017 20:19:34 GMT): dzeno (Sat, 02 Dec 2017 20:28:52 GMT): dzeno (Sat, 02 Dec 2017 20:28:52 GMT): dzeno (Sat, 02 Dec 2017 20:28:52 GMT): dzeno (Sat, 02 Dec 2017 20:30:23 GMT): dzeno (Sat, 02 Dec 2017 20:30:23 GMT): mahoney1 (Sat, 02 Dec 2017 20:31:56 GMT): mahoney1 (Sat, 02 Dec 2017 20:31:56 GMT): mahoney1 (Sat, 02 Dec 2017 20:39:40 GMT): mahoney1 (Sat, 02 Dec 2017 20:39:40 GMT): mahoney1 (Sat, 02 Dec 2017 20:39:40 GMT): dzeno (Sat, 02 Dec 2017 20:43:00 GMT): dzeno (Sat, 02 Dec 2017 20:43:48 GMT): dzeno (Sat, 02 Dec 2017 20:44:57 GMT): mahoney1 (Sat, 02 Dec 2017 20:50:43 GMT): mahoney1 (Sat, 02 Dec 2017 20:50:43 GMT): mahoney1 (Sat, 02 Dec 2017 20:50:43 GMT): mahoney1 (Sat, 02 Dec 2017 20:50:43 GMT): mahoney1 (Sat, 02 Dec 2017 20:50:43 GMT): yipcma (Sat, 02 Dec 2017 20:52:03 GMT): yipcma (Sat, 02 Dec 2017 20:53:03 GMT): dzeno (Sat, 02 Dec 2017 20:57:18 GMT): mahoney1 (Sat, 02 Dec 2017 20:59:13 GMT): yipcma (Sat, 02 Dec 2017 21:00:21 GMT): mahoney1 (Sat, 02 Dec 2017 21:13:42 GMT): mahoney1 (Sat, 02 Dec 2017 21:15:29 GMT): mahoney1 (Sat, 02 Dec 2017 21:15:44 GMT): prmdmshra (Sun, 03 Dec 2017 06:30:50 GMT): prmdmshra (Sun, 03 Dec 2017 06:30:50 GMT): prmdmshra (Sun, 03 Dec 2017 06:30:50 GMT): MohnishSharma (Sun, 03 Dec 2017 14:04:32 GMT): MohnishSharma (Sun, 03 Dec 2017 14:10:38 GMT): MikeGrassy (Sun, 03 Dec 2017 15:44:59 GMT): MikeGrassy (Sun, 03 Dec 2017 15:46:47 GMT): MikeGrassy (Sun, 03 Dec 2017 15:47:07 GMT): BrianOtieno (Sun, 03 Dec 2017 16:42:00 GMT): chessy (Sun, 03 Dec 2017 17:57:57 GMT): chessy (Sun, 03 Dec 2017 17:58:33 GMT): chessy (Sun, 03 Dec 2017 17:58:57 GMT): chessy (Sun, 03 Dec 2017 17:58:58 GMT): davidkel (Sun, 03 Dec 2017 19:54:22 GMT): davidkel (Sun, 03 Dec 2017 19:54:22 GMT): AkshayJindal (Sun, 03 Dec 2017 21:06:14 GMT): AkshayJindal (Sun, 03 Dec 2017 21:07:17 GMT): LadarX (Mon, 04 Dec 2017 02:19:57 GMT): LadarX (Mon, 04 Dec 2017 02:22:57 GMT): LadarX (Mon, 04 Dec 2017 02:24:39 GMT): LadarX (Mon, 04 Dec 2017 02:28:52 GMT): suryasuresh06 (Mon, 04 Dec 2017 04:58:59 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 06:32:15 GMT): ra_w (Mon, 04 Dec 2017 06:35:09 GMT): mayur.relekar (Mon, 04 Dec 2017 07:55:06 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 08:15:48 GMT): nasht00 (Mon, 04 Dec 2017 08:18:04 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 08:33:57 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 08:35:17 GMT): yipcma (Mon, 04 Dec 2017 08:37:39 GMT): yipcma (Mon, 04 Dec 2017 08:39:36 GMT): yipcma (Mon, 04 Dec 2017 08:39:36 GMT): nasht00 (Mon, 04 Dec 2017 08:41:00 GMT): rthatcher (Mon, 04 Dec 2017 09:25:14 GMT): levinkwong (Mon, 04 Dec 2017 09:36:18 GMT): levinkwong (Mon, 04 Dec 2017 09:39:40 GMT): rthatcher (Mon, 04 Dec 2017 09:42:12 GMT): suryasuresh06 (Mon, 04 Dec 2017 09:43:01 GMT): rthatcher (Mon, 04 Dec 2017 09:47:51 GMT): yipcma (Mon, 04 Dec 2017 09:48:54 GMT): yipcma (Mon, 04 Dec 2017 09:48:54 GMT): rthatcher (Mon, 04 Dec 2017 09:49:30 GMT): levinkwong (Mon, 04 Dec 2017 09:50:39 GMT): levinkwong (Mon, 04 Dec 2017 09:51:39 GMT): levinkwong (Mon, 04 Dec 2017 09:53:46 GMT): rthatcher (Mon, 04 Dec 2017 09:56:55 GMT): levinkwong (Mon, 04 Dec 2017 09:57:30 GMT): levinkwong (Mon, 04 Dec 2017 09:59:21 GMT): rthatcher (Mon, 04 Dec 2017 09:59:46 GMT): levinkwong (Mon, 04 Dec 2017 10:05:09 GMT): tphduy (Mon, 04 Dec 2017 10:05:53 GMT): suryasuresh06 (Mon, 04 Dec 2017 10:06:22 GMT): suryasuresh06 (Mon, 04 Dec 2017 10:06:57 GMT): tphduy (Mon, 04 Dec 2017 10:08:01 GMT): tphduy (Mon, 04 Dec 2017 10:08:26 GMT): yipcma (Mon, 04 Dec 2017 10:08:44 GMT): rthatcher (Mon, 04 Dec 2017 10:09:05 GMT): tphduy (Mon, 04 Dec 2017 10:09:29 GMT): tphduy (Mon, 04 Dec 2017 10:09:41 GMT): tphduy (Mon, 04 Dec 2017 10:10:27 GMT): tphduy (Mon, 04 Dec 2017 10:15:45 GMT): rthatcher (Mon, 04 Dec 2017 10:16:40 GMT): yipcma (Mon, 04 Dec 2017 10:19:31 GMT): yipcma (Mon, 04 Dec 2017 10:20:04 GMT): rthatcher (Mon, 04 Dec 2017 10:25:46 GMT): suryasuresh06 (Mon, 04 Dec 2017 10:27:41 GMT): suryasuresh06 (Mon, 04 Dec 2017 10:28:48 GMT): suryasuresh06 (Mon, 04 Dec 2017 10:33:00 GMT): mahoney1 (Mon, 04 Dec 2017 10:54:15 GMT): yipcma (Mon, 04 Dec 2017 10:55:29 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 11:21:04 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 11:21:05 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 11:21:22 GMT): jonathansinclair (Mon, 04 Dec 2017 11:36:52 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 11:50:18 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 11:51:15 GMT): yipcma (Mon, 04 Dec 2017 11:51:32 GMT): yipcma (Mon, 04 Dec 2017 11:52:27 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 11:55:29 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 11:55:47 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 11:55:58 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 11:56:15 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 12:09:44 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 12:10:10 GMT): yipcma (Mon, 04 Dec 2017 12:15:49 GMT): mahoney1 (Mon, 04 Dec 2017 12:18:26 GMT): mahoney1 (Mon, 04 Dec 2017 12:19:09 GMT): mahoney1 (Mon, 04 Dec 2017 12:19:09 GMT): yogesh.fulsunge (Mon, 04 Dec 2017 12:19:43 GMT): jonathansinclair (Mon, 04 Dec 2017 12:20:34 GMT): umamani113 (Mon, 04 Dec 2017 12:33:57 GMT): umamani113 (Mon, 04 Dec 2017 12:33:57 GMT): umamani113 (Mon, 04 Dec 2017 12:33:57 GMT): rthatcher (Mon, 04 Dec 2017 12:40:31 GMT): ankashu (Mon, 04 Dec 2017 13:29:52 GMT): ankashu (Mon, 04 Dec 2017 13:29:52 GMT): ankashu (Mon, 04 Dec 2017 13:31:16 GMT): dselman (Mon, 04 Dec 2017 13:59:11 GMT): prmdmshra (Mon, 04 Dec 2017 14:10:56 GMT): prmdmshra (Mon, 04 Dec 2017 14:10:56 GMT): dselman (Mon, 04 Dec 2017 14:14:08 GMT): LadarX (Mon, 04 Dec 2017 14:24:55 GMT): LadarX (Mon, 04 Dec 2017 14:26:42 GMT): LadarX (Mon, 04 Dec 2017 14:28:05 GMT): davidkel (Mon, 04 Dec 2017 14:29:45 GMT): davidkel (Mon, 04 Dec 2017 14:29:45 GMT): LadarX (Mon, 04 Dec 2017 14:30:16 GMT): davidkel (Mon, 04 Dec 2017 14:30:52 GMT): AkshayJindal (Mon, 04 Dec 2017 14:33:39 GMT): AkshayJindal (Mon, 04 Dec 2017 14:33:39 GMT): ankashu (Mon, 04 Dec 2017 14:34:28 GMT): bsteinfeld (Mon, 04 Dec 2017 14:35:09 GMT): bsteinfeld (Mon, 04 Dec 2017 14:35:09 GMT): davidkel (Mon, 04 Dec 2017 14:40:15 GMT): bsteinfeld (Mon, 04 Dec 2017 14:43:04 GMT): davidkel (Mon, 04 Dec 2017 14:43:24 GMT): uber.twin (Mon, 04 Dec 2017 14:45:49 GMT): mahoney1 (Mon, 04 Dec 2017 14:53:06 GMT): mahoney1 (Mon, 04 Dec 2017 14:53:06 GMT): mahoney1 (Mon, 04 Dec 2017 14:53:06 GMT): davidkel (Mon, 04 Dec 2017 14:53:53 GMT): uber.twin (Mon, 04 Dec 2017 14:59:00 GMT): uber.twin (Mon, 04 Dec 2017 15:00:33 GMT): uber.twin (Mon, 04 Dec 2017 15:01:52 GMT): uber.twin (Mon, 04 Dec 2017 15:09:04 GMT): ankashu (Mon, 04 Dec 2017 15:37:44 GMT): AkshayJindal (Mon, 04 Dec 2017 15:58:50 GMT): davidkel (Mon, 04 Dec 2017 16:23:34 GMT): uber.twin (Mon, 04 Dec 2017 16:26:00 GMT): InduBhatti (Mon, 04 Dec 2017 16:26:32 GMT): InduBhatti (Mon, 04 Dec 2017 16:27:16 GMT): rddill (Mon, 04 Dec 2017 16:28:38 GMT): davidkel (Mon, 04 Dec 2017 16:30:19 GMT): BrianOtieno (Mon, 04 Dec 2017 16:39:48 GMT): BrianOtieno (Mon, 04 Dec 2017 16:40:26 GMT): mmick (Mon, 04 Dec 2017 16:54:30 GMT): uber.twin (Mon, 04 Dec 2017 16:56:06 GMT): uber.twin (Mon, 04 Dec 2017 16:56:06 GMT): uber.twin (Mon, 04 Dec 2017 16:57:11 GMT): davidkel (Mon, 04 Dec 2017 16:58:05 GMT): uber.twin (Mon, 04 Dec 2017 16:59:24 GMT): AbhilashSharma (Mon, 04 Dec 2017 17:25:19 GMT): AbhilashSharma (Mon, 04 Dec 2017 17:25:37 GMT): AbhilashSharma (Mon, 04 Dec 2017 17:30:54 GMT): AkshayJindal (Mon, 04 Dec 2017 17:32:01 GMT): AkshayJindal (Mon, 04 Dec 2017 17:32:01 GMT): AkshayJindal (Mon, 04 Dec 2017 17:32:01 GMT): mmick (Mon, 04 Dec 2017 17:38:01 GMT): tphduy (Mon, 04 Dec 2017 18:05:15 GMT): mahoney1 (Mon, 04 Dec 2017 18:17:20 GMT): mahoney1 (Mon, 04 Dec 2017 18:19:14 GMT): mahoney1 (Mon, 04 Dec 2017 18:26:00 GMT): mahoney1 (Mon, 04 Dec 2017 18:26:00 GMT): rdev (Mon, 04 Dec 2017 18:48:31 GMT): AbhilashSharma (Mon, 04 Dec 2017 19:04:21 GMT): C.Jason.Phelps (Mon, 04 Dec 2017 20:42:47 GMT): Ruslanas (Mon, 04 Dec 2017 23:28:12 GMT): Ruslanas (Mon, 04 Dec 2017 23:29:04 GMT): targetblockchain (Tue, 05 Dec 2017 01:10:23 GMT): jasoncys (Tue, 05 Dec 2017 01:54:45 GMT): jasoncys (Tue, 05 Dec 2017 01:58:05 GMT): zhenkunxu (Tue, 05 Dec 2017 02:32:28 GMT): zhenkunxu (Tue, 05 Dec 2017 02:32:33 GMT): yogesh.fulsunge (Tue, 05 Dec 2017 05:21:43 GMT): yogesh.fulsunge (Tue, 05 Dec 2017 05:22:46 GMT): omathurin (Tue, 05 Dec 2017 07:15:24 GMT): omathurin (Tue, 05 Dec 2017 07:19:22 GMT): JOYELIN (Tue, 05 Dec 2017 08:00:15 GMT): mayur.relekar (Tue, 05 Dec 2017 08:02:01 GMT): zhenkunxu (Tue, 05 Dec 2017 08:18:00 GMT): nasht00 (Tue, 05 Dec 2017 08:19:49 GMT): davidkel (Tue, 05 Dec 2017 08:22:07 GMT): omathurin (Tue, 05 Dec 2017 08:37:55 GMT): hanshan (Tue, 05 Dec 2017 08:40:20 GMT): JihyeonJeong (Tue, 05 Dec 2017 08:53:13 GMT): JihyeonJeong (Tue, 05 Dec 2017 09:01:51 GMT): rthatcher (Tue, 05 Dec 2017 09:20:19 GMT): danshao (Tue, 05 Dec 2017 09:26:42 GMT): danshao (Tue, 05 Dec 2017 09:32:16 GMT): danshao (Tue, 05 Dec 2017 09:32:29 GMT): danshao (Tue, 05 Dec 2017 09:32:46 GMT): danshao (Tue, 05 Dec 2017 09:33:09 GMT): rthatcher (Tue, 05 Dec 2017 09:47:15 GMT): danshao (Tue, 05 Dec 2017 09:48:31 GMT): danshao (Tue, 05 Dec 2017 09:48:45 GMT): rthatcher (Tue, 05 Dec 2017 09:51:02 GMT): danshao (Tue, 05 Dec 2017 09:51:12 GMT): danshao (Tue, 05 Dec 2017 09:51:59 GMT): danshao (Tue, 05 Dec 2017 09:52:57 GMT): danshao (Tue, 05 Dec 2017 09:54:04 GMT): rthatcher (Tue, 05 Dec 2017 09:54:33 GMT): danshao (Tue, 05 Dec 2017 09:55:00 GMT): rthatcher (Tue, 05 Dec 2017 09:56:08 GMT): danshao (Tue, 05 Dec 2017 09:56:34 GMT): danshao (Tue, 05 Dec 2017 09:57:21 GMT): rthatcher (Tue, 05 Dec 2017 10:01:34 GMT): danshao (Tue, 05 Dec 2017 10:02:27 GMT): rthatcher (Tue, 05 Dec 2017 10:04:26 GMT): danshao (Tue, 05 Dec 2017 10:04:29 GMT): danshao (Tue, 05 Dec 2017 10:06:33 GMT): danshao (Tue, 05 Dec 2017 10:06:33 GMT): danshao (Tue, 05 Dec 2017 10:07:49 GMT): mahoney1 (Tue, 05 Dec 2017 10:10:11 GMT): mahoney1 (Tue, 05 Dec 2017 10:10:11 GMT): danshao (Tue, 05 Dec 2017 10:10:29 GMT): danshao (Tue, 05 Dec 2017 10:10:58 GMT): yipcma (Tue, 05 Dec 2017 10:17:13 GMT): yipcma (Tue, 05 Dec 2017 10:17:13 GMT): mahoney1 (Tue, 05 Dec 2017 10:17:52 GMT): mahoney1 (Tue, 05 Dec 2017 10:17:52 GMT): mahoney1 (Tue, 05 Dec 2017 10:19:48 GMT): mahoney1 (Tue, 05 Dec 2017 10:19:48 GMT): danshao (Tue, 05 Dec 2017 10:21:20 GMT): mahoney1 (Tue, 05 Dec 2017 10:22:29 GMT): mahoney1 (Tue, 05 Dec 2017 10:22:29 GMT): danshao (Tue, 05 Dec 2017 10:23:24 GMT): danshao (Tue, 05 Dec 2017 10:24:16 GMT): danshao (Tue, 05 Dec 2017 10:24:16 GMT): danshao (Tue, 05 Dec 2017 10:32:16 GMT): mahoney1 (Tue, 05 Dec 2017 10:57:23 GMT): mahoney1 (Tue, 05 Dec 2017 10:57:23 GMT): indira.kalagara (Tue, 05 Dec 2017 10:57:42 GMT): mahoney1 (Tue, 05 Dec 2017 10:58:16 GMT): indira.kalagara (Tue, 05 Dec 2017 10:59:02 GMT): mna2016 (Tue, 05 Dec 2017 11:18:44 GMT): mna2016 (Tue, 05 Dec 2017 11:18:44 GMT): yipcma (Tue, 05 Dec 2017 11:25:30 GMT): yipcma (Tue, 05 Dec 2017 11:25:30 GMT): mahoney1 (Tue, 05 Dec 2017 12:28:29 GMT): AkshayJindal (Tue, 05 Dec 2017 12:28:46 GMT): charugosavi (Tue, 05 Dec 2017 12:35:08 GMT): charugosavi (Tue, 05 Dec 2017 12:37:31 GMT): charugosavi (Tue, 05 Dec 2017 12:37:31 GMT): mahoney1 (Tue, 05 Dec 2017 12:38:37 GMT): mahoney1 (Tue, 05 Dec 2017 12:49:00 GMT): mahoney1 (Tue, 05 Dec 2017 12:49:00 GMT): mahoney1 (Tue, 05 Dec 2017 12:49:00 GMT): mna2016 (Tue, 05 Dec 2017 12:58:21 GMT): mna2016 (Tue, 05 Dec 2017 12:59:52 GMT): WatserAanDeHand (Tue, 05 Dec 2017 13:43:15 GMT): WatserAanDeHand (Tue, 05 Dec 2017 13:45:59 GMT): WatserAanDeHand (Tue, 05 Dec 2017 13:46:01 GMT): mayur.relekar (Tue, 05 Dec 2017 13:48:25 GMT): mayur.relekar (Tue, 05 Dec 2017 13:48:25 GMT): davidoevans (Tue, 05 Dec 2017 13:54:28 GMT): AkshayJindal (Tue, 05 Dec 2017 13:59:36 GMT): AkshayJindal (Tue, 05 Dec 2017 13:59:36 GMT): AkshayJindal (Tue, 05 Dec 2017 13:59:36 GMT): mahoney1 (Tue, 05 Dec 2017 14:10:13 GMT): AkshayJindal (Tue, 05 Dec 2017 14:38:35 GMT): charugosavi (Tue, 05 Dec 2017 14:55:58 GMT): charugosavi (Tue, 05 Dec 2017 14:57:08 GMT): mahoney1 (Tue, 05 Dec 2017 15:28:24 GMT): charugosavi (Tue, 05 Dec 2017 15:29:07 GMT): michael_aR (Tue, 05 Dec 2017 15:47:29 GMT): ankashu (Tue, 05 Dec 2017 15:57:32 GMT): ankashu (Tue, 05 Dec 2017 15:57:32 GMT): michael_aR (Tue, 05 Dec 2017 16:03:24 GMT): ScottMorris (Tue, 05 Dec 2017 16:19:28 GMT): greg2git (Tue, 05 Dec 2017 16:34:21 GMT): ScottMorris (Tue, 05 Dec 2017 16:35:42 GMT): ScottMorris (Tue, 05 Dec 2017 16:35:46 GMT): ScottMorris (Tue, 05 Dec 2017 16:35:46 GMT): danshao (Tue, 05 Dec 2017 16:38:18 GMT): danshao (Tue, 05 Dec 2017 16:38:22 GMT): greg2git (Tue, 05 Dec 2017 16:41:09 GMT): Ann (Tue, 05 Dec 2017 17:26:01 GMT): mahoney1 (Tue, 05 Dec 2017 17:36:28 GMT): mahoney1 (Tue, 05 Dec 2017 17:36:59 GMT): gauthampamu (Tue, 05 Dec 2017 18:17:22 GMT): gauthampamu (Tue, 05 Dec 2017 18:17:23 GMT): gauthampamu (Tue, 05 Dec 2017 18:17:32 GMT): gauthampamu (Tue, 05 Dec 2017 18:17:40 GMT): davidkel (Tue, 05 Dec 2017 18:29:31 GMT): InduBhatti (Tue, 05 Dec 2017 18:56:36 GMT): InduBhatti (Tue, 05 Dec 2017 18:56:53 GMT): InduBhatti (Tue, 05 Dec 2017 18:57:14 GMT): InduBhatti (Tue, 05 Dec 2017 18:58:11 GMT): InduBhatti (Tue, 05 Dec 2017 18:58:15 GMT): omathurin (Tue, 05 Dec 2017 19:03:29 GMT): InduBhatti (Tue, 05 Dec 2017 19:03:52 GMT): InduBhatti (Tue, 05 Dec 2017 19:04:35 GMT): davidkel (Tue, 05 Dec 2017 19:11:54 GMT): InduBhatti (Tue, 05 Dec 2017 19:18:18 GMT): InduBhatti (Tue, 05 Dec 2017 19:18:57 GMT): davidkel (Tue, 05 Dec 2017 19:24:22 GMT): InduBhatti (Tue, 05 Dec 2017 19:24:36 GMT): davidkel (Tue, 05 Dec 2017 19:26:40 GMT): davidkel (Tue, 05 Dec 2017 19:26:40 GMT): davidkel (Tue, 05 Dec 2017 19:34:01 GMT): BrianOtieno (Tue, 05 Dec 2017 19:55:34 GMT): BrianOtieno (Tue, 05 Dec 2017 19:55:34 GMT): BrianOtieno (Tue, 05 Dec 2017 19:55:34 GMT): Iliadis (Tue, 05 Dec 2017 19:59:35 GMT): InduBhatti (Tue, 05 Dec 2017 20:02:06 GMT): InduBhatti (Tue, 05 Dec 2017 20:31:59 GMT): JimWalker (Tue, 05 Dec 2017 20:32:38 GMT): InduBhatti (Tue, 05 Dec 2017 20:32:50 GMT): JimWalker (Tue, 05 Dec 2017 20:34:21 GMT): InduBhatti (Tue, 05 Dec 2017 20:36:07 GMT): MikeJCusack (Tue, 05 Dec 2017 20:39:09 GMT): InduBhatti (Tue, 05 Dec 2017 20:56:36 GMT): InduBhatti (Tue, 05 Dec 2017 20:57:13 GMT): brian.leppez (Tue, 05 Dec 2017 21:47:37 GMT): brian.leppez (Tue, 05 Dec 2017 21:55:53 GMT): brian.leppez (Tue, 05 Dec 2017 22:13:08 GMT): brian.leppez (Tue, 05 Dec 2017 22:13:18 GMT): poisontofu (Wed, 06 Dec 2017 01:46:25 GMT): jon_s (Wed, 06 Dec 2017 05:03:47 GMT): pallavigajwani (Wed, 06 Dec 2017 07:21:34 GMT): pallavigajwani (Wed, 06 Dec 2017 07:22:39 GMT): mna2016 (Wed, 06 Dec 2017 07:45:38 GMT): michael_aR (Wed, 06 Dec 2017 08:14:05 GMT): erNail (Wed, 06 Dec 2017 08:39:55 GMT): erNail (Wed, 06 Dec 2017 08:39:55 GMT): ankashu (Wed, 06 Dec 2017 09:29:47 GMT): ankashu (Wed, 06 Dec 2017 09:33:07 GMT): ankashu (Wed, 06 Dec 2017 09:39:00 GMT): mahoney1 (Wed, 06 Dec 2017 09:55:57 GMT): mahoney1 (Wed, 06 Dec 2017 10:07:40 GMT): mayur.relekar (Wed, 06 Dec 2017 10:20:01 GMT): mahoney1 (Wed, 06 Dec 2017 10:29:43 GMT): mahoney1 (Wed, 06 Dec 2017 10:29:43 GMT): mahoney1 (Wed, 06 Dec 2017 10:29:43 GMT): mahoney1 (Wed, 06 Dec 2017 10:29:43 GMT): rthatcher (Wed, 06 Dec 2017 10:38:47 GMT): yogesh.fulsunge (Wed, 06 Dec 2017 10:47:58 GMT): yogesh.fulsunge (Wed, 06 Dec 2017 10:50:33 GMT): mahoney1 (Wed, 06 Dec 2017 11:05:58 GMT): mahoney1 (Wed, 06 Dec 2017 11:05:58 GMT): nickythompson (Wed, 06 Dec 2017 11:43:18 GMT): umamani113 (Wed, 06 Dec 2017 12:16:43 GMT): mahoney1 (Wed, 06 Dec 2017 12:25:16 GMT): RanjeetSangle (Wed, 06 Dec 2017 12:26:51 GMT): umamani113 (Wed, 06 Dec 2017 12:38:47 GMT): yipcma (Wed, 06 Dec 2017 13:05:53 GMT): yipcma (Wed, 06 Dec 2017 13:05:53 GMT): yipcma (Wed, 06 Dec 2017 13:08:05 GMT): ankashu (Wed, 06 Dec 2017 13:31:13 GMT): ankashu (Wed, 06 Dec 2017 13:31:13 GMT): davidkel (Wed, 06 Dec 2017 13:33:00 GMT): yipcma (Wed, 06 Dec 2017 13:33:34 GMT): yipcma (Wed, 06 Dec 2017 13:34:01 GMT): yipcma (Wed, 06 Dec 2017 13:37:24 GMT): yipcma (Wed, 06 Dec 2017 13:37:24 GMT): davidkel (Wed, 06 Dec 2017 13:45:10 GMT): yipcma (Wed, 06 Dec 2017 13:45:28 GMT): yipcma (Wed, 06 Dec 2017 14:18:20 GMT): PatrickOrtell (Wed, 06 Dec 2017 15:06:20 GMT): pascallimeux (Wed, 06 Dec 2017 15:09:22 GMT): mahoney1 (Wed, 06 Dec 2017 15:18:38 GMT): pascallimeux (Wed, 06 Dec 2017 15:26:06 GMT): gen_el (Wed, 06 Dec 2017 17:21:07 GMT): gen_el (Wed, 06 Dec 2017 17:21:08 GMT): gen_el (Wed, 06 Dec 2017 17:21:35 GMT): gen_el (Wed, 06 Dec 2017 17:21:47 GMT): gen_el (Wed, 06 Dec 2017 17:22:07 GMT): gen_el (Wed, 06 Dec 2017 17:24:09 GMT): gen_el (Wed, 06 Dec 2017 17:24:09 GMT): Kmantrip (Wed, 06 Dec 2017 17:25:02 GMT): mahoney1 (Wed, 06 Dec 2017 18:36:42 GMT): mahoney1 (Wed, 06 Dec 2017 18:36:42 GMT): mahoney1 (Wed, 06 Dec 2017 18:38:48 GMT): mostafa.elsayyad (Wed, 06 Dec 2017 18:47:50 GMT): sgval1 (Wed, 06 Dec 2017 19:11:14 GMT): dselman (Wed, 06 Dec 2017 19:40:03 GMT): dselman (Wed, 06 Dec 2017 19:40:18 GMT): mahoney1 (Wed, 06 Dec 2017 19:46:29 GMT): mahoney1 (Wed, 06 Dec 2017 19:46:29 GMT): jmcnevin (Wed, 06 Dec 2017 21:00:45 GMT): jmcnevin (Wed, 06 Dec 2017 21:01:04 GMT): jmcnevin (Wed, 06 Dec 2017 21:03:28 GMT): Kmantrip (Wed, 06 Dec 2017 21:08:15 GMT): yogesh.fulsunge (Thu, 07 Dec 2017 06:23:38 GMT): prmdmshra (Thu, 07 Dec 2017 06:40:37 GMT): mayur.relekar (Thu, 07 Dec 2017 07:05:08 GMT): muasif80 (Thu, 07 Dec 2017 07:28:53 GMT): muasif80 (Thu, 07 Dec 2017 07:29:06 GMT): muasif80 (Thu, 07 Dec 2017 07:29:10 GMT): davidkel (Thu, 07 Dec 2017 08:20:36 GMT): prmdmshra (Thu, 07 Dec 2017 09:14:45 GMT): rthatcher (Thu, 07 Dec 2017 09:45:09 GMT): rthatcher (Thu, 07 Dec 2017 10:12:02 GMT): rthatcher (Thu, 07 Dec 2017 10:12:02 GMT): deepakvparmar (Thu, 07 Dec 2017 10:16:48 GMT): mahoney1 (Thu, 07 Dec 2017 10:33:32 GMT): varun-raj (Thu, 07 Dec 2017 11:39:57 GMT): varun-raj (Thu, 07 Dec 2017 11:40:27 GMT): varun-raj (Thu, 07 Dec 2017 11:41:16 GMT): varun-raj (Thu, 07 Dec 2017 11:41:31 GMT): varun-raj (Thu, 07 Dec 2017 11:41:39 GMT): nasht00 (Thu, 07 Dec 2017 11:59:57 GMT): rthatcher (Thu, 07 Dec 2017 12:32:31 GMT): varun-raj (Thu, 07 Dec 2017 12:55:56 GMT): mahoney1 (Thu, 07 Dec 2017 12:56:15 GMT): navdevl (Thu, 07 Dec 2017 12:57:35 GMT): nasht00 (Thu, 07 Dec 2017 12:59:26 GMT): nasht00 (Thu, 07 Dec 2017 12:59:42 GMT): rthatcher (Thu, 07 Dec 2017 12:59:47 GMT): nasht00 (Thu, 07 Dec 2017 12:59:56 GMT): varun-raj (Thu, 07 Dec 2017 13:05:09 GMT): aghaneka (Thu, 07 Dec 2017 13:08:08 GMT): aghaneka (Thu, 07 Dec 2017 13:09:53 GMT): varun-raj (Thu, 07 Dec 2017 13:11:41 GMT): zhaochy (Thu, 07 Dec 2017 13:38:16 GMT): zhaochy (Thu, 07 Dec 2017 13:40:01 GMT): mahoney1 (Thu, 07 Dec 2017 13:50:15 GMT): mahoney1 (Thu, 07 Dec 2017 13:54:34 GMT): mahoney1 (Thu, 07 Dec 2017 13:54:34 GMT): mahoney1 (Thu, 07 Dec 2017 13:54:34 GMT): mahoney1 (Thu, 07 Dec 2017 13:54:34 GMT): mahoney1 (Thu, 07 Dec 2017 13:54:34 GMT): mahoney1 (Thu, 07 Dec 2017 13:54:34 GMT): zhaochy (Thu, 07 Dec 2017 13:57:30 GMT): SimonOberzan (Thu, 07 Dec 2017 14:01:35 GMT): piiizh (Thu, 07 Dec 2017 14:40:04 GMT): danshao (Thu, 07 Dec 2017 14:41:40 GMT): mahoney1 (Thu, 07 Dec 2017 15:14:19 GMT): mahoney1 (Thu, 07 Dec 2017 15:23:22 GMT): nickyromeijn (Thu, 07 Dec 2017 15:29:21 GMT): nickyromeijn (Thu, 07 Dec 2017 15:29:29 GMT): luminance (Thu, 07 Dec 2017 15:33:32 GMT): rthatcher (Thu, 07 Dec 2017 15:46:37 GMT): rthatcher (Thu, 07 Dec 2017 15:46:37 GMT): mahoney1 (Thu, 07 Dec 2017 15:53:57 GMT): nickyromeijn (Thu, 07 Dec 2017 16:05:15 GMT): nickyromeijn (Thu, 07 Dec 2017 16:06:01 GMT): nickyromeijn (Thu, 07 Dec 2017 16:06:18 GMT): mahoney1 (Thu, 07 Dec 2017 16:38:48 GMT): mahoney1 (Thu, 07 Dec 2017 16:38:48 GMT): mahoney1 (Thu, 07 Dec 2017 16:38:48 GMT): mahoney1 (Thu, 07 Dec 2017 16:38:48 GMT): mahoney1 (Thu, 07 Dec 2017 16:38:48 GMT): mahoney1 (Thu, 07 Dec 2017 16:58:05 GMT): nickyromeijn (Thu, 07 Dec 2017 17:37:08 GMT): mahoney1 (Thu, 07 Dec 2017 17:38:26 GMT): nickyromeijn (Thu, 07 Dec 2017 17:38:42 GMT): mahoney1 (Thu, 07 Dec 2017 17:39:33 GMT): nickyromeijn (Thu, 07 Dec 2017 17:40:34 GMT): nickyromeijn (Thu, 07 Dec 2017 17:41:10 GMT): mahoney1 (Thu, 07 Dec 2017 17:58:20 GMT): Sandeep (Thu, 07 Dec 2017 20:25:44 GMT): danshao (Fri, 08 Dec 2017 01:39:09 GMT): danshao (Fri, 08 Dec 2017 01:39:09 GMT): danshao (Fri, 08 Dec 2017 01:39:09 GMT): labcoinpoc (Fri, 08 Dec 2017 02:08:48 GMT): varun-raj (Fri, 08 Dec 2017 04:38:35 GMT): varun-raj (Fri, 08 Dec 2017 04:38:55 GMT): aneb (Fri, 08 Dec 2017 06:26:50 GMT): baoyangc (Fri, 08 Dec 2017 07:44:18 GMT): baoyangc (Fri, 08 Dec 2017 07:51:04 GMT): baoyangc (Fri, 08 Dec 2017 07:51:19 GMT): mna2016 (Fri, 08 Dec 2017 07:56:09 GMT): varun-raj (Fri, 08 Dec 2017 08:03:03 GMT): varun-raj (Fri, 08 Dec 2017 08:03:11 GMT): legoman (Fri, 08 Dec 2017 08:34:17 GMT): rthatcher (Fri, 08 Dec 2017 09:11:34 GMT): varun-raj (Fri, 08 Dec 2017 09:31:12 GMT): zhenkunxu (Fri, 08 Dec 2017 09:32:17 GMT): rthatcher (Fri, 08 Dec 2017 09:42:10 GMT): mahoney1 (Fri, 08 Dec 2017 10:01:47 GMT): mahoney1 (Fri, 08 Dec 2017 10:05:57 GMT): shidosan (Fri, 08 Dec 2017 10:14:44 GMT): mahoney1 (Fri, 08 Dec 2017 10:14:54 GMT): suvpatil (Fri, 08 Dec 2017 10:17:04 GMT): suvpatil (Fri, 08 Dec 2017 10:18:01 GMT): shidosan (Fri, 08 Dec 2017 10:18:46 GMT): mahoney1 (Fri, 08 Dec 2017 10:19:19 GMT): suvpatil (Fri, 08 Dec 2017 10:20:19 GMT): suvpatil (Fri, 08 Dec 2017 10:21:01 GMT): mahoney1 (Fri, 08 Dec 2017 10:21:38 GMT): baoyangc (Fri, 08 Dec 2017 10:23:53 GMT): baoyangc (Fri, 08 Dec 2017 10:24:01 GMT): shidosan (Fri, 08 Dec 2017 10:25:29 GMT): baoyangc (Fri, 08 Dec 2017 10:27:06 GMT): suvpatil (Fri, 08 Dec 2017 10:29:35 GMT): shidosan (Fri, 08 Dec 2017 10:31:42 GMT): varun-raj (Fri, 08 Dec 2017 10:32:20 GMT): suvpatil (Fri, 08 Dec 2017 10:34:55 GMT): shidosan (Fri, 08 Dec 2017 10:37:11 GMT): shidosan (Fri, 08 Dec 2017 10:37:11 GMT): suvpatil (Fri, 08 Dec 2017 10:38:49 GMT): suvpatil (Fri, 08 Dec 2017 10:39:50 GMT): muasif80 (Fri, 08 Dec 2017 10:43:13 GMT): ankashu (Fri, 08 Dec 2017 10:49:17 GMT): muasif80 (Fri, 08 Dec 2017 10:50:14 GMT): ankashu (Fri, 08 Dec 2017 10:50:47 GMT): muasif80 (Fri, 08 Dec 2017 10:51:47 GMT): ankashu (Fri, 08 Dec 2017 10:54:24 GMT): baoyangc (Fri, 08 Dec 2017 10:55:18 GMT): munireddya (Fri, 08 Dec 2017 11:07:18 GMT): varun-raj (Fri, 08 Dec 2017 11:38:03 GMT): vsadriano (Fri, 08 Dec 2017 11:56:10 GMT): muasif80 (Fri, 08 Dec 2017 11:56:28 GMT): vsadriano (Fri, 08 Dec 2017 11:56:39 GMT): varun-raj (Fri, 08 Dec 2017 11:57:01 GMT): varun-raj (Fri, 08 Dec 2017 11:57:24 GMT): varun-raj (Fri, 08 Dec 2017 11:57:41 GMT): muasif80 (Fri, 08 Dec 2017 11:57:52 GMT): mbharadwaj (Fri, 08 Dec 2017 11:58:18 GMT): muasif80 (Fri, 08 Dec 2017 11:59:51 GMT): muasif80 (Fri, 08 Dec 2017 12:00:30 GMT): suvpatil (Fri, 08 Dec 2017 12:22:26 GMT): uber.twin (Fri, 08 Dec 2017 13:39:11 GMT): danshao (Fri, 08 Dec 2017 14:15:56 GMT): IliasStergiou (Fri, 08 Dec 2017 14:26:02 GMT): mostafa.elsayyad (Fri, 08 Dec 2017 14:38:17 GMT): ankashu (Fri, 08 Dec 2017 14:52:16 GMT): IliasStergiou (Fri, 08 Dec 2017 14:54:53 GMT): michael_aR (Fri, 08 Dec 2017 15:12:27 GMT): michael_aR (Fri, 08 Dec 2017 15:12:27 GMT): michael_aR (Fri, 08 Dec 2017 15:17:56 GMT): ChristosBampis (Fri, 08 Dec 2017 15:18:58 GMT): shidosan (Fri, 08 Dec 2017 15:44:13 GMT): gen_el (Fri, 08 Dec 2017 15:58:04 GMT): gen_el (Fri, 08 Dec 2017 16:00:19 GMT): gen_el (Fri, 08 Dec 2017 16:00:53 GMT): gen_el (Fri, 08 Dec 2017 16:01:54 GMT): gen_el (Fri, 08 Dec 2017 16:02:02 GMT): gen_el (Fri, 08 Dec 2017 16:02:35 GMT): gen_el (Fri, 08 Dec 2017 16:02:44 GMT): gen_el (Fri, 08 Dec 2017 16:03:29 GMT): gen_el (Fri, 08 Dec 2017 16:04:14 GMT): gen_el (Fri, 08 Dec 2017 16:04:53 GMT): gen_el (Fri, 08 Dec 2017 16:05:38 GMT): ankashu (Fri, 08 Dec 2017 16:10:41 GMT): gen_el (Fri, 08 Dec 2017 16:19:04 GMT): ankashu (Fri, 08 Dec 2017 16:20:11 GMT): gen_el (Fri, 08 Dec 2017 16:41:26 GMT): gen_el (Fri, 08 Dec 2017 16:41:26 GMT): davidkel (Fri, 08 Dec 2017 17:12:20 GMT): bsteinfeld (Fri, 08 Dec 2017 17:23:00 GMT): bsteinfeld (Fri, 08 Dec 2017 17:23:00 GMT): bsteinfeld (Fri, 08 Dec 2017 17:23:00 GMT): Sandeep (Fri, 08 Dec 2017 17:32:34 GMT): davidkel (Fri, 08 Dec 2017 17:33:07 GMT): davidkel (Fri, 08 Dec 2017 17:33:42 GMT): gen_el (Fri, 08 Dec 2017 17:34:25 GMT): Sandeep (Fri, 08 Dec 2017 17:34:28 GMT): gen_el (Fri, 08 Dec 2017 17:36:40 GMT): gen_el (Fri, 08 Dec 2017 17:38:15 GMT): bsteinfeld (Fri, 08 Dec 2017 17:46:06 GMT): MuhammadSalah (Fri, 08 Dec 2017 17:49:25 GMT): MuhammadSalah (Fri, 08 Dec 2017 17:49:33 GMT): MuhammadSalah (Fri, 08 Dec 2017 17:49:43 GMT): MuhammadSalah (Fri, 08 Dec 2017 17:50:08 GMT): MuhammadSalah (Fri, 08 Dec 2017 17:50:15 GMT): MuhammadSalah (Fri, 08 Dec 2017 17:50:22 GMT): MuhammadSalah (Fri, 08 Dec 2017 17:50:23 GMT): davidkel (Fri, 08 Dec 2017 17:50:31 GMT): bsteinfeld (Fri, 08 Dec 2017 17:50:39 GMT): davidkel (Fri, 08 Dec 2017 17:51:53 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:02:36 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:02:43 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:04:30 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:04:59 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:05:11 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:05:34 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:18:20 GMT): davidkel (Fri, 08 Dec 2017 18:18:23 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:21:06 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:21:27 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:22:00 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:22:23 GMT): davidkel (Fri, 08 Dec 2017 18:22:33 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:22:48 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:22:59 GMT): davidkel (Fri, 08 Dec 2017 18:23:08 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:23:32 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:23:40 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:23:56 GMT): davidkel (Fri, 08 Dec 2017 18:31:50 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:37:44 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:38:01 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:38:25 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:39:13 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:39:18 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:39:32 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:39:50 GMT): MuhammadSalah (Fri, 08 Dec 2017 18:39:56 GMT): davidkel (Fri, 08 Dec 2017 18:40:13 GMT): davidkel (Fri, 08 Dec 2017 18:40:39 GMT): odalle (Fri, 08 Dec 2017 19:23:35 GMT): odalle (Fri, 08 Dec 2017 19:26:12 GMT): odalle (Fri, 08 Dec 2017 19:26:50 GMT): odalle (Fri, 08 Dec 2017 19:27:29 GMT): odalle (Fri, 08 Dec 2017 19:27:53 GMT): odalle (Fri, 08 Dec 2017 19:28:11 GMT): odalle (Fri, 08 Dec 2017 19:28:50 GMT): odalle (Fri, 08 Dec 2017 19:28:56 GMT): odalle (Fri, 08 Dec 2017 19:32:36 GMT): odalle (Fri, 08 Dec 2017 19:32:41 GMT): odalle (Fri, 08 Dec 2017 19:33:11 GMT): mogamboizer (Fri, 08 Dec 2017 21:06:54 GMT): JeremyStanton (Fri, 08 Dec 2017 22:00:46 GMT): eclairamb (Fri, 08 Dec 2017 22:32:53 GMT): varun-raj (Sat, 09 Dec 2017 05:28:03 GMT): varun-raj (Sat, 09 Dec 2017 06:06:05 GMT): pangzineng (Sat, 09 Dec 2017 10:38:31 GMT): Sneha (Sat, 09 Dec 2017 11:03:14 GMT): Sneha (Sat, 09 Dec 2017 11:08:37 GMT): Sneha (Sat, 09 Dec 2017 11:08:37 GMT): Sneha (Sat, 09 Dec 2017 11:08:37 GMT): Sneha (Sat, 09 Dec 2017 11:20:03 GMT): davidkel (Sat, 09 Dec 2017 11:27:41 GMT): Sneha (Sat, 09 Dec 2017 11:35:19 GMT): davidkel (Sat, 09 Dec 2017 11:39:57 GMT): Sneha (Sat, 09 Dec 2017 11:43:55 GMT): davidkel (Sat, 09 Dec 2017 11:44:51 GMT): Sneha (Sat, 09 Dec 2017 11:52:21 GMT): Sneha (Sat, 09 Dec 2017 11:52:21 GMT): davidkel (Sat, 09 Dec 2017 11:54:34 GMT): Sneha (Sat, 09 Dec 2017 12:03:27 GMT): Sneha (Sat, 09 Dec 2017 12:03:27 GMT): yogesh.fulsunge (Sat, 09 Dec 2017 12:46:59 GMT): yogesh.fulsunge (Sat, 09 Dec 2017 12:47:20 GMT): yogesh.fulsunge (Sat, 09 Dec 2017 12:47:42 GMT): yogesh.fulsunge (Sat, 09 Dec 2017 12:47:59 GMT): yogesh.fulsunge (Sat, 09 Dec 2017 12:48:11 GMT): yogesh.fulsunge (Sat, 09 Dec 2017 12:48:30 GMT): pangzineng (Sat, 09 Dec 2017 14:16:41 GMT): odalle (Sat, 09 Dec 2017 15:02:06 GMT): pangzineng (Sat, 09 Dec 2017 19:00:03 GMT): pangzineng (Sat, 09 Dec 2017 19:02:43 GMT): pangzineng (Sat, 09 Dec 2017 19:02:43 GMT): pangzineng (Sat, 09 Dec 2017 19:02:43 GMT): pangzineng (Sat, 09 Dec 2017 19:06:40 GMT): pangzineng (Sat, 09 Dec 2017 19:07:35 GMT): pangzineng (Sat, 09 Dec 2017 19:11:31 GMT): pangzineng (Sat, 09 Dec 2017 19:12:09 GMT): dharuq (Sat, 09 Dec 2017 19:37:04 GMT): nehirakdag (Sun, 10 Dec 2017 04:54:13 GMT): viraj 8 (Sun, 10 Dec 2017 08:13:06 GMT): prmdmshra (Sun, 10 Dec 2017 13:05:13 GMT): alvaradojl (Sun, 10 Dec 2017 13:11:40 GMT): sstone1 (Sun, 10 Dec 2017 14:26:47 GMT): sstone1 (Sun, 10 Dec 2017 14:28:22 GMT): chessy (Sun, 10 Dec 2017 14:44:43 GMT): chessy (Sun, 10 Dec 2017 14:45:08 GMT): chessy (Sun, 10 Dec 2017 14:45:17 GMT): davidkel (Sun, 10 Dec 2017 15:32:49 GMT): chessy (Sun, 10 Dec 2017 15:33:07 GMT): chessy (Sun, 10 Dec 2017 15:33:16 GMT): AbhilashSharma (Sun, 10 Dec 2017 17:24:52 GMT): sstone1 (Sun, 10 Dec 2017 18:46:22 GMT): hayato (Mon, 11 Dec 2017 05:14:17 GMT): rahulkannur (Mon, 11 Dec 2017 07:01:03 GMT): rahulkannur (Mon, 11 Dec 2017 07:03:38 GMT): mostafa.elsayyad (Mon, 11 Dec 2017 07:04:56 GMT): Sneha (Mon, 11 Dec 2017 07:09:06 GMT): mostafa.elsayyad (Mon, 11 Dec 2017 07:11:01 GMT): mostafa.elsayyad (Mon, 11 Dec 2017 07:11:46 GMT): baoyangc (Mon, 11 Dec 2017 08:05:32 GMT): baoyangc (Mon, 11 Dec 2017 08:07:38 GMT): odalle (Mon, 11 Dec 2017 08:39:34 GMT): mahoney1 (Mon, 11 Dec 2017 10:22:30 GMT): rahulkannur (Mon, 11 Dec 2017 10:25:11 GMT): mahoney1 (Mon, 11 Dec 2017 10:30:09 GMT): mahoney1 (Mon, 11 Dec 2017 10:30:09 GMT): rahulkannur (Mon, 11 Dec 2017 10:32:34 GMT): rahulkannur (Mon, 11 Dec 2017 10:33:14 GMT): mahoney1 (Mon, 11 Dec 2017 10:33:48 GMT): mahoney1 (Mon, 11 Dec 2017 10:33:48 GMT): rahulkannur (Mon, 11 Dec 2017 10:35:48 GMT): mahoney1 (Mon, 11 Dec 2017 10:35:55 GMT): odalle (Mon, 11 Dec 2017 10:40:37 GMT): mahoney1 (Mon, 11 Dec 2017 10:42:33 GMT): mahoney1 (Mon, 11 Dec 2017 10:42:33 GMT): mahoney1 (Mon, 11 Dec 2017 10:42:33 GMT): ankashu (Mon, 11 Dec 2017 10:46:36 GMT): mahoney1 (Mon, 11 Dec 2017 10:47:48 GMT): mahoney1 (Mon, 11 Dec 2017 10:57:37 GMT): mahoney1 (Mon, 11 Dec 2017 10:57:37 GMT): ankashu (Mon, 11 Dec 2017 10:58:47 GMT): odalle (Mon, 11 Dec 2017 11:16:04 GMT): Sneha (Mon, 11 Dec 2017 11:19:39 GMT): Sneha (Mon, 11 Dec 2017 11:19:39 GMT): odalle (Mon, 11 Dec 2017 11:22:55 GMT): pangzineng (Mon, 11 Dec 2017 11:25:10 GMT): pangzineng (Mon, 11 Dec 2017 11:28:23 GMT): Sneha (Mon, 11 Dec 2017 11:29:11 GMT): mahoney1 (Mon, 11 Dec 2017 11:35:42 GMT): Sneha (Mon, 11 Dec 2017 11:41:57 GMT): mahoney1 (Mon, 11 Dec 2017 12:47:39 GMT): mahoney1 (Mon, 11 Dec 2017 12:47:39 GMT): mahoney1 (Mon, 11 Dec 2017 12:47:39 GMT): mahoney1 (Mon, 11 Dec 2017 12:47:39 GMT): mahoney1 (Mon, 11 Dec 2017 12:47:39 GMT): nickyromeijn (Mon, 11 Dec 2017 12:56:51 GMT): nickyromeijn (Mon, 11 Dec 2017 12:57:49 GMT): nickyromeijn (Mon, 11 Dec 2017 14:49:54 GMT): mahoney1 (Mon, 11 Dec 2017 14:50:04 GMT): nickyromeijn (Mon, 11 Dec 2017 14:50:25 GMT): jfobrien29 (Mon, 11 Dec 2017 14:52:15 GMT): nickyromeijn (Mon, 11 Dec 2017 15:33:18 GMT): sstone1 (Mon, 11 Dec 2017 15:45:39 GMT): pangzineng (Mon, 11 Dec 2017 17:21:57 GMT): pangzineng (Mon, 11 Dec 2017 17:21:57 GMT): mahoney1 (Mon, 11 Dec 2017 17:29:08 GMT): pangzineng (Mon, 11 Dec 2017 17:29:59 GMT): mahoney1 (Mon, 11 Dec 2017 17:31:08 GMT): giridharg (Mon, 11 Dec 2017 19:55:06 GMT): mahoney1 (Mon, 11 Dec 2017 19:58:05 GMT): giridharg (Mon, 11 Dec 2017 20:00:07 GMT): odalle (Mon, 11 Dec 2017 21:09:30 GMT): mulyoved (Mon, 11 Dec 2017 21:25:15 GMT): jeffrey-guo-sd (Mon, 11 Dec 2017 21:48:41 GMT): JeremyStanton (Mon, 11 Dec 2017 22:01:31 GMT): JeremyStanton (Tue, 12 Dec 2017 02:50:15 GMT): pangzineng (Tue, 12 Dec 2017 03:58:31 GMT): mastreips (Tue, 12 Dec 2017 05:25:18 GMT): mastreips (Tue, 12 Dec 2017 05:30:58 GMT): pallavigajwani (Tue, 12 Dec 2017 05:44:38 GMT): varun-raj (Tue, 12 Dec 2017 06:01:21 GMT): varun-raj (Tue, 12 Dec 2017 06:01:37 GMT): rahulkannur (Tue, 12 Dec 2017 06:38:40 GMT): rahulkannur (Tue, 12 Dec 2017 06:38:40 GMT): varun-raj (Tue, 12 Dec 2017 06:40:26 GMT): varun-raj (Tue, 12 Dec 2017 06:43:50 GMT): rahulkannur (Tue, 12 Dec 2017 06:47:17 GMT): varun-raj (Tue, 12 Dec 2017 06:49:57 GMT): varun-raj (Tue, 12 Dec 2017 06:50:09 GMT): charmygarg (Tue, 12 Dec 2017 07:12:33 GMT): rahulkannur (Tue, 12 Dec 2017 07:17:49 GMT): erNail (Tue, 12 Dec 2017 07:37:51 GMT): umamani113 (Tue, 12 Dec 2017 07:45:13 GMT): umamani113 (Tue, 12 Dec 2017 07:51:39 GMT): zhenkunxu (Tue, 12 Dec 2017 07:52:01 GMT): zhenkunxu (Tue, 12 Dec 2017 07:52:09 GMT): aneb (Tue, 12 Dec 2017 09:13:25 GMT): aneb (Tue, 12 Dec 2017 09:13:25 GMT): aneb (Tue, 12 Dec 2017 09:13:27 GMT): gen_el (Tue, 12 Dec 2017 09:14:32 GMT): ankashu (Tue, 12 Dec 2017 09:15:31 GMT): ankashu (Tue, 12 Dec 2017 09:15:31 GMT): erNail (Tue, 12 Dec 2017 09:17:01 GMT): varun-raj (Tue, 12 Dec 2017 09:17:48 GMT): ankashu (Tue, 12 Dec 2017 09:17:52 GMT): ankashu (Tue, 12 Dec 2017 09:27:45 GMT): rahulkannur (Tue, 12 Dec 2017 09:30:35 GMT): satyajitsasmal (Tue, 12 Dec 2017 09:35:57 GMT): satyajitsasmal (Tue, 12 Dec 2017 09:36:13 GMT): navdevl (Tue, 12 Dec 2017 09:37:07 GMT): navdevl (Tue, 12 Dec 2017 09:37:34 GMT): varun-raj (Tue, 12 Dec 2017 09:37:39 GMT): varun-raj (Tue, 12 Dec 2017 09:38:13 GMT): navdevl (Tue, 12 Dec 2017 09:38:38 GMT): varun-raj (Tue, 12 Dec 2017 09:39:06 GMT): rthatcher (Tue, 12 Dec 2017 09:45:25 GMT): rahulkannur (Tue, 12 Dec 2017 09:45:38 GMT): varun-raj (Tue, 12 Dec 2017 09:46:24 GMT): erNail (Tue, 12 Dec 2017 09:46:28 GMT): navdevl (Tue, 12 Dec 2017 09:46:52 GMT): rahulkannur (Tue, 12 Dec 2017 09:47:20 GMT): rahulkannur (Tue, 12 Dec 2017 09:50:06 GMT): varun-raj (Tue, 12 Dec 2017 09:50:44 GMT): rahulkannur (Tue, 12 Dec 2017 09:52:50 GMT): davidkel (Tue, 12 Dec 2017 09:53:04 GMT): varun-raj (Tue, 12 Dec 2017 09:54:40 GMT): varun-raj (Tue, 12 Dec 2017 09:54:51 GMT): tamycova (Tue, 12 Dec 2017 09:55:26 GMT): varun-raj (Tue, 12 Dec 2017 09:55:30 GMT): erNail (Tue, 12 Dec 2017 09:55:33 GMT): varun-raj (Tue, 12 Dec 2017 09:56:29 GMT): tamycova (Tue, 12 Dec 2017 10:02:02 GMT): mahoney1 (Tue, 12 Dec 2017 10:22:03 GMT): mahoney1 (Tue, 12 Dec 2017 10:22:03 GMT): JoshuaBarker (Tue, 12 Dec 2017 10:35:18 GMT): rthatcher (Tue, 12 Dec 2017 10:35:49 GMT): tamycova (Tue, 12 Dec 2017 10:42:06 GMT): rthatcher (Tue, 12 Dec 2017 10:46:10 GMT): tamycova (Tue, 12 Dec 2017 10:49:19 GMT): erNail (Tue, 12 Dec 2017 10:51:33 GMT): mna2016 (Tue, 12 Dec 2017 10:52:55 GMT): caroline-church (Tue, 12 Dec 2017 10:52:55 GMT): smithsj (Tue, 12 Dec 2017 10:53:49 GMT): caroline-church (Tue, 12 Dec 2017 10:54:38 GMT): smithsj (Tue, 12 Dec 2017 10:54:52 GMT): mna2016 (Tue, 12 Dec 2017 10:54:54 GMT): caroline-church (Tue, 12 Dec 2017 10:55:08 GMT): mna2016 (Tue, 12 Dec 2017 10:55:30 GMT): caroline-church (Tue, 12 Dec 2017 10:56:10 GMT): mna2016 (Tue, 12 Dec 2017 10:57:43 GMT): prabvi01 (Tue, 12 Dec 2017 10:59:59 GMT): prabvi01 (Tue, 12 Dec 2017 11:00:52 GMT): erNail (Tue, 12 Dec 2017 11:07:21 GMT): nmpacheco@gmail.com (Tue, 12 Dec 2017 11:08:26 GMT): caroline-church (Tue, 12 Dec 2017 11:08:31 GMT): caroline-church (Tue, 12 Dec 2017 11:08:31 GMT): erNail (Tue, 12 Dec 2017 11:10:02 GMT): caroline-church (Tue, 12 Dec 2017 11:10:51 GMT): erNail (Tue, 12 Dec 2017 11:11:27 GMT): caroline-church (Tue, 12 Dec 2017 11:12:03 GMT): caroline-church (Tue, 12 Dec 2017 11:12:03 GMT): caroline-church (Tue, 12 Dec 2017 11:12:47 GMT): erNail (Tue, 12 Dec 2017 11:15:04 GMT): erNail (Tue, 12 Dec 2017 11:15:04 GMT): caroline-church (Tue, 12 Dec 2017 11:16:38 GMT): erNail (Tue, 12 Dec 2017 11:31:53 GMT): caroline-church (Tue, 12 Dec 2017 11:32:02 GMT): varun-raj (Tue, 12 Dec 2017 11:41:38 GMT): navdevl (Tue, 12 Dec 2017 11:42:22 GMT): mahoney1 (Tue, 12 Dec 2017 12:14:17 GMT): varun-raj (Tue, 12 Dec 2017 12:25:35 GMT): varun-raj (Tue, 12 Dec 2017 12:26:15 GMT): kapilaArora (Tue, 12 Dec 2017 12:32:57 GMT): kapilaArora (Tue, 12 Dec 2017 12:33:38 GMT): kapilaArora (Tue, 12 Dec 2017 12:34:18 GMT): erNail (Tue, 12 Dec 2017 12:39:12 GMT): varun-raj (Tue, 12 Dec 2017 12:39:40 GMT): erNail (Tue, 12 Dec 2017 12:42:25 GMT): erNail (Tue, 12 Dec 2017 12:50:39 GMT): erNail (Tue, 12 Dec 2017 12:50:39 GMT): rthatcher (Tue, 12 Dec 2017 13:07:11 GMT): gen_el (Tue, 12 Dec 2017 13:17:20 GMT): gen_el (Tue, 12 Dec 2017 13:17:20 GMT): gen_el (Tue, 12 Dec 2017 13:17:20 GMT): kapilaArora (Tue, 12 Dec 2017 13:17:41 GMT): mahoney1 (Tue, 12 Dec 2017 13:23:21 GMT): davidkel (Tue, 12 Dec 2017 13:38:57 GMT): pangzineng (Tue, 12 Dec 2017 13:42:23 GMT): gen_el (Tue, 12 Dec 2017 13:46:08 GMT): davidkel (Tue, 12 Dec 2017 13:53:12 GMT): JeremyStanton (Tue, 12 Dec 2017 13:53:20 GMT): gen_el (Tue, 12 Dec 2017 13:58:00 GMT): gen_el (Tue, 12 Dec 2017 13:58:00 GMT): gen_el (Tue, 12 Dec 2017 13:58:00 GMT): davidkel (Tue, 12 Dec 2017 14:14:34 GMT): mahoney1 (Tue, 12 Dec 2017 14:15:43 GMT): ankashu (Tue, 12 Dec 2017 14:16:25 GMT): lucasdf (Tue, 12 Dec 2017 15:14:26 GMT): lucasdf (Tue, 12 Dec 2017 15:14:26 GMT): lucasdf (Tue, 12 Dec 2017 15:14:26 GMT): AkshayJindal (Tue, 12 Dec 2017 16:48:16 GMT): AkshayJindal (Tue, 12 Dec 2017 16:48:16 GMT): AkshayJindal (Tue, 12 Dec 2017 16:48:16 GMT): EmmvnuelCvs (Tue, 12 Dec 2017 17:59:40 GMT): gen_el (Tue, 12 Dec 2017 18:05:25 GMT): gen_el (Tue, 12 Dec 2017 18:05:25 GMT): gen_el (Tue, 12 Dec 2017 18:05:25 GMT): gen_el (Tue, 12 Dec 2017 18:05:25 GMT): gen_el (Tue, 12 Dec 2017 18:05:43 GMT): gen_el (Tue, 12 Dec 2017 18:06:17 GMT): gen_el (Tue, 12 Dec 2017 18:06:36 GMT): gen_el (Tue, 12 Dec 2017 18:06:36 GMT): gen_el (Tue, 12 Dec 2017 18:06:42 GMT): gen_el (Tue, 12 Dec 2017 18:07:32 GMT): gen_el (Tue, 12 Dec 2017 18:08:03 GMT): gen_el (Tue, 12 Dec 2017 18:09:07 GMT): gen_el (Tue, 12 Dec 2017 18:11:45 GMT): gen_el (Tue, 12 Dec 2017 18:12:22 GMT): gen_el (Tue, 12 Dec 2017 18:45:06 GMT): davidkel (Tue, 12 Dec 2017 19:46:46 GMT): gen_el (Tue, 12 Dec 2017 20:02:10 GMT): ankashu (Tue, 12 Dec 2017 20:03:59 GMT): nehalshah50 (Tue, 12 Dec 2017 20:12:49 GMT): nehalshah50 (Tue, 12 Dec 2017 20:15:18 GMT): mostafa.elsayyad (Tue, 12 Dec 2017 20:23:21 GMT): mostafa.elsayyad (Tue, 12 Dec 2017 20:23:24 GMT): aneb (Tue, 12 Dec 2017 20:50:26 GMT): ShawnDawn (Tue, 12 Dec 2017 21:15:15 GMT): silliman (Tue, 12 Dec 2017 21:38:18 GMT): silliman (Tue, 12 Dec 2017 21:47:55 GMT): silliman (Tue, 12 Dec 2017 21:47:55 GMT): silliman (Tue, 12 Dec 2017 21:47:55 GMT): silliman (Tue, 12 Dec 2017 21:47:55 GMT): gen_el (Tue, 12 Dec 2017 23:57:18 GMT): aneb (Wed, 13 Dec 2017 01:46:43 GMT): baoyangc (Wed, 13 Dec 2017 04:57:10 GMT): rahulkannur (Wed, 13 Dec 2017 04:59:56 GMT): rahulkannur (Wed, 13 Dec 2017 05:00:00 GMT): baoyangc (Wed, 13 Dec 2017 05:10:31 GMT): rahulkannur (Wed, 13 Dec 2017 05:11:14 GMT): baoyangc (Wed, 13 Dec 2017 05:12:01 GMT): baoyangc (Wed, 13 Dec 2017 05:12:35 GMT): rahulkannur (Wed, 13 Dec 2017 05:14:19 GMT): mvaibhavshah (Wed, 13 Dec 2017 05:14:29 GMT): rahulkannur (Wed, 13 Dec 2017 05:16:29 GMT): mvaibhavshah (Wed, 13 Dec 2017 05:16:58 GMT): mvaibhavshah (Wed, 13 Dec 2017 05:17:00 GMT): mvaibhavshah (Wed, 13 Dec 2017 05:17:30 GMT): rahulkannur (Wed, 13 Dec 2017 05:17:40 GMT): baoyangc (Wed, 13 Dec 2017 05:18:54 GMT): baoyangc (Wed, 13 Dec 2017 05:20:26 GMT): baoyangc (Wed, 13 Dec 2017 05:20:29 GMT): rahulkannur (Wed, 13 Dec 2017 05:26:33 GMT): rahulkannur (Wed, 13 Dec 2017 05:26:35 GMT): rahulkannur (Wed, 13 Dec 2017 05:27:27 GMT): baoyangc (Wed, 13 Dec 2017 05:39:26 GMT): baoyangc (Wed, 13 Dec 2017 05:39:54 GMT): baoyangc (Wed, 13 Dec 2017 05:51:45 GMT): pallavigajwani (Wed, 13 Dec 2017 06:40:57 GMT): pallavigajwani (Wed, 13 Dec 2017 06:41:00 GMT): prabhatkashyap (Wed, 13 Dec 2017 06:52:49 GMT): prabhatkashyap (Wed, 13 Dec 2017 06:54:17 GMT): VinayakDeshpande (Wed, 13 Dec 2017 07:12:49 GMT): FaysalAhmed (Wed, 13 Dec 2017 07:39:55 GMT): mahoney1 (Wed, 13 Dec 2017 08:15:02 GMT): varun-raj (Wed, 13 Dec 2017 09:07:21 GMT): varun-raj (Wed, 13 Dec 2017 09:07:30 GMT): smithsj (Wed, 13 Dec 2017 09:08:39 GMT): varun-raj (Wed, 13 Dec 2017 09:09:39 GMT): varun-raj (Wed, 13 Dec 2017 09:10:03 GMT): smithsj (Wed, 13 Dec 2017 09:14:56 GMT): smithsj (Wed, 13 Dec 2017 09:15:28 GMT): varun-raj (Wed, 13 Dec 2017 09:16:19 GMT): smithsj (Wed, 13 Dec 2017 09:17:15 GMT): smithsj (Wed, 13 Dec 2017 09:17:49 GMT): varun-raj (Wed, 13 Dec 2017 09:17:59 GMT): smithsj (Wed, 13 Dec 2017 09:18:09 GMT): varun-raj (Wed, 13 Dec 2017 09:18:18 GMT): varun-raj (Wed, 13 Dec 2017 09:18:18 GMT): smithsj (Wed, 13 Dec 2017 09:18:35 GMT): varun-raj (Wed, 13 Dec 2017 09:19:02 GMT): smithsj (Wed, 13 Dec 2017 09:19:26 GMT): varun-raj (Wed, 13 Dec 2017 09:20:01 GMT): smithsj (Wed, 13 Dec 2017 09:20:01 GMT): smithsj (Wed, 13 Dec 2017 09:21:33 GMT): varun-raj (Wed, 13 Dec 2017 09:30:17 GMT): varun-raj (Wed, 13 Dec 2017 09:32:33 GMT): rthatcher (Wed, 13 Dec 2017 09:35:44 GMT): rthatcher (Wed, 13 Dec 2017 09:35:44 GMT): mahoney1 (Wed, 13 Dec 2017 09:44:35 GMT): smithsj (Wed, 13 Dec 2017 09:44:58 GMT): varun-raj (Wed, 13 Dec 2017 09:47:21 GMT): mahoney1 (Wed, 13 Dec 2017 09:57:44 GMT): prabhatkashyap (Wed, 13 Dec 2017 10:39:58 GMT): pradeeppadmarajaiah (Wed, 13 Dec 2017 10:45:03 GMT): pradeeppadmarajaiah (Wed, 13 Dec 2017 10:45:05 GMT): mahoney1 (Wed, 13 Dec 2017 11:37:24 GMT): pangzineng (Wed, 13 Dec 2017 11:43:47 GMT): varun-raj (Wed, 13 Dec 2017 11:52:44 GMT): mahoney1 (Wed, 13 Dec 2017 12:50:58 GMT): mahoney1 (Wed, 13 Dec 2017 13:05:38 GMT): odalle (Wed, 13 Dec 2017 13:15:15 GMT): wininani (Wed, 13 Dec 2017 13:16:11 GMT): mahoney1 (Wed, 13 Dec 2017 13:16:24 GMT): mahoney1 (Wed, 13 Dec 2017 13:21:29 GMT): wininani (Wed, 13 Dec 2017 13:23:42 GMT): wininani (Wed, 13 Dec 2017 13:24:41 GMT): mahoney1 (Wed, 13 Dec 2017 13:41:53 GMT): mahoney1 (Wed, 13 Dec 2017 13:41:53 GMT): wininani (Wed, 13 Dec 2017 13:43:44 GMT): wininani (Wed, 13 Dec 2017 13:43:52 GMT): wininani (Wed, 13 Dec 2017 13:43:52 GMT): wininani (Wed, 13 Dec 2017 13:48:27 GMT): mahoney1 (Wed, 13 Dec 2017 13:59:08 GMT): mahoney1 (Wed, 13 Dec 2017 13:59:08 GMT): mahoney1 (Wed, 13 Dec 2017 13:59:08 GMT): mahoney1 (Wed, 13 Dec 2017 13:59:08 GMT): mahoney1 (Wed, 13 Dec 2017 13:59:12 GMT): mahoney1 (Wed, 13 Dec 2017 14:05:24 GMT): mostafa.elsayyad (Wed, 13 Dec 2017 16:13:58 GMT): mostafa.elsayyad (Wed, 13 Dec 2017 16:21:43 GMT): rthatcher (Wed, 13 Dec 2017 17:04:51 GMT): mahoney1 (Wed, 13 Dec 2017 17:18:26 GMT): mahoney1 (Wed, 13 Dec 2017 17:20:42 GMT): mahoney1 (Wed, 13 Dec 2017 17:20:42 GMT): mahoney1 (Wed, 13 Dec 2017 17:20:42 GMT): mahoney1 (Wed, 13 Dec 2017 17:20:42 GMT): alexvicegrab (Wed, 13 Dec 2017 17:41:08 GMT): grice_32 (Wed, 13 Dec 2017 17:45:04 GMT): mostafa.elsayyad (Wed, 13 Dec 2017 17:51:20 GMT): mahoney1 (Wed, 13 Dec 2017 18:24:05 GMT): mahoney1 (Wed, 13 Dec 2017 18:31:34 GMT): mahoney1 (Wed, 13 Dec 2017 18:31:34 GMT): mostafa.elsayyad (Wed, 13 Dec 2017 18:36:47 GMT): leezie (Wed, 13 Dec 2017 18:38:54 GMT): leezie (Wed, 13 Dec 2017 18:39:43 GMT): mostafa.elsayyad (Wed, 13 Dec 2017 18:46:32 GMT): mostafa.elsayyad (Wed, 13 Dec 2017 18:48:34 GMT): grice_32 (Wed, 13 Dec 2017 18:53:04 GMT): odalle (Wed, 13 Dec 2017 20:47:42 GMT): Dau (Wed, 13 Dec 2017 23:10:25 GMT): MuhammadSalah (Thu, 14 Dec 2017 01:45:37 GMT): MuhammadSalah (Thu, 14 Dec 2017 01:46:11 GMT): MuhammadSalah (Thu, 14 Dec 2017 01:46:49 GMT): Jaline (Thu, 14 Dec 2017 03:48:05 GMT): Jaline (Thu, 14 Dec 2017 03:52:31 GMT): varun-raj (Thu, 14 Dec 2017 04:05:49 GMT): ChevonDebora (Thu, 14 Dec 2017 04:49:39 GMT): ChevonDebora (Thu, 14 Dec 2017 04:50:16 GMT): wininani (Thu, 14 Dec 2017 05:36:01 GMT): varun-raj (Thu, 14 Dec 2017 05:37:24 GMT): guoger (Thu, 14 Dec 2017 05:38:17 GMT): Luxii (Thu, 14 Dec 2017 05:38:23 GMT): Luxii (Thu, 14 Dec 2017 05:38:23 GMT): varun-raj (Thu, 14 Dec 2017 05:39:23 GMT): mvaibhavshah (Thu, 14 Dec 2017 05:42:06 GMT): varun-raj (Thu, 14 Dec 2017 05:42:36 GMT): mvaibhavshah (Thu, 14 Dec 2017 05:42:58 GMT): mvaibhavshah (Thu, 14 Dec 2017 05:43:36 GMT): varun-raj (Thu, 14 Dec 2017 05:43:42 GMT): mvaibhavshah (Thu, 14 Dec 2017 05:43:47 GMT): mvaibhavshah (Thu, 14 Dec 2017 05:46:21 GMT): bh4rtp (Thu, 14 Dec 2017 05:47:12 GMT): varunagarwal (Thu, 14 Dec 2017 05:52:56 GMT): bogdancioc (Thu, 14 Dec 2017 06:20:31 GMT): bogdancioc (Thu, 14 Dec 2017 06:25:47 GMT): bogdancioc (Thu, 14 Dec 2017 06:25:47 GMT): FaysalAhmed (Thu, 14 Dec 2017 06:31:55 GMT): bogdancioc (Thu, 14 Dec 2017 06:34:33 GMT): javapriyan (Thu, 14 Dec 2017 06:58:01 GMT): gen_el (Thu, 14 Dec 2017 08:30:35 GMT): bh4rtp (Thu, 14 Dec 2017 08:53:13 GMT): bh4rtp (Thu, 14 Dec 2017 08:53:41 GMT): bh4rtp (Thu, 14 Dec 2017 08:53:41 GMT): bh4rtp (Thu, 14 Dec 2017 08:53:41 GMT): flash139 (Thu, 14 Dec 2017 08:55:07 GMT): zhoujunshan (Thu, 14 Dec 2017 09:13:46 GMT): zhoujunshan (Thu, 14 Dec 2017 09:13:50 GMT): zhoujunshan (Thu, 14 Dec 2017 09:14:12 GMT): bh4rtp (Thu, 14 Dec 2017 09:19:25 GMT): navdevl (Thu, 14 Dec 2017 09:24:02 GMT): bh4rtp (Thu, 14 Dec 2017 09:25:26 GMT): zhoujunshan (Thu, 14 Dec 2017 09:26:27 GMT): nuxibyte_old (Thu, 14 Dec 2017 09:44:40 GMT): rthatcher (Thu, 14 Dec 2017 09:47:18 GMT): mahoney1 (Thu, 14 Dec 2017 10:07:53 GMT): varun-raj (Thu, 14 Dec 2017 10:09:50 GMT): mahoney1 (Thu, 14 Dec 2017 10:11:48 GMT): mahoney1 (Thu, 14 Dec 2017 10:11:48 GMT): mahoney1 (Thu, 14 Dec 2017 10:11:48 GMT): mahoney1 (Thu, 14 Dec 2017 10:11:48 GMT): mahoney1 (Thu, 14 Dec 2017 10:11:48 GMT): rthatcher (Thu, 14 Dec 2017 10:15:20 GMT): leezie (Thu, 14 Dec 2017 10:22:50 GMT): leezie (Thu, 14 Dec 2017 10:23:53 GMT): mahoney1 (Thu, 14 Dec 2017 10:24:41 GMT): mahoney1 (Thu, 14 Dec 2017 10:39:04 GMT): rthatcher (Thu, 14 Dec 2017 10:41:03 GMT): rthatcher (Thu, 14 Dec 2017 10:41:03 GMT): rthatcher (Thu, 14 Dec 2017 10:41:03 GMT): flash139 (Thu, 14 Dec 2017 10:53:00 GMT): mahoney1 (Thu, 14 Dec 2017 10:56:08 GMT): yogesh.fulsunge (Thu, 14 Dec 2017 10:58:00 GMT): yogesh.fulsunge (Thu, 14 Dec 2017 10:58:33 GMT): yogesh.fulsunge (Thu, 14 Dec 2017 11:00:21 GMT): jaguarg (Thu, 14 Dec 2017 11:01:54 GMT): yogesh.fulsunge (Thu, 14 Dec 2017 11:02:41 GMT): yogesh.fulsunge (Thu, 14 Dec 2017 11:06:44 GMT): vvnick (Thu, 14 Dec 2017 11:08:36 GMT): varun-raj (Thu, 14 Dec 2017 11:09:24 GMT): bogdancioc (Thu, 14 Dec 2017 11:13:47 GMT): davidkel (Thu, 14 Dec 2017 11:19:07 GMT): odalle (Thu, 14 Dec 2017 11:24:02 GMT): navdevl (Thu, 14 Dec 2017 11:24:39 GMT): yogesh.fulsunge (Thu, 14 Dec 2017 11:24:45 GMT): mahoney1 (Thu, 14 Dec 2017 11:24:54 GMT): yogesh.fulsunge (Thu, 14 Dec 2017 11:25:54 GMT): yogesh.fulsunge (Thu, 14 Dec 2017 11:28:41 GMT): yogesh.fulsunge (Thu, 14 Dec 2017 11:33:06 GMT): mahoney1 (Thu, 14 Dec 2017 11:35:08 GMT): mahoney1 (Thu, 14 Dec 2017 11:35:08 GMT): rthatcher (Thu, 14 Dec 2017 11:41:56 GMT): varun-raj (Thu, 14 Dec 2017 11:49:20 GMT): mahoney1 (Thu, 14 Dec 2017 12:00:21 GMT): mahoney1 (Thu, 14 Dec 2017 12:00:21 GMT): MaratFatkullin (Thu, 14 Dec 2017 12:11:32 GMT): flash139 (Thu, 14 Dec 2017 12:12:15 GMT): jaguarg (Thu, 14 Dec 2017 12:13:49 GMT): rddill (Thu, 14 Dec 2017 12:14:18 GMT): MaratFatkullin (Thu, 14 Dec 2017 12:16:41 GMT): mahoney1 (Thu, 14 Dec 2017 12:23:41 GMT): jaguarg (Thu, 14 Dec 2017 12:27:46 GMT): jaguarg (Thu, 14 Dec 2017 12:28:16 GMT): jaguarg (Thu, 14 Dec 2017 12:28:16 GMT): jaguarg (Thu, 14 Dec 2017 12:28:20 GMT): jaguarg (Thu, 14 Dec 2017 12:28:20 GMT): rahulkannur (Thu, 14 Dec 2017 12:43:15 GMT): lucasdf (Thu, 14 Dec 2017 13:26:07 GMT): lucasdf (Thu, 14 Dec 2017 13:26:07 GMT): lucasdf (Thu, 14 Dec 2017 13:26:07 GMT): lucasdf (Thu, 14 Dec 2017 13:26:07 GMT): rddill (Thu, 14 Dec 2017 13:27:04 GMT): rthatcher (Thu, 14 Dec 2017 13:44:33 GMT): jaguarg (Thu, 14 Dec 2017 13:47:46 GMT): TommyKarlsson (Thu, 14 Dec 2017 14:22:25 GMT): TommyKarlsson (Thu, 14 Dec 2017 14:22:34 GMT): TommyKarlsson (Thu, 14 Dec 2017 14:25:04 GMT): MaratFatkullin (Thu, 14 Dec 2017 14:30:49 GMT): odalle (Thu, 14 Dec 2017 14:51:57 GMT): odalle (Thu, 14 Dec 2017 14:52:21 GMT): odalle (Thu, 14 Dec 2017 14:52:45 GMT): odalle (Thu, 14 Dec 2017 14:52:45 GMT): odalle (Thu, 14 Dec 2017 14:52:51 GMT): odalle (Thu, 14 Dec 2017 15:08:50 GMT): tfuanig (Thu, 14 Dec 2017 16:12:41 GMT): tfuanig (Thu, 14 Dec 2017 16:19:19 GMT): bsteinfeld (Thu, 14 Dec 2017 16:21:17 GMT): tfuanig (Thu, 14 Dec 2017 16:22:06 GMT): bsteinfeld (Thu, 14 Dec 2017 16:23:29 GMT): tfuanig (Thu, 14 Dec 2017 16:23:43 GMT): bsteinfeld (Thu, 14 Dec 2017 16:24:06 GMT): tfuanig (Thu, 14 Dec 2017 16:27:06 GMT): bsteinfeld (Thu, 14 Dec 2017 16:27:07 GMT): bsteinfeld (Thu, 14 Dec 2017 16:28:43 GMT): bsteinfeld (Thu, 14 Dec 2017 16:28:43 GMT): mahoney1 (Thu, 14 Dec 2017 16:41:24 GMT): jaguarg (Thu, 14 Dec 2017 17:09:49 GMT): rthatcher (Thu, 14 Dec 2017 17:23:08 GMT): lucasdf (Thu, 14 Dec 2017 19:32:49 GMT): lucasdf (Thu, 14 Dec 2017 19:32:49 GMT): benoit.razet (Thu, 14 Dec 2017 20:55:21 GMT): pbd3 (Thu, 14 Dec 2017 21:01:38 GMT): pbd3 (Thu, 14 Dec 2017 21:06:15 GMT): CT123 (Thu, 14 Dec 2017 21:17:21 GMT): CT123 (Thu, 14 Dec 2017 21:20:35 GMT): davidkel (Thu, 14 Dec 2017 21:51:54 GMT): NaveenSachdeva (Fri, 15 Dec 2017 03:09:43 GMT): NaveenSachdeva (Fri, 15 Dec 2017 03:10:07 GMT): NaveenSachdeva (Fri, 15 Dec 2017 03:14:24 GMT): NaveenSachdeva (Fri, 15 Dec 2017 03:18:05 GMT): labcoinpoc (Fri, 15 Dec 2017 04:19:27 GMT): yogesh.fulsunge (Fri, 15 Dec 2017 04:51:21 GMT): rahulkannur (Fri, 15 Dec 2017 04:58:02 GMT): pallavigajwani (Fri, 15 Dec 2017 05:25:45 GMT): rahulkannur (Fri, 15 Dec 2017 05:29:58 GMT): pallavigajwani (Fri, 15 Dec 2017 05:30:46 GMT): pallavigajwani (Fri, 15 Dec 2017 05:31:02 GMT): maris.c (Fri, 15 Dec 2017 07:00:53 GMT): maris.c (Fri, 15 Dec 2017 07:00:53 GMT): varunagarwal (Fri, 15 Dec 2017 07:05:05 GMT): varun-raj (Fri, 15 Dec 2017 07:07:45 GMT): varun-raj (Fri, 15 Dec 2017 07:08:30 GMT): RGOPALAKMAPLE (Fri, 15 Dec 2017 07:10:34 GMT): RGOPALAKMAPLE (Fri, 15 Dec 2017 07:12:51 GMT): varunagarwal (Fri, 15 Dec 2017 07:13:37 GMT): RGOPALAKMAPLE (Fri, 15 Dec 2017 07:17:29 GMT): RGOPALAKMAPLE (Fri, 15 Dec 2017 07:18:37 GMT): odalle (Fri, 15 Dec 2017 08:11:44 GMT): odalle (Fri, 15 Dec 2017 08:13:09 GMT): odalle (Fri, 15 Dec 2017 08:13:51 GMT): labcoinpoc (Fri, 15 Dec 2017 08:23:00 GMT): davidkel (Fri, 15 Dec 2017 08:33:51 GMT): davidkel (Fri, 15 Dec 2017 08:36:35 GMT): Petr.Shypila (Fri, 15 Dec 2017 09:01:43 GMT): Petr.Shypila (Fri, 15 Dec 2017 09:04:31 GMT): Petr.Shypila (Fri, 15 Dec 2017 09:05:03 GMT): odalle (Fri, 15 Dec 2017 09:09:46 GMT): Petr.Shypila (Fri, 15 Dec 2017 09:17:33 GMT): mahoney1 (Fri, 15 Dec 2017 09:42:04 GMT): yogesh.fulsunge (Fri, 15 Dec 2017 09:46:11 GMT): mahoney1 (Fri, 15 Dec 2017 09:49:59 GMT): phanhoangnhan91 (Fri, 15 Dec 2017 09:51:00 GMT): phanhoangnhan91 (Fri, 15 Dec 2017 09:52:23 GMT): phanhoangnhan91 (Fri, 15 Dec 2017 09:52:23 GMT): yogesh.fulsunge (Fri, 15 Dec 2017 09:53:07 GMT): mahoney1 (Fri, 15 Dec 2017 09:53:47 GMT): yogesh.fulsunge (Fri, 15 Dec 2017 09:54:30 GMT): odalle (Fri, 15 Dec 2017 10:07:01 GMT): rthatcher (Fri, 15 Dec 2017 10:22:37 GMT): rthatcher (Fri, 15 Dec 2017 10:22:37 GMT): rthatcher (Fri, 15 Dec 2017 10:27:00 GMT): odalle (Fri, 15 Dec 2017 10:31:00 GMT): rthatcher (Fri, 15 Dec 2017 10:31:04 GMT): varun-raj (Fri, 15 Dec 2017 10:46:11 GMT): varun-raj (Fri, 15 Dec 2017 10:46:34 GMT): mahoney1 (Fri, 15 Dec 2017 10:49:09 GMT): mahoney1 (Fri, 15 Dec 2017 10:49:16 GMT): mahoney1 (Fri, 15 Dec 2017 10:51:18 GMT): mahoney1 (Fri, 15 Dec 2017 10:51:18 GMT): varun-raj (Fri, 15 Dec 2017 11:01:21 GMT): odalle (Fri, 15 Dec 2017 11:38:55 GMT): mmick (Fri, 15 Dec 2017 11:51:52 GMT): erNail (Fri, 15 Dec 2017 11:52:48 GMT): yogesh.fulsunge (Fri, 15 Dec 2017 11:53:16 GMT): mahoney1 (Fri, 15 Dec 2017 11:53:17 GMT): yogesh.fulsunge (Fri, 15 Dec 2017 11:54:11 GMT): erNail (Fri, 15 Dec 2017 11:54:30 GMT): mahoney1 (Fri, 15 Dec 2017 11:54:51 GMT): yogesh.fulsunge (Fri, 15 Dec 2017 11:57:13 GMT): mahoney1 (Fri, 15 Dec 2017 12:07:21 GMT): mmick (Fri, 15 Dec 2017 12:29:55 GMT): odalle (Fri, 15 Dec 2017 12:34:41 GMT): odalle (Fri, 15 Dec 2017 12:34:41 GMT): pallavigajwani (Fri, 15 Dec 2017 12:40:16 GMT): pallavigajwani (Fri, 15 Dec 2017 12:45:00 GMT): pallavigajwani (Fri, 15 Dec 2017 12:46:51 GMT): odalle (Fri, 15 Dec 2017 12:50:11 GMT): yogesh.fulsunge (Fri, 15 Dec 2017 12:52:36 GMT): yogesh.fulsunge (Fri, 15 Dec 2017 12:52:56 GMT): rthatcher (Fri, 15 Dec 2017 13:22:18 GMT): papegaaij (Fri, 15 Dec 2017 13:26:43 GMT): NaveenSachdeva (Fri, 15 Dec 2017 13:35:02 GMT): papegaaij (Fri, 15 Dec 2017 13:35:48 GMT): papegaaij (Fri, 15 Dec 2017 13:36:47 GMT): mahoney1 (Fri, 15 Dec 2017 13:40:01 GMT): burnhamrobertp (Fri, 15 Dec 2017 13:57:53 GMT): burnhamrobertp (Fri, 15 Dec 2017 14:00:13 GMT): burnhamrobertp (Fri, 15 Dec 2017 14:01:55 GMT): burnhamrobertp (Fri, 15 Dec 2017 14:03:13 GMT): papegaaij (Fri, 15 Dec 2017 14:04:03 GMT): burnhamrobertp (Fri, 15 Dec 2017 14:05:11 GMT): burnhamrobertp (Fri, 15 Dec 2017 14:05:11 GMT): burnhamrobertp (Fri, 15 Dec 2017 14:05:11 GMT): burnhamrobertp (Fri, 15 Dec 2017 14:06:24 GMT): burnhamrobertp (Fri, 15 Dec 2017 14:06:40 GMT): papegaaij (Fri, 15 Dec 2017 14:08:09 GMT): burnhamrobertp (Fri, 15 Dec 2017 14:08:27 GMT): papegaaij (Fri, 15 Dec 2017 14:08:34 GMT): burnhamrobertp (Fri, 15 Dec 2017 14:08:58 GMT): burnhamrobertp (Fri, 15 Dec 2017 14:08:58 GMT): papegaaij (Fri, 15 Dec 2017 14:09:33 GMT): burnhamrobertp (Fri, 15 Dec 2017 14:09:55 GMT): papegaaij (Fri, 15 Dec 2017 14:10:15 GMT): burnhamrobertp (Fri, 15 Dec 2017 14:10:18 GMT): papegaaij (Fri, 15 Dec 2017 14:14:46 GMT): papegaaij (Fri, 15 Dec 2017 14:15:19 GMT): NaveenSachdeva (Fri, 15 Dec 2017 14:38:25 GMT): mahoney1 (Fri, 15 Dec 2017 14:40:09 GMT): mahoney1 (Fri, 15 Dec 2017 14:40:09 GMT): mahoney1 (Fri, 15 Dec 2017 14:40:09 GMT): mahoney1 (Fri, 15 Dec 2017 14:40:09 GMT): NaveenSachdeva (Fri, 15 Dec 2017 14:42:23 GMT): papegaaij (Fri, 15 Dec 2017 14:44:05 GMT): NaveenSachdeva (Fri, 15 Dec 2017 14:47:02 GMT): papegaaij (Fri, 15 Dec 2017 14:47:03 GMT): yogesh.fulsunge (Fri, 15 Dec 2017 14:48:42 GMT): yogesh.fulsunge (Fri, 15 Dec 2017 14:48:52 GMT): papegaaij (Fri, 15 Dec 2017 14:50:32 GMT): papegaaij (Fri, 15 Dec 2017 14:53:00 GMT): mahoney1 (Fri, 15 Dec 2017 15:00:37 GMT): mahoney1 (Fri, 15 Dec 2017 15:00:37 GMT): mahoney1 (Fri, 15 Dec 2017 15:00:37 GMT): papegaaij (Fri, 15 Dec 2017 15:02:26 GMT): mahoney1 (Fri, 15 Dec 2017 15:03:35 GMT): mahoney1 (Fri, 15 Dec 2017 15:03:35 GMT): papegaaij (Fri, 15 Dec 2017 15:07:09 GMT): papegaaij (Fri, 15 Dec 2017 15:07:39 GMT): papegaaij (Fri, 15 Dec 2017 15:09:35 GMT): mostafa.elsayyad (Fri, 15 Dec 2017 15:16:50 GMT): cweiers (Fri, 15 Dec 2017 15:17:45 GMT): mahoney1 (Fri, 15 Dec 2017 15:19:27 GMT): papegaaij (Fri, 15 Dec 2017 15:24:07 GMT): rthatcher (Fri, 15 Dec 2017 15:24:31 GMT): papegaaij (Fri, 15 Dec 2017 15:25:03 GMT): papegaaij (Fri, 15 Dec 2017 15:26:07 GMT): papegaaij (Fri, 15 Dec 2017 15:28:19 GMT): mahoney1 (Fri, 15 Dec 2017 15:30:56 GMT): mahoney1 (Fri, 15 Dec 2017 15:30:56 GMT): papegaaij (Fri, 15 Dec 2017 15:32:39 GMT): papegaaij (Fri, 15 Dec 2017 15:32:53 GMT): papegaaij (Fri, 15 Dec 2017 15:33:15 GMT): yogesh.fulsunge (Fri, 15 Dec 2017 15:33:42 GMT): yogesh.fulsunge (Fri, 15 Dec 2017 15:33:43 GMT): mahoney1 (Fri, 15 Dec 2017 15:50:49 GMT): mahoney1 (Fri, 15 Dec 2017 15:50:49 GMT): ankashu (Fri, 15 Dec 2017 16:49:30 GMT): mahoney1 (Fri, 15 Dec 2017 16:57:30 GMT): mahoney1 (Fri, 15 Dec 2017 16:57:30 GMT): mahoney1 (Fri, 15 Dec 2017 16:57:30 GMT): mahoney1 (Fri, 15 Dec 2017 16:57:30 GMT): mahoney1 (Fri, 15 Dec 2017 16:57:30 GMT): jon_s (Fri, 15 Dec 2017 17:17:14 GMT): ankashu (Fri, 15 Dec 2017 17:40:43 GMT): ankashu (Fri, 15 Dec 2017 17:41:43 GMT): mahoney1 (Fri, 15 Dec 2017 17:45:33 GMT): davidkel (Fri, 15 Dec 2017 17:46:45 GMT): ankashu (Fri, 15 Dec 2017 18:00:14 GMT): jon_s (Fri, 15 Dec 2017 18:45:46 GMT): InduBhatti (Fri, 15 Dec 2017 19:12:30 GMT): InduBhatti (Fri, 15 Dec 2017 19:13:52 GMT): InduBhatti (Fri, 15 Dec 2017 19:13:54 GMT): InduBhatti (Fri, 15 Dec 2017 19:14:01 GMT): NaveenSachdeva (Fri, 15 Dec 2017 19:16:17 GMT): NaveenSachdeva (Fri, 15 Dec 2017 19:16:17 GMT): InduBhatti (Fri, 15 Dec 2017 19:16:56 GMT): InduBhatti (Fri, 15 Dec 2017 19:18:31 GMT): NaveenSachdeva (Fri, 15 Dec 2017 19:19:01 GMT): InduBhatti (Fri, 15 Dec 2017 19:20:37 GMT): InduBhatti (Fri, 15 Dec 2017 19:20:55 GMT): lucasdf (Fri, 15 Dec 2017 19:24:27 GMT): davidkel (Fri, 15 Dec 2017 19:26:07 GMT): odalle (Fri, 15 Dec 2017 19:28:05 GMT): lucasdf (Fri, 15 Dec 2017 19:31:23 GMT): lucasdf (Fri, 15 Dec 2017 19:31:23 GMT): davidkel (Fri, 15 Dec 2017 19:33:46 GMT): NaveenSachdeva (Fri, 15 Dec 2017 19:41:06 GMT): jon_s (Fri, 15 Dec 2017 19:48:08 GMT): odalle (Fri, 15 Dec 2017 19:51:24 GMT): rtbz (Sat, 16 Dec 2017 04:38:51 GMT): rtbz (Sat, 16 Dec 2017 04:40:37 GMT): varun-raj (Sat, 16 Dec 2017 04:52:22 GMT): rbole (Sat, 16 Dec 2017 06:16:23 GMT): mmick (Sat, 16 Dec 2017 12:05:18 GMT): mmick (Sat, 16 Dec 2017 12:05:18 GMT): mmick (Sat, 16 Dec 2017 12:05:25 GMT): ankashu (Sat, 16 Dec 2017 13:36:35 GMT): mmick (Sat, 16 Dec 2017 13:39:00 GMT): ankashu (Sat, 16 Dec 2017 13:40:05 GMT): mmick (Sat, 16 Dec 2017 13:40:55 GMT): mmick (Sat, 16 Dec 2017 14:12:24 GMT): greg2git (Sat, 16 Dec 2017 14:29:57 GMT): bogdancioc (Sat, 16 Dec 2017 15:04:07 GMT): bogdancioc (Sat, 16 Dec 2017 15:27:51 GMT): ConnerP (Sat, 16 Dec 2017 17:26:43 GMT): ConnerP (Sat, 16 Dec 2017 17:26:58 GMT): colltrix (Sun, 17 Dec 2017 01:33:48 GMT): colltrix (Sun, 17 Dec 2017 01:39:24 GMT): lucasdf (Sun, 17 Dec 2017 02:24:04 GMT): lucasdf (Sun, 17 Dec 2017 02:24:04 GMT): lucasdf (Sun, 17 Dec 2017 02:24:04 GMT): varun-raj (Sun, 17 Dec 2017 03:54:01 GMT): ledger (Sun, 17 Dec 2017 08:53:28 GMT): odalle (Sun, 17 Dec 2017 10:26:30 GMT): prabvi01 (Sun, 17 Dec 2017 11:59:32 GMT): jasoncys (Sun, 17 Dec 2017 12:17:54 GMT): varun-raj (Sun, 17 Dec 2017 13:33:23 GMT): snowy13 (Sun, 17 Dec 2017 13:44:44 GMT): odalle (Sun, 17 Dec 2017 14:01:45 GMT): odalle (Sun, 17 Dec 2017 14:01:45 GMT): snowy13 (Sun, 17 Dec 2017 14:13:49 GMT): odalle (Sun, 17 Dec 2017 14:14:55 GMT): snowy13 (Sun, 17 Dec 2017 14:15:45 GMT): odalle (Sun, 17 Dec 2017 14:17:25 GMT): odalle (Sun, 17 Dec 2017 14:17:25 GMT): bogdancioc (Sun, 17 Dec 2017 14:27:06 GMT): bogdancioc (Sun, 17 Dec 2017 14:27:06 GMT): bogdancioc (Sun, 17 Dec 2017 14:29:15 GMT): snowy13 (Sun, 17 Dec 2017 14:37:58 GMT): Dau (Sun, 17 Dec 2017 17:29:10 GMT): iyerrama25 (Sun, 17 Dec 2017 17:35:51 GMT): Menniti (Sun, 17 Dec 2017 17:58:19 GMT): Menniti (Sun, 17 Dec 2017 17:58:52 GMT): odalle (Sun, 17 Dec 2017 19:34:05 GMT): tennenjl (Sun, 17 Dec 2017 21:09:30 GMT): aneb (Mon, 18 Dec 2017 01:02:31 GMT): tennenjl (Mon, 18 Dec 2017 01:11:46 GMT): marc0o (Mon, 18 Dec 2017 01:22:02 GMT): sayan-chatterjee (Mon, 18 Dec 2017 05:18:51 GMT): SauravAnand (Mon, 18 Dec 2017 05:29:45 GMT): aneb (Mon, 18 Dec 2017 05:32:51 GMT): SauravAnand (Mon, 18 Dec 2017 05:33:29 GMT): SauravAnand (Mon, 18 Dec 2017 05:33:44 GMT): SauravAnand (Mon, 18 Dec 2017 05:34:05 GMT): Santhosh_S (Mon, 18 Dec 2017 06:28:22 GMT): navyapraniyath (Mon, 18 Dec 2017 07:39:25 GMT): Abhi119 (Mon, 18 Dec 2017 08:03:26 GMT): bh4rtp (Mon, 18 Dec 2017 09:23:24 GMT): bh4rtp (Mon, 18 Dec 2017 09:23:24 GMT): rthatcher (Mon, 18 Dec 2017 09:27:44 GMT): rthatcher (Mon, 18 Dec 2017 09:32:14 GMT): rahulkannur (Mon, 18 Dec 2017 09:36:46 GMT): bh4rtp (Mon, 18 Dec 2017 09:46:20 GMT): rthatcher (Mon, 18 Dec 2017 09:47:33 GMT): rahulkannur (Mon, 18 Dec 2017 09:55:12 GMT): bh4rtp (Mon, 18 Dec 2017 09:57:10 GMT): bh4rtp (Mon, 18 Dec 2017 09:57:10 GMT): bh4rtp (Mon, 18 Dec 2017 10:01:55 GMT): mayur.relekar (Mon, 18 Dec 2017 10:18:05 GMT): JoshuaBarker (Mon, 18 Dec 2017 10:36:32 GMT): suryasuresh06 (Mon, 18 Dec 2017 10:37:43 GMT): suryasuresh06 (Mon, 18 Dec 2017 10:38:15 GMT): rthatcher (Mon, 18 Dec 2017 10:50:29 GMT): nickyromeijn (Mon, 18 Dec 2017 11:07:25 GMT): nickyromeijn (Mon, 18 Dec 2017 11:10:02 GMT): nickyromeijn (Mon, 18 Dec 2017 11:11:37 GMT): nickyromeijn (Mon, 18 Dec 2017 11:20:25 GMT): nickyromeijn (Mon, 18 Dec 2017 11:20:25 GMT): nickyromeijn (Mon, 18 Dec 2017 11:20:25 GMT): nickyromeijn (Mon, 18 Dec 2017 11:20:25 GMT): nickyromeijn (Mon, 18 Dec 2017 11:20:25 GMT): jon_s (Mon, 18 Dec 2017 11:45:54 GMT): nickyromeijn (Mon, 18 Dec 2017 12:10:29 GMT): mahoney1 (Mon, 18 Dec 2017 12:13:53 GMT): nickyromeijn (Mon, 18 Dec 2017 12:14:22 GMT): nickyromeijn (Mon, 18 Dec 2017 12:15:14 GMT): nickyromeijn (Mon, 18 Dec 2017 12:15:14 GMT): nickyromeijn (Mon, 18 Dec 2017 12:24:48 GMT): nickyromeijn (Mon, 18 Dec 2017 12:24:48 GMT): lucasdf (Mon, 18 Dec 2017 12:38:56 GMT): lucasdf (Mon, 18 Dec 2017 12:38:56 GMT): lucasdf (Mon, 18 Dec 2017 12:38:56 GMT): lucasdf (Mon, 18 Dec 2017 12:38:56 GMT): lucasdf (Mon, 18 Dec 2017 12:38:56 GMT): lucasdf (Mon, 18 Dec 2017 12:38:56 GMT): mahoney1 (Mon, 18 Dec 2017 12:53:38 GMT): mahoney1 (Mon, 18 Dec 2017 12:53:38 GMT): nickyromeijn (Mon, 18 Dec 2017 12:58:56 GMT): mahoney1 (Mon, 18 Dec 2017 12:59:16 GMT): nickyromeijn (Mon, 18 Dec 2017 12:59:29 GMT): nickyromeijn (Mon, 18 Dec 2017 12:59:49 GMT): nickyromeijn (Mon, 18 Dec 2017 13:00:35 GMT): mahoney1 (Mon, 18 Dec 2017 13:02:04 GMT): mahoney1 (Mon, 18 Dec 2017 13:02:04 GMT): jaguarg (Mon, 18 Dec 2017 13:02:33 GMT): jaguarg (Mon, 18 Dec 2017 13:02:33 GMT): nickyromeijn (Mon, 18 Dec 2017 13:02:47 GMT): mahoney1 (Mon, 18 Dec 2017 13:04:43 GMT): mahoney1 (Mon, 18 Dec 2017 13:19:44 GMT): gen_el (Mon, 18 Dec 2017 13:25:11 GMT): gen_el (Mon, 18 Dec 2017 13:25:11 GMT): gen_el (Mon, 18 Dec 2017 13:25:11 GMT): nickyromeijn (Mon, 18 Dec 2017 13:39:36 GMT): nickyromeijn (Mon, 18 Dec 2017 13:40:04 GMT): rthatcher (Mon, 18 Dec 2017 14:02:26 GMT): rthatcher (Mon, 18 Dec 2017 14:02:26 GMT): nickyromeijn (Mon, 18 Dec 2017 14:02:53 GMT): nickyromeijn (Mon, 18 Dec 2017 14:03:07 GMT): rthatcher (Mon, 18 Dec 2017 14:07:25 GMT): lucasdf (Mon, 18 Dec 2017 14:09:56 GMT): gen_el (Mon, 18 Dec 2017 14:22:46 GMT): rthatcher (Mon, 18 Dec 2017 14:27:15 GMT): gen_el (Mon, 18 Dec 2017 14:28:09 GMT): mahoney1 (Mon, 18 Dec 2017 15:07:53 GMT): BrandonKlotz (Mon, 18 Dec 2017 16:51:10 GMT): tmkaranraj (Mon, 18 Dec 2017 19:09:03 GMT): nickyromeijn (Mon, 18 Dec 2017 19:20:23 GMT): mmick (Mon, 18 Dec 2017 19:35:12 GMT): mmick (Mon, 18 Dec 2017 19:35:50 GMT): nickyromeijn (Mon, 18 Dec 2017 19:36:31 GMT): nickyromeijn (Mon, 18 Dec 2017 19:36:45 GMT): mmick (Mon, 18 Dec 2017 19:37:20 GMT): nickyromeijn (Mon, 18 Dec 2017 20:45:14 GMT): sklymenko (Mon, 18 Dec 2017 21:33:41 GMT): BlockchainFan (Mon, 18 Dec 2017 21:45:02 GMT): lucasdf (Mon, 18 Dec 2017 21:51:21 GMT): BlockchainFan (Mon, 18 Dec 2017 21:51:38 GMT): BlockchainFan (Mon, 18 Dec 2017 21:51:41 GMT): BlockchainFan (Mon, 18 Dec 2017 21:52:48 GMT): BlockchainFan (Mon, 18 Dec 2017 21:53:03 GMT): prabvi01 (Mon, 18 Dec 2017 22:12:36 GMT): prabvi01 (Mon, 18 Dec 2017 22:17:45 GMT): prabvi01 (Mon, 18 Dec 2017 22:18:14 GMT): prabvi01 (Mon, 18 Dec 2017 22:21:51 GMT): davidkel (Mon, 18 Dec 2017 22:21:54 GMT): prabvi01 (Mon, 18 Dec 2017 22:58:32 GMT): jeffguo (Tue, 19 Dec 2017 00:23:38 GMT): alainN (Tue, 19 Dec 2017 00:31:31 GMT): zhoujunshan (Tue, 19 Dec 2017 02:33:19 GMT): SauravAnand (Tue, 19 Dec 2017 03:54:40 GMT): SauravAnand (Tue, 19 Dec 2017 04:06:20 GMT): jon_s (Tue, 19 Dec 2017 04:53:37 GMT): jon_s (Tue, 19 Dec 2017 04:53:46 GMT): jon_s (Tue, 19 Dec 2017 04:53:58 GMT): jon_s (Tue, 19 Dec 2017 04:53:59 GMT): gen_el (Tue, 19 Dec 2017 05:01:51 GMT): jon_s (Tue, 19 Dec 2017 05:02:15 GMT): jon_s (Tue, 19 Dec 2017 05:08:30 GMT): jon_s (Tue, 19 Dec 2017 05:08:46 GMT): gen_el (Tue, 19 Dec 2017 05:13:03 GMT): gen_el (Tue, 19 Dec 2017 05:13:03 GMT): gen_el (Tue, 19 Dec 2017 05:13:03 GMT): jon_s (Tue, 19 Dec 2017 05:16:38 GMT): jon_s (Tue, 19 Dec 2017 05:16:54 GMT): rhansharief (Tue, 19 Dec 2017 05:44:44 GMT): mayur.relekar (Tue, 19 Dec 2017 06:26:19 GMT): jon_s (Tue, 19 Dec 2017 06:46:38 GMT): jon_s (Tue, 19 Dec 2017 06:46:44 GMT): jon_s (Tue, 19 Dec 2017 06:47:13 GMT): geoms (Tue, 19 Dec 2017 07:20:59 GMT): geoms (Tue, 19 Dec 2017 07:21:47 GMT): geoms (Tue, 19 Dec 2017 07:22:12 GMT): prabhatkashyap (Tue, 19 Dec 2017 07:24:29 GMT): prabhatkashyap (Tue, 19 Dec 2017 07:24:29 GMT): prabhatkashyap (Tue, 19 Dec 2017 07:24:29 GMT): kassymkhanTJ (Tue, 19 Dec 2017 07:31:13 GMT): kassymkhanTJ (Tue, 19 Dec 2017 07:31:16 GMT): davidkel (Tue, 19 Dec 2017 08:34:53 GMT): BruceZ (Tue, 19 Dec 2017 08:37:59 GMT): davidkel (Tue, 19 Dec 2017 08:39:57 GMT): geoms (Tue, 19 Dec 2017 08:44:12 GMT): davidkel (Tue, 19 Dec 2017 08:46:57 GMT): nickyromeijn (Tue, 19 Dec 2017 09:00:00 GMT): nickyromeijn (Tue, 19 Dec 2017 09:00:00 GMT): nickyromeijn (Tue, 19 Dec 2017 09:00:00 GMT): geoms (Tue, 19 Dec 2017 09:05:25 GMT): BruceZ (Tue, 19 Dec 2017 09:15:33 GMT): rthatcher (Tue, 19 Dec 2017 09:27:03 GMT): rthatcher (Tue, 19 Dec 2017 09:27:03 GMT): rthatcher (Tue, 19 Dec 2017 09:29:24 GMT): BruceZ (Tue, 19 Dec 2017 09:39:16 GMT): egorpisarev (Tue, 19 Dec 2017 09:40:41 GMT): rthatcher (Tue, 19 Dec 2017 09:51:16 GMT): prabhatkashyap (Tue, 19 Dec 2017 10:01:03 GMT): jon_s (Tue, 19 Dec 2017 10:01:44 GMT): jon_s (Tue, 19 Dec 2017 10:02:04 GMT): prabhatkashyap (Tue, 19 Dec 2017 10:02:23 GMT): sstone1 (Tue, 19 Dec 2017 10:07:06 GMT): kassymkhanTJ (Tue, 19 Dec 2017 10:07:24 GMT): mahoney1 (Tue, 19 Dec 2017 10:10:59 GMT): mahoney1 (Tue, 19 Dec 2017 10:10:59 GMT): davidkel (Tue, 19 Dec 2017 10:12:57 GMT): prabhatkashyap (Tue, 19 Dec 2017 10:13:32 GMT): mahoney1 (Tue, 19 Dec 2017 10:18:43 GMT): davidkel (Tue, 19 Dec 2017 10:19:05 GMT): kapilaArora (Tue, 19 Dec 2017 10:21:25 GMT): mahoney1 (Tue, 19 Dec 2017 10:21:36 GMT): mahoney1 (Tue, 19 Dec 2017 10:21:36 GMT): kapilaArora (Tue, 19 Dec 2017 10:21:55 GMT): prabhatkashyap (Tue, 19 Dec 2017 10:22:28 GMT): luminance (Tue, 19 Dec 2017 10:27:13 GMT): luminance (Tue, 19 Dec 2017 10:27:13 GMT): mahoney1 (Tue, 19 Dec 2017 10:28:20 GMT): MaratFatkullin (Tue, 19 Dec 2017 10:29:20 GMT): prabhatkashyap (Tue, 19 Dec 2017 10:29:31 GMT): prabhatkashyap (Tue, 19 Dec 2017 10:29:31 GMT): mahoney1 (Tue, 19 Dec 2017 10:39:12 GMT): davidkel (Tue, 19 Dec 2017 10:43:48 GMT): rahulkannur (Tue, 19 Dec 2017 10:48:54 GMT): kapilaArora (Tue, 19 Dec 2017 10:49:52 GMT): zhoujunshan (Tue, 19 Dec 2017 10:52:12 GMT): BruceZ (Tue, 19 Dec 2017 11:29:32 GMT): mahoney1 (Tue, 19 Dec 2017 11:34:07 GMT): mahoney1 (Tue, 19 Dec 2017 11:35:22 GMT): mahoney1 (Tue, 19 Dec 2017 11:37:56 GMT): mahoney1 (Tue, 19 Dec 2017 11:47:01 GMT): mahoney1 (Tue, 19 Dec 2017 11:47:01 GMT): WatserAanDeHand (Tue, 19 Dec 2017 11:56:09 GMT): mahoney1 (Tue, 19 Dec 2017 12:18:48 GMT): mahoney1 (Tue, 19 Dec 2017 12:18:48 GMT): nickyromeijn (Tue, 19 Dec 2017 12:19:05 GMT): nickyromeijn (Tue, 19 Dec 2017 12:23:07 GMT): WatserAanDeHand (Tue, 19 Dec 2017 12:24:29 GMT): WatserAanDeHand (Tue, 19 Dec 2017 12:24:49 GMT): mahoney1 (Tue, 19 Dec 2017 12:24:51 GMT): WatserAanDeHand (Tue, 19 Dec 2017 12:25:14 GMT): luminance (Tue, 19 Dec 2017 12:31:37 GMT): luminance (Tue, 19 Dec 2017 12:31:37 GMT): kapilaArora (Tue, 19 Dec 2017 12:34:44 GMT): nickyromeijn (Tue, 19 Dec 2017 12:35:43 GMT): mahoney1 (Tue, 19 Dec 2017 12:38:07 GMT): WatserAanDeHand (Tue, 19 Dec 2017 12:42:24 GMT): nasht00 (Tue, 19 Dec 2017 12:48:55 GMT): mahoney1 (Tue, 19 Dec 2017 12:51:14 GMT): nickyromeijn (Tue, 19 Dec 2017 12:51:34 GMT): mahoney1 (Tue, 19 Dec 2017 12:52:23 GMT): nickyromeijn (Tue, 19 Dec 2017 12:53:02 GMT): mahoney1 (Tue, 19 Dec 2017 13:02:56 GMT): luminance (Tue, 19 Dec 2017 13:12:49 GMT): gen_el (Tue, 19 Dec 2017 13:30:55 GMT): gen_el (Tue, 19 Dec 2017 13:31:21 GMT): rthatcher (Tue, 19 Dec 2017 13:37:08 GMT): mahoney1 (Tue, 19 Dec 2017 13:48:06 GMT): luminance (Tue, 19 Dec 2017 14:14:30 GMT): gen_el (Tue, 19 Dec 2017 14:26:31 GMT): gen_el (Tue, 19 Dec 2017 14:28:01 GMT): mahoney1 (Tue, 19 Dec 2017 14:35:19 GMT): mahoney1 (Tue, 19 Dec 2017 14:35:19 GMT): gen_el (Tue, 19 Dec 2017 14:53:41 GMT): gen_el (Tue, 19 Dec 2017 14:53:41 GMT): mmick (Tue, 19 Dec 2017 15:03:49 GMT): mmick (Tue, 19 Dec 2017 15:03:49 GMT): mmick (Tue, 19 Dec 2017 15:03:49 GMT): mmick (Tue, 19 Dec 2017 15:03:49 GMT): mahoney1 (Tue, 19 Dec 2017 15:55:34 GMT): mmick (Tue, 19 Dec 2017 15:57:57 GMT): mahoney1 (Tue, 19 Dec 2017 16:04:31 GMT): mmick (Tue, 19 Dec 2017 16:06:27 GMT): zemtsov (Tue, 19 Dec 2017 16:06:37 GMT): mmick (Tue, 19 Dec 2017 16:07:38 GMT): lucasdf (Tue, 19 Dec 2017 16:39:13 GMT): lucasdf (Tue, 19 Dec 2017 16:39:13 GMT): gen_el (Tue, 19 Dec 2017 17:43:22 GMT): gen_el (Tue, 19 Dec 2017 17:43:22 GMT): gen_el (Tue, 19 Dec 2017 17:43:22 GMT): gen_el (Tue, 19 Dec 2017 17:43:22 GMT): lucasdf (Tue, 19 Dec 2017 17:50:24 GMT): gen_el (Tue, 19 Dec 2017 17:52:45 GMT): gen_el (Tue, 19 Dec 2017 17:52:45 GMT): lucasdf (Tue, 19 Dec 2017 17:55:28 GMT): sameejtk (Tue, 19 Dec 2017 19:32:29 GMT): ykcai (Wed, 20 Dec 2017 01:15:54 GMT): prabvi01 (Wed, 20 Dec 2017 04:50:05 GMT): satyajitsasmal (Wed, 20 Dec 2017 05:51:37 GMT): satyajitsasmal (Wed, 20 Dec 2017 05:51:53 GMT): satyajitsasmal (Wed, 20 Dec 2017 05:52:42 GMT): satyajitsasmal (Wed, 20 Dec 2017 05:52:49 GMT): yogesh.fulsunge (Wed, 20 Dec 2017 07:13:42 GMT): prabhatkashyap (Wed, 20 Dec 2017 07:34:49 GMT): prabhatkashyap (Wed, 20 Dec 2017 07:34:49 GMT): prabhatkashyap (Wed, 20 Dec 2017 07:34:49 GMT): prabhatkashyap (Wed, 20 Dec 2017 07:35:21 GMT): SauravAnand (Wed, 20 Dec 2017 08:09:00 GMT): SauravAnand (Wed, 20 Dec 2017 08:11:20 GMT): Varun2887 (Wed, 20 Dec 2017 08:33:09 GMT): Varun2887 (Wed, 20 Dec 2017 08:34:13 GMT): PabloBascunana (Wed, 20 Dec 2017 08:49:39 GMT): zhoujunshan (Wed, 20 Dec 2017 08:53:33 GMT): gen_el (Wed, 20 Dec 2017 09:25:19 GMT): DannyWong (Wed, 20 Dec 2017 09:33:51 GMT): prabhatkashyap (Wed, 20 Dec 2017 09:41:07 GMT): pallavigajwani (Wed, 20 Dec 2017 09:41:11 GMT): Varun2887 (Wed, 20 Dec 2017 09:41:25 GMT): jon_s (Wed, 20 Dec 2017 09:42:50 GMT): jon_s (Wed, 20 Dec 2017 09:43:06 GMT): jon_s (Wed, 20 Dec 2017 09:43:29 GMT): jon_s (Wed, 20 Dec 2017 09:43:43 GMT): jon_s (Wed, 20 Dec 2017 09:43:57 GMT): jon_s (Wed, 20 Dec 2017 09:44:06 GMT): jon_s (Wed, 20 Dec 2017 09:45:36 GMT): jon_s (Wed, 20 Dec 2017 09:45:49 GMT): pallavigajwani (Wed, 20 Dec 2017 09:45:59 GMT): zhoujunshan (Wed, 20 Dec 2017 09:46:03 GMT): prabvi01 (Wed, 20 Dec 2017 09:46:21 GMT): Varun2887 (Wed, 20 Dec 2017 09:46:45 GMT): prabvi01 (Wed, 20 Dec 2017 09:48:27 GMT): Sneha (Wed, 20 Dec 2017 09:48:59 GMT): Sneha (Wed, 20 Dec 2017 09:48:59 GMT): Sneha (Wed, 20 Dec 2017 09:48:59 GMT): Sneha (Wed, 20 Dec 2017 09:48:59 GMT): rthatcher (Wed, 20 Dec 2017 09:58:28 GMT): prabvi01 (Wed, 20 Dec 2017 10:01:12 GMT): Varun2887 (Wed, 20 Dec 2017 10:04:07 GMT): Varun2887 (Wed, 20 Dec 2017 10:04:20 GMT): prabhatkashyap (Wed, 20 Dec 2017 10:04:26 GMT): prabhatkashyap (Wed, 20 Dec 2017 10:04:26 GMT): prabhatkashyap (Wed, 20 Dec 2017 10:04:26 GMT): Varun2887 (Wed, 20 Dec 2017 10:07:08 GMT): Varun2887 (Wed, 20 Dec 2017 10:07:13 GMT): prabvi01 (Wed, 20 Dec 2017 10:07:15 GMT): Varun2887 (Wed, 20 Dec 2017 10:11:37 GMT): rthatcher (Wed, 20 Dec 2017 10:11:54 GMT): rthatcher (Wed, 20 Dec 2017 10:11:54 GMT): prabhatkashyap (Wed, 20 Dec 2017 10:16:26 GMT): prabhatkashyap (Wed, 20 Dec 2017 10:16:26 GMT): prabhatkashyap (Wed, 20 Dec 2017 10:16:26 GMT): prabvi01 (Wed, 20 Dec 2017 10:39:59 GMT): prabvi01 (Wed, 20 Dec 2017 10:40:18 GMT): yogesh.fulsunge (Wed, 20 Dec 2017 10:44:41 GMT): jon_s (Wed, 20 Dec 2017 10:46:17 GMT): jon_s (Wed, 20 Dec 2017 10:46:19 GMT): jon_s (Wed, 20 Dec 2017 10:46:37 GMT): yogesh.fulsunge (Wed, 20 Dec 2017 11:05:41 GMT): yogesh.fulsunge (Wed, 20 Dec 2017 11:06:17 GMT): Sneha (Wed, 20 Dec 2017 11:19:38 GMT): Sneha (Wed, 20 Dec 2017 11:19:38 GMT): lucasdf (Wed, 20 Dec 2017 11:39:57 GMT): Sneha (Wed, 20 Dec 2017 11:40:38 GMT): Sneha (Wed, 20 Dec 2017 11:40:38 GMT): lucasdf (Wed, 20 Dec 2017 11:45:03 GMT): lucasdf (Wed, 20 Dec 2017 11:45:03 GMT): Sneha (Wed, 20 Dec 2017 11:49:05 GMT): WatserAanDeHand (Wed, 20 Dec 2017 12:23:23 GMT): WatserAanDeHand (Wed, 20 Dec 2017 12:23:38 GMT): WatserAanDeHand (Wed, 20 Dec 2017 12:24:03 GMT): lucasdf (Wed, 20 Dec 2017 13:51:35 GMT): lucasdf (Wed, 20 Dec 2017 13:51:35 GMT): lucasdf (Wed, 20 Dec 2017 14:16:26 GMT): vitorduarte (Wed, 20 Dec 2017 14:28:03 GMT): vitorduarte (Wed, 20 Dec 2017 14:30:51 GMT): brunosan (Wed, 20 Dec 2017 14:32:14 GMT): mahoney1 (Wed, 20 Dec 2017 14:49:20 GMT): rthatcher (Wed, 20 Dec 2017 15:01:01 GMT): rthatcher (Wed, 20 Dec 2017 15:01:01 GMT): mahoney1 (Wed, 20 Dec 2017 15:22:54 GMT): mahoney1 (Wed, 20 Dec 2017 15:35:18 GMT): uber.twin (Wed, 20 Dec 2017 15:56:38 GMT): uber.twin (Wed, 20 Dec 2017 15:56:38 GMT): uber.twin (Wed, 20 Dec 2017 16:00:50 GMT): jon_s (Wed, 20 Dec 2017 16:09:37 GMT): gen_el (Wed, 20 Dec 2017 16:19:11 GMT): gen_el (Wed, 20 Dec 2017 16:19:11 GMT): rthatcher (Wed, 20 Dec 2017 17:09:36 GMT): jtonline (Wed, 20 Dec 2017 17:11:04 GMT): AkshayJindal (Wed, 20 Dec 2017 17:39:13 GMT): AkshayJindal (Wed, 20 Dec 2017 17:46:10 GMT): AkshayJindal (Wed, 20 Dec 2017 17:47:32 GMT): AkshayJindal (Wed, 20 Dec 2017 17:47:32 GMT): AkshayJindal (Wed, 20 Dec 2017 17:47:32 GMT): AkshayJindal (Wed, 20 Dec 2017 17:47:32 GMT): AkshayJindal (Wed, 20 Dec 2017 17:47:32 GMT): AkshayJindal (Wed, 20 Dec 2017 17:47:32 GMT): AkshayJindal (Wed, 20 Dec 2017 17:47:32 GMT): AkshayJindal (Wed, 20 Dec 2017 17:47:32 GMT): AkshayJindal (Wed, 20 Dec 2017 17:47:32 GMT): AkshayJindal (Wed, 20 Dec 2017 18:02:47 GMT): AkshayJindal (Wed, 20 Dec 2017 18:02:47 GMT): mastercpt (Wed, 20 Dec 2017 18:34:07 GMT): mahoney1 (Wed, 20 Dec 2017 18:36:19 GMT): mahoney1 (Wed, 20 Dec 2017 18:36:19 GMT): mahoney1 (Wed, 20 Dec 2017 18:36:19 GMT): mahoney1 (Wed, 20 Dec 2017 18:38:46 GMT): mastercpt (Wed, 20 Dec 2017 18:40:00 GMT): smpakes (Wed, 20 Dec 2017 19:18:11 GMT): arjunkhera (Wed, 20 Dec 2017 19:37:53 GMT): ChandraLekhaChavva (Wed, 20 Dec 2017 19:54:15 GMT): varun-raj (Thu, 21 Dec 2017 04:24:13 GMT): yogesh.fulsunge (Thu, 21 Dec 2017 06:14:58 GMT): suryasuresh06 (Thu, 21 Dec 2017 07:48:58 GMT): prabhatkashyap (Thu, 21 Dec 2017 08:17:45 GMT): prabhatkashyap (Thu, 21 Dec 2017 08:17:45 GMT): nasht00 (Thu, 21 Dec 2017 09:01:54 GMT): nasht00 (Thu, 21 Dec 2017 09:02:59 GMT): uber.twin (Thu, 21 Dec 2017 09:03:26 GMT): uber.twin (Thu, 21 Dec 2017 09:03:26 GMT): odalle (Thu, 21 Dec 2017 09:07:25 GMT): odalle (Thu, 21 Dec 2017 09:11:12 GMT): rthatcher (Thu, 21 Dec 2017 09:32:26 GMT): odalle (Thu, 21 Dec 2017 09:38:55 GMT): odalle (Thu, 21 Dec 2017 09:38:59 GMT): odalle (Thu, 21 Dec 2017 09:44:01 GMT): odalle (Thu, 21 Dec 2017 09:46:00 GMT): odalle (Thu, 21 Dec 2017 09:46:00 GMT): rthatcher (Thu, 21 Dec 2017 09:46:08 GMT): rthatcher (Thu, 21 Dec 2017 10:08:47 GMT): odalle (Thu, 21 Dec 2017 10:10:10 GMT): odalle (Thu, 21 Dec 2017 10:12:50 GMT): odalle (Thu, 21 Dec 2017 10:13:06 GMT): odalle (Thu, 21 Dec 2017 10:13:32 GMT): rthatcher (Thu, 21 Dec 2017 10:16:46 GMT): varun-raj (Thu, 21 Dec 2017 10:28:39 GMT): yogesh.fulsunge (Thu, 21 Dec 2017 10:37:04 GMT): yogesh.fulsunge (Thu, 21 Dec 2017 10:38:02 GMT): yogesh.fulsunge (Thu, 21 Dec 2017 10:38:21 GMT): yogesh.fulsunge (Thu, 21 Dec 2017 10:51:47 GMT): yogesh.fulsunge (Thu, 21 Dec 2017 10:58:42 GMT): jon_s (Thu, 21 Dec 2017 11:03:04 GMT): CorentinPacaud (Thu, 21 Dec 2017 11:03:22 GMT): jon_s (Thu, 21 Dec 2017 11:04:07 GMT): CorentinPacaud (Thu, 21 Dec 2017 11:04:23 GMT): jon_s (Thu, 21 Dec 2017 11:14:28 GMT): jon_s (Thu, 21 Dec 2017 11:14:31 GMT): jon_s (Thu, 21 Dec 2017 11:15:02 GMT): vitorduarte (Thu, 21 Dec 2017 11:25:28 GMT): jon_s (Thu, 21 Dec 2017 11:32:56 GMT): jon_s (Thu, 21 Dec 2017 11:33:12 GMT): jon_s (Thu, 21 Dec 2017 11:33:21 GMT): vitorduarte (Thu, 21 Dec 2017 11:35:11 GMT): uber.twin (Thu, 21 Dec 2017 11:37:26 GMT): mahoney1 (Thu, 21 Dec 2017 11:41:04 GMT): mahoney1 (Thu, 21 Dec 2017 11:41:04 GMT): mahoney1 (Thu, 21 Dec 2017 12:05:12 GMT): mahoney1 (Thu, 21 Dec 2017 12:05:12 GMT): mahoney1 (Thu, 21 Dec 2017 12:05:12 GMT): mahoney1 (Thu, 21 Dec 2017 12:05:12 GMT): mahoney1 (Thu, 21 Dec 2017 12:05:12 GMT): mahoney1 (Thu, 21 Dec 2017 12:05:12 GMT): CorentinPacaud (Thu, 21 Dec 2017 12:08:29 GMT): CorentinPacaud (Thu, 21 Dec 2017 12:08:35 GMT): CorentinPacaud (Thu, 21 Dec 2017 12:08:51 GMT): nasht00 (Thu, 21 Dec 2017 12:11:23 GMT): CorentinPacaud (Thu, 21 Dec 2017 12:11:27 GMT): CorentinPacaud (Thu, 21 Dec 2017 12:12:44 GMT): mahoney1 (Thu, 21 Dec 2017 12:12:55 GMT): CorentinPacaud (Thu, 21 Dec 2017 12:14:00 GMT): CorentinPacaud (Thu, 21 Dec 2017 12:14:00 GMT): CorentinPacaud (Thu, 21 Dec 2017 12:57:29 GMT): lucasdf (Thu, 21 Dec 2017 12:59:54 GMT): lucasdf (Thu, 21 Dec 2017 12:59:54 GMT): lucasdf (Thu, 21 Dec 2017 13:04:42 GMT): mahoney1 (Thu, 21 Dec 2017 13:19:04 GMT): mahoney1 (Thu, 21 Dec 2017 13:25:46 GMT): mahoney1 (Thu, 21 Dec 2017 13:25:46 GMT): mahoney1 (Thu, 21 Dec 2017 13:27:12 GMT): mahoney1 (Thu, 21 Dec 2017 13:27:12 GMT): lucasdf (Thu, 21 Dec 2017 13:34:51 GMT): lucasdf (Thu, 21 Dec 2017 13:34:51 GMT): lucasdf (Thu, 21 Dec 2017 13:34:51 GMT): CorentinPacaud (Thu, 21 Dec 2017 13:41:34 GMT): CorentinPacaud (Thu, 21 Dec 2017 13:41:52 GMT): CorentinPacaud (Thu, 21 Dec 2017 13:46:08 GMT): CorentinPacaud (Thu, 21 Dec 2017 13:46:32 GMT): CorentinPacaud (Thu, 21 Dec 2017 13:46:42 GMT): CorentinPacaud (Thu, 21 Dec 2017 13:48:08 GMT): mahoney1 (Thu, 21 Dec 2017 13:59:07 GMT): mahoney1 (Thu, 21 Dec 2017 14:01:30 GMT): mahoney1 (Thu, 21 Dec 2017 14:01:30 GMT): nickyromeijn (Thu, 21 Dec 2017 14:51:34 GMT): nickyromeijn (Thu, 21 Dec 2017 14:52:30 GMT): nickyromeijn (Thu, 21 Dec 2017 14:53:02 GMT): nickyromeijn (Thu, 21 Dec 2017 14:53:02 GMT): nickyromeijn (Thu, 21 Dec 2017 14:53:08 GMT): CorentinPacaud (Thu, 21 Dec 2017 14:56:10 GMT): mahoney1 (Thu, 21 Dec 2017 14:59:52 GMT): nickyromeijn (Thu, 21 Dec 2017 15:00:36 GMT): nickyromeijn (Thu, 21 Dec 2017 15:02:09 GMT): egorpisarev (Thu, 21 Dec 2017 15:04:17 GMT): RobertMiroballi (Thu, 21 Dec 2017 15:08:00 GMT): mahoney1 (Thu, 21 Dec 2017 15:35:55 GMT): mahoney1 (Thu, 21 Dec 2017 15:36:53 GMT): frandai (Thu, 21 Dec 2017 15:39:26 GMT): frandai (Thu, 21 Dec 2017 15:39:54 GMT): rthatcher (Thu, 21 Dec 2017 16:14:11 GMT): nickyromeijn (Thu, 21 Dec 2017 16:17:11 GMT): C.Jason.Phelps (Thu, 21 Dec 2017 16:19:02 GMT): nickyromeijn (Thu, 21 Dec 2017 16:19:45 GMT): mahoney1 (Thu, 21 Dec 2017 16:31:11 GMT): nickyromeijn (Thu, 21 Dec 2017 16:32:02 GMT): mahoney1 (Thu, 21 Dec 2017 16:35:51 GMT): nickyromeijn (Thu, 21 Dec 2017 16:36:54 GMT): mahoney1 (Thu, 21 Dec 2017 16:41:11 GMT): dselman (Thu, 21 Dec 2017 17:02:29 GMT): mahoney1 (Thu, 21 Dec 2017 17:18:21 GMT): mahoney1 (Thu, 21 Dec 2017 17:23:20 GMT): manikhandan (Thu, 21 Dec 2017 17:53:23 GMT): manikhandan (Thu, 21 Dec 2017 17:54:10 GMT): snowy13 (Thu, 21 Dec 2017 18:56:44 GMT): dselman (Thu, 21 Dec 2017 18:59:38 GMT): dselman (Thu, 21 Dec 2017 18:59:56 GMT): dselman (Thu, 21 Dec 2017 19:03:30 GMT): snowy13 (Thu, 21 Dec 2017 19:09:40 GMT): manikhandan (Thu, 21 Dec 2017 19:13:06 GMT): manikhandan (Thu, 21 Dec 2017 19:13:26 GMT): manikhandan (Thu, 21 Dec 2017 19:13:42 GMT): manikhandan (Thu, 21 Dec 2017 19:21:15 GMT): prasadguru.r (Thu, 21 Dec 2017 20:19:11 GMT): vasp (Thu, 21 Dec 2017 20:40:04 GMT): vasp (Thu, 21 Dec 2017 20:48:12 GMT): vasp (Thu, 21 Dec 2017 20:49:45 GMT): hendry19901990 (Thu, 21 Dec 2017 21:03:03 GMT): hendry19901990 (Thu, 21 Dec 2017 21:03:32 GMT): giridharg (Thu, 21 Dec 2017 21:17:10 GMT): giridharg (Thu, 21 Dec 2017 21:17:25 GMT): vkblue (Thu, 21 Dec 2017 22:00:13 GMT): Hyane (Fri, 22 Dec 2017 00:13:02 GMT): Hyane (Fri, 22 Dec 2017 00:14:09 GMT): zeroest (Fri, 22 Dec 2017 03:10:59 GMT): asavchen (Fri, 22 Dec 2017 04:36:28 GMT): varun-raj (Fri, 22 Dec 2017 06:00:28 GMT): Abhi119 (Fri, 22 Dec 2017 06:39:10 GMT): Abhi119 (Fri, 22 Dec 2017 06:39:33 GMT): manikhandan (Fri, 22 Dec 2017 07:13:50 GMT): varun-raj (Fri, 22 Dec 2017 07:14:25 GMT): manikhandan (Fri, 22 Dec 2017 07:15:17 GMT): manikhandan (Fri, 22 Dec 2017 07:15:41 GMT): manikhandan (Fri, 22 Dec 2017 07:15:54 GMT): manikhandan (Fri, 22 Dec 2017 07:17:37 GMT): varun-raj (Fri, 22 Dec 2017 07:18:09 GMT): varun-raj (Fri, 22 Dec 2017 07:18:30 GMT): varun-raj (Fri, 22 Dec 2017 07:18:37 GMT): manikhandan (Fri, 22 Dec 2017 07:18:52 GMT): manikhandan (Fri, 22 Dec 2017 07:19:41 GMT): manikhandan (Fri, 22 Dec 2017 07:21:54 GMT): varun-raj (Fri, 22 Dec 2017 07:23:53 GMT): varun-raj (Fri, 22 Dec 2017 07:24:03 GMT): varun-raj (Fri, 22 Dec 2017 07:24:07 GMT): manikhandan (Fri, 22 Dec 2017 07:26:06 GMT): varun-raj (Fri, 22 Dec 2017 07:32:13 GMT): yogesh.fulsunge (Fri, 22 Dec 2017 07:48:56 GMT): yogesh.fulsunge (Fri, 22 Dec 2017 07:50:02 GMT): varun-raj (Fri, 22 Dec 2017 08:07:34 GMT): suntehnik (Fri, 22 Dec 2017 08:13:57 GMT): mahoney1 (Fri, 22 Dec 2017 09:39:40 GMT): RanaAhmed (Fri, 22 Dec 2017 09:40:44 GMT): RanaAhmed (Fri, 22 Dec 2017 09:41:27 GMT): RanaAhmed (Fri, 22 Dec 2017 09:41:40 GMT): RanaAhmed (Fri, 22 Dec 2017 09:42:07 GMT): RanaAhmed (Fri, 22 Dec 2017 09:42:24 GMT): RanaAhmed (Fri, 22 Dec 2017 09:42:42 GMT): rthatcher (Fri, 22 Dec 2017 09:45:41 GMT): rthatcher (Fri, 22 Dec 2017 09:47:56 GMT): rthatcher (Fri, 22 Dec 2017 09:50:42 GMT): RanaAhmed (Fri, 22 Dec 2017 09:51:38 GMT): prabvi01 (Fri, 22 Dec 2017 09:51:45 GMT): rthatcher (Fri, 22 Dec 2017 09:56:38 GMT): uber.twin (Fri, 22 Dec 2017 09:59:20 GMT): Abhi119 (Fri, 22 Dec 2017 09:59:41 GMT): mahoney1 (Fri, 22 Dec 2017 10:01:05 GMT): mahoney1 (Fri, 22 Dec 2017 10:02:24 GMT): RanaAhmed (Fri, 22 Dec 2017 10:03:53 GMT): rthatcher (Fri, 22 Dec 2017 10:05:09 GMT): rthatcher (Fri, 22 Dec 2017 10:05:09 GMT): mahoney1 (Fri, 22 Dec 2017 10:09:10 GMT): RanaAhmed (Fri, 22 Dec 2017 10:10:52 GMT): mahoney1 (Fri, 22 Dec 2017 10:11:35 GMT): mahoney1 (Fri, 22 Dec 2017 10:25:57 GMT): uber.twin (Fri, 22 Dec 2017 10:34:45 GMT): varun-raj (Fri, 22 Dec 2017 11:02:57 GMT): mahoney1 (Fri, 22 Dec 2017 11:15:39 GMT): mahoney1 (Fri, 22 Dec 2017 11:15:39 GMT): uber.twin (Fri, 22 Dec 2017 11:28:23 GMT): uber.twin (Fri, 22 Dec 2017 11:30:07 GMT): varuna82 (Fri, 22 Dec 2017 11:42:45 GMT): uber.twin (Fri, 22 Dec 2017 11:53:05 GMT): uber.twin (Fri, 22 Dec 2017 11:54:35 GMT): vasp (Fri, 22 Dec 2017 12:41:36 GMT): davidkel (Fri, 22 Dec 2017 12:51:04 GMT): davidkel (Fri, 22 Dec 2017 12:51:04 GMT): uber.twin (Fri, 22 Dec 2017 13:01:06 GMT): davidkel (Fri, 22 Dec 2017 13:08:06 GMT): davidkel (Fri, 22 Dec 2017 13:11:59 GMT): uber.twin (Fri, 22 Dec 2017 13:12:34 GMT): uber.twin (Fri, 22 Dec 2017 13:13:13 GMT): uber.twin (Fri, 22 Dec 2017 13:13:54 GMT): davidkel (Fri, 22 Dec 2017 13:14:19 GMT): uber.twin (Fri, 22 Dec 2017 13:14:51 GMT): uber.twin (Fri, 22 Dec 2017 13:15:17 GMT): uber.twin (Fri, 22 Dec 2017 13:15:53 GMT): uber.twin (Fri, 22 Dec 2017 13:24:55 GMT): davidkel (Fri, 22 Dec 2017 13:26:15 GMT): gen_el (Fri, 22 Dec 2017 13:33:42 GMT): gen_el (Fri, 22 Dec 2017 13:33:42 GMT): uber.twin (Fri, 22 Dec 2017 13:35:16 GMT): uber.twin (Fri, 22 Dec 2017 13:35:16 GMT): gen_el (Fri, 22 Dec 2017 13:36:24 GMT): uber.twin (Fri, 22 Dec 2017 13:39:21 GMT): C.Jason.Phelps (Fri, 22 Dec 2017 13:48:03 GMT): davidkel (Fri, 22 Dec 2017 13:52:15 GMT): gen_el (Fri, 22 Dec 2017 13:52:18 GMT): vkblue (Fri, 22 Dec 2017 14:00:18 GMT): vkblue (Fri, 22 Dec 2017 14:00:33 GMT): vkblue (Fri, 22 Dec 2017 14:01:46 GMT): vkblue (Fri, 22 Dec 2017 14:01:46 GMT): rthatcher (Fri, 22 Dec 2017 14:16:27 GMT): mahoney1 (Fri, 22 Dec 2017 14:16:32 GMT): C.Jason.Phelps (Fri, 22 Dec 2017 14:17:45 GMT): jaguarg (Fri, 22 Dec 2017 14:25:12 GMT): gen_el (Fri, 22 Dec 2017 14:27:58 GMT): gen_el (Fri, 22 Dec 2017 14:32:29 GMT): ManikhandanSp (Fri, 22 Dec 2017 14:32:56 GMT): jaguarg (Fri, 22 Dec 2017 14:33:18 GMT): jaguarg (Fri, 22 Dec 2017 14:33:50 GMT): jaguarg (Fri, 22 Dec 2017 14:40:32 GMT): jaguarg (Fri, 22 Dec 2017 14:40:32 GMT): gen_el (Fri, 22 Dec 2017 14:54:15 GMT): jaguarg (Fri, 22 Dec 2017 14:55:56 GMT): C.Jason.Phelps (Fri, 22 Dec 2017 15:01:16 GMT): jaguarg (Fri, 22 Dec 2017 15:04:39 GMT): jaguarg (Fri, 22 Dec 2017 15:04:39 GMT): jaguarg (Fri, 22 Dec 2017 15:04:39 GMT): jaguarg (Fri, 22 Dec 2017 15:04:39 GMT): AkshayJindal (Fri, 22 Dec 2017 15:05:58 GMT): AkshayJindal (Fri, 22 Dec 2017 15:05:58 GMT): AkshayJindal (Fri, 22 Dec 2017 15:05:58 GMT): AkshayJindal (Fri, 22 Dec 2017 15:05:58 GMT): AkshayJindal (Fri, 22 Dec 2017 15:05:58 GMT): AkshayJindal (Fri, 22 Dec 2017 15:05:58 GMT): AkshayJindal (Fri, 22 Dec 2017 15:05:58 GMT): gen_el (Fri, 22 Dec 2017 15:06:54 GMT): davidkel (Fri, 22 Dec 2017 15:12:27 GMT): mahoney1 (Fri, 22 Dec 2017 15:15:28 GMT): vkblue (Fri, 22 Dec 2017 15:16:00 GMT): vkblue (Fri, 22 Dec 2017 15:16:00 GMT): davidkel (Fri, 22 Dec 2017 15:16:47 GMT): vkblue (Fri, 22 Dec 2017 15:18:27 GMT): mahoney1 (Fri, 22 Dec 2017 15:19:25 GMT): gen_el (Fri, 22 Dec 2017 15:19:36 GMT): mahoney1 (Fri, 22 Dec 2017 15:20:11 GMT): gen_el (Fri, 22 Dec 2017 15:44:49 GMT): gen_el (Fri, 22 Dec 2017 15:46:01 GMT): mahoney1 (Fri, 22 Dec 2017 16:02:38 GMT): mahoney1 (Fri, 22 Dec 2017 17:22:57 GMT): mahoney1 (Fri, 22 Dec 2017 17:22:57 GMT): Aniket-Engg (Fri, 22 Dec 2017 18:47:30 GMT): Aniket-Engg (Fri, 22 Dec 2017 18:48:44 GMT): Aniket-Engg (Fri, 22 Dec 2017 18:48:58 GMT): Aniket-Engg (Fri, 22 Dec 2017 18:49:23 GMT): Aniket-Engg (Fri, 22 Dec 2017 19:03:15 GMT): Aniket-Engg (Fri, 22 Dec 2017 19:03:15 GMT): wbwangk (Sat, 23 Dec 2017 01:47:23 GMT): ankashu (Sat, 23 Dec 2017 09:21:42 GMT): Aniket-Engg (Sat, 23 Dec 2017 11:00:27 GMT): Aniket-Engg (Sat, 23 Dec 2017 11:00:50 GMT): Aniket-Engg (Sat, 23 Dec 2017 11:01:41 GMT): Aniket-Engg (Sat, 23 Dec 2017 11:02:27 GMT): manikhandan (Sat, 23 Dec 2017 15:24:02 GMT): manikhandan (Sat, 23 Dec 2017 15:24:05 GMT): prabvi01 (Sat, 23 Dec 2017 19:15:02 GMT): manikhandan (Sat, 23 Dec 2017 19:17:00 GMT): prabvi01 (Sat, 23 Dec 2017 19:17:21 GMT): prabvi01 (Sat, 23 Dec 2017 19:17:59 GMT): manikhandan (Sat, 23 Dec 2017 19:18:11 GMT): bstout (Sun, 24 Dec 2017 03:13:20 GMT): nasht00 (Sun, 24 Dec 2017 08:59:10 GMT): nasht00 (Sun, 24 Dec 2017 08:59:24 GMT): davidkel (Sun, 24 Dec 2017 11:23:19 GMT): davidkel (Sun, 24 Dec 2017 11:23:19 GMT): nasht00 (Sun, 24 Dec 2017 11:24:29 GMT): davidkel (Sun, 24 Dec 2017 11:25:32 GMT): davidkel (Sun, 24 Dec 2017 11:27:28 GMT): nasht00 (Sun, 24 Dec 2017 11:28:47 GMT): davidkel (Sun, 24 Dec 2017 11:42:51 GMT): nasht00 (Sun, 24 Dec 2017 12:46:27 GMT): davidkel (Sun, 24 Dec 2017 13:40:09 GMT): nasht00 (Sun, 24 Dec 2017 13:41:15 GMT): davidkel (Sun, 24 Dec 2017 13:43:09 GMT): nasht00 (Sun, 24 Dec 2017 13:56:57 GMT): davidkel (Sun, 24 Dec 2017 14:02:18 GMT): nasht00 (Sun, 24 Dec 2017 14:05:20 GMT): nasht00 (Sun, 24 Dec 2017 14:05:30 GMT): davidkel (Sun, 24 Dec 2017 14:06:32 GMT): nasht00 (Sun, 24 Dec 2017 14:07:07 GMT): nasht00 (Sun, 24 Dec 2017 14:07:19 GMT): davidkel (Sun, 24 Dec 2017 14:08:35 GMT): nasht00 (Sun, 24 Dec 2017 14:09:20 GMT): Batu (Mon, 25 Dec 2017 03:15:42 GMT): Batu (Mon, 25 Dec 2017 03:29:50 GMT): Batu (Mon, 25 Dec 2017 03:30:57 GMT): Batu (Mon, 25 Dec 2017 03:32:35 GMT): Batu (Mon, 25 Dec 2017 03:33:11 GMT): Batu (Mon, 25 Dec 2017 03:33:22 GMT): Batu (Mon, 25 Dec 2017 03:33:42 GMT): mmick (Mon, 25 Dec 2017 06:11:21 GMT): aneb (Mon, 25 Dec 2017 06:54:40 GMT): mmick (Mon, 25 Dec 2017 07:00:30 GMT): mmick (Mon, 25 Dec 2017 07:15:24 GMT): egorpisarev (Mon, 25 Dec 2017 12:26:24 GMT): AkshayJindal (Mon, 25 Dec 2017 14:08:21 GMT): mostafa.elsayyad (Mon, 25 Dec 2017 16:47:46 GMT): AkshayJindal (Mon, 25 Dec 2017 18:49:46 GMT): AkshayJindal (Mon, 25 Dec 2017 18:49:46 GMT): AkshayJindal (Mon, 25 Dec 2017 18:49:46 GMT): anupamsinha15 (Tue, 26 Dec 2017 01:24:24 GMT): anupamsinha15 (Tue, 26 Dec 2017 01:25:14 GMT): anupamsinha15 (Tue, 26 Dec 2017 01:26:01 GMT): ahmadabugosh (Tue, 26 Dec 2017 06:14:59 GMT): varun-raj (Tue, 26 Dec 2017 06:37:23 GMT): prabvi01 (Tue, 26 Dec 2017 07:13:04 GMT): NiketYende (Tue, 26 Dec 2017 09:08:01 GMT): artessan (Tue, 26 Dec 2017 19:24:57 GMT): BCGEEKS (Tue, 26 Dec 2017 19:25:57 GMT): BCGEEKS (Tue, 26 Dec 2017 19:26:15 GMT): BCGEEKS (Tue, 26 Dec 2017 19:26:20 GMT): BCGEEKS (Tue, 26 Dec 2017 19:26:23 GMT): BCGEEKS (Tue, 26 Dec 2017 19:27:01 GMT): BCGEEKS (Tue, 26 Dec 2017 19:27:36 GMT): artessan (Tue, 26 Dec 2017 19:44:57 GMT): omathurin (Tue, 26 Dec 2017 19:47:37 GMT): artessan (Tue, 26 Dec 2017 19:49:46 GMT): artessan (Tue, 26 Dec 2017 19:49:46 GMT): omathurin (Tue, 26 Dec 2017 19:55:21 GMT): artessan (Tue, 26 Dec 2017 19:57:52 GMT): omathurin (Tue, 26 Dec 2017 20:07:50 GMT): artessan (Tue, 26 Dec 2017 20:09:16 GMT): artessan (Tue, 26 Dec 2017 20:09:38 GMT): gbodra (Wed, 27 Dec 2017 00:46:06 GMT): lsansan (Wed, 27 Dec 2017 05:47:26 GMT): downTheFallLine (Wed, 27 Dec 2017 07:14:39 GMT): prabhatkashyap (Wed, 27 Dec 2017 07:25:30 GMT): prabhatkashyap (Wed, 27 Dec 2017 07:25:30 GMT): suva (Wed, 27 Dec 2017 08:28:07 GMT): suva (Wed, 27 Dec 2017 08:28:14 GMT): suva (Wed, 27 Dec 2017 08:28:31 GMT): suva (Wed, 27 Dec 2017 08:28:54 GMT): suva (Wed, 27 Dec 2017 08:29:27 GMT): suva (Wed, 27 Dec 2017 08:29:37 GMT): suva (Wed, 27 Dec 2017 08:29:47 GMT): suva (Wed, 27 Dec 2017 08:30:29 GMT): suva (Wed, 27 Dec 2017 08:30:40 GMT): suva (Wed, 27 Dec 2017 08:30:54 GMT): suva (Wed, 27 Dec 2017 08:31:11 GMT): prabhatkashyap (Wed, 27 Dec 2017 09:08:21 GMT): suva (Wed, 27 Dec 2017 11:02:49 GMT): suva (Wed, 27 Dec 2017 11:03:48 GMT): suva (Wed, 27 Dec 2017 11:03:57 GMT): suva (Wed, 27 Dec 2017 11:04:12 GMT): suva (Wed, 27 Dec 2017 11:07:08 GMT): suva (Wed, 27 Dec 2017 11:07:29 GMT): yogesh.fulsunge (Wed, 27 Dec 2017 11:14:17 GMT): yogesh.fulsunge (Wed, 27 Dec 2017 11:15:55 GMT): prabhatkashyap (Wed, 27 Dec 2017 12:14:18 GMT): prabhatkashyap (Wed, 27 Dec 2017 12:14:18 GMT): suva (Wed, 27 Dec 2017 12:16:47 GMT): prabhatkashyap (Wed, 27 Dec 2017 12:26:03 GMT): suva (Wed, 27 Dec 2017 12:28:55 GMT): suva (Wed, 27 Dec 2017 12:29:15 GMT): suva (Wed, 27 Dec 2017 12:29:47 GMT): suva (Wed, 27 Dec 2017 12:30:14 GMT): suva (Wed, 27 Dec 2017 12:30:22 GMT): prabhatkashyap (Wed, 27 Dec 2017 12:37:30 GMT): prabhatkashyap (Wed, 27 Dec 2017 12:37:30 GMT): suva (Wed, 27 Dec 2017 12:49:27 GMT): suva (Wed, 27 Dec 2017 12:49:39 GMT): suva (Wed, 27 Dec 2017 12:49:55 GMT): suva (Wed, 27 Dec 2017 12:50:02 GMT): pangzineng (Wed, 27 Dec 2017 13:48:32 GMT): purandam (Wed, 27 Dec 2017 13:57:34 GMT): jmcnevin (Wed, 27 Dec 2017 13:58:43 GMT): purandam (Wed, 27 Dec 2017 13:59:49 GMT): purandam (Wed, 27 Dec 2017 13:59:49 GMT): fabcan (Wed, 27 Dec 2017 14:02:14 GMT): fabcan (Wed, 27 Dec 2017 14:08:40 GMT): mccojo1 (Wed, 27 Dec 2017 15:20:00 GMT): mccojo1 (Wed, 27 Dec 2017 15:23:11 GMT): mccojo1 (Wed, 27 Dec 2017 15:23:12 GMT): mccojo1 (Wed, 27 Dec 2017 15:23:25 GMT): mccojo1 (Wed, 27 Dec 2017 15:34:50 GMT): mccojo1 (Wed, 27 Dec 2017 15:35:02 GMT): arsalankhalid (Wed, 27 Dec 2017 16:54:25 GMT): arsalankhalid (Wed, 27 Dec 2017 16:54:36 GMT): arsalankhalid (Wed, 27 Dec 2017 16:54:55 GMT): arsalankhalid (Wed, 27 Dec 2017 16:55:15 GMT): arsalankhalid (Wed, 27 Dec 2017 16:55:24 GMT): arsalankhalid (Wed, 27 Dec 2017 16:55:29 GMT): naggarwal (Wed, 27 Dec 2017 17:00:25 GMT): naggarwal (Wed, 27 Dec 2017 17:01:05 GMT): mmick (Wed, 27 Dec 2017 18:21:35 GMT): mmick (Wed, 27 Dec 2017 18:21:35 GMT): arsalankhalid (Wed, 27 Dec 2017 18:53:47 GMT): davidkel (Wed, 27 Dec 2017 19:11:46 GMT): cweiers (Wed, 27 Dec 2017 19:14:37 GMT): davidkel (Wed, 27 Dec 2017 19:23:32 GMT): davidkel (Wed, 27 Dec 2017 19:23:32 GMT): arsalankhalid (Wed, 27 Dec 2017 19:47:59 GMT): asamk (Wed, 27 Dec 2017 21:36:35 GMT): JeremyStanton (Thu, 28 Dec 2017 03:46:24 GMT): JeremyStanton (Thu, 28 Dec 2017 03:47:37 GMT): prabhatkashyap (Thu, 28 Dec 2017 06:26:50 GMT): prabvi01 (Thu, 28 Dec 2017 06:51:14 GMT): nehirakdag (Thu, 28 Dec 2017 07:03:05 GMT): varun-raj (Thu, 28 Dec 2017 08:06:28 GMT): varun-raj (Thu, 28 Dec 2017 08:06:32 GMT): tyrellperera (Thu, 28 Dec 2017 08:07:09 GMT): prabhatkashyap (Thu, 28 Dec 2017 08:44:19 GMT): prabhatkashyap (Thu, 28 Dec 2017 08:44:19 GMT): JeroenDePrest (Thu, 28 Dec 2017 08:50:59 GMT): davidkel (Thu, 28 Dec 2017 08:55:27 GMT): davidkel (Thu, 28 Dec 2017 09:01:06 GMT): prabhatkashyap (Thu, 28 Dec 2017 10:36:11 GMT): varun-raj (Thu, 28 Dec 2017 10:38:36 GMT): davidkel (Thu, 28 Dec 2017 10:44:06 GMT): varun-raj (Thu, 28 Dec 2017 10:46:28 GMT): davidkel (Thu, 28 Dec 2017 10:46:29 GMT): varun-raj (Thu, 28 Dec 2017 10:46:51 GMT): davidkel (Thu, 28 Dec 2017 10:47:50 GMT): varun-raj (Thu, 28 Dec 2017 10:48:23 GMT): prabhatkashyap (Thu, 28 Dec 2017 10:48:57 GMT): prabhatkashyap (Thu, 28 Dec 2017 10:51:05 GMT): davidkel (Thu, 28 Dec 2017 10:51:09 GMT): davidkel (Thu, 28 Dec 2017 10:51:47 GMT): suva (Thu, 28 Dec 2017 10:59:11 GMT): suva (Thu, 28 Dec 2017 10:59:22 GMT): suva (Thu, 28 Dec 2017 10:59:32 GMT): varun-raj (Thu, 28 Dec 2017 10:59:32 GMT): suva (Thu, 28 Dec 2017 11:00:36 GMT): suva (Thu, 28 Dec 2017 11:00:43 GMT): suva (Thu, 28 Dec 2017 11:01:30 GMT): varun-raj (Thu, 28 Dec 2017 11:02:01 GMT): varun-raj (Thu, 28 Dec 2017 11:02:17 GMT): varun-raj (Thu, 28 Dec 2017 11:02:31 GMT): suva (Thu, 28 Dec 2017 11:02:57 GMT): suva (Thu, 28 Dec 2017 11:03:12 GMT): suva (Thu, 28 Dec 2017 11:04:00 GMT): varun-raj (Thu, 28 Dec 2017 11:05:19 GMT): prabhatkashyap (Thu, 28 Dec 2017 11:06:17 GMT): prabhatkashyap (Thu, 28 Dec 2017 11:06:17 GMT): prabhatkashyap (Thu, 28 Dec 2017 11:07:50 GMT): davidkel (Thu, 28 Dec 2017 11:09:06 GMT): prabhatkashyap (Thu, 28 Dec 2017 11:10:26 GMT): prabhatkashyap (Thu, 28 Dec 2017 11:10:26 GMT): davidkel (Thu, 28 Dec 2017 11:11:14 GMT): davidkel (Thu, 28 Dec 2017 11:15:15 GMT): prabhatkashyap (Thu, 28 Dec 2017 11:24:12 GMT): davidkel (Thu, 28 Dec 2017 11:24:59 GMT): davidkel (Thu, 28 Dec 2017 11:25:43 GMT): davidkel (Thu, 28 Dec 2017 11:25:43 GMT): davidkel (Thu, 28 Dec 2017 11:26:15 GMT): prabhatkashyap (Thu, 28 Dec 2017 11:30:17 GMT): davidkel (Thu, 28 Dec 2017 11:31:58 GMT): prabhatkashyap (Thu, 28 Dec 2017 11:33:15 GMT): davidkel (Thu, 28 Dec 2017 11:35:53 GMT): prabhatkashyap (Thu, 28 Dec 2017 11:37:37 GMT): himani.arora (Thu, 28 Dec 2017 11:41:43 GMT): suva (Thu, 28 Dec 2017 12:16:28 GMT): suva (Thu, 28 Dec 2017 12:17:09 GMT): suva (Thu, 28 Dec 2017 12:17:22 GMT): suva (Thu, 28 Dec 2017 12:17:28 GMT): varun-raj (Thu, 28 Dec 2017 12:44:22 GMT): varun-raj (Thu, 28 Dec 2017 12:44:23 GMT): suva (Thu, 28 Dec 2017 12:49:34 GMT): varun-raj (Thu, 28 Dec 2017 12:50:47 GMT): varun-raj (Thu, 28 Dec 2017 12:51:21 GMT): suva (Thu, 28 Dec 2017 12:57:52 GMT): suva (Thu, 28 Dec 2017 12:58:06 GMT): suva (Thu, 28 Dec 2017 12:58:18 GMT): suva (Thu, 28 Dec 2017 13:02:07 GMT): varun-raj (Thu, 28 Dec 2017 13:04:47 GMT): varun-raj (Thu, 28 Dec 2017 13:05:04 GMT): suva (Thu, 28 Dec 2017 13:12:25 GMT): varun-raj (Thu, 28 Dec 2017 13:15:21 GMT): varun-raj (Thu, 28 Dec 2017 13:15:47 GMT): varun-raj (Thu, 28 Dec 2017 13:15:51 GMT): varun-raj (Thu, 28 Dec 2017 13:15:56 GMT): JeremyStanton (Thu, 28 Dec 2017 13:23:57 GMT): davidkel (Thu, 28 Dec 2017 13:38:24 GMT): suva (Thu, 28 Dec 2017 13:44:03 GMT): suva (Thu, 28 Dec 2017 13:44:38 GMT): suva (Thu, 28 Dec 2017 13:45:24 GMT): suva (Thu, 28 Dec 2017 13:45:44 GMT): davidkel (Thu, 28 Dec 2017 13:51:29 GMT): davidkel (Thu, 28 Dec 2017 13:51:29 GMT): CorentinPacaud (Thu, 28 Dec 2017 14:05:55 GMT): suva (Thu, 28 Dec 2017 14:06:07 GMT): suva (Thu, 28 Dec 2017 14:06:29 GMT): suva (Thu, 28 Dec 2017 14:06:45 GMT): suva (Thu, 28 Dec 2017 14:07:24 GMT): suva (Thu, 28 Dec 2017 14:07:31 GMT): suva (Thu, 28 Dec 2017 14:07:49 GMT): suva (Thu, 28 Dec 2017 14:07:56 GMT): suva (Thu, 28 Dec 2017 14:10:00 GMT): suva (Thu, 28 Dec 2017 14:10:13 GMT): suva (Thu, 28 Dec 2017 14:11:26 GMT): davidkel (Thu, 28 Dec 2017 14:11:35 GMT): davidkel (Thu, 28 Dec 2017 14:12:04 GMT): CorentinPacaud (Thu, 28 Dec 2017 14:13:53 GMT): CorentinPacaud (Thu, 28 Dec 2017 14:14:41 GMT): CorentinPacaud (Thu, 28 Dec 2017 14:24:05 GMT): suva (Thu, 28 Dec 2017 14:31:18 GMT): CorentinPacaud (Thu, 28 Dec 2017 14:37:05 GMT): CorentinPacaud (Thu, 28 Dec 2017 14:37:05 GMT): mmick (Thu, 28 Dec 2017 15:28:37 GMT): sb2407 (Thu, 28 Dec 2017 16:46:45 GMT): R1j1t (Thu, 28 Dec 2017 16:55:53 GMT): Preetam007 (Thu, 28 Dec 2017 20:42:16 GMT): JeremyStanton (Thu, 28 Dec 2017 22:29:31 GMT): JeremyStanton (Fri, 29 Dec 2017 00:07:05 GMT): mvaibhavshah (Fri, 29 Dec 2017 05:23:15 GMT): codenacci (Fri, 29 Dec 2017 06:00:55 GMT): prabhatkashyap (Fri, 29 Dec 2017 07:37:44 GMT): prabhatkashyap (Fri, 29 Dec 2017 07:37:44 GMT): CorentinPacaud (Fri, 29 Dec 2017 08:30:52 GMT): yogesh.fulsunge (Fri, 29 Dec 2017 08:41:06 GMT): davidkel (Fri, 29 Dec 2017 09:21:57 GMT): davidkel (Fri, 29 Dec 2017 09:23:55 GMT): CorentinPacaud (Fri, 29 Dec 2017 09:27:27 GMT): CorentinPacaud (Fri, 29 Dec 2017 09:27:27 GMT): CorentinPacaud (Fri, 29 Dec 2017 09:27:27 GMT): davidkel (Fri, 29 Dec 2017 09:54:59 GMT): CorentinPacaud (Fri, 29 Dec 2017 09:58:51 GMT): CorentinPacaud (Fri, 29 Dec 2017 13:03:33 GMT): RzvnB (Fri, 29 Dec 2017 13:11:00 GMT): RzvnB (Fri, 29 Dec 2017 13:11:19 GMT): RzvnB (Fri, 29 Dec 2017 13:14:04 GMT): CorentinPacaud (Fri, 29 Dec 2017 13:15:22 GMT): RzvnB (Fri, 29 Dec 2017 13:17:04 GMT): sstone1 (Fri, 29 Dec 2017 13:17:53 GMT): CorentinPacaud (Fri, 29 Dec 2017 13:17:54 GMT): CorentinPacaud (Fri, 29 Dec 2017 13:18:08 GMT): sstone1 (Fri, 29 Dec 2017 13:18:22 GMT): RzvnB (Fri, 29 Dec 2017 13:18:39 GMT): RzvnB (Fri, 29 Dec 2017 13:18:45 GMT): RzvnB (Fri, 29 Dec 2017 13:22:12 GMT): RzvnB (Fri, 29 Dec 2017 13:22:24 GMT): sstone1 (Fri, 29 Dec 2017 13:23:16 GMT): sstone1 (Fri, 29 Dec 2017 13:23:56 GMT): sstone1 (Fri, 29 Dec 2017 13:23:56 GMT): sstone1 (Fri, 29 Dec 2017 13:24:30 GMT): sstone1 (Fri, 29 Dec 2017 13:25:04 GMT): sstone1 (Fri, 29 Dec 2017 13:25:57 GMT): RzvnB (Fri, 29 Dec 2017 13:31:43 GMT): RzvnB (Fri, 29 Dec 2017 13:33:52 GMT): sstone1 (Fri, 29 Dec 2017 13:35:22 GMT): RzvnB (Fri, 29 Dec 2017 13:36:21 GMT): RzvnB (Fri, 29 Dec 2017 13:37:32 GMT): sstone1 (Fri, 29 Dec 2017 13:38:09 GMT): RzvnB (Fri, 29 Dec 2017 13:41:23 GMT): sstone1 (Fri, 29 Dec 2017 13:43:48 GMT): sstone1 (Fri, 29 Dec 2017 13:44:36 GMT): sstone1 (Fri, 29 Dec 2017 13:49:27 GMT): BCGEEKS (Fri, 29 Dec 2017 13:51:33 GMT): CorentinPacaud (Fri, 29 Dec 2017 13:52:51 GMT): sstone1 (Fri, 29 Dec 2017 13:54:04 GMT): sstone1 (Fri, 29 Dec 2017 13:54:13 GMT): CorentinPacaud (Fri, 29 Dec 2017 13:55:15 GMT): BCGEEKS (Fri, 29 Dec 2017 13:56:41 GMT): BCGEEKS (Fri, 29 Dec 2017 13:57:54 GMT): sstone1 (Fri, 29 Dec 2017 14:00:05 GMT): sstone1 (Fri, 29 Dec 2017 14:00:37 GMT): souradeep (Fri, 29 Dec 2017 14:10:34 GMT): souradeep (Fri, 29 Dec 2017 14:15:43 GMT): souradeep (Fri, 29 Dec 2017 14:18:24 GMT): mmick (Fri, 29 Dec 2017 14:19:18 GMT): sstone1 (Fri, 29 Dec 2017 14:21:33 GMT): souradeep (Fri, 29 Dec 2017 14:23:15 GMT): sstone1 (Fri, 29 Dec 2017 14:23:42 GMT): sstone1 (Fri, 29 Dec 2017 14:24:24 GMT): souradeep (Fri, 29 Dec 2017 14:29:11 GMT): mmick (Fri, 29 Dec 2017 14:50:40 GMT): mmick (Fri, 29 Dec 2017 15:29:57 GMT): mmick (Fri, 29 Dec 2017 15:29:57 GMT): JeremyStanton (Fri, 29 Dec 2017 15:33:31 GMT): JeremyStanton (Fri, 29 Dec 2017 15:33:57 GMT): mmick (Fri, 29 Dec 2017 17:18:18 GMT): JeremyStanton (Fri, 29 Dec 2017 18:45:16 GMT): sstone1 (Fri, 29 Dec 2017 19:49:09 GMT): ferazkian (Sat, 30 Dec 2017 08:08:52 GMT): elias_p (Sat, 30 Dec 2017 10:29:38 GMT): andrepadez (Sat, 30 Dec 2017 14:26:28 GMT): andrepadez (Sat, 30 Dec 2017 14:27:42 GMT): sstone1 (Sat, 30 Dec 2017 15:10:04 GMT): andrepadez (Sat, 30 Dec 2017 15:12:33 GMT): chhabras (Sun, 31 Dec 2017 03:58:39 GMT): chhabras (Sun, 31 Dec 2017 04:00:59 GMT): andrepadez (Sun, 31 Dec 2017 05:04:27 GMT): sstone1 (Sun, 31 Dec 2017 11:18:32 GMT): chhabras (Mon, 01 Jan 2018 03:57:27 GMT): chhabras (Mon, 01 Jan 2018 03:57:47 GMT): chhabras (Mon, 01 Jan 2018 03:59:15 GMT): rbole (Mon, 01 Jan 2018 08:36:08 GMT): chhabras (Mon, 01 Jan 2018 08:40:12 GMT): sstone1 (Mon, 01 Jan 2018 09:17:57 GMT): sstone1 (Mon, 01 Jan 2018 09:18:34 GMT): rbole (Mon, 01 Jan 2018 10:06:03 GMT): davidkel (Mon, 01 Jan 2018 11:09:02 GMT): davidkel (Mon, 01 Jan 2018 11:09:02 GMT): rbole (Mon, 01 Jan 2018 11:17:09 GMT): inna (Mon, 01 Jan 2018 11:19:11 GMT): inna (Mon, 01 Jan 2018 11:23:53 GMT): chhabras (Mon, 01 Jan 2018 12:52:13 GMT): chhabras (Mon, 01 Jan 2018 13:04:06 GMT): ghinks (Mon, 01 Jan 2018 15:02:30 GMT): sstone1 (Mon, 01 Jan 2018 20:05:18 GMT): sstone1 (Mon, 01 Jan 2018 20:06:50 GMT): chhabras (Tue, 02 Jan 2018 04:20:27 GMT): kiranthakkar (Tue, 02 Jan 2018 05:39:05 GMT): kiranthakkar (Tue, 02 Jan 2018 05:39:40 GMT): kiranthakkar (Tue, 02 Jan 2018 05:41:04 GMT): kiranthakkar (Tue, 02 Jan 2018 05:41:20 GMT): sstone1 (Tue, 02 Jan 2018 07:26:28 GMT): Abhi119 (Tue, 02 Jan 2018 08:03:50 GMT): Abhi119 (Tue, 02 Jan 2018 08:04:21 GMT): sstone1 (Tue, 02 Jan 2018 08:06:02 GMT): sstone1 (Tue, 02 Jan 2018 08:06:16 GMT): aviralwal (Tue, 02 Jan 2018 08:21:55 GMT): aviralwal (Tue, 02 Jan 2018 08:34:15 GMT): sstone1 (Tue, 02 Jan 2018 08:35:29 GMT): aviralwal (Tue, 02 Jan 2018 08:39:46 GMT): sstone1 (Tue, 02 Jan 2018 08:48:15 GMT): Abhi119 (Tue, 02 Jan 2018 08:53:58 GMT): sstone1 (Tue, 02 Jan 2018 09:01:29 GMT): sstone1 (Tue, 02 Jan 2018 09:01:41 GMT): inna (Tue, 02 Jan 2018 09:10:43 GMT): sstone1 (Tue, 02 Jan 2018 09:10:59 GMT): rthatcher (Tue, 02 Jan 2018 09:34:29 GMT): prmdmshra (Tue, 02 Jan 2018 10:35:50 GMT): odalle (Tue, 02 Jan 2018 10:41:13 GMT): odalle (Tue, 02 Jan 2018 10:43:34 GMT): odalle (Tue, 02 Jan 2018 10:58:01 GMT): sstone1 (Tue, 02 Jan 2018 11:01:03 GMT): odalle (Tue, 02 Jan 2018 11:02:00 GMT): odalle (Tue, 02 Jan 2018 11:02:02 GMT): sstone1 (Tue, 02 Jan 2018 11:02:22 GMT): sstone1 (Tue, 02 Jan 2018 11:02:34 GMT): odalle (Tue, 02 Jan 2018 11:02:45 GMT): aviralwal (Tue, 02 Jan 2018 11:16:20 GMT): sstone1 (Tue, 02 Jan 2018 11:19:06 GMT): aviralwal (Tue, 02 Jan 2018 11:24:22 GMT): GauravPalvia (Tue, 02 Jan 2018 11:26:09 GMT): odalle (Tue, 02 Jan 2018 11:33:31 GMT): kapilaArora (Tue, 02 Jan 2018 11:36:58 GMT): kapilaArora (Tue, 02 Jan 2018 11:38:09 GMT): kapilaArora (Tue, 02 Jan 2018 11:38:39 GMT): sstone1 (Tue, 02 Jan 2018 11:39:04 GMT): sstone1 (Tue, 02 Jan 2018 11:39:17 GMT): kapilaArora (Tue, 02 Jan 2018 11:40:01 GMT): PetrVlasekCA (Tue, 02 Jan 2018 13:41:28 GMT): PagadiShyam (Tue, 02 Jan 2018 14:52:48 GMT): Abhijeet.K (Tue, 02 Jan 2018 15:54:26 GMT): Abhijeet.K (Tue, 02 Jan 2018 15:54:57 GMT): Abhijeet.K (Tue, 02 Jan 2018 15:55:20 GMT): Abhijeet.K (Tue, 02 Jan 2018 15:55:27 GMT): vishal (Tue, 02 Jan 2018 16:09:57 GMT): hanzaleh (Tue, 02 Jan 2018 16:18:02 GMT): rthatcher (Tue, 02 Jan 2018 16:39:26 GMT): rthatcher (Tue, 02 Jan 2018 16:39:26 GMT): rthatcher (Tue, 02 Jan 2018 16:39:26 GMT): Abhijeet.K (Tue, 02 Jan 2018 16:54:52 GMT): ronald.petty (Tue, 02 Jan 2018 16:56:19 GMT): ronald.petty (Tue, 02 Jan 2018 16:57:19 GMT): AkshayJindal (Tue, 02 Jan 2018 16:59:23 GMT): sstone1 (Tue, 02 Jan 2018 17:03:48 GMT): sstone1 (Tue, 02 Jan 2018 17:04:01 GMT): sstone1 (Tue, 02 Jan 2018 17:04:52 GMT): mmick (Tue, 02 Jan 2018 17:07:16 GMT): sstone1 (Tue, 02 Jan 2018 17:08:25 GMT): mmick (Tue, 02 Jan 2018 17:11:40 GMT): mmick (Tue, 02 Jan 2018 17:11:40 GMT): sstone1 (Tue, 02 Jan 2018 17:12:42 GMT): mmick (Tue, 02 Jan 2018 17:15:56 GMT): mmick (Tue, 02 Jan 2018 17:18:02 GMT): sstone1 (Tue, 02 Jan 2018 17:21:13 GMT): sstone1 (Tue, 02 Jan 2018 17:21:23 GMT): sstone1 (Tue, 02 Jan 2018 17:21:38 GMT): mmick (Tue, 02 Jan 2018 17:26:01 GMT): AkshayJindal (Tue, 02 Jan 2018 17:42:51 GMT): AkshayJindal (Tue, 02 Jan 2018 17:42:51 GMT): ChinmayaMahunta (Tue, 02 Jan 2018 17:49:04 GMT): sstone1 (Tue, 02 Jan 2018 17:56:12 GMT): kiranthakkar (Tue, 02 Jan 2018 18:57:46 GMT): kiranthakkar (Tue, 02 Jan 2018 19:02:50 GMT): ChinmayaMahunta (Tue, 02 Jan 2018 19:27:34 GMT): rambsuthar (Tue, 02 Jan 2018 20:24:49 GMT): AkshayJindal (Tue, 02 Jan 2018 20:36:30 GMT): AkshayJindal (Tue, 02 Jan 2018 20:36:30 GMT): AkshayJindal (Tue, 02 Jan 2018 20:36:30 GMT): AkshayJindal (Tue, 02 Jan 2018 20:36:30 GMT): AkshayJindal (Wed, 03 Jan 2018 00:05:27 GMT): AkshayJindal (Wed, 03 Jan 2018 00:05:27 GMT): AkshayJindal (Wed, 03 Jan 2018 00:10:52 GMT): varun-raj (Wed, 03 Jan 2018 02:49:28 GMT): varun-raj (Wed, 03 Jan 2018 02:49:39 GMT): jasoncys (Wed, 03 Jan 2018 08:34:54 GMT): gen_el (Wed, 03 Jan 2018 08:43:50 GMT): gen_el (Wed, 03 Jan 2018 08:43:50 GMT): gen_el (Wed, 03 Jan 2018 08:43:50 GMT): jasoncys (Wed, 03 Jan 2018 08:48:49 GMT): prmdmshra (Wed, 03 Jan 2018 08:49:07 GMT): ruchika05 (Wed, 03 Jan 2018 09:09:02 GMT): rthatcher (Wed, 03 Jan 2018 09:26:16 GMT): rthatcher (Wed, 03 Jan 2018 09:51:15 GMT): jasoncys (Wed, 03 Jan 2018 10:17:53 GMT): purandam (Wed, 03 Jan 2018 12:20:03 GMT): purandam (Wed, 03 Jan 2018 12:20:23 GMT): purandam (Wed, 03 Jan 2018 12:20:30 GMT): rthatcher (Wed, 03 Jan 2018 12:25:56 GMT): prmdmshra (Wed, 03 Jan 2018 12:28:11 GMT): purandam (Wed, 03 Jan 2018 12:31:21 GMT): mastercpt (Wed, 03 Jan 2018 13:04:29 GMT): rthatcher (Wed, 03 Jan 2018 13:30:19 GMT): mastercpt (Wed, 03 Jan 2018 13:31:49 GMT): mastercpt (Wed, 03 Jan 2018 13:41:17 GMT): sstone1 (Wed, 03 Jan 2018 13:42:06 GMT): sstone1 (Wed, 03 Jan 2018 13:42:07 GMT): mastercpt (Wed, 03 Jan 2018 13:43:49 GMT): sstone1 (Wed, 03 Jan 2018 13:44:13 GMT): mastercpt (Wed, 03 Jan 2018 13:44:34 GMT): mastercpt (Wed, 03 Jan 2018 13:47:32 GMT): nasserfci (Wed, 03 Jan 2018 14:08:31 GMT): nasserfci (Wed, 03 Jan 2018 14:09:00 GMT): ChinmayaMahunta (Wed, 03 Jan 2018 14:19:51 GMT): rthatcher (Wed, 03 Jan 2018 14:22:05 GMT): rthatcher (Wed, 03 Jan 2018 14:23:39 GMT): ChinmayaMahunta (Wed, 03 Jan 2018 14:26:47 GMT): AkshayJindal (Wed, 03 Jan 2018 14:37:37 GMT): AkshayJindal (Wed, 03 Jan 2018 14:37:37 GMT): rthatcher (Wed, 03 Jan 2018 14:46:23 GMT): rthatcher (Wed, 03 Jan 2018 14:46:23 GMT): nasserfci (Wed, 03 Jan 2018 14:48:17 GMT): AkshayJindal (Wed, 03 Jan 2018 14:52:59 GMT): nickyromeijn (Wed, 03 Jan 2018 15:02:13 GMT): nickyromeijn (Wed, 03 Jan 2018 15:02:13 GMT): nickyromeijn (Wed, 03 Jan 2018 15:02:13 GMT): rthatcher (Wed, 03 Jan 2018 15:49:42 GMT): rthatcher (Wed, 03 Jan 2018 15:49:42 GMT): rthatcher (Wed, 03 Jan 2018 15:51:01 GMT): gen_el (Wed, 03 Jan 2018 16:20:38 GMT): gen_el (Wed, 03 Jan 2018 16:28:22 GMT): gen_el (Wed, 03 Jan 2018 16:28:22 GMT): gen_el (Wed, 03 Jan 2018 16:28:22 GMT): sstone1 (Wed, 03 Jan 2018 17:23:11 GMT): sstone1 (Wed, 03 Jan 2018 17:26:17 GMT): gen_el (Wed, 03 Jan 2018 17:37:43 GMT): gen_el (Wed, 03 Jan 2018 17:37:43 GMT): nasserfci (Wed, 03 Jan 2018 17:38:57 GMT): sstone1 (Wed, 03 Jan 2018 17:40:05 GMT): sstone1 (Wed, 03 Jan 2018 17:40:14 GMT): nasserfci (Wed, 03 Jan 2018 17:42:39 GMT): nasserfci (Wed, 03 Jan 2018 17:44:08 GMT): gen_el (Wed, 03 Jan 2018 17:45:49 GMT): gen_el (Wed, 03 Jan 2018 17:45:49 GMT): sstone1 (Wed, 03 Jan 2018 17:46:46 GMT): sstone1 (Wed, 03 Jan 2018 17:47:01 GMT): sstone1 (Wed, 03 Jan 2018 17:47:25 GMT): gen_el (Wed, 03 Jan 2018 17:48:25 GMT): sstone1 (Wed, 03 Jan 2018 17:48:36 GMT): sstone1 (Wed, 03 Jan 2018 17:49:03 GMT): gen_el (Wed, 03 Jan 2018 17:49:13 GMT): sstone1 (Wed, 03 Jan 2018 17:49:37 GMT): sstone1 (Wed, 03 Jan 2018 17:49:43 GMT): gen_el (Wed, 03 Jan 2018 17:49:56 GMT): gen_el (Wed, 03 Jan 2018 17:49:56 GMT): nasserfci (Wed, 03 Jan 2018 17:50:35 GMT): sstone1 (Wed, 03 Jan 2018 17:51:43 GMT): sstone1 (Wed, 03 Jan 2018 17:51:59 GMT): sstone1 (Wed, 03 Jan 2018 17:52:29 GMT): nasserfci (Wed, 03 Jan 2018 17:56:39 GMT): sstone1 (Wed, 03 Jan 2018 17:59:59 GMT): sstone1 (Wed, 03 Jan 2018 18:00:07 GMT): sstone1 (Wed, 03 Jan 2018 18:00:13 GMT): nasserfci (Wed, 03 Jan 2018 18:07:19 GMT): tennenjl (Wed, 03 Jan 2018 20:09:29 GMT): tennenjl (Wed, 03 Jan 2018 20:09:29 GMT): tennenjl (Wed, 03 Jan 2018 20:09:29 GMT): stevenvandervalk (Thu, 04 Jan 2018 01:04:53 GMT): SaiChaitanya (Thu, 04 Jan 2018 02:11:31 GMT): voutasaurus (Thu, 04 Jan 2018 03:44:07 GMT): TimskiiTim (Thu, 04 Jan 2018 03:56:25 GMT): varun-raj (Thu, 04 Jan 2018 04:25:26 GMT): varun-raj (Thu, 04 Jan 2018 04:25:26 GMT): akashsethi24 (Thu, 04 Jan 2018 05:13:46 GMT): Ancient (Thu, 04 Jan 2018 06:52:51 GMT): seungchan (Thu, 04 Jan 2018 06:55:15 GMT): Ancient (Thu, 04 Jan 2018 07:55:03 GMT): Ancient (Thu, 04 Jan 2018 07:57:16 GMT): davidkel (Thu, 04 Jan 2018 08:37:41 GMT): nasserfci (Thu, 04 Jan 2018 08:53:04 GMT): wininani (Thu, 04 Jan 2018 09:05:43 GMT): rthatcher (Thu, 04 Jan 2018 09:24:47 GMT): rthatcher (Thu, 04 Jan 2018 09:32:26 GMT): varun-raj (Thu, 04 Jan 2018 09:34:26 GMT): varun-raj (Thu, 04 Jan 2018 09:34:50 GMT): varun-raj (Thu, 04 Jan 2018 09:35:25 GMT): wininani (Thu, 04 Jan 2018 09:37:46 GMT): rthatcher (Thu, 04 Jan 2018 09:46:38 GMT): mahoney1 (Thu, 04 Jan 2018 10:05:23 GMT): mahoney1 (Thu, 04 Jan 2018 10:09:50 GMT): CorentinPacaud (Thu, 04 Jan 2018 10:41:59 GMT): CorentinPacaud (Thu, 04 Jan 2018 10:41:59 GMT): Ancient (Thu, 04 Jan 2018 10:48:09 GMT): jasoncys (Thu, 04 Jan 2018 10:58:25 GMT): jasoncys (Thu, 04 Jan 2018 11:04:37 GMT): rthatcher (Thu, 04 Jan 2018 11:14:20 GMT): rthatcher (Thu, 04 Jan 2018 11:21:15 GMT): rthatcher (Thu, 04 Jan 2018 11:21:15 GMT): jasoncys (Thu, 04 Jan 2018 11:34:09 GMT): Ancient (Thu, 04 Jan 2018 11:50:42 GMT): rthatcher (Thu, 04 Jan 2018 12:02:04 GMT): mahoney1 (Thu, 04 Jan 2018 12:04:07 GMT): nasht00 (Thu, 04 Jan 2018 13:25:50 GMT): rthatcher (Thu, 04 Jan 2018 14:15:21 GMT): nasht00 (Thu, 04 Jan 2018 14:17:31 GMT): nasht00 (Thu, 04 Jan 2018 14:19:52 GMT): nasht00 (Thu, 04 Jan 2018 14:22:35 GMT): rthatcher (Thu, 04 Jan 2018 14:27:19 GMT): rthatcher (Thu, 04 Jan 2018 14:27:19 GMT): nasht00 (Thu, 04 Jan 2018 14:28:48 GMT): rthatcher (Thu, 04 Jan 2018 14:33:08 GMT): AkshayJindal (Thu, 04 Jan 2018 14:57:00 GMT): AkshayJindal (Thu, 04 Jan 2018 14:57:00 GMT): rthatcher (Thu, 04 Jan 2018 15:05:56 GMT): AkshayJindal (Thu, 04 Jan 2018 15:15:11 GMT): AkshayJindal (Thu, 04 Jan 2018 15:15:11 GMT): AkshayJindal (Thu, 04 Jan 2018 15:15:11 GMT): AkshayJindal (Thu, 04 Jan 2018 15:16:02 GMT): AkshayJindal (Thu, 04 Jan 2018 15:16:02 GMT): theathibm (Thu, 04 Jan 2018 15:18:32 GMT): CorentinPacaud (Thu, 04 Jan 2018 15:19:50 GMT): tennenjl (Thu, 04 Jan 2018 15:20:26 GMT): CorentinPacaud (Thu, 04 Jan 2018 15:20:59 GMT): CorentinPacaud (Thu, 04 Jan 2018 15:21:36 GMT): makh 3 (Thu, 04 Jan 2018 15:26:35 GMT): mahoney1 (Thu, 04 Jan 2018 15:43:00 GMT): CorentinPacaud (Thu, 04 Jan 2018 15:47:20 GMT): mahoney1 (Thu, 04 Jan 2018 15:59:00 GMT): CorentinPacaud (Thu, 04 Jan 2018 16:05:14 GMT): rthatcher (Thu, 04 Jan 2018 16:11:43 GMT): rthatcher (Thu, 04 Jan 2018 16:14:48 GMT): CorentinPacaud (Thu, 04 Jan 2018 16:15:27 GMT): tennenjl (Thu, 04 Jan 2018 16:16:03 GMT): tennenjl (Thu, 04 Jan 2018 16:16:03 GMT): rthatcher (Thu, 04 Jan 2018 16:16:19 GMT): CorentinPacaud (Thu, 04 Jan 2018 16:17:02 GMT): CorentinPacaud (Thu, 04 Jan 2018 16:17:34 GMT): mahoney1 (Thu, 04 Jan 2018 16:22:07 GMT): CorentinPacaud (Thu, 04 Jan 2018 16:23:20 GMT): CorentinPacaud (Thu, 04 Jan 2018 16:24:59 GMT): CorentinPacaud (Thu, 04 Jan 2018 16:26:06 GMT): CorentinPacaud (Thu, 04 Jan 2018 16:26:12 GMT): mahoney1 (Thu, 04 Jan 2018 16:32:15 GMT): mahoney1 (Thu, 04 Jan 2018 16:32:15 GMT): AkshayJindal (Thu, 04 Jan 2018 16:33:26 GMT): CorentinPacaud (Thu, 04 Jan 2018 16:35:30 GMT): mahoney1 (Thu, 04 Jan 2018 16:42:06 GMT): CorentinPacaud (Thu, 04 Jan 2018 16:42:45 GMT): krabradosty (Thu, 04 Jan 2018 18:10:41 GMT): RajuJose (Thu, 04 Jan 2018 18:44:01 GMT): krabradosty (Thu, 04 Jan 2018 18:46:53 GMT): krabradosty (Thu, 04 Jan 2018 18:46:53 GMT): RajuJose (Thu, 04 Jan 2018 19:01:48 GMT): RajuJose (Thu, 04 Jan 2018 19:09:07 GMT): davidkel (Thu, 04 Jan 2018 19:41:18 GMT): tennenjl (Thu, 04 Jan 2018 19:46:25 GMT): tennenjl (Thu, 04 Jan 2018 19:46:25 GMT): tennenjl (Thu, 04 Jan 2018 19:46:25 GMT): davidkel (Thu, 04 Jan 2018 19:48:44 GMT): tennenjl (Thu, 04 Jan 2018 19:54:36 GMT): tennenjl (Thu, 04 Jan 2018 19:56:45 GMT): davidkel (Thu, 04 Jan 2018 19:57:09 GMT): davidkel (Thu, 04 Jan 2018 19:57:51 GMT): mmick (Thu, 04 Jan 2018 20:09:41 GMT): paul.sitoh (Thu, 04 Jan 2018 20:33:31 GMT): sstone1 (Thu, 04 Jan 2018 23:16:03 GMT): sstone1 (Thu, 04 Jan 2018 23:16:12 GMT): gen_el (Fri, 05 Jan 2018 01:11:16 GMT): tennenjl (Fri, 05 Jan 2018 02:05:21 GMT): kiranthakkar (Fri, 05 Jan 2018 02:27:00 GMT): kiranthakkar (Fri, 05 Jan 2018 02:27:15 GMT): kiranthakkar (Fri, 05 Jan 2018 02:48:46 GMT): kiranthakkar (Fri, 05 Jan 2018 02:49:15 GMT): kiranthakkar (Fri, 05 Jan 2018 02:49:54 GMT): kassymkhanTJ (Fri, 05 Jan 2018 08:48:12 GMT): gen_el (Fri, 05 Jan 2018 08:52:29 GMT): gen_el (Fri, 05 Jan 2018 08:55:03 GMT): rthatcher (Fri, 05 Jan 2018 09:00:33 GMT): mmick (Fri, 05 Jan 2018 09:45:10 GMT): mahoney1 (Fri, 05 Jan 2018 09:56:30 GMT): CorentinPacaud (Fri, 05 Jan 2018 10:16:05 GMT): CorentinPacaud (Fri, 05 Jan 2018 10:16:05 GMT): CorentinPacaud (Fri, 05 Jan 2018 10:16:05 GMT): CorentinPacaud (Fri, 05 Jan 2018 10:16:05 GMT): CorentinPacaud (Fri, 05 Jan 2018 10:16:11 GMT): CorentinPacaud (Fri, 05 Jan 2018 10:18:25 GMT): mahoney1 (Fri, 05 Jan 2018 10:29:51 GMT): yogesh.fulsunge (Fri, 05 Jan 2018 10:35:58 GMT): mahoney1 (Fri, 05 Jan 2018 10:45:18 GMT): varun-raj (Fri, 05 Jan 2018 10:46:18 GMT): mahoney1 (Fri, 05 Jan 2018 10:48:29 GMT): baspoldervaart (Fri, 05 Jan 2018 10:56:36 GMT): uber.twin (Fri, 05 Jan 2018 11:09:41 GMT): mahoney1 (Fri, 05 Jan 2018 11:11:42 GMT): mahoney1 (Fri, 05 Jan 2018 11:11:42 GMT): varun-raj (Fri, 05 Jan 2018 11:13:03 GMT): varun-raj (Fri, 05 Jan 2018 11:16:03 GMT): mahoney1 (Fri, 05 Jan 2018 11:24:40 GMT): mahoney1 (Fri, 05 Jan 2018 11:26:23 GMT): varun-raj (Fri, 05 Jan 2018 11:27:14 GMT): varun-raj (Fri, 05 Jan 2018 11:40:37 GMT): uber.twin (Fri, 05 Jan 2018 11:51:32 GMT): uber.twin (Fri, 05 Jan 2018 11:51:32 GMT): uber.twin (Fri, 05 Jan 2018 11:51:32 GMT): uber.twin (Fri, 05 Jan 2018 12:04:12 GMT): uber.twin (Fri, 05 Jan 2018 12:04:12 GMT): uber.twin (Fri, 05 Jan 2018 12:04:12 GMT): uber.twin (Fri, 05 Jan 2018 12:04:36 GMT): rthatcher (Fri, 05 Jan 2018 12:13:20 GMT): varun-raj (Fri, 05 Jan 2018 12:19:47 GMT): mahoney1 (Fri, 05 Jan 2018 12:30:51 GMT): mahoney1 (Fri, 05 Jan 2018 12:30:51 GMT): uber.twin (Fri, 05 Jan 2018 12:31:54 GMT): uber.twin (Fri, 05 Jan 2018 12:31:54 GMT): uber.twin (Fri, 05 Jan 2018 12:31:54 GMT): mahoney1 (Fri, 05 Jan 2018 12:51:38 GMT): mahoney1 (Fri, 05 Jan 2018 12:52:06 GMT): mahoney1 (Fri, 05 Jan 2018 12:52:06 GMT): uber.twin (Fri, 05 Jan 2018 12:54:47 GMT): uber.twin (Fri, 05 Jan 2018 13:10:36 GMT): mahoney1 (Fri, 05 Jan 2018 13:17:29 GMT): mahoney1 (Fri, 05 Jan 2018 13:17:29 GMT): mahoney1 (Fri, 05 Jan 2018 13:17:29 GMT): uber.twin (Fri, 05 Jan 2018 13:23:36 GMT): mahoney1 (Fri, 05 Jan 2018 13:23:55 GMT): uber.twin (Fri, 05 Jan 2018 13:34:21 GMT): uber.twin (Fri, 05 Jan 2018 13:34:21 GMT): mahoney1 (Fri, 05 Jan 2018 13:34:21 GMT): uber.twin (Fri, 05 Jan 2018 13:38:09 GMT): uber.twin (Fri, 05 Jan 2018 13:38:35 GMT): mahoney1 (Fri, 05 Jan 2018 13:38:52 GMT): uber.twin (Fri, 05 Jan 2018 13:39:52 GMT): uber.twin (Fri, 05 Jan 2018 13:40:24 GMT): uber.twin (Fri, 05 Jan 2018 13:40:24 GMT): uber.twin (Fri, 05 Jan 2018 13:40:24 GMT): uber.twin (Fri, 05 Jan 2018 13:40:24 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:17:57 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:17:57 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:17:57 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:19:13 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:22:58 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:22:58 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:22:58 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:22:58 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:22:58 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:22:58 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:22:58 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:22:58 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:22:58 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:22:58 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:22:58 GMT): CorentinPacaud (Fri, 05 Jan 2018 14:22:58 GMT): mahoney1 (Fri, 05 Jan 2018 14:36:50 GMT): mahoney1 (Fri, 05 Jan 2018 14:37:14 GMT): michael_aR (Fri, 05 Jan 2018 15:08:00 GMT): michael_aR (Fri, 05 Jan 2018 15:08:00 GMT): michael_aR (Fri, 05 Jan 2018 15:08:00 GMT): rthatcher (Fri, 05 Jan 2018 15:23:46 GMT): rthatcher (Fri, 05 Jan 2018 15:23:46 GMT): michael_aR (Fri, 05 Jan 2018 15:25:41 GMT): rthatcher (Fri, 05 Jan 2018 15:29:09 GMT): Aditya1305249 (Fri, 05 Jan 2018 15:29:17 GMT): Aditya1305249 (Fri, 05 Jan 2018 15:29:38 GMT): Aditya1305249 (Fri, 05 Jan 2018 15:30:39 GMT): michael_aR (Fri, 05 Jan 2018 15:31:15 GMT): michael_aR (Fri, 05 Jan 2018 15:33:25 GMT): rthatcher (Fri, 05 Jan 2018 15:38:12 GMT): michael_aR (Fri, 05 Jan 2018 15:41:30 GMT): michael_aR (Fri, 05 Jan 2018 15:41:30 GMT): rthatcher (Fri, 05 Jan 2018 15:45:43 GMT): michael_aR (Fri, 05 Jan 2018 15:55:57 GMT): michael_aR (Fri, 05 Jan 2018 15:56:42 GMT): michael_aR (Fri, 05 Jan 2018 15:56:42 GMT): michael_aR (Fri, 05 Jan 2018 15:56:42 GMT): michael_aR (Fri, 05 Jan 2018 15:58:58 GMT): mmick (Fri, 05 Jan 2018 16:26:54 GMT): mmick (Fri, 05 Jan 2018 16:26:54 GMT): rthatcher (Fri, 05 Jan 2018 16:54:53 GMT): kiranthakkar (Fri, 05 Jan 2018 18:46:29 GMT): kiranthakkar (Fri, 05 Jan 2018 22:09:45 GMT): kiranthakkar (Fri, 05 Jan 2018 22:09:47 GMT): kiranthakkar (Fri, 05 Jan 2018 22:09:55 GMT): kiranthakkar (Fri, 05 Jan 2018 22:10:35 GMT): kiranthakkar (Fri, 05 Jan 2018 22:11:20 GMT): sstone1 (Fri, 05 Jan 2018 22:52:36 GMT): kiranthakkar (Fri, 05 Jan 2018 22:53:35 GMT): mostafa.elsayyad (Sat, 06 Jan 2018 08:45:13 GMT): IamMukulTaneja (Sat, 06 Jan 2018 09:22:01 GMT): sstone1 (Sat, 06 Jan 2018 12:38:35 GMT): gewing (Sat, 06 Jan 2018 20:00:59 GMT): gewing (Sat, 06 Jan 2018 20:10:16 GMT): gewing (Sat, 06 Jan 2018 20:12:44 GMT): gewing (Sat, 06 Jan 2018 20:20:25 GMT): anupamsinha15 (Sun, 07 Jan 2018 04:56:29 GMT): anupamsinha15 (Sun, 07 Jan 2018 04:58:18 GMT): anupamsinha15 (Sun, 07 Jan 2018 04:59:02 GMT): anupamsinha15 (Sun, 07 Jan 2018 04:59:05 GMT): kiranthakkar (Sun, 07 Jan 2018 05:31:12 GMT): anupamsinha15 (Sun, 07 Jan 2018 06:44:11 GMT): anupamsinha15 (Sun, 07 Jan 2018 06:44:29 GMT): bruteforced (Sun, 07 Jan 2018 13:32:00 GMT): gauthampamu (Sun, 07 Jan 2018 13:38:16 GMT): bruteforced (Sun, 07 Jan 2018 13:48:38 GMT): bruteforced (Sun, 07 Jan 2018 13:48:38 GMT): bruteforced (Sun, 07 Jan 2018 13:48:38 GMT): bruteforced (Sun, 07 Jan 2018 13:48:38 GMT): bruteforced (Sun, 07 Jan 2018 13:48:38 GMT): bruteforced (Sun, 07 Jan 2018 13:48:38 GMT): bruteforced (Sun, 07 Jan 2018 13:48:38 GMT): davidkel (Sun, 07 Jan 2018 14:00:19 GMT): bruteforced (Sun, 07 Jan 2018 14:08:37 GMT): bruteforced (Sun, 07 Jan 2018 14:08:37 GMT): bruteforced (Sun, 07 Jan 2018 14:08:37 GMT): HariPranav (Sun, 07 Jan 2018 14:33:48 GMT): snowy13 (Sun, 07 Jan 2018 18:43:50 GMT): snowy13 (Sun, 07 Jan 2018 18:44:28 GMT): bruteforced (Sun, 07 Jan 2018 18:55:14 GMT): snowy13 (Sun, 07 Jan 2018 18:58:08 GMT): Menniti (Sun, 07 Jan 2018 19:31:53 GMT): Menniti (Sun, 07 Jan 2018 19:32:35 GMT): Menniti (Sun, 07 Jan 2018 19:32:59 GMT): Menniti (Sun, 07 Jan 2018 19:33:22 GMT): Menniti (Sun, 07 Jan 2018 19:33:25 GMT): bruteforced (Sun, 07 Jan 2018 19:33:32 GMT): BlockHead 2 (Sun, 07 Jan 2018 23:04:51 GMT): kiranthakkar (Mon, 08 Jan 2018 03:07:15 GMT): kiranthakkar (Mon, 08 Jan 2018 03:07:46 GMT): Batu (Mon, 08 Jan 2018 05:22:54 GMT): jaswanth (Mon, 08 Jan 2018 05:46:15 GMT): sstone1 (Mon, 08 Jan 2018 07:15:54 GMT): nasht00 (Mon, 08 Jan 2018 07:34:27 GMT): sstone1 (Mon, 08 Jan 2018 07:44:04 GMT): sstone1 (Mon, 08 Jan 2018 07:44:57 GMT): nasht00 (Mon, 08 Jan 2018 07:56:36 GMT): Abhi119 (Mon, 08 Jan 2018 08:55:12 GMT): Abhi119 (Mon, 08 Jan 2018 08:57:33 GMT): Abhi119 (Mon, 08 Jan 2018 08:57:55 GMT): Abhi119 (Mon, 08 Jan 2018 08:58:10 GMT): rthatcher (Mon, 08 Jan 2018 10:22:12 GMT): rthatcher (Mon, 08 Jan 2018 10:28:20 GMT): jon_s (Mon, 08 Jan 2018 10:44:41 GMT): jon_s (Mon, 08 Jan 2018 10:44:45 GMT): jon_s (Mon, 08 Jan 2018 10:44:56 GMT): rthatcher (Mon, 08 Jan 2018 10:56:35 GMT): jon_s (Mon, 08 Jan 2018 10:57:32 GMT): jaswanth (Mon, 08 Jan 2018 11:02:28 GMT): aviralwal (Mon, 08 Jan 2018 11:03:32 GMT): jon_s (Mon, 08 Jan 2018 11:04:11 GMT): jon_s (Mon, 08 Jan 2018 11:04:30 GMT): Abhi119 (Mon, 08 Jan 2018 11:20:24 GMT): Abhi119 (Mon, 08 Jan 2018 11:20:36 GMT): jon_s (Mon, 08 Jan 2018 11:24:29 GMT): jon_s (Mon, 08 Jan 2018 11:24:30 GMT): varun-raj (Mon, 08 Jan 2018 11:26:57 GMT): AkshayJindal (Mon, 08 Jan 2018 11:37:18 GMT): jaswanth (Mon, 08 Jan 2018 11:41:16 GMT): jaswanth (Mon, 08 Jan 2018 11:41:16 GMT): jaswanth (Mon, 08 Jan 2018 11:41:16 GMT): jaswanth (Mon, 08 Jan 2018 11:41:16 GMT): jon_s (Mon, 08 Jan 2018 11:57:32 GMT): jaswanth (Mon, 08 Jan 2018 12:08:52 GMT): jaswanth (Mon, 08 Jan 2018 12:08:52 GMT): jaswanth (Mon, 08 Jan 2018 12:16:28 GMT): rthatcher (Mon, 08 Jan 2018 12:16:54 GMT): rthatcher (Mon, 08 Jan 2018 12:29:30 GMT): mahoney1 (Mon, 08 Jan 2018 12:30:35 GMT): rthatcher (Mon, 08 Jan 2018 12:31:34 GMT): rthatcher (Mon, 08 Jan 2018 12:31:34 GMT): mahoney1 (Mon, 08 Jan 2018 12:35:53 GMT): varun-raj (Mon, 08 Jan 2018 12:40:19 GMT): mahoney1 (Mon, 08 Jan 2018 12:51:44 GMT): SurajThapaNTL (Mon, 08 Jan 2018 14:22:26 GMT): mahoney1 (Mon, 08 Jan 2018 14:38:15 GMT): mahoney1 (Mon, 08 Jan 2018 14:38:15 GMT): mahoney1 (Mon, 08 Jan 2018 14:38:15 GMT): codenacci (Mon, 08 Jan 2018 15:30:17 GMT): codenacci (Mon, 08 Jan 2018 15:30:18 GMT): codenacci (Mon, 08 Jan 2018 15:30:50 GMT): mahoney1 (Mon, 08 Jan 2018 16:48:09 GMT): mahoney1 (Mon, 08 Jan 2018 16:48:09 GMT): SamuelDare (Mon, 08 Jan 2018 17:51:34 GMT): SamuelDare (Mon, 08 Jan 2018 17:51:34 GMT): SamuelDare (Mon, 08 Jan 2018 17:51:34 GMT): SamuelDare (Mon, 08 Jan 2018 17:51:34 GMT): SamuelDare (Mon, 08 Jan 2018 17:52:44 GMT): mahoney1 (Mon, 08 Jan 2018 18:02:05 GMT): SamuelDare (Mon, 08 Jan 2018 18:02:23 GMT): SamuelDare (Mon, 08 Jan 2018 18:02:34 GMT): mahoney1 (Mon, 08 Jan 2018 18:02:44 GMT): SamuelDare (Mon, 08 Jan 2018 18:03:32 GMT): SamuelDare (Mon, 08 Jan 2018 18:03:32 GMT): SamuelDare (Mon, 08 Jan 2018 18:03:32 GMT): SamuelDare (Mon, 08 Jan 2018 18:03:45 GMT): SamuelDare (Mon, 08 Jan 2018 18:04:18 GMT): mahoney1 (Mon, 08 Jan 2018 18:05:31 GMT): SamuelDare (Mon, 08 Jan 2018 18:07:24 GMT): SamuelDare (Mon, 08 Jan 2018 18:07:31 GMT): SamuelDare (Mon, 08 Jan 2018 18:07:34 GMT): bruteforced (Mon, 08 Jan 2018 18:39:13 GMT): KathyXu (Mon, 08 Jan 2018 19:27:49 GMT): kiranthakkar (Mon, 08 Jan 2018 19:48:25 GMT): SamuelDare (Mon, 08 Jan 2018 20:42:52 GMT): SamuelDare (Mon, 08 Jan 2018 20:42:52 GMT): SamuelDare (Mon, 08 Jan 2018 20:42:52 GMT): SamuelDare (Mon, 08 Jan 2018 20:42:52 GMT): silliman (Mon, 08 Jan 2018 20:46:54 GMT): SamuelDare (Mon, 08 Jan 2018 20:47:41 GMT): SamuelDare (Mon, 08 Jan 2018 20:47:41 GMT): SamuelDare (Mon, 08 Jan 2018 20:47:58 GMT): silliman (Mon, 08 Jan 2018 20:48:24 GMT): RobertMiroballi (Mon, 08 Jan 2018 21:03:34 GMT): onkarg (Mon, 08 Jan 2018 23:43:14 GMT): codenacci (Tue, 09 Jan 2018 02:29:22 GMT): codenacci (Tue, 09 Jan 2018 02:29:22 GMT): codenacci (Tue, 09 Jan 2018 02:30:12 GMT): jon_s (Tue, 09 Jan 2018 04:54:20 GMT): asavchen (Tue, 09 Jan 2018 05:08:09 GMT): kapilaArora (Tue, 09 Jan 2018 05:43:59 GMT): kapilaArora (Tue, 09 Jan 2018 05:46:23 GMT): kapilaArora (Tue, 09 Jan 2018 05:47:00 GMT): kapilaArora (Tue, 09 Jan 2018 05:47:39 GMT): varun-raj (Tue, 09 Jan 2018 06:07:22 GMT): varun-raj (Tue, 09 Jan 2018 06:07:26 GMT): gen_el (Tue, 09 Jan 2018 08:56:15 GMT): gen_el (Tue, 09 Jan 2018 08:57:06 GMT): krabradosty (Tue, 09 Jan 2018 09:10:25 GMT): easypete (Tue, 09 Jan 2018 09:17:01 GMT): prmdmshra (Tue, 09 Jan 2018 09:46:16 GMT): rthatcher (Tue, 09 Jan 2018 10:14:03 GMT): prmdmshra (Tue, 09 Jan 2018 10:21:48 GMT): mahoney1 (Tue, 09 Jan 2018 10:26:39 GMT): mahoney1 (Tue, 09 Jan 2018 10:26:51 GMT): mahoney1 (Tue, 09 Jan 2018 10:29:04 GMT): varun-raj (Tue, 09 Jan 2018 10:35:24 GMT): mahoney1 (Tue, 09 Jan 2018 10:35:51 GMT): kapilaArora (Tue, 09 Jan 2018 10:55:03 GMT): argman (Tue, 09 Jan 2018 11:43:19 GMT): rthatcher (Tue, 09 Jan 2018 11:55:00 GMT): amitjatav87 (Tue, 09 Jan 2018 12:09:28 GMT): amitjatav87 (Tue, 09 Jan 2018 12:10:40 GMT): kmohanar (Tue, 09 Jan 2018 12:18:58 GMT): kmohanar (Tue, 09 Jan 2018 12:18:58 GMT): rthatcher (Tue, 09 Jan 2018 12:22:43 GMT): argman (Tue, 09 Jan 2018 12:23:09 GMT): mahoney1 (Tue, 09 Jan 2018 12:27:01 GMT): matrisis (Tue, 09 Jan 2018 12:34:43 GMT): mahoney1 (Tue, 09 Jan 2018 12:47:00 GMT): mahoney1 (Tue, 09 Jan 2018 12:47:00 GMT): mahoney1 (Tue, 09 Jan 2018 12:47:00 GMT): mahoney1 (Tue, 09 Jan 2018 12:47:00 GMT): mahoney1 (Tue, 09 Jan 2018 12:47:00 GMT): argman (Tue, 09 Jan 2018 13:01:22 GMT): mahoney1 (Tue, 09 Jan 2018 13:22:13 GMT): lucasdf (Tue, 09 Jan 2018 14:03:20 GMT): lucasdf (Tue, 09 Jan 2018 14:03:20 GMT): uber.twin (Tue, 09 Jan 2018 14:37:49 GMT): ThomasYuan (Tue, 09 Jan 2018 15:11:46 GMT): nickyromeijn (Tue, 09 Jan 2018 15:15:22 GMT): mahoney1 (Tue, 09 Jan 2018 15:17:30 GMT): mahoney1 (Tue, 09 Jan 2018 15:18:55 GMT): uber.twin (Tue, 09 Jan 2018 15:26:50 GMT): uber.twin (Tue, 09 Jan 2018 15:26:50 GMT): matrisis (Tue, 09 Jan 2018 15:39:36 GMT): matrisis (Tue, 09 Jan 2018 15:39:36 GMT): matrisis (Tue, 09 Jan 2018 15:40:23 GMT): mahoney1 (Tue, 09 Jan 2018 15:42:39 GMT): mahoney1 (Tue, 09 Jan 2018 15:42:39 GMT): mahoney1 (Tue, 09 Jan 2018 15:46:27 GMT): matrisis (Tue, 09 Jan 2018 15:48:30 GMT): matrisis (Tue, 09 Jan 2018 15:56:32 GMT): uber.twin (Tue, 09 Jan 2018 15:57:12 GMT): uber.twin (Tue, 09 Jan 2018 15:58:39 GMT): rthatcher (Tue, 09 Jan 2018 16:09:40 GMT): matrisis (Tue, 09 Jan 2018 16:14:54 GMT): matrisis (Tue, 09 Jan 2018 16:15:03 GMT): rthatcher (Tue, 09 Jan 2018 16:23:19 GMT): matrisis (Tue, 09 Jan 2018 16:27:05 GMT): matrisis (Tue, 09 Jan 2018 16:28:54 GMT): matrisis (Tue, 09 Jan 2018 16:28:54 GMT): matrisis (Tue, 09 Jan 2018 16:28:54 GMT): matrisis (Tue, 09 Jan 2018 16:29:31 GMT): matrisis (Tue, 09 Jan 2018 16:30:21 GMT): rthatcher (Tue, 09 Jan 2018 16:34:33 GMT): matrisis (Tue, 09 Jan 2018 16:36:07 GMT): rthatcher (Tue, 09 Jan 2018 16:41:42 GMT): matrisis (Tue, 09 Jan 2018 16:42:46 GMT): matrisis (Tue, 09 Jan 2018 16:44:53 GMT): rthatcher (Tue, 09 Jan 2018 16:47:25 GMT): matrisis (Tue, 09 Jan 2018 16:49:10 GMT): matrisis (Tue, 09 Jan 2018 16:50:46 GMT): matrisis (Tue, 09 Jan 2018 16:53:53 GMT): rthatcher (Tue, 09 Jan 2018 16:56:27 GMT): rthatcher (Tue, 09 Jan 2018 16:56:27 GMT): matrisis (Tue, 09 Jan 2018 17:00:37 GMT): matrisis (Tue, 09 Jan 2018 17:00:44 GMT): matrisis (Tue, 09 Jan 2018 17:00:55 GMT): rthatcher (Tue, 09 Jan 2018 17:04:01 GMT): matrisis (Tue, 09 Jan 2018 17:07:16 GMT): matrisis (Tue, 09 Jan 2018 17:10:55 GMT): rthatcher (Tue, 09 Jan 2018 17:11:52 GMT): matrisis (Tue, 09 Jan 2018 17:18:12 GMT): matrisis (Tue, 09 Jan 2018 17:25:06 GMT): mahoney1 (Tue, 09 Jan 2018 17:41:36 GMT): mahoney1 (Tue, 09 Jan 2018 17:41:36 GMT): matrisis (Tue, 09 Jan 2018 18:33:27 GMT): SamuelDare (Tue, 09 Jan 2018 19:14:11 GMT): SamuelDare (Tue, 09 Jan 2018 19:15:40 GMT): SamuelDare (Tue, 09 Jan 2018 19:27:16 GMT): SamuelDare (Tue, 09 Jan 2018 19:27:19 GMT): SamuelDare (Tue, 09 Jan 2018 19:27:47 GMT): SamuelDare (Tue, 09 Jan 2018 19:28:04 GMT): SamuelDare (Tue, 09 Jan 2018 19:29:11 GMT): SamuelDare (Tue, 09 Jan 2018 19:30:37 GMT): SamuelDare (Tue, 09 Jan 2018 19:30:41 GMT): SamuelDare (Tue, 09 Jan 2018 19:31:03 GMT): JuergenKuebler (Tue, 09 Jan 2018 21:08:13 GMT): kipharris (Tue, 09 Jan 2018 22:55:36 GMT): hemant30 (Tue, 09 Jan 2018 23:38:53 GMT): ChainMind (Tue, 09 Jan 2018 23:56:23 GMT): ChainMind (Wed, 10 Jan 2018 01:30:49 GMT): jasoncys (Wed, 10 Jan 2018 03:26:45 GMT): jasoncys (Wed, 10 Jan 2018 03:33:59 GMT): jasoncys (Wed, 10 Jan 2018 03:45:41 GMT): prabvi01 (Wed, 10 Jan 2018 05:13:56 GMT): mprasad25 (Wed, 10 Jan 2018 05:25:41 GMT): jaswanth (Wed, 10 Jan 2018 05:30:21 GMT): jaswanth (Wed, 10 Jan 2018 05:30:21 GMT): jaswanth (Wed, 10 Jan 2018 05:30:21 GMT): jasoncys (Wed, 10 Jan 2018 05:43:06 GMT): jaswanth (Wed, 10 Jan 2018 06:07:05 GMT): labcoinpoc (Wed, 10 Jan 2018 06:11:13 GMT): bh4rtp (Wed, 10 Jan 2018 06:12:55 GMT): jasoncys (Wed, 10 Jan 2018 06:16:38 GMT): jaswanth (Wed, 10 Jan 2018 06:35:00 GMT): jaswanth (Wed, 10 Jan 2018 06:35:00 GMT): jaswanth (Wed, 10 Jan 2018 06:35:00 GMT): prmdmshra (Wed, 10 Jan 2018 07:16:50 GMT): prmdmshra (Wed, 10 Jan 2018 07:16:50 GMT): mahoney1 (Wed, 10 Jan 2018 08:15:46 GMT): mahoney1 (Wed, 10 Jan 2018 08:15:46 GMT): mahoney1 (Wed, 10 Jan 2018 08:20:29 GMT): nasht00 (Wed, 10 Jan 2018 08:33:54 GMT): jaswanth (Wed, 10 Jan 2018 08:49:24 GMT): jaswanth (Wed, 10 Jan 2018 08:49:24 GMT): jaswanth (Wed, 10 Jan 2018 08:49:24 GMT): jaswanth (Wed, 10 Jan 2018 08:49:24 GMT): Jakeeyturner (Wed, 10 Jan 2018 09:08:44 GMT): nasserfci (Wed, 10 Jan 2018 09:15:05 GMT): dpurnima0709 (Wed, 10 Jan 2018 09:21:01 GMT): rthatcher (Wed, 10 Jan 2018 09:55:51 GMT): prmdmshra (Wed, 10 Jan 2018 09:57:45 GMT): prmdmshra (Wed, 10 Jan 2018 09:57:46 GMT): rthatcher (Wed, 10 Jan 2018 09:57:47 GMT): rthatcher (Wed, 10 Jan 2018 10:04:06 GMT): amanc 2 (Wed, 10 Jan 2018 10:04:53 GMT): amanc 2 (Wed, 10 Jan 2018 10:08:06 GMT): amanc 2 (Wed, 10 Jan 2018 10:08:42 GMT): amanc 2 (Wed, 10 Jan 2018 10:08:42 GMT): amanc 2 (Wed, 10 Jan 2018 10:09:04 GMT): matrisis (Wed, 10 Jan 2018 10:17:42 GMT): rthatcher (Wed, 10 Jan 2018 10:18:20 GMT): jaswanth (Wed, 10 Jan 2018 10:20:12 GMT): jaswanth (Wed, 10 Jan 2018 10:20:12 GMT): jaswanth (Wed, 10 Jan 2018 10:21:20 GMT): jaswanth (Wed, 10 Jan 2018 10:21:20 GMT): davidkel (Wed, 10 Jan 2018 10:32:36 GMT): rthatcher (Wed, 10 Jan 2018 10:42:01 GMT): jasoncys (Wed, 10 Jan 2018 10:42:55 GMT): Jakeeyturner (Wed, 10 Jan 2018 10:53:37 GMT): dpurnima0709 (Wed, 10 Jan 2018 10:54:54 GMT): AkshayJindal (Wed, 10 Jan 2018 10:56:22 GMT): davidkel (Wed, 10 Jan 2018 10:57:07 GMT): rthatcher (Wed, 10 Jan 2018 11:05:22 GMT): mahoney1 (Wed, 10 Jan 2018 11:25:22 GMT): mahoney1 (Wed, 10 Jan 2018 12:01:23 GMT): mahoney1 (Wed, 10 Jan 2018 12:01:23 GMT): mahoney1 (Wed, 10 Jan 2018 12:01:23 GMT): gbodra (Wed, 10 Jan 2018 12:05:07 GMT): matrisis (Wed, 10 Jan 2018 12:49:21 GMT): matrisis (Wed, 10 Jan 2018 12:49:52 GMT): vieiramanoel (Wed, 10 Jan 2018 12:53:37 GMT): rthatcher (Wed, 10 Jan 2018 13:00:12 GMT): vkblue (Wed, 10 Jan 2018 14:16:46 GMT): rthatcher (Wed, 10 Jan 2018 14:23:16 GMT): kmohanar (Wed, 10 Jan 2018 14:27:28 GMT): kmohanar (Wed, 10 Jan 2018 14:27:28 GMT): vkblue (Wed, 10 Jan 2018 14:36:32 GMT): mastercpt (Wed, 10 Jan 2018 14:56:41 GMT): lucasdf (Wed, 10 Jan 2018 16:44:22 GMT): rthatcher (Wed, 10 Jan 2018 18:25:57 GMT): vkblue (Wed, 10 Jan 2018 18:35:33 GMT): lucasdf (Wed, 10 Jan 2018 18:46:44 GMT): lucasdf (Wed, 10 Jan 2018 18:46:44 GMT): lucasdf (Wed, 10 Jan 2018 18:46:44 GMT): Rishabh-Sharma (Wed, 10 Jan 2018 19:22:59 GMT): Rishabh-Sharma (Wed, 10 Jan 2018 20:30:21 GMT): Rishabh-Sharma (Wed, 10 Jan 2018 20:30:58 GMT): kipharris (Wed, 10 Jan 2018 22:28:09 GMT): Trucker (Thu, 11 Jan 2018 03:03:39 GMT): kmohanar (Thu, 11 Jan 2018 06:36:13 GMT): tuxy (Thu, 11 Jan 2018 07:16:43 GMT): tuxy (Thu, 11 Jan 2018 08:11:10 GMT): timesurfer (Thu, 11 Jan 2018 09:46:27 GMT): borovik96 (Thu, 11 Jan 2018 09:46:45 GMT): mahoney1 (Thu, 11 Jan 2018 10:01:08 GMT): mahoney1 (Thu, 11 Jan 2018 10:01:08 GMT): mahoney1 (Thu, 11 Jan 2018 10:01:08 GMT): jaswanth (Thu, 11 Jan 2018 10:17:57 GMT): jaswanth (Thu, 11 Jan 2018 10:19:41 GMT): mahoney1 (Thu, 11 Jan 2018 10:49:36 GMT): mahoney1 (Thu, 11 Jan 2018 10:52:28 GMT): jaswanth (Thu, 11 Jan 2018 10:55:58 GMT): jaswanth (Thu, 11 Jan 2018 10:55:58 GMT): mahoney1 (Thu, 11 Jan 2018 10:58:05 GMT): mahoney1 (Thu, 11 Jan 2018 10:58:05 GMT): mahoney1 (Thu, 11 Jan 2018 10:58:05 GMT): jaswanth (Thu, 11 Jan 2018 10:58:52 GMT): jaswanth (Thu, 11 Jan 2018 10:58:52 GMT): jaswanth (Thu, 11 Jan 2018 11:02:44 GMT): fogray (Thu, 11 Jan 2018 11:48:24 GMT): AkshayMisal (Thu, 11 Jan 2018 12:14:20 GMT): jaguarg (Thu, 11 Jan 2018 12:46:21 GMT): jaguarg (Thu, 11 Jan 2018 12:46:28 GMT): jaguarg (Thu, 11 Jan 2018 12:50:49 GMT): jaguarg (Thu, 11 Jan 2018 12:51:08 GMT): rthatcher (Thu, 11 Jan 2018 13:02:49 GMT): mahoney1 (Thu, 11 Jan 2018 13:17:46 GMT): Shravanpaul (Thu, 11 Jan 2018 14:03:15 GMT): ricardor (Thu, 11 Jan 2018 15:01:32 GMT): luminance (Thu, 11 Jan 2018 15:07:40 GMT): luminance (Thu, 11 Jan 2018 15:07:40 GMT): shurima (Thu, 11 Jan 2018 15:08:10 GMT): mahoney1 (Thu, 11 Jan 2018 15:14:50 GMT): shurima (Thu, 11 Jan 2018 15:15:36 GMT): gauthampamu (Thu, 11 Jan 2018 17:05:22 GMT): mahoney1 (Thu, 11 Jan 2018 17:34:11 GMT): vkblue (Fri, 12 Jan 2018 00:55:42 GMT): kipharris (Fri, 12 Jan 2018 01:50:53 GMT): kipharris (Fri, 12 Jan 2018 01:50:53 GMT): Moxy1683 (Fri, 12 Jan 2018 04:13:39 GMT): Moxy1683 (Fri, 12 Jan 2018 04:32:09 GMT): Moxy1683 (Fri, 12 Jan 2018 04:32:09 GMT): Moxy1683 (Fri, 12 Jan 2018 04:32:09 GMT): Moxy1683 (Fri, 12 Jan 2018 04:32:09 GMT): Moxy1683 (Fri, 12 Jan 2018 04:33:38 GMT): Moxy1683 (Fri, 12 Jan 2018 04:33:38 GMT): varun-raj (Fri, 12 Jan 2018 06:07:54 GMT): varun-raj (Fri, 12 Jan 2018 06:08:09 GMT): varun-raj (Fri, 12 Jan 2018 06:41:38 GMT): SudheerKaspa (Fri, 12 Jan 2018 06:44:53 GMT): rhansharief (Fri, 12 Jan 2018 08:04:31 GMT): prabvi01 (Fri, 12 Jan 2018 08:40:20 GMT): prabvi01 (Fri, 12 Jan 2018 08:40:50 GMT): prabvi01 (Fri, 12 Jan 2018 08:45:08 GMT): navdevl (Fri, 12 Jan 2018 08:45:32 GMT): navdevl (Fri, 12 Jan 2018 08:46:57 GMT): navdevl (Fri, 12 Jan 2018 08:48:42 GMT): rhansharief (Fri, 12 Jan 2018 09:01:22 GMT): prabvi01 (Fri, 12 Jan 2018 09:10:11 GMT): rthatcher (Fri, 12 Jan 2018 09:21:46 GMT): mahoney1 (Fri, 12 Jan 2018 09:36:25 GMT): mahoney1 (Fri, 12 Jan 2018 09:36:25 GMT): mahoney1 (Fri, 12 Jan 2018 09:52:24 GMT): mahoney1 (Fri, 12 Jan 2018 09:57:07 GMT): mahoney1 (Fri, 12 Jan 2018 10:09:36 GMT): rthatcher (Fri, 12 Jan 2018 10:16:13 GMT): varunagarwal (Fri, 12 Jan 2018 10:34:20 GMT): varunagarwal (Fri, 12 Jan 2018 10:44:53 GMT): mahoney1 (Fri, 12 Jan 2018 10:46:18 GMT): varunagarwal (Fri, 12 Jan 2018 10:47:01 GMT): varunagarwal (Fri, 12 Jan 2018 10:47:45 GMT): varunagarwal (Fri, 12 Jan 2018 10:48:07 GMT): varunagarwal (Fri, 12 Jan 2018 10:48:56 GMT): mahoney1 (Fri, 12 Jan 2018 11:02:10 GMT): varunagarwal (Fri, 12 Jan 2018 11:06:59 GMT): varunagarwal (Fri, 12 Jan 2018 11:07:54 GMT): kmohanar (Fri, 12 Jan 2018 11:34:09 GMT): mahoney1 (Fri, 12 Jan 2018 11:39:26 GMT): mahoney1 (Fri, 12 Jan 2018 11:39:26 GMT): kmohanar (Fri, 12 Jan 2018 11:52:43 GMT): kmohanar (Fri, 12 Jan 2018 11:52:43 GMT): jon_s (Fri, 12 Jan 2018 12:19:24 GMT): jon_s (Fri, 12 Jan 2018 12:19:33 GMT): jon_s (Fri, 12 Jan 2018 12:19:49 GMT): varunagarwal (Fri, 12 Jan 2018 12:24:01 GMT): varunagarwal (Fri, 12 Jan 2018 12:25:34 GMT): varunagarwal (Fri, 12 Jan 2018 12:26:25 GMT): jon_s (Fri, 12 Jan 2018 12:34:11 GMT): Sahar (Fri, 12 Jan 2018 13:21:31 GMT): Sahar (Fri, 12 Jan 2018 13:25:08 GMT): varunagarwal (Fri, 12 Jan 2018 13:45:09 GMT): varunagarwal (Fri, 12 Jan 2018 13:45:26 GMT): toddinpal (Fri, 12 Jan 2018 13:54:12 GMT): varunagarwal (Fri, 12 Jan 2018 13:57:11 GMT): mahoney1 (Fri, 12 Jan 2018 13:58:54 GMT): mahoney1 (Fri, 12 Jan 2018 13:58:54 GMT): mahoney1 (Fri, 12 Jan 2018 13:58:54 GMT): mahoney1 (Fri, 12 Jan 2018 13:58:54 GMT): toddinpal (Fri, 12 Jan 2018 14:02:05 GMT): toddinpal (Fri, 12 Jan 2018 14:03:04 GMT): varunagarwal (Fri, 12 Jan 2018 14:03:21 GMT): varunagarwal (Fri, 12 Jan 2018 14:07:16 GMT): varunagarwal (Fri, 12 Jan 2018 14:07:35 GMT): toddinpal (Fri, 12 Jan 2018 14:08:08 GMT): vkblue (Fri, 12 Jan 2018 14:10:01 GMT): varunagarwal (Fri, 12 Jan 2018 14:10:16 GMT): varunagarwal (Fri, 12 Jan 2018 14:11:08 GMT): CorentinPacaud (Fri, 12 Jan 2018 14:13:04 GMT): toddinpal (Fri, 12 Jan 2018 14:14:43 GMT): toddinpal (Fri, 12 Jan 2018 14:15:11 GMT): CorentinPacaud (Fri, 12 Jan 2018 14:15:23 GMT): varunagarwal (Fri, 12 Jan 2018 14:16:30 GMT): varunagarwal (Fri, 12 Jan 2018 14:16:33 GMT): toddinpal (Fri, 12 Jan 2018 14:17:29 GMT): varunagarwal (Fri, 12 Jan 2018 14:18:47 GMT): mahoney1 (Fri, 12 Jan 2018 14:19:10 GMT): mahoney1 (Fri, 12 Jan 2018 14:19:10 GMT): toddinpal (Fri, 12 Jan 2018 14:21:38 GMT): toddinpal (Fri, 12 Jan 2018 14:22:31 GMT): varunagarwal (Fri, 12 Jan 2018 14:22:51 GMT): varunagarwal (Fri, 12 Jan 2018 14:23:01 GMT): toddinpal (Fri, 12 Jan 2018 14:23:17 GMT): mahoney1 (Fri, 12 Jan 2018 14:28:34 GMT): mahoney1 (Fri, 12 Jan 2018 14:28:34 GMT): toddinpal (Fri, 12 Jan 2018 14:33:51 GMT): Sahar (Fri, 12 Jan 2018 14:34:49 GMT): varunagarwal (Fri, 12 Jan 2018 14:35:02 GMT): varunagarwal (Fri, 12 Jan 2018 14:35:36 GMT): varunagarwal (Fri, 12 Jan 2018 14:36:09 GMT): mahoney1 (Fri, 12 Jan 2018 14:36:15 GMT): toddinpal (Fri, 12 Jan 2018 14:37:13 GMT): toddinpal (Fri, 12 Jan 2018 14:44:47 GMT): gauthampamu (Fri, 12 Jan 2018 14:51:35 GMT): rthatcher (Fri, 12 Jan 2018 14:59:49 GMT): ricardor (Fri, 12 Jan 2018 15:11:46 GMT): varunagarwal (Fri, 12 Jan 2018 15:32:31 GMT): varunagarwal (Fri, 12 Jan 2018 15:32:40 GMT): varunagarwal (Fri, 12 Jan 2018 15:32:43 GMT): Moxy1683 (Fri, 12 Jan 2018 15:43:32 GMT): rthatcher (Fri, 12 Jan 2018 15:45:49 GMT): rthatcher (Fri, 12 Jan 2018 15:45:49 GMT): Moxy1683 (Fri, 12 Jan 2018 15:48:44 GMT): Moxy1683 (Fri, 12 Jan 2018 15:48:44 GMT): Moxy1683 (Fri, 12 Jan 2018 15:49:41 GMT): Moxy1683 (Fri, 12 Jan 2018 15:49:41 GMT): jasoncys (Fri, 12 Jan 2018 15:49:42 GMT): rthatcher (Fri, 12 Jan 2018 16:11:17 GMT): ajayvuyyuru (Fri, 12 Jan 2018 16:11:34 GMT): ajayvuyyuru (Fri, 12 Jan 2018 16:11:45 GMT): ajayvuyyuru (Fri, 12 Jan 2018 16:11:45 GMT): rthatcher (Fri, 12 Jan 2018 16:18:28 GMT): ajayvuyyuru (Fri, 12 Jan 2018 16:19:33 GMT): rthatcher (Fri, 12 Jan 2018 16:27:39 GMT): ajayvuyyuru (Fri, 12 Jan 2018 16:28:58 GMT): ajayvuyyuru (Fri, 12 Jan 2018 16:28:58 GMT): ajayvuyyuru (Fri, 12 Jan 2018 16:31:41 GMT): mahoney1 (Fri, 12 Jan 2018 16:32:41 GMT): Moxy1683 (Fri, 12 Jan 2018 16:33:25 GMT): mahoney1 (Fri, 12 Jan 2018 16:36:34 GMT): mahoney1 (Fri, 12 Jan 2018 16:36:34 GMT): ajayvuyyuru (Fri, 12 Jan 2018 16:36:58 GMT): rthatcher (Fri, 12 Jan 2018 16:40:38 GMT): gauthampamu (Fri, 12 Jan 2018 16:46:37 GMT): gauthampamu (Fri, 12 Jan 2018 16:46:37 GMT): Moxy1683 (Fri, 12 Jan 2018 16:46:59 GMT): rthatcher (Fri, 12 Jan 2018 16:49:50 GMT): rthatcher (Fri, 12 Jan 2018 16:52:57 GMT): Moxy1683 (Fri, 12 Jan 2018 17:03:08 GMT): Moxy1683 (Fri, 12 Jan 2018 17:03:22 GMT): mahoney1 (Fri, 12 Jan 2018 17:35:31 GMT): Moxy1683 (Fri, 12 Jan 2018 17:50:08 GMT): lucasdf (Fri, 12 Jan 2018 18:58:01 GMT): lucasdf (Fri, 12 Jan 2018 18:58:01 GMT): lucasdf (Fri, 12 Jan 2018 19:52:06 GMT): silliman (Fri, 12 Jan 2018 20:29:00 GMT): jasoncys (Sat, 13 Jan 2018 02:17:06 GMT): lucasdf (Sat, 13 Jan 2018 02:28:27 GMT): lucasdf (Sat, 13 Jan 2018 02:28:27 GMT): praveentalari (Sat, 13 Jan 2018 07:11:37 GMT): SamuelDare (Sat, 13 Jan 2018 10:28:21 GMT): sudheesh001 (Sat, 13 Jan 2018 11:55:39 GMT): jasoncys (Sat, 13 Jan 2018 12:16:22 GMT): jasoncys (Sat, 13 Jan 2018 12:18:25 GMT): jasoncys (Sat, 13 Jan 2018 12:19:05 GMT): davidkel (Sat, 13 Jan 2018 14:03:23 GMT): davidkel (Sat, 13 Jan 2018 14:03:23 GMT): silliman (Sat, 13 Jan 2018 15:58:25 GMT): BalajiSR (Sun, 14 Jan 2018 00:17:56 GMT): BalajiSR (Sun, 14 Jan 2018 00:19:34 GMT): BalajiSR (Sun, 14 Jan 2018 00:19:51 GMT): brentophillips (Sun, 14 Jan 2018 00:39:54 GMT): nasserfci (Sun, 14 Jan 2018 13:48:53 GMT): rbole (Sun, 14 Jan 2018 14:49:40 GMT): rbole (Sun, 14 Jan 2018 14:51:13 GMT): BalajiSR (Sun, 14 Jan 2018 22:57:24 GMT): BalajiSR (Sun, 14 Jan 2018 23:02:26 GMT): MuhammadSalah (Sun, 14 Jan 2018 23:08:17 GMT): MuhammadSalah (Sun, 14 Jan 2018 23:08:36 GMT): MuhammadSalah (Sun, 14 Jan 2018 23:09:07 GMT): MuhammadSalah (Sun, 14 Jan 2018 23:10:49 GMT): MuhammadSalah (Sun, 14 Jan 2018 23:11:43 GMT): MuhammadSalah (Sun, 14 Jan 2018 23:13:20 GMT): MuhammadSalah (Sun, 14 Jan 2018 23:35:32 GMT): MuhammadSalah (Sun, 14 Jan 2018 23:36:34 GMT): MuhammadSalah (Sun, 14 Jan 2018 23:36:40 GMT): MuhammadSalah (Sun, 14 Jan 2018 23:36:55 GMT): MuhammadSalah (Sun, 14 Jan 2018 23:37:21 GMT): MuhammadSalah (Sun, 14 Jan 2018 23:38:53 GMT): MuhammadSalah (Sun, 14 Jan 2018 23:39:15 GMT): Moxy1683 (Mon, 15 Jan 2018 01:59:32 GMT): Moxy1683 (Mon, 15 Jan 2018 01:59:32 GMT): Moxy1683 (Mon, 15 Jan 2018 01:59:32 GMT): MuhammadSalah (Mon, 15 Jan 2018 02:43:48 GMT): MuhammadSalah (Mon, 15 Jan 2018 02:44:09 GMT): MuhammadSalah (Mon, 15 Jan 2018 02:44:37 GMT): MuhammadSalah (Mon, 15 Jan 2018 02:44:44 GMT): BalajiSR (Mon, 15 Jan 2018 06:56:35 GMT): BalajiSR (Mon, 15 Jan 2018 06:59:06 GMT): MuhammadSalah (Mon, 15 Jan 2018 07:34:03 GMT): rhansharief (Mon, 15 Jan 2018 08:25:12 GMT): BalajiSR (Mon, 15 Jan 2018 09:21:11 GMT): a.ochs (Mon, 15 Jan 2018 09:44:36 GMT): a.ochs (Mon, 15 Jan 2018 09:44:45 GMT): a.ochs (Mon, 15 Jan 2018 09:47:10 GMT): jasoncys (Mon, 15 Jan 2018 10:00:50 GMT): kassymkhanTJ (Mon, 15 Jan 2018 10:14:25 GMT): mahoney1 (Mon, 15 Jan 2018 10:18:23 GMT): mahoney1 (Mon, 15 Jan 2018 10:22:37 GMT): vurumadla (Mon, 15 Jan 2018 10:26:13 GMT): vurumadla (Mon, 15 Jan 2018 10:26:25 GMT): mahoney1 (Mon, 15 Jan 2018 10:47:26 GMT): mahoney1 (Mon, 15 Jan 2018 11:07:02 GMT): mahoney1 (Mon, 15 Jan 2018 11:07:02 GMT): mahoney1 (Mon, 15 Jan 2018 11:14:47 GMT): mahoney1 (Mon, 15 Jan 2018 11:14:47 GMT): mahoney1 (Mon, 15 Jan 2018 11:28:04 GMT): mahoney1 (Mon, 15 Jan 2018 12:01:26 GMT): mahoney1 (Mon, 15 Jan 2018 12:01:26 GMT): mahoney1 (Mon, 15 Jan 2018 12:01:26 GMT): BalajiSR (Mon, 15 Jan 2018 12:08:42 GMT): BalajiSR (Mon, 15 Jan 2018 12:11:08 GMT): IssaAmit (Mon, 15 Jan 2018 13:19:11 GMT): julian (Mon, 15 Jan 2018 13:19:48 GMT): SergeySadon (Mon, 15 Jan 2018 13:21:59 GMT): markowusu-ansah (Mon, 15 Jan 2018 13:55:28 GMT): CorentinPacaud (Mon, 15 Jan 2018 14:28:41 GMT): CorentinPacaud (Mon, 15 Jan 2018 14:28:41 GMT): mahoney1 (Mon, 15 Jan 2018 14:39:33 GMT): CorentinPacaud (Mon, 15 Jan 2018 14:45:36 GMT): CorentinPacaud (Mon, 15 Jan 2018 14:45:36 GMT): mahoney1 (Mon, 15 Jan 2018 14:45:59 GMT): mahoney1 (Mon, 15 Jan 2018 14:45:59 GMT): mahoney1 (Mon, 15 Jan 2018 14:51:13 GMT): CorentinPacaud (Mon, 15 Jan 2018 14:54:09 GMT): CorentinPacaud (Mon, 15 Jan 2018 14:54:40 GMT): mahoney1 (Mon, 15 Jan 2018 15:19:06 GMT): CorentinPacaud (Mon, 15 Jan 2018 15:21:08 GMT): CorentinPacaud (Mon, 15 Jan 2018 15:21:08 GMT): CorentinPacaud (Mon, 15 Jan 2018 15:21:08 GMT): CorentinPacaud (Mon, 15 Jan 2018 15:27:27 GMT): CorentinPacaud (Mon, 15 Jan 2018 15:27:54 GMT): CorentinPacaud (Mon, 15 Jan 2018 15:28:14 GMT): mahoney1 (Mon, 15 Jan 2018 15:36:57 GMT): mahoney1 (Mon, 15 Jan 2018 15:36:57 GMT): CorentinPacaud (Mon, 15 Jan 2018 15:38:03 GMT): jon_s (Mon, 15 Jan 2018 16:03:38 GMT): rhtgoyal (Mon, 15 Jan 2018 16:34:20 GMT): mahoney1 (Mon, 15 Jan 2018 16:34:38 GMT): jon_s (Mon, 15 Jan 2018 16:40:04 GMT): jon_s (Mon, 15 Jan 2018 16:47:00 GMT): jon_s (Mon, 15 Jan 2018 16:47:11 GMT): mahoney1 (Mon, 15 Jan 2018 16:52:39 GMT): mahoney1 (Mon, 15 Jan 2018 17:44:05 GMT): mahoney1 (Mon, 15 Jan 2018 17:44:05 GMT): mahoney1 (Mon, 15 Jan 2018 17:44:05 GMT): mvaibhavshah (Mon, 15 Jan 2018 18:30:25 GMT): mvaibhavshah (Mon, 15 Jan 2018 18:30:38 GMT): gregnotso (Mon, 15 Jan 2018 19:13:23 GMT): rthatcher (Mon, 15 Jan 2018 19:21:16 GMT): BrianV 3 (Mon, 15 Jan 2018 20:33:36 GMT): BrianV 3 (Mon, 15 Jan 2018 20:35:45 GMT): njassani0704 (Mon, 15 Jan 2018 20:55:11 GMT): njassani0704 (Mon, 15 Jan 2018 20:55:22 GMT): BrianV 3 (Mon, 15 Jan 2018 21:51:38 GMT): silliman (Mon, 15 Jan 2018 22:08:34 GMT): rthatcher (Mon, 15 Jan 2018 22:09:16 GMT): BrianV 3 (Mon, 15 Jan 2018 23:57:37 GMT): BrianV 3 (Mon, 15 Jan 2018 23:57:48 GMT): macsilber (Tue, 16 Jan 2018 01:36:49 GMT): olrraju (Tue, 16 Jan 2018 01:53:05 GMT): hounded (Tue, 16 Jan 2018 02:16:41 GMT): hounded (Tue, 16 Jan 2018 02:16:52 GMT): hounded (Tue, 16 Jan 2018 02:17:05 GMT): hounded (Tue, 16 Jan 2018 03:27:32 GMT): hounded (Tue, 16 Jan 2018 03:28:15 GMT): rhansharief (Tue, 16 Jan 2018 03:35:57 GMT): rhansharief (Tue, 16 Jan 2018 04:05:16 GMT): jon_s (Tue, 16 Jan 2018 04:43:01 GMT): jon_s (Tue, 16 Jan 2018 04:43:17 GMT): varun-raj (Tue, 16 Jan 2018 05:50:27 GMT): mvaibhavshah (Tue, 16 Jan 2018 06:31:42 GMT): mvaibhavshah (Tue, 16 Jan 2018 06:31:58 GMT): mvaibhavshah (Tue, 16 Jan 2018 06:33:13 GMT): varun-raj (Tue, 16 Jan 2018 06:34:14 GMT): mvaibhavshah (Tue, 16 Jan 2018 06:45:45 GMT): Pere-Calopa (Tue, 16 Jan 2018 08:07:46 GMT): nippleDonkey (Tue, 16 Jan 2018 08:36:46 GMT): varun-raj (Tue, 16 Jan 2018 08:54:42 GMT): davidkel (Tue, 16 Jan 2018 09:00:09 GMT): prabvi01 (Tue, 16 Jan 2018 09:01:23 GMT): nippleDonkey (Tue, 16 Jan 2018 09:02:34 GMT): davidkel (Tue, 16 Jan 2018 09:08:56 GMT): nippleDonkey (Tue, 16 Jan 2018 09:12:35 GMT): rthatcher (Tue, 16 Jan 2018 09:20:40 GMT): pschwarz (Tue, 16 Jan 2018 09:20:40 GMT): mvaibhavshah (Tue, 16 Jan 2018 09:23:42 GMT): mvaibhavshah (Tue, 16 Jan 2018 09:23:59 GMT): sebastian.paul (Tue, 16 Jan 2018 09:24:29 GMT): SimonOberzan (Tue, 16 Jan 2018 09:25:14 GMT): SimonOberzan (Tue, 16 Jan 2018 09:25:14 GMT): SimonOberzan (Tue, 16 Jan 2018 09:25:14 GMT): davidkel (Tue, 16 Jan 2018 09:26:34 GMT): nippleDonkey (Tue, 16 Jan 2018 09:28:38 GMT): davidkel (Tue, 16 Jan 2018 09:32:31 GMT): sebastian.paul (Tue, 16 Jan 2018 09:33:51 GMT): davidkel (Tue, 16 Jan 2018 09:34:48 GMT): nippleDonkey (Tue, 16 Jan 2018 09:35:14 GMT): SimonOberzan (Tue, 16 Jan 2018 09:35:17 GMT): mvaibhavshah (Tue, 16 Jan 2018 09:36:58 GMT): mvaibhavshah (Tue, 16 Jan 2018 09:36:59 GMT): mvaibhavshah (Tue, 16 Jan 2018 09:37:46 GMT): davidkel (Tue, 16 Jan 2018 09:39:08 GMT): SimonOberzan (Tue, 16 Jan 2018 09:56:04 GMT): SimonOberzan (Tue, 16 Jan 2018 09:56:04 GMT): SimonOberzan (Tue, 16 Jan 2018 10:09:31 GMT): davidkel (Tue, 16 Jan 2018 10:40:03 GMT): davidkel (Tue, 16 Jan 2018 10:46:06 GMT): mvaibhavshah (Tue, 16 Jan 2018 10:46:49 GMT): mvaibhavshah (Tue, 16 Jan 2018 10:47:09 GMT): mvaibhavshah (Tue, 16 Jan 2018 10:47:21 GMT): mvaibhavshah (Tue, 16 Jan 2018 10:47:40 GMT): IssaAmit (Tue, 16 Jan 2018 11:13:38 GMT): IssaAmit (Tue, 16 Jan 2018 11:13:38 GMT): IssaAmit (Tue, 16 Jan 2018 11:13:38 GMT): IssaAmit (Tue, 16 Jan 2018 11:13:38 GMT): varunagarwal (Tue, 16 Jan 2018 11:19:17 GMT): varunagarwal (Tue, 16 Jan 2018 11:20:10 GMT): Laxminarayana (Tue, 16 Jan 2018 11:20:13 GMT): davidkel (Tue, 16 Jan 2018 11:47:29 GMT): davidkel (Tue, 16 Jan 2018 11:51:01 GMT): argman (Tue, 16 Jan 2018 12:02:33 GMT): argman (Tue, 16 Jan 2018 12:03:18 GMT): davidkel (Tue, 16 Jan 2018 12:26:37 GMT): vkblue (Tue, 16 Jan 2018 13:12:59 GMT): chrisg (Tue, 16 Jan 2018 14:27:57 GMT): chrisg (Tue, 16 Jan 2018 14:27:57 GMT): SimonOberzan (Tue, 16 Jan 2018 14:38:01 GMT): SimonOberzan (Tue, 16 Jan 2018 14:38:01 GMT): SimonOberzan (Tue, 16 Jan 2018 14:38:01 GMT): SimonOberzan (Tue, 16 Jan 2018 14:38:01 GMT): SimonOberzan (Tue, 16 Jan 2018 14:38:01 GMT): davidkel (Tue, 16 Jan 2018 15:14:12 GMT): SimonOberzan (Tue, 16 Jan 2018 15:14:39 GMT): davidkel (Tue, 16 Jan 2018 15:18:54 GMT): SimonOberzan (Tue, 16 Jan 2018 15:19:37 GMT): SimonOberzan (Tue, 16 Jan 2018 15:20:50 GMT): SimonOberzan (Tue, 16 Jan 2018 15:20:50 GMT): davidkel (Tue, 16 Jan 2018 15:21:52 GMT): SimonOberzan (Tue, 16 Jan 2018 15:22:04 GMT): SimonOberzan (Tue, 16 Jan 2018 15:22:04 GMT): SimonOberzan (Tue, 16 Jan 2018 15:22:28 GMT): SimonOberzan (Tue, 16 Jan 2018 15:22:28 GMT): davidkel (Tue, 16 Jan 2018 15:23:03 GMT): davidkel (Tue, 16 Jan 2018 15:24:24 GMT): SimonOberzan (Tue, 16 Jan 2018 15:24:29 GMT): davidkel (Tue, 16 Jan 2018 15:25:59 GMT): SimonOberzan (Tue, 16 Jan 2018 15:28:07 GMT): davidkel (Tue, 16 Jan 2018 15:29:02 GMT): SimonOberzan (Tue, 16 Jan 2018 15:31:00 GMT): AkshayJindal (Tue, 16 Jan 2018 17:17:36 GMT): mahoney1 (Tue, 16 Jan 2018 17:51:37 GMT): mahoney1 (Tue, 16 Jan 2018 17:51:37 GMT): mahoney1 (Tue, 16 Jan 2018 17:51:37 GMT): njassani0704 (Tue, 16 Jan 2018 18:26:59 GMT): njassani0704 (Tue, 16 Jan 2018 18:29:05 GMT): njassani0704 (Tue, 16 Jan 2018 18:29:56 GMT): mvaibhavshah (Tue, 16 Jan 2018 18:50:19 GMT): mvaibhavshah (Tue, 16 Jan 2018 18:50:28 GMT): mvaibhavshah (Tue, 16 Jan 2018 18:51:27 GMT): davidkel (Tue, 16 Jan 2018 20:10:19 GMT): mvaibhavshah (Tue, 16 Jan 2018 20:15:02 GMT): mvaibhavshah (Tue, 16 Jan 2018 20:15:51 GMT): davidkel (Tue, 16 Jan 2018 20:21:20 GMT): mvaibhavshah (Tue, 16 Jan 2018 20:22:18 GMT): mvaibhavshah (Tue, 16 Jan 2018 20:23:10 GMT): davidkel (Tue, 16 Jan 2018 20:24:45 GMT): mvaibhavshah (Tue, 16 Jan 2018 20:26:14 GMT): davidkel (Tue, 16 Jan 2018 20:27:25 GMT): davidkel (Tue, 16 Jan 2018 20:27:37 GMT): mvaibhavshah (Tue, 16 Jan 2018 20:28:38 GMT): davidkel (Tue, 16 Jan 2018 20:29:03 GMT): mvaibhavshah (Tue, 16 Jan 2018 20:31:24 GMT): davidkel (Tue, 16 Jan 2018 20:34:54 GMT): mvaibhavshah (Tue, 16 Jan 2018 20:38:00 GMT): davidkel (Tue, 16 Jan 2018 20:41:28 GMT): davidkel (Tue, 16 Jan 2018 20:42:59 GMT): CaryMa (Tue, 16 Jan 2018 21:06:25 GMT): vikascjadhav (Tue, 16 Jan 2018 22:06:50 GMT): Moxy1683 (Wed, 17 Jan 2018 02:40:51 GMT): underlabs (Wed, 17 Jan 2018 05:39:22 GMT): rahulkannur (Wed, 17 Jan 2018 06:06:27 GMT): kmohanar (Wed, 17 Jan 2018 06:16:58 GMT): kmohanar (Wed, 17 Jan 2018 06:16:58 GMT): SudheerKaspa (Wed, 17 Jan 2018 06:17:19 GMT): rahulkannur (Wed, 17 Jan 2018 06:19:05 GMT): SudheerKaspa (Wed, 17 Jan 2018 06:25:58 GMT): rahulkannur (Wed, 17 Jan 2018 06:30:40 GMT): SudheerKaspa (Wed, 17 Jan 2018 06:32:50 GMT): SudheerKaspa (Wed, 17 Jan 2018 06:33:44 GMT): rahulkannur (Wed, 17 Jan 2018 06:36:34 GMT): navdevl (Wed, 17 Jan 2018 07:37:51 GMT): CorentinPacaud (Wed, 17 Jan 2018 08:26:34 GMT): crj (Wed, 17 Jan 2018 08:59:24 GMT): rthatcher (Wed, 17 Jan 2018 09:58:00 GMT): CorentinPacaud (Wed, 17 Jan 2018 10:04:08 GMT): CorentinPacaud (Wed, 17 Jan 2018 10:04:08 GMT): vsadriano (Wed, 17 Jan 2018 10:05:13 GMT): varunagarwal (Wed, 17 Jan 2018 10:07:45 GMT): varunagarwal (Wed, 17 Jan 2018 10:07:51 GMT): rthatcher (Wed, 17 Jan 2018 10:09:31 GMT): CorentinPacaud (Wed, 17 Jan 2018 10:11:08 GMT): varunagarwal (Wed, 17 Jan 2018 10:11:59 GMT): rthatcher (Wed, 17 Jan 2018 10:13:17 GMT): varunagarwal (Wed, 17 Jan 2018 10:14:00 GMT): varunagarwal (Wed, 17 Jan 2018 10:14:03 GMT): rthatcher (Wed, 17 Jan 2018 10:20:15 GMT): rthatcher (Wed, 17 Jan 2018 10:23:23 GMT): varunagarwal (Wed, 17 Jan 2018 10:23:40 GMT): varunagarwal (Wed, 17 Jan 2018 10:24:04 GMT): rthatcher (Wed, 17 Jan 2018 10:24:28 GMT): varunagarwal (Wed, 17 Jan 2018 10:24:33 GMT): varunagarwal (Wed, 17 Jan 2018 10:24:38 GMT): rthatcher (Wed, 17 Jan 2018 10:25:41 GMT): uber.twin (Wed, 17 Jan 2018 10:25:52 GMT): varunagarwal (Wed, 17 Jan 2018 10:25:56 GMT): varunagarwal (Wed, 17 Jan 2018 10:32:37 GMT): varun-raj (Wed, 17 Jan 2018 10:34:50 GMT): rthatcher (Wed, 17 Jan 2018 10:35:50 GMT): IssaAmit (Wed, 17 Jan 2018 10:37:33 GMT): IssaAmit (Wed, 17 Jan 2018 10:37:33 GMT): IssaAmit (Wed, 17 Jan 2018 10:37:33 GMT): IssaAmit (Wed, 17 Jan 2018 10:37:33 GMT): IssaAmit (Wed, 17 Jan 2018 10:39:33 GMT): rthatcher (Wed, 17 Jan 2018 10:44:42 GMT): varun-raj (Wed, 17 Jan 2018 10:46:40 GMT): uber.twin (Wed, 17 Jan 2018 10:50:24 GMT): uber.twin (Wed, 17 Jan 2018 10:50:24 GMT): wininani (Wed, 17 Jan 2018 10:57:25 GMT): wininani (Wed, 17 Jan 2018 10:57:39 GMT): vsadriano (Wed, 17 Jan 2018 10:57:49 GMT): davidkel (Wed, 17 Jan 2018 10:58:55 GMT): davidkel (Wed, 17 Jan 2018 11:02:18 GMT): mahoney1 (Wed, 17 Jan 2018 11:04:27 GMT): wininani (Wed, 17 Jan 2018 11:10:21 GMT): mahoney1 (Wed, 17 Jan 2018 11:12:13 GMT): uber.twin (Wed, 17 Jan 2018 11:26:02 GMT): davidkel (Wed, 17 Jan 2018 11:32:44 GMT): wininani (Wed, 17 Jan 2018 11:36:14 GMT): mahoney1 (Wed, 17 Jan 2018 11:50:30 GMT): mahoney1 (Wed, 17 Jan 2018 11:50:30 GMT): mahoney1 (Wed, 17 Jan 2018 11:50:30 GMT): sachikoy (Wed, 17 Jan 2018 11:57:19 GMT): kassymkhanTJ (Wed, 17 Jan 2018 12:04:00 GMT): kassymkhanTJ (Wed, 17 Jan 2018 12:05:58 GMT): mahoney1 (Wed, 17 Jan 2018 13:16:32 GMT): mahoney1 (Wed, 17 Jan 2018 13:19:50 GMT): rthatcher (Wed, 17 Jan 2018 13:22:30 GMT): mahoney1 (Wed, 17 Jan 2018 13:26:21 GMT): mahoney1 (Wed, 17 Jan 2018 13:26:21 GMT): wininani (Wed, 17 Jan 2018 13:52:03 GMT): IssaAmit (Wed, 17 Jan 2018 14:07:42 GMT): mahoney1 (Wed, 17 Jan 2018 14:28:29 GMT): mahoney1 (Wed, 17 Jan 2018 14:28:29 GMT): mahoney1 (Wed, 17 Jan 2018 14:28:29 GMT): mahoney1 (Wed, 17 Jan 2018 14:28:29 GMT): mahoney1 (Wed, 17 Jan 2018 14:28:29 GMT): mahoney1 (Wed, 17 Jan 2018 14:28:29 GMT): mahoney1 (Wed, 17 Jan 2018 14:28:29 GMT): mahoney1 (Wed, 17 Jan 2018 14:28:29 GMT): mahoney1 (Wed, 17 Jan 2018 14:28:29 GMT): SimonOberzan (Wed, 17 Jan 2018 14:45:12 GMT): SimonOberzan (Wed, 17 Jan 2018 14:45:12 GMT): SimonOberzan (Wed, 17 Jan 2018 14:45:12 GMT): SimonOberzan (Wed, 17 Jan 2018 14:45:12 GMT): mauricio (Wed, 17 Jan 2018 14:53:06 GMT): mahoney1 (Wed, 17 Jan 2018 15:07:45 GMT): nasserfci (Wed, 17 Jan 2018 15:10:05 GMT): nasserfci (Wed, 17 Jan 2018 15:10:05 GMT): SimonOberzan (Wed, 17 Jan 2018 15:16:45 GMT): SimonOberzan (Wed, 17 Jan 2018 15:16:45 GMT): SimonOberzan (Wed, 17 Jan 2018 15:16:45 GMT): SimonOberzan (Wed, 17 Jan 2018 15:16:45 GMT): SimonOberzan (Wed, 17 Jan 2018 15:16:45 GMT): SimonOberzan (Wed, 17 Jan 2018 15:16:45 GMT): mahoney1 (Wed, 17 Jan 2018 15:18:15 GMT): mahoney1 (Wed, 17 Jan 2018 15:18:15 GMT): mahoney1 (Wed, 17 Jan 2018 15:18:15 GMT): SimonOberzan (Wed, 17 Jan 2018 15:19:33 GMT): SimonOberzan (Wed, 17 Jan 2018 15:19:45 GMT): SimonOberzan (Wed, 17 Jan 2018 15:20:15 GMT): mahoney1 (Wed, 17 Jan 2018 15:21:04 GMT): nasserfci (Wed, 17 Jan 2018 15:26:11 GMT): mahoney1 (Wed, 17 Jan 2018 15:36:55 GMT): SimonOberzan (Wed, 17 Jan 2018 15:39:26 GMT): simonmullaney (Wed, 17 Jan 2018 15:44:06 GMT): nasserfci (Wed, 17 Jan 2018 15:48:30 GMT): nasserfci (Wed, 17 Jan 2018 15:48:30 GMT): simonmullaney (Wed, 17 Jan 2018 15:49:00 GMT): simonmullaney (Wed, 17 Jan 2018 15:49:00 GMT): simonmullaney (Wed, 17 Jan 2018 15:49:00 GMT): davidkel (Wed, 17 Jan 2018 15:50:44 GMT): SimonOberzan (Wed, 17 Jan 2018 15:59:46 GMT): mahoney1 (Wed, 17 Jan 2018 16:00:33 GMT): davidkel (Wed, 17 Jan 2018 16:18:06 GMT): davidkel (Wed, 17 Jan 2018 16:19:03 GMT): davidkel (Wed, 17 Jan 2018 16:19:29 GMT): SimonOberzan (Wed, 17 Jan 2018 16:21:18 GMT): SimonOberzan (Wed, 17 Jan 2018 16:21:18 GMT): SimonOberzan (Wed, 17 Jan 2018 16:21:18 GMT): SimonOberzan (Wed, 17 Jan 2018 16:21:18 GMT): AshishMishra 1 (Wed, 17 Jan 2018 16:53:54 GMT): lucasdf (Wed, 17 Jan 2018 17:45:12 GMT): lucasdf (Wed, 17 Jan 2018 17:46:16 GMT): simonmullaney (Wed, 17 Jan 2018 17:54:02 GMT): lucasdf (Wed, 17 Jan 2018 17:58:04 GMT): simonmullaney (Wed, 17 Jan 2018 17:58:45 GMT): mahoney1 (Wed, 17 Jan 2018 18:04:20 GMT): mvaibhavshah (Wed, 17 Jan 2018 18:14:11 GMT): mvaibhavshah (Wed, 17 Jan 2018 18:14:13 GMT): mahoney1 (Wed, 17 Jan 2018 18:14:46 GMT): mahoney1 (Wed, 17 Jan 2018 18:14:46 GMT): lucasdf (Wed, 17 Jan 2018 18:15:22 GMT): davidkel (Wed, 17 Jan 2018 18:37:47 GMT): davidkel (Wed, 17 Jan 2018 18:37:47 GMT): mvaibhavshah (Wed, 17 Jan 2018 18:45:42 GMT): vkblue (Wed, 17 Jan 2018 19:22:59 GMT): mvaibhavshah (Wed, 17 Jan 2018 19:29:02 GMT): mvaibhavshah (Wed, 17 Jan 2018 19:29:15 GMT): PhilipeLouchtch (Wed, 17 Jan 2018 19:48:43 GMT): PhilipeLouchtch (Wed, 17 Jan 2018 19:50:04 GMT): lucasdf (Wed, 17 Jan 2018 20:18:02 GMT): PhilipeLouchtch (Wed, 17 Jan 2018 20:49:00 GMT): PhilipeLouchtch (Wed, 17 Jan 2018 20:49:17 GMT): PhilipeLouchtch (Wed, 17 Jan 2018 20:49:36 GMT): PhilipeLouchtch (Wed, 17 Jan 2018 20:49:36 GMT): CT123 (Wed, 17 Jan 2018 20:50:23 GMT): erikpupo (Wed, 17 Jan 2018 23:17:36 GMT): AshishMishra 1 (Thu, 18 Jan 2018 01:38:11 GMT): kassymkhanTJ (Thu, 18 Jan 2018 01:59:59 GMT): rahulkannur (Thu, 18 Jan 2018 05:19:22 GMT): suryasuresh06 (Thu, 18 Jan 2018 05:54:40 GMT): IssaAmit (Thu, 18 Jan 2018 06:17:22 GMT): navdevl (Thu, 18 Jan 2018 06:43:35 GMT): mvaibhavshah (Thu, 18 Jan 2018 06:49:57 GMT): navdevl (Thu, 18 Jan 2018 06:53:30 GMT): navdevl (Thu, 18 Jan 2018 06:53:30 GMT): ebullientdrift (Thu, 18 Jan 2018 07:11:58 GMT): yositeru (Thu, 18 Jan 2018 07:12:41 GMT): Abhi119 (Thu, 18 Jan 2018 07:31:34 GMT): Abhi119 (Thu, 18 Jan 2018 07:33:26 GMT): navdevl (Thu, 18 Jan 2018 07:44:42 GMT): Abhi119 (Thu, 18 Jan 2018 07:51:37 GMT): Abhi119 (Thu, 18 Jan 2018 07:51:56 GMT): Aniket-Engg (Thu, 18 Jan 2018 08:06:43 GMT): Aniket-Engg (Thu, 18 Jan 2018 08:06:54 GMT): Aniket-Engg (Thu, 18 Jan 2018 08:07:11 GMT): Aniket-Engg (Thu, 18 Jan 2018 08:26:36 GMT): varunagarwal (Thu, 18 Jan 2018 08:33:40 GMT): navdevl (Thu, 18 Jan 2018 08:33:45 GMT): varunagarwal (Thu, 18 Jan 2018 08:33:51 GMT): varun-raj (Thu, 18 Jan 2018 08:35:16 GMT): varunagarwal (Thu, 18 Jan 2018 08:35:24 GMT): varunagarwal (Thu, 18 Jan 2018 08:36:08 GMT): varun-raj (Thu, 18 Jan 2018 08:38:48 GMT): varunagarwal (Thu, 18 Jan 2018 08:39:46 GMT): varun-raj (Thu, 18 Jan 2018 08:40:01 GMT): varun-raj (Thu, 18 Jan 2018 08:40:14 GMT): varunagarwal (Thu, 18 Jan 2018 08:40:24 GMT): varunagarwal (Thu, 18 Jan 2018 08:40:52 GMT): varun-raj (Thu, 18 Jan 2018 08:41:34 GMT): varunagarwal (Thu, 18 Jan 2018 08:41:39 GMT): varun-raj (Thu, 18 Jan 2018 08:41:42 GMT): varunagarwal (Thu, 18 Jan 2018 08:41:53 GMT): varunagarwal (Thu, 18 Jan 2018 08:42:09 GMT): varun-raj (Thu, 18 Jan 2018 08:42:12 GMT): varun-raj (Thu, 18 Jan 2018 08:42:18 GMT): varunagarwal (Thu, 18 Jan 2018 08:42:22 GMT): varun-raj (Thu, 18 Jan 2018 08:42:36 GMT): varunagarwal (Thu, 18 Jan 2018 08:43:09 GMT): varun-raj (Thu, 18 Jan 2018 08:43:37 GMT): varun-raj (Thu, 18 Jan 2018 08:44:26 GMT): varunagarwal (Thu, 18 Jan 2018 08:44:39 GMT): varunagarwal (Thu, 18 Jan 2018 08:45:19 GMT): varunagarwal (Thu, 18 Jan 2018 08:45:45 GMT): varunagarwal (Thu, 18 Jan 2018 08:46:14 GMT): varun-raj (Thu, 18 Jan 2018 08:46:19 GMT): varunagarwal (Thu, 18 Jan 2018 08:46:20 GMT): varun-raj (Thu, 18 Jan 2018 08:46:28 GMT): varun-raj (Thu, 18 Jan 2018 08:46:39 GMT): varunagarwal (Thu, 18 Jan 2018 08:47:12 GMT): varunagarwal (Thu, 18 Jan 2018 08:47:15 GMT): varun-raj (Thu, 18 Jan 2018 08:47:44 GMT): varun-raj (Thu, 18 Jan 2018 08:48:13 GMT): varunagarwal (Thu, 18 Jan 2018 08:48:35 GMT): varun-raj (Thu, 18 Jan 2018 08:49:05 GMT): varunagarwal (Thu, 18 Jan 2018 08:49:35 GMT): varun-raj (Thu, 18 Jan 2018 08:50:01 GMT): varunagarwal (Thu, 18 Jan 2018 08:50:14 GMT): varunagarwal (Thu, 18 Jan 2018 08:50:42 GMT): varunagarwal (Thu, 18 Jan 2018 08:51:22 GMT): varun-raj (Thu, 18 Jan 2018 08:52:19 GMT): varunagarwal (Thu, 18 Jan 2018 08:52:27 GMT): varunagarwal (Thu, 18 Jan 2018 08:53:22 GMT): varunagarwal (Thu, 18 Jan 2018 08:53:58 GMT): varun-raj (Thu, 18 Jan 2018 08:54:36 GMT): varun-raj (Thu, 18 Jan 2018 08:55:02 GMT): varunagarwal (Thu, 18 Jan 2018 08:58:24 GMT): varun-raj (Thu, 18 Jan 2018 09:00:13 GMT): varunagarwal (Thu, 18 Jan 2018 09:02:48 GMT): varun-raj (Thu, 18 Jan 2018 09:04:32 GMT): varun-raj (Thu, 18 Jan 2018 09:05:17 GMT): varunagarwal (Thu, 18 Jan 2018 09:06:07 GMT): varun-raj (Thu, 18 Jan 2018 09:07:01 GMT): varun-raj (Thu, 18 Jan 2018 09:07:23 GMT): varun-raj (Thu, 18 Jan 2018 09:07:45 GMT): varunagarwal (Thu, 18 Jan 2018 09:07:58 GMT): varunagarwal (Thu, 18 Jan 2018 09:08:28 GMT): varun-raj (Thu, 18 Jan 2018 09:08:54 GMT): varunagarwal (Thu, 18 Jan 2018 09:09:34 GMT): varun-raj (Thu, 18 Jan 2018 09:09:40 GMT): varunagarwal (Thu, 18 Jan 2018 09:09:50 GMT): varunagarwal (Thu, 18 Jan 2018 09:10:06 GMT): varun-raj (Thu, 18 Jan 2018 09:11:02 GMT): varunagarwal (Thu, 18 Jan 2018 09:11:19 GMT): varun-raj (Thu, 18 Jan 2018 09:11:23 GMT): varunagarwal (Thu, 18 Jan 2018 09:12:02 GMT): varun-raj (Thu, 18 Jan 2018 09:12:37 GMT): varunagarwal (Thu, 18 Jan 2018 09:17:10 GMT): varunagarwal (Thu, 18 Jan 2018 09:17:24 GMT): varun-raj (Thu, 18 Jan 2018 09:19:50 GMT): SimonOberzan (Thu, 18 Jan 2018 09:26:09 GMT): SimonOberzan (Thu, 18 Jan 2018 09:26:09 GMT): Abhi119 (Thu, 18 Jan 2018 09:30:43 GMT): navdevl (Thu, 18 Jan 2018 09:47:59 GMT): Aniket-Engg (Thu, 18 Jan 2018 09:51:09 GMT): Abhi119 (Thu, 18 Jan 2018 09:54:42 GMT): navdevl (Thu, 18 Jan 2018 09:56:36 GMT): Abhi119 (Thu, 18 Jan 2018 10:02:25 GMT): navdevl (Thu, 18 Jan 2018 10:08:33 GMT): satyajitsasmal (Thu, 18 Jan 2018 10:15:01 GMT): satyajitsasmal (Thu, 18 Jan 2018 10:15:29 GMT): varun-raj (Thu, 18 Jan 2018 10:43:20 GMT): satyajitsasmal (Thu, 18 Jan 2018 11:39:49 GMT): wininani (Thu, 18 Jan 2018 12:23:53 GMT): prashantnagawade (Thu, 18 Jan 2018 12:38:39 GMT): prashantnagawade (Thu, 18 Jan 2018 12:40:24 GMT): prashantnagawade (Thu, 18 Jan 2018 12:40:24 GMT): rhansharief (Thu, 18 Jan 2018 12:48:50 GMT): rhansharief (Thu, 18 Jan 2018 12:48:51 GMT): rahulkannur (Thu, 18 Jan 2018 13:00:41 GMT): awjh (Thu, 18 Jan 2018 13:18:19 GMT): rahulkannur (Thu, 18 Jan 2018 13:20:55 GMT): rahulkannur (Thu, 18 Jan 2018 13:20:58 GMT): awjh (Thu, 18 Jan 2018 13:26:19 GMT): awjh (Thu, 18 Jan 2018 13:26:20 GMT): awjh (Thu, 18 Jan 2018 13:27:30 GMT): rthatcher (Thu, 18 Jan 2018 13:30:50 GMT): rthatcher (Thu, 18 Jan 2018 13:33:17 GMT): rhansharief (Thu, 18 Jan 2018 13:42:25 GMT): rhansharief (Thu, 18 Jan 2018 13:43:18 GMT): rhansharief (Thu, 18 Jan 2018 13:43:19 GMT): rhansharief (Thu, 18 Jan 2018 13:43:59 GMT): rhansharief (Thu, 18 Jan 2018 13:58:26 GMT): rhansharief (Thu, 18 Jan 2018 13:58:27 GMT): varunagarwal (Thu, 18 Jan 2018 14:00:01 GMT): vkblue (Thu, 18 Jan 2018 14:00:09 GMT): varunagarwal (Thu, 18 Jan 2018 14:00:18 GMT): rhansharief (Thu, 18 Jan 2018 14:37:43 GMT): mahoney1 (Thu, 18 Jan 2018 14:38:54 GMT): mahoney1 (Thu, 18 Jan 2018 14:45:56 GMT): vkblue (Thu, 18 Jan 2018 14:46:25 GMT): mahoney1 (Thu, 18 Jan 2018 14:47:00 GMT): varunagarwal (Thu, 18 Jan 2018 14:53:28 GMT): rhansharief (Thu, 18 Jan 2018 14:58:35 GMT): rhansharief (Thu, 18 Jan 2018 14:58:35 GMT): mahoney1 (Thu, 18 Jan 2018 15:02:59 GMT): Abhi119 (Thu, 18 Jan 2018 15:44:03 GMT): rhansharief (Thu, 18 Jan 2018 15:49:47 GMT): lucasdf (Thu, 18 Jan 2018 20:29:12 GMT): lucasdf (Thu, 18 Jan 2018 20:29:12 GMT): lucasdf (Thu, 18 Jan 2018 20:29:12 GMT): AkshayJindal (Thu, 18 Jan 2018 22:26:20 GMT): AkshayJindal (Thu, 18 Jan 2018 22:26:20 GMT): AkshayJindal (Thu, 18 Jan 2018 22:26:20 GMT): AkshayJindal (Thu, 18 Jan 2018 22:26:20 GMT): AkshayJindal (Thu, 18 Jan 2018 22:26:20 GMT): pichayuthk (Fri, 19 Jan 2018 03:34:54 GMT): crj (Fri, 19 Jan 2018 03:51:51 GMT): varun-raj (Fri, 19 Jan 2018 04:01:30 GMT): pichayuthk (Fri, 19 Jan 2018 04:45:28 GMT): navdevl (Fri, 19 Jan 2018 04:58:36 GMT): varun-raj (Fri, 19 Jan 2018 05:04:40 GMT): rahulkannur (Fri, 19 Jan 2018 05:05:01 GMT): varun-raj (Fri, 19 Jan 2018 05:05:40 GMT): imkarthikk (Fri, 19 Jan 2018 05:20:09 GMT): rhansharief (Fri, 19 Jan 2018 05:52:48 GMT): pichayuthk (Fri, 19 Jan 2018 07:24:07 GMT): rhansharief (Fri, 19 Jan 2018 07:35:34 GMT): pichayuthk (Fri, 19 Jan 2018 07:59:44 GMT): B2BProgrammer (Fri, 19 Jan 2018 08:02:40 GMT): amrit.gautam (Fri, 19 Jan 2018 08:14:33 GMT): Abhi119 (Fri, 19 Jan 2018 08:30:20 GMT): Abhi119 (Fri, 19 Jan 2018 08:30:20 GMT): Abhi119 (Fri, 19 Jan 2018 08:30:20 GMT): Rajpratik71 (Fri, 19 Jan 2018 08:30:36 GMT): varun-raj (Fri, 19 Jan 2018 09:19:38 GMT): rthatcher (Fri, 19 Jan 2018 09:31:45 GMT): prabvi01 (Fri, 19 Jan 2018 09:48:13 GMT): rthatcher (Fri, 19 Jan 2018 09:52:36 GMT): kapilaArora (Fri, 19 Jan 2018 10:05:54 GMT): kapilaArora (Fri, 19 Jan 2018 10:06:26 GMT): mahoney1 (Fri, 19 Jan 2018 10:11:16 GMT): AkshayJindal (Fri, 19 Jan 2018 10:12:50 GMT): mahoney1 (Fri, 19 Jan 2018 10:14:09 GMT): wininani (Fri, 19 Jan 2018 10:17:46 GMT): rhansharief (Fri, 19 Jan 2018 10:17:55 GMT): wininani (Fri, 19 Jan 2018 10:18:29 GMT): mahoney1 (Fri, 19 Jan 2018 10:31:26 GMT): mahoney1 (Fri, 19 Jan 2018 10:31:26 GMT): mahoney1 (Fri, 19 Jan 2018 10:31:26 GMT): Abhi119 (Fri, 19 Jan 2018 10:33:27 GMT): Abhi119 (Fri, 19 Jan 2018 10:33:27 GMT): Abhi119 (Fri, 19 Jan 2018 10:33:27 GMT): Abhi119 (Fri, 19 Jan 2018 10:33:49 GMT): AkshayJindal (Fri, 19 Jan 2018 10:37:05 GMT): mahoney1 (Fri, 19 Jan 2018 10:48:40 GMT): rthatcher (Fri, 19 Jan 2018 10:55:55 GMT): pichayuthk (Fri, 19 Jan 2018 10:56:58 GMT): pichayuthk (Fri, 19 Jan 2018 10:56:58 GMT): mahoney1 (Fri, 19 Jan 2018 10:57:12 GMT): pichayuthk (Fri, 19 Jan 2018 10:58:05 GMT): Abhi119 (Fri, 19 Jan 2018 10:59:05 GMT): rthatcher (Fri, 19 Jan 2018 11:06:02 GMT): pichayuthk (Fri, 19 Jan 2018 11:08:16 GMT): jon_s (Fri, 19 Jan 2018 11:19:04 GMT): Abhi119 (Fri, 19 Jan 2018 11:34:51 GMT): wininani (Fri, 19 Jan 2018 11:40:34 GMT): wininani (Fri, 19 Jan 2018 11:40:34 GMT): prabvi01 (Fri, 19 Jan 2018 11:40:58 GMT): ra_w (Fri, 19 Jan 2018 11:44:03 GMT): rthatcher (Fri, 19 Jan 2018 11:46:36 GMT): Abhi119 (Fri, 19 Jan 2018 12:11:16 GMT): Abhi119 (Fri, 19 Jan 2018 12:14:43 GMT): Abhi119 (Fri, 19 Jan 2018 12:16:51 GMT): mahoney1 (Fri, 19 Jan 2018 12:51:48 GMT): wininani (Fri, 19 Jan 2018 13:13:06 GMT): mahoney1 (Fri, 19 Jan 2018 13:14:38 GMT): sravs (Fri, 19 Jan 2018 13:19:00 GMT): sravs (Fri, 19 Jan 2018 13:19:00 GMT): sravs (Fri, 19 Jan 2018 13:19:20 GMT): mahoney1 (Fri, 19 Jan 2018 13:34:38 GMT): Abhi119 (Fri, 19 Jan 2018 13:34:58 GMT): Abhi119 (Fri, 19 Jan 2018 13:35:19 GMT): sravs (Fri, 19 Jan 2018 13:40:21 GMT): jtonline (Fri, 19 Jan 2018 13:51:08 GMT): matrisis (Fri, 19 Jan 2018 13:51:45 GMT): rthatcher (Fri, 19 Jan 2018 14:03:06 GMT): mahoney1 (Fri, 19 Jan 2018 14:50:12 GMT): mahoney1 (Fri, 19 Jan 2018 14:50:12 GMT): mahoney1 (Fri, 19 Jan 2018 14:50:12 GMT): AkshayJindal (Fri, 19 Jan 2018 15:43:52 GMT): mahoney1 (Fri, 19 Jan 2018 15:46:25 GMT): mahoney1 (Fri, 19 Jan 2018 15:46:25 GMT): mahoney1 (Fri, 19 Jan 2018 15:53:49 GMT): gen_el (Fri, 19 Jan 2018 16:22:07 GMT): gen_el (Fri, 19 Jan 2018 16:22:07 GMT): gen_el (Fri, 19 Jan 2018 16:23:17 GMT): gen_el (Fri, 19 Jan 2018 16:24:07 GMT): vsadriano (Fri, 19 Jan 2018 16:36:18 GMT): vsadriano (Fri, 19 Jan 2018 16:36:27 GMT): mahoney1 (Fri, 19 Jan 2018 17:02:16 GMT): mahoney1 (Fri, 19 Jan 2018 17:08:24 GMT): mahoney1 (Fri, 19 Jan 2018 17:08:24 GMT): vsadriano (Fri, 19 Jan 2018 17:14:22 GMT): mahoney1 (Fri, 19 Jan 2018 17:33:01 GMT): mahoney1 (Fri, 19 Jan 2018 17:33:01 GMT): mahoney1 (Fri, 19 Jan 2018 17:33:01 GMT): vsadriano (Fri, 19 Jan 2018 17:35:30 GMT): vsadriano (Fri, 19 Jan 2018 17:36:25 GMT): gen_el (Fri, 19 Jan 2018 17:39:09 GMT): lucasdf (Fri, 19 Jan 2018 17:43:00 GMT): terry8956 (Sat, 20 Jan 2018 08:18:51 GMT): JohnEisenhardt (Sat, 20 Jan 2018 14:26:55 GMT): asavchen (Sat, 20 Jan 2018 17:19:56 GMT): davisyao (Sun, 21 Jan 2018 03:38:37 GMT): BryanWu (Sun, 21 Jan 2018 04:48:33 GMT): abhilash1in (Sun, 21 Jan 2018 06:16:43 GMT): abhilash1in (Sun, 21 Jan 2018 06:23:21 GMT): abhilash1in (Sun, 21 Jan 2018 06:24:18 GMT): abhilash1in (Sun, 21 Jan 2018 06:25:38 GMT): abhilash1in (Sun, 21 Jan 2018 06:25:38 GMT): abhilash1in (Sun, 21 Jan 2018 06:34:40 GMT): abhilash1in (Sun, 21 Jan 2018 06:51:38 GMT): abhilash1in (Sun, 21 Jan 2018 06:51:44 GMT): praveeng145 (Sun, 21 Jan 2018 08:32:03 GMT): praveeng145 (Sun, 21 Jan 2018 08:32:13 GMT): praveeng145 (Sun, 21 Jan 2018 08:32:28 GMT): praveeng145 (Sun, 21 Jan 2018 08:32:39 GMT): praveeng145 (Sun, 21 Jan 2018 08:33:45 GMT): praveeng145 (Sun, 21 Jan 2018 08:34:37 GMT): praveeng145 (Sun, 21 Jan 2018 08:34:46 GMT): praveeng145 (Sun, 21 Jan 2018 08:34:49 GMT): nasserfci (Sun, 21 Jan 2018 09:04:04 GMT): nasserfci (Sun, 21 Jan 2018 09:04:04 GMT): C0rWin (Sun, 21 Jan 2018 13:29:41 GMT): lucasdf (Sun, 21 Jan 2018 13:32:14 GMT): C0rWin (Sun, 21 Jan 2018 13:35:19 GMT): praveenjsam (Sun, 21 Jan 2018 14:10:27 GMT): praveenjsam (Sun, 21 Jan 2018 14:12:11 GMT): praveenjsam (Sun, 21 Jan 2018 14:13:01 GMT): praveenjsam (Sun, 21 Jan 2018 14:14:09 GMT): praveeng145 (Sun, 21 Jan 2018 19:28:45 GMT): lucasdf (Sun, 21 Jan 2018 19:30:06 GMT): lucasdf (Sun, 21 Jan 2018 19:30:56 GMT): praveeng145 (Sun, 21 Jan 2018 19:30:58 GMT): praveeng145 (Sun, 21 Jan 2018 19:32:48 GMT): praveeng145 (Sun, 21 Jan 2018 19:33:22 GMT): lucasdf (Sun, 21 Jan 2018 19:34:38 GMT): praveeng145 (Sun, 21 Jan 2018 19:35:19 GMT): praveeng145 (Sun, 21 Jan 2018 19:47:29 GMT): praveeng145 (Sun, 21 Jan 2018 19:48:34 GMT): nasserfci (Sun, 21 Jan 2018 20:14:35 GMT): nasserfci (Sun, 21 Jan 2018 20:14:35 GMT): nasserfci (Sun, 21 Jan 2018 22:25:36 GMT): crj (Mon, 22 Jan 2018 02:24:58 GMT): crj (Mon, 22 Jan 2018 02:29:21 GMT): crj (Mon, 22 Jan 2018 02:35:11 GMT): vizillion (Mon, 22 Jan 2018 03:31:20 GMT): crj (Mon, 22 Jan 2018 03:44:57 GMT): adrianblakey (Mon, 22 Jan 2018 06:57:52 GMT): jon_s (Mon, 22 Jan 2018 07:04:17 GMT): jon_s (Mon, 22 Jan 2018 07:06:58 GMT): prabvi01 (Mon, 22 Jan 2018 08:46:50 GMT): prabvi01 (Mon, 22 Jan 2018 08:48:34 GMT): Arindam (Mon, 22 Jan 2018 08:50:35 GMT): prabvi01 (Mon, 22 Jan 2018 08:53:02 GMT): Arindam (Mon, 22 Jan 2018 08:57:19 GMT): SudheerKaspa (Mon, 22 Jan 2018 09:10:24 GMT): SudheerKaspa (Mon, 22 Jan 2018 09:11:08 GMT): rthatcher (Mon, 22 Jan 2018 09:36:24 GMT): SudheerKaspa (Mon, 22 Jan 2018 09:38:23 GMT): SudheerKaspa (Mon, 22 Jan 2018 09:38:26 GMT): SudheerKaspa (Mon, 22 Jan 2018 09:39:15 GMT): rthatcher (Mon, 22 Jan 2018 09:41:46 GMT): rthatcher (Mon, 22 Jan 2018 09:41:46 GMT): SudheerKaspa (Mon, 22 Jan 2018 09:46:24 GMT): SudheerKaspa (Mon, 22 Jan 2018 09:46:48 GMT): SudheerKaspa (Mon, 22 Jan 2018 09:46:48 GMT): rthatcher (Mon, 22 Jan 2018 10:03:36 GMT): rthatcher (Mon, 22 Jan 2018 10:08:14 GMT): pichayuthk (Mon, 22 Jan 2018 10:20:42 GMT): pichayuthk (Mon, 22 Jan 2018 10:20:42 GMT): mahoney1 (Mon, 22 Jan 2018 10:25:12 GMT): SudheerKaspa (Mon, 22 Jan 2018 10:32:07 GMT): SudheerKaspa (Mon, 22 Jan 2018 10:32:07 GMT): mahoney1 (Mon, 22 Jan 2018 10:58:13 GMT): wininani (Mon, 22 Jan 2018 11:06:02 GMT): SudheerKaspa (Mon, 22 Jan 2018 11:12:59 GMT): SudheerKaspa (Mon, 22 Jan 2018 11:13:11 GMT): rthatcher (Mon, 22 Jan 2018 11:19:18 GMT): mahoney1 (Mon, 22 Jan 2018 11:22:19 GMT): mahoney1 (Mon, 22 Jan 2018 11:22:19 GMT): mahoney1 (Mon, 22 Jan 2018 11:22:19 GMT): mahoney1 (Mon, 22 Jan 2018 11:22:19 GMT): nasserfci (Mon, 22 Jan 2018 11:25:30 GMT): rthatcher (Mon, 22 Jan 2018 11:38:27 GMT): rthatcher (Mon, 22 Jan 2018 11:38:27 GMT): prithveesh (Mon, 22 Jan 2018 11:44:22 GMT): ahmadzafar (Mon, 22 Jan 2018 11:51:52 GMT): ahmadzafar (Mon, 22 Jan 2018 11:52:00 GMT): mahoney1 (Mon, 22 Jan 2018 11:58:51 GMT): SudheerKaspa (Mon, 22 Jan 2018 12:08:13 GMT): prabvi01 (Mon, 22 Jan 2018 12:10:06 GMT): prabvi01 (Mon, 22 Jan 2018 12:11:34 GMT): mahoney1 (Mon, 22 Jan 2018 12:17:33 GMT): mahoney1 (Mon, 22 Jan 2018 12:17:33 GMT): mahoney1 (Mon, 22 Jan 2018 12:30:38 GMT): SudheerKaspa (Mon, 22 Jan 2018 12:50:47 GMT): mahoney1 (Mon, 22 Jan 2018 13:05:02 GMT): mahoney1 (Mon, 22 Jan 2018 13:05:02 GMT): fabcan (Mon, 22 Jan 2018 13:36:24 GMT): rthatcher (Mon, 22 Jan 2018 14:06:10 GMT): mahoney1 (Mon, 22 Jan 2018 14:19:34 GMT): mahoney1 (Mon, 22 Jan 2018 14:19:34 GMT): mahoney1 (Mon, 22 Jan 2018 14:19:34 GMT): fabcan (Mon, 22 Jan 2018 14:20:40 GMT): AkshayJindal (Mon, 22 Jan 2018 15:06:31 GMT): lcinacio (Mon, 22 Jan 2018 15:39:50 GMT): lcinacio (Mon, 22 Jan 2018 15:43:12 GMT): PiyaMahajan (Mon, 22 Jan 2018 15:52:16 GMT): cdpotts (Mon, 22 Jan 2018 16:00:41 GMT): ajayvuyyuru (Mon, 22 Jan 2018 16:08:57 GMT): rohitadivi (Mon, 22 Jan 2018 16:12:36 GMT): lucasdf (Mon, 22 Jan 2018 17:06:39 GMT): mahoney1 (Mon, 22 Jan 2018 17:13:24 GMT): bhavneesh (Mon, 22 Jan 2018 17:14:17 GMT): bhavneesh (Mon, 22 Jan 2018 17:14:38 GMT): bhavneesh (Mon, 22 Jan 2018 17:14:54 GMT): ajayvuyyuru (Mon, 22 Jan 2018 17:31:19 GMT): ajayvuyyuru (Mon, 22 Jan 2018 17:36:06 GMT): mahoney1 (Mon, 22 Jan 2018 17:45:30 GMT): mahoney1 (Mon, 22 Jan 2018 17:45:30 GMT): mahoney1 (Mon, 22 Jan 2018 17:45:30 GMT): ajayvuyyuru (Mon, 22 Jan 2018 17:51:37 GMT): mahoney1 (Mon, 22 Jan 2018 17:54:56 GMT): mahoney1 (Mon, 22 Jan 2018 17:54:56 GMT): mahoney1 (Mon, 22 Jan 2018 18:05:26 GMT): Randyshu2018 (Tue, 23 Jan 2018 01:25:38 GMT): Randyshu2018 (Tue, 23 Jan 2018 01:28:35 GMT): Randyshu2018 (Tue, 23 Jan 2018 01:29:59 GMT): bami0988 (Tue, 23 Jan 2018 02:13:59 GMT): crj (Tue, 23 Jan 2018 02:40:15 GMT): crj (Tue, 23 Jan 2018 02:48:02 GMT): prabvi01 (Tue, 23 Jan 2018 04:29:17 GMT): gibsonsyd (Tue, 23 Jan 2018 05:34:32 GMT): wininani (Tue, 23 Jan 2018 06:30:04 GMT): SudheerKaspa (Tue, 23 Jan 2018 06:34:56 GMT): SudheerKaspa (Tue, 23 Jan 2018 06:34:56 GMT): gibsonsyd (Tue, 23 Jan 2018 07:41:07 GMT): SurajThapaNTL (Tue, 23 Jan 2018 08:10:50 GMT): Randyshu2018 (Tue, 23 Jan 2018 08:15:12 GMT): Luxii (Tue, 23 Jan 2018 08:58:30 GMT): allenyang (Tue, 23 Jan 2018 09:25:51 GMT): rthatcher (Tue, 23 Jan 2018 09:42:21 GMT): rthatcher (Tue, 23 Jan 2018 09:42:21 GMT): RaikireHiuduo (Tue, 23 Jan 2018 09:49:47 GMT): bh4rtp (Tue, 23 Jan 2018 09:55:56 GMT): bh4rtp (Tue, 23 Jan 2018 09:55:56 GMT): RaikireHiuduo (Tue, 23 Jan 2018 09:58:09 GMT): RaikireHiuduo (Tue, 23 Jan 2018 09:58:09 GMT): RaikireHiuduo (Tue, 23 Jan 2018 09:59:00 GMT): RaikireHiuduo (Tue, 23 Jan 2018 09:59:00 GMT): RaikireHiuduo (Tue, 23 Jan 2018 09:59:00 GMT): RaikireHiuduo (Tue, 23 Jan 2018 09:59:15 GMT): rthatcher (Tue, 23 Jan 2018 09:59:27 GMT): RaikireHiuduo (Tue, 23 Jan 2018 09:59:40 GMT): bh4rtp (Tue, 23 Jan 2018 10:02:01 GMT): RaikireHiuduo (Tue, 23 Jan 2018 10:03:10 GMT): rthatcher (Tue, 23 Jan 2018 10:04:01 GMT): bh4rtp (Tue, 23 Jan 2018 10:05:21 GMT): bh4rtp (Tue, 23 Jan 2018 10:07:27 GMT): lcinacio (Tue, 23 Jan 2018 10:09:52 GMT): rthatcher (Tue, 23 Jan 2018 10:10:06 GMT): lcinacio (Tue, 23 Jan 2018 10:16:01 GMT): bh4rtp (Tue, 23 Jan 2018 10:16:59 GMT): mahoney1 (Tue, 23 Jan 2018 10:18:34 GMT): mahoney1 (Tue, 23 Jan 2018 10:19:41 GMT): mahoney1 (Tue, 23 Jan 2018 10:22:38 GMT): mahoney1 (Tue, 23 Jan 2018 10:24:39 GMT): lcinacio (Tue, 23 Jan 2018 10:41:56 GMT): bh4rtp (Tue, 23 Jan 2018 10:42:37 GMT): mahoney1 (Tue, 23 Jan 2018 10:45:10 GMT): bh4rtp (Tue, 23 Jan 2018 10:45:35 GMT): prabvi01 (Tue, 23 Jan 2018 10:57:00 GMT): varunagarwal (Tue, 23 Jan 2018 11:12:43 GMT): varunagarwal (Tue, 23 Jan 2018 11:24:15 GMT): julian (Tue, 23 Jan 2018 11:28:43 GMT): julian (Tue, 23 Jan 2018 11:29:12 GMT): julian (Tue, 23 Jan 2018 11:30:30 GMT): julian (Tue, 23 Jan 2018 11:30:30 GMT): julian (Tue, 23 Jan 2018 11:30:30 GMT): SimonOberzan (Tue, 23 Jan 2018 12:11:09 GMT): rthatcher (Tue, 23 Jan 2018 12:21:00 GMT): varunagarwal (Tue, 23 Jan 2018 12:22:30 GMT): varunagarwal (Tue, 23 Jan 2018 12:23:20 GMT): varunagarwal (Tue, 23 Jan 2018 12:26:04 GMT): varunagarwal (Tue, 23 Jan 2018 12:27:10 GMT): IngoRammer (Tue, 23 Jan 2018 12:48:02 GMT): rthatcher (Tue, 23 Jan 2018 12:50:28 GMT): rthatcher (Tue, 23 Jan 2018 12:50:28 GMT): varunagarwal (Tue, 23 Jan 2018 12:59:25 GMT): nasserfci (Tue, 23 Jan 2018 13:00:24 GMT): nasserfci (Tue, 23 Jan 2018 13:00:24 GMT): varunagarwal (Tue, 23 Jan 2018 13:01:25 GMT): varunagarwal (Tue, 23 Jan 2018 13:03:46 GMT): varunagarwal (Tue, 23 Jan 2018 13:03:55 GMT): mahoney1 (Tue, 23 Jan 2018 13:05:49 GMT): mahoney1 (Tue, 23 Jan 2018 13:07:33 GMT): mahoney1 (Tue, 23 Jan 2018 13:07:33 GMT): SimonOberzan (Tue, 23 Jan 2018 13:07:50 GMT): varunagarwal (Tue, 23 Jan 2018 13:08:08 GMT): SimonOberzan (Tue, 23 Jan 2018 13:08:26 GMT): SimonOberzan (Tue, 23 Jan 2018 13:08:26 GMT): mahoney1 (Tue, 23 Jan 2018 13:12:10 GMT): mahoney1 (Tue, 23 Jan 2018 13:13:31 GMT): julian (Tue, 23 Jan 2018 13:44:38 GMT): SimonOberzan (Tue, 23 Jan 2018 13:46:24 GMT): SimonOberzan (Tue, 23 Jan 2018 13:46:24 GMT): SimonOberzan (Tue, 23 Jan 2018 13:47:34 GMT): julian (Tue, 23 Jan 2018 13:57:57 GMT): SimonOberzan (Tue, 23 Jan 2018 13:58:28 GMT): julian (Tue, 23 Jan 2018 13:58:39 GMT): Calvin-J-Scott (Tue, 23 Jan 2018 14:24:07 GMT): Calvin-J-Scott (Tue, 23 Jan 2018 14:27:25 GMT): rthatcher (Tue, 23 Jan 2018 14:32:43 GMT): Calvin-J-Scott (Tue, 23 Jan 2018 14:37:12 GMT): Calvin-J-Scott (Tue, 23 Jan 2018 14:40:48 GMT): rthatcher (Tue, 23 Jan 2018 14:42:41 GMT): Calvin-J-Scott (Tue, 23 Jan 2018 14:57:46 GMT): Calvin-J-Scott (Tue, 23 Jan 2018 15:07:45 GMT): lucasdf (Tue, 23 Jan 2018 16:33:08 GMT): lucasdf (Tue, 23 Jan 2018 16:33:08 GMT): AkshayJindal (Tue, 23 Jan 2018 17:34:50 GMT): lindybrits (Tue, 23 Jan 2018 18:02:36 GMT): lindybrits (Tue, 23 Jan 2018 18:10:32 GMT): lindybrits (Tue, 23 Jan 2018 18:10:32 GMT): lindybrits (Tue, 23 Jan 2018 18:12:01 GMT): nasserfci (Tue, 23 Jan 2018 18:24:10 GMT): nasserfci (Tue, 23 Jan 2018 18:24:10 GMT): nasserfci (Tue, 23 Jan 2018 18:24:16 GMT): ShaunC (Tue, 23 Jan 2018 18:54:39 GMT): ShaunC (Tue, 23 Jan 2018 21:45:58 GMT): ShaunC (Tue, 23 Jan 2018 22:40:45 GMT): SteveZhang75 (Wed, 24 Jan 2018 02:08:11 GMT): rhansharief (Wed, 24 Jan 2018 03:15:04 GMT): rhansharief (Wed, 24 Jan 2018 03:19:26 GMT): jon_s (Wed, 24 Jan 2018 05:56:46 GMT): jon_s (Wed, 24 Jan 2018 05:56:59 GMT): praveencastelino (Wed, 24 Jan 2018 06:05:34 GMT): jon_s (Wed, 24 Jan 2018 06:05:51 GMT): jon_s (Wed, 24 Jan 2018 06:06:15 GMT): kapilaArora (Wed, 24 Jan 2018 06:14:51 GMT): kapilaArora (Wed, 24 Jan 2018 06:15:51 GMT): kapilaArora (Wed, 24 Jan 2018 06:16:30 GMT): kapilaArora (Wed, 24 Jan 2018 06:17:32 GMT): kapilaArora (Wed, 24 Jan 2018 06:18:18 GMT): kapilaArora (Wed, 24 Jan 2018 06:18:29 GMT): kapilaArora (Wed, 24 Jan 2018 06:19:16 GMT): kapilaArora (Wed, 24 Jan 2018 06:20:12 GMT): praveencastelino (Wed, 24 Jan 2018 06:39:12 GMT): nasserfci (Wed, 24 Jan 2018 07:03:07 GMT): mna2016 (Wed, 24 Jan 2018 07:33:10 GMT): mna2016 (Wed, 24 Jan 2018 07:33:44 GMT): IssaAmit (Wed, 24 Jan 2018 08:00:17 GMT): IssaAmit (Wed, 24 Jan 2018 08:02:02 GMT): mahoney1 (Wed, 24 Jan 2018 08:33:10 GMT): RaikireHiuduo (Wed, 24 Jan 2018 08:34:21 GMT): RaikireHiuduo (Wed, 24 Jan 2018 08:34:21 GMT): RaikireHiuduo (Wed, 24 Jan 2018 08:37:00 GMT): RaikireHiuduo (Wed, 24 Jan 2018 08:37:00 GMT): RaikireHiuduo (Wed, 24 Jan 2018 08:42:24 GMT): RaikireHiuduo (Wed, 24 Jan 2018 08:42:24 GMT): mahoney1 (Wed, 24 Jan 2018 08:44:03 GMT): mahoney1 (Wed, 24 Jan 2018 08:44:32 GMT): IssaAmit (Wed, 24 Jan 2018 08:45:52 GMT): nasserfci (Wed, 24 Jan 2018 08:52:58 GMT): nasserfci (Wed, 24 Jan 2018 09:03:30 GMT): rhansharief (Wed, 24 Jan 2018 10:01:25 GMT): rhansharief (Wed, 24 Jan 2018 10:01:52 GMT): pichayuthk (Wed, 24 Jan 2018 10:30:24 GMT): pichayuthk (Wed, 24 Jan 2018 10:30:24 GMT): lindybrits (Wed, 24 Jan 2018 10:39:13 GMT): lindybrits (Wed, 24 Jan 2018 10:48:02 GMT): lindybrits (Wed, 24 Jan 2018 10:48:02 GMT): mahoney1 (Wed, 24 Jan 2018 10:48:05 GMT): mahoney1 (Wed, 24 Jan 2018 10:53:57 GMT): mahoney1 (Wed, 24 Jan 2018 11:01:42 GMT): mahoney1 (Wed, 24 Jan 2018 11:02:54 GMT): mahoney1 (Wed, 24 Jan 2018 11:08:46 GMT): mahoney1 (Wed, 24 Jan 2018 11:09:32 GMT): rhansharief (Wed, 24 Jan 2018 11:13:43 GMT): mahoney1 (Wed, 24 Jan 2018 11:14:52 GMT): mahoney1 (Wed, 24 Jan 2018 11:16:07 GMT): rhansharief (Wed, 24 Jan 2018 11:19:06 GMT): mahoney1 (Wed, 24 Jan 2018 11:25:47 GMT): vsadriano (Wed, 24 Jan 2018 11:36:34 GMT): vsadriano (Wed, 24 Jan 2018 11:37:23 GMT): julian (Wed, 24 Jan 2018 11:39:44 GMT): vsadriano (Wed, 24 Jan 2018 11:40:12 GMT): julian (Wed, 24 Jan 2018 11:40:52 GMT): vsadriano (Wed, 24 Jan 2018 11:41:03 GMT): julian (Wed, 24 Jan 2018 11:41:56 GMT): vsadriano (Wed, 24 Jan 2018 11:42:01 GMT): vsadriano (Wed, 24 Jan 2018 11:43:59 GMT): vsadriano (Wed, 24 Jan 2018 11:44:10 GMT): wininani (Wed, 24 Jan 2018 11:44:51 GMT): julian (Wed, 24 Jan 2018 11:46:12 GMT): julian (Wed, 24 Jan 2018 11:47:01 GMT): vsadriano (Wed, 24 Jan 2018 11:47:59 GMT): wininani (Wed, 24 Jan 2018 11:49:49 GMT): wininani (Wed, 24 Jan 2018 11:50:10 GMT): bingimanasa (Wed, 24 Jan 2018 11:51:16 GMT): vsadriano (Wed, 24 Jan 2018 11:56:25 GMT): rthatcher (Wed, 24 Jan 2018 11:58:39 GMT): vsadriano (Wed, 24 Jan 2018 12:02:35 GMT): vsadriano (Wed, 24 Jan 2018 12:04:00 GMT): wininani (Wed, 24 Jan 2018 12:07:54 GMT): vsadriano (Wed, 24 Jan 2018 12:09:37 GMT): rthatcher (Wed, 24 Jan 2018 12:09:58 GMT): vsadriano (Wed, 24 Jan 2018 12:10:07 GMT): wininani (Wed, 24 Jan 2018 12:11:47 GMT): wininani (Wed, 24 Jan 2018 12:11:48 GMT): praveencastelino (Wed, 24 Jan 2018 12:17:14 GMT): SudheerKaspa (Wed, 24 Jan 2018 12:23:01 GMT): SudheerKaspa (Wed, 24 Jan 2018 12:24:37 GMT): rthatcher (Wed, 24 Jan 2018 12:24:51 GMT): rthatcher (Wed, 24 Jan 2018 12:29:02 GMT): sebastian.paul (Wed, 24 Jan 2018 12:30:16 GMT): sebastian.paul (Wed, 24 Jan 2018 12:31:13 GMT): SudheerKaspa (Wed, 24 Jan 2018 12:32:18 GMT): sebastian.paul (Wed, 24 Jan 2018 12:39:54 GMT): TBigjohn (Wed, 24 Jan 2018 12:44:38 GMT): TBigjohn (Wed, 24 Jan 2018 12:44:46 GMT): mahoney1 (Wed, 24 Jan 2018 12:49:44 GMT): mahoney1 (Wed, 24 Jan 2018 12:49:44 GMT): Rodo 25 (Wed, 24 Jan 2018 13:19:34 GMT): TBigjohn (Wed, 24 Jan 2018 13:38:58 GMT): TBigjohn (Wed, 24 Jan 2018 13:39:35 GMT): mahoney1 (Wed, 24 Jan 2018 13:50:43 GMT): mahoney1 (Wed, 24 Jan 2018 13:50:43 GMT): TBigjohn (Wed, 24 Jan 2018 14:08:10 GMT): mahoney1 (Wed, 24 Jan 2018 14:12:19 GMT): TBigjohn (Wed, 24 Jan 2018 14:13:17 GMT): TBigjohn (Wed, 24 Jan 2018 14:13:17 GMT): lucasdf (Wed, 24 Jan 2018 14:14:59 GMT): mahoney1 (Wed, 24 Jan 2018 14:22:59 GMT): vitorduarte (Wed, 24 Jan 2018 14:30:45 GMT): vitorduarte (Wed, 24 Jan 2018 14:30:57 GMT): vitorduarte (Wed, 24 Jan 2018 14:32:55 GMT): vitorduarte (Wed, 24 Jan 2018 14:34:18 GMT): vitorduarte (Wed, 24 Jan 2018 14:34:51 GMT): vitorduarte (Wed, 24 Jan 2018 14:34:51 GMT): mahoney1 (Wed, 24 Jan 2018 14:51:51 GMT): mahoney1 (Wed, 24 Jan 2018 14:51:51 GMT): mahoney1 (Wed, 24 Jan 2018 14:51:51 GMT): mahoney1 (Wed, 24 Jan 2018 14:51:51 GMT): mahoney1 (Wed, 24 Jan 2018 14:51:51 GMT): mahoney1 (Wed, 24 Jan 2018 14:51:51 GMT): mahoney1 (Wed, 24 Jan 2018 15:03:08 GMT): VasilyRebrov (Wed, 24 Jan 2018 15:16:25 GMT): SergeySadon (Wed, 24 Jan 2018 16:17:09 GMT): SergeySadon (Wed, 24 Jan 2018 16:17:09 GMT): SergeySadon (Wed, 24 Jan 2018 16:17:09 GMT): SergeySadon (Wed, 24 Jan 2018 16:17:09 GMT): davidkel (Wed, 24 Jan 2018 16:55:05 GMT): davidkel (Wed, 24 Jan 2018 16:58:04 GMT): vitorduarte (Wed, 24 Jan 2018 17:03:02 GMT): vitorduarte (Wed, 24 Jan 2018 17:03:02 GMT): vitorduarte (Wed, 24 Jan 2018 17:04:24 GMT): vitorduarte (Wed, 24 Jan 2018 17:06:48 GMT): vitorduarte (Wed, 24 Jan 2018 17:07:34 GMT): vitorduarte (Wed, 24 Jan 2018 17:29:09 GMT): vitorduarte (Wed, 24 Jan 2018 17:34:38 GMT): simonmullaney (Wed, 24 Jan 2018 18:00:58 GMT): simonmullaney (Wed, 24 Jan 2018 18:02:26 GMT): ShaunC (Wed, 24 Jan 2018 18:57:13 GMT): ShaunC (Wed, 24 Jan 2018 18:57:21 GMT): gesaleh (Wed, 24 Jan 2018 19:46:23 GMT): davidkel (Wed, 24 Jan 2018 19:48:39 GMT): Arindam (Wed, 24 Jan 2018 19:56:49 GMT): CT123 (Wed, 24 Jan 2018 20:08:17 GMT): CT123 (Wed, 24 Jan 2018 20:40:21 GMT): CT123 (Wed, 24 Jan 2018 20:40:57 GMT): CT123 (Wed, 24 Jan 2018 22:34:55 GMT): CT123 (Wed, 24 Jan 2018 22:34:55 GMT): Randyshu2018 (Thu, 25 Jan 2018 02:15:36 GMT): mvaibhavshah (Thu, 25 Jan 2018 06:55:21 GMT): lcinacio (Thu, 25 Jan 2018 08:06:46 GMT): lcinacio (Thu, 25 Jan 2018 08:11:48 GMT): lcinacio (Thu, 25 Jan 2018 08:13:49 GMT): lcinacio (Thu, 25 Jan 2018 08:17:54 GMT): mahoney1 (Thu, 25 Jan 2018 08:18:54 GMT): dineshJagadees (Thu, 25 Jan 2018 09:03:42 GMT): rthatcher (Thu, 25 Jan 2018 09:46:47 GMT): arner (Thu, 25 Jan 2018 09:53:54 GMT): rthatcher (Thu, 25 Jan 2018 10:16:31 GMT): Krishnapv (Thu, 25 Jan 2018 10:22:10 GMT): Krishnapv (Thu, 25 Jan 2018 10:22:52 GMT): Krishnapv (Thu, 25 Jan 2018 10:23:33 GMT): SergeySadon (Thu, 25 Jan 2018 10:24:16 GMT): SergeySadon (Thu, 25 Jan 2018 10:24:16 GMT): SergeySadon (Thu, 25 Jan 2018 10:24:16 GMT): davidkel (Thu, 25 Jan 2018 10:27:55 GMT): Krishnapv (Thu, 25 Jan 2018 10:29:24 GMT): Krishnapv (Thu, 25 Jan 2018 10:29:58 GMT): SergeySadon (Thu, 25 Jan 2018 10:40:37 GMT): SergeySadon (Thu, 25 Jan 2018 10:40:37 GMT): Krishnapv (Thu, 25 Jan 2018 10:42:11 GMT): davidkel (Thu, 25 Jan 2018 10:52:38 GMT): davidkel (Thu, 25 Jan 2018 10:52:38 GMT): mahoney1 (Thu, 25 Jan 2018 10:57:54 GMT): mahoney1 (Thu, 25 Jan 2018 11:04:57 GMT): Arindam (Thu, 25 Jan 2018 11:26:04 GMT): mahoney1 (Thu, 25 Jan 2018 11:26:49 GMT): mahoney1 (Thu, 25 Jan 2018 11:26:49 GMT): Arindam (Thu, 25 Jan 2018 11:29:10 GMT): reyaansh (Thu, 25 Jan 2018 11:56:16 GMT): vitorduarte (Thu, 25 Jan 2018 12:11:31 GMT): ibmiotspark (Thu, 25 Jan 2018 12:27:46 GMT): Krishnapv (Thu, 25 Jan 2018 13:01:44 GMT): Pranoti (Thu, 25 Jan 2018 13:11:30 GMT): Pranoti (Thu, 25 Jan 2018 13:19:57 GMT): Pranoti (Thu, 25 Jan 2018 13:19:57 GMT): rthatcher (Thu, 25 Jan 2018 13:44:12 GMT): CT123 (Thu, 25 Jan 2018 14:03:29 GMT): CT123 (Thu, 25 Jan 2018 14:03:29 GMT): CorentinPacaud (Thu, 25 Jan 2018 14:33:53 GMT): davidkel (Thu, 25 Jan 2018 15:16:50 GMT): CorentinPacaud (Thu, 25 Jan 2018 15:18:12 GMT): CorentinPacaud (Thu, 25 Jan 2018 15:18:20 GMT): CorentinPacaud (Thu, 25 Jan 2018 15:19:46 GMT): CorentinPacaud (Thu, 25 Jan 2018 15:19:46 GMT): lucasdf (Thu, 25 Jan 2018 16:12:19 GMT): lucasdf (Thu, 25 Jan 2018 16:12:19 GMT): mahoney1 (Thu, 25 Jan 2018 16:31:36 GMT): CT123 (Thu, 25 Jan 2018 16:58:49 GMT): kpv 1 (Thu, 25 Jan 2018 17:17:52 GMT): kpv 1 (Thu, 25 Jan 2018 17:18:34 GMT): kpv 1 (Thu, 25 Jan 2018 17:19:00 GMT): kpv 1 (Thu, 25 Jan 2018 17:19:16 GMT): vitorduarte (Thu, 25 Jan 2018 17:47:59 GMT): vitorduarte (Thu, 25 Jan 2018 17:47:59 GMT): vitorduarte (Thu, 25 Jan 2018 17:47:59 GMT): kpv 1 (Thu, 25 Jan 2018 17:59:27 GMT): lucasdf (Thu, 25 Jan 2018 17:59:29 GMT): kpv 1 (Thu, 25 Jan 2018 17:59:39 GMT): vitorduarte (Thu, 25 Jan 2018 18:02:55 GMT): kpv 1 (Thu, 25 Jan 2018 18:04:17 GMT): vitorduarte (Thu, 25 Jan 2018 18:04:38 GMT): vitorduarte (Thu, 25 Jan 2018 18:04:38 GMT): kpv 1 (Thu, 25 Jan 2018 18:05:08 GMT): vitorduarte (Thu, 25 Jan 2018 18:07:51 GMT): kpv 1 (Thu, 25 Jan 2018 18:09:08 GMT): mahoney1 (Thu, 25 Jan 2018 18:09:54 GMT): kpv 1 (Thu, 25 Jan 2018 18:14:52 GMT): mahoney1 (Thu, 25 Jan 2018 18:14:54 GMT): TBigjohn (Thu, 25 Jan 2018 21:24:44 GMT): ShaunC (Thu, 25 Jan 2018 22:34:16 GMT): jasonZhang (Thu, 25 Jan 2018 23:15:48 GMT): jasonZhang (Thu, 25 Jan 2018 23:16:47 GMT): jasonZhang (Thu, 25 Jan 2018 23:18:23 GMT): jasonZhang (Thu, 25 Jan 2018 23:18:34 GMT): Dark_Knight (Thu, 25 Jan 2018 23:29:01 GMT): Dark_Knight (Thu, 25 Jan 2018 23:29:29 GMT): Dark_Knight (Thu, 25 Jan 2018 23:29:44 GMT): Dark_Knight (Thu, 25 Jan 2018 23:30:46 GMT): Dark_Knight (Thu, 25 Jan 2018 23:50:01 GMT): pichayuthk (Fri, 26 Jan 2018 03:18:59 GMT): pichayuthk (Fri, 26 Jan 2018 03:18:59 GMT): Demin (Fri, 26 Jan 2018 10:30:51 GMT): rthatcher (Fri, 26 Jan 2018 12:08:42 GMT): rthatcher (Fri, 26 Jan 2018 12:08:42 GMT): AkshayJindal (Fri, 26 Jan 2018 12:28:38 GMT): AkshayJindal (Fri, 26 Jan 2018 12:28:38 GMT): benjamin.matten (Fri, 26 Jan 2018 12:45:22 GMT): rthatcher (Fri, 26 Jan 2018 13:29:27 GMT): rthatcher (Fri, 26 Jan 2018 13:29:27 GMT): sativ (Fri, 26 Jan 2018 15:33:59 GMT): lucasdf (Fri, 26 Jan 2018 18:51:07 GMT): lucasdf (Fri, 26 Jan 2018 18:51:07 GMT): ajayvuyyuru (Fri, 26 Jan 2018 19:03:12 GMT): sascha (Fri, 26 Jan 2018 19:50:30 GMT): sascha (Fri, 26 Jan 2018 19:51:00 GMT): CT123 (Fri, 26 Jan 2018 19:57:10 GMT): CT123 (Fri, 26 Jan 2018 19:57:10 GMT): CT123 (Fri, 26 Jan 2018 20:01:58 GMT): jasonZhang (Fri, 26 Jan 2018 20:06:10 GMT): jasonZhang (Fri, 26 Jan 2018 20:06:12 GMT): jasonZhang (Fri, 26 Jan 2018 20:07:06 GMT): Jarrioja (Fri, 26 Jan 2018 20:22:24 GMT): CT123 (Fri, 26 Jan 2018 20:22:25 GMT): cdpotts (Fri, 26 Jan 2018 21:31:04 GMT): kiranthakkar (Fri, 26 Jan 2018 22:44:00 GMT): cdpotts (Fri, 26 Jan 2018 23:35:00 GMT): prestige (Sat, 27 Jan 2018 01:56:07 GMT): prestige (Sat, 27 Jan 2018 01:56:15 GMT): joojis (Sat, 27 Jan 2018 06:12:19 GMT): BlockHead 2 (Sat, 27 Jan 2018 09:25:39 GMT): Jakeeyturner (Sat, 27 Jan 2018 11:13:34 GMT): smithsj (Sat, 27 Jan 2018 11:36:14 GMT): yoko (Sat, 27 Jan 2018 16:13:25 GMT): yoko (Sat, 27 Jan 2018 16:14:55 GMT): yoko (Sat, 27 Jan 2018 16:14:55 GMT): yoko (Sat, 27 Jan 2018 16:14:55 GMT): Dark_Knight (Sat, 27 Jan 2018 16:52:58 GMT): Dark_Knight (Sat, 27 Jan 2018 16:52:58 GMT): andreasp1994 (Sat, 27 Jan 2018 19:45:19 GMT): andreasp1994 (Sat, 27 Jan 2018 19:45:42 GMT): davidkel (Sat, 27 Jan 2018 22:23:47 GMT): sascha (Sat, 27 Jan 2018 23:42:36 GMT): BlockHead 2 (Sun, 28 Jan 2018 04:43:11 GMT): JayaprakashSalian (Sun, 28 Jan 2018 06:10:55 GMT): JayaprakashSalian (Sun, 28 Jan 2018 06:11:21 GMT): davidkel (Sun, 28 Jan 2018 10:45:55 GMT): lucasdf (Sun, 28 Jan 2018 13:02:00 GMT): lucasdf (Sun, 28 Jan 2018 13:02:00 GMT): lucasdf (Sun, 28 Jan 2018 13:02:00 GMT): lucasdf (Sun, 28 Jan 2018 13:02:00 GMT): jack21 (Sun, 28 Jan 2018 13:10:27 GMT): lindybrits (Sun, 28 Jan 2018 14:18:00 GMT): andreasp1994 (Sun, 28 Jan 2018 15:03:49 GMT): andreasp1994 (Sun, 28 Jan 2018 15:07:20 GMT): ShaunC (Sun, 28 Jan 2018 17:27:50 GMT): ShaunC (Sun, 28 Jan 2018 18:02:08 GMT): ShaunC (Sun, 28 Jan 2018 18:08:51 GMT): CorgiSong (Sun, 28 Jan 2018 22:04:05 GMT): CorgiSong (Sun, 28 Jan 2018 22:05:32 GMT): CorgiSong (Sun, 28 Jan 2018 22:06:46 GMT): CorgiSong (Sun, 28 Jan 2018 22:06:52 GMT): CorgiSong (Sun, 28 Jan 2018 22:07:01 GMT): CorgiSong (Sun, 28 Jan 2018 22:07:14 GMT): CorgiSong (Sun, 28 Jan 2018 22:07:45 GMT): CorgiSong (Sun, 28 Jan 2018 22:08:00 GMT): CorgiSong (Sun, 28 Jan 2018 22:08:15 GMT): CorgiSong (Sun, 28 Jan 2018 22:08:42 GMT): CorgiSong (Sun, 28 Jan 2018 22:08:51 GMT): CorgiSong (Sun, 28 Jan 2018 22:09:02 GMT): andreasp1994 (Sun, 28 Jan 2018 22:15:39 GMT): ShaunC (Sun, 28 Jan 2018 22:56:43 GMT): BlockHead 2 (Sun, 28 Jan 2018 23:08:55 GMT): sascha (Mon, 29 Jan 2018 00:36:53 GMT): sascha (Mon, 29 Jan 2018 00:48:10 GMT): dondonabicom (Mon, 29 Jan 2018 01:22:33 GMT): EvansChang (Mon, 29 Jan 2018 02:00:42 GMT): hounded (Mon, 29 Jan 2018 03:03:08 GMT): pichayuthk (Mon, 29 Jan 2018 04:52:38 GMT): andreasp1994 (Mon, 29 Jan 2018 05:08:24 GMT): rahulkannur (Mon, 29 Jan 2018 05:33:09 GMT): Pranoti (Mon, 29 Jan 2018 05:36:29 GMT): pichayuthk (Mon, 29 Jan 2018 05:43:43 GMT): rahulkannur (Mon, 29 Jan 2018 06:13:31 GMT): zhaochy (Mon, 29 Jan 2018 06:13:49 GMT): varun-raj (Mon, 29 Jan 2018 06:43:01 GMT): AkshayMisal (Mon, 29 Jan 2018 06:46:14 GMT): rahulkannur (Mon, 29 Jan 2018 07:06:15 GMT): varun-raj (Mon, 29 Jan 2018 07:12:31 GMT): pichayuthk (Mon, 29 Jan 2018 07:19:00 GMT): pichayuthk (Mon, 29 Jan 2018 07:19:00 GMT): varun-raj (Mon, 29 Jan 2018 07:21:32 GMT): varunagarwal (Mon, 29 Jan 2018 07:29:14 GMT): varunagarwal (Mon, 29 Jan 2018 07:29:55 GMT): sunwayjiao (Mon, 29 Jan 2018 07:37:14 GMT): prmdmshra (Mon, 29 Jan 2018 09:22:48 GMT): AkshayJindal (Mon, 29 Jan 2018 09:28:41 GMT): smithsj (Mon, 29 Jan 2018 09:41:10 GMT): rthatcher (Mon, 29 Jan 2018 09:42:28 GMT): Randyshu2018 (Mon, 29 Jan 2018 09:50:57 GMT): rajivgandhi2010 (Mon, 29 Jan 2018 09:56:25 GMT): rajivgandhi2010 (Mon, 29 Jan 2018 09:57:42 GMT): rajivgandhi2010 (Mon, 29 Jan 2018 09:58:04 GMT): rajivgandhi2010 (Mon, 29 Jan 2018 09:58:15 GMT): rajivgandhi2010 (Mon, 29 Jan 2018 09:58:24 GMT): rajivgandhi2010 (Mon, 29 Jan 2018 09:58:26 GMT): rajivgandhi2010 (Mon, 29 Jan 2018 09:58:46 GMT): smithsj (Mon, 29 Jan 2018 10:00:26 GMT): rajivgandhi2010 (Mon, 29 Jan 2018 10:02:57 GMT): rajivgandhi2010 (Mon, 29 Jan 2018 10:03:08 GMT): rthatcher (Mon, 29 Jan 2018 10:13:47 GMT): mahoney1 (Mon, 29 Jan 2018 10:14:42 GMT): mahoney1 (Mon, 29 Jan 2018 10:14:42 GMT): smithsj (Mon, 29 Jan 2018 10:19:01 GMT): rthatcher (Mon, 29 Jan 2018 10:20:11 GMT): Randyshu2018 (Mon, 29 Jan 2018 10:28:36 GMT): mahoney1 (Mon, 29 Jan 2018 11:02:48 GMT): varunagarwal (Mon, 29 Jan 2018 11:02:59 GMT): varunagarwal (Mon, 29 Jan 2018 11:03:30 GMT): varunagarwal (Mon, 29 Jan 2018 11:03:35 GMT): sascha (Mon, 29 Jan 2018 11:05:14 GMT): sascha (Mon, 29 Jan 2018 11:05:14 GMT): varunagarwal (Mon, 29 Jan 2018 11:06:25 GMT): varunagarwal (Mon, 29 Jan 2018 11:07:06 GMT): sascha (Mon, 29 Jan 2018 11:07:06 GMT): varunagarwal (Mon, 29 Jan 2018 11:07:41 GMT): sascha (Mon, 29 Jan 2018 11:07:56 GMT): mahoney1 (Mon, 29 Jan 2018 11:07:56 GMT): mahoney1 (Mon, 29 Jan 2018 11:07:56 GMT): sascha (Mon, 29 Jan 2018 11:08:15 GMT): varunagarwal (Mon, 29 Jan 2018 11:08:32 GMT): varunagarwal (Mon, 29 Jan 2018 11:08:36 GMT): sascha (Mon, 29 Jan 2018 11:09:05 GMT): varunagarwal (Mon, 29 Jan 2018 11:09:27 GMT): varunagarwal (Mon, 29 Jan 2018 11:09:32 GMT): varunagarwal (Mon, 29 Jan 2018 11:11:14 GMT): mahoney1 (Mon, 29 Jan 2018 11:11:21 GMT): mahoney1 (Mon, 29 Jan 2018 11:11:21 GMT): mahoney1 (Mon, 29 Jan 2018 11:11:21 GMT): varunagarwal (Mon, 29 Jan 2018 11:13:08 GMT): varunagarwal (Mon, 29 Jan 2018 11:13:27 GMT): mahoney1 (Mon, 29 Jan 2018 11:16:37 GMT): krabradosty (Mon, 29 Jan 2018 11:29:43 GMT): krabradosty (Mon, 29 Jan 2018 11:29:43 GMT): krabradosty (Mon, 29 Jan 2018 11:29:43 GMT): DanielKrueger (Mon, 29 Jan 2018 11:45:39 GMT): andreasp1994 (Mon, 29 Jan 2018 11:53:09 GMT): andreasp1994 (Mon, 29 Jan 2018 11:53:16 GMT): rthatcher (Mon, 29 Jan 2018 12:04:16 GMT): andreasp1994 (Mon, 29 Jan 2018 12:06:15 GMT): rthatcher (Mon, 29 Jan 2018 12:09:36 GMT): andreasp1994 (Mon, 29 Jan 2018 12:12:40 GMT): varunagarwal (Mon, 29 Jan 2018 12:12:44 GMT): andreasp1994 (Mon, 29 Jan 2018 12:14:28 GMT): rthatcher (Mon, 29 Jan 2018 12:16:02 GMT): andreasp1994 (Mon, 29 Jan 2018 12:18:31 GMT): rthatcher (Mon, 29 Jan 2018 12:20:14 GMT): rthatcher (Mon, 29 Jan 2018 12:21:58 GMT): andreasp1994 (Mon, 29 Jan 2018 12:23:01 GMT): varunagarwal (Mon, 29 Jan 2018 12:28:26 GMT): rthatcher (Mon, 29 Jan 2018 12:38:04 GMT): varunagarwal (Mon, 29 Jan 2018 12:39:53 GMT): rthatcher (Mon, 29 Jan 2018 13:03:27 GMT): CiaranMcveigh (Mon, 29 Jan 2018 13:05:56 GMT): CiaranMcveigh (Mon, 29 Jan 2018 13:08:45 GMT): lucasdf (Mon, 29 Jan 2018 13:49:28 GMT): lucasdf (Mon, 29 Jan 2018 13:49:28 GMT): lucasdf (Mon, 29 Jan 2018 13:49:28 GMT): CiaranMcveigh (Mon, 29 Jan 2018 14:11:05 GMT): andreasp1994 (Mon, 29 Jan 2018 14:36:20 GMT): CT123 (Mon, 29 Jan 2018 17:46:19 GMT): kpv 1 (Mon, 29 Jan 2018 18:32:27 GMT): Rmannn (Mon, 29 Jan 2018 18:41:02 GMT): Rmannn (Mon, 29 Jan 2018 18:42:48 GMT): Rmannn (Mon, 29 Jan 2018 18:42:48 GMT): CT123 (Mon, 29 Jan 2018 18:48:07 GMT): Rmannn (Mon, 29 Jan 2018 18:48:57 GMT): Rmannn (Mon, 29 Jan 2018 18:48:57 GMT): Rmannn (Mon, 29 Jan 2018 18:49:01 GMT): Rmannn (Mon, 29 Jan 2018 19:06:51 GMT): Rmannn (Mon, 29 Jan 2018 19:06:51 GMT): hounded (Mon, 29 Jan 2018 19:57:37 GMT): gWOLF3 (Mon, 29 Jan 2018 20:03:57 GMT): gWOLF3 (Mon, 29 Jan 2018 20:08:58 GMT): lucasdf (Mon, 29 Jan 2018 20:09:03 GMT): lucasdf (Mon, 29 Jan 2018 20:11:08 GMT): lucasdf (Mon, 29 Jan 2018 20:11:08 GMT): lucasdf (Mon, 29 Jan 2018 20:11:08 GMT): Rmannn (Mon, 29 Jan 2018 20:23:31 GMT): neharprodduturi (Mon, 29 Jan 2018 22:23:32 GMT): jess (Mon, 29 Jan 2018 22:57:24 GMT): jess (Mon, 29 Jan 2018 23:11:29 GMT): jess (Mon, 29 Jan 2018 23:11:39 GMT): jess (Mon, 29 Jan 2018 23:12:16 GMT): jess (Mon, 29 Jan 2018 23:12:23 GMT): jess (Mon, 29 Jan 2018 23:15:36 GMT): roblav96 (Tue, 30 Jan 2018 02:23:53 GMT): username343 (Tue, 30 Jan 2018 04:45:44 GMT): saeedi (Tue, 30 Jan 2018 05:54:43 GMT): wininani (Tue, 30 Jan 2018 06:24:14 GMT): jaswanth (Tue, 30 Jan 2018 06:33:11 GMT): jaswanth (Tue, 30 Jan 2018 06:33:11 GMT): james3443112 (Tue, 30 Jan 2018 06:54:07 GMT): james3443112 (Tue, 30 Jan 2018 06:54:44 GMT): SudheerKaspa (Tue, 30 Jan 2018 07:35:38 GMT): davidkel (Tue, 30 Jan 2018 07:54:40 GMT): james3443112 (Tue, 30 Jan 2018 07:54:52 GMT): davidkel (Tue, 30 Jan 2018 07:55:43 GMT): james3443112 (Tue, 30 Jan 2018 07:57:28 GMT): james3443112 (Tue, 30 Jan 2018 07:58:12 GMT): davidkel (Tue, 30 Jan 2018 08:00:51 GMT): james3443112 (Tue, 30 Jan 2018 08:01:49 GMT): davidkel (Tue, 30 Jan 2018 08:03:12 GMT): davidkel (Tue, 30 Jan 2018 08:03:12 GMT): james3443112 (Tue, 30 Jan 2018 08:05:45 GMT): davidkel (Tue, 30 Jan 2018 08:07:07 GMT): james3443112 (Tue, 30 Jan 2018 08:16:24 GMT): james3443112 (Tue, 30 Jan 2018 08:19:12 GMT): james3443112 (Tue, 30 Jan 2018 08:19:20 GMT): james3443112 (Tue, 30 Jan 2018 08:19:35 GMT): james3443112 (Tue, 30 Jan 2018 08:19:46 GMT): davidkel (Tue, 30 Jan 2018 08:21:57 GMT): davidkel (Tue, 30 Jan 2018 08:21:57 GMT): james3443112 (Tue, 30 Jan 2018 08:22:52 GMT): davidkel (Tue, 30 Jan 2018 08:23:20 GMT): james3443112 (Tue, 30 Jan 2018 08:27:22 GMT): davidkel (Tue, 30 Jan 2018 08:28:32 GMT): james3443112 (Tue, 30 Jan 2018 08:29:00 GMT): james3443112 (Tue, 30 Jan 2018 08:33:27 GMT): davidkel (Tue, 30 Jan 2018 08:33:56 GMT): james3443112 (Tue, 30 Jan 2018 08:34:10 GMT): davidkel (Tue, 30 Jan 2018 08:43:55 GMT): james3443112 (Tue, 30 Jan 2018 08:45:46 GMT): rthatcher (Tue, 30 Jan 2018 09:18:36 GMT): rthatcher (Tue, 30 Jan 2018 09:31:49 GMT): AshwinKumar844129 (Tue, 30 Jan 2018 09:53:37 GMT): AshwinKumar844129 (Tue, 30 Jan 2018 09:57:31 GMT): AshwinKumar844129 (Tue, 30 Jan 2018 09:58:34 GMT): rthatcher (Tue, 30 Jan 2018 10:04:01 GMT): Randyshu2018 (Tue, 30 Jan 2018 10:08:22 GMT): Randyshu2018 (Tue, 30 Jan 2018 10:09:12 GMT): username343 (Tue, 30 Jan 2018 10:11:08 GMT): Randyshu2018 (Tue, 30 Jan 2018 10:12:24 GMT): Randyshu2018 (Tue, 30 Jan 2018 10:13:32 GMT): rthatcher (Tue, 30 Jan 2018 10:14:25 GMT): AshwinKumar844129 (Tue, 30 Jan 2018 10:22:40 GMT): mahoney1 (Tue, 30 Jan 2018 10:23:55 GMT): mahoney1 (Tue, 30 Jan 2018 10:23:55 GMT): mahoney1 (Tue, 30 Jan 2018 10:23:55 GMT): mahoney1 (Tue, 30 Jan 2018 10:54:13 GMT): rupach (Tue, 30 Jan 2018 11:00:06 GMT): rupach (Tue, 30 Jan 2018 11:02:26 GMT): matrisis (Tue, 30 Jan 2018 11:03:10 GMT): matrisis (Tue, 30 Jan 2018 11:03:10 GMT): Randyshu2018 (Tue, 30 Jan 2018 11:06:36 GMT): varunagarwal (Tue, 30 Jan 2018 11:34:23 GMT): varunagarwal (Tue, 30 Jan 2018 11:34:25 GMT): varunagarwal (Tue, 30 Jan 2018 11:34:48 GMT): Preetam007 (Tue, 30 Jan 2018 11:37:07 GMT): jaswanth (Tue, 30 Jan 2018 11:38:08 GMT): varunagarwal (Tue, 30 Jan 2018 11:39:08 GMT): jaswanth (Tue, 30 Jan 2018 11:41:32 GMT): varunagarwal (Tue, 30 Jan 2018 11:41:50 GMT): varunagarwal (Tue, 30 Jan 2018 11:42:00 GMT): varunagarwal (Tue, 30 Jan 2018 11:42:04 GMT): jaswanth (Tue, 30 Jan 2018 11:43:17 GMT): jaswanth (Tue, 30 Jan 2018 11:43:17 GMT): varunagarwal (Tue, 30 Jan 2018 11:44:48 GMT): varunagarwal (Tue, 30 Jan 2018 11:45:02 GMT): rthatcher (Tue, 30 Jan 2018 11:47:27 GMT): varunagarwal (Tue, 30 Jan 2018 11:48:05 GMT): varunagarwal (Tue, 30 Jan 2018 11:48:41 GMT): MartinKrmer (Tue, 30 Jan 2018 12:55:10 GMT): mahoney1 (Tue, 30 Jan 2018 14:29:40 GMT): Juanan_Tejero (Tue, 30 Jan 2018 14:39:05 GMT): erbernardino (Tue, 30 Jan 2018 17:05:17 GMT): gen_el (Tue, 30 Jan 2018 18:01:23 GMT): gen_el (Tue, 30 Jan 2018 18:01:36 GMT): gen_el (Tue, 30 Jan 2018 18:01:56 GMT): gen_el (Tue, 30 Jan 2018 18:01:56 GMT): gen_el (Tue, 30 Jan 2018 18:02:18 GMT): gen_el (Tue, 30 Jan 2018 18:03:49 GMT): gen_el (Tue, 30 Jan 2018 18:03:49 GMT): fahimehajari (Tue, 30 Jan 2018 20:50:57 GMT): amit0705 (Tue, 30 Jan 2018 20:54:07 GMT): amit0705 (Tue, 30 Jan 2018 20:56:08 GMT): Rmannn (Tue, 30 Jan 2018 23:01:42 GMT): Rmannn (Tue, 30 Jan 2018 23:01:42 GMT): Rmannn (Tue, 30 Jan 2018 23:01:42 GMT): CT123 (Tue, 30 Jan 2018 23:13:37 GMT): amit0705 (Tue, 30 Jan 2018 23:41:20 GMT): andreasp1994 (Wed, 31 Jan 2018 02:22:56 GMT): andreasp1994 (Wed, 31 Jan 2018 02:23:33 GMT): jayg67 (Wed, 31 Jan 2018 06:39:41 GMT): piyush (Wed, 31 Jan 2018 07:21:57 GMT): piyush (Wed, 31 Jan 2018 07:39:58 GMT): piyush (Wed, 31 Jan 2018 07:39:58 GMT): piyush (Wed, 31 Jan 2018 08:18:06 GMT): rthatcher (Wed, 31 Jan 2018 09:29:06 GMT): nasserfci (Wed, 31 Jan 2018 09:43:32 GMT): mahoney1 (Wed, 31 Jan 2018 10:07:35 GMT): wininani (Wed, 31 Jan 2018 10:08:56 GMT): wininani (Wed, 31 Jan 2018 10:10:35 GMT): wininani (Wed, 31 Jan 2018 10:11:07 GMT): wininani (Wed, 31 Jan 2018 10:11:07 GMT): mahoney1 (Wed, 31 Jan 2018 10:13:58 GMT): mahoney1 (Wed, 31 Jan 2018 10:34:30 GMT): piyush (Wed, 31 Jan 2018 10:41:34 GMT): wininani (Wed, 31 Jan 2018 10:48:23 GMT): SudheerKaspa (Wed, 31 Jan 2018 10:56:39 GMT): SudheerKaspa (Wed, 31 Jan 2018 10:58:51 GMT): mahoney1 (Wed, 31 Jan 2018 11:01:40 GMT): mahoney1 (Wed, 31 Jan 2018 11:01:40 GMT): mahoney1 (Wed, 31 Jan 2018 11:01:40 GMT): nasserfci (Wed, 31 Jan 2018 11:05:07 GMT): rthatcher (Wed, 31 Jan 2018 11:05:11 GMT): SudheerKaspa (Wed, 31 Jan 2018 11:08:02 GMT): gen_el (Wed, 31 Jan 2018 11:08:11 GMT): SudheerKaspa (Wed, 31 Jan 2018 11:08:29 GMT): mahoney1 (Wed, 31 Jan 2018 11:13:00 GMT): mahoney1 (Wed, 31 Jan 2018 11:15:02 GMT): SudheerKaspa (Wed, 31 Jan 2018 11:15:56 GMT): SudheerKaspa (Wed, 31 Jan 2018 11:17:53 GMT): mahoney1 (Wed, 31 Jan 2018 11:33:41 GMT): mahoney1 (Wed, 31 Jan 2018 11:33:41 GMT): mahoney1 (Wed, 31 Jan 2018 11:33:41 GMT): SudheerKaspa (Wed, 31 Jan 2018 12:16:13 GMT): CorentinPacaud (Wed, 31 Jan 2018 13:00:35 GMT): rthatcher (Wed, 31 Jan 2018 13:25:37 GMT): TBigjohn (Wed, 31 Jan 2018 14:01:44 GMT): mahoney1 (Wed, 31 Jan 2018 14:05:43 GMT): mahoney1 (Wed, 31 Jan 2018 14:05:43 GMT): mahoney1 (Wed, 31 Jan 2018 14:24:22 GMT): mahoney1 (Wed, 31 Jan 2018 14:24:22 GMT): mahoney1 (Wed, 31 Jan 2018 14:24:22 GMT): TBigjohn (Wed, 31 Jan 2018 15:05:26 GMT): mahoney1 (Wed, 31 Jan 2018 15:23:36 GMT): TBigjohn (Wed, 31 Jan 2018 16:19:32 GMT): TBigjohn (Wed, 31 Jan 2018 16:25:04 GMT): avagarwal (Wed, 31 Jan 2018 17:00:32 GMT): avagarwal (Wed, 31 Jan 2018 17:03:35 GMT): SamuelDare (Wed, 31 Jan 2018 17:06:49 GMT): robvic (Wed, 31 Jan 2018 17:37:48 GMT): mahoney1 (Wed, 31 Jan 2018 17:52:35 GMT): mahoney1 (Wed, 31 Jan 2018 17:52:35 GMT): mahoney1 (Wed, 31 Jan 2018 17:52:35 GMT): mahoney1 (Wed, 31 Jan 2018 17:52:35 GMT): mahoney1 (Wed, 31 Jan 2018 18:07:17 GMT): mahoney1 (Wed, 31 Jan 2018 18:07:17 GMT): NunoEdgarGub1 (Wed, 31 Jan 2018 20:26:13 GMT): TBigjohn (Wed, 31 Jan 2018 21:29:12 GMT): TBigjohn (Wed, 31 Jan 2018 21:35:22 GMT): rrrodrig (Wed, 31 Jan 2018 23:32:01 GMT): hounded (Wed, 31 Jan 2018 23:37:47 GMT): avagarwal (Thu, 01 Feb 2018 01:41:10 GMT): james3443112 (Thu, 01 Feb 2018 01:52:57 GMT): LeDang (Thu, 01 Feb 2018 04:01:03 GMT): qb (Thu, 01 Feb 2018 07:19:47 GMT): qb (Thu, 01 Feb 2018 07:20:03 GMT): varun-raj (Thu, 01 Feb 2018 07:29:16 GMT): SudheerKaspa (Thu, 01 Feb 2018 09:20:13 GMT): rthatcher (Thu, 01 Feb 2018 09:39:28 GMT): niroshana (Thu, 01 Feb 2018 09:43:09 GMT): rthatcher (Thu, 01 Feb 2018 09:47:50 GMT): niroshana (Thu, 01 Feb 2018 09:53:04 GMT): wininani (Thu, 01 Feb 2018 09:55:08 GMT): gen_el (Thu, 01 Feb 2018 09:55:52 GMT): gen_el (Thu, 01 Feb 2018 09:55:52 GMT): gen_el (Thu, 01 Feb 2018 09:55:52 GMT): gen_el (Thu, 01 Feb 2018 09:55:52 GMT): wininani (Thu, 01 Feb 2018 09:56:04 GMT): varun-raj (Thu, 01 Feb 2018 09:58:18 GMT): gen_el (Thu, 01 Feb 2018 10:03:36 GMT): gen_el (Thu, 01 Feb 2018 10:03:36 GMT): varun-raj (Thu, 01 Feb 2018 10:05:20 GMT): praveencastelino (Thu, 01 Feb 2018 10:55:44 GMT): rthatcher (Thu, 01 Feb 2018 11:07:38 GMT): SamuelDare (Thu, 01 Feb 2018 11:36:00 GMT): varun-raj (Thu, 01 Feb 2018 11:37:24 GMT): SamuelDare (Thu, 01 Feb 2018 11:39:29 GMT): ranjeetsanglee (Thu, 01 Feb 2018 11:40:30 GMT): davidkel (Thu, 01 Feb 2018 11:41:02 GMT): davidkel (Thu, 01 Feb 2018 11:41:02 GMT): davidkel (Thu, 01 Feb 2018 11:41:02 GMT): varun-raj (Thu, 01 Feb 2018 11:45:09 GMT): varun-raj (Thu, 01 Feb 2018 11:46:07 GMT): AshishMishra 1 (Thu, 01 Feb 2018 11:50:18 GMT): AshishMishra 1 (Thu, 01 Feb 2018 11:50:18 GMT): mohamskh (Thu, 01 Feb 2018 11:50:55 GMT): ranjeetsanglee (Thu, 01 Feb 2018 11:53:47 GMT): mohamskh (Thu, 01 Feb 2018 11:53:57 GMT): davidkel (Thu, 01 Feb 2018 11:54:30 GMT): mohamskh (Thu, 01 Feb 2018 11:54:32 GMT): mohamskh (Thu, 01 Feb 2018 11:55:56 GMT): mohamskh (Thu, 01 Feb 2018 11:56:48 GMT): varun-raj (Thu, 01 Feb 2018 11:57:24 GMT): rthatcher (Thu, 01 Feb 2018 12:59:05 GMT): rthatcher (Thu, 01 Feb 2018 12:59:05 GMT): mahoney1 (Thu, 01 Feb 2018 14:46:54 GMT): mahoney1 (Thu, 01 Feb 2018 15:00:55 GMT): mahoney1 (Thu, 01 Feb 2018 15:00:55 GMT): SteveYardumian (Thu, 01 Feb 2018 15:56:49 GMT): SteveYardumian (Thu, 01 Feb 2018 15:58:37 GMT): SteveYardumian (Thu, 01 Feb 2018 16:29:46 GMT): mahoney1 (Thu, 01 Feb 2018 16:34:00 GMT): mahoney1 (Thu, 01 Feb 2018 16:34:06 GMT): nemesis1346 (Thu, 01 Feb 2018 17:14:48 GMT): mohitk1905 (Thu, 01 Feb 2018 18:25:39 GMT): mohitk1905 (Thu, 01 Feb 2018 18:26:24 GMT): davidkel (Thu, 01 Feb 2018 18:54:11 GMT): sourishkrout (Thu, 01 Feb 2018 19:01:14 GMT): MuhammadSalah (Thu, 01 Feb 2018 20:00:57 GMT): MuhammadSalah (Thu, 01 Feb 2018 20:01:49 GMT): MuhammadSalah (Thu, 01 Feb 2018 20:03:33 GMT): theathibm (Thu, 01 Feb 2018 20:11:05 GMT): davidkel (Thu, 01 Feb 2018 20:20:25 GMT): theathibm (Thu, 01 Feb 2018 20:21:14 GMT): giridharg (Thu, 01 Feb 2018 20:21:18 GMT): theathibm (Thu, 01 Feb 2018 20:21:33 GMT): theathibm (Thu, 01 Feb 2018 20:23:14 GMT): theathibm (Thu, 01 Feb 2018 20:23:30 GMT): theathibm (Thu, 01 Feb 2018 20:23:57 GMT): davidkel (Thu, 01 Feb 2018 20:46:08 GMT): davidkel (Thu, 01 Feb 2018 20:46:08 GMT): davidkel (Thu, 01 Feb 2018 20:46:08 GMT): CorentinPacaud (Thu, 01 Feb 2018 22:23:26 GMT): CorentinPacaud (Thu, 01 Feb 2018 22:23:26 GMT): CorentinPacaud (Thu, 01 Feb 2018 22:24:06 GMT): tfuanig (Thu, 01 Feb 2018 22:53:12 GMT): tfuanig (Thu, 01 Feb 2018 22:53:12 GMT): tfuanig (Thu, 01 Feb 2018 22:53:12 GMT): JamesAndersonTistel (Thu, 01 Feb 2018 22:53:37 GMT): kiranthakkar (Thu, 01 Feb 2018 23:03:41 GMT): kiranthakkar (Thu, 01 Feb 2018 23:03:41 GMT): kiranthakkar (Thu, 01 Feb 2018 23:05:48 GMT): hounded (Fri, 02 Feb 2018 00:05:15 GMT): vkblue (Fri, 02 Feb 2018 02:40:24 GMT): varun-raj (Fri, 02 Feb 2018 02:42:25 GMT): vkblue (Fri, 02 Feb 2018 02:47:21 GMT): vkblue (Fri, 02 Feb 2018 02:47:21 GMT): varun-raj (Fri, 02 Feb 2018 04:25:28 GMT): gen_el (Fri, 02 Feb 2018 04:43:53 GMT): jaguarg (Fri, 02 Feb 2018 08:31:15 GMT): subigyaupadhyay (Fri, 02 Feb 2018 09:09:56 GMT): subigyaupadhyay (Fri, 02 Feb 2018 09:14:21 GMT): subigyaupadhyay (Fri, 02 Feb 2018 09:14:21 GMT): wininani (Fri, 02 Feb 2018 09:15:24 GMT): subigyaupadhyay (Fri, 02 Feb 2018 09:18:02 GMT): wininani (Fri, 02 Feb 2018 09:21:12 GMT): wininani (Fri, 02 Feb 2018 09:21:12 GMT): wininani (Fri, 02 Feb 2018 09:21:14 GMT): mahoney1 (Fri, 02 Feb 2018 09:46:48 GMT): wininani (Fri, 02 Feb 2018 09:53:39 GMT): wininani (Fri, 02 Feb 2018 09:53:39 GMT): mahoney1 (Fri, 02 Feb 2018 09:54:40 GMT): subigyaupadhyay (Fri, 02 Feb 2018 09:55:41 GMT): subigyaupadhyay (Fri, 02 Feb 2018 09:57:11 GMT): subigyaupadhyay (Fri, 02 Feb 2018 09:58:26 GMT): mahoney1 (Fri, 02 Feb 2018 10:08:43 GMT): mahoney1 (Fri, 02 Feb 2018 10:18:44 GMT): mahoney1 (Fri, 02 Feb 2018 10:18:44 GMT): subigyaupadhyay (Fri, 02 Feb 2018 10:24:19 GMT): subigyaupadhyay (Fri, 02 Feb 2018 10:24:43 GMT): mahoney1 (Fri, 02 Feb 2018 10:55:59 GMT): mahoney1 (Fri, 02 Feb 2018 10:58:52 GMT): mahoney1 (Fri, 02 Feb 2018 10:58:52 GMT): mahoney1 (Fri, 02 Feb 2018 10:58:52 GMT): navdevl (Fri, 02 Feb 2018 11:18:42 GMT): mahoney1 (Fri, 02 Feb 2018 11:25:43 GMT): mahoney1 (Fri, 02 Feb 2018 11:25:43 GMT): prmdmshra (Fri, 02 Feb 2018 11:43:58 GMT): mahoney1 (Fri, 02 Feb 2018 12:20:01 GMT): prmdmshra (Fri, 02 Feb 2018 12:41:57 GMT): NickTombeur (Fri, 02 Feb 2018 13:05:14 GMT): mahoney1 (Fri, 02 Feb 2018 13:12:05 GMT): nekyl (Fri, 02 Feb 2018 13:15:08 GMT): jcap (Fri, 02 Feb 2018 15:51:49 GMT): jcap (Fri, 02 Feb 2018 15:52:47 GMT): jcap (Fri, 02 Feb 2018 15:52:57 GMT): cdpotts (Fri, 02 Feb 2018 16:17:01 GMT): cdpotts (Fri, 02 Feb 2018 16:18:22 GMT): majestade (Fri, 02 Feb 2018 16:22:03 GMT): majestade (Fri, 02 Feb 2018 16:22:45 GMT): mahoney1 (Fri, 02 Feb 2018 16:29:16 GMT): mahoney1 (Fri, 02 Feb 2018 16:29:16 GMT): mahoney1 (Fri, 02 Feb 2018 16:29:16 GMT): mahoney1 (Fri, 02 Feb 2018 16:29:16 GMT): mahoney1 (Fri, 02 Feb 2018 16:47:57 GMT): mahoney1 (Fri, 02 Feb 2018 16:52:05 GMT): mahoney1 (Fri, 02 Feb 2018 16:52:05 GMT): jcap (Fri, 02 Feb 2018 17:41:14 GMT): jcap (Fri, 02 Feb 2018 17:46:06 GMT): jasonZhang (Fri, 02 Feb 2018 18:13:37 GMT): jasonZhang (Fri, 02 Feb 2018 18:13:39 GMT): jcap (Fri, 02 Feb 2018 18:28:39 GMT): jcap (Fri, 02 Feb 2018 18:28:52 GMT): jcap (Fri, 02 Feb 2018 18:29:13 GMT): jasonZhang (Fri, 02 Feb 2018 18:29:49 GMT): jcap (Fri, 02 Feb 2018 18:30:18 GMT): jcap (Fri, 02 Feb 2018 18:30:18 GMT): jasonZhang (Fri, 02 Feb 2018 18:32:57 GMT): jasonZhang (Fri, 02 Feb 2018 18:33:08 GMT): jasonZhang (Fri, 02 Feb 2018 18:34:04 GMT): jcap (Fri, 02 Feb 2018 18:34:26 GMT): jasonZhang (Fri, 02 Feb 2018 18:35:33 GMT): jcap (Fri, 02 Feb 2018 18:35:45 GMT): jasonZhang (Fri, 02 Feb 2018 18:35:55 GMT): jcap (Fri, 02 Feb 2018 18:36:10 GMT): jcap (Fri, 02 Feb 2018 18:38:05 GMT): jcap (Fri, 02 Feb 2018 18:38:32 GMT): jasonZhang (Fri, 02 Feb 2018 18:59:39 GMT): jasonZhang (Fri, 02 Feb 2018 18:59:59 GMT): jasonZhang (Fri, 02 Feb 2018 19:00:53 GMT): RadW2020 (Fri, 02 Feb 2018 19:43:07 GMT): AkshayJindal (Fri, 02 Feb 2018 20:12:36 GMT): AkshayJindal (Fri, 02 Feb 2018 20:12:36 GMT): AkshayJindal (Fri, 02 Feb 2018 20:12:36 GMT): AkshayJindal (Fri, 02 Feb 2018 20:12:36 GMT): subigyaupadhyay (Fri, 02 Feb 2018 20:57:06 GMT): subigyaupadhyay (Fri, 02 Feb 2018 21:14:43 GMT): jasonZhang (Fri, 02 Feb 2018 21:59:15 GMT): CyberCal (Sat, 03 Feb 2018 03:55:00 GMT): CyberCal (Sat, 03 Feb 2018 03:55:19 GMT): CyberCal (Sat, 03 Feb 2018 03:56:15 GMT): romany (Sat, 03 Feb 2018 07:20:17 GMT): rbole (Sat, 03 Feb 2018 09:02:03 GMT): Jakeeyturner (Sat, 03 Feb 2018 11:21:46 GMT): atonit (Sat, 03 Feb 2018 12:27:13 GMT): varun-raj (Sat, 03 Feb 2018 12:30:35 GMT): varun-raj (Sat, 03 Feb 2018 12:31:31 GMT): davidkel (Sat, 03 Feb 2018 13:44:47 GMT): davidkel (Sat, 03 Feb 2018 13:44:47 GMT): davidkel (Sat, 03 Feb 2018 13:45:21 GMT): davidkel (Sat, 03 Feb 2018 13:51:45 GMT): acprofessionale (Sat, 03 Feb 2018 14:00:46 GMT): varun-raj (Sat, 03 Feb 2018 16:23:13 GMT): davidkel (Sat, 03 Feb 2018 16:40:35 GMT): varun-raj (Sat, 03 Feb 2018 16:41:10 GMT): varun-raj (Sat, 03 Feb 2018 16:41:20 GMT): varun-raj (Sat, 03 Feb 2018 16:41:49 GMT): varun-raj (Sat, 03 Feb 2018 16:42:02 GMT): varun-raj (Sat, 03 Feb 2018 16:42:08 GMT): davidkel (Sat, 03 Feb 2018 16:45:45 GMT): varun-raj (Sat, 03 Feb 2018 16:51:17 GMT): prmdmshra (Sat, 03 Feb 2018 19:40:39 GMT): prmdmshra (Sat, 03 Feb 2018 19:40:39 GMT): prmdmshra (Sat, 03 Feb 2018 19:40:39 GMT): DanielCentrelli (Sat, 03 Feb 2018 20:09:58 GMT): DreuGit (Sat, 03 Feb 2018 21:27:40 GMT): DreuGit (Sat, 03 Feb 2018 21:28:28 GMT): DreuGit (Sat, 03 Feb 2018 21:29:21 GMT): DreuGit (Sat, 03 Feb 2018 21:29:45 GMT): DreuGit (Sat, 03 Feb 2018 21:38:55 GMT): joshuaherman (Sat, 03 Feb 2018 23:09:52 GMT): Rishabh-Sharma (Sun, 04 Feb 2018 07:38:24 GMT): Rishabh-Sharma (Sun, 04 Feb 2018 07:38:41 GMT): Rishabh-Sharma (Sun, 04 Feb 2018 07:39:04 GMT): Dark_Knight (Sun, 04 Feb 2018 13:14:49 GMT): Dark_Knight (Sun, 04 Feb 2018 13:15:05 GMT): Dark_Knight (Sun, 04 Feb 2018 13:16:33 GMT): piiizh (Sun, 04 Feb 2018 16:48:52 GMT): SwePalm (Sun, 04 Feb 2018 17:36:32 GMT): Dark_Knight (Sun, 04 Feb 2018 19:36:01 GMT): ajithjosek (Sun, 04 Feb 2018 20:13:12 GMT): arunmitteam (Sun, 04 Feb 2018 21:34:37 GMT): arunmitteam (Sun, 04 Feb 2018 21:35:21 GMT): arunmitteam (Sun, 04 Feb 2018 21:36:14 GMT): arunmitteam (Sun, 04 Feb 2018 21:52:11 GMT): rhansharief (Mon, 05 Feb 2018 03:45:53 GMT): rhansharief (Mon, 05 Feb 2018 05:10:27 GMT): umamani113 (Mon, 05 Feb 2018 06:21:09 GMT): niroshana (Mon, 05 Feb 2018 09:23:01 GMT): rthatcher (Mon, 05 Feb 2018 09:26:38 GMT): rthatcher (Mon, 05 Feb 2018 09:31:50 GMT): niroshana (Mon, 05 Feb 2018 09:40:25 GMT): niroshana (Mon, 05 Feb 2018 09:40:58 GMT): mahoney1 (Mon, 05 Feb 2018 10:01:46 GMT): mahoney1 (Mon, 05 Feb 2018 10:20:22 GMT): Aniket-Engg (Mon, 05 Feb 2018 10:22:19 GMT): umamani113 (Mon, 05 Feb 2018 10:56:19 GMT): mahoney1 (Mon, 05 Feb 2018 11:22:25 GMT): mahoney1 (Mon, 05 Feb 2018 11:22:25 GMT): Aniket-Engg (Mon, 05 Feb 2018 11:27:52 GMT): Aniket-Engg (Mon, 05 Feb 2018 11:29:13 GMT): mahoney1 (Mon, 05 Feb 2018 11:52:55 GMT): mahoney1 (Mon, 05 Feb 2018 11:52:55 GMT): mahoney1 (Mon, 05 Feb 2018 11:52:55 GMT): Aniket-Engg (Mon, 05 Feb 2018 11:55:29 GMT): damodaranp (Mon, 05 Feb 2018 11:57:48 GMT): Aniket-Engg (Mon, 05 Feb 2018 11:58:41 GMT): mahoney1 (Mon, 05 Feb 2018 12:01:27 GMT): mahoney1 (Mon, 05 Feb 2018 12:01:27 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:03:22 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:03:22 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:03:22 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:03:22 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:03:22 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:03:22 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:03:40 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:07:40 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:14:32 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:15:03 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:16:27 GMT): mahoney1 (Mon, 05 Feb 2018 12:20:47 GMT): mahoney1 (Mon, 05 Feb 2018 12:20:47 GMT): mahoney1 (Mon, 05 Feb 2018 12:20:47 GMT): mahoney1 (Mon, 05 Feb 2018 12:20:47 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:21:28 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:21:56 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:21:56 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:22:48 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:22:48 GMT): chunhui (Mon, 05 Feb 2018 12:37:44 GMT): mahoney1 (Mon, 05 Feb 2018 12:38:11 GMT): mahoney1 (Mon, 05 Feb 2018 12:41:15 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:41:19 GMT): chunhui (Mon, 05 Feb 2018 12:47:27 GMT): mahoney1 (Mon, 05 Feb 2018 12:49:40 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:55:10 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:55:37 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:55:52 GMT): Aniket-Engg (Mon, 05 Feb 2018 12:59:49 GMT): chunhui (Mon, 05 Feb 2018 13:04:14 GMT): TBigjohn (Mon, 05 Feb 2018 13:11:26 GMT): mahoney1 (Mon, 05 Feb 2018 13:11:28 GMT): mahoney1 (Mon, 05 Feb 2018 13:11:28 GMT): Aniket-Engg (Mon, 05 Feb 2018 13:13:39 GMT): Aniket-Engg (Mon, 05 Feb 2018 13:13:53 GMT): Aniket-Engg (Mon, 05 Feb 2018 13:13:53 GMT): wininani (Mon, 05 Feb 2018 13:17:19 GMT): Aniket-Engg (Mon, 05 Feb 2018 13:22:22 GMT): Aniket-Engg (Mon, 05 Feb 2018 13:22:22 GMT): mahoney1 (Mon, 05 Feb 2018 13:25:54 GMT): mahoney1 (Mon, 05 Feb 2018 13:26:27 GMT): Aniket-Engg (Mon, 05 Feb 2018 13:26:53 GMT): Aniket-Engg (Mon, 05 Feb 2018 13:29:17 GMT): rthatcher (Mon, 05 Feb 2018 13:30:41 GMT): Aniket-Engg (Mon, 05 Feb 2018 13:33:27 GMT): Aniket-Engg (Mon, 05 Feb 2018 13:33:27 GMT): Aniket-Engg (Mon, 05 Feb 2018 13:33:27 GMT): chunhui (Mon, 05 Feb 2018 13:34:18 GMT): wininani (Mon, 05 Feb 2018 13:38:07 GMT): rthatcher (Mon, 05 Feb 2018 13:46:37 GMT): Aniket-Engg (Mon, 05 Feb 2018 13:48:59 GMT): Aniket-Engg (Mon, 05 Feb 2018 13:52:45 GMT): Aniket-Engg (Mon, 05 Feb 2018 13:52:45 GMT): wininani (Mon, 05 Feb 2018 14:01:29 GMT): rthatcher (Mon, 05 Feb 2018 14:06:05 GMT): lucasdf (Mon, 05 Feb 2018 14:06:06 GMT): rthatcher (Mon, 05 Feb 2018 14:07:55 GMT): lucasdf (Mon, 05 Feb 2018 14:08:22 GMT): mahoney1 (Mon, 05 Feb 2018 14:26:18 GMT): Aniket-Engg (Mon, 05 Feb 2018 14:29:58 GMT): chunhui (Mon, 05 Feb 2018 14:38:35 GMT): chunhui (Mon, 05 Feb 2018 14:38:35 GMT): mahoney1 (Mon, 05 Feb 2018 14:38:37 GMT): Aniket-Engg (Mon, 05 Feb 2018 14:43:05 GMT): Aniket-Engg (Mon, 05 Feb 2018 14:43:16 GMT): TBigjohn (Mon, 05 Feb 2018 14:57:35 GMT): TBigjohn (Mon, 05 Feb 2018 14:58:21 GMT): a.ochs (Mon, 05 Feb 2018 15:23:55 GMT): SamuelDare (Mon, 05 Feb 2018 15:32:41 GMT): SamuelDare (Mon, 05 Feb 2018 15:33:00 GMT): rthatcher (Mon, 05 Feb 2018 15:54:42 GMT): mahoney1 (Mon, 05 Feb 2018 15:58:42 GMT): sativ (Mon, 05 Feb 2018 16:00:32 GMT): SamuelDare (Mon, 05 Feb 2018 16:08:54 GMT): SamuelDare (Mon, 05 Feb 2018 16:09:12 GMT): SamuelDare (Mon, 05 Feb 2018 16:09:12 GMT): SamuelDare (Mon, 05 Feb 2018 16:09:12 GMT): SamuelDare (Mon, 05 Feb 2018 16:13:28 GMT): Jakeeyturner (Mon, 05 Feb 2018 16:33:27 GMT): SamuelDare (Mon, 05 Feb 2018 16:36:34 GMT): Jakeeyturner (Mon, 05 Feb 2018 16:39:51 GMT): rthatcher (Mon, 05 Feb 2018 16:50:18 GMT): Aniket-Engg (Mon, 05 Feb 2018 16:53:29 GMT): davidkel (Mon, 05 Feb 2018 16:54:13 GMT): Aniket-Engg (Mon, 05 Feb 2018 16:58:18 GMT): mahoney1 (Mon, 05 Feb 2018 17:01:17 GMT): YukiTruckServices (Mon, 05 Feb 2018 18:20:41 GMT): YukiTruckServices (Mon, 05 Feb 2018 18:21:04 GMT): CT123 (Mon, 05 Feb 2018 22:19:11 GMT): CT123 (Mon, 05 Feb 2018 22:19:11 GMT): CT123 (Mon, 05 Feb 2018 22:19:11 GMT): CT123 (Mon, 05 Feb 2018 22:19:11 GMT): CT123 (Mon, 05 Feb 2018 22:19:11 GMT): CT123 (Mon, 05 Feb 2018 23:31:23 GMT): msarres (Mon, 05 Feb 2018 23:49:01 GMT): jagz (Tue, 06 Feb 2018 01:08:24 GMT): umamani113 (Tue, 06 Feb 2018 05:25:22 GMT): wininani (Tue, 06 Feb 2018 07:39:08 GMT): rthatcher (Tue, 06 Feb 2018 09:43:06 GMT): wininani (Tue, 06 Feb 2018 10:09:49 GMT): rthatcher (Tue, 06 Feb 2018 10:14:51 GMT): wininani (Tue, 06 Feb 2018 10:16:20 GMT): Elulup (Tue, 06 Feb 2018 10:44:13 GMT): KenSmz (Tue, 06 Feb 2018 10:47:57 GMT): devth (Tue, 06 Feb 2018 11:48:45 GMT): devth (Tue, 06 Feb 2018 11:53:55 GMT): mahoney1 (Tue, 06 Feb 2018 11:55:22 GMT): mahoney1 (Tue, 06 Feb 2018 11:55:22 GMT): mahoney1 (Tue, 06 Feb 2018 12:20:30 GMT): CorentinPacaud (Tue, 06 Feb 2018 13:04:08 GMT): CorentinPacaud (Tue, 06 Feb 2018 13:06:59 GMT): CorentinPacaud (Tue, 06 Feb 2018 13:07:05 GMT): CorentinPacaud (Tue, 06 Feb 2018 13:07:05 GMT): Pranoti (Tue, 06 Feb 2018 13:22:02 GMT): CorentinPacaud (Tue, 06 Feb 2018 13:24:42 GMT): Pranoti (Tue, 06 Feb 2018 13:31:45 GMT): CorentinPacaud (Tue, 06 Feb 2018 13:33:58 GMT): CorentinPacaud (Tue, 06 Feb 2018 13:33:58 GMT): CorentinPacaud (Tue, 06 Feb 2018 13:34:52 GMT): Pranoti (Tue, 06 Feb 2018 13:40:08 GMT): mahoney1 (Tue, 06 Feb 2018 13:56:18 GMT): mahoney1 (Tue, 06 Feb 2018 13:56:18 GMT): mahoney1 (Tue, 06 Feb 2018 13:56:18 GMT): mahoney1 (Tue, 06 Feb 2018 13:58:04 GMT): CorentinPacaud (Tue, 06 Feb 2018 14:03:27 GMT): rthatcher (Tue, 06 Feb 2018 14:08:46 GMT): rthatcher (Tue, 06 Feb 2018 14:08:46 GMT): CorentinPacaud (Tue, 06 Feb 2018 14:11:39 GMT): mahoney1 (Tue, 06 Feb 2018 14:46:34 GMT): doubleb (Tue, 06 Feb 2018 16:24:30 GMT): doubleb (Tue, 06 Feb 2018 16:24:38 GMT): doubleb (Tue, 06 Feb 2018 16:25:08 GMT): rthatcher (Tue, 06 Feb 2018 16:42:41 GMT): sativ (Tue, 06 Feb 2018 17:01:51 GMT): sativ (Tue, 06 Feb 2018 17:01:51 GMT): doubleb (Tue, 06 Feb 2018 17:03:39 GMT): doubleb (Tue, 06 Feb 2018 17:04:36 GMT): doubleb (Tue, 06 Feb 2018 17:05:34 GMT): lucasdf (Tue, 06 Feb 2018 17:05:39 GMT): doubleb (Tue, 06 Feb 2018 17:05:48 GMT): rthatcher (Tue, 06 Feb 2018 17:09:48 GMT): doubleb (Tue, 06 Feb 2018 17:15:11 GMT): doubleb (Tue, 06 Feb 2018 17:15:11 GMT): doubleb (Tue, 06 Feb 2018 17:17:52 GMT): rthatcher (Tue, 06 Feb 2018 17:21:22 GMT): rthatcher (Tue, 06 Feb 2018 17:24:59 GMT): doubleb (Tue, 06 Feb 2018 17:25:05 GMT): lucasdf (Tue, 06 Feb 2018 17:27:28 GMT): lucasdf (Tue, 06 Feb 2018 17:28:39 GMT): lucasdf (Tue, 06 Feb 2018 17:28:39 GMT): rthatcher (Tue, 06 Feb 2018 17:29:11 GMT): lucasdf (Tue, 06 Feb 2018 17:29:37 GMT): rthatcher (Tue, 06 Feb 2018 17:33:35 GMT): Dark_Knight (Tue, 06 Feb 2018 18:41:45 GMT): lucasdf (Tue, 06 Feb 2018 18:44:02 GMT): Brook 28 (Tue, 06 Feb 2018 18:48:28 GMT): Dark_Knight (Tue, 06 Feb 2018 18:49:37 GMT): Brook 28 (Tue, 06 Feb 2018 18:49:48 GMT): lucasdf (Tue, 06 Feb 2018 18:53:30 GMT): nemesis1346 (Tue, 06 Feb 2018 18:55:04 GMT): nemesis1346 (Tue, 06 Feb 2018 18:55:09 GMT): nemesis1346 (Tue, 06 Feb 2018 18:55:17 GMT): nemesis1346 (Tue, 06 Feb 2018 18:55:21 GMT): Dark_Knight (Tue, 06 Feb 2018 18:55:34 GMT): nemesis1346 (Tue, 06 Feb 2018 18:55:52 GMT): nemesis1346 (Tue, 06 Feb 2018 18:56:00 GMT): nemesis1346 (Tue, 06 Feb 2018 18:56:11 GMT): nemesis1346 (Tue, 06 Feb 2018 18:56:22 GMT): nemesis1346 (Tue, 06 Feb 2018 18:56:29 GMT): nemesis1346 (Tue, 06 Feb 2018 18:56:39 GMT): nemesis1346 (Tue, 06 Feb 2018 18:56:45 GMT): nemesis1346 (Tue, 06 Feb 2018 18:56:48 GMT): malengatiger (Tue, 06 Feb 2018 18:56:55 GMT): lucasdf (Tue, 06 Feb 2018 19:03:42 GMT): Brook 28 (Tue, 06 Feb 2018 19:19:04 GMT): lucasdf (Tue, 06 Feb 2018 19:30:15 GMT): CT123 (Tue, 06 Feb 2018 19:30:45 GMT): CT123 (Tue, 06 Feb 2018 19:30:45 GMT): doubleb (Tue, 06 Feb 2018 19:32:40 GMT): doubleb (Tue, 06 Feb 2018 19:33:55 GMT): doubleb (Tue, 06 Feb 2018 19:33:55 GMT): CT123 (Tue, 06 Feb 2018 19:41:48 GMT): CT123 (Tue, 06 Feb 2018 19:41:48 GMT): CT123 (Tue, 06 Feb 2018 20:35:15 GMT): CT123 (Tue, 06 Feb 2018 20:35:15 GMT): CT123 (Tue, 06 Feb 2018 23:08:42 GMT): CT123 (Wed, 07 Feb 2018 01:34:49 GMT): MokeyJoy (Wed, 07 Feb 2018 03:33:28 GMT): MokeyJoy (Wed, 07 Feb 2018 03:36:44 GMT): Pranoti (Wed, 07 Feb 2018 05:48:02 GMT): Pranoti (Wed, 07 Feb 2018 05:51:43 GMT): wininani (Wed, 07 Feb 2018 05:54:02 GMT): SudheerKaspa (Wed, 07 Feb 2018 06:01:00 GMT): wininani (Wed, 07 Feb 2018 06:10:16 GMT): SudheerKaspa (Wed, 07 Feb 2018 06:11:53 GMT): chandg12 (Wed, 07 Feb 2018 06:17:41 GMT): Luke_Chen (Wed, 07 Feb 2018 06:28:48 GMT): MokeyJoy (Wed, 07 Feb 2018 06:43:10 GMT): aczire (Wed, 07 Feb 2018 06:53:30 GMT): absingh0 (Wed, 07 Feb 2018 07:25:03 GMT): arunkarri (Wed, 07 Feb 2018 07:29:40 GMT): arunkarri (Wed, 07 Feb 2018 07:29:45 GMT): davidkel (Wed, 07 Feb 2018 07:52:00 GMT): MokeyJoy (Wed, 07 Feb 2018 08:04:08 GMT): davidkel (Wed, 07 Feb 2018 08:13:37 GMT): davidkel (Wed, 07 Feb 2018 08:13:37 GMT): Sneha (Wed, 07 Feb 2018 08:45:51 GMT): rthatcher (Wed, 07 Feb 2018 09:16:27 GMT): MokeyJoy (Wed, 07 Feb 2018 09:24:15 GMT): rthatcher (Wed, 07 Feb 2018 09:30:09 GMT): rthatcher (Wed, 07 Feb 2018 09:32:09 GMT): rthatcher (Wed, 07 Feb 2018 09:34:23 GMT): arunkarri (Wed, 07 Feb 2018 09:39:13 GMT): rthatcher (Wed, 07 Feb 2018 09:39:53 GMT): pranavvr (Wed, 07 Feb 2018 09:55:29 GMT): pranavvr (Wed, 07 Feb 2018 09:56:03 GMT): pranavvr (Wed, 07 Feb 2018 09:56:03 GMT): pranavvr (Wed, 07 Feb 2018 09:56:03 GMT): pranavvr (Wed, 07 Feb 2018 10:08:42 GMT): absingh0 (Wed, 07 Feb 2018 10:18:56 GMT): Sneha (Wed, 07 Feb 2018 10:42:03 GMT): Sneha (Wed, 07 Feb 2018 10:42:03 GMT): SudheerKaspa (Wed, 07 Feb 2018 10:46:53 GMT): Sneha (Wed, 07 Feb 2018 10:50:20 GMT): rthatcher (Wed, 07 Feb 2018 10:54:31 GMT): rthatcher (Wed, 07 Feb 2018 10:54:31 GMT): AkramAlkhalil (Wed, 07 Feb 2018 10:56:57 GMT): AkramAlkhalil (Wed, 07 Feb 2018 10:58:27 GMT): AkramAlkhalil (Wed, 07 Feb 2018 10:58:27 GMT): rthatcher (Wed, 07 Feb 2018 11:00:06 GMT): sravs (Wed, 07 Feb 2018 11:01:03 GMT): MokeyJoy (Wed, 07 Feb 2018 11:01:44 GMT): AkramAlkhalil (Wed, 07 Feb 2018 11:02:36 GMT): AkramAlkhalil (Wed, 07 Feb 2018 11:03:16 GMT): AkramAlkhalil (Wed, 07 Feb 2018 11:05:57 GMT): sravs (Wed, 07 Feb 2018 11:08:36 GMT): AkramAlkhalil (Wed, 07 Feb 2018 11:09:32 GMT): rthatcher (Wed, 07 Feb 2018 11:09:52 GMT): rthatcher (Wed, 07 Feb 2018 11:13:30 GMT): AkramAlkhalil (Wed, 07 Feb 2018 11:14:34 GMT): rthatcher (Wed, 07 Feb 2018 11:22:29 GMT): rthatcher (Wed, 07 Feb 2018 11:34:40 GMT): rthatcher (Wed, 07 Feb 2018 11:34:40 GMT): rthatcher (Wed, 07 Feb 2018 11:34:40 GMT): SudheerKaspa (Wed, 07 Feb 2018 11:36:28 GMT): SudheerKaspa (Wed, 07 Feb 2018 11:36:28 GMT): mahoney1 (Wed, 07 Feb 2018 12:24:59 GMT): mahoney1 (Wed, 07 Feb 2018 12:24:59 GMT): mahoney1 (Wed, 07 Feb 2018 12:42:46 GMT): mahoney1 (Wed, 07 Feb 2018 12:42:46 GMT): jtclark (Wed, 07 Feb 2018 12:56:53 GMT): Pranoti (Wed, 07 Feb 2018 13:19:05 GMT): sstone1 (Wed, 07 Feb 2018 14:35:42 GMT): jtclark (Wed, 07 Feb 2018 14:35:54 GMT): kenjisiu-ibmhk (Wed, 07 Feb 2018 15:08:13 GMT): kenjisiu-ibmhk (Wed, 07 Feb 2018 15:14:38 GMT): kenjisiu-ibmhk (Wed, 07 Feb 2018 15:14:38 GMT): eccheung4 (Wed, 07 Feb 2018 15:25:30 GMT): CorentinPacaud (Wed, 07 Feb 2018 15:35:54 GMT): CorentinPacaud (Wed, 07 Feb 2018 15:36:35 GMT): rthatcher (Wed, 07 Feb 2018 17:10:22 GMT): mabnhdev (Wed, 07 Feb 2018 17:45:05 GMT): mabnhdev (Wed, 07 Feb 2018 17:51:44 GMT): pschwarz (Wed, 07 Feb 2018 18:36:37 GMT): lucasdf (Wed, 07 Feb 2018 19:08:58 GMT): cdpotts (Wed, 07 Feb 2018 19:35:20 GMT): CT123 (Wed, 07 Feb 2018 19:44:58 GMT): tennenjl (Wed, 07 Feb 2018 19:47:47 GMT): tennenjl (Wed, 07 Feb 2018 19:47:47 GMT): tennenjl (Wed, 07 Feb 2018 19:48:37 GMT): cdpotts (Wed, 07 Feb 2018 19:53:14 GMT): sreedharn (Wed, 07 Feb 2018 20:01:28 GMT): y2255236 (Wed, 07 Feb 2018 20:01:30 GMT): y2255236 (Wed, 07 Feb 2018 20:03:22 GMT): y2255236 (Wed, 07 Feb 2018 20:03:36 GMT): CT123 (Wed, 07 Feb 2018 20:39:48 GMT): jagz (Wed, 07 Feb 2018 20:48:51 GMT): jagz (Wed, 07 Feb 2018 20:50:01 GMT): jagz (Wed, 07 Feb 2018 20:50:03 GMT): jagz (Wed, 07 Feb 2018 20:50:52 GMT): jagz (Wed, 07 Feb 2018 20:52:26 GMT): jagz (Wed, 07 Feb 2018 20:53:31 GMT): jagz (Wed, 07 Feb 2018 20:59:43 GMT): jagz (Wed, 07 Feb 2018 20:59:43 GMT): davidkel (Wed, 07 Feb 2018 21:05:45 GMT): aczire (Wed, 07 Feb 2018 21:20:33 GMT): jagz (Thu, 08 Feb 2018 05:58:58 GMT): tk1 (Thu, 08 Feb 2018 06:34:35 GMT): tk1 (Thu, 08 Feb 2018 06:35:49 GMT): tk1 (Thu, 08 Feb 2018 06:37:18 GMT): rhansharief (Thu, 08 Feb 2018 06:55:17 GMT): rhansharief (Thu, 08 Feb 2018 06:55:17 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 07:00:55 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 07:03:23 GMT): james3443112 (Thu, 08 Feb 2018 07:18:13 GMT): james3443112 (Thu, 08 Feb 2018 07:18:26 GMT): AshwinKumar844129 (Thu, 08 Feb 2018 07:19:27 GMT): james3443112 (Thu, 08 Feb 2018 07:19:28 GMT): james3443112 (Thu, 08 Feb 2018 07:19:41 GMT): davidkel (Thu, 08 Feb 2018 07:38:10 GMT): davidkel (Thu, 08 Feb 2018 07:41:56 GMT): rajadilipkolli (Thu, 08 Feb 2018 07:44:55 GMT): rajadilipkolli (Thu, 08 Feb 2018 07:46:08 GMT): rajadilipkolli (Thu, 08 Feb 2018 07:46:41 GMT): rajadilipkolli (Thu, 08 Feb 2018 07:47:32 GMT): rajadilipkolli (Thu, 08 Feb 2018 07:47:44 GMT): james3443112 (Thu, 08 Feb 2018 07:56:14 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 07:57:05 GMT): james3443112 (Thu, 08 Feb 2018 08:01:37 GMT): james3443112 (Thu, 08 Feb 2018 08:02:52 GMT): rajadilipkolli (Thu, 08 Feb 2018 08:04:26 GMT): davidkel (Thu, 08 Feb 2018 08:05:44 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 08:06:10 GMT): rajadilipkolli (Thu, 08 Feb 2018 08:07:19 GMT): rajadilipkolli (Thu, 08 Feb 2018 08:07:27 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 08:08:32 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 08:08:32 GMT): rajadilipkolli (Thu, 08 Feb 2018 08:10:05 GMT): rajadilipkolli (Thu, 08 Feb 2018 08:10:05 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 08:12:34 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 08:13:55 GMT): rajadilipkolli (Thu, 08 Feb 2018 08:16:55 GMT): rajadilipkolli (Thu, 08 Feb 2018 08:17:21 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 08:20:29 GMT): davidkel (Thu, 08 Feb 2018 08:21:26 GMT): rajadilipkolli (Thu, 08 Feb 2018 08:21:53 GMT): james3443112 (Thu, 08 Feb 2018 08:23:26 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 08:24:26 GMT): davidkel (Thu, 08 Feb 2018 08:24:48 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 08:25:20 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 08:25:53 GMT): Switch2Logic (Thu, 08 Feb 2018 08:29:36 GMT): Switch2Logic (Thu, 08 Feb 2018 08:29:43 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 08:32:49 GMT): james3443112 (Thu, 08 Feb 2018 08:38:07 GMT): rajadilipkolli (Thu, 08 Feb 2018 09:08:51 GMT): rajadilipkolli (Thu, 08 Feb 2018 09:09:03 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 09:10:05 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 09:10:05 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 09:10:05 GMT): kenjisiu-ibmhk (Thu, 08 Feb 2018 09:11:24 GMT): rthatcher (Thu, 08 Feb 2018 09:32:24 GMT): Switch2Logic (Thu, 08 Feb 2018 09:33:57 GMT): Switch2Logic (Thu, 08 Feb 2018 09:40:00 GMT): rthatcher (Thu, 08 Feb 2018 10:06:09 GMT): AshwinKumar844129 (Thu, 08 Feb 2018 10:09:40 GMT): CorentinPacaud (Thu, 08 Feb 2018 10:29:23 GMT): JeremyH (Thu, 08 Feb 2018 10:30:58 GMT): mahoney1 (Thu, 08 Feb 2018 10:33:31 GMT): volkanbaran (Thu, 08 Feb 2018 11:24:22 GMT): AkshayJindal (Thu, 08 Feb 2018 12:08:15 GMT): zambon (Thu, 08 Feb 2018 12:31:32 GMT): mahoney1 (Thu, 08 Feb 2018 12:39:14 GMT): lucasdf (Thu, 08 Feb 2018 12:43:36 GMT): mahoney1 (Thu, 08 Feb 2018 12:49:20 GMT): CorentinPacaud (Thu, 08 Feb 2018 13:16:43 GMT): mreddychitti (Thu, 08 Feb 2018 13:25:26 GMT): hendiflex (Thu, 08 Feb 2018 13:49:47 GMT): hendiflex (Thu, 08 Feb 2018 13:53:00 GMT): mahoney1 (Thu, 08 Feb 2018 13:53:53 GMT): CorentinPacaud (Thu, 08 Feb 2018 13:55:01 GMT): CorentinPacaud (Thu, 08 Feb 2018 13:55:01 GMT): mahoney1 (Thu, 08 Feb 2018 14:26:49 GMT): hendiflex (Thu, 08 Feb 2018 14:38:27 GMT): hendiflex (Thu, 08 Feb 2018 14:38:27 GMT): mahoney1 (Thu, 08 Feb 2018 14:52:59 GMT): lucasdf (Thu, 08 Feb 2018 15:00:54 GMT): lucasdf (Thu, 08 Feb 2018 15:00:54 GMT): lucasdf (Thu, 08 Feb 2018 15:00:54 GMT): lucasdf (Thu, 08 Feb 2018 15:00:54 GMT): lucasdf (Thu, 08 Feb 2018 15:00:54 GMT): mahoney1 (Thu, 08 Feb 2018 15:04:59 GMT): mahoney1 (Thu, 08 Feb 2018 15:04:59 GMT): mkvaghani (Thu, 08 Feb 2018 15:39:33 GMT): mkvaghani (Thu, 08 Feb 2018 15:39:37 GMT): Switch2Logic (Thu, 08 Feb 2018 15:41:24 GMT): Switch2Logic (Thu, 08 Feb 2018 15:44:44 GMT): hendiflex (Thu, 08 Feb 2018 15:45:43 GMT): Switch2Logic (Thu, 08 Feb 2018 15:46:41 GMT): mkvaghani (Thu, 08 Feb 2018 15:47:18 GMT): mkvaghani (Thu, 08 Feb 2018 15:48:23 GMT): Switch2Logic (Thu, 08 Feb 2018 15:49:30 GMT): sstone1 (Thu, 08 Feb 2018 15:51:41 GMT): sstone1 (Thu, 08 Feb 2018 15:52:11 GMT): mkvaghani (Thu, 08 Feb 2018 15:52:17 GMT): Switch2Logic (Thu, 08 Feb 2018 15:55:13 GMT): eduardosdgomes (Thu, 08 Feb 2018 15:55:27 GMT): mkvaghani (Thu, 08 Feb 2018 15:56:42 GMT): mkvaghani (Thu, 08 Feb 2018 15:56:50 GMT): lucasdf (Thu, 08 Feb 2018 15:58:24 GMT): lucasdf (Thu, 08 Feb 2018 15:58:24 GMT): lucasdf (Thu, 08 Feb 2018 15:58:24 GMT): Switch2Logic (Thu, 08 Feb 2018 15:58:36 GMT): mkvaghani (Thu, 08 Feb 2018 15:59:59 GMT): rthatcher (Thu, 08 Feb 2018 16:32:00 GMT): Switch2Logic (Thu, 08 Feb 2018 16:36:46 GMT): Switch2Logic (Thu, 08 Feb 2018 16:39:26 GMT): rthatcher (Thu, 08 Feb 2018 16:42:28 GMT): dpadev (Thu, 08 Feb 2018 16:54:23 GMT): dpadev (Thu, 08 Feb 2018 16:55:12 GMT): eduardosdgomes (Thu, 08 Feb 2018 16:55:40 GMT): jtonline (Thu, 08 Feb 2018 17:03:35 GMT): knagware9 (Thu, 08 Feb 2018 17:25:00 GMT): CT123 (Thu, 08 Feb 2018 17:32:41 GMT): CT123 (Thu, 08 Feb 2018 17:37:18 GMT): CT123 (Thu, 08 Feb 2018 17:37:18 GMT): rthatcher (Thu, 08 Feb 2018 18:06:11 GMT): eduardosdgomes (Thu, 08 Feb 2018 18:29:59 GMT): mahoney1 (Thu, 08 Feb 2018 18:32:11 GMT): dan.vaught01 (Thu, 08 Feb 2018 19:14:36 GMT): rmatam (Thu, 08 Feb 2018 19:25:59 GMT): FenixH (Thu, 08 Feb 2018 22:07:17 GMT): FenixH (Thu, 08 Feb 2018 22:09:47 GMT): rbailey (Thu, 08 Feb 2018 23:30:38 GMT): rbailey (Thu, 08 Feb 2018 23:38:05 GMT): gytaco (Thu, 08 Feb 2018 23:38:49 GMT): rbailey (Thu, 08 Feb 2018 23:39:53 GMT): gytaco (Thu, 08 Feb 2018 23:41:20 GMT): gytaco (Thu, 08 Feb 2018 23:42:53 GMT): gytaco (Thu, 08 Feb 2018 23:49:32 GMT): jasonZhang (Fri, 09 Feb 2018 00:44:55 GMT): jasonZhang (Fri, 09 Feb 2018 00:47:56 GMT): virup (Fri, 09 Feb 2018 04:16:37 GMT): virup (Fri, 09 Feb 2018 04:17:04 GMT): kenjisiu-ibmhk (Fri, 09 Feb 2018 04:57:27 GMT): kenjisiu-ibmhk (Fri, 09 Feb 2018 04:58:01 GMT): virup (Fri, 09 Feb 2018 05:29:44 GMT): virup (Fri, 09 Feb 2018 05:30:03 GMT): virup (Fri, 09 Feb 2018 05:30:37 GMT): virup (Fri, 09 Feb 2018 05:30:51 GMT): Luke_Chen (Fri, 09 Feb 2018 06:05:10 GMT): Luke_Chen (Fri, 09 Feb 2018 06:05:10 GMT): Luke_Chen (Fri, 09 Feb 2018 06:05:10 GMT): Luke_Chen (Fri, 09 Feb 2018 06:05:10 GMT): Luke_Chen (Fri, 09 Feb 2018 06:09:20 GMT): MokeyJoy (Fri, 09 Feb 2018 06:32:42 GMT): MokeyJoy (Fri, 09 Feb 2018 06:32:42 GMT): SudheerKaspa (Fri, 09 Feb 2018 06:58:47 GMT): SudheerKaspa (Fri, 09 Feb 2018 06:58:47 GMT): dpadev (Fri, 09 Feb 2018 07:12:12 GMT): davidkel (Fri, 09 Feb 2018 07:35:05 GMT): davidkel (Fri, 09 Feb 2018 07:42:50 GMT): dpadev (Fri, 09 Feb 2018 08:06:29 GMT): dpadev (Fri, 09 Feb 2018 08:06:48 GMT): dpadev (Fri, 09 Feb 2018 08:09:28 GMT): davidkel (Fri, 09 Feb 2018 08:30:44 GMT): dpadev (Fri, 09 Feb 2018 08:37:00 GMT): rthatcher (Fri, 09 Feb 2018 09:30:05 GMT): rthatcher (Fri, 09 Feb 2018 09:37:53 GMT): mahoney1 (Fri, 09 Feb 2018 09:42:07 GMT): Pranoti (Fri, 09 Feb 2018 09:44:05 GMT): Pranoti (Fri, 09 Feb 2018 09:44:05 GMT): Pranoti (Fri, 09 Feb 2018 09:44:05 GMT): Pranoti (Fri, 09 Feb 2018 09:44:35 GMT): Pranoti (Fri, 09 Feb 2018 09:46:31 GMT): rthatcher (Fri, 09 Feb 2018 09:50:10 GMT): Pranoti (Fri, 09 Feb 2018 09:51:28 GMT): rthatcher (Fri, 09 Feb 2018 09:59:13 GMT): rthatcher (Fri, 09 Feb 2018 10:05:38 GMT): ludeiro (Fri, 09 Feb 2018 10:20:24 GMT): Luke_Chen (Fri, 09 Feb 2018 13:40:58 GMT): Luke_Chen (Fri, 09 Feb 2018 13:40:58 GMT): Luke_Chen (Fri, 09 Feb 2018 13:40:58 GMT): Luke_Chen (Fri, 09 Feb 2018 13:40:58 GMT): Luke_Chen (Fri, 09 Feb 2018 13:43:52 GMT): Luke_Chen (Fri, 09 Feb 2018 13:43:52 GMT): Luke_Chen (Fri, 09 Feb 2018 13:43:52 GMT): Luke_Chen (Fri, 09 Feb 2018 13:45:44 GMT): Luke_Chen (Fri, 09 Feb 2018 13:45:44 GMT): ohmeraka (Fri, 09 Feb 2018 13:57:51 GMT): gauthampamu (Fri, 09 Feb 2018 14:03:33 GMT): mahoney1 (Fri, 09 Feb 2018 14:12:40 GMT): Luke_Chen (Fri, 09 Feb 2018 14:20:37 GMT): hendiflex (Fri, 09 Feb 2018 14:24:09 GMT): hendiflex (Fri, 09 Feb 2018 14:27:16 GMT): mahoney1 (Fri, 09 Feb 2018 14:32:08 GMT): newtorob (Fri, 09 Feb 2018 14:34:51 GMT): mahoney1 (Fri, 09 Feb 2018 14:36:24 GMT): mahoney1 (Fri, 09 Feb 2018 14:36:24 GMT): hendiflex (Fri, 09 Feb 2018 14:38:40 GMT): hendiflex (Fri, 09 Feb 2018 14:38:40 GMT): hendiflex (Fri, 09 Feb 2018 14:44:57 GMT): hendiflex (Fri, 09 Feb 2018 14:48:45 GMT): mahoney1 (Fri, 09 Feb 2018 15:27:03 GMT): marque88 (Fri, 09 Feb 2018 15:32:21 GMT): aparolini (Fri, 09 Feb 2018 15:33:48 GMT): aparolini (Fri, 09 Feb 2018 15:33:57 GMT): gauthampamu (Fri, 09 Feb 2018 15:35:35 GMT): rbailey (Fri, 09 Feb 2018 15:41:08 GMT): rbailey (Fri, 09 Feb 2018 15:42:09 GMT): mahoney1 (Fri, 09 Feb 2018 16:07:51 GMT): mahoney1 (Fri, 09 Feb 2018 16:08:13 GMT): aparolini (Fri, 09 Feb 2018 16:22:21 GMT): aparolini (Fri, 09 Feb 2018 16:22:21 GMT): aparolini (Fri, 09 Feb 2018 16:22:21 GMT): jasonZhang (Fri, 09 Feb 2018 17:55:04 GMT): jasonZhang (Fri, 09 Feb 2018 17:55:35 GMT): mahoney1 (Fri, 09 Feb 2018 18:07:52 GMT): mahoney1 (Fri, 09 Feb 2018 18:07:52 GMT): mahoney1 (Fri, 09 Feb 2018 18:07:52 GMT): mahoney1 (Fri, 09 Feb 2018 18:11:47 GMT): mahoney1 (Fri, 09 Feb 2018 18:11:47 GMT): jasonZhang (Fri, 09 Feb 2018 18:19:10 GMT): jasonZhang (Fri, 09 Feb 2018 18:19:39 GMT): jasonZhang (Fri, 09 Feb 2018 18:20:14 GMT): jasonZhang (Fri, 09 Feb 2018 18:24:06 GMT): jasonZhang (Fri, 09 Feb 2018 18:25:40 GMT): jasonZhang (Fri, 09 Feb 2018 18:31:00 GMT): mahoney1 (Fri, 09 Feb 2018 18:42:28 GMT): jasonZhang (Fri, 09 Feb 2018 18:47:06 GMT): jasonZhang (Fri, 09 Feb 2018 18:47:23 GMT): jasonZhang (Fri, 09 Feb 2018 18:48:02 GMT): jasonZhang (Fri, 09 Feb 2018 18:49:14 GMT): mahoney1 (Fri, 09 Feb 2018 19:15:02 GMT): mahoney1 (Fri, 09 Feb 2018 19:15:02 GMT): pdavis39 (Fri, 09 Feb 2018 20:17:07 GMT): pdavis39 (Fri, 09 Feb 2018 20:17:27 GMT): CT123 (Fri, 09 Feb 2018 20:20:23 GMT): CT123 (Fri, 09 Feb 2018 20:20:23 GMT): CT123 (Fri, 09 Feb 2018 20:20:23 GMT): mahoney1 (Fri, 09 Feb 2018 20:34:01 GMT): mahoney1 (Fri, 09 Feb 2018 20:42:02 GMT): jasonZhang (Fri, 09 Feb 2018 21:25:07 GMT): muzakphile (Fri, 09 Feb 2018 21:34:47 GMT): muzakphile (Fri, 09 Feb 2018 21:50:40 GMT): CT123 (Fri, 09 Feb 2018 22:21:44 GMT): pdavis39 (Fri, 09 Feb 2018 22:23:38 GMT): CT123 (Fri, 09 Feb 2018 22:27:12 GMT): CT123 (Fri, 09 Feb 2018 22:27:12 GMT): CT123 (Fri, 09 Feb 2018 22:27:12 GMT): CT123 (Fri, 09 Feb 2018 22:27:12 GMT): CT123 (Fri, 09 Feb 2018 22:33:35 GMT): davidkel (Fri, 09 Feb 2018 22:34:37 GMT): davidkel (Fri, 09 Feb 2018 22:34:37 GMT): davidkel (Fri, 09 Feb 2018 22:34:37 GMT): CT123 (Fri, 09 Feb 2018 22:49:10 GMT): davidkel (Fri, 09 Feb 2018 22:52:10 GMT): CT123 (Fri, 09 Feb 2018 22:52:58 GMT): davidkel (Fri, 09 Feb 2018 22:53:54 GMT): davidkel (Fri, 09 Feb 2018 22:54:13 GMT): CT123 (Fri, 09 Feb 2018 22:55:51 GMT): davidkel (Fri, 09 Feb 2018 22:56:42 GMT): davidkel (Fri, 09 Feb 2018 22:56:42 GMT): davidkel (Fri, 09 Feb 2018 22:57:30 GMT): CT123 (Fri, 09 Feb 2018 22:59:19 GMT): davidkel (Fri, 09 Feb 2018 23:03:43 GMT): davidkel (Fri, 09 Feb 2018 23:04:55 GMT): CT123 (Fri, 09 Feb 2018 23:06:29 GMT): gnpranoy (Sat, 10 Feb 2018 06:38:50 GMT): gnpranoy (Sat, 10 Feb 2018 06:38:57 GMT): gnpranoy (Sat, 10 Feb 2018 06:39:08 GMT): gnpranoy (Sat, 10 Feb 2018 06:40:10 GMT): AkshayJindal (Sat, 10 Feb 2018 09:51:50 GMT): NAWAZUDDIN552 (Sat, 10 Feb 2018 13:50:23 GMT): andreasp1994 (Sat, 10 Feb 2018 15:25:21 GMT): mahoney1 (Sat, 10 Feb 2018 15:48:40 GMT): mahoney1 (Sat, 10 Feb 2018 15:52:13 GMT): mahoney1 (Sat, 10 Feb 2018 16:08:10 GMT): mahoney1 (Sat, 10 Feb 2018 16:08:10 GMT): Nabilel 1 (Sat, 10 Feb 2018 16:24:52 GMT): andreasp1994 (Sat, 10 Feb 2018 17:25:47 GMT): pdavis39 (Sat, 10 Feb 2018 17:34:24 GMT): NAWAZUDDIN552 (Sat, 10 Feb 2018 18:37:53 GMT): NAWAZUDDIN552 (Sat, 10 Feb 2018 18:54:21 GMT): NAWAZUDDIN552 (Sat, 10 Feb 2018 18:55:14 GMT): NAWAZUDDIN552 (Sat, 10 Feb 2018 18:55:52 GMT): NAWAZUDDIN552 (Sat, 10 Feb 2018 18:57:22 GMT): pdavis39 (Sat, 10 Feb 2018 19:19:27 GMT): fjblau (Sat, 10 Feb 2018 21:03:57 GMT): andreasp1994 (Sat, 10 Feb 2018 21:52:28 GMT): andreasp1994 (Sat, 10 Feb 2018 21:52:41 GMT): fjblau (Sat, 10 Feb 2018 21:55:47 GMT): andreasp1994 (Sat, 10 Feb 2018 23:38:30 GMT): Brandon (Sun, 11 Feb 2018 03:06:30 GMT): pravindia (Sun, 11 Feb 2018 04:43:59 GMT): jodafm (Sun, 11 Feb 2018 05:14:05 GMT): mostafa.elsayyad (Sun, 11 Feb 2018 09:32:11 GMT): fjblau (Sun, 11 Feb 2018 11:17:22 GMT): fjblau (Sun, 11 Feb 2018 11:34:41 GMT): fjblau (Sun, 11 Feb 2018 12:03:34 GMT): mahoney1 (Sun, 11 Feb 2018 12:14:13 GMT): mahoney1 (Sun, 11 Feb 2018 12:29:30 GMT): mahoney1 (Sun, 11 Feb 2018 12:32:46 GMT): mahoney1 (Sun, 11 Feb 2018 13:10:02 GMT): Luke_Chen (Sun, 11 Feb 2018 14:12:08 GMT): Luke_Chen (Sun, 11 Feb 2018 14:12:08 GMT): Luke_Chen (Sun, 11 Feb 2018 14:12:08 GMT): Luke_Chen (Sun, 11 Feb 2018 14:12:08 GMT): Luke_Chen (Sun, 11 Feb 2018 14:12:08 GMT): Luke_Chen (Sun, 11 Feb 2018 14:12:08 GMT): Luke_Chen (Sun, 11 Feb 2018 14:12:08 GMT): Luke_Chen (Sun, 11 Feb 2018 14:12:08 GMT): andreasp1994 (Sun, 11 Feb 2018 14:12:17 GMT): davidkel (Sun, 11 Feb 2018 14:20:54 GMT): davidkel (Sun, 11 Feb 2018 14:20:54 GMT): davidkel (Sun, 11 Feb 2018 14:21:46 GMT): Luke_Chen (Sun, 11 Feb 2018 14:21:49 GMT): davidkel (Sun, 11 Feb 2018 14:22:39 GMT): Luke_Chen (Sun, 11 Feb 2018 14:23:31 GMT): Luke_Chen (Sun, 11 Feb 2018 14:23:31 GMT): Luke_Chen (Sun, 11 Feb 2018 14:24:46 GMT): Luke_Chen (Sun, 11 Feb 2018 14:24:46 GMT): davidkel (Sun, 11 Feb 2018 14:30:40 GMT): Luke_Chen (Sun, 11 Feb 2018 14:31:08 GMT): IronZion718 (Sun, 11 Feb 2018 16:14:55 GMT): IronZion718 (Sun, 11 Feb 2018 16:16:03 GMT): MuhammadSalah (Sun, 11 Feb 2018 16:36:15 GMT): jasonZhang (Sun, 11 Feb 2018 17:19:11 GMT): jasonZhang (Sun, 11 Feb 2018 17:19:28 GMT): jasonZhang (Sun, 11 Feb 2018 17:19:40 GMT): sameersubudhi (Sun, 11 Feb 2018 17:25:16 GMT): sameersubudhi (Sun, 11 Feb 2018 17:29:41 GMT): sameersubudhi (Sun, 11 Feb 2018 17:31:52 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:34:00 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:34:14 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:34:21 GMT): sameersubudhi (Sun, 11 Feb 2018 17:37:32 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:37:42 GMT): sameersubudhi (Sun, 11 Feb 2018 17:37:45 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:37:49 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:37:57 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:38:03 GMT): sameersubudhi (Sun, 11 Feb 2018 17:38:50 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:39:02 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:39:09 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:39:14 GMT): sameersubudhi (Sun, 11 Feb 2018 17:39:30 GMT): jasonZhang (Sun, 11 Feb 2018 17:43:44 GMT): jasonZhang (Sun, 11 Feb 2018 17:43:49 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:44:13 GMT): jasonZhang (Sun, 11 Feb 2018 17:44:23 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:44:30 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:44:34 GMT): jasonZhang (Sun, 11 Feb 2018 17:44:40 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:44:42 GMT): jasonZhang (Sun, 11 Feb 2018 17:44:51 GMT): jasonZhang (Sun, 11 Feb 2018 17:45:17 GMT): jasonZhang (Sun, 11 Feb 2018 17:45:59 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:46:07 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:46:29 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:46:35 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:46:42 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:47:24 GMT): sameersubudhi (Sun, 11 Feb 2018 17:47:26 GMT): jasonZhang (Sun, 11 Feb 2018 17:48:10 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:48:22 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:48:27 GMT): jasonZhang (Sun, 11 Feb 2018 17:48:29 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:48:48 GMT): jasonZhang (Sun, 11 Feb 2018 17:49:43 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:51:31 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:51:45 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:51:49 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:52:06 GMT): jasonZhang (Sun, 11 Feb 2018 17:52:24 GMT): MuhammadSalah (Sun, 11 Feb 2018 17:52:36 GMT): sameersubudhi (Sun, 11 Feb 2018 18:09:59 GMT): MuhammadSalah (Sun, 11 Feb 2018 18:10:12 GMT): CorgiSong (Sun, 11 Feb 2018 21:41:23 GMT): CorgiSong (Sun, 11 Feb 2018 21:41:38 GMT): CorgiSong (Sun, 11 Feb 2018 21:42:04 GMT): CorgiSong (Sun, 11 Feb 2018 21:42:19 GMT): CorgiSong (Sun, 11 Feb 2018 21:42:51 GMT): CorgiSong (Sun, 11 Feb 2018 21:43:00 GMT): CorgiSong (Sun, 11 Feb 2018 21:43:23 GMT): chunhui (Mon, 12 Feb 2018 01:42:22 GMT): chunhui (Mon, 12 Feb 2018 01:42:22 GMT): chunhui (Mon, 12 Feb 2018 01:42:22 GMT): chunhui (Mon, 12 Feb 2018 01:42:22 GMT): chunhui (Mon, 12 Feb 2018 01:52:15 GMT): Luke_Chen (Mon, 12 Feb 2018 05:26:26 GMT): Luke_Chen (Mon, 12 Feb 2018 05:26:26 GMT): Luke_Chen (Mon, 12 Feb 2018 05:26:26 GMT): Luke_Chen (Mon, 12 Feb 2018 05:26:26 GMT): Luke_Chen (Mon, 12 Feb 2018 05:30:35 GMT): Luke_Chen (Mon, 12 Feb 2018 05:30:35 GMT): ahmadzafar (Mon, 12 Feb 2018 05:59:14 GMT): Luke_Chen (Mon, 12 Feb 2018 06:02:39 GMT): Luke_Chen (Mon, 12 Feb 2018 06:02:39 GMT): Luke_Chen (Mon, 12 Feb 2018 06:03:11 GMT): Luke_Chen (Mon, 12 Feb 2018 06:04:30 GMT): Luke_Chen (Mon, 12 Feb 2018 06:04:30 GMT): Luke_Chen (Mon, 12 Feb 2018 06:04:30 GMT): Luke_Chen (Mon, 12 Feb 2018 06:07:13 GMT): Pranoti (Mon, 12 Feb 2018 07:11:05 GMT): Pranoti (Mon, 12 Feb 2018 07:11:05 GMT): AkramAlkhalil (Mon, 12 Feb 2018 07:37:47 GMT): Luke_Chen (Mon, 12 Feb 2018 07:48:25 GMT): Sneha (Mon, 12 Feb 2018 07:58:48 GMT): Sneha (Mon, 12 Feb 2018 07:58:48 GMT): Luke_Chen (Mon, 12 Feb 2018 07:59:11 GMT): Pranoti (Mon, 12 Feb 2018 08:24:34 GMT): Pranoti (Mon, 12 Feb 2018 08:30:59 GMT): Luke_Chen (Mon, 12 Feb 2018 08:35:23 GMT): Pranoti (Mon, 12 Feb 2018 08:36:35 GMT): Luke_Chen (Mon, 12 Feb 2018 08:36:46 GMT): Luke_Chen (Mon, 12 Feb 2018 08:37:43 GMT): Pranoti (Mon, 12 Feb 2018 08:39:34 GMT): Luke_Chen (Mon, 12 Feb 2018 08:39:45 GMT): Luke_Chen (Mon, 12 Feb 2018 08:40:45 GMT): Pranoti (Mon, 12 Feb 2018 08:40:59 GMT): Luke_Chen (Mon, 12 Feb 2018 08:43:16 GMT): Luke_Chen (Mon, 12 Feb 2018 08:44:19 GMT): Pranoti (Mon, 12 Feb 2018 08:51:07 GMT): Sneha (Mon, 12 Feb 2018 08:52:08 GMT): rthatcher (Mon, 12 Feb 2018 09:26:17 GMT): rthatcher (Mon, 12 Feb 2018 09:44:24 GMT): uber.twin (Mon, 12 Feb 2018 09:49:36 GMT): uber.twin (Mon, 12 Feb 2018 09:49:36 GMT): Sneha (Mon, 12 Feb 2018 09:53:11 GMT): mahoney1 (Mon, 12 Feb 2018 10:15:47 GMT): mahoney1 (Mon, 12 Feb 2018 10:19:34 GMT): mahoney1 (Mon, 12 Feb 2018 10:22:25 GMT): mahoney1 (Mon, 12 Feb 2018 10:22:25 GMT): mtaram (Mon, 12 Feb 2018 11:17:26 GMT): mtaram (Mon, 12 Feb 2018 11:18:38 GMT): mtaram (Mon, 12 Feb 2018 11:19:06 GMT): mtaram (Mon, 12 Feb 2018 11:19:30 GMT): mtaram (Mon, 12 Feb 2018 11:20:19 GMT): mtaram (Mon, 12 Feb 2018 11:20:55 GMT): mtaram (Mon, 12 Feb 2018 11:21:20 GMT): rthatcher (Mon, 12 Feb 2018 11:51:56 GMT): mtaram (Mon, 12 Feb 2018 11:52:23 GMT): pavaniuppalapati (Mon, 12 Feb 2018 12:22:14 GMT): pavaniuppalapati (Mon, 12 Feb 2018 12:22:34 GMT): pavaniuppalapati (Mon, 12 Feb 2018 12:25:21 GMT): pavaniuppalapati (Mon, 12 Feb 2018 12:26:02 GMT): pavaniuppalapati (Mon, 12 Feb 2018 12:26:27 GMT): pavaniuppalapati (Mon, 12 Feb 2018 12:26:44 GMT): pavaniuppalapati (Mon, 12 Feb 2018 12:27:30 GMT): pavaniuppalapati (Mon, 12 Feb 2018 12:28:25 GMT): sameersubudhi (Mon, 12 Feb 2018 12:35:57 GMT): sameersubudhi (Mon, 12 Feb 2018 12:35:57 GMT): sameersubudhi (Mon, 12 Feb 2018 12:35:57 GMT): AkshayJindal (Mon, 12 Feb 2018 13:26:34 GMT): marek5050 (Mon, 12 Feb 2018 13:40:39 GMT): hendiflex (Mon, 12 Feb 2018 14:00:50 GMT): CorgiSong (Mon, 12 Feb 2018 14:49:38 GMT): CorgiSong (Mon, 12 Feb 2018 14:49:38 GMT): rthatcher (Mon, 12 Feb 2018 14:50:23 GMT): mahoney1 (Mon, 12 Feb 2018 14:51:23 GMT): hendiflex (Mon, 12 Feb 2018 14:53:31 GMT): rthatcher (Mon, 12 Feb 2018 14:53:52 GMT): rthatcher (Mon, 12 Feb 2018 14:53:52 GMT): mahoney1 (Mon, 12 Feb 2018 15:09:06 GMT): mahoney1 (Mon, 12 Feb 2018 15:09:06 GMT): BlockHead 2 (Mon, 12 Feb 2018 15:13:47 GMT): xuzhao103389 (Mon, 12 Feb 2018 15:16:59 GMT): CorgiSong (Mon, 12 Feb 2018 15:25:38 GMT): CorgiSong (Mon, 12 Feb 2018 15:28:34 GMT): CorgiSong (Mon, 12 Feb 2018 15:29:07 GMT): rthatcher (Mon, 12 Feb 2018 15:30:11 GMT): mahoney1 (Mon, 12 Feb 2018 15:31:34 GMT): mahoney1 (Mon, 12 Feb 2018 15:32:03 GMT): mahoney1 (Mon, 12 Feb 2018 15:32:03 GMT): CorgiSong (Mon, 12 Feb 2018 15:33:34 GMT): xuzhao103389 (Mon, 12 Feb 2018 15:34:22 GMT): rthatcher (Mon, 12 Feb 2018 15:39:44 GMT): rthatcher (Mon, 12 Feb 2018 15:39:44 GMT): knagware9 (Mon, 12 Feb 2018 16:22:09 GMT): CorgiSong (Mon, 12 Feb 2018 16:34:16 GMT): rthatcher (Mon, 12 Feb 2018 16:47:46 GMT): jasonZhang (Mon, 12 Feb 2018 17:53:00 GMT): jasonZhang (Mon, 12 Feb 2018 17:53:22 GMT): nanmin (Mon, 12 Feb 2018 19:25:48 GMT): nanmin (Mon, 12 Feb 2018 19:26:52 GMT): jasonZhang (Mon, 12 Feb 2018 20:19:28 GMT): jasonZhang (Mon, 12 Feb 2018 20:19:56 GMT): AkshayJindal (Mon, 12 Feb 2018 20:39:27 GMT): rbailey (Mon, 12 Feb 2018 21:57:59 GMT): rbailey (Mon, 12 Feb 2018 21:59:28 GMT): rbailey (Mon, 12 Feb 2018 22:00:41 GMT): rbailey (Mon, 12 Feb 2018 22:00:41 GMT): DP (Mon, 12 Feb 2018 22:07:36 GMT): aparolini (Mon, 12 Feb 2018 22:17:14 GMT): aparolini (Mon, 12 Feb 2018 22:17:14 GMT): aparolini (Mon, 12 Feb 2018 22:17:14 GMT): aparolini (Mon, 12 Feb 2018 22:17:14 GMT): aparolini (Mon, 12 Feb 2018 22:17:14 GMT): aparolini (Mon, 12 Feb 2018 22:17:14 GMT): aparolini (Mon, 12 Feb 2018 22:17:14 GMT): aparolini (Mon, 12 Feb 2018 22:17:14 GMT): aparolini (Mon, 12 Feb 2018 22:17:14 GMT): aparolini (Mon, 12 Feb 2018 22:17:14 GMT): aparolini (Mon, 12 Feb 2018 22:17:14 GMT): aparolini (Mon, 12 Feb 2018 22:17:14 GMT): CT123 (Mon, 12 Feb 2018 22:51:19 GMT): davidkel (Mon, 12 Feb 2018 22:53:32 GMT): davidkel (Mon, 12 Feb 2018 23:01:28 GMT): rbailey (Mon, 12 Feb 2018 23:01:55 GMT): davidkel (Mon, 12 Feb 2018 23:05:58 GMT): rbailey (Mon, 12 Feb 2018 23:06:31 GMT): davidkel (Mon, 12 Feb 2018 23:09:49 GMT): CT123 (Mon, 12 Feb 2018 23:42:25 GMT): CT123 (Mon, 12 Feb 2018 23:42:25 GMT): atbe (Tue, 13 Feb 2018 02:32:35 GMT): atbe (Tue, 13 Feb 2018 02:40:28 GMT): aneb (Tue, 13 Feb 2018 02:53:34 GMT): aneb (Tue, 13 Feb 2018 02:53:34 GMT): atbe (Tue, 13 Feb 2018 02:53:46 GMT): aneb (Tue, 13 Feb 2018 02:56:37 GMT): atbe (Tue, 13 Feb 2018 02:57:23 GMT): aneb (Tue, 13 Feb 2018 03:00:35 GMT): atbe (Tue, 13 Feb 2018 03:02:22 GMT): atbe (Tue, 13 Feb 2018 03:03:57 GMT): atbe (Tue, 13 Feb 2018 03:04:03 GMT): aneb (Tue, 13 Feb 2018 03:05:27 GMT): atbe (Tue, 13 Feb 2018 03:07:14 GMT): atbe (Tue, 13 Feb 2018 03:07:23 GMT): atbe (Tue, 13 Feb 2018 03:08:30 GMT): atbe (Tue, 13 Feb 2018 03:08:38 GMT): aneb (Tue, 13 Feb 2018 03:13:37 GMT): atbe (Tue, 13 Feb 2018 03:13:47 GMT): atbe (Tue, 13 Feb 2018 03:16:39 GMT): atbe (Tue, 13 Feb 2018 03:18:30 GMT): atbe (Tue, 13 Feb 2018 03:27:15 GMT): aneb (Tue, 13 Feb 2018 03:31:57 GMT): atbe (Tue, 13 Feb 2018 03:38:11 GMT): atbe (Tue, 13 Feb 2018 03:40:25 GMT): aneb (Tue, 13 Feb 2018 03:41:44 GMT): aneb (Tue, 13 Feb 2018 03:41:54 GMT): aneb (Tue, 13 Feb 2018 03:46:11 GMT): atbe (Tue, 13 Feb 2018 03:48:58 GMT): atbe (Tue, 13 Feb 2018 03:49:30 GMT): aneb (Tue, 13 Feb 2018 03:56:07 GMT): atbe (Tue, 13 Feb 2018 03:58:54 GMT): atbe (Tue, 13 Feb 2018 03:59:41 GMT): aneb (Tue, 13 Feb 2018 04:02:27 GMT): aneb (Tue, 13 Feb 2018 04:02:27 GMT): aneb (Tue, 13 Feb 2018 04:02:31 GMT): aneb (Tue, 13 Feb 2018 04:02:36 GMT): atbe (Tue, 13 Feb 2018 04:03:13 GMT): aneb (Tue, 13 Feb 2018 04:06:36 GMT): atbe (Tue, 13 Feb 2018 04:38:39 GMT): wrannaman (Tue, 13 Feb 2018 04:46:24 GMT): ahmadzafar (Tue, 13 Feb 2018 05:14:34 GMT): pavaniuppalapati (Tue, 13 Feb 2018 07:16:29 GMT): pavaniuppalapati (Tue, 13 Feb 2018 07:16:32 GMT): itskhushal (Tue, 13 Feb 2018 08:11:25 GMT): dpurnima0709 (Tue, 13 Feb 2018 08:36:23 GMT): dpurnima0709 (Tue, 13 Feb 2018 08:38:21 GMT): dpurnima0709 (Tue, 13 Feb 2018 08:39:11 GMT): dpurnima0709 (Tue, 13 Feb 2018 09:08:02 GMT): dpurnima0709 (Tue, 13 Feb 2018 09:08:36 GMT): itskhushal (Tue, 13 Feb 2018 09:08:50 GMT): itskhushal (Tue, 13 Feb 2018 09:10:38 GMT): rthatcher (Tue, 13 Feb 2018 09:38:33 GMT): aneb (Tue, 13 Feb 2018 09:40:39 GMT): aneb (Tue, 13 Feb 2018 09:40:39 GMT): aneb (Tue, 13 Feb 2018 09:40:39 GMT): aneb (Tue, 13 Feb 2018 09:40:39 GMT): rthatcher (Tue, 13 Feb 2018 09:41:13 GMT): rthatcher (Tue, 13 Feb 2018 09:47:52 GMT): aneb (Tue, 13 Feb 2018 09:49:49 GMT): pavaniuppalapati (Tue, 13 Feb 2018 09:53:06 GMT): pavaniuppalapati (Tue, 13 Feb 2018 09:53:44 GMT): pavaniuppalapati (Tue, 13 Feb 2018 09:55:04 GMT): pavaniuppalapati (Tue, 13 Feb 2018 09:55:10 GMT): pavaniuppalapati (Tue, 13 Feb 2018 09:55:35 GMT): pavaniuppalapati (Tue, 13 Feb 2018 09:56:03 GMT): rthatcher (Tue, 13 Feb 2018 10:18:56 GMT): jrrt (Tue, 13 Feb 2018 10:28:06 GMT): rthatcher (Tue, 13 Feb 2018 10:28:08 GMT): pavaniuppalapati (Tue, 13 Feb 2018 10:31:36 GMT): pavaniuppalapati (Tue, 13 Feb 2018 10:32:44 GMT): pavaniuppalapati (Tue, 13 Feb 2018 10:33:15 GMT): mabnhdev (Tue, 13 Feb 2018 10:52:42 GMT): rthatcher (Tue, 13 Feb 2018 10:55:12 GMT): pavaniuppalapati (Tue, 13 Feb 2018 11:02:15 GMT): pavaniuppalapati (Tue, 13 Feb 2018 11:03:25 GMT): pavaniuppalapati (Tue, 13 Feb 2018 11:03:36 GMT): pavaniuppalapati (Tue, 13 Feb 2018 11:05:08 GMT): pavaniuppalapati (Tue, 13 Feb 2018 11:05:44 GMT): pavaniuppalapati (Tue, 13 Feb 2018 11:08:00 GMT): itskhushal (Tue, 13 Feb 2018 11:09:07 GMT): rthatcher (Tue, 13 Feb 2018 11:12:37 GMT): rthatcher (Tue, 13 Feb 2018 11:17:25 GMT): itskhushal (Tue, 13 Feb 2018 11:18:13 GMT): rthatcher (Tue, 13 Feb 2018 11:22:31 GMT): pavaniuppalapati (Tue, 13 Feb 2018 11:23:51 GMT): rthatcher (Tue, 13 Feb 2018 11:26:30 GMT): mabnhdev (Tue, 13 Feb 2018 11:28:44 GMT): pavaniuppalapati (Tue, 13 Feb 2018 11:29:42 GMT): pavaniuppalapati (Tue, 13 Feb 2018 11:29:48 GMT): pavaniuppalapati (Tue, 13 Feb 2018 11:30:04 GMT): mahoney1 (Tue, 13 Feb 2018 11:30:47 GMT): niroshana (Tue, 13 Feb 2018 11:34:08 GMT): niroshana (Tue, 13 Feb 2018 11:34:14 GMT): rthatcher (Tue, 13 Feb 2018 11:36:40 GMT): rthatcher (Tue, 13 Feb 2018 11:42:53 GMT): mabnhdev (Tue, 13 Feb 2018 11:43:53 GMT): mahoney1 (Tue, 13 Feb 2018 11:45:57 GMT): aneb (Tue, 13 Feb 2018 11:51:16 GMT): Pranoti (Tue, 13 Feb 2018 13:21:38 GMT): rthatcher (Tue, 13 Feb 2018 14:21:03 GMT): bo2 (Tue, 13 Feb 2018 14:43:51 GMT): bo2 (Tue, 13 Feb 2018 14:45:29 GMT): nphi1212 (Tue, 13 Feb 2018 14:55:12 GMT): CT123 (Tue, 13 Feb 2018 15:02:12 GMT): bo2 (Tue, 13 Feb 2018 15:07:57 GMT): davidkel (Tue, 13 Feb 2018 15:11:42 GMT): pavaniuppalapati (Tue, 13 Feb 2018 17:22:36 GMT): pavaniuppalapati (Tue, 13 Feb 2018 17:23:16 GMT): pavaniuppalapati (Tue, 13 Feb 2018 17:24:40 GMT): rthatcher (Tue, 13 Feb 2018 17:24:51 GMT): pavaniuppalapati (Tue, 13 Feb 2018 17:25:43 GMT): pavaniuppalapati (Tue, 13 Feb 2018 17:29:29 GMT): pavaniuppalapati (Tue, 13 Feb 2018 17:29:44 GMT): rthatcher (Tue, 13 Feb 2018 17:29:53 GMT): rthatcher (Tue, 13 Feb 2018 17:30:40 GMT): pavaniuppalapati (Tue, 13 Feb 2018 17:33:49 GMT): atbe (Tue, 13 Feb 2018 17:38:59 GMT): atbe (Tue, 13 Feb 2018 17:39:08 GMT): atbe (Tue, 13 Feb 2018 17:39:43 GMT): atbe (Tue, 13 Feb 2018 17:50:42 GMT): atbe (Tue, 13 Feb 2018 17:57:42 GMT): atbe (Tue, 13 Feb 2018 18:03:41 GMT): sstone1 (Tue, 13 Feb 2018 18:26:04 GMT): sstone1 (Tue, 13 Feb 2018 18:27:07 GMT): AkramAlkhalil (Tue, 13 Feb 2018 18:34:20 GMT): RodneySa (Tue, 13 Feb 2018 19:00:03 GMT): angelsuarez (Tue, 13 Feb 2018 19:32:34 GMT): CT123 (Tue, 13 Feb 2018 20:40:55 GMT): CT123 (Tue, 13 Feb 2018 20:40:55 GMT): richbl (Tue, 13 Feb 2018 21:17:03 GMT): nphi1212 (Wed, 14 Feb 2018 00:40:34 GMT): nphi1212 (Wed, 14 Feb 2018 00:40:34 GMT): ahmadzafar (Wed, 14 Feb 2018 05:48:01 GMT): prabvi01 (Wed, 14 Feb 2018 06:21:32 GMT): pavaniuppalapati (Wed, 14 Feb 2018 06:21:47 GMT): pavaniuppalapati (Wed, 14 Feb 2018 06:23:33 GMT): pavaniuppalapati (Wed, 14 Feb 2018 06:26:25 GMT): Pranoti (Wed, 14 Feb 2018 06:26:57 GMT): prabvi01 (Wed, 14 Feb 2018 06:28:18 GMT): pavaniuppalapati (Wed, 14 Feb 2018 06:30:33 GMT): pavaniuppalapati (Wed, 14 Feb 2018 06:30:59 GMT): prabvi01 (Wed, 14 Feb 2018 06:31:20 GMT): pavaniuppalapati (Wed, 14 Feb 2018 06:31:38 GMT): prabvi01 (Wed, 14 Feb 2018 06:32:06 GMT): pavaniuppalapati (Wed, 14 Feb 2018 06:32:21 GMT): prabvi01 (Wed, 14 Feb 2018 06:36:19 GMT): pavaniuppalapati (Wed, 14 Feb 2018 06:43:41 GMT): pavaniuppalapati (Wed, 14 Feb 2018 06:44:24 GMT): prabvi01 (Wed, 14 Feb 2018 06:49:36 GMT): prabvi01 (Wed, 14 Feb 2018 06:51:06 GMT): pavaniuppalapati (Wed, 14 Feb 2018 06:52:57 GMT): pavaniuppalapati (Wed, 14 Feb 2018 06:53:05 GMT): pavaniuppalapati (Wed, 14 Feb 2018 07:03:58 GMT): argman (Wed, 14 Feb 2018 08:01:09 GMT): dpurnima0709 (Wed, 14 Feb 2018 08:08:19 GMT): bingo1234 (Wed, 14 Feb 2018 08:10:48 GMT): Sriramj (Wed, 14 Feb 2018 08:14:52 GMT): bingo1234 (Wed, 14 Feb 2018 08:18:08 GMT): ahmadzafar (Wed, 14 Feb 2018 08:35:51 GMT): ahmadzafar (Wed, 14 Feb 2018 08:37:03 GMT): shalinigpt (Wed, 14 Feb 2018 09:08:35 GMT): pavaniuppalapati (Wed, 14 Feb 2018 09:11:58 GMT): pavaniuppalapati (Wed, 14 Feb 2018 09:12:01 GMT): pavaniuppalapati (Wed, 14 Feb 2018 09:12:45 GMT): rthatcher (Wed, 14 Feb 2018 09:12:56 GMT): pavaniuppalapati (Wed, 14 Feb 2018 09:13:05 GMT): pavaniuppalapati (Wed, 14 Feb 2018 09:13:57 GMT): pavaniuppalapati (Wed, 14 Feb 2018 09:15:09 GMT): davidkel (Wed, 14 Feb 2018 09:18:29 GMT): davidkel (Wed, 14 Feb 2018 09:18:29 GMT): pavaniuppalapati (Wed, 14 Feb 2018 09:24:21 GMT): CorentinPacaud (Wed, 14 Feb 2018 10:03:05 GMT): Jaline (Wed, 14 Feb 2018 10:13:00 GMT): mahoney1 (Wed, 14 Feb 2018 10:14:11 GMT): mahoney1 (Wed, 14 Feb 2018 10:14:11 GMT): CorentinPacaud (Wed, 14 Feb 2018 10:15:22 GMT): Jaline (Wed, 14 Feb 2018 10:21:36 GMT): SudheerKaspa (Wed, 14 Feb 2018 10:27:57 GMT): Jaline (Wed, 14 Feb 2018 10:28:06 GMT): Pranoti (Wed, 14 Feb 2018 10:28:35 GMT): Pranoti (Wed, 14 Feb 2018 10:28:35 GMT): Pranoti (Wed, 14 Feb 2018 10:33:12 GMT): CorentinPacaud (Wed, 14 Feb 2018 10:34:48 GMT): argman (Wed, 14 Feb 2018 10:36:20 GMT): mahoney1 (Wed, 14 Feb 2018 10:47:13 GMT): mahoney1 (Wed, 14 Feb 2018 10:52:26 GMT): Jaline (Wed, 14 Feb 2018 10:56:00 GMT): mahoney1 (Wed, 14 Feb 2018 11:00:57 GMT): rthatcher (Wed, 14 Feb 2018 11:02:13 GMT): mahoney1 (Wed, 14 Feb 2018 11:02:24 GMT): mahoney1 (Wed, 14 Feb 2018 11:03:42 GMT): CorentinPacaud (Wed, 14 Feb 2018 11:08:16 GMT): angelsuarez (Wed, 14 Feb 2018 11:08:34 GMT): dpurnima0709 (Wed, 14 Feb 2018 11:08:56 GMT): CorentinPacaud (Wed, 14 Feb 2018 11:08:57 GMT): argman (Wed, 14 Feb 2018 11:11:49 GMT): rthatcher (Wed, 14 Feb 2018 11:14:40 GMT): Pranoti (Wed, 14 Feb 2018 11:16:00 GMT): rthatcher (Wed, 14 Feb 2018 11:17:39 GMT): bingo1234 (Wed, 14 Feb 2018 12:03:03 GMT): AkshayJindal (Wed, 14 Feb 2018 12:14:13 GMT): mahoney1 (Wed, 14 Feb 2018 12:14:19 GMT): mahoney1 (Wed, 14 Feb 2018 12:14:19 GMT): pavaniuppalapati (Wed, 14 Feb 2018 12:14:59 GMT): argman (Wed, 14 Feb 2018 12:19:20 GMT): ra_w (Wed, 14 Feb 2018 12:21:16 GMT): Pranoti (Wed, 14 Feb 2018 12:23:26 GMT): Pranoti (Wed, 14 Feb 2018 12:23:59 GMT): pavaniuppalapati (Wed, 14 Feb 2018 12:26:22 GMT): pavaniuppalapati (Wed, 14 Feb 2018 12:26:30 GMT): pavaniuppalapati (Wed, 14 Feb 2018 12:26:46 GMT): Pranoti (Wed, 14 Feb 2018 12:28:40 GMT): rthatcher (Wed, 14 Feb 2018 12:36:03 GMT): nasserfci (Wed, 14 Feb 2018 12:49:00 GMT): mahoney1 (Wed, 14 Feb 2018 12:58:43 GMT): mahoney1 (Wed, 14 Feb 2018 12:58:43 GMT): mahoney1 (Wed, 14 Feb 2018 12:58:43 GMT): rthatcher (Wed, 14 Feb 2018 13:01:50 GMT): CorentinPacaud (Wed, 14 Feb 2018 13:07:35 GMT): aparolini (Wed, 14 Feb 2018 13:20:46 GMT): aparolini (Wed, 14 Feb 2018 13:20:46 GMT): rthatcher (Wed, 14 Feb 2018 13:23:43 GMT): CorentinPacaud (Wed, 14 Feb 2018 13:25:20 GMT): rthatcher (Wed, 14 Feb 2018 14:31:13 GMT): mahoney1 (Wed, 14 Feb 2018 15:09:05 GMT): mahoney1 (Wed, 14 Feb 2018 15:17:00 GMT): aparolini (Wed, 14 Feb 2018 16:26:56 GMT): aparolini (Wed, 14 Feb 2018 16:26:56 GMT): aparolini (Wed, 14 Feb 2018 16:26:56 GMT): aparolini (Wed, 14 Feb 2018 16:26:56 GMT): mahoney1 (Wed, 14 Feb 2018 16:30:41 GMT): mahoney1 (Wed, 14 Feb 2018 16:30:41 GMT): AwesomeT (Wed, 14 Feb 2018 16:34:46 GMT): AwesomeT (Wed, 14 Feb 2018 16:36:19 GMT): rthatcher (Wed, 14 Feb 2018 16:47:32 GMT): mahoney1 (Wed, 14 Feb 2018 16:50:06 GMT): rtroostibm (Wed, 14 Feb 2018 16:57:04 GMT): krabradosty (Wed, 14 Feb 2018 18:29:26 GMT): krabradosty (Wed, 14 Feb 2018 18:29:26 GMT): krabradosty (Wed, 14 Feb 2018 18:29:26 GMT): mahoney1 (Wed, 14 Feb 2018 18:31:53 GMT): mahoney1 (Wed, 14 Feb 2018 18:31:53 GMT): mahoney1 (Wed, 14 Feb 2018 18:53:43 GMT): mahoney1 (Wed, 14 Feb 2018 18:53:43 GMT): ahmadzafar (Wed, 14 Feb 2018 19:18:59 GMT): ahmadzafar (Wed, 14 Feb 2018 19:18:59 GMT): ahmadzafar (Wed, 14 Feb 2018 19:18:59 GMT): ahmadzafar (Wed, 14 Feb 2018 19:18:59 GMT): krabradosty (Wed, 14 Feb 2018 19:19:41 GMT): krabradosty (Wed, 14 Feb 2018 19:19:41 GMT): Rmannn (Wed, 14 Feb 2018 19:57:09 GMT): CT123 (Wed, 14 Feb 2018 19:58:16 GMT): CT123 (Wed, 14 Feb 2018 19:58:16 GMT): CT123 (Wed, 14 Feb 2018 19:58:16 GMT): CT123 (Wed, 14 Feb 2018 19:58:16 GMT): CT123 (Wed, 14 Feb 2018 20:08:22 GMT): CT123 (Wed, 14 Feb 2018 20:08:22 GMT): CT123 (Wed, 14 Feb 2018 20:59:10 GMT): CT123 (Wed, 14 Feb 2018 20:59:10 GMT): CT123 (Wed, 14 Feb 2018 20:59:10 GMT): CT123 (Wed, 14 Feb 2018 20:59:10 GMT): CT123 (Wed, 14 Feb 2018 20:59:10 GMT): a.hyper (Wed, 14 Feb 2018 21:01:45 GMT): a.hyper (Wed, 14 Feb 2018 21:01:45 GMT): conroydave (Wed, 14 Feb 2018 21:31:23 GMT): conroydave (Wed, 14 Feb 2018 21:31:44 GMT): conroydave (Wed, 14 Feb 2018 21:31:51 GMT): conroydave (Wed, 14 Feb 2018 21:31:56 GMT): conroydave (Wed, 14 Feb 2018 21:54:46 GMT): davidkel (Wed, 14 Feb 2018 22:44:31 GMT): davidkel (Wed, 14 Feb 2018 22:44:46 GMT): conroydave (Wed, 14 Feb 2018 22:49:51 GMT): conroydave (Wed, 14 Feb 2018 22:50:04 GMT): conroydave (Wed, 14 Feb 2018 22:51:19 GMT): conroydave (Wed, 14 Feb 2018 22:51:25 GMT): davidkel (Wed, 14 Feb 2018 22:59:33 GMT): conroydave (Wed, 14 Feb 2018 22:59:59 GMT): conroydave (Wed, 14 Feb 2018 23:00:20 GMT): conroydave (Wed, 14 Feb 2018 23:00:26 GMT): davidkel (Wed, 14 Feb 2018 23:00:47 GMT): conroydave (Wed, 14 Feb 2018 23:02:51 GMT): davidkel (Wed, 14 Feb 2018 23:05:19 GMT): conroydave (Wed, 14 Feb 2018 23:05:26 GMT): conroydave (Wed, 14 Feb 2018 23:05:37 GMT): conroydave (Wed, 14 Feb 2018 23:05:43 GMT): conroydave (Wed, 14 Feb 2018 23:05:52 GMT): conroydave (Wed, 14 Feb 2018 23:05:59 GMT): conroydave (Wed, 14 Feb 2018 23:06:02 GMT): conroydave (Wed, 14 Feb 2018 23:06:16 GMT): davidkel (Wed, 14 Feb 2018 23:06:18 GMT): conroydave (Wed, 14 Feb 2018 23:06:37 GMT): conroydave (Wed, 14 Feb 2018 23:06:57 GMT): davidkel (Wed, 14 Feb 2018 23:06:58 GMT): conroydave (Wed, 14 Feb 2018 23:07:00 GMT): conroydave (Wed, 14 Feb 2018 23:07:16 GMT): conroydave (Wed, 14 Feb 2018 23:07:38 GMT): conroydave (Wed, 14 Feb 2018 23:07:43 GMT): conroydave (Wed, 14 Feb 2018 23:07:51 GMT): conroydave (Wed, 14 Feb 2018 23:08:44 GMT): conroydave (Wed, 14 Feb 2018 23:08:50 GMT): conroydave (Wed, 14 Feb 2018 23:11:46 GMT): conroydave (Wed, 14 Feb 2018 23:13:57 GMT): conroydave (Wed, 14 Feb 2018 23:14:01 GMT): conroydave (Wed, 14 Feb 2018 23:14:03 GMT): conroydave (Wed, 14 Feb 2018 23:14:16 GMT): davidkel (Wed, 14 Feb 2018 23:17:27 GMT): conroydave (Wed, 14 Feb 2018 23:17:47 GMT): conroydave (Wed, 14 Feb 2018 23:17:54 GMT): conroydave (Wed, 14 Feb 2018 23:18:49 GMT): davidkel (Wed, 14 Feb 2018 23:19:58 GMT): conroydave (Wed, 14 Feb 2018 23:21:59 GMT): davidkel (Wed, 14 Feb 2018 23:25:32 GMT): conroydave (Wed, 14 Feb 2018 23:26:35 GMT): davidkel (Wed, 14 Feb 2018 23:27:15 GMT): davidkel (Wed, 14 Feb 2018 23:28:17 GMT): davidkel (Wed, 14 Feb 2018 23:29:34 GMT): conroydave (Wed, 14 Feb 2018 23:30:53 GMT): conroydave (Wed, 14 Feb 2018 23:30:56 GMT): conroydave (Wed, 14 Feb 2018 23:31:01 GMT): conroydave (Wed, 14 Feb 2018 23:31:03 GMT): conroydave (Wed, 14 Feb 2018 23:31:03 GMT): conroydave (Wed, 14 Feb 2018 23:31:39 GMT): conroydave (Wed, 14 Feb 2018 23:31:40 GMT): conroydave (Wed, 14 Feb 2018 23:31:43 GMT): conroydave (Wed, 14 Feb 2018 23:31:47 GMT): conroydave (Wed, 14 Feb 2018 23:32:57 GMT): conroydave (Wed, 14 Feb 2018 23:33:08 GMT): davidkel (Wed, 14 Feb 2018 23:33:10 GMT): conroydave (Wed, 14 Feb 2018 23:33:22 GMT): conroydave (Wed, 14 Feb 2018 23:33:30 GMT): conroydave (Wed, 14 Feb 2018 23:33:58 GMT): conroydave (Wed, 14 Feb 2018 23:34:05 GMT): conroydave (Wed, 14 Feb 2018 23:34:15 GMT): conroydave (Wed, 14 Feb 2018 23:34:28 GMT): davidkel (Wed, 14 Feb 2018 23:34:29 GMT): conroydave (Wed, 14 Feb 2018 23:34:37 GMT): conroydave (Wed, 14 Feb 2018 23:34:52 GMT): conroydave (Wed, 14 Feb 2018 23:34:58 GMT): conroydave (Wed, 14 Feb 2018 23:35:04 GMT): conroydave (Wed, 14 Feb 2018 23:35:05 GMT): conroydave (Wed, 14 Feb 2018 23:35:33 GMT): davidkel (Wed, 14 Feb 2018 23:37:23 GMT): conroydave (Wed, 14 Feb 2018 23:39:59 GMT): conroydave (Wed, 14 Feb 2018 23:40:04 GMT): conroydave (Wed, 14 Feb 2018 23:40:11 GMT): davidkel (Wed, 14 Feb 2018 23:41:46 GMT): aneb (Thu, 15 Feb 2018 01:44:43 GMT): Jaline (Thu, 15 Feb 2018 02:25:50 GMT): Jaline (Thu, 15 Feb 2018 02:38:52 GMT): AwesomeT (Thu, 15 Feb 2018 03:04:37 GMT): AwesomeT (Thu, 15 Feb 2018 03:07:08 GMT): conroydave (Thu, 15 Feb 2018 03:53:23 GMT): conroydave (Thu, 15 Feb 2018 03:53:27 GMT): conroydave (Thu, 15 Feb 2018 03:53:35 GMT): conroydave (Thu, 15 Feb 2018 03:53:40 GMT): ahmadzafar (Thu, 15 Feb 2018 04:40:56 GMT): ahmadzafar (Thu, 15 Feb 2018 04:40:56 GMT): ahmadzafar (Thu, 15 Feb 2018 04:40:56 GMT): ahmadzafar (Thu, 15 Feb 2018 04:40:56 GMT): wininani (Thu, 15 Feb 2018 05:34:50 GMT): prabvi01 (Thu, 15 Feb 2018 05:46:38 GMT): wininani (Thu, 15 Feb 2018 05:59:42 GMT): tk1 (Thu, 15 Feb 2018 06:15:38 GMT): Pranoti (Thu, 15 Feb 2018 07:53:14 GMT): varun-raj (Thu, 15 Feb 2018 08:19:28 GMT): srini_keshav (Thu, 15 Feb 2018 08:55:41 GMT): rthatcher (Thu, 15 Feb 2018 09:32:54 GMT): rthatcher (Thu, 15 Feb 2018 09:35:21 GMT): Pranoti (Thu, 15 Feb 2018 09:38:42 GMT): Pranoti (Thu, 15 Feb 2018 09:38:42 GMT): aparolini (Thu, 15 Feb 2018 09:39:32 GMT): aparolini (Thu, 15 Feb 2018 09:39:32 GMT): aparolini (Thu, 15 Feb 2018 09:39:32 GMT): aparolini (Thu, 15 Feb 2018 09:39:32 GMT): aparolini (Thu, 15 Feb 2018 09:39:32 GMT): aparolini (Thu, 15 Feb 2018 09:39:32 GMT): rthatcher (Thu, 15 Feb 2018 09:44:57 GMT): jaswanth (Thu, 15 Feb 2018 10:14:38 GMT): jaswanth (Thu, 15 Feb 2018 10:14:38 GMT): jaswanth (Thu, 15 Feb 2018 10:14:38 GMT): jaswanth (Thu, 15 Feb 2018 10:14:38 GMT): jaswanth (Thu, 15 Feb 2018 10:14:38 GMT): jaswanth (Thu, 15 Feb 2018 10:14:38 GMT): jaswanth (Thu, 15 Feb 2018 10:14:38 GMT): jaswanth (Thu, 15 Feb 2018 10:14:38 GMT): wininani (Thu, 15 Feb 2018 10:30:00 GMT): tk1 (Thu, 15 Feb 2018 11:22:52 GMT): tk1 (Thu, 15 Feb 2018 11:24:19 GMT): mabnhdev (Thu, 15 Feb 2018 12:37:30 GMT): mabnhdev (Thu, 15 Feb 2018 12:38:55 GMT): mabnhdev (Thu, 15 Feb 2018 12:40:28 GMT): krabradosty (Thu, 15 Feb 2018 12:59:55 GMT): krabradosty (Thu, 15 Feb 2018 12:59:55 GMT): krabradosty (Thu, 15 Feb 2018 12:59:55 GMT): rthatcher (Thu, 15 Feb 2018 13:03:23 GMT): Elbino (Thu, 15 Feb 2018 13:12:27 GMT): Elbino (Thu, 15 Feb 2018 13:15:49 GMT): Sriramj (Thu, 15 Feb 2018 13:43:11 GMT): CorentinPacaud (Thu, 15 Feb 2018 13:45:28 GMT): rthatcher (Thu, 15 Feb 2018 14:09:47 GMT): mahoney1 (Thu, 15 Feb 2018 14:18:26 GMT): mahoney1 (Thu, 15 Feb 2018 14:18:26 GMT): mabnhdev (Thu, 15 Feb 2018 14:25:40 GMT): mahoney1 (Thu, 15 Feb 2018 14:27:33 GMT): krabradosty (Thu, 15 Feb 2018 14:37:08 GMT): CorentinPacaud (Thu, 15 Feb 2018 14:44:55 GMT): CorentinPacaud (Thu, 15 Feb 2018 14:45:08 GMT): NAWAZUDDIN552 (Thu, 15 Feb 2018 15:14:51 GMT): mahoney1 (Thu, 15 Feb 2018 15:35:44 GMT): AwesomeT (Thu, 15 Feb 2018 15:51:40 GMT): mahoney1 (Thu, 15 Feb 2018 16:03:36 GMT): mahoney1 (Thu, 15 Feb 2018 16:03:36 GMT): AwesomeT (Thu, 15 Feb 2018 16:12:16 GMT): AwesomeT (Thu, 15 Feb 2018 16:14:02 GMT): AwesomeT (Thu, 15 Feb 2018 16:15:17 GMT): awjh (Thu, 15 Feb 2018 16:19:13 GMT): mahoney1 (Thu, 15 Feb 2018 16:19:33 GMT): mahoney1 (Thu, 15 Feb 2018 16:19:43 GMT): AwesomeT (Thu, 15 Feb 2018 16:21:48 GMT): krabradosty (Thu, 15 Feb 2018 16:22:29 GMT): ionionascu (Thu, 15 Feb 2018 16:47:07 GMT): mahoney1 (Thu, 15 Feb 2018 16:49:26 GMT): mahoney1 (Thu, 15 Feb 2018 16:49:26 GMT): mahoney1 (Thu, 15 Feb 2018 16:49:26 GMT): ionionascu (Thu, 15 Feb 2018 17:00:46 GMT): rbailey (Thu, 15 Feb 2018 19:40:35 GMT): rbailey (Thu, 15 Feb 2018 19:44:00 GMT): vitorqshr (Thu, 15 Feb 2018 21:33:06 GMT): TsuiSauChi (Thu, 15 Feb 2018 21:46:35 GMT): JeremyStanton (Thu, 15 Feb 2018 21:58:46 GMT): JeremyStanton (Thu, 15 Feb 2018 22:17:31 GMT): majestade (Thu, 15 Feb 2018 23:01:21 GMT): piyush (Fri, 16 Feb 2018 02:17:42 GMT): niroshana (Fri, 16 Feb 2018 04:11:00 GMT): niroshana (Fri, 16 Feb 2018 04:11:18 GMT): niroshana (Fri, 16 Feb 2018 04:14:16 GMT): jaswanth (Fri, 16 Feb 2018 05:20:21 GMT): rajivgandhi2010 (Fri, 16 Feb 2018 06:35:15 GMT): indira.kalagara (Fri, 16 Feb 2018 06:51:35 GMT): mniroshana (Fri, 16 Feb 2018 07:28:43 GMT): Nobodyme (Fri, 16 Feb 2018 07:30:25 GMT): gurpreetlucky (Fri, 16 Feb 2018 07:31:45 GMT): Nobodyme (Fri, 16 Feb 2018 07:32:26 GMT): wininani (Fri, 16 Feb 2018 07:37:44 GMT): ludeiro (Fri, 16 Feb 2018 08:27:55 GMT): kentahub (Fri, 16 Feb 2018 09:25:13 GMT): rthatcher (Fri, 16 Feb 2018 09:41:34 GMT): rthatcher (Fri, 16 Feb 2018 09:46:23 GMT): mahoney1 (Fri, 16 Feb 2018 10:11:28 GMT): Ricckk (Fri, 16 Feb 2018 10:12:36 GMT): Ricckk (Fri, 16 Feb 2018 10:12:36 GMT): Ricckk (Fri, 16 Feb 2018 10:12:36 GMT): Ricckk (Fri, 16 Feb 2018 10:12:36 GMT): Ricckk (Fri, 16 Feb 2018 10:12:36 GMT): Ricckk (Fri, 16 Feb 2018 10:12:36 GMT): Ricckk (Fri, 16 Feb 2018 10:12:36 GMT): Ricckk (Fri, 16 Feb 2018 10:12:36 GMT): Ricckk (Fri, 16 Feb 2018 10:12:36 GMT): Ricckk (Fri, 16 Feb 2018 10:12:36 GMT): Ricckk (Fri, 16 Feb 2018 10:12:36 GMT): Ricckk (Fri, 16 Feb 2018 10:12:36 GMT): mahoney1 (Fri, 16 Feb 2018 10:18:44 GMT): mahoney1 (Fri, 16 Feb 2018 10:18:44 GMT): SuvitPatil (Fri, 16 Feb 2018 10:23:20 GMT): waleed (Fri, 16 Feb 2018 10:26:12 GMT): BalajiSR (Fri, 16 Feb 2018 10:42:43 GMT): jaswanth (Fri, 16 Feb 2018 10:51:37 GMT): jaswanth (Fri, 16 Feb 2018 10:51:37 GMT): jaswanth (Fri, 16 Feb 2018 10:51:37 GMT): tk1 (Fri, 16 Feb 2018 10:52:34 GMT): Pranoti (Fri, 16 Feb 2018 10:57:44 GMT): Pranoti (Fri, 16 Feb 2018 10:57:44 GMT): Pranoti (Fri, 16 Feb 2018 10:57:44 GMT): Pranoti (Fri, 16 Feb 2018 10:57:44 GMT): mahoney1 (Fri, 16 Feb 2018 11:04:22 GMT): rthatcher (Fri, 16 Feb 2018 11:19:16 GMT): mahoney1 (Fri, 16 Feb 2018 11:19:17 GMT): Pranoti (Fri, 16 Feb 2018 11:20:02 GMT): rthatcher (Fri, 16 Feb 2018 11:20:32 GMT): rthatcher (Fri, 16 Feb 2018 11:22:07 GMT): rthatcher (Fri, 16 Feb 2018 11:22:07 GMT): Pranoti (Fri, 16 Feb 2018 11:25:20 GMT): sbh (Fri, 16 Feb 2018 11:25:23 GMT): rthatcher (Fri, 16 Feb 2018 11:28:43 GMT): BalajiSR (Fri, 16 Feb 2018 11:48:57 GMT): mahoney1 (Fri, 16 Feb 2018 11:57:22 GMT): SuvitPatil (Fri, 16 Feb 2018 14:01:30 GMT): SuvitPatil (Fri, 16 Feb 2018 14:02:18 GMT): arunkarri (Fri, 16 Feb 2018 14:13:33 GMT): rthatcher (Fri, 16 Feb 2018 14:23:18 GMT): Legiit (Fri, 16 Feb 2018 14:33:06 GMT): Legiit (Fri, 16 Feb 2018 14:34:30 GMT): Legiit (Fri, 16 Feb 2018 14:49:36 GMT): Legiit (Fri, 16 Feb 2018 14:49:39 GMT): Legiit (Fri, 16 Feb 2018 14:49:44 GMT): BalajiSR (Fri, 16 Feb 2018 15:23:57 GMT): CorentinPacaud (Fri, 16 Feb 2018 15:35:43 GMT): BalajiSR (Fri, 16 Feb 2018 15:59:24 GMT): mahoney1 (Fri, 16 Feb 2018 15:59:25 GMT): aparolini (Fri, 16 Feb 2018 16:04:09 GMT): aparolini (Fri, 16 Feb 2018 16:04:09 GMT): rthatcher (Fri, 16 Feb 2018 16:07:22 GMT): BalajiSR (Fri, 16 Feb 2018 16:29:31 GMT): Legiit (Fri, 16 Feb 2018 16:48:07 GMT): mahoney1 (Fri, 16 Feb 2018 16:49:17 GMT): mahoney1 (Fri, 16 Feb 2018 16:49:17 GMT): varunagarwal (Fri, 16 Feb 2018 17:10:04 GMT): douglasthiel (Fri, 16 Feb 2018 17:10:42 GMT): atbe (Fri, 16 Feb 2018 18:04:30 GMT): atbe (Fri, 16 Feb 2018 18:05:06 GMT): varunagarwal (Fri, 16 Feb 2018 18:12:21 GMT): atbe (Fri, 16 Feb 2018 18:12:58 GMT): varunagarwal (Fri, 16 Feb 2018 18:13:43 GMT): atbe (Fri, 16 Feb 2018 18:14:10 GMT): varunagarwal (Fri, 16 Feb 2018 18:14:11 GMT): varunagarwal (Fri, 16 Feb 2018 18:14:34 GMT): varunagarwal (Fri, 16 Feb 2018 18:14:49 GMT): atbe (Fri, 16 Feb 2018 18:14:57 GMT): atbe (Fri, 16 Feb 2018 18:15:04 GMT): varunagarwal (Fri, 16 Feb 2018 18:15:05 GMT): varunagarwal (Fri, 16 Feb 2018 18:15:15 GMT): atbe (Fri, 16 Feb 2018 18:15:25 GMT): atbe (Fri, 16 Feb 2018 18:16:01 GMT): atbe (Fri, 16 Feb 2018 18:16:25 GMT): atbe (Fri, 16 Feb 2018 18:16:38 GMT): varunagarwal (Fri, 16 Feb 2018 18:17:08 GMT): atbe (Fri, 16 Feb 2018 18:17:36 GMT): varunagarwal (Fri, 16 Feb 2018 18:17:48 GMT): atbe (Fri, 16 Feb 2018 18:17:52 GMT): atbe (Fri, 16 Feb 2018 18:18:05 GMT): varunagarwal (Fri, 16 Feb 2018 18:18:23 GMT): eduardosdgomes (Fri, 16 Feb 2018 18:18:46 GMT): atbe (Fri, 16 Feb 2018 18:19:20 GMT): varunagarwal (Fri, 16 Feb 2018 18:19:43 GMT): atbe (Fri, 16 Feb 2018 18:20:00 GMT): varunagarwal (Fri, 16 Feb 2018 18:20:29 GMT): varunagarwal (Fri, 16 Feb 2018 18:20:51 GMT): atbe (Fri, 16 Feb 2018 18:31:19 GMT): Nobodyme (Fri, 16 Feb 2018 19:15:55 GMT): Nobodyme (Fri, 16 Feb 2018 19:18:11 GMT): Nobodyme (Fri, 16 Feb 2018 19:18:50 GMT): Nobodyme (Fri, 16 Feb 2018 19:19:32 GMT): atbe (Fri, 16 Feb 2018 19:42:08 GMT): atbe (Fri, 16 Feb 2018 19:55:39 GMT): atbe (Fri, 16 Feb 2018 19:56:12 GMT): Nobodyme (Fri, 16 Feb 2018 19:59:07 GMT): atbe (Fri, 16 Feb 2018 19:59:42 GMT): atbe (Fri, 16 Feb 2018 20:00:24 GMT): atbe (Fri, 16 Feb 2018 20:02:58 GMT): bo2 (Fri, 16 Feb 2018 20:21:35 GMT): atbe (Fri, 16 Feb 2018 20:26:05 GMT): atbe (Fri, 16 Feb 2018 20:27:13 GMT): JeremyStanton (Fri, 16 Feb 2018 21:03:14 GMT): akeelnazir (Fri, 16 Feb 2018 22:27:04 GMT): Nobodyme (Fri, 16 Feb 2018 23:48:04 GMT): prmdmshra (Sat, 17 Feb 2018 01:47:41 GMT): prmdmshra (Sat, 17 Feb 2018 01:47:41 GMT): sashico (Sat, 17 Feb 2018 09:25:40 GMT): pichayuthk (Sat, 17 Feb 2018 11:41:46 GMT): downTheFallLine (Sat, 17 Feb 2018 17:08:34 GMT): Nobodyme (Sun, 18 Feb 2018 01:07:16 GMT): downTheFallLine (Sun, 18 Feb 2018 01:14:44 GMT): atbe (Sun, 18 Feb 2018 03:23:16 GMT): atbe (Sun, 18 Feb 2018 03:23:16 GMT): brianweaveros (Sun, 18 Feb 2018 05:07:09 GMT): RohithYerramilli (Sun, 18 Feb 2018 11:03:49 GMT): Sriramj (Sun, 18 Feb 2018 11:55:30 GMT): RohithYerramilli (Sun, 18 Feb 2018 12:10:11 GMT): Nobodyme (Sun, 18 Feb 2018 12:24:02 GMT): RohithYerramilli (Sun, 18 Feb 2018 13:15:21 GMT): sashico (Sun, 18 Feb 2018 14:16:26 GMT): dselman (Sun, 18 Feb 2018 14:17:51 GMT): sashico (Sun, 18 Feb 2018 14:20:07 GMT): dselman (Sun, 18 Feb 2018 14:21:28 GMT): dselman (Sun, 18 Feb 2018 14:21:34 GMT): sashico (Sun, 18 Feb 2018 14:22:19 GMT): dselman (Sun, 18 Feb 2018 14:23:34 GMT): sashico (Sun, 18 Feb 2018 14:24:15 GMT): downTheFallLine (Sun, 18 Feb 2018 14:42:09 GMT): downTheFallLine (Sun, 18 Feb 2018 14:46:33 GMT): MuhammadSalah (Sun, 18 Feb 2018 16:34:20 GMT): MuhammadSalah (Sun, 18 Feb 2018 16:36:04 GMT): kisamoto (Sun, 18 Feb 2018 17:41:43 GMT): donbr (Sun, 18 Feb 2018 18:57:57 GMT): punit 4 (Sun, 18 Feb 2018 19:45:30 GMT): punit 4 (Sun, 18 Feb 2018 19:47:41 GMT): Hefziben (Sun, 18 Feb 2018 21:27:51 GMT): Hefziben (Sun, 18 Feb 2018 21:28:25 GMT): silliman (Sun, 18 Feb 2018 22:56:05 GMT): aneb (Mon, 19 Feb 2018 02:39:18 GMT): VinodPai (Mon, 19 Feb 2018 05:26:04 GMT): Luke_Chen (Mon, 19 Feb 2018 06:14:16 GMT): Luke_Chen (Mon, 19 Feb 2018 06:14:16 GMT): punit 4 (Mon, 19 Feb 2018 06:55:47 GMT): wininani (Mon, 19 Feb 2018 06:56:54 GMT): rahulkannur (Mon, 19 Feb 2018 06:57:01 GMT): wininani (Mon, 19 Feb 2018 07:16:29 GMT): bingo1234 (Mon, 19 Feb 2018 08:48:28 GMT): rthatcher (Mon, 19 Feb 2018 09:28:58 GMT): rthatcher (Mon, 19 Feb 2018 09:31:12 GMT): rthatcher (Mon, 19 Feb 2018 09:35:47 GMT): Luke_Chen (Mon, 19 Feb 2018 09:36:42 GMT): Luke_Chen (Mon, 19 Feb 2018 09:36:42 GMT): rthatcher (Mon, 19 Feb 2018 09:43:01 GMT): Luke_Chen (Mon, 19 Feb 2018 09:52:23 GMT): Luke_Chen (Mon, 19 Feb 2018 09:52:23 GMT): Luke_Chen (Mon, 19 Feb 2018 09:52:23 GMT): indira.kalagara (Mon, 19 Feb 2018 10:04:13 GMT): gen_el (Mon, 19 Feb 2018 10:06:22 GMT): gen_el (Mon, 19 Feb 2018 10:07:19 GMT): gen_el (Mon, 19 Feb 2018 10:07:52 GMT): M4rcelNo4ck (Mon, 19 Feb 2018 10:09:42 GMT): gen_el (Mon, 19 Feb 2018 10:10:22 GMT): rthatcher (Mon, 19 Feb 2018 10:10:58 GMT): mahoney1 (Mon, 19 Feb 2018 10:24:49 GMT): Legiit (Mon, 19 Feb 2018 10:25:01 GMT): Legiit (Mon, 19 Feb 2018 10:27:27 GMT): purandam (Mon, 19 Feb 2018 10:28:38 GMT): wininani (Mon, 19 Feb 2018 10:57:23 GMT): wininani (Mon, 19 Feb 2018 10:57:23 GMT): varunagarwal (Mon, 19 Feb 2018 10:59:52 GMT): mahoney1 (Mon, 19 Feb 2018 11:43:40 GMT): mahoney1 (Mon, 19 Feb 2018 11:43:40 GMT): vitiko (Mon, 19 Feb 2018 11:44:09 GMT): Legiit (Mon, 19 Feb 2018 11:46:51 GMT): mahoney1 (Mon, 19 Feb 2018 11:53:42 GMT): Legiit (Mon, 19 Feb 2018 11:55:05 GMT): Legiit (Mon, 19 Feb 2018 11:55:05 GMT): mahoney1 (Mon, 19 Feb 2018 12:22:47 GMT): pichayuthk (Mon, 19 Feb 2018 13:20:05 GMT): gen_el (Mon, 19 Feb 2018 13:39:35 GMT): gen_el (Mon, 19 Feb 2018 13:39:58 GMT): waleed (Mon, 19 Feb 2018 13:51:04 GMT): aneb (Mon, 19 Feb 2018 14:28:40 GMT): davidkel (Mon, 19 Feb 2018 14:30:08 GMT): gen_el (Mon, 19 Feb 2018 14:45:55 GMT): gen_el (Mon, 19 Feb 2018 14:45:55 GMT): davidkel (Mon, 19 Feb 2018 14:47:15 GMT): gen_el (Mon, 19 Feb 2018 14:48:11 GMT): gen_el (Mon, 19 Feb 2018 14:52:30 GMT): gen_el (Mon, 19 Feb 2018 16:37:45 GMT): gen_el (Mon, 19 Feb 2018 16:40:13 GMT): gen_el (Mon, 19 Feb 2018 16:40:13 GMT): gen_el (Mon, 19 Feb 2018 16:40:13 GMT): davidkel (Mon, 19 Feb 2018 17:04:35 GMT): davidkel (Mon, 19 Feb 2018 17:05:12 GMT): gen_el (Mon, 19 Feb 2018 17:05:28 GMT): davidkel (Mon, 19 Feb 2018 17:06:30 GMT): gen_el (Mon, 19 Feb 2018 17:07:32 GMT): gen_el (Mon, 19 Feb 2018 17:08:46 GMT): gen_el (Mon, 19 Feb 2018 17:08:46 GMT): davidkel (Mon, 19 Feb 2018 17:16:15 GMT): gen_el (Mon, 19 Feb 2018 17:23:12 GMT): bingo1234 (Mon, 19 Feb 2018 17:36:04 GMT): atbe (Mon, 19 Feb 2018 17:50:58 GMT): atbe (Mon, 19 Feb 2018 17:51:20 GMT): atbe (Mon, 19 Feb 2018 17:51:20 GMT): bingo1234 (Mon, 19 Feb 2018 17:55:44 GMT): gen_el (Mon, 19 Feb 2018 17:58:44 GMT): gen_el (Mon, 19 Feb 2018 17:58:44 GMT): atbe (Mon, 19 Feb 2018 18:00:46 GMT): bingo1234 (Mon, 19 Feb 2018 18:10:15 GMT): atbe (Mon, 19 Feb 2018 18:11:02 GMT): bingo1234 (Mon, 19 Feb 2018 18:11:52 GMT): atbe (Mon, 19 Feb 2018 18:11:59 GMT): bingo1234 (Mon, 19 Feb 2018 18:21:57 GMT): bingo1234 (Mon, 19 Feb 2018 18:22:32 GMT): bingo1234 (Mon, 19 Feb 2018 18:22:32 GMT): atbe (Mon, 19 Feb 2018 18:27:40 GMT): atbe (Mon, 19 Feb 2018 18:27:53 GMT): IronZion718 (Mon, 19 Feb 2018 18:33:03 GMT): davidkel (Mon, 19 Feb 2018 19:13:35 GMT): davidkel (Mon, 19 Feb 2018 19:13:35 GMT): atbe (Mon, 19 Feb 2018 19:17:04 GMT): atbe (Mon, 19 Feb 2018 19:17:59 GMT): davidkel (Mon, 19 Feb 2018 19:22:45 GMT): atbe (Mon, 19 Feb 2018 19:25:16 GMT): davidkel (Mon, 19 Feb 2018 19:29:57 GMT): davidkel (Mon, 19 Feb 2018 19:29:57 GMT): davidkel (Mon, 19 Feb 2018 19:29:57 GMT): atbe (Mon, 19 Feb 2018 19:45:15 GMT): Arindam (Mon, 19 Feb 2018 20:08:31 GMT): atbe (Mon, 19 Feb 2018 20:59:17 GMT): atbe (Mon, 19 Feb 2018 21:21:06 GMT): surenkonathala (Mon, 19 Feb 2018 21:42:49 GMT): surenkonathala (Mon, 19 Feb 2018 21:43:48 GMT): silliman (Mon, 19 Feb 2018 21:46:24 GMT): surenkonathala (Mon, 19 Feb 2018 21:47:31 GMT): silliman (Mon, 19 Feb 2018 21:48:57 GMT): surenkonathala (Mon, 19 Feb 2018 21:50:10 GMT): silliman (Mon, 19 Feb 2018 21:51:15 GMT): surenkonathala (Mon, 19 Feb 2018 21:53:59 GMT): silliman (Mon, 19 Feb 2018 21:54:33 GMT): surenkonathala (Mon, 19 Feb 2018 21:55:40 GMT): silliman (Mon, 19 Feb 2018 21:57:00 GMT): silliman (Mon, 19 Feb 2018 21:58:04 GMT): davidkel (Mon, 19 Feb 2018 22:07:18 GMT): atbe (Mon, 19 Feb 2018 22:08:12 GMT): surenkonathala (Mon, 19 Feb 2018 22:30:07 GMT): silliman (Mon, 19 Feb 2018 22:37:34 GMT): JeremyStanton (Tue, 20 Feb 2018 00:51:06 GMT): aneb (Tue, 20 Feb 2018 00:53:57 GMT): aneb (Tue, 20 Feb 2018 00:53:57 GMT): aneb (Tue, 20 Feb 2018 00:59:03 GMT): aneb (Tue, 20 Feb 2018 00:59:03 GMT): atbe (Tue, 20 Feb 2018 01:44:25 GMT): atbe (Tue, 20 Feb 2018 01:44:42 GMT): atbe (Tue, 20 Feb 2018 01:44:55 GMT): atbe (Tue, 20 Feb 2018 01:44:55 GMT): atbe (Tue, 20 Feb 2018 01:44:55 GMT): atbe (Tue, 20 Feb 2018 01:44:55 GMT): atbe (Tue, 20 Feb 2018 01:44:55 GMT): bingo1234 (Tue, 20 Feb 2018 02:45:17 GMT): rthatcher (Tue, 20 Feb 2018 09:42:27 GMT): Legiit (Tue, 20 Feb 2018 10:13:18 GMT): HendryRenald (Tue, 20 Feb 2018 10:21:10 GMT): mahoney1 (Tue, 20 Feb 2018 10:52:18 GMT): mahoney1 (Tue, 20 Feb 2018 10:53:28 GMT): HendryRenald (Tue, 20 Feb 2018 10:59:08 GMT): Pranoti (Tue, 20 Feb 2018 11:01:18 GMT): Pranoti (Tue, 20 Feb 2018 11:01:18 GMT): misaelssantos (Tue, 20 Feb 2018 11:11:55 GMT): mahoney1 (Tue, 20 Feb 2018 11:44:21 GMT): mahoney1 (Tue, 20 Feb 2018 11:48:30 GMT): mahoney1 (Tue, 20 Feb 2018 11:49:18 GMT): nycycr (Tue, 20 Feb 2018 11:59:15 GMT): nasserfci (Tue, 20 Feb 2018 12:19:56 GMT): chandrasekarangengadharan (Tue, 20 Feb 2018 12:41:43 GMT): theotheu (Tue, 20 Feb 2018 12:42:44 GMT): zasamen (Tue, 20 Feb 2018 12:49:07 GMT): vsadriano (Tue, 20 Feb 2018 13:31:46 GMT): SimonOberzan (Tue, 20 Feb 2018 13:40:22 GMT): zasamen (Tue, 20 Feb 2018 13:41:00 GMT): vsadriano (Tue, 20 Feb 2018 13:42:55 GMT): vsadriano (Tue, 20 Feb 2018 13:43:03 GMT): zasamen (Tue, 20 Feb 2018 13:43:54 GMT): zasamen (Tue, 20 Feb 2018 13:44:28 GMT): Ratnakar (Tue, 20 Feb 2018 13:44:29 GMT): Ratnakar (Tue, 20 Feb 2018 13:44:29 GMT): zasamen (Tue, 20 Feb 2018 13:44:36 GMT): vsadriano (Tue, 20 Feb 2018 13:45:00 GMT): zasamen (Tue, 20 Feb 2018 13:47:11 GMT): Ratnakar (Tue, 20 Feb 2018 13:48:48 GMT): Ratnakar (Tue, 20 Feb 2018 13:50:12 GMT): Ratnakar (Tue, 20 Feb 2018 13:50:12 GMT): argman (Tue, 20 Feb 2018 13:50:41 GMT): zasamen (Tue, 20 Feb 2018 13:51:09 GMT): zasamen (Tue, 20 Feb 2018 13:52:22 GMT): zasamen (Tue, 20 Feb 2018 13:52:22 GMT): nasserfci (Tue, 20 Feb 2018 13:55:17 GMT): zasamen (Tue, 20 Feb 2018 13:55:18 GMT): zasamen (Tue, 20 Feb 2018 13:55:52 GMT): Pranoti (Tue, 20 Feb 2018 13:56:30 GMT): berndoostrum (Tue, 20 Feb 2018 14:36:48 GMT): jv_400 (Tue, 20 Feb 2018 14:38:09 GMT): jv_400 (Tue, 20 Feb 2018 14:38:47 GMT): jv_400 (Tue, 20 Feb 2018 14:38:58 GMT): jv_400 (Tue, 20 Feb 2018 14:39:12 GMT): nasserfci (Tue, 20 Feb 2018 14:45:09 GMT): kakuzu (Tue, 20 Feb 2018 15:36:27 GMT): CT123 (Tue, 20 Feb 2018 16:31:18 GMT): mahoney1 (Tue, 20 Feb 2018 16:34:54 GMT): rthatcher (Tue, 20 Feb 2018 16:37:25 GMT): rthatcher (Tue, 20 Feb 2018 16:43:29 GMT): rthatcher (Tue, 20 Feb 2018 16:46:35 GMT): rthatcher (Tue, 20 Feb 2018 16:51:31 GMT): rthatcher (Tue, 20 Feb 2018 16:51:31 GMT): nasserfci (Tue, 20 Feb 2018 17:32:22 GMT): rthatcher (Tue, 20 Feb 2018 17:35:07 GMT): nasserfci (Tue, 20 Feb 2018 17:36:35 GMT): mahoney1 (Tue, 20 Feb 2018 17:57:15 GMT): nasserfci (Tue, 20 Feb 2018 17:59:16 GMT): sicaps (Tue, 20 Feb 2018 18:07:38 GMT): nasserfci (Tue, 20 Feb 2018 18:42:55 GMT): wrannaman (Tue, 20 Feb 2018 19:19:03 GMT): nasserfci (Tue, 20 Feb 2018 20:27:09 GMT): apailla (Tue, 20 Feb 2018 21:04:32 GMT): CT123 (Tue, 20 Feb 2018 21:33:22 GMT): horeaporutiu (Tue, 20 Feb 2018 23:20:12 GMT): horeaporutiu (Tue, 20 Feb 2018 23:24:46 GMT): horeaporutiu (Tue, 20 Feb 2018 23:31:02 GMT): gen_el (Wed, 21 Feb 2018 00:05:49 GMT): gen_el (Wed, 21 Feb 2018 00:05:56 GMT): gen_el (Wed, 21 Feb 2018 00:06:48 GMT): gen_el (Wed, 21 Feb 2018 00:07:23 GMT): gen_el (Wed, 21 Feb 2018 00:07:23 GMT): gen_el (Wed, 21 Feb 2018 01:17:13 GMT): gen_el (Wed, 21 Feb 2018 01:17:19 GMT): gen_el (Wed, 21 Feb 2018 01:18:25 GMT): cammachusa (Wed, 21 Feb 2018 02:13:26 GMT): cammachusa (Wed, 21 Feb 2018 02:15:25 GMT): gjklassen (Wed, 21 Feb 2018 03:46:22 GMT): gjklassen (Wed, 21 Feb 2018 03:46:30 GMT): DevB (Wed, 21 Feb 2018 03:57:16 GMT): dpurnima0709 (Wed, 21 Feb 2018 05:50:04 GMT): Sara.r (Wed, 21 Feb 2018 07:23:36 GMT): conroydave (Wed, 21 Feb 2018 07:26:28 GMT): Sara.r (Wed, 21 Feb 2018 07:34:56 GMT): mahoney1 (Wed, 21 Feb 2018 08:11:06 GMT): mahoney1 (Wed, 21 Feb 2018 08:13:25 GMT): mahoney1 (Wed, 21 Feb 2018 08:25:40 GMT): Stecec (Wed, 21 Feb 2018 09:30:39 GMT): Stecec (Wed, 21 Feb 2018 09:34:37 GMT): Stecec (Wed, 21 Feb 2018 09:34:37 GMT): Stecec (Wed, 21 Feb 2018 09:34:37 GMT): rthatcher (Wed, 21 Feb 2018 09:35:35 GMT): rthatcher (Wed, 21 Feb 2018 09:37:45 GMT): gen_el (Wed, 21 Feb 2018 09:38:51 GMT): gen_el (Wed, 21 Feb 2018 09:38:51 GMT): mahoney1 (Wed, 21 Feb 2018 09:46:23 GMT): Stecec (Wed, 21 Feb 2018 09:46:44 GMT): Stecec (Wed, 21 Feb 2018 09:46:44 GMT): mahoney1 (Wed, 21 Feb 2018 09:47:21 GMT): mahoney1 (Wed, 21 Feb 2018 09:50:10 GMT): rthatcher (Wed, 21 Feb 2018 09:52:31 GMT): rthatcher (Wed, 21 Feb 2018 09:53:48 GMT): gen_el (Wed, 21 Feb 2018 09:55:30 GMT): gen_el (Wed, 21 Feb 2018 09:57:03 GMT): gen_el (Wed, 21 Feb 2018 09:57:03 GMT): Stecec (Wed, 21 Feb 2018 10:15:46 GMT): Stecec (Wed, 21 Feb 2018 10:15:46 GMT): TreyZhong (Wed, 21 Feb 2018 10:42:44 GMT): TreyZhong (Wed, 21 Feb 2018 10:43:01 GMT): TreyZhong (Wed, 21 Feb 2018 10:45:11 GMT): TreyZhong (Wed, 21 Feb 2018 10:46:44 GMT): TreyZhong (Wed, 21 Feb 2018 10:49:59 GMT): TreyZhong (Wed, 21 Feb 2018 10:50:00 GMT): TreyZhong (Wed, 21 Feb 2018 10:50:22 GMT): TreyZhong (Wed, 21 Feb 2018 10:50:35 GMT): TreyZhong (Wed, 21 Feb 2018 10:51:57 GMT): TreyZhong (Wed, 21 Feb 2018 10:52:08 GMT): github-techna (Wed, 21 Feb 2018 10:52:56 GMT): Stecec (Wed, 21 Feb 2018 11:06:24 GMT): Stecec (Wed, 21 Feb 2018 11:06:24 GMT): mahoney1 (Wed, 21 Feb 2018 11:06:47 GMT): mahoney1 (Wed, 21 Feb 2018 11:06:47 GMT): nasserfci (Wed, 21 Feb 2018 11:18:50 GMT): nasserfci (Wed, 21 Feb 2018 11:19:21 GMT): mahoney1 (Wed, 21 Feb 2018 11:24:50 GMT): mahoney1 (Wed, 21 Feb 2018 11:24:50 GMT): mahoney1 (Wed, 21 Feb 2018 11:24:50 GMT): MartinKrmer (Wed, 21 Feb 2018 11:26:48 GMT): MartinKrmer (Wed, 21 Feb 2018 11:26:48 GMT): mahoney1 (Wed, 21 Feb 2018 11:31:46 GMT): mahoney1 (Wed, 21 Feb 2018 11:31:46 GMT): mahoney1 (Wed, 21 Feb 2018 11:39:12 GMT): MartinKrmer (Wed, 21 Feb 2018 11:42:28 GMT): rthatcher (Wed, 21 Feb 2018 11:43:19 GMT): gen_el (Wed, 21 Feb 2018 11:44:18 GMT): gen_el (Wed, 21 Feb 2018 11:57:15 GMT): gen_el (Wed, 21 Feb 2018 11:57:38 GMT): rthatcher (Wed, 21 Feb 2018 12:01:51 GMT): gen_el (Wed, 21 Feb 2018 12:03:46 GMT): mahoney1 (Wed, 21 Feb 2018 12:15:17 GMT): mahoney1 (Wed, 21 Feb 2018 12:17:59 GMT): Stecec (Wed, 21 Feb 2018 12:29:22 GMT): Stecec (Wed, 21 Feb 2018 12:29:22 GMT): Stecec (Wed, 21 Feb 2018 12:29:22 GMT): bingo1234 (Wed, 21 Feb 2018 12:32:40 GMT): ranjithkumarmv (Wed, 21 Feb 2018 12:53:58 GMT): SimonOberzan (Wed, 21 Feb 2018 13:14:37 GMT): Stecec (Wed, 21 Feb 2018 13:22:55 GMT): mahoney1 (Wed, 21 Feb 2018 13:39:30 GMT): CorentinPacaud (Wed, 21 Feb 2018 13:48:14 GMT): CorentinPacaud (Wed, 21 Feb 2018 13:48:14 GMT): CorentinPacaud (Wed, 21 Feb 2018 13:48:39 GMT): CorentinPacaud (Wed, 21 Feb 2018 13:48:43 GMT): CorentinPacaud (Wed, 21 Feb 2018 13:56:05 GMT): ranjithkumarmv (Wed, 21 Feb 2018 14:01:03 GMT): ranjithkumarmv (Wed, 21 Feb 2018 14:01:04 GMT): ranjithkumarmv (Wed, 21 Feb 2018 14:01:04 GMT): SimonOberzan (Wed, 21 Feb 2018 14:09:20 GMT): fabcan (Wed, 21 Feb 2018 14:10:28 GMT): fabcan (Wed, 21 Feb 2018 14:10:28 GMT): fabcan (Wed, 21 Feb 2018 14:10:28 GMT): mabnhdev (Wed, 21 Feb 2018 14:55:20 GMT): CorentinPacaud (Wed, 21 Feb 2018 14:56:19 GMT): mabnhdev (Wed, 21 Feb 2018 14:57:35 GMT): CorentinPacaud (Wed, 21 Feb 2018 14:58:13 GMT): rthatcher (Wed, 21 Feb 2018 15:09:18 GMT): gentios (Wed, 21 Feb 2018 15:29:50 GMT): bingo1234 (Wed, 21 Feb 2018 15:31:11 GMT): ranjithkumarmv (Wed, 21 Feb 2018 15:33:09 GMT): mahoney1 (Wed, 21 Feb 2018 15:36:49 GMT): rthatcher (Wed, 21 Feb 2018 15:41:25 GMT): mahoney1 (Wed, 21 Feb 2018 15:51:05 GMT): mahoney1 (Wed, 21 Feb 2018 15:51:05 GMT): mahoney1 (Wed, 21 Feb 2018 15:55:31 GMT): CorentinPacaud (Wed, 21 Feb 2018 15:56:07 GMT): rthatcher (Wed, 21 Feb 2018 15:56:27 GMT): fabcan (Wed, 21 Feb 2018 16:10:22 GMT): RajaSathya (Wed, 21 Feb 2018 16:19:58 GMT): ranjithkumarmv (Wed, 21 Feb 2018 17:12:57 GMT): TreyZhong (Wed, 21 Feb 2018 19:28:51 GMT): TreyZhong (Wed, 21 Feb 2018 19:28:54 GMT): davidkel (Wed, 21 Feb 2018 19:37:51 GMT): TreyZhong (Wed, 21 Feb 2018 19:39:49 GMT): TreyZhong (Wed, 21 Feb 2018 19:39:52 GMT): davidkel (Wed, 21 Feb 2018 19:43:13 GMT): TreyZhong (Wed, 21 Feb 2018 19:43:30 GMT): davidkel (Wed, 21 Feb 2018 19:43:51 GMT): davidkel (Wed, 21 Feb 2018 19:44:05 GMT): TreyZhong (Wed, 21 Feb 2018 20:02:57 GMT): TreyZhong (Wed, 21 Feb 2018 20:03:04 GMT): TreyZhong (Wed, 21 Feb 2018 20:03:21 GMT): DP (Wed, 21 Feb 2018 20:10:33 GMT): TreyZhong (Wed, 21 Feb 2018 20:20:42 GMT): TreyZhong (Wed, 21 Feb 2018 20:43:21 GMT): TreyZhong (Wed, 21 Feb 2018 20:43:24 GMT): Arindam (Wed, 21 Feb 2018 21:10:19 GMT): Arindam (Wed, 21 Feb 2018 21:10:46 GMT): Arindam (Wed, 21 Feb 2018 21:11:09 GMT): Er1ck (Wed, 21 Feb 2018 21:48:05 GMT): nfrunza (Wed, 21 Feb 2018 22:25:21 GMT): JackyCheng (Thu, 22 Feb 2018 02:49:37 GMT): indira.kalagara (Thu, 22 Feb 2018 03:05:22 GMT): migueltorres (Thu, 22 Feb 2018 03:25:42 GMT): Akshay2218 (Thu, 22 Feb 2018 04:52:40 GMT): Akshay2218 (Thu, 22 Feb 2018 05:08:09 GMT): rohansood42 (Thu, 22 Feb 2018 06:44:48 GMT): rohansood42 (Thu, 22 Feb 2018 06:49:54 GMT): rohansood42 (Thu, 22 Feb 2018 06:50:35 GMT): downTheFallLine (Thu, 22 Feb 2018 06:52:15 GMT): downTheFallLine (Thu, 22 Feb 2018 06:52:31 GMT): rohansood42 (Thu, 22 Feb 2018 06:53:57 GMT): rohansood42 (Thu, 22 Feb 2018 06:54:13 GMT): downTheFallLine (Thu, 22 Feb 2018 06:54:21 GMT): rohansood42 (Thu, 22 Feb 2018 06:56:27 GMT): downTheFallLine (Thu, 22 Feb 2018 06:56:46 GMT): rohansood42 (Thu, 22 Feb 2018 06:57:05 GMT): rohansood42 (Thu, 22 Feb 2018 06:57:29 GMT): rohansood42 (Thu, 22 Feb 2018 06:57:50 GMT): mostafa.elsayyad (Thu, 22 Feb 2018 07:43:20 GMT): rthatcher (Thu, 22 Feb 2018 09:32:52 GMT): rthatcher (Thu, 22 Feb 2018 09:32:52 GMT): rthatcher (Thu, 22 Feb 2018 09:44:49 GMT): nasserfci (Thu, 22 Feb 2018 10:23:17 GMT): MartinKrmer (Thu, 22 Feb 2018 10:33:08 GMT): PrabhatSutar (Thu, 22 Feb 2018 10:40:58 GMT): PrabhatSutar (Thu, 22 Feb 2018 10:42:04 GMT): Akshay2218 (Thu, 22 Feb 2018 11:00:27 GMT): Akshay2218 (Thu, 22 Feb 2018 11:00:27 GMT): aneb (Thu, 22 Feb 2018 11:48:53 GMT): mahoney1 (Thu, 22 Feb 2018 11:48:56 GMT): mahoney1 (Thu, 22 Feb 2018 11:48:56 GMT): rthatcher (Thu, 22 Feb 2018 11:56:11 GMT): mahoney1 (Thu, 22 Feb 2018 12:01:27 GMT): MartinKrmer (Thu, 22 Feb 2018 12:04:26 GMT): Akshay2218 (Thu, 22 Feb 2018 12:15:24 GMT): mahoney1 (Thu, 22 Feb 2018 12:44:02 GMT): mahoney1 (Thu, 22 Feb 2018 12:44:02 GMT): mahoney1 (Thu, 22 Feb 2018 12:44:02 GMT): waleed (Thu, 22 Feb 2018 13:20:55 GMT): rthatcher (Thu, 22 Feb 2018 13:40:23 GMT): waleed (Thu, 22 Feb 2018 13:45:06 GMT): KamalMango (Thu, 22 Feb 2018 13:48:24 GMT): fjblau (Thu, 22 Feb 2018 14:30:10 GMT): mabnhdev (Thu, 22 Feb 2018 14:44:59 GMT): sashico (Thu, 22 Feb 2018 15:18:04 GMT): sashico (Thu, 22 Feb 2018 15:18:31 GMT): rthatcher (Thu, 22 Feb 2018 15:21:13 GMT): rthatcher (Thu, 22 Feb 2018 15:28:35 GMT): sashico (Thu, 22 Feb 2018 15:29:14 GMT): erinohara (Thu, 22 Feb 2018 15:32:26 GMT): rthatcher (Thu, 22 Feb 2018 15:32:37 GMT): rthatcher (Thu, 22 Feb 2018 15:32:37 GMT): sashico (Thu, 22 Feb 2018 15:33:16 GMT): erinohara (Thu, 22 Feb 2018 15:34:31 GMT): erinohara (Thu, 22 Feb 2018 15:35:20 GMT): sashico (Thu, 22 Feb 2018 15:38:07 GMT): sashico (Thu, 22 Feb 2018 15:38:20 GMT): sashico (Thu, 22 Feb 2018 15:39:03 GMT): SimonOberzan (Thu, 22 Feb 2018 15:44:58 GMT): SimonOberzan (Thu, 22 Feb 2018 15:49:08 GMT): SimonOberzan (Thu, 22 Feb 2018 15:49:08 GMT): SimonOberzan (Thu, 22 Feb 2018 15:49:08 GMT): SimonOberzan (Thu, 22 Feb 2018 15:49:08 GMT): mabnhdev (Thu, 22 Feb 2018 16:01:37 GMT): sashico (Thu, 22 Feb 2018 16:06:04 GMT): marksta (Thu, 22 Feb 2018 16:13:09 GMT): ImranBashir (Thu, 22 Feb 2018 16:23:59 GMT): sashico (Thu, 22 Feb 2018 16:50:03 GMT): sashico (Thu, 22 Feb 2018 16:50:09 GMT): sashico (Thu, 22 Feb 2018 16:50:22 GMT): sashico (Thu, 22 Feb 2018 16:55:11 GMT): grice_32 (Thu, 22 Feb 2018 16:57:25 GMT): qb (Thu, 22 Feb 2018 16:57:51 GMT): rthatcher (Thu, 22 Feb 2018 16:59:37 GMT): mahoney1 (Thu, 22 Feb 2018 16:59:48 GMT): harshchaturvedi (Thu, 22 Feb 2018 17:03:08 GMT): rthatcher (Thu, 22 Feb 2018 17:03:18 GMT): mahoney1 (Thu, 22 Feb 2018 17:06:49 GMT): mahoney1 (Thu, 22 Feb 2018 17:09:18 GMT): harshchaturvedi (Thu, 22 Feb 2018 17:11:22 GMT): qb (Thu, 22 Feb 2018 17:11:54 GMT): qb (Thu, 22 Feb 2018 17:12:25 GMT): qb (Thu, 22 Feb 2018 17:13:55 GMT): mahoney1 (Thu, 22 Feb 2018 17:18:07 GMT): erinohara (Thu, 22 Feb 2018 17:19:35 GMT): mahoney1 (Thu, 22 Feb 2018 17:20:42 GMT): harshchaturvedi (Thu, 22 Feb 2018 17:22:10 GMT): harshchaturvedi (Thu, 22 Feb 2018 17:27:09 GMT): sashico (Thu, 22 Feb 2018 17:33:20 GMT): rthatcher (Thu, 22 Feb 2018 17:33:20 GMT): sashico (Thu, 22 Feb 2018 17:33:41 GMT): sashico (Thu, 22 Feb 2018 17:33:53 GMT): mahoney1 (Thu, 22 Feb 2018 17:36:44 GMT): erinohara (Thu, 22 Feb 2018 17:37:42 GMT): erinohara (Thu, 22 Feb 2018 17:38:06 GMT): erinohara (Thu, 22 Feb 2018 17:38:40 GMT): mahoney1 (Thu, 22 Feb 2018 17:39:14 GMT): sashico (Thu, 22 Feb 2018 17:39:39 GMT): sashico (Thu, 22 Feb 2018 17:39:49 GMT): sashico (Thu, 22 Feb 2018 17:40:28 GMT): erinohara (Thu, 22 Feb 2018 17:41:02 GMT): anaik (Thu, 22 Feb 2018 17:43:44 GMT): harshchaturvedi (Thu, 22 Feb 2018 17:44:11 GMT): harshchaturvedi (Thu, 22 Feb 2018 17:45:21 GMT): rthatcher (Thu, 22 Feb 2018 17:46:08 GMT): erinohara (Thu, 22 Feb 2018 17:47:50 GMT): marksta (Thu, 22 Feb 2018 17:52:18 GMT): davidkel (Thu, 22 Feb 2018 18:04:11 GMT): davidkel (Thu, 22 Feb 2018 18:05:32 GMT): davidkel (Thu, 22 Feb 2018 18:06:02 GMT): davidkel (Thu, 22 Feb 2018 18:06:02 GMT): sashico (Thu, 22 Feb 2018 18:09:52 GMT): sstone1 (Thu, 22 Feb 2018 18:54:14 GMT): sstone1 (Thu, 22 Feb 2018 18:54:16 GMT): waleed (Thu, 22 Feb 2018 19:19:00 GMT): waleed (Thu, 22 Feb 2018 19:19:00 GMT): waleed (Thu, 22 Feb 2018 19:19:00 GMT): TreyZhong (Fri, 23 Feb 2018 00:47:09 GMT): kakuzu (Fri, 23 Feb 2018 01:16:52 GMT): kakuzu (Fri, 23 Feb 2018 01:17:24 GMT): TreyZhong (Fri, 23 Feb 2018 01:22:31 GMT): cammachusa (Fri, 23 Feb 2018 02:27:59 GMT): cammachusa (Fri, 23 Feb 2018 02:28:04 GMT): qb (Fri, 23 Feb 2018 02:44:22 GMT): grice_32 (Fri, 23 Feb 2018 04:18:36 GMT): makyl (Fri, 23 Feb 2018 04:18:47 GMT): grice_32 (Fri, 23 Feb 2018 04:18:47 GMT): makyl (Fri, 23 Feb 2018 04:19:53 GMT): mc (Fri, 23 Feb 2018 05:07:08 GMT): makyl (Fri, 23 Feb 2018 05:10:27 GMT): makyl (Fri, 23 Feb 2018 05:10:54 GMT): PrabhatSutar (Fri, 23 Feb 2018 05:58:46 GMT): PrabhatSutar (Fri, 23 Feb 2018 05:58:46 GMT): PrabhatSutar (Fri, 23 Feb 2018 05:58:46 GMT): MartinKrmer (Fri, 23 Feb 2018 06:13:06 GMT): higuchimt (Fri, 23 Feb 2018 07:53:13 GMT): MartinKrmer (Fri, 23 Feb 2018 08:04:22 GMT): rthatcher (Fri, 23 Feb 2018 09:28:07 GMT): rthatcher (Fri, 23 Feb 2018 09:28:07 GMT): rthatcher (Fri, 23 Feb 2018 09:33:58 GMT): rthatcher (Fri, 23 Feb 2018 09:37:55 GMT): fjblau (Fri, 23 Feb 2018 09:38:45 GMT): fjblau (Fri, 23 Feb 2018 09:40:18 GMT): fjblau (Fri, 23 Feb 2018 09:40:44 GMT): rthatcher (Fri, 23 Feb 2018 09:41:42 GMT): fjblau (Fri, 23 Feb 2018 09:43:18 GMT): fjblau (Fri, 23 Feb 2018 09:43:31 GMT): mahoney1 (Fri, 23 Feb 2018 09:45:51 GMT): fjblau (Fri, 23 Feb 2018 09:46:30 GMT): fjblau (Fri, 23 Feb 2018 09:47:18 GMT): fjblau (Fri, 23 Feb 2018 09:51:44 GMT): fjblau (Fri, 23 Feb 2018 09:52:17 GMT): mahoney1 (Fri, 23 Feb 2018 09:55:32 GMT): mahoney1 (Fri, 23 Feb 2018 09:55:32 GMT): fjblau (Fri, 23 Feb 2018 09:57:10 GMT): mahoney1 (Fri, 23 Feb 2018 09:57:53 GMT): mahoney1 (Fri, 23 Feb 2018 09:57:53 GMT): fjblau (Fri, 23 Feb 2018 09:59:00 GMT): fjblau (Fri, 23 Feb 2018 10:03:14 GMT): mahoney1 (Fri, 23 Feb 2018 10:05:22 GMT): mahoney1 (Fri, 23 Feb 2018 10:05:22 GMT): mahoney1 (Fri, 23 Feb 2018 10:05:22 GMT): mahoney1 (Fri, 23 Feb 2018 10:05:22 GMT): mahoney1 (Fri, 23 Feb 2018 10:05:22 GMT): mahoney1 (Fri, 23 Feb 2018 10:05:22 GMT): mahoney1 (Fri, 23 Feb 2018 10:08:33 GMT): fjblau (Fri, 23 Feb 2018 10:09:56 GMT): mahoney1 (Fri, 23 Feb 2018 10:10:57 GMT): fjblau (Fri, 23 Feb 2018 10:16:08 GMT): PrabhatSutar (Fri, 23 Feb 2018 10:18:25 GMT): sashico (Fri, 23 Feb 2018 11:28:38 GMT): waleed (Fri, 23 Feb 2018 11:30:33 GMT): mahoney1 (Fri, 23 Feb 2018 11:53:58 GMT): suva (Fri, 23 Feb 2018 12:00:37 GMT): mahoney1 (Fri, 23 Feb 2018 12:06:08 GMT): mahoney1 (Fri, 23 Feb 2018 12:06:08 GMT): mahoney1 (Fri, 23 Feb 2018 12:07:05 GMT): suva (Fri, 23 Feb 2018 12:13:36 GMT): waleed (Fri, 23 Feb 2018 12:20:29 GMT): mahoney1 (Fri, 23 Feb 2018 12:37:37 GMT): mahoney1 (Fri, 23 Feb 2018 12:40:18 GMT): mahoney1 (Fri, 23 Feb 2018 12:40:18 GMT): mahoney1 (Fri, 23 Feb 2018 12:40:18 GMT): nagarajants (Fri, 23 Feb 2018 12:40:41 GMT): mihaipruna (Fri, 23 Feb 2018 12:48:41 GMT): mihaipruna (Fri, 23 Feb 2018 12:48:55 GMT): SimonOberzan (Fri, 23 Feb 2018 13:13:36 GMT): guyver (Fri, 23 Feb 2018 13:15:40 GMT): suva (Fri, 23 Feb 2018 13:22:39 GMT): suva (Fri, 23 Feb 2018 13:22:41 GMT): suva (Fri, 23 Feb 2018 13:23:23 GMT): suva (Fri, 23 Feb 2018 13:23:37 GMT): suva (Fri, 23 Feb 2018 13:23:38 GMT): suva (Fri, 23 Feb 2018 13:23:42 GMT): guyver (Fri, 23 Feb 2018 13:31:19 GMT): grice_32 (Fri, 23 Feb 2018 13:46:06 GMT): mahoney1 (Fri, 23 Feb 2018 13:55:45 GMT): rthatcher (Fri, 23 Feb 2018 14:16:45 GMT): guyver (Fri, 23 Feb 2018 14:17:49 GMT): mahoney1 (Fri, 23 Feb 2018 14:19:36 GMT): mahoney1 (Fri, 23 Feb 2018 14:19:36 GMT): SimonOberzan (Fri, 23 Feb 2018 14:21:03 GMT): mihaipruna (Fri, 23 Feb 2018 14:25:19 GMT): mahoney1 (Fri, 23 Feb 2018 14:38:48 GMT): guyver (Fri, 23 Feb 2018 14:41:50 GMT): mahoney1 (Fri, 23 Feb 2018 14:42:36 GMT): mahoney1 (Fri, 23 Feb 2018 14:47:25 GMT): mahoney1 (Fri, 23 Feb 2018 14:47:25 GMT): kakuzu (Fri, 23 Feb 2018 14:49:36 GMT): guyver (Fri, 23 Feb 2018 14:50:38 GMT): mahoney1 (Fri, 23 Feb 2018 14:53:16 GMT): mihaipruna (Fri, 23 Feb 2018 15:34:33 GMT): waleed (Fri, 23 Feb 2018 15:35:05 GMT): mahoney1 (Fri, 23 Feb 2018 15:49:57 GMT): waleed (Fri, 23 Feb 2018 15:59:09 GMT): waleed (Fri, 23 Feb 2018 15:59:09 GMT): waleed (Fri, 23 Feb 2018 16:02:37 GMT): mahoney1 (Fri, 23 Feb 2018 16:43:52 GMT): mahoney1 (Fri, 23 Feb 2018 16:59:15 GMT): AccentSandy (Fri, 23 Feb 2018 17:21:34 GMT): chivardi (Fri, 23 Feb 2018 17:36:29 GMT): vishwass9 (Fri, 23 Feb 2018 17:51:59 GMT): neerajmdas (Fri, 23 Feb 2018 18:09:08 GMT): jmason900 (Fri, 23 Feb 2018 18:58:42 GMT): kakuzu (Fri, 23 Feb 2018 20:45:38 GMT): kakuzu (Fri, 23 Feb 2018 20:58:45 GMT): kakuzu (Fri, 23 Feb 2018 21:00:21 GMT): kakuzu (Fri, 23 Feb 2018 21:00:51 GMT): erinohara (Fri, 23 Feb 2018 21:30:36 GMT): cammachusa (Fri, 23 Feb 2018 22:25:06 GMT): Dilip 25 (Sat, 24 Feb 2018 01:05:22 GMT): gahgeer (Sat, 24 Feb 2018 01:15:42 GMT): LuckLi (Sat, 24 Feb 2018 02:17:09 GMT): mc (Sat, 24 Feb 2018 03:31:38 GMT): mc (Sat, 24 Feb 2018 03:31:50 GMT): aneb (Sat, 24 Feb 2018 07:49:13 GMT): mreddychitti (Sat, 24 Feb 2018 08:26:20 GMT): mreddychitti (Sat, 24 Feb 2018 08:26:20 GMT): mreddychitti (Sat, 24 Feb 2018 08:26:20 GMT): mreddychitti (Sat, 24 Feb 2018 08:26:20 GMT): dyeghikoo (Sat, 24 Feb 2018 12:00:46 GMT): varunagarwal (Sat, 24 Feb 2018 12:31:22 GMT): varunagarwal (Sat, 24 Feb 2018 13:38:09 GMT): silliman (Sat, 24 Feb 2018 14:51:40 GMT): mc (Sat, 24 Feb 2018 14:54:50 GMT): silliman (Sat, 24 Feb 2018 14:59:15 GMT): aneb (Sat, 24 Feb 2018 15:19:27 GMT): yxuco (Sat, 24 Feb 2018 16:59:55 GMT): yxuco (Sat, 24 Feb 2018 17:11:18 GMT): christian3042 (Sat, 24 Feb 2018 23:08:46 GMT): yoko (Sun, 25 Feb 2018 02:10:47 GMT): bingo1234 (Sun, 25 Feb 2018 08:06:39 GMT): bingo1234 (Sun, 25 Feb 2018 08:06:39 GMT): bingo1234 (Sun, 25 Feb 2018 08:06:39 GMT): bingo1234 (Sun, 25 Feb 2018 08:08:45 GMT): bingo1234 (Sun, 25 Feb 2018 08:28:53 GMT): bingo1234 (Sun, 25 Feb 2018 08:28:53 GMT): bingo1234 (Sun, 25 Feb 2018 10:44:03 GMT): bingo1234 (Sun, 25 Feb 2018 10:46:28 GMT): dyeghikoo (Sun, 25 Feb 2018 15:54:27 GMT): dyeghikoo (Sun, 25 Feb 2018 16:02:45 GMT): nolimitkun (Sun, 25 Feb 2018 20:40:53 GMT): kakuzu (Sun, 25 Feb 2018 21:37:51 GMT): majestade (Sun, 25 Feb 2018 22:09:46 GMT): majestade (Sun, 25 Feb 2018 22:10:24 GMT): MuhammadSalah (Mon, 26 Feb 2018 00:36:35 GMT): kakuzu (Mon, 26 Feb 2018 02:26:19 GMT): sun337 (Mon, 26 Feb 2018 06:43:46 GMT): Jaline (Mon, 26 Feb 2018 07:37:37 GMT): AkramAlkhalil (Mon, 26 Feb 2018 07:47:37 GMT): CorentinPacaud (Mon, 26 Feb 2018 08:34:00 GMT): prabvi01 (Mon, 26 Feb 2018 08:36:01 GMT): prabvi01 (Mon, 26 Feb 2018 08:36:01 GMT): CorentinPacaud (Mon, 26 Feb 2018 08:38:26 GMT): varun-raj (Mon, 26 Feb 2018 09:17:41 GMT): majestade (Mon, 26 Feb 2018 09:43:45 GMT): MartinKrmer (Mon, 26 Feb 2018 09:58:17 GMT): mahoney1 (Mon, 26 Feb 2018 10:01:09 GMT): mahoney1 (Mon, 26 Feb 2018 10:02:55 GMT): mahoney1 (Mon, 26 Feb 2018 10:09:01 GMT): mahoney1 (Mon, 26 Feb 2018 10:12:19 GMT): Legiit (Mon, 26 Feb 2018 10:12:32 GMT): mahoney1 (Mon, 26 Feb 2018 10:16:03 GMT): mahoney1 (Mon, 26 Feb 2018 10:22:08 GMT): majestade (Mon, 26 Feb 2018 10:23:01 GMT): rthatcher (Mon, 26 Feb 2018 11:05:09 GMT): purandam (Mon, 26 Feb 2018 12:13:51 GMT): varunagarwal (Mon, 26 Feb 2018 12:15:24 GMT): varunagarwal (Mon, 26 Feb 2018 12:15:41 GMT): Jaline (Mon, 26 Feb 2018 12:16:22 GMT): rthatcher (Mon, 26 Feb 2018 12:44:20 GMT): mikeleow (Mon, 26 Feb 2018 12:58:27 GMT): mikeleow (Mon, 26 Feb 2018 13:02:20 GMT): mikeleow (Mon, 26 Feb 2018 13:03:21 GMT): Legiit (Mon, 26 Feb 2018 13:06:44 GMT): Legiit (Mon, 26 Feb 2018 13:06:56 GMT): Legiit (Mon, 26 Feb 2018 13:06:56 GMT): rthatcher (Mon, 26 Feb 2018 13:15:21 GMT): mreddychitti (Mon, 26 Feb 2018 13:23:44 GMT): mikeleow (Mon, 26 Feb 2018 13:24:47 GMT): mikeleow (Mon, 26 Feb 2018 13:25:36 GMT): mikeleow (Mon, 26 Feb 2018 13:28:29 GMT): mikeleow (Mon, 26 Feb 2018 13:28:50 GMT): mikeleow (Mon, 26 Feb 2018 13:34:07 GMT): mikeleow (Mon, 26 Feb 2018 13:34:29 GMT): mikeleow (Mon, 26 Feb 2018 13:35:49 GMT): rthatcher (Mon, 26 Feb 2018 13:38:00 GMT): mikeleow (Mon, 26 Feb 2018 13:40:01 GMT): mikeleow (Mon, 26 Feb 2018 13:40:08 GMT): mikeleow (Mon, 26 Feb 2018 14:04:00 GMT): sun337 (Mon, 26 Feb 2018 14:06:49 GMT): sun337 (Mon, 26 Feb 2018 14:07:03 GMT): sun337 (Mon, 26 Feb 2018 14:08:05 GMT): sun337 (Mon, 26 Feb 2018 14:08:20 GMT): sun337 (Mon, 26 Feb 2018 14:09:32 GMT): sun337 (Mon, 26 Feb 2018 14:10:03 GMT): rthatcher (Mon, 26 Feb 2018 14:11:29 GMT): mikeleow (Mon, 26 Feb 2018 14:12:05 GMT): mikeleow (Mon, 26 Feb 2018 14:12:12 GMT): mikeleow (Mon, 26 Feb 2018 14:12:15 GMT): Legiit (Mon, 26 Feb 2018 14:17:31 GMT): Legiit (Mon, 26 Feb 2018 14:17:31 GMT): mikeleow (Mon, 26 Feb 2018 14:20:55 GMT): mahoney1 (Mon, 26 Feb 2018 14:27:23 GMT): brianweaveros (Mon, 26 Feb 2018 14:41:13 GMT): mikeleow (Mon, 26 Feb 2018 14:42:20 GMT): mikeleow (Mon, 26 Feb 2018 14:42:23 GMT): brianweaveros (Mon, 26 Feb 2018 14:43:35 GMT): SumitTembe (Mon, 26 Feb 2018 14:47:57 GMT): SumitTembe (Mon, 26 Feb 2018 14:48:17 GMT): SumitTembe (Mon, 26 Feb 2018 14:49:02 GMT): SumitTembe (Mon, 26 Feb 2018 14:50:27 GMT): MartinKrmer (Mon, 26 Feb 2018 14:51:24 GMT): SumitTembe (Mon, 26 Feb 2018 14:52:01 GMT): krabradosty (Mon, 26 Feb 2018 14:55:03 GMT): krabradosty (Mon, 26 Feb 2018 14:55:03 GMT): krabradosty (Mon, 26 Feb 2018 14:55:03 GMT): sun337 (Mon, 26 Feb 2018 15:08:18 GMT): sun337 (Mon, 26 Feb 2018 15:09:53 GMT): sun337 (Mon, 26 Feb 2018 15:11:11 GMT): rthatcher (Mon, 26 Feb 2018 15:31:18 GMT): sun337 (Mon, 26 Feb 2018 16:03:14 GMT): sun337 (Mon, 26 Feb 2018 16:03:56 GMT): mikeleow (Mon, 26 Feb 2018 16:06:26 GMT): mahoney1 (Mon, 26 Feb 2018 16:09:49 GMT): mahoney1 (Mon, 26 Feb 2018 16:09:49 GMT): rthatcher (Mon, 26 Feb 2018 16:10:28 GMT): sun337 (Mon, 26 Feb 2018 16:30:08 GMT): phanikumar1210 (Mon, 26 Feb 2018 18:45:34 GMT): MartinKrmer (Mon, 26 Feb 2018 19:28:20 GMT): fjblau (Mon, 26 Feb 2018 19:34:57 GMT): lucasdf (Mon, 26 Feb 2018 20:04:56 GMT): VickyZou (Mon, 26 Feb 2018 22:56:19 GMT): Jaline (Tue, 27 Feb 2018 02:26:08 GMT): phal0r (Tue, 27 Feb 2018 02:59:02 GMT): ghindle (Tue, 27 Feb 2018 04:27:30 GMT): ra_w (Tue, 27 Feb 2018 05:02:06 GMT): Paradox (Tue, 27 Feb 2018 06:18:17 GMT): Paradox (Tue, 27 Feb 2018 07:07:26 GMT): Legiit (Tue, 27 Feb 2018 08:28:42 GMT): suva (Tue, 27 Feb 2018 08:44:26 GMT): rthatcher (Tue, 27 Feb 2018 09:22:54 GMT): rthatcher (Tue, 27 Feb 2018 09:24:24 GMT): rthatcher (Tue, 27 Feb 2018 09:43:28 GMT): mikeleow (Tue, 27 Feb 2018 09:53:55 GMT): mikeleow (Tue, 27 Feb 2018 09:54:20 GMT): mikeleow (Tue, 27 Feb 2018 09:54:22 GMT): mikeleow (Tue, 27 Feb 2018 09:54:23 GMT): Legiit (Tue, 27 Feb 2018 10:04:57 GMT): Legiit (Tue, 27 Feb 2018 10:04:57 GMT): Legiit (Tue, 27 Feb 2018 10:04:57 GMT): allentsai93 (Tue, 27 Feb 2018 10:06:30 GMT): allentsai93 (Tue, 27 Feb 2018 10:09:28 GMT): allentsai93 (Tue, 27 Feb 2018 10:09:42 GMT): allentsai93 (Tue, 27 Feb 2018 10:09:51 GMT): allentsai93 (Tue, 27 Feb 2018 10:09:59 GMT): Legiit (Tue, 27 Feb 2018 10:13:30 GMT): Legiit (Tue, 27 Feb 2018 10:13:30 GMT): Legiit (Tue, 27 Feb 2018 10:14:27 GMT): allentsai93 (Tue, 27 Feb 2018 10:15:31 GMT): allentsai93 (Tue, 27 Feb 2018 10:15:47 GMT): mikeleow (Tue, 27 Feb 2018 10:17:09 GMT): allentsai93 (Tue, 27 Feb 2018 10:17:29 GMT): Legiit (Tue, 27 Feb 2018 10:18:58 GMT): Legiit (Tue, 27 Feb 2018 10:18:58 GMT): allentsai93 (Tue, 27 Feb 2018 10:19:51 GMT): allentsai93 (Tue, 27 Feb 2018 10:22:39 GMT): allentsai93 (Tue, 27 Feb 2018 10:22:41 GMT): Legiit (Tue, 27 Feb 2018 10:23:04 GMT): Legiit (Tue, 27 Feb 2018 10:34:58 GMT): Legiit (Tue, 27 Feb 2018 10:36:23 GMT): Legiit (Tue, 27 Feb 2018 10:36:23 GMT): Legiit (Tue, 27 Feb 2018 10:36:23 GMT): argman (Tue, 27 Feb 2018 10:44:49 GMT): CorentinPacaud (Tue, 27 Feb 2018 10:45:34 GMT): rthatcher (Tue, 27 Feb 2018 10:46:50 GMT): rthatcher (Tue, 27 Feb 2018 11:05:35 GMT): mahoney1 (Tue, 27 Feb 2018 11:08:42 GMT): mahoney1 (Tue, 27 Feb 2018 11:18:51 GMT): dpurnima0709 (Tue, 27 Feb 2018 11:38:49 GMT): Jaline (Tue, 27 Feb 2018 12:03:41 GMT): Jaline (Tue, 27 Feb 2018 12:03:49 GMT): mabnhdev (Tue, 27 Feb 2018 12:07:07 GMT): mabnhdev (Tue, 27 Feb 2018 12:07:07 GMT): mahoney1 (Tue, 27 Feb 2018 12:13:44 GMT): mahoney1 (Tue, 27 Feb 2018 12:13:44 GMT): mahoney1 (Tue, 27 Feb 2018 12:13:44 GMT): mahoney1 (Tue, 27 Feb 2018 12:22:56 GMT): mahoney1 (Tue, 27 Feb 2018 12:28:35 GMT): argman (Tue, 27 Feb 2018 12:30:08 GMT): argman (Tue, 27 Feb 2018 12:30:08 GMT): argman (Tue, 27 Feb 2018 12:30:08 GMT): mahoney1 (Tue, 27 Feb 2018 12:36:56 GMT): mahoney1 (Tue, 27 Feb 2018 12:36:56 GMT): mikeleow (Tue, 27 Feb 2018 12:49:13 GMT): rthatcher (Tue, 27 Feb 2018 12:50:22 GMT): rthatcher (Tue, 27 Feb 2018 12:50:22 GMT): Legiit (Tue, 27 Feb 2018 12:50:37 GMT): Legiit (Tue, 27 Feb 2018 12:50:37 GMT): rthatcher (Tue, 27 Feb 2018 12:55:41 GMT): rthatcher (Tue, 27 Feb 2018 12:59:14 GMT): mahoney1 (Tue, 27 Feb 2018 12:59:21 GMT): mahoney1 (Tue, 27 Feb 2018 12:59:21 GMT): Legiit (Tue, 27 Feb 2018 13:00:52 GMT): rthatcher (Tue, 27 Feb 2018 13:04:27 GMT): rthatcher (Tue, 27 Feb 2018 13:04:27 GMT): mikeleow (Tue, 27 Feb 2018 13:10:25 GMT): Legiit (Tue, 27 Feb 2018 13:14:06 GMT): MartinKrmer (Tue, 27 Feb 2018 13:43:59 GMT): Santhosh_S (Tue, 27 Feb 2018 13:44:42 GMT): Santhosh_S (Tue, 27 Feb 2018 14:03:10 GMT): Santhosh_S (Tue, 27 Feb 2018 14:03:17 GMT): mahoney1 (Tue, 27 Feb 2018 14:35:13 GMT): mahoney1 (Tue, 27 Feb 2018 14:35:13 GMT): faezeh993 (Tue, 27 Feb 2018 14:49:34 GMT): theathibm (Tue, 27 Feb 2018 15:17:44 GMT): theathibm (Tue, 27 Feb 2018 15:17:51 GMT): kakuzu (Tue, 27 Feb 2018 16:56:00 GMT): kakuzu (Tue, 27 Feb 2018 16:56:50 GMT): kakuzu (Tue, 27 Feb 2018 16:57:44 GMT): kakuzu (Tue, 27 Feb 2018 16:57:48 GMT): kakuzu (Tue, 27 Feb 2018 16:58:37 GMT): leonsp (Tue, 27 Feb 2018 17:00:54 GMT): Arindam (Tue, 27 Feb 2018 17:21:57 GMT): Arindam (Tue, 27 Feb 2018 17:22:34 GMT): rthatcher (Tue, 27 Feb 2018 17:35:07 GMT): kakuzu (Tue, 27 Feb 2018 17:43:10 GMT): kakuzu (Tue, 27 Feb 2018 17:44:30 GMT): kakuzu (Tue, 27 Feb 2018 17:45:28 GMT): rthatcher (Tue, 27 Feb 2018 17:48:06 GMT): LloydPalum (Tue, 27 Feb 2018 18:15:19 GMT): LloydPalum (Tue, 27 Feb 2018 18:15:47 GMT): kakuzu (Tue, 27 Feb 2018 18:25:03 GMT): phanikumar1210 (Tue, 27 Feb 2018 18:30:40 GMT): kakuzu (Tue, 27 Feb 2018 18:31:33 GMT): phanikumar1210 (Tue, 27 Feb 2018 18:36:30 GMT): leonsp (Tue, 27 Feb 2018 19:20:55 GMT): kakuzu (Tue, 27 Feb 2018 19:23:06 GMT): kakuzu (Tue, 27 Feb 2018 19:23:43 GMT): kakuzu (Tue, 27 Feb 2018 19:23:43 GMT): kakuzu (Tue, 27 Feb 2018 19:23:43 GMT): kakuzu (Tue, 27 Feb 2018 19:23:43 GMT): MuhammadSalah (Tue, 27 Feb 2018 19:50:16 GMT): MuhammadSalah (Tue, 27 Feb 2018 19:50:30 GMT): kakuzu (Tue, 27 Feb 2018 19:50:47 GMT): MuhammadSalah (Tue, 27 Feb 2018 19:51:59 GMT): MuhammadSalah (Tue, 27 Feb 2018 19:52:19 GMT): kakuzu (Tue, 27 Feb 2018 19:52:42 GMT): kakuzu (Tue, 27 Feb 2018 19:54:13 GMT): MuhammadSalah (Tue, 27 Feb 2018 19:54:54 GMT): MuhammadSalah (Tue, 27 Feb 2018 19:55:00 GMT): MuhammadSalah (Tue, 27 Feb 2018 19:55:21 GMT): MuhammadSalah (Tue, 27 Feb 2018 19:55:28 GMT): MuhammadSalah (Tue, 27 Feb 2018 19:55:36 GMT): VikasJakhar (Tue, 27 Feb 2018 20:05:40 GMT): lucasdf (Tue, 27 Feb 2018 21:04:25 GMT): phanikumar (Tue, 27 Feb 2018 21:31:54 GMT): phanikumar (Tue, 27 Feb 2018 21:32:35 GMT): brian.leppez (Wed, 28 Feb 2018 00:54:42 GMT): brian.leppez (Wed, 28 Feb 2018 00:58:46 GMT): esaygi (Wed, 28 Feb 2018 01:34:44 GMT): seth (Wed, 28 Feb 2018 03:25:08 GMT): dpurnima0709 (Wed, 28 Feb 2018 06:26:54 GMT): dpurnima0709 (Wed, 28 Feb 2018 06:28:35 GMT): Jaline (Wed, 28 Feb 2018 06:43:48 GMT): ranjithkumarmv (Wed, 28 Feb 2018 07:07:26 GMT): ranjithkumarmv (Wed, 28 Feb 2018 07:08:34 GMT): ranjithkumarmv (Wed, 28 Feb 2018 07:08:34 GMT): thelostone-mc (Wed, 28 Feb 2018 07:46:03 GMT): thelostone-mc (Wed, 28 Feb 2018 07:46:30 GMT): AkshayJindal (Wed, 28 Feb 2018 08:50:30 GMT): waleed (Wed, 28 Feb 2018 08:53:43 GMT): waleed (Wed, 28 Feb 2018 08:54:06 GMT): waleed (Wed, 28 Feb 2018 08:54:51 GMT): argman (Wed, 28 Feb 2018 09:32:45 GMT): mahoney1 (Wed, 28 Feb 2018 09:33:56 GMT): waleed (Wed, 28 Feb 2018 09:35:46 GMT): rthatcher (Wed, 28 Feb 2018 09:40:26 GMT): rthatcher (Wed, 28 Feb 2018 09:44:59 GMT): rthatcher (Wed, 28 Feb 2018 09:44:59 GMT): mahoney1 (Wed, 28 Feb 2018 09:45:36 GMT): mahoney1 (Wed, 28 Feb 2018 09:45:36 GMT): mahoney1 (Wed, 28 Feb 2018 09:47:57 GMT): waleed (Wed, 28 Feb 2018 09:49:41 GMT): waleed (Wed, 28 Feb 2018 09:49:59 GMT): chandrakanthm (Wed, 28 Feb 2018 09:50:18 GMT): chandrakanthm (Wed, 28 Feb 2018 09:50:39 GMT): rthatcher (Wed, 28 Feb 2018 09:52:11 GMT): waleed (Wed, 28 Feb 2018 09:52:12 GMT): mahoney1 (Wed, 28 Feb 2018 09:53:36 GMT): thelostone-mc (Wed, 28 Feb 2018 09:59:18 GMT): Stecec (Wed, 28 Feb 2018 10:05:14 GMT): Stecec (Wed, 28 Feb 2018 10:05:14 GMT): waleed (Wed, 28 Feb 2018 10:08:48 GMT): rthatcher (Wed, 28 Feb 2018 10:14:09 GMT): rthatcher (Wed, 28 Feb 2018 10:48:22 GMT): hkakaiya (Wed, 28 Feb 2018 10:49:00 GMT): hkakaiya (Wed, 28 Feb 2018 10:50:12 GMT): hkakaiya (Wed, 28 Feb 2018 10:50:43 GMT): mahoney1 (Wed, 28 Feb 2018 10:51:45 GMT): mahoney1 (Wed, 28 Feb 2018 11:00:36 GMT): mahoney1 (Wed, 28 Feb 2018 11:00:36 GMT): mahoney1 (Wed, 28 Feb 2018 11:03:55 GMT): uber.twin (Wed, 28 Feb 2018 11:08:48 GMT): mahoney1 (Wed, 28 Feb 2018 11:09:06 GMT): mahoney1 (Wed, 28 Feb 2018 11:20:08 GMT): mahoney1 (Wed, 28 Feb 2018 11:23:24 GMT): mahoney1 (Wed, 28 Feb 2018 11:31:35 GMT): varunagarwal (Wed, 28 Feb 2018 11:34:59 GMT): varunagarwal (Wed, 28 Feb 2018 11:35:14 GMT): mahoney1 (Wed, 28 Feb 2018 11:38:51 GMT): mahoney1 (Wed, 28 Feb 2018 11:38:51 GMT): mahoney1 (Wed, 28 Feb 2018 11:38:51 GMT): varunagarwal (Wed, 28 Feb 2018 11:39:14 GMT): mahoney1 (Wed, 28 Feb 2018 11:39:59 GMT): varunagarwal (Wed, 28 Feb 2018 11:40:04 GMT): varunagarwal (Wed, 28 Feb 2018 11:40:08 GMT): varunagarwal (Wed, 28 Feb 2018 11:40:14 GMT): mahoney1 (Wed, 28 Feb 2018 11:41:38 GMT): varunagarwal (Wed, 28 Feb 2018 11:42:16 GMT): varunagarwal (Wed, 28 Feb 2018 11:42:25 GMT): mahoney1 (Wed, 28 Feb 2018 11:42:29 GMT): mahoney1 (Wed, 28 Feb 2018 11:42:29 GMT): mahoney1 (Wed, 28 Feb 2018 11:43:01 GMT): Stecec (Wed, 28 Feb 2018 11:45:13 GMT): rthatcher (Wed, 28 Feb 2018 11:46:56 GMT): qb (Wed, 28 Feb 2018 11:53:41 GMT): qb (Wed, 28 Feb 2018 11:54:17 GMT): qb (Wed, 28 Feb 2018 11:55:39 GMT): Stecec (Wed, 28 Feb 2018 11:58:26 GMT): Stecec (Wed, 28 Feb 2018 11:58:26 GMT): waleed (Wed, 28 Feb 2018 12:00:30 GMT): waleed (Wed, 28 Feb 2018 12:00:30 GMT): waleed (Wed, 28 Feb 2018 12:00:34 GMT): waleed (Wed, 28 Feb 2018 12:02:36 GMT): waleed (Wed, 28 Feb 2018 12:03:02 GMT): rthatcher (Wed, 28 Feb 2018 12:04:50 GMT): Stecec (Wed, 28 Feb 2018 12:05:30 GMT): mahoney1 (Wed, 28 Feb 2018 12:09:06 GMT): mahoney1 (Wed, 28 Feb 2018 12:09:06 GMT): waleed (Wed, 28 Feb 2018 12:13:29 GMT): Stecec (Wed, 28 Feb 2018 12:15:01 GMT): Stecec (Wed, 28 Feb 2018 12:15:01 GMT): qb (Wed, 28 Feb 2018 12:18:59 GMT): mahoney1 (Wed, 28 Feb 2018 12:21:49 GMT): varunagarwal (Wed, 28 Feb 2018 12:23:23 GMT): varunagarwal (Wed, 28 Feb 2018 12:24:23 GMT): varunagarwal (Wed, 28 Feb 2018 12:30:24 GMT): brian.leppez (Wed, 28 Feb 2018 13:06:35 GMT): brian.leppez (Wed, 28 Feb 2018 13:06:35 GMT): mahoney1 (Wed, 28 Feb 2018 13:08:44 GMT): mahoney1 (Wed, 28 Feb 2018 13:08:44 GMT): mahoney1 (Wed, 28 Feb 2018 13:08:44 GMT): tsuberg (Wed, 28 Feb 2018 13:11:02 GMT): MartinKrmer (Wed, 28 Feb 2018 13:13:55 GMT): varunagarwal (Wed, 28 Feb 2018 13:18:12 GMT): mahoney1 (Wed, 28 Feb 2018 13:20:07 GMT): mahoney1 (Wed, 28 Feb 2018 13:22:03 GMT): varunagarwal (Wed, 28 Feb 2018 13:22:30 GMT): mahoney1 (Wed, 28 Feb 2018 13:22:45 GMT): mahoney1 (Wed, 28 Feb 2018 13:23:06 GMT): varunagarwal (Wed, 28 Feb 2018 13:23:10 GMT): mahoney1 (Wed, 28 Feb 2018 13:23:10 GMT): varunagarwal (Wed, 28 Feb 2018 13:23:28 GMT): varunagarwal (Wed, 28 Feb 2018 13:23:45 GMT): mahoney1 (Wed, 28 Feb 2018 13:24:06 GMT): waleed (Wed, 28 Feb 2018 13:31:34 GMT): waleed (Wed, 28 Feb 2018 13:32:01 GMT): waleed (Wed, 28 Feb 2018 13:32:18 GMT): waleed (Wed, 28 Feb 2018 13:32:35 GMT): mahoney1 (Wed, 28 Feb 2018 13:38:22 GMT): mahoney1 (Wed, 28 Feb 2018 13:40:03 GMT): brian.leppez (Wed, 28 Feb 2018 13:41:26 GMT): waleed (Wed, 28 Feb 2018 13:45:39 GMT): AlanPalmer (Wed, 28 Feb 2018 13:52:19 GMT): AlanPalmer (Wed, 28 Feb 2018 13:57:38 GMT): Santhosh_S (Wed, 28 Feb 2018 14:03:59 GMT): mahoney1 (Wed, 28 Feb 2018 14:14:22 GMT): mahoney1 (Wed, 28 Feb 2018 14:14:22 GMT): mahoney1 (Wed, 28 Feb 2018 14:14:22 GMT): brian.leppez (Wed, 28 Feb 2018 14:15:00 GMT): mahoney1 (Wed, 28 Feb 2018 14:16:21 GMT): mahoney1 (Wed, 28 Feb 2018 14:18:20 GMT): waleed (Wed, 28 Feb 2018 14:19:16 GMT): rthatcher (Wed, 28 Feb 2018 14:31:10 GMT): Legiit (Wed, 28 Feb 2018 14:31:20 GMT): rthatcher (Wed, 28 Feb 2018 14:40:41 GMT): Legiit (Wed, 28 Feb 2018 14:49:11 GMT): Legiit (Wed, 28 Feb 2018 14:51:07 GMT): Legiit (Wed, 28 Feb 2018 14:51:20 GMT): TsuiSauChi (Wed, 28 Feb 2018 14:55:07 GMT): dtp (Wed, 28 Feb 2018 15:10:53 GMT): dtp (Wed, 28 Feb 2018 15:12:10 GMT): rthatcher (Wed, 28 Feb 2018 15:23:33 GMT): RajaSathya (Wed, 28 Feb 2018 15:32:42 GMT): RajaSathya (Wed, 28 Feb 2018 15:34:02 GMT): RajaSathya (Wed, 28 Feb 2018 15:35:25 GMT): RajaSathya (Wed, 28 Feb 2018 15:35:41 GMT): RajaSathya (Wed, 28 Feb 2018 15:36:33 GMT): rthatcher (Wed, 28 Feb 2018 15:41:10 GMT): chandrakanthm (Wed, 28 Feb 2018 15:41:23 GMT): chandrakanthm (Wed, 28 Feb 2018 15:41:23 GMT): kakuzu (Wed, 28 Feb 2018 15:43:36 GMT): Rmannn (Wed, 28 Feb 2018 15:51:29 GMT): seth (Wed, 28 Feb 2018 15:52:37 GMT): rthatcher (Wed, 28 Feb 2018 15:54:55 GMT): rthatcher (Wed, 28 Feb 2018 15:54:55 GMT): TsuiSauChi (Wed, 28 Feb 2018 15:55:21 GMT): rthatcher (Wed, 28 Feb 2018 16:01:27 GMT): mahoney1 (Wed, 28 Feb 2018 16:02:44 GMT): vishwak (Wed, 28 Feb 2018 16:04:11 GMT): mahoney1 (Wed, 28 Feb 2018 16:05:07 GMT): seth (Wed, 28 Feb 2018 16:05:27 GMT): Rmannn (Wed, 28 Feb 2018 16:07:20 GMT): mahoney1 (Wed, 28 Feb 2018 16:07:30 GMT): RajaSathya (Wed, 28 Feb 2018 16:08:13 GMT): talljhawkins (Wed, 28 Feb 2018 16:08:37 GMT): talljhawkins (Wed, 28 Feb 2018 16:09:11 GMT): talljhawkins (Wed, 28 Feb 2018 16:10:18 GMT): RajaSathya (Wed, 28 Feb 2018 16:10:46 GMT): mahoney1 (Wed, 28 Feb 2018 16:10:47 GMT): Rmannn (Wed, 28 Feb 2018 16:13:01 GMT): mahoney1 (Wed, 28 Feb 2018 16:21:44 GMT): mahoney1 (Wed, 28 Feb 2018 16:27:52 GMT): mahoney1 (Wed, 28 Feb 2018 16:27:52 GMT): talljhawkins (Wed, 28 Feb 2018 16:29:08 GMT): talljhawkins (Wed, 28 Feb 2018 16:29:44 GMT): mahoney1 (Wed, 28 Feb 2018 16:31:08 GMT): mahoney1 (Wed, 28 Feb 2018 16:31:08 GMT): talljhawkins (Wed, 28 Feb 2018 16:34:19 GMT): Rmannn (Wed, 28 Feb 2018 16:37:30 GMT): mahoney1 (Wed, 28 Feb 2018 16:37:46 GMT): mahoney1 (Wed, 28 Feb 2018 16:37:46 GMT): mahoney1 (Wed, 28 Feb 2018 16:54:42 GMT): Rmannn (Wed, 28 Feb 2018 17:02:38 GMT): mahoney1 (Wed, 28 Feb 2018 17:15:54 GMT): Rmannn (Wed, 28 Feb 2018 17:20:48 GMT): aneb (Wed, 28 Feb 2018 17:30:42 GMT): aneb (Wed, 28 Feb 2018 17:30:42 GMT): aneb (Wed, 28 Feb 2018 17:30:42 GMT): Rmannn (Wed, 28 Feb 2018 17:36:08 GMT): Rmannn (Wed, 28 Feb 2018 17:36:08 GMT): aneb (Wed, 28 Feb 2018 17:37:22 GMT): Rmannn (Wed, 28 Feb 2018 17:40:07 GMT): Rmannn (Wed, 28 Feb 2018 17:40:07 GMT): Rmannn (Wed, 28 Feb 2018 17:41:12 GMT): aneb (Wed, 28 Feb 2018 17:49:13 GMT): lucasdf (Wed, 28 Feb 2018 18:12:26 GMT): Rmannn (Wed, 28 Feb 2018 18:17:15 GMT): phanikumar (Wed, 28 Feb 2018 18:37:39 GMT): phanikumar (Wed, 28 Feb 2018 18:37:49 GMT): lucasdf (Wed, 28 Feb 2018 18:40:44 GMT): mahoney1 (Wed, 28 Feb 2018 18:42:23 GMT): Rmannn (Wed, 28 Feb 2018 18:44:24 GMT): cammachusa (Wed, 28 Feb 2018 18:45:59 GMT): Rmannn (Wed, 28 Feb 2018 18:46:27 GMT): dwong (Wed, 28 Feb 2018 18:48:57 GMT): dwong (Wed, 28 Feb 2018 18:50:49 GMT): lucasdf (Wed, 28 Feb 2018 18:56:42 GMT): brian.leppez (Wed, 28 Feb 2018 19:06:46 GMT): brian.leppez (Wed, 28 Feb 2018 19:07:00 GMT): dwong (Wed, 28 Feb 2018 19:11:02 GMT): dwong (Wed, 28 Feb 2018 19:13:04 GMT): CT123 (Wed, 28 Feb 2018 19:15:43 GMT): CT123 (Wed, 28 Feb 2018 19:15:43 GMT): silliman (Wed, 28 Feb 2018 19:17:47 GMT): brian.leppez (Wed, 28 Feb 2018 19:18:45 GMT): CT123 (Wed, 28 Feb 2018 19:19:18 GMT): CT123 (Wed, 28 Feb 2018 19:19:18 GMT): CT123 (Wed, 28 Feb 2018 19:22:04 GMT): CT123 (Wed, 28 Feb 2018 19:22:04 GMT): silliman (Wed, 28 Feb 2018 19:24:11 GMT): dwong (Wed, 28 Feb 2018 19:30:29 GMT): CT123 (Wed, 28 Feb 2018 19:31:36 GMT): kakuzu (Wed, 28 Feb 2018 19:32:41 GMT): silliman (Wed, 28 Feb 2018 19:33:04 GMT): kakuzu (Wed, 28 Feb 2018 19:33:32 GMT): silliman (Wed, 28 Feb 2018 19:34:23 GMT): silliman (Wed, 28 Feb 2018 19:35:23 GMT): CT123 (Wed, 28 Feb 2018 19:53:59 GMT): trixromero (Wed, 28 Feb 2018 20:28:59 GMT): phanikumar (Wed, 28 Feb 2018 20:32:04 GMT): TsuiSauChi (Wed, 28 Feb 2018 20:50:33 GMT): TsuiSauChi (Wed, 28 Feb 2018 20:51:00 GMT): mrshah-ibm (Wed, 28 Feb 2018 21:06:27 GMT): Rmannn (Wed, 28 Feb 2018 21:11:10 GMT): Rmannn (Wed, 28 Feb 2018 21:11:10 GMT): vitorduarte (Wed, 28 Feb 2018 21:19:37 GMT): vitorduarte (Wed, 28 Feb 2018 21:20:17 GMT): JayPandya (Wed, 28 Feb 2018 21:51:10 GMT): silliman (Wed, 28 Feb 2018 21:53:43 GMT): JayPandya (Wed, 28 Feb 2018 21:59:09 GMT): JayPandya (Wed, 28 Feb 2018 21:59:09 GMT): TsuiSauChi (Wed, 28 Feb 2018 22:02:37 GMT): JayPandya (Wed, 28 Feb 2018 22:04:24 GMT): TsuiSauChi (Wed, 28 Feb 2018 23:12:15 GMT): christian3042 (Thu, 01 Mar 2018 00:26:38 GMT): tylerw 3 (Thu, 01 Mar 2018 03:00:06 GMT): dpurnima0709 (Thu, 01 Mar 2018 05:28:40 GMT): preety (Thu, 01 Mar 2018 07:45:11 GMT): hvandurme (Thu, 01 Mar 2018 07:59:53 GMT): Legiit (Thu, 01 Mar 2018 08:20:14 GMT): TsuiSauChi (Thu, 01 Mar 2018 08:34:13 GMT): TsuiSauChi (Thu, 01 Mar 2018 08:34:32 GMT): jtonline (Thu, 01 Mar 2018 08:36:00 GMT): jtonline (Thu, 01 Mar 2018 08:38:29 GMT): Legiit (Thu, 01 Mar 2018 08:39:41 GMT): DeveloppSoft (Thu, 01 Mar 2018 08:50:49 GMT): rthatcher (Thu, 01 Mar 2018 09:12:45 GMT): rthatcher (Thu, 01 Mar 2018 09:27:49 GMT): mahoney1 (Thu, 01 Mar 2018 09:45:29 GMT): Jaline (Thu, 01 Mar 2018 09:52:29 GMT): Jaline (Thu, 01 Mar 2018 09:53:18 GMT): Legiit (Thu, 01 Mar 2018 10:19:34 GMT): Legiit (Thu, 01 Mar 2018 10:20:08 GMT): RajaSathya (Thu, 01 Mar 2018 10:45:06 GMT): rthatcher (Thu, 01 Mar 2018 10:50:37 GMT): rthatcher (Thu, 01 Mar 2018 10:50:37 GMT): mahoney1 (Thu, 01 Mar 2018 11:20:28 GMT): mahoney1 (Thu, 01 Mar 2018 11:23:16 GMT): Jaline (Thu, 01 Mar 2018 11:40:29 GMT): rthatcher (Thu, 01 Mar 2018 11:54:52 GMT): dpurnima0709 (Thu, 01 Mar 2018 11:55:35 GMT): RajaSathya (Thu, 01 Mar 2018 12:06:36 GMT): rthatcher (Thu, 01 Mar 2018 12:16:08 GMT): RajaSathya (Thu, 01 Mar 2018 12:40:09 GMT): RajaSathya (Thu, 01 Mar 2018 12:40:24 GMT): rameshkphp (Thu, 01 Mar 2018 12:40:33 GMT): RajaSathya (Thu, 01 Mar 2018 12:42:21 GMT): rameshkphp (Thu, 01 Mar 2018 12:43:49 GMT): rthatcher (Thu, 01 Mar 2018 12:50:07 GMT): RajaSathya (Thu, 01 Mar 2018 13:11:41 GMT): CrazyBranch (Thu, 01 Mar 2018 13:25:25 GMT): mahoney1 (Thu, 01 Mar 2018 13:35:13 GMT): mahoney1 (Thu, 01 Mar 2018 13:40:06 GMT): mahoney1 (Thu, 01 Mar 2018 13:40:08 GMT): mahoney1 (Thu, 01 Mar 2018 13:40:08 GMT): rameshkphp (Thu, 01 Mar 2018 13:57:25 GMT): rthatcher (Thu, 01 Mar 2018 13:58:43 GMT): Legiit (Thu, 01 Mar 2018 14:01:36 GMT): mahoney1 (Thu, 01 Mar 2018 14:12:36 GMT): mahoney1 (Thu, 01 Mar 2018 14:12:36 GMT): Legiit (Thu, 01 Mar 2018 14:17:41 GMT): phanikumar (Thu, 01 Mar 2018 14:23:27 GMT): rthatcher (Thu, 01 Mar 2018 14:28:11 GMT): phanikumar (Thu, 01 Mar 2018 14:29:00 GMT): Elulup (Thu, 01 Mar 2018 14:47:56 GMT): Stecec (Thu, 01 Mar 2018 15:19:01 GMT): Stecec (Thu, 01 Mar 2018 15:19:01 GMT): Stecec (Thu, 01 Mar 2018 15:19:01 GMT): Stecec (Thu, 01 Mar 2018 15:19:01 GMT): Stecec (Thu, 01 Mar 2018 15:19:01 GMT): Stecec (Thu, 01 Mar 2018 15:19:01 GMT): rthatcher (Thu, 01 Mar 2018 15:22:21 GMT): Stecec (Thu, 01 Mar 2018 15:23:00 GMT): Stecec (Thu, 01 Mar 2018 15:23:00 GMT): rthatcher (Thu, 01 Mar 2018 15:28:35 GMT): rthatcher (Thu, 01 Mar 2018 15:35:47 GMT): mahoney1 (Thu, 01 Mar 2018 15:45:36 GMT): CrazyBranch (Thu, 01 Mar 2018 15:50:24 GMT): mahoney1 (Thu, 01 Mar 2018 15:51:06 GMT): phanikumar (Thu, 01 Mar 2018 15:58:08 GMT): MehulShah (Thu, 01 Mar 2018 15:58:31 GMT): Elulup (Thu, 01 Mar 2018 16:00:39 GMT): Elulup (Thu, 01 Mar 2018 16:00:39 GMT): Elulup (Thu, 01 Mar 2018 16:00:39 GMT): mahoney1 (Thu, 01 Mar 2018 16:03:31 GMT): mahoney1 (Thu, 01 Mar 2018 16:03:31 GMT): MehulShah (Thu, 01 Mar 2018 16:04:41 GMT): MehulShah (Thu, 01 Mar 2018 16:05:31 GMT): CrazyBranch (Thu, 01 Mar 2018 16:06:36 GMT): phanikumar (Thu, 01 Mar 2018 16:08:22 GMT): mahoney1 (Thu, 01 Mar 2018 16:10:58 GMT): mahoney1 (Thu, 01 Mar 2018 16:10:58 GMT): phanikumar (Thu, 01 Mar 2018 16:15:49 GMT): mahoney1 (Thu, 01 Mar 2018 16:16:13 GMT): Elulup (Thu, 01 Mar 2018 16:16:25 GMT): rthatcher (Thu, 01 Mar 2018 16:17:13 GMT): mahoney1 (Thu, 01 Mar 2018 16:19:52 GMT): MehulShah (Thu, 01 Mar 2018 16:22:30 GMT): MehulShah (Thu, 01 Mar 2018 16:30:51 GMT): rthatcher (Thu, 01 Mar 2018 16:43:39 GMT): MehulShah (Thu, 01 Mar 2018 16:46:08 GMT): Stecec (Thu, 01 Mar 2018 17:00:14 GMT): SKDHANUKA (Thu, 01 Mar 2018 17:21:06 GMT): dwong (Thu, 01 Mar 2018 17:39:57 GMT): y2255236 (Thu, 01 Mar 2018 18:09:38 GMT): phanikumar (Thu, 01 Mar 2018 19:19:02 GMT): kakuzu (Thu, 01 Mar 2018 19:24:08 GMT): mahoney1 (Thu, 01 Mar 2018 19:24:11 GMT): mahoney1 (Thu, 01 Mar 2018 19:26:39 GMT): kakuzu (Thu, 01 Mar 2018 19:28:50 GMT): kakuzu (Thu, 01 Mar 2018 19:29:31 GMT): kakuzu (Thu, 01 Mar 2018 19:29:48 GMT): mahoney1 (Thu, 01 Mar 2018 19:38:14 GMT): kakuzu (Thu, 01 Mar 2018 19:41:49 GMT): kakuzu (Thu, 01 Mar 2018 19:42:31 GMT): kakuzu (Thu, 01 Mar 2018 19:42:31 GMT): kakuzu (Thu, 01 Mar 2018 19:43:47 GMT): kakuzu (Thu, 01 Mar 2018 19:44:14 GMT): mahoney1 (Thu, 01 Mar 2018 19:44:50 GMT): mahoney1 (Thu, 01 Mar 2018 19:51:58 GMT): mahoney1 (Thu, 01 Mar 2018 19:51:58 GMT): mahoney1 (Thu, 01 Mar 2018 19:51:58 GMT): mahoney1 (Thu, 01 Mar 2018 19:51:58 GMT): mahoney1 (Thu, 01 Mar 2018 19:56:22 GMT): dwong (Thu, 01 Mar 2018 20:17:38 GMT): ryanm (Thu, 01 Mar 2018 20:50:51 GMT): Grendel61 (Thu, 01 Mar 2018 21:11:01 GMT): dwong (Thu, 01 Mar 2018 22:02:38 GMT): dwong (Thu, 01 Mar 2018 22:02:38 GMT): Rmannn (Thu, 01 Mar 2018 22:06:42 GMT): JayPandya (Thu, 01 Mar 2018 22:16:00 GMT): JayPandya (Thu, 01 Mar 2018 22:16:00 GMT): JayPandya (Thu, 01 Mar 2018 22:16:00 GMT): kakuzu (Thu, 01 Mar 2018 23:08:23 GMT): kakuzu (Thu, 01 Mar 2018 23:09:16 GMT): kakuzu (Thu, 01 Mar 2018 23:09:16 GMT): oanewman (Fri, 02 Mar 2018 00:42:33 GMT): oanewman (Fri, 02 Mar 2018 00:45:14 GMT): Jaline (Fri, 02 Mar 2018 02:36:06 GMT): MilosObradovic (Fri, 02 Mar 2018 05:55:03 GMT): swati25 (Fri, 02 Mar 2018 08:29:08 GMT): swati25 (Fri, 02 Mar 2018 08:29:54 GMT): mahoney1 (Fri, 02 Mar 2018 09:08:50 GMT): mahoney1 (Fri, 02 Mar 2018 09:26:41 GMT): mahoney1 (Fri, 02 Mar 2018 09:26:41 GMT): mahoney1 (Fri, 02 Mar 2018 09:32:03 GMT): mahoney1 (Fri, 02 Mar 2018 09:32:03 GMT): mahoney1 (Fri, 02 Mar 2018 09:32:03 GMT): mahoney1 (Fri, 02 Mar 2018 09:40:03 GMT): mahoney1 (Fri, 02 Mar 2018 09:40:03 GMT): mahoney1 (Fri, 02 Mar 2018 10:01:35 GMT): mahoney1 (Fri, 02 Mar 2018 10:01:35 GMT): CorentinPacaud (Fri, 02 Mar 2018 10:29:01 GMT): MuhammadSalah (Fri, 02 Mar 2018 10:57:37 GMT): rangak (Fri, 02 Mar 2018 11:21:17 GMT): mahoney1 (Fri, 02 Mar 2018 11:29:21 GMT): mahoney1 (Fri, 02 Mar 2018 11:35:11 GMT): mahoney1 (Fri, 02 Mar 2018 11:35:11 GMT): mahoney1 (Fri, 02 Mar 2018 11:35:11 GMT): MuhammadSalah (Fri, 02 Mar 2018 11:39:41 GMT): MuhammadSalah (Fri, 02 Mar 2018 11:40:04 GMT): MuhammadSalah (Fri, 02 Mar 2018 11:40:31 GMT): phanikumar (Fri, 02 Mar 2018 12:29:48 GMT): mahoney1 (Fri, 02 Mar 2018 12:38:22 GMT): mahoney1 (Fri, 02 Mar 2018 12:38:22 GMT): mikeleow (Fri, 02 Mar 2018 12:54:52 GMT): mikeleow (Fri, 02 Mar 2018 13:10:34 GMT): CorentinPacaud (Fri, 02 Mar 2018 13:36:32 GMT): mahoney1 (Fri, 02 Mar 2018 13:51:48 GMT): mahoney1 (Fri, 02 Mar 2018 13:51:48 GMT): CorentinPacaud (Fri, 02 Mar 2018 13:54:44 GMT): mahoney1 (Fri, 02 Mar 2018 13:54:46 GMT): mahoney1 (Fri, 02 Mar 2018 13:54:50 GMT): mahoney1 (Fri, 02 Mar 2018 13:54:58 GMT): CorentinPacaud (Fri, 02 Mar 2018 13:55:34 GMT): mahoney1 (Fri, 02 Mar 2018 13:56:45 GMT): phanikumar (Fri, 02 Mar 2018 13:57:25 GMT): dtp (Fri, 02 Mar 2018 14:05:59 GMT): mahoney1 (Fri, 02 Mar 2018 14:06:15 GMT): mahoney1 (Fri, 02 Mar 2018 14:08:45 GMT): dtp (Fri, 02 Mar 2018 14:11:25 GMT): dtp (Fri, 02 Mar 2018 14:13:03 GMT): mahoney1 (Fri, 02 Mar 2018 14:43:48 GMT): mikeleow (Fri, 02 Mar 2018 14:46:06 GMT): kakuzu (Fri, 02 Mar 2018 14:47:32 GMT): akula (Fri, 02 Mar 2018 14:50:14 GMT): mahoney1 (Fri, 02 Mar 2018 14:52:10 GMT): CorentinPacaud (Fri, 02 Mar 2018 14:54:01 GMT): kakuzu (Fri, 02 Mar 2018 14:54:25 GMT): kakuzu (Fri, 02 Mar 2018 14:54:44 GMT): kakuzu (Fri, 02 Mar 2018 14:54:44 GMT): mikeleow (Fri, 02 Mar 2018 14:58:12 GMT): mikeleow (Fri, 02 Mar 2018 15:01:10 GMT): MuhammadSalah (Fri, 02 Mar 2018 15:14:15 GMT): phanikumar (Fri, 02 Mar 2018 15:14:40 GMT): phanikumar (Fri, 02 Mar 2018 15:15:26 GMT): MuhammadSalah (Fri, 02 Mar 2018 15:17:21 GMT): CorentinPacaud (Fri, 02 Mar 2018 15:37:06 GMT): kakuzu (Fri, 02 Mar 2018 15:38:56 GMT): CorentinPacaud (Fri, 02 Mar 2018 15:40:34 GMT): CorentinPacaud (Fri, 02 Mar 2018 15:40:38 GMT): kakuzu (Fri, 02 Mar 2018 15:41:23 GMT): CorentinPacaud (Fri, 02 Mar 2018 15:45:23 GMT): kakuzu (Fri, 02 Mar 2018 15:46:29 GMT): kakuzu (Fri, 02 Mar 2018 15:46:45 GMT): CorentinPacaud (Fri, 02 Mar 2018 15:47:20 GMT): CorentinPacaud (Fri, 02 Mar 2018 15:48:51 GMT): CorentinPacaud (Fri, 02 Mar 2018 15:50:03 GMT): kakuzu (Fri, 02 Mar 2018 15:50:33 GMT): kakuzu (Fri, 02 Mar 2018 15:50:45 GMT): CorentinPacaud (Fri, 02 Mar 2018 15:50:50 GMT): kakuzu (Fri, 02 Mar 2018 15:52:28 GMT): CorentinPacaud (Fri, 02 Mar 2018 15:55:32 GMT): CorentinPacaud (Fri, 02 Mar 2018 15:56:26 GMT): kakuzu (Fri, 02 Mar 2018 15:56:50 GMT): kakuzu (Fri, 02 Mar 2018 15:57:06 GMT): kakuzu (Fri, 02 Mar 2018 15:59:34 GMT): CorentinPacaud (Fri, 02 Mar 2018 15:59:41 GMT): kakuzu (Fri, 02 Mar 2018 15:59:47 GMT): kakuzu (Fri, 02 Mar 2018 16:00:10 GMT): kakuzu (Fri, 02 Mar 2018 16:01:28 GMT): CorentinPacaud (Fri, 02 Mar 2018 16:04:19 GMT): CorentinPacaud (Fri, 02 Mar 2018 16:04:22 GMT): CorentinPacaud (Fri, 02 Mar 2018 16:04:22 GMT): kakuzu (Fri, 02 Mar 2018 16:10:15 GMT): xmoooz (Fri, 02 Mar 2018 16:27:00 GMT): kakuzu (Fri, 02 Mar 2018 16:41:50 GMT): kakuzu (Fri, 02 Mar 2018 16:42:02 GMT): igetgames (Fri, 02 Mar 2018 16:44:29 GMT): akula (Fri, 02 Mar 2018 16:45:07 GMT): kakuzu (Fri, 02 Mar 2018 16:45:17 GMT): akula (Fri, 02 Mar 2018 16:45:25 GMT): kakuzu (Fri, 02 Mar 2018 16:47:15 GMT): Rmannn (Fri, 02 Mar 2018 16:55:07 GMT): Rmannn (Fri, 02 Mar 2018 16:55:07 GMT): mahoney1 (Fri, 02 Mar 2018 17:32:52 GMT): mahoney1 (Fri, 02 Mar 2018 17:51:25 GMT): MuhammadSalah (Fri, 02 Mar 2018 17:53:05 GMT): mahoney1 (Fri, 02 Mar 2018 17:53:25 GMT): MuhammadSalah (Fri, 02 Mar 2018 17:53:41 GMT): MuhammadSalah (Fri, 02 Mar 2018 17:53:52 GMT): MuhammadSalah (Fri, 02 Mar 2018 17:54:16 GMT): MuhammadSalah (Fri, 02 Mar 2018 17:54:21 GMT): MuhammadSalah (Fri, 02 Mar 2018 17:54:33 GMT): MuhammadSalah (Fri, 02 Mar 2018 17:54:40 GMT): mahoney1 (Fri, 02 Mar 2018 17:59:47 GMT): mahoney1 (Fri, 02 Mar 2018 17:59:47 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:02:09 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:02:25 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:02:29 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:02:36 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:02:54 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:02:55 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:03:28 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:04:14 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:04:19 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:04:25 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:04:37 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:04:49 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:04:59 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:05:29 GMT): mahoney1 (Fri, 02 Mar 2018 18:14:27 GMT): mahoney1 (Fri, 02 Mar 2018 18:14:27 GMT): MuhammadSalah (Fri, 02 Mar 2018 18:14:50 GMT): dyeghikoo (Fri, 02 Mar 2018 18:55:36 GMT): dyeghikoo (Fri, 02 Mar 2018 18:55:36 GMT): dyeghikoo (Fri, 02 Mar 2018 18:55:36 GMT): brian.leppez (Fri, 02 Mar 2018 20:18:13 GMT): brian.leppez (Fri, 02 Mar 2018 20:19:18 GMT): saritta3 (Fri, 02 Mar 2018 20:22:57 GMT): saritta3 (Fri, 02 Mar 2018 20:23:13 GMT): JayPandya (Fri, 02 Mar 2018 20:39:41 GMT): drmcdermott (Fri, 02 Mar 2018 21:47:50 GMT): phanikumar1210 (Sat, 03 Mar 2018 01:35:19 GMT): phanikumar1210 (Sat, 03 Mar 2018 01:35:19 GMT): akula (Sat, 03 Mar 2018 01:45:47 GMT): mikeleow (Sat, 03 Mar 2018 06:36:30 GMT): mikeleow (Sat, 03 Mar 2018 06:36:53 GMT): mikeleow (Sat, 03 Mar 2018 06:37:07 GMT): mikeleow (Sat, 03 Mar 2018 07:03:37 GMT): samurai_jack (Sat, 03 Mar 2018 07:13:20 GMT): amirhosainh (Sat, 03 Mar 2018 07:21:31 GMT): amirhosainh (Sat, 03 Mar 2018 07:24:21 GMT): samurai_jack (Sat, 03 Mar 2018 07:43:54 GMT): WHATISOOP (Sat, 03 Mar 2018 07:47:38 GMT): clubiot (Sat, 03 Mar 2018 08:36:40 GMT): NewToFabric (Sat, 03 Mar 2018 10:47:15 GMT): NewToFabric (Sat, 03 Mar 2018 10:48:24 GMT): akula (Sat, 03 Mar 2018 10:51:11 GMT): NewToFabric (Sat, 03 Mar 2018 10:52:19 GMT): akula (Sat, 03 Mar 2018 10:54:17 GMT): mikeleow (Sat, 03 Mar 2018 10:57:55 GMT): mikeleow (Sat, 03 Mar 2018 11:02:52 GMT): NewToFabric (Sat, 03 Mar 2018 13:35:38 GMT): NewToFabric (Sat, 03 Mar 2018 13:36:33 GMT): akula (Sat, 03 Mar 2018 13:39:11 GMT): akula (Sat, 03 Mar 2018 13:41:41 GMT): mikeleow (Sat, 03 Mar 2018 14:40:22 GMT): sstone1 (Sat, 03 Mar 2018 14:42:36 GMT): mikeleow (Sat, 03 Mar 2018 15:32:15 GMT): AbhikSengupta (Sat, 03 Mar 2018 15:47:18 GMT): AbhikSengupta (Sat, 03 Mar 2018 15:50:25 GMT): AbhikSengupta (Sat, 03 Mar 2018 15:51:32 GMT): arunmitteam (Sat, 03 Mar 2018 15:55:20 GMT): arunmitteam (Sat, 03 Mar 2018 15:57:58 GMT): AbhikSengupta (Sat, 03 Mar 2018 15:58:36 GMT): AbhikSengupta (Sat, 03 Mar 2018 15:58:38 GMT): AbhikSengupta (Sat, 03 Mar 2018 15:58:39 GMT): arunmitteam (Sat, 03 Mar 2018 16:00:34 GMT): AbhikSengupta (Sat, 03 Mar 2018 16:01:24 GMT): AbhikSengupta (Sat, 03 Mar 2018 16:06:33 GMT): arunmitteam (Sat, 03 Mar 2018 16:07:02 GMT): mikeleow (Sat, 03 Mar 2018 16:17:09 GMT): sstone1 (Sat, 03 Mar 2018 16:20:34 GMT): mikeleow (Sat, 03 Mar 2018 16:21:13 GMT): sstone1 (Sat, 03 Mar 2018 16:21:22 GMT): phanikumar1210 (Sat, 03 Mar 2018 16:35:37 GMT): phanikumar1210 (Sat, 03 Mar 2018 16:35:58 GMT): phanikumar1210 (Sat, 03 Mar 2018 16:36:00 GMT): phanikumar1210 (Sat, 03 Mar 2018 16:38:52 GMT): phanikumar1210 (Sat, 03 Mar 2018 16:38:52 GMT): sstone1 (Sat, 03 Mar 2018 16:41:30 GMT): phanikumar1210 (Sat, 03 Mar 2018 16:43:37 GMT): sstone1 (Sat, 03 Mar 2018 16:56:38 GMT): sstone1 (Sat, 03 Mar 2018 16:57:27 GMT): notOccupanther (Sat, 03 Mar 2018 18:44:16 GMT): phanikumar1210 (Sat, 03 Mar 2018 18:50:40 GMT): sstone1 (Sat, 03 Mar 2018 19:01:54 GMT): JayPandya (Sat, 03 Mar 2018 19:31:42 GMT): JayPandya (Sat, 03 Mar 2018 19:33:08 GMT): JayPandya (Sat, 03 Mar 2018 19:33:08 GMT): ashishapy (Sat, 03 Mar 2018 19:33:56 GMT): alexdevassy (Sun, 04 Mar 2018 06:26:03 GMT): alexdevassy (Sun, 04 Mar 2018 06:27:13 GMT): JaspalSingh13 (Sun, 04 Mar 2018 07:01:45 GMT): JaspalSingh13 (Sun, 04 Mar 2018 07:14:55 GMT): alexdevassy (Sun, 04 Mar 2018 07:38:38 GMT): JaspalSingh13 (Sun, 04 Mar 2018 08:14:09 GMT): JaspalSingh13 (Sun, 04 Mar 2018 08:14:15 GMT): alexdevassy (Sun, 04 Mar 2018 08:17:17 GMT): JaspalSingh13 (Sun, 04 Mar 2018 08:17:54 GMT): JaspalSingh13 (Sun, 04 Mar 2018 08:17:54 GMT): JaspalSingh13 (Sun, 04 Mar 2018 08:18:12 GMT): JaspalSingh13 (Sun, 04 Mar 2018 08:24:51 GMT): JaspalSingh13 (Sun, 04 Mar 2018 08:24:55 GMT): JaspalSingh13 (Sun, 04 Mar 2018 09:49:52 GMT): kevinstr (Sun, 04 Mar 2018 11:47:41 GMT): Adeel Qureshi (Sun, 04 Mar 2018 12:50:40 GMT): danastos (Sun, 04 Mar 2018 14:11:42 GMT): anil.k (Sun, 04 Mar 2018 17:58:48 GMT): NAWAZUDDIN552 (Sun, 04 Mar 2018 18:29:44 GMT): JayPandya (Sun, 04 Mar 2018 19:06:03 GMT): phanikumar1210 (Sun, 04 Mar 2018 22:46:25 GMT): phanikumar1210 (Sun, 04 Mar 2018 22:46:25 GMT): etrn (Sun, 04 Mar 2018 23:17:36 GMT): bamboo (Mon, 05 Mar 2018 01:58:11 GMT): Hefziben (Mon, 05 Mar 2018 02:44:59 GMT): NAWAZUDDIN552 (Mon, 05 Mar 2018 03:17:50 GMT): GiorgiBlockchain (Mon, 05 Mar 2018 03:35:43 GMT): bamboo (Mon, 05 Mar 2018 04:27:45 GMT): LadarX (Mon, 05 Mar 2018 04:29:50 GMT): LadarX (Mon, 05 Mar 2018 04:30:21 GMT): LadarX (Mon, 05 Mar 2018 04:31:07 GMT): LadarX (Mon, 05 Mar 2018 04:33:16 GMT): LadarX (Mon, 05 Mar 2018 04:33:28 GMT): alexdevassy (Mon, 05 Mar 2018 04:53:08 GMT): alexdevassy (Mon, 05 Mar 2018 06:03:32 GMT): alexdevassy (Mon, 05 Mar 2018 06:04:20 GMT): wininani (Mon, 05 Mar 2018 06:14:50 GMT): RajaSathya (Mon, 05 Mar 2018 06:32:24 GMT): RajaSathya (Mon, 05 Mar 2018 06:32:24 GMT): RajaSathya (Mon, 05 Mar 2018 06:32:33 GMT): ravid (Mon, 05 Mar 2018 06:42:31 GMT): alexdevassy (Mon, 05 Mar 2018 06:52:26 GMT): RajaSathya (Mon, 05 Mar 2018 06:53:42 GMT): babuvt (Mon, 05 Mar 2018 07:21:44 GMT): alexdevassy (Mon, 05 Mar 2018 08:08:05 GMT): MartinKrmer (Mon, 05 Mar 2018 08:16:18 GMT): MartinKrmer (Mon, 05 Mar 2018 08:16:38 GMT): arpitsoman (Mon, 05 Mar 2018 09:05:25 GMT): CorentinPacaud (Mon, 05 Mar 2018 09:20:17 GMT): CorentinPacaud (Mon, 05 Mar 2018 09:20:17 GMT): arpitsoman (Mon, 05 Mar 2018 09:27:13 GMT): arpitsoman (Mon, 05 Mar 2018 09:27:13 GMT): arpitsoman (Mon, 05 Mar 2018 09:27:13 GMT): wininani (Mon, 05 Mar 2018 09:27:36 GMT): sstone1 (Mon, 05 Mar 2018 09:29:08 GMT): wininani (Mon, 05 Mar 2018 09:38:09 GMT): wininani (Mon, 05 Mar 2018 09:38:47 GMT): wininani (Mon, 05 Mar 2018 09:38:47 GMT): zasamen (Mon, 05 Mar 2018 09:41:34 GMT): mahoney1 (Mon, 05 Mar 2018 09:45:22 GMT): mahoney1 (Mon, 05 Mar 2018 09:48:25 GMT): mahoney1 (Mon, 05 Mar 2018 09:49:47 GMT): CorentinPacaud (Mon, 05 Mar 2018 09:50:59 GMT): CorentinPacaud (Mon, 05 Mar 2018 09:50:59 GMT): mahoney1 (Mon, 05 Mar 2018 09:52:46 GMT): mahoney1 (Mon, 05 Mar 2018 09:54:13 GMT): CorentinPacaud (Mon, 05 Mar 2018 09:54:17 GMT): CorentinPacaud (Mon, 05 Mar 2018 09:54:31 GMT): CorentinPacaud (Mon, 05 Mar 2018 09:54:31 GMT): mahoney1 (Mon, 05 Mar 2018 09:55:44 GMT): CorentinPacaud (Mon, 05 Mar 2018 09:56:09 GMT): SuvitPatil (Mon, 05 Mar 2018 09:57:44 GMT): mahoney1 (Mon, 05 Mar 2018 09:57:57 GMT): mahoney1 (Mon, 05 Mar 2018 09:57:57 GMT): SuvitPatil (Mon, 05 Mar 2018 10:00:40 GMT): zasamen (Mon, 05 Mar 2018 10:01:36 GMT): mahoney1 (Mon, 05 Mar 2018 10:01:54 GMT): Saschaka (Mon, 05 Mar 2018 10:02:44 GMT): SuvitPatil (Mon, 05 Mar 2018 10:03:43 GMT): phanikumar1210 (Mon, 05 Mar 2018 10:17:51 GMT): phanikumar1210 (Mon, 05 Mar 2018 10:17:51 GMT): Turikalen (Mon, 05 Mar 2018 10:18:51 GMT): davidkel (Mon, 05 Mar 2018 10:20:38 GMT): mikeleow (Mon, 05 Mar 2018 10:22:00 GMT): mahoney1 (Mon, 05 Mar 2018 10:24:55 GMT): phanikumar1210 (Mon, 05 Mar 2018 10:27:24 GMT): zasamen (Mon, 05 Mar 2018 10:31:48 GMT): SuvitPatil (Mon, 05 Mar 2018 10:37:36 GMT): aparolini (Mon, 05 Mar 2018 10:41:19 GMT): aparolini (Mon, 05 Mar 2018 10:41:19 GMT): aparolini (Mon, 05 Mar 2018 10:41:19 GMT): davidkel (Mon, 05 Mar 2018 10:46:08 GMT): arpitsoman (Mon, 05 Mar 2018 10:48:23 GMT): aparolini (Mon, 05 Mar 2018 10:53:07 GMT): mahoney1 (Mon, 05 Mar 2018 10:56:33 GMT): arpitsoman (Mon, 05 Mar 2018 10:58:22 GMT): Turikalen (Mon, 05 Mar 2018 10:58:42 GMT): Turikalen (Mon, 05 Mar 2018 10:59:12 GMT): aparolini (Mon, 05 Mar 2018 11:01:09 GMT): mahoney1 (Mon, 05 Mar 2018 11:01:27 GMT): mahoney1 (Mon, 05 Mar 2018 11:01:27 GMT): mahoney1 (Mon, 05 Mar 2018 11:01:27 GMT): mahoney1 (Mon, 05 Mar 2018 11:01:27 GMT): arpitsoman (Mon, 05 Mar 2018 11:04:43 GMT): argman (Mon, 05 Mar 2018 11:06:29 GMT): aparolini (Mon, 05 Mar 2018 11:08:22 GMT): aparolini (Mon, 05 Mar 2018 11:08:22 GMT): mahoney1 (Mon, 05 Mar 2018 11:09:24 GMT): mahoney1 (Mon, 05 Mar 2018 11:10:24 GMT): aparolini (Mon, 05 Mar 2018 11:10:25 GMT): mikeleow (Mon, 05 Mar 2018 11:11:05 GMT): mikeleow (Mon, 05 Mar 2018 11:11:47 GMT): mikeleow (Mon, 05 Mar 2018 11:11:49 GMT): mikeleow (Mon, 05 Mar 2018 11:11:49 GMT): mikeleow (Mon, 05 Mar 2018 11:11:56 GMT): mikeleow (Mon, 05 Mar 2018 11:13:27 GMT): mikeleow (Mon, 05 Mar 2018 11:13:29 GMT): arpitsoman (Mon, 05 Mar 2018 11:21:16 GMT): mahoney1 (Mon, 05 Mar 2018 11:24:49 GMT): mikeleow (Mon, 05 Mar 2018 11:30:09 GMT): mikeleow (Mon, 05 Mar 2018 11:30:11 GMT): mikeleow (Mon, 05 Mar 2018 11:30:14 GMT): mikeleow (Mon, 05 Mar 2018 11:30:18 GMT): mahoney1 (Mon, 05 Mar 2018 11:32:11 GMT): mahoney1 (Mon, 05 Mar 2018 11:32:11 GMT): aparolini (Mon, 05 Mar 2018 11:33:17 GMT): mikeleow (Mon, 05 Mar 2018 11:35:35 GMT): mikeleow (Mon, 05 Mar 2018 11:35:36 GMT): argman (Mon, 05 Mar 2018 11:36:28 GMT): mahoney1 (Mon, 05 Mar 2018 11:37:35 GMT): mahoney1 (Mon, 05 Mar 2018 11:41:14 GMT): mikeleow (Mon, 05 Mar 2018 11:41:20 GMT): mikeleow (Mon, 05 Mar 2018 11:43:05 GMT): nfrunza (Mon, 05 Mar 2018 11:43:13 GMT): mahoney1 (Mon, 05 Mar 2018 11:45:04 GMT): aparolini (Mon, 05 Mar 2018 11:59:45 GMT): aparolini (Mon, 05 Mar 2018 11:59:45 GMT): aparolini (Mon, 05 Mar 2018 11:59:45 GMT): satyajitsasmal (Mon, 05 Mar 2018 12:02:16 GMT): satyajitsasmal (Mon, 05 Mar 2018 12:02:42 GMT): phanikumar1210 (Mon, 05 Mar 2018 12:06:39 GMT): mahoney1 (Mon, 05 Mar 2018 12:08:42 GMT): mahoney1 (Mon, 05 Mar 2018 12:08:42 GMT): mahoney1 (Mon, 05 Mar 2018 12:08:42 GMT): mahoney1 (Mon, 05 Mar 2018 12:11:31 GMT): phanikumar1210 (Mon, 05 Mar 2018 12:13:34 GMT): Turikalen (Mon, 05 Mar 2018 12:15:36 GMT): JayPandya (Mon, 05 Mar 2018 12:27:28 GMT): aparolini (Mon, 05 Mar 2018 12:31:09 GMT): mahoney1 (Mon, 05 Mar 2018 12:33:10 GMT): mahoney1 (Mon, 05 Mar 2018 12:33:10 GMT): phanikumar1210 (Mon, 05 Mar 2018 12:33:31 GMT): mahoney1 (Mon, 05 Mar 2018 12:35:10 GMT): mahoney1 (Mon, 05 Mar 2018 12:38:43 GMT): satyajitsasmal (Mon, 05 Mar 2018 12:42:11 GMT): satyajitsasmal (Mon, 05 Mar 2018 12:42:41 GMT): AkshayJindal (Mon, 05 Mar 2018 12:47:49 GMT): mahoney1 (Mon, 05 Mar 2018 12:53:37 GMT): mahoney1 (Mon, 05 Mar 2018 13:05:48 GMT): mahoney1 (Mon, 05 Mar 2018 13:09:28 GMT): mahoney1 (Mon, 05 Mar 2018 13:10:23 GMT): Legiit (Mon, 05 Mar 2018 13:20:44 GMT): CorentinPacaud (Mon, 05 Mar 2018 13:24:48 GMT): ChrisMcQueenDevelopment (Mon, 05 Mar 2018 13:27:49 GMT): ChrisMcQueenDevelopment (Mon, 05 Mar 2018 13:33:04 GMT): JayPandya (Mon, 05 Mar 2018 13:39:28 GMT): Stecec (Mon, 05 Mar 2018 13:46:40 GMT): Stecec (Mon, 05 Mar 2018 13:46:40 GMT): Stecec (Mon, 05 Mar 2018 13:46:40 GMT): Stecec (Mon, 05 Mar 2018 13:46:40 GMT): Stecec (Mon, 05 Mar 2018 13:46:40 GMT): arpitsoman (Mon, 05 Mar 2018 13:57:43 GMT): mahoney1 (Mon, 05 Mar 2018 13:57:47 GMT): mahoney1 (Mon, 05 Mar 2018 13:57:47 GMT): CorentinPacaud (Mon, 05 Mar 2018 13:59:02 GMT): mikeleow (Mon, 05 Mar 2018 13:59:27 GMT): MartinKrmer (Mon, 05 Mar 2018 14:02:29 GMT): mahoney1 (Mon, 05 Mar 2018 14:05:46 GMT): mikeleow (Mon, 05 Mar 2018 14:11:50 GMT): mahoney1 (Mon, 05 Mar 2018 14:12:09 GMT): mahoney1 (Mon, 05 Mar 2018 14:12:34 GMT): CorentinPacaud (Mon, 05 Mar 2018 14:13:40 GMT): mikeleow (Mon, 05 Mar 2018 14:13:42 GMT): mikeleow (Mon, 05 Mar 2018 14:15:00 GMT): mahoney1 (Mon, 05 Mar 2018 14:15:01 GMT): mahoney1 (Mon, 05 Mar 2018 14:15:12 GMT): mikeleow (Mon, 05 Mar 2018 14:15:31 GMT): mikeleow (Mon, 05 Mar 2018 14:15:48 GMT): mahoney1 (Mon, 05 Mar 2018 14:23:10 GMT): mahoney1 (Mon, 05 Mar 2018 14:23:10 GMT): mahoney1 (Mon, 05 Mar 2018 14:23:10 GMT): SergeySadon (Mon, 05 Mar 2018 14:26:10 GMT): mahoney1 (Mon, 05 Mar 2018 14:27:43 GMT): mahoney1 (Mon, 05 Mar 2018 14:30:15 GMT): SergeySadon (Mon, 05 Mar 2018 14:31:21 GMT): SergeySadon (Mon, 05 Mar 2018 14:31:21 GMT): SergeySadon (Mon, 05 Mar 2018 14:34:17 GMT): mahoney1 (Mon, 05 Mar 2018 14:38:44 GMT): MuhammadSalah (Mon, 05 Mar 2018 14:39:01 GMT): CorentinPacaud (Mon, 05 Mar 2018 14:48:30 GMT): kakuzu (Mon, 05 Mar 2018 14:49:28 GMT): CorentinPacaud (Mon, 05 Mar 2018 14:50:04 GMT): kakuzu (Mon, 05 Mar 2018 14:50:17 GMT): kakuzu (Mon, 05 Mar 2018 14:50:58 GMT): CorentinPacaud (Mon, 05 Mar 2018 14:51:00 GMT): kakuzu (Mon, 05 Mar 2018 14:52:36 GMT): kakuzu (Mon, 05 Mar 2018 14:52:36 GMT): CorentinPacaud (Mon, 05 Mar 2018 14:55:10 GMT): mahoney1 (Mon, 05 Mar 2018 15:03:26 GMT): MuhammadSalah (Mon, 05 Mar 2018 15:08:21 GMT): MuhammadSalah (Mon, 05 Mar 2018 15:08:38 GMT): mikeleow (Mon, 05 Mar 2018 15:24:53 GMT): MuhammadSalah (Mon, 05 Mar 2018 15:34:20 GMT): MuhammadSalah (Mon, 05 Mar 2018 15:34:34 GMT): mahoney1 (Mon, 05 Mar 2018 16:25:42 GMT): mahoney1 (Mon, 05 Mar 2018 16:31:49 GMT): MuhammadSalah (Mon, 05 Mar 2018 16:57:38 GMT): MuhammadSalah (Mon, 05 Mar 2018 16:58:14 GMT): mikeleow (Mon, 05 Mar 2018 17:02:45 GMT): mikeleow (Mon, 05 Mar 2018 17:12:00 GMT): mahoney1 (Mon, 05 Mar 2018 17:13:13 GMT): mikeleow (Mon, 05 Mar 2018 17:14:36 GMT): AkshayJindal (Mon, 05 Mar 2018 17:14:53 GMT): AkshayJindal (Mon, 05 Mar 2018 17:14:53 GMT): AkshayJindal (Mon, 05 Mar 2018 17:14:53 GMT): AkshayJindal (Mon, 05 Mar 2018 17:14:53 GMT): mikeleow (Mon, 05 Mar 2018 17:17:59 GMT): mikeleow (Mon, 05 Mar 2018 17:18:00 GMT): Legiit (Mon, 05 Mar 2018 17:18:54 GMT): Legiit (Mon, 05 Mar 2018 17:18:54 GMT): mikeleow (Mon, 05 Mar 2018 17:48:21 GMT): mikeleow (Mon, 05 Mar 2018 17:48:28 GMT): mikeleow (Mon, 05 Mar 2018 17:48:37 GMT): mahoney1 (Mon, 05 Mar 2018 17:49:32 GMT): mahoney1 (Mon, 05 Mar 2018 17:49:32 GMT): mikeleow (Mon, 05 Mar 2018 17:51:52 GMT): mahoney1 (Mon, 05 Mar 2018 17:53:43 GMT): mahoney1 (Mon, 05 Mar 2018 17:53:43 GMT): Legiit (Mon, 05 Mar 2018 17:54:08 GMT): mikeleow (Mon, 05 Mar 2018 17:54:09 GMT): mahoney1 (Mon, 05 Mar 2018 18:04:05 GMT): mikeleow (Mon, 05 Mar 2018 18:06:35 GMT): mikeleow (Mon, 05 Mar 2018 18:06:38 GMT): mikeleow (Mon, 05 Mar 2018 18:07:38 GMT): Hefziben (Mon, 05 Mar 2018 18:27:46 GMT): lildata (Mon, 05 Mar 2018 18:30:52 GMT): Legiit (Mon, 05 Mar 2018 18:32:49 GMT): tongli (Mon, 05 Mar 2018 18:33:32 GMT): tongli (Mon, 05 Mar 2018 18:34:17 GMT): davidkel (Mon, 05 Mar 2018 18:34:29 GMT): tongli (Mon, 05 Mar 2018 18:34:44 GMT): tongli (Mon, 05 Mar 2018 18:35:21 GMT): Hefziben (Mon, 05 Mar 2018 18:36:32 GMT): mahoney1 (Mon, 05 Mar 2018 18:37:57 GMT): tongli (Mon, 05 Mar 2018 18:38:03 GMT): davidkel (Mon, 05 Mar 2018 18:38:32 GMT): davidkel (Mon, 05 Mar 2018 18:38:32 GMT): tongli (Mon, 05 Mar 2018 18:40:04 GMT): tongli (Mon, 05 Mar 2018 18:40:39 GMT): tongli (Mon, 05 Mar 2018 18:42:00 GMT): tongli (Mon, 05 Mar 2018 18:43:41 GMT): tongli (Mon, 05 Mar 2018 18:44:28 GMT): mahoney1 (Mon, 05 Mar 2018 19:03:56 GMT): tongli (Mon, 05 Mar 2018 19:06:27 GMT): tongli (Mon, 05 Mar 2018 19:06:48 GMT): tongli (Mon, 05 Mar 2018 19:07:50 GMT): silliman (Mon, 05 Mar 2018 19:20:14 GMT): mahoney1 (Mon, 05 Mar 2018 19:48:44 GMT): tongli (Mon, 05 Mar 2018 19:55:00 GMT): Masthanbee 1 (Mon, 05 Mar 2018 20:02:03 GMT): Masthanbee 1 (Mon, 05 Mar 2018 20:06:44 GMT): Masthanbee 1 (Mon, 05 Mar 2018 20:06:44 GMT): Masthanbee 1 (Mon, 05 Mar 2018 20:06:44 GMT): sstone1 (Mon, 05 Mar 2018 20:52:14 GMT): y2255236 (Mon, 05 Mar 2018 20:55:06 GMT): y2255236 (Mon, 05 Mar 2018 20:55:06 GMT): y2255236 (Mon, 05 Mar 2018 20:55:06 GMT): y2255236 (Mon, 05 Mar 2018 20:55:06 GMT): phanikumar1210 (Mon, 05 Mar 2018 20:59:21 GMT): phanikumar1210 (Mon, 05 Mar 2018 20:59:21 GMT): phanikumar1210 (Mon, 05 Mar 2018 20:59:21 GMT): mahoney1 (Mon, 05 Mar 2018 22:49:20 GMT): mahoney1 (Mon, 05 Mar 2018 22:49:20 GMT): bamboo (Tue, 06 Mar 2018 04:45:38 GMT): Varun2887 (Tue, 06 Mar 2018 05:10:57 GMT): Varun2887 (Tue, 06 Mar 2018 05:11:13 GMT): Varun2887 (Tue, 06 Mar 2018 05:12:38 GMT): sugunadarbe (Tue, 06 Mar 2018 05:33:28 GMT): sugunadarbe (Tue, 06 Mar 2018 05:35:29 GMT): alexdevassy (Tue, 06 Mar 2018 06:04:21 GMT): alexdevassy (Tue, 06 Mar 2018 06:05:04 GMT): Varun2887 (Tue, 06 Mar 2018 06:32:03 GMT): Varun2887 (Tue, 06 Mar 2018 06:32:06 GMT): Varun2887 (Tue, 06 Mar 2018 06:32:34 GMT): mikeleow (Tue, 06 Mar 2018 06:45:41 GMT): Jaline (Tue, 06 Mar 2018 06:51:12 GMT): Jaline (Tue, 06 Mar 2018 06:52:03 GMT): mikeleow (Tue, 06 Mar 2018 06:55:47 GMT): Jaline (Tue, 06 Mar 2018 06:57:08 GMT): Jaline (Tue, 06 Mar 2018 06:57:44 GMT): Mohammed_Azhar (Tue, 06 Mar 2018 07:10:34 GMT): Mohammed_Azhar (Tue, 06 Mar 2018 07:11:21 GMT): Legiit (Tue, 06 Mar 2018 07:18:41 GMT): igetgames (Tue, 06 Mar 2018 07:30:19 GMT): igetgames (Tue, 06 Mar 2018 07:33:42 GMT): Mohammed_Azhar (Tue, 06 Mar 2018 07:39:46 GMT): igetgames (Tue, 06 Mar 2018 07:53:10 GMT): igetgames (Tue, 06 Mar 2018 08:00:05 GMT): igetgames (Tue, 06 Mar 2018 08:00:42 GMT): Turikalen (Tue, 06 Mar 2018 08:32:39 GMT): Legiit (Tue, 06 Mar 2018 09:20:25 GMT): xy250400 (Tue, 06 Mar 2018 09:34:17 GMT): xy250400 (Tue, 06 Mar 2018 09:36:22 GMT): prmdmshra (Tue, 06 Mar 2018 09:38:41 GMT): xy250400 (Tue, 06 Mar 2018 09:40:11 GMT): mahoney1 (Tue, 06 Mar 2018 09:57:51 GMT): mahoney1 (Tue, 06 Mar 2018 10:00:42 GMT): xy250400 (Tue, 06 Mar 2018 10:04:09 GMT): mahoney1 (Tue, 06 Mar 2018 10:05:23 GMT): zasamen (Tue, 06 Mar 2018 10:05:27 GMT): mahoney1 (Tue, 06 Mar 2018 10:11:57 GMT): KarthikSridharan (Tue, 06 Mar 2018 10:18:11 GMT): Legiit (Tue, 06 Mar 2018 10:21:42 GMT): ranjithkumarmv (Tue, 06 Mar 2018 10:22:11 GMT): mahoney1 (Tue, 06 Mar 2018 10:23:54 GMT): Turikalen (Tue, 06 Mar 2018 10:31:31 GMT): dtp (Tue, 06 Mar 2018 10:37:46 GMT): alexdevassy (Tue, 06 Mar 2018 10:44:16 GMT): mahoney1 (Tue, 06 Mar 2018 10:46:13 GMT): mahoney1 (Tue, 06 Mar 2018 10:59:57 GMT): mahoney1 (Tue, 06 Mar 2018 11:02:44 GMT): mahoney1 (Tue, 06 Mar 2018 11:05:22 GMT): mahoney1 (Tue, 06 Mar 2018 11:22:25 GMT): mahoney1 (Tue, 06 Mar 2018 11:22:25 GMT): mahoney1 (Tue, 06 Mar 2018 11:22:25 GMT): mahoney1 (Tue, 06 Mar 2018 11:31:53 GMT): Legiit (Tue, 06 Mar 2018 11:41:09 GMT): Legiit (Tue, 06 Mar 2018 11:41:09 GMT): Legiit (Tue, 06 Mar 2018 11:41:09 GMT): Legiit (Tue, 06 Mar 2018 11:41:09 GMT): Varun2887 (Tue, 06 Mar 2018 11:41:13 GMT): mikeleow (Tue, 06 Mar 2018 11:53:27 GMT): MohamedAbdelwahab (Tue, 06 Mar 2018 11:54:55 GMT): mikeleow (Tue, 06 Mar 2018 11:55:33 GMT): mikeleow (Tue, 06 Mar 2018 11:55:36 GMT): mikeleow (Tue, 06 Mar 2018 11:55:37 GMT): MohamedAbdelwahab (Tue, 06 Mar 2018 12:01:55 GMT): dariocuevaslopez (Tue, 06 Mar 2018 12:13:17 GMT): divudivyansh (Tue, 06 Mar 2018 12:22:42 GMT): argman (Tue, 06 Mar 2018 12:41:05 GMT): MartinKrmer (Tue, 06 Mar 2018 12:41:13 GMT): JanarthananShanmugam (Tue, 06 Mar 2018 12:51:26 GMT): mikeleow (Tue, 06 Mar 2018 12:52:20 GMT): Masthanbee 1 (Tue, 06 Mar 2018 12:54:22 GMT): piotrek94 (Tue, 06 Mar 2018 13:13:00 GMT): piotrek94 (Tue, 06 Mar 2018 13:13:08 GMT): zasamen (Tue, 06 Mar 2018 13:22:12 GMT): mahoney1 (Tue, 06 Mar 2018 13:46:41 GMT): mikeleow (Tue, 06 Mar 2018 13:48:02 GMT): mahoney1 (Tue, 06 Mar 2018 13:48:58 GMT): zasamen (Tue, 06 Mar 2018 13:49:41 GMT): mahoney1 (Tue, 06 Mar 2018 13:53:03 GMT): mahoney1 (Tue, 06 Mar 2018 13:53:03 GMT): mahoney1 (Tue, 06 Mar 2018 13:55:17 GMT): mahoney1 (Tue, 06 Mar 2018 13:57:53 GMT): SimonOberzan (Tue, 06 Mar 2018 13:59:09 GMT): SimonOberzan (Tue, 06 Mar 2018 13:59:09 GMT): SimonOberzan (Tue, 06 Mar 2018 13:59:09 GMT): SimonOberzan (Tue, 06 Mar 2018 13:59:09 GMT): CorentinPacaud (Tue, 06 Mar 2018 14:06:33 GMT): argman (Tue, 06 Mar 2018 14:07:37 GMT): mahoney1 (Tue, 06 Mar 2018 14:08:09 GMT): SimonOberzan (Tue, 06 Mar 2018 14:09:40 GMT): varunagarwal (Tue, 06 Mar 2018 14:11:33 GMT): varunagarwal (Tue, 06 Mar 2018 14:11:40 GMT): mahoney1 (Tue, 06 Mar 2018 14:11:50 GMT): SimonOberzan (Tue, 06 Mar 2018 14:12:26 GMT): varunagarwal (Tue, 06 Mar 2018 14:12:37 GMT): CorentinPacaud (Tue, 06 Mar 2018 14:17:15 GMT): CorentinPacaud (Tue, 06 Mar 2018 14:17:15 GMT): mahoney1 (Tue, 06 Mar 2018 14:20:03 GMT): mikeleow (Tue, 06 Mar 2018 14:31:33 GMT): mikeleow (Tue, 06 Mar 2018 14:31:59 GMT): mikeleow (Tue, 06 Mar 2018 14:32:21 GMT): mikeleow (Tue, 06 Mar 2018 14:32:23 GMT): ranjithkumarmv (Tue, 06 Mar 2018 14:32:46 GMT): ranjithkumarmv (Tue, 06 Mar 2018 14:32:46 GMT): ranjithkumarmv (Tue, 06 Mar 2018 14:33:30 GMT): mikeleow (Tue, 06 Mar 2018 14:34:21 GMT): Masthanbee 1 (Tue, 06 Mar 2018 14:39:38 GMT): Masthanbee 1 (Tue, 06 Mar 2018 14:40:13 GMT): Masthanbee 1 (Tue, 06 Mar 2018 14:40:39 GMT): Masthanbee 1 (Tue, 06 Mar 2018 14:41:02 GMT): ranjithkumarmv (Tue, 06 Mar 2018 14:45:08 GMT): mahoney1 (Tue, 06 Mar 2018 14:46:31 GMT): NikolaSologub (Tue, 06 Mar 2018 14:46:46 GMT): mahoney1 (Tue, 06 Mar 2018 14:47:20 GMT): mahoney1 (Tue, 06 Mar 2018 14:49:24 GMT): mahoney1 (Tue, 06 Mar 2018 14:49:24 GMT): ranjithkumarmv (Tue, 06 Mar 2018 14:51:05 GMT): ranjithkumarmv (Tue, 06 Mar 2018 14:51:05 GMT): CorentinPacaud (Tue, 06 Mar 2018 15:08:21 GMT): mikeleow (Tue, 06 Mar 2018 15:08:57 GMT): CorentinPacaud (Tue, 06 Mar 2018 15:09:20 GMT): CorentinPacaud (Tue, 06 Mar 2018 15:09:41 GMT): CorentinPacaud (Tue, 06 Mar 2018 15:10:04 GMT): CorentinPacaud (Tue, 06 Mar 2018 15:10:24 GMT): mikeleow (Tue, 06 Mar 2018 15:10:34 GMT): CorentinPacaud (Tue, 06 Mar 2018 15:12:37 GMT): CorentinPacaud (Tue, 06 Mar 2018 15:16:05 GMT): mahoney1 (Tue, 06 Mar 2018 15:30:18 GMT): mahoney1 (Tue, 06 Mar 2018 15:32:26 GMT): mahoney1 (Tue, 06 Mar 2018 15:32:26 GMT): mahoney1 (Tue, 06 Mar 2018 15:32:26 GMT): mahoney1 (Tue, 06 Mar 2018 15:32:26 GMT): mahoney1 (Tue, 06 Mar 2018 15:32:26 GMT): mahoney1 (Tue, 06 Mar 2018 15:33:36 GMT): Masthanbee 1 (Tue, 06 Mar 2018 15:35:08 GMT): mahoney1 (Tue, 06 Mar 2018 15:35:38 GMT): mahoney1 (Tue, 06 Mar 2018 15:35:38 GMT): Masthanbee 1 (Tue, 06 Mar 2018 15:36:36 GMT): Masthanbee 1 (Tue, 06 Mar 2018 15:38:38 GMT): chandrakanthm (Tue, 06 Mar 2018 16:01:54 GMT): mahoney1 (Tue, 06 Mar 2018 16:04:25 GMT): mahoney1 (Tue, 06 Mar 2018 16:08:29 GMT): CorentinPacaud (Tue, 06 Mar 2018 16:19:55 GMT): ranjithkumarmv (Tue, 06 Mar 2018 16:38:01 GMT): ranjithkumarmv (Tue, 06 Mar 2018 16:38:01 GMT): ranjithkumarmv (Tue, 06 Mar 2018 16:38:01 GMT): ranjithkumarmv (Tue, 06 Mar 2018 16:38:01 GMT): cuevrob (Tue, 06 Mar 2018 16:40:56 GMT): Sale7 (Tue, 06 Mar 2018 16:44:47 GMT): mbwhite (Tue, 06 Mar 2018 16:44:59 GMT): mikeleow (Tue, 06 Mar 2018 16:56:36 GMT): mikeleow (Tue, 06 Mar 2018 16:57:28 GMT): mikeleow (Tue, 06 Mar 2018 17:04:59 GMT): kakuzu (Tue, 06 Mar 2018 17:07:36 GMT): kakuzu (Tue, 06 Mar 2018 17:07:51 GMT): mahoney1 (Tue, 06 Mar 2018 17:16:06 GMT): mikeleow (Tue, 06 Mar 2018 17:16:37 GMT): mikeleow (Tue, 06 Mar 2018 17:17:29 GMT): mahoney1 (Tue, 06 Mar 2018 17:18:29 GMT): blockbuilder (Tue, 06 Mar 2018 17:24:08 GMT): blockbuilder (Tue, 06 Mar 2018 17:24:27 GMT): blockbuilder (Tue, 06 Mar 2018 17:26:00 GMT): mahoney1 (Tue, 06 Mar 2018 17:42:47 GMT): mahoney1 (Tue, 06 Mar 2018 17:42:47 GMT): mahoney1 (Tue, 06 Mar 2018 17:42:47 GMT): mikeleow (Tue, 06 Mar 2018 17:51:18 GMT): mikeleow (Tue, 06 Mar 2018 17:58:22 GMT): gochoa (Tue, 06 Mar 2018 18:00:58 GMT): DennisM330 (Tue, 06 Mar 2018 18:03:59 GMT): blockbuilder (Tue, 06 Mar 2018 18:12:06 GMT): ranjithkumarmv (Tue, 06 Mar 2018 18:14:19 GMT): ranjithkumarmv (Tue, 06 Mar 2018 18:14:19 GMT): DennisM330 (Tue, 06 Mar 2018 18:46:34 GMT): ranjithkumarmv (Tue, 06 Mar 2018 18:48:28 GMT): DennisM330 (Tue, 06 Mar 2018 18:55:42 GMT): DennisM330 (Tue, 06 Mar 2018 18:56:32 GMT): mikeleow (Tue, 06 Mar 2018 18:58:49 GMT): Everymans.ai (Tue, 06 Mar 2018 19:00:02 GMT): silliman (Tue, 06 Mar 2018 19:00:59 GMT): mikeleow (Tue, 06 Mar 2018 19:08:19 GMT): DennisM330 (Tue, 06 Mar 2018 19:50:14 GMT): DennisM330 (Tue, 06 Mar 2018 19:50:14 GMT): mikezaccardo (Tue, 06 Mar 2018 20:13:14 GMT): mahoney1 (Tue, 06 Mar 2018 20:40:11 GMT): mahoney1 (Tue, 06 Mar 2018 20:40:11 GMT): mahoney1 (Tue, 06 Mar 2018 20:40:11 GMT): mahoney1 (Tue, 06 Mar 2018 20:42:30 GMT): DennisM330 (Tue, 06 Mar 2018 20:46:59 GMT): mahoney1 (Tue, 06 Mar 2018 20:55:53 GMT): mahoney1 (Tue, 06 Mar 2018 20:55:53 GMT): mahoney1 (Tue, 06 Mar 2018 20:55:53 GMT): TreyZhong (Tue, 06 Mar 2018 21:04:30 GMT): TreyZhong (Tue, 06 Mar 2018 21:04:42 GMT): TreyZhong (Tue, 06 Mar 2018 21:04:53 GMT): mahoney1 (Tue, 06 Mar 2018 21:07:09 GMT): phanikumar1210 (Tue, 06 Mar 2018 21:10:02 GMT): phanikumar1210 (Tue, 06 Mar 2018 21:10:02 GMT): phanikumar1210 (Tue, 06 Mar 2018 21:11:49 GMT): DennisM330 (Tue, 06 Mar 2018 21:12:56 GMT): phanikumar1210 (Tue, 06 Mar 2018 21:18:21 GMT): DennisM330 (Tue, 06 Mar 2018 21:21:10 GMT): piotrek94 (Tue, 06 Mar 2018 21:23:06 GMT): jcap (Tue, 06 Mar 2018 21:41:14 GMT): jcap (Tue, 06 Mar 2018 21:41:42 GMT): jcap (Tue, 06 Mar 2018 21:41:54 GMT): jcap (Tue, 06 Mar 2018 21:47:29 GMT): piotrek94 (Tue, 06 Mar 2018 21:49:13 GMT): evin 4 (Tue, 06 Mar 2018 22:34:32 GMT): DennisM330 (Tue, 06 Mar 2018 22:46:17 GMT): davidkel (Tue, 06 Mar 2018 22:51:04 GMT): davidkel (Tue, 06 Mar 2018 22:51:04 GMT): davidkel (Tue, 06 Mar 2018 22:55:10 GMT): DennisM330 (Tue, 06 Mar 2018 22:56:47 GMT): davidkel (Tue, 06 Mar 2018 22:57:15 GMT): davidkel (Tue, 06 Mar 2018 23:05:16 GMT): NikolaSologub (Tue, 06 Mar 2018 23:24:10 GMT): NikolaSologub (Tue, 06 Mar 2018 23:28:27 GMT): piotrek94 (Tue, 06 Mar 2018 23:54:41 GMT): BurningLuffy (Wed, 07 Mar 2018 00:40:53 GMT): Jaline (Wed, 07 Mar 2018 01:11:01 GMT): Jaline (Wed, 07 Mar 2018 01:11:43 GMT): xy250400 (Wed, 07 Mar 2018 01:15:16 GMT): xy250400 (Wed, 07 Mar 2018 01:18:14 GMT): xy250400 (Wed, 07 Mar 2018 01:26:31 GMT): xy250400 (Wed, 07 Mar 2018 01:51:39 GMT): aneb (Wed, 07 Mar 2018 02:08:38 GMT): aneb (Wed, 07 Mar 2018 02:08:38 GMT): aneb (Wed, 07 Mar 2018 02:08:38 GMT): xy250400 (Wed, 07 Mar 2018 03:06:11 GMT): oplmzaq2 (Wed, 07 Mar 2018 03:11:12 GMT): LadarX (Wed, 07 Mar 2018 04:15:05 GMT): LadarX (Wed, 07 Mar 2018 04:15:05 GMT): LadarX (Wed, 07 Mar 2018 04:15:05 GMT): LadarX (Wed, 07 Mar 2018 04:15:12 GMT): Hefziben (Wed, 07 Mar 2018 04:31:41 GMT): syedrazi82 (Wed, 07 Mar 2018 04:50:50 GMT): syedrazi82 (Wed, 07 Mar 2018 04:51:11 GMT): syedrazi82 (Wed, 07 Mar 2018 04:51:30 GMT): syedrazi82 (Wed, 07 Mar 2018 04:51:44 GMT): jastisriradheshyam (Wed, 07 Mar 2018 05:08:36 GMT): Jaline (Wed, 07 Mar 2018 05:19:01 GMT): waleed (Wed, 07 Mar 2018 05:19:40 GMT): Jaline (Wed, 07 Mar 2018 05:23:20 GMT): jastisriradheshyam (Wed, 07 Mar 2018 05:46:07 GMT): jastisriradheshyam (Wed, 07 Mar 2018 05:46:07 GMT): blockbuilder (Wed, 07 Mar 2018 07:08:31 GMT): blockbuilder (Wed, 07 Mar 2018 07:08:31 GMT): bamboo (Wed, 07 Mar 2018 08:07:16 GMT): mahoney1 (Wed, 07 Mar 2018 08:21:47 GMT): mahoney1 (Wed, 07 Mar 2018 08:22:54 GMT): MohamedAbdelwahab (Wed, 07 Mar 2018 08:24:40 GMT): mahoney1 (Wed, 07 Mar 2018 08:24:43 GMT): mahoney1 (Wed, 07 Mar 2018 08:26:19 GMT): MohamedAbdelwahab (Wed, 07 Mar 2018 08:29:32 GMT): waleed (Wed, 07 Mar 2018 08:32:12 GMT): waleed (Wed, 07 Mar 2018 08:32:16 GMT): tanhui (Wed, 07 Mar 2018 08:58:15 GMT): tanhui (Wed, 07 Mar 2018 08:58:59 GMT): tanhui (Wed, 07 Mar 2018 09:02:54 GMT): tanhui (Wed, 07 Mar 2018 09:03:32 GMT): magicliang (Wed, 07 Mar 2018 09:03:42 GMT): magicliang (Wed, 07 Mar 2018 09:04:51 GMT): magicliang (Wed, 07 Mar 2018 09:04:53 GMT): magicliang (Wed, 07 Mar 2018 09:05:22 GMT): magicliang (Wed, 07 Mar 2018 09:05:46 GMT): argman (Wed, 07 Mar 2018 09:06:36 GMT): argman (Wed, 07 Mar 2018 09:06:36 GMT): argman (Wed, 07 Mar 2018 09:06:36 GMT): Yakechi (Wed, 07 Mar 2018 09:06:41 GMT): davidkel (Wed, 07 Mar 2018 09:18:22 GMT): argman (Wed, 07 Mar 2018 09:18:52 GMT): waleed (Wed, 07 Mar 2018 09:19:31 GMT): waleed (Wed, 07 Mar 2018 09:19:31 GMT): waleed (Wed, 07 Mar 2018 09:21:03 GMT): waleed (Wed, 07 Mar 2018 09:21:09 GMT): argman (Wed, 07 Mar 2018 09:21:17 GMT): argman (Wed, 07 Mar 2018 09:21:17 GMT): waleed (Wed, 07 Mar 2018 09:24:31 GMT): argman (Wed, 07 Mar 2018 09:25:00 GMT): argman (Wed, 07 Mar 2018 09:25:00 GMT): CorentinPacaud (Wed, 07 Mar 2018 09:31:11 GMT): CorentinPacaud (Wed, 07 Mar 2018 09:31:11 GMT): safasakly (Wed, 07 Mar 2018 09:31:47 GMT): Turikalen (Wed, 07 Mar 2018 09:32:49 GMT): safasakly (Wed, 07 Mar 2018 09:33:19 GMT): CorentinPacaud (Wed, 07 Mar 2018 09:34:43 GMT): ipahomov (Wed, 07 Mar 2018 09:37:14 GMT): Turikalen (Wed, 07 Mar 2018 09:39:26 GMT): Turikalen (Wed, 07 Mar 2018 09:39:26 GMT): waleed (Wed, 07 Mar 2018 09:39:58 GMT): CorentinPacaud (Wed, 07 Mar 2018 09:44:00 GMT): argman (Wed, 07 Mar 2018 09:44:23 GMT): Jaline (Wed, 07 Mar 2018 09:47:44 GMT): waleed (Wed, 07 Mar 2018 09:49:14 GMT): waleed (Wed, 07 Mar 2018 09:49:14 GMT): Turikalen (Wed, 07 Mar 2018 09:49:45 GMT): argman (Wed, 07 Mar 2018 09:51:59 GMT): CorentinPacaud (Wed, 07 Mar 2018 09:53:00 GMT): MartinKrmer (Wed, 07 Mar 2018 09:59:28 GMT): Turikalen (Wed, 07 Mar 2018 10:00:23 GMT): CorentinPacaud (Wed, 07 Mar 2018 10:01:16 GMT): CorentinPacaud (Wed, 07 Mar 2018 10:02:00 GMT): CorentinPacaud (Wed, 07 Mar 2018 10:04:18 GMT): Turikalen (Wed, 07 Mar 2018 10:05:52 GMT): CorentinPacaud (Wed, 07 Mar 2018 10:09:44 GMT): davidkel (Wed, 07 Mar 2018 10:26:51 GMT): davidkel (Wed, 07 Mar 2018 10:26:51 GMT): DerGaertner (Wed, 07 Mar 2018 10:28:47 GMT): ranjithkumarmv (Wed, 07 Mar 2018 10:31:01 GMT): CorentinPacaud (Wed, 07 Mar 2018 10:32:03 GMT): mahoney1 (Wed, 07 Mar 2018 10:36:49 GMT): mahoney1 (Wed, 07 Mar 2018 10:36:49 GMT): argman (Wed, 07 Mar 2018 10:39:11 GMT): argman (Wed, 07 Mar 2018 10:39:11 GMT): ranjithkumarmv (Wed, 07 Mar 2018 10:39:33 GMT): CorentinPacaud (Wed, 07 Mar 2018 10:41:04 GMT): shankar.borate (Wed, 07 Mar 2018 10:45:50 GMT): HargobindGupta (Wed, 07 Mar 2018 10:46:15 GMT): HargobindGupta (Wed, 07 Mar 2018 10:46:44 GMT): shankar.borate (Wed, 07 Mar 2018 10:46:59 GMT): mobis (Wed, 07 Mar 2018 10:47:28 GMT): tiue (Wed, 07 Mar 2018 11:46:43 GMT): mahoney1 (Wed, 07 Mar 2018 11:51:24 GMT): NeelakantPatel (Wed, 07 Mar 2018 11:52:30 GMT): mahoney1 (Wed, 07 Mar 2018 11:53:48 GMT): mahoney1 (Wed, 07 Mar 2018 11:59:29 GMT): abhinkraj (Wed, 07 Mar 2018 12:03:28 GMT): NeelakantPatel (Wed, 07 Mar 2018 12:07:24 GMT): mahoney1 (Wed, 07 Mar 2018 12:08:07 GMT): mahoney1 (Wed, 07 Mar 2018 12:08:07 GMT): mahoney1 (Wed, 07 Mar 2018 12:08:07 GMT): CorentinPacaud (Wed, 07 Mar 2018 12:11:22 GMT): NeelakantPatel (Wed, 07 Mar 2018 12:16:26 GMT): davidkel (Wed, 07 Mar 2018 12:34:53 GMT): argman (Wed, 07 Mar 2018 12:45:09 GMT): CorentinPacaud (Wed, 07 Mar 2018 13:16:04 GMT): SimonOberzan (Wed, 07 Mar 2018 13:55:11 GMT): SimonOberzan (Wed, 07 Mar 2018 13:55:11 GMT): SimonOberzan (Wed, 07 Mar 2018 13:56:11 GMT): mahoney1 (Wed, 07 Mar 2018 13:56:18 GMT): NiallC (Wed, 07 Mar 2018 14:13:32 GMT): CorentinPacaud (Wed, 07 Mar 2018 14:18:55 GMT): CorentinPacaud (Wed, 07 Mar 2018 14:27:14 GMT): mikeleow (Wed, 07 Mar 2018 14:30:52 GMT): mikeleow (Wed, 07 Mar 2018 14:30:52 GMT): mikeleow (Wed, 07 Mar 2018 14:30:52 GMT): mikeleow (Wed, 07 Mar 2018 14:30:52 GMT): mikeleow (Wed, 07 Mar 2018 14:31:13 GMT): d8bhatta (Wed, 07 Mar 2018 14:46:38 GMT): d8bhatta (Wed, 07 Mar 2018 14:47:06 GMT): d8bhatta (Wed, 07 Mar 2018 14:47:24 GMT): d8bhatta (Wed, 07 Mar 2018 14:49:02 GMT): piotrek94 (Wed, 07 Mar 2018 14:50:24 GMT): d8bhatta (Wed, 07 Mar 2018 14:50:49 GMT): LeonardEdwin (Wed, 07 Mar 2018 14:53:28 GMT): LeonardEdwin (Wed, 07 Mar 2018 14:55:51 GMT): y2255236 (Wed, 07 Mar 2018 14:56:30 GMT): mikeleow (Wed, 07 Mar 2018 14:59:42 GMT): d8bhatta (Wed, 07 Mar 2018 15:28:00 GMT): d8bhatta (Wed, 07 Mar 2018 15:28:21 GMT): aneb (Wed, 07 Mar 2018 15:29:55 GMT): mikeleow (Wed, 07 Mar 2018 15:34:20 GMT): mikeleow (Wed, 07 Mar 2018 15:34:37 GMT): mikeleow (Wed, 07 Mar 2018 15:34:41 GMT): davidkel (Wed, 07 Mar 2018 15:35:54 GMT): davidkel (Wed, 07 Mar 2018 15:35:54 GMT): CorentinPacaud (Wed, 07 Mar 2018 15:39:51 GMT): nkl199 (Wed, 07 Mar 2018 15:40:48 GMT): CorentinPacaud (Wed, 07 Mar 2018 15:40:53 GMT): CorentinPacaud (Wed, 07 Mar 2018 15:41:01 GMT): CorentinPacaud (Wed, 07 Mar 2018 15:42:20 GMT): davidkel (Wed, 07 Mar 2018 15:44:26 GMT): davidkel (Wed, 07 Mar 2018 15:44:26 GMT): davidkel (Wed, 07 Mar 2018 15:44:26 GMT): mikeleow (Wed, 07 Mar 2018 15:44:54 GMT): mikeleow (Wed, 07 Mar 2018 15:45:00 GMT): mikeleow (Wed, 07 Mar 2018 15:45:04 GMT): CorentinPacaud (Wed, 07 Mar 2018 15:45:11 GMT): CorentinPacaud (Wed, 07 Mar 2018 15:45:22 GMT): mikeleow (Wed, 07 Mar 2018 15:47:26 GMT): mahoney1 (Wed, 07 Mar 2018 15:48:08 GMT): mikeleow (Wed, 07 Mar 2018 15:52:13 GMT): mikeleow (Wed, 07 Mar 2018 15:52:16 GMT): CorentinPacaud (Wed, 07 Mar 2018 16:00:30 GMT): awash (Wed, 07 Mar 2018 16:30:11 GMT): awash (Wed, 07 Mar 2018 16:30:45 GMT): evin 4 (Wed, 07 Mar 2018 17:02:04 GMT): mahoney1 (Wed, 07 Mar 2018 18:02:43 GMT): mahoney1 (Wed, 07 Mar 2018 18:02:43 GMT): mahoney1 (Wed, 07 Mar 2018 18:02:43 GMT): mahoney1 (Wed, 07 Mar 2018 18:02:43 GMT): mahoney1 (Wed, 07 Mar 2018 18:02:43 GMT): mahoney1 (Wed, 07 Mar 2018 18:09:05 GMT): mahoney1 (Wed, 07 Mar 2018 18:12:57 GMT): y2255236 (Wed, 07 Mar 2018 18:21:13 GMT): evin 4 (Wed, 07 Mar 2018 18:32:38 GMT): evin 4 (Wed, 07 Mar 2018 18:32:45 GMT): evin 4 (Wed, 07 Mar 2018 18:33:53 GMT): evin 4 (Wed, 07 Mar 2018 18:35:31 GMT): evin 4 (Wed, 07 Mar 2018 18:37:21 GMT): evin 4 (Wed, 07 Mar 2018 18:39:17 GMT): evin 4 (Wed, 07 Mar 2018 19:14:08 GMT): davidoevans (Wed, 07 Mar 2018 19:19:31 GMT): davidoevans (Wed, 07 Mar 2018 19:30:50 GMT): Hefziben (Wed, 07 Mar 2018 19:32:16 GMT): davidkel (Wed, 07 Mar 2018 19:36:05 GMT): vishwasbalakrishna (Wed, 07 Mar 2018 21:30:18 GMT): eguevarar (Wed, 07 Mar 2018 21:47:17 GMT): eguevarar (Wed, 07 Mar 2018 21:48:40 GMT): eguevarar (Wed, 07 Mar 2018 21:48:40 GMT): eguevarar (Wed, 07 Mar 2018 21:48:40 GMT): eguevarar (Wed, 07 Mar 2018 21:49:16 GMT): eguevarar (Wed, 07 Mar 2018 21:49:39 GMT): eguevarar (Wed, 07 Mar 2018 21:49:51 GMT): eguevarar (Wed, 07 Mar 2018 21:52:27 GMT): eguevarar (Wed, 07 Mar 2018 21:52:27 GMT): eguevarar (Wed, 07 Mar 2018 21:52:54 GMT): eguevarar (Wed, 07 Mar 2018 21:53:16 GMT): eguevarar (Wed, 07 Mar 2018 21:53:16 GMT): eguevarar (Wed, 07 Mar 2018 21:54:11 GMT): eguevarar (Wed, 07 Mar 2018 21:54:11 GMT): Rmannn (Wed, 07 Mar 2018 22:05:54 GMT): Rmannn (Wed, 07 Mar 2018 22:05:54 GMT): Rmannn (Wed, 07 Mar 2018 22:05:54 GMT): eguevarar (Wed, 07 Mar 2018 22:41:12 GMT): cammachusa (Thu, 08 Mar 2018 00:17:47 GMT): mikeleow (Thu, 08 Mar 2018 00:47:36 GMT): mikeleow (Thu, 08 Mar 2018 00:51:42 GMT): mikeleow (Thu, 08 Mar 2018 00:51:48 GMT): mikeleow (Thu, 08 Mar 2018 00:55:56 GMT): Rmannn (Thu, 08 Mar 2018 01:06:37 GMT): Rmannn (Thu, 08 Mar 2018 01:06:37 GMT): Rmannn (Thu, 08 Mar 2018 01:06:37 GMT): Rmannn (Thu, 08 Mar 2018 01:06:37 GMT): Rmannn (Thu, 08 Mar 2018 01:06:37 GMT): mikeleow (Thu, 08 Mar 2018 01:19:42 GMT): mikeleow (Thu, 08 Mar 2018 01:19:51 GMT): mikeleow (Thu, 08 Mar 2018 01:25:26 GMT): iivri_1 (Thu, 08 Mar 2018 01:25:50 GMT): cheukchan (Thu, 08 Mar 2018 05:25:16 GMT): absingh0 (Thu, 08 Mar 2018 06:17:22 GMT): rickr (Thu, 08 Mar 2018 06:17:23 GMT): Pranoti (Thu, 08 Mar 2018 06:46:53 GMT): Pranoti (Thu, 08 Mar 2018 06:46:53 GMT): davidkel (Thu, 08 Mar 2018 07:05:39 GMT): davidkel (Thu, 08 Mar 2018 07:08:16 GMT): davidkel (Thu, 08 Mar 2018 07:09:29 GMT): absingh0 (Thu, 08 Mar 2018 07:15:40 GMT): davidkel (Thu, 08 Mar 2018 07:18:04 GMT): absingh0 (Thu, 08 Mar 2018 07:19:06 GMT): mikeleow (Thu, 08 Mar 2018 07:26:35 GMT): mikeleow (Thu, 08 Mar 2018 07:46:02 GMT): mikeleow (Thu, 08 Mar 2018 07:46:06 GMT): mikeleow (Thu, 08 Mar 2018 07:46:06 GMT): mikeleow (Thu, 08 Mar 2018 07:46:20 GMT): mikeleow (Thu, 08 Mar 2018 07:46:29 GMT): Jaline (Thu, 08 Mar 2018 07:46:34 GMT): davidkel (Thu, 08 Mar 2018 07:46:59 GMT): mikeleow (Thu, 08 Mar 2018 07:47:00 GMT): mikeleow (Thu, 08 Mar 2018 07:47:07 GMT): mikeleow (Thu, 08 Mar 2018 07:47:08 GMT): mahoney1 (Thu, 08 Mar 2018 08:18:41 GMT): MartinKrmer (Thu, 08 Mar 2018 09:15:23 GMT): MuhammadSalah (Thu, 08 Mar 2018 09:34:01 GMT): MuhammadSalah (Thu, 08 Mar 2018 09:34:22 GMT): MuhammadSalah (Thu, 08 Mar 2018 09:34:33 GMT): mbwhite (Thu, 08 Mar 2018 09:37:03 GMT): MuhammadSalah (Thu, 08 Mar 2018 09:38:07 GMT): MuhammadSalah (Thu, 08 Mar 2018 09:38:20 GMT): MuhammadSalah (Thu, 08 Mar 2018 09:38:29 GMT): MuhammadSalah (Thu, 08 Mar 2018 09:38:39 GMT): mikeleow (Thu, 08 Mar 2018 09:45:47 GMT): mikeleow (Thu, 08 Mar 2018 09:45:52 GMT): mikeleow (Thu, 08 Mar 2018 09:45:56 GMT): mikeleow (Thu, 08 Mar 2018 09:45:58 GMT): AnomalRoil (Thu, 08 Mar 2018 09:52:31 GMT): AnomalRoil (Thu, 08 Mar 2018 09:56:25 GMT): mahoney1 (Thu, 08 Mar 2018 09:57:56 GMT): mahoney1 (Thu, 08 Mar 2018 10:06:38 GMT): mahoney1 (Thu, 08 Mar 2018 10:06:38 GMT): mahoney1 (Thu, 08 Mar 2018 10:06:38 GMT): mahoney1 (Thu, 08 Mar 2018 10:06:38 GMT): mikeleow (Thu, 08 Mar 2018 10:20:18 GMT): mikeleow (Thu, 08 Mar 2018 10:20:26 GMT): mikeleow (Thu, 08 Mar 2018 10:20:44 GMT): mikeleow (Thu, 08 Mar 2018 10:21:31 GMT): Stecec (Thu, 08 Mar 2018 10:27:44 GMT): mahoney1 (Thu, 08 Mar 2018 10:28:46 GMT): mikeleow (Thu, 08 Mar 2018 10:29:46 GMT): vkumar201415 (Thu, 08 Mar 2018 10:41:51 GMT): mahoney1 (Thu, 08 Mar 2018 11:07:58 GMT): mahoney1 (Thu, 08 Mar 2018 11:07:58 GMT): DennisM330 (Thu, 08 Mar 2018 11:29:30 GMT): manishpparmar (Thu, 08 Mar 2018 12:03:06 GMT): manishpparmar (Thu, 08 Mar 2018 12:03:53 GMT): phanikumar (Thu, 08 Mar 2018 12:04:20 GMT): phanikumar (Thu, 08 Mar 2018 12:04:39 GMT): sstone1 (Thu, 08 Mar 2018 12:06:04 GMT): manishpparmar (Thu, 08 Mar 2018 12:06:44 GMT): manishpparmar (Thu, 08 Mar 2018 12:07:52 GMT): MuhammadSalah (Thu, 08 Mar 2018 12:07:56 GMT): MuhammadSalah (Thu, 08 Mar 2018 12:08:24 GMT): piotrek94 (Thu, 08 Mar 2018 12:13:44 GMT): sun337 (Thu, 08 Mar 2018 12:22:56 GMT): sun337 (Thu, 08 Mar 2018 12:23:37 GMT): sun337 (Thu, 08 Mar 2018 12:24:09 GMT): sun337 (Thu, 08 Mar 2018 12:24:20 GMT): sun337 (Thu, 08 Mar 2018 12:25:00 GMT): sun337 (Thu, 08 Mar 2018 12:25:00 GMT): sun337 (Thu, 08 Mar 2018 12:26:02 GMT): sun337 (Thu, 08 Mar 2018 12:27:53 GMT): mahoney1 (Thu, 08 Mar 2018 12:31:36 GMT): MuhammadSalah (Thu, 08 Mar 2018 12:32:43 GMT): ShereenSallam (Thu, 08 Mar 2018 12:34:16 GMT): ShereenSallam (Thu, 08 Mar 2018 12:34:33 GMT): stiley (Thu, 08 Mar 2018 12:44:43 GMT): mahoney1 (Thu, 08 Mar 2018 12:45:22 GMT): mahoney1 (Thu, 08 Mar 2018 12:49:07 GMT): mahoney1 (Thu, 08 Mar 2018 13:49:37 GMT): sun337 (Thu, 08 Mar 2018 13:50:32 GMT): DennisM330 (Thu, 08 Mar 2018 13:55:31 GMT): sun337 (Thu, 08 Mar 2018 14:06:52 GMT): mahoney1 (Thu, 08 Mar 2018 14:10:17 GMT): mahoney1 (Thu, 08 Mar 2018 14:10:17 GMT): mahoney1 (Thu, 08 Mar 2018 14:19:44 GMT): MuhammadSalah (Thu, 08 Mar 2018 14:57:56 GMT): nicolapaoli (Thu, 08 Mar 2018 15:06:45 GMT): aparolini (Thu, 08 Mar 2018 15:18:21 GMT): aparolini (Thu, 08 Mar 2018 15:18:21 GMT): aparolini (Thu, 08 Mar 2018 15:18:21 GMT): aparolini (Thu, 08 Mar 2018 15:18:21 GMT): aparolini (Thu, 08 Mar 2018 15:18:21 GMT): aparolini (Thu, 08 Mar 2018 15:18:48 GMT): davidkel (Thu, 08 Mar 2018 15:50:20 GMT): nicolapaoli (Thu, 08 Mar 2018 16:03:12 GMT): davidkel (Thu, 08 Mar 2018 16:41:56 GMT): awash (Thu, 08 Mar 2018 16:44:50 GMT): mahoney1 (Thu, 08 Mar 2018 16:45:44 GMT): gbolarhan (Thu, 08 Mar 2018 16:46:38 GMT): DanielMiranda (Thu, 08 Mar 2018 16:48:55 GMT): mahoney1 (Thu, 08 Mar 2018 16:52:03 GMT): mahoney1 (Thu, 08 Mar 2018 16:52:03 GMT): nicolapaoli (Thu, 08 Mar 2018 16:55:04 GMT): nicolapaoli (Thu, 08 Mar 2018 16:55:35 GMT): phanikumar (Thu, 08 Mar 2018 17:16:28 GMT): phanikumar (Thu, 08 Mar 2018 17:16:28 GMT): mahoney1 (Thu, 08 Mar 2018 17:24:18 GMT): phanikumar (Thu, 08 Mar 2018 17:29:59 GMT): edgward (Thu, 08 Mar 2018 19:08:38 GMT): psingh 2 (Thu, 08 Mar 2018 19:22:53 GMT): Rickos95 (Thu, 08 Mar 2018 19:27:10 GMT): Rickos95 (Thu, 08 Mar 2018 19:29:36 GMT): Rickos95 (Thu, 08 Mar 2018 19:30:38 GMT): AjeetBansal (Thu, 08 Mar 2018 20:13:05 GMT): chandrakanthm (Thu, 08 Mar 2018 20:28:31 GMT): jcap (Thu, 08 Mar 2018 20:42:44 GMT): jcap (Thu, 08 Mar 2018 20:42:52 GMT): jcap (Thu, 08 Mar 2018 20:42:58 GMT): jcap (Thu, 08 Mar 2018 20:43:06 GMT): jcap (Thu, 08 Mar 2018 20:43:35 GMT): jcap (Thu, 08 Mar 2018 20:43:35 GMT): jcap (Thu, 08 Mar 2018 20:43:35 GMT): jcap (Thu, 08 Mar 2018 20:43:42 GMT): silliman (Thu, 08 Mar 2018 20:44:22 GMT): jcap (Thu, 08 Mar 2018 20:45:05 GMT): jcap (Thu, 08 Mar 2018 20:45:53 GMT): jcap (Thu, 08 Mar 2018 20:45:59 GMT): jcap (Thu, 08 Mar 2018 20:46:18 GMT): jcap (Thu, 08 Mar 2018 20:46:25 GMT): jcap (Thu, 08 Mar 2018 20:47:34 GMT): atbe (Thu, 08 Mar 2018 21:00:42 GMT): atbe (Thu, 08 Mar 2018 21:00:42 GMT): eguevarar (Thu, 08 Mar 2018 21:03:21 GMT): eguevarar (Thu, 08 Mar 2018 21:12:07 GMT): eguevarar (Thu, 08 Mar 2018 21:12:07 GMT): chandrakanthMamillapalli (Thu, 08 Mar 2018 22:26:40 GMT): timms (Thu, 08 Mar 2018 23:03:34 GMT): aneb (Fri, 09 Mar 2018 01:21:38 GMT): aneb (Fri, 09 Mar 2018 01:21:38 GMT): vparihar (Fri, 09 Mar 2018 02:40:44 GMT): liujinzhong (Fri, 09 Mar 2018 02:52:25 GMT): bamboo (Fri, 09 Mar 2018 02:59:23 GMT): mikeleow (Fri, 09 Mar 2018 03:34:30 GMT): ra_w (Fri, 09 Mar 2018 05:38:29 GMT): suva (Fri, 09 Mar 2018 06:55:57 GMT): dselman (Fri, 09 Mar 2018 08:19:35 GMT): sghosh2 (Fri, 09 Mar 2018 08:27:07 GMT): sghosh2 (Fri, 09 Mar 2018 08:28:55 GMT): safasakly (Fri, 09 Mar 2018 08:53:13 GMT): sstone1 (Fri, 09 Mar 2018 08:59:22 GMT): sghosh2 (Fri, 09 Mar 2018 09:02:14 GMT): sstone1 (Fri, 09 Mar 2018 09:03:17 GMT): sstone1 (Fri, 09 Mar 2018 09:03:38 GMT): sstone1 (Fri, 09 Mar 2018 09:03:56 GMT): sghosh2 (Fri, 09 Mar 2018 09:06:30 GMT): sstone1 (Fri, 09 Mar 2018 09:17:38 GMT): sghosh2 (Fri, 09 Mar 2018 09:19:05 GMT): piotrek94 (Fri, 09 Mar 2018 09:21:35 GMT): piotrek94 (Fri, 09 Mar 2018 09:21:42 GMT): piotrek94 (Fri, 09 Mar 2018 09:22:38 GMT): sstone1 (Fri, 09 Mar 2018 09:27:31 GMT): sstone1 (Fri, 09 Mar 2018 09:27:31 GMT): piotrek94 (Fri, 09 Mar 2018 09:31:20 GMT): piotrek94 (Fri, 09 Mar 2018 09:31:29 GMT): sstone1 (Fri, 09 Mar 2018 09:31:54 GMT): piotrek94 (Fri, 09 Mar 2018 09:34:06 GMT): mahoney1 (Fri, 09 Mar 2018 09:40:23 GMT): alexdevassy (Fri, 09 Mar 2018 09:40:55 GMT): vpreddi (Fri, 09 Mar 2018 09:45:23 GMT): vpreddi (Fri, 09 Mar 2018 09:46:23 GMT): vpreddi (Fri, 09 Mar 2018 09:46:45 GMT): vpreddi (Fri, 09 Mar 2018 09:46:52 GMT): remik (Fri, 09 Mar 2018 09:47:28 GMT): vpreddi (Fri, 09 Mar 2018 09:47:41 GMT): vpreddi (Fri, 09 Mar 2018 09:47:51 GMT): mahoney1 (Fri, 09 Mar 2018 09:58:21 GMT): d8bhatta (Fri, 09 Mar 2018 10:00:09 GMT): alexdevassy (Fri, 09 Mar 2018 10:00:54 GMT): alexdevassy (Fri, 09 Mar 2018 10:01:27 GMT): d8bhatta (Fri, 09 Mar 2018 10:02:16 GMT): mahoney1 (Fri, 09 Mar 2018 10:03:31 GMT): vpreddi (Fri, 09 Mar 2018 10:04:08 GMT): vpreddi (Fri, 09 Mar 2018 10:05:29 GMT): vpreddi (Fri, 09 Mar 2018 10:05:37 GMT): vpreddi (Fri, 09 Mar 2018 10:05:46 GMT): vpreddi (Fri, 09 Mar 2018 10:07:59 GMT): ranjithkumarmv (Fri, 09 Mar 2018 10:10:58 GMT): mahoney1 (Fri, 09 Mar 2018 10:24:14 GMT): mahoney1 (Fri, 09 Mar 2018 10:27:17 GMT): mahoney1 (Fri, 09 Mar 2018 10:30:53 GMT): mahoney1 (Fri, 09 Mar 2018 10:30:53 GMT): vpreddi (Fri, 09 Mar 2018 10:31:31 GMT): vpreddi (Fri, 09 Mar 2018 10:32:20 GMT): davidkel (Fri, 09 Mar 2018 10:35:35 GMT): vpreddi (Fri, 09 Mar 2018 10:36:21 GMT): Jaline (Fri, 09 Mar 2018 10:36:51 GMT): davidkel (Fri, 09 Mar 2018 10:37:40 GMT): davidkel (Fri, 09 Mar 2018 10:37:40 GMT): mahoney1 (Fri, 09 Mar 2018 10:39:09 GMT): mahoney1 (Fri, 09 Mar 2018 11:03:47 GMT): ranjithkumarmv (Fri, 09 Mar 2018 11:08:13 GMT): piotrek94 (Fri, 09 Mar 2018 11:09:13 GMT): piotrek94 (Fri, 09 Mar 2018 11:10:11 GMT): piotrek94 (Fri, 09 Mar 2018 11:15:23 GMT): mahoney1 (Fri, 09 Mar 2018 11:22:58 GMT): piotrek94 (Fri, 09 Mar 2018 11:28:07 GMT): piotrek94 (Fri, 09 Mar 2018 11:32:47 GMT): mahoney1 (Fri, 09 Mar 2018 11:35:18 GMT): piotrek94 (Fri, 09 Mar 2018 11:41:06 GMT): piotrek94 (Fri, 09 Mar 2018 11:41:33 GMT): piotrek94 (Fri, 09 Mar 2018 11:43:28 GMT): Rickos95 (Fri, 09 Mar 2018 11:48:32 GMT): Rickos95 (Fri, 09 Mar 2018 11:53:09 GMT): suva (Fri, 09 Mar 2018 11:57:02 GMT): suva (Fri, 09 Mar 2018 11:57:08 GMT): mahoney1 (Fri, 09 Mar 2018 12:17:53 GMT): mahoney1 (Fri, 09 Mar 2018 12:17:53 GMT): mahoney1 (Fri, 09 Mar 2018 12:17:53 GMT): mahoney1 (Fri, 09 Mar 2018 12:17:53 GMT): mahoney1 (Fri, 09 Mar 2018 12:17:53 GMT): mahoney1 (Fri, 09 Mar 2018 12:20:52 GMT): AkshayJindal (Fri, 09 Mar 2018 12:26:25 GMT): AkshayJindal (Fri, 09 Mar 2018 12:28:49 GMT): AkshayJindal (Fri, 09 Mar 2018 12:28:49 GMT): piotrek94 (Fri, 09 Mar 2018 12:32:41 GMT): piotrek94 (Fri, 09 Mar 2018 12:32:55 GMT): mahoney1 (Fri, 09 Mar 2018 12:35:38 GMT): suva (Fri, 09 Mar 2018 12:37:11 GMT): suva (Fri, 09 Mar 2018 12:37:19 GMT): suva (Fri, 09 Mar 2018 12:37:46 GMT): awash (Fri, 09 Mar 2018 12:44:22 GMT): mahoney1 (Fri, 09 Mar 2018 13:00:59 GMT): piotrek94 (Fri, 09 Mar 2018 13:04:08 GMT): mahoney1 (Fri, 09 Mar 2018 13:05:35 GMT): mahoney1 (Fri, 09 Mar 2018 13:07:54 GMT): piotrek94 (Fri, 09 Mar 2018 13:24:30 GMT): Legiit (Fri, 09 Mar 2018 13:29:42 GMT): sghosh2 (Fri, 09 Mar 2018 13:36:10 GMT): sghosh2 (Fri, 09 Mar 2018 13:36:35 GMT): sghosh2 (Fri, 09 Mar 2018 13:36:46 GMT): mahoney1 (Fri, 09 Mar 2018 13:49:50 GMT): mahoney1 (Fri, 09 Mar 2018 13:51:35 GMT): sghosh2 (Fri, 09 Mar 2018 13:54:05 GMT): mahoney1 (Fri, 09 Mar 2018 14:05:28 GMT): mahoney1 (Fri, 09 Mar 2018 14:05:28 GMT): mahoney1 (Fri, 09 Mar 2018 14:05:28 GMT): Legiit (Fri, 09 Mar 2018 14:13:09 GMT): Legiit (Fri, 09 Mar 2018 14:13:31 GMT): Legiit (Fri, 09 Mar 2018 14:18:06 GMT): mahoney1 (Fri, 09 Mar 2018 14:19:43 GMT): Legiit (Fri, 09 Mar 2018 14:25:35 GMT): Legiit (Fri, 09 Mar 2018 14:25:39 GMT): phanikumar (Fri, 09 Mar 2018 14:40:52 GMT): phanikumar (Fri, 09 Mar 2018 14:40:52 GMT): jcap (Fri, 09 Mar 2018 14:44:32 GMT): jcap (Fri, 09 Mar 2018 14:45:03 GMT): jcap (Fri, 09 Mar 2018 14:45:33 GMT): jcap (Fri, 09 Mar 2018 14:45:59 GMT): jcap (Fri, 09 Mar 2018 14:46:34 GMT): mikeleow (Fri, 09 Mar 2018 14:53:06 GMT): mikeleow (Fri, 09 Mar 2018 14:53:19 GMT): mikeleow (Fri, 09 Mar 2018 14:53:29 GMT): mikeleow (Fri, 09 Mar 2018 14:58:06 GMT): mahoney1 (Fri, 09 Mar 2018 15:03:12 GMT): mikeleow (Fri, 09 Mar 2018 15:03:50 GMT): mikeleow (Fri, 09 Mar 2018 15:04:06 GMT): davidkel (Fri, 09 Mar 2018 15:05:14 GMT): phanikumar (Fri, 09 Mar 2018 15:06:38 GMT): davidkel (Fri, 09 Mar 2018 15:06:58 GMT): davidkel (Fri, 09 Mar 2018 15:08:10 GMT): mikeleow (Fri, 09 Mar 2018 15:08:22 GMT): mikeleow (Fri, 09 Mar 2018 15:12:29 GMT): mikeleow (Fri, 09 Mar 2018 15:12:31 GMT): mikeleow (Fri, 09 Mar 2018 15:12:36 GMT): jcap (Fri, 09 Mar 2018 15:15:46 GMT): jcap (Fri, 09 Mar 2018 15:15:52 GMT): jcap (Fri, 09 Mar 2018 15:16:21 GMT): jcap (Fri, 09 Mar 2018 15:16:46 GMT): mikeleow (Fri, 09 Mar 2018 15:30:14 GMT): mikeleow (Fri, 09 Mar 2018 15:31:47 GMT): mikeleow (Fri, 09 Mar 2018 15:33:31 GMT): phanikumar (Fri, 09 Mar 2018 15:45:23 GMT): jcap (Fri, 09 Mar 2018 15:46:56 GMT): jcap (Fri, 09 Mar 2018 15:47:11 GMT): mahoney1 (Fri, 09 Mar 2018 15:47:43 GMT): mahoney1 (Fri, 09 Mar 2018 16:03:29 GMT): mikeleow (Fri, 09 Mar 2018 16:23:26 GMT): sghosh2 (Fri, 09 Mar 2018 16:23:32 GMT): mikeleow (Fri, 09 Mar 2018 16:32:51 GMT): mikeleow (Fri, 09 Mar 2018 16:32:59 GMT): mikeleow (Fri, 09 Mar 2018 16:33:03 GMT): mikeleow (Fri, 09 Mar 2018 16:33:04 GMT): mikeleow (Fri, 09 Mar 2018 16:35:02 GMT): mahoney1 (Fri, 09 Mar 2018 16:45:42 GMT): mahoney1 (Fri, 09 Mar 2018 16:45:42 GMT): mahoney1 (Fri, 09 Mar 2018 16:45:42 GMT): mikeleow (Fri, 09 Mar 2018 16:47:40 GMT): mikeleow (Fri, 09 Mar 2018 16:47:46 GMT): mikeleow (Fri, 09 Mar 2018 16:50:27 GMT): sghosh2 (Fri, 09 Mar 2018 16:52:40 GMT): sghosh2 (Fri, 09 Mar 2018 16:59:50 GMT): Jaline (Fri, 09 Mar 2018 17:04:43 GMT): Rickos95 (Fri, 09 Mar 2018 17:11:21 GMT): phanikumar (Fri, 09 Mar 2018 17:17:22 GMT): mahoney1 (Fri, 09 Mar 2018 17:32:09 GMT): mahoney1 (Fri, 09 Mar 2018 17:40:54 GMT): mahoney1 (Fri, 09 Mar 2018 17:40:54 GMT): mahoney1 (Fri, 09 Mar 2018 17:40:54 GMT): mahoney1 (Fri, 09 Mar 2018 17:44:42 GMT): SamuelDare (Fri, 09 Mar 2018 17:53:35 GMT): SamuelDare (Fri, 09 Mar 2018 17:53:45 GMT): SamuelDare (Fri, 09 Mar 2018 17:53:55 GMT): SamuelDare (Fri, 09 Mar 2018 17:54:09 GMT): mahoney1 (Fri, 09 Mar 2018 17:58:30 GMT): mahoney1 (Fri, 09 Mar 2018 18:05:20 GMT): mahoney1 (Fri, 09 Mar 2018 18:05:20 GMT): aj07 (Fri, 09 Mar 2018 18:25:08 GMT): robinpapa (Fri, 09 Mar 2018 18:41:49 GMT): robinpapa (Fri, 09 Mar 2018 18:43:22 GMT): robinpapa (Fri, 09 Mar 2018 18:44:22 GMT): SamuelDare (Fri, 09 Mar 2018 18:46:24 GMT): mahoney1 (Fri, 09 Mar 2018 18:50:04 GMT): robinpapa (Fri, 09 Mar 2018 18:51:25 GMT): pedropinto (Fri, 09 Mar 2018 18:55:50 GMT): GmoneyCoder (Fri, 09 Mar 2018 19:27:40 GMT): y2255236 (Fri, 09 Mar 2018 19:34:48 GMT): y2255236 (Fri, 09 Mar 2018 19:34:48 GMT): y2255236 (Fri, 09 Mar 2018 19:34:48 GMT): y2255236 (Fri, 09 Mar 2018 19:34:48 GMT): snowy13 (Fri, 09 Mar 2018 20:16:13 GMT): phanikumar (Fri, 09 Mar 2018 20:23:03 GMT): Hefziben (Fri, 09 Mar 2018 21:19:09 GMT): KushagraGautam (Fri, 09 Mar 2018 21:38:17 GMT): KushagraGautam (Fri, 09 Mar 2018 21:38:59 GMT): KushagraGautam (Fri, 09 Mar 2018 21:39:12 GMT): DanielMiranda (Fri, 09 Mar 2018 22:43:14 GMT): MuhammadSalah (Fri, 09 Mar 2018 22:43:47 GMT): MuhammadSalah (Fri, 09 Mar 2018 22:44:14 GMT): Jaline (Sat, 10 Mar 2018 01:39:38 GMT): mrtrantuan (Sat, 10 Mar 2018 02:34:59 GMT): vpreddi (Sat, 10 Mar 2018 04:45:40 GMT): vpreddi (Sat, 10 Mar 2018 04:45:52 GMT): vpreddi (Sat, 10 Mar 2018 04:46:35 GMT): vpreddi (Sat, 10 Mar 2018 05:39:31 GMT): mikeleow (Sat, 10 Mar 2018 06:44:45 GMT): mikeleow (Sat, 10 Mar 2018 07:03:04 GMT): KaGopal (Sat, 10 Mar 2018 08:27:59 GMT): mikeleow (Sat, 10 Mar 2018 10:06:43 GMT): vpreddi (Sat, 10 Mar 2018 11:04:59 GMT): RajkumarTiwari (Sat, 10 Mar 2018 11:48:51 GMT): RajkumarTiwari (Sat, 10 Mar 2018 11:49:29 GMT): robinpapa (Sat, 10 Mar 2018 11:54:16 GMT): RajkumarTiwari (Sat, 10 Mar 2018 11:55:50 GMT): ShereenSallam (Sat, 10 Mar 2018 12:18:16 GMT): smsharma (Sat, 10 Mar 2018 12:24:49 GMT): smsharma (Sat, 10 Mar 2018 12:29:28 GMT): smsharma (Sat, 10 Mar 2018 12:31:13 GMT): smsharma (Sat, 10 Mar 2018 12:57:11 GMT): zubairIdrees (Sat, 10 Mar 2018 14:19:58 GMT): zubairIdrees (Sat, 10 Mar 2018 14:20:12 GMT): brendonakay (Sat, 10 Mar 2018 14:31:07 GMT): cditzler (Sat, 10 Mar 2018 15:13:17 GMT): phanikumar (Sat, 10 Mar 2018 19:24:20 GMT): phanikumar (Sat, 10 Mar 2018 19:24:20 GMT): PatrickODwyer (Sat, 10 Mar 2018 20:26:50 GMT): maddydev (Sat, 10 Mar 2018 23:24:42 GMT): PabitraMartha (Sun, 11 Mar 2018 08:29:45 GMT): EfratLevy (Sun, 11 Mar 2018 12:10:14 GMT): EfratLevy (Sun, 11 Mar 2018 12:10:21 GMT): EfratLevy (Sun, 11 Mar 2018 12:15:54 GMT): EfratLevy (Sun, 11 Mar 2018 12:16:26 GMT): sstone1 (Sun, 11 Mar 2018 14:14:09 GMT): awash (Sun, 11 Mar 2018 14:14:25 GMT): awash (Sun, 11 Mar 2018 14:16:20 GMT): sstone1 (Sun, 11 Mar 2018 14:22:48 GMT): awash (Sun, 11 Mar 2018 14:24:58 GMT): phanikumar (Sun, 11 Mar 2018 14:38:52 GMT): awash (Sun, 11 Mar 2018 15:41:49 GMT): robinpapa (Sun, 11 Mar 2018 15:58:06 GMT): robinpapa (Sun, 11 Mar 2018 16:09:10 GMT): robinpapa (Sun, 11 Mar 2018 16:09:55 GMT): quanon (Sun, 11 Mar 2018 17:15:48 GMT): EfratLevy (Sun, 11 Mar 2018 17:56:34 GMT): AliCSLearner (Sun, 11 Mar 2018 18:09:04 GMT): AliCSLearner (Sun, 11 Mar 2018 18:09:20 GMT): AliCSLearner (Sun, 11 Mar 2018 18:09:32 GMT): alexdevassy (Sun, 11 Mar 2018 19:37:14 GMT): alexdevassy (Sun, 11 Mar 2018 19:37:27 GMT): alexdevassy (Sun, 11 Mar 2018 19:37:32 GMT): phanikumar (Sun, 11 Mar 2018 20:55:30 GMT): ghindle (Mon, 12 Mar 2018 00:07:25 GMT): ghindle (Mon, 12 Mar 2018 00:09:57 GMT): bamboo (Mon, 12 Mar 2018 02:43:00 GMT): PrashantS (Mon, 12 Mar 2018 04:54:27 GMT): javrevasandeep (Mon, 12 Mar 2018 05:19:51 GMT): javrevasandeep (Mon, 12 Mar 2018 05:57:07 GMT): javrevasandeep (Mon, 12 Mar 2018 05:57:23 GMT): javrevasandeep (Mon, 12 Mar 2018 05:57:36 GMT): richardsun (Mon, 12 Mar 2018 06:19:15 GMT): ranjithkumarmv (Mon, 12 Mar 2018 07:54:23 GMT): ranjithkumarmv (Mon, 12 Mar 2018 07:54:23 GMT): ranjithkumarmv (Mon, 12 Mar 2018 07:54:27 GMT): abhijayv (Mon, 12 Mar 2018 08:05:52 GMT): suva (Mon, 12 Mar 2018 08:25:01 GMT): suva (Mon, 12 Mar 2018 08:25:22 GMT): suva (Mon, 12 Mar 2018 08:25:34 GMT): suva (Mon, 12 Mar 2018 08:25:45 GMT): xy250400 (Mon, 12 Mar 2018 08:26:43 GMT): xy250400 (Mon, 12 Mar 2018 08:28:33 GMT): xy250400 (Mon, 12 Mar 2018 08:29:15 GMT): xy250400 (Mon, 12 Mar 2018 08:47:03 GMT): rthatcher (Mon, 12 Mar 2018 09:27:06 GMT): suva (Mon, 12 Mar 2018 09:43:38 GMT): ranjithkumarmv (Mon, 12 Mar 2018 09:43:51 GMT): ranjithkumarmv (Mon, 12 Mar 2018 09:43:51 GMT): ranjithkumarmv (Mon, 12 Mar 2018 09:43:51 GMT): ranjithkumarmv (Mon, 12 Mar 2018 09:43:51 GMT): ranjithkumarmv (Mon, 12 Mar 2018 09:43:51 GMT): rthatcher (Mon, 12 Mar 2018 09:50:49 GMT): rthatcher (Mon, 12 Mar 2018 10:03:21 GMT): joaofguerreiro (Mon, 12 Mar 2018 10:23:17 GMT): joaofguerreiro (Mon, 12 Mar 2018 10:27:11 GMT): rthatcher (Mon, 12 Mar 2018 10:47:38 GMT): awash (Mon, 12 Mar 2018 10:49:03 GMT): rthatcher (Mon, 12 Mar 2018 10:57:48 GMT): joaofguerreiro (Mon, 12 Mar 2018 11:05:27 GMT): rthatcher (Mon, 12 Mar 2018 11:19:43 GMT): awash (Mon, 12 Mar 2018 11:25:14 GMT): suva (Mon, 12 Mar 2018 11:51:14 GMT): suva (Mon, 12 Mar 2018 11:51:36 GMT): suva (Mon, 12 Mar 2018 11:52:05 GMT): suva (Mon, 12 Mar 2018 11:52:07 GMT): suva (Mon, 12 Mar 2018 11:52:45 GMT): divudivyansh (Mon, 12 Mar 2018 11:53:06 GMT): joaofguerreiro (Mon, 12 Mar 2018 12:01:25 GMT): roychowdhuryrohit-dev (Mon, 12 Mar 2018 12:03:00 GMT): roychowdhuryrohit-dev (Mon, 12 Mar 2018 12:03:13 GMT): roychowdhuryrohit-dev (Mon, 12 Mar 2018 12:03:13 GMT): MasthanbeeShaik_123 (Mon, 12 Mar 2018 12:03:55 GMT): rthatcher (Mon, 12 Mar 2018 12:04:28 GMT): awash (Mon, 12 Mar 2018 12:10:21 GMT): varunagarwal (Mon, 12 Mar 2018 12:11:08 GMT): rthatcher (Mon, 12 Mar 2018 12:14:20 GMT): varunagarwal (Mon, 12 Mar 2018 12:20:11 GMT): rthatcher (Mon, 12 Mar 2018 12:20:28 GMT): rthatcher (Mon, 12 Mar 2018 12:23:36 GMT): varunagarwal (Mon, 12 Mar 2018 12:26:54 GMT): divudivyansh (Mon, 12 Mar 2018 12:29:07 GMT): rthatcher (Mon, 12 Mar 2018 12:33:23 GMT): varunagarwal (Mon, 12 Mar 2018 12:34:22 GMT): varunagarwal (Mon, 12 Mar 2018 12:37:38 GMT): rthatcher (Mon, 12 Mar 2018 12:37:40 GMT): rthatcher (Mon, 12 Mar 2018 12:37:40 GMT): varunagarwal (Mon, 12 Mar 2018 12:40:00 GMT): varunagarwal (Mon, 12 Mar 2018 12:40:14 GMT): dtp (Mon, 12 Mar 2018 13:19:26 GMT): dtp (Mon, 12 Mar 2018 13:19:26 GMT): varunagarwal (Mon, 12 Mar 2018 13:20:06 GMT): varunagarwal (Mon, 12 Mar 2018 13:20:12 GMT): varunagarwal (Mon, 12 Mar 2018 13:20:17 GMT): dtp (Mon, 12 Mar 2018 13:21:17 GMT): sstone1 (Mon, 12 Mar 2018 13:32:42 GMT): sstone1 (Mon, 12 Mar 2018 13:33:12 GMT): phanikumar (Mon, 12 Mar 2018 13:47:44 GMT): awash (Mon, 12 Mar 2018 13:48:41 GMT): dtp (Mon, 12 Mar 2018 13:56:41 GMT): andreosti (Mon, 12 Mar 2018 14:00:51 GMT): sstone1 (Mon, 12 Mar 2018 14:05:45 GMT): sstone1 (Mon, 12 Mar 2018 14:05:47 GMT): sstone1 (Mon, 12 Mar 2018 14:05:55 GMT): sstone1 (Mon, 12 Mar 2018 14:06:03 GMT): sstone1 (Mon, 12 Mar 2018 14:06:08 GMT): dtp (Mon, 12 Mar 2018 14:12:48 GMT): joaofguerreiro (Mon, 12 Mar 2018 14:24:57 GMT): rthatcher (Mon, 12 Mar 2018 14:26:46 GMT): rthatcher (Mon, 12 Mar 2018 14:27:16 GMT): joaofguerreiro (Mon, 12 Mar 2018 14:29:00 GMT): rthatcher (Mon, 12 Mar 2018 14:36:50 GMT): M4H3NDR4N (Mon, 12 Mar 2018 14:45:19 GMT): joaofguerreiro (Mon, 12 Mar 2018 14:47:53 GMT): croese (Mon, 12 Mar 2018 15:06:18 GMT): phanikumar (Mon, 12 Mar 2018 15:19:58 GMT): phanikumar (Mon, 12 Mar 2018 15:20:38 GMT): EfratLevy (Mon, 12 Mar 2018 15:23:53 GMT): EfratLevy (Mon, 12 Mar 2018 15:24:24 GMT): EfratLevy (Mon, 12 Mar 2018 15:24:44 GMT): rthatcher (Mon, 12 Mar 2018 15:30:59 GMT): rthatcher (Mon, 12 Mar 2018 15:35:26 GMT): phanikumar (Mon, 12 Mar 2018 15:36:59 GMT): joaofguerreiro (Mon, 12 Mar 2018 16:20:03 GMT): joaofguerreiro (Mon, 12 Mar 2018 16:20:38 GMT): sstone1 (Mon, 12 Mar 2018 16:26:25 GMT): sstone1 (Mon, 12 Mar 2018 16:26:36 GMT): joaofguerreiro (Mon, 12 Mar 2018 16:28:29 GMT): sstone1 (Mon, 12 Mar 2018 16:28:56 GMT): joaofguerreiro (Mon, 12 Mar 2018 16:30:23 GMT): kletkeman (Mon, 12 Mar 2018 16:57:46 GMT): rthatcher (Mon, 12 Mar 2018 17:19:45 GMT): ppcm (Mon, 12 Mar 2018 17:44:29 GMT): rthatcher (Mon, 12 Mar 2018 17:48:01 GMT): ppcm (Mon, 12 Mar 2018 17:52:35 GMT): y2255236 (Mon, 12 Mar 2018 18:17:02 GMT): AliCSLearner (Mon, 12 Mar 2018 18:47:00 GMT): phanikumar (Mon, 12 Mar 2018 18:48:25 GMT): AliCSLearner (Mon, 12 Mar 2018 19:01:25 GMT): AliCSLearner (Mon, 12 Mar 2018 19:01:37 GMT): phanikumar (Mon, 12 Mar 2018 19:01:58 GMT): AliCSLearner (Mon, 12 Mar 2018 19:03:23 GMT): phanikumar (Mon, 12 Mar 2018 19:07:41 GMT): phanikumar (Mon, 12 Mar 2018 19:12:44 GMT): AliCSLearner (Mon, 12 Mar 2018 19:23:14 GMT): phanikumar (Mon, 12 Mar 2018 19:31:51 GMT): mc (Mon, 12 Mar 2018 19:41:54 GMT): mc (Mon, 12 Mar 2018 19:42:30 GMT): Rickos95 (Mon, 12 Mar 2018 20:50:05 GMT): Saschaka (Mon, 12 Mar 2018 21:12:34 GMT): mc (Mon, 12 Mar 2018 21:13:18 GMT): doowb (Mon, 12 Mar 2018 21:16:04 GMT): jcap (Mon, 12 Mar 2018 21:25:26 GMT): jcap (Mon, 12 Mar 2018 21:25:42 GMT): jcap (Mon, 12 Mar 2018 21:25:47 GMT): jcap (Mon, 12 Mar 2018 21:25:54 GMT): jcap (Mon, 12 Mar 2018 21:25:54 GMT): jcap (Mon, 12 Mar 2018 21:26:18 GMT): mc (Mon, 12 Mar 2018 21:28:03 GMT): mc (Mon, 12 Mar 2018 21:28:25 GMT): mohdhafeezaj (Mon, 12 Mar 2018 22:04:44 GMT): mohdhafeezaj (Mon, 12 Mar 2018 22:07:20 GMT): mohdhafeezaj (Mon, 12 Mar 2018 22:08:04 GMT): GopalPanda (Tue, 13 Mar 2018 01:33:25 GMT): davidoevans (Tue, 13 Mar 2018 01:57:15 GMT): nitishbhardwaj19 (Tue, 13 Mar 2018 02:08:17 GMT): nitishbhardwaj19 (Tue, 13 Mar 2018 02:12:14 GMT): nitishbhardwaj19 (Tue, 13 Mar 2018 02:12:14 GMT): mc (Tue, 13 Mar 2018 02:56:48 GMT): kletkeman (Tue, 13 Mar 2018 03:40:23 GMT): mc (Tue, 13 Mar 2018 03:46:55 GMT): mc (Tue, 13 Mar 2018 03:47:30 GMT): mc (Tue, 13 Mar 2018 03:47:36 GMT): cuevrob (Tue, 13 Mar 2018 04:16:28 GMT): cuevrob (Tue, 13 Mar 2018 04:16:28 GMT): Mow (Tue, 13 Mar 2018 05:07:08 GMT): khit9 (Tue, 13 Mar 2018 05:55:12 GMT): Vincent (Tue, 13 Mar 2018 06:19:52 GMT): Vincent (Tue, 13 Mar 2018 06:20:10 GMT): Vincent (Tue, 13 Mar 2018 06:20:46 GMT): Vincent (Tue, 13 Mar 2018 06:28:15 GMT): Vincent (Tue, 13 Mar 2018 06:34:01 GMT): Vincent (Tue, 13 Mar 2018 06:47:48 GMT): Vincent (Tue, 13 Mar 2018 06:59:57 GMT): Vincent (Tue, 13 Mar 2018 07:00:16 GMT): ranjithkumarmv (Tue, 13 Mar 2018 07:19:04 GMT): biksen (Tue, 13 Mar 2018 07:37:05 GMT): Jaline (Tue, 13 Mar 2018 08:18:19 GMT): Jaline (Tue, 13 Mar 2018 08:19:06 GMT): papegaaij (Tue, 13 Mar 2018 08:19:55 GMT): ranjithkumarmv (Tue, 13 Mar 2018 08:21:59 GMT): Jaline (Tue, 13 Mar 2018 08:25:06 GMT): ranjithkumarmv (Tue, 13 Mar 2018 08:26:52 GMT): Jaline (Tue, 13 Mar 2018 08:29:34 GMT): Jaline (Tue, 13 Mar 2018 08:30:17 GMT): ranjithkumarmv (Tue, 13 Mar 2018 09:21:31 GMT): piotrek94 (Tue, 13 Mar 2018 09:22:16 GMT): rthatcher (Tue, 13 Mar 2018 09:25:36 GMT): Jaline (Tue, 13 Mar 2018 09:25:53 GMT): rthatcher (Tue, 13 Mar 2018 09:29:53 GMT): ranjithkumarmv (Tue, 13 Mar 2018 09:32:41 GMT): rthatcher (Tue, 13 Mar 2018 09:33:06 GMT): suva (Tue, 13 Mar 2018 09:50:20 GMT): suva (Tue, 13 Mar 2018 09:50:28 GMT): rthatcher (Tue, 13 Mar 2018 09:50:48 GMT): suva (Tue, 13 Mar 2018 09:50:49 GMT): suva (Tue, 13 Mar 2018 09:51:33 GMT): smithsj (Tue, 13 Mar 2018 09:51:48 GMT): suva (Tue, 13 Mar 2018 09:52:10 GMT): suva (Tue, 13 Mar 2018 09:52:30 GMT): suva (Tue, 13 Mar 2018 09:52:38 GMT): smithsj (Tue, 13 Mar 2018 09:53:00 GMT): suva (Tue, 13 Mar 2018 09:53:09 GMT): suva (Tue, 13 Mar 2018 09:53:17 GMT): smithsj (Tue, 13 Mar 2018 09:53:29 GMT): suva (Tue, 13 Mar 2018 09:53:34 GMT): suva (Tue, 13 Mar 2018 09:53:39 GMT): suva (Tue, 13 Mar 2018 09:53:47 GMT): smithsj (Tue, 13 Mar 2018 09:54:01 GMT): suva (Tue, 13 Mar 2018 09:54:10 GMT): suva (Tue, 13 Mar 2018 09:55:03 GMT): smithsj (Tue, 13 Mar 2018 09:55:19 GMT): suva (Tue, 13 Mar 2018 09:55:26 GMT): suva (Tue, 13 Mar 2018 09:55:41 GMT): smithsj (Tue, 13 Mar 2018 09:55:57 GMT): suva (Tue, 13 Mar 2018 09:56:00 GMT): smithsj (Tue, 13 Mar 2018 09:56:05 GMT): joaofguerreiro (Tue, 13 Mar 2018 09:56:53 GMT): smithsj (Tue, 13 Mar 2018 09:56:54 GMT): suva (Tue, 13 Mar 2018 09:57:06 GMT): rthatcher (Tue, 13 Mar 2018 09:57:09 GMT): suva (Tue, 13 Mar 2018 09:59:41 GMT): suva (Tue, 13 Mar 2018 09:59:49 GMT): suva (Tue, 13 Mar 2018 10:00:08 GMT): smithsj (Tue, 13 Mar 2018 10:03:41 GMT): suva (Tue, 13 Mar 2018 10:04:31 GMT): suva (Tue, 13 Mar 2018 10:04:53 GMT): suva (Tue, 13 Mar 2018 10:07:03 GMT): smithsj (Tue, 13 Mar 2018 10:07:28 GMT): suva (Tue, 13 Mar 2018 10:07:38 GMT): smithsj (Tue, 13 Mar 2018 10:07:42 GMT): suva (Tue, 13 Mar 2018 10:08:09 GMT): suva (Tue, 13 Mar 2018 10:08:21 GMT): suva (Tue, 13 Mar 2018 10:08:30 GMT): smithsj (Tue, 13 Mar 2018 10:09:03 GMT): smithsj (Tue, 13 Mar 2018 10:10:02 GMT): suva (Tue, 13 Mar 2018 10:10:16 GMT): suva (Tue, 13 Mar 2018 10:10:33 GMT): suva (Tue, 13 Mar 2018 10:10:42 GMT): smithsj (Tue, 13 Mar 2018 10:11:36 GMT): smithsj (Tue, 13 Mar 2018 10:12:15 GMT): rthatcher (Tue, 13 Mar 2018 10:14:27 GMT): biksen (Tue, 13 Mar 2018 10:16:08 GMT): suva (Tue, 13 Mar 2018 10:19:20 GMT): suva (Tue, 13 Mar 2018 10:20:56 GMT): suva (Tue, 13 Mar 2018 10:20:57 GMT): rthatcher (Tue, 13 Mar 2018 10:21:22 GMT): piotrek94 (Tue, 13 Mar 2018 10:25:49 GMT): rthatcher (Tue, 13 Mar 2018 10:27:42 GMT): joaofguerreiro (Tue, 13 Mar 2018 10:27:56 GMT): rthatcher (Tue, 13 Mar 2018 10:32:16 GMT): rthatcher (Tue, 13 Mar 2018 10:33:41 GMT): piotrek94 (Tue, 13 Mar 2018 10:35:38 GMT): joaofguerreiro (Tue, 13 Mar 2018 10:41:00 GMT): joaofguerreiro (Tue, 13 Mar 2018 10:41:00 GMT): rthatcher (Tue, 13 Mar 2018 10:42:31 GMT): rthatcher (Tue, 13 Mar 2018 10:45:32 GMT): Vincent (Tue, 13 Mar 2018 10:47:49 GMT): Vincent (Tue, 13 Mar 2018 10:48:14 GMT): ReddyJendut (Tue, 13 Mar 2018 10:50:00 GMT): rthatcher (Tue, 13 Mar 2018 10:56:04 GMT): ReddyJendut (Tue, 13 Mar 2018 10:57:00 GMT): Vincent (Tue, 13 Mar 2018 11:01:30 GMT): rthatcher (Tue, 13 Mar 2018 11:02:49 GMT): Vincent (Tue, 13 Mar 2018 11:03:37 GMT): czar0 (Tue, 13 Mar 2018 11:05:56 GMT): Vincent (Tue, 13 Mar 2018 11:20:26 GMT): Vincent (Tue, 13 Mar 2018 11:21:28 GMT): Vincent (Tue, 13 Mar 2018 11:21:49 GMT): rthatcher (Tue, 13 Mar 2018 11:26:01 GMT): joaofguerreiro (Tue, 13 Mar 2018 11:38:20 GMT): Vincent (Tue, 13 Mar 2018 11:39:56 GMT): Vincent (Tue, 13 Mar 2018 11:40:02 GMT): smithsj (Tue, 13 Mar 2018 11:56:01 GMT): smithsj (Tue, 13 Mar 2018 11:56:01 GMT): joaofguerreiro (Tue, 13 Mar 2018 12:03:46 GMT): sstone1 (Tue, 13 Mar 2018 12:10:53 GMT): ulhaqanwaar (Tue, 13 Mar 2018 12:16:51 GMT): ulhaqanwaar (Tue, 13 Mar 2018 12:18:47 GMT): ulhaqanwaar (Tue, 13 Mar 2018 12:19:45 GMT): ulhaqanwaar (Tue, 13 Mar 2018 12:19:50 GMT): mc (Tue, 13 Mar 2018 12:25:36 GMT): ulhaqanwaar (Tue, 13 Mar 2018 12:26:04 GMT): mc (Tue, 13 Mar 2018 12:26:37 GMT): ulhaqanwaar (Tue, 13 Mar 2018 12:27:19 GMT): mc (Tue, 13 Mar 2018 12:32:24 GMT): mc (Tue, 13 Mar 2018 12:32:50 GMT): czar0 (Tue, 13 Mar 2018 12:37:56 GMT): rthatcher (Tue, 13 Mar 2018 12:39:23 GMT): mc (Tue, 13 Mar 2018 12:39:43 GMT): mc (Tue, 13 Mar 2018 12:40:06 GMT): rthatcher (Tue, 13 Mar 2018 12:42:00 GMT): rthatcher (Tue, 13 Mar 2018 12:43:47 GMT): mc (Tue, 13 Mar 2018 12:56:52 GMT): leofantast (Tue, 13 Mar 2018 12:57:58 GMT): jspark84 (Tue, 13 Mar 2018 13:11:20 GMT): antitoine (Tue, 13 Mar 2018 13:24:07 GMT): AkshayJindal (Tue, 13 Mar 2018 13:41:09 GMT): AkshayJindal (Tue, 13 Mar 2018 13:41:09 GMT): AkshayJindal (Tue, 13 Mar 2018 13:41:09 GMT): AkshayJindal (Tue, 13 Mar 2018 13:41:09 GMT): ppcm (Tue, 13 Mar 2018 13:58:36 GMT): ppcm (Tue, 13 Mar 2018 13:59:41 GMT): ppcm (Tue, 13 Mar 2018 13:59:41 GMT): ppcm (Tue, 13 Mar 2018 13:59:41 GMT): rthatcher (Tue, 13 Mar 2018 14:05:22 GMT): thiennguyen2824 (Tue, 13 Mar 2018 14:09:00 GMT): thiennguyen2824 (Tue, 13 Mar 2018 14:16:14 GMT): thiennguyen2824 (Tue, 13 Mar 2018 14:16:14 GMT): iDix (Tue, 13 Mar 2018 14:22:57 GMT): thiennguyen2824 (Tue, 13 Mar 2018 14:23:36 GMT): czar0 (Tue, 13 Mar 2018 14:26:57 GMT): AkshayJindal (Tue, 13 Mar 2018 14:32:02 GMT): AkshayJindal (Tue, 13 Mar 2018 14:32:02 GMT): AkshayJindal (Tue, 13 Mar 2018 14:32:02 GMT): Vanitha (Tue, 13 Mar 2018 14:33:41 GMT): ulhaqanwaar (Tue, 13 Mar 2018 14:34:07 GMT): Vanitha (Tue, 13 Mar 2018 14:38:29 GMT): Vanitha (Tue, 13 Mar 2018 14:39:52 GMT): Vanitha (Tue, 13 Mar 2018 14:40:32 GMT): ranjithkumarmv (Tue, 13 Mar 2018 14:47:11 GMT): rthatcher (Tue, 13 Mar 2018 14:55:54 GMT): joaofguerreiro (Tue, 13 Mar 2018 15:01:00 GMT): Vanitha (Tue, 13 Mar 2018 15:06:55 GMT): ranjithkumarmv (Tue, 13 Mar 2018 15:09:55 GMT): ranjithkumarmv (Tue, 13 Mar 2018 15:09:55 GMT): rthatcher (Tue, 13 Mar 2018 15:10:06 GMT): joaofguerreiro (Tue, 13 Mar 2018 15:17:05 GMT): kletkeman (Tue, 13 Mar 2018 15:49:13 GMT): hamptonsmith (Tue, 13 Mar 2018 16:02:25 GMT): eramitg (Tue, 13 Mar 2018 16:15:49 GMT): rolland (Tue, 13 Mar 2018 16:23:54 GMT): ppcm (Tue, 13 Mar 2018 16:54:15 GMT): ppcm (Tue, 13 Mar 2018 16:54:15 GMT): ppcm (Tue, 13 Mar 2018 16:54:15 GMT): ppcm (Tue, 13 Mar 2018 16:54:15 GMT): ppcm (Tue, 13 Mar 2018 16:54:15 GMT): ppcm (Tue, 13 Mar 2018 17:37:30 GMT): SamuelDare (Tue, 13 Mar 2018 17:44:44 GMT): joaofguerreiro (Tue, 13 Mar 2018 17:53:40 GMT): davidkel (Tue, 13 Mar 2018 18:04:34 GMT): mostafa.elsayyad (Tue, 13 Mar 2018 18:07:29 GMT): mostafa.elsayyad (Tue, 13 Mar 2018 18:07:42 GMT): mostafa.elsayyad (Tue, 13 Mar 2018 18:07:45 GMT): davidkel (Tue, 13 Mar 2018 18:15:35 GMT): SamuelDare (Tue, 13 Mar 2018 18:16:55 GMT): hamptonsmith (Tue, 13 Mar 2018 18:25:54 GMT): smithsj (Tue, 13 Mar 2018 19:23:09 GMT): smithsj (Tue, 13 Mar 2018 19:23:09 GMT): hamptonsmith (Tue, 13 Mar 2018 19:27:13 GMT): smithsj (Tue, 13 Mar 2018 19:27:57 GMT): hamptonsmith (Tue, 13 Mar 2018 19:28:10 GMT): smithsj (Tue, 13 Mar 2018 19:28:22 GMT): mohdhafeezaj (Tue, 13 Mar 2018 19:29:21 GMT): mohdhafeezaj (Tue, 13 Mar 2018 19:29:21 GMT): mohdhafeezaj (Tue, 13 Mar 2018 19:29:21 GMT): mohdhafeezaj (Tue, 13 Mar 2018 19:29:21 GMT): mohdhafeezaj (Tue, 13 Mar 2018 19:29:21 GMT): smithsj (Tue, 13 Mar 2018 19:29:49 GMT): mohdhafeezaj (Tue, 13 Mar 2018 19:30:46 GMT): smithsj (Tue, 13 Mar 2018 19:33:15 GMT): phanikumar (Tue, 13 Mar 2018 19:35:27 GMT): mohdhafeezaj (Tue, 13 Mar 2018 19:36:22 GMT): smithsj (Tue, 13 Mar 2018 19:40:36 GMT): smithsj (Tue, 13 Mar 2018 19:40:36 GMT): phanikumar (Tue, 13 Mar 2018 19:51:29 GMT): CT123 (Tue, 13 Mar 2018 19:54:06 GMT): MasthanbeeShaik_123 (Tue, 13 Mar 2018 19:55:55 GMT): MasthanbeeShaik_123 (Tue, 13 Mar 2018 19:55:55 GMT): CT123 (Tue, 13 Mar 2018 19:57:25 GMT): CT123 (Tue, 13 Mar 2018 19:57:25 GMT): CT123 (Tue, 13 Mar 2018 19:58:18 GMT): CT123 (Tue, 13 Mar 2018 19:59:00 GMT): MasthanbeeShaik_123 (Tue, 13 Mar 2018 20:02:49 GMT): CT123 (Tue, 13 Mar 2018 20:09:33 GMT): phanikumar (Tue, 13 Mar 2018 20:09:56 GMT): MasthanbeeShaik_123 (Tue, 13 Mar 2018 20:10:40 GMT): MasthanbeeShaik_123 (Tue, 13 Mar 2018 20:11:49 GMT): ranjithkumarmv (Tue, 13 Mar 2018 20:49:09 GMT): ranjithkumarmv (Tue, 13 Mar 2018 20:49:09 GMT): davidkel (Tue, 13 Mar 2018 20:50:33 GMT): y2255236 (Tue, 13 Mar 2018 20:53:25 GMT): cbf (Tue, 13 Mar 2018 21:25:57 GMT): cbf (Tue, 13 Mar 2018 21:27:12 GMT): cuevrob (Tue, 13 Mar 2018 21:29:13 GMT): cbf (Tue, 13 Mar 2018 21:29:22 GMT): atbe (Tue, 13 Mar 2018 21:30:19 GMT): atbe (Tue, 13 Mar 2018 21:35:44 GMT): atbe (Tue, 13 Mar 2018 21:39:47 GMT): ceseale (Tue, 13 Mar 2018 21:52:04 GMT): ceseale (Tue, 13 Mar 2018 21:54:05 GMT): mohdhafeezaj (Tue, 13 Mar 2018 21:55:26 GMT): ppcm (Tue, 13 Mar 2018 22:36:40 GMT): mohdhafeezaj (Tue, 13 Mar 2018 22:39:16 GMT): mohdhafeezaj (Tue, 13 Mar 2018 22:40:26 GMT): atbe (Tue, 13 Mar 2018 23:15:39 GMT): mohdhafeezaj (Tue, 13 Mar 2018 23:49:14 GMT): mohdhafeezaj (Tue, 13 Mar 2018 23:49:14 GMT): chandrakanthm (Tue, 13 Mar 2018 23:52:48 GMT): chandrakanthm (Tue, 13 Mar 2018 23:52:48 GMT): chandrakanthm (Tue, 13 Mar 2018 23:54:08 GMT): chandrakanthm (Tue, 13 Mar 2018 23:54:36 GMT): ctan (Wed, 14 Mar 2018 01:16:55 GMT): oseifrimpong (Wed, 14 Mar 2018 02:17:40 GMT): CT123 (Wed, 14 Mar 2018 02:22:58 GMT): kletkeman (Wed, 14 Mar 2018 02:44:18 GMT): nitishbhardwaj19 (Wed, 14 Mar 2018 03:05:46 GMT): nitishbhardwaj19 (Wed, 14 Mar 2018 03:05:46 GMT): divudivyansh (Wed, 14 Mar 2018 04:29:04 GMT): mohdhafeezaj (Wed, 14 Mar 2018 04:31:07 GMT): alexdevassy (Wed, 14 Mar 2018 04:49:05 GMT): ulhaqanwaar (Wed, 14 Mar 2018 06:18:04 GMT): VijayThakre (Wed, 14 Mar 2018 06:47:46 GMT): VijayThakre (Wed, 14 Mar 2018 06:47:57 GMT): VijayThakre (Wed, 14 Mar 2018 07:08:03 GMT): suva (Wed, 14 Mar 2018 08:32:02 GMT): suva (Wed, 14 Mar 2018 08:32:13 GMT): suva (Wed, 14 Mar 2018 08:32:32 GMT): suva (Wed, 14 Mar 2018 08:32:37 GMT): suva (Wed, 14 Mar 2018 08:32:57 GMT): junhwanchoi (Wed, 14 Mar 2018 08:36:10 GMT): nasserfci (Wed, 14 Mar 2018 08:51:30 GMT): nasserfci (Wed, 14 Mar 2018 08:51:30 GMT): Vincent (Wed, 14 Mar 2018 08:53:24 GMT): Vincent (Wed, 14 Mar 2018 08:54:29 GMT): Vincent (Wed, 14 Mar 2018 08:56:38 GMT): Vincent (Wed, 14 Mar 2018 08:59:54 GMT): ayyavoosuresh (Wed, 14 Mar 2018 09:04:09 GMT): yopep (Wed, 14 Mar 2018 09:07:18 GMT): VijayThakre (Wed, 14 Mar 2018 09:09:57 GMT): rthatcher (Wed, 14 Mar 2018 09:13:38 GMT): Vincent (Wed, 14 Mar 2018 09:15:54 GMT): rthatcher (Wed, 14 Mar 2018 09:16:31 GMT): VijayThakre (Wed, 14 Mar 2018 09:17:51 GMT): rthatcher (Wed, 14 Mar 2018 09:18:21 GMT): rthatcher (Wed, 14 Mar 2018 09:22:55 GMT): rthatcher (Wed, 14 Mar 2018 09:26:13 GMT): rthatcher (Wed, 14 Mar 2018 09:36:38 GMT): AkshayJindal (Wed, 14 Mar 2018 09:43:10 GMT): Vincent (Wed, 14 Mar 2018 09:43:50 GMT): Vincent (Wed, 14 Mar 2018 09:44:03 GMT): Vincent (Wed, 14 Mar 2018 09:44:22 GMT): rthatcher (Wed, 14 Mar 2018 09:47:08 GMT): Vincent (Wed, 14 Mar 2018 09:47:57 GMT): nasserfci (Wed, 14 Mar 2018 09:49:31 GMT): SumanYadav (Wed, 14 Mar 2018 09:53:09 GMT): rthatcher (Wed, 14 Mar 2018 09:57:25 GMT): nasserfci (Wed, 14 Mar 2018 10:02:21 GMT): rthatcher (Wed, 14 Mar 2018 10:14:23 GMT): nasserfci (Wed, 14 Mar 2018 10:24:03 GMT): Vincent (Wed, 14 Mar 2018 10:27:54 GMT): Vincent (Wed, 14 Mar 2018 10:28:09 GMT): Vincent (Wed, 14 Mar 2018 10:28:13 GMT): phanikumar (Wed, 14 Mar 2018 10:46:49 GMT): phanikumar (Wed, 14 Mar 2018 10:46:49 GMT): phanikumar (Wed, 14 Mar 2018 10:46:49 GMT): suva (Wed, 14 Mar 2018 10:49:40 GMT): chandrakanthm (Wed, 14 Mar 2018 10:59:14 GMT): chandrakanthm (Wed, 14 Mar 2018 10:59:14 GMT): Vincent (Wed, 14 Mar 2018 11:05:57 GMT): varunagarwal (Wed, 14 Mar 2018 11:25:10 GMT): VladimirBorozna (Wed, 14 Mar 2018 11:29:24 GMT): VladimirBorozna (Wed, 14 Mar 2018 11:29:47 GMT): VladimirBorozna (Wed, 14 Mar 2018 11:32:02 GMT): rthatcher (Wed, 14 Mar 2018 11:36:21 GMT): rthatcher (Wed, 14 Mar 2018 11:37:09 GMT): rthatcher (Wed, 14 Mar 2018 11:43:31 GMT): divudivyansh (Wed, 14 Mar 2018 11:43:39 GMT): Jaline (Wed, 14 Mar 2018 11:50:32 GMT): Jaline (Wed, 14 Mar 2018 11:54:18 GMT): nitishbhardwaj19 (Wed, 14 Mar 2018 11:57:51 GMT): rthatcher (Wed, 14 Mar 2018 11:58:35 GMT): nitishbhardwaj19 (Wed, 14 Mar 2018 11:58:36 GMT): nitishbhardwaj19 (Wed, 14 Mar 2018 12:00:08 GMT): divudivyansh (Wed, 14 Mar 2018 12:00:35 GMT): rthatcher (Wed, 14 Mar 2018 12:00:44 GMT): Jaline (Wed, 14 Mar 2018 12:04:38 GMT): divudivyansh (Wed, 14 Mar 2018 12:05:20 GMT): MasthanbeeShaik_123 (Wed, 14 Mar 2018 12:07:36 GMT): silliman (Wed, 14 Mar 2018 12:15:57 GMT): rthatcher (Wed, 14 Mar 2018 12:21:28 GMT): chandrakanthm (Wed, 14 Mar 2018 12:31:53 GMT): Vincent (Wed, 14 Mar 2018 12:33:55 GMT): MasthanbeeShaik_123 (Wed, 14 Mar 2018 12:52:13 GMT): MasthanbeeShaik_123 (Wed, 14 Mar 2018 12:53:23 GMT): Vincent (Wed, 14 Mar 2018 13:07:47 GMT): Vincent (Wed, 14 Mar 2018 13:08:04 GMT): vinodjadhav (Wed, 14 Mar 2018 13:08:42 GMT): rthatcher (Wed, 14 Mar 2018 13:12:41 GMT): rthatcher (Wed, 14 Mar 2018 13:12:41 GMT): MasthanbeeShaik_123 (Wed, 14 Mar 2018 13:21:17 GMT): MasthanbeeShaik_123 (Wed, 14 Mar 2018 13:21:17 GMT): MasthanbeeShaik_123 (Wed, 14 Mar 2018 13:21:17 GMT): MasthanbeeShaik_123 (Wed, 14 Mar 2018 13:21:28 GMT): MasthanbeeShaik_123 (Wed, 14 Mar 2018 13:21:38 GMT): ChinmayaMahunta (Wed, 14 Mar 2018 13:22:35 GMT): Vincent (Wed, 14 Mar 2018 13:22:51 GMT): vinodjadhav (Wed, 14 Mar 2018 13:23:54 GMT): ChinmayaMahunta (Wed, 14 Mar 2018 13:24:38 GMT): jonathanlopez500 (Wed, 14 Mar 2018 13:28:39 GMT): rthatcher (Wed, 14 Mar 2018 13:38:31 GMT): rthatcher (Wed, 14 Mar 2018 13:43:04 GMT): hamza113 (Wed, 14 Mar 2018 13:44:26 GMT): hamza113 (Wed, 14 Mar 2018 13:44:51 GMT): hamza113 (Wed, 14 Mar 2018 13:44:58 GMT): roychowdhuryrohit-dev (Wed, 14 Mar 2018 13:47:08 GMT): NewToFabric (Wed, 14 Mar 2018 13:47:26 GMT): vkblue (Wed, 14 Mar 2018 13:48:46 GMT): MasthanbeeShaik_123 (Wed, 14 Mar 2018 13:49:08 GMT): MasthanbeeShaik_123 (Wed, 14 Mar 2018 13:49:08 GMT): vkblue (Wed, 14 Mar 2018 13:50:06 GMT): roychowdhuryrohit-dev (Wed, 14 Mar 2018 13:50:39 GMT): cparan (Wed, 14 Mar 2018 13:55:13 GMT): rthatcher (Wed, 14 Mar 2018 13:57:58 GMT): rthatcher (Wed, 14 Mar 2018 14:02:40 GMT): hamza113 (Wed, 14 Mar 2018 14:03:48 GMT): hamza113 (Wed, 14 Mar 2018 14:06:42 GMT): hamza113 (Wed, 14 Mar 2018 14:07:29 GMT): hamza113 (Wed, 14 Mar 2018 14:07:38 GMT): patelan (Wed, 14 Mar 2018 14:36:32 GMT): rthatcher (Wed, 14 Mar 2018 14:37:11 GMT): patelan (Wed, 14 Mar 2018 14:37:31 GMT): BerryVerschueren (Wed, 14 Mar 2018 14:45:45 GMT): code-chimp (Wed, 14 Mar 2018 14:55:47 GMT): rthatcher (Wed, 14 Mar 2018 14:57:49 GMT): brian038 (Wed, 14 Mar 2018 15:27:45 GMT): ntok (Wed, 14 Mar 2018 15:48:06 GMT): andreosti (Wed, 14 Mar 2018 15:48:31 GMT): andreosti (Wed, 14 Mar 2018 15:48:31 GMT): Antiarchitect (Wed, 14 Mar 2018 15:57:18 GMT): Antiarchitect (Wed, 14 Mar 2018 15:57:26 GMT): Antiarchitect (Wed, 14 Mar 2018 15:57:56 GMT): Antiarchitect (Wed, 14 Mar 2018 15:57:58 GMT): rthatcher (Wed, 14 Mar 2018 16:45:23 GMT): andreosti (Wed, 14 Mar 2018 16:50:04 GMT): andreosti (Wed, 14 Mar 2018 16:51:10 GMT): swpnl7 (Wed, 14 Mar 2018 16:56:42 GMT): rthatcher (Wed, 14 Mar 2018 17:06:13 GMT): Antiarchitect (Wed, 14 Mar 2018 17:07:00 GMT): Antiarchitect (Wed, 14 Mar 2018 17:07:35 GMT): Antiarchitect (Wed, 14 Mar 2018 17:07:46 GMT): rthatcher (Wed, 14 Mar 2018 17:10:43 GMT): Antiarchitect (Wed, 14 Mar 2018 17:11:36 GMT): Antiarchitect (Wed, 14 Mar 2018 17:11:36 GMT): Antiarchitect (Wed, 14 Mar 2018 17:11:54 GMT): Antiarchitect (Wed, 14 Mar 2018 17:13:07 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 18:16:23 GMT): davidkel (Wed, 14 Mar 2018 18:23:49 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 18:27:07 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 18:27:18 GMT): davidkel (Wed, 14 Mar 2018 18:27:55 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 18:28:16 GMT): davidkel (Wed, 14 Mar 2018 18:30:48 GMT): Antiarchitect (Wed, 14 Mar 2018 18:33:43 GMT): Antiarchitect (Wed, 14 Mar 2018 18:34:39 GMT): Antiarchitect (Wed, 14 Mar 2018 18:34:53 GMT): Antiarchitect (Wed, 14 Mar 2018 18:35:17 GMT): Antiarchitect (Wed, 14 Mar 2018 18:36:01 GMT): Antiarchitect (Wed, 14 Mar 2018 18:36:07 GMT): Antiarchitect (Wed, 14 Mar 2018 18:36:25 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 18:36:55 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 18:45:02 GMT): davidkel (Wed, 14 Mar 2018 18:51:54 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 18:52:50 GMT): davidkel (Wed, 14 Mar 2018 18:53:20 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 18:54:38 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 18:54:48 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 18:54:52 GMT): davidkel (Wed, 14 Mar 2018 18:56:01 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 19:00:16 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 19:00:20 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 19:00:32 GMT): davidkel (Wed, 14 Mar 2018 19:02:11 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 19:03:49 GMT): mostafa.elsayyad (Wed, 14 Mar 2018 19:03:52 GMT): Antiarchitect (Wed, 14 Mar 2018 19:31:14 GMT): Antiarchitect (Wed, 14 Mar 2018 19:32:34 GMT): Antiarchitect (Wed, 14 Mar 2018 19:36:36 GMT): yuseven (Thu, 15 Mar 2018 00:39:04 GMT): Vincent (Thu, 15 Mar 2018 02:15:51 GMT): Vincent (Thu, 15 Mar 2018 02:18:30 GMT): oseifrimpong (Thu, 15 Mar 2018 03:35:10 GMT): vinodjadhav (Thu, 15 Mar 2018 03:53:35 GMT): vinodjadhav (Thu, 15 Mar 2018 03:54:38 GMT): Vincent (Thu, 15 Mar 2018 03:59:21 GMT): ulhaqanwaar (Thu, 15 Mar 2018 04:24:22 GMT): ulhaqanwaar (Thu, 15 Mar 2018 04:27:44 GMT): divudivyansh (Thu, 15 Mar 2018 05:24:55 GMT): divudivyansh (Thu, 15 Mar 2018 05:25:07 GMT): MoulaliMvg (Thu, 15 Mar 2018 06:02:38 GMT): VijayThakre (Thu, 15 Mar 2018 06:11:10 GMT): VijayThakre (Thu, 15 Mar 2018 06:11:12 GMT): VijayThakre (Thu, 15 Mar 2018 06:11:12 GMT): NAWAZUDDIN552 (Thu, 15 Mar 2018 06:14:46 GMT): sapnaupreti (Thu, 15 Mar 2018 06:48:22 GMT): sapnaupreti (Thu, 15 Mar 2018 06:51:18 GMT): sapnaupreti (Thu, 15 Mar 2018 06:51:18 GMT): sapnaupreti (Thu, 15 Mar 2018 06:51:18 GMT): VijayThakre (Thu, 15 Mar 2018 06:52:09 GMT): Vanitha (Thu, 15 Mar 2018 06:56:12 GMT): waleed (Thu, 15 Mar 2018 07:22:11 GMT): Antiarchitect (Thu, 15 Mar 2018 07:36:48 GMT): waleed (Thu, 15 Mar 2018 07:50:00 GMT): Vanitha (Thu, 15 Mar 2018 07:51:51 GMT): sagargarg (Thu, 15 Mar 2018 08:20:16 GMT): sagargarg (Thu, 15 Mar 2018 08:20:23 GMT): sagargarg (Thu, 15 Mar 2018 08:20:23 GMT): Legiit (Thu, 15 Mar 2018 08:22:30 GMT): khalifa (Thu, 15 Mar 2018 08:26:55 GMT): khalifa (Thu, 15 Mar 2018 08:27:44 GMT): makyl (Thu, 15 Mar 2018 08:29:18 GMT): makyl (Thu, 15 Mar 2018 08:29:18 GMT): makyl (Thu, 15 Mar 2018 08:29:18 GMT): makyl (Thu, 15 Mar 2018 08:29:18 GMT): makyl (Thu, 15 Mar 2018 08:29:18 GMT): makyl (Thu, 15 Mar 2018 08:29:18 GMT): waleed (Thu, 15 Mar 2018 08:35:02 GMT): waleed (Thu, 15 Mar 2018 08:53:07 GMT): rthatcher (Thu, 15 Mar 2018 09:23:47 GMT): rthatcher (Thu, 15 Mar 2018 09:23:47 GMT): waleed (Thu, 15 Mar 2018 09:27:54 GMT): waleed (Thu, 15 Mar 2018 09:27:54 GMT): mostafa.elsayyad (Thu, 15 Mar 2018 09:28:14 GMT): waleed (Thu, 15 Mar 2018 09:28:24 GMT): mostafa.elsayyad (Thu, 15 Mar 2018 09:30:45 GMT): rthatcher (Thu, 15 Mar 2018 09:31:29 GMT): LinusBorg (Thu, 15 Mar 2018 09:49:55 GMT): Pranoti (Thu, 15 Mar 2018 09:52:35 GMT): Pranoti (Thu, 15 Mar 2018 09:52:41 GMT): lkchao78 (Thu, 15 Mar 2018 09:53:01 GMT): arpitsoman (Thu, 15 Mar 2018 09:54:39 GMT): rthatcher (Thu, 15 Mar 2018 09:56:51 GMT): rthatcher (Thu, 15 Mar 2018 10:00:44 GMT): Pranoti (Thu, 15 Mar 2018 10:01:51 GMT): Pranoti (Thu, 15 Mar 2018 10:01:51 GMT): arpitsoman (Thu, 15 Mar 2018 10:02:49 GMT): rthatcher (Thu, 15 Mar 2018 10:05:24 GMT): BhushanBaviskar (Thu, 15 Mar 2018 10:11:13 GMT): st (Thu, 15 Mar 2018 10:11:40 GMT): VijayThakre (Thu, 15 Mar 2018 10:12:55 GMT): Pranoti (Thu, 15 Mar 2018 10:18:27 GMT): Pranoti (Thu, 15 Mar 2018 10:18:27 GMT): Pranoti (Thu, 15 Mar 2018 10:18:30 GMT): sapnaupreti (Thu, 15 Mar 2018 10:23:29 GMT): rthatcher (Thu, 15 Mar 2018 10:29:11 GMT): rthatcher (Thu, 15 Mar 2018 10:34:45 GMT): rthatcher (Thu, 15 Mar 2018 10:37:36 GMT): davidkel (Thu, 15 Mar 2018 10:37:51 GMT): sapnaupreti (Thu, 15 Mar 2018 10:50:56 GMT): rthatcher (Thu, 15 Mar 2018 10:58:36 GMT): arpitsoman (Thu, 15 Mar 2018 11:04:00 GMT): davidkel (Thu, 15 Mar 2018 11:04:30 GMT): davidkel (Thu, 15 Mar 2018 11:05:03 GMT): davidkel (Thu, 15 Mar 2018 11:06:16 GMT): arpitsoman (Thu, 15 Mar 2018 11:09:06 GMT): davidkel (Thu, 15 Mar 2018 11:10:44 GMT): davidkel (Thu, 15 Mar 2018 11:14:11 GMT): divudivyansh (Thu, 15 Mar 2018 11:15:24 GMT): divudivyansh (Thu, 15 Mar 2018 11:21:20 GMT): divudivyansh (Thu, 15 Mar 2018 11:22:06 GMT): phanikumar (Thu, 15 Mar 2018 11:26:18 GMT): davidkel (Thu, 15 Mar 2018 11:38:26 GMT): davidkel (Thu, 15 Mar 2018 11:38:26 GMT): mostafa.elsayyad (Thu, 15 Mar 2018 11:58:20 GMT): davidkel (Thu, 15 Mar 2018 11:59:40 GMT): mostafa.elsayyad (Thu, 15 Mar 2018 12:05:36 GMT): mostafa.elsayyad (Thu, 15 Mar 2018 12:14:24 GMT): Antiarchitect (Thu, 15 Mar 2018 12:16:03 GMT): mostafa.elsayyad (Thu, 15 Mar 2018 12:16:08 GMT): VijayThakre (Thu, 15 Mar 2018 12:16:35 GMT): rthatcher (Thu, 15 Mar 2018 12:19:13 GMT): rthatcher (Thu, 15 Mar 2018 12:21:33 GMT): VijayThakre (Thu, 15 Mar 2018 12:22:30 GMT): VijayThakre (Thu, 15 Mar 2018 12:24:11 GMT): rthatcher (Thu, 15 Mar 2018 12:24:44 GMT): Antiarchitect (Thu, 15 Mar 2018 12:27:29 GMT): satyajitsasmal1 (Thu, 15 Mar 2018 12:33:45 GMT): satyajitsasmal1 (Thu, 15 Mar 2018 12:34:50 GMT): divudivyansh (Thu, 15 Mar 2018 12:39:33 GMT): siyuyifang (Thu, 15 Mar 2018 13:10:24 GMT): terrypst (Thu, 15 Mar 2018 13:36:30 GMT): terrypst (Thu, 15 Mar 2018 13:40:25 GMT): terrypst (Thu, 15 Mar 2018 13:41:33 GMT): rthatcher (Thu, 15 Mar 2018 13:51:10 GMT): Pranoti (Thu, 15 Mar 2018 13:52:16 GMT): terrypst (Thu, 15 Mar 2018 13:52:34 GMT): chandrasekarangengadharan (Thu, 15 Mar 2018 13:58:54 GMT): terrypst (Thu, 15 Mar 2018 13:59:48 GMT): davidkel (Thu, 15 Mar 2018 14:07:15 GMT): terrypst (Thu, 15 Mar 2018 14:10:43 GMT): rthatcher (Thu, 15 Mar 2018 14:14:40 GMT): roychowdhuryrohit-dev (Thu, 15 Mar 2018 14:16:33 GMT): roychowdhuryrohit-dev (Thu, 15 Mar 2018 14:16:33 GMT): uber.twin (Thu, 15 Mar 2018 14:31:30 GMT): uber.twin (Thu, 15 Mar 2018 14:34:57 GMT): rthatcher (Thu, 15 Mar 2018 15:48:14 GMT): uber.twin (Thu, 15 Mar 2018 15:48:53 GMT): rthatcher (Thu, 15 Mar 2018 15:59:35 GMT): tkuhrt (Thu, 15 Mar 2018 16:07:10 GMT): tkuhrt (Thu, 15 Mar 2018 16:08:18 GMT): davidkel (Thu, 15 Mar 2018 16:17:48 GMT): rthatcher (Thu, 15 Mar 2018 16:18:37 GMT): terrypst (Thu, 15 Mar 2018 16:19:37 GMT): davidkel (Thu, 15 Mar 2018 16:20:16 GMT): theathibm (Thu, 15 Mar 2018 16:21:14 GMT): theathibm (Thu, 15 Mar 2018 16:21:21 GMT): theathibm (Thu, 15 Mar 2018 16:27:15 GMT): rthatcher (Thu, 15 Mar 2018 16:54:08 GMT): theathibm (Thu, 15 Mar 2018 16:55:04 GMT): tongli (Thu, 15 Mar 2018 16:56:57 GMT): terrypst (Thu, 15 Mar 2018 17:04:27 GMT): tongli (Thu, 15 Mar 2018 17:17:52 GMT): tongli (Thu, 15 Mar 2018 17:18:16 GMT): rthatcher (Thu, 15 Mar 2018 17:31:45 GMT): tongli (Thu, 15 Mar 2018 17:34:03 GMT): tongli (Thu, 15 Mar 2018 17:34:40 GMT): rbailey (Thu, 15 Mar 2018 17:35:43 GMT): rthatcher (Thu, 15 Mar 2018 17:38:10 GMT): rthatcher (Thu, 15 Mar 2018 17:45:03 GMT): rbailey (Thu, 15 Mar 2018 17:49:10 GMT): abrookins (Thu, 15 Mar 2018 18:09:14 GMT): mohdhafeezaj (Thu, 15 Mar 2018 19:44:49 GMT): hamza113 (Thu, 15 Mar 2018 20:04:10 GMT): chandrakanthm (Thu, 15 Mar 2018 22:33:12 GMT): atbe (Fri, 16 Mar 2018 01:19:54 GMT): bh4rtp (Fri, 16 Mar 2018 01:21:33 GMT): bh4rtp (Fri, 16 Mar 2018 01:21:33 GMT): Vincent (Fri, 16 Mar 2018 02:04:34 GMT): billdo168 (Fri, 16 Mar 2018 02:13:58 GMT): divudivyansh (Fri, 16 Mar 2018 04:54:45 GMT): aneb (Fri, 16 Mar 2018 04:57:50 GMT): aneb (Fri, 16 Mar 2018 04:57:50 GMT): varuna82 (Fri, 16 Mar 2018 05:31:05 GMT): aneb (Fri, 16 Mar 2018 05:39:21 GMT): varuna82 (Fri, 16 Mar 2018 05:41:24 GMT): ulhaqanwaar (Fri, 16 Mar 2018 05:51:55 GMT): Varun2887 (Fri, 16 Mar 2018 06:10:55 GMT): varun-raj (Fri, 16 Mar 2018 06:26:34 GMT): sagargarg (Fri, 16 Mar 2018 06:26:51 GMT): aneb (Fri, 16 Mar 2018 06:28:47 GMT): sagargarg (Fri, 16 Mar 2018 06:29:50 GMT): aneb (Fri, 16 Mar 2018 06:36:14 GMT): sagargarg (Fri, 16 Mar 2018 06:39:18 GMT): aneb (Fri, 16 Mar 2018 06:41:05 GMT): sagargarg (Fri, 16 Mar 2018 06:43:00 GMT): sagargarg (Fri, 16 Mar 2018 06:43:00 GMT): neelimonika (Fri, 16 Mar 2018 06:45:28 GMT): aneb (Fri, 16 Mar 2018 06:46:35 GMT): neelimonika (Fri, 16 Mar 2018 06:46:37 GMT): neelimonika (Fri, 16 Mar 2018 06:47:29 GMT): neelimonika (Fri, 16 Mar 2018 06:48:04 GMT): sapnaupreti (Fri, 16 Mar 2018 06:56:01 GMT): oseifrimpong (Fri, 16 Mar 2018 06:57:44 GMT): oseifrimpong (Fri, 16 Mar 2018 06:58:43 GMT): oseifrimpong (Fri, 16 Mar 2018 06:58:43 GMT): aneb (Fri, 16 Mar 2018 07:04:12 GMT): ra_w (Fri, 16 Mar 2018 07:04:16 GMT): ra_w (Fri, 16 Mar 2018 07:05:56 GMT): ra_w (Fri, 16 Mar 2018 07:06:30 GMT): ra_w (Fri, 16 Mar 2018 07:07:13 GMT): Vincent (Fri, 16 Mar 2018 07:09:21 GMT): ra_w (Fri, 16 Mar 2018 07:10:19 GMT): ra_w (Fri, 16 Mar 2018 07:12:15 GMT): chandrasekarangengadharan (Fri, 16 Mar 2018 07:32:21 GMT): oseifrimpong (Fri, 16 Mar 2018 07:36:49 GMT): ranjithkumarmv (Fri, 16 Mar 2018 07:46:51 GMT): davidkel (Fri, 16 Mar 2018 08:02:14 GMT): mostafa.elsayyad (Fri, 16 Mar 2018 08:02:42 GMT): davidkel (Fri, 16 Mar 2018 08:03:35 GMT): davidkel (Fri, 16 Mar 2018 08:16:22 GMT): davidkel (Fri, 16 Mar 2018 08:16:22 GMT): Vincent (Fri, 16 Mar 2018 08:21:20 GMT): Varun2887 (Fri, 16 Mar 2018 08:21:27 GMT): Varun2887 (Fri, 16 Mar 2018 08:21:27 GMT): Vincent (Fri, 16 Mar 2018 08:22:05 GMT): davidkel (Fri, 16 Mar 2018 08:52:49 GMT): Vincent (Fri, 16 Mar 2018 08:57:12 GMT): Vincent (Fri, 16 Mar 2018 08:57:21 GMT): Vincent (Fri, 16 Mar 2018 09:05:42 GMT): Vincent (Fri, 16 Mar 2018 09:06:54 GMT): rthatcher (Fri, 16 Mar 2018 09:14:03 GMT): divudivyansh (Fri, 16 Mar 2018 09:28:18 GMT): Vincent (Fri, 16 Mar 2018 09:31:10 GMT): rthatcher (Fri, 16 Mar 2018 09:38:29 GMT): yinzhiwu (Fri, 16 Mar 2018 09:41:42 GMT): rthatcher (Fri, 16 Mar 2018 09:51:05 GMT): divudivyansh (Fri, 16 Mar 2018 09:54:26 GMT): terrypst (Fri, 16 Mar 2018 09:55:02 GMT): terrypst (Fri, 16 Mar 2018 09:55:02 GMT): terrypst (Fri, 16 Mar 2018 09:55:02 GMT): terrypst (Fri, 16 Mar 2018 09:55:02 GMT): terrypst (Fri, 16 Mar 2018 09:55:02 GMT): terrypst (Fri, 16 Mar 2018 09:55:02 GMT): terrypst (Fri, 16 Mar 2018 09:55:02 GMT): rthatcher (Fri, 16 Mar 2018 09:55:33 GMT): rthatcher (Fri, 16 Mar 2018 09:58:49 GMT): terrypst (Fri, 16 Mar 2018 10:01:04 GMT): rthatcher (Fri, 16 Mar 2018 10:01:29 GMT): divudivyansh (Fri, 16 Mar 2018 10:03:03 GMT): Varun2887 (Fri, 16 Mar 2018 10:03:56 GMT): aneb (Fri, 16 Mar 2018 10:04:36 GMT): Vincent (Fri, 16 Mar 2018 10:06:03 GMT): terrypst (Fri, 16 Mar 2018 10:08:46 GMT): Vincent (Fri, 16 Mar 2018 10:08:53 GMT): rthatcher (Fri, 16 Mar 2018 10:09:18 GMT): Vincent (Fri, 16 Mar 2018 10:10:38 GMT): JeroenDePrest (Fri, 16 Mar 2018 10:10:45 GMT): Vincent (Fri, 16 Mar 2018 10:11:10 GMT): aneb (Fri, 16 Mar 2018 10:13:03 GMT): aneb (Fri, 16 Mar 2018 10:13:03 GMT): ranjithkumarmv (Fri, 16 Mar 2018 10:15:34 GMT): ranjithkumarmv (Fri, 16 Mar 2018 10:15:34 GMT): rthatcher (Fri, 16 Mar 2018 10:18:18 GMT): Vincent (Fri, 16 Mar 2018 10:47:29 GMT): rthatcher (Fri, 16 Mar 2018 10:54:06 GMT): ranjithkumarmv (Fri, 16 Mar 2018 11:07:13 GMT): rthatcher (Fri, 16 Mar 2018 11:27:36 GMT): rthatcher (Fri, 16 Mar 2018 11:29:04 GMT): disotd (Fri, 16 Mar 2018 11:48:30 GMT): ulhaqanwaar (Fri, 16 Mar 2018 12:05:34 GMT): ulhaqanwaar (Fri, 16 Mar 2018 12:05:46 GMT): ulhaqanwaar (Fri, 16 Mar 2018 12:21:11 GMT): uber.twin (Fri, 16 Mar 2018 12:34:30 GMT): andreosti (Fri, 16 Mar 2018 13:04:22 GMT): rthatcher (Fri, 16 Mar 2018 13:19:29 GMT): rthatcher (Fri, 16 Mar 2018 13:27:50 GMT): uber.twin (Fri, 16 Mar 2018 13:29:02 GMT): ranjithkumarmv (Fri, 16 Mar 2018 13:30:07 GMT): phanikumar (Fri, 16 Mar 2018 13:41:53 GMT): rthatcher (Fri, 16 Mar 2018 13:50:54 GMT): sillysachin (Fri, 16 Mar 2018 13:54:08 GMT): mohdhafeezaj (Fri, 16 Mar 2018 14:44:37 GMT): darioAnongba (Fri, 16 Mar 2018 15:04:15 GMT): rthatcher (Fri, 16 Mar 2018 15:05:09 GMT): Pan0ptic (Fri, 16 Mar 2018 16:38:03 GMT): mostafa.elsayyad (Fri, 16 Mar 2018 16:39:35 GMT): Snixells (Fri, 16 Mar 2018 16:50:23 GMT): mohdhafeezaj (Fri, 16 Mar 2018 17:57:01 GMT): atbe (Fri, 16 Mar 2018 19:38:00 GMT): atbe (Fri, 16 Mar 2018 19:42:20 GMT): atbe (Fri, 16 Mar 2018 19:42:23 GMT): davidkel (Fri, 16 Mar 2018 19:47:08 GMT): davidkel (Fri, 16 Mar 2018 19:47:08 GMT): davidkel (Fri, 16 Mar 2018 19:47:08 GMT): atbe (Fri, 16 Mar 2018 19:48:15 GMT): davidkel (Fri, 16 Mar 2018 19:48:49 GMT): atbe (Fri, 16 Mar 2018 19:48:50 GMT): atbe (Fri, 16 Mar 2018 19:50:53 GMT): davidkel (Fri, 16 Mar 2018 19:55:21 GMT): atbe (Fri, 16 Mar 2018 19:58:54 GMT): davidkel (Fri, 16 Mar 2018 20:00:08 GMT): DtmCarlson (Sat, 17 Mar 2018 01:40:40 GMT): VinodPai (Sat, 17 Mar 2018 02:21:07 GMT): bipesh (Sat, 17 Mar 2018 02:52:04 GMT): bipesh (Sat, 17 Mar 2018 02:52:07 GMT): oseifrimpong (Sat, 17 Mar 2018 04:13:07 GMT): oseifrimpong (Sat, 17 Mar 2018 04:13:17 GMT): mostafa.elsayyad (Sat, 17 Mar 2018 08:00:48 GMT): Luke_Chen (Sat, 17 Mar 2018 09:11:40 GMT): VinayChaudhary (Sat, 17 Mar 2018 14:52:02 GMT): Varun2887 (Sat, 17 Mar 2018 15:47:39 GMT): Varun2887 (Sat, 17 Mar 2018 15:50:25 GMT): kasmobir (Sat, 17 Mar 2018 17:44:32 GMT): kasmobir (Sat, 17 Mar 2018 17:45:15 GMT): MatrixMuto (Sat, 17 Mar 2018 17:47:29 GMT): NiharikaSingh (Sat, 17 Mar 2018 18:07:23 GMT): SandeepKanao (Sat, 17 Mar 2018 19:51:17 GMT): ArunDaniel (Sun, 18 Mar 2018 01:01:44 GMT): ArunDaniel (Sun, 18 Mar 2018 01:08:19 GMT): kletkeman (Sun, 18 Mar 2018 06:44:17 GMT): mostafa.elsayyad (Sun, 18 Mar 2018 11:16:08 GMT): mostafa.elsayyad (Sun, 18 Mar 2018 11:16:14 GMT): roychowdhuryrohit-dev (Sun, 18 Mar 2018 11:38:19 GMT): roychowdhuryrohit-dev (Sun, 18 Mar 2018 11:38:19 GMT): alexdevassy (Sun, 18 Mar 2018 13:03:35 GMT): sta216 (Sun, 18 Mar 2018 14:02:08 GMT): sta216 (Sun, 18 Mar 2018 14:02:54 GMT): SethiSaab (Sun, 18 Mar 2018 14:11:14 GMT): SethiSaab (Sun, 18 Mar 2018 14:11:14 GMT): SethiSaab (Sun, 18 Mar 2018 14:11:14 GMT): SethiSaab (Sun, 18 Mar 2018 14:11:14 GMT): sta216 (Sun, 18 Mar 2018 14:16:08 GMT): sta216 (Sun, 18 Mar 2018 14:28:02 GMT): sta216 (Sun, 18 Mar 2018 14:30:18 GMT): Saschaka (Sun, 18 Mar 2018 14:39:40 GMT): Saschaka (Sun, 18 Mar 2018 14:41:17 GMT): sta216 (Sun, 18 Mar 2018 14:52:56 GMT): sta216 (Sun, 18 Mar 2018 15:12:46 GMT): SethiSaab (Sun, 18 Mar 2018 15:31:26 GMT): muhammadaliqadri (Sun, 18 Mar 2018 15:42:25 GMT): muhammadaliqadri (Sun, 18 Mar 2018 15:42:56 GMT): kletkeman (Sun, 18 Mar 2018 16:15:25 GMT): JayPandya (Sun, 18 Mar 2018 16:22:46 GMT): JayPandya (Sun, 18 Mar 2018 16:22:46 GMT): JayPandya (Sun, 18 Mar 2018 16:22:46 GMT): silliman (Sun, 18 Mar 2018 16:25:22 GMT): muhammadaliqadri (Sun, 18 Mar 2018 17:31:38 GMT): roychowdhuryrohit-dev (Sun, 18 Mar 2018 17:40:32 GMT): roychowdhuryrohit-dev (Sun, 18 Mar 2018 17:40:32 GMT): roychowdhuryrohit-dev (Sun, 18 Mar 2018 17:40:32 GMT): michael.li (Sun, 18 Mar 2018 19:12:17 GMT): michael.li (Sun, 18 Mar 2018 19:13:23 GMT): arunmitteam (Sun, 18 Mar 2018 19:59:34 GMT): arunmitteam (Sun, 18 Mar 2018 20:03:59 GMT): Gerard9494 (Sun, 18 Mar 2018 20:19:59 GMT): IgnacioDiazVa (Mon, 19 Mar 2018 01:15:38 GMT): oseifrimpong (Mon, 19 Mar 2018 03:10:53 GMT): bamboo (Mon, 19 Mar 2018 04:18:08 GMT): ulhaqanwaar (Mon, 19 Mar 2018 04:32:24 GMT): makyl (Mon, 19 Mar 2018 05:30:11 GMT): Varun2887 (Mon, 19 Mar 2018 05:51:39 GMT): ulhaqanwaar (Mon, 19 Mar 2018 05:54:17 GMT): Varun2887 (Mon, 19 Mar 2018 05:55:00 GMT): Varun2887 (Mon, 19 Mar 2018 05:55:23 GMT): Varun2887 (Mon, 19 Mar 2018 05:55:35 GMT): ulhaqanwaar (Mon, 19 Mar 2018 05:56:35 GMT): Varun2887 (Mon, 19 Mar 2018 05:57:21 GMT): Varun2887 (Mon, 19 Mar 2018 05:57:22 GMT): ulhaqanwaar (Mon, 19 Mar 2018 06:01:47 GMT): Varun2887 (Mon, 19 Mar 2018 06:02:06 GMT): bh4rtp (Mon, 19 Mar 2018 06:27:16 GMT): bh4rtp (Mon, 19 Mar 2018 06:34:18 GMT): bh4rtp (Mon, 19 Mar 2018 06:34:18 GMT): bh4rtp (Mon, 19 Mar 2018 06:34:18 GMT): bh4rtp (Mon, 19 Mar 2018 06:34:18 GMT): bh4rtp (Mon, 19 Mar 2018 06:34:18 GMT): ashishapy (Mon, 19 Mar 2018 06:40:48 GMT): bh4rtp (Mon, 19 Mar 2018 07:09:24 GMT): Unni_1994 (Mon, 19 Mar 2018 07:15:42 GMT): makyl (Mon, 19 Mar 2018 08:11:21 GMT): zhaoyulong (Mon, 19 Mar 2018 08:28:27 GMT): Varun2887 (Mon, 19 Mar 2018 08:39:19 GMT): Varun2887 (Mon, 19 Mar 2018 08:39:23 GMT): yogeshquick (Mon, 19 Mar 2018 08:42:22 GMT): Varun2887 (Mon, 19 Mar 2018 08:59:50 GMT): Varun2887 (Mon, 19 Mar 2018 09:00:02 GMT): tylerw 3 (Mon, 19 Mar 2018 09:02:21 GMT): Legiit (Mon, 19 Mar 2018 09:03:26 GMT): Legiit (Mon, 19 Mar 2018 09:04:23 GMT): tylerw 3 (Mon, 19 Mar 2018 09:04:30 GMT): tylerw 3 (Mon, 19 Mar 2018 09:04:44 GMT): Legiit (Mon, 19 Mar 2018 09:06:04 GMT): Legiit (Mon, 19 Mar 2018 09:06:25 GMT): tylerw 3 (Mon, 19 Mar 2018 09:06:33 GMT): Legiit (Mon, 19 Mar 2018 09:07:15 GMT): Legiit (Mon, 19 Mar 2018 09:07:54 GMT): rthatcher (Mon, 19 Mar 2018 09:16:04 GMT): rthatcher (Mon, 19 Mar 2018 09:24:40 GMT): rthatcher (Mon, 19 Mar 2018 09:31:01 GMT): Varun2887 (Mon, 19 Mar 2018 09:31:36 GMT): Varun2887 (Mon, 19 Mar 2018 09:32:18 GMT): rthatcher (Mon, 19 Mar 2018 09:35:36 GMT): MuhammadSalah (Mon, 19 Mar 2018 09:46:04 GMT): JayPandya (Mon, 19 Mar 2018 09:50:52 GMT): Pranoti (Mon, 19 Mar 2018 09:57:39 GMT): Pranoti (Mon, 19 Mar 2018 09:57:39 GMT): Pranoti (Mon, 19 Mar 2018 09:57:39 GMT): Varun2887 (Mon, 19 Mar 2018 10:03:58 GMT): Varun2887 (Mon, 19 Mar 2018 10:13:30 GMT): Varun2887 (Mon, 19 Mar 2018 10:13:43 GMT): MartinKrmer (Mon, 19 Mar 2018 10:16:37 GMT): Varun2887 (Mon, 19 Mar 2018 10:30:18 GMT): Jaline (Mon, 19 Mar 2018 10:40:50 GMT): Jaline (Mon, 19 Mar 2018 10:42:46 GMT): d8bhatta (Mon, 19 Mar 2018 10:46:53 GMT): MuhammadSalah (Mon, 19 Mar 2018 10:49:15 GMT): MuhammadSalah (Mon, 19 Mar 2018 10:49:20 GMT): MuhammadSalah (Mon, 19 Mar 2018 10:49:47 GMT): SamuelDare (Mon, 19 Mar 2018 11:03:32 GMT): SamuelDare (Mon, 19 Mar 2018 11:04:23 GMT): SamuelDare (Mon, 19 Mar 2018 11:04:59 GMT): SamuelDare (Mon, 19 Mar 2018 11:08:43 GMT): SamuelDare (Mon, 19 Mar 2018 11:12:30 GMT): rthatcher (Mon, 19 Mar 2018 11:18:37 GMT): rthatcher (Mon, 19 Mar 2018 11:23:18 GMT): rthatcher (Mon, 19 Mar 2018 11:45:22 GMT): mahoney1 (Mon, 19 Mar 2018 11:45:59 GMT): SamuelDare (Mon, 19 Mar 2018 11:47:02 GMT): SamuelDare (Mon, 19 Mar 2018 11:47:17 GMT): mahoney1 (Mon, 19 Mar 2018 11:47:31 GMT): mahoney1 (Mon, 19 Mar 2018 11:47:37 GMT): SamuelDare (Mon, 19 Mar 2018 11:47:47 GMT): SamuelDare (Mon, 19 Mar 2018 11:48:03 GMT): SamuelDare (Mon, 19 Mar 2018 11:48:16 GMT): SamuelDare (Mon, 19 Mar 2018 11:48:43 GMT): mahoney1 (Mon, 19 Mar 2018 11:48:46 GMT): mahoney1 (Mon, 19 Mar 2018 11:48:51 GMT): SamuelDare (Mon, 19 Mar 2018 11:49:55 GMT): SamuelDare (Mon, 19 Mar 2018 11:50:00 GMT): SamuelDare (Mon, 19 Mar 2018 11:50:02 GMT): itskhushal (Mon, 19 Mar 2018 11:52:23 GMT): rthatcher (Mon, 19 Mar 2018 12:09:29 GMT): SamuelDare (Mon, 19 Mar 2018 12:36:53 GMT): yogeshquick (Mon, 19 Mar 2018 12:37:52 GMT): mahoney1 (Mon, 19 Mar 2018 12:37:53 GMT): Pranoti (Mon, 19 Mar 2018 12:54:58 GMT): Pranoti (Mon, 19 Mar 2018 12:54:58 GMT): jtonline (Mon, 19 Mar 2018 13:03:16 GMT): SamuelDare (Mon, 19 Mar 2018 13:15:33 GMT): benjamin.verhaegen (Mon, 19 Mar 2018 13:27:07 GMT): benjamin.verhaegen (Mon, 19 Mar 2018 13:27:39 GMT): omkarprabhu98 (Mon, 19 Mar 2018 13:50:49 GMT): omkarprabhu98 (Mon, 19 Mar 2018 13:51:22 GMT): rthatcher (Mon, 19 Mar 2018 13:56:24 GMT): SamuelDare (Mon, 19 Mar 2018 13:57:32 GMT): mahoney1 (Mon, 19 Mar 2018 14:37:37 GMT): mahoney1 (Mon, 19 Mar 2018 14:45:22 GMT): omkarprabhu98 (Mon, 19 Mar 2018 14:48:39 GMT): mahoney1 (Mon, 19 Mar 2018 14:55:05 GMT): benjamin.verhaegen (Mon, 19 Mar 2018 15:28:19 GMT): mahoney1 (Mon, 19 Mar 2018 15:32:20 GMT): mahoney1 (Mon, 19 Mar 2018 15:32:20 GMT): mahoney1 (Mon, 19 Mar 2018 15:32:29 GMT): omkarprabhu98 (Mon, 19 Mar 2018 15:37:08 GMT): karanganesan (Mon, 19 Mar 2018 15:39:56 GMT): omkarprabhu98 (Mon, 19 Mar 2018 15:40:42 GMT): Varun2887 (Mon, 19 Mar 2018 16:02:02 GMT): MartinKrmer (Mon, 19 Mar 2018 16:02:54 GMT): MartinKrmer (Mon, 19 Mar 2018 16:02:54 GMT): joaofguerreiro (Mon, 19 Mar 2018 16:03:06 GMT): Varun2887 (Mon, 19 Mar 2018 16:05:00 GMT): Varun2887 (Mon, 19 Mar 2018 16:05:13 GMT): Antiarchitect (Mon, 19 Mar 2018 16:05:48 GMT): Antiarchitect (Mon, 19 Mar 2018 16:07:09 GMT): Antiarchitect (Mon, 19 Mar 2018 16:07:09 GMT): Antiarchitect (Mon, 19 Mar 2018 16:07:23 GMT): Antiarchitect (Mon, 19 Mar 2018 16:07:38 GMT): Varun2887 (Mon, 19 Mar 2018 16:08:07 GMT): Varun2887 (Mon, 19 Mar 2018 16:08:16 GMT): Antiarchitect (Mon, 19 Mar 2018 16:08:28 GMT): omkarprabhu98 (Mon, 19 Mar 2018 16:11:02 GMT): mahoney1 (Mon, 19 Mar 2018 16:14:40 GMT): mahoney1 (Mon, 19 Mar 2018 16:14:40 GMT): mahoney1 (Mon, 19 Mar 2018 16:16:17 GMT): Varun2887 (Mon, 19 Mar 2018 16:16:52 GMT): omkarprabhu98 (Mon, 19 Mar 2018 16:17:16 GMT): Varun2887 (Mon, 19 Mar 2018 16:17:21 GMT): omkarprabhu98 (Mon, 19 Mar 2018 16:18:10 GMT): mahoney1 (Mon, 19 Mar 2018 16:18:42 GMT): mahoney1 (Mon, 19 Mar 2018 16:18:42 GMT): Varun2887 (Mon, 19 Mar 2018 16:19:28 GMT): Varun2887 (Mon, 19 Mar 2018 16:19:35 GMT): omkarprabhu98 (Mon, 19 Mar 2018 16:20:38 GMT): Varun2887 (Mon, 19 Mar 2018 16:21:31 GMT): Varun2887 (Mon, 19 Mar 2018 16:21:34 GMT): omkarprabhu98 (Mon, 19 Mar 2018 16:25:04 GMT): Varun2887 (Mon, 19 Mar 2018 16:29:25 GMT): Varun2887 (Mon, 19 Mar 2018 16:29:36 GMT): omkarprabhu98 (Mon, 19 Mar 2018 16:36:51 GMT): ChrisMcQueenDevelopment (Mon, 19 Mar 2018 16:58:38 GMT): ChrisMcQueenDevelopment (Mon, 19 Mar 2018 16:58:49 GMT): MokshJain (Mon, 19 Mar 2018 17:22:27 GMT): ArunDaniel (Mon, 19 Mar 2018 17:23:37 GMT): MokshJain (Mon, 19 Mar 2018 17:23:45 GMT): mahoney1 (Mon, 19 Mar 2018 17:34:34 GMT): mahoney1 (Mon, 19 Mar 2018 17:34:34 GMT): SamuelDare (Mon, 19 Mar 2018 17:36:26 GMT): SamuelDare (Mon, 19 Mar 2018 17:36:53 GMT): mahoney1 (Mon, 19 Mar 2018 17:37:11 GMT): mahoney1 (Mon, 19 Mar 2018 17:37:11 GMT): muhammadaliqadri (Mon, 19 Mar 2018 17:44:18 GMT): rthatcher (Mon, 19 Mar 2018 17:54:28 GMT): mahoney1 (Mon, 19 Mar 2018 17:58:07 GMT): SamuelDare (Mon, 19 Mar 2018 17:58:50 GMT): muhammadaliqadri (Mon, 19 Mar 2018 18:00:12 GMT): muhammadaliqadri (Mon, 19 Mar 2018 18:00:24 GMT): rthatcher (Mon, 19 Mar 2018 18:03:28 GMT): mahoney1 (Mon, 19 Mar 2018 18:03:43 GMT): muhammadaliqadri (Mon, 19 Mar 2018 18:05:29 GMT): muhammadaliqadri (Mon, 19 Mar 2018 18:06:11 GMT): rthatcher (Mon, 19 Mar 2018 18:09:52 GMT): rthatcher (Mon, 19 Mar 2018 18:09:52 GMT): muhammadaliqadri (Mon, 19 Mar 2018 18:10:54 GMT): NAWAZUDDIN552 (Mon, 19 Mar 2018 18:13:39 GMT): rthatcher (Mon, 19 Mar 2018 18:14:46 GMT): mahoney1 (Mon, 19 Mar 2018 18:14:57 GMT): SamuelDare (Mon, 19 Mar 2018 18:15:13 GMT): SamuelDare (Mon, 19 Mar 2018 18:15:51 GMT): SamuelDare (Mon, 19 Mar 2018 18:15:53 GMT): muhammadaliqadri (Mon, 19 Mar 2018 18:16:22 GMT): mahoney1 (Mon, 19 Mar 2018 18:18:07 GMT): SamuelDare (Mon, 19 Mar 2018 18:18:22 GMT): SamuelDare (Mon, 19 Mar 2018 18:18:28 GMT): mahoney1 (Mon, 19 Mar 2018 18:18:34 GMT): rthatcher (Mon, 19 Mar 2018 18:29:23 GMT): rthatcher (Mon, 19 Mar 2018 18:29:31 GMT): rthatcher (Mon, 19 Mar 2018 18:29:31 GMT): muhammadaliqadri (Mon, 19 Mar 2018 18:36:09 GMT): rthatcher (Mon, 19 Mar 2018 18:40:04 GMT): muhammadaliqadri (Mon, 19 Mar 2018 18:42:21 GMT): MokshJain (Mon, 19 Mar 2018 18:45:00 GMT): ChrisMcQueenDevelopment (Mon, 19 Mar 2018 18:58:53 GMT): ChrisMcQueenDevelopment (Mon, 19 Mar 2018 18:58:53 GMT): ChrisMcQueenDevelopment (Mon, 19 Mar 2018 18:58:53 GMT): ChrisMcQueenDevelopment (Mon, 19 Mar 2018 18:58:53 GMT): mahoney1 (Mon, 19 Mar 2018 19:11:02 GMT): mahoney1 (Mon, 19 Mar 2018 19:21:00 GMT): mahoney1 (Mon, 19 Mar 2018 19:21:00 GMT): mahoney1 (Mon, 19 Mar 2018 19:21:00 GMT): mahoney1 (Mon, 19 Mar 2018 19:21:00 GMT): mahoney1 (Mon, 19 Mar 2018 19:21:00 GMT): mahoney1 (Mon, 19 Mar 2018 19:21:00 GMT): pedromlcosta (Mon, 19 Mar 2018 19:46:55 GMT): pedromlcosta (Mon, 19 Mar 2018 19:47:08 GMT): MokshJain (Mon, 19 Mar 2018 19:49:22 GMT): cuevrob (Mon, 19 Mar 2018 21:02:54 GMT): AnyeFreer (Mon, 19 Mar 2018 21:15:16 GMT): AnyeFreer (Mon, 19 Mar 2018 21:18:02 GMT): AnyeFreer (Mon, 19 Mar 2018 21:18:34 GMT): AnyeFreer (Mon, 19 Mar 2018 21:19:16 GMT): AnyeFreer (Mon, 19 Mar 2018 21:21:01 GMT): PierreHenry (Mon, 19 Mar 2018 21:53:59 GMT): PierreHenry (Mon, 19 Mar 2018 21:55:12 GMT): ledgerblocks (Mon, 19 Mar 2018 22:34:14 GMT): AkshayJindal (Mon, 19 Mar 2018 22:45:08 GMT): AkshayJindal (Mon, 19 Mar 2018 22:45:08 GMT): AkshayJindal (Mon, 19 Mar 2018 22:45:08 GMT): michael.li (Mon, 19 Mar 2018 23:56:29 GMT): grice_32 (Tue, 20 Mar 2018 01:53:48 GMT): bh4rtp (Tue, 20 Mar 2018 02:18:54 GMT): bh4rtp (Tue, 20 Mar 2018 02:18:54 GMT): tylerw 3 (Tue, 20 Mar 2018 03:18:59 GMT): tylerw 3 (Tue, 20 Mar 2018 03:18:59 GMT): ck0316 (Tue, 20 Mar 2018 03:41:05 GMT): purushsimhan (Tue, 20 Mar 2018 06:32:25 GMT): purushsimhan (Tue, 20 Mar 2018 06:32:47 GMT): tylerw 3 (Tue, 20 Mar 2018 06:48:17 GMT): Varun2887 (Tue, 20 Mar 2018 06:54:23 GMT): davidkel (Tue, 20 Mar 2018 08:25:25 GMT): davidkel (Tue, 20 Mar 2018 08:25:25 GMT): davidkel (Tue, 20 Mar 2018 08:25:25 GMT): bh4rtp (Tue, 20 Mar 2018 08:31:31 GMT): benjamin.verhaegen (Tue, 20 Mar 2018 08:32:35 GMT): davidkel (Tue, 20 Mar 2018 08:32:53 GMT): bh4rtp (Tue, 20 Mar 2018 08:33:20 GMT): YosukeSakaue (Tue, 20 Mar 2018 08:35:38 GMT): SriniV (Tue, 20 Mar 2018 08:44:13 GMT): SriniV (Tue, 20 Mar 2018 08:45:04 GMT): Antiarchitect (Tue, 20 Mar 2018 08:45:27 GMT): Antiarchitect (Tue, 20 Mar 2018 08:45:37 GMT): Antiarchitect (Tue, 20 Mar 2018 08:45:44 GMT): Antiarchitect (Tue, 20 Mar 2018 08:45:57 GMT): jongunnarsson (Tue, 20 Mar 2018 09:10:17 GMT): Vincent (Tue, 20 Mar 2018 09:23:40 GMT): Vincent (Tue, 20 Mar 2018 09:23:50 GMT): Vincent (Tue, 20 Mar 2018 09:25:44 GMT): rthatcher (Tue, 20 Mar 2018 09:29:18 GMT): Ambros 3 (Tue, 20 Mar 2018 09:58:20 GMT): Ambros 3 (Tue, 20 Mar 2018 09:59:38 GMT): Antiarchitect (Tue, 20 Mar 2018 09:59:47 GMT): Antiarchitect (Tue, 20 Mar 2018 10:00:11 GMT): Antiarchitect (Tue, 20 Mar 2018 10:00:56 GMT): Ambros 3 (Tue, 20 Mar 2018 10:02:52 GMT): Antiarchitect (Tue, 20 Mar 2018 10:03:12 GMT): Antiarchitect (Tue, 20 Mar 2018 10:03:44 GMT): Antiarchitect (Tue, 20 Mar 2018 10:04:01 GMT): Antiarchitect (Tue, 20 Mar 2018 10:05:44 GMT): Ambros 3 (Tue, 20 Mar 2018 10:08:23 GMT): Varun2887 (Tue, 20 Mar 2018 10:09:10 GMT): rthatcher (Tue, 20 Mar 2018 10:09:37 GMT): mahoney1 (Tue, 20 Mar 2018 10:10:31 GMT): Varun2887 (Tue, 20 Mar 2018 10:11:00 GMT): benjamin.verhaegen (Tue, 20 Mar 2018 10:11:03 GMT): benjamin.verhaegen (Tue, 20 Mar 2018 10:11:03 GMT): davidkel (Tue, 20 Mar 2018 10:12:47 GMT): Antiarchitect (Tue, 20 Mar 2018 10:14:00 GMT): Vincent (Tue, 20 Mar 2018 10:14:12 GMT): Vincent (Tue, 20 Mar 2018 10:15:52 GMT): Ambros 3 (Tue, 20 Mar 2018 10:16:46 GMT): ChrisMcQueenDevelopment (Tue, 20 Mar 2018 10:23:32 GMT): Varun2887 (Tue, 20 Mar 2018 10:33:38 GMT): Varun2887 (Tue, 20 Mar 2018 10:33:40 GMT): bh4rtp (Tue, 20 Mar 2018 10:51:23 GMT): bh4rtp (Tue, 20 Mar 2018 10:51:23 GMT): bh4rtp (Tue, 20 Mar 2018 10:51:23 GMT): bh4rtp (Tue, 20 Mar 2018 10:51:23 GMT): bh4rtp (Tue, 20 Mar 2018 10:51:23 GMT): RadekS 3 (Tue, 20 Mar 2018 10:55:52 GMT): mahoney1 (Tue, 20 Mar 2018 11:01:57 GMT): bh4rtp (Tue, 20 Mar 2018 11:02:23 GMT): Antiarchitect (Tue, 20 Mar 2018 11:18:27 GMT): Antiarchitect (Tue, 20 Mar 2018 11:19:17 GMT): Antiarchitect (Tue, 20 Mar 2018 11:21:02 GMT): ChrisMcQueenDevelopment (Tue, 20 Mar 2018 11:23:19 GMT): Antiarchitect (Tue, 20 Mar 2018 11:31:08 GMT): Antiarchitect (Tue, 20 Mar 2018 11:31:15 GMT): Antiarchitect (Tue, 20 Mar 2018 11:31:21 GMT): Antiarchitect (Tue, 20 Mar 2018 11:31:21 GMT): Antiarchitect (Tue, 20 Mar 2018 11:31:41 GMT): ChrisMcQueenDevelopment (Tue, 20 Mar 2018 11:33:18 GMT): ChrisMcQueenDevelopment (Tue, 20 Mar 2018 11:33:18 GMT): ChrisMcQueenDevelopment (Tue, 20 Mar 2018 11:33:18 GMT): Antiarchitect (Tue, 20 Mar 2018 11:33:45 GMT): Antiarchitect (Tue, 20 Mar 2018 11:34:02 GMT): Antiarchitect (Tue, 20 Mar 2018 11:35:21 GMT): Antiarchitect (Tue, 20 Mar 2018 11:36:27 GMT): Antiarchitect (Tue, 20 Mar 2018 11:36:41 GMT): ChrisMcQueenDevelopment (Tue, 20 Mar 2018 11:51:10 GMT): Pranoti (Tue, 20 Mar 2018 11:54:06 GMT): Pranoti (Tue, 20 Mar 2018 11:54:37 GMT): Pranoti (Tue, 20 Mar 2018 11:55:05 GMT): mahoney1 (Tue, 20 Mar 2018 12:13:20 GMT): mahoney1 (Tue, 20 Mar 2018 12:13:20 GMT): mahoney1 (Tue, 20 Mar 2018 12:13:55 GMT): mahoney1 (Tue, 20 Mar 2018 12:17:13 GMT): mahoney1 (Tue, 20 Mar 2018 12:17:13 GMT): mahoney1 (Tue, 20 Mar 2018 12:17:19 GMT): davidkel (Tue, 20 Mar 2018 12:25:48 GMT): Antiarchitect (Tue, 20 Mar 2018 12:26:13 GMT): Antiarchitect (Tue, 20 Mar 2018 12:26:44 GMT): Antiarchitect (Tue, 20 Mar 2018 12:26:47 GMT): Antiarchitect (Tue, 20 Mar 2018 12:26:52 GMT): mahoney1 (Tue, 20 Mar 2018 12:27:03 GMT): mahoney1 (Tue, 20 Mar 2018 12:27:03 GMT): mahoney1 (Tue, 20 Mar 2018 12:27:03 GMT): Antiarchitect (Tue, 20 Mar 2018 12:27:37 GMT): Antiarchitect (Tue, 20 Mar 2018 12:28:15 GMT): Antiarchitect (Tue, 20 Mar 2018 12:28:26 GMT): Antiarchitect (Tue, 20 Mar 2018 12:28:35 GMT): Antiarchitect (Tue, 20 Mar 2018 12:29:33 GMT): davidkel (Tue, 20 Mar 2018 12:32:16 GMT): Antiarchitect (Tue, 20 Mar 2018 12:32:40 GMT): Antiarchitect (Tue, 20 Mar 2018 12:32:48 GMT): Pranoti (Tue, 20 Mar 2018 12:32:54 GMT): Pranoti (Tue, 20 Mar 2018 12:33:19 GMT): mahoney1 (Tue, 20 Mar 2018 12:33:42 GMT): Antiarchitect (Tue, 20 Mar 2018 12:34:26 GMT): davidkel (Tue, 20 Mar 2018 12:34:44 GMT): Antiarchitect (Tue, 20 Mar 2018 12:44:28 GMT): Antiarchitect (Tue, 20 Mar 2018 12:44:49 GMT): Antiarchitect (Tue, 20 Mar 2018 12:45:05 GMT): SamuelDare (Tue, 20 Mar 2018 12:45:44 GMT): SamuelDare (Tue, 20 Mar 2018 12:46:19 GMT): SamuelDare (Tue, 20 Mar 2018 12:46:27 GMT): Antiarchitect (Tue, 20 Mar 2018 12:48:02 GMT): AkshayJindal (Tue, 20 Mar 2018 12:51:54 GMT): mahoney1 (Tue, 20 Mar 2018 12:53:00 GMT): mahoney1 (Tue, 20 Mar 2018 12:53:00 GMT): mahoney1 (Tue, 20 Mar 2018 12:53:00 GMT): mahoney1 (Tue, 20 Mar 2018 12:53:00 GMT): JayPandya (Tue, 20 Mar 2018 12:54:44 GMT): mahoney1 (Tue, 20 Mar 2018 12:55:45 GMT): AkshayJindal (Tue, 20 Mar 2018 12:59:09 GMT): LloydPalum (Tue, 20 Mar 2018 13:10:18 GMT): a.mandaluniz (Tue, 20 Mar 2018 13:15:31 GMT): MuhammadSalah (Tue, 20 Mar 2018 13:18:27 GMT): HarshithaC (Tue, 20 Mar 2018 13:20:06 GMT): Antiarchitect (Tue, 20 Mar 2018 13:29:02 GMT): mahoney1 (Tue, 20 Mar 2018 13:41:20 GMT): JayPandya (Tue, 20 Mar 2018 13:48:15 GMT): mahoney1 (Tue, 20 Mar 2018 13:49:07 GMT): JayPandya (Tue, 20 Mar 2018 13:57:03 GMT): LloydPalum (Tue, 20 Mar 2018 14:00:45 GMT): rthatcher (Tue, 20 Mar 2018 14:02:44 GMT): rthatcher (Tue, 20 Mar 2018 14:02:44 GMT): ChrisMcQueenDevelopment (Tue, 20 Mar 2018 14:07:09 GMT): mahoney1 (Tue, 20 Mar 2018 14:12:50 GMT): Yakechi (Tue, 20 Mar 2018 14:19:52 GMT): mileszim (Tue, 20 Mar 2018 14:32:07 GMT): Vya4eslav (Tue, 20 Mar 2018 14:32:09 GMT): Vya4eslav (Tue, 20 Mar 2018 14:32:21 GMT): mahoney1 (Tue, 20 Mar 2018 14:33:17 GMT): davidkel (Tue, 20 Mar 2018 14:54:38 GMT): Antiarchitect (Tue, 20 Mar 2018 14:55:38 GMT): Antiarchitect (Tue, 20 Mar 2018 14:56:14 GMT): Antiarchitect (Tue, 20 Mar 2018 14:56:39 GMT): Antiarchitect (Tue, 20 Mar 2018 14:57:12 GMT): davidkel (Tue, 20 Mar 2018 14:58:18 GMT): Antiarchitect (Tue, 20 Mar 2018 14:58:44 GMT): Antiarchitect (Tue, 20 Mar 2018 14:59:21 GMT): davidkel (Tue, 20 Mar 2018 14:59:54 GMT): Antiarchitect (Tue, 20 Mar 2018 15:00:23 GMT): Antiarchitect (Tue, 20 Mar 2018 15:00:56 GMT): nkl199 (Tue, 20 Mar 2018 15:17:55 GMT): LloydPalum (Tue, 20 Mar 2018 15:28:53 GMT): davidkel (Tue, 20 Mar 2018 15:42:56 GMT): Antiarchitect (Tue, 20 Mar 2018 15:45:35 GMT): Antiarchitect (Tue, 20 Mar 2018 15:45:50 GMT): Antiarchitect (Tue, 20 Mar 2018 15:45:50 GMT): Juanan_Tejero (Tue, 20 Mar 2018 15:46:09 GMT): Juanan_Tejero (Tue, 20 Mar 2018 15:46:18 GMT): davidkel (Tue, 20 Mar 2018 15:49:49 GMT): Antiarchitect (Tue, 20 Mar 2018 15:56:29 GMT): tongli (Tue, 20 Mar 2018 15:56:30 GMT): tongli (Tue, 20 Mar 2018 15:57:38 GMT): tongli (Tue, 20 Mar 2018 15:58:58 GMT): tongli (Tue, 20 Mar 2018 15:59:12 GMT): JayPandya (Tue, 20 Mar 2018 16:23:16 GMT): vascosotomaior (Tue, 20 Mar 2018 16:24:46 GMT): Antiarchitect (Tue, 20 Mar 2018 16:31:13 GMT): tongli (Tue, 20 Mar 2018 16:32:05 GMT): andreosti (Tue, 20 Mar 2018 16:33:46 GMT): Antiarchitect (Tue, 20 Mar 2018 16:34:11 GMT): Antiarchitect (Tue, 20 Mar 2018 16:34:42 GMT): rthatcher (Tue, 20 Mar 2018 16:34:52 GMT): tongli (Tue, 20 Mar 2018 16:35:27 GMT): Antiarchitect (Tue, 20 Mar 2018 16:36:40 GMT): Antiarchitect (Tue, 20 Mar 2018 16:37:03 GMT): tongli (Tue, 20 Mar 2018 16:37:40 GMT): tongli (Tue, 20 Mar 2018 16:37:56 GMT): Antiarchitect (Tue, 20 Mar 2018 16:38:06 GMT): tongli (Tue, 20 Mar 2018 16:38:19 GMT): tongli (Tue, 20 Mar 2018 16:38:38 GMT): tongli (Tue, 20 Mar 2018 16:39:00 GMT): tongli (Tue, 20 Mar 2018 16:39:33 GMT): tongli (Tue, 20 Mar 2018 16:39:41 GMT): Antiarchitect (Tue, 20 Mar 2018 16:40:17 GMT): tongli (Tue, 20 Mar 2018 16:40:38 GMT): Antiarchitect (Tue, 20 Mar 2018 16:41:17 GMT): Antiarchitect (Tue, 20 Mar 2018 16:41:22 GMT): Antiarchitect (Tue, 20 Mar 2018 16:41:32 GMT): tongli (Tue, 20 Mar 2018 16:42:27 GMT): tongli (Tue, 20 Mar 2018 16:42:40 GMT): tongli (Tue, 20 Mar 2018 16:43:03 GMT): tongli (Tue, 20 Mar 2018 16:43:17 GMT): Antiarchitect (Tue, 20 Mar 2018 16:43:24 GMT): Antiarchitect (Tue, 20 Mar 2018 16:43:27 GMT): Antiarchitect (Tue, 20 Mar 2018 16:43:31 GMT): tongli (Tue, 20 Mar 2018 16:43:31 GMT): Antiarchitect (Tue, 20 Mar 2018 16:44:03 GMT): Antiarchitect (Tue, 20 Mar 2018 16:44:12 GMT): tongli (Tue, 20 Mar 2018 16:45:22 GMT): tongli (Tue, 20 Mar 2018 16:45:29 GMT): Antiarchitect (Tue, 20 Mar 2018 16:46:13 GMT): Antiarchitect (Tue, 20 Mar 2018 16:46:29 GMT): tongli (Tue, 20 Mar 2018 16:47:20 GMT): tongli (Tue, 20 Mar 2018 16:47:47 GMT): Antiarchitect (Tue, 20 Mar 2018 16:48:40 GMT): tongli (Tue, 20 Mar 2018 16:48:55 GMT): Antiarchitect (Tue, 20 Mar 2018 16:49:01 GMT): Antiarchitect (Tue, 20 Mar 2018 16:49:16 GMT): tongli (Tue, 20 Mar 2018 16:49:46 GMT): tongli (Tue, 20 Mar 2018 16:50:10 GMT): tongli (Tue, 20 Mar 2018 16:50:58 GMT): tongli (Tue, 20 Mar 2018 16:51:17 GMT): Antiarchitect (Tue, 20 Mar 2018 16:51:27 GMT): tongli (Tue, 20 Mar 2018 16:51:29 GMT): tongli (Tue, 20 Mar 2018 16:52:29 GMT): Antiarchitect (Tue, 20 Mar 2018 16:52:37 GMT): Antiarchitect (Tue, 20 Mar 2018 16:53:17 GMT): tongli (Tue, 20 Mar 2018 16:54:13 GMT): tongli (Tue, 20 Mar 2018 16:54:29 GMT): Antiarchitect (Tue, 20 Mar 2018 16:54:41 GMT): Antiarchitect (Tue, 20 Mar 2018 16:54:41 GMT): Antiarchitect (Tue, 20 Mar 2018 16:56:51 GMT): Antiarchitect (Tue, 20 Mar 2018 16:57:20 GMT): uber.twin (Tue, 20 Mar 2018 16:57:29 GMT): rthatcher (Tue, 20 Mar 2018 17:28:27 GMT): omkarprabhu98 (Tue, 20 Mar 2018 17:44:33 GMT): omkarprabhu98 (Tue, 20 Mar 2018 17:46:59 GMT): rthatcher (Tue, 20 Mar 2018 17:50:45 GMT): vieiramanoel (Tue, 20 Mar 2018 17:51:01 GMT): ArunDaniel (Tue, 20 Mar 2018 17:56:39 GMT): vieiramanoel (Tue, 20 Mar 2018 17:58:02 GMT): vieiramanoel (Tue, 20 Mar 2018 17:59:36 GMT): vieiramanoel (Tue, 20 Mar 2018 17:59:36 GMT): omkarprabhu98 (Tue, 20 Mar 2018 18:02:56 GMT): vieiramanoel (Tue, 20 Mar 2018 18:06:15 GMT): vieiramanoel (Tue, 20 Mar 2018 18:06:35 GMT): vieiramanoel (Tue, 20 Mar 2018 18:06:35 GMT): vieiramanoel (Tue, 20 Mar 2018 18:06:35 GMT): uber.twin (Tue, 20 Mar 2018 18:09:16 GMT): uber.twin (Tue, 20 Mar 2018 18:12:00 GMT): davidkel (Tue, 20 Mar 2018 18:13:02 GMT): uber.twin (Tue, 20 Mar 2018 18:14:16 GMT): uber.twin (Tue, 20 Mar 2018 18:14:16 GMT): uber.twin (Tue, 20 Mar 2018 18:14:16 GMT): davidkel (Tue, 20 Mar 2018 18:16:25 GMT): uber.twin (Tue, 20 Mar 2018 18:18:06 GMT): LloydPalum (Tue, 20 Mar 2018 19:08:34 GMT): pb (Tue, 20 Mar 2018 19:20:17 GMT): LloydPalum (Tue, 20 Mar 2018 19:24:59 GMT): pb (Tue, 20 Mar 2018 19:26:01 GMT): tongli (Tue, 20 Mar 2018 20:22:29 GMT): tongli (Tue, 20 Mar 2018 20:23:06 GMT): tongli (Tue, 20 Mar 2018 20:23:55 GMT): tongli (Tue, 20 Mar 2018 20:24:11 GMT): tongli (Tue, 20 Mar 2018 20:24:18 GMT): tongli (Tue, 20 Mar 2018 20:24:42 GMT): tongli (Tue, 20 Mar 2018 20:25:16 GMT): tongli (Tue, 20 Mar 2018 20:26:47 GMT): tongli (Tue, 20 Mar 2018 20:29:46 GMT): tongli (Tue, 20 Mar 2018 20:30:38 GMT): gente21 (Tue, 20 Mar 2018 20:33:18 GMT): JayPandya (Tue, 20 Mar 2018 20:55:51 GMT): AnyeFreer (Tue, 20 Mar 2018 20:56:45 GMT): davidkel (Tue, 20 Mar 2018 20:58:01 GMT): AnyeFreer (Tue, 20 Mar 2018 20:58:40 GMT): AnyeFreer (Tue, 20 Mar 2018 20:59:10 GMT): davidkel (Tue, 20 Mar 2018 20:59:32 GMT): AnyeFreer (Tue, 20 Mar 2018 20:59:40 GMT): AnyeFreer (Tue, 20 Mar 2018 20:59:52 GMT): davidkel (Tue, 20 Mar 2018 21:00:06 GMT): AnyeFreer (Tue, 20 Mar 2018 21:00:13 GMT): AnyeFreer (Tue, 20 Mar 2018 21:00:17 GMT): davidkel (Tue, 20 Mar 2018 21:01:16 GMT): AnyeFreer (Tue, 20 Mar 2018 21:01:16 GMT): AnyeFreer (Tue, 20 Mar 2018 21:03:43 GMT): davidkel (Tue, 20 Mar 2018 21:09:43 GMT): davidkel (Tue, 20 Mar 2018 21:13:07 GMT): davidkel (Tue, 20 Mar 2018 21:13:31 GMT): AnyeFreer (Tue, 20 Mar 2018 21:14:15 GMT): AnyeFreer (Tue, 20 Mar 2018 21:14:16 GMT): davidkel (Tue, 20 Mar 2018 21:17:35 GMT): davidkel (Tue, 20 Mar 2018 21:17:59 GMT): AnyeFreer (Tue, 20 Mar 2018 21:21:45 GMT): AnyeFreer (Tue, 20 Mar 2018 21:22:10 GMT): AnyeFreer (Tue, 20 Mar 2018 21:22:48 GMT): davidkel (Tue, 20 Mar 2018 22:21:44 GMT): ShikarSharma (Tue, 20 Mar 2018 22:35:54 GMT): mahoney1 (Tue, 20 Mar 2018 23:06:45 GMT): mahoney1 (Tue, 20 Mar 2018 23:07:35 GMT): JayPandya (Tue, 20 Mar 2018 23:08:26 GMT): mahoney1 (Tue, 20 Mar 2018 23:09:49 GMT): mahoney1 (Tue, 20 Mar 2018 23:12:42 GMT): mahoney1 (Tue, 20 Mar 2018 23:17:28 GMT): JayPandya (Tue, 20 Mar 2018 23:18:48 GMT): JayPandya (Tue, 20 Mar 2018 23:18:48 GMT): Autark (Wed, 21 Mar 2018 01:32:24 GMT): Autark (Wed, 21 Mar 2018 01:35:24 GMT): Autark (Wed, 21 Mar 2018 01:35:24 GMT): Autark (Wed, 21 Mar 2018 01:35:24 GMT): Kanishk_Kishore (Wed, 21 Mar 2018 01:38:37 GMT): Kanishk_Kishore (Wed, 21 Mar 2018 01:40:05 GMT): Kanishk_Kishore (Wed, 21 Mar 2018 01:40:17 GMT): charlierubin (Wed, 21 Mar 2018 01:40:54 GMT): Kanishk_Kishore (Wed, 21 Mar 2018 01:41:13 GMT): Kanishk_Kishore (Wed, 21 Mar 2018 01:44:35 GMT): Kanishk_Kishore (Wed, 21 Mar 2018 01:45:37 GMT): Kanishk_Kishore (Wed, 21 Mar 2018 01:45:46 GMT): harshchaturvedi (Wed, 21 Mar 2018 01:56:28 GMT): harshchaturvedi (Wed, 21 Mar 2018 01:59:21 GMT): nelsonthamhc (Wed, 21 Mar 2018 02:54:30 GMT): bamboo (Wed, 21 Mar 2018 02:55:28 GMT): nelsonthamhc (Wed, 21 Mar 2018 02:58:16 GMT): yogeshquick (Wed, 21 Mar 2018 04:32:23 GMT): aeopare (Wed, 21 Mar 2018 04:42:11 GMT): yogeshquick (Wed, 21 Mar 2018 04:43:17 GMT): yogeshquick (Wed, 21 Mar 2018 04:48:37 GMT): pb (Wed, 21 Mar 2018 04:50:42 GMT): pb (Wed, 21 Mar 2018 04:51:33 GMT): DRSK (Wed, 21 Mar 2018 04:54:18 GMT): Varun2887 (Wed, 21 Mar 2018 05:36:00 GMT): pb (Wed, 21 Mar 2018 06:05:57 GMT): Vincent (Wed, 21 Mar 2018 06:08:09 GMT): Pranoti (Wed, 21 Mar 2018 06:33:30 GMT): Vincent (Wed, 21 Mar 2018 06:38:13 GMT): Pranoti (Wed, 21 Mar 2018 06:40:25 GMT): thelostone-mc (Wed, 21 Mar 2018 07:03:47 GMT): SudheerKaspa (Wed, 21 Mar 2018 07:25:20 GMT): SudheerKaspa (Wed, 21 Mar 2018 07:25:27 GMT): davidkel (Wed, 21 Mar 2018 07:48:15 GMT): davidkel (Wed, 21 Mar 2018 07:50:58 GMT): notOccupanther (Wed, 21 Mar 2018 07:52:02 GMT): davidkel (Wed, 21 Mar 2018 07:52:21 GMT): notOccupanther (Wed, 21 Mar 2018 07:52:32 GMT): notOccupanther (Wed, 21 Mar 2018 07:52:47 GMT): notOccupanther (Wed, 21 Mar 2018 07:53:16 GMT): SudheerKaspa (Wed, 21 Mar 2018 07:53:37 GMT): notOccupanther (Wed, 21 Mar 2018 07:54:19 GMT): notOccupanther (Wed, 21 Mar 2018 07:54:46 GMT): notOccupanther (Wed, 21 Mar 2018 07:55:10 GMT): davidkel (Wed, 21 Mar 2018 07:55:19 GMT): davidkel (Wed, 21 Mar 2018 07:55:58 GMT): notOccupanther (Wed, 21 Mar 2018 07:56:16 GMT): notOccupanther (Wed, 21 Mar 2018 07:57:02 GMT): notOccupanther (Wed, 21 Mar 2018 07:57:05 GMT): davidkel (Wed, 21 Mar 2018 07:57:13 GMT): notOccupanther (Wed, 21 Mar 2018 07:57:32 GMT): notOccupanther (Wed, 21 Mar 2018 07:57:46 GMT): Mark818 (Wed, 21 Mar 2018 08:35:31 GMT): Mark818 (Wed, 21 Mar 2018 08:35:36 GMT): PierreHenry (Wed, 21 Mar 2018 08:42:26 GMT): ranjithkumarmv (Wed, 21 Mar 2018 08:44:43 GMT): BlockMcChainy (Wed, 21 Mar 2018 08:58:04 GMT): filippoboiani (Wed, 21 Mar 2018 09:13:42 GMT): rthatcher (Wed, 21 Mar 2018 09:21:36 GMT): rthatcher (Wed, 21 Mar 2018 09:23:30 GMT): varuna82 (Wed, 21 Mar 2018 09:27:11 GMT): rthatcher (Wed, 21 Mar 2018 09:27:41 GMT): thelostone-mc (Wed, 21 Mar 2018 09:28:06 GMT): mahoney1 (Wed, 21 Mar 2018 09:28:35 GMT): rthatcher (Wed, 21 Mar 2018 09:31:54 GMT): varuna82 (Wed, 21 Mar 2018 09:32:37 GMT): eguliev (Wed, 21 Mar 2018 09:35:56 GMT): rthatcher (Wed, 21 Mar 2018 09:41:25 GMT): pb (Wed, 21 Mar 2018 09:43:51 GMT): rthatcher (Wed, 21 Mar 2018 09:54:34 GMT): rthatcher (Wed, 21 Mar 2018 09:56:03 GMT): shkurata (Wed, 21 Mar 2018 10:35:54 GMT): varuna82 (Wed, 21 Mar 2018 11:16:27 GMT): mahoney1 (Wed, 21 Mar 2018 11:20:26 GMT): varuna82 (Wed, 21 Mar 2018 11:21:51 GMT): varuna82 (Wed, 21 Mar 2018 11:37:37 GMT): mahoney1 (Wed, 21 Mar 2018 11:39:25 GMT): mahoney1 (Wed, 21 Mar 2018 11:40:39 GMT): mahoney1 (Wed, 21 Mar 2018 11:40:39 GMT): Varun2887 (Wed, 21 Mar 2018 11:44:40 GMT): Varun2887 (Wed, 21 Mar 2018 11:45:28 GMT): mahoney1 (Wed, 21 Mar 2018 11:47:19 GMT): mahoney1 (Wed, 21 Mar 2018 11:47:19 GMT): ranjithkumarmv (Wed, 21 Mar 2018 12:07:20 GMT): varuna82 (Wed, 21 Mar 2018 12:11:09 GMT): JonasVdB (Wed, 21 Mar 2018 12:37:24 GMT): rtorres (Wed, 21 Mar 2018 12:46:33 GMT): rtorres (Wed, 21 Mar 2018 12:47:32 GMT): JayPandya (Wed, 21 Mar 2018 12:49:08 GMT): JayPandya (Wed, 21 Mar 2018 12:49:36 GMT): nicolapaoli (Wed, 21 Mar 2018 13:00:07 GMT): mahoney1 (Wed, 21 Mar 2018 13:07:05 GMT): sarvesh_16 (Wed, 21 Mar 2018 13:07:33 GMT): mahoney1 (Wed, 21 Mar 2018 13:09:40 GMT): mahoney1 (Wed, 21 Mar 2018 13:24:34 GMT): JayPandya (Wed, 21 Mar 2018 13:26:33 GMT): smsharma (Wed, 21 Mar 2018 13:26:51 GMT): smsharma (Wed, 21 Mar 2018 13:27:00 GMT): Pranoti (Wed, 21 Mar 2018 13:28:04 GMT): himanshuchawla009 (Wed, 21 Mar 2018 13:28:31 GMT): Pranoti (Wed, 21 Mar 2018 13:28:36 GMT): mahoney1 (Wed, 21 Mar 2018 13:28:49 GMT): mahoney1 (Wed, 21 Mar 2018 13:28:49 GMT): himanshuchawla009 (Wed, 21 Mar 2018 13:29:56 GMT): smsharma (Wed, 21 Mar 2018 13:30:12 GMT): Yakechi (Wed, 21 Mar 2018 13:33:10 GMT): nicolapaoli (Wed, 21 Mar 2018 13:36:07 GMT): nicolapaoli (Wed, 21 Mar 2018 13:36:07 GMT): nicolapaoli (Wed, 21 Mar 2018 13:36:07 GMT): nicolapaoli (Wed, 21 Mar 2018 13:36:07 GMT): nicolapaoli (Wed, 21 Mar 2018 13:36:07 GMT): smsharma (Wed, 21 Mar 2018 13:51:44 GMT): smsharma (Wed, 21 Mar 2018 13:51:44 GMT): kevinsyx (Wed, 21 Mar 2018 13:55:17 GMT): ranjithkumarmv (Wed, 21 Mar 2018 13:55:51 GMT): rthatcher (Wed, 21 Mar 2018 14:01:36 GMT): Yakechi (Wed, 21 Mar 2018 14:04:26 GMT): MokshJain (Wed, 21 Mar 2018 14:04:54 GMT): Pranoti (Wed, 21 Mar 2018 14:09:28 GMT): Pranoti (Wed, 21 Mar 2018 14:09:28 GMT): Pranoti (Wed, 21 Mar 2018 14:09:28 GMT): rthatcher (Wed, 21 Mar 2018 14:12:46 GMT): rthatcher (Wed, 21 Mar 2018 14:12:46 GMT): FORFIRM (Wed, 21 Mar 2018 14:21:47 GMT): kevinsyx (Wed, 21 Mar 2018 14:28:50 GMT): koineramitranjan (Wed, 21 Mar 2018 14:36:58 GMT): rthatcher (Wed, 21 Mar 2018 14:37:06 GMT): koineramitranjan (Wed, 21 Mar 2018 14:37:38 GMT): rthatcher (Wed, 21 Mar 2018 14:44:15 GMT): koineramitranjan (Wed, 21 Mar 2018 14:49:30 GMT): rthatcher (Wed, 21 Mar 2018 14:50:37 GMT): rthatcher (Wed, 21 Mar 2018 14:50:37 GMT): jverhoelen (Wed, 21 Mar 2018 14:50:44 GMT): kevinsyx (Wed, 21 Mar 2018 14:55:53 GMT): rtorres (Wed, 21 Mar 2018 15:05:53 GMT): mahoney1 (Wed, 21 Mar 2018 15:14:16 GMT): PierreHenry (Wed, 21 Mar 2018 15:14:42 GMT): PierreHenry (Wed, 21 Mar 2018 15:18:11 GMT): PierreHenry (Wed, 21 Mar 2018 15:18:11 GMT): PierreHenry (Wed, 21 Mar 2018 15:18:11 GMT): PierreHenry (Wed, 21 Mar 2018 15:18:11 GMT): uber.twin (Wed, 21 Mar 2018 15:21:27 GMT): uber.twin (Wed, 21 Mar 2018 15:21:27 GMT): grice_32 (Wed, 21 Mar 2018 15:25:22 GMT): grice_32 (Wed, 21 Mar 2018 15:25:58 GMT): rtorres (Wed, 21 Mar 2018 15:26:31 GMT): uber.twin (Wed, 21 Mar 2018 15:32:08 GMT): Paradox (Wed, 21 Mar 2018 15:35:00 GMT): Paradox (Wed, 21 Mar 2018 15:35:00 GMT): mahoney1 (Wed, 21 Mar 2018 15:35:47 GMT): mahoney1 (Wed, 21 Mar 2018 15:35:47 GMT): PierreHenry (Wed, 21 Mar 2018 15:38:46 GMT): PierreHenry (Wed, 21 Mar 2018 15:38:46 GMT): PierreHenry (Wed, 21 Mar 2018 15:38:46 GMT): rthatcher (Wed, 21 Mar 2018 15:39:58 GMT): grice_32 (Wed, 21 Mar 2018 15:42:24 GMT): rthatcher (Wed, 21 Mar 2018 15:44:07 GMT): grice_32 (Wed, 21 Mar 2018 15:45:18 GMT): mahoney1 (Wed, 21 Mar 2018 15:48:32 GMT): mahoney1 (Wed, 21 Mar 2018 15:48:32 GMT): rthatcher (Wed, 21 Mar 2018 15:53:54 GMT): uber.twin (Wed, 21 Mar 2018 15:55:59 GMT): expertblockdev2910 (Wed, 21 Mar 2018 15:57:30 GMT): mahoney1 (Wed, 21 Mar 2018 16:17:27 GMT): grice_32 (Wed, 21 Mar 2018 16:20:34 GMT): grice_32 (Wed, 21 Mar 2018 16:36:37 GMT): ace3 1 (Wed, 21 Mar 2018 16:42:48 GMT): LuigiRiva (Wed, 21 Mar 2018 16:44:13 GMT): rthatcher (Wed, 21 Mar 2018 16:52:56 GMT): rthatcher (Wed, 21 Mar 2018 16:52:56 GMT): mostafa.elsayyad (Wed, 21 Mar 2018 17:04:33 GMT): mostafa.elsayyad (Wed, 21 Mar 2018 17:04:37 GMT): mostafa.elsayyad (Wed, 21 Mar 2018 17:04:43 GMT): rthatcher (Wed, 21 Mar 2018 17:12:37 GMT): mostafa.elsayyad (Wed, 21 Mar 2018 17:13:39 GMT): tongli (Wed, 21 Mar 2018 17:15:01 GMT): tongli (Wed, 21 Mar 2018 17:15:58 GMT): tongli (Wed, 21 Mar 2018 17:23:18 GMT): tongli (Wed, 21 Mar 2018 17:23:27 GMT): tongli (Wed, 21 Mar 2018 17:24:27 GMT): inzamam (Wed, 21 Mar 2018 17:29:53 GMT): jackschultz (Wed, 21 Mar 2018 17:32:04 GMT): jackschultz (Wed, 21 Mar 2018 17:32:38 GMT): jackschultz (Wed, 21 Mar 2018 17:32:48 GMT): jackschultz (Wed, 21 Mar 2018 17:33:13 GMT): grice_32 (Wed, 21 Mar 2018 17:38:39 GMT): grice_32 (Wed, 21 Mar 2018 17:39:06 GMT): davidkel (Wed, 21 Mar 2018 17:47:45 GMT): davidkel (Wed, 21 Mar 2018 17:47:45 GMT): grice_32 (Wed, 21 Mar 2018 17:50:37 GMT): mahoney1 (Wed, 21 Mar 2018 17:50:54 GMT): tongli (Wed, 21 Mar 2018 17:51:50 GMT): grice_32 (Wed, 21 Mar 2018 17:51:56 GMT): tongli (Wed, 21 Mar 2018 17:52:08 GMT): davidkel (Wed, 21 Mar 2018 17:54:06 GMT): davidkel (Wed, 21 Mar 2018 17:54:06 GMT): mahoney1 (Wed, 21 Mar 2018 17:54:18 GMT): grice_32 (Wed, 21 Mar 2018 17:55:39 GMT): davidkel (Wed, 21 Mar 2018 17:58:06 GMT): davidkel (Wed, 21 Mar 2018 17:58:06 GMT): jackschultz (Wed, 21 Mar 2018 17:59:36 GMT): grice_32 (Wed, 21 Mar 2018 17:59:49 GMT): mahoney1 (Wed, 21 Mar 2018 18:10:31 GMT): mahoney1 (Wed, 21 Mar 2018 18:11:09 GMT): jackschultz (Wed, 21 Mar 2018 18:13:52 GMT): grice_32 (Wed, 21 Mar 2018 18:49:42 GMT): leonsp (Wed, 21 Mar 2018 19:03:03 GMT): SriniH 1 (Wed, 21 Mar 2018 21:23:33 GMT): leonsp (Wed, 21 Mar 2018 21:54:19 GMT): suntoe (Thu, 22 Mar 2018 03:46:34 GMT): Varun2887 (Thu, 22 Mar 2018 04:10:59 GMT): floatware (Thu, 22 Mar 2018 05:08:34 GMT): Varun2887 (Thu, 22 Mar 2018 05:29:09 GMT): Jennath (Thu, 22 Mar 2018 06:00:22 GMT): Pranoti (Thu, 22 Mar 2018 06:13:46 GMT): eguliev (Thu, 22 Mar 2018 06:57:39 GMT): surendra-kushwaha (Thu, 22 Mar 2018 07:01:55 GMT): varuna82 (Thu, 22 Mar 2018 08:56:57 GMT): SriniV (Thu, 22 Mar 2018 08:59:35 GMT): ibmiotspark (Thu, 22 Mar 2018 09:00:41 GMT): xiangyue (Thu, 22 Mar 2018 09:28:18 GMT): zasamen (Thu, 22 Mar 2018 09:35:15 GMT): ranjithkumarmv (Thu, 22 Mar 2018 09:36:13 GMT): ranjithkumarmv (Thu, 22 Mar 2018 09:36:13 GMT): zasamen (Thu, 22 Mar 2018 09:37:32 GMT): zasamen (Thu, 22 Mar 2018 09:37:32 GMT): zasamen (Thu, 22 Mar 2018 09:37:32 GMT): Varun2887 (Thu, 22 Mar 2018 09:38:26 GMT): Varun2887 (Thu, 22 Mar 2018 09:38:26 GMT): ranjithkumarmv (Thu, 22 Mar 2018 09:39:00 GMT): SamuelDare (Thu, 22 Mar 2018 09:39:57 GMT): SamuelDare (Thu, 22 Mar 2018 09:39:57 GMT): SamuelDare (Thu, 22 Mar 2018 09:39:57 GMT): ibmiotspark (Thu, 22 Mar 2018 09:44:55 GMT): zasamen (Thu, 22 Mar 2018 09:45:29 GMT): ibmiotspark (Thu, 22 Mar 2018 09:46:39 GMT): zasamen (Thu, 22 Mar 2018 09:47:06 GMT): Vincent (Thu, 22 Mar 2018 09:49:58 GMT): Vincent (Thu, 22 Mar 2018 09:50:05 GMT): zasamen (Thu, 22 Mar 2018 09:51:11 GMT): darunk67 (Thu, 22 Mar 2018 09:55:08 GMT): mahoney1 (Thu, 22 Mar 2018 09:57:24 GMT): zasamen (Thu, 22 Mar 2018 10:01:12 GMT): IvorKruger (Thu, 22 Mar 2018 10:02:47 GMT): ibmiotspark (Thu, 22 Mar 2018 10:03:37 GMT): mahoney1 (Thu, 22 Mar 2018 10:04:27 GMT): ibmiotspark (Thu, 22 Mar 2018 10:04:41 GMT): zasamen (Thu, 22 Mar 2018 10:07:08 GMT): zasamen (Thu, 22 Mar 2018 10:08:18 GMT): ranjithkumarmv (Thu, 22 Mar 2018 10:14:23 GMT): ranjithkumarmv (Thu, 22 Mar 2018 10:14:23 GMT): ranjithkumarmv (Thu, 22 Mar 2018 10:14:23 GMT): ccebrecos (Thu, 22 Mar 2018 10:16:49 GMT): mahoney1 (Thu, 22 Mar 2018 10:23:26 GMT): nitrek (Thu, 22 Mar 2018 10:35:01 GMT): nitrek (Thu, 22 Mar 2018 10:37:02 GMT): nitrek (Thu, 22 Mar 2018 10:37:33 GMT): varuna82 (Thu, 22 Mar 2018 10:38:22 GMT): AlbertCL (Thu, 22 Mar 2018 10:47:26 GMT): terrypst (Thu, 22 Mar 2018 11:00:28 GMT): ranjithkumarmv (Thu, 22 Mar 2018 11:07:58 GMT): sapnaupreti (Thu, 22 Mar 2018 11:46:51 GMT): ccebrecos (Thu, 22 Mar 2018 12:01:23 GMT): mahoney1 (Thu, 22 Mar 2018 12:23:03 GMT): mahoney1 (Thu, 22 Mar 2018 12:23:45 GMT): varuna82 (Thu, 22 Mar 2018 12:25:19 GMT): RaghuP (Thu, 22 Mar 2018 13:15:12 GMT): RaghuP (Thu, 22 Mar 2018 13:17:23 GMT): ydennisy (Thu, 22 Mar 2018 13:33:32 GMT): grice_32 (Thu, 22 Mar 2018 13:34:47 GMT): SamuelDare (Thu, 22 Mar 2018 13:51:44 GMT): SamuelDare (Thu, 22 Mar 2018 13:52:43 GMT): SamuelDare (Thu, 22 Mar 2018 13:52:43 GMT): ydennisy (Thu, 22 Mar 2018 13:55:51 GMT): SamuelDare (Thu, 22 Mar 2018 13:56:28 GMT): ydennisy (Thu, 22 Mar 2018 13:56:58 GMT): SamuelDare (Thu, 22 Mar 2018 13:58:00 GMT): mahoney1 (Thu, 22 Mar 2018 13:58:04 GMT): ranjithkumarmv (Thu, 22 Mar 2018 13:59:32 GMT): mahoney1 (Thu, 22 Mar 2018 14:01:20 GMT): SamuelDare (Thu, 22 Mar 2018 14:01:44 GMT): SamuelDare (Thu, 22 Mar 2018 14:01:44 GMT): mahoney1 (Thu, 22 Mar 2018 14:57:02 GMT): mahoney1 (Thu, 22 Mar 2018 14:58:03 GMT): uber.twin (Thu, 22 Mar 2018 15:02:37 GMT): larsf (Thu, 22 Mar 2018 15:05:35 GMT): mahoney1 (Thu, 22 Mar 2018 15:13:36 GMT): mahoney1 (Thu, 22 Mar 2018 15:13:36 GMT): mahoney1 (Thu, 22 Mar 2018 15:13:36 GMT): waleed (Thu, 22 Mar 2018 15:15:02 GMT): waleed (Thu, 22 Mar 2018 15:15:02 GMT): waleed (Thu, 22 Mar 2018 15:15:21 GMT): waleed (Thu, 22 Mar 2018 15:15:26 GMT): mahoney1 (Thu, 22 Mar 2018 15:18:53 GMT): mahoney1 (Thu, 22 Mar 2018 15:18:53 GMT): larsf (Thu, 22 Mar 2018 15:19:36 GMT): mahoney1 (Thu, 22 Mar 2018 15:20:36 GMT): uber.twin (Thu, 22 Mar 2018 15:21:44 GMT): Ilias 5 (Thu, 22 Mar 2018 15:21:51 GMT): waleed (Thu, 22 Mar 2018 15:23:22 GMT): waleed (Thu, 22 Mar 2018 15:23:22 GMT): AkshayJindal (Thu, 22 Mar 2018 15:24:04 GMT): ranjithkumarmv (Thu, 22 Mar 2018 15:25:45 GMT): ranjithkumarmv (Thu, 22 Mar 2018 15:26:31 GMT): mahoney1 (Thu, 22 Mar 2018 15:31:47 GMT): mahoney1 (Thu, 22 Mar 2018 15:34:16 GMT): SamuelDare (Thu, 22 Mar 2018 16:05:46 GMT): SamuelDare (Thu, 22 Mar 2018 16:05:59 GMT): SamuelDare (Thu, 22 Mar 2018 16:06:20 GMT): d1480026 (Thu, 22 Mar 2018 16:07:37 GMT): waleed (Thu, 22 Mar 2018 16:19:15 GMT): waleed (Thu, 22 Mar 2018 16:19:15 GMT): waleed (Thu, 22 Mar 2018 16:19:15 GMT): SamuelDare (Thu, 22 Mar 2018 16:28:08 GMT): SamuelDare (Thu, 22 Mar 2018 16:29:52 GMT): smithsj (Thu, 22 Mar 2018 16:32:50 GMT): mahoney1 (Thu, 22 Mar 2018 16:36:43 GMT): mahoney1 (Thu, 22 Mar 2018 16:37:39 GMT): mahoney1 (Thu, 22 Mar 2018 16:37:39 GMT): SamuelDare (Thu, 22 Mar 2018 16:38:27 GMT): SamuelDare (Thu, 22 Mar 2018 16:39:01 GMT): SamuelDare (Thu, 22 Mar 2018 16:39:01 GMT): SamuelDare (Thu, 22 Mar 2018 16:44:10 GMT): SamuelDare (Thu, 22 Mar 2018 16:44:59 GMT): SamuelDare (Thu, 22 Mar 2018 16:48:55 GMT): himanshuchawla009 (Thu, 22 Mar 2018 17:27:23 GMT): himanshuchawla009 (Thu, 22 Mar 2018 17:28:32 GMT): smithsj (Thu, 22 Mar 2018 17:29:12 GMT): SamuelDare (Thu, 22 Mar 2018 17:30:13 GMT): SamuelDare (Thu, 22 Mar 2018 17:30:29 GMT): smithsj (Thu, 22 Mar 2018 17:30:30 GMT): SamuelDare (Thu, 22 Mar 2018 17:31:01 GMT): SamuelDare (Thu, 22 Mar 2018 17:31:49 GMT): SamuelDare (Thu, 22 Mar 2018 17:31:52 GMT): SamuelDare (Thu, 22 Mar 2018 17:31:52 GMT): himanshuchawla009 (Thu, 22 Mar 2018 17:32:07 GMT): himanshuchawla009 (Thu, 22 Mar 2018 17:32:12 GMT): smithsj (Thu, 22 Mar 2018 17:32:48 GMT): SamuelDare (Thu, 22 Mar 2018 17:32:55 GMT): smithsj (Thu, 22 Mar 2018 17:33:09 GMT): SamuelDare (Thu, 22 Mar 2018 17:33:54 GMT): SamuelDare (Thu, 22 Mar 2018 17:34:13 GMT): smithsj (Thu, 22 Mar 2018 17:34:22 GMT): SamuelDare (Thu, 22 Mar 2018 17:34:42 GMT): smithsj (Thu, 22 Mar 2018 17:35:03 GMT): mahoney1 (Thu, 22 Mar 2018 17:35:23 GMT): himanshuchawla009 (Thu, 22 Mar 2018 17:35:40 GMT): SamuelDare (Thu, 22 Mar 2018 17:35:48 GMT): smithsj (Thu, 22 Mar 2018 17:39:32 GMT): vieiramanoel (Thu, 22 Mar 2018 17:39:32 GMT): jyellick (Thu, 22 Mar 2018 17:39:33 GMT): vieiramanoel (Thu, 22 Mar 2018 17:40:04 GMT): vieiramanoel (Thu, 22 Mar 2018 17:40:20 GMT): mahoney1 (Thu, 22 Mar 2018 17:48:43 GMT): mahoney1 (Thu, 22 Mar 2018 17:48:43 GMT): mahoney1 (Thu, 22 Mar 2018 17:48:43 GMT): smithsj (Thu, 22 Mar 2018 17:49:03 GMT): Akash76 (Thu, 22 Mar 2018 17:49:10 GMT): pfoytik (Thu, 22 Mar 2018 17:52:58 GMT): mahoney1 (Thu, 22 Mar 2018 17:54:50 GMT): Rmannn (Thu, 22 Mar 2018 17:59:44 GMT): alexpereira (Thu, 22 Mar 2018 18:18:25 GMT): waleed (Thu, 22 Mar 2018 18:46:56 GMT): waleed (Thu, 22 Mar 2018 18:46:56 GMT): alexpereira (Thu, 22 Mar 2018 18:59:41 GMT): waleed (Thu, 22 Mar 2018 19:08:02 GMT): alexpereira (Thu, 22 Mar 2018 19:18:44 GMT): tongli (Thu, 22 Mar 2018 19:42:00 GMT): tongli (Thu, 22 Mar 2018 19:42:05 GMT): tongli (Thu, 22 Mar 2018 19:42:31 GMT): tongli (Thu, 22 Mar 2018 19:42:58 GMT): tongli (Thu, 22 Mar 2018 19:43:31 GMT): tongli (Thu, 22 Mar 2018 19:43:54 GMT): tongli (Thu, 22 Mar 2018 19:44:23 GMT): tongli (Thu, 22 Mar 2018 19:44:48 GMT): WebKruncher (Thu, 22 Mar 2018 20:24:27 GMT): SamuelDare (Thu, 22 Mar 2018 20:44:36 GMT): y2255236 (Thu, 22 Mar 2018 20:44:46 GMT): y2255236 (Thu, 22 Mar 2018 20:44:46 GMT): SamuelDare (Thu, 22 Mar 2018 20:57:12 GMT): philviana (Thu, 22 Mar 2018 23:12:45 GMT): philviana (Thu, 22 Mar 2018 23:14:52 GMT): philviana (Thu, 22 Mar 2018 23:15:00 GMT): philviana (Fri, 23 Mar 2018 00:17:26 GMT): yinzhiwu (Fri, 23 Mar 2018 02:53:58 GMT): SamB 37 (Fri, 23 Mar 2018 02:59:51 GMT): SamB 37 (Fri, 23 Mar 2018 02:59:57 GMT): SamB 37 (Fri, 23 Mar 2018 03:15:08 GMT): torquemad (Fri, 23 Mar 2018 03:34:28 GMT): xy250400 (Fri, 23 Mar 2018 03:58:45 GMT): RohanMudaliar (Fri, 23 Mar 2018 05:48:08 GMT): Varun2887 (Fri, 23 Mar 2018 06:17:28 GMT): xy250400 (Fri, 23 Mar 2018 06:19:35 GMT): xy250400 (Fri, 23 Mar 2018 06:19:43 GMT): suva (Fri, 23 Mar 2018 06:34:52 GMT): suva (Fri, 23 Mar 2018 06:34:55 GMT): suva (Fri, 23 Mar 2018 06:36:01 GMT): suva (Fri, 23 Mar 2018 06:36:11 GMT): suva (Fri, 23 Mar 2018 06:36:25 GMT): suva (Fri, 23 Mar 2018 06:36:37 GMT): SamuelDare (Fri, 23 Mar 2018 06:44:44 GMT): bourbonkidQ (Fri, 23 Mar 2018 06:44:44 GMT): suva (Fri, 23 Mar 2018 06:48:36 GMT): suva (Fri, 23 Mar 2018 06:56:22 GMT): amy_xu22 (Fri, 23 Mar 2018 07:21:45 GMT): MrLongmire (Fri, 23 Mar 2018 07:46:00 GMT): alexdevassy (Fri, 23 Mar 2018 08:05:04 GMT): ibmiotspark (Fri, 23 Mar 2018 08:16:51 GMT): ibmiotspark (Fri, 23 Mar 2018 08:17:52 GMT): SamuelDare (Fri, 23 Mar 2018 08:18:55 GMT): SamuelDare (Fri, 23 Mar 2018 08:21:17 GMT): SamuelDare (Fri, 23 Mar 2018 08:22:07 GMT): SamuelDare (Fri, 23 Mar 2018 08:22:44 GMT): SamuelDare (Fri, 23 Mar 2018 08:22:44 GMT): SamuelDare (Fri, 23 Mar 2018 08:22:44 GMT): Ambros 3 (Fri, 23 Mar 2018 08:53:03 GMT): Ambros 3 (Fri, 23 Mar 2018 08:53:03 GMT): Ambros 3 (Fri, 23 Mar 2018 08:54:55 GMT): LifeOcean (Fri, 23 Mar 2018 09:25:41 GMT): mahoney1 (Fri, 23 Mar 2018 10:38:42 GMT): mahoney1 (Fri, 23 Mar 2018 10:38:42 GMT): mahoney1 (Fri, 23 Mar 2018 10:53:09 GMT): mahoney1 (Fri, 23 Mar 2018 10:54:50 GMT): mahoney1 (Fri, 23 Mar 2018 10:59:44 GMT): AkshayJindal (Fri, 23 Mar 2018 11:00:20 GMT): AkshayJindal (Fri, 23 Mar 2018 11:03:06 GMT): mahoney1 (Fri, 23 Mar 2018 11:09:44 GMT): pb (Fri, 23 Mar 2018 11:33:05 GMT): pb (Fri, 23 Mar 2018 11:33:05 GMT): waleed (Fri, 23 Mar 2018 12:08:15 GMT): waleed (Fri, 23 Mar 2018 12:27:01 GMT): tennenjl (Fri, 23 Mar 2018 12:34:45 GMT): mahoney1 (Fri, 23 Mar 2018 12:35:57 GMT): mahoney1 (Fri, 23 Mar 2018 12:35:57 GMT): tennenjl (Fri, 23 Mar 2018 12:36:08 GMT): mahoney1 (Fri, 23 Mar 2018 12:36:18 GMT): waleed (Fri, 23 Mar 2018 12:45:35 GMT): joebynoe (Fri, 23 Mar 2018 13:54:48 GMT): AkshayJindal (Fri, 23 Mar 2018 14:04:37 GMT): AkshayJindal (Fri, 23 Mar 2018 14:04:37 GMT): AkshayJindal (Fri, 23 Mar 2018 14:04:37 GMT): mahoney1 (Fri, 23 Mar 2018 14:07:22 GMT): davidoevans (Fri, 23 Mar 2018 14:15:03 GMT): davidoevans (Fri, 23 Mar 2018 14:15:38 GMT): Poneey (Fri, 23 Mar 2018 14:16:14 GMT): mahoney1 (Fri, 23 Mar 2018 14:16:37 GMT): Poneey (Fri, 23 Mar 2018 14:17:11 GMT): mahoney1 (Fri, 23 Mar 2018 14:38:56 GMT): mahoney1 (Fri, 23 Mar 2018 14:38:56 GMT): mahoney1 (Fri, 23 Mar 2018 14:41:36 GMT): Poneey (Fri, 23 Mar 2018 14:42:33 GMT): Poneey (Fri, 23 Mar 2018 14:45:47 GMT): mahoney1 (Fri, 23 Mar 2018 14:48:28 GMT): davidoevans (Fri, 23 Mar 2018 14:49:05 GMT): mahoney1 (Fri, 23 Mar 2018 14:54:47 GMT): mahoney1 (Fri, 23 Mar 2018 14:54:47 GMT): mahoney1 (Fri, 23 Mar 2018 14:54:47 GMT): mahoney1 (Fri, 23 Mar 2018 14:54:47 GMT): Poneey (Fri, 23 Mar 2018 14:59:39 GMT): davidoevans (Fri, 23 Mar 2018 15:00:49 GMT): davidoevans (Fri, 23 Mar 2018 15:00:49 GMT): davidoevans (Fri, 23 Mar 2018 15:00:49 GMT): tennenjl (Fri, 23 Mar 2018 15:09:14 GMT): mahoney1 (Fri, 23 Mar 2018 15:10:15 GMT): mahoney1 (Fri, 23 Mar 2018 15:10:15 GMT): davidoevans (Fri, 23 Mar 2018 15:12:34 GMT): davidoevans (Fri, 23 Mar 2018 15:13:06 GMT): mahoney1 (Fri, 23 Mar 2018 15:14:25 GMT): davidoevans (Fri, 23 Mar 2018 15:16:58 GMT): mahoney1 (Fri, 23 Mar 2018 15:30:58 GMT): AkshayJindal (Fri, 23 Mar 2018 15:33:39 GMT): AkshayJindal (Fri, 23 Mar 2018 15:33:39 GMT): davidoevans (Fri, 23 Mar 2018 15:35:01 GMT): davidoevans (Fri, 23 Mar 2018 15:35:01 GMT): davidoevans (Fri, 23 Mar 2018 15:35:01 GMT): davidoevans (Fri, 23 Mar 2018 15:41:43 GMT): a.ochs (Fri, 23 Mar 2018 15:45:35 GMT): mostafa.elsayyad (Fri, 23 Mar 2018 16:11:27 GMT): mahoney1 (Fri, 23 Mar 2018 16:15:53 GMT): a.ochs (Fri, 23 Mar 2018 16:20:48 GMT): mahoney1 (Fri, 23 Mar 2018 16:32:08 GMT): AkshayJindal (Fri, 23 Mar 2018 16:58:18 GMT): mahoney1 (Fri, 23 Mar 2018 17:02:32 GMT): mahoney1 (Fri, 23 Mar 2018 17:07:34 GMT): mahoney1 (Fri, 23 Mar 2018 17:36:21 GMT): mahoney1 (Fri, 23 Mar 2018 17:38:06 GMT): y2255236 (Fri, 23 Mar 2018 17:39:49 GMT): AkshayJindal (Fri, 23 Mar 2018 17:53:14 GMT): AkshayJindal (Fri, 23 Mar 2018 17:53:14 GMT): AkshayJindal (Fri, 23 Mar 2018 17:53:14 GMT): mahoney1 (Fri, 23 Mar 2018 17:59:44 GMT): mahoney1 (Fri, 23 Mar 2018 18:01:32 GMT): VamzR (Fri, 23 Mar 2018 18:10:54 GMT): VamzR (Fri, 23 Mar 2018 18:11:22 GMT): mahoney1 (Fri, 23 Mar 2018 18:16:19 GMT): VamzR (Fri, 23 Mar 2018 18:17:45 GMT): mahoney1 (Fri, 23 Mar 2018 18:23:01 GMT): andreosti (Fri, 23 Mar 2018 18:25:07 GMT): waleed (Fri, 23 Mar 2018 18:31:00 GMT): waleed (Fri, 23 Mar 2018 18:31:04 GMT): waleed (Fri, 23 Mar 2018 18:31:26 GMT): mahoney1 (Fri, 23 Mar 2018 18:32:06 GMT): mahoney1 (Fri, 23 Mar 2018 18:34:33 GMT): mahoney1 (Fri, 23 Mar 2018 18:34:40 GMT): mahoney1 (Fri, 23 Mar 2018 18:35:50 GMT): mahoney1 (Fri, 23 Mar 2018 18:35:50 GMT): mahoney1 (Fri, 23 Mar 2018 18:35:50 GMT): VamzR (Fri, 23 Mar 2018 18:37:38 GMT): mahoney1 (Fri, 23 Mar 2018 18:39:12 GMT): VamzR (Fri, 23 Mar 2018 18:39:30 GMT): VamzR (Fri, 23 Mar 2018 18:39:45 GMT): mahoney1 (Fri, 23 Mar 2018 18:43:28 GMT): mahoney1 (Fri, 23 Mar 2018 18:43:28 GMT): waleed (Fri, 23 Mar 2018 18:45:57 GMT): waleed (Fri, 23 Mar 2018 18:46:51 GMT): waleed (Fri, 23 Mar 2018 18:46:54 GMT): mahoney1 (Fri, 23 Mar 2018 18:48:28 GMT): mahoney1 (Fri, 23 Mar 2018 18:48:28 GMT): mahoney1 (Fri, 23 Mar 2018 18:49:08 GMT): VamzR (Fri, 23 Mar 2018 19:08:02 GMT): mahoney1 (Fri, 23 Mar 2018 19:14:48 GMT): remyabdullahi (Fri, 23 Mar 2018 19:49:53 GMT): leonsp (Fri, 23 Mar 2018 19:51:15 GMT): y2255236 (Fri, 23 Mar 2018 19:54:21 GMT): andreosti (Fri, 23 Mar 2018 19:58:42 GMT): remyabdullahi (Fri, 23 Mar 2018 20:24:21 GMT): peter-choe (Fri, 23 Mar 2018 22:32:51 GMT): mikeleow (Sat, 24 Mar 2018 02:52:15 GMT): mikeleow (Sat, 24 Mar 2018 02:59:23 GMT): vancemorris (Sat, 24 Mar 2018 03:48:00 GMT): vancemorris (Sat, 24 Mar 2018 03:48:18 GMT): czar0 (Sat, 24 Mar 2018 11:37:55 GMT): Preetam007 (Sat, 24 Mar 2018 11:42:37 GMT): mikeleow (Sat, 24 Mar 2018 11:55:59 GMT): mikeleow (Sat, 24 Mar 2018 11:56:01 GMT): mikeleow (Sat, 24 Mar 2018 11:56:07 GMT): mikeleow (Sat, 24 Mar 2018 11:56:21 GMT): mikeleow (Sat, 24 Mar 2018 11:56:25 GMT): mikeleow (Sat, 24 Mar 2018 11:57:02 GMT): AkshayJindal (Sat, 24 Mar 2018 14:36:50 GMT): AkshayJindal (Sat, 24 Mar 2018 14:36:50 GMT): MuhammadSalah (Sat, 24 Mar 2018 15:38:38 GMT): MuhammadSalah (Sat, 24 Mar 2018 15:46:05 GMT): MuhammadSalah (Sat, 24 Mar 2018 15:46:16 GMT): MuhammadSalah (Sat, 24 Mar 2018 15:46:36 GMT): andreasp1994 (Sat, 24 Mar 2018 19:18:03 GMT): balabky9 (Sat, 24 Mar 2018 19:44:09 GMT): balabky9 (Sat, 24 Mar 2018 19:46:01 GMT): balabky9 (Sat, 24 Mar 2018 19:46:34 GMT): marksta (Sat, 24 Mar 2018 19:54:44 GMT): andreasp1994 (Sat, 24 Mar 2018 20:02:24 GMT): kunalkukreja (Sat, 24 Mar 2018 21:05:19 GMT): hshahtibco (Sat, 24 Mar 2018 21:13:18 GMT): amongv587 (Sun, 25 Mar 2018 00:50:51 GMT): Spicy5Shumai (Sun, 25 Mar 2018 03:34:58 GMT): mikeleow (Sun, 25 Mar 2018 04:17:41 GMT): mikeleow (Sun, 25 Mar 2018 04:18:21 GMT): swpnl7 (Sun, 25 Mar 2018 05:03:35 GMT): swpnl7 (Sun, 25 Mar 2018 05:41:06 GMT): GauravChaudhari (Sun, 25 Mar 2018 10:43:17 GMT): GauravChaudhari (Sun, 25 Mar 2018 10:43:32 GMT): GauravChaudhari (Sun, 25 Mar 2018 10:43:40 GMT): dubdabasoduba (Sun, 25 Mar 2018 11:35:42 GMT): davidhu (Sun, 25 Mar 2018 12:46:50 GMT): saurabharora (Sun, 25 Mar 2018 13:26:44 GMT): fgtortosa (Sun, 25 Mar 2018 19:43:36 GMT): sensahin (Sun, 25 Mar 2018 20:49:37 GMT): horeaporutiu (Sun, 25 Mar 2018 23:52:49 GMT): horeaporutiu (Sun, 25 Mar 2018 23:54:26 GMT): MikeC711 (Mon, 26 Mar 2018 00:17:49 GMT): MikeC711 (Mon, 26 Mar 2018 00:35:04 GMT): MikeC711 (Mon, 26 Mar 2018 00:38:01 GMT): MikeC711 (Mon, 26 Mar 2018 00:59:28 GMT): mikeleow (Mon, 26 Mar 2018 02:46:08 GMT): mikeleow (Mon, 26 Mar 2018 02:46:38 GMT): RohanMudaliar (Mon, 26 Mar 2018 03:42:56 GMT): RohanMudaliar (Mon, 26 Mar 2018 03:46:08 GMT): PirangPhan (Mon, 26 Mar 2018 04:09:21 GMT): mikeleow (Mon, 26 Mar 2018 06:16:09 GMT): mikeleow (Mon, 26 Mar 2018 06:16:21 GMT): ManojJain (Mon, 26 Mar 2018 06:26:27 GMT): ManojJain (Mon, 26 Mar 2018 06:26:50 GMT): pb (Mon, 26 Mar 2018 06:37:19 GMT): Mohammed_Azhar (Mon, 26 Mar 2018 06:49:32 GMT): gaeshi (Mon, 26 Mar 2018 06:53:03 GMT): chessequality (Mon, 26 Mar 2018 07:11:01 GMT): ajmeraharsh (Mon, 26 Mar 2018 07:29:17 GMT): suva (Mon, 26 Mar 2018 07:59:25 GMT): suva (Mon, 26 Mar 2018 07:59:31 GMT): Laxminarayana (Mon, 26 Mar 2018 08:03:28 GMT): rthatcher (Mon, 26 Mar 2018 08:34:14 GMT): rthatcher (Mon, 26 Mar 2018 08:35:14 GMT): rthatcher (Mon, 26 Mar 2018 08:36:24 GMT): ittomato (Mon, 26 Mar 2018 08:41:43 GMT): ittomato (Mon, 26 Mar 2018 08:42:44 GMT): rthatcher (Mon, 26 Mar 2018 08:52:14 GMT): dpurnima0709 (Mon, 26 Mar 2018 08:54:13 GMT): rthatcher (Mon, 26 Mar 2018 09:08:37 GMT): Laxminarayana (Mon, 26 Mar 2018 09:16:26 GMT): Laxminarayana (Mon, 26 Mar 2018 09:19:18 GMT): xy250400 (Mon, 26 Mar 2018 09:20:31 GMT): Maiby (Mon, 26 Mar 2018 09:23:10 GMT): rthatcher (Mon, 26 Mar 2018 09:29:36 GMT): rthatcher (Mon, 26 Mar 2018 09:30:34 GMT): xy250400 (Mon, 26 Mar 2018 09:32:36 GMT): xy250400 (Mon, 26 Mar 2018 09:33:00 GMT): iserikov (Mon, 26 Mar 2018 09:33:29 GMT): xy250400 (Mon, 26 Mar 2018 09:33:56 GMT): iserikov (Mon, 26 Mar 2018 09:34:31 GMT): Paradox (Mon, 26 Mar 2018 09:43:11 GMT): Paradox (Mon, 26 Mar 2018 09:43:11 GMT): Paradox (Mon, 26 Mar 2018 09:43:11 GMT): Paradox (Mon, 26 Mar 2018 09:43:11 GMT): Paradox (Mon, 26 Mar 2018 09:43:11 GMT): rthatcher (Mon, 26 Mar 2018 09:46:59 GMT): iserikov (Mon, 26 Mar 2018 09:48:08 GMT): rthatcher (Mon, 26 Mar 2018 10:06:40 GMT): Paradox (Mon, 26 Mar 2018 10:06:57 GMT): Paradox (Mon, 26 Mar 2018 10:06:57 GMT): rthatcher (Mon, 26 Mar 2018 10:19:26 GMT): ChrisMcQueenDevelopment (Mon, 26 Mar 2018 10:22:15 GMT): rthatcher (Mon, 26 Mar 2018 10:49:34 GMT): ChrisMcQueenDevelopment (Mon, 26 Mar 2018 10:50:06 GMT): ChrisMcQueenDevelopment (Mon, 26 Mar 2018 11:04:22 GMT): DRSK (Mon, 26 Mar 2018 11:27:12 GMT): DigitalChangeGeek (Mon, 26 Mar 2018 12:02:11 GMT): uber.twin (Mon, 26 Mar 2018 12:15:15 GMT): uber.twin (Mon, 26 Mar 2018 12:15:15 GMT): uber.twin (Mon, 26 Mar 2018 12:15:15 GMT): uber.twin (Mon, 26 Mar 2018 12:15:15 GMT): ManojJain (Mon, 26 Mar 2018 12:56:00 GMT): ManojJain (Mon, 26 Mar 2018 12:57:46 GMT): ManojJain (Mon, 26 Mar 2018 12:58:24 GMT): ManojJain (Mon, 26 Mar 2018 12:59:23 GMT): ManojJain (Mon, 26 Mar 2018 12:59:47 GMT): ManojJain (Mon, 26 Mar 2018 12:59:47 GMT): lkchao78 (Mon, 26 Mar 2018 13:02:02 GMT): lkchao78 (Mon, 26 Mar 2018 13:02:02 GMT): lkchao78 (Mon, 26 Mar 2018 13:02:02 GMT): Paradox (Mon, 26 Mar 2018 13:28:06 GMT): Paradox (Mon, 26 Mar 2018 13:28:06 GMT): Paradox (Mon, 26 Mar 2018 13:30:42 GMT): Paradox (Mon, 26 Mar 2018 13:31:05 GMT): Paradox (Mon, 26 Mar 2018 13:31:05 GMT): Paradox (Mon, 26 Mar 2018 13:31:05 GMT): ChrisMcQueenDevelopment (Mon, 26 Mar 2018 13:33:11 GMT): rthatcher (Mon, 26 Mar 2018 14:00:23 GMT): rthatcher (Mon, 26 Mar 2018 14:17:41 GMT): rthatcher (Mon, 26 Mar 2018 14:22:06 GMT): rthatcher (Mon, 26 Mar 2018 14:22:06 GMT): CorentinPacaud (Mon, 26 Mar 2018 14:25:10 GMT): lkchao78 (Mon, 26 Mar 2018 14:27:36 GMT): lkchao78 (Mon, 26 Mar 2018 14:27:36 GMT): lkchao78 (Mon, 26 Mar 2018 14:27:36 GMT): varunagarwal (Mon, 26 Mar 2018 14:29:36 GMT): varunagarwal (Mon, 26 Mar 2018 14:30:03 GMT): rthatcher (Mon, 26 Mar 2018 14:30:21 GMT): varunagarwal (Mon, 26 Mar 2018 14:31:27 GMT): CorentinPacaud (Mon, 26 Mar 2018 14:36:08 GMT): CorentinPacaud (Mon, 26 Mar 2018 14:39:47 GMT): mikeleow (Mon, 26 Mar 2018 14:49:10 GMT): CorentinPacaud (Mon, 26 Mar 2018 14:50:33 GMT): CorentinPacaud (Mon, 26 Mar 2018 14:50:41 GMT): mikeleow (Mon, 26 Mar 2018 14:55:37 GMT): mikeleow (Mon, 26 Mar 2018 14:55:42 GMT): grice_32 (Mon, 26 Mar 2018 14:58:41 GMT): mikeleow (Mon, 26 Mar 2018 15:00:41 GMT): grice_32 (Mon, 26 Mar 2018 15:01:45 GMT): CorentinPacaud (Mon, 26 Mar 2018 15:04:44 GMT): grice_32 (Mon, 26 Mar 2018 15:06:08 GMT): CorentinPacaud (Mon, 26 Mar 2018 15:06:44 GMT): AkshayJindal (Mon, 26 Mar 2018 15:21:29 GMT): Gerard9494 (Mon, 26 Mar 2018 15:22:15 GMT): ChrisMcQueenDevelopment (Mon, 26 Mar 2018 15:36:11 GMT): fabienpe (Mon, 26 Mar 2018 15:38:40 GMT): MattHamilton (Mon, 26 Mar 2018 15:43:27 GMT): fabienpe (Mon, 26 Mar 2018 15:46:32 GMT): fabienpe (Mon, 26 Mar 2018 15:46:32 GMT): ChrisMcQueenDevelopment (Mon, 26 Mar 2018 15:47:29 GMT): rthatcher (Mon, 26 Mar 2018 15:51:39 GMT): AkshayJindal (Mon, 26 Mar 2018 15:55:26 GMT): rthatcher (Mon, 26 Mar 2018 15:56:23 GMT): rthatcher (Mon, 26 Mar 2018 15:58:33 GMT): rthatcher (Mon, 26 Mar 2018 15:58:33 GMT): rthatcher (Mon, 26 Mar 2018 16:01:26 GMT): AkshayJindal (Mon, 26 Mar 2018 16:19:27 GMT): AkshayJindal (Mon, 26 Mar 2018 16:19:27 GMT): mynet (Mon, 26 Mar 2018 16:44:34 GMT): mahoney1 (Mon, 26 Mar 2018 16:59:05 GMT): davidoevans (Mon, 26 Mar 2018 17:41:25 GMT): davidoevans (Mon, 26 Mar 2018 17:41:25 GMT): andreosti (Mon, 26 Mar 2018 18:35:46 GMT): Tuoba (Mon, 26 Mar 2018 19:36:26 GMT): phanikumar (Mon, 26 Mar 2018 19:41:05 GMT): expherience (Mon, 26 Mar 2018 20:36:12 GMT): Hatchi 1 (Mon, 26 Mar 2018 20:37:49 GMT): cristiancl25 (Mon, 26 Mar 2018 20:58:18 GMT): SumanthKodumuru (Mon, 26 Mar 2018 21:20:57 GMT): akshatbh (Mon, 26 Mar 2018 23:12:51 GMT): aharita (Mon, 26 Mar 2018 23:42:42 GMT): yjqdgx (Tue, 27 Mar 2018 02:59:45 GMT): yjqdgx (Tue, 27 Mar 2018 02:59:53 GMT): yjqdgx (Tue, 27 Mar 2018 03:00:43 GMT): DRSK (Tue, 27 Mar 2018 04:46:41 GMT): jaswanth (Tue, 27 Mar 2018 05:28:55 GMT): davidhu (Tue, 27 Mar 2018 06:22:58 GMT): gaeshi (Tue, 27 Mar 2018 06:28:39 GMT): davidhu (Tue, 27 Mar 2018 06:31:09 GMT): gaeshi (Tue, 27 Mar 2018 06:31:31 GMT): gaeshi (Tue, 27 Mar 2018 06:31:31 GMT): davidhu (Tue, 27 Mar 2018 06:33:46 GMT): davidhu (Tue, 27 Mar 2018 06:52:46 GMT): fabienpe (Tue, 27 Mar 2018 07:10:46 GMT): fabienpe (Tue, 27 Mar 2018 07:10:46 GMT): trilochanachary (Tue, 27 Mar 2018 07:34:17 GMT): Gerard9494 (Tue, 27 Mar 2018 07:34:29 GMT): Ismaildileep (Tue, 27 Mar 2018 07:48:04 GMT): yjqdgx (Tue, 27 Mar 2018 08:17:16 GMT): yjqdgx (Tue, 27 Mar 2018 08:18:29 GMT): rocket.cat (Tue, 27 Mar 2018 08:18:30 GMT): AkshayJindal (Tue, 27 Mar 2018 08:43:02 GMT): rthatcher (Tue, 27 Mar 2018 08:43:45 GMT): rthatcher (Tue, 27 Mar 2018 08:47:19 GMT): rthatcher (Tue, 27 Mar 2018 08:53:32 GMT): AkshayJindal (Tue, 27 Mar 2018 09:10:15 GMT): rthatcher (Tue, 27 Mar 2018 09:10:21 GMT): AkshayJindal (Tue, 27 Mar 2018 09:20:39 GMT): AkshayJindal (Tue, 27 Mar 2018 09:20:39 GMT): jaswanth (Tue, 27 Mar 2018 09:22:17 GMT): rthatcher (Tue, 27 Mar 2018 09:22:30 GMT): rthatcher (Tue, 27 Mar 2018 09:26:23 GMT): jaswanth (Tue, 27 Mar 2018 09:32:24 GMT): jaswanth (Tue, 27 Mar 2018 09:32:24 GMT): zian.yusuf (Tue, 27 Mar 2018 09:42:07 GMT): AkshayJindal (Tue, 27 Mar 2018 09:58:02 GMT): kevinsyx (Tue, 27 Mar 2018 10:14:09 GMT): pedromlcosta (Tue, 27 Mar 2018 11:33:22 GMT): Pranoti (Tue, 27 Mar 2018 11:58:05 GMT): Pranoti (Tue, 27 Mar 2018 11:58:05 GMT): Pranoti (Tue, 27 Mar 2018 11:58:05 GMT): Pranoti (Tue, 27 Mar 2018 11:58:05 GMT): LuigiRiva (Tue, 27 Mar 2018 12:00:11 GMT): LuigiRiva (Tue, 27 Mar 2018 12:05:43 GMT): Unni_1994 (Tue, 27 Mar 2018 12:15:02 GMT): rthatcher (Tue, 27 Mar 2018 12:23:12 GMT): phanikumar (Tue, 27 Mar 2018 12:24:33 GMT): rthatcher (Tue, 27 Mar 2018 12:26:03 GMT): rthatcher (Tue, 27 Mar 2018 12:32:25 GMT): Unni_1994 (Tue, 27 Mar 2018 12:36:04 GMT): Unni_1994 (Tue, 27 Mar 2018 12:36:13 GMT): rthatcher (Tue, 27 Mar 2018 12:37:19 GMT): Pranoti (Tue, 27 Mar 2018 12:41:53 GMT): Pranoti (Tue, 27 Mar 2018 12:41:53 GMT): kevinsyx (Tue, 27 Mar 2018 12:48:59 GMT): kevinsyx (Tue, 27 Mar 2018 12:53:17 GMT): kevinsyx (Tue, 27 Mar 2018 12:54:22 GMT): rthatcher (Tue, 27 Mar 2018 12:56:17 GMT): Pranoti (Tue, 27 Mar 2018 13:02:47 GMT): Pranoti (Tue, 27 Mar 2018 13:02:47 GMT): Pranoti (Tue, 27 Mar 2018 13:03:31 GMT): Pranoti (Tue, 27 Mar 2018 13:03:31 GMT): rthatcher (Tue, 27 Mar 2018 13:38:42 GMT): suva (Tue, 27 Mar 2018 13:48:49 GMT): suva (Tue, 27 Mar 2018 13:48:54 GMT): suva (Tue, 27 Mar 2018 13:49:11 GMT): suva (Tue, 27 Mar 2018 13:49:23 GMT): suva (Tue, 27 Mar 2018 13:49:52 GMT): suva (Tue, 27 Mar 2018 13:51:58 GMT): suva (Tue, 27 Mar 2018 13:52:00 GMT): suva (Tue, 27 Mar 2018 13:53:08 GMT): suva (Tue, 27 Mar 2018 13:53:21 GMT): suva (Tue, 27 Mar 2018 13:53:25 GMT): davidoevans (Tue, 27 Mar 2018 13:54:45 GMT): Pranoti (Tue, 27 Mar 2018 13:54:50 GMT): rthatcher (Tue, 27 Mar 2018 14:04:11 GMT): uber.twin (Tue, 27 Mar 2018 14:06:51 GMT): argman (Tue, 27 Mar 2018 14:21:33 GMT): rthatcher (Tue, 27 Mar 2018 14:31:51 GMT): kevinsyx (Tue, 27 Mar 2018 14:38:37 GMT): rthatcher (Tue, 27 Mar 2018 14:39:14 GMT): rthatcher (Tue, 27 Mar 2018 14:43:02 GMT): pedromlcosta (Tue, 27 Mar 2018 15:16:04 GMT): akshatbh (Tue, 27 Mar 2018 16:06:24 GMT): akshatbh (Tue, 27 Mar 2018 16:06:24 GMT): akshatbh (Tue, 27 Mar 2018 17:18:59 GMT): akshatbh (Tue, 27 Mar 2018 17:19:32 GMT): kipharris (Tue, 27 Mar 2018 17:22:03 GMT): kipharris (Tue, 27 Mar 2018 17:29:22 GMT): thoduerr (Tue, 27 Mar 2018 21:38:37 GMT): BharatVerma (Wed, 28 Mar 2018 01:30:08 GMT): nekia (Wed, 28 Mar 2018 02:28:03 GMT): xy250400 (Wed, 28 Mar 2018 02:32:40 GMT): xy250400 (Wed, 28 Mar 2018 02:32:46 GMT): xy250400 (Wed, 28 Mar 2018 02:35:13 GMT): davidhu (Wed, 28 Mar 2018 02:54:11 GMT): davidhu (Wed, 28 Mar 2018 02:54:42 GMT): davidhu (Wed, 28 Mar 2018 02:54:43 GMT): davidhu (Wed, 28 Mar 2018 02:55:09 GMT): davidhu (Wed, 28 Mar 2018 02:56:17 GMT): iperrota (Wed, 28 Mar 2018 03:18:34 GMT): pb (Wed, 28 Mar 2018 03:48:29 GMT): davidhu (Wed, 28 Mar 2018 03:50:34 GMT): username343 (Wed, 28 Mar 2018 04:48:25 GMT): username343 (Wed, 28 Mar 2018 04:48:39 GMT): username343 (Wed, 28 Mar 2018 04:49:31 GMT): xy250400 (Wed, 28 Mar 2018 05:25:59 GMT): xy250400 (Wed, 28 Mar 2018 05:26:24 GMT): kingofsevens (Wed, 28 Mar 2018 06:09:54 GMT): Varun2887 (Wed, 28 Mar 2018 06:36:49 GMT): Varun2887 (Wed, 28 Mar 2018 06:38:49 GMT): davidhu (Wed, 28 Mar 2018 06:46:26 GMT): davidhu (Wed, 28 Mar 2018 06:46:47 GMT): davidhu (Wed, 28 Mar 2018 06:47:27 GMT): davidhu (Wed, 28 Mar 2018 06:48:21 GMT): argman (Wed, 28 Mar 2018 06:54:21 GMT): Varun2887 (Wed, 28 Mar 2018 07:36:31 GMT): Varun2887 (Wed, 28 Mar 2018 07:52:49 GMT): Varun2887 (Wed, 28 Mar 2018 07:53:15 GMT): Varun2887 (Wed, 28 Mar 2018 07:53:15 GMT): Varun2887 (Wed, 28 Mar 2018 07:55:04 GMT): a.ochs (Wed, 28 Mar 2018 07:56:17 GMT): a.ochs (Wed, 28 Mar 2018 07:58:50 GMT): sghosh2 (Wed, 28 Mar 2018 08:40:58 GMT): sghosh2 (Wed, 28 Mar 2018 08:41:12 GMT): sghosh2 (Wed, 28 Mar 2018 08:41:14 GMT): lesleyannj (Wed, 28 Mar 2018 09:01:30 GMT): username343 (Wed, 28 Mar 2018 09:20:17 GMT): lkchao78 (Wed, 28 Mar 2018 09:25:16 GMT): Gerard9494 (Wed, 28 Mar 2018 09:26:33 GMT): Gerard9494 (Wed, 28 Mar 2018 09:26:33 GMT): Paradox (Wed, 28 Mar 2018 09:40:53 GMT): arpitsoman (Wed, 28 Mar 2018 09:44:25 GMT): Paradox (Wed, 28 Mar 2018 09:47:43 GMT): username343 (Wed, 28 Mar 2018 09:49:42 GMT): majkowski (Wed, 28 Mar 2018 09:50:27 GMT): username343 (Wed, 28 Mar 2018 09:50:40 GMT): Ambros 3 (Wed, 28 Mar 2018 09:52:21 GMT): Ambros 3 (Wed, 28 Mar 2018 09:52:21 GMT): majkowski (Wed, 28 Mar 2018 09:54:54 GMT): Gerard9494 (Wed, 28 Mar 2018 10:07:40 GMT): argman (Wed, 28 Mar 2018 10:13:37 GMT): itskhushal (Wed, 28 Mar 2018 10:49:33 GMT): suva (Wed, 28 Mar 2018 10:53:14 GMT): suva (Wed, 28 Mar 2018 10:53:15 GMT): suva (Wed, 28 Mar 2018 10:53:33 GMT): suva (Wed, 28 Mar 2018 10:53:41 GMT): suva (Wed, 28 Mar 2018 10:55:49 GMT): suva (Wed, 28 Mar 2018 10:55:59 GMT): suva (Wed, 28 Mar 2018 10:56:11 GMT): suva (Wed, 28 Mar 2018 11:04:20 GMT): suva (Wed, 28 Mar 2018 11:05:19 GMT): suva (Wed, 28 Mar 2018 11:05:27 GMT): suva (Wed, 28 Mar 2018 11:05:44 GMT): suva (Wed, 28 Mar 2018 11:06:30 GMT): davidhu (Wed, 28 Mar 2018 11:07:11 GMT): davidhu (Wed, 28 Mar 2018 11:07:30 GMT): davidhu (Wed, 28 Mar 2018 11:07:49 GMT): LuigiRiva (Wed, 28 Mar 2018 12:02:59 GMT): Paradox (Wed, 28 Mar 2018 12:10:13 GMT): Paradox (Wed, 28 Mar 2018 12:10:13 GMT): Paradox (Wed, 28 Mar 2018 12:21:09 GMT): Paradox (Wed, 28 Mar 2018 12:21:09 GMT): davidhu (Wed, 28 Mar 2018 12:30:44 GMT): ppcm (Wed, 28 Mar 2018 12:37:23 GMT): Varun2887 (Wed, 28 Mar 2018 12:37:41 GMT): Varun2887 (Wed, 28 Mar 2018 12:37:44 GMT): Varun2887 (Wed, 28 Mar 2018 12:37:59 GMT): Varun2887 (Wed, 28 Mar 2018 12:38:15 GMT): ppcm (Wed, 28 Mar 2018 12:39:09 GMT): ppcm (Wed, 28 Mar 2018 12:39:09 GMT): ppcm (Wed, 28 Mar 2018 12:39:18 GMT): ppcm (Wed, 28 Mar 2018 12:45:07 GMT): Gerard9494 (Wed, 28 Mar 2018 12:45:40 GMT): guns 4 (Wed, 28 Mar 2018 12:57:26 GMT): Gerard9494 (Wed, 28 Mar 2018 13:22:35 GMT): suva (Wed, 28 Mar 2018 13:36:09 GMT): Poneey (Wed, 28 Mar 2018 13:53:14 GMT): username343 (Wed, 28 Mar 2018 13:57:56 GMT): username343 (Wed, 28 Mar 2018 13:59:19 GMT): username343 (Wed, 28 Mar 2018 13:59:27 GMT): Poneey (Wed, 28 Mar 2018 14:32:57 GMT): moucx (Wed, 28 Mar 2018 14:40:16 GMT): ChrisMcQueenDevelopment (Wed, 28 Mar 2018 16:08:20 GMT): Gerard9494 (Wed, 28 Mar 2018 16:19:05 GMT): MichaelCutrer (Wed, 28 Mar 2018 16:27:59 GMT): MichaelCutrer (Wed, 28 Mar 2018 16:28:18 GMT): MichaelCutrer (Wed, 28 Mar 2018 16:29:09 GMT): KOttoni (Wed, 28 Mar 2018 16:51:13 GMT): sagargarg (Wed, 28 Mar 2018 17:46:28 GMT): sagargarg (Wed, 28 Mar 2018 17:54:06 GMT): mihaipruna (Wed, 28 Mar 2018 17:54:41 GMT): Bjodn (Wed, 28 Mar 2018 18:14:23 GMT): Bjodn (Wed, 28 Mar 2018 18:21:57 GMT): alexvicegrab (Wed, 28 Mar 2018 18:22:47 GMT): sstone1 (Wed, 28 Mar 2018 18:25:59 GMT): Katsnelson (Wed, 28 Mar 2018 19:14:59 GMT): sghosh2 (Wed, 28 Mar 2018 19:18:40 GMT): phanikumar (Wed, 28 Mar 2018 19:25:38 GMT): sghosh2 (Wed, 28 Mar 2018 20:02:52 GMT): sstone1 (Wed, 28 Mar 2018 20:05:27 GMT): phanikumar (Wed, 28 Mar 2018 20:15:39 GMT): phanikumar (Wed, 28 Mar 2018 20:15:39 GMT): Saschaka (Wed, 28 Mar 2018 20:22:04 GMT): Saschaka (Wed, 28 Mar 2018 20:22:25 GMT): Saschaka (Wed, 28 Mar 2018 20:25:36 GMT): ranjitkumars (Wed, 28 Mar 2018 20:28:40 GMT): ranjitkumars (Wed, 28 Mar 2018 20:29:10 GMT): ranjitkumars (Wed, 28 Mar 2018 20:29:33 GMT): ranjitkumars (Wed, 28 Mar 2018 20:29:50 GMT): ranjitkumars (Wed, 28 Mar 2018 20:30:05 GMT): nitrek (Wed, 28 Mar 2018 20:30:14 GMT): ranjitkumars (Wed, 28 Mar 2018 20:30:26 GMT): ranjitkumars (Wed, 28 Mar 2018 20:30:29 GMT): ranjitkumars (Wed, 28 Mar 2018 20:30:43 GMT): nitrek (Wed, 28 Mar 2018 20:30:53 GMT): nitrek (Wed, 28 Mar 2018 20:31:38 GMT): nitrek (Wed, 28 Mar 2018 20:32:06 GMT): Saschaka (Wed, 28 Mar 2018 20:32:20 GMT): nitrek (Wed, 28 Mar 2018 20:33:26 GMT): nitrek (Wed, 28 Mar 2018 20:33:51 GMT): nitrek (Wed, 28 Mar 2018 20:34:16 GMT): ranjitkumars (Wed, 28 Mar 2018 20:34:39 GMT): Saschaka (Wed, 28 Mar 2018 20:34:40 GMT): nitrek (Wed, 28 Mar 2018 20:35:01 GMT): ranjitkumars (Wed, 28 Mar 2018 20:35:11 GMT): Saschaka (Wed, 28 Mar 2018 20:36:48 GMT): sstone1 (Wed, 28 Mar 2018 20:39:54 GMT): ranjitkumars (Wed, 28 Mar 2018 20:42:29 GMT): ranjitkumars (Wed, 28 Mar 2018 20:42:44 GMT): ranjitkumars (Wed, 28 Mar 2018 20:43:15 GMT): ranjitkumars (Wed, 28 Mar 2018 20:43:41 GMT): sstone1 (Wed, 28 Mar 2018 20:49:21 GMT): sstone1 (Wed, 28 Mar 2018 20:50:12 GMT): sstone1 (Wed, 28 Mar 2018 20:51:00 GMT): ranjitkumars (Wed, 28 Mar 2018 20:51:36 GMT): ranjitkumars (Wed, 28 Mar 2018 20:51:41 GMT): Bjodn (Wed, 28 Mar 2018 21:00:25 GMT): sghosh2 (Wed, 28 Mar 2018 21:00:28 GMT): sstone1 (Wed, 28 Mar 2018 21:00:41 GMT): sstone1 (Wed, 28 Mar 2018 21:00:45 GMT): sstone1 (Wed, 28 Mar 2018 21:00:50 GMT): sghosh2 (Wed, 28 Mar 2018 21:01:09 GMT): sstone1 (Wed, 28 Mar 2018 21:01:22 GMT): sghosh2 (Wed, 28 Mar 2018 21:01:45 GMT): sstone1 (Wed, 28 Mar 2018 21:01:54 GMT): Bjodn (Wed, 28 Mar 2018 21:05:21 GMT): ppcm (Wed, 28 Mar 2018 21:16:35 GMT): rahul-kothari (Wed, 28 Mar 2018 21:52:59 GMT): rahul-kothari (Wed, 28 Mar 2018 21:54:07 GMT): guiomie (Thu, 29 Mar 2018 03:09:12 GMT): guiomie (Thu, 29 Mar 2018 03:09:23 GMT): guiomie (Thu, 29 Mar 2018 03:09:39 GMT): guiomie (Thu, 29 Mar 2018 03:10:06 GMT): guiomie (Thu, 29 Mar 2018 03:11:17 GMT): Jean507 (Thu, 29 Mar 2018 03:11:27 GMT): guiomie (Thu, 29 Mar 2018 03:11:30 GMT): paras123 (Thu, 29 Mar 2018 03:44:22 GMT): paras123 (Thu, 29 Mar 2018 03:46:08 GMT): ppcm (Thu, 29 Mar 2018 05:28:53 GMT): labcoinpoc (Thu, 29 Mar 2018 06:04:21 GMT): labcoinpoc (Thu, 29 Mar 2018 06:10:01 GMT): labcoinpoc (Thu, 29 Mar 2018 06:10:01 GMT): ppcm (Thu, 29 Mar 2018 06:10:58 GMT): ppcm (Thu, 29 Mar 2018 06:10:58 GMT): labcoinpoc (Thu, 29 Mar 2018 06:18:04 GMT): ppcm (Thu, 29 Mar 2018 06:20:10 GMT): ppcm (Thu, 29 Mar 2018 06:20:10 GMT): labcoinpoc (Thu, 29 Mar 2018 06:25:37 GMT): username343 (Thu, 29 Mar 2018 06:26:30 GMT): ZPDCEO (Thu, 29 Mar 2018 06:28:09 GMT): ppcm (Thu, 29 Mar 2018 06:29:03 GMT): suva (Thu, 29 Mar 2018 06:36:07 GMT): suva (Thu, 29 Mar 2018 06:36:08 GMT): suva (Thu, 29 Mar 2018 06:36:56 GMT): suva (Thu, 29 Mar 2018 06:37:13 GMT): suva (Thu, 29 Mar 2018 06:37:18 GMT): suva (Thu, 29 Mar 2018 06:37:56 GMT): suva (Thu, 29 Mar 2018 06:38:04 GMT): suva (Thu, 29 Mar 2018 06:38:54 GMT): suva (Thu, 29 Mar 2018 06:38:58 GMT): ppcm (Thu, 29 Mar 2018 06:43:03 GMT): labcoinpoc (Thu, 29 Mar 2018 06:52:25 GMT): Pranoti (Thu, 29 Mar 2018 07:04:42 GMT): ppcm (Thu, 29 Mar 2018 07:16:51 GMT): Poneey (Thu, 29 Mar 2018 07:57:12 GMT): HasanOzgan (Thu, 29 Mar 2018 07:57:38 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 08:08:29 GMT): CorentinPacaud (Thu, 29 Mar 2018 08:10:19 GMT): Poneey (Thu, 29 Mar 2018 08:16:22 GMT): CorentinPacaud (Thu, 29 Mar 2018 08:17:38 GMT): suva (Thu, 29 Mar 2018 08:18:23 GMT): Poneey (Thu, 29 Mar 2018 08:22:23 GMT): labcoinpoc (Thu, 29 Mar 2018 08:22:47 GMT): CorentinPacaud (Thu, 29 Mar 2018 08:23:02 GMT): Poneey (Thu, 29 Mar 2018 08:23:41 GMT): Poneey (Thu, 29 Mar 2018 08:24:52 GMT): labcoinpoc (Thu, 29 Mar 2018 08:30:12 GMT): sstone1 (Thu, 29 Mar 2018 08:33:03 GMT): Poneey (Thu, 29 Mar 2018 08:46:41 GMT): Poneey (Thu, 29 Mar 2018 08:46:54 GMT): kevinsyx (Thu, 29 Mar 2018 08:51:02 GMT): kevinsyx (Thu, 29 Mar 2018 08:51:02 GMT): AkshayJindal (Thu, 29 Mar 2018 09:12:16 GMT): AkshayJindal (Thu, 29 Mar 2018 09:12:16 GMT): AkshayJindal (Thu, 29 Mar 2018 09:12:16 GMT): AkshayJindal (Thu, 29 Mar 2018 09:12:16 GMT): ppcm (Thu, 29 Mar 2018 09:22:35 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:28:06 GMT): davidhu (Thu, 29 Mar 2018 09:39:54 GMT): davidhu (Thu, 29 Mar 2018 09:40:14 GMT): davidhu (Thu, 29 Mar 2018 09:47:46 GMT): davidhu (Thu, 29 Mar 2018 09:47:50 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:48:48 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:49:27 GMT): davidhu (Thu, 29 Mar 2018 09:49:38 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:49:52 GMT): davidhu (Thu, 29 Mar 2018 09:49:53 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:49:57 GMT): davidhu (Thu, 29 Mar 2018 09:49:59 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:49:59 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:50:14 GMT): davidhu (Thu, 29 Mar 2018 09:50:18 GMT): username343 (Thu, 29 Mar 2018 09:51:26 GMT): davidhu (Thu, 29 Mar 2018 09:51:34 GMT): username343 (Thu, 29 Mar 2018 09:51:45 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:52:00 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:53:03 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:53:34 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:53:34 GMT): username343 (Thu, 29 Mar 2018 09:53:54 GMT): username343 (Thu, 29 Mar 2018 09:54:32 GMT): username343 (Thu, 29 Mar 2018 09:54:32 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:55:37 GMT): username343 (Thu, 29 Mar 2018 09:55:57 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:56:21 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:57:11 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 09:57:11 GMT): davidhu (Thu, 29 Mar 2018 10:01:00 GMT): davidhu (Thu, 29 Mar 2018 10:01:41 GMT): majkowski (Thu, 29 Mar 2018 10:19:10 GMT): KevinWu (Thu, 29 Mar 2018 10:21:51 GMT): KevinWu (Thu, 29 Mar 2018 10:22:14 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:22:32 GMT): KevinWu (Thu, 29 Mar 2018 10:23:04 GMT): KevinWu (Thu, 29 Mar 2018 10:23:14 GMT): KevinWu (Thu, 29 Mar 2018 10:23:33 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:23:59 GMT): kevinsyx (Thu, 29 Mar 2018 10:25:44 GMT): kevinsyx (Thu, 29 Mar 2018 10:25:48 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:27:06 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:27:06 GMT): davidhu (Thu, 29 Mar 2018 10:27:32 GMT): davidhu (Thu, 29 Mar 2018 10:27:38 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:29:05 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:29:11 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:29:40 GMT): sanjayjaiswal (Thu, 29 Mar 2018 10:30:36 GMT): KevinWu (Thu, 29 Mar 2018 10:32:13 GMT): davidhu (Thu, 29 Mar 2018 10:36:23 GMT): davidhu (Thu, 29 Mar 2018 10:36:24 GMT): Poneey (Thu, 29 Mar 2018 10:37:03 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:37:46 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:37:46 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:37:46 GMT): davidhu (Thu, 29 Mar 2018 10:38:59 GMT): davidhu (Thu, 29 Mar 2018 10:39:03 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:39:33 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:39:40 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:40:20 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:40:20 GMT): davidhu (Thu, 29 Mar 2018 10:41:35 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:41:50 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:42:32 GMT): davidhu (Thu, 29 Mar 2018 10:43:04 GMT): Poneey (Thu, 29 Mar 2018 10:44:31 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:44:41 GMT): Poneey (Thu, 29 Mar 2018 10:45:01 GMT): davidhu (Thu, 29 Mar 2018 10:45:27 GMT): pmcosta1 (Thu, 29 Mar 2018 10:45:37 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:46:06 GMT): davidhu (Thu, 29 Mar 2018 10:47:23 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 10:48:53 GMT): shailaja.mahara (Thu, 29 Mar 2018 10:50:37 GMT): davidhu (Thu, 29 Mar 2018 10:52:01 GMT): davidhu (Thu, 29 Mar 2018 10:52:05 GMT): davidhu (Thu, 29 Mar 2018 10:57:33 GMT): davidhu (Thu, 29 Mar 2018 10:59:48 GMT): davidhu (Thu, 29 Mar 2018 10:59:50 GMT): davidhu (Thu, 29 Mar 2018 11:27:30 GMT): davidhu (Thu, 29 Mar 2018 11:27:47 GMT): davidhu (Thu, 29 Mar 2018 11:28:18 GMT): davidhu (Thu, 29 Mar 2018 11:29:58 GMT): davidhu (Thu, 29 Mar 2018 11:29:59 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 11:30:59 GMT): davidhu (Thu, 29 Mar 2018 11:32:58 GMT): Poneey (Thu, 29 Mar 2018 11:39:27 GMT): Poneey (Thu, 29 Mar 2018 11:50:23 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 11:50:43 GMT): Poneey (Thu, 29 Mar 2018 11:51:23 GMT): Poneey (Thu, 29 Mar 2018 11:52:12 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 11:52:39 GMT): Poneey (Thu, 29 Mar 2018 11:54:59 GMT): Poneey (Thu, 29 Mar 2018 11:55:25 GMT): Poneey (Thu, 29 Mar 2018 11:55:45 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 11:56:10 GMT): Poneey (Thu, 29 Mar 2018 11:59:39 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 12:01:01 GMT): Poneey (Thu, 29 Mar 2018 12:01:23 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 12:02:02 GMT): Poneey (Thu, 29 Mar 2018 12:03:21 GMT): Poneey (Thu, 29 Mar 2018 12:05:46 GMT): Poneey (Thu, 29 Mar 2018 12:05:56 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 12:07:05 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 12:07:36 GMT): Poneey (Thu, 29 Mar 2018 12:07:56 GMT): suva (Thu, 29 Mar 2018 12:10:24 GMT): suva (Thu, 29 Mar 2018 12:10:28 GMT): suva (Thu, 29 Mar 2018 12:11:01 GMT): suva (Thu, 29 Mar 2018 12:11:41 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 12:12:03 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 12:12:38 GMT): Poneey (Thu, 29 Mar 2018 12:15:14 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 12:15:17 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 12:15:28 GMT): suva (Thu, 29 Mar 2018 12:17:55 GMT): suva (Thu, 29 Mar 2018 12:17:58 GMT): suva (Thu, 29 Mar 2018 12:18:08 GMT): suva (Thu, 29 Mar 2018 12:18:51 GMT): suva (Thu, 29 Mar 2018 12:18:56 GMT): suva (Thu, 29 Mar 2018 12:19:17 GMT): ranjithkumarmv (Thu, 29 Mar 2018 12:19:45 GMT): suva (Thu, 29 Mar 2018 12:20:06 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 12:21:38 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 12:22:04 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 12:22:47 GMT): suva (Thu, 29 Mar 2018 12:25:39 GMT): ydennisy (Thu, 29 Mar 2018 12:35:14 GMT): ydennisy (Thu, 29 Mar 2018 12:39:12 GMT): ydennisy (Thu, 29 Mar 2018 12:40:32 GMT): argman (Thu, 29 Mar 2018 12:45:16 GMT): suva (Thu, 29 Mar 2018 12:59:49 GMT): GrondinLaurent (Thu, 29 Mar 2018 13:24:30 GMT): ydennisy (Thu, 29 Mar 2018 13:25:03 GMT): GrondinLaurent (Thu, 29 Mar 2018 13:26:30 GMT): argman (Thu, 29 Mar 2018 13:27:33 GMT): GrondinLaurent (Thu, 29 Mar 2018 13:28:59 GMT): GrondinLaurent (Thu, 29 Mar 2018 13:31:37 GMT): argman (Thu, 29 Mar 2018 13:31:43 GMT): argman (Thu, 29 Mar 2018 13:31:43 GMT): GrondinLaurent (Thu, 29 Mar 2018 13:32:39 GMT): suva (Thu, 29 Mar 2018 13:48:31 GMT): tongli (Thu, 29 Mar 2018 13:51:50 GMT): tongli (Thu, 29 Mar 2018 13:52:02 GMT): tongli (Thu, 29 Mar 2018 13:52:28 GMT): tongli (Thu, 29 Mar 2018 13:53:15 GMT): GrondinLaurent (Thu, 29 Mar 2018 13:53:29 GMT): tongli (Thu, 29 Mar 2018 13:53:39 GMT): SimonOberzan (Thu, 29 Mar 2018 13:59:28 GMT): CorentinPacaud (Thu, 29 Mar 2018 14:00:49 GMT): SimonOberzan (Thu, 29 Mar 2018 14:01:05 GMT): SimonOberzan (Thu, 29 Mar 2018 14:01:05 GMT): CorentinPacaud (Thu, 29 Mar 2018 14:02:22 GMT): SimonOberzan (Thu, 29 Mar 2018 14:03:02 GMT): SimonOberzan (Thu, 29 Mar 2018 14:03:02 GMT): CorentinPacaud (Thu, 29 Mar 2018 14:04:11 GMT): SimonOberzan (Thu, 29 Mar 2018 14:04:31 GMT): SimonOberzan (Thu, 29 Mar 2018 14:08:24 GMT): SimonOberzan (Thu, 29 Mar 2018 14:08:24 GMT): CorentinPacaud (Thu, 29 Mar 2018 14:10:02 GMT): kevinsyx (Thu, 29 Mar 2018 14:10:03 GMT): SimonOberzan (Thu, 29 Mar 2018 14:10:30 GMT): CorentinPacaud (Thu, 29 Mar 2018 14:11:46 GMT): SimonOberzan (Thu, 29 Mar 2018 14:12:15 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 14:13:03 GMT): SimonOberzan (Thu, 29 Mar 2018 14:15:27 GMT): SimonOberzan (Thu, 29 Mar 2018 14:15:27 GMT): SimonOberzan (Thu, 29 Mar 2018 14:15:27 GMT): SimonOberzan (Thu, 29 Mar 2018 14:15:27 GMT): ppcm (Thu, 29 Mar 2018 14:19:50 GMT): ppcm (Thu, 29 Mar 2018 14:19:50 GMT): ppcm (Thu, 29 Mar 2018 14:19:50 GMT): CorentinPacaud (Thu, 29 Mar 2018 14:20:12 GMT): CorentinPacaud (Thu, 29 Mar 2018 14:20:37 GMT): SimonOberzan (Thu, 29 Mar 2018 14:22:09 GMT): SimonOberzan (Thu, 29 Mar 2018 14:22:09 GMT): SimonOberzan (Thu, 29 Mar 2018 14:27:49 GMT): CorentinPacaud (Thu, 29 Mar 2018 14:29:11 GMT): SimonOberzan (Thu, 29 Mar 2018 14:32:37 GMT): CT123 (Thu, 29 Mar 2018 15:16:44 GMT): CT123 (Thu, 29 Mar 2018 15:16:44 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 15:18:04 GMT): CT123 (Thu, 29 Mar 2018 15:22:45 GMT): LegoEngineering (Thu, 29 Mar 2018 16:08:27 GMT): LegoEngineering (Thu, 29 Mar 2018 16:08:38 GMT): silliman (Thu, 29 Mar 2018 16:18:15 GMT): ChrisMcQueenDevelopment (Thu, 29 Mar 2018 16:24:59 GMT): LegoEngineering (Thu, 29 Mar 2018 16:28:25 GMT): silliman (Thu, 29 Mar 2018 16:30:54 GMT): phanikumar (Thu, 29 Mar 2018 16:32:14 GMT): silliman (Thu, 29 Mar 2018 16:38:02 GMT): LegoEngineering (Thu, 29 Mar 2018 16:54:01 GMT): silliman (Thu, 29 Mar 2018 16:57:37 GMT): poojapandey (Thu, 29 Mar 2018 18:18:46 GMT): ppcm (Thu, 29 Mar 2018 18:21:03 GMT): TreyZhong (Thu, 29 Mar 2018 18:39:23 GMT): silliman (Thu, 29 Mar 2018 19:06:30 GMT): ppcm (Thu, 29 Mar 2018 20:38:26 GMT): akshatbh (Thu, 29 Mar 2018 21:37:34 GMT): bandreghetti (Thu, 29 Mar 2018 21:46:38 GMT): tkg (Thu, 29 Mar 2018 21:57:35 GMT): phanikumar (Thu, 29 Mar 2018 22:07:47 GMT): phanikumar (Thu, 29 Mar 2018 22:07:47 GMT): obo20 (Thu, 29 Mar 2018 22:36:21 GMT): danastos (Thu, 29 Mar 2018 23:28:58 GMT): danastos (Thu, 29 Mar 2018 23:28:59 GMT): vancemorris (Thu, 29 Mar 2018 23:29:51 GMT): vancemorris (Thu, 29 Mar 2018 23:30:14 GMT): vancemorris (Thu, 29 Mar 2018 23:31:55 GMT): danastos (Thu, 29 Mar 2018 23:32:16 GMT): obo20 (Thu, 29 Mar 2018 23:33:03 GMT): obo20 (Thu, 29 Mar 2018 23:33:30 GMT): vancemorris (Thu, 29 Mar 2018 23:36:49 GMT): labcoinpoc (Fri, 30 Mar 2018 00:32:36 GMT): thanhhaibka (Fri, 30 Mar 2018 01:24:36 GMT): bamboo (Fri, 30 Mar 2018 02:04:15 GMT): kpbird (Fri, 30 Mar 2018 03:31:01 GMT): SuryanshuGupta (Fri, 30 Mar 2018 05:04:47 GMT): SuryanshuGupta (Fri, 30 Mar 2018 05:12:59 GMT): ppcm (Fri, 30 Mar 2018 05:25:05 GMT): ppcm (Fri, 30 Mar 2018 05:26:31 GMT): chandrakanthm (Fri, 30 Mar 2018 05:39:14 GMT): AaronHu007 (Fri, 30 Mar 2018 05:39:24 GMT): AaronHu007 (Fri, 30 Mar 2018 05:39:46 GMT): AaronHu007 (Fri, 30 Mar 2018 05:40:11 GMT): ppcm (Fri, 30 Mar 2018 05:42:37 GMT): AaronHu007 (Fri, 30 Mar 2018 05:43:02 GMT): ppcm (Fri, 30 Mar 2018 05:53:18 GMT): Pranoti (Fri, 30 Mar 2018 05:59:48 GMT): Pranoti (Fri, 30 Mar 2018 05:59:48 GMT): suva (Fri, 30 Mar 2018 06:18:22 GMT): satyajitsasmal1 (Fri, 30 Mar 2018 06:29:14 GMT): jmat201 (Fri, 30 Mar 2018 06:37:20 GMT): jmat201 (Fri, 30 Mar 2018 06:41:51 GMT): jmat201 (Fri, 30 Mar 2018 06:41:51 GMT): vahuja4 (Fri, 30 Mar 2018 06:43:39 GMT): vahuja4 (Fri, 30 Mar 2018 07:00:07 GMT): vahuja4 (Fri, 30 Mar 2018 07:01:07 GMT): vahuja4 (Fri, 30 Mar 2018 07:01:15 GMT): SuryanshuGupta (Fri, 30 Mar 2018 07:57:22 GMT): zealotnt (Fri, 30 Mar 2018 08:01:13 GMT): labcoinpoc (Fri, 30 Mar 2018 08:04:21 GMT): labcoinpoc (Fri, 30 Mar 2018 08:04:21 GMT): labcoinpoc (Fri, 30 Mar 2018 08:04:21 GMT): labcoinpoc (Fri, 30 Mar 2018 08:04:21 GMT): labcoinpoc (Fri, 30 Mar 2018 08:04:21 GMT): Poneey (Fri, 30 Mar 2018 08:39:20 GMT): labcoinpoc (Fri, 30 Mar 2018 08:45:14 GMT): Poneey (Fri, 30 Mar 2018 08:48:37 GMT): Poneey (Fri, 30 Mar 2018 08:53:16 GMT): labcoinpoc (Fri, 30 Mar 2018 08:54:35 GMT): Poneey (Fri, 30 Mar 2018 09:03:53 GMT): vaucouleur (Fri, 30 Mar 2018 09:13:58 GMT): RocMax (Fri, 30 Mar 2018 09:14:30 GMT): Poneey (Fri, 30 Mar 2018 09:19:05 GMT): Poneey (Fri, 30 Mar 2018 09:19:35 GMT): vahuja4 (Fri, 30 Mar 2018 09:46:07 GMT): vahuja4 (Fri, 30 Mar 2018 09:46:17 GMT): davidhu (Fri, 30 Mar 2018 10:06:20 GMT): suva (Fri, 30 Mar 2018 10:44:16 GMT): argman (Fri, 30 Mar 2018 11:05:56 GMT): SaifAli (Fri, 30 Mar 2018 11:26:36 GMT): SaifAli (Fri, 30 Mar 2018 11:37:21 GMT): ppcm (Fri, 30 Mar 2018 11:37:53 GMT): OgnjenKurtic (Fri, 30 Mar 2018 11:54:34 GMT): mikeleow (Fri, 30 Mar 2018 12:18:39 GMT): itskhushal (Fri, 30 Mar 2018 12:20:40 GMT): jmat201 (Fri, 30 Mar 2018 13:11:34 GMT): jmat201 (Fri, 30 Mar 2018 13:11:34 GMT): jmat201 (Fri, 30 Mar 2018 13:11:34 GMT): Vya4eslav (Fri, 30 Mar 2018 13:15:28 GMT): Poneey (Fri, 30 Mar 2018 13:22:41 GMT): Poneey (Fri, 30 Mar 2018 13:23:40 GMT): Poneey (Fri, 30 Mar 2018 13:27:06 GMT): jmat201 (Fri, 30 Mar 2018 13:27:48 GMT): Vya4eslav (Fri, 30 Mar 2018 13:28:23 GMT): jmat201 (Fri, 30 Mar 2018 13:29:38 GMT): Poneey (Fri, 30 Mar 2018 13:30:04 GMT): Vya4eslav (Fri, 30 Mar 2018 13:30:26 GMT): Poneey (Fri, 30 Mar 2018 13:31:53 GMT): ppcm (Fri, 30 Mar 2018 13:32:00 GMT): Poneey (Fri, 30 Mar 2018 13:34:43 GMT): jmat201 (Fri, 30 Mar 2018 14:19:37 GMT): bdjidi (Fri, 30 Mar 2018 15:10:37 GMT): grice_32 (Fri, 30 Mar 2018 15:14:57 GMT): JackStrohm (Fri, 30 Mar 2018 16:43:29 GMT): JackStrohm (Fri, 30 Mar 2018 16:45:28 GMT): cristiancl25 (Fri, 30 Mar 2018 16:47:15 GMT): sghosh2 (Fri, 30 Mar 2018 17:20:22 GMT): SuryanshuGupta (Fri, 30 Mar 2018 17:36:42 GMT): akula (Fri, 30 Mar 2018 18:09:27 GMT): arthurmsouza (Fri, 30 Mar 2018 18:35:42 GMT): ppcm (Fri, 30 Mar 2018 18:44:53 GMT): akula (Fri, 30 Mar 2018 18:50:22 GMT): akula (Fri, 30 Mar 2018 18:56:06 GMT): ppcm (Fri, 30 Mar 2018 18:59:00 GMT): ppcm (Fri, 30 Mar 2018 18:59:00 GMT): akula (Fri, 30 Mar 2018 19:00:19 GMT): ppcm (Fri, 30 Mar 2018 19:20:05 GMT): akula (Fri, 30 Mar 2018 19:20:26 GMT): balabky9 (Fri, 30 Mar 2018 20:22:02 GMT): balabky9 (Fri, 30 Mar 2018 20:22:28 GMT): balabky9 (Fri, 30 Mar 2018 20:23:05 GMT): balabky9 (Fri, 30 Mar 2018 20:23:28 GMT): balabky9 (Fri, 30 Mar 2018 20:23:48 GMT): balabky9 (Fri, 30 Mar 2018 20:24:11 GMT): balabky9 (Fri, 30 Mar 2018 20:24:27 GMT): balabky9 (Fri, 30 Mar 2018 20:27:30 GMT): balabky9 (Fri, 30 Mar 2018 20:27:36 GMT): balabky9 (Fri, 30 Mar 2018 20:29:00 GMT): ramiroquai (Fri, 30 Mar 2018 20:37:11 GMT): jorgego (Fri, 30 Mar 2018 20:49:34 GMT): MichaelCutrer (Fri, 30 Mar 2018 21:04:11 GMT): MichaelCutrer (Fri, 30 Mar 2018 21:04:14 GMT): MichaelCutrer (Fri, 30 Mar 2018 21:05:40 GMT): MichaelCutrer (Fri, 30 Mar 2018 21:06:02 GMT): vikasd (Fri, 30 Mar 2018 22:31:56 GMT): harshchaturvedi (Fri, 30 Mar 2018 23:32:34 GMT): harshchaturvedi (Fri, 30 Mar 2018 23:32:47 GMT): Kanishk_Kishore (Fri, 30 Mar 2018 23:45:12 GMT): Kanishk_Kishore (Fri, 30 Mar 2018 23:45:46 GMT): Kanishk_Kishore (Fri, 30 Mar 2018 23:45:55 GMT): Kanishk_Kishore (Fri, 30 Mar 2018 23:46:21 GMT): Kanishk_Kishore (Fri, 30 Mar 2018 23:46:50 GMT): Kanishk_Kishore (Fri, 30 Mar 2018 23:47:12 GMT): Kanishk_Kishore (Fri, 30 Mar 2018 23:47:35 GMT): Kanishk_Kishore (Fri, 30 Mar 2018 23:47:54 GMT): dara652 (Sat, 31 Mar 2018 01:50:56 GMT): dara652 (Sat, 31 Mar 2018 01:52:48 GMT): dara652 (Sat, 31 Mar 2018 02:01:42 GMT): Yi (Sat, 31 Mar 2018 06:17:26 GMT): bh4rtp (Sat, 31 Mar 2018 06:40:51 GMT): bgalande250 (Sat, 31 Mar 2018 07:24:30 GMT): SamuelDare (Sat, 31 Mar 2018 10:06:23 GMT): SriramJothiswaran (Sat, 31 Mar 2018 10:29:10 GMT): SriramJothiswaran (Sat, 31 Mar 2018 10:29:40 GMT): JiuZhuYou (Sat, 31 Mar 2018 10:34:13 GMT): danastos (Sat, 31 Mar 2018 11:25:48 GMT): Sneha (Sat, 31 Mar 2018 12:42:03 GMT): danastos (Sat, 31 Mar 2018 13:45:06 GMT): danastos (Sat, 31 Mar 2018 13:46:48 GMT): danastos (Sat, 31 Mar 2018 13:47:05 GMT): danastos (Sat, 31 Mar 2018 13:47:19 GMT): danastos (Sat, 31 Mar 2018 13:47:46 GMT): akula (Sat, 31 Mar 2018 13:49:32 GMT): akula (Sat, 31 Mar 2018 13:50:49 GMT): danastos (Sat, 31 Mar 2018 14:04:06 GMT): danastos (Sat, 31 Mar 2018 14:05:33 GMT): danastos (Sat, 31 Mar 2018 14:06:04 GMT): danastos (Sat, 31 Mar 2018 14:06:18 GMT): mctux (Sat, 31 Mar 2018 15:24:23 GMT): SriramJothiswaran (Sat, 31 Mar 2018 15:50:41 GMT): akula (Sat, 31 Mar 2018 16:27:28 GMT): grdiaz (Sat, 31 Mar 2018 16:38:15 GMT): grdiaz (Sat, 31 Mar 2018 16:39:45 GMT): grdiaz (Sat, 31 Mar 2018 16:40:08 GMT): grdiaz (Sat, 31 Mar 2018 16:40:26 GMT): grdiaz (Sat, 31 Mar 2018 16:40:40 GMT): akula (Sat, 31 Mar 2018 16:42:53 GMT): akula (Sat, 31 Mar 2018 16:43:08 GMT): akula (Sat, 31 Mar 2018 16:43:35 GMT): akula (Sat, 31 Mar 2018 16:43:46 GMT): grdiaz (Sat, 31 Mar 2018 16:43:53 GMT): akula (Sat, 31 Mar 2018 16:45:00 GMT): akula (Sat, 31 Mar 2018 16:45:12 GMT): grdiaz (Sat, 31 Mar 2018 16:54:28 GMT): obo20 (Sat, 31 Mar 2018 19:59:44 GMT): obo20 (Sat, 31 Mar 2018 19:59:57 GMT): obo20 (Sat, 31 Mar 2018 20:00:14 GMT): obo20 (Sat, 31 Mar 2018 20:00:35 GMT): obo20 (Sat, 31 Mar 2018 20:01:11 GMT): obo20 (Sat, 31 Mar 2018 20:01:25 GMT): obo20 (Sat, 31 Mar 2018 21:00:17 GMT): chainsaw (Sat, 31 Mar 2018 21:58:14 GMT): chainsaw (Sat, 31 Mar 2018 22:00:01 GMT): chainsaw (Sat, 31 Mar 2018 22:00:28 GMT): DcsCode (Sat, 31 Mar 2018 22:22:20 GMT): Kanishk_Kishore (Sun, 01 Apr 2018 01:33:28 GMT): Kanishk_Kishore (Sun, 01 Apr 2018 01:34:04 GMT): Kanishk_Kishore (Sun, 01 Apr 2018 01:35:09 GMT): Kanishk_Kishore (Sun, 01 Apr 2018 01:35:29 GMT): thalisson (Sun, 01 Apr 2018 02:38:49 GMT): akula (Sun, 01 Apr 2018 03:03:35 GMT): akula (Sun, 01 Apr 2018 03:03:44 GMT): sonluong1987 (Sun, 01 Apr 2018 03:14:41 GMT): NewToFabric (Sun, 01 Apr 2018 10:34:24 GMT): nitrek (Sun, 01 Apr 2018 13:03:02 GMT): nitrek (Sun, 01 Apr 2018 13:04:01 GMT): nitrek (Sun, 01 Apr 2018 13:04:17 GMT): nitrek (Sun, 01 Apr 2018 13:04:29 GMT): nitrek (Sun, 01 Apr 2018 13:04:33 GMT): nitrek (Sun, 01 Apr 2018 13:05:17 GMT): cbishop (Sun, 01 Apr 2018 13:10:06 GMT): bh4rtp (Sun, 01 Apr 2018 13:12:59 GMT): nitrek (Sun, 01 Apr 2018 13:14:06 GMT): bh4rtp (Sun, 01 Apr 2018 13:15:29 GMT): nitrek (Sun, 01 Apr 2018 13:17:52 GMT): nitrek (Sun, 01 Apr 2018 13:18:19 GMT): nitrek (Sun, 01 Apr 2018 13:18:31 GMT): nitrek (Sun, 01 Apr 2018 13:18:34 GMT): akula (Sun, 01 Apr 2018 13:20:12 GMT): nitrek (Sun, 01 Apr 2018 13:22:31 GMT): nitrek (Sun, 01 Apr 2018 13:22:56 GMT): bh4rtp (Sun, 01 Apr 2018 13:24:27 GMT): bh4rtp (Sun, 01 Apr 2018 13:24:27 GMT): nitrek (Sun, 01 Apr 2018 13:25:19 GMT): nitrek (Sun, 01 Apr 2018 13:25:40 GMT): akula (Sun, 01 Apr 2018 13:26:51 GMT): akula (Sun, 01 Apr 2018 13:27:16 GMT): akula (Sun, 01 Apr 2018 13:27:16 GMT): virginhost (Sun, 01 Apr 2018 13:36:53 GMT): bh4rtp (Sun, 01 Apr 2018 13:38:31 GMT): bh4rtp (Sun, 01 Apr 2018 13:38:31 GMT): LegoEngineering (Sun, 01 Apr 2018 15:51:17 GMT): uluhonolulu (Sun, 01 Apr 2018 16:16:03 GMT): johnpentester (Sun, 01 Apr 2018 16:23:32 GMT): RajathNandan (Sun, 01 Apr 2018 18:50:03 GMT): RajathNandan (Sun, 01 Apr 2018 18:51:04 GMT): sun337 (Sun, 01 Apr 2018 19:50:23 GMT): sun337 (Sun, 01 Apr 2018 19:51:27 GMT): sun337 (Sun, 01 Apr 2018 19:51:43 GMT): sun337 (Sun, 01 Apr 2018 19:52:47 GMT): sun337 (Sun, 01 Apr 2018 19:52:59 GMT): LegoEngineering (Sun, 01 Apr 2018 20:01:34 GMT): cbishop (Sun, 01 Apr 2018 20:21:56 GMT): richie9352 (Sun, 01 Apr 2018 22:45:03 GMT): BeneHei (Sun, 01 Apr 2018 23:59:38 GMT): BeneHei (Sun, 01 Apr 2018 23:59:45 GMT): kiattchaip (Mon, 02 Apr 2018 02:57:55 GMT): RajathNandan (Mon, 02 Apr 2018 05:55:08 GMT): cslijo (Mon, 02 Apr 2018 05:59:52 GMT): RajathNandan (Mon, 02 Apr 2018 05:59:54 GMT): RajathNandan (Mon, 02 Apr 2018 06:00:09 GMT): cslijo (Mon, 02 Apr 2018 06:02:18 GMT): tharzeez (Mon, 02 Apr 2018 06:31:39 GMT): songchanback (Mon, 02 Apr 2018 06:48:06 GMT): songchanback (Mon, 02 Apr 2018 06:56:12 GMT): RajathNandan (Mon, 02 Apr 2018 07:11:42 GMT): RajathNandan (Mon, 02 Apr 2018 07:13:38 GMT): sakoula (Mon, 02 Apr 2018 07:13:39 GMT): kunalkukreja (Mon, 02 Apr 2018 07:25:08 GMT): kunalkukreja (Mon, 02 Apr 2018 07:26:04 GMT): songchanback (Mon, 02 Apr 2018 08:24:31 GMT): kunalkukreja (Mon, 02 Apr 2018 08:31:44 GMT): songchanback (Mon, 02 Apr 2018 08:38:42 GMT): kunalkukreja (Mon, 02 Apr 2018 08:40:54 GMT): songchanback (Mon, 02 Apr 2018 08:43:35 GMT): nitrek (Mon, 02 Apr 2018 09:34:40 GMT): nitrek (Mon, 02 Apr 2018 09:34:45 GMT): nitrek (Mon, 02 Apr 2018 09:35:05 GMT): nitrek (Mon, 02 Apr 2018 09:35:18 GMT): nitrek (Mon, 02 Apr 2018 09:35:36 GMT): KevinFu (Mon, 02 Apr 2018 09:38:58 GMT): KevinFu (Mon, 02 Apr 2018 09:39:11 GMT): KevinFu (Mon, 02 Apr 2018 09:39:41 GMT): KevinFu (Mon, 02 Apr 2018 09:39:56 GMT): nitrek (Mon, 02 Apr 2018 09:40:20 GMT): KevinFu (Mon, 02 Apr 2018 09:40:21 GMT): KevinFu (Mon, 02 Apr 2018 09:40:24 GMT): nitrek (Mon, 02 Apr 2018 09:40:48 GMT): nitrek (Mon, 02 Apr 2018 09:40:51 GMT): nitrek (Mon, 02 Apr 2018 09:41:02 GMT): KevinFu (Mon, 02 Apr 2018 09:41:27 GMT): KevinFu (Mon, 02 Apr 2018 09:41:39 GMT): KevinFu (Mon, 02 Apr 2018 09:41:43 GMT): KevinFu (Mon, 02 Apr 2018 09:41:49 GMT): KevinFu (Mon, 02 Apr 2018 09:43:04 GMT): nitrek (Mon, 02 Apr 2018 09:43:33 GMT): KevinFu (Mon, 02 Apr 2018 09:43:55 GMT): nitrek (Mon, 02 Apr 2018 09:43:57 GMT): KevinFu (Mon, 02 Apr 2018 09:44:18 GMT): KevinFu (Mon, 02 Apr 2018 09:44:41 GMT): nitrek (Mon, 02 Apr 2018 09:45:35 GMT): nitrek (Mon, 02 Apr 2018 09:45:44 GMT): KevinFu (Mon, 02 Apr 2018 09:45:46 GMT): nitrek (Mon, 02 Apr 2018 09:45:51 GMT): KevinFu (Mon, 02 Apr 2018 09:46:02 GMT): nitrek (Mon, 02 Apr 2018 09:46:30 GMT): nitrek (Mon, 02 Apr 2018 09:46:37 GMT): KevinFu (Mon, 02 Apr 2018 09:48:16 GMT): KevinFu (Mon, 02 Apr 2018 09:48:41 GMT): KevinFu (Mon, 02 Apr 2018 09:48:44 GMT): KevinFu (Mon, 02 Apr 2018 09:49:57 GMT): KevinFu (Mon, 02 Apr 2018 09:49:58 GMT): KevinFu (Mon, 02 Apr 2018 09:50:04 GMT): KevinFu (Mon, 02 Apr 2018 09:51:02 GMT): KevinFu (Mon, 02 Apr 2018 09:51:04 GMT): ganeshraut (Mon, 02 Apr 2018 09:52:11 GMT): ganeshraut (Mon, 02 Apr 2018 09:52:14 GMT): KevinFu (Mon, 02 Apr 2018 09:53:42 GMT): nitrek (Mon, 02 Apr 2018 09:54:28 GMT): nitrek (Mon, 02 Apr 2018 09:54:33 GMT): nitrek (Mon, 02 Apr 2018 09:54:36 GMT): nitrek (Mon, 02 Apr 2018 09:54:47 GMT): KevinFu (Mon, 02 Apr 2018 09:56:24 GMT): KevinFu (Mon, 02 Apr 2018 10:06:47 GMT): nitrek (Mon, 02 Apr 2018 10:06:55 GMT): nitrek (Mon, 02 Apr 2018 10:06:58 GMT): nitrek (Mon, 02 Apr 2018 10:07:00 GMT): KevinFu (Mon, 02 Apr 2018 10:07:03 GMT): KevinFu (Mon, 02 Apr 2018 10:07:45 GMT): KevinFu (Mon, 02 Apr 2018 10:08:45 GMT): KevinFu (Mon, 02 Apr 2018 10:10:25 GMT): NAWAZUDDIN552 (Mon, 02 Apr 2018 10:14:21 GMT): KevinFu (Mon, 02 Apr 2018 10:16:10 GMT): KevinFu (Mon, 02 Apr 2018 10:16:15 GMT): KevinFu (Mon, 02 Apr 2018 10:17:08 GMT): KevinFu (Mon, 02 Apr 2018 10:17:17 GMT): NAWAZUDDIN552 (Mon, 02 Apr 2018 10:24:43 GMT): nitrek (Mon, 02 Apr 2018 10:38:25 GMT): ra_w (Mon, 02 Apr 2018 10:51:08 GMT): arvindjaiswal (Mon, 02 Apr 2018 11:06:08 GMT): KevinFu (Mon, 02 Apr 2018 11:22:04 GMT): KevinFu (Mon, 02 Apr 2018 11:24:48 GMT): KevinFu (Mon, 02 Apr 2018 11:25:05 GMT): nitrek (Mon, 02 Apr 2018 11:25:08 GMT): BeneHei (Mon, 02 Apr 2018 11:39:44 GMT): VIVEKBHOLA (Mon, 02 Apr 2018 12:12:12 GMT): zachgoll (Mon, 02 Apr 2018 12:20:26 GMT): brendonakay (Mon, 02 Apr 2018 12:45:40 GMT): brendonakay (Mon, 02 Apr 2018 12:45:58 GMT): brendonakay (Mon, 02 Apr 2018 12:46:22 GMT): brendonakay (Mon, 02 Apr 2018 12:46:50 GMT): brendonakay (Mon, 02 Apr 2018 12:46:50 GMT): brendonakay (Mon, 02 Apr 2018 12:47:34 GMT): BhaveshPatadiya (Mon, 02 Apr 2018 13:15:41 GMT): cbishop (Mon, 02 Apr 2018 13:23:53 GMT): akula (Mon, 02 Apr 2018 13:29:44 GMT): akula (Mon, 02 Apr 2018 13:30:14 GMT): suva (Mon, 02 Apr 2018 13:34:48 GMT): suva (Mon, 02 Apr 2018 13:35:24 GMT): cbishop (Mon, 02 Apr 2018 13:38:55 GMT): akula (Mon, 02 Apr 2018 13:39:26 GMT): akula (Mon, 02 Apr 2018 13:39:43 GMT): cbishop (Mon, 02 Apr 2018 14:06:30 GMT): cbishop (Mon, 02 Apr 2018 14:07:47 GMT): cbishop (Mon, 02 Apr 2018 14:14:49 GMT): cbishop (Mon, 02 Apr 2018 14:18:27 GMT): brendonakay (Mon, 02 Apr 2018 14:27:12 GMT): cbishop (Mon, 02 Apr 2018 14:39:56 GMT): brendonakay (Mon, 02 Apr 2018 14:40:27 GMT): cbishop (Mon, 02 Apr 2018 14:42:52 GMT): cbishop (Mon, 02 Apr 2018 14:43:43 GMT): brendonakay (Mon, 02 Apr 2018 14:52:40 GMT): AmitMahajan (Mon, 02 Apr 2018 15:00:58 GMT): AmitMahajan (Mon, 02 Apr 2018 15:02:15 GMT): cbishop (Mon, 02 Apr 2018 15:02:44 GMT): brendonakay (Mon, 02 Apr 2018 15:03:24 GMT): brendonakay (Mon, 02 Apr 2018 15:03:24 GMT): brendonakay (Mon, 02 Apr 2018 15:04:30 GMT): brendonakay (Mon, 02 Apr 2018 15:04:36 GMT): brendonakay (Mon, 02 Apr 2018 15:04:46 GMT): brendonakay (Mon, 02 Apr 2018 15:04:59 GMT): brendonakay (Mon, 02 Apr 2018 15:07:32 GMT): brendonakay (Mon, 02 Apr 2018 15:12:51 GMT): brendonakay (Mon, 02 Apr 2018 15:13:37 GMT): brendonakay (Mon, 02 Apr 2018 15:13:37 GMT): brendonakay (Mon, 02 Apr 2018 15:14:18 GMT): brendonakay (Mon, 02 Apr 2018 15:14:19 GMT): brendonakay (Mon, 02 Apr 2018 15:14:19 GMT): brendonakay (Mon, 02 Apr 2018 15:21:08 GMT): brendonakay (Mon, 02 Apr 2018 15:21:13 GMT): brendonakay (Mon, 02 Apr 2018 15:23:38 GMT): brendonakay (Mon, 02 Apr 2018 15:23:58 GMT): brendonakay (Mon, 02 Apr 2018 15:24:21 GMT): brendonakay (Mon, 02 Apr 2018 15:24:50 GMT): dtp (Mon, 02 Apr 2018 15:25:25 GMT): dtp (Mon, 02 Apr 2018 15:26:35 GMT): dtp (Mon, 02 Apr 2018 15:53:02 GMT): cbishop (Mon, 02 Apr 2018 16:07:40 GMT): brendonakay (Mon, 02 Apr 2018 16:08:58 GMT): akula (Mon, 02 Apr 2018 17:39:16 GMT): miahfost (Mon, 02 Apr 2018 18:06:12 GMT): miahfost (Mon, 02 Apr 2018 18:08:43 GMT): kumaraswamypallukuri (Mon, 02 Apr 2018 20:23:54 GMT): kumaraswamypallukuri (Mon, 02 Apr 2018 20:25:21 GMT): kumaraswamypallukuri (Mon, 02 Apr 2018 20:25:39 GMT): kumaraswamypallukuri (Mon, 02 Apr 2018 20:25:50 GMT): kumaraswamypallukuri (Mon, 02 Apr 2018 20:26:05 GMT): kumaraswamypallukuri (Mon, 02 Apr 2018 20:26:11 GMT): kumaraswamypallukuri (Mon, 02 Apr 2018 20:26:25 GMT): silliman (Mon, 02 Apr 2018 20:38:02 GMT): html5-ninja (Mon, 02 Apr 2018 20:54:38 GMT): Jean507 (Mon, 02 Apr 2018 20:56:42 GMT): Jean507 (Mon, 02 Apr 2018 20:57:09 GMT): Jean507 (Mon, 02 Apr 2018 20:59:21 GMT): Jean507 (Mon, 02 Apr 2018 21:00:27 GMT): Jean507 (Mon, 02 Apr 2018 21:04:57 GMT): Jean507 (Mon, 02 Apr 2018 21:08:01 GMT): Jean507 (Mon, 02 Apr 2018 21:56:55 GMT): akula (Mon, 02 Apr 2018 22:32:29 GMT): davidkel (Mon, 02 Apr 2018 22:48:41 GMT): akula (Mon, 02 Apr 2018 22:53:29 GMT): davidkel (Mon, 02 Apr 2018 22:58:14 GMT): akula (Mon, 02 Apr 2018 23:05:14 GMT): kz.bake (Mon, 02 Apr 2018 23:16:09 GMT): zachgoll (Mon, 02 Apr 2018 23:26:16 GMT): GmoneyCoder (Mon, 02 Apr 2018 23:48:20 GMT): Jean507 (Mon, 02 Apr 2018 23:54:32 GMT): Jean507 (Mon, 02 Apr 2018 23:57:28 GMT): Jean507 (Mon, 02 Apr 2018 23:57:51 GMT): GmoneyCoder (Tue, 03 Apr 2018 00:28:18 GMT): Kanishk_Kishore (Tue, 03 Apr 2018 00:45:21 GMT): akula (Tue, 03 Apr 2018 00:48:35 GMT): AnshulPadyal (Tue, 03 Apr 2018 02:51:52 GMT): songchanback (Tue, 03 Apr 2018 03:21:31 GMT): TomCamp (Tue, 03 Apr 2018 03:30:52 GMT): suiwenfeng (Tue, 03 Apr 2018 04:51:14 GMT): Pranoti (Tue, 03 Apr 2018 05:53:52 GMT): Varun2887 (Tue, 03 Apr 2018 06:07:53 GMT): Varun2887 (Tue, 03 Apr 2018 06:07:56 GMT): gatakka (Tue, 03 Apr 2018 06:35:46 GMT): kmohanar (Tue, 03 Apr 2018 06:48:04 GMT): Pranoti (Tue, 03 Apr 2018 06:54:01 GMT): BerryVerschueren (Tue, 03 Apr 2018 07:10:29 GMT): suiwenfeng (Tue, 03 Apr 2018 07:13:04 GMT): suiwenfeng (Tue, 03 Apr 2018 07:13:06 GMT): mdoan (Tue, 03 Apr 2018 07:38:26 GMT): Santhosh_S (Tue, 03 Apr 2018 07:40:04 GMT): Poneey (Tue, 03 Apr 2018 07:47:45 GMT): shangGuanchen (Tue, 03 Apr 2018 07:58:49 GMT): rthatcher (Tue, 03 Apr 2018 08:23:58 GMT): davidkel (Tue, 03 Apr 2018 08:26:17 GMT): davidkel (Tue, 03 Apr 2018 08:26:17 GMT): davidkel (Tue, 03 Apr 2018 08:26:17 GMT): rthatcher (Tue, 03 Apr 2018 08:29:32 GMT): rthatcher (Tue, 03 Apr 2018 08:35:33 GMT): Poneey (Tue, 03 Apr 2018 08:38:07 GMT): suiwenfeng (Tue, 03 Apr 2018 08:39:31 GMT): rthatcher (Tue, 03 Apr 2018 08:43:40 GMT): rthatcher (Tue, 03 Apr 2018 08:50:02 GMT): suiwenfeng (Tue, 03 Apr 2018 08:50:51 GMT): suiwenfeng (Tue, 03 Apr 2018 08:51:32 GMT): rthatcher (Tue, 03 Apr 2018 09:12:19 GMT): rthatcher (Tue, 03 Apr 2018 09:12:19 GMT): rthatcher (Tue, 03 Apr 2018 09:19:56 GMT): kmohanar (Tue, 03 Apr 2018 09:22:08 GMT): rthatcher (Tue, 03 Apr 2018 09:25:53 GMT): kmohanar (Tue, 03 Apr 2018 09:42:32 GMT): kmohanar (Tue, 03 Apr 2018 09:42:32 GMT): kmohanar (Tue, 03 Apr 2018 09:43:59 GMT): kmohanar (Tue, 03 Apr 2018 09:43:59 GMT): victer (Tue, 03 Apr 2018 10:03:29 GMT): jakjothi (Tue, 03 Apr 2018 10:07:49 GMT): harcmed (Tue, 03 Apr 2018 11:17:26 GMT): pedromlcosta (Tue, 03 Apr 2018 11:18:41 GMT): harcmed (Tue, 03 Apr 2018 11:19:23 GMT): Pranoti (Tue, 03 Apr 2018 11:27:58 GMT): rthatcher (Tue, 03 Apr 2018 11:33:55 GMT): rthatcher (Tue, 03 Apr 2018 11:35:39 GMT): thanhhaibka (Tue, 03 Apr 2018 11:43:44 GMT): SudheerKaspa (Tue, 03 Apr 2018 12:46:55 GMT): suiwenfeng (Tue, 03 Apr 2018 12:46:59 GMT): SudheerKaspa (Tue, 03 Apr 2018 12:47:22 GMT): Poneey (Tue, 03 Apr 2018 12:47:50 GMT): Pranoti (Tue, 03 Apr 2018 12:53:23 GMT): rthatcher (Tue, 03 Apr 2018 13:01:09 GMT): Poneey (Tue, 03 Apr 2018 13:10:00 GMT): akula (Tue, 03 Apr 2018 13:16:49 GMT): Poneey (Tue, 03 Apr 2018 13:19:08 GMT): Poneey (Tue, 03 Apr 2018 13:21:07 GMT): akula (Tue, 03 Apr 2018 13:25:02 GMT): rthatcher (Tue, 03 Apr 2018 13:28:13 GMT): Poneey (Tue, 03 Apr 2018 13:37:28 GMT): n1110 (Tue, 03 Apr 2018 13:41:43 GMT): vikramjit (Tue, 03 Apr 2018 13:45:08 GMT): strummer75 (Tue, 03 Apr 2018 13:45:58 GMT): arvindjaiswal (Tue, 03 Apr 2018 13:50:28 GMT): arvindjaiswal (Tue, 03 Apr 2018 13:50:49 GMT): Gerard9494 (Tue, 03 Apr 2018 14:17:32 GMT): argman (Tue, 03 Apr 2018 14:20:19 GMT): aatkddny (Tue, 03 Apr 2018 14:21:56 GMT): TimJohnson (Tue, 03 Apr 2018 14:43:45 GMT): richzhao (Tue, 03 Apr 2018 14:47:43 GMT): TimJohnson (Tue, 03 Apr 2018 14:52:25 GMT): Rumeel_Hussain (Tue, 03 Apr 2018 14:59:15 GMT): lvndry (Tue, 03 Apr 2018 15:17:36 GMT): JoeN 6 (Tue, 03 Apr 2018 15:21:39 GMT): JoeN 6 (Tue, 03 Apr 2018 15:22:06 GMT): JoeN 6 (Tue, 03 Apr 2018 15:22:30 GMT): CorentinPacaud (Tue, 03 Apr 2018 15:40:29 GMT): CorentinPacaud (Tue, 03 Apr 2018 15:41:13 GMT): JoeN 6 (Tue, 03 Apr 2018 15:41:37 GMT): CorentinPacaud (Tue, 03 Apr 2018 15:42:47 GMT): CorentinPacaud (Tue, 03 Apr 2018 15:43:18 GMT): CorentinPacaud (Tue, 03 Apr 2018 15:43:18 GMT): brendonakay (Tue, 03 Apr 2018 15:56:00 GMT): rthatcher (Tue, 03 Apr 2018 15:59:15 GMT): rthatcher (Tue, 03 Apr 2018 16:17:34 GMT): SummerLotus (Tue, 03 Apr 2018 16:22:49 GMT): brendonakay (Tue, 03 Apr 2018 16:41:13 GMT): brendonakay (Tue, 03 Apr 2018 16:42:31 GMT): brendonakay (Tue, 03 Apr 2018 16:42:57 GMT): rthatcher (Tue, 03 Apr 2018 16:50:11 GMT): rthatcher (Tue, 03 Apr 2018 16:50:19 GMT): DanielMiranda (Tue, 03 Apr 2018 16:58:51 GMT): brendonakay (Tue, 03 Apr 2018 17:00:46 GMT): davidkel (Tue, 03 Apr 2018 17:03:51 GMT): brendonakay (Tue, 03 Apr 2018 17:07:21 GMT): brendonakay (Tue, 03 Apr 2018 17:07:59 GMT): brendonakay (Tue, 03 Apr 2018 17:08:10 GMT): brendonakay (Tue, 03 Apr 2018 17:08:21 GMT): brendonakay (Tue, 03 Apr 2018 17:08:30 GMT): SamuelDare (Tue, 03 Apr 2018 17:14:50 GMT): SamuelDare (Tue, 03 Apr 2018 17:16:25 GMT): SamuelDare (Tue, 03 Apr 2018 17:16:33 GMT): akula (Tue, 03 Apr 2018 17:27:20 GMT): akula (Tue, 03 Apr 2018 17:28:08 GMT): SamuelDare (Tue, 03 Apr 2018 17:31:48 GMT): akula (Tue, 03 Apr 2018 17:32:20 GMT): SamuelDare (Tue, 03 Apr 2018 17:32:37 GMT): SamuelDare (Tue, 03 Apr 2018 17:32:58 GMT): SamuelDare (Tue, 03 Apr 2018 17:33:29 GMT): akula (Tue, 03 Apr 2018 17:33:44 GMT): akula (Tue, 03 Apr 2018 17:34:19 GMT): SamuelDare (Tue, 03 Apr 2018 17:35:06 GMT): akula (Tue, 03 Apr 2018 17:35:46 GMT): SamuelDare (Tue, 03 Apr 2018 17:38:30 GMT): SamuelDare (Tue, 03 Apr 2018 17:38:34 GMT): theathibm (Tue, 03 Apr 2018 17:39:03 GMT): theathibm (Tue, 03 Apr 2018 17:39:03 GMT): SamuelDare (Tue, 03 Apr 2018 17:39:20 GMT): akula (Tue, 03 Apr 2018 17:40:26 GMT): SamuelDare (Tue, 03 Apr 2018 17:42:23 GMT): SamuelDare (Tue, 03 Apr 2018 17:44:09 GMT): SamuelDare (Tue, 03 Apr 2018 17:44:20 GMT): SamuelDare (Tue, 03 Apr 2018 17:44:29 GMT): akula (Tue, 03 Apr 2018 17:44:46 GMT): SamuelDare (Tue, 03 Apr 2018 17:49:31 GMT): akula (Tue, 03 Apr 2018 17:52:54 GMT): SamuelDare (Tue, 03 Apr 2018 17:55:21 GMT): akula (Tue, 03 Apr 2018 17:56:10 GMT): joaofguerreiro (Tue, 03 Apr 2018 18:19:10 GMT): joaofguerreiro (Tue, 03 Apr 2018 18:19:41 GMT): Harvinder16 (Tue, 03 Apr 2018 18:20:16 GMT): akula (Tue, 03 Apr 2018 18:21:19 GMT): joaofguerreiro (Tue, 03 Apr 2018 18:24:01 GMT): joaofguerreiro (Tue, 03 Apr 2018 18:24:28 GMT): joaofguerreiro (Tue, 03 Apr 2018 18:24:31 GMT): akula (Tue, 03 Apr 2018 18:26:48 GMT): SamuelDare (Tue, 03 Apr 2018 18:29:10 GMT): joaofguerreiro (Tue, 03 Apr 2018 18:30:18 GMT): joaofguerreiro (Tue, 03 Apr 2018 18:30:55 GMT): SamuelDare (Tue, 03 Apr 2018 18:33:27 GMT): joaofguerreiro (Tue, 03 Apr 2018 18:36:10 GMT): akula (Tue, 03 Apr 2018 18:38:08 GMT): f2918124 (Tue, 03 Apr 2018 18:57:04 GMT): AtulSatyajit (Tue, 03 Apr 2018 18:57:52 GMT): f2918124 (Tue, 03 Apr 2018 18:58:05 GMT): SamuelDare (Tue, 03 Apr 2018 18:58:33 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:26:38 GMT): SamuelDare (Tue, 03 Apr 2018 19:28:08 GMT): SamuelDare (Tue, 03 Apr 2018 19:28:39 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:30:17 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:31:10 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:31:19 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:31:24 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:31:37 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:33:01 GMT): JoeN 6 (Tue, 03 Apr 2018 19:33:09 GMT): SamuelDare (Tue, 03 Apr 2018 19:33:17 GMT): JoeN 6 (Tue, 03 Apr 2018 19:33:26 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:33:58 GMT): SamuelDare (Tue, 03 Apr 2018 19:34:02 GMT): SamuelDare (Tue, 03 Apr 2018 19:34:17 GMT): f2918124 (Tue, 03 Apr 2018 19:44:41 GMT): EvelynEvergreene (Tue, 03 Apr 2018 19:46:25 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:47:39 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:47:48 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:47:54 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:48:33 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:48:48 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:49:14 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:50:44 GMT): kumaraswamypallukuri (Tue, 03 Apr 2018 19:50:53 GMT): SamuelDare (Tue, 03 Apr 2018 19:52:32 GMT): SamuelDare (Tue, 03 Apr 2018 19:52:45 GMT): SamuelDare (Tue, 03 Apr 2018 19:52:59 GMT): SamuelDare (Tue, 03 Apr 2018 19:52:59 GMT): SamuelDare (Tue, 03 Apr 2018 19:54:01 GMT): SamuelDare (Tue, 03 Apr 2018 19:54:12 GMT): SamuelDare (Tue, 03 Apr 2018 19:56:32 GMT): SamuelDare (Tue, 03 Apr 2018 19:56:37 GMT): f2918124 (Tue, 03 Apr 2018 20:01:11 GMT): f2918124 (Tue, 03 Apr 2018 20:02:26 GMT): SamuelDare (Tue, 03 Apr 2018 20:04:10 GMT): SamuelDare (Tue, 03 Apr 2018 20:04:33 GMT): SamuelDare (Tue, 03 Apr 2018 20:05:03 GMT): SamuelDare (Tue, 03 Apr 2018 20:05:38 GMT): cditzler (Tue, 03 Apr 2018 20:52:33 GMT): cditzler (Tue, 03 Apr 2018 20:52:33 GMT): cditzler (Tue, 03 Apr 2018 20:55:46 GMT): david636 (Tue, 03 Apr 2018 23:51:58 GMT): mc (Wed, 04 Apr 2018 01:01:30 GMT): xiao8 (Wed, 04 Apr 2018 01:17:43 GMT): thanhhaibka (Wed, 04 Apr 2018 01:53:50 GMT): AlbertYankson (Wed, 04 Apr 2018 01:59:19 GMT): AlbertYankson (Wed, 04 Apr 2018 01:59:36 GMT): AlbertYankson (Wed, 04 Apr 2018 02:00:21 GMT): AlbertYankson (Wed, 04 Apr 2018 02:00:59 GMT): GmoneyCoder (Wed, 04 Apr 2018 02:29:25 GMT): GmoneyCoder (Wed, 04 Apr 2018 02:31:42 GMT): RadC 2 (Wed, 04 Apr 2018 02:35:48 GMT): ChrisZhang (Wed, 04 Apr 2018 02:54:24 GMT): ChrisZhang (Wed, 04 Apr 2018 02:56:12 GMT): ChrisZhang (Wed, 04 Apr 2018 02:58:27 GMT): ChrisZhang (Wed, 04 Apr 2018 02:59:34 GMT): kmohanar (Wed, 04 Apr 2018 05:16:42 GMT): KevinFu (Wed, 04 Apr 2018 06:58:12 GMT): KevinFu (Wed, 04 Apr 2018 06:58:14 GMT): KevinFu (Wed, 04 Apr 2018 06:59:50 GMT): KevinFu (Wed, 04 Apr 2018 07:09:03 GMT): technowar (Wed, 04 Apr 2018 07:18:58 GMT): Pranoti (Wed, 04 Apr 2018 07:19:15 GMT): Pranoti (Wed, 04 Apr 2018 07:19:15 GMT): Pranoti (Wed, 04 Apr 2018 07:19:15 GMT): technowar (Wed, 04 Apr 2018 07:19:50 GMT): KevinFu (Wed, 04 Apr 2018 07:20:46 GMT): Poneey (Wed, 04 Apr 2018 07:22:31 GMT): technowar (Wed, 04 Apr 2018 07:23:28 GMT): technowar (Wed, 04 Apr 2018 07:23:28 GMT): KevinFu (Wed, 04 Apr 2018 07:23:44 GMT): technowar (Wed, 04 Apr 2018 07:24:23 GMT): KevinFu (Wed, 04 Apr 2018 07:24:30 GMT): technowar (Wed, 04 Apr 2018 07:24:35 GMT): technowar (Wed, 04 Apr 2018 07:25:07 GMT): KevinFu (Wed, 04 Apr 2018 07:25:07 GMT): technowar (Wed, 04 Apr 2018 07:25:26 GMT): technowar (Wed, 04 Apr 2018 07:25:54 GMT): KevinFu (Wed, 04 Apr 2018 07:26:01 GMT): technowar (Wed, 04 Apr 2018 07:27:35 GMT): Poneey (Wed, 04 Apr 2018 07:28:03 GMT): KevinFu (Wed, 04 Apr 2018 07:29:25 GMT): Poneey (Wed, 04 Apr 2018 07:29:47 GMT): technowar (Wed, 04 Apr 2018 07:32:08 GMT): Poneey (Wed, 04 Apr 2018 07:32:55 GMT): technowar (Wed, 04 Apr 2018 07:33:39 GMT): technowar (Wed, 04 Apr 2018 07:33:46 GMT): Poneey (Wed, 04 Apr 2018 07:34:17 GMT): BReddy (Wed, 04 Apr 2018 07:34:31 GMT): technowar (Wed, 04 Apr 2018 07:36:43 GMT): technowar (Wed, 04 Apr 2018 07:36:55 GMT): Poneey (Wed, 04 Apr 2018 07:38:12 GMT): technowar (Wed, 04 Apr 2018 07:43:48 GMT): Santhosh_S (Wed, 04 Apr 2018 07:45:50 GMT): Santhosh_S (Wed, 04 Apr 2018 07:45:50 GMT): divudivyansh (Wed, 04 Apr 2018 07:48:39 GMT): divudivyansh (Wed, 04 Apr 2018 07:49:03 GMT): divudivyansh (Wed, 04 Apr 2018 07:49:30 GMT): Poneey (Wed, 04 Apr 2018 07:50:41 GMT): Poneey (Wed, 04 Apr 2018 07:52:26 GMT): technowar (Wed, 04 Apr 2018 07:55:43 GMT): Poneey (Wed, 04 Apr 2018 08:06:11 GMT): technowar (Wed, 04 Apr 2018 08:14:19 GMT): technowar (Wed, 04 Apr 2018 08:14:19 GMT): rthatcher (Wed, 04 Apr 2018 08:23:53 GMT): mahoney1 (Wed, 04 Apr 2018 08:23:56 GMT): mahoney1 (Wed, 04 Apr 2018 08:24:42 GMT): mahoney1 (Wed, 04 Apr 2018 08:30:08 GMT): technowar (Wed, 04 Apr 2018 08:30:46 GMT): thiennguyen2824 (Wed, 04 Apr 2018 08:43:21 GMT): rajqumar (Wed, 04 Apr 2018 09:05:40 GMT): phanikumar (Wed, 04 Apr 2018 09:10:28 GMT): technowar (Wed, 04 Apr 2018 09:10:58 GMT): phanikumar (Wed, 04 Apr 2018 09:11:10 GMT): phanikumar (Wed, 04 Apr 2018 09:13:13 GMT): technowar (Wed, 04 Apr 2018 09:13:24 GMT): mahoney1 (Wed, 04 Apr 2018 09:27:16 GMT): Jan_Blomqvist (Wed, 04 Apr 2018 09:28:24 GMT): technowar (Wed, 04 Apr 2018 09:28:58 GMT): technowar (Wed, 04 Apr 2018 09:29:19 GMT): technowar (Wed, 04 Apr 2018 09:29:56 GMT): technowar (Wed, 04 Apr 2018 09:31:22 GMT): prmdmshra (Wed, 04 Apr 2018 09:32:50 GMT): SandipNirmal (Wed, 04 Apr 2018 09:48:56 GMT): SandipNirmal (Wed, 04 Apr 2018 09:49:30 GMT): mahoney1 (Wed, 04 Apr 2018 09:58:52 GMT): mahoney1 (Wed, 04 Apr 2018 09:58:52 GMT): mahoney1 (Wed, 04 Apr 2018 10:00:28 GMT): mahoney1 (Wed, 04 Apr 2018 10:02:20 GMT): prmdmshra (Wed, 04 Apr 2018 10:06:53 GMT): prmdmshra (Wed, 04 Apr 2018 10:06:53 GMT): nissshh (Wed, 04 Apr 2018 10:13:54 GMT): argman (Wed, 04 Apr 2018 10:14:31 GMT): mahoney1 (Wed, 04 Apr 2018 10:16:02 GMT): SandipNirmal (Wed, 04 Apr 2018 10:22:32 GMT): SandipNirmal (Wed, 04 Apr 2018 10:22:32 GMT): MartinKrmer (Wed, 04 Apr 2018 10:24:47 GMT): mahoney1 (Wed, 04 Apr 2018 10:37:31 GMT): mahoney1 (Wed, 04 Apr 2018 10:39:56 GMT): d8bhatta (Wed, 04 Apr 2018 11:02:56 GMT): d8bhatta (Wed, 04 Apr 2018 11:02:57 GMT): Santhosh_S (Wed, 04 Apr 2018 11:03:22 GMT): mahoney1 (Wed, 04 Apr 2018 11:07:53 GMT): mahoney1 (Wed, 04 Apr 2018 11:20:06 GMT): ParthPatil (Wed, 04 Apr 2018 11:50:03 GMT): ParthPatil (Wed, 04 Apr 2018 11:57:29 GMT): Leisuretime (Wed, 04 Apr 2018 12:02:35 GMT): tlangz (Wed, 04 Apr 2018 12:02:59 GMT): akula (Wed, 04 Apr 2018 12:05:01 GMT): Poneey (Wed, 04 Apr 2018 12:10:59 GMT): ParthPatil (Wed, 04 Apr 2018 12:14:36 GMT): JonasVdB (Wed, 04 Apr 2018 12:21:36 GMT): Santhosh_S (Wed, 04 Apr 2018 12:22:37 GMT): akula (Wed, 04 Apr 2018 12:23:34 GMT): rthatcher (Wed, 04 Apr 2018 12:23:49 GMT): ParthPatil (Wed, 04 Apr 2018 12:25:00 GMT): username343 (Wed, 04 Apr 2018 12:25:02 GMT): rthatcher (Wed, 04 Apr 2018 12:29:10 GMT): JonasVdB (Wed, 04 Apr 2018 12:48:17 GMT): Mihai.A (Wed, 04 Apr 2018 12:55:37 GMT): SamuelDare (Wed, 04 Apr 2018 13:00:36 GMT): SamuelDare (Wed, 04 Apr 2018 13:01:20 GMT): akula (Wed, 04 Apr 2018 13:07:06 GMT): akula (Wed, 04 Apr 2018 13:08:21 GMT): akula (Wed, 04 Apr 2018 13:09:04 GMT): akula (Wed, 04 Apr 2018 13:09:34 GMT): akula (Wed, 04 Apr 2018 13:12:21 GMT): divudivyansh (Wed, 04 Apr 2018 13:13:26 GMT): mahoney1 (Wed, 04 Apr 2018 13:17:30 GMT): mahoney1 (Wed, 04 Apr 2018 13:17:30 GMT): mahoney1 (Wed, 04 Apr 2018 13:19:12 GMT): Poneey (Wed, 04 Apr 2018 13:19:15 GMT): Poneey (Wed, 04 Apr 2018 13:19:15 GMT): theathibm (Wed, 04 Apr 2018 13:20:06 GMT): mahoney1 (Wed, 04 Apr 2018 13:21:25 GMT): mahoney1 (Wed, 04 Apr 2018 13:21:25 GMT): username343 (Wed, 04 Apr 2018 13:22:55 GMT): Poneey (Wed, 04 Apr 2018 13:29:52 GMT): SamuelDare (Wed, 04 Apr 2018 13:30:33 GMT): mahoney1 (Wed, 04 Apr 2018 13:30:34 GMT): SamuelDare (Wed, 04 Apr 2018 13:30:55 GMT): username343 (Wed, 04 Apr 2018 13:31:03 GMT): mahoney1 (Wed, 04 Apr 2018 13:32:13 GMT): SamuelDare (Wed, 04 Apr 2018 13:32:43 GMT): akula (Wed, 04 Apr 2018 13:34:25 GMT): Poneey (Wed, 04 Apr 2018 13:42:35 GMT): Poneey (Wed, 04 Apr 2018 13:46:39 GMT): akula (Wed, 04 Apr 2018 13:47:51 GMT): mahoney1 (Wed, 04 Apr 2018 13:52:02 GMT): Poneey (Wed, 04 Apr 2018 13:59:18 GMT): SamuelDare (Wed, 04 Apr 2018 14:21:52 GMT): SamuelDare (Wed, 04 Apr 2018 14:22:14 GMT): SamuelDare (Wed, 04 Apr 2018 14:47:12 GMT): akula (Wed, 04 Apr 2018 14:50:02 GMT): pedromlcosta (Wed, 04 Apr 2018 14:53:59 GMT): pedromlcosta (Wed, 04 Apr 2018 14:57:01 GMT): SamuelDare (Wed, 04 Apr 2018 15:02:20 GMT): mahoney1 (Wed, 04 Apr 2018 15:02:53 GMT): SamuelDare (Wed, 04 Apr 2018 15:03:10 GMT): akula (Wed, 04 Apr 2018 15:04:11 GMT): sun337 (Wed, 04 Apr 2018 15:07:18 GMT): sun337 (Wed, 04 Apr 2018 15:08:30 GMT): sun337 (Wed, 04 Apr 2018 15:10:26 GMT): SamuelDare (Wed, 04 Apr 2018 15:13:13 GMT): brycebudd (Wed, 04 Apr 2018 15:16:04 GMT): SamuelDare (Wed, 04 Apr 2018 15:43:15 GMT): SamuelDare (Wed, 04 Apr 2018 15:43:47 GMT): SamuelDare (Wed, 04 Apr 2018 15:48:56 GMT): SamuelDare (Wed, 04 Apr 2018 15:49:17 GMT): mahoney1 (Wed, 04 Apr 2018 15:49:19 GMT): SamuelDare (Wed, 04 Apr 2018 15:49:38 GMT): pedromlcosta (Wed, 04 Apr 2018 16:27:54 GMT): pedromlcosta (Wed, 04 Apr 2018 16:27:54 GMT): pedromlcosta (Wed, 04 Apr 2018 16:28:50 GMT): pedromlcosta (Wed, 04 Apr 2018 16:28:50 GMT): pedromlcosta (Wed, 04 Apr 2018 16:28:50 GMT): rthatcher (Wed, 04 Apr 2018 16:43:03 GMT): rthatcher (Wed, 04 Apr 2018 16:43:03 GMT): pedromlcosta (Wed, 04 Apr 2018 16:44:33 GMT): pedromlcosta (Wed, 04 Apr 2018 16:45:09 GMT): rthatcher (Wed, 04 Apr 2018 16:45:36 GMT): sun337 (Wed, 04 Apr 2018 16:46:11 GMT): pedromlcosta (Wed, 04 Apr 2018 16:46:23 GMT): rthatcher (Wed, 04 Apr 2018 16:46:40 GMT): rthatcher (Wed, 04 Apr 2018 16:46:40 GMT): rthatcher (Wed, 04 Apr 2018 16:46:40 GMT): sun337 (Wed, 04 Apr 2018 16:51:28 GMT): mahoney1 (Wed, 04 Apr 2018 16:51:57 GMT): mahoney1 (Wed, 04 Apr 2018 16:55:49 GMT): sun337 (Wed, 04 Apr 2018 16:57:35 GMT): JonathanLevi (Wed, 04 Apr 2018 17:15:13 GMT): JonathanLevi (Wed, 04 Apr 2018 17:15:33 GMT): JonathanLevi (Wed, 04 Apr 2018 17:15:55 GMT): davidkel (Wed, 04 Apr 2018 17:34:42 GMT): davidkel (Wed, 04 Apr 2018 17:34:42 GMT): GmoneyCoder (Wed, 04 Apr 2018 17:53:19 GMT): GmoneyCoder (Wed, 04 Apr 2018 17:57:31 GMT): hkrichen (Wed, 04 Apr 2018 18:33:21 GMT): SamuelDare (Wed, 04 Apr 2018 18:34:20 GMT): gen_el (Wed, 04 Apr 2018 18:46:54 GMT): SamuelDare (Wed, 04 Apr 2018 18:57:26 GMT): SamuelDare (Wed, 04 Apr 2018 18:57:49 GMT): SamuelDare (Wed, 04 Apr 2018 19:10:03 GMT): SamuelDare (Wed, 04 Apr 2018 19:10:44 GMT): SamuelDare (Wed, 04 Apr 2018 19:10:58 GMT): SamuelDare (Wed, 04 Apr 2018 19:11:10 GMT): SamuelDare (Wed, 04 Apr 2018 19:12:41 GMT): gen_el (Wed, 04 Apr 2018 19:13:44 GMT): gen_el (Wed, 04 Apr 2018 19:13:44 GMT): gen_el (Wed, 04 Apr 2018 19:14:52 GMT): gen_el (Wed, 04 Apr 2018 19:14:52 GMT): gen_el (Wed, 04 Apr 2018 19:15:30 GMT): gen_el (Wed, 04 Apr 2018 19:17:23 GMT): gen_el (Wed, 04 Apr 2018 19:17:23 GMT): gen_el (Wed, 04 Apr 2018 19:17:23 GMT): gen_el (Wed, 04 Apr 2018 19:17:23 GMT): SamuelDare (Wed, 04 Apr 2018 19:19:18 GMT): nicolapaoli (Wed, 04 Apr 2018 19:23:18 GMT): brian.leppez (Wed, 04 Apr 2018 19:30:17 GMT): brian.leppez (Wed, 04 Apr 2018 19:30:17 GMT): davidkel (Wed, 04 Apr 2018 20:02:08 GMT): dries.vanbael@live.com (Wed, 04 Apr 2018 20:03:58 GMT): dries.vanbael@live.com (Wed, 04 Apr 2018 20:04:08 GMT): dries.vanbael@live.com (Wed, 04 Apr 2018 20:04:20 GMT): akshatbh (Wed, 04 Apr 2018 20:24:36 GMT): conroydave (Wed, 04 Apr 2018 20:35:22 GMT): akshatbh (Wed, 04 Apr 2018 20:35:28 GMT): conroydave (Wed, 04 Apr 2018 20:36:03 GMT): f2918124 (Wed, 04 Apr 2018 21:06:20 GMT): davidkel (Wed, 04 Apr 2018 21:29:40 GMT): krabradosty (Wed, 04 Apr 2018 21:31:50 GMT): krabradosty (Wed, 04 Apr 2018 21:31:50 GMT): krabradosty (Wed, 04 Apr 2018 21:31:50 GMT): krabradosty (Wed, 04 Apr 2018 21:31:50 GMT): nicolapaoli (Wed, 04 Apr 2018 21:41:18 GMT): davidkel (Wed, 04 Apr 2018 21:42:33 GMT): davidkel (Wed, 04 Apr 2018 22:16:49 GMT): SamuelDare (Wed, 04 Apr 2018 23:05:39 GMT): magizhchi (Wed, 04 Apr 2018 23:44:07 GMT): magizhchi (Wed, 04 Apr 2018 23:51:08 GMT): magizhchi (Wed, 04 Apr 2018 23:51:08 GMT): magizhchi (Wed, 04 Apr 2018 23:52:27 GMT): magizhchi (Wed, 04 Apr 2018 23:52:27 GMT): magizhchi (Wed, 04 Apr 2018 23:52:27 GMT): magizhchi (Wed, 04 Apr 2018 23:52:27 GMT): magizhchi (Wed, 04 Apr 2018 23:52:27 GMT): magizhchi (Wed, 04 Apr 2018 23:52:27 GMT): magizhchi (Wed, 04 Apr 2018 23:52:27 GMT): magizhchi (Wed, 04 Apr 2018 23:52:27 GMT): magizhchi (Wed, 04 Apr 2018 23:52:27 GMT): magizhchi (Wed, 04 Apr 2018 23:52:27 GMT): magizhchi (Wed, 04 Apr 2018 23:52:27 GMT): magizhchi (Wed, 04 Apr 2018 23:52:27 GMT): magizhchi (Wed, 04 Apr 2018 23:52:27 GMT): nimeshpr (Wed, 04 Apr 2018 23:58:47 GMT): hamza113 (Thu, 05 Apr 2018 01:07:43 GMT): thiennguyen2824 (Thu, 05 Apr 2018 03:41:33 GMT): victer (Thu, 05 Apr 2018 05:10:31 GMT): pankajcheema (Thu, 05 Apr 2018 06:12:35 GMT): pankajcheema (Thu, 05 Apr 2018 06:12:43 GMT): pankajcheema (Thu, 05 Apr 2018 06:13:02 GMT): pankajcheema (Thu, 05 Apr 2018 06:13:11 GMT): NOWHERE (Thu, 05 Apr 2018 06:13:11 GMT): pankajcheema (Thu, 05 Apr 2018 06:16:41 GMT): pankajcheema (Thu, 05 Apr 2018 06:16:58 GMT): krabradosty (Thu, 05 Apr 2018 06:32:09 GMT): CorentinPacaud (Thu, 05 Apr 2018 07:21:08 GMT): davidkel (Thu, 05 Apr 2018 07:28:19 GMT): krabradosty (Thu, 05 Apr 2018 07:29:46 GMT): krabradosty (Thu, 05 Apr 2018 07:31:16 GMT): krabradosty (Thu, 05 Apr 2018 07:31:16 GMT): davidkel (Thu, 05 Apr 2018 07:35:28 GMT): krabradosty (Thu, 05 Apr 2018 07:36:37 GMT): davidkel (Thu, 05 Apr 2018 07:40:40 GMT): krabradosty (Thu, 05 Apr 2018 07:43:32 GMT): rthatcher (Thu, 05 Apr 2018 08:19:04 GMT): fabienpe (Thu, 05 Apr 2018 08:23:12 GMT): rthatcher (Thu, 05 Apr 2018 08:26:01 GMT): rthatcher (Thu, 05 Apr 2018 08:26:01 GMT): rthatcher (Thu, 05 Apr 2018 08:52:30 GMT): rthatcher (Thu, 05 Apr 2018 08:59:42 GMT): hamza113 (Thu, 05 Apr 2018 09:00:38 GMT): krabradosty (Thu, 05 Apr 2018 09:01:57 GMT): krabradosty (Thu, 05 Apr 2018 09:01:57 GMT): fabienpe (Thu, 05 Apr 2018 09:03:26 GMT): fabienpe (Thu, 05 Apr 2018 09:03:26 GMT): iDix (Thu, 05 Apr 2018 09:03:59 GMT): rthatcher (Thu, 05 Apr 2018 09:13:15 GMT): iDix (Thu, 05 Apr 2018 09:15:56 GMT): mahoney1 (Thu, 05 Apr 2018 09:16:03 GMT): mahoney1 (Thu, 05 Apr 2018 09:16:03 GMT): davidkel (Thu, 05 Apr 2018 09:16:33 GMT): suva (Thu, 05 Apr 2018 09:17:12 GMT): suva (Thu, 05 Apr 2018 09:17:22 GMT): iDix (Thu, 05 Apr 2018 09:17:24 GMT): suva (Thu, 05 Apr 2018 09:17:35 GMT): mahoney1 (Thu, 05 Apr 2018 09:19:34 GMT): mahoney1 (Thu, 05 Apr 2018 09:19:34 GMT): davidkel (Thu, 05 Apr 2018 09:19:57 GMT): suva (Thu, 05 Apr 2018 09:20:05 GMT): krabradosty (Thu, 05 Apr 2018 09:20:18 GMT): suva (Thu, 05 Apr 2018 09:23:17 GMT): mahoney1 (Thu, 05 Apr 2018 09:25:31 GMT): suva (Thu, 05 Apr 2018 09:26:21 GMT): iDix (Thu, 05 Apr 2018 09:27:13 GMT): WarWolf89 (Thu, 05 Apr 2018 09:30:34 GMT): pankajcheema (Thu, 05 Apr 2018 09:30:54 GMT): CorentinPacaud (Thu, 05 Apr 2018 09:33:16 GMT): mahoney1 (Thu, 05 Apr 2018 09:52:33 GMT): mahoney1 (Thu, 05 Apr 2018 09:52:43 GMT): suva (Thu, 05 Apr 2018 09:58:09 GMT): mahoney1 (Thu, 05 Apr 2018 10:00:35 GMT): suva (Thu, 05 Apr 2018 10:00:43 GMT): thiennguyen2824 (Thu, 05 Apr 2018 10:01:56 GMT): matrisis (Thu, 05 Apr 2018 10:10:50 GMT): matrisis (Thu, 05 Apr 2018 10:10:50 GMT): suva (Thu, 05 Apr 2018 10:19:04 GMT): suva (Thu, 05 Apr 2018 10:20:01 GMT): suva (Thu, 05 Apr 2018 10:22:07 GMT): suva (Thu, 05 Apr 2018 10:22:08 GMT): hamza113 (Thu, 05 Apr 2018 10:55:29 GMT): hamza113 (Thu, 05 Apr 2018 10:56:55 GMT): WarWolf89 (Thu, 05 Apr 2018 11:06:29 GMT): rthatcher (Thu, 05 Apr 2018 11:42:08 GMT): MartinKrmer (Thu, 05 Apr 2018 11:56:00 GMT): matrisis (Thu, 05 Apr 2018 12:09:16 GMT): matrisis (Thu, 05 Apr 2018 12:09:16 GMT): iDix (Thu, 05 Apr 2018 12:09:34 GMT): WarWolf89 (Thu, 05 Apr 2018 12:13:27 GMT): iDix (Thu, 05 Apr 2018 12:13:54 GMT): mahoney1 (Thu, 05 Apr 2018 12:18:38 GMT): mahoney1 (Thu, 05 Apr 2018 12:18:38 GMT): WarWolf89 (Thu, 05 Apr 2018 12:18:51 GMT): mahoney1 (Thu, 05 Apr 2018 12:20:22 GMT): WarWolf89 (Thu, 05 Apr 2018 12:24:02 GMT): WarWolf89 (Thu, 05 Apr 2018 12:24:02 GMT): davidkel (Thu, 05 Apr 2018 12:26:12 GMT): iDix (Thu, 05 Apr 2018 12:28:53 GMT): WarWolf89 (Thu, 05 Apr 2018 12:29:35 GMT): iDix (Thu, 05 Apr 2018 12:30:21 GMT): iDix (Thu, 05 Apr 2018 12:30:31 GMT): davidkel (Thu, 05 Apr 2018 12:31:02 GMT): iDix (Thu, 05 Apr 2018 12:32:31 GMT): davidkel (Thu, 05 Apr 2018 12:38:42 GMT): davidkel (Thu, 05 Apr 2018 12:38:42 GMT): davidkel (Thu, 05 Apr 2018 12:38:42 GMT): davidkel (Thu, 05 Apr 2018 12:38:42 GMT): davidkel (Thu, 05 Apr 2018 12:38:42 GMT): WarWolf89 (Thu, 05 Apr 2018 12:41:26 GMT): iDix (Thu, 05 Apr 2018 12:45:07 GMT): iDix (Thu, 05 Apr 2018 12:45:35 GMT): iDix (Thu, 05 Apr 2018 12:46:47 GMT): iDix (Thu, 05 Apr 2018 12:50:58 GMT): WarWolf89 (Thu, 05 Apr 2018 12:53:28 GMT): iDix (Thu, 05 Apr 2018 13:00:14 GMT): WarWolf89 (Thu, 05 Apr 2018 13:01:14 GMT): iDix (Thu, 05 Apr 2018 13:04:37 GMT): suva (Thu, 05 Apr 2018 13:05:23 GMT): hamza113 (Thu, 05 Apr 2018 13:35:12 GMT): kpbird (Thu, 05 Apr 2018 13:36:25 GMT): varuna82 (Thu, 05 Apr 2018 14:02:19 GMT): WarWolf89 (Thu, 05 Apr 2018 14:13:08 GMT): varuna82 (Thu, 05 Apr 2018 14:14:23 GMT): varuna82 (Thu, 05 Apr 2018 14:15:12 GMT): mahoney1 (Thu, 05 Apr 2018 14:20:14 GMT): hamza113 (Thu, 05 Apr 2018 14:21:29 GMT): hamza113 (Thu, 05 Apr 2018 14:25:25 GMT): WarWolf89 (Thu, 05 Apr 2018 14:27:56 GMT): varuna82 (Thu, 05 Apr 2018 14:33:10 GMT): WarWolf89 (Thu, 05 Apr 2018 14:37:02 GMT): lkchao78 (Thu, 05 Apr 2018 14:40:40 GMT): varuna82 (Thu, 05 Apr 2018 14:45:31 GMT): hamza113 (Thu, 05 Apr 2018 14:56:08 GMT): mahoney1 (Thu, 05 Apr 2018 15:08:31 GMT): mahoney1 (Thu, 05 Apr 2018 15:09:20 GMT): pankajcheema (Thu, 05 Apr 2018 15:19:53 GMT): pankajcheema (Thu, 05 Apr 2018 15:20:07 GMT): lkchao78 (Thu, 05 Apr 2018 15:20:56 GMT): lkchao78 (Thu, 05 Apr 2018 15:20:56 GMT): lkchao78 (Thu, 05 Apr 2018 15:20:56 GMT): cbishop (Thu, 05 Apr 2018 16:02:50 GMT): mahoney1 (Thu, 05 Apr 2018 16:30:10 GMT): mahoney1 (Thu, 05 Apr 2018 16:45:12 GMT): MegganDo (Thu, 05 Apr 2018 16:46:44 GMT): MegganDo (Thu, 05 Apr 2018 16:49:23 GMT): mammutjaeger (Thu, 05 Apr 2018 17:04:54 GMT): saikiran458 (Thu, 05 Apr 2018 18:39:02 GMT): Rmannn (Thu, 05 Apr 2018 19:01:49 GMT): hamza113 (Thu, 05 Apr 2018 19:16:19 GMT): hamza113 (Thu, 05 Apr 2018 19:16:52 GMT): hamza113 (Thu, 05 Apr 2018 19:18:00 GMT): DevB (Thu, 05 Apr 2018 20:32:36 GMT): DevB (Thu, 05 Apr 2018 20:32:40 GMT): DevB (Thu, 05 Apr 2018 20:33:35 GMT): DevB (Thu, 05 Apr 2018 20:33:46 GMT): vivekgovekar (Thu, 05 Apr 2018 20:33:50 GMT): Rmannn (Thu, 05 Apr 2018 20:48:00 GMT): varinder (Thu, 05 Apr 2018 20:49:46 GMT): hey.viv (Thu, 05 Apr 2018 20:50:56 GMT): varinder (Thu, 05 Apr 2018 21:11:00 GMT): DevB (Thu, 05 Apr 2018 21:37:49 GMT): horeaporutiu (Fri, 06 Apr 2018 00:04:59 GMT): Rmannn (Fri, 06 Apr 2018 00:07:12 GMT): Rmannn (Fri, 06 Apr 2018 00:07:12 GMT): horeaporutiu (Fri, 06 Apr 2018 00:08:45 GMT): horeaporutiu (Fri, 06 Apr 2018 00:09:03 GMT): Rmannn (Fri, 06 Apr 2018 00:09:38 GMT): DevB (Fri, 06 Apr 2018 05:32:12 GMT): honeyjills (Fri, 06 Apr 2018 05:35:42 GMT): PavanJuttada (Fri, 06 Apr 2018 05:54:50 GMT): d8bhatta (Fri, 06 Apr 2018 06:35:11 GMT): d8bhatta (Fri, 06 Apr 2018 06:36:12 GMT): d8bhatta (Fri, 06 Apr 2018 06:36:30 GMT): d8bhatta (Fri, 06 Apr 2018 06:37:07 GMT): d8bhatta (Fri, 06 Apr 2018 06:37:22 GMT): Varun2887 (Fri, 06 Apr 2018 06:38:53 GMT): thanhhaibka (Fri, 06 Apr 2018 06:45:55 GMT): d8bhatta (Fri, 06 Apr 2018 06:46:25 GMT): thanhhaibka (Fri, 06 Apr 2018 06:47:16 GMT): d8bhatta (Fri, 06 Apr 2018 06:47:18 GMT): d8bhatta (Fri, 06 Apr 2018 06:51:04 GMT): d8bhatta (Fri, 06 Apr 2018 06:51:11 GMT): d8bhatta (Fri, 06 Apr 2018 06:51:39 GMT): d8bhatta (Fri, 06 Apr 2018 06:51:48 GMT): d8bhatta (Fri, 06 Apr 2018 07:41:43 GMT): d8bhatta (Fri, 06 Apr 2018 07:42:01 GMT): d8bhatta (Fri, 06 Apr 2018 07:42:07 GMT): Poneey (Fri, 06 Apr 2018 07:42:45 GMT): Poneey (Fri, 06 Apr 2018 07:44:16 GMT): d8bhatta (Fri, 06 Apr 2018 07:44:34 GMT): Poneey (Fri, 06 Apr 2018 07:47:03 GMT): Poneey (Fri, 06 Apr 2018 07:47:50 GMT): d8bhatta (Fri, 06 Apr 2018 07:51:47 GMT): d8bhatta (Fri, 06 Apr 2018 07:51:48 GMT): Poneey (Fri, 06 Apr 2018 07:53:48 GMT): Poneey (Fri, 06 Apr 2018 07:54:21 GMT): d8bhatta (Fri, 06 Apr 2018 07:54:57 GMT): d8bhatta (Fri, 06 Apr 2018 07:55:08 GMT): d8bhatta (Fri, 06 Apr 2018 07:55:43 GMT): Poneey (Fri, 06 Apr 2018 07:57:19 GMT): d8bhatta (Fri, 06 Apr 2018 07:58:33 GMT): d8bhatta (Fri, 06 Apr 2018 07:58:33 GMT): Poneey (Fri, 06 Apr 2018 07:58:46 GMT): d8bhatta (Fri, 06 Apr 2018 07:58:48 GMT): d8bhatta (Fri, 06 Apr 2018 08:01:15 GMT): Poneey (Fri, 06 Apr 2018 08:02:42 GMT): d8bhatta (Fri, 06 Apr 2018 08:03:03 GMT): Poneey (Fri, 06 Apr 2018 08:04:47 GMT): lkchao78 (Fri, 06 Apr 2018 08:05:59 GMT): d8bhatta (Fri, 06 Apr 2018 08:14:24 GMT): Poneey (Fri, 06 Apr 2018 08:23:51 GMT): mahoney1 (Fri, 06 Apr 2018 08:37:34 GMT): mahoney1 (Fri, 06 Apr 2018 08:41:06 GMT): rthatcher (Fri, 06 Apr 2018 08:45:58 GMT): rthatcher (Fri, 06 Apr 2018 08:45:58 GMT): lkchao78 (Fri, 06 Apr 2018 08:53:55 GMT): Santhosh_S (Fri, 06 Apr 2018 08:54:00 GMT): Santhosh_S (Fri, 06 Apr 2018 08:54:00 GMT): mahoney1 (Fri, 06 Apr 2018 08:58:56 GMT): Bit 63 (Fri, 06 Apr 2018 09:01:55 GMT): lkchao78 (Fri, 06 Apr 2018 09:02:08 GMT): sagargarg (Fri, 06 Apr 2018 09:04:40 GMT): sagargarg (Fri, 06 Apr 2018 09:04:40 GMT): mahoney1 (Fri, 06 Apr 2018 09:07:35 GMT): mahoney1 (Fri, 06 Apr 2018 09:36:47 GMT): lkchao78 (Fri, 06 Apr 2018 09:46:25 GMT): nawaz_552 (Fri, 06 Apr 2018 10:25:01 GMT): Pranoti (Fri, 06 Apr 2018 10:38:46 GMT): Pranoti (Fri, 06 Apr 2018 10:47:15 GMT): kmohanar (Fri, 06 Apr 2018 11:21:04 GMT): kmohanar (Fri, 06 Apr 2018 11:21:04 GMT): rthatcher (Fri, 06 Apr 2018 11:22:57 GMT): Pranoti (Fri, 06 Apr 2018 11:28:59 GMT): rthatcher (Fri, 06 Apr 2018 11:49:02 GMT): Pranoti (Fri, 06 Apr 2018 11:49:25 GMT): Poneey (Fri, 06 Apr 2018 11:56:01 GMT): BilalAhmad (Fri, 06 Apr 2018 11:56:44 GMT): Poneey (Fri, 06 Apr 2018 11:57:52 GMT): Pranoti (Fri, 06 Apr 2018 12:02:00 GMT): Poneey (Fri, 06 Apr 2018 12:04:17 GMT): Pranoti (Fri, 06 Apr 2018 12:10:20 GMT): suva (Fri, 06 Apr 2018 12:13:13 GMT): suva (Fri, 06 Apr 2018 12:13:14 GMT): suva (Fri, 06 Apr 2018 12:13:30 GMT): suva (Fri, 06 Apr 2018 12:13:40 GMT): Poneey (Fri, 06 Apr 2018 12:14:13 GMT): Poneey (Fri, 06 Apr 2018 12:14:51 GMT): Poneey (Fri, 06 Apr 2018 12:15:14 GMT): Poneey (Fri, 06 Apr 2018 12:15:22 GMT): hamza113 (Fri, 06 Apr 2018 12:16:40 GMT): suva (Fri, 06 Apr 2018 12:19:07 GMT): Poneey (Fri, 06 Apr 2018 12:31:24 GMT): mahoney1 (Fri, 06 Apr 2018 12:33:06 GMT): mahoney1 (Fri, 06 Apr 2018 12:35:51 GMT): Poneey (Fri, 06 Apr 2018 12:38:55 GMT): hamza113 (Fri, 06 Apr 2018 12:48:29 GMT): hamza113 (Fri, 06 Apr 2018 13:00:32 GMT): hamza113 (Fri, 06 Apr 2018 13:01:12 GMT): Pranoti (Fri, 06 Apr 2018 13:02:22 GMT): cbishop (Fri, 06 Apr 2018 13:07:16 GMT): mahoney1 (Fri, 06 Apr 2018 13:08:06 GMT): mahoney1 (Fri, 06 Apr 2018 13:08:53 GMT): mahoney1 (Fri, 06 Apr 2018 13:08:53 GMT): dwinicour (Fri, 06 Apr 2018 13:12:23 GMT): Poneey (Fri, 06 Apr 2018 13:13:28 GMT): Poneey (Fri, 06 Apr 2018 13:13:57 GMT): mahoney1 (Fri, 06 Apr 2018 13:14:28 GMT): mahoney1 (Fri, 06 Apr 2018 13:17:03 GMT): Poneey (Fri, 06 Apr 2018 13:21:11 GMT): Poneey (Fri, 06 Apr 2018 13:22:08 GMT): rthatcher (Fri, 06 Apr 2018 13:23:34 GMT): Poneey (Fri, 06 Apr 2018 13:28:41 GMT): mahoney1 (Fri, 06 Apr 2018 13:31:42 GMT): Poneey (Fri, 06 Apr 2018 13:35:06 GMT): CorentinPacaud (Fri, 06 Apr 2018 13:51:41 GMT): hamza113 (Fri, 06 Apr 2018 13:57:53 GMT): Pranoti (Fri, 06 Apr 2018 14:09:08 GMT): Pranoti (Fri, 06 Apr 2018 14:09:08 GMT): mahoney1 (Fri, 06 Apr 2018 14:09:56 GMT): mahoney1 (Fri, 06 Apr 2018 14:09:56 GMT): hamza113 (Fri, 06 Apr 2018 14:21:01 GMT): mahoney1 (Fri, 06 Apr 2018 14:31:54 GMT): cbishop (Fri, 06 Apr 2018 14:52:06 GMT): rthatcher (Fri, 06 Apr 2018 14:55:02 GMT): brondera (Fri, 06 Apr 2018 15:10:55 GMT): ChrisMcQueenDevelopment (Fri, 06 Apr 2018 15:40:06 GMT): mahoney1 (Fri, 06 Apr 2018 16:06:09 GMT): mahoney1 (Fri, 06 Apr 2018 16:06:09 GMT): mahoney1 (Fri, 06 Apr 2018 16:06:09 GMT): rthatcher (Fri, 06 Apr 2018 16:07:31 GMT): ChrisMcQueenDevelopment (Fri, 06 Apr 2018 16:07:55 GMT): DevB (Fri, 06 Apr 2018 17:24:59 GMT): robvic (Fri, 06 Apr 2018 17:26:44 GMT): robvic (Fri, 06 Apr 2018 17:27:01 GMT): internets (Fri, 06 Apr 2018 19:28:21 GMT): zachgoll (Fri, 06 Apr 2018 19:32:06 GMT): WebKruncher (Fri, 06 Apr 2018 20:48:09 GMT): DevB (Fri, 06 Apr 2018 21:10:52 GMT): kkado (Sat, 07 Apr 2018 04:06:20 GMT): frklau (Sat, 07 Apr 2018 05:18:32 GMT): frklau (Sat, 07 Apr 2018 05:20:13 GMT): HarshithaC (Sat, 07 Apr 2018 05:38:27 GMT): HarshithaC (Sat, 07 Apr 2018 05:43:17 GMT): mikeleow (Sat, 07 Apr 2018 07:34:23 GMT): mikeleow (Sat, 07 Apr 2018 07:55:59 GMT): mikeleow (Sat, 07 Apr 2018 07:56:00 GMT): VadimInshakov (Sat, 07 Apr 2018 08:21:04 GMT): HarshithaC (Sat, 07 Apr 2018 08:31:36 GMT): HarshithaC (Sat, 07 Apr 2018 08:31:36 GMT): HarshithaC (Sat, 07 Apr 2018 08:31:36 GMT): mikeleow (Sat, 07 Apr 2018 08:32:36 GMT): mikeleow (Sat, 07 Apr 2018 08:33:44 GMT): mikeleow (Sat, 07 Apr 2018 08:33:47 GMT): HarshithaC (Sat, 07 Apr 2018 08:35:20 GMT): mikeleow (Sat, 07 Apr 2018 08:39:34 GMT): mikeleow (Sat, 07 Apr 2018 08:40:15 GMT): mikeleow (Sat, 07 Apr 2018 08:40:32 GMT): HarshithaC (Sat, 07 Apr 2018 08:40:51 GMT): mikeleow (Sat, 07 Apr 2018 08:40:59 GMT): eduwardpost (Sat, 07 Apr 2018 08:53:04 GMT): mikeleow (Sat, 07 Apr 2018 08:57:41 GMT): ZahidZafar (Sat, 07 Apr 2018 10:24:48 GMT): Santhosh_S (Sat, 07 Apr 2018 10:53:25 GMT): sagargarg (Sat, 07 Apr 2018 11:13:27 GMT): sagargarg (Sat, 07 Apr 2018 11:13:27 GMT): Santhosh_S (Sat, 07 Apr 2018 11:32:05 GMT): SomnathMukherjee (Sat, 07 Apr 2018 18:21:15 GMT): JackMalinowski (Sat, 07 Apr 2018 21:55:40 GMT): JackMalinowski (Sat, 07 Apr 2018 21:55:55 GMT): eduwardpost (Sat, 07 Apr 2018 22:06:13 GMT): akula (Sat, 07 Apr 2018 22:10:27 GMT): eduwardpost (Sat, 07 Apr 2018 22:11:29 GMT): akula (Sat, 07 Apr 2018 22:13:17 GMT): eduwardpost (Sat, 07 Apr 2018 22:14:24 GMT): eduwardpost (Sat, 07 Apr 2018 22:14:46 GMT): eduwardpost (Sat, 07 Apr 2018 22:16:03 GMT): akula (Sat, 07 Apr 2018 22:20:02 GMT): akula (Sat, 07 Apr 2018 22:20:25 GMT): eduwardpost (Sat, 07 Apr 2018 22:21:53 GMT): akula (Sat, 07 Apr 2018 22:24:47 GMT): akula (Sat, 07 Apr 2018 22:24:47 GMT): akula (Sat, 07 Apr 2018 22:25:22 GMT): eduwardpost (Sat, 07 Apr 2018 22:25:49 GMT): akula (Sat, 07 Apr 2018 22:26:46 GMT): eduwardpost (Sat, 07 Apr 2018 22:44:25 GMT): akula (Sat, 07 Apr 2018 22:44:49 GMT): kkado (Sun, 08 Apr 2018 00:31:26 GMT): JackMalinowski (Sun, 08 Apr 2018 01:24:07 GMT): mengluo668 (Sun, 08 Apr 2018 02:52:59 GMT): gewing (Sun, 08 Apr 2018 03:29:30 GMT): hamza113 (Sun, 08 Apr 2018 04:57:24 GMT): d8bhatta (Sun, 08 Apr 2018 05:33:26 GMT): d8bhatta (Sun, 08 Apr 2018 05:33:42 GMT): d8bhatta (Sun, 08 Apr 2018 05:33:45 GMT): d8bhatta (Sun, 08 Apr 2018 05:34:06 GMT): d8bhatta (Sun, 08 Apr 2018 05:43:19 GMT): sathishkumar0416 (Sun, 08 Apr 2018 05:46:44 GMT): ronaldlong46 (Sun, 08 Apr 2018 05:50:32 GMT): ronaldlong46 (Sun, 08 Apr 2018 05:51:15 GMT): ronaldlong46 (Sun, 08 Apr 2018 05:54:08 GMT): d8bhatta (Sun, 08 Apr 2018 05:56:25 GMT): ronaldlong46 (Sun, 08 Apr 2018 05:56:55 GMT): ronaldlong46 (Sun, 08 Apr 2018 05:57:20 GMT): d8bhatta (Sun, 08 Apr 2018 06:10:46 GMT): ronaldlong46 (Sun, 08 Apr 2018 06:11:21 GMT): ronaldlong46 (Sun, 08 Apr 2018 06:11:42 GMT): nivant9091 (Sun, 08 Apr 2018 06:20:26 GMT): d8bhatta (Sun, 08 Apr 2018 06:31:49 GMT): d8bhatta (Sun, 08 Apr 2018 06:31:51 GMT): davidkel (Sun, 08 Apr 2018 08:35:58 GMT): ChrisMcQueenDevelopment (Sun, 08 Apr 2018 08:44:12 GMT): Sriramj (Sun, 08 Apr 2018 09:43:32 GMT): mikeleow (Sun, 08 Apr 2018 10:29:15 GMT): mikeleow (Sun, 08 Apr 2018 10:29:20 GMT): mikeleow (Sun, 08 Apr 2018 10:29:21 GMT): mikeleow (Sun, 08 Apr 2018 10:29:44 GMT): mikeleow (Sun, 08 Apr 2018 10:45:11 GMT): davidkel (Sun, 08 Apr 2018 10:46:55 GMT): mikeleow (Sun, 08 Apr 2018 10:47:51 GMT): mikeleow (Sun, 08 Apr 2018 10:48:00 GMT): davidkel (Sun, 08 Apr 2018 10:48:05 GMT): mikeleow (Sun, 08 Apr 2018 10:49:00 GMT): mikeleow (Sun, 08 Apr 2018 10:49:13 GMT): mikeleow (Sun, 08 Apr 2018 10:49:19 GMT): mikeleow (Sun, 08 Apr 2018 10:49:22 GMT): mikeleow (Sun, 08 Apr 2018 10:49:32 GMT): davidkel (Sun, 08 Apr 2018 10:53:49 GMT): davidkel (Sun, 08 Apr 2018 10:53:49 GMT): mikeleow (Sun, 08 Apr 2018 11:23:10 GMT): mikeleow (Sun, 08 Apr 2018 11:23:46 GMT): mikeleow (Sun, 08 Apr 2018 11:29:49 GMT): mikeleow (Sun, 08 Apr 2018 11:29:51 GMT): NewToFabric (Sun, 08 Apr 2018 12:06:48 GMT): davidkel (Sun, 08 Apr 2018 12:09:11 GMT): mikeleow (Sun, 08 Apr 2018 12:39:17 GMT): bingo1234 (Sun, 08 Apr 2018 14:07:10 GMT): mikeleow (Sun, 08 Apr 2018 14:32:31 GMT): hamza113 (Sun, 08 Apr 2018 14:33:56 GMT): ShiuliRoy (Sun, 08 Apr 2018 14:48:03 GMT): mikeleow (Sun, 08 Apr 2018 14:50:28 GMT): bingo1234 (Sun, 08 Apr 2018 14:53:36 GMT): mikeleow (Sun, 08 Apr 2018 14:54:05 GMT): akula (Sun, 08 Apr 2018 14:54:39 GMT): bingo1234 (Sun, 08 Apr 2018 14:55:38 GMT): akula (Sun, 08 Apr 2018 14:57:46 GMT): mikeleow (Sun, 08 Apr 2018 14:57:52 GMT): akula (Sun, 08 Apr 2018 14:58:21 GMT): mikeleow (Sun, 08 Apr 2018 14:59:37 GMT): akula (Sun, 08 Apr 2018 15:00:01 GMT): akula (Sun, 08 Apr 2018 15:00:15 GMT): akula (Sun, 08 Apr 2018 15:00:34 GMT): akula (Sun, 08 Apr 2018 15:01:33 GMT): mikeleow (Sun, 08 Apr 2018 15:02:30 GMT): akula (Sun, 08 Apr 2018 15:03:47 GMT): akula (Sun, 08 Apr 2018 15:04:15 GMT): akula (Sun, 08 Apr 2018 15:05:09 GMT): mikeleow (Sun, 08 Apr 2018 15:05:36 GMT): akula (Sun, 08 Apr 2018 15:05:52 GMT): akula (Sun, 08 Apr 2018 15:06:25 GMT): mikeleow (Sun, 08 Apr 2018 15:08:06 GMT): mikeleow (Sun, 08 Apr 2018 15:08:07 GMT): akula (Sun, 08 Apr 2018 15:08:29 GMT): akula (Sun, 08 Apr 2018 15:08:57 GMT): akula (Sun, 08 Apr 2018 15:09:19 GMT): akula (Sun, 08 Apr 2018 15:10:40 GMT): mikeleow (Sun, 08 Apr 2018 15:12:27 GMT): mikeleow (Sun, 08 Apr 2018 15:13:03 GMT): mikeleow (Sun, 08 Apr 2018 15:13:10 GMT): mikeleow (Sun, 08 Apr 2018 15:13:13 GMT): akula (Sun, 08 Apr 2018 15:14:16 GMT): akula (Sun, 08 Apr 2018 15:15:53 GMT): mikeleow (Sun, 08 Apr 2018 15:24:55 GMT): mikeleow (Sun, 08 Apr 2018 16:37:35 GMT): mikeleow (Sun, 08 Apr 2018 16:37:44 GMT): akula (Sun, 08 Apr 2018 17:06:25 GMT): xiangj1 (Sun, 08 Apr 2018 18:02:21 GMT): JackMalinowski (Sun, 08 Apr 2018 21:30:52 GMT): jfilali (Sun, 08 Apr 2018 21:53:51 GMT): gewing (Mon, 09 Apr 2018 01:47:36 GMT): Mark818 (Mon, 09 Apr 2018 02:30:38 GMT): Mark818 (Mon, 09 Apr 2018 02:30:38 GMT): Mark818 (Mon, 09 Apr 2018 02:30:38 GMT): Mark818 (Mon, 09 Apr 2018 02:30:38 GMT): Mark818 (Mon, 09 Apr 2018 02:30:38 GMT): Mark818 (Mon, 09 Apr 2018 02:30:38 GMT): Mark818 (Mon, 09 Apr 2018 02:30:38 GMT): Mark818 (Mon, 09 Apr 2018 02:30:38 GMT): akula (Mon, 09 Apr 2018 03:45:45 GMT): akula (Mon, 09 Apr 2018 03:46:00 GMT): Abhilash04 (Mon, 09 Apr 2018 05:06:55 GMT): johnpentester (Mon, 09 Apr 2018 06:01:34 GMT): johnpentester (Mon, 09 Apr 2018 06:01:34 GMT): jericho_holic (Mon, 09 Apr 2018 06:05:38 GMT): Mark818 (Mon, 09 Apr 2018 06:11:55 GMT): divudivyansh (Mon, 09 Apr 2018 07:05:07 GMT): divudivyansh (Mon, 09 Apr 2018 07:05:08 GMT): hanumankumarn (Mon, 09 Apr 2018 08:07:22 GMT): sstone1 (Mon, 09 Apr 2018 08:11:25 GMT): AkshayJindal (Mon, 09 Apr 2018 08:21:51 GMT): AkshayJindal (Mon, 09 Apr 2018 08:21:51 GMT): AkshayJindal (Mon, 09 Apr 2018 08:21:51 GMT): AkshayJindal (Mon, 09 Apr 2018 08:21:51 GMT): rthatcher (Mon, 09 Apr 2018 08:23:25 GMT): divudivyansh (Mon, 09 Apr 2018 08:29:44 GMT): divudivyansh (Mon, 09 Apr 2018 08:30:12 GMT): divudivyansh (Mon, 09 Apr 2018 08:30:16 GMT): rthatcher (Mon, 09 Apr 2018 08:31:50 GMT): AkshayJindal (Mon, 09 Apr 2018 08:34:50 GMT): rthatcher (Mon, 09 Apr 2018 08:35:06 GMT): shalin 9 (Mon, 09 Apr 2018 08:45:21 GMT): haile 3 (Mon, 09 Apr 2018 08:51:50 GMT): ydennisy (Mon, 09 Apr 2018 08:52:44 GMT): shalin 9 (Mon, 09 Apr 2018 08:53:03 GMT): suva (Mon, 09 Apr 2018 08:55:57 GMT): suva (Mon, 09 Apr 2018 08:56:16 GMT): suva (Mon, 09 Apr 2018 08:56:17 GMT): suva (Mon, 09 Apr 2018 08:56:52 GMT): JackMalinowski (Mon, 09 Apr 2018 09:01:37 GMT): mahoney1 (Mon, 09 Apr 2018 09:05:48 GMT): suva (Mon, 09 Apr 2018 09:06:25 GMT): suva (Mon, 09 Apr 2018 09:07:14 GMT): suva (Mon, 09 Apr 2018 09:07:16 GMT): suva (Mon, 09 Apr 2018 09:07:39 GMT): suva (Mon, 09 Apr 2018 09:08:04 GMT): mahoney1 (Mon, 09 Apr 2018 09:13:44 GMT): mahoney1 (Mon, 09 Apr 2018 09:17:00 GMT): Pranoti (Mon, 09 Apr 2018 09:26:08 GMT): Pranoti (Mon, 09 Apr 2018 09:26:08 GMT): sstone1 (Mon, 09 Apr 2018 09:39:08 GMT): suva (Mon, 09 Apr 2018 10:00:23 GMT): suva (Mon, 09 Apr 2018 10:01:01 GMT): rthatcher (Mon, 09 Apr 2018 10:04:16 GMT): rthatcher (Mon, 09 Apr 2018 10:06:30 GMT): suva (Mon, 09 Apr 2018 10:32:24 GMT): suva (Mon, 09 Apr 2018 10:32:40 GMT): suva (Mon, 09 Apr 2018 10:32:44 GMT): suva (Mon, 09 Apr 2018 10:32:45 GMT): suva (Mon, 09 Apr 2018 10:33:06 GMT): ZahidZafar (Mon, 09 Apr 2018 10:34:58 GMT): ZahidZafar (Mon, 09 Apr 2018 10:34:58 GMT): ZahidZafar (Mon, 09 Apr 2018 10:34:58 GMT): ZahidZafar (Mon, 09 Apr 2018 10:34:58 GMT): suva (Mon, 09 Apr 2018 10:44:11 GMT): mahoney1 (Mon, 09 Apr 2018 10:51:19 GMT): suva (Mon, 09 Apr 2018 10:52:20 GMT): suva (Mon, 09 Apr 2018 10:52:26 GMT): ZahidZafar (Mon, 09 Apr 2018 10:53:17 GMT): IanBradbury_Rex (Mon, 09 Apr 2018 10:57:47 GMT): JackMalinowski (Mon, 09 Apr 2018 11:01:35 GMT): mahoney1 (Mon, 09 Apr 2018 11:04:07 GMT): suva (Mon, 09 Apr 2018 11:07:15 GMT): suva (Mon, 09 Apr 2018 11:07:36 GMT): suva (Mon, 09 Apr 2018 11:08:15 GMT): suva (Mon, 09 Apr 2018 11:08:27 GMT): suva (Mon, 09 Apr 2018 11:08:52 GMT): suva (Mon, 09 Apr 2018 11:09:17 GMT): suva (Mon, 09 Apr 2018 11:09:37 GMT): bingo1234 (Mon, 09 Apr 2018 11:10:18 GMT): JackMalinowski (Mon, 09 Apr 2018 11:14:35 GMT): sathishkumar0416 (Mon, 09 Apr 2018 11:15:20 GMT): sathishkumar0416 (Mon, 09 Apr 2018 11:15:42 GMT): sathishkumar0416 (Mon, 09 Apr 2018 11:16:06 GMT): mahoney1 (Mon, 09 Apr 2018 11:26:22 GMT): mahoney1 (Mon, 09 Apr 2018 11:39:48 GMT): hussein.knight (Mon, 09 Apr 2018 11:39:53 GMT): mahoney1 (Mon, 09 Apr 2018 11:40:31 GMT): dayubian (Mon, 09 Apr 2018 11:40:37 GMT): JackMalinowski (Mon, 09 Apr 2018 11:43:48 GMT): hussein.knight (Mon, 09 Apr 2018 11:44:59 GMT): mahoney1 (Mon, 09 Apr 2018 11:52:51 GMT): javascrack (Mon, 09 Apr 2018 12:20:30 GMT): ipahomov (Mon, 09 Apr 2018 12:38:26 GMT): ipahomov (Mon, 09 Apr 2018 12:38:26 GMT): ipahomov (Mon, 09 Apr 2018 12:38:26 GMT): JoshuaRippon (Mon, 09 Apr 2018 12:39:25 GMT): rthatcher (Mon, 09 Apr 2018 12:41:05 GMT): blockbuilder (Mon, 09 Apr 2018 12:43:33 GMT): blockbuilder (Mon, 09 Apr 2018 12:44:04 GMT): JoshuaRippon (Mon, 09 Apr 2018 12:44:19 GMT): bestbeforetoday (Mon, 09 Apr 2018 12:44:41 GMT): rthatcher (Mon, 09 Apr 2018 12:58:56 GMT): nasserfci (Mon, 09 Apr 2018 13:22:31 GMT): Poneey (Mon, 09 Apr 2018 13:24:36 GMT): rthatcher (Mon, 09 Apr 2018 13:55:13 GMT): alanblyth (Mon, 09 Apr 2018 14:46:06 GMT): nikolas (Mon, 09 Apr 2018 14:48:51 GMT): nikolas (Mon, 09 Apr 2018 14:50:07 GMT): ipahomov (Mon, 09 Apr 2018 14:55:12 GMT): akula (Mon, 09 Apr 2018 15:00:20 GMT): akula (Mon, 09 Apr 2018 15:01:47 GMT): kmohanar (Mon, 09 Apr 2018 15:05:23 GMT): ipahomov (Mon, 09 Apr 2018 15:09:51 GMT): rthatcher (Mon, 09 Apr 2018 15:12:11 GMT): rthatcher (Mon, 09 Apr 2018 15:12:11 GMT): akula (Mon, 09 Apr 2018 15:15:08 GMT): ipahomov (Mon, 09 Apr 2018 15:22:36 GMT): KuAmirul (Mon, 09 Apr 2018 15:23:34 GMT): nasserfci (Mon, 09 Apr 2018 15:24:31 GMT): KuAmirul (Mon, 09 Apr 2018 15:25:36 GMT): rthatcher (Mon, 09 Apr 2018 15:26:05 GMT): BilalAhmad (Mon, 09 Apr 2018 15:26:14 GMT): akula (Mon, 09 Apr 2018 15:26:21 GMT): rthatcher (Mon, 09 Apr 2018 15:28:20 GMT): ipahomov (Mon, 09 Apr 2018 15:28:38 GMT): kmohanar (Mon, 09 Apr 2018 15:29:06 GMT): ipahomov (Mon, 09 Apr 2018 15:29:22 GMT): KuAmirul (Mon, 09 Apr 2018 15:30:16 GMT): JackMalinowski (Mon, 09 Apr 2018 15:30:27 GMT): BilalAhmad (Mon, 09 Apr 2018 15:32:34 GMT): nikolas (Mon, 09 Apr 2018 15:32:42 GMT): akula (Mon, 09 Apr 2018 15:33:27 GMT): ipahomov (Mon, 09 Apr 2018 15:35:34 GMT): bestbeforetoday (Mon, 09 Apr 2018 15:37:12 GMT): bestbeforetoday (Mon, 09 Apr 2018 15:37:12 GMT): akula (Mon, 09 Apr 2018 15:39:19 GMT): rthatcher (Mon, 09 Apr 2018 15:41:53 GMT): BilalAhmad (Mon, 09 Apr 2018 15:42:24 GMT): rthatcher (Mon, 09 Apr 2018 15:44:31 GMT): nasserfci (Mon, 09 Apr 2018 15:49:28 GMT): ipahomov (Mon, 09 Apr 2018 15:53:02 GMT): akula (Mon, 09 Apr 2018 15:55:20 GMT): ningyan325 (Mon, 09 Apr 2018 15:55:23 GMT): ipahomov (Mon, 09 Apr 2018 16:00:25 GMT): mahoney1 (Mon, 09 Apr 2018 16:01:59 GMT): akula (Mon, 09 Apr 2018 16:03:11 GMT): ipahomov (Mon, 09 Apr 2018 16:06:56 GMT): ipahomov (Mon, 09 Apr 2018 16:07:50 GMT): akula (Mon, 09 Apr 2018 16:08:19 GMT): akula (Mon, 09 Apr 2018 16:08:19 GMT): akula (Mon, 09 Apr 2018 16:09:19 GMT): ipahomov (Mon, 09 Apr 2018 16:09:59 GMT): akula (Mon, 09 Apr 2018 16:10:51 GMT): mikeleow (Mon, 09 Apr 2018 16:32:56 GMT): ydennisy (Mon, 09 Apr 2018 17:03:29 GMT): ydennisy (Mon, 09 Apr 2018 17:03:35 GMT): ydennisy (Mon, 09 Apr 2018 17:04:15 GMT): ydennisy (Mon, 09 Apr 2018 17:04:36 GMT): ydennisy (Mon, 09 Apr 2018 17:04:49 GMT): ydennisy (Mon, 09 Apr 2018 17:05:03 GMT): akula (Mon, 09 Apr 2018 17:07:21 GMT): ydennisy (Mon, 09 Apr 2018 17:08:08 GMT): ydennisy (Mon, 09 Apr 2018 17:08:39 GMT): sagargarg (Mon, 09 Apr 2018 17:08:40 GMT): akula (Mon, 09 Apr 2018 17:10:44 GMT): mikeleow (Mon, 09 Apr 2018 17:11:28 GMT): mikeleow (Mon, 09 Apr 2018 17:11:35 GMT): mikeleow (Mon, 09 Apr 2018 17:11:49 GMT): ydennisy (Mon, 09 Apr 2018 17:12:41 GMT): ydennisy (Mon, 09 Apr 2018 17:13:03 GMT): ydennisy (Mon, 09 Apr 2018 17:13:05 GMT): akula (Mon, 09 Apr 2018 17:13:53 GMT): mikeleow (Mon, 09 Apr 2018 17:15:35 GMT): eguevarar (Mon, 09 Apr 2018 17:19:46 GMT): mikeleow (Mon, 09 Apr 2018 17:23:29 GMT): ydennisy (Mon, 09 Apr 2018 17:51:56 GMT): mikeleow (Mon, 09 Apr 2018 17:53:36 GMT): mikeleow (Mon, 09 Apr 2018 17:53:50 GMT): mikeleow (Mon, 09 Apr 2018 17:56:31 GMT): mikeleow (Mon, 09 Apr 2018 17:56:34 GMT): mikeleow (Mon, 09 Apr 2018 18:34:59 GMT): mikeleow (Mon, 09 Apr 2018 18:35:03 GMT): phanikumar (Mon, 09 Apr 2018 18:50:58 GMT): mikeleow (Mon, 09 Apr 2018 19:45:26 GMT): seba (Mon, 09 Apr 2018 19:50:42 GMT): TimJohnson (Mon, 09 Apr 2018 20:03:32 GMT): diego.garzon (Mon, 09 Apr 2018 20:05:26 GMT): diego.garzon (Mon, 09 Apr 2018 20:11:42 GMT): faezeh993 (Mon, 09 Apr 2018 21:16:10 GMT): faezeh993 (Mon, 09 Apr 2018 21:16:45 GMT): faezeh993 (Mon, 09 Apr 2018 21:17:41 GMT): faezeh993 (Mon, 09 Apr 2018 21:17:45 GMT): RogerManke (Mon, 09 Apr 2018 21:20:44 GMT): akula (Mon, 09 Apr 2018 21:25:25 GMT): akula (Mon, 09 Apr 2018 21:25:25 GMT): faezeh993 (Mon, 09 Apr 2018 21:36:33 GMT): suva (Tue, 10 Apr 2018 06:51:06 GMT): suva (Tue, 10 Apr 2018 06:51:11 GMT): Poneey (Tue, 10 Apr 2018 07:12:33 GMT): erNail (Tue, 10 Apr 2018 07:13:52 GMT): davidkel (Tue, 10 Apr 2018 07:28:22 GMT): erNail (Tue, 10 Apr 2018 07:29:31 GMT): Pranoti (Tue, 10 Apr 2018 07:40:47 GMT): Poneey (Tue, 10 Apr 2018 07:45:04 GMT): davidkel (Tue, 10 Apr 2018 07:49:30 GMT): kmohanar (Tue, 10 Apr 2018 07:53:17 GMT): kmohanar (Tue, 10 Apr 2018 07:53:17 GMT): mostafa.elsayyad (Tue, 10 Apr 2018 08:09:01 GMT): HarpreetDev (Tue, 10 Apr 2018 08:13:18 GMT): Leonardo01 (Tue, 10 Apr 2018 08:13:36 GMT): Leonardo01 (Tue, 10 Apr 2018 08:24:09 GMT): suva (Tue, 10 Apr 2018 08:27:37 GMT): Pranoti (Tue, 10 Apr 2018 08:50:31 GMT): Pranoti (Tue, 10 Apr 2018 08:50:31 GMT): rthatcher (Tue, 10 Apr 2018 08:50:57 GMT): rthatcher (Tue, 10 Apr 2018 08:52:55 GMT): CorentinPacaud (Tue, 10 Apr 2018 08:58:07 GMT): sagargarg (Tue, 10 Apr 2018 08:59:16 GMT): suva (Tue, 10 Apr 2018 09:01:28 GMT): suva (Tue, 10 Apr 2018 09:02:19 GMT): mahoney1 (Tue, 10 Apr 2018 09:10:19 GMT): CorentinPacaud (Tue, 10 Apr 2018 09:19:50 GMT): sagargarg (Tue, 10 Apr 2018 09:38:45 GMT): CorentinPacaud (Tue, 10 Apr 2018 09:41:36 GMT): sreeharsha (Tue, 10 Apr 2018 09:49:36 GMT): ReginaMehta (Tue, 10 Apr 2018 09:52:30 GMT): rthatcher (Tue, 10 Apr 2018 09:53:57 GMT): Pattyrick (Tue, 10 Apr 2018 09:53:59 GMT): ydennisy (Tue, 10 Apr 2018 09:59:09 GMT): ydennisy (Tue, 10 Apr 2018 10:00:09 GMT): ydennisy (Tue, 10 Apr 2018 10:03:34 GMT): ydennisy (Tue, 10 Apr 2018 10:03:35 GMT): ydennisy (Tue, 10 Apr 2018 10:04:35 GMT): ydennisy (Tue, 10 Apr 2018 10:04:48 GMT): d8bhatta (Tue, 10 Apr 2018 10:14:15 GMT): d8bhatta (Tue, 10 Apr 2018 10:16:03 GMT): d8bhatta (Tue, 10 Apr 2018 10:17:49 GMT): mahoney1 (Tue, 10 Apr 2018 10:18:14 GMT): JoshuaRippon (Tue, 10 Apr 2018 10:18:18 GMT): ydennisy (Tue, 10 Apr 2018 10:20:38 GMT): mahoney1 (Tue, 10 Apr 2018 10:22:15 GMT): mahoney1 (Tue, 10 Apr 2018 10:26:34 GMT): mahoney1 (Tue, 10 Apr 2018 10:27:21 GMT): d8bhatta (Tue, 10 Apr 2018 10:28:06 GMT): d8bhatta (Tue, 10 Apr 2018 10:28:08 GMT): mahoney1 (Tue, 10 Apr 2018 10:31:59 GMT): mahoney1 (Tue, 10 Apr 2018 10:31:59 GMT): ydennisy (Tue, 10 Apr 2018 10:32:02 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 10:32:36 GMT): hussein.knight (Tue, 10 Apr 2018 10:32:53 GMT): hussein.knight (Tue, 10 Apr 2018 10:38:08 GMT): hussein.knight (Tue, 10 Apr 2018 10:38:08 GMT): d8bhatta (Tue, 10 Apr 2018 10:42:27 GMT): suva (Tue, 10 Apr 2018 10:51:31 GMT): suva (Tue, 10 Apr 2018 10:52:04 GMT): suva (Tue, 10 Apr 2018 10:52:17 GMT): suva (Tue, 10 Apr 2018 10:52:25 GMT): mahoney1 (Tue, 10 Apr 2018 10:57:54 GMT): CorentinPacaud (Tue, 10 Apr 2018 11:01:28 GMT): CorentinPacaud (Tue, 10 Apr 2018 11:03:00 GMT): CorentinPacaud (Tue, 10 Apr 2018 11:03:00 GMT): CorentinPacaud (Tue, 10 Apr 2018 11:05:17 GMT): CorentinPacaud (Tue, 10 Apr 2018 11:11:09 GMT): mahoney1 (Tue, 10 Apr 2018 11:28:02 GMT): mahoney1 (Tue, 10 Apr 2018 11:28:27 GMT): suva (Tue, 10 Apr 2018 11:47:06 GMT): suva (Tue, 10 Apr 2018 11:48:31 GMT): suva (Tue, 10 Apr 2018 11:49:01 GMT): suva (Tue, 10 Apr 2018 11:49:18 GMT): mahoney1 (Tue, 10 Apr 2018 11:51:11 GMT): kmohanar (Tue, 10 Apr 2018 11:53:06 GMT): CorentinPacaud (Tue, 10 Apr 2018 11:54:18 GMT): CorentinPacaud (Tue, 10 Apr 2018 11:55:17 GMT): CorentinPacaud (Tue, 10 Apr 2018 11:55:29 GMT): CorentinPacaud (Tue, 10 Apr 2018 11:55:31 GMT): mahoney1 (Tue, 10 Apr 2018 11:56:45 GMT): mahoney1 (Tue, 10 Apr 2018 11:56:45 GMT): CorentinPacaud (Tue, 10 Apr 2018 11:59:37 GMT): suva (Tue, 10 Apr 2018 12:01:16 GMT): suva (Tue, 10 Apr 2018 12:02:09 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 12:03:28 GMT): suva (Tue, 10 Apr 2018 12:03:41 GMT): suva (Tue, 10 Apr 2018 12:03:41 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 12:05:09 GMT): mahoney1 (Tue, 10 Apr 2018 12:06:27 GMT): mahoney1 (Tue, 10 Apr 2018 12:06:27 GMT): CorentinPacaud (Tue, 10 Apr 2018 12:06:42 GMT): suva (Tue, 10 Apr 2018 12:07:16 GMT): suva (Tue, 10 Apr 2018 12:07:21 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 12:08:12 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 12:08:12 GMT): bandreghetti (Tue, 10 Apr 2018 12:08:52 GMT): mahoney1 (Tue, 10 Apr 2018 12:09:14 GMT): CorentinPacaud (Tue, 10 Apr 2018 12:09:25 GMT): suva (Tue, 10 Apr 2018 12:10:38 GMT): CorentinPacaud (Tue, 10 Apr 2018 12:21:17 GMT): rthatcher (Tue, 10 Apr 2018 12:28:12 GMT): erNail (Tue, 10 Apr 2018 12:34:10 GMT): erNail (Tue, 10 Apr 2018 12:34:10 GMT): davidkel (Tue, 10 Apr 2018 12:39:38 GMT): CorentinPacaud (Tue, 10 Apr 2018 12:52:28 GMT): ComposerAPI (Tue, 10 Apr 2018 12:58:40 GMT): ComposerAPI (Tue, 10 Apr 2018 12:59:31 GMT): ComposerAPI (Tue, 10 Apr 2018 12:59:40 GMT): rthatcher (Tue, 10 Apr 2018 13:07:38 GMT): jerry-zww (Tue, 10 Apr 2018 13:08:27 GMT): erNail (Tue, 10 Apr 2018 13:10:23 GMT): jerry-zww (Tue, 10 Apr 2018 13:11:20 GMT): CorentinPacaud (Tue, 10 Apr 2018 13:11:45 GMT): jerry-zww (Tue, 10 Apr 2018 13:12:18 GMT): jerry-zww (Tue, 10 Apr 2018 13:12:54 GMT): CorentinPacaud (Tue, 10 Apr 2018 13:13:05 GMT): jerry-zww (Tue, 10 Apr 2018 13:13:54 GMT): jerry-zww (Tue, 10 Apr 2018 13:14:12 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 13:15:44 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 13:16:23 GMT): rthatcher (Tue, 10 Apr 2018 13:17:01 GMT): ComposerAPI (Tue, 10 Apr 2018 13:20:17 GMT): rthatcher (Tue, 10 Apr 2018 13:22:07 GMT): ComposerAPI (Tue, 10 Apr 2018 13:24:16 GMT): Stecec (Tue, 10 Apr 2018 13:31:40 GMT): Stecec (Tue, 10 Apr 2018 13:31:40 GMT): Stecec (Tue, 10 Apr 2018 13:31:40 GMT): Stecec (Tue, 10 Apr 2018 13:31:40 GMT): Stecec (Tue, 10 Apr 2018 13:31:40 GMT): ComposerAPI (Tue, 10 Apr 2018 13:34:24 GMT): davidkel (Tue, 10 Apr 2018 13:40:57 GMT): davidkel (Tue, 10 Apr 2018 13:40:57 GMT): rthatcher (Tue, 10 Apr 2018 13:42:25 GMT): Poneey (Tue, 10 Apr 2018 13:47:28 GMT): nerogit (Tue, 10 Apr 2018 13:52:09 GMT): rthatcher (Tue, 10 Apr 2018 13:53:36 GMT): vanithasiraparapu (Tue, 10 Apr 2018 14:08:05 GMT): phanikumar (Tue, 10 Apr 2018 14:09:40 GMT): y2255236 (Tue, 10 Apr 2018 14:09:43 GMT): y2255236 (Tue, 10 Apr 2018 14:09:43 GMT): y2255236 (Tue, 10 Apr 2018 14:09:43 GMT): PierreHenry (Tue, 10 Apr 2018 14:19:01 GMT): PierreHenry (Tue, 10 Apr 2018 14:19:01 GMT): PierreHenry (Tue, 10 Apr 2018 14:19:01 GMT): PierreHenry (Tue, 10 Apr 2018 14:19:01 GMT): Pranoti (Tue, 10 Apr 2018 14:20:17 GMT): Pranoti (Tue, 10 Apr 2018 14:20:17 GMT): Pranoti (Tue, 10 Apr 2018 14:20:17 GMT): CorentinPacaud (Tue, 10 Apr 2018 14:27:30 GMT): Stecec (Tue, 10 Apr 2018 14:29:22 GMT): Stecec (Tue, 10 Apr 2018 14:29:22 GMT): Stecec (Tue, 10 Apr 2018 14:29:22 GMT): Pranoti (Tue, 10 Apr 2018 14:31:59 GMT): Pranoti (Tue, 10 Apr 2018 14:31:59 GMT): CorentinPacaud (Tue, 10 Apr 2018 14:33:44 GMT): JoshuaRippon (Tue, 10 Apr 2018 14:35:45 GMT): Pranoti (Tue, 10 Apr 2018 14:38:09 GMT): Pranoti (Tue, 10 Apr 2018 14:38:09 GMT): CorentinPacaud (Tue, 10 Apr 2018 14:41:49 GMT): PierreHenry (Tue, 10 Apr 2018 14:45:33 GMT): PierreHenry (Tue, 10 Apr 2018 14:45:33 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 14:52:59 GMT): JoshuaRippon (Tue, 10 Apr 2018 14:56:02 GMT): JoshuaRippon (Tue, 10 Apr 2018 14:56:43 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 14:57:08 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 14:57:39 GMT): JoshuaRippon (Tue, 10 Apr 2018 14:58:17 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 14:58:53 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 14:59:46 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 15:00:06 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 15:00:43 GMT): XingqiangMao (Tue, 10 Apr 2018 15:01:31 GMT): JoshuaRippon (Tue, 10 Apr 2018 15:02:41 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 15:05:25 GMT): JoshuaRippon (Tue, 10 Apr 2018 15:05:50 GMT): JoshuaRippon (Tue, 10 Apr 2018 15:07:06 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 15:09:27 GMT): ChrisMcQueenDevelopment (Tue, 10 Apr 2018 15:09:58 GMT): rthatcher (Tue, 10 Apr 2018 15:29:42 GMT): rthatcher (Tue, 10 Apr 2018 15:32:19 GMT): rthatcher (Tue, 10 Apr 2018 15:38:39 GMT): PierreHenry (Tue, 10 Apr 2018 15:39:41 GMT): PierreHenry (Tue, 10 Apr 2018 15:39:41 GMT): rthatcher (Tue, 10 Apr 2018 15:57:52 GMT): andrisjordan (Tue, 10 Apr 2018 16:27:47 GMT): andrisjordan (Tue, 10 Apr 2018 16:27:53 GMT): rthatcher (Tue, 10 Apr 2018 16:41:15 GMT): kkermanizadeh (Tue, 10 Apr 2018 17:21:35 GMT): RogerManke (Tue, 10 Apr 2018 17:23:03 GMT): Stecec (Tue, 10 Apr 2018 17:34:19 GMT): Stecec (Tue, 10 Apr 2018 17:34:19 GMT): Stecec (Tue, 10 Apr 2018 17:34:19 GMT): Stecec (Tue, 10 Apr 2018 17:34:19 GMT): Stecec (Tue, 10 Apr 2018 17:34:19 GMT): Stecec (Tue, 10 Apr 2018 17:34:19 GMT): akula (Tue, 10 Apr 2018 17:36:17 GMT): akula (Tue, 10 Apr 2018 17:36:49 GMT): akula (Tue, 10 Apr 2018 17:37:49 GMT): akula (Tue, 10 Apr 2018 17:39:20 GMT): akula (Tue, 10 Apr 2018 17:39:20 GMT): akula (Tue, 10 Apr 2018 17:45:59 GMT): brendonakay (Tue, 10 Apr 2018 17:46:45 GMT): brendonakay (Tue, 10 Apr 2018 17:47:10 GMT): davidkel (Tue, 10 Apr 2018 17:50:53 GMT): tk-101 (Tue, 10 Apr 2018 18:08:35 GMT): Stecec (Tue, 10 Apr 2018 18:13:11 GMT): JackStrohm (Tue, 10 Apr 2018 18:22:28 GMT): akula (Tue, 10 Apr 2018 18:27:50 GMT): akula (Tue, 10 Apr 2018 18:27:50 GMT): a.ochs (Tue, 10 Apr 2018 18:38:31 GMT): a.ochs (Tue, 10 Apr 2018 18:43:45 GMT): Stecec (Tue, 10 Apr 2018 20:25:54 GMT): Stecec (Tue, 10 Apr 2018 20:25:54 GMT): theathibm (Tue, 10 Apr 2018 21:01:39 GMT): ronaldlong46 (Tue, 10 Apr 2018 21:08:30 GMT): ronaldlong46 (Tue, 10 Apr 2018 21:08:43 GMT): thoduerr (Tue, 10 Apr 2018 21:32:30 GMT): JackStrohm (Tue, 10 Apr 2018 21:40:13 GMT): Landnode (Tue, 10 Apr 2018 23:52:08 GMT): akula (Wed, 11 Apr 2018 00:43:18 GMT): akula (Wed, 11 Apr 2018 00:44:07 GMT): emailnjv (Wed, 11 Apr 2018 00:53:52 GMT): PaulYeoh (Wed, 11 Apr 2018 02:39:33 GMT): PaulYeoh (Wed, 11 Apr 2018 03:28:10 GMT): akula (Wed, 11 Apr 2018 03:30:25 GMT): akula (Wed, 11 Apr 2018 03:31:24 GMT): akula (Wed, 11 Apr 2018 04:05:28 GMT): dsl (Wed, 11 Apr 2018 04:58:23 GMT): PaulYeoh (Wed, 11 Apr 2018 05:28:54 GMT): d8bhatta (Wed, 11 Apr 2018 05:52:15 GMT): mitrashan (Wed, 11 Apr 2018 06:12:00 GMT): MartinKrmer (Wed, 11 Apr 2018 06:14:11 GMT): mitrashan (Wed, 11 Apr 2018 06:16:36 GMT): Pranoti (Wed, 11 Apr 2018 06:28:44 GMT): d8bhatta (Wed, 11 Apr 2018 06:54:16 GMT): thoduerr (Wed, 11 Apr 2018 06:58:00 GMT): thoduerr (Wed, 11 Apr 2018 06:58:07 GMT): suva (Wed, 11 Apr 2018 06:58:42 GMT): suva (Wed, 11 Apr 2018 06:58:46 GMT): suva (Wed, 11 Apr 2018 06:59:24 GMT): suva (Wed, 11 Apr 2018 07:04:05 GMT): Pranoti (Wed, 11 Apr 2018 07:11:14 GMT): suva (Wed, 11 Apr 2018 07:20:38 GMT): Poneey (Wed, 11 Apr 2018 07:34:01 GMT): ShereenSallam (Wed, 11 Apr 2018 08:01:55 GMT): NAWAZUDDIN552 (Wed, 11 Apr 2018 08:10:09 GMT): rthatcher (Wed, 11 Apr 2018 08:19:08 GMT): rthatcher (Wed, 11 Apr 2018 08:19:08 GMT): rthatcher (Wed, 11 Apr 2018 08:22:42 GMT): rthatcher (Wed, 11 Apr 2018 08:26:23 GMT): rthatcher (Wed, 11 Apr 2018 08:31:35 GMT): ShereenSallam (Wed, 11 Apr 2018 08:32:53 GMT): mahoney1 (Wed, 11 Apr 2018 08:37:00 GMT): suva (Wed, 11 Apr 2018 08:39:03 GMT): Pranoti (Wed, 11 Apr 2018 08:44:58 GMT): rthatcher (Wed, 11 Apr 2018 08:45:16 GMT): anshulkathuria34 (Wed, 11 Apr 2018 08:46:19 GMT): anshulkathuria34 (Wed, 11 Apr 2018 08:48:40 GMT): PierreHenry (Wed, 11 Apr 2018 08:56:20 GMT): PierreHenry (Wed, 11 Apr 2018 08:56:20 GMT): PierreHenry (Wed, 11 Apr 2018 08:56:20 GMT): PierreHenry (Wed, 11 Apr 2018 08:56:20 GMT): rthatcher (Wed, 11 Apr 2018 09:01:26 GMT): anshulkathuria34 (Wed, 11 Apr 2018 09:10:47 GMT): rthatcher (Wed, 11 Apr 2018 09:11:13 GMT): rthatcher (Wed, 11 Apr 2018 09:11:13 GMT): rthatcher (Wed, 11 Apr 2018 09:18:09 GMT): rthatcher (Wed, 11 Apr 2018 09:18:09 GMT): PierreHenry (Wed, 11 Apr 2018 09:19:45 GMT): PierreHenry (Wed, 11 Apr 2018 09:19:45 GMT): PierreHenry (Wed, 11 Apr 2018 09:28:22 GMT): PierreHenry (Wed, 11 Apr 2018 09:28:22 GMT): ShereenSallam (Wed, 11 Apr 2018 09:37:04 GMT): Pranoti (Wed, 11 Apr 2018 09:38:02 GMT): anshulkathuria34 (Wed, 11 Apr 2018 09:41:21 GMT): anshulkathuria34 (Wed, 11 Apr 2018 09:41:52 GMT): suva (Wed, 11 Apr 2018 09:50:16 GMT): suva (Wed, 11 Apr 2018 09:50:33 GMT): mahoney1 (Wed, 11 Apr 2018 09:54:16 GMT): mahoney1 (Wed, 11 Apr 2018 09:57:15 GMT): mahoney1 (Wed, 11 Apr 2018 10:00:26 GMT): mahoney1 (Wed, 11 Apr 2018 10:00:26 GMT): Pranoti (Wed, 11 Apr 2018 10:17:32 GMT): Pranoti (Wed, 11 Apr 2018 10:17:32 GMT): MasthanbeeShaik (Wed, 11 Apr 2018 10:17:40 GMT): mahoney1 (Wed, 11 Apr 2018 10:42:48 GMT): sagargarg (Wed, 11 Apr 2018 10:54:44 GMT): MilanB3 (Wed, 11 Apr 2018 10:57:36 GMT): d8bhatta (Wed, 11 Apr 2018 10:57:50 GMT): d8bhatta (Wed, 11 Apr 2018 10:58:46 GMT): rthatcher (Wed, 11 Apr 2018 11:23:50 GMT): mahoney1 (Wed, 11 Apr 2018 11:47:07 GMT): rice (Wed, 11 Apr 2018 11:59:01 GMT): PierreHenry (Wed, 11 Apr 2018 12:07:55 GMT): PierreHenry (Wed, 11 Apr 2018 12:07:55 GMT): PierreHenry (Wed, 11 Apr 2018 12:07:55 GMT): alexvicegrab (Wed, 11 Apr 2018 12:31:13 GMT): rthatcher (Wed, 11 Apr 2018 12:39:49 GMT): alexvicegrab (Wed, 11 Apr 2018 12:41:59 GMT): alexvicegrab (Wed, 11 Apr 2018 12:41:59 GMT): alexvicegrab (Wed, 11 Apr 2018 12:41:59 GMT): alexvicegrab (Wed, 11 Apr 2018 12:41:59 GMT): alexvicegrab (Wed, 11 Apr 2018 12:41:59 GMT): alexvicegrab (Wed, 11 Apr 2018 12:41:59 GMT): alexvicegrab (Wed, 11 Apr 2018 12:41:59 GMT): alexvicegrab (Wed, 11 Apr 2018 12:41:59 GMT): PierreHenry (Wed, 11 Apr 2018 12:45:07 GMT): PierreHenry (Wed, 11 Apr 2018 12:45:07 GMT): PierreHenry (Wed, 11 Apr 2018 12:45:07 GMT): PierreHenry (Wed, 11 Apr 2018 12:45:07 GMT): rthatcher (Wed, 11 Apr 2018 12:47:30 GMT): rthatcher (Wed, 11 Apr 2018 12:47:30 GMT): alexvicegrab (Wed, 11 Apr 2018 12:48:30 GMT): alexvicegrab (Wed, 11 Apr 2018 12:48:30 GMT): alexvicegrab (Wed, 11 Apr 2018 12:54:33 GMT): Poneey (Wed, 11 Apr 2018 12:56:17 GMT): Poneey (Wed, 11 Apr 2018 12:57:12 GMT): JoshuaRippon (Wed, 11 Apr 2018 13:23:24 GMT): akula (Wed, 11 Apr 2018 13:29:45 GMT): mahoney1 (Wed, 11 Apr 2018 13:40:10 GMT): mahoney1 (Wed, 11 Apr 2018 13:41:49 GMT): JoshuaRippon (Wed, 11 Apr 2018 13:45:53 GMT): mahoney1 (Wed, 11 Apr 2018 13:46:12 GMT): JoshuaRippon (Wed, 11 Apr 2018 13:46:34 GMT): Poneey (Wed, 11 Apr 2018 13:51:23 GMT): mahoney1 (Wed, 11 Apr 2018 13:53:45 GMT): JoshuaRippon (Wed, 11 Apr 2018 13:58:35 GMT): mahoney1 (Wed, 11 Apr 2018 14:02:45 GMT): JoshuaRippon (Wed, 11 Apr 2018 14:06:57 GMT): CorentinPacaud (Wed, 11 Apr 2018 14:07:18 GMT): MonnyClara (Wed, 11 Apr 2018 14:07:55 GMT): CorentinPacaud (Wed, 11 Apr 2018 14:08:43 GMT): CorentinPacaud (Wed, 11 Apr 2018 14:10:11 GMT): CorentinPacaud (Wed, 11 Apr 2018 14:11:53 GMT): PierreHenry (Wed, 11 Apr 2018 14:20:08 GMT): PierreHenry (Wed, 11 Apr 2018 14:20:08 GMT): PierreHenry (Wed, 11 Apr 2018 14:20:44 GMT): omarqr (Wed, 11 Apr 2018 14:21:10 GMT): CorentinPacaud (Wed, 11 Apr 2018 14:22:21 GMT): CorentinPacaud (Wed, 11 Apr 2018 14:22:51 GMT): PierreHenry (Wed, 11 Apr 2018 14:24:02 GMT): PierreHenry (Wed, 11 Apr 2018 14:24:02 GMT): omarqr (Wed, 11 Apr 2018 14:24:43 GMT): CorentinPacaud (Wed, 11 Apr 2018 14:25:50 GMT): omarqr (Wed, 11 Apr 2018 14:26:23 GMT): CorentinPacaud (Wed, 11 Apr 2018 14:26:55 GMT): CorentinPacaud (Wed, 11 Apr 2018 14:26:55 GMT): omarqr (Wed, 11 Apr 2018 14:28:54 GMT): CorentinPacaud (Wed, 11 Apr 2018 14:29:25 GMT): CorentinPacaud (Wed, 11 Apr 2018 14:29:50 GMT): omarqr (Wed, 11 Apr 2018 14:29:52 GMT): mahoney1 (Wed, 11 Apr 2018 14:33:09 GMT): mahoney1 (Wed, 11 Apr 2018 14:33:09 GMT): omarqr (Wed, 11 Apr 2018 14:33:48 GMT): CorentinPacaud (Wed, 11 Apr 2018 14:38:11 GMT): CorentinPacaud (Wed, 11 Apr 2018 14:38:16 GMT): omarqr (Wed, 11 Apr 2018 14:47:19 GMT): mahoney1 (Wed, 11 Apr 2018 14:48:29 GMT): mahoney1 (Wed, 11 Apr 2018 14:48:29 GMT): mahoney1 (Wed, 11 Apr 2018 14:48:29 GMT): omarqr (Wed, 11 Apr 2018 14:51:50 GMT): Stecec (Wed, 11 Apr 2018 15:00:18 GMT): eramitg (Wed, 11 Apr 2018 15:40:55 GMT): rthatcher (Wed, 11 Apr 2018 15:54:55 GMT): rthatcher (Wed, 11 Apr 2018 15:57:54 GMT): eramitg (Wed, 11 Apr 2018 15:58:31 GMT): alexvicegrab (Wed, 11 Apr 2018 16:02:02 GMT): alexvicegrab (Wed, 11 Apr 2018 16:02:02 GMT): rthatcher (Wed, 11 Apr 2018 16:13:14 GMT): alexvicegrab (Wed, 11 Apr 2018 16:14:44 GMT): alexvicegrab (Wed, 11 Apr 2018 16:14:44 GMT): alexvicegrab (Wed, 11 Apr 2018 16:14:44 GMT): akula (Wed, 11 Apr 2018 16:33:22 GMT): harcmed (Wed, 11 Apr 2018 16:52:01 GMT): kkermanizadeh (Wed, 11 Apr 2018 17:49:10 GMT): davidkel (Wed, 11 Apr 2018 17:51:12 GMT): davidkel (Wed, 11 Apr 2018 17:51:55 GMT): davidkel (Wed, 11 Apr 2018 17:54:01 GMT): davidkel (Wed, 11 Apr 2018 17:54:01 GMT): Stecec (Wed, 11 Apr 2018 18:09:46 GMT): Stecec (Wed, 11 Apr 2018 18:09:46 GMT): Stecec (Wed, 11 Apr 2018 18:09:46 GMT): Stecec (Wed, 11 Apr 2018 18:09:46 GMT): Stecec (Wed, 11 Apr 2018 18:09:46 GMT): alexvicegrab (Wed, 11 Apr 2018 19:31:40 GMT): davidkel (Wed, 11 Apr 2018 20:08:59 GMT): davidkel (Wed, 11 Apr 2018 20:08:59 GMT): davidkel (Wed, 11 Apr 2018 20:13:42 GMT): alexvicegrab (Wed, 11 Apr 2018 20:42:47 GMT): davidkel (Wed, 11 Apr 2018 20:46:08 GMT): davidkel (Wed, 11 Apr 2018 20:49:06 GMT): davidkel (Wed, 11 Apr 2018 20:49:06 GMT): davidkel (Wed, 11 Apr 2018 20:50:44 GMT): alexvicegrab (Wed, 11 Apr 2018 20:56:33 GMT): alexvicegrab (Wed, 11 Apr 2018 21:08:10 GMT): davidkel (Wed, 11 Apr 2018 21:12:19 GMT): alexvicegrab (Wed, 11 Apr 2018 21:17:28 GMT): ParitBansal (Wed, 11 Apr 2018 23:02:09 GMT): DanHendricks (Thu, 12 Apr 2018 02:50:39 GMT): Shaan9888 (Thu, 12 Apr 2018 06:10:52 GMT): Shaan9888 (Thu, 12 Apr 2018 06:12:41 GMT): Shaan9888 (Thu, 12 Apr 2018 06:13:02 GMT): sagargarg (Thu, 12 Apr 2018 06:13:33 GMT): Shaan9888 (Thu, 12 Apr 2018 06:13:46 GMT): Shaan9888 (Thu, 12 Apr 2018 06:14:23 GMT): ppcm (Thu, 12 Apr 2018 06:39:48 GMT): ppcm (Thu, 12 Apr 2018 06:39:48 GMT): davidkel (Thu, 12 Apr 2018 07:07:53 GMT): davidkel (Thu, 12 Apr 2018 07:07:53 GMT): ppcm (Thu, 12 Apr 2018 07:10:48 GMT): hrt031293 (Thu, 12 Apr 2018 07:22:46 GMT): CorentinPacaud (Thu, 12 Apr 2018 07:48:18 GMT): rthatcher (Thu, 12 Apr 2018 08:27:40 GMT): mbwhite (Thu, 12 Apr 2018 08:27:58 GMT): PierreHenry (Thu, 12 Apr 2018 08:43:18 GMT): mbwhite (Thu, 12 Apr 2018 08:44:02 GMT): MonnyClara (Thu, 12 Apr 2018 08:46:13 GMT): MonnyClara (Thu, 12 Apr 2018 08:46:32 GMT): Shaan9888 (Thu, 12 Apr 2018 08:46:55 GMT): Shaan9888 (Thu, 12 Apr 2018 08:47:27 GMT): Shaan9888 (Thu, 12 Apr 2018 08:47:59 GMT): Shaan9888 (Thu, 12 Apr 2018 08:48:17 GMT): PierreHenry (Thu, 12 Apr 2018 08:57:38 GMT): PierreHenry (Thu, 12 Apr 2018 08:57:38 GMT): PierreHenry (Thu, 12 Apr 2018 08:57:38 GMT): PierreHenry (Thu, 12 Apr 2018 08:57:38 GMT): PierreHenry (Thu, 12 Apr 2018 08:57:38 GMT): PierreHenry (Thu, 12 Apr 2018 08:57:38 GMT): ppcm (Thu, 12 Apr 2018 09:12:19 GMT): mbwhite (Thu, 12 Apr 2018 09:15:32 GMT): ppcm (Thu, 12 Apr 2018 09:21:01 GMT): MyMate (Thu, 12 Apr 2018 09:21:42 GMT): GrondinLaurent (Thu, 12 Apr 2018 09:22:29 GMT): GrondinLaurent (Thu, 12 Apr 2018 09:22:29 GMT): GrondinLaurent (Thu, 12 Apr 2018 09:22:29 GMT): GrondinLaurent (Thu, 12 Apr 2018 09:22:29 GMT): GrondinLaurent (Thu, 12 Apr 2018 09:22:29 GMT): GrondinLaurent (Thu, 12 Apr 2018 09:22:29 GMT): GrondinLaurent (Thu, 12 Apr 2018 09:22:29 GMT): GrondinLaurent (Thu, 12 Apr 2018 09:22:29 GMT): NicolasGirardot (Thu, 12 Apr 2018 09:38:17 GMT): NicolasGirardot (Thu, 12 Apr 2018 09:38:47 GMT): Poneey (Thu, 12 Apr 2018 09:45:56 GMT): Poneey (Thu, 12 Apr 2018 09:49:58 GMT): rthatcher (Thu, 12 Apr 2018 09:50:35 GMT): Stecec (Thu, 12 Apr 2018 09:51:43 GMT): Shaan9888 (Thu, 12 Apr 2018 09:52:56 GMT): Shaan9888 (Thu, 12 Apr 2018 09:53:40 GMT): nasserfci (Thu, 12 Apr 2018 10:01:58 GMT): rthatcher (Thu, 12 Apr 2018 10:05:49 GMT): rthatcher (Thu, 12 Apr 2018 10:11:45 GMT): Shaan9888 (Thu, 12 Apr 2018 10:24:41 GMT): Shaan9888 (Thu, 12 Apr 2018 10:28:04 GMT): Shaan9888 (Thu, 12 Apr 2018 10:28:59 GMT): Shaan9888 (Thu, 12 Apr 2018 10:29:36 GMT): Shaan9888 (Thu, 12 Apr 2018 10:30:06 GMT): ppcm (Thu, 12 Apr 2018 10:31:40 GMT): itskhushal (Thu, 12 Apr 2018 10:31:44 GMT): itskhushal (Thu, 12 Apr 2018 10:31:44 GMT): suva (Thu, 12 Apr 2018 10:38:33 GMT): suva (Thu, 12 Apr 2018 10:38:40 GMT): suva (Thu, 12 Apr 2018 10:39:44 GMT): suva (Thu, 12 Apr 2018 10:40:06 GMT): itskhushal (Thu, 12 Apr 2018 10:52:48 GMT): jaswanth (Thu, 12 Apr 2018 10:53:10 GMT): LavaCafe (Thu, 12 Apr 2018 10:57:58 GMT): rthatcher (Thu, 12 Apr 2018 11:07:05 GMT): rthatcher (Thu, 12 Apr 2018 11:16:28 GMT): rthatcher (Thu, 12 Apr 2018 11:25:33 GMT): rthatcher (Thu, 12 Apr 2018 11:29:15 GMT): rthatcher (Thu, 12 Apr 2018 11:31:22 GMT): Stecec (Thu, 12 Apr 2018 11:32:16 GMT): Shaan9888 (Thu, 12 Apr 2018 11:32:49 GMT): itskhushal (Thu, 12 Apr 2018 11:40:08 GMT): rthatcher (Thu, 12 Apr 2018 11:42:28 GMT): rthatcher (Thu, 12 Apr 2018 11:42:28 GMT): itskhushal (Thu, 12 Apr 2018 11:44:09 GMT): davidkel (Thu, 12 Apr 2018 11:44:21 GMT): itskhushal (Thu, 12 Apr 2018 11:45:18 GMT): itskhushal (Thu, 12 Apr 2018 11:45:41 GMT): davidkel (Thu, 12 Apr 2018 11:47:45 GMT): itskhushal (Thu, 12 Apr 2018 11:49:12 GMT): ZahidZafar (Thu, 12 Apr 2018 11:51:33 GMT): ZahidZafar (Thu, 12 Apr 2018 11:51:33 GMT): ZahidZafar (Thu, 12 Apr 2018 11:51:33 GMT): itskhushal (Thu, 12 Apr 2018 11:51:55 GMT): HoneyShah (Thu, 12 Apr 2018 11:52:51 GMT): itskhushal (Thu, 12 Apr 2018 11:52:55 GMT): ZahidZafar (Thu, 12 Apr 2018 11:54:47 GMT): davidkel (Thu, 12 Apr 2018 11:55:04 GMT): davidkel (Thu, 12 Apr 2018 11:55:04 GMT): davidkel (Thu, 12 Apr 2018 11:56:05 GMT): itskhushal (Thu, 12 Apr 2018 11:56:51 GMT): itskhushal (Thu, 12 Apr 2018 11:57:03 GMT): itskhushal (Thu, 12 Apr 2018 11:57:42 GMT): davidkel (Thu, 12 Apr 2018 12:00:43 GMT): davidkel (Thu, 12 Apr 2018 12:00:43 GMT): MonnyClara (Thu, 12 Apr 2018 12:01:02 GMT): itskhushal (Thu, 12 Apr 2018 12:02:55 GMT): jon_s (Thu, 12 Apr 2018 12:05:04 GMT): fabienpe (Thu, 12 Apr 2018 12:29:44 GMT): fabienpe (Thu, 12 Apr 2018 12:29:44 GMT): ApoorvChandurkar (Thu, 12 Apr 2018 12:35:14 GMT): thoduerr (Thu, 12 Apr 2018 12:56:19 GMT): thoduerr (Thu, 12 Apr 2018 12:57:46 GMT): Juanan_Tejero (Thu, 12 Apr 2018 13:26:27 GMT): sstone1 (Thu, 12 Apr 2018 13:27:05 GMT): NicolasGirardot (Thu, 12 Apr 2018 13:27:51 GMT): Pranoti (Thu, 12 Apr 2018 13:30:36 GMT): MasthanbeeShaik (Thu, 12 Apr 2018 13:31:15 GMT): MasthanbeeShaik (Thu, 12 Apr 2018 13:31:54 GMT): MasthanbeeShaik (Thu, 12 Apr 2018 13:31:54 GMT): akula (Thu, 12 Apr 2018 13:37:16 GMT): MasthanbeeShaik (Thu, 12 Apr 2018 13:37:34 GMT): MasthanbeeShaik (Thu, 12 Apr 2018 13:37:34 GMT): rthatcher (Thu, 12 Apr 2018 13:38:53 GMT): akula (Thu, 12 Apr 2018 13:40:06 GMT): rthatcher (Thu, 12 Apr 2018 13:45:01 GMT): NicolasGirardot (Thu, 12 Apr 2018 13:46:08 GMT): NicolasGirardot (Thu, 12 Apr 2018 13:46:08 GMT): davidgsmits (Thu, 12 Apr 2018 13:47:35 GMT): rthatcher (Thu, 12 Apr 2018 13:50:52 GMT): NicolasGirardot (Thu, 12 Apr 2018 13:52:42 GMT): rthatcher (Thu, 12 Apr 2018 13:52:45 GMT): rthatcher (Thu, 12 Apr 2018 13:54:20 GMT): NicolasGirardot (Thu, 12 Apr 2018 13:57:46 GMT): BhaveshPatadiya (Thu, 12 Apr 2018 14:01:08 GMT): BhaveshPatadiya (Thu, 12 Apr 2018 14:02:03 GMT): rthatcher (Thu, 12 Apr 2018 14:04:31 GMT): AkshayJindal (Thu, 12 Apr 2018 14:05:49 GMT): AkshayJindal (Thu, 12 Apr 2018 14:05:49 GMT): Dieku (Thu, 12 Apr 2018 14:09:13 GMT): Dieku (Thu, 12 Apr 2018 14:09:15 GMT): akula (Thu, 12 Apr 2018 14:12:55 GMT): Shaan9888 (Thu, 12 Apr 2018 14:29:01 GMT): Shaan9888 (Thu, 12 Apr 2018 14:29:44 GMT): akula (Thu, 12 Apr 2018 14:31:03 GMT): akula (Thu, 12 Apr 2018 14:31:18 GMT): Shaan9888 (Thu, 12 Apr 2018 14:32:13 GMT): akula (Thu, 12 Apr 2018 14:33:30 GMT): akula (Thu, 12 Apr 2018 14:34:23 GMT): Shaan9888 (Thu, 12 Apr 2018 14:34:49 GMT): akula (Thu, 12 Apr 2018 14:34:56 GMT): Shaan9888 (Thu, 12 Apr 2018 14:35:30 GMT): Shaan9888 (Thu, 12 Apr 2018 14:35:48 GMT): Shaan9888 (Thu, 12 Apr 2018 14:35:58 GMT): Shaan9888 (Thu, 12 Apr 2018 14:36:01 GMT): Shaan9888 (Thu, 12 Apr 2018 14:37:59 GMT): akula (Thu, 12 Apr 2018 14:38:16 GMT): rthatcher (Thu, 12 Apr 2018 15:02:08 GMT): rthatcher (Thu, 12 Apr 2018 15:02:08 GMT): yxnl (Thu, 12 Apr 2018 15:03:51 GMT): epezhman (Thu, 12 Apr 2018 15:08:01 GMT): zachgoll (Thu, 12 Apr 2018 15:48:55 GMT): zachgoll (Thu, 12 Apr 2018 15:48:55 GMT): zachgoll (Thu, 12 Apr 2018 15:48:55 GMT): bestbeforetoday (Thu, 12 Apr 2018 16:15:00 GMT): zachgoll (Thu, 12 Apr 2018 16:15:57 GMT): thoduerr (Thu, 12 Apr 2018 17:03:32 GMT): thoduerr (Thu, 12 Apr 2018 17:56:52 GMT): davidkel (Thu, 12 Apr 2018 18:14:32 GMT): html5-ninja (Thu, 12 Apr 2018 19:43:58 GMT): html5-ninja (Thu, 12 Apr 2018 19:44:32 GMT): sv2011 (Thu, 12 Apr 2018 19:59:39 GMT): sv2011 (Thu, 12 Apr 2018 20:01:47 GMT): sv2011 (Thu, 12 Apr 2018 20:03:03 GMT): html5-ninja (Thu, 12 Apr 2018 20:05:49 GMT): html5-ninja (Thu, 12 Apr 2018 20:06:18 GMT): krabradosty (Thu, 12 Apr 2018 20:54:22 GMT): sv2011 (Thu, 12 Apr 2018 21:00:23 GMT): sv2011 (Thu, 12 Apr 2018 21:03:07 GMT): sv2011 (Thu, 12 Apr 2018 21:10:15 GMT): Rajen (Thu, 12 Apr 2018 21:12:55 GMT): davidkel (Thu, 12 Apr 2018 21:24:39 GMT): zscole (Thu, 12 Apr 2018 21:51:03 GMT): Dieku (Thu, 12 Apr 2018 21:55:44 GMT): Dieku (Thu, 12 Apr 2018 21:56:06 GMT): Dieku (Thu, 12 Apr 2018 22:02:19 GMT): davidkel (Thu, 12 Apr 2018 22:03:58 GMT): davidkel (Thu, 12 Apr 2018 22:03:58 GMT): davidkel (Thu, 12 Apr 2018 22:03:58 GMT): davidkel (Thu, 12 Apr 2018 22:06:09 GMT): davidkel (Thu, 12 Apr 2018 22:06:09 GMT): davidkel (Thu, 12 Apr 2018 22:06:09 GMT): sv2011 (Thu, 12 Apr 2018 23:26:22 GMT): ztanaka1971 (Fri, 13 Apr 2018 00:51:45 GMT): msj121 (Fri, 13 Apr 2018 02:06:02 GMT): msj121 (Fri, 13 Apr 2018 02:07:14 GMT): msj121 (Fri, 13 Apr 2018 02:11:31 GMT): msj121 (Fri, 13 Apr 2018 02:11:31 GMT): easeev (Fri, 13 Apr 2018 03:16:05 GMT): rich (Fri, 13 Apr 2018 03:19:49 GMT): JohnR (Fri, 13 Apr 2018 04:11:51 GMT): HoneyShah (Fri, 13 Apr 2018 05:14:30 GMT): JohnR (Fri, 13 Apr 2018 05:29:23 GMT): JohnR (Fri, 13 Apr 2018 05:29:28 GMT): JohnR (Fri, 13 Apr 2018 05:29:41 GMT): HoneyShah (Fri, 13 Apr 2018 05:34:51 GMT): Shaan9888 (Fri, 13 Apr 2018 05:41:03 GMT): Shaan9888 (Fri, 13 Apr 2018 05:41:28 GMT): kavyamk (Fri, 13 Apr 2018 05:45:05 GMT): kavyamk (Fri, 13 Apr 2018 05:45:46 GMT): sstone1 (Fri, 13 Apr 2018 05:49:49 GMT): sstone1 (Fri, 13 Apr 2018 05:50:44 GMT): sstone1 (Fri, 13 Apr 2018 05:51:13 GMT): sstone1 (Fri, 13 Apr 2018 05:52:35 GMT): jon_s (Fri, 13 Apr 2018 06:05:57 GMT): jon_s (Fri, 13 Apr 2018 06:06:10 GMT): jon_s (Fri, 13 Apr 2018 06:06:20 GMT): jon_s (Fri, 13 Apr 2018 06:10:09 GMT): HoneyShah (Fri, 13 Apr 2018 06:17:05 GMT): jon_s (Fri, 13 Apr 2018 06:19:17 GMT): jon_s (Fri, 13 Apr 2018 06:42:11 GMT): Shaan9888 (Fri, 13 Apr 2018 06:45:28 GMT): BhaveshPatadiya (Fri, 13 Apr 2018 06:47:02 GMT): jon_s (Fri, 13 Apr 2018 06:49:07 GMT): ReginaMehta (Fri, 13 Apr 2018 06:49:50 GMT): jon_s (Fri, 13 Apr 2018 06:50:10 GMT): jon_s (Fri, 13 Apr 2018 06:50:12 GMT): Shaan9888 (Fri, 13 Apr 2018 06:50:50 GMT): sstone1 (Fri, 13 Apr 2018 06:51:49 GMT): Shaan9888 (Fri, 13 Apr 2018 06:52:51 GMT): jon_s (Fri, 13 Apr 2018 06:52:52 GMT): jon_s (Fri, 13 Apr 2018 06:53:53 GMT): jon_s (Fri, 13 Apr 2018 06:53:53 GMT): sstone1 (Fri, 13 Apr 2018 06:59:03 GMT): sstone1 (Fri, 13 Apr 2018 06:59:44 GMT): jon_s (Fri, 13 Apr 2018 07:00:55 GMT): jon_s (Fri, 13 Apr 2018 07:00:58 GMT): JohnR (Fri, 13 Apr 2018 07:08:02 GMT): JohnR (Fri, 13 Apr 2018 07:10:51 GMT): JohnR (Fri, 13 Apr 2018 07:11:18 GMT): HoneyShah (Fri, 13 Apr 2018 07:21:00 GMT): HoneyShah (Fri, 13 Apr 2018 07:21:00 GMT): divudivyansh (Fri, 13 Apr 2018 07:24:46 GMT): sstone1 (Fri, 13 Apr 2018 07:32:04 GMT): BhaveshPatadiya (Fri, 13 Apr 2018 07:40:59 GMT): BhaveshPatadiya (Fri, 13 Apr 2018 07:40:59 GMT): abalandin (Fri, 13 Apr 2018 07:43:02 GMT): sstone1 (Fri, 13 Apr 2018 08:01:11 GMT): jon_s (Fri, 13 Apr 2018 08:03:08 GMT): rthatcher (Fri, 13 Apr 2018 08:17:35 GMT): Poneey (Fri, 13 Apr 2018 08:19:26 GMT): rthatcher (Fri, 13 Apr 2018 08:25:30 GMT): rthatcher (Fri, 13 Apr 2018 08:27:19 GMT): Poneey (Fri, 13 Apr 2018 08:31:47 GMT): Poneey (Fri, 13 Apr 2018 08:34:06 GMT): JohnR (Fri, 13 Apr 2018 08:47:23 GMT): rthatcher (Fri, 13 Apr 2018 08:49:46 GMT): Poneey (Fri, 13 Apr 2018 08:51:41 GMT): ReginaMehta (Fri, 13 Apr 2018 08:59:43 GMT): Poneey (Fri, 13 Apr 2018 09:02:24 GMT): rthatcher (Fri, 13 Apr 2018 09:06:55 GMT): BhaveshPatadiya (Fri, 13 Apr 2018 09:07:19 GMT): rthatcher (Fri, 13 Apr 2018 09:08:26 GMT): ReginaMehta (Fri, 13 Apr 2018 09:09:06 GMT): ReginaMehta (Fri, 13 Apr 2018 09:09:06 GMT): HoneyShah (Fri, 13 Apr 2018 09:11:48 GMT): HoneyShah (Fri, 13 Apr 2018 09:11:48 GMT): HoneyShah (Fri, 13 Apr 2018 09:11:48 GMT): HoneyShah (Fri, 13 Apr 2018 09:11:48 GMT): rthatcher (Fri, 13 Apr 2018 09:13:03 GMT): Poneey (Fri, 13 Apr 2018 09:17:51 GMT): rthatcher (Fri, 13 Apr 2018 09:20:15 GMT): Poneey (Fri, 13 Apr 2018 09:22:20 GMT): BhaveshPatadiya (Fri, 13 Apr 2018 09:23:48 GMT): rthatcher (Fri, 13 Apr 2018 09:27:10 GMT): jon_s (Fri, 13 Apr 2018 09:43:47 GMT): ReginaMehta (Fri, 13 Apr 2018 09:58:13 GMT): Pranoti (Fri, 13 Apr 2018 10:06:04 GMT): rthatcher (Fri, 13 Apr 2018 10:08:25 GMT): BhaveshPatadiya (Fri, 13 Apr 2018 10:14:33 GMT): BhaveshPatadiya (Fri, 13 Apr 2018 10:14:33 GMT): sstone1 (Fri, 13 Apr 2018 10:15:50 GMT): jon_s (Fri, 13 Apr 2018 10:17:38 GMT): jon_s (Fri, 13 Apr 2018 10:17:56 GMT): HoneyShah (Fri, 13 Apr 2018 10:18:05 GMT): jon_s (Fri, 13 Apr 2018 10:18:22 GMT): BhaveshPatadiya (Fri, 13 Apr 2018 10:18:35 GMT): Poneey (Fri, 13 Apr 2018 10:18:46 GMT): jon_s (Fri, 13 Apr 2018 10:19:13 GMT): jon_s (Fri, 13 Apr 2018 10:19:20 GMT): rthatcher (Fri, 13 Apr 2018 10:27:00 GMT): ReginaMehta (Fri, 13 Apr 2018 10:29:35 GMT): rthatcher (Fri, 13 Apr 2018 10:31:21 GMT): jon_s (Fri, 13 Apr 2018 10:42:04 GMT): jon_s (Fri, 13 Apr 2018 10:42:12 GMT): jon_s (Fri, 13 Apr 2018 10:42:41 GMT): jon_s (Fri, 13 Apr 2018 10:42:54 GMT): jon_s (Fri, 13 Apr 2018 10:43:06 GMT): jon_s (Fri, 13 Apr 2018 10:43:21 GMT): jon_s (Fri, 13 Apr 2018 10:43:40 GMT): jon_s (Fri, 13 Apr 2018 10:44:15 GMT): jon_s (Fri, 13 Apr 2018 10:44:22 GMT): jon_s (Fri, 13 Apr 2018 10:44:38 GMT): jon_s (Fri, 13 Apr 2018 10:49:38 GMT): jon_s (Fri, 13 Apr 2018 10:49:41 GMT): jon_s (Fri, 13 Apr 2018 10:49:42 GMT): rthatcher (Fri, 13 Apr 2018 10:49:46 GMT): jon_s (Fri, 13 Apr 2018 10:50:03 GMT): rthatcher (Fri, 13 Apr 2018 10:50:04 GMT): jon_s (Fri, 13 Apr 2018 10:50:23 GMT): jon_s (Fri, 13 Apr 2018 10:50:26 GMT): jon_s (Fri, 13 Apr 2018 10:51:27 GMT): jon_s (Fri, 13 Apr 2018 10:52:21 GMT): suva (Fri, 13 Apr 2018 10:55:12 GMT): suva (Fri, 13 Apr 2018 10:55:41 GMT): suva (Fri, 13 Apr 2018 10:55:43 GMT): suva (Fri, 13 Apr 2018 10:56:06 GMT): suva (Fri, 13 Apr 2018 10:56:12 GMT): suva (Fri, 13 Apr 2018 10:56:24 GMT): jon_s (Fri, 13 Apr 2018 11:00:42 GMT): jon_s (Fri, 13 Apr 2018 11:01:04 GMT): rthatcher (Fri, 13 Apr 2018 11:01:21 GMT): Poneey (Fri, 13 Apr 2018 11:08:10 GMT): Poneey (Fri, 13 Apr 2018 11:26:01 GMT): Poneey (Fri, 13 Apr 2018 11:35:41 GMT): Pranoti (Fri, 13 Apr 2018 11:46:45 GMT): jon_s (Fri, 13 Apr 2018 11:52:59 GMT): jon_s (Fri, 13 Apr 2018 11:53:21 GMT): jon_s (Fri, 13 Apr 2018 11:53:28 GMT): sstone1 (Fri, 13 Apr 2018 12:02:44 GMT): Pranoti (Fri, 13 Apr 2018 12:10:14 GMT): Pranoti (Fri, 13 Apr 2018 12:10:14 GMT): Pranoti (Fri, 13 Apr 2018 12:10:36 GMT): Pranoti (Fri, 13 Apr 2018 12:10:36 GMT): Pranoti (Fri, 13 Apr 2018 12:10:36 GMT): divudivyansh (Fri, 13 Apr 2018 12:19:09 GMT): divudivyansh (Fri, 13 Apr 2018 12:19:44 GMT): divudivyansh (Fri, 13 Apr 2018 12:19:45 GMT): omarqr (Fri, 13 Apr 2018 12:22:10 GMT): omarqr (Fri, 13 Apr 2018 12:23:45 GMT): BhaveshPatadiya (Fri, 13 Apr 2018 12:28:19 GMT): BhaveshPatadiya (Fri, 13 Apr 2018 12:28:49 GMT): omarqr (Fri, 13 Apr 2018 12:30:46 GMT): omarqr (Fri, 13 Apr 2018 12:30:46 GMT): omarqr (Fri, 13 Apr 2018 12:31:35 GMT): omarqr (Fri, 13 Apr 2018 12:31:46 GMT): sstone1 (Fri, 13 Apr 2018 12:33:25 GMT): divudivyansh (Fri, 13 Apr 2018 12:34:44 GMT): omarqr (Fri, 13 Apr 2018 12:37:51 GMT): omarqr (Fri, 13 Apr 2018 12:40:23 GMT): divudivyansh (Fri, 13 Apr 2018 12:41:21 GMT): divudivyansh (Fri, 13 Apr 2018 12:41:40 GMT): omarqr (Fri, 13 Apr 2018 12:43:21 GMT): sstone1 (Fri, 13 Apr 2018 12:44:17 GMT): omarqr (Fri, 13 Apr 2018 12:46:07 GMT): sstone1 (Fri, 13 Apr 2018 12:46:36 GMT): sstone1 (Fri, 13 Apr 2018 12:46:44 GMT): omarqr (Fri, 13 Apr 2018 12:49:47 GMT): omarqr (Fri, 13 Apr 2018 12:50:28 GMT): sstone1 (Fri, 13 Apr 2018 12:50:52 GMT): sstone1 (Fri, 13 Apr 2018 12:51:05 GMT): omarqr (Fri, 13 Apr 2018 12:52:25 GMT): Poneey (Fri, 13 Apr 2018 12:56:46 GMT): rthatcher (Fri, 13 Apr 2018 12:59:34 GMT): fTrestour (Fri, 13 Apr 2018 13:03:43 GMT): nebularnoise (Fri, 13 Apr 2018 13:03:57 GMT): omarqr (Fri, 13 Apr 2018 13:05:01 GMT): omarqr (Fri, 13 Apr 2018 13:05:50 GMT): mmehta (Fri, 13 Apr 2018 13:05:56 GMT): rthatcher (Fri, 13 Apr 2018 13:07:30 GMT): rthatcher (Fri, 13 Apr 2018 13:09:43 GMT): Poneey (Fri, 13 Apr 2018 13:11:00 GMT): omarqr (Fri, 13 Apr 2018 13:12:40 GMT): epezhman (Fri, 13 Apr 2018 13:12:50 GMT): nebularnoise (Fri, 13 Apr 2018 13:15:49 GMT): rthatcher (Fri, 13 Apr 2018 13:16:59 GMT): rthatcher (Fri, 13 Apr 2018 13:16:59 GMT): AkshayJindal (Fri, 13 Apr 2018 13:23:19 GMT): AkshayJindal (Fri, 13 Apr 2018 13:23:19 GMT): AkshayJindal (Fri, 13 Apr 2018 13:23:19 GMT): uber.twin (Fri, 13 Apr 2018 13:29:22 GMT): uber.twin (Fri, 13 Apr 2018 13:29:22 GMT): rthatcher (Fri, 13 Apr 2018 13:39:21 GMT): vitorduarte (Fri, 13 Apr 2018 13:42:14 GMT): CorentinPacaud (Fri, 13 Apr 2018 13:42:46 GMT): nebularnoise (Fri, 13 Apr 2018 13:43:19 GMT): CorentinPacaud (Fri, 13 Apr 2018 13:43:35 GMT): nebularnoise (Fri, 13 Apr 2018 13:43:52 GMT): CorentinPacaud (Fri, 13 Apr 2018 13:44:19 GMT): davidkel (Fri, 13 Apr 2018 13:49:01 GMT): thoduerr (Fri, 13 Apr 2018 13:54:15 GMT): thoduerr (Fri, 13 Apr 2018 13:55:00 GMT): thoduerr (Fri, 13 Apr 2018 13:56:06 GMT): thoduerr (Fri, 13 Apr 2018 13:56:40 GMT): omarqr (Fri, 13 Apr 2018 13:57:52 GMT): nebularnoise (Fri, 13 Apr 2018 13:59:09 GMT): nebularnoise (Fri, 13 Apr 2018 13:59:09 GMT): Dieku (Fri, 13 Apr 2018 13:59:48 GMT): HoneyShah (Fri, 13 Apr 2018 14:05:04 GMT): thoduerr (Fri, 13 Apr 2018 14:06:37 GMT): thoduerr (Fri, 13 Apr 2018 14:06:37 GMT): andreamagagna (Fri, 13 Apr 2018 14:07:32 GMT): andreamagagna (Fri, 13 Apr 2018 14:07:52 GMT): HoneyShah (Fri, 13 Apr 2018 14:08:57 GMT): HoneyShah (Fri, 13 Apr 2018 14:08:57 GMT): andreamagagna (Fri, 13 Apr 2018 14:11:38 GMT): andreamagagna (Fri, 13 Apr 2018 14:11:38 GMT): andreamagagna (Fri, 13 Apr 2018 14:12:10 GMT): HoneyShah (Fri, 13 Apr 2018 14:13:13 GMT): HoneyShah (Fri, 13 Apr 2018 14:13:13 GMT): HoneyShah (Fri, 13 Apr 2018 14:13:13 GMT): HoneyShah (Fri, 13 Apr 2018 14:13:13 GMT): andreamagagna (Fri, 13 Apr 2018 14:13:26 GMT): rthatcher (Fri, 13 Apr 2018 14:16:31 GMT): rthatcher (Fri, 13 Apr 2018 14:16:31 GMT): AkshayJindal (Fri, 13 Apr 2018 14:24:33 GMT): rthatcher (Fri, 13 Apr 2018 14:31:29 GMT): davidkel (Fri, 13 Apr 2018 14:35:54 GMT): d8bhatta (Fri, 13 Apr 2018 14:39:25 GMT): d8bhatta (Fri, 13 Apr 2018 14:40:52 GMT): d8bhatta (Fri, 13 Apr 2018 14:42:18 GMT): nebularnoise (Fri, 13 Apr 2018 14:45:05 GMT): d8bhatta (Fri, 13 Apr 2018 14:46:14 GMT): d8bhatta (Fri, 13 Apr 2018 14:47:17 GMT): d8bhatta (Fri, 13 Apr 2018 14:47:31 GMT): nebularnoise (Fri, 13 Apr 2018 14:49:01 GMT): d8bhatta (Fri, 13 Apr 2018 14:52:17 GMT): andreamagagna (Fri, 13 Apr 2018 15:14:57 GMT): vitorduarte (Fri, 13 Apr 2018 15:30:13 GMT): rthatcher (Fri, 13 Apr 2018 15:48:35 GMT): krabradosty (Fri, 13 Apr 2018 15:53:16 GMT): aviralwal (Fri, 13 Apr 2018 15:55:53 GMT): rthatcher (Fri, 13 Apr 2018 16:01:28 GMT): krabradosty (Fri, 13 Apr 2018 16:08:04 GMT): mffrench (Fri, 13 Apr 2018 16:26:05 GMT): mffrench (Fri, 13 Apr 2018 16:27:01 GMT): mffrench (Fri, 13 Apr 2018 16:27:16 GMT): mffrench (Fri, 13 Apr 2018 16:28:47 GMT): mffrench (Fri, 13 Apr 2018 16:29:33 GMT): mffrench (Fri, 13 Apr 2018 16:29:39 GMT): mffrench (Fri, 13 Apr 2018 16:30:02 GMT): mffrench (Fri, 13 Apr 2018 16:30:09 GMT): rthatcher (Fri, 13 Apr 2018 16:36:34 GMT): mffrench (Fri, 13 Apr 2018 16:38:42 GMT): ajayatgit (Fri, 13 Apr 2018 16:44:19 GMT): Arindam (Fri, 13 Apr 2018 17:52:12 GMT): Arindam (Fri, 13 Apr 2018 17:52:47 GMT): gerferra (Fri, 13 Apr 2018 18:45:49 GMT): cuevrob (Fri, 13 Apr 2018 22:33:30 GMT): ronaldlong46 (Sat, 14 Apr 2018 01:26:48 GMT): ronaldlong46 (Sat, 14 Apr 2018 01:26:49 GMT): sstone1 (Sat, 14 Apr 2018 05:57:25 GMT): jesusruizlopez (Sat, 14 Apr 2018 06:57:18 GMT): jesusruizlopez (Sat, 14 Apr 2018 06:57:45 GMT): jesusruizlopez (Sat, 14 Apr 2018 06:58:20 GMT): jesusruizlopez (Sat, 14 Apr 2018 06:59:05 GMT): jesusruizlopez (Sat, 14 Apr 2018 06:59:31 GMT): wohla (Sat, 14 Apr 2018 07:51:22 GMT): qutpeter (Sat, 14 Apr 2018 09:20:43 GMT): bh4rtp (Sat, 14 Apr 2018 09:59:45 GMT): hussein.knight (Sat, 14 Apr 2018 10:30:05 GMT): davidkel (Sat, 14 Apr 2018 10:59:04 GMT): nmrk (Sat, 14 Apr 2018 11:28:12 GMT): sstone1 (Sat, 14 Apr 2018 14:20:24 GMT): mauriziocarioli (Sat, 14 Apr 2018 14:45:47 GMT): eelkevdbos (Sat, 14 Apr 2018 16:03:27 GMT): sghosh2 (Sat, 14 Apr 2018 17:06:09 GMT): sghosh2 (Sat, 14 Apr 2018 17:06:09 GMT): sghosh2 (Sat, 14 Apr 2018 17:06:09 GMT): sghosh2 (Sat, 14 Apr 2018 17:07:30 GMT): sghosh2 (Sat, 14 Apr 2018 17:07:52 GMT): sghosh2 (Sat, 14 Apr 2018 17:09:12 GMT): AkshayJindal (Sat, 14 Apr 2018 18:49:38 GMT): ursumarius (Sat, 14 Apr 2018 19:18:28 GMT): jesusruizlopez (Sat, 14 Apr 2018 20:41:28 GMT): cuevrob (Sun, 15 Apr 2018 02:17:19 GMT): tiyyagurasatish (Sun, 15 Apr 2018 03:39:54 GMT): bh4rtp (Sun, 15 Apr 2018 08:27:10 GMT): bh4rtp (Sun, 15 Apr 2018 08:27:58 GMT): bh4rtp (Sun, 15 Apr 2018 09:12:07 GMT): nerogit (Sun, 15 Apr 2018 09:53:56 GMT): nerogit (Sun, 15 Apr 2018 10:06:39 GMT): JairoopBasavaiah (Sun, 15 Apr 2018 13:32:51 GMT): vahuja4 (Sun, 15 Apr 2018 14:52:05 GMT): vahuja4 (Sun, 15 Apr 2018 14:52:18 GMT): kkermanizadeh (Sun, 15 Apr 2018 16:44:53 GMT): mertcanyucel (Sun, 15 Apr 2018 18:49:47 GMT): sunnrunner (Sun, 15 Apr 2018 19:07:38 GMT): mhell245 (Mon, 16 Apr 2018 02:11:07 GMT): mhell245 (Mon, 16 Apr 2018 02:11:43 GMT): hamza113 (Mon, 16 Apr 2018 03:13:36 GMT): dara652 (Mon, 16 Apr 2018 04:17:08 GMT): suva (Mon, 16 Apr 2018 07:58:38 GMT): suva (Mon, 16 Apr 2018 07:58:40 GMT): suva (Mon, 16 Apr 2018 07:59:23 GMT): rthatcher (Mon, 16 Apr 2018 08:24:16 GMT): rthatcher (Mon, 16 Apr 2018 08:47:49 GMT): rthatcher (Mon, 16 Apr 2018 08:48:49 GMT): ReginaMehta (Mon, 16 Apr 2018 09:40:18 GMT): rthatcher (Mon, 16 Apr 2018 10:05:40 GMT): d8bhatta (Mon, 16 Apr 2018 10:40:05 GMT): d8bhatta (Mon, 16 Apr 2018 10:41:19 GMT): d8bhatta (Mon, 16 Apr 2018 10:41:22 GMT): d8bhatta (Mon, 16 Apr 2018 10:42:11 GMT): jon_s (Mon, 16 Apr 2018 11:49:27 GMT): dara652 (Mon, 16 Apr 2018 11:58:30 GMT): rthatcher (Mon, 16 Apr 2018 12:13:07 GMT): rthatcher (Mon, 16 Apr 2018 12:17:47 GMT): dara652 (Mon, 16 Apr 2018 12:34:14 GMT): jon_s (Mon, 16 Apr 2018 12:47:18 GMT): Poneey (Mon, 16 Apr 2018 12:49:22 GMT): Poneey (Mon, 16 Apr 2018 12:49:27 GMT): Pranoti (Mon, 16 Apr 2018 12:51:16 GMT): vick (Mon, 16 Apr 2018 12:52:40 GMT): vick (Mon, 16 Apr 2018 12:52:43 GMT): vick (Mon, 16 Apr 2018 12:53:26 GMT): Poneey (Mon, 16 Apr 2018 12:54:03 GMT): vick (Mon, 16 Apr 2018 12:54:31 GMT): vick (Mon, 16 Apr 2018 12:54:39 GMT): Poneey (Mon, 16 Apr 2018 12:54:47 GMT): vick (Mon, 16 Apr 2018 12:55:03 GMT): vick (Mon, 16 Apr 2018 12:55:12 GMT): Poneey (Mon, 16 Apr 2018 12:55:50 GMT): vick (Mon, 16 Apr 2018 12:56:13 GMT): vick (Mon, 16 Apr 2018 12:56:24 GMT): Poneey (Mon, 16 Apr 2018 12:56:29 GMT): vick (Mon, 16 Apr 2018 12:56:43 GMT): Poneey (Mon, 16 Apr 2018 12:56:57 GMT): Poneey (Mon, 16 Apr 2018 12:57:26 GMT): vick (Mon, 16 Apr 2018 12:57:47 GMT): waidyanatha (Mon, 16 Apr 2018 12:58:12 GMT): rthatcher (Mon, 16 Apr 2018 13:01:17 GMT): vick (Mon, 16 Apr 2018 13:02:00 GMT): vick (Mon, 16 Apr 2018 13:02:23 GMT): vick (Mon, 16 Apr 2018 13:02:33 GMT): rthatcher (Mon, 16 Apr 2018 13:10:00 GMT): Pranoti (Mon, 16 Apr 2018 13:12:45 GMT): Pranoti (Mon, 16 Apr 2018 13:12:45 GMT): Pranoti (Mon, 16 Apr 2018 13:12:45 GMT): RahulSingh 6 (Mon, 16 Apr 2018 13:19:46 GMT): RahulSingh 6 (Mon, 16 Apr 2018 13:20:38 GMT): RahulSingh 6 (Mon, 16 Apr 2018 13:21:42 GMT): RahulSingh 6 (Mon, 16 Apr 2018 13:21:55 GMT): rthatcher (Mon, 16 Apr 2018 13:26:31 GMT): Pranoti (Mon, 16 Apr 2018 13:32:44 GMT): Pranoti (Mon, 16 Apr 2018 13:32:44 GMT): rthatcher (Mon, 16 Apr 2018 13:43:36 GMT): rthatcher (Mon, 16 Apr 2018 13:47:19 GMT): Mulan7723 (Mon, 16 Apr 2018 13:48:39 GMT): Mulan7723 (Mon, 16 Apr 2018 13:54:04 GMT): Pranoti (Mon, 16 Apr 2018 14:13:57 GMT): MartinKrmer (Mon, 16 Apr 2018 14:26:25 GMT): dara652 (Mon, 16 Apr 2018 14:32:36 GMT): vick (Mon, 16 Apr 2018 14:35:18 GMT): vick (Mon, 16 Apr 2018 14:36:45 GMT): vick (Mon, 16 Apr 2018 14:37:00 GMT): cuevrob (Mon, 16 Apr 2018 14:37:01 GMT): rthatcher (Mon, 16 Apr 2018 14:40:14 GMT): MartinKrmer (Mon, 16 Apr 2018 14:40:53 GMT): rthatcher (Mon, 16 Apr 2018 14:42:09 GMT): homoxapien (Mon, 16 Apr 2018 14:42:16 GMT): vick (Mon, 16 Apr 2018 14:42:32 GMT): vick (Mon, 16 Apr 2018 14:43:02 GMT): rthatcher (Mon, 16 Apr 2018 14:45:55 GMT): vick (Mon, 16 Apr 2018 14:46:48 GMT): rthatcher (Mon, 16 Apr 2018 14:47:39 GMT): vick (Mon, 16 Apr 2018 14:48:23 GMT): nikolas (Mon, 16 Apr 2018 14:53:35 GMT): vick (Mon, 16 Apr 2018 14:58:03 GMT): ksant (Mon, 16 Apr 2018 15:01:16 GMT): vick (Mon, 16 Apr 2018 15:01:22 GMT): rthatcher (Mon, 16 Apr 2018 15:05:14 GMT): ksant (Mon, 16 Apr 2018 15:09:43 GMT): cuevrob (Mon, 16 Apr 2018 15:25:15 GMT): rthatcher (Mon, 16 Apr 2018 15:32:19 GMT): rthatcher (Mon, 16 Apr 2018 15:33:50 GMT): cuevrob (Mon, 16 Apr 2018 15:34:44 GMT): ksant (Mon, 16 Apr 2018 15:36:57 GMT): davidkel (Mon, 16 Apr 2018 15:38:54 GMT): ksant (Mon, 16 Apr 2018 15:40:36 GMT): kpkrish (Mon, 16 Apr 2018 15:46:12 GMT): kkermanizadeh (Mon, 16 Apr 2018 15:51:08 GMT): ksant (Mon, 16 Apr 2018 15:53:40 GMT): kkermanizadeh (Mon, 16 Apr 2018 15:55:52 GMT): ksant (Mon, 16 Apr 2018 15:57:08 GMT): kkermanizadeh (Mon, 16 Apr 2018 16:20:50 GMT): thiennguyen2824 (Mon, 16 Apr 2018 16:22:14 GMT): kkermanizadeh (Mon, 16 Apr 2018 16:25:30 GMT): kkermanizadeh (Mon, 16 Apr 2018 16:30:51 GMT): kkermanizadeh (Mon, 16 Apr 2018 16:44:28 GMT): kkermanizadeh (Mon, 16 Apr 2018 16:47:48 GMT): kkermanizadeh (Mon, 16 Apr 2018 16:49:17 GMT): honey22 (Mon, 16 Apr 2018 18:17:19 GMT): honey22 (Mon, 16 Apr 2018 18:18:36 GMT): SimonHan (Mon, 16 Apr 2018 18:18:36 GMT): ksant (Mon, 16 Apr 2018 18:24:18 GMT): akshatbh (Mon, 16 Apr 2018 18:59:57 GMT): akshatbh (Mon, 16 Apr 2018 18:59:57 GMT): krabradosty (Mon, 16 Apr 2018 19:10:13 GMT): krabradosty (Mon, 16 Apr 2018 19:10:13 GMT): krabradosty (Mon, 16 Apr 2018 19:10:13 GMT): krabradosty (Mon, 16 Apr 2018 19:10:13 GMT): krabradosty (Mon, 16 Apr 2018 19:10:13 GMT): krabradosty (Mon, 16 Apr 2018 19:10:13 GMT): krabradosty (Mon, 16 Apr 2018 19:10:13 GMT): krabradosty (Mon, 16 Apr 2018 19:10:13 GMT): tgehrke (Mon, 16 Apr 2018 19:59:13 GMT): cnilesh (Mon, 16 Apr 2018 20:26:38 GMT): cnilesh (Mon, 16 Apr 2018 20:26:47 GMT): cnilesh (Mon, 16 Apr 2018 20:26:54 GMT): cnilesh (Mon, 16 Apr 2018 20:27:09 GMT): jesusruizlopez (Mon, 16 Apr 2018 20:53:29 GMT): jesusruizlopez (Mon, 16 Apr 2018 20:54:08 GMT): jesusruizlopez (Mon, 16 Apr 2018 20:54:50 GMT): davidkel (Mon, 16 Apr 2018 21:15:00 GMT): davidkel (Mon, 16 Apr 2018 21:15:00 GMT): ksant (Mon, 16 Apr 2018 23:10:24 GMT): MikeFair (Mon, 16 Apr 2018 23:55:07 GMT): vancemorris (Tue, 17 Apr 2018 00:26:41 GMT): RajeevSarda (Tue, 17 Apr 2018 02:28:10 GMT): RajeevSarda (Tue, 17 Apr 2018 02:29:23 GMT): RajeevSarda (Tue, 17 Apr 2018 02:29:57 GMT): RajeevSarda (Tue, 17 Apr 2018 02:30:19 GMT): RajeevSarda (Tue, 17 Apr 2018 02:30:20 GMT): RajeevSarda (Tue, 17 Apr 2018 02:30:37 GMT): treesong (Tue, 17 Apr 2018 04:46:07 GMT): xy250400 (Tue, 17 Apr 2018 06:08:25 GMT): jon_s (Tue, 17 Apr 2018 06:13:25 GMT): jon_s (Tue, 17 Apr 2018 06:13:37 GMT): jon_s (Tue, 17 Apr 2018 06:16:28 GMT): MartinKrmer (Tue, 17 Apr 2018 06:38:20 GMT): HoneyShah (Tue, 17 Apr 2018 06:43:52 GMT): HoneyShah (Tue, 17 Apr 2018 06:43:52 GMT): Poneey (Tue, 17 Apr 2018 07:38:15 GMT): hrt031293 (Tue, 17 Apr 2018 07:44:41 GMT): hrt031293 (Tue, 17 Apr 2018 07:47:15 GMT): hrt031293 (Tue, 17 Apr 2018 07:47:15 GMT): hrt031293 (Tue, 17 Apr 2018 07:47:15 GMT): hrt031293 (Tue, 17 Apr 2018 07:47:15 GMT): jon_s (Tue, 17 Apr 2018 07:59:41 GMT): jon_s (Tue, 17 Apr 2018 07:59:45 GMT): Poneey (Tue, 17 Apr 2018 07:59:50 GMT): jon_s (Tue, 17 Apr 2018 08:00:10 GMT): hrt031293 (Tue, 17 Apr 2018 08:00:18 GMT): jon_s (Tue, 17 Apr 2018 08:00:29 GMT): omarqr (Tue, 17 Apr 2018 08:19:55 GMT): nkl199 (Tue, 17 Apr 2018 08:22:32 GMT): Poneey (Tue, 17 Apr 2018 08:25:16 GMT): jon_s (Tue, 17 Apr 2018 08:25:34 GMT): jon_s (Tue, 17 Apr 2018 08:25:43 GMT): rthatcher (Tue, 17 Apr 2018 08:27:50 GMT): Poneey (Tue, 17 Apr 2018 08:28:28 GMT): rthatcher (Tue, 17 Apr 2018 08:32:22 GMT): CorentinPacaud (Tue, 17 Apr 2018 08:35:22 GMT): nkl199 (Tue, 17 Apr 2018 08:38:30 GMT): jon_s (Tue, 17 Apr 2018 08:39:15 GMT): jon_s (Tue, 17 Apr 2018 08:39:22 GMT): rthatcher (Tue, 17 Apr 2018 08:40:19 GMT): SimonOberzan (Tue, 17 Apr 2018 08:40:46 GMT): jon_s (Tue, 17 Apr 2018 08:41:26 GMT): rthatcher (Tue, 17 Apr 2018 08:41:31 GMT): jon_s (Tue, 17 Apr 2018 08:41:51 GMT): jon_s (Tue, 17 Apr 2018 08:42:00 GMT): rthatcher (Tue, 17 Apr 2018 08:45:36 GMT): rthatcher (Tue, 17 Apr 2018 08:50:37 GMT): micawlod (Tue, 17 Apr 2018 08:55:52 GMT): rthatcher (Tue, 17 Apr 2018 08:56:21 GMT): xy250400 (Tue, 17 Apr 2018 08:58:32 GMT): HoneyShah (Tue, 17 Apr 2018 09:16:52 GMT): jon_s (Tue, 17 Apr 2018 09:31:38 GMT): jon_s (Tue, 17 Apr 2018 09:31:47 GMT): jon_s (Tue, 17 Apr 2018 09:31:58 GMT): Varun2887 (Tue, 17 Apr 2018 09:46:38 GMT): jon_s (Tue, 17 Apr 2018 09:49:59 GMT): jon_s (Tue, 17 Apr 2018 09:50:08 GMT): jon_s (Tue, 17 Apr 2018 09:50:27 GMT): jon_s (Tue, 17 Apr 2018 09:50:30 GMT): jon_s (Tue, 17 Apr 2018 09:50:41 GMT): jon_s (Tue, 17 Apr 2018 09:50:42 GMT): jon_s (Tue, 17 Apr 2018 09:51:10 GMT): rthatcher (Tue, 17 Apr 2018 09:59:33 GMT): rthatcher (Tue, 17 Apr 2018 10:05:40 GMT): Varun2887 (Tue, 17 Apr 2018 10:06:43 GMT): Varun2887 (Tue, 17 Apr 2018 10:07:05 GMT): Varun2887 (Tue, 17 Apr 2018 10:07:08 GMT): SanjayOjha (Tue, 17 Apr 2018 10:08:47 GMT): Varun2887 (Tue, 17 Apr 2018 10:09:12 GMT): Varun2887 (Tue, 17 Apr 2018 10:09:37 GMT): Varun2887 (Tue, 17 Apr 2018 10:09:41 GMT): Varun2887 (Tue, 17 Apr 2018 10:09:50 GMT): Varun2887 (Tue, 17 Apr 2018 10:09:54 GMT): jaswanth (Tue, 17 Apr 2018 10:14:10 GMT): Varun2887 (Tue, 17 Apr 2018 10:15:35 GMT): Varun2887 (Tue, 17 Apr 2018 10:15:55 GMT): rthatcher (Tue, 17 Apr 2018 10:18:38 GMT): Varun2887 (Tue, 17 Apr 2018 10:18:52 GMT): Varun2887 (Tue, 17 Apr 2018 10:18:53 GMT): Varun2887 (Tue, 17 Apr 2018 10:19:06 GMT): vudathasaiomkar (Tue, 17 Apr 2018 10:19:57 GMT): Varun2887 (Tue, 17 Apr 2018 10:20:13 GMT): krabradosty (Tue, 17 Apr 2018 10:20:37 GMT): krabradosty (Tue, 17 Apr 2018 10:20:37 GMT): vudathasaiomkar (Tue, 17 Apr 2018 10:24:05 GMT): Varun2887 (Tue, 17 Apr 2018 10:24:13 GMT): Varun2887 (Tue, 17 Apr 2018 10:24:18 GMT): Varun2887 (Tue, 17 Apr 2018 10:24:23 GMT): andreamagagna (Tue, 17 Apr 2018 10:24:26 GMT): Varun2887 (Tue, 17 Apr 2018 10:24:33 GMT): Varun2887 (Tue, 17 Apr 2018 10:24:39 GMT): Varun2887 (Tue, 17 Apr 2018 10:25:15 GMT): vudathasaiomkar (Tue, 17 Apr 2018 10:25:34 GMT): Varun2887 (Tue, 17 Apr 2018 10:26:00 GMT): rthatcher (Tue, 17 Apr 2018 10:27:30 GMT): jon_s (Tue, 17 Apr 2018 10:28:04 GMT): jon_s (Tue, 17 Apr 2018 10:28:10 GMT): JasmineKaur (Tue, 17 Apr 2018 10:29:02 GMT): Varun2887 (Tue, 17 Apr 2018 10:30:12 GMT): Varun2887 (Tue, 17 Apr 2018 10:30:47 GMT): rthatcher (Tue, 17 Apr 2018 10:32:51 GMT): JasmineKaur (Tue, 17 Apr 2018 10:33:31 GMT): JasmineKaur (Tue, 17 Apr 2018 10:33:31 GMT): jaswanth (Tue, 17 Apr 2018 10:35:04 GMT): rthatcher (Tue, 17 Apr 2018 10:35:50 GMT): JasmineKaur (Tue, 17 Apr 2018 10:36:03 GMT): JasmineKaur (Tue, 17 Apr 2018 10:36:03 GMT): ascatox (Tue, 17 Apr 2018 10:36:25 GMT): ascatox (Tue, 17 Apr 2018 10:36:48 GMT): ascatox (Tue, 17 Apr 2018 10:37:36 GMT): rthatcher (Tue, 17 Apr 2018 10:39:07 GMT): jon_s (Tue, 17 Apr 2018 10:39:33 GMT): jon_s (Tue, 17 Apr 2018 10:40:00 GMT): JasmineKaur (Tue, 17 Apr 2018 10:40:13 GMT): JasmineKaur (Tue, 17 Apr 2018 10:40:13 GMT): rthatcher (Tue, 17 Apr 2018 10:41:35 GMT): xy250400 (Tue, 17 Apr 2018 10:41:59 GMT): Pranoti (Tue, 17 Apr 2018 10:43:28 GMT): jon_s (Tue, 17 Apr 2018 10:45:36 GMT): jon_s (Tue, 17 Apr 2018 10:45:42 GMT): jon_s (Tue, 17 Apr 2018 10:45:43 GMT): rthatcher (Tue, 17 Apr 2018 10:52:39 GMT): rthatcher (Tue, 17 Apr 2018 10:54:24 GMT): Pranoti (Tue, 17 Apr 2018 10:55:42 GMT): rthatcher (Tue, 17 Apr 2018 11:01:32 GMT): Pranoti (Tue, 17 Apr 2018 11:05:02 GMT): Pranoti (Tue, 17 Apr 2018 11:05:02 GMT): andreamagagna (Tue, 17 Apr 2018 11:05:17 GMT): Varun2887 (Tue, 17 Apr 2018 11:22:12 GMT): Varun2887 (Tue, 17 Apr 2018 11:22:51 GMT): Pranoti (Tue, 17 Apr 2018 11:36:33 GMT): Pranoti (Tue, 17 Apr 2018 11:36:33 GMT): rthatcher (Tue, 17 Apr 2018 12:00:04 GMT): jon_s (Tue, 17 Apr 2018 12:03:16 GMT): jon_s (Tue, 17 Apr 2018 12:03:40 GMT): jon_s (Tue, 17 Apr 2018 12:03:59 GMT): rthatcher (Tue, 17 Apr 2018 12:05:26 GMT): andreamagagna (Tue, 17 Apr 2018 12:08:44 GMT): vick (Tue, 17 Apr 2018 12:11:33 GMT): rthatcher (Tue, 17 Apr 2018 12:11:43 GMT): vick (Tue, 17 Apr 2018 12:11:45 GMT): vick (Tue, 17 Apr 2018 12:13:25 GMT): Poneey (Tue, 17 Apr 2018 12:14:55 GMT): Poneey (Tue, 17 Apr 2018 12:16:06 GMT): rthatcher (Tue, 17 Apr 2018 12:16:07 GMT): vick (Tue, 17 Apr 2018 12:17:34 GMT): vick (Tue, 17 Apr 2018 12:18:11 GMT): rthatcher (Tue, 17 Apr 2018 12:19:07 GMT): Poneey (Tue, 17 Apr 2018 12:19:55 GMT): vick (Tue, 17 Apr 2018 12:20:32 GMT): vick (Tue, 17 Apr 2018 12:20:43 GMT): vick (Tue, 17 Apr 2018 12:21:35 GMT): Poneey (Tue, 17 Apr 2018 12:21:53 GMT): vick (Tue, 17 Apr 2018 12:22:49 GMT): Poneey (Tue, 17 Apr 2018 12:25:39 GMT): Poneey (Tue, 17 Apr 2018 12:28:29 GMT): andreamagagna (Tue, 17 Apr 2018 12:28:40 GMT): Poneey (Tue, 17 Apr 2018 12:36:41 GMT): vick (Tue, 17 Apr 2018 12:37:38 GMT): vick (Tue, 17 Apr 2018 12:37:41 GMT): vick (Tue, 17 Apr 2018 12:37:59 GMT): Poneey (Tue, 17 Apr 2018 12:42:42 GMT): Poneey (Tue, 17 Apr 2018 12:44:42 GMT): vick (Tue, 17 Apr 2018 12:45:28 GMT): Poneey (Tue, 17 Apr 2018 12:46:58 GMT): kevinsyx (Tue, 17 Apr 2018 12:52:56 GMT): rthatcher (Tue, 17 Apr 2018 12:53:15 GMT): kevinsyx (Tue, 17 Apr 2018 12:53:45 GMT): CorentinPacaud (Tue, 17 Apr 2018 13:04:27 GMT): CorentinPacaud (Tue, 17 Apr 2018 13:04:51 GMT): andreamagagna (Tue, 17 Apr 2018 13:10:22 GMT): CorentinPacaud (Tue, 17 Apr 2018 13:12:48 GMT): vick (Tue, 17 Apr 2018 13:13:24 GMT): andreamagagna (Tue, 17 Apr 2018 13:14:22 GMT): kevinsyx (Tue, 17 Apr 2018 13:14:46 GMT): Poneey (Tue, 17 Apr 2018 13:18:22 GMT): Poneey (Tue, 17 Apr 2018 13:19:22 GMT): vick (Tue, 17 Apr 2018 13:19:43 GMT): Poneey (Tue, 17 Apr 2018 13:19:59 GMT): CorentinPacaud (Tue, 17 Apr 2018 13:21:43 GMT): Poneey (Tue, 17 Apr 2018 13:23:38 GMT): berndoostrum (Tue, 17 Apr 2018 13:27:21 GMT): berndoostrum (Tue, 17 Apr 2018 13:29:39 GMT): CorentinPacaud (Tue, 17 Apr 2018 13:30:04 GMT): berndoostrum (Tue, 17 Apr 2018 13:31:09 GMT): Poneey (Tue, 17 Apr 2018 13:36:02 GMT): kevinsyx (Tue, 17 Apr 2018 13:38:38 GMT): kevinsyx (Tue, 17 Apr 2018 13:38:38 GMT): kevinsyx (Tue, 17 Apr 2018 13:38:38 GMT): CorentinPacaud (Tue, 17 Apr 2018 13:57:36 GMT): CorentinPacaud (Tue, 17 Apr 2018 13:57:36 GMT): majkowski (Tue, 17 Apr 2018 14:00:35 GMT): MartinKrmer (Tue, 17 Apr 2018 14:02:00 GMT): rthatcher (Tue, 17 Apr 2018 14:09:25 GMT): rthatcher (Tue, 17 Apr 2018 14:12:59 GMT): Poneey (Tue, 17 Apr 2018 14:13:40 GMT): MartinKrmer (Tue, 17 Apr 2018 14:18:05 GMT): majkowski (Tue, 17 Apr 2018 14:18:54 GMT): rthatcher (Tue, 17 Apr 2018 14:22:46 GMT): MartinKrmer (Tue, 17 Apr 2018 14:27:22 GMT): Poneey (Tue, 17 Apr 2018 14:38:20 GMT): Poneey (Tue, 17 Apr 2018 14:43:15 GMT): vick (Tue, 17 Apr 2018 15:13:00 GMT): vick (Tue, 17 Apr 2018 15:13:27 GMT): vick (Tue, 17 Apr 2018 15:14:13 GMT): rthatcher (Tue, 17 Apr 2018 15:15:45 GMT): vick (Tue, 17 Apr 2018 15:17:11 GMT): rthatcher (Tue, 17 Apr 2018 15:23:38 GMT): vick (Tue, 17 Apr 2018 15:59:09 GMT): toddinpal (Tue, 17 Apr 2018 17:27:17 GMT): toddinpal (Tue, 17 Apr 2018 17:27:34 GMT): MarinoSabijan (Tue, 17 Apr 2018 17:29:04 GMT): Grendel61 (Tue, 17 Apr 2018 18:33:55 GMT): Grendel61 (Tue, 17 Apr 2018 18:33:55 GMT): Grendel61 (Tue, 17 Apr 2018 18:33:55 GMT): toddinpal (Tue, 17 Apr 2018 20:08:31 GMT): toddinpal (Tue, 17 Apr 2018 20:08:36 GMT): vick (Tue, 17 Apr 2018 20:58:21 GMT): vick (Tue, 17 Apr 2018 20:59:01 GMT): toddinpal (Tue, 17 Apr 2018 20:59:41 GMT): karimrg (Tue, 17 Apr 2018 21:37:17 GMT): JamesHughes (Tue, 17 Apr 2018 22:10:23 GMT): toddinpal (Tue, 17 Apr 2018 23:17:04 GMT): Bennie (Tue, 17 Apr 2018 23:34:20 GMT): Bennie (Tue, 17 Apr 2018 23:39:23 GMT): Bennie (Tue, 17 Apr 2018 23:40:04 GMT): idovgan519 (Wed, 18 Apr 2018 00:07:48 GMT): idovgan519 (Wed, 18 Apr 2018 00:09:53 GMT): beachbrake (Wed, 18 Apr 2018 02:41:17 GMT): NareshPai (Wed, 18 Apr 2018 03:10:11 GMT): Varun2887 (Wed, 18 Apr 2018 06:12:31 GMT): jon_s (Wed, 18 Apr 2018 06:20:48 GMT): VINAYAKDESHPANDEN (Wed, 18 Apr 2018 06:35:04 GMT): VINAYAKDESHPANDEN (Wed, 18 Apr 2018 06:35:40 GMT): ReginaMehta (Wed, 18 Apr 2018 06:36:35 GMT): ReginaMehta (Wed, 18 Apr 2018 06:36:35 GMT): ReginaMehta (Wed, 18 Apr 2018 06:37:13 GMT): abhi96 (Wed, 18 Apr 2018 06:52:39 GMT): abhi96 (Wed, 18 Apr 2018 06:53:59 GMT): abhi96 (Wed, 18 Apr 2018 06:53:59 GMT): AkshayJindal (Wed, 18 Apr 2018 07:01:20 GMT): ReginaMehta (Wed, 18 Apr 2018 07:02:27 GMT): thoduerr (Wed, 18 Apr 2018 07:49:07 GMT): ZahidZafar (Wed, 18 Apr 2018 07:56:38 GMT): Nabilel 1 (Wed, 18 Apr 2018 08:13:21 GMT): maddy (Wed, 18 Apr 2018 08:20:20 GMT): rthatcher (Wed, 18 Apr 2018 08:26:12 GMT): rthatcher (Wed, 18 Apr 2018 08:29:08 GMT): rthatcher (Wed, 18 Apr 2018 08:34:53 GMT): rthatcher (Wed, 18 Apr 2018 08:42:37 GMT): rthatcher (Wed, 18 Apr 2018 08:46:58 GMT): rthatcher (Wed, 18 Apr 2018 08:52:36 GMT): rthatcher (Wed, 18 Apr 2018 08:57:55 GMT): Pranoti (Wed, 18 Apr 2018 08:58:06 GMT): suneel18 (Wed, 18 Apr 2018 08:58:56 GMT): suneel18 (Wed, 18 Apr 2018 08:59:49 GMT): Nabilel 1 (Wed, 18 Apr 2018 09:14:01 GMT): VINAYAKDESHPANDEN (Wed, 18 Apr 2018 09:16:15 GMT): Poneey (Wed, 18 Apr 2018 09:23:44 GMT): rthatcher (Wed, 18 Apr 2018 09:33:44 GMT): Akshatha (Wed, 18 Apr 2018 09:43:51 GMT): Akshatha (Wed, 18 Apr 2018 09:48:09 GMT): Akshatha (Wed, 18 Apr 2018 09:48:14 GMT): ppanya (Wed, 18 Apr 2018 09:48:25 GMT): Akshatha (Wed, 18 Apr 2018 09:49:00 GMT): Akshatha (Wed, 18 Apr 2018 09:51:21 GMT): rthatcher (Wed, 18 Apr 2018 09:52:19 GMT): Poneey (Wed, 18 Apr 2018 09:53:43 GMT): prmdmshra (Wed, 18 Apr 2018 09:55:13 GMT): rthatcher (Wed, 18 Apr 2018 09:55:41 GMT): Akshatha (Wed, 18 Apr 2018 09:57:21 GMT): rthatcher (Wed, 18 Apr 2018 10:14:24 GMT): rthatcher (Wed, 18 Apr 2018 10:14:24 GMT): ZahidZafar (Wed, 18 Apr 2018 10:15:41 GMT): ZahidZafar (Wed, 18 Apr 2018 10:15:41 GMT): SudheerKaspa (Wed, 18 Apr 2018 10:18:34 GMT): rthatcher (Wed, 18 Apr 2018 10:42:10 GMT): jon_s (Wed, 18 Apr 2018 10:42:55 GMT): jon_s (Wed, 18 Apr 2018 10:46:10 GMT): Bjodn (Wed, 18 Apr 2018 10:47:32 GMT): SudheerKaspa (Wed, 18 Apr 2018 10:52:33 GMT): rthatcher (Wed, 18 Apr 2018 10:53:51 GMT): SudheerKaspa (Wed, 18 Apr 2018 10:58:16 GMT): rthatcher (Wed, 18 Apr 2018 10:59:07 GMT): jon_s (Wed, 18 Apr 2018 11:03:20 GMT): jon_s (Wed, 18 Apr 2018 11:03:31 GMT): jon_s (Wed, 18 Apr 2018 11:03:59 GMT): jon_s (Wed, 18 Apr 2018 11:20:03 GMT): jon_s (Wed, 18 Apr 2018 11:20:22 GMT): Poneey (Wed, 18 Apr 2018 11:53:11 GMT): AbhinandanDarbey (Wed, 18 Apr 2018 11:56:39 GMT): toddinpal (Wed, 18 Apr 2018 11:57:33 GMT): rthatcher (Wed, 18 Apr 2018 12:36:20 GMT): rthatcher (Wed, 18 Apr 2018 12:37:04 GMT): Poneey (Wed, 18 Apr 2018 12:42:52 GMT): rthatcher (Wed, 18 Apr 2018 12:50:27 GMT): Poneey (Wed, 18 Apr 2018 12:52:16 GMT): toddinpal (Wed, 18 Apr 2018 12:53:07 GMT): toddinpal (Wed, 18 Apr 2018 12:53:42 GMT): rthatcher (Wed, 18 Apr 2018 12:59:29 GMT): toddinpal (Wed, 18 Apr 2018 12:59:57 GMT): rthatcher (Wed, 18 Apr 2018 13:04:04 GMT): musemby (Wed, 18 Apr 2018 13:04:11 GMT): toddinpal (Wed, 18 Apr 2018 13:05:09 GMT): rthatcher (Wed, 18 Apr 2018 13:06:10 GMT): toddinpal (Wed, 18 Apr 2018 13:12:40 GMT): toddinpal (Wed, 18 Apr 2018 13:15:02 GMT): rthatcher (Wed, 18 Apr 2018 13:15:59 GMT): rthatcher (Wed, 18 Apr 2018 13:17:41 GMT): Poneey (Wed, 18 Apr 2018 13:18:26 GMT): Poneey (Wed, 18 Apr 2018 13:19:40 GMT): toddinpal (Wed, 18 Apr 2018 13:20:39 GMT): rthatcher (Wed, 18 Apr 2018 13:27:09 GMT): toddinpal (Wed, 18 Apr 2018 13:27:31 GMT): Poneey (Wed, 18 Apr 2018 13:28:47 GMT): rthatcher (Wed, 18 Apr 2018 13:33:29 GMT): rthatcher (Wed, 18 Apr 2018 13:33:29 GMT): rthatcher (Wed, 18 Apr 2018 13:48:58 GMT): CorentinPacaud (Wed, 18 Apr 2018 13:50:59 GMT): Poneey (Wed, 18 Apr 2018 13:56:48 GMT): rthatcher (Wed, 18 Apr 2018 13:57:17 GMT): CorentinPacaud (Wed, 18 Apr 2018 13:57:41 GMT): CorentinPacaud (Wed, 18 Apr 2018 13:58:29 GMT): rthatcher (Wed, 18 Apr 2018 14:17:54 GMT): Poneey (Wed, 18 Apr 2018 14:32:57 GMT): cuevrob (Wed, 18 Apr 2018 14:40:25 GMT): Vanitha (Wed, 18 Apr 2018 15:29:23 GMT): Vanitha (Wed, 18 Apr 2018 15:29:46 GMT): Vanitha (Wed, 18 Apr 2018 15:29:46 GMT): Vanitha (Wed, 18 Apr 2018 15:40:55 GMT): xiao8 (Wed, 18 Apr 2018 15:42:41 GMT): xiao8 (Wed, 18 Apr 2018 15:49:19 GMT): xiao8 (Wed, 18 Apr 2018 15:49:31 GMT): vick (Wed, 18 Apr 2018 16:28:51 GMT): xiao8 (Wed, 18 Apr 2018 16:30:33 GMT): xiao8 (Wed, 18 Apr 2018 16:32:29 GMT): mezgebu (Wed, 18 Apr 2018 17:00:16 GMT): d8bhatta (Wed, 18 Apr 2018 17:02:25 GMT): mezgebu (Wed, 18 Apr 2018 17:04:58 GMT): Titret (Wed, 18 Apr 2018 17:40:34 GMT): KrishnaGundala (Wed, 18 Apr 2018 18:53:53 GMT): Titret (Wed, 18 Apr 2018 19:08:06 GMT): aheninger (Wed, 18 Apr 2018 21:09:46 GMT): surendra-kushwaha (Wed, 18 Apr 2018 22:27:21 GMT): surendra-kushwaha (Wed, 18 Apr 2018 22:28:56 GMT): CarbonMan (Thu, 19 Apr 2018 01:41:18 GMT): CarbonMan (Thu, 19 Apr 2018 01:44:50 GMT): CarbonMan (Thu, 19 Apr 2018 01:44:50 GMT): jwhelan (Thu, 19 Apr 2018 03:25:18 GMT): jwhelan (Thu, 19 Apr 2018 03:28:33 GMT): jwhelan (Thu, 19 Apr 2018 03:28:33 GMT): jwhelan (Thu, 19 Apr 2018 03:28:33 GMT): ParthPatil (Thu, 19 Apr 2018 06:23:00 GMT): ParthPatil (Thu, 19 Apr 2018 06:24:05 GMT): Ammu (Thu, 19 Apr 2018 06:26:37 GMT): Poneey (Thu, 19 Apr 2018 06:52:57 GMT): robvanpamel (Thu, 19 Apr 2018 08:10:33 GMT): kevinsyx (Thu, 19 Apr 2018 08:10:34 GMT): ParthPatil (Thu, 19 Apr 2018 08:14:16 GMT): Poneey (Thu, 19 Apr 2018 08:19:19 GMT): CarbonMan (Thu, 19 Apr 2018 08:19:38 GMT): CarbonMan (Thu, 19 Apr 2018 08:19:38 GMT): robvanpamel (Thu, 19 Apr 2018 08:23:11 GMT): rthatcher (Thu, 19 Apr 2018 08:23:48 GMT): rthatcher (Thu, 19 Apr 2018 08:23:48 GMT): ParthPatil (Thu, 19 Apr 2018 08:25:47 GMT): ParthPatil (Thu, 19 Apr 2018 08:26:51 GMT): robvanpamel (Thu, 19 Apr 2018 08:29:07 GMT): rthatcher (Thu, 19 Apr 2018 09:12:14 GMT): mahoney1 (Thu, 19 Apr 2018 09:12:56 GMT): Poneey (Thu, 19 Apr 2018 09:30:53 GMT): Saschaka (Thu, 19 Apr 2018 09:37:30 GMT): Saschaka (Thu, 19 Apr 2018 09:37:57 GMT): Poneey (Thu, 19 Apr 2018 09:43:40 GMT): Bjodn (Thu, 19 Apr 2018 09:47:21 GMT): Poneey (Thu, 19 Apr 2018 09:57:57 GMT): mahoney1 (Thu, 19 Apr 2018 10:23:55 GMT): Bjodn (Thu, 19 Apr 2018 10:29:51 GMT): mahoney1 (Thu, 19 Apr 2018 10:36:03 GMT): Saschaka (Thu, 19 Apr 2018 10:39:27 GMT): Saschaka (Thu, 19 Apr 2018 10:39:29 GMT): shihabullah (Thu, 19 Apr 2018 10:47:22 GMT): shihabullah (Thu, 19 Apr 2018 10:47:34 GMT): Arkariian (Thu, 19 Apr 2018 11:07:44 GMT): Esalari (Thu, 19 Apr 2018 11:32:43 GMT): shihabullah (Thu, 19 Apr 2018 11:47:27 GMT): shihabullah (Thu, 19 Apr 2018 11:47:38 GMT): mahoney1 (Thu, 19 Apr 2018 11:54:45 GMT): Saschaka (Thu, 19 Apr 2018 12:03:43 GMT): SimonOberzan (Thu, 19 Apr 2018 12:04:07 GMT): mahoney1 (Thu, 19 Apr 2018 12:10:56 GMT): CarbonMan (Thu, 19 Apr 2018 12:16:02 GMT): CarbonMan (Thu, 19 Apr 2018 12:16:02 GMT): CarbonMan (Thu, 19 Apr 2018 12:16:02 GMT): rthatcher (Thu, 19 Apr 2018 12:22:52 GMT): CarbonMan (Thu, 19 Apr 2018 12:29:46 GMT): CarbonMan (Thu, 19 Apr 2018 12:35:44 GMT): shihabullah (Thu, 19 Apr 2018 12:37:38 GMT): rthatcher (Thu, 19 Apr 2018 12:39:04 GMT): raj_shekhar (Thu, 19 Apr 2018 12:41:33 GMT): raj_shekhar (Thu, 19 Apr 2018 12:42:53 GMT): raj_shekhar (Thu, 19 Apr 2018 12:43:09 GMT): rthatcher (Thu, 19 Apr 2018 12:46:31 GMT): mahoney1 (Thu, 19 Apr 2018 12:54:28 GMT): Poneey (Thu, 19 Apr 2018 12:58:13 GMT): CarbonMan (Thu, 19 Apr 2018 13:03:11 GMT): anshulkathuria34 (Thu, 19 Apr 2018 13:16:31 GMT): anshulkathuria34 (Thu, 19 Apr 2018 13:17:08 GMT): vick (Thu, 19 Apr 2018 13:19:54 GMT): vick (Thu, 19 Apr 2018 13:20:02 GMT): vick (Thu, 19 Apr 2018 13:20:18 GMT): Pranoti (Thu, 19 Apr 2018 13:25:04 GMT): Pranoti (Thu, 19 Apr 2018 13:29:53 GMT): Pranoti (Thu, 19 Apr 2018 13:29:53 GMT): Pranoti (Thu, 19 Apr 2018 13:32:53 GMT): Pranoti (Thu, 19 Apr 2018 13:32:53 GMT): Pranoti (Thu, 19 Apr 2018 13:33:36 GMT): sstone1 (Thu, 19 Apr 2018 13:40:29 GMT): Pranoti (Thu, 19 Apr 2018 13:45:52 GMT): rthatcher (Thu, 19 Apr 2018 13:53:35 GMT): rthatcher (Thu, 19 Apr 2018 13:54:45 GMT): vick (Thu, 19 Apr 2018 13:55:09 GMT): rthatcher (Thu, 19 Apr 2018 13:57:15 GMT): mahoney1 (Thu, 19 Apr 2018 14:01:28 GMT): Pranoti (Thu, 19 Apr 2018 14:01:57 GMT): Pranoti (Thu, 19 Apr 2018 14:02:25 GMT): Pranoti (Thu, 19 Apr 2018 14:04:29 GMT): omarqr (Thu, 19 Apr 2018 14:55:40 GMT): jackschultz (Thu, 19 Apr 2018 15:05:52 GMT): Gerard9494 (Thu, 19 Apr 2018 15:36:47 GMT): mahoney1 (Thu, 19 Apr 2018 16:17:11 GMT): rthatcher (Thu, 19 Apr 2018 16:22:08 GMT): akshatbh (Thu, 19 Apr 2018 16:39:54 GMT): peenakOgilvy (Thu, 19 Apr 2018 21:13:21 GMT): peenakOgilvy (Thu, 19 Apr 2018 21:24:26 GMT): peenakOgilvy (Thu, 19 Apr 2018 21:24:26 GMT): PirangPhan (Fri, 20 Apr 2018 02:03:57 GMT): Mark818 (Fri, 20 Apr 2018 02:44:01 GMT): raj_shekhar (Fri, 20 Apr 2018 06:17:30 GMT): remmeier (Fri, 20 Apr 2018 06:34:00 GMT): ruchit-2 (Fri, 20 Apr 2018 06:42:16 GMT): alanblyth (Fri, 20 Apr 2018 07:35:25 GMT): alanblyth (Fri, 20 Apr 2018 07:36:06 GMT): alanblyth (Fri, 20 Apr 2018 07:36:32 GMT): alanblyth (Fri, 20 Apr 2018 08:07:34 GMT): Gerard9494 (Fri, 20 Apr 2018 08:10:54 GMT): Poneey (Fri, 20 Apr 2018 08:13:35 GMT): rthatcher (Fri, 20 Apr 2018 08:17:35 GMT): rthatcher (Fri, 20 Apr 2018 08:21:43 GMT): rthatcher (Fri, 20 Apr 2018 08:24:29 GMT): rthatcher (Fri, 20 Apr 2018 08:29:25 GMT): rthatcher (Fri, 20 Apr 2018 08:29:38 GMT): rthatcher (Fri, 20 Apr 2018 08:30:39 GMT): Poneey (Fri, 20 Apr 2018 08:31:51 GMT): mahoney1 (Fri, 20 Apr 2018 08:41:33 GMT): Gerard9494 (Fri, 20 Apr 2018 08:48:31 GMT): mahoney1 (Fri, 20 Apr 2018 08:54:29 GMT): shihabullah (Fri, 20 Apr 2018 09:59:32 GMT): mahoney1 (Fri, 20 Apr 2018 10:15:51 GMT): d8bhatta (Fri, 20 Apr 2018 10:32:30 GMT): d8bhatta (Fri, 20 Apr 2018 10:33:42 GMT): d8bhatta (Fri, 20 Apr 2018 10:34:08 GMT): sureshtedla (Fri, 20 Apr 2018 11:07:39 GMT): ZahidZafar (Fri, 20 Apr 2018 11:13:10 GMT): ZahidZafar (Fri, 20 Apr 2018 11:13:10 GMT): ZahidZafar (Fri, 20 Apr 2018 11:13:10 GMT): mahoney1 (Fri, 20 Apr 2018 11:17:55 GMT): d8bhatta (Fri, 20 Apr 2018 11:19:45 GMT): mahoney1 (Fri, 20 Apr 2018 11:21:12 GMT): mahoney1 (Fri, 20 Apr 2018 11:21:12 GMT): ZahidZafar (Fri, 20 Apr 2018 11:23:06 GMT): ZahidZafar (Fri, 20 Apr 2018 11:23:06 GMT): ZahidZafar (Fri, 20 Apr 2018 11:23:06 GMT): ZahidZafar (Fri, 20 Apr 2018 11:23:06 GMT): mahoney1 (Fri, 20 Apr 2018 11:23:56 GMT): mahoney1 (Fri, 20 Apr 2018 11:25:22 GMT): d8bhatta (Fri, 20 Apr 2018 11:27:04 GMT): shihabullah (Fri, 20 Apr 2018 11:41:13 GMT): mahoney1 (Fri, 20 Apr 2018 11:44:15 GMT): mahoney1 (Fri, 20 Apr 2018 11:51:14 GMT): mahoney1 (Fri, 20 Apr 2018 11:52:29 GMT): shihabullah (Fri, 20 Apr 2018 12:05:00 GMT): mahoney1 (Fri, 20 Apr 2018 12:31:42 GMT): mahoney1 (Fri, 20 Apr 2018 12:31:42 GMT): giovanniconte (Fri, 20 Apr 2018 13:30:01 GMT): giovanniconte (Fri, 20 Apr 2018 13:30:51 GMT): giovanniconte (Fri, 20 Apr 2018 13:32:24 GMT): giovanniconte (Fri, 20 Apr 2018 13:33:47 GMT): mahoney1 (Fri, 20 Apr 2018 13:38:48 GMT): mahoney1 (Fri, 20 Apr 2018 13:38:48 GMT): giovanniconte (Fri, 20 Apr 2018 13:44:08 GMT): giovanniconte (Fri, 20 Apr 2018 13:46:57 GMT): mahoney1 (Fri, 20 Apr 2018 13:47:45 GMT): james3443112 (Fri, 20 Apr 2018 13:52:07 GMT): james3443112 (Fri, 20 Apr 2018 13:54:37 GMT): giovanniconte (Fri, 20 Apr 2018 13:55:16 GMT): mahoney1 (Fri, 20 Apr 2018 14:08:40 GMT): faezeh993 (Fri, 20 Apr 2018 14:11:47 GMT): uber.twin (Fri, 20 Apr 2018 14:26:06 GMT): uber.twin (Fri, 20 Apr 2018 14:26:06 GMT): uber.twin (Fri, 20 Apr 2018 14:26:06 GMT): uber.twin (Fri, 20 Apr 2018 14:26:06 GMT): uber.twin (Fri, 20 Apr 2018 14:26:06 GMT): uber.twin (Fri, 20 Apr 2018 14:26:06 GMT): uber.twin (Fri, 20 Apr 2018 14:29:23 GMT): uber.twin (Fri, 20 Apr 2018 14:29:23 GMT): cuevrob (Fri, 20 Apr 2018 15:17:10 GMT): cuevrob (Fri, 20 Apr 2018 15:17:17 GMT): cuevrob (Fri, 20 Apr 2018 15:17:48 GMT): rthatcher (Fri, 20 Apr 2018 15:18:22 GMT): sstone1 (Fri, 20 Apr 2018 15:18:53 GMT): mffrench (Fri, 20 Apr 2018 15:19:25 GMT): cuevrob (Fri, 20 Apr 2018 15:19:27 GMT): rthatcher (Fri, 20 Apr 2018 15:20:29 GMT): uber.twin (Fri, 20 Apr 2018 15:26:31 GMT): peenakOgilvy (Fri, 20 Apr 2018 15:27:21 GMT): mahoney1 (Fri, 20 Apr 2018 15:28:44 GMT): mahoney1 (Fri, 20 Apr 2018 15:28:44 GMT): jackschultz (Fri, 20 Apr 2018 16:04:51 GMT): rthatcher (Fri, 20 Apr 2018 16:21:59 GMT): faezeh993 (Fri, 20 Apr 2018 16:24:14 GMT): jackschultz (Fri, 20 Apr 2018 16:24:33 GMT): rthatcher (Fri, 20 Apr 2018 16:25:04 GMT): alexvicegrab (Fri, 20 Apr 2018 17:03:11 GMT): mahoney1 (Fri, 20 Apr 2018 17:30:06 GMT): alexvicegrab (Fri, 20 Apr 2018 17:31:10 GMT): alexvicegrab (Fri, 20 Apr 2018 17:31:39 GMT): alexvicegrab (Fri, 20 Apr 2018 17:31:53 GMT): alexvicegrab (Fri, 20 Apr 2018 17:32:20 GMT): alexvicegrab (Fri, 20 Apr 2018 17:32:39 GMT): MasthanbeeShaik16 (Fri, 20 Apr 2018 18:54:40 GMT): cuevrob (Fri, 20 Apr 2018 19:33:21 GMT): sstone1 (Fri, 20 Apr 2018 19:44:52 GMT): cuevrob (Fri, 20 Apr 2018 19:57:16 GMT): vijayin26 (Fri, 20 Apr 2018 20:15:43 GMT): sstone1 (Fri, 20 Apr 2018 20:26:37 GMT): vijayin26 (Fri, 20 Apr 2018 20:29:40 GMT): sstone1 (Fri, 20 Apr 2018 20:30:45 GMT): vijayin26 (Fri, 20 Apr 2018 20:31:49 GMT): sstone1 (Fri, 20 Apr 2018 20:32:15 GMT): sstone1 (Fri, 20 Apr 2018 20:32:15 GMT): vijayin26 (Fri, 20 Apr 2018 20:33:06 GMT): vijayin26 (Fri, 20 Apr 2018 20:34:03 GMT): sstone1 (Fri, 20 Apr 2018 20:34:51 GMT): sstone1 (Fri, 20 Apr 2018 20:35:54 GMT): vijayin26 (Fri, 20 Apr 2018 20:36:17 GMT): sstone1 (Fri, 20 Apr 2018 20:42:17 GMT): sstone1 (Fri, 20 Apr 2018 20:42:32 GMT): sstone1 (Fri, 20 Apr 2018 20:42:43 GMT): giggle (Sat, 21 Apr 2018 01:52:10 GMT): lucienlu (Sat, 21 Apr 2018 08:58:41 GMT): nasserfci (Sat, 21 Apr 2018 11:52:28 GMT): AlexanderWilts (Sat, 21 Apr 2018 13:36:52 GMT): waleed (Sat, 21 Apr 2018 13:55:47 GMT): james3443112 (Sat, 21 Apr 2018 15:12:31 GMT): sstone1 (Sat, 21 Apr 2018 15:15:39 GMT): sstone1 (Sat, 21 Apr 2018 15:16:25 GMT): sstone1 (Sat, 21 Apr 2018 15:17:49 GMT): IceFox (Sat, 21 Apr 2018 15:22:39 GMT): IceFox (Sat, 21 Apr 2018 15:22:42 GMT): IceFox (Sat, 21 Apr 2018 15:26:16 GMT): IceFox (Sat, 21 Apr 2018 15:26:30 GMT): IceFox (Sat, 21 Apr 2018 15:26:48 GMT): IceFox (Sat, 21 Apr 2018 15:27:07 GMT): sstone1 (Sat, 21 Apr 2018 15:27:46 GMT): IceFox (Sat, 21 Apr 2018 15:28:09 GMT): IceFox (Sat, 21 Apr 2018 15:28:38 GMT): IceFox (Sat, 21 Apr 2018 15:29:04 GMT): sstone1 (Sat, 21 Apr 2018 15:30:38 GMT): sstone1 (Sat, 21 Apr 2018 15:30:45 GMT): IceFox (Sat, 21 Apr 2018 15:31:01 GMT): IceFox (Sat, 21 Apr 2018 15:31:06 GMT): sstone1 (Sat, 21 Apr 2018 15:31:59 GMT): sstone1 (Sat, 21 Apr 2018 15:32:04 GMT): IceFox (Sat, 21 Apr 2018 15:32:57 GMT): sstone1 (Sat, 21 Apr 2018 15:33:16 GMT): IceFox (Sat, 21 Apr 2018 15:36:55 GMT): IceFox (Sat, 21 Apr 2018 15:37:12 GMT): IceFox (Sat, 21 Apr 2018 15:37:29 GMT): IceFox (Sat, 21 Apr 2018 15:37:59 GMT): sstone1 (Sat, 21 Apr 2018 15:38:01 GMT): IceFox (Sat, 21 Apr 2018 15:38:07 GMT): IceFox (Sat, 21 Apr 2018 15:38:10 GMT): sstone1 (Sat, 21 Apr 2018 15:38:20 GMT): sstone1 (Sat, 21 Apr 2018 15:38:44 GMT): IceFox (Sat, 21 Apr 2018 15:42:07 GMT): IceFox (Sat, 21 Apr 2018 15:42:10 GMT): IceFox (Sat, 21 Apr 2018 15:43:42 GMT): IceFox (Sat, 21 Apr 2018 15:46:17 GMT): cditzler (Sat, 21 Apr 2018 15:55:37 GMT): danimedigo (Sat, 21 Apr 2018 20:45:44 GMT): FredHaws (Sat, 21 Apr 2018 22:56:04 GMT): FredHaws (Sat, 21 Apr 2018 22:56:22 GMT): FredHaws (Sat, 21 Apr 2018 22:58:54 GMT): vasumaniram (Sun, 22 Apr 2018 02:19:24 GMT): toddinpal (Sun, 22 Apr 2018 02:32:31 GMT): IceFox (Sun, 22 Apr 2018 03:40:05 GMT): IceFox (Sun, 22 Apr 2018 03:40:47 GMT): IceFox (Sun, 22 Apr 2018 03:41:45 GMT): IceFox (Sun, 22 Apr 2018 03:41:54 GMT): IceFox (Sun, 22 Apr 2018 03:43:23 GMT): IceFox (Sun, 22 Apr 2018 04:07:32 GMT): IceFox (Sun, 22 Apr 2018 04:11:01 GMT): IceFox (Sun, 22 Apr 2018 04:11:20 GMT): IceFox (Sun, 22 Apr 2018 04:46:13 GMT): IceFox (Sun, 22 Apr 2018 06:42:42 GMT): IceFox (Sun, 22 Apr 2018 06:42:48 GMT): d8bhatta (Sun, 22 Apr 2018 08:11:30 GMT): d8bhatta (Sun, 22 Apr 2018 08:11:59 GMT): sstercan (Sun, 22 Apr 2018 09:35:23 GMT): EEB (Sun, 22 Apr 2018 11:49:46 GMT): EEB (Sun, 22 Apr 2018 11:59:07 GMT): EEB (Sun, 22 Apr 2018 12:01:41 GMT): toddinpal (Sun, 22 Apr 2018 13:06:33 GMT): toddinpal (Sun, 22 Apr 2018 13:06:33 GMT): toddinpal (Sun, 22 Apr 2018 13:06:33 GMT): neilshevlin (Sun, 22 Apr 2018 14:08:46 GMT): kuna.sharma (Sun, 22 Apr 2018 14:27:34 GMT): kuna.sharma (Sun, 22 Apr 2018 14:29:02 GMT): kuna.sharma (Sun, 22 Apr 2018 14:29:05 GMT): letubert (Sun, 22 Apr 2018 19:14:25 GMT): chart01 (Sun, 22 Apr 2018 19:32:51 GMT): lvndry (Sun, 22 Apr 2018 19:56:20 GMT): lvndry (Sun, 22 Apr 2018 20:35:49 GMT): lvndry (Sun, 22 Apr 2018 20:41:39 GMT): lvndry (Sun, 22 Apr 2018 20:44:48 GMT): adrianblakey (Sun, 22 Apr 2018 22:49:15 GMT): phanikumar (Mon, 23 Apr 2018 00:45:22 GMT): phanikumar (Mon, 23 Apr 2018 00:45:28 GMT): TuckerSiegel (Mon, 23 Apr 2018 02:23:31 GMT): TuckerSiegel (Mon, 23 Apr 2018 02:23:59 GMT): shihabullah (Mon, 23 Apr 2018 03:03:17 GMT): Varun2887 (Mon, 23 Apr 2018 04:29:10 GMT): Varun2887 (Mon, 23 Apr 2018 04:29:28 GMT): Varun2887 (Mon, 23 Apr 2018 05:49:18 GMT): phanikumar (Mon, 23 Apr 2018 05:49:25 GMT): phanikumar (Mon, 23 Apr 2018 05:49:25 GMT): Varun2887 (Mon, 23 Apr 2018 05:49:51 GMT): Varun2887 (Mon, 23 Apr 2018 05:49:54 GMT): phanikumar (Mon, 23 Apr 2018 05:50:29 GMT): Varun2887 (Mon, 23 Apr 2018 05:50:30 GMT): Varun2887 (Mon, 23 Apr 2018 05:50:32 GMT): phanikumar (Mon, 23 Apr 2018 05:51:49 GMT): Varun2887 (Mon, 23 Apr 2018 05:53:12 GMT): Varun2887 (Mon, 23 Apr 2018 05:59:07 GMT): Varun2887 (Mon, 23 Apr 2018 05:59:13 GMT): HoneyShah (Mon, 23 Apr 2018 06:42:45 GMT): HoneyShah (Mon, 23 Apr 2018 06:42:45 GMT): HoneyShah (Mon, 23 Apr 2018 06:42:45 GMT): HoneyShah (Mon, 23 Apr 2018 06:42:45 GMT): HoneyShah (Mon, 23 Apr 2018 06:42:45 GMT): HoneyShah (Mon, 23 Apr 2018 06:42:45 GMT): BhaveshPatadiya (Mon, 23 Apr 2018 06:45:48 GMT): BhaveshPatadiya (Mon, 23 Apr 2018 06:46:08 GMT): tim-hub (Mon, 23 Apr 2018 06:52:15 GMT): tim-hub (Mon, 23 Apr 2018 06:53:42 GMT): tim-hub (Mon, 23 Apr 2018 06:53:53 GMT): Poneey (Mon, 23 Apr 2018 07:18:28 GMT): prmdmshra (Mon, 23 Apr 2018 07:18:45 GMT): titoe218 (Mon, 23 Apr 2018 07:50:43 GMT): titoe218 (Mon, 23 Apr 2018 07:51:08 GMT): sstone1 (Mon, 23 Apr 2018 08:06:36 GMT): sstone1 (Mon, 23 Apr 2018 08:06:59 GMT): titoe218 (Mon, 23 Apr 2018 08:07:22 GMT): sstone1 (Mon, 23 Apr 2018 08:23:51 GMT): rthatcher (Mon, 23 Apr 2018 08:24:14 GMT): sstone1 (Mon, 23 Apr 2018 08:24:30 GMT): rthatcher (Mon, 23 Apr 2018 08:28:30 GMT): rthatcher (Mon, 23 Apr 2018 08:39:03 GMT): Varun2887 (Mon, 23 Apr 2018 08:39:19 GMT): Varun2887 (Mon, 23 Apr 2018 08:39:27 GMT): abhinavmishra (Mon, 23 Apr 2018 08:39:32 GMT): abhinavmishra (Mon, 23 Apr 2018 08:39:51 GMT): abhinavmishra (Mon, 23 Apr 2018 08:40:33 GMT): tim-hub (Mon, 23 Apr 2018 08:41:27 GMT): tim-hub (Mon, 23 Apr 2018 08:41:36 GMT): tim-hub (Mon, 23 Apr 2018 08:41:44 GMT): tim-hub (Mon, 23 Apr 2018 08:41:46 GMT): rthatcher (Mon, 23 Apr 2018 08:43:28 GMT): rthatcher (Mon, 23 Apr 2018 08:45:34 GMT): tim-hub (Mon, 23 Apr 2018 08:47:07 GMT): tim-hub (Mon, 23 Apr 2018 08:47:33 GMT): rthatcher (Mon, 23 Apr 2018 08:48:46 GMT): IceFox (Mon, 23 Apr 2018 09:02:12 GMT): IceFox (Mon, 23 Apr 2018 09:02:25 GMT): IceFox (Mon, 23 Apr 2018 09:02:34 GMT): IceFox (Mon, 23 Apr 2018 09:02:44 GMT): IceFox (Mon, 23 Apr 2018 09:02:56 GMT): IceFox (Mon, 23 Apr 2018 09:03:04 GMT): bestbeforetoday (Mon, 23 Apr 2018 09:14:51 GMT): IceFox (Mon, 23 Apr 2018 09:19:36 GMT): IceFox (Mon, 23 Apr 2018 09:20:38 GMT): IceFox (Mon, 23 Apr 2018 09:20:43 GMT): IceFox (Mon, 23 Apr 2018 09:20:47 GMT): d8bhatta (Mon, 23 Apr 2018 09:26:21 GMT): d8bhatta (Mon, 23 Apr 2018 09:26:45 GMT): d8bhatta (Mon, 23 Apr 2018 09:27:14 GMT): d8bhatta (Mon, 23 Apr 2018 09:28:05 GMT): HoneyShah (Mon, 23 Apr 2018 09:29:00 GMT): HoneyShah (Mon, 23 Apr 2018 09:32:59 GMT): d8bhatta (Mon, 23 Apr 2018 09:34:12 GMT): d8bhatta (Mon, 23 Apr 2018 09:34:20 GMT): mahoney1 (Mon, 23 Apr 2018 09:34:24 GMT): mahoney1 (Mon, 23 Apr 2018 09:34:24 GMT): MohitYadav2317 (Mon, 23 Apr 2018 09:37:30 GMT): IceFox (Mon, 23 Apr 2018 09:37:47 GMT): IceFox (Mon, 23 Apr 2018 09:38:13 GMT): IceFox (Mon, 23 Apr 2018 09:39:03 GMT): IceFox (Mon, 23 Apr 2018 09:40:13 GMT): IceFox (Mon, 23 Apr 2018 09:40:23 GMT): mahoney1 (Mon, 23 Apr 2018 09:43:33 GMT): IceFox (Mon, 23 Apr 2018 09:48:48 GMT): IceFox (Mon, 23 Apr 2018 09:49:16 GMT): d8bhatta (Mon, 23 Apr 2018 09:50:10 GMT): mahoney1 (Mon, 23 Apr 2018 09:51:45 GMT): IceFox (Mon, 23 Apr 2018 09:54:04 GMT): IceFox (Mon, 23 Apr 2018 09:54:10 GMT): Varun2887 (Mon, 23 Apr 2018 09:54:41 GMT): Varun2887 (Mon, 23 Apr 2018 09:54:41 GMT): IceFox (Mon, 23 Apr 2018 09:54:47 GMT): d8bhatta (Mon, 23 Apr 2018 09:58:04 GMT): ppcm (Mon, 23 Apr 2018 10:00:37 GMT): mahoney1 (Mon, 23 Apr 2018 10:04:15 GMT): mahoney1 (Mon, 23 Apr 2018 10:04:15 GMT): mahoney1 (Mon, 23 Apr 2018 10:07:51 GMT): Varun2887 (Mon, 23 Apr 2018 10:07:53 GMT): Varun2887 (Mon, 23 Apr 2018 10:08:08 GMT): Varun2887 (Mon, 23 Apr 2018 10:08:45 GMT): mahoney1 (Mon, 23 Apr 2018 10:09:18 GMT): ppcm (Mon, 23 Apr 2018 10:10:55 GMT): mahoney1 (Mon, 23 Apr 2018 10:13:08 GMT): mahoney1 (Mon, 23 Apr 2018 10:13:08 GMT): bestbeforetoday (Mon, 23 Apr 2018 10:35:13 GMT): HoneyShah (Mon, 23 Apr 2018 11:06:33 GMT): kevinsyx (Mon, 23 Apr 2018 12:21:34 GMT): kevinsyx (Mon, 23 Apr 2018 12:21:34 GMT): kevinsyx (Mon, 23 Apr 2018 12:21:34 GMT): Pranoti (Mon, 23 Apr 2018 12:40:16 GMT): rthatcher (Mon, 23 Apr 2018 12:55:11 GMT): erNail (Mon, 23 Apr 2018 12:58:41 GMT): mlucente (Mon, 23 Apr 2018 13:10:37 GMT): mlucente (Mon, 23 Apr 2018 13:10:51 GMT): mlucente (Mon, 23 Apr 2018 13:11:20 GMT): erNail (Mon, 23 Apr 2018 14:03:56 GMT): toddinpal (Mon, 23 Apr 2018 14:16:58 GMT): sstone1 (Mon, 23 Apr 2018 14:58:11 GMT): sstone1 (Mon, 23 Apr 2018 14:58:11 GMT): sstone1 (Mon, 23 Apr 2018 14:58:11 GMT): mahoney1 (Mon, 23 Apr 2018 14:59:47 GMT): mahoney1 (Mon, 23 Apr 2018 14:59:47 GMT): erNail (Mon, 23 Apr 2018 15:01:10 GMT): adilj13 (Mon, 23 Apr 2018 15:08:47 GMT): adilj13 (Mon, 23 Apr 2018 15:10:03 GMT): adilj13 (Mon, 23 Apr 2018 15:11:07 GMT): adilj13 (Mon, 23 Apr 2018 15:11:56 GMT): mahoney1 (Mon, 23 Apr 2018 15:14:47 GMT): mahoney1 (Mon, 23 Apr 2018 15:16:58 GMT): erNail (Mon, 23 Apr 2018 15:20:41 GMT): mahoney1 (Mon, 23 Apr 2018 15:25:59 GMT): mahoney1 (Mon, 23 Apr 2018 15:25:59 GMT): MasthanbeeShaik16 (Mon, 23 Apr 2018 15:27:45 GMT): adilj13 (Mon, 23 Apr 2018 15:35:02 GMT): adilj13 (Mon, 23 Apr 2018 15:35:25 GMT): mahoney1 (Mon, 23 Apr 2018 15:39:45 GMT): MasthanbeeShaik16 (Mon, 23 Apr 2018 15:42:10 GMT): mahoney1 (Mon, 23 Apr 2018 15:44:52 GMT): adilj13 (Mon, 23 Apr 2018 15:47:42 GMT): mahoney1 (Mon, 23 Apr 2018 15:51:09 GMT): bandreghetti (Mon, 23 Apr 2018 15:51:12 GMT): mahoney1 (Mon, 23 Apr 2018 15:56:32 GMT): mahoney1 (Mon, 23 Apr 2018 15:56:32 GMT): MKhabrat (Mon, 23 Apr 2018 15:58:24 GMT): adilj13 (Mon, 23 Apr 2018 15:59:25 GMT): adilj13 (Mon, 23 Apr 2018 15:59:33 GMT): adilj13 (Mon, 23 Apr 2018 15:59:38 GMT): adilj13 (Mon, 23 Apr 2018 16:00:09 GMT): mahoney1 (Mon, 23 Apr 2018 16:02:21 GMT): mahoney1 (Mon, 23 Apr 2018 16:02:21 GMT): adilj13 (Mon, 23 Apr 2018 16:03:22 GMT): mahoney1 (Mon, 23 Apr 2018 16:04:07 GMT): adilj13 (Mon, 23 Apr 2018 16:04:33 GMT): bandreghetti (Mon, 23 Apr 2018 16:09:13 GMT): bandreghetti (Mon, 23 Apr 2018 16:09:13 GMT): youssefg (Mon, 23 Apr 2018 17:06:45 GMT): mahoney1 (Mon, 23 Apr 2018 17:08:43 GMT): toddinpal (Mon, 23 Apr 2018 18:41:33 GMT): joaofguerreiro (Mon, 23 Apr 2018 19:15:03 GMT): joaofguerreiro (Mon, 23 Apr 2018 19:15:52 GMT): Hefziben (Mon, 23 Apr 2018 19:20:53 GMT): lvndry (Mon, 23 Apr 2018 19:32:57 GMT): bswens18 (Mon, 23 Apr 2018 19:42:47 GMT): anshulkathuria34 (Tue, 24 Apr 2018 05:51:10 GMT): suneel18 (Tue, 24 Apr 2018 05:52:08 GMT): suva (Tue, 24 Apr 2018 05:52:46 GMT): suva (Tue, 24 Apr 2018 05:52:46 GMT): suva (Tue, 24 Apr 2018 05:52:46 GMT): HoneyShah (Tue, 24 Apr 2018 06:08:42 GMT): HoneyShah (Tue, 24 Apr 2018 06:08:42 GMT): HoneyShah (Tue, 24 Apr 2018 06:48:27 GMT): HoneyShah (Tue, 24 Apr 2018 06:48:27 GMT): HoneyShah (Tue, 24 Apr 2018 06:48:27 GMT): Pranoti (Tue, 24 Apr 2018 06:56:48 GMT): IceFox (Tue, 24 Apr 2018 07:04:38 GMT): IceFox (Tue, 24 Apr 2018 07:04:42 GMT): IceFox (Tue, 24 Apr 2018 07:04:54 GMT): IceFox (Tue, 24 Apr 2018 07:05:00 GMT): argman (Tue, 24 Apr 2018 07:05:35 GMT): Pranoti (Tue, 24 Apr 2018 07:08:11 GMT): Pranoti (Tue, 24 Apr 2018 07:08:11 GMT): Pranoti (Tue, 24 Apr 2018 07:08:11 GMT): IceFox (Tue, 24 Apr 2018 07:10:47 GMT): IceFox (Tue, 24 Apr 2018 07:11:02 GMT): IceFox (Tue, 24 Apr 2018 07:11:05 GMT): lvndry (Tue, 24 Apr 2018 07:45:58 GMT): rthatcher (Tue, 24 Apr 2018 07:48:41 GMT): rthatcher (Tue, 24 Apr 2018 07:50:47 GMT): rthatcher (Tue, 24 Apr 2018 07:51:52 GMT): suva (Tue, 24 Apr 2018 08:03:18 GMT): suva (Tue, 24 Apr 2018 08:03:33 GMT): rthatcher (Tue, 24 Apr 2018 08:12:24 GMT): JohnR (Tue, 24 Apr 2018 08:12:31 GMT): JohnR (Tue, 24 Apr 2018 08:12:52 GMT): rthatcher (Tue, 24 Apr 2018 08:16:54 GMT): rthatcher (Tue, 24 Apr 2018 08:20:29 GMT): HoneyShah (Tue, 24 Apr 2018 08:24:05 GMT): HoneyShah (Tue, 24 Apr 2018 08:24:05 GMT): rthatcher (Tue, 24 Apr 2018 08:25:34 GMT): argman (Tue, 24 Apr 2018 08:26:22 GMT): rthatcher (Tue, 24 Apr 2018 08:34:28 GMT): mahoney1 (Tue, 24 Apr 2018 08:39:15 GMT): JeffGutierrez (Tue, 24 Apr 2018 08:41:37 GMT): anshulkathuria34 (Tue, 24 Apr 2018 08:45:02 GMT): HoneyShah (Tue, 24 Apr 2018 08:45:15 GMT): mahoney1 (Tue, 24 Apr 2018 08:49:33 GMT): JeffGutierrez (Tue, 24 Apr 2018 08:50:40 GMT): mahoney1 (Tue, 24 Apr 2018 08:51:47 GMT): lvndry (Tue, 24 Apr 2018 08:53:20 GMT): mahoney1 (Tue, 24 Apr 2018 08:57:14 GMT): mahoney1 (Tue, 24 Apr 2018 08:57:14 GMT): mahoney1 (Tue, 24 Apr 2018 08:58:43 GMT): lvndry (Tue, 24 Apr 2018 08:59:44 GMT): lvndry (Tue, 24 Apr 2018 09:05:51 GMT): suva (Tue, 24 Apr 2018 09:36:04 GMT): suva (Tue, 24 Apr 2018 09:36:19 GMT): suva (Tue, 24 Apr 2018 09:38:03 GMT): HoneyShah (Tue, 24 Apr 2018 09:40:04 GMT): suva (Tue, 24 Apr 2018 09:45:33 GMT): mahoney1 (Tue, 24 Apr 2018 09:48:39 GMT): suva (Tue, 24 Apr 2018 09:49:26 GMT): suva (Tue, 24 Apr 2018 09:50:08 GMT): suva (Tue, 24 Apr 2018 09:50:17 GMT): suva (Tue, 24 Apr 2018 09:56:07 GMT): suva (Tue, 24 Apr 2018 09:56:17 GMT): mahoney1 (Tue, 24 Apr 2018 09:56:25 GMT): mahoney1 (Tue, 24 Apr 2018 09:56:25 GMT): suva (Tue, 24 Apr 2018 09:58:59 GMT): suva (Tue, 24 Apr 2018 09:59:03 GMT): anshulkathuria34 (Tue, 24 Apr 2018 09:59:34 GMT): mahoney1 (Tue, 24 Apr 2018 10:10:17 GMT): BhaveshPatadiya (Tue, 24 Apr 2018 10:28:03 GMT): BhaveshPatadiya (Tue, 24 Apr 2018 10:28:03 GMT): BhaveshPatadiya (Tue, 24 Apr 2018 10:28:03 GMT): IceFox (Tue, 24 Apr 2018 10:37:02 GMT): mahoney1 (Tue, 24 Apr 2018 10:37:54 GMT): suva (Tue, 24 Apr 2018 10:39:20 GMT): suva (Tue, 24 Apr 2018 10:39:29 GMT): DuPeng (Tue, 24 Apr 2018 10:42:07 GMT): BhaveshPatadiya (Tue, 24 Apr 2018 10:43:19 GMT): mahoney1 (Tue, 24 Apr 2018 10:46:16 GMT): mahoney1 (Tue, 24 Apr 2018 10:46:16 GMT): rthatcher (Tue, 24 Apr 2018 10:47:03 GMT): mahoney1 (Tue, 24 Apr 2018 10:47:23 GMT): suva (Tue, 24 Apr 2018 10:47:33 GMT): BhaveshPatadiya (Tue, 24 Apr 2018 10:48:26 GMT): mahoney1 (Tue, 24 Apr 2018 10:48:55 GMT): suva (Tue, 24 Apr 2018 10:49:10 GMT): mahoney1 (Tue, 24 Apr 2018 10:49:27 GMT): mahoney1 (Tue, 24 Apr 2018 10:49:27 GMT): BhaskarRaju (Tue, 24 Apr 2018 10:50:03 GMT): suva (Tue, 24 Apr 2018 10:50:34 GMT): BhaskarRaju (Tue, 24 Apr 2018 10:50:39 GMT): suva (Tue, 24 Apr 2018 10:51:10 GMT): anshulkathuria34 (Tue, 24 Apr 2018 10:52:06 GMT): rthatcher (Tue, 24 Apr 2018 11:03:34 GMT): BhaskarRaju (Tue, 24 Apr 2018 11:04:46 GMT): Varun2887 (Tue, 24 Apr 2018 11:08:03 GMT): JohnR (Tue, 24 Apr 2018 11:08:48 GMT): Varun2887 (Tue, 24 Apr 2018 11:09:04 GMT): mahoney1 (Tue, 24 Apr 2018 11:09:54 GMT): mahoney1 (Tue, 24 Apr 2018 11:09:54 GMT): JohnR (Tue, 24 Apr 2018 11:10:23 GMT): mahoney1 (Tue, 24 Apr 2018 11:15:49 GMT): mahoney1 (Tue, 24 Apr 2018 11:20:36 GMT): Varun2887 (Tue, 24 Apr 2018 11:20:58 GMT): d8bhatta (Tue, 24 Apr 2018 11:32:25 GMT): Pranoti (Tue, 24 Apr 2018 11:32:28 GMT): Pranoti (Tue, 24 Apr 2018 11:32:28 GMT): anshulkathuria34 (Tue, 24 Apr 2018 11:34:24 GMT): d8bhatta (Tue, 24 Apr 2018 11:35:46 GMT): d8bhatta (Tue, 24 Apr 2018 11:36:09 GMT): d8bhatta (Tue, 24 Apr 2018 11:36:30 GMT): d8bhatta (Tue, 24 Apr 2018 11:37:03 GMT): mahoney1 (Tue, 24 Apr 2018 12:02:08 GMT): mahoney1 (Tue, 24 Apr 2018 12:06:40 GMT): lvndry (Tue, 24 Apr 2018 12:11:26 GMT): lvndry (Tue, 24 Apr 2018 12:11:46 GMT): lvndry (Tue, 24 Apr 2018 12:11:46 GMT): nicolapaoli (Tue, 24 Apr 2018 12:13:35 GMT): sureshtedla (Tue, 24 Apr 2018 12:28:31 GMT): prmdmshra (Tue, 24 Apr 2018 12:36:42 GMT): sureshtedla (Tue, 24 Apr 2018 12:38:08 GMT): sureshtedla (Tue, 24 Apr 2018 12:38:43 GMT): argman (Tue, 24 Apr 2018 12:43:59 GMT): IceFox (Tue, 24 Apr 2018 12:46:30 GMT): IceFox (Tue, 24 Apr 2018 12:46:37 GMT): IceFox (Tue, 24 Apr 2018 12:47:00 GMT): mahoney1 (Tue, 24 Apr 2018 12:51:49 GMT): mahoney1 (Tue, 24 Apr 2018 12:52:52 GMT): lvndry (Tue, 24 Apr 2018 12:55:15 GMT): mahoney1 (Tue, 24 Apr 2018 12:57:53 GMT): suva (Tue, 24 Apr 2018 12:57:54 GMT): suva (Tue, 24 Apr 2018 12:57:56 GMT): lvndry (Tue, 24 Apr 2018 12:58:07 GMT): suva (Tue, 24 Apr 2018 12:58:08 GMT): suva (Tue, 24 Apr 2018 12:58:32 GMT): suva (Tue, 24 Apr 2018 12:58:56 GMT): suva (Tue, 24 Apr 2018 12:59:09 GMT): ipahomov (Tue, 24 Apr 2018 13:03:32 GMT): ipahomov (Tue, 24 Apr 2018 13:04:07 GMT): mahoney1 (Tue, 24 Apr 2018 13:05:03 GMT): suva (Tue, 24 Apr 2018 13:07:43 GMT): suva (Tue, 24 Apr 2018 13:07:49 GMT): mahoney1 (Tue, 24 Apr 2018 13:07:53 GMT): suva (Tue, 24 Apr 2018 13:08:32 GMT): suva (Tue, 24 Apr 2018 13:08:44 GMT): Poneey (Tue, 24 Apr 2018 13:13:28 GMT): argman (Tue, 24 Apr 2018 13:13:36 GMT): Poneey (Tue, 24 Apr 2018 13:15:00 GMT): Poneey (Tue, 24 Apr 2018 13:15:52 GMT): Poneey (Tue, 24 Apr 2018 13:16:31 GMT): mahoney1 (Tue, 24 Apr 2018 13:23:17 GMT): suva (Tue, 24 Apr 2018 13:23:47 GMT): suva (Tue, 24 Apr 2018 13:24:48 GMT): suva (Tue, 24 Apr 2018 13:24:50 GMT): argman (Tue, 24 Apr 2018 13:25:14 GMT): Poneey (Tue, 24 Apr 2018 13:26:50 GMT): Poneey (Tue, 24 Apr 2018 13:39:08 GMT): thoduerr (Tue, 24 Apr 2018 13:39:33 GMT): thoduerr (Tue, 24 Apr 2018 13:39:33 GMT): mahoney1 (Tue, 24 Apr 2018 13:41:41 GMT): suva (Tue, 24 Apr 2018 13:42:53 GMT): suva (Tue, 24 Apr 2018 13:42:58 GMT): mahoney1 (Tue, 24 Apr 2018 13:45:57 GMT): mahoney1 (Tue, 24 Apr 2018 13:47:20 GMT): mahoney1 (Tue, 24 Apr 2018 13:47:30 GMT): mahoney1 (Tue, 24 Apr 2018 13:47:52 GMT): d8bhatta (Tue, 24 Apr 2018 13:51:59 GMT): thoduerr (Tue, 24 Apr 2018 13:54:00 GMT): mahoney1 (Tue, 24 Apr 2018 13:55:01 GMT): mahoney1 (Tue, 24 Apr 2018 13:55:01 GMT): thoduerr (Tue, 24 Apr 2018 13:58:22 GMT): Hefziben (Tue, 24 Apr 2018 14:02:30 GMT): MasthanbeeShaik16 (Tue, 24 Apr 2018 14:07:14 GMT): MasthanbeeShaik16 (Tue, 24 Apr 2018 14:07:30 GMT): mahoney1 (Tue, 24 Apr 2018 14:13:00 GMT): waleed (Tue, 24 Apr 2018 14:14:21 GMT): waleed (Tue, 24 Apr 2018 14:14:21 GMT): MasthanbeeShaik16 (Tue, 24 Apr 2018 14:19:38 GMT): MasthanbeeShaik16 (Tue, 24 Apr 2018 14:19:38 GMT): mahoney1 (Tue, 24 Apr 2018 14:21:14 GMT): mahoney1 (Tue, 24 Apr 2018 14:21:14 GMT): Poneey (Tue, 24 Apr 2018 14:26:59 GMT): Poneey (Tue, 24 Apr 2018 14:27:33 GMT): mahoney1 (Tue, 24 Apr 2018 14:27:56 GMT): Poneey (Tue, 24 Apr 2018 14:28:34 GMT): Pranoti (Tue, 24 Apr 2018 14:29:16 GMT): Pranoti (Tue, 24 Apr 2018 14:29:16 GMT): mahoney1 (Tue, 24 Apr 2018 14:29:38 GMT): mahoney1 (Tue, 24 Apr 2018 14:31:31 GMT): MasthanbeeShaik16 (Tue, 24 Apr 2018 14:34:00 GMT): mahoney1 (Tue, 24 Apr 2018 14:34:49 GMT): mahoney1 (Tue, 24 Apr 2018 14:38:44 GMT): mahoney1 (Tue, 24 Apr 2018 14:38:44 GMT): kevinsyx (Tue, 24 Apr 2018 14:40:43 GMT): Hefziben (Tue, 24 Apr 2018 14:44:37 GMT): Poneey (Tue, 24 Apr 2018 14:45:51 GMT): waleed (Tue, 24 Apr 2018 15:01:55 GMT): waleed (Tue, 24 Apr 2018 15:01:55 GMT): mahoney1 (Tue, 24 Apr 2018 15:12:36 GMT): mahoney1 (Tue, 24 Apr 2018 15:13:17 GMT): FlorentinoSainz (Tue, 24 Apr 2018 15:15:58 GMT): FlorentinoSainz (Tue, 24 Apr 2018 15:16:43 GMT): FlorentinoSainz (Tue, 24 Apr 2018 15:17:21 GMT): waleed (Tue, 24 Apr 2018 15:18:53 GMT): joaofguerreiro (Tue, 24 Apr 2018 15:20:42 GMT): FlorentinoSainz (Tue, 24 Apr 2018 15:22:20 GMT): adilw3nomad (Tue, 24 Apr 2018 15:22:37 GMT): adilw3nomad (Tue, 24 Apr 2018 15:23:00 GMT): joaofguerreiro (Tue, 24 Apr 2018 15:23:15 GMT): FlorentinoSainz (Tue, 24 Apr 2018 15:23:41 GMT): adilw3nomad (Tue, 24 Apr 2018 15:25:06 GMT): FlorentinoSainz (Tue, 24 Apr 2018 15:31:24 GMT): sstone1 (Tue, 24 Apr 2018 15:38:36 GMT): FlorentinoSainz (Tue, 24 Apr 2018 15:42:55 GMT): mahoney1 (Tue, 24 Apr 2018 15:43:15 GMT): mahoney1 (Tue, 24 Apr 2018 15:49:04 GMT): mahoney1 (Tue, 24 Apr 2018 15:49:04 GMT): nicolapaoli (Tue, 24 Apr 2018 15:51:31 GMT): nicolapaoli (Tue, 24 Apr 2018 15:51:31 GMT): mahoney1 (Tue, 24 Apr 2018 15:56:18 GMT): adilw3nomad (Tue, 24 Apr 2018 16:02:15 GMT): mahoney1 (Tue, 24 Apr 2018 16:03:21 GMT): uber.twin (Tue, 24 Apr 2018 16:04:06 GMT): mahoney1 (Tue, 24 Apr 2018 16:12:12 GMT): mahoney1 (Tue, 24 Apr 2018 16:12:12 GMT): nicolapaoli (Tue, 24 Apr 2018 16:15:16 GMT): mahoney1 (Tue, 24 Apr 2018 16:19:19 GMT): joaofguerreiro (Tue, 24 Apr 2018 16:19:46 GMT): mahoney1 (Tue, 24 Apr 2018 16:21:59 GMT): joaofguerreiro (Tue, 24 Apr 2018 16:23:16 GMT): uber.twin (Tue, 24 Apr 2018 16:37:42 GMT): FlorentinoSainz (Tue, 24 Apr 2018 16:48:25 GMT): FlorentinoSainz (Tue, 24 Apr 2018 16:50:42 GMT): mahoney1 (Tue, 24 Apr 2018 16:55:27 GMT): Vanitha (Tue, 24 Apr 2018 17:03:33 GMT): mahoney1 (Tue, 24 Apr 2018 17:04:21 GMT): FlorentinoSainz (Tue, 24 Apr 2018 17:06:24 GMT): mahoney1 (Tue, 24 Apr 2018 17:07:13 GMT): Vanitha (Tue, 24 Apr 2018 17:08:54 GMT): FlorentinoSainz (Tue, 24 Apr 2018 17:10:05 GMT): Vanitha (Tue, 24 Apr 2018 17:10:22 GMT): Vanitha (Tue, 24 Apr 2018 17:10:36 GMT): mahoney1 (Tue, 24 Apr 2018 17:11:06 GMT): FlorentinoSainz (Tue, 24 Apr 2018 17:12:13 GMT): Vanitha (Tue, 24 Apr 2018 17:14:50 GMT): FlorentinoSainz (Tue, 24 Apr 2018 17:16:37 GMT): FlorentinoSainz (Tue, 24 Apr 2018 17:17:47 GMT): mahoney1 (Tue, 24 Apr 2018 17:18:25 GMT): mahoney1 (Tue, 24 Apr 2018 17:18:25 GMT): Vanitha (Tue, 24 Apr 2018 17:19:03 GMT): Vanitha (Tue, 24 Apr 2018 17:19:40 GMT): FlorentinoSainz (Tue, 24 Apr 2018 17:20:46 GMT): FlorentinoSainz (Tue, 24 Apr 2018 17:21:48 GMT): Vanitha (Tue, 24 Apr 2018 17:23:05 GMT): FlorentinoSainz (Tue, 24 Apr 2018 17:23:15 GMT): FlorentinoSainz (Tue, 24 Apr 2018 17:24:18 GMT): FlorentinoSainz (Tue, 24 Apr 2018 17:24:45 GMT): Vanitha (Tue, 24 Apr 2018 17:26:33 GMT): Vanitha (Tue, 24 Apr 2018 17:26:51 GMT): CynthiaWood (Tue, 24 Apr 2018 17:39:56 GMT): esauop (Tue, 24 Apr 2018 18:25:43 GMT): peenakOgilvy (Tue, 24 Apr 2018 19:11:34 GMT): peenakOgilvy (Tue, 24 Apr 2018 19:12:46 GMT): rcheuk (Tue, 24 Apr 2018 20:04:01 GMT): ThomasBereczky (Tue, 24 Apr 2018 20:17:52 GMT): ThomasBereczky (Tue, 24 Apr 2018 20:18:10 GMT): ThomasBereczky (Tue, 24 Apr 2018 20:52:32 GMT): ThomasBereczky (Tue, 24 Apr 2018 23:48:13 GMT): ThomasBereczky (Tue, 24 Apr 2018 23:48:19 GMT): ThomasBereczky (Tue, 24 Apr 2018 23:48:25 GMT): nattapong (Wed, 25 Apr 2018 04:44:34 GMT): sillysachin (Wed, 25 Apr 2018 05:16:03 GMT): vinayak 22 (Wed, 25 Apr 2018 05:32:32 GMT): IceFox (Wed, 25 Apr 2018 06:26:58 GMT): biksen (Wed, 25 Apr 2018 06:59:25 GMT): FlorentinoSainz (Wed, 25 Apr 2018 07:06:23 GMT): FlorentinoSainz (Wed, 25 Apr 2018 07:10:00 GMT): CorentinPacaud (Wed, 25 Apr 2018 07:12:01 GMT): Poneey (Wed, 25 Apr 2018 07:12:07 GMT): FlorentinoSainz (Wed, 25 Apr 2018 07:21:30 GMT): kevinsyx (Wed, 25 Apr 2018 07:41:01 GMT): kevinsyx (Wed, 25 Apr 2018 07:42:15 GMT): kevinsyx (Wed, 25 Apr 2018 07:42:57 GMT): kevinsyx (Wed, 25 Apr 2018 07:44:51 GMT): kevinsyx (Wed, 25 Apr 2018 07:44:51 GMT): rthatcher (Wed, 25 Apr 2018 08:26:59 GMT): rthatcher (Wed, 25 Apr 2018 08:39:44 GMT): CorentinPacaud (Wed, 25 Apr 2018 08:40:41 GMT): toneady (Wed, 25 Apr 2018 08:48:45 GMT): HoneyShah (Wed, 25 Apr 2018 08:52:33 GMT): kevinsyx (Wed, 25 Apr 2018 08:53:29 GMT): FlorentinoSainz (Wed, 25 Apr 2018 09:04:45 GMT): FlorentinoSainz (Wed, 25 Apr 2018 09:05:34 GMT): FlorentinoSainz (Wed, 25 Apr 2018 09:06:06 GMT): uber.twin (Wed, 25 Apr 2018 09:07:54 GMT): uber.twin (Wed, 25 Apr 2018 09:10:10 GMT): uber.twin (Wed, 25 Apr 2018 09:44:30 GMT): CorentinPacaud (Wed, 25 Apr 2018 09:49:24 GMT): CorentinPacaud (Wed, 25 Apr 2018 09:52:38 GMT): rthatcher (Wed, 25 Apr 2018 10:31:14 GMT): mahoney1 (Wed, 25 Apr 2018 10:33:50 GMT): HoneyShah (Wed, 25 Apr 2018 10:35:59 GMT): HoneyShah (Wed, 25 Apr 2018 10:36:22 GMT): mahoney1 (Wed, 25 Apr 2018 10:37:10 GMT): HoneyShah (Wed, 25 Apr 2018 10:37:38 GMT): HoneyShah (Wed, 25 Apr 2018 10:37:41 GMT): mahoney1 (Wed, 25 Apr 2018 10:39:36 GMT): HoneyShah (Wed, 25 Apr 2018 10:39:48 GMT): mahoney1 (Wed, 25 Apr 2018 10:45:06 GMT): mahoney1 (Wed, 25 Apr 2018 10:45:06 GMT): mahoney1 (Wed, 25 Apr 2018 10:45:06 GMT): HoneyShah (Wed, 25 Apr 2018 10:48:19 GMT): HoneyShah (Wed, 25 Apr 2018 11:38:13 GMT): HoneyShah (Wed, 25 Apr 2018 11:38:13 GMT): Poneey (Wed, 25 Apr 2018 11:59:14 GMT): Poneey (Wed, 25 Apr 2018 12:03:22 GMT): suva (Wed, 25 Apr 2018 12:10:50 GMT): suva (Wed, 25 Apr 2018 12:11:02 GMT): sureshtedla (Wed, 25 Apr 2018 12:40:06 GMT): vinayak 22 (Wed, 25 Apr 2018 12:40:53 GMT): vinayak 22 (Wed, 25 Apr 2018 12:41:00 GMT): vinayak 22 (Wed, 25 Apr 2018 12:41:02 GMT): vinayak 22 (Wed, 25 Apr 2018 12:41:12 GMT): sureshtedla (Wed, 25 Apr 2018 12:41:36 GMT): vinayak 22 (Wed, 25 Apr 2018 12:43:05 GMT): sureshtedla (Wed, 25 Apr 2018 12:43:38 GMT): vinayak 22 (Wed, 25 Apr 2018 12:55:25 GMT): vinayak 22 (Wed, 25 Apr 2018 12:55:25 GMT): uber.twin (Wed, 25 Apr 2018 13:07:34 GMT): rthatcher (Wed, 25 Apr 2018 13:11:54 GMT): GrondinLaurent (Wed, 25 Apr 2018 13:14:37 GMT): rthatcher (Wed, 25 Apr 2018 13:31:29 GMT): GrondinLaurent (Wed, 25 Apr 2018 13:35:27 GMT): FlorentinoSainz (Wed, 25 Apr 2018 13:42:14 GMT): sureshtedla (Wed, 25 Apr 2018 13:43:04 GMT): sureshtedla (Wed, 25 Apr 2018 13:43:55 GMT): rthatcher (Wed, 25 Apr 2018 13:47:11 GMT): sureshtedla (Wed, 25 Apr 2018 13:48:33 GMT): Juanan_Tejero (Wed, 25 Apr 2018 14:05:27 GMT): mahoney1 (Wed, 25 Apr 2018 14:09:26 GMT): CorentinPacaud (Wed, 25 Apr 2018 14:13:50 GMT): mahoney1 (Wed, 25 Apr 2018 14:16:44 GMT): rthatcher (Wed, 25 Apr 2018 14:19:27 GMT): sureshtedla (Wed, 25 Apr 2018 14:22:33 GMT): rthatcher (Wed, 25 Apr 2018 14:24:23 GMT): sureshtedla (Wed, 25 Apr 2018 14:25:42 GMT): CorentinPacaud (Wed, 25 Apr 2018 14:28:15 GMT): mahoney1 (Wed, 25 Apr 2018 14:28:42 GMT): Juanan_Tejero (Wed, 25 Apr 2018 14:34:18 GMT): CorentinPacaud (Wed, 25 Apr 2018 14:38:57 GMT): rthatcher (Wed, 25 Apr 2018 14:40:29 GMT): sureshtedla (Wed, 25 Apr 2018 14:41:23 GMT): sureshtedla (Wed, 25 Apr 2018 14:41:54 GMT): mahoney1 (Wed, 25 Apr 2018 14:55:14 GMT): Juanan_Tejero (Wed, 25 Apr 2018 14:56:17 GMT): uber.twin (Wed, 25 Apr 2018 14:56:43 GMT): uber.twin (Wed, 25 Apr 2018 14:56:43 GMT): uber.twin (Wed, 25 Apr 2018 14:56:43 GMT): mahoney1 (Wed, 25 Apr 2018 15:12:24 GMT): uber.twin (Wed, 25 Apr 2018 15:34:19 GMT): uber.twin (Wed, 25 Apr 2018 15:41:14 GMT): mahoney1 (Wed, 25 Apr 2018 16:22:40 GMT): Levilk (Wed, 25 Apr 2018 16:29:46 GMT): Levilk (Wed, 25 Apr 2018 16:33:37 GMT): vieiramanoel (Wed, 25 Apr 2018 16:46:35 GMT): vieiramanoel (Wed, 25 Apr 2018 16:46:35 GMT): uber.twin (Wed, 25 Apr 2018 16:49:45 GMT): uber.twin (Wed, 25 Apr 2018 16:49:45 GMT): SudheerKaspa (Wed, 25 Apr 2018 17:53:41 GMT): vieiramanoel (Wed, 25 Apr 2018 18:18:26 GMT): Vanitha (Wed, 25 Apr 2018 18:20:18 GMT): Vanitha (Wed, 25 Apr 2018 18:21:45 GMT): Vanitha (Wed, 25 Apr 2018 18:22:02 GMT): umamaheswarv (Thu, 26 Apr 2018 02:13:45 GMT): HoneyShah (Thu, 26 Apr 2018 04:06:56 GMT): shihabullah (Thu, 26 Apr 2018 04:56:00 GMT): m0ksh_12 (Thu, 26 Apr 2018 05:36:56 GMT): m0ksh_12 (Thu, 26 Apr 2018 05:38:14 GMT): anthonyk (Thu, 26 Apr 2018 05:50:52 GMT): SudheerKaspa (Thu, 26 Apr 2018 06:23:23 GMT): anshulkathuria34 (Thu, 26 Apr 2018 06:58:16 GMT): vinayak 22 (Thu, 26 Apr 2018 07:10:35 GMT): andreamagagna (Thu, 26 Apr 2018 07:31:15 GMT): maestrus (Thu, 26 Apr 2018 08:29:03 GMT): rthatcher (Thu, 26 Apr 2018 08:30:29 GMT): pranjalps03 (Thu, 26 Apr 2018 08:35:07 GMT): rthatcher (Thu, 26 Apr 2018 08:36:58 GMT): petroccoC (Thu, 26 Apr 2018 08:37:16 GMT): pranjalps03 (Thu, 26 Apr 2018 08:41:09 GMT): rthatcher (Thu, 26 Apr 2018 08:44:24 GMT): pranjalps03 (Thu, 26 Apr 2018 08:44:28 GMT): rthatcher (Thu, 26 Apr 2018 08:46:31 GMT): dsl (Thu, 26 Apr 2018 08:49:20 GMT): dsl (Thu, 26 Apr 2018 08:49:20 GMT): dsl (Thu, 26 Apr 2018 08:49:20 GMT): rthatcher (Thu, 26 Apr 2018 08:53:29 GMT): mahoney1 (Thu, 26 Apr 2018 09:01:51 GMT): geourjoa (Thu, 26 Apr 2018 09:03:02 GMT): geourjoa (Thu, 26 Apr 2018 09:04:30 GMT): CorentinPacaud (Thu, 26 Apr 2018 09:08:28 GMT): CorentinPacaud (Thu, 26 Apr 2018 09:13:54 GMT): mahoney1 (Thu, 26 Apr 2018 09:18:09 GMT): mahoney1 (Thu, 26 Apr 2018 09:24:48 GMT): pb (Thu, 26 Apr 2018 09:32:10 GMT): pb (Thu, 26 Apr 2018 09:32:10 GMT): mahoney1 (Thu, 26 Apr 2018 09:55:45 GMT): pb (Thu, 26 Apr 2018 10:02:03 GMT): mahoney1 (Thu, 26 Apr 2018 10:03:44 GMT): rthatcher (Thu, 26 Apr 2018 10:04:58 GMT): rthatcher (Thu, 26 Apr 2018 10:04:58 GMT): pb (Thu, 26 Apr 2018 10:05:36 GMT): m0ksh_12 (Thu, 26 Apr 2018 10:12:42 GMT): m0ksh_12 (Thu, 26 Apr 2018 10:13:31 GMT): ReginaMehta (Thu, 26 Apr 2018 10:14:10 GMT): ReginaMehta (Thu, 26 Apr 2018 10:14:41 GMT): m0ksh_12 (Thu, 26 Apr 2018 10:19:47 GMT): Yakechi (Thu, 26 Apr 2018 10:41:19 GMT): sgaddam (Thu, 26 Apr 2018 10:42:22 GMT): CarrereArnaud (Thu, 26 Apr 2018 10:44:32 GMT): CarrereArnaud (Thu, 26 Apr 2018 10:46:08 GMT): mahoney1 (Thu, 26 Apr 2018 10:58:37 GMT): Saschaka (Thu, 26 Apr 2018 10:59:51 GMT): mahoney1 (Thu, 26 Apr 2018 11:19:26 GMT): mahoney1 (Thu, 26 Apr 2018 11:23:41 GMT): Saschaka (Thu, 26 Apr 2018 11:23:55 GMT): mahoney1 (Thu, 26 Apr 2018 11:34:30 GMT): mahoney1 (Thu, 26 Apr 2018 11:34:30 GMT): mahoney1 (Thu, 26 Apr 2018 11:34:30 GMT): Pranoti (Thu, 26 Apr 2018 11:39:23 GMT): mahoney1 (Thu, 26 Apr 2018 11:41:25 GMT): mahoney1 (Thu, 26 Apr 2018 11:47:20 GMT): mahoney1 (Thu, 26 Apr 2018 11:59:20 GMT): CorentinPacaud (Thu, 26 Apr 2018 12:08:51 GMT): Pranoti (Thu, 26 Apr 2018 12:14:52 GMT): Pranoti (Thu, 26 Apr 2018 12:14:52 GMT): Pranoti (Thu, 26 Apr 2018 12:14:52 GMT): Pranoti (Thu, 26 Apr 2018 12:14:52 GMT): Pranoti (Thu, 26 Apr 2018 12:14:52 GMT): Pranoti (Thu, 26 Apr 2018 12:14:52 GMT): adilj13 (Thu, 26 Apr 2018 12:19:05 GMT): adilj13 (Thu, 26 Apr 2018 12:21:15 GMT): adilj13 (Thu, 26 Apr 2018 12:21:37 GMT): adilj13 (Thu, 26 Apr 2018 12:22:24 GMT): rthatcher (Thu, 26 Apr 2018 12:33:02 GMT): rthatcher (Thu, 26 Apr 2018 12:38:52 GMT): CorentinPacaud (Thu, 26 Apr 2018 12:40:16 GMT): CorentinPacaud (Thu, 26 Apr 2018 12:40:44 GMT): CorentinPacaud (Thu, 26 Apr 2018 12:46:00 GMT): utsha94 (Thu, 26 Apr 2018 12:46:14 GMT): utsha94 (Thu, 26 Apr 2018 12:47:23 GMT): utsha94 (Thu, 26 Apr 2018 12:48:01 GMT): rthatcher (Thu, 26 Apr 2018 12:49:30 GMT): CorentinPacaud (Thu, 26 Apr 2018 12:51:01 GMT): m0ksh_12 (Thu, 26 Apr 2018 13:03:30 GMT): m0ksh_12 (Thu, 26 Apr 2018 13:03:30 GMT): mahoney1 (Thu, 26 Apr 2018 13:11:49 GMT): mahoney1 (Thu, 26 Apr 2018 13:11:49 GMT): CorentinPacaud (Thu, 26 Apr 2018 13:12:28 GMT): mahoney1 (Thu, 26 Apr 2018 13:13:38 GMT): mahoney1 (Thu, 26 Apr 2018 13:13:38 GMT): CorentinPacaud (Thu, 26 Apr 2018 13:16:06 GMT): m0ksh_12 (Thu, 26 Apr 2018 13:16:47 GMT): CorentinPacaud (Thu, 26 Apr 2018 13:19:14 GMT): Saschaka (Thu, 26 Apr 2018 13:34:46 GMT): rthatcher (Thu, 26 Apr 2018 13:36:28 GMT): CorentinPacaud (Thu, 26 Apr 2018 13:42:14 GMT): Vanitha (Thu, 26 Apr 2018 13:46:52 GMT): Pranoti (Thu, 26 Apr 2018 13:48:23 GMT): Pranoti (Thu, 26 Apr 2018 13:53:39 GMT): Pranoti (Thu, 26 Apr 2018 13:53:39 GMT): mahoney1 (Thu, 26 Apr 2018 14:01:16 GMT): Pranoti (Thu, 26 Apr 2018 14:03:25 GMT): mahoney1 (Thu, 26 Apr 2018 14:12:05 GMT): Vanitha (Thu, 26 Apr 2018 14:20:25 GMT): uber.twin (Thu, 26 Apr 2018 14:34:57 GMT): rohanraj (Thu, 26 Apr 2018 14:43:08 GMT): octavians 1 (Thu, 26 Apr 2018 14:44:36 GMT): rohanraj (Thu, 26 Apr 2018 14:44:56 GMT): rohanraj (Thu, 26 Apr 2018 14:46:30 GMT): rohanraj (Thu, 26 Apr 2018 14:46:46 GMT): Poneey (Thu, 26 Apr 2018 14:48:39 GMT): ronaldlong46 (Thu, 26 Apr 2018 15:00:17 GMT): ronaldlong46 (Thu, 26 Apr 2018 15:00:32 GMT): nuxibyte (Thu, 26 Apr 2018 15:48:48 GMT): ashishnpatel (Thu, 26 Apr 2018 15:50:44 GMT): mahoney1 (Thu, 26 Apr 2018 15:55:47 GMT): mahoney1 (Thu, 26 Apr 2018 15:55:47 GMT): mhomaid (Thu, 26 Apr 2018 16:19:18 GMT): shiyj (Thu, 26 Apr 2018 16:30:18 GMT): vieiramanoel (Thu, 26 Apr 2018 16:40:56 GMT): vieiramanoel (Thu, 26 Apr 2018 16:41:32 GMT): mahoney1 (Thu, 26 Apr 2018 16:51:59 GMT): joaofguerreiro (Thu, 26 Apr 2018 16:58:11 GMT): mahoney1 (Thu, 26 Apr 2018 17:01:20 GMT): joaofguerreiro (Thu, 26 Apr 2018 17:01:25 GMT): uber.twin (Thu, 26 Apr 2018 17:05:32 GMT): mahoney1 (Thu, 26 Apr 2018 17:07:59 GMT): prov (Thu, 26 Apr 2018 17:13:17 GMT): uber.twin (Thu, 26 Apr 2018 17:30:27 GMT): uber.twin (Thu, 26 Apr 2018 17:30:27 GMT): pratyush247 (Thu, 26 Apr 2018 17:51:14 GMT): pratyush247 (Thu, 26 Apr 2018 17:51:36 GMT): pratyush247 (Thu, 26 Apr 2018 17:52:19 GMT): Levilk (Thu, 26 Apr 2018 18:07:07 GMT): ashishnpatel (Thu, 26 Apr 2018 19:01:14 GMT): f2918124 (Thu, 26 Apr 2018 19:39:11 GMT): f2918124 (Thu, 26 Apr 2018 19:45:31 GMT): Wesley2018 (Fri, 27 Apr 2018 00:41:19 GMT): RitikaBundela (Fri, 27 Apr 2018 05:35:25 GMT): RitikaBundela (Fri, 27 Apr 2018 05:36:55 GMT): dahood (Fri, 27 Apr 2018 05:38:46 GMT): silentinfotech (Fri, 27 Apr 2018 06:29:52 GMT): silentinfotech (Fri, 27 Apr 2018 06:31:05 GMT): silentinfotech (Fri, 27 Apr 2018 06:31:51 GMT): sstone1 (Fri, 27 Apr 2018 06:32:02 GMT): silentinfotech (Fri, 27 Apr 2018 06:32:15 GMT): sstone1 (Fri, 27 Apr 2018 06:32:23 GMT): silentinfotech (Fri, 27 Apr 2018 06:33:11 GMT): sstone1 (Fri, 27 Apr 2018 06:33:45 GMT): sstone1 (Fri, 27 Apr 2018 06:34:06 GMT): sstone1 (Fri, 27 Apr 2018 06:34:33 GMT): silentinfotech (Fri, 27 Apr 2018 06:35:41 GMT): silentinfotech (Fri, 27 Apr 2018 06:35:41 GMT): sstone1 (Fri, 27 Apr 2018 06:36:07 GMT): sstone1 (Fri, 27 Apr 2018 06:36:13 GMT): sstone1 (Fri, 27 Apr 2018 06:36:14 GMT): sstone1 (Fri, 27 Apr 2018 06:36:29 GMT): suva (Fri, 27 Apr 2018 06:50:11 GMT): suva (Fri, 27 Apr 2018 06:50:12 GMT): suva (Fri, 27 Apr 2018 06:50:30 GMT): suva (Fri, 27 Apr 2018 06:51:16 GMT): suva (Fri, 27 Apr 2018 06:51:41 GMT): suva (Fri, 27 Apr 2018 06:51:53 GMT): tvman99 (Fri, 27 Apr 2018 06:58:05 GMT): tvman99 (Fri, 27 Apr 2018 06:58:10 GMT): tvman99 (Fri, 27 Apr 2018 06:58:36 GMT): tvman99 (Fri, 27 Apr 2018 06:59:37 GMT): dselman (Fri, 27 Apr 2018 07:09:35 GMT): tvman99 (Fri, 27 Apr 2018 07:10:01 GMT): tvman99 (Fri, 27 Apr 2018 07:10:14 GMT): dselman (Fri, 27 Apr 2018 07:11:21 GMT): dselman (Fri, 27 Apr 2018 07:11:21 GMT): tvman99 (Fri, 27 Apr 2018 07:11:55 GMT): tvman99 (Fri, 27 Apr 2018 07:12:10 GMT): dselman (Fri, 27 Apr 2018 07:13:03 GMT): dselman (Fri, 27 Apr 2018 07:13:08 GMT): tvman99 (Fri, 27 Apr 2018 07:14:59 GMT): sstone1 (Fri, 27 Apr 2018 07:17:58 GMT): sstone1 (Fri, 27 Apr 2018 07:17:58 GMT): sstone1 (Fri, 27 Apr 2018 07:18:05 GMT): sstone1 (Fri, 27 Apr 2018 07:18:19 GMT): sstone1 (Fri, 27 Apr 2018 07:18:20 GMT): sstone1 (Fri, 27 Apr 2018 07:18:55 GMT): tvman99 (Fri, 27 Apr 2018 07:21:47 GMT): waleed (Fri, 27 Apr 2018 07:28:45 GMT): waleed (Fri, 27 Apr 2018 07:28:47 GMT): sstone1 (Fri, 27 Apr 2018 07:29:53 GMT): sstone1 (Fri, 27 Apr 2018 07:30:25 GMT): sstone1 (Fri, 27 Apr 2018 07:30:41 GMT): waleed (Fri, 27 Apr 2018 07:46:15 GMT): waleed (Fri, 27 Apr 2018 07:46:15 GMT): argman (Fri, 27 Apr 2018 07:46:39 GMT): rthatcher (Fri, 27 Apr 2018 08:13:33 GMT): suva (Fri, 27 Apr 2018 08:14:38 GMT): suva (Fri, 27 Apr 2018 08:14:58 GMT): suva (Fri, 27 Apr 2018 08:15:19 GMT): HareshPolar1 (Fri, 27 Apr 2018 08:23:05 GMT): rthatcher (Fri, 27 Apr 2018 08:27:22 GMT): argman (Fri, 27 Apr 2018 08:29:42 GMT): argman (Fri, 27 Apr 2018 08:29:42 GMT): tvman99 (Fri, 27 Apr 2018 08:36:56 GMT): tvman99 (Fri, 27 Apr 2018 08:37:50 GMT): tvman99 (Fri, 27 Apr 2018 08:38:24 GMT): argman (Fri, 27 Apr 2018 08:43:55 GMT): HareshPolar1 (Fri, 27 Apr 2018 08:54:45 GMT): suva (Fri, 27 Apr 2018 09:00:08 GMT): mahoney1 (Fri, 27 Apr 2018 09:04:00 GMT): mahoney1 (Fri, 27 Apr 2018 09:04:00 GMT): mahoney1 (Fri, 27 Apr 2018 09:08:08 GMT): rthatcher (Fri, 27 Apr 2018 09:08:26 GMT): mahoney1 (Fri, 27 Apr 2018 09:10:29 GMT): suva (Fri, 27 Apr 2018 09:10:50 GMT): argman (Fri, 27 Apr 2018 09:11:28 GMT): Varun2887 (Fri, 27 Apr 2018 09:43:36 GMT): Varun2887 (Fri, 27 Apr 2018 09:43:36 GMT): waleed (Fri, 27 Apr 2018 09:45:32 GMT): Varun2887 (Fri, 27 Apr 2018 09:46:00 GMT): Turikalen (Fri, 27 Apr 2018 09:59:15 GMT): mahoney1 (Fri, 27 Apr 2018 10:14:48 GMT): rthatcher (Fri, 27 Apr 2018 10:23:58 GMT): tvman99 (Fri, 27 Apr 2018 10:25:19 GMT): tvman99 (Fri, 27 Apr 2018 10:25:41 GMT): mahoney1 (Fri, 27 Apr 2018 10:32:17 GMT): tvman99 (Fri, 27 Apr 2018 10:35:59 GMT): mahoney1 (Fri, 27 Apr 2018 10:42:30 GMT): mahoney1 (Fri, 27 Apr 2018 10:49:12 GMT): mahoney1 (Fri, 27 Apr 2018 10:49:12 GMT): thoduerr (Fri, 27 Apr 2018 11:02:08 GMT): thoduerr (Fri, 27 Apr 2018 11:02:08 GMT): thoduerr (Fri, 27 Apr 2018 11:02:08 GMT): mahoney1 (Fri, 27 Apr 2018 11:30:37 GMT): mahoney1 (Fri, 27 Apr 2018 11:30:37 GMT): mahoney1 (Fri, 27 Apr 2018 11:30:37 GMT): mzakhia (Fri, 27 Apr 2018 11:36:52 GMT): thoduerr (Fri, 27 Apr 2018 11:45:24 GMT): mahoney1 (Fri, 27 Apr 2018 11:47:28 GMT): thoduerr (Fri, 27 Apr 2018 11:51:20 GMT): thoduerr (Fri, 27 Apr 2018 11:52:19 GMT): thoduerr (Fri, 27 Apr 2018 11:53:50 GMT): uber.twin (Fri, 27 Apr 2018 11:56:01 GMT): mahoney1 (Fri, 27 Apr 2018 12:03:23 GMT): mahoney1 (Fri, 27 Apr 2018 12:03:39 GMT): mahoney1 (Fri, 27 Apr 2018 12:12:19 GMT): ApoorvChandurkar (Fri, 27 Apr 2018 12:21:36 GMT): mahoney1 (Fri, 27 Apr 2018 12:41:54 GMT): suva (Fri, 27 Apr 2018 13:10:28 GMT): suva (Fri, 27 Apr 2018 13:10:29 GMT): suva (Fri, 27 Apr 2018 13:10:45 GMT): suva (Fri, 27 Apr 2018 13:14:40 GMT): jpdias92 (Fri, 27 Apr 2018 13:19:08 GMT): Vanitha (Fri, 27 Apr 2018 13:20:31 GMT): DarinMcBeath (Fri, 27 Apr 2018 13:42:37 GMT): DarinMcBeath (Fri, 27 Apr 2018 13:47:39 GMT): suva (Fri, 27 Apr 2018 13:52:29 GMT): suva (Fri, 27 Apr 2018 13:52:39 GMT): mahoney1 (Fri, 27 Apr 2018 13:54:47 GMT): DarinMcBeath (Fri, 27 Apr 2018 13:55:31 GMT): mahoney1 (Fri, 27 Apr 2018 14:01:22 GMT): Vanitha (Fri, 27 Apr 2018 14:05:18 GMT): mahoney1 (Fri, 27 Apr 2018 14:07:19 GMT): mahoney1 (Fri, 27 Apr 2018 14:14:21 GMT): mahoney1 (Fri, 27 Apr 2018 14:14:21 GMT): Tom-Xu-CNXA (Fri, 27 Apr 2018 14:24:15 GMT): timboblockchain (Fri, 27 Apr 2018 14:32:03 GMT): safasakly (Fri, 27 Apr 2018 14:32:46 GMT): toneady (Fri, 27 Apr 2018 14:34:43 GMT): safasakly (Fri, 27 Apr 2018 14:48:01 GMT): toneady (Fri, 27 Apr 2018 14:53:31 GMT): safasakly (Fri, 27 Apr 2018 15:10:12 GMT): toneady (Fri, 27 Apr 2018 15:16:20 GMT): safasakly (Fri, 27 Apr 2018 15:30:38 GMT): toneady (Fri, 27 Apr 2018 15:31:46 GMT): safasakly (Fri, 27 Apr 2018 15:36:04 GMT): toneady (Fri, 27 Apr 2018 15:39:41 GMT): safasakly (Fri, 27 Apr 2018 15:41:12 GMT): mbwhite (Fri, 27 Apr 2018 15:45:23 GMT): mbwhite (Fri, 27 Apr 2018 15:45:40 GMT): safasakly (Fri, 27 Apr 2018 15:46:13 GMT): mbwhite (Fri, 27 Apr 2018 15:47:27 GMT): mbwhite (Fri, 27 Apr 2018 15:47:36 GMT): safasakly (Fri, 27 Apr 2018 15:54:53 GMT): mahoney1 (Fri, 27 Apr 2018 15:55:07 GMT): nicolapaoli (Fri, 27 Apr 2018 16:18:04 GMT): nicolapaoli (Fri, 27 Apr 2018 16:18:04 GMT): rthatcher (Fri, 27 Apr 2018 16:23:52 GMT): mcoronadog (Fri, 27 Apr 2018 19:10:27 GMT): rchohan (Fri, 27 Apr 2018 21:21:12 GMT): rchohan (Fri, 27 Apr 2018 21:23:03 GMT): Tom-Xu-CNXA (Sat, 28 Apr 2018 00:47:40 GMT): Tom-Xu-CNXA (Sat, 28 Apr 2018 00:47:40 GMT): Tom-Xu-CNXA (Sat, 28 Apr 2018 00:47:40 GMT): Tom-Xu-CNXA (Sat, 28 Apr 2018 01:03:12 GMT): edm629 (Sat, 28 Apr 2018 02:35:40 GMT): edm629 (Sat, 28 Apr 2018 02:36:03 GMT): DavidQian (Sat, 28 Apr 2018 03:51:32 GMT): DavidQian (Sat, 28 Apr 2018 03:51:39 GMT): DavidQian (Sat, 28 Apr 2018 03:52:30 GMT): DavidQian (Sat, 28 Apr 2018 03:53:03 GMT): DavidQian (Sat, 28 Apr 2018 03:53:12 GMT): DavidQian (Sat, 28 Apr 2018 03:53:12 GMT): DavidQian (Sat, 28 Apr 2018 03:53:35 GMT): DavidQian (Sat, 28 Apr 2018 03:57:25 GMT): DavidQian (Sat, 28 Apr 2018 03:57:25 GMT): Anaferna89 (Sat, 28 Apr 2018 04:21:59 GMT): divyamsingh13 (Sat, 28 Apr 2018 10:53:32 GMT): absingh0 (Sat, 28 Apr 2018 13:01:50 GMT): jmat201 (Sat, 28 Apr 2018 14:03:11 GMT): jmat201 (Sat, 28 Apr 2018 14:28:22 GMT): ronaldlong46 (Sat, 28 Apr 2018 14:59:28 GMT): ronaldlong46 (Sat, 28 Apr 2018 15:01:48 GMT): jmat201 (Sat, 28 Apr 2018 15:04:05 GMT): jmat201 (Sat, 28 Apr 2018 15:04:51 GMT): ronaldlong46 (Sat, 28 Apr 2018 15:05:12 GMT): rafaelkonrath (Sat, 28 Apr 2018 17:03:10 GMT): sghosh2 (Sat, 28 Apr 2018 18:10:41 GMT): sghosh2 (Sat, 28 Apr 2018 18:11:05 GMT): snagaoka (Sat, 28 Apr 2018 18:51:18 GMT): karthikeyans90 (Sat, 28 Apr 2018 19:29:31 GMT): sugnani (Sun, 29 Apr 2018 05:38:10 GMT): DavidQian (Sun, 29 Apr 2018 12:57:00 GMT): ShereenSallam (Sun, 29 Apr 2018 15:05:58 GMT): ShereenSallam (Sun, 29 Apr 2018 15:05:58 GMT): ShereenSallam (Sun, 29 Apr 2018 15:05:58 GMT): VarunLashkari (Sun, 29 Apr 2018 20:15:07 GMT): VarunLashkari (Sun, 29 Apr 2018 20:15:50 GMT): waleed (Sun, 29 Apr 2018 20:40:56 GMT): waleed (Sun, 29 Apr 2018 20:40:56 GMT): waleed (Sun, 29 Apr 2018 20:40:56 GMT): ikinique (Mon, 30 Apr 2018 00:34:28 GMT): JackStrohm (Mon, 30 Apr 2018 01:53:29 GMT): virtualmason (Mon, 30 Apr 2018 02:02:31 GMT): virtualmason (Mon, 30 Apr 2018 02:03:18 GMT): careck (Mon, 30 Apr 2018 03:05:13 GMT): JeffGutierrez (Mon, 30 Apr 2018 03:42:57 GMT): umtyzc (Mon, 30 Apr 2018 05:32:50 GMT): suva (Mon, 30 Apr 2018 06:08:28 GMT): suva (Mon, 30 Apr 2018 06:08:30 GMT): suva (Mon, 30 Apr 2018 06:08:45 GMT): suva (Mon, 30 Apr 2018 06:09:01 GMT): Poneey (Mon, 30 Apr 2018 07:27:33 GMT): sampath06 (Mon, 30 Apr 2018 07:29:40 GMT): sampath06 (Mon, 30 Apr 2018 07:30:21 GMT): eduwardpost (Mon, 30 Apr 2018 08:08:41 GMT): eduwardpost (Mon, 30 Apr 2018 08:08:41 GMT): rthatcher (Mon, 30 Apr 2018 08:27:01 GMT): rthatcher (Mon, 30 Apr 2018 08:39:00 GMT): rthatcher (Mon, 30 Apr 2018 08:40:21 GMT): Kim_Knudsen (Mon, 30 Apr 2018 08:48:23 GMT): absingh0 (Mon, 30 Apr 2018 08:56:45 GMT): mahoney1 (Mon, 30 Apr 2018 09:14:17 GMT): mahoney1 (Mon, 30 Apr 2018 09:14:17 GMT): suva (Mon, 30 Apr 2018 09:17:16 GMT): mahoney1 (Mon, 30 Apr 2018 09:24:40 GMT): suva (Mon, 30 Apr 2018 09:46:39 GMT): eduwardpost (Mon, 30 Apr 2018 10:13:37 GMT): mahoney1 (Mon, 30 Apr 2018 10:27:19 GMT): mahoney1 (Mon, 30 Apr 2018 10:28:39 GMT): mahoney1 (Mon, 30 Apr 2018 10:28:39 GMT): suva (Mon, 30 Apr 2018 10:29:59 GMT): mahoney1 (Mon, 30 Apr 2018 10:30:57 GMT): suva (Mon, 30 Apr 2018 10:34:30 GMT): eduwardpost (Mon, 30 Apr 2018 11:12:00 GMT): Varun2887 (Mon, 30 Apr 2018 11:21:38 GMT): Varun2887 (Mon, 30 Apr 2018 11:21:56 GMT): eduwardpost (Mon, 30 Apr 2018 11:26:14 GMT): Varun2887 (Mon, 30 Apr 2018 11:26:47 GMT): Varun2887 (Mon, 30 Apr 2018 11:27:23 GMT): eduwardpost (Mon, 30 Apr 2018 11:28:01 GMT): simonghrt (Mon, 30 Apr 2018 12:02:50 GMT): pb (Mon, 30 Apr 2018 12:05:33 GMT): pb (Mon, 30 Apr 2018 12:05:33 GMT): abityildiz (Mon, 30 Apr 2018 12:08:04 GMT): lvndry (Mon, 30 Apr 2018 12:12:28 GMT): suva (Mon, 30 Apr 2018 12:35:45 GMT): suva (Mon, 30 Apr 2018 12:36:02 GMT): maddy (Mon, 30 Apr 2018 12:40:17 GMT): suva (Mon, 30 Apr 2018 12:40:55 GMT): rthatcher (Mon, 30 Apr 2018 13:16:29 GMT): rthatcher (Mon, 30 Apr 2018 13:16:29 GMT): Vanitha (Mon, 30 Apr 2018 13:50:18 GMT): rthatcher (Mon, 30 Apr 2018 13:50:45 GMT): rthatcher (Mon, 30 Apr 2018 13:56:57 GMT): mahoney1 (Mon, 30 Apr 2018 13:59:03 GMT): maddy (Mon, 30 Apr 2018 14:35:47 GMT): learner11 (Mon, 30 Apr 2018 15:04:26 GMT): geekoftheweek (Mon, 30 Apr 2018 16:05:58 GMT): geekoftheweek (Mon, 30 Apr 2018 16:08:55 GMT): geekoftheweek (Mon, 30 Apr 2018 16:08:55 GMT): yuki-kon (Mon, 30 Apr 2018 16:20:35 GMT): mahoney1 (Mon, 30 Apr 2018 16:41:25 GMT): mahoney1 (Mon, 30 Apr 2018 16:44:32 GMT): mahoney1 (Mon, 30 Apr 2018 16:44:32 GMT): mahoney1 (Mon, 30 Apr 2018 16:44:32 GMT): geekoftheweek (Mon, 30 Apr 2018 16:52:32 GMT): ronaldlong46 (Mon, 30 Apr 2018 17:12:57 GMT): P.Rao (Mon, 30 Apr 2018 18:39:55 GMT): eguevarar (Mon, 30 Apr 2018 19:05:08 GMT): derekm110 (Mon, 30 Apr 2018 19:34:14 GMT): bfagalde (Mon, 30 Apr 2018 19:45:30 GMT): bfagalde (Mon, 30 Apr 2018 19:47:10 GMT): bfagalde (Mon, 30 Apr 2018 19:47:17 GMT): bamboo (Mon, 30 Apr 2018 20:43:05 GMT): bamboo (Mon, 30 Apr 2018 20:43:34 GMT): bfagalde (Mon, 30 Apr 2018 21:47:01 GMT): Hopes (Mon, 30 Apr 2018 22:45:05 GMT): Hopes (Mon, 30 Apr 2018 22:46:17 GMT): Hopes (Mon, 30 Apr 2018 22:48:33 GMT): zachgoll (Tue, 01 May 2018 01:25:25 GMT): zachgoll (Tue, 01 May 2018 01:50:24 GMT): zachgoll (Tue, 01 May 2018 01:50:24 GMT): zachgoll (Tue, 01 May 2018 01:50:24 GMT): Aswath8687 (Tue, 01 May 2018 03:02:47 GMT): chrism28 (Tue, 01 May 2018 04:37:26 GMT): aneb (Tue, 01 May 2018 04:37:38 GMT): aneb (Tue, 01 May 2018 04:41:17 GMT): JeffGutierrez (Tue, 01 May 2018 05:37:57 GMT): fjblau (Tue, 01 May 2018 07:32:54 GMT): fjblau (Tue, 01 May 2018 07:32:58 GMT): fjblau (Tue, 01 May 2018 07:33:38 GMT): rthatcher (Tue, 01 May 2018 08:20:53 GMT): rthatcher (Tue, 01 May 2018 08:25:03 GMT): fjblau (Tue, 01 May 2018 08:41:00 GMT): rthatcher (Tue, 01 May 2018 08:51:29 GMT): rthatcher (Tue, 01 May 2018 08:51:29 GMT): JeffGutierrez (Tue, 01 May 2018 08:55:36 GMT): JeffGutierrez (Tue, 01 May 2018 09:00:31 GMT): HoneyShah (Tue, 01 May 2018 09:30:12 GMT): HoneyShah (Tue, 01 May 2018 09:30:12 GMT): HoneyShah (Tue, 01 May 2018 09:30:12 GMT): HoneyShah (Tue, 01 May 2018 09:30:12 GMT): HoneyShah (Tue, 01 May 2018 09:30:12 GMT): fjblau (Tue, 01 May 2018 09:37:59 GMT): fjblau (Tue, 01 May 2018 09:54:25 GMT): mcemkilinc (Tue, 01 May 2018 10:16:19 GMT): absingh0 (Tue, 01 May 2018 10:28:42 GMT): absingh0 (Tue, 01 May 2018 10:28:42 GMT): papillon88 (Tue, 01 May 2018 10:39:25 GMT): rthatcher (Tue, 01 May 2018 11:49:36 GMT): rthatcher (Tue, 01 May 2018 11:49:36 GMT): RossGellerman (Tue, 01 May 2018 13:41:15 GMT): mahoney1 (Tue, 01 May 2018 13:42:19 GMT): DmitryPugachev (Tue, 01 May 2018 14:00:41 GMT): Vanitha (Tue, 01 May 2018 14:18:23 GMT): Vanitha (Tue, 01 May 2018 14:18:47 GMT): Vanitha (Tue, 01 May 2018 14:19:10 GMT): rthatcher (Tue, 01 May 2018 14:59:46 GMT): mahoney1 (Tue, 01 May 2018 15:33:53 GMT): mbwhite (Tue, 01 May 2018 15:36:38 GMT): mahoney1 (Tue, 01 May 2018 15:52:40 GMT): carlcraig (Tue, 01 May 2018 16:01:48 GMT): lee-cotton (Tue, 01 May 2018 16:40:46 GMT): ThomasBereczky (Tue, 01 May 2018 17:29:53 GMT): ThomasBereczky (Tue, 01 May 2018 17:29:59 GMT): ThomasBereczky (Tue, 01 May 2018 17:30:12 GMT): ThomasBereczky (Tue, 01 May 2018 17:30:19 GMT): ThomasBereczky (Tue, 01 May 2018 17:30:21 GMT): ThomasBereczky (Tue, 01 May 2018 17:30:31 GMT): ThomasBereczky (Tue, 01 May 2018 17:30:41 GMT): ThomasBereczky (Tue, 01 May 2018 17:31:12 GMT): ThomasBereczky (Tue, 01 May 2018 17:31:37 GMT): ThomasBereczky (Tue, 01 May 2018 17:31:42 GMT): ThomasBereczky (Tue, 01 May 2018 17:31:49 GMT): Bjodn (Tue, 01 May 2018 18:55:28 GMT): carlcraig (Tue, 01 May 2018 18:55:56 GMT): ThomasBereczky (Tue, 01 May 2018 18:56:28 GMT): ThomasBereczky (Tue, 01 May 2018 18:57:11 GMT): carlcraig (Tue, 01 May 2018 19:03:10 GMT): carlcraig (Tue, 01 May 2018 19:03:10 GMT): carlcraig (Tue, 01 May 2018 19:13:15 GMT): carlcraig (Tue, 01 May 2018 19:16:55 GMT): ThomasBereczky (Tue, 01 May 2018 19:17:09 GMT): ThomasBereczky (Tue, 01 May 2018 19:17:14 GMT): carlcraig (Tue, 01 May 2018 19:17:23 GMT): ThomasBereczky (Tue, 01 May 2018 19:17:37 GMT): ThomasBereczky (Tue, 01 May 2018 19:17:41 GMT): carlcraig (Tue, 01 May 2018 19:17:50 GMT): mahoney1 (Tue, 01 May 2018 19:21:17 GMT): brian.leppez (Tue, 01 May 2018 19:53:44 GMT): acbellini (Tue, 01 May 2018 21:05:54 GMT): sjanakir (Tue, 01 May 2018 21:40:08 GMT): Hopes (Tue, 01 May 2018 22:01:44 GMT): Hopes (Tue, 01 May 2018 22:01:44 GMT): acbellini (Tue, 01 May 2018 22:53:24 GMT): JeffGutierrez (Wed, 02 May 2018 01:49:23 GMT): JeffGutierrez (Wed, 02 May 2018 01:49:34 GMT): mgcox (Wed, 02 May 2018 03:41:05 GMT): mgcox (Wed, 02 May 2018 03:42:12 GMT): Varun2887 (Wed, 02 May 2018 04:21:25 GMT): Varun2887 (Wed, 02 May 2018 04:21:30 GMT): absingh0 (Wed, 02 May 2018 04:24:42 GMT): absingh0 (Wed, 02 May 2018 04:24:42 GMT): JonDoe464 (Wed, 02 May 2018 04:27:02 GMT): HoneyShah (Wed, 02 May 2018 06:26:54 GMT): fjblau (Wed, 02 May 2018 07:30:36 GMT): fjblau (Wed, 02 May 2018 07:34:32 GMT): Poneey (Wed, 02 May 2018 07:38:06 GMT): pb (Wed, 02 May 2018 08:03:31 GMT): HoneyShah (Wed, 02 May 2018 08:07:54 GMT): mahoney1 (Wed, 02 May 2018 08:08:39 GMT): mahoney1 (Wed, 02 May 2018 08:13:39 GMT): mahoney1 (Wed, 02 May 2018 08:14:21 GMT): mahoney1 (Wed, 02 May 2018 08:18:40 GMT): mahoney1 (Wed, 02 May 2018 08:23:52 GMT): acbellini (Wed, 02 May 2018 08:24:49 GMT): mahoney1 (Wed, 02 May 2018 08:28:14 GMT): mahoney1 (Wed, 02 May 2018 08:35:27 GMT): JeffGutierrez (Wed, 02 May 2018 08:36:10 GMT): HoneyShah (Wed, 02 May 2018 08:37:17 GMT): JeffGutierrez (Wed, 02 May 2018 08:37:55 GMT): JeffGutierrez (Wed, 02 May 2018 08:43:15 GMT): Poneey (Wed, 02 May 2018 08:43:18 GMT): mahoney1 (Wed, 02 May 2018 08:45:27 GMT): acbellini (Wed, 02 May 2018 08:46:57 GMT): nekyl (Wed, 02 May 2018 08:49:02 GMT): mahoney1 (Wed, 02 May 2018 08:54:23 GMT): acbellini (Wed, 02 May 2018 09:15:24 GMT): mahoney1 (Wed, 02 May 2018 09:18:29 GMT): mahoney1 (Wed, 02 May 2018 09:18:29 GMT): mahoney1 (Wed, 02 May 2018 09:19:15 GMT): mahoney1 (Wed, 02 May 2018 09:34:32 GMT): mahoney1 (Wed, 02 May 2018 09:35:43 GMT): mahoney1 (Wed, 02 May 2018 09:35:43 GMT): Poneey (Wed, 02 May 2018 09:37:57 GMT): dsl (Wed, 02 May 2018 11:16:31 GMT): dsl (Wed, 02 May 2018 11:16:31 GMT): mahoney1 (Wed, 02 May 2018 12:51:24 GMT): mahoney1 (Wed, 02 May 2018 12:51:24 GMT): maddy (Wed, 02 May 2018 13:01:55 GMT): maddy (Wed, 02 May 2018 13:01:55 GMT): rthatcher (Wed, 02 May 2018 13:13:50 GMT): rthatcher (Wed, 02 May 2018 13:13:50 GMT): maddy (Wed, 02 May 2018 13:16:21 GMT): maddy (Wed, 02 May 2018 13:16:21 GMT): mahoney1 (Wed, 02 May 2018 13:25:08 GMT): Varun2887 (Wed, 02 May 2018 13:33:40 GMT): Varun2887 (Wed, 02 May 2018 13:33:44 GMT): maddy (Wed, 02 May 2018 13:35:48 GMT): maddy (Wed, 02 May 2018 13:36:45 GMT): mahoney1 (Wed, 02 May 2018 13:39:19 GMT): maddy (Wed, 02 May 2018 13:40:04 GMT): mhartman1 (Wed, 02 May 2018 13:40:23 GMT): mhartman1 (Wed, 02 May 2018 13:42:57 GMT): mhartman1 (Wed, 02 May 2018 13:47:20 GMT): RASHMI11 (Wed, 02 May 2018 13:55:13 GMT): ThomasBereczky (Wed, 02 May 2018 14:06:41 GMT): ThomasBereczky (Wed, 02 May 2018 14:06:57 GMT): ThomasBereczky (Wed, 02 May 2018 14:07:10 GMT): ThomasBereczky (Wed, 02 May 2018 14:07:17 GMT): ThomasBereczky (Wed, 02 May 2018 14:07:22 GMT): ThomasBereczky (Wed, 02 May 2018 14:08:16 GMT): mahoney1 (Wed, 02 May 2018 14:41:28 GMT): mahoney1 (Wed, 02 May 2018 14:41:28 GMT): mahoney1 (Wed, 02 May 2018 14:46:00 GMT): diego.garzon (Wed, 02 May 2018 15:34:22 GMT): annumberhocker (Wed, 02 May 2018 15:54:34 GMT): mahoney1 (Wed, 02 May 2018 15:59:25 GMT): mahoney1 (Wed, 02 May 2018 15:59:25 GMT): mahoney1 (Wed, 02 May 2018 15:59:25 GMT): mahoney1 (Wed, 02 May 2018 15:59:25 GMT): dara652 (Wed, 02 May 2018 16:02:55 GMT): mahoney1 (Wed, 02 May 2018 16:06:43 GMT): mahoney1 (Wed, 02 May 2018 16:06:43 GMT): dara652 (Wed, 02 May 2018 16:09:36 GMT): diego.garzon (Wed, 02 May 2018 16:19:49 GMT): mahoney1 (Wed, 02 May 2018 16:42:14 GMT): mahoney1 (Wed, 02 May 2018 16:42:14 GMT): mahoney1 (Wed, 02 May 2018 16:42:14 GMT): dara652 (Wed, 02 May 2018 16:45:54 GMT): mahoney1 (Wed, 02 May 2018 16:58:24 GMT): christian3042 (Wed, 02 May 2018 22:07:59 GMT): christian3042 (Wed, 02 May 2018 22:13:13 GMT): Tmeister (Thu, 03 May 2018 00:30:18 GMT): agranoff (Thu, 03 May 2018 00:51:08 GMT): james3443112 (Thu, 03 May 2018 01:36:59 GMT): MarkPrice (Thu, 03 May 2018 03:36:05 GMT): MarkPrice (Thu, 03 May 2018 03:39:15 GMT): mjoarder (Thu, 03 May 2018 03:56:19 GMT): mjoarder (Thu, 03 May 2018 03:57:51 GMT): mjoarder (Thu, 03 May 2018 04:04:47 GMT): Wesley2018 (Thu, 03 May 2018 04:05:40 GMT): Varun2887 (Thu, 03 May 2018 04:39:23 GMT): Varun2887 (Thu, 03 May 2018 04:39:56 GMT): Varun2887 (Thu, 03 May 2018 04:40:28 GMT): phanikumar (Thu, 03 May 2018 05:35:16 GMT): james3443112 (Thu, 03 May 2018 05:46:43 GMT): pb (Thu, 03 May 2018 06:18:11 GMT): pb (Thu, 03 May 2018 06:20:49 GMT): pb (Thu, 03 May 2018 06:20:49 GMT): pb (Thu, 03 May 2018 06:20:49 GMT): MohitYadav2317 (Thu, 03 May 2018 07:12:37 GMT): pb (Thu, 03 May 2018 07:16:39 GMT): acbellini (Thu, 03 May 2018 07:45:10 GMT): ApoorvChandurkar (Thu, 03 May 2018 07:45:34 GMT): rthatcher (Thu, 03 May 2018 08:05:15 GMT): rthatcher (Thu, 03 May 2018 08:08:49 GMT): MohitYadav2317 (Thu, 03 May 2018 08:09:42 GMT): rthatcher (Thu, 03 May 2018 08:10:47 GMT): rthatcher (Thu, 03 May 2018 08:20:21 GMT): rthatcher (Thu, 03 May 2018 08:27:57 GMT): rthatcher (Thu, 03 May 2018 08:32:52 GMT): acbellini (Thu, 03 May 2018 08:37:29 GMT): acbellini (Thu, 03 May 2018 08:43:36 GMT): phanikumar (Thu, 03 May 2018 08:45:21 GMT): pb (Thu, 03 May 2018 08:46:49 GMT): rthatcher (Thu, 03 May 2018 08:48:40 GMT): acbellini (Thu, 03 May 2018 08:50:30 GMT): rthatcher (Thu, 03 May 2018 08:54:23 GMT): MohitYadav2317 (Thu, 03 May 2018 08:58:34 GMT): HoneyShah (Thu, 03 May 2018 08:59:28 GMT): HoneyShah (Thu, 03 May 2018 08:59:28 GMT): rthatcher (Thu, 03 May 2018 09:01:24 GMT): rthatcher (Thu, 03 May 2018 09:04:13 GMT): pb (Thu, 03 May 2018 09:10:46 GMT): rthatcher (Thu, 03 May 2018 09:11:17 GMT): mahoney1 (Thu, 03 May 2018 09:19:58 GMT): mahoney1 (Thu, 03 May 2018 09:19:58 GMT): HoneyShah (Thu, 03 May 2018 09:34:30 GMT): HoneyShah (Thu, 03 May 2018 09:34:30 GMT): HoneyShah (Thu, 03 May 2018 09:34:30 GMT): HoneyShah (Thu, 03 May 2018 09:34:30 GMT): acbellini (Thu, 03 May 2018 09:35:56 GMT): rthatcher (Thu, 03 May 2018 09:40:54 GMT): rthatcher (Thu, 03 May 2018 09:44:24 GMT): pb (Thu, 03 May 2018 09:45:40 GMT): acbellini (Thu, 03 May 2018 09:47:15 GMT): mdfirozansari (Thu, 03 May 2018 09:56:37 GMT): HoneyShah (Thu, 03 May 2018 10:03:01 GMT): mdfirozansari (Thu, 03 May 2018 10:05:49 GMT): mdfirozansari (Thu, 03 May 2018 10:06:00 GMT): RajathNandan (Thu, 03 May 2018 10:06:07 GMT): mahoney1 (Thu, 03 May 2018 10:08:24 GMT): ApoorvChandurkar (Thu, 03 May 2018 10:09:16 GMT): ApoorvChandurkar (Thu, 03 May 2018 10:09:16 GMT): mahoney1 (Thu, 03 May 2018 10:15:05 GMT): mahoney1 (Thu, 03 May 2018 10:15:05 GMT): RajathNandan (Thu, 03 May 2018 10:22:12 GMT): HoneyShah (Thu, 03 May 2018 10:36:12 GMT): HoneyShah (Thu, 03 May 2018 10:36:12 GMT): HoneyShah (Thu, 03 May 2018 10:36:12 GMT): Priyanka14 (Thu, 03 May 2018 10:42:20 GMT): mahoney1 (Thu, 03 May 2018 10:46:15 GMT): asmitapatil (Thu, 03 May 2018 10:47:13 GMT): ApoorvChandurkar (Thu, 03 May 2018 10:48:05 GMT): ApoorvChandurkar (Thu, 03 May 2018 10:49:41 GMT): asmitapatil (Thu, 03 May 2018 10:51:24 GMT): mahoney1 (Thu, 03 May 2018 10:55:42 GMT): ApoorvChandurkar (Thu, 03 May 2018 11:00:43 GMT): joaofguerreiro (Thu, 03 May 2018 11:07:40 GMT): ppanya (Thu, 03 May 2018 11:09:42 GMT): rthatcher (Thu, 03 May 2018 11:13:32 GMT): rthatcher (Thu, 03 May 2018 11:17:27 GMT): ppanya (Thu, 03 May 2018 11:24:56 GMT): rthatcher (Thu, 03 May 2018 11:28:28 GMT): ppanya (Thu, 03 May 2018 11:29:20 GMT): mahoney1 (Thu, 03 May 2018 11:33:48 GMT): mahoney1 (Thu, 03 May 2018 11:36:30 GMT): joaofguerreiro (Thu, 03 May 2018 11:39:06 GMT): ApoorvChandurkar (Thu, 03 May 2018 11:41:55 GMT): phanikumar (Thu, 03 May 2018 11:57:27 GMT): phanikumar (Thu, 03 May 2018 11:57:27 GMT): mahoney1 (Thu, 03 May 2018 12:00:10 GMT): rthatcher (Thu, 03 May 2018 12:00:49 GMT): rthatcher (Thu, 03 May 2018 12:00:49 GMT): rthatcher (Thu, 03 May 2018 12:00:49 GMT): joaofguerreiro (Thu, 03 May 2018 12:01:04 GMT): HoneyShah (Thu, 03 May 2018 12:02:14 GMT): phanikumar (Thu, 03 May 2018 12:06:09 GMT): phanikumar (Thu, 03 May 2018 12:20:11 GMT): florianpautot (Thu, 03 May 2018 12:53:26 GMT): ranjithkumarmv (Thu, 03 May 2018 12:55:48 GMT): florianpautot (Thu, 03 May 2018 12:56:24 GMT): florianpautot (Thu, 03 May 2018 12:57:22 GMT): MohitYadav2317 (Thu, 03 May 2018 13:10:42 GMT): MohitYadav2317 (Thu, 03 May 2018 13:12:14 GMT): bestbeforetoday (Thu, 03 May 2018 13:28:37 GMT): suva (Thu, 03 May 2018 13:40:41 GMT): suva (Thu, 03 May 2018 13:41:01 GMT): suva (Thu, 03 May 2018 13:41:06 GMT): suva (Thu, 03 May 2018 13:41:16 GMT): suva (Thu, 03 May 2018 13:41:53 GMT): florianpautot (Thu, 03 May 2018 13:42:02 GMT): suva (Thu, 03 May 2018 13:44:16 GMT): larsvanhilten (Thu, 03 May 2018 13:46:26 GMT): florianpautot (Thu, 03 May 2018 13:52:47 GMT): AdelinGhanayem (Thu, 03 May 2018 14:01:44 GMT): Hopes (Thu, 03 May 2018 15:25:40 GMT): brian.leppez (Thu, 03 May 2018 15:42:40 GMT): pedromlcosta (Thu, 03 May 2018 16:02:22 GMT): bsteinfeld (Thu, 03 May 2018 16:03:20 GMT): bsteinfeld (Thu, 03 May 2018 16:05:38 GMT): bsteinfeld (Thu, 03 May 2018 16:09:57 GMT): florianpautot (Thu, 03 May 2018 16:22:06 GMT): florianpautot (Thu, 03 May 2018 16:22:24 GMT): brian.leppez (Thu, 03 May 2018 16:22:43 GMT): florianpautot (Thu, 03 May 2018 16:23:05 GMT): rthatcher (Thu, 03 May 2018 16:23:11 GMT): rthatcher (Thu, 03 May 2018 16:30:05 GMT): brian.leppez (Thu, 03 May 2018 16:32:55 GMT): brian.leppez (Thu, 03 May 2018 16:32:55 GMT): rthatcher (Thu, 03 May 2018 16:34:13 GMT): rthatcher (Thu, 03 May 2018 16:36:12 GMT): brian.leppez (Thu, 03 May 2018 16:37:18 GMT): rthatcher (Thu, 03 May 2018 16:41:15 GMT): brian.leppez (Thu, 03 May 2018 16:41:27 GMT): rthatcher (Thu, 03 May 2018 16:44:17 GMT): brian.leppez (Thu, 03 May 2018 16:44:44 GMT): Hopes (Thu, 03 May 2018 16:57:46 GMT): pedromlcosta (Thu, 03 May 2018 17:04:27 GMT): pedromlcosta (Thu, 03 May 2018 17:11:32 GMT): mahoney1 (Thu, 03 May 2018 17:14:18 GMT): mahoney1 (Thu, 03 May 2018 17:14:18 GMT): pb (Thu, 03 May 2018 17:31:53 GMT): ThomasBereczky (Thu, 03 May 2018 18:18:33 GMT): ThomasBereczky (Thu, 03 May 2018 18:19:04 GMT): ThomasBereczky (Thu, 03 May 2018 18:19:47 GMT): ThomasBereczky (Thu, 03 May 2018 18:20:04 GMT): pb (Thu, 03 May 2018 19:00:59 GMT): pb (Thu, 03 May 2018 19:00:59 GMT): pb (Thu, 03 May 2018 19:00:59 GMT): toipacoelho (Thu, 03 May 2018 19:02:39 GMT): RajathNandan (Thu, 03 May 2018 19:23:45 GMT): RajathNandan (Thu, 03 May 2018 19:24:08 GMT): bestbeforetoday (Thu, 03 May 2018 19:32:21 GMT): diego.garzon (Thu, 03 May 2018 21:13:49 GMT): varinder (Thu, 03 May 2018 21:31:05 GMT): varinder (Thu, 03 May 2018 21:31:51 GMT): varinder (Thu, 03 May 2018 21:31:58 GMT): varinder (Thu, 03 May 2018 21:32:40 GMT): DennisM330 (Thu, 03 May 2018 21:36:57 GMT): DennisM330 (Thu, 03 May 2018 21:42:02 GMT): davidkel (Thu, 03 May 2018 21:49:19 GMT): DennisM330 (Thu, 03 May 2018 21:50:08 GMT): davidkel (Thu, 03 May 2018 21:51:06 GMT): DennisM330 (Thu, 03 May 2018 21:52:39 GMT): davidkel (Thu, 03 May 2018 21:54:33 GMT): DennisM330 (Thu, 03 May 2018 21:55:56 GMT): JackStrohm (Thu, 03 May 2018 22:11:29 GMT): varinder (Thu, 03 May 2018 22:21:23 GMT): zachgoll (Thu, 03 May 2018 22:32:08 GMT): RajathNandan (Thu, 03 May 2018 22:56:52 GMT): RajathNandan (Thu, 03 May 2018 22:57:45 GMT): RajathNandan (Thu, 03 May 2018 22:57:56 GMT): varinder (Thu, 03 May 2018 23:38:00 GMT): DennisM330 (Fri, 04 May 2018 01:09:37 GMT): zachgoll (Fri, 04 May 2018 01:32:26 GMT): james3443112 (Fri, 04 May 2018 02:19:06 GMT): bamboo (Fri, 04 May 2018 02:48:59 GMT): MohitYadav2317 (Fri, 04 May 2018 04:39:39 GMT): JeffGutierrez (Fri, 04 May 2018 04:59:38 GMT): JeffGutierrez (Fri, 04 May 2018 05:00:56 GMT): sgaddam (Fri, 04 May 2018 05:28:56 GMT): sgaddam (Fri, 04 May 2018 05:29:03 GMT): pb (Fri, 04 May 2018 05:41:36 GMT): sgaddam (Fri, 04 May 2018 06:21:15 GMT): suva (Fri, 04 May 2018 06:30:08 GMT): suva (Fri, 04 May 2018 06:30:10 GMT): akhemraj (Fri, 04 May 2018 06:30:35 GMT): suva (Fri, 04 May 2018 06:30:36 GMT): akhemraj (Fri, 04 May 2018 06:31:17 GMT): suva (Fri, 04 May 2018 06:31:35 GMT): suva (Fri, 04 May 2018 06:31:47 GMT): suva (Fri, 04 May 2018 06:32:54 GMT): bestbeforetoday (Fri, 04 May 2018 06:43:16 GMT): bestbeforetoday (Fri, 04 May 2018 06:47:45 GMT): Pranoti (Fri, 04 May 2018 06:51:18 GMT): Pranoti (Fri, 04 May 2018 06:51:18 GMT): mahoney1 (Fri, 04 May 2018 07:36:15 GMT): mahoney1 (Fri, 04 May 2018 07:36:15 GMT): mahoney1 (Fri, 04 May 2018 07:40:21 GMT): mahoney1 (Fri, 04 May 2018 07:43:21 GMT): Poneey (Fri, 04 May 2018 07:43:32 GMT): mahoney1 (Fri, 04 May 2018 07:45:09 GMT): mahoney1 (Fri, 04 May 2018 07:49:34 GMT): mahoney1 (Fri, 04 May 2018 07:54:38 GMT): mahoney1 (Fri, 04 May 2018 07:56:44 GMT): Poneey (Fri, 04 May 2018 07:56:46 GMT): mahoney1 (Fri, 04 May 2018 08:01:31 GMT): mahoney1 (Fri, 04 May 2018 08:01:31 GMT): mahoney1 (Fri, 04 May 2018 08:06:07 GMT): Poneey (Fri, 04 May 2018 08:06:49 GMT): mahoney1 (Fri, 04 May 2018 08:07:52 GMT): mahoney1 (Fri, 04 May 2018 08:08:42 GMT): mahoney1 (Fri, 04 May 2018 08:08:42 GMT): suva (Fri, 04 May 2018 08:11:08 GMT): JackStrohm (Fri, 04 May 2018 08:11:40 GMT): mahoney1 (Fri, 04 May 2018 08:13:00 GMT): suva (Fri, 04 May 2018 08:15:16 GMT): mahoney1 (Fri, 04 May 2018 08:18:33 GMT): mahoney1 (Fri, 04 May 2018 08:23:20 GMT): mahoney1 (Fri, 04 May 2018 08:25:34 GMT): ThomasBereczky (Fri, 04 May 2018 08:26:41 GMT): ThomasBereczky (Fri, 04 May 2018 08:27:00 GMT): ThomasBereczky (Fri, 04 May 2018 08:27:32 GMT): mahoney1 (Fri, 04 May 2018 08:28:46 GMT): pb (Fri, 04 May 2018 08:35:41 GMT): Poneey (Fri, 04 May 2018 08:36:37 GMT): shalinigpt (Fri, 04 May 2018 08:37:02 GMT): joaofguerreiro (Fri, 04 May 2018 08:38:19 GMT): joaofguerreiro (Fri, 04 May 2018 08:39:05 GMT): mahoney1 (Fri, 04 May 2018 08:43:12 GMT): shalinigpt (Fri, 04 May 2018 08:44:36 GMT): Poneey (Fri, 04 May 2018 08:50:31 GMT): Poneey (Fri, 04 May 2018 08:58:12 GMT): Poneey (Fri, 04 May 2018 08:59:00 GMT): Varun2887 (Fri, 04 May 2018 09:00:06 GMT): Varun2887 (Fri, 04 May 2018 09:00:20 GMT): Varun2887 (Fri, 04 May 2018 09:00:25 GMT): Pranoti (Fri, 04 May 2018 09:08:33 GMT): DeepakSahu (Fri, 04 May 2018 09:28:36 GMT): mahoney1 (Fri, 04 May 2018 09:32:51 GMT): pb (Fri, 04 May 2018 09:39:25 GMT): pb (Fri, 04 May 2018 09:39:25 GMT): mahoney1 (Fri, 04 May 2018 09:45:02 GMT): sgaddam (Fri, 04 May 2018 09:54:05 GMT): mahoney1 (Fri, 04 May 2018 09:54:12 GMT): mahoney1 (Fri, 04 May 2018 09:57:04 GMT): MohitYadav2317 (Fri, 04 May 2018 10:01:55 GMT): mahoney1 (Fri, 04 May 2018 10:11:25 GMT): mahoney1 (Fri, 04 May 2018 10:17:53 GMT): sgaddam (Fri, 04 May 2018 10:29:10 GMT): sgaddam (Fri, 04 May 2018 10:33:07 GMT): mahoney1 (Fri, 04 May 2018 10:40:35 GMT): mahoney1 (Fri, 04 May 2018 10:40:35 GMT): AkshayJindal (Fri, 04 May 2018 10:40:47 GMT): AkshayJindal (Fri, 04 May 2018 10:40:47 GMT): AkshayJindal (Fri, 04 May 2018 10:40:47 GMT): Pranoti (Fri, 04 May 2018 10:41:47 GMT): Pranoti (Fri, 04 May 2018 10:41:47 GMT): biksen (Fri, 04 May 2018 10:45:05 GMT): pedromlcosta (Fri, 04 May 2018 10:57:53 GMT): mahoney1 (Fri, 04 May 2018 10:58:35 GMT): Varun2887 (Fri, 04 May 2018 10:59:22 GMT): Varun2887 (Fri, 04 May 2018 10:59:39 GMT): mahoney1 (Fri, 04 May 2018 11:03:02 GMT): AkshayJindal (Fri, 04 May 2018 11:04:57 GMT): mahoney1 (Fri, 04 May 2018 11:05:02 GMT): Varun2887 (Fri, 04 May 2018 11:05:09 GMT): mahoney1 (Fri, 04 May 2018 11:26:46 GMT): mahoney1 (Fri, 04 May 2018 11:26:46 GMT): AkshayJindal (Fri, 04 May 2018 11:33:42 GMT): pb (Fri, 04 May 2018 11:36:50 GMT): pb (Fri, 04 May 2018 11:36:50 GMT): pb (Fri, 04 May 2018 11:36:50 GMT): pb (Fri, 04 May 2018 11:36:50 GMT): Hopes (Fri, 04 May 2018 11:50:24 GMT): Hopes (Fri, 04 May 2018 11:50:24 GMT): suva (Fri, 04 May 2018 12:22:23 GMT): suva (Fri, 04 May 2018 12:22:32 GMT): suva (Fri, 04 May 2018 12:23:21 GMT): suva (Fri, 04 May 2018 12:23:24 GMT): suva (Fri, 04 May 2018 12:30:51 GMT): marckaraujo (Fri, 04 May 2018 12:33:18 GMT): mahoney1 (Fri, 04 May 2018 12:48:14 GMT): mahoney1 (Fri, 04 May 2018 12:48:14 GMT): rthatcher (Fri, 04 May 2018 12:48:30 GMT): rthatcher (Fri, 04 May 2018 13:00:31 GMT): Sai0013 (Fri, 04 May 2018 13:35:30 GMT): F.A.Abadi (Fri, 04 May 2018 13:48:12 GMT): maverick193 (Fri, 04 May 2018 13:49:31 GMT): F.A.Abadi (Fri, 04 May 2018 13:50:51 GMT): F.A.Abadi (Fri, 04 May 2018 13:57:13 GMT): vancemorris (Fri, 04 May 2018 14:13:26 GMT): zachgoll (Fri, 04 May 2018 14:33:54 GMT): zachgoll (Fri, 04 May 2018 14:35:09 GMT): MKhabrat (Fri, 04 May 2018 14:46:15 GMT): Hopes (Fri, 04 May 2018 14:47:50 GMT): Hopes (Fri, 04 May 2018 14:50:57 GMT): Hopes (Fri, 04 May 2018 14:52:08 GMT): bsteinfeld (Fri, 04 May 2018 15:02:02 GMT): rthatcher (Fri, 04 May 2018 15:17:42 GMT): eguevarar (Fri, 04 May 2018 15:29:28 GMT): eguevarar (Fri, 04 May 2018 15:29:28 GMT): rthatcher (Fri, 04 May 2018 15:38:02 GMT): Hopes (Fri, 04 May 2018 15:50:21 GMT): rthatcher (Fri, 04 May 2018 15:51:19 GMT): rthatcher (Fri, 04 May 2018 15:51:19 GMT): jfodale (Fri, 04 May 2018 15:57:45 GMT): rthatcher (Fri, 04 May 2018 16:20:01 GMT): MKhabrat (Fri, 04 May 2018 16:39:32 GMT): shabscan (Fri, 04 May 2018 16:59:18 GMT): rthatcher (Fri, 04 May 2018 17:05:41 GMT): MohitYadav2317 (Fri, 04 May 2018 17:12:52 GMT): MohitYadav2317 (Fri, 04 May 2018 17:13:14 GMT): omniscient (Fri, 04 May 2018 17:13:24 GMT): rthatcher (Fri, 04 May 2018 17:13:28 GMT): jfodale (Fri, 04 May 2018 17:13:52 GMT): rthatcher (Fri, 04 May 2018 17:17:41 GMT): shabscan (Fri, 04 May 2018 17:21:13 GMT): shabscan (Fri, 04 May 2018 17:34:07 GMT): davidkel (Fri, 04 May 2018 18:06:18 GMT): davidkel (Fri, 04 May 2018 18:06:18 GMT): eguevarar (Fri, 04 May 2018 18:52:30 GMT): eguevarar (Fri, 04 May 2018 18:58:57 GMT): eguevarar (Fri, 04 May 2018 18:58:57 GMT): youssefg (Fri, 04 May 2018 19:18:20 GMT): youssefg (Fri, 04 May 2018 19:27:50 GMT): youssefg (Fri, 04 May 2018 19:27:51 GMT): eguevarar (Fri, 04 May 2018 19:29:49 GMT): youssefg (Fri, 04 May 2018 19:30:10 GMT): eguevarar (Fri, 04 May 2018 19:37:37 GMT): eguevarar (Fri, 04 May 2018 19:37:47 GMT): eguevarar (Fri, 04 May 2018 19:38:23 GMT): youssefg (Fri, 04 May 2018 19:39:38 GMT): eguevarar (Fri, 04 May 2018 19:39:46 GMT): youssefg (Fri, 04 May 2018 19:42:07 GMT): eguevarar (Fri, 04 May 2018 19:42:42 GMT): youssefg (Fri, 04 May 2018 19:43:25 GMT): youssefg (Fri, 04 May 2018 19:43:43 GMT): eguevarar (Fri, 04 May 2018 19:52:26 GMT): eguevarar (Fri, 04 May 2018 19:52:51 GMT): eguevarar (Fri, 04 May 2018 19:52:55 GMT): youssefg (Fri, 04 May 2018 19:58:09 GMT): youssefg (Fri, 04 May 2018 19:58:29 GMT): youssefg (Fri, 04 May 2018 19:58:41 GMT): youssefg (Fri, 04 May 2018 19:59:13 GMT): shabscan (Fri, 04 May 2018 20:22:11 GMT): r808silva (Fri, 04 May 2018 21:03:11 GMT): toipacoelho (Fri, 04 May 2018 22:13:51 GMT): toipacoelho (Fri, 04 May 2018 22:13:51 GMT): toipacoelho (Fri, 04 May 2018 22:13:51 GMT): toipacoelho (Fri, 04 May 2018 22:13:51 GMT): toipacoelho (Fri, 04 May 2018 22:13:51 GMT): toipacoelho (Fri, 04 May 2018 22:13:51 GMT): toipacoelho (Fri, 04 May 2018 22:14:30 GMT): robertbrown (Fri, 04 May 2018 22:43:24 GMT): zachgoll (Fri, 04 May 2018 23:06:40 GMT): jfodale (Fri, 04 May 2018 23:08:58 GMT): zachgoll (Fri, 04 May 2018 23:10:49 GMT): toipacoelho (Fri, 04 May 2018 23:17:37 GMT): zachgoll (Fri, 04 May 2018 23:22:15 GMT): toipacoelho (Fri, 04 May 2018 23:26:19 GMT): zachgoll (Fri, 04 May 2018 23:27:53 GMT): Hopes (Fri, 04 May 2018 23:56:19 GMT): Hopes (Sat, 05 May 2018 01:08:19 GMT): npc0405 (Sat, 05 May 2018 06:55:36 GMT): npc0405 (Sat, 05 May 2018 06:56:02 GMT): ronaldlong46 (Sat, 05 May 2018 07:19:59 GMT): IceFox (Sat, 05 May 2018 10:54:15 GMT): IceFox (Sat, 05 May 2018 10:54:17 GMT): IceFox (Sat, 05 May 2018 10:55:19 GMT): IceFox (Sat, 05 May 2018 10:56:18 GMT): tungdt_socoboy (Sat, 05 May 2018 11:40:50 GMT): UmeshRajani (Sat, 05 May 2018 13:09:26 GMT): UmeshRajani (Sat, 05 May 2018 13:11:20 GMT): UmeshRajani (Sat, 05 May 2018 13:12:37 GMT): UmeshRajani (Sat, 05 May 2018 13:13:22 GMT): UmeshRajani (Sat, 05 May 2018 13:13:42 GMT): IceFox (Sat, 05 May 2018 13:24:19 GMT): UmeshRajani (Sat, 05 May 2018 13:28:59 GMT): IceFox (Sat, 05 May 2018 13:51:55 GMT): IceFox (Sat, 05 May 2018 13:52:16 GMT): IceFox (Sat, 05 May 2018 13:52:35 GMT): UmeshRajani (Sat, 05 May 2018 13:54:36 GMT): jfodale (Sat, 05 May 2018 14:10:03 GMT): IceFox (Sat, 05 May 2018 14:40:13 GMT): IceFox (Sat, 05 May 2018 14:40:23 GMT): IceFox (Sat, 05 May 2018 14:47:00 GMT): IceFox (Sat, 05 May 2018 14:47:56 GMT): IceFox (Sat, 05 May 2018 14:48:15 GMT): cloudtester (Sat, 05 May 2018 15:17:56 GMT): cloudtester (Sat, 05 May 2018 15:18:09 GMT): cloudtester (Sat, 05 May 2018 15:18:23 GMT): cloudtester (Sat, 05 May 2018 15:18:34 GMT): IceFox (Sat, 05 May 2018 15:56:35 GMT): IceFox (Sat, 05 May 2018 15:57:02 GMT): cloudtester (Sat, 05 May 2018 16:15:43 GMT): cloudtester (Sat, 05 May 2018 16:15:43 GMT): sumeetbatheja (Sat, 05 May 2018 17:13:41 GMT): sumeetbatheja (Sat, 05 May 2018 17:15:19 GMT): zachgoll (Sat, 05 May 2018 17:46:32 GMT): cloudtester (Sat, 05 May 2018 17:48:16 GMT): zachgoll (Sat, 05 May 2018 17:49:10 GMT): cloudtester (Sat, 05 May 2018 17:50:13 GMT): JayPandya (Sat, 05 May 2018 17:53:47 GMT): JayPandya (Sat, 05 May 2018 17:53:47 GMT): JayPandya (Sat, 05 May 2018 17:54:03 GMT): zachgoll (Sat, 05 May 2018 17:58:00 GMT): cloudtester (Sat, 05 May 2018 18:02:14 GMT): rujool (Sat, 05 May 2018 18:06:41 GMT): rujool (Sat, 05 May 2018 18:07:38 GMT): rujool (Sat, 05 May 2018 18:19:36 GMT): rselvakct (Sat, 05 May 2018 18:36:08 GMT): zachgoll (Sat, 05 May 2018 21:26:46 GMT): zachgoll (Sat, 05 May 2018 21:26:46 GMT): mgcox (Sat, 05 May 2018 21:45:32 GMT): mgcox (Sat, 05 May 2018 21:45:44 GMT): zachgoll (Sat, 05 May 2018 21:52:26 GMT): mgcox (Sat, 05 May 2018 21:54:16 GMT): mgcox (Sat, 05 May 2018 21:56:36 GMT): mgcox (Sat, 05 May 2018 21:56:44 GMT): aakzubaidi (Sat, 05 May 2018 23:48:31 GMT): bh4rtp (Sun, 06 May 2018 03:25:27 GMT): bh4rtp (Sun, 06 May 2018 03:26:41 GMT): bh4rtp (Sun, 06 May 2018 03:26:41 GMT): voutasaurus (Sun, 06 May 2018 04:17:13 GMT): voutasaurus (Sun, 06 May 2018 04:19:56 GMT): voutasaurus (Sun, 06 May 2018 04:23:15 GMT): voutasaurus (Sun, 06 May 2018 04:25:23 GMT): voutasaurus (Sun, 06 May 2018 04:26:16 GMT): voutasaurus (Sun, 06 May 2018 04:26:38 GMT): voutasaurus (Sun, 06 May 2018 04:29:10 GMT): voutasaurus (Sun, 06 May 2018 06:58:05 GMT): voutasaurus (Sun, 06 May 2018 06:59:29 GMT): ranjithkumarmv (Sun, 06 May 2018 07:03:29 GMT): sumeetbatheja1 (Sun, 06 May 2018 07:44:31 GMT): IceFox (Sun, 06 May 2018 11:10:35 GMT): IceFox (Sun, 06 May 2018 11:10:55 GMT): IceFox (Sun, 06 May 2018 11:10:56 GMT): IceFox (Sun, 06 May 2018 11:11:26 GMT): IceFox (Sun, 06 May 2018 11:11:38 GMT): IceFox (Sun, 06 May 2018 11:11:52 GMT): TuckerSiegel (Sun, 06 May 2018 11:36:34 GMT): aakzubaidi (Sun, 06 May 2018 12:09:58 GMT): hardik047 (Sun, 06 May 2018 12:34:03 GMT): hardik047 (Sun, 06 May 2018 12:35:26 GMT): IceFox (Sun, 06 May 2018 13:19:45 GMT): zachgoll (Sun, 06 May 2018 14:48:08 GMT): zachgoll (Sun, 06 May 2018 14:49:23 GMT): TuckerSiegel (Sun, 06 May 2018 14:51:18 GMT): zachgoll (Sun, 06 May 2018 14:53:14 GMT): TuckerSiegel (Sun, 06 May 2018 14:54:00 GMT): zachgoll (Sun, 06 May 2018 14:54:41 GMT): zachgoll (Sun, 06 May 2018 14:54:41 GMT): TuckerSiegel (Sun, 06 May 2018 14:56:26 GMT): TuckerSiegel (Sun, 06 May 2018 14:56:46 GMT): zachgoll (Sun, 06 May 2018 14:57:47 GMT): TuckerSiegel (Sun, 06 May 2018 14:58:23 GMT): TuckerSiegel (Sun, 06 May 2018 15:15:36 GMT): zachgoll (Sun, 06 May 2018 15:20:05 GMT): kletkeman (Sun, 06 May 2018 15:20:07 GMT): TuckerSiegel (Sun, 06 May 2018 15:40:19 GMT): TuckerSiegel (Sun, 06 May 2018 15:40:53 GMT): hardik047 (Sun, 06 May 2018 15:47:57 GMT): jfodale (Mon, 07 May 2018 01:23:23 GMT): jfodale (Mon, 07 May 2018 02:21:17 GMT): jfodale (Mon, 07 May 2018 03:16:37 GMT): prayagk (Mon, 07 May 2018 03:39:26 GMT): prayagk (Mon, 07 May 2018 03:40:24 GMT): prayagk (Mon, 07 May 2018 03:40:37 GMT): ReginaMehta (Mon, 07 May 2018 04:45:01 GMT): MartinKrmer (Mon, 07 May 2018 05:32:10 GMT): d8bhatta (Mon, 07 May 2018 06:00:36 GMT): kyro 2 (Mon, 07 May 2018 07:09:14 GMT): kyro 2 (Mon, 07 May 2018 07:11:14 GMT): uber.twin (Mon, 07 May 2018 08:29:59 GMT): bh4rtp (Mon, 07 May 2018 08:41:45 GMT): d8bhatta (Mon, 07 May 2018 08:43:56 GMT): d8bhatta (Mon, 07 May 2018 08:44:31 GMT): d8bhatta (Mon, 07 May 2018 08:44:52 GMT): bh4rtp (Mon, 07 May 2018 08:55:28 GMT): bh4rtp (Mon, 07 May 2018 08:55:28 GMT): bh4rtp (Mon, 07 May 2018 08:55:28 GMT): d8bhatta (Mon, 07 May 2018 08:56:36 GMT): bh4rtp (Mon, 07 May 2018 08:57:07 GMT): d8bhatta (Mon, 07 May 2018 08:57:44 GMT): bh4rtp (Mon, 07 May 2018 08:58:42 GMT): d8bhatta (Mon, 07 May 2018 09:00:26 GMT): d8bhatta (Mon, 07 May 2018 09:01:54 GMT): d8bhatta (Mon, 07 May 2018 09:02:14 GMT): Turikalen (Mon, 07 May 2018 09:20:08 GMT): PrafullTilwankar (Mon, 07 May 2018 09:53:45 GMT): bh4rtp (Mon, 07 May 2018 09:57:04 GMT): suva (Mon, 07 May 2018 10:15:56 GMT): suva (Mon, 07 May 2018 10:16:07 GMT): suva (Mon, 07 May 2018 10:16:26 GMT): suva (Mon, 07 May 2018 10:16:31 GMT): Pranoti (Mon, 07 May 2018 10:55:15 GMT): MKhabrat (Mon, 07 May 2018 11:11:45 GMT): VitalikOstapenko (Mon, 07 May 2018 11:25:39 GMT): MohitYadav2317 (Mon, 07 May 2018 12:22:06 GMT): lipoplus (Mon, 07 May 2018 12:27:45 GMT): lipoplus (Mon, 07 May 2018 12:31:41 GMT): MohitYadav2317 (Mon, 07 May 2018 12:51:14 GMT): javrevasandeep (Mon, 07 May 2018 13:08:13 GMT): swati25 (Mon, 07 May 2018 13:18:42 GMT): DennisM330 (Mon, 07 May 2018 13:54:02 GMT): DennisM330 (Mon, 07 May 2018 13:54:21 GMT): DennisM330 (Mon, 07 May 2018 13:55:01 GMT): jfodale (Mon, 07 May 2018 15:27:44 GMT): uber.twin (Mon, 07 May 2018 15:33:49 GMT): Hefziben (Mon, 07 May 2018 16:19:27 GMT): nekyl (Mon, 07 May 2018 17:25:48 GMT): Hefziben (Mon, 07 May 2018 17:36:27 GMT): javrevasandeep (Mon, 07 May 2018 19:03:06 GMT): bamboo (Mon, 07 May 2018 19:49:53 GMT): bamboo (Mon, 07 May 2018 19:49:53 GMT): bamboo (Mon, 07 May 2018 19:51:21 GMT): eguevarar (Mon, 07 May 2018 20:36:40 GMT): mdgrover (Mon, 07 May 2018 20:57:20 GMT): phanikumar (Mon, 07 May 2018 22:02:04 GMT): bamboo (Mon, 07 May 2018 23:07:07 GMT): NozrulHoque (Tue, 08 May 2018 01:27:25 GMT): NozrulHoque (Tue, 08 May 2018 01:28:05 GMT): tbrooke (Tue, 08 May 2018 01:52:33 GMT): JackMalinowski (Tue, 08 May 2018 02:19:48 GMT): bh4rtp (Tue, 08 May 2018 02:32:09 GMT): satyendra (Tue, 08 May 2018 05:59:08 GMT): MartinKrmer (Tue, 08 May 2018 06:38:47 GMT): aneb (Tue, 08 May 2018 06:39:21 GMT): sghosh2 (Tue, 08 May 2018 07:24:28 GMT): sghosh2 (Tue, 08 May 2018 07:25:49 GMT): FlorentinoSainz (Tue, 08 May 2018 07:35:49 GMT): FlorentinoSainz (Tue, 08 May 2018 07:35:53 GMT): FlorentinoSainz (Tue, 08 May 2018 07:36:05 GMT): rthatcher (Tue, 08 May 2018 08:24:01 GMT): mengluo668 (Tue, 08 May 2018 08:33:05 GMT): rthatcher (Tue, 08 May 2018 08:33:08 GMT): FlorentinoSainz (Tue, 08 May 2018 08:33:41 GMT): rthatcher (Tue, 08 May 2018 08:34:48 GMT): rthatcher (Tue, 08 May 2018 08:35:52 GMT): bh4rtp (Tue, 08 May 2018 08:39:54 GMT): lipoplus (Tue, 08 May 2018 08:57:59 GMT): rthatcher (Tue, 08 May 2018 09:05:01 GMT): rthatcher (Tue, 08 May 2018 09:06:46 GMT): bh4rtp (Tue, 08 May 2018 09:07:38 GMT): mahoney1 (Tue, 08 May 2018 09:18:50 GMT): lakshminarayana (Tue, 08 May 2018 09:32:41 GMT): FlorentinoSainz (Tue, 08 May 2018 09:33:13 GMT): lakshminarayana (Tue, 08 May 2018 09:33:28 GMT): Varun2887 (Tue, 08 May 2018 09:35:39 GMT): lipoplus (Tue, 08 May 2018 09:41:26 GMT): lipoplus (Tue, 08 May 2018 09:41:26 GMT): lipoplus (Tue, 08 May 2018 09:41:33 GMT): lipoplus (Tue, 08 May 2018 09:41:33 GMT): lipoplus (Tue, 08 May 2018 09:43:00 GMT): lipoplus (Tue, 08 May 2018 09:43:00 GMT): lipoplus (Tue, 08 May 2018 09:43:11 GMT): lipoplus (Tue, 08 May 2018 09:43:11 GMT): JayPandya (Tue, 08 May 2018 09:54:50 GMT): bh4rtp (Tue, 08 May 2018 09:56:44 GMT): bh4rtp (Tue, 08 May 2018 09:56:44 GMT): bh4rtp (Tue, 08 May 2018 09:56:44 GMT): ApoorvChandurkar (Tue, 08 May 2018 09:57:19 GMT): lipoplus (Tue, 08 May 2018 09:59:50 GMT): mahoney1 (Tue, 08 May 2018 10:01:53 GMT): ApoorvChandurkar (Tue, 08 May 2018 10:01:55 GMT): mahoney1 (Tue, 08 May 2018 10:03:45 GMT): ApoorvChandurkar (Tue, 08 May 2018 10:03:46 GMT): lipoplus (Tue, 08 May 2018 10:07:50 GMT): HoneyShah (Tue, 08 May 2018 10:09:41 GMT): HoneyShah (Tue, 08 May 2018 10:09:41 GMT): HoneyShah (Tue, 08 May 2018 10:09:41 GMT): HoneyShah (Tue, 08 May 2018 10:09:41 GMT): FlorentinoSainz (Tue, 08 May 2018 10:12:13 GMT): Varun2887 (Tue, 08 May 2018 10:14:25 GMT): Varun2887 (Tue, 08 May 2018 10:14:37 GMT): Varun2887 (Tue, 08 May 2018 10:14:44 GMT): AkshayJindal (Tue, 08 May 2018 10:18:48 GMT): AkshayJindal (Tue, 08 May 2018 10:18:48 GMT): AkshayJindal (Tue, 08 May 2018 10:18:48 GMT): maddy (Tue, 08 May 2018 10:20:00 GMT): mahoney1 (Tue, 08 May 2018 10:23:32 GMT): mahoney1 (Tue, 08 May 2018 10:30:16 GMT): mahoney1 (Tue, 08 May 2018 10:30:16 GMT): mahoney1 (Tue, 08 May 2018 10:46:02 GMT): mahoney1 (Tue, 08 May 2018 10:46:02 GMT): ApoorvChandurkar (Tue, 08 May 2018 11:36:59 GMT): Starseven (Tue, 08 May 2018 11:50:37 GMT): mahoney1 (Tue, 08 May 2018 12:08:23 GMT): FlorentinoSainz (Tue, 08 May 2018 12:27:32 GMT): Varun2887 (Tue, 08 May 2018 12:32:01 GMT): Varun2887 (Tue, 08 May 2018 12:32:08 GMT): Varun2887 (Tue, 08 May 2018 12:32:08 GMT): Varun2887 (Tue, 08 May 2018 12:32:29 GMT): FlorentinoSainz (Tue, 08 May 2018 12:34:05 GMT): FlorentinoSainz (Tue, 08 May 2018 12:34:20 GMT): ApoorvChandurkar (Tue, 08 May 2018 12:46:23 GMT): mahoney1 (Tue, 08 May 2018 12:58:36 GMT): mahoney1 (Tue, 08 May 2018 12:58:36 GMT): mahoney1 (Tue, 08 May 2018 12:58:36 GMT): mahoney1 (Tue, 08 May 2018 12:59:07 GMT): ApoorvChandurkar (Tue, 08 May 2018 13:05:40 GMT): Priyanka14 (Tue, 08 May 2018 13:07:29 GMT): mahoney1 (Tue, 08 May 2018 13:27:36 GMT): itskhushal (Tue, 08 May 2018 14:04:43 GMT): itskhushal (Tue, 08 May 2018 14:04:43 GMT): FlorentinoSainz (Tue, 08 May 2018 14:05:51 GMT): itskhushal (Tue, 08 May 2018 14:06:08 GMT): FlorentinoSainz (Tue, 08 May 2018 14:06:25 GMT): FlorentinoSainz (Tue, 08 May 2018 14:06:26 GMT): FlorentinoSainz (Tue, 08 May 2018 14:06:30 GMT): itskhushal (Tue, 08 May 2018 14:06:40 GMT): itskhushal (Tue, 08 May 2018 14:06:40 GMT): FlorentinoSainz (Tue, 08 May 2018 14:07:09 GMT): itskhushal (Tue, 08 May 2018 14:07:31 GMT): FlorentinoSainz (Tue, 08 May 2018 14:07:57 GMT): FlorentinoSainz (Tue, 08 May 2018 14:08:04 GMT): itskhushal (Tue, 08 May 2018 14:08:04 GMT): FlorentinoSainz (Tue, 08 May 2018 14:08:04 GMT): FlorentinoSainz (Tue, 08 May 2018 14:08:30 GMT): jiteshukani2006 (Tue, 08 May 2018 14:08:38 GMT): jiteshukani2006 (Tue, 08 May 2018 14:08:49 GMT): FlorentinoSainz (Tue, 08 May 2018 14:08:59 GMT): jiteshukani2006 (Tue, 08 May 2018 14:09:06 GMT): itskhushal (Tue, 08 May 2018 14:09:24 GMT): itskhushal (Tue, 08 May 2018 14:09:44 GMT): itskhushal (Tue, 08 May 2018 14:09:44 GMT): FlorentinoSainz (Tue, 08 May 2018 14:10:02 GMT): itskhushal (Tue, 08 May 2018 14:10:53 GMT): FlorentinoSainz (Tue, 08 May 2018 14:10:54 GMT): FlorentinoSainz (Tue, 08 May 2018 14:10:59 GMT): FlorentinoSainz (Tue, 08 May 2018 14:11:06 GMT): FlorentinoSainz (Tue, 08 May 2018 14:11:35 GMT): itskhushal (Tue, 08 May 2018 14:11:38 GMT): FlorentinoSainz (Tue, 08 May 2018 14:11:48 GMT): itskhushal (Tue, 08 May 2018 14:11:51 GMT): FlorentinoSainz (Tue, 08 May 2018 14:12:04 GMT): itskhushal (Tue, 08 May 2018 14:12:09 GMT): FlorentinoSainz (Tue, 08 May 2018 14:12:21 GMT): FlorentinoSainz (Tue, 08 May 2018 14:12:25 GMT): itskhushal (Tue, 08 May 2018 14:12:30 GMT): FlorentinoSainz (Tue, 08 May 2018 14:12:32 GMT): itskhushal (Tue, 08 May 2018 14:13:00 GMT): FlorentinoSainz (Tue, 08 May 2018 14:13:02 GMT): itskhushal (Tue, 08 May 2018 14:13:17 GMT): FlorentinoSainz (Tue, 08 May 2018 14:13:35 GMT): FlorentinoSainz (Tue, 08 May 2018 14:13:40 GMT): FlorentinoSainz (Tue, 08 May 2018 14:13:57 GMT): itskhushal (Tue, 08 May 2018 14:14:05 GMT): FlorentinoSainz (Tue, 08 May 2018 14:14:08 GMT): FlorentinoSainz (Tue, 08 May 2018 14:14:37 GMT): FlorentinoSainz (Tue, 08 May 2018 14:14:54 GMT): itskhushal (Tue, 08 May 2018 14:15:09 GMT): itskhushal (Tue, 08 May 2018 14:15:09 GMT): itskhushal (Tue, 08 May 2018 14:15:48 GMT): itskhushal (Tue, 08 May 2018 14:15:56 GMT): itskhushal (Tue, 08 May 2018 14:16:04 GMT): jiteshukani2006 (Tue, 08 May 2018 14:16:10 GMT): itskhushal (Tue, 08 May 2018 14:16:31 GMT): jiteshukani2006 (Tue, 08 May 2018 14:17:24 GMT): jiteshukani2006 (Tue, 08 May 2018 14:17:39 GMT): itskhushal (Tue, 08 May 2018 14:18:22 GMT): jiteshukani2006 (Tue, 08 May 2018 14:19:34 GMT): jiteshukani2006 (Tue, 08 May 2018 14:20:10 GMT): jiteshukani2006 (Tue, 08 May 2018 14:21:08 GMT): jiteshukani2006 (Tue, 08 May 2018 14:21:16 GMT): jiteshukani2006 (Tue, 08 May 2018 14:23:01 GMT): itskhushal (Tue, 08 May 2018 14:35:38 GMT): itskhushal (Tue, 08 May 2018 14:40:23 GMT): phanikumar (Tue, 08 May 2018 15:04:57 GMT): phanikumar (Tue, 08 May 2018 15:06:54 GMT): pedromlcosta (Tue, 08 May 2018 15:19:05 GMT): phanikumar (Tue, 08 May 2018 15:20:37 GMT): phanikumar (Tue, 08 May 2018 15:20:37 GMT): phanikumar (Tue, 08 May 2018 15:20:37 GMT): brian.leppez (Tue, 08 May 2018 15:38:46 GMT): brian.leppez (Tue, 08 May 2018 15:38:46 GMT): phanikumar (Tue, 08 May 2018 15:47:27 GMT): brian.leppez (Tue, 08 May 2018 15:48:26 GMT): brian.leppez (Tue, 08 May 2018 15:48:34 GMT): phanikumar (Tue, 08 May 2018 15:50:01 GMT): rthatcher (Tue, 08 May 2018 15:50:32 GMT): phanikumar (Tue, 08 May 2018 15:52:13 GMT): mahoney1 (Tue, 08 May 2018 15:52:23 GMT): rthatcher (Tue, 08 May 2018 16:02:39 GMT): mahoney1 (Tue, 08 May 2018 16:07:50 GMT): phanikumar (Tue, 08 May 2018 16:10:57 GMT): phanikumar (Tue, 08 May 2018 16:10:57 GMT): MohitYadav2317 (Tue, 08 May 2018 16:15:50 GMT): MohitYadav2317 (Tue, 08 May 2018 16:16:57 GMT): vivanno (Tue, 08 May 2018 16:27:31 GMT): mahoney1 (Tue, 08 May 2018 16:30:28 GMT): vivanno (Tue, 08 May 2018 16:30:42 GMT): vivanno (Tue, 08 May 2018 16:31:00 GMT): vivanno (Tue, 08 May 2018 16:31:28 GMT): DanielWeber90 (Tue, 08 May 2018 16:36:11 GMT): brian.leppez (Tue, 08 May 2018 16:39:00 GMT): mahoney1 (Tue, 08 May 2018 16:39:53 GMT): vivanno (Tue, 08 May 2018 16:44:38 GMT): mahoney1 (Tue, 08 May 2018 16:54:46 GMT): brian.leppez (Tue, 08 May 2018 17:05:43 GMT): brian.leppez (Tue, 08 May 2018 17:08:29 GMT): vivanno (Tue, 08 May 2018 17:18:50 GMT): vivanno (Tue, 08 May 2018 17:19:18 GMT): DeepanIgnaatious (Tue, 08 May 2018 17:19:24 GMT): agranoff (Tue, 08 May 2018 17:20:52 GMT): agranoff (Tue, 08 May 2018 17:21:40 GMT): DeepanIgnaatious (Tue, 08 May 2018 17:23:26 GMT): chandrakanthm (Tue, 08 May 2018 17:52:19 GMT): phanikumar (Tue, 08 May 2018 19:12:21 GMT): phanikumar (Tue, 08 May 2018 19:12:21 GMT): phanikumar (Tue, 08 May 2018 19:12:21 GMT): jackschultz (Tue, 08 May 2018 19:23:26 GMT): mgcox (Tue, 08 May 2018 19:32:49 GMT): Tommy109 (Tue, 08 May 2018 19:38:33 GMT): MartinKrmer (Tue, 08 May 2018 19:42:08 GMT): phanikumar (Tue, 08 May 2018 20:43:12 GMT): phanikumar (Tue, 08 May 2018 20:43:12 GMT): phanikumar (Tue, 08 May 2018 20:43:12 GMT): jackschultz (Tue, 08 May 2018 20:46:47 GMT): eguevarar (Tue, 08 May 2018 20:51:32 GMT): srcmake (Tue, 08 May 2018 21:03:56 GMT): mgcox (Tue, 08 May 2018 21:50:26 GMT): adrianblakey (Wed, 09 May 2018 02:42:29 GMT): sstone1 (Wed, 09 May 2018 04:01:12 GMT): adrianblakey (Wed, 09 May 2018 04:05:39 GMT): dpurnima0709 (Wed, 09 May 2018 05:08:08 GMT): ra_w (Wed, 09 May 2018 06:06:20 GMT): ra_w (Wed, 09 May 2018 06:06:28 GMT): Pranoti (Wed, 09 May 2018 06:58:03 GMT): Pranoti (Wed, 09 May 2018 06:58:03 GMT): Pranoti (Wed, 09 May 2018 06:58:03 GMT): vpreddi (Wed, 09 May 2018 07:10:56 GMT): vpreddi (Wed, 09 May 2018 07:11:13 GMT): vpreddi (Wed, 09 May 2018 07:32:43 GMT): FlorentinoSainz (Wed, 09 May 2018 08:03:53 GMT): FlorentinoSainz (Wed, 09 May 2018 08:04:12 GMT): jiteshukani2006 (Wed, 09 May 2018 08:13:25 GMT): jiteshukani2006 (Wed, 09 May 2018 08:13:25 GMT): jiteshukani2006 (Wed, 09 May 2018 08:13:25 GMT): jiteshukani2006 (Wed, 09 May 2018 08:13:25 GMT): GiteekaSawlani (Wed, 09 May 2018 08:20:32 GMT): rthatcher (Wed, 09 May 2018 08:20:52 GMT): GiteekaSawlani (Wed, 09 May 2018 08:24:54 GMT): GiteekaSawlani (Wed, 09 May 2018 08:24:54 GMT): rthatcher (Wed, 09 May 2018 08:27:58 GMT): jiteshukani2006 (Wed, 09 May 2018 08:28:12 GMT): jiteshukani2006 (Wed, 09 May 2018 08:51:19 GMT): rthatcher (Wed, 09 May 2018 08:53:28 GMT): rthatcher (Wed, 09 May 2018 08:57:09 GMT): reshmamohiyiddin (Wed, 09 May 2018 09:01:20 GMT): reshmamohiyiddin (Wed, 09 May 2018 09:01:31 GMT): vpreddi (Wed, 09 May 2018 09:15:46 GMT): jiteshukani2006 (Wed, 09 May 2018 09:18:01 GMT): mahoney1 (Wed, 09 May 2018 09:37:36 GMT): GiteekaSawlani (Wed, 09 May 2018 09:39:01 GMT): mahoney1 (Wed, 09 May 2018 09:41:33 GMT): rthatcher (Wed, 09 May 2018 09:45:19 GMT): mahoney1 (Wed, 09 May 2018 09:50:53 GMT): mahoney1 (Wed, 09 May 2018 09:50:53 GMT): vpreddi (Wed, 09 May 2018 09:53:17 GMT): Pranoti (Wed, 09 May 2018 10:17:06 GMT): Pranoti (Wed, 09 May 2018 10:17:06 GMT): rthatcher (Wed, 09 May 2018 10:40:48 GMT): RahulSingh 6 (Wed, 09 May 2018 11:18:11 GMT): Pranoti (Wed, 09 May 2018 11:23:58 GMT): GrondinLaurent (Wed, 09 May 2018 11:30:42 GMT): GrondinLaurent (Wed, 09 May 2018 11:30:42 GMT): rthatcher (Wed, 09 May 2018 11:36:26 GMT): rthatcher (Wed, 09 May 2018 11:36:35 GMT): rthatcher (Wed, 09 May 2018 11:38:43 GMT): Pranoti (Wed, 09 May 2018 11:38:46 GMT): rthatcher (Wed, 09 May 2018 11:39:59 GMT): GrondinLaurent (Wed, 09 May 2018 11:40:24 GMT): rthatcher (Wed, 09 May 2018 11:42:34 GMT): maddy (Wed, 09 May 2018 11:47:37 GMT): maddy (Wed, 09 May 2018 11:48:12 GMT): maddy (Wed, 09 May 2018 11:48:12 GMT): maddy (Wed, 09 May 2018 11:48:12 GMT): HoneyShah (Wed, 09 May 2018 11:49:51 GMT): HoneyShah (Wed, 09 May 2018 11:49:51 GMT): mahoney1 (Wed, 09 May 2018 11:57:16 GMT): rthatcher (Wed, 09 May 2018 11:57:19 GMT): rthatcher (Wed, 09 May 2018 11:57:19 GMT): rthatcher (Wed, 09 May 2018 11:57:19 GMT): GrondinLaurent (Wed, 09 May 2018 12:02:33 GMT): Pranoti (Wed, 09 May 2018 12:12:25 GMT): dpurnima0709 (Wed, 09 May 2018 12:25:40 GMT): rthatcher (Wed, 09 May 2018 12:32:00 GMT): GrondinLaurent (Wed, 09 May 2018 12:37:29 GMT): FlorentinoSainz (Wed, 09 May 2018 12:41:42 GMT): dpurnima0709 (Wed, 09 May 2018 12:42:50 GMT): dpurnima0709 (Wed, 09 May 2018 12:42:50 GMT): rthatcher (Wed, 09 May 2018 12:43:02 GMT): rthatcher (Wed, 09 May 2018 12:45:40 GMT): GrondinLaurent (Wed, 09 May 2018 12:47:07 GMT): jiteshukani2006 (Wed, 09 May 2018 12:48:31 GMT): dpurnima0709 (Wed, 09 May 2018 12:49:06 GMT): rthatcher (Wed, 09 May 2018 13:04:01 GMT): rthatcher (Wed, 09 May 2018 13:05:42 GMT): eguevarar (Wed, 09 May 2018 13:41:53 GMT): GrondinLaurent (Wed, 09 May 2018 13:46:09 GMT): GrondinLaurent (Wed, 09 May 2018 13:46:16 GMT): GrondinLaurent (Wed, 09 May 2018 13:46:16 GMT): yongkook (Wed, 09 May 2018 13:46:56 GMT): yongkook (Wed, 09 May 2018 13:47:14 GMT): yongkook (Wed, 09 May 2018 13:49:02 GMT): rthatcher (Wed, 09 May 2018 13:50:31 GMT): GrondinLaurent (Wed, 09 May 2018 13:53:42 GMT): mahoney1 (Wed, 09 May 2018 14:06:38 GMT): pedromlcosta (Wed, 09 May 2018 15:36:54 GMT): pedromlcosta (Wed, 09 May 2018 15:38:41 GMT): pedromlcosta (Wed, 09 May 2018 15:38:41 GMT): pedromlcosta (Wed, 09 May 2018 15:41:29 GMT): pedromlcosta (Wed, 09 May 2018 15:41:29 GMT): pedromlcosta (Wed, 09 May 2018 16:11:58 GMT): phanikumar (Wed, 09 May 2018 17:43:22 GMT): phanikumar (Wed, 09 May 2018 17:43:22 GMT): phanikumar (Wed, 09 May 2018 17:43:22 GMT): mgcox (Wed, 09 May 2018 18:02:17 GMT): mgcox (Wed, 09 May 2018 18:02:33 GMT): mgcox (Wed, 09 May 2018 18:02:53 GMT): mgcox (Wed, 09 May 2018 19:57:16 GMT): yongkook (Wed, 09 May 2018 20:42:50 GMT): vijayin26 (Wed, 09 May 2018 21:04:07 GMT): yongkook (Wed, 09 May 2018 21:04:26 GMT): yongkook (Wed, 09 May 2018 21:05:12 GMT): MrMoneyChanger (Wed, 09 May 2018 21:41:20 GMT): VadimInshakov (Wed, 09 May 2018 22:06:25 GMT): VadimInshakov (Wed, 09 May 2018 22:06:25 GMT): VadimInshakov (Wed, 09 May 2018 22:08:12 GMT): jtwalker2000 (Wed, 09 May 2018 22:13:17 GMT): vijayin26 (Thu, 10 May 2018 00:23:02 GMT): mgcox (Thu, 10 May 2018 00:37:53 GMT): vijayin26 (Thu, 10 May 2018 01:16:26 GMT): todaymumu (Thu, 10 May 2018 01:33:05 GMT): pichayuthk (Thu, 10 May 2018 02:25:15 GMT): adrianblakey (Thu, 10 May 2018 03:06:46 GMT): mgcox (Thu, 10 May 2018 03:11:41 GMT): mgcox (Thu, 10 May 2018 03:14:27 GMT): sriharshajasthi (Thu, 10 May 2018 05:02:12 GMT): sriharshajasthi (Thu, 10 May 2018 05:03:04 GMT): sriharshajasthi (Thu, 10 May 2018 05:03:08 GMT): sriharshajasthi (Thu, 10 May 2018 05:03:14 GMT): VadimInshakov (Thu, 10 May 2018 06:41:57 GMT): mdvenkatesh (Thu, 10 May 2018 07:23:32 GMT): mdvenkatesh (Thu, 10 May 2018 07:23:40 GMT): VadimInshakov (Thu, 10 May 2018 07:27:30 GMT): HoneyShah (Thu, 10 May 2018 08:10:40 GMT): HoneyShah (Thu, 10 May 2018 08:10:40 GMT): rthatcher (Thu, 10 May 2018 08:10:53 GMT): mahoney1 (Thu, 10 May 2018 08:13:58 GMT): rthatcher (Thu, 10 May 2018 08:15:50 GMT): mdvenkatesh (Thu, 10 May 2018 08:21:16 GMT): rthatcher (Thu, 10 May 2018 08:35:00 GMT): rthatcher (Thu, 10 May 2018 08:35:00 GMT): mahoney1 (Thu, 10 May 2018 08:40:11 GMT): mahoney1 (Thu, 10 May 2018 08:40:11 GMT): HoneyShah (Thu, 10 May 2018 08:40:53 GMT): HoneyShah (Thu, 10 May 2018 08:40:53 GMT): mahoney1 (Thu, 10 May 2018 08:49:15 GMT): mahoney1 (Thu, 10 May 2018 08:51:49 GMT): uber.twin (Thu, 10 May 2018 08:57:11 GMT): mahoney1 (Thu, 10 May 2018 09:00:18 GMT): SuryanshuGupta (Thu, 10 May 2018 09:01:16 GMT): suva (Thu, 10 May 2018 09:03:01 GMT): uber.twin (Thu, 10 May 2018 09:09:32 GMT): mengluo668 (Thu, 10 May 2018 09:22:39 GMT): mengluo668 (Thu, 10 May 2018 09:22:39 GMT): mengluo668 (Thu, 10 May 2018 09:22:39 GMT): mengluo668 (Thu, 10 May 2018 09:22:39 GMT): mengluo668 (Thu, 10 May 2018 09:22:39 GMT): mdvenkatesh (Thu, 10 May 2018 09:24:42 GMT): uber.twin (Thu, 10 May 2018 09:37:55 GMT): mahoney1 (Thu, 10 May 2018 09:51:18 GMT): mahoney1 (Thu, 10 May 2018 09:51:18 GMT): mahoney1 (Thu, 10 May 2018 09:53:05 GMT): mahoney1 (Thu, 10 May 2018 09:55:30 GMT): pedromlcosta (Thu, 10 May 2018 10:03:10 GMT): mengluo668 (Thu, 10 May 2018 10:03:22 GMT): mengluo668 (Thu, 10 May 2018 10:06:46 GMT): mengluo668 (Thu, 10 May 2018 10:06:46 GMT): mengluo668 (Thu, 10 May 2018 10:06:46 GMT): mengluo668 (Thu, 10 May 2018 10:06:46 GMT): mengluo668 (Thu, 10 May 2018 10:06:46 GMT): mengluo668 (Thu, 10 May 2018 10:06:46 GMT): pedromlcosta (Thu, 10 May 2018 10:13:32 GMT): pedromlcosta (Thu, 10 May 2018 10:14:13 GMT): uber.twin (Thu, 10 May 2018 10:23:10 GMT): uber.twin (Thu, 10 May 2018 10:23:10 GMT): mdvenkatesh (Thu, 10 May 2018 10:32:20 GMT): mdvenkatesh (Thu, 10 May 2018 10:32:20 GMT): mdvenkatesh (Thu, 10 May 2018 10:32:20 GMT): reshmamohiyiddin (Thu, 10 May 2018 10:55:06 GMT): acbellini (Thu, 10 May 2018 11:05:10 GMT): mahoney1 (Thu, 10 May 2018 11:06:18 GMT): HoneyShah (Thu, 10 May 2018 11:14:35 GMT): HoneyShah (Thu, 10 May 2018 11:14:35 GMT): HoneyShah (Thu, 10 May 2018 11:14:35 GMT): rudras (Thu, 10 May 2018 11:29:43 GMT): mengluo668 (Thu, 10 May 2018 11:29:57 GMT): rudras (Thu, 10 May 2018 11:30:06 GMT): rudras (Thu, 10 May 2018 11:30:50 GMT): rudras (Thu, 10 May 2018 11:30:51 GMT): rudras (Thu, 10 May 2018 11:30:58 GMT): rthatcher (Thu, 10 May 2018 11:36:50 GMT): rudras (Thu, 10 May 2018 11:38:13 GMT): rudras (Thu, 10 May 2018 11:38:47 GMT): rthatcher (Thu, 10 May 2018 11:40:35 GMT): acbellini (Thu, 10 May 2018 11:42:03 GMT): saeedi (Thu, 10 May 2018 11:43:16 GMT): saeedi (Thu, 10 May 2018 11:43:16 GMT): saeedi (Thu, 10 May 2018 11:43:16 GMT): saeedi (Thu, 10 May 2018 11:43:16 GMT): mahoney1 (Thu, 10 May 2018 11:45:06 GMT): mahoney1 (Thu, 10 May 2018 11:49:05 GMT): mahoney1 (Thu, 10 May 2018 11:49:05 GMT): mengluo668 (Thu, 10 May 2018 11:50:04 GMT): vijayin26 (Thu, 10 May 2018 11:58:23 GMT): mahoney1 (Thu, 10 May 2018 11:58:44 GMT): saeedi (Thu, 10 May 2018 12:21:48 GMT): saeedi (Thu, 10 May 2018 12:23:28 GMT): prakhar 5 (Thu, 10 May 2018 12:26:17 GMT): mahoney1 (Thu, 10 May 2018 12:47:18 GMT): saeedi (Thu, 10 May 2018 13:20:34 GMT): saeedi (Thu, 10 May 2018 13:20:34 GMT): VadimInshakov (Thu, 10 May 2018 13:28:49 GMT): AbdullahTariq (Thu, 10 May 2018 13:41:38 GMT): AbdullahTariq (Thu, 10 May 2018 13:44:24 GMT): AbdullahTariq (Thu, 10 May 2018 13:44:24 GMT): AbdullahTariq (Thu, 10 May 2018 13:44:24 GMT): AbdullahTariq (Thu, 10 May 2018 13:44:24 GMT): AbdullahTariq (Thu, 10 May 2018 13:44:24 GMT): phanikumar (Thu, 10 May 2018 13:46:19 GMT): DimeGalev (Thu, 10 May 2018 13:46:51 GMT): RohitYadav2 (Thu, 10 May 2018 13:47:29 GMT): mahoney1 (Thu, 10 May 2018 13:49:00 GMT): acbellini (Thu, 10 May 2018 13:49:25 GMT): acbellini (Thu, 10 May 2018 13:50:10 GMT): mahoney1 (Thu, 10 May 2018 13:51:43 GMT): mahoney1 (Thu, 10 May 2018 13:53:33 GMT): rthatcher (Thu, 10 May 2018 13:58:28 GMT): phanikumar (Thu, 10 May 2018 14:00:26 GMT): phanikumar (Thu, 10 May 2018 14:00:26 GMT): AbdullahTariq (Thu, 10 May 2018 14:00:46 GMT): AbdullahTariq (Thu, 10 May 2018 14:09:01 GMT): mahoney1 (Thu, 10 May 2018 14:10:34 GMT): mahoney1 (Thu, 10 May 2018 14:10:34 GMT): mahoney1 (Thu, 10 May 2018 14:10:34 GMT): acbellini (Thu, 10 May 2018 14:11:47 GMT): AbdullahTariq (Thu, 10 May 2018 14:13:31 GMT): AbdullahTariq (Thu, 10 May 2018 14:14:35 GMT): AbdullahTariq (Thu, 10 May 2018 14:17:54 GMT): AbdullahTariq (Thu, 10 May 2018 14:22:11 GMT): AbdullahTariq (Thu, 10 May 2018 14:27:23 GMT): presidentpt (Thu, 10 May 2018 14:53:26 GMT): mahoney1 (Thu, 10 May 2018 15:16:47 GMT): mahoney1 (Thu, 10 May 2018 15:16:47 GMT): adrianblakey (Thu, 10 May 2018 15:17:42 GMT): adrianblakey (Thu, 10 May 2018 15:17:42 GMT): pedromlcosta (Thu, 10 May 2018 15:27:21 GMT): eguevarar (Thu, 10 May 2018 15:32:22 GMT): FlorentinoSainz (Thu, 10 May 2018 15:35:06 GMT): FlorentinoSainz (Thu, 10 May 2018 15:35:06 GMT): FlorentinoSainz (Thu, 10 May 2018 15:35:11 GMT): FlorentinoSainz (Thu, 10 May 2018 15:35:35 GMT): eguevarar (Thu, 10 May 2018 15:35:49 GMT): FlorentinoSainz (Thu, 10 May 2018 15:36:06 GMT): FlorentinoSainz (Thu, 10 May 2018 15:36:11 GMT): eguevarar (Thu, 10 May 2018 15:36:28 GMT): FlorentinoSainz (Thu, 10 May 2018 15:36:28 GMT): eguevarar (Thu, 10 May 2018 15:36:49 GMT): FlorentinoSainz (Thu, 10 May 2018 15:38:45 GMT): FlorentinoSainz (Thu, 10 May 2018 15:38:56 GMT): eguevarar (Thu, 10 May 2018 15:40:01 GMT): eguevarar (Thu, 10 May 2018 15:40:25 GMT): AntonyKakoudakis (Thu, 10 May 2018 15:51:24 GMT): VadimInshakov (Thu, 10 May 2018 15:56:54 GMT): NateDiNiro (Thu, 10 May 2018 16:07:53 GMT): phanikumar (Thu, 10 May 2018 16:16:51 GMT): phanikumar (Thu, 10 May 2018 16:16:51 GMT): phanikumar (Thu, 10 May 2018 16:16:51 GMT): mgcox (Thu, 10 May 2018 16:31:52 GMT): mahoney1 (Thu, 10 May 2018 16:42:32 GMT): adave (Thu, 10 May 2018 16:44:33 GMT): mgcox (Thu, 10 May 2018 17:36:57 GMT): mgcox (Thu, 10 May 2018 18:03:01 GMT): azmuju (Thu, 10 May 2018 19:24:02 GMT): cuevrob (Thu, 10 May 2018 19:52:01 GMT): cuevrob (Thu, 10 May 2018 19:52:04 GMT): mgcox (Thu, 10 May 2018 20:13:12 GMT): cylon56 (Thu, 10 May 2018 20:26:17 GMT): vsharma030 (Thu, 10 May 2018 20:54:42 GMT): vsharma030 (Thu, 10 May 2018 21:00:01 GMT): vsharma030 (Thu, 10 May 2018 21:00:50 GMT): kennethcarpenterdltlabs (Thu, 10 May 2018 21:25:11 GMT): kennethcarpenterdltlabs (Thu, 10 May 2018 21:38:07 GMT): vsharma030 (Thu, 10 May 2018 21:43:31 GMT): davidkel (Thu, 10 May 2018 22:40:05 GMT): davidkel (Thu, 10 May 2018 22:40:05 GMT): kennethcarpenterdltlabs (Fri, 11 May 2018 00:11:36 GMT): Titret (Fri, 11 May 2018 00:50:40 GMT): RajathNandan (Fri, 11 May 2018 01:57:24 GMT): RajathNandan (Fri, 11 May 2018 01:57:34 GMT): ra_w (Fri, 11 May 2018 03:12:07 GMT): ra_w (Fri, 11 May 2018 03:12:12 GMT): ra_w (Fri, 11 May 2018 03:12:42 GMT): ra_w (Fri, 11 May 2018 03:12:56 GMT): ra_w (Fri, 11 May 2018 03:13:57 GMT): ra_w (Fri, 11 May 2018 03:13:57 GMT): RajathNandan (Fri, 11 May 2018 04:26:15 GMT): saeedi (Fri, 11 May 2018 05:34:54 GMT): saeedi (Fri, 11 May 2018 05:35:02 GMT): newkan (Fri, 11 May 2018 05:50:48 GMT): vvmallesh (Fri, 11 May 2018 06:58:11 GMT): vvmallesh (Fri, 11 May 2018 06:58:51 GMT): vvmallesh (Fri, 11 May 2018 06:59:19 GMT): d8bhatta (Fri, 11 May 2018 06:59:54 GMT): vvmallesh (Fri, 11 May 2018 07:00:21 GMT): Pranoti (Fri, 11 May 2018 07:07:04 GMT): Pranoti (Fri, 11 May 2018 07:07:04 GMT): ApoorvChandurkar (Fri, 11 May 2018 07:23:46 GMT): sriharshajasthi (Fri, 11 May 2018 07:47:30 GMT): sriharshajasthi (Fri, 11 May 2018 07:47:34 GMT): sriharshajasthi (Fri, 11 May 2018 07:47:53 GMT): sriharshajasthi (Fri, 11 May 2018 07:47:58 GMT): james3443112 (Fri, 11 May 2018 07:58:55 GMT): rthatcher (Fri, 11 May 2018 08:20:56 GMT): rthatcher (Fri, 11 May 2018 08:25:43 GMT): dpurnima0709 (Fri, 11 May 2018 08:25:45 GMT): uber.twin (Fri, 11 May 2018 08:26:03 GMT): rthatcher (Fri, 11 May 2018 08:28:18 GMT): uber.twin (Fri, 11 May 2018 08:30:41 GMT): rthatcher (Fri, 11 May 2018 08:35:40 GMT): sriharshajasthi (Fri, 11 May 2018 08:41:14 GMT): sriharshajasthi (Fri, 11 May 2018 08:41:35 GMT): rthatcher (Fri, 11 May 2018 08:42:45 GMT): rthatcher (Fri, 11 May 2018 08:44:20 GMT): jsmithmap (Fri, 11 May 2018 08:45:15 GMT): jsmithmap (Fri, 11 May 2018 08:45:22 GMT): d8bhatta (Fri, 11 May 2018 08:45:32 GMT): HoneyShah (Fri, 11 May 2018 08:51:56 GMT): rthatcher (Fri, 11 May 2018 08:54:38 GMT): jsmithmap (Fri, 11 May 2018 08:56:26 GMT): jsmithmap (Fri, 11 May 2018 08:58:12 GMT): rthatcher (Fri, 11 May 2018 09:02:03 GMT): jsmithmap (Fri, 11 May 2018 09:05:16 GMT): FlorentinoSainz (Fri, 11 May 2018 09:20:51 GMT): FlorentinoSainz (Fri, 11 May 2018 09:21:04 GMT): mahoney1 (Fri, 11 May 2018 09:22:55 GMT): mahoney1 (Fri, 11 May 2018 09:22:55 GMT): uber.twin (Fri, 11 May 2018 09:27:36 GMT): uber.twin (Fri, 11 May 2018 09:27:36 GMT): ra_w (Fri, 11 May 2018 09:32:19 GMT): rthatcher (Fri, 11 May 2018 09:32:30 GMT): jsmithmap (Fri, 11 May 2018 09:37:48 GMT): jsmithmap (Fri, 11 May 2018 09:39:03 GMT): Poneey (Fri, 11 May 2018 09:41:37 GMT): mahoney1 (Fri, 11 May 2018 09:44:29 GMT): mahoney1 (Fri, 11 May 2018 09:47:27 GMT): mahoney1 (Fri, 11 May 2018 09:47:27 GMT): FlorentinoSainz (Fri, 11 May 2018 09:48:01 GMT): FlorentinoSainz (Fri, 11 May 2018 09:48:22 GMT): FlorentinoSainz (Fri, 11 May 2018 09:49:35 GMT): Varun2887 (Fri, 11 May 2018 09:49:39 GMT): mahoney1 (Fri, 11 May 2018 09:50:14 GMT): mahoney1 (Fri, 11 May 2018 09:50:14 GMT): Varun2887 (Fri, 11 May 2018 09:51:07 GMT): FlorentinoSainz (Fri, 11 May 2018 09:55:29 GMT): FlorentinoSainz (Fri, 11 May 2018 09:55:49 GMT): FlorentinoSainz (Fri, 11 May 2018 09:56:12 GMT): FlorentinoSainz (Fri, 11 May 2018 09:56:44 GMT): mahoney1 (Fri, 11 May 2018 09:59:09 GMT): mahoney1 (Fri, 11 May 2018 09:59:09 GMT): mahoney1 (Fri, 11 May 2018 09:59:09 GMT): mahoney1 (Fri, 11 May 2018 09:59:09 GMT): mahoney1 (Fri, 11 May 2018 09:59:09 GMT): Varun2887 (Fri, 11 May 2018 10:00:35 GMT): Varun2887 (Fri, 11 May 2018 10:01:00 GMT): mahoney1 (Fri, 11 May 2018 10:03:37 GMT): mahoney1 (Fri, 11 May 2018 10:03:37 GMT): Varun2887 (Fri, 11 May 2018 10:04:08 GMT): Varun2887 (Fri, 11 May 2018 10:04:15 GMT): Varun2887 (Fri, 11 May 2018 10:04:17 GMT): FlorentinoSainz (Fri, 11 May 2018 10:04:59 GMT): FlorentinoSainz (Fri, 11 May 2018 10:04:59 GMT): FlorentinoSainz (Fri, 11 May 2018 10:06:43 GMT): mahoney1 (Fri, 11 May 2018 10:07:29 GMT): mahoney1 (Fri, 11 May 2018 10:07:29 GMT): mengluo668 (Fri, 11 May 2018 10:07:54 GMT): mengluo668 (Fri, 11 May 2018 10:07:54 GMT): mahoney1 (Fri, 11 May 2018 10:19:11 GMT): mahoney1 (Fri, 11 May 2018 10:19:11 GMT): HoneyShah (Fri, 11 May 2018 10:22:11 GMT): mengluo668 (Fri, 11 May 2018 10:42:16 GMT): Pranoti (Fri, 11 May 2018 11:02:04 GMT): BhaskarRaju (Fri, 11 May 2018 11:04:37 GMT): BhaskarRaju (Fri, 11 May 2018 11:07:45 GMT): Saschaka (Fri, 11 May 2018 11:13:51 GMT): ApoorvChandurkar (Fri, 11 May 2018 11:17:14 GMT): uber.twin (Fri, 11 May 2018 12:03:02 GMT): uber.twin (Fri, 11 May 2018 12:03:02 GMT): FlorentinoSainz (Fri, 11 May 2018 12:05:36 GMT): FlorentinoSainz (Fri, 11 May 2018 12:07:03 GMT): FlorentinoSainz (Fri, 11 May 2018 12:07:39 GMT): mahoney1 (Fri, 11 May 2018 12:14:17 GMT): mahoney1 (Fri, 11 May 2018 12:14:17 GMT): FlorentinoSainz (Fri, 11 May 2018 12:17:27 GMT): mahoney1 (Fri, 11 May 2018 12:18:14 GMT): Saschaka (Fri, 11 May 2018 12:19:16 GMT): mahoney1 (Fri, 11 May 2018 12:19:36 GMT): mahoney1 (Fri, 11 May 2018 12:19:36 GMT): Saschaka (Fri, 11 May 2018 12:21:24 GMT): FlorentinoSainz (Fri, 11 May 2018 12:22:01 GMT): Saschaka (Fri, 11 May 2018 12:22:19 GMT): Saschaka (Fri, 11 May 2018 12:22:48 GMT): FlorentinoSainz (Fri, 11 May 2018 12:23:31 GMT): FlorentinoSainz (Fri, 11 May 2018 12:24:09 GMT): FlorentinoSainz (Fri, 11 May 2018 12:24:14 GMT): FlorentinoSainz (Fri, 11 May 2018 12:24:23 GMT): FlorentinoSainz (Fri, 11 May 2018 12:26:30 GMT): Saschaka (Fri, 11 May 2018 12:27:31 GMT): Saschaka (Fri, 11 May 2018 12:28:34 GMT): mahoney1 (Fri, 11 May 2018 12:28:48 GMT): FlorentinoSainz (Fri, 11 May 2018 12:29:19 GMT): FlorentinoSainz (Fri, 11 May 2018 12:30:41 GMT): FlorentinoSainz (Fri, 11 May 2018 12:30:52 GMT): mahoney1 (Fri, 11 May 2018 12:31:46 GMT): mahoney1 (Fri, 11 May 2018 12:31:46 GMT): uber.twin (Fri, 11 May 2018 12:32:45 GMT): uber.twin (Fri, 11 May 2018 12:32:45 GMT): mahoney1 (Fri, 11 May 2018 12:40:03 GMT): uber.twin (Fri, 11 May 2018 12:42:30 GMT): saeedi (Fri, 11 May 2018 12:55:36 GMT): saeedi (Fri, 11 May 2018 12:55:36 GMT): rthatcher (Fri, 11 May 2018 12:57:58 GMT): saeedi (Fri, 11 May 2018 13:05:17 GMT): uber.twin (Fri, 11 May 2018 13:07:04 GMT): uber.twin (Fri, 11 May 2018 13:07:04 GMT): uber.twin (Fri, 11 May 2018 13:07:04 GMT): rthatcher (Fri, 11 May 2018 13:20:02 GMT): saeedi (Fri, 11 May 2018 13:29:31 GMT): aneb (Fri, 11 May 2018 13:33:21 GMT): Poneey (Fri, 11 May 2018 13:35:53 GMT): vijayin26 (Fri, 11 May 2018 13:58:41 GMT): mahoney1 (Fri, 11 May 2018 14:00:58 GMT): mahoney1 (Fri, 11 May 2018 14:00:58 GMT): mahoney1 (Fri, 11 May 2018 14:00:58 GMT): mahoney1 (Fri, 11 May 2018 14:00:58 GMT): mahoney1 (Fri, 11 May 2018 14:00:58 GMT): Poneey (Fri, 11 May 2018 14:04:22 GMT): vijayin26 (Fri, 11 May 2018 14:04:33 GMT): Poneey (Fri, 11 May 2018 14:05:53 GMT): uber.twin (Fri, 11 May 2018 14:16:35 GMT): mahoney1 (Fri, 11 May 2018 14:21:52 GMT): mahoney1 (Fri, 11 May 2018 14:21:52 GMT): uber.twin (Fri, 11 May 2018 14:24:45 GMT): uber.twin (Fri, 11 May 2018 14:24:45 GMT): mahoney1 (Fri, 11 May 2018 14:27:56 GMT): mahoney1 (Fri, 11 May 2018 14:27:56 GMT): csmith23 (Fri, 11 May 2018 15:16:45 GMT): vivanno (Fri, 11 May 2018 15:25:17 GMT): rthatcher (Fri, 11 May 2018 15:39:21 GMT): vivanno (Fri, 11 May 2018 15:41:09 GMT): davidkel (Fri, 11 May 2018 16:07:50 GMT): AbdullahTariq (Fri, 11 May 2018 16:26:37 GMT): AbdullahTariq (Fri, 11 May 2018 16:36:03 GMT): AbdullahTariq (Fri, 11 May 2018 16:36:57 GMT): AbdullahTariq (Fri, 11 May 2018 16:36:57 GMT): rthatcher (Fri, 11 May 2018 16:43:10 GMT): AbdullahTariq (Fri, 11 May 2018 16:45:23 GMT): rthatcher (Fri, 11 May 2018 16:46:43 GMT): AbdullahTariq (Fri, 11 May 2018 16:47:24 GMT): rthatcher (Fri, 11 May 2018 16:49:21 GMT): acbellini (Fri, 11 May 2018 17:52:35 GMT): Daniela_Barbosa (Fri, 11 May 2018 17:55:30 GMT): vivanno (Fri, 11 May 2018 18:08:42 GMT): davidkel (Fri, 11 May 2018 23:17:13 GMT): davidkel (Fri, 11 May 2018 23:17:13 GMT): davidkel (Fri, 11 May 2018 23:17:13 GMT): a9714052 (Sat, 12 May 2018 03:07:59 GMT): a9714052 (Sat, 12 May 2018 03:36:53 GMT): a9714052 (Sat, 12 May 2018 03:36:55 GMT): a9714052 (Sat, 12 May 2018 03:37:12 GMT): a9714052 (Sat, 12 May 2018 03:38:23 GMT): chrisdurr (Sat, 12 May 2018 05:34:09 GMT): davidkel (Sat, 12 May 2018 07:38:35 GMT): davidkel (Sat, 12 May 2018 08:02:44 GMT): DTiapan (Sat, 12 May 2018 09:30:12 GMT): vivanno (Sat, 12 May 2018 09:52:45 GMT): ppcm (Sat, 12 May 2018 09:58:02 GMT): vivanno (Sat, 12 May 2018 10:18:06 GMT): ShivajiBose (Sat, 12 May 2018 10:46:18 GMT): monarch 1 (Sat, 12 May 2018 10:48:37 GMT): davidkel (Sat, 12 May 2018 11:02:38 GMT): davidkel (Sat, 12 May 2018 11:02:38 GMT): divyesh25 (Sat, 12 May 2018 11:16:12 GMT): monarch 1 (Sat, 12 May 2018 11:26:58 GMT): vivanno (Sat, 12 May 2018 12:51:12 GMT): ppcm (Sat, 12 May 2018 13:59:45 GMT): ppcm (Sat, 12 May 2018 13:59:45 GMT): sghosh2 (Sat, 12 May 2018 21:36:02 GMT): sghosh2 (Sat, 12 May 2018 21:36:03 GMT): sghosh2 (Sat, 12 May 2018 21:36:33 GMT): sghosh2 (Sat, 12 May 2018 21:40:15 GMT): phanikumar (Sun, 13 May 2018 04:53:27 GMT): phanikumar (Sun, 13 May 2018 04:53:27 GMT): phanikumar (Sun, 13 May 2018 04:53:27 GMT): sghosh2 (Sun, 13 May 2018 07:18:57 GMT): phanikumar (Sun, 13 May 2018 07:19:37 GMT): phanikumar (Sun, 13 May 2018 07:19:37 GMT): sghosh2 (Sun, 13 May 2018 07:23:04 GMT): sghosh2 (Sun, 13 May 2018 07:23:07 GMT): sghosh2 (Sun, 13 May 2018 07:27:12 GMT): sghosh2 (Sun, 13 May 2018 07:27:14 GMT): rbole (Sun, 13 May 2018 07:51:40 GMT): ahmadzafar (Sun, 13 May 2018 08:56:32 GMT): AbdullahTariq (Sun, 13 May 2018 11:20:28 GMT): AbdullahTariq (Sun, 13 May 2018 11:21:45 GMT): AbdullahTariq (Sun, 13 May 2018 11:22:21 GMT): AbdullahTariq (Sun, 13 May 2018 11:57:33 GMT): phanikumar (Sun, 13 May 2018 15:47:41 GMT): mataide (Sun, 13 May 2018 18:11:48 GMT): mataide (Sun, 13 May 2018 18:19:02 GMT): mataide (Sun, 13 May 2018 18:19:06 GMT): ahmadzafar (Sun, 13 May 2018 18:19:48 GMT): mataide (Sun, 13 May 2018 21:37:38 GMT): mataide (Sun, 13 May 2018 21:37:38 GMT): mataide (Sun, 13 May 2018 21:37:38 GMT): mataide (Sun, 13 May 2018 21:37:38 GMT): lipoplus (Mon, 14 May 2018 00:22:34 GMT): lipoplus (Mon, 14 May 2018 00:51:52 GMT): lipoplus (Mon, 14 May 2018 00:56:32 GMT): lipoplus (Mon, 14 May 2018 00:57:07 GMT): lipoplus (Mon, 14 May 2018 02:16:53 GMT): dodangquan (Mon, 14 May 2018 03:35:18 GMT): nemesis1346 (Mon, 14 May 2018 04:19:20 GMT): nemesis1346 (Mon, 14 May 2018 04:19:35 GMT): nemesis1346 (Mon, 14 May 2018 04:19:39 GMT): nemesis1346 (Mon, 14 May 2018 04:19:47 GMT): nemesis1346 (Mon, 14 May 2018 04:19:54 GMT): nemesis1346 (Mon, 14 May 2018 04:20:07 GMT): nemesis1346 (Mon, 14 May 2018 04:20:09 GMT): nemesis1346 (Mon, 14 May 2018 04:20:12 GMT): YiChengFAN (Mon, 14 May 2018 05:20:37 GMT): mgcox (Mon, 14 May 2018 05:29:35 GMT): ahmadzafar (Mon, 14 May 2018 05:46:19 GMT): ahmadzafar (Mon, 14 May 2018 05:46:19 GMT): ahmadzafar (Mon, 14 May 2018 05:46:19 GMT): ahmadzafar (Mon, 14 May 2018 05:46:19 GMT): mgcox (Mon, 14 May 2018 05:51:12 GMT): ra_w (Mon, 14 May 2018 06:37:05 GMT): ra_w (Mon, 14 May 2018 06:37:26 GMT): ra_w (Mon, 14 May 2018 06:37:36 GMT): ra_w (Mon, 14 May 2018 06:38:00 GMT): ra_w (Mon, 14 May 2018 06:38:12 GMT): Varun2887 (Mon, 14 May 2018 07:11:03 GMT): Varun2887 (Mon, 14 May 2018 07:11:27 GMT): bansalru (Mon, 14 May 2018 07:24:42 GMT): Varun2887 (Mon, 14 May 2018 08:00:21 GMT): HoneyShah (Mon, 14 May 2018 08:05:19 GMT): mahoney1 (Mon, 14 May 2018 08:08:57 GMT): mahoney1 (Mon, 14 May 2018 08:08:57 GMT): Varun2887 (Mon, 14 May 2018 08:10:55 GMT): Varun2887 (Mon, 14 May 2018 08:11:35 GMT): Varun2887 (Mon, 14 May 2018 08:11:39 GMT): Varun2887 (Mon, 14 May 2018 08:12:01 GMT): Varun2887 (Mon, 14 May 2018 08:14:49 GMT): mahoney1 (Mon, 14 May 2018 08:21:14 GMT): mahoney1 (Mon, 14 May 2018 08:21:14 GMT): mahoney1 (Mon, 14 May 2018 08:21:14 GMT): mahoney1 (Mon, 14 May 2018 08:21:14 GMT): mahoney1 (Mon, 14 May 2018 08:21:14 GMT): mahoney1 (Mon, 14 May 2018 08:21:14 GMT): mahoney1 (Mon, 14 May 2018 08:21:14 GMT): Varun2887 (Mon, 14 May 2018 08:21:45 GMT): Varun2887 (Mon, 14 May 2018 08:21:54 GMT): Varun2887 (Mon, 14 May 2018 08:22:02 GMT): mahoney1 (Mon, 14 May 2018 08:22:38 GMT): Varun2887 (Mon, 14 May 2018 08:23:20 GMT): HoneyShah (Mon, 14 May 2018 08:24:02 GMT): mahoney1 (Mon, 14 May 2018 08:34:50 GMT): HoneyShah (Mon, 14 May 2018 08:38:23 GMT): HoneyShah (Mon, 14 May 2018 08:38:23 GMT): rthatcher (Mon, 14 May 2018 08:49:13 GMT): mahoney1 (Mon, 14 May 2018 08:52:09 GMT): mahoney1 (Mon, 14 May 2018 08:52:09 GMT): Varun2887 (Mon, 14 May 2018 08:53:45 GMT): Varun2887 (Mon, 14 May 2018 08:53:54 GMT): mahoney1 (Mon, 14 May 2018 08:56:30 GMT): mahoney1 (Mon, 14 May 2018 08:56:30 GMT): rthatcher (Mon, 14 May 2018 09:04:24 GMT): HoneyShah (Mon, 14 May 2018 09:10:24 GMT): jaguarg (Mon, 14 May 2018 09:39:40 GMT): jaguarg (Mon, 14 May 2018 09:47:31 GMT): jaguarg (Mon, 14 May 2018 09:51:09 GMT): Varun2887 (Mon, 14 May 2018 10:08:55 GMT): ra_w (Mon, 14 May 2018 10:22:39 GMT): lipoplus (Mon, 14 May 2018 10:25:43 GMT): lipoplus (Mon, 14 May 2018 10:26:07 GMT): suva (Mon, 14 May 2018 10:37:30 GMT): mahoney1 (Mon, 14 May 2018 10:46:55 GMT): mahoney1 (Mon, 14 May 2018 10:49:48 GMT): mahoney1 (Mon, 14 May 2018 10:49:48 GMT): HoneyShah (Mon, 14 May 2018 10:55:02 GMT): HoneyShah (Mon, 14 May 2018 10:55:02 GMT): rthatcher (Mon, 14 May 2018 10:57:43 GMT): rthatcher (Mon, 14 May 2018 10:57:43 GMT): acbellini (Mon, 14 May 2018 11:02:55 GMT): Varun2887 (Mon, 14 May 2018 11:12:09 GMT): KindleBitSoln (Mon, 14 May 2018 11:12:28 GMT): Varun2887 (Mon, 14 May 2018 11:13:07 GMT): KindleBitSoln (Mon, 14 May 2018 11:13:15 GMT): Varun2887 (Mon, 14 May 2018 11:13:38 GMT): KindleBitSoln (Mon, 14 May 2018 11:13:52 GMT): KindleBitSoln (Mon, 14 May 2018 11:14:10 GMT): Varun2887 (Mon, 14 May 2018 11:14:14 GMT): Varun2887 (Mon, 14 May 2018 11:14:14 GMT): KindleBitSoln (Mon, 14 May 2018 11:15:11 GMT): KindleBitSoln (Mon, 14 May 2018 11:15:30 GMT): rthatcher (Mon, 14 May 2018 11:15:43 GMT): mahoney1 (Mon, 14 May 2018 11:18:22 GMT): mahoney1 (Mon, 14 May 2018 11:18:22 GMT): KindleBitSoln (Mon, 14 May 2018 11:19:06 GMT): KindleBitSoln (Mon, 14 May 2018 11:21:13 GMT): rthatcher (Mon, 14 May 2018 11:21:33 GMT): KindleBitSoln (Mon, 14 May 2018 11:21:42 GMT): rthatcher (Mon, 14 May 2018 11:22:22 GMT): KindleBitSoln (Mon, 14 May 2018 11:22:32 GMT): KindleBitSoln (Mon, 14 May 2018 11:22:44 GMT): mahoney1 (Mon, 14 May 2018 11:23:29 GMT): HoneyShah (Mon, 14 May 2018 11:23:30 GMT): KindleBitSoln (Mon, 14 May 2018 11:24:35 GMT): KindleBitSoln (Mon, 14 May 2018 11:25:05 GMT): mahoney1 (Mon, 14 May 2018 11:26:04 GMT): KindleBitSoln (Mon, 14 May 2018 11:27:02 GMT): mahoney1 (Mon, 14 May 2018 11:27:40 GMT): mahoney1 (Mon, 14 May 2018 11:27:40 GMT): rthatcher (Mon, 14 May 2018 11:27:44 GMT): sreeharsha (Mon, 14 May 2018 11:30:27 GMT): sreeharsha (Mon, 14 May 2018 11:30:28 GMT): KindleBitSoln (Mon, 14 May 2018 11:31:09 GMT): KindleBitSoln (Mon, 14 May 2018 11:32:12 GMT): KindleBitSoln (Mon, 14 May 2018 11:33:37 GMT): Varun2887 (Mon, 14 May 2018 11:34:56 GMT): mahoney1 (Mon, 14 May 2018 11:56:07 GMT): mahoney1 (Mon, 14 May 2018 11:56:07 GMT): mahoney1 (Mon, 14 May 2018 11:58:30 GMT): ra_w (Mon, 14 May 2018 11:58:58 GMT): Varun2887 (Mon, 14 May 2018 11:59:00 GMT): BhanuPrathap (Mon, 14 May 2018 12:00:20 GMT): utsha94 (Mon, 14 May 2018 12:01:10 GMT): utsha94 (Mon, 14 May 2018 12:01:10 GMT): KindleBitSoln (Mon, 14 May 2018 12:02:39 GMT): KindleBitSoln (Mon, 14 May 2018 12:03:26 GMT): BhanuPrathap (Mon, 14 May 2018 12:06:00 GMT): jaguarg (Mon, 14 May 2018 12:07:27 GMT): brian.leppez (Mon, 14 May 2018 12:10:22 GMT): mahoney1 (Mon, 14 May 2018 12:10:44 GMT): mahoney1 (Mon, 14 May 2018 12:11:10 GMT): brian.leppez (Mon, 14 May 2018 12:11:42 GMT): mahoney1 (Mon, 14 May 2018 12:19:02 GMT): KindleBitSoln (Mon, 14 May 2018 12:20:05 GMT): KindleBitSoln (Mon, 14 May 2018 12:20:05 GMT): KindleBitSoln (Mon, 14 May 2018 12:20:29 GMT): mahoney1 (Mon, 14 May 2018 12:20:51 GMT): mahoney1 (Mon, 14 May 2018 12:21:02 GMT): KindleBitSoln (Mon, 14 May 2018 12:21:24 GMT): mahoney1 (Mon, 14 May 2018 12:21:29 GMT): brian.leppez (Mon, 14 May 2018 12:21:57 GMT): mahoney1 (Mon, 14 May 2018 12:22:33 GMT): utsha94 (Mon, 14 May 2018 12:23:00 GMT): KindleBitSoln (Mon, 14 May 2018 12:23:42 GMT): KindleBitSoln (Mon, 14 May 2018 12:23:42 GMT): mahoney1 (Mon, 14 May 2018 12:25:59 GMT): KindleBitSoln (Mon, 14 May 2018 12:26:47 GMT): utsha94 (Mon, 14 May 2018 12:26:58 GMT): utsha94 (Mon, 14 May 2018 12:28:58 GMT): mahoney1 (Mon, 14 May 2018 12:32:08 GMT): mahoney1 (Mon, 14 May 2018 12:35:02 GMT): mahoney1 (Mon, 14 May 2018 12:35:02 GMT): utsha94 (Mon, 14 May 2018 12:40:15 GMT): mahoney1 (Mon, 14 May 2018 12:41:33 GMT): mahoney1 (Mon, 14 May 2018 12:43:15 GMT): utsha94 (Mon, 14 May 2018 12:43:19 GMT): mahoney1 (Mon, 14 May 2018 12:44:17 GMT): mahoney1 (Mon, 14 May 2018 12:46:04 GMT): Varun2887 (Mon, 14 May 2018 12:50:32 GMT): Varun2887 (Mon, 14 May 2018 12:50:35 GMT): mahoney1 (Mon, 14 May 2018 12:50:59 GMT): Varun2887 (Mon, 14 May 2018 12:51:55 GMT): KindleBitSoln (Mon, 14 May 2018 12:52:19 GMT): Varun2887 (Mon, 14 May 2018 12:53:02 GMT): Varun2887 (Mon, 14 May 2018 12:53:43 GMT): Varun2887 (Mon, 14 May 2018 12:54:03 GMT): mahoney1 (Mon, 14 May 2018 12:59:11 GMT): KindleBitSoln (Mon, 14 May 2018 13:00:41 GMT): sime2 (Mon, 14 May 2018 13:10:35 GMT): sime2 (Mon, 14 May 2018 13:13:38 GMT): jaguarg (Mon, 14 May 2018 13:15:27 GMT): jaguarg (Mon, 14 May 2018 13:15:53 GMT): phanikumar (Mon, 14 May 2018 13:25:45 GMT): mahoney1 (Mon, 14 May 2018 13:34:15 GMT): mahoney1 (Mon, 14 May 2018 13:35:35 GMT): mahoney1 (Mon, 14 May 2018 13:37:09 GMT): mahoney1 (Mon, 14 May 2018 13:37:09 GMT): VadimInshakov (Mon, 14 May 2018 13:53:38 GMT): VadimInshakov (Mon, 14 May 2018 13:54:13 GMT): mahoney1 (Mon, 14 May 2018 13:59:50 GMT): mahoney1 (Mon, 14 May 2018 13:59:50 GMT): suva (Mon, 14 May 2018 14:05:32 GMT): jclin (Mon, 14 May 2018 14:06:39 GMT): VadimInshakov (Mon, 14 May 2018 14:07:04 GMT): VadimInshakov (Mon, 14 May 2018 14:09:19 GMT): mahoney1 (Mon, 14 May 2018 14:14:01 GMT): mahoney1 (Mon, 14 May 2018 14:14:01 GMT): VadimInshakov (Mon, 14 May 2018 14:18:27 GMT): jaguarg (Mon, 14 May 2018 14:28:47 GMT): rthatcher (Mon, 14 May 2018 14:32:00 GMT): VadimInshakov (Mon, 14 May 2018 14:54:25 GMT): VadimInshakov (Mon, 14 May 2018 14:58:12 GMT): VadimInshakov (Mon, 14 May 2018 15:01:26 GMT): VadimInshakov (Mon, 14 May 2018 15:01:26 GMT): mahoney1 (Mon, 14 May 2018 15:03:58 GMT): brandonpbailey (Mon, 14 May 2018 15:04:10 GMT): VadimInshakov (Mon, 14 May 2018 15:09:58 GMT): rthatcher (Mon, 14 May 2018 15:10:29 GMT): rthatcher (Mon, 14 May 2018 15:10:29 GMT): VadimInshakov (Mon, 14 May 2018 15:15:34 GMT): james3443112 (Mon, 14 May 2018 15:49:07 GMT): FrancoisDavid (Mon, 14 May 2018 16:09:43 GMT): VadimInshakov (Mon, 14 May 2018 16:31:07 GMT): mahoney1 (Mon, 14 May 2018 16:51:21 GMT): rthatcher (Mon, 14 May 2018 16:53:58 GMT): VadimInshakov (Mon, 14 May 2018 18:16:33 GMT): srcmake (Mon, 14 May 2018 18:24:04 GMT): tahaf10 (Mon, 14 May 2018 20:58:38 GMT): tahaf10 (Mon, 14 May 2018 21:00:20 GMT): mahoney1 (Mon, 14 May 2018 21:49:44 GMT): mahoney1 (Mon, 14 May 2018 21:49:44 GMT): mahoney1 (Mon, 14 May 2018 21:49:44 GMT): mahoney1 (Mon, 14 May 2018 21:49:44 GMT): mahoney1 (Mon, 14 May 2018 21:49:44 GMT): mahoney1 (Mon, 14 May 2018 21:49:44 GMT): hnadim (Mon, 14 May 2018 22:15:52 GMT): VadimInshakov (Mon, 14 May 2018 22:25:20 GMT): mahoney1 (Mon, 14 May 2018 22:29:55 GMT): mahoney1 (Mon, 14 May 2018 22:29:55 GMT): ikinique (Tue, 15 May 2018 01:43:49 GMT): HoneyShah (Tue, 15 May 2018 02:58:18 GMT): mataide (Tue, 15 May 2018 03:15:00 GMT): mataide (Tue, 15 May 2018 03:15:16 GMT): mataide (Tue, 15 May 2018 03:15:30 GMT): mataide (Tue, 15 May 2018 03:15:38 GMT): mataide (Tue, 15 May 2018 03:16:06 GMT): mataide (Tue, 15 May 2018 03:16:14 GMT): mgcox (Tue, 15 May 2018 03:23:22 GMT): EmanHerawy (Tue, 15 May 2018 04:09:50 GMT): EmanHerawy (Tue, 15 May 2018 04:10:07 GMT): nxmax (Tue, 15 May 2018 05:23:14 GMT): gurpreetsingh1193 (Tue, 15 May 2018 05:57:30 GMT): gurpreetsingh1193 (Tue, 15 May 2018 05:57:49 GMT): Akash76 (Tue, 15 May 2018 06:15:41 GMT): giniz (Tue, 15 May 2018 06:26:35 GMT): HoneyShah (Tue, 15 May 2018 06:42:44 GMT): Varun2887 (Tue, 15 May 2018 06:57:59 GMT): rthatcher (Tue, 15 May 2018 07:54:12 GMT): VadimInshakov (Tue, 15 May 2018 08:02:14 GMT): rthatcher (Tue, 15 May 2018 08:10:23 GMT): mahoney1 (Tue, 15 May 2018 08:10:28 GMT): rthatcher (Tue, 15 May 2018 08:12:42 GMT): mahoney1 (Tue, 15 May 2018 08:23:30 GMT): lipoplus (Tue, 15 May 2018 08:25:25 GMT): lipoplus (Tue, 15 May 2018 08:25:48 GMT): mengluo668 (Tue, 15 May 2018 08:33:51 GMT): reshmamohiyiddin (Tue, 15 May 2018 08:41:14 GMT): reshmamohiyiddin (Tue, 15 May 2018 08:41:14 GMT): reshmamohiyiddin (Tue, 15 May 2018 08:41:14 GMT): rthatcher (Tue, 15 May 2018 08:43:25 GMT): mengluo668 (Tue, 15 May 2018 08:44:01 GMT): mengluo668 (Tue, 15 May 2018 08:44:49 GMT): mengluo668 (Tue, 15 May 2018 08:44:49 GMT): reshmamohiyiddin (Tue, 15 May 2018 08:48:57 GMT): rthatcher (Tue, 15 May 2018 08:49:50 GMT): mengluo668 (Tue, 15 May 2018 08:51:19 GMT): mengluo668 (Tue, 15 May 2018 08:51:19 GMT): rthatcher (Tue, 15 May 2018 08:52:00 GMT): sreeharsha (Tue, 15 May 2018 08:57:56 GMT): mengluo668 (Tue, 15 May 2018 09:04:23 GMT): mengluo668 (Tue, 15 May 2018 09:07:12 GMT): mengluo668 (Tue, 15 May 2018 09:07:12 GMT): rthatcher (Tue, 15 May 2018 09:10:07 GMT): mengluo668 (Tue, 15 May 2018 09:12:08 GMT): lipoplus (Tue, 15 May 2018 09:15:21 GMT): rthatcher (Tue, 15 May 2018 09:18:33 GMT): lipoplus (Tue, 15 May 2018 09:19:49 GMT): koineramitranjan (Tue, 15 May 2018 09:37:25 GMT): rthatcher (Tue, 15 May 2018 09:40:07 GMT): mahoney1 (Tue, 15 May 2018 10:01:12 GMT): varuna82 (Tue, 15 May 2018 10:03:48 GMT): lipoplus (Tue, 15 May 2018 10:33:04 GMT): rthatcher (Tue, 15 May 2018 10:48:09 GMT): mahoney1 (Tue, 15 May 2018 10:55:58 GMT): sbookworm (Tue, 15 May 2018 10:56:12 GMT): mengluo668 (Tue, 15 May 2018 11:04:15 GMT): mengluo668 (Tue, 15 May 2018 11:04:31 GMT): mahoney1 (Tue, 15 May 2018 11:12:39 GMT): mengluo668 (Tue, 15 May 2018 11:15:47 GMT): varuna82 (Tue, 15 May 2018 11:44:13 GMT): Varun2887 (Tue, 15 May 2018 11:51:06 GMT): gurpreetsingh1193 (Tue, 15 May 2018 11:58:46 GMT): mahoney1 (Tue, 15 May 2018 12:07:01 GMT): mahoney1 (Tue, 15 May 2018 12:08:08 GMT): CorentinPacaud (Tue, 15 May 2018 12:22:46 GMT): CorentinPacaud (Tue, 15 May 2018 12:23:01 GMT): ApurvTandon (Tue, 15 May 2018 12:29:27 GMT): rohitkhatri (Tue, 15 May 2018 12:49:00 GMT): ApurvTandon (Tue, 15 May 2018 12:54:56 GMT): tdespenza (Tue, 15 May 2018 13:27:20 GMT): rthatcher (Tue, 15 May 2018 13:42:12 GMT): ApurvTandon (Tue, 15 May 2018 13:49:23 GMT): ApurvTandon (Tue, 15 May 2018 13:50:02 GMT): ApurvTandon (Tue, 15 May 2018 13:51:31 GMT): rthatcher (Tue, 15 May 2018 14:16:04 GMT): mataide (Tue, 15 May 2018 14:20:54 GMT): mataide (Tue, 15 May 2018 14:21:31 GMT): rthatcher (Tue, 15 May 2018 14:47:19 GMT): RahulSingh 6 (Tue, 15 May 2018 15:10:36 GMT): RahulSingh 6 (Tue, 15 May 2018 15:12:03 GMT): mataide (Tue, 15 May 2018 15:17:37 GMT): mataide (Tue, 15 May 2018 15:18:26 GMT): rthatcher (Tue, 15 May 2018 15:39:49 GMT): etrn (Tue, 15 May 2018 15:53:24 GMT): nagap (Tue, 15 May 2018 16:12:23 GMT): rthatcher (Tue, 15 May 2018 16:13:02 GMT): RahulSingh 6 (Tue, 15 May 2018 16:14:39 GMT): rthatcher (Tue, 15 May 2018 16:24:24 GMT): mahoney1 (Tue, 15 May 2018 16:52:55 GMT): mahoney1 (Tue, 15 May 2018 17:01:21 GMT): prmdmshra (Tue, 15 May 2018 18:19:55 GMT): gravity (Tue, 15 May 2018 18:29:43 GMT): gravity (Tue, 15 May 2018 18:30:54 GMT): ApurvTandon (Tue, 15 May 2018 18:46:21 GMT): MasthanbeeShaik (Tue, 15 May 2018 19:16:58 GMT): MasthanbeeShaik (Tue, 15 May 2018 19:17:00 GMT): psprings (Tue, 15 May 2018 20:30:08 GMT): annumberhocker (Tue, 15 May 2018 22:11:32 GMT): danultimate (Tue, 15 May 2018 22:23:16 GMT): umapm113 (Wed, 16 May 2018 02:30:16 GMT): umapm113 (Wed, 16 May 2018 02:32:19 GMT): jiteshukani2006 (Wed, 16 May 2018 04:23:03 GMT): jiteshukani2006 (Wed, 16 May 2018 04:23:03 GMT): jiteshukani2006 (Wed, 16 May 2018 04:23:03 GMT): jiteshukani2006 (Wed, 16 May 2018 04:23:52 GMT): jiteshukani2006 (Wed, 16 May 2018 04:24:33 GMT): jiteshukani2006 (Wed, 16 May 2018 04:28:16 GMT): Akash76 (Wed, 16 May 2018 04:43:28 GMT): gurpreetsingh1193 (Wed, 16 May 2018 05:22:09 GMT): AnirudhaKharabe (Wed, 16 May 2018 05:25:02 GMT): AnirudhaKharabe (Wed, 16 May 2018 05:25:07 GMT): hyperledger-bot (Wed, 16 May 2018 05:25:08 GMT): AnirudhaKharabe (Wed, 16 May 2018 05:26:01 GMT): suva (Wed, 16 May 2018 05:48:42 GMT): suva (Wed, 16 May 2018 05:49:24 GMT): suva (Wed, 16 May 2018 05:49:32 GMT): suva (Wed, 16 May 2018 06:28:50 GMT): Varun2887 (Wed, 16 May 2018 06:37:29 GMT): suva (Wed, 16 May 2018 06:42:08 GMT): gurpreetsingh1193 (Wed, 16 May 2018 06:51:11 GMT): Varun2887 (Wed, 16 May 2018 06:58:41 GMT): varuna82 (Wed, 16 May 2018 06:59:38 GMT): sreeharsha (Wed, 16 May 2018 07:02:05 GMT): suva (Wed, 16 May 2018 07:02:08 GMT): varuna82 (Wed, 16 May 2018 07:02:15 GMT): Varun2887 (Wed, 16 May 2018 07:02:28 GMT): suva (Wed, 16 May 2018 07:02:50 GMT): Varun2887 (Wed, 16 May 2018 07:02:59 GMT): suva (Wed, 16 May 2018 07:03:04 GMT): Varun2887 (Wed, 16 May 2018 07:03:15 GMT): suva (Wed, 16 May 2018 07:03:26 GMT): KindleBitSoln (Wed, 16 May 2018 07:06:45 GMT): KindleBitSoln (Wed, 16 May 2018 07:07:35 GMT): Varun2887 (Wed, 16 May 2018 07:11:49 GMT): Varun2887 (Wed, 16 May 2018 07:12:15 GMT): mahoney1 (Wed, 16 May 2018 07:13:25 GMT): KindleBitSoln (Wed, 16 May 2018 07:14:36 GMT): KindleBitSoln (Wed, 16 May 2018 07:14:42 GMT): Varun2887 (Wed, 16 May 2018 07:14:58 GMT): KindleBitSoln (Wed, 16 May 2018 07:15:12 GMT): KindleBitSoln (Wed, 16 May 2018 07:15:28 GMT): Varun2887 (Wed, 16 May 2018 07:16:20 GMT): Varun2887 (Wed, 16 May 2018 07:16:47 GMT): Varun2887 (Wed, 16 May 2018 07:17:06 GMT): KindleBitSoln (Wed, 16 May 2018 07:17:53 GMT): Varun2887 (Wed, 16 May 2018 07:18:16 GMT): KindleBitSoln (Wed, 16 May 2018 07:18:54 GMT): KindleBitSoln (Wed, 16 May 2018 07:19:09 GMT): Varun2887 (Wed, 16 May 2018 07:19:36 GMT): Varun2887 (Wed, 16 May 2018 07:19:38 GMT): Varun2887 (Wed, 16 May 2018 07:19:42 GMT): KindleBitSoln (Wed, 16 May 2018 07:24:47 GMT): FlorentinoSainz (Wed, 16 May 2018 07:26:46 GMT): FlorentinoSainz (Wed, 16 May 2018 07:27:27 GMT): Varun2887 (Wed, 16 May 2018 07:34:26 GMT): Varun2887 (Wed, 16 May 2018 07:35:23 GMT): Varun2887 (Wed, 16 May 2018 07:53:47 GMT): rthatcher (Wed, 16 May 2018 08:29:07 GMT): rthatcher (Wed, 16 May 2018 08:33:14 GMT): rthatcher (Wed, 16 May 2018 08:42:35 GMT): rthatcher (Wed, 16 May 2018 08:47:28 GMT): mahoney1 (Wed, 16 May 2018 08:50:48 GMT): wangrangli (Wed, 16 May 2018 08:58:25 GMT): Mahesh-Raj (Wed, 16 May 2018 08:59:54 GMT): Varun2887 (Wed, 16 May 2018 09:18:37 GMT): gurpreetsingh1193 (Wed, 16 May 2018 09:20:53 GMT): Varun2887 (Wed, 16 May 2018 09:21:27 GMT): prmdmshra (Wed, 16 May 2018 09:23:00 GMT): rthatcher (Wed, 16 May 2018 09:27:26 GMT): rthatcher (Wed, 16 May 2018 09:29:57 GMT): Varun2887 (Wed, 16 May 2018 09:30:15 GMT): Varun2887 (Wed, 16 May 2018 09:30:29 GMT): Varun2887 (Wed, 16 May 2018 09:30:33 GMT): suva (Wed, 16 May 2018 09:33:56 GMT): varuna82 (Wed, 16 May 2018 09:35:12 GMT): Mahesh-Raj (Wed, 16 May 2018 09:37:04 GMT): verofin (Wed, 16 May 2018 09:48:58 GMT): uber.twin (Wed, 16 May 2018 10:05:34 GMT): verofin (Wed, 16 May 2018 10:21:45 GMT): verofin (Wed, 16 May 2018 10:21:45 GMT): verofin (Wed, 16 May 2018 10:21:45 GMT): rthatcher (Wed, 16 May 2018 10:34:12 GMT): uber.twin (Wed, 16 May 2018 10:36:12 GMT): uber.twin (Wed, 16 May 2018 10:36:49 GMT): uber.twin (Wed, 16 May 2018 10:37:33 GMT): rthatcher (Wed, 16 May 2018 10:37:56 GMT): uber.twin (Wed, 16 May 2018 10:38:43 GMT): verofin (Wed, 16 May 2018 10:56:21 GMT): verofin (Wed, 16 May 2018 10:56:21 GMT): VolodymyrKravchuk (Wed, 16 May 2018 11:14:53 GMT): RahulSingh 6 (Wed, 16 May 2018 11:17:53 GMT): anshulkathuria34 (Wed, 16 May 2018 11:21:11 GMT): d8bhatta (Wed, 16 May 2018 11:27:45 GMT): d8bhatta (Wed, 16 May 2018 11:28:14 GMT): verofin (Wed, 16 May 2018 11:29:51 GMT): aneb (Wed, 16 May 2018 11:40:59 GMT): rthatcher (Wed, 16 May 2018 11:47:40 GMT): AnilKharabe (Wed, 16 May 2018 11:51:00 GMT): AnilKharabe (Wed, 16 May 2018 11:52:28 GMT): AnilKharabe (Wed, 16 May 2018 12:02:11 GMT): silentinfotech (Wed, 16 May 2018 12:02:13 GMT): rthatcher (Wed, 16 May 2018 12:06:57 GMT): rthatcher (Wed, 16 May 2018 12:09:03 GMT): rthatcher (Wed, 16 May 2018 12:10:47 GMT): AnilKharabe (Wed, 16 May 2018 12:13:47 GMT): AnilKharabe (Wed, 16 May 2018 12:14:38 GMT): verofin (Wed, 16 May 2018 12:14:52 GMT): IceFox (Wed, 16 May 2018 12:24:32 GMT): IceFox (Wed, 16 May 2018 12:28:13 GMT): rthatcher (Wed, 16 May 2018 12:33:52 GMT): CorentinPacaud (Wed, 16 May 2018 12:36:37 GMT): rthatcher (Wed, 16 May 2018 12:36:40 GMT): ApurvTandon (Wed, 16 May 2018 12:37:07 GMT): rthatcher (Wed, 16 May 2018 12:37:52 GMT): CorentinPacaud (Wed, 16 May 2018 12:39:04 GMT): rthatcher (Wed, 16 May 2018 12:41:08 GMT): chandrasekarangengadharan (Wed, 16 May 2018 12:45:33 GMT): chandrasekarangengadharan (Wed, 16 May 2018 12:45:54 GMT): mahoney1 (Wed, 16 May 2018 12:56:55 GMT): mahoney1 (Wed, 16 May 2018 13:10:39 GMT): mahoney1 (Wed, 16 May 2018 13:10:39 GMT): mahoney1 (Wed, 16 May 2018 13:21:02 GMT): verofin (Wed, 16 May 2018 13:33:12 GMT): uber.twin (Wed, 16 May 2018 13:39:22 GMT): uber.twin (Wed, 16 May 2018 13:39:22 GMT): mbwhite (Wed, 16 May 2018 13:47:45 GMT): uber.twin (Wed, 16 May 2018 13:52:49 GMT): uber.twin (Wed, 16 May 2018 13:52:49 GMT): uber.twin (Wed, 16 May 2018 13:52:49 GMT): uber.twin (Wed, 16 May 2018 13:52:49 GMT): uber.twin (Wed, 16 May 2018 14:00:21 GMT): pedromlcosta (Wed, 16 May 2018 14:00:34 GMT): mataide (Wed, 16 May 2018 14:01:47 GMT): rthatcher (Wed, 16 May 2018 14:12:01 GMT): mataide (Wed, 16 May 2018 14:18:51 GMT): tdespenza (Wed, 16 May 2018 14:24:12 GMT): mahoney1 (Wed, 16 May 2018 14:35:04 GMT): mahoney1 (Wed, 16 May 2018 14:35:04 GMT): mataide (Wed, 16 May 2018 14:38:46 GMT): tdespenza (Wed, 16 May 2018 14:40:03 GMT): tdespenza (Wed, 16 May 2018 14:40:03 GMT): mbwhite (Wed, 16 May 2018 14:54:15 GMT): mbwhite (Wed, 16 May 2018 14:56:13 GMT): CorentinPacaud (Wed, 16 May 2018 15:03:15 GMT): mataide (Wed, 16 May 2018 15:12:38 GMT): mataide (Wed, 16 May 2018 15:13:32 GMT): rthatcher (Wed, 16 May 2018 15:18:58 GMT): mataide (Wed, 16 May 2018 15:22:33 GMT): rthatcher (Wed, 16 May 2018 15:23:34 GMT): mataide (Wed, 16 May 2018 15:24:48 GMT): CorentinPacaud (Wed, 16 May 2018 15:24:50 GMT): CorentinPacaud (Wed, 16 May 2018 15:26:05 GMT): rthatcher (Wed, 16 May 2018 15:29:43 GMT): uber.twin (Wed, 16 May 2018 15:40:59 GMT): uber.twin (Wed, 16 May 2018 15:40:59 GMT): uber.twin (Wed, 16 May 2018 15:40:59 GMT): uber.twin (Wed, 16 May 2018 15:40:59 GMT): FlorentinoSainz (Wed, 16 May 2018 15:44:33 GMT): FlorentinoSainz (Wed, 16 May 2018 15:46:27 GMT): rthatcher (Wed, 16 May 2018 16:19:52 GMT): rthatcher (Wed, 16 May 2018 16:19:52 GMT): acbellini (Wed, 16 May 2018 16:34:26 GMT): Percival Lucena (Wed, 16 May 2018 17:33:28 GMT): ameyaraje (Wed, 16 May 2018 19:07:19 GMT): ameyaraje (Wed, 16 May 2018 19:07:38 GMT): VadimInshakov (Wed, 16 May 2018 19:22:39 GMT): VadimInshakov (Wed, 16 May 2018 19:22:39 GMT): VadimInshakov (Wed, 16 May 2018 19:25:58 GMT): mataide (Wed, 16 May 2018 19:54:38 GMT): mataide (Wed, 16 May 2018 20:41:53 GMT): dazohan (Wed, 16 May 2018 20:51:42 GMT): ameyaraje (Wed, 16 May 2018 21:08:53 GMT): ameyaraje (Wed, 16 May 2018 21:21:03 GMT): mataide (Wed, 16 May 2018 21:24:45 GMT): Buckley404 (Wed, 16 May 2018 21:26:31 GMT): mbwhite (Wed, 16 May 2018 21:53:48 GMT): mataide (Wed, 16 May 2018 22:20:29 GMT): gurpret7 (Thu, 17 May 2018 00:24:28 GMT): gurpret7 (Thu, 17 May 2018 00:24:33 GMT): mataide (Thu, 17 May 2018 01:08:54 GMT): mataide (Thu, 17 May 2018 01:09:10 GMT): prmdmshra (Thu, 17 May 2018 03:11:35 GMT): BhaveshPatadiya (Thu, 17 May 2018 03:14:56 GMT): BhaveshPatadiya (Thu, 17 May 2018 03:14:56 GMT): Varun2887 (Thu, 17 May 2018 03:51:28 GMT): gurpret7 (Thu, 17 May 2018 03:58:40 GMT): gurpret7 (Thu, 17 May 2018 03:58:40 GMT): gurpret7 (Thu, 17 May 2018 04:03:46 GMT): coveloper (Thu, 17 May 2018 04:12:55 GMT): Varun2887 (Thu, 17 May 2018 04:26:13 GMT): Varun2887 (Thu, 17 May 2018 04:26:13 GMT): Varun2887 (Thu, 17 May 2018 04:26:21 GMT): tim-hub (Thu, 17 May 2018 05:02:54 GMT): mgcox (Thu, 17 May 2018 05:16:23 GMT): mgcox (Thu, 17 May 2018 05:16:44 GMT): mgcox (Thu, 17 May 2018 05:33:51 GMT): mgcox (Thu, 17 May 2018 05:33:56 GMT): mgcox (Thu, 17 May 2018 05:34:15 GMT): chandrasekarangengadharan (Thu, 17 May 2018 05:40:48 GMT): KindleBitSoln (Thu, 17 May 2018 05:58:34 GMT): KindleBitSoln (Thu, 17 May 2018 06:00:34 GMT): tim-hub (Thu, 17 May 2018 06:20:42 GMT): Varun2887 (Thu, 17 May 2018 06:28:10 GMT): cloudtester (Thu, 17 May 2018 06:42:02 GMT): cloudtester (Thu, 17 May 2018 06:42:02 GMT): FlorentinoSainz (Thu, 17 May 2018 07:16:10 GMT): FlorentinoSainz (Thu, 17 May 2018 07:16:13 GMT): FlorentinoSainz (Thu, 17 May 2018 07:16:23 GMT): FlorentinoSainz (Thu, 17 May 2018 07:16:46 GMT): jaguarg (Thu, 17 May 2018 07:24:39 GMT): FlorentinoSainz (Thu, 17 May 2018 07:25:18 GMT): FlorentinoSainz (Thu, 17 May 2018 07:25:37 GMT): CorentinPacaud (Thu, 17 May 2018 07:41:42 GMT): CorentinPacaud (Thu, 17 May 2018 07:50:39 GMT): jaguarg (Thu, 17 May 2018 07:52:25 GMT): FlorentinoSainz (Thu, 17 May 2018 08:03:52 GMT): FlorentinoSainz (Thu, 17 May 2018 08:04:09 GMT): jaguarg (Thu, 17 May 2018 08:09:10 GMT): jaguarg (Thu, 17 May 2018 08:17:22 GMT): FlorentinoSainz (Thu, 17 May 2018 08:19:07 GMT): FlorentinoSainz (Thu, 17 May 2018 08:19:10 GMT): FlorentinoSainz (Thu, 17 May 2018 08:19:18 GMT): Varun2887 (Thu, 17 May 2018 08:19:34 GMT): Varun2887 (Thu, 17 May 2018 08:19:37 GMT): waleed (Thu, 17 May 2018 08:22:36 GMT): Varun2887 (Thu, 17 May 2018 08:22:48 GMT): rthatcher (Thu, 17 May 2018 08:23:32 GMT): waleed (Thu, 17 May 2018 08:23:56 GMT): waleed (Thu, 17 May 2018 08:24:40 GMT): rthatcher (Thu, 17 May 2018 08:25:09 GMT): Varun2887 (Thu, 17 May 2018 08:32:11 GMT): Varun2887 (Thu, 17 May 2018 08:32:31 GMT): rthatcher (Thu, 17 May 2018 08:42:44 GMT): Varun2887 (Thu, 17 May 2018 08:45:12 GMT): Varun2887 (Thu, 17 May 2018 08:48:07 GMT): Varun2887 (Thu, 17 May 2018 08:48:26 GMT): uber.twin (Thu, 17 May 2018 09:01:30 GMT): uber.twin (Thu, 17 May 2018 09:01:30 GMT): uber.twin (Thu, 17 May 2018 09:01:30 GMT): uber.twin (Thu, 17 May 2018 09:01:30 GMT): uber.twin (Thu, 17 May 2018 09:01:30 GMT): uber.twin (Thu, 17 May 2018 09:01:30 GMT): rthatcher (Thu, 17 May 2018 09:06:37 GMT): rthatcher (Thu, 17 May 2018 09:11:17 GMT): gurpret7 (Thu, 17 May 2018 09:18:03 GMT): rthatcher (Thu, 17 May 2018 09:21:27 GMT): waleed (Thu, 17 May 2018 09:45:14 GMT): Varun2887 (Thu, 17 May 2018 09:49:20 GMT): Varun2887 (Thu, 17 May 2018 09:50:18 GMT): Varun2887 (Thu, 17 May 2018 09:50:48 GMT): monarch 1 (Thu, 17 May 2018 09:51:20 GMT): waleed (Thu, 17 May 2018 09:58:21 GMT): waleed (Thu, 17 May 2018 09:58:21 GMT): waleed (Thu, 17 May 2018 09:58:21 GMT): FlorentinoSainz (Thu, 17 May 2018 10:02:42 GMT): FlorentinoSainz (Thu, 17 May 2018 10:02:51 GMT): FlorentinoSainz (Thu, 17 May 2018 10:08:06 GMT): VamzR (Thu, 17 May 2018 10:13:35 GMT): PallabPaul (Thu, 17 May 2018 10:18:02 GMT): Varun2887 (Thu, 17 May 2018 10:18:04 GMT): Varun2887 (Thu, 17 May 2018 10:18:11 GMT): VamzR (Thu, 17 May 2018 10:20:00 GMT): Varun2887 (Thu, 17 May 2018 11:07:24 GMT): lipoplus (Thu, 17 May 2018 11:34:57 GMT): lipoplus (Thu, 17 May 2018 11:35:04 GMT): GrondinLaurent (Thu, 17 May 2018 11:37:40 GMT): GrondinLaurent (Thu, 17 May 2018 11:40:05 GMT): GrondinLaurent (Thu, 17 May 2018 11:40:05 GMT): GrondinLaurent (Thu, 17 May 2018 11:40:05 GMT): mengluo668 (Thu, 17 May 2018 11:49:22 GMT): mengluo668 (Thu, 17 May 2018 11:49:22 GMT): mengluo668 (Thu, 17 May 2018 11:49:22 GMT): rthatcher (Thu, 17 May 2018 12:08:22 GMT): rthatcher (Thu, 17 May 2018 12:12:00 GMT): rthatcher (Thu, 17 May 2018 12:15:57 GMT): GrondinLaurent (Thu, 17 May 2018 12:19:05 GMT): GrondinLaurent (Thu, 17 May 2018 12:19:05 GMT): mengluo668 (Thu, 17 May 2018 12:26:17 GMT): rthatcher (Thu, 17 May 2018 12:30:20 GMT): HarshithaC (Thu, 17 May 2018 12:31:59 GMT): AshitoshSalokhe (Thu, 17 May 2018 12:40:44 GMT): AshitoshSalokhe (Thu, 17 May 2018 12:42:20 GMT): GrondinLaurent (Thu, 17 May 2018 12:43:23 GMT): GrondinLaurent (Thu, 17 May 2018 12:43:25 GMT): GrondinLaurent (Thu, 17 May 2018 12:43:25 GMT): rthatcher (Thu, 17 May 2018 12:46:18 GMT): GrondinLaurent (Thu, 17 May 2018 12:49:47 GMT): brian.leppez (Thu, 17 May 2018 13:21:45 GMT): prmdmshra (Thu, 17 May 2018 13:30:29 GMT): ameyaraje (Thu, 17 May 2018 13:48:06 GMT): mengluo668 (Thu, 17 May 2018 13:50:32 GMT): mengluo668 (Thu, 17 May 2018 13:50:32 GMT): mengluo668 (Thu, 17 May 2018 13:50:32 GMT): mengluo668 (Thu, 17 May 2018 13:50:32 GMT): mengluo668 (Thu, 17 May 2018 13:50:32 GMT): RahulSingh 6 (Thu, 17 May 2018 14:06:24 GMT): varunagarwal (Thu, 17 May 2018 14:10:04 GMT): mall3i (Thu, 17 May 2018 14:29:40 GMT): pedromlcosta (Thu, 17 May 2018 14:34:33 GMT): PareshVarde (Thu, 17 May 2018 14:39:14 GMT): PareshVarde (Thu, 17 May 2018 14:39:43 GMT): PareshVarde (Thu, 17 May 2018 14:40:46 GMT): pedromlcosta (Thu, 17 May 2018 14:41:53 GMT): lipoplus (Thu, 17 May 2018 14:48:33 GMT): rthatcher (Thu, 17 May 2018 14:54:23 GMT): rthatcher (Thu, 17 May 2018 14:57:48 GMT): pedromlcosta (Thu, 17 May 2018 15:04:12 GMT): pedromlcosta (Thu, 17 May 2018 15:04:59 GMT): pedromlcosta (Thu, 17 May 2018 15:04:59 GMT): pedromlcosta (Thu, 17 May 2018 15:04:59 GMT): ameyaraje (Thu, 17 May 2018 15:13:48 GMT): brian.leppez (Thu, 17 May 2018 15:25:03 GMT): ameyaraje (Thu, 17 May 2018 15:26:51 GMT): ameyaraje (Thu, 17 May 2018 15:41:47 GMT): acbellini (Thu, 17 May 2018 16:07:01 GMT): acbellini (Thu, 17 May 2018 16:08:40 GMT): rthatcher (Thu, 17 May 2018 16:18:54 GMT): acbellini (Thu, 17 May 2018 16:19:08 GMT): szewong (Thu, 17 May 2018 17:02:56 GMT): JayPandya (Thu, 17 May 2018 18:15:23 GMT): vinimartinson (Thu, 17 May 2018 18:46:16 GMT): vinimartinson (Thu, 17 May 2018 19:09:10 GMT): vinimartinson (Thu, 17 May 2018 19:09:10 GMT): FelipeSantana (Thu, 17 May 2018 19:13:47 GMT): FelipeSantana (Thu, 17 May 2018 19:15:58 GMT): ApurvTandon (Thu, 17 May 2018 19:29:42 GMT): ApurvTandon (Thu, 17 May 2018 19:29:42 GMT): absingh0 (Thu, 17 May 2018 19:33:54 GMT): FlorentinoSainz (Thu, 17 May 2018 20:39:31 GMT): FlorentinoSainz (Thu, 17 May 2018 20:39:38 GMT): FlorentinoSainz (Thu, 17 May 2018 20:40:41 GMT): davidkel (Thu, 17 May 2018 20:50:36 GMT): FlorentinoSainz (Thu, 17 May 2018 20:53:05 GMT): davidkel (Thu, 17 May 2018 20:56:00 GMT): FlorentinoSainz (Thu, 17 May 2018 20:56:36 GMT): FlorentinoSainz (Thu, 17 May 2018 20:57:06 GMT): JordanDearsley (Thu, 17 May 2018 21:47:42 GMT): jsmithmap (Thu, 17 May 2018 22:46:16 GMT): patrickodhiambo (Fri, 18 May 2018 02:53:36 GMT): tdespenza (Fri, 18 May 2018 03:55:43 GMT): Varun2887 (Fri, 18 May 2018 04:43:05 GMT): shaikathaque (Fri, 18 May 2018 05:22:15 GMT): JesonGodilo (Fri, 18 May 2018 07:12:40 GMT): JesonGodilo (Fri, 18 May 2018 07:12:58 GMT): JesonGodilo (Fri, 18 May 2018 07:13:16 GMT): JesonGodilo (Fri, 18 May 2018 07:13:34 GMT): JesonGodilo (Fri, 18 May 2018 07:14:26 GMT): FlorentinoSainz (Fri, 18 May 2018 07:15:00 GMT): FlorentinoSainz (Fri, 18 May 2018 07:15:10 GMT): JesonGodilo (Fri, 18 May 2018 07:15:25 GMT): JesonGodilo (Fri, 18 May 2018 07:15:32 GMT): JesonGodilo (Fri, 18 May 2018 07:15:49 GMT): FlorentinoSainz (Fri, 18 May 2018 07:16:03 GMT): JesonGodilo (Fri, 18 May 2018 07:16:41 GMT): FlorentinoSainz (Fri, 18 May 2018 07:18:32 GMT): FlorentinoSainz (Fri, 18 May 2018 07:18:36 GMT): JesonGodilo (Fri, 18 May 2018 07:18:51 GMT): JesonGodilo (Fri, 18 May 2018 07:19:00 GMT): JesonGodilo (Fri, 18 May 2018 07:19:11 GMT): FlorentinoSainz (Fri, 18 May 2018 07:19:44 GMT): FlorentinoSainz (Fri, 18 May 2018 07:19:46 GMT): JesonGodilo (Fri, 18 May 2018 07:19:59 GMT): FlorentinoSainz (Fri, 18 May 2018 07:22:08 GMT): FlorentinoSainz (Fri, 18 May 2018 07:22:10 GMT): JesonGodilo (Fri, 18 May 2018 07:22:19 GMT): FlorentinoSainz (Fri, 18 May 2018 07:22:21 GMT): FlorentinoSainz (Fri, 18 May 2018 07:22:29 GMT): JesonGodilo (Fri, 18 May 2018 07:22:37 GMT): JesonGodilo (Fri, 18 May 2018 07:31:29 GMT): rrabadia89 (Fri, 18 May 2018 07:44:56 GMT): absingh0 (Fri, 18 May 2018 07:58:14 GMT): rthatcher (Fri, 18 May 2018 08:35:09 GMT): rthatcher (Fri, 18 May 2018 08:38:10 GMT): mahoney1 (Fri, 18 May 2018 08:46:33 GMT): absingh0 (Fri, 18 May 2018 08:54:15 GMT): HoneyShah (Fri, 18 May 2018 09:23:16 GMT): HoneyShah (Fri, 18 May 2018 09:23:16 GMT): ApurvTandon (Fri, 18 May 2018 09:29:25 GMT): akhilaggarwal (Fri, 18 May 2018 09:30:39 GMT): mengluo668 (Fri, 18 May 2018 09:31:06 GMT): mengluo668 (Fri, 18 May 2018 09:31:06 GMT): mengluo668 (Fri, 18 May 2018 09:31:06 GMT): mengluo668 (Fri, 18 May 2018 09:31:06 GMT): mengluo668 (Fri, 18 May 2018 09:31:06 GMT): mengluo668 (Fri, 18 May 2018 09:31:06 GMT): mengluo668 (Fri, 18 May 2018 09:31:06 GMT): mengluo668 (Fri, 18 May 2018 09:31:06 GMT): rthatcher (Fri, 18 May 2018 09:53:20 GMT): rthatcher (Fri, 18 May 2018 10:15:12 GMT): d8bhatta (Fri, 18 May 2018 10:37:36 GMT): d8bhatta (Fri, 18 May 2018 10:37:41 GMT): d8bhatta (Fri, 18 May 2018 10:37:43 GMT): d8bhatta (Fri, 18 May 2018 10:38:27 GMT): rthatcher (Fri, 18 May 2018 10:42:22 GMT): d8bhatta (Fri, 18 May 2018 10:42:56 GMT): nitishbhardwaj19 (Fri, 18 May 2018 10:43:36 GMT): CarrereArnaud (Fri, 18 May 2018 10:45:05 GMT): qwertabi (Fri, 18 May 2018 10:55:10 GMT): d8bhatta (Fri, 18 May 2018 11:03:18 GMT): rthatcher (Fri, 18 May 2018 11:05:30 GMT): d8bhatta (Fri, 18 May 2018 11:07:55 GMT): rthatcher (Fri, 18 May 2018 11:08:05 GMT): rthatcher (Fri, 18 May 2018 11:09:32 GMT): mengluo668 (Fri, 18 May 2018 11:09:53 GMT): d8bhatta (Fri, 18 May 2018 11:25:34 GMT): d8bhatta (Fri, 18 May 2018 11:25:56 GMT): AnilKharabe (Fri, 18 May 2018 11:49:53 GMT): silentinfotech (Fri, 18 May 2018 11:50:58 GMT): silentinfotech (Fri, 18 May 2018 11:51:10 GMT): nitishbhardwaj19 (Fri, 18 May 2018 11:53:36 GMT): tdespenza (Fri, 18 May 2018 12:10:47 GMT): tdespenza (Fri, 18 May 2018 12:10:47 GMT): nitishbhardwaj19 (Fri, 18 May 2018 12:12:00 GMT): nitishbhardwaj19 (Fri, 18 May 2018 12:12:00 GMT): pedromlcosta (Fri, 18 May 2018 12:17:39 GMT): rthatcher (Fri, 18 May 2018 12:21:37 GMT): AnilKharabe (Fri, 18 May 2018 12:26:47 GMT): nitishbhardwaj19 (Fri, 18 May 2018 12:31:26 GMT): nitishbhardwaj19 (Fri, 18 May 2018 12:31:26 GMT): GrondinLaurent (Fri, 18 May 2018 12:41:42 GMT): GrondinLaurent (Fri, 18 May 2018 12:41:42 GMT): GrondinLaurent (Fri, 18 May 2018 12:41:42 GMT): GrondinLaurent (Fri, 18 May 2018 12:41:42 GMT): GrondinLaurent (Fri, 18 May 2018 12:41:42 GMT): rthatcher (Fri, 18 May 2018 12:47:21 GMT): Vanitha (Fri, 18 May 2018 12:52:07 GMT): Vanitha (Fri, 18 May 2018 12:52:56 GMT): chandrasekarangengadharan (Fri, 18 May 2018 12:55:19 GMT): rthatcher (Fri, 18 May 2018 13:04:00 GMT): rthatcher (Fri, 18 May 2018 13:04:00 GMT): rthatcher (Fri, 18 May 2018 13:04:00 GMT): VadimInshakov (Fri, 18 May 2018 13:09:18 GMT): GrondinLaurent (Fri, 18 May 2018 13:12:37 GMT): rthatcher (Fri, 18 May 2018 13:21:50 GMT): GrondinLaurent (Fri, 18 May 2018 13:28:59 GMT): GrondinLaurent (Fri, 18 May 2018 13:29:27 GMT): GrondinLaurent (Fri, 18 May 2018 13:29:27 GMT): GrondinLaurent (Fri, 18 May 2018 13:29:27 GMT): rthatcher (Fri, 18 May 2018 13:31:48 GMT): GrondinLaurent (Fri, 18 May 2018 13:33:07 GMT): rthatcher (Fri, 18 May 2018 13:34:07 GMT): Vanitha (Fri, 18 May 2018 13:34:33 GMT): rthatcher (Fri, 18 May 2018 13:37:50 GMT): Vanitha (Fri, 18 May 2018 13:38:40 GMT): Vanitha (Fri, 18 May 2018 13:38:49 GMT): VadimInshakov (Fri, 18 May 2018 13:39:07 GMT): rthatcher (Fri, 18 May 2018 13:42:28 GMT): tdespenza (Fri, 18 May 2018 13:45:59 GMT): rthatcher (Fri, 18 May 2018 13:48:12 GMT): rthatcher (Fri, 18 May 2018 13:50:36 GMT): VadimInshakov (Fri, 18 May 2018 13:50:57 GMT): Vanitha (Fri, 18 May 2018 13:51:32 GMT): tdespenza (Fri, 18 May 2018 13:51:33 GMT): GrondinLaurent (Fri, 18 May 2018 13:52:04 GMT): GrondinLaurent (Fri, 18 May 2018 13:52:04 GMT): rthatcher (Fri, 18 May 2018 13:54:17 GMT): GrondinLaurent (Fri, 18 May 2018 13:56:00 GMT): rthatcher (Fri, 18 May 2018 14:02:09 GMT): PareshVarde (Fri, 18 May 2018 14:27:44 GMT): header340 (Fri, 18 May 2018 15:07:49 GMT): cliveb (Fri, 18 May 2018 15:30:25 GMT): Vanitha (Fri, 18 May 2018 15:36:32 GMT): rthatcher (Fri, 18 May 2018 16:12:26 GMT): acbellini (Fri, 18 May 2018 17:22:51 GMT): acbellini (Fri, 18 May 2018 17:23:03 GMT): mataide (Fri, 18 May 2018 19:28:17 GMT): mataide (Fri, 18 May 2018 19:29:14 GMT): rthatcher (Fri, 18 May 2018 23:33:07 GMT): mataide (Fri, 18 May 2018 23:49:19 GMT): PallabPaul (Sat, 19 May 2018 01:45:39 GMT): GoodSamaritan (Sat, 19 May 2018 05:55:41 GMT): varunagarwal (Sat, 19 May 2018 07:57:48 GMT): mengluo668 (Sat, 19 May 2018 08:33:50 GMT): davidkel (Sat, 19 May 2018 08:45:17 GMT): mengluo668 (Sat, 19 May 2018 08:57:45 GMT): jahid (Sat, 19 May 2018 09:10:59 GMT): lvndry (Sat, 19 May 2018 10:18:47 GMT): lvndry (Sat, 19 May 2018 10:37:12 GMT): reshmamohiyiddin (Sat, 19 May 2018 12:19:48 GMT): reshmamohiyiddin (Sat, 19 May 2018 12:19:48 GMT): lvndry (Sat, 19 May 2018 12:25:48 GMT): reshmamohiyiddin (Sat, 19 May 2018 12:27:58 GMT): VadimInshakov (Sat, 19 May 2018 15:55:30 GMT): VadimInshakov (Sat, 19 May 2018 15:55:30 GMT): robwahl (Sat, 19 May 2018 16:08:44 GMT): davidkel (Sat, 19 May 2018 16:30:54 GMT): lvndry (Sat, 19 May 2018 18:00:39 GMT): Buckley404 (Sat, 19 May 2018 18:04:08 GMT): VadimInshakov (Sat, 19 May 2018 19:07:31 GMT): VadimInshakov (Sat, 19 May 2018 19:15:55 GMT): mataide (Sun, 20 May 2018 00:02:24 GMT): mataide (Sun, 20 May 2018 00:03:01 GMT): mataide (Sun, 20 May 2018 00:04:21 GMT): ruairih (Sun, 20 May 2018 00:29:56 GMT): SeetharamanNarayanan (Sun, 20 May 2018 03:00:22 GMT): SeetharamanNarayanan (Sun, 20 May 2018 03:07:00 GMT): SeetharamanNarayanan (Sun, 20 May 2018 03:08:04 GMT): SeetharamanNarayanan (Sun, 20 May 2018 03:08:46 GMT): SeetharamanNarayanan (Sun, 20 May 2018 03:09:50 GMT): SeetharamanNarayanan (Sun, 20 May 2018 03:09:59 GMT): SeetharamanNarayanan (Sun, 20 May 2018 03:59:57 GMT): VadimInshakov (Sun, 20 May 2018 06:49:44 GMT): VadimInshakov (Sun, 20 May 2018 07:51:03 GMT): VadimInshakov (Sun, 20 May 2018 07:51:03 GMT): VadimInshakov (Sun, 20 May 2018 07:51:03 GMT): AleTutto (Sun, 20 May 2018 08:25:00 GMT): ApurvTandon (Sun, 20 May 2018 11:40:31 GMT): pedromlcosta (Sun, 20 May 2018 14:30:02 GMT): Atheer83 (Sun, 20 May 2018 14:37:42 GMT): KotsAshish (Sun, 20 May 2018 16:09:45 GMT): pedromlcosta (Sun, 20 May 2018 16:50:20 GMT): pedromlcosta (Sun, 20 May 2018 23:52:30 GMT): pedromlcosta (Sun, 20 May 2018 23:54:02 GMT): pedromlcosta (Sun, 20 May 2018 23:58:22 GMT): pedromlcosta (Sun, 20 May 2018 23:58:54 GMT): pedromlcosta (Mon, 21 May 2018 00:28:47 GMT): pedromlcosta (Mon, 21 May 2018 00:28:47 GMT): JulesMiller (Mon, 21 May 2018 01:40:44 GMT): karunesh10 (Mon, 21 May 2018 04:41:44 GMT): karunesh10 (Mon, 21 May 2018 04:42:14 GMT): ronbiz (Mon, 21 May 2018 05:54:50 GMT): vikramk (Mon, 21 May 2018 06:17:37 GMT): mengluo668 (Mon, 21 May 2018 06:24:25 GMT): AnilKharabe (Mon, 21 May 2018 06:46:41 GMT): AnilKharabe (Mon, 21 May 2018 06:47:10 GMT): AnilKharabe (Mon, 21 May 2018 06:47:54 GMT): phanikumar (Mon, 21 May 2018 06:51:30 GMT): karunesh10 (Mon, 21 May 2018 06:54:22 GMT): ronbiz (Mon, 21 May 2018 07:11:13 GMT): phanikumar (Mon, 21 May 2018 07:16:35 GMT): AnilKharabe (Mon, 21 May 2018 07:18:22 GMT): AnilKharabe (Mon, 21 May 2018 07:18:36 GMT): phanikumar (Mon, 21 May 2018 07:19:10 GMT): ronbiz (Mon, 21 May 2018 07:19:27 GMT): phanikumar (Mon, 21 May 2018 07:19:29 GMT): phanikumar (Mon, 21 May 2018 07:20:03 GMT): mahoney1 (Mon, 21 May 2018 08:05:07 GMT): mahoney1 (Mon, 21 May 2018 08:05:07 GMT): mahoney1 (Mon, 21 May 2018 08:08:12 GMT): mahoney1 (Mon, 21 May 2018 08:10:37 GMT): ronbiz (Mon, 21 May 2018 08:12:36 GMT): SeetharamanNarayanan (Mon, 21 May 2018 08:14:21 GMT): SeetharamanNarayanan (Mon, 21 May 2018 08:14:59 GMT): SeetharamanNarayanan (Mon, 21 May 2018 08:15:03 GMT): SeetharamanNarayanan (Mon, 21 May 2018 08:16:23 GMT): SeetharamanNarayanan (Mon, 21 May 2018 08:17:18 GMT): mahoney1 (Mon, 21 May 2018 08:18:51 GMT): mahoney1 (Mon, 21 May 2018 08:33:25 GMT): SeetharamanNarayanan (Mon, 21 May 2018 08:49:29 GMT): SeetharamanNarayanan (Mon, 21 May 2018 08:49:54 GMT): SeetharamanNarayanan (Mon, 21 May 2018 08:50:29 GMT): SeetharamanNarayanan (Mon, 21 May 2018 08:54:31 GMT): karunesh10 (Mon, 21 May 2018 09:02:58 GMT): VadimInshakov (Mon, 21 May 2018 09:11:15 GMT): phanikumar (Mon, 21 May 2018 09:24:40 GMT): VadimInshakov (Mon, 21 May 2018 09:25:40 GMT): phanikumar (Mon, 21 May 2018 09:26:17 GMT): phanikumar (Mon, 21 May 2018 09:32:37 GMT): mahoney1 (Mon, 21 May 2018 09:34:25 GMT): rthatcher (Mon, 21 May 2018 09:37:15 GMT): VadimInshakov (Mon, 21 May 2018 09:56:29 GMT): VadimInshakov (Mon, 21 May 2018 09:56:29 GMT): prmdmshra (Mon, 21 May 2018 10:10:12 GMT): prmdmshra (Mon, 21 May 2018 10:14:07 GMT): phanikumar (Mon, 21 May 2018 10:16:56 GMT): mahoney1 (Mon, 21 May 2018 10:20:03 GMT): mahoney1 (Mon, 21 May 2018 10:20:03 GMT): mahoney1 (Mon, 21 May 2018 10:20:03 GMT): VadimInshakov (Mon, 21 May 2018 10:29:37 GMT): sapnaupreti (Mon, 21 May 2018 10:30:56 GMT): mahoney1 (Mon, 21 May 2018 10:32:00 GMT): rthatcher (Mon, 21 May 2018 10:32:22 GMT): phanikumar (Mon, 21 May 2018 10:34:07 GMT): phanikumar (Mon, 21 May 2018 10:34:07 GMT): PaulWyman (Mon, 21 May 2018 10:38:39 GMT): ApurvTandon (Mon, 21 May 2018 10:40:03 GMT): ApurvTandon (Mon, 21 May 2018 10:40:03 GMT): prmdmshra (Mon, 21 May 2018 10:40:36 GMT): mahoney1 (Mon, 21 May 2018 10:59:01 GMT): varunagarwal (Mon, 21 May 2018 10:59:29 GMT): mahoney1 (Mon, 21 May 2018 11:20:43 GMT): varunagarwal (Mon, 21 May 2018 11:23:07 GMT): varunagarwal (Mon, 21 May 2018 11:24:05 GMT): pedromlcosta (Mon, 21 May 2018 11:25:14 GMT): varunagarwal (Mon, 21 May 2018 11:26:32 GMT): pedromlcosta (Mon, 21 May 2018 11:27:09 GMT): varunagarwal (Mon, 21 May 2018 11:27:37 GMT): pedromlcosta (Mon, 21 May 2018 11:28:24 GMT): abityildiz (Mon, 21 May 2018 11:28:54 GMT): abityildiz (Mon, 21 May 2018 11:28:54 GMT): varunagarwal (Mon, 21 May 2018 11:28:54 GMT): pedromlcosta (Mon, 21 May 2018 11:29:26 GMT): abityildiz (Mon, 21 May 2018 11:29:45 GMT): varunagarwal (Mon, 21 May 2018 11:30:18 GMT): acbellini (Mon, 21 May 2018 11:34:40 GMT): pedromlcosta (Mon, 21 May 2018 11:35:54 GMT): varunagarwal (Mon, 21 May 2018 11:36:53 GMT): mahoney1 (Mon, 21 May 2018 11:37:14 GMT): mahoney1 (Mon, 21 May 2018 11:37:14 GMT): varunagarwal (Mon, 21 May 2018 11:37:14 GMT): acbellini (Mon, 21 May 2018 11:37:15 GMT): varunagarwal (Mon, 21 May 2018 11:39:09 GMT): varunagarwal (Mon, 21 May 2018 11:39:37 GMT): pedromlcosta (Mon, 21 May 2018 11:41:43 GMT): pedromlcosta (Mon, 21 May 2018 11:41:51 GMT): pedromlcosta (Mon, 21 May 2018 11:42:33 GMT): varunagarwal (Mon, 21 May 2018 11:42:59 GMT): varunagarwal (Mon, 21 May 2018 11:43:51 GMT): mahoney1 (Mon, 21 May 2018 11:44:02 GMT): acbellini (Mon, 21 May 2018 11:44:56 GMT): varunagarwal (Mon, 21 May 2018 11:46:35 GMT): pedromlcosta (Mon, 21 May 2018 11:46:46 GMT): varunagarwal (Mon, 21 May 2018 11:47:12 GMT): pedromlcosta (Mon, 21 May 2018 11:47:20 GMT): abityildiz (Mon, 21 May 2018 11:47:25 GMT): varunagarwal (Mon, 21 May 2018 11:49:36 GMT): pedromlcosta (Mon, 21 May 2018 11:49:59 GMT): varunagarwal (Mon, 21 May 2018 11:50:07 GMT): pedromlcosta (Mon, 21 May 2018 11:50:13 GMT): varunagarwal (Mon, 21 May 2018 11:51:43 GMT): pedromlcosta (Mon, 21 May 2018 11:52:35 GMT): varunagarwal (Mon, 21 May 2018 11:52:43 GMT): varunagarwal (Mon, 21 May 2018 11:53:09 GMT): varunagarwal (Mon, 21 May 2018 11:53:33 GMT): pedromlcosta (Mon, 21 May 2018 11:54:06 GMT): varunagarwal (Mon, 21 May 2018 11:54:09 GMT): varunagarwal (Mon, 21 May 2018 11:54:34 GMT): pedromlcosta (Mon, 21 May 2018 11:54:58 GMT): varunagarwal (Mon, 21 May 2018 11:55:01 GMT): varunagarwal (Mon, 21 May 2018 11:57:01 GMT): varunagarwal (Mon, 21 May 2018 11:57:47 GMT): pedromlcosta (Mon, 21 May 2018 11:58:13 GMT): varunagarwal (Mon, 21 May 2018 11:58:46 GMT): varunagarwal (Mon, 21 May 2018 11:59:14 GMT): varunagarwal (Mon, 21 May 2018 12:00:39 GMT): tanaybhartia (Mon, 21 May 2018 12:19:41 GMT): tanaybhartia (Mon, 21 May 2018 12:20:03 GMT): tanaybhartia (Mon, 21 May 2018 12:20:03 GMT): rthatcher (Mon, 21 May 2018 12:34:14 GMT): rthatcher (Mon, 21 May 2018 12:41:59 GMT): ApurvTandon (Mon, 21 May 2018 12:42:06 GMT): saeedi (Mon, 21 May 2018 12:49:14 GMT): saeedi (Mon, 21 May 2018 12:49:58 GMT): rthatcher (Mon, 21 May 2018 13:06:52 GMT): rthatcher (Mon, 21 May 2018 13:06:52 GMT): ameyaraje (Mon, 21 May 2018 13:30:09 GMT): nntoan (Mon, 21 May 2018 13:45:36 GMT): nntoan (Mon, 21 May 2018 13:47:24 GMT): nntoan (Mon, 21 May 2018 13:47:41 GMT): nntoan (Mon, 21 May 2018 13:48:12 GMT): karunesh10 (Mon, 21 May 2018 13:55:03 GMT): DanHerman_1 (Mon, 21 May 2018 14:02:48 GMT): mahoney1 (Mon, 21 May 2018 14:10:07 GMT): rthatcher (Mon, 21 May 2018 14:33:38 GMT): nntoan (Mon, 21 May 2018 14:34:52 GMT): nntoan (Mon, 21 May 2018 14:35:15 GMT): nntoan (Mon, 21 May 2018 14:35:53 GMT): tanaybhartia (Mon, 21 May 2018 15:16:42 GMT): rthatcher (Mon, 21 May 2018 15:20:57 GMT): mahoney1 (Mon, 21 May 2018 16:10:20 GMT): mahoney1 (Mon, 21 May 2018 16:10:20 GMT): SubhashiniSundaresan (Mon, 21 May 2018 16:12:10 GMT): SubhashiniSundaresan (Mon, 21 May 2018 16:15:09 GMT): nntoan (Mon, 21 May 2018 16:21:56 GMT): mahoney1 (Mon, 21 May 2018 16:25:49 GMT): SeetharamanNarayanan (Mon, 21 May 2018 16:30:14 GMT): SeetharamanNarayanan (Mon, 21 May 2018 16:30:56 GMT): SeetharamanNarayanan (Mon, 21 May 2018 16:32:03 GMT): ameyaraje (Mon, 21 May 2018 16:56:13 GMT): mahoney1 (Mon, 21 May 2018 17:25:05 GMT): mahoney1 (Mon, 21 May 2018 17:25:05 GMT): mahoney1 (Mon, 21 May 2018 17:25:48 GMT): vitorduarte (Mon, 21 May 2018 18:22:18 GMT): SubhashiniSundaresan (Mon, 21 May 2018 18:28:23 GMT): ameyaraje (Mon, 21 May 2018 18:30:45 GMT): ameyaraje (Mon, 21 May 2018 18:30:48 GMT): FelipeSantana (Mon, 21 May 2018 19:25:36 GMT): Jakeeyturner (Mon, 21 May 2018 20:03:39 GMT): SeetharamanNarayanan (Mon, 21 May 2018 20:26:28 GMT): SeetharamanNarayanan (Mon, 21 May 2018 20:27:55 GMT): CarlosZamoraR (Mon, 21 May 2018 20:59:01 GMT): Jakeeyturner (Mon, 21 May 2018 21:38:21 GMT): Jakeeyturner (Mon, 21 May 2018 21:38:21 GMT): mahoney1 (Mon, 21 May 2018 21:45:52 GMT): mahoney1 (Mon, 21 May 2018 21:46:33 GMT): mahoney1 (Mon, 21 May 2018 21:46:33 GMT): ameyaraje (Mon, 21 May 2018 21:47:03 GMT): nekia (Mon, 21 May 2018 23:59:14 GMT): Rave24th (Tue, 22 May 2018 01:36:34 GMT): Rave24th (Tue, 22 May 2018 01:37:53 GMT): JesonGodilo (Tue, 22 May 2018 03:05:08 GMT): JesonGodilo (Tue, 22 May 2018 03:05:40 GMT): JesonGodilo (Tue, 22 May 2018 03:05:50 GMT): JesonGodilo (Tue, 22 May 2018 03:06:34 GMT): swati25 (Tue, 22 May 2018 05:01:24 GMT): aneb (Tue, 22 May 2018 05:14:41 GMT): Varun2887 (Tue, 22 May 2018 05:17:27 GMT): Varun2887 (Tue, 22 May 2018 05:17:55 GMT): aneb (Tue, 22 May 2018 05:19:32 GMT): aneb (Tue, 22 May 2018 05:19:36 GMT): Varun2887 (Tue, 22 May 2018 05:22:11 GMT): Varun2887 (Tue, 22 May 2018 05:22:48 GMT): aneb (Tue, 22 May 2018 05:25:57 GMT): Varun2887 (Tue, 22 May 2018 05:26:35 GMT): Varun2887 (Tue, 22 May 2018 05:26:45 GMT): Varun2887 (Tue, 22 May 2018 05:26:48 GMT): JesonGodilo (Tue, 22 May 2018 05:54:07 GMT): saeedi (Tue, 22 May 2018 06:04:24 GMT): nitishbhardwaj19 (Tue, 22 May 2018 06:08:18 GMT): BhaveshPatadiya (Tue, 22 May 2018 06:21:10 GMT): HoneyShah (Tue, 22 May 2018 06:34:57 GMT): davidkel (Tue, 22 May 2018 07:04:11 GMT): davidkel (Tue, 22 May 2018 07:04:11 GMT): davidkel (Tue, 22 May 2018 07:04:11 GMT): Varun2887 (Tue, 22 May 2018 07:10:28 GMT): Varun2887 (Tue, 22 May 2018 07:10:29 GMT): ApoorvChandurkar (Tue, 22 May 2018 07:27:43 GMT): SeetharamanNarayanan (Tue, 22 May 2018 07:28:21 GMT): SeetharamanNarayanan (Tue, 22 May 2018 07:31:32 GMT): Jakeeyturner (Tue, 22 May 2018 07:34:31 GMT): SeetharamanNarayanan (Tue, 22 May 2018 07:34:46 GMT): tanaybhartia (Tue, 22 May 2018 07:38:03 GMT): SeetharamanNarayanan (Tue, 22 May 2018 07:49:46 GMT): absingh0 (Tue, 22 May 2018 07:50:51 GMT): mahoney1 (Tue, 22 May 2018 07:57:20 GMT): mahoney1 (Tue, 22 May 2018 07:58:28 GMT): mahoney1 (Tue, 22 May 2018 08:17:27 GMT): mahoney1 (Tue, 22 May 2018 08:22:22 GMT): uber.twin (Tue, 22 May 2018 08:23:46 GMT): waleed (Tue, 22 May 2018 08:30:39 GMT): waleed (Tue, 22 May 2018 08:30:39 GMT): waleed (Tue, 22 May 2018 08:30:39 GMT): mahoney1 (Tue, 22 May 2018 08:33:17 GMT): Jakeeyturner (Tue, 22 May 2018 08:35:53 GMT): Jakeeyturner (Tue, 22 May 2018 08:36:27 GMT): HoneyShah (Tue, 22 May 2018 08:43:02 GMT): HoneyShah (Tue, 22 May 2018 08:43:02 GMT): uber.twin (Tue, 22 May 2018 08:54:32 GMT): uber.twin (Tue, 22 May 2018 08:54:32 GMT): uber.twin (Tue, 22 May 2018 08:54:32 GMT): reshmamohiyiddin (Tue, 22 May 2018 09:22:08 GMT): rthatcher (Tue, 22 May 2018 09:31:05 GMT): reshmamohiyiddin (Tue, 22 May 2018 09:35:16 GMT): suva (Tue, 22 May 2018 09:44:16 GMT): rthatcher (Tue, 22 May 2018 09:46:55 GMT): waleed (Tue, 22 May 2018 09:58:11 GMT): waleed (Tue, 22 May 2018 09:58:11 GMT): waleed (Tue, 22 May 2018 09:58:11 GMT): waleed (Tue, 22 May 2018 09:58:11 GMT): waleed (Tue, 22 May 2018 09:58:46 GMT): mengluo668 (Tue, 22 May 2018 10:01:42 GMT): mengluo668 (Tue, 22 May 2018 10:01:42 GMT): mengluo668 (Tue, 22 May 2018 10:02:42 GMT): reshmamohiyiddin (Tue, 22 May 2018 10:07:52 GMT): Jakeeyturner (Tue, 22 May 2018 10:08:34 GMT): waleed (Tue, 22 May 2018 10:09:59 GMT): waleed (Tue, 22 May 2018 10:10:33 GMT): Jakeeyturner (Tue, 22 May 2018 10:15:24 GMT): gurpreetsingh1193 (Tue, 22 May 2018 10:53:00 GMT): varuna82 (Tue, 22 May 2018 11:17:57 GMT): waleed (Tue, 22 May 2018 11:20:23 GMT): varuna82 (Tue, 22 May 2018 11:23:00 GMT): VadimInshakov (Tue, 22 May 2018 11:27:25 GMT): VadimInshakov (Tue, 22 May 2018 11:27:25 GMT): ApoorvChandurkar (Tue, 22 May 2018 11:27:47 GMT): mahoney1 (Tue, 22 May 2018 11:48:32 GMT): mahoney1 (Tue, 22 May 2018 11:48:32 GMT): gurpreetsingh1193 (Tue, 22 May 2018 11:56:26 GMT): mahoney1 (Tue, 22 May 2018 11:58:16 GMT): mahoney1 (Tue, 22 May 2018 12:10:32 GMT): mahoney1 (Tue, 22 May 2018 12:10:32 GMT): suva (Tue, 22 May 2018 12:15:23 GMT): suva (Tue, 22 May 2018 12:15:25 GMT): suva (Tue, 22 May 2018 12:15:42 GMT): mahoney1 (Tue, 22 May 2018 12:23:46 GMT): ApoorvChandurkar (Tue, 22 May 2018 12:26:28 GMT): asp 25 (Tue, 22 May 2018 12:33:55 GMT): asp 25 (Tue, 22 May 2018 12:37:13 GMT): rthatcher (Tue, 22 May 2018 12:39:35 GMT): rthatcher (Tue, 22 May 2018 12:47:07 GMT): VadimInshakov (Tue, 22 May 2018 12:58:06 GMT): ryans3a (Tue, 22 May 2018 13:08:47 GMT): ryans3a (Tue, 22 May 2018 13:16:34 GMT): ryans3a (Tue, 22 May 2018 13:16:42 GMT): ryans3a (Tue, 22 May 2018 13:17:18 GMT): lsheks (Tue, 22 May 2018 13:21:00 GMT): lsheks (Tue, 22 May 2018 13:22:18 GMT): rthatcher (Tue, 22 May 2018 13:23:02 GMT): rthatcher (Tue, 22 May 2018 13:38:49 GMT): lsheks (Tue, 22 May 2018 13:48:07 GMT): ryans3a (Tue, 22 May 2018 13:48:40 GMT): ryans3a (Tue, 22 May 2018 13:49:52 GMT): GajendraYadav (Tue, 22 May 2018 13:54:16 GMT): rthatcher (Tue, 22 May 2018 13:56:54 GMT): pedromlcosta (Tue, 22 May 2018 13:59:06 GMT): lsheks (Tue, 22 May 2018 14:02:43 GMT): mahoney1 (Tue, 22 May 2018 14:07:40 GMT): mahoney1 (Tue, 22 May 2018 14:07:40 GMT): mahoney1 (Tue, 22 May 2018 14:07:40 GMT): lsheks (Tue, 22 May 2018 14:11:55 GMT): GrondinLaurent (Tue, 22 May 2018 14:21:15 GMT): VadimInshakov (Tue, 22 May 2018 14:21:59 GMT): ryans3a (Tue, 22 May 2018 14:23:00 GMT): rthatcher (Tue, 22 May 2018 14:41:59 GMT): rthatcher (Tue, 22 May 2018 14:41:59 GMT): rthatcher (Tue, 22 May 2018 14:47:10 GMT): pedromlcosta (Tue, 22 May 2018 14:58:56 GMT): pedromlcosta (Tue, 22 May 2018 14:58:56 GMT): pholtzm (Tue, 22 May 2018 14:59:14 GMT): GrondinLaurent (Tue, 22 May 2018 15:04:27 GMT): GrondinLaurent (Tue, 22 May 2018 15:04:33 GMT): pedromlcosta (Tue, 22 May 2018 15:05:01 GMT): pedromlcosta (Tue, 22 May 2018 15:06:35 GMT): rthatcher (Tue, 22 May 2018 15:18:48 GMT): GrondinLaurent (Tue, 22 May 2018 15:23:53 GMT): GrondinLaurent (Tue, 22 May 2018 15:23:53 GMT): GrondinLaurent (Tue, 22 May 2018 15:23:53 GMT): GrondinLaurent (Tue, 22 May 2018 15:23:57 GMT): GrondinLaurent (Tue, 22 May 2018 15:24:45 GMT): GrondinLaurent (Tue, 22 May 2018 15:24:45 GMT): GrondinLaurent (Tue, 22 May 2018 15:24:45 GMT): absingh0 (Tue, 22 May 2018 15:33:43 GMT): ApurvTandon (Tue, 22 May 2018 15:50:27 GMT): rthatcher (Tue, 22 May 2018 16:30:03 GMT): mahoney1 (Tue, 22 May 2018 16:30:03 GMT): rthatcher (Tue, 22 May 2018 16:32:11 GMT): Rave24th (Tue, 22 May 2018 16:57:14 GMT): Rave24th (Tue, 22 May 2018 16:57:14 GMT): Rave24th (Tue, 22 May 2018 16:57:14 GMT): skarlekar (Tue, 22 May 2018 17:07:42 GMT): davidkel (Tue, 22 May 2018 17:43:08 GMT): davidkel (Tue, 22 May 2018 17:43:08 GMT): skarlekar (Tue, 22 May 2018 19:27:48 GMT): skarlekar (Tue, 22 May 2018 19:30:14 GMT): skarlekar (Tue, 22 May 2018 19:35:33 GMT): skarlekar (Tue, 22 May 2018 19:37:02 GMT): devensuji (Tue, 22 May 2018 20:36:01 GMT): devensuji (Tue, 22 May 2018 20:36:09 GMT): devensuji (Tue, 22 May 2018 20:36:12 GMT): devensuji (Tue, 22 May 2018 20:37:07 GMT): devensuji (Tue, 22 May 2018 20:37:19 GMT): devensuji (Tue, 22 May 2018 20:37:27 GMT): devensuji (Tue, 22 May 2018 20:37:36 GMT): devensuji (Tue, 22 May 2018 20:38:42 GMT): devensuji (Tue, 22 May 2018 20:38:53 GMT): BalaM (Tue, 22 May 2018 21:48:02 GMT): GoekayPamuk (Tue, 22 May 2018 22:19:49 GMT): GoekayPamuk (Tue, 22 May 2018 22:19:56 GMT): GoekayPamuk (Tue, 22 May 2018 22:20:12 GMT): GoekayPamuk (Tue, 22 May 2018 22:20:30 GMT): GoekayPamuk (Tue, 22 May 2018 22:20:40 GMT): GoekayPamuk (Tue, 22 May 2018 22:20:40 GMT): GoekayPamuk (Tue, 22 May 2018 22:20:53 GMT): GoekayPamuk (Tue, 22 May 2018 22:20:53 GMT): GoekayPamuk (Tue, 22 May 2018 22:21:47 GMT): GoekayPamuk (Tue, 22 May 2018 22:23:33 GMT): GoekayPamuk (Tue, 22 May 2018 22:23:39 GMT): GoekayPamuk (Tue, 22 May 2018 23:08:47 GMT): GoekayPamuk (Tue, 22 May 2018 23:08:52 GMT): GoekayPamuk (Tue, 22 May 2018 23:09:03 GMT): JesonGodilo (Wed, 23 May 2018 02:30:59 GMT): BhaveshPatadiya (Wed, 23 May 2018 04:04:40 GMT): IceFox (Wed, 23 May 2018 04:27:56 GMT): IceFox (Wed, 23 May 2018 04:28:35 GMT): IceFox (Wed, 23 May 2018 04:29:04 GMT): nekia (Wed, 23 May 2018 05:11:02 GMT): nekia (Wed, 23 May 2018 05:11:02 GMT): Pranoti (Wed, 23 May 2018 05:38:34 GMT): HoneyShah (Wed, 23 May 2018 05:41:52 GMT): HoneyShah (Wed, 23 May 2018 05:41:52 GMT): MeiholJhaveri (Wed, 23 May 2018 06:41:59 GMT): MeiholJhaveri (Wed, 23 May 2018 06:42:32 GMT): MeiholJhaveri (Wed, 23 May 2018 06:42:45 GMT): MeiholJhaveri (Wed, 23 May 2018 06:42:48 GMT): MeiholJhaveri (Wed, 23 May 2018 06:42:52 GMT): Poneey (Wed, 23 May 2018 06:52:33 GMT): MeiholJhaveri (Wed, 23 May 2018 06:55:43 GMT): kaisos (Wed, 23 May 2018 06:56:47 GMT): Poneey (Wed, 23 May 2018 07:09:16 GMT): MeiholJhaveri (Wed, 23 May 2018 07:13:55 GMT): MeiholJhaveri (Wed, 23 May 2018 07:14:00 GMT): MeiholJhaveri (Wed, 23 May 2018 07:14:55 GMT): MeiholJhaveri (Wed, 23 May 2018 07:15:03 GMT): abityildiz (Wed, 23 May 2018 07:16:49 GMT): abityildiz (Wed, 23 May 2018 07:16:51 GMT): MeiholJhaveri (Wed, 23 May 2018 07:18:45 GMT): Poneey (Wed, 23 May 2018 07:19:37 GMT): Poneey (Wed, 23 May 2018 07:20:22 GMT): MeiholJhaveri (Wed, 23 May 2018 07:20:46 GMT): Poneey (Wed, 23 May 2018 07:21:21 GMT): MeiholJhaveri (Wed, 23 May 2018 07:22:31 GMT): abityildiz (Wed, 23 May 2018 07:22:44 GMT): Bit 63 (Wed, 23 May 2018 07:23:34 GMT): abityildiz (Wed, 23 May 2018 07:24:11 GMT): ronbiz (Wed, 23 May 2018 07:37:18 GMT): MeiholJhaveri (Wed, 23 May 2018 07:46:16 GMT): Poneey (Wed, 23 May 2018 07:47:15 GMT): MeiholJhaveri (Wed, 23 May 2018 07:47:42 GMT): MeiholJhaveri (Wed, 23 May 2018 07:47:52 GMT): Poneey (Wed, 23 May 2018 07:48:05 GMT): MeiholJhaveri (Wed, 23 May 2018 07:48:05 GMT): MeiholJhaveri (Wed, 23 May 2018 07:48:35 GMT): Poneey (Wed, 23 May 2018 07:49:17 GMT): Poneey (Wed, 23 May 2018 07:50:13 GMT): huangliping (Wed, 23 May 2018 07:51:25 GMT): MeiholJhaveri (Wed, 23 May 2018 07:58:06 GMT): MeiholJhaveri (Wed, 23 May 2018 08:15:39 GMT): MeiholJhaveri (Wed, 23 May 2018 08:15:49 GMT): MeiholJhaveri (Wed, 23 May 2018 08:16:16 GMT): MeiholJhaveri (Wed, 23 May 2018 08:17:39 GMT): MeiholJhaveri (Wed, 23 May 2018 08:18:31 GMT): rthatcher (Wed, 23 May 2018 08:24:09 GMT): MeiholJhaveri (Wed, 23 May 2018 08:25:41 GMT): rthatcher (Wed, 23 May 2018 08:33:30 GMT): xy250400 (Wed, 23 May 2018 08:34:06 GMT): abityildiz (Wed, 23 May 2018 08:34:29 GMT): MeiholJhaveri (Wed, 23 May 2018 08:34:43 GMT): xy250400 (Wed, 23 May 2018 08:34:58 GMT): ArnaudCarrere (Wed, 23 May 2018 08:35:27 GMT): rthatcher (Wed, 23 May 2018 08:37:10 GMT): wangrangli (Wed, 23 May 2018 08:37:16 GMT): nta2 (Wed, 23 May 2018 08:38:19 GMT): MeiholJhaveri (Wed, 23 May 2018 08:38:36 GMT): rthatcher (Wed, 23 May 2018 08:38:38 GMT): MeiholJhaveri (Wed, 23 May 2018 08:39:03 GMT): xy250400 (Wed, 23 May 2018 08:42:56 GMT): xy250400 (Wed, 23 May 2018 08:44:52 GMT): rthatcher (Wed, 23 May 2018 08:48:08 GMT): ra_w (Wed, 23 May 2018 08:49:07 GMT): xy250400 (Wed, 23 May 2018 08:49:10 GMT): ra_w (Wed, 23 May 2018 08:49:32 GMT): ra_w (Wed, 23 May 2018 08:50:10 GMT): ArnaudCarrere (Wed, 23 May 2018 08:51:51 GMT): adokce (Wed, 23 May 2018 09:05:52 GMT): rthatcher (Wed, 23 May 2018 09:08:31 GMT): rthatcher (Wed, 23 May 2018 09:08:31 GMT): VladimirBorozna (Wed, 23 May 2018 09:09:50 GMT): VladimirBorozna (Wed, 23 May 2018 09:09:50 GMT): VladimirBorozna (Wed, 23 May 2018 09:09:50 GMT): VladimirBorozna (Wed, 23 May 2018 09:09:50 GMT): VladimirBorozna (Wed, 23 May 2018 09:09:50 GMT): rthatcher (Wed, 23 May 2018 09:17:06 GMT): mahoney1 (Wed, 23 May 2018 09:19:51 GMT): hvandurme (Wed, 23 May 2018 09:20:52 GMT): HoneyShah (Wed, 23 May 2018 09:24:22 GMT): rthatcher (Wed, 23 May 2018 09:29:15 GMT): VladimirBorozna (Wed, 23 May 2018 09:35:54 GMT): VladimirBorozna (Wed, 23 May 2018 09:35:54 GMT): VladimirBorozna (Wed, 23 May 2018 09:35:54 GMT): VladimirBorozna (Wed, 23 May 2018 09:35:54 GMT): VladimirBorozna (Wed, 23 May 2018 09:35:54 GMT): VladimirBorozna (Wed, 23 May 2018 09:35:54 GMT): VladimirBorozna (Wed, 23 May 2018 09:35:54 GMT): prmdmshra (Wed, 23 May 2018 09:40:14 GMT): mchampaneri (Wed, 23 May 2018 09:42:43 GMT): akhilaggarwal (Wed, 23 May 2018 09:43:16 GMT): mchampaneri (Wed, 23 May 2018 09:47:49 GMT): abityildiz (Wed, 23 May 2018 09:50:35 GMT): abityildiz (Wed, 23 May 2018 09:50:37 GMT): mchampaneri (Wed, 23 May 2018 09:50:43 GMT): akhilaggarwal (Wed, 23 May 2018 09:51:59 GMT): akhilaggarwal (Wed, 23 May 2018 09:52:25 GMT): mchampaneri (Wed, 23 May 2018 09:52:28 GMT): wangrangli (Wed, 23 May 2018 09:59:21 GMT): akhilaggarwal (Wed, 23 May 2018 10:07:37 GMT): mahoney1 (Wed, 23 May 2018 10:08:17 GMT): VladimirBorozna (Wed, 23 May 2018 10:12:46 GMT): VladimirBorozna (Wed, 23 May 2018 10:12:46 GMT): VladimirBorozna (Wed, 23 May 2018 10:12:46 GMT): prmdmshra (Wed, 23 May 2018 10:16:34 GMT): sivajik34 (Wed, 23 May 2018 10:18:41 GMT): GrondinLaurent (Wed, 23 May 2018 10:19:57 GMT): mahoney1 (Wed, 23 May 2018 10:20:47 GMT): lsheks (Wed, 23 May 2018 10:24:10 GMT): lsheks (Wed, 23 May 2018 10:25:46 GMT): hvandurme (Wed, 23 May 2018 10:27:33 GMT): lsheks (Wed, 23 May 2018 10:33:24 GMT): ra_w (Wed, 23 May 2018 10:36:27 GMT): JayPandya (Wed, 23 May 2018 10:40:22 GMT): HoneyShah (Wed, 23 May 2018 10:56:35 GMT): prmdmshra (Wed, 23 May 2018 11:12:06 GMT): GrondinLaurent (Wed, 23 May 2018 11:18:47 GMT): uber.twin (Wed, 23 May 2018 11:30:43 GMT): uber.twin (Wed, 23 May 2018 11:42:02 GMT): mahoney1 (Wed, 23 May 2018 11:42:12 GMT): mahoney1 (Wed, 23 May 2018 11:42:12 GMT): pedromlcosta (Wed, 23 May 2018 11:47:31 GMT): pedromlcosta (Wed, 23 May 2018 11:49:02 GMT): mahoney1 (Wed, 23 May 2018 11:50:25 GMT): mahoney1 (Wed, 23 May 2018 11:50:25 GMT): mahoney1 (Wed, 23 May 2018 11:54:36 GMT): rthatcher (Wed, 23 May 2018 11:55:04 GMT): uber.twin (Wed, 23 May 2018 11:57:12 GMT): HoneyShah (Wed, 23 May 2018 11:57:32 GMT): HoneyShah (Wed, 23 May 2018 11:57:32 GMT): uber.twin (Wed, 23 May 2018 11:57:50 GMT): uber.twin (Wed, 23 May 2018 12:02:46 GMT): uber.twin (Wed, 23 May 2018 12:02:46 GMT): mahoney1 (Wed, 23 May 2018 12:04:13 GMT): pedromlcosta (Wed, 23 May 2018 12:05:17 GMT): mahoney1 (Wed, 23 May 2018 12:05:37 GMT): mahoney1 (Wed, 23 May 2018 12:05:37 GMT): pedromlcosta (Wed, 23 May 2018 12:05:46 GMT): mahoney1 (Wed, 23 May 2018 12:06:35 GMT): uber.twin (Wed, 23 May 2018 12:07:16 GMT): mahoney1 (Wed, 23 May 2018 12:10:06 GMT): GrondinLaurent (Wed, 23 May 2018 12:10:10 GMT): mahoney1 (Wed, 23 May 2018 12:13:28 GMT): mahoney1 (Wed, 23 May 2018 12:13:28 GMT): uber.twin (Wed, 23 May 2018 12:15:13 GMT): uber.twin (Wed, 23 May 2018 12:15:13 GMT): uber.twin (Wed, 23 May 2018 12:15:13 GMT): uber.twin (Wed, 23 May 2018 12:15:13 GMT): prmdmshra (Wed, 23 May 2018 13:26:23 GMT): mahoney1 (Wed, 23 May 2018 13:32:46 GMT): skarlekar (Wed, 23 May 2018 13:40:09 GMT): skarlekar (Wed, 23 May 2018 13:42:25 GMT): lipoplus (Wed, 23 May 2018 14:28:12 GMT): GrondinLaurent (Wed, 23 May 2018 14:34:58 GMT): GrondinLaurent (Wed, 23 May 2018 14:34:58 GMT): lipoplus (Wed, 23 May 2018 14:36:50 GMT): GrondinLaurent (Wed, 23 May 2018 14:38:11 GMT): lipoplus (Wed, 23 May 2018 14:38:44 GMT): GrondinLaurent (Wed, 23 May 2018 14:40:11 GMT): alirizwansyed (Wed, 23 May 2018 14:55:10 GMT): lipoplus (Wed, 23 May 2018 14:55:20 GMT): lipoplus (Wed, 23 May 2018 14:55:20 GMT): alirizwansyed (Wed, 23 May 2018 15:02:08 GMT): VadimInshakov (Wed, 23 May 2018 15:06:51 GMT): akhilaggarwal (Wed, 23 May 2018 15:13:15 GMT): pedromlcosta (Wed, 23 May 2018 15:14:01 GMT): akhilaggarwal (Wed, 23 May 2018 15:16:14 GMT): akhilaggarwal (Wed, 23 May 2018 15:16:15 GMT): akhilaggarwal (Wed, 23 May 2018 15:16:35 GMT): pedromlcosta (Wed, 23 May 2018 15:17:09 GMT): pedromlcosta (Wed, 23 May 2018 15:17:23 GMT): VadimInshakov (Wed, 23 May 2018 15:18:21 GMT): akhilaggarwal (Wed, 23 May 2018 15:18:57 GMT): akhilaggarwal (Wed, 23 May 2018 15:27:35 GMT): mahoney1 (Wed, 23 May 2018 15:29:09 GMT): VadimInshakov (Wed, 23 May 2018 15:29:28 GMT): VadimInshakov (Wed, 23 May 2018 15:32:13 GMT): VadimInshakov (Wed, 23 May 2018 15:37:46 GMT): madhavadu (Wed, 23 May 2018 15:39:41 GMT): skarlekar (Wed, 23 May 2018 15:49:58 GMT): skarlekar (Wed, 23 May 2018 15:49:58 GMT): skarlekar (Wed, 23 May 2018 15:49:58 GMT): pedromlcosta (Wed, 23 May 2018 15:58:20 GMT): pedromlcosta (Wed, 23 May 2018 15:58:20 GMT): pedromlcosta (Wed, 23 May 2018 16:02:23 GMT): mahoney1 (Wed, 23 May 2018 16:05:35 GMT): mahoney1 (Wed, 23 May 2018 16:05:35 GMT): pedromlcosta (Wed, 23 May 2018 16:17:54 GMT): mahoney1 (Wed, 23 May 2018 16:18:06 GMT): mahoney1 (Wed, 23 May 2018 16:18:06 GMT): mahoney1 (Wed, 23 May 2018 16:18:06 GMT): mahoney1 (Wed, 23 May 2018 16:18:06 GMT): mahoney1 (Wed, 23 May 2018 16:18:06 GMT): pedromlcosta (Wed, 23 May 2018 16:25:55 GMT): pedromlcosta (Wed, 23 May 2018 16:26:58 GMT): pedromlcosta (Wed, 23 May 2018 16:27:49 GMT): mahoney1 (Wed, 23 May 2018 16:28:21 GMT): pedromlcosta (Wed, 23 May 2018 16:29:47 GMT): mahoney1 (Wed, 23 May 2018 16:31:43 GMT): mahoney1 (Wed, 23 May 2018 16:31:43 GMT): pedromlcosta (Wed, 23 May 2018 16:32:36 GMT): pedromlcosta (Wed, 23 May 2018 16:36:26 GMT): pedromlcosta (Wed, 23 May 2018 16:36:26 GMT): toddinpal (Wed, 23 May 2018 17:17:45 GMT): prmdmshra (Wed, 23 May 2018 17:34:45 GMT): VadimInshakov (Wed, 23 May 2018 17:35:26 GMT): davidkel (Wed, 23 May 2018 18:14:27 GMT): toddinpal (Wed, 23 May 2018 18:15:05 GMT): dazohan (Wed, 23 May 2018 19:00:58 GMT): sahandealmeidapey (Wed, 23 May 2018 19:07:25 GMT): dazohan (Wed, 23 May 2018 19:09:02 GMT): skarlekar (Wed, 23 May 2018 19:15:16 GMT): mahoney1 (Wed, 23 May 2018 20:13:58 GMT): chandrakanthm (Wed, 23 May 2018 20:14:59 GMT): mahoney1 (Wed, 23 May 2018 20:26:03 GMT): mahoney1 (Wed, 23 May 2018 20:26:21 GMT): dazohan (Wed, 23 May 2018 20:48:32 GMT): theruss (Wed, 23 May 2018 20:58:23 GMT): toddinpal (Wed, 23 May 2018 20:58:49 GMT): toddinpal (Wed, 23 May 2018 21:01:10 GMT): toddinpal (Wed, 23 May 2018 21:02:15 GMT): skarlekar (Wed, 23 May 2018 21:15:22 GMT): skarlekar (Wed, 23 May 2018 21:15:22 GMT): sahandealmeidapey (Wed, 23 May 2018 21:26:33 GMT): sahandealmeidapey (Wed, 23 May 2018 21:26:44 GMT): AlbertoCarmona (Wed, 23 May 2018 22:02:55 GMT): BhaveshPatadiya (Thu, 24 May 2018 05:29:08 GMT): gurpret7 (Thu, 24 May 2018 05:43:43 GMT): gurpret7 (Thu, 24 May 2018 05:43:43 GMT): xy250400 (Thu, 24 May 2018 05:56:03 GMT): SeetharamanNarayanan (Thu, 24 May 2018 06:54:42 GMT): SeetharamanNarayanan (Thu, 24 May 2018 06:54:45 GMT): SeetharamanNarayanan (Thu, 24 May 2018 06:55:33 GMT): SeetharamanNarayanan (Thu, 24 May 2018 06:57:10 GMT): SeetharamanNarayanan (Thu, 24 May 2018 06:58:17 GMT): SeetharamanNarayanan (Thu, 24 May 2018 06:59:46 GMT): SeetharamanNarayanan (Thu, 24 May 2018 07:01:43 GMT): SeetharamanNarayanan (Thu, 24 May 2018 07:01:45 GMT): SeetharamanNarayanan (Thu, 24 May 2018 07:01:54 GMT): saeedi (Thu, 24 May 2018 07:05:50 GMT): saeedi (Thu, 24 May 2018 07:05:50 GMT): saeedi (Thu, 24 May 2018 07:05:50 GMT): saeedi (Thu, 24 May 2018 07:05:50 GMT): saeedi (Thu, 24 May 2018 07:05:50 GMT): saeedi (Thu, 24 May 2018 07:05:50 GMT): sonu07 (Thu, 24 May 2018 07:59:34 GMT): gravity (Thu, 24 May 2018 08:01:52 GMT): gravity (Thu, 24 May 2018 08:16:59 GMT): rthatcher (Thu, 24 May 2018 08:20:51 GMT): gravity (Thu, 24 May 2018 08:21:33 GMT): rthatcher (Thu, 24 May 2018 08:23:02 GMT): gravity (Thu, 24 May 2018 08:23:03 GMT): gravity (Thu, 24 May 2018 08:23:03 GMT): rthatcher (Thu, 24 May 2018 08:24:46 GMT): gravity (Thu, 24 May 2018 08:25:45 GMT): saeedi (Thu, 24 May 2018 08:32:12 GMT): saeedi (Thu, 24 May 2018 08:32:12 GMT): saeedi (Thu, 24 May 2018 08:32:12 GMT): gravity (Thu, 24 May 2018 08:33:04 GMT): ApoorvChandurkar (Thu, 24 May 2018 08:39:36 GMT): rthatcher (Thu, 24 May 2018 08:41:34 GMT): HoneyShah (Thu, 24 May 2018 08:44:32 GMT): gravity (Thu, 24 May 2018 08:45:18 GMT): rthatcher (Thu, 24 May 2018 08:47:27 GMT): rthatcher (Thu, 24 May 2018 08:50:05 GMT): rthatcher (Thu, 24 May 2018 09:00:55 GMT): saeedi (Thu, 24 May 2018 09:02:54 GMT): saeedi (Thu, 24 May 2018 09:02:54 GMT): rthatcher (Thu, 24 May 2018 09:16:42 GMT): rthatcher (Thu, 24 May 2018 09:31:28 GMT): ApoorvChandurkar (Thu, 24 May 2018 09:33:49 GMT): rthatcher (Thu, 24 May 2018 09:35:12 GMT): rthatcher (Thu, 24 May 2018 09:38:19 GMT): HoneyShah (Thu, 24 May 2018 09:40:07 GMT): xy250400 (Thu, 24 May 2018 09:42:13 GMT): xy250400 (Thu, 24 May 2018 09:44:48 GMT): acbellini (Thu, 24 May 2018 09:47:02 GMT): xy250400 (Thu, 24 May 2018 09:50:08 GMT): varunagarwal (Thu, 24 May 2018 10:04:32 GMT): rthatcher (Thu, 24 May 2018 10:06:23 GMT): rthatcher (Thu, 24 May 2018 10:10:03 GMT): varunagarwal (Thu, 24 May 2018 10:10:42 GMT): HoneyShah (Thu, 24 May 2018 10:24:28 GMT): xy250400 (Thu, 24 May 2018 10:41:59 GMT): umtyzc (Thu, 24 May 2018 10:42:31 GMT): umtyzc (Thu, 24 May 2018 10:44:43 GMT): vikramjit (Thu, 24 May 2018 10:48:47 GMT): Poneey (Thu, 24 May 2018 10:57:31 GMT): umtyzc (Thu, 24 May 2018 10:57:54 GMT): Poneey (Thu, 24 May 2018 11:02:57 GMT): LeeCherry (Thu, 24 May 2018 11:14:37 GMT): LeeCherry (Thu, 24 May 2018 11:16:26 GMT): davidkel (Thu, 24 May 2018 11:25:54 GMT): umtyzc (Thu, 24 May 2018 11:26:12 GMT): gravity (Thu, 24 May 2018 11:26:55 GMT): vidor (Thu, 24 May 2018 11:29:27 GMT): vidor (Thu, 24 May 2018 11:30:18 GMT): LeeCherry (Thu, 24 May 2018 11:44:56 GMT): LeeCherry (Thu, 24 May 2018 11:46:01 GMT): JayPandya (Thu, 24 May 2018 12:27:34 GMT): KindleBitSoln (Thu, 24 May 2018 12:36:03 GMT): KindleBitSoln (Thu, 24 May 2018 12:36:15 GMT): rthatcher (Thu, 24 May 2018 12:57:50 GMT): JayPandya (Thu, 24 May 2018 12:58:45 GMT): JayPandya (Thu, 24 May 2018 12:59:23 GMT): ApoorvChandurkar (Thu, 24 May 2018 13:09:14 GMT): jiteshukani2006 (Thu, 24 May 2018 13:11:31 GMT): Poneey (Thu, 24 May 2018 13:13:01 GMT): abilashs (Thu, 24 May 2018 13:16:48 GMT): rthatcher (Thu, 24 May 2018 13:20:29 GMT): rthatcher (Thu, 24 May 2018 13:23:45 GMT): Poneey (Thu, 24 May 2018 13:29:39 GMT): dazohan (Thu, 24 May 2018 13:58:53 GMT): SeetharamanNarayanan (Thu, 24 May 2018 14:11:52 GMT): SeetharamanNarayanan (Thu, 24 May 2018 14:11:52 GMT): JayPandya (Thu, 24 May 2018 14:31:52 GMT): SeetharamanNarayanan (Thu, 24 May 2018 14:58:44 GMT): rthatcher (Thu, 24 May 2018 15:02:27 GMT): JayPandya (Thu, 24 May 2018 15:04:54 GMT): SeetharamanNarayanan (Thu, 24 May 2018 15:08:13 GMT): dazohan (Thu, 24 May 2018 15:09:51 GMT): JayPandya (Thu, 24 May 2018 15:11:04 GMT): JayPandya (Thu, 24 May 2018 15:11:45 GMT): SeetharamanNarayanan (Thu, 24 May 2018 15:14:58 GMT): JayPandya (Thu, 24 May 2018 15:15:33 GMT): JayPandya (Thu, 24 May 2018 15:15:33 GMT): KellyCooper (Thu, 24 May 2018 15:16:19 GMT): SeetharamanNarayanan (Thu, 24 May 2018 15:19:18 GMT): acuestareig (Thu, 24 May 2018 15:21:46 GMT): sahandealmeidapey (Thu, 24 May 2018 15:23:11 GMT): rthatcher (Thu, 24 May 2018 15:27:41 GMT): KellyCooper (Thu, 24 May 2018 15:29:19 GMT): rthatcher (Thu, 24 May 2018 15:33:26 GMT): JayPandya (Thu, 24 May 2018 15:34:59 GMT): rthatcher (Thu, 24 May 2018 15:48:09 GMT): JayPandya (Thu, 24 May 2018 15:49:24 GMT): JayPandya (Thu, 24 May 2018 15:49:24 GMT): JayPandya (Thu, 24 May 2018 15:50:07 GMT): JayPandya (Thu, 24 May 2018 15:50:22 GMT): SeetharamanNarayanan (Thu, 24 May 2018 15:53:34 GMT): rthatcher (Thu, 24 May 2018 15:56:55 GMT): JayPandya (Thu, 24 May 2018 16:00:11 GMT): JayPandya (Thu, 24 May 2018 16:04:59 GMT): JayPandya (Thu, 24 May 2018 16:05:03 GMT): pedromlcosta (Thu, 24 May 2018 16:32:42 GMT): pedromlcosta (Thu, 24 May 2018 16:37:29 GMT): pedromlcosta (Thu, 24 May 2018 16:43:36 GMT): XInaUpp (Thu, 24 May 2018 17:22:14 GMT): XInaUpp (Thu, 24 May 2018 17:22:36 GMT): RamelSingh (Thu, 24 May 2018 19:17:58 GMT): fnjkim (Thu, 24 May 2018 19:30:58 GMT): fnjkim (Thu, 24 May 2018 19:32:31 GMT): muddasirshaikh (Thu, 24 May 2018 19:42:26 GMT): muddasirshaikh (Thu, 24 May 2018 19:42:39 GMT): jtclark (Thu, 24 May 2018 20:52:06 GMT): toddinpal (Thu, 24 May 2018 22:33:19 GMT): toddinpal (Thu, 24 May 2018 22:59:23 GMT): gurpret7 (Fri, 25 May 2018 00:37:47 GMT): gurpret7 (Fri, 25 May 2018 00:37:47 GMT): ychou (Fri, 25 May 2018 02:04:58 GMT): ychou (Fri, 25 May 2018 02:32:07 GMT): nvmadhav (Fri, 25 May 2018 02:36:03 GMT): wangrangli (Fri, 25 May 2018 03:36:24 GMT): nasserfci (Fri, 25 May 2018 06:03:53 GMT): raghung (Fri, 25 May 2018 06:07:36 GMT): HoneyShah (Fri, 25 May 2018 06:13:05 GMT): HoneyShah (Fri, 25 May 2018 06:13:05 GMT): HoneyShah (Fri, 25 May 2018 06:13:05 GMT): Varun2887 (Fri, 25 May 2018 07:56:51 GMT): Varun2887 (Fri, 25 May 2018 07:57:09 GMT): Varun2887 (Fri, 25 May 2018 07:57:09 GMT): Varun2887 (Fri, 25 May 2018 07:57:39 GMT): Varun2887 (Fri, 25 May 2018 07:57:48 GMT): KindleBitSoln (Fri, 25 May 2018 08:01:14 GMT): neocameback (Fri, 25 May 2018 08:01:38 GMT): KindleBitSoln (Fri, 25 May 2018 08:02:04 GMT): Varun2887 (Fri, 25 May 2018 08:07:27 GMT): HoneyShah (Fri, 25 May 2018 08:07:35 GMT): KindleBitSoln (Fri, 25 May 2018 08:08:12 GMT): KindleBitSoln (Fri, 25 May 2018 08:08:12 GMT): KindleBitSoln (Fri, 25 May 2018 08:08:12 GMT): Varun2887 (Fri, 25 May 2018 08:08:13 GMT): Varun2887 (Fri, 25 May 2018 08:09:00 GMT): Varun2887 (Fri, 25 May 2018 08:09:03 GMT): KindleBitSoln (Fri, 25 May 2018 08:11:15 GMT): Varun2887 (Fri, 25 May 2018 08:11:36 GMT): KindleBitSoln (Fri, 25 May 2018 08:14:03 GMT): Varun2887 (Fri, 25 May 2018 08:15:07 GMT): Varun2887 (Fri, 25 May 2018 08:15:28 GMT): rthatcher (Fri, 25 May 2018 08:16:01 GMT): KindleBitSoln (Fri, 25 May 2018 08:16:03 GMT): Varun2887 (Fri, 25 May 2018 08:16:28 GMT): Varun2887 (Fri, 25 May 2018 08:17:22 GMT): Varun2887 (Fri, 25 May 2018 08:17:24 GMT): HoneyShah (Fri, 25 May 2018 08:17:47 GMT): HoneyShah (Fri, 25 May 2018 08:17:47 GMT): HoneyShah (Fri, 25 May 2018 08:17:47 GMT): Varun2887 (Fri, 25 May 2018 08:19:32 GMT): Varun2887 (Fri, 25 May 2018 08:19:42 GMT): HoneyShah (Fri, 25 May 2018 08:21:54 GMT): rthatcher (Fri, 25 May 2018 08:22:35 GMT): KindleBitSoln (Fri, 25 May 2018 08:25:51 GMT): Varun2887 (Fri, 25 May 2018 08:26:15 GMT): KindleBitSoln (Fri, 25 May 2018 08:26:26 GMT): KindleBitSoln (Fri, 25 May 2018 08:26:26 GMT): Varun2887 (Fri, 25 May 2018 08:27:20 GMT): rthatcher (Fri, 25 May 2018 08:27:29 GMT): KindleBitSoln (Fri, 25 May 2018 08:28:00 GMT): Varun2887 (Fri, 25 May 2018 08:28:18 GMT): Varun2887 (Fri, 25 May 2018 08:28:26 GMT): KindleBitSoln (Fri, 25 May 2018 08:28:53 GMT): Varun2887 (Fri, 25 May 2018 08:28:53 GMT): KindleBitSoln (Fri, 25 May 2018 08:29:01 GMT): Varun2887 (Fri, 25 May 2018 08:29:01 GMT): KindleBitSoln (Fri, 25 May 2018 08:29:43 GMT): Varun2887 (Fri, 25 May 2018 08:29:47 GMT): KindleBitSoln (Fri, 25 May 2018 08:32:54 GMT): KindleBitSoln (Fri, 25 May 2018 08:33:27 GMT): HoneyShah (Fri, 25 May 2018 08:34:55 GMT): HoneyShah (Fri, 25 May 2018 08:34:55 GMT): HoneyShah (Fri, 25 May 2018 08:34:55 GMT): ronbiz (Fri, 25 May 2018 08:36:45 GMT): rthatcher (Fri, 25 May 2018 08:39:27 GMT): jaguarg (Fri, 25 May 2018 08:42:29 GMT): HoneyShah (Fri, 25 May 2018 08:51:03 GMT): VadimInshakov (Fri, 25 May 2018 08:55:31 GMT): davidkel (Fri, 25 May 2018 09:07:07 GMT): davidkel (Fri, 25 May 2018 09:08:22 GMT): jaguarg (Fri, 25 May 2018 09:45:29 GMT): rthatcher (Fri, 25 May 2018 09:45:39 GMT): rthatcher (Fri, 25 May 2018 09:46:16 GMT): Poneey (Fri, 25 May 2018 09:46:17 GMT): jaguarg (Fri, 25 May 2018 09:58:51 GMT): rthatcher (Fri, 25 May 2018 10:02:01 GMT): HoneyShah (Fri, 25 May 2018 10:03:21 GMT): VadimInshakov (Fri, 25 May 2018 10:07:51 GMT): VadimInshakov (Fri, 25 May 2018 10:07:51 GMT): KindleBitSoln (Fri, 25 May 2018 10:11:57 GMT): ovallod (Fri, 25 May 2018 10:23:46 GMT): rthatcher (Fri, 25 May 2018 10:28:19 GMT): davidkel (Fri, 25 May 2018 10:43:27 GMT): jaguarg (Fri, 25 May 2018 10:48:32 GMT): VadimInshakov (Fri, 25 May 2018 10:49:49 GMT): hardplant (Fri, 25 May 2018 10:59:27 GMT): hardplant (Fri, 25 May 2018 11:00:27 GMT): davidkel (Fri, 25 May 2018 11:00:43 GMT): rthatcher (Fri, 25 May 2018 11:16:14 GMT): HoneyShah (Fri, 25 May 2018 11:21:59 GMT): HoneyShah (Fri, 25 May 2018 11:21:59 GMT): HoneyShah (Fri, 25 May 2018 11:21:59 GMT): HoneyShah (Fri, 25 May 2018 11:21:59 GMT): KindleBitSoln (Fri, 25 May 2018 11:43:37 GMT): hardplant (Fri, 25 May 2018 11:55:17 GMT): hardplant (Fri, 25 May 2018 11:55:48 GMT): hardplant (Fri, 25 May 2018 11:56:18 GMT): KindleBitSoln (Fri, 25 May 2018 11:58:42 GMT): hardplant (Fri, 25 May 2018 11:59:57 GMT): umtyzc (Fri, 25 May 2018 12:09:56 GMT): umtyzc (Fri, 25 May 2018 12:10:38 GMT): hardplant (Fri, 25 May 2018 12:13:08 GMT): KindleBitSoln (Fri, 25 May 2018 12:17:58 GMT): jaguarg (Fri, 25 May 2018 12:22:10 GMT): VadimInshakov (Fri, 25 May 2018 12:24:26 GMT): davidkel (Fri, 25 May 2018 12:28:06 GMT): rthatcher (Fri, 25 May 2018 12:29:57 GMT): GrondinLaurent (Fri, 25 May 2018 12:31:45 GMT): GrondinLaurent (Fri, 25 May 2018 12:31:48 GMT): pathfinder2104 (Fri, 25 May 2018 12:36:47 GMT): VadimInshakov (Fri, 25 May 2018 12:38:18 GMT): davidkel (Fri, 25 May 2018 12:40:45 GMT): VadimInshakov (Fri, 25 May 2018 12:44:37 GMT): zachgoll (Fri, 25 May 2018 13:03:53 GMT): rthatcher (Fri, 25 May 2018 13:03:55 GMT): rthatcher (Fri, 25 May 2018 13:09:59 GMT): GrondinLaurent (Fri, 25 May 2018 13:11:27 GMT): GrondinLaurent (Fri, 25 May 2018 13:11:32 GMT): Legiit (Fri, 25 May 2018 13:13:34 GMT): Legiit (Fri, 25 May 2018 13:13:49 GMT): Legiit (Fri, 25 May 2018 13:13:49 GMT): Legiit (Fri, 25 May 2018 13:13:49 GMT): jverhoelen (Fri, 25 May 2018 13:13:53 GMT): GrondinLaurent (Fri, 25 May 2018 13:16:01 GMT): zachgoll (Fri, 25 May 2018 13:19:28 GMT): Legiit (Fri, 25 May 2018 13:24:17 GMT): Legiit (Fri, 25 May 2018 13:24:24 GMT): rthatcher (Fri, 25 May 2018 13:26:45 GMT): Legiit (Fri, 25 May 2018 13:28:01 GMT): Legiit (Fri, 25 May 2018 13:28:08 GMT): Legiit (Fri, 25 May 2018 13:28:08 GMT): sahandealmeidapey (Fri, 25 May 2018 13:28:33 GMT): ApoorvChandurkar (Fri, 25 May 2018 13:37:21 GMT): karthikshanm (Fri, 25 May 2018 13:51:53 GMT): karthikshanm (Fri, 25 May 2018 13:52:23 GMT): rthatcher (Fri, 25 May 2018 14:26:08 GMT): rthatcher (Fri, 25 May 2018 14:27:59 GMT): davidkel (Fri, 25 May 2018 14:31:18 GMT): davidkel (Fri, 25 May 2018 14:31:18 GMT): sapnaupreti (Fri, 25 May 2018 14:33:08 GMT): davidkel (Fri, 25 May 2018 14:33:51 GMT): tdespenza (Fri, 25 May 2018 14:44:20 GMT): zachgoll (Fri, 25 May 2018 14:45:17 GMT): zachgoll (Fri, 25 May 2018 14:45:17 GMT): rthatcher (Fri, 25 May 2018 14:46:01 GMT): rthatcher (Fri, 25 May 2018 14:46:01 GMT): rjbrock (Fri, 25 May 2018 14:51:49 GMT): JordanDearsley (Fri, 25 May 2018 14:52:06 GMT): JordanDearsley (Fri, 25 May 2018 14:52:11 GMT): JordanDearsley (Fri, 25 May 2018 14:52:11 GMT): JordanDearsley (Fri, 25 May 2018 14:52:59 GMT): JordanDearsley (Fri, 25 May 2018 14:53:57 GMT): JordanDearsley (Fri, 25 May 2018 14:56:46 GMT): JordanDearsley (Fri, 25 May 2018 14:56:46 GMT): davidkel (Fri, 25 May 2018 14:58:09 GMT): zachgoll (Fri, 25 May 2018 14:59:28 GMT): JayPandya (Fri, 25 May 2018 15:00:01 GMT): dselman (Fri, 25 May 2018 15:07:51 GMT): sahandealmeidapey (Fri, 25 May 2018 15:11:24 GMT): sahandealmeidapey (Fri, 25 May 2018 15:20:41 GMT): rthatcher (Fri, 25 May 2018 15:22:03 GMT): rthatcher (Fri, 25 May 2018 15:24:54 GMT): sahandealmeidapey (Fri, 25 May 2018 15:35:38 GMT): sahandealmeidapey (Fri, 25 May 2018 15:53:03 GMT): ValderGallo (Fri, 25 May 2018 16:00:24 GMT): JordanDearsley (Fri, 25 May 2018 16:02:56 GMT): rthatcher (Fri, 25 May 2018 16:08:53 GMT): rthatcher (Fri, 25 May 2018 16:11:49 GMT): JordanDearsley (Fri, 25 May 2018 16:15:20 GMT): JordanDearsley (Fri, 25 May 2018 16:20:02 GMT): JordanDearsley (Fri, 25 May 2018 16:20:13 GMT): kriba (Fri, 25 May 2018 16:22:46 GMT): rthatcher (Fri, 25 May 2018 17:55:51 GMT): JordanDearsley (Fri, 25 May 2018 18:02:29 GMT): JordanDearsley (Fri, 25 May 2018 18:02:35 GMT): rthatcher (Fri, 25 May 2018 18:23:32 GMT): sahandealmeidapey (Fri, 25 May 2018 18:25:22 GMT): JordanDearsley (Fri, 25 May 2018 18:25:40 GMT): JordanDearsley (Fri, 25 May 2018 18:26:18 GMT): rthatcher (Fri, 25 May 2018 18:27:23 GMT): rthatcher (Fri, 25 May 2018 18:29:04 GMT): JordanDearsley (Fri, 25 May 2018 18:29:18 GMT): JordanDearsley (Fri, 25 May 2018 18:30:19 GMT): rthatcher (Fri, 25 May 2018 18:30:57 GMT): sahandealmeidapey (Fri, 25 May 2018 18:31:06 GMT): JordanDearsley (Fri, 25 May 2018 18:50:22 GMT): JordanDearsley (Fri, 25 May 2018 18:50:58 GMT): davidkel (Fri, 25 May 2018 18:58:47 GMT): davidkel (Fri, 25 May 2018 18:58:47 GMT): davidkel (Fri, 25 May 2018 18:58:47 GMT): JordanDearsley (Fri, 25 May 2018 19:11:36 GMT): XInaUpp (Fri, 25 May 2018 19:30:06 GMT): XInaUpp (Fri, 25 May 2018 19:30:26 GMT): XInaUpp (Fri, 25 May 2018 19:31:27 GMT): XInaUpp (Fri, 25 May 2018 19:32:07 GMT): sahandealmeidapey (Fri, 25 May 2018 19:36:50 GMT): sahandealmeidapey (Fri, 25 May 2018 19:37:12 GMT): sahandealmeidapey (Fri, 25 May 2018 19:37:34 GMT): sahandealmeidapey (Fri, 25 May 2018 19:37:43 GMT): sahandealmeidapey (Fri, 25 May 2018 19:37:47 GMT): sahandealmeidapey (Fri, 25 May 2018 19:38:00 GMT): sahandealmeidapey (Fri, 25 May 2018 19:41:50 GMT): sahandealmeidapey (Fri, 25 May 2018 19:41:50 GMT): toddinpal (Fri, 25 May 2018 20:00:52 GMT): sahandealmeidapey (Fri, 25 May 2018 20:01:18 GMT): sahandealmeidapey (Fri, 25 May 2018 20:01:38 GMT): toddinpal (Fri, 25 May 2018 20:03:12 GMT): sahandealmeidapey (Fri, 25 May 2018 20:04:01 GMT): toddinpal (Fri, 25 May 2018 20:04:40 GMT): toddinpal (Fri, 25 May 2018 20:05:38 GMT): sahandealmeidapey (Fri, 25 May 2018 20:05:42 GMT): sahandealmeidapey (Fri, 25 May 2018 20:06:07 GMT): toddinpal (Fri, 25 May 2018 20:06:33 GMT): sahandealmeidapey (Fri, 25 May 2018 20:09:58 GMT): toddinpal (Fri, 25 May 2018 20:10:27 GMT): sahandealmeidapey (Fri, 25 May 2018 20:12:40 GMT): toddinpal (Fri, 25 May 2018 20:12:55 GMT): toddinpal (Fri, 25 May 2018 20:13:59 GMT): sahandealmeidapey (Fri, 25 May 2018 20:16:58 GMT): toddinpal (Fri, 25 May 2018 20:18:14 GMT): toddinpal (Fri, 25 May 2018 20:18:35 GMT): sahandealmeidapey (Fri, 25 May 2018 20:18:38 GMT): sahandealmeidapey (Fri, 25 May 2018 20:18:45 GMT): toddinpal (Fri, 25 May 2018 20:19:26 GMT): sahandealmeidapey (Fri, 25 May 2018 20:19:36 GMT): sahandealmeidapey (Fri, 25 May 2018 20:19:47 GMT): sahandealmeidapey (Fri, 25 May 2018 20:19:57 GMT): toddinpal (Fri, 25 May 2018 20:20:10 GMT): sahandealmeidapey (Fri, 25 May 2018 20:20:37 GMT): sahandealmeidapey (Fri, 25 May 2018 20:20:44 GMT): toddinpal (Fri, 25 May 2018 20:20:46 GMT): sahandealmeidapey (Fri, 25 May 2018 20:20:57 GMT): toddinpal (Fri, 25 May 2018 20:21:06 GMT): toddinpal (Fri, 25 May 2018 20:22:03 GMT): sahandealmeidapey (Fri, 25 May 2018 20:23:22 GMT): toddinpal (Fri, 25 May 2018 20:25:56 GMT): sahandealmeidapey (Fri, 25 May 2018 20:27:17 GMT): toddinpal (Fri, 25 May 2018 20:27:57 GMT): sahandealmeidapey (Fri, 25 May 2018 20:28:03 GMT): toddinpal (Fri, 25 May 2018 20:28:16 GMT): sahandealmeidapey (Fri, 25 May 2018 20:28:17 GMT): toddinpal (Fri, 25 May 2018 20:28:45 GMT): sahandealmeidapey (Fri, 25 May 2018 20:28:59 GMT): sahandealmeidapey (Fri, 25 May 2018 20:29:03 GMT): toddinpal (Fri, 25 May 2018 20:29:23 GMT): sahandealmeidapey (Fri, 25 May 2018 20:29:34 GMT): sahandealmeidapey (Fri, 25 May 2018 20:29:43 GMT): sahandealmeidapey (Fri, 25 May 2018 20:29:44 GMT): sahandealmeidapey (Fri, 25 May 2018 20:30:07 GMT): toddinpal (Fri, 25 May 2018 20:32:16 GMT): sahandealmeidapey (Fri, 25 May 2018 20:32:30 GMT): sahandealmeidapey (Fri, 25 May 2018 20:32:39 GMT): toddinpal (Fri, 25 May 2018 20:33:22 GMT): sahandealmeidapey (Fri, 25 May 2018 20:33:58 GMT): sahandealmeidapey (Fri, 25 May 2018 20:34:11 GMT): toddinpal (Fri, 25 May 2018 20:35:56 GMT): toddinpal (Fri, 25 May 2018 20:37:12 GMT): sahandealmeidapey (Fri, 25 May 2018 20:44:39 GMT): SubhashiniSundaresan (Fri, 25 May 2018 21:27:36 GMT): SubhashiniSundaresan (Fri, 25 May 2018 21:27:39 GMT): SubhashiniSundaresan (Fri, 25 May 2018 21:28:01 GMT): sahandealmeidapey (Fri, 25 May 2018 21:30:24 GMT): eguevarar (Fri, 25 May 2018 21:31:10 GMT): SubhashiniSundaresan (Fri, 25 May 2018 21:37:48 GMT): sghosh2 (Fri, 25 May 2018 21:38:36 GMT): SubhashiniSundaresan (Fri, 25 May 2018 21:42:58 GMT): sghosh2 (Fri, 25 May 2018 21:44:04 GMT): sahandealmeidapey (Fri, 25 May 2018 21:44:44 GMT): sahandealmeidapey (Fri, 25 May 2018 21:44:44 GMT): sghosh2 (Fri, 25 May 2018 21:44:57 GMT): SubhashiniSundaresan (Fri, 25 May 2018 21:45:19 GMT): sghosh2 (Fri, 25 May 2018 21:47:23 GMT): dudleyf (Fri, 25 May 2018 22:23:25 GMT): JavascriptMick (Sat, 26 May 2018 04:33:38 GMT): JavascriptMick (Sat, 26 May 2018 04:34:51 GMT): mengluo668 (Sat, 26 May 2018 06:58:30 GMT): mengluo668 (Sat, 26 May 2018 06:58:30 GMT): XInaUpp (Sat, 26 May 2018 09:59:04 GMT): JayPandya (Sat, 26 May 2018 10:04:19 GMT): JayPandya (Sat, 26 May 2018 10:04:33 GMT): JayPandya (Sat, 26 May 2018 10:04:43 GMT): tdespenza (Sat, 26 May 2018 11:43:45 GMT): toddinpal (Sat, 26 May 2018 13:12:03 GMT): toddinpal (Sat, 26 May 2018 15:33:26 GMT): vidor (Sat, 26 May 2018 16:15:08 GMT): toddinpal (Sat, 26 May 2018 19:52:40 GMT): Shubham-koli (Sun, 27 May 2018 04:30:22 GMT): ziqbalbh (Sun, 27 May 2018 06:58:26 GMT): naveedh27 (Sun, 27 May 2018 08:56:20 GMT): nntoan (Sun, 27 May 2018 11:02:49 GMT): nntoan (Sun, 27 May 2018 11:02:53 GMT): VadimInshakov (Sun, 27 May 2018 11:50:22 GMT): toipacoelho (Sun, 27 May 2018 13:32:48 GMT): toipacoelho (Sun, 27 May 2018 13:32:48 GMT): toipacoelho (Sun, 27 May 2018 13:32:48 GMT): toipacoelho (Sun, 27 May 2018 13:32:48 GMT): gravity (Sun, 27 May 2018 14:41:26 GMT): toipacoelho (Sun, 27 May 2018 15:58:48 GMT): toipacoelho (Sun, 27 May 2018 15:59:00 GMT): absingh0 (Sun, 27 May 2018 16:52:06 GMT): intelligentblock (Sun, 27 May 2018 18:33:20 GMT): AZWRKS (Sun, 27 May 2018 20:59:38 GMT): AZWRKS (Sun, 27 May 2018 20:59:41 GMT): AZWRKS (Sun, 27 May 2018 21:00:41 GMT): AZWRKS (Sun, 27 May 2018 21:00:41 GMT): AZWRKS (Sun, 27 May 2018 21:00:41 GMT): allan.gulley (Sun, 27 May 2018 21:57:12 GMT): davidkhala (Mon, 28 May 2018 02:06:03 GMT): aneb (Mon, 28 May 2018 05:29:05 GMT): sapnaupreti (Mon, 28 May 2018 06:48:57 GMT): RaSa 6 (Mon, 28 May 2018 07:10:34 GMT): RaSa 6 (Mon, 28 May 2018 07:17:49 GMT): VadimInshakov (Mon, 28 May 2018 07:41:20 GMT): HoneyShah (Mon, 28 May 2018 08:08:24 GMT): HoneyShah (Mon, 28 May 2018 08:08:24 GMT): ShiuliRoy (Mon, 28 May 2018 08:40:52 GMT): ShiuliRoy (Mon, 28 May 2018 08:43:32 GMT): ShiuliRoy (Mon, 28 May 2018 08:44:09 GMT): Pranoti (Mon, 28 May 2018 09:11:11 GMT): florianpautot (Mon, 28 May 2018 09:34:33 GMT): dpurnima0709 (Mon, 28 May 2018 09:54:09 GMT): MrDavron (Mon, 28 May 2018 10:21:35 GMT): MrDavron (Mon, 28 May 2018 10:23:47 GMT): lsheks (Mon, 28 May 2018 10:26:43 GMT): VadimInshakov (Mon, 28 May 2018 10:29:24 GMT): varunagarwal (Mon, 28 May 2018 10:44:51 GMT): florianpautot (Mon, 28 May 2018 10:45:31 GMT): florianpautot (Mon, 28 May 2018 10:46:06 GMT): florianpautot (Mon, 28 May 2018 10:47:01 GMT): florianpautot (Mon, 28 May 2018 10:47:52 GMT): florianpautot (Mon, 28 May 2018 10:48:00 GMT): florianpautot (Mon, 28 May 2018 10:48:13 GMT): absingh0 (Mon, 28 May 2018 11:01:35 GMT): JayPandya (Mon, 28 May 2018 11:55:52 GMT): JayPandya (Mon, 28 May 2018 11:55:52 GMT): Poneey (Mon, 28 May 2018 12:26:22 GMT): VadimInshakov (Mon, 28 May 2018 12:45:25 GMT): GoodSamaritan (Mon, 28 May 2018 13:13:27 GMT): Lebski (Mon, 28 May 2018 13:43:00 GMT): mortimr (Mon, 28 May 2018 14:11:07 GMT): guangyingyuan (Mon, 28 May 2018 15:02:05 GMT): sahandealmeidapey (Mon, 28 May 2018 15:21:50 GMT): lkchao78 (Mon, 28 May 2018 16:14:31 GMT): lkchao78 (Mon, 28 May 2018 16:14:31 GMT): lkchao78 (Mon, 28 May 2018 16:14:31 GMT): lkchao78 (Mon, 28 May 2018 16:14:31 GMT): shkakkad (Mon, 28 May 2018 16:22:32 GMT): ShiuliRoy (Mon, 28 May 2018 19:00:30 GMT): toipacoelho (Mon, 28 May 2018 19:18:12 GMT): toipacoelho (Mon, 28 May 2018 19:24:34 GMT): toipacoelho (Mon, 28 May 2018 19:29:13 GMT): ShivamRastogi1 (Mon, 28 May 2018 20:01:15 GMT): ShivamRastogi1 (Mon, 28 May 2018 20:33:35 GMT): ShivamRastogi1 (Mon, 28 May 2018 20:33:35 GMT): toipacoelho (Mon, 28 May 2018 21:36:01 GMT): JayPandya (Mon, 28 May 2018 21:44:31 GMT): dazohan (Mon, 28 May 2018 22:07:04 GMT): dazohan (Mon, 28 May 2018 22:09:10 GMT): toipacoelho (Mon, 28 May 2018 22:57:48 GMT): andrewyu (Mon, 28 May 2018 23:53:36 GMT): cevans781 (Tue, 29 May 2018 02:11:24 GMT): SeetharamanNarayanan (Tue, 29 May 2018 02:56:15 GMT): SeetharamanNarayanan (Tue, 29 May 2018 02:58:07 GMT): VadimInshakov (Tue, 29 May 2018 05:19:14 GMT): dpurnima0709 (Tue, 29 May 2018 05:33:03 GMT): Pranoti (Tue, 29 May 2018 06:20:02 GMT): ShivamRastogi1 (Tue, 29 May 2018 06:33:16 GMT): ShivamRastogi1 (Tue, 29 May 2018 06:33:31 GMT): saeedi (Tue, 29 May 2018 07:05:01 GMT): KindleBitSoln (Tue, 29 May 2018 07:15:10 GMT): KindleBitSoln (Tue, 29 May 2018 07:15:10 GMT): KindleBitSoln (Tue, 29 May 2018 07:15:10 GMT): AmitMittal (Tue, 29 May 2018 07:21:18 GMT): KindleBitSoln (Tue, 29 May 2018 07:25:23 GMT): KindleBitSoln (Tue, 29 May 2018 07:25:28 GMT): AmitMittal (Tue, 29 May 2018 07:31:56 GMT): suryasuresh06 (Tue, 29 May 2018 07:32:20 GMT): suryasuresh06 (Tue, 29 May 2018 07:37:56 GMT): GauravBansal (Tue, 29 May 2018 07:42:08 GMT): abityildiz (Tue, 29 May 2018 07:47:34 GMT): abityildiz (Tue, 29 May 2018 07:47:44 GMT): abityildiz (Tue, 29 May 2018 07:48:04 GMT): abityildiz (Tue, 29 May 2018 07:48:25 GMT): abityildiz (Tue, 29 May 2018 07:48:26 GMT): abityildiz (Tue, 29 May 2018 07:48:26 GMT): abityildiz (Tue, 29 May 2018 07:48:26 GMT): GauravBansal (Tue, 29 May 2018 07:49:01 GMT): abityildiz (Tue, 29 May 2018 07:49:02 GMT): GauravBansal (Tue, 29 May 2018 07:49:15 GMT): GauravBansal (Tue, 29 May 2018 07:49:52 GMT): GauravBansal (Tue, 29 May 2018 07:50:37 GMT): GauravBansal (Tue, 29 May 2018 07:57:43 GMT): HoneyShah (Tue, 29 May 2018 08:06:56 GMT): tomtau (Tue, 29 May 2018 08:08:15 GMT): HoneyShah (Tue, 29 May 2018 08:08:50 GMT): nasht00 (Tue, 29 May 2018 08:09:36 GMT): rthatcher (Tue, 29 May 2018 08:09:51 GMT): suryasuresh06 (Tue, 29 May 2018 08:15:42 GMT): rthatcher (Tue, 29 May 2018 08:19:24 GMT): Poneey (Tue, 29 May 2018 08:22:50 GMT): suryasuresh06 (Tue, 29 May 2018 08:22:53 GMT): lsheks (Tue, 29 May 2018 08:24:27 GMT): rthatcher (Tue, 29 May 2018 08:27:04 GMT): rthatcher (Tue, 29 May 2018 08:39:52 GMT): abityildiz (Tue, 29 May 2018 08:41:50 GMT): rthatcher (Tue, 29 May 2018 08:46:16 GMT): rthatcher (Tue, 29 May 2018 08:49:36 GMT): HoneyShah (Tue, 29 May 2018 08:57:38 GMT): Varun2887 (Tue, 29 May 2018 09:13:00 GMT): suryasuresh06 (Tue, 29 May 2018 09:13:00 GMT): Varun2887 (Tue, 29 May 2018 09:13:06 GMT): mahoney1 (Tue, 29 May 2018 09:25:40 GMT): Varun2887 (Tue, 29 May 2018 09:25:57 GMT): Varun2887 (Tue, 29 May 2018 09:26:02 GMT): Varun2887 (Tue, 29 May 2018 09:26:07 GMT): nicolapaoli (Tue, 29 May 2018 09:26:41 GMT): nicolapaoli (Tue, 29 May 2018 09:26:41 GMT): Varun2887 (Tue, 29 May 2018 09:28:04 GMT): Varun2887 (Tue, 29 May 2018 09:28:46 GMT): Varun2887 (Tue, 29 May 2018 09:28:56 GMT): HoneyShah (Tue, 29 May 2018 09:29:39 GMT): HoneyShah (Tue, 29 May 2018 09:29:39 GMT): MrDavron (Tue, 29 May 2018 09:37:21 GMT): unhappydepig (Tue, 29 May 2018 09:43:03 GMT): saeedi (Tue, 29 May 2018 09:49:38 GMT): JayPandya (Tue, 29 May 2018 09:53:54 GMT): mahoney1 (Tue, 29 May 2018 10:06:43 GMT): mahoney1 (Tue, 29 May 2018 10:06:43 GMT): mahoney1 (Tue, 29 May 2018 10:10:51 GMT): HoneyShah (Tue, 29 May 2018 10:13:22 GMT): HoneyShah (Tue, 29 May 2018 10:13:22 GMT): HoneyShah (Tue, 29 May 2018 10:13:22 GMT): HoneyShah (Tue, 29 May 2018 10:13:22 GMT): HoneyShah (Tue, 29 May 2018 10:13:22 GMT): suva (Tue, 29 May 2018 10:26:38 GMT): ryans3a (Tue, 29 May 2018 10:42:43 GMT): ApoorvChandurkar (Tue, 29 May 2018 10:45:17 GMT): ApoorvChandurkar (Tue, 29 May 2018 10:45:17 GMT): ApoorvChandurkar (Tue, 29 May 2018 10:45:17 GMT): KindleBitSoln (Tue, 29 May 2018 10:50:48 GMT): mahoney1 (Tue, 29 May 2018 11:04:23 GMT): rthatcher (Tue, 29 May 2018 11:12:37 GMT): rthatcher (Tue, 29 May 2018 11:12:37 GMT): mahoney1 (Tue, 29 May 2018 11:13:26 GMT): rthatcher (Tue, 29 May 2018 11:22:09 GMT): mahoney1 (Tue, 29 May 2018 11:35:34 GMT): mahoney1 (Tue, 29 May 2018 11:35:34 GMT): mahoney1 (Tue, 29 May 2018 11:40:18 GMT): mahoney1 (Tue, 29 May 2018 11:42:50 GMT): mahoney1 (Tue, 29 May 2018 11:51:40 GMT): ApoorvChandurkar (Tue, 29 May 2018 11:54:33 GMT): JayPandya (Tue, 29 May 2018 11:55:53 GMT): JayPandya (Tue, 29 May 2018 11:55:53 GMT): mahoney1 (Tue, 29 May 2018 11:56:51 GMT): JayPandya (Tue, 29 May 2018 11:58:01 GMT): JayPandya (Tue, 29 May 2018 11:58:01 GMT): HoneyShah (Tue, 29 May 2018 11:58:18 GMT): HoneyShah (Tue, 29 May 2018 11:58:18 GMT): JayPandya (Tue, 29 May 2018 12:01:37 GMT): JayPandya (Tue, 29 May 2018 12:01:37 GMT): JayPandya (Tue, 29 May 2018 12:01:37 GMT): abilashs (Tue, 29 May 2018 12:05:28 GMT): abilashs (Tue, 29 May 2018 12:05:28 GMT): mengluo668 (Tue, 29 May 2018 12:06:58 GMT): mengluo668 (Tue, 29 May 2018 12:06:58 GMT): mengluo668 (Tue, 29 May 2018 12:06:58 GMT): mengluo668 (Tue, 29 May 2018 12:06:58 GMT): mahoney1 (Tue, 29 May 2018 12:09:24 GMT): suva (Tue, 29 May 2018 12:13:12 GMT): mahoney1 (Tue, 29 May 2018 12:14:50 GMT): mahoney1 (Tue, 29 May 2018 12:16:47 GMT): JayPandya (Tue, 29 May 2018 12:18:07 GMT): KindleBitSoln (Tue, 29 May 2018 12:31:56 GMT): AmitMittal (Tue, 29 May 2018 12:34:28 GMT): rthatcher (Tue, 29 May 2018 12:57:38 GMT): rthatcher (Tue, 29 May 2018 13:02:41 GMT): rthatcher (Tue, 29 May 2018 13:02:41 GMT): lsheks (Tue, 29 May 2018 13:05:20 GMT): AmitMittal (Tue, 29 May 2018 13:06:08 GMT): mahoney1 (Tue, 29 May 2018 13:07:19 GMT): mahoney1 (Tue, 29 May 2018 13:07:19 GMT): GrondinLaurent (Tue, 29 May 2018 13:09:58 GMT): GrondinLaurent (Tue, 29 May 2018 13:10:02 GMT): AmitMittal (Tue, 29 May 2018 13:10:59 GMT): mahoney1 (Tue, 29 May 2018 13:13:13 GMT): AmitMittal (Tue, 29 May 2018 13:19:27 GMT): mengluo668 (Tue, 29 May 2018 13:19:52 GMT): abilashs (Tue, 29 May 2018 13:23:53 GMT): mahoney1 (Tue, 29 May 2018 13:28:57 GMT): mahoney1 (Tue, 29 May 2018 13:28:57 GMT): mahoney1 (Tue, 29 May 2018 13:28:57 GMT): mahoney1 (Tue, 29 May 2018 13:28:57 GMT): FlorentinoSainz (Tue, 29 May 2018 13:40:50 GMT): ryans3a (Tue, 29 May 2018 13:42:43 GMT): sahandealmeidapey (Tue, 29 May 2018 13:46:49 GMT): sahandealmeidapey (Tue, 29 May 2018 13:48:57 GMT): dazohan (Tue, 29 May 2018 13:52:50 GMT): dazohan (Tue, 29 May 2018 13:52:50 GMT): dazohan (Tue, 29 May 2018 13:52:50 GMT): dazohan (Tue, 29 May 2018 13:52:50 GMT): dazohan (Tue, 29 May 2018 13:52:50 GMT): dazohan (Tue, 29 May 2018 13:52:50 GMT): mahoney1 (Tue, 29 May 2018 14:04:50 GMT): mahoney1 (Tue, 29 May 2018 14:06:30 GMT): sahandealmeidapey (Tue, 29 May 2018 14:15:06 GMT): mahoney1 (Tue, 29 May 2018 14:18:40 GMT): mahoney1 (Tue, 29 May 2018 14:18:40 GMT): mahoney1 (Tue, 29 May 2018 14:18:40 GMT): fabianpo (Tue, 29 May 2018 14:37:54 GMT): fabianpo (Tue, 29 May 2018 14:39:03 GMT): fabianpo (Tue, 29 May 2018 14:39:34 GMT): toipacoelho (Tue, 29 May 2018 14:46:51 GMT): fabianpo (Tue, 29 May 2018 14:49:04 GMT): toipacoelho (Tue, 29 May 2018 14:53:30 GMT): fabianpo (Tue, 29 May 2018 14:53:49 GMT): fabianpo (Tue, 29 May 2018 14:53:53 GMT): dazohan (Tue, 29 May 2018 14:58:59 GMT): mahoney1 (Tue, 29 May 2018 15:00:47 GMT): dazohan (Tue, 29 May 2018 15:02:44 GMT): fabianpo (Tue, 29 May 2018 15:05:50 GMT): toipacoelho (Tue, 29 May 2018 15:22:40 GMT): jeffcoop9 (Tue, 29 May 2018 16:05:33 GMT): mahoney1 (Tue, 29 May 2018 16:09:02 GMT): mahoney1 (Tue, 29 May 2018 16:16:54 GMT): mahoney1 (Tue, 29 May 2018 16:16:54 GMT): fabianpo (Tue, 29 May 2018 16:18:36 GMT): venedara (Tue, 29 May 2018 16:22:00 GMT): venedara (Tue, 29 May 2018 16:24:57 GMT): AmitMittal (Tue, 29 May 2018 16:39:46 GMT): toipacoelho (Tue, 29 May 2018 17:46:43 GMT): toipacoelho (Tue, 29 May 2018 17:47:04 GMT): eguevarar (Tue, 29 May 2018 17:55:08 GMT): SeetharamanNarayanan (Tue, 29 May 2018 18:05:10 GMT): davidkel (Tue, 29 May 2018 18:23:36 GMT): SeetharamanNarayanan (Tue, 29 May 2018 18:27:58 GMT): SeetharamanNarayanan (Tue, 29 May 2018 18:28:18 GMT): SeetharamanNarayanan (Tue, 29 May 2018 18:28:18 GMT): davidkel (Tue, 29 May 2018 18:31:49 GMT): siddareddy (Tue, 29 May 2018 18:42:24 GMT): SeetharamanNarayanan (Tue, 29 May 2018 19:00:27 GMT): SeetharamanNarayanan (Tue, 29 May 2018 19:00:27 GMT): diegoduncan21 (Tue, 29 May 2018 21:22:36 GMT): diegoduncan21 (Tue, 29 May 2018 21:23:49 GMT): rogerwilcos (Tue, 29 May 2018 21:33:09 GMT): mjoarder (Wed, 30 May 2018 00:15:26 GMT): SeetharamanNarayanan (Wed, 30 May 2018 01:24:41 GMT): aharita (Wed, 30 May 2018 01:37:48 GMT): SeetharamanNarayanan (Wed, 30 May 2018 01:51:06 GMT): SeetharamanNarayanan (Wed, 30 May 2018 01:51:29 GMT): SeetharamanNarayanan (Wed, 30 May 2018 01:52:01 GMT): aharita (Wed, 30 May 2018 01:54:11 GMT): SeetharamanNarayanan (Wed, 30 May 2018 02:00:14 GMT): mengluo668 (Wed, 30 May 2018 02:16:08 GMT): mengluo668 (Wed, 30 May 2018 02:16:08 GMT): mengluo668 (Wed, 30 May 2018 02:16:08 GMT): mengluo668 (Wed, 30 May 2018 02:16:08 GMT): mengluo668 (Wed, 30 May 2018 02:16:08 GMT): mengluo668 (Wed, 30 May 2018 02:16:08 GMT): AmitMittal (Wed, 30 May 2018 05:07:55 GMT): saeedi (Wed, 30 May 2018 06:14:53 GMT): saeedi (Wed, 30 May 2018 06:14:53 GMT): saeedi (Wed, 30 May 2018 06:14:53 GMT): saeedi (Wed, 30 May 2018 06:14:53 GMT): saeedi (Wed, 30 May 2018 06:14:53 GMT): knagware9 (Wed, 30 May 2018 06:42:42 GMT): knagware9 (Wed, 30 May 2018 06:42:56 GMT): adokce (Wed, 30 May 2018 06:50:34 GMT): adokce (Wed, 30 May 2018 06:51:03 GMT): karunesh10 (Wed, 30 May 2018 06:53:57 GMT): gharshr (Wed, 30 May 2018 07:05:08 GMT): gharshr (Wed, 30 May 2018 07:08:53 GMT): gharshr (Wed, 30 May 2018 07:08:53 GMT): gharshr (Wed, 30 May 2018 07:08:53 GMT): mahoney1 (Wed, 30 May 2018 07:13:03 GMT): karunesh10 (Wed, 30 May 2018 07:20:50 GMT): gharshr (Wed, 30 May 2018 07:22:02 GMT): gharshr (Wed, 30 May 2018 07:22:02 GMT): gharshr (Wed, 30 May 2018 07:22:02 GMT): karunesh10 (Wed, 30 May 2018 07:22:37 GMT): pathfinder2104 (Wed, 30 May 2018 07:26:18 GMT): pathfinder2104 (Wed, 30 May 2018 07:26:37 GMT): gharshr (Wed, 30 May 2018 07:27:48 GMT): RealDeanZhao (Wed, 30 May 2018 07:55:53 GMT): gharshr (Wed, 30 May 2018 08:01:38 GMT): VadimInshakov (Wed, 30 May 2018 08:04:40 GMT): Shubham-koli (Wed, 30 May 2018 08:07:44 GMT): ovallod (Wed, 30 May 2018 08:29:37 GMT): ovallod (Wed, 30 May 2018 08:29:37 GMT): rthatcher (Wed, 30 May 2018 08:32:58 GMT): SimonOberzan (Wed, 30 May 2018 08:33:59 GMT): tahaf10 (Wed, 30 May 2018 08:34:20 GMT): CorentinPacaud (Wed, 30 May 2018 08:41:16 GMT): rthatcher (Wed, 30 May 2018 08:41:29 GMT): mahoney1 (Wed, 30 May 2018 08:41:46 GMT): mahoney1 (Wed, 30 May 2018 08:41:46 GMT): karunesh10 (Wed, 30 May 2018 08:42:09 GMT): ovallod (Wed, 30 May 2018 08:42:40 GMT): ovallod (Wed, 30 May 2018 08:42:40 GMT): rthatcher (Wed, 30 May 2018 08:43:45 GMT): FlorentinoSainz (Wed, 30 May 2018 08:44:54 GMT): FlorentinoSainz (Wed, 30 May 2018 08:46:35 GMT): FlorentinoSainz (Wed, 30 May 2018 08:46:41 GMT): mahoney1 (Wed, 30 May 2018 08:48:02 GMT): tahaf10 (Wed, 30 May 2018 08:50:24 GMT): tahaf10 (Wed, 30 May 2018 08:50:44 GMT): rthatcher (Wed, 30 May 2018 08:55:30 GMT): DenisDoronin (Wed, 30 May 2018 09:01:49 GMT): rthatcher (Wed, 30 May 2018 09:03:22 GMT): ZaheerUdDeen (Wed, 30 May 2018 09:05:00 GMT): ZaheerUdDeen (Wed, 30 May 2018 09:05:46 GMT): ZaheerUdDeen (Wed, 30 May 2018 09:07:16 GMT): DenisDoronin (Wed, 30 May 2018 09:07:46 GMT): rthatcher (Wed, 30 May 2018 09:08:37 GMT): rthatcher (Wed, 30 May 2018 09:11:25 GMT): gharshr (Wed, 30 May 2018 09:14:06 GMT): gharshr (Wed, 30 May 2018 09:16:06 GMT): gharshr (Wed, 30 May 2018 09:18:10 GMT): mahoney1 (Wed, 30 May 2018 09:22:55 GMT): mahoney1 (Wed, 30 May 2018 09:22:55 GMT): rthatcher (Wed, 30 May 2018 09:23:42 GMT): tahaf10 (Wed, 30 May 2018 09:24:23 GMT): tahaf10 (Wed, 30 May 2018 09:26:48 GMT): rthatcher (Wed, 30 May 2018 09:28:49 GMT): DenisDoronin (Wed, 30 May 2018 09:47:53 GMT): mahoney1 (Wed, 30 May 2018 09:49:06 GMT): DenisDoronin (Wed, 30 May 2018 09:52:41 GMT): DenisDoronin (Wed, 30 May 2018 09:52:51 GMT): DenisDoronin (Wed, 30 May 2018 09:52:51 GMT): tahaf10 (Wed, 30 May 2018 09:53:25 GMT): ovallod (Wed, 30 May 2018 09:54:52 GMT): DenisDoronin (Wed, 30 May 2018 09:55:03 GMT): tahaf10 (Wed, 30 May 2018 09:57:53 GMT): rthatcher (Wed, 30 May 2018 09:59:19 GMT): ZaheerUdDeen (Wed, 30 May 2018 10:13:32 GMT): rthatcher (Wed, 30 May 2018 10:28:52 GMT): KindleBitSoln (Wed, 30 May 2018 10:33:04 GMT): KindleBitSoln (Wed, 30 May 2018 10:33:07 GMT): KindleBitSoln (Wed, 30 May 2018 10:33:33 GMT): KindleBitSoln (Wed, 30 May 2018 10:34:11 GMT): KindleBitSoln (Wed, 30 May 2018 10:34:11 GMT): lipoplus (Wed, 30 May 2018 10:49:13 GMT): lipoplus (Wed, 30 May 2018 10:49:30 GMT): MrDavron (Wed, 30 May 2018 11:45:53 GMT): abityildiz (Wed, 30 May 2018 11:49:55 GMT): abityildiz (Wed, 30 May 2018 11:50:10 GMT): pedromlcosta (Wed, 30 May 2018 12:22:36 GMT): pedromlcosta (Wed, 30 May 2018 12:24:05 GMT): professionaldeveloper (Wed, 30 May 2018 12:59:20 GMT): professionaldeveloper (Wed, 30 May 2018 12:59:46 GMT): professionaldeveloper (Wed, 30 May 2018 12:59:46 GMT): professionaldeveloper (Wed, 30 May 2018 13:01:17 GMT): professionaldeveloper (Wed, 30 May 2018 13:01:36 GMT): professionaldeveloper (Wed, 30 May 2018 13:01:56 GMT): FlorentinoSainz (Wed, 30 May 2018 13:06:01 GMT): professionaldeveloper (Wed, 30 May 2018 13:07:57 GMT): saeedi (Wed, 30 May 2018 13:08:28 GMT): rthatcher (Wed, 30 May 2018 13:11:36 GMT): professionaldeveloper (Wed, 30 May 2018 13:14:45 GMT): FlorentinoSainz (Wed, 30 May 2018 13:15:41 GMT): FlorentinoSainz (Wed, 30 May 2018 13:15:44 GMT): FlorentinoSainz (Wed, 30 May 2018 13:15:45 GMT): FlorentinoSainz (Wed, 30 May 2018 13:15:56 GMT): professionaldeveloper (Wed, 30 May 2018 13:16:21 GMT): FlorentinoSainz (Wed, 30 May 2018 13:16:39 GMT): FlorentinoSainz (Wed, 30 May 2018 13:16:42 GMT): FlorentinoSainz (Wed, 30 May 2018 13:16:44 GMT): FlorentinoSainz (Wed, 30 May 2018 13:16:57 GMT): professionaldeveloper (Wed, 30 May 2018 13:17:22 GMT): FlorentinoSainz (Wed, 30 May 2018 13:17:29 GMT): professionaldeveloper (Wed, 30 May 2018 13:17:49 GMT): FlorentinoSainz (Wed, 30 May 2018 13:17:56 GMT): FlorentinoSainz (Wed, 30 May 2018 13:18:09 GMT): mahoney1 (Wed, 30 May 2018 13:20:58 GMT): abityildiz (Wed, 30 May 2018 13:21:23 GMT): abityildiz (Wed, 30 May 2018 13:21:37 GMT): abityildiz (Wed, 30 May 2018 13:21:37 GMT): abityildiz (Wed, 30 May 2018 13:21:37 GMT): abityildiz (Wed, 30 May 2018 13:23:05 GMT): GrondinLaurent (Wed, 30 May 2018 13:25:48 GMT): rthatcher (Wed, 30 May 2018 13:31:47 GMT): professionaldeveloper (Wed, 30 May 2018 13:32:40 GMT): professionaldeveloper (Wed, 30 May 2018 13:33:18 GMT): rthatcher (Wed, 30 May 2018 13:33:47 GMT): FlorentinoSainz (Wed, 30 May 2018 13:36:15 GMT): FlorentinoSainz (Wed, 30 May 2018 13:36:36 GMT): jwaup (Wed, 30 May 2018 13:59:37 GMT): vidor (Wed, 30 May 2018 14:01:26 GMT): rthatcher (Wed, 30 May 2018 14:03:19 GMT): ovallod (Wed, 30 May 2018 14:08:33 GMT): GrondinLaurent (Wed, 30 May 2018 14:09:02 GMT): varunagarwal (Wed, 30 May 2018 14:10:59 GMT): varunagarwal (Wed, 30 May 2018 14:12:41 GMT): varunagarwal (Wed, 30 May 2018 14:12:50 GMT): RealDeanZhao (Wed, 30 May 2018 14:13:03 GMT): RealDeanZhao (Wed, 30 May 2018 14:13:05 GMT): RealDeanZhao (Wed, 30 May 2018 14:13:46 GMT): JohnnyMacdougall (Wed, 30 May 2018 14:18:00 GMT): rthatcher (Wed, 30 May 2018 14:23:01 GMT): varunagarwal (Wed, 30 May 2018 14:25:13 GMT): GrondinLaurent (Wed, 30 May 2018 14:26:33 GMT): mahoney1 (Wed, 30 May 2018 14:27:47 GMT): RealDeanZhao (Wed, 30 May 2018 14:30:24 GMT): RealDeanZhao (Wed, 30 May 2018 14:30:49 GMT): sahandealmeidapey (Wed, 30 May 2018 14:31:35 GMT): sahandealmeidapey (Wed, 30 May 2018 14:31:46 GMT): CorentinPacaud (Wed, 30 May 2018 14:32:26 GMT): rthatcher (Wed, 30 May 2018 14:33:13 GMT): CorentinPacaud (Wed, 30 May 2018 14:33:18 GMT): CorentinPacaud (Wed, 30 May 2018 14:33:18 GMT): mahoney1 (Wed, 30 May 2018 14:34:27 GMT): mahoney1 (Wed, 30 May 2018 14:36:14 GMT): rthatcher (Wed, 30 May 2018 14:36:21 GMT): CorentinPacaud (Wed, 30 May 2018 14:36:25 GMT): sahandealmeidapey (Wed, 30 May 2018 14:39:24 GMT): sahandealmeidapey (Wed, 30 May 2018 14:39:24 GMT): AllisonChan (Wed, 30 May 2018 14:42:32 GMT): CorentinPacaud (Wed, 30 May 2018 14:45:15 GMT): CorentinPacaud (Wed, 30 May 2018 14:45:15 GMT): mahoney1 (Wed, 30 May 2018 14:55:45 GMT): sahandealmeidapey (Wed, 30 May 2018 14:57:56 GMT): SeetharamanNarayanan (Wed, 30 May 2018 15:04:26 GMT): abilashs (Wed, 30 May 2018 15:16:39 GMT): abilashs (Wed, 30 May 2018 15:16:39 GMT): R4FKEN (Wed, 30 May 2018 15:48:45 GMT): rthatcher (Wed, 30 May 2018 15:55:16 GMT): sarapara (Wed, 30 May 2018 16:13:28 GMT): sarapara (Wed, 30 May 2018 16:13:46 GMT): pedromlcosta (Wed, 30 May 2018 16:37:26 GMT): pedromlcosta (Wed, 30 May 2018 16:38:25 GMT): pedromlcosta (Wed, 30 May 2018 16:54:57 GMT): pedromlcosta (Wed, 30 May 2018 16:55:43 GMT): pedromlcosta (Wed, 30 May 2018 17:25:08 GMT): pedromlcosta (Wed, 30 May 2018 17:25:08 GMT): raheelz (Wed, 30 May 2018 18:33:27 GMT): raheelz (Wed, 30 May 2018 18:35:02 GMT): gharbi79 (Wed, 30 May 2018 18:56:00 GMT): gharbi79 (Wed, 30 May 2018 18:59:56 GMT): gharbi79 (Wed, 30 May 2018 19:00:18 GMT): gharbi79 (Wed, 30 May 2018 19:00:29 GMT): gharbi79 (Wed, 30 May 2018 19:00:41 GMT): gharbi79 (Wed, 30 May 2018 19:00:59 GMT): gharbi79 (Wed, 30 May 2018 19:01:05 GMT): K.Amine (Wed, 30 May 2018 23:56:20 GMT): K.Amine (Wed, 30 May 2018 23:59:33 GMT): K.Amine (Wed, 30 May 2018 23:59:52 GMT): K.Amine (Thu, 31 May 2018 00:00:23 GMT): ZaheerUdDeen (Thu, 31 May 2018 00:33:37 GMT): ZaheerUdDeen (Thu, 31 May 2018 01:23:14 GMT): shkakkad (Thu, 31 May 2018 04:29:14 GMT): shkakkad (Thu, 31 May 2018 04:29:32 GMT): shkakkad (Thu, 31 May 2018 04:33:06 GMT): shkakkad (Thu, 31 May 2018 04:34:08 GMT): shkakkad (Thu, 31 May 2018 04:36:25 GMT): abilashs (Thu, 31 May 2018 04:59:10 GMT): SeetharamanNarayanan (Thu, 31 May 2018 05:01:25 GMT): labcoinpoc (Thu, 31 May 2018 05:28:30 GMT): labcoinpoc (Thu, 31 May 2018 05:28:30 GMT): labcoinpoc (Thu, 31 May 2018 05:36:09 GMT): HoneyShah (Thu, 31 May 2018 05:44:09 GMT): HoneyShah (Thu, 31 May 2018 06:02:47 GMT): KindleBitSoln (Thu, 31 May 2018 06:05:47 GMT): HoneyShah (Thu, 31 May 2018 06:10:46 GMT): KindleBitSoln (Thu, 31 May 2018 06:15:16 GMT): KindleBitSoln (Thu, 31 May 2018 06:15:16 GMT): HoneyShah (Thu, 31 May 2018 06:20:14 GMT): HoneyShah (Thu, 31 May 2018 06:20:14 GMT): KindleBitSoln (Thu, 31 May 2018 06:23:28 GMT): KindleBitSoln (Thu, 31 May 2018 06:23:28 GMT): HoneyShah (Thu, 31 May 2018 06:25:37 GMT): HoneyShah (Thu, 31 May 2018 06:25:37 GMT): HoneyShah (Thu, 31 May 2018 06:25:37 GMT): KindleBitSoln (Thu, 31 May 2018 06:26:58 GMT): KindleBitSoln (Thu, 31 May 2018 07:13:27 GMT): KindleBitSoln (Thu, 31 May 2018 07:13:27 GMT): nivant9091 (Thu, 31 May 2018 07:28:17 GMT): SeetharamanNarayanan (Thu, 31 May 2018 07:30:36 GMT): AvikHazra (Thu, 31 May 2018 07:32:31 GMT): adokce (Thu, 31 May 2018 07:39:43 GMT): SeetharamanNarayanan (Thu, 31 May 2018 07:41:53 GMT): CorentinPacaud (Thu, 31 May 2018 08:00:05 GMT): CorentinPacaud (Thu, 31 May 2018 08:00:05 GMT): CorentinPacaud (Thu, 31 May 2018 08:03:05 GMT): HoneyShah (Thu, 31 May 2018 08:08:04 GMT): SeetharamanNarayanan (Thu, 31 May 2018 08:21:53 GMT): CorentinPacaud (Thu, 31 May 2018 08:30:11 GMT): mahoney1 (Thu, 31 May 2018 09:08:28 GMT): CorentinPacaud (Thu, 31 May 2018 09:13:35 GMT): CorentinPacaud (Thu, 31 May 2018 09:13:37 GMT): Adhavpavan (Thu, 31 May 2018 09:14:08 GMT): peter.danko (Thu, 31 May 2018 09:18:02 GMT): HoneyShah (Thu, 31 May 2018 09:26:19 GMT): mahoney1 (Thu, 31 May 2018 09:27:40 GMT): naveedh27 (Thu, 31 May 2018 09:39:39 GMT): CorentinPacaud (Thu, 31 May 2018 09:40:12 GMT): KindleBitSoln (Thu, 31 May 2018 09:48:25 GMT): HoneyShah (Thu, 31 May 2018 09:49:02 GMT): HoneyShah (Thu, 31 May 2018 09:49:02 GMT): KindleBitSoln (Thu, 31 May 2018 09:51:51 GMT): rthatcher (Thu, 31 May 2018 09:55:04 GMT): naveedh27 (Thu, 31 May 2018 09:55:56 GMT): naveedh27 (Thu, 31 May 2018 09:57:19 GMT): mamir10 (Thu, 31 May 2018 10:08:06 GMT): bh4rtp (Thu, 31 May 2018 10:08:46 GMT): bh4rtp (Thu, 31 May 2018 10:08:46 GMT): HoneyShah (Thu, 31 May 2018 10:09:24 GMT): bh4rtp (Thu, 31 May 2018 10:10:21 GMT): mengluo668 (Thu, 31 May 2018 10:15:59 GMT): ronbiz (Thu, 31 May 2018 10:28:41 GMT): bestbeforetoday (Thu, 31 May 2018 10:31:06 GMT): rthatcher (Thu, 31 May 2018 10:37:55 GMT): bh4rtp (Thu, 31 May 2018 10:40:54 GMT): mahoney1 (Thu, 31 May 2018 10:53:53 GMT): FlorentinoSainz (Thu, 31 May 2018 11:00:39 GMT): naveedh27 (Thu, 31 May 2018 11:34:47 GMT): rickyansari (Thu, 31 May 2018 11:36:53 GMT): davidkel (Thu, 31 May 2018 11:40:47 GMT): abityildiz (Thu, 31 May 2018 11:42:16 GMT): HoneyShah (Thu, 31 May 2018 11:55:48 GMT): CorentinPacaud (Thu, 31 May 2018 12:03:47 GMT): rthatcher (Thu, 31 May 2018 12:06:20 GMT): rthatcher (Thu, 31 May 2018 12:08:30 GMT): abityildiz (Thu, 31 May 2018 12:08:32 GMT): GrondinLaurent (Thu, 31 May 2018 12:25:54 GMT): FlorentinoSainz (Thu, 31 May 2018 12:33:27 GMT): FlorentinoSainz (Thu, 31 May 2018 12:33:50 GMT): mengluo668 (Thu, 31 May 2018 12:34:12 GMT): adokce (Thu, 31 May 2018 12:35:24 GMT): rthatcher (Thu, 31 May 2018 12:40:41 GMT): rthatcher (Thu, 31 May 2018 12:42:30 GMT): rthatcher (Thu, 31 May 2018 12:42:30 GMT): GrondinLaurent (Thu, 31 May 2018 12:43:20 GMT): rthatcher (Thu, 31 May 2018 12:51:52 GMT): GrondinLaurent (Thu, 31 May 2018 12:53:55 GMT): GrondinLaurent (Thu, 31 May 2018 12:55:08 GMT): rthatcher (Thu, 31 May 2018 13:34:03 GMT): mahoney1 (Thu, 31 May 2018 13:34:29 GMT): GrondinLaurent (Thu, 31 May 2018 13:37:15 GMT): mahoney1 (Thu, 31 May 2018 13:55:15 GMT): CorentinPacaud (Thu, 31 May 2018 14:35:17 GMT): sahandealmeidapey (Thu, 31 May 2018 15:32:50 GMT): mahoney1 (Thu, 31 May 2018 15:35:50 GMT): mahoney1 (Thu, 31 May 2018 15:35:50 GMT): sahandealmeidapey (Thu, 31 May 2018 15:49:20 GMT): pedromlcosta (Thu, 31 May 2018 16:26:11 GMT): RTZ229 (Thu, 31 May 2018 16:37:58 GMT): mahoney1 (Thu, 31 May 2018 16:44:14 GMT): pedromlcosta (Thu, 31 May 2018 16:44:43 GMT): pedromlcosta (Thu, 31 May 2018 16:44:57 GMT): pedromlcosta (Thu, 31 May 2018 16:44:57 GMT): pedromlcosta (Thu, 31 May 2018 16:51:39 GMT): pedromlcosta (Thu, 31 May 2018 16:51:58 GMT): pedromlcosta (Thu, 31 May 2018 16:52:36 GMT): pedromlcosta (Thu, 31 May 2018 16:52:59 GMT): toddinpal (Thu, 31 May 2018 17:45:09 GMT): tahaf10 (Thu, 31 May 2018 18:00:29 GMT): tahaf10 (Thu, 31 May 2018 18:03:42 GMT): tahaf10 (Thu, 31 May 2018 18:04:38 GMT): erickdochoa (Thu, 31 May 2018 18:46:07 GMT): erickdochoa (Thu, 31 May 2018 18:47:14 GMT): erickdochoa (Thu, 31 May 2018 18:47:26 GMT): MrDavron (Thu, 31 May 2018 18:51:25 GMT): MrDavron (Thu, 31 May 2018 18:52:26 GMT): MrDavron (Thu, 31 May 2018 18:52:26 GMT): erickdochoa (Thu, 31 May 2018 18:54:32 GMT): erickdochoa (Thu, 31 May 2018 18:57:35 GMT): MrDavron (Thu, 31 May 2018 18:58:45 GMT): erickdochoa (Thu, 31 May 2018 18:59:30 GMT): MrDavron (Thu, 31 May 2018 19:00:44 GMT): MrDavron (Thu, 31 May 2018 19:01:40 GMT): pedromlcosta (Thu, 31 May 2018 20:17:48 GMT): pedromlcosta (Thu, 31 May 2018 20:17:52 GMT): hamptonsmith (Thu, 31 May 2018 20:18:52 GMT): pedromlcosta (Thu, 31 May 2018 20:19:01 GMT): pedromlcosta (Thu, 31 May 2018 20:19:01 GMT): BBurgDave (Thu, 31 May 2018 20:27:17 GMT): maestrus (Thu, 31 May 2018 20:35:09 GMT): AllisonChan (Thu, 31 May 2018 21:25:41 GMT): edvito (Thu, 31 May 2018 23:26:02 GMT): mengluo668 (Fri, 01 Jun 2018 03:46:02 GMT): javapriyan (Fri, 01 Jun 2018 04:58:07 GMT): abityildiz (Fri, 01 Jun 2018 06:18:00 GMT): mengluo668 (Fri, 01 Jun 2018 06:30:01 GMT): mengluo668 (Fri, 01 Jun 2018 06:30:01 GMT): alanblyth (Fri, 01 Jun 2018 06:39:22 GMT): alanblyth (Fri, 01 Jun 2018 06:39:29 GMT): alanblyth (Fri, 01 Jun 2018 06:39:41 GMT): mengluo668 (Fri, 01 Jun 2018 07:03:43 GMT): sghosh2 (Fri, 01 Jun 2018 07:20:12 GMT): sghosh2 (Fri, 01 Jun 2018 07:20:24 GMT): sghosh2 (Fri, 01 Jun 2018 07:20:34 GMT): sghosh2 (Fri, 01 Jun 2018 07:21:05 GMT): rthatcher (Fri, 01 Jun 2018 08:04:58 GMT): rthatcher (Fri, 01 Jun 2018 08:08:05 GMT): alanblyth (Fri, 01 Jun 2018 08:09:03 GMT): sghosh2 (Fri, 01 Jun 2018 08:10:39 GMT): rthatcher (Fri, 01 Jun 2018 08:10:44 GMT): alanblyth (Fri, 01 Jun 2018 08:12:34 GMT): sghosh2 (Fri, 01 Jun 2018 08:12:53 GMT): sghosh2 (Fri, 01 Jun 2018 08:12:56 GMT): sghosh2 (Fri, 01 Jun 2018 08:13:16 GMT): sghosh2 (Fri, 01 Jun 2018 08:13:30 GMT): sghosh2 (Fri, 01 Jun 2018 08:13:40 GMT): rthatcher (Fri, 01 Jun 2018 08:16:53 GMT): VadimInshakov (Fri, 01 Jun 2018 08:17:31 GMT): VadimInshakov (Fri, 01 Jun 2018 08:17:31 GMT): rthatcher (Fri, 01 Jun 2018 08:28:39 GMT): alanblyth (Fri, 01 Jun 2018 08:35:31 GMT): rthatcher (Fri, 01 Jun 2018 08:41:19 GMT): alanblyth (Fri, 01 Jun 2018 08:44:05 GMT): sghosh2 (Fri, 01 Jun 2018 08:57:12 GMT): FlorentinoSainz (Fri, 01 Jun 2018 09:10:20 GMT): adokce (Fri, 01 Jun 2018 09:14:55 GMT): FlorentinoSainz (Fri, 01 Jun 2018 09:27:16 GMT): VadimInshakov (Fri, 01 Jun 2018 09:39:46 GMT): pathfinder2104 (Fri, 01 Jun 2018 09:52:47 GMT): HoneyShah (Fri, 01 Jun 2018 10:47:22 GMT): HoneyShah (Fri, 01 Jun 2018 10:47:22 GMT): HoneyShah (Fri, 01 Jun 2018 10:47:22 GMT): mahoney1 (Fri, 01 Jun 2018 10:47:52 GMT): mahoney1 (Fri, 01 Jun 2018 10:57:10 GMT): argman (Fri, 01 Jun 2018 10:57:32 GMT): mahoney1 (Fri, 01 Jun 2018 11:07:43 GMT): argman (Fri, 01 Jun 2018 11:19:31 GMT): argman (Fri, 01 Jun 2018 11:19:31 GMT): mahoney1 (Fri, 01 Jun 2018 11:49:40 GMT): mahoney1 (Fri, 01 Jun 2018 11:49:40 GMT): mahoney1 (Fri, 01 Jun 2018 11:49:40 GMT): DigitalChangeGeek (Fri, 01 Jun 2018 12:03:01 GMT): mahoney1 (Fri, 01 Jun 2018 12:38:04 GMT): CorentinPacaud (Fri, 01 Jun 2018 13:06:35 GMT): Logi (Fri, 01 Jun 2018 13:25:16 GMT): Logi (Fri, 01 Jun 2018 13:34:23 GMT): rthatcher (Fri, 01 Jun 2018 13:57:31 GMT): argman (Fri, 01 Jun 2018 14:31:58 GMT): mahoney1 (Fri, 01 Jun 2018 14:49:44 GMT): mahoney1 (Fri, 01 Jun 2018 14:49:44 GMT): mahoney1 (Fri, 01 Jun 2018 14:49:44 GMT): mahoney1 (Fri, 01 Jun 2018 14:49:44 GMT): argman (Fri, 01 Jun 2018 14:56:45 GMT): argman (Fri, 01 Jun 2018 14:56:45 GMT): sahandealmeidapey (Fri, 01 Jun 2018 17:24:28 GMT): sahandealmeidapey (Fri, 01 Jun 2018 17:24:34 GMT): sahandealmeidapey (Fri, 01 Jun 2018 17:26:13 GMT): sahandealmeidapey (Fri, 01 Jun 2018 17:26:13 GMT): sahandealmeidapey (Fri, 01 Jun 2018 17:26:13 GMT): sahandealmeidapey (Fri, 01 Jun 2018 17:26:13 GMT): sahandealmeidapey (Fri, 01 Jun 2018 17:26:13 GMT): sahandealmeidapey (Fri, 01 Jun 2018 17:26:13 GMT): Gaoqi (Fri, 01 Jun 2018 18:29:17 GMT): jv_400 (Fri, 01 Jun 2018 19:51:54 GMT): jv_400 (Fri, 01 Jun 2018 20:28:41 GMT): DennisM330 (Fri, 01 Jun 2018 20:40:28 GMT): DennisM330 (Fri, 01 Jun 2018 20:40:28 GMT): DennisM330 (Fri, 01 Jun 2018 20:42:19 GMT): tahaf10 (Fri, 01 Jun 2018 22:35:12 GMT): tahaf10 (Fri, 01 Jun 2018 22:35:29 GMT): santhoshkthomas (Sat, 02 Jun 2018 00:02:08 GMT): mengluo668 (Sat, 02 Jun 2018 02:15:01 GMT): SachinVarade2 (Sat, 02 Jun 2018 08:35:39 GMT): shkakkad (Sat, 02 Jun 2018 14:31:04 GMT): VadimInshakov (Sun, 03 Jun 2018 08:43:50 GMT): ronbiz (Sun, 03 Jun 2018 09:05:12 GMT): Arindam (Sun, 03 Jun 2018 12:55:39 GMT): Arindam (Sun, 03 Jun 2018 12:56:05 GMT): VadimInshakov (Sun, 03 Jun 2018 12:58:00 GMT): VadimInshakov (Sun, 03 Jun 2018 12:58:00 GMT): Arindam (Sun, 03 Jun 2018 12:58:54 GMT): Arindam (Sun, 03 Jun 2018 12:59:52 GMT): VadimInshakov (Sun, 03 Jun 2018 13:01:48 GMT): Arindam (Sun, 03 Jun 2018 13:02:18 GMT): Arindam (Sun, 03 Jun 2018 13:12:55 GMT): Arindam (Sun, 03 Jun 2018 13:13:30 GMT): VadimInshakov (Sun, 03 Jun 2018 13:27:20 GMT): VadimInshakov (Sun, 03 Jun 2018 13:27:20 GMT): Arindam (Sun, 03 Jun 2018 13:29:09 GMT): Arindam (Sun, 03 Jun 2018 13:29:15 GMT): VadimInshakov (Sun, 03 Jun 2018 13:29:43 GMT): Arindam (Sun, 03 Jun 2018 13:30:46 GMT): Arindam (Sun, 03 Jun 2018 13:31:17 GMT): VadimInshakov (Sun, 03 Jun 2018 13:32:18 GMT): VadimInshakov (Sun, 03 Jun 2018 13:32:34 GMT): VadimInshakov (Sun, 03 Jun 2018 13:33:11 GMT): Arindam (Sun, 03 Jun 2018 13:37:15 GMT): sumeetbatheja (Sun, 03 Jun 2018 13:54:42 GMT): SidEnigma (Sun, 03 Jun 2018 17:11:15 GMT): SidEnigma (Sun, 03 Jun 2018 17:11:18 GMT): SidEnigma (Sun, 03 Jun 2018 17:11:38 GMT): rameshjhajharia (Sun, 03 Jun 2018 17:21:21 GMT): ydong01 (Sun, 03 Jun 2018 20:15:56 GMT): jcwarfield (Sun, 03 Jun 2018 20:42:47 GMT): ulinux (Mon, 04 Jun 2018 01:29:09 GMT): goelmayank (Mon, 04 Jun 2018 03:41:59 GMT): goelmayank (Mon, 04 Jun 2018 03:41:59 GMT): goelmayank (Mon, 04 Jun 2018 03:41:59 GMT): goelmayank (Mon, 04 Jun 2018 05:59:26 GMT): goelmayank (Mon, 04 Jun 2018 05:59:26 GMT): goelmayank (Mon, 04 Jun 2018 05:59:26 GMT): suryasuresh06 (Mon, 04 Jun 2018 06:09:44 GMT): suryasuresh06 (Mon, 04 Jun 2018 06:10:38 GMT): VadimInshakov (Mon, 04 Jun 2018 07:17:40 GMT): rthatcher (Mon, 04 Jun 2018 08:24:47 GMT): rthatcher (Mon, 04 Jun 2018 08:38:01 GMT): rthatcher (Mon, 04 Jun 2018 08:44:30 GMT): yulong12 (Mon, 04 Jun 2018 08:49:38 GMT): suryasuresh06 (Mon, 04 Jun 2018 08:50:07 GMT): yulong12 (Mon, 04 Jun 2018 08:50:38 GMT): yulong12 (Mon, 04 Jun 2018 08:54:12 GMT): yulong12 (Mon, 04 Jun 2018 08:55:08 GMT): yulong12 (Mon, 04 Jun 2018 08:55:16 GMT): rthatcher (Mon, 04 Jun 2018 09:01:22 GMT): yulong12 (Mon, 04 Jun 2018 09:15:15 GMT): yulong12 (Mon, 04 Jun 2018 09:15:46 GMT): mahoney1 (Mon, 04 Jun 2018 09:19:38 GMT): yulong12 (Mon, 04 Jun 2018 09:21:46 GMT): yulong12 (Mon, 04 Jun 2018 09:21:51 GMT): suryasuresh06 (Mon, 04 Jun 2018 09:22:11 GMT): yulong12 (Mon, 04 Jun 2018 09:23:54 GMT): rthatcher (Mon, 04 Jun 2018 09:25:43 GMT): suryasuresh06 (Mon, 04 Jun 2018 09:26:12 GMT): rthatcher (Mon, 04 Jun 2018 09:28:43 GMT): suryasuresh06 (Mon, 04 Jun 2018 09:30:03 GMT): suryasuresh06 (Mon, 04 Jun 2018 09:30:37 GMT): rthatcher (Mon, 04 Jun 2018 09:33:11 GMT): VadimInshakov (Mon, 04 Jun 2018 09:33:28 GMT): rthatcher (Mon, 04 Jun 2018 09:41:01 GMT): VadimInshakov (Mon, 04 Jun 2018 10:12:16 GMT): jtonline (Mon, 04 Jun 2018 10:18:41 GMT): suryasuresh06 (Mon, 04 Jun 2018 10:23:01 GMT): suryasuresh06 (Mon, 04 Jun 2018 10:23:01 GMT): goelmayank (Mon, 04 Jun 2018 12:20:25 GMT): goelmayank (Mon, 04 Jun 2018 12:24:35 GMT): goelmayank (Mon, 04 Jun 2018 12:24:35 GMT): goelmayank (Mon, 04 Jun 2018 12:24:35 GMT): nasserfci (Mon, 04 Jun 2018 12:29:22 GMT): sahandealmeidapey (Mon, 04 Jun 2018 14:45:34 GMT): VadimInshakov (Mon, 04 Jun 2018 15:09:52 GMT): mahoney1 (Mon, 04 Jun 2018 16:03:02 GMT): mahoney1 (Mon, 04 Jun 2018 16:03:02 GMT): mahoney1 (Mon, 04 Jun 2018 16:03:02 GMT): mahoney1 (Mon, 04 Jun 2018 16:21:01 GMT): VadimInshakov (Mon, 04 Jun 2018 16:22:58 GMT): mahoney1 (Mon, 04 Jun 2018 16:40:35 GMT): mahoney1 (Mon, 04 Jun 2018 16:40:35 GMT): DanHerman_1 (Mon, 04 Jun 2018 17:31:52 GMT): hsu 11 (Mon, 04 Jun 2018 20:48:10 GMT): hsu 11 (Mon, 04 Jun 2018 20:50:32 GMT): ayang99 (Mon, 04 Jun 2018 21:27:06 GMT): ThomasBereczky (Tue, 05 Jun 2018 00:50:46 GMT): ThomasBereczky (Tue, 05 Jun 2018 00:50:58 GMT): ThomasBereczky (Tue, 05 Jun 2018 00:51:02 GMT): ThomasBereczky (Tue, 05 Jun 2018 00:51:07 GMT): ThomasBereczky (Tue, 05 Jun 2018 00:51:15 GMT): LeHieu (Tue, 05 Jun 2018 02:34:17 GMT): rishabh1102 (Tue, 05 Jun 2018 06:12:40 GMT): rishabh1102 (Tue, 05 Jun 2018 06:16:10 GMT): SidEnigma (Tue, 05 Jun 2018 06:58:26 GMT): SidEnigma (Tue, 05 Jun 2018 06:58:31 GMT): DungDangVuong (Tue, 05 Jun 2018 07:11:50 GMT): Poneey (Tue, 05 Jun 2018 07:15:55 GMT): Poneey (Tue, 05 Jun 2018 07:17:11 GMT): argman (Tue, 05 Jun 2018 07:46:41 GMT): argman (Tue, 05 Jun 2018 07:46:41 GMT): karthik.ir (Tue, 05 Jun 2018 07:56:55 GMT): karthik.ir (Tue, 05 Jun 2018 07:58:00 GMT): karthik.ir (Tue, 05 Jun 2018 07:58:00 GMT): karthik.ir (Tue, 05 Jun 2018 07:58:49 GMT): karthik.ir (Tue, 05 Jun 2018 07:58:49 GMT): karthik.ir (Tue, 05 Jun 2018 07:58:49 GMT): karthik.ir (Tue, 05 Jun 2018 08:00:48 GMT): karthik.ir (Tue, 05 Jun 2018 08:01:26 GMT): Poneey (Tue, 05 Jun 2018 08:13:50 GMT): karthik.ir (Tue, 05 Jun 2018 08:15:05 GMT): Poneey (Tue, 05 Jun 2018 08:19:01 GMT): karthik.ir (Tue, 05 Jun 2018 08:21:30 GMT): Poneey (Tue, 05 Jun 2018 08:22:09 GMT): Poneey (Tue, 05 Jun 2018 08:22:24 GMT): rthatcher (Tue, 05 Jun 2018 08:29:42 GMT): karthik.ir (Tue, 05 Jun 2018 08:32:12 GMT): rthatcher (Tue, 05 Jun 2018 08:34:27 GMT): Poneey (Tue, 05 Jun 2018 08:35:28 GMT): HoneyShah (Tue, 05 Jun 2018 08:38:14 GMT): rthatcher (Tue, 05 Jun 2018 08:43:59 GMT): rthatcher (Tue, 05 Jun 2018 08:50:34 GMT): rthatcher (Tue, 05 Jun 2018 08:52:43 GMT): HoneyShah (Tue, 05 Jun 2018 08:56:19 GMT): Poneey (Tue, 05 Jun 2018 09:06:21 GMT): Elulup (Tue, 05 Jun 2018 09:08:52 GMT): rishabh1102 (Tue, 05 Jun 2018 09:28:56 GMT): rishabh1102 (Tue, 05 Jun 2018 09:29:31 GMT): suryasuresh06 (Tue, 05 Jun 2018 09:32:16 GMT): suryasuresh06 (Tue, 05 Jun 2018 09:33:09 GMT): suryasuresh06 (Tue, 05 Jun 2018 09:33:29 GMT): suryasuresh06 (Tue, 05 Jun 2018 09:33:38 GMT): etrn (Tue, 05 Jun 2018 09:49:42 GMT): etrn (Tue, 05 Jun 2018 09:49:42 GMT): raphaelbenoit (Tue, 05 Jun 2018 09:55:58 GMT): rthatcher (Tue, 05 Jun 2018 10:08:10 GMT): rthatcher (Tue, 05 Jun 2018 10:10:22 GMT): Elulup (Tue, 05 Jun 2018 10:12:30 GMT): rishabh1102 (Tue, 05 Jun 2018 10:14:17 GMT): rthatcher (Tue, 05 Jun 2018 10:14:47 GMT): rthatcher (Tue, 05 Jun 2018 10:17:50 GMT): rishabh1102 (Tue, 05 Jun 2018 10:18:10 GMT): HoneyShah (Tue, 05 Jun 2018 10:19:23 GMT): rthatcher (Tue, 05 Jun 2018 10:20:12 GMT): rthatcher (Tue, 05 Jun 2018 10:24:02 GMT): rishabh1102 (Tue, 05 Jun 2018 10:25:44 GMT): rthatcher (Tue, 05 Jun 2018 10:28:33 GMT): Ademola (Tue, 05 Jun 2018 10:34:20 GMT): Ademola (Tue, 05 Jun 2018 10:34:27 GMT): Ademola (Tue, 05 Jun 2018 10:36:03 GMT): HoneyShah (Tue, 05 Jun 2018 10:37:26 GMT): rthatcher (Tue, 05 Jun 2018 10:47:10 GMT): sapnaupreti (Tue, 05 Jun 2018 10:58:46 GMT): sapnaupreti (Tue, 05 Jun 2018 11:02:28 GMT): rishabh1102 (Tue, 05 Jun 2018 11:02:56 GMT): xxg4813 (Tue, 05 Jun 2018 11:06:10 GMT): xxg4813 (Tue, 05 Jun 2018 11:08:23 GMT): rishabh1102 (Tue, 05 Jun 2018 11:11:37 GMT): Poneey (Tue, 05 Jun 2018 11:21:40 GMT): Pranoti (Tue, 05 Jun 2018 12:02:16 GMT): zasamen (Tue, 05 Jun 2018 12:22:36 GMT): zasamen (Tue, 05 Jun 2018 12:22:36 GMT): zasamen (Tue, 05 Jun 2018 12:22:36 GMT): rthatcher (Tue, 05 Jun 2018 12:33:35 GMT): rthatcher (Tue, 05 Jun 2018 12:35:46 GMT): Pranoti (Tue, 05 Jun 2018 12:39:47 GMT): Pranoti (Tue, 05 Jun 2018 12:39:47 GMT): Pranoti (Tue, 05 Jun 2018 12:39:47 GMT): rthatcher (Tue, 05 Jun 2018 13:05:47 GMT): CorentinPacaud (Tue, 05 Jun 2018 13:07:52 GMT): rthatcher (Tue, 05 Jun 2018 13:11:32 GMT): VadimInshakov (Tue, 05 Jun 2018 13:11:50 GMT): rthatcher (Tue, 05 Jun 2018 13:14:27 GMT): zasamen (Tue, 05 Jun 2018 13:15:31 GMT): zasamen (Tue, 05 Jun 2018 13:15:31 GMT): rthatcher (Tue, 05 Jun 2018 13:16:03 GMT): dselman (Tue, 05 Jun 2018 13:16:38 GMT): dselman (Tue, 05 Jun 2018 13:16:49 GMT): rthatcher (Tue, 05 Jun 2018 13:19:15 GMT): CorentinPacaud (Tue, 05 Jun 2018 13:19:28 GMT): Poneey (Tue, 05 Jun 2018 13:19:51 GMT): rthatcher (Tue, 05 Jun 2018 13:20:42 GMT): CorentinPacaud (Tue, 05 Jun 2018 13:20:59 GMT): VadimInshakov (Tue, 05 Jun 2018 13:21:38 GMT): CorentinPacaud (Tue, 05 Jun 2018 13:22:07 GMT): rthatcher (Tue, 05 Jun 2018 13:34:09 GMT): VadimInshakov (Tue, 05 Jun 2018 13:38:18 GMT): VadimInshakov (Tue, 05 Jun 2018 13:39:42 GMT): Pranoti (Tue, 05 Jun 2018 13:44:14 GMT): VadimInshakov (Tue, 05 Jun 2018 14:41:35 GMT): rthatcher (Tue, 05 Jun 2018 14:47:35 GMT): rthatcher (Tue, 05 Jun 2018 14:49:54 GMT): VadimInshakov (Tue, 05 Jun 2018 14:54:42 GMT): VadimInshakov (Tue, 05 Jun 2018 14:54:42 GMT): DenisDoronin (Tue, 05 Jun 2018 15:01:28 GMT): rthatcher (Tue, 05 Jun 2018 15:03:34 GMT): JordanDearsley (Tue, 05 Jun 2018 15:11:39 GMT): JordanDearsley (Tue, 05 Jun 2018 15:11:45 GMT): JordanDearsley (Tue, 05 Jun 2018 15:11:58 GMT): JordanDearsley (Tue, 05 Jun 2018 15:13:23 GMT): VadimInshakov (Tue, 05 Jun 2018 15:20:36 GMT): VadimInshakov (Tue, 05 Jun 2018 15:20:36 GMT): pedromlcosta (Tue, 05 Jun 2018 15:26:53 GMT): rthatcher (Tue, 05 Jun 2018 15:27:43 GMT): rthatcher (Tue, 05 Jun 2018 15:31:13 GMT): pedromlcosta (Tue, 05 Jun 2018 15:31:58 GMT): VadimInshakov (Tue, 05 Jun 2018 15:35:45 GMT): VadimInshakov (Tue, 05 Jun 2018 15:35:45 GMT): VadimInshakov (Tue, 05 Jun 2018 15:35:45 GMT): etrn (Tue, 05 Jun 2018 15:50:34 GMT): ScottMorris (Tue, 05 Jun 2018 16:23:16 GMT): ScottMorris (Tue, 05 Jun 2018 16:23:16 GMT): rthatcher (Tue, 05 Jun 2018 16:24:09 GMT): rthatcher (Tue, 05 Jun 2018 16:30:17 GMT): chrisg (Tue, 05 Jun 2018 16:49:09 GMT): Grendel61 (Tue, 05 Jun 2018 18:20:21 GMT): Grendel61 (Tue, 05 Jun 2018 18:20:21 GMT): Grendel61 (Tue, 05 Jun 2018 18:20:21 GMT): Grendel61 (Tue, 05 Jun 2018 18:20:21 GMT): Grendel61 (Tue, 05 Jun 2018 18:20:21 GMT): Grendel61 (Tue, 05 Jun 2018 18:20:21 GMT): kly4 (Tue, 05 Jun 2018 18:34:12 GMT): ScottMorris (Tue, 05 Jun 2018 18:37:29 GMT): salimmj (Tue, 05 Jun 2018 19:20:08 GMT): Spar (Tue, 05 Jun 2018 19:23:21 GMT): Grendel61 (Tue, 05 Jun 2018 19:42:02 GMT): Grendel61 (Tue, 05 Jun 2018 19:42:02 GMT): voutasaurus (Tue, 05 Jun 2018 20:24:54 GMT): voutasaurus (Tue, 05 Jun 2018 20:30:40 GMT): voutasaurus (Tue, 05 Jun 2018 20:31:06 GMT): aharita (Tue, 05 Jun 2018 23:11:16 GMT): CollinSanborn (Wed, 06 Jun 2018 00:05:41 GMT): chrisatyler (Wed, 06 Jun 2018 02:27:53 GMT): yulong12 (Wed, 06 Jun 2018 02:43:45 GMT): yulong12 (Wed, 06 Jun 2018 02:48:01 GMT): yulong12 (Wed, 06 Jun 2018 02:48:03 GMT): superoo7 (Wed, 06 Jun 2018 04:36:48 GMT): jsmithmap (Wed, 06 Jun 2018 05:52:20 GMT): DenisDoronin (Wed, 06 Jun 2018 06:21:17 GMT): jsmithmap (Wed, 06 Jun 2018 06:25:47 GMT): jsmithmap (Wed, 06 Jun 2018 06:25:47 GMT): zasamen (Wed, 06 Jun 2018 06:42:12 GMT): zasamen (Wed, 06 Jun 2018 06:42:12 GMT): gurpret7 (Wed, 06 Jun 2018 07:00:23 GMT): abityildiz (Wed, 06 Jun 2018 07:33:49 GMT): abityildiz (Wed, 06 Jun 2018 07:33:49 GMT): rthatcher (Wed, 06 Jun 2018 08:28:19 GMT): rthatcher (Wed, 06 Jun 2018 08:36:02 GMT): karthik.ir (Wed, 06 Jun 2018 08:41:32 GMT): karthik.ir (Wed, 06 Jun 2018 08:41:32 GMT): rthatcher (Wed, 06 Jun 2018 08:45:42 GMT): jsmithmap (Wed, 06 Jun 2018 08:54:11 GMT): rthatcher (Wed, 06 Jun 2018 08:57:01 GMT): rkrish82 (Wed, 06 Jun 2018 09:03:08 GMT): rthatcher (Wed, 06 Jun 2018 09:09:34 GMT): rkrish82 (Wed, 06 Jun 2018 09:10:14 GMT): yulong12 (Wed, 06 Jun 2018 09:14:55 GMT): abityildiz (Wed, 06 Jun 2018 09:15:50 GMT): yulong12 (Wed, 06 Jun 2018 09:18:52 GMT): rthatcher (Wed, 06 Jun 2018 09:19:08 GMT): yulong12 (Wed, 06 Jun 2018 09:19:22 GMT): yulong12 (Wed, 06 Jun 2018 09:19:48 GMT): yulong12 (Wed, 06 Jun 2018 09:20:00 GMT): VadimInshakov (Wed, 06 Jun 2018 09:27:44 GMT): VadimInshakov (Wed, 06 Jun 2018 09:28:14 GMT): nherbaut (Wed, 06 Jun 2018 09:29:38 GMT): nherbaut (Wed, 06 Jun 2018 09:32:37 GMT): zasamen (Wed, 06 Jun 2018 09:48:29 GMT): zasamen (Wed, 06 Jun 2018 09:48:58 GMT): jsmithmap (Wed, 06 Jun 2018 10:12:05 GMT): jsmithmap (Wed, 06 Jun 2018 10:12:56 GMT): rthatcher (Wed, 06 Jun 2018 10:16:01 GMT): robotzaintlikeus (Wed, 06 Jun 2018 10:16:23 GMT): robotzaintlikeus (Wed, 06 Jun 2018 10:17:27 GMT): jsmithmap (Wed, 06 Jun 2018 10:17:33 GMT): jsmithmap (Wed, 06 Jun 2018 10:17:33 GMT): mahoney1 (Wed, 06 Jun 2018 10:23:18 GMT): robotzaintlikeus (Wed, 06 Jun 2018 10:25:50 GMT): mahoney1 (Wed, 06 Jun 2018 10:25:52 GMT): jsmithmap (Wed, 06 Jun 2018 10:30:31 GMT): mahoney1 (Wed, 06 Jun 2018 10:34:02 GMT): mahoney1 (Wed, 06 Jun 2018 10:34:02 GMT): mahoney1 (Wed, 06 Jun 2018 10:58:33 GMT): karthik.ir (Wed, 06 Jun 2018 11:00:09 GMT): karthik.ir (Wed, 06 Jun 2018 11:00:09 GMT): karthik.ir (Wed, 06 Jun 2018 11:02:02 GMT): mahoney1 (Wed, 06 Jun 2018 11:03:54 GMT): mahoney1 (Wed, 06 Jun 2018 11:03:54 GMT): KindleBitSoln (Wed, 06 Jun 2018 11:09:02 GMT): KindleBitSoln (Wed, 06 Jun 2018 11:09:15 GMT): MasthanbeeShaik (Wed, 06 Jun 2018 11:21:28 GMT): DenisDoronin (Wed, 06 Jun 2018 11:21:31 GMT): mahoney1 (Wed, 06 Jun 2018 11:22:41 GMT): HoneyShah (Wed, 06 Jun 2018 11:24:03 GMT): mahoney1 (Wed, 06 Jun 2018 11:25:14 GMT): MasthanbeeShaik (Wed, 06 Jun 2018 11:28:04 GMT): mahoney1 (Wed, 06 Jun 2018 11:33:05 GMT): KindleBitSoln (Wed, 06 Jun 2018 11:33:14 GMT): KindleBitSoln (Wed, 06 Jun 2018 11:33:14 GMT): KindleBitSoln (Wed, 06 Jun 2018 11:33:17 GMT): HoneyShah (Wed, 06 Jun 2018 11:43:16 GMT): HoneyShah (Wed, 06 Jun 2018 11:46:04 GMT): HoneyShah (Wed, 06 Jun 2018 11:46:04 GMT): HoneyShah (Wed, 06 Jun 2018 11:46:04 GMT): HoneyShah (Wed, 06 Jun 2018 11:46:04 GMT): RohitYadav2 (Wed, 06 Jun 2018 11:47:55 GMT): RohitYadav2 (Wed, 06 Jun 2018 11:47:55 GMT): HoneyShah (Wed, 06 Jun 2018 11:49:13 GMT): argman (Wed, 06 Jun 2018 11:53:34 GMT): argman (Wed, 06 Jun 2018 11:53:34 GMT): harsha (Wed, 06 Jun 2018 12:13:51 GMT): harsha (Wed, 06 Jun 2018 12:13:51 GMT): harsha (Wed, 06 Jun 2018 12:13:51 GMT): Varun2887 (Wed, 06 Jun 2018 12:14:43 GMT): harsha (Wed, 06 Jun 2018 12:26:13 GMT): rthatcher (Wed, 06 Jun 2018 12:44:18 GMT): rthatcher (Wed, 06 Jun 2018 12:44:18 GMT): nherbaut (Wed, 06 Jun 2018 12:50:54 GMT): karthik.ir (Wed, 06 Jun 2018 12:55:06 GMT): rthatcher (Wed, 06 Jun 2018 12:57:15 GMT): mahoney1 (Wed, 06 Jun 2018 12:58:24 GMT): mahoney1 (Wed, 06 Jun 2018 13:02:36 GMT): KindleBitSoln (Wed, 06 Jun 2018 13:06:20 GMT): rthatcher (Wed, 06 Jun 2018 13:06:51 GMT): KindleBitSoln (Wed, 06 Jun 2018 13:07:04 GMT): mahoney1 (Wed, 06 Jun 2018 13:14:08 GMT): MasthanbeeShaik (Wed, 06 Jun 2018 13:22:10 GMT): ouijdenDhm (Wed, 06 Jun 2018 14:04:50 GMT): VadimInshakov (Wed, 06 Jun 2018 14:30:01 GMT): VadimInshakov (Wed, 06 Jun 2018 14:30:01 GMT): VadimInshakov (Wed, 06 Jun 2018 14:30:01 GMT): VadimInshakov (Wed, 06 Jun 2018 14:30:01 GMT): mahoney1 (Wed, 06 Jun 2018 14:43:14 GMT): VadimInshakov (Wed, 06 Jun 2018 14:52:40 GMT): mahoney1 (Wed, 06 Jun 2018 15:58:13 GMT): mahoney1 (Wed, 06 Jun 2018 15:58:13 GMT): VadimInshakov (Wed, 06 Jun 2018 16:11:21 GMT): mahoney1 (Wed, 06 Jun 2018 16:12:07 GMT): VadimInshakov (Wed, 06 Jun 2018 16:13:04 GMT): skarlekar (Wed, 06 Jun 2018 16:37:14 GMT): skarlekar (Wed, 06 Jun 2018 16:40:12 GMT): ayang99 (Wed, 06 Jun 2018 17:25:17 GMT): ayang99 (Wed, 06 Jun 2018 17:25:58 GMT): apaparazzi0329 (Wed, 06 Jun 2018 17:26:12 GMT): rsher60 (Wed, 06 Jun 2018 17:30:10 GMT): apaparazzi0329 (Wed, 06 Jun 2018 17:35:07 GMT): apaparazzi0329 (Wed, 06 Jun 2018 17:54:34 GMT): salimmj (Wed, 06 Jun 2018 18:04:45 GMT): vish146 (Wed, 06 Jun 2018 18:11:21 GMT): jsmithmap (Wed, 06 Jun 2018 18:57:44 GMT): JayPandya (Wed, 06 Jun 2018 19:35:58 GMT): sahandealmeidapey (Wed, 06 Jun 2018 19:41:32 GMT): sahandealmeidapey (Wed, 06 Jun 2018 19:41:32 GMT): sahandealmeidapey (Wed, 06 Jun 2018 19:41:32 GMT): sahandealmeidapey (Wed, 06 Jun 2018 19:41:32 GMT): sahandealmeidapey (Wed, 06 Jun 2018 19:41:32 GMT): sureshtedla (Wed, 06 Jun 2018 19:45:05 GMT): JayPandya (Wed, 06 Jun 2018 19:54:27 GMT): jsmithmap (Wed, 06 Jun 2018 20:16:30 GMT): jsmithmap (Wed, 06 Jun 2018 20:16:30 GMT): sureshtedla (Wed, 06 Jun 2018 20:44:48 GMT): jsmithmap (Wed, 06 Jun 2018 20:47:56 GMT): sureshtedla (Wed, 06 Jun 2018 20:49:12 GMT): JayPandya (Wed, 06 Jun 2018 20:51:39 GMT): JayPandya (Wed, 06 Jun 2018 20:51:39 GMT): JayPandya (Wed, 06 Jun 2018 20:51:53 GMT): JayPandya (Wed, 06 Jun 2018 20:52:10 GMT): ramiglez30 (Wed, 06 Jun 2018 21:31:39 GMT): ramiglez30 (Wed, 06 Jun 2018 21:34:15 GMT): ramiglez30 (Wed, 06 Jun 2018 21:35:22 GMT): cuevrob (Wed, 06 Jun 2018 22:22:22 GMT): sahandealmeidapey (Wed, 06 Jun 2018 22:43:23 GMT): ZaheerUdDeen (Wed, 06 Jun 2018 22:58:16 GMT): yoyokeen (Thu, 07 Jun 2018 00:37:41 GMT): gedanziger (Thu, 07 Jun 2018 01:07:46 GMT): yulong12 (Thu, 07 Jun 2018 02:24:20 GMT): wcordelo (Thu, 07 Jun 2018 03:06:32 GMT): HoneyShah (Thu, 07 Jun 2018 03:40:10 GMT): HoneyShah (Thu, 07 Jun 2018 03:40:10 GMT): HoneyShah (Thu, 07 Jun 2018 03:40:27 GMT): vpreddi (Thu, 07 Jun 2018 03:58:21 GMT): vpreddi (Thu, 07 Jun 2018 03:58:34 GMT): paras123 (Thu, 07 Jun 2018 04:42:32 GMT): Farhan1122 (Thu, 07 Jun 2018 05:42:44 GMT): HoneyShah (Thu, 07 Jun 2018 05:42:50 GMT): Farhan1122 (Thu, 07 Jun 2018 05:42:59 GMT): abityildiz (Thu, 07 Jun 2018 05:55:10 GMT): bh4rtp (Thu, 07 Jun 2018 07:22:41 GMT): Farhan1122 (Thu, 07 Jun 2018 07:29:43 GMT): Farhan1122 (Thu, 07 Jun 2018 07:29:55 GMT): DineshPrabhu (Thu, 07 Jun 2018 07:51:33 GMT): DineshPrabhu (Thu, 07 Jun 2018 07:52:34 GMT): DineshPrabhu (Thu, 07 Jun 2018 07:53:14 GMT): bh4rtp (Thu, 07 Jun 2018 07:54:19 GMT): DineshPrabhu (Thu, 07 Jun 2018 07:54:58 GMT): Mahesh-Raj (Thu, 07 Jun 2018 08:04:58 GMT): Farhan1122 (Thu, 07 Jun 2018 08:19:25 GMT): rthatcher (Thu, 07 Jun 2018 08:30:00 GMT): rthatcher (Thu, 07 Jun 2018 08:35:42 GMT): Mahesh-Raj (Thu, 07 Jun 2018 08:42:15 GMT): Mahesh-Raj (Thu, 07 Jun 2018 08:42:15 GMT): rthatcher (Thu, 07 Jun 2018 08:51:34 GMT): bh4rtp (Thu, 07 Jun 2018 08:52:21 GMT): rthatcher (Thu, 07 Jun 2018 09:08:05 GMT): bh4rtp (Thu, 07 Jun 2018 09:09:10 GMT): bh4rtp (Thu, 07 Jun 2018 09:10:24 GMT): rthatcher (Thu, 07 Jun 2018 09:18:53 GMT): bh4rtp (Thu, 07 Jun 2018 09:23:44 GMT): bh4rtp (Thu, 07 Jun 2018 09:23:44 GMT): bh4rtp (Thu, 07 Jun 2018 09:31:04 GMT): bh4rtp (Thu, 07 Jun 2018 09:31:59 GMT): rthatcher (Thu, 07 Jun 2018 09:57:32 GMT): rthatcher (Thu, 07 Jun 2018 09:57:32 GMT): bh4rtp (Thu, 07 Jun 2018 10:00:52 GMT): Vanitha (Thu, 07 Jun 2018 10:43:33 GMT): Vanitha (Thu, 07 Jun 2018 10:44:04 GMT): Vanitha (Thu, 07 Jun 2018 10:45:17 GMT): Vanitha (Thu, 07 Jun 2018 10:46:42 GMT): waleed (Thu, 07 Jun 2018 10:47:38 GMT): Vanitha (Thu, 07 Jun 2018 10:50:29 GMT): Vanitha (Thu, 07 Jun 2018 10:50:41 GMT): waleed (Thu, 07 Jun 2018 10:54:06 GMT): waleed (Thu, 07 Jun 2018 10:54:06 GMT): Vanitha (Thu, 07 Jun 2018 10:57:42 GMT): Vanitha (Thu, 07 Jun 2018 10:58:58 GMT): waleed (Thu, 07 Jun 2018 10:59:52 GMT): Vanitha (Thu, 07 Jun 2018 11:02:39 GMT): waleed (Thu, 07 Jun 2018 11:03:27 GMT): Vanitha (Thu, 07 Jun 2018 11:03:39 GMT): waleed (Thu, 07 Jun 2018 11:05:50 GMT): mahoney1 (Thu, 07 Jun 2018 11:11:05 GMT): mahoney1 (Thu, 07 Jun 2018 11:15:27 GMT): rthatcher (Thu, 07 Jun 2018 11:40:02 GMT): argman (Thu, 07 Jun 2018 11:43:43 GMT): mahoney1 (Thu, 07 Jun 2018 13:38:31 GMT): apaparazzi0329 (Thu, 07 Jun 2018 13:44:40 GMT): mahoney1 (Thu, 07 Jun 2018 13:46:04 GMT): apaparazzi0329 (Thu, 07 Jun 2018 13:51:41 GMT): mcoronadog (Thu, 07 Jun 2018 13:58:49 GMT): jcwarfield (Thu, 07 Jun 2018 14:15:57 GMT): cuevrob (Thu, 07 Jun 2018 14:32:48 GMT): sahandealmeidapey (Thu, 07 Jun 2018 14:33:12 GMT): sahandealmeidapey (Thu, 07 Jun 2018 14:33:12 GMT): argman (Thu, 07 Jun 2018 14:40:25 GMT): dklesev (Thu, 07 Jun 2018 15:08:22 GMT): dklesev (Thu, 07 Jun 2018 15:08:35 GMT): dklesev (Thu, 07 Jun 2018 15:09:22 GMT): dklesev (Thu, 07 Jun 2018 15:11:34 GMT): dklesev (Thu, 07 Jun 2018 15:11:34 GMT): mahoney1 (Thu, 07 Jun 2018 15:14:33 GMT): mahoney1 (Thu, 07 Jun 2018 15:16:37 GMT): alanna_96 (Thu, 07 Jun 2018 15:22:12 GMT): mahoney1 (Thu, 07 Jun 2018 15:25:12 GMT): rthatcher (Thu, 07 Jun 2018 15:25:22 GMT): rthatcher (Thu, 07 Jun 2018 15:25:22 GMT): mahoney1 (Thu, 07 Jun 2018 15:27:24 GMT): dklesev (Thu, 07 Jun 2018 15:27:56 GMT): jcwarfield (Thu, 07 Jun 2018 15:28:32 GMT): jcwarfield (Thu, 07 Jun 2018 15:28:32 GMT): jcwarfield (Thu, 07 Jun 2018 15:28:32 GMT): jcwarfield (Thu, 07 Jun 2018 15:28:32 GMT): jcwarfield (Thu, 07 Jun 2018 15:28:32 GMT): dklesev (Thu, 07 Jun 2018 15:29:19 GMT): dklesev (Thu, 07 Jun 2018 15:29:19 GMT): dklesev (Thu, 07 Jun 2018 15:29:19 GMT): rthatcher (Thu, 07 Jun 2018 15:35:16 GMT): rjbrock (Thu, 07 Jun 2018 15:35:46 GMT): apaparazzi0329 (Thu, 07 Jun 2018 15:36:06 GMT): rthatcher (Thu, 07 Jun 2018 15:41:37 GMT): rjbrock (Thu, 07 Jun 2018 15:43:34 GMT): dklesev (Thu, 07 Jun 2018 15:45:27 GMT): rjbrock (Thu, 07 Jun 2018 15:45:52 GMT): mahoney1 (Thu, 07 Jun 2018 15:51:20 GMT): mahoney1 (Thu, 07 Jun 2018 15:51:20 GMT): rthatcher (Thu, 07 Jun 2018 15:51:48 GMT): rjbrock (Thu, 07 Jun 2018 15:52:39 GMT): rjbrock (Thu, 07 Jun 2018 15:55:40 GMT): rjbrock (Thu, 07 Jun 2018 15:57:22 GMT): VadimInshakov (Thu, 07 Jun 2018 15:57:39 GMT): VadimInshakov (Thu, 07 Jun 2018 15:57:39 GMT): Farhan1122 (Thu, 07 Jun 2018 16:14:49 GMT): grice_32 (Thu, 07 Jun 2018 16:19:41 GMT): dklesev (Thu, 07 Jun 2018 16:24:31 GMT): mahoney1 (Thu, 07 Jun 2018 16:33:46 GMT): mahoney1 (Thu, 07 Jun 2018 16:34:28 GMT): mahoney1 (Thu, 07 Jun 2018 16:41:57 GMT): dklesev (Thu, 07 Jun 2018 16:43:01 GMT): dklesev (Thu, 07 Jun 2018 16:43:31 GMT): dklesev (Thu, 07 Jun 2018 16:43:31 GMT): mahoney1 (Thu, 07 Jun 2018 16:45:20 GMT): mahoney1 (Thu, 07 Jun 2018 16:45:20 GMT): dklesev (Thu, 07 Jun 2018 16:45:43 GMT): Logi (Thu, 07 Jun 2018 17:12:51 GMT): Logi (Thu, 07 Jun 2018 17:13:00 GMT): Logi (Thu, 07 Jun 2018 17:13:09 GMT): Logi (Thu, 07 Jun 2018 17:13:23 GMT): Logi (Thu, 07 Jun 2018 17:25:04 GMT): Farhan1122 (Thu, 07 Jun 2018 17:28:16 GMT): Farhan1122 (Thu, 07 Jun 2018 17:28:50 GMT): Farhan1122 (Thu, 07 Jun 2018 17:28:59 GMT): LogeswaranAudhikesavan (Thu, 07 Jun 2018 17:32:35 GMT): LogeswaranAudhikesavan (Thu, 07 Jun 2018 17:33:16 GMT): LogeswaranAudhikesavan (Thu, 07 Jun 2018 17:33:41 GMT): LogeswaranAudhikesavan (Thu, 07 Jun 2018 17:34:13 GMT): sahandealmeidapey (Thu, 07 Jun 2018 17:40:56 GMT): Vanitha (Thu, 07 Jun 2018 17:43:26 GMT): Vanitha (Thu, 07 Jun 2018 17:43:42 GMT): diegoduncan21 (Thu, 07 Jun 2018 17:46:32 GMT): diegoduncan21 (Thu, 07 Jun 2018 17:46:32 GMT): skarlekar (Thu, 07 Jun 2018 17:49:33 GMT): Vanitha (Thu, 07 Jun 2018 17:52:03 GMT): Vanitha (Thu, 07 Jun 2018 17:52:38 GMT): Vanitha (Thu, 07 Jun 2018 17:52:38 GMT): diegoduncan21 (Thu, 07 Jun 2018 17:57:46 GMT): diegoduncan21 (Thu, 07 Jun 2018 17:58:24 GMT): diegoduncan21 (Thu, 07 Jun 2018 17:58:51 GMT): Vanitha (Thu, 07 Jun 2018 17:58:53 GMT): Vanitha (Thu, 07 Jun 2018 17:59:21 GMT): Vanitha (Thu, 07 Jun 2018 18:00:07 GMT): diegoduncan21 (Thu, 07 Jun 2018 18:00:30 GMT): Farhan1122 (Thu, 07 Jun 2018 18:01:17 GMT): Vanitha (Thu, 07 Jun 2018 18:03:17 GMT): Vanitha (Thu, 07 Jun 2018 18:03:52 GMT): diegoduncan21 (Thu, 07 Jun 2018 18:04:52 GMT): diegoduncan21 (Thu, 07 Jun 2018 18:06:12 GMT): Vanitha (Thu, 07 Jun 2018 18:08:28 GMT): Vanitha (Thu, 07 Jun 2018 18:08:58 GMT): Vanitha (Thu, 07 Jun 2018 18:09:37 GMT): diegoduncan21 (Thu, 07 Jun 2018 18:43:12 GMT): diegoduncan21 (Thu, 07 Jun 2018 18:43:12 GMT): sahandealmeidapey (Thu, 07 Jun 2018 19:05:41 GMT): apaparazzi0329 (Thu, 07 Jun 2018 19:20:22 GMT): PawelD (Thu, 07 Jun 2018 19:31:23 GMT): VadimInshakov (Thu, 07 Jun 2018 19:37:51 GMT): YajunLiu (Thu, 07 Jun 2018 20:00:26 GMT): Batatos (Thu, 07 Jun 2018 20:41:41 GMT): rjbrock (Thu, 07 Jun 2018 21:17:17 GMT): rjbrock (Thu, 07 Jun 2018 21:18:11 GMT): rahalio (Thu, 07 Jun 2018 22:36:37 GMT): krisava (Fri, 08 Jun 2018 00:16:43 GMT): krisava (Fri, 08 Jun 2018 00:18:43 GMT): vkblue (Fri, 08 Jun 2018 01:09:20 GMT): tdespenza (Fri, 08 Jun 2018 01:23:20 GMT): labcoinpoc (Fri, 08 Jun 2018 01:39:33 GMT): bh4rtp (Fri, 08 Jun 2018 02:03:00 GMT): bh4rtp (Fri, 08 Jun 2018 02:03:57 GMT): LichenShen (Fri, 08 Jun 2018 03:43:11 GMT): abraham (Fri, 08 Jun 2018 04:02:18 GMT): Logi (Fri, 08 Jun 2018 04:04:02 GMT): Logi (Fri, 08 Jun 2018 04:08:06 GMT): Farhan1122 (Fri, 08 Jun 2018 05:13:36 GMT): Logi (Fri, 08 Jun 2018 05:16:44 GMT): Logi (Fri, 08 Jun 2018 05:17:06 GMT): hamza-kakar (Fri, 08 Jun 2018 06:42:24 GMT): hamza-kakar (Fri, 08 Jun 2018 06:43:09 GMT): aKesav (Fri, 08 Jun 2018 07:31:44 GMT): rthatcher (Fri, 08 Jun 2018 08:21:37 GMT): rthatcher (Fri, 08 Jun 2018 08:34:03 GMT): rthatcher (Fri, 08 Jun 2018 08:34:03 GMT): HoneyShah (Fri, 08 Jun 2018 08:34:23 GMT): HoneyShah (Fri, 08 Jun 2018 08:35:48 GMT): varunagarwal (Fri, 08 Jun 2018 08:41:04 GMT): rthatcher (Fri, 08 Jun 2018 08:41:27 GMT): HoneyShah (Fri, 08 Jun 2018 08:43:54 GMT): mahoney1 (Fri, 08 Jun 2018 08:45:58 GMT): varunagarwal (Fri, 08 Jun 2018 08:46:21 GMT): mahoney1 (Fri, 08 Jun 2018 08:47:31 GMT): varunagarwal (Fri, 08 Jun 2018 08:48:41 GMT): varunagarwal (Fri, 08 Jun 2018 08:48:41 GMT): mahoney1 (Fri, 08 Jun 2018 09:31:09 GMT): mahoney1 (Fri, 08 Jun 2018 09:31:09 GMT): Varun2887 (Fri, 08 Jun 2018 09:40:55 GMT): Varun2887 (Fri, 08 Jun 2018 10:05:44 GMT): Varun2887 (Fri, 08 Jun 2018 10:46:57 GMT): Varun2887 (Fri, 08 Jun 2018 10:50:44 GMT): Varun2887 (Fri, 08 Jun 2018 10:50:49 GMT): rthatcher (Fri, 08 Jun 2018 11:06:55 GMT): rthatcher (Fri, 08 Jun 2018 11:11:11 GMT): tdespenza (Fri, 08 Jun 2018 11:41:25 GMT): HoneyShah (Fri, 08 Jun 2018 11:55:21 GMT): HoneyShah (Fri, 08 Jun 2018 11:55:21 GMT): JayPandya (Fri, 08 Jun 2018 12:05:55 GMT): JayPandya (Fri, 08 Jun 2018 12:13:21 GMT): VadimInshakov (Fri, 08 Jun 2018 12:20:20 GMT): VadimInshakov (Fri, 08 Jun 2018 12:20:20 GMT): rthatcher (Fri, 08 Jun 2018 12:21:26 GMT): syakhlas (Fri, 08 Jun 2018 12:23:32 GMT): VadimInshakov (Fri, 08 Jun 2018 12:32:19 GMT): VadimInshakov (Fri, 08 Jun 2018 12:32:19 GMT): VadimInshakov (Fri, 08 Jun 2018 12:36:02 GMT): VadimInshakov (Fri, 08 Jun 2018 12:36:02 GMT): VadimInshakov (Fri, 08 Jun 2018 12:36:02 GMT): JayPandya (Fri, 08 Jun 2018 12:38:05 GMT): JayPandya (Fri, 08 Jun 2018 12:38:05 GMT): VadimInshakov (Fri, 08 Jun 2018 12:49:26 GMT): PrashantKhatri21 (Fri, 08 Jun 2018 13:16:16 GMT): PrashantKhatri21 (Fri, 08 Jun 2018 13:17:16 GMT): mahoney1 (Fri, 08 Jun 2018 13:38:20 GMT): rthatcher (Fri, 08 Jun 2018 13:45:05 GMT): sahandealmeidapey (Fri, 08 Jun 2018 14:04:59 GMT): diegoduncan21 (Fri, 08 Jun 2018 14:10:01 GMT): JayPandya (Fri, 08 Jun 2018 14:11:13 GMT): PrashantKhatri21 (Fri, 08 Jun 2018 14:13:00 GMT): rthatcher (Fri, 08 Jun 2018 14:14:34 GMT): PrashantKhatri21 (Fri, 08 Jun 2018 14:17:24 GMT): PrashantKhatri21 (Fri, 08 Jun 2018 14:18:06 GMT): rthatcher (Fri, 08 Jun 2018 14:28:20 GMT): VadimInshakov (Fri, 08 Jun 2018 14:32:23 GMT): AnilAlapati (Fri, 08 Jun 2018 15:06:58 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:37:32 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:37:35 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:37:42 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:37:50 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:38:00 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:38:01 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:38:44 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:39:02 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:39:52 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:39:57 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:40:16 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:40:45 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:40:49 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:40:55 GMT): rthatcher (Fri, 08 Jun 2018 15:41:34 GMT): ThomasBereczky (Fri, 08 Jun 2018 15:41:41 GMT): JayPandya (Fri, 08 Jun 2018 15:45:25 GMT): rthatcher (Fri, 08 Jun 2018 16:00:53 GMT): mahoney1 (Fri, 08 Jun 2018 16:00:55 GMT): Poneey (Fri, 08 Jun 2018 16:20:54 GMT): mahoney1 (Fri, 08 Jun 2018 16:46:14 GMT): JayPandya (Fri, 08 Jun 2018 17:17:12 GMT): JayPandya (Fri, 08 Jun 2018 17:18:16 GMT): JayPandya (Fri, 08 Jun 2018 17:18:16 GMT): JayPandya (Fri, 08 Jun 2018 17:19:28 GMT): Poneey (Fri, 08 Jun 2018 18:35:58 GMT): Poneey (Fri, 08 Jun 2018 18:39:32 GMT): Ldsenow (Sat, 09 Jun 2018 00:46:13 GMT): krabradosty (Sat, 09 Jun 2018 10:39:17 GMT): jeno.g (Sat, 09 Jun 2018 11:25:19 GMT): varunagarwal (Sat, 09 Jun 2018 11:37:19 GMT): varunagarwal (Sat, 09 Jun 2018 11:37:19 GMT): charlyjose (Sat, 09 Jun 2018 12:40:23 GMT): VadimInshakov (Sat, 09 Jun 2018 14:56:11 GMT): martin.halford (Sat, 09 Jun 2018 15:13:02 GMT): VadimInshakov (Sat, 09 Jun 2018 15:36:42 GMT): VadimInshakov (Sat, 09 Jun 2018 16:00:19 GMT): SidEnigma (Sat, 09 Jun 2018 17:46:20 GMT): SidEnigma (Sat, 09 Jun 2018 17:46:41 GMT): SidEnigma (Sat, 09 Jun 2018 17:46:51 GMT): pedromlcosta (Sat, 09 Jun 2018 20:46:14 GMT): MichaelCutrer (Sat, 09 Jun 2018 21:17:26 GMT): MichaelCutrer (Sat, 09 Jun 2018 21:17:27 GMT): MichaelCutrer (Sat, 09 Jun 2018 21:18:06 GMT): MichaelCutrer (Sat, 09 Jun 2018 21:18:36 GMT): MichaelCutrer (Sat, 09 Jun 2018 21:33:40 GMT): renaudadorlee (Sun, 10 Jun 2018 09:37:48 GMT): renaudadorlee (Sun, 10 Jun 2018 09:40:24 GMT): renaudadorlee (Sun, 10 Jun 2018 09:46:46 GMT): VadimInshakov (Sun, 10 Jun 2018 09:52:48 GMT): VadimInshakov (Sun, 10 Jun 2018 09:52:48 GMT): VadimInshakov (Sun, 10 Jun 2018 09:55:57 GMT): VadimInshakov (Sun, 10 Jun 2018 09:56:21 GMT): mmick (Sun, 10 Jun 2018 10:03:38 GMT): suryasuresh06 (Sun, 10 Jun 2018 10:42:07 GMT): suryasuresh06 (Sun, 10 Jun 2018 10:42:22 GMT): suryasuresh06 (Sun, 10 Jun 2018 10:42:22 GMT): SudipGhosh (Sun, 10 Jun 2018 15:25:30 GMT): PawelD (Sun, 10 Jun 2018 16:27:59 GMT): PawelD (Sun, 10 Jun 2018 16:28:28 GMT): PawelD (Sun, 10 Jun 2018 16:28:28 GMT): PawelD (Sun, 10 Jun 2018 16:28:28 GMT): PawelD (Sun, 10 Jun 2018 16:28:28 GMT): kmk324 (Sun, 10 Jun 2018 17:09:55 GMT): MuhammadSalah (Sun, 10 Jun 2018 20:18:11 GMT): MuhammadSalah (Sun, 10 Jun 2018 20:18:40 GMT): MuhammadSalah (Sun, 10 Jun 2018 20:18:49 GMT): MuhammadSalah (Sun, 10 Jun 2018 20:59:31 GMT): labcoinpoc (Mon, 11 Jun 2018 01:32:18 GMT): MuhammadSalah (Mon, 11 Jun 2018 01:36:59 GMT): MuhammadSalah (Mon, 11 Jun 2018 01:37:16 GMT): MuhammadSalah (Mon, 11 Jun 2018 01:39:04 GMT): labcoinpoc (Mon, 11 Jun 2018 01:57:46 GMT): labcoinpoc (Mon, 11 Jun 2018 01:57:46 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:01:21 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:01:53 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:03:03 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:06:17 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:06:56 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:07:04 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:07:31 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:08:05 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:08:44 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:09:11 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:09:56 GMT): labcoinpoc (Mon, 11 Jun 2018 02:22:21 GMT): labcoinpoc (Mon, 11 Jun 2018 02:22:21 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:24:13 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:24:50 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:25:07 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:25:32 GMT): labcoinpoc (Mon, 11 Jun 2018 02:34:58 GMT): MuhammadSalah (Mon, 11 Jun 2018 02:36:10 GMT): HoneyShah (Mon, 11 Jun 2018 04:25:10 GMT): miiiiiyoung (Mon, 11 Jun 2018 05:26:46 GMT): miiiiiyoung (Mon, 11 Jun 2018 05:26:46 GMT): miiiiiyoung (Mon, 11 Jun 2018 05:26:46 GMT): miiiiiyoung (Mon, 11 Jun 2018 05:26:46 GMT): miiiiiyoung (Mon, 11 Jun 2018 05:28:42 GMT): Farhan1122 (Mon, 11 Jun 2018 06:02:01 GMT): Farhan1122 (Mon, 11 Jun 2018 06:02:21 GMT): Farhan1122 (Mon, 11 Jun 2018 06:03:12 GMT): PawelD (Mon, 11 Jun 2018 06:16:40 GMT): Varun2887 (Mon, 11 Jun 2018 06:45:05 GMT): Varun2887 (Mon, 11 Jun 2018 06:45:17 GMT): Poneey (Mon, 11 Jun 2018 06:48:07 GMT): labcoinpoc (Mon, 11 Jun 2018 07:02:45 GMT): Varun2887 (Mon, 11 Jun 2018 07:13:02 GMT): Poneey (Mon, 11 Jun 2018 07:25:05 GMT): Chinmaya.mahuntc (Mon, 11 Jun 2018 07:30:17 GMT): labcoinpoc (Mon, 11 Jun 2018 07:32:59 GMT): miiiiiyoung (Mon, 11 Jun 2018 08:07:29 GMT): Farhan1122 (Mon, 11 Jun 2018 08:11:36 GMT): miiiiiyoung (Mon, 11 Jun 2018 08:14:07 GMT): miiiiiyoung (Mon, 11 Jun 2018 08:15:52 GMT): rthatcher (Mon, 11 Jun 2018 08:29:59 GMT): miiiiiyoung (Mon, 11 Jun 2018 08:33:55 GMT): rthatcher (Mon, 11 Jun 2018 08:39:23 GMT): miiiiiyoung (Mon, 11 Jun 2018 08:53:55 GMT): ApoorvChandurkar (Mon, 11 Jun 2018 08:54:12 GMT): rthatcher (Mon, 11 Jun 2018 08:55:45 GMT): miiiiiyoung (Mon, 11 Jun 2018 08:55:58 GMT): miiiiiyoung (Mon, 11 Jun 2018 08:55:58 GMT): PawelD (Mon, 11 Jun 2018 08:57:07 GMT): PawelD (Mon, 11 Jun 2018 08:58:41 GMT): PawelD (Mon, 11 Jun 2018 08:59:05 GMT): PawelD (Mon, 11 Jun 2018 09:00:32 GMT): rthatcher (Mon, 11 Jun 2018 09:03:31 GMT): mahoney1 (Mon, 11 Jun 2018 09:04:42 GMT): PawelD (Mon, 11 Jun 2018 09:05:48 GMT): rthatcher (Mon, 11 Jun 2018 09:19:57 GMT): PawelD (Mon, 11 Jun 2018 09:20:34 GMT): mahoney1 (Mon, 11 Jun 2018 09:20:34 GMT): mahoney1 (Mon, 11 Jun 2018 09:20:34 GMT): mahoney1 (Mon, 11 Jun 2018 09:20:34 GMT): JayPandya (Mon, 11 Jun 2018 09:30:33 GMT): JayPandya (Mon, 11 Jun 2018 09:30:42 GMT): nicolapaoli (Mon, 11 Jun 2018 09:52:52 GMT): nicolapaoli (Mon, 11 Jun 2018 09:52:52 GMT): zhulg (Mon, 11 Jun 2018 10:08:28 GMT): mahoney1 (Mon, 11 Jun 2018 10:17:59 GMT): nicolapaoli (Mon, 11 Jun 2018 10:21:32 GMT): mahoney1 (Mon, 11 Jun 2018 10:24:56 GMT): JayPandya (Mon, 11 Jun 2018 10:25:59 GMT): mahoney1 (Mon, 11 Jun 2018 10:25:59 GMT): mahoney1 (Mon, 11 Jun 2018 10:25:59 GMT): mahoney1 (Mon, 11 Jun 2018 10:28:18 GMT): JayPandya (Mon, 11 Jun 2018 10:28:52 GMT): zhulg (Mon, 11 Jun 2018 10:29:52 GMT): zhulg (Mon, 11 Jun 2018 10:29:52 GMT): mahoney1 (Mon, 11 Jun 2018 10:30:04 GMT): mahoney1 (Mon, 11 Jun 2018 10:31:25 GMT): JayPandya (Mon, 11 Jun 2018 10:32:49 GMT): JayPandya (Mon, 11 Jun 2018 10:33:23 GMT): mahoney1 (Mon, 11 Jun 2018 10:37:05 GMT): mahoney1 (Mon, 11 Jun 2018 10:37:05 GMT): JayPandya (Mon, 11 Jun 2018 10:40:01 GMT): JayPandya (Mon, 11 Jun 2018 10:40:01 GMT): JayPandya (Mon, 11 Jun 2018 10:40:01 GMT): JayPandya (Mon, 11 Jun 2018 10:40:54 GMT): zhulg (Mon, 11 Jun 2018 10:44:14 GMT): mahoney1 (Mon, 11 Jun 2018 10:47:36 GMT): mahoney1 (Mon, 11 Jun 2018 10:48:25 GMT): zhulg (Mon, 11 Jun 2018 10:52:12 GMT): VadimInshakov (Mon, 11 Jun 2018 10:58:52 GMT): prmdmshra (Mon, 11 Jun 2018 10:59:21 GMT): prmdmshra (Mon, 11 Jun 2018 10:59:21 GMT): VadimInshakov (Mon, 11 Jun 2018 10:59:25 GMT): mahoney1 (Mon, 11 Jun 2018 11:08:39 GMT): mahoney1 (Mon, 11 Jun 2018 11:09:16 GMT): mahoney1 (Mon, 11 Jun 2018 11:09:16 GMT): mahoney1 (Mon, 11 Jun 2018 11:09:16 GMT): mahoney1 (Mon, 11 Jun 2018 11:09:16 GMT): HoneyShah (Mon, 11 Jun 2018 11:28:26 GMT): mahoney1 (Mon, 11 Jun 2018 11:32:47 GMT): HoneyShah (Mon, 11 Jun 2018 11:58:17 GMT): VadimInshakov (Mon, 11 Jun 2018 12:36:53 GMT): muna (Mon, 11 Jun 2018 12:45:53 GMT): VadimInshakov (Mon, 11 Jun 2018 12:49:26 GMT): VadimInshakov (Mon, 11 Jun 2018 12:49:26 GMT): muna (Mon, 11 Jun 2018 12:50:29 GMT): rthatcher (Mon, 11 Jun 2018 12:54:57 GMT): VadimInshakov (Mon, 11 Jun 2018 12:56:26 GMT): MasthanbeeShaik (Mon, 11 Jun 2018 12:57:13 GMT): VadimInshakov (Mon, 11 Jun 2018 12:57:39 GMT): mahoney1 (Mon, 11 Jun 2018 13:10:01 GMT): KindleBitSoln (Mon, 11 Jun 2018 13:44:14 GMT): KindleBitSoln (Mon, 11 Jun 2018 13:44:27 GMT): KindleBitSoln (Mon, 11 Jun 2018 13:44:55 GMT): rthatcher (Mon, 11 Jun 2018 14:11:41 GMT): mmick (Mon, 11 Jun 2018 16:57:27 GMT): chrisg (Mon, 11 Jun 2018 18:19:50 GMT): SeetharamanNarayanan (Mon, 11 Jun 2018 18:24:37 GMT): SeetharamanNarayanan (Mon, 11 Jun 2018 18:25:47 GMT): SeetharamanNarayanan (Mon, 11 Jun 2018 18:26:24 GMT): SeetharamanNarayanan (Mon, 11 Jun 2018 18:52:41 GMT): SeetharamanNarayanan (Mon, 11 Jun 2018 18:53:50 GMT): SeetharamanNarayanan (Mon, 11 Jun 2018 18:55:00 GMT): SeetharamanNarayanan (Mon, 11 Jun 2018 18:55:07 GMT): rsher60 (Mon, 11 Jun 2018 19:52:02 GMT): rsher60 (Mon, 11 Jun 2018 19:52:02 GMT): rsher60 (Mon, 11 Jun 2018 19:52:02 GMT): PawelD (Mon, 11 Jun 2018 19:53:41 GMT): PawelD (Mon, 11 Jun 2018 19:54:41 GMT): PawelD (Mon, 11 Jun 2018 19:55:31 GMT): rsher60 (Mon, 11 Jun 2018 20:19:40 GMT): sahandealmeidapey (Mon, 11 Jun 2018 20:24:51 GMT): MuhammadSalah (Mon, 11 Jun 2018 23:09:34 GMT): karthik.ir (Tue, 12 Jun 2018 00:31:23 GMT): karthik.ir (Tue, 12 Jun 2018 00:31:23 GMT): karthik.ir (Tue, 12 Jun 2018 00:31:23 GMT): alex4ip (Tue, 12 Jun 2018 00:36:08 GMT): prmdmshra (Tue, 12 Jun 2018 02:08:55 GMT): karthik.ir (Tue, 12 Jun 2018 03:39:30 GMT): KindleBitSoln (Tue, 12 Jun 2018 04:36:13 GMT): sreeharsha_katta (Tue, 12 Jun 2018 04:38:59 GMT): ronbiz (Tue, 12 Jun 2018 05:40:14 GMT): yulong12 (Tue, 12 Jun 2018 05:47:30 GMT): yulong12 (Tue, 12 Jun 2018 05:47:42 GMT): yulong12 (Tue, 12 Jun 2018 05:48:15 GMT): HoneyShah (Tue, 12 Jun 2018 06:41:27 GMT): HoneyShah (Tue, 12 Jun 2018 06:41:27 GMT): Farhan1122 (Tue, 12 Jun 2018 07:56:45 GMT): Varun2887 (Tue, 12 Jun 2018 07:57:55 GMT): Varun2887 (Tue, 12 Jun 2018 07:58:01 GMT): KindleBitSoln (Tue, 12 Jun 2018 07:59:57 GMT): karthik.ir (Tue, 12 Jun 2018 08:01:17 GMT): Varun2887 (Tue, 12 Jun 2018 08:04:57 GMT): Varun2887 (Tue, 12 Jun 2018 08:05:17 GMT): HoneyShah (Tue, 12 Jun 2018 08:23:31 GMT): rthatcher (Tue, 12 Jun 2018 08:35:38 GMT): rthatcher (Tue, 12 Jun 2018 08:48:02 GMT): rthatcher (Tue, 12 Jun 2018 08:50:34 GMT): rthatcher (Tue, 12 Jun 2018 08:58:53 GMT): rthatcher (Tue, 12 Jun 2018 09:08:08 GMT): HoneyShah (Tue, 12 Jun 2018 09:10:08 GMT): HoneyShah (Tue, 12 Jun 2018 09:10:08 GMT): yulong12 (Tue, 12 Jun 2018 09:14:21 GMT): rthatcher (Tue, 12 Jun 2018 09:16:31 GMT): karthik.ir (Tue, 12 Jun 2018 09:17:11 GMT): yulong12 (Tue, 12 Jun 2018 09:17:18 GMT): yulong12 (Tue, 12 Jun 2018 09:17:43 GMT): Farhan1122 (Tue, 12 Jun 2018 09:18:18 GMT): yulong12 (Tue, 12 Jun 2018 09:18:19 GMT): Farhan1122 (Tue, 12 Jun 2018 09:18:41 GMT): yulong12 (Tue, 12 Jun 2018 09:18:44 GMT): yulong12 (Tue, 12 Jun 2018 09:19:01 GMT): Farhan1122 (Tue, 12 Jun 2018 09:20:32 GMT): Farhan1122 (Tue, 12 Jun 2018 09:21:13 GMT): Farhan1122 (Tue, 12 Jun 2018 09:21:22 GMT): Farhan1122 (Tue, 12 Jun 2018 09:21:36 GMT): Farhan1122 (Tue, 12 Jun 2018 09:21:37 GMT): rthatcher (Tue, 12 Jun 2018 09:23:34 GMT): HoneyShah (Tue, 12 Jun 2018 09:24:06 GMT): Farhan1122 (Tue, 12 Jun 2018 09:24:28 GMT): yulong12 (Tue, 12 Jun 2018 09:24:54 GMT): yulong12 (Tue, 12 Jun 2018 09:25:06 GMT): Farhan1122 (Tue, 12 Jun 2018 09:25:24 GMT): Farhan1122 (Tue, 12 Jun 2018 09:25:35 GMT): Farhan1122 (Tue, 12 Jun 2018 09:25:42 GMT): mahoney1 (Tue, 12 Jun 2018 09:26:55 GMT): mahoney1 (Tue, 12 Jun 2018 09:26:55 GMT): mahoney1 (Tue, 12 Jun 2018 09:26:55 GMT): yulong12 (Tue, 12 Jun 2018 09:26:56 GMT): yulong12 (Tue, 12 Jun 2018 09:27:07 GMT): Farhan1122 (Tue, 12 Jun 2018 09:27:49 GMT): Farhan1122 (Tue, 12 Jun 2018 09:28:33 GMT): yulong12 (Tue, 12 Jun 2018 09:29:47 GMT): yulong12 (Tue, 12 Jun 2018 09:29:51 GMT): yulong12 (Tue, 12 Jun 2018 09:30:47 GMT): rthatcher (Tue, 12 Jun 2018 09:30:50 GMT): rthatcher (Tue, 12 Jun 2018 09:30:50 GMT): yulong12 (Tue, 12 Jun 2018 09:36:17 GMT): yulong12 (Tue, 12 Jun 2018 09:36:47 GMT): KindleBitSoln (Tue, 12 Jun 2018 10:20:41 GMT): ronbiz (Tue, 12 Jun 2018 10:28:52 GMT): HoneyShah (Tue, 12 Jun 2018 10:51:18 GMT): HoneyShah (Tue, 12 Jun 2018 10:51:18 GMT): HoneyShah (Tue, 12 Jun 2018 10:51:18 GMT): HoneyShah (Tue, 12 Jun 2018 10:51:18 GMT): ndatebayo (Tue, 12 Jun 2018 11:24:56 GMT): ndatebayo (Tue, 12 Jun 2018 11:27:51 GMT): mahoney1 (Tue, 12 Jun 2018 11:44:21 GMT): HoneyShah (Tue, 12 Jun 2018 11:48:37 GMT): mahoney1 (Tue, 12 Jun 2018 11:51:19 GMT): mahoney1 (Tue, 12 Jun 2018 11:51:19 GMT): mahoney1 (Tue, 12 Jun 2018 11:51:19 GMT): ndatebayo (Tue, 12 Jun 2018 11:52:35 GMT): ndatebayo (Tue, 12 Jun 2018 11:52:35 GMT): VadimInshakov (Tue, 12 Jun 2018 11:59:47 GMT): rthatcher (Tue, 12 Jun 2018 12:22:21 GMT): ronbiz (Tue, 12 Jun 2018 12:41:46 GMT): VadimInshakov (Tue, 12 Jun 2018 12:51:12 GMT): Hefziben (Tue, 12 Jun 2018 13:08:59 GMT): karthik.ir (Tue, 12 Jun 2018 13:36:27 GMT): mahoney1 (Tue, 12 Jun 2018 13:43:16 GMT): yulong12 (Tue, 12 Jun 2018 13:54:14 GMT): yulong12 (Tue, 12 Jun 2018 13:54:35 GMT): mahoney1 (Tue, 12 Jun 2018 14:05:38 GMT): mahoney1 (Tue, 12 Jun 2018 14:05:38 GMT): mahoney1 (Tue, 12 Jun 2018 14:05:38 GMT): mahoney1 (Tue, 12 Jun 2018 14:12:47 GMT): mahoney1 (Tue, 12 Jun 2018 14:12:47 GMT): mahoney1 (Tue, 12 Jun 2018 14:12:47 GMT): zasamen (Tue, 12 Jun 2018 14:18:04 GMT): zasamen (Tue, 12 Jun 2018 14:18:04 GMT): marksta (Tue, 12 Jun 2018 14:19:37 GMT): marksta (Tue, 12 Jun 2018 14:19:37 GMT): mahoney1 (Tue, 12 Jun 2018 14:29:01 GMT): PozzaMarco (Tue, 12 Jun 2018 14:42:28 GMT): adokce (Tue, 12 Jun 2018 14:44:26 GMT): adokce (Tue, 12 Jun 2018 14:44:46 GMT): adokce (Tue, 12 Jun 2018 14:44:46 GMT): adokce (Tue, 12 Jun 2018 14:44:46 GMT): waleed (Tue, 12 Jun 2018 14:48:59 GMT): Amiy (Tue, 12 Jun 2018 14:52:08 GMT): adokce (Tue, 12 Jun 2018 15:14:27 GMT): adokce (Tue, 12 Jun 2018 15:14:27 GMT): ImranBashir (Tue, 12 Jun 2018 15:17:36 GMT): mahoney1 (Tue, 12 Jun 2018 17:08:39 GMT): VadimInshakov (Tue, 12 Jun 2018 17:12:26 GMT): yashwanthmadaka24 (Tue, 12 Jun 2018 17:14:21 GMT): yashwanthmadaka24 (Tue, 12 Jun 2018 17:14:28 GMT): yashwanthmadaka24 (Tue, 12 Jun 2018 17:15:20 GMT): mahoney1 (Tue, 12 Jun 2018 17:22:49 GMT): f2918124 (Tue, 12 Jun 2018 17:50:06 GMT): sahandealmeidapey (Tue, 12 Jun 2018 17:51:40 GMT): SeetharamanNarayanan (Tue, 12 Jun 2018 17:52:10 GMT): SeetharamanNarayanan (Tue, 12 Jun 2018 17:52:51 GMT): SeetharamanNarayanan (Tue, 12 Jun 2018 17:54:21 GMT): SeetharamanNarayanan (Tue, 12 Jun 2018 17:54:38 GMT): SeetharamanNarayanan (Tue, 12 Jun 2018 17:55:11 GMT): SeetharamanNarayanan (Tue, 12 Jun 2018 17:56:58 GMT): SeetharamanNarayanan (Tue, 12 Jun 2018 17:57:00 GMT): SeetharamanNarayanan (Tue, 12 Jun 2018 17:57:28 GMT): Tauseef 1 (Tue, 12 Jun 2018 18:17:59 GMT): venedara (Tue, 12 Jun 2018 18:18:32 GMT): venedara (Tue, 12 Jun 2018 18:18:34 GMT): venedara (Tue, 12 Jun 2018 18:19:02 GMT): venedara (Tue, 12 Jun 2018 18:19:03 GMT): Tauseef 1 (Tue, 12 Jun 2018 18:20:11 GMT): Tauseef 1 (Tue, 12 Jun 2018 18:20:23 GMT): f2918124 (Tue, 12 Jun 2018 18:23:14 GMT): venedara (Tue, 12 Jun 2018 18:23:40 GMT): gurpreetsingh1193 (Tue, 12 Jun 2018 19:10:23 GMT): gurpreetsingh1193 (Tue, 12 Jun 2018 19:13:13 GMT): christian3042 (Wed, 13 Jun 2018 01:26:13 GMT): Roybn (Wed, 13 Jun 2018 02:30:36 GMT): ronbiz (Wed, 13 Jun 2018 05:47:27 GMT): VadimInshakov (Wed, 13 Jun 2018 05:51:44 GMT): VadimInshakov (Wed, 13 Jun 2018 05:51:44 GMT): VadimInshakov (Wed, 13 Jun 2018 05:53:12 GMT): VadimInshakov (Wed, 13 Jun 2018 05:53:12 GMT): VadimInshakov (Wed, 13 Jun 2018 05:53:12 GMT): VadimInshakov (Wed, 13 Jun 2018 06:45:08 GMT): venedara (Wed, 13 Jun 2018 06:51:31 GMT): venedara (Wed, 13 Jun 2018 06:51:37 GMT): venedara (Wed, 13 Jun 2018 06:51:42 GMT): venedara (Wed, 13 Jun 2018 06:51:51 GMT): HoneyShah (Wed, 13 Jun 2018 06:56:49 GMT): HoneyShah (Wed, 13 Jun 2018 06:56:49 GMT): HoneyShah (Wed, 13 Jun 2018 06:56:49 GMT): VadimInshakov (Wed, 13 Jun 2018 07:05:44 GMT): mahoney1 (Wed, 13 Jun 2018 07:18:05 GMT): adokce (Wed, 13 Jun 2018 07:33:59 GMT): yulong12 (Wed, 13 Jun 2018 07:50:40 GMT): yulong12 (Wed, 13 Jun 2018 07:51:59 GMT): yulong12 (Wed, 13 Jun 2018 07:53:22 GMT): christian-dev (Wed, 13 Jun 2018 08:10:44 GMT): rthatcher (Wed, 13 Jun 2018 08:28:45 GMT): christian-dev (Wed, 13 Jun 2018 08:32:33 GMT): rthatcher (Wed, 13 Jun 2018 08:36:04 GMT): PawelD (Wed, 13 Jun 2018 08:36:38 GMT): yulong12 (Wed, 13 Jun 2018 08:38:23 GMT): yulong12 (Wed, 13 Jun 2018 08:39:32 GMT): yulong12 (Wed, 13 Jun 2018 08:41:22 GMT): christian-dev (Wed, 13 Jun 2018 08:42:07 GMT): PawelD (Wed, 13 Jun 2018 08:42:31 GMT): christian-dev (Wed, 13 Jun 2018 08:43:58 GMT): christian-dev (Wed, 13 Jun 2018 08:44:18 GMT): rthatcher (Wed, 13 Jun 2018 08:46:17 GMT): rthatcher (Wed, 13 Jun 2018 08:46:22 GMT): yulong12 (Wed, 13 Jun 2018 08:46:51 GMT): yulong12 (Wed, 13 Jun 2018 08:47:43 GMT): rthatcher (Wed, 13 Jun 2018 08:51:20 GMT): yulong12 (Wed, 13 Jun 2018 08:54:17 GMT): yulong12 (Wed, 13 Jun 2018 08:55:42 GMT): mahoney1 (Wed, 13 Jun 2018 08:56:58 GMT): rthatcher (Wed, 13 Jun 2018 08:58:25 GMT): yulong12 (Wed, 13 Jun 2018 09:00:59 GMT): yulong12 (Wed, 13 Jun 2018 09:01:05 GMT): yulong12 (Wed, 13 Jun 2018 09:01:55 GMT): yulong12 (Wed, 13 Jun 2018 09:02:44 GMT): yulong12 (Wed, 13 Jun 2018 09:03:30 GMT): rthatcher (Wed, 13 Jun 2018 09:09:18 GMT): ajmeraharsh (Wed, 13 Jun 2018 09:11:25 GMT): yulong12 (Wed, 13 Jun 2018 09:12:16 GMT): rthatcher (Wed, 13 Jun 2018 09:14:35 GMT): HoneyShah (Wed, 13 Jun 2018 09:15:05 GMT): yulong12 (Wed, 13 Jun 2018 09:16:34 GMT): yulong12 (Wed, 13 Jun 2018 09:17:13 GMT): yulong12 (Wed, 13 Jun 2018 09:19:38 GMT): yulong12 (Wed, 13 Jun 2018 09:19:59 GMT): VadimInshakov (Wed, 13 Jun 2018 09:20:30 GMT): yulong12 (Wed, 13 Jun 2018 09:21:19 GMT): yulong12 (Wed, 13 Jun 2018 09:21:19 GMT): rthatcher (Wed, 13 Jun 2018 09:21:21 GMT): yulong12 (Wed, 13 Jun 2018 09:22:00 GMT): mahoney1 (Wed, 13 Jun 2018 09:24:25 GMT): HoneyShah (Wed, 13 Jun 2018 09:25:37 GMT): mahoney1 (Wed, 13 Jun 2018 09:28:19 GMT): mahoney1 (Wed, 13 Jun 2018 09:32:56 GMT): terrypst (Wed, 13 Jun 2018 09:33:04 GMT): rthatcher (Wed, 13 Jun 2018 09:33:33 GMT): terrypst (Wed, 13 Jun 2018 09:33:48 GMT): terrypst (Wed, 13 Jun 2018 09:34:29 GMT): terrypst (Wed, 13 Jun 2018 09:34:29 GMT): yulong12 (Wed, 13 Jun 2018 09:35:34 GMT): clemejul (Wed, 13 Jun 2018 09:37:34 GMT): rthatcher (Wed, 13 Jun 2018 09:38:03 GMT): clemejul (Wed, 13 Jun 2018 09:39:25 GMT): yulong12 (Wed, 13 Jun 2018 09:40:15 GMT): yulong12 (Wed, 13 Jun 2018 09:40:18 GMT): yulong12 (Wed, 13 Jun 2018 09:40:51 GMT): HoneyShah (Wed, 13 Jun 2018 09:42:58 GMT): HoneyShah (Wed, 13 Jun 2018 09:42:58 GMT): HoneyShah (Wed, 13 Jun 2018 09:42:58 GMT): mahoney1 (Wed, 13 Jun 2018 09:47:48 GMT): mahoney1 (Wed, 13 Jun 2018 09:47:48 GMT): GrondinLaurent (Wed, 13 Jun 2018 09:55:06 GMT): venedara (Wed, 13 Jun 2018 09:55:39 GMT): venedara (Wed, 13 Jun 2018 09:55:41 GMT): venedara (Wed, 13 Jun 2018 09:55:52 GMT): GrondinLaurent (Wed, 13 Jun 2018 09:58:12 GMT): mahoney1 (Wed, 13 Jun 2018 10:02:09 GMT): mahoney1 (Wed, 13 Jun 2018 10:02:09 GMT): VadimInshakov (Wed, 13 Jun 2018 10:11:37 GMT): VadimInshakov (Wed, 13 Jun 2018 10:11:37 GMT): rthatcher (Wed, 13 Jun 2018 10:12:23 GMT): mahoney1 (Wed, 13 Jun 2018 10:13:16 GMT): mahoney1 (Wed, 13 Jun 2018 10:13:16 GMT): mahoney1 (Wed, 13 Jun 2018 10:13:16 GMT): VadimInshakov (Wed, 13 Jun 2018 10:13:22 GMT): VadimInshakov (Wed, 13 Jun 2018 10:13:58 GMT): rthatcher (Wed, 13 Jun 2018 10:22:33 GMT): GrondinLaurent (Wed, 13 Jun 2018 10:30:10 GMT): vibhooti (Wed, 13 Jun 2018 10:32:39 GMT): rthatcher (Wed, 13 Jun 2018 10:37:01 GMT): mahoney1 (Wed, 13 Jun 2018 11:03:14 GMT): VadimInshakov (Wed, 13 Jun 2018 11:06:16 GMT): HoneyShah (Wed, 13 Jun 2018 11:34:23 GMT): HoneyShah (Wed, 13 Jun 2018 11:35:37 GMT): Shubham-koli (Wed, 13 Jun 2018 12:05:04 GMT): Shubham-koli (Wed, 13 Jun 2018 12:05:23 GMT): GrondinLaurent (Wed, 13 Jun 2018 12:09:13 GMT): waleed (Wed, 13 Jun 2018 12:12:59 GMT): goelmayank (Wed, 13 Jun 2018 12:13:47 GMT): goelmayank (Wed, 13 Jun 2018 12:13:47 GMT): goelmayank (Wed, 13 Jun 2018 12:13:47 GMT): goelmayank (Wed, 13 Jun 2018 12:13:47 GMT): goelmayank (Wed, 13 Jun 2018 12:14:12 GMT): goelmayank (Wed, 13 Jun 2018 12:14:12 GMT): Shubham-koli (Wed, 13 Jun 2018 12:14:45 GMT): Shubham-koli (Wed, 13 Jun 2018 12:15:04 GMT): waleed (Wed, 13 Jun 2018 12:21:30 GMT): Shubham-koli (Wed, 13 Jun 2018 12:29:57 GMT): waleed (Wed, 13 Jun 2018 12:32:07 GMT): mahoney1 (Wed, 13 Jun 2018 12:44:28 GMT): mahoney1 (Wed, 13 Jun 2018 12:44:28 GMT): Aravindr86 (Wed, 13 Jun 2018 13:11:28 GMT): goelmayank (Wed, 13 Jun 2018 13:13:00 GMT): Nestoteles (Wed, 13 Jun 2018 13:18:02 GMT): Nestoteles (Wed, 13 Jun 2018 13:29:20 GMT): rthatcher (Wed, 13 Jun 2018 13:53:28 GMT): mahoney1 (Wed, 13 Jun 2018 14:03:16 GMT): mahoney1 (Wed, 13 Jun 2018 14:03:16 GMT): mahoney1 (Wed, 13 Jun 2018 14:03:16 GMT): Nestoteles (Wed, 13 Jun 2018 14:18:15 GMT): rthatcher (Wed, 13 Jun 2018 14:24:01 GMT): Nestoteles (Wed, 13 Jun 2018 14:34:53 GMT): rthatcher (Wed, 13 Jun 2018 14:44:05 GMT): VadimInshakov (Wed, 13 Jun 2018 14:58:20 GMT): VadimInshakov (Wed, 13 Jun 2018 14:58:20 GMT): waleed (Wed, 13 Jun 2018 15:03:21 GMT): terrypst (Wed, 13 Jun 2018 15:05:31 GMT): terrypst (Wed, 13 Jun 2018 15:06:18 GMT): Nestoteles (Wed, 13 Jun 2018 15:15:55 GMT): uber.twin (Wed, 13 Jun 2018 15:25:41 GMT): rthatcher (Wed, 13 Jun 2018 15:45:27 GMT): a.ochs (Wed, 13 Jun 2018 17:27:48 GMT): matheus_correia (Wed, 13 Jun 2018 17:54:43 GMT): matheus_correia (Wed, 13 Jun 2018 17:58:23 GMT): matheus_correia (Wed, 13 Jun 2018 17:58:23 GMT): matheus_correia (Wed, 13 Jun 2018 17:58:23 GMT): sahandealmeidapey (Wed, 13 Jun 2018 18:29:22 GMT): jaxdave (Wed, 13 Jun 2018 18:44:48 GMT): TimJohnson (Wed, 13 Jun 2018 19:45:00 GMT): hudhaifahz (Wed, 13 Jun 2018 20:02:51 GMT): hudhaifahz (Wed, 13 Jun 2018 20:02:51 GMT): hudhaifahz (Wed, 13 Jun 2018 20:02:51 GMT): hudhaifahz (Wed, 13 Jun 2018 20:02:51 GMT): hudhaifahz (Wed, 13 Jun 2018 23:33:41 GMT): hudhaifahz (Wed, 13 Jun 2018 23:33:41 GMT): hudhaifahz (Wed, 13 Jun 2018 23:33:41 GMT): hudhaifahz (Wed, 13 Jun 2018 23:33:41 GMT): pauljithink (Thu, 14 Jun 2018 01:37:55 GMT): huyhoang 2 (Thu, 14 Jun 2018 04:13:52 GMT): huyhoang 2 (Thu, 14 Jun 2018 04:14:39 GMT): HoneyShah (Thu, 14 Jun 2018 06:19:39 GMT): HoneyShah (Thu, 14 Jun 2018 06:19:39 GMT): ajmeraharsh (Thu, 14 Jun 2018 06:28:39 GMT): HoneyShah (Thu, 14 Jun 2018 06:30:41 GMT): ajmeraharsh (Thu, 14 Jun 2018 06:31:59 GMT): ajmeraharsh (Thu, 14 Jun 2018 06:31:59 GMT): HoneyShah (Thu, 14 Jun 2018 06:33:56 GMT): sandjay (Thu, 14 Jun 2018 06:36:26 GMT): ajmeraharsh (Thu, 14 Jun 2018 06:37:46 GMT): ajmeraharsh (Thu, 14 Jun 2018 06:37:46 GMT): HoneyShah (Thu, 14 Jun 2018 06:39:51 GMT): venedara (Thu, 14 Jun 2018 06:41:02 GMT): venedara (Thu, 14 Jun 2018 06:41:09 GMT): venedara (Thu, 14 Jun 2018 06:41:15 GMT): ajmeraharsh (Thu, 14 Jun 2018 06:43:25 GMT): ajmeraharsh (Thu, 14 Jun 2018 06:43:25 GMT): Pranoti (Thu, 14 Jun 2018 07:07:53 GMT): Pranoti (Thu, 14 Jun 2018 07:07:53 GMT): HoneyShah (Thu, 14 Jun 2018 08:13:16 GMT): rthatcher (Thu, 14 Jun 2018 08:25:03 GMT): adokce (Thu, 14 Jun 2018 08:34:59 GMT): VadimInshakov (Thu, 14 Jun 2018 08:49:47 GMT): mahoney1 (Thu, 14 Jun 2018 09:05:03 GMT): mahoney1 (Thu, 14 Jun 2018 09:09:19 GMT): mahoney1 (Thu, 14 Jun 2018 09:14:39 GMT): mahoney1 (Thu, 14 Jun 2018 09:25:39 GMT): rthatcher (Thu, 14 Jun 2018 09:29:35 GMT): ronbiz (Thu, 14 Jun 2018 10:10:21 GMT): ronbiz (Thu, 14 Jun 2018 10:21:58 GMT): HimaniMukne (Thu, 14 Jun 2018 10:29:18 GMT): Pranoti (Thu, 14 Jun 2018 10:36:54 GMT): ronbiz (Thu, 14 Jun 2018 10:46:08 GMT): rishabh1102 (Thu, 14 Jun 2018 10:58:14 GMT): rishabh1102 (Thu, 14 Jun 2018 10:59:13 GMT): adokce (Thu, 14 Jun 2018 11:04:25 GMT): Pranoti (Thu, 14 Jun 2018 12:17:45 GMT): Pranoti (Thu, 14 Jun 2018 12:17:45 GMT): Pranoti (Thu, 14 Jun 2018 12:17:45 GMT): nabilm (Thu, 14 Jun 2018 12:20:13 GMT): mahoney1 (Thu, 14 Jun 2018 12:37:07 GMT): mahoney1 (Thu, 14 Jun 2018 12:37:07 GMT): mahoney1 (Thu, 14 Jun 2018 12:37:07 GMT): rthatcher (Thu, 14 Jun 2018 12:38:47 GMT): uber.twin (Thu, 14 Jun 2018 13:04:30 GMT): rthatcher (Thu, 14 Jun 2018 13:07:28 GMT): dklesev (Thu, 14 Jun 2018 13:09:10 GMT): Poneey (Thu, 14 Jun 2018 13:09:41 GMT): ra_w (Thu, 14 Jun 2018 13:13:00 GMT): vinicius.poswar (Thu, 14 Jun 2018 13:13:27 GMT): TimJohnson (Thu, 14 Jun 2018 13:59:12 GMT): corykacal (Thu, 14 Jun 2018 14:28:34 GMT): NikolaIsailovic (Thu, 14 Jun 2018 14:51:09 GMT): VadimInshakov (Thu, 14 Jun 2018 15:09:16 GMT): VadimInshakov (Thu, 14 Jun 2018 15:09:16 GMT): VadimInshakov (Thu, 14 Jun 2018 15:09:16 GMT): VadimInshakov (Thu, 14 Jun 2018 15:11:33 GMT): VadimInshakov (Thu, 14 Jun 2018 15:11:33 GMT): VadimInshakov (Thu, 14 Jun 2018 15:12:35 GMT): VadimInshakov (Thu, 14 Jun 2018 15:12:35 GMT): VadimInshakov (Thu, 14 Jun 2018 15:12:46 GMT): VadimInshakov (Thu, 14 Jun 2018 15:13:27 GMT): G_Meloni93 (Thu, 14 Jun 2018 15:24:01 GMT): silliman (Thu, 14 Jun 2018 15:28:17 GMT): VadimInshakov (Thu, 14 Jun 2018 15:38:05 GMT): mahoney1 (Thu, 14 Jun 2018 16:09:45 GMT): mahoney1 (Thu, 14 Jun 2018 16:16:05 GMT): paulananth (Thu, 14 Jun 2018 16:20:36 GMT): superfleischi (Thu, 14 Jun 2018 16:22:09 GMT): superfleischi (Thu, 14 Jun 2018 16:55:14 GMT): JonathanC (Thu, 14 Jun 2018 17:20:10 GMT): davidkel (Thu, 14 Jun 2018 18:34:43 GMT): DmitryK4 (Thu, 14 Jun 2018 23:48:01 GMT): yulong12 (Fri, 15 Jun 2018 05:44:44 GMT): yulong12 (Fri, 15 Jun 2018 05:45:20 GMT): yulong12 (Fri, 15 Jun 2018 05:47:15 GMT): yulong12 (Fri, 15 Jun 2018 05:47:34 GMT): yulong12 (Fri, 15 Jun 2018 05:48:00 GMT): silliman (Fri, 15 Jun 2018 05:58:52 GMT): yulong12 (Fri, 15 Jun 2018 06:18:27 GMT): yulong12 (Fri, 15 Jun 2018 06:18:46 GMT): yulong12 (Fri, 15 Jun 2018 06:19:18 GMT): yulong12 (Fri, 15 Jun 2018 06:19:32 GMT): yulong12 (Fri, 15 Jun 2018 06:19:35 GMT): kundansingh 1 (Fri, 15 Jun 2018 06:26:57 GMT): kundansingh 1 (Fri, 15 Jun 2018 06:27:12 GMT): yulong12 (Fri, 15 Jun 2018 06:47:38 GMT): yulong12 (Fri, 15 Jun 2018 06:51:08 GMT): Pranoti (Fri, 15 Jun 2018 06:54:52 GMT): RahulSavsani (Fri, 15 Jun 2018 07:14:01 GMT): RahulSavsani (Fri, 15 Jun 2018 07:17:43 GMT): RahulSavsani (Fri, 15 Jun 2018 07:18:08 GMT): varunagarwal (Fri, 15 Jun 2018 07:21:47 GMT): RahulSavsani (Fri, 15 Jun 2018 07:30:50 GMT): RahulSavsani (Fri, 15 Jun 2018 07:30:55 GMT): VadimInshakov (Fri, 15 Jun 2018 07:35:27 GMT): VadimInshakov (Fri, 15 Jun 2018 07:35:27 GMT): erNail (Fri, 15 Jun 2018 07:57:08 GMT): msacco22 (Fri, 15 Jun 2018 08:03:36 GMT): Poneey (Fri, 15 Jun 2018 08:31:12 GMT): Poneey (Fri, 15 Jun 2018 08:35:34 GMT): mahoney1 (Fri, 15 Jun 2018 08:48:13 GMT): mahoney1 (Fri, 15 Jun 2018 08:52:04 GMT): HoneyShah (Fri, 15 Jun 2018 08:53:11 GMT): Poneey (Fri, 15 Jun 2018 08:55:19 GMT): yulong12 (Fri, 15 Jun 2018 08:57:53 GMT): mahoney1 (Fri, 15 Jun 2018 08:58:03 GMT): mahoney1 (Fri, 15 Jun 2018 08:58:03 GMT): mahoney1 (Fri, 15 Jun 2018 08:58:03 GMT): mahoney1 (Fri, 15 Jun 2018 08:58:03 GMT): mahoney1 (Fri, 15 Jun 2018 08:58:03 GMT): mahoney1 (Fri, 15 Jun 2018 08:58:03 GMT): mahoney1 (Fri, 15 Jun 2018 09:05:34 GMT): mahoney1 (Fri, 15 Jun 2018 09:06:22 GMT): HoneyShah (Fri, 15 Jun 2018 09:06:55 GMT): VadimInshakov (Fri, 15 Jun 2018 09:11:33 GMT): mahoney1 (Fri, 15 Jun 2018 09:16:30 GMT): Poneey (Fri, 15 Jun 2018 09:18:47 GMT): HoneyShah (Fri, 15 Jun 2018 09:22:38 GMT): mahoney1 (Fri, 15 Jun 2018 09:28:24 GMT): VadimInshakov (Fri, 15 Jun 2018 09:29:00 GMT): mahoney1 (Fri, 15 Jun 2018 09:30:26 GMT): VadimInshakov (Fri, 15 Jun 2018 09:31:38 GMT): mahoney1 (Fri, 15 Jun 2018 09:34:03 GMT): Poneey (Fri, 15 Jun 2018 09:39:55 GMT): Poneey (Fri, 15 Jun 2018 09:56:00 GMT): mahoney1 (Fri, 15 Jun 2018 10:02:56 GMT): mahoney1 (Fri, 15 Jun 2018 10:02:56 GMT): Pranoti (Fri, 15 Jun 2018 10:22:17 GMT): Pranoti (Fri, 15 Jun 2018 10:22:17 GMT): mahoney1 (Fri, 15 Jun 2018 10:35:30 GMT): HoneyShah (Fri, 15 Jun 2018 10:48:26 GMT): mahoney1 (Fri, 15 Jun 2018 10:52:34 GMT): HoneyShah (Fri, 15 Jun 2018 10:53:25 GMT): VadimInshakov (Fri, 15 Jun 2018 10:56:57 GMT): mahoney1 (Fri, 15 Jun 2018 10:56:58 GMT): Poneey (Fri, 15 Jun 2018 11:04:03 GMT): HoneyShah (Fri, 15 Jun 2018 11:09:30 GMT): matheus_correia (Fri, 15 Jun 2018 11:12:25 GMT): davidkel (Fri, 15 Jun 2018 11:13:21 GMT): mahoney1 (Fri, 15 Jun 2018 11:13:45 GMT): davidkel (Fri, 15 Jun 2018 11:14:31 GMT): mahoney1 (Fri, 15 Jun 2018 11:16:48 GMT): matheus_correia (Fri, 15 Jun 2018 11:17:07 GMT): matheus_correia (Fri, 15 Jun 2018 11:17:07 GMT): leanderhoedt (Fri, 15 Jun 2018 11:21:57 GMT): Poneey (Fri, 15 Jun 2018 11:23:07 GMT): Poneey (Fri, 15 Jun 2018 11:49:15 GMT): rthatcher (Fri, 15 Jun 2018 12:10:53 GMT): vidor (Fri, 15 Jun 2018 12:21:23 GMT): rthatcher (Fri, 15 Jun 2018 12:35:34 GMT): vidor (Fri, 15 Jun 2018 12:40:44 GMT): rthatcher (Fri, 15 Jun 2018 12:49:09 GMT): rthatcher (Fri, 15 Jun 2018 12:49:09 GMT): vidor (Fri, 15 Jun 2018 12:53:00 GMT): Akshay1997 (Fri, 15 Jun 2018 13:36:55 GMT): kenty (Fri, 15 Jun 2018 15:07:07 GMT): LuisCoelho (Fri, 15 Jun 2018 15:36:33 GMT): LuisCoelho (Fri, 15 Jun 2018 15:36:54 GMT): LuisCoelho (Fri, 15 Jun 2018 15:38:52 GMT): rthatcher (Fri, 15 Jun 2018 15:52:39 GMT): LuisCoelho (Fri, 15 Jun 2018 16:09:57 GMT): LuisCoelho (Fri, 15 Jun 2018 16:12:43 GMT): LuisCoelho (Fri, 15 Jun 2018 16:13:02 GMT): rthatcher (Fri, 15 Jun 2018 16:19:56 GMT): rthatcher (Fri, 15 Jun 2018 16:19:56 GMT): rthatcher (Fri, 15 Jun 2018 16:19:56 GMT): ZaheerUdDeen (Fri, 15 Jun 2018 17:24:30 GMT): ZaheerUdDeen (Fri, 15 Jun 2018 17:24:30 GMT): robertbrown (Fri, 15 Jun 2018 17:40:22 GMT): hamza-kakar (Fri, 15 Jun 2018 17:44:57 GMT): ZaheerUdDeen (Fri, 15 Jun 2018 17:46:06 GMT): mahoney1 (Fri, 15 Jun 2018 18:04:21 GMT): mahoney1 (Fri, 15 Jun 2018 18:09:06 GMT): mahoney1 (Fri, 15 Jun 2018 18:09:06 GMT): mahoney1 (Fri, 15 Jun 2018 18:09:06 GMT): ZaheerUdDeen (Sat, 16 Jun 2018 04:50:23 GMT): vanguardian (Sat, 16 Jun 2018 09:46:41 GMT): RahulSavsani (Sat, 16 Jun 2018 10:00:41 GMT): RahulSavsani (Sat, 16 Jun 2018 10:00:45 GMT): RahulSavsani (Sat, 16 Jun 2018 10:01:13 GMT): aashu4uiit (Sat, 16 Jun 2018 10:04:16 GMT): aashu4uiit (Sat, 16 Jun 2018 10:05:58 GMT): aashu4uiit (Sat, 16 Jun 2018 10:05:59 GMT): aashu4uiit (Sat, 16 Jun 2018 10:06:07 GMT): mvighi (Sat, 16 Jun 2018 13:59:00 GMT): faustovanin (Sat, 16 Jun 2018 13:59:02 GMT): srcmake (Sat, 16 Jun 2018 14:13:23 GMT): silliman (Sat, 16 Jun 2018 16:37:20 GMT): srcmake (Sat, 16 Jun 2018 19:32:02 GMT): geethanisp (Sun, 17 Jun 2018 01:27:51 GMT): geethanisp (Sun, 17 Jun 2018 01:28:37 GMT): geethanisp (Sun, 17 Jun 2018 01:28:37 GMT): geethanisp (Sun, 17 Jun 2018 01:28:37 GMT): geethanisp (Sun, 17 Jun 2018 01:28:37 GMT): geethanisp (Sun, 17 Jun 2018 01:28:37 GMT): geethanisp (Sun, 17 Jun 2018 01:29:51 GMT): gaba 1 (Sun, 17 Jun 2018 11:28:03 GMT): rchaturv (Sun, 17 Jun 2018 13:35:22 GMT): MarcoPatania (Sun, 17 Jun 2018 14:45:45 GMT): mmick (Sun, 17 Jun 2018 16:14:15 GMT): silliman (Sun, 17 Jun 2018 16:55:46 GMT): CarlosAvim (Mon, 18 Jun 2018 06:15:25 GMT): khusiarora (Mon, 18 Jun 2018 06:45:55 GMT): VadimInshakov (Mon, 18 Jun 2018 07:00:50 GMT): VadimInshakov (Mon, 18 Jun 2018 07:10:41 GMT): khusiarora (Mon, 18 Jun 2018 07:20:48 GMT): hanumankumar (Mon, 18 Jun 2018 07:24:25 GMT): hanumankumar (Mon, 18 Jun 2018 07:25:38 GMT): hanumankumar (Mon, 18 Jun 2018 07:26:12 GMT): Pranoti (Mon, 18 Jun 2018 07:41:29 GMT): SunilMaharjan (Mon, 18 Jun 2018 08:15:34 GMT): rthatcher (Mon, 18 Jun 2018 08:22:04 GMT): rthatcher (Mon, 18 Jun 2018 08:26:37 GMT): mahoney1 (Mon, 18 Jun 2018 08:41:09 GMT): mahoney1 (Mon, 18 Jun 2018 08:41:09 GMT): LuisCoelho (Mon, 18 Jun 2018 08:53:12 GMT): mahoney1 (Mon, 18 Jun 2018 08:53:37 GMT): rthatcher (Mon, 18 Jun 2018 08:53:41 GMT): Pranoti (Mon, 18 Jun 2018 08:56:49 GMT): mahoney1 (Mon, 18 Jun 2018 08:56:58 GMT): mahoney1 (Mon, 18 Jun 2018 09:00:06 GMT): mahoney1 (Mon, 18 Jun 2018 09:00:06 GMT): LuisCoelho (Mon, 18 Jun 2018 09:00:28 GMT): mahoney1 (Mon, 18 Jun 2018 09:02:42 GMT): Pranoti (Mon, 18 Jun 2018 09:04:20 GMT): LuisCoelho (Mon, 18 Jun 2018 09:08:29 GMT): argman (Mon, 18 Jun 2018 09:10:06 GMT): argman (Mon, 18 Jun 2018 09:10:06 GMT): VadimInshakov (Mon, 18 Jun 2018 09:10:20 GMT): VadimInshakov (Mon, 18 Jun 2018 09:10:20 GMT): mahoney1 (Mon, 18 Jun 2018 09:11:48 GMT): rthatcher (Mon, 18 Jun 2018 09:17:00 GMT): rthatcher (Mon, 18 Jun 2018 09:17:00 GMT): mahoney1 (Mon, 18 Jun 2018 09:20:16 GMT): mahoney1 (Mon, 18 Jun 2018 09:20:16 GMT): LuisCoelho (Mon, 18 Jun 2018 09:28:06 GMT): mahoney1 (Mon, 18 Jun 2018 09:29:53 GMT): mahoney1 (Mon, 18 Jun 2018 09:29:53 GMT): LuisCoelho (Mon, 18 Jun 2018 09:33:16 GMT): LuisCoelho (Mon, 18 Jun 2018 09:33:40 GMT): VadimInshakov (Mon, 18 Jun 2018 09:35:24 GMT): argman (Mon, 18 Jun 2018 09:36:26 GMT): rthatcher (Mon, 18 Jun 2018 09:39:47 GMT): VadimInshakov (Mon, 18 Jun 2018 09:48:28 GMT): mahoney1 (Mon, 18 Jun 2018 09:49:06 GMT): mahoney1 (Mon, 18 Jun 2018 09:49:06 GMT): argman (Mon, 18 Jun 2018 09:50:43 GMT): mahoney1 (Mon, 18 Jun 2018 09:53:50 GMT): VadimInshakov (Mon, 18 Jun 2018 10:02:36 GMT): rthatcher (Mon, 18 Jun 2018 10:03:13 GMT): rthatcher (Mon, 18 Jun 2018 10:04:24 GMT): VadimInshakov (Mon, 18 Jun 2018 10:04:52 GMT): VadimInshakov (Mon, 18 Jun 2018 10:05:28 GMT): rthatcher (Mon, 18 Jun 2018 10:07:08 GMT): sergiosanchezalvarez (Mon, 18 Jun 2018 11:14:47 GMT): sergiosanchezalvarez (Mon, 18 Jun 2018 11:16:16 GMT): rohitkhatri (Mon, 18 Jun 2018 11:22:24 GMT): rohitkhatri (Mon, 18 Jun 2018 11:22:52 GMT): sergiosanchezalvarez (Mon, 18 Jun 2018 11:24:48 GMT): rthatcher (Mon, 18 Jun 2018 11:29:12 GMT): rthatcher (Mon, 18 Jun 2018 11:29:12 GMT): sergiosanchezalvarez (Mon, 18 Jun 2018 11:30:30 GMT): rthatcher (Mon, 18 Jun 2018 11:31:08 GMT): sergiosanchezalvarez (Mon, 18 Jun 2018 11:31:16 GMT): sergiosanchezalvarez (Mon, 18 Jun 2018 11:31:25 GMT): sergiosanchezalvarez (Mon, 18 Jun 2018 11:32:57 GMT): rthatcher (Mon, 18 Jun 2018 11:33:26 GMT): sergiosanchezalvarez (Mon, 18 Jun 2018 11:34:29 GMT): sergiosanchezalvarez (Mon, 18 Jun 2018 11:52:33 GMT): matheus_correia (Mon, 18 Jun 2018 12:34:59 GMT): matheus_correia (Mon, 18 Jun 2018 12:34:59 GMT): nabilm (Mon, 18 Jun 2018 12:54:12 GMT): rthatcher (Mon, 18 Jun 2018 12:59:42 GMT): rthatcher (Mon, 18 Jun 2018 12:59:42 GMT): nabilm (Mon, 18 Jun 2018 13:12:32 GMT): nabilm (Mon, 18 Jun 2018 13:12:32 GMT): davidkel (Mon, 18 Jun 2018 13:13:22 GMT): davidkel (Mon, 18 Jun 2018 13:13:22 GMT): Poneey (Mon, 18 Jun 2018 13:27:44 GMT): matheus_correia (Mon, 18 Jun 2018 13:30:56 GMT): davidkel (Mon, 18 Jun 2018 13:32:48 GMT): matheus_correia (Mon, 18 Jun 2018 13:33:16 GMT): davidkel (Mon, 18 Jun 2018 13:33:25 GMT): LuisCoelho (Mon, 18 Jun 2018 13:37:18 GMT): LuisCoelho (Mon, 18 Jun 2018 13:37:35 GMT): LuisCoelho (Mon, 18 Jun 2018 13:42:16 GMT): LuisCoelho (Mon, 18 Jun 2018 13:42:16 GMT): rthatcher (Mon, 18 Jun 2018 13:50:28 GMT): rthatcher (Mon, 18 Jun 2018 14:00:42 GMT): uber.twin (Mon, 18 Jun 2018 14:02:06 GMT): uber.twin (Mon, 18 Jun 2018 14:02:06 GMT): rthatcher (Mon, 18 Jun 2018 14:08:07 GMT): rthatcher (Mon, 18 Jun 2018 14:08:07 GMT): uber.twin (Mon, 18 Jun 2018 14:18:11 GMT): uber.twin (Mon, 18 Jun 2018 14:21:19 GMT): LuisCoelho (Mon, 18 Jun 2018 14:23:19 GMT): mahoney1 (Mon, 18 Jun 2018 14:36:51 GMT): LuisCoelho (Mon, 18 Jun 2018 14:37:45 GMT): mahoney1 (Mon, 18 Jun 2018 14:39:00 GMT): SorianoTech (Mon, 18 Jun 2018 15:30:03 GMT): uber.twin (Mon, 18 Jun 2018 15:47:46 GMT): uber.twin (Mon, 18 Jun 2018 15:47:46 GMT): rthatcher (Mon, 18 Jun 2018 16:15:02 GMT): mrudav.shukla (Mon, 18 Jun 2018 16:53:45 GMT): mrudav.shukla (Mon, 18 Jun 2018 16:53:57 GMT): mahoney1 (Mon, 18 Jun 2018 17:23:33 GMT): mrudav.shukla (Mon, 18 Jun 2018 17:24:58 GMT): JoyMaitra (Mon, 18 Jun 2018 18:29:04 GMT): JoyMaitra (Mon, 18 Jun 2018 18:31:37 GMT): PrafullKotecha (Mon, 18 Jun 2018 18:45:07 GMT): silliman (Mon, 18 Jun 2018 18:57:46 GMT): RafaelTorrealba (Mon, 18 Jun 2018 19:22:40 GMT): Yxz-xidian (Tue, 19 Jun 2018 01:55:36 GMT): vbehere (Tue, 19 Jun 2018 04:42:33 GMT): vbehere (Tue, 19 Jun 2018 04:43:32 GMT): vbehere (Tue, 19 Jun 2018 04:43:32 GMT): yulong12 (Tue, 19 Jun 2018 06:41:07 GMT): yulong12 (Tue, 19 Jun 2018 06:42:09 GMT): yulong12 (Tue, 19 Jun 2018 06:43:36 GMT): yulong12 (Tue, 19 Jun 2018 06:43:52 GMT): Pranoti (Tue, 19 Jun 2018 07:19:12 GMT): Pranoti (Tue, 19 Jun 2018 07:19:12 GMT): Pranoti (Tue, 19 Jun 2018 07:19:12 GMT): Pranoti (Tue, 19 Jun 2018 07:19:12 GMT): Poneey (Tue, 19 Jun 2018 07:25:36 GMT): ajmeraharsh (Tue, 19 Jun 2018 07:27:51 GMT): ajmeraharsh (Tue, 19 Jun 2018 07:27:51 GMT): davidkel (Tue, 19 Jun 2018 08:10:12 GMT): yulong12 (Tue, 19 Jun 2018 08:15:18 GMT): davidkel (Tue, 19 Jun 2018 08:16:36 GMT): yulong12 (Tue, 19 Jun 2018 08:18:26 GMT): yulong12 (Tue, 19 Jun 2018 08:19:09 GMT): uber.twin (Tue, 19 Jun 2018 08:19:34 GMT): uber.twin (Tue, 19 Jun 2018 08:19:34 GMT): davidkel (Tue, 19 Jun 2018 08:21:39 GMT): davidkel (Tue, 19 Jun 2018 08:22:57 GMT): rthatcher (Tue, 19 Jun 2018 08:38:24 GMT): ApoorvChandurkar (Tue, 19 Jun 2018 08:40:31 GMT): Poneey (Tue, 19 Jun 2018 08:43:52 GMT): rthatcher (Tue, 19 Jun 2018 08:47:56 GMT): Vasyl.Stukalo (Tue, 19 Jun 2018 08:56:20 GMT): AnithaReddy (Tue, 19 Jun 2018 08:57:44 GMT): AnithaReddy (Tue, 19 Jun 2018 08:58:09 GMT): aparichit007 (Tue, 19 Jun 2018 09:18:21 GMT): Pranoti (Tue, 19 Jun 2018 09:37:19 GMT): AnithaReddy (Tue, 19 Jun 2018 09:44:11 GMT): KindleBitSoln (Tue, 19 Jun 2018 09:53:16 GMT): waleed (Tue, 19 Jun 2018 10:08:06 GMT): Vasyl.Stukalo (Tue, 19 Jun 2018 10:41:00 GMT): ajmeraharsh (Tue, 19 Jun 2018 10:42:44 GMT): waleed (Tue, 19 Jun 2018 10:49:55 GMT): ajmeraharsh (Tue, 19 Jun 2018 10:51:17 GMT): waleed (Tue, 19 Jun 2018 10:56:58 GMT): ajmeraharsh (Tue, 19 Jun 2018 11:10:55 GMT): waleed (Tue, 19 Jun 2018 11:11:52 GMT): goelmayank (Tue, 19 Jun 2018 11:34:05 GMT): goelmayank (Tue, 19 Jun 2018 11:34:05 GMT): apaparazzi0329 (Tue, 19 Jun 2018 12:27:05 GMT): mahoney1 (Tue, 19 Jun 2018 12:57:09 GMT): mahoney1 (Tue, 19 Jun 2018 12:57:09 GMT): dklesev (Tue, 19 Jun 2018 12:57:28 GMT): dklesev (Tue, 19 Jun 2018 12:57:42 GMT): ApoorvChandurkar (Tue, 19 Jun 2018 12:58:47 GMT): dklesev (Tue, 19 Jun 2018 13:04:12 GMT): dklesev (Tue, 19 Jun 2018 13:04:12 GMT): dklesev (Tue, 19 Jun 2018 13:04:57 GMT): mahoney1 (Tue, 19 Jun 2018 13:10:53 GMT): mahoney1 (Tue, 19 Jun 2018 13:10:53 GMT): mahoney1 (Tue, 19 Jun 2018 13:10:53 GMT): mahoney1 (Tue, 19 Jun 2018 13:10:53 GMT): apaparazzi0329 (Tue, 19 Jun 2018 13:18:48 GMT): goelmayank (Tue, 19 Jun 2018 13:26:10 GMT): goelmayank (Tue, 19 Jun 2018 13:27:17 GMT): ApoorvChandurkar (Tue, 19 Jun 2018 13:52:47 GMT): apaparazzi0329 (Tue, 19 Jun 2018 13:54:30 GMT): mahoney1 (Tue, 19 Jun 2018 14:12:04 GMT): JoyMaitra (Tue, 19 Jun 2018 14:28:51 GMT): mahoney1 (Tue, 19 Jun 2018 14:36:24 GMT): mahoney1 (Tue, 19 Jun 2018 14:36:24 GMT): NamitGupta (Tue, 19 Jun 2018 15:07:55 GMT): NamitGupta (Tue, 19 Jun 2018 15:08:37 GMT): NamitGupta (Tue, 19 Jun 2018 15:09:00 GMT): NamitGupta (Tue, 19 Jun 2018 15:09:18 GMT): NamitGupta (Tue, 19 Jun 2018 15:09:53 GMT): NamitGupta (Tue, 19 Jun 2018 15:10:06 GMT): NamitGupta (Tue, 19 Jun 2018 15:10:25 GMT): goelmayank (Tue, 19 Jun 2018 15:14:21 GMT): mortimr (Tue, 19 Jun 2018 16:40:11 GMT): mortimr (Tue, 19 Jun 2018 16:40:29 GMT): mortimr (Tue, 19 Jun 2018 16:41:54 GMT): goelmayank (Tue, 19 Jun 2018 16:44:56 GMT): goelmayank (Tue, 19 Jun 2018 16:44:56 GMT): goelmayank (Tue, 19 Jun 2018 16:44:56 GMT): goelmayank (Tue, 19 Jun 2018 16:47:57 GMT): dqvn2002 (Wed, 20 Jun 2018 04:54:30 GMT): yulong12 (Wed, 20 Jun 2018 05:34:00 GMT): yulong12 (Wed, 20 Jun 2018 05:34:47 GMT): yulong12 (Wed, 20 Jun 2018 05:35:16 GMT): goelmayank (Wed, 20 Jun 2018 06:41:51 GMT): goelmayank (Wed, 20 Jun 2018 06:42:45 GMT): Poneey (Wed, 20 Jun 2018 07:07:09 GMT): Poneey (Wed, 20 Jun 2018 07:07:26 GMT): varunagarwal (Wed, 20 Jun 2018 07:20:20 GMT): VadimInshakov (Wed, 20 Jun 2018 07:27:55 GMT): VadimInshakov (Wed, 20 Jun 2018 07:27:55 GMT): VadimInshakov (Wed, 20 Jun 2018 07:28:55 GMT): Varun2887 (Wed, 20 Jun 2018 07:30:26 GMT): Varun2887 (Wed, 20 Jun 2018 07:30:33 GMT): Varun2887 (Wed, 20 Jun 2018 07:31:12 GMT): varunagarwal (Wed, 20 Jun 2018 07:33:25 GMT): varunagarwal (Wed, 20 Jun 2018 07:34:46 GMT): VadimInshakov (Wed, 20 Jun 2018 07:35:11 GMT): varunagarwal (Wed, 20 Jun 2018 07:35:20 GMT): HoneyShah (Wed, 20 Jun 2018 08:06:25 GMT): rthatcher (Wed, 20 Jun 2018 08:32:27 GMT): Varun2887 (Wed, 20 Jun 2018 08:57:08 GMT): Varun2887 (Wed, 20 Jun 2018 08:57:08 GMT): waleed (Wed, 20 Jun 2018 09:21:17 GMT): Varun2887 (Wed, 20 Jun 2018 09:21:36 GMT): Varun2887 (Wed, 20 Jun 2018 09:21:42 GMT): Varun2887 (Wed, 20 Jun 2018 09:22:17 GMT): waleed (Wed, 20 Jun 2018 09:22:26 GMT): Varun2887 (Wed, 20 Jun 2018 09:23:04 GMT): NamitGupta (Wed, 20 Jun 2018 09:24:22 GMT): NamitGupta (Wed, 20 Jun 2018 09:24:29 GMT): Varun2887 (Wed, 20 Jun 2018 09:24:36 GMT): NamitGupta (Wed, 20 Jun 2018 09:24:56 GMT): NamitGupta (Wed, 20 Jun 2018 09:25:15 GMT): waleed (Wed, 20 Jun 2018 09:25:48 GMT): Varun2887 (Wed, 20 Jun 2018 09:26:22 GMT): Varun2887 (Wed, 20 Jun 2018 09:26:45 GMT): Varun2887 (Wed, 20 Jun 2018 09:27:00 GMT): waleed (Wed, 20 Jun 2018 09:27:32 GMT): NamitGupta (Wed, 20 Jun 2018 09:28:51 GMT): waleed (Wed, 20 Jun 2018 09:29:08 GMT): Varun2887 (Wed, 20 Jun 2018 09:29:25 GMT): Varun2887 (Wed, 20 Jun 2018 09:29:31 GMT): waleed (Wed, 20 Jun 2018 09:30:49 GMT): Pranoti (Wed, 20 Jun 2018 09:46:06 GMT): waleed (Wed, 20 Jun 2018 09:47:11 GMT): waleed (Wed, 20 Jun 2018 09:47:11 GMT): Pranoti (Wed, 20 Jun 2018 09:48:08 GMT): waleed (Wed, 20 Jun 2018 09:55:12 GMT): Pranoti (Wed, 20 Jun 2018 09:55:27 GMT): Varun2887 (Wed, 20 Jun 2018 09:57:50 GMT): Varun2887 (Wed, 20 Jun 2018 09:58:00 GMT): rthatcher (Wed, 20 Jun 2018 09:58:14 GMT): Varun2887 (Wed, 20 Jun 2018 09:59:06 GMT): waleed (Wed, 20 Jun 2018 09:59:17 GMT): waleed (Wed, 20 Jun 2018 10:01:33 GMT): rthatcher (Wed, 20 Jun 2018 10:01:38 GMT): Pranoti (Wed, 20 Jun 2018 10:09:35 GMT): NamitGupta (Wed, 20 Jun 2018 10:18:40 GMT): rthatcher (Wed, 20 Jun 2018 10:25:37 GMT): Varun2887 (Wed, 20 Jun 2018 10:26:13 GMT): Varun2887 (Wed, 20 Jun 2018 10:26:26 GMT): Varun2887 (Wed, 20 Jun 2018 10:26:30 GMT): NamitGupta (Wed, 20 Jun 2018 10:40:10 GMT): mahoney1 (Wed, 20 Jun 2018 10:49:07 GMT): rthatcher (Wed, 20 Jun 2018 10:50:27 GMT): waleed (Wed, 20 Jun 2018 11:09:51 GMT): waleed (Wed, 20 Jun 2018 11:09:51 GMT): khusiarora (Wed, 20 Jun 2018 11:26:27 GMT): ajmeraharsh (Wed, 20 Jun 2018 11:32:58 GMT): st (Wed, 20 Jun 2018 11:47:57 GMT): mahoney1 (Wed, 20 Jun 2018 11:51:06 GMT): JohnR (Wed, 20 Jun 2018 11:51:36 GMT): Pranoti (Wed, 20 Jun 2018 12:24:51 GMT): Pranoti (Wed, 20 Jun 2018 12:24:51 GMT): Pranoti (Wed, 20 Jun 2018 12:24:51 GMT): OlivierBondu (Wed, 20 Jun 2018 13:02:42 GMT): OlivierBondu (Wed, 20 Jun 2018 13:03:22 GMT): OlivierBondu (Wed, 20 Jun 2018 13:03:22 GMT): OlivierBondu (Wed, 20 Jun 2018 13:03:22 GMT): OlivierBondu (Wed, 20 Jun 2018 13:03:22 GMT): waleed (Wed, 20 Jun 2018 13:05:10 GMT): OlivierBondu (Wed, 20 Jun 2018 13:09:12 GMT): rthatcher (Wed, 20 Jun 2018 13:24:37 GMT): dklesev (Wed, 20 Jun 2018 13:48:43 GMT): dklesev (Wed, 20 Jun 2018 13:48:43 GMT): dklesev (Wed, 20 Jun 2018 13:49:59 GMT): OlivierBondu (Wed, 20 Jun 2018 13:50:20 GMT): OlivierBondu (Wed, 20 Jun 2018 13:50:20 GMT): vamshirapolu (Wed, 20 Jun 2018 13:51:17 GMT): rthatcher (Wed, 20 Jun 2018 14:00:35 GMT): bsteinfeld (Wed, 20 Jun 2018 14:45:13 GMT): bsteinfeld (Wed, 20 Jun 2018 14:45:13 GMT): kly4 (Wed, 20 Jun 2018 17:32:01 GMT): kly4 (Wed, 20 Jun 2018 17:32:01 GMT): pyzhang (Wed, 20 Jun 2018 17:48:17 GMT): vidor (Wed, 20 Jun 2018 18:30:59 GMT): davidkel (Wed, 20 Jun 2018 18:54:30 GMT): vidor (Wed, 20 Jun 2018 18:55:01 GMT): DmitryK4 (Wed, 20 Jun 2018 19:16:57 GMT): dselman (Wed, 20 Jun 2018 19:33:25 GMT): vidor (Wed, 20 Jun 2018 19:57:32 GMT): DmitryK4 (Wed, 20 Jun 2018 19:59:05 GMT): DmitryK4 (Wed, 20 Jun 2018 20:00:22 GMT): DmitryK4 (Wed, 20 Jun 2018 20:14:49 GMT): OlivierBondu (Wed, 20 Jun 2018 20:17:00 GMT): OlivierBondu (Wed, 20 Jun 2018 20:19:08 GMT): jtwalker2000 (Thu, 21 Jun 2018 00:42:18 GMT): jtwalker2000 (Thu, 21 Jun 2018 00:43:56 GMT): HoneyShah (Thu, 21 Jun 2018 04:50:42 GMT): strategistnitin (Thu, 21 Jun 2018 06:11:35 GMT): VadimInshakov (Thu, 21 Jun 2018 06:48:13 GMT): VadimInshakov (Thu, 21 Jun 2018 06:48:13 GMT): VadimInshakov (Thu, 21 Jun 2018 06:48:13 GMT): VadimInshakov (Thu, 21 Jun 2018 06:48:13 GMT): davidkel (Thu, 21 Jun 2018 07:43:24 GMT): sstone1 (Thu, 21 Jun 2018 07:59:08 GMT): VadimInshakov (Thu, 21 Jun 2018 08:01:46 GMT): VadimInshakov (Thu, 21 Jun 2018 08:01:46 GMT): VadimInshakov (Thu, 21 Jun 2018 08:01:46 GMT): VadimInshakov (Thu, 21 Jun 2018 08:01:46 GMT): HoneyShah (Thu, 21 Jun 2018 08:03:09 GMT): sstone1 (Thu, 21 Jun 2018 08:04:46 GMT): HoneyShah (Thu, 21 Jun 2018 08:07:31 GMT): sstone1 (Thu, 21 Jun 2018 08:07:52 GMT): HoneyShah (Thu, 21 Jun 2018 08:09:51 GMT): HoneyShah (Thu, 21 Jun 2018 08:09:51 GMT): HoneyShah (Thu, 21 Jun 2018 08:09:51 GMT): davidkel (Thu, 21 Jun 2018 08:17:43 GMT): davidkel (Thu, 21 Jun 2018 08:17:43 GMT): rthatcher (Thu, 21 Jun 2018 08:27:37 GMT): HoneyShah (Thu, 21 Jun 2018 08:53:56 GMT): raphaelbenoit (Thu, 21 Jun 2018 08:57:14 GMT): raphaelbenoit (Thu, 21 Jun 2018 08:57:14 GMT): raphaelbenoit (Thu, 21 Jun 2018 08:57:14 GMT): raphaelbenoit (Thu, 21 Jun 2018 08:57:14 GMT): poohitan (Thu, 21 Jun 2018 09:19:27 GMT): NurDerFSV (Thu, 21 Jun 2018 09:24:14 GMT): VadimInshakov (Thu, 21 Jun 2018 09:28:12 GMT): poohitan (Thu, 21 Jun 2018 09:32:35 GMT): poohitan (Thu, 21 Jun 2018 09:32:35 GMT): poohitan (Thu, 21 Jun 2018 09:32:35 GMT): poohitan (Thu, 21 Jun 2018 09:32:35 GMT): waleed (Thu, 21 Jun 2018 09:35:17 GMT): waleed (Thu, 21 Jun 2018 09:35:17 GMT): poohitan (Thu, 21 Jun 2018 09:35:53 GMT): poohitan (Thu, 21 Jun 2018 09:35:53 GMT): VadimInshakov (Thu, 21 Jun 2018 09:37:31 GMT): waleed (Thu, 21 Jun 2018 09:39:24 GMT): poohitan (Thu, 21 Jun 2018 09:51:45 GMT): jsmithmap (Thu, 21 Jun 2018 10:21:42 GMT): VadimInshakov (Thu, 21 Jun 2018 10:32:30 GMT): FlorentinoSainz (Thu, 21 Jun 2018 10:53:23 GMT): rthatcher (Thu, 21 Jun 2018 10:58:41 GMT): FlorentinoSainz (Thu, 21 Jun 2018 10:59:07 GMT): FlorentinoSainz (Thu, 21 Jun 2018 10:59:21 GMT): FlorentinoSainz (Thu, 21 Jun 2018 10:59:28 GMT): rthatcher (Thu, 21 Jun 2018 11:06:10 GMT): ganjha (Thu, 21 Jun 2018 11:09:22 GMT): rthatcher (Thu, 21 Jun 2018 11:14:16 GMT): rthatcher (Thu, 21 Jun 2018 11:14:16 GMT): HoneyShah (Thu, 21 Jun 2018 11:29:38 GMT): karthik.ir (Thu, 21 Jun 2018 11:52:33 GMT): karthik.ir (Thu, 21 Jun 2018 11:52:33 GMT): VadimInshakov (Thu, 21 Jun 2018 12:05:27 GMT): Poneey (Thu, 21 Jun 2018 12:33:27 GMT): rthatcher (Thu, 21 Jun 2018 12:44:05 GMT): FlorentinoSainz (Thu, 21 Jun 2018 13:02:29 GMT): FlorentinoSainz (Thu, 21 Jun 2018 13:02:59 GMT): VadimInshakov (Thu, 21 Jun 2018 13:57:08 GMT): ndatebayo (Thu, 21 Jun 2018 13:59:00 GMT): rthatcher (Thu, 21 Jun 2018 14:06:39 GMT): VadimInshakov (Thu, 21 Jun 2018 14:42:39 GMT): VadimInshakov (Thu, 21 Jun 2018 14:53:48 GMT): VadimInshakov (Thu, 21 Jun 2018 14:53:48 GMT): rthatcher (Thu, 21 Jun 2018 14:55:05 GMT): VadimInshakov (Thu, 21 Jun 2018 15:14:39 GMT): mahoney1 (Thu, 21 Jun 2018 15:17:31 GMT): VadimInshakov (Thu, 21 Jun 2018 15:24:06 GMT): VadimInshakov (Thu, 21 Jun 2018 15:24:06 GMT): mahoney1 (Thu, 21 Jun 2018 15:32:59 GMT): mahoney1 (Thu, 21 Jun 2018 15:51:45 GMT): VadimInshakov (Thu, 21 Jun 2018 15:57:46 GMT): mahoney1 (Thu, 21 Jun 2018 15:58:30 GMT): mahoney1 (Thu, 21 Jun 2018 15:58:30 GMT): jsmithmap (Thu, 21 Jun 2018 16:53:54 GMT): coop4bama (Thu, 21 Jun 2018 19:57:57 GMT): coop4bama (Thu, 21 Jun 2018 19:58:05 GMT): jelani504 (Thu, 21 Jun 2018 23:44:36 GMT): ronaldlong46 (Fri, 22 Jun 2018 06:06:42 GMT): ApoorvChandurkar (Fri, 22 Jun 2018 07:55:14 GMT): poohitan (Fri, 22 Jun 2018 07:56:31 GMT): poohitan (Fri, 22 Jun 2018 07:56:31 GMT): poohitan (Fri, 22 Jun 2018 07:56:31 GMT): poohitan (Fri, 22 Jun 2018 07:56:31 GMT): zhulg (Fri, 22 Jun 2018 08:04:46 GMT): zhulg (Fri, 22 Jun 2018 08:08:55 GMT): mahoney1 (Fri, 22 Jun 2018 08:21:14 GMT): mahoney1 (Fri, 22 Jun 2018 08:30:43 GMT): mahoney1 (Fri, 22 Jun 2018 08:30:43 GMT): mahoney1 (Fri, 22 Jun 2018 08:40:01 GMT): mahoney1 (Fri, 22 Jun 2018 08:45:32 GMT): SamRasha (Fri, 22 Jun 2018 08:48:35 GMT): zhulg (Fri, 22 Jun 2018 08:50:18 GMT): mahoney1 (Fri, 22 Jun 2018 08:51:40 GMT): zhulg (Fri, 22 Jun 2018 08:54:19 GMT): javapriyan (Fri, 22 Jun 2018 09:04:40 GMT): midside254 (Fri, 22 Jun 2018 09:36:25 GMT): asmitapatil (Fri, 22 Jun 2018 09:52:57 GMT): mahoney1 (Fri, 22 Jun 2018 09:53:06 GMT): devbinu (Fri, 22 Jun 2018 10:00:54 GMT): ronaldlong46 (Fri, 22 Jun 2018 10:02:11 GMT): devbinu (Fri, 22 Jun 2018 10:06:41 GMT): ronaldlong46 (Fri, 22 Jun 2018 10:22:20 GMT): mahoney1 (Fri, 22 Jun 2018 10:28:47 GMT): mahoney1 (Fri, 22 Jun 2018 10:31:43 GMT): mahoney1 (Fri, 22 Jun 2018 10:34:26 GMT): LuisCoelho (Fri, 22 Jun 2018 10:37:51 GMT): ajmeraharsh (Fri, 22 Jun 2018 10:38:51 GMT): LuisCoelho (Fri, 22 Jun 2018 10:44:56 GMT): mahoney1 (Fri, 22 Jun 2018 10:50:34 GMT): VadimInshakov (Fri, 22 Jun 2018 11:07:53 GMT): mmick (Fri, 22 Jun 2018 12:06:20 GMT): LuisCoelho (Fri, 22 Jun 2018 12:26:19 GMT): LuisCoelho (Fri, 22 Jun 2018 12:38:06 GMT): rthatcher (Fri, 22 Jun 2018 12:56:16 GMT): LuisCoelho (Fri, 22 Jun 2018 12:58:14 GMT): VadimInshakov (Fri, 22 Jun 2018 13:08:12 GMT): rthatcher (Fri, 22 Jun 2018 13:15:34 GMT): rthatcher (Fri, 22 Jun 2018 13:15:34 GMT): VadimInshakov (Fri, 22 Jun 2018 13:16:53 GMT): mahoney1 (Fri, 22 Jun 2018 13:18:11 GMT): mahoney1 (Fri, 22 Jun 2018 13:18:11 GMT): ajmeraharsh (Fri, 22 Jun 2018 13:18:42 GMT): rthatcher (Fri, 22 Jun 2018 13:23:31 GMT): javapriyan (Fri, 22 Jun 2018 13:29:17 GMT): mahoney1 (Fri, 22 Jun 2018 13:36:06 GMT): mahoney1 (Fri, 22 Jun 2018 13:36:06 GMT): mahoney1 (Fri, 22 Jun 2018 13:36:06 GMT): mahoney1 (Fri, 22 Jun 2018 13:36:06 GMT): mahoney1 (Fri, 22 Jun 2018 13:36:06 GMT): VadimInshakov (Fri, 22 Jun 2018 13:37:31 GMT): mahoney1 (Fri, 22 Jun 2018 13:45:56 GMT): mahoney1 (Fri, 22 Jun 2018 13:45:56 GMT): VadimInshakov (Fri, 22 Jun 2018 13:47:44 GMT): mahoney1 (Fri, 22 Jun 2018 13:51:47 GMT): LuisCoelho (Fri, 22 Jun 2018 15:01:20 GMT): MSKumar (Fri, 22 Jun 2018 16:41:00 GMT): mahoney1 (Fri, 22 Jun 2018 17:05:36 GMT): ronaldlong46 (Fri, 22 Jun 2018 18:18:30 GMT): vkblue (Fri, 22 Jun 2018 19:59:38 GMT): ronaldlong46 (Fri, 22 Jun 2018 20:06:01 GMT): vkblue (Fri, 22 Jun 2018 20:06:46 GMT): ronaldlong46 (Fri, 22 Jun 2018 21:19:08 GMT): ronaldlong46 (Fri, 22 Jun 2018 21:19:53 GMT): rudimk (Sat, 23 Jun 2018 04:14:54 GMT): javapriyan (Sat, 23 Jun 2018 05:43:31 GMT): javapriyan (Sat, 23 Jun 2018 05:43:31 GMT): HoneyShah (Sat, 23 Jun 2018 06:44:02 GMT): HoneyShah (Sat, 23 Jun 2018 06:44:02 GMT): ajmeraharsh (Sat, 23 Jun 2018 07:01:31 GMT): StevenDS 1 (Sat, 23 Jun 2018 09:00:55 GMT): StevenDS 1 (Sat, 23 Jun 2018 09:11:31 GMT): TomlordSir (Sat, 23 Jun 2018 11:37:55 GMT): Mahesh1 2 (Sat, 23 Jun 2018 16:57:34 GMT): mmick (Sat, 23 Jun 2018 19:28:45 GMT): Event (Sun, 24 Jun 2018 08:33:22 GMT): Event (Sun, 24 Jun 2018 08:33:39 GMT): Event (Sun, 24 Jun 2018 08:35:09 GMT): sine99 (Sun, 24 Jun 2018 09:31:13 GMT): sine99 (Sun, 24 Jun 2018 09:33:47 GMT): mengan (Sun, 24 Jun 2018 09:39:11 GMT): kaushalandpoudel (Sun, 24 Jun 2018 10:08:22 GMT): kaushalandpoudel (Sun, 24 Jun 2018 10:08:46 GMT): Event (Sun, 24 Jun 2018 11:52:48 GMT): sine99 (Sun, 24 Jun 2018 11:53:37 GMT): Event (Sun, 24 Jun 2018 11:55:03 GMT): sine99 (Sun, 24 Jun 2018 12:02:34 GMT): sine99 (Sun, 24 Jun 2018 12:02:34 GMT): sine99 (Sun, 24 Jun 2018 12:03:35 GMT): Event (Sun, 24 Jun 2018 12:24:29 GMT): kaushalandpoudel (Sun, 24 Jun 2018 12:35:14 GMT): ApurvTandon (Mon, 25 Jun 2018 05:45:15 GMT): javapriyan (Mon, 25 Jun 2018 05:52:14 GMT): javapriyan (Mon, 25 Jun 2018 05:52:59 GMT): javapriyan (Mon, 25 Jun 2018 05:53:12 GMT): javapriyan (Mon, 25 Jun 2018 05:56:34 GMT): javapriyan (Mon, 25 Jun 2018 05:56:34 GMT): rthatcher (Mon, 25 Jun 2018 08:20:44 GMT): HoneyShah (Mon, 25 Jun 2018 08:29:53 GMT): rthatcher (Mon, 25 Jun 2018 08:43:38 GMT): vidor (Mon, 25 Jun 2018 08:47:56 GMT): RonaldBill (Mon, 25 Jun 2018 08:49:38 GMT): RonaldBill (Mon, 25 Jun 2018 08:53:08 GMT): RonaldBill (Mon, 25 Jun 2018 08:59:32 GMT): shrewdbug (Mon, 25 Jun 2018 09:06:54 GMT): HoneyShah (Mon, 25 Jun 2018 09:11:46 GMT): HoneyShah (Mon, 25 Jun 2018 09:11:46 GMT): HoneyShah (Mon, 25 Jun 2018 09:11:46 GMT): HoneyShah (Mon, 25 Jun 2018 09:11:46 GMT): HoneyShah (Mon, 25 Jun 2018 09:14:19 GMT): HoneyShah (Mon, 25 Jun 2018 09:14:19 GMT): HoneyShah (Mon, 25 Jun 2018 09:14:19 GMT): rthatcher (Mon, 25 Jun 2018 09:38:03 GMT): HoneyShah (Mon, 25 Jun 2018 10:03:30 GMT): HoneyShah (Mon, 25 Jun 2018 10:03:30 GMT): cal97g (Mon, 25 Jun 2018 10:08:25 GMT): cal97g (Mon, 25 Jun 2018 10:08:52 GMT): cal97g (Mon, 25 Jun 2018 10:08:52 GMT): mengluo668 (Mon, 25 Jun 2018 10:20:16 GMT): mengluo668 (Mon, 25 Jun 2018 10:20:16 GMT): mengluo668 (Mon, 25 Jun 2018 10:20:16 GMT): mengluo668 (Mon, 25 Jun 2018 10:20:16 GMT): mengluo668 (Mon, 25 Jun 2018 10:20:16 GMT): mengluo668 (Mon, 25 Jun 2018 10:20:16 GMT): mengluo668 (Mon, 25 Jun 2018 10:20:16 GMT): mengluo668 (Mon, 25 Jun 2018 10:20:16 GMT): mengluo668 (Mon, 25 Jun 2018 10:20:16 GMT): mengluo668 (Mon, 25 Jun 2018 10:20:16 GMT): puneet (Mon, 25 Jun 2018 10:25:06 GMT): rthatcher (Mon, 25 Jun 2018 10:29:41 GMT): LuisCoelho (Mon, 25 Jun 2018 10:44:36 GMT): rthatcher (Mon, 25 Jun 2018 10:45:34 GMT): rthatcher (Mon, 25 Jun 2018 10:48:26 GMT): LuisCoelho (Mon, 25 Jun 2018 11:02:02 GMT): cal97g (Mon, 25 Jun 2018 11:17:12 GMT): LuisCoelho (Mon, 25 Jun 2018 11:26:30 GMT): LuisCoelho (Mon, 25 Jun 2018 11:26:39 GMT): LuisCoelho (Mon, 25 Jun 2018 11:30:38 GMT): pedromlcosta (Mon, 25 Jun 2018 11:31:14 GMT): cal97g (Mon, 25 Jun 2018 11:32:14 GMT): cal97g (Mon, 25 Jun 2018 11:32:30 GMT): LuisCoelho (Mon, 25 Jun 2018 11:33:19 GMT): pedromlcosta (Mon, 25 Jun 2018 11:33:27 GMT): LuisCoelho (Mon, 25 Jun 2018 11:34:19 GMT): cal97g (Mon, 25 Jun 2018 11:34:28 GMT): HoneyShah (Mon, 25 Jun 2018 11:36:47 GMT): cal97g (Mon, 25 Jun 2018 11:37:53 GMT): rthatcher (Mon, 25 Jun 2018 11:47:02 GMT): rthatcher (Mon, 25 Jun 2018 11:47:02 GMT): rthatcher (Mon, 25 Jun 2018 11:48:49 GMT): cal97g (Mon, 25 Jun 2018 11:54:09 GMT): cal97g (Mon, 25 Jun 2018 11:54:09 GMT): cal97g (Mon, 25 Jun 2018 11:55:11 GMT): rthatcher (Mon, 25 Jun 2018 12:15:03 GMT): cal97g (Mon, 25 Jun 2018 12:24:51 GMT): LuisCoelho (Mon, 25 Jun 2018 12:26:08 GMT): rthatcher (Mon, 25 Jun 2018 12:37:08 GMT): mengluo668 (Mon, 25 Jun 2018 13:20:01 GMT): vitorduarte (Mon, 25 Jun 2018 13:49:05 GMT): VadimInshakov (Mon, 25 Jun 2018 15:29:43 GMT): VadimInshakov (Mon, 25 Jun 2018 15:32:54 GMT): Event (Mon, 25 Jun 2018 16:32:00 GMT): GiuseppeLittera (Mon, 25 Jun 2018 20:05:45 GMT): jcwarfield (Mon, 25 Jun 2018 20:51:33 GMT): jcwarfield (Mon, 25 Jun 2018 20:51:33 GMT): werewolfe (Mon, 25 Jun 2018 22:12:01 GMT): werewolfe (Mon, 25 Jun 2018 22:30:08 GMT): werewolfe (Mon, 25 Jun 2018 22:30:08 GMT): christian3042 (Tue, 26 Jun 2018 01:06:46 GMT): christian3042 (Tue, 26 Jun 2018 01:08:04 GMT): christian3042 (Tue, 26 Jun 2018 01:09:31 GMT): christian3042 (Tue, 26 Jun 2018 01:10:31 GMT): christian3042 (Tue, 26 Jun 2018 01:30:39 GMT): christian3042 (Tue, 26 Jun 2018 01:35:48 GMT): christian3042 (Tue, 26 Jun 2018 01:36:01 GMT): MrDavv (Tue, 26 Jun 2018 01:46:49 GMT): Charlemagne (Tue, 26 Jun 2018 03:27:57 GMT): arunwij (Tue, 26 Jun 2018 04:31:56 GMT): mengluo668 (Tue, 26 Jun 2018 06:44:46 GMT): mengluo668 (Tue, 26 Jun 2018 06:44:46 GMT): RakeshKumarzs (Tue, 26 Jun 2018 06:58:57 GMT): RakeshKumarzs (Tue, 26 Jun 2018 06:59:26 GMT): RakeshKumarzs (Tue, 26 Jun 2018 06:59:58 GMT): dannychen (Tue, 26 Jun 2018 07:05:38 GMT): dannychen (Tue, 26 Jun 2018 07:10:20 GMT): fabiomolinar (Tue, 26 Jun 2018 07:24:17 GMT): davidkel (Tue, 26 Jun 2018 07:30:12 GMT): davidkel (Tue, 26 Jun 2018 07:32:40 GMT): davidkel (Tue, 26 Jun 2018 07:32:40 GMT): Varun2887 (Tue, 26 Jun 2018 07:37:57 GMT): davidkel (Tue, 26 Jun 2018 07:41:09 GMT): davidkel (Tue, 26 Jun 2018 07:48:22 GMT): RakeshKumarzs (Tue, 26 Jun 2018 08:04:47 GMT): rthatcher (Tue, 26 Jun 2018 08:27:59 GMT): mengluo668 (Tue, 26 Jun 2018 08:32:45 GMT): ArvsIndrarys (Tue, 26 Jun 2018 08:34:58 GMT): dannychen (Tue, 26 Jun 2018 08:42:38 GMT): dannychen (Tue, 26 Jun 2018 08:45:22 GMT): auxocarpo (Tue, 26 Jun 2018 09:05:35 GMT): csy1204 (Tue, 26 Jun 2018 09:10:59 GMT): rthatcher (Tue, 26 Jun 2018 09:17:29 GMT): wangombe-g (Tue, 26 Jun 2018 09:57:01 GMT): VadimInshakov (Tue, 26 Jun 2018 10:18:39 GMT): VadimInshakov (Tue, 26 Jun 2018 10:18:39 GMT): Varun2887 (Tue, 26 Jun 2018 10:32:36 GMT): Varun2887 (Tue, 26 Jun 2018 10:33:09 GMT): VadimInshakov (Tue, 26 Jun 2018 10:37:00 GMT): VadimInshakov (Tue, 26 Jun 2018 10:37:00 GMT): lipoplus (Tue, 26 Jun 2018 10:37:59 GMT): VadimInshakov (Tue, 26 Jun 2018 10:38:01 GMT): lipoplus (Tue, 26 Jun 2018 10:38:57 GMT): VadimInshakov (Tue, 26 Jun 2018 10:39:33 GMT): lipoplus (Tue, 26 Jun 2018 10:41:06 GMT): lipoplus (Tue, 26 Jun 2018 10:41:20 GMT): VadimInshakov (Tue, 26 Jun 2018 10:41:50 GMT): lipoplus (Tue, 26 Jun 2018 10:43:43 GMT): VadimInshakov (Tue, 26 Jun 2018 10:44:36 GMT): rthatcher (Tue, 26 Jun 2018 11:16:10 GMT): DamienCosset (Tue, 26 Jun 2018 11:27:42 GMT): DamienCosset (Tue, 26 Jun 2018 11:29:15 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 12:15:27 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 12:15:46 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 12:16:20 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 12:18:39 GMT): waleed (Tue, 26 Jun 2018 12:21:17 GMT): waleed (Tue, 26 Jun 2018 12:21:17 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 12:25:33 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 12:25:33 GMT): waleed (Tue, 26 Jun 2018 12:27:14 GMT): waleed (Tue, 26 Jun 2018 12:27:14 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 12:27:55 GMT): waleed (Tue, 26 Jun 2018 12:29:35 GMT): waleed (Tue, 26 Jun 2018 12:29:35 GMT): waleed (Tue, 26 Jun 2018 12:29:35 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 12:30:32 GMT): VadimInshakov (Tue, 26 Jun 2018 12:33:02 GMT): waleed (Tue, 26 Jun 2018 12:41:30 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 12:42:45 GMT): waleed (Tue, 26 Jun 2018 12:43:53 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 12:45:34 GMT): prmdmshra (Tue, 26 Jun 2018 12:46:44 GMT): waleed (Tue, 26 Jun 2018 12:50:33 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 12:51:44 GMT): waleed (Tue, 26 Jun 2018 12:52:26 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 12:54:12 GMT): waleed (Tue, 26 Jun 2018 12:55:44 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 12:59:32 GMT): LuisCoelho (Tue, 26 Jun 2018 13:04:42 GMT): rthatcher (Tue, 26 Jun 2018 13:05:52 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 13:07:58 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 13:07:58 GMT): AMIL_SAJEEV (Tue, 26 Jun 2018 13:08:36 GMT): skarlekar (Tue, 26 Jun 2018 13:12:26 GMT): VadimInshakov (Tue, 26 Jun 2018 13:15:51 GMT): skarlekar (Tue, 26 Jun 2018 13:18:56 GMT): LuisCoelho (Tue, 26 Jun 2018 13:38:58 GMT): LuisCoelho (Tue, 26 Jun 2018 13:39:16 GMT): LuisCoelho (Tue, 26 Jun 2018 13:39:22 GMT): VadimInshakov (Tue, 26 Jun 2018 13:40:19 GMT): adokce (Tue, 26 Jun 2018 13:46:56 GMT): rthatcher (Tue, 26 Jun 2018 13:51:05 GMT): rthatcher (Tue, 26 Jun 2018 13:52:08 GMT): waleed (Tue, 26 Jun 2018 13:54:05 GMT): adokce (Tue, 26 Jun 2018 13:56:21 GMT): adokce (Tue, 26 Jun 2018 13:56:38 GMT): VadimInshakov (Tue, 26 Jun 2018 14:01:57 GMT): mandeville135 (Tue, 26 Jun 2018 14:07:46 GMT): JuanCamilo_0314 (Tue, 26 Jun 2018 14:11:35 GMT): rthatcher (Tue, 26 Jun 2018 14:22:48 GMT): lipoplus (Tue, 26 Jun 2018 15:25:32 GMT): lipoplus (Tue, 26 Jun 2018 15:25:40 GMT): lipoplus (Tue, 26 Jun 2018 15:45:27 GMT): lipoplus (Tue, 26 Jun 2018 15:45:35 GMT): rthatcher (Tue, 26 Jun 2018 15:57:29 GMT): julian (Tue, 26 Jun 2018 17:10:33 GMT): davidkel (Tue, 26 Jun 2018 17:29:40 GMT): davidkel (Tue, 26 Jun 2018 17:29:40 GMT): Miruthan (Tue, 26 Jun 2018 17:53:54 GMT): rjbrock (Tue, 26 Jun 2018 18:00:50 GMT): dwong (Tue, 26 Jun 2018 18:25:11 GMT): ScottMorris (Tue, 26 Jun 2018 19:14:32 GMT): davidkel (Tue, 26 Jun 2018 19:20:07 GMT): davidkel (Tue, 26 Jun 2018 19:20:07 GMT): davidkel (Tue, 26 Jun 2018 19:20:07 GMT): davidkel (Tue, 26 Jun 2018 19:31:47 GMT): rjbrock (Tue, 26 Jun 2018 19:52:10 GMT): rjbrock (Tue, 26 Jun 2018 19:52:18 GMT): rjbrock (Tue, 26 Jun 2018 19:53:53 GMT): rjbrock (Tue, 26 Jun 2018 19:54:22 GMT): ScottMorris (Tue, 26 Jun 2018 20:13:19 GMT): davidkel (Tue, 26 Jun 2018 20:14:14 GMT): JohnR (Tue, 26 Jun 2018 20:15:01 GMT): rjbrock (Tue, 26 Jun 2018 20:15:18 GMT): rjbrock (Tue, 26 Jun 2018 20:15:51 GMT): JohnR (Tue, 26 Jun 2018 20:16:06 GMT): rjbrock (Tue, 26 Jun 2018 20:16:10 GMT): JohnR (Tue, 26 Jun 2018 20:19:26 GMT): ScottMorris (Tue, 26 Jun 2018 20:19:47 GMT): rjbrock (Tue, 26 Jun 2018 20:22:20 GMT): davidkel (Tue, 26 Jun 2018 20:23:31 GMT): davidkel (Tue, 26 Jun 2018 20:23:31 GMT): JohnR (Tue, 26 Jun 2018 20:25:57 GMT): rjbrock (Tue, 26 Jun 2018 20:26:50 GMT): davidkel (Tue, 26 Jun 2018 20:28:13 GMT): rjbrock (Tue, 26 Jun 2018 20:29:49 GMT): ScottMorris (Tue, 26 Jun 2018 20:30:36 GMT): davidkel (Tue, 26 Jun 2018 20:32:14 GMT): rjbrock (Tue, 26 Jun 2018 20:32:59 GMT): davidkel (Tue, 26 Jun 2018 20:36:08 GMT): davidkel (Tue, 26 Jun 2018 20:37:37 GMT): JohnR (Tue, 26 Jun 2018 20:37:39 GMT): davidkel (Tue, 26 Jun 2018 20:41:16 GMT): JohnR (Tue, 26 Jun 2018 20:41:27 GMT): JohnR (Tue, 26 Jun 2018 20:41:51 GMT): davidkel (Tue, 26 Jun 2018 20:42:54 GMT): julian (Tue, 26 Jun 2018 21:25:52 GMT): JordanDearsley (Tue, 26 Jun 2018 21:33:14 GMT): davidkel (Tue, 26 Jun 2018 21:41:46 GMT): LabibFarag (Tue, 26 Jun 2018 22:30:17 GMT): DavidPark (Tue, 26 Jun 2018 22:56:58 GMT): Jeon 16 (Wed, 27 Jun 2018 01:53:52 GMT): Jeon 16 (Wed, 27 Jun 2018 01:54:08 GMT): Jeon 16 (Wed, 27 Jun 2018 01:55:51 GMT): sawman99 (Wed, 27 Jun 2018 02:58:28 GMT): prmdmshra (Wed, 27 Jun 2018 04:36:11 GMT): prmdmshra (Wed, 27 Jun 2018 04:36:11 GMT): prmdmshra (Wed, 27 Jun 2018 04:36:11 GMT): prmdmshra (Wed, 27 Jun 2018 04:36:11 GMT): prmdmshra (Wed, 27 Jun 2018 04:36:11 GMT): prmdmshra (Wed, 27 Jun 2018 04:36:11 GMT): fabiomolinar (Wed, 27 Jun 2018 05:06:38 GMT): Jeon 16 (Wed, 27 Jun 2018 05:43:35 GMT): zhulg (Wed, 27 Jun 2018 05:44:26 GMT): MunjalPatel (Wed, 27 Jun 2018 06:39:30 GMT): MunjalPatel (Wed, 27 Jun 2018 06:43:27 GMT): Farhan1122 (Wed, 27 Jun 2018 07:22:55 GMT): Farhan1122 (Wed, 27 Jun 2018 07:23:35 GMT): JohnR (Wed, 27 Jun 2018 07:49:14 GMT): Farhan1122 (Wed, 27 Jun 2018 07:49:58 GMT): JohnR (Wed, 27 Jun 2018 07:50:55 GMT): Farhan1122 (Wed, 27 Jun 2018 07:51:16 GMT): Farhan1122 (Wed, 27 Jun 2018 07:51:19 GMT): JohnR (Wed, 27 Jun 2018 07:52:01 GMT): Farhan1122 (Wed, 27 Jun 2018 07:52:52 GMT): Farhan1122 (Wed, 27 Jun 2018 07:53:03 GMT): JohnR (Wed, 27 Jun 2018 07:56:10 GMT): DamienCosset (Wed, 27 Jun 2018 08:03:12 GMT): DamienCosset (Wed, 27 Jun 2018 08:03:12 GMT): Farhan1122 (Wed, 27 Jun 2018 08:08:13 GMT): VictorReolid (Wed, 27 Jun 2018 08:08:29 GMT): VictorReolid (Wed, 27 Jun 2018 08:08:32 GMT): VictorReolid (Wed, 27 Jun 2018 08:08:45 GMT): Farhan1122 (Wed, 27 Jun 2018 08:08:48 GMT): Bency (Wed, 27 Jun 2018 08:08:50 GMT): VictorReolid (Wed, 27 Jun 2018 08:09:09 GMT): Farhan1122 (Wed, 27 Jun 2018 08:09:13 GMT): VictorReolid (Wed, 27 Jun 2018 08:09:22 GMT): VictorReolid (Wed, 27 Jun 2018 08:09:34 GMT): VictorReolid (Wed, 27 Jun 2018 08:10:02 GMT): Farhan1122 (Wed, 27 Jun 2018 08:10:37 GMT): Farhan1122 (Wed, 27 Jun 2018 08:10:56 GMT): Farhan1122 (Wed, 27 Jun 2018 08:11:03 GMT): Farhan1122 (Wed, 27 Jun 2018 08:11:08 GMT): Farhan1122 (Wed, 27 Jun 2018 08:11:17 GMT): Farhan1122 (Wed, 27 Jun 2018 08:11:25 GMT): VictorReolid (Wed, 27 Jun 2018 08:11:51 GMT): VictorReolid (Wed, 27 Jun 2018 08:11:55 GMT): VictorReolid (Wed, 27 Jun 2018 08:11:59 GMT): VictorReolid (Wed, 27 Jun 2018 08:12:13 GMT): VictorReolid (Wed, 27 Jun 2018 08:12:44 GMT): DamienCosset (Wed, 27 Jun 2018 08:12:47 GMT): VictorReolid (Wed, 27 Jun 2018 08:13:02 GMT): VictorReolid (Wed, 27 Jun 2018 08:13:35 GMT): VictorReolid (Wed, 27 Jun 2018 08:13:44 GMT): VictorReolid (Wed, 27 Jun 2018 08:13:53 GMT): Farhan1122 (Wed, 27 Jun 2018 08:13:58 GMT): VictorReolid (Wed, 27 Jun 2018 08:14:17 GMT): Farhan1122 (Wed, 27 Jun 2018 08:14:56 GMT): Farhan1122 (Wed, 27 Jun 2018 08:15:14 GMT): sine99 (Wed, 27 Jun 2018 08:21:06 GMT): sine99 (Wed, 27 Jun 2018 08:21:06 GMT): julian (Wed, 27 Jun 2018 08:23:13 GMT): rthatcher (Wed, 27 Jun 2018 08:23:23 GMT): sine99 (Wed, 27 Jun 2018 08:25:36 GMT): DamienCosset (Wed, 27 Jun 2018 08:26:54 GMT): DamienCosset (Wed, 27 Jun 2018 08:27:38 GMT): VictorReolid (Wed, 27 Jun 2018 08:27:56 GMT): VadimInshakov (Wed, 27 Jun 2018 08:28:31 GMT): seanice (Wed, 27 Jun 2018 08:28:46 GMT): Farhan1122 (Wed, 27 Jun 2018 08:29:49 GMT): Farhan1122 (Wed, 27 Jun 2018 08:30:43 GMT): rthatcher (Wed, 27 Jun 2018 08:32:40 GMT): waleed (Wed, 27 Jun 2018 08:35:59 GMT): rthatcher (Wed, 27 Jun 2018 08:38:09 GMT): prmdmshra (Wed, 27 Jun 2018 08:46:34 GMT): prmdmshra (Wed, 27 Jun 2018 08:46:34 GMT): AlexanderWilts (Wed, 27 Jun 2018 08:54:57 GMT): VadimInshakov (Wed, 27 Jun 2018 08:56:21 GMT): VictorReolid (Wed, 27 Jun 2018 09:31:04 GMT): VictorReolid (Wed, 27 Jun 2018 09:31:11 GMT): VictorReolid (Wed, 27 Jun 2018 09:31:14 GMT): VictorReolid (Wed, 27 Jun 2018 09:31:42 GMT): VictorReolid (Wed, 27 Jun 2018 09:31:47 GMT): Jyotirmoy (Wed, 27 Jun 2018 09:31:57 GMT): Jyotirmoy (Wed, 27 Jun 2018 09:32:36 GMT): Jyotirmoy (Wed, 27 Jun 2018 09:32:55 GMT): Lukechain (Wed, 27 Jun 2018 09:33:01 GMT): Jyotirmoy (Wed, 27 Jun 2018 09:33:17 GMT): Jyotirmoy (Wed, 27 Jun 2018 09:33:33 GMT): Jyotirmoy (Wed, 27 Jun 2018 09:33:51 GMT): Jyotirmoy (Wed, 27 Jun 2018 09:34:05 GMT): Jyotirmoy (Wed, 27 Jun 2018 09:34:17 GMT): Jyotirmoy (Wed, 27 Jun 2018 09:34:26 GMT): davidkel (Wed, 27 Jun 2018 09:51:49 GMT): Jyotirmoy (Wed, 27 Jun 2018 09:54:25 GMT): VadimInshakov (Wed, 27 Jun 2018 09:54:57 GMT): VadimInshakov (Wed, 27 Jun 2018 09:54:57 GMT): VictorReolid (Wed, 27 Jun 2018 10:02:39 GMT): VictorReolid (Wed, 27 Jun 2018 10:02:48 GMT): VictorReolid (Wed, 27 Jun 2018 10:02:51 GMT): VictorReolid (Wed, 27 Jun 2018 10:07:50 GMT): VictorReolid (Wed, 27 Jun 2018 10:07:54 GMT): mvillalobos (Wed, 27 Jun 2018 10:11:41 GMT): VictorReolid (Wed, 27 Jun 2018 10:12:02 GMT): mvillalobos (Wed, 27 Jun 2018 10:15:48 GMT): mvillalobos (Wed, 27 Jun 2018 10:15:48 GMT): mvillalobos (Wed, 27 Jun 2018 10:19:19 GMT): mvillalobos (Wed, 27 Jun 2018 10:19:44 GMT): rthatcher (Wed, 27 Jun 2018 10:20:12 GMT): varunagarwal (Wed, 27 Jun 2018 10:21:41 GMT): VictorReolid (Wed, 27 Jun 2018 10:22:42 GMT): VictorReolid (Wed, 27 Jun 2018 10:23:35 GMT): VictorReolid (Wed, 27 Jun 2018 10:23:43 GMT): VictorReolid (Wed, 27 Jun 2018 10:23:55 GMT): VictorReolid (Wed, 27 Jun 2018 10:24:01 GMT): VictorReolid (Wed, 27 Jun 2018 10:24:06 GMT): VictorReolid (Wed, 27 Jun 2018 10:24:12 GMT): rthatcher (Wed, 27 Jun 2018 10:25:02 GMT): mvillalobos (Wed, 27 Jun 2018 10:30:01 GMT): varunagarwal (Wed, 27 Jun 2018 10:30:28 GMT): varunagarwal (Wed, 27 Jun 2018 10:31:48 GMT): mvillalobos (Wed, 27 Jun 2018 10:31:53 GMT): VictorReolid (Wed, 27 Jun 2018 10:31:53 GMT): VictorReolid (Wed, 27 Jun 2018 10:32:01 GMT): varunagarwal (Wed, 27 Jun 2018 10:32:47 GMT): mvillalobos (Wed, 27 Jun 2018 10:34:02 GMT): varunagarwal (Wed, 27 Jun 2018 10:34:09 GMT): varunagarwal (Wed, 27 Jun 2018 10:34:29 GMT): mvillalobos (Wed, 27 Jun 2018 10:35:19 GMT): varunagarwal (Wed, 27 Jun 2018 10:36:04 GMT): varunagarwal (Wed, 27 Jun 2018 10:39:17 GMT): rthatcher (Wed, 27 Jun 2018 10:40:57 GMT): rthatcher (Wed, 27 Jun 2018 10:44:34 GMT): varunagarwal (Wed, 27 Jun 2018 10:47:01 GMT): mvillalobos (Wed, 27 Jun 2018 10:49:39 GMT): rthatcher (Wed, 27 Jun 2018 10:51:36 GMT): rthatcher (Wed, 27 Jun 2018 10:55:15 GMT): varunagarwal (Wed, 27 Jun 2018 10:56:13 GMT): AlexanderWilts (Wed, 27 Jun 2018 11:42:47 GMT): rthatcher (Wed, 27 Jun 2018 11:45:38 GMT): HoneyShah (Wed, 27 Jun 2018 11:51:05 GMT): Miruthan (Wed, 27 Jun 2018 12:11:12 GMT): AlexanderWilts (Wed, 27 Jun 2018 12:19:49 GMT): Varun2887 (Wed, 27 Jun 2018 12:30:25 GMT): rthatcher (Wed, 27 Jun 2018 12:32:02 GMT): AlexanderWilts (Wed, 27 Jun 2018 12:32:48 GMT): rthatcher (Wed, 27 Jun 2018 12:34:23 GMT): rthatcher (Wed, 27 Jun 2018 12:38:10 GMT): rthatcher (Wed, 27 Jun 2018 12:44:56 GMT): AlexanderWilts (Wed, 27 Jun 2018 12:45:47 GMT): Miruthan (Wed, 27 Jun 2018 12:56:17 GMT): StevenP 4 (Wed, 27 Jun 2018 13:16:18 GMT): StevenP 4 (Wed, 27 Jun 2018 13:20:01 GMT): rthatcher (Wed, 27 Jun 2018 13:38:57 GMT): Jyotirmoy (Wed, 27 Jun 2018 13:40:31 GMT): rthatcher (Wed, 27 Jun 2018 13:47:49 GMT): StevenP 4 (Wed, 27 Jun 2018 13:54:23 GMT): rthatcher (Wed, 27 Jun 2018 13:57:49 GMT): Jyotirmoy (Wed, 27 Jun 2018 14:12:20 GMT): rthatcher (Wed, 27 Jun 2018 14:20:05 GMT): rthatcher (Wed, 27 Jun 2018 14:20:05 GMT): Jyotirmoy (Wed, 27 Jun 2018 14:30:44 GMT): Jyotirmoy (Wed, 27 Jun 2018 14:32:50 GMT): Jyotirmoy (Wed, 27 Jun 2018 14:33:35 GMT): Jyotirmoy (Wed, 27 Jun 2018 14:34:51 GMT): Jyotirmoy (Wed, 27 Jun 2018 14:34:51 GMT): LuisCoelho (Wed, 27 Jun 2018 14:43:25 GMT): rthatcher (Wed, 27 Jun 2018 14:52:40 GMT): LuisCoelho (Wed, 27 Jun 2018 14:54:23 GMT): javapriyan (Wed, 27 Jun 2018 14:55:31 GMT): javapriyan (Wed, 27 Jun 2018 14:55:31 GMT): javapriyan (Wed, 27 Jun 2018 14:55:31 GMT): javapriyan (Wed, 27 Jun 2018 14:56:54 GMT): javapriyan (Wed, 27 Jun 2018 14:57:03 GMT): javapriyan (Wed, 27 Jun 2018 14:59:14 GMT): LuisCoelho (Wed, 27 Jun 2018 15:00:42 GMT): javapriyan (Wed, 27 Jun 2018 15:01:35 GMT): javapriyan (Wed, 27 Jun 2018 15:02:27 GMT): javapriyan (Wed, 27 Jun 2018 15:03:13 GMT): javapriyan (Wed, 27 Jun 2018 15:03:13 GMT): LuisCoelho (Wed, 27 Jun 2018 15:04:09 GMT): javapriyan (Wed, 27 Jun 2018 15:06:00 GMT): LuisCoelho (Wed, 27 Jun 2018 15:10:26 GMT): LuisCoelho (Wed, 27 Jun 2018 15:11:59 GMT): LuisCoelho (Wed, 27 Jun 2018 15:13:10 GMT): LuisCoelho (Wed, 27 Jun 2018 15:13:25 GMT): javapriyan (Wed, 27 Jun 2018 15:13:58 GMT): javapriyan (Wed, 27 Jun 2018 15:13:58 GMT): davidkel (Wed, 27 Jun 2018 15:14:35 GMT): javapriyan (Wed, 27 Jun 2018 15:15:26 GMT): LuisCoelho (Wed, 27 Jun 2018 15:16:12 GMT): javapriyan (Wed, 27 Jun 2018 15:23:02 GMT): javapriyan (Wed, 27 Jun 2018 15:25:20 GMT): javapriyan (Wed, 27 Jun 2018 15:25:20 GMT): javapriyan (Wed, 27 Jun 2018 15:25:20 GMT): javapriyan (Wed, 27 Jun 2018 15:25:20 GMT): JonathanC (Wed, 27 Jun 2018 15:44:52 GMT): rthatcher (Wed, 27 Jun 2018 15:56:23 GMT): Miruthan (Wed, 27 Jun 2018 16:02:49 GMT): Miruthan (Wed, 27 Jun 2018 16:02:49 GMT): julian (Wed, 27 Jun 2018 17:47:03 GMT): davidkel (Wed, 27 Jun 2018 18:45:22 GMT): davidkel (Wed, 27 Jun 2018 18:45:22 GMT): JeffreyDeason (Wed, 27 Jun 2018 19:04:05 GMT): jae.kim (Wed, 27 Jun 2018 19:14:07 GMT): Raghav_rt (Wed, 27 Jun 2018 20:22:41 GMT): dwong (Wed, 27 Jun 2018 23:10:53 GMT): Miruthan (Thu, 28 Jun 2018 00:09:31 GMT): Miruthan (Thu, 28 Jun 2018 00:09:31 GMT): HoneyShah (Thu, 28 Jun 2018 03:17:27 GMT): zhulg (Thu, 28 Jun 2018 06:14:27 GMT): SarathKumar155 (Thu, 28 Jun 2018 06:14:57 GMT): SarathKumar155 (Thu, 28 Jun 2018 06:15:55 GMT): Varun2887 (Thu, 28 Jun 2018 06:40:21 GMT): waleed (Thu, 28 Jun 2018 06:56:21 GMT): waleed (Thu, 28 Jun 2018 06:56:21 GMT): rajanashutosh (Thu, 28 Jun 2018 07:56:38 GMT): rajanashutosh (Thu, 28 Jun 2018 07:56:43 GMT): rthatcher (Thu, 28 Jun 2018 08:22:22 GMT): rthatcher (Thu, 28 Jun 2018 08:34:42 GMT): rthatcher (Thu, 28 Jun 2018 08:43:31 GMT): rthatcher (Thu, 28 Jun 2018 08:46:22 GMT): hamza-kakar (Thu, 28 Jun 2018 09:04:35 GMT): rthatcher (Thu, 28 Jun 2018 09:15:47 GMT): rajanashutosh (Thu, 28 Jun 2018 09:26:50 GMT): rajanashutosh (Thu, 28 Jun 2018 09:26:54 GMT): yunukim (Thu, 28 Jun 2018 09:31:49 GMT): yunukim (Thu, 28 Jun 2018 09:34:31 GMT): yunukim (Thu, 28 Jun 2018 09:35:07 GMT): yunukim (Thu, 28 Jun 2018 09:35:37 GMT): Avinash_Kancharla (Thu, 28 Jun 2018 09:40:03 GMT): Farhan1122 (Thu, 28 Jun 2018 09:51:54 GMT): dannychen (Thu, 28 Jun 2018 09:55:09 GMT): VictorReolid (Thu, 28 Jun 2018 09:55:25 GMT): waleed (Thu, 28 Jun 2018 09:59:43 GMT): davidkel (Thu, 28 Jun 2018 10:10:18 GMT): fedens (Thu, 28 Jun 2018 10:11:22 GMT): Krait82 (Thu, 28 Jun 2018 10:23:11 GMT): Krait82 (Thu, 28 Jun 2018 10:26:41 GMT): Krait82 (Thu, 28 Jun 2018 10:26:41 GMT): rthatcher (Thu, 28 Jun 2018 10:42:01 GMT): VictorReolid (Thu, 28 Jun 2018 10:48:27 GMT): VictorReolid (Thu, 28 Jun 2018 10:48:48 GMT): rthatcher (Thu, 28 Jun 2018 10:52:21 GMT): VictorReolid (Thu, 28 Jun 2018 10:52:51 GMT): Juanan_Tejero (Thu, 28 Jun 2018 11:24:40 GMT): HoneyShah (Thu, 28 Jun 2018 11:57:14 GMT): waleed (Thu, 28 Jun 2018 12:32:29 GMT): waleed (Thu, 28 Jun 2018 12:32:29 GMT): rthatcher (Thu, 28 Jun 2018 12:40:57 GMT): rthatcher (Thu, 28 Jun 2018 12:43:14 GMT): Juanan_Tejero (Thu, 28 Jun 2018 12:47:44 GMT): Poneey (Thu, 28 Jun 2018 12:59:36 GMT): waleed (Thu, 28 Jun 2018 13:07:25 GMT): Poneey (Thu, 28 Jun 2018 13:07:46 GMT): sureshtedla (Thu, 28 Jun 2018 13:21:18 GMT): rajanashutosh (Thu, 28 Jun 2018 14:26:40 GMT): StevenP 4 (Thu, 28 Jun 2018 14:30:45 GMT): rajanashutosh (Thu, 28 Jun 2018 14:36:07 GMT): rthatcher (Thu, 28 Jun 2018 14:39:14 GMT): StevenP 4 (Thu, 28 Jun 2018 14:43:26 GMT): rajanashutosh (Thu, 28 Jun 2018 14:44:21 GMT): sureshtedla (Thu, 28 Jun 2018 14:44:27 GMT): sureshtedla (Thu, 28 Jun 2018 14:44:27 GMT): clouddead (Thu, 28 Jun 2018 15:01:24 GMT): JuanCamilo_0314 (Thu, 28 Jun 2018 17:43:24 GMT): JuanCamilo_0314 (Thu, 28 Jun 2018 17:47:06 GMT): waleed (Thu, 28 Jun 2018 17:57:14 GMT): JuanCamilo_0314 (Thu, 28 Jun 2018 17:57:58 GMT): SwapneshNaik (Thu, 28 Jun 2018 18:01:17 GMT): SwapneshNaik (Thu, 28 Jun 2018 18:02:09 GMT): SwapneshNaik (Thu, 28 Jun 2018 18:03:53 GMT): SwapneshNaik (Thu, 28 Jun 2018 18:03:58 GMT): silliman (Thu, 28 Jun 2018 18:47:07 GMT): Antonio_M (Thu, 28 Jun 2018 19:01:13 GMT): jwagantall (Thu, 28 Jun 2018 22:39:35 GMT): ZaheerUdDeen (Thu, 28 Jun 2018 23:51:14 GMT): yunukim (Fri, 29 Jun 2018 01:14:36 GMT): yunukim (Fri, 29 Jun 2018 01:14:59 GMT): yunukim (Fri, 29 Jun 2018 01:15:25 GMT): yunukim (Fri, 29 Jun 2018 01:15:32 GMT): yunukim (Fri, 29 Jun 2018 04:19:08 GMT): yunukim (Fri, 29 Jun 2018 04:19:57 GMT): yunukim (Fri, 29 Jun 2018 04:20:39 GMT): yunukim (Fri, 29 Jun 2018 05:18:14 GMT): wangrangli (Fri, 29 Jun 2018 05:43:19 GMT): Ferrymania (Fri, 29 Jun 2018 05:57:34 GMT): uber.twin (Fri, 29 Jun 2018 07:48:15 GMT): HoneyShah (Fri, 29 Jun 2018 08:07:45 GMT): rthatcher (Fri, 29 Jun 2018 08:27:13 GMT): rthatcher (Fri, 29 Jun 2018 08:33:22 GMT): uber.twin (Fri, 29 Jun 2018 08:37:45 GMT): rthatcher (Fri, 29 Jun 2018 08:41:33 GMT): wangrangli (Fri, 29 Jun 2018 08:48:23 GMT): rthatcher (Fri, 29 Jun 2018 08:49:29 GMT): rthatcher (Fri, 29 Jun 2018 08:51:12 GMT): labcoinpoc (Fri, 29 Jun 2018 08:53:27 GMT): wangrangli (Fri, 29 Jun 2018 09:01:50 GMT): HoneyShah (Fri, 29 Jun 2018 09:02:59 GMT): karunesh10 (Fri, 29 Jun 2018 09:10:03 GMT): rthatcher (Fri, 29 Jun 2018 09:37:02 GMT): karunesh10 (Fri, 29 Jun 2018 09:37:52 GMT): DamienCosset (Fri, 29 Jun 2018 10:35:51 GMT): rthatcher (Fri, 29 Jun 2018 10:46:25 GMT): DamienCosset (Fri, 29 Jun 2018 10:50:36 GMT): AbidiBassem (Fri, 29 Jun 2018 11:06:05 GMT): etrn (Fri, 29 Jun 2018 11:07:58 GMT): rthatcher (Fri, 29 Jun 2018 11:22:41 GMT): SimonOberzan (Fri, 29 Jun 2018 11:28:05 GMT): SimonOberzan (Fri, 29 Jun 2018 11:28:05 GMT): SimonOberzan (Fri, 29 Jun 2018 11:28:05 GMT): sine99 (Fri, 29 Jun 2018 11:32:42 GMT): sine99 (Fri, 29 Jun 2018 11:32:58 GMT): sine99 (Fri, 29 Jun 2018 11:32:58 GMT): sine99 (Fri, 29 Jun 2018 11:32:58 GMT): FlorentinoSainz (Fri, 29 Jun 2018 11:46:19 GMT): FlorentinoSainz (Fri, 29 Jun 2018 11:46:49 GMT): FlorentinoSainz (Fri, 29 Jun 2018 11:47:01 GMT): FlorentinoSainz (Fri, 29 Jun 2018 11:47:23 GMT): davidkel (Fri, 29 Jun 2018 12:01:20 GMT): SimonOberzan (Fri, 29 Jun 2018 12:02:24 GMT): sine99 (Fri, 29 Jun 2018 12:09:56 GMT): sine99 (Fri, 29 Jun 2018 12:09:56 GMT): ziqbalbh (Fri, 29 Jun 2018 12:26:57 GMT): rthatcher (Fri, 29 Jun 2018 13:04:27 GMT): rthatcher (Fri, 29 Jun 2018 13:04:27 GMT): sine99 (Fri, 29 Jun 2018 13:26:46 GMT): rthatcher (Fri, 29 Jun 2018 13:35:56 GMT): sine99 (Fri, 29 Jun 2018 13:43:37 GMT): sine99 (Fri, 29 Jun 2018 13:43:37 GMT): mataide (Fri, 29 Jun 2018 14:00:36 GMT): mataide (Fri, 29 Jun 2018 14:00:49 GMT): mataide (Fri, 29 Jun 2018 14:01:35 GMT): czar0 (Fri, 29 Jun 2018 14:36:08 GMT): czar0 (Fri, 29 Jun 2018 14:39:20 GMT): silliman (Fri, 29 Jun 2018 14:49:52 GMT): czar0 (Fri, 29 Jun 2018 15:02:54 GMT): czar0 (Fri, 29 Jun 2018 15:02:54 GMT): ruairih (Fri, 29 Jun 2018 15:06:09 GMT): ruairih (Fri, 29 Jun 2018 15:07:06 GMT): ruairih (Fri, 29 Jun 2018 15:07:34 GMT): davidkel (Fri, 29 Jun 2018 15:09:13 GMT): davidkel (Fri, 29 Jun 2018 15:11:13 GMT): ruairih (Fri, 29 Jun 2018 15:12:54 GMT): ziqbalbh (Fri, 29 Jun 2018 15:15:39 GMT): ziqbalbh (Fri, 29 Jun 2018 15:16:38 GMT): vidor (Fri, 29 Jun 2018 15:25:35 GMT): vidor (Fri, 29 Jun 2018 15:25:54 GMT): rthatcher (Fri, 29 Jun 2018 15:30:46 GMT): ruairih (Fri, 29 Jun 2018 15:33:14 GMT): ruairih (Fri, 29 Jun 2018 15:34:28 GMT): rthatcher (Fri, 29 Jun 2018 15:50:45 GMT): ruairih (Fri, 29 Jun 2018 15:52:35 GMT): apaparazzi0329 (Fri, 29 Jun 2018 15:57:55 GMT): SwapneshNaik (Fri, 29 Jun 2018 16:31:51 GMT): SwapneshNaik (Fri, 29 Jun 2018 16:32:12 GMT): bestbeforetoday (Fri, 29 Jun 2018 16:34:24 GMT): SwapneshNaik (Fri, 29 Jun 2018 16:39:23 GMT): SwapneshNaik (Fri, 29 Jun 2018 16:39:26 GMT): bestbeforetoday (Fri, 29 Jun 2018 16:43:52 GMT): SwapneshNaik (Fri, 29 Jun 2018 16:44:36 GMT): bestbeforetoday (Fri, 29 Jun 2018 16:44:48 GMT): SwapneshNaik (Fri, 29 Jun 2018 17:16:53 GMT): SwapneshNaik (Fri, 29 Jun 2018 17:17:04 GMT): SwapneshNaik (Fri, 29 Jun 2018 17:17:18 GMT): SwapneshNaik (Fri, 29 Jun 2018 17:17:46 GMT): SwapneshNaik (Fri, 29 Jun 2018 17:35:32 GMT): ppcm (Fri, 29 Jun 2018 17:50:56 GMT): ppcm (Fri, 29 Jun 2018 17:52:24 GMT): rthatcher (Fri, 29 Jun 2018 18:08:27 GMT): rthatcher (Fri, 29 Jun 2018 18:12:30 GMT): davidkel (Fri, 29 Jun 2018 18:31:26 GMT): davidkel (Fri, 29 Jun 2018 18:31:26 GMT): ppcm (Fri, 29 Jun 2018 18:50:49 GMT): davidkel (Fri, 29 Jun 2018 19:11:48 GMT): PhillipPirrip (Fri, 29 Jun 2018 19:15:32 GMT): PhillipPirrip (Fri, 29 Jun 2018 19:21:07 GMT): ppcm (Fri, 29 Jun 2018 19:22:03 GMT): davidkel (Fri, 29 Jun 2018 19:27:29 GMT): apaparazzi0329 (Fri, 29 Jun 2018 19:30:38 GMT): CarloFerrarini (Fri, 29 Jun 2018 20:34:55 GMT): handaanmol (Fri, 29 Jun 2018 22:03:09 GMT): handaanmol (Fri, 29 Jun 2018 22:03:13 GMT): MHeisoku (Fri, 29 Jun 2018 22:20:13 GMT): MHeisoku (Fri, 29 Jun 2018 22:32:11 GMT): MHeisoku (Fri, 29 Jun 2018 22:32:15 GMT): robvic (Sat, 30 Jun 2018 00:00:03 GMT): vic.bancroft (Sat, 30 Jun 2018 03:13:23 GMT): sumitec89 (Sat, 30 Jun 2018 03:43:23 GMT): sumitec89 (Sat, 30 Jun 2018 03:47:14 GMT): sumitec89 (Sat, 30 Jun 2018 03:47:26 GMT): sumitec89 (Sat, 30 Jun 2018 03:49:03 GMT): sumitec89 (Sat, 30 Jun 2018 03:49:24 GMT): sine99 (Sat, 30 Jun 2018 05:45:18 GMT): sine99 (Sat, 30 Jun 2018 05:47:43 GMT): sine99 (Sat, 30 Jun 2018 06:00:47 GMT): SiddharthOX (Sat, 30 Jun 2018 06:06:44 GMT): amitkshukla (Sat, 30 Jun 2018 06:17:24 GMT): prtk418 (Sat, 30 Jun 2018 07:16:23 GMT): prtk418 (Sat, 30 Jun 2018 07:19:56 GMT): sine99 (Sat, 30 Jun 2018 08:41:23 GMT): sine99 (Sat, 30 Jun 2018 08:41:23 GMT): mmomeu (Sat, 30 Jun 2018 15:08:11 GMT): mmomeu (Sat, 30 Jun 2018 15:39:31 GMT): robvic (Sat, 30 Jun 2018 16:51:31 GMT): robvic (Sat, 30 Jun 2018 16:52:36 GMT): apaparazzi0329 (Sat, 30 Jun 2018 17:35:52 GMT): apaparazzi0329 (Sat, 30 Jun 2018 17:36:24 GMT): Miruthan (Sat, 30 Jun 2018 17:59:31 GMT): VadimInshakov (Sat, 30 Jun 2018 18:02:08 GMT): mmomeu (Sat, 30 Jun 2018 18:14:12 GMT): mmomeu (Sat, 30 Jun 2018 18:14:36 GMT): apaparazzi0329 (Sat, 30 Jun 2018 18:15:49 GMT): apaparazzi0329 (Sat, 30 Jun 2018 18:15:57 GMT): sine99 (Sat, 30 Jun 2018 19:07:01 GMT): sine99 (Sat, 30 Jun 2018 19:07:01 GMT): sine99 (Sat, 30 Jun 2018 19:07:19 GMT): sine99 (Sat, 30 Jun 2018 19:08:33 GMT): JeronSanders1 (Sat, 30 Jun 2018 23:10:29 GMT): JeronSanders1 (Sat, 30 Jun 2018 23:23:01 GMT): JeronSanders1 (Sat, 30 Jun 2018 23:23:01 GMT): prtk418 (Sun, 01 Jul 2018 04:52:40 GMT): SwapneshNaik (Sun, 01 Jul 2018 05:56:08 GMT): SwapneshNaik (Sun, 01 Jul 2018 05:56:22 GMT): manojsinghmanoj (Sun, 01 Jul 2018 10:53:48 GMT): manojsinghmanoj (Sun, 01 Jul 2018 10:56:18 GMT): manojsinghmanoj (Sun, 01 Jul 2018 10:56:21 GMT): BrettR (Sun, 01 Jul 2018 11:30:12 GMT): prtk418 (Sun, 01 Jul 2018 15:32:08 GMT): AnithaReddy (Sun, 01 Jul 2018 18:51:36 GMT): AnithaReddy (Sun, 01 Jul 2018 18:52:53 GMT): AnithaReddy (Sun, 01 Jul 2018 18:53:16 GMT): AnithaReddy (Sun, 01 Jul 2018 18:53:30 GMT): AnithaReddy (Sun, 01 Jul 2018 19:55:27 GMT): AnithaReddy (Sun, 01 Jul 2018 19:55:37 GMT): sean (Sun, 01 Jul 2018 20:50:43 GMT): sean (Sun, 01 Jul 2018 20:58:42 GMT): sean (Sun, 01 Jul 2018 20:59:09 GMT): sean (Sun, 01 Jul 2018 21:00:19 GMT): apaparazzi0329 (Sun, 01 Jul 2018 22:53:15 GMT): apaparazzi0329 (Sun, 01 Jul 2018 23:00:10 GMT): robvic (Sun, 01 Jul 2018 23:54:37 GMT): MariaMoreno98 (Mon, 02 Jul 2018 03:13:15 GMT): davidhu (Mon, 02 Jul 2018 03:57:35 GMT): Farhan1122 (Mon, 02 Jul 2018 05:37:32 GMT): davidhu (Mon, 02 Jul 2018 05:47:12 GMT): Farhan1122 (Mon, 02 Jul 2018 05:47:23 GMT): prtk418 (Mon, 02 Jul 2018 05:51:17 GMT): davidkel (Mon, 02 Jul 2018 06:58:26 GMT): davidkel (Mon, 02 Jul 2018 06:58:26 GMT): Ukrainsky (Mon, 02 Jul 2018 07:41:38 GMT): arunwij (Mon, 02 Jul 2018 07:45:06 GMT): arunwij (Mon, 02 Jul 2018 07:45:48 GMT): Ukrainsky (Mon, 02 Jul 2018 07:46:42 GMT): Ukrainsky (Mon, 02 Jul 2018 07:46:42 GMT): Ukrainsky (Mon, 02 Jul 2018 07:49:30 GMT): Juanan_Tejero (Mon, 02 Jul 2018 07:49:47 GMT): davidkel (Mon, 02 Jul 2018 08:15:23 GMT): davidkel (Mon, 02 Jul 2018 08:15:23 GMT): davidkel (Mon, 02 Jul 2018 08:15:23 GMT): arunwij (Mon, 02 Jul 2018 08:47:56 GMT): Holtwerth (Mon, 02 Jul 2018 09:05:05 GMT): Holtwerth (Mon, 02 Jul 2018 09:11:00 GMT): Holtwerth (Mon, 02 Jul 2018 09:11:00 GMT): Poneey (Mon, 02 Jul 2018 09:11:48 GMT): wangdong (Mon, 02 Jul 2018 09:12:23 GMT): harsha0826 (Mon, 02 Jul 2018 09:17:10 GMT): harsha0826 (Mon, 02 Jul 2018 09:17:34 GMT): mahoney1 (Mon, 02 Jul 2018 09:20:17 GMT): mahoney1 (Mon, 02 Jul 2018 09:21:17 GMT): mahoney1 (Mon, 02 Jul 2018 09:22:05 GMT): Holtwerth (Mon, 02 Jul 2018 09:24:19 GMT): mahoney1 (Mon, 02 Jul 2018 09:26:04 GMT): mahoney1 (Mon, 02 Jul 2018 09:27:26 GMT): DenisDoronin (Mon, 02 Jul 2018 09:28:15 GMT): AnithaReddy (Mon, 02 Jul 2018 09:34:02 GMT): davidhu (Mon, 02 Jul 2018 09:39:12 GMT): davidkel (Mon, 02 Jul 2018 09:45:11 GMT): DenisDoronin (Mon, 02 Jul 2018 09:45:42 GMT): Nestoteles (Mon, 02 Jul 2018 10:24:24 GMT): VictorReolid (Mon, 02 Jul 2018 10:45:23 GMT): VictorReolid (Mon, 02 Jul 2018 10:45:31 GMT): VictorReolid (Mon, 02 Jul 2018 10:46:44 GMT): VictorReolid (Mon, 02 Jul 2018 10:47:00 GMT): VictorReolid (Mon, 02 Jul 2018 10:48:09 GMT): VictorReolid (Mon, 02 Jul 2018 10:48:12 GMT): Poneey (Mon, 02 Jul 2018 10:49:04 GMT): emiliastk (Mon, 02 Jul 2018 10:50:54 GMT): MariaMoreno98 (Mon, 02 Jul 2018 11:06:02 GMT): prtk418 (Mon, 02 Jul 2018 11:21:48 GMT): prtk418 (Mon, 02 Jul 2018 11:22:58 GMT): mahoney1 (Mon, 02 Jul 2018 11:39:08 GMT): mahoney1 (Mon, 02 Jul 2018 11:39:08 GMT): mahoney1 (Mon, 02 Jul 2018 12:00:47 GMT): mahoney1 (Mon, 02 Jul 2018 12:01:27 GMT): prtk418 (Mon, 02 Jul 2018 12:02:10 GMT): mahoney1 (Mon, 02 Jul 2018 12:03:11 GMT): prtk418 (Mon, 02 Jul 2018 12:04:00 GMT): mahoney1 (Mon, 02 Jul 2018 12:06:29 GMT): mahoney1 (Mon, 02 Jul 2018 12:06:29 GMT): VictorReolid (Mon, 02 Jul 2018 12:07:16 GMT): Poneey (Mon, 02 Jul 2018 12:09:26 GMT): mahoney1 (Mon, 02 Jul 2018 12:12:00 GMT): VictorReolid (Mon, 02 Jul 2018 12:12:18 GMT): VictorReolid (Mon, 02 Jul 2018 12:12:40 GMT): VictorReolid (Mon, 02 Jul 2018 12:13:00 GMT): VictorReolid (Mon, 02 Jul 2018 12:13:45 GMT): Poneey (Mon, 02 Jul 2018 12:21:23 GMT): kdnmih (Mon, 02 Jul 2018 12:43:46 GMT): kdnmih (Mon, 02 Jul 2018 12:46:16 GMT): mahoney1 (Mon, 02 Jul 2018 12:58:47 GMT): VictorReolid (Mon, 02 Jul 2018 12:59:04 GMT): VictorReolid (Mon, 02 Jul 2018 12:59:09 GMT): VictorReolid (Mon, 02 Jul 2018 12:59:13 GMT): mahoney1 (Mon, 02 Jul 2018 12:59:25 GMT): fedez (Mon, 02 Jul 2018 12:59:36 GMT): Poneey (Mon, 02 Jul 2018 13:01:12 GMT): mahoney1 (Mon, 02 Jul 2018 13:10:09 GMT): kdnmih (Mon, 02 Jul 2018 13:11:45 GMT): kdnmih (Mon, 02 Jul 2018 13:11:45 GMT): Poneey (Mon, 02 Jul 2018 13:28:25 GMT): mahoney1 (Mon, 02 Jul 2018 13:28:57 GMT): sagi (Mon, 02 Jul 2018 13:29:01 GMT): mahoney1 (Mon, 02 Jul 2018 13:29:43 GMT): Poneey (Mon, 02 Jul 2018 13:30:39 GMT): wangdong (Mon, 02 Jul 2018 13:37:12 GMT): mahoney1 (Mon, 02 Jul 2018 13:48:30 GMT): wangdong (Mon, 02 Jul 2018 13:50:29 GMT): Johnnyhoboy (Mon, 02 Jul 2018 14:14:02 GMT): mahoney1 (Mon, 02 Jul 2018 14:47:33 GMT): wangdong (Mon, 02 Jul 2018 14:48:41 GMT): wangdong (Mon, 02 Jul 2018 14:48:45 GMT): wangdong (Mon, 02 Jul 2018 14:49:01 GMT): wangdong (Mon, 02 Jul 2018 14:49:14 GMT): wangdong (Mon, 02 Jul 2018 14:49:40 GMT): mahoney1 (Mon, 02 Jul 2018 14:56:10 GMT): mahoney1 (Mon, 02 Jul 2018 14:56:10 GMT): wangdong (Mon, 02 Jul 2018 14:58:08 GMT): fedez (Mon, 02 Jul 2018 15:27:08 GMT): fedez (Mon, 02 Jul 2018 15:27:23 GMT): mahoney1 (Mon, 02 Jul 2018 16:33:21 GMT): fedez (Mon, 02 Jul 2018 17:31:22 GMT): dwong (Mon, 02 Jul 2018 18:04:59 GMT): danny_lee (Mon, 02 Jul 2018 23:07:46 GMT): huxiangdong (Tue, 03 Jul 2018 00:27:00 GMT): DinghaoLI 1 (Tue, 03 Jul 2018 03:02:48 GMT): VictorReolid (Tue, 03 Jul 2018 07:08:43 GMT): VictorReolid (Tue, 03 Jul 2018 07:08:56 GMT): VictorReolid (Tue, 03 Jul 2018 07:10:13 GMT): VictorReolid (Tue, 03 Jul 2018 07:10:22 GMT): mayurgujrathi (Tue, 03 Jul 2018 07:23:56 GMT): mayurgujrathi (Tue, 03 Jul 2018 07:24:55 GMT): mayurgujrathi (Tue, 03 Jul 2018 07:25:56 GMT): mayurgujrathi (Tue, 03 Jul 2018 07:26:18 GMT): AnithaReddy (Tue, 03 Jul 2018 07:54:24 GMT): yunukim (Tue, 03 Jul 2018 08:01:37 GMT): mbwhite (Tue, 03 Jul 2018 08:09:01 GMT): yunukim (Tue, 03 Jul 2018 08:16:31 GMT): mayurgujrathi (Tue, 03 Jul 2018 08:23:30 GMT): mayurgujrathi (Tue, 03 Jul 2018 08:23:32 GMT): VictorReolid (Tue, 03 Jul 2018 08:27:55 GMT): VictorReolid (Tue, 03 Jul 2018 08:28:03 GMT): davidkel (Tue, 03 Jul 2018 09:02:10 GMT): davidkel (Tue, 03 Jul 2018 09:04:35 GMT): davidkel (Tue, 03 Jul 2018 09:06:24 GMT): VictorReolid (Tue, 03 Jul 2018 09:06:48 GMT): VictorReolid (Tue, 03 Jul 2018 09:06:55 GMT): VictorReolid (Tue, 03 Jul 2018 09:07:02 GMT): VictorReolid (Tue, 03 Jul 2018 09:07:06 GMT): yunukim (Tue, 03 Jul 2018 09:10:10 GMT): davidkel (Tue, 03 Jul 2018 09:10:56 GMT): VictorReolid (Tue, 03 Jul 2018 09:11:02 GMT): VictorReolid (Tue, 03 Jul 2018 09:11:15 GMT): VictorReolid (Tue, 03 Jul 2018 09:11:28 GMT): VictorReolid (Tue, 03 Jul 2018 09:11:52 GMT): VictorReolid (Tue, 03 Jul 2018 09:11:58 GMT): yunukim (Tue, 03 Jul 2018 09:12:37 GMT): AnithaReddy (Tue, 03 Jul 2018 09:21:30 GMT): VictorReolid (Tue, 03 Jul 2018 09:34:11 GMT): VictorReolid (Tue, 03 Jul 2018 09:34:24 GMT): davidkel (Tue, 03 Jul 2018 09:36:10 GMT): VictorReolid (Tue, 03 Jul 2018 09:36:39 GMT): VictorReolid (Tue, 03 Jul 2018 09:36:44 GMT): VictorReolid (Tue, 03 Jul 2018 09:37:43 GMT): davidhu (Tue, 03 Jul 2018 09:57:21 GMT): davidkel (Tue, 03 Jul 2018 10:05:47 GMT): VictorReolid (Tue, 03 Jul 2018 10:06:14 GMT): VictorReolid (Tue, 03 Jul 2018 10:09:21 GMT): davidkel (Tue, 03 Jul 2018 10:13:25 GMT): davidkel (Tue, 03 Jul 2018 10:14:35 GMT): davidkel (Tue, 03 Jul 2018 10:14:35 GMT): VictorReolid (Tue, 03 Jul 2018 10:22:54 GMT): VictorReolid (Tue, 03 Jul 2018 10:23:01 GMT): VictorReolid (Tue, 03 Jul 2018 10:23:08 GMT): saeedi (Tue, 03 Jul 2018 10:47:18 GMT): sadasiba (Tue, 03 Jul 2018 10:56:46 GMT): sadasiba (Tue, 03 Jul 2018 10:58:07 GMT): aycey (Tue, 03 Jul 2018 10:59:44 GMT): aycey (Tue, 03 Jul 2018 11:10:14 GMT): FiratSertgoz (Tue, 03 Jul 2018 11:13:36 GMT): mayurgujrathi (Tue, 03 Jul 2018 11:24:00 GMT): mayurgujrathi (Tue, 03 Jul 2018 11:24:06 GMT): mayurgujrathi (Tue, 03 Jul 2018 11:24:56 GMT): AMIL_SAJEEV (Tue, 03 Jul 2018 11:27:34 GMT): AMIL_SAJEEV (Tue, 03 Jul 2018 11:27:34 GMT): AMIL_SAJEEV (Tue, 03 Jul 2018 11:27:34 GMT): AMIL_SAJEEV (Tue, 03 Jul 2018 11:27:34 GMT): Shubham-koli (Tue, 03 Jul 2018 11:32:54 GMT): davidkel (Tue, 03 Jul 2018 11:33:50 GMT): davidkel (Tue, 03 Jul 2018 11:33:50 GMT): chainFlux (Tue, 03 Jul 2018 11:35:46 GMT): davidkel (Tue, 03 Jul 2018 11:38:14 GMT): davidkel (Tue, 03 Jul 2018 11:39:55 GMT): davidkel (Tue, 03 Jul 2018 11:43:32 GMT): davidkel (Tue, 03 Jul 2018 11:44:55 GMT): VictorReolid (Tue, 03 Jul 2018 11:45:34 GMT): davidkel (Tue, 03 Jul 2018 11:47:24 GMT): davidkel (Tue, 03 Jul 2018 11:49:31 GMT): VictorReolid (Tue, 03 Jul 2018 11:50:03 GMT): Nestoteles (Tue, 03 Jul 2018 12:25:27 GMT): wangrangli (Tue, 03 Jul 2018 12:41:53 GMT): Nestoteles (Tue, 03 Jul 2018 12:56:06 GMT): Poneey (Tue, 03 Jul 2018 13:14:33 GMT): wangrangli (Tue, 03 Jul 2018 13:24:42 GMT): csengor (Tue, 03 Jul 2018 13:25:38 GMT): wangrangli (Tue, 03 Jul 2018 13:26:30 GMT): csengor (Tue, 03 Jul 2018 13:29:11 GMT): wangrangli (Tue, 03 Jul 2018 13:31:07 GMT): wangrangli (Tue, 03 Jul 2018 13:31:50 GMT): csengor (Tue, 03 Jul 2018 13:33:40 GMT): wangrangli (Tue, 03 Jul 2018 13:35:27 GMT): csengor (Tue, 03 Jul 2018 13:39:28 GMT): csengor (Tue, 03 Jul 2018 13:40:48 GMT): jae.kim (Tue, 03 Jul 2018 13:55:07 GMT): jae.kim (Tue, 03 Jul 2018 13:55:30 GMT): Jyotirmoy (Tue, 03 Jul 2018 14:08:40 GMT): prtk418 (Tue, 03 Jul 2018 15:09:59 GMT): DannyFu (Tue, 03 Jul 2018 16:16:23 GMT): saeedi (Tue, 03 Jul 2018 17:09:13 GMT): apaparazzi0329 (Tue, 03 Jul 2018 17:12:10 GMT): apaparazzi0329 (Tue, 03 Jul 2018 17:12:14 GMT): apaparazzi0329 (Tue, 03 Jul 2018 17:13:30 GMT): apaparazzi0329 (Tue, 03 Jul 2018 17:13:58 GMT): apaparazzi0329 (Tue, 03 Jul 2018 17:15:06 GMT): apaparazzi0329 (Tue, 03 Jul 2018 17:16:31 GMT): apaparazzi0329 (Tue, 03 Jul 2018 17:24:50 GMT): apaparazzi0329 (Tue, 03 Jul 2018 17:24:58 GMT): saeedi (Tue, 03 Jul 2018 17:27:04 GMT): saeedi (Tue, 03 Jul 2018 17:27:04 GMT): saeedi (Tue, 03 Jul 2018 17:27:04 GMT): saeedi (Tue, 03 Jul 2018 17:27:04 GMT): saeedi (Tue, 03 Jul 2018 17:27:04 GMT): apaparazzi0329 (Tue, 03 Jul 2018 17:29:19 GMT): saeedi (Tue, 03 Jul 2018 17:31:50 GMT): saeedi (Tue, 03 Jul 2018 17:32:20 GMT): apaparazzi0329 (Tue, 03 Jul 2018 17:59:59 GMT): apaparazzi0329 (Tue, 03 Jul 2018 18:00:49 GMT): apaparazzi0329 (Tue, 03 Jul 2018 18:01:37 GMT): apaparazzi0329 (Tue, 03 Jul 2018 18:02:22 GMT): apaparazzi0329 (Tue, 03 Jul 2018 18:02:59 GMT): apaparazzi0329 (Tue, 03 Jul 2018 18:04:16 GMT): apaparazzi0329 (Tue, 03 Jul 2018 18:07:25 GMT): davidkel (Tue, 03 Jul 2018 18:12:36 GMT): apaparazzi0329 (Tue, 03 Jul 2018 18:14:56 GMT): sadasiba (Tue, 03 Jul 2018 21:57:49 GMT): sadasiba (Tue, 03 Jul 2018 21:57:49 GMT): christian3042 (Tue, 03 Jul 2018 23:10:05 GMT): wangrangli (Wed, 04 Jul 2018 04:08:59 GMT): prtk418 (Wed, 04 Jul 2018 05:48:20 GMT): HoneyShah (Wed, 04 Jul 2018 06:02:54 GMT): HoneyShah (Wed, 04 Jul 2018 06:02:54 GMT): chandan2409 (Wed, 04 Jul 2018 06:12:43 GMT): chandan2409 (Wed, 04 Jul 2018 06:16:37 GMT): chandan2409 (Wed, 04 Jul 2018 06:16:37 GMT): ajmeraharsh (Wed, 04 Jul 2018 06:22:13 GMT): ronaldlong46 (Wed, 04 Jul 2018 06:42:34 GMT): chandan2409 (Wed, 04 Jul 2018 06:47:13 GMT): ronaldlong46 (Wed, 04 Jul 2018 06:48:21 GMT): ronaldlong46 (Wed, 04 Jul 2018 06:48:26 GMT): himanshuchawla009 (Wed, 04 Jul 2018 06:49:22 GMT): himanshuchawla009 (Wed, 04 Jul 2018 06:49:53 GMT): himanshuchawla009 (Wed, 04 Jul 2018 06:50:05 GMT): himanshuchawla009 (Wed, 04 Jul 2018 06:50:20 GMT): himanshuchawla009 (Wed, 04 Jul 2018 06:50:24 GMT): AnithaReddy (Wed, 04 Jul 2018 06:51:01 GMT): AnithaReddy (Wed, 04 Jul 2018 06:51:18 GMT): AnithaReddy (Wed, 04 Jul 2018 06:52:03 GMT): himanshuchawla009 (Wed, 04 Jul 2018 06:56:02 GMT): ronaldlong46 (Wed, 04 Jul 2018 06:58:47 GMT): jramirez (Wed, 04 Jul 2018 07:11:33 GMT): jramirez (Wed, 04 Jul 2018 07:15:16 GMT): mimijerson (Wed, 04 Jul 2018 07:26:57 GMT): hdnha11 (Wed, 04 Jul 2018 07:31:11 GMT): DamienCosset (Wed, 04 Jul 2018 07:37:34 GMT): kodepareek (Wed, 04 Jul 2018 08:21:05 GMT): kodepareek (Wed, 04 Jul 2018 08:23:17 GMT): kodepareek (Wed, 04 Jul 2018 08:23:55 GMT): kodepareek (Wed, 04 Jul 2018 08:24:08 GMT): kodepareek (Wed, 04 Jul 2018 08:24:40 GMT): kodepareek (Wed, 04 Jul 2018 08:25:03 GMT): algojw (Wed, 04 Jul 2018 08:27:50 GMT): algojw (Wed, 04 Jul 2018 08:27:59 GMT): algojw (Wed, 04 Jul 2018 08:27:59 GMT): wangrangli (Wed, 04 Jul 2018 08:44:53 GMT): HoneyShah (Wed, 04 Jul 2018 09:07:57 GMT): mahoney1 (Wed, 04 Jul 2018 09:08:54 GMT): DamienCosset (Wed, 04 Jul 2018 09:11:51 GMT): wangrangli (Wed, 04 Jul 2018 09:20:26 GMT): mahoney1 (Wed, 04 Jul 2018 09:21:07 GMT): mahoney1 (Wed, 04 Jul 2018 09:22:26 GMT): algojw (Wed, 04 Jul 2018 09:39:19 GMT): ndatebayo (Wed, 04 Jul 2018 10:04:46 GMT): ndatebayo (Wed, 04 Jul 2018 10:07:25 GMT): AnithaReddy (Wed, 04 Jul 2018 10:59:20 GMT): AnithaReddy (Wed, 04 Jul 2018 11:33:33 GMT): HoneyShah (Wed, 04 Jul 2018 11:34:29 GMT): DimitarA (Wed, 04 Jul 2018 11:53:22 GMT): mahoney1 (Wed, 04 Jul 2018 11:58:04 GMT): mahoney1 (Wed, 04 Jul 2018 11:58:04 GMT): mahoney1 (Wed, 04 Jul 2018 12:00:37 GMT): DenisDoronin (Wed, 04 Jul 2018 12:14:48 GMT): AnithaReddy (Wed, 04 Jul 2018 12:16:56 GMT): AnithaReddy (Wed, 04 Jul 2018 12:17:11 GMT): AnithaReddy (Wed, 04 Jul 2018 12:19:08 GMT): mahoney1 (Wed, 04 Jul 2018 12:47:29 GMT): DenisDoronin (Wed, 04 Jul 2018 12:48:29 GMT): mahoney1 (Wed, 04 Jul 2018 12:56:02 GMT): AnithaReddy (Wed, 04 Jul 2018 13:09:26 GMT): mahoney1 (Wed, 04 Jul 2018 13:19:19 GMT): mahoney1 (Wed, 04 Jul 2018 13:19:19 GMT): AnithaReddy (Wed, 04 Jul 2018 14:04:46 GMT): AnithaReddy (Wed, 04 Jul 2018 14:05:33 GMT): AnithaReddy (Wed, 04 Jul 2018 14:08:17 GMT): mahoney1 (Wed, 04 Jul 2018 14:29:28 GMT): zainmustafa (Wed, 04 Jul 2018 14:47:08 GMT): RajuP 1 (Wed, 04 Jul 2018 14:51:36 GMT): algojw (Wed, 04 Jul 2018 14:56:14 GMT): TheKolaGroup (Wed, 04 Jul 2018 15:23:18 GMT): davidkel (Wed, 04 Jul 2018 15:50:41 GMT): prtk418 (Wed, 04 Jul 2018 16:49:55 GMT): SwapneshNaik (Wed, 04 Jul 2018 17:18:50 GMT): SwapneshNaik (Wed, 04 Jul 2018 17:19:38 GMT): SwapneshNaik (Wed, 04 Jul 2018 17:19:43 GMT): prtk418 (Wed, 04 Jul 2018 17:48:57 GMT): BabuPallam (Wed, 04 Jul 2018 22:19:20 GMT): Varun2887 (Thu, 05 Jul 2018 03:22:10 GMT): Varun2887 (Thu, 05 Jul 2018 03:22:25 GMT): Varun2887 (Thu, 05 Jul 2018 03:22:38 GMT): chen2018k (Thu, 05 Jul 2018 05:32:35 GMT): goelmayank (Thu, 05 Jul 2018 06:28:44 GMT): SwapneshNaik (Thu, 05 Jul 2018 06:53:42 GMT): OviiyaDominic (Thu, 05 Jul 2018 07:04:03 GMT): OviiyaDominic (Thu, 05 Jul 2018 07:06:02 GMT): raj_shekhar (Thu, 05 Jul 2018 07:08:29 GMT): raj_shekhar (Thu, 05 Jul 2018 07:09:54 GMT): raj_shekhar (Thu, 05 Jul 2018 07:10:26 GMT): raj_shekhar (Thu, 05 Jul 2018 07:10:43 GMT): raj_shekhar (Thu, 05 Jul 2018 07:10:44 GMT): raj_shekhar (Thu, 05 Jul 2018 07:10:46 GMT): OviiyaDominic (Thu, 05 Jul 2018 07:11:05 GMT): raj_shekhar (Thu, 05 Jul 2018 07:15:27 GMT): Varun2887 (Thu, 05 Jul 2018 07:32:44 GMT): Varun2887 (Thu, 05 Jul 2018 07:33:05 GMT): ibmamnt (Thu, 05 Jul 2018 07:35:39 GMT): ibmamnt (Thu, 05 Jul 2018 07:35:39 GMT): OviiyaDominic (Thu, 05 Jul 2018 07:38:24 GMT): Varun2887 (Thu, 05 Jul 2018 07:50:23 GMT): benjamin.verhaegen (Thu, 05 Jul 2018 07:55:28 GMT): benjamin.verhaegen (Thu, 05 Jul 2018 07:55:52 GMT): NguyenKuro (Thu, 05 Jul 2018 07:56:13 GMT): Varun2887 (Thu, 05 Jul 2018 07:57:57 GMT): OviiyaDominic (Thu, 05 Jul 2018 08:00:16 GMT): maestrus (Thu, 05 Jul 2018 08:00:34 GMT): maestrus (Thu, 05 Jul 2018 08:00:34 GMT): ajmeraharsh (Thu, 05 Jul 2018 08:01:52 GMT): benjamin.verhaegen (Thu, 05 Jul 2018 08:01:55 GMT): benjamin.verhaegen (Thu, 05 Jul 2018 08:02:05 GMT): benjamin.verhaegen (Thu, 05 Jul 2018 08:02:26 GMT): JayPandya (Thu, 05 Jul 2018 08:02:26 GMT): maestrus (Thu, 05 Jul 2018 08:02:43 GMT): maestrus (Thu, 05 Jul 2018 08:02:43 GMT): maestrus (Thu, 05 Jul 2018 08:03:05 GMT): Varun2887 (Thu, 05 Jul 2018 08:03:11 GMT): Varun2887 (Thu, 05 Jul 2018 08:03:21 GMT): benjamin.verhaegen (Thu, 05 Jul 2018 08:03:48 GMT): benjamin.verhaegen (Thu, 05 Jul 2018 08:04:04 GMT): maestrus (Thu, 05 Jul 2018 08:04:57 GMT): benjamin.verhaegen (Thu, 05 Jul 2018 08:05:48 GMT): maestrus (Thu, 05 Jul 2018 08:06:01 GMT): maestrus (Thu, 05 Jul 2018 08:06:01 GMT): maestrus (Thu, 05 Jul 2018 08:10:26 GMT): benjamin.verhaegen (Thu, 05 Jul 2018 08:18:41 GMT): mahoney1 (Thu, 05 Jul 2018 08:21:41 GMT): mahoney1 (Thu, 05 Jul 2018 08:22:38 GMT): mahoney1 (Thu, 05 Jul 2018 08:37:48 GMT): DenisDoronin (Thu, 05 Jul 2018 08:50:40 GMT): DenisDoronin (Thu, 05 Jul 2018 08:50:40 GMT): labcoinpoc (Thu, 05 Jul 2018 09:21:02 GMT): mahoney1 (Thu, 05 Jul 2018 09:35:02 GMT): mahoney1 (Thu, 05 Jul 2018 09:41:24 GMT): sstone1 (Thu, 05 Jul 2018 09:46:12 GMT): Varun2887 (Thu, 05 Jul 2018 10:12:13 GMT): mahoney1 (Thu, 05 Jul 2018 10:52:09 GMT): DenisDoronin (Thu, 05 Jul 2018 10:55:40 GMT): prtk418 (Thu, 05 Jul 2018 11:04:11 GMT): prtk418 (Thu, 05 Jul 2018 11:05:16 GMT): prtk418 (Thu, 05 Jul 2018 11:24:30 GMT): davidkel (Thu, 05 Jul 2018 11:26:35 GMT): DenisDoronin (Thu, 05 Jul 2018 11:34:09 GMT): davidkel (Thu, 05 Jul 2018 11:35:00 GMT): yupikaiei (Thu, 05 Jul 2018 11:58:04 GMT): yupikaiei (Thu, 05 Jul 2018 12:01:08 GMT): yupikaiei (Thu, 05 Jul 2018 12:03:33 GMT): yupikaiei (Thu, 05 Jul 2018 12:03:33 GMT): yupikaiei (Thu, 05 Jul 2018 12:03:33 GMT): yupikaiei (Thu, 05 Jul 2018 12:04:58 GMT): yupikaiei (Thu, 05 Jul 2018 12:06:03 GMT): davidkel (Thu, 05 Jul 2018 12:35:12 GMT): davidkel (Thu, 05 Jul 2018 12:35:12 GMT): davidkel (Thu, 05 Jul 2018 12:35:12 GMT): davidkel (Thu, 05 Jul 2018 12:35:12 GMT): yupikaiei (Thu, 05 Jul 2018 13:03:23 GMT): mahoney1 (Thu, 05 Jul 2018 13:10:59 GMT): mahoney1 (Thu, 05 Jul 2018 13:18:44 GMT): ongkhaiwei (Thu, 05 Jul 2018 13:48:51 GMT): prtk418 (Thu, 05 Jul 2018 14:22:13 GMT): Poneey (Thu, 05 Jul 2018 14:25:24 GMT): SteveFournier (Thu, 05 Jul 2018 14:39:29 GMT): SteveFournier (Thu, 05 Jul 2018 14:39:35 GMT): kmohanar1 (Thu, 05 Jul 2018 14:43:51 GMT): mahoney1 (Thu, 05 Jul 2018 14:45:14 GMT): mahoney1 (Thu, 05 Jul 2018 14:51:23 GMT): mahoney1 (Thu, 05 Jul 2018 14:51:53 GMT): Poneey (Thu, 05 Jul 2018 14:58:40 GMT): KushagraTiwary (Thu, 05 Jul 2018 15:09:12 GMT): mahoney1 (Thu, 05 Jul 2018 15:52:39 GMT): hamza-kakar (Thu, 05 Jul 2018 16:07:55 GMT): hamza-kakar (Thu, 05 Jul 2018 16:08:06 GMT): mahoney1 (Thu, 05 Jul 2018 16:50:30 GMT): mahoney1 (Thu, 05 Jul 2018 16:50:30 GMT): VadimInshakov (Thu, 05 Jul 2018 16:58:31 GMT): VadimInshakov (Thu, 05 Jul 2018 16:58:31 GMT): sadasiba (Thu, 05 Jul 2018 17:04:47 GMT): sadasiba (Thu, 05 Jul 2018 17:06:21 GMT): sadasiba (Thu, 05 Jul 2018 17:06:21 GMT): sadasiba (Thu, 05 Jul 2018 17:06:41 GMT): nico.ventrella (Thu, 05 Jul 2018 17:10:22 GMT): nico.ventrella (Thu, 05 Jul 2018 17:10:27 GMT): nico.ventrella (Thu, 05 Jul 2018 17:10:27 GMT): Saurabh1402 (Thu, 05 Jul 2018 17:30:58 GMT): mahoney1 (Thu, 05 Jul 2018 17:32:09 GMT): mahoney1 (Thu, 05 Jul 2018 17:42:30 GMT): mahoney1 (Thu, 05 Jul 2018 17:43:24 GMT): Saurabh1402 (Thu, 05 Jul 2018 17:48:14 GMT): Saurabh1402 (Thu, 05 Jul 2018 17:48:32 GMT): mahoney1 (Thu, 05 Jul 2018 17:52:29 GMT): mahoney1 (Thu, 05 Jul 2018 17:55:23 GMT): sadasiba (Thu, 05 Jul 2018 18:09:42 GMT): sadasiba (Thu, 05 Jul 2018 18:10:01 GMT): AlinTandea (Thu, 05 Jul 2018 18:22:44 GMT): AlinTandea (Thu, 05 Jul 2018 18:32:34 GMT): AlinTandea (Thu, 05 Jul 2018 18:34:25 GMT): AlinTandea (Thu, 05 Jul 2018 18:35:48 GMT): elciusferreira (Thu, 05 Jul 2018 18:59:56 GMT): AlinTandea (Thu, 05 Jul 2018 19:19:22 GMT): labcoinpoc (Fri, 06 Jul 2018 01:05:44 GMT): labcoinpoc (Fri, 06 Jul 2018 01:05:44 GMT): labcoinpoc (Fri, 06 Jul 2018 01:05:44 GMT): labcoinpoc (Fri, 06 Jul 2018 01:05:44 GMT): ra_w (Fri, 06 Jul 2018 05:00:38 GMT): HoneyShah (Fri, 06 Jul 2018 06:14:31 GMT): HoneyShah (Fri, 06 Jul 2018 06:14:31 GMT): mengluo668 (Fri, 06 Jul 2018 06:37:38 GMT): AyushKulshrestha (Fri, 06 Jul 2018 06:45:16 GMT): SunilMaharjan (Fri, 06 Jul 2018 06:57:52 GMT): Poneey (Fri, 06 Jul 2018 07:39:51 GMT): bjrnt (Fri, 06 Jul 2018 08:02:53 GMT): Gerard9494 (Fri, 06 Jul 2018 08:05:13 GMT): richzhao (Fri, 06 Jul 2018 08:20:11 GMT): richzhao (Fri, 06 Jul 2018 08:20:23 GMT): richzhao (Fri, 06 Jul 2018 08:20:42 GMT): IronStrong (Fri, 06 Jul 2018 08:29:23 GMT): Varun2887 (Fri, 06 Jul 2018 08:55:18 GMT): ajmeraharsh (Fri, 06 Jul 2018 09:09:20 GMT): mahoney1 (Fri, 06 Jul 2018 09:14:42 GMT): mahoney1 (Fri, 06 Jul 2018 09:15:25 GMT): Varun2887 (Fri, 06 Jul 2018 09:22:59 GMT): Varun2887 (Fri, 06 Jul 2018 09:23:11 GMT): mahoney1 (Fri, 06 Jul 2018 09:24:54 GMT): Poneey (Fri, 06 Jul 2018 09:27:53 GMT): mahoney1 (Fri, 06 Jul 2018 09:36:53 GMT): richzhao (Fri, 06 Jul 2018 09:42:45 GMT): richzhao (Fri, 06 Jul 2018 09:43:15 GMT): mahoney1 (Fri, 06 Jul 2018 09:58:02 GMT): Varun2887 (Fri, 06 Jul 2018 10:11:34 GMT): Varun2887 (Fri, 06 Jul 2018 11:35:43 GMT): Varun2887 (Fri, 06 Jul 2018 11:35:51 GMT): Varun2887 (Fri, 06 Jul 2018 11:36:12 GMT): Varun2887 (Fri, 06 Jul 2018 11:36:39 GMT): Varun2887 (Fri, 06 Jul 2018 11:36:46 GMT): ndatebayo (Fri, 06 Jul 2018 12:32:59 GMT): Poneey (Fri, 06 Jul 2018 12:38:31 GMT): bestbeforetoday (Fri, 06 Jul 2018 13:13:20 GMT): Naseer03 (Fri, 06 Jul 2018 13:29:25 GMT): mahoney1 (Fri, 06 Jul 2018 13:42:51 GMT): mahoney1 (Fri, 06 Jul 2018 14:03:38 GMT): Johnnyhoboy (Fri, 06 Jul 2018 15:01:06 GMT): bestbeforetoday (Fri, 06 Jul 2018 15:31:48 GMT): KushagraTiwary (Fri, 06 Jul 2018 16:40:33 GMT): KushagraTiwary (Fri, 06 Jul 2018 16:40:56 GMT): KushagraTiwary (Fri, 06 Jul 2018 16:42:29 GMT): julian (Fri, 06 Jul 2018 19:10:35 GMT): julian (Fri, 06 Jul 2018 19:10:35 GMT): KushagraTiwary (Fri, 06 Jul 2018 19:14:43 GMT): julian (Fri, 06 Jul 2018 19:16:36 GMT): julian (Fri, 06 Jul 2018 19:17:19 GMT): KushagraTiwary (Fri, 06 Jul 2018 19:46:44 GMT): karentani (Sat, 07 Jul 2018 03:02:23 GMT): wangrangli (Sat, 07 Jul 2018 06:30:26 GMT): Varun2887 (Sat, 07 Jul 2018 09:05:49 GMT): Varun2887 (Sat, 07 Jul 2018 09:06:28 GMT): Varun2887 (Sat, 07 Jul 2018 09:07:05 GMT): Varun2887 (Sat, 07 Jul 2018 09:08:32 GMT): davidkel (Sat, 07 Jul 2018 09:39:10 GMT): davidkel (Sat, 07 Jul 2018 09:39:10 GMT): ragdeshp (Sat, 07 Jul 2018 17:15:01 GMT): ragdeshp (Sat, 07 Jul 2018 17:15:56 GMT): waleed (Sat, 07 Jul 2018 19:20:48 GMT): donbr (Sat, 07 Jul 2018 20:38:54 GMT): Varun2887 (Sun, 08 Jul 2018 02:27:54 GMT): monolith (Sun, 08 Jul 2018 03:13:07 GMT): monolith (Sun, 08 Jul 2018 03:19:53 GMT): wangrangli (Sun, 08 Jul 2018 05:08:05 GMT): wangrangli (Sun, 08 Jul 2018 05:08:27 GMT): mmomeu (Sun, 08 Jul 2018 05:40:58 GMT): mmomeu (Sun, 08 Jul 2018 05:40:58 GMT): wangrangli (Sun, 08 Jul 2018 05:58:54 GMT): mmomeu (Sun, 08 Jul 2018 07:23:16 GMT): mmomeu (Sun, 08 Jul 2018 07:23:16 GMT): mmomeu (Sun, 08 Jul 2018 07:23:16 GMT): mmomeu (Sun, 08 Jul 2018 07:23:16 GMT): davidkel (Sun, 08 Jul 2018 07:48:43 GMT): VadimInshakov (Sun, 08 Jul 2018 07:48:54 GMT): mmomeu (Sun, 08 Jul 2018 07:53:51 GMT): davidkel (Sun, 08 Jul 2018 08:24:45 GMT): nntoan (Sun, 08 Jul 2018 08:26:18 GMT): mmomeu (Sun, 08 Jul 2018 08:43:53 GMT): mmomeu (Sun, 08 Jul 2018 08:43:53 GMT): davidkel (Sun, 08 Jul 2018 08:58:59 GMT): mmomeu (Sun, 08 Jul 2018 09:05:50 GMT): davidkel (Sun, 08 Jul 2018 09:10:25 GMT): wangrangli (Sun, 08 Jul 2018 09:12:40 GMT): mmomeu (Sun, 08 Jul 2018 09:48:11 GMT): mmomeu (Sun, 08 Jul 2018 09:48:11 GMT): raymondfx (Sun, 08 Jul 2018 11:29:47 GMT): mmomeu (Sun, 08 Jul 2018 16:13:57 GMT): vmag (Sun, 08 Jul 2018 17:11:32 GMT): davidkel (Sun, 08 Jul 2018 19:11:18 GMT): wangrangli (Mon, 09 Jul 2018 01:51:34 GMT): Varun2887 (Mon, 09 Jul 2018 03:52:15 GMT): howdyeyey (Mon, 09 Jul 2018 05:22:40 GMT): howdyeyey (Mon, 09 Jul 2018 05:22:50 GMT): howdyeyey (Mon, 09 Jul 2018 05:22:50 GMT): davidkel (Mon, 09 Jul 2018 07:00:44 GMT): varunagarwal (Mon, 09 Jul 2018 07:05:47 GMT): umamaheswarv (Mon, 09 Jul 2018 07:19:22 GMT): RickyQin (Mon, 09 Jul 2018 07:26:03 GMT): ChunTung (Mon, 09 Jul 2018 08:02:57 GMT): umamaheswarv (Mon, 09 Jul 2018 08:39:31 GMT): ndatebayo (Mon, 09 Jul 2018 08:45:17 GMT): waleed (Mon, 09 Jul 2018 08:50:33 GMT): varunagarwal (Mon, 09 Jul 2018 08:51:00 GMT): waleed (Mon, 09 Jul 2018 08:51:57 GMT): ndatebayo (Mon, 09 Jul 2018 08:53:58 GMT): umamaheswarv (Mon, 09 Jul 2018 08:55:18 GMT): umamaheswarv (Mon, 09 Jul 2018 09:00:34 GMT): umamaheswarv (Mon, 09 Jul 2018 09:00:34 GMT): waleed (Mon, 09 Jul 2018 09:01:33 GMT): HoneyShah (Mon, 09 Jul 2018 09:07:53 GMT): ndatebayo (Mon, 09 Jul 2018 09:08:48 GMT): waleed (Mon, 09 Jul 2018 09:09:19 GMT): waleed (Mon, 09 Jul 2018 09:10:17 GMT): ndatebayo (Mon, 09 Jul 2018 09:12:23 GMT): mahoney1 (Mon, 09 Jul 2018 09:12:24 GMT): mahoney1 (Mon, 09 Jul 2018 09:16:42 GMT): mahoney1 (Mon, 09 Jul 2018 09:16:42 GMT): umamaheswarv (Mon, 09 Jul 2018 09:19:32 GMT): waleed (Mon, 09 Jul 2018 09:21:30 GMT): ndatebayo (Mon, 09 Jul 2018 09:24:00 GMT): umamaheswarv (Mon, 09 Jul 2018 09:26:34 GMT): waleed (Mon, 09 Jul 2018 09:27:57 GMT): mahoney1 (Mon, 09 Jul 2018 09:28:07 GMT): mahoney1 (Mon, 09 Jul 2018 09:28:07 GMT): Poneey (Mon, 09 Jul 2018 09:29:23 GMT): mahoney1 (Mon, 09 Jul 2018 10:02:42 GMT): mahoney1 (Mon, 09 Jul 2018 10:02:42 GMT): mahoney1 (Mon, 09 Jul 2018 10:02:42 GMT): rajanashutosh (Mon, 09 Jul 2018 10:04:52 GMT): rajanashutosh (Mon, 09 Jul 2018 10:05:18 GMT): rajanashutosh (Mon, 09 Jul 2018 10:07:29 GMT): prtk418 (Mon, 09 Jul 2018 10:08:07 GMT): varunagarwal (Mon, 09 Jul 2018 10:16:52 GMT): mahoney1 (Mon, 09 Jul 2018 10:17:36 GMT): mahoney1 (Mon, 09 Jul 2018 10:20:05 GMT): mahoney1 (Mon, 09 Jul 2018 10:20:05 GMT): mahoney1 (Mon, 09 Jul 2018 10:20:05 GMT): prtk418 (Mon, 09 Jul 2018 10:23:36 GMT): adarshsunil (Mon, 09 Jul 2018 10:38:45 GMT): wangrangli (Mon, 09 Jul 2018 12:05:47 GMT): rajanashutosh (Mon, 09 Jul 2018 12:08:10 GMT): koineramitranjan (Mon, 09 Jul 2018 12:38:08 GMT): josiebhai (Mon, 09 Jul 2018 13:03:33 GMT): VadimInshakov (Mon, 09 Jul 2018 13:06:21 GMT): ndatebayo (Mon, 09 Jul 2018 13:07:51 GMT): josiebhai (Mon, 09 Jul 2018 13:10:44 GMT): VadimInshakov (Mon, 09 Jul 2018 13:11:06 GMT): mahoney1 (Mon, 09 Jul 2018 13:22:49 GMT): mahoney1 (Mon, 09 Jul 2018 13:24:11 GMT): mahoney1 (Mon, 09 Jul 2018 13:28:30 GMT): mahoney1 (Mon, 09 Jul 2018 13:31:48 GMT): mahoney1 (Mon, 09 Jul 2018 13:33:33 GMT): mahoney1 (Mon, 09 Jul 2018 13:36:28 GMT): ndatebayo (Mon, 09 Jul 2018 13:44:43 GMT): prtk418 (Mon, 09 Jul 2018 14:25:06 GMT): VadimInshakov (Mon, 09 Jul 2018 14:31:10 GMT): MasthanbeeShaik (Mon, 09 Jul 2018 14:33:56 GMT): mahoney1 (Mon, 09 Jul 2018 14:52:43 GMT): mahoney1 (Mon, 09 Jul 2018 14:54:06 GMT): mahoney1 (Mon, 09 Jul 2018 14:56:10 GMT): mahoney1 (Mon, 09 Jul 2018 14:56:10 GMT): Pranoti (Mon, 09 Jul 2018 14:56:23 GMT): mahoney1 (Mon, 09 Jul 2018 14:58:04 GMT): mahoney1 (Mon, 09 Jul 2018 14:58:04 GMT): VadimInshakov (Mon, 09 Jul 2018 14:58:20 GMT): Pranoti (Mon, 09 Jul 2018 15:03:57 GMT): MasthanbeeShaik (Mon, 09 Jul 2018 15:09:29 GMT): himanshuchawla009 (Mon, 09 Jul 2018 15:19:46 GMT): mahoney1 (Mon, 09 Jul 2018 15:28:23 GMT): mahoney1 (Mon, 09 Jul 2018 15:29:20 GMT): mahoney1 (Mon, 09 Jul 2018 15:37:45 GMT): mahoney1 (Mon, 09 Jul 2018 15:37:45 GMT): himanshuchawla009 (Mon, 09 Jul 2018 15:41:53 GMT): MasthanbeeShaik (Mon, 09 Jul 2018 15:43:06 GMT): MasthanbeeShaik (Mon, 09 Jul 2018 15:43:06 GMT): prtk418 (Mon, 09 Jul 2018 16:00:06 GMT): mahoney1 (Mon, 09 Jul 2018 16:01:41 GMT): mahoney1 (Mon, 09 Jul 2018 16:02:23 GMT): prtk418 (Mon, 09 Jul 2018 16:06:38 GMT): mgcox (Mon, 09 Jul 2018 16:59:55 GMT): mgcox (Mon, 09 Jul 2018 17:00:40 GMT): davidkel (Mon, 09 Jul 2018 17:10:38 GMT): mgcox (Mon, 09 Jul 2018 17:18:43 GMT): monarch 1 (Mon, 09 Jul 2018 20:04:35 GMT): formlesscloud (Mon, 09 Jul 2018 22:12:59 GMT): formlesscloud (Mon, 09 Jul 2018 22:13:17 GMT): formlesscloud (Mon, 09 Jul 2018 22:14:32 GMT): formlesscloud (Mon, 09 Jul 2018 22:15:17 GMT): formlesscloud (Mon, 09 Jul 2018 22:15:46 GMT): formlesscloud (Mon, 09 Jul 2018 22:16:22 GMT): formlesscloud (Mon, 09 Jul 2018 22:17:18 GMT): formlesscloud (Mon, 09 Jul 2018 22:18:34 GMT): davidhu (Tue, 10 Jul 2018 00:46:45 GMT): umamaheswarv (Tue, 10 Jul 2018 04:01:33 GMT): Varun2887 (Tue, 10 Jul 2018 04:10:23 GMT): Varun2887 (Tue, 10 Jul 2018 04:10:38 GMT): rajanashutosh (Tue, 10 Jul 2018 04:27:57 GMT): rajanashutosh (Tue, 10 Jul 2018 04:27:58 GMT): rajanashutosh (Tue, 10 Jul 2018 04:29:22 GMT): Varun2887 (Tue, 10 Jul 2018 05:12:57 GMT): bsriram (Tue, 10 Jul 2018 05:53:29 GMT): rajanashutosh (Tue, 10 Jul 2018 05:57:45 GMT): rajanashutosh (Tue, 10 Jul 2018 05:58:11 GMT): rajanashutosh (Tue, 10 Jul 2018 05:59:15 GMT): richzhao (Tue, 10 Jul 2018 07:18:56 GMT): richzhao (Tue, 10 Jul 2018 07:19:02 GMT): richzhao (Tue, 10 Jul 2018 07:20:38 GMT): richzhao (Tue, 10 Jul 2018 07:21:04 GMT): chen2018k (Tue, 10 Jul 2018 07:21:51 GMT): ppcm (Tue, 10 Jul 2018 07:36:56 GMT): himanshuchawla009 (Tue, 10 Jul 2018 07:57:03 GMT): AnithaReddy (Tue, 10 Jul 2018 08:21:48 GMT): mahoney1 (Tue, 10 Jul 2018 09:03:59 GMT): mahoney1 (Tue, 10 Jul 2018 09:11:10 GMT): rajanashutosh (Tue, 10 Jul 2018 09:15:40 GMT): rajanashutosh (Tue, 10 Jul 2018 09:16:05 GMT): rajanashutosh (Tue, 10 Jul 2018 09:17:28 GMT): mahoney1 (Tue, 10 Jul 2018 09:18:39 GMT): mahoney1 (Tue, 10 Jul 2018 09:26:22 GMT): mahoney1 (Tue, 10 Jul 2018 09:26:22 GMT): rickyansari (Tue, 10 Jul 2018 09:27:44 GMT): AnithaReddy (Tue, 10 Jul 2018 09:29:55 GMT): AnithaReddy (Tue, 10 Jul 2018 09:34:16 GMT): umamaheswarv (Tue, 10 Jul 2018 09:40:25 GMT): umamaheswarv (Tue, 10 Jul 2018 09:40:25 GMT): richzhao (Tue, 10 Jul 2018 10:11:12 GMT): GhazanfarAli (Tue, 10 Jul 2018 10:36:02 GMT): GhazanfarAli (Tue, 10 Jul 2018 10:36:38 GMT): blob (Tue, 10 Jul 2018 10:56:26 GMT): blob (Tue, 10 Jul 2018 10:58:42 GMT): blob (Tue, 10 Jul 2018 11:14:26 GMT): Krait82 (Tue, 10 Jul 2018 11:17:49 GMT): blob (Tue, 10 Jul 2018 11:18:30 GMT): Krait82 (Tue, 10 Jul 2018 11:19:36 GMT): rajanashutosh (Tue, 10 Jul 2018 11:20:54 GMT): blob (Tue, 10 Jul 2018 11:20:54 GMT): AnithaReddy (Tue, 10 Jul 2018 11:21:25 GMT): Krait82 (Tue, 10 Jul 2018 11:21:26 GMT): rajanashutosh (Tue, 10 Jul 2018 11:21:39 GMT): blob (Tue, 10 Jul 2018 11:22:09 GMT): richzhao (Tue, 10 Jul 2018 11:22:49 GMT): AnithaReddy (Tue, 10 Jul 2018 11:23:01 GMT): rajanashutosh (Tue, 10 Jul 2018 11:24:33 GMT): AnithaReddy (Tue, 10 Jul 2018 11:25:26 GMT): rajanashutosh (Tue, 10 Jul 2018 11:27:26 GMT): blob (Tue, 10 Jul 2018 11:29:29 GMT): mahoney1 (Tue, 10 Jul 2018 11:34:16 GMT): richzhao (Tue, 10 Jul 2018 11:40:49 GMT): richzhao (Tue, 10 Jul 2018 11:40:57 GMT): SahilMalik (Tue, 10 Jul 2018 11:44:13 GMT): richzhao (Tue, 10 Jul 2018 11:46:17 GMT): mahoney1 (Tue, 10 Jul 2018 11:48:05 GMT): richzhao (Tue, 10 Jul 2018 11:49:54 GMT): richzhao (Tue, 10 Jul 2018 11:50:48 GMT): rajanashutosh (Tue, 10 Jul 2018 11:51:26 GMT): rajanashutosh (Tue, 10 Jul 2018 11:51:33 GMT): blob (Tue, 10 Jul 2018 11:56:11 GMT): richzhao (Tue, 10 Jul 2018 12:03:48 GMT): richzhao (Tue, 10 Jul 2018 12:03:53 GMT): davidkel (Tue, 10 Jul 2018 12:07:05 GMT): davidkel (Tue, 10 Jul 2018 12:07:05 GMT): blob (Tue, 10 Jul 2018 12:08:02 GMT): davidkel (Tue, 10 Jul 2018 12:08:51 GMT): Tetiana (Tue, 10 Jul 2018 12:09:56 GMT): davidkel (Tue, 10 Jul 2018 12:12:15 GMT): Tetiana (Tue, 10 Jul 2018 12:17:06 GMT): mahoney1 (Tue, 10 Jul 2018 12:17:57 GMT): mahoney1 (Tue, 10 Jul 2018 12:17:57 GMT): richzhao (Tue, 10 Jul 2018 12:21:49 GMT): blob (Tue, 10 Jul 2018 12:25:19 GMT): richzhao (Tue, 10 Jul 2018 12:47:45 GMT): richzhao (Tue, 10 Jul 2018 12:47:59 GMT): richzhao (Tue, 10 Jul 2018 12:48:03 GMT): prtk418 (Tue, 10 Jul 2018 12:59:14 GMT): AnithaReddy (Tue, 10 Jul 2018 13:10:53 GMT): mahoney1 (Tue, 10 Jul 2018 13:36:05 GMT): mahoney1 (Tue, 10 Jul 2018 13:36:31 GMT): mahoney1 (Tue, 10 Jul 2018 13:39:09 GMT): SriSris (Tue, 10 Jul 2018 13:45:51 GMT): SriSris (Tue, 10 Jul 2018 13:46:40 GMT): SriSris (Tue, 10 Jul 2018 13:46:48 GMT): AnithaReddy (Tue, 10 Jul 2018 14:04:45 GMT): Poneey (Tue, 10 Jul 2018 14:11:49 GMT): KushagraTiwary (Tue, 10 Jul 2018 14:22:39 GMT): Aentels (Tue, 10 Jul 2018 14:40:13 GMT): waleed (Tue, 10 Jul 2018 14:46:00 GMT): waleed (Tue, 10 Jul 2018 14:47:18 GMT): waleed (Tue, 10 Jul 2018 14:53:15 GMT): SriSris (Tue, 10 Jul 2018 14:54:16 GMT): SriSris (Tue, 10 Jul 2018 14:54:36 GMT): waleed (Tue, 10 Jul 2018 14:58:04 GMT): SriSris (Tue, 10 Jul 2018 15:01:36 GMT): SriSris (Tue, 10 Jul 2018 15:02:17 GMT): SriSris (Tue, 10 Jul 2018 15:02:37 GMT): waleed (Tue, 10 Jul 2018 15:12:52 GMT): waleed (Tue, 10 Jul 2018 15:12:52 GMT): waleed (Tue, 10 Jul 2018 15:15:09 GMT): ragdeshp (Tue, 10 Jul 2018 16:20:06 GMT): mahoney1 (Tue, 10 Jul 2018 16:37:45 GMT): ricardoruano (Tue, 10 Jul 2018 16:39:31 GMT): shinabh (Tue, 10 Jul 2018 20:18:08 GMT): shinabh (Tue, 10 Jul 2018 20:18:32 GMT): richzhao (Tue, 10 Jul 2018 22:51:55 GMT): Ashish (Wed, 11 Jul 2018 00:38:05 GMT): Ashish (Wed, 11 Jul 2018 00:40:07 GMT): Ashish (Wed, 11 Jul 2018 00:42:09 GMT): Ashish (Wed, 11 Jul 2018 00:43:13 GMT): ashvinnihalani (Wed, 11 Jul 2018 01:02:12 GMT): ashvinnihalani (Wed, 11 Jul 2018 01:05:48 GMT): bjrnt (Wed, 11 Jul 2018 01:48:28 GMT): jaswanth (Wed, 11 Jul 2018 04:28:23 GMT): jaswanth (Wed, 11 Jul 2018 04:28:23 GMT): jaswanth (Wed, 11 Jul 2018 04:28:23 GMT): jaswanth (Wed, 11 Jul 2018 04:28:23 GMT): jaswanth (Wed, 11 Jul 2018 04:32:57 GMT): gewing (Wed, 11 Jul 2018 04:46:15 GMT): gewing (Wed, 11 Jul 2018 04:46:43 GMT): gewing (Wed, 11 Jul 2018 04:47:10 GMT): gewing (Wed, 11 Jul 2018 04:50:26 GMT): AMIL_SAJEEV (Wed, 11 Jul 2018 05:49:58 GMT): waleed (Wed, 11 Jul 2018 06:26:37 GMT): waleed (Wed, 11 Jul 2018 06:30:11 GMT): waleed (Wed, 11 Jul 2018 06:32:48 GMT): waleed (Wed, 11 Jul 2018 06:36:47 GMT): richzhao (Wed, 11 Jul 2018 06:50:37 GMT): richzhao (Wed, 11 Jul 2018 06:50:40 GMT): richzhao (Wed, 11 Jul 2018 06:50:59 GMT): richzhao (Wed, 11 Jul 2018 06:52:22 GMT): waleed (Wed, 11 Jul 2018 06:54:24 GMT): richzhao (Wed, 11 Jul 2018 06:56:10 GMT): richzhao (Wed, 11 Jul 2018 06:58:18 GMT): richzhao (Wed, 11 Jul 2018 06:58:32 GMT): AMIL_SAJEEV (Wed, 11 Jul 2018 07:02:08 GMT): waleed (Wed, 11 Jul 2018 07:07:55 GMT): waleed (Wed, 11 Jul 2018 07:08:27 GMT): AMIL_SAJEEV (Wed, 11 Jul 2018 07:14:49 GMT): AMIL_SAJEEV (Wed, 11 Jul 2018 07:14:49 GMT): Poneey (Wed, 11 Jul 2018 07:18:00 GMT): bjrnt (Wed, 11 Jul 2018 07:25:57 GMT): mahoney1 (Wed, 11 Jul 2018 07:26:26 GMT): jayeshjawale95 (Wed, 11 Jul 2018 07:27:45 GMT): waleed (Wed, 11 Jul 2018 07:35:06 GMT): jaswanth (Wed, 11 Jul 2018 07:37:33 GMT): jaswanth (Wed, 11 Jul 2018 07:37:33 GMT): waleed (Wed, 11 Jul 2018 07:39:40 GMT): waleed (Wed, 11 Jul 2018 07:43:22 GMT): jaswanth (Wed, 11 Jul 2018 07:44:10 GMT): rajanashutosh (Wed, 11 Jul 2018 07:45:18 GMT): rajanashutosh (Wed, 11 Jul 2018 07:46:54 GMT): Poneey (Wed, 11 Jul 2018 07:47:55 GMT): waleed (Wed, 11 Jul 2018 07:52:52 GMT): jaswanth (Wed, 11 Jul 2018 07:59:09 GMT): waleed (Wed, 11 Jul 2018 08:15:31 GMT): punleu (Wed, 11 Jul 2018 08:29:56 GMT): rthatcher (Wed, 11 Jul 2018 08:31:44 GMT): AMIL_SAJEEV (Wed, 11 Jul 2018 08:36:00 GMT): rthatcher (Wed, 11 Jul 2018 08:43:39 GMT): AndreyAndreyev (Wed, 11 Jul 2018 08:45:42 GMT): AndreyAndreyev (Wed, 11 Jul 2018 08:45:55 GMT): josiebhai (Wed, 11 Jul 2018 08:47:38 GMT): josiebhai (Wed, 11 Jul 2018 08:51:56 GMT): AndreyAndreyev (Wed, 11 Jul 2018 08:55:24 GMT): mahoney1 (Wed, 11 Jul 2018 08:57:39 GMT): richzhao (Wed, 11 Jul 2018 08:59:52 GMT): richzhao (Wed, 11 Jul 2018 09:00:47 GMT): rajanashutosh (Wed, 11 Jul 2018 09:05:03 GMT): rthatcher (Wed, 11 Jul 2018 09:12:13 GMT): rthatcher (Wed, 11 Jul 2018 09:15:53 GMT): rthatcher (Wed, 11 Jul 2018 09:21:54 GMT): AndreyAndreyev (Wed, 11 Jul 2018 09:23:28 GMT): jaswanth (Wed, 11 Jul 2018 09:26:02 GMT): jaswanth (Wed, 11 Jul 2018 09:26:02 GMT): jaswanth (Wed, 11 Jul 2018 09:26:02 GMT): josiebhai (Wed, 11 Jul 2018 09:37:37 GMT): josiebhai (Wed, 11 Jul 2018 09:37:37 GMT): josiebhai (Wed, 11 Jul 2018 09:37:37 GMT): josiebhai (Wed, 11 Jul 2018 09:38:33 GMT): josiebhai (Wed, 11 Jul 2018 09:38:33 GMT): josiebhai (Wed, 11 Jul 2018 09:38:33 GMT): josiebhai (Wed, 11 Jul 2018 09:38:39 GMT): rthatcher (Wed, 11 Jul 2018 09:48:05 GMT): rthatcher (Wed, 11 Jul 2018 09:53:12 GMT): AnithaReddy (Wed, 11 Jul 2018 09:56:11 GMT): mahoney1 (Wed, 11 Jul 2018 09:59:56 GMT): mahoney1 (Wed, 11 Jul 2018 09:59:56 GMT): AndreyAndreyev (Wed, 11 Jul 2018 10:03:14 GMT): josiebhai (Wed, 11 Jul 2018 10:05:33 GMT): rajanashutosh (Wed, 11 Jul 2018 10:06:27 GMT): josiebhai (Wed, 11 Jul 2018 10:06:33 GMT): mahoney1 (Wed, 11 Jul 2018 10:07:11 GMT): AndreyAndreyev (Wed, 11 Jul 2018 10:08:39 GMT): AnithaReddy (Wed, 11 Jul 2018 10:09:08 GMT): AnithaReddy (Wed, 11 Jul 2018 10:11:33 GMT): mahoney1 (Wed, 11 Jul 2018 10:15:41 GMT): mahoney1 (Wed, 11 Jul 2018 10:15:41 GMT): rthatcher (Wed, 11 Jul 2018 10:18:56 GMT): rajanashutosh (Wed, 11 Jul 2018 10:29:13 GMT): rthatcher (Wed, 11 Jul 2018 10:48:29 GMT): gewing (Wed, 11 Jul 2018 11:14:25 GMT): blob (Wed, 11 Jul 2018 11:28:22 GMT): rajanashutosh (Wed, 11 Jul 2018 11:46:39 GMT): rajanashutosh (Wed, 11 Jul 2018 11:52:08 GMT): nemo 8 (Wed, 11 Jul 2018 11:59:14 GMT): nemo 8 (Wed, 11 Jul 2018 12:00:21 GMT): Poneey (Wed, 11 Jul 2018 12:17:07 GMT): Ratnakar_M (Wed, 11 Jul 2018 13:05:16 GMT): Ashish (Wed, 11 Jul 2018 13:06:31 GMT): mahoney1 (Wed, 11 Jul 2018 13:09:49 GMT): mahoney1 (Wed, 11 Jul 2018 13:11:50 GMT): Jyotirmoy (Wed, 11 Jul 2018 13:14:22 GMT): Ashish (Wed, 11 Jul 2018 13:14:48 GMT): Ashish (Wed, 11 Jul 2018 13:15:41 GMT): mahoney1 (Wed, 11 Jul 2018 13:17:02 GMT): mahoney1 (Wed, 11 Jul 2018 13:17:02 GMT): Poneey (Wed, 11 Jul 2018 13:17:05 GMT): Ashish (Wed, 11 Jul 2018 13:17:55 GMT): SriSris (Wed, 11 Jul 2018 13:19:33 GMT): mahoney1 (Wed, 11 Jul 2018 13:19:51 GMT): mahoney1 (Wed, 11 Jul 2018 13:19:51 GMT): mahoney1 (Wed, 11 Jul 2018 13:24:51 GMT): rthatcher (Wed, 11 Jul 2018 13:37:44 GMT): waleed (Wed, 11 Jul 2018 13:44:47 GMT): oba2311 (Wed, 11 Jul 2018 14:26:24 GMT): oba2311 (Wed, 11 Jul 2018 14:26:48 GMT): oba2311 (Wed, 11 Jul 2018 14:27:14 GMT): oba2311 (Wed, 11 Jul 2018 14:27:17 GMT): SriSris (Wed, 11 Jul 2018 14:47:59 GMT): SriSris (Wed, 11 Jul 2018 14:48:18 GMT): SriSris (Wed, 11 Jul 2018 14:51:49 GMT): SriSris (Wed, 11 Jul 2018 14:51:51 GMT): SriSris (Wed, 11 Jul 2018 14:52:23 GMT): SriSris (Wed, 11 Jul 2018 14:52:26 GMT): mdimovich (Wed, 11 Jul 2018 15:30:46 GMT): mdimovich (Wed, 11 Jul 2018 15:33:53 GMT): VadimInshakov (Wed, 11 Jul 2018 15:47:10 GMT): VadimInshakov (Wed, 11 Jul 2018 15:47:10 GMT): VadimInshakov (Wed, 11 Jul 2018 15:47:10 GMT): waleed (Wed, 11 Jul 2018 16:10:43 GMT): waleed (Wed, 11 Jul 2018 16:16:02 GMT): waleed (Wed, 11 Jul 2018 16:16:02 GMT): SriSris (Wed, 11 Jul 2018 16:21:50 GMT): SriSris (Wed, 11 Jul 2018 16:22:04 GMT): mahoney1 (Wed, 11 Jul 2018 16:22:40 GMT): SriSris (Wed, 11 Jul 2018 17:13:08 GMT): gewing (Wed, 11 Jul 2018 19:27:13 GMT): gewing (Wed, 11 Jul 2018 19:27:48 GMT): aum123 (Wed, 11 Jul 2018 20:01:05 GMT): diegoduncan21 (Wed, 11 Jul 2018 22:04:18 GMT): diegoduncan21 (Wed, 11 Jul 2018 22:04:46 GMT): diegoduncan21 (Wed, 11 Jul 2018 22:05:33 GMT): diegoduncan21 (Wed, 11 Jul 2018 22:06:14 GMT): diegoduncan21 (Wed, 11 Jul 2018 22:24:46 GMT): diegoduncan21 (Wed, 11 Jul 2018 22:24:46 GMT): litodude (Thu, 12 Jul 2018 01:10:46 GMT): labcoinpoc (Thu, 12 Jul 2018 02:37:06 GMT): labcoinpoc (Thu, 12 Jul 2018 02:37:06 GMT): labcoinpoc (Thu, 12 Jul 2018 02:44:50 GMT): peara (Thu, 12 Jul 2018 05:39:18 GMT): labcoinpoc (Thu, 12 Jul 2018 05:44:10 GMT): noif (Thu, 12 Jul 2018 05:55:48 GMT): abityildiz (Thu, 12 Jul 2018 06:25:57 GMT): abityildiz (Thu, 12 Jul 2018 06:26:07 GMT): abityildiz (Thu, 12 Jul 2018 06:27:00 GMT): abityildiz (Thu, 12 Jul 2018 06:27:45 GMT): s4vicky (Thu, 12 Jul 2018 06:28:47 GMT): davidkel (Thu, 12 Jul 2018 06:50:03 GMT): VadimInshakov (Thu, 12 Jul 2018 06:50:44 GMT): VadimInshakov (Thu, 12 Jul 2018 06:50:44 GMT): davidkel (Thu, 12 Jul 2018 06:57:12 GMT): rajanashutosh (Thu, 12 Jul 2018 07:02:49 GMT): rajanashutosh (Thu, 12 Jul 2018 07:03:16 GMT): rajanashutosh (Thu, 12 Jul 2018 07:07:47 GMT): labcoinpoc (Thu, 12 Jul 2018 07:08:23 GMT): labcoinpoc (Thu, 12 Jul 2018 07:08:23 GMT): labcoinpoc (Thu, 12 Jul 2018 07:08:23 GMT): howdyeyey (Thu, 12 Jul 2018 07:11:02 GMT): Poneey (Thu, 12 Jul 2018 07:11:20 GMT): howdyeyey (Thu, 12 Jul 2018 07:15:48 GMT): howdyeyey (Thu, 12 Jul 2018 07:15:57 GMT): howdyeyey (Thu, 12 Jul 2018 07:17:03 GMT): howdyeyey (Thu, 12 Jul 2018 07:17:11 GMT): howdyeyey (Thu, 12 Jul 2018 07:19:35 GMT): Poneey (Thu, 12 Jul 2018 07:19:43 GMT): howdyeyey (Thu, 12 Jul 2018 07:20:56 GMT): howdyeyey (Thu, 12 Jul 2018 07:22:15 GMT): howdyeyey (Thu, 12 Jul 2018 07:22:24 GMT): howdyeyey (Thu, 12 Jul 2018 07:22:49 GMT): howdyeyey (Thu, 12 Jul 2018 07:22:55 GMT): davidkel (Thu, 12 Jul 2018 07:26:04 GMT): Poneey (Thu, 12 Jul 2018 07:26:49 GMT): labcoinpoc (Thu, 12 Jul 2018 07:28:42 GMT): WadeLu (Thu, 12 Jul 2018 07:31:32 GMT): waleed (Thu, 12 Jul 2018 07:32:37 GMT): waleed (Thu, 12 Jul 2018 07:33:35 GMT): VadimInshakov (Thu, 12 Jul 2018 07:45:02 GMT): waleed (Thu, 12 Jul 2018 07:51:49 GMT): labcoinpoc (Thu, 12 Jul 2018 08:06:26 GMT): labcoinpoc (Thu, 12 Jul 2018 08:06:26 GMT): labcoinpoc (Thu, 12 Jul 2018 08:06:26 GMT): VadimInshakov (Thu, 12 Jul 2018 08:06:30 GMT): mahoney1 (Thu, 12 Jul 2018 08:14:35 GMT): mahoney1 (Thu, 12 Jul 2018 08:14:35 GMT): rajanashutosh (Thu, 12 Jul 2018 08:28:50 GMT): SteveFournier (Thu, 12 Jul 2018 08:34:04 GMT): mahoney1 (Thu, 12 Jul 2018 08:38:14 GMT): mahoney1 (Thu, 12 Jul 2018 08:41:52 GMT): mahoney1 (Thu, 12 Jul 2018 08:44:03 GMT): labcoinpoc (Thu, 12 Jul 2018 08:46:38 GMT): davidkel (Thu, 12 Jul 2018 08:46:49 GMT): labcoinpoc (Thu, 12 Jul 2018 08:47:55 GMT): davidkel (Thu, 12 Jul 2018 08:50:48 GMT): SteveFournier (Thu, 12 Jul 2018 08:51:48 GMT): labcoinpoc (Thu, 12 Jul 2018 08:52:53 GMT): labcoinpoc (Thu, 12 Jul 2018 08:52:53 GMT): labcoinpoc (Thu, 12 Jul 2018 08:52:53 GMT): davidkel (Thu, 12 Jul 2018 08:55:00 GMT): davidkel (Thu, 12 Jul 2018 08:55:00 GMT): davidkel (Thu, 12 Jul 2018 08:55:00 GMT): labcoinpoc (Thu, 12 Jul 2018 08:55:25 GMT): labcoinpoc (Thu, 12 Jul 2018 08:58:02 GMT): rajanashutosh (Thu, 12 Jul 2018 08:59:26 GMT): davidkel (Thu, 12 Jul 2018 08:59:31 GMT): davidkel (Thu, 12 Jul 2018 08:59:31 GMT): labcoinpoc (Thu, 12 Jul 2018 09:01:30 GMT): sudhir.kumawat (Thu, 12 Jul 2018 09:04:12 GMT): sudhir.kumawat (Thu, 12 Jul 2018 09:04:54 GMT): labcoinpoc (Thu, 12 Jul 2018 09:09:19 GMT): labcoinpoc (Thu, 12 Jul 2018 09:09:22 GMT): mahoney1 (Thu, 12 Jul 2018 09:10:52 GMT): davidkel (Thu, 12 Jul 2018 09:11:29 GMT): saeedi (Thu, 12 Jul 2018 09:11:42 GMT): wangrangli (Thu, 12 Jul 2018 09:12:31 GMT): labcoinpoc (Thu, 12 Jul 2018 09:13:19 GMT): waleed (Thu, 12 Jul 2018 09:14:29 GMT): mahoney1 (Thu, 12 Jul 2018 09:15:12 GMT): davidkel (Thu, 12 Jul 2018 09:15:13 GMT): wangrangli (Thu, 12 Jul 2018 09:15:53 GMT): davidkel (Thu, 12 Jul 2018 09:16:04 GMT): BhaskarNarayan (Thu, 12 Jul 2018 09:16:23 GMT): labcoinpoc (Thu, 12 Jul 2018 09:17:16 GMT): labcoinpoc (Thu, 12 Jul 2018 09:19:03 GMT): davidkel (Thu, 12 Jul 2018 09:22:22 GMT): labcoinpoc (Thu, 12 Jul 2018 09:23:40 GMT): mahoney1 (Thu, 12 Jul 2018 09:29:58 GMT): VadimInshakov (Thu, 12 Jul 2018 09:37:08 GMT): saeedi (Thu, 12 Jul 2018 09:47:16 GMT): saeedi (Thu, 12 Jul 2018 09:47:46 GMT): saeedi (Thu, 12 Jul 2018 09:47:46 GMT): saeedi (Thu, 12 Jul 2018 09:47:46 GMT): saeedi (Thu, 12 Jul 2018 09:47:46 GMT): Poneey (Thu, 12 Jul 2018 09:57:11 GMT): mahoney1 (Thu, 12 Jul 2018 10:00:30 GMT): ultimo2020 (Thu, 12 Jul 2018 10:04:48 GMT): ultimo2020 (Thu, 12 Jul 2018 10:05:53 GMT): ultimo2020 (Thu, 12 Jul 2018 10:05:56 GMT): ultimo2020 (Thu, 12 Jul 2018 10:06:47 GMT): ultimo2020 (Thu, 12 Jul 2018 10:07:03 GMT): ultimo2020 (Thu, 12 Jul 2018 10:07:03 GMT): ultimo2020 (Thu, 12 Jul 2018 10:07:14 GMT): ultimo2020 (Thu, 12 Jul 2018 10:07:24 GMT): ultimo2020 (Thu, 12 Jul 2018 10:07:35 GMT): mahoney1 (Thu, 12 Jul 2018 10:18:47 GMT): mahoney1 (Thu, 12 Jul 2018 10:18:47 GMT): ultimo2020 (Thu, 12 Jul 2018 10:20:32 GMT): ultimo2020 (Thu, 12 Jul 2018 10:20:35 GMT): ultimo2020 (Thu, 12 Jul 2018 10:20:43 GMT): ultimo2020 (Thu, 12 Jul 2018 10:21:03 GMT): ultimo2020 (Thu, 12 Jul 2018 10:21:09 GMT): ultimo2020 (Thu, 12 Jul 2018 10:22:06 GMT): ultimo2020 (Thu, 12 Jul 2018 10:22:52 GMT): ultimo2020 (Thu, 12 Jul 2018 10:23:04 GMT): ultimo2020 (Thu, 12 Jul 2018 10:23:11 GMT): ultimo2020 (Thu, 12 Jul 2018 10:23:35 GMT): ultimo2020 (Thu, 12 Jul 2018 10:23:48 GMT): ultimo2020 (Thu, 12 Jul 2018 10:24:08 GMT): ultimo2020 (Thu, 12 Jul 2018 10:28:22 GMT): ultimo2020 (Thu, 12 Jul 2018 10:28:52 GMT): HoneyShah (Thu, 12 Jul 2018 10:45:25 GMT): HoneyShah (Thu, 12 Jul 2018 10:45:25 GMT): rthatcher (Thu, 12 Jul 2018 10:51:26 GMT): davidkel (Thu, 12 Jul 2018 10:56:12 GMT): ultimo2020 (Thu, 12 Jul 2018 11:02:16 GMT): ultimo2020 (Thu, 12 Jul 2018 11:03:00 GMT): ultimo2020 (Thu, 12 Jul 2018 11:03:27 GMT): ultimo2020 (Thu, 12 Jul 2018 11:04:15 GMT): ultimo2020 (Thu, 12 Jul 2018 11:06:37 GMT): waleed (Thu, 12 Jul 2018 11:09:39 GMT): waleed (Thu, 12 Jul 2018 11:09:39 GMT): davidkel (Thu, 12 Jul 2018 11:15:58 GMT): davidkel (Thu, 12 Jul 2018 11:15:58 GMT): davidkel (Thu, 12 Jul 2018 11:56:34 GMT): koineramitranjan (Thu, 12 Jul 2018 12:20:50 GMT): koineramitranjan (Thu, 12 Jul 2018 12:21:35 GMT): koineramitranjan (Thu, 12 Jul 2018 12:21:50 GMT): waleed (Thu, 12 Jul 2018 12:28:49 GMT): koineramitranjan (Thu, 12 Jul 2018 12:45:34 GMT): koineramitranjan (Thu, 12 Jul 2018 12:47:09 GMT): koineramitranjan (Thu, 12 Jul 2018 12:48:54 GMT): waleed (Thu, 12 Jul 2018 12:50:48 GMT): koineramitranjan (Thu, 12 Jul 2018 12:51:49 GMT): koineramitranjan (Thu, 12 Jul 2018 12:52:12 GMT): waleed (Thu, 12 Jul 2018 12:56:37 GMT): koineramitranjan (Thu, 12 Jul 2018 12:57:19 GMT): koineramitranjan (Thu, 12 Jul 2018 12:58:19 GMT): waleed (Thu, 12 Jul 2018 12:58:57 GMT): koineramitranjan (Thu, 12 Jul 2018 12:59:08 GMT): koineramitranjan (Thu, 12 Jul 2018 12:59:15 GMT): koineramitranjan (Thu, 12 Jul 2018 12:59:20 GMT): koineramitranjan (Thu, 12 Jul 2018 13:00:49 GMT): koineramitranjan (Thu, 12 Jul 2018 13:01:02 GMT): waleed (Thu, 12 Jul 2018 13:02:32 GMT): koineramitranjan (Thu, 12 Jul 2018 13:04:08 GMT): waleed (Thu, 12 Jul 2018 13:05:06 GMT): waleed (Thu, 12 Jul 2018 13:05:06 GMT): waleed (Thu, 12 Jul 2018 13:05:06 GMT): koineramitranjan (Thu, 12 Jul 2018 13:06:21 GMT): koineramitranjan (Thu, 12 Jul 2018 13:06:23 GMT): koineramitranjan (Thu, 12 Jul 2018 13:06:28 GMT): koineramitranjan (Thu, 12 Jul 2018 13:06:32 GMT): waleed (Thu, 12 Jul 2018 13:08:24 GMT): waleed (Thu, 12 Jul 2018 13:08:24 GMT): vtfr (Thu, 12 Jul 2018 13:15:09 GMT): vtfr (Thu, 12 Jul 2018 13:15:12 GMT): vtfr (Thu, 12 Jul 2018 13:15:30 GMT): vtfr (Thu, 12 Jul 2018 13:15:42 GMT): vtfr (Thu, 12 Jul 2018 13:16:32 GMT): vtfr (Thu, 12 Jul 2018 13:16:32 GMT): vtfr (Thu, 12 Jul 2018 13:17:11 GMT): vtfr (Thu, 12 Jul 2018 13:17:11 GMT): Asch (Thu, 12 Jul 2018 13:17:54 GMT): waleed (Thu, 12 Jul 2018 13:25:55 GMT): waleed (Thu, 12 Jul 2018 13:25:55 GMT): vtfr (Thu, 12 Jul 2018 13:27:06 GMT): vtfr (Thu, 12 Jul 2018 13:28:20 GMT): vtfr (Thu, 12 Jul 2018 13:29:25 GMT): mahoney1 (Thu, 12 Jul 2018 13:30:37 GMT): vtfr (Thu, 12 Jul 2018 13:35:47 GMT): albert.serra (Thu, 12 Jul 2018 13:45:01 GMT): Khaled.MH (Thu, 12 Jul 2018 13:50:42 GMT): diegoduncan21 (Thu, 12 Jul 2018 14:01:06 GMT): mahoney1 (Thu, 12 Jul 2018 14:26:17 GMT): diegoduncan21 (Thu, 12 Jul 2018 14:30:27 GMT): mahoney1 (Thu, 12 Jul 2018 14:47:41 GMT): diegoduncan21 (Thu, 12 Jul 2018 14:59:27 GMT): diegoduncan21 (Thu, 12 Jul 2018 15:00:42 GMT): diegoduncan21 (Thu, 12 Jul 2018 15:00:42 GMT): gsgx (Thu, 12 Jul 2018 15:00:54 GMT): awto (Thu, 12 Jul 2018 15:14:29 GMT): tongli (Thu, 12 Jul 2018 15:24:36 GMT): tongli (Thu, 12 Jul 2018 15:25:04 GMT): tongli (Thu, 12 Jul 2018 15:27:01 GMT): tongli (Thu, 12 Jul 2018 15:27:29 GMT): davidkel (Thu, 12 Jul 2018 15:39:11 GMT): tongli (Thu, 12 Jul 2018 15:39:58 GMT): tongli (Thu, 12 Jul 2018 15:40:24 GMT): davidkel (Thu, 12 Jul 2018 15:40:29 GMT): davidkel (Thu, 12 Jul 2018 15:41:07 GMT): tongli (Thu, 12 Jul 2018 15:41:43 GMT): davidkel (Thu, 12 Jul 2018 15:42:22 GMT): tongli (Thu, 12 Jul 2018 15:43:38 GMT): davidkel (Thu, 12 Jul 2018 15:45:04 GMT): tongli (Thu, 12 Jul 2018 15:46:30 GMT): davidkel (Thu, 12 Jul 2018 15:46:52 GMT): tongli (Thu, 12 Jul 2018 15:47:30 GMT): davidkel (Thu, 12 Jul 2018 15:47:55 GMT): tongli (Thu, 12 Jul 2018 15:48:43 GMT): tongli (Thu, 12 Jul 2018 15:49:25 GMT): tongli (Thu, 12 Jul 2018 15:49:37 GMT): davidkel (Thu, 12 Jul 2018 15:50:02 GMT): tongli (Thu, 12 Jul 2018 15:50:14 GMT): jmason900 (Thu, 12 Jul 2018 16:07:22 GMT): KushagraTiwary (Thu, 12 Jul 2018 16:13:25 GMT): davidkel (Thu, 12 Jul 2018 16:17:35 GMT): mahoney1 (Thu, 12 Jul 2018 16:23:21 GMT): mahoney1 (Thu, 12 Jul 2018 16:23:21 GMT): jmason900 (Thu, 12 Jul 2018 16:26:29 GMT): mahoney1 (Thu, 12 Jul 2018 16:55:46 GMT): mahoney1 (Thu, 12 Jul 2018 16:55:46 GMT): tongli (Thu, 12 Jul 2018 18:27:15 GMT): tongli (Thu, 12 Jul 2018 18:27:42 GMT): tongli (Thu, 12 Jul 2018 18:28:09 GMT): nemo 8 (Thu, 12 Jul 2018 18:38:59 GMT): mdimovich (Thu, 12 Jul 2018 19:30:54 GMT): mdimovich (Thu, 12 Jul 2018 19:31:04 GMT): waleed (Thu, 12 Jul 2018 19:35:47 GMT): eliezertwin (Thu, 12 Jul 2018 19:45:34 GMT): mdimovich (Thu, 12 Jul 2018 19:47:48 GMT): pnarang_a_s (Thu, 12 Jul 2018 19:53:01 GMT): mdimovich (Thu, 12 Jul 2018 20:00:45 GMT): mdimovich (Thu, 12 Jul 2018 20:00:53 GMT): pnarang_a_s (Thu, 12 Jul 2018 20:23:23 GMT): nemo 8 (Thu, 12 Jul 2018 20:47:06 GMT): pnarang_a_s (Thu, 12 Jul 2018 20:52:50 GMT): pnarang_a_s (Thu, 12 Jul 2018 20:54:36 GMT): josephnicholas (Thu, 12 Jul 2018 20:58:15 GMT): nemo 8 (Thu, 12 Jul 2018 21:04:40 GMT): nemo 8 (Thu, 12 Jul 2018 21:05:02 GMT): pnarang_a_s (Thu, 12 Jul 2018 21:50:23 GMT): pnarang_a_s (Thu, 12 Jul 2018 21:50:54 GMT): pnarang_a_s (Thu, 12 Jul 2018 21:51:23 GMT): pnarang_a_s (Thu, 12 Jul 2018 22:02:24 GMT): patrick8289 (Thu, 12 Jul 2018 22:30:44 GMT): patrick8289 (Thu, 12 Jul 2018 22:35:20 GMT): howdyeyey (Fri, 13 Jul 2018 00:00:19 GMT): howdyeyey (Fri, 13 Jul 2018 00:00:19 GMT): howdyeyey (Fri, 13 Jul 2018 00:25:14 GMT): howdyeyey (Fri, 13 Jul 2018 00:25:14 GMT): howdyeyey (Fri, 13 Jul 2018 00:25:14 GMT): howdyeyey (Fri, 13 Jul 2018 00:25:14 GMT): apaparazzi0329 (Fri, 13 Jul 2018 01:41:02 GMT): apaparazzi0329 (Fri, 13 Jul 2018 01:41:50 GMT): apaparazzi0329 (Fri, 13 Jul 2018 01:41:58 GMT): howdyeyey (Fri, 13 Jul 2018 01:42:11 GMT): howdyeyey (Fri, 13 Jul 2018 01:43:07 GMT): apaparazzi0329 (Fri, 13 Jul 2018 01:43:56 GMT): apaparazzi0329 (Fri, 13 Jul 2018 01:44:07 GMT): apaparazzi0329 (Fri, 13 Jul 2018 01:46:43 GMT): apaparazzi0329 (Fri, 13 Jul 2018 01:47:41 GMT): howdyeyey (Fri, 13 Jul 2018 01:47:47 GMT): apaparazzi0329 (Fri, 13 Jul 2018 01:48:23 GMT): howdyeyey (Fri, 13 Jul 2018 01:49:07 GMT): howdyeyey (Fri, 13 Jul 2018 01:49:07 GMT): apaparazzi0329 (Fri, 13 Jul 2018 01:49:12 GMT): apaparazzi0329 (Fri, 13 Jul 2018 01:49:14 GMT): howdyeyey (Fri, 13 Jul 2018 01:54:46 GMT): howdyeyey (Fri, 13 Jul 2018 01:54:56 GMT): howdyeyey (Fri, 13 Jul 2018 01:56:44 GMT): howdyeyey (Fri, 13 Jul 2018 01:58:53 GMT): apaparazzi0329 (Fri, 13 Jul 2018 02:06:01 GMT): howdyeyey (Fri, 13 Jul 2018 02:10:33 GMT): apaparazzi0329 (Fri, 13 Jul 2018 02:11:41 GMT): howdyeyey (Fri, 13 Jul 2018 02:14:39 GMT): howdyeyey (Fri, 13 Jul 2018 03:37:16 GMT): koineramitranjan (Fri, 13 Jul 2018 04:10:08 GMT): Varun2887 (Fri, 13 Jul 2018 05:53:41 GMT): Varun2887 (Fri, 13 Jul 2018 05:53:47 GMT): jad (Fri, 13 Jul 2018 06:22:56 GMT): jad (Fri, 13 Jul 2018 06:23:17 GMT): patrick8289 (Fri, 13 Jul 2018 06:50:57 GMT): AnithaReddy (Fri, 13 Jul 2018 06:52:20 GMT): Varun2887 (Fri, 13 Jul 2018 07:03:41 GMT): davidhu (Fri, 13 Jul 2018 07:09:24 GMT): davidhu (Fri, 13 Jul 2018 07:09:55 GMT): Varun2887 (Fri, 13 Jul 2018 07:13:04 GMT): Varun2887 (Fri, 13 Jul 2018 07:13:08 GMT): waleed (Fri, 13 Jul 2018 08:06:11 GMT): mahoney1 (Fri, 13 Jul 2018 08:43:15 GMT): HoneyShah (Fri, 13 Jul 2018 08:48:28 GMT): HoneyShah (Fri, 13 Jul 2018 08:48:28 GMT): rthatcher (Fri, 13 Jul 2018 08:59:39 GMT): rthatcher (Fri, 13 Jul 2018 08:59:39 GMT): StefanKosc (Fri, 13 Jul 2018 09:01:37 GMT): Drest (Fri, 13 Jul 2018 09:04:14 GMT): mahoney1 (Fri, 13 Jul 2018 09:06:29 GMT): Drest (Fri, 13 Jul 2018 09:09:32 GMT): HoneyShah (Fri, 13 Jul 2018 09:17:30 GMT): mahoney1 (Fri, 13 Jul 2018 09:18:17 GMT): mahoney1 (Fri, 13 Jul 2018 09:19:52 GMT): mahoney1 (Fri, 13 Jul 2018 09:27:41 GMT): ehsanhajian (Fri, 13 Jul 2018 09:29:37 GMT): ultimo2020 (Fri, 13 Jul 2018 09:33:06 GMT): ultimo2020 (Fri, 13 Jul 2018 09:33:16 GMT): ultimo2020 (Fri, 13 Jul 2018 09:33:34 GMT): ultimo2020 (Fri, 13 Jul 2018 09:33:39 GMT): ultimo2020 (Fri, 13 Jul 2018 09:33:45 GMT): rthatcher (Fri, 13 Jul 2018 09:34:27 GMT): Drest (Fri, 13 Jul 2018 09:41:00 GMT): uber.twin (Fri, 13 Jul 2018 09:41:38 GMT): uber.twin (Fri, 13 Jul 2018 09:41:38 GMT): rthatcher (Fri, 13 Jul 2018 10:04:55 GMT): rthatcher (Fri, 13 Jul 2018 10:06:46 GMT): VadimInshakov (Fri, 13 Jul 2018 10:12:18 GMT): VadimInshakov (Fri, 13 Jul 2018 10:12:18 GMT): Drest (Fri, 13 Jul 2018 10:12:45 GMT): Drest (Fri, 13 Jul 2018 10:12:45 GMT): mahoney1 (Fri, 13 Jul 2018 10:37:57 GMT): rthatcher (Fri, 13 Jul 2018 10:40:23 GMT): Anshulmittal (Fri, 13 Jul 2018 10:48:57 GMT): pawanjois (Fri, 13 Jul 2018 10:57:54 GMT): pawanjois (Fri, 13 Jul 2018 11:00:28 GMT): pawanjois (Fri, 13 Jul 2018 11:01:29 GMT): pawanjois (Fri, 13 Jul 2018 11:03:37 GMT): mahoney1 (Fri, 13 Jul 2018 11:03:54 GMT): pawanjois (Fri, 13 Jul 2018 11:04:29 GMT): pawanjois (Fri, 13 Jul 2018 11:04:35 GMT): Anshulmittal (Fri, 13 Jul 2018 11:06:19 GMT): Drest (Fri, 13 Jul 2018 11:07:32 GMT): Mahadream (Fri, 13 Jul 2018 11:18:05 GMT): Mahadream (Fri, 13 Jul 2018 11:18:32 GMT): VadimInshakov (Fri, 13 Jul 2018 11:21:11 GMT): VadimInshakov (Fri, 13 Jul 2018 11:21:11 GMT): mahoney1 (Fri, 13 Jul 2018 11:34:02 GMT): ultimo2020 (Fri, 13 Jul 2018 11:35:37 GMT): ultimo2020 (Fri, 13 Jul 2018 11:35:51 GMT): mahoney1 (Fri, 13 Jul 2018 11:37:09 GMT): mahoney1 (Fri, 13 Jul 2018 11:41:03 GMT): mahoney1 (Fri, 13 Jul 2018 11:41:03 GMT): Anshulmittal (Fri, 13 Jul 2018 11:41:31 GMT): uber.twin (Fri, 13 Jul 2018 11:43:48 GMT): uber.twin (Fri, 13 Jul 2018 11:43:48 GMT): ultimo2020 (Fri, 13 Jul 2018 11:44:04 GMT): nemo 8 (Fri, 13 Jul 2018 12:11:43 GMT): rthatcher (Fri, 13 Jul 2018 12:14:45 GMT): rthatcher (Fri, 13 Jul 2018 12:17:52 GMT): Drest (Fri, 13 Jul 2018 12:21:07 GMT): Drest (Fri, 13 Jul 2018 12:38:02 GMT): rthatcher (Fri, 13 Jul 2018 12:38:18 GMT): ultimo2020 (Fri, 13 Jul 2018 12:56:26 GMT): ultimo2020 (Fri, 13 Jul 2018 12:56:27 GMT): ultimo2020 (Fri, 13 Jul 2018 12:56:52 GMT): ultimo2020 (Fri, 13 Jul 2018 12:57:29 GMT): ultimo2020 (Fri, 13 Jul 2018 12:57:41 GMT): ultimo2020 (Fri, 13 Jul 2018 12:58:03 GMT): AMIL_SAJEEV (Fri, 13 Jul 2018 13:12:22 GMT): rthatcher (Fri, 13 Jul 2018 13:54:45 GMT): mahoney1 (Fri, 13 Jul 2018 14:10:30 GMT): AMIL_SAJEEV (Fri, 13 Jul 2018 14:25:53 GMT): rthatcher (Fri, 13 Jul 2018 14:29:40 GMT): StefanKosc (Fri, 13 Jul 2018 14:45:25 GMT): patrick8289 (Fri, 13 Jul 2018 15:16:41 GMT): vanclief (Fri, 13 Jul 2018 15:19:37 GMT): vanclief (Fri, 13 Jul 2018 15:24:12 GMT): vanclief (Fri, 13 Jul 2018 15:25:19 GMT): tongli (Fri, 13 Jul 2018 15:31:41 GMT): tongli (Fri, 13 Jul 2018 15:32:04 GMT): tongli (Fri, 13 Jul 2018 15:32:23 GMT): tongli (Fri, 13 Jul 2018 15:32:38 GMT): tongli (Fri, 13 Jul 2018 15:33:13 GMT): tongli (Fri, 13 Jul 2018 15:33:17 GMT): tongli (Fri, 13 Jul 2018 15:33:48 GMT): tongli (Fri, 13 Jul 2018 15:33:56 GMT): vanclief (Fri, 13 Jul 2018 15:34:00 GMT): rthatcher (Fri, 13 Jul 2018 15:34:01 GMT): tongli (Fri, 13 Jul 2018 15:34:48 GMT): rthatcher (Fri, 13 Jul 2018 15:35:48 GMT): tongli (Fri, 13 Jul 2018 15:36:59 GMT): tongli (Fri, 13 Jul 2018 15:37:08 GMT): tongli (Fri, 13 Jul 2018 15:37:32 GMT): tongli (Fri, 13 Jul 2018 15:39:19 GMT): tongli (Fri, 13 Jul 2018 15:39:34 GMT): SudipGhosh (Fri, 13 Jul 2018 15:42:48 GMT): SudipGhosh (Fri, 13 Jul 2018 15:42:50 GMT): AMIL_SAJEEV (Fri, 13 Jul 2018 15:48:50 GMT): vanclief (Fri, 13 Jul 2018 15:57:53 GMT): GonzalezAnguita (Fri, 13 Jul 2018 16:05:04 GMT): GonzalezAnguita (Fri, 13 Jul 2018 16:06:49 GMT): GonzalezAnguita (Fri, 13 Jul 2018 16:08:49 GMT): mahoney1 (Fri, 13 Jul 2018 16:15:42 GMT): mahoney1 (Fri, 13 Jul 2018 16:17:54 GMT): mahoney1 (Fri, 13 Jul 2018 16:17:54 GMT): GonzalezAnguita (Fri, 13 Jul 2018 16:19:24 GMT): ahmedsajid (Fri, 13 Jul 2018 16:24:27 GMT): guilhermesimoes (Fri, 13 Jul 2018 16:24:46 GMT): tongli (Fri, 13 Jul 2018 16:25:58 GMT): tongli (Fri, 13 Jul 2018 16:26:18 GMT): tongli (Fri, 13 Jul 2018 16:26:32 GMT): tongli (Fri, 13 Jul 2018 16:26:46 GMT): tongli (Fri, 13 Jul 2018 16:27:00 GMT): tongli (Fri, 13 Jul 2018 16:27:21 GMT): tongli (Fri, 13 Jul 2018 16:27:40 GMT): tongli (Fri, 13 Jul 2018 16:28:00 GMT): fedez (Fri, 13 Jul 2018 16:32:16 GMT): davidkel (Fri, 13 Jul 2018 16:32:33 GMT): davidkel (Fri, 13 Jul 2018 16:32:33 GMT): mahoney1 (Fri, 13 Jul 2018 16:32:59 GMT): tongli (Fri, 13 Jul 2018 16:33:34 GMT): tongli (Fri, 13 Jul 2018 16:34:49 GMT): tongli (Fri, 13 Jul 2018 16:34:51 GMT): guilhermesimoes (Fri, 13 Jul 2018 16:44:21 GMT): guilhermesimoes (Fri, 13 Jul 2018 16:45:19 GMT): patrick8289 (Fri, 13 Jul 2018 16:47:39 GMT): mahoney1 (Fri, 13 Jul 2018 16:50:19 GMT): mahoney1 (Fri, 13 Jul 2018 16:51:01 GMT): GonzalezAnguita (Fri, 13 Jul 2018 16:55:18 GMT): mahoney1 (Fri, 13 Jul 2018 16:55:24 GMT): mahoney1 (Fri, 13 Jul 2018 16:55:24 GMT): mahoney1 (Fri, 13 Jul 2018 16:55:24 GMT): GonzalezAnguita (Fri, 13 Jul 2018 16:55:24 GMT): guilhermesimoes (Fri, 13 Jul 2018 16:58:49 GMT): Telijas (Fri, 13 Jul 2018 18:57:58 GMT): BabuPallam (Sat, 14 Jul 2018 04:13:00 GMT): BabuPallam (Sat, 14 Jul 2018 04:13:49 GMT): dannychen (Sat, 14 Jul 2018 07:10:07 GMT): mmomeu (Sat, 14 Jul 2018 09:21:54 GMT): mmomeu (Sat, 14 Jul 2018 09:22:01 GMT): mmomeu (Sat, 14 Jul 2018 09:26:42 GMT): mmomeu (Sat, 14 Jul 2018 09:26:47 GMT): lassejarlstrom (Sat, 14 Jul 2018 10:54:04 GMT): maxDvoy (Sat, 14 Jul 2018 11:10:04 GMT): ra_w (Sat, 14 Jul 2018 11:40:05 GMT): ra_w (Sat, 14 Jul 2018 11:42:04 GMT): varunagarwal (Sat, 14 Jul 2018 12:28:21 GMT): fedez (Sat, 14 Jul 2018 12:55:52 GMT): varunagarwal (Sat, 14 Jul 2018 14:27:25 GMT): varunagarwal (Sat, 14 Jul 2018 14:27:57 GMT): sudhir.kumawat (Sat, 14 Jul 2018 16:06:42 GMT): ultimo2020 (Sat, 14 Jul 2018 16:11:06 GMT): ultimo2020 (Sat, 14 Jul 2018 16:11:28 GMT): ultimo2020 (Sat, 14 Jul 2018 16:11:31 GMT): ultimo2020 (Sat, 14 Jul 2018 16:11:32 GMT): ultimo2020 (Sat, 14 Jul 2018 16:11:49 GMT): ultimo2020 (Sat, 14 Jul 2018 16:12:09 GMT): ultimo2020 (Sat, 14 Jul 2018 16:12:35 GMT): ultimo2020 (Sat, 14 Jul 2018 16:12:42 GMT): Jyotirmoy (Sat, 14 Jul 2018 16:21:47 GMT): nico.ventrella (Sat, 14 Jul 2018 16:46:05 GMT): ronaldlong46 (Sat, 14 Jul 2018 18:57:32 GMT): ultimo2020 (Sun, 15 Jul 2018 09:50:13 GMT): guilhermesimoes (Sun, 15 Jul 2018 10:45:21 GMT): choco_coder (Sun, 15 Jul 2018 11:32:59 GMT): cagdasozt (Sun, 15 Jul 2018 13:19:56 GMT): cagdasozt (Sun, 15 Jul 2018 13:20:23 GMT): cagdasozt (Sun, 15 Jul 2018 13:20:41 GMT): cagdasozt (Sun, 15 Jul 2018 13:21:31 GMT): cagdasozt (Sun, 15 Jul 2018 13:21:56 GMT): cagdasozt (Sun, 15 Jul 2018 13:23:14 GMT): khanhnnvn (Sun, 15 Jul 2018 14:51:42 GMT): ronaldlong46 (Sun, 15 Jul 2018 16:31:11 GMT): phani1987 (Sun, 15 Jul 2018 17:29:55 GMT): pedromlcosta (Sun, 15 Jul 2018 23:09:01 GMT): pedromlcosta (Sun, 15 Jul 2018 23:09:11 GMT): BlockchainBusiness (Mon, 16 Jul 2018 00:23:55 GMT): BlockchainBusiness (Mon, 16 Jul 2018 00:25:46 GMT): BlockchainBusiness (Mon, 16 Jul 2018 00:26:32 GMT): BlockchainBusiness (Mon, 16 Jul 2018 00:26:46 GMT): BlockchainBusiness (Mon, 16 Jul 2018 00:26:56 GMT): waleed (Mon, 16 Jul 2018 02:05:22 GMT): BlockchainBusiness (Mon, 16 Jul 2018 02:06:46 GMT): ronaldlong46 (Mon, 16 Jul 2018 04:49:50 GMT): gauravgiri (Mon, 16 Jul 2018 05:42:32 GMT): gauravgiri (Mon, 16 Jul 2018 05:43:39 GMT): gauravgiri (Mon, 16 Jul 2018 05:43:39 GMT): InStateTech (Mon, 16 Jul 2018 06:10:12 GMT): Mahadream (Mon, 16 Jul 2018 06:52:36 GMT): choco_coder (Mon, 16 Jul 2018 06:53:08 GMT): waleed (Mon, 16 Jul 2018 07:16:46 GMT): waleed (Mon, 16 Jul 2018 07:16:46 GMT): Varun2887 (Mon, 16 Jul 2018 07:22:35 GMT): davidkel (Mon, 16 Jul 2018 07:43:14 GMT): Poneey (Mon, 16 Jul 2018 07:43:46 GMT): choco_coder (Mon, 16 Jul 2018 08:14:31 GMT): choco_coder (Mon, 16 Jul 2018 08:14:31 GMT): choco_coder (Mon, 16 Jul 2018 08:14:31 GMT): rthatcher (Mon, 16 Jul 2018 08:24:18 GMT): choco_coder (Mon, 16 Jul 2018 08:29:36 GMT): rthatcher (Mon, 16 Jul 2018 08:31:58 GMT): rthatcher (Mon, 16 Jul 2018 08:43:48 GMT): prmdmshra (Mon, 16 Jul 2018 08:43:57 GMT): Dauphinous (Mon, 16 Jul 2018 08:48:37 GMT): Dauphinous (Mon, 16 Jul 2018 08:50:25 GMT): Dauphinous (Mon, 16 Jul 2018 08:50:25 GMT): Dauphinous (Mon, 16 Jul 2018 08:50:25 GMT): Dauphinous (Mon, 16 Jul 2018 08:50:25 GMT): Dauphinous (Mon, 16 Jul 2018 08:50:25 GMT): choco_coder (Mon, 16 Jul 2018 08:55:25 GMT): choco_coder (Mon, 16 Jul 2018 08:55:25 GMT): choco_coder (Mon, 16 Jul 2018 08:55:25 GMT): ra_w (Mon, 16 Jul 2018 09:07:41 GMT): rthatcher (Mon, 16 Jul 2018 09:32:44 GMT): rthatcher (Mon, 16 Jul 2018 09:36:09 GMT): Dauphinous (Mon, 16 Jul 2018 09:43:52 GMT): rthatcher (Mon, 16 Jul 2018 09:44:22 GMT): choco_coder (Mon, 16 Jul 2018 09:48:16 GMT): choco_coder (Mon, 16 Jul 2018 09:48:16 GMT): choco_coder (Mon, 16 Jul 2018 09:48:16 GMT): choco_coder (Mon, 16 Jul 2018 09:48:16 GMT): choco_coder (Mon, 16 Jul 2018 09:48:16 GMT): choco_coder (Mon, 16 Jul 2018 09:48:16 GMT): choco_coder (Mon, 16 Jul 2018 09:48:16 GMT): choco_coder (Mon, 16 Jul 2018 09:48:16 GMT): choco_coder (Mon, 16 Jul 2018 09:48:16 GMT): tejpowar (Mon, 16 Jul 2018 09:55:42 GMT): mahoney1 (Mon, 16 Jul 2018 10:12:09 GMT): TyroneWilson (Mon, 16 Jul 2018 11:36:22 GMT): TyroneWilson (Mon, 16 Jul 2018 11:37:35 GMT): TyroneWilson (Mon, 16 Jul 2018 11:37:35 GMT): TyroneWilson (Mon, 16 Jul 2018 11:37:35 GMT): JuanCamilo_0314 (Mon, 16 Jul 2018 11:40:07 GMT): JuanCamilo_0314 (Mon, 16 Jul 2018 11:53:13 GMT): prtk418 (Mon, 16 Jul 2018 12:20:21 GMT): prtk418 (Mon, 16 Jul 2018 12:20:40 GMT): prtk418 (Mon, 16 Jul 2018 12:23:51 GMT): prtk418 (Mon, 16 Jul 2018 12:23:51 GMT): prtk418 (Mon, 16 Jul 2018 12:23:51 GMT): prtk418 (Mon, 16 Jul 2018 12:23:51 GMT): prtk418 (Mon, 16 Jul 2018 12:23:51 GMT): varunagarwal (Mon, 16 Jul 2018 12:25:34 GMT): fedez (Mon, 16 Jul 2018 12:33:38 GMT): mahoney1 (Mon, 16 Jul 2018 12:38:41 GMT): jonhebrews (Mon, 16 Jul 2018 14:31:45 GMT): apaparazzi0329 (Mon, 16 Jul 2018 14:58:03 GMT): jonhebrews (Mon, 16 Jul 2018 14:58:48 GMT): mahoney1 (Mon, 16 Jul 2018 15:38:25 GMT): patrick8289 (Mon, 16 Jul 2018 15:40:22 GMT): patrick8289 (Mon, 16 Jul 2018 15:40:22 GMT): patrick8289 (Mon, 16 Jul 2018 15:40:22 GMT): patrick8289 (Mon, 16 Jul 2018 15:40:22 GMT): patrick8289 (Mon, 16 Jul 2018 15:40:22 GMT): patrick8289 (Mon, 16 Jul 2018 15:40:22 GMT): mahoney1 (Mon, 16 Jul 2018 15:40:39 GMT): mahoney1 (Mon, 16 Jul 2018 15:46:56 GMT): patrick8289 (Mon, 16 Jul 2018 15:47:39 GMT): mahoney1 (Mon, 16 Jul 2018 15:49:53 GMT): patrick8289 (Mon, 16 Jul 2018 15:52:24 GMT): cuevrob (Mon, 16 Jul 2018 15:57:31 GMT): cuevrob (Mon, 16 Jul 2018 15:57:37 GMT): cuevrob (Mon, 16 Jul 2018 15:58:32 GMT): patrick8289 (Mon, 16 Jul 2018 16:13:41 GMT): mahoney1 (Mon, 16 Jul 2018 16:21:52 GMT): mahoney1 (Mon, 16 Jul 2018 16:21:52 GMT): patrick8289 (Mon, 16 Jul 2018 16:22:16 GMT): jonhebrews (Mon, 16 Jul 2018 17:43:54 GMT): jonhebrews (Mon, 16 Jul 2018 17:43:54 GMT): Amir-zsh (Mon, 16 Jul 2018 18:21:40 GMT): ganeshkumarv (Mon, 16 Jul 2018 19:22:40 GMT): ronaldlong46 (Mon, 16 Jul 2018 19:28:39 GMT): ronaldlong46 (Mon, 16 Jul 2018 19:36:22 GMT): ronaldlong46 (Mon, 16 Jul 2018 19:37:13 GMT): ronaldlong46 (Mon, 16 Jul 2018 19:39:31 GMT): ronaldlong46 (Mon, 16 Jul 2018 19:53:49 GMT): pravn1729 (Mon, 16 Jul 2018 20:38:39 GMT): pravn1729 (Mon, 16 Jul 2018 20:40:16 GMT): ronaldlong46 (Mon, 16 Jul 2018 20:43:23 GMT): pravn1729 (Mon, 16 Jul 2018 20:44:42 GMT): ronaldlong46 (Mon, 16 Jul 2018 20:46:40 GMT): ronaldlong46 (Mon, 16 Jul 2018 20:48:01 GMT): pravn1729 (Mon, 16 Jul 2018 20:51:08 GMT): pravn1729 (Mon, 16 Jul 2018 20:51:08 GMT): ronaldlong46 (Mon, 16 Jul 2018 20:52:58 GMT): ronaldlong46 (Mon, 16 Jul 2018 20:53:05 GMT): pravn1729 (Mon, 16 Jul 2018 20:56:45 GMT): ronaldlong46 (Mon, 16 Jul 2018 21:00:26 GMT): pravn1729 (Mon, 16 Jul 2018 21:01:25 GMT): pravn1729 (Mon, 16 Jul 2018 21:02:25 GMT): pravn1729 (Mon, 16 Jul 2018 21:02:58 GMT): diegoduncan21 (Mon, 16 Jul 2018 21:07:16 GMT): diegoduncan21 (Mon, 16 Jul 2018 21:09:02 GMT): ronaldlong46 (Mon, 16 Jul 2018 21:34:13 GMT): KoushKilla (Mon, 16 Jul 2018 22:09:33 GMT): Ladar (Tue, 17 Jul 2018 02:06:49 GMT): yunu_kim (Tue, 17 Jul 2018 04:07:40 GMT): yunu_kim (Tue, 17 Jul 2018 04:07:51 GMT): yunu_kim (Tue, 17 Jul 2018 04:08:17 GMT): yunu_kim (Tue, 17 Jul 2018 04:09:30 GMT): chainFlux (Tue, 17 Jul 2018 04:34:52 GMT): BabuPallam (Tue, 17 Jul 2018 05:05:14 GMT): mastreips (Tue, 17 Jul 2018 05:37:48 GMT): mastreips (Tue, 17 Jul 2018 05:39:00 GMT): pravn1729 (Tue, 17 Jul 2018 05:39:54 GMT): steynsawan (Tue, 17 Jul 2018 05:56:56 GMT): w4721x (Tue, 17 Jul 2018 05:57:51 GMT): hyper-sunder (Tue, 17 Jul 2018 06:00:54 GMT): hyper-sunder (Tue, 17 Jul 2018 06:02:42 GMT): steynsawan (Tue, 17 Jul 2018 06:06:29 GMT): w4721x (Tue, 17 Jul 2018 06:06:44 GMT): w4721x (Tue, 17 Jul 2018 06:11:22 GMT): sadasiba (Tue, 17 Jul 2018 06:36:47 GMT): sadasiba (Tue, 17 Jul 2018 06:36:59 GMT): sadasiba (Tue, 17 Jul 2018 06:37:44 GMT): sadasiba (Tue, 17 Jul 2018 06:37:44 GMT): BabuPallam (Tue, 17 Jul 2018 06:44:36 GMT): BabuPallam (Tue, 17 Jul 2018 06:47:29 GMT): ultimo2020 (Tue, 17 Jul 2018 06:49:41 GMT): prmdmshra (Tue, 17 Jul 2018 06:50:25 GMT): dhruvrana (Tue, 17 Jul 2018 07:06:23 GMT): dhruvrana (Tue, 17 Jul 2018 07:15:52 GMT): dhruvrana (Tue, 17 Jul 2018 07:19:16 GMT): dhruvrana (Tue, 17 Jul 2018 07:19:16 GMT): steynsawan (Tue, 17 Jul 2018 07:23:50 GMT): ultimo2020 (Tue, 17 Jul 2018 07:33:06 GMT): dhruvrana (Tue, 17 Jul 2018 07:40:16 GMT): dhruvrana (Tue, 17 Jul 2018 07:40:25 GMT): steynsawan (Tue, 17 Jul 2018 07:44:58 GMT): steynsawan (Tue, 17 Jul 2018 07:51:02 GMT): Poneey (Tue, 17 Jul 2018 08:03:59 GMT): gut (Tue, 17 Jul 2018 08:11:44 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:16:13 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:16:16 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:16:19 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:16:33 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:16:44 GMT): Poneey (Tue, 17 Jul 2018 08:19:51 GMT): Poneey (Tue, 17 Jul 2018 08:21:38 GMT): gut (Tue, 17 Jul 2018 08:23:17 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:24:34 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:24:36 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:24:41 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:24:42 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:24:59 GMT): gut (Tue, 17 Jul 2018 08:25:06 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:25:08 GMT): Poneey (Tue, 17 Jul 2018 08:28:00 GMT): gut (Tue, 17 Jul 2018 08:31:07 GMT): gut (Tue, 17 Jul 2018 08:31:23 GMT): gut (Tue, 17 Jul 2018 08:32:07 GMT): gut (Tue, 17 Jul 2018 08:33:10 GMT): gut (Tue, 17 Jul 2018 08:34:26 GMT): Poneey (Tue, 17 Jul 2018 08:35:47 GMT): gut (Tue, 17 Jul 2018 08:36:21 GMT): gut (Tue, 17 Jul 2018 08:36:30 GMT): Poneey (Tue, 17 Jul 2018 08:43:19 GMT): rajanashutosh (Tue, 17 Jul 2018 08:46:44 GMT): rajanashutosh (Tue, 17 Jul 2018 08:47:47 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:47:55 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:47:59 GMT): rajanashutosh (Tue, 17 Jul 2018 08:48:56 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:48:58 GMT): rajanashutosh (Tue, 17 Jul 2018 08:49:10 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:49:12 GMT): rajanashutosh (Tue, 17 Jul 2018 08:50:06 GMT): rajanashutosh (Tue, 17 Jul 2018 08:50:15 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:50:16 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:50:36 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:50:41 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:50:43 GMT): rajanashutosh (Tue, 17 Jul 2018 08:51:07 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:51:38 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:51:44 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:51:57 GMT): rajanashutosh (Tue, 17 Jul 2018 08:52:12 GMT): ThomasBereczky (Tue, 17 Jul 2018 08:52:31 GMT): rajanashutosh (Tue, 17 Jul 2018 08:54:40 GMT): lassejarlstrom (Tue, 17 Jul 2018 08:54:44 GMT): rajanashutosh (Tue, 17 Jul 2018 08:54:57 GMT): lassejarlstrom (Tue, 17 Jul 2018 08:55:03 GMT): rajanashutosh (Tue, 17 Jul 2018 08:55:11 GMT): rajanashutosh (Tue, 17 Jul 2018 08:56:17 GMT): lassejarlstrom (Tue, 17 Jul 2018 08:56:27 GMT): lassejarlstrom (Tue, 17 Jul 2018 08:56:58 GMT): rajanashutosh (Tue, 17 Jul 2018 08:57:09 GMT): rajanashutosh (Tue, 17 Jul 2018 08:58:29 GMT): mahoney1 (Tue, 17 Jul 2018 09:06:53 GMT): mahoney1 (Tue, 17 Jul 2018 09:07:52 GMT): mahoney1 (Tue, 17 Jul 2018 09:08:50 GMT): mahoney1 (Tue, 17 Jul 2018 09:08:50 GMT): mahoney1 (Tue, 17 Jul 2018 09:12:28 GMT): koineramitranjan (Tue, 17 Jul 2018 09:25:50 GMT): koineramitranjan (Tue, 17 Jul 2018 09:26:02 GMT): koineramitranjan (Tue, 17 Jul 2018 09:26:08 GMT): mahoney1 (Tue, 17 Jul 2018 09:28:13 GMT): mahoney1 (Tue, 17 Jul 2018 09:28:46 GMT): koineramitranjan (Tue, 17 Jul 2018 09:29:03 GMT): mahoney1 (Tue, 17 Jul 2018 10:04:37 GMT): SudheerKaspa (Tue, 17 Jul 2018 10:21:28 GMT): SudheerKaspa (Tue, 17 Jul 2018 10:22:14 GMT): Ladar (Tue, 17 Jul 2018 10:58:01 GMT): vudathasaiomkar (Tue, 17 Jul 2018 11:23:55 GMT): Ladar (Tue, 17 Jul 2018 11:26:29 GMT): dhruvrana (Tue, 17 Jul 2018 11:28:12 GMT): dhruvrana (Tue, 17 Jul 2018 11:28:38 GMT): dhruvrana (Tue, 17 Jul 2018 11:28:47 GMT): dhruvrana (Tue, 17 Jul 2018 11:28:51 GMT): dhruvrana (Tue, 17 Jul 2018 11:28:51 GMT): gewing (Tue, 17 Jul 2018 11:37:17 GMT): mahoney1 (Tue, 17 Jul 2018 11:38:11 GMT): Ladar (Tue, 17 Jul 2018 11:43:45 GMT): Ladar (Tue, 17 Jul 2018 11:45:27 GMT): dhruvrana (Tue, 17 Jul 2018 11:45:44 GMT): dhruvrana (Tue, 17 Jul 2018 11:46:07 GMT): mahoney1 (Tue, 17 Jul 2018 11:46:33 GMT): Ladar (Tue, 17 Jul 2018 11:48:22 GMT): Ladar (Tue, 17 Jul 2018 11:48:25 GMT): Ladar (Tue, 17 Jul 2018 11:48:35 GMT): dhruvrana (Tue, 17 Jul 2018 11:48:57 GMT): dhruvrana (Tue, 17 Jul 2018 11:49:45 GMT): dhruvrana (Tue, 17 Jul 2018 11:50:08 GMT): Ladar (Tue, 17 Jul 2018 11:50:25 GMT): steynsawan (Tue, 17 Jul 2018 11:51:04 GMT): mahoney1 (Tue, 17 Jul 2018 11:58:43 GMT): callmeashok (Tue, 17 Jul 2018 12:06:57 GMT): callmeashok (Tue, 17 Jul 2018 12:10:21 GMT): Ladar (Tue, 17 Jul 2018 12:11:35 GMT): callmeashok (Tue, 17 Jul 2018 12:15:03 GMT): callmeashok (Tue, 17 Jul 2018 12:15:32 GMT): lassejarlstrom (Tue, 17 Jul 2018 12:15:40 GMT): lassejarlstrom (Tue, 17 Jul 2018 12:15:40 GMT): callmeashok (Tue, 17 Jul 2018 12:15:40 GMT): Ladar (Tue, 17 Jul 2018 12:17:03 GMT): Ladar (Tue, 17 Jul 2018 12:17:07 GMT): Ladar (Tue, 17 Jul 2018 12:18:06 GMT): maniyas (Tue, 17 Jul 2018 12:21:16 GMT): callmeashok (Tue, 17 Jul 2018 12:21:34 GMT): maniyas (Tue, 17 Jul 2018 12:21:44 GMT): maniyas (Tue, 17 Jul 2018 12:22:26 GMT): rajanashutosh (Tue, 17 Jul 2018 12:22:29 GMT): rajanashutosh (Tue, 17 Jul 2018 12:22:35 GMT): maniyas (Tue, 17 Jul 2018 12:22:47 GMT): Ladar (Tue, 17 Jul 2018 12:23:09 GMT): maniyas (Tue, 17 Jul 2018 12:23:31 GMT): Ladar (Tue, 17 Jul 2018 12:24:10 GMT): maniyas (Tue, 17 Jul 2018 12:25:04 GMT): Ladar (Tue, 17 Jul 2018 12:25:45 GMT): maniyas (Tue, 17 Jul 2018 12:26:43 GMT): maniyas (Tue, 17 Jul 2018 12:27:01 GMT): Ladar (Tue, 17 Jul 2018 12:28:33 GMT): maniyas (Tue, 17 Jul 2018 12:28:58 GMT): Ladar (Tue, 17 Jul 2018 12:29:52 GMT): Ladar (Tue, 17 Jul 2018 12:31:15 GMT): maniyas (Tue, 17 Jul 2018 12:31:33 GMT): maniyas (Tue, 17 Jul 2018 12:32:00 GMT): Ladar (Tue, 17 Jul 2018 12:32:08 GMT): Ladar (Tue, 17 Jul 2018 12:32:22 GMT): Ladar (Tue, 17 Jul 2018 12:32:37 GMT): maniyas (Tue, 17 Jul 2018 12:33:17 GMT): w4721x (Tue, 17 Jul 2018 12:33:44 GMT): maniyas (Tue, 17 Jul 2018 12:33:46 GMT): Ladar (Tue, 17 Jul 2018 12:34:17 GMT): Ladar (Tue, 17 Jul 2018 12:34:37 GMT): Ladar (Tue, 17 Jul 2018 12:35:51 GMT): maniyas (Tue, 17 Jul 2018 12:37:21 GMT): w4721x (Tue, 17 Jul 2018 12:37:26 GMT): w4721x (Tue, 17 Jul 2018 12:37:40 GMT): w4721x (Tue, 17 Jul 2018 12:39:01 GMT): Ladar (Tue, 17 Jul 2018 12:39:10 GMT): Ladar (Tue, 17 Jul 2018 12:40:15 GMT): w4721x (Tue, 17 Jul 2018 12:40:41 GMT): Ladar (Tue, 17 Jul 2018 12:41:48 GMT): Ladar (Tue, 17 Jul 2018 12:42:36 GMT): maniyas (Tue, 17 Jul 2018 12:52:05 GMT): lassejarlstrom (Tue, 17 Jul 2018 12:54:49 GMT): maniyas (Tue, 17 Jul 2018 12:55:13 GMT): maniyas (Tue, 17 Jul 2018 12:56:55 GMT): Mahadream (Tue, 17 Jul 2018 12:58:12 GMT): Poneey (Tue, 17 Jul 2018 13:03:57 GMT): AmanMisra (Tue, 17 Jul 2018 13:22:11 GMT): sudhir.kumawat (Tue, 17 Jul 2018 13:39:53 GMT): MANVENDRAWAGADRE (Tue, 17 Jul 2018 14:06:31 GMT): apaparazzi0329 (Tue, 17 Jul 2018 14:09:58 GMT): apaparazzi0329 (Tue, 17 Jul 2018 14:10:12 GMT): mahoney1 (Tue, 17 Jul 2018 14:29:14 GMT): MANVENDRAWAGADRE (Tue, 17 Jul 2018 14:30:21 GMT): MANVENDRAWAGADRE (Tue, 17 Jul 2018 14:30:53 GMT): apaparazzi0329 (Tue, 17 Jul 2018 14:40:06 GMT): mahoney1 (Tue, 17 Jul 2018 14:40:51 GMT): mahoney1 (Tue, 17 Jul 2018 14:40:51 GMT): MANVENDRAWAGADRE (Tue, 17 Jul 2018 14:49:13 GMT): mahoney1 (Tue, 17 Jul 2018 15:02:20 GMT): mahoney1 (Tue, 17 Jul 2018 15:02:20 GMT): apaparazzi0329 (Tue, 17 Jul 2018 15:08:47 GMT): SwapneshNaik (Tue, 17 Jul 2018 16:33:57 GMT): rajanashutosh (Tue, 17 Jul 2018 17:29:49 GMT): CJP (Tue, 17 Jul 2018 17:42:50 GMT): annumberhocker (Tue, 17 Jul 2018 18:12:18 GMT): rajanashutosh (Tue, 17 Jul 2018 18:52:22 GMT): moficodes (Tue, 17 Jul 2018 19:06:28 GMT): KoushKilla (Tue, 17 Jul 2018 21:19:04 GMT): KoushKilla (Tue, 17 Jul 2018 21:19:35 GMT): KoushKilla (Tue, 17 Jul 2018 21:22:10 GMT): KoushKilla (Tue, 17 Jul 2018 21:22:36 GMT): patrick8289 (Tue, 17 Jul 2018 22:29:50 GMT): ronaldlong46 (Tue, 17 Jul 2018 23:47:45 GMT): KoushKilla (Tue, 17 Jul 2018 23:58:39 GMT): KoushKilla (Tue, 17 Jul 2018 23:59:27 GMT): KoushKilla (Tue, 17 Jul 2018 23:59:48 GMT): KoushKilla (Wed, 18 Jul 2018 00:00:12 GMT): KoushKilla (Wed, 18 Jul 2018 00:03:35 GMT): rajanashutosh (Wed, 18 Jul 2018 03:41:20 GMT): rajanashutosh (Wed, 18 Jul 2018 03:41:54 GMT): rajanashutosh (Wed, 18 Jul 2018 03:44:32 GMT): howdyeyey (Wed, 18 Jul 2018 04:52:48 GMT): howdyeyey (Wed, 18 Jul 2018 04:53:03 GMT): howdyeyey (Wed, 18 Jul 2018 04:57:57 GMT): howdyeyey (Wed, 18 Jul 2018 04:57:57 GMT): howdyeyey (Wed, 18 Jul 2018 05:03:39 GMT): steynsawan (Wed, 18 Jul 2018 05:37:14 GMT): abityildiz (Wed, 18 Jul 2018 05:55:33 GMT): AZ0ZYW0U5 (Wed, 18 Jul 2018 05:55:51 GMT): AZ0ZYW0U5 (Wed, 18 Jul 2018 06:00:40 GMT): maniyas (Wed, 18 Jul 2018 06:05:20 GMT): maniyas (Wed, 18 Jul 2018 06:05:34 GMT): maniyas (Wed, 18 Jul 2018 06:05:34 GMT): howdyeyey (Wed, 18 Jul 2018 06:06:48 GMT): maniyas (Wed, 18 Jul 2018 06:07:21 GMT): maniyas (Wed, 18 Jul 2018 06:07:35 GMT): howdyeyey (Wed, 18 Jul 2018 06:08:47 GMT): maniyas (Wed, 18 Jul 2018 06:11:35 GMT): howdyeyey (Wed, 18 Jul 2018 06:11:46 GMT): howdyeyey (Wed, 18 Jul 2018 06:11:55 GMT): maniyas (Wed, 18 Jul 2018 06:12:36 GMT): sundarsuman1994 (Wed, 18 Jul 2018 06:13:18 GMT): maniyas (Wed, 18 Jul 2018 06:13:45 GMT): maniyas (Wed, 18 Jul 2018 06:14:52 GMT): maniyas (Wed, 18 Jul 2018 06:16:26 GMT): choco_coder (Wed, 18 Jul 2018 06:20:16 GMT): nabheetmadan (Wed, 18 Jul 2018 06:30:35 GMT): iwinoto (Wed, 18 Jul 2018 07:13:31 GMT): dhruvrana (Wed, 18 Jul 2018 07:16:52 GMT): Poneey (Wed, 18 Jul 2018 07:20:56 GMT): lassejarlstrom (Wed, 18 Jul 2018 07:24:21 GMT): lassejarlstrom (Wed, 18 Jul 2018 07:24:21 GMT): wangdong (Wed, 18 Jul 2018 07:40:59 GMT): wangdong (Wed, 18 Jul 2018 07:41:11 GMT): mahoney1 (Wed, 18 Jul 2018 08:39:46 GMT): mahoney1 (Wed, 18 Jul 2018 08:40:46 GMT): mahoney1 (Wed, 18 Jul 2018 08:40:46 GMT): wangdong (Wed, 18 Jul 2018 08:42:53 GMT): mahoney1 (Wed, 18 Jul 2018 08:47:39 GMT): choco_coder (Wed, 18 Jul 2018 09:04:21 GMT): mahoney1 (Wed, 18 Jul 2018 09:18:00 GMT): MariaMoreno98 (Wed, 18 Jul 2018 09:19:47 GMT): MariaMoreno98 (Wed, 18 Jul 2018 09:20:37 GMT): MariaMoreno98 (Wed, 18 Jul 2018 09:21:01 GMT): MariaMoreno98 (Wed, 18 Jul 2018 09:22:04 GMT): MariaMoreno98 (Wed, 18 Jul 2018 09:23:02 GMT): Unicow (Wed, 18 Jul 2018 09:24:27 GMT): Poneey (Wed, 18 Jul 2018 09:25:15 GMT): MariaMoreno98 (Wed, 18 Jul 2018 09:32:14 GMT): MariaMoreno98 (Wed, 18 Jul 2018 09:34:30 GMT): rajanashutosh (Wed, 18 Jul 2018 09:36:39 GMT): Poneey (Wed, 18 Jul 2018 09:41:46 GMT): MariaMoreno98 (Wed, 18 Jul 2018 09:49:26 GMT): mahoney1 (Wed, 18 Jul 2018 09:50:20 GMT): mahoney1 (Wed, 18 Jul 2018 09:50:20 GMT): Poneey (Wed, 18 Jul 2018 09:51:54 GMT): Poneey (Wed, 18 Jul 2018 09:52:13 GMT): amritsharma (Wed, 18 Jul 2018 09:59:56 GMT): mahoney1 (Wed, 18 Jul 2018 10:04:00 GMT): mahoney1 (Wed, 18 Jul 2018 10:11:31 GMT): mahoney1 (Wed, 18 Jul 2018 10:11:31 GMT): Varun2887 (Wed, 18 Jul 2018 10:31:29 GMT): sudhir.kumawat (Wed, 18 Jul 2018 10:38:38 GMT): FlavioSS (Wed, 18 Jul 2018 10:50:05 GMT): mahoney1 (Wed, 18 Jul 2018 10:51:44 GMT): saeedi (Wed, 18 Jul 2018 10:58:48 GMT): callmeashok (Wed, 18 Jul 2018 11:26:17 GMT): lassejarlstrom (Wed, 18 Jul 2018 11:31:18 GMT): lassejarlstrom (Wed, 18 Jul 2018 11:31:18 GMT): Poneey (Wed, 18 Jul 2018 11:31:39 GMT): mahoney1 (Wed, 18 Jul 2018 11:32:07 GMT): mahoney1 (Wed, 18 Jul 2018 11:33:27 GMT): mahoney1 (Wed, 18 Jul 2018 11:33:27 GMT): callmeashok (Wed, 18 Jul 2018 11:33:47 GMT): mdvenkatesh (Wed, 18 Jul 2018 11:45:01 GMT): amritsharma (Wed, 18 Jul 2018 11:54:40 GMT): Mahadream (Wed, 18 Jul 2018 12:04:07 GMT): Mahadream (Wed, 18 Jul 2018 12:04:07 GMT): Poneey (Wed, 18 Jul 2018 12:04:30 GMT): Poneey (Wed, 18 Jul 2018 12:06:22 GMT): Mahadream (Wed, 18 Jul 2018 12:11:15 GMT): amritsharma (Wed, 18 Jul 2018 12:11:57 GMT): Poneey (Wed, 18 Jul 2018 12:16:21 GMT): Poneey (Wed, 18 Jul 2018 12:18:31 GMT): jaswanth (Wed, 18 Jul 2018 12:20:10 GMT): jaswanth (Wed, 18 Jul 2018 12:20:10 GMT): Mahadream (Wed, 18 Jul 2018 12:22:14 GMT): ajay560 (Wed, 18 Jul 2018 12:28:13 GMT): ajay560 (Wed, 18 Jul 2018 12:29:08 GMT): amritsharma (Wed, 18 Jul 2018 12:34:07 GMT): ajay560 (Wed, 18 Jul 2018 12:35:46 GMT): Poneey (Wed, 18 Jul 2018 12:46:43 GMT): amritsharma (Wed, 18 Jul 2018 12:51:19 GMT): amritsharma (Wed, 18 Jul 2018 12:54:31 GMT): Mahadream (Wed, 18 Jul 2018 12:54:47 GMT): amritsharma (Wed, 18 Jul 2018 12:57:19 GMT): Jyotirmoy (Wed, 18 Jul 2018 13:16:47 GMT): Poneey (Wed, 18 Jul 2018 13:17:16 GMT): Poneey (Wed, 18 Jul 2018 13:21:10 GMT): Ishan (Wed, 18 Jul 2018 13:22:39 GMT): Ishan (Wed, 18 Jul 2018 13:22:50 GMT): mahoney1 (Wed, 18 Jul 2018 13:23:19 GMT): mahoney1 (Wed, 18 Jul 2018 13:23:19 GMT): Ishan (Wed, 18 Jul 2018 13:24:11 GMT): Ishan (Wed, 18 Jul 2018 13:24:42 GMT): amritsharma (Wed, 18 Jul 2018 13:26:47 GMT): mahoney1 (Wed, 18 Jul 2018 13:27:29 GMT): Ishan (Wed, 18 Jul 2018 13:28:31 GMT): Ishan (Wed, 18 Jul 2018 13:28:41 GMT): Ishan (Wed, 18 Jul 2018 13:28:48 GMT): Ishan (Wed, 18 Jul 2018 13:29:06 GMT): uber.twin (Wed, 18 Jul 2018 13:35:46 GMT): Jyotirmoy (Wed, 18 Jul 2018 13:37:36 GMT): mahoney1 (Wed, 18 Jul 2018 13:37:53 GMT): mahoney1 (Wed, 18 Jul 2018 13:41:17 GMT): mahoney1 (Wed, 18 Jul 2018 13:52:33 GMT): Poneey (Wed, 18 Jul 2018 14:18:13 GMT): DenisDoronin (Wed, 18 Jul 2018 14:43:28 GMT): DenisDoronin (Wed, 18 Jul 2018 14:44:46 GMT): Fredtoul (Wed, 18 Jul 2018 15:07:27 GMT): Fredtoul (Wed, 18 Jul 2018 15:10:46 GMT): AnithaReddy (Wed, 18 Jul 2018 15:16:53 GMT): AnithaReddy (Wed, 18 Jul 2018 15:17:17 GMT): AnithaReddy (Wed, 18 Jul 2018 15:17:25 GMT): AnithaReddy (Wed, 18 Jul 2018 15:18:03 GMT): guilhermesimoes (Wed, 18 Jul 2018 15:20:40 GMT): apaparazzi0329 (Wed, 18 Jul 2018 15:38:41 GMT): apaparazzi0329 (Wed, 18 Jul 2018 15:38:52 GMT): apaparazzi0329 (Wed, 18 Jul 2018 15:40:11 GMT): apaparazzi0329 (Wed, 18 Jul 2018 15:43:54 GMT): apaparazzi0329 (Wed, 18 Jul 2018 15:45:15 GMT): apaparazzi0329 (Wed, 18 Jul 2018 15:46:34 GMT): mahoney1 (Wed, 18 Jul 2018 16:00:38 GMT): mahoney1 (Wed, 18 Jul 2018 16:00:38 GMT): mahoney1 (Wed, 18 Jul 2018 16:02:13 GMT): mahoney1 (Wed, 18 Jul 2018 16:03:31 GMT): mahoney1 (Wed, 18 Jul 2018 16:06:45 GMT): mahoney1 (Wed, 18 Jul 2018 16:09:56 GMT): apaparazzi0329 (Wed, 18 Jul 2018 16:16:30 GMT): KushagraTiwary (Wed, 18 Jul 2018 16:46:35 GMT): KushagraTiwary (Wed, 18 Jul 2018 16:46:42 GMT): cagdasozt (Wed, 18 Jul 2018 16:48:05 GMT): cagdasozt (Wed, 18 Jul 2018 16:48:18 GMT): cagdasozt (Wed, 18 Jul 2018 16:51:55 GMT): cagdasozt (Wed, 18 Jul 2018 16:52:22 GMT): cagdasozt (Wed, 18 Jul 2018 16:52:47 GMT): cagdasozt (Wed, 18 Jul 2018 16:52:52 GMT): cagdasozt (Wed, 18 Jul 2018 16:57:32 GMT): cagdasozt (Wed, 18 Jul 2018 16:57:33 GMT): MuhammadSalah (Wed, 18 Jul 2018 17:14:46 GMT): MuhammadSalah (Wed, 18 Jul 2018 17:15:13 GMT): cagdasozt (Wed, 18 Jul 2018 17:19:53 GMT): cagdasozt (Wed, 18 Jul 2018 17:20:10 GMT): cagdasozt (Wed, 18 Jul 2018 17:20:35 GMT): KoushKilla (Wed, 18 Jul 2018 17:44:51 GMT): MuhammadSalah (Wed, 18 Jul 2018 17:48:17 GMT): MuhammadSalah (Wed, 18 Jul 2018 17:48:54 GMT): cagdasozt (Wed, 18 Jul 2018 17:50:01 GMT): saeedi (Wed, 18 Jul 2018 18:10:09 GMT): KoushKilla (Wed, 18 Jul 2018 18:22:26 GMT): KoushKilla (Wed, 18 Jul 2018 18:22:28 GMT): KoushKilla (Wed, 18 Jul 2018 18:22:29 GMT): ruairih (Wed, 18 Jul 2018 19:01:51 GMT): ruairih (Wed, 18 Jul 2018 19:02:13 GMT): mdimovich (Wed, 18 Jul 2018 19:36:24 GMT): DarrenMackenzie (Wed, 18 Jul 2018 19:36:56 GMT): DarrenMackenzie (Wed, 18 Jul 2018 19:38:05 GMT): DarrenMackenzie (Wed, 18 Jul 2018 19:39:47 GMT): DarrenMackenzie (Wed, 18 Jul 2018 19:39:54 GMT): lassejarlstrom (Wed, 18 Jul 2018 20:22:19 GMT): accuarion (Wed, 18 Jul 2018 21:13:21 GMT): webzingers (Wed, 18 Jul 2018 22:48:58 GMT): KoushKilla (Wed, 18 Jul 2018 23:02:03 GMT): KoushKilla (Wed, 18 Jul 2018 23:02:27 GMT): webzingers (Wed, 18 Jul 2018 23:18:25 GMT): JeffreyDeason (Wed, 18 Jul 2018 23:56:55 GMT): newthinker (Thu, 19 Jul 2018 01:58:52 GMT): samir.tata (Thu, 19 Jul 2018 03:54:17 GMT): rishabh1102 (Thu, 19 Jul 2018 05:23:16 GMT): rishabh1102 (Thu, 19 Jul 2018 05:23:55 GMT): labcoinpoc (Thu, 19 Jul 2018 05:27:05 GMT): amritsharma (Thu, 19 Jul 2018 05:40:24 GMT): amritsharma (Thu, 19 Jul 2018 05:40:54 GMT): AnithaReddy (Thu, 19 Jul 2018 05:51:33 GMT): SamatchaT (Thu, 19 Jul 2018 06:06:48 GMT): ParthPatil (Thu, 19 Jul 2018 06:08:30 GMT): bh4rtp (Thu, 19 Jul 2018 06:23:34 GMT): VadimInshakov (Thu, 19 Jul 2018 06:34:50 GMT): rishabh1102 (Thu, 19 Jul 2018 06:48:05 GMT): sudhir.kumawat (Thu, 19 Jul 2018 06:51:29 GMT): hyper-sunder (Thu, 19 Jul 2018 06:56:24 GMT): Fredtoul (Thu, 19 Jul 2018 07:05:58 GMT): muchiri (Thu, 19 Jul 2018 07:09:33 GMT): Poneey (Thu, 19 Jul 2018 07:11:42 GMT): rushiraj111 (Thu, 19 Jul 2018 07:12:20 GMT): davidkel (Thu, 19 Jul 2018 07:26:26 GMT): thPart (Thu, 19 Jul 2018 07:39:38 GMT): labcoinpoc (Thu, 19 Jul 2018 07:59:45 GMT): gut (Thu, 19 Jul 2018 08:07:53 GMT): gut (Thu, 19 Jul 2018 08:11:53 GMT): gut (Thu, 19 Jul 2018 08:12:58 GMT): labcoinpoc (Thu, 19 Jul 2018 08:15:27 GMT): pravn1729 (Thu, 19 Jul 2018 08:36:03 GMT): rthatcher (Thu, 19 Jul 2018 09:08:23 GMT): RiehaB (Thu, 19 Jul 2018 09:09:43 GMT): vietanh (Thu, 19 Jul 2018 09:11:26 GMT): rthatcher (Thu, 19 Jul 2018 09:17:57 GMT): rthatcher (Thu, 19 Jul 2018 09:17:57 GMT): ultimo2020 (Thu, 19 Jul 2018 09:18:12 GMT): ultimo2020 (Thu, 19 Jul 2018 09:18:20 GMT): ultimo2020 (Thu, 19 Jul 2018 09:18:29 GMT): Poneey (Thu, 19 Jul 2018 09:46:13 GMT): ultimo2020 (Thu, 19 Jul 2018 09:47:07 GMT): SandeepPerugu (Thu, 19 Jul 2018 09:48:26 GMT): mahoney1 (Thu, 19 Jul 2018 10:02:49 GMT): mahoney1 (Thu, 19 Jul 2018 10:02:49 GMT): VadimInshakov (Thu, 19 Jul 2018 10:15:28 GMT): gut (Thu, 19 Jul 2018 10:35:58 GMT): RocMax (Thu, 19 Jul 2018 10:39:07 GMT): RocMax (Thu, 19 Jul 2018 10:39:07 GMT): RocMax (Thu, 19 Jul 2018 10:39:07 GMT): RocMax (Thu, 19 Jul 2018 10:39:07 GMT): RocMax (Thu, 19 Jul 2018 10:39:07 GMT): mahoney1 (Thu, 19 Jul 2018 11:30:11 GMT): davidkel (Thu, 19 Jul 2018 11:46:53 GMT): rajasushanth (Thu, 19 Jul 2018 11:49:02 GMT): DenisDoronin (Thu, 19 Jul 2018 11:53:42 GMT): RocMax (Thu, 19 Jul 2018 12:36:55 GMT): ndatebayo (Thu, 19 Jul 2018 12:45:12 GMT): mahoney1 (Thu, 19 Jul 2018 12:59:04 GMT): mahoney1 (Thu, 19 Jul 2018 12:59:04 GMT): mahoney1 (Thu, 19 Jul 2018 13:06:38 GMT): KushagraTiwary (Thu, 19 Jul 2018 13:22:51 GMT): mahoney1 (Thu, 19 Jul 2018 13:23:59 GMT): mahoney1 (Thu, 19 Jul 2018 13:23:59 GMT): waleed (Thu, 19 Jul 2018 13:27:24 GMT): mahoney1 (Thu, 19 Jul 2018 13:52:25 GMT): rthatcher (Thu, 19 Jul 2018 13:55:59 GMT): Joshua.Katowitz (Thu, 19 Jul 2018 13:56:14 GMT): Joshua.Katowitz (Thu, 19 Jul 2018 13:58:09 GMT): rthatcher (Thu, 19 Jul 2018 13:59:56 GMT): fedez (Thu, 19 Jul 2018 14:10:21 GMT): mahoney1 (Thu, 19 Jul 2018 14:26:45 GMT): mahoney1 (Thu, 19 Jul 2018 14:26:45 GMT): KushagraTiwary (Thu, 19 Jul 2018 14:29:14 GMT): DenisDoronin (Thu, 19 Jul 2018 14:31:27 GMT): fedez (Thu, 19 Jul 2018 14:36:07 GMT): gbibeaulaviolette (Thu, 19 Jul 2018 14:36:55 GMT): gbibeaulaviolette (Thu, 19 Jul 2018 14:37:47 GMT): fedez (Thu, 19 Jul 2018 14:39:14 GMT): mahoney1 (Thu, 19 Jul 2018 14:44:07 GMT): mahoney1 (Thu, 19 Jul 2018 14:44:07 GMT): VadimInshakov (Thu, 19 Jul 2018 14:48:48 GMT): VadimInshakov (Thu, 19 Jul 2018 14:48:48 GMT): VadimInshakov (Thu, 19 Jul 2018 14:48:48 GMT): mahoney1 (Thu, 19 Jul 2018 14:48:59 GMT): rthatcher (Thu, 19 Jul 2018 15:18:31 GMT): gbibeaulaviolette (Thu, 19 Jul 2018 15:19:01 GMT): mahoney1 (Thu, 19 Jul 2018 15:23:23 GMT): rthatcher (Thu, 19 Jul 2018 15:23:27 GMT): mahoney1 (Thu, 19 Jul 2018 15:23:29 GMT): mahoney1 (Thu, 19 Jul 2018 15:23:29 GMT): mahoney1 (Thu, 19 Jul 2018 15:24:02 GMT): KushagraTiwary (Thu, 19 Jul 2018 15:29:16 GMT): rthatcher (Thu, 19 Jul 2018 15:32:57 GMT): mahoney1 (Thu, 19 Jul 2018 15:32:57 GMT): tennenjl (Thu, 19 Jul 2018 15:34:41 GMT): KushagraTiwary (Thu, 19 Jul 2018 15:39:49 GMT): FlorentinoSainz (Thu, 19 Jul 2018 15:51:38 GMT): FlorentinoSainz (Thu, 19 Jul 2018 15:51:38 GMT): FlorentinoSainz (Thu, 19 Jul 2018 15:51:38 GMT): FlorentinoSainz (Thu, 19 Jul 2018 15:51:38 GMT): FlorentinoSainz (Thu, 19 Jul 2018 15:51:38 GMT): Drest (Thu, 19 Jul 2018 15:53:10 GMT): Drest (Thu, 19 Jul 2018 15:53:10 GMT): Drest (Thu, 19 Jul 2018 15:53:10 GMT): FlorentinoSainz (Thu, 19 Jul 2018 15:53:12 GMT): rthatcher (Thu, 19 Jul 2018 15:58:59 GMT): VadimInshakov (Thu, 19 Jul 2018 16:05:00 GMT): KushagraTiwary (Thu, 19 Jul 2018 16:08:28 GMT): waleed (Thu, 19 Jul 2018 17:02:50 GMT): mahoney1 (Thu, 19 Jul 2018 17:08:36 GMT): pravn1729 (Thu, 19 Jul 2018 18:01:00 GMT): waleed (Thu, 19 Jul 2018 19:09:45 GMT): dpolicastro (Thu, 19 Jul 2018 19:14:35 GMT): waleed (Thu, 19 Jul 2018 19:25:26 GMT): dpolicastro (Thu, 19 Jul 2018 21:20:20 GMT): KushagraTiwary (Thu, 19 Jul 2018 21:29:00 GMT): cuevrob (Thu, 19 Jul 2018 21:38:33 GMT): howdyeyey (Fri, 20 Jul 2018 01:00:41 GMT): howdyeyey (Fri, 20 Jul 2018 01:00:58 GMT): Juehai (Fri, 20 Jul 2018 02:16:57 GMT): ashvinnihalani (Fri, 20 Jul 2018 03:02:08 GMT): ashvinnihalani (Fri, 20 Jul 2018 03:02:08 GMT): Varun2887 (Fri, 20 Jul 2018 04:05:54 GMT): pandagopal (Fri, 20 Jul 2018 05:07:04 GMT): umamaheswarv (Fri, 20 Jul 2018 05:25:50 GMT): labcoinpoc (Fri, 20 Jul 2018 05:26:12 GMT): labcoinpoc (Fri, 20 Jul 2018 05:26:12 GMT): labcoinpoc (Fri, 20 Jul 2018 05:26:12 GMT): labcoinpoc (Fri, 20 Jul 2018 05:26:12 GMT): labcoinpoc (Fri, 20 Jul 2018 05:26:12 GMT): labcoinpoc (Fri, 20 Jul 2018 05:26:12 GMT): labcoinpoc (Fri, 20 Jul 2018 05:26:12 GMT): ra_w (Fri, 20 Jul 2018 05:40:14 GMT): SanketPanchamia (Fri, 20 Jul 2018 06:40:50 GMT): SanketPanchamia (Fri, 20 Jul 2018 06:40:53 GMT): umamaheswarv (Fri, 20 Jul 2018 06:56:02 GMT): SanketPanchamia (Fri, 20 Jul 2018 07:01:28 GMT): SanketPanchamia (Fri, 20 Jul 2018 07:01:33 GMT): huxiangdong (Fri, 20 Jul 2018 07:02:04 GMT): SanketPanchamia (Fri, 20 Jul 2018 07:02:52 GMT): Pranoti (Fri, 20 Jul 2018 07:12:21 GMT): labcoinpoc (Fri, 20 Jul 2018 07:15:46 GMT): labcoinpoc (Fri, 20 Jul 2018 07:15:46 GMT): Pranoti (Fri, 20 Jul 2018 07:18:42 GMT): rthatcher (Fri, 20 Jul 2018 08:11:43 GMT): rthatcher (Fri, 20 Jul 2018 08:14:57 GMT): rthatcher (Fri, 20 Jul 2018 08:14:57 GMT): rthatcher (Fri, 20 Jul 2018 08:14:57 GMT): rthatcher (Fri, 20 Jul 2018 08:14:57 GMT): rthatcher (Fri, 20 Jul 2018 08:28:27 GMT): rthatcher (Fri, 20 Jul 2018 08:34:47 GMT): Drest (Fri, 20 Jul 2018 08:38:41 GMT): Drest (Fri, 20 Jul 2018 08:38:41 GMT): umamaheswarv (Fri, 20 Jul 2018 08:41:52 GMT): rthatcher (Fri, 20 Jul 2018 08:42:15 GMT): rasmusmilz (Fri, 20 Jul 2018 08:45:00 GMT): rthatcher (Fri, 20 Jul 2018 08:48:30 GMT): SanketPanchamia (Fri, 20 Jul 2018 09:05:37 GMT): Mahadream (Fri, 20 Jul 2018 09:10:59 GMT): Mahadream (Fri, 20 Jul 2018 09:10:59 GMT): Juanan_Tejero (Fri, 20 Jul 2018 09:11:28 GMT): Mahadream (Fri, 20 Jul 2018 09:11:43 GMT): Pranoti (Fri, 20 Jul 2018 09:13:29 GMT): Pranoti (Fri, 20 Jul 2018 09:13:29 GMT): Pranoti (Fri, 20 Jul 2018 09:13:29 GMT): mahoney1 (Fri, 20 Jul 2018 09:14:15 GMT): Juanan_Tejero (Fri, 20 Jul 2018 09:14:15 GMT): Juanan_Tejero (Fri, 20 Jul 2018 09:14:46 GMT): Varun2887 (Fri, 20 Jul 2018 09:15:27 GMT): uber.twin (Fri, 20 Jul 2018 09:18:37 GMT): uber.twin (Fri, 20 Jul 2018 09:18:37 GMT): uber.twin (Fri, 20 Jul 2018 09:18:37 GMT): labcoinpoc (Fri, 20 Jul 2018 09:21:16 GMT): mahoney1 (Fri, 20 Jul 2018 09:21:34 GMT): Pranoti (Fri, 20 Jul 2018 09:22:27 GMT): Pranoti (Fri, 20 Jul 2018 09:22:27 GMT): mahoney1 (Fri, 20 Jul 2018 09:23:04 GMT): mahoney1 (Fri, 20 Jul 2018 09:23:04 GMT): rthatcher (Fri, 20 Jul 2018 09:23:28 GMT): Mahadream (Fri, 20 Jul 2018 09:30:20 GMT): mahoney1 (Fri, 20 Jul 2018 09:30:53 GMT): mahoney1 (Fri, 20 Jul 2018 09:30:53 GMT): umamaheswarv (Fri, 20 Jul 2018 09:31:23 GMT): rthatcher (Fri, 20 Jul 2018 09:42:37 GMT): rthatcher (Fri, 20 Jul 2018 09:42:37 GMT): rthatcher (Fri, 20 Jul 2018 09:42:37 GMT): Mahadream (Fri, 20 Jul 2018 09:50:13 GMT): mahoney1 (Fri, 20 Jul 2018 09:57:47 GMT): mahoney1 (Fri, 20 Jul 2018 10:04:10 GMT): Varun2887 (Fri, 20 Jul 2018 10:06:28 GMT): NareshPai (Fri, 20 Jul 2018 10:12:29 GMT): NareshPai (Fri, 20 Jul 2018 10:12:29 GMT): NareshPai (Fri, 20 Jul 2018 10:14:16 GMT): RocMax (Fri, 20 Jul 2018 10:17:28 GMT): varunagarwal (Fri, 20 Jul 2018 10:59:17 GMT): mahoney1 (Fri, 20 Jul 2018 11:18:29 GMT): rthatcher (Fri, 20 Jul 2018 11:18:50 GMT): rishabh1102 (Fri, 20 Jul 2018 11:24:26 GMT): varunagarwal (Fri, 20 Jul 2018 11:31:32 GMT): varunagarwal (Fri, 20 Jul 2018 11:32:00 GMT): varunagarwal (Fri, 20 Jul 2018 11:32:17 GMT): varunagarwal (Fri, 20 Jul 2018 11:35:09 GMT): mahoney1 (Fri, 20 Jul 2018 12:00:08 GMT): uber.twin (Fri, 20 Jul 2018 13:28:00 GMT): Pranoti (Fri, 20 Jul 2018 13:43:19 GMT): sureshtedla (Fri, 20 Jul 2018 14:16:27 GMT): sureshtedla (Fri, 20 Jul 2018 14:16:59 GMT): rthatcher (Fri, 20 Jul 2018 14:22:28 GMT): Pranoti (Fri, 20 Jul 2018 14:25:17 GMT): rthatcher (Fri, 20 Jul 2018 14:28:08 GMT): sureshtedla (Fri, 20 Jul 2018 14:34:23 GMT): sureshtedla (Fri, 20 Jul 2018 14:39:18 GMT): Drest (Fri, 20 Jul 2018 14:44:15 GMT): Drest (Fri, 20 Jul 2018 14:44:15 GMT): Drest (Fri, 20 Jul 2018 14:44:15 GMT): Drest (Fri, 20 Jul 2018 14:44:15 GMT): rthatcher (Fri, 20 Jul 2018 14:55:33 GMT): sureshtedla (Fri, 20 Jul 2018 15:00:50 GMT): sureshtedla (Fri, 20 Jul 2018 15:00:50 GMT): mahoney1 (Fri, 20 Jul 2018 15:03:34 GMT): sureshtedla (Fri, 20 Jul 2018 15:17:51 GMT): rthatcher (Fri, 20 Jul 2018 15:22:37 GMT): mahoney1 (Fri, 20 Jul 2018 16:21:20 GMT): MarioHF (Fri, 20 Jul 2018 16:37:10 GMT): sureshtedla (Fri, 20 Jul 2018 16:53:11 GMT): sureshtedla (Fri, 20 Jul 2018 16:54:35 GMT): mahoney1 (Fri, 20 Jul 2018 16:55:20 GMT): mahoney1 (Fri, 20 Jul 2018 16:55:20 GMT): mahoney1 (Fri, 20 Jul 2018 16:55:20 GMT): MarioHF (Fri, 20 Jul 2018 16:58:51 GMT): hyper-sunder (Fri, 20 Jul 2018 17:02:32 GMT): hyper-sunder (Fri, 20 Jul 2018 17:02:54 GMT): hyper-sunder (Fri, 20 Jul 2018 17:02:56 GMT): hyper-sunder (Fri, 20 Jul 2018 17:04:09 GMT): MarioHF (Fri, 20 Jul 2018 17:04:55 GMT): hyper-sunder (Fri, 20 Jul 2018 17:05:54 GMT): hyper-sunder (Fri, 20 Jul 2018 17:06:11 GMT): hyper-sunder (Fri, 20 Jul 2018 17:07:31 GMT): hyper-sunder (Fri, 20 Jul 2018 17:08:49 GMT): hyper-sunder (Fri, 20 Jul 2018 17:08:56 GMT): hyper-sunder (Fri, 20 Jul 2018 17:09:32 GMT): hyper-sunder (Fri, 20 Jul 2018 17:09:47 GMT): hyper-sunder (Fri, 20 Jul 2018 17:10:06 GMT): MarioHF (Fri, 20 Jul 2018 17:17:11 GMT): hyper-sunder (Fri, 20 Jul 2018 17:17:46 GMT): mahoney1 (Fri, 20 Jul 2018 17:17:50 GMT): hyper-sunder (Fri, 20 Jul 2018 17:19:32 GMT): hyper-sunder (Fri, 20 Jul 2018 17:19:48 GMT): hyper-sunder (Fri, 20 Jul 2018 17:21:08 GMT): hyper-sunder (Fri, 20 Jul 2018 17:21:14 GMT): hyper-sunder (Fri, 20 Jul 2018 17:21:46 GMT): MarioHF (Fri, 20 Jul 2018 17:27:22 GMT): hyper-sunder (Fri, 20 Jul 2018 17:28:48 GMT): hyper-sunder (Fri, 20 Jul 2018 17:36:47 GMT): MarioHF (Fri, 20 Jul 2018 17:53:06 GMT): davidkel (Fri, 20 Jul 2018 18:07:25 GMT): cuevrob (Fri, 20 Jul 2018 19:04:04 GMT): KoushKilla (Fri, 20 Jul 2018 21:26:35 GMT): KoushKilla (Fri, 20 Jul 2018 21:27:03 GMT): KoushKilla (Fri, 20 Jul 2018 21:27:10 GMT): KoushKilla (Fri, 20 Jul 2018 21:27:25 GMT): kgidwani (Fri, 20 Jul 2018 22:31:43 GMT): zia842 (Fri, 20 Jul 2018 23:52:09 GMT): FenixH (Sat, 21 Jul 2018 00:52:13 GMT): FenixH (Sat, 21 Jul 2018 00:52:13 GMT): FenixH (Sat, 21 Jul 2018 00:52:13 GMT): hyper-sunder (Sat, 21 Jul 2018 05:28:11 GMT): Jyotirmoy (Sat, 21 Jul 2018 09:20:33 GMT): varunagarwal (Sat, 21 Jul 2018 15:32:52 GMT): eaazumah (Sat, 21 Jul 2018 17:52:35 GMT): eaazumah (Sat, 21 Jul 2018 18:06:32 GMT): eaazumah (Sat, 21 Jul 2018 18:06:32 GMT): Jerry123 (Sat, 21 Jul 2018 18:16:57 GMT): Jerry123 (Sat, 21 Jul 2018 18:18:09 GMT): eaazumah (Sat, 21 Jul 2018 18:35:17 GMT): davidkel (Sat, 21 Jul 2018 19:11:31 GMT): eaazumah (Sat, 21 Jul 2018 19:30:49 GMT): Jerry123 (Sat, 21 Jul 2018 20:50:28 GMT): SangeetAgarwal (Sat, 21 Jul 2018 21:25:41 GMT): SangeetAgarwal (Sat, 21 Jul 2018 21:27:14 GMT): varunagarwal (Sun, 22 Jul 2018 05:10:35 GMT): Denisscott (Sun, 22 Jul 2018 09:27:26 GMT): Denisscott (Sun, 22 Jul 2018 09:27:47 GMT): Denisscott (Sun, 22 Jul 2018 09:48:11 GMT): davidkel (Sun, 22 Jul 2018 10:09:27 GMT): JaswanthReddyV (Sun, 22 Jul 2018 10:41:25 GMT): rishabh1102 (Sun, 22 Jul 2018 11:19:20 GMT): Jerry123 (Sun, 22 Jul 2018 11:26:16 GMT): Jerry123 (Sun, 22 Jul 2018 11:26:38 GMT): Jerry123 (Sun, 22 Jul 2018 11:27:36 GMT): Jerry123 (Sun, 22 Jul 2018 12:36:17 GMT): nikhildhus (Sun, 22 Jul 2018 14:44:54 GMT): kevinmcmahon (Sun, 22 Jul 2018 14:47:17 GMT): PrafullKotecha (Sun, 22 Jul 2018 18:29:33 GMT): arunmitteam (Sun, 22 Jul 2018 19:49:18 GMT): titog (Sun, 22 Jul 2018 21:28:33 GMT): NareshPai (Mon, 23 Jul 2018 04:23:59 GMT): cutmeurahrudi (Mon, 23 Jul 2018 04:29:28 GMT): NareshPai (Mon, 23 Jul 2018 04:30:08 GMT): knagware9 (Mon, 23 Jul 2018 05:50:29 GMT): knagware9 (Mon, 23 Jul 2018 05:51:10 GMT): Poneey (Mon, 23 Jul 2018 07:11:36 GMT): ronaldlong46 (Mon, 23 Jul 2018 07:28:47 GMT): ronaldlong46 (Mon, 23 Jul 2018 07:35:30 GMT): rthatcher (Mon, 23 Jul 2018 08:18:19 GMT): ultimo2020 (Mon, 23 Jul 2018 08:24:50 GMT): rthatcher (Mon, 23 Jul 2018 08:30:07 GMT): hyper-sunder (Mon, 23 Jul 2018 08:39:42 GMT): hyper-sunder (Mon, 23 Jul 2018 08:39:49 GMT): rthatcher (Mon, 23 Jul 2018 08:42:33 GMT): rthatcher (Mon, 23 Jul 2018 08:47:20 GMT): hyper-sunder (Mon, 23 Jul 2018 08:49:30 GMT): hyper-sunder (Mon, 23 Jul 2018 08:49:46 GMT): rthatcher (Mon, 23 Jul 2018 09:06:08 GMT): hyper-sunder (Mon, 23 Jul 2018 09:11:14 GMT): rthatcher (Mon, 23 Jul 2018 09:16:23 GMT): hyper-sunder (Mon, 23 Jul 2018 09:17:31 GMT): hyper-sunder (Mon, 23 Jul 2018 09:17:58 GMT): lnarasimhan (Mon, 23 Jul 2018 09:24:39 GMT): prtk418 (Mon, 23 Jul 2018 09:44:55 GMT): prtk418 (Mon, 23 Jul 2018 09:44:55 GMT): hyper-sunder (Mon, 23 Jul 2018 09:51:04 GMT): maniyas (Mon, 23 Jul 2018 10:00:30 GMT): maniyas (Mon, 23 Jul 2018 10:00:50 GMT): maniyas (Mon, 23 Jul 2018 10:01:10 GMT): maniyas (Mon, 23 Jul 2018 10:01:19 GMT): ApurvTandon (Mon, 23 Jul 2018 10:03:00 GMT): hyper-sunder (Mon, 23 Jul 2018 10:09:29 GMT): HimanshuQuillhash (Mon, 23 Jul 2018 10:10:01 GMT): rthatcher (Mon, 23 Jul 2018 10:10:13 GMT): HimanshuQuillhash (Mon, 23 Jul 2018 10:11:05 GMT): HimanshuQuillhash (Mon, 23 Jul 2018 10:12:07 GMT): HimanshuQuillhash (Mon, 23 Jul 2018 10:12:26 GMT): ApurvTandon (Mon, 23 Jul 2018 10:15:17 GMT): prtk418 (Mon, 23 Jul 2018 10:17:44 GMT): prtk418 (Mon, 23 Jul 2018 10:17:44 GMT): rthatcher (Mon, 23 Jul 2018 10:19:10 GMT): rthatcher (Mon, 23 Jul 2018 10:20:17 GMT): rthatcher (Mon, 23 Jul 2018 10:21:54 GMT): prtk418 (Mon, 23 Jul 2018 10:23:16 GMT): Anshulmittal (Mon, 23 Jul 2018 12:33:23 GMT): sm1972 (Mon, 23 Jul 2018 13:36:25 GMT): prtk418 (Mon, 23 Jul 2018 13:39:57 GMT): titog (Mon, 23 Jul 2018 15:49:42 GMT): prtk418 (Mon, 23 Jul 2018 16:11:45 GMT): rthatcher (Mon, 23 Jul 2018 16:29:36 GMT): rasmusmilz (Mon, 23 Jul 2018 16:37:51 GMT): rthatcher (Mon, 23 Jul 2018 16:47:01 GMT): mahoney1 (Mon, 23 Jul 2018 16:51:40 GMT): sureshtedla (Mon, 23 Jul 2018 18:33:22 GMT): sureshtedla (Mon, 23 Jul 2018 18:34:10 GMT): sureshtedla (Mon, 23 Jul 2018 18:35:34 GMT): sureshtedla (Mon, 23 Jul 2018 18:36:31 GMT): sureshtedla (Mon, 23 Jul 2018 18:40:38 GMT): titog (Mon, 23 Jul 2018 19:31:27 GMT): mdimovich (Mon, 23 Jul 2018 22:58:00 GMT): titog (Mon, 23 Jul 2018 23:17:51 GMT): davidhu (Tue, 24 Jul 2018 00:22:01 GMT): davidhu (Tue, 24 Jul 2018 00:36:34 GMT): davidhu (Tue, 24 Jul 2018 00:37:27 GMT): howdyeyey (Tue, 24 Jul 2018 00:42:56 GMT): kathunsinger (Tue, 24 Jul 2018 01:01:34 GMT): kathunsinger (Tue, 24 Jul 2018 01:42:48 GMT): karthiksiddulagari (Tue, 24 Jul 2018 03:11:17 GMT): kathunsinger (Tue, 24 Jul 2018 04:36:35 GMT): NareshPai (Tue, 24 Jul 2018 04:38:20 GMT): kathunsinger (Tue, 24 Jul 2018 04:39:27 GMT): kathunsinger (Tue, 24 Jul 2018 04:41:13 GMT): gauravgiri (Tue, 24 Jul 2018 04:45:04 GMT): gauravgiri (Tue, 24 Jul 2018 04:45:04 GMT): Anshulmittal (Tue, 24 Jul 2018 05:25:41 GMT): prtk418 (Tue, 24 Jul 2018 06:18:30 GMT): underbell (Tue, 24 Jul 2018 06:28:10 GMT): AnithaReddy (Tue, 24 Jul 2018 06:40:51 GMT): AnithaReddy (Tue, 24 Jul 2018 06:41:18 GMT): AnithaReddy (Tue, 24 Jul 2018 06:44:01 GMT): Pranoti (Tue, 24 Jul 2018 06:57:12 GMT): ultimo2020 (Tue, 24 Jul 2018 08:08:17 GMT): rthatcher (Tue, 24 Jul 2018 08:28:09 GMT): rthatcher (Tue, 24 Jul 2018 08:31:50 GMT): rthatcher (Tue, 24 Jul 2018 08:39:51 GMT): rthatcher (Tue, 24 Jul 2018 08:46:21 GMT): hyper-sunder (Tue, 24 Jul 2018 08:53:48 GMT): rthatcher (Tue, 24 Jul 2018 09:04:34 GMT): hyper-sunder (Tue, 24 Jul 2018 09:05:44 GMT): Dauphinous (Tue, 24 Jul 2018 09:07:39 GMT): AnithaReddy (Tue, 24 Jul 2018 09:08:43 GMT): hyper-sunder (Tue, 24 Jul 2018 09:16:49 GMT): davidhu (Tue, 24 Jul 2018 09:19:21 GMT): amritsharma (Tue, 24 Jul 2018 09:20:39 GMT): prtk418 (Tue, 24 Jul 2018 09:47:05 GMT): prtk418 (Tue, 24 Jul 2018 09:47:05 GMT): prtk418 (Tue, 24 Jul 2018 09:47:05 GMT): prtk418 (Tue, 24 Jul 2018 09:47:05 GMT): rthatcher (Tue, 24 Jul 2018 09:47:18 GMT): rthatcher (Tue, 24 Jul 2018 09:50:07 GMT): hyper-sunder (Tue, 24 Jul 2018 09:50:37 GMT): rthatcher (Tue, 24 Jul 2018 09:56:43 GMT): Dauphinous (Tue, 24 Jul 2018 09:59:02 GMT): mahoney1 (Tue, 24 Jul 2018 10:01:28 GMT): rthatcher (Tue, 24 Jul 2018 10:01:32 GMT): prtk418 (Tue, 24 Jul 2018 10:03:16 GMT): pawanjois (Tue, 24 Jul 2018 10:03:47 GMT): pawanjois (Tue, 24 Jul 2018 10:08:21 GMT): amritsharma (Tue, 24 Jul 2018 10:13:02 GMT): ChinmayaNanda (Tue, 24 Jul 2018 10:14:21 GMT): pawanjois (Tue, 24 Jul 2018 10:19:43 GMT): pawanjois (Tue, 24 Jul 2018 10:20:34 GMT): pawanjois (Tue, 24 Jul 2018 10:20:37 GMT): pawanjois (Tue, 24 Jul 2018 10:20:37 GMT): davidkel (Tue, 24 Jul 2018 10:31:31 GMT): pawanjois (Tue, 24 Jul 2018 10:32:15 GMT): pawanjois (Tue, 24 Jul 2018 10:32:34 GMT): pawanjois (Tue, 24 Jul 2018 10:34:01 GMT): pawanjois (Tue, 24 Jul 2018 10:34:01 GMT): pawanjois (Tue, 24 Jul 2018 10:34:01 GMT): davidkel (Tue, 24 Jul 2018 11:12:54 GMT): davidkel (Tue, 24 Jul 2018 11:12:54 GMT): mahoney1 (Tue, 24 Jul 2018 11:17:01 GMT): mahoney1 (Tue, 24 Jul 2018 11:17:01 GMT): davidkel (Tue, 24 Jul 2018 11:21:41 GMT): pawanjois (Tue, 24 Jul 2018 11:32:33 GMT): abityildiz (Tue, 24 Jul 2018 11:41:23 GMT): abityildiz (Tue, 24 Jul 2018 12:29:07 GMT): Poneey (Tue, 24 Jul 2018 12:50:58 GMT): mmick (Tue, 24 Jul 2018 13:02:24 GMT): MasthanbeeShaik (Tue, 24 Jul 2018 13:18:10 GMT): mmick (Tue, 24 Jul 2018 13:31:06 GMT): Wilsonli (Tue, 24 Jul 2018 13:54:35 GMT): mahoney1 (Tue, 24 Jul 2018 14:46:14 GMT): mahoney1 (Tue, 24 Jul 2018 14:49:51 GMT): mahoney1 (Tue, 24 Jul 2018 14:49:51 GMT): MasthanbeeShaik (Tue, 24 Jul 2018 15:37:26 GMT): edevil (Tue, 24 Jul 2018 15:42:22 GMT): rthatcher (Tue, 24 Jul 2018 16:08:20 GMT): mdimovich (Tue, 24 Jul 2018 16:55:52 GMT): sureshtedla (Tue, 24 Jul 2018 17:12:25 GMT): MasthanbeeShaik (Tue, 24 Jul 2018 17:44:28 GMT): MasthanbeeShaik (Tue, 24 Jul 2018 17:46:09 GMT): MasthanbeeShaik (Tue, 24 Jul 2018 17:47:00 GMT): MasthanbeeShaik (Tue, 24 Jul 2018 17:47:50 GMT): quangle (Tue, 24 Jul 2018 18:15:50 GMT): quangle (Tue, 24 Jul 2018 18:18:17 GMT): anarodrigues (Tue, 24 Jul 2018 18:53:08 GMT): schan219 (Tue, 24 Jul 2018 18:57:41 GMT): marksta (Tue, 24 Jul 2018 19:02:20 GMT): titog (Tue, 24 Jul 2018 20:09:23 GMT): Jakeeyturner (Tue, 24 Jul 2018 21:16:09 GMT): eaazumah (Tue, 24 Jul 2018 21:30:16 GMT): eaazumah (Tue, 24 Jul 2018 21:30:16 GMT): brockhager (Tue, 24 Jul 2018 22:03:41 GMT): brockhager (Tue, 24 Jul 2018 22:04:05 GMT): ex0 (Wed, 25 Jul 2018 00:09:09 GMT): kwanhoonlee (Wed, 25 Jul 2018 01:08:06 GMT): kwanhoonlee (Wed, 25 Jul 2018 01:09:05 GMT): kathunsinger (Wed, 25 Jul 2018 01:47:42 GMT): howdyeyey (Wed, 25 Jul 2018 03:42:39 GMT): NareshPai (Wed, 25 Jul 2018 03:45:18 GMT): howdyeyey (Wed, 25 Jul 2018 04:03:14 GMT): Varun2887 (Wed, 25 Jul 2018 06:47:57 GMT): Varun2887 (Wed, 25 Jul 2018 06:48:51 GMT): Varun2887 (Wed, 25 Jul 2018 06:49:24 GMT): NareshPai (Wed, 25 Jul 2018 06:50:18 GMT): Varun2887 (Wed, 25 Jul 2018 06:50:25 GMT): Varun2887 (Wed, 25 Jul 2018 06:50:36 GMT): NareshPai (Wed, 25 Jul 2018 06:50:58 GMT): iDix (Wed, 25 Jul 2018 07:02:37 GMT): HimanshuQuillhash (Wed, 25 Jul 2018 07:24:02 GMT): HimanshuQuillhash (Wed, 25 Jul 2018 07:24:06 GMT): satyajitdeshmukh (Wed, 25 Jul 2018 07:26:26 GMT): satyajitdeshmukh (Wed, 25 Jul 2018 07:28:33 GMT): satyajitdeshmukh (Wed, 25 Jul 2018 07:29:05 GMT): satyajitdeshmukh (Wed, 25 Jul 2018 07:30:34 GMT): satyajitdeshmukh (Wed, 25 Jul 2018 07:30:41 GMT): satyajitdeshmukh (Wed, 25 Jul 2018 07:31:05 GMT): wangdong (Wed, 25 Jul 2018 07:42:51 GMT): wangdong (Wed, 25 Jul 2018 07:43:05 GMT): wangdong (Wed, 25 Jul 2018 07:43:13 GMT): wangdong (Wed, 25 Jul 2018 07:43:18 GMT): kariyappals (Wed, 25 Jul 2018 07:44:04 GMT): NareshPai (Wed, 25 Jul 2018 08:15:57 GMT): NareshPai (Wed, 25 Jul 2018 08:15:57 GMT): HimanshuQuillhash (Wed, 25 Jul 2018 08:31:45 GMT): mahoney1 (Wed, 25 Jul 2018 08:32:04 GMT): Juanan_Tejero (Wed, 25 Jul 2018 08:32:19 GMT): Juanan_Tejero (Wed, 25 Jul 2018 08:32:25 GMT): Juanan_Tejero (Wed, 25 Jul 2018 08:32:35 GMT): Juanan_Tejero (Wed, 25 Jul 2018 08:32:51 GMT): Juanan_Tejero (Wed, 25 Jul 2018 08:32:59 GMT): mahoney1 (Wed, 25 Jul 2018 08:39:33 GMT): wangdong (Wed, 25 Jul 2018 08:40:23 GMT): mahoney1 (Wed, 25 Jul 2018 08:45:53 GMT): mahoney1 (Wed, 25 Jul 2018 08:45:53 GMT): mahoney1 (Wed, 25 Jul 2018 08:50:15 GMT): mahoney1 (Wed, 25 Jul 2018 08:55:01 GMT): mahoney1 (Wed, 25 Jul 2018 08:55:01 GMT): HimanshuQuillhash (Wed, 25 Jul 2018 08:56:45 GMT): mahoney1 (Wed, 25 Jul 2018 08:57:47 GMT): rthatcher (Wed, 25 Jul 2018 08:59:43 GMT): mahoney1 (Wed, 25 Jul 2018 08:59:58 GMT): Jakeeyturner (Wed, 25 Jul 2018 09:03:05 GMT): mahoney1 (Wed, 25 Jul 2018 09:17:54 GMT): Juanan_Tejero (Wed, 25 Jul 2018 09:24:48 GMT): ArijitSen (Wed, 25 Jul 2018 09:29:54 GMT): mahoney1 (Wed, 25 Jul 2018 09:33:52 GMT): mahoney1 (Wed, 25 Jul 2018 09:33:52 GMT): mahoney1 (Wed, 25 Jul 2018 09:33:52 GMT): mahoney1 (Wed, 25 Jul 2018 09:33:52 GMT): Drest (Wed, 25 Jul 2018 09:34:06 GMT): Drest (Wed, 25 Jul 2018 09:34:06 GMT): Juanan_Tejero (Wed, 25 Jul 2018 09:36:16 GMT): Varun2887 (Wed, 25 Jul 2018 09:38:57 GMT): Jakeeyturner (Wed, 25 Jul 2018 09:43:01 GMT): Varun2887 (Wed, 25 Jul 2018 09:43:26 GMT): Varun2887 (Wed, 25 Jul 2018 09:43:35 GMT): Varun2887 (Wed, 25 Jul 2018 09:43:55 GMT): Jakeeyturner (Wed, 25 Jul 2018 09:43:57 GMT): Varun2887 (Wed, 25 Jul 2018 09:44:12 GMT): Jakeeyturner (Wed, 25 Jul 2018 09:44:37 GMT): Varun2887 (Wed, 25 Jul 2018 09:45:25 GMT): Jakeeyturner (Wed, 25 Jul 2018 09:47:41 GMT): Jakeeyturner (Wed, 25 Jul 2018 09:48:27 GMT): davidkel (Wed, 25 Jul 2018 09:50:27 GMT): ndatebayo (Wed, 25 Jul 2018 10:00:29 GMT): ndatebayo (Wed, 25 Jul 2018 10:02:28 GMT): Jakeeyturner (Wed, 25 Jul 2018 10:06:34 GMT): Lakshmipadmaja (Wed, 25 Jul 2018 10:08:50 GMT): mahoney1 (Wed, 25 Jul 2018 10:11:20 GMT): maniyas (Wed, 25 Jul 2018 10:15:50 GMT): maniyas (Wed, 25 Jul 2018 10:16:22 GMT): Varun2887 (Wed, 25 Jul 2018 10:27:33 GMT): mahoney1 (Wed, 25 Jul 2018 10:36:11 GMT): steynsawan (Wed, 25 Jul 2018 11:15:51 GMT): steynsawan (Wed, 25 Jul 2018 11:15:56 GMT): AnithaReddy (Wed, 25 Jul 2018 11:22:43 GMT): AnithaReddy (Wed, 25 Jul 2018 11:25:15 GMT): steynsawan (Wed, 25 Jul 2018 12:01:34 GMT): steynsawan (Wed, 25 Jul 2018 12:03:37 GMT): steynsawan (Wed, 25 Jul 2018 12:04:24 GMT): steynsawan (Wed, 25 Jul 2018 12:05:46 GMT): steynsawan (Wed, 25 Jul 2018 12:07:17 GMT): mahoney1 (Wed, 25 Jul 2018 13:23:06 GMT): mahoney1 (Wed, 25 Jul 2018 13:23:06 GMT): mahoney1 (Wed, 25 Jul 2018 13:28:59 GMT): mahoney1 (Wed, 25 Jul 2018 13:28:59 GMT): MasthanbeeShaik (Wed, 25 Jul 2018 13:49:36 GMT): iDix (Wed, 25 Jul 2018 13:49:52 GMT): rthatcher (Wed, 25 Jul 2018 15:07:34 GMT): LevKowalski (Wed, 25 Jul 2018 15:08:56 GMT): LevKowalski (Wed, 25 Jul 2018 15:09:05 GMT): LevKowalski (Wed, 25 Jul 2018 15:10:37 GMT): LevKowalski (Wed, 25 Jul 2018 15:10:39 GMT): LevKowalski (Wed, 25 Jul 2018 15:11:42 GMT): LevKowalski (Wed, 25 Jul 2018 15:12:20 GMT): mahoney1 (Wed, 25 Jul 2018 15:32:42 GMT): mahoney1 (Wed, 25 Jul 2018 15:41:09 GMT): mahoney1 (Wed, 25 Jul 2018 15:41:09 GMT): patrick8289 (Wed, 25 Jul 2018 16:44:10 GMT): VenkataY (Wed, 25 Jul 2018 17:02:21 GMT): KoushKilla (Wed, 25 Jul 2018 19:32:28 GMT): KoushKilla (Wed, 25 Jul 2018 19:32:53 GMT): cmarsten (Wed, 25 Jul 2018 21:40:56 GMT): howdyeyey (Wed, 25 Jul 2018 23:12:13 GMT): howdyeyey (Wed, 25 Jul 2018 23:41:02 GMT): krishnamvv (Thu, 26 Jul 2018 02:52:29 GMT): steynsawan (Thu, 26 Jul 2018 03:15:49 GMT): labcoinpoc (Thu, 26 Jul 2018 04:04:39 GMT): labcoinpoc (Thu, 26 Jul 2018 04:04:39 GMT): labcoinpoc (Thu, 26 Jul 2018 04:04:39 GMT): labcoinpoc (Thu, 26 Jul 2018 04:04:39 GMT): labcoinpoc (Thu, 26 Jul 2018 04:04:39 GMT): harsha0826 (Thu, 26 Jul 2018 04:13:15 GMT): kathunsinger (Thu, 26 Jul 2018 04:30:38 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 04:32:15 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 04:32:31 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 04:32:38 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 04:32:46 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 04:32:52 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 04:35:06 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 05:38:04 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 05:38:35 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 05:39:33 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 05:39:54 GMT): labcoinpoc (Thu, 26 Jul 2018 05:43:11 GMT): maniyas (Thu, 26 Jul 2018 05:49:57 GMT): maniyas (Thu, 26 Jul 2018 05:49:57 GMT): AnithaReddy (Thu, 26 Jul 2018 06:23:15 GMT): Muffi (Thu, 26 Jul 2018 06:24:48 GMT): satyajitdeshmukh (Thu, 26 Jul 2018 06:25:27 GMT): mostafa.elsayyad (Thu, 26 Jul 2018 06:27:33 GMT): mostafa.elsayyad (Thu, 26 Jul 2018 06:27:33 GMT): mostafa.elsayyad (Thu, 26 Jul 2018 06:28:15 GMT): Muffi (Thu, 26 Jul 2018 06:51:25 GMT): Muffi (Thu, 26 Jul 2018 06:51:25 GMT): satyajitdeshmukh (Thu, 26 Jul 2018 06:55:59 GMT): satyajitdeshmukh (Thu, 26 Jul 2018 06:56:27 GMT): mmick (Thu, 26 Jul 2018 06:59:42 GMT): Poneey (Thu, 26 Jul 2018 07:11:39 GMT): labcoinpoc (Thu, 26 Jul 2018 07:36:13 GMT): Poneey (Thu, 26 Jul 2018 07:38:45 GMT): labcoinpoc (Thu, 26 Jul 2018 07:41:31 GMT): Poneey (Thu, 26 Jul 2018 07:56:44 GMT): labcoinpoc (Thu, 26 Jul 2018 08:00:36 GMT): wlantakumi (Thu, 26 Jul 2018 08:01:27 GMT): wlantakumi (Thu, 26 Jul 2018 08:01:41 GMT): Poneey (Thu, 26 Jul 2018 08:22:28 GMT): rthatcher (Thu, 26 Jul 2018 08:37:45 GMT): rthatcher (Thu, 26 Jul 2018 08:44:08 GMT): rthatcher (Thu, 26 Jul 2018 08:50:22 GMT): rthatcher (Thu, 26 Jul 2018 08:52:55 GMT): maniyas (Thu, 26 Jul 2018 08:55:46 GMT): rthatcher (Thu, 26 Jul 2018 08:56:33 GMT): rthatcher (Thu, 26 Jul 2018 08:56:33 GMT): naviat (Thu, 26 Jul 2018 08:58:28 GMT): rthatcher (Thu, 26 Jul 2018 09:01:03 GMT): maniyas (Thu, 26 Jul 2018 09:01:55 GMT): rthatcher (Thu, 26 Jul 2018 09:04:47 GMT): LevKowalski (Thu, 26 Jul 2018 09:21:19 GMT): LevKowalski (Thu, 26 Jul 2018 09:22:14 GMT): LevKowalski (Thu, 26 Jul 2018 09:22:14 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 09:23:49 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 09:24:35 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 09:26:23 GMT): rthatcher (Thu, 26 Jul 2018 09:28:04 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 09:28:54 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 09:30:14 GMT): rthatcher (Thu, 26 Jul 2018 09:33:12 GMT): AZ0ZYW0U5 (Thu, 26 Jul 2018 09:36:17 GMT): rthatcher (Thu, 26 Jul 2018 09:57:38 GMT): Dauphinous (Thu, 26 Jul 2018 10:23:44 GMT): maniyas (Thu, 26 Jul 2018 10:33:23 GMT): maniyas (Thu, 26 Jul 2018 10:34:20 GMT): maniyas (Thu, 26 Jul 2018 10:34:20 GMT): rthatcher (Thu, 26 Jul 2018 11:20:17 GMT): satyajitdeshmukh (Thu, 26 Jul 2018 12:15:13 GMT): maniyas (Thu, 26 Jul 2018 12:30:56 GMT): mahoney1 (Thu, 26 Jul 2018 13:05:32 GMT): maniyas (Thu, 26 Jul 2018 13:18:52 GMT): maniyas (Thu, 26 Jul 2018 13:19:27 GMT): maniyas (Thu, 26 Jul 2018 13:19:54 GMT): prtk418 (Thu, 26 Jul 2018 13:29:28 GMT): prtk418 (Thu, 26 Jul 2018 13:29:28 GMT): rthatcher (Thu, 26 Jul 2018 13:34:20 GMT): rthatcher (Thu, 26 Jul 2018 13:38:07 GMT): prtk418 (Thu, 26 Jul 2018 13:43:48 GMT): prtk418 (Thu, 26 Jul 2018 13:43:48 GMT): prtk418 (Thu, 26 Jul 2018 13:43:48 GMT): bt9957 (Thu, 26 Jul 2018 14:40:50 GMT): LevKowalski (Thu, 26 Jul 2018 15:03:01 GMT): LevKowalski (Thu, 26 Jul 2018 15:03:01 GMT): LevKowalski (Thu, 26 Jul 2018 15:03:01 GMT): LevKowalski (Thu, 26 Jul 2018 15:03:01 GMT): rthatcher (Thu, 26 Jul 2018 15:06:21 GMT): LevKowalski (Thu, 26 Jul 2018 15:16:31 GMT): rthatcher (Thu, 26 Jul 2018 15:22:09 GMT): LevKowalski (Thu, 26 Jul 2018 15:23:54 GMT): mahoney1 (Thu, 26 Jul 2018 15:47:24 GMT): mahoney1 (Thu, 26 Jul 2018 15:47:24 GMT): mahoney1 (Thu, 26 Jul 2018 15:47:24 GMT): LevKowalski (Thu, 26 Jul 2018 16:02:41 GMT): LevKowalski (Thu, 26 Jul 2018 16:05:32 GMT): KevinCardenas1 (Thu, 26 Jul 2018 18:07:17 GMT): jmason900 (Thu, 26 Jul 2018 19:20:45 GMT): samir.tata (Thu, 26 Jul 2018 23:24:00 GMT): howdyeyey (Thu, 26 Jul 2018 23:38:54 GMT): howdyeyey (Thu, 26 Jul 2018 23:38:56 GMT): labcoinpoc (Fri, 27 Jul 2018 04:32:55 GMT): Mahadream (Fri, 27 Jul 2018 05:24:26 GMT): Mahadream (Fri, 27 Jul 2018 05:25:31 GMT): thiyagucse01 (Fri, 27 Jul 2018 05:27:50 GMT): maniyas (Fri, 27 Jul 2018 05:31:53 GMT): thiyagucse01 (Fri, 27 Jul 2018 05:33:43 GMT): AZ0ZYW0U5 (Fri, 27 Jul 2018 06:01:44 GMT): AZ0ZYW0U5 (Fri, 27 Jul 2018 06:01:56 GMT): prtk418 (Fri, 27 Jul 2018 06:15:34 GMT): prtk418 (Fri, 27 Jul 2018 06:15:34 GMT): prtk418 (Fri, 27 Jul 2018 06:19:33 GMT): prtk418 (Fri, 27 Jul 2018 06:19:33 GMT): AZ0ZYW0U5 (Fri, 27 Jul 2018 06:25:35 GMT): prtk418 (Fri, 27 Jul 2018 06:26:56 GMT): prtk418 (Fri, 27 Jul 2018 06:26:56 GMT): thiyagucse01 (Fri, 27 Jul 2018 06:35:07 GMT): thiyagucse01 (Fri, 27 Jul 2018 06:40:38 GMT): AZ0ZYW0U5 (Fri, 27 Jul 2018 06:45:45 GMT): prtk418 (Fri, 27 Jul 2018 06:50:42 GMT): ndatebayo (Fri, 27 Jul 2018 07:50:55 GMT): ndatebayo (Fri, 27 Jul 2018 07:51:37 GMT): thiyagucse01 (Fri, 27 Jul 2018 08:26:54 GMT): geny (Fri, 27 Jul 2018 08:27:41 GMT): choco_coder (Fri, 27 Jul 2018 08:34:42 GMT): ndatebayo (Fri, 27 Jul 2018 08:35:21 GMT): deep123 (Fri, 27 Jul 2018 08:42:28 GMT): mahoney1 (Fri, 27 Jul 2018 08:45:29 GMT): mahoney1 (Fri, 27 Jul 2018 08:46:15 GMT): deep123 (Fri, 27 Jul 2018 08:49:26 GMT): deep123 (Fri, 27 Jul 2018 08:50:49 GMT): deep123 (Fri, 27 Jul 2018 08:52:01 GMT): deep123 (Fri, 27 Jul 2018 08:52:01 GMT): deep123 (Fri, 27 Jul 2018 08:52:01 GMT): deep123 (Fri, 27 Jul 2018 08:52:01 GMT): deep123 (Fri, 27 Jul 2018 08:53:52 GMT): deep123 (Fri, 27 Jul 2018 08:54:49 GMT): deep123 (Fri, 27 Jul 2018 08:55:05 GMT): deep123 (Fri, 27 Jul 2018 08:55:25 GMT): deep123 (Fri, 27 Jul 2018 08:57:23 GMT): mahoney1 (Fri, 27 Jul 2018 08:57:28 GMT): ndatebayo (Fri, 27 Jul 2018 08:57:31 GMT): mahoney1 (Fri, 27 Jul 2018 09:13:13 GMT): thiyagucse01 (Fri, 27 Jul 2018 09:19:09 GMT): deep123 (Fri, 27 Jul 2018 09:22:22 GMT): deep123 (Fri, 27 Jul 2018 09:22:22 GMT): deep123 (Fri, 27 Jul 2018 09:22:22 GMT): mahoney1 (Fri, 27 Jul 2018 09:30:16 GMT): deep123 (Fri, 27 Jul 2018 11:15:14 GMT): malviyamukul (Fri, 27 Jul 2018 11:20:18 GMT): malviyamukul (Fri, 27 Jul 2018 11:20:34 GMT): rmishragrep (Fri, 27 Jul 2018 11:33:45 GMT): rthatcher (Fri, 27 Jul 2018 12:07:04 GMT): mahoney1 (Fri, 27 Jul 2018 13:48:59 GMT): mahoney1 (Fri, 27 Jul 2018 13:48:59 GMT): amritsharma (Fri, 27 Jul 2018 15:01:08 GMT): rthatcher (Fri, 27 Jul 2018 15:44:41 GMT): SwapneshNaik (Fri, 27 Jul 2018 16:18:00 GMT): SwapneshNaik (Fri, 27 Jul 2018 16:19:19 GMT): prtk418 (Fri, 27 Jul 2018 16:52:27 GMT): vitorduarte (Fri, 27 Jul 2018 17:59:00 GMT): vitorduarte (Fri, 27 Jul 2018 17:59:00 GMT): vitorduarte (Fri, 27 Jul 2018 18:03:02 GMT): AshishKaila (Fri, 27 Jul 2018 22:29:44 GMT): AshishKaila (Fri, 27 Jul 2018 22:29:55 GMT): AshishKaila (Fri, 27 Jul 2018 22:30:28 GMT): AshishKaila (Fri, 27 Jul 2018 22:43:18 GMT): AshishKaila (Fri, 27 Jul 2018 23:07:40 GMT): amritsharma (Sat, 28 Jul 2018 05:36:14 GMT): amritsharma (Sat, 28 Jul 2018 05:47:31 GMT): thiyagucse01 (Sat, 28 Jul 2018 07:31:08 GMT): mffrench (Sat, 28 Jul 2018 08:22:09 GMT): leondcastle (Sat, 28 Jul 2018 09:10:03 GMT): KeesBesse (Sat, 28 Jul 2018 09:19:56 GMT): mmick (Sat, 28 Jul 2018 10:14:12 GMT): mmick (Sat, 28 Jul 2018 10:14:12 GMT): mmick (Sat, 28 Jul 2018 12:52:47 GMT): mmick (Sat, 28 Jul 2018 16:49:25 GMT): KeerthiJ (Sat, 28 Jul 2018 17:15:57 GMT): KeerthiJ (Sat, 28 Jul 2018 17:18:44 GMT): marksta (Sat, 28 Jul 2018 20:56:28 GMT): prtk418 (Sun, 29 Jul 2018 04:27:24 GMT): sudhir.kumawat (Sun, 29 Jul 2018 05:35:39 GMT): sudhir.kumawat (Sun, 29 Jul 2018 05:39:02 GMT): sudhir.kumawat (Sun, 29 Jul 2018 05:41:03 GMT): mmick (Sun, 29 Jul 2018 05:53:31 GMT): mmick (Sun, 29 Jul 2018 13:16:53 GMT): mmick (Sun, 29 Jul 2018 13:16:53 GMT): nemesis1346 (Sun, 29 Jul 2018 18:43:41 GMT): nemesis1346 (Sun, 29 Jul 2018 18:44:22 GMT): nemesis1346 (Sun, 29 Jul 2018 18:44:33 GMT): nemesis1346 (Sun, 29 Jul 2018 18:44:53 GMT): atul.agrawal (Sun, 29 Jul 2018 19:17:00 GMT): atul.agrawal (Sun, 29 Jul 2018 19:17:19 GMT): atul.agrawal (Sun, 29 Jul 2018 19:17:33 GMT): atul.agrawal (Sun, 29 Jul 2018 19:18:02 GMT): atul.agrawal (Sun, 29 Jul 2018 19:18:13 GMT): atul.agrawal (Sun, 29 Jul 2018 19:18:33 GMT): AshishKaila (Sun, 29 Jul 2018 19:40:17 GMT): AshishKaila (Sun, 29 Jul 2018 19:40:43 GMT): AshishKaila (Sun, 29 Jul 2018 19:45:36 GMT): tahaf10 (Mon, 30 Jul 2018 04:31:54 GMT): AshishKaila (Mon, 30 Jul 2018 04:50:46 GMT): thiyagucse01 (Mon, 30 Jul 2018 05:00:30 GMT): glt88855 (Mon, 30 Jul 2018 05:20:57 GMT): glt88855 (Mon, 30 Jul 2018 05:21:05 GMT): glt88855 (Mon, 30 Jul 2018 05:21:16 GMT): howdyeyey (Mon, 30 Jul 2018 05:28:27 GMT): Ashish_ydv (Mon, 30 Jul 2018 06:17:53 GMT): mbahfauz (Mon, 30 Jul 2018 06:28:21 GMT): mbahfauz (Mon, 30 Jul 2018 06:28:27 GMT): mbahfauz (Mon, 30 Jul 2018 06:28:44 GMT): mbahfauz (Mon, 30 Jul 2018 06:28:45 GMT): labcoinpoc (Mon, 30 Jul 2018 06:47:02 GMT): labcoinpoc (Mon, 30 Jul 2018 06:47:02 GMT): mbahfauz (Mon, 30 Jul 2018 07:45:00 GMT): AnithaReddy (Mon, 30 Jul 2018 07:53:19 GMT): AnithaReddy (Mon, 30 Jul 2018 07:53:21 GMT): AnithaReddy (Mon, 30 Jul 2018 07:53:38 GMT): deep123 (Mon, 30 Jul 2018 08:27:46 GMT): deep123 (Mon, 30 Jul 2018 08:27:46 GMT): deep123 (Mon, 30 Jul 2018 08:27:46 GMT): deep123 (Mon, 30 Jul 2018 08:27:46 GMT): rthatcher (Mon, 30 Jul 2018 08:28:00 GMT): malviyamukul (Mon, 30 Jul 2018 08:41:47 GMT): rthatcher (Mon, 30 Jul 2018 08:49:39 GMT): rthatcher (Mon, 30 Jul 2018 08:51:14 GMT): deep123 (Mon, 30 Jul 2018 09:07:22 GMT): mmick (Mon, 30 Jul 2018 09:34:45 GMT): mahoney1 (Mon, 30 Jul 2018 09:54:09 GMT): Drest (Mon, 30 Jul 2018 09:55:45 GMT): mdvenkatesh (Mon, 30 Jul 2018 09:59:21 GMT): mdvenkatesh (Mon, 30 Jul 2018 09:59:21 GMT): mdvenkatesh (Mon, 30 Jul 2018 09:59:21 GMT): AnithaReddy (Mon, 30 Jul 2018 10:00:45 GMT): AnithaReddy (Mon, 30 Jul 2018 10:02:02 GMT): Varun2887 (Mon, 30 Jul 2018 10:02:02 GMT): Varun2887 (Mon, 30 Jul 2018 10:02:10 GMT): Varun2887 (Mon, 30 Jul 2018 10:02:27 GMT): rthatcher (Mon, 30 Jul 2018 11:03:25 GMT): rthatcher (Mon, 30 Jul 2018 11:05:36 GMT): mdvenkatesh (Mon, 30 Jul 2018 11:12:42 GMT): DenisDoronin (Mon, 30 Jul 2018 11:15:24 GMT): davidkel (Mon, 30 Jul 2018 11:27:12 GMT): mdvenkatesh (Mon, 30 Jul 2018 12:29:04 GMT): mdvenkatesh (Mon, 30 Jul 2018 12:29:04 GMT): DenisDoronin (Mon, 30 Jul 2018 12:36:13 GMT): satyajitdeshmukh (Mon, 30 Jul 2018 12:52:08 GMT): mahoney1 (Mon, 30 Jul 2018 13:00:23 GMT): AnithaReddy (Mon, 30 Jul 2018 13:03:50 GMT): AnithaReddy (Mon, 30 Jul 2018 13:03:50 GMT): AnithaReddy (Mon, 30 Jul 2018 13:09:49 GMT): AnithaReddy (Mon, 30 Jul 2018 13:10:57 GMT): rthatcher (Mon, 30 Jul 2018 13:31:03 GMT): aparolini (Mon, 30 Jul 2018 13:38:30 GMT): rthatcher (Mon, 30 Jul 2018 13:47:23 GMT): aparolini (Mon, 30 Jul 2018 13:49:02 GMT): Levilk (Mon, 30 Jul 2018 13:57:28 GMT): Levilk (Mon, 30 Jul 2018 14:05:09 GMT): Poneey (Mon, 30 Jul 2018 14:11:04 GMT): mahoney1 (Mon, 30 Jul 2018 14:14:09 GMT): mahoney1 (Mon, 30 Jul 2018 14:18:46 GMT): Drest (Mon, 30 Jul 2018 14:28:28 GMT): satyajitdeshmukh (Mon, 30 Jul 2018 14:29:19 GMT): Poneey (Mon, 30 Jul 2018 14:39:38 GMT): satyajitdeshmukh (Mon, 30 Jul 2018 14:39:56 GMT): satyajitdeshmukh (Mon, 30 Jul 2018 14:39:56 GMT): satyajitdeshmukh (Mon, 30 Jul 2018 14:39:56 GMT): mahoney1 (Mon, 30 Jul 2018 14:41:13 GMT): mahoney1 (Mon, 30 Jul 2018 14:43:40 GMT): aparolini (Mon, 30 Jul 2018 15:10:03 GMT): DenisDoronin (Mon, 30 Jul 2018 15:12:00 GMT): Korede (Mon, 30 Jul 2018 15:48:56 GMT): Korede (Mon, 30 Jul 2018 15:49:07 GMT): rthatcher (Mon, 30 Jul 2018 15:49:57 GMT): Korede (Mon, 30 Jul 2018 15:52:32 GMT): Korede (Mon, 30 Jul 2018 15:52:32 GMT): rthatcher (Mon, 30 Jul 2018 15:54:23 GMT): sujanpgowda (Mon, 30 Jul 2018 15:56:36 GMT): rthatcher (Mon, 30 Jul 2018 16:00:19 GMT): BhushanNewalkar (Mon, 30 Jul 2018 16:23:38 GMT): Korede (Mon, 30 Jul 2018 16:35:14 GMT): BhushanNewalkar (Mon, 30 Jul 2018 17:04:11 GMT): diegoduncan21 (Mon, 30 Jul 2018 17:52:36 GMT): gewing (Mon, 30 Jul 2018 21:38:28 GMT): gewing (Mon, 30 Jul 2018 21:44:04 GMT): gewing (Mon, 30 Jul 2018 21:46:20 GMT): choco_coder (Mon, 30 Jul 2018 22:55:46 GMT): lieuzhenghong (Tue, 31 Jul 2018 02:14:49 GMT): lieuzhenghong (Tue, 31 Jul 2018 02:17:06 GMT): lieuzhenghong (Tue, 31 Jul 2018 02:21:49 GMT): ArijitSen (Tue, 31 Jul 2018 04:12:57 GMT): thiyagucse01 (Tue, 31 Jul 2018 04:17:03 GMT): agile01 (Tue, 31 Jul 2018 05:38:35 GMT): agile01 (Tue, 31 Jul 2018 05:38:47 GMT): malviyamukul (Tue, 31 Jul 2018 05:40:12 GMT): malviyamukul (Tue, 31 Jul 2018 05:40:33 GMT): malviyamukul (Tue, 31 Jul 2018 05:45:28 GMT): MattIles (Tue, 31 Jul 2018 05:49:20 GMT): AnithaReddy (Tue, 31 Jul 2018 05:54:25 GMT): AnithaReddy (Tue, 31 Jul 2018 05:55:43 GMT): MattIles (Tue, 31 Jul 2018 06:22:50 GMT): satyajitdeshmukh (Tue, 31 Jul 2018 06:39:53 GMT): satyajitdeshmukh (Tue, 31 Jul 2018 06:39:53 GMT): lieuzhenghong (Tue, 31 Jul 2018 06:42:15 GMT): lieuzhenghong (Tue, 31 Jul 2018 06:42:15 GMT): lieuzhenghong (Tue, 31 Jul 2018 06:42:15 GMT): lieuzhenghong (Tue, 31 Jul 2018 06:42:15 GMT): lieuzhenghong (Tue, 31 Jul 2018 06:42:15 GMT): lieuzhenghong (Tue, 31 Jul 2018 06:44:40 GMT): lieuzhenghong (Tue, 31 Jul 2018 06:46:30 GMT): malviyamukul (Tue, 31 Jul 2018 06:53:36 GMT): davidkel (Tue, 31 Jul 2018 06:55:07 GMT): lieuzhenghong (Tue, 31 Jul 2018 06:55:14 GMT): lieuzhenghong (Tue, 31 Jul 2018 06:55:34 GMT): lieuzhenghong (Tue, 31 Jul 2018 06:56:32 GMT): davidkel (Tue, 31 Jul 2018 06:56:40 GMT): davidkel (Tue, 31 Jul 2018 06:56:40 GMT): lieuzhenghong (Tue, 31 Jul 2018 06:57:43 GMT): lieuzhenghong (Tue, 31 Jul 2018 06:58:04 GMT): malviyamukul (Tue, 31 Jul 2018 06:59:09 GMT): davidkel (Tue, 31 Jul 2018 07:00:34 GMT): lieuzhenghong (Tue, 31 Jul 2018 07:02:19 GMT): lieuzhenghong (Tue, 31 Jul 2018 07:03:52 GMT): Poneey (Tue, 31 Jul 2018 07:17:42 GMT): malviyamukul (Tue, 31 Jul 2018 07:20:30 GMT): davidhu (Tue, 31 Jul 2018 07:23:23 GMT): uber.twin (Tue, 31 Jul 2018 08:00:07 GMT): rthatcher (Tue, 31 Jul 2018 08:45:11 GMT): rthatcher (Tue, 31 Jul 2018 08:49:54 GMT): deep123 (Tue, 31 Jul 2018 09:12:08 GMT): deep123 (Tue, 31 Jul 2018 09:12:36 GMT): deep123 (Tue, 31 Jul 2018 09:13:38 GMT): mahoney1 (Tue, 31 Jul 2018 09:18:03 GMT): mahoney1 (Tue, 31 Jul 2018 09:18:32 GMT): mahoney1 (Tue, 31 Jul 2018 09:18:32 GMT): PrashantKhatri21 (Tue, 31 Jul 2018 10:11:35 GMT): PrashantKhatri21 (Tue, 31 Jul 2018 10:11:48 GMT): PrashantKhatri21 (Tue, 31 Jul 2018 10:12:04 GMT): Varun2887 (Tue, 31 Jul 2018 10:14:25 GMT): Varun2887 (Tue, 31 Jul 2018 10:14:33 GMT): Varun2887 (Tue, 31 Jul 2018 10:15:19 GMT): Varun2887 (Tue, 31 Jul 2018 10:15:34 GMT): PrashantKhatri21 (Tue, 31 Jul 2018 10:16:40 GMT): PrashantKhatri21 (Tue, 31 Jul 2018 10:17:11 GMT): PrashantKhatri21 (Tue, 31 Jul 2018 10:18:56 GMT): Anshulmittal (Tue, 31 Jul 2018 10:29:00 GMT): Anshulmittal (Tue, 31 Jul 2018 10:31:04 GMT): Anshulmittal (Tue, 31 Jul 2018 10:31:45 GMT): SilambarasanMadhappan (Tue, 31 Jul 2018 10:46:10 GMT): SilambarasanMadhappan (Tue, 31 Jul 2018 10:47:39 GMT): SilambarasanMadhappan (Tue, 31 Jul 2018 10:47:43 GMT): SilambarasanMadhappan (Tue, 31 Jul 2018 10:48:24 GMT): SilambarasanMadhappan (Tue, 31 Jul 2018 10:48:31 GMT): SilambarasanMadhappan (Tue, 31 Jul 2018 11:11:12 GMT): KyNguyen (Tue, 31 Jul 2018 11:22:00 GMT): rthatcher (Tue, 31 Jul 2018 11:25:13 GMT): mahoney1 (Tue, 31 Jul 2018 11:33:49 GMT): Poneey (Tue, 31 Jul 2018 11:39:32 GMT): SilambarasanMadhappan (Tue, 31 Jul 2018 11:58:44 GMT): SilambarasanMadhappan (Tue, 31 Jul 2018 11:59:47 GMT): aparolini (Tue, 31 Jul 2018 12:35:11 GMT): aparolini (Tue, 31 Jul 2018 12:37:48 GMT): aparolini (Tue, 31 Jul 2018 12:37:48 GMT): aparolini (Tue, 31 Jul 2018 12:37:48 GMT): aparolini (Tue, 31 Jul 2018 12:37:48 GMT): aparolini (Tue, 31 Jul 2018 12:37:48 GMT): maniyas (Tue, 31 Jul 2018 12:42:48 GMT): aparolini (Tue, 31 Jul 2018 12:44:02 GMT): aparolini (Tue, 31 Jul 2018 12:44:02 GMT): aparolini (Tue, 31 Jul 2018 12:44:02 GMT): VadimInshakov (Tue, 31 Jul 2018 12:55:19 GMT): Drest (Tue, 31 Jul 2018 12:58:38 GMT): Drest (Tue, 31 Jul 2018 12:58:38 GMT): Drest (Tue, 31 Jul 2018 13:00:55 GMT): rthatcher (Tue, 31 Jul 2018 13:06:10 GMT): KeerthiJ (Tue, 31 Jul 2018 13:17:45 GMT): rthatcher (Tue, 31 Jul 2018 13:19:28 GMT): VadimInshakov (Tue, 31 Jul 2018 13:35:06 GMT): mahoney1 (Tue, 31 Jul 2018 13:59:08 GMT): mbahfauz (Tue, 31 Jul 2018 14:13:26 GMT): Poneey (Tue, 31 Jul 2018 14:16:13 GMT): rthatcher (Tue, 31 Jul 2018 15:26:06 GMT): zobie (Tue, 31 Jul 2018 16:08:30 GMT): gewing (Tue, 31 Jul 2018 16:34:25 GMT): HemChe (Tue, 31 Jul 2018 17:07:40 GMT): SandySun2000 (Tue, 31 Jul 2018 17:22:16 GMT): SandySun2000 (Tue, 31 Jul 2018 17:26:39 GMT): SandySun2000 (Tue, 31 Jul 2018 17:28:35 GMT): aanugu (Tue, 31 Jul 2018 18:05:18 GMT): davidkel (Tue, 31 Jul 2018 19:15:23 GMT): davidkel (Tue, 31 Jul 2018 19:15:23 GMT): SandySun2000 (Tue, 31 Jul 2018 19:18:14 GMT): SandySun2000 (Tue, 31 Jul 2018 19:19:23 GMT): SandySun2000 (Tue, 31 Jul 2018 19:19:46 GMT): davidkel (Tue, 31 Jul 2018 19:20:15 GMT): SandySun2000 (Tue, 31 Jul 2018 19:20:50 GMT): SandySun2000 (Tue, 31 Jul 2018 19:21:02 GMT): SandySun2000 (Tue, 31 Jul 2018 19:22:05 GMT): SandySun2000 (Tue, 31 Jul 2018 19:22:53 GMT): SandySun2000 (Tue, 31 Jul 2018 19:23:16 GMT): SandySun2000 (Tue, 31 Jul 2018 19:23:23 GMT): davidkel (Tue, 31 Jul 2018 19:28:04 GMT): SandySun2000 (Tue, 31 Jul 2018 19:32:25 GMT): davidkel (Tue, 31 Jul 2018 19:35:58 GMT): SandySun2000 (Tue, 31 Jul 2018 19:37:06 GMT): davidkel (Tue, 31 Jul 2018 19:37:54 GMT): SandySun2000 (Tue, 31 Jul 2018 19:38:09 GMT): ricktobacco (Tue, 31 Jul 2018 20:08:57 GMT): ricktobacco (Tue, 31 Jul 2018 20:13:08 GMT): ricktobacco (Tue, 31 Jul 2018 20:49:25 GMT): jg507 (Tue, 31 Jul 2018 20:50:58 GMT): bt9957 (Tue, 31 Jul 2018 23:43:03 GMT): labcoinpoc (Wed, 01 Aug 2018 01:33:38 GMT): apoorvtomar (Wed, 01 Aug 2018 03:17:23 GMT): apoorvtomar (Wed, 01 Aug 2018 03:19:15 GMT): AshishKaila (Wed, 01 Aug 2018 03:26:30 GMT): AshishKaila (Wed, 01 Aug 2018 03:27:18 GMT): AshishKaila (Wed, 01 Aug 2018 03:27:44 GMT): AshishKaila (Wed, 01 Aug 2018 03:39:05 GMT): jainarisht (Wed, 01 Aug 2018 04:04:31 GMT): hariomgoyal (Wed, 01 Aug 2018 05:28:11 GMT): FabricLearner (Wed, 01 Aug 2018 05:30:40 GMT): deep123 (Wed, 01 Aug 2018 06:24:56 GMT): BhaveshPatadiya (Wed, 01 Aug 2018 06:30:22 GMT): sstone1 (Wed, 01 Aug 2018 07:11:37 GMT): Poneey (Wed, 01 Aug 2018 07:14:48 GMT): VenkateshMuthyala (Wed, 01 Aug 2018 07:26:43 GMT): VenkateshMuthyala (Wed, 01 Aug 2018 07:28:52 GMT): VenkateshMuthyala (Wed, 01 Aug 2018 07:29:48 GMT): VenkateshMuthyala (Wed, 01 Aug 2018 07:29:48 GMT): MarcelvandeKerkhof (Wed, 01 Aug 2018 07:42:27 GMT): LevKowalski (Wed, 01 Aug 2018 07:52:30 GMT): MarcelvandeKerkhof (Wed, 01 Aug 2018 07:52:45 GMT): rthatcher (Wed, 01 Aug 2018 08:38:50 GMT): deep123 (Wed, 01 Aug 2018 08:42:43 GMT): deep123 (Wed, 01 Aug 2018 08:42:43 GMT): tovtov (Wed, 01 Aug 2018 08:47:26 GMT): rthatcher (Wed, 01 Aug 2018 08:48:11 GMT): VenkateshMuthyala (Wed, 01 Aug 2018 08:49:30 GMT): rthatcher (Wed, 01 Aug 2018 08:49:35 GMT): VenkateshMuthyala (Wed, 01 Aug 2018 08:50:32 GMT): deep123 (Wed, 01 Aug 2018 08:52:26 GMT): rthatcher (Wed, 01 Aug 2018 08:57:45 GMT): tovtov (Wed, 01 Aug 2018 09:00:51 GMT): rthatcher (Wed, 01 Aug 2018 09:05:32 GMT): mahoney1 (Wed, 01 Aug 2018 09:27:15 GMT): VenkateshMuthyala (Wed, 01 Aug 2018 09:31:02 GMT): VenkateshMuthyala (Wed, 01 Aug 2018 09:31:02 GMT): VenkateshMuthyala (Wed, 01 Aug 2018 09:31:02 GMT): VenkateshMuthyala (Wed, 01 Aug 2018 09:31:02 GMT): Poneey (Wed, 01 Aug 2018 09:34:46 GMT): mahoney1 (Wed, 01 Aug 2018 09:49:36 GMT): mahoney1 (Wed, 01 Aug 2018 09:49:36 GMT): MarcelvandeKerkhof (Wed, 01 Aug 2018 10:05:01 GMT): Anshulmittal (Wed, 01 Aug 2018 10:06:02 GMT): Anshulmittal (Wed, 01 Aug 2018 10:06:02 GMT): VenkateshMuthyala (Wed, 01 Aug 2018 10:28:33 GMT): mariacampos (Wed, 01 Aug 2018 10:40:35 GMT): mariacampos (Wed, 01 Aug 2018 10:40:57 GMT): Anshulmittal (Wed, 01 Aug 2018 10:47:20 GMT): d8bhatta (Wed, 01 Aug 2018 10:52:17 GMT): d8bhatta (Wed, 01 Aug 2018 10:52:26 GMT): d8bhatta (Wed, 01 Aug 2018 10:52:43 GMT): d8bhatta (Wed, 01 Aug 2018 10:53:19 GMT): d8bhatta (Wed, 01 Aug 2018 10:53:24 GMT): abityildiz (Wed, 01 Aug 2018 10:56:10 GMT): GuyG (Wed, 01 Aug 2018 11:14:49 GMT): hyper-sunder (Wed, 01 Aug 2018 11:42:42 GMT): hyper-sunder (Wed, 01 Aug 2018 11:42:54 GMT): mahoney1 (Wed, 01 Aug 2018 11:46:23 GMT): mahoney1 (Wed, 01 Aug 2018 11:50:26 GMT): mahoney1 (Wed, 01 Aug 2018 12:02:24 GMT): abityildiz (Wed, 01 Aug 2018 12:28:15 GMT): abityildiz (Wed, 01 Aug 2018 12:28:15 GMT): abityildiz (Wed, 01 Aug 2018 12:29:55 GMT): rthatcher (Wed, 01 Aug 2018 13:02:20 GMT): abityildiz (Wed, 01 Aug 2018 13:10:51 GMT): rthatcher (Wed, 01 Aug 2018 13:14:26 GMT): abityildiz (Wed, 01 Aug 2018 13:15:18 GMT): rthatcher (Wed, 01 Aug 2018 13:16:06 GMT): rthatcher (Wed, 01 Aug 2018 13:16:06 GMT): rthatcher (Wed, 01 Aug 2018 13:16:06 GMT): abityildiz (Wed, 01 Aug 2018 13:26:14 GMT): abityildiz (Wed, 01 Aug 2018 13:26:50 GMT): rthatcher (Wed, 01 Aug 2018 14:00:59 GMT): abityildiz (Wed, 01 Aug 2018 14:17:09 GMT): marosoft (Wed, 01 Aug 2018 14:33:54 GMT): d8bhatta (Wed, 01 Aug 2018 14:41:39 GMT): rthatcher (Wed, 01 Aug 2018 14:56:13 GMT): d8bhatta (Wed, 01 Aug 2018 15:08:22 GMT): mahoney1 (Wed, 01 Aug 2018 15:10:02 GMT): mahoney1 (Wed, 01 Aug 2018 15:20:44 GMT): mahoney1 (Wed, 01 Aug 2018 15:20:44 GMT): mahoney1 (Wed, 01 Aug 2018 15:20:44 GMT): d8bhatta (Wed, 01 Aug 2018 15:28:08 GMT): ricktobacco (Wed, 01 Aug 2018 18:52:38 GMT): tennenjl (Wed, 01 Aug 2018 19:16:48 GMT): davidkel (Wed, 01 Aug 2018 20:27:15 GMT): tennenjl (Wed, 01 Aug 2018 20:28:53 GMT): KushagraTiwary (Wed, 01 Aug 2018 20:49:44 GMT): theshane (Wed, 01 Aug 2018 20:56:48 GMT): theshane (Wed, 01 Aug 2018 20:57:09 GMT): theshane (Wed, 01 Aug 2018 20:57:22 GMT): GhazanfarAli (Wed, 01 Aug 2018 22:34:22 GMT): GhazanfarAli (Wed, 01 Aug 2018 22:35:13 GMT): prtk418 (Thu, 02 Aug 2018 03:30:15 GMT): bkseo (Thu, 02 Aug 2018 04:56:13 GMT): hyper-sunder (Thu, 02 Aug 2018 06:09:26 GMT): hyper-sunder (Thu, 02 Aug 2018 06:12:50 GMT): hyper-sunder (Thu, 02 Aug 2018 06:15:02 GMT): hyper-sunder (Thu, 02 Aug 2018 06:15:20 GMT): coveloper (Thu, 02 Aug 2018 06:15:58 GMT): coveloper (Thu, 02 Aug 2018 06:17:22 GMT): hyper-sunder (Thu, 02 Aug 2018 06:23:54 GMT): coveloper (Thu, 02 Aug 2018 06:24:33 GMT): coveloper (Thu, 02 Aug 2018 06:24:54 GMT): coveloper (Thu, 02 Aug 2018 06:28:49 GMT): coveloper (Thu, 02 Aug 2018 06:29:16 GMT): wangdong (Thu, 02 Aug 2018 06:39:57 GMT): wangdong (Thu, 02 Aug 2018 06:40:06 GMT): labcoinpoc (Thu, 02 Aug 2018 06:56:38 GMT): coveloper (Thu, 02 Aug 2018 07:17:29 GMT): coveloper (Thu, 02 Aug 2018 07:18:07 GMT): coveloper (Thu, 02 Aug 2018 07:18:57 GMT): labcoinpoc (Thu, 02 Aug 2018 07:22:44 GMT): coveloper (Thu, 02 Aug 2018 07:23:58 GMT): coveloper (Thu, 02 Aug 2018 07:24:26 GMT): labcoinpoc (Thu, 02 Aug 2018 07:24:50 GMT): coveloper (Thu, 02 Aug 2018 07:26:18 GMT): coveloper (Thu, 02 Aug 2018 07:29:27 GMT): coveloper (Thu, 02 Aug 2018 07:29:53 GMT): coveloper (Thu, 02 Aug 2018 07:30:10 GMT): coveloper (Thu, 02 Aug 2018 07:31:11 GMT): coveloper (Thu, 02 Aug 2018 07:33:28 GMT): coveloper (Thu, 02 Aug 2018 07:34:08 GMT): coveloper (Thu, 02 Aug 2018 07:38:44 GMT): labcoinpoc (Thu, 02 Aug 2018 07:59:55 GMT): coveloper (Thu, 02 Aug 2018 08:01:48 GMT): labcoinpoc (Thu, 02 Aug 2018 08:09:19 GMT): labcoinpoc (Thu, 02 Aug 2018 08:09:19 GMT): labcoinpoc (Thu, 02 Aug 2018 08:09:19 GMT): coveloper (Thu, 02 Aug 2018 08:12:34 GMT): coveloper (Thu, 02 Aug 2018 08:13:08 GMT): VenkateshMuthyala (Thu, 02 Aug 2018 08:21:10 GMT): VenkateshMuthyala (Thu, 02 Aug 2018 08:21:10 GMT): coveloper (Thu, 02 Aug 2018 08:21:51 GMT): VenkateshMuthyala (Thu, 02 Aug 2018 08:23:28 GMT): rthatcher (Thu, 02 Aug 2018 08:24:52 GMT): coveloper (Thu, 02 Aug 2018 08:26:03 GMT): VenkateshMuthyala (Thu, 02 Aug 2018 08:29:01 GMT): VenkateshMuthyala (Thu, 02 Aug 2018 08:29:56 GMT): coveloper (Thu, 02 Aug 2018 08:30:27 GMT): coveloper (Thu, 02 Aug 2018 08:30:40 GMT): coveloper (Thu, 02 Aug 2018 08:32:04 GMT): coveloper (Thu, 02 Aug 2018 08:33:01 GMT): VenkateshMuthyala (Thu, 02 Aug 2018 08:33:42 GMT): VenkateshMuthyala (Thu, 02 Aug 2018 08:41:14 GMT): rthatcher (Thu, 02 Aug 2018 08:47:14 GMT): callmeashok (Thu, 02 Aug 2018 08:48:09 GMT): mahoney1 (Thu, 02 Aug 2018 08:52:45 GMT): mahoney1 (Thu, 02 Aug 2018 08:52:45 GMT): callmeashok (Thu, 02 Aug 2018 08:54:19 GMT): mahoney1 (Thu, 02 Aug 2018 09:04:51 GMT): VenkateshMuthyala (Thu, 02 Aug 2018 09:25:34 GMT): VenkateshMuthyala (Thu, 02 Aug 2018 09:25:52 GMT): VenkateshMuthyala (Thu, 02 Aug 2018 09:25:53 GMT): VenkateshMuthyala (Thu, 02 Aug 2018 09:27:27 GMT): Mahadream (Thu, 02 Aug 2018 10:14:15 GMT): rthatcher (Thu, 02 Aug 2018 10:15:18 GMT): rthatcher (Thu, 02 Aug 2018 10:16:11 GMT): JayPandya (Thu, 02 Aug 2018 10:19:47 GMT): Mahadream (Thu, 02 Aug 2018 10:22:40 GMT): mahoney1 (Thu, 02 Aug 2018 10:26:06 GMT): mahoney1 (Thu, 02 Aug 2018 10:26:06 GMT): AnithaReddy (Thu, 02 Aug 2018 10:30:05 GMT): JayPandya (Thu, 02 Aug 2018 10:32:47 GMT): mahoney1 (Thu, 02 Aug 2018 10:40:54 GMT): VenkateshMuthyala (Thu, 02 Aug 2018 10:47:57 GMT): VenkateshMuthyala (Thu, 02 Aug 2018 10:47:57 GMT): JayPandya (Thu, 02 Aug 2018 10:49:39 GMT): rthatcher (Thu, 02 Aug 2018 10:53:33 GMT): Varun2887 (Thu, 02 Aug 2018 11:05:10 GMT): mahoney1 (Thu, 02 Aug 2018 11:36:01 GMT): tennenjl (Thu, 02 Aug 2018 12:01:56 GMT): mahoney1 (Thu, 02 Aug 2018 12:07:18 GMT): aparolini (Thu, 02 Aug 2018 12:10:47 GMT): davidkel (Thu, 02 Aug 2018 12:11:20 GMT): theshane (Thu, 02 Aug 2018 12:28:00 GMT): prtk418 (Thu, 02 Aug 2018 12:30:47 GMT): tennenjl (Thu, 02 Aug 2018 12:46:15 GMT): rthatcher (Thu, 02 Aug 2018 13:01:29 GMT): rohitkhatri (Thu, 02 Aug 2018 13:26:26 GMT): hardik047 (Thu, 02 Aug 2018 14:31:29 GMT): hardik047 (Thu, 02 Aug 2018 14:31:29 GMT): mahoney1 (Thu, 02 Aug 2018 14:44:57 GMT): fabiomolinar (Thu, 02 Aug 2018 14:57:27 GMT): rthatcher (Thu, 02 Aug 2018 15:21:53 GMT): rthatcher (Thu, 02 Aug 2018 15:28:54 GMT): mahoney1 (Thu, 02 Aug 2018 15:31:18 GMT): mahoney1 (Thu, 02 Aug 2018 15:39:32 GMT): uhaider (Thu, 02 Aug 2018 15:52:31 GMT): uhaider (Thu, 02 Aug 2018 15:54:16 GMT): mahoney1 (Thu, 02 Aug 2018 16:05:27 GMT): rajanashutosh (Thu, 02 Aug 2018 17:46:14 GMT): davidkel (Thu, 02 Aug 2018 17:55:36 GMT): parikn (Thu, 02 Aug 2018 18:00:23 GMT): rajanashutosh (Thu, 02 Aug 2018 18:07:18 GMT): rupa12 (Thu, 02 Aug 2018 21:48:50 GMT): rupa12 (Thu, 02 Aug 2018 22:44:38 GMT): rupa12 (Thu, 02 Aug 2018 22:44:38 GMT): rupa12 (Thu, 02 Aug 2018 22:44:38 GMT): rupa12 (Thu, 02 Aug 2018 22:44:38 GMT): tdespenza (Thu, 02 Aug 2018 23:16:51 GMT): parikn (Fri, 03 Aug 2018 00:50:11 GMT): touchingsoil (Fri, 03 Aug 2018 01:24:15 GMT): JeffGutierrez (Fri, 03 Aug 2018 02:25:07 GMT): fabiomolinar (Fri, 03 Aug 2018 03:37:17 GMT): coveloper (Fri, 03 Aug 2018 05:27:20 GMT): coveloper (Fri, 03 Aug 2018 05:29:27 GMT): coveloper (Fri, 03 Aug 2018 05:29:45 GMT): coveloper (Fri, 03 Aug 2018 05:30:30 GMT): hardik047 (Fri, 03 Aug 2018 05:39:19 GMT): labcoinpoc (Fri, 03 Aug 2018 05:49:06 GMT): coveloper (Fri, 03 Aug 2018 05:50:17 GMT): coveloper (Fri, 03 Aug 2018 06:08:42 GMT): coveloper (Fri, 03 Aug 2018 06:09:33 GMT): coveloper (Fri, 03 Aug 2018 06:09:42 GMT): coveloper (Fri, 03 Aug 2018 06:11:45 GMT): coveloper (Fri, 03 Aug 2018 06:14:48 GMT): labcoinpoc (Fri, 03 Aug 2018 06:16:37 GMT): coveloper (Fri, 03 Aug 2018 06:17:43 GMT): coveloper (Fri, 03 Aug 2018 06:22:55 GMT): coveloper (Fri, 03 Aug 2018 06:25:14 GMT): coveloper (Fri, 03 Aug 2018 06:26:09 GMT): coveloper (Fri, 03 Aug 2018 06:28:45 GMT): coveloper (Fri, 03 Aug 2018 06:29:02 GMT): touchingsoil (Fri, 03 Aug 2018 06:34:49 GMT): touchingsoil (Fri, 03 Aug 2018 06:34:49 GMT): touchingsoil (Fri, 03 Aug 2018 06:34:49 GMT): coveloper (Fri, 03 Aug 2018 06:39:53 GMT): coveloper (Fri, 03 Aug 2018 06:40:37 GMT): labcoinpoc (Fri, 03 Aug 2018 07:35:00 GMT): coveloper (Fri, 03 Aug 2018 07:52:56 GMT): aparolini (Fri, 03 Aug 2018 07:55:42 GMT): aparolini (Fri, 03 Aug 2018 07:55:42 GMT): labcoinpoc (Fri, 03 Aug 2018 07:58:16 GMT): coveloper (Fri, 03 Aug 2018 07:59:01 GMT): coveloper (Fri, 03 Aug 2018 08:00:11 GMT): labcoinpoc (Fri, 03 Aug 2018 08:00:25 GMT): coveloper (Fri, 03 Aug 2018 08:00:49 GMT): coveloper (Fri, 03 Aug 2018 08:01:13 GMT): labcoinpoc (Fri, 03 Aug 2018 08:02:15 GMT): coveloper (Fri, 03 Aug 2018 08:02:16 GMT): coveloper (Fri, 03 Aug 2018 08:02:37 GMT): coveloper (Fri, 03 Aug 2018 08:03:06 GMT): coveloper (Fri, 03 Aug 2018 08:03:21 GMT): labcoinpoc (Fri, 03 Aug 2018 08:03:58 GMT): coveloper (Fri, 03 Aug 2018 08:04:19 GMT): coveloper (Fri, 03 Aug 2018 08:04:32 GMT): coveloper (Fri, 03 Aug 2018 08:05:08 GMT): labcoinpoc (Fri, 03 Aug 2018 08:09:19 GMT): coveloper (Fri, 03 Aug 2018 08:09:38 GMT): labcoinpoc (Fri, 03 Aug 2018 08:10:13 GMT): rthatcher (Fri, 03 Aug 2018 08:10:27 GMT): coveloper (Fri, 03 Aug 2018 08:12:44 GMT): coveloper (Fri, 03 Aug 2018 08:13:19 GMT): labcoinpoc (Fri, 03 Aug 2018 08:14:08 GMT): coveloper (Fri, 03 Aug 2018 08:14:37 GMT): coveloper (Fri, 03 Aug 2018 08:15:12 GMT): coveloper (Fri, 03 Aug 2018 08:15:35 GMT): rthatcher (Fri, 03 Aug 2018 08:16:02 GMT): coveloper (Fri, 03 Aug 2018 08:16:06 GMT): coveloper (Fri, 03 Aug 2018 08:17:20 GMT): labcoinpoc (Fri, 03 Aug 2018 08:18:19 GMT): coveloper (Fri, 03 Aug 2018 08:18:49 GMT): rthatcher (Fri, 03 Aug 2018 08:19:57 GMT): coveloper (Fri, 03 Aug 2018 08:20:10 GMT): coveloper (Fri, 03 Aug 2018 08:20:50 GMT): coveloper (Fri, 03 Aug 2018 08:21:32 GMT): coveloper (Fri, 03 Aug 2018 08:22:47 GMT): KLE 34 (Fri, 03 Aug 2018 08:22:56 GMT): rthatcher (Fri, 03 Aug 2018 08:24:42 GMT): coveloper (Fri, 03 Aug 2018 08:25:07 GMT): labcoinpoc (Fri, 03 Aug 2018 08:26:22 GMT): KLE 34 (Fri, 03 Aug 2018 08:26:25 GMT): mahoney1 (Fri, 03 Aug 2018 08:28:43 GMT): labcoinpoc (Fri, 03 Aug 2018 08:29:49 GMT): labcoinpoc (Fri, 03 Aug 2018 08:29:49 GMT): labcoinpoc (Fri, 03 Aug 2018 08:29:49 GMT): rthatcher (Fri, 03 Aug 2018 08:30:48 GMT): JeffGutierrez (Fri, 03 Aug 2018 08:34:24 GMT): mahoney1 (Fri, 03 Aug 2018 08:34:27 GMT): mahoney1 (Fri, 03 Aug 2018 08:34:27 GMT): KLE 34 (Fri, 03 Aug 2018 08:37:25 GMT): KLE 34 (Fri, 03 Aug 2018 08:37:37 GMT): labcoinpoc (Fri, 03 Aug 2018 08:39:05 GMT): coveloper (Fri, 03 Aug 2018 08:41:59 GMT): coveloper (Fri, 03 Aug 2018 08:42:32 GMT): labcoinpoc (Fri, 03 Aug 2018 08:45:45 GMT): coveloper (Fri, 03 Aug 2018 08:47:05 GMT): mahoney1 (Fri, 03 Aug 2018 08:47:19 GMT): labcoinpoc (Fri, 03 Aug 2018 08:48:49 GMT): mahoney1 (Fri, 03 Aug 2018 08:49:11 GMT): coveloper (Fri, 03 Aug 2018 08:50:32 GMT): KLE 34 (Fri, 03 Aug 2018 08:51:37 GMT): mahoney1 (Fri, 03 Aug 2018 08:54:26 GMT): touchingsoil (Fri, 03 Aug 2018 08:56:22 GMT): touchingsoil (Fri, 03 Aug 2018 08:56:22 GMT): mahoney1 (Fri, 03 Aug 2018 09:02:24 GMT): mahoney1 (Fri, 03 Aug 2018 09:02:24 GMT): KLE 34 (Fri, 03 Aug 2018 09:04:25 GMT): mahoney1 (Fri, 03 Aug 2018 09:04:44 GMT): mahoney1 (Fri, 03 Aug 2018 09:23:32 GMT): HoneyShah (Fri, 03 Aug 2018 09:29:37 GMT): VadimInshakov (Fri, 03 Aug 2018 09:33:34 GMT): VadimInshakov (Fri, 03 Aug 2018 09:33:34 GMT): aparolini (Fri, 03 Aug 2018 09:44:42 GMT): rthatcher (Fri, 03 Aug 2018 09:56:00 GMT): rthatcher (Fri, 03 Aug 2018 09:58:07 GMT): rthatcher (Fri, 03 Aug 2018 10:05:37 GMT): amritsharma (Fri, 03 Aug 2018 10:59:54 GMT): tdespenza (Fri, 03 Aug 2018 11:16:45 GMT): tdespenza (Fri, 03 Aug 2018 11:16:45 GMT): sureshtedla (Fri, 03 Aug 2018 11:19:27 GMT): sureshtedla (Fri, 03 Aug 2018 11:22:47 GMT): rthatcher (Fri, 03 Aug 2018 11:27:03 GMT): rthatcher (Fri, 03 Aug 2018 11:31:33 GMT): sureshtedla (Fri, 03 Aug 2018 11:34:44 GMT): rthatcher (Fri, 03 Aug 2018 11:40:53 GMT): aparolini (Fri, 03 Aug 2018 11:53:08 GMT): aparolini (Fri, 03 Aug 2018 11:53:08 GMT): aparolini (Fri, 03 Aug 2018 11:53:08 GMT): tdespenza (Fri, 03 Aug 2018 12:08:56 GMT): zasamen (Fri, 03 Aug 2018 12:17:45 GMT): amritsharma (Fri, 03 Aug 2018 12:22:43 GMT): zasamen (Fri, 03 Aug 2018 12:27:26 GMT): zasamen (Fri, 03 Aug 2018 12:27:26 GMT): rthatcher (Fri, 03 Aug 2018 12:37:36 GMT): zasamen (Fri, 03 Aug 2018 12:40:16 GMT): mahoney1 (Fri, 03 Aug 2018 12:49:09 GMT): mahoney1 (Fri, 03 Aug 2018 12:49:09 GMT): aparolini (Fri, 03 Aug 2018 15:50:28 GMT): aparolini (Fri, 03 Aug 2018 15:50:28 GMT): aparolini (Fri, 03 Aug 2018 15:50:28 GMT): ShubhamTatvamasi (Fri, 03 Aug 2018 17:44:30 GMT): rupa12 (Fri, 03 Aug 2018 17:59:08 GMT): rupa12 (Fri, 03 Aug 2018 17:59:08 GMT): rupa12 (Fri, 03 Aug 2018 17:59:08 GMT): davidkel (Fri, 03 Aug 2018 18:25:43 GMT): davidkel (Fri, 03 Aug 2018 18:25:43 GMT): rupa12 (Fri, 03 Aug 2018 18:51:52 GMT): hardik047 (Fri, 03 Aug 2018 20:21:00 GMT): mmick (Sat, 04 Aug 2018 04:48:16 GMT): callmeashok (Sat, 04 Aug 2018 05:22:29 GMT): trex70 (Sat, 04 Aug 2018 05:37:39 GMT): trex70 (Sat, 04 Aug 2018 05:37:44 GMT): trex70 (Sat, 04 Aug 2018 05:39:33 GMT): trex70 (Sat, 04 Aug 2018 05:39:43 GMT): akshay.sood (Sat, 04 Aug 2018 06:45:54 GMT): Ishan (Sat, 04 Aug 2018 07:29:10 GMT): Ishan (Sat, 04 Aug 2018 07:29:31 GMT): Ishan (Sat, 04 Aug 2018 07:29:32 GMT): marksta (Sat, 04 Aug 2018 07:33:09 GMT): SagarRudrawar (Sat, 04 Aug 2018 07:58:16 GMT): marksta (Sat, 04 Aug 2018 07:58:21 GMT): davidkel (Sat, 04 Aug 2018 08:27:06 GMT): Ishan (Sat, 04 Aug 2018 08:35:47 GMT): Ishan (Sat, 04 Aug 2018 08:35:47 GMT): marksta (Sat, 04 Aug 2018 08:36:54 GMT): davidkel (Sat, 04 Aug 2018 08:52:39 GMT): davidkel (Sat, 04 Aug 2018 09:49:54 GMT): Ishan (Sat, 04 Aug 2018 10:44:44 GMT): mmick (Sat, 04 Aug 2018 16:18:24 GMT): bh4rtp (Sat, 04 Aug 2018 16:29:27 GMT): vanderbannond (Sat, 04 Aug 2018 23:00:34 GMT): vanderbannond (Sat, 04 Aug 2018 23:02:06 GMT): vanderbannond (Sat, 04 Aug 2018 23:02:22 GMT): vanderbannond (Sat, 04 Aug 2018 23:03:15 GMT): vanderbannond (Sat, 04 Aug 2018 23:03:52 GMT): vanderbannond (Sat, 04 Aug 2018 23:04:02 GMT): hypere (Sun, 05 Aug 2018 01:51:51 GMT): HuyNguyen 1 (Sun, 05 Aug 2018 03:40:15 GMT): LalitRajput (Sun, 05 Aug 2018 12:21:17 GMT): LalitRajput (Sun, 05 Aug 2018 12:22:30 GMT): adedic (Sun, 05 Aug 2018 15:25:21 GMT): adedic (Sun, 05 Aug 2018 15:40:03 GMT): adedic (Sun, 05 Aug 2018 15:40:03 GMT): adedic (Sun, 05 Aug 2018 15:40:57 GMT): adedic (Sun, 05 Aug 2018 15:41:26 GMT): adedic (Sun, 05 Aug 2018 15:42:35 GMT): adedic (Sun, 05 Aug 2018 15:52:00 GMT): VikramBelathur (Sun, 05 Aug 2018 17:41:20 GMT): mmick (Sun, 05 Aug 2018 19:50:16 GMT): davidkel (Sun, 05 Aug 2018 20:01:10 GMT): bh4rtp (Mon, 06 Aug 2018 01:46:52 GMT): bh4rtp (Mon, 06 Aug 2018 02:21:27 GMT): nekia (Mon, 06 Aug 2018 03:37:03 GMT): nekia (Mon, 06 Aug 2018 03:37:03 GMT): nekia (Mon, 06 Aug 2018 03:37:03 GMT): nekia (Mon, 06 Aug 2018 03:37:03 GMT): Gokulraja (Mon, 06 Aug 2018 05:19:20 GMT): trex70 (Mon, 06 Aug 2018 05:33:06 GMT): wangrangli (Mon, 06 Aug 2018 05:48:11 GMT): bh4rtp (Mon, 06 Aug 2018 05:56:31 GMT): nekia (Mon, 06 Aug 2018 07:09:57 GMT): AnithaReddy (Mon, 06 Aug 2018 07:40:47 GMT): davidkel (Mon, 06 Aug 2018 07:48:53 GMT): aparolini (Mon, 06 Aug 2018 07:59:56 GMT): aparolini (Mon, 06 Aug 2018 07:59:56 GMT): aparolini (Mon, 06 Aug 2018 07:59:56 GMT): HoneyShah (Mon, 06 Aug 2018 08:17:29 GMT): davidkel (Mon, 06 Aug 2018 08:27:22 GMT): davidkel (Mon, 06 Aug 2018 08:27:22 GMT): davidkel (Mon, 06 Aug 2018 08:27:22 GMT): rthatcher (Mon, 06 Aug 2018 08:33:30 GMT): rthatcher (Mon, 06 Aug 2018 08:33:30 GMT): zasamen (Mon, 06 Aug 2018 08:36:24 GMT): rthatcher (Mon, 06 Aug 2018 08:41:07 GMT): labcoinpoc (Mon, 06 Aug 2018 08:43:53 GMT): labcoinpoc (Mon, 06 Aug 2018 08:43:53 GMT): labcoinpoc (Mon, 06 Aug 2018 08:43:53 GMT): labcoinpoc (Mon, 06 Aug 2018 08:47:03 GMT): HoneyShah (Mon, 06 Aug 2018 08:50:38 GMT): HoneyShah (Mon, 06 Aug 2018 08:50:38 GMT): rthatcher (Mon, 06 Aug 2018 08:51:55 GMT): AnithaReddy (Mon, 06 Aug 2018 08:54:08 GMT): Jyotirmoy (Mon, 06 Aug 2018 09:00:51 GMT): MarcelvandeKerkhof (Mon, 06 Aug 2018 09:07:38 GMT): MarcelvandeKerkhof (Mon, 06 Aug 2018 09:07:38 GMT): MarcelvandeKerkhof (Mon, 06 Aug 2018 09:07:38 GMT): rthatcher (Mon, 06 Aug 2018 09:10:43 GMT): mahoney1 (Mon, 06 Aug 2018 09:12:28 GMT): MarcelvandeKerkhof (Mon, 06 Aug 2018 09:15:08 GMT): mahoney1 (Mon, 06 Aug 2018 09:17:42 GMT): mahoney1 (Mon, 06 Aug 2018 09:17:42 GMT): Jyotirmoy (Mon, 06 Aug 2018 09:22:21 GMT): aparolini (Mon, 06 Aug 2018 09:25:05 GMT): mahoney1 (Mon, 06 Aug 2018 09:27:41 GMT): sureshtedla (Mon, 06 Aug 2018 09:29:14 GMT): sureshtedla (Mon, 06 Aug 2018 09:29:45 GMT): sureshtedla (Mon, 06 Aug 2018 09:30:05 GMT): hyper-sunder (Mon, 06 Aug 2018 09:32:09 GMT): hyper-sunder (Mon, 06 Aug 2018 09:34:15 GMT): hyper-sunder (Mon, 06 Aug 2018 09:34:25 GMT): zasamen (Mon, 06 Aug 2018 09:41:41 GMT): hyper-sunder (Mon, 06 Aug 2018 09:44:34 GMT): terrypst (Mon, 06 Aug 2018 10:12:05 GMT): terrypst (Mon, 06 Aug 2018 10:17:23 GMT): mahoney1 (Mon, 06 Aug 2018 10:24:00 GMT): sureshtedla (Mon, 06 Aug 2018 10:30:05 GMT): mahoney1 (Mon, 06 Aug 2018 10:38:19 GMT): HoneyShah (Mon, 06 Aug 2018 10:45:53 GMT): hyper-sunder (Mon, 06 Aug 2018 11:11:52 GMT): hyper-sunder (Mon, 06 Aug 2018 11:12:08 GMT): hyper-sunder (Mon, 06 Aug 2018 11:12:13 GMT): hyper-sunder (Mon, 06 Aug 2018 11:16:02 GMT): sureshtedla (Mon, 06 Aug 2018 11:37:56 GMT): hyper-sunder (Mon, 06 Aug 2018 11:38:12 GMT): mahoney1 (Mon, 06 Aug 2018 12:07:15 GMT): hyper-sunder (Mon, 06 Aug 2018 12:09:01 GMT): hyper-sunder (Mon, 06 Aug 2018 12:10:11 GMT): hyper-sunder (Mon, 06 Aug 2018 12:10:20 GMT): mahoney1 (Mon, 06 Aug 2018 12:12:20 GMT): mahoney1 (Mon, 06 Aug 2018 12:13:52 GMT): hyper-sunder (Mon, 06 Aug 2018 12:15:32 GMT): mahoney1 (Mon, 06 Aug 2018 12:19:02 GMT): mahoney1 (Mon, 06 Aug 2018 12:19:02 GMT): mahoney1 (Mon, 06 Aug 2018 12:19:02 GMT): mahoney1 (Mon, 06 Aug 2018 12:19:02 GMT): hyper-sunder (Mon, 06 Aug 2018 12:21:03 GMT): hyper-sunder (Mon, 06 Aug 2018 12:22:21 GMT): hyper-sunder (Mon, 06 Aug 2018 12:22:34 GMT): zasamen (Mon, 06 Aug 2018 12:34:07 GMT): sureshtedla (Mon, 06 Aug 2018 12:38:59 GMT): hyper-sunder (Mon, 06 Aug 2018 12:51:13 GMT): hyper-sunder (Mon, 06 Aug 2018 12:51:14 GMT): hyper-sunder (Mon, 06 Aug 2018 12:51:27 GMT): hyper-sunder (Mon, 06 Aug 2018 12:52:04 GMT): mahoney1 (Mon, 06 Aug 2018 14:02:21 GMT): mahoney1 (Mon, 06 Aug 2018 14:04:03 GMT): mahoney1 (Mon, 06 Aug 2018 14:07:26 GMT): ErickCaro (Mon, 06 Aug 2018 14:14:23 GMT): renaudadorlee (Mon, 06 Aug 2018 14:34:11 GMT): mahoney1 (Mon, 06 Aug 2018 14:53:07 GMT): mdimovich (Mon, 06 Aug 2018 15:31:39 GMT): mdimovich (Mon, 06 Aug 2018 15:32:18 GMT): mahoney1 (Mon, 06 Aug 2018 15:41:05 GMT): mdimovich (Mon, 06 Aug 2018 15:42:40 GMT): mmick (Mon, 06 Aug 2018 16:12:04 GMT): mmick (Mon, 06 Aug 2018 16:12:04 GMT): hyper-sunder (Mon, 06 Aug 2018 16:44:45 GMT): venzi (Mon, 06 Aug 2018 18:28:05 GMT): adedic (Mon, 06 Aug 2018 18:35:49 GMT): zackmcginnis (Mon, 06 Aug 2018 20:50:26 GMT): zackmcginnis (Mon, 06 Aug 2018 20:57:11 GMT): zackmcginnis (Mon, 06 Aug 2018 20:57:11 GMT): zackmcginnis (Mon, 06 Aug 2018 21:01:44 GMT): zackmcginnis (Mon, 06 Aug 2018 21:01:44 GMT): tijohnson (Mon, 06 Aug 2018 22:07:48 GMT): AshishKaila (Tue, 07 Aug 2018 00:42:30 GMT): edwardlee (Tue, 07 Aug 2018 04:50:52 GMT): pravn1729 (Tue, 07 Aug 2018 04:56:05 GMT): aguel (Tue, 07 Aug 2018 05:59:23 GMT): Varun2887 (Tue, 07 Aug 2018 06:21:44 GMT): AnithaReddy (Tue, 07 Aug 2018 06:39:13 GMT): nekia (Tue, 07 Aug 2018 06:47:27 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 07:36:16 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 07:36:16 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 07:36:16 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 07:36:16 GMT): argman (Tue, 07 Aug 2018 07:46:21 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 07:50:01 GMT): touchingsoil (Tue, 07 Aug 2018 08:06:38 GMT): labcoinpoc (Tue, 07 Aug 2018 08:11:39 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 08:16:04 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 08:16:14 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 08:16:44 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 08:17:00 GMT): jpiccato (Tue, 07 Aug 2018 08:29:29 GMT): rthatcher (Tue, 07 Aug 2018 08:51:43 GMT): HoneyShah (Tue, 07 Aug 2018 08:56:53 GMT): HoneyShah (Tue, 07 Aug 2018 09:04:10 GMT): mahoney1 (Tue, 07 Aug 2018 09:06:10 GMT): hyper-sunder (Tue, 07 Aug 2018 09:14:59 GMT): rthatcher (Tue, 07 Aug 2018 09:17:12 GMT): hyper-sunder (Tue, 07 Aug 2018 09:19:15 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 09:25:06 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 09:25:29 GMT): rthatcher (Tue, 07 Aug 2018 09:25:29 GMT): mahoney1 (Tue, 07 Aug 2018 09:55:22 GMT): mahoney1 (Tue, 07 Aug 2018 09:55:22 GMT): mahoney1 (Tue, 07 Aug 2018 09:55:22 GMT): hyper-sunder (Tue, 07 Aug 2018 09:56:09 GMT): hyper-sunder (Tue, 07 Aug 2018 09:57:30 GMT): mahoney1 (Tue, 07 Aug 2018 09:59:43 GMT): hyper-sunder (Tue, 07 Aug 2018 10:00:31 GMT): mahoney1 (Tue, 07 Aug 2018 10:06:28 GMT): mahoney1 (Tue, 07 Aug 2018 10:06:28 GMT): hyper-sunder (Tue, 07 Aug 2018 10:10:51 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 10:13:40 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 10:13:40 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 10:24:27 GMT): pravn1729 (Tue, 07 Aug 2018 10:30:50 GMT): mrudav.shukla (Tue, 07 Aug 2018 10:32:17 GMT): mahoney1 (Tue, 07 Aug 2018 10:46:19 GMT): mahoney1 (Tue, 07 Aug 2018 10:46:19 GMT): mahoney1 (Tue, 07 Aug 2018 10:48:45 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 12:48:22 GMT): VenkateshMuthyala (Tue, 07 Aug 2018 12:48:22 GMT): hypere (Tue, 07 Aug 2018 13:08:20 GMT): terrypst (Tue, 07 Aug 2018 13:40:56 GMT): terrypst (Tue, 07 Aug 2018 13:43:40 GMT): terrypst (Tue, 07 Aug 2018 13:44:24 GMT): terrypst (Tue, 07 Aug 2018 13:44:24 GMT): uber.twin (Tue, 07 Aug 2018 13:54:35 GMT): RockyRacer (Tue, 07 Aug 2018 14:37:13 GMT): yvijayk2 (Tue, 07 Aug 2018 14:37:53 GMT): uber.twin (Tue, 07 Aug 2018 15:02:32 GMT): hyper-sunder (Tue, 07 Aug 2018 15:43:15 GMT): hyper-sunder (Tue, 07 Aug 2018 15:43:43 GMT): hypere (Tue, 07 Aug 2018 15:46:01 GMT): hyper-sunder (Tue, 07 Aug 2018 15:48:59 GMT): titog (Tue, 07 Aug 2018 15:50:10 GMT): hyper-sunder (Tue, 07 Aug 2018 15:50:54 GMT): titog (Tue, 07 Aug 2018 15:50:56 GMT): titog (Tue, 07 Aug 2018 15:51:17 GMT): mahoney1 (Tue, 07 Aug 2018 15:58:06 GMT): mahoney1 (Tue, 07 Aug 2018 15:58:06 GMT): titog (Tue, 07 Aug 2018 15:58:33 GMT): hypere (Tue, 07 Aug 2018 15:59:21 GMT): hypere (Tue, 07 Aug 2018 15:59:21 GMT): avagarwal (Tue, 07 Aug 2018 16:00:13 GMT): mahoney1 (Tue, 07 Aug 2018 16:01:27 GMT): avagarwal (Tue, 07 Aug 2018 16:02:33 GMT): hypere (Tue, 07 Aug 2018 16:03:31 GMT): mahoney1 (Tue, 07 Aug 2018 16:07:29 GMT): avagarwal (Tue, 07 Aug 2018 16:12:32 GMT): prasadraavi (Tue, 07 Aug 2018 16:15:21 GMT): prasadraavi (Tue, 07 Aug 2018 16:15:27 GMT): prasadraavi (Tue, 07 Aug 2018 16:16:27 GMT): prasadraavi (Tue, 07 Aug 2018 16:16:53 GMT): prasadraavi (Tue, 07 Aug 2018 16:17:15 GMT): titog (Tue, 07 Aug 2018 16:17:57 GMT): hypere (Tue, 07 Aug 2018 16:19:36 GMT): hypere (Tue, 07 Aug 2018 16:22:51 GMT): prasadraavi (Tue, 07 Aug 2018 16:23:10 GMT): prasadraavi (Tue, 07 Aug 2018 16:23:48 GMT): prasadraavi (Tue, 07 Aug 2018 16:23:49 GMT): titog (Tue, 07 Aug 2018 16:23:52 GMT): prasadraavi (Tue, 07 Aug 2018 16:25:15 GMT): avagarwal (Tue, 07 Aug 2018 16:27:51 GMT): hypere (Tue, 07 Aug 2018 16:32:53 GMT): hypere (Tue, 07 Aug 2018 16:34:42 GMT): hypere (Tue, 07 Aug 2018 16:34:42 GMT): hypere (Tue, 07 Aug 2018 16:34:42 GMT): aguel (Tue, 07 Aug 2018 16:36:03 GMT): titog (Tue, 07 Aug 2018 16:47:42 GMT): hypere (Tue, 07 Aug 2018 16:50:40 GMT): hypere (Tue, 07 Aug 2018 16:50:40 GMT): avagarwal (Tue, 07 Aug 2018 17:03:04 GMT): titog (Tue, 07 Aug 2018 17:05:52 GMT): mahoney1 (Tue, 07 Aug 2018 17:10:52 GMT): mahoney1 (Tue, 07 Aug 2018 17:12:30 GMT): mahoney1 (Tue, 07 Aug 2018 17:12:30 GMT): mahoney1 (Tue, 07 Aug 2018 17:12:30 GMT): mmick (Tue, 07 Aug 2018 17:16:52 GMT): mmick (Tue, 07 Aug 2018 17:16:52 GMT): mahoney1 (Tue, 07 Aug 2018 17:19:39 GMT): mahoney1 (Tue, 07 Aug 2018 17:21:32 GMT): mahoney1 (Tue, 07 Aug 2018 17:21:32 GMT): mmick (Tue, 07 Aug 2018 17:22:23 GMT): mmick (Tue, 07 Aug 2018 17:22:23 GMT): mmick (Tue, 07 Aug 2018 17:22:23 GMT): mmick (Tue, 07 Aug 2018 17:28:00 GMT): prasadraavi (Tue, 07 Aug 2018 17:42:57 GMT): titog (Tue, 07 Aug 2018 17:47:31 GMT): hyper-sunder (Tue, 07 Aug 2018 17:56:34 GMT): hypere (Tue, 07 Aug 2018 17:59:23 GMT): hyper-sunder (Tue, 07 Aug 2018 18:02:49 GMT): hyper-sunder (Tue, 07 Aug 2018 18:03:24 GMT): hyper-sunder (Tue, 07 Aug 2018 18:12:25 GMT): nfrunza (Tue, 07 Aug 2018 20:10:40 GMT): nfrunza (Tue, 07 Aug 2018 20:11:53 GMT): coveloper (Tue, 07 Aug 2018 21:46:47 GMT): coveloper (Tue, 07 Aug 2018 21:48:27 GMT): coveloper (Tue, 07 Aug 2018 21:51:21 GMT): SilambarasanMadhappan (Wed, 08 Aug 2018 07:08:56 GMT): SilambarasanMadhappan (Wed, 08 Aug 2018 07:25:12 GMT): SilambarasanMadhappan (Wed, 08 Aug 2018 07:25:24 GMT): SilambarasanMadhappan (Wed, 08 Aug 2018 07:25:31 GMT): SilambarasanMadhappan (Wed, 08 Aug 2018 07:26:02 GMT): SilambarasanMadhappan (Wed, 08 Aug 2018 07:26:03 GMT): SilambarasanMadhappan (Wed, 08 Aug 2018 07:26:29 GMT): SilambarasanMadhappan (Wed, 08 Aug 2018 07:28:34 GMT): SilambarasanMadhappan (Wed, 08 Aug 2018 07:28:54 GMT): SilambarasanMadhappan (Wed, 08 Aug 2018 07:29:24 GMT): mahoney1 (Wed, 08 Aug 2018 08:29:14 GMT): mahoney1 (Wed, 08 Aug 2018 08:29:14 GMT): mahoney1 (Wed, 08 Aug 2018 08:29:14 GMT): hamza-kakar (Wed, 08 Aug 2018 08:30:57 GMT): mahoney1 (Wed, 08 Aug 2018 08:32:58 GMT): mahoney1 (Wed, 08 Aug 2018 08:47:24 GMT): mahoney1 (Wed, 08 Aug 2018 08:52:32 GMT): Aejnor (Wed, 08 Aug 2018 08:53:26 GMT): mahoney1 (Wed, 08 Aug 2018 09:05:34 GMT): mahoney1 (Wed, 08 Aug 2018 09:05:34 GMT): terrypst (Wed, 08 Aug 2018 09:12:15 GMT): terrypst (Wed, 08 Aug 2018 09:12:15 GMT): terrypst (Wed, 08 Aug 2018 09:12:15 GMT): VenkateshMuthyala (Wed, 08 Aug 2018 09:22:13 GMT): VenkateshMuthyala (Wed, 08 Aug 2018 09:24:37 GMT): mahoney1 (Wed, 08 Aug 2018 09:37:01 GMT): mahoney1 (Wed, 08 Aug 2018 09:37:01 GMT): mahoney1 (Wed, 08 Aug 2018 09:45:17 GMT): geourjoa (Wed, 08 Aug 2018 09:58:12 GMT): geourjoa (Wed, 08 Aug 2018 09:58:18 GMT): geourjoa (Wed, 08 Aug 2018 09:58:41 GMT): mmick (Wed, 08 Aug 2018 10:05:59 GMT): mmick (Wed, 08 Aug 2018 10:05:59 GMT): HoneyShah (Wed, 08 Aug 2018 10:17:54 GMT): HoneyShah (Wed, 08 Aug 2018 10:17:54 GMT): VenkateshMuthyala (Wed, 08 Aug 2018 10:32:26 GMT): VenkateshMuthyala (Wed, 08 Aug 2018 10:32:57 GMT): VenkateshMuthyala (Wed, 08 Aug 2018 10:33:24 GMT): VenkateshMuthyala (Wed, 08 Aug 2018 10:34:28 GMT): VenkateshMuthyala (Wed, 08 Aug 2018 10:35:08 GMT): VenkateshMuthyala (Wed, 08 Aug 2018 10:35:08 GMT): mahoney1 (Wed, 08 Aug 2018 10:43:00 GMT): mahoney1 (Wed, 08 Aug 2018 10:45:57 GMT): mahoney1 (Wed, 08 Aug 2018 10:47:27 GMT): mahoney1 (Wed, 08 Aug 2018 10:53:40 GMT): mahoney1 (Wed, 08 Aug 2018 10:53:40 GMT): SilambarasanMadhappan (Wed, 08 Aug 2018 11:05:52 GMT): HoneyShah (Wed, 08 Aug 2018 11:08:45 GMT): nfrunza (Wed, 08 Aug 2018 12:26:32 GMT): HoneyShah (Wed, 08 Aug 2018 12:27:42 GMT): HoneyShah (Wed, 08 Aug 2018 12:27:42 GMT): koineramitranjan (Wed, 08 Aug 2018 12:38:01 GMT): koineramitranjan (Wed, 08 Aug 2018 12:41:36 GMT): mahoney1 (Wed, 08 Aug 2018 12:55:55 GMT): mahoney1 (Wed, 08 Aug 2018 12:58:32 GMT): mahoney1 (Wed, 08 Aug 2018 12:58:32 GMT): titog (Wed, 08 Aug 2018 13:22:21 GMT): wangrangli (Wed, 08 Aug 2018 15:02:09 GMT): coveloper (Wed, 08 Aug 2018 16:26:25 GMT): nfrunza (Wed, 08 Aug 2018 16:30:59 GMT): nfrunza (Wed, 08 Aug 2018 16:30:59 GMT): davidkel (Wed, 08 Aug 2018 16:42:07 GMT): nfrunza (Wed, 08 Aug 2018 16:45:21 GMT): mahoney1 (Wed, 08 Aug 2018 17:51:01 GMT): mahoney1 (Wed, 08 Aug 2018 17:52:30 GMT): mahoney1 (Wed, 08 Aug 2018 17:52:30 GMT): nfrunza (Wed, 08 Aug 2018 18:40:52 GMT): bstolman (Wed, 08 Aug 2018 19:17:41 GMT): bstolman (Wed, 08 Aug 2018 19:18:44 GMT): bstolman (Wed, 08 Aug 2018 19:25:47 GMT): hypere (Wed, 08 Aug 2018 19:33:16 GMT): bstolman (Wed, 08 Aug 2018 19:48:20 GMT): bstolman (Wed, 08 Aug 2018 19:49:30 GMT): bstolman (Wed, 08 Aug 2018 19:49:44 GMT): bstolman (Wed, 08 Aug 2018 19:49:53 GMT): bstolman (Wed, 08 Aug 2018 19:50:13 GMT): hypere (Wed, 08 Aug 2018 19:51:38 GMT): bstolman (Wed, 08 Aug 2018 19:55:23 GMT): bstolman (Wed, 08 Aug 2018 19:55:42 GMT): hypere (Wed, 08 Aug 2018 20:00:27 GMT): bstolman (Wed, 08 Aug 2018 20:01:07 GMT): bstolman (Wed, 08 Aug 2018 20:02:53 GMT): hypere (Wed, 08 Aug 2018 20:06:27 GMT): bstolman (Wed, 08 Aug 2018 20:10:15 GMT): bstolman (Wed, 08 Aug 2018 20:10:25 GMT): eloff (Wed, 08 Aug 2018 23:54:29 GMT): eloff (Wed, 08 Aug 2018 23:55:39 GMT): eloff (Wed, 08 Aug 2018 23:56:33 GMT): wangrangli (Thu, 09 Aug 2018 01:06:44 GMT): wangrangli (Thu, 09 Aug 2018 01:08:02 GMT): lework (Thu, 09 Aug 2018 03:15:06 GMT): lework (Thu, 09 Aug 2018 03:15:10 GMT): AZ0ZYW0U5 (Thu, 09 Aug 2018 05:05:45 GMT): koineramitranjan (Thu, 09 Aug 2018 05:44:37 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 05:45:55 GMT): HoneyShah (Thu, 09 Aug 2018 06:23:31 GMT): deep123 (Thu, 09 Aug 2018 06:39:01 GMT): deep123 (Thu, 09 Aug 2018 06:39:01 GMT): AnithaReddy (Thu, 09 Aug 2018 06:49:08 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 07:42:29 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 07:42:29 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 07:43:14 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 07:44:19 GMT): rthatcher (Thu, 09 Aug 2018 07:51:17 GMT): rthatcher (Thu, 09 Aug 2018 07:53:40 GMT): rthatcher (Thu, 09 Aug 2018 07:59:08 GMT): rthatcher (Thu, 09 Aug 2018 08:04:15 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 08:56:56 GMT): rthatcher (Thu, 09 Aug 2018 09:00:08 GMT): AZ0ZYW0U5 (Thu, 09 Aug 2018 09:02:15 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 09:02:47 GMT): Varun2887 (Thu, 09 Aug 2018 09:04:37 GMT): AnithaReddy (Thu, 09 Aug 2018 09:07:09 GMT): fedez (Thu, 09 Aug 2018 09:22:20 GMT): fedez (Thu, 09 Aug 2018 09:23:34 GMT): fedez (Thu, 09 Aug 2018 09:24:37 GMT): fedez (Thu, 09 Aug 2018 09:25:13 GMT): rthatcher (Thu, 09 Aug 2018 09:35:42 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 09:36:59 GMT): AnithaReddy (Thu, 09 Aug 2018 09:43:01 GMT): rthatcher (Thu, 09 Aug 2018 09:45:22 GMT): Varun2887 (Thu, 09 Aug 2018 09:51:15 GMT): Varun2887 (Thu, 09 Aug 2018 09:51:34 GMT): Varun2887 (Thu, 09 Aug 2018 09:51:53 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 09:54:34 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 09:54:34 GMT): rthatcher (Thu, 09 Aug 2018 09:55:37 GMT): rthatcher (Thu, 09 Aug 2018 09:58:37 GMT): rthatcher (Thu, 09 Aug 2018 09:58:37 GMT): AnithaReddy (Thu, 09 Aug 2018 10:03:10 GMT): rthatcher (Thu, 09 Aug 2018 10:10:08 GMT): AnithaReddy (Thu, 09 Aug 2018 10:14:56 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 10:17:10 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 10:17:10 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 10:18:25 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 10:18:33 GMT): mahoney1 (Thu, 09 Aug 2018 10:24:27 GMT): mahoney1 (Thu, 09 Aug 2018 10:30:20 GMT): AnithaReddy (Thu, 09 Aug 2018 10:31:15 GMT): deep123 (Thu, 09 Aug 2018 10:35:50 GMT): deep123 (Thu, 09 Aug 2018 10:35:50 GMT): deep123 (Thu, 09 Aug 2018 10:35:50 GMT): deep123 (Thu, 09 Aug 2018 10:35:50 GMT): mahoney1 (Thu, 09 Aug 2018 10:38:06 GMT): mahoney1 (Thu, 09 Aug 2018 10:45:48 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 10:46:24 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 10:47:19 GMT): VenkateshMuthyala (Thu, 09 Aug 2018 10:48:54 GMT): deep123 (Thu, 09 Aug 2018 10:48:56 GMT): deep123 (Thu, 09 Aug 2018 10:48:56 GMT): mahoney1 (Thu, 09 Aug 2018 10:50:28 GMT): mahoney1 (Thu, 09 Aug 2018 10:50:28 GMT): sundeep13 (Thu, 09 Aug 2018 10:54:03 GMT): mahoney1 (Thu, 09 Aug 2018 10:56:08 GMT): mahoney1 (Thu, 09 Aug 2018 10:56:08 GMT): mahoney1 (Thu, 09 Aug 2018 11:15:31 GMT): mahoney1 (Thu, 09 Aug 2018 11:16:05 GMT): mahoney1 (Thu, 09 Aug 2018 11:18:30 GMT): AnithaReddy (Thu, 09 Aug 2018 11:22:20 GMT): AnithaReddy (Thu, 09 Aug 2018 11:25:51 GMT): argman (Thu, 09 Aug 2018 11:34:28 GMT): RockyRacer (Thu, 09 Aug 2018 11:45:30 GMT): nippleDonkey (Thu, 09 Aug 2018 11:49:24 GMT): argman (Thu, 09 Aug 2018 12:15:46 GMT): rthatcher (Thu, 09 Aug 2018 12:52:29 GMT): RockyRacer (Thu, 09 Aug 2018 13:03:34 GMT): RockyRacer (Thu, 09 Aug 2018 13:03:34 GMT): RockyRacer (Thu, 09 Aug 2018 13:03:34 GMT): RockyRacer (Thu, 09 Aug 2018 13:03:34 GMT): RockyRacer (Thu, 09 Aug 2018 13:03:34 GMT): RockyRacer (Thu, 09 Aug 2018 13:03:34 GMT): Farhan1122 (Thu, 09 Aug 2018 16:42:38 GMT): rthatcher (Thu, 09 Aug 2018 16:46:54 GMT): Haddadmj (Thu, 09 Aug 2018 22:40:40 GMT): Haddadmj (Thu, 09 Aug 2018 22:40:45 GMT): touchingsoil (Fri, 10 Aug 2018 02:55:51 GMT): touchingsoil (Fri, 10 Aug 2018 02:55:51 GMT): touchingsoil (Fri, 10 Aug 2018 02:55:51 GMT): touchingsoil (Fri, 10 Aug 2018 02:55:51 GMT): deep123 (Fri, 10 Aug 2018 05:24:22 GMT): deep123 (Fri, 10 Aug 2018 05:24:22 GMT): SilambarasanMadhappan (Fri, 10 Aug 2018 05:47:06 GMT): SilambarasanMadhappan (Fri, 10 Aug 2018 06:19:52 GMT): davidkel (Fri, 10 Aug 2018 06:47:50 GMT): SilambarasanMadhappan (Fri, 10 Aug 2018 07:04:12 GMT): SilambarasanMadhappan (Fri, 10 Aug 2018 07:07:35 GMT): SilambarasanMadhappan (Fri, 10 Aug 2018 07:12:02 GMT): ultimo2020 (Fri, 10 Aug 2018 08:06:04 GMT): ultimo2020 (Fri, 10 Aug 2018 08:06:47 GMT): ultimo2020 (Fri, 10 Aug 2018 08:06:58 GMT): ultimo2020 (Fri, 10 Aug 2018 08:07:01 GMT): rthatcher (Fri, 10 Aug 2018 08:27:07 GMT): rthatcher (Fri, 10 Aug 2018 08:32:16 GMT): mahoney1 (Fri, 10 Aug 2018 08:34:32 GMT): mahoney1 (Fri, 10 Aug 2018 08:49:13 GMT): deep123 (Fri, 10 Aug 2018 08:56:13 GMT): deep123 (Fri, 10 Aug 2018 08:56:13 GMT): mahoney1 (Fri, 10 Aug 2018 08:56:38 GMT): SilambarasanMadhappan (Fri, 10 Aug 2018 08:59:39 GMT): mahoney1 (Fri, 10 Aug 2018 09:05:56 GMT): SilambarasanMadhappan (Fri, 10 Aug 2018 09:07:25 GMT): rthatcher (Fri, 10 Aug 2018 09:16:46 GMT): ultimo2020 (Fri, 10 Aug 2018 09:16:57 GMT): ultimo2020 (Fri, 10 Aug 2018 09:17:35 GMT): ultimo2020 (Fri, 10 Aug 2018 09:18:39 GMT): ultimo2020 (Fri, 10 Aug 2018 09:18:45 GMT): deep123 (Fri, 10 Aug 2018 09:20:54 GMT): SilambarasanMadhappan (Fri, 10 Aug 2018 09:24:14 GMT): mahoney1 (Fri, 10 Aug 2018 09:46:07 GMT): mahoney1 (Fri, 10 Aug 2018 09:46:07 GMT): rthatcher (Fri, 10 Aug 2018 09:53:53 GMT): rthatcher (Fri, 10 Aug 2018 09:53:59 GMT): rthatcher (Fri, 10 Aug 2018 09:54:37 GMT): Jyotirmoy (Fri, 10 Aug 2018 10:18:53 GMT): Farhan1122 (Fri, 10 Aug 2018 10:20:03 GMT): Farhan1122 (Fri, 10 Aug 2018 10:20:15 GMT): Jyotirmoy (Fri, 10 Aug 2018 10:21:01 GMT): Farhan1122 (Fri, 10 Aug 2018 10:22:57 GMT): Jyotirmoy (Fri, 10 Aug 2018 10:25:45 GMT): Farhan1122 (Fri, 10 Aug 2018 10:27:16 GMT): Jyotirmoy (Fri, 10 Aug 2018 10:27:29 GMT): Jyotirmoy (Fri, 10 Aug 2018 10:27:37 GMT): Farhan1122 (Fri, 10 Aug 2018 10:28:50 GMT): mahoney1 (Fri, 10 Aug 2018 10:31:15 GMT): mahoney1 (Fri, 10 Aug 2018 10:31:15 GMT): Jyotirmoy (Fri, 10 Aug 2018 10:31:58 GMT): mahoney1 (Fri, 10 Aug 2018 10:33:54 GMT): Jyotirmoy (Fri, 10 Aug 2018 10:37:52 GMT): rthatcher (Fri, 10 Aug 2018 10:39:39 GMT): SilambarasanMadhappan (Fri, 10 Aug 2018 10:52:02 GMT): Haddadmj (Fri, 10 Aug 2018 10:53:19 GMT): rthatcher (Fri, 10 Aug 2018 11:00:07 GMT): deep123 (Fri, 10 Aug 2018 11:00:16 GMT): deep123 (Fri, 10 Aug 2018 11:00:16 GMT): deep123 (Fri, 10 Aug 2018 11:00:42 GMT): deep123 (Fri, 10 Aug 2018 11:00:42 GMT): deep123 (Fri, 10 Aug 2018 11:00:42 GMT): Jyotirmoy (Fri, 10 Aug 2018 11:16:51 GMT): Jyotirmoy (Fri, 10 Aug 2018 11:17:07 GMT): mahoney1 (Fri, 10 Aug 2018 11:37:07 GMT): mahoney1 (Fri, 10 Aug 2018 11:38:58 GMT): rthatcher (Fri, 10 Aug 2018 11:45:18 GMT): Haddadmj (Fri, 10 Aug 2018 11:49:11 GMT): HoneyShah (Fri, 10 Aug 2018 11:52:47 GMT): HoneyShah (Fri, 10 Aug 2018 11:52:47 GMT): HoneyShah (Fri, 10 Aug 2018 11:52:47 GMT): nippleDonkey (Fri, 10 Aug 2018 12:44:13 GMT): Rmannn (Fri, 10 Aug 2018 12:55:41 GMT): davidkel (Fri, 10 Aug 2018 13:01:52 GMT): mahoney1 (Fri, 10 Aug 2018 13:13:11 GMT): mahoney1 (Fri, 10 Aug 2018 13:13:11 GMT): mahoney1 (Fri, 10 Aug 2018 13:13:11 GMT): mahoney1 (Fri, 10 Aug 2018 13:13:11 GMT): mahoney1 (Fri, 10 Aug 2018 13:13:11 GMT): Rmannn (Fri, 10 Aug 2018 13:17:37 GMT): Haddadmj (Fri, 10 Aug 2018 13:31:33 GMT): rthatcher (Fri, 10 Aug 2018 13:47:00 GMT): Levilk (Fri, 10 Aug 2018 14:14:49 GMT): Levilk (Fri, 10 Aug 2018 14:15:16 GMT): nippleDonkey (Fri, 10 Aug 2018 15:02:03 GMT): ultimo2020 (Fri, 10 Aug 2018 18:22:22 GMT): ultimo2020 (Fri, 10 Aug 2018 18:23:06 GMT): ultimo2020 (Fri, 10 Aug 2018 18:23:24 GMT): ultimo2020 (Fri, 10 Aug 2018 18:24:31 GMT): ultimo2020 (Fri, 10 Aug 2018 18:25:00 GMT): ultimo2020 (Fri, 10 Aug 2018 18:25:02 GMT): ultimo2020 (Fri, 10 Aug 2018 18:25:05 GMT): rupa12 (Fri, 10 Aug 2018 20:39:04 GMT): rupa12 (Fri, 10 Aug 2018 20:39:04 GMT): rprasanakumar (Fri, 10 Aug 2018 22:04:32 GMT): rprasanakumar (Fri, 10 Aug 2018 22:06:32 GMT): rprasanakumar (Fri, 10 Aug 2018 22:06:40 GMT): rupa12 (Fri, 10 Aug 2018 23:14:17 GMT): rprasanakumar (Fri, 10 Aug 2018 23:19:02 GMT): rupa12 (Fri, 10 Aug 2018 23:21:27 GMT): MadDataScience (Fri, 10 Aug 2018 23:34:43 GMT): rprasanakumar (Fri, 10 Aug 2018 23:36:55 GMT): bh4rtp (Sat, 11 Aug 2018 01:37:42 GMT): geethanisp (Sat, 11 Aug 2018 01:49:59 GMT): mrudav.shukla (Sat, 11 Aug 2018 02:58:24 GMT): hypere (Sat, 11 Aug 2018 04:59:11 GMT): mrudav.shukla (Sat, 11 Aug 2018 07:47:55 GMT): davidkel (Sat, 11 Aug 2018 09:36:35 GMT): Haddadmj (Sat, 11 Aug 2018 10:14:21 GMT): Haddadmj (Sat, 11 Aug 2018 10:14:35 GMT): Haddadmj (Sat, 11 Aug 2018 10:16:31 GMT): Haddadmj (Sat, 11 Aug 2018 10:16:50 GMT): varunagarwal (Sat, 11 Aug 2018 11:53:30 GMT): hypere (Sat, 11 Aug 2018 20:46:19 GMT): coveloper (Sat, 11 Aug 2018 21:05:19 GMT): coveloper (Sat, 11 Aug 2018 21:06:33 GMT): coveloper (Sat, 11 Aug 2018 21:08:52 GMT): coveloper (Sat, 11 Aug 2018 21:39:46 GMT): werewolfe (Sat, 11 Aug 2018 21:42:13 GMT): werewolfe (Sat, 11 Aug 2018 21:42:13 GMT): soryboums (Sat, 11 Aug 2018 22:25:34 GMT): coveloper (Sat, 11 Aug 2018 22:28:22 GMT): coveloper (Sat, 11 Aug 2018 22:30:16 GMT): Haddadmj (Sat, 11 Aug 2018 22:55:37 GMT): Haddadmj (Sat, 11 Aug 2018 22:55:45 GMT): Haddadmj (Sat, 11 Aug 2018 22:56:43 GMT): ronaldlong46 (Sun, 12 Aug 2018 03:21:24 GMT): ronaldlong46 (Sun, 12 Aug 2018 03:21:27 GMT): ronaldlong46 (Sun, 12 Aug 2018 03:27:10 GMT): gmb 2 (Sun, 12 Aug 2018 04:40:25 GMT): ronaldlong46 (Sun, 12 Aug 2018 06:44:40 GMT): RaSa 6 (Sun, 12 Aug 2018 12:12:46 GMT): ultimo2020 (Sun, 12 Aug 2018 12:51:14 GMT): ultimo2020 (Sun, 12 Aug 2018 12:51:37 GMT): davidkel (Sun, 12 Aug 2018 12:51:45 GMT): ultimo2020 (Sun, 12 Aug 2018 12:51:47 GMT): AbolfazlSamiei (Sun, 12 Aug 2018 14:56:33 GMT): mmick (Sun, 12 Aug 2018 15:26:43 GMT): touchingsoil (Mon, 13 Aug 2018 02:24:03 GMT): touchingsoil (Mon, 13 Aug 2018 02:24:03 GMT): Achudh (Mon, 13 Aug 2018 02:46:32 GMT): deep123 (Mon, 13 Aug 2018 05:59:05 GMT): deep123 (Mon, 13 Aug 2018 05:59:05 GMT): deep123 (Mon, 13 Aug 2018 05:59:05 GMT): deep123 (Mon, 13 Aug 2018 05:59:05 GMT): deep123 (Mon, 13 Aug 2018 06:00:54 GMT): zmaro (Mon, 13 Aug 2018 06:07:46 GMT): Anshulmittal (Mon, 13 Aug 2018 06:54:26 GMT): Anshulmittal (Mon, 13 Aug 2018 06:54:26 GMT): ultimo2020 (Mon, 13 Aug 2018 07:25:12 GMT): ultimo2020 (Mon, 13 Aug 2018 07:25:47 GMT): ultimo2020 (Mon, 13 Aug 2018 07:25:51 GMT): mmick (Mon, 13 Aug 2018 08:02:21 GMT): rthatcher (Mon, 13 Aug 2018 08:26:45 GMT): rthatcher (Mon, 13 Aug 2018 08:26:45 GMT): Anshulmittal (Mon, 13 Aug 2018 08:31:53 GMT): JeffGutierrez (Mon, 13 Aug 2018 08:40:13 GMT): ultimo2020 (Mon, 13 Aug 2018 08:43:22 GMT): ultimo2020 (Mon, 13 Aug 2018 08:44:18 GMT): ultimo2020 (Mon, 13 Aug 2018 08:44:21 GMT): uber.twin (Mon, 13 Aug 2018 09:06:38 GMT): RaSa 6 (Mon, 13 Aug 2018 09:07:22 GMT): mahoney1 (Mon, 13 Aug 2018 09:10:09 GMT): mahoney1 (Mon, 13 Aug 2018 09:13:28 GMT): mahoney1 (Mon, 13 Aug 2018 09:13:28 GMT): mahoney1 (Mon, 13 Aug 2018 09:16:21 GMT): mahoney1 (Mon, 13 Aug 2018 09:16:21 GMT): mahoney1 (Mon, 13 Aug 2018 09:16:21 GMT): mahoney1 (Mon, 13 Aug 2018 09:16:21 GMT): mahoney1 (Mon, 13 Aug 2018 09:16:21 GMT): rthatcher (Mon, 13 Aug 2018 10:33:31 GMT): Haddadmj (Mon, 13 Aug 2018 10:49:16 GMT): Haddadmj (Mon, 13 Aug 2018 10:49:55 GMT): Haddadmj (Mon, 13 Aug 2018 10:50:31 GMT): Haddadmj (Mon, 13 Aug 2018 10:50:31 GMT): RaSa 6 (Mon, 13 Aug 2018 11:22:31 GMT): mahoney1 (Mon, 13 Aug 2018 11:23:05 GMT): Haddadmj (Mon, 13 Aug 2018 11:24:24 GMT): RaSa 6 (Mon, 13 Aug 2018 11:26:54 GMT): RaSa 6 (Mon, 13 Aug 2018 11:30:15 GMT): mahoney1 (Mon, 13 Aug 2018 11:47:38 GMT): mahoney1 (Mon, 13 Aug 2018 11:47:38 GMT): mahoney1 (Mon, 13 Aug 2018 11:48:47 GMT): mahoney1 (Mon, 13 Aug 2018 11:48:47 GMT): mahoney1 (Mon, 13 Aug 2018 11:49:47 GMT): mahoney1 (Mon, 13 Aug 2018 11:49:47 GMT): deenario (Mon, 13 Aug 2018 12:04:57 GMT): deenario (Mon, 13 Aug 2018 12:05:52 GMT): deenario (Mon, 13 Aug 2018 12:06:12 GMT): deenario (Mon, 13 Aug 2018 12:06:15 GMT): RaSa 6 (Mon, 13 Aug 2018 12:15:07 GMT): RaSa 6 (Mon, 13 Aug 2018 13:43:14 GMT): Anshulmittal (Mon, 13 Aug 2018 14:17:15 GMT): mmick (Mon, 13 Aug 2018 15:48:14 GMT): mmick (Mon, 13 Aug 2018 16:00:19 GMT): rthatcher (Mon, 13 Aug 2018 16:00:27 GMT): coveloper (Mon, 13 Aug 2018 18:11:45 GMT): ronaldlong46 (Mon, 13 Aug 2018 19:00:50 GMT): mmick (Mon, 13 Aug 2018 19:06:53 GMT): ronaldlong46 (Mon, 13 Aug 2018 19:21:20 GMT): rupa12 (Mon, 13 Aug 2018 19:31:10 GMT): l0ve2l3arn (Mon, 13 Aug 2018 20:46:38 GMT): rprasanakumar (Mon, 13 Aug 2018 21:13:30 GMT): JeffGutierrez (Tue, 14 Aug 2018 00:03:05 GMT): coveloper (Tue, 14 Aug 2018 00:07:09 GMT): JeffGutierrez (Tue, 14 Aug 2018 00:10:46 GMT): coveloper (Tue, 14 Aug 2018 00:11:20 GMT): coveloper (Tue, 14 Aug 2018 00:12:51 GMT): JeffGutierrez (Tue, 14 Aug 2018 00:16:15 GMT): coveloper (Tue, 14 Aug 2018 00:17:20 GMT): coveloper (Tue, 14 Aug 2018 00:18:33 GMT): kapilV (Tue, 14 Aug 2018 00:20:02 GMT): coveloper (Tue, 14 Aug 2018 00:20:11 GMT): JeffGutierrez (Tue, 14 Aug 2018 00:32:09 GMT): SilambarasanMadhappan (Tue, 14 Aug 2018 05:19:50 GMT): davidkel (Tue, 14 Aug 2018 05:27:13 GMT): touchingsoil (Tue, 14 Aug 2018 05:36:40 GMT): touchingsoil (Tue, 14 Aug 2018 05:36:40 GMT): SilambarasanMadhappan (Tue, 14 Aug 2018 06:13:52 GMT): RaSa 6 (Tue, 14 Aug 2018 06:32:15 GMT): RaSa 6 (Tue, 14 Aug 2018 06:32:15 GMT): RaSa 6 (Tue, 14 Aug 2018 06:43:14 GMT): davidkel (Tue, 14 Aug 2018 07:10:30 GMT): davidkel (Tue, 14 Aug 2018 07:10:30 GMT): RaSa 6 (Tue, 14 Aug 2018 08:19:21 GMT): rthatcher (Tue, 14 Aug 2018 08:28:23 GMT): rthatcher (Tue, 14 Aug 2018 08:36:23 GMT): labcoinpoc (Tue, 14 Aug 2018 08:37:24 GMT): labcoinpoc (Tue, 14 Aug 2018 08:37:24 GMT): labcoinpoc (Tue, 14 Aug 2018 08:37:24 GMT): RaSa 6 (Tue, 14 Aug 2018 08:44:57 GMT): RaSa 6 (Tue, 14 Aug 2018 08:47:09 GMT): thiyagucse01 (Tue, 14 Aug 2018 08:49:23 GMT): thiyagucse01 (Tue, 14 Aug 2018 08:49:23 GMT): HoneyShah (Tue, 14 Aug 2018 09:07:42 GMT): HoneyShah (Tue, 14 Aug 2018 09:07:42 GMT): mahoney1 (Tue, 14 Aug 2018 09:15:19 GMT): mahoney1 (Tue, 14 Aug 2018 09:15:57 GMT): mahoney1 (Tue, 14 Aug 2018 09:15:57 GMT): mahoney1 (Tue, 14 Aug 2018 09:20:38 GMT): HoneyShah (Tue, 14 Aug 2018 09:22:48 GMT): rthatcher (Tue, 14 Aug 2018 09:32:03 GMT): labcoinpoc (Tue, 14 Aug 2018 09:33:02 GMT): mahoney1 (Tue, 14 Aug 2018 09:39:51 GMT): mahoney1 (Tue, 14 Aug 2018 09:39:51 GMT): labcoinpoc (Tue, 14 Aug 2018 09:41:32 GMT): labcoinpoc (Tue, 14 Aug 2018 09:43:56 GMT): labcoinpoc (Tue, 14 Aug 2018 09:45:30 GMT): malviyamukul (Tue, 14 Aug 2018 09:49:53 GMT): mahoney1 (Tue, 14 Aug 2018 09:51:23 GMT): mahoney1 (Tue, 14 Aug 2018 09:53:53 GMT): labcoinpoc (Tue, 14 Aug 2018 09:54:40 GMT): labcoinpoc (Tue, 14 Aug 2018 09:55:55 GMT): mahoney1 (Tue, 14 Aug 2018 10:00:09 GMT): mahoney1 (Tue, 14 Aug 2018 10:00:09 GMT): mahoney1 (Tue, 14 Aug 2018 10:00:09 GMT): labcoinpoc (Tue, 14 Aug 2018 10:02:40 GMT): mahoney1 (Tue, 14 Aug 2018 10:27:46 GMT): ultimo2020 (Tue, 14 Aug 2018 10:34:52 GMT): MrLangz (Tue, 14 Aug 2018 10:45:25 GMT): ParisMollo (Tue, 14 Aug 2018 11:09:31 GMT): abityildiz (Tue, 14 Aug 2018 11:24:10 GMT): mmick (Tue, 14 Aug 2018 11:58:10 GMT): mmick (Tue, 14 Aug 2018 11:58:10 GMT): mmick (Tue, 14 Aug 2018 11:59:15 GMT): hyper-sunder (Tue, 14 Aug 2018 12:00:14 GMT): rthatcher (Tue, 14 Aug 2018 12:26:23 GMT): hyper-sunder (Tue, 14 Aug 2018 12:31:31 GMT): hyper-sunder (Tue, 14 Aug 2018 12:31:49 GMT): hyper-sunder (Tue, 14 Aug 2018 12:33:43 GMT): HoneyShah (Tue, 14 Aug 2018 12:34:48 GMT): HoneyShah (Tue, 14 Aug 2018 12:34:48 GMT): hyper-sunder (Tue, 14 Aug 2018 12:35:12 GMT): hyper-sunder (Tue, 14 Aug 2018 12:35:29 GMT): parsa (Tue, 14 Aug 2018 12:39:12 GMT): parsa (Tue, 14 Aug 2018 12:40:09 GMT): Jyotirmoy (Tue, 14 Aug 2018 12:53:25 GMT): rthatcher (Tue, 14 Aug 2018 13:12:06 GMT): sureshtedla (Tue, 14 Aug 2018 13:14:20 GMT): sureshtedla (Tue, 14 Aug 2018 13:14:26 GMT): sureshtedla (Tue, 14 Aug 2018 13:15:15 GMT): rthatcher (Tue, 14 Aug 2018 13:21:13 GMT): sureshtedla (Tue, 14 Aug 2018 13:22:24 GMT): mahoney1 (Tue, 14 Aug 2018 13:29:14 GMT): mahoney1 (Tue, 14 Aug 2018 13:29:14 GMT): hyper-sunder (Tue, 14 Aug 2018 13:59:20 GMT): hyper-sunder (Tue, 14 Aug 2018 14:01:16 GMT): RockyRacer (Tue, 14 Aug 2018 14:01:22 GMT): hyper-sunder (Tue, 14 Aug 2018 14:02:15 GMT): hyper-sunder (Tue, 14 Aug 2018 14:02:38 GMT): hyper-sunder (Tue, 14 Aug 2018 14:03:29 GMT): RockyRacer (Tue, 14 Aug 2018 14:03:31 GMT): RockyRacer (Tue, 14 Aug 2018 14:05:06 GMT): RockyRacer (Tue, 14 Aug 2018 14:09:12 GMT): rthatcher (Tue, 14 Aug 2018 15:04:41 GMT): sshrestha (Tue, 14 Aug 2018 15:20:28 GMT): Haddadmj (Tue, 14 Aug 2018 15:35:55 GMT): Haddadmj (Tue, 14 Aug 2018 15:35:55 GMT): coveloper (Tue, 14 Aug 2018 16:09:18 GMT): Jyotirmoy (Tue, 14 Aug 2018 17:38:37 GMT): ErickCaro (Tue, 14 Aug 2018 19:55:19 GMT): soryboums (Tue, 14 Aug 2018 22:41:32 GMT): soryboums (Tue, 14 Aug 2018 22:42:30 GMT): gauthampamu (Wed, 15 Aug 2018 02:43:10 GMT): gauthampamu (Wed, 15 Aug 2018 03:26:56 GMT): gauthampamu (Wed, 15 Aug 2018 03:27:30 GMT): gauthampamu (Wed, 15 Aug 2018 03:41:48 GMT): gauthampamu (Wed, 15 Aug 2018 03:41:49 GMT): Levilk (Wed, 15 Aug 2018 07:06:03 GMT): Levilk (Wed, 15 Aug 2018 07:06:03 GMT): Levilk (Wed, 15 Aug 2018 07:06:03 GMT): Levilk (Wed, 15 Aug 2018 07:11:15 GMT): musemby (Wed, 15 Aug 2018 07:42:02 GMT): stefanvogel65 (Wed, 15 Aug 2018 07:43:52 GMT): labcoinpoc (Wed, 15 Aug 2018 07:44:04 GMT): labcoinpoc (Wed, 15 Aug 2018 07:44:04 GMT): mahoney1 (Wed, 15 Aug 2018 08:40:09 GMT): rthatcher (Wed, 15 Aug 2018 09:10:38 GMT): rthatcher (Wed, 15 Aug 2018 09:10:38 GMT): rthatcher (Wed, 15 Aug 2018 09:26:10 GMT): mahoney1 (Wed, 15 Aug 2018 09:47:35 GMT): mahoney1 (Wed, 15 Aug 2018 09:55:27 GMT): sureshtedla (Wed, 15 Aug 2018 09:58:51 GMT): sureshtedla (Wed, 15 Aug 2018 09:59:03 GMT): sureshtedla (Wed, 15 Aug 2018 10:00:12 GMT): rthatcher (Wed, 15 Aug 2018 10:04:59 GMT): sureshtedla (Wed, 15 Aug 2018 10:08:38 GMT): sureshtedla (Wed, 15 Aug 2018 10:11:33 GMT): sureshtedla (Wed, 15 Aug 2018 10:12:04 GMT): rthatcher (Wed, 15 Aug 2018 10:18:46 GMT): sureshtedla (Wed, 15 Aug 2018 10:21:10 GMT): sureshtedla (Wed, 15 Aug 2018 10:21:10 GMT): sureshtedla (Wed, 15 Aug 2018 10:21:15 GMT): sureshtedla (Wed, 15 Aug 2018 10:22:44 GMT): sureshtedla (Wed, 15 Aug 2018 10:22:44 GMT): sureshtedla (Wed, 15 Aug 2018 10:23:02 GMT): sureshtedla (Wed, 15 Aug 2018 10:23:34 GMT): sureshtedla (Wed, 15 Aug 2018 10:23:43 GMT): rthatcher (Wed, 15 Aug 2018 10:25:31 GMT): sureshtedla (Wed, 15 Aug 2018 10:27:33 GMT): sureshtedla (Wed, 15 Aug 2018 10:27:39 GMT): sureshtedla (Wed, 15 Aug 2018 10:37:16 GMT): sureshtedla (Wed, 15 Aug 2018 10:37:43 GMT): sureshtedla (Wed, 15 Aug 2018 10:37:56 GMT): mmick (Wed, 15 Aug 2018 10:38:38 GMT): mmick (Wed, 15 Aug 2018 10:40:04 GMT): rthatcher (Wed, 15 Aug 2018 10:42:19 GMT): sureshtedla (Wed, 15 Aug 2018 10:43:01 GMT): mahoney1 (Wed, 15 Aug 2018 10:44:49 GMT): mahoney1 (Wed, 15 Aug 2018 10:44:49 GMT): mmick (Wed, 15 Aug 2018 10:46:35 GMT): mahoney1 (Wed, 15 Aug 2018 10:46:38 GMT): sureshtedla (Wed, 15 Aug 2018 10:47:08 GMT): sureshtedla (Wed, 15 Aug 2018 10:47:17 GMT): sureshtedla (Wed, 15 Aug 2018 10:48:52 GMT): mahoney1 (Wed, 15 Aug 2018 11:14:20 GMT): sureshtedla (Wed, 15 Aug 2018 11:40:53 GMT): sureshtedla (Wed, 15 Aug 2018 11:41:34 GMT): sureshtedla (Wed, 15 Aug 2018 11:41:50 GMT): Haddadmj (Wed, 15 Aug 2018 12:04:17 GMT): rthatcher (Wed, 15 Aug 2018 13:07:49 GMT): sureshtedla (Wed, 15 Aug 2018 13:08:44 GMT): sureshtedla (Wed, 15 Aug 2018 13:08:58 GMT): sureshtedla (Wed, 15 Aug 2018 13:10:08 GMT): sureshtedla (Wed, 15 Aug 2018 13:10:08 GMT): mahoney1 (Wed, 15 Aug 2018 16:47:38 GMT): mahoney1 (Wed, 15 Aug 2018 16:47:38 GMT): mahoney1 (Wed, 15 Aug 2018 16:50:18 GMT): mahoney1 (Wed, 15 Aug 2018 16:50:18 GMT): soryboums (Wed, 15 Aug 2018 19:00:28 GMT): StevenP 4 (Wed, 15 Aug 2018 19:23:37 GMT): musemby (Wed, 15 Aug 2018 20:32:02 GMT): musemby (Wed, 15 Aug 2018 20:34:57 GMT): davidkel (Wed, 15 Aug 2018 21:01:39 GMT): dayubian (Wed, 15 Aug 2018 23:30:37 GMT): mhs22 (Thu, 16 Aug 2018 03:14:00 GMT): mhs22 (Thu, 16 Aug 2018 03:14:14 GMT): mhs22 (Thu, 16 Aug 2018 03:14:38 GMT): mhs22 (Thu, 16 Aug 2018 03:14:39 GMT): thiyagucse01 (Thu, 16 Aug 2018 05:36:48 GMT): Mahadream (Thu, 16 Aug 2018 05:51:26 GMT): nippleDonkey (Thu, 16 Aug 2018 07:24:07 GMT): ultimo2020 (Thu, 16 Aug 2018 08:02:47 GMT): rthatcher (Thu, 16 Aug 2018 08:17:51 GMT): Mahadream (Thu, 16 Aug 2018 08:24:04 GMT): mahoney1 (Thu, 16 Aug 2018 09:04:43 GMT): mahoney1 (Thu, 16 Aug 2018 09:06:55 GMT): rthatcher (Thu, 16 Aug 2018 09:13:29 GMT): Mahadream (Thu, 16 Aug 2018 09:24:58 GMT): Mahadream (Thu, 16 Aug 2018 09:24:58 GMT): thiyagucse01 (Thu, 16 Aug 2018 09:25:30 GMT): rthatcher (Thu, 16 Aug 2018 09:31:35 GMT): Mahadream (Thu, 16 Aug 2018 09:33:35 GMT): thiyagucse01 (Thu, 16 Aug 2018 09:37:25 GMT): thiyagucse01 (Thu, 16 Aug 2018 09:37:25 GMT): sureshtedla (Thu, 16 Aug 2018 09:58:27 GMT): sureshtedla (Thu, 16 Aug 2018 09:59:11 GMT): sonukumar18 (Thu, 16 Aug 2018 10:16:59 GMT): sonukumar18 (Thu, 16 Aug 2018 10:18:24 GMT): sonukumar18 (Thu, 16 Aug 2018 10:18:35 GMT): mahoney1 (Thu, 16 Aug 2018 10:18:55 GMT): rthatcher (Thu, 16 Aug 2018 10:19:15 GMT): mahoney1 (Thu, 16 Aug 2018 10:20:11 GMT): mahoney1 (Thu, 16 Aug 2018 10:20:11 GMT): mahoney1 (Thu, 16 Aug 2018 10:20:11 GMT): sonukumar18 (Thu, 16 Aug 2018 10:21:22 GMT): HoneyShah (Thu, 16 Aug 2018 10:25:13 GMT): gangxu (Thu, 16 Aug 2018 10:28:50 GMT): thiyagucse01 (Thu, 16 Aug 2018 10:47:35 GMT): thiyagucse01 (Thu, 16 Aug 2018 10:47:35 GMT): sureshtedla (Thu, 16 Aug 2018 11:11:58 GMT): sureshtedla (Thu, 16 Aug 2018 11:12:22 GMT): sureshtedla (Thu, 16 Aug 2018 11:12:58 GMT): sonukumar18 (Thu, 16 Aug 2018 11:13:41 GMT): sonukumar18 (Thu, 16 Aug 2018 11:13:55 GMT): sonukumar18 (Thu, 16 Aug 2018 11:17:19 GMT): sureshtedla (Thu, 16 Aug 2018 11:24:05 GMT): sureshtedla (Thu, 16 Aug 2018 11:24:21 GMT): sureshtedla (Thu, 16 Aug 2018 11:24:21 GMT): sureshtedla (Thu, 16 Aug 2018 11:24:21 GMT): sureshtedla (Thu, 16 Aug 2018 11:25:03 GMT): mahoney1 (Thu, 16 Aug 2018 11:27:44 GMT): lennertr (Thu, 16 Aug 2018 11:29:45 GMT): sureshtedla (Thu, 16 Aug 2018 11:29:50 GMT): sureshtedla (Thu, 16 Aug 2018 11:30:17 GMT): sureshtedla (Thu, 16 Aug 2018 11:30:32 GMT): lennertr (Thu, 16 Aug 2018 11:32:30 GMT): lennertr (Thu, 16 Aug 2018 11:32:30 GMT): lennertr (Thu, 16 Aug 2018 11:32:30 GMT): ankur_agrawal (Thu, 16 Aug 2018 11:35:00 GMT): ankur_agrawal (Thu, 16 Aug 2018 11:35:33 GMT): mahoney1 (Thu, 16 Aug 2018 11:43:15 GMT): Javi (Thu, 16 Aug 2018 11:51:39 GMT): VadimInshakov (Thu, 16 Aug 2018 12:08:29 GMT): marksta (Thu, 16 Aug 2018 12:18:16 GMT): HoneyShah (Thu, 16 Aug 2018 12:36:53 GMT): HoneyShah (Thu, 16 Aug 2018 12:36:53 GMT): rthatcher (Thu, 16 Aug 2018 12:42:55 GMT): VadimInshakov (Thu, 16 Aug 2018 12:44:25 GMT): sureshtedla (Thu, 16 Aug 2018 12:53:51 GMT): sureshtedla (Thu, 16 Aug 2018 12:53:51 GMT): rthatcher (Thu, 16 Aug 2018 13:19:55 GMT): mahoney1 (Thu, 16 Aug 2018 13:20:48 GMT): mahoney1 (Thu, 16 Aug 2018 13:20:48 GMT): mahoney1 (Thu, 16 Aug 2018 13:20:48 GMT): lennertr (Thu, 16 Aug 2018 13:27:31 GMT): rthatcher (Thu, 16 Aug 2018 13:29:37 GMT): lennertr (Thu, 16 Aug 2018 13:31:24 GMT): lennertr (Thu, 16 Aug 2018 13:36:30 GMT): VadimInshakov (Thu, 16 Aug 2018 13:45:56 GMT): VadimInshakov (Thu, 16 Aug 2018 13:45:56 GMT): VadimInshakov (Thu, 16 Aug 2018 13:45:56 GMT): VadimInshakov (Thu, 16 Aug 2018 13:55:50 GMT): VadimInshakov (Thu, 16 Aug 2018 13:55:50 GMT): mahoney1 (Thu, 16 Aug 2018 14:55:22 GMT): mahoney1 (Thu, 16 Aug 2018 14:55:22 GMT): mahoney1 (Thu, 16 Aug 2018 14:59:24 GMT): mahoney1 (Thu, 16 Aug 2018 14:59:24 GMT): mahoney1 (Thu, 16 Aug 2018 15:01:33 GMT): PraneshGajendran (Thu, 16 Aug 2018 15:20:57 GMT): PraneshGajendran (Thu, 16 Aug 2018 15:21:18 GMT): PraneshGajendran (Thu, 16 Aug 2018 15:21:43 GMT): mahoney1 (Thu, 16 Aug 2018 15:43:21 GMT): mahoney1 (Thu, 16 Aug 2018 15:44:00 GMT): phanikumar (Thu, 16 Aug 2018 15:57:11 GMT): phanikumar (Thu, 16 Aug 2018 15:57:11 GMT): jovan (Thu, 16 Aug 2018 19:47:11 GMT): angieology (Thu, 16 Aug 2018 20:49:35 GMT): angieology (Thu, 16 Aug 2018 20:52:41 GMT): CodyCoe (Fri, 17 Aug 2018 02:11:17 GMT): CodyCoe (Fri, 17 Aug 2018 02:14:25 GMT): deep123 (Fri, 17 Aug 2018 05:33:37 GMT): ultimo2020 (Fri, 17 Aug 2018 05:46:38 GMT): vijnalaw (Fri, 17 Aug 2018 06:26:47 GMT): arnabsutar (Fri, 17 Aug 2018 06:35:08 GMT): sureshtedla (Fri, 17 Aug 2018 06:45:10 GMT): sureshtedla (Fri, 17 Aug 2018 06:45:40 GMT): lennertr (Fri, 17 Aug 2018 06:52:02 GMT): lennertr (Fri, 17 Aug 2018 06:52:02 GMT): rthatcher (Fri, 17 Aug 2018 08:18:22 GMT): rthatcher (Fri, 17 Aug 2018 08:26:21 GMT): lennertr (Fri, 17 Aug 2018 08:28:30 GMT): rthatcher (Fri, 17 Aug 2018 08:32:19 GMT): rthatcher (Fri, 17 Aug 2018 08:33:44 GMT): bryq3 (Fri, 17 Aug 2018 08:34:45 GMT): lennertr (Fri, 17 Aug 2018 08:45:10 GMT): lennertr (Fri, 17 Aug 2018 08:45:10 GMT): lennertr (Fri, 17 Aug 2018 08:45:10 GMT): lennertr (Fri, 17 Aug 2018 08:45:10 GMT): lennertr (Fri, 17 Aug 2018 08:45:10 GMT): lennertr (Fri, 17 Aug 2018 08:45:10 GMT): rthatcher (Fri, 17 Aug 2018 08:55:24 GMT): deep123 (Fri, 17 Aug 2018 08:58:26 GMT): lennertr (Fri, 17 Aug 2018 08:58:30 GMT): sureshtedla (Fri, 17 Aug 2018 09:01:59 GMT): sureshtedla (Fri, 17 Aug 2018 09:01:59 GMT): sureshtedla (Fri, 17 Aug 2018 09:01:59 GMT): sureshtedla (Fri, 17 Aug 2018 09:01:59 GMT): uber.twin (Fri, 17 Aug 2018 09:04:08 GMT): mahoney1 (Fri, 17 Aug 2018 09:10:31 GMT): sureshtedla (Fri, 17 Aug 2018 09:13:58 GMT): mahoney1 (Fri, 17 Aug 2018 09:14:21 GMT): mahoney1 (Fri, 17 Aug 2018 09:14:21 GMT): touchingsoil (Fri, 17 Aug 2018 09:15:39 GMT): mahoney1 (Fri, 17 Aug 2018 09:17:56 GMT): touchingsoil (Fri, 17 Aug 2018 09:20:03 GMT): mahoney1 (Fri, 17 Aug 2018 09:24:56 GMT): mahoney1 (Fri, 17 Aug 2018 09:26:50 GMT): touchingsoil (Fri, 17 Aug 2018 09:36:11 GMT): thiyagucse01 (Fri, 17 Aug 2018 09:40:48 GMT): uber.twin (Fri, 17 Aug 2018 09:48:29 GMT): mahoney1 (Fri, 17 Aug 2018 09:51:03 GMT): mahoney1 (Fri, 17 Aug 2018 09:51:03 GMT): uber.twin (Fri, 17 Aug 2018 09:52:55 GMT): touchingsoil (Fri, 17 Aug 2018 09:55:53 GMT): mahoney1 (Fri, 17 Aug 2018 10:05:51 GMT): mahoney1 (Fri, 17 Aug 2018 10:05:51 GMT): mahoney1 (Fri, 17 Aug 2018 10:05:51 GMT): mahoney1 (Fri, 17 Aug 2018 10:05:51 GMT): MarcelvandeKerkhof (Fri, 17 Aug 2018 10:09:48 GMT): deep123 (Fri, 17 Aug 2018 10:10:28 GMT): deep123 (Fri, 17 Aug 2018 10:10:28 GMT): deep123 (Fri, 17 Aug 2018 10:10:28 GMT): deep123 (Fri, 17 Aug 2018 10:10:28 GMT): deep123 (Fri, 17 Aug 2018 10:10:28 GMT): deep123 (Fri, 17 Aug 2018 10:10:28 GMT): mahoney1 (Fri, 17 Aug 2018 10:12:53 GMT): mahoney1 (Fri, 17 Aug 2018 10:15:14 GMT): MarcelvandeKerkhof (Fri, 17 Aug 2018 11:07:03 GMT): rizwan92 (Fri, 17 Aug 2018 11:12:15 GMT): rizwan92 (Fri, 17 Aug 2018 11:14:02 GMT): sureshtedla (Fri, 17 Aug 2018 11:47:08 GMT): uber.twin (Fri, 17 Aug 2018 12:23:48 GMT): marksta (Fri, 17 Aug 2018 12:51:43 GMT): uber.twin (Fri, 17 Aug 2018 13:13:44 GMT): uber.twin (Fri, 17 Aug 2018 13:13:44 GMT): uber.twin (Fri, 17 Aug 2018 13:13:44 GMT): mahoney1 (Fri, 17 Aug 2018 13:30:20 GMT): mahoney1 (Fri, 17 Aug 2018 13:30:20 GMT): mahoney1 (Fri, 17 Aug 2018 13:54:32 GMT): mahoney1 (Fri, 17 Aug 2018 13:54:55 GMT): sureshtedla (Fri, 17 Aug 2018 13:56:49 GMT): sureshtedla (Fri, 17 Aug 2018 13:57:03 GMT): mahoney1 (Fri, 17 Aug 2018 13:57:44 GMT): mahoney1 (Fri, 17 Aug 2018 13:58:58 GMT): sureshtedla (Fri, 17 Aug 2018 14:48:20 GMT): BikashPal (Fri, 17 Aug 2018 14:49:37 GMT): sureshtedla (Fri, 17 Aug 2018 14:50:06 GMT): sureshtedla (Fri, 17 Aug 2018 14:50:23 GMT): mahoney1 (Fri, 17 Aug 2018 15:11:44 GMT): sureshtedla (Fri, 17 Aug 2018 15:17:27 GMT): sureshtedla (Fri, 17 Aug 2018 15:17:27 GMT): ndatebayo (Fri, 17 Aug 2018 15:50:37 GMT): ndatebayo (Fri, 17 Aug 2018 15:50:37 GMT): JackMalinowski (Fri, 17 Aug 2018 16:31:58 GMT): mahoney1 (Fri, 17 Aug 2018 16:32:01 GMT): mahoney1 (Fri, 17 Aug 2018 16:35:28 GMT): mahoney1 (Fri, 17 Aug 2018 16:36:05 GMT): JackMalinowski (Fri, 17 Aug 2018 17:07:47 GMT): JackMalinowski (Fri, 17 Aug 2018 17:07:47 GMT): JackMalinowski (Fri, 17 Aug 2018 17:07:47 GMT): Gaspard (Sat, 18 Aug 2018 22:50:04 GMT): JackMalinowski (Sun, 19 Aug 2018 01:40:56 GMT): oooonduke (Sun, 19 Aug 2018 10:27:07 GMT): sureshtedla (Sun, 19 Aug 2018 10:30:39 GMT): oooonduke (Sun, 19 Aug 2018 10:35:15 GMT): jesro (Sun, 19 Aug 2018 12:05:54 GMT): jesro (Sun, 19 Aug 2018 12:57:54 GMT): davidkel (Sun, 19 Aug 2018 13:06:13 GMT): jesro (Sun, 19 Aug 2018 13:10:02 GMT): tak13 (Sun, 19 Aug 2018 13:22:52 GMT): tak13 (Sun, 19 Aug 2018 13:24:54 GMT): tak13 (Sun, 19 Aug 2018 13:31:44 GMT): silliman (Sun, 19 Aug 2018 14:06:41 GMT): silliman (Sun, 19 Aug 2018 14:06:41 GMT): varunagarwal (Sun, 19 Aug 2018 15:22:20 GMT): silliman (Sun, 19 Aug 2018 16:46:35 GMT): ceccode (Sun, 19 Aug 2018 16:52:51 GMT): ShawnCorliss (Sun, 19 Aug 2018 18:12:27 GMT): mahoney1 (Sun, 19 Aug 2018 19:27:23 GMT): mahoney1 (Sun, 19 Aug 2018 19:29:25 GMT): sureshtedla (Sun, 19 Aug 2018 19:55:07 GMT): rosh08 (Sun, 19 Aug 2018 22:30:51 GMT): rosh08 (Sun, 19 Aug 2018 22:32:49 GMT): rosh08 (Sun, 19 Aug 2018 22:33:09 GMT): silliman (Sun, 19 Aug 2018 23:24:39 GMT): avagarwal (Mon, 20 Aug 2018 00:41:14 GMT): moyating (Mon, 20 Aug 2018 03:25:48 GMT): harryc (Mon, 20 Aug 2018 03:30:25 GMT): harryc (Mon, 20 Aug 2018 03:34:20 GMT): harryc (Mon, 20 Aug 2018 03:34:20 GMT): harryc (Mon, 20 Aug 2018 03:34:59 GMT): harryc (Mon, 20 Aug 2018 03:36:19 GMT): harryc (Mon, 20 Aug 2018 03:37:22 GMT): labcoinpoc (Mon, 20 Aug 2018 04:02:23 GMT): labcoinpoc (Mon, 20 Aug 2018 04:02:23 GMT): labcoinpoc (Mon, 20 Aug 2018 04:02:23 GMT): labcoinpoc (Mon, 20 Aug 2018 04:02:23 GMT): labcoinpoc (Mon, 20 Aug 2018 04:02:23 GMT): deep123 (Mon, 20 Aug 2018 04:14:32 GMT): deep123 (Mon, 20 Aug 2018 04:14:32 GMT): harryc (Mon, 20 Aug 2018 04:22:45 GMT): harryc (Mon, 20 Aug 2018 04:27:28 GMT): labcoinpoc (Mon, 20 Aug 2018 04:32:29 GMT): labcoinpoc (Mon, 20 Aug 2018 04:35:35 GMT): harryc (Mon, 20 Aug 2018 04:37:20 GMT): labcoinpoc (Mon, 20 Aug 2018 04:38:39 GMT): harryc (Mon, 20 Aug 2018 04:39:52 GMT): labcoinpoc (Mon, 20 Aug 2018 04:43:56 GMT): labcoinpoc (Mon, 20 Aug 2018 04:47:00 GMT): harryc (Mon, 20 Aug 2018 05:03:23 GMT): deep123 (Mon, 20 Aug 2018 06:15:41 GMT): davidkel (Mon, 20 Aug 2018 06:19:45 GMT): davidkel (Mon, 20 Aug 2018 06:19:45 GMT): davidkel (Mon, 20 Aug 2018 06:19:45 GMT): deep123 (Mon, 20 Aug 2018 06:29:18 GMT): deep123 (Mon, 20 Aug 2018 06:29:18 GMT): deep123 (Mon, 20 Aug 2018 06:29:18 GMT): deep123 (Mon, 20 Aug 2018 06:29:18 GMT): deep123 (Mon, 20 Aug 2018 06:29:18 GMT): deep123 (Mon, 20 Aug 2018 06:29:18 GMT): lennertr (Mon, 20 Aug 2018 06:43:41 GMT): labcoinpoc (Mon, 20 Aug 2018 06:49:39 GMT): labcoinpoc (Mon, 20 Aug 2018 06:49:39 GMT): lennertr (Mon, 20 Aug 2018 06:53:38 GMT): bensonkb (Mon, 20 Aug 2018 07:19:46 GMT): HarshiChandraSekar (Mon, 20 Aug 2018 07:31:59 GMT): davidkel (Mon, 20 Aug 2018 07:33:27 GMT): davidkel (Mon, 20 Aug 2018 07:33:27 GMT): jbayotlang (Mon, 20 Aug 2018 07:39:35 GMT): ndatebayo (Mon, 20 Aug 2018 08:42:09 GMT): ultimo2020 (Mon, 20 Aug 2018 08:48:57 GMT): ultimo2020 (Mon, 20 Aug 2018 08:48:58 GMT): ultimo2020 (Mon, 20 Aug 2018 08:49:20 GMT): sjure (Mon, 20 Aug 2018 08:53:53 GMT): ultimo2020 (Mon, 20 Aug 2018 08:58:33 GMT): Mahadream (Mon, 20 Aug 2018 09:47:02 GMT): Mahadream (Mon, 20 Aug 2018 09:47:05 GMT): mahoney1 (Mon, 20 Aug 2018 09:54:51 GMT): mahoney1 (Mon, 20 Aug 2018 09:54:51 GMT): rthatcher (Mon, 20 Aug 2018 09:55:22 GMT): ajeetrock (Mon, 20 Aug 2018 09:55:28 GMT): Mahadream (Mon, 20 Aug 2018 09:56:09 GMT): Mahadream (Mon, 20 Aug 2018 09:57:28 GMT): Mahadream (Mon, 20 Aug 2018 09:57:30 GMT): mahoney1 (Mon, 20 Aug 2018 10:04:10 GMT): mahoney1 (Mon, 20 Aug 2018 10:04:10 GMT): mahoney1 (Mon, 20 Aug 2018 10:06:26 GMT): ultimo2020 (Mon, 20 Aug 2018 10:06:27 GMT): ultimo2020 (Mon, 20 Aug 2018 10:06:48 GMT): mahoney1 (Mon, 20 Aug 2018 10:07:40 GMT): ultimo2020 (Mon, 20 Aug 2018 10:11:17 GMT): ultimo2020 (Mon, 20 Aug 2018 10:11:29 GMT): ultimo2020 (Mon, 20 Aug 2018 10:11:51 GMT): ultimo2020 (Mon, 20 Aug 2018 10:12:01 GMT): mahoney1 (Mon, 20 Aug 2018 10:15:44 GMT): mahoney1 (Mon, 20 Aug 2018 10:16:36 GMT): mahoney1 (Mon, 20 Aug 2018 10:16:36 GMT): ultimo2020 (Mon, 20 Aug 2018 10:19:32 GMT): ultimo2020 (Mon, 20 Aug 2018 10:19:49 GMT): ultimo2020 (Mon, 20 Aug 2018 10:19:59 GMT): ultimo2020 (Mon, 20 Aug 2018 10:20:07 GMT): deep123 (Mon, 20 Aug 2018 10:27:05 GMT): deep123 (Mon, 20 Aug 2018 10:27:05 GMT): deep123 (Mon, 20 Aug 2018 10:29:22 GMT): deep123 (Mon, 20 Aug 2018 10:48:52 GMT): deep123 (Mon, 20 Aug 2018 10:48:52 GMT): deep123 (Mon, 20 Aug 2018 10:48:52 GMT): deep123 (Mon, 20 Aug 2018 10:48:52 GMT): deep123 (Mon, 20 Aug 2018 10:48:52 GMT): mahoney1 (Mon, 20 Aug 2018 10:50:31 GMT): lennertr (Mon, 20 Aug 2018 11:02:19 GMT): HarshiChandraSekar (Mon, 20 Aug 2018 11:07:59 GMT): HarshiChandraSekar (Mon, 20 Aug 2018 11:12:46 GMT): Jyotirmoy (Mon, 20 Aug 2018 11:18:09 GMT): uber.twin (Mon, 20 Aug 2018 11:34:32 GMT): uber.twin (Mon, 20 Aug 2018 11:34:32 GMT): uber.twin (Mon, 20 Aug 2018 11:34:32 GMT): lennertr (Mon, 20 Aug 2018 11:42:54 GMT): mahoney1 (Mon, 20 Aug 2018 12:00:30 GMT): ultimo2020 (Mon, 20 Aug 2018 12:03:24 GMT): mahoney1 (Mon, 20 Aug 2018 12:11:49 GMT): mahoney1 (Mon, 20 Aug 2018 12:13:36 GMT): mahoney1 (Mon, 20 Aug 2018 12:21:27 GMT): mahoney1 (Mon, 20 Aug 2018 12:21:27 GMT): ultimo2020 (Mon, 20 Aug 2018 12:23:03 GMT): ultimo2020 (Mon, 20 Aug 2018 12:23:24 GMT): ultimo2020 (Mon, 20 Aug 2018 12:23:30 GMT): ultimo2020 (Mon, 20 Aug 2018 12:23:37 GMT): ultimo2020 (Mon, 20 Aug 2018 12:23:43 GMT): ultimo2020 (Mon, 20 Aug 2018 12:27:03 GMT): mahoney1 (Mon, 20 Aug 2018 12:31:58 GMT): MarcelvandeKerkhof (Mon, 20 Aug 2018 12:35:06 GMT): ultimo2020 (Mon, 20 Aug 2018 12:36:05 GMT): MarcelvandeKerkhof (Mon, 20 Aug 2018 12:37:40 GMT): lennertr (Mon, 20 Aug 2018 12:39:36 GMT): ultimo2020 (Mon, 20 Aug 2018 12:41:21 GMT): MarcelvandeKerkhof (Mon, 20 Aug 2018 12:42:28 GMT): ultimo2020 (Mon, 20 Aug 2018 12:52:18 GMT): ultimo2020 (Mon, 20 Aug 2018 12:52:19 GMT): ultimo2020 (Mon, 20 Aug 2018 12:52:28 GMT): lennertr (Mon, 20 Aug 2018 12:54:43 GMT): MarcelvandeKerkhof (Mon, 20 Aug 2018 12:59:01 GMT): gdmuzzillo (Mon, 20 Aug 2018 13:02:57 GMT): mahoney1 (Mon, 20 Aug 2018 13:21:15 GMT): mahoney1 (Mon, 20 Aug 2018 13:21:15 GMT): ultimo2020 (Mon, 20 Aug 2018 13:28:09 GMT): ultimo2020 (Mon, 20 Aug 2018 13:28:19 GMT): Drest (Mon, 20 Aug 2018 14:40:42 GMT): mahoney1 (Mon, 20 Aug 2018 14:58:39 GMT): mahoney1 (Mon, 20 Aug 2018 14:58:39 GMT): bsteinfeld (Mon, 20 Aug 2018 16:03:29 GMT): dave.enyeart (Mon, 20 Aug 2018 16:05:24 GMT): dave.enyeart (Mon, 20 Aug 2018 16:06:12 GMT): bsteinfeld (Mon, 20 Aug 2018 16:06:51 GMT): bsteinfeld (Mon, 20 Aug 2018 16:07:22 GMT): dave.enyeart (Mon, 20 Aug 2018 16:07:58 GMT): bsteinfeld (Mon, 20 Aug 2018 16:08:38 GMT): bsteinfeld (Mon, 20 Aug 2018 16:08:55 GMT): bsteinfeld (Mon, 20 Aug 2018 16:09:35 GMT): dave.enyeart (Mon, 20 Aug 2018 16:09:40 GMT): rthatcher (Mon, 20 Aug 2018 16:11:28 GMT): dave.enyeart (Mon, 20 Aug 2018 16:11:59 GMT): dave.enyeart (Mon, 20 Aug 2018 16:11:59 GMT): rthatcher (Mon, 20 Aug 2018 16:13:10 GMT): bsteinfeld (Mon, 20 Aug 2018 16:15:32 GMT): bsteinfeld (Mon, 20 Aug 2018 16:15:51 GMT): ultimo2020 (Mon, 20 Aug 2018 16:16:05 GMT): bsteinfeld (Mon, 20 Aug 2018 16:16:33 GMT): ultimo2020 (Mon, 20 Aug 2018 16:33:38 GMT): ultimo2020 (Mon, 20 Aug 2018 16:34:06 GMT): ultimo2020 (Mon, 20 Aug 2018 16:34:13 GMT): ultimo2020 (Mon, 20 Aug 2018 16:34:38 GMT): sjure (Mon, 20 Aug 2018 18:18:49 GMT): rosh08 (Mon, 20 Aug 2018 19:06:56 GMT): rosh08 (Mon, 20 Aug 2018 19:08:32 GMT): rosh08 (Mon, 20 Aug 2018 19:08:32 GMT): silliman (Mon, 20 Aug 2018 19:12:21 GMT): rosh08 (Mon, 20 Aug 2018 19:14:18 GMT): rosh08 (Mon, 20 Aug 2018 19:14:23 GMT): rosh08 (Mon, 20 Aug 2018 19:14:31 GMT): nicoventrella (Mon, 20 Aug 2018 20:59:34 GMT): nicoventrella (Mon, 20 Aug 2018 20:59:44 GMT): harryc (Mon, 20 Aug 2018 22:34:31 GMT): JackMalinowski (Mon, 20 Aug 2018 23:25:12 GMT): CarlosHuggins (Mon, 20 Aug 2018 23:25:12 GMT): adamgering (Tue, 21 Aug 2018 00:36:30 GMT): deep123 (Tue, 21 Aug 2018 04:06:39 GMT): thiyagucse01 (Tue, 21 Aug 2018 05:15:09 GMT): vanclief (Tue, 21 Aug 2018 05:49:09 GMT): vanclief (Tue, 21 Aug 2018 05:51:38 GMT): vanclief (Tue, 21 Aug 2018 05:54:53 GMT): vanclief (Tue, 21 Aug 2018 05:54:53 GMT): thiyagucse01 (Tue, 21 Aug 2018 06:04:33 GMT): thiyagucse01 (Tue, 21 Aug 2018 06:04:33 GMT): ultimo2020 (Tue, 21 Aug 2018 06:06:18 GMT): ultimo2020 (Tue, 21 Aug 2018 06:06:34 GMT): ultimo2020 (Tue, 21 Aug 2018 06:06:39 GMT): ultimo2020 (Tue, 21 Aug 2018 06:07:05 GMT): ultimo2020 (Tue, 21 Aug 2018 06:07:44 GMT): ultimo2020 (Tue, 21 Aug 2018 06:08:16 GMT): ultimo2020 (Tue, 21 Aug 2018 06:08:32 GMT): Jyotirmoy (Tue, 21 Aug 2018 06:24:23 GMT): ronaldlong46 (Tue, 21 Aug 2018 06:32:55 GMT): ultimo2020 (Tue, 21 Aug 2018 06:55:10 GMT): ronaldlong46 (Tue, 21 Aug 2018 07:00:55 GMT): deep123 (Tue, 21 Aug 2018 07:10:07 GMT): AnithaReddy (Tue, 21 Aug 2018 07:26:02 GMT): ultimo2020 (Tue, 21 Aug 2018 07:53:12 GMT): lennertr (Tue, 21 Aug 2018 07:57:59 GMT): malviyamukul (Tue, 21 Aug 2018 08:06:35 GMT): HoneyShah (Tue, 21 Aug 2018 08:32:56 GMT): deep123 (Tue, 21 Aug 2018 08:44:29 GMT): rthatcher (Tue, 21 Aug 2018 08:48:32 GMT): rthatcher (Tue, 21 Aug 2018 08:58:23 GMT): AnithaReddy (Tue, 21 Aug 2018 08:59:49 GMT): chenludev (Tue, 21 Aug 2018 09:01:41 GMT): rthatcher (Tue, 21 Aug 2018 09:02:22 GMT): rthatcher (Tue, 21 Aug 2018 09:04:03 GMT): HoneyShah (Tue, 21 Aug 2018 09:06:02 GMT): HoneyShah (Tue, 21 Aug 2018 09:07:28 GMT): AnithaReddy (Tue, 21 Aug 2018 09:14:17 GMT): rthatcher (Tue, 21 Aug 2018 09:19:35 GMT): mahoney1 (Tue, 21 Aug 2018 09:20:09 GMT): mahoney1 (Tue, 21 Aug 2018 09:20:09 GMT): Switch2Logic (Tue, 21 Aug 2018 09:20:13 GMT): Switch2Logic (Tue, 21 Aug 2018 09:20:13 GMT): Switch2Logic (Tue, 21 Aug 2018 09:20:13 GMT): Switch2Logic (Tue, 21 Aug 2018 09:20:13 GMT): Switch2Logic (Tue, 21 Aug 2018 09:20:13 GMT): Switch2Logic (Tue, 21 Aug 2018 09:20:13 GMT): giacomo.minighin (Tue, 21 Aug 2018 09:21:53 GMT): sureshtedla (Tue, 21 Aug 2018 09:23:59 GMT): ultimo2020 (Tue, 21 Aug 2018 09:25:57 GMT): mahoney1 (Tue, 21 Aug 2018 09:57:59 GMT): mahoney1 (Tue, 21 Aug 2018 09:57:59 GMT): HoneyShah (Tue, 21 Aug 2018 09:59:52 GMT): HoneyShah (Tue, 21 Aug 2018 09:59:52 GMT): rthatcher (Tue, 21 Aug 2018 10:00:19 GMT): Switch2Logic (Tue, 21 Aug 2018 10:04:11 GMT): uber.twin (Tue, 21 Aug 2018 10:15:41 GMT): uber.twin (Tue, 21 Aug 2018 10:15:41 GMT): uber.twin (Tue, 21 Aug 2018 10:15:41 GMT): ultimo2020 (Tue, 21 Aug 2018 10:17:03 GMT): ultimo2020 (Tue, 21 Aug 2018 10:28:29 GMT): ultimo2020 (Tue, 21 Aug 2018 10:28:48 GMT): MarcelvandeKerkhof (Tue, 21 Aug 2018 10:34:41 GMT): MarcelvandeKerkhof (Tue, 21 Aug 2018 10:34:41 GMT): MarcelvandeKerkhof (Tue, 21 Aug 2018 10:34:41 GMT): MarcelvandeKerkhof (Tue, 21 Aug 2018 10:34:41 GMT): MarcelvandeKerkhof (Tue, 21 Aug 2018 10:34:41 GMT): mahoney1 (Tue, 21 Aug 2018 11:05:34 GMT): mahoney1 (Tue, 21 Aug 2018 11:05:34 GMT): mahoney1 (Tue, 21 Aug 2018 11:05:34 GMT): mahoney1 (Tue, 21 Aug 2018 11:05:34 GMT): MarcelvandeKerkhof (Tue, 21 Aug 2018 11:09:37 GMT): mahoney1 (Tue, 21 Aug 2018 11:10:21 GMT): mahoney1 (Tue, 21 Aug 2018 11:16:10 GMT): mahoney1 (Tue, 21 Aug 2018 11:16:10 GMT): mahoney1 (Tue, 21 Aug 2018 11:16:10 GMT): lennertr (Tue, 21 Aug 2018 11:19:12 GMT): MarcelvandeKerkhof (Tue, 21 Aug 2018 11:20:46 GMT): thiyagucse01 (Tue, 21 Aug 2018 11:28:28 GMT): thiyagucse01 (Tue, 21 Aug 2018 11:28:28 GMT): mahoney1 (Tue, 21 Aug 2018 11:39:22 GMT): mahoney1 (Tue, 21 Aug 2018 11:43:37 GMT): mahoney1 (Tue, 21 Aug 2018 11:43:37 GMT): mahoney1 (Tue, 21 Aug 2018 11:43:37 GMT): thiyagucse01 (Tue, 21 Aug 2018 11:44:24 GMT): satyajitdeshmukh (Tue, 21 Aug 2018 11:47:11 GMT): mahoney1 (Tue, 21 Aug 2018 11:51:09 GMT): MarcelvandeKerkhof (Tue, 21 Aug 2018 12:09:30 GMT): satyajitdeshmukh (Tue, 21 Aug 2018 12:18:52 GMT): satyajitdeshmukh (Tue, 21 Aug 2018 12:19:10 GMT): HoneyShah (Tue, 21 Aug 2018 12:19:53 GMT): HoneyShah (Tue, 21 Aug 2018 12:21:43 GMT): JackMalinowski (Tue, 21 Aug 2018 12:28:03 GMT): mahoney1 (Tue, 21 Aug 2018 12:46:34 GMT): mahoney1 (Tue, 21 Aug 2018 12:54:39 GMT): rthatcher (Tue, 21 Aug 2018 13:26:13 GMT): Haddadmj (Tue, 21 Aug 2018 14:16:05 GMT): Haddadmj (Tue, 21 Aug 2018 14:18:44 GMT): JackMalinowski (Tue, 21 Aug 2018 14:47:44 GMT): mahoney1 (Tue, 21 Aug 2018 14:59:37 GMT): Ethos 1 (Tue, 21 Aug 2018 15:29:42 GMT): ErickCaro (Tue, 21 Aug 2018 15:37:53 GMT): Ethos 1 (Tue, 21 Aug 2018 15:40:54 GMT): Ethos 1 (Tue, 21 Aug 2018 15:40:54 GMT): Ethos 1 (Tue, 21 Aug 2018 15:40:54 GMT): Ethos 1 (Tue, 21 Aug 2018 15:40:54 GMT): Ethos 1 (Tue, 21 Aug 2018 15:40:54 GMT): rthatcher (Tue, 21 Aug 2018 15:53:28 GMT): Ethos 1 (Tue, 21 Aug 2018 16:04:34 GMT): Ethos 1 (Tue, 21 Aug 2018 16:04:34 GMT): Ethos 1 (Tue, 21 Aug 2018 16:04:34 GMT): Ethos 1 (Tue, 21 Aug 2018 16:04:34 GMT): umamaheswarv (Tue, 21 Aug 2018 16:18:57 GMT): sjure (Tue, 21 Aug 2018 16:22:42 GMT): VenkataY (Tue, 21 Aug 2018 16:24:59 GMT): mahoney1 (Tue, 21 Aug 2018 16:41:58 GMT): Ethos 1 (Tue, 21 Aug 2018 16:50:03 GMT): sureshtedla (Tue, 21 Aug 2018 17:50:20 GMT): ErickCaro (Tue, 21 Aug 2018 18:01:28 GMT): SunayanaReddy (Tue, 21 Aug 2018 18:11:49 GMT): SunayanaReddy (Tue, 21 Aug 2018 18:12:36 GMT): SunayanaReddy (Tue, 21 Aug 2018 18:16:30 GMT): MikeRichardson (Tue, 21 Aug 2018 18:23:33 GMT): MikeRichardson (Tue, 21 Aug 2018 18:29:43 GMT): MikeRichardson (Tue, 21 Aug 2018 18:29:43 GMT): MikeRichardson (Tue, 21 Aug 2018 18:29:43 GMT): MikeRichardson (Tue, 21 Aug 2018 18:29:43 GMT): MikeRichardson (Tue, 21 Aug 2018 18:29:43 GMT): MikeRichardson (Tue, 21 Aug 2018 18:29:43 GMT): MikeRichardson (Tue, 21 Aug 2018 18:29:43 GMT): MikeRichardson (Tue, 21 Aug 2018 18:29:43 GMT): MikeRichardson (Tue, 21 Aug 2018 18:29:43 GMT): MikeRichardson (Tue, 21 Aug 2018 18:29:43 GMT): MikeRichardson (Tue, 21 Aug 2018 18:29:43 GMT): MikeRichardson (Tue, 21 Aug 2018 18:29:43 GMT): MikeRichardson (Tue, 21 Aug 2018 18:29:43 GMT): varinder (Tue, 21 Aug 2018 18:30:15 GMT): MikeRichardson (Tue, 21 Aug 2018 18:35:56 GMT): MikeRichardson (Tue, 21 Aug 2018 18:36:28 GMT): MikeRichardson (Tue, 21 Aug 2018 18:39:33 GMT): sureshtedla (Tue, 21 Aug 2018 19:39:41 GMT): davidkel (Tue, 21 Aug 2018 19:42:54 GMT): rupa12 (Tue, 21 Aug 2018 22:31:53 GMT): LinuxLearner1 (Wed, 22 Aug 2018 00:14:38 GMT): zerefwayne (Wed, 22 Aug 2018 04:17:21 GMT): umamaheswarv (Wed, 22 Aug 2018 06:01:40 GMT): umamaheswarv (Wed, 22 Aug 2018 06:01:40 GMT): umamaheswarv (Wed, 22 Aug 2018 06:01:40 GMT): ultimo2020 (Wed, 22 Aug 2018 06:41:50 GMT): lennertr (Wed, 22 Aug 2018 06:49:01 GMT): ADPhx13 (Wed, 22 Aug 2018 06:55:40 GMT): davidkel (Wed, 22 Aug 2018 07:14:15 GMT): lennertr (Wed, 22 Aug 2018 07:25:00 GMT): lennertr (Wed, 22 Aug 2018 07:25:00 GMT): lennertr (Wed, 22 Aug 2018 07:25:00 GMT): lennertr (Wed, 22 Aug 2018 07:25:00 GMT): davidkel (Wed, 22 Aug 2018 07:32:50 GMT): lennertr (Wed, 22 Aug 2018 07:34:26 GMT): davidkel (Wed, 22 Aug 2018 07:35:36 GMT): lennertr (Wed, 22 Aug 2018 07:37:05 GMT): davidkel (Wed, 22 Aug 2018 07:38:10 GMT): lennertr (Wed, 22 Aug 2018 07:38:57 GMT): lennertr (Wed, 22 Aug 2018 07:38:57 GMT): lennertr (Wed, 22 Aug 2018 07:38:57 GMT): davidkel (Wed, 22 Aug 2018 07:40:17 GMT): lennertr (Wed, 22 Aug 2018 07:43:09 GMT): davidkel (Wed, 22 Aug 2018 07:43:44 GMT): ndatebayo (Wed, 22 Aug 2018 08:08:39 GMT): ndatebayo (Wed, 22 Aug 2018 08:08:39 GMT): HoneyShah (Wed, 22 Aug 2018 08:19:31 GMT): rthatcher (Wed, 22 Aug 2018 08:31:23 GMT): mahoney1 (Wed, 22 Aug 2018 08:43:43 GMT): HoneyShah (Wed, 22 Aug 2018 08:45:49 GMT): rthatcher (Wed, 22 Aug 2018 08:51:53 GMT): ultimo2020 (Wed, 22 Aug 2018 09:16:52 GMT): ultimo2020 (Wed, 22 Aug 2018 09:17:06 GMT): ultimo2020 (Wed, 22 Aug 2018 09:17:28 GMT): ultimo2020 (Wed, 22 Aug 2018 09:17:51 GMT): ultimo2020 (Wed, 22 Aug 2018 09:17:52 GMT): ultimo2020 (Wed, 22 Aug 2018 09:18:35 GMT): ultimo2020 (Wed, 22 Aug 2018 09:18:41 GMT): ultimo2020 (Wed, 22 Aug 2018 09:18:54 GMT): ultimo2020 (Wed, 22 Aug 2018 09:19:38 GMT): ultimo2020 (Wed, 22 Aug 2018 09:19:39 GMT): rthatcher (Wed, 22 Aug 2018 09:28:12 GMT): HoneyShah (Wed, 22 Aug 2018 09:30:17 GMT): HoneyShah (Wed, 22 Aug 2018 09:33:57 GMT): mahoney1 (Wed, 22 Aug 2018 09:45:34 GMT): ultimo2020 (Wed, 22 Aug 2018 09:46:39 GMT): mahoney1 (Wed, 22 Aug 2018 10:01:18 GMT): lennertr (Wed, 22 Aug 2018 10:25:12 GMT): lennertr (Wed, 22 Aug 2018 10:25:12 GMT): lennertr (Wed, 22 Aug 2018 10:25:12 GMT): lennertr (Wed, 22 Aug 2018 10:25:12 GMT): lennertr (Wed, 22 Aug 2018 10:25:12 GMT): satyajitdeshmukh (Wed, 22 Aug 2018 10:26:02 GMT): satyajitdeshmukh (Wed, 22 Aug 2018 10:28:03 GMT): bryq3 (Wed, 22 Aug 2018 10:37:06 GMT): deep123 (Wed, 22 Aug 2018 11:00:02 GMT): deep123 (Wed, 22 Aug 2018 11:00:02 GMT): mahoney1 (Wed, 22 Aug 2018 11:21:12 GMT): Messi-Q (Wed, 22 Aug 2018 11:28:04 GMT): Messi-Q (Wed, 22 Aug 2018 11:28:44 GMT): lennertr (Wed, 22 Aug 2018 11:30:46 GMT): hyper-sunder (Wed, 22 Aug 2018 11:47:22 GMT): hyper-sunder (Wed, 22 Aug 2018 11:47:27 GMT): hyper-sunder (Wed, 22 Aug 2018 11:47:33 GMT): hyper-sunder (Wed, 22 Aug 2018 11:52:51 GMT): rthatcher (Wed, 22 Aug 2018 11:56:32 GMT): hyper-sunder (Wed, 22 Aug 2018 11:59:15 GMT): hyper-sunder (Wed, 22 Aug 2018 12:00:21 GMT): rthatcher (Wed, 22 Aug 2018 12:07:52 GMT): mahoney1 (Wed, 22 Aug 2018 12:20:33 GMT): mahoney1 (Wed, 22 Aug 2018 12:20:33 GMT): HoneyShah (Wed, 22 Aug 2018 12:25:27 GMT): mahoney1 (Wed, 22 Aug 2018 12:27:38 GMT): mahoney1 (Wed, 22 Aug 2018 12:42:54 GMT): lennertr (Wed, 22 Aug 2018 12:53:41 GMT): lennertr (Wed, 22 Aug 2018 12:53:41 GMT): Messi-Q (Wed, 22 Aug 2018 13:23:06 GMT): mahoney1 (Wed, 22 Aug 2018 13:48:03 GMT): mahoney1 (Wed, 22 Aug 2018 13:48:03 GMT): mahoney1 (Wed, 22 Aug 2018 13:48:03 GMT): Haddadmj (Wed, 22 Aug 2018 14:01:44 GMT): Haddadmj (Wed, 22 Aug 2018 14:02:58 GMT): sureshtedla (Wed, 22 Aug 2018 14:09:33 GMT): greg2git (Wed, 22 Aug 2018 14:17:39 GMT): rthatcher (Wed, 22 Aug 2018 14:32:28 GMT): rthatcher (Wed, 22 Aug 2018 14:32:28 GMT): Haddadmj (Wed, 22 Aug 2018 14:33:49 GMT): Haddadmj (Wed, 22 Aug 2018 14:33:51 GMT): lennertr (Wed, 22 Aug 2018 14:34:42 GMT): andreasebire (Wed, 22 Aug 2018 14:46:02 GMT): mahoney1 (Wed, 22 Aug 2018 14:50:15 GMT): rthatcher (Wed, 22 Aug 2018 14:56:53 GMT): mahoney1 (Wed, 22 Aug 2018 15:07:09 GMT): mahoney1 (Wed, 22 Aug 2018 15:07:09 GMT): Haddadmj (Wed, 22 Aug 2018 15:08:32 GMT): mahoney1 (Wed, 22 Aug 2018 15:21:38 GMT): sureshtedla (Wed, 22 Aug 2018 16:12:37 GMT): juan.gzz.salz (Wed, 22 Aug 2018 16:33:39 GMT): juan.gzz.salz (Wed, 22 Aug 2018 16:36:11 GMT): juan.gzz.salz (Wed, 22 Aug 2018 16:36:28 GMT): juan.gzz.salz (Wed, 22 Aug 2018 16:37:11 GMT): juan.gzz.salz (Wed, 22 Aug 2018 16:50:44 GMT): juan.gzz.salz (Wed, 22 Aug 2018 16:50:44 GMT): juan.gzz.salz (Wed, 22 Aug 2018 16:50:46 GMT): juan.gzz.salz (Wed, 22 Aug 2018 17:18:25 GMT): mahoney1 (Wed, 22 Aug 2018 17:23:32 GMT): CollinSanborn (Wed, 22 Aug 2018 18:12:16 GMT): juan.gzz.salz (Wed, 22 Aug 2018 18:24:17 GMT): szewong (Wed, 22 Aug 2018 18:57:28 GMT): juan.gzz.salz (Wed, 22 Aug 2018 19:29:27 GMT): juan.gzz.salz (Wed, 22 Aug 2018 19:29:30 GMT): juan.gzz.salz (Wed, 22 Aug 2018 19:30:50 GMT): juan.gzz.salz (Wed, 22 Aug 2018 19:31:34 GMT): juan.gzz.salz (Wed, 22 Aug 2018 19:31:42 GMT): juan.gzz.salz (Wed, 22 Aug 2018 19:32:09 GMT): juan.gzz.salz (Wed, 22 Aug 2018 19:32:22 GMT): juan.gzz.salz (Wed, 22 Aug 2018 19:32:32 GMT): juan.gzz.salz (Wed, 22 Aug 2018 19:33:26 GMT): juan.gzz.salz (Wed, 22 Aug 2018 19:34:04 GMT): juan.gzz.salz (Wed, 22 Aug 2018 19:34:11 GMT): juan.gzz.salz (Wed, 22 Aug 2018 19:34:53 GMT): juan.gzz.salz (Wed, 22 Aug 2018 22:48:32 GMT): thiyagucse01 (Thu, 23 Aug 2018 07:24:02 GMT): thiyagucse01 (Thu, 23 Aug 2018 07:24:02 GMT): thiyagucse01 (Thu, 23 Aug 2018 07:24:02 GMT): thiyagucse01 (Thu, 23 Aug 2018 07:24:02 GMT): thiyagucse01 (Thu, 23 Aug 2018 07:24:02 GMT): Mozer18 (Thu, 23 Aug 2018 07:50:40 GMT): malviyamukul (Thu, 23 Aug 2018 07:51:37 GMT): Mozer18 (Thu, 23 Aug 2018 08:09:18 GMT): rthatcher (Thu, 23 Aug 2018 08:41:43 GMT): tlee38 (Thu, 23 Aug 2018 08:53:38 GMT): tlee38 (Thu, 23 Aug 2018 08:58:18 GMT): Mozer18 (Thu, 23 Aug 2018 09:07:59 GMT): tlee38 (Thu, 23 Aug 2018 09:15:12 GMT): mahoney1 (Thu, 23 Aug 2018 09:16:07 GMT): mahoney1 (Thu, 23 Aug 2018 09:16:07 GMT): deep123 (Thu, 23 Aug 2018 09:17:26 GMT): rthatcher (Thu, 23 Aug 2018 09:25:37 GMT): deep123 (Thu, 23 Aug 2018 09:27:10 GMT): deep123 (Thu, 23 Aug 2018 09:27:10 GMT): mahoney1 (Thu, 23 Aug 2018 10:14:45 GMT): Drest (Thu, 23 Aug 2018 10:15:29 GMT): deep123 (Thu, 23 Aug 2018 10:25:37 GMT): deep123 (Thu, 23 Aug 2018 10:25:37 GMT): deep123 (Thu, 23 Aug 2018 10:25:37 GMT): deep123 (Thu, 23 Aug 2018 10:25:37 GMT): Mozer18 (Thu, 23 Aug 2018 10:54:58 GMT): mrjdomingus (Thu, 23 Aug 2018 11:01:32 GMT): deep123 (Thu, 23 Aug 2018 11:02:32 GMT): Mozer18 (Thu, 23 Aug 2018 11:05:49 GMT): ndatebayo (Thu, 23 Aug 2018 11:38:12 GMT): Mozer18 (Thu, 23 Aug 2018 12:05:59 GMT): ndatebayo (Thu, 23 Aug 2018 12:19:42 GMT): ndatebayo (Thu, 23 Aug 2018 12:24:47 GMT): Drest (Thu, 23 Aug 2018 12:44:55 GMT): thiyagucse01 (Thu, 23 Aug 2018 12:52:53 GMT): mahoney1 (Thu, 23 Aug 2018 12:54:09 GMT): mahoney1 (Thu, 23 Aug 2018 12:55:50 GMT): Drest (Thu, 23 Aug 2018 13:03:57 GMT): juan.gzz.salz (Thu, 23 Aug 2018 13:16:40 GMT): rthatcher (Thu, 23 Aug 2018 13:46:30 GMT): wangrangli (Thu, 23 Aug 2018 13:49:17 GMT): wangrangli (Thu, 23 Aug 2018 13:51:58 GMT): mahoney1 (Thu, 23 Aug 2018 14:24:28 GMT): mahoney1 (Thu, 23 Aug 2018 14:24:28 GMT): wangrangli (Thu, 23 Aug 2018 14:30:50 GMT): abityildiz (Thu, 23 Aug 2018 15:11:00 GMT): mahoney1 (Thu, 23 Aug 2018 15:30:37 GMT): mahoney1 (Thu, 23 Aug 2018 15:30:37 GMT): mahoney1 (Thu, 23 Aug 2018 15:31:51 GMT): juan.gzz.salz (Thu, 23 Aug 2018 17:35:31 GMT): abilashs (Thu, 23 Aug 2018 17:36:24 GMT): abilashs (Thu, 23 Aug 2018 17:36:24 GMT): sureshtedla (Thu, 23 Aug 2018 17:41:29 GMT): MarioHF (Thu, 23 Aug 2018 19:34:43 GMT): grsind19 (Thu, 23 Aug 2018 20:18:46 GMT): wangrangli (Thu, 23 Aug 2018 20:47:22 GMT): malviyamukul (Fri, 24 Aug 2018 04:44:06 GMT): mrjdomingus (Fri, 24 Aug 2018 05:59:04 GMT): kazansky (Fri, 24 Aug 2018 07:56:36 GMT): rthatcher (Fri, 24 Aug 2018 08:06:55 GMT): mahoney1 (Fri, 24 Aug 2018 08:44:33 GMT): mahoney1 (Fri, 24 Aug 2018 09:03:36 GMT): mahoney1 (Fri, 24 Aug 2018 09:03:36 GMT): deep123 (Fri, 24 Aug 2018 09:09:28 GMT): deep123 (Fri, 24 Aug 2018 09:09:28 GMT): thiyagucse01 (Fri, 24 Aug 2018 09:10:13 GMT): thiyagucse01 (Fri, 24 Aug 2018 09:12:42 GMT): thiyagucse01 (Fri, 24 Aug 2018 09:12:42 GMT): mahoney1 (Fri, 24 Aug 2018 09:17:10 GMT): Bhanu (Fri, 24 Aug 2018 09:22:38 GMT): Jyotirmoy (Fri, 24 Aug 2018 09:56:43 GMT): mahoney1 (Fri, 24 Aug 2018 10:06:11 GMT): HoneyShah (Fri, 24 Aug 2018 10:06:33 GMT): HoneyShah (Fri, 24 Aug 2018 10:06:33 GMT): HoneyShah (Fri, 24 Aug 2018 10:06:33 GMT): deep123 (Fri, 24 Aug 2018 10:26:00 GMT): deep123 (Fri, 24 Aug 2018 10:26:00 GMT): mahoney1 (Fri, 24 Aug 2018 10:30:12 GMT): rthatcher (Fri, 24 Aug 2018 10:30:26 GMT): HoneyShah (Fri, 24 Aug 2018 10:36:03 GMT): HoneyShah (Fri, 24 Aug 2018 10:36:03 GMT): HoneyShah (Fri, 24 Aug 2018 10:36:03 GMT): thiyagucse01 (Fri, 24 Aug 2018 10:38:59 GMT): sureshtedla (Fri, 24 Aug 2018 11:02:06 GMT): sureshtedla (Fri, 24 Aug 2018 11:02:35 GMT): sureshtedla (Fri, 24 Aug 2018 11:03:52 GMT): Mozer18 (Fri, 24 Aug 2018 11:04:05 GMT): HoneyShah (Fri, 24 Aug 2018 11:05:15 GMT): HoneyShah (Fri, 24 Aug 2018 11:12:15 GMT): HoneyShah (Fri, 24 Aug 2018 11:16:15 GMT): mahoney1 (Fri, 24 Aug 2018 11:26:24 GMT): HoneyShah (Fri, 24 Aug 2018 11:55:01 GMT): avagarwal (Fri, 24 Aug 2018 11:56:39 GMT): avagarwal (Fri, 24 Aug 2018 11:57:50 GMT): avagarwal (Fri, 24 Aug 2018 11:57:50 GMT): bryq3 (Fri, 24 Aug 2018 12:03:22 GMT): bryq3 (Fri, 24 Aug 2018 12:04:48 GMT): mahoney1 (Fri, 24 Aug 2018 12:22:51 GMT): mahoney1 (Fri, 24 Aug 2018 12:22:51 GMT): mahoney1 (Fri, 24 Aug 2018 12:22:51 GMT): mahoney1 (Fri, 24 Aug 2018 12:24:55 GMT): mahoney1 (Fri, 24 Aug 2018 12:24:55 GMT): sureshtedla (Fri, 24 Aug 2018 12:26:38 GMT): sureshtedla (Fri, 24 Aug 2018 12:27:47 GMT): avagarwal (Fri, 24 Aug 2018 12:35:54 GMT): avagarwal (Fri, 24 Aug 2018 12:35:54 GMT): kapila123 (Fri, 24 Aug 2018 12:51:06 GMT): kapila123 (Fri, 24 Aug 2018 12:51:53 GMT): kapila123 (Fri, 24 Aug 2018 12:51:53 GMT): mahoney1 (Fri, 24 Aug 2018 12:56:08 GMT): kapila123 (Fri, 24 Aug 2018 12:57:51 GMT): wangrangli (Fri, 24 Aug 2018 13:02:54 GMT): mahoney1 (Fri, 24 Aug 2018 13:04:14 GMT): mahoney1 (Fri, 24 Aug 2018 13:04:14 GMT): wangrangli (Fri, 24 Aug 2018 13:05:39 GMT): kapila123 (Fri, 24 Aug 2018 13:12:36 GMT): mahoney1 (Fri, 24 Aug 2018 13:13:02 GMT): mahoney1 (Fri, 24 Aug 2018 13:13:02 GMT): wangrangli (Fri, 24 Aug 2018 13:16:42 GMT): rthatcher (Fri, 24 Aug 2018 13:25:47 GMT): mahoney1 (Fri, 24 Aug 2018 13:38:40 GMT): mahoney1 (Fri, 24 Aug 2018 13:38:40 GMT): mahoney1 (Fri, 24 Aug 2018 13:38:40 GMT): wangrangli (Fri, 24 Aug 2018 13:41:35 GMT): gauthampamu (Fri, 24 Aug 2018 14:28:18 GMT): ndatebayo (Fri, 24 Aug 2018 14:42:02 GMT): ndatebayo (Fri, 24 Aug 2018 14:42:02 GMT): rthatcher (Fri, 24 Aug 2018 14:55:06 GMT): wangrangli (Fri, 24 Aug 2018 14:59:21 GMT): marksta (Fri, 24 Aug 2018 15:07:10 GMT): mahoney1 (Fri, 24 Aug 2018 15:20:43 GMT): juan.gzz.salz (Fri, 24 Aug 2018 15:35:46 GMT): abityildiz (Fri, 24 Aug 2018 18:33:14 GMT): RobertLockard (Fri, 24 Aug 2018 19:03:30 GMT): RobertLockard (Fri, 24 Aug 2018 19:04:55 GMT): RobertLockard (Fri, 24 Aug 2018 19:06:51 GMT): RobertLockard (Fri, 24 Aug 2018 19:08:23 GMT): RobertLockard (Fri, 24 Aug 2018 19:09:55 GMT): RobertLockard (Fri, 24 Aug 2018 19:12:43 GMT): tennenjl (Fri, 24 Aug 2018 19:15:26 GMT): rthatcher (Fri, 24 Aug 2018 20:37:24 GMT): crustafari (Fri, 24 Aug 2018 22:02:41 GMT): abityildiz (Sat, 25 Aug 2018 10:26:34 GMT): RajkumarTiwari (Sat, 25 Aug 2018 11:07:45 GMT): ndatebayo (Sat, 25 Aug 2018 11:35:22 GMT): mmick (Sat, 25 Aug 2018 14:53:52 GMT): vanclief (Sun, 26 Aug 2018 15:03:37 GMT): MarioHF (Sun, 26 Aug 2018 18:52:29 GMT): MarioHF (Sun, 26 Aug 2018 18:52:29 GMT): MarioHF (Sun, 26 Aug 2018 18:52:29 GMT): Bhanu (Sun, 26 Aug 2018 19:31:12 GMT): Bhanu (Sun, 26 Aug 2018 19:37:29 GMT): AhmedAL-YAMANI (Sun, 26 Aug 2018 19:45:20 GMT): MarioHF (Sun, 26 Aug 2018 19:48:57 GMT): Mahadream (Mon, 27 Aug 2018 06:27:28 GMT): RaSa 6 (Mon, 27 Aug 2018 08:41:05 GMT): HoneyShah (Mon, 27 Aug 2018 09:03:11 GMT): HoneyShah (Mon, 27 Aug 2018 09:03:11 GMT): HoneyShah (Mon, 27 Aug 2018 09:03:11 GMT): venkat12 (Mon, 27 Aug 2018 09:24:28 GMT): sureshtedla (Mon, 27 Aug 2018 12:04:33 GMT): uber.twin (Mon, 27 Aug 2018 12:28:13 GMT): uber.twin (Mon, 27 Aug 2018 12:28:13 GMT): uber.twin (Mon, 27 Aug 2018 12:28:13 GMT): MarioHF (Mon, 27 Aug 2018 12:40:01 GMT): RaSa 6 (Mon, 27 Aug 2018 12:57:43 GMT): RaSa 6 (Mon, 27 Aug 2018 12:58:01 GMT): sureshtedla (Mon, 27 Aug 2018 13:30:19 GMT): sureshtedla (Mon, 27 Aug 2018 13:30:19 GMT): sureshtedla (Mon, 27 Aug 2018 13:30:19 GMT): sureshtedla (Mon, 27 Aug 2018 13:31:08 GMT): sureshtedla (Mon, 27 Aug 2018 13:31:08 GMT): sureshtedla (Mon, 27 Aug 2018 14:15:01 GMT): soryboums (Mon, 27 Aug 2018 16:06:32 GMT): Grendel61 (Mon, 27 Aug 2018 17:26:16 GMT): Grendel61 (Mon, 27 Aug 2018 17:36:35 GMT): greg2git (Mon, 27 Aug 2018 19:12:02 GMT): soryboums (Mon, 27 Aug 2018 19:17:05 GMT): nicolas.alfonso (Mon, 27 Aug 2018 21:59:44 GMT): thiyagucse01 (Tue, 28 Aug 2018 04:33:18 GMT): Vigneshavm (Tue, 28 Aug 2018 05:08:42 GMT): knagware9 (Tue, 28 Aug 2018 05:10:13 GMT): thiyagucse01 (Tue, 28 Aug 2018 05:21:55 GMT): knagware9 (Tue, 28 Aug 2018 05:22:58 GMT): thiyagucse01 (Tue, 28 Aug 2018 05:24:47 GMT): bryq3 (Tue, 28 Aug 2018 06:53:45 GMT): FaizulHassan (Tue, 28 Aug 2018 07:05:47 GMT): benjamin.verhaegen (Tue, 28 Aug 2018 07:57:41 GMT): benjamin.verhaegen (Tue, 28 Aug 2018 07:58:11 GMT): gauri (Tue, 28 Aug 2018 08:38:15 GMT): gauri (Tue, 28 Aug 2018 08:38:31 GMT): rthatcher (Tue, 28 Aug 2018 08:38:58 GMT): rthatcher (Tue, 28 Aug 2018 08:40:59 GMT): rthatcher (Tue, 28 Aug 2018 08:53:27 GMT): gauri (Tue, 28 Aug 2018 09:02:55 GMT): gauri (Tue, 28 Aug 2018 09:02:55 GMT): gauri (Tue, 28 Aug 2018 09:02:55 GMT): Mozer18 (Tue, 28 Aug 2018 09:11:14 GMT): sooraj-citta (Tue, 28 Aug 2018 09:20:06 GMT): sooraj-citta (Tue, 28 Aug 2018 09:24:38 GMT): soryboums (Tue, 28 Aug 2018 09:26:07 GMT): AnithaReddy (Tue, 28 Aug 2018 09:29:25 GMT): gauri (Tue, 28 Aug 2018 09:31:17 GMT): JackMalinowski (Tue, 28 Aug 2018 09:31:45 GMT): gauri (Tue, 28 Aug 2018 09:32:46 GMT): AnithaReddy (Tue, 28 Aug 2018 09:34:21 GMT): Mozer18 (Tue, 28 Aug 2018 09:36:29 GMT): AnithaReddy (Tue, 28 Aug 2018 09:36:57 GMT): Mozer18 (Tue, 28 Aug 2018 09:38:37 GMT): gauri (Tue, 28 Aug 2018 09:39:56 GMT): Mozer18 (Tue, 28 Aug 2018 09:44:21 GMT): gauri (Tue, 28 Aug 2018 09:46:17 GMT): gauri (Tue, 28 Aug 2018 09:52:08 GMT): Mozer18 (Tue, 28 Aug 2018 09:54:37 GMT): gauri (Tue, 28 Aug 2018 09:57:39 GMT): gauri (Tue, 28 Aug 2018 09:58:19 GMT): Mozer18 (Tue, 28 Aug 2018 10:00:45 GMT): Mozer18 (Tue, 28 Aug 2018 10:01:16 GMT): HoneyShah (Tue, 28 Aug 2018 10:01:21 GMT): gauri (Tue, 28 Aug 2018 10:01:43 GMT): gauri (Tue, 28 Aug 2018 10:04:40 GMT): Mozer18 (Tue, 28 Aug 2018 10:06:10 GMT): gauri (Tue, 28 Aug 2018 10:07:43 GMT): Mozer18 (Tue, 28 Aug 2018 10:12:43 GMT): gauri (Tue, 28 Aug 2018 10:17:49 GMT): deenario (Tue, 28 Aug 2018 10:20:49 GMT): deenario (Tue, 28 Aug 2018 10:21:16 GMT): gauri (Tue, 28 Aug 2018 10:22:39 GMT): mahoney1 (Tue, 28 Aug 2018 10:56:13 GMT): mahoney1 (Tue, 28 Aug 2018 10:56:13 GMT): gauri (Tue, 28 Aug 2018 10:59:23 GMT): mahoney1 (Tue, 28 Aug 2018 11:00:24 GMT): mahoney1 (Tue, 28 Aug 2018 11:00:24 GMT): gauri (Tue, 28 Aug 2018 11:01:00 GMT): gauri (Tue, 28 Aug 2018 11:01:25 GMT): mahoney1 (Tue, 28 Aug 2018 11:03:12 GMT): gauri (Tue, 28 Aug 2018 11:05:09 GMT): HoneyShah (Tue, 28 Aug 2018 11:29:41 GMT): HoneyShah (Tue, 28 Aug 2018 11:29:41 GMT): bryq3 (Tue, 28 Aug 2018 11:38:21 GMT): mahoney1 (Tue, 28 Aug 2018 11:58:15 GMT): mahoney1 (Tue, 28 Aug 2018 11:58:15 GMT): malviyamukul (Tue, 28 Aug 2018 11:59:04 GMT): HoneyShah (Tue, 28 Aug 2018 12:01:30 GMT): HoneyShah (Tue, 28 Aug 2018 12:32:28 GMT): sureshtedla (Tue, 28 Aug 2018 12:37:41 GMT): sureshtedla (Tue, 28 Aug 2018 12:37:52 GMT): sureshtedla (Tue, 28 Aug 2018 12:40:29 GMT): sureshtedla (Tue, 28 Aug 2018 12:52:18 GMT): rthatcher (Tue, 28 Aug 2018 12:58:59 GMT): mahoney1 (Tue, 28 Aug 2018 12:59:10 GMT): sureshtedla (Tue, 28 Aug 2018 13:05:20 GMT): sureshtedla (Tue, 28 Aug 2018 13:06:21 GMT): sureshtedla (Tue, 28 Aug 2018 13:06:37 GMT): sureshtedla (Tue, 28 Aug 2018 13:06:37 GMT): sureshtedla (Tue, 28 Aug 2018 13:06:37 GMT): sureshtedla (Tue, 28 Aug 2018 13:16:35 GMT): sureshtedla (Tue, 28 Aug 2018 13:19:42 GMT): sureshtedla (Tue, 28 Aug 2018 13:34:50 GMT): rthatcher (Tue, 28 Aug 2018 13:35:25 GMT): rthatcher (Tue, 28 Aug 2018 13:35:25 GMT): akshaymittal143 (Tue, 28 Aug 2018 13:39:41 GMT): formlesscloud (Tue, 28 Aug 2018 13:45:49 GMT): sureshtedla (Tue, 28 Aug 2018 13:48:08 GMT): sureshtedla (Tue, 28 Aug 2018 13:48:08 GMT): formlesscloud (Tue, 28 Aug 2018 13:48:27 GMT): olumide (Tue, 28 Aug 2018 13:57:53 GMT): Haddadmj (Tue, 28 Aug 2018 14:04:57 GMT): DiegoLeal (Tue, 28 Aug 2018 14:14:55 GMT): mahoney1 (Tue, 28 Aug 2018 14:16:07 GMT): mahoney1 (Tue, 28 Aug 2018 14:17:29 GMT): mahoney1 (Tue, 28 Aug 2018 14:17:29 GMT): mahoney1 (Tue, 28 Aug 2018 14:18:15 GMT): sureshtedla (Tue, 28 Aug 2018 14:19:02 GMT): sureshtedla (Tue, 28 Aug 2018 14:21:40 GMT): sureshtedla (Tue, 28 Aug 2018 14:22:41 GMT): sureshtedla (Tue, 28 Aug 2018 14:23:04 GMT): sureshtedla (Tue, 28 Aug 2018 14:24:02 GMT): sureshtedla (Tue, 28 Aug 2018 14:24:33 GMT): nippleDonkey (Tue, 28 Aug 2018 14:25:33 GMT): mahoney1 (Tue, 28 Aug 2018 14:25:36 GMT): mahoney1 (Tue, 28 Aug 2018 14:25:36 GMT): mahoney1 (Tue, 28 Aug 2018 14:25:36 GMT): formlesscloud (Tue, 28 Aug 2018 14:29:15 GMT): mahoney1 (Tue, 28 Aug 2018 14:29:52 GMT): mahoney1 (Tue, 28 Aug 2018 14:29:52 GMT): formlesscloud (Tue, 28 Aug 2018 14:30:51 GMT): formlesscloud (Tue, 28 Aug 2018 14:30:52 GMT): nippleDonkey (Tue, 28 Aug 2018 14:32:17 GMT): mahoney1 (Tue, 28 Aug 2018 14:32:50 GMT): formlesscloud (Tue, 28 Aug 2018 14:35:32 GMT): formlesscloud (Tue, 28 Aug 2018 14:35:45 GMT): mahoney1 (Tue, 28 Aug 2018 14:36:15 GMT): formlesscloud (Tue, 28 Aug 2018 14:36:38 GMT): formlesscloud (Tue, 28 Aug 2018 14:37:03 GMT): formlesscloud (Tue, 28 Aug 2018 14:37:03 GMT): formlesscloud (Tue, 28 Aug 2018 14:37:03 GMT): formlesscloud (Tue, 28 Aug 2018 14:37:03 GMT): mahoney1 (Tue, 28 Aug 2018 14:41:52 GMT): mahoney1 (Tue, 28 Aug 2018 14:41:52 GMT): formlesscloud (Tue, 28 Aug 2018 14:42:15 GMT): formlesscloud (Tue, 28 Aug 2018 14:42:18 GMT): formlesscloud (Tue, 28 Aug 2018 14:42:21 GMT): formlesscloud (Tue, 28 Aug 2018 14:42:45 GMT): ParisMollo (Tue, 28 Aug 2018 14:42:52 GMT): formlesscloud (Tue, 28 Aug 2018 14:44:59 GMT): Levilk (Tue, 28 Aug 2018 14:45:11 GMT): formlesscloud (Tue, 28 Aug 2018 14:45:23 GMT): Levilk (Tue, 28 Aug 2018 14:50:52 GMT): sureshtedla (Tue, 28 Aug 2018 14:54:25 GMT): sureshtedla (Tue, 28 Aug 2018 14:54:35 GMT): sureshtedla (Tue, 28 Aug 2018 14:54:35 GMT): sureshtedla (Tue, 28 Aug 2018 14:54:35 GMT): sureshtedla (Tue, 28 Aug 2018 14:54:35 GMT): sureshtedla (Tue, 28 Aug 2018 14:58:14 GMT): Levilk (Tue, 28 Aug 2018 15:04:51 GMT): nippleDonkey (Tue, 28 Aug 2018 15:14:10 GMT): nippleDonkey (Tue, 28 Aug 2018 15:14:10 GMT): nippleDonkey (Tue, 28 Aug 2018 15:14:10 GMT): nippleDonkey (Tue, 28 Aug 2018 15:14:10 GMT): mahoney1 (Tue, 28 Aug 2018 15:15:02 GMT): mahoney1 (Tue, 28 Aug 2018 15:20:48 GMT): nippleDonkey (Tue, 28 Aug 2018 15:21:31 GMT): mahoney1 (Tue, 28 Aug 2018 15:28:36 GMT): mahoney1 (Tue, 28 Aug 2018 15:28:36 GMT): nippleDonkey (Tue, 28 Aug 2018 15:29:06 GMT): nippleDonkey (Tue, 28 Aug 2018 15:34:25 GMT): Levilk (Tue, 28 Aug 2018 16:38:52 GMT): Levilk (Tue, 28 Aug 2018 16:38:52 GMT): Levilk (Tue, 28 Aug 2018 16:38:52 GMT): Levilk (Tue, 28 Aug 2018 16:38:52 GMT): Levilk (Tue, 28 Aug 2018 16:38:52 GMT): Levilk (Tue, 28 Aug 2018 16:38:52 GMT): Javi (Tue, 28 Aug 2018 17:31:08 GMT): Javi (Tue, 28 Aug 2018 17:31:25 GMT): Javi (Tue, 28 Aug 2018 17:32:23 GMT): sureshtedla (Tue, 28 Aug 2018 17:35:51 GMT): sureshtedla (Tue, 28 Aug 2018 17:35:51 GMT): sureshtedla (Tue, 28 Aug 2018 17:36:05 GMT): ArqRI (Tue, 28 Aug 2018 17:49:55 GMT): Javi (Tue, 28 Aug 2018 18:18:35 GMT): greg2git (Tue, 28 Aug 2018 21:32:47 GMT): greg2git (Tue, 28 Aug 2018 21:32:47 GMT): greg2git (Tue, 28 Aug 2018 21:32:47 GMT): coveloper (Tue, 28 Aug 2018 21:46:20 GMT): greg2git (Tue, 28 Aug 2018 21:47:14 GMT): coveloper (Tue, 28 Aug 2018 21:47:41 GMT): greg2git (Tue, 28 Aug 2018 21:48:22 GMT): greg2git (Tue, 28 Aug 2018 21:48:32 GMT): coveloper (Tue, 28 Aug 2018 21:48:33 GMT): coveloper (Tue, 28 Aug 2018 21:48:56 GMT): greg2git (Tue, 28 Aug 2018 21:49:21 GMT): gskerry (Wed, 29 Aug 2018 01:06:41 GMT): Mohini75 (Wed, 29 Aug 2018 04:36:30 GMT): Mohini75 (Wed, 29 Aug 2018 04:36:49 GMT): Mohini75 (Wed, 29 Aug 2018 04:42:11 GMT): Mohini75 (Wed, 29 Aug 2018 04:43:10 GMT): Mohini75 (Wed, 29 Aug 2018 04:45:25 GMT): AshishKaila (Wed, 29 Aug 2018 05:54:26 GMT): AshishKaila (Wed, 29 Aug 2018 05:54:46 GMT): davidkel (Wed, 29 Aug 2018 06:03:58 GMT): davidkel (Wed, 29 Aug 2018 06:06:17 GMT): davidkel (Wed, 29 Aug 2018 06:10:09 GMT): AshishKaila (Wed, 29 Aug 2018 06:14:50 GMT): AshishKaila (Wed, 29 Aug 2018 06:15:14 GMT): Mohini75 (Wed, 29 Aug 2018 06:29:25 GMT): Mohini75 (Wed, 29 Aug 2018 06:29:47 GMT): Mohini75 (Wed, 29 Aug 2018 06:30:43 GMT): davidkel (Wed, 29 Aug 2018 06:49:56 GMT): Mohini75 (Wed, 29 Aug 2018 06:53:43 GMT): Mohini75 (Wed, 29 Aug 2018 06:54:17 GMT): davidkel (Wed, 29 Aug 2018 06:56:21 GMT): Mohini75 (Wed, 29 Aug 2018 06:57:22 GMT): Mohini75 (Wed, 29 Aug 2018 06:57:31 GMT): Mohini75 (Wed, 29 Aug 2018 06:58:00 GMT): Maryam1011 (Wed, 29 Aug 2018 06:58:42 GMT): davidkel (Wed, 29 Aug 2018 07:06:46 GMT): davidkel (Wed, 29 Aug 2018 07:06:46 GMT): davidkel (Wed, 29 Aug 2018 07:09:52 GMT): AshishKaila (Wed, 29 Aug 2018 07:29:35 GMT): AshishKaila (Wed, 29 Aug 2018 07:40:18 GMT): HoneyShah (Wed, 29 Aug 2018 08:44:01 GMT): ultimo2020 (Wed, 29 Aug 2018 09:01:10 GMT): ultimo2020 (Wed, 29 Aug 2018 09:01:48 GMT): ultimo2020 (Wed, 29 Aug 2018 09:02:23 GMT): mmick (Wed, 29 Aug 2018 09:13:52 GMT): mmick (Wed, 29 Aug 2018 09:26:55 GMT): mmick (Wed, 29 Aug 2018 09:30:36 GMT): pmuller (Wed, 29 Aug 2018 09:42:11 GMT): kariyappals (Wed, 29 Aug 2018 09:44:07 GMT): mahoney1 (Wed, 29 Aug 2018 09:50:15 GMT): mahoney1 (Wed, 29 Aug 2018 09:55:45 GMT): JackMalinowski (Wed, 29 Aug 2018 09:57:56 GMT): mahoney1 (Wed, 29 Aug 2018 10:02:19 GMT): mahoney1 (Wed, 29 Aug 2018 10:02:19 GMT): mahoney1 (Wed, 29 Aug 2018 10:02:19 GMT): mahoney1 (Wed, 29 Aug 2018 10:02:19 GMT): mahoney1 (Wed, 29 Aug 2018 10:04:40 GMT): mahoney1 (Wed, 29 Aug 2018 10:04:40 GMT): mahoney1 (Wed, 29 Aug 2018 10:09:33 GMT): cgftang (Wed, 29 Aug 2018 10:12:50 GMT): adedic (Wed, 29 Aug 2018 10:18:39 GMT): adedic (Wed, 29 Aug 2018 10:18:49 GMT): adedic (Wed, 29 Aug 2018 10:19:12 GMT): adedic (Wed, 29 Aug 2018 10:22:01 GMT): adedic (Wed, 29 Aug 2018 10:22:18 GMT): mahoney1 (Wed, 29 Aug 2018 10:29:24 GMT): HoneyShah (Wed, 29 Aug 2018 10:34:25 GMT): pmuller (Wed, 29 Aug 2018 10:35:25 GMT): pmuller (Wed, 29 Aug 2018 10:35:25 GMT): HoneyShah (Wed, 29 Aug 2018 10:40:11 GMT): rthatcher (Wed, 29 Aug 2018 11:06:49 GMT): deveshdhole (Wed, 29 Aug 2018 11:07:37 GMT): pmuller (Wed, 29 Aug 2018 11:07:51 GMT): Haddadmj (Wed, 29 Aug 2018 11:27:32 GMT): dcorking (Wed, 29 Aug 2018 11:27:50 GMT): Haddadmj (Wed, 29 Aug 2018 11:28:23 GMT): Haddadmj (Wed, 29 Aug 2018 11:32:11 GMT): HoneyShah (Wed, 29 Aug 2018 11:38:42 GMT): lennertr (Wed, 29 Aug 2018 11:45:04 GMT): brunillopu.75 (Wed, 29 Aug 2018 11:51:32 GMT): brunillopu.75 (Wed, 29 Aug 2018 11:51:37 GMT): sudhir.kumawat (Wed, 29 Aug 2018 12:33:48 GMT): bryq3 (Wed, 29 Aug 2018 12:54:34 GMT): sureshtedla (Wed, 29 Aug 2018 12:56:28 GMT): MichalRybarczyk (Wed, 29 Aug 2018 12:58:30 GMT): MichalRybarczyk (Wed, 29 Aug 2018 12:58:59 GMT): dcorking (Wed, 29 Aug 2018 13:14:25 GMT): Haddadmj (Wed, 29 Aug 2018 13:15:48 GMT): dcorking (Wed, 29 Aug 2018 13:18:14 GMT): dcorking (Wed, 29 Aug 2018 13:18:14 GMT): Haddadmj (Wed, 29 Aug 2018 13:19:43 GMT): dcorking (Wed, 29 Aug 2018 13:22:24 GMT): Haddadmj (Wed, 29 Aug 2018 13:22:36 GMT): joaquimpedrooliveira (Wed, 29 Aug 2018 13:23:21 GMT): dcorking (Wed, 29 Aug 2018 13:23:21 GMT): nippleDonkey (Wed, 29 Aug 2018 13:36:13 GMT): dcorking (Wed, 29 Aug 2018 13:36:47 GMT): mahoney1 (Wed, 29 Aug 2018 14:36:48 GMT): brunillopu.75 (Wed, 29 Aug 2018 14:39:22 GMT): mahoney1 (Wed, 29 Aug 2018 14:41:31 GMT): arnabsutar (Wed, 29 Aug 2018 14:45:06 GMT): mahoney1 (Wed, 29 Aug 2018 15:48:02 GMT): rthatcher (Wed, 29 Aug 2018 15:48:47 GMT): rthatcher (Wed, 29 Aug 2018 15:51:36 GMT): juan.gzz.salz (Wed, 29 Aug 2018 16:01:15 GMT): juan.gzz.salz (Wed, 29 Aug 2018 16:01:19 GMT): juan.gzz.salz (Wed, 29 Aug 2018 16:01:43 GMT): sureshtedla (Wed, 29 Aug 2018 16:15:09 GMT): sureshtedla (Wed, 29 Aug 2018 16:15:38 GMT): sureshtedla (Wed, 29 Aug 2018 16:15:38 GMT): sureshtedla (Wed, 29 Aug 2018 16:17:48 GMT): rthatcher (Wed, 29 Aug 2018 16:28:17 GMT): sureshtedla (Wed, 29 Aug 2018 16:32:12 GMT): rthatcher (Wed, 29 Aug 2018 16:40:44 GMT): NurKali (Wed, 29 Aug 2018 17:58:02 GMT): VipinB (Wed, 29 Aug 2018 18:38:15 GMT): DattaPatil (Wed, 29 Aug 2018 18:42:04 GMT): Levilk (Wed, 29 Aug 2018 20:30:31 GMT): Levilk (Wed, 29 Aug 2018 20:30:31 GMT): Levilk (Wed, 29 Aug 2018 20:30:31 GMT): Levilk (Wed, 29 Aug 2018 20:30:31 GMT): Levilk (Wed, 29 Aug 2018 20:30:31 GMT): Levilk (Wed, 29 Aug 2018 20:30:31 GMT): lennertr (Thu, 30 Aug 2018 07:17:51 GMT): davidkel (Thu, 30 Aug 2018 07:31:07 GMT): lennertr (Thu, 30 Aug 2018 07:56:06 GMT): adedic (Thu, 30 Aug 2018 08:06:21 GMT): adedic (Thu, 30 Aug 2018 08:06:32 GMT): adedic (Thu, 30 Aug 2018 08:07:24 GMT): HoneyShah (Thu, 30 Aug 2018 08:16:00 GMT): mahoney1 (Thu, 30 Aug 2018 09:05:23 GMT): mahoney1 (Thu, 30 Aug 2018 09:07:45 GMT): sureshtedla (Thu, 30 Aug 2018 09:08:06 GMT): mahoney1 (Thu, 30 Aug 2018 09:11:47 GMT): HoneyShah (Thu, 30 Aug 2018 09:11:54 GMT): HoneyShah (Thu, 30 Aug 2018 09:11:57 GMT): mahoney1 (Thu, 30 Aug 2018 09:26:51 GMT): lennertr (Thu, 30 Aug 2018 09:29:30 GMT): MarcelvandeKerkhof (Thu, 30 Aug 2018 09:31:39 GMT): HoneyShah (Thu, 30 Aug 2018 09:31:40 GMT): HoneyShah (Thu, 30 Aug 2018 09:31:40 GMT): davidkel (Thu, 30 Aug 2018 09:39:18 GMT): sstone1 (Thu, 30 Aug 2018 09:52:52 GMT): Jyotirmoy (Thu, 30 Aug 2018 10:14:15 GMT): rthatcher (Thu, 30 Aug 2018 10:17:08 GMT): rthatcher (Thu, 30 Aug 2018 10:17:08 GMT): MarcelvandeKerkhof (Thu, 30 Aug 2018 10:21:16 GMT): Haddadmj (Thu, 30 Aug 2018 10:23:08 GMT): Haddadmj (Thu, 30 Aug 2018 10:25:50 GMT): Drest (Thu, 30 Aug 2018 10:26:03 GMT): MarcelvandeKerkhof (Thu, 30 Aug 2018 10:26:10 GMT): rthatcher (Thu, 30 Aug 2018 10:26:14 GMT): MarcelvandeKerkhof (Thu, 30 Aug 2018 10:28:35 GMT): rthatcher (Thu, 30 Aug 2018 10:29:33 GMT): MarcelvandeKerkhof (Thu, 30 Aug 2018 10:35:30 GMT): MarcelvandeKerkhof (Thu, 30 Aug 2018 10:37:34 GMT): rthatcher (Thu, 30 Aug 2018 10:48:24 GMT): MarcelvandeKerkhof (Thu, 30 Aug 2018 10:51:22 GMT): MarcelvandeKerkhof (Thu, 30 Aug 2018 10:54:51 GMT): rthatcher (Thu, 30 Aug 2018 10:58:01 GMT): rthatcher (Thu, 30 Aug 2018 10:58:01 GMT): rthatcher (Thu, 30 Aug 2018 10:58:01 GMT): touchingsoil (Thu, 30 Aug 2018 11:14:27 GMT): mahoney1 (Thu, 30 Aug 2018 11:14:37 GMT): mahoney1 (Thu, 30 Aug 2018 11:15:35 GMT): Ibraxos (Thu, 30 Aug 2018 11:15:50 GMT): Ibraxos (Thu, 30 Aug 2018 11:16:38 GMT): Ibraxos (Thu, 30 Aug 2018 11:16:38 GMT): mahoney1 (Thu, 30 Aug 2018 11:20:48 GMT): Ibraxos (Thu, 30 Aug 2018 11:22:58 GMT): mahoney1 (Thu, 30 Aug 2018 11:24:05 GMT): Drest (Thu, 30 Aug 2018 11:29:56 GMT): MarcelvandeKerkhof (Thu, 30 Aug 2018 11:33:30 GMT): MarcelvandeKerkhof (Thu, 30 Aug 2018 11:33:30 GMT): Haddadmj (Thu, 30 Aug 2018 11:38:25 GMT): Drest (Thu, 30 Aug 2018 11:42:44 GMT): mahoney1 (Thu, 30 Aug 2018 13:01:50 GMT): DayalMukati (Thu, 30 Aug 2018 13:09:05 GMT): mahoney1 (Thu, 30 Aug 2018 13:13:06 GMT): mahoney1 (Thu, 30 Aug 2018 13:13:06 GMT): sureshtedla (Thu, 30 Aug 2018 13:27:58 GMT): sureshtedla (Thu, 30 Aug 2018 13:27:58 GMT): sureshtedla (Thu, 30 Aug 2018 13:27:58 GMT): sureshtedla (Thu, 30 Aug 2018 13:28:00 GMT): sureshtedla (Thu, 30 Aug 2018 13:29:39 GMT): sureshtedla (Thu, 30 Aug 2018 13:29:39 GMT): sureshtedla (Thu, 30 Aug 2018 13:30:45 GMT): sureshtedla (Thu, 30 Aug 2018 13:30:45 GMT): sureshtedla (Thu, 30 Aug 2018 14:07:07 GMT): sureshtedla (Thu, 30 Aug 2018 14:07:27 GMT): sureshtedla (Thu, 30 Aug 2018 14:07:27 GMT): sureshtedla (Thu, 30 Aug 2018 14:07:42 GMT): sureshtedla (Thu, 30 Aug 2018 14:07:42 GMT): dselman (Thu, 30 Aug 2018 14:23:34 GMT): dselman (Thu, 30 Aug 2018 14:25:01 GMT): sureshtedla (Thu, 30 Aug 2018 14:29:52 GMT): sureshtedla (Thu, 30 Aug 2018 14:31:23 GMT): sureshtedla (Thu, 30 Aug 2018 14:32:02 GMT): dselman (Thu, 30 Aug 2018 14:32:50 GMT): sureshtedla (Thu, 30 Aug 2018 14:35:56 GMT): sureshtedla (Thu, 30 Aug 2018 14:35:56 GMT): sureshtedla (Thu, 30 Aug 2018 14:36:39 GMT): sureshtedla (Thu, 30 Aug 2018 14:36:39 GMT): sureshtedla (Thu, 30 Aug 2018 14:37:20 GMT): sureshtedla (Thu, 30 Aug 2018 14:37:20 GMT): sureshtedla (Thu, 30 Aug 2018 14:41:30 GMT): mahoney1 (Thu, 30 Aug 2018 15:36:27 GMT): mahoney1 (Thu, 30 Aug 2018 16:24:15 GMT): jmason900 (Thu, 30 Aug 2018 16:48:11 GMT): coveloper (Thu, 30 Aug 2018 16:50:06 GMT): formlesscloud (Thu, 30 Aug 2018 17:49:15 GMT): formlesscloud (Thu, 30 Aug 2018 17:49:23 GMT): jmason900 (Thu, 30 Aug 2018 18:29:55 GMT): coveloper (Thu, 30 Aug 2018 18:39:48 GMT): davidkel (Thu, 30 Aug 2018 19:05:24 GMT): formlesscloud (Thu, 30 Aug 2018 19:35:28 GMT): formlesscloud (Thu, 30 Aug 2018 19:37:33 GMT): formlesscloud (Thu, 30 Aug 2018 19:37:56 GMT): medmouine (Thu, 30 Aug 2018 20:06:09 GMT): medmouine (Thu, 30 Aug 2018 20:07:14 GMT): JPS123 (Thu, 30 Aug 2018 20:20:38 GMT): coveloper (Thu, 30 Aug 2018 20:32:09 GMT): adedic (Thu, 30 Aug 2018 21:06:48 GMT): coveloper (Thu, 30 Aug 2018 22:30:59 GMT): coveloper (Thu, 30 Aug 2018 22:31:14 GMT): houqian (Fri, 31 Aug 2018 04:15:13 GMT): GowriR (Fri, 31 Aug 2018 04:25:54 GMT): nemesis1346 (Fri, 31 Aug 2018 05:15:14 GMT): nemesis1346 (Fri, 31 Aug 2018 05:18:48 GMT): thiyagucse01 (Fri, 31 Aug 2018 06:31:38 GMT): thiyagucse01 (Fri, 31 Aug 2018 06:31:38 GMT): davidkel (Fri, 31 Aug 2018 06:50:42 GMT): maestrus (Fri, 31 Aug 2018 07:08:26 GMT): maestrus (Fri, 31 Aug 2018 07:08:38 GMT): kapila123 (Fri, 31 Aug 2018 07:46:37 GMT): kapila123 (Fri, 31 Aug 2018 07:46:47 GMT): kapila123 (Fri, 31 Aug 2018 07:47:33 GMT): rthatcher (Fri, 31 Aug 2018 08:06:41 GMT): mahoney1 (Fri, 31 Aug 2018 08:12:17 GMT): mahoney1 (Fri, 31 Aug 2018 08:12:50 GMT): mahoney1 (Fri, 31 Aug 2018 08:14:52 GMT): mahoney1 (Fri, 31 Aug 2018 08:20:43 GMT): maestrus (Fri, 31 Aug 2018 08:22:39 GMT): mahoney1 (Fri, 31 Aug 2018 08:27:12 GMT): mahoney1 (Fri, 31 Aug 2018 08:27:12 GMT): mahoney1 (Fri, 31 Aug 2018 08:27:12 GMT): varunagarwal (Fri, 31 Aug 2018 08:27:23 GMT): varunagarwal (Fri, 31 Aug 2018 08:28:00 GMT): rthatcher (Fri, 31 Aug 2018 08:34:03 GMT): rthatcher (Fri, 31 Aug 2018 08:34:03 GMT): maestrus (Fri, 31 Aug 2018 08:40:46 GMT): varunagarwal (Fri, 31 Aug 2018 08:42:51 GMT): sureshtedla (Fri, 31 Aug 2018 08:43:20 GMT): sureshtedla (Fri, 31 Aug 2018 08:44:03 GMT): sureshtedla (Fri, 31 Aug 2018 08:44:03 GMT): sureshtedla (Fri, 31 Aug 2018 08:44:36 GMT): sureshtedla (Fri, 31 Aug 2018 08:44:36 GMT): rthatcher (Fri, 31 Aug 2018 08:48:11 GMT): rthatcher (Fri, 31 Aug 2018 08:53:38 GMT): varunagarwal (Fri, 31 Aug 2018 08:55:51 GMT): rthatcher (Fri, 31 Aug 2018 08:58:17 GMT): varunagarwal (Fri, 31 Aug 2018 08:58:57 GMT): sureshtedla (Fri, 31 Aug 2018 09:02:01 GMT): thiyagucse01 (Fri, 31 Aug 2018 09:13:24 GMT): MarcelvandeKerkhof (Fri, 31 Aug 2018 09:34:09 GMT): MarcelvandeKerkhof (Fri, 31 Aug 2018 09:48:11 GMT): sureshtedla (Fri, 31 Aug 2018 09:49:03 GMT): sureshtedla (Fri, 31 Aug 2018 09:49:03 GMT): Ibraxos (Fri, 31 Aug 2018 12:51:46 GMT): davidkel (Fri, 31 Aug 2018 12:55:58 GMT): Ibraxos (Fri, 31 Aug 2018 12:58:02 GMT): greg2git (Fri, 31 Aug 2018 15:19:07 GMT): SjirNijssen (Fri, 31 Aug 2018 16:05:25 GMT): LinuxLearner1 (Sat, 01 Sep 2018 00:30:08 GMT): LinuxLearner1 (Sat, 01 Sep 2018 00:30:39 GMT): callmeashok (Sat, 01 Sep 2018 05:29:19 GMT): callmeashok (Sat, 01 Sep 2018 05:29:19 GMT): davidkel (Sat, 01 Sep 2018 07:11:49 GMT): callmeashok (Sat, 01 Sep 2018 07:56:50 GMT): amitkshukla (Sat, 01 Sep 2018 08:42:48 GMT): amitkshukla (Sat, 01 Sep 2018 08:43:11 GMT): amitkshukla (Sat, 01 Sep 2018 09:02:55 GMT): mmick (Sat, 01 Sep 2018 09:16:32 GMT): amitkshukla (Sat, 01 Sep 2018 15:11:49 GMT): soryboums (Sat, 01 Sep 2018 15:23:35 GMT): amitkshukla (Sat, 01 Sep 2018 15:24:28 GMT): JackMalinowski (Sun, 02 Sep 2018 00:13:36 GMT): Ashish_ydv (Sun, 02 Sep 2018 06:39:20 GMT): Ashish_ydv (Sun, 02 Sep 2018 06:39:23 GMT): Ashish_ydv (Sun, 02 Sep 2018 06:48:50 GMT): mmick (Sun, 02 Sep 2018 10:32:45 GMT): adedic (Sun, 02 Sep 2018 20:53:06 GMT): adedic (Sun, 02 Sep 2018 20:53:13 GMT): adedic (Sun, 02 Sep 2018 20:55:01 GMT): adedic (Sun, 02 Sep 2018 20:55:05 GMT): adedic (Sun, 02 Sep 2018 20:56:00 GMT): adedic (Sun, 02 Sep 2018 20:56:19 GMT): adedic (Sun, 02 Sep 2018 20:57:19 GMT): adedic (Sun, 02 Sep 2018 20:58:05 GMT): adedic (Sun, 02 Sep 2018 20:59:47 GMT): adedic (Sun, 02 Sep 2018 21:00:09 GMT): adedic (Sun, 02 Sep 2018 21:01:23 GMT): adedic (Sun, 02 Sep 2018 21:05:00 GMT): tlee38 (Mon, 03 Sep 2018 04:19:39 GMT): kapila123 (Mon, 03 Sep 2018 05:16:44 GMT): kapila123 (Mon, 03 Sep 2018 05:16:44 GMT): Mahadream (Mon, 03 Sep 2018 05:27:34 GMT): kapila123 (Mon, 03 Sep 2018 05:29:52 GMT): tlee38 (Mon, 03 Sep 2018 05:47:28 GMT): abityildiz (Mon, 03 Sep 2018 06:04:29 GMT): kapila123 (Mon, 03 Sep 2018 06:07:27 GMT): tlee38 (Mon, 03 Sep 2018 06:32:27 GMT): kapila123 (Mon, 03 Sep 2018 07:04:29 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 07:19:49 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 07:20:58 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 07:21:18 GMT): mahoney1 (Mon, 03 Sep 2018 07:26:55 GMT): mahoney1 (Mon, 03 Sep 2018 07:27:35 GMT): ManriqueGarcia (Mon, 03 Sep 2018 07:30:40 GMT): bryq3 (Mon, 03 Sep 2018 08:19:16 GMT): RahulSingh 6 (Mon, 03 Sep 2018 08:33:14 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 08:54:29 GMT): mahoney1 (Mon, 03 Sep 2018 08:56:26 GMT): mahoney1 (Mon, 03 Sep 2018 09:00:35 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 09:00:48 GMT): mahoney1 (Mon, 03 Sep 2018 09:06:33 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 09:14:12 GMT): mahoney1 (Mon, 03 Sep 2018 09:14:50 GMT): bryq3 (Mon, 03 Sep 2018 09:33:52 GMT): mahoney1 (Mon, 03 Sep 2018 09:41:51 GMT): mahoney1 (Mon, 03 Sep 2018 09:41:51 GMT): mahoney1 (Mon, 03 Sep 2018 09:41:51 GMT): mahoney1 (Mon, 03 Sep 2018 09:41:51 GMT): mahoney1 (Mon, 03 Sep 2018 09:41:51 GMT): mahoney1 (Mon, 03 Sep 2018 09:41:51 GMT): mahoney1 (Mon, 03 Sep 2018 09:41:51 GMT): AnithaReddy (Mon, 03 Sep 2018 09:47:49 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 09:59:08 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 10:00:11 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 10:00:33 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 10:01:49 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 10:02:16 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 10:07:39 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 10:08:02 GMT): bhemeswararaoankireddy (Mon, 03 Sep 2018 10:20:02 GMT): karunesh10 (Mon, 03 Sep 2018 10:27:08 GMT): mahoney1 (Mon, 03 Sep 2018 10:31:14 GMT): mahoney1 (Mon, 03 Sep 2018 10:36:15 GMT): mahoney1 (Mon, 03 Sep 2018 10:36:15 GMT): mahoney1 (Mon, 03 Sep 2018 10:36:15 GMT): AnithaReddy (Mon, 03 Sep 2018 10:41:32 GMT): mahoney1 (Mon, 03 Sep 2018 10:44:07 GMT): karunesh10 (Mon, 03 Sep 2018 10:45:15 GMT): mahoney1 (Mon, 03 Sep 2018 10:52:41 GMT): AnithaReddy (Mon, 03 Sep 2018 10:56:17 GMT): mahoney1 (Mon, 03 Sep 2018 11:09:06 GMT): AnithaReddy (Mon, 03 Sep 2018 11:10:24 GMT): AnithaReddy (Mon, 03 Sep 2018 11:10:41 GMT): bryq3 (Mon, 03 Sep 2018 11:29:47 GMT): JoostZ (Mon, 03 Sep 2018 12:45:31 GMT): juan.gzz.salz (Mon, 03 Sep 2018 16:31:22 GMT): joaquimpedrooliveira (Mon, 03 Sep 2018 20:25:31 GMT): JackMalinowski (Tue, 04 Sep 2018 01:11:54 GMT): AshishKaila (Tue, 04 Sep 2018 02:06:44 GMT): touchingsoil (Tue, 04 Sep 2018 06:27:09 GMT): touchingsoil (Tue, 04 Sep 2018 06:27:09 GMT): touchingsoil (Tue, 04 Sep 2018 06:27:09 GMT): tnr@womeninlinux.com (Tue, 04 Sep 2018 06:41:34 GMT): davidkel (Tue, 04 Sep 2018 07:00:05 GMT): bryq3 (Tue, 04 Sep 2018 07:10:29 GMT): touchingsoil (Tue, 04 Sep 2018 07:14:04 GMT): davidkel (Tue, 04 Sep 2018 07:15:48 GMT): touchingsoil (Tue, 04 Sep 2018 07:20:39 GMT): TBigjohn (Tue, 04 Sep 2018 07:42:47 GMT): davidkel (Tue, 04 Sep 2018 07:57:30 GMT): mahoney1 (Tue, 04 Sep 2018 09:09:04 GMT): mahoney1 (Tue, 04 Sep 2018 09:17:57 GMT): touchingsoil (Tue, 04 Sep 2018 09:38:56 GMT): touchingsoil (Tue, 04 Sep 2018 09:38:56 GMT): touchingsoil (Tue, 04 Sep 2018 09:38:56 GMT): mahoney1 (Tue, 04 Sep 2018 09:57:56 GMT): mahoney1 (Tue, 04 Sep 2018 09:57:56 GMT): touchingsoil (Tue, 04 Sep 2018 10:13:14 GMT): touchingsoil (Tue, 04 Sep 2018 10:24:31 GMT): touchingsoil (Tue, 04 Sep 2018 10:24:31 GMT): touchingsoil (Tue, 04 Sep 2018 10:24:31 GMT): mahoney1 (Tue, 04 Sep 2018 10:38:10 GMT): touchingsoil (Tue, 04 Sep 2018 10:54:22 GMT): Mahadream (Tue, 04 Sep 2018 11:05:42 GMT): Mahadream (Tue, 04 Sep 2018 11:05:42 GMT): Mahadream (Tue, 04 Sep 2018 11:05:43 GMT): osmola (Tue, 04 Sep 2018 12:26:11 GMT): mahoney1 (Tue, 04 Sep 2018 12:52:36 GMT): mahoney1 (Tue, 04 Sep 2018 12:52:36 GMT): mahoney1 (Tue, 04 Sep 2018 12:52:36 GMT): kapila123 (Tue, 04 Sep 2018 12:54:29 GMT): kapila123 (Tue, 04 Sep 2018 12:54:29 GMT): kapila123 (Tue, 04 Sep 2018 12:54:29 GMT): mahoney1 (Tue, 04 Sep 2018 13:00:31 GMT): kapila123 (Tue, 04 Sep 2018 13:03:25 GMT): mahoney1 (Tue, 04 Sep 2018 13:05:08 GMT): vieiramanoel (Tue, 04 Sep 2018 13:08:07 GMT): kariyappals (Tue, 04 Sep 2018 13:17:01 GMT): kariyappals (Tue, 04 Sep 2018 13:17:50 GMT): DK (Tue, 04 Sep 2018 15:47:28 GMT): mahoney1 (Tue, 04 Sep 2018 15:47:46 GMT): mahoney1 (Tue, 04 Sep 2018 15:47:46 GMT): juan.gzz.salz (Tue, 04 Sep 2018 23:36:32 GMT): juan.gzz.salz (Tue, 04 Sep 2018 23:39:40 GMT): AshishKaila (Wed, 05 Sep 2018 03:22:46 GMT): AshishKaila (Wed, 05 Sep 2018 03:23:42 GMT): AshishKaila (Wed, 05 Sep 2018 03:23:57 GMT): Swarantej (Wed, 05 Sep 2018 03:50:28 GMT): samcan123 (Wed, 05 Sep 2018 04:54:59 GMT): samcan123 (Wed, 05 Sep 2018 04:55:15 GMT): write2moin (Wed, 05 Sep 2018 06:04:50 GMT): TBigjohn (Wed, 05 Sep 2018 08:30:27 GMT): Drest (Wed, 05 Sep 2018 08:46:09 GMT): mahoney1 (Wed, 05 Sep 2018 09:12:51 GMT): mahoney1 (Wed, 05 Sep 2018 09:20:56 GMT): sureshtedla (Wed, 05 Sep 2018 09:31:20 GMT): sureshtedla (Wed, 05 Sep 2018 09:31:38 GMT): touchingsoil (Wed, 05 Sep 2018 09:38:01 GMT): chosenPlaintext (Wed, 05 Sep 2018 09:39:36 GMT): touchingsoil (Wed, 05 Sep 2018 09:41:03 GMT): chosenPlaintext (Wed, 05 Sep 2018 09:44:57 GMT): chosenPlaintext (Wed, 05 Sep 2018 09:46:56 GMT): mahoney1 (Wed, 05 Sep 2018 09:47:08 GMT): mahoney1 (Wed, 05 Sep 2018 09:47:08 GMT): chosenPlaintext (Wed, 05 Sep 2018 09:51:55 GMT): mahoney1 (Wed, 05 Sep 2018 09:59:53 GMT): mahoney1 (Wed, 05 Sep 2018 10:01:28 GMT): touchingsoil (Wed, 05 Sep 2018 10:19:08 GMT): touchingsoil (Wed, 05 Sep 2018 10:19:08 GMT): sureshtedla (Wed, 05 Sep 2018 10:43:23 GMT): gut (Wed, 05 Sep 2018 10:47:56 GMT): mahoney1 (Wed, 05 Sep 2018 11:27:42 GMT): touchingsoil (Wed, 05 Sep 2018 11:30:41 GMT): touchingsoil (Wed, 05 Sep 2018 11:30:41 GMT): touchingsoil (Wed, 05 Sep 2018 11:30:41 GMT): nemo 8 (Wed, 05 Sep 2018 11:34:25 GMT): TBigjohn (Wed, 05 Sep 2018 11:34:57 GMT): nemo 8 (Wed, 05 Sep 2018 11:42:32 GMT): Anshulmittal (Wed, 05 Sep 2018 12:06:40 GMT): mahoney1 (Wed, 05 Sep 2018 13:17:00 GMT): mahoney1 (Wed, 05 Sep 2018 13:17:00 GMT): mahoney1 (Wed, 05 Sep 2018 13:17:00 GMT): mahoney1 (Wed, 05 Sep 2018 13:21:03 GMT): mahoney1 (Wed, 05 Sep 2018 13:21:59 GMT): TBigjohn (Wed, 05 Sep 2018 13:34:43 GMT): gauthampamu (Wed, 05 Sep 2018 13:52:08 GMT): mauriff (Wed, 05 Sep 2018 14:19:21 GMT): juan.gzz.salz (Wed, 05 Sep 2018 15:36:51 GMT): juan.gzz.salz (Wed, 05 Sep 2018 15:36:51 GMT): juan.gzz.salz (Wed, 05 Sep 2018 17:49:25 GMT): MRM (Wed, 05 Sep 2018 18:39:55 GMT): MRM (Wed, 05 Sep 2018 18:42:37 GMT): kapila123 (Wed, 05 Sep 2018 18:55:41 GMT): kapila123 (Wed, 05 Sep 2018 18:55:58 GMT): kapila123 (Wed, 05 Sep 2018 18:56:48 GMT): htyagi90 (Wed, 05 Sep 2018 20:03:57 GMT): rbailey (Wed, 05 Sep 2018 22:35:49 GMT): rbailey (Wed, 05 Sep 2018 22:42:25 GMT): touchingsoil (Thu, 06 Sep 2018 02:48:46 GMT): malviyamukul (Thu, 06 Sep 2018 04:24:08 GMT): malviyamukul (Thu, 06 Sep 2018 04:57:37 GMT): Ibraxos (Thu, 06 Sep 2018 06:07:41 GMT): Ibraxos (Thu, 06 Sep 2018 06:08:07 GMT): Ibraxos (Thu, 06 Sep 2018 06:10:35 GMT): NoLimitHoldem (Thu, 06 Sep 2018 06:56:37 GMT): NoLimitHoldem (Thu, 06 Sep 2018 06:59:07 GMT): NoLimitHoldem (Thu, 06 Sep 2018 06:59:07 GMT): VarunVerma (Thu, 06 Sep 2018 07:06:09 GMT): VarunVerma (Thu, 06 Sep 2018 07:06:32 GMT): VarunVerma (Thu, 06 Sep 2018 07:06:34 GMT): davidkel (Thu, 06 Sep 2018 07:23:57 GMT): davidkel (Thu, 06 Sep 2018 07:23:57 GMT): RockyRacer (Thu, 06 Sep 2018 07:31:39 GMT): RockyRacer (Thu, 06 Sep 2018 07:31:46 GMT): RockyRacer (Thu, 06 Sep 2018 07:31:46 GMT): RockyRacer (Thu, 06 Sep 2018 07:31:46 GMT): RockyRacer (Thu, 06 Sep 2018 07:32:04 GMT): RockyRacer (Thu, 06 Sep 2018 07:32:04 GMT): RockyRacer (Thu, 06 Sep 2018 07:33:19 GMT): davidkel (Thu, 06 Sep 2018 07:34:08 GMT): RockyRacer (Thu, 06 Sep 2018 07:37:25 GMT): NoLimitHoldem (Thu, 06 Sep 2018 07:37:31 GMT): NoLimitHoldem (Thu, 06 Sep 2018 07:37:31 GMT): RockyRacer (Thu, 06 Sep 2018 07:43:41 GMT): RockyRacer (Thu, 06 Sep 2018 07:43:41 GMT): davidkel (Thu, 06 Sep 2018 07:54:42 GMT): basarcan (Thu, 06 Sep 2018 08:12:04 GMT): basarcan (Thu, 06 Sep 2018 08:12:22 GMT): basarcan (Thu, 06 Sep 2018 08:12:37 GMT): RockyRacer (Thu, 06 Sep 2018 08:27:24 GMT): kariyappals (Thu, 06 Sep 2018 08:43:46 GMT): kariyappals (Thu, 06 Sep 2018 08:43:56 GMT): mahoney1 (Thu, 06 Sep 2018 09:02:05 GMT): mahoney1 (Thu, 06 Sep 2018 09:06:37 GMT): mahoney1 (Thu, 06 Sep 2018 09:06:37 GMT): mahoney1 (Thu, 06 Sep 2018 09:22:21 GMT): mahoney1 (Thu, 06 Sep 2018 09:23:55 GMT): uber.twin (Thu, 06 Sep 2018 10:25:56 GMT): uber.twin (Thu, 06 Sep 2018 10:25:56 GMT): kapila123 (Thu, 06 Sep 2018 10:50:45 GMT): d8bhatta (Thu, 06 Sep 2018 10:51:35 GMT): d8bhatta (Thu, 06 Sep 2018 10:51:57 GMT): d8bhatta (Thu, 06 Sep 2018 10:52:39 GMT): d8bhatta (Thu, 06 Sep 2018 10:53:52 GMT): d8bhatta (Thu, 06 Sep 2018 10:56:12 GMT): nicoventrella (Thu, 06 Sep 2018 10:57:02 GMT): nicoventrella (Thu, 06 Sep 2018 10:57:02 GMT): mahoney1 (Thu, 06 Sep 2018 11:34:34 GMT): d8bhatta (Thu, 06 Sep 2018 11:49:01 GMT): d8bhatta (Thu, 06 Sep 2018 11:49:05 GMT): d8bhatta (Thu, 06 Sep 2018 11:49:28 GMT): uber.twin (Thu, 06 Sep 2018 12:08:43 GMT): uber.twin (Thu, 06 Sep 2018 12:25:57 GMT): davidkel (Thu, 06 Sep 2018 12:33:05 GMT): davidkel (Thu, 06 Sep 2018 12:33:05 GMT): davidkel (Thu, 06 Sep 2018 12:33:05 GMT): uber.twin (Thu, 06 Sep 2018 12:48:15 GMT): mahoney1 (Thu, 06 Sep 2018 12:59:53 GMT): mahoney1 (Thu, 06 Sep 2018 12:59:53 GMT): mahoney1 (Thu, 06 Sep 2018 12:59:53 GMT): mahoney1 (Thu, 06 Sep 2018 13:04:12 GMT): mahoney1 (Thu, 06 Sep 2018 13:04:12 GMT): d8bhatta (Thu, 06 Sep 2018 13:12:13 GMT): ZaheerUdDeen (Thu, 06 Sep 2018 13:19:48 GMT): mahoney1 (Thu, 06 Sep 2018 13:42:03 GMT): mahoney1 (Thu, 06 Sep 2018 13:42:38 GMT): sureshtedla (Thu, 06 Sep 2018 13:52:08 GMT): sureshtedla (Thu, 06 Sep 2018 13:53:04 GMT): MikeRichardson (Thu, 06 Sep 2018 14:02:19 GMT): MikeRichardson (Thu, 06 Sep 2018 14:02:19 GMT): MikeRichardson (Thu, 06 Sep 2018 14:02:34 GMT): mahoney1 (Thu, 06 Sep 2018 14:06:22 GMT): sureshtedla (Thu, 06 Sep 2018 14:26:26 GMT): sureshtedla (Thu, 06 Sep 2018 14:28:54 GMT): RayMetz100 (Thu, 06 Sep 2018 14:30:53 GMT): nirav.parmar (Thu, 06 Sep 2018 15:00:28 GMT): cuevrob (Thu, 06 Sep 2018 15:06:29 GMT): RockyRacer (Thu, 06 Sep 2018 15:25:20 GMT): Seachlainn (Thu, 06 Sep 2018 15:40:07 GMT): MikeRichardson (Thu, 06 Sep 2018 16:20:58 GMT): MikeRichardson (Thu, 06 Sep 2018 16:32:16 GMT): Darumada (Thu, 06 Sep 2018 16:53:57 GMT): Darumada (Thu, 06 Sep 2018 16:55:42 GMT): jfobrien29 (Thu, 06 Sep 2018 17:35:48 GMT): jfobrien29 (Thu, 06 Sep 2018 17:36:20 GMT): jfobrien29 (Thu, 06 Sep 2018 17:36:58 GMT): mighty-pirate (Thu, 06 Sep 2018 17:53:44 GMT): juan.gzz.salz (Thu, 06 Sep 2018 18:28:38 GMT): juan.gzz.salz (Thu, 06 Sep 2018 18:28:38 GMT): juan.gzz.salz (Thu, 06 Sep 2018 18:29:05 GMT): juan.gzz.salz (Thu, 06 Sep 2018 18:29:12 GMT): Ihmeida (Thu, 06 Sep 2018 21:39:36 GMT): Ihmeida (Thu, 06 Sep 2018 21:40:19 GMT): Ihmeida (Thu, 06 Sep 2018 21:40:23 GMT): aparolini (Fri, 07 Sep 2018 06:58:31 GMT): aparolini (Fri, 07 Sep 2018 06:58:31 GMT): VenkataY (Fri, 07 Sep 2018 07:03:07 GMT): k.ramankishore (Fri, 07 Sep 2018 07:03:52 GMT): VenkataY (Fri, 07 Sep 2018 07:04:53 GMT): davidkel (Fri, 07 Sep 2018 07:06:43 GMT): davidkel (Fri, 07 Sep 2018 07:06:43 GMT): VenkataY (Fri, 07 Sep 2018 07:16:11 GMT): davidkel (Fri, 07 Sep 2018 07:20:45 GMT): VenkataY (Fri, 07 Sep 2018 07:27:04 GMT): k.ramankishore (Fri, 07 Sep 2018 07:43:58 GMT): AnithaReddy (Fri, 07 Sep 2018 07:56:06 GMT): AnithaReddy (Fri, 07 Sep 2018 07:57:08 GMT): davidkel (Fri, 07 Sep 2018 07:59:25 GMT): davidkel (Fri, 07 Sep 2018 08:05:26 GMT): SilambarasanMadhappan (Fri, 07 Sep 2018 08:27:25 GMT): davidkel (Fri, 07 Sep 2018 08:29:37 GMT): SilambarasanMadhappan (Fri, 07 Sep 2018 08:36:14 GMT): kariyappals (Fri, 07 Sep 2018 08:44:14 GMT): davidkel (Fri, 07 Sep 2018 08:49:21 GMT): mahoney1 (Fri, 07 Sep 2018 08:57:08 GMT): mahoney1 (Fri, 07 Sep 2018 08:57:08 GMT): aparolini (Fri, 07 Sep 2018 09:07:32 GMT): mahoney1 (Fri, 07 Sep 2018 09:10:42 GMT): AnithaReddy (Fri, 07 Sep 2018 09:12:16 GMT): vincent_feng (Fri, 07 Sep 2018 09:14:51 GMT): mawi (Fri, 07 Sep 2018 09:23:51 GMT): SilambarasanMadhappan (Fri, 07 Sep 2018 10:51:07 GMT): davidkel (Fri, 07 Sep 2018 11:40:51 GMT): sureshtedla (Fri, 07 Sep 2018 11:43:10 GMT): sureshtedla (Fri, 07 Sep 2018 11:43:10 GMT): sureshtedla (Fri, 07 Sep 2018 11:43:11 GMT): RockyRacer (Fri, 07 Sep 2018 11:48:13 GMT): tahaf10 (Fri, 07 Sep 2018 11:50:36 GMT): tahaf10 (Fri, 07 Sep 2018 11:52:29 GMT): davidkel (Fri, 07 Sep 2018 11:54:28 GMT): davidkel (Fri, 07 Sep 2018 11:54:28 GMT): RockyRacer (Fri, 07 Sep 2018 11:55:12 GMT): tahaf10 (Fri, 07 Sep 2018 11:55:53 GMT): sureshtedla (Fri, 07 Sep 2018 11:56:09 GMT): sureshtedla (Fri, 07 Sep 2018 11:56:09 GMT): sureshtedla (Fri, 07 Sep 2018 11:56:25 GMT): davidkel (Fri, 07 Sep 2018 11:57:03 GMT): tahaf10 (Fri, 07 Sep 2018 11:57:38 GMT): sureshtedla (Fri, 07 Sep 2018 11:58:45 GMT): sureshtedla (Fri, 07 Sep 2018 11:58:53 GMT): tahaf10 (Fri, 07 Sep 2018 11:59:24 GMT): tahaf10 (Fri, 07 Sep 2018 12:05:08 GMT): SilambarasanMadhappan (Fri, 07 Sep 2018 12:07:48 GMT): davidkel (Fri, 07 Sep 2018 12:10:15 GMT): davidkel (Fri, 07 Sep 2018 12:10:15 GMT): davidkel (Fri, 07 Sep 2018 12:10:15 GMT): tahaf10 (Fri, 07 Sep 2018 12:20:04 GMT): tahaf10 (Fri, 07 Sep 2018 12:22:55 GMT): davidkel (Fri, 07 Sep 2018 12:24:12 GMT): davidkel (Fri, 07 Sep 2018 12:24:12 GMT): tahaf10 (Fri, 07 Sep 2018 12:26:49 GMT): SilambarasanMadhappan (Fri, 07 Sep 2018 12:50:02 GMT): SilambarasanMadhappan (Fri, 07 Sep 2018 12:50:47 GMT): SilambarasanMadhappan (Fri, 07 Sep 2018 12:50:54 GMT): CooLMaNCL (Fri, 07 Sep 2018 12:56:53 GMT): mrudav.shukla (Fri, 07 Sep 2018 13:12:25 GMT): mahoney1 (Fri, 07 Sep 2018 13:19:44 GMT): tahaf10 (Fri, 07 Sep 2018 13:20:43 GMT): mrudav.shukla (Fri, 07 Sep 2018 13:22:22 GMT): mahoney1 (Fri, 07 Sep 2018 13:39:18 GMT): mrudav.shukla (Fri, 07 Sep 2018 13:42:18 GMT): mahoney1 (Fri, 07 Sep 2018 14:12:38 GMT): mahoney1 (Fri, 07 Sep 2018 14:12:38 GMT): SilambarasanMadhappan (Fri, 07 Sep 2018 14:15:46 GMT): juan.gzz.salz (Fri, 07 Sep 2018 15:49:16 GMT): davidkel (Fri, 07 Sep 2018 16:12:13 GMT): juan.gzz.salz (Fri, 07 Sep 2018 18:34:54 GMT): KeerthiJ (Sat, 08 Sep 2018 09:46:00 GMT): KeerthiJ (Sat, 08 Sep 2018 09:46:02 GMT): davidkel (Sat, 08 Sep 2018 09:51:21 GMT): KeerthiJ (Sat, 08 Sep 2018 10:13:14 GMT): greg2git (Sat, 08 Sep 2018 12:35:38 GMT): soccerhaotian (Sun, 09 Sep 2018 02:23:00 GMT): raviyelleni (Sun, 09 Sep 2018 03:00:07 GMT): raviyelleni (Sun, 09 Sep 2018 03:10:03 GMT): greg2git (Sun, 09 Sep 2018 14:43:36 GMT): sundarsuman (Sun, 09 Sep 2018 21:18:49 GMT): raviyelleni (Mon, 10 Sep 2018 02:37:57 GMT): SilambarasanMadhappan (Mon, 10 Sep 2018 04:10:24 GMT): Varun2887 (Mon, 10 Sep 2018 04:14:49 GMT): Varun2887 (Mon, 10 Sep 2018 04:14:53 GMT): OviiyaDominic (Mon, 10 Sep 2018 04:37:02 GMT): tahaf10 (Mon, 10 Sep 2018 06:03:56 GMT): davidkel (Mon, 10 Sep 2018 07:09:01 GMT): touchingsoil (Mon, 10 Sep 2018 08:44:27 GMT): touchingsoil (Mon, 10 Sep 2018 08:44:27 GMT): FlorentinoSainz (Mon, 10 Sep 2018 08:53:01 GMT): FlorentinoSainz (Mon, 10 Sep 2018 08:53:25 GMT): sureshtedla (Mon, 10 Sep 2018 08:55:44 GMT): touchingsoil (Mon, 10 Sep 2018 08:56:25 GMT): FlorentinoSainz (Mon, 10 Sep 2018 08:58:26 GMT): rthatcher (Mon, 10 Sep 2018 09:00:33 GMT): NareshPai (Mon, 10 Sep 2018 09:01:18 GMT): FlorentinoSainz (Mon, 10 Sep 2018 09:01:49 GMT): FlorentinoSainz (Mon, 10 Sep 2018 09:02:34 GMT): touchingsoil (Mon, 10 Sep 2018 09:03:39 GMT): rthatcher (Mon, 10 Sep 2018 09:04:51 GMT): mahoney1 (Mon, 10 Sep 2018 09:05:21 GMT): mahoney1 (Mon, 10 Sep 2018 09:06:21 GMT): rthatcher (Mon, 10 Sep 2018 09:09:27 GMT): sureshtedla (Mon, 10 Sep 2018 09:20:43 GMT): sureshtedla (Mon, 10 Sep 2018 09:20:52 GMT): touchingsoil (Mon, 10 Sep 2018 09:26:30 GMT): rthatcher (Mon, 10 Sep 2018 10:00:37 GMT): rthatcher (Mon, 10 Sep 2018 10:00:37 GMT): rthatcher (Mon, 10 Sep 2018 10:00:37 GMT): touchingsoil (Mon, 10 Sep 2018 10:50:28 GMT): Ashish_ydv (Mon, 10 Sep 2018 13:08:24 GMT): Ashish_ydv (Mon, 10 Sep 2018 13:08:24 GMT): Ashish_ydv (Mon, 10 Sep 2018 13:08:24 GMT): Ashish_ydv (Mon, 10 Sep 2018 13:08:24 GMT): Ashish_ydv (Mon, 10 Sep 2018 13:08:24 GMT): Ashish_ydv (Mon, 10 Sep 2018 13:08:24 GMT): davidkel (Mon, 10 Sep 2018 13:12:39 GMT): Ashish_ydv (Mon, 10 Sep 2018 13:14:50 GMT): Logi (Mon, 10 Sep 2018 15:42:19 GMT): Logi (Mon, 10 Sep 2018 15:43:22 GMT): Logi (Mon, 10 Sep 2018 15:43:28 GMT): Logi (Mon, 10 Sep 2018 15:43:51 GMT): davidkel (Mon, 10 Sep 2018 16:04:00 GMT): Grendel61 (Mon, 10 Sep 2018 16:17:56 GMT): Logi (Mon, 10 Sep 2018 16:18:33 GMT): Logi (Mon, 10 Sep 2018 16:19:11 GMT): ronaldlong46 (Mon, 10 Sep 2018 18:43:57 GMT): mathmass (Mon, 10 Sep 2018 20:47:52 GMT): davidkel (Mon, 10 Sep 2018 21:08:54 GMT): davidkel (Mon, 10 Sep 2018 21:08:54 GMT): davidkel (Mon, 10 Sep 2018 21:08:54 GMT): pvrbharg (Tue, 11 Sep 2018 03:08:23 GMT): davidkel (Tue, 11 Sep 2018 07:21:38 GMT): davidkel (Tue, 11 Sep 2018 07:21:38 GMT): davidkel (Tue, 11 Sep 2018 07:21:38 GMT): davidkel (Tue, 11 Sep 2018 07:21:38 GMT): TBigjohn (Tue, 11 Sep 2018 08:17:14 GMT): davidkel (Tue, 11 Sep 2018 08:18:29 GMT): TBigjohn (Tue, 11 Sep 2018 08:33:23 GMT): davidkel (Tue, 11 Sep 2018 08:35:22 GMT): TBigjohn (Tue, 11 Sep 2018 08:35:52 GMT): davidkel (Tue, 11 Sep 2018 08:40:27 GMT): davidkel (Tue, 11 Sep 2018 08:40:27 GMT): davidkel (Tue, 11 Sep 2018 08:40:27 GMT): TBigjohn (Tue, 11 Sep 2018 09:01:39 GMT): TBigjohn (Tue, 11 Sep 2018 09:01:39 GMT): davidkel (Tue, 11 Sep 2018 09:05:36 GMT): davidkel (Tue, 11 Sep 2018 09:05:36 GMT): davidkel (Tue, 11 Sep 2018 09:06:49 GMT): davidkel (Tue, 11 Sep 2018 09:06:49 GMT): mahoney1 (Tue, 11 Sep 2018 09:22:27 GMT): mahoney1 (Tue, 11 Sep 2018 09:22:27 GMT): TBigjohn (Tue, 11 Sep 2018 09:24:27 GMT): davidkel (Tue, 11 Sep 2018 09:25:58 GMT): davidkel (Tue, 11 Sep 2018 09:25:58 GMT): anuj_27 (Tue, 11 Sep 2018 09:27:47 GMT): anuj_27 (Tue, 11 Sep 2018 09:37:23 GMT): TBigjohn (Tue, 11 Sep 2018 09:50:51 GMT): davidkel (Tue, 11 Sep 2018 09:54:35 GMT): touchingsoil (Tue, 11 Sep 2018 10:14:45 GMT): touchingsoil (Tue, 11 Sep 2018 10:14:45 GMT): rthatcher (Tue, 11 Sep 2018 11:24:36 GMT): amritsharma (Tue, 11 Sep 2018 12:07:59 GMT): amritsharma (Tue, 11 Sep 2018 12:09:22 GMT): davidkel (Tue, 11 Sep 2018 12:23:16 GMT): vikas.kundz (Tue, 11 Sep 2018 12:29:03 GMT): pvrbharg (Tue, 11 Sep 2018 12:37:25 GMT): MarcelvandeKerkhof (Tue, 11 Sep 2018 12:48:09 GMT): TBigjohn (Tue, 11 Sep 2018 13:08:57 GMT): rthatcher (Tue, 11 Sep 2018 13:17:30 GMT): sureshtedla (Tue, 11 Sep 2018 13:47:30 GMT): sureshtedla (Tue, 11 Sep 2018 13:47:30 GMT): varunagarwal (Tue, 11 Sep 2018 13:48:13 GMT): MarcelvandeKerkhof (Tue, 11 Sep 2018 14:00:25 GMT): Ashish_ydv (Tue, 11 Sep 2018 14:00:27 GMT): davidkel (Tue, 11 Sep 2018 14:02:30 GMT): davidkel (Tue, 11 Sep 2018 14:02:30 GMT): sureshtedla (Tue, 11 Sep 2018 14:06:32 GMT): sureshtedla (Tue, 11 Sep 2018 14:06:32 GMT): sureshtedla (Tue, 11 Sep 2018 14:08:44 GMT): rthatcher (Tue, 11 Sep 2018 14:09:51 GMT): sureshtedla (Tue, 11 Sep 2018 14:10:25 GMT): rthatcher (Tue, 11 Sep 2018 14:13:40 GMT): varunagarwal (Tue, 11 Sep 2018 14:14:19 GMT): rthatcher (Tue, 11 Sep 2018 14:20:09 GMT): anuj_27 (Tue, 11 Sep 2018 14:22:32 GMT): anuj_27 (Tue, 11 Sep 2018 14:22:32 GMT): rthatcher (Tue, 11 Sep 2018 14:22:59 GMT): varunagarwal (Tue, 11 Sep 2018 14:24:15 GMT): varunagarwal (Tue, 11 Sep 2018 14:24:44 GMT): varunagarwal (Tue, 11 Sep 2018 14:25:53 GMT): varunagarwal (Tue, 11 Sep 2018 14:26:09 GMT): Vigneshavm (Tue, 11 Sep 2018 14:30:22 GMT): Vigneshavm (Tue, 11 Sep 2018 14:30:22 GMT): Vigneshavm (Tue, 11 Sep 2018 14:30:22 GMT): varunagarwal (Tue, 11 Sep 2018 14:32:50 GMT): rthatcher (Tue, 11 Sep 2018 14:33:13 GMT): rthatcher (Tue, 11 Sep 2018 14:44:40 GMT): MarcelvandeKerkhof (Tue, 11 Sep 2018 14:50:11 GMT): sureshtedla (Tue, 11 Sep 2018 14:58:38 GMT): anuj_27 (Tue, 11 Sep 2018 14:59:59 GMT): anuj_27 (Tue, 11 Sep 2018 14:59:59 GMT): davidkel (Tue, 11 Sep 2018 15:08:23 GMT): sureshtedla (Tue, 11 Sep 2018 15:09:54 GMT): rthatcher (Tue, 11 Sep 2018 15:46:04 GMT): juan.gzz.salz (Tue, 11 Sep 2018 15:55:07 GMT): juan.gzz.salz (Tue, 11 Sep 2018 15:55:07 GMT): davidkel (Tue, 11 Sep 2018 16:11:42 GMT): juan.gzz.salz (Tue, 11 Sep 2018 17:23:38 GMT): juan.gzz.salz (Tue, 11 Sep 2018 17:24:00 GMT): davidkel (Tue, 11 Sep 2018 17:37:18 GMT): mrudav.shukla (Tue, 11 Sep 2018 18:54:06 GMT): stevenmilstein (Tue, 11 Sep 2018 19:52:30 GMT): rahul703 (Tue, 11 Sep 2018 21:04:57 GMT): rahul703 (Tue, 11 Sep 2018 21:07:04 GMT): rupa12 (Tue, 11 Sep 2018 21:52:10 GMT): rupa12 (Tue, 11 Sep 2018 21:52:10 GMT): mrudav.shukla (Wed, 12 Sep 2018 02:17:49 GMT): nulee100 (Wed, 12 Sep 2018 03:50:41 GMT): nulee100 (Wed, 12 Sep 2018 03:54:57 GMT): mrudav.shukla (Wed, 12 Sep 2018 03:57:20 GMT): nulee100 (Wed, 12 Sep 2018 03:57:54 GMT): nulee100 (Wed, 12 Sep 2018 03:59:16 GMT): nulee100 (Wed, 12 Sep 2018 03:59:50 GMT): mrudav.shukla (Wed, 12 Sep 2018 04:04:36 GMT): mrudav.shukla (Wed, 12 Sep 2018 04:08:34 GMT): nulee100 (Wed, 12 Sep 2018 04:13:13 GMT): nulee100 (Wed, 12 Sep 2018 04:15:01 GMT): htinshar (Wed, 12 Sep 2018 04:28:05 GMT): htinshar (Wed, 12 Sep 2018 04:31:29 GMT): htinshar (Wed, 12 Sep 2018 04:31:29 GMT): mrudav.shukla (Wed, 12 Sep 2018 04:39:54 GMT): nulee100 (Wed, 12 Sep 2018 05:59:01 GMT): nulee100 (Wed, 12 Sep 2018 05:59:22 GMT): Vigneshavm (Wed, 12 Sep 2018 05:59:49 GMT): abityildiz (Wed, 12 Sep 2018 06:05:22 GMT): abityildiz (Wed, 12 Sep 2018 06:05:22 GMT): mrudav.shukla (Wed, 12 Sep 2018 06:09:53 GMT): mrudav.shukla (Wed, 12 Sep 2018 06:11:09 GMT): SilambarasanMadhappan (Wed, 12 Sep 2018 06:25:15 GMT): SilambarasanMadhappan (Wed, 12 Sep 2018 06:26:56 GMT): mrudav.shukla (Wed, 12 Sep 2018 07:05:17 GMT): SilambarasanMadhappan (Wed, 12 Sep 2018 07:08:30 GMT): SilambarasanMadhappan (Wed, 12 Sep 2018 07:08:47 GMT): SilambarasanMadhappan (Wed, 12 Sep 2018 07:09:24 GMT): mrudav.shukla (Wed, 12 Sep 2018 07:25:55 GMT): davidkel (Wed, 12 Sep 2018 07:29:13 GMT): davidkel (Wed, 12 Sep 2018 07:29:13 GMT): jonlee300 (Wed, 12 Sep 2018 07:53:52 GMT): jonlee300 (Wed, 12 Sep 2018 07:54:21 GMT): rthatcher (Wed, 12 Sep 2018 08:27:01 GMT): jonlee300 (Wed, 12 Sep 2018 08:38:26 GMT): anuj_27 (Wed, 12 Sep 2018 08:57:00 GMT): SilambarasanMadhappan (Wed, 12 Sep 2018 09:01:38 GMT): mahoney1 (Wed, 12 Sep 2018 09:16:52 GMT): mahoney1 (Wed, 12 Sep 2018 09:16:52 GMT): mahoney1 (Wed, 12 Sep 2018 09:16:52 GMT): jonlee300 (Wed, 12 Sep 2018 09:32:27 GMT): jonlee300 (Wed, 12 Sep 2018 09:34:46 GMT): jonlee300 (Wed, 12 Sep 2018 09:35:48 GMT): rthatcher (Wed, 12 Sep 2018 09:57:22 GMT): koineramitranjan (Wed, 12 Sep 2018 10:12:19 GMT): mahoney1 (Wed, 12 Sep 2018 10:16:24 GMT): davidkel (Wed, 12 Sep 2018 10:31:06 GMT): davidkel (Wed, 12 Sep 2018 10:31:06 GMT): anuj_27 (Wed, 12 Sep 2018 10:43:31 GMT): jonlee300 (Wed, 12 Sep 2018 10:48:10 GMT): MuhammedHafil (Wed, 12 Sep 2018 10:48:13 GMT): MuhammedHafil (Wed, 12 Sep 2018 10:48:54 GMT): jonlee300 (Wed, 12 Sep 2018 10:49:18 GMT): jonlee300 (Wed, 12 Sep 2018 10:50:24 GMT): jonlee300 (Wed, 12 Sep 2018 10:52:55 GMT): davidkel (Wed, 12 Sep 2018 10:53:21 GMT): jonlee300 (Wed, 12 Sep 2018 10:54:14 GMT): touchingsoil (Wed, 12 Sep 2018 11:23:52 GMT): MuhammedHafil (Wed, 12 Sep 2018 11:29:31 GMT): Logi (Wed, 12 Sep 2018 11:43:19 GMT): rthatcher (Wed, 12 Sep 2018 12:07:41 GMT): touchingsoil (Wed, 12 Sep 2018 12:28:22 GMT): touchingsoil (Wed, 12 Sep 2018 12:28:22 GMT): touchingsoil (Wed, 12 Sep 2018 12:28:22 GMT): touchingsoil (Wed, 12 Sep 2018 12:28:22 GMT): jonlee300 (Wed, 12 Sep 2018 12:29:12 GMT): davidkel (Wed, 12 Sep 2018 12:50:38 GMT): nimaafraz (Wed, 12 Sep 2018 12:52:55 GMT): jonlee300 (Wed, 12 Sep 2018 12:53:19 GMT): nimaafraz (Wed, 12 Sep 2018 12:53:38 GMT): nimaafraz (Wed, 12 Sep 2018 12:53:38 GMT): rthatcher (Wed, 12 Sep 2018 13:10:51 GMT): rthatcher (Wed, 12 Sep 2018 13:10:51 GMT): juan.gzz.salz (Wed, 12 Sep 2018 15:33:06 GMT): juan.gzz.salz (Wed, 12 Sep 2018 15:57:01 GMT): mahoney1 (Wed, 12 Sep 2018 16:18:53 GMT): mahoney1 (Wed, 12 Sep 2018 16:18:53 GMT): WilianSantos (Wed, 12 Sep 2018 17:12:38 GMT): WilianSantos (Wed, 12 Sep 2018 17:19:44 GMT): joaquimpedrooliveira (Wed, 12 Sep 2018 18:37:43 GMT): joaquimpedrooliveira (Wed, 12 Sep 2018 18:46:54 GMT): greg2git (Wed, 12 Sep 2018 18:49:06 GMT): joaquimpedrooliveira (Wed, 12 Sep 2018 18:50:21 GMT): joaquimpedrooliveira (Wed, 12 Sep 2018 18:51:42 GMT): greg2git (Wed, 12 Sep 2018 18:51:51 GMT): joaquimpedrooliveira (Wed, 12 Sep 2018 18:53:09 GMT): joaquimpedrooliveira (Wed, 12 Sep 2018 18:53:09 GMT): joaquimpedrooliveira (Wed, 12 Sep 2018 18:53:09 GMT): greg2git (Wed, 12 Sep 2018 19:40:56 GMT): davidkel (Wed, 12 Sep 2018 20:00:22 GMT): rupa12 (Wed, 12 Sep 2018 20:04:48 GMT): rupa12 (Wed, 12 Sep 2018 20:09:11 GMT): juan.gzz.salz (Wed, 12 Sep 2018 20:44:10 GMT): rupa12 (Wed, 12 Sep 2018 21:29:24 GMT): KEVINTYUS (Thu, 13 Sep 2018 01:02:37 GMT): KEVINTYUS (Thu, 13 Sep 2018 01:04:02 GMT): jonlee300 (Thu, 13 Sep 2018 01:53:11 GMT): jonlee300 (Thu, 13 Sep 2018 02:00:56 GMT): tyhtao1990 (Thu, 13 Sep 2018 02:27:07 GMT): tyhtao1990 (Thu, 13 Sep 2018 02:28:40 GMT): touchingsoil (Thu, 13 Sep 2018 02:49:43 GMT): tyhtao1990 (Thu, 13 Sep 2018 02:52:38 GMT): lapdin_de_blockchain (Thu, 13 Sep 2018 03:28:12 GMT): touchingsoil (Thu, 13 Sep 2018 03:35:45 GMT): touchingsoil (Thu, 13 Sep 2018 03:35:45 GMT): gzkoala (Thu, 13 Sep 2018 04:01:17 GMT): tyhtao1990 (Thu, 13 Sep 2018 05:09:40 GMT): tyhtao1990 (Thu, 13 Sep 2018 05:09:40 GMT): touchingsoil (Thu, 13 Sep 2018 05:31:54 GMT): tyhtao1990 (Thu, 13 Sep 2018 05:53:03 GMT): lapdin_de_blockchain (Thu, 13 Sep 2018 07:12:08 GMT): davidkel (Thu, 13 Sep 2018 07:16:04 GMT): davidkel (Thu, 13 Sep 2018 07:16:04 GMT): touchingsoil (Thu, 13 Sep 2018 07:43:40 GMT): touchingsoil (Thu, 13 Sep 2018 08:07:25 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 08:14:34 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 08:14:34 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 08:14:34 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 08:14:34 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 08:14:34 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 08:14:34 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 08:14:34 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 08:14:34 GMT): mahoney1 (Thu, 13 Sep 2018 08:50:07 GMT): mahoney1 (Thu, 13 Sep 2018 08:50:07 GMT): mahoney1 (Thu, 13 Sep 2018 08:51:47 GMT): mahoney1 (Thu, 13 Sep 2018 08:54:18 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 08:59:17 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 09:05:29 GMT): mahoney1 (Thu, 13 Sep 2018 09:10:32 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 09:13:02 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 09:13:02 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 09:13:02 GMT): mahoney1 (Thu, 13 Sep 2018 09:14:00 GMT): mahoney1 (Thu, 13 Sep 2018 09:14:00 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 09:16:21 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 09:18:05 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 09:22:39 GMT): mahoney1 (Thu, 13 Sep 2018 09:30:19 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 09:43:39 GMT): touchingsoil (Thu, 13 Sep 2018 09:46:00 GMT): touchingsoil (Thu, 13 Sep 2018 09:46:00 GMT): touchingsoil (Thu, 13 Sep 2018 09:46:00 GMT): tahaf10 (Thu, 13 Sep 2018 10:32:15 GMT): davidkel (Thu, 13 Sep 2018 11:01:15 GMT): mahoney1 (Thu, 13 Sep 2018 11:13:34 GMT): mahoney1 (Thu, 13 Sep 2018 11:16:04 GMT): tahaf10 (Thu, 13 Sep 2018 11:29:23 GMT): tahaf10 (Thu, 13 Sep 2018 11:29:32 GMT): tahaf10 (Thu, 13 Sep 2018 11:29:51 GMT): tahaf10 (Thu, 13 Sep 2018 11:30:42 GMT): tahaf10 (Thu, 13 Sep 2018 11:31:32 GMT): mahoney1 (Thu, 13 Sep 2018 11:42:20 GMT): tahaf10 (Thu, 13 Sep 2018 11:46:10 GMT): tahaf10 (Thu, 13 Sep 2018 11:52:30 GMT): tahaf10 (Thu, 13 Sep 2018 11:52:39 GMT): tahaf10 (Thu, 13 Sep 2018 12:04:47 GMT): MuhammedHafil (Thu, 13 Sep 2018 12:34:36 GMT): MuhammedHafil (Thu, 13 Sep 2018 12:34:52 GMT): waleed (Thu, 13 Sep 2018 12:36:17 GMT): MuhammedHafil (Thu, 13 Sep 2018 12:36:49 GMT): waleed (Thu, 13 Sep 2018 12:42:58 GMT): rthatcher (Thu, 13 Sep 2018 12:43:28 GMT): Ibraxos (Thu, 13 Sep 2018 12:49:53 GMT): halilkalkan (Thu, 13 Sep 2018 13:44:07 GMT): WilianSantos (Thu, 13 Sep 2018 13:56:02 GMT): rthatcher (Thu, 13 Sep 2018 14:04:45 GMT): rthatcher (Thu, 13 Sep 2018 14:09:48 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 14:11:10 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 14:11:10 GMT): MarcelvandeKerkhof (Thu, 13 Sep 2018 14:11:10 GMT): WilianSantos (Thu, 13 Sep 2018 14:13:23 GMT): petans24 (Thu, 13 Sep 2018 15:06:25 GMT): mahoney1 (Thu, 13 Sep 2018 15:35:25 GMT): jonlee300 (Thu, 13 Sep 2018 15:45:17 GMT): marosoft (Thu, 13 Sep 2018 16:00:39 GMT): rahul703 (Thu, 13 Sep 2018 16:14:02 GMT): davidkel (Thu, 13 Sep 2018 16:17:54 GMT): mahoney1 (Thu, 13 Sep 2018 16:20:00 GMT): mahoney1 (Thu, 13 Sep 2018 16:27:32 GMT): rahul703 (Thu, 13 Sep 2018 16:30:41 GMT): rahul703 (Thu, 13 Sep 2018 16:43:57 GMT): marosoft (Thu, 13 Sep 2018 16:47:15 GMT): rahul703 (Thu, 13 Sep 2018 16:47:25 GMT): marosoft (Thu, 13 Sep 2018 17:52:20 GMT): rasmusmilz (Thu, 13 Sep 2018 22:52:32 GMT): rasmusmilz (Thu, 13 Sep 2018 22:52:32 GMT): rasmusmilz (Thu, 13 Sep 2018 23:00:29 GMT): rahul703 (Fri, 14 Sep 2018 00:28:17 GMT): rahul703 (Fri, 14 Sep 2018 00:28:17 GMT): tyhtao1990 (Fri, 14 Sep 2018 01:21:48 GMT): tyhtao1990 (Fri, 14 Sep 2018 01:21:48 GMT): touchingsoil (Fri, 14 Sep 2018 03:32:59 GMT): tyhtao1990 (Fri, 14 Sep 2018 06:07:49 GMT): tahaf10 (Fri, 14 Sep 2018 07:06:40 GMT): jonlee300 (Fri, 14 Sep 2018 08:06:19 GMT): davidkel (Fri, 14 Sep 2018 08:14:59 GMT): rthatcher (Fri, 14 Sep 2018 08:16:02 GMT): MarcelvandeKerkhof (Fri, 14 Sep 2018 08:19:52 GMT): rthatcher (Fri, 14 Sep 2018 08:23:35 GMT): rthatcher (Fri, 14 Sep 2018 08:31:31 GMT): rthatcher (Fri, 14 Sep 2018 08:31:31 GMT): marosoft (Fri, 14 Sep 2018 08:32:34 GMT): rahul703 (Fri, 14 Sep 2018 08:40:08 GMT): Jonan 1 (Fri, 14 Sep 2018 08:41:18 GMT): Jonan 1 (Fri, 14 Sep 2018 08:41:30 GMT): MarcelvandeKerkhof (Fri, 14 Sep 2018 08:46:33 GMT): MarcelvandeKerkhof (Fri, 14 Sep 2018 08:46:33 GMT): rthatcher (Fri, 14 Sep 2018 08:53:24 GMT): mahoney1 (Fri, 14 Sep 2018 08:56:33 GMT): mahoney1 (Fri, 14 Sep 2018 08:58:55 GMT): mahoney1 (Fri, 14 Sep 2018 08:58:55 GMT): MarcelvandeKerkhof (Fri, 14 Sep 2018 09:00:26 GMT): MarcelvandeKerkhof (Fri, 14 Sep 2018 09:02:07 GMT): touchingsoil (Fri, 14 Sep 2018 09:02:42 GMT): touchingsoil (Fri, 14 Sep 2018 09:02:42 GMT): touchingsoil (Fri, 14 Sep 2018 09:02:42 GMT): rthatcher (Fri, 14 Sep 2018 09:09:35 GMT): jonlee300 (Fri, 14 Sep 2018 09:41:39 GMT): jonlee300 (Fri, 14 Sep 2018 09:41:39 GMT): davidkel (Fri, 14 Sep 2018 09:47:03 GMT): mahoney1 (Fri, 14 Sep 2018 09:47:06 GMT): touchingsoil (Fri, 14 Sep 2018 09:58:45 GMT): touchingsoil (Fri, 14 Sep 2018 09:58:45 GMT): simonmullaney (Fri, 14 Sep 2018 10:24:40 GMT): rasmusmilz (Fri, 14 Sep 2018 10:56:41 GMT): MarcelvandeKerkhof (Fri, 14 Sep 2018 11:03:00 GMT): MarcelvandeKerkhof (Fri, 14 Sep 2018 11:03:00 GMT): MuhammedHafil (Fri, 14 Sep 2018 11:36:46 GMT): MuhammedHafil (Fri, 14 Sep 2018 11:36:46 GMT): MuhammedHafil (Fri, 14 Sep 2018 11:39:14 GMT): MuhammedHafil (Fri, 14 Sep 2018 11:49:36 GMT): MuhammedHafil (Fri, 14 Sep 2018 11:51:04 GMT): MuhammedHafil (Fri, 14 Sep 2018 11:54:18 GMT): rthatcher (Fri, 14 Sep 2018 11:59:33 GMT): rthatcher (Fri, 14 Sep 2018 11:59:33 GMT): MuhammedHafil (Fri, 14 Sep 2018 12:00:18 GMT): mahoney1 (Fri, 14 Sep 2018 12:09:09 GMT): rahul703 (Fri, 14 Sep 2018 13:21:53 GMT): rahul703 (Fri, 14 Sep 2018 13:21:53 GMT): rahul703 (Fri, 14 Sep 2018 13:22:47 GMT): rahul703 (Fri, 14 Sep 2018 13:22:47 GMT): mahoney1 (Fri, 14 Sep 2018 13:37:16 GMT): mahoney1 (Fri, 14 Sep 2018 13:37:16 GMT): mahoney1 (Fri, 14 Sep 2018 13:37:16 GMT): mahoney1 (Fri, 14 Sep 2018 13:37:16 GMT): rahul703 (Fri, 14 Sep 2018 14:49:34 GMT): mrudav.shukla (Fri, 14 Sep 2018 18:17:36 GMT): rahul703 (Fri, 14 Sep 2018 19:15:41 GMT): rahul703 (Fri, 14 Sep 2018 19:15:41 GMT): rupa12 (Fri, 14 Sep 2018 20:51:24 GMT): rahul703 (Sat, 15 Sep 2018 00:12:31 GMT): touchingsoil (Sat, 15 Sep 2018 01:09:30 GMT): PMoura (Sat, 15 Sep 2018 01:09:33 GMT): jonlee300 (Sat, 15 Sep 2018 05:02:06 GMT): pensu (Sat, 15 Sep 2018 06:05:35 GMT): pensu (Sat, 15 Sep 2018 06:05:43 GMT): davidkel (Sat, 15 Sep 2018 07:06:15 GMT): arindammondal91 (Sat, 15 Sep 2018 09:00:03 GMT): kulbirgr8 (Sat, 15 Sep 2018 10:51:51 GMT): silliman (Sat, 15 Sep 2018 12:50:09 GMT): mrudav.shukla (Sat, 15 Sep 2018 13:10:28 GMT): pensu (Sat, 15 Sep 2018 13:38:43 GMT): manishgupta33366 (Sat, 15 Sep 2018 16:55:09 GMT): davidkel (Sat, 15 Sep 2018 17:26:26 GMT): mrudav.shukla (Sun, 16 Sep 2018 05:03:56 GMT): mrudav.shukla (Sun, 16 Sep 2018 05:03:56 GMT): davidkel (Sun, 16 Sep 2018 06:46:25 GMT): nasht00 (Sun, 16 Sep 2018 07:19:54 GMT): nasht00 (Sun, 16 Sep 2018 07:22:18 GMT): nasht00 (Sun, 16 Sep 2018 07:22:18 GMT): mrudav.shukla (Sun, 16 Sep 2018 12:25:42 GMT): AviFatal (Sun, 16 Sep 2018 12:46:29 GMT): jonlee300 (Sun, 16 Sep 2018 13:01:41 GMT): davidkel (Sun, 16 Sep 2018 13:09:22 GMT): davidkel (Sun, 16 Sep 2018 13:09:22 GMT): davidkel (Sun, 16 Sep 2018 13:09:22 GMT): davidkel (Sun, 16 Sep 2018 13:09:22 GMT): davidkel (Sun, 16 Sep 2018 13:09:22 GMT): davidkel (Sun, 16 Sep 2018 14:26:54 GMT): VirendraSolanke (Sun, 16 Sep 2018 18:18:21 GMT): emiliastk (Mon, 17 Sep 2018 01:00:50 GMT): rupa12 (Mon, 17 Sep 2018 02:24:45 GMT): jonlee300 (Mon, 17 Sep 2018 02:33:44 GMT): jonlee300 (Mon, 17 Sep 2018 02:33:56 GMT): jonlee300 (Mon, 17 Sep 2018 02:34:15 GMT): jonlee300 (Mon, 17 Sep 2018 02:34:25 GMT): jonlee300 (Mon, 17 Sep 2018 02:35:52 GMT): jonlee300 (Mon, 17 Sep 2018 02:37:03 GMT): jonlee300 (Mon, 17 Sep 2018 02:37:35 GMT): Pa1vinayak (Mon, 17 Sep 2018 02:45:44 GMT): jonlee300 (Mon, 17 Sep 2018 02:56:34 GMT): jonlee300 (Mon, 17 Sep 2018 02:59:19 GMT): jonlee300 (Mon, 17 Sep 2018 02:59:19 GMT): jonlee300 (Mon, 17 Sep 2018 02:59:19 GMT): jonlee300 (Mon, 17 Sep 2018 03:14:45 GMT): jonlee300 (Mon, 17 Sep 2018 03:14:45 GMT): bjrnt (Mon, 17 Sep 2018 04:14:44 GMT): bjrnt (Mon, 17 Sep 2018 04:27:52 GMT): tyhtao1990 (Mon, 17 Sep 2018 05:36:14 GMT): tyhtao1990 (Mon, 17 Sep 2018 05:36:14 GMT): tyhtao1990 (Mon, 17 Sep 2018 05:36:14 GMT): hl-newbie (Mon, 17 Sep 2018 05:46:21 GMT): tyhtao1990 (Mon, 17 Sep 2018 05:49:40 GMT): tyhtao1990 (Mon, 17 Sep 2018 05:49:40 GMT): tyhtao1990 (Mon, 17 Sep 2018 05:49:40 GMT): tyhtao1990 (Mon, 17 Sep 2018 05:49:40 GMT): tyhtao1990 (Mon, 17 Sep 2018 05:49:40 GMT): tyhtao1990 (Mon, 17 Sep 2018 05:49:40 GMT): anaswar (Mon, 17 Sep 2018 06:00:03 GMT): ndeepika (Mon, 17 Sep 2018 06:27:23 GMT): MuhammedHafil (Mon, 17 Sep 2018 06:48:32 GMT): tyhtao1990 (Mon, 17 Sep 2018 06:55:47 GMT): MuhammedHafil (Mon, 17 Sep 2018 06:59:27 GMT): tyhtao1990 (Mon, 17 Sep 2018 07:09:24 GMT): UnaiUrk (Mon, 17 Sep 2018 07:23:54 GMT): tyhtao1990 (Mon, 17 Sep 2018 07:24:11 GMT): UnaiUrk (Mon, 17 Sep 2018 07:24:12 GMT): davidkel (Mon, 17 Sep 2018 08:05:00 GMT): UnaiUrk (Mon, 17 Sep 2018 08:06:30 GMT): UnaiUrk (Mon, 17 Sep 2018 08:10:00 GMT): davidkel (Mon, 17 Sep 2018 08:13:34 GMT): davidkel (Mon, 17 Sep 2018 08:14:40 GMT): rthatcher (Mon, 17 Sep 2018 08:15:20 GMT): rthatcher (Mon, 17 Sep 2018 08:15:20 GMT): UnaiUrk (Mon, 17 Sep 2018 08:16:46 GMT): Sohail_Kazi (Mon, 17 Sep 2018 08:17:32 GMT): rthatcher (Mon, 17 Sep 2018 08:19:18 GMT): tyhtao1990 (Mon, 17 Sep 2018 08:22:11 GMT): tyhtao1990 (Mon, 17 Sep 2018 08:22:11 GMT): davidkel (Mon, 17 Sep 2018 08:22:16 GMT): rthatcher (Mon, 17 Sep 2018 08:26:38 GMT): UnaiUrk (Mon, 17 Sep 2018 08:27:50 GMT): UnaiUrk (Mon, 17 Sep 2018 08:27:50 GMT): tyhtao1990 (Mon, 17 Sep 2018 08:30:49 GMT): tyhtao1990 (Mon, 17 Sep 2018 08:30:49 GMT): davidkel (Mon, 17 Sep 2018 08:33:11 GMT): cuevrob (Mon, 17 Sep 2018 14:47:18 GMT): waleed (Mon, 17 Sep 2018 14:53:56 GMT): cuevrob (Mon, 17 Sep 2018 14:58:56 GMT): cuevrob (Mon, 17 Sep 2018 14:59:03 GMT): garaujo (Mon, 17 Sep 2018 15:08:29 GMT): garaujo (Mon, 17 Sep 2018 15:14:21 GMT): mahoney1 (Mon, 17 Sep 2018 15:19:20 GMT): cuevrob (Mon, 17 Sep 2018 15:20:26 GMT): mahoney1 (Mon, 17 Sep 2018 15:28:02 GMT): mahoney1 (Mon, 17 Sep 2018 15:28:02 GMT): mahoney1 (Mon, 17 Sep 2018 15:28:02 GMT): garaujo (Mon, 17 Sep 2018 15:36:07 GMT): rupa12 (Mon, 17 Sep 2018 18:10:47 GMT): rupa12 (Mon, 17 Sep 2018 18:10:47 GMT): davidkel (Mon, 17 Sep 2018 18:16:17 GMT): davidkel (Mon, 17 Sep 2018 18:18:50 GMT): davidkel (Mon, 17 Sep 2018 18:18:50 GMT): rupa12 (Mon, 17 Sep 2018 18:28:37 GMT): abityildiz (Mon, 17 Sep 2018 19:38:54 GMT): henriqueof (Mon, 17 Sep 2018 20:24:29 GMT): mahoney1 (Mon, 17 Sep 2018 21:10:49 GMT): mahoney1 (Mon, 17 Sep 2018 21:19:00 GMT): jonlee300 (Tue, 18 Sep 2018 01:46:57 GMT): malviyamukul (Tue, 18 Sep 2018 03:56:51 GMT): malviyamukul (Tue, 18 Sep 2018 03:56:59 GMT): malviyamukul (Tue, 18 Sep 2018 03:58:13 GMT): malviyamukul (Tue, 18 Sep 2018 03:58:48 GMT): VaibhavChotaliya (Tue, 18 Sep 2018 05:20:41 GMT): VaibhavChotaliya (Tue, 18 Sep 2018 05:21:01 GMT): amritsharma (Tue, 18 Sep 2018 06:00:16 GMT): amritsharma (Tue, 18 Sep 2018 06:03:42 GMT): amritsharma (Tue, 18 Sep 2018 06:04:38 GMT): davidkel (Tue, 18 Sep 2018 07:43:52 GMT): davidkel (Tue, 18 Sep 2018 07:44:38 GMT): davidkel (Tue, 18 Sep 2018 07:46:00 GMT): davidkel (Tue, 18 Sep 2018 07:47:35 GMT): garaujo (Tue, 18 Sep 2018 07:48:12 GMT): davidkel (Tue, 18 Sep 2018 07:52:08 GMT): davidkel (Tue, 18 Sep 2018 07:52:08 GMT): jonlee300 (Tue, 18 Sep 2018 08:02:54 GMT): garaujo (Tue, 18 Sep 2018 08:03:50 GMT): davidkel (Tue, 18 Sep 2018 08:08:41 GMT): petans24 (Tue, 18 Sep 2018 08:14:12 GMT): MuhammedHafil (Tue, 18 Sep 2018 09:03:01 GMT): mahoney1 (Tue, 18 Sep 2018 09:13:37 GMT): mahoney1 (Tue, 18 Sep 2018 09:13:37 GMT): HoneyShah (Tue, 18 Sep 2018 09:25:55 GMT): HoneyShah (Tue, 18 Sep 2018 09:25:55 GMT): HoneyShah (Tue, 18 Sep 2018 09:25:55 GMT): davidkel (Tue, 18 Sep 2018 09:27:17 GMT): abityildiz (Tue, 18 Sep 2018 10:27:24 GMT): VadimInshakov (Tue, 18 Sep 2018 10:32:47 GMT): VadimInshakov (Tue, 18 Sep 2018 10:32:47 GMT): anuj_27 (Tue, 18 Sep 2018 10:48:44 GMT): anuj_27 (Tue, 18 Sep 2018 10:55:05 GMT): mahoney1 (Tue, 18 Sep 2018 11:07:53 GMT): mahoney1 (Tue, 18 Sep 2018 11:13:04 GMT): mahoney1 (Tue, 18 Sep 2018 11:18:24 GMT): mahoney1 (Tue, 18 Sep 2018 11:18:24 GMT): mahoney1 (Tue, 18 Sep 2018 11:20:12 GMT): abityildiz (Tue, 18 Sep 2018 11:21:29 GMT): VadimInshakov (Tue, 18 Sep 2018 11:35:24 GMT): anaswar (Tue, 18 Sep 2018 12:53:59 GMT): davidkel (Tue, 18 Sep 2018 12:56:15 GMT): davidkel (Tue, 18 Sep 2018 12:56:15 GMT): gauravgiri (Tue, 18 Sep 2018 13:10:58 GMT): gauravgiri (Tue, 18 Sep 2018 13:10:58 GMT): gauravgiri (Tue, 18 Sep 2018 13:10:58 GMT): davidkel (Tue, 18 Sep 2018 13:21:02 GMT): VadimInshakov (Tue, 18 Sep 2018 13:23:13 GMT): gauravgiri (Tue, 18 Sep 2018 13:26:40 GMT): davidkel (Tue, 18 Sep 2018 13:27:55 GMT): gauravgiri (Tue, 18 Sep 2018 13:29:02 GMT): davidkel (Tue, 18 Sep 2018 13:29:59 GMT): davidkel (Tue, 18 Sep 2018 13:29:59 GMT): gauravgiri (Tue, 18 Sep 2018 13:33:02 GMT): VadimInshakov (Tue, 18 Sep 2018 13:35:15 GMT): davidkel (Tue, 18 Sep 2018 13:35:26 GMT): davidkel (Tue, 18 Sep 2018 13:35:46 GMT): gauravgiri (Tue, 18 Sep 2018 13:44:47 GMT): VadimInshakov (Tue, 18 Sep 2018 13:53:03 GMT): VadimInshakov (Tue, 18 Sep 2018 14:02:37 GMT): anant706 (Tue, 18 Sep 2018 14:06:12 GMT): anaswar (Tue, 18 Sep 2018 15:03:29 GMT): anaswar (Tue, 18 Sep 2018 15:03:29 GMT): davidkel (Tue, 18 Sep 2018 15:04:19 GMT): anaswar (Tue, 18 Sep 2018 15:04:55 GMT): mahoney1 (Tue, 18 Sep 2018 15:29:31 GMT): mahoney1 (Tue, 18 Sep 2018 15:29:31 GMT): mahoney1 (Tue, 18 Sep 2018 15:29:31 GMT): abityildiz (Tue, 18 Sep 2018 20:40:47 GMT): abityildiz (Tue, 18 Sep 2018 20:40:47 GMT): abityildiz (Tue, 18 Sep 2018 20:41:29 GMT): abityildiz (Tue, 18 Sep 2018 20:41:29 GMT): abityildiz (Tue, 18 Sep 2018 20:43:45 GMT): abityildiz (Tue, 18 Sep 2018 20:44:22 GMT): giacomo.minighin (Wed, 19 Sep 2018 00:08:32 GMT): giacomo.minighin (Wed, 19 Sep 2018 00:10:58 GMT): giacomo.minighin (Wed, 19 Sep 2018 00:10:58 GMT): giacomo.minighin (Wed, 19 Sep 2018 00:10:58 GMT): JeffGutierrez (Wed, 19 Sep 2018 00:27:15 GMT): saeedi (Wed, 19 Sep 2018 04:41:07 GMT): liyupi (Wed, 19 Sep 2018 05:53:54 GMT): liyupi (Wed, 19 Sep 2018 05:54:49 GMT): youngsunglee (Wed, 19 Sep 2018 06:31:25 GMT): youngsunglee (Wed, 19 Sep 2018 06:33:16 GMT): youngsunglee (Wed, 19 Sep 2018 06:39:00 GMT): NareshPai (Wed, 19 Sep 2018 07:02:42 GMT): davidkel (Wed, 19 Sep 2018 07:18:23 GMT): davidkel (Wed, 19 Sep 2018 07:52:14 GMT): garaujo (Wed, 19 Sep 2018 07:54:20 GMT): mahoney1 (Wed, 19 Sep 2018 08:03:29 GMT): mahoney1 (Wed, 19 Sep 2018 08:06:04 GMT): mahoney1 (Wed, 19 Sep 2018 08:10:07 GMT): saeedi (Wed, 19 Sep 2018 08:12:13 GMT): davidkel (Wed, 19 Sep 2018 08:15:19 GMT): saeedi (Wed, 19 Sep 2018 08:28:15 GMT): RahulSingh 6 (Wed, 19 Sep 2018 08:34:48 GMT): RahulSingh 6 (Wed, 19 Sep 2018 08:34:50 GMT): JeffGutierrez (Wed, 19 Sep 2018 08:52:56 GMT): tahaf10 (Wed, 19 Sep 2018 09:00:43 GMT): mahoney1 (Wed, 19 Sep 2018 09:07:50 GMT): tahaf10 (Wed, 19 Sep 2018 09:16:21 GMT): touchingsoil (Wed, 19 Sep 2018 09:37:40 GMT): touchingsoil (Wed, 19 Sep 2018 09:37:40 GMT): sureshtedla (Wed, 19 Sep 2018 09:39:29 GMT): sureshtedla (Wed, 19 Sep 2018 09:39:29 GMT): sureshtedla (Wed, 19 Sep 2018 09:41:51 GMT): davidkel (Wed, 19 Sep 2018 09:43:06 GMT): rthatcher (Wed, 19 Sep 2018 09:45:02 GMT): touchingsoil (Wed, 19 Sep 2018 09:45:42 GMT): davidkel (Wed, 19 Sep 2018 09:47:55 GMT): davidkel (Wed, 19 Sep 2018 09:47:55 GMT): NareshPai (Wed, 19 Sep 2018 09:48:26 GMT): rthatcher (Wed, 19 Sep 2018 09:59:58 GMT): sureshtedla (Wed, 19 Sep 2018 10:02:00 GMT): sureshtedla (Wed, 19 Sep 2018 10:02:00 GMT): rthatcher (Wed, 19 Sep 2018 10:36:06 GMT): koineramitranjan (Wed, 19 Sep 2018 11:17:32 GMT): garaujo (Wed, 19 Sep 2018 11:25:47 GMT): rthatcher (Wed, 19 Sep 2018 11:25:49 GMT): rthatcher (Wed, 19 Sep 2018 11:26:25 GMT): garaujo (Wed, 19 Sep 2018 11:27:03 GMT): touchingsoil (Wed, 19 Sep 2018 11:29:07 GMT): rthatcher (Wed, 19 Sep 2018 11:31:59 GMT): abityildiz (Wed, 19 Sep 2018 11:36:14 GMT): ra_w (Wed, 19 Sep 2018 11:51:25 GMT): nimaafraz (Wed, 19 Sep 2018 12:10:34 GMT): rthatcher (Wed, 19 Sep 2018 12:25:45 GMT): rthatcher (Wed, 19 Sep 2018 12:40:20 GMT): ra_w (Wed, 19 Sep 2018 12:51:35 GMT): ra_w (Wed, 19 Sep 2018 12:51:35 GMT): mahoney1 (Wed, 19 Sep 2018 13:00:06 GMT): tahaf10 (Wed, 19 Sep 2018 13:04:57 GMT): VadimInshakov (Wed, 19 Sep 2018 13:39:35 GMT): abityildiz (Wed, 19 Sep 2018 13:48:37 GMT): abityildiz (Wed, 19 Sep 2018 13:49:10 GMT): abityildiz (Wed, 19 Sep 2018 13:49:30 GMT): ping42 (Wed, 19 Sep 2018 14:04:04 GMT): atirekg (Wed, 19 Sep 2018 14:05:37 GMT): VadimInshakov (Wed, 19 Sep 2018 14:43:41 GMT): rthatcher (Wed, 19 Sep 2018 14:47:58 GMT): giacomo.minighin (Wed, 19 Sep 2018 15:03:22 GMT): rthatcher (Wed, 19 Sep 2018 15:03:27 GMT): davidkel (Wed, 19 Sep 2018 15:38:13 GMT): garaujo (Wed, 19 Sep 2018 15:49:35 GMT): rthatcher (Wed, 19 Sep 2018 16:08:44 GMT): kapila123 (Wed, 19 Sep 2018 17:39:16 GMT): davidkel (Wed, 19 Sep 2018 19:04:38 GMT): rgunn (Thu, 20 Sep 2018 03:57:54 GMT): abityildiz (Thu, 20 Sep 2018 06:37:25 GMT): jesro (Thu, 20 Sep 2018 08:10:07 GMT): mahoney1 (Thu, 20 Sep 2018 08:13:44 GMT): rthatcher (Thu, 20 Sep 2018 08:18:25 GMT): rthatcher (Thu, 20 Sep 2018 08:18:25 GMT): abityildiz (Thu, 20 Sep 2018 08:24:10 GMT): jesro (Thu, 20 Sep 2018 08:44:04 GMT): VadimInshakov (Thu, 20 Sep 2018 09:44:58 GMT): VadimInshakov (Thu, 20 Sep 2018 09:44:58 GMT): touchingsoil (Thu, 20 Sep 2018 09:56:20 GMT): mrudav.shukla (Thu, 20 Sep 2018 10:21:16 GMT): davidkel (Thu, 20 Sep 2018 10:27:16 GMT): rodolfoleal (Thu, 20 Sep 2018 11:33:49 GMT): garaujo (Thu, 20 Sep 2018 11:33:50 GMT): rthatcher (Thu, 20 Sep 2018 11:41:57 GMT): garaujo (Thu, 20 Sep 2018 12:09:44 GMT): mahoney1 (Thu, 20 Sep 2018 12:15:37 GMT): ManishKhobragade (Thu, 20 Sep 2018 12:16:00 GMT): garaujo (Thu, 20 Sep 2018 12:46:24 GMT): giacomo.minighin (Thu, 20 Sep 2018 12:57:54 GMT): rthatcher (Thu, 20 Sep 2018 13:18:25 GMT): VadimInshakov (Thu, 20 Sep 2018 13:26:03 GMT): giacomo.minighin (Thu, 20 Sep 2018 13:29:45 GMT): rahul703 (Thu, 20 Sep 2018 13:29:48 GMT): rahul703 (Thu, 20 Sep 2018 13:29:48 GMT): rahul703 (Thu, 20 Sep 2018 13:29:48 GMT): mahoney1 (Thu, 20 Sep 2018 13:39:36 GMT): giacomo.minighin (Thu, 20 Sep 2018 13:40:16 GMT): mahoney1 (Thu, 20 Sep 2018 13:43:52 GMT): rahul703 (Thu, 20 Sep 2018 13:55:25 GMT): rahul703 (Thu, 20 Sep 2018 13:55:25 GMT): rahul703 (Thu, 20 Sep 2018 13:55:25 GMT): abityildiz (Thu, 20 Sep 2018 14:08:55 GMT): abityildiz (Thu, 20 Sep 2018 14:09:41 GMT): abityildiz (Thu, 20 Sep 2018 14:09:46 GMT): sureshtedla (Thu, 20 Sep 2018 14:26:10 GMT): sureshtedla (Thu, 20 Sep 2018 14:28:06 GMT): sureshtedla (Thu, 20 Sep 2018 14:31:04 GMT): sureshtedla (Thu, 20 Sep 2018 14:31:04 GMT): sureshtedla (Thu, 20 Sep 2018 14:31:05 GMT): sureshtedla (Thu, 20 Sep 2018 14:36:39 GMT): VadimInshakov (Thu, 20 Sep 2018 15:29:37 GMT): rthatcher (Thu, 20 Sep 2018 15:39:15 GMT): sureshtedla (Thu, 20 Sep 2018 15:41:23 GMT): sureshtedla (Thu, 20 Sep 2018 15:49:34 GMT): sureshtedla (Thu, 20 Sep 2018 15:57:04 GMT): ManishKhobragade (Thu, 20 Sep 2018 16:42:52 GMT): ManishKhobragade (Thu, 20 Sep 2018 16:43:48 GMT): rahul703 (Thu, 20 Sep 2018 16:48:40 GMT): rahul703 (Thu, 20 Sep 2018 16:48:40 GMT): ManishKhobragade (Thu, 20 Sep 2018 16:50:33 GMT): rahul703 (Thu, 20 Sep 2018 16:53:01 GMT): rahul703 (Thu, 20 Sep 2018 16:53:01 GMT): ManishKhobragade (Thu, 20 Sep 2018 17:07:11 GMT): ManishKhobragade (Thu, 20 Sep 2018 17:07:11 GMT): davidkel (Thu, 20 Sep 2018 17:25:19 GMT): mrudav.shukla (Thu, 20 Sep 2018 17:56:35 GMT): davidkel (Thu, 20 Sep 2018 18:03:21 GMT): rahul703 (Thu, 20 Sep 2018 19:02:11 GMT): davidkel (Thu, 20 Sep 2018 20:52:13 GMT): davidkel (Thu, 20 Sep 2018 20:52:13 GMT): touchingsoil (Fri, 21 Sep 2018 01:14:55 GMT): touchingsoil (Fri, 21 Sep 2018 01:14:55 GMT): xiaobinwu (Fri, 21 Sep 2018 02:55:45 GMT): xiaobinwu (Fri, 21 Sep 2018 02:57:12 GMT): labcoinpoc (Fri, 21 Sep 2018 03:04:30 GMT): labcoinpoc (Fri, 21 Sep 2018 03:04:30 GMT): labcoinpoc (Fri, 21 Sep 2018 03:04:30 GMT): MuhammedHafil (Fri, 21 Sep 2018 04:37:22 GMT): kennethpham (Fri, 21 Sep 2018 05:46:19 GMT): xiaobinwu (Fri, 21 Sep 2018 06:14:38 GMT): UpendraMishra (Fri, 21 Sep 2018 06:14:53 GMT): KindleBitSoln (Fri, 21 Sep 2018 06:24:33 GMT): KindleBitSoln (Fri, 21 Sep 2018 06:31:26 GMT): ManishKhobragade (Fri, 21 Sep 2018 07:15:27 GMT): giacomo.minighin (Fri, 21 Sep 2018 07:21:03 GMT): rthatcher (Fri, 21 Sep 2018 08:17:41 GMT): rthatcher (Fri, 21 Sep 2018 08:24:47 GMT): rthatcher (Fri, 21 Sep 2018 08:30:11 GMT): xiaobinwu (Fri, 21 Sep 2018 08:30:45 GMT): touchingsoil (Fri, 21 Sep 2018 08:33:17 GMT): rthatcher (Fri, 21 Sep 2018 08:34:35 GMT): giacomo.minighin (Fri, 21 Sep 2018 08:35:41 GMT): rthatcher (Fri, 21 Sep 2018 08:41:18 GMT): giacomo.minighin (Fri, 21 Sep 2018 08:44:36 GMT): davidkel (Fri, 21 Sep 2018 08:45:23 GMT): giacomo.minighin (Fri, 21 Sep 2018 08:45:29 GMT): davidkel (Fri, 21 Sep 2018 08:47:31 GMT): rahul703 (Fri, 21 Sep 2018 08:48:32 GMT): giacomo.minighin (Fri, 21 Sep 2018 08:48:57 GMT): davidkel (Fri, 21 Sep 2018 08:50:12 GMT): davidkel (Fri, 21 Sep 2018 08:52:15 GMT): rahul703 (Fri, 21 Sep 2018 08:55:06 GMT): Jyotirmoy (Fri, 21 Sep 2018 08:57:39 GMT): rahul703 (Fri, 21 Sep 2018 09:00:39 GMT): davidkel (Fri, 21 Sep 2018 09:01:37 GMT): rthatcher (Fri, 21 Sep 2018 09:04:59 GMT): davidkel (Fri, 21 Sep 2018 09:14:06 GMT): varunagarwal (Fri, 21 Sep 2018 09:14:48 GMT): rthatcher (Fri, 21 Sep 2018 09:16:30 GMT): rahul703 (Fri, 21 Sep 2018 09:35:30 GMT): davidkel (Fri, 21 Sep 2018 09:37:22 GMT): VadimInshakov (Fri, 21 Sep 2018 09:38:41 GMT): VadimInshakov (Fri, 21 Sep 2018 09:39:27 GMT): varunagarwal (Fri, 21 Sep 2018 09:39:52 GMT): rahul703 (Fri, 21 Sep 2018 09:40:20 GMT): VadimInshakov (Fri, 21 Sep 2018 09:41:09 GMT): varunagarwal (Fri, 21 Sep 2018 09:42:41 GMT): varunagarwal (Fri, 21 Sep 2018 09:43:59 GMT): varunagarwal (Fri, 21 Sep 2018 09:45:17 GMT): varunagarwal (Fri, 21 Sep 2018 09:45:42 GMT): varunagarwal (Fri, 21 Sep 2018 09:46:59 GMT): varunagarwal (Fri, 21 Sep 2018 09:47:19 GMT): VadimInshakov (Fri, 21 Sep 2018 09:47:24 GMT): varunagarwal (Fri, 21 Sep 2018 09:47:43 GMT): VadimInshakov (Fri, 21 Sep 2018 09:49:54 GMT): varunagarwal (Fri, 21 Sep 2018 09:50:33 GMT): Tiruyasha (Fri, 21 Sep 2018 09:51:22 GMT): VadimInshakov (Fri, 21 Sep 2018 09:52:48 GMT): VadimInshakov (Fri, 21 Sep 2018 09:53:24 GMT): varunagarwal (Fri, 21 Sep 2018 09:53:53 GMT): varunagarwal (Fri, 21 Sep 2018 09:54:05 GMT): VadimInshakov (Fri, 21 Sep 2018 09:54:26 GMT): VadimInshakov (Fri, 21 Sep 2018 09:54:35 GMT): varunagarwal (Fri, 21 Sep 2018 09:54:44 GMT): varunagarwal (Fri, 21 Sep 2018 09:55:01 GMT): VadimInshakov (Fri, 21 Sep 2018 09:55:04 GMT): varunagarwal (Fri, 21 Sep 2018 09:55:10 GMT): varunagarwal (Fri, 21 Sep 2018 09:57:00 GMT): VadimInshakov (Fri, 21 Sep 2018 09:57:53 GMT): KindleBitSoln (Fri, 21 Sep 2018 10:23:21 GMT): KindleBitSoln (Fri, 21 Sep 2018 10:24:15 GMT): KindleBitSoln (Fri, 21 Sep 2018 10:24:15 GMT): KindleBitSoln (Fri, 21 Sep 2018 10:26:20 GMT): davidkel (Fri, 21 Sep 2018 10:26:25 GMT): KindleBitSoln (Fri, 21 Sep 2018 10:27:35 GMT): KindleBitSoln (Fri, 21 Sep 2018 10:27:58 GMT): KindleBitSoln (Fri, 21 Sep 2018 10:28:32 GMT): KindleBitSoln (Fri, 21 Sep 2018 10:28:32 GMT): varunagarwal (Fri, 21 Sep 2018 10:29:44 GMT): KindleBitSoln (Fri, 21 Sep 2018 10:32:34 GMT): KindleBitSoln (Fri, 21 Sep 2018 10:34:31 GMT): davidkel (Fri, 21 Sep 2018 10:35:06 GMT): KindleBitSoln (Fri, 21 Sep 2018 10:36:02 GMT): MuhammedHafil (Fri, 21 Sep 2018 10:41:54 GMT): MuhammedHafil (Fri, 21 Sep 2018 10:41:54 GMT): MuhammedHafil (Fri, 21 Sep 2018 10:42:16 GMT): MuhammedHafil (Fri, 21 Sep 2018 10:42:23 GMT): varunagarwal (Fri, 21 Sep 2018 10:44:33 GMT): varunagarwal (Fri, 21 Sep 2018 10:44:47 GMT): MuhammedHafil (Fri, 21 Sep 2018 10:45:35 GMT): MuhammedHafil (Fri, 21 Sep 2018 10:47:43 GMT): garaujo (Fri, 21 Sep 2018 10:48:03 GMT): davidkel (Fri, 21 Sep 2018 10:51:04 GMT): MuhammedHafil (Fri, 21 Sep 2018 11:00:05 GMT): MuhammedHafil (Fri, 21 Sep 2018 11:00:05 GMT): varunagarwal (Fri, 21 Sep 2018 11:02:20 GMT): MuhammedHafil (Fri, 21 Sep 2018 11:07:10 GMT): varunagarwal (Fri, 21 Sep 2018 11:08:25 GMT): varunagarwal (Fri, 21 Sep 2018 11:08:26 GMT): KindleBitSoln (Fri, 21 Sep 2018 11:25:52 GMT): KindleBitSoln (Fri, 21 Sep 2018 11:26:47 GMT): KindleBitSoln (Fri, 21 Sep 2018 11:26:50 GMT): dave.enyeart (Fri, 21 Sep 2018 11:29:09 GMT): garaujo (Fri, 21 Sep 2018 12:22:56 GMT): davidkel (Fri, 21 Sep 2018 12:24:27 GMT): garaujo (Fri, 21 Sep 2018 12:42:53 GMT): garaujo (Fri, 21 Sep 2018 12:43:10 GMT): rthatcher (Fri, 21 Sep 2018 12:47:35 GMT): MuhammedHafil (Fri, 21 Sep 2018 12:59:25 GMT): MuhammedHafil (Fri, 21 Sep 2018 12:59:37 GMT): MuhammedHafil (Fri, 21 Sep 2018 12:59:38 GMT): giacomo.minighin (Fri, 21 Sep 2018 13:13:23 GMT): MuhammedHafil (Fri, 21 Sep 2018 13:19:25 GMT): giacomo.minighin (Fri, 21 Sep 2018 13:35:56 GMT): giacomo.minighin (Fri, 21 Sep 2018 13:37:21 GMT): sstone1 (Fri, 21 Sep 2018 14:11:50 GMT): BernardoAlves (Fri, 21 Sep 2018 14:11:52 GMT): BernardoAlves (Fri, 21 Sep 2018 14:29:30 GMT): mahoney1 (Fri, 21 Sep 2018 14:51:36 GMT): BernardoAlves (Fri, 21 Sep 2018 14:56:51 GMT): BernardoAlves (Fri, 21 Sep 2018 14:57:32 GMT): Levilk (Fri, 21 Sep 2018 15:14:36 GMT): Levilk (Fri, 21 Sep 2018 15:14:36 GMT): Levilk (Fri, 21 Sep 2018 15:14:36 GMT): Levilk (Fri, 21 Sep 2018 15:14:36 GMT): rthatcher (Fri, 21 Sep 2018 15:31:40 GMT): giacomo.minighin (Fri, 21 Sep 2018 15:49:37 GMT): rthatcher (Fri, 21 Sep 2018 15:50:49 GMT): giacomo.minighin (Fri, 21 Sep 2018 15:53:17 GMT): juan.gzz.salz (Fri, 21 Sep 2018 15:57:50 GMT): rthatcher (Fri, 21 Sep 2018 16:00:07 GMT): rthatcher (Fri, 21 Sep 2018 16:05:53 GMT): juan.gzz.salz (Fri, 21 Sep 2018 16:11:37 GMT): juan.gzz.salz (Fri, 21 Sep 2018 16:11:37 GMT): vivekkrishna180727 (Fri, 21 Sep 2018 17:27:43 GMT): vivekkrishna180727 (Fri, 21 Sep 2018 17:30:17 GMT): giacomo.minighin (Fri, 21 Sep 2018 17:58:14 GMT): anant706 (Fri, 21 Sep 2018 21:54:59 GMT): anant706 (Fri, 21 Sep 2018 21:55:53 GMT): kztg_s (Sat, 22 Sep 2018 08:20:53 GMT): mrudav.shukla (Sat, 22 Sep 2018 09:35:57 GMT): abityildiz (Sat, 22 Sep 2018 17:37:15 GMT): manishgupta33366 (Sat, 22 Sep 2018 19:45:44 GMT): manishgupta33366 (Sat, 22 Sep 2018 19:45:44 GMT): manishgupta33366 (Sat, 22 Sep 2018 20:30:51 GMT): dparadiz (Sat, 22 Sep 2018 21:04:45 GMT): dparadiz (Sat, 22 Sep 2018 21:05:32 GMT): kztg_s (Sat, 22 Sep 2018 23:47:50 GMT): davidkel (Sun, 23 Sep 2018 08:19:01 GMT): davidkel (Sun, 23 Sep 2018 08:19:01 GMT): kztg_s (Sun, 23 Sep 2018 09:08:31 GMT): tkg (Sun, 23 Sep 2018 15:26:02 GMT): anant706 (Sun, 23 Sep 2018 17:09:14 GMT): davidkel (Sun, 23 Sep 2018 18:35:41 GMT): davidkel (Sun, 23 Sep 2018 18:35:41 GMT): anant706 (Sun, 23 Sep 2018 20:38:03 GMT): anant706 (Sun, 23 Sep 2018 20:39:21 GMT): davidkel (Sun, 23 Sep 2018 21:58:01 GMT): tahaf10 (Mon, 24 Sep 2018 05:35:38 GMT): MuhammedHafil (Mon, 24 Sep 2018 05:56:45 GMT): tahaf10 (Mon, 24 Sep 2018 06:02:55 GMT): MuhammedHafil (Mon, 24 Sep 2018 06:06:31 GMT): tahaf10 (Mon, 24 Sep 2018 06:34:08 GMT): tahaf10 (Mon, 24 Sep 2018 07:16:44 GMT): garaujo (Mon, 24 Sep 2018 07:37:20 GMT): MuhammedHafil (Mon, 24 Sep 2018 07:47:49 GMT): MuhammedHafil (Mon, 24 Sep 2018 07:47:49 GMT): garaujo (Mon, 24 Sep 2018 07:53:23 GMT): garaujo (Mon, 24 Sep 2018 08:23:04 GMT): rahul703 (Mon, 24 Sep 2018 08:36:30 GMT): abityildiz (Mon, 24 Sep 2018 08:40:09 GMT): abityildiz (Mon, 24 Sep 2018 08:40:09 GMT): abityildiz (Mon, 24 Sep 2018 08:40:09 GMT): abityildiz (Mon, 24 Sep 2018 08:40:09 GMT): abityildiz (Mon, 24 Sep 2018 08:42:38 GMT): abityildiz (Mon, 24 Sep 2018 08:42:38 GMT): mahoney1 (Mon, 24 Sep 2018 09:18:35 GMT): garaujo (Mon, 24 Sep 2018 09:29:46 GMT): tahaf10 (Mon, 24 Sep 2018 09:53:21 GMT): giacomo.minighin (Mon, 24 Sep 2018 10:22:05 GMT): giacomo.minighin (Mon, 24 Sep 2018 10:28:35 GMT): Senapi (Mon, 24 Sep 2018 14:41:08 GMT): Senapi (Mon, 24 Sep 2018 14:41:48 GMT): VadimInshakov (Mon, 24 Sep 2018 15:14:35 GMT): davidkel (Mon, 24 Sep 2018 15:35:48 GMT): giacomo.minighin (Mon, 24 Sep 2018 15:45:02 GMT): Manasse228 (Mon, 24 Sep 2018 16:31:53 GMT): Manasse228 (Mon, 24 Sep 2018 16:32:03 GMT): Manasse228 (Mon, 24 Sep 2018 16:33:58 GMT): Manasse228 (Mon, 24 Sep 2018 16:34:02 GMT): Manasse228 (Mon, 24 Sep 2018 16:34:47 GMT): Manasse228 (Mon, 24 Sep 2018 16:35:01 GMT): Manasse228 (Mon, 24 Sep 2018 16:35:09 GMT): Manasse228 (Mon, 24 Sep 2018 16:35:52 GMT): Manasse228 (Mon, 24 Sep 2018 16:36:14 GMT): Manasse228 (Mon, 24 Sep 2018 16:36:25 GMT): Manasse228 (Mon, 24 Sep 2018 16:36:36 GMT): rthatcher (Mon, 24 Sep 2018 16:46:17 GMT): dejancancarevic (Mon, 24 Sep 2018 17:26:23 GMT): dejancancarevic (Mon, 24 Sep 2018 17:29:19 GMT): PrakharShukla (Mon, 24 Sep 2018 19:15:40 GMT): reggiefelias (Tue, 25 Sep 2018 03:42:44 GMT): MuhammedHafil (Tue, 25 Sep 2018 05:19:50 GMT): tahaf10 (Tue, 25 Sep 2018 06:16:17 GMT): tahaf10 (Tue, 25 Sep 2018 06:46:12 GMT): davidkel (Tue, 25 Sep 2018 07:21:55 GMT): krabradosty (Tue, 25 Sep 2018 07:59:55 GMT): rthatcher (Tue, 25 Sep 2018 08:32:36 GMT): deenario (Tue, 25 Sep 2018 08:42:38 GMT): davidkel (Tue, 25 Sep 2018 08:52:27 GMT): Manasse228 (Tue, 25 Sep 2018 08:52:59 GMT): deenario (Tue, 25 Sep 2018 08:59:35 GMT): davidkel (Tue, 25 Sep 2018 09:08:56 GMT): davidkel (Tue, 25 Sep 2018 09:08:56 GMT): davidkel (Tue, 25 Sep 2018 09:08:56 GMT): davidkel (Tue, 25 Sep 2018 09:08:56 GMT): deenario (Tue, 25 Sep 2018 09:09:50 GMT): mahoney1 (Tue, 25 Sep 2018 09:11:57 GMT): giacomo.minighin (Tue, 25 Sep 2018 09:18:45 GMT): giacomo.minighin (Tue, 25 Sep 2018 09:22:12 GMT): giacomo.minighin (Tue, 25 Sep 2018 09:22:12 GMT): giacomo.minighin (Tue, 25 Sep 2018 09:22:12 GMT): VadimInshakov (Tue, 25 Sep 2018 11:09:37 GMT): Manasse228 (Tue, 25 Sep 2018 11:11:35 GMT): mahoney1 (Tue, 25 Sep 2018 11:45:40 GMT): VadimInshakov (Tue, 25 Sep 2018 12:00:51 GMT): mahoney1 (Tue, 25 Sep 2018 12:14:07 GMT): abityildiz (Tue, 25 Sep 2018 12:15:20 GMT): Mozer18 (Tue, 25 Sep 2018 12:17:16 GMT): Mozer18 (Tue, 25 Sep 2018 12:18:46 GMT): KindleBitSoln (Tue, 25 Sep 2018 12:21:59 GMT): KindleBitSoln (Tue, 25 Sep 2018 12:22:18 GMT): KindleBitSoln (Tue, 25 Sep 2018 12:22:18 GMT): KindleBitSoln (Tue, 25 Sep 2018 12:23:00 GMT): VadimInshakov (Tue, 25 Sep 2018 12:23:47 GMT): rthatcher (Tue, 25 Sep 2018 12:26:53 GMT): Mozer18 (Tue, 25 Sep 2018 12:28:58 GMT): abityildiz (Tue, 25 Sep 2018 12:29:02 GMT): KindleBitSoln (Tue, 25 Sep 2018 12:30:36 GMT): KindleBitSoln (Tue, 25 Sep 2018 12:31:05 GMT): abityildiz (Tue, 25 Sep 2018 13:00:16 GMT): abityildiz (Tue, 25 Sep 2018 13:00:16 GMT): rthatcher (Tue, 25 Sep 2018 13:32:09 GMT): abityildiz (Tue, 25 Sep 2018 13:34:08 GMT): ThomasBereczky (Tue, 25 Sep 2018 17:22:51 GMT): ThomasBereczky (Tue, 25 Sep 2018 17:23:00 GMT): ThomasBereczky (Tue, 25 Sep 2018 17:23:05 GMT): ThomasBereczky (Tue, 25 Sep 2018 17:23:09 GMT): davidkel (Tue, 25 Sep 2018 17:41:02 GMT): ThomasBereczky (Tue, 25 Sep 2018 18:04:22 GMT): ThomasBereczky (Tue, 25 Sep 2018 18:04:26 GMT): ThomasBereczky (Tue, 25 Sep 2018 18:04:28 GMT): ThomasBereczky (Tue, 25 Sep 2018 18:04:35 GMT): davidkel (Tue, 25 Sep 2018 18:09:44 GMT): ThomasBereczky (Tue, 25 Sep 2018 18:13:16 GMT): VadimInshakov (Tue, 25 Sep 2018 19:06:22 GMT): Hyperledger_Recruiting (Tue, 25 Sep 2018 19:36:36 GMT): Hyperledger_Recruiting (Tue, 25 Sep 2018 19:37:15 GMT): jcwarfield (Tue, 25 Sep 2018 20:47:43 GMT): davidkel (Tue, 25 Sep 2018 21:15:08 GMT): touchingsoil (Wed, 26 Sep 2018 02:59:12 GMT): abityildiz (Wed, 26 Sep 2018 06:05:06 GMT): touchingsoil (Wed, 26 Sep 2018 06:08:47 GMT): touchingsoil (Wed, 26 Sep 2018 06:08:47 GMT): tahaf10 (Wed, 26 Sep 2018 06:33:37 GMT): davidhu (Wed, 26 Sep 2018 06:42:47 GMT): ZL.HYPERLEDGER (Wed, 26 Sep 2018 06:51:07 GMT): ZL.HYPERLEDGER (Wed, 26 Sep 2018 06:51:13 GMT): bh4rtp (Wed, 26 Sep 2018 07:13:58 GMT): rthatcher (Wed, 26 Sep 2018 08:16:39 GMT): rthatcher (Wed, 26 Sep 2018 08:24:48 GMT): rthatcher (Wed, 26 Sep 2018 08:33:02 GMT): mahoney1 (Wed, 26 Sep 2018 08:36:55 GMT): rthatcher (Wed, 26 Sep 2018 08:41:55 GMT): rthatcher (Wed, 26 Sep 2018 08:49:40 GMT): rthatcher (Wed, 26 Sep 2018 08:49:40 GMT): touchingsoil (Wed, 26 Sep 2018 08:52:56 GMT): touchingsoil (Wed, 26 Sep 2018 08:52:56 GMT): amritsharma (Wed, 26 Sep 2018 09:15:52 GMT): amritsharma (Wed, 26 Sep 2018 09:19:01 GMT): rthatcher (Wed, 26 Sep 2018 09:31:14 GMT): mahoney1 (Wed, 26 Sep 2018 09:34:00 GMT): amritsharma (Wed, 26 Sep 2018 09:34:56 GMT): touchingsoil (Wed, 26 Sep 2018 09:49:34 GMT): davidkel (Wed, 26 Sep 2018 09:50:53 GMT): davidhu (Wed, 26 Sep 2018 09:56:54 GMT): amritsharma (Wed, 26 Sep 2018 10:07:04 GMT): davidkel (Wed, 26 Sep 2018 10:12:25 GMT): rthatcher (Wed, 26 Sep 2018 10:37:30 GMT): rthatcher (Wed, 26 Sep 2018 10:37:30 GMT): rthatcher (Wed, 26 Sep 2018 10:37:30 GMT): touchingsoil (Wed, 26 Sep 2018 10:38:47 GMT): rthatcher (Wed, 26 Sep 2018 11:02:01 GMT): touchingsoil (Wed, 26 Sep 2018 11:08:57 GMT): touchingsoil (Wed, 26 Sep 2018 11:08:57 GMT): touchingsoil (Wed, 26 Sep 2018 11:08:57 GMT): AndreiLovin (Wed, 26 Sep 2018 11:34:17 GMT): MuhammedHafil (Wed, 26 Sep 2018 11:40:09 GMT): AndreiLovin (Wed, 26 Sep 2018 11:50:39 GMT): mahoney1 (Wed, 26 Sep 2018 11:54:17 GMT): mahoney1 (Wed, 26 Sep 2018 11:56:55 GMT): mahoney1 (Wed, 26 Sep 2018 11:58:20 GMT): mahoney1 (Wed, 26 Sep 2018 11:58:20 GMT): mahoney1 (Wed, 26 Sep 2018 11:58:20 GMT): AndreiLovin (Wed, 26 Sep 2018 12:02:11 GMT): touchingsoil (Wed, 26 Sep 2018 12:16:11 GMT): mahoney1 (Wed, 26 Sep 2018 12:25:55 GMT): mahoney1 (Wed, 26 Sep 2018 12:25:55 GMT): mahoney1 (Wed, 26 Sep 2018 12:25:55 GMT): abityildiz (Wed, 26 Sep 2018 12:34:12 GMT): fmjbs (Wed, 26 Sep 2018 12:54:03 GMT): AndreiLovin (Wed, 26 Sep 2018 12:55:51 GMT): jcwarfield (Wed, 26 Sep 2018 13:31:55 GMT): giacomo.minighin (Wed, 26 Sep 2018 13:41:56 GMT): Renick (Wed, 26 Sep 2018 13:43:52 GMT): Renick (Wed, 26 Sep 2018 13:47:21 GMT): argman (Wed, 26 Sep 2018 13:47:28 GMT): Renick (Wed, 26 Sep 2018 13:47:41 GMT): argman (Wed, 26 Sep 2018 13:51:55 GMT): Renick (Wed, 26 Sep 2018 13:57:21 GMT): Renick (Wed, 26 Sep 2018 13:57:33 GMT): Renick (Wed, 26 Sep 2018 13:57:47 GMT): Renick (Wed, 26 Sep 2018 13:58:05 GMT): rthatcher (Wed, 26 Sep 2018 14:05:07 GMT): rthatcher (Wed, 26 Sep 2018 14:11:24 GMT): rthatcher (Wed, 26 Sep 2018 14:25:33 GMT): AndreiLovin (Wed, 26 Sep 2018 14:28:58 GMT): giacomo.minighin (Wed, 26 Sep 2018 14:31:52 GMT): giacomo.minighin (Wed, 26 Sep 2018 14:32:45 GMT): mahoney1 (Wed, 26 Sep 2018 14:58:47 GMT): akshay.sood (Wed, 26 Sep 2018 16:03:12 GMT): rthatcher (Wed, 26 Sep 2018 16:22:30 GMT): rthatcher (Wed, 26 Sep 2018 16:30:23 GMT): CKozanecki (Wed, 26 Sep 2018 17:02:01 GMT): zkovalenko (Wed, 26 Sep 2018 17:18:58 GMT): juan.gzz.salz (Wed, 26 Sep 2018 20:45:54 GMT): Renick (Wed, 26 Sep 2018 20:51:50 GMT): bandreghetti (Wed, 26 Sep 2018 22:35:09 GMT): Southside (Thu, 27 Sep 2018 04:02:54 GMT): AndreiLovin (Thu, 27 Sep 2018 05:43:00 GMT): VarunVerma (Thu, 27 Sep 2018 06:20:30 GMT): VarunVerma (Thu, 27 Sep 2018 06:21:01 GMT): jituji (Thu, 27 Sep 2018 06:41:10 GMT): jituji (Thu, 27 Sep 2018 06:42:45 GMT): jituji (Thu, 27 Sep 2018 06:43:41 GMT): jituji (Thu, 27 Sep 2018 06:45:47 GMT): jituji (Thu, 27 Sep 2018 06:46:06 GMT): ManishKhobragade (Thu, 27 Sep 2018 07:14:34 GMT): jituji (Thu, 27 Sep 2018 07:24:15 GMT): jituji (Thu, 27 Sep 2018 07:25:10 GMT): ZL.HYPERLEDGER (Thu, 27 Sep 2018 08:08:23 GMT): rthatcher (Thu, 27 Sep 2018 08:26:05 GMT): rthatcher (Thu, 27 Sep 2018 08:35:48 GMT): rthatcher (Thu, 27 Sep 2018 08:55:53 GMT): rahul703 (Thu, 27 Sep 2018 10:44:56 GMT): rahul703 (Thu, 27 Sep 2018 10:44:56 GMT): AndreiLovin (Thu, 27 Sep 2018 11:11:33 GMT): mahoney1 (Thu, 27 Sep 2018 11:26:00 GMT): mahoney1 (Thu, 27 Sep 2018 11:26:00 GMT): AndreiLovin (Thu, 27 Sep 2018 12:28:53 GMT): erNail (Thu, 27 Sep 2018 12:31:12 GMT): davidkel (Thu, 27 Sep 2018 12:33:46 GMT): erNail (Thu, 27 Sep 2018 12:35:49 GMT): erNail (Thu, 27 Sep 2018 12:35:56 GMT): davidkel (Thu, 27 Sep 2018 12:36:37 GMT): erNail (Thu, 27 Sep 2018 12:37:50 GMT): erNail (Thu, 27 Sep 2018 12:41:25 GMT): giacomo.minighin (Thu, 27 Sep 2018 13:26:31 GMT): HoumamHatahet (Thu, 27 Sep 2018 14:19:07 GMT): HoumamHatahet (Thu, 27 Sep 2018 14:21:33 GMT): VadimInshakov (Thu, 27 Sep 2018 14:27:33 GMT): VadimInshakov (Thu, 27 Sep 2018 14:27:33 GMT): VadimInshakov (Thu, 27 Sep 2018 14:27:33 GMT): VadimInshakov (Thu, 27 Sep 2018 14:27:33 GMT): VadimInshakov (Thu, 27 Sep 2018 14:27:33 GMT): VadimInshakov (Thu, 27 Sep 2018 15:32:06 GMT): mahoney1 (Thu, 27 Sep 2018 15:51:08 GMT): mahoney1 (Thu, 27 Sep 2018 15:56:27 GMT): rthatcher (Thu, 27 Sep 2018 16:03:00 GMT): VadimInshakov (Thu, 27 Sep 2018 16:59:52 GMT): JuanSuero (Thu, 27 Sep 2018 17:44:18 GMT): JuanSuero (Thu, 27 Sep 2018 17:47:25 GMT): mahoney1 (Thu, 27 Sep 2018 17:57:59 GMT): davidkel (Thu, 27 Sep 2018 17:58:14 GMT): ColeBoudreau (Thu, 27 Sep 2018 19:40:40 GMT): ColeBoudreau (Thu, 27 Sep 2018 20:01:59 GMT): ColeBoudreau (Thu, 27 Sep 2018 20:09:56 GMT): juan.gzz.salz (Thu, 27 Sep 2018 20:53:08 GMT): touchingsoil (Fri, 28 Sep 2018 02:08:28 GMT): touchingsoil (Fri, 28 Sep 2018 02:08:28 GMT): manishgupta33366 (Fri, 28 Sep 2018 05:07:52 GMT): HoumamHatahet (Fri, 28 Sep 2018 06:15:38 GMT): DheerajBalodia (Fri, 28 Sep 2018 06:32:18 GMT): AndreiLovin (Fri, 28 Sep 2018 06:49:51 GMT): rthatcher (Fri, 28 Sep 2018 08:18:35 GMT): rthatcher (Fri, 28 Sep 2018 08:26:09 GMT): AndreiLovin (Fri, 28 Sep 2018 08:27:35 GMT): rthatcher (Fri, 28 Sep 2018 08:27:59 GMT): gauravgiri (Fri, 28 Sep 2018 09:56:25 GMT): davidkel (Fri, 28 Sep 2018 10:07:25 GMT): davidkel (Fri, 28 Sep 2018 10:07:25 GMT): gauravgiri (Fri, 28 Sep 2018 10:11:20 GMT): davidkel (Fri, 28 Sep 2018 10:18:50 GMT): gauravgiri (Fri, 28 Sep 2018 10:19:58 GMT): davidkel (Fri, 28 Sep 2018 10:21:27 GMT): davidkel (Fri, 28 Sep 2018 10:22:58 GMT): gauravgiri (Fri, 28 Sep 2018 10:25:28 GMT): davidkel (Fri, 28 Sep 2018 10:27:43 GMT): gauravgiri (Fri, 28 Sep 2018 10:27:57 GMT): gauravgiri (Fri, 28 Sep 2018 10:28:09 GMT): gauravgiri (Fri, 28 Sep 2018 10:28:20 GMT): davidkel (Fri, 28 Sep 2018 10:31:13 GMT): davidkel (Fri, 28 Sep 2018 10:31:13 GMT): davidkel (Fri, 28 Sep 2018 10:31:13 GMT): davidkel (Fri, 28 Sep 2018 10:31:13 GMT): parsa (Fri, 28 Sep 2018 11:18:51 GMT): parsa (Fri, 28 Sep 2018 11:18:51 GMT): gauravgiri (Fri, 28 Sep 2018 11:34:42 GMT): rthatcher (Fri, 28 Sep 2018 12:14:55 GMT): ZC_Cuebiq (Fri, 28 Sep 2018 12:36:34 GMT): ColeBoudreau (Fri, 28 Sep 2018 12:51:48 GMT): davidkel (Fri, 28 Sep 2018 13:00:04 GMT): rthatcher (Fri, 28 Sep 2018 13:02:16 GMT): davidkel (Fri, 28 Sep 2018 13:03:05 GMT): ColeBoudreau (Fri, 28 Sep 2018 13:06:14 GMT): ColeBoudreau (Fri, 28 Sep 2018 13:08:46 GMT): rthatcher (Fri, 28 Sep 2018 13:30:10 GMT): ColeBoudreau (Fri, 28 Sep 2018 13:39:16 GMT): rthatcher (Fri, 28 Sep 2018 13:41:54 GMT): ColeBoudreau (Fri, 28 Sep 2018 13:46:00 GMT): peywand (Fri, 28 Sep 2018 13:59:34 GMT): rthatcher (Fri, 28 Sep 2018 16:31:02 GMT): rthatcher (Fri, 28 Sep 2018 16:31:02 GMT): ColeBoudreau (Fri, 28 Sep 2018 16:39:18 GMT): anant706 (Fri, 28 Sep 2018 16:41:40 GMT): davidkel (Fri, 28 Sep 2018 16:45:30 GMT): BlackMesa (Fri, 28 Sep 2018 17:21:13 GMT): coveloper (Fri, 28 Sep 2018 17:58:18 GMT): coveloper (Fri, 28 Sep 2018 18:22:24 GMT): coveloper (Fri, 28 Sep 2018 18:23:08 GMT): rthatcher (Fri, 28 Sep 2018 18:41:54 GMT): coveloper (Fri, 28 Sep 2018 18:44:45 GMT): danny_lee (Fri, 28 Sep 2018 19:29:37 GMT): coveloper (Fri, 28 Sep 2018 19:32:12 GMT): danny_lee (Fri, 28 Sep 2018 19:33:04 GMT): coveloper (Fri, 28 Sep 2018 19:34:43 GMT): danny_lee (Fri, 28 Sep 2018 19:35:59 GMT): coveloper (Fri, 28 Sep 2018 19:38:15 GMT): danny_lee (Fri, 28 Sep 2018 19:39:32 GMT): transdigiware (Fri, 28 Sep 2018 20:35:52 GMT): transdigiware (Fri, 28 Sep 2018 20:36:49 GMT): OlgaLarsen (Fri, 28 Sep 2018 21:22:41 GMT): OlgaLarsen (Fri, 28 Sep 2018 21:25:53 GMT): davidkel (Fri, 28 Sep 2018 21:44:53 GMT): OlgaLarsen (Fri, 28 Sep 2018 22:22:44 GMT): umbala (Sat, 29 Sep 2018 00:10:25 GMT): umbala (Sat, 29 Sep 2018 00:10:51 GMT): umbala (Sat, 29 Sep 2018 00:12:46 GMT): umbala (Sat, 29 Sep 2018 00:14:08 GMT): umbala (Sat, 29 Sep 2018 00:15:46 GMT): umbala (Sat, 29 Sep 2018 00:17:29 GMT): umbala (Sat, 29 Sep 2018 00:18:04 GMT): umbala (Sat, 29 Sep 2018 00:22:09 GMT): umbala (Sat, 29 Sep 2018 00:22:29 GMT): umbala (Sat, 29 Sep 2018 00:23:03 GMT): umbala (Sat, 29 Sep 2018 00:24:39 GMT): umbala (Sat, 29 Sep 2018 00:25:34 GMT): umbala (Sat, 29 Sep 2018 00:25:55 GMT): umbala (Sat, 29 Sep 2018 00:27:36 GMT): umbala (Sat, 29 Sep 2018 00:27:51 GMT): umbala (Sat, 29 Sep 2018 00:29:59 GMT): umbala (Sat, 29 Sep 2018 00:32:00 GMT): umbala (Sat, 29 Sep 2018 00:34:41 GMT): Korvictech (Sat, 29 Sep 2018 03:33:36 GMT): Korvictech (Sat, 29 Sep 2018 03:35:04 GMT): sivak2018 (Sat, 29 Sep 2018 04:23:11 GMT): forrunner (Sat, 29 Sep 2018 04:34:42 GMT): vishal21pandita (Sat, 29 Sep 2018 07:05:40 GMT): touchingsoil (Sat, 29 Sep 2018 08:18:47 GMT): yashk011 (Sat, 29 Sep 2018 12:05:54 GMT): yashk011 (Sat, 29 Sep 2018 12:06:13 GMT): jonlee300 (Sat, 29 Sep 2018 12:08:18 GMT): ep-danj (Sat, 29 Sep 2018 22:42:16 GMT): manishgupta33366 (Sun, 30 Sep 2018 07:01:12 GMT): davidkel (Sun, 30 Sep 2018 07:04:46 GMT): manishgupta33366 (Sun, 30 Sep 2018 07:09:59 GMT): manishgupta33366 (Sun, 30 Sep 2018 07:09:59 GMT): davidkel (Sun, 30 Sep 2018 07:13:22 GMT): davidkel (Sun, 30 Sep 2018 07:13:22 GMT): ronaldlong46 (Sun, 30 Sep 2018 07:17:50 GMT): ronaldlong46 (Sun, 30 Sep 2018 07:18:25 GMT): ronaldlong46 (Sun, 30 Sep 2018 07:18:34 GMT): manishgupta33366 (Sun, 30 Sep 2018 07:18:36 GMT): ronaldlong46 (Sun, 30 Sep 2018 07:20:21 GMT): ronaldlong46 (Sun, 30 Sep 2018 07:26:52 GMT): ronaldlong46 (Sun, 30 Sep 2018 07:41:03 GMT): davidkel (Sun, 30 Sep 2018 07:43:15 GMT): guhy1011 (Sun, 30 Sep 2018 07:46:00 GMT): ronaldlong46 (Sun, 30 Sep 2018 07:52:14 GMT): berserkr (Sun, 30 Sep 2018 08:23:51 GMT): archit90 (Sun, 30 Sep 2018 16:38:21 GMT): archit90 (Sun, 30 Sep 2018 16:40:56 GMT): archit90 (Sun, 30 Sep 2018 16:40:56 GMT): raviyelleni (Mon, 01 Oct 2018 02:37:05 GMT): ronaldlong46 (Mon, 01 Oct 2018 03:22:09 GMT): KindleBitSoln (Mon, 01 Oct 2018 05:08:35 GMT): AndreiLovin (Mon, 01 Oct 2018 06:32:26 GMT): KindleBitSoln (Mon, 01 Oct 2018 06:33:45 GMT): KindleBitSoln (Mon, 01 Oct 2018 06:34:01 GMT): KindleBitSoln (Mon, 01 Oct 2018 06:34:22 GMT): AndreiLovin (Mon, 01 Oct 2018 06:34:47 GMT): KindleBitSoln (Mon, 01 Oct 2018 06:35:46 GMT): AndreiLovin (Mon, 01 Oct 2018 06:37:11 GMT): umbala (Mon, 01 Oct 2018 07:54:20 GMT): rthatcher (Mon, 01 Oct 2018 08:35:44 GMT): rthatcher (Mon, 01 Oct 2018 08:35:44 GMT): rthatcher (Mon, 01 Oct 2018 08:42:52 GMT): rthatcher (Mon, 01 Oct 2018 08:54:50 GMT): rthatcher (Mon, 01 Oct 2018 08:58:24 GMT): rthatcher (Mon, 01 Oct 2018 09:02:47 GMT): umbala (Mon, 01 Oct 2018 09:12:18 GMT): mrjdomingus (Mon, 01 Oct 2018 09:28:50 GMT): rthatcher (Mon, 01 Oct 2018 10:04:17 GMT): maniyas (Mon, 01 Oct 2018 10:06:30 GMT): maniyas (Mon, 01 Oct 2018 10:06:49 GMT): davidkel (Mon, 01 Oct 2018 10:39:28 GMT): umbala (Mon, 01 Oct 2018 10:43:28 GMT): umbala (Mon, 01 Oct 2018 10:44:22 GMT): umbala (Mon, 01 Oct 2018 10:45:32 GMT): umbala (Mon, 01 Oct 2018 10:46:37 GMT): verasnt (Mon, 01 Oct 2018 12:09:00 GMT): mrjdomingus (Mon, 01 Oct 2018 12:17:41 GMT): AndreiLovin (Mon, 01 Oct 2018 12:54:07 GMT): AndreiLovin (Mon, 01 Oct 2018 12:54:59 GMT): jituji (Mon, 01 Oct 2018 13:53:46 GMT): jituji (Mon, 01 Oct 2018 13:54:03 GMT): rthatcher (Mon, 01 Oct 2018 14:24:05 GMT): rthatcher (Mon, 01 Oct 2018 14:35:42 GMT): jituji (Mon, 01 Oct 2018 15:10:26 GMT): rthatcher (Mon, 01 Oct 2018 15:26:33 GMT): jituji (Mon, 01 Oct 2018 15:34:32 GMT): jituji (Mon, 01 Oct 2018 15:43:28 GMT): jituji (Mon, 01 Oct 2018 15:43:56 GMT): rthatcher (Mon, 01 Oct 2018 16:05:37 GMT): jituji (Mon, 01 Oct 2018 16:15:06 GMT): downTheFallLine (Mon, 01 Oct 2018 16:20:29 GMT): downTheFallLine (Mon, 01 Oct 2018 16:25:36 GMT): sureshtedla (Mon, 01 Oct 2018 17:31:47 GMT): sureshtedla (Mon, 01 Oct 2018 17:31:59 GMT): uherr89 (Mon, 01 Oct 2018 19:14:51 GMT): ultimo2020 (Mon, 01 Oct 2018 20:18:59 GMT): ultimo2020 (Mon, 01 Oct 2018 20:19:34 GMT): ultimo2020 (Mon, 01 Oct 2018 20:19:44 GMT): ultimo2020 (Mon, 01 Oct 2018 20:19:55 GMT): ultimo2020 (Mon, 01 Oct 2018 20:20:28 GMT): ultimo2020 (Mon, 01 Oct 2018 20:20:45 GMT): ultimo2020 (Mon, 01 Oct 2018 20:20:56 GMT): ultimo2020 (Mon, 01 Oct 2018 20:21:02 GMT): greg2git (Mon, 01 Oct 2018 20:21:30 GMT): ultimo2020 (Mon, 01 Oct 2018 20:24:00 GMT): ultimo2020 (Mon, 01 Oct 2018 20:24:11 GMT): ultimo2020 (Mon, 01 Oct 2018 20:24:18 GMT): ultimo2020 (Mon, 01 Oct 2018 20:24:36 GMT): ultimo2020 (Mon, 01 Oct 2018 20:24:43 GMT): ultimo2020 (Mon, 01 Oct 2018 20:24:53 GMT): ultimo2020 (Mon, 01 Oct 2018 20:25:02 GMT): greg2git (Mon, 01 Oct 2018 20:25:15 GMT): uherr89 (Mon, 01 Oct 2018 20:25:22 GMT): uherr89 (Mon, 01 Oct 2018 20:25:38 GMT): ultimo2020 (Mon, 01 Oct 2018 20:25:40 GMT): ultimo2020 (Mon, 01 Oct 2018 20:26:21 GMT): ultimo2020 (Mon, 01 Oct 2018 20:26:33 GMT): ultimo2020 (Mon, 01 Oct 2018 20:26:43 GMT): ultimo2020 (Mon, 01 Oct 2018 20:26:46 GMT): ultimo2020 (Mon, 01 Oct 2018 20:27:02 GMT): greg2git (Mon, 01 Oct 2018 20:27:56 GMT): ultimo2020 (Mon, 01 Oct 2018 20:30:36 GMT): ultimo2020 (Mon, 01 Oct 2018 20:30:44 GMT): ultimo2020 (Mon, 01 Oct 2018 20:31:00 GMT): ultimo2020 (Mon, 01 Oct 2018 20:32:21 GMT): ultimo2020 (Mon, 01 Oct 2018 20:32:27 GMT): davidkel (Mon, 01 Oct 2018 20:33:11 GMT): davidkel (Mon, 01 Oct 2018 20:33:11 GMT): davidkel (Mon, 01 Oct 2018 20:33:11 GMT): ultimo2020 (Mon, 01 Oct 2018 20:35:28 GMT): ultimo2020 (Mon, 01 Oct 2018 20:37:07 GMT): ultimo2020 (Mon, 01 Oct 2018 20:37:07 GMT): ultimo2020 (Mon, 01 Oct 2018 20:37:22 GMT): ultimo2020 (Mon, 01 Oct 2018 20:37:33 GMT): ultimo2020 (Mon, 01 Oct 2018 20:37:50 GMT): ultimo2020 (Mon, 01 Oct 2018 20:37:56 GMT): ultimo2020 (Mon, 01 Oct 2018 20:38:08 GMT): ultimo2020 (Mon, 01 Oct 2018 20:38:13 GMT): ultimo2020 (Mon, 01 Oct 2018 20:38:23 GMT): davidkel (Mon, 01 Oct 2018 20:38:39 GMT): ultimo2020 (Mon, 01 Oct 2018 20:39:11 GMT): ultimo2020 (Mon, 01 Oct 2018 20:39:31 GMT): ultimo2020 (Mon, 01 Oct 2018 20:39:44 GMT): davidkel (Mon, 01 Oct 2018 20:41:54 GMT): davidkel (Mon, 01 Oct 2018 20:41:54 GMT): ultimo2020 (Mon, 01 Oct 2018 20:43:02 GMT): ultimo2020 (Mon, 01 Oct 2018 20:43:03 GMT): ultimo2020 (Mon, 01 Oct 2018 20:43:08 GMT): ultimo2020 (Mon, 01 Oct 2018 20:44:08 GMT): davidkel (Mon, 01 Oct 2018 20:44:26 GMT): ultimo2020 (Mon, 01 Oct 2018 20:46:47 GMT): ultimo2020 (Mon, 01 Oct 2018 20:47:03 GMT): ultimo2020 (Mon, 01 Oct 2018 20:47:35 GMT): davidkel (Mon, 01 Oct 2018 20:48:04 GMT): davidkel (Mon, 01 Oct 2018 20:48:38 GMT): greg2git (Mon, 01 Oct 2018 21:25:17 GMT): ultimo2020 (Tue, 02 Oct 2018 05:41:53 GMT): AndreiLovin (Tue, 02 Oct 2018 05:43:16 GMT): AndreiLovin (Tue, 02 Oct 2018 05:43:16 GMT): AndreiLovin (Tue, 02 Oct 2018 05:43:16 GMT): AndreiLovin (Tue, 02 Oct 2018 05:43:16 GMT): ultimo2020 (Tue, 02 Oct 2018 07:00:36 GMT): cinnnn (Tue, 02 Oct 2018 07:00:41 GMT): ultimo2020 (Tue, 02 Oct 2018 07:01:18 GMT): ultimo2020 (Tue, 02 Oct 2018 07:01:37 GMT): ultimo2020 (Tue, 02 Oct 2018 07:01:40 GMT): umbala (Tue, 02 Oct 2018 07:58:50 GMT): davidkel (Tue, 02 Oct 2018 08:11:37 GMT): davidkel (Tue, 02 Oct 2018 08:11:37 GMT): davidkel (Tue, 02 Oct 2018 08:11:37 GMT): rthatcher (Tue, 02 Oct 2018 08:30:54 GMT): davidkel (Tue, 02 Oct 2018 09:38:23 GMT): davidkel (Tue, 02 Oct 2018 09:38:23 GMT): sureshtedla (Tue, 02 Oct 2018 10:00:17 GMT): davidkel (Tue, 02 Oct 2018 10:11:33 GMT): sureshtedla (Tue, 02 Oct 2018 10:26:11 GMT): sureshtedla (Tue, 02 Oct 2018 10:26:20 GMT): sureshtedla (Tue, 02 Oct 2018 10:26:51 GMT): sureshtedla (Tue, 02 Oct 2018 10:26:51 GMT): davidkel (Tue, 02 Oct 2018 11:22:11 GMT): sureshtedla (Tue, 02 Oct 2018 11:23:39 GMT): sureshtedla (Tue, 02 Oct 2018 11:23:58 GMT): davidkel (Tue, 02 Oct 2018 11:36:56 GMT): archit90 (Tue, 02 Oct 2018 11:56:12 GMT): archit90 (Tue, 02 Oct 2018 11:56:12 GMT): davidkel (Tue, 02 Oct 2018 12:03:14 GMT): davidkel (Tue, 02 Oct 2018 12:04:59 GMT): davidkel (Tue, 02 Oct 2018 12:04:59 GMT): archit90 (Tue, 02 Oct 2018 12:05:32 GMT): archit90 (Tue, 02 Oct 2018 12:06:50 GMT): DavorKljajic (Tue, 02 Oct 2018 12:07:09 GMT): davidkel (Tue, 02 Oct 2018 12:07:34 GMT): rrishmawi (Tue, 02 Oct 2018 12:13:18 GMT): archit90 (Tue, 02 Oct 2018 12:13:33 GMT): rrishmawi (Tue, 02 Oct 2018 12:14:09 GMT): rrishmawi (Tue, 02 Oct 2018 12:14:25 GMT): rrishmawi (Tue, 02 Oct 2018 12:15:37 GMT): rrishmawi (Tue, 02 Oct 2018 12:15:49 GMT): archit90 (Tue, 02 Oct 2018 12:16:31 GMT): rthatcher (Tue, 02 Oct 2018 12:28:19 GMT): rthatcher (Tue, 02 Oct 2018 12:28:19 GMT): rrishmawi (Tue, 02 Oct 2018 12:29:39 GMT): rthatcher (Tue, 02 Oct 2018 12:30:53 GMT): rrishmawi (Tue, 02 Oct 2018 12:33:57 GMT): rrishmawi (Tue, 02 Oct 2018 12:34:15 GMT): rthatcher (Tue, 02 Oct 2018 12:39:01 GMT): rrishmawi (Tue, 02 Oct 2018 12:40:27 GMT): OlegLukasonok (Tue, 02 Oct 2018 13:07:38 GMT): OlegLukasonok (Tue, 02 Oct 2018 13:08:15 GMT): AndreiLovin (Tue, 02 Oct 2018 13:25:29 GMT): waleed (Tue, 02 Oct 2018 13:31:48 GMT): rthatcher (Tue, 02 Oct 2018 13:43:58 GMT): rrishmawi (Tue, 02 Oct 2018 13:57:58 GMT): rrishmawi (Tue, 02 Oct 2018 13:58:45 GMT): rthatcher (Tue, 02 Oct 2018 14:14:00 GMT): rrishmawi (Tue, 02 Oct 2018 14:17:54 GMT): micklynch (Tue, 02 Oct 2018 14:18:29 GMT): garaujo (Tue, 02 Oct 2018 14:18:29 GMT): networkboss99 (Tue, 02 Oct 2018 14:50:55 GMT): networkboss99 (Tue, 02 Oct 2018 14:52:27 GMT): akula (Tue, 02 Oct 2018 14:53:33 GMT): waleed (Tue, 02 Oct 2018 14:54:15 GMT): waleed (Tue, 02 Oct 2018 14:54:15 GMT): waleed (Tue, 02 Oct 2018 14:54:15 GMT): networkboss99 (Tue, 02 Oct 2018 15:00:46 GMT): waleed (Tue, 02 Oct 2018 15:01:26 GMT): waleed (Tue, 02 Oct 2018 15:01:26 GMT): waleed (Tue, 02 Oct 2018 15:01:26 GMT): waleed (Tue, 02 Oct 2018 15:01:26 GMT): greg2git (Tue, 02 Oct 2018 15:03:30 GMT): archit90 (Tue, 02 Oct 2018 15:45:11 GMT): archit90 (Tue, 02 Oct 2018 15:45:11 GMT): archit90 (Tue, 02 Oct 2018 15:56:21 GMT): archit90 (Tue, 02 Oct 2018 15:56:21 GMT): rthatcher (Tue, 02 Oct 2018 15:56:26 GMT): archit90 (Tue, 02 Oct 2018 15:57:52 GMT): rthatcher (Tue, 02 Oct 2018 16:00:31 GMT): archit90 (Tue, 02 Oct 2018 16:07:56 GMT): archit90 (Tue, 02 Oct 2018 16:41:22 GMT): archit90 (Tue, 02 Oct 2018 16:41:22 GMT): archit90 (Tue, 02 Oct 2018 16:41:22 GMT): archit90 (Tue, 02 Oct 2018 16:41:22 GMT): archit90 (Tue, 02 Oct 2018 16:43:32 GMT): davidkel (Tue, 02 Oct 2018 17:09:14 GMT): davidkel (Tue, 02 Oct 2018 17:09:14 GMT): davidkel (Tue, 02 Oct 2018 17:10:31 GMT): JoshFodale (Tue, 02 Oct 2018 18:23:21 GMT): JoshFodale (Tue, 02 Oct 2018 18:26:17 GMT): davidkel (Tue, 02 Oct 2018 18:35:41 GMT): micklynch (Tue, 02 Oct 2018 18:35:55 GMT): micklynch (Tue, 02 Oct 2018 18:36:05 GMT): micklynch (Tue, 02 Oct 2018 18:42:30 GMT): davidkel (Tue, 02 Oct 2018 18:50:16 GMT): micklynch (Tue, 02 Oct 2018 19:19:04 GMT): Hefziben (Tue, 02 Oct 2018 22:02:16 GMT): KindleBitSoln (Wed, 03 Oct 2018 05:28:37 GMT): maniyas (Wed, 03 Oct 2018 05:40:07 GMT): gauravgiri (Wed, 03 Oct 2018 06:48:11 GMT): davidkel (Wed, 03 Oct 2018 06:49:18 GMT): gauravgiri (Wed, 03 Oct 2018 06:50:45 GMT): garaujo (Wed, 03 Oct 2018 07:09:50 GMT): OlegLukasonok (Wed, 03 Oct 2018 07:14:47 GMT): waleed (Wed, 03 Oct 2018 07:38:42 GMT): davidkel (Wed, 03 Oct 2018 07:39:58 GMT): davidkel (Wed, 03 Oct 2018 07:42:24 GMT): OlegLukasonok (Wed, 03 Oct 2018 07:43:01 GMT): OlegLukasonok (Wed, 03 Oct 2018 07:43:25 GMT): davidkel (Wed, 03 Oct 2018 07:45:15 GMT): OlegLukasonok (Wed, 03 Oct 2018 07:47:08 GMT): OlegLukasonok (Wed, 03 Oct 2018 07:47:37 GMT): garaujo (Wed, 03 Oct 2018 07:51:51 GMT): davidkel (Wed, 03 Oct 2018 07:52:22 GMT): davidkel (Wed, 03 Oct 2018 07:54:08 GMT): davidkel (Wed, 03 Oct 2018 07:54:08 GMT): OlegLukasonok (Wed, 03 Oct 2018 08:01:29 GMT): garaujo (Wed, 03 Oct 2018 08:04:23 GMT): davidkel (Wed, 03 Oct 2018 08:05:53 GMT): davidkel (Wed, 03 Oct 2018 08:14:14 GMT): OlegLukasonok (Wed, 03 Oct 2018 08:18:55 GMT): davidkel (Wed, 03 Oct 2018 08:23:20 GMT): davidkel (Wed, 03 Oct 2018 08:26:23 GMT): FlorentinoSainz (Wed, 03 Oct 2018 08:30:20 GMT): FlorentinoSainz (Wed, 03 Oct 2018 08:30:59 GMT): FlorentinoSainz (Wed, 03 Oct 2018 08:33:23 GMT): davidkel (Wed, 03 Oct 2018 08:33:25 GMT): FlorentinoSainz (Wed, 03 Oct 2018 08:33:47 GMT): davidkel (Wed, 03 Oct 2018 08:34:08 GMT): FlorentinoSainz (Wed, 03 Oct 2018 08:34:47 GMT): rrishmawi (Wed, 03 Oct 2018 08:35:06 GMT): davidkel (Wed, 03 Oct 2018 08:36:49 GMT): FlorentinoSainz (Wed, 03 Oct 2018 08:37:25 GMT): rrishmawi (Wed, 03 Oct 2018 08:37:56 GMT): rthatcher (Wed, 03 Oct 2018 08:39:40 GMT): davidkel (Wed, 03 Oct 2018 08:43:52 GMT): davidkel (Wed, 03 Oct 2018 08:43:52 GMT): rthatcher (Wed, 03 Oct 2018 08:46:19 GMT): FlorentinoSainz (Wed, 03 Oct 2018 08:47:13 GMT): FlorentinoSainz (Wed, 03 Oct 2018 08:47:25 GMT): FlorentinoSainz (Wed, 03 Oct 2018 08:47:40 GMT): davidkel (Wed, 03 Oct 2018 08:48:06 GMT): davidkel (Wed, 03 Oct 2018 08:48:06 GMT): garaujo (Wed, 03 Oct 2018 08:48:11 GMT): FlorentinoSainz (Wed, 03 Oct 2018 08:49:34 GMT): davidkel (Wed, 03 Oct 2018 08:50:36 GMT): rthatcher (Wed, 03 Oct 2018 08:53:02 GMT): networkboss99 (Wed, 03 Oct 2018 09:10:31 GMT): waleed (Wed, 03 Oct 2018 09:11:43 GMT): garaujo (Wed, 03 Oct 2018 09:27:38 GMT): maniyas (Wed, 03 Oct 2018 09:30:23 GMT): maniyas (Wed, 03 Oct 2018 09:30:23 GMT): davidkel (Wed, 03 Oct 2018 09:39:22 GMT): maniyas (Wed, 03 Oct 2018 09:59:54 GMT): davidkel (Wed, 03 Oct 2018 10:02:08 GMT): kiknaio (Wed, 03 Oct 2018 10:09:29 GMT): kiknaio (Wed, 03 Oct 2018 10:09:29 GMT): waleed (Wed, 03 Oct 2018 10:09:52 GMT): kiknaio (Wed, 03 Oct 2018 10:10:15 GMT): kiknaio (Wed, 03 Oct 2018 10:12:31 GMT): waleed (Wed, 03 Oct 2018 10:16:19 GMT): kiknaio (Wed, 03 Oct 2018 10:18:20 GMT): davidkel (Wed, 03 Oct 2018 10:20:53 GMT): davidkel (Wed, 03 Oct 2018 10:32:03 GMT): garaujo (Wed, 03 Oct 2018 10:49:39 GMT): davidkel (Wed, 03 Oct 2018 10:52:58 GMT): davidkel (Wed, 03 Oct 2018 10:52:58 GMT): KindlebitPhp (Wed, 03 Oct 2018 11:11:42 GMT): KindlebitPhp (Wed, 03 Oct 2018 11:12:15 GMT): AndreiLovin (Wed, 03 Oct 2018 11:58:05 GMT): AndreiLovin (Wed, 03 Oct 2018 11:58:05 GMT): AndreiLovin (Wed, 03 Oct 2018 11:58:05 GMT): AndreiLovin (Wed, 03 Oct 2018 11:58:05 GMT): rrishmawi (Wed, 03 Oct 2018 12:39:40 GMT): rthatcher (Wed, 03 Oct 2018 12:43:52 GMT): rthatcher (Wed, 03 Oct 2018 12:49:33 GMT): rrishmawi (Wed, 03 Oct 2018 12:50:47 GMT): FlorentinoSainz (Wed, 03 Oct 2018 13:22:58 GMT): esauro (Wed, 03 Oct 2018 13:47:30 GMT): rrishmawi (Wed, 03 Oct 2018 13:57:25 GMT): rrishmawi (Wed, 03 Oct 2018 13:58:07 GMT): mrjdomingus (Wed, 03 Oct 2018 14:06:02 GMT): subhanshu.kumar (Wed, 03 Oct 2018 14:51:10 GMT): subhanshu.kumar (Wed, 03 Oct 2018 14:51:45 GMT): rthatcher (Wed, 03 Oct 2018 15:09:49 GMT): rthatcher (Wed, 03 Oct 2018 15:16:13 GMT): cuevrob (Wed, 03 Oct 2018 16:46:33 GMT): cuevrob (Wed, 03 Oct 2018 16:50:45 GMT): waleed (Wed, 03 Oct 2018 17:26:16 GMT): mrjdomingus (Wed, 03 Oct 2018 17:58:28 GMT): cuevrob (Wed, 03 Oct 2018 18:31:20 GMT): davidkel (Wed, 03 Oct 2018 18:37:00 GMT): davidkel (Wed, 03 Oct 2018 18:37:00 GMT): waleed (Wed, 03 Oct 2018 18:42:56 GMT): waleed (Wed, 03 Oct 2018 18:43:40 GMT): yashk011 (Wed, 03 Oct 2018 18:45:35 GMT): yashk011 (Wed, 03 Oct 2018 18:45:48 GMT): waleed (Wed, 03 Oct 2018 18:47:42 GMT): waleed (Wed, 03 Oct 2018 18:48:56 GMT): SangminDo (Thu, 04 Oct 2018 02:04:41 GMT): SangminDo (Thu, 04 Oct 2018 02:05:07 GMT): SangminDo (Thu, 04 Oct 2018 02:05:32 GMT): SangminDo (Thu, 04 Oct 2018 02:08:25 GMT): yashk011 (Thu, 04 Oct 2018 02:40:19 GMT): yashk011 (Thu, 04 Oct 2018 02:41:52 GMT): yashk011 (Thu, 04 Oct 2018 02:41:52 GMT): Vasav (Thu, 04 Oct 2018 04:33:30 GMT): archit90 (Thu, 04 Oct 2018 05:46:22 GMT): archit90 (Thu, 04 Oct 2018 05:51:42 GMT): FlorentinoSainz (Thu, 04 Oct 2018 07:01:06 GMT): ShaikSharuk (Thu, 04 Oct 2018 07:13:35 GMT): ShaikSharuk (Thu, 04 Oct 2018 07:17:42 GMT): gauravgiri (Thu, 04 Oct 2018 08:21:44 GMT): gauravgiri (Thu, 04 Oct 2018 08:21:44 GMT): rthatcher (Thu, 04 Oct 2018 08:33:32 GMT): rthatcher (Thu, 04 Oct 2018 08:33:32 GMT): rthatcher (Thu, 04 Oct 2018 08:53:25 GMT): giacomo.minighin (Thu, 04 Oct 2018 09:12:20 GMT): waleed (Thu, 04 Oct 2018 09:21:55 GMT): ShaikSharuk (Thu, 04 Oct 2018 09:45:14 GMT): davidkel (Thu, 04 Oct 2018 09:49:52 GMT): ShaikSharuk (Thu, 04 Oct 2018 09:56:21 GMT): davidkel (Thu, 04 Oct 2018 10:01:30 GMT): micklynch (Thu, 04 Oct 2018 11:26:44 GMT): micklynch (Thu, 04 Oct 2018 11:26:44 GMT): rrishmawi (Thu, 04 Oct 2018 11:42:00 GMT): davidkel (Thu, 04 Oct 2018 11:46:35 GMT): davidkel (Thu, 04 Oct 2018 11:46:35 GMT): rrishmawi (Thu, 04 Oct 2018 11:52:04 GMT): rrishmawi (Thu, 04 Oct 2018 11:53:05 GMT): davidkel (Thu, 04 Oct 2018 11:53:42 GMT): simonmullaney (Thu, 04 Oct 2018 11:55:37 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:34:33 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:34:39 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:34:43 GMT): varunagarwal (Thu, 04 Oct 2018 12:36:08 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:36:41 GMT): varunagarwal (Thu, 04 Oct 2018 12:36:46 GMT): varunagarwal (Thu, 04 Oct 2018 12:36:56 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:37:17 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:37:24 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:37:42 GMT): varunagarwal (Thu, 04 Oct 2018 12:37:45 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:38:51 GMT): varunagarwal (Thu, 04 Oct 2018 12:38:57 GMT): varunagarwal (Thu, 04 Oct 2018 12:39:24 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:39:26 GMT): varunagarwal (Thu, 04 Oct 2018 12:39:32 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:39:37 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:39:46 GMT): varunagarwal (Thu, 04 Oct 2018 12:39:51 GMT): varunagarwal (Thu, 04 Oct 2018 12:40:04 GMT): varunagarwal (Thu, 04 Oct 2018 12:40:09 GMT): varunagarwal (Thu, 04 Oct 2018 12:40:23 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:40:37 GMT): varunagarwal (Thu, 04 Oct 2018 12:40:53 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:40:54 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:41:01 GMT): varunagarwal (Thu, 04 Oct 2018 12:41:09 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:41:20 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:41:23 GMT): varunagarwal (Thu, 04 Oct 2018 12:41:35 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:41:56 GMT): varunagarwal (Thu, 04 Oct 2018 12:42:00 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:42:30 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:42:49 GMT): varunagarwal (Thu, 04 Oct 2018 12:42:53 GMT): simonmullaney (Thu, 04 Oct 2018 12:43:23 GMT): varunagarwal (Thu, 04 Oct 2018 12:43:39 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:43:46 GMT): varunagarwal (Thu, 04 Oct 2018 12:44:00 GMT): simonmullaney (Thu, 04 Oct 2018 12:44:01 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:44:30 GMT): simonmullaney (Thu, 04 Oct 2018 12:44:40 GMT): varunagarwal (Thu, 04 Oct 2018 12:44:58 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:45:21 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:45:26 GMT): varunagarwal (Thu, 04 Oct 2018 12:45:54 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:46:13 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:46:17 GMT): varunagarwal (Thu, 04 Oct 2018 12:46:22 GMT): varunagarwal (Thu, 04 Oct 2018 12:46:27 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:46:35 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:46:53 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:46:57 GMT): varunagarwal (Thu, 04 Oct 2018 12:47:02 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:47:23 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:47:32 GMT): varunagarwal (Thu, 04 Oct 2018 12:47:32 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:47:38 GMT): varunagarwal (Thu, 04 Oct 2018 12:47:58 GMT): varunagarwal (Thu, 04 Oct 2018 12:48:31 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:49:03 GMT): varunagarwal (Thu, 04 Oct 2018 12:49:26 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:50:12 GMT): varunagarwal (Thu, 04 Oct 2018 12:50:12 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:50:21 GMT): varunagarwal (Thu, 04 Oct 2018 12:50:23 GMT): varunagarwal (Thu, 04 Oct 2018 12:50:26 GMT): varunagarwal (Thu, 04 Oct 2018 12:51:10 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:51:23 GMT): varunagarwal (Thu, 04 Oct 2018 12:51:27 GMT): varunagarwal (Thu, 04 Oct 2018 12:51:31 GMT): FlorentinoSainz (Thu, 04 Oct 2018 12:51:36 GMT): varunagarwal (Thu, 04 Oct 2018 12:52:04 GMT): nishanthkp (Thu, 04 Oct 2018 13:14:11 GMT): nishanthkp (Thu, 04 Oct 2018 13:14:37 GMT): rthatcher (Thu, 04 Oct 2018 14:25:19 GMT): giacomo.minighin (Thu, 04 Oct 2018 14:33:48 GMT): waleed (Thu, 04 Oct 2018 14:41:44 GMT): KindleBitSoln (Thu, 04 Oct 2018 15:00:06 GMT): KindleBitSoln (Thu, 04 Oct 2018 15:00:06 GMT): FlorentinoSainz (Thu, 04 Oct 2018 15:00:31 GMT): FlorentinoSainz (Thu, 04 Oct 2018 15:00:39 GMT): FlorentinoSainz (Thu, 04 Oct 2018 15:00:44 GMT): FlorentinoSainz (Thu, 04 Oct 2018 15:01:12 GMT): davidkel (Thu, 04 Oct 2018 15:43:24 GMT): WenXingWang (Thu, 04 Oct 2018 20:52:20 GMT): WenXingWang (Thu, 04 Oct 2018 20:52:45 GMT): WenXingWang (Thu, 04 Oct 2018 20:54:20 GMT): WenXingWang (Thu, 04 Oct 2018 20:55:37 GMT): WenXingWang (Thu, 04 Oct 2018 20:56:58 GMT): WenXingWang (Thu, 04 Oct 2018 20:59:19 GMT): WenXingWang (Thu, 04 Oct 2018 21:04:19 GMT): WenXingWang (Thu, 04 Oct 2018 21:05:59 GMT): WenXingWang (Thu, 04 Oct 2018 21:06:26 GMT): WenXingWang (Thu, 04 Oct 2018 21:06:26 GMT): trex70 (Fri, 05 Oct 2018 05:33:43 GMT): trex70 (Fri, 05 Oct 2018 05:34:51 GMT): trex70 (Fri, 05 Oct 2018 05:35:57 GMT): trex70 (Fri, 05 Oct 2018 05:35:57 GMT): trex70 (Fri, 05 Oct 2018 05:36:37 GMT): trex70 (Fri, 05 Oct 2018 05:36:45 GMT): kcampion (Fri, 05 Oct 2018 06:38:55 GMT): kcampion (Fri, 05 Oct 2018 06:39:09 GMT): SanjivRao (Fri, 05 Oct 2018 07:27:51 GMT): davidkel (Fri, 05 Oct 2018 07:30:45 GMT): davidkel (Fri, 05 Oct 2018 07:31:08 GMT): davidkel (Fri, 05 Oct 2018 07:31:08 GMT): davidkel (Fri, 05 Oct 2018 07:31:08 GMT): VimalJose (Fri, 05 Oct 2018 08:07:18 GMT): rthatcher (Fri, 05 Oct 2018 08:09:38 GMT): Nihcep (Fri, 05 Oct 2018 08:09:59 GMT): ShaikSharuk (Fri, 05 Oct 2018 11:12:45 GMT): ShaikSharuk (Fri, 05 Oct 2018 11:38:21 GMT): ShaikSharuk (Fri, 05 Oct 2018 11:38:58 GMT): sushmitha (Fri, 05 Oct 2018 12:09:47 GMT): sushmitha (Fri, 05 Oct 2018 12:11:24 GMT): ajay560 (Fri, 05 Oct 2018 12:14:51 GMT): ajay560 (Fri, 05 Oct 2018 12:16:18 GMT): Nihcep (Fri, 05 Oct 2018 12:18:51 GMT): Nihcep (Fri, 05 Oct 2018 12:20:28 GMT): sushmitha (Fri, 05 Oct 2018 12:21:18 GMT): Nihcep (Fri, 05 Oct 2018 12:21:49 GMT): sushmitha (Fri, 05 Oct 2018 12:27:45 GMT): Nihcep (Fri, 05 Oct 2018 12:29:44 GMT): rthatcher (Fri, 05 Oct 2018 12:31:51 GMT): ShaikSharuk (Fri, 05 Oct 2018 12:33:20 GMT): rthatcher (Fri, 05 Oct 2018 12:36:43 GMT): rthatcher (Fri, 05 Oct 2018 12:38:57 GMT): BernardoAlves (Fri, 05 Oct 2018 12:56:56 GMT): davidkel (Fri, 05 Oct 2018 13:39:02 GMT): BernardoAlves (Fri, 05 Oct 2018 13:39:24 GMT): davidkel (Fri, 05 Oct 2018 13:40:05 GMT): BernardoAlves (Fri, 05 Oct 2018 13:40:34 GMT): davidkel (Fri, 05 Oct 2018 13:41:37 GMT): BernardoAlves (Fri, 05 Oct 2018 13:42:38 GMT): sureshtedla (Fri, 05 Oct 2018 13:53:15 GMT): Nihcep (Fri, 05 Oct 2018 14:02:04 GMT): Nihcep (Fri, 05 Oct 2018 14:02:47 GMT): Nihcep (Fri, 05 Oct 2018 14:03:04 GMT): Nihcep (Fri, 05 Oct 2018 14:03:40 GMT): sureshtedla (Fri, 05 Oct 2018 14:04:22 GMT): sureshtedla (Fri, 05 Oct 2018 14:04:48 GMT): ColeBoudreau (Fri, 05 Oct 2018 14:07:20 GMT): rthatcher (Fri, 05 Oct 2018 14:15:41 GMT): ColeBoudreau (Fri, 05 Oct 2018 14:16:50 GMT): rthatcher (Fri, 05 Oct 2018 14:18:18 GMT): rthatcher (Fri, 05 Oct 2018 14:18:18 GMT): rthatcher (Fri, 05 Oct 2018 14:20:22 GMT): ColeBoudreau (Fri, 05 Oct 2018 14:21:42 GMT): ColeBoudreau (Fri, 05 Oct 2018 14:29:02 GMT): davidkel (Fri, 05 Oct 2018 14:30:43 GMT): WenXingWang (Fri, 05 Oct 2018 15:50:27 GMT): mmick (Fri, 05 Oct 2018 16:12:41 GMT): malliksarvepalli (Fri, 05 Oct 2018 16:41:44 GMT): malliksarvepalli (Fri, 05 Oct 2018 16:44:24 GMT): Chandoo (Fri, 05 Oct 2018 18:30:23 GMT): aguel (Sat, 06 Oct 2018 01:15:16 GMT): Perebor (Sat, 06 Oct 2018 03:08:57 GMT): kiknaio (Sat, 06 Oct 2018 12:35:13 GMT): micklynch (Sun, 07 Oct 2018 11:39:50 GMT): kiknaio (Sun, 07 Oct 2018 12:27:33 GMT): wkwkhautbois (Sun, 07 Oct 2018 15:12:47 GMT): Techievena (Sun, 07 Oct 2018 20:31:49 GMT): anand.balagopalan (Mon, 08 Oct 2018 03:09:50 GMT): anand.balagopalan (Mon, 08 Oct 2018 03:09:55 GMT): anand.balagopalan (Mon, 08 Oct 2018 03:10:40 GMT): pradeeppadmarajaiah (Mon, 08 Oct 2018 03:37:26 GMT): pradeeppadmarajaiah (Mon, 08 Oct 2018 03:37:50 GMT): pradeeppadmarajaiah (Mon, 08 Oct 2018 03:38:01 GMT): anand.balagopalan (Mon, 08 Oct 2018 04:20:53 GMT): Nareshtej (Mon, 08 Oct 2018 05:22:12 GMT): pradeeppadmarajaiah (Mon, 08 Oct 2018 05:57:28 GMT): sushmitha (Mon, 08 Oct 2018 06:39:57 GMT): Nihcep (Mon, 08 Oct 2018 08:00:06 GMT): Nihcep (Mon, 08 Oct 2018 08:00:06 GMT): rthatcher (Mon, 08 Oct 2018 08:21:23 GMT): Nihcep (Mon, 08 Oct 2018 08:30:59 GMT): rthatcher (Mon, 08 Oct 2018 08:59:18 GMT): Hengming (Mon, 08 Oct 2018 09:01:24 GMT): sushmitha (Mon, 08 Oct 2018 09:06:25 GMT): sushmitha (Mon, 08 Oct 2018 09:06:27 GMT): sushmitha (Mon, 08 Oct 2018 09:07:10 GMT): anand.balagopalan (Mon, 08 Oct 2018 09:13:35 GMT): rthatcher (Mon, 08 Oct 2018 09:14:17 GMT): kiknaio (Mon, 08 Oct 2018 09:14:55 GMT): davidkel (Mon, 08 Oct 2018 09:20:16 GMT): sushmitha (Mon, 08 Oct 2018 09:20:28 GMT): kiknaio (Mon, 08 Oct 2018 09:22:17 GMT): davidkel (Mon, 08 Oct 2018 09:23:10 GMT): kiknaio (Mon, 08 Oct 2018 09:29:01 GMT): davidkel (Mon, 08 Oct 2018 09:29:42 GMT): kiknaio (Mon, 08 Oct 2018 09:30:56 GMT): davidkel (Mon, 08 Oct 2018 09:47:12 GMT): anand.balagopalan (Mon, 08 Oct 2018 10:04:07 GMT): anand.balagopalan (Mon, 08 Oct 2018 10:04:17 GMT): kiknaio (Mon, 08 Oct 2018 10:05:54 GMT): shashank-poojary (Mon, 08 Oct 2018 10:15:16 GMT): shashank-poojary (Mon, 08 Oct 2018 10:28:34 GMT): shashank-poojary (Mon, 08 Oct 2018 10:28:34 GMT): mahoney1 (Mon, 08 Oct 2018 10:49:36 GMT): mahoney1 (Mon, 08 Oct 2018 10:49:36 GMT): rthatcher (Mon, 08 Oct 2018 10:50:22 GMT): shashank-poojary (Mon, 08 Oct 2018 11:03:16 GMT): klenik (Mon, 08 Oct 2018 11:35:54 GMT): micahsoft (Mon, 08 Oct 2018 12:16:13 GMT): pradeeppadmarajaiah (Mon, 08 Oct 2018 13:42:48 GMT): wvogel (Mon, 08 Oct 2018 13:50:50 GMT): Nihcep (Mon, 08 Oct 2018 13:52:09 GMT): rthatcher (Mon, 08 Oct 2018 14:09:03 GMT): Barry_CPF (Mon, 08 Oct 2018 14:47:02 GMT): micklynch (Mon, 08 Oct 2018 15:44:42 GMT): danilojodas (Mon, 08 Oct 2018 16:37:58 GMT): danilojodas (Mon, 08 Oct 2018 16:39:33 GMT): rthatcher (Mon, 08 Oct 2018 16:46:04 GMT): danilojodas (Mon, 08 Oct 2018 17:17:07 GMT): danilojodas (Mon, 08 Oct 2018 17:17:53 GMT): vanclief (Mon, 08 Oct 2018 18:04:57 GMT): vanclief (Mon, 08 Oct 2018 18:05:11 GMT): vanclief (Mon, 08 Oct 2018 18:15:33 GMT): davidkel (Mon, 08 Oct 2018 18:30:47 GMT): davidkel (Mon, 08 Oct 2018 18:30:47 GMT): micklynch (Mon, 08 Oct 2018 18:58:22 GMT): vanclief (Mon, 08 Oct 2018 19:01:40 GMT): vanclief (Mon, 08 Oct 2018 19:01:40 GMT): davidkel (Mon, 08 Oct 2018 20:43:30 GMT): davidkel (Mon, 08 Oct 2018 20:43:30 GMT): MattHamilton (Mon, 08 Oct 2018 20:46:30 GMT): juan.gzz.salz (Mon, 08 Oct 2018 23:22:03 GMT): juan.gzz.salz (Mon, 08 Oct 2018 23:27:20 GMT): vanclief (Tue, 09 Oct 2018 02:49:48 GMT): ShaikSharuk (Tue, 09 Oct 2018 05:52:54 GMT): ShaikSharuk (Tue, 09 Oct 2018 06:05:37 GMT): KindlebitPhp (Tue, 09 Oct 2018 07:31:11 GMT): rthatcher (Tue, 09 Oct 2018 08:19:27 GMT): rthatcher (Tue, 09 Oct 2018 08:33:19 GMT): umlspec (Tue, 09 Oct 2018 08:42:34 GMT): umlspec (Tue, 09 Oct 2018 08:43:26 GMT): umlspec (Tue, 09 Oct 2018 08:43:37 GMT): umlspec (Tue, 09 Oct 2018 08:44:31 GMT): umlspec (Tue, 09 Oct 2018 08:44:55 GMT): KindlebitPhp (Tue, 09 Oct 2018 09:05:55 GMT): davidkel (Tue, 09 Oct 2018 09:07:38 GMT): davidkel (Tue, 09 Oct 2018 09:09:41 GMT): mahoney1 (Tue, 09 Oct 2018 09:17:08 GMT): umlspec (Tue, 09 Oct 2018 09:18:10 GMT): umlspec (Tue, 09 Oct 2018 09:19:31 GMT): umlspec (Tue, 09 Oct 2018 09:22:54 GMT): sushmitha (Tue, 09 Oct 2018 09:30:58 GMT): davidkel (Tue, 09 Oct 2018 09:40:34 GMT): davidkel (Tue, 09 Oct 2018 09:40:34 GMT): davidkel (Tue, 09 Oct 2018 09:43:17 GMT): umlspec (Tue, 09 Oct 2018 09:54:35 GMT): umlspec (Tue, 09 Oct 2018 09:58:06 GMT): umlspec (Tue, 09 Oct 2018 09:59:13 GMT): umlspec (Tue, 09 Oct 2018 09:59:29 GMT): davidkel (Tue, 09 Oct 2018 10:11:06 GMT): w4721x (Tue, 09 Oct 2018 10:11:09 GMT): w4721x (Tue, 09 Oct 2018 10:11:18 GMT): w4721x (Tue, 09 Oct 2018 10:11:40 GMT): davidkel (Tue, 09 Oct 2018 10:12:52 GMT): davidkel (Tue, 09 Oct 2018 10:12:52 GMT): w4721x (Tue, 09 Oct 2018 10:13:52 GMT): w4721x (Tue, 09 Oct 2018 10:14:12 GMT): davidkel (Tue, 09 Oct 2018 10:15:36 GMT): w4721x (Tue, 09 Oct 2018 10:17:17 GMT): umlspec (Tue, 09 Oct 2018 10:18:25 GMT): davidkel (Tue, 09 Oct 2018 10:24:52 GMT): davidkel (Tue, 09 Oct 2018 10:26:05 GMT): w4721x (Tue, 09 Oct 2018 10:26:31 GMT): davidkel (Tue, 09 Oct 2018 10:29:43 GMT): w4721x (Tue, 09 Oct 2018 10:30:41 GMT): davidkel (Tue, 09 Oct 2018 10:32:13 GMT): w4721x (Tue, 09 Oct 2018 10:32:38 GMT): w4721x (Tue, 09 Oct 2018 10:32:46 GMT): KindlebitPhp (Tue, 09 Oct 2018 10:32:56 GMT): KindlebitPhp (Tue, 09 Oct 2018 10:33:11 GMT): w4721x (Tue, 09 Oct 2018 10:33:26 GMT): KindlebitPhp (Tue, 09 Oct 2018 10:33:37 GMT): w4721x (Tue, 09 Oct 2018 10:33:58 GMT): w4721x (Tue, 09 Oct 2018 10:34:47 GMT): w4721x (Tue, 09 Oct 2018 10:35:04 GMT): w4721x (Tue, 09 Oct 2018 10:35:40 GMT): danilojodas (Tue, 09 Oct 2018 10:35:52 GMT): KindlebitPhp (Tue, 09 Oct 2018 10:36:22 GMT): KindlebitPhp (Tue, 09 Oct 2018 10:36:51 GMT): KindlebitPhp (Tue, 09 Oct 2018 10:36:51 GMT): KindlebitPhp (Tue, 09 Oct 2018 10:36:51 GMT): umlspec (Tue, 09 Oct 2018 10:36:58 GMT): umlspec (Tue, 09 Oct 2018 10:37:13 GMT): w4721x (Tue, 09 Oct 2018 10:39:56 GMT): w4721x (Tue, 09 Oct 2018 10:40:10 GMT): w4721x (Tue, 09 Oct 2018 10:40:16 GMT): w4721x (Tue, 09 Oct 2018 10:40:20 GMT): w4721x (Tue, 09 Oct 2018 10:40:36 GMT): w4721x (Tue, 09 Oct 2018 10:40:47 GMT): w4721x (Tue, 09 Oct 2018 10:41:16 GMT): KindlebitPhp (Tue, 09 Oct 2018 11:01:05 GMT): KindlebitPhp (Tue, 09 Oct 2018 11:01:10 GMT): jonlee300 (Tue, 09 Oct 2018 11:07:37 GMT): mahoney1 (Tue, 09 Oct 2018 11:17:21 GMT): mahoney1 (Tue, 09 Oct 2018 11:17:21 GMT): rthatcher (Tue, 09 Oct 2018 11:19:19 GMT): davidkel (Tue, 09 Oct 2018 11:20:05 GMT): danilojodas (Tue, 09 Oct 2018 11:26:00 GMT): ShaikSharuk (Tue, 09 Oct 2018 11:39:47 GMT): davidkel (Tue, 09 Oct 2018 11:51:12 GMT): rthatcher (Tue, 09 Oct 2018 11:56:38 GMT): rthatcher (Tue, 09 Oct 2018 12:00:09 GMT): jonlee300 (Tue, 09 Oct 2018 12:05:03 GMT): danilojodas (Tue, 09 Oct 2018 12:08:09 GMT): mahoney1 (Tue, 09 Oct 2018 12:12:29 GMT): karthi.t (Tue, 09 Oct 2018 12:34:22 GMT): jonlee300 (Tue, 09 Oct 2018 12:43:48 GMT): jonlee300 (Tue, 09 Oct 2018 12:44:59 GMT): jonlee300 (Tue, 09 Oct 2018 12:47:36 GMT): jonlee300 (Tue, 09 Oct 2018 12:47:36 GMT): jonlee300 (Tue, 09 Oct 2018 12:50:29 GMT): jonlee300 (Tue, 09 Oct 2018 12:50:50 GMT): halilkalkan (Tue, 09 Oct 2018 12:54:27 GMT): davidkel (Tue, 09 Oct 2018 13:04:30 GMT): mahoney1 (Tue, 09 Oct 2018 13:20:06 GMT): jonlee300 (Tue, 09 Oct 2018 13:21:48 GMT): jonlee300 (Tue, 09 Oct 2018 13:23:47 GMT): avagarwal (Tue, 09 Oct 2018 13:38:02 GMT): umlspec (Tue, 09 Oct 2018 13:52:39 GMT): JeffreyCheng 1 (Tue, 09 Oct 2018 15:44:18 GMT): mahoney1 (Tue, 09 Oct 2018 16:30:40 GMT): MohitJuneja (Tue, 09 Oct 2018 17:36:39 GMT): MohitJuneja (Tue, 09 Oct 2018 17:38:20 GMT): MohitJuneja (Tue, 09 Oct 2018 17:39:38 GMT): davidkel (Tue, 09 Oct 2018 18:01:17 GMT): jonlee300 (Tue, 09 Oct 2018 18:50:57 GMT): jonlee300 (Tue, 09 Oct 2018 18:50:57 GMT): Tipuch (Tue, 09 Oct 2018 18:57:21 GMT): Tipuch (Tue, 09 Oct 2018 19:02:43 GMT): Tipuch (Tue, 09 Oct 2018 19:03:02 GMT): Tipuch (Tue, 09 Oct 2018 19:06:30 GMT): Tipuch (Tue, 09 Oct 2018 19:06:30 GMT): klenik (Tue, 09 Oct 2018 19:15:31 GMT): jonlee300 (Tue, 09 Oct 2018 19:22:38 GMT): mmick (Tue, 09 Oct 2018 20:20:28 GMT): rcviauall (Wed, 10 Oct 2018 01:30:12 GMT): anand.balagopalan (Wed, 10 Oct 2018 05:10:10 GMT): anand.balagopalan (Wed, 10 Oct 2018 05:10:26 GMT): kapila123 (Wed, 10 Oct 2018 05:19:33 GMT): pradeeppadmarajaiah (Wed, 10 Oct 2018 05:20:44 GMT): pradeeppadmarajaiah (Wed, 10 Oct 2018 05:21:16 GMT): pradeeppadmarajaiah (Wed, 10 Oct 2018 05:21:16 GMT): pradeeppadmarajaiah (Wed, 10 Oct 2018 05:30:05 GMT): pradeeppadmarajaiah (Wed, 10 Oct 2018 05:30:16 GMT): pradeeppadmarajaiah (Wed, 10 Oct 2018 05:30:17 GMT): pradeeppadmarajaiah (Wed, 10 Oct 2018 05:30:27 GMT): pradeeppadmarajaiah (Wed, 10 Oct 2018 05:30:29 GMT): halilkalkan (Wed, 10 Oct 2018 05:31:29 GMT): jonlee300 (Wed, 10 Oct 2018 05:51:57 GMT): pradeeppadmarajaiah (Wed, 10 Oct 2018 06:08:43 GMT): venkat0427 (Wed, 10 Oct 2018 06:16:48 GMT): davidkel (Wed, 10 Oct 2018 06:53:43 GMT): davidkel (Wed, 10 Oct 2018 06:57:02 GMT): halilkalkan (Wed, 10 Oct 2018 07:06:49 GMT): kapila123 (Wed, 10 Oct 2018 07:08:19 GMT): davidkel (Wed, 10 Oct 2018 07:08:43 GMT): kapila123 (Wed, 10 Oct 2018 07:08:51 GMT): kapila123 (Wed, 10 Oct 2018 07:09:04 GMT): davidkel (Wed, 10 Oct 2018 07:09:25 GMT): kapila123 (Wed, 10 Oct 2018 07:12:19 GMT): kapila123 (Wed, 10 Oct 2018 07:12:19 GMT): kapila123 (Wed, 10 Oct 2018 07:46:32 GMT): kapila123 (Wed, 10 Oct 2018 07:49:49 GMT): kapila123 (Wed, 10 Oct 2018 07:49:49 GMT): rthatcher (Wed, 10 Oct 2018 08:36:57 GMT): GyoonKi (Wed, 10 Oct 2018 09:00:19 GMT): GyoonKi (Wed, 10 Oct 2018 09:00:32 GMT): B0uMe (Wed, 10 Oct 2018 09:00:41 GMT): GyoonKi (Wed, 10 Oct 2018 09:00:55 GMT): B0uMe (Wed, 10 Oct 2018 09:03:29 GMT): rthatcher (Wed, 10 Oct 2018 09:09:22 GMT): rthatcher (Wed, 10 Oct 2018 09:09:22 GMT): mahoney1 (Wed, 10 Oct 2018 09:13:04 GMT): mahoney1 (Wed, 10 Oct 2018 09:13:19 GMT): rthatcher (Wed, 10 Oct 2018 09:14:59 GMT): sooraj-citta (Wed, 10 Oct 2018 09:33:13 GMT): kapila123 (Wed, 10 Oct 2018 09:37:56 GMT): kapila123 (Wed, 10 Oct 2018 09:58:14 GMT): davidkel (Wed, 10 Oct 2018 09:59:41 GMT): jonlee300 (Wed, 10 Oct 2018 10:06:05 GMT): LabibFarag (Wed, 10 Oct 2018 10:24:30 GMT): mahoney1 (Wed, 10 Oct 2018 10:32:01 GMT): mahoney1 (Wed, 10 Oct 2018 10:32:56 GMT): sooraj-citta (Wed, 10 Oct 2018 11:01:01 GMT): jonlee300 (Wed, 10 Oct 2018 11:16:55 GMT): omarqr (Wed, 10 Oct 2018 12:23:53 GMT): omarqr (Wed, 10 Oct 2018 12:24:07 GMT): Tipuch (Wed, 10 Oct 2018 12:24:58 GMT): omarqr (Wed, 10 Oct 2018 12:25:28 GMT): rthatcher (Wed, 10 Oct 2018 12:49:30 GMT): omarqr (Wed, 10 Oct 2018 12:50:57 GMT): omarqr (Wed, 10 Oct 2018 12:51:28 GMT): jonlee300 (Wed, 10 Oct 2018 12:57:03 GMT): jonlee300 (Wed, 10 Oct 2018 12:57:03 GMT): jonlee300 (Wed, 10 Oct 2018 12:57:03 GMT): jonlee300 (Wed, 10 Oct 2018 12:57:03 GMT): latitiah (Wed, 10 Oct 2018 12:57:33 GMT): mmick (Wed, 10 Oct 2018 13:01:25 GMT): mmick (Wed, 10 Oct 2018 13:03:05 GMT): rthatcher (Wed, 10 Oct 2018 13:10:14 GMT): omarqr (Wed, 10 Oct 2018 13:13:02 GMT): rthatcher (Wed, 10 Oct 2018 13:14:11 GMT): rthatcher (Wed, 10 Oct 2018 13:15:46 GMT): mahoney1 (Wed, 10 Oct 2018 13:20:43 GMT): mahoney1 (Wed, 10 Oct 2018 13:21:27 GMT): jonlee300 (Wed, 10 Oct 2018 13:22:42 GMT): jonlee300 (Wed, 10 Oct 2018 13:22:50 GMT): jonlee300 (Wed, 10 Oct 2018 13:23:30 GMT): omarqr (Wed, 10 Oct 2018 13:24:03 GMT): rrishmawi (Wed, 10 Oct 2018 13:27:16 GMT): rrishmawi (Wed, 10 Oct 2018 13:27:16 GMT): rrishmawi (Wed, 10 Oct 2018 13:28:31 GMT): rrishmawi (Wed, 10 Oct 2018 13:28:39 GMT): omarqr (Wed, 10 Oct 2018 13:32:36 GMT): ColeBoudreau (Wed, 10 Oct 2018 13:42:26 GMT): omarqr (Wed, 10 Oct 2018 13:44:11 GMT): omarqr (Wed, 10 Oct 2018 13:44:21 GMT): ColeBoudreau (Wed, 10 Oct 2018 13:44:37 GMT): ColeBoudreau (Wed, 10 Oct 2018 13:44:41 GMT): rthatcher (Wed, 10 Oct 2018 13:44:58 GMT): ColeBoudreau (Wed, 10 Oct 2018 13:47:58 GMT): rthatcher (Wed, 10 Oct 2018 13:51:48 GMT): omarqr (Wed, 10 Oct 2018 13:57:17 GMT): jonlee300 (Wed, 10 Oct 2018 14:21:18 GMT): jonlee300 (Wed, 10 Oct 2018 14:21:18 GMT): jonlee300 (Wed, 10 Oct 2018 14:21:18 GMT): moomoochen (Wed, 10 Oct 2018 14:57:22 GMT): moomoochen (Wed, 10 Oct 2018 15:00:16 GMT): moomoochen (Wed, 10 Oct 2018 15:00:16 GMT): omarqr (Wed, 10 Oct 2018 15:02:52 GMT): omarqr (Wed, 10 Oct 2018 15:15:06 GMT): mahoney1 (Wed, 10 Oct 2018 16:49:21 GMT): mahoney1 (Wed, 10 Oct 2018 16:53:38 GMT): LabibFarag (Wed, 10 Oct 2018 17:21:44 GMT): LabibFarag (Wed, 10 Oct 2018 17:21:44 GMT): LabibFarag (Wed, 10 Oct 2018 17:21:44 GMT): Daka (Wed, 10 Oct 2018 18:40:29 GMT): GonzalezAnguita (Wed, 10 Oct 2018 20:24:02 GMT): greg2git (Wed, 10 Oct 2018 20:28:49 GMT): GonzalezAnguita (Wed, 10 Oct 2018 20:30:54 GMT): ronaldlong46 (Wed, 10 Oct 2018 22:14:19 GMT): WenXingWang (Wed, 10 Oct 2018 23:00:55 GMT): sandeepsethia62 (Thu, 11 Oct 2018 01:47:12 GMT): bongaquino (Thu, 11 Oct 2018 02:01:44 GMT): bongaquino (Thu, 11 Oct 2018 02:02:00 GMT): sooraj-citta (Thu, 11 Oct 2018 03:42:46 GMT): pradeeppadmarajaiah (Thu, 11 Oct 2018 04:05:50 GMT): Sasadara (Thu, 11 Oct 2018 04:39:11 GMT): anand.balagopalan (Thu, 11 Oct 2018 06:28:41 GMT): anand.balagopalan (Thu, 11 Oct 2018 06:30:05 GMT): hackartist (Thu, 11 Oct 2018 06:52:27 GMT): jonlee300 (Thu, 11 Oct 2018 07:46:57 GMT): jonlee300 (Thu, 11 Oct 2018 07:46:57 GMT): jonlee300 (Thu, 11 Oct 2018 07:55:25 GMT): Renick (Thu, 11 Oct 2018 08:11:45 GMT): davidkel (Thu, 11 Oct 2018 08:14:19 GMT): Renick (Thu, 11 Oct 2018 08:30:09 GMT): abityildiz (Thu, 11 Oct 2018 08:37:01 GMT): rthatcher (Thu, 11 Oct 2018 09:08:42 GMT): benjamin.verhaegen (Thu, 11 Oct 2018 09:22:13 GMT): mahoney1 (Thu, 11 Oct 2018 09:22:40 GMT): mahoney1 (Thu, 11 Oct 2018 09:24:26 GMT): Anu 226 (Thu, 11 Oct 2018 09:48:03 GMT): aguel (Thu, 11 Oct 2018 09:49:19 GMT): Renick (Thu, 11 Oct 2018 09:53:46 GMT): davidkel (Thu, 11 Oct 2018 10:34:27 GMT): kcampion (Thu, 11 Oct 2018 10:58:53 GMT): kcampion (Thu, 11 Oct 2018 10:59:58 GMT): kcampion (Thu, 11 Oct 2018 11:02:37 GMT): kcampion (Thu, 11 Oct 2018 11:05:00 GMT): anand.balagopalan (Thu, 11 Oct 2018 11:13:37 GMT): anand.balagopalan (Thu, 11 Oct 2018 11:14:46 GMT): Renick (Thu, 11 Oct 2018 11:20:04 GMT): Anu 226 (Thu, 11 Oct 2018 11:41:10 GMT): SaraInadam (Thu, 11 Oct 2018 11:41:12 GMT): mahoney1 (Thu, 11 Oct 2018 12:05:00 GMT): mahoney1 (Thu, 11 Oct 2018 12:06:38 GMT): mahoney1 (Thu, 11 Oct 2018 12:06:38 GMT): mahoney1 (Thu, 11 Oct 2018 12:06:38 GMT): edoardo_bdf (Thu, 11 Oct 2018 12:55:41 GMT): edoardo_bdf (Thu, 11 Oct 2018 12:56:15 GMT): edoardo_bdf (Thu, 11 Oct 2018 13:15:59 GMT): jonlee300 (Thu, 11 Oct 2018 13:16:44 GMT): jonlee300 (Thu, 11 Oct 2018 13:22:54 GMT): jonlee300 (Thu, 11 Oct 2018 13:23:51 GMT): kcampion (Thu, 11 Oct 2018 13:36:09 GMT): jonlee300 (Thu, 11 Oct 2018 13:59:15 GMT): jonlee300 (Thu, 11 Oct 2018 13:59:15 GMT): jonlee300 (Thu, 11 Oct 2018 13:59:15 GMT): jonlee300 (Thu, 11 Oct 2018 14:04:16 GMT): rthatcher (Thu, 11 Oct 2018 14:22:29 GMT): kcampion (Thu, 11 Oct 2018 14:25:07 GMT): mahoney1 (Thu, 11 Oct 2018 14:25:49 GMT): mahoney1 (Thu, 11 Oct 2018 14:25:49 GMT): mahoney1 (Thu, 11 Oct 2018 14:29:51 GMT): mahoney1 (Thu, 11 Oct 2018 14:29:51 GMT): edoardo_bdf (Thu, 11 Oct 2018 14:29:52 GMT): edoardo_bdf (Thu, 11 Oct 2018 14:44:17 GMT): mahoney1 (Thu, 11 Oct 2018 14:47:10 GMT): kcampion (Thu, 11 Oct 2018 14:49:56 GMT): mrudav.shukla (Thu, 11 Oct 2018 14:57:56 GMT): mahoney1 (Thu, 11 Oct 2018 15:44:26 GMT): jonlee300 (Thu, 11 Oct 2018 15:49:25 GMT): ArchanGanguly (Thu, 11 Oct 2018 19:00:52 GMT): WenXingWang (Thu, 11 Oct 2018 21:13:26 GMT): WenXingWang (Thu, 11 Oct 2018 21:43:11 GMT): WenXingWang (Thu, 11 Oct 2018 21:43:15 GMT): WenXingWang (Thu, 11 Oct 2018 21:46:12 GMT): WenXingWang (Thu, 11 Oct 2018 21:46:15 GMT): nulee100 (Fri, 12 Oct 2018 00:55:40 GMT): nulee100 (Fri, 12 Oct 2018 01:02:03 GMT): jonlee300 (Fri, 12 Oct 2018 04:40:35 GMT): AubreyMalabie (Fri, 12 Oct 2018 05:26:21 GMT): adnanabbasktt (Fri, 12 Oct 2018 06:25:30 GMT): adnanabbasktt (Fri, 12 Oct 2018 06:33:25 GMT): mrudav.shukla (Fri, 12 Oct 2018 06:40:41 GMT): rthatcher (Fri, 12 Oct 2018 08:06:41 GMT): rthatcher (Fri, 12 Oct 2018 08:13:14 GMT): anand.balagopalan (Fri, 12 Oct 2018 08:21:55 GMT): aneb (Fri, 12 Oct 2018 08:29:48 GMT): sandeepsethia62 (Fri, 12 Oct 2018 08:31:02 GMT): mahoney1 (Fri, 12 Oct 2018 08:40:58 GMT): rthatcher (Fri, 12 Oct 2018 08:42:02 GMT): anand.balagopalan (Fri, 12 Oct 2018 08:45:27 GMT): anand.balagopalan (Fri, 12 Oct 2018 08:49:50 GMT): anand.balagopalan (Fri, 12 Oct 2018 08:50:50 GMT): jonlee300 (Fri, 12 Oct 2018 09:04:43 GMT): mahoney1 (Fri, 12 Oct 2018 09:11:14 GMT): mahoney1 (Fri, 12 Oct 2018 09:11:14 GMT): JSilva (Fri, 12 Oct 2018 09:25:44 GMT): JSilva (Fri, 12 Oct 2018 09:38:34 GMT): kcampion (Fri, 12 Oct 2018 09:43:20 GMT): JSilva (Fri, 12 Oct 2018 09:44:00 GMT): rthatcher (Fri, 12 Oct 2018 09:47:05 GMT): mahoney1 (Fri, 12 Oct 2018 09:51:28 GMT): JSilva (Fri, 12 Oct 2018 09:52:00 GMT): rthatcher (Fri, 12 Oct 2018 09:52:38 GMT): JSilva (Fri, 12 Oct 2018 09:52:53 GMT): rthatcher (Fri, 12 Oct 2018 09:53:56 GMT): JSilva (Fri, 12 Oct 2018 09:58:42 GMT): rthatcher (Fri, 12 Oct 2018 10:14:53 GMT): JSilva (Fri, 12 Oct 2018 10:18:57 GMT): rthatcher (Fri, 12 Oct 2018 10:21:34 GMT): JSilva (Fri, 12 Oct 2018 10:24:57 GMT): jack21 (Fri, 12 Oct 2018 10:29:28 GMT): mahoney1 (Fri, 12 Oct 2018 10:36:20 GMT): rthatcher (Fri, 12 Oct 2018 10:45:17 GMT): rthatcher (Fri, 12 Oct 2018 10:45:17 GMT): mrudav.shukla (Fri, 12 Oct 2018 10:53:13 GMT): Renick (Fri, 12 Oct 2018 10:55:53 GMT): JSilva (Fri, 12 Oct 2018 11:13:56 GMT): mahoney1 (Fri, 12 Oct 2018 11:23:55 GMT): mahoney1 (Fri, 12 Oct 2018 11:31:01 GMT): rthatcher (Fri, 12 Oct 2018 11:36:01 GMT): davidkel (Fri, 12 Oct 2018 12:17:34 GMT): davidkel (Fri, 12 Oct 2018 12:17:34 GMT): ShaikSharuk (Fri, 12 Oct 2018 13:15:47 GMT): ShaikSharuk (Fri, 12 Oct 2018 13:27:16 GMT): rthatcher (Fri, 12 Oct 2018 13:43:26 GMT): kcampion (Fri, 12 Oct 2018 13:53:43 GMT): kcampion (Fri, 12 Oct 2018 13:53:43 GMT): Renick (Fri, 12 Oct 2018 14:14:08 GMT): rthatcher (Fri, 12 Oct 2018 14:29:34 GMT): Renick (Fri, 12 Oct 2018 14:34:15 GMT): mrudav.shukla (Fri, 12 Oct 2018 16:22:02 GMT): mathmass (Fri, 12 Oct 2018 21:28:15 GMT): mrudav.shukla (Sat, 13 Oct 2018 07:35:43 GMT): mrudav.shukla (Sat, 13 Oct 2018 07:36:22 GMT): saadinator (Sat, 13 Oct 2018 08:05:53 GMT): jonlee300 (Sat, 13 Oct 2018 08:37:03 GMT): jonlee300 (Sat, 13 Oct 2018 08:37:16 GMT): jonlee300 (Sat, 13 Oct 2018 08:37:35 GMT): jonlee300 (Sat, 13 Oct 2018 08:38:07 GMT): mobie (Sat, 13 Oct 2018 09:57:21 GMT): jonlee300 (Sat, 13 Oct 2018 10:35:34 GMT): jonlee300 (Sat, 13 Oct 2018 10:56:21 GMT): hotbydefault (Sat, 13 Oct 2018 11:24:51 GMT): vanclief (Sat, 13 Oct 2018 17:25:43 GMT): Renick (Sat, 13 Oct 2018 22:07:43 GMT): MabelOza (Sun, 14 Oct 2018 03:32:18 GMT): ak97m (Sun, 14 Oct 2018 17:33:19 GMT): labcoinpoc (Mon, 15 Oct 2018 01:07:56 GMT): KindleBitSoln (Mon, 15 Oct 2018 06:00:25 GMT): abityildiz (Mon, 15 Oct 2018 06:18:01 GMT): dev1644 (Mon, 15 Oct 2018 07:30:15 GMT): AsifJaved (Mon, 15 Oct 2018 07:38:04 GMT): AsifJaved (Mon, 15 Oct 2018 07:38:41 GMT): DeepakMP (Mon, 15 Oct 2018 07:40:46 GMT): DeepakMP (Mon, 15 Oct 2018 07:41:05 GMT): aguel (Mon, 15 Oct 2018 07:41:39 GMT): DeepakMP (Mon, 15 Oct 2018 07:42:58 GMT): touchingsoil (Mon, 15 Oct 2018 07:45:35 GMT): touchingsoil (Mon, 15 Oct 2018 07:45:35 GMT): touchingsoil (Mon, 15 Oct 2018 07:45:35 GMT): AsifJaved (Mon, 15 Oct 2018 08:29:47 GMT): AsifJaved (Mon, 15 Oct 2018 08:29:47 GMT): AsifJaved (Mon, 15 Oct 2018 08:29:47 GMT): rthatcher (Mon, 15 Oct 2018 08:35:17 GMT): rthatcher (Mon, 15 Oct 2018 08:40:03 GMT): rthatcher (Mon, 15 Oct 2018 08:54:12 GMT): KindleBitSoln (Mon, 15 Oct 2018 09:06:30 GMT): mahoney1 (Mon, 15 Oct 2018 09:14:16 GMT): DeepakMP (Mon, 15 Oct 2018 09:15:54 GMT): mahoney1 (Mon, 15 Oct 2018 09:25:24 GMT): mahoney1 (Mon, 15 Oct 2018 09:25:24 GMT): mahoney1 (Mon, 15 Oct 2018 09:25:24 GMT): AsifJaved (Mon, 15 Oct 2018 09:43:44 GMT): AsifJaved (Mon, 15 Oct 2018 09:43:44 GMT): mahoney1 (Mon, 15 Oct 2018 09:49:54 GMT): mahoney1 (Mon, 15 Oct 2018 09:49:54 GMT): mahoney1 (Mon, 15 Oct 2018 09:52:22 GMT): touchingsoil (Mon, 15 Oct 2018 10:01:11 GMT): touchingsoil (Mon, 15 Oct 2018 10:01:14 GMT): touchingsoil (Mon, 15 Oct 2018 10:01:14 GMT): touchingsoil (Mon, 15 Oct 2018 10:01:14 GMT): Ambros 3 (Mon, 15 Oct 2018 10:02:18 GMT): Ambros 3 (Mon, 15 Oct 2018 10:02:18 GMT): davidkel (Mon, 15 Oct 2018 10:19:07 GMT): davidkel (Mon, 15 Oct 2018 10:19:07 GMT): rthatcher (Mon, 15 Oct 2018 10:21:02 GMT): koineramitranjan (Mon, 15 Oct 2018 10:21:07 GMT): koineramitranjan (Mon, 15 Oct 2018 10:21:07 GMT): Ambros 3 (Mon, 15 Oct 2018 10:24:28 GMT): rthatcher (Mon, 15 Oct 2018 10:47:19 GMT): mahoney1 (Mon, 15 Oct 2018 10:56:34 GMT): mahoney1 (Mon, 15 Oct 2018 10:56:34 GMT): OlegLukasonok (Mon, 15 Oct 2018 11:13:49 GMT): OlegLukasonok (Mon, 15 Oct 2018 11:14:33 GMT): OlegLukasonok (Mon, 15 Oct 2018 11:14:59 GMT): touchingsoil (Mon, 15 Oct 2018 11:22:40 GMT): touchingsoil (Mon, 15 Oct 2018 11:22:40 GMT): mmick (Mon, 15 Oct 2018 11:27:18 GMT): mmick (Mon, 15 Oct 2018 11:27:18 GMT): mmick (Mon, 15 Oct 2018 11:27:18 GMT): ShaikSharuk (Mon, 15 Oct 2018 12:08:41 GMT): rthatcher (Mon, 15 Oct 2018 12:22:28 GMT): ShaikSharuk (Mon, 15 Oct 2018 12:27:52 GMT): glzawalski (Mon, 15 Oct 2018 12:32:35 GMT): KindleBitSoln (Mon, 15 Oct 2018 12:42:29 GMT): KindleBitSoln (Mon, 15 Oct 2018 12:42:29 GMT): KindleBitSoln (Mon, 15 Oct 2018 12:42:29 GMT): KindleBitSoln (Mon, 15 Oct 2018 12:52:15 GMT): KindleBitSoln (Mon, 15 Oct 2018 12:52:17 GMT): rthatcher (Mon, 15 Oct 2018 12:53:55 GMT): rthatcher (Mon, 15 Oct 2018 12:56:02 GMT): KindleBitSoln (Mon, 15 Oct 2018 12:59:06 GMT): KindleBitSoln (Mon, 15 Oct 2018 12:59:53 GMT): KindleBitSoln (Mon, 15 Oct 2018 13:05:50 GMT): KindleBitSoln (Mon, 15 Oct 2018 13:10:49 GMT): rrishmawi (Mon, 15 Oct 2018 13:31:46 GMT): rthatcher (Mon, 15 Oct 2018 13:32:04 GMT): KindleBitSoln (Mon, 15 Oct 2018 13:38:15 GMT): rrishmawi (Mon, 15 Oct 2018 13:38:54 GMT): KindleBitSoln (Mon, 15 Oct 2018 13:40:37 GMT): rrishmawi (Mon, 15 Oct 2018 13:58:28 GMT): Manticore (Mon, 15 Oct 2018 14:25:10 GMT): Manticore (Mon, 15 Oct 2018 14:26:14 GMT): Manticore (Mon, 15 Oct 2018 14:26:27 GMT): KindleBitSoln (Mon, 15 Oct 2018 15:50:01 GMT): KindleBitSoln (Mon, 15 Oct 2018 15:50:27 GMT): KindleBitSoln (Mon, 15 Oct 2018 15:50:44 GMT): rthatcher (Mon, 15 Oct 2018 15:59:04 GMT): mahoney1 (Mon, 15 Oct 2018 17:41:15 GMT): mahoney1 (Mon, 15 Oct 2018 17:41:55 GMT): mahoney1 (Mon, 15 Oct 2018 17:45:40 GMT): joenyzio (Tue, 16 Oct 2018 02:02:54 GMT): Sasadara (Tue, 16 Oct 2018 03:56:55 GMT): KindleBitSoln (Tue, 16 Oct 2018 04:32:19 GMT): touchingsoil (Tue, 16 Oct 2018 07:02:32 GMT): davidkel (Tue, 16 Oct 2018 07:16:11 GMT): davidkel (Tue, 16 Oct 2018 07:16:11 GMT): david-kim-tpe (Tue, 16 Oct 2018 07:19:56 GMT): david-kim-tpe (Tue, 16 Oct 2018 07:20:09 GMT): david-kim-tpe (Tue, 16 Oct 2018 07:20:09 GMT): david-kim-tpe (Tue, 16 Oct 2018 07:20:09 GMT): david-kim-tpe (Tue, 16 Oct 2018 07:20:09 GMT): touchingsoil (Tue, 16 Oct 2018 07:32:28 GMT): rrishmawi (Tue, 16 Oct 2018 07:55:14 GMT): david-kim-tpe (Tue, 16 Oct 2018 08:12:33 GMT): Sasadara (Tue, 16 Oct 2018 08:20:04 GMT): KindleBitSoln (Tue, 16 Oct 2018 08:23:11 GMT): KindleBitSoln (Tue, 16 Oct 2018 08:23:11 GMT): KindleBitSoln (Tue, 16 Oct 2018 08:23:11 GMT): KindleBitSoln (Tue, 16 Oct 2018 08:24:47 GMT): rthatcher (Tue, 16 Oct 2018 08:25:28 GMT): rthatcher (Tue, 16 Oct 2018 08:42:37 GMT): david-kim-tpe (Tue, 16 Oct 2018 08:58:48 GMT): david-kim-tpe (Tue, 16 Oct 2018 08:58:48 GMT): david-kim-tpe (Tue, 16 Oct 2018 08:58:48 GMT): KindleBitSoln (Tue, 16 Oct 2018 09:05:56 GMT): KindleBitSoln (Tue, 16 Oct 2018 09:06:38 GMT): rthatcher (Tue, 16 Oct 2018 09:53:00 GMT): Sasadara (Tue, 16 Oct 2018 10:10:09 GMT): KindleBitSoln (Tue, 16 Oct 2018 13:12:16 GMT): KindleBitSoln (Tue, 16 Oct 2018 13:12:31 GMT): KindleBitSoln (Tue, 16 Oct 2018 13:13:04 GMT): KindleBitSoln (Tue, 16 Oct 2018 13:13:35 GMT): rrishmawi (Tue, 16 Oct 2018 13:18:47 GMT): rthatcher (Tue, 16 Oct 2018 13:28:46 GMT): rrishmawi (Tue, 16 Oct 2018 13:34:14 GMT): rthatcher (Tue, 16 Oct 2018 13:57:08 GMT): rthatcher (Tue, 16 Oct 2018 13:57:08 GMT): rrishmawi (Tue, 16 Oct 2018 14:14:15 GMT): vkercan (Tue, 16 Oct 2018 14:23:54 GMT): ColeBoudreau (Tue, 16 Oct 2018 14:44:44 GMT): silliman (Tue, 16 Oct 2018 15:14:52 GMT): danilojodas (Tue, 16 Oct 2018 15:34:34 GMT): rthatcher (Tue, 16 Oct 2018 15:42:01 GMT): rthatcher (Tue, 16 Oct 2018 15:42:01 GMT): ColeBoudreau (Tue, 16 Oct 2018 15:42:52 GMT): annumberhocker (Tue, 16 Oct 2018 20:32:34 GMT): davidkel (Tue, 16 Oct 2018 21:35:32 GMT): Ankona (Tue, 16 Oct 2018 22:21:35 GMT): KindlebitPhp (Wed, 17 Oct 2018 04:25:41 GMT): KindlebitPhp (Wed, 17 Oct 2018 04:25:57 GMT): anaswar (Wed, 17 Oct 2018 06:21:42 GMT): anaswar (Wed, 17 Oct 2018 06:21:42 GMT): anaswar (Wed, 17 Oct 2018 06:21:42 GMT): davidkel (Wed, 17 Oct 2018 06:27:16 GMT): anaswar (Wed, 17 Oct 2018 06:28:52 GMT): davidkel (Wed, 17 Oct 2018 06:33:09 GMT): anaswar (Wed, 17 Oct 2018 06:44:30 GMT): davidkel (Wed, 17 Oct 2018 06:53:29 GMT): anaswar (Wed, 17 Oct 2018 06:58:34 GMT): davidkel (Wed, 17 Oct 2018 06:59:59 GMT): anaswar (Wed, 17 Oct 2018 07:00:23 GMT): davidkel (Wed, 17 Oct 2018 07:02:01 GMT): GyoonKi (Wed, 17 Oct 2018 07:11:08 GMT): anaswar (Wed, 17 Oct 2018 07:24:30 GMT): davidkel (Wed, 17 Oct 2018 07:26:43 GMT): anaswar (Wed, 17 Oct 2018 07:28:03 GMT): anaswar (Wed, 17 Oct 2018 07:28:03 GMT): rthatcher (Wed, 17 Oct 2018 08:24:16 GMT): rthatcher (Wed, 17 Oct 2018 08:26:19 GMT): gauravgiri (Wed, 17 Oct 2018 08:57:04 GMT): mahoney1 (Wed, 17 Oct 2018 09:22:05 GMT): mahoney1 (Wed, 17 Oct 2018 09:22:05 GMT): mahoney1 (Wed, 17 Oct 2018 09:22:05 GMT): KindlebitPhp (Wed, 17 Oct 2018 09:40:58 GMT): KindlebitPhp (Wed, 17 Oct 2018 09:41:32 GMT): KindlebitPhp (Wed, 17 Oct 2018 09:42:26 GMT): CheeChyuan (Wed, 17 Oct 2018 09:46:31 GMT): rthatcher (Wed, 17 Oct 2018 09:52:02 GMT): CheeChyuan (Wed, 17 Oct 2018 09:53:48 GMT): edoardo_bdf (Wed, 17 Oct 2018 09:55:34 GMT): davidkel (Wed, 17 Oct 2018 10:07:26 GMT): edoardo_bdf (Wed, 17 Oct 2018 10:13:04 GMT): davidkel (Wed, 17 Oct 2018 10:17:17 GMT): davidkel (Wed, 17 Oct 2018 10:17:39 GMT): mahoney1 (Wed, 17 Oct 2018 10:20:13 GMT): CheeChyuan (Wed, 17 Oct 2018 10:21:08 GMT): rrishmawi (Wed, 17 Oct 2018 12:17:01 GMT): anaswar (Wed, 17 Oct 2018 14:45:40 GMT): anaswar (Wed, 17 Oct 2018 14:45:40 GMT): anaswar (Wed, 17 Oct 2018 14:45:40 GMT): anaswar (Wed, 17 Oct 2018 14:45:40 GMT): anaswar (Wed, 17 Oct 2018 14:45:40 GMT): anaswar (Wed, 17 Oct 2018 14:45:40 GMT): davidkel (Wed, 17 Oct 2018 15:11:58 GMT): davidkel (Wed, 17 Oct 2018 15:11:58 GMT): vanclief (Wed, 17 Oct 2018 16:18:50 GMT): rthatcher (Wed, 17 Oct 2018 16:35:36 GMT): vanclief (Wed, 17 Oct 2018 16:58:15 GMT): vanclief (Wed, 17 Oct 2018 17:02:23 GMT): vanclief (Wed, 17 Oct 2018 17:05:50 GMT): rthatcher (Wed, 17 Oct 2018 17:11:57 GMT): vanclief (Wed, 17 Oct 2018 17:21:13 GMT): Renick (Wed, 17 Oct 2018 17:39:46 GMT): vanclief (Wed, 17 Oct 2018 17:50:36 GMT): vanclief (Wed, 17 Oct 2018 17:50:36 GMT): vanclief (Wed, 17 Oct 2018 17:50:36 GMT): Renick (Wed, 17 Oct 2018 19:02:57 GMT): dparadiz (Wed, 17 Oct 2018 20:48:31 GMT): jtwalker2000 (Wed, 17 Oct 2018 23:45:12 GMT): KindlebitPhp (Thu, 18 Oct 2018 06:03:25 GMT): KindlebitPhp (Thu, 18 Oct 2018 06:03:50 GMT): KindlebitPhp (Thu, 18 Oct 2018 06:04:03 GMT): rthatcher (Thu, 18 Oct 2018 08:16:01 GMT): rthatcher (Thu, 18 Oct 2018 08:16:01 GMT): rthatcher (Thu, 18 Oct 2018 08:21:07 GMT): KindlebitPhp (Thu, 18 Oct 2018 08:28:18 GMT): KindlebitPhp (Thu, 18 Oct 2018 08:28:53 GMT): KindlebitPhp (Thu, 18 Oct 2018 08:29:10 GMT): rrishmawi (Thu, 18 Oct 2018 09:03:24 GMT): mahoney1 (Thu, 18 Oct 2018 09:06:07 GMT): sushmitha (Thu, 18 Oct 2018 09:42:27 GMT): rthatcher (Thu, 18 Oct 2018 09:59:27 GMT): CheeChyuan (Thu, 18 Oct 2018 10:17:20 GMT): CheeChyuan (Thu, 18 Oct 2018 10:19:37 GMT): mahoney1 (Thu, 18 Oct 2018 10:39:55 GMT): CheeChyuan (Thu, 18 Oct 2018 10:55:18 GMT): ColeBoudreau (Thu, 18 Oct 2018 16:58:00 GMT): ColeBoudreau (Thu, 18 Oct 2018 17:06:04 GMT): davidkel (Thu, 18 Oct 2018 17:06:46 GMT): ColeBoudreau (Thu, 18 Oct 2018 17:08:59 GMT): ColeBoudreau (Thu, 18 Oct 2018 17:09:49 GMT): davidkel (Thu, 18 Oct 2018 17:10:49 GMT): ColeBoudreau (Thu, 18 Oct 2018 17:11:21 GMT): ColeBoudreau (Thu, 18 Oct 2018 17:18:38 GMT): davidkel (Thu, 18 Oct 2018 17:18:57 GMT): ColeBoudreau (Thu, 18 Oct 2018 17:20:50 GMT): ColeBoudreau (Thu, 18 Oct 2018 17:24:12 GMT): davidkel (Thu, 18 Oct 2018 17:25:06 GMT): ColeBoudreau (Thu, 18 Oct 2018 17:25:56 GMT): ColeBoudreau (Thu, 18 Oct 2018 17:49:52 GMT): Renick (Thu, 18 Oct 2018 19:53:47 GMT): ronaldlong46 (Thu, 18 Oct 2018 21:21:33 GMT): ronaldlong46 (Thu, 18 Oct 2018 21:22:06 GMT): Sasadara (Fri, 19 Oct 2018 03:18:17 GMT): MabelOza (Fri, 19 Oct 2018 04:41:28 GMT): MabelOza (Fri, 19 Oct 2018 04:42:22 GMT): davidkel (Fri, 19 Oct 2018 07:43:28 GMT): davidkel (Fri, 19 Oct 2018 07:44:21 GMT): rthatcher (Fri, 19 Oct 2018 08:05:25 GMT): rthatcher (Fri, 19 Oct 2018 08:08:42 GMT): Sasadara (Fri, 19 Oct 2018 08:26:25 GMT): Sasadara (Fri, 19 Oct 2018 08:26:25 GMT): Sasadara (Fri, 19 Oct 2018 08:26:25 GMT): touchingsoil (Fri, 19 Oct 2018 09:37:16 GMT): touchingsoil (Fri, 19 Oct 2018 09:37:16 GMT): touchingsoil (Fri, 19 Oct 2018 09:37:16 GMT): touchingsoil (Fri, 19 Oct 2018 09:37:16 GMT): davidkel (Fri, 19 Oct 2018 09:55:50 GMT): kingpasan (Fri, 19 Oct 2018 10:02:24 GMT): kingpasan (Fri, 19 Oct 2018 10:07:44 GMT): adnanabbasktt (Fri, 19 Oct 2018 10:58:52 GMT): rthatcher (Fri, 19 Oct 2018 11:31:56 GMT): adnanabbasktt (Fri, 19 Oct 2018 11:43:57 GMT): rthatcher (Fri, 19 Oct 2018 11:54:50 GMT): touchingsoil (Fri, 19 Oct 2018 12:04:30 GMT): MikeRichardson (Fri, 19 Oct 2018 13:13:58 GMT): MikeRichardson (Fri, 19 Oct 2018 13:13:58 GMT): MikeRichardson (Fri, 19 Oct 2018 13:13:58 GMT): MikeRichardson (Fri, 19 Oct 2018 13:13:58 GMT): rrishmawi (Fri, 19 Oct 2018 13:23:07 GMT): davidkel (Fri, 19 Oct 2018 13:55:39 GMT): davidkel (Fri, 19 Oct 2018 13:56:49 GMT): varunajmera (Fri, 19 Oct 2018 14:05:28 GMT): varunajmera (Fri, 19 Oct 2018 14:05:43 GMT): varunajmera (Fri, 19 Oct 2018 14:05:58 GMT): varunajmera (Fri, 19 Oct 2018 14:06:06 GMT): MikeRichardson (Fri, 19 Oct 2018 14:12:37 GMT): MikeRichardson (Fri, 19 Oct 2018 14:12:37 GMT): MikeRichardson (Fri, 19 Oct 2018 14:12:37 GMT): davidkel (Fri, 19 Oct 2018 14:17:08 GMT): mahoney1 (Fri, 19 Oct 2018 14:29:46 GMT): varunajmera (Fri, 19 Oct 2018 14:35:15 GMT): varunajmera (Fri, 19 Oct 2018 14:36:47 GMT): varunajmera (Fri, 19 Oct 2018 14:36:49 GMT): rrishmawi (Fri, 19 Oct 2018 15:12:00 GMT): davidkel (Fri, 19 Oct 2018 15:12:49 GMT): rrishmawi (Fri, 19 Oct 2018 15:14:38 GMT): mahoney1 (Fri, 19 Oct 2018 15:22:11 GMT): mahoney1 (Fri, 19 Oct 2018 15:22:11 GMT): mahoney1 (Fri, 19 Oct 2018 15:22:11 GMT): MikeRichardson (Fri, 19 Oct 2018 15:32:26 GMT): varunajmera (Fri, 19 Oct 2018 16:45:09 GMT): varunajmera (Fri, 19 Oct 2018 16:45:39 GMT): davidkel (Fri, 19 Oct 2018 16:58:01 GMT): varunajmera (Fri, 19 Oct 2018 16:59:19 GMT): davidkel (Fri, 19 Oct 2018 17:00:22 GMT): davidkel (Fri, 19 Oct 2018 17:00:22 GMT): varunajmera (Fri, 19 Oct 2018 17:02:05 GMT): varunajmera (Fri, 19 Oct 2018 17:02:14 GMT): varunajmera (Fri, 19 Oct 2018 17:02:37 GMT): varunajmera (Fri, 19 Oct 2018 17:02:49 GMT): varunajmera (Fri, 19 Oct 2018 17:02:51 GMT): davidkel (Fri, 19 Oct 2018 17:03:00 GMT): varunajmera (Fri, 19 Oct 2018 17:03:47 GMT): davidkel (Fri, 19 Oct 2018 17:04:05 GMT): varunajmera (Fri, 19 Oct 2018 17:04:07 GMT): varunajmera (Fri, 19 Oct 2018 17:04:37 GMT): davidkel (Fri, 19 Oct 2018 17:05:09 GMT): varunajmera (Fri, 19 Oct 2018 17:07:10 GMT): varunajmera (Fri, 19 Oct 2018 17:07:11 GMT): varunajmera (Fri, 19 Oct 2018 17:07:29 GMT): varunajmera (Fri, 19 Oct 2018 17:07:35 GMT): varunajmera (Fri, 19 Oct 2018 17:08:17 GMT): davidkel (Fri, 19 Oct 2018 17:08:19 GMT): varunajmera (Fri, 19 Oct 2018 17:09:19 GMT): varunajmera (Fri, 19 Oct 2018 17:09:22 GMT): varunajmera (Fri, 19 Oct 2018 17:09:48 GMT): davidkel (Fri, 19 Oct 2018 17:11:45 GMT): varunajmera (Fri, 19 Oct 2018 17:13:01 GMT): varunajmera (Fri, 19 Oct 2018 17:15:24 GMT): varunajmera (Fri, 19 Oct 2018 17:15:43 GMT): varunajmera (Fri, 19 Oct 2018 17:15:45 GMT): mahoney1 (Fri, 19 Oct 2018 17:16:38 GMT): mahoney1 (Fri, 19 Oct 2018 17:21:53 GMT): mahoney1 (Fri, 19 Oct 2018 17:21:53 GMT): mahoney1 (Fri, 19 Oct 2018 17:21:53 GMT): varunajmera (Fri, 19 Oct 2018 17:24:45 GMT): varunajmera (Fri, 19 Oct 2018 17:24:51 GMT): varunajmera (Fri, 19 Oct 2018 17:25:07 GMT): varunajmera (Fri, 19 Oct 2018 17:25:22 GMT): varunajmera (Fri, 19 Oct 2018 17:25:41 GMT): JSilva (Fri, 19 Oct 2018 17:34:24 GMT): varunajmera (Fri, 19 Oct 2018 17:35:42 GMT): varunajmera (Fri, 19 Oct 2018 17:35:55 GMT): JSilva (Fri, 19 Oct 2018 17:42:04 GMT): varunajmera (Fri, 19 Oct 2018 17:51:26 GMT): varunajmera (Fri, 19 Oct 2018 17:51:34 GMT): varunajmera (Fri, 19 Oct 2018 17:53:44 GMT): varunajmera (Fri, 19 Oct 2018 17:59:22 GMT): gauravnavgire (Fri, 19 Oct 2018 18:39:47 GMT): AsifJaved (Fri, 19 Oct 2018 18:50:26 GMT): devlintrace (Fri, 19 Oct 2018 18:59:47 GMT): ethode (Sat, 20 Oct 2018 01:50:48 GMT): kazansky (Sat, 20 Oct 2018 04:05:01 GMT): sushmitha (Sat, 20 Oct 2018 09:53:34 GMT): sushmitha (Sat, 20 Oct 2018 09:56:17 GMT): AsifJaved (Sat, 20 Oct 2018 10:38:44 GMT): AsifJaved (Sat, 20 Oct 2018 10:38:44 GMT): shiftby (Sat, 20 Oct 2018 10:45:54 GMT): WenXingWang (Sat, 20 Oct 2018 14:56:49 GMT): WenXingWang (Sat, 20 Oct 2018 14:57:08 GMT): WenXingWang (Sat, 20 Oct 2018 15:01:11 GMT): Ammar8573 (Sat, 20 Oct 2018 17:50:53 GMT): Ammar8573 (Sat, 20 Oct 2018 18:01:34 GMT): yusra (Sun, 21 Oct 2018 06:41:17 GMT): Abdul_khaliq (Sun, 21 Oct 2018 10:44:29 GMT): Abdul_khaliq (Sun, 21 Oct 2018 10:45:16 GMT): JohnSnow (Sun, 21 Oct 2018 22:42:35 GMT): patrick4321 (Mon, 22 Oct 2018 04:52:07 GMT): anand.balagopalan (Mon, 22 Oct 2018 04:55:50 GMT): CheeChyuan (Mon, 22 Oct 2018 06:46:04 GMT): anaswar (Mon, 22 Oct 2018 07:00:37 GMT): rthatcher (Mon, 22 Oct 2018 08:15:14 GMT): KindlebitPhp (Mon, 22 Oct 2018 08:24:04 GMT): CheeChyuan (Mon, 22 Oct 2018 08:30:21 GMT): rthatcher (Mon, 22 Oct 2018 08:31:41 GMT): rthatcher (Mon, 22 Oct 2018 08:38:13 GMT): anand.balagopalan (Mon, 22 Oct 2018 08:51:33 GMT): anand.balagopalan (Mon, 22 Oct 2018 08:51:52 GMT): rthatcher (Mon, 22 Oct 2018 09:11:23 GMT): mahoney1 (Mon, 22 Oct 2018 09:16:31 GMT): CheeChyuan (Mon, 22 Oct 2018 09:32:09 GMT): mahoney1 (Mon, 22 Oct 2018 09:38:05 GMT): mahoney1 (Mon, 22 Oct 2018 09:38:05 GMT): KindlebitPhp (Mon, 22 Oct 2018 09:46:55 GMT): KindlebitPhp (Mon, 22 Oct 2018 10:03:53 GMT): sushmitha (Mon, 22 Oct 2018 10:44:17 GMT): mahoney1 (Mon, 22 Oct 2018 10:58:51 GMT): KindlebitPhp (Mon, 22 Oct 2018 11:52:15 GMT): KindlebitPhp (Mon, 22 Oct 2018 11:52:15 GMT): KindlebitPhp (Mon, 22 Oct 2018 11:52:15 GMT): jonlee300 (Mon, 22 Oct 2018 12:14:19 GMT): rthatcher (Mon, 22 Oct 2018 13:46:04 GMT): WenXingWang (Mon, 22 Oct 2018 17:09:45 GMT): WenXingWang (Mon, 22 Oct 2018 17:09:45 GMT): dselman (Mon, 22 Oct 2018 18:19:46 GMT): Abhishek_Jagwani (Mon, 22 Oct 2018 20:09:43 GMT): Abhishek_Jagwani (Mon, 22 Oct 2018 20:09:46 GMT): jonlee300 (Mon, 22 Oct 2018 20:50:10 GMT): jonlee300 (Mon, 22 Oct 2018 20:59:32 GMT): joaquimpedrooliveira (Mon, 22 Oct 2018 21:08:09 GMT): labcoinpoc (Tue, 23 Oct 2018 01:21:13 GMT): labcoinpoc (Tue, 23 Oct 2018 01:24:29 GMT): sooraj-citta (Tue, 23 Oct 2018 06:37:23 GMT): Techie (Tue, 23 Oct 2018 06:38:57 GMT): Techie (Tue, 23 Oct 2018 06:40:12 GMT): CheeChyuan (Tue, 23 Oct 2018 06:41:46 GMT): labcoinpoc (Tue, 23 Oct 2018 06:59:28 GMT): davidkel (Tue, 23 Oct 2018 07:44:44 GMT): eidand (Tue, 23 Oct 2018 07:53:10 GMT): Techie (Tue, 23 Oct 2018 08:03:13 GMT): Techie (Tue, 23 Oct 2018 08:03:13 GMT): davidkel (Tue, 23 Oct 2018 08:06:38 GMT): Techie (Tue, 23 Oct 2018 08:11:14 GMT): Techie (Tue, 23 Oct 2018 08:12:48 GMT): davidkel (Tue, 23 Oct 2018 08:13:51 GMT): Techie (Tue, 23 Oct 2018 08:14:23 GMT): davidkel (Tue, 23 Oct 2018 08:16:34 GMT): davidkel (Tue, 23 Oct 2018 08:31:27 GMT): mahoney1 (Tue, 23 Oct 2018 09:19:02 GMT): KindlebitPhp (Tue, 23 Oct 2018 09:25:46 GMT): KindlebitPhp (Tue, 23 Oct 2018 09:25:46 GMT): davidkel (Tue, 23 Oct 2018 09:35:49 GMT): mhs22 (Tue, 23 Oct 2018 09:37:53 GMT): KindlebitPhp (Tue, 23 Oct 2018 09:46:22 GMT): nnikka (Tue, 23 Oct 2018 09:50:58 GMT): davidkel (Tue, 23 Oct 2018 09:55:37 GMT): KindlebitPhp (Tue, 23 Oct 2018 09:59:00 GMT): KindlebitPhp (Tue, 23 Oct 2018 09:59:00 GMT): davidkel (Tue, 23 Oct 2018 09:59:33 GMT): KindlebitPhp (Tue, 23 Oct 2018 10:00:10 GMT): KindlebitPhp (Tue, 23 Oct 2018 10:00:47 GMT): KindlebitPhp (Tue, 23 Oct 2018 10:01:25 GMT): KindlebitPhp (Tue, 23 Oct 2018 10:01:25 GMT): davidkel (Tue, 23 Oct 2018 10:08:16 GMT): KindlebitPhp (Tue, 23 Oct 2018 10:12:27 GMT): KindlebitPhp (Tue, 23 Oct 2018 10:12:41 GMT): benjamin.verhaegen (Tue, 23 Oct 2018 10:54:08 GMT): benjamin.verhaegen (Tue, 23 Oct 2018 10:54:45 GMT): mahoney1 (Tue, 23 Oct 2018 11:12:38 GMT): KindlebitPhp (Tue, 23 Oct 2018 11:16:57 GMT): mahoney1 (Tue, 23 Oct 2018 11:21:48 GMT): benjamin.verhaegen (Tue, 23 Oct 2018 11:25:50 GMT): joaquimpedrooliveira (Tue, 23 Oct 2018 11:53:47 GMT): touchingsoil (Tue, 23 Oct 2018 12:07:13 GMT): KindlebitPhp (Tue, 23 Oct 2018 13:12:11 GMT): KindlebitPhp (Tue, 23 Oct 2018 13:12:46 GMT): KindlebitPhp (Tue, 23 Oct 2018 13:12:54 GMT): mahoney1 (Tue, 23 Oct 2018 13:18:54 GMT): JeanParpaillon (Tue, 23 Oct 2018 15:09:51 GMT): jtwalker2000 (Tue, 23 Oct 2018 16:12:34 GMT): aakzubaidi (Wed, 24 Oct 2018 00:27:54 GMT): aakzubaidi (Wed, 24 Oct 2018 00:27:54 GMT): wangdong (Wed, 24 Oct 2018 03:15:24 GMT): wangdong (Wed, 24 Oct 2018 03:16:02 GMT): wangdong (Wed, 24 Oct 2018 03:16:12 GMT): wangdong (Wed, 24 Oct 2018 03:16:42 GMT): wangdong (Wed, 24 Oct 2018 03:17:40 GMT): wangdong (Wed, 24 Oct 2018 03:17:44 GMT): wangdong (Wed, 24 Oct 2018 03:17:55 GMT): jonlee300 (Wed, 24 Oct 2018 04:31:53 GMT): JP (Wed, 24 Oct 2018 06:22:35 GMT): JP (Wed, 24 Oct 2018 06:24:20 GMT): gauravgiri (Wed, 24 Oct 2018 06:35:36 GMT): davidkel (Wed, 24 Oct 2018 07:08:44 GMT): davidkel (Wed, 24 Oct 2018 07:10:11 GMT): wangdong (Wed, 24 Oct 2018 07:11:17 GMT): davidkel (Wed, 24 Oct 2018 07:12:51 GMT): jonlee300 (Wed, 24 Oct 2018 07:39:30 GMT): jonlee300 (Wed, 24 Oct 2018 07:39:30 GMT): touchingsoil (Wed, 24 Oct 2018 07:41:17 GMT): touchingsoil (Wed, 24 Oct 2018 07:41:17 GMT): touchingsoil (Wed, 24 Oct 2018 07:41:17 GMT): touchingsoil (Wed, 24 Oct 2018 07:41:17 GMT): laurasp (Wed, 24 Oct 2018 07:58:11 GMT): rrishmawi (Wed, 24 Oct 2018 08:24:58 GMT): rthatcher (Wed, 24 Oct 2018 08:25:08 GMT): JP (Wed, 24 Oct 2018 08:34:57 GMT): rthatcher (Wed, 24 Oct 2018 08:37:03 GMT): JP (Wed, 24 Oct 2018 08:39:53 GMT): JP (Wed, 24 Oct 2018 08:40:31 GMT): rrishmawi (Wed, 24 Oct 2018 08:42:00 GMT): rthatcher (Wed, 24 Oct 2018 08:45:19 GMT): JP (Wed, 24 Oct 2018 08:45:39 GMT): gauravgiri (Wed, 24 Oct 2018 08:45:39 GMT): rthatcher (Wed, 24 Oct 2018 08:53:05 GMT): rthatcher (Wed, 24 Oct 2018 08:56:50 GMT): rrishmawi (Wed, 24 Oct 2018 09:00:00 GMT): mahoney1 (Wed, 24 Oct 2018 09:00:10 GMT): rthatcher (Wed, 24 Oct 2018 09:09:55 GMT): rthatcher (Wed, 24 Oct 2018 09:09:55 GMT): rthatcher (Wed, 24 Oct 2018 09:09:55 GMT): mahoney1 (Wed, 24 Oct 2018 09:15:29 GMT): JP (Wed, 24 Oct 2018 09:16:57 GMT): rrishmawi (Wed, 24 Oct 2018 09:19:41 GMT): rrishmawi (Wed, 24 Oct 2018 09:19:41 GMT): rthatcher (Wed, 24 Oct 2018 09:25:10 GMT): rrishmawi (Wed, 24 Oct 2018 09:27:55 GMT): umlspec (Wed, 24 Oct 2018 10:26:37 GMT): mahoney1 (Wed, 24 Oct 2018 11:16:41 GMT): ShaikSharuk (Wed, 24 Oct 2018 11:28:02 GMT): ShaikSharuk (Wed, 24 Oct 2018 11:42:40 GMT): mahoney1 (Wed, 24 Oct 2018 11:57:02 GMT): mahoney1 (Wed, 24 Oct 2018 11:57:02 GMT): ShaikSharuk (Wed, 24 Oct 2018 12:19:22 GMT): mahoney1 (Wed, 24 Oct 2018 12:41:06 GMT): mahoney1 (Wed, 24 Oct 2018 12:41:06 GMT): EricPetruzzelli (Wed, 24 Oct 2018 12:53:12 GMT): ColeBoudreau (Wed, 24 Oct 2018 13:39:34 GMT): JSilva (Wed, 24 Oct 2018 14:30:02 GMT): edoardo_bdf (Wed, 24 Oct 2018 15:31:49 GMT): gauravgiri (Wed, 24 Oct 2018 15:43:56 GMT): joaquimpedrooliveira (Wed, 24 Oct 2018 18:09:06 GMT): joaquimpedrooliveira (Wed, 24 Oct 2018 18:09:06 GMT): joaquimpedrooliveira (Wed, 24 Oct 2018 18:12:13 GMT): joaquimpedrooliveira (Wed, 24 Oct 2018 18:13:11 GMT): dselman (Wed, 24 Oct 2018 19:57:37 GMT): davidkel (Wed, 24 Oct 2018 21:58:31 GMT): davidkel (Wed, 24 Oct 2018 22:06:48 GMT): gauravgiri (Thu, 25 Oct 2018 04:31:03 GMT): gauravgiri (Thu, 25 Oct 2018 04:32:02 GMT): aphoniko (Thu, 25 Oct 2018 05:42:35 GMT): aphoniko (Thu, 25 Oct 2018 05:47:20 GMT): touchingsoil (Thu, 25 Oct 2018 05:56:12 GMT): ShaikSharuk (Thu, 25 Oct 2018 06:28:36 GMT): rubi_1432 (Thu, 25 Oct 2018 06:39:23 GMT): davidkel (Thu, 25 Oct 2018 07:03:15 GMT): davidkel (Thu, 25 Oct 2018 07:03:15 GMT): tahaf10 (Thu, 25 Oct 2018 07:09:35 GMT): tahaf10 (Thu, 25 Oct 2018 07:09:35 GMT): ShaikSharuk (Thu, 25 Oct 2018 07:22:43 GMT): davidkel (Thu, 25 Oct 2018 07:54:32 GMT): rthatcher (Thu, 25 Oct 2018 08:14:16 GMT): rthatcher (Thu, 25 Oct 2018 08:18:04 GMT): rthatcher (Thu, 25 Oct 2018 08:29:52 GMT): CorentinPacaud (Thu, 25 Oct 2018 08:38:50 GMT): rubi_1432 (Thu, 25 Oct 2018 08:56:10 GMT): rubi_1432 (Thu, 25 Oct 2018 08:59:08 GMT): rthatcher (Thu, 25 Oct 2018 08:59:53 GMT): CorentinPacaud (Thu, 25 Oct 2018 09:05:01 GMT): CorentinPacaud (Thu, 25 Oct 2018 09:05:32 GMT): ShaikSharuk (Thu, 25 Oct 2018 09:06:12 GMT): rthatcher (Thu, 25 Oct 2018 09:07:27 GMT): CorentinPacaud (Thu, 25 Oct 2018 09:09:23 GMT): CorentinPacaud (Thu, 25 Oct 2018 09:09:23 GMT): rubi_1432 (Thu, 25 Oct 2018 09:12:32 GMT): rthatcher (Thu, 25 Oct 2018 09:27:16 GMT): mahoney1 (Thu, 25 Oct 2018 09:27:53 GMT): rthatcher (Thu, 25 Oct 2018 09:29:12 GMT): CorentinPacaud (Thu, 25 Oct 2018 09:31:53 GMT): Nihcep (Thu, 25 Oct 2018 10:00:59 GMT): Nihcep (Thu, 25 Oct 2018 10:01:28 GMT): mahoney1 (Thu, 25 Oct 2018 10:38:50 GMT): ShaikSharuk (Thu, 25 Oct 2018 10:59:35 GMT): CorentinPacaud (Thu, 25 Oct 2018 11:20:04 GMT): rthatcher (Thu, 25 Oct 2018 12:56:38 GMT): rthatcher (Thu, 25 Oct 2018 12:56:38 GMT): CorentinPacaud (Thu, 25 Oct 2018 13:01:52 GMT): Dima (Thu, 25 Oct 2018 14:05:29 GMT): JSilva (Thu, 25 Oct 2018 14:24:19 GMT): mahoney1 (Thu, 25 Oct 2018 15:30:20 GMT): mahoney1 (Thu, 25 Oct 2018 15:57:13 GMT): WenXingWang (Thu, 25 Oct 2018 16:05:27 GMT): vivganes (Thu, 25 Oct 2018 16:23:32 GMT): aphoniko (Thu, 25 Oct 2018 16:24:27 GMT): aphoniko (Thu, 25 Oct 2018 16:24:27 GMT): mahoney1 (Thu, 25 Oct 2018 16:36:14 GMT): mahoney1 (Thu, 25 Oct 2018 16:36:14 GMT): WenXingWang (Thu, 25 Oct 2018 16:49:00 GMT): WenXingWang (Thu, 25 Oct 2018 16:51:19 GMT): mahoney1 (Thu, 25 Oct 2018 18:17:55 GMT): mahoney1 (Thu, 25 Oct 2018 18:17:55 GMT): adrianbberg (Fri, 26 Oct 2018 01:35:07 GMT): adrianbberg (Fri, 26 Oct 2018 01:36:45 GMT): adrianbberg (Fri, 26 Oct 2018 01:36:45 GMT): SeonKim (Fri, 26 Oct 2018 01:44:25 GMT): rubi_1432 (Fri, 26 Oct 2018 04:48:47 GMT): rubi_1432 (Fri, 26 Oct 2018 07:07:00 GMT): rubi_1432 (Fri, 26 Oct 2018 07:07:00 GMT): rubi_1432 (Fri, 26 Oct 2018 07:07:00 GMT): rubi_1432 (Fri, 26 Oct 2018 07:07:00 GMT): jonlee300 (Fri, 26 Oct 2018 07:52:38 GMT): jonlee300 (Fri, 26 Oct 2018 07:52:38 GMT): jonlee300 (Fri, 26 Oct 2018 08:02:43 GMT): ArchanGanguly (Fri, 26 Oct 2018 08:03:23 GMT): ArchanGanguly (Fri, 26 Oct 2018 08:03:47 GMT): mahoney1 (Fri, 26 Oct 2018 08:30:21 GMT): Nihcep (Fri, 26 Oct 2018 08:31:10 GMT): mahoney1 (Fri, 26 Oct 2018 08:33:47 GMT): mahoney1 (Fri, 26 Oct 2018 08:35:12 GMT): mahoney1 (Fri, 26 Oct 2018 08:41:16 GMT): mahoney1 (Fri, 26 Oct 2018 08:41:16 GMT): mahoney1 (Fri, 26 Oct 2018 08:41:16 GMT): Nihcep (Fri, 26 Oct 2018 08:43:17 GMT): jonlee300 (Fri, 26 Oct 2018 08:46:29 GMT): mahoney1 (Fri, 26 Oct 2018 08:46:44 GMT): mahoney1 (Fri, 26 Oct 2018 08:46:44 GMT): mahoney1 (Fri, 26 Oct 2018 08:46:44 GMT): mahoney1 (Fri, 26 Oct 2018 08:46:44 GMT): jonlee300 (Fri, 26 Oct 2018 08:46:52 GMT): jonlee300 (Fri, 26 Oct 2018 08:47:37 GMT): mahoney1 (Fri, 26 Oct 2018 08:49:14 GMT): mahoney1 (Fri, 26 Oct 2018 08:49:14 GMT): mahoney1 (Fri, 26 Oct 2018 08:53:57 GMT): jonlee300 (Fri, 26 Oct 2018 08:55:59 GMT): Nihcep (Fri, 26 Oct 2018 09:05:44 GMT): mahoney1 (Fri, 26 Oct 2018 09:05:48 GMT): jonlee300 (Fri, 26 Oct 2018 09:09:16 GMT): jonlee300 (Fri, 26 Oct 2018 09:12:47 GMT): rubi_1432 (Fri, 26 Oct 2018 09:23:36 GMT): rubi_1432 (Fri, 26 Oct 2018 09:23:36 GMT): rubi_1432 (Fri, 26 Oct 2018 09:34:48 GMT): rubi_1432 (Fri, 26 Oct 2018 09:35:35 GMT): rubi_1432 (Fri, 26 Oct 2018 09:36:29 GMT): Nihcep (Fri, 26 Oct 2018 09:49:37 GMT): Nihcep (Fri, 26 Oct 2018 09:51:16 GMT): Nihcep (Fri, 26 Oct 2018 09:51:31 GMT): Nihcep (Fri, 26 Oct 2018 09:52:47 GMT): mahoney1 (Fri, 26 Oct 2018 10:11:32 GMT): mahoney1 (Fri, 26 Oct 2018 10:12:04 GMT): mahoney1 (Fri, 26 Oct 2018 10:12:04 GMT): Nihcep (Fri, 26 Oct 2018 10:12:59 GMT): rubi_1432 (Fri, 26 Oct 2018 10:15:41 GMT): rubi_1432 (Fri, 26 Oct 2018 10:16:19 GMT): rubi_1432 (Fri, 26 Oct 2018 10:19:33 GMT): rubi_1432 (Fri, 26 Oct 2018 10:19:33 GMT): rubi_1432 (Fri, 26 Oct 2018 10:20:46 GMT): rubi_1432 (Fri, 26 Oct 2018 10:20:46 GMT): Nihcep (Fri, 26 Oct 2018 10:36:49 GMT): Nihcep (Fri, 26 Oct 2018 10:36:59 GMT): mahoney1 (Fri, 26 Oct 2018 10:37:05 GMT): mahoney1 (Fri, 26 Oct 2018 10:38:49 GMT): Nihcep (Fri, 26 Oct 2018 10:46:58 GMT): rubi_1432 (Fri, 26 Oct 2018 10:58:44 GMT): rubi_1432 (Fri, 26 Oct 2018 10:58:44 GMT): rubi_1432 (Fri, 26 Oct 2018 10:58:44 GMT): rubi_1432 (Fri, 26 Oct 2018 10:58:44 GMT): rubi_1432 (Fri, 26 Oct 2018 10:58:44 GMT): rubi_1432 (Fri, 26 Oct 2018 12:53:43 GMT): ColeBoudreau (Fri, 26 Oct 2018 13:09:36 GMT): mahoney1 (Fri, 26 Oct 2018 14:22:04 GMT): mahoney1 (Fri, 26 Oct 2018 14:22:04 GMT): nemo 8 (Fri, 26 Oct 2018 14:25:34 GMT): mahoney1 (Fri, 26 Oct 2018 14:46:38 GMT): VadimInshakov (Fri, 26 Oct 2018 14:57:50 GMT): JSilva (Fri, 26 Oct 2018 15:10:04 GMT): JSilva (Fri, 26 Oct 2018 15:16:39 GMT): JSilva (Fri, 26 Oct 2018 15:16:39 GMT): JSilva (Fri, 26 Oct 2018 15:16:39 GMT): nemo 8 (Fri, 26 Oct 2018 15:25:19 GMT): nemo 8 (Fri, 26 Oct 2018 15:25:28 GMT): VadimInshakov (Fri, 26 Oct 2018 16:07:47 GMT): mahoney1 (Fri, 26 Oct 2018 16:21:44 GMT): mahoney1 (Fri, 26 Oct 2018 16:38:07 GMT): mahoney1 (Fri, 26 Oct 2018 16:38:07 GMT): VadimInshakov (Fri, 26 Oct 2018 17:07:20 GMT): mahoney1 (Fri, 26 Oct 2018 17:16:02 GMT): vidor (Fri, 26 Oct 2018 17:32:50 GMT): davidkel (Fri, 26 Oct 2018 17:39:18 GMT): davidkel (Fri, 26 Oct 2018 17:39:18 GMT): jeka_gompa (Fri, 26 Oct 2018 23:07:38 GMT): kcampion (Sat, 27 Oct 2018 00:10:51 GMT): adnanabbasktt (Sat, 27 Oct 2018 05:09:43 GMT): jonlee300 (Sat, 27 Oct 2018 05:14:57 GMT): sooraj-citta (Sat, 27 Oct 2018 06:44:08 GMT): sooraj-citta (Sat, 27 Oct 2018 06:48:44 GMT): sooraj-citta (Sat, 27 Oct 2018 06:48:44 GMT): Skprog (Sat, 27 Oct 2018 06:48:53 GMT): KindleBitSoln (Sat, 27 Oct 2018 07:53:36 GMT): KindleBitSoln (Sat, 27 Oct 2018 10:03:26 GMT): pravindia (Sat, 27 Oct 2018 12:48:12 GMT): pravindia (Sat, 27 Oct 2018 12:48:12 GMT): Techievena (Sat, 27 Oct 2018 13:25:07 GMT): Techievena (Sat, 27 Oct 2018 13:25:23 GMT): Techievena (Sat, 27 Oct 2018 13:25:45 GMT): Techievena (Sat, 27 Oct 2018 13:26:03 GMT): Techievena (Sat, 27 Oct 2018 13:26:14 GMT): Techievena (Sat, 27 Oct 2018 13:26:29 GMT): jonlee300 (Sun, 28 Oct 2018 13:57:58 GMT): davidkel (Sun, 28 Oct 2018 14:45:29 GMT): anant706 (Sun, 28 Oct 2018 16:19:12 GMT): anant706 (Sun, 28 Oct 2018 16:19:35 GMT): davidkel (Sun, 28 Oct 2018 18:38:37 GMT): ruairih (Sun, 28 Oct 2018 19:18:52 GMT): ruairih (Sun, 28 Oct 2018 19:20:25 GMT): ruairih (Sun, 28 Oct 2018 19:20:30 GMT): ruairih (Sun, 28 Oct 2018 19:20:34 GMT): anant706 (Sun, 28 Oct 2018 22:30:36 GMT): labcoinpoc (Mon, 29 Oct 2018 01:19:40 GMT): mrudav.shukla (Mon, 29 Oct 2018 05:43:19 GMT): davidkel (Mon, 29 Oct 2018 07:52:08 GMT): rthatcher (Mon, 29 Oct 2018 09:17:02 GMT): rthatcher (Mon, 29 Oct 2018 09:27:07 GMT): mahoney1 (Mon, 29 Oct 2018 10:08:29 GMT): mahoney1 (Mon, 29 Oct 2018 10:16:56 GMT): mahoney1 (Mon, 29 Oct 2018 10:16:56 GMT): mrudav.shukla (Mon, 29 Oct 2018 11:21:32 GMT): giacomo.minighin (Mon, 29 Oct 2018 11:53:10 GMT): ShaikSharuk (Mon, 29 Oct 2018 13:06:05 GMT): Rochendiil (Mon, 29 Oct 2018 13:23:30 GMT): Rochendiil (Mon, 29 Oct 2018 13:25:20 GMT): ShaikSharuk (Mon, 29 Oct 2018 13:27:03 GMT): Rochendiil (Mon, 29 Oct 2018 13:28:34 GMT): Rochendiil (Mon, 29 Oct 2018 13:28:41 GMT): jonlee300 (Mon, 29 Oct 2018 13:30:14 GMT): Rochendiil (Mon, 29 Oct 2018 13:31:53 GMT): Rochendiil (Mon, 29 Oct 2018 13:31:53 GMT): Rochendiil (Mon, 29 Oct 2018 13:32:02 GMT): ruairih (Mon, 29 Oct 2018 13:33:20 GMT): jonlee300 (Mon, 29 Oct 2018 13:48:52 GMT): mahoney1 (Mon, 29 Oct 2018 14:01:04 GMT): mahoney1 (Mon, 29 Oct 2018 14:01:04 GMT): ShaikSharuk (Mon, 29 Oct 2018 14:01:42 GMT): jonlee300 (Mon, 29 Oct 2018 14:02:36 GMT): mahoney1 (Mon, 29 Oct 2018 14:03:13 GMT): mahoney1 (Mon, 29 Oct 2018 14:04:34 GMT): mahoney1 (Mon, 29 Oct 2018 14:04:34 GMT): jonlee300 (Mon, 29 Oct 2018 14:13:13 GMT): Rochendiil (Mon, 29 Oct 2018 14:15:23 GMT): jonlee300 (Mon, 29 Oct 2018 14:30:34 GMT): Paradox-AT (Mon, 29 Oct 2018 14:35:26 GMT): Rochendiil (Mon, 29 Oct 2018 14:45:31 GMT): anant706 (Mon, 29 Oct 2018 14:49:38 GMT): mahoney1 (Mon, 29 Oct 2018 15:12:07 GMT): Sasadara (Mon, 29 Oct 2018 16:28:38 GMT): ColeBoudreau (Mon, 29 Oct 2018 16:52:40 GMT): snowy13 (Mon, 29 Oct 2018 16:55:43 GMT): rthatcher (Mon, 29 Oct 2018 17:01:30 GMT): rthatcher (Mon, 29 Oct 2018 17:03:37 GMT): snowy13 (Mon, 29 Oct 2018 17:09:58 GMT): rthatcher (Mon, 29 Oct 2018 17:12:26 GMT): snowy13 (Mon, 29 Oct 2018 17:18:16 GMT): davidkel (Mon, 29 Oct 2018 17:57:09 GMT): davidkel (Mon, 29 Oct 2018 17:57:09 GMT): davidkel (Mon, 29 Oct 2018 17:57:09 GMT): snowy13 (Mon, 29 Oct 2018 18:08:27 GMT): davidkel (Mon, 29 Oct 2018 18:09:59 GMT): snowy13 (Mon, 29 Oct 2018 18:11:59 GMT): mahoney1 (Mon, 29 Oct 2018 18:18:31 GMT): davidkel (Mon, 29 Oct 2018 18:26:27 GMT): davidkel (Mon, 29 Oct 2018 18:27:48 GMT): MaheshBalan_Pravici (Mon, 29 Oct 2018 18:33:01 GMT): MaheshBalan_Pravici (Mon, 29 Oct 2018 18:36:38 GMT): MaheshBalan_Pravici (Mon, 29 Oct 2018 18:36:38 GMT): fmjbs (Mon, 29 Oct 2018 19:19:13 GMT): kingpasan (Mon, 29 Oct 2018 19:27:33 GMT): fmjbs (Mon, 29 Oct 2018 19:52:12 GMT): rajKuth (Mon, 29 Oct 2018 20:01:14 GMT): zetiksce (Mon, 29 Oct 2018 20:08:57 GMT): zetiksce (Mon, 29 Oct 2018 20:09:36 GMT): davidkel (Mon, 29 Oct 2018 21:58:03 GMT): yinzhiwu (Tue, 30 Oct 2018 03:14:17 GMT): ping40 (Tue, 30 Oct 2018 03:20:05 GMT): adnanabbasktt (Tue, 30 Oct 2018 04:29:15 GMT): ronaldlong46 (Tue, 30 Oct 2018 05:14:55 GMT): kingpasan (Tue, 30 Oct 2018 05:24:22 GMT): ronaldlong46 (Tue, 30 Oct 2018 05:25:37 GMT): Mounikak (Tue, 30 Oct 2018 06:23:58 GMT): Mounikak (Tue, 30 Oct 2018 06:24:43 GMT): ShaikSharuk (Tue, 30 Oct 2018 08:59:51 GMT): rthatcher (Tue, 30 Oct 2018 09:06:48 GMT): ShaikSharuk (Tue, 30 Oct 2018 09:27:43 GMT): rthatcher (Tue, 30 Oct 2018 09:44:50 GMT): rthatcher (Tue, 30 Oct 2018 09:44:50 GMT): rthatcher (Tue, 30 Oct 2018 09:55:56 GMT): Mounikak (Tue, 30 Oct 2018 10:00:10 GMT): rthatcher (Tue, 30 Oct 2018 10:00:12 GMT): Mounikak (Tue, 30 Oct 2018 10:01:14 GMT): Mounikak (Tue, 30 Oct 2018 10:02:15 GMT): mahoney1 (Tue, 30 Oct 2018 10:12:12 GMT): mahoney1 (Tue, 30 Oct 2018 10:13:53 GMT): mahoney1 (Tue, 30 Oct 2018 10:20:32 GMT): Techie (Tue, 30 Oct 2018 10:22:48 GMT): Techie (Tue, 30 Oct 2018 10:23:00 GMT): Techie (Tue, 30 Oct 2018 10:23:01 GMT): rthatcher (Tue, 30 Oct 2018 10:25:17 GMT): pradeeppadmarajaiah (Tue, 30 Oct 2018 10:43:04 GMT): pradeeppadmarajaiah (Tue, 30 Oct 2018 10:43:09 GMT): venkat_nagaraj (Tue, 30 Oct 2018 11:11:49 GMT): rthatcher (Tue, 30 Oct 2018 11:12:10 GMT): Techie (Tue, 30 Oct 2018 11:51:29 GMT): aviralwal (Tue, 30 Oct 2018 12:04:55 GMT): VadimInshakov (Tue, 30 Oct 2018 12:19:09 GMT): VadimInshakov (Tue, 30 Oct 2018 12:19:09 GMT): mahoney1 (Tue, 30 Oct 2018 12:44:57 GMT): mahoney1 (Tue, 30 Oct 2018 12:45:58 GMT): mahoney1 (Tue, 30 Oct 2018 12:45:58 GMT): dallavecchia (Tue, 30 Oct 2018 13:03:01 GMT): fcabo (Tue, 30 Oct 2018 13:11:07 GMT): VadimInshakov (Tue, 30 Oct 2018 13:15:28 GMT): mahoney1 (Tue, 30 Oct 2018 14:02:19 GMT): mahoney1 (Tue, 30 Oct 2018 14:02:19 GMT): VadimInshakov (Tue, 30 Oct 2018 14:23:03 GMT): VadimInshakov (Tue, 30 Oct 2018 14:34:12 GMT): rizwan92 (Tue, 30 Oct 2018 15:15:55 GMT): snowy13 (Tue, 30 Oct 2018 15:30:01 GMT): anant706 (Tue, 30 Oct 2018 15:33:59 GMT): davidkel (Tue, 30 Oct 2018 15:51:27 GMT): anant706 (Tue, 30 Oct 2018 16:02:39 GMT): anant706 (Tue, 30 Oct 2018 16:10:47 GMT): humbleprogammer (Tue, 30 Oct 2018 16:16:29 GMT): davidkel (Tue, 30 Oct 2018 16:16:41 GMT): humbleprogammer (Tue, 30 Oct 2018 16:16:56 GMT): MaheshBalan_Pravici (Tue, 30 Oct 2018 16:19:56 GMT): mahoney1 (Tue, 30 Oct 2018 16:57:35 GMT): mahoney1 (Tue, 30 Oct 2018 17:06:26 GMT): danilojodas (Tue, 30 Oct 2018 17:36:11 GMT): danilojodas (Tue, 30 Oct 2018 17:42:49 GMT): AlexanderCollins (Tue, 30 Oct 2018 17:46:48 GMT): AlexanderCollins (Tue, 30 Oct 2018 17:46:57 GMT): srinivas (Tue, 30 Oct 2018 17:51:33 GMT): mahoney1 (Tue, 30 Oct 2018 17:57:07 GMT): mahoney1 (Tue, 30 Oct 2018 17:57:07 GMT): mahoney1 (Tue, 30 Oct 2018 17:59:49 GMT): ManmohanPanda (Tue, 30 Oct 2018 18:06:24 GMT): m_hari (Tue, 30 Oct 2018 18:19:57 GMT): m_hari (Tue, 30 Oct 2018 18:22:30 GMT): m_hari (Tue, 30 Oct 2018 18:22:45 GMT): m_hari (Tue, 30 Oct 2018 18:22:55 GMT): m_hari (Tue, 30 Oct 2018 18:23:20 GMT): m_hari (Tue, 30 Oct 2018 18:26:33 GMT): ronaldlong46 (Tue, 30 Oct 2018 18:26:47 GMT): davidkel (Tue, 30 Oct 2018 18:29:36 GMT): m_hari (Tue, 30 Oct 2018 18:29:55 GMT): danilojodas (Tue, 30 Oct 2018 18:32:16 GMT): mahoney1 (Tue, 30 Oct 2018 18:44:58 GMT): mahoney1 (Tue, 30 Oct 2018 18:44:58 GMT): mahoney1 (Tue, 30 Oct 2018 18:44:58 GMT): mahoney1 (Tue, 30 Oct 2018 18:44:58 GMT): humbleprogammer (Tue, 30 Oct 2018 18:50:45 GMT): mahoney1 (Tue, 30 Oct 2018 18:54:05 GMT): mahoney1 (Tue, 30 Oct 2018 18:54:05 GMT): AlexanderCollins (Tue, 30 Oct 2018 18:54:48 GMT): AlexanderCollins (Tue, 30 Oct 2018 18:54:55 GMT): AlexanderCollins (Tue, 30 Oct 2018 18:55:01 GMT): MaheshBalan_Pravici (Tue, 30 Oct 2018 19:00:06 GMT): davidkel (Tue, 30 Oct 2018 20:47:32 GMT): ronaldlong46 (Tue, 30 Oct 2018 21:08:40 GMT): ronaldlong46 (Tue, 30 Oct 2018 21:11:24 GMT): MaheshBalan_Pravici (Tue, 30 Oct 2018 21:16:13 GMT): davidkel (Tue, 30 Oct 2018 21:20:26 GMT): davidkel (Tue, 30 Oct 2018 21:20:26 GMT): davidkel (Tue, 30 Oct 2018 21:22:02 GMT): MaheshBalan_Pravici (Tue, 30 Oct 2018 22:39:48 GMT): MaheshBalan_Pravici (Tue, 30 Oct 2018 23:02:53 GMT): MaheshBalan_Pravici (Tue, 30 Oct 2018 23:35:44 GMT): machidat731 (Wed, 31 Oct 2018 00:55:50 GMT): pradeeppadmarajaiah (Wed, 31 Oct 2018 03:43:51 GMT): pradeeppadmarajaiah (Wed, 31 Oct 2018 07:23:17 GMT): pradeeppadmarajaiah (Wed, 31 Oct 2018 07:23:19 GMT): pradeeppadmarajaiah (Wed, 31 Oct 2018 07:23:35 GMT): pradeeppadmarajaiah (Wed, 31 Oct 2018 07:24:19 GMT): pradeeppadmarajaiah (Wed, 31 Oct 2018 07:24:51 GMT): pradeeppadmarajaiah (Wed, 31 Oct 2018 07:24:51 GMT): davidkel (Wed, 31 Oct 2018 07:42:42 GMT): davidkel (Wed, 31 Oct 2018 07:42:42 GMT): davidkel (Wed, 31 Oct 2018 07:48:51 GMT): pradeeppadmarajaiah (Wed, 31 Oct 2018 08:13:28 GMT): rthatcher (Wed, 31 Oct 2018 09:20:07 GMT): mahoney1 (Wed, 31 Oct 2018 09:38:38 GMT): abityildiz (Wed, 31 Oct 2018 10:48:29 GMT): mahoney1 (Wed, 31 Oct 2018 10:57:42 GMT): mahoney1 (Wed, 31 Oct 2018 10:57:42 GMT): ZOHAIBSohail (Wed, 31 Oct 2018 11:08:52 GMT): ZOHAIBSohail (Wed, 31 Oct 2018 11:08:55 GMT): davidkel (Wed, 31 Oct 2018 11:20:40 GMT): dave.enyeart (Wed, 31 Oct 2018 11:45:29 GMT): Korvictech (Wed, 31 Oct 2018 11:50:23 GMT): davidkel (Wed, 31 Oct 2018 11:54:59 GMT): Korvictech (Wed, 31 Oct 2018 12:26:16 GMT): Korvictech (Wed, 31 Oct 2018 12:26:16 GMT): davidkel (Wed, 31 Oct 2018 12:28:41 GMT): Korvictech (Wed, 31 Oct 2018 12:29:18 GMT): davidkel (Wed, 31 Oct 2018 12:30:10 GMT): Korvictech (Wed, 31 Oct 2018 12:32:11 GMT): davidkel (Wed, 31 Oct 2018 12:33:05 GMT): Korvictech (Wed, 31 Oct 2018 12:34:16 GMT): davidkel (Wed, 31 Oct 2018 12:35:05 GMT): davidkel (Wed, 31 Oct 2018 12:35:05 GMT): davidkel (Wed, 31 Oct 2018 12:35:05 GMT): Korvictech (Wed, 31 Oct 2018 12:37:30 GMT): Korvictech (Wed, 31 Oct 2018 12:41:43 GMT): Korvictech (Wed, 31 Oct 2018 12:42:42 GMT): Korvictech (Wed, 31 Oct 2018 12:44:36 GMT): Korvictech (Wed, 31 Oct 2018 12:46:52 GMT): mahoney1 (Wed, 31 Oct 2018 12:58:00 GMT): mrlinjun (Wed, 31 Oct 2018 13:29:42 GMT): ronbiz (Wed, 31 Oct 2018 14:45:36 GMT): sbtmentor (Wed, 31 Oct 2018 14:48:40 GMT): sbtmentor (Wed, 31 Oct 2018 14:49:51 GMT): VadimInshakov (Wed, 31 Oct 2018 16:32:09 GMT): VadimInshakov (Wed, 31 Oct 2018 16:32:09 GMT): MaheshBalan_Pravici (Wed, 31 Oct 2018 16:35:37 GMT): Korvictech (Wed, 31 Oct 2018 16:38:05 GMT): mahoney1 (Wed, 31 Oct 2018 16:38:37 GMT): Korvictech (Wed, 31 Oct 2018 16:39:36 GMT): mahoney1 (Wed, 31 Oct 2018 16:40:57 GMT): mahoney1 (Wed, 31 Oct 2018 16:40:57 GMT): MaheshBalan_Pravici (Wed, 31 Oct 2018 16:41:37 GMT): mahoney1 (Wed, 31 Oct 2018 16:44:37 GMT): mahoney1 (Wed, 31 Oct 2018 16:44:37 GMT): mahoney1 (Wed, 31 Oct 2018 16:56:51 GMT): mahoney1 (Wed, 31 Oct 2018 16:56:51 GMT): Korvictech (Wed, 31 Oct 2018 16:59:12 GMT): Korvictech (Wed, 31 Oct 2018 16:59:34 GMT): Korvictech (Wed, 31 Oct 2018 16:59:34 GMT): Korvictech (Wed, 31 Oct 2018 16:59:34 GMT): Korvictech (Wed, 31 Oct 2018 17:00:31 GMT): Korvictech (Wed, 31 Oct 2018 17:01:46 GMT): MaheshBalan_Pravici (Wed, 31 Oct 2018 17:10:05 GMT): davidkel (Wed, 31 Oct 2018 17:13:58 GMT): davidkel (Wed, 31 Oct 2018 17:13:58 GMT): MaheshBalan_Pravici (Wed, 31 Oct 2018 17:42:53 GMT): nemo 8 (Wed, 31 Oct 2018 17:59:41 GMT): sang-bae (Wed, 31 Oct 2018 19:13:48 GMT): sang-bae (Wed, 31 Oct 2018 19:14:36 GMT): sang-bae (Wed, 31 Oct 2018 19:14:36 GMT): davidkel (Wed, 31 Oct 2018 19:17:51 GMT): sang-bae (Wed, 31 Oct 2018 19:25:34 GMT): sang-bae (Wed, 31 Oct 2018 19:41:48 GMT): ronaldlong46 (Thu, 01 Nov 2018 03:16:18 GMT): sbtmentor (Thu, 01 Nov 2018 05:25:31 GMT): singh_0 (Thu, 01 Nov 2018 06:24:46 GMT): singh_0 (Thu, 01 Nov 2018 06:25:25 GMT): abityildiz (Thu, 01 Nov 2018 07:04:19 GMT): davidkel (Thu, 01 Nov 2018 07:14:01 GMT): Dima (Thu, 01 Nov 2018 08:59:52 GMT): waleed (Thu, 01 Nov 2018 09:06:44 GMT): AnkitDroidGit (Thu, 01 Nov 2018 09:07:38 GMT): Dima (Thu, 01 Nov 2018 09:09:17 GMT): waleed (Thu, 01 Nov 2018 09:15:12 GMT): Dima (Thu, 01 Nov 2018 09:18:13 GMT): waleed (Thu, 01 Nov 2018 09:18:40 GMT): Dima (Thu, 01 Nov 2018 09:21:01 GMT): rthatcher (Thu, 01 Nov 2018 09:22:31 GMT): waleed (Thu, 01 Nov 2018 09:23:40 GMT): mahoney1 (Thu, 01 Nov 2018 09:28:40 GMT): abityildiz (Thu, 01 Nov 2018 10:05:51 GMT): mahoney1 (Thu, 01 Nov 2018 10:24:03 GMT): rthatcher (Thu, 01 Nov 2018 10:34:45 GMT): rthatcher (Thu, 01 Nov 2018 10:34:45 GMT): wangrangli (Thu, 01 Nov 2018 10:34:56 GMT): abityildiz (Thu, 01 Nov 2018 10:39:41 GMT): mahoney1 (Thu, 01 Nov 2018 10:47:49 GMT): wangrangli (Thu, 01 Nov 2018 10:51:18 GMT): Korvictech (Thu, 01 Nov 2018 11:25:55 GMT): Korvictech (Thu, 01 Nov 2018 11:25:55 GMT): Korvictech (Thu, 01 Nov 2018 11:26:21 GMT): Techie (Thu, 01 Nov 2018 11:50:47 GMT): wangrangli (Thu, 01 Nov 2018 11:56:14 GMT): mrudav.shukla (Thu, 01 Nov 2018 12:08:19 GMT): mrudav.shukla (Thu, 01 Nov 2018 12:08:30 GMT): mahoney1 (Thu, 01 Nov 2018 12:14:40 GMT): mrudav.shukla (Thu, 01 Nov 2018 12:16:29 GMT): mahoney1 (Thu, 01 Nov 2018 12:19:46 GMT): mahoney1 (Thu, 01 Nov 2018 12:20:25 GMT): mahoney1 (Thu, 01 Nov 2018 12:20:25 GMT): mrudav.shukla (Thu, 01 Nov 2018 12:29:38 GMT): Korvictech (Thu, 01 Nov 2018 12:45:05 GMT): Korvictech (Thu, 01 Nov 2018 12:45:05 GMT): Korvictech (Thu, 01 Nov 2018 12:45:05 GMT): abityildiz (Thu, 01 Nov 2018 13:23:45 GMT): abityildiz (Thu, 01 Nov 2018 13:24:31 GMT): mahoney1 (Thu, 01 Nov 2018 13:50:34 GMT): rthatcher (Thu, 01 Nov 2018 14:00:34 GMT): abityildiz (Thu, 01 Nov 2018 14:17:04 GMT): fixu2 (Thu, 01 Nov 2018 14:19:04 GMT): fixu2 (Thu, 01 Nov 2018 14:29:44 GMT): davidkel (Thu, 01 Nov 2018 14:55:09 GMT): rthatcher (Thu, 01 Nov 2018 14:58:49 GMT): Korvictech (Thu, 01 Nov 2018 15:11:52 GMT): davidkel (Thu, 01 Nov 2018 15:12:58 GMT): Korvictech (Thu, 01 Nov 2018 15:17:36 GMT): Korvictech (Thu, 01 Nov 2018 15:19:39 GMT): davidkel (Thu, 01 Nov 2018 15:30:09 GMT): Korvictech (Thu, 01 Nov 2018 15:33:31 GMT): davidkel (Thu, 01 Nov 2018 15:47:34 GMT): davidkel (Thu, 01 Nov 2018 15:48:15 GMT): Korvictech (Thu, 01 Nov 2018 15:50:53 GMT): Korvictech (Thu, 01 Nov 2018 15:50:53 GMT): davidkel (Thu, 01 Nov 2018 15:53:54 GMT): davidkel (Thu, 01 Nov 2018 15:54:13 GMT): Korvictech (Thu, 01 Nov 2018 15:57:12 GMT): Korvictech (Thu, 01 Nov 2018 15:57:12 GMT): Korvictech (Thu, 01 Nov 2018 15:57:39 GMT): jmason900 (Thu, 01 Nov 2018 16:03:16 GMT): mahoney1 (Thu, 01 Nov 2018 16:05:04 GMT): jmason900 (Thu, 01 Nov 2018 16:05:32 GMT): davidkel (Thu, 01 Nov 2018 16:34:11 GMT): VadimInshakov (Thu, 01 Nov 2018 16:40:29 GMT): Korvictech (Thu, 01 Nov 2018 19:32:18 GMT): Korvictech (Thu, 01 Nov 2018 19:32:18 GMT): nemo 8 (Thu, 01 Nov 2018 21:50:15 GMT): nemo 8 (Thu, 01 Nov 2018 21:50:30 GMT): davidkel (Thu, 01 Nov 2018 21:58:09 GMT): davidkel (Thu, 01 Nov 2018 21:59:57 GMT): davidkel (Thu, 01 Nov 2018 21:59:57 GMT): wangrangli (Fri, 02 Nov 2018 04:18:20 GMT): Korvictech (Fri, 02 Nov 2018 04:25:59 GMT): CheeChyuan (Fri, 02 Nov 2018 04:31:30 GMT): CheeChyuan (Fri, 02 Nov 2018 04:31:30 GMT): mrudav.shukla (Fri, 02 Nov 2018 05:26:33 GMT): mrudav.shukla (Fri, 02 Nov 2018 05:27:52 GMT): JeffGutierrez (Fri, 02 Nov 2018 06:40:25 GMT): david-kim-tpe (Fri, 02 Nov 2018 07:01:55 GMT): david-kim-tpe (Fri, 02 Nov 2018 07:01:55 GMT): david-kim-tpe (Fri, 02 Nov 2018 07:01:55 GMT): david-kim-tpe (Fri, 02 Nov 2018 07:01:55 GMT): david-kim-tpe (Fri, 02 Nov 2018 07:01:55 GMT): david-kim-tpe (Fri, 02 Nov 2018 07:01:55 GMT): david-kim-tpe (Fri, 02 Nov 2018 07:05:17 GMT): david-kim-tpe (Fri, 02 Nov 2018 07:27:01 GMT): tanguyracinet (Fri, 02 Nov 2018 07:41:13 GMT): tanguyracinet (Fri, 02 Nov 2018 07:46:51 GMT): CheeChyuan (Fri, 02 Nov 2018 08:01:16 GMT): JeffGutierrez (Fri, 02 Nov 2018 08:33:19 GMT): KindleBitSoln (Fri, 02 Nov 2018 09:15:21 GMT): davidkel (Fri, 02 Nov 2018 09:23:42 GMT): mahoney1 (Fri, 02 Nov 2018 09:29:59 GMT): mahoney1 (Fri, 02 Nov 2018 09:29:59 GMT): rthatcher (Fri, 02 Nov 2018 09:30:02 GMT): tanguyracinet (Fri, 02 Nov 2018 09:52:27 GMT): Rochendiil (Fri, 02 Nov 2018 10:13:44 GMT): Rochendiil (Fri, 02 Nov 2018 10:13:44 GMT): mahoney1 (Fri, 02 Nov 2018 10:21:17 GMT): Rochendiil (Fri, 02 Nov 2018 10:25:04 GMT): Rochendiil (Fri, 02 Nov 2018 10:26:05 GMT): mahoney1 (Fri, 02 Nov 2018 10:26:21 GMT): Korvictech (Fri, 02 Nov 2018 10:35:16 GMT): mahoney1 (Fri, 02 Nov 2018 10:38:27 GMT): Korvictech (Fri, 02 Nov 2018 12:17:59 GMT): mahoney1 (Fri, 02 Nov 2018 12:35:22 GMT): mahoney1 (Fri, 02 Nov 2018 12:35:22 GMT): nemo 8 (Fri, 02 Nov 2018 12:39:09 GMT): nemo 8 (Fri, 02 Nov 2018 12:40:24 GMT): nemo 8 (Fri, 02 Nov 2018 12:41:38 GMT): davidkel (Fri, 02 Nov 2018 12:42:34 GMT): davidkel (Fri, 02 Nov 2018 12:44:12 GMT): Krenari (Fri, 02 Nov 2018 13:48:15 GMT): Doodloo (Fri, 02 Nov 2018 15:41:22 GMT): Doodloo (Fri, 02 Nov 2018 15:41:24 GMT): Doodloo (Fri, 02 Nov 2018 15:43:11 GMT): Doodloo (Fri, 02 Nov 2018 15:44:41 GMT): Doodloo (Fri, 02 Nov 2018 15:44:51 GMT): mahoney1 (Fri, 02 Nov 2018 16:07:02 GMT): mahoney1 (Fri, 02 Nov 2018 16:07:02 GMT): mahoney1 (Fri, 02 Nov 2018 16:07:02 GMT): mahoney1 (Fri, 02 Nov 2018 16:07:02 GMT): mahoney1 (Fri, 02 Nov 2018 16:07:02 GMT): m_hari (Fri, 02 Nov 2018 20:19:13 GMT): m_hari (Fri, 02 Nov 2018 20:19:35 GMT): m_hari (Fri, 02 Nov 2018 20:19:45 GMT): m_hari (Fri, 02 Nov 2018 20:20:11 GMT): m_hari (Fri, 02 Nov 2018 20:20:24 GMT): m_hari (Fri, 02 Nov 2018 20:37:01 GMT): m_hari (Fri, 02 Nov 2018 20:38:25 GMT): m_hari (Fri, 02 Nov 2018 20:56:12 GMT): MaheshBalan_Pravici (Fri, 02 Nov 2018 22:19:51 GMT): MaheshBalan_Pravici (Fri, 02 Nov 2018 22:20:46 GMT): davidkel (Sat, 03 Nov 2018 08:04:25 GMT): PhilipAndrew (Sat, 03 Nov 2018 08:55:21 GMT): johngreenhow (Sat, 03 Nov 2018 10:17:25 GMT): johngreenhow (Sat, 03 Nov 2018 10:45:06 GMT): Techievena (Sat, 03 Nov 2018 11:05:47 GMT): Techievena (Sat, 03 Nov 2018 11:08:22 GMT): Techievena (Sat, 03 Nov 2018 11:12:19 GMT): Techievena (Sat, 03 Nov 2018 11:14:25 GMT): Kingson (Sat, 03 Nov 2018 13:29:39 GMT): CheeChyuan (Sat, 03 Nov 2018 16:11:10 GMT): CheeChyuan (Sat, 03 Nov 2018 16:11:10 GMT): CheeChyuan (Sat, 03 Nov 2018 16:11:10 GMT): CheeChyuan (Sat, 03 Nov 2018 16:16:08 GMT): superboonie (Sat, 03 Nov 2018 19:04:51 GMT): PhilipAndrew (Sat, 03 Nov 2018 23:16:35 GMT): zhuhwen (Sun, 04 Nov 2018 02:51:45 GMT): zhuhwen (Sun, 04 Nov 2018 02:56:03 GMT): CheeChyuan (Sun, 04 Nov 2018 05:11:49 GMT): CheeChyuan (Sun, 04 Nov 2018 05:13:08 GMT): CheeChyuan (Sun, 04 Nov 2018 05:16:37 GMT): PhilipAndrew (Sun, 04 Nov 2018 06:08:30 GMT): harryc (Sun, 04 Nov 2018 06:15:01 GMT): zhuhwen (Sun, 04 Nov 2018 06:41:52 GMT): adnanabbasktt (Sun, 04 Nov 2018 07:10:43 GMT): adnanabbasktt (Sun, 04 Nov 2018 07:10:43 GMT): adnanabbasktt (Sun, 04 Nov 2018 07:12:12 GMT): adnanabbasktt (Sun, 04 Nov 2018 07:12:55 GMT): adnanabbasktt (Sun, 04 Nov 2018 07:40:03 GMT): CheeChyuan (Sun, 04 Nov 2018 08:16:02 GMT): olah (Sun, 04 Nov 2018 15:05:56 GMT): CheeChyuan (Sun, 04 Nov 2018 16:32:19 GMT): abityildiz (Sun, 04 Nov 2018 18:23:26 GMT): harryc (Sun, 04 Nov 2018 21:05:42 GMT): CheeChyuan (Mon, 05 Nov 2018 02:32:45 GMT): CheeChyuan (Mon, 05 Nov 2018 04:12:24 GMT): adnanabbasktt (Mon, 05 Nov 2018 04:28:56 GMT): adnanabbasktt (Mon, 05 Nov 2018 04:28:56 GMT): KindleBitSoln (Mon, 05 Nov 2018 05:49:50 GMT): CheeChyuan (Mon, 05 Nov 2018 05:51:04 GMT): sooraj-citta (Mon, 05 Nov 2018 06:54:05 GMT): sooraj-citta (Mon, 05 Nov 2018 06:54:05 GMT): Mounikak (Mon, 05 Nov 2018 09:07:44 GMT): waleed (Mon, 05 Nov 2018 09:09:43 GMT): waleed (Mon, 05 Nov 2018 09:09:43 GMT): waleed (Mon, 05 Nov 2018 09:09:43 GMT): haow85 (Mon, 05 Nov 2018 09:52:19 GMT): haow85 (Mon, 05 Nov 2018 09:52:50 GMT): haow85 (Mon, 05 Nov 2018 09:54:03 GMT): rthatcher (Mon, 05 Nov 2018 10:06:05 GMT): rrishmawi (Mon, 05 Nov 2018 10:19:01 GMT): waleed (Mon, 05 Nov 2018 10:21:33 GMT): waleed (Mon, 05 Nov 2018 10:21:33 GMT): rrishmawi (Mon, 05 Nov 2018 10:24:35 GMT): rthatcher (Mon, 05 Nov 2018 10:25:59 GMT): waleed (Mon, 05 Nov 2018 10:28:14 GMT): rrishmawi (Mon, 05 Nov 2018 10:30:30 GMT): waleed (Mon, 05 Nov 2018 10:33:04 GMT): waleed (Mon, 05 Nov 2018 10:33:04 GMT): waleed (Mon, 05 Nov 2018 10:33:04 GMT): rthatcher (Mon, 05 Nov 2018 10:33:30 GMT): sooraj-citta (Mon, 05 Nov 2018 10:40:39 GMT): mahoney1 (Mon, 05 Nov 2018 10:44:53 GMT): mahoney1 (Mon, 05 Nov 2018 10:44:53 GMT): mahoney1 (Mon, 05 Nov 2018 10:44:53 GMT): rthatcher (Mon, 05 Nov 2018 10:59:28 GMT): mahoney1 (Mon, 05 Nov 2018 11:03:59 GMT): mahoney1 (Mon, 05 Nov 2018 11:03:59 GMT): sooraj-citta (Mon, 05 Nov 2018 11:04:08 GMT): sooraj-citta (Mon, 05 Nov 2018 11:04:08 GMT): KindlebitPhp (Mon, 05 Nov 2018 11:08:18 GMT): mahoney1 (Mon, 05 Nov 2018 11:12:28 GMT): sooraj-citta (Mon, 05 Nov 2018 11:53:28 GMT): prasanths96 (Mon, 05 Nov 2018 12:47:57 GMT): prasanths96 (Mon, 05 Nov 2018 12:49:23 GMT): mahoney1 (Mon, 05 Nov 2018 12:55:10 GMT): prasanths96 (Mon, 05 Nov 2018 13:03:18 GMT): prasanths96 (Mon, 05 Nov 2018 13:05:55 GMT): prasanths96 (Mon, 05 Nov 2018 13:13:42 GMT): prasanths96 (Mon, 05 Nov 2018 13:13:42 GMT): rrishmawi (Mon, 05 Nov 2018 13:17:14 GMT): rrishmawi (Mon, 05 Nov 2018 13:17:34 GMT): mahoney1 (Mon, 05 Nov 2018 13:25:00 GMT): prasanths96 (Mon, 05 Nov 2018 13:29:46 GMT): prasanths96 (Mon, 05 Nov 2018 13:29:46 GMT): prasanths96 (Mon, 05 Nov 2018 13:29:46 GMT): prasanths96 (Mon, 05 Nov 2018 13:29:46 GMT): prasanths96 (Mon, 05 Nov 2018 13:31:48 GMT): prasanths96 (Mon, 05 Nov 2018 13:31:48 GMT): rrishmawi (Mon, 05 Nov 2018 13:40:31 GMT): prasanths96 (Mon, 05 Nov 2018 13:41:48 GMT): prasanths96 (Mon, 05 Nov 2018 13:44:15 GMT): mahoney1 (Mon, 05 Nov 2018 13:46:50 GMT): mahoney1 (Mon, 05 Nov 2018 13:46:50 GMT): prasanths96 (Mon, 05 Nov 2018 13:48:32 GMT): sureshtedla (Mon, 05 Nov 2018 14:08:14 GMT): rthatcher (Mon, 05 Nov 2018 14:16:01 GMT): zhuhwen (Mon, 05 Nov 2018 14:20:49 GMT): zhuhwen (Mon, 05 Nov 2018 14:25:41 GMT): octavians 1 (Mon, 05 Nov 2018 14:28:59 GMT): octavians 1 (Mon, 05 Nov 2018 14:28:59 GMT): octavians 1 (Mon, 05 Nov 2018 14:28:59 GMT): rthatcher (Mon, 05 Nov 2018 14:31:07 GMT): venkat_nagaraj (Mon, 05 Nov 2018 14:55:41 GMT): venkat_nagaraj (Mon, 05 Nov 2018 14:56:53 GMT): venkat_nagaraj (Mon, 05 Nov 2018 14:58:09 GMT): venkat_nagaraj (Mon, 05 Nov 2018 14:58:22 GMT): venkat_nagaraj (Mon, 05 Nov 2018 14:58:50 GMT): venkat_nagaraj (Mon, 05 Nov 2018 14:58:50 GMT): venkat_nagaraj (Mon, 05 Nov 2018 15:00:13 GMT): zhuhwen (Mon, 05 Nov 2018 15:14:08 GMT): Hari.Jella (Mon, 05 Nov 2018 15:44:03 GMT): CorentinPacaud (Mon, 05 Nov 2018 15:46:31 GMT): Korvictech (Mon, 05 Nov 2018 17:12:28 GMT): Korvictech (Mon, 05 Nov 2018 17:14:48 GMT): Korvictech (Mon, 05 Nov 2018 17:14:48 GMT): dave.enyeart (Mon, 05 Nov 2018 17:23:17 GMT): migbot (Mon, 05 Nov 2018 20:50:11 GMT): migbot (Mon, 05 Nov 2018 20:51:57 GMT): migbot (Mon, 05 Nov 2018 20:53:21 GMT): m_hari (Mon, 05 Nov 2018 21:53:55 GMT): m_hari (Mon, 05 Nov 2018 23:14:27 GMT): m_hari (Mon, 05 Nov 2018 23:14:27 GMT): m_hari (Tue, 06 Nov 2018 00:24:31 GMT): MaheshBalan_Pravici (Tue, 06 Nov 2018 01:55:05 GMT): coveloper (Tue, 06 Nov 2018 04:36:48 GMT): adnanabbasktt (Tue, 06 Nov 2018 04:59:40 GMT): ChebuRakshu (Tue, 06 Nov 2018 06:26:17 GMT): ChebuRakshu (Tue, 06 Nov 2018 06:26:40 GMT): ChebuRakshu (Tue, 06 Nov 2018 06:26:40 GMT): amritsharma (Tue, 06 Nov 2018 07:13:06 GMT): adnanabbasktt (Tue, 06 Nov 2018 08:37:50 GMT): adnanabbasktt (Tue, 06 Nov 2018 08:37:50 GMT): prasannakumarchebrolu (Tue, 06 Nov 2018 09:19:27 GMT): rthatcher (Tue, 06 Nov 2018 09:30:29 GMT): CheeChyuan (Tue, 06 Nov 2018 09:30:41 GMT): rthatcher (Tue, 06 Nov 2018 09:35:45 GMT): rthatcher (Tue, 06 Nov 2018 09:42:14 GMT): rthatcher (Tue, 06 Nov 2018 09:48:08 GMT): adnanabbasktt (Tue, 06 Nov 2018 09:50:45 GMT): adnanabbasktt (Tue, 06 Nov 2018 09:52:55 GMT): venkat_nagaraj (Tue, 06 Nov 2018 10:12:30 GMT): venkat_nagaraj (Tue, 06 Nov 2018 10:12:30 GMT): venkat_nagaraj (Tue, 06 Nov 2018 10:12:30 GMT): venkat_nagaraj (Tue, 06 Nov 2018 10:12:30 GMT): venkat_nagaraj (Tue, 06 Nov 2018 10:12:30 GMT): venkat_nagaraj (Tue, 06 Nov 2018 10:12:30 GMT): venkat_nagaraj (Tue, 06 Nov 2018 10:12:30 GMT): venkat_nagaraj (Tue, 06 Nov 2018 10:12:30 GMT): venkat_nagaraj (Tue, 06 Nov 2018 10:12:30 GMT): venkat_nagaraj (Tue, 06 Nov 2018 10:12:30 GMT): VadimInshakov (Tue, 06 Nov 2018 10:15:54 GMT): prasannakumarchebrolu (Tue, 06 Nov 2018 10:23:33 GMT): prasannakumarchebrolu (Tue, 06 Nov 2018 10:30:09 GMT): prasannakumarchebrolu (Tue, 06 Nov 2018 10:30:09 GMT): prasannakumarchebrolu (Tue, 06 Nov 2018 10:30:09 GMT): prasannakumarchebrolu (Tue, 06 Nov 2018 10:30:09 GMT): prasannakumarchebrolu (Tue, 06 Nov 2018 10:30:09 GMT): amritsharma (Tue, 06 Nov 2018 10:54:12 GMT): touchingsoil (Tue, 06 Nov 2018 11:20:19 GMT): abityildiz (Tue, 06 Nov 2018 12:11:10 GMT): rthatcher (Tue, 06 Nov 2018 12:11:13 GMT): rthatcher (Tue, 06 Nov 2018 12:28:01 GMT): venkat_nagaraj (Tue, 06 Nov 2018 13:40:34 GMT): rizwan92 (Tue, 06 Nov 2018 14:09:54 GMT): rizwan92 (Tue, 06 Nov 2018 14:09:54 GMT): kelleclark (Tue, 06 Nov 2018 14:10:52 GMT): kelleclark (Tue, 06 Nov 2018 14:11:01 GMT): Rochendiil (Tue, 06 Nov 2018 14:16:14 GMT): Rochendiil (Tue, 06 Nov 2018 14:16:42 GMT): Rochendiil (Tue, 06 Nov 2018 14:17:42 GMT): rizwan92 (Tue, 06 Nov 2018 14:24:10 GMT): Rochendiil (Tue, 06 Nov 2018 14:26:47 GMT): rizwan92 (Tue, 06 Nov 2018 15:13:56 GMT): rizwan92 (Tue, 06 Nov 2018 15:13:56 GMT): rizwan92 (Tue, 06 Nov 2018 15:13:56 GMT): rizwan92 (Tue, 06 Nov 2018 15:13:56 GMT): rizwan92 (Tue, 06 Nov 2018 15:13:56 GMT): rizwan92 (Tue, 06 Nov 2018 15:13:56 GMT): rizwan92 (Tue, 06 Nov 2018 15:13:56 GMT): rizwan92 (Tue, 06 Nov 2018 15:13:56 GMT): rthatcher (Tue, 06 Nov 2018 15:15:53 GMT): rthatcher (Tue, 06 Nov 2018 15:20:50 GMT): mahoney1 (Tue, 06 Nov 2018 15:28:49 GMT): rizwan92 (Tue, 06 Nov 2018 15:30:44 GMT): rizwan92 (Tue, 06 Nov 2018 15:33:30 GMT): rizwan92 (Tue, 06 Nov 2018 15:33:30 GMT): rizwan92 (Tue, 06 Nov 2018 15:33:30 GMT): rizwan92 (Tue, 06 Nov 2018 15:33:30 GMT): rizwan92 (Tue, 06 Nov 2018 15:33:30 GMT): joaquimpedrooliveira (Tue, 06 Nov 2018 17:04:34 GMT): Rochendiil (Tue, 06 Nov 2018 17:09:29 GMT): coveloper (Tue, 06 Nov 2018 17:10:42 GMT): joaquimpedrooliveira (Tue, 06 Nov 2018 17:12:12 GMT): joaquimpedrooliveira (Tue, 06 Nov 2018 17:12:42 GMT): rthatcher (Tue, 06 Nov 2018 17:18:23 GMT): joaquimpedrooliveira (Tue, 06 Nov 2018 17:19:54 GMT): joaquimpedrooliveira (Tue, 06 Nov 2018 17:30:58 GMT): joaquimpedrooliveira (Tue, 06 Nov 2018 17:32:08 GMT): joaquimpedrooliveira (Tue, 06 Nov 2018 17:32:08 GMT): Bentipe (Tue, 06 Nov 2018 18:25:04 GMT): m_hari (Tue, 06 Nov 2018 19:28:35 GMT): m_hari (Tue, 06 Nov 2018 19:28:55 GMT): ronaldlong46 (Tue, 06 Nov 2018 20:44:30 GMT): touchingsoil (Wed, 07 Nov 2018 03:38:50 GMT): brianpesy (Wed, 07 Nov 2018 05:56:18 GMT): brianpesy (Wed, 07 Nov 2018 05:57:04 GMT): brianpesy (Wed, 07 Nov 2018 05:57:04 GMT): prasanths96 (Wed, 07 Nov 2018 06:38:26 GMT): prasanths96 (Wed, 07 Nov 2018 06:41:55 GMT): prasanths96 (Wed, 07 Nov 2018 06:41:55 GMT): brianpesy (Wed, 07 Nov 2018 06:46:51 GMT): brianpesy (Wed, 07 Nov 2018 06:54:37 GMT): brianpesy (Wed, 07 Nov 2018 06:55:11 GMT): PaulaBanks (Wed, 07 Nov 2018 07:05:34 GMT): prasanths96 (Wed, 07 Nov 2018 07:06:32 GMT): PaulaBanks (Wed, 07 Nov 2018 07:08:05 GMT): prasanths96 (Wed, 07 Nov 2018 07:11:39 GMT): PaulaBanks (Wed, 07 Nov 2018 07:14:04 GMT): brianpesy (Wed, 07 Nov 2018 07:22:28 GMT): brianpesy (Wed, 07 Nov 2018 07:27:05 GMT): brianpesy (Wed, 07 Nov 2018 07:28:03 GMT): suenchunhui (Wed, 07 Nov 2018 08:18:09 GMT): prasanths96 (Wed, 07 Nov 2018 08:19:13 GMT): brianpesy (Wed, 07 Nov 2018 08:43:19 GMT): prasanths96 (Wed, 07 Nov 2018 08:54:14 GMT): ShaikSharuk (Wed, 07 Nov 2018 09:03:09 GMT): rthatcher (Wed, 07 Nov 2018 09:35:02 GMT): mahoney1 (Wed, 07 Nov 2018 09:44:30 GMT): mahoney1 (Wed, 07 Nov 2018 09:44:30 GMT): rthatcher (Wed, 07 Nov 2018 09:46:49 GMT): AlexanderCollins (Wed, 07 Nov 2018 10:20:37 GMT): AlexanderCollins (Wed, 07 Nov 2018 10:20:39 GMT): AlexanderCollins (Wed, 07 Nov 2018 10:21:41 GMT): prasanths96 (Wed, 07 Nov 2018 10:25:02 GMT): prasanths96 (Wed, 07 Nov 2018 10:41:58 GMT): mahoney1 (Wed, 07 Nov 2018 10:44:32 GMT): theprodigy (Wed, 07 Nov 2018 10:49:32 GMT): AlexanderCollins (Wed, 07 Nov 2018 10:51:28 GMT): theprodigy (Wed, 07 Nov 2018 10:51:30 GMT): theprodigy (Wed, 07 Nov 2018 10:51:30 GMT): AlexanderCollins (Wed, 07 Nov 2018 10:51:45 GMT): AlexanderCollins (Wed, 07 Nov 2018 10:51:57 GMT): AlexanderCollins (Wed, 07 Nov 2018 10:52:17 GMT): AlexanderCollins (Wed, 07 Nov 2018 10:53:09 GMT): AlexanderCollins (Wed, 07 Nov 2018 10:53:35 GMT): prasanths96 (Wed, 07 Nov 2018 10:57:16 GMT): prasanths96 (Wed, 07 Nov 2018 10:57:16 GMT): prasanths96 (Wed, 07 Nov 2018 11:03:34 GMT): nulee100 (Wed, 07 Nov 2018 11:06:31 GMT): mahoney1 (Wed, 07 Nov 2018 11:06:39 GMT): mahoney1 (Wed, 07 Nov 2018 11:06:39 GMT): UnaiUrki (Wed, 07 Nov 2018 11:07:53 GMT): AlexanderCollins (Wed, 07 Nov 2018 11:08:06 GMT): AlexanderCollins (Wed, 07 Nov 2018 11:09:01 GMT): AlexanderCollins (Wed, 07 Nov 2018 11:09:40 GMT): AlexanderCollins (Wed, 07 Nov 2018 11:13:51 GMT): AlexanderCollins (Wed, 07 Nov 2018 11:14:07 GMT): prasanths96 (Wed, 07 Nov 2018 11:22:18 GMT): prasanths96 (Wed, 07 Nov 2018 11:22:18 GMT): prasanths96 (Wed, 07 Nov 2018 11:22:18 GMT): prasanths96 (Wed, 07 Nov 2018 11:22:18 GMT): prasanths96 (Wed, 07 Nov 2018 11:22:18 GMT): mahoney1 (Wed, 07 Nov 2018 11:47:54 GMT): mahoney1 (Wed, 07 Nov 2018 11:47:54 GMT): mahoney1 (Wed, 07 Nov 2018 11:47:54 GMT): mahoney1 (Wed, 07 Nov 2018 11:47:54 GMT): theprodigy (Wed, 07 Nov 2018 11:58:05 GMT): joelesli (Wed, 07 Nov 2018 12:04:05 GMT): prasanths96 (Wed, 07 Nov 2018 12:05:49 GMT): benjamin.verhaegen (Wed, 07 Nov 2018 12:06:17 GMT): venkat_nagaraj (Wed, 07 Nov 2018 12:39:28 GMT): prasanths96 (Wed, 07 Nov 2018 12:54:28 GMT): venkat_nagaraj (Wed, 07 Nov 2018 12:57:57 GMT): venkat_nagaraj (Wed, 07 Nov 2018 12:57:57 GMT): AlexanderCollins (Wed, 07 Nov 2018 13:03:45 GMT): AlexanderCollins (Wed, 07 Nov 2018 13:04:41 GMT): prasanths96 (Wed, 07 Nov 2018 13:07:30 GMT): benjamin.verhaegen (Wed, 07 Nov 2018 13:07:41 GMT): AlexanderCollins (Wed, 07 Nov 2018 13:08:03 GMT): prasanths96 (Wed, 07 Nov 2018 13:09:00 GMT): prasanths96 (Wed, 07 Nov 2018 13:09:00 GMT): AlexanderCollins (Wed, 07 Nov 2018 13:14:08 GMT): AlexanderCollins (Wed, 07 Nov 2018 13:14:24 GMT): prasanths96 (Wed, 07 Nov 2018 13:15:32 GMT): AlexanderCollins (Wed, 07 Nov 2018 13:15:50 GMT): AlexanderCollins (Wed, 07 Nov 2018 13:15:55 GMT): rthatcher (Wed, 07 Nov 2018 13:18:45 GMT): benjamin.verhaegen (Wed, 07 Nov 2018 13:20:39 GMT): benjamin.verhaegen (Wed, 07 Nov 2018 13:20:39 GMT): AlexanderCollins (Wed, 07 Nov 2018 13:24:07 GMT): AlexanderCollins (Wed, 07 Nov 2018 13:24:17 GMT): prasanths96 (Wed, 07 Nov 2018 13:26:05 GMT): prasanths96 (Wed, 07 Nov 2018 13:26:05 GMT): greg2git (Wed, 07 Nov 2018 13:27:06 GMT): prasanths96 (Wed, 07 Nov 2018 13:30:11 GMT): rthatcher (Wed, 07 Nov 2018 13:41:18 GMT): rthatcher (Wed, 07 Nov 2018 13:41:18 GMT): benjamin.verhaegen (Wed, 07 Nov 2018 13:47:29 GMT): mahoney1 (Wed, 07 Nov 2018 13:55:12 GMT): MaheshBalan_Pravici (Wed, 07 Nov 2018 20:10:24 GMT): mshirman (Wed, 07 Nov 2018 21:33:36 GMT): JeffGutierrez (Thu, 08 Nov 2018 00:02:42 GMT): emigue (Thu, 08 Nov 2018 00:48:05 GMT): nulee100 (Thu, 08 Nov 2018 00:51:10 GMT): rashansamith88 (Thu, 08 Nov 2018 04:38:53 GMT): rashansamith88 (Thu, 08 Nov 2018 04:39:27 GMT): mallikarjunasai995 (Thu, 08 Nov 2018 05:41:03 GMT): MuthuT (Thu, 08 Nov 2018 06:29:37 GMT): PadmavathyMohan (Thu, 08 Nov 2018 07:11:48 GMT): benjamin.verhaegen (Thu, 08 Nov 2018 07:43:30 GMT): rashansamith88 (Thu, 08 Nov 2018 08:04:19 GMT): rthatcher (Thu, 08 Nov 2018 09:10:19 GMT): rashansamith88 (Thu, 08 Nov 2018 09:23:07 GMT): rthatcher (Thu, 08 Nov 2018 09:40:04 GMT): rashansamith88 (Thu, 08 Nov 2018 09:40:45 GMT): rashansamith88 (Thu, 08 Nov 2018 09:56:35 GMT): AlyDabbous (Thu, 08 Nov 2018 10:02:49 GMT): AlyDabbous (Thu, 08 Nov 2018 10:03:27 GMT): rashansamith88 (Thu, 08 Nov 2018 10:04:41 GMT): rashansamith88 (Thu, 08 Nov 2018 10:04:41 GMT): octavians 1 (Thu, 08 Nov 2018 10:04:47 GMT): rashansamith88 (Thu, 08 Nov 2018 10:06:39 GMT): AlyDabbous (Thu, 08 Nov 2018 10:09:34 GMT): rashansamith88 (Thu, 08 Nov 2018 10:12:06 GMT): AlyDabbous (Thu, 08 Nov 2018 10:13:10 GMT): rashansamith88 (Thu, 08 Nov 2018 10:13:38 GMT): rrishmawi (Thu, 08 Nov 2018 10:17:29 GMT): rrishmawi (Thu, 08 Nov 2018 10:24:25 GMT): VenkatThota (Thu, 08 Nov 2018 11:16:08 GMT): umamaheswarv (Thu, 08 Nov 2018 11:36:18 GMT): umamaheswarv (Thu, 08 Nov 2018 11:36:18 GMT): umamaheswarv (Thu, 08 Nov 2018 11:36:18 GMT): rthatcher (Thu, 08 Nov 2018 11:44:34 GMT): srikanthanthargam (Thu, 08 Nov 2018 11:45:30 GMT): Jelle.Diet (Thu, 08 Nov 2018 11:46:50 GMT): rashansamith88 (Thu, 08 Nov 2018 11:50:24 GMT): rashansamith88 (Thu, 08 Nov 2018 11:51:09 GMT): rthatcher (Thu, 08 Nov 2018 11:58:17 GMT): rashansamith88 (Thu, 08 Nov 2018 11:59:33 GMT): rthatcher (Thu, 08 Nov 2018 12:01:34 GMT): mahoney1 (Thu, 08 Nov 2018 12:01:55 GMT): rashansamith88 (Thu, 08 Nov 2018 12:02:17 GMT): rthatcher (Thu, 08 Nov 2018 12:05:01 GMT): mahoney1 (Thu, 08 Nov 2018 12:06:04 GMT): rashansamith88 (Thu, 08 Nov 2018 12:06:28 GMT): srikanthanthargam (Thu, 08 Nov 2018 12:10:27 GMT): abityildiz (Thu, 08 Nov 2018 12:13:22 GMT): mahoney1 (Thu, 08 Nov 2018 12:16:34 GMT): rashansamith88 (Thu, 08 Nov 2018 12:18:39 GMT): rashansamith88 (Thu, 08 Nov 2018 12:19:18 GMT): mahoney1 (Thu, 08 Nov 2018 12:19:52 GMT): rashansamith88 (Thu, 08 Nov 2018 12:22:06 GMT): rashansamith88 (Thu, 08 Nov 2018 12:30:59 GMT): lcj (Thu, 08 Nov 2018 13:27:23 GMT): umamaheswarv (Thu, 08 Nov 2018 13:36:35 GMT): octavians 1 (Thu, 08 Nov 2018 14:01:44 GMT): rrishmawi (Thu, 08 Nov 2018 14:03:26 GMT): AlexanderCollins (Thu, 08 Nov 2018 14:35:13 GMT): AlexanderCollins (Thu, 08 Nov 2018 14:36:07 GMT): AlexanderCollins (Thu, 08 Nov 2018 14:36:55 GMT): mahoney1 (Thu, 08 Nov 2018 15:59:51 GMT): mahoney1 (Thu, 08 Nov 2018 16:02:21 GMT): ValderGallo (Thu, 08 Nov 2018 16:18:08 GMT): ValderGallo (Thu, 08 Nov 2018 16:36:29 GMT): ak97m (Thu, 08 Nov 2018 20:36:36 GMT): sooraj-citta (Fri, 09 Nov 2018 05:47:42 GMT): biksen (Fri, 09 Nov 2018 07:50:56 GMT): rrishmawi (Fri, 09 Nov 2018 09:21:16 GMT): mahoney1 (Fri, 09 Nov 2018 09:32:29 GMT): mahoney1 (Fri, 09 Nov 2018 09:43:04 GMT): Vasanth (Fri, 09 Nov 2018 09:43:25 GMT): Vasanth (Fri, 09 Nov 2018 09:44:45 GMT): Vasanth (Fri, 09 Nov 2018 09:45:42 GMT): mahoney1 (Fri, 09 Nov 2018 09:45:47 GMT): Vasanth (Fri, 09 Nov 2018 09:46:53 GMT): Vasanth (Fri, 09 Nov 2018 09:47:03 GMT): mahoney1 (Fri, 09 Nov 2018 09:47:34 GMT): mahoney1 (Fri, 09 Nov 2018 09:47:34 GMT): Vasanth (Fri, 09 Nov 2018 09:50:10 GMT): Vasanth (Fri, 09 Nov 2018 09:51:00 GMT): Vasanth (Fri, 09 Nov 2018 09:51:04 GMT): Vasanth (Fri, 09 Nov 2018 09:52:18 GMT): srikanthanthargam (Fri, 09 Nov 2018 09:52:27 GMT): Vasanth (Fri, 09 Nov 2018 09:53:42 GMT): AlexanderCollins (Fri, 09 Nov 2018 09:57:41 GMT): rthatcher (Fri, 09 Nov 2018 10:00:10 GMT): mahoney1 (Fri, 09 Nov 2018 10:06:12 GMT): mahoney1 (Fri, 09 Nov 2018 10:06:12 GMT): Vasanth (Fri, 09 Nov 2018 10:17:49 GMT): Smit95shah (Fri, 09 Nov 2018 10:27:04 GMT): Smit95shah (Fri, 09 Nov 2018 10:27:21 GMT): Vasanth (Fri, 09 Nov 2018 10:29:08 GMT): Vasanth (Fri, 09 Nov 2018 10:29:08 GMT): biksen (Fri, 09 Nov 2018 10:34:28 GMT): biksen (Fri, 09 Nov 2018 12:25:58 GMT): Vasanth (Fri, 09 Nov 2018 12:32:37 GMT): mahoney1 (Fri, 09 Nov 2018 13:07:29 GMT): mahoney1 (Fri, 09 Nov 2018 13:08:32 GMT): FatenFq (Fri, 09 Nov 2018 13:20:08 GMT): FatenFq (Fri, 09 Nov 2018 13:20:48 GMT): rthatcher (Fri, 09 Nov 2018 14:02:21 GMT): mahoney1 (Fri, 09 Nov 2018 14:02:23 GMT): mahoney1 (Fri, 09 Nov 2018 14:02:23 GMT): mahoney1 (Fri, 09 Nov 2018 14:02:23 GMT): Smit95shah (Fri, 09 Nov 2018 14:08:43 GMT): mahoney1 (Fri, 09 Nov 2018 14:10:50 GMT): mahoney1 (Fri, 09 Nov 2018 14:10:50 GMT): mahoney1 (Fri, 09 Nov 2018 14:10:50 GMT): mahoney1 (Fri, 09 Nov 2018 14:10:50 GMT): Smit95shah (Fri, 09 Nov 2018 14:13:01 GMT): Smit95shah (Fri, 09 Nov 2018 14:15:15 GMT): mahoney1 (Fri, 09 Nov 2018 14:18:39 GMT): mahoney1 (Fri, 09 Nov 2018 14:18:39 GMT): biksen (Fri, 09 Nov 2018 14:22:27 GMT): Smit95shah (Fri, 09 Nov 2018 14:28:53 GMT): Smit95shah (Fri, 09 Nov 2018 14:28:53 GMT): Smit95shah (Fri, 09 Nov 2018 14:28:53 GMT): rthatcher (Fri, 09 Nov 2018 14:45:23 GMT): Smit95shah (Fri, 09 Nov 2018 15:20:13 GMT): Smit95shah (Fri, 09 Nov 2018 15:20:30 GMT): Smit95shah (Fri, 09 Nov 2018 15:20:47 GMT): Smit95shah (Fri, 09 Nov 2018 15:21:34 GMT): Smit95shah (Fri, 09 Nov 2018 15:21:46 GMT): mahoney1 (Fri, 09 Nov 2018 16:27:46 GMT): mahoney1 (Fri, 09 Nov 2018 16:27:46 GMT): SergioCardona (Fri, 09 Nov 2018 16:32:14 GMT): AlexanderCollins (Fri, 09 Nov 2018 16:44:09 GMT): AlexanderCollins (Fri, 09 Nov 2018 16:44:59 GMT): AlexanderCollins (Fri, 09 Nov 2018 16:45:22 GMT): SergioCardona (Fri, 09 Nov 2018 16:51:20 GMT): AlexanderCollins (Fri, 09 Nov 2018 16:52:32 GMT): Smit95shah (Fri, 09 Nov 2018 17:07:09 GMT): rthatcher (Fri, 09 Nov 2018 17:07:49 GMT): Smit95shah (Fri, 09 Nov 2018 17:08:26 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:11:50 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:15:00 GMT): rthatcher (Fri, 09 Nov 2018 17:17:01 GMT): mahoney1 (Fri, 09 Nov 2018 17:17:38 GMT): mahoney1 (Fri, 09 Nov 2018 17:17:38 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:18:48 GMT): mahoney1 (Fri, 09 Nov 2018 17:20:30 GMT): mahoney1 (Fri, 09 Nov 2018 17:20:30 GMT): mahoney1 (Fri, 09 Nov 2018 17:20:30 GMT): rthatcher (Fri, 09 Nov 2018 17:22:01 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:22:50 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:24:37 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:25:03 GMT): rthatcher (Fri, 09 Nov 2018 17:26:42 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:27:33 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:27:52 GMT): mahoney1 (Fri, 09 Nov 2018 17:28:55 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:32:23 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:32:39 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:33:16 GMT): mahoney1 (Fri, 09 Nov 2018 17:33:30 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:33:34 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:33:41 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:33:46 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:33:48 GMT): AlexanderCollins (Fri, 09 Nov 2018 17:33:53 GMT): Smit95shah (Fri, 09 Nov 2018 17:38:11 GMT): RawanAlmousa (Fri, 09 Nov 2018 17:45:06 GMT): RawanAlmousa (Fri, 09 Nov 2018 17:45:12 GMT): SergioCardona (Fri, 09 Nov 2018 19:28:52 GMT): rashansamith88 (Sat, 10 Nov 2018 06:50:19 GMT): rashansamith88 (Sat, 10 Nov 2018 10:18:20 GMT): rashansamith88 (Sat, 10 Nov 2018 10:18:23 GMT): NursultanMakhanov (Sat, 10 Nov 2018 10:40:08 GMT): NursultanMakhanov (Sat, 10 Nov 2018 10:40:45 GMT): NursultanMakhanov (Sat, 10 Nov 2018 10:40:58 GMT): Smit95shah (Sat, 10 Nov 2018 15:45:47 GMT): Smit95shah (Sat, 10 Nov 2018 15:45:47 GMT): Smit95shah (Sat, 10 Nov 2018 15:46:30 GMT): parthask (Sat, 10 Nov 2018 23:32:57 GMT): parthask (Sat, 10 Nov 2018 23:33:49 GMT): IanClark (Sat, 10 Nov 2018 23:44:28 GMT): IanClark (Sat, 10 Nov 2018 23:55:55 GMT): IanClark (Sat, 10 Nov 2018 23:55:56 GMT): Smit95shah (Sun, 11 Nov 2018 02:23:58 GMT): jamal_logic (Sun, 11 Nov 2018 03:44:07 GMT): Pradeep_Pentakota (Sun, 11 Nov 2018 07:17:44 GMT): NursultanMakhanov (Sun, 11 Nov 2018 11:30:25 GMT): AlexanderCollins (Sun, 11 Nov 2018 12:53:06 GMT): AlexanderCollins (Sun, 11 Nov 2018 12:53:28 GMT): Smit95shah (Sun, 11 Nov 2018 13:23:38 GMT): Smit95shah (Sun, 11 Nov 2018 13:23:38 GMT): zeynabkhani (Sun, 11 Nov 2018 13:26:39 GMT): parthask (Sun, 11 Nov 2018 13:37:11 GMT): pulagala88 (Mon, 12 Nov 2018 04:29:50 GMT): pulagala88 (Mon, 12 Nov 2018 04:32:30 GMT): prasanths96 (Mon, 12 Nov 2018 05:55:59 GMT): david-kim-tpe (Mon, 12 Nov 2018 07:08:00 GMT): david-kim-tpe (Mon, 12 Nov 2018 07:09:36 GMT): AlexanderCollins (Mon, 12 Nov 2018 08:24:53 GMT): david-kim-tpe (Mon, 12 Nov 2018 08:33:59 GMT): mahoney1 (Mon, 12 Nov 2018 09:05:48 GMT): marzubus (Mon, 12 Nov 2018 13:34:08 GMT): marzubus (Mon, 12 Nov 2018 13:34:13 GMT): marzubus (Mon, 12 Nov 2018 13:47:11 GMT): rthatcher (Mon, 12 Nov 2018 14:04:52 GMT): Tiruyasha (Mon, 12 Nov 2018 14:35:47 GMT): Tiruyasha (Mon, 12 Nov 2018 14:36:13 GMT): Tiruyasha (Mon, 12 Nov 2018 14:36:24 GMT): Rochendiil (Mon, 12 Nov 2018 15:08:22 GMT): Tiruyasha (Mon, 12 Nov 2018 15:10:43 GMT): Rochendiil (Mon, 12 Nov 2018 15:15:55 GMT): Tiruyasha (Mon, 12 Nov 2018 15:19:10 GMT): Rochendiil (Mon, 12 Nov 2018 15:21:45 GMT): Rochendiil (Mon, 12 Nov 2018 15:21:52 GMT): Rochendiil (Mon, 12 Nov 2018 15:22:13 GMT): Rochendiil (Mon, 12 Nov 2018 15:23:39 GMT): blockchain.abaco (Mon, 12 Nov 2018 16:01:12 GMT): blockchain.abaco (Mon, 12 Nov 2018 16:04:53 GMT): rthatcher (Mon, 12 Nov 2018 16:37:05 GMT): blockchain.abaco (Mon, 12 Nov 2018 16:39:53 GMT): rthatcher (Mon, 12 Nov 2018 16:48:13 GMT): blockchain.abaco (Mon, 12 Nov 2018 17:59:26 GMT): parthask (Tue, 13 Nov 2018 00:56:59 GMT): PhilipAndrew (Tue, 13 Nov 2018 04:16:18 GMT): prasanths96 (Tue, 13 Nov 2018 05:09:50 GMT): DattaPatil (Tue, 13 Nov 2018 06:34:43 GMT): sooraj-citta (Tue, 13 Nov 2018 07:00:08 GMT): ShaikSharuk (Tue, 13 Nov 2018 07:19:45 GMT): rthatcher (Tue, 13 Nov 2018 09:24:03 GMT): Tiruyasha (Tue, 13 Nov 2018 09:40:54 GMT): Tiruyasha (Tue, 13 Nov 2018 09:41:48 GMT): rthatcher (Tue, 13 Nov 2018 10:06:09 GMT): PhilipAndrew (Tue, 13 Nov 2018 10:09:18 GMT): sai_mamidi (Tue, 13 Nov 2018 10:09:37 GMT): rthatcher (Tue, 13 Nov 2018 10:18:14 GMT): PhilipAndrew (Tue, 13 Nov 2018 10:21:32 GMT): mahoney1 (Tue, 13 Nov 2018 10:23:39 GMT): rthatcher (Tue, 13 Nov 2018 10:31:52 GMT): mahoney1 (Tue, 13 Nov 2018 10:56:09 GMT): rrishmawi (Tue, 13 Nov 2018 11:15:48 GMT): sooraj-citta (Tue, 13 Nov 2018 11:34:29 GMT): rthatcher (Tue, 13 Nov 2018 12:00:26 GMT): rrishmawi (Tue, 13 Nov 2018 12:05:53 GMT): mahoney1 (Tue, 13 Nov 2018 12:13:57 GMT): mahoney1 (Tue, 13 Nov 2018 12:13:57 GMT): mahoney1 (Tue, 13 Nov 2018 12:13:57 GMT): rthatcher (Tue, 13 Nov 2018 12:20:10 GMT): MichalRybarczyk (Tue, 13 Nov 2018 12:39:32 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 13:02:15 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 13:03:32 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 13:05:36 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 13:05:51 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 13:06:09 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 13:08:17 GMT): mahoney1 (Tue, 13 Nov 2018 13:08:21 GMT): mahoney1 (Tue, 13 Nov 2018 13:08:21 GMT): rrishmawi (Tue, 13 Nov 2018 13:10:53 GMT): MichalRybarczyk (Tue, 13 Nov 2018 13:13:45 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 13:19:27 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 13:20:12 GMT): omarqr (Tue, 13 Nov 2018 13:23:47 GMT): omarqr (Tue, 13 Nov 2018 13:24:07 GMT): rthatcher (Tue, 13 Nov 2018 13:55:18 GMT): omarqr (Tue, 13 Nov 2018 13:56:20 GMT): omarqr (Tue, 13 Nov 2018 13:57:18 GMT): rthatcher (Tue, 13 Nov 2018 13:58:47 GMT): rthatcher (Tue, 13 Nov 2018 13:58:47 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 14:06:56 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 14:47:56 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 14:49:50 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 15:04:26 GMT): megafyk (Tue, 13 Nov 2018 15:15:40 GMT): rthatcher (Tue, 13 Nov 2018 15:22:53 GMT): mahoney1 (Tue, 13 Nov 2018 15:24:10 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 15:24:39 GMT): mahoney1 (Tue, 13 Nov 2018 15:25:58 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 15:26:05 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 15:27:32 GMT): mahoney1 (Tue, 13 Nov 2018 15:28:26 GMT): mahoney1 (Tue, 13 Nov 2018 15:29:14 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 15:29:32 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 15:30:53 GMT): JesusAndresCabrera (Tue, 13 Nov 2018 15:32:18 GMT): fdu (Tue, 13 Nov 2018 16:04:51 GMT): ApurvTandon (Tue, 13 Nov 2018 18:22:13 GMT): mahoney1 (Tue, 13 Nov 2018 18:41:29 GMT): ApurvTandon (Wed, 14 Nov 2018 02:36:00 GMT): anand.balagopalan (Wed, 14 Nov 2018 03:50:26 GMT): KaushalKedilaya (Wed, 14 Nov 2018 05:18:34 GMT): KaushalKedilaya (Wed, 14 Nov 2018 05:22:28 GMT): brianpesy (Wed, 14 Nov 2018 06:15:22 GMT): david-kim-tpe (Wed, 14 Nov 2018 07:13:56 GMT): david-kim-tpe (Wed, 14 Nov 2018 07:13:56 GMT): david-kim-tpe (Wed, 14 Nov 2018 07:13:56 GMT): david-kim-tpe (Wed, 14 Nov 2018 07:13:56 GMT): david-kim-tpe (Wed, 14 Nov 2018 07:13:56 GMT): david-kim-tpe (Wed, 14 Nov 2018 07:13:56 GMT): david-kim-tpe (Wed, 14 Nov 2018 07:13:56 GMT): david-kim-tpe (Wed, 14 Nov 2018 07:13:56 GMT): david-kim-tpe (Wed, 14 Nov 2018 07:13:56 GMT): rthatcher (Wed, 14 Nov 2018 09:22:48 GMT): mahoney1 (Wed, 14 Nov 2018 09:59:54 GMT): prasanths96 (Wed, 14 Nov 2018 10:53:08 GMT): mahoney1 (Wed, 14 Nov 2018 11:30:43 GMT): gauravgiri (Wed, 14 Nov 2018 12:03:38 GMT): gauravgiri (Wed, 14 Nov 2018 12:05:29 GMT): mahoney1 (Wed, 14 Nov 2018 12:09:09 GMT): gauravgiri (Wed, 14 Nov 2018 12:25:38 GMT): mahoney1 (Wed, 14 Nov 2018 13:25:04 GMT): mahoney1 (Wed, 14 Nov 2018 13:25:04 GMT): JesusAndresCabrera (Wed, 14 Nov 2018 14:11:21 GMT): JesusAndresCabrera (Wed, 14 Nov 2018 14:12:47 GMT): satyajitdeshmukh (Wed, 14 Nov 2018 14:35:56 GMT): satyajitdeshmukh (Wed, 14 Nov 2018 14:36:22 GMT): rthatcher (Wed, 14 Nov 2018 15:20:50 GMT): rthatcher (Wed, 14 Nov 2018 15:23:22 GMT): JesusAndresCabrera (Wed, 14 Nov 2018 15:28:59 GMT): satyajitdeshmukh (Wed, 14 Nov 2018 15:30:15 GMT): rthatcher (Wed, 14 Nov 2018 16:02:53 GMT): tahaf10 (Wed, 14 Nov 2018 19:30:02 GMT): KubaW (Wed, 14 Nov 2018 22:50:07 GMT): KubaW (Wed, 14 Nov 2018 22:52:40 GMT): darapich92 (Thu, 15 Nov 2018 01:16:46 GMT): darapich92 (Thu, 15 Nov 2018 01:20:52 GMT): evanr76 (Thu, 15 Nov 2018 01:45:51 GMT): anand.balagopalan (Thu, 15 Nov 2018 04:42:17 GMT): satyajitdeshmukh (Thu, 15 Nov 2018 05:38:29 GMT): prasanths96 (Thu, 15 Nov 2018 05:55:04 GMT): luxus (Thu, 15 Nov 2018 06:28:50 GMT): touchingsoil (Thu, 15 Nov 2018 06:29:18 GMT): KaushalKedilaya (Thu, 15 Nov 2018 08:30:23 GMT): KaushalKedilaya (Thu, 15 Nov 2018 08:30:53 GMT): KaushalKedilaya (Thu, 15 Nov 2018 08:33:34 GMT): waleed (Thu, 15 Nov 2018 08:35:31 GMT): KaushalKedilaya (Thu, 15 Nov 2018 08:43:41 GMT): rthatcher (Thu, 15 Nov 2018 09:30:15 GMT): rthatcher (Thu, 15 Nov 2018 09:32:16 GMT): anaswar (Thu, 15 Nov 2018 09:44:24 GMT): anaswar (Thu, 15 Nov 2018 09:44:24 GMT): anaswar (Thu, 15 Nov 2018 09:56:57 GMT): anaswar (Thu, 15 Nov 2018 09:56:57 GMT): anaswar (Thu, 15 Nov 2018 09:56:57 GMT): anaswar (Thu, 15 Nov 2018 09:56:57 GMT): mahoney1 (Thu, 15 Nov 2018 10:05:39 GMT): anaswar (Thu, 15 Nov 2018 10:19:08 GMT): anaswar (Thu, 15 Nov 2018 10:19:08 GMT): mahoney1 (Thu, 15 Nov 2018 11:22:39 GMT): mahoney1 (Thu, 15 Nov 2018 11:22:39 GMT): anaswar (Thu, 15 Nov 2018 12:52:46 GMT): anaswar (Thu, 15 Nov 2018 12:52:46 GMT): darapich92 (Thu, 15 Nov 2018 13:55:22 GMT): rrishmawi (Thu, 15 Nov 2018 14:01:15 GMT): hudson (Thu, 15 Nov 2018 14:07:15 GMT): mahoney1 (Thu, 15 Nov 2018 14:28:35 GMT): rrishmawi (Thu, 15 Nov 2018 14:33:19 GMT): sureshtedla (Thu, 15 Nov 2018 15:07:02 GMT): sureshtedla (Thu, 15 Nov 2018 15:07:02 GMT): waleed (Thu, 15 Nov 2018 15:11:48 GMT): waleed (Thu, 15 Nov 2018 15:12:08 GMT): waleed (Thu, 15 Nov 2018 15:12:08 GMT): waleed (Thu, 15 Nov 2018 15:12:13 GMT): sureshtedla (Thu, 15 Nov 2018 15:15:51 GMT): mahoney1 (Thu, 15 Nov 2018 16:02:02 GMT): Awesam (Fri, 16 Nov 2018 00:18:21 GMT): Awesam (Fri, 16 Nov 2018 00:19:15 GMT): Awesam (Fri, 16 Nov 2018 00:19:17 GMT): touchingsoil (Fri, 16 Nov 2018 00:37:19 GMT): touchingsoil (Fri, 16 Nov 2018 00:37:19 GMT): prasanths96 (Fri, 16 Nov 2018 04:32:00 GMT): prasanths96 (Fri, 16 Nov 2018 04:36:49 GMT): prasanths96 (Fri, 16 Nov 2018 04:36:49 GMT): BernardDK (Fri, 16 Nov 2018 05:56:54 GMT): BernardDK (Fri, 16 Nov 2018 06:14:28 GMT): vanipolnedi (Fri, 16 Nov 2018 08:52:51 GMT): vanipolnedi (Fri, 16 Nov 2018 08:56:58 GMT): rthatcher (Fri, 16 Nov 2018 09:35:37 GMT): Awesam (Fri, 16 Nov 2018 09:40:14 GMT): rthatcher (Fri, 16 Nov 2018 09:43:49 GMT): david-kim-tpe (Fri, 16 Nov 2018 09:44:35 GMT): david-kim-tpe (Fri, 16 Nov 2018 09:44:35 GMT): david-kim-tpe (Fri, 16 Nov 2018 09:44:35 GMT): david-kim-tpe (Fri, 16 Nov 2018 09:44:35 GMT): mahoney1 (Fri, 16 Nov 2018 09:47:42 GMT): david-kim-tpe (Fri, 16 Nov 2018 09:49:52 GMT): david-kim-tpe (Fri, 16 Nov 2018 09:49:52 GMT): mahoney1 (Fri, 16 Nov 2018 09:59:29 GMT): mahoney1 (Fri, 16 Nov 2018 09:59:29 GMT): mahoney1 (Fri, 16 Nov 2018 10:03:48 GMT): mahoney1 (Fri, 16 Nov 2018 10:06:11 GMT): vanipolnedi (Fri, 16 Nov 2018 10:36:43 GMT): vanipolnedi (Fri, 16 Nov 2018 10:37:27 GMT): mahoney1 (Fri, 16 Nov 2018 11:02:55 GMT): vanipolnedi (Fri, 16 Nov 2018 11:05:57 GMT): vanipolnedi (Fri, 16 Nov 2018 11:07:43 GMT): padmaja9 (Fri, 16 Nov 2018 11:13:24 GMT): vanipolnedi (Fri, 16 Nov 2018 11:17:03 GMT): mahoney1 (Fri, 16 Nov 2018 11:18:18 GMT): mahoney1 (Fri, 16 Nov 2018 11:20:22 GMT): vanipolnedi (Fri, 16 Nov 2018 11:21:09 GMT): saikumar3349 (Fri, 16 Nov 2018 11:24:48 GMT): mahoney1 (Fri, 16 Nov 2018 11:24:50 GMT): mahoney1 (Fri, 16 Nov 2018 11:24:50 GMT): saikumar3349 (Fri, 16 Nov 2018 11:24:55 GMT): mahoney1 (Fri, 16 Nov 2018 11:29:38 GMT): mahoney1 (Fri, 16 Nov 2018 11:29:38 GMT): mahoney1 (Fri, 16 Nov 2018 11:29:38 GMT): mahoney1 (Fri, 16 Nov 2018 11:29:38 GMT): vanipolnedi (Fri, 16 Nov 2018 11:30:52 GMT): Nihcep (Fri, 16 Nov 2018 11:43:47 GMT): Nihcep (Fri, 16 Nov 2018 11:43:59 GMT): vanipolnedi (Fri, 16 Nov 2018 12:05:45 GMT): vanipolnedi (Fri, 16 Nov 2018 12:24:38 GMT): vanipolnedi (Fri, 16 Nov 2018 12:24:38 GMT): Nihcep (Fri, 16 Nov 2018 15:12:47 GMT): AkashNakka (Fri, 16 Nov 2018 15:23:23 GMT): AkashNakka (Fri, 16 Nov 2018 15:23:54 GMT): rthatcher (Fri, 16 Nov 2018 15:32:46 GMT): rthatcher (Fri, 16 Nov 2018 15:35:51 GMT): Nihcep (Fri, 16 Nov 2018 15:40:40 GMT): AkashNakka (Fri, 16 Nov 2018 16:00:19 GMT): Awesam (Sat, 17 Nov 2018 00:03:15 GMT): Awesam (Sat, 17 Nov 2018 00:03:32 GMT): Smit95shah (Sat, 17 Nov 2018 05:34:35 GMT): Smit95shah (Sat, 17 Nov 2018 05:34:44 GMT): Smit95shah (Sat, 17 Nov 2018 05:34:44 GMT): Smit95shah (Sat, 17 Nov 2018 05:41:06 GMT): MaherBouidani (Sat, 17 Nov 2018 23:33:38 GMT): MaherBouidani (Sat, 17 Nov 2018 23:34:06 GMT): MaherBouidani (Sat, 17 Nov 2018 23:34:45 GMT): MaherBouidani (Sat, 17 Nov 2018 23:35:27 GMT): MaherBouidani (Sat, 17 Nov 2018 23:35:44 GMT): MaherBouidani (Sat, 17 Nov 2018 23:36:03 GMT): MaherBouidani (Sat, 17 Nov 2018 23:36:03 GMT): MaherBouidani (Sat, 17 Nov 2018 23:36:48 GMT): MaherBouidani (Sat, 17 Nov 2018 23:39:41 GMT): MaherBouidani (Sat, 17 Nov 2018 23:40:12 GMT): toanhd (Sun, 18 Nov 2018 05:19:22 GMT): toanhd (Sun, 18 Nov 2018 05:19:39 GMT): toanhd (Sun, 18 Nov 2018 05:19:47 GMT): toanhd (Sun, 18 Nov 2018 05:20:35 GMT): RidaJebaria (Sun, 18 Nov 2018 19:21:20 GMT): saikumar3349 (Mon, 19 Nov 2018 04:22:16 GMT): brianpesy (Mon, 19 Nov 2018 05:46:36 GMT): njones920 (Mon, 19 Nov 2018 06:29:31 GMT): BernardDK (Mon, 19 Nov 2018 07:51:56 GMT): balamg (Mon, 19 Nov 2018 08:08:40 GMT): balamg (Mon, 19 Nov 2018 08:10:48 GMT): balamg (Mon, 19 Nov 2018 08:11:11 GMT): balamg (Mon, 19 Nov 2018 08:14:17 GMT): balamg (Mon, 19 Nov 2018 08:15:16 GMT): balamg (Mon, 19 Nov 2018 08:15:18 GMT): venkat_nagaraj (Mon, 19 Nov 2018 08:44:49 GMT): Nihcep (Mon, 19 Nov 2018 09:16:14 GMT): mahoney1 (Mon, 19 Nov 2018 10:15:32 GMT): MaherBouidani (Mon, 19 Nov 2018 10:19:12 GMT): MaherBouidani (Mon, 19 Nov 2018 10:19:36 GMT): MaherBouidani (Mon, 19 Nov 2018 10:20:09 GMT): MaherBouidani (Mon, 19 Nov 2018 10:20:17 GMT): MaherBouidani (Mon, 19 Nov 2018 10:25:01 GMT): mahoney1 (Mon, 19 Nov 2018 10:33:54 GMT): mahoney1 (Mon, 19 Nov 2018 11:27:19 GMT): rrishmawi (Mon, 19 Nov 2018 11:58:59 GMT): saikumar3349 (Mon, 19 Nov 2018 12:12:09 GMT): mahoney1 (Mon, 19 Nov 2018 12:17:52 GMT): mahoney1 (Mon, 19 Nov 2018 12:17:52 GMT): mahoney1 (Mon, 19 Nov 2018 12:17:52 GMT): mahoney1 (Mon, 19 Nov 2018 12:17:52 GMT): mahoney1 (Mon, 19 Nov 2018 12:17:52 GMT): sureshtedla (Mon, 19 Nov 2018 12:36:43 GMT): sureshtedla (Mon, 19 Nov 2018 12:36:43 GMT): sureshtedla (Mon, 19 Nov 2018 12:36:43 GMT): sureshtedla (Mon, 19 Nov 2018 12:36:43 GMT): rthatcher (Mon, 19 Nov 2018 14:01:24 GMT): toanhd (Mon, 19 Nov 2018 14:38:40 GMT): toanhd (Mon, 19 Nov 2018 14:38:40 GMT): Dima (Mon, 19 Nov 2018 14:58:50 GMT): mahoney1 (Mon, 19 Nov 2018 15:01:32 GMT): toanhd (Mon, 19 Nov 2018 15:36:19 GMT): toanhd (Mon, 19 Nov 2018 15:36:21 GMT): pol8y (Mon, 19 Nov 2018 15:41:35 GMT): pol8y (Mon, 19 Nov 2018 15:41:39 GMT): pol8y (Mon, 19 Nov 2018 15:42:05 GMT): pol8y (Mon, 19 Nov 2018 15:44:28 GMT): pol8y (Mon, 19 Nov 2018 15:45:00 GMT): pol8y (Mon, 19 Nov 2018 15:45:59 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:46:05 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:46:40 GMT): pol8y (Mon, 19 Nov 2018 15:46:42 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:46:43 GMT): pol8y (Mon, 19 Nov 2018 15:46:53 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:47:24 GMT): pol8y (Mon, 19 Nov 2018 15:47:41 GMT): pol8y (Mon, 19 Nov 2018 15:47:49 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:47:50 GMT): pol8y (Mon, 19 Nov 2018 15:48:03 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:48:04 GMT): pol8y (Mon, 19 Nov 2018 15:48:13 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:49:29 GMT): pol8y (Mon, 19 Nov 2018 15:49:41 GMT): pol8y (Mon, 19 Nov 2018 15:50:03 GMT): pol8y (Mon, 19 Nov 2018 15:50:21 GMT): pol8y (Mon, 19 Nov 2018 15:50:38 GMT): pol8y (Mon, 19 Nov 2018 15:51:03 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:51:58 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:52:00 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:52:16 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:52:29 GMT): pol8y (Mon, 19 Nov 2018 15:52:36 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:52:54 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:53:35 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:53:36 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:53:52 GMT): NursultanMakhanov (Mon, 19 Nov 2018 15:54:05 GMT): rthatcher (Mon, 19 Nov 2018 15:59:13 GMT): pol8y (Mon, 19 Nov 2018 16:00:25 GMT): pol8y (Mon, 19 Nov 2018 16:02:43 GMT): mahoney1 (Mon, 19 Nov 2018 16:09:11 GMT): mahoney1 (Mon, 19 Nov 2018 16:09:11 GMT): pol8y (Mon, 19 Nov 2018 16:14:56 GMT): pol8y (Mon, 19 Nov 2018 16:15:30 GMT): pol8y (Mon, 19 Nov 2018 16:15:36 GMT): NursultanMakhanov (Mon, 19 Nov 2018 16:16:01 GMT): pol8y (Mon, 19 Nov 2018 16:17:26 GMT): rthatcher (Mon, 19 Nov 2018 16:18:25 GMT): pol8y (Mon, 19 Nov 2018 16:19:45 GMT): pol8y (Mon, 19 Nov 2018 16:19:56 GMT): pol8y (Mon, 19 Nov 2018 16:20:22 GMT): pol8y (Mon, 19 Nov 2018 16:20:35 GMT): pol8y (Mon, 19 Nov 2018 16:21:41 GMT): pol8y (Mon, 19 Nov 2018 16:21:51 GMT): pol8y (Mon, 19 Nov 2018 16:22:23 GMT): pol8y (Mon, 19 Nov 2018 16:23:28 GMT): pol8y (Mon, 19 Nov 2018 16:24:03 GMT): pol8y (Mon, 19 Nov 2018 16:45:55 GMT): rthatcher (Mon, 19 Nov 2018 16:56:31 GMT): pol8y (Mon, 19 Nov 2018 16:59:10 GMT): pol8y (Mon, 19 Nov 2018 16:59:20 GMT): rthatcher (Mon, 19 Nov 2018 17:50:42 GMT): brianpesy (Tue, 20 Nov 2018 04:36:21 GMT): rashansamith88 (Tue, 20 Nov 2018 06:23:52 GMT): biksen (Tue, 20 Nov 2018 06:40:58 GMT): biksen (Tue, 20 Nov 2018 06:41:33 GMT): biksen (Tue, 20 Nov 2018 06:42:12 GMT): biksen (Tue, 20 Nov 2018 06:42:20 GMT): biksen (Tue, 20 Nov 2018 07:01:50 GMT): davidkel (Tue, 20 Nov 2018 07:22:06 GMT): biksen (Tue, 20 Nov 2018 07:24:57 GMT): biksen (Tue, 20 Nov 2018 07:25:11 GMT): biksen (Tue, 20 Nov 2018 07:25:30 GMT): davidkel (Tue, 20 Nov 2018 07:26:10 GMT): biksen (Tue, 20 Nov 2018 07:26:20 GMT): davidkel (Tue, 20 Nov 2018 07:28:16 GMT): biksen (Tue, 20 Nov 2018 07:30:52 GMT): MaherBouidani (Tue, 20 Nov 2018 07:54:26 GMT): MaherBouidani (Tue, 20 Nov 2018 07:54:27 GMT): rrishmawi (Tue, 20 Nov 2018 07:56:13 GMT): rashansamith88 (Tue, 20 Nov 2018 08:30:14 GMT): MaherBouidani (Tue, 20 Nov 2018 08:31:54 GMT): MaherBouidani (Tue, 20 Nov 2018 08:33:00 GMT): MaherBouidani (Tue, 20 Nov 2018 08:33:46 GMT): rashansamith88 (Tue, 20 Nov 2018 08:33:51 GMT): rashansamith88 (Tue, 20 Nov 2018 08:34:16 GMT): rashansamith88 (Tue, 20 Nov 2018 08:34:27 GMT): MaherBouidani (Tue, 20 Nov 2018 08:34:33 GMT): MaherBouidani (Tue, 20 Nov 2018 08:34:45 GMT): rashansamith88 (Tue, 20 Nov 2018 08:34:52 GMT): MaherBouidani (Tue, 20 Nov 2018 08:34:57 GMT): MaherBouidani (Tue, 20 Nov 2018 08:35:03 GMT): MaherBouidani (Tue, 20 Nov 2018 08:35:07 GMT): rashansamith88 (Tue, 20 Nov 2018 08:35:38 GMT): rashansamith88 (Tue, 20 Nov 2018 08:35:42 GMT): MaherBouidani (Tue, 20 Nov 2018 08:37:32 GMT): MaherBouidani (Tue, 20 Nov 2018 08:37:36 GMT): MaherBouidani (Tue, 20 Nov 2018 08:37:39 GMT): rashansamith88 (Tue, 20 Nov 2018 08:37:48 GMT): MaherBouidani (Tue, 20 Nov 2018 08:38:25 GMT): rashansamith88 (Tue, 20 Nov 2018 08:39:21 GMT): rashansamith88 (Tue, 20 Nov 2018 08:41:25 GMT): sudhir.kumawat (Tue, 20 Nov 2018 08:43:05 GMT): CorentinPacaud (Tue, 20 Nov 2018 08:47:01 GMT): CorentinPacaud (Tue, 20 Nov 2018 08:47:01 GMT): waleed (Tue, 20 Nov 2018 08:57:07 GMT): waleed (Tue, 20 Nov 2018 09:01:00 GMT): waleed (Tue, 20 Nov 2018 09:01:00 GMT): CorentinPacaud (Tue, 20 Nov 2018 09:02:42 GMT): CorentinPacaud (Tue, 20 Nov 2018 09:02:42 GMT): waleed (Tue, 20 Nov 2018 09:03:56 GMT): CorentinPacaud (Tue, 20 Nov 2018 09:07:03 GMT): davidkel (Tue, 20 Nov 2018 09:09:58 GMT): davidkel (Tue, 20 Nov 2018 09:09:58 GMT): waleed (Tue, 20 Nov 2018 09:10:24 GMT): CorentinPacaud (Tue, 20 Nov 2018 09:10:48 GMT): waleed (Tue, 20 Nov 2018 09:11:24 GMT): CorentinPacaud (Tue, 20 Nov 2018 09:11:40 GMT): rthatcher (Tue, 20 Nov 2018 09:26:27 GMT): CorentinPacaud (Tue, 20 Nov 2018 09:43:39 GMT): waleed (Tue, 20 Nov 2018 09:51:20 GMT): waleed (Tue, 20 Nov 2018 09:51:20 GMT): CorentinPacaud (Tue, 20 Nov 2018 09:54:38 GMT): waleed (Tue, 20 Nov 2018 09:56:50 GMT): waleed (Tue, 20 Nov 2018 09:56:50 GMT): CorentinPacaud (Tue, 20 Nov 2018 09:57:54 GMT): CorentinPacaud (Tue, 20 Nov 2018 10:00:48 GMT): waleed (Tue, 20 Nov 2018 10:06:54 GMT): waleed (Tue, 20 Nov 2018 10:06:54 GMT): CorentinPacaud (Tue, 20 Nov 2018 10:10:33 GMT): CorentinPacaud (Tue, 20 Nov 2018 10:12:43 GMT): davidkel (Tue, 20 Nov 2018 10:16:25 GMT): davidkel (Tue, 20 Nov 2018 10:16:58 GMT): CorentinPacaud (Tue, 20 Nov 2018 10:18:57 GMT): mahoney1 (Tue, 20 Nov 2018 10:25:28 GMT): mahoney1 (Tue, 20 Nov 2018 10:25:28 GMT): mahoney1 (Tue, 20 Nov 2018 10:26:53 GMT): CorentinPacaud (Tue, 20 Nov 2018 10:29:43 GMT): CorentinPacaud (Tue, 20 Nov 2018 10:29:49 GMT): davidkel (Tue, 20 Nov 2018 10:32:23 GMT): CorentinPacaud (Tue, 20 Nov 2018 10:36:48 GMT): davidkel (Tue, 20 Nov 2018 10:41:11 GMT): davidkel (Tue, 20 Nov 2018 10:41:11 GMT): CorentinPacaud (Tue, 20 Nov 2018 10:41:52 GMT): CorentinPacaud (Tue, 20 Nov 2018 10:42:43 GMT): CorentinPacaud (Tue, 20 Nov 2018 10:42:43 GMT): davidkel (Tue, 20 Nov 2018 10:43:19 GMT): CorentinPacaud (Tue, 20 Nov 2018 10:43:37 GMT): CorentinPacaud (Tue, 20 Nov 2018 10:43:37 GMT): davidkel (Tue, 20 Nov 2018 11:34:14 GMT): saikumar3349 (Tue, 20 Nov 2018 12:49:21 GMT): saikumar3349 (Tue, 20 Nov 2018 12:49:21 GMT): mahoney1 (Tue, 20 Nov 2018 13:10:37 GMT): mahoney1 (Tue, 20 Nov 2018 13:10:37 GMT): rrishmawi (Tue, 20 Nov 2018 13:10:57 GMT): mahoney1 (Tue, 20 Nov 2018 13:18:28 GMT): saikumar3349 (Tue, 20 Nov 2018 13:20:02 GMT): saikumar3349 (Tue, 20 Nov 2018 13:20:30 GMT): rthatcher (Tue, 20 Nov 2018 13:22:19 GMT): rrishmawi (Tue, 20 Nov 2018 13:23:34 GMT): CorentinPacaud (Tue, 20 Nov 2018 13:29:20 GMT): CorentinPacaud (Tue, 20 Nov 2018 13:29:51 GMT): saikumar3349 (Tue, 20 Nov 2018 13:33:58 GMT): davidkel (Tue, 20 Nov 2018 13:52:36 GMT): davidkel (Tue, 20 Nov 2018 13:52:36 GMT): davidkel (Tue, 20 Nov 2018 13:52:49 GMT): davidkel (Tue, 20 Nov 2018 13:53:53 GMT): pol8y (Tue, 20 Nov 2018 13:54:29 GMT): davidkel (Tue, 20 Nov 2018 13:54:30 GMT): saikumar3349 (Tue, 20 Nov 2018 13:57:47 GMT): CorentinPacaud (Tue, 20 Nov 2018 13:58:16 GMT): davidkel (Tue, 20 Nov 2018 13:59:18 GMT): CorentinPacaud (Tue, 20 Nov 2018 14:00:19 GMT): CorentinPacaud (Tue, 20 Nov 2018 14:00:19 GMT): davidkel (Tue, 20 Nov 2018 14:01:17 GMT): davidkel (Tue, 20 Nov 2018 14:01:40 GMT): CorentinPacaud (Tue, 20 Nov 2018 14:01:58 GMT): CorentinPacaud (Tue, 20 Nov 2018 14:03:08 GMT): davidkel (Tue, 20 Nov 2018 14:04:27 GMT): CorentinPacaud (Tue, 20 Nov 2018 14:07:37 GMT): CorentinPacaud (Tue, 20 Nov 2018 14:10:33 GMT): davidkel (Tue, 20 Nov 2018 14:10:54 GMT): CorentinPacaud (Tue, 20 Nov 2018 14:11:15 GMT): CorentinPacaud (Tue, 20 Nov 2018 14:12:51 GMT): CorentinPacaud (Tue, 20 Nov 2018 14:14:32 GMT): CorentinPacaud (Tue, 20 Nov 2018 14:15:10 GMT): davidkel (Tue, 20 Nov 2018 14:15:31 GMT): CorentinPacaud (Tue, 20 Nov 2018 14:15:47 GMT): CorentinPacaud (Tue, 20 Nov 2018 14:30:49 GMT): waleed (Tue, 20 Nov 2018 14:33:39 GMT): davidkel (Tue, 20 Nov 2018 14:43:33 GMT): CorentinPacaud (Tue, 20 Nov 2018 14:55:31 GMT): CorentinPacaud (Tue, 20 Nov 2018 15:09:47 GMT): mahoney1 (Tue, 20 Nov 2018 15:42:21 GMT): CorentinPacaud (Tue, 20 Nov 2018 15:52:10 GMT): mahoney1 (Tue, 20 Nov 2018 15:55:43 GMT): Vanitha (Tue, 20 Nov 2018 18:58:16 GMT): Vanitha (Tue, 20 Nov 2018 18:58:34 GMT): raky35 (Tue, 20 Nov 2018 23:04:23 GMT): raky35 (Tue, 20 Nov 2018 23:04:48 GMT): raky35 (Tue, 20 Nov 2018 23:05:04 GMT): raky35 (Tue, 20 Nov 2018 23:05:46 GMT): raky35 (Tue, 20 Nov 2018 23:06:02 GMT): saikumar3349 (Wed, 21 Nov 2018 03:37:15 GMT): saikumar3349 (Wed, 21 Nov 2018 03:38:24 GMT): JeffGutierrez (Wed, 21 Nov 2018 03:55:13 GMT): skykira (Wed, 21 Nov 2018 04:04:27 GMT): calvin.heo (Wed, 21 Nov 2018 04:09:16 GMT): KaushalKedilaya (Wed, 21 Nov 2018 05:13:59 GMT): KaushalKedilaya (Wed, 21 Nov 2018 05:18:59 GMT): davidkel (Wed, 21 Nov 2018 06:13:17 GMT): KaushalKedilaya (Wed, 21 Nov 2018 06:35:28 GMT): vanipolnedi (Wed, 21 Nov 2018 07:05:29 GMT): rthatcher (Wed, 21 Nov 2018 09:21:57 GMT): rthatcher (Wed, 21 Nov 2018 09:33:08 GMT): rthatcher (Wed, 21 Nov 2018 09:39:57 GMT): mahoney1 (Wed, 21 Nov 2018 09:54:20 GMT): KaushalKedilaya (Wed, 21 Nov 2018 10:39:46 GMT): touchingsoil (Wed, 21 Nov 2018 10:57:38 GMT): Vanitha (Wed, 21 Nov 2018 11:07:39 GMT): Vanitha (Wed, 21 Nov 2018 11:08:02 GMT): mahoney1 (Wed, 21 Nov 2018 11:27:36 GMT): mahoney1 (Wed, 21 Nov 2018 11:27:36 GMT): mahoney1 (Wed, 21 Nov 2018 11:29:05 GMT): mahoney1 (Wed, 21 Nov 2018 11:30:26 GMT): vanipolnedi (Wed, 21 Nov 2018 11:31:15 GMT): saikumar3349 (Wed, 21 Nov 2018 11:45:03 GMT): saikumar3349 (Wed, 21 Nov 2018 11:45:03 GMT): saikumar3349 (Wed, 21 Nov 2018 11:45:06 GMT): touchingsoil (Wed, 21 Nov 2018 11:46:19 GMT): sureshtedla (Wed, 21 Nov 2018 12:11:25 GMT): mrudav.shukla (Wed, 21 Nov 2018 12:29:31 GMT): mrudav.shukla (Wed, 21 Nov 2018 12:29:35 GMT): mrudav.shukla (Wed, 21 Nov 2018 12:30:00 GMT): mahoney1 (Wed, 21 Nov 2018 12:31:04 GMT): mahoney1 (Wed, 21 Nov 2018 12:34:17 GMT): mrudav.shukla (Wed, 21 Nov 2018 12:35:42 GMT): mahoney1 (Wed, 21 Nov 2018 12:37:13 GMT): rrishmawi (Wed, 21 Nov 2018 12:39:13 GMT): mahoney1 (Wed, 21 Nov 2018 12:39:49 GMT): brahmsMnzo (Wed, 21 Nov 2018 13:02:21 GMT): mahoney1 (Wed, 21 Nov 2018 13:02:41 GMT): mahoney1 (Wed, 21 Nov 2018 13:02:41 GMT): brahmsMnzo (Wed, 21 Nov 2018 13:05:51 GMT): brahmsMnzo (Wed, 21 Nov 2018 13:05:51 GMT): brahmsMnzo (Wed, 21 Nov 2018 13:20:13 GMT): brahmsMnzo (Wed, 21 Nov 2018 13:20:13 GMT): brahmsMnzo (Wed, 21 Nov 2018 13:20:13 GMT): adnanabbasktt (Wed, 21 Nov 2018 13:48:35 GMT): adnanabbasktt (Wed, 21 Nov 2018 13:48:35 GMT): rthatcher (Wed, 21 Nov 2018 13:54:24 GMT): rthatcher (Wed, 21 Nov 2018 13:54:24 GMT): brahmsMnzo (Wed, 21 Nov 2018 14:01:45 GMT): adnanabbasktt (Wed, 21 Nov 2018 14:19:57 GMT): iMacTia (Wed, 21 Nov 2018 14:44:32 GMT): iMacTia (Wed, 21 Nov 2018 14:45:55 GMT): iMacTia (Wed, 21 Nov 2018 14:48:25 GMT): iMacTia (Wed, 21 Nov 2018 14:48:25 GMT): iMacTia (Wed, 21 Nov 2018 14:48:33 GMT): iMacTia (Wed, 21 Nov 2018 14:49:53 GMT): iMacTia (Wed, 21 Nov 2018 14:50:20 GMT): rthatcher (Wed, 21 Nov 2018 15:02:01 GMT): rthatcher (Wed, 21 Nov 2018 15:04:17 GMT): mahoney1 (Wed, 21 Nov 2018 15:09:10 GMT): mahoney1 (Wed, 21 Nov 2018 15:09:10 GMT): adnanabbasktt (Wed, 21 Nov 2018 15:35:40 GMT): iMacTia (Wed, 21 Nov 2018 15:36:36 GMT): adnanabbasktt (Wed, 21 Nov 2018 15:37:42 GMT): adnanabbasktt (Wed, 21 Nov 2018 15:37:42 GMT): adnanabbasktt (Wed, 21 Nov 2018 15:40:47 GMT): iMacTia (Wed, 21 Nov 2018 15:42:28 GMT): iMacTia (Wed, 21 Nov 2018 15:42:59 GMT): iMacTia (Wed, 21 Nov 2018 15:43:12 GMT): brahmsMnzo (Wed, 21 Nov 2018 15:44:52 GMT): chrim5 (Wed, 21 Nov 2018 15:45:35 GMT): rthatcher (Wed, 21 Nov 2018 16:18:55 GMT): mahoney1 (Wed, 21 Nov 2018 16:28:15 GMT): mahoney1 (Wed, 21 Nov 2018 16:31:59 GMT): obernardovieira (Wed, 21 Nov 2018 18:25:29 GMT): obernardovieira (Wed, 21 Nov 2018 18:25:37 GMT): ronaldlong46 (Wed, 21 Nov 2018 20:50:25 GMT): ronaldlong46 (Wed, 21 Nov 2018 20:50:52 GMT): touchingsoil (Thu, 22 Nov 2018 01:02:20 GMT): ttarey (Thu, 22 Nov 2018 01:41:09 GMT): vanipolnedi (Thu, 22 Nov 2018 05:11:44 GMT): vanipolnedi (Thu, 22 Nov 2018 05:11:44 GMT): biksen (Thu, 22 Nov 2018 05:49:29 GMT): saikumar3349 (Thu, 22 Nov 2018 05:55:05 GMT): dave.enyeart (Thu, 22 Nov 2018 06:06:34 GMT): Techie (Thu, 22 Nov 2018 06:10:44 GMT): adnanabbasktt (Thu, 22 Nov 2018 06:37:50 GMT): adnanabbasktt (Thu, 22 Nov 2018 06:38:22 GMT): adnanabbasktt (Thu, 22 Nov 2018 06:38:48 GMT): padmaja9 (Thu, 22 Nov 2018 06:46:59 GMT): padmaja9 (Thu, 22 Nov 2018 06:46:59 GMT): dave.enyeart (Thu, 22 Nov 2018 06:52:13 GMT): davidkel (Thu, 22 Nov 2018 07:19:57 GMT): davidkel (Thu, 22 Nov 2018 07:21:14 GMT): biksen (Thu, 22 Nov 2018 07:46:51 GMT): MaherBouidani (Thu, 22 Nov 2018 08:07:43 GMT): MaherBouidani (Thu, 22 Nov 2018 08:07:47 GMT): MaherBouidani (Thu, 22 Nov 2018 08:07:52 GMT): MaherBouidani (Thu, 22 Nov 2018 08:10:22 GMT): MaherBouidani (Thu, 22 Nov 2018 08:10:43 GMT): MaherBouidani (Thu, 22 Nov 2018 08:11:05 GMT): toanhd (Thu, 22 Nov 2018 09:29:00 GMT): toanhd (Thu, 22 Nov 2018 09:29:37 GMT): rthatcher (Thu, 22 Nov 2018 09:39:57 GMT): toanhd (Thu, 22 Nov 2018 09:48:32 GMT): brahmsMnzo (Thu, 22 Nov 2018 09:57:24 GMT): rthatcher (Thu, 22 Nov 2018 09:59:42 GMT): biksen (Thu, 22 Nov 2018 10:08:30 GMT): saikumar3349 (Thu, 22 Nov 2018 10:18:43 GMT): davidkel (Thu, 22 Nov 2018 10:20:50 GMT): mahoney1 (Thu, 22 Nov 2018 10:21:15 GMT): mahoney1 (Thu, 22 Nov 2018 10:21:15 GMT): brahmsMnzo (Thu, 22 Nov 2018 10:24:31 GMT): mahoney1 (Thu, 22 Nov 2018 10:26:45 GMT): rthatcher (Thu, 22 Nov 2018 10:32:10 GMT): biksen (Thu, 22 Nov 2018 10:35:11 GMT): biksen (Thu, 22 Nov 2018 10:35:34 GMT): rrishmawi (Thu, 22 Nov 2018 10:42:05 GMT): Tiruyasha (Thu, 22 Nov 2018 10:47:28 GMT): Tiruyasha (Thu, 22 Nov 2018 10:47:39 GMT): mahoney1 (Thu, 22 Nov 2018 10:52:24 GMT): mahoney1 (Thu, 22 Nov 2018 11:02:21 GMT): mahoney1 (Thu, 22 Nov 2018 11:02:21 GMT): mahoney1 (Thu, 22 Nov 2018 11:02:21 GMT): mahoney1 (Thu, 22 Nov 2018 11:09:14 GMT): mahoney1 (Thu, 22 Nov 2018 11:09:14 GMT): biksen (Thu, 22 Nov 2018 11:18:45 GMT): biksen (Thu, 22 Nov 2018 11:19:15 GMT): mahoney1 (Thu, 22 Nov 2018 11:54:04 GMT): rrishmawi (Thu, 22 Nov 2018 12:29:53 GMT): saikumar3349 (Thu, 22 Nov 2018 13:37:49 GMT): saikumar3349 (Thu, 22 Nov 2018 13:37:49 GMT): rthatcher (Thu, 22 Nov 2018 14:09:42 GMT): rthatcher (Thu, 22 Nov 2018 14:09:42 GMT): brahmsMnzo (Thu, 22 Nov 2018 14:22:23 GMT): mahoney1 (Thu, 22 Nov 2018 14:23:33 GMT): mahoney1 (Thu, 22 Nov 2018 14:23:33 GMT): obernardovieira (Thu, 22 Nov 2018 14:25:00 GMT): mahoney1 (Thu, 22 Nov 2018 14:26:30 GMT): mahoney1 (Thu, 22 Nov 2018 14:26:30 GMT): brahmsMnzo (Thu, 22 Nov 2018 14:33:13 GMT): brahmsMnzo (Thu, 22 Nov 2018 14:33:13 GMT): brahmsMnzo (Thu, 22 Nov 2018 14:33:13 GMT): brahmsMnzo (Thu, 22 Nov 2018 14:33:13 GMT): brahmsMnzo (Thu, 22 Nov 2018 14:33:13 GMT): brahmsMnzo (Thu, 22 Nov 2018 14:33:13 GMT): mahoney1 (Thu, 22 Nov 2018 14:44:08 GMT): mahoney1 (Thu, 22 Nov 2018 14:44:08 GMT): mahoney1 (Thu, 22 Nov 2018 14:44:08 GMT): mahoney1 (Thu, 22 Nov 2018 14:44:08 GMT): davidkel (Thu, 22 Nov 2018 14:48:19 GMT): brahmsMnzo (Thu, 22 Nov 2018 14:54:57 GMT): brahmsMnzo (Thu, 22 Nov 2018 14:54:57 GMT): nurulmac11 (Thu, 22 Nov 2018 15:11:28 GMT): Nihcep (Thu, 22 Nov 2018 15:36:40 GMT): Nihcep (Thu, 22 Nov 2018 15:36:42 GMT): Nihcep (Thu, 22 Nov 2018 15:45:14 GMT): mahoney1 (Thu, 22 Nov 2018 16:51:25 GMT): mahoney1 (Thu, 22 Nov 2018 16:51:25 GMT): ehuarotop (Thu, 22 Nov 2018 22:00:55 GMT): ehuarotop (Thu, 22 Nov 2018 22:01:12 GMT): ehuarotop (Thu, 22 Nov 2018 22:01:43 GMT): ehuarotop (Thu, 22 Nov 2018 22:02:24 GMT): ehuarotop (Thu, 22 Nov 2018 22:02:36 GMT): KonstantinBushko (Fri, 23 Nov 2018 00:10:04 GMT): davidkel (Fri, 23 Nov 2018 06:54:24 GMT): varunagarwal (Fri, 23 Nov 2018 11:01:04 GMT): mahoney1 (Fri, 23 Nov 2018 13:45:02 GMT): saikumar3349 (Fri, 23 Nov 2018 13:48:13 GMT): saikumar3349 (Fri, 23 Nov 2018 13:48:13 GMT): mahoney1 (Fri, 23 Nov 2018 15:12:12 GMT): saikumar3349 (Fri, 23 Nov 2018 15:28:49 GMT): dacarva (Fri, 23 Nov 2018 15:37:17 GMT): mahoney1 (Fri, 23 Nov 2018 15:45:25 GMT): obernardovieira (Fri, 23 Nov 2018 16:21:13 GMT): obernardovieira (Fri, 23 Nov 2018 16:21:13 GMT): obernardovieira (Fri, 23 Nov 2018 16:21:13 GMT): davidkel (Fri, 23 Nov 2018 16:47:13 GMT): davidkel (Fri, 23 Nov 2018 16:47:13 GMT): obernardovieira (Fri, 23 Nov 2018 16:47:49 GMT): davidkel (Fri, 23 Nov 2018 16:49:49 GMT): obernardovieira (Fri, 23 Nov 2018 16:50:51 GMT): HARSHAS 1 (Sat, 24 Nov 2018 01:23:55 GMT): saikumar3349 (Sat, 24 Nov 2018 04:11:48 GMT): saikumar3349 (Sat, 24 Nov 2018 04:11:48 GMT): paktrad (Sat, 24 Nov 2018 05:59:02 GMT): paktrad (Sat, 24 Nov 2018 05:59:33 GMT): paktrad (Sat, 24 Nov 2018 05:59:33 GMT): paktrad (Sat, 24 Nov 2018 06:00:20 GMT): AnoGuy (Sat, 24 Nov 2018 07:05:30 GMT): saikumar3349 (Sat, 24 Nov 2018 09:20:15 GMT): rahul703 (Sat, 24 Nov 2018 10:29:14 GMT): davidkel (Sat, 24 Nov 2018 10:43:56 GMT): prasanths96 (Sat, 24 Nov 2018 13:31:02 GMT): AkashNakka (Sat, 24 Nov 2018 15:21:25 GMT): MaherBouidani (Sun, 25 Nov 2018 02:28:11 GMT): MaherBouidani (Sun, 25 Nov 2018 02:28:35 GMT): MaherBouidani (Sun, 25 Nov 2018 02:28:54 GMT): MaherBouidani (Sun, 25 Nov 2018 02:29:05 GMT): prasanths96 (Sun, 25 Nov 2018 08:29:40 GMT): ajbill (Sun, 25 Nov 2018 13:42:11 GMT): ajbill (Sun, 25 Nov 2018 13:43:05 GMT): prasanths96 (Sun, 25 Nov 2018 16:36:42 GMT): mahoney1 (Sun, 25 Nov 2018 17:06:59 GMT): mahoney1 (Sun, 25 Nov 2018 17:07:08 GMT): mahoney1 (Sun, 25 Nov 2018 17:07:08 GMT): mahoney1 (Sun, 25 Nov 2018 17:07:08 GMT): prasanths96 (Sun, 25 Nov 2018 17:57:28 GMT): MaherBouidani (Sun, 25 Nov 2018 21:45:15 GMT): MaherBouidani (Sun, 25 Nov 2018 21:45:29 GMT): MaherBouidani (Sun, 25 Nov 2018 21:45:29 GMT): davidkel (Sun, 25 Nov 2018 21:56:23 GMT): davidkel (Sun, 25 Nov 2018 21:56:23 GMT): MaherBouidani (Sun, 25 Nov 2018 22:03:28 GMT): MaherBouidani (Sun, 25 Nov 2018 22:03:28 GMT): MaherBouidani (Sun, 25 Nov 2018 22:03:46 GMT): MaherBouidani (Sun, 25 Nov 2018 22:05:13 GMT): davidkel (Sun, 25 Nov 2018 22:10:07 GMT): toanhd (Mon, 26 Nov 2018 03:44:26 GMT): toanhd (Mon, 26 Nov 2018 03:44:33 GMT): toanhd (Mon, 26 Nov 2018 03:44:49 GMT): Karthik1337 (Mon, 26 Nov 2018 04:35:28 GMT): vanipolnedi (Mon, 26 Nov 2018 05:18:11 GMT): biksen (Mon, 26 Nov 2018 05:31:25 GMT): saikumar3349 (Mon, 26 Nov 2018 05:40:06 GMT): saikumar3349 (Mon, 26 Nov 2018 05:40:06 GMT): saikumar3349 (Mon, 26 Nov 2018 05:40:06 GMT): Karthik1337 (Mon, 26 Nov 2018 05:43:03 GMT): saikumar3349 (Mon, 26 Nov 2018 05:58:16 GMT): koineramitranjan (Mon, 26 Nov 2018 06:06:10 GMT): abityildiz (Mon, 26 Nov 2018 06:06:20 GMT): Techie (Mon, 26 Nov 2018 06:55:43 GMT): davidkel (Mon, 26 Nov 2018 07:35:08 GMT): davidkel (Mon, 26 Nov 2018 07:47:45 GMT): davidkel (Mon, 26 Nov 2018 07:54:36 GMT): toanhd (Mon, 26 Nov 2018 08:05:44 GMT): davidkel (Mon, 26 Nov 2018 08:07:15 GMT): toanhd (Mon, 26 Nov 2018 08:10:57 GMT): davidkel (Mon, 26 Nov 2018 08:11:51 GMT): davidkel (Mon, 26 Nov 2018 08:11:51 GMT): toanhd (Mon, 26 Nov 2018 08:14:36 GMT): toanhd (Mon, 26 Nov 2018 08:14:36 GMT): toanhd (Mon, 26 Nov 2018 08:16:43 GMT): MaherBouidani (Mon, 26 Nov 2018 08:20:25 GMT): MaherBouidani (Mon, 26 Nov 2018 08:20:39 GMT): MaherBouidani (Mon, 26 Nov 2018 08:20:57 GMT): MaherBouidani (Mon, 26 Nov 2018 08:21:21 GMT): MaherBouidani (Mon, 26 Nov 2018 08:22:06 GMT): MaherBouidani (Mon, 26 Nov 2018 08:22:06 GMT): davidkel (Mon, 26 Nov 2018 08:25:05 GMT): MaherBouidani (Mon, 26 Nov 2018 08:25:49 GMT): prasanths96 (Mon, 26 Nov 2018 08:26:03 GMT): MaherBouidani (Mon, 26 Nov 2018 08:26:08 GMT): MaherBouidani (Mon, 26 Nov 2018 08:27:17 GMT): MaherBouidani (Mon, 26 Nov 2018 08:29:24 GMT): davidkel (Mon, 26 Nov 2018 08:29:58 GMT): MaherBouidani (Mon, 26 Nov 2018 08:30:29 GMT): abityildiz (Mon, 26 Nov 2018 08:30:48 GMT): davidkel (Mon, 26 Nov 2018 08:32:55 GMT): MaherBouidani (Mon, 26 Nov 2018 08:34:14 GMT): MaherBouidani (Mon, 26 Nov 2018 08:34:40 GMT): MaherBouidani (Mon, 26 Nov 2018 08:34:43 GMT): MaherBouidani (Mon, 26 Nov 2018 08:35:00 GMT): davidkel (Mon, 26 Nov 2018 08:35:01 GMT): davidkel (Mon, 26 Nov 2018 08:36:01 GMT): MaherBouidani (Mon, 26 Nov 2018 08:36:57 GMT): MaherBouidani (Mon, 26 Nov 2018 08:37:01 GMT): MaherBouidani (Mon, 26 Nov 2018 08:38:00 GMT): davidkel (Mon, 26 Nov 2018 08:41:00 GMT): davidkel (Mon, 26 Nov 2018 08:41:00 GMT): MaherBouidani (Mon, 26 Nov 2018 08:42:37 GMT): MaherBouidani (Mon, 26 Nov 2018 08:43:09 GMT): MaherBouidani (Mon, 26 Nov 2018 08:45:30 GMT): MaherBouidani (Mon, 26 Nov 2018 08:45:32 GMT): saikumar3349 (Mon, 26 Nov 2018 08:46:09 GMT): davidkel (Mon, 26 Nov 2018 08:48:18 GMT): davidkel (Mon, 26 Nov 2018 08:50:54 GMT): toanhd (Mon, 26 Nov 2018 08:52:51 GMT): toanhd (Mon, 26 Nov 2018 08:52:54 GMT): MaherBouidani (Mon, 26 Nov 2018 08:54:45 GMT): toanhd (Mon, 26 Nov 2018 08:54:59 GMT): MaherBouidani (Mon, 26 Nov 2018 08:55:14 GMT): MaherBouidani (Mon, 26 Nov 2018 08:55:38 GMT): toanhd (Mon, 26 Nov 2018 08:56:03 GMT): toanhd (Mon, 26 Nov 2018 08:56:09 GMT): davidkel (Mon, 26 Nov 2018 08:57:31 GMT): toanhd (Mon, 26 Nov 2018 08:57:46 GMT): MaherBouidani (Mon, 26 Nov 2018 08:59:15 GMT): MaherBouidani (Mon, 26 Nov 2018 08:59:15 GMT): toanhd (Mon, 26 Nov 2018 09:00:48 GMT): MaherBouidani (Mon, 26 Nov 2018 09:01:58 GMT): MaherBouidani (Mon, 26 Nov 2018 09:02:25 GMT): MaherBouidani (Mon, 26 Nov 2018 09:02:34 GMT): MaherBouidani (Mon, 26 Nov 2018 09:02:55 GMT): MaherBouidani (Mon, 26 Nov 2018 09:03:10 GMT): MaherBouidani (Mon, 26 Nov 2018 09:03:14 GMT): saikumar3349 (Mon, 26 Nov 2018 09:03:45 GMT): davidkel (Mon, 26 Nov 2018 09:04:27 GMT): davidkel (Mon, 26 Nov 2018 09:05:16 GMT): toanhd (Mon, 26 Nov 2018 09:06:50 GMT): toanhd (Mon, 26 Nov 2018 09:07:00 GMT): toanhd (Mon, 26 Nov 2018 09:07:03 GMT): toanhd (Mon, 26 Nov 2018 09:07:09 GMT): toanhd (Mon, 26 Nov 2018 09:09:57 GMT): toanhd (Mon, 26 Nov 2018 09:10:01 GMT): toanhd (Mon, 26 Nov 2018 09:10:01 GMT): davidkel (Mon, 26 Nov 2018 09:11:34 GMT): toanhd (Mon, 26 Nov 2018 09:13:28 GMT): saikumar3349 (Mon, 26 Nov 2018 09:14:02 GMT): toanhd (Mon, 26 Nov 2018 09:17:08 GMT): padmaja9 (Mon, 26 Nov 2018 09:17:42 GMT): davidkel (Mon, 26 Nov 2018 09:19:38 GMT): rthatcher (Mon, 26 Nov 2018 09:23:26 GMT): saikumar3349 (Mon, 26 Nov 2018 09:27:49 GMT): saikumar3349 (Mon, 26 Nov 2018 09:27:49 GMT): saikumar3349 (Mon, 26 Nov 2018 09:27:51 GMT): garunkumar450 (Mon, 26 Nov 2018 09:31:24 GMT): garunkumar450 (Mon, 26 Nov 2018 09:32:22 GMT): toanhd (Mon, 26 Nov 2018 09:35:01 GMT): biksen (Mon, 26 Nov 2018 09:35:48 GMT): biksen (Mon, 26 Nov 2018 09:35:53 GMT): biksen (Mon, 26 Nov 2018 09:36:57 GMT): toanhd (Mon, 26 Nov 2018 09:37:42 GMT): rthatcher (Mon, 26 Nov 2018 09:38:21 GMT): rthatcher (Mon, 26 Nov 2018 09:38:59 GMT): biksen (Mon, 26 Nov 2018 09:39:16 GMT): NursultanMakhanov (Mon, 26 Nov 2018 09:40:20 GMT): garunkumar450 (Mon, 26 Nov 2018 09:46:55 GMT): garunkumar450 (Mon, 26 Nov 2018 09:46:55 GMT): rthatcher (Mon, 26 Nov 2018 09:49:56 GMT): NursultanMakhanov (Mon, 26 Nov 2018 10:00:17 GMT): vanipolnedi (Mon, 26 Nov 2018 10:02:42 GMT): rthatcher (Mon, 26 Nov 2018 10:03:15 GMT): garunkumar450 (Mon, 26 Nov 2018 10:06:20 GMT): rthatcher (Mon, 26 Nov 2018 10:16:30 GMT): saikumar3349 (Mon, 26 Nov 2018 10:17:20 GMT): Vanitha (Mon, 26 Nov 2018 10:17:39 GMT): garunkumar450 (Mon, 26 Nov 2018 10:24:28 GMT): prasanths96 (Mon, 26 Nov 2018 10:25:37 GMT): prasanths96 (Mon, 26 Nov 2018 10:25:37 GMT): rthatcher (Mon, 26 Nov 2018 10:25:38 GMT): rthatcher (Mon, 26 Nov 2018 10:25:38 GMT): vanipolnedi (Mon, 26 Nov 2018 10:35:52 GMT): ShaikSharuk (Mon, 26 Nov 2018 10:44:18 GMT): mahoney1 (Mon, 26 Nov 2018 11:07:14 GMT): mahoney1 (Mon, 26 Nov 2018 11:07:14 GMT): mahoney1 (Mon, 26 Nov 2018 11:07:14 GMT): rthatcher (Mon, 26 Nov 2018 11:15:12 GMT): Vanitha (Mon, 26 Nov 2018 11:43:50 GMT): Vanitha (Mon, 26 Nov 2018 11:44:35 GMT): Vanitha (Mon, 26 Nov 2018 11:44:40 GMT): MaherBouidani (Mon, 26 Nov 2018 11:46:00 GMT): MaherBouidani (Mon, 26 Nov 2018 11:46:13 GMT): MaherBouidani (Mon, 26 Nov 2018 11:46:28 GMT): MaherBouidani (Mon, 26 Nov 2018 11:46:58 GMT): MaherBouidani (Mon, 26 Nov 2018 11:47:24 GMT): MaherBouidani (Mon, 26 Nov 2018 11:47:38 GMT): mahoney1 (Mon, 26 Nov 2018 12:02:51 GMT): mahoney1 (Mon, 26 Nov 2018 12:02:51 GMT): vanipolnedi (Mon, 26 Nov 2018 12:04:58 GMT): NursultanMakhanov (Mon, 26 Nov 2018 12:09:05 GMT): davidkel (Mon, 26 Nov 2018 12:22:23 GMT): S.pradeepkumar (Mon, 26 Nov 2018 14:15:01 GMT): S.pradeepkumar (Mon, 26 Nov 2018 14:16:06 GMT): S.pradeepkumar (Mon, 26 Nov 2018 14:16:41 GMT): vanipolnedi (Mon, 26 Nov 2018 14:20:39 GMT): davidkel (Mon, 26 Nov 2018 15:03:16 GMT): ajbill (Mon, 26 Nov 2018 17:41:04 GMT): jorgego (Tue, 27 Nov 2018 02:01:42 GMT): saikumar3349 (Tue, 27 Nov 2018 05:09:31 GMT): padmaja9 (Tue, 27 Nov 2018 05:47:40 GMT): padmaja9 (Tue, 27 Nov 2018 05:49:33 GMT): davidkel (Tue, 27 Nov 2018 07:37:56 GMT): rrishmawi (Tue, 27 Nov 2018 08:40:24 GMT): saikumar3349 (Tue, 27 Nov 2018 09:19:47 GMT): mahoney1 (Tue, 27 Nov 2018 10:01:01 GMT): rthatcher (Tue, 27 Nov 2018 10:01:59 GMT): saikumar3349 (Tue, 27 Nov 2018 10:37:20 GMT): saikumar3349 (Tue, 27 Nov 2018 10:37:34 GMT): mahoney1 (Tue, 27 Nov 2018 10:42:16 GMT): mahoney1 (Tue, 27 Nov 2018 10:42:16 GMT): rrishmawi (Tue, 27 Nov 2018 10:44:46 GMT): saikumar3349 (Tue, 27 Nov 2018 10:46:34 GMT): saikumar3349 (Tue, 27 Nov 2018 10:46:34 GMT): saikumar3349 (Tue, 27 Nov 2018 10:46:34 GMT): mahoney1 (Tue, 27 Nov 2018 10:51:01 GMT): saikumar3349 (Tue, 27 Nov 2018 10:55:46 GMT): saikumar3349 (Tue, 27 Nov 2018 10:55:46 GMT): rahul703 (Tue, 27 Nov 2018 13:37:30 GMT): rahul703 (Tue, 27 Nov 2018 13:37:35 GMT): rahul703 (Tue, 27 Nov 2018 13:38:01 GMT): Mehak (Tue, 27 Nov 2018 14:01:17 GMT): Mehak (Tue, 27 Nov 2018 14:01:29 GMT): prasanths96 (Tue, 27 Nov 2018 14:14:23 GMT): prasanths96 (Tue, 27 Nov 2018 14:14:23 GMT): prasanths96 (Tue, 27 Nov 2018 14:14:23 GMT): prasanths96 (Tue, 27 Nov 2018 14:14:23 GMT): prasanths96 (Tue, 27 Nov 2018 14:14:23 GMT): prasanths96 (Tue, 27 Nov 2018 14:14:23 GMT): prasanths96 (Tue, 27 Nov 2018 14:14:23 GMT): prasanths96 (Tue, 27 Nov 2018 14:18:08 GMT): prasanths96 (Tue, 27 Nov 2018 14:25:25 GMT): prasanths96 (Tue, 27 Nov 2018 14:31:15 GMT): prasanths96 (Tue, 27 Nov 2018 14:31:15 GMT): davidkel (Tue, 27 Nov 2018 14:43:34 GMT): rahul703 (Tue, 27 Nov 2018 14:50:37 GMT): rahul703 (Tue, 27 Nov 2018 14:51:18 GMT): rahul703 (Tue, 27 Nov 2018 14:51:18 GMT): davidkel (Tue, 27 Nov 2018 14:56:40 GMT): padmaja9 (Tue, 27 Nov 2018 15:01:35 GMT): padmaja9 (Tue, 27 Nov 2018 15:01:35 GMT): ajbill (Tue, 27 Nov 2018 21:57:09 GMT): ajbill (Tue, 27 Nov 2018 21:57:09 GMT): davidkel (Tue, 27 Nov 2018 22:03:57 GMT): JeffGutierrez (Wed, 28 Nov 2018 00:47:41 GMT): ArwaKanani (Wed, 28 Nov 2018 05:55:25 GMT): ArwaKanani (Wed, 28 Nov 2018 06:26:37 GMT): saikumar3349 (Wed, 28 Nov 2018 06:59:53 GMT): Techie (Wed, 28 Nov 2018 07:06:39 GMT): saeedi (Wed, 28 Nov 2018 07:42:21 GMT): rrishmawi (Wed, 28 Nov 2018 08:52:48 GMT): rrishmawi (Wed, 28 Nov 2018 08:54:18 GMT): rrishmawi (Wed, 28 Nov 2018 08:56:15 GMT): rthatcher (Wed, 28 Nov 2018 09:21:31 GMT): rthatcher (Wed, 28 Nov 2018 09:26:32 GMT): saeedi (Wed, 28 Nov 2018 09:29:33 GMT): Techie (Wed, 28 Nov 2018 09:41:48 GMT): rthatcher (Wed, 28 Nov 2018 09:53:36 GMT): rrishmawi (Wed, 28 Nov 2018 10:25:34 GMT): rrishmawi (Wed, 28 Nov 2018 10:29:57 GMT): rrishmawi (Wed, 28 Nov 2018 10:29:57 GMT): vanipolnedi (Wed, 28 Nov 2018 10:52:14 GMT): vanipolnedi (Wed, 28 Nov 2018 10:52:14 GMT): vanipolnedi (Wed, 28 Nov 2018 10:53:42 GMT): saeedi (Wed, 28 Nov 2018 11:13:23 GMT): vanipolnedi (Wed, 28 Nov 2018 11:29:34 GMT): rrishmawi (Wed, 28 Nov 2018 11:57:30 GMT): saikumar3349 (Wed, 28 Nov 2018 12:04:18 GMT): saikumar3349 (Wed, 28 Nov 2018 12:04:18 GMT): rrishmawi (Wed, 28 Nov 2018 13:18:27 GMT): rthatcher (Wed, 28 Nov 2018 13:35:27 GMT): rthatcher (Wed, 28 Nov 2018 13:35:27 GMT): mahoney1 (Wed, 28 Nov 2018 15:53:13 GMT): rrishmawi (Wed, 28 Nov 2018 16:41:09 GMT): jbisson (Wed, 28 Nov 2018 18:20:20 GMT): jbisson (Wed, 28 Nov 2018 18:22:52 GMT): dselman (Wed, 28 Nov 2018 18:23:55 GMT): dselman (Wed, 28 Nov 2018 18:24:25 GMT): ronaldlong46 (Wed, 28 Nov 2018 19:30:47 GMT): dselman (Wed, 28 Nov 2018 21:56:50 GMT): dselman (Wed, 28 Nov 2018 21:57:35 GMT): dla99 (Thu, 29 Nov 2018 00:28:54 GMT): varunagarwal (Thu, 29 Nov 2018 04:52:16 GMT): vanipolnedi (Thu, 29 Nov 2018 05:47:48 GMT): PatrickOrtell (Thu, 29 Nov 2018 05:56:15 GMT): PatrickOrtell (Thu, 29 Nov 2018 05:56:31 GMT): PatrickOrtell (Thu, 29 Nov 2018 05:58:27 GMT): PatrickOrtell (Thu, 29 Nov 2018 05:58:31 GMT): PatrickOrtell (Thu, 29 Nov 2018 05:58:44 GMT): PatrickOrtell (Thu, 29 Nov 2018 05:59:00 GMT): PatrickOrtell (Thu, 29 Nov 2018 06:00:29 GMT): PatrickOrtell (Thu, 29 Nov 2018 06:02:00 GMT): PatrickOrtell (Thu, 29 Nov 2018 06:05:35 GMT): MaherBouidani (Thu, 29 Nov 2018 06:06:47 GMT): MaherBouidani (Thu, 29 Nov 2018 06:07:39 GMT): MaherBouidani (Thu, 29 Nov 2018 06:07:55 GMT): MaherBouidani (Thu, 29 Nov 2018 06:08:19 GMT): MaherBouidani (Thu, 29 Nov 2018 06:10:56 GMT): PatrickOrtell (Thu, 29 Nov 2018 06:10:57 GMT): MaherBouidani (Thu, 29 Nov 2018 06:11:17 GMT): MaherBouidani (Thu, 29 Nov 2018 06:11:21 GMT): MaherBouidani (Thu, 29 Nov 2018 06:11:24 GMT): MaherBouidani (Thu, 29 Nov 2018 06:13:30 GMT): PatrickOrtell (Thu, 29 Nov 2018 06:14:47 GMT): MaherBouidani (Thu, 29 Nov 2018 06:15:12 GMT): MaherBouidani (Thu, 29 Nov 2018 06:15:14 GMT): MaherBouidani (Thu, 29 Nov 2018 06:15:18 GMT): PatrickOrtell (Thu, 29 Nov 2018 06:15:23 GMT): MaherBouidani (Thu, 29 Nov 2018 06:15:47 GMT): MaherBouidani (Thu, 29 Nov 2018 06:16:13 GMT): MaherBouidani (Thu, 29 Nov 2018 06:16:34 GMT): MaherBouidani (Thu, 29 Nov 2018 06:16:52 GMT): MaherBouidani (Thu, 29 Nov 2018 06:16:57 GMT): PatrickOrtell (Thu, 29 Nov 2018 06:16:58 GMT): dselman (Thu, 29 Nov 2018 06:43:13 GMT): dselman (Thu, 29 Nov 2018 06:43:22 GMT): padmaja9 (Thu, 29 Nov 2018 07:33:11 GMT): zorrothefox (Thu, 29 Nov 2018 07:35:16 GMT): davidkel (Thu, 29 Nov 2018 07:44:30 GMT): haggis (Thu, 29 Nov 2018 08:07:33 GMT): ShaikSharuk (Thu, 29 Nov 2018 10:30:11 GMT): medipal (Thu, 29 Nov 2018 11:27:53 GMT): medipal (Thu, 29 Nov 2018 11:28:43 GMT): zorrothefox (Thu, 29 Nov 2018 11:30:23 GMT): zorrothefox (Thu, 29 Nov 2018 11:30:23 GMT): zorrothefox (Thu, 29 Nov 2018 11:30:23 GMT): zorrothefox (Thu, 29 Nov 2018 11:30:23 GMT): sureshtedla (Thu, 29 Nov 2018 11:51:28 GMT): sureshtedla (Thu, 29 Nov 2018 11:51:28 GMT): sureshtedla (Thu, 29 Nov 2018 11:53:18 GMT): rthatcher (Thu, 29 Nov 2018 11:54:46 GMT): zorrothefox (Thu, 29 Nov 2018 11:58:12 GMT): rthatcher (Thu, 29 Nov 2018 11:58:26 GMT): zorrothefox (Thu, 29 Nov 2018 11:59:02 GMT): sureshtedla (Thu, 29 Nov 2018 12:00:52 GMT): rthatcher (Thu, 29 Nov 2018 12:04:08 GMT): ShaikSharuk (Thu, 29 Nov 2018 12:05:54 GMT): rthatcher (Thu, 29 Nov 2018 12:09:25 GMT): mahoney1 (Thu, 29 Nov 2018 12:25:25 GMT): zorrothefox (Thu, 29 Nov 2018 12:30:13 GMT): zorrothefox (Thu, 29 Nov 2018 12:30:13 GMT): zorrothefox (Thu, 29 Nov 2018 12:30:13 GMT): zorrothefox (Thu, 29 Nov 2018 12:31:06 GMT): zorrothefox (Thu, 29 Nov 2018 12:34:03 GMT): zorrothefox (Thu, 29 Nov 2018 12:34:03 GMT): zorrothefox (Thu, 29 Nov 2018 12:34:03 GMT): purandam (Thu, 29 Nov 2018 12:39:04 GMT): abilashs (Thu, 29 Nov 2018 12:40:03 GMT): zorrothefox (Thu, 29 Nov 2018 12:40:55 GMT): purandam (Thu, 29 Nov 2018 12:45:39 GMT): zorrothefox (Thu, 29 Nov 2018 12:47:51 GMT): zorrothefox (Thu, 29 Nov 2018 12:47:51 GMT): purandam (Thu, 29 Nov 2018 12:50:59 GMT): zorrothefox (Thu, 29 Nov 2018 12:51:45 GMT): purandam (Thu, 29 Nov 2018 12:54:06 GMT): purandam (Thu, 29 Nov 2018 12:54:43 GMT): purandam (Thu, 29 Nov 2018 12:58:48 GMT): davidkel (Thu, 29 Nov 2018 13:00:04 GMT): abilashs (Thu, 29 Nov 2018 13:02:21 GMT): davidkel (Thu, 29 Nov 2018 13:04:25 GMT): davidkel (Thu, 29 Nov 2018 13:04:25 GMT): mahoney1 (Thu, 29 Nov 2018 13:04:39 GMT): abilashs (Thu, 29 Nov 2018 13:12:34 GMT): zorrothefox (Thu, 29 Nov 2018 13:14:19 GMT): vanipolnedi (Thu, 29 Nov 2018 13:28:53 GMT): sureshtedla (Thu, 29 Nov 2018 13:32:41 GMT): ShaikSharuk (Thu, 29 Nov 2018 14:08:21 GMT): ihormudryy (Thu, 29 Nov 2018 14:15:26 GMT): zorrothefox (Thu, 29 Nov 2018 14:26:56 GMT): zorrothefox (Thu, 29 Nov 2018 14:26:56 GMT): PatrickOrtell (Thu, 29 Nov 2018 15:41:06 GMT): FLASHJr (Thu, 29 Nov 2018 16:41:56 GMT): zorrothefox (Thu, 29 Nov 2018 17:12:08 GMT): zorrothefox (Thu, 29 Nov 2018 17:12:08 GMT): zorrothefox (Thu, 29 Nov 2018 17:12:08 GMT): zorrothefox (Thu, 29 Nov 2018 17:12:08 GMT): zorrothefox (Thu, 29 Nov 2018 17:22:02 GMT): seribuan (Thu, 29 Nov 2018 17:39:49 GMT): doowb (Thu, 29 Nov 2018 21:29:20 GMT): doowb (Thu, 29 Nov 2018 21:33:57 GMT): doowb (Thu, 29 Nov 2018 21:42:20 GMT): doowb (Thu, 29 Nov 2018 21:42:43 GMT): flyaked (Fri, 30 Nov 2018 01:29:40 GMT): flyaked (Fri, 30 Nov 2018 03:43:49 GMT): flyaked (Fri, 30 Nov 2018 03:44:44 GMT): flyaked (Fri, 30 Nov 2018 03:46:15 GMT): flyaked (Fri, 30 Nov 2018 03:47:34 GMT): flyaked (Fri, 30 Nov 2018 03:49:00 GMT): flyaked (Fri, 30 Nov 2018 03:50:24 GMT): varunagarwal (Fri, 30 Nov 2018 05:52:03 GMT): prasanths96 (Fri, 30 Nov 2018 06:12:27 GMT): composer (Fri, 30 Nov 2018 06:43:10 GMT): composer (Fri, 30 Nov 2018 06:45:45 GMT): ShaikSharuk (Fri, 30 Nov 2018 06:49:39 GMT): nicezic (Fri, 30 Nov 2018 07:04:35 GMT): zorrothefox (Fri, 30 Nov 2018 08:26:15 GMT): zorrothefox (Fri, 30 Nov 2018 08:42:51 GMT): zorrothefox (Fri, 30 Nov 2018 08:43:14 GMT): zorrothefox (Fri, 30 Nov 2018 08:43:27 GMT): rthatcher (Fri, 30 Nov 2018 09:13:36 GMT): rthatcher (Fri, 30 Nov 2018 09:17:34 GMT): rthatcher (Fri, 30 Nov 2018 09:28:45 GMT): composer (Fri, 30 Nov 2018 09:43:51 GMT): composer (Fri, 30 Nov 2018 09:43:51 GMT): zorrothefox (Fri, 30 Nov 2018 09:50:37 GMT): mahoney1 (Fri, 30 Nov 2018 09:50:54 GMT): mahoney1 (Fri, 30 Nov 2018 09:50:54 GMT): ShaikSharuk (Fri, 30 Nov 2018 10:01:48 GMT): ShaikSharuk (Fri, 30 Nov 2018 10:02:52 GMT): rthatcher (Fri, 30 Nov 2018 10:03:41 GMT): zorrothefox (Fri, 30 Nov 2018 10:05:03 GMT): zorrothefox (Fri, 30 Nov 2018 10:05:03 GMT): zorrothefox (Fri, 30 Nov 2018 10:05:03 GMT): ShaikSharuk (Fri, 30 Nov 2018 10:07:21 GMT): p1212 (Fri, 30 Nov 2018 12:08:27 GMT): varinder (Fri, 30 Nov 2018 18:03:18 GMT): varinder (Fri, 30 Nov 2018 18:03:18 GMT): rthatcher (Fri, 30 Nov 2018 18:40:51 GMT): rsoeldner (Sat, 01 Dec 2018 06:36:57 GMT): rsoeldner (Sat, 01 Dec 2018 06:48:13 GMT): MaherBouidani (Sat, 01 Dec 2018 07:44:27 GMT): MaherBouidani (Sat, 01 Dec 2018 07:44:27 GMT): MaherBouidani (Sat, 01 Dec 2018 07:44:44 GMT): MaherBouidani (Sat, 01 Dec 2018 07:45:01 GMT): MaherBouidani (Sat, 01 Dec 2018 07:45:06 GMT): MaherBouidani (Sat, 01 Dec 2018 07:45:38 GMT): MaherBouidani (Sat, 01 Dec 2018 07:46:16 GMT): MaherBouidani (Sat, 01 Dec 2018 07:46:31 GMT): MaherBouidani (Sat, 01 Dec 2018 07:46:54 GMT): davidkel (Sat, 01 Dec 2018 08:39:38 GMT): davidkel (Sat, 01 Dec 2018 08:41:35 GMT): davidkel (Sat, 01 Dec 2018 08:42:34 GMT): tuckerg (Sat, 01 Dec 2018 09:01:13 GMT): MaherBouidani (Sat, 01 Dec 2018 09:06:05 GMT): MaherBouidani (Sat, 01 Dec 2018 09:06:21 GMT): MaherBouidani (Sat, 01 Dec 2018 09:06:37 GMT): MaherBouidani (Sat, 01 Dec 2018 09:06:46 GMT): MaherBouidani (Sat, 01 Dec 2018 09:06:49 GMT): MaherBouidani (Sat, 01 Dec 2018 09:07:03 GMT): MaherBouidani (Sat, 01 Dec 2018 09:07:10 GMT): MaherBouidani (Sat, 01 Dec 2018 09:07:33 GMT): MaherBouidani (Sat, 01 Dec 2018 09:07:45 GMT): MaherBouidani (Sat, 01 Dec 2018 09:08:04 GMT): zorrothefox (Sat, 01 Dec 2018 12:17:25 GMT): zorrothefox (Sat, 01 Dec 2018 12:17:25 GMT): rsoeldner (Sat, 01 Dec 2018 12:36:22 GMT): twen (Sat, 01 Dec 2018 13:22:29 GMT): twen (Sat, 01 Dec 2018 13:22:40 GMT): twen (Sat, 01 Dec 2018 13:22:40 GMT): MaherBouidani (Sat, 01 Dec 2018 13:25:52 GMT): MaherBouidani (Sat, 01 Dec 2018 13:26:21 GMT): MaherBouidani (Sat, 01 Dec 2018 13:26:35 GMT): MaherBouidani (Sat, 01 Dec 2018 13:26:54 GMT): MaherBouidani (Sat, 01 Dec 2018 13:27:04 GMT): MaherBouidani (Sat, 01 Dec 2018 13:27:05 GMT): MaherBouidani (Sat, 01 Dec 2018 13:27:17 GMT): ajbill (Sat, 01 Dec 2018 15:38:49 GMT): ajbill (Sat, 01 Dec 2018 15:39:49 GMT): Kaddel (Sun, 02 Dec 2018 11:08:39 GMT): edisinovcic (Sun, 02 Dec 2018 12:36:24 GMT): nikhildhus (Sun, 02 Dec 2018 13:53:46 GMT): davidkel (Sun, 02 Dec 2018 14:04:50 GMT): davidkel (Sun, 02 Dec 2018 14:04:50 GMT): Teckchun94 (Sun, 02 Dec 2018 15:36:04 GMT): Teckchun94 (Sun, 02 Dec 2018 15:37:59 GMT): nikhildhus (Sun, 02 Dec 2018 16:23:07 GMT): davidkel (Sun, 02 Dec 2018 18:57:41 GMT): davidkel (Sun, 02 Dec 2018 19:06:47 GMT): davidkel (Sun, 02 Dec 2018 19:06:47 GMT): davidkel (Sun, 02 Dec 2018 19:06:47 GMT): Teckchun94 (Mon, 03 Dec 2018 04:04:39 GMT): ShaikSharuk (Mon, 03 Dec 2018 05:44:29 GMT): ShaikSharuk (Mon, 03 Dec 2018 05:52:36 GMT): Techie (Mon, 03 Dec 2018 06:04:19 GMT): ShaikSharuk (Mon, 03 Dec 2018 06:15:14 GMT): JohnR (Mon, 03 Dec 2018 08:32:22 GMT): prasanths96 (Mon, 03 Dec 2018 09:49:32 GMT): prasanths96 (Mon, 03 Dec 2018 09:49:32 GMT): prasanths96 (Mon, 03 Dec 2018 09:49:32 GMT): rthatcher (Mon, 03 Dec 2018 09:54:31 GMT): rrishmawi (Mon, 03 Dec 2018 10:00:52 GMT): biksen (Mon, 03 Dec 2018 10:03:23 GMT): KindlebitPhp (Mon, 03 Dec 2018 10:14:34 GMT): rrishmawi (Mon, 03 Dec 2018 10:19:22 GMT): ihormudryy (Mon, 03 Dec 2018 10:33:46 GMT): mahoney1 (Mon, 03 Dec 2018 10:44:54 GMT): mahoney1 (Mon, 03 Dec 2018 10:44:54 GMT): mahoney1 (Mon, 03 Dec 2018 10:50:23 GMT): mahoney1 (Mon, 03 Dec 2018 10:50:23 GMT): mahoney1 (Mon, 03 Dec 2018 10:56:36 GMT): mahoney1 (Mon, 03 Dec 2018 10:56:36 GMT): KindlebitPhp (Mon, 03 Dec 2018 11:05:43 GMT): KindlebitPhp (Mon, 03 Dec 2018 11:05:43 GMT): ihormudryy (Mon, 03 Dec 2018 11:08:21 GMT): ShaikSharuk (Mon, 03 Dec 2018 11:11:05 GMT): mahoney1 (Mon, 03 Dec 2018 11:14:59 GMT): mahoney1 (Mon, 03 Dec 2018 11:14:59 GMT): saeedi (Mon, 03 Dec 2018 11:20:13 GMT): saeedi (Mon, 03 Dec 2018 11:20:13 GMT): ShaikSharuk (Mon, 03 Dec 2018 11:20:45 GMT): mahoney1 (Mon, 03 Dec 2018 11:23:18 GMT): ShaikSharuk (Mon, 03 Dec 2018 11:24:46 GMT): mahoney1 (Mon, 03 Dec 2018 11:24:48 GMT): saeedi (Mon, 03 Dec 2018 11:38:06 GMT): rrishmawi (Mon, 03 Dec 2018 12:20:07 GMT): mahoney1 (Mon, 03 Dec 2018 12:33:01 GMT): rrishmawi (Mon, 03 Dec 2018 13:06:05 GMT): AVetter (Mon, 03 Dec 2018 15:01:05 GMT): mallikarjunasai995 (Mon, 03 Dec 2018 15:01:41 GMT): AVetter (Mon, 03 Dec 2018 15:53:23 GMT): davidkel (Mon, 03 Dec 2018 16:26:23 GMT): AVetter (Mon, 03 Dec 2018 16:34:40 GMT): nRyDevOps (Mon, 03 Dec 2018 16:45:09 GMT): karvou (Mon, 03 Dec 2018 16:47:54 GMT): rsoeldner (Mon, 03 Dec 2018 18:29:11 GMT): Garrett (Mon, 03 Dec 2018 21:44:42 GMT): Garrett (Mon, 03 Dec 2018 22:08:43 GMT): Garrett (Mon, 03 Dec 2018 22:09:16 GMT): davidkel (Mon, 03 Dec 2018 22:33:13 GMT): Garrett (Mon, 03 Dec 2018 22:43:22 GMT): Garrett (Mon, 03 Dec 2018 22:44:03 GMT): Garrett (Mon, 03 Dec 2018 22:44:55 GMT): Garrett (Mon, 03 Dec 2018 23:51:10 GMT): vanipolnedi (Tue, 04 Dec 2018 06:01:30 GMT): vanipolnedi (Tue, 04 Dec 2018 06:01:30 GMT): PhilipAndrew (Tue, 04 Dec 2018 08:22:13 GMT): PhilipAndrew (Tue, 04 Dec 2018 08:22:19 GMT): PhilipAndrew (Tue, 04 Dec 2018 08:24:34 GMT): davidkel (Tue, 04 Dec 2018 08:40:28 GMT): krasyo (Tue, 04 Dec 2018 09:00:27 GMT): krasyo (Tue, 04 Dec 2018 09:00:54 GMT): davidkel (Tue, 04 Dec 2018 09:02:35 GMT): touchingsoil (Tue, 04 Dec 2018 09:11:00 GMT): touchingsoil (Tue, 04 Dec 2018 09:11:00 GMT): Cliff.Huang (Tue, 04 Dec 2018 09:32:07 GMT): davidkel (Tue, 04 Dec 2018 09:32:47 GMT): rrishmawi (Tue, 04 Dec 2018 09:48:03 GMT): touchingsoil (Tue, 04 Dec 2018 09:56:31 GMT): davidkel (Tue, 04 Dec 2018 10:02:23 GMT): touchingsoil (Tue, 04 Dec 2018 10:12:49 GMT): davidkel (Tue, 04 Dec 2018 10:15:38 GMT): mahoney1 (Tue, 04 Dec 2018 10:20:26 GMT): mahoney1 (Tue, 04 Dec 2018 10:27:20 GMT): mahoney1 (Tue, 04 Dec 2018 10:27:20 GMT): mahoney1 (Tue, 04 Dec 2018 10:27:20 GMT): mahoney1 (Tue, 04 Dec 2018 10:27:20 GMT): mahoney1 (Tue, 04 Dec 2018 10:27:20 GMT): abityildiz (Tue, 04 Dec 2018 13:16:36 GMT): rthatcher (Tue, 04 Dec 2018 13:36:09 GMT): kariyappals (Tue, 04 Dec 2018 14:18:48 GMT): abityildiz (Tue, 04 Dec 2018 14:22:50 GMT): davidkel (Tue, 04 Dec 2018 14:27:19 GMT): PhilipAndrew (Tue, 04 Dec 2018 14:33:54 GMT): PhilipAndrew (Tue, 04 Dec 2018 14:34:30 GMT): PhilipAndrew (Tue, 04 Dec 2018 14:37:42 GMT): PhilipAndrew (Tue, 04 Dec 2018 14:37:48 GMT): rthatcher (Tue, 04 Dec 2018 14:46:38 GMT): PhilipAndrew (Tue, 04 Dec 2018 14:48:14 GMT): PhilipAndrew (Tue, 04 Dec 2018 14:48:43 GMT): rthatcher (Tue, 04 Dec 2018 14:49:32 GMT): rthatcher (Tue, 04 Dec 2018 14:49:32 GMT): PhilipAndrew (Tue, 04 Dec 2018 14:54:47 GMT): abityildiz (Tue, 04 Dec 2018 16:28:07 GMT): davidkel (Tue, 04 Dec 2018 16:32:10 GMT): abityildiz (Tue, 04 Dec 2018 16:33:27 GMT): Garrett (Tue, 04 Dec 2018 17:09:37 GMT): davidkel (Tue, 04 Dec 2018 17:25:28 GMT): Garrett (Tue, 04 Dec 2018 17:26:58 GMT): davidkel (Tue, 04 Dec 2018 17:28:23 GMT): Garrett (Tue, 04 Dec 2018 17:29:39 GMT): Garrett (Tue, 04 Dec 2018 17:30:06 GMT): davidkel (Tue, 04 Dec 2018 17:31:31 GMT): Garrett (Tue, 04 Dec 2018 17:33:04 GMT): Garrett (Tue, 04 Dec 2018 17:33:55 GMT): davidkel (Tue, 04 Dec 2018 17:34:24 GMT): Garrett (Tue, 04 Dec 2018 17:34:54 GMT): davidkel (Tue, 04 Dec 2018 17:35:14 GMT): Garrett (Tue, 04 Dec 2018 17:35:57 GMT): davidkel (Tue, 04 Dec 2018 17:38:13 GMT): Garrett (Tue, 04 Dec 2018 17:39:12 GMT): davidkel (Tue, 04 Dec 2018 17:41:08 GMT): Garrett (Tue, 04 Dec 2018 18:11:35 GMT): Garrett (Tue, 04 Dec 2018 18:12:09 GMT): Garrett (Tue, 04 Dec 2018 18:12:24 GMT): davidkel (Tue, 04 Dec 2018 19:21:27 GMT): pnarang_a_s (Tue, 04 Dec 2018 19:24:02 GMT): pnarang_a_s (Tue, 04 Dec 2018 19:24:28 GMT): touchingsoil (Wed, 05 Dec 2018 01:30:53 GMT): sushmitha (Wed, 05 Dec 2018 02:18:10 GMT): sushmitha (Wed, 05 Dec 2018 02:18:15 GMT): sushmitha (Wed, 05 Dec 2018 02:19:08 GMT): Lolololo (Wed, 05 Dec 2018 05:47:19 GMT): Lolololo (Wed, 05 Dec 2018 05:48:03 GMT): manisha11 (Wed, 05 Dec 2018 06:27:27 GMT): pravn1729 (Wed, 05 Dec 2018 07:34:46 GMT): pravn1729 (Wed, 05 Dec 2018 07:48:05 GMT): sharma66mahesh (Wed, 05 Dec 2018 07:52:00 GMT): sharma66mahesh (Wed, 05 Dec 2018 07:52:23 GMT): ajaya-man (Wed, 05 Dec 2018 07:57:31 GMT): albertoventurini (Wed, 05 Dec 2018 07:59:53 GMT): davidkel (Wed, 05 Dec 2018 08:34:50 GMT): davidkel (Wed, 05 Dec 2018 08:37:10 GMT): pravn1729 (Wed, 05 Dec 2018 08:47:26 GMT): vanipolnedi (Wed, 05 Dec 2018 09:03:51 GMT): vanipolnedi (Wed, 05 Dec 2018 09:03:51 GMT): prasanths96 (Wed, 05 Dec 2018 09:18:11 GMT): abityildiz (Wed, 05 Dec 2018 09:30:15 GMT): davidkel (Wed, 05 Dec 2018 09:38:59 GMT): mahoney1 (Wed, 05 Dec 2018 09:39:49 GMT): abityildiz (Wed, 05 Dec 2018 09:40:07 GMT): davidkel (Wed, 05 Dec 2018 09:42:32 GMT): rthatcher (Wed, 05 Dec 2018 09:43:50 GMT): sharma66mahesh (Wed, 05 Dec 2018 10:32:44 GMT): sharma66mahesh (Wed, 05 Dec 2018 10:32:44 GMT): davidkel (Wed, 05 Dec 2018 11:09:49 GMT): PhilipAndrew (Wed, 05 Dec 2018 11:20:18 GMT): PhilipAndrew (Wed, 05 Dec 2018 11:20:33 GMT): davidkel (Wed, 05 Dec 2018 11:22:24 GMT): PhilipAndrew (Wed, 05 Dec 2018 11:27:27 GMT): PhilipAndrew (Wed, 05 Dec 2018 11:28:22 GMT): mahoney1 (Wed, 05 Dec 2018 11:55:11 GMT): mahoney1 (Wed, 05 Dec 2018 11:55:11 GMT): mahoney1 (Wed, 05 Dec 2018 11:55:11 GMT): medipal (Wed, 05 Dec 2018 12:14:32 GMT): PhilipAndrew (Wed, 05 Dec 2018 12:23:10 GMT): mahoney1 (Wed, 05 Dec 2018 12:27:37 GMT): mahoney1 (Wed, 05 Dec 2018 12:27:37 GMT): PhilipAndrew (Wed, 05 Dec 2018 12:41:03 GMT): wangkaixuan (Wed, 05 Dec 2018 14:04:00 GMT): wangkaixuan (Wed, 05 Dec 2018 14:11:06 GMT): wangkaixuan (Wed, 05 Dec 2018 14:11:41 GMT): mahoney1 (Wed, 05 Dec 2018 15:11:08 GMT): Haseebijaz (Thu, 06 Dec 2018 00:48:59 GMT): Haseebijaz (Thu, 06 Dec 2018 00:49:15 GMT): Haseebijaz (Thu, 06 Dec 2018 00:49:48 GMT): Haseebijaz (Thu, 06 Dec 2018 00:50:49 GMT): Haseebijaz (Thu, 06 Dec 2018 00:51:38 GMT): PhilipAndrew (Thu, 06 Dec 2018 04:15:37 GMT): PhilipAndrew (Thu, 06 Dec 2018 04:15:43 GMT): PhilipAndrew (Thu, 06 Dec 2018 04:16:24 GMT): PhilipAndrew (Thu, 06 Dec 2018 05:17:16 GMT): PhilipAndrew (Thu, 06 Dec 2018 05:17:22 GMT): PhilipAndrew (Thu, 06 Dec 2018 05:30:29 GMT): PhilipAndrew (Thu, 06 Dec 2018 05:36:42 GMT): sharma66mahesh (Thu, 06 Dec 2018 06:13:42 GMT): Lolololo (Thu, 06 Dec 2018 07:00:47 GMT): microwavePC (Thu, 06 Dec 2018 08:19:24 GMT): wangkaixuan (Thu, 06 Dec 2018 08:27:08 GMT): wangkaixuan (Thu, 06 Dec 2018 08:27:16 GMT): microwavePC (Thu, 06 Dec 2018 08:39:31 GMT): microwavePC (Thu, 06 Dec 2018 08:40:03 GMT): microwavePC (Thu, 06 Dec 2018 08:40:10 GMT): microwavePC (Thu, 06 Dec 2018 08:41:01 GMT): microwavePC (Thu, 06 Dec 2018 08:43:18 GMT): davidkel (Thu, 06 Dec 2018 09:00:02 GMT): davidkel (Thu, 06 Dec 2018 09:05:23 GMT): rthatcher (Thu, 06 Dec 2018 09:47:42 GMT): rthatcher (Thu, 06 Dec 2018 09:47:42 GMT): Smit95shah (Thu, 06 Dec 2018 09:52:35 GMT): davidkel (Thu, 06 Dec 2018 10:05:47 GMT): davidkel (Thu, 06 Dec 2018 10:13:12 GMT): Smit95shah (Thu, 06 Dec 2018 10:14:47 GMT): davidkel (Thu, 06 Dec 2018 10:17:03 GMT): davidkel (Thu, 06 Dec 2018 10:17:03 GMT): rthatcher (Thu, 06 Dec 2018 10:19:38 GMT): Smit95shah (Thu, 06 Dec 2018 10:30:22 GMT): abityildiz (Thu, 06 Dec 2018 10:48:38 GMT): davidkel (Thu, 06 Dec 2018 10:51:04 GMT): abityildiz (Thu, 06 Dec 2018 10:53:18 GMT): wangkaixuan (Thu, 06 Dec 2018 11:14:43 GMT): y204990 (Thu, 06 Dec 2018 11:18:10 GMT): Smit95shah (Thu, 06 Dec 2018 11:31:27 GMT): PhilipAndrew (Thu, 06 Dec 2018 11:34:41 GMT): PhilipAndrew (Thu, 06 Dec 2018 11:34:51 GMT): rthatcher (Thu, 06 Dec 2018 11:45:44 GMT): rthatcher (Thu, 06 Dec 2018 11:52:08 GMT): Smit95shah (Thu, 06 Dec 2018 11:54:03 GMT): davidkel (Thu, 06 Dec 2018 12:05:05 GMT): sureshtedla (Thu, 06 Dec 2018 12:31:18 GMT): sureshtedla (Thu, 06 Dec 2018 12:31:18 GMT): shkakkad (Thu, 06 Dec 2018 12:52:22 GMT): shkakkad (Thu, 06 Dec 2018 13:16:00 GMT): shkakkad (Thu, 06 Dec 2018 13:23:04 GMT): shkakkad (Thu, 06 Dec 2018 13:24:18 GMT): Smit95shah (Thu, 06 Dec 2018 14:08:21 GMT): mahoney1 (Thu, 06 Dec 2018 14:15:47 GMT): mahoney1 (Thu, 06 Dec 2018 14:21:49 GMT): rthatcher (Thu, 06 Dec 2018 15:13:06 GMT): Smit95shah (Thu, 06 Dec 2018 15:51:24 GMT): glzawalski (Thu, 06 Dec 2018 15:59:52 GMT): rthatcher (Thu, 06 Dec 2018 16:01:09 GMT): shkakkad (Thu, 06 Dec 2018 16:04:04 GMT): shkakkad (Thu, 06 Dec 2018 16:26:01 GMT): shkakkad (Thu, 06 Dec 2018 16:27:06 GMT): mahoney1 (Thu, 06 Dec 2018 16:48:31 GMT): mahoney1 (Thu, 06 Dec 2018 16:48:31 GMT): mahoney1 (Thu, 06 Dec 2018 16:48:31 GMT): mahoney1 (Thu, 06 Dec 2018 16:53:50 GMT): Smit95shah (Thu, 06 Dec 2018 17:19:28 GMT): Smit95shah (Thu, 06 Dec 2018 17:19:44 GMT): shkakkad (Thu, 06 Dec 2018 19:03:08 GMT): shkakkad (Thu, 06 Dec 2018 19:26:56 GMT): Kapil (Thu, 06 Dec 2018 22:39:30 GMT): Kapil (Thu, 06 Dec 2018 22:40:57 GMT): Kapil (Thu, 06 Dec 2018 22:42:00 GMT): Kapil (Thu, 06 Dec 2018 22:42:56 GMT): Kapil (Thu, 06 Dec 2018 22:43:08 GMT): Kapil (Thu, 06 Dec 2018 22:43:51 GMT): microwavePC (Fri, 07 Dec 2018 02:04:17 GMT): shok (Fri, 07 Dec 2018 03:48:16 GMT): shkakkad (Fri, 07 Dec 2018 06:49:08 GMT): shkakkad (Fri, 07 Dec 2018 06:52:13 GMT): sbtmentor (Fri, 07 Dec 2018 07:40:21 GMT): sbtmentor (Fri, 07 Dec 2018 07:41:34 GMT): sbtmentor (Fri, 07 Dec 2018 07:43:40 GMT): labcoinpoc (Fri, 07 Dec 2018 07:54:00 GMT): labcoinpoc (Fri, 07 Dec 2018 07:54:00 GMT): labcoinpoc (Fri, 07 Dec 2018 07:54:00 GMT): labcoinpoc (Fri, 07 Dec 2018 07:54:00 GMT): davidkel (Fri, 07 Dec 2018 08:55:53 GMT): labcoinpoc (Fri, 07 Dec 2018 08:59:41 GMT): rthatcher (Fri, 07 Dec 2018 09:17:23 GMT): rthatcher (Fri, 07 Dec 2018 09:17:23 GMT): labcoinpoc (Fri, 07 Dec 2018 09:21:44 GMT): rthatcher (Fri, 07 Dec 2018 09:27:16 GMT): mahoney1 (Fri, 07 Dec 2018 09:42:25 GMT): mahoney1 (Fri, 07 Dec 2018 09:42:25 GMT): hauhm (Fri, 07 Dec 2018 10:35:03 GMT): hauhm (Fri, 07 Dec 2018 10:37:04 GMT): hauhm (Fri, 07 Dec 2018 10:37:04 GMT): mahoney1 (Fri, 07 Dec 2018 10:45:44 GMT): mahoney1 (Fri, 07 Dec 2018 10:45:44 GMT): mahoney1 (Fri, 07 Dec 2018 10:45:44 GMT): mahoney1 (Fri, 07 Dec 2018 10:45:44 GMT): sbtmentor (Fri, 07 Dec 2018 15:12:42 GMT): sbtmentor (Fri, 07 Dec 2018 15:13:10 GMT): MarcelvandeKerkhof (Fri, 07 Dec 2018 15:21:01 GMT): mahoney1 (Fri, 07 Dec 2018 15:23:22 GMT): davidkel (Fri, 07 Dec 2018 15:25:10 GMT): MarcelvandeKerkhof (Fri, 07 Dec 2018 15:27:12 GMT): sbtmentor (Fri, 07 Dec 2018 16:52:06 GMT): Kapil (Fri, 07 Dec 2018 17:01:41 GMT): mahoney1 (Fri, 07 Dec 2018 17:24:18 GMT): ronaldlong46 (Fri, 07 Dec 2018 19:53:12 GMT): ronaldlong46 (Fri, 07 Dec 2018 19:54:01 GMT): mikd (Fri, 07 Dec 2018 21:47:54 GMT): wuebker (Sat, 08 Dec 2018 00:41:05 GMT): wuebker (Sat, 08 Dec 2018 00:41:44 GMT): shkakkad (Sat, 08 Dec 2018 05:05:12 GMT): sharifahmad2061 (Sat, 08 Dec 2018 06:38:43 GMT): sharifahmad2061 (Sat, 08 Dec 2018 06:53:09 GMT): tamal24 (Sat, 08 Dec 2018 08:29:21 GMT): tamal24 (Sat, 08 Dec 2018 08:32:23 GMT): tamal24 (Sat, 08 Dec 2018 08:37:49 GMT): tamal24 (Sat, 08 Dec 2018 08:38:40 GMT): tamal24 (Sat, 08 Dec 2018 08:41:15 GMT): tamal24 (Sat, 08 Dec 2018 08:43:14 GMT): davidkel (Sat, 08 Dec 2018 11:11:08 GMT): shkakkad (Sat, 08 Dec 2018 13:06:04 GMT): Haseebijaz (Sat, 08 Dec 2018 13:29:25 GMT): Haseebijaz (Sat, 08 Dec 2018 13:32:08 GMT): davidkel (Sat, 08 Dec 2018 14:03:11 GMT): davidkel (Sat, 08 Dec 2018 14:03:37 GMT): shkakkad (Sat, 08 Dec 2018 14:07:03 GMT): davidkel (Sat, 08 Dec 2018 14:08:17 GMT): shkakkad (Sat, 08 Dec 2018 14:09:11 GMT): davidkel (Sat, 08 Dec 2018 14:10:23 GMT): rsoeldner (Sat, 08 Dec 2018 18:35:52 GMT): Haseebijaz (Sat, 08 Dec 2018 18:46:17 GMT): davidkel (Sat, 08 Dec 2018 19:29:51 GMT): Haseebijaz (Sat, 08 Dec 2018 20:02:06 GMT): Haseebijaz (Sat, 08 Dec 2018 20:02:07 GMT): Haseebijaz (Sat, 08 Dec 2018 20:04:43 GMT): Haseebijaz (Sat, 08 Dec 2018 20:16:38 GMT): davidkel (Sat, 08 Dec 2018 21:21:44 GMT): davidkel (Sat, 08 Dec 2018 21:21:44 GMT): davidkel (Sat, 08 Dec 2018 21:21:44 GMT): Haseebijaz (Sun, 09 Dec 2018 01:55:48 GMT): Haseebijaz (Sun, 09 Dec 2018 01:55:53 GMT): shkakkad (Sun, 09 Dec 2018 16:52:12 GMT): DavorKljajic (Mon, 10 Dec 2018 07:02:19 GMT): davidkel (Mon, 10 Dec 2018 08:33:24 GMT): davidkel (Mon, 10 Dec 2018 08:33:24 GMT): davidkel (Mon, 10 Dec 2018 08:33:24 GMT): mahoney1 (Mon, 10 Dec 2018 09:40:41 GMT): microwavePC (Mon, 10 Dec 2018 11:09:46 GMT): microwavePC (Mon, 10 Dec 2018 11:10:18 GMT): microwavePC (Mon, 10 Dec 2018 11:11:15 GMT): microwavePC (Mon, 10 Dec 2018 11:14:26 GMT): FLASHJr (Mon, 10 Dec 2018 12:57:53 GMT): FLASHJr (Mon, 10 Dec 2018 13:01:08 GMT): rthatcher (Mon, 10 Dec 2018 13:42:15 GMT): rthatcher (Mon, 10 Dec 2018 13:42:15 GMT): toanhd (Mon, 10 Dec 2018 18:20:56 GMT): toanhd (Mon, 10 Dec 2018 19:43:02 GMT): toanhd (Mon, 10 Dec 2018 19:43:07 GMT): toanhd (Mon, 10 Dec 2018 19:43:20 GMT): toanhd (Mon, 10 Dec 2018 19:43:23 GMT): pumicerD (Mon, 10 Dec 2018 20:06:10 GMT): pumicerD (Mon, 10 Dec 2018 20:30:27 GMT): pumicerD (Mon, 10 Dec 2018 20:31:06 GMT): ttarey (Tue, 11 Dec 2018 02:25:03 GMT): silliman (Tue, 11 Dec 2018 02:33:55 GMT): Basil-3 (Tue, 11 Dec 2018 05:29:44 GMT): Basil-3 (Tue, 11 Dec 2018 05:30:37 GMT): brianpesy (Tue, 11 Dec 2018 05:54:34 GMT): brianpesy (Tue, 11 Dec 2018 05:54:45 GMT): brianpesy (Tue, 11 Dec 2018 05:55:20 GMT): brianpesy (Tue, 11 Dec 2018 05:55:20 GMT): shkakkad (Tue, 11 Dec 2018 06:27:03 GMT): shkakkad (Tue, 11 Dec 2018 06:44:06 GMT): purandam (Tue, 11 Dec 2018 08:14:02 GMT): purandam (Tue, 11 Dec 2018 08:14:02 GMT): purandam (Tue, 11 Dec 2018 08:14:02 GMT): BabuPallam (Tue, 11 Dec 2018 09:19:57 GMT): rthatcher (Tue, 11 Dec 2018 09:32:08 GMT): rthatcher (Tue, 11 Dec 2018 09:39:08 GMT): rthatcher (Tue, 11 Dec 2018 10:15:21 GMT): rthatcher (Tue, 11 Dec 2018 10:15:21 GMT): rrishmawi (Tue, 11 Dec 2018 10:16:27 GMT): rrishmawi (Tue, 11 Dec 2018 10:16:37 GMT): purandam (Tue, 11 Dec 2018 10:23:25 GMT): purandam (Tue, 11 Dec 2018 10:23:25 GMT): Nammalvar (Tue, 11 Dec 2018 10:44:27 GMT): FlorianStoica (Tue, 11 Dec 2018 10:48:28 GMT): rthatcher (Tue, 11 Dec 2018 10:49:02 GMT): rthatcher (Tue, 11 Dec 2018 10:50:51 GMT): nicholasp (Tue, 11 Dec 2018 11:03:52 GMT): shkakkad (Tue, 11 Dec 2018 11:19:30 GMT): mahoney1 (Tue, 11 Dec 2018 11:26:11 GMT): mahoney1 (Tue, 11 Dec 2018 11:32:14 GMT): rrishmawi (Tue, 11 Dec 2018 12:03:00 GMT): davidkel (Tue, 11 Dec 2018 12:15:25 GMT): ShaikSharuk (Tue, 11 Dec 2018 12:35:17 GMT): davidkel (Tue, 11 Dec 2018 12:40:50 GMT): davidkel (Tue, 11 Dec 2018 12:40:50 GMT): davidkel (Tue, 11 Dec 2018 13:50:23 GMT): davidkel (Tue, 11 Dec 2018 13:50:23 GMT): abityildiz (Tue, 11 Dec 2018 13:52:07 GMT): rrishmawi (Tue, 11 Dec 2018 14:40:13 GMT): mahoney1 (Tue, 11 Dec 2018 17:33:54 GMT): yukimochizuki (Tue, 11 Dec 2018 17:36:15 GMT): yukimochizuki (Tue, 11 Dec 2018 17:41:17 GMT): yukimochizuki (Tue, 11 Dec 2018 17:41:17 GMT): davidkel (Tue, 11 Dec 2018 20:30:00 GMT): yukimochizuki (Wed, 12 Dec 2018 02:51:23 GMT): sam3313 (Wed, 12 Dec 2018 03:41:34 GMT): sam3313 (Wed, 12 Dec 2018 03:43:59 GMT): Karthik1337 (Wed, 12 Dec 2018 06:41:58 GMT): Basil-3 (Wed, 12 Dec 2018 07:18:50 GMT): twen (Wed, 12 Dec 2018 07:36:02 GMT): nicholasp (Wed, 12 Dec 2018 08:17:09 GMT): davidkel (Wed, 12 Dec 2018 08:20:25 GMT): davidkel (Wed, 12 Dec 2018 08:21:37 GMT): davidkel (Wed, 12 Dec 2018 08:25:11 GMT): nicholasp (Wed, 12 Dec 2018 08:29:04 GMT): Karthik1337 (Wed, 12 Dec 2018 08:49:25 GMT): davidkel (Wed, 12 Dec 2018 08:49:49 GMT): purandam (Wed, 12 Dec 2018 08:59:14 GMT): purandam (Wed, 12 Dec 2018 08:59:14 GMT): purandam (Wed, 12 Dec 2018 09:00:09 GMT): davidkel (Wed, 12 Dec 2018 09:01:40 GMT): davidkel (Wed, 12 Dec 2018 09:06:02 GMT): nicholasp (Wed, 12 Dec 2018 09:11:15 GMT): rthatcher (Wed, 12 Dec 2018 09:20:56 GMT): rthatcher (Wed, 12 Dec 2018 09:43:11 GMT): ShaikSharuk (Wed, 12 Dec 2018 09:48:40 GMT): rrishmawi (Wed, 12 Dec 2018 09:49:40 GMT): rrishmawi (Wed, 12 Dec 2018 09:49:40 GMT): rrishmawi (Wed, 12 Dec 2018 09:57:04 GMT): davidkel (Wed, 12 Dec 2018 10:01:21 GMT): ShaikSharuk (Wed, 12 Dec 2018 10:04:15 GMT): Nammalvar (Wed, 12 Dec 2018 10:24:06 GMT): Nammalvar (Wed, 12 Dec 2018 10:24:06 GMT): Karthik1337 (Wed, 12 Dec 2018 10:42:44 GMT): rrishmawi (Wed, 12 Dec 2018 10:48:14 GMT): davidkel (Wed, 12 Dec 2018 10:55:01 GMT): sanjayMeFy (Wed, 12 Dec 2018 11:23:06 GMT): mefy-pushpendu (Wed, 12 Dec 2018 11:23:20 GMT): mahoney1 (Wed, 12 Dec 2018 11:52:04 GMT): abityildiz (Wed, 12 Dec 2018 12:27:00 GMT): mahoney1 (Wed, 12 Dec 2018 12:45:16 GMT): abityildiz (Wed, 12 Dec 2018 12:49:35 GMT): JCurt (Wed, 12 Dec 2018 13:08:29 GMT): garunkumar450 (Wed, 12 Dec 2018 13:24:41 GMT): garunkumar450 (Wed, 12 Dec 2018 13:24:41 GMT): rthatcher (Wed, 12 Dec 2018 13:28:19 GMT): bestbeforetoday (Wed, 12 Dec 2018 13:59:11 GMT): JackMalinowski (Wed, 12 Dec 2018 15:55:27 GMT): rthatcher (Wed, 12 Dec 2018 16:55:48 GMT): sureshtedla (Wed, 12 Dec 2018 17:01:02 GMT): rthatcher (Wed, 12 Dec 2018 17:05:52 GMT): sureshtedla (Wed, 12 Dec 2018 17:24:45 GMT): Vanitha (Wed, 12 Dec 2018 17:48:51 GMT): Vanitha (Wed, 12 Dec 2018 17:49:16 GMT): kelleclark (Wed, 12 Dec 2018 19:28:04 GMT): kelleclark (Wed, 12 Dec 2018 19:28:39 GMT): kelleclark (Wed, 12 Dec 2018 19:30:55 GMT): kelleclark (Wed, 12 Dec 2018 19:32:07 GMT): AggG (Thu, 13 Dec 2018 00:26:17 GMT): anand.balagopalan (Thu, 13 Dec 2018 04:42:51 GMT): anand.balagopalan (Thu, 13 Dec 2018 04:43:52 GMT): KamalGupta123 (Thu, 13 Dec 2018 06:42:14 GMT): KamalGupta123 (Thu, 13 Dec 2018 06:42:19 GMT): Techie (Thu, 13 Dec 2018 07:26:00 GMT): Techie (Thu, 13 Dec 2018 07:31:50 GMT): packkkkk (Thu, 13 Dec 2018 07:44:06 GMT): packkkkk (Thu, 13 Dec 2018 07:44:23 GMT): rrishmawi (Thu, 13 Dec 2018 08:28:18 GMT): rrishmawi (Thu, 13 Dec 2018 08:29:16 GMT): brianpesy (Thu, 13 Dec 2018 08:32:30 GMT): brianpesy (Thu, 13 Dec 2018 08:32:36 GMT): brianpesy (Thu, 13 Dec 2018 08:34:04 GMT): brianpesy (Thu, 13 Dec 2018 08:34:31 GMT): rrishmawi (Thu, 13 Dec 2018 08:35:19 GMT): rrishmawi (Thu, 13 Dec 2018 08:37:32 GMT): jaguarg (Thu, 13 Dec 2018 08:56:09 GMT): davidkel (Thu, 13 Dec 2018 08:59:53 GMT): rrishmawi (Thu, 13 Dec 2018 09:04:36 GMT): davidkel (Thu, 13 Dec 2018 09:06:13 GMT): davidkel (Thu, 13 Dec 2018 09:06:13 GMT): davidkel (Thu, 13 Dec 2018 09:06:13 GMT): rrishmawi (Thu, 13 Dec 2018 09:06:48 GMT): rthatcher (Thu, 13 Dec 2018 09:15:05 GMT): davidkel (Thu, 13 Dec 2018 09:20:24 GMT): packkkkk (Thu, 13 Dec 2018 09:21:28 GMT): rrishmawi (Thu, 13 Dec 2018 09:22:14 GMT): rrishmawi (Thu, 13 Dec 2018 09:23:04 GMT): rthatcher (Thu, 13 Dec 2018 09:26:42 GMT): rrishmawi (Thu, 13 Dec 2018 09:27:57 GMT): davidkel (Thu, 13 Dec 2018 10:02:25 GMT): davidkel (Thu, 13 Dec 2018 10:02:25 GMT): purandam (Thu, 13 Dec 2018 10:03:43 GMT): davidkel (Thu, 13 Dec 2018 10:25:00 GMT): purandam (Thu, 13 Dec 2018 10:26:27 GMT): davidkel (Thu, 13 Dec 2018 10:46:16 GMT): CorentinPacaud (Thu, 13 Dec 2018 10:53:31 GMT): ashwin (Thu, 13 Dec 2018 10:54:14 GMT): saeedi (Thu, 13 Dec 2018 12:26:23 GMT): rrishmawi (Thu, 13 Dec 2018 12:37:09 GMT): FLASHJr (Thu, 13 Dec 2018 12:40:35 GMT): FLASHJr (Thu, 13 Dec 2018 12:42:07 GMT): AggG (Thu, 13 Dec 2018 13:00:19 GMT): dave.enyeart (Thu, 13 Dec 2018 13:39:02 GMT): jaguarg (Thu, 13 Dec 2018 13:41:28 GMT): rrishmawi (Thu, 13 Dec 2018 13:41:31 GMT): packkkkk (Thu, 13 Dec 2018 13:57:13 GMT): davidkel (Thu, 13 Dec 2018 14:12:20 GMT): davidkel (Thu, 13 Dec 2018 14:12:20 GMT): davidkel (Thu, 13 Dec 2018 14:12:20 GMT): aleksandar.nasuovski (Thu, 13 Dec 2018 14:24:02 GMT): packkkkk (Thu, 13 Dec 2018 14:45:25 GMT): packkkkk (Thu, 13 Dec 2018 14:45:25 GMT): ajbill (Thu, 13 Dec 2018 15:20:25 GMT): ajbill (Thu, 13 Dec 2018 15:20:25 GMT): ajbill (Thu, 13 Dec 2018 15:20:25 GMT): ajbill (Thu, 13 Dec 2018 15:20:25 GMT): ajbill (Thu, 13 Dec 2018 15:20:25 GMT): ajbill (Thu, 13 Dec 2018 15:20:25 GMT): ajbill (Thu, 13 Dec 2018 15:20:25 GMT): ajbill (Thu, 13 Dec 2018 15:20:25 GMT): ajbill (Thu, 13 Dec 2018 15:20:25 GMT): CorentinPacaud (Thu, 13 Dec 2018 15:20:44 GMT): CorentinPacaud (Thu, 13 Dec 2018 15:21:37 GMT): CorentinPacaud (Thu, 13 Dec 2018 16:46:31 GMT): CorentinPacaud (Thu, 13 Dec 2018 16:47:24 GMT): CorentinPacaud (Thu, 13 Dec 2018 16:47:55 GMT): packkkkk (Thu, 13 Dec 2018 16:49:18 GMT): yukimochizuki (Fri, 14 Dec 2018 03:03:13 GMT): saeedi (Fri, 14 Dec 2018 04:11:06 GMT): mrudav.shukla (Fri, 14 Dec 2018 04:13:35 GMT): mrudav.shukla (Fri, 14 Dec 2018 04:16:03 GMT): yukimochizuki (Fri, 14 Dec 2018 04:27:14 GMT): yukimochizuki (Fri, 14 Dec 2018 05:13:06 GMT): yukimochizuki (Fri, 14 Dec 2018 05:13:06 GMT): yukimochizuki (Fri, 14 Dec 2018 05:13:06 GMT): yukimochizuki (Fri, 14 Dec 2018 05:13:06 GMT): yukimochizuki (Fri, 14 Dec 2018 05:14:18 GMT): anushaath (Fri, 14 Dec 2018 05:59:27 GMT): Abhinavgrg074 (Fri, 14 Dec 2018 06:17:20 GMT): biksen (Fri, 14 Dec 2018 06:37:33 GMT): Nammalvar (Fri, 14 Dec 2018 08:00:11 GMT): davidkel (Fri, 14 Dec 2018 08:14:19 GMT): davidkel (Fri, 14 Dec 2018 08:14:19 GMT): davidkel (Fri, 14 Dec 2018 08:15:22 GMT): davidkel (Fri, 14 Dec 2018 08:16:57 GMT): davidkel (Fri, 14 Dec 2018 08:17:01 GMT): CorentinPacaud (Fri, 14 Dec 2018 09:13:08 GMT): prasanths96 (Fri, 14 Dec 2018 09:13:18 GMT): rrishmawi (Fri, 14 Dec 2018 09:13:43 GMT): Rantwijk (Fri, 14 Dec 2018 09:49:18 GMT): mahoney1 (Fri, 14 Dec 2018 10:24:31 GMT): mahoney1 (Fri, 14 Dec 2018 10:25:26 GMT): CorentinPacaud (Fri, 14 Dec 2018 10:25:50 GMT): CorentinPacaud (Fri, 14 Dec 2018 10:26:37 GMT): CorentinPacaud (Fri, 14 Dec 2018 10:26:45 GMT): mahoney1 (Fri, 14 Dec 2018 10:29:19 GMT): CorentinPacaud (Fri, 14 Dec 2018 10:30:52 GMT): CorentinPacaud (Fri, 14 Dec 2018 10:31:14 GMT): CorentinPacaud (Fri, 14 Dec 2018 10:31:22 GMT): CorentinPacaud (Fri, 14 Dec 2018 10:33:11 GMT): mahoney1 (Fri, 14 Dec 2018 10:37:23 GMT): mahoney1 (Fri, 14 Dec 2018 10:37:23 GMT): mahoney1 (Fri, 14 Dec 2018 10:37:23 GMT): CorentinPacaud (Fri, 14 Dec 2018 10:47:15 GMT): Nihcep (Fri, 14 Dec 2018 11:27:12 GMT): Nihcep (Fri, 14 Dec 2018 11:34:32 GMT): VadimInshakov (Fri, 14 Dec 2018 11:37:36 GMT): VadimInshakov (Fri, 14 Dec 2018 11:38:59 GMT): mahoney1 (Fri, 14 Dec 2018 12:52:16 GMT): mattmaru (Fri, 14 Dec 2018 12:57:53 GMT): mattmaru (Fri, 14 Dec 2018 12:59:01 GMT): mattmaru (Fri, 14 Dec 2018 12:59:48 GMT): mahoney1 (Fri, 14 Dec 2018 12:59:57 GMT): mahoney1 (Fri, 14 Dec 2018 12:59:57 GMT): mahoney1 (Fri, 14 Dec 2018 13:10:59 GMT): mahoney1 (Fri, 14 Dec 2018 13:10:59 GMT): mattmaru (Fri, 14 Dec 2018 13:15:29 GMT): DJ_HC (Fri, 14 Dec 2018 15:18:41 GMT): rrishmawi (Fri, 14 Dec 2018 15:57:04 GMT): rthatcher (Fri, 14 Dec 2018 15:59:19 GMT): packkkkk (Sat, 15 Dec 2018 04:41:45 GMT): KamalGupta123 (Sat, 15 Dec 2018 09:44:49 GMT): MsXYZ94 (Sat, 15 Dec 2018 15:52:43 GMT): mrudav.shukla (Sun, 16 Dec 2018 10:23:58 GMT): mrudav.shukla (Sun, 16 Dec 2018 10:23:58 GMT): toanhd (Sun, 16 Dec 2018 12:00:41 GMT): Mehak (Mon, 17 Dec 2018 09:06:34 GMT): ShaikSharuk (Mon, 17 Dec 2018 09:29:41 GMT): amritsharma (Mon, 17 Dec 2018 09:33:15 GMT): amritsharma (Mon, 17 Dec 2018 09:35:08 GMT): rthatcher (Mon, 17 Dec 2018 09:36:21 GMT): EmekaC (Mon, 17 Dec 2018 09:57:18 GMT): rthatcher (Mon, 17 Dec 2018 10:03:53 GMT): rthatcher (Mon, 17 Dec 2018 10:09:06 GMT): mahoney1 (Mon, 17 Dec 2018 10:10:39 GMT): mahoney1 (Mon, 17 Dec 2018 10:14:00 GMT): amritsharma (Mon, 17 Dec 2018 10:52:15 GMT): mrudav.shukla (Mon, 17 Dec 2018 10:58:53 GMT): mahoney1 (Mon, 17 Dec 2018 11:16:25 GMT): erikteaminova (Mon, 17 Dec 2018 11:31:23 GMT): vishal21pandita (Mon, 17 Dec 2018 11:37:40 GMT): touchingsoil (Mon, 17 Dec 2018 11:39:26 GMT): anand.balagopalan (Mon, 17 Dec 2018 11:47:57 GMT): rthatcher (Mon, 17 Dec 2018 11:56:02 GMT): rthatcher (Mon, 17 Dec 2018 11:56:02 GMT): mahoney1 (Mon, 17 Dec 2018 12:02:44 GMT): mahoney1 (Mon, 17 Dec 2018 12:10:10 GMT): touchingsoil (Mon, 17 Dec 2018 12:10:17 GMT): mahoney1 (Mon, 17 Dec 2018 12:17:05 GMT): dcasado (Mon, 17 Dec 2018 12:28:41 GMT): dcasado (Mon, 17 Dec 2018 12:33:37 GMT): rrishmawi (Mon, 17 Dec 2018 12:34:11 GMT): Sarath_Kumar (Mon, 17 Dec 2018 12:34:54 GMT): Sarath_Kumar (Mon, 17 Dec 2018 12:35:15 GMT): mahoney1 (Mon, 17 Dec 2018 12:43:13 GMT): mahoney1 (Mon, 17 Dec 2018 12:46:21 GMT): rrishmawi (Mon, 17 Dec 2018 12:47:12 GMT): rrishmawi (Mon, 17 Dec 2018 12:51:57 GMT): rthatcher (Mon, 17 Dec 2018 12:51:58 GMT): rthatcher (Mon, 17 Dec 2018 12:51:58 GMT): mahoney1 (Mon, 17 Dec 2018 12:54:01 GMT): rrishmawi (Mon, 17 Dec 2018 12:55:12 GMT): rrishmawi (Mon, 17 Dec 2018 13:07:58 GMT): Sarath_Kumar (Mon, 17 Dec 2018 13:14:32 GMT): mahoney1 (Mon, 17 Dec 2018 14:02:42 GMT): mahoney1 (Mon, 17 Dec 2018 14:05:16 GMT): mahoney1 (Mon, 17 Dec 2018 14:05:16 GMT): mahoney1 (Mon, 17 Dec 2018 14:05:16 GMT): mahoney1 (Mon, 17 Dec 2018 14:05:16 GMT): AVetter (Mon, 17 Dec 2018 14:38:29 GMT): emiliomarin (Mon, 17 Dec 2018 15:03:19 GMT): emiliomarin (Mon, 17 Dec 2018 15:06:16 GMT): emiliomarin (Mon, 17 Dec 2018 15:06:16 GMT): emiliomarin (Mon, 17 Dec 2018 15:07:40 GMT): rthatcher (Mon, 17 Dec 2018 15:26:17 GMT): rthatcher (Mon, 17 Dec 2018 15:34:09 GMT): rthatcher (Mon, 17 Dec 2018 15:34:09 GMT): AVetter (Mon, 17 Dec 2018 15:45:53 GMT): mattmaru (Mon, 17 Dec 2018 16:26:22 GMT): elainejlai (Mon, 17 Dec 2018 18:42:31 GMT): ihormudryy (Mon, 17 Dec 2018 18:47:11 GMT): emiliomarin (Mon, 17 Dec 2018 19:36:03 GMT): mahoney1 (Mon, 17 Dec 2018 21:37:20 GMT): mahoney1 (Mon, 17 Dec 2018 21:37:20 GMT): mahoney1 (Mon, 17 Dec 2018 21:37:20 GMT): mahoney1 (Mon, 17 Dec 2018 21:37:20 GMT): adityanalgework (Tue, 18 Dec 2018 00:15:30 GMT): adityanalgework (Tue, 18 Dec 2018 00:18:06 GMT): anand.balagopalan (Tue, 18 Dec 2018 04:20:25 GMT): anand.balagopalan (Tue, 18 Dec 2018 04:20:25 GMT): bhemeswararaoankireddy (Tue, 18 Dec 2018 06:55:48 GMT): bhemeswararaoankireddy (Tue, 18 Dec 2018 07:30:05 GMT): bhemeswararaoankireddy (Tue, 18 Dec 2018 07:42:40 GMT): microwavePC (Tue, 18 Dec 2018 09:20:25 GMT): microwavePC (Tue, 18 Dec 2018 09:21:26 GMT): rthatcher (Tue, 18 Dec 2018 09:24:38 GMT): rthatcher (Tue, 18 Dec 2018 09:30:26 GMT): rthatcher (Tue, 18 Dec 2018 09:30:26 GMT): rthatcher (Tue, 18 Dec 2018 09:32:14 GMT): rthatcher (Tue, 18 Dec 2018 09:32:57 GMT): NeelKantht (Tue, 18 Dec 2018 09:41:20 GMT): NeelKantht (Tue, 18 Dec 2018 09:41:39 GMT): rthatcher (Tue, 18 Dec 2018 09:43:20 GMT): rthatcher (Tue, 18 Dec 2018 09:46:00 GMT): packkkkk (Tue, 18 Dec 2018 09:48:53 GMT): rthatcher (Tue, 18 Dec 2018 09:53:01 GMT): NeelKantht (Tue, 18 Dec 2018 09:56:24 GMT): mahoney1 (Tue, 18 Dec 2018 10:02:48 GMT): rthatcher (Tue, 18 Dec 2018 10:02:58 GMT): packkkkk (Tue, 18 Dec 2018 10:11:55 GMT): packkkkk (Tue, 18 Dec 2018 10:24:32 GMT): packkkkk (Tue, 18 Dec 2018 10:24:32 GMT): Sarath_Kumar (Tue, 18 Dec 2018 10:43:28 GMT): Sarath_Kumar (Tue, 18 Dec 2018 10:49:12 GMT): hilalh (Tue, 18 Dec 2018 10:53:42 GMT): hilalh (Tue, 18 Dec 2018 10:54:06 GMT): KvdB (Tue, 18 Dec 2018 10:55:10 GMT): KvdB (Tue, 18 Dec 2018 10:55:38 GMT): touchingsoil (Tue, 18 Dec 2018 11:01:18 GMT): vanipolnedi (Tue, 18 Dec 2018 11:10:45 GMT): Sarath_Kumar (Tue, 18 Dec 2018 11:31:42 GMT): rthatcher (Tue, 18 Dec 2018 12:04:42 GMT): rthatcher (Tue, 18 Dec 2018 12:09:43 GMT): greg2git (Tue, 18 Dec 2018 12:39:12 GMT): saeedi (Tue, 18 Dec 2018 13:07:41 GMT): hilalh (Tue, 18 Dec 2018 13:43:16 GMT): rthatcher (Tue, 18 Dec 2018 13:58:00 GMT): mahoney1 (Tue, 18 Dec 2018 14:02:39 GMT): packkkkk (Tue, 18 Dec 2018 14:06:30 GMT): mahoney1 (Tue, 18 Dec 2018 14:10:54 GMT): mahoney1 (Tue, 18 Dec 2018 14:10:54 GMT): anand.balagopalan (Tue, 18 Dec 2018 16:21:02 GMT): anand.balagopalan (Tue, 18 Dec 2018 16:22:17 GMT): anand.balagopalan (Tue, 18 Dec 2018 16:22:39 GMT): anand.balagopalan (Tue, 18 Dec 2018 16:26:58 GMT): mahoney1 (Tue, 18 Dec 2018 19:15:40 GMT): mahoney1 (Tue, 18 Dec 2018 19:15:40 GMT): touchingsoil (Wed, 19 Dec 2018 00:27:22 GMT): touchingsoil (Wed, 19 Dec 2018 00:27:22 GMT): touchingsoil (Wed, 19 Dec 2018 00:27:22 GMT): anand.balagopalan (Wed, 19 Dec 2018 01:48:45 GMT): microwavePC (Wed, 19 Dec 2018 02:28:24 GMT): zzj0402 (Wed, 19 Dec 2018 02:56:21 GMT): zzj0402 (Wed, 19 Dec 2018 02:58:16 GMT): smartheye (Wed, 19 Dec 2018 04:12:55 GMT): saeedi (Wed, 19 Dec 2018 04:45:08 GMT): microwavePC (Wed, 19 Dec 2018 05:53:57 GMT): saeedi (Wed, 19 Dec 2018 05:59:38 GMT): saeedi (Wed, 19 Dec 2018 05:59:38 GMT): saeedi (Wed, 19 Dec 2018 05:59:38 GMT): rrishmawi (Wed, 19 Dec 2018 09:23:06 GMT): mahoney1 (Wed, 19 Dec 2018 09:40:10 GMT): dselman (Wed, 19 Dec 2018 09:41:21 GMT): rthatcher (Wed, 19 Dec 2018 09:54:22 GMT): rthatcher (Wed, 19 Dec 2018 10:01:47 GMT): Sarath_Kumar (Wed, 19 Dec 2018 10:04:35 GMT): mahoney1 (Wed, 19 Dec 2018 10:21:24 GMT): mahoney1 (Wed, 19 Dec 2018 10:21:24 GMT): mahoney1 (Wed, 19 Dec 2018 10:21:24 GMT): mahoney1 (Wed, 19 Dec 2018 10:21:24 GMT): mahoney1 (Wed, 19 Dec 2018 10:21:24 GMT): dselman (Wed, 19 Dec 2018 10:23:53 GMT): dselman (Wed, 19 Dec 2018 10:24:00 GMT): dselman (Wed, 19 Dec 2018 10:24:09 GMT): mahoney1 (Wed, 19 Dec 2018 10:30:39 GMT): mahoney1 (Wed, 19 Dec 2018 10:30:39 GMT): mahoney1 (Wed, 19 Dec 2018 10:30:39 GMT): rrishmawi (Wed, 19 Dec 2018 10:40:47 GMT): Sarath_Kumar (Wed, 19 Dec 2018 11:04:37 GMT): mahoney1 (Wed, 19 Dec 2018 11:09:47 GMT): mahoney1 (Wed, 19 Dec 2018 11:09:47 GMT): Sarath_Kumar (Wed, 19 Dec 2018 11:14:01 GMT): mahoney1 (Wed, 19 Dec 2018 11:31:16 GMT): touchingsoil (Wed, 19 Dec 2018 11:48:44 GMT): KamalGupta123 (Wed, 19 Dec 2018 12:15:13 GMT): sudhir.kumawat (Wed, 19 Dec 2018 12:28:43 GMT): sudhir.kumawat (Wed, 19 Dec 2018 12:31:07 GMT): vanipolnedi (Wed, 19 Dec 2018 13:59:55 GMT): rthatcher (Wed, 19 Dec 2018 14:03:05 GMT): vanipolnedi (Wed, 19 Dec 2018 14:05:25 GMT): rthatcher (Wed, 19 Dec 2018 14:25:06 GMT): VadimInshakov (Wed, 19 Dec 2018 14:48:59 GMT): mahoney1 (Wed, 19 Dec 2018 14:59:01 GMT): VadimInshakov (Wed, 19 Dec 2018 15:00:52 GMT): mahoney1 (Wed, 19 Dec 2018 18:28:05 GMT): dselman (Wed, 19 Dec 2018 18:33:08 GMT): mahoney1 (Wed, 19 Dec 2018 18:35:29 GMT): dselman (Wed, 19 Dec 2018 18:36:43 GMT): caroline-church (Wed, 19 Dec 2018 18:39:38 GMT): KvdB (Wed, 19 Dec 2018 18:45:29 GMT): KvdB (Wed, 19 Dec 2018 18:45:46 GMT): microwavePC (Thu, 20 Dec 2018 01:30:55 GMT): SJoshi7 (Thu, 20 Dec 2018 06:42:50 GMT): JeffGutierrez (Thu, 20 Dec 2018 07:52:43 GMT): rthatcher (Thu, 20 Dec 2018 09:48:45 GMT): mahoney1 (Thu, 20 Dec 2018 10:02:16 GMT): dcasado (Thu, 20 Dec 2018 11:49:01 GMT): dselman (Thu, 20 Dec 2018 11:51:46 GMT): waleed (Thu, 20 Dec 2018 12:39:21 GMT): VadimInshakov (Thu, 20 Dec 2018 12:46:18 GMT): VadimInshakov (Thu, 20 Dec 2018 12:47:17 GMT): d8bhatta (Thu, 20 Dec 2018 12:51:38 GMT): d8bhatta (Thu, 20 Dec 2018 12:51:51 GMT): d8bhatta (Thu, 20 Dec 2018 12:52:42 GMT): d8bhatta (Thu, 20 Dec 2018 12:52:54 GMT): chuda (Thu, 20 Dec 2018 12:54:47 GMT): d8bhatta (Thu, 20 Dec 2018 12:55:40 GMT): d8bhatta (Thu, 20 Dec 2018 12:55:53 GMT): KvdB (Thu, 20 Dec 2018 13:37:26 GMT): mahoney1 (Thu, 20 Dec 2018 13:40:51 GMT): rthatcher (Thu, 20 Dec 2018 13:47:19 GMT): KvdB (Thu, 20 Dec 2018 13:56:53 GMT): KvdB (Thu, 20 Dec 2018 13:57:01 GMT): mahoney1 (Thu, 20 Dec 2018 14:12:24 GMT): mahoney1 (Thu, 20 Dec 2018 14:12:24 GMT): mahoney1 (Thu, 20 Dec 2018 14:13:11 GMT): waleed (Thu, 20 Dec 2018 16:02:36 GMT): dselman (Thu, 20 Dec 2018 16:04:34 GMT): waleed (Thu, 20 Dec 2018 16:07:53 GMT): mahoney1 (Thu, 20 Dec 2018 16:41:06 GMT): dselman (Thu, 20 Dec 2018 16:58:55 GMT): VadimInshakov (Thu, 20 Dec 2018 18:04:50 GMT): mahoney1 (Thu, 20 Dec 2018 19:31:30 GMT): mahoney1 (Thu, 20 Dec 2018 19:31:30 GMT): mahoney1 (Thu, 20 Dec 2018 19:31:30 GMT): mahoney1 (Thu, 20 Dec 2018 19:31:30 GMT): mahoney1 (Thu, 20 Dec 2018 19:34:17 GMT): MayukhGhosh (Fri, 21 Dec 2018 09:57:29 GMT): garunkumar450 (Fri, 21 Dec 2018 11:50:55 GMT): Sarath_Kumar (Fri, 21 Dec 2018 11:58:22 GMT): anand.balagopalan (Fri, 21 Dec 2018 12:28:11 GMT): anand.balagopalan (Fri, 21 Dec 2018 12:30:59 GMT): anand.balagopalan (Fri, 21 Dec 2018 12:37:59 GMT): anand.balagopalan (Fri, 21 Dec 2018 12:41:53 GMT): mahoney1 (Fri, 21 Dec 2018 13:08:31 GMT): mahoney1 (Fri, 21 Dec 2018 13:08:31 GMT): mahoney1 (Fri, 21 Dec 2018 13:17:17 GMT): anand.balagopalan (Fri, 21 Dec 2018 13:22:42 GMT): anand.balagopalan (Fri, 21 Dec 2018 13:24:46 GMT): anand.balagopalan (Fri, 21 Dec 2018 13:26:02 GMT): rthatcher (Fri, 21 Dec 2018 13:40:44 GMT): rthatcher (Fri, 21 Dec 2018 13:48:35 GMT): anand.balagopalan (Fri, 21 Dec 2018 14:14:41 GMT): tomszero (Fri, 21 Dec 2018 19:28:23 GMT): tomszero (Fri, 21 Dec 2018 19:29:51 GMT): PatrickOrtell (Sat, 22 Dec 2018 01:38:38 GMT): PatrickOrtell (Sat, 22 Dec 2018 01:38:38 GMT): PatrickOrtell (Sat, 22 Dec 2018 01:38:53 GMT): MillionBenjamin (Sat, 22 Dec 2018 12:57:03 GMT): MillionBenjamin (Sat, 22 Dec 2018 12:58:06 GMT): MillionBenjamin (Sat, 22 Dec 2018 13:00:31 GMT): KvdB (Sat, 22 Dec 2018 14:01:52 GMT): KvdB (Sat, 22 Dec 2018 14:07:17 GMT): saeedi (Sat, 22 Dec 2018 14:13:25 GMT): mahoney1 (Sat, 22 Dec 2018 17:33:59 GMT): ronaldlong46 (Sun, 23 Dec 2018 07:01:17 GMT): Akshat-Jain (Sun, 23 Dec 2018 12:25:49 GMT): Akshat-Jain (Sun, 23 Dec 2018 12:25:57 GMT): KvdB (Sun, 23 Dec 2018 13:02:56 GMT): dselman (Sun, 23 Dec 2018 22:37:42 GMT): SJoshi7 (Mon, 24 Dec 2018 06:01:04 GMT): Shiv_S_C (Mon, 24 Dec 2018 06:23:16 GMT): Shiv_S_C (Mon, 24 Dec 2018 06:35:47 GMT): Shiv_S_C (Mon, 24 Dec 2018 06:35:47 GMT): Shiv_S_C (Mon, 24 Dec 2018 06:35:47 GMT): dayubian (Mon, 24 Dec 2018 08:00:03 GMT): AbhisekChandra (Mon, 24 Dec 2018 09:30:30 GMT): garunkumar450 (Mon, 24 Dec 2018 11:46:24 GMT): garunkumar450 (Mon, 24 Dec 2018 11:46:24 GMT): ShaikSharuk (Mon, 24 Dec 2018 14:03:29 GMT): KvdB (Mon, 24 Dec 2018 17:24:12 GMT): sonphamngoc (Wed, 26 Dec 2018 04:43:24 GMT): sonphamngoc (Wed, 26 Dec 2018 04:43:44 GMT): sonphamngoc (Wed, 26 Dec 2018 04:43:44 GMT): sonphamngoc (Wed, 26 Dec 2018 04:43:44 GMT): mefy-pushpendu (Wed, 26 Dec 2018 05:19:47 GMT): d8bhatta (Wed, 26 Dec 2018 05:19:59 GMT): d8bhatta (Wed, 26 Dec 2018 05:20:08 GMT): d8bhatta (Wed, 26 Dec 2018 05:20:38 GMT): mefy-pushpendu (Wed, 26 Dec 2018 05:20:39 GMT): sonphamngoc (Wed, 26 Dec 2018 06:21:49 GMT): sonphamngoc (Wed, 26 Dec 2018 06:21:49 GMT): AbhisekChandra (Wed, 26 Dec 2018 06:24:42 GMT): sonphamngoc (Wed, 26 Dec 2018 06:36:47 GMT): mefy-pushpendu (Wed, 26 Dec 2018 07:17:58 GMT): mefy-pushpendu (Wed, 26 Dec 2018 07:18:47 GMT): sonphamngoc (Wed, 26 Dec 2018 07:37:06 GMT): mefy-pushpendu (Wed, 26 Dec 2018 07:52:39 GMT): mefy-pushpendu (Wed, 26 Dec 2018 07:52:52 GMT): mefy-pushpendu (Wed, 26 Dec 2018 07:53:11 GMT): garunkumar450 (Wed, 26 Dec 2018 07:57:56 GMT): garunkumar450 (Wed, 26 Dec 2018 07:57:56 GMT): mefy-pushpendu (Wed, 26 Dec 2018 11:08:24 GMT): sudhir.kumawat (Wed, 26 Dec 2018 12:43:14 GMT): Sarath_Kumar (Wed, 26 Dec 2018 13:00:02 GMT): mefy-pushpendu (Wed, 26 Dec 2018 14:10:27 GMT): KvdB (Thu, 27 Dec 2018 10:23:40 GMT): SumaGowda (Thu, 27 Dec 2018 12:45:37 GMT): mallikarjunasai995 (Fri, 28 Dec 2018 04:37:54 GMT): mallikarjunasai995 (Fri, 28 Dec 2018 04:39:39 GMT): Teckchun94 (Fri, 28 Dec 2018 08:39:13 GMT): anand.balagopalan (Fri, 28 Dec 2018 09:41:27 GMT): sureshtedla (Fri, 28 Dec 2018 10:02:56 GMT): sureshtedla (Fri, 28 Dec 2018 10:02:56 GMT): komalbharadiya (Fri, 28 Dec 2018 10:26:35 GMT): ShaikSharuk (Fri, 28 Dec 2018 10:43:59 GMT): katran_nakhla (Fri, 28 Dec 2018 15:08:37 GMT): ziomanzo (Fri, 28 Dec 2018 15:18:32 GMT): ziomanzo (Fri, 28 Dec 2018 15:19:49 GMT): ziomanzo (Fri, 28 Dec 2018 15:19:49 GMT): katran_nakhla (Fri, 28 Dec 2018 16:39:37 GMT): AkshayCHD (Fri, 28 Dec 2018 17:59:30 GMT): AkshayCHD (Fri, 28 Dec 2018 18:03:04 GMT): AkshayCHD (Fri, 28 Dec 2018 18:03:04 GMT): nRyDevOps (Fri, 28 Dec 2018 20:05:42 GMT): nRyDevOps (Fri, 28 Dec 2018 20:06:01 GMT): nRyDevOps (Fri, 28 Dec 2018 20:06:13 GMT): nRyDevOps (Fri, 28 Dec 2018 20:06:37 GMT): nRyDevOps (Fri, 28 Dec 2018 20:07:42 GMT): nRyDevOps (Fri, 28 Dec 2018 20:07:48 GMT): nRyDevOps (Fri, 28 Dec 2018 22:03:49 GMT): dave.enyeart (Fri, 28 Dec 2018 22:40:23 GMT): packkkkk (Fri, 28 Dec 2018 22:43:17 GMT): packkkkk (Sat, 29 Dec 2018 06:55:44 GMT): packkkkk (Sat, 29 Dec 2018 06:56:34 GMT): packkkkk (Sat, 29 Dec 2018 06:56:34 GMT): packkkkk (Sat, 29 Dec 2018 06:59:42 GMT): hassantauqeer (Sat, 29 Dec 2018 11:39:42 GMT): marcj_518 (Sat, 29 Dec 2018 15:40:39 GMT): marcj_518 (Sat, 29 Dec 2018 15:40:42 GMT): Garrett (Sat, 29 Dec 2018 23:13:23 GMT): Garrett (Sat, 29 Dec 2018 23:13:39 GMT): YairAllouche (Sun, 30 Dec 2018 10:04:07 GMT): YairAllouche (Sun, 30 Dec 2018 10:04:15 GMT): PatrickOrtell (Mon, 31 Dec 2018 01:28:00 GMT): PatrickOrtell (Mon, 31 Dec 2018 01:35:58 GMT): olios (Mon, 31 Dec 2018 02:12:14 GMT): Teckchun94 (Mon, 31 Dec 2018 04:01:31 GMT): link2yasar (Mon, 31 Dec 2018 05:03:21 GMT): MichaelHardy (Mon, 31 Dec 2018 05:28:31 GMT): MichaelHardy (Mon, 31 Dec 2018 05:30:12 GMT): ronaldlong46 (Mon, 31 Dec 2018 06:28:43 GMT): ronaldlong46 (Mon, 31 Dec 2018 06:28:49 GMT): ronaldlong46 (Mon, 31 Dec 2018 06:29:30 GMT): ronaldlong46 (Mon, 31 Dec 2018 06:29:50 GMT): ronaldlong46 (Mon, 31 Dec 2018 06:30:14 GMT): ronaldlong46 (Mon, 31 Dec 2018 06:30:40 GMT): ronaldlong46 (Mon, 31 Dec 2018 06:31:51 GMT): mahoney1 (Mon, 31 Dec 2018 09:42:03 GMT): mahoney1 (Mon, 31 Dec 2018 09:42:35 GMT): mahoney1 (Mon, 31 Dec 2018 09:45:28 GMT): Smit95shah (Mon, 31 Dec 2018 09:55:34 GMT): Smit95shah (Mon, 31 Dec 2018 09:55:57 GMT): Smit95shah (Mon, 31 Dec 2018 09:56:30 GMT): Smit95shah (Mon, 31 Dec 2018 09:56:57 GMT): Smit95shah (Mon, 31 Dec 2018 09:57:30 GMT): mahoney1 (Mon, 31 Dec 2018 10:00:23 GMT): mahoney1 (Mon, 31 Dec 2018 10:08:44 GMT): mahoney1 (Mon, 31 Dec 2018 10:08:44 GMT): Smit95shah (Mon, 31 Dec 2018 10:21:19 GMT): Smit95shah (Mon, 31 Dec 2018 10:21:41 GMT): mahoney1 (Mon, 31 Dec 2018 10:27:21 GMT): Smit95shah (Mon, 31 Dec 2018 10:31:47 GMT): Smit95shah (Mon, 31 Dec 2018 10:44:47 GMT): Smit95shah (Mon, 31 Dec 2018 10:45:02 GMT): mahoney1 (Mon, 31 Dec 2018 11:03:56 GMT): harpcio (Mon, 31 Dec 2018 11:25:20 GMT): harpcio (Mon, 31 Dec 2018 11:27:42 GMT): harpcio (Mon, 31 Dec 2018 11:27:42 GMT): harpcio (Mon, 31 Dec 2018 11:27:42 GMT): harpcio (Mon, 31 Dec 2018 11:27:42 GMT): harpcio (Mon, 31 Dec 2018 11:27:42 GMT): mahoney1 (Mon, 31 Dec 2018 11:34:37 GMT): harpcio (Mon, 31 Dec 2018 11:36:41 GMT): harpcio (Mon, 31 Dec 2018 11:37:12 GMT): harpcio (Mon, 31 Dec 2018 11:38:54 GMT): mahoney1 (Mon, 31 Dec 2018 11:40:13 GMT): harpcio (Mon, 31 Dec 2018 11:43:09 GMT): harpcio (Mon, 31 Dec 2018 11:43:54 GMT): Smit95shah (Mon, 31 Dec 2018 11:54:18 GMT): mahoney1 (Mon, 31 Dec 2018 11:56:23 GMT): harpcio (Mon, 31 Dec 2018 12:20:14 GMT): mahoney1 (Mon, 31 Dec 2018 12:34:08 GMT): mallikarjunasai995 (Mon, 31 Dec 2018 12:56:24 GMT): mallikarjunasai995 (Mon, 31 Dec 2018 12:57:06 GMT): harpcio (Mon, 31 Dec 2018 13:12:49 GMT): harpcio (Mon, 31 Dec 2018 13:12:49 GMT): harpcio (Mon, 31 Dec 2018 13:12:49 GMT): Damnitv (Mon, 31 Dec 2018 13:23:58 GMT): harpcio (Mon, 31 Dec 2018 14:00:46 GMT): Smit95shah (Mon, 31 Dec 2018 14:04:33 GMT): Smit95shah (Mon, 31 Dec 2018 14:14:45 GMT): Smit95shah (Mon, 31 Dec 2018 14:58:01 GMT): Smit95shah (Mon, 31 Dec 2018 14:58:01 GMT): harpcio (Mon, 31 Dec 2018 15:01:53 GMT): harpcio (Mon, 31 Dec 2018 15:04:52 GMT): Smit95shah (Mon, 31 Dec 2018 15:20:45 GMT): Smit95shah (Mon, 31 Dec 2018 15:21:46 GMT): Smit95shah (Mon, 31 Dec 2018 15:22:06 GMT): Garrett (Mon, 31 Dec 2018 18:58:37 GMT): davidkel (Mon, 31 Dec 2018 19:33:34 GMT): davidkel (Mon, 31 Dec 2018 19:33:34 GMT): Garrett (Mon, 31 Dec 2018 19:56:25 GMT): Garrett (Mon, 31 Dec 2018 19:59:45 GMT): Garrett (Mon, 31 Dec 2018 20:02:49 GMT): davidkel (Mon, 31 Dec 2018 20:55:40 GMT): davidkel (Mon, 31 Dec 2018 21:00:06 GMT): ronaldlong46 (Mon, 31 Dec 2018 22:22:02 GMT): ronaldlong46 (Mon, 31 Dec 2018 22:22:03 GMT): chanwitkepha (Tue, 01 Jan 2019 01:30:17 GMT): rancifer (Tue, 01 Jan 2019 02:37:35 GMT): Smit95shah (Tue, 01 Jan 2019 04:39:15 GMT): Smit95shah (Tue, 01 Jan 2019 04:39:15 GMT): Smit95shah (Tue, 01 Jan 2019 04:39:15 GMT): SumaGowda (Tue, 01 Jan 2019 05:42:09 GMT): anand.balagopalan (Tue, 01 Jan 2019 07:33:12 GMT): ShaikSharuk (Tue, 01 Jan 2019 09:28:25 GMT): anand.balagopalan (Tue, 01 Jan 2019 09:43:55 GMT): mallikarjunasai995 (Tue, 01 Jan 2019 09:51:11 GMT): Shehan_Dinuka (Tue, 01 Jan 2019 10:57:08 GMT): Shehan_Dinuka (Tue, 01 Jan 2019 10:59:00 GMT): Ishee (Tue, 01 Jan 2019 12:19:47 GMT): PatrickOrtell (Tue, 01 Jan 2019 13:55:32 GMT): davidkel (Tue, 01 Jan 2019 14:19:42 GMT): davidkel (Tue, 01 Jan 2019 16:20:23 GMT): ashokkj (Wed, 02 Jan 2019 02:36:29 GMT): SameerKulkarni (Wed, 02 Jan 2019 05:01:49 GMT): komalbharadiya (Wed, 02 Jan 2019 05:42:29 GMT): knagware9 (Wed, 02 Jan 2019 07:12:16 GMT): bhemeswararaoankireddy (Wed, 02 Jan 2019 07:42:33 GMT): bhemeswararaoankireddy (Wed, 02 Jan 2019 07:43:07 GMT): bhemeswararaoankireddy (Wed, 02 Jan 2019 07:43:13 GMT): komalbharadiya (Wed, 02 Jan 2019 07:43:16 GMT): knagware9 (Wed, 02 Jan 2019 07:58:52 GMT): komalbharadiya (Wed, 02 Jan 2019 09:17:01 GMT): mahoney1 (Wed, 02 Jan 2019 09:19:01 GMT): mahoney1 (Wed, 02 Jan 2019 09:19:01 GMT): sureshtedla (Wed, 02 Jan 2019 09:22:57 GMT): sureshtedla (Wed, 02 Jan 2019 09:23:14 GMT): mahoney1 (Wed, 02 Jan 2019 09:24:18 GMT): anand.balagopalan (Wed, 02 Jan 2019 09:28:45 GMT): ShaikSharuk (Wed, 02 Jan 2019 09:38:21 GMT): mahoney1 (Wed, 02 Jan 2019 09:39:58 GMT): anand.balagopalan (Wed, 02 Jan 2019 09:44:02 GMT): ShaikSharuk (Wed, 02 Jan 2019 09:45:28 GMT): anand.balagopalan (Wed, 02 Jan 2019 09:52:49 GMT): mahoney1 (Wed, 02 Jan 2019 09:57:06 GMT): mahoney1 (Wed, 02 Jan 2019 09:57:06 GMT): mahoney1 (Wed, 02 Jan 2019 09:57:06 GMT): anand.balagopalan (Wed, 02 Jan 2019 10:01:12 GMT): vikasbalyan (Wed, 02 Jan 2019 10:10:39 GMT): mahoney1 (Wed, 02 Jan 2019 10:19:27 GMT): anand.balagopalan (Wed, 02 Jan 2019 10:23:58 GMT): mahoney1 (Wed, 02 Jan 2019 10:53:08 GMT): KvdB (Wed, 02 Jan 2019 11:00:45 GMT): anand.balagopalan (Wed, 02 Jan 2019 11:22:23 GMT): anand.balagopalan (Wed, 02 Jan 2019 11:23:36 GMT): mahoney1 (Wed, 02 Jan 2019 11:24:52 GMT): mahoney1 (Wed, 02 Jan 2019 11:24:52 GMT): mahoney1 (Wed, 02 Jan 2019 11:24:52 GMT): irkoch (Wed, 02 Jan 2019 11:33:12 GMT): irkoch (Wed, 02 Jan 2019 11:33:19 GMT): davidkel (Wed, 02 Jan 2019 11:35:59 GMT): davidkel (Wed, 02 Jan 2019 11:36:53 GMT): davidkel (Wed, 02 Jan 2019 11:36:53 GMT): davidkel (Wed, 02 Jan 2019 11:46:10 GMT): davidkel (Wed, 02 Jan 2019 11:47:38 GMT): davidkel (Wed, 02 Jan 2019 11:47:38 GMT): KvdB (Wed, 02 Jan 2019 11:49:34 GMT): irkoch (Wed, 02 Jan 2019 11:52:49 GMT): davidkel (Wed, 02 Jan 2019 11:55:27 GMT): irkoch (Wed, 02 Jan 2019 11:59:17 GMT): sureshtedla (Wed, 02 Jan 2019 12:08:27 GMT): NeelKantht (Wed, 02 Jan 2019 12:13:22 GMT): rthatcher (Wed, 02 Jan 2019 12:52:16 GMT): rthatcher (Wed, 02 Jan 2019 12:53:51 GMT): ShaikSharuk (Wed, 02 Jan 2019 13:01:40 GMT): rthatcher (Wed, 02 Jan 2019 13:12:50 GMT): rrishmawi (Wed, 02 Jan 2019 13:14:40 GMT): ShaikSharuk (Wed, 02 Jan 2019 13:20:00 GMT): mahoney1 (Wed, 02 Jan 2019 13:32:43 GMT): mahoney1 (Wed, 02 Jan 2019 13:32:43 GMT): rrishmawi (Wed, 02 Jan 2019 13:54:00 GMT): davidkel (Wed, 02 Jan 2019 16:36:56 GMT): davidkel (Wed, 02 Jan 2019 16:42:19 GMT): davidkel (Wed, 02 Jan 2019 16:42:19 GMT): himi64 (Wed, 02 Jan 2019 18:14:57 GMT): himi64 (Wed, 02 Jan 2019 18:18:19 GMT): mahoney1 (Wed, 02 Jan 2019 18:26:36 GMT): NedSnark (Wed, 02 Jan 2019 19:44:11 GMT): himi64 (Wed, 02 Jan 2019 20:12:52 GMT): himi64 (Wed, 02 Jan 2019 20:12:52 GMT): komalbharadiya (Thu, 03 Jan 2019 02:43:29 GMT): komalbharadiya (Thu, 03 Jan 2019 02:45:00 GMT): Smit95shah (Thu, 03 Jan 2019 03:18:18 GMT): sanjay.batra (Thu, 03 Jan 2019 04:56:30 GMT): sanjay.batra (Thu, 03 Jan 2019 04:56:46 GMT): sanjay.batra (Thu, 03 Jan 2019 04:57:11 GMT): sanjay.batra (Thu, 03 Jan 2019 04:57:19 GMT): sanjay.batra (Thu, 03 Jan 2019 04:57:44 GMT): anand.balagopalan (Thu, 03 Jan 2019 06:01:08 GMT): SJoshi7 (Thu, 03 Jan 2019 06:13:13 GMT): Smit95shah (Thu, 03 Jan 2019 06:31:28 GMT): Smit95shah (Thu, 03 Jan 2019 06:31:39 GMT): hauhm (Thu, 03 Jan 2019 07:16:05 GMT): hauhm (Thu, 03 Jan 2019 07:16:05 GMT): hauhm (Thu, 03 Jan 2019 07:16:05 GMT): Daka (Thu, 03 Jan 2019 08:08:46 GMT): ShaikSharuk (Thu, 03 Jan 2019 08:48:44 GMT): davidkel (Thu, 03 Jan 2019 09:00:47 GMT): davidkel (Thu, 03 Jan 2019 09:00:47 GMT): davidkel (Thu, 03 Jan 2019 09:05:19 GMT): davidkel (Thu, 03 Jan 2019 09:09:46 GMT): davidkel (Thu, 03 Jan 2019 09:12:08 GMT): davidkel (Thu, 03 Jan 2019 09:12:48 GMT): ShaikSharuk (Thu, 03 Jan 2019 09:20:39 GMT): rthatcher (Thu, 03 Jan 2019 09:21:39 GMT): mahoney1 (Thu, 03 Jan 2019 09:21:40 GMT): Smit95shah (Thu, 03 Jan 2019 09:22:37 GMT): davidkel (Thu, 03 Jan 2019 09:24:19 GMT): Smit95shah (Thu, 03 Jan 2019 09:28:08 GMT): Smit95shah (Thu, 03 Jan 2019 09:28:08 GMT): Smit95shah (Thu, 03 Jan 2019 09:28:08 GMT): davidkel (Thu, 03 Jan 2019 09:36:15 GMT): Smit95shah (Thu, 03 Jan 2019 09:36:42 GMT): Smit95shah (Thu, 03 Jan 2019 09:37:16 GMT): davidkel (Thu, 03 Jan 2019 09:39:10 GMT): davidkel (Thu, 03 Jan 2019 09:39:10 GMT): davidkel (Thu, 03 Jan 2019 09:39:10 GMT): Smit95shah (Thu, 03 Jan 2019 09:40:45 GMT): davidkel (Thu, 03 Jan 2019 09:43:54 GMT): davidkel (Thu, 03 Jan 2019 09:43:54 GMT): Smit95shah (Thu, 03 Jan 2019 09:48:15 GMT): davidkel (Thu, 03 Jan 2019 09:54:40 GMT): davidkel (Thu, 03 Jan 2019 09:54:40 GMT): Smit95shah (Thu, 03 Jan 2019 10:06:54 GMT): SumaGowda (Thu, 03 Jan 2019 11:26:00 GMT): SumaGowda (Thu, 03 Jan 2019 11:26:38 GMT): SumaGowda (Thu, 03 Jan 2019 11:27:08 GMT): irkoch (Thu, 03 Jan 2019 11:38:27 GMT): rthatcher (Thu, 03 Jan 2019 12:00:09 GMT): rthatcher (Thu, 03 Jan 2019 12:01:38 GMT): rthatcher (Thu, 03 Jan 2019 12:02:10 GMT): SumaGowda (Thu, 03 Jan 2019 12:27:54 GMT): rthatcher (Thu, 03 Jan 2019 12:42:17 GMT): ShaikSharuk (Thu, 03 Jan 2019 13:10:35 GMT): irkoch (Thu, 03 Jan 2019 13:11:54 GMT): irkoch (Thu, 03 Jan 2019 13:11:54 GMT): NikolasDervenis (Thu, 03 Jan 2019 13:12:55 GMT): NikolasDervenis (Thu, 03 Jan 2019 13:12:57 GMT): davidkel (Thu, 03 Jan 2019 13:18:22 GMT): davidkel (Thu, 03 Jan 2019 13:18:22 GMT): davidkel (Thu, 03 Jan 2019 13:18:22 GMT): ShaikSharuk (Thu, 03 Jan 2019 13:22:31 GMT): davidkel (Thu, 03 Jan 2019 13:32:05 GMT): davidkel (Thu, 03 Jan 2019 13:32:05 GMT): mahoney1 (Thu, 03 Jan 2019 13:50:19 GMT): irkoch (Thu, 03 Jan 2019 16:13:29 GMT): mahoney1 (Thu, 03 Jan 2019 16:25:14 GMT): mahoney1 (Thu, 03 Jan 2019 16:25:14 GMT): irkoch (Thu, 03 Jan 2019 16:30:53 GMT): smfaizalkhan (Thu, 03 Jan 2019 18:12:40 GMT): NxTBlock (Thu, 03 Jan 2019 19:41:51 GMT): Smit95shah (Fri, 04 Jan 2019 05:42:31 GMT): pyraman (Fri, 04 Jan 2019 07:55:59 GMT): pyraman (Fri, 04 Jan 2019 07:57:02 GMT): Daka (Fri, 04 Jan 2019 08:36:04 GMT): rthatcher (Fri, 04 Jan 2019 09:02:34 GMT): rthatcher (Fri, 04 Jan 2019 09:10:52 GMT): sureshtedla (Fri, 04 Jan 2019 09:16:59 GMT): sureshtedla (Fri, 04 Jan 2019 09:16:59 GMT): sureshtedla (Fri, 04 Jan 2019 09:16:59 GMT): sureshtedla (Fri, 04 Jan 2019 09:18:00 GMT): pyraman (Fri, 04 Jan 2019 09:20:28 GMT): rthatcher (Fri, 04 Jan 2019 09:27:24 GMT): rthatcher (Fri, 04 Jan 2019 09:35:21 GMT): pyraman (Fri, 04 Jan 2019 09:56:45 GMT): sureshtedla (Fri, 04 Jan 2019 10:09:59 GMT): SJoshi7 (Fri, 04 Jan 2019 10:32:54 GMT): davidkel (Fri, 04 Jan 2019 10:40:07 GMT): davidkel (Fri, 04 Jan 2019 10:40:07 GMT): davidkel (Fri, 04 Jan 2019 10:40:07 GMT): davidkel (Fri, 04 Jan 2019 10:40:07 GMT): davidkel (Fri, 04 Jan 2019 10:40:07 GMT): Daka (Fri, 04 Jan 2019 11:17:38 GMT): sureshtedla (Fri, 04 Jan 2019 12:10:56 GMT): sureshtedla (Fri, 04 Jan 2019 12:11:14 GMT): sureshtedla (Fri, 04 Jan 2019 12:11:14 GMT): sureshtedla (Fri, 04 Jan 2019 12:11:17 GMT): sureshtedla (Fri, 04 Jan 2019 12:11:17 GMT): sureshtedla (Fri, 04 Jan 2019 12:11:49 GMT): sureshtedla (Fri, 04 Jan 2019 12:11:49 GMT): Smit95shah (Fri, 04 Jan 2019 12:32:21 GMT): Smit95shah (Fri, 04 Jan 2019 15:23:04 GMT): saikumar3349 (Fri, 04 Jan 2019 15:53:25 GMT): rthatcher (Fri, 04 Jan 2019 16:09:52 GMT): ronaldlong46 (Sat, 05 Jan 2019 00:23:17 GMT): ronaldlong46 (Sat, 05 Jan 2019 00:24:44 GMT): ronaldlong46 (Sat, 05 Jan 2019 00:25:08 GMT): LukaGubo (Sat, 05 Jan 2019 03:04:30 GMT): garunkumar450 (Sat, 05 Jan 2019 08:59:47 GMT): davidkel (Sat, 05 Jan 2019 09:19:29 GMT): davidkel (Sat, 05 Jan 2019 09:19:29 GMT): jeka_gompa (Sat, 05 Jan 2019 11:57:21 GMT): RenanDevillieres (Sat, 05 Jan 2019 15:07:28 GMT): Smit95shah (Sun, 06 Jan 2019 03:50:47 GMT): SJoshi7 (Sun, 06 Jan 2019 10:29:31 GMT): garunkumar450 (Sun, 06 Jan 2019 15:26:14 GMT): garunkumar450 (Sun, 06 Jan 2019 15:26:14 GMT): garunkumar450 (Sun, 06 Jan 2019 15:33:26 GMT): garunkumar450 (Sun, 06 Jan 2019 15:37:57 GMT): garunkumar450 (Sun, 06 Jan 2019 18:11:47 GMT): davidkel (Sun, 06 Jan 2019 18:22:01 GMT): davidkel (Sun, 06 Jan 2019 18:22:01 GMT): davidkel (Sun, 06 Jan 2019 18:22:01 GMT): davidkel (Sun, 06 Jan 2019 18:22:01 GMT): davidkel (Sun, 06 Jan 2019 18:22:01 GMT): davidkel (Sun, 06 Jan 2019 18:23:38 GMT): viprat (Sun, 06 Jan 2019 18:39:46 GMT): DarwinHarianto (Mon, 07 Jan 2019 02:22:10 GMT): DarwinHarianto (Mon, 07 Jan 2019 02:22:51 GMT): DarwinHarianto (Mon, 07 Jan 2019 02:24:05 GMT): DarwinHarianto (Mon, 07 Jan 2019 02:24:46 GMT): DarwinHarianto (Mon, 07 Jan 2019 02:24:53 GMT): DarwinHarianto (Mon, 07 Jan 2019 02:24:58 GMT): DarwinHarianto (Mon, 07 Jan 2019 05:20:35 GMT): Ishee (Mon, 07 Jan 2019 05:55:56 GMT): Ishee (Mon, 07 Jan 2019 05:57:22 GMT): RakeshKumarzs (Mon, 07 Jan 2019 07:07:01 GMT): RakeshKumarzs (Mon, 07 Jan 2019 07:08:22 GMT): Daka (Mon, 07 Jan 2019 08:30:25 GMT): packkkkk (Mon, 07 Jan 2019 08:39:56 GMT): packkkkk (Mon, 07 Jan 2019 08:40:37 GMT): Daka (Mon, 07 Jan 2019 08:49:30 GMT): Daka (Mon, 07 Jan 2019 08:49:34 GMT): Daka (Mon, 07 Jan 2019 08:51:30 GMT): packkkkk (Mon, 07 Jan 2019 08:58:24 GMT): Daka (Mon, 07 Jan 2019 09:12:14 GMT): rthatcher (Mon, 07 Jan 2019 09:24:37 GMT): packkkkk (Mon, 07 Jan 2019 09:29:21 GMT): rthatcher (Mon, 07 Jan 2019 09:29:59 GMT): Ishee (Mon, 07 Jan 2019 09:45:16 GMT): Sarath_Kumar (Mon, 07 Jan 2019 09:47:31 GMT): davidkel (Mon, 07 Jan 2019 10:01:50 GMT): nagaraju123 (Mon, 07 Jan 2019 10:02:41 GMT): nagaraju123 (Mon, 07 Jan 2019 10:03:07 GMT): nagaraju123 (Mon, 07 Jan 2019 10:03:19 GMT): deelthor (Mon, 07 Jan 2019 10:05:57 GMT): mahoney1 (Mon, 07 Jan 2019 10:06:13 GMT): nagaraju123 (Mon, 07 Jan 2019 10:07:09 GMT): nagaraju123 (Mon, 07 Jan 2019 10:07:12 GMT): nagaraju123 (Mon, 07 Jan 2019 10:07:24 GMT): nagaraju123 (Mon, 07 Jan 2019 10:09:22 GMT): mahoney1 (Mon, 07 Jan 2019 10:55:41 GMT): mahoney1 (Mon, 07 Jan 2019 10:55:41 GMT): pikvik (Mon, 07 Jan 2019 11:17:35 GMT): pikvik (Mon, 07 Jan 2019 11:18:56 GMT): pikvik (Mon, 07 Jan 2019 11:19:13 GMT): SJoshi7 (Mon, 07 Jan 2019 11:26:21 GMT): rthatcher (Mon, 07 Jan 2019 11:38:35 GMT): pikvik (Mon, 07 Jan 2019 11:41:32 GMT): rthatcher (Mon, 07 Jan 2019 11:43:08 GMT): pikvik (Mon, 07 Jan 2019 11:46:52 GMT): mahoney1 (Mon, 07 Jan 2019 11:47:17 GMT): mahoney1 (Mon, 07 Jan 2019 11:47:17 GMT): SJoshi7 (Mon, 07 Jan 2019 12:05:52 GMT): SJoshi7 (Mon, 07 Jan 2019 12:05:57 GMT): mahoney1 (Mon, 07 Jan 2019 12:24:54 GMT): mahoney1 (Mon, 07 Jan 2019 12:24:54 GMT): SJoshi7 (Mon, 07 Jan 2019 12:32:09 GMT): pikvik (Mon, 07 Jan 2019 12:49:04 GMT): sureshtedla (Mon, 07 Jan 2019 13:00:44 GMT): rthatcher (Mon, 07 Jan 2019 13:40:23 GMT): packkkkk (Mon, 07 Jan 2019 13:47:11 GMT): mahoney1 (Mon, 07 Jan 2019 13:53:30 GMT): packkkkk (Mon, 07 Jan 2019 13:55:18 GMT): packkkkk (Mon, 07 Jan 2019 13:55:46 GMT): packkkkk (Mon, 07 Jan 2019 13:56:28 GMT): packkkkk (Mon, 07 Jan 2019 13:59:15 GMT): mahoney1 (Mon, 07 Jan 2019 14:30:18 GMT): mahoney1 (Mon, 07 Jan 2019 14:34:56 GMT): packkkkk (Mon, 07 Jan 2019 14:38:02 GMT): packkkkk (Mon, 07 Jan 2019 14:38:35 GMT): davidkel (Mon, 07 Jan 2019 14:41:19 GMT): pikvik (Mon, 07 Jan 2019 14:43:13 GMT): packkkkk (Mon, 07 Jan 2019 14:45:54 GMT): packkkkk (Mon, 07 Jan 2019 14:46:20 GMT): mahoney1 (Mon, 07 Jan 2019 17:19:29 GMT): gioannou983 (Mon, 07 Jan 2019 17:57:27 GMT): gioannou983 (Mon, 07 Jan 2019 17:57:41 GMT): gioannou983 (Mon, 07 Jan 2019 17:57:41 GMT): mahoney1 (Mon, 07 Jan 2019 18:22:17 GMT): mahoney1 (Mon, 07 Jan 2019 18:22:17 GMT): gioannou983 (Mon, 07 Jan 2019 18:25:19 GMT): anant706 (Tue, 08 Jan 2019 03:34:17 GMT): nagaraju123 (Tue, 08 Jan 2019 04:25:50 GMT): nagaraju123 (Tue, 08 Jan 2019 04:26:15 GMT): nagaraju123 (Tue, 08 Jan 2019 04:26:22 GMT): Ishee (Tue, 08 Jan 2019 04:37:39 GMT): nagaraju123 (Tue, 08 Jan 2019 04:56:08 GMT): nagaraju123 (Tue, 08 Jan 2019 04:56:21 GMT): nagaraju123 (Tue, 08 Jan 2019 04:56:26 GMT): nagaraju123 (Tue, 08 Jan 2019 04:56:29 GMT): Ishee (Tue, 08 Jan 2019 04:59:41 GMT): bh4rtp (Tue, 08 Jan 2019 06:53:43 GMT): PhilipAndrew (Tue, 08 Jan 2019 07:05:28 GMT): PhilipAndrew (Tue, 08 Jan 2019 07:05:43 GMT): SJoshi7 (Tue, 08 Jan 2019 07:12:13 GMT): nagaraju123 (Tue, 08 Jan 2019 07:20:43 GMT): nagaraju123 (Tue, 08 Jan 2019 07:23:34 GMT): Sarath_Kumar (Tue, 08 Jan 2019 07:30:25 GMT): Sarath_Kumar (Tue, 08 Jan 2019 07:30:25 GMT): nagaraju123 (Tue, 08 Jan 2019 07:31:20 GMT): nagaraju123 (Tue, 08 Jan 2019 07:31:26 GMT): nagaraju123 (Tue, 08 Jan 2019 07:31:55 GMT): SJoshi7 (Tue, 08 Jan 2019 07:39:06 GMT): SJoshi7 (Tue, 08 Jan 2019 07:42:43 GMT): davidkel (Tue, 08 Jan 2019 07:51:02 GMT): SJoshi7 (Tue, 08 Jan 2019 07:54:11 GMT): davidkel (Tue, 08 Jan 2019 07:55:50 GMT): SJoshi7 (Tue, 08 Jan 2019 07:55:52 GMT): davidkel (Tue, 08 Jan 2019 07:57:32 GMT): SJoshi7 (Tue, 08 Jan 2019 07:58:14 GMT): davidkel (Tue, 08 Jan 2019 07:59:03 GMT): SJoshi7 (Tue, 08 Jan 2019 07:59:49 GMT): nagaraju123 (Tue, 08 Jan 2019 08:32:46 GMT): nagaraju123 (Tue, 08 Jan 2019 08:33:41 GMT): davidkel (Tue, 08 Jan 2019 08:35:58 GMT): davidkel (Tue, 08 Jan 2019 08:35:58 GMT): nagaraju123 (Tue, 08 Jan 2019 08:41:20 GMT): mahoney1 (Tue, 08 Jan 2019 09:12:35 GMT): SJoshi7 (Tue, 08 Jan 2019 09:18:49 GMT): gsolaich (Tue, 08 Jan 2019 09:34:25 GMT): Techie (Tue, 08 Jan 2019 10:53:02 GMT): mallikarjunasai995 (Tue, 08 Jan 2019 10:53:55 GMT): SJoshi7 (Tue, 08 Jan 2019 10:55:20 GMT): mallikarjunasai995 (Tue, 08 Jan 2019 10:56:05 GMT): rthatcher (Tue, 08 Jan 2019 10:58:44 GMT): rthatcher (Tue, 08 Jan 2019 10:58:44 GMT): mallikarjunasai995 (Tue, 08 Jan 2019 11:13:21 GMT): mallikarjunasai995 (Tue, 08 Jan 2019 13:04:49 GMT): mallikarjunasai995 (Tue, 08 Jan 2019 13:05:24 GMT): mallikarjunasai995 (Tue, 08 Jan 2019 13:12:06 GMT): rthatcher (Tue, 08 Jan 2019 13:12:08 GMT): mallikarjunasai995 (Tue, 08 Jan 2019 13:13:49 GMT): mallikarjunasai995 (Tue, 08 Jan 2019 13:19:16 GMT): rthatcher (Tue, 08 Jan 2019 13:28:08 GMT): mallikarjunasai995 (Tue, 08 Jan 2019 13:28:23 GMT): rthatcher (Tue, 08 Jan 2019 13:30:20 GMT): mallikarjunasai995 (Tue, 08 Jan 2019 13:35:40 GMT): mallikarjunasai995 (Tue, 08 Jan 2019 13:38:51 GMT): danilojodas (Tue, 08 Jan 2019 13:44:34 GMT): davidkel (Tue, 08 Jan 2019 13:50:59 GMT): mallikarjunasai995 (Tue, 08 Jan 2019 14:35:23 GMT): surfer76 (Tue, 08 Jan 2019 16:02:42 GMT): deelthor (Tue, 08 Jan 2019 18:31:29 GMT): deelthor (Tue, 08 Jan 2019 18:31:46 GMT): deelthor (Tue, 08 Jan 2019 18:32:05 GMT): davidkel (Tue, 08 Jan 2019 18:34:38 GMT): ajbill (Tue, 08 Jan 2019 20:09:17 GMT): ajbill (Tue, 08 Jan 2019 20:09:17 GMT): vanclief (Tue, 08 Jan 2019 20:46:11 GMT): vanclief (Tue, 08 Jan 2019 20:47:30 GMT): davidkel (Tue, 08 Jan 2019 21:09:11 GMT): vanclief (Tue, 08 Jan 2019 21:09:45 GMT): davidkel (Tue, 08 Jan 2019 21:15:45 GMT): davidkel (Tue, 08 Jan 2019 21:15:45 GMT): vanclief (Tue, 08 Jan 2019 21:55:05 GMT): davidkel (Tue, 08 Jan 2019 22:40:29 GMT): vanclief (Wed, 09 Jan 2019 02:49:46 GMT): mallikarjunasai995 (Wed, 09 Jan 2019 04:28:37 GMT): mallikarjunasai995 (Wed, 09 Jan 2019 04:28:59 GMT): mallikarjunasai995 (Wed, 09 Jan 2019 04:28:59 GMT): SJoshi7 (Wed, 09 Jan 2019 05:29:00 GMT): nagaraju123 (Wed, 09 Jan 2019 05:46:19 GMT): GuruMoorthy (Wed, 09 Jan 2019 06:10:00 GMT): davidkel (Wed, 09 Jan 2019 08:04:15 GMT): davidkel (Wed, 09 Jan 2019 08:06:13 GMT): davidkel (Wed, 09 Jan 2019 08:06:13 GMT): davidkel (Wed, 09 Jan 2019 08:10:43 GMT): SJoshi7 (Wed, 09 Jan 2019 08:12:59 GMT): davidkel (Wed, 09 Jan 2019 08:25:09 GMT): davidkel (Wed, 09 Jan 2019 08:25:09 GMT): ChamathK (Wed, 09 Jan 2019 08:29:21 GMT): deelthor (Wed, 09 Jan 2019 08:46:41 GMT): davidkel (Wed, 09 Jan 2019 08:47:49 GMT): deelthor (Wed, 09 Jan 2019 08:49:14 GMT): davidkel (Wed, 09 Jan 2019 08:57:39 GMT): deelthor (Wed, 09 Jan 2019 09:05:11 GMT): deelthor (Wed, 09 Jan 2019 09:06:39 GMT): mahoney1 (Wed, 09 Jan 2019 09:10:24 GMT): davidkel (Wed, 09 Jan 2019 09:15:04 GMT): davidkel (Wed, 09 Jan 2019 09:15:04 GMT): ChamathK (Wed, 09 Jan 2019 09:36:37 GMT): amendafernando (Wed, 09 Jan 2019 09:39:28 GMT): sstone1 (Wed, 09 Jan 2019 09:39:59 GMT): sstone1 (Wed, 09 Jan 2019 09:40:17 GMT): sstone1 (Wed, 09 Jan 2019 09:40:56 GMT): SJoshi7 (Wed, 09 Jan 2019 09:42:03 GMT): sstone1 (Wed, 09 Jan 2019 09:45:41 GMT): SJoshi7 (Wed, 09 Jan 2019 09:57:58 GMT): SJoshi7 (Wed, 09 Jan 2019 09:58:37 GMT): SJoshi7 (Wed, 09 Jan 2019 09:59:51 GMT): grantv (Wed, 09 Jan 2019 10:05:08 GMT): grantv (Wed, 09 Jan 2019 10:06:30 GMT): grantv (Wed, 09 Jan 2019 10:06:44 GMT): grantv (Wed, 09 Jan 2019 10:07:20 GMT): grantv (Wed, 09 Jan 2019 10:07:44 GMT): sstone1 (Wed, 09 Jan 2019 10:13:28 GMT): sstone1 (Wed, 09 Jan 2019 10:13:58 GMT): SJoshi7 (Wed, 09 Jan 2019 10:14:52 GMT): mahoney1 (Wed, 09 Jan 2019 10:14:53 GMT): grantv (Wed, 09 Jan 2019 10:16:11 GMT): grantv (Wed, 09 Jan 2019 10:16:48 GMT): sstone1 (Wed, 09 Jan 2019 10:17:44 GMT): grantv (Wed, 09 Jan 2019 10:22:58 GMT): grantv (Wed, 09 Jan 2019 10:23:30 GMT): sstone1 (Wed, 09 Jan 2019 10:24:29 GMT): SJoshi7 (Wed, 09 Jan 2019 10:47:42 GMT): gnostikos (Wed, 09 Jan 2019 11:11:45 GMT): gnostikos (Wed, 09 Jan 2019 11:13:26 GMT): ShaikSharuk (Wed, 09 Jan 2019 11:21:34 GMT): millengustavo (Wed, 09 Jan 2019 11:34:37 GMT): millengustavo (Wed, 09 Jan 2019 11:39:24 GMT): davidkel (Wed, 09 Jan 2019 11:48:43 GMT): davidkel (Wed, 09 Jan 2019 11:51:01 GMT): davidkel (Wed, 09 Jan 2019 11:51:01 GMT): millengustavo (Wed, 09 Jan 2019 11:57:19 GMT): davidkel (Wed, 09 Jan 2019 12:01:14 GMT): millengustavo (Wed, 09 Jan 2019 12:05:52 GMT): rthatcher (Wed, 09 Jan 2019 12:12:21 GMT): davidkel (Wed, 09 Jan 2019 12:14:23 GMT): millengustavo (Wed, 09 Jan 2019 12:16:20 GMT): davidkel (Wed, 09 Jan 2019 12:27:13 GMT): millengustavo (Wed, 09 Jan 2019 12:29:47 GMT): danilojodas (Wed, 09 Jan 2019 17:25:40 GMT): mahoney1 (Wed, 09 Jan 2019 19:03:01 GMT): firewater (Wed, 09 Jan 2019 20:10:17 GMT): danilojodas (Thu, 10 Jan 2019 00:16:53 GMT): adityanalgework1 (Thu, 10 Jan 2019 01:28:09 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 06:10:04 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 06:12:45 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 06:13:00 GMT): harun (Thu, 10 Jan 2019 06:33:32 GMT): sushmitha (Thu, 10 Jan 2019 07:22:48 GMT): harun (Thu, 10 Jan 2019 08:16:27 GMT): davidkel (Thu, 10 Jan 2019 08:30:07 GMT): davidkel (Thu, 10 Jan 2019 08:30:07 GMT): harun (Thu, 10 Jan 2019 08:35:29 GMT): Daniel (Thu, 10 Jan 2019 08:44:12 GMT): mahoney1 (Thu, 10 Jan 2019 09:16:49 GMT): mahoney1 (Thu, 10 Jan 2019 09:16:49 GMT): mahoney1 (Thu, 10 Jan 2019 09:16:49 GMT): rthatcher (Thu, 10 Jan 2019 09:21:45 GMT): sushmitha (Thu, 10 Jan 2019 09:28:27 GMT): rthatcher (Thu, 10 Jan 2019 09:41:21 GMT): nagaraju123 (Thu, 10 Jan 2019 09:56:36 GMT): nagaraju123 (Thu, 10 Jan 2019 09:57:06 GMT): sureshtedla (Thu, 10 Jan 2019 09:58:15 GMT): sureshtedla (Thu, 10 Jan 2019 09:58:15 GMT): sureshtedla (Thu, 10 Jan 2019 09:58:15 GMT): nagaraju123 (Thu, 10 Jan 2019 09:58:48 GMT): sureshtedla (Thu, 10 Jan 2019 09:59:41 GMT): nagaraju123 (Thu, 10 Jan 2019 10:00:59 GMT): sureshtedla (Thu, 10 Jan 2019 10:01:45 GMT): rthatcher (Thu, 10 Jan 2019 10:02:22 GMT): nagaraju123 (Thu, 10 Jan 2019 10:04:49 GMT): nagaraju123 (Thu, 10 Jan 2019 10:05:13 GMT): sureshtedla (Thu, 10 Jan 2019 10:07:15 GMT): sureshtedla (Thu, 10 Jan 2019 10:08:35 GMT): sureshtedla (Thu, 10 Jan 2019 10:08:49 GMT): sureshtedla (Thu, 10 Jan 2019 10:09:15 GMT): mahoney1 (Thu, 10 Jan 2019 10:17:32 GMT): mahoney1 (Thu, 10 Jan 2019 10:17:32 GMT): mahoney1 (Thu, 10 Jan 2019 10:27:34 GMT): deelthor (Thu, 10 Jan 2019 10:44:15 GMT): davidkel (Thu, 10 Jan 2019 10:49:38 GMT): deelthor (Thu, 10 Jan 2019 10:50:13 GMT): millengustavo (Thu, 10 Jan 2019 11:00:36 GMT): sstone1 (Thu, 10 Jan 2019 11:06:49 GMT): DmitriPlakhov (Thu, 10 Jan 2019 12:01:21 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 12:12:38 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 12:12:45 GMT): mahoney1 (Thu, 10 Jan 2019 12:28:10 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 12:37:56 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:02:01 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:03:37 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:03:53 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:21:20 GMT): millengustavo (Thu, 10 Jan 2019 13:23:47 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:33:11 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:33:21 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:35:04 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:35:35 GMT): millengustavo (Thu, 10 Jan 2019 13:38:22 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:39:00 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:39:02 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:39:50 GMT): millengustavo (Thu, 10 Jan 2019 13:40:02 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:40:45 GMT): millengustavo (Thu, 10 Jan 2019 13:41:43 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:43:39 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:43:51 GMT): millengustavo (Thu, 10 Jan 2019 13:45:15 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 13:48:58 GMT): millengustavo (Thu, 10 Jan 2019 13:51:32 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 14:03:46 GMT): davidkel (Thu, 10 Jan 2019 14:07:53 GMT): sureshtedla (Thu, 10 Jan 2019 14:08:35 GMT): davidkel (Thu, 10 Jan 2019 14:12:30 GMT): davidkel (Thu, 10 Jan 2019 14:12:30 GMT): sureshtedla (Thu, 10 Jan 2019 14:14:11 GMT): davidkel (Thu, 10 Jan 2019 14:14:47 GMT): sureshtedla (Thu, 10 Jan 2019 14:17:41 GMT): sureshtedla (Thu, 10 Jan 2019 14:17:41 GMT): sureshtedla (Thu, 10 Jan 2019 14:18:29 GMT): davidkel (Thu, 10 Jan 2019 14:23:03 GMT): davidkel (Thu, 10 Jan 2019 14:23:03 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 14:24:19 GMT): davidkel (Thu, 10 Jan 2019 14:24:50 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 14:25:02 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 14:48:59 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 14:49:19 GMT): davidkel (Thu, 10 Jan 2019 14:54:01 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 14:55:02 GMT): davidkel (Thu, 10 Jan 2019 14:56:08 GMT): davidkel (Thu, 10 Jan 2019 14:56:08 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 15:01:47 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 15:20:18 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 15:20:33 GMT): davidkel (Thu, 10 Jan 2019 15:32:21 GMT): davidkel (Thu, 10 Jan 2019 15:32:21 GMT): davidkel (Thu, 10 Jan 2019 15:32:21 GMT): davidkel (Thu, 10 Jan 2019 15:32:21 GMT): davidkel (Thu, 10 Jan 2019 15:32:21 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 15:41:10 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 15:42:44 GMT): davidkel (Thu, 10 Jan 2019 15:44:55 GMT): mallikarjunasai995 (Thu, 10 Jan 2019 15:50:49 GMT): vanclief (Thu, 10 Jan 2019 16:30:32 GMT): vinken (Thu, 10 Jan 2019 20:06:40 GMT): nickgaski (Thu, 10 Jan 2019 20:34:55 GMT): akoita (Fri, 11 Jan 2019 03:28:15 GMT): mallikarjunasai995 (Fri, 11 Jan 2019 04:52:19 GMT): mallikarjunasai995 (Fri, 11 Jan 2019 04:52:34 GMT): SJoshi7 (Fri, 11 Jan 2019 05:27:37 GMT): mallikarjunasai995 (Fri, 11 Jan 2019 06:22:35 GMT): SJoshi7 (Fri, 11 Jan 2019 06:25:07 GMT): mallikarjunasai995 (Fri, 11 Jan 2019 06:34:11 GMT): SJoshi7 (Fri, 11 Jan 2019 06:34:12 GMT): SJoshi7 (Fri, 11 Jan 2019 06:34:46 GMT): mallikarjunasai995 (Fri, 11 Jan 2019 06:36:18 GMT): SJoshi7 (Fri, 11 Jan 2019 06:36:43 GMT): SJoshi7 (Fri, 11 Jan 2019 06:50:47 GMT): sathiyakaruppiah (Fri, 11 Jan 2019 07:32:24 GMT): deelthor (Fri, 11 Jan 2019 08:06:25 GMT): deelthor (Fri, 11 Jan 2019 08:07:58 GMT): bh4rtp (Fri, 11 Jan 2019 08:21:07 GMT): davidkel (Fri, 11 Jan 2019 08:34:52 GMT): davidkel (Fri, 11 Jan 2019 08:58:46 GMT): davidkel (Fri, 11 Jan 2019 09:00:46 GMT): AnujSaxena (Fri, 11 Jan 2019 09:01:23 GMT): mallikarjunasai995 (Fri, 11 Jan 2019 11:57:05 GMT): mallikarjunasai995 (Fri, 11 Jan 2019 11:57:10 GMT): mahoney1 (Fri, 11 Jan 2019 12:00:05 GMT): mahoney1 (Fri, 11 Jan 2019 12:00:05 GMT): mahoney1 (Fri, 11 Jan 2019 12:00:05 GMT): mallikarjunasai995 (Fri, 11 Jan 2019 12:10:02 GMT): vanclief (Fri, 11 Jan 2019 16:25:24 GMT): davidkel (Fri, 11 Jan 2019 16:26:40 GMT): davidkel (Fri, 11 Jan 2019 16:26:40 GMT): davidkel (Fri, 11 Jan 2019 16:26:40 GMT): davidkel (Fri, 11 Jan 2019 16:26:40 GMT): vanclief (Fri, 11 Jan 2019 16:48:15 GMT): Miru 1 (Sat, 12 Jan 2019 08:05:02 GMT): mallikarjunasai995 (Sat, 12 Jan 2019 10:44:34 GMT): mallikarjunasai995 (Sat, 12 Jan 2019 10:45:41 GMT): amendafernando (Mon, 14 Jan 2019 06:26:51 GMT): pravn1729 (Mon, 14 Jan 2019 07:50:59 GMT): amendafernando (Mon, 14 Jan 2019 11:18:33 GMT): iserikov (Mon, 14 Jan 2019 15:26:15 GMT): nimaafraz (Mon, 14 Jan 2019 16:05:43 GMT): nimaafraz (Mon, 14 Jan 2019 16:05:43 GMT): millengustavo (Mon, 14 Jan 2019 16:11:10 GMT): pravn1729 (Tue, 15 Jan 2019 06:57:34 GMT): Bentipe (Tue, 15 Jan 2019 07:08:08 GMT): livenicely (Tue, 15 Jan 2019 09:15:11 GMT): livenicely (Tue, 15 Jan 2019 09:15:16 GMT): livenicely (Tue, 15 Jan 2019 09:15:29 GMT): Levilk (Tue, 15 Jan 2019 15:53:41 GMT): Levilk (Tue, 15 Jan 2019 15:53:41 GMT): Levilk (Tue, 15 Jan 2019 15:53:52 GMT): rthatcher (Tue, 15 Jan 2019 17:34:16 GMT): himi64 (Tue, 15 Jan 2019 21:18:13 GMT): himi64 (Tue, 15 Jan 2019 21:18:16 GMT): himi64 (Tue, 15 Jan 2019 21:43:34 GMT): flyaked (Tue, 15 Jan 2019 22:48:06 GMT): flyaked (Tue, 15 Jan 2019 22:48:13 GMT): ronaldlong46 (Wed, 16 Jan 2019 03:15:02 GMT): SJoshi7 (Wed, 16 Jan 2019 06:09:44 GMT): linyuadam (Wed, 16 Jan 2019 06:29:57 GMT): deenario (Wed, 16 Jan 2019 07:24:44 GMT): sureshtedla (Wed, 16 Jan 2019 07:35:42 GMT): sureshtedla (Wed, 16 Jan 2019 07:46:17 GMT): Levilk (Wed, 16 Jan 2019 08:01:04 GMT): mallikarjunasai995 (Wed, 16 Jan 2019 10:28:42 GMT): sureshtedla (Wed, 16 Jan 2019 10:37:45 GMT): sureshtedla (Wed, 16 Jan 2019 10:37:45 GMT): sureshtedla (Wed, 16 Jan 2019 10:38:42 GMT): sureshtedla (Wed, 16 Jan 2019 10:38:42 GMT): sureshtedla (Wed, 16 Jan 2019 10:38:42 GMT): mallikarjunasai995 (Wed, 16 Jan 2019 10:44:37 GMT): mallikarjunasai995 (Wed, 16 Jan 2019 10:45:13 GMT): sureshtedla (Wed, 16 Jan 2019 10:46:15 GMT): mallikarjunasai995 (Wed, 16 Jan 2019 10:51:15 GMT): sureshtedla (Wed, 16 Jan 2019 11:11:09 GMT): saeedi (Wed, 16 Jan 2019 12:14:10 GMT): saeedi (Wed, 16 Jan 2019 12:15:27 GMT): saeedi (Wed, 16 Jan 2019 12:15:27 GMT): saeedi (Wed, 16 Jan 2019 12:17:26 GMT): saeedi (Wed, 16 Jan 2019 13:00:52 GMT): deelthor (Wed, 16 Jan 2019 13:02:26 GMT): saeedi (Wed, 16 Jan 2019 13:05:15 GMT): saeedi (Wed, 16 Jan 2019 13:05:15 GMT): saeedi (Wed, 16 Jan 2019 13:05:15 GMT): flyaked (Wed, 16 Jan 2019 14:18:19 GMT): ronaldlong46 (Wed, 16 Jan 2019 21:46:06 GMT): Smit95shah (Thu, 17 Jan 2019 05:39:47 GMT): Smit95shah (Thu, 17 Jan 2019 05:39:47 GMT): mallikarjunasai995 (Thu, 17 Jan 2019 05:43:28 GMT): mallikarjunasai995 (Thu, 17 Jan 2019 05:45:06 GMT): mallikarjunasai995 (Thu, 17 Jan 2019 05:45:40 GMT): smfaizalkhan (Thu, 17 Jan 2019 06:09:42 GMT): smfaizalkhan (Thu, 17 Jan 2019 06:09:56 GMT): deelthor (Thu, 17 Jan 2019 08:15:54 GMT): pravn1729 (Thu, 17 Jan 2019 09:26:48 GMT): mallikarjunasai995 (Thu, 17 Jan 2019 09:34:07 GMT): mallikarjunasai995 (Thu, 17 Jan 2019 09:35:59 GMT): pravn1729 (Thu, 17 Jan 2019 09:41:13 GMT): mallikarjunasai995 (Thu, 17 Jan 2019 09:41:55 GMT): benjamin.verhaegen (Thu, 17 Jan 2019 09:47:53 GMT): saeedi (Thu, 17 Jan 2019 09:52:49 GMT): saeedi (Thu, 17 Jan 2019 09:54:48 GMT): deelthor (Thu, 17 Jan 2019 10:00:25 GMT): deelthor (Thu, 17 Jan 2019 10:00:25 GMT): deelthor (Thu, 17 Jan 2019 10:00:25 GMT): saeedi (Thu, 17 Jan 2019 10:10:52 GMT): saeedi (Thu, 17 Jan 2019 10:54:19 GMT): rrishmawi (Thu, 17 Jan 2019 13:00:22 GMT): benjamin.verhaegen (Thu, 17 Jan 2019 14:57:30 GMT): UnaiUrkiaga (Thu, 17 Jan 2019 16:04:14 GMT): UnaiUrkiaga (Thu, 17 Jan 2019 16:05:02 GMT): vukp (Thu, 17 Jan 2019 19:38:47 GMT): vukp (Thu, 17 Jan 2019 19:41:41 GMT): hy_com_user (Thu, 17 Jan 2019 21:52:37 GMT): KokoKoko (Fri, 18 Jan 2019 03:21:37 GMT): arvindkumar6568 (Fri, 18 Jan 2019 06:09:47 GMT): arvindkumar6568 (Fri, 18 Jan 2019 06:11:02 GMT): Kevin-Kinyua (Fri, 18 Jan 2019 06:45:57 GMT): Kevin-Kinyua (Fri, 18 Jan 2019 06:50:20 GMT): UnaiUrkiaga (Fri, 18 Jan 2019 08:08:12 GMT): ShaikSharuk (Fri, 18 Jan 2019 08:37:50 GMT): amendafernando (Fri, 18 Jan 2019 08:46:31 GMT): amendafernando (Fri, 18 Jan 2019 08:46:31 GMT): ShaikSharuk (Fri, 18 Jan 2019 09:20:55 GMT): UnaiUrkiaga (Fri, 18 Jan 2019 11:02:49 GMT): sureshtedla (Fri, 18 Jan 2019 11:07:42 GMT): sureshtedla (Fri, 18 Jan 2019 11:07:42 GMT): sureshtedla (Fri, 18 Jan 2019 11:07:42 GMT): SJoshi7 (Fri, 18 Jan 2019 11:43:20 GMT): SJoshi7 (Fri, 18 Jan 2019 11:43:20 GMT): SJoshi7 (Fri, 18 Jan 2019 11:43:20 GMT): SJoshi7 (Fri, 18 Jan 2019 11:43:20 GMT): Kevin-Kinyua (Fri, 18 Jan 2019 11:45:11 GMT): rrishmawi (Fri, 18 Jan 2019 13:30:20 GMT): rrishmawi (Fri, 18 Jan 2019 13:30:42 GMT): rrishmawi (Fri, 18 Jan 2019 13:44:50 GMT): JulianBall (Fri, 18 Jan 2019 20:37:34 GMT): JulianBall (Fri, 18 Jan 2019 20:45:40 GMT): mallikarjunasai995 (Sat, 19 Jan 2019 13:13:19 GMT): JulianBall (Sat, 19 Jan 2019 13:15:04 GMT): JulianBall (Sat, 19 Jan 2019 13:15:27 GMT): mallikarjunasai995 (Sat, 19 Jan 2019 13:16:15 GMT): mallikarjunasai995 (Sat, 19 Jan 2019 14:12:52 GMT): smfaizalkhan (Sat, 19 Jan 2019 14:16:19 GMT): mallikarjunasai995 (Sat, 19 Jan 2019 14:34:55 GMT): mallikarjunasai995 (Sat, 19 Jan 2019 14:35:46 GMT): smfaizalkhan (Sat, 19 Jan 2019 14:41:54 GMT): mallikarjunasai995 (Sat, 19 Jan 2019 14:43:35 GMT): smfaizalkhan (Sat, 19 Jan 2019 14:55:25 GMT): mallikarjunasai995 (Sat, 19 Jan 2019 15:26:00 GMT): smfaizalkhan (Sat, 19 Jan 2019 15:43:37 GMT): osobh (Mon, 21 Jan 2019 00:53:48 GMT): saeedi (Mon, 21 Jan 2019 05:50:18 GMT): saeedi (Mon, 21 Jan 2019 05:50:24 GMT): saeedi (Mon, 21 Jan 2019 05:51:17 GMT): SJoshi7 (Mon, 21 Jan 2019 06:06:55 GMT): ShaikSharuk (Mon, 21 Jan 2019 07:58:52 GMT): sureshtedla (Mon, 21 Jan 2019 09:35:06 GMT): Techie (Mon, 21 Jan 2019 10:23:35 GMT): Techie (Mon, 21 Jan 2019 10:24:12 GMT): PhilipAndrew (Mon, 21 Jan 2019 10:51:52 GMT): ajbill (Mon, 21 Jan 2019 13:39:56 GMT): ronaldlong46 (Mon, 21 Jan 2019 22:39:23 GMT): rodolfofranco (Tue, 22 Jan 2019 00:55:36 GMT): rodolfofranco (Tue, 22 Jan 2019 00:56:25 GMT): mefy-pushpendu (Tue, 22 Jan 2019 05:44:52 GMT): harshalkumar.rane (Tue, 22 Jan 2019 06:24:21 GMT): harshalkumar.rane (Tue, 22 Jan 2019 06:24:55 GMT): harshalkumar.rane (Tue, 22 Jan 2019 06:26:15 GMT): BabuPallam (Tue, 22 Jan 2019 06:36:03 GMT): Vasista-22 (Tue, 22 Jan 2019 08:11:01 GMT): Vasista-22 (Tue, 22 Jan 2019 08:15:45 GMT): Vasista-22 (Tue, 22 Jan 2019 08:16:18 GMT): Vasista-22 (Tue, 22 Jan 2019 08:16:41 GMT): Vasista-22 (Tue, 22 Jan 2019 08:22:21 GMT): sureshtedla (Tue, 22 Jan 2019 09:06:19 GMT): Basil-3 (Tue, 22 Jan 2019 09:07:47 GMT): Basil-3 (Tue, 22 Jan 2019 09:08:41 GMT): sureshtedla (Tue, 22 Jan 2019 09:09:44 GMT): sureshtedla (Tue, 22 Jan 2019 09:11:37 GMT): Basil-3 (Tue, 22 Jan 2019 09:13:41 GMT): sureshtedla (Tue, 22 Jan 2019 09:15:17 GMT): Basil-3 (Tue, 22 Jan 2019 09:27:31 GMT): sureshtedla (Tue, 22 Jan 2019 09:28:42 GMT): brunillopu.75 (Tue, 22 Jan 2019 09:56:23 GMT): brunillopu.75 (Tue, 22 Jan 2019 09:56:37 GMT): brunillopu.75 (Tue, 22 Jan 2019 09:59:24 GMT): Vasista-22 (Tue, 22 Jan 2019 10:00:10 GMT): Vasista-22 (Tue, 22 Jan 2019 10:00:41 GMT): gnaman (Tue, 22 Jan 2019 10:07:00 GMT): SJoshi7 (Tue, 22 Jan 2019 10:42:28 GMT): SahithiDyavarashetti (Tue, 22 Jan 2019 11:14:38 GMT): SahithiDyavarashetti (Tue, 22 Jan 2019 11:15:41 GMT): Ercute208 (Tue, 22 Jan 2019 11:55:44 GMT): Ercute208 (Tue, 22 Jan 2019 11:56:53 GMT): Ercute208 (Tue, 22 Jan 2019 11:57:07 GMT): Ercute208 (Tue, 22 Jan 2019 11:57:30 GMT): sureshtedla (Tue, 22 Jan 2019 12:01:39 GMT): sureshtedla (Tue, 22 Jan 2019 12:04:01 GMT): Ercute208 (Tue, 22 Jan 2019 12:14:01 GMT): Ercute208 (Tue, 22 Jan 2019 12:17:28 GMT): Ercute208 (Tue, 22 Jan 2019 12:17:38 GMT): sureshtedla (Tue, 22 Jan 2019 12:19:05 GMT): sureshtedla (Tue, 22 Jan 2019 12:19:26 GMT): sureshtedla (Tue, 22 Jan 2019 12:41:07 GMT): sureshtedla (Tue, 22 Jan 2019 12:41:09 GMT): sureshtedla (Tue, 22 Jan 2019 12:41:18 GMT): Ercute208 (Tue, 22 Jan 2019 12:46:14 GMT): pumicerD (Tue, 22 Jan 2019 13:58:02 GMT): amirfatemi (Tue, 22 Jan 2019 14:03:37 GMT): amirfatemi (Tue, 22 Jan 2019 14:10:23 GMT): amirfatemi (Tue, 22 Jan 2019 14:32:22 GMT): benjamin.verhaegen (Tue, 22 Jan 2019 14:35:50 GMT): benjamin.verhaegen (Tue, 22 Jan 2019 14:35:52 GMT): benjamin.verhaegen (Tue, 22 Jan 2019 14:36:02 GMT): benjamin.verhaegen (Tue, 22 Jan 2019 14:36:19 GMT): benjamin.verhaegen (Tue, 22 Jan 2019 14:36:30 GMT): Loofus (Tue, 22 Jan 2019 14:38:42 GMT): Vasista-22 (Tue, 22 Jan 2019 14:54:57 GMT): Vasista-22 (Tue, 22 Jan 2019 14:55:10 GMT): rodolfofranco (Tue, 22 Jan 2019 15:01:51 GMT): maximang (Tue, 22 Jan 2019 15:19:39 GMT): maximang (Tue, 22 Jan 2019 15:20:57 GMT): rodolfofranco (Tue, 22 Jan 2019 15:25:29 GMT): maximang (Tue, 22 Jan 2019 15:28:02 GMT): maximang (Tue, 22 Jan 2019 15:28:38 GMT): nmarco (Tue, 22 Jan 2019 15:56:06 GMT): nmarco (Tue, 22 Jan 2019 15:57:12 GMT): maximang (Tue, 22 Jan 2019 16:04:57 GMT): Vasista-22 (Tue, 22 Jan 2019 16:25:00 GMT): alokkv (Tue, 22 Jan 2019 17:05:37 GMT): rodolfofranco (Tue, 22 Jan 2019 19:47:56 GMT): trturino (Tue, 22 Jan 2019 20:24:40 GMT): silliman (Tue, 22 Jan 2019 20:51:36 GMT): rodolfofranco (Tue, 22 Jan 2019 20:57:53 GMT): silliman (Tue, 22 Jan 2019 21:15:58 GMT): ajbill (Tue, 22 Jan 2019 22:01:47 GMT): incarose (Wed, 23 Jan 2019 00:18:42 GMT): sepld (Wed, 23 Jan 2019 01:52:03 GMT): SJoshi7 (Wed, 23 Jan 2019 06:14:55 GMT): Ajayveer (Wed, 23 Jan 2019 06:23:16 GMT): Ajayveer (Wed, 23 Jan 2019 06:25:11 GMT): Ajayveer (Wed, 23 Jan 2019 06:25:46 GMT): SJoshi7 (Wed, 23 Jan 2019 06:28:52 GMT): Ajayveer (Wed, 23 Jan 2019 06:39:51 GMT): Ajayveer (Wed, 23 Jan 2019 07:11:48 GMT): harun (Wed, 23 Jan 2019 08:25:24 GMT): ShaikSharuk (Wed, 23 Jan 2019 12:31:45 GMT): amirfatemi (Wed, 23 Jan 2019 13:38:11 GMT): amirfatemi (Wed, 23 Jan 2019 13:38:11 GMT): Vasista-22 (Wed, 23 Jan 2019 14:52:20 GMT): amirfatemi (Wed, 23 Jan 2019 16:38:02 GMT): amirfatemi (Wed, 23 Jan 2019 16:38:02 GMT): pbrudny (Wed, 23 Jan 2019 17:10:22 GMT): yinkokpheng (Thu, 24 Jan 2019 08:36:03 GMT): pravn1729 (Thu, 24 Jan 2019 09:07:33 GMT): Techie (Thu, 24 Jan 2019 10:34:32 GMT): wangkaixuan (Thu, 24 Jan 2019 11:03:32 GMT): rrishmawi (Thu, 24 Jan 2019 12:19:42 GMT): pikvik (Thu, 24 Jan 2019 14:15:23 GMT): pikvik (Thu, 24 Jan 2019 14:16:48 GMT): brunillopu.75 (Thu, 24 Jan 2019 14:22:31 GMT): brunillopu.75 (Thu, 24 Jan 2019 14:23:24 GMT): pikvik (Thu, 24 Jan 2019 14:32:05 GMT): brunillopu.75 (Thu, 24 Jan 2019 14:34:25 GMT): brunillopu.75 (Thu, 24 Jan 2019 15:38:25 GMT): ajbill (Thu, 24 Jan 2019 18:42:00 GMT): Daka (Thu, 24 Jan 2019 18:51:18 GMT): Moolkothari (Thu, 24 Jan 2019 18:53:00 GMT): Moolkothari (Thu, 24 Jan 2019 18:53:46 GMT): ajbill (Thu, 24 Jan 2019 18:55:38 GMT): ajbill (Thu, 24 Jan 2019 18:56:27 GMT): ajbill (Thu, 24 Jan 2019 18:56:52 GMT): bajwa (Thu, 24 Jan 2019 18:57:29 GMT): ajbill (Thu, 24 Jan 2019 19:09:56 GMT): ronaldlong46 (Thu, 24 Jan 2019 20:22:29 GMT): l3xx (Thu, 24 Jan 2019 21:47:07 GMT): tk6sudersen (Fri, 25 Jan 2019 06:19:52 GMT): Ercute208 (Fri, 25 Jan 2019 06:26:56 GMT): ronaldlong46 (Fri, 25 Jan 2019 06:31:31 GMT): ronaldlong46 (Fri, 25 Jan 2019 06:32:27 GMT): ronaldlong46 (Fri, 25 Jan 2019 06:32:27 GMT): ronaldlong46 (Fri, 25 Jan 2019 06:33:24 GMT): oceanho (Fri, 25 Jan 2019 07:00:16 GMT): Ercute208 (Fri, 25 Jan 2019 07:29:15 GMT): Ercute208 (Fri, 25 Jan 2019 07:29:20 GMT): Sarath_Kumar (Fri, 25 Jan 2019 07:41:28 GMT): Sarath_Kumar (Fri, 25 Jan 2019 07:41:28 GMT): saeedi (Fri, 25 Jan 2019 07:51:02 GMT): saeedi (Fri, 25 Jan 2019 07:51:02 GMT): saeedi (Fri, 25 Jan 2019 07:51:02 GMT): hauhm (Fri, 25 Jan 2019 08:39:22 GMT): hauhm (Fri, 25 Jan 2019 08:39:22 GMT): rrishmawi (Fri, 25 Jan 2019 08:39:49 GMT): Ercute208 (Fri, 25 Jan 2019 09:38:25 GMT): Ercute208 (Fri, 25 Jan 2019 09:38:28 GMT): Ercute208 (Fri, 25 Jan 2019 09:38:44 GMT): irkoch (Fri, 25 Jan 2019 11:28:33 GMT): irkoch (Fri, 25 Jan 2019 11:28:33 GMT): irkoch (Fri, 25 Jan 2019 11:28:33 GMT): irkoch (Fri, 25 Jan 2019 11:28:33 GMT): irkoch (Fri, 25 Jan 2019 11:28:33 GMT): irkoch (Fri, 25 Jan 2019 11:28:33 GMT): irkoch (Fri, 25 Jan 2019 11:33:54 GMT): irkoch (Fri, 25 Jan 2019 11:33:54 GMT): irkoch (Fri, 25 Jan 2019 11:36:49 GMT): irkoch (Fri, 25 Jan 2019 11:36:49 GMT): irkoch (Fri, 25 Jan 2019 13:44:24 GMT): irkoch (Fri, 25 Jan 2019 13:44:24 GMT): irkoch (Fri, 25 Jan 2019 13:44:24 GMT): irkoch (Fri, 25 Jan 2019 13:44:24 GMT): ScottMorris (Fri, 25 Jan 2019 21:43:44 GMT): ScottMorris (Fri, 25 Jan 2019 21:48:52 GMT): sanjay.batra (Sat, 26 Jan 2019 05:30:11 GMT): sanjay.batra (Sat, 26 Jan 2019 05:30:16 GMT): sanjay.batra (Sat, 26 Jan 2019 05:34:22 GMT): sanjay.batra (Sat, 26 Jan 2019 05:34:25 GMT): sanjay.batra (Sat, 26 Jan 2019 05:34:25 GMT): sanjay.batra (Sat, 26 Jan 2019 05:35:09 GMT): sanjay.batra (Sat, 26 Jan 2019 05:35:40 GMT): sanjay.batra (Sat, 26 Jan 2019 05:45:32 GMT): PhilipAndrew (Sat, 26 Jan 2019 10:42:01 GMT): PhilipAndrew (Sat, 26 Jan 2019 10:43:23 GMT): Moolkothari (Sat, 26 Jan 2019 12:21:56 GMT): saeedi (Sun, 27 Jan 2019 10:48:42 GMT): jofloren (Sun, 27 Jan 2019 15:21:07 GMT): lip-inagora (Mon, 28 Jan 2019 00:23:16 GMT): Sarath_Kumar (Mon, 28 Jan 2019 05:57:20 GMT): Sarath_Kumar (Mon, 28 Jan 2019 05:57:20 GMT): jayantc20 (Mon, 28 Jan 2019 10:27:32 GMT): Jehutty (Mon, 28 Jan 2019 10:41:54 GMT): Jehutty (Mon, 28 Jan 2019 10:41:58 GMT): jayantc20 (Mon, 28 Jan 2019 11:02:34 GMT): jayantc20 (Mon, 28 Jan 2019 11:15:22 GMT): jayantc20 (Mon, 28 Jan 2019 11:15:22 GMT): jayantc20 (Mon, 28 Jan 2019 11:15:22 GMT): jayantc20 (Mon, 28 Jan 2019 11:15:22 GMT): jayantc20 (Mon, 28 Jan 2019 11:15:22 GMT): SahithiDyavarashetti (Mon, 28 Jan 2019 11:15:37 GMT): kwakwa (Mon, 28 Jan 2019 11:51:05 GMT): Sarath_Kumar (Mon, 28 Jan 2019 12:13:21 GMT): Sarath_Kumar (Mon, 28 Jan 2019 12:13:21 GMT): Jehutty (Mon, 28 Jan 2019 12:28:16 GMT): Jehutty (Mon, 28 Jan 2019 12:28:16 GMT): benjamin.verhaegen (Mon, 28 Jan 2019 12:53:46 GMT): Jehutty (Mon, 28 Jan 2019 13:00:45 GMT): Jehutty (Mon, 28 Jan 2019 13:01:10 GMT): Jehutty (Mon, 28 Jan 2019 13:01:15 GMT): benjamin.verhaegen (Mon, 28 Jan 2019 13:07:12 GMT): edisinovcic (Mon, 28 Jan 2019 13:17:01 GMT): rrishmawi (Mon, 28 Jan 2019 13:17:28 GMT): rrishmawi (Mon, 28 Jan 2019 14:58:04 GMT): thangas_bc (Mon, 28 Jan 2019 16:34:22 GMT): thangas_bc (Mon, 28 Jan 2019 16:35:06 GMT): thangas_bc (Mon, 28 Jan 2019 16:36:04 GMT): Phil-D (Mon, 28 Jan 2019 17:16:00 GMT): Phil-D (Mon, 28 Jan 2019 17:19:47 GMT): sr.Jocker (Mon, 28 Jan 2019 21:03:41 GMT): stanheister (Tue, 29 Jan 2019 01:35:26 GMT): stanheister (Tue, 29 Jan 2019 01:35:34 GMT): Woo-sikJung (Tue, 29 Jan 2019 05:42:44 GMT): Woo-sikJung (Tue, 29 Jan 2019 05:43:12 GMT): serkanerkan (Tue, 29 Jan 2019 06:28:04 GMT): AzharBlockChain (Tue, 29 Jan 2019 08:25:13 GMT): SahithiDyavarashetti (Tue, 29 Jan 2019 08:59:11 GMT): silliman (Tue, 29 Jan 2019 09:52:11 GMT): kartikeyasharma (Tue, 29 Jan 2019 11:02:37 GMT): edisinovcic (Tue, 29 Jan 2019 11:20:48 GMT): lehors (Tue, 29 Jan 2019 13:01:45 GMT): lehors (Tue, 29 Jan 2019 13:01:45 GMT): ShrmaAmrit (Tue, 29 Jan 2019 13:23:19 GMT): ShrmaAmrit (Tue, 29 Jan 2019 13:29:23 GMT): serkanerkan (Tue, 29 Jan 2019 14:08:51 GMT): Nawfal 1 (Tue, 29 Jan 2019 15:07:43 GMT): Nawfal 1 (Tue, 29 Jan 2019 15:09:57 GMT): arash_sr7 (Tue, 29 Jan 2019 15:26:51 GMT): ajbill (Tue, 29 Jan 2019 20:50:38 GMT): nordnes (Tue, 29 Jan 2019 21:06:44 GMT): nordnes (Tue, 29 Jan 2019 21:06:52 GMT): nordnes (Tue, 29 Jan 2019 21:07:09 GMT): abhinandanmadaan (Wed, 30 Jan 2019 05:55:26 GMT): PhilipAndrew (Wed, 30 Jan 2019 07:56:54 GMT): PhilipAndrew (Wed, 30 Jan 2019 08:02:15 GMT): benjamin.verhaegen (Wed, 30 Jan 2019 08:35:12 GMT): PhilipAndrew (Wed, 30 Jan 2019 08:40:00 GMT): agile01 (Wed, 30 Jan 2019 09:04:28 GMT): agile01 (Wed, 30 Jan 2019 09:04:28 GMT): agile01 (Wed, 30 Jan 2019 09:04:28 GMT): agile01 (Wed, 30 Jan 2019 09:05:41 GMT): agile01 (Wed, 30 Jan 2019 09:05:42 GMT): agile01 (Wed, 30 Jan 2019 09:06:13 GMT): agile01 (Wed, 30 Jan 2019 09:06:13 GMT): agile01 (Wed, 30 Jan 2019 09:06:23 GMT): agile01 (Wed, 30 Jan 2019 09:06:40 GMT): agile01 (Wed, 30 Jan 2019 09:06:43 GMT): agile01 (Wed, 30 Jan 2019 09:06:59 GMT): agile01 (Wed, 30 Jan 2019 09:07:14 GMT): SJoshi7 (Wed, 30 Jan 2019 09:52:52 GMT): AlphaAsteroid (Wed, 30 Jan 2019 09:56:49 GMT): AlphaAsteroid (Wed, 30 Jan 2019 09:57:35 GMT): AlphaAsteroid (Wed, 30 Jan 2019 09:58:19 GMT): AlphaAsteroid (Wed, 30 Jan 2019 09:59:17 GMT): agile01 (Wed, 30 Jan 2019 13:42:23 GMT): agile01 (Wed, 30 Jan 2019 14:04:28 GMT): benjamin.verhaegen (Wed, 30 Jan 2019 14:39:02 GMT): sureshtedla (Wed, 30 Jan 2019 16:14:24 GMT): sureshtedla (Wed, 30 Jan 2019 16:17:29 GMT): bdjidi (Wed, 30 Jan 2019 20:21:05 GMT): CesarGonzalez (Wed, 30 Jan 2019 21:55:37 GMT): CesarGonzalez (Wed, 30 Jan 2019 21:57:39 GMT): jxddmoto (Thu, 31 Jan 2019 01:32:25 GMT): duckthatquantum (Thu, 31 Jan 2019 01:34:15 GMT): jxddmoto (Thu, 31 Jan 2019 01:37:56 GMT): Techie (Thu, 31 Jan 2019 06:03:06 GMT): SahithiDyavarashetti (Thu, 31 Jan 2019 08:22:43 GMT): jxddmoto (Thu, 31 Jan 2019 08:26:44 GMT): SahithiDyavarashetti (Thu, 31 Jan 2019 08:35:37 GMT): SahithiDyavarashetti (Thu, 31 Jan 2019 08:35:55 GMT): SahithiDyavarashetti (Thu, 31 Jan 2019 08:36:01 GMT): jxddmoto (Thu, 31 Jan 2019 08:41:24 GMT): jxddmoto (Thu, 31 Jan 2019 08:42:04 GMT): SahithiDyavarashetti (Thu, 31 Jan 2019 08:45:00 GMT): jxddmoto (Thu, 31 Jan 2019 08:45:34 GMT): SahithiDyavarashetti (Thu, 31 Jan 2019 08:49:25 GMT): jxddmoto (Thu, 31 Jan 2019 08:49:50 GMT): jxddmoto (Thu, 31 Jan 2019 08:51:06 GMT): SahithiDyavarashetti (Thu, 31 Jan 2019 08:52:52 GMT): SahithiDyavarashetti (Thu, 31 Jan 2019 08:53:00 GMT): jxddmoto (Thu, 31 Jan 2019 08:54:57 GMT): jxddmoto (Thu, 31 Jan 2019 08:55:14 GMT): jxddmoto (Thu, 31 Jan 2019 08:55:40 GMT): jxddmoto (Thu, 31 Jan 2019 08:55:50 GMT): jxddmoto (Thu, 31 Jan 2019 08:56:25 GMT): SahithiDyavarashetti (Thu, 31 Jan 2019 09:10:09 GMT): AkhilKura (Thu, 31 Jan 2019 09:29:04 GMT): pavanvora (Thu, 31 Jan 2019 10:05:34 GMT): tarun32 (Thu, 31 Jan 2019 10:37:22 GMT): tarun32 (Thu, 31 Jan 2019 10:37:52 GMT): avkkiran (Thu, 31 Jan 2019 10:40:03 GMT): shaa4aa (Thu, 31 Jan 2019 12:30:54 GMT): JeffGutierrez (Thu, 31 Jan 2019 13:33:40 GMT): FilippoD (Thu, 31 Jan 2019 15:33:22 GMT): FilippoD (Thu, 31 Jan 2019 15:33:50 GMT): waleed (Thu, 31 Jan 2019 16:03:25 GMT): waleed (Thu, 31 Jan 2019 16:03:25 GMT): CesarGonzalez (Thu, 31 Jan 2019 20:14:11 GMT): CesarGonzalez (Thu, 31 Jan 2019 20:19:50 GMT): CesarGonzalez (Thu, 31 Jan 2019 20:19:50 GMT): CesarGonzalez (Thu, 31 Jan 2019 20:20:48 GMT): JeffGutierrez (Fri, 01 Feb 2019 06:34:19 GMT): alokkv (Fri, 01 Feb 2019 08:00:09 GMT): alokkv (Fri, 01 Feb 2019 08:00:09 GMT): alokkv (Fri, 01 Feb 2019 08:00:09 GMT): AkhilKura (Fri, 01 Feb 2019 08:34:10 GMT): benjamin.verhaegen (Fri, 01 Feb 2019 08:51:26 GMT): FilippoD (Fri, 01 Feb 2019 10:07:50 GMT): FilippoD (Fri, 01 Feb 2019 10:07:50 GMT): FilippoD (Fri, 01 Feb 2019 10:07:50 GMT): JP (Fri, 01 Feb 2019 10:46:40 GMT): alokkv (Fri, 01 Feb 2019 10:47:55 GMT): alokkv (Fri, 01 Feb 2019 10:47:55 GMT): benjamin.verhaegen (Fri, 01 Feb 2019 11:46:05 GMT): benjamin.verhaegen (Fri, 01 Feb 2019 11:46:14 GMT): saeedi (Fri, 01 Feb 2019 12:31:07 GMT): saeedi (Fri, 01 Feb 2019 12:31:44 GMT): saeedi (Fri, 01 Feb 2019 12:33:30 GMT): saeedi (Fri, 01 Feb 2019 12:34:07 GMT): JP (Fri, 01 Feb 2019 12:48:14 GMT): benjamin.verhaegen (Fri, 01 Feb 2019 14:50:49 GMT): tylerwince (Fri, 01 Feb 2019 15:04:29 GMT): FilippoD (Fri, 01 Feb 2019 17:02:24 GMT): ftd3 (Fri, 01 Feb 2019 19:23:25 GMT): FilippoD (Sat, 02 Feb 2019 10:31:39 GMT): silliman (Sat, 02 Feb 2019 15:19:49 GMT): FilippoD (Sat, 02 Feb 2019 15:41:34 GMT): kiryteo (Sun, 03 Feb 2019 04:40:58 GMT): Daka 1 (Sun, 03 Feb 2019 16:41:33 GMT): ConnorChristie (Mon, 04 Feb 2019 02:59:50 GMT): ConnorChristie (Mon, 04 Feb 2019 03:01:01 GMT): ConnorChristie (Mon, 04 Feb 2019 03:01:01 GMT): ConnorChristie (Mon, 04 Feb 2019 03:01:01 GMT): ConnorChristie (Mon, 04 Feb 2019 03:01:01 GMT): JP (Mon, 04 Feb 2019 04:20:48 GMT): JP (Mon, 04 Feb 2019 04:20:48 GMT): saeedi (Mon, 04 Feb 2019 05:39:22 GMT): saeedi (Mon, 04 Feb 2019 05:44:23 GMT): saeedi (Mon, 04 Feb 2019 05:44:23 GMT): saeedi (Mon, 04 Feb 2019 05:44:23 GMT): saeedi (Mon, 04 Feb 2019 05:44:23 GMT): saeedi (Mon, 04 Feb 2019 05:44:23 GMT): saeedi (Mon, 04 Feb 2019 05:44:23 GMT): saeedi (Mon, 04 Feb 2019 05:44:23 GMT): prabu3192 (Mon, 04 Feb 2019 06:05:43 GMT): ShaikSharuk (Mon, 04 Feb 2019 06:30:37 GMT): klin 11 (Mon, 04 Feb 2019 06:37:12 GMT): SoorajNarayanan (Mon, 04 Feb 2019 07:53:57 GMT): SoorajNarayanan (Mon, 04 Feb 2019 07:54:01 GMT): SoorajNarayanan (Mon, 04 Feb 2019 07:54:52 GMT): BrentTudas (Mon, 04 Feb 2019 09:27:42 GMT): BrentTudas (Mon, 04 Feb 2019 09:31:36 GMT): BrentTudas (Mon, 04 Feb 2019 09:31:36 GMT): BrentTudas (Mon, 04 Feb 2019 09:31:36 GMT): alokkv (Mon, 04 Feb 2019 11:31:14 GMT): ezplora (Mon, 04 Feb 2019 14:46:50 GMT): ezplora (Mon, 04 Feb 2019 14:48:24 GMT): johnd_ed (Mon, 04 Feb 2019 19:04:35 GMT): johnd_ed (Mon, 04 Feb 2019 19:12:17 GMT): ronaldlong46 (Mon, 04 Feb 2019 21:54:40 GMT): DMPROBTC (Tue, 05 Feb 2019 08:45:44 GMT): rrishmawi (Tue, 05 Feb 2019 09:10:21 GMT): rrishmawi (Tue, 05 Feb 2019 09:10:43 GMT): rrishmawi (Tue, 05 Feb 2019 09:13:53 GMT): irkoch (Tue, 05 Feb 2019 09:23:21 GMT): amendafernando (Tue, 05 Feb 2019 09:32:40 GMT): rrishmawi (Tue, 05 Feb 2019 10:12:51 GMT): rrishmawi (Tue, 05 Feb 2019 10:14:44 GMT): rrishmawi (Tue, 05 Feb 2019 10:16:15 GMT): amendafernando (Tue, 05 Feb 2019 10:18:12 GMT): irkoch (Tue, 05 Feb 2019 10:33:41 GMT): irkoch (Tue, 05 Feb 2019 10:33:41 GMT): tk6sudersen (Tue, 05 Feb 2019 10:47:02 GMT): tk6sudersen (Tue, 05 Feb 2019 10:47:48 GMT): tk6sudersen (Tue, 05 Feb 2019 10:47:54 GMT): tk6sudersen (Tue, 05 Feb 2019 10:48:01 GMT): rrishmawi (Tue, 05 Feb 2019 10:59:48 GMT): Sarath_Kumar (Tue, 05 Feb 2019 12:25:04 GMT): Sarath_Kumar (Tue, 05 Feb 2019 12:25:04 GMT): Ssandeep (Tue, 05 Feb 2019 12:57:12 GMT): Ssandeep (Tue, 05 Feb 2019 12:57:46 GMT): irkoch (Tue, 05 Feb 2019 13:23:17 GMT): irkoch (Tue, 05 Feb 2019 13:23:17 GMT): irkoch (Tue, 05 Feb 2019 13:23:17 GMT): UnaiUrkiaga (Tue, 05 Feb 2019 15:14:45 GMT): irkoch (Tue, 05 Feb 2019 15:18:54 GMT): irkoch (Tue, 05 Feb 2019 15:18:54 GMT): irkoch (Tue, 05 Feb 2019 15:18:54 GMT): silliman (Tue, 05 Feb 2019 16:07:10 GMT): irkoch (Tue, 05 Feb 2019 16:27:30 GMT): silliman (Tue, 05 Feb 2019 16:33:05 GMT): irkoch (Tue, 05 Feb 2019 16:33:40 GMT): silliman (Tue, 05 Feb 2019 16:57:36 GMT): Silona (Tue, 05 Feb 2019 20:46:32 GMT): Silona (Tue, 05 Feb 2019 20:47:38 GMT): bstri (Tue, 05 Feb 2019 22:00:34 GMT): au (Wed, 06 Feb 2019 03:13:27 GMT): au (Wed, 06 Feb 2019 03:15:43 GMT): amendafernando (Wed, 06 Feb 2019 05:58:20 GMT): p1212 (Wed, 06 Feb 2019 06:23:10 GMT): p1212 (Wed, 06 Feb 2019 06:24:10 GMT): p1212 (Wed, 06 Feb 2019 06:25:37 GMT): p1212 (Wed, 06 Feb 2019 06:28:11 GMT): Sarath_Kumar (Wed, 06 Feb 2019 06:32:04 GMT): p1212 (Wed, 06 Feb 2019 06:33:39 GMT): p1212 (Wed, 06 Feb 2019 06:36:25 GMT): Sarath_Kumar (Wed, 06 Feb 2019 06:38:05 GMT): Sarath_Kumar (Wed, 06 Feb 2019 06:38:05 GMT): Ssandeep (Wed, 06 Feb 2019 08:09:06 GMT): Mayuzumi (Wed, 06 Feb 2019 09:14:09 GMT): Mayuzumi (Wed, 06 Feb 2019 09:16:35 GMT): RichardFriend (Wed, 06 Feb 2019 09:20:25 GMT): RichardFriend (Wed, 06 Feb 2019 09:21:20 GMT): RichardFriend (Wed, 06 Feb 2019 09:23:03 GMT): RichardFriend (Wed, 06 Feb 2019 09:23:03 GMT): RichardFriend (Wed, 06 Feb 2019 09:23:03 GMT): RichardFriend (Wed, 06 Feb 2019 09:27:33 GMT): p1212 (Wed, 06 Feb 2019 10:22:56 GMT): ShaikSharuk (Wed, 06 Feb 2019 12:20:42 GMT): waleed (Wed, 06 Feb 2019 12:27:13 GMT): waleed (Wed, 06 Feb 2019 12:36:09 GMT): waleed (Wed, 06 Feb 2019 12:36:09 GMT): nasht00 (Wed, 06 Feb 2019 13:54:57 GMT): paulovitorjp (Wed, 06 Feb 2019 16:38:09 GMT): paulovitorjp (Wed, 06 Feb 2019 16:40:27 GMT): paulovitorjp (Wed, 06 Feb 2019 16:41:26 GMT): paulovitorjp (Wed, 06 Feb 2019 16:41:43 GMT): paulovitorjp (Wed, 06 Feb 2019 16:41:53 GMT): paulovitorjp (Wed, 06 Feb 2019 16:51:31 GMT): bstri (Wed, 06 Feb 2019 21:24:32 GMT): bstri (Wed, 06 Feb 2019 21:55:53 GMT): ronaldlong46 (Wed, 06 Feb 2019 22:06:33 GMT): Mayuzumi (Wed, 06 Feb 2019 23:44:36 GMT): Mayuzumi (Thu, 07 Feb 2019 01:09:00 GMT): Ishee (Thu, 07 Feb 2019 09:06:47 GMT): Ishee (Thu, 07 Feb 2019 09:06:59 GMT): Ishee (Thu, 07 Feb 2019 09:06:59 GMT): alokkv (Thu, 07 Feb 2019 11:03:41 GMT): Ssandeep (Thu, 07 Feb 2019 11:21:47 GMT): p1212 (Thu, 07 Feb 2019 11:48:25 GMT): sureshtedla (Thu, 07 Feb 2019 13:12:46 GMT): shiftby (Thu, 07 Feb 2019 14:58:30 GMT): silliman (Thu, 07 Feb 2019 15:06:45 GMT): bstri (Thu, 07 Feb 2019 15:07:06 GMT): bstri (Thu, 07 Feb 2019 15:21:01 GMT): silliman (Thu, 07 Feb 2019 15:37:52 GMT): Florence98 (Thu, 07 Feb 2019 15:49:14 GMT): Florence98 (Thu, 07 Feb 2019 15:49:43 GMT): bstri (Thu, 07 Feb 2019 15:49:59 GMT): UnaiUrkiaga (Thu, 07 Feb 2019 16:11:01 GMT): silliman (Thu, 07 Feb 2019 16:15:21 GMT): silliman (Thu, 07 Feb 2019 16:15:21 GMT): paulovitorjp (Thu, 07 Feb 2019 16:25:12 GMT): paulovitorjp (Thu, 07 Feb 2019 16:25:22 GMT): Simon_Perer (Thu, 07 Feb 2019 21:12:26 GMT): AkhilKura (Fri, 08 Feb 2019 04:59:47 GMT): AkhilKura (Fri, 08 Feb 2019 05:01:31 GMT): saeedi (Fri, 08 Feb 2019 05:38:30 GMT): saeedi (Fri, 08 Feb 2019 05:39:04 GMT): saeedi (Fri, 08 Feb 2019 05:39:33 GMT): rubi_1432 (Fri, 08 Feb 2019 06:32:12 GMT): rubi_1432 (Fri, 08 Feb 2019 06:33:29 GMT): ShaikSharuk (Fri, 08 Feb 2019 09:40:01 GMT): DjCillers (Fri, 08 Feb 2019 09:48:27 GMT): SoorajNarayanan (Fri, 08 Feb 2019 10:18:48 GMT): SoorajNarayanan (Fri, 08 Feb 2019 10:19:18 GMT): SoorajNarayanan (Fri, 08 Feb 2019 10:19:30 GMT): SoorajNarayanan (Fri, 08 Feb 2019 10:19:52 GMT): MiguelMike93 (Fri, 08 Feb 2019 15:32:22 GMT): MiguelMike93 (Fri, 08 Feb 2019 15:35:12 GMT): Ssandeep (Sat, 09 Feb 2019 11:45:16 GMT): Daka (Sat, 09 Feb 2019 22:26:08 GMT): Daka (Sat, 09 Feb 2019 22:26:37 GMT): Daka (Sat, 09 Feb 2019 22:26:49 GMT): Daka (Sat, 09 Feb 2019 22:30:22 GMT): PeterShore (Sun, 10 Feb 2019 01:55:37 GMT): PeterShore (Sun, 10 Feb 2019 01:56:29 GMT): PeterShore (Sun, 10 Feb 2019 01:56:59 GMT): PeterShore (Sun, 10 Feb 2019 01:59:52 GMT): PeterShore (Sun, 10 Feb 2019 02:00:23 GMT): silliman (Sun, 10 Feb 2019 03:36:06 GMT): antosh (Sun, 10 Feb 2019 05:46:37 GMT): komalbharadiya (Sun, 10 Feb 2019 06:20:14 GMT): garunkumar450 (Sun, 10 Feb 2019 11:48:47 GMT): garunkumar450 (Sun, 10 Feb 2019 15:08:33 GMT): NadaAyman (Sun, 10 Feb 2019 15:23:13 GMT): NadaAyman (Sun, 10 Feb 2019 15:28:41 GMT): JosefButts (Mon, 11 Feb 2019 02:55:52 GMT): Ajayveer (Mon, 11 Feb 2019 04:22:28 GMT): ShaikSharuk (Mon, 11 Feb 2019 05:42:36 GMT): benjamin.verhaegen (Mon, 11 Feb 2019 09:24:57 GMT): garunkumar450 (Mon, 11 Feb 2019 09:54:28 GMT): garunkumar450 (Mon, 11 Feb 2019 09:54:28 GMT): anand.balagopalan (Mon, 11 Feb 2019 10:07:55 GMT): benjamin.verhaegen (Mon, 11 Feb 2019 10:27:57 GMT): Ajayveer (Mon, 11 Feb 2019 10:28:08 GMT): waleed (Mon, 11 Feb 2019 10:45:43 GMT): waleed (Mon, 11 Feb 2019 10:45:43 GMT): waleed (Mon, 11 Feb 2019 10:45:43 GMT): Ajayveer (Mon, 11 Feb 2019 10:46:31 GMT): Ajayveer (Mon, 11 Feb 2019 10:47:04 GMT): Ajayveer (Mon, 11 Feb 2019 10:47:31 GMT): Ajayveer (Mon, 11 Feb 2019 10:48:16 GMT): waleed (Mon, 11 Feb 2019 10:50:57 GMT): waleed (Mon, 11 Feb 2019 10:51:56 GMT): waleed (Mon, 11 Feb 2019 10:53:06 GMT): Ajayveer (Mon, 11 Feb 2019 11:59:44 GMT): sureshtedla (Mon, 11 Feb 2019 13:02:57 GMT): sureshtedla (Mon, 11 Feb 2019 13:04:13 GMT): sureshtedla (Mon, 11 Feb 2019 13:04:31 GMT): nhong (Mon, 11 Feb 2019 23:01:57 GMT): nhong (Mon, 11 Feb 2019 23:02:05 GMT): ashokkj (Tue, 12 Feb 2019 04:04:49 GMT): anand.balagopalan (Tue, 12 Feb 2019 04:06:29 GMT): nitinvraj (Tue, 12 Feb 2019 04:35:31 GMT): pampa7208 (Tue, 12 Feb 2019 04:45:37 GMT): SatoshiNishishita (Tue, 12 Feb 2019 04:58:31 GMT): ShaikSharuk (Tue, 12 Feb 2019 06:46:45 GMT): waleed (Tue, 12 Feb 2019 08:24:15 GMT): UnaiUrkiaga (Tue, 12 Feb 2019 10:21:11 GMT): waleed (Tue, 12 Feb 2019 10:45:26 GMT): UnaiUrkiaga (Tue, 12 Feb 2019 10:47:20 GMT): UnaiUrkiaga (Tue, 12 Feb 2019 10:47:37 GMT): waleed (Tue, 12 Feb 2019 10:50:18 GMT): waleed (Tue, 12 Feb 2019 10:50:18 GMT): UnaiUrkiaga (Tue, 12 Feb 2019 10:52:02 GMT): waleed (Tue, 12 Feb 2019 10:58:33 GMT): waleed (Tue, 12 Feb 2019 10:58:33 GMT): waleed (Tue, 12 Feb 2019 10:58:33 GMT): UnaiUrkiaga (Tue, 12 Feb 2019 11:00:17 GMT): waleed (Tue, 12 Feb 2019 11:00:41 GMT): UnaiUrkiaga (Tue, 12 Feb 2019 11:01:06 GMT): waleed (Tue, 12 Feb 2019 11:01:35 GMT): UnaiUrkiaga (Tue, 12 Feb 2019 11:04:54 GMT): Nawfal 1 (Tue, 12 Feb 2019 11:46:09 GMT): Ajayveer (Tue, 12 Feb 2019 12:11:37 GMT): Ajayveer (Tue, 12 Feb 2019 12:12:04 GMT): waleed (Tue, 12 Feb 2019 12:14:15 GMT): waleed (Tue, 12 Feb 2019 12:14:15 GMT): UnaiUrkiaga (Tue, 12 Feb 2019 12:16:18 GMT): waleed (Tue, 12 Feb 2019 12:17:11 GMT): waleed (Tue, 12 Feb 2019 12:17:29 GMT): UnaiUrkiaga (Tue, 12 Feb 2019 12:18:57 GMT): mallikarjunasai995 (Tue, 12 Feb 2019 12:35:09 GMT): waleed (Tue, 12 Feb 2019 12:41:24 GMT): waleed (Tue, 12 Feb 2019 12:41:24 GMT): waleed (Tue, 12 Feb 2019 12:41:24 GMT): mallikarjunasai995 (Tue, 12 Feb 2019 13:15:41 GMT): waleed (Tue, 12 Feb 2019 13:20:36 GMT): mallikarjunasai995 (Tue, 12 Feb 2019 13:48:10 GMT): waleed (Tue, 12 Feb 2019 14:00:27 GMT): mallikarjunasai995 (Tue, 12 Feb 2019 14:02:55 GMT): waleed (Tue, 12 Feb 2019 14:05:53 GMT): waleed (Tue, 12 Feb 2019 14:05:53 GMT): waleed (Tue, 12 Feb 2019 14:06:00 GMT): mallikarjunasai995 (Tue, 12 Feb 2019 14:09:59 GMT): waleed (Tue, 12 Feb 2019 14:10:24 GMT): EoghanR (Tue, 12 Feb 2019 15:48:29 GMT): rrishmawi (Tue, 12 Feb 2019 15:51:40 GMT): EoghanR (Tue, 12 Feb 2019 15:52:23 GMT): waleed (Tue, 12 Feb 2019 16:33:06 GMT): sureshtedla (Tue, 12 Feb 2019 17:15:04 GMT): sureshtedla (Tue, 12 Feb 2019 17:15:24 GMT): mallikarjunasai995 (Tue, 12 Feb 2019 19:52:35 GMT): mallikarjunasai995 (Tue, 12 Feb 2019 19:52:43 GMT): mallikarjunasai995 (Tue, 12 Feb 2019 19:52:46 GMT): nrohith (Tue, 12 Feb 2019 20:05:01 GMT): dilipNarendran199507 (Wed, 13 Feb 2019 04:04:06 GMT): dilipNarendran199507 (Wed, 13 Feb 2019 04:05:19 GMT): dilipNarendran199507 (Wed, 13 Feb 2019 04:05:19 GMT): dilipNarendran199507 (Wed, 13 Feb 2019 04:05:19 GMT): anand.balagopalan (Wed, 13 Feb 2019 05:37:59 GMT): umamani113 (Wed, 13 Feb 2019 07:27:00 GMT): umamani113 (Wed, 13 Feb 2019 07:27:00 GMT): waleed (Wed, 13 Feb 2019 07:46:44 GMT): rrishmawi (Wed, 13 Feb 2019 08:05:34 GMT): florianc (Wed, 13 Feb 2019 09:34:54 GMT): florianc (Wed, 13 Feb 2019 09:35:00 GMT): florianc (Wed, 13 Feb 2019 09:36:57 GMT): waleed (Wed, 13 Feb 2019 09:40:31 GMT): florianc (Wed, 13 Feb 2019 09:49:26 GMT): waleed (Wed, 13 Feb 2019 09:55:59 GMT): florianc (Wed, 13 Feb 2019 10:00:39 GMT): florianc (Wed, 13 Feb 2019 10:00:39 GMT): waleed (Wed, 13 Feb 2019 10:01:02 GMT): sureshtedla (Wed, 13 Feb 2019 10:17:03 GMT): sureshtedla (Wed, 13 Feb 2019 10:17:03 GMT): waleed (Wed, 13 Feb 2019 10:24:40 GMT): sureshtedla (Wed, 13 Feb 2019 10:25:23 GMT): OussamaZemzami (Wed, 13 Feb 2019 10:54:41 GMT): OussamaZemzami (Wed, 13 Feb 2019 10:55:46 GMT): OussamaZemzami (Wed, 13 Feb 2019 10:56:16 GMT): OussamaZemzami (Wed, 13 Feb 2019 10:56:25 GMT): waleed (Wed, 13 Feb 2019 10:59:41 GMT): hpg-mheck (Wed, 13 Feb 2019 12:17:12 GMT): hpg-mheck (Wed, 13 Feb 2019 12:19:31 GMT): waleed (Wed, 13 Feb 2019 12:24:34 GMT): waleed (Wed, 13 Feb 2019 12:24:34 GMT): hpg-mheck (Wed, 13 Feb 2019 12:30:50 GMT): hpg-mheck (Wed, 13 Feb 2019 12:33:04 GMT): hpg-mheck (Wed, 13 Feb 2019 12:33:08 GMT): hpg-mheck (Wed, 13 Feb 2019 12:33:32 GMT): hpg-mheck (Wed, 13 Feb 2019 12:33:41 GMT): hpg-mheck (Wed, 13 Feb 2019 12:34:19 GMT): davidkel (Wed, 13 Feb 2019 12:40:37 GMT): waleed (Wed, 13 Feb 2019 12:41:00 GMT): hpg-mheck (Wed, 13 Feb 2019 12:42:15 GMT): hpg-mheck (Wed, 13 Feb 2019 12:42:50 GMT): hpg-mheck (Wed, 13 Feb 2019 12:43:13 GMT): davidkel (Wed, 13 Feb 2019 12:43:18 GMT): hpg-mheck (Wed, 13 Feb 2019 12:43:30 GMT): hpg-mheck (Wed, 13 Feb 2019 12:43:48 GMT): hpg-mheck (Wed, 13 Feb 2019 12:43:57 GMT): hpg-mheck (Wed, 13 Feb 2019 12:44:05 GMT): hpg-mheck (Wed, 13 Feb 2019 12:44:16 GMT): davidkel (Wed, 13 Feb 2019 12:44:25 GMT): hpg-mheck (Wed, 13 Feb 2019 12:44:28 GMT): hpg-mheck (Wed, 13 Feb 2019 12:44:58 GMT): hpg-mheck (Wed, 13 Feb 2019 12:45:54 GMT): JP (Wed, 13 Feb 2019 12:46:23 GMT): hpg-mheck (Wed, 13 Feb 2019 12:46:32 GMT): davidkel (Wed, 13 Feb 2019 12:47:30 GMT): hpg-mheck (Wed, 13 Feb 2019 12:48:14 GMT): hpg-mheck (Wed, 13 Feb 2019 12:49:04 GMT): davidkel (Wed, 13 Feb 2019 12:51:13 GMT): hpg-mheck (Wed, 13 Feb 2019 12:52:53 GMT): amendafernando (Wed, 13 Feb 2019 13:14:01 GMT): waleed (Wed, 13 Feb 2019 13:16:48 GMT): waleed (Wed, 13 Feb 2019 13:16:48 GMT): waleed (Wed, 13 Feb 2019 13:16:48 GMT): amendafernando (Wed, 13 Feb 2019 13:23:31 GMT): amendafernando (Wed, 13 Feb 2019 13:24:50 GMT): waleed (Wed, 13 Feb 2019 13:27:09 GMT): amendafernando (Wed, 13 Feb 2019 13:41:42 GMT): waleed (Wed, 13 Feb 2019 13:47:21 GMT): mallikarjunasai995 (Wed, 13 Feb 2019 18:14:56 GMT): richardboell (Wed, 13 Feb 2019 19:41:42 GMT): JP (Thu, 14 Feb 2019 04:53:13 GMT): pascalkueng (Thu, 14 Feb 2019 07:48:17 GMT): florianc (Thu, 14 Feb 2019 07:49:43 GMT): JoeTech (Thu, 14 Feb 2019 09:53:10 GMT): JoeTech (Thu, 14 Feb 2019 09:53:55 GMT): JoeTech (Thu, 14 Feb 2019 09:54:52 GMT): hamza-kakar (Thu, 14 Feb 2019 12:05:08 GMT): JP (Thu, 14 Feb 2019 12:31:46 GMT): florianc (Thu, 14 Feb 2019 12:32:00 GMT): meet.s (Thu, 14 Feb 2019 13:10:36 GMT): meet.s (Thu, 14 Feb 2019 13:29:19 GMT): meet.s (Thu, 14 Feb 2019 13:29:19 GMT): meet.s (Thu, 14 Feb 2019 13:29:19 GMT): meet.s (Thu, 14 Feb 2019 13:29:19 GMT): meet.s (Thu, 14 Feb 2019 13:29:19 GMT): meet.s (Thu, 14 Feb 2019 13:29:19 GMT): JoeTech (Thu, 14 Feb 2019 13:46:40 GMT): florianc (Thu, 14 Feb 2019 14:11:31 GMT): florianc (Thu, 14 Feb 2019 14:12:33 GMT): pascalkueng (Thu, 14 Feb 2019 15:51:03 GMT): pascalkueng (Thu, 14 Feb 2019 16:34:15 GMT): waleed (Thu, 14 Feb 2019 17:47:50 GMT): waleed (Thu, 14 Feb 2019 17:47:50 GMT): waleed (Thu, 14 Feb 2019 17:47:50 GMT): pascalkueng (Thu, 14 Feb 2019 17:49:24 GMT): pascalkueng (Thu, 14 Feb 2019 17:49:40 GMT): waleed (Thu, 14 Feb 2019 17:52:12 GMT): waleed (Thu, 14 Feb 2019 17:52:28 GMT): fengbuzhi (Thu, 14 Feb 2019 18:29:09 GMT): fengbuzhi (Thu, 14 Feb 2019 18:29:24 GMT): pascalkueng (Thu, 14 Feb 2019 18:38:44 GMT): mallikarjunasai995 (Thu, 14 Feb 2019 19:14:24 GMT): waleed (Thu, 14 Feb 2019 22:05:12 GMT): DarwinHarianto (Fri, 15 Feb 2019 00:47:03 GMT): DarwinHarianto (Fri, 15 Feb 2019 00:47:56 GMT): himi64 (Fri, 15 Feb 2019 01:30:19 GMT): himi64 (Fri, 15 Feb 2019 01:30:19 GMT): DarwinHarianto (Fri, 15 Feb 2019 03:11:35 GMT): mallikarjunasai995 (Fri, 15 Feb 2019 04:54:47 GMT): komalbharadiya (Fri, 15 Feb 2019 05:09:30 GMT): DarwinHarianto (Fri, 15 Feb 2019 05:26:53 GMT): mallikarjunasai995 (Fri, 15 Feb 2019 05:47:10 GMT): mallikarjunasai995 (Fri, 15 Feb 2019 05:47:11 GMT): DarwinHarianto (Fri, 15 Feb 2019 06:00:21 GMT): DarwinHarianto (Fri, 15 Feb 2019 06:06:31 GMT): DarwinHarianto (Fri, 15 Feb 2019 06:08:06 GMT): DarwinHarianto (Fri, 15 Feb 2019 06:08:06 GMT): waleed (Fri, 15 Feb 2019 07:47:54 GMT): waleed (Fri, 15 Feb 2019 07:49:34 GMT): waleed (Fri, 15 Feb 2019 07:50:28 GMT): waleed (Fri, 15 Feb 2019 07:53:33 GMT): waleed (Fri, 15 Feb 2019 07:55:25 GMT): waleed (Fri, 15 Feb 2019 07:58:11 GMT): cs17m059 (Fri, 15 Feb 2019 07:58:59 GMT): waleed (Fri, 15 Feb 2019 08:00:25 GMT): waleed (Fri, 15 Feb 2019 08:00:25 GMT): cs17m059 (Fri, 15 Feb 2019 08:01:42 GMT): cs17m059 (Fri, 15 Feb 2019 08:02:52 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:04:12 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:04:31 GMT): waleed (Fri, 15 Feb 2019 08:17:11 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:25:17 GMT): waleed (Fri, 15 Feb 2019 08:25:50 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:25:56 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:26:40 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:27:52 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:31:26 GMT): waleed (Fri, 15 Feb 2019 08:32:39 GMT): waleed (Fri, 15 Feb 2019 08:32:39 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:35:03 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:35:03 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:35:03 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:35:52 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:36:47 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:44:16 GMT): waleed (Fri, 15 Feb 2019 08:44:28 GMT): waleed (Fri, 15 Feb 2019 08:44:28 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:48:35 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:48:35 GMT): waleed (Fri, 15 Feb 2019 08:49:49 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:50:05 GMT): waleed (Fri, 15 Feb 2019 08:50:36 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:51:30 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:51:30 GMT): DarwinHarianto (Fri, 15 Feb 2019 08:51:47 GMT): komalbharadiya (Fri, 15 Feb 2019 08:54:50 GMT): waleed (Fri, 15 Feb 2019 08:55:17 GMT): komalbharadiya (Fri, 15 Feb 2019 08:55:51 GMT): rrishmawi (Fri, 15 Feb 2019 08:56:44 GMT): waleed (Fri, 15 Feb 2019 08:57:58 GMT): DarwinHarianto (Fri, 15 Feb 2019 09:00:14 GMT): DarwinHarianto (Fri, 15 Feb 2019 09:00:14 GMT): waleed (Fri, 15 Feb 2019 09:01:14 GMT): rrishmawi (Fri, 15 Feb 2019 09:07:31 GMT): waleed (Fri, 15 Feb 2019 09:09:33 GMT): rrishmawi (Fri, 15 Feb 2019 09:21:18 GMT): rrishmawi (Fri, 15 Feb 2019 09:23:45 GMT): rrishmawi (Fri, 15 Feb 2019 09:24:58 GMT): waleed (Fri, 15 Feb 2019 09:44:35 GMT): waleed (Fri, 15 Feb 2019 09:48:32 GMT): mallikarjunasai995 (Fri, 15 Feb 2019 09:51:19 GMT): waleed (Fri, 15 Feb 2019 09:59:56 GMT): waleed (Fri, 15 Feb 2019 10:01:05 GMT): waleed (Fri, 15 Feb 2019 10:02:33 GMT): Brahimzaki (Fri, 15 Feb 2019 10:26:22 GMT): varunagarwal (Fri, 15 Feb 2019 11:01:00 GMT): varunagarwal (Fri, 15 Feb 2019 11:02:20 GMT): mallikarjunasai995 (Fri, 15 Feb 2019 11:33:01 GMT): varunagarwal (Fri, 15 Feb 2019 12:14:35 GMT): varunagarwal (Fri, 15 Feb 2019 12:16:15 GMT): varunagarwal (Fri, 15 Feb 2019 12:17:03 GMT): varunagarwal (Fri, 15 Feb 2019 12:19:49 GMT): florianc (Fri, 15 Feb 2019 12:27:53 GMT): mallikarjunasai995 (Fri, 15 Feb 2019 12:37:24 GMT): varunagarwal (Fri, 15 Feb 2019 12:43:50 GMT): dave.enyeart (Fri, 15 Feb 2019 12:46:30 GMT): dave.enyeart (Fri, 15 Feb 2019 12:46:30 GMT): dave.enyeart (Fri, 15 Feb 2019 12:47:42 GMT): mallikarjunasai995 (Fri, 15 Feb 2019 13:29:48 GMT): mallikarjunasai995 (Fri, 15 Feb 2019 14:46:18 GMT): JoeTech (Fri, 15 Feb 2019 16:27:20 GMT): JoeTech (Fri, 15 Feb 2019 16:27:22 GMT): varunagarwal (Fri, 15 Feb 2019 17:18:28 GMT): mallikarjunasai995 (Fri, 15 Feb 2019 17:57:13 GMT): JoeTech (Fri, 15 Feb 2019 21:33:56 GMT): JoeTech (Fri, 15 Feb 2019 21:33:56 GMT): SameerKulkarni (Sat, 16 Feb 2019 06:07:39 GMT): SameerKulkarni (Sat, 16 Feb 2019 06:07:39 GMT): varunagarwal (Sat, 16 Feb 2019 07:36:30 GMT): Maarep (Sat, 16 Feb 2019 07:47:48 GMT): Maarep (Sat, 16 Feb 2019 07:48:56 GMT): Maarep (Sat, 16 Feb 2019 07:49:35 GMT): Maarep (Sat, 16 Feb 2019 07:49:35 GMT): SameerKulkarni (Sat, 16 Feb 2019 09:36:22 GMT): SameerKulkarni (Sat, 16 Feb 2019 09:45:16 GMT): SameerKulkarni (Sat, 16 Feb 2019 09:46:54 GMT): SameerKulkarni (Sat, 16 Feb 2019 09:48:43 GMT): varunagarwal (Sat, 16 Feb 2019 13:00:05 GMT): varunagarwal (Sat, 16 Feb 2019 13:01:33 GMT): firewater (Sat, 16 Feb 2019 20:22:14 GMT): firewater (Sat, 16 Feb 2019 20:22:14 GMT): mallikarjunasai995 (Sun, 17 Feb 2019 08:09:56 GMT): mallikarjunasai995 (Sun, 17 Feb 2019 09:06:45 GMT): Daka (Sun, 17 Feb 2019 18:57:37 GMT): Daka (Sun, 17 Feb 2019 18:57:39 GMT): SameerKulkarni (Mon, 18 Feb 2019 04:24:34 GMT): SameerKulkarni (Mon, 18 Feb 2019 04:25:23 GMT): mallikarjunasai995 (Mon, 18 Feb 2019 04:56:58 GMT): SameerKulkarni (Mon, 18 Feb 2019 05:30:41 GMT): mallikarjunasai995 (Mon, 18 Feb 2019 06:07:28 GMT): Avinash_Kancharla (Mon, 18 Feb 2019 06:42:06 GMT): rrishmawi (Mon, 18 Feb 2019 11:04:52 GMT): YairAllouche (Mon, 18 Feb 2019 13:08:51 GMT): YairAllouche (Mon, 18 Feb 2019 13:08:51 GMT): YairAllouche (Mon, 18 Feb 2019 13:08:51 GMT): tanguyracinet (Mon, 18 Feb 2019 13:11:58 GMT): tanguyracinet (Mon, 18 Feb 2019 13:11:58 GMT): tanguyracinet (Mon, 18 Feb 2019 13:11:58 GMT): tanguyracinet (Mon, 18 Feb 2019 13:11:58 GMT): tanguyracinet (Mon, 18 Feb 2019 13:11:58 GMT): AnujSaxena (Mon, 18 Feb 2019 14:25:41 GMT): AnujSaxena (Mon, 18 Feb 2019 14:25:41 GMT): AnujSaxena (Mon, 18 Feb 2019 14:25:41 GMT): AnujSaxena (Mon, 18 Feb 2019 14:25:41 GMT): AnujSaxena (Mon, 18 Feb 2019 14:25:41 GMT): pprwong (Mon, 18 Feb 2019 16:34:45 GMT): pprwong (Mon, 18 Feb 2019 16:34:55 GMT): loneimmortal (Mon, 18 Feb 2019 17:27:16 GMT): florianc (Tue, 19 Feb 2019 08:15:09 GMT): florianc (Tue, 19 Feb 2019 08:16:09 GMT): duy3991 (Tue, 19 Feb 2019 09:40:00 GMT): GyoonKi (Tue, 19 Feb 2019 10:05:49 GMT): tanguyracinet (Tue, 19 Feb 2019 10:14:05 GMT): tanguyracinet (Tue, 19 Feb 2019 10:14:05 GMT): tanguyracinet (Tue, 19 Feb 2019 10:14:05 GMT): tanguyracinet (Tue, 19 Feb 2019 10:14:05 GMT): tanguyracinet (Tue, 19 Feb 2019 10:14:05 GMT): tanguyracinet (Tue, 19 Feb 2019 10:14:05 GMT): JoeTech (Tue, 19 Feb 2019 10:42:48 GMT): JP (Tue, 19 Feb 2019 10:55:48 GMT): tanguyracinet (Tue, 19 Feb 2019 10:57:17 GMT): florianc (Tue, 19 Feb 2019 11:01:13 GMT): JP (Tue, 19 Feb 2019 11:44:57 GMT): rrishmawi (Tue, 19 Feb 2019 12:30:22 GMT): pchochu (Tue, 19 Feb 2019 12:34:01 GMT): tanguyracinet (Tue, 19 Feb 2019 12:54:39 GMT): tanguyracinet (Tue, 19 Feb 2019 12:54:39 GMT): tanguyracinet (Tue, 19 Feb 2019 12:54:39 GMT): JP (Tue, 19 Feb 2019 12:56:43 GMT): Jehutty (Tue, 19 Feb 2019 14:07:01 GMT): Jehutty (Tue, 19 Feb 2019 14:07:19 GMT): florianc (Tue, 19 Feb 2019 14:15:15 GMT): Jehutty (Tue, 19 Feb 2019 14:15:26 GMT): Jehutty (Tue, 19 Feb 2019 14:15:58 GMT): Jehutty (Tue, 19 Feb 2019 14:16:10 GMT): florianc (Tue, 19 Feb 2019 15:35:43 GMT): Jehutty (Tue, 19 Feb 2019 16:12:40 GMT): JoeTech (Tue, 19 Feb 2019 18:03:54 GMT): JoeTech (Tue, 19 Feb 2019 18:03:54 GMT): varunagarwal (Tue, 19 Feb 2019 18:18:24 GMT): JoeTech (Tue, 19 Feb 2019 18:21:06 GMT): varunagarwal (Tue, 19 Feb 2019 18:25:07 GMT): varunagarwal (Tue, 19 Feb 2019 18:29:13 GMT): JoeTech (Tue, 19 Feb 2019 19:36:58 GMT): JoeTech (Tue, 19 Feb 2019 19:36:58 GMT): JoeTech (Tue, 19 Feb 2019 19:49:33 GMT): asaningmaxchain123 (Wed, 20 Feb 2019 00:33:02 GMT): asaningmaxchain123 (Wed, 20 Feb 2019 00:37:39 GMT): asaningmaxchain123 (Wed, 20 Feb 2019 00:38:35 GMT): asaningmaxchain123 (Wed, 20 Feb 2019 00:38:49 GMT): wangkaixuan (Wed, 20 Feb 2019 02:40:12 GMT): jxddmoto (Wed, 20 Feb 2019 03:19:22 GMT): jxddmoto (Wed, 20 Feb 2019 03:20:53 GMT): jxddmoto (Wed, 20 Feb 2019 03:21:35 GMT): jxddmoto (Wed, 20 Feb 2019 03:23:26 GMT): Smit95shah (Wed, 20 Feb 2019 03:46:30 GMT): waleed (Wed, 20 Feb 2019 06:50:06 GMT): waleed (Wed, 20 Feb 2019 06:52:15 GMT): florianc (Wed, 20 Feb 2019 07:34:27 GMT): JoeTech (Wed, 20 Feb 2019 09:48:17 GMT): sureshtedla (Wed, 20 Feb 2019 10:05:28 GMT): sureshtedla (Wed, 20 Feb 2019 10:06:21 GMT): sureshtedla (Wed, 20 Feb 2019 10:06:31 GMT): mallikarjunasai995 (Wed, 20 Feb 2019 10:15:35 GMT): mallikarjunasai995 (Wed, 20 Feb 2019 11:00:54 GMT): JP (Wed, 20 Feb 2019 11:10:31 GMT): JP (Wed, 20 Feb 2019 11:10:31 GMT): varunagarwal (Wed, 20 Feb 2019 12:40:32 GMT): varunagarwal (Wed, 20 Feb 2019 12:41:09 GMT): varunagarwal (Wed, 20 Feb 2019 12:43:41 GMT): SameerKulkarni (Wed, 20 Feb 2019 13:06:11 GMT): varunagarwal (Wed, 20 Feb 2019 13:25:19 GMT): varunagarwal (Wed, 20 Feb 2019 13:25:25 GMT): varunagarwal (Wed, 20 Feb 2019 13:25:52 GMT): SameerKulkarni (Wed, 20 Feb 2019 13:32:34 GMT): SameerKulkarni (Wed, 20 Feb 2019 13:38:34 GMT): mallikarjunasai995 (Wed, 20 Feb 2019 13:48:26 GMT): CorentinPacaud (Wed, 20 Feb 2019 13:52:09 GMT): shoaib30 (Wed, 20 Feb 2019 13:53:42 GMT): SJoshi7 (Wed, 20 Feb 2019 16:27:36 GMT): shoaib30 (Wed, 20 Feb 2019 17:13:03 GMT): DtmCarlson (Wed, 20 Feb 2019 21:06:27 GMT): Tejus.kabadi (Wed, 20 Feb 2019 21:54:16 GMT): DarwinHarianto (Thu, 21 Feb 2019 07:43:07 GMT): DarwinHarianto (Thu, 21 Feb 2019 07:55:04 GMT): florianc (Thu, 21 Feb 2019 08:07:31 GMT): florianc (Thu, 21 Feb 2019 08:10:02 GMT): florianc (Thu, 21 Feb 2019 08:10:03 GMT): DarwinHarianto (Thu, 21 Feb 2019 08:31:00 GMT): florianc (Thu, 21 Feb 2019 08:37:14 GMT): SoorajNarayanan (Thu, 21 Feb 2019 08:55:56 GMT): SoorajNarayanan (Thu, 21 Feb 2019 08:56:28 GMT): SoorajNarayanan (Thu, 21 Feb 2019 08:57:15 GMT): SoorajNarayanan (Thu, 21 Feb 2019 08:57:42 GMT): DarwinHarianto (Thu, 21 Feb 2019 08:58:44 GMT): SoorajNarayanan (Thu, 21 Feb 2019 09:13:02 GMT): JoeTech (Thu, 21 Feb 2019 09:22:34 GMT): JoeTech (Thu, 21 Feb 2019 09:22:34 GMT): JoeTech (Thu, 21 Feb 2019 09:24:22 GMT): JoeTech (Thu, 21 Feb 2019 09:24:22 GMT): JoeTech (Thu, 21 Feb 2019 11:47:49 GMT): pravn1729 (Thu, 21 Feb 2019 12:05:40 GMT): JoeTech (Thu, 21 Feb 2019 12:19:37 GMT): pravn1729 (Thu, 21 Feb 2019 12:26:58 GMT): wangkaixuan (Thu, 21 Feb 2019 14:36:01 GMT): wangkaixuan (Thu, 21 Feb 2019 14:36:16 GMT): FilippoD (Thu, 21 Feb 2019 18:05:06 GMT): FilippoD (Thu, 21 Feb 2019 18:09:43 GMT): FilippoD (Thu, 21 Feb 2019 18:09:43 GMT): FilippoD (Thu, 21 Feb 2019 18:09:43 GMT): DarwinHarianto (Fri, 22 Feb 2019 01:07:18 GMT): DarwinHarianto (Fri, 22 Feb 2019 02:11:44 GMT): tigersega (Fri, 22 Feb 2019 03:02:38 GMT): varunagarwal (Fri, 22 Feb 2019 06:44:33 GMT): varunagarwal (Fri, 22 Feb 2019 06:56:29 GMT): varunagarwal (Fri, 22 Feb 2019 06:56:29 GMT): DarwinHarianto (Fri, 22 Feb 2019 07:29:46 GMT): DarwinHarianto (Fri, 22 Feb 2019 07:37:09 GMT): varunagarwal (Fri, 22 Feb 2019 07:38:44 GMT): varunagarwal (Fri, 22 Feb 2019 07:38:44 GMT): varunagarwal (Fri, 22 Feb 2019 07:39:18 GMT): varunagarwal (Fri, 22 Feb 2019 07:40:24 GMT): DarwinHarianto (Fri, 22 Feb 2019 07:49:02 GMT): DarwinHarianto (Fri, 22 Feb 2019 07:49:02 GMT): varunagarwal (Fri, 22 Feb 2019 07:54:02 GMT): varunagarwal (Fri, 22 Feb 2019 07:55:03 GMT): DarwinHarianto (Fri, 22 Feb 2019 08:03:55 GMT): varunagarwal (Fri, 22 Feb 2019 08:05:05 GMT): FilippoD (Fri, 22 Feb 2019 08:44:35 GMT): FilippoD (Fri, 22 Feb 2019 08:50:12 GMT): mallikarjunasai995 (Fri, 22 Feb 2019 13:42:03 GMT): mallikarjunasai995 (Fri, 22 Feb 2019 13:42:26 GMT): mallikarjunasai995 (Fri, 22 Feb 2019 13:53:19 GMT): jcarneiro (Fri, 22 Feb 2019 14:40:17 GMT): mallikarjunasai995 (Fri, 22 Feb 2019 19:30:31 GMT): mallikarjunasai995 (Fri, 22 Feb 2019 19:31:18 GMT): BharatGodhani (Sat, 23 Feb 2019 08:03:48 GMT): sebastiantf (Sat, 23 Feb 2019 08:12:11 GMT): sebastiantf (Sat, 23 Feb 2019 08:12:32 GMT): BharatGodhani (Sat, 23 Feb 2019 08:16:37 GMT): BharatGodhani (Sat, 23 Feb 2019 08:16:37 GMT): BharatGodhani (Sat, 23 Feb 2019 08:19:07 GMT): varunagarwal (Sat, 23 Feb 2019 08:34:15 GMT): BharatGodhani (Sat, 23 Feb 2019 09:09:41 GMT): MinhNguyenDuc (Sat, 23 Feb 2019 09:41:46 GMT): shehryarraza (Sat, 23 Feb 2019 16:36:28 GMT): mallikarjunasai995 (Sat, 23 Feb 2019 18:51:20 GMT): pravn1729 (Sat, 23 Feb 2019 21:10:10 GMT): anant706 (Sun, 24 Feb 2019 02:53:23 GMT): anant706 (Sun, 24 Feb 2019 02:53:23 GMT): mallikarjunasai995 (Sun, 24 Feb 2019 04:14:58 GMT): wangkaixuan (Sun, 24 Feb 2019 04:45:52 GMT): wangkaixuan (Sun, 24 Feb 2019 04:49:24 GMT): varunagarwal (Sun, 24 Feb 2019 12:05:02 GMT): sebastiantf (Sun, 24 Feb 2019 12:09:04 GMT): sebastiantf (Sun, 24 Feb 2019 12:09:04 GMT): shehryarraza (Sun, 24 Feb 2019 12:55:55 GMT): shehryarraza (Sun, 24 Feb 2019 12:57:00 GMT): wangkaixuan (Mon, 25 Feb 2019 02:25:31 GMT): JP (Mon, 25 Feb 2019 05:10:19 GMT): JP (Mon, 25 Feb 2019 05:10:19 GMT): varunagarwal (Mon, 25 Feb 2019 06:37:23 GMT): KungFooPanda (Mon, 25 Feb 2019 08:34:59 GMT): lassejarlstrom (Mon, 25 Feb 2019 10:59:05 GMT): krishnswam2000 (Mon, 25 Feb 2019 12:09:56 GMT): krishnswam2000 (Mon, 25 Feb 2019 12:10:32 GMT): komalbharadiya (Mon, 25 Feb 2019 12:44:22 GMT): wangkaixuan (Mon, 25 Feb 2019 13:49:26 GMT): Misantonio (Mon, 25 Feb 2019 14:44:01 GMT): Misantonio (Mon, 25 Feb 2019 14:44:07 GMT): Misantonio (Mon, 25 Feb 2019 14:48:51 GMT): Misantonio (Mon, 25 Feb 2019 14:48:51 GMT): Misantonio (Mon, 25 Feb 2019 14:51:01 GMT): anant706 (Mon, 25 Feb 2019 16:23:23 GMT): varunagarwal (Mon, 25 Feb 2019 17:15:30 GMT): mallikarjunasai995 (Mon, 25 Feb 2019 17:54:09 GMT): sebastiantf (Mon, 25 Feb 2019 19:03:30 GMT): OscarRoman (Mon, 25 Feb 2019 19:33:44 GMT): austbot (Mon, 25 Feb 2019 20:16:02 GMT): sebastiantf (Mon, 25 Feb 2019 20:21:58 GMT): Avinash_Kancharla (Tue, 26 Feb 2019 04:38:40 GMT): Avinash_Kancharla (Tue, 26 Feb 2019 04:43:57 GMT): mallikarjunasai995 (Tue, 26 Feb 2019 05:52:38 GMT): mallikarjunasai995 (Tue, 26 Feb 2019 05:52:38 GMT): mallikarjunasai995 (Tue, 26 Feb 2019 05:52:54 GMT): Techie (Tue, 26 Feb 2019 06:22:35 GMT): liwaiwai (Tue, 26 Feb 2019 08:01:31 GMT): Misantonio (Tue, 26 Feb 2019 15:18:03 GMT): Misantonio (Tue, 26 Feb 2019 15:18:03 GMT): Keegan-Lee (Tue, 26 Feb 2019 20:01:10 GMT): RealDeanZhao (Wed, 27 Feb 2019 02:43:49 GMT): amendafernando (Wed, 27 Feb 2019 04:07:49 GMT): varunagarwal (Wed, 27 Feb 2019 06:09:41 GMT): Avinash_Kancharla (Wed, 27 Feb 2019 06:12:19 GMT): Avinash_Kancharla (Wed, 27 Feb 2019 06:12:48 GMT): Avinash_Kancharla (Wed, 27 Feb 2019 06:12:48 GMT): Avinash_Kancharla (Wed, 27 Feb 2019 06:12:48 GMT): amendafernando (Wed, 27 Feb 2019 06:27:37 GMT): DarwinHarianto (Wed, 27 Feb 2019 06:36:46 GMT): amendafernando (Wed, 27 Feb 2019 06:42:26 GMT): DarwinHarianto (Wed, 27 Feb 2019 07:28:30 GMT): DarwinHarianto (Wed, 27 Feb 2019 07:28:30 GMT): komalbharadiya (Wed, 27 Feb 2019 11:43:29 GMT): komalbharadiya (Wed, 27 Feb 2019 11:45:53 GMT): varunagarwal (Wed, 27 Feb 2019 13:17:43 GMT): varunagarwal (Wed, 27 Feb 2019 13:17:52 GMT): varunagarwal (Wed, 27 Feb 2019 13:18:14 GMT): komalbharadiya (Wed, 27 Feb 2019 13:30:00 GMT): komalbharadiya (Wed, 27 Feb 2019 13:30:00 GMT): komalbharadiya (Wed, 27 Feb 2019 14:35:07 GMT): florianc (Wed, 27 Feb 2019 16:20:51 GMT): komalbharadiya (Wed, 27 Feb 2019 17:37:16 GMT): tommparekh (Wed, 27 Feb 2019 18:35:39 GMT): mazdah (Wed, 27 Feb 2019 18:37:27 GMT): Misantonio (Wed, 27 Feb 2019 19:10:48 GMT): Misantonio (Wed, 27 Feb 2019 19:11:10 GMT): SameerKulkarni (Thu, 28 Feb 2019 04:00:49 GMT): SameerKulkarni (Thu, 28 Feb 2019 06:06:55 GMT): mallikarjunasai995 (Thu, 28 Feb 2019 07:35:17 GMT): mallikarjunasai995 (Thu, 28 Feb 2019 07:35:29 GMT): MikeRichardson (Thu, 28 Feb 2019 10:29:12 GMT): MikeRichardson (Thu, 28 Feb 2019 10:29:12 GMT): MikeRichardson (Thu, 28 Feb 2019 19:16:58 GMT): MikeRichardson (Thu, 28 Feb 2019 19:17:41 GMT): tommparekh (Thu, 28 Feb 2019 20:29:54 GMT): tommparekh (Thu, 28 Feb 2019 20:54:11 GMT): ronaldlong46 (Thu, 28 Feb 2019 20:54:57 GMT): Avinash_Kancharla (Fri, 01 Mar 2019 04:46:31 GMT): mallikarjunasai995 (Fri, 01 Mar 2019 09:37:28 GMT): mbwhite (Fri, 01 Mar 2019 10:07:54 GMT): vahuja4 (Fri, 01 Mar 2019 10:47:21 GMT): vageeshprasadB (Fri, 01 Mar 2019 13:17:28 GMT): vageeshprasadB (Fri, 01 Mar 2019 13:20:38 GMT): Minskyy (Fri, 01 Mar 2019 16:29:29 GMT): Minskyy (Fri, 01 Mar 2019 16:35:59 GMT): Minskyy (Fri, 01 Mar 2019 16:46:15 GMT): Daka (Sat, 02 Mar 2019 19:48:42 GMT): packkkkk (Sun, 03 Mar 2019 04:30:20 GMT): packkkkk (Sun, 03 Mar 2019 04:30:24 GMT): packkkkk (Sun, 03 Mar 2019 04:30:55 GMT): pravn1729 (Sun, 03 Mar 2019 05:30:03 GMT): pravn1729 (Sun, 03 Mar 2019 05:30:03 GMT): Basil-3 (Sun, 03 Mar 2019 11:56:51 GMT): Basil-3 (Sun, 03 Mar 2019 12:01:25 GMT): RobiHarid (Sun, 03 Mar 2019 21:32:37 GMT): RobiHarid (Sun, 03 Mar 2019 21:32:45 GMT): AnasBaigMughal (Mon, 04 Mar 2019 06:13:53 GMT): Sarath_Kumar (Mon, 04 Mar 2019 06:54:13 GMT): Sarath_Kumar (Mon, 04 Mar 2019 06:54:39 GMT): henheim (Mon, 04 Mar 2019 09:54:46 GMT): henheim (Mon, 04 Mar 2019 09:58:51 GMT): Daka (Mon, 04 Mar 2019 10:23:32 GMT): henheim (Mon, 04 Mar 2019 10:30:51 GMT): Daka (Mon, 04 Mar 2019 10:41:31 GMT): henheim (Mon, 04 Mar 2019 10:41:35 GMT): Daka (Mon, 04 Mar 2019 10:41:36 GMT): Daka (Mon, 04 Mar 2019 10:41:52 GMT): henheim (Mon, 04 Mar 2019 10:42:08 GMT): Daka (Mon, 04 Mar 2019 10:42:19 GMT): Daka (Mon, 04 Mar 2019 10:42:26 GMT): Daka (Mon, 04 Mar 2019 10:43:10 GMT): henheim (Mon, 04 Mar 2019 10:48:31 GMT): Daka (Mon, 04 Mar 2019 10:52:30 GMT): Daka (Mon, 04 Mar 2019 10:52:36 GMT): Daka (Mon, 04 Mar 2019 10:52:46 GMT): Daka (Mon, 04 Mar 2019 10:53:32 GMT): henheim (Mon, 04 Mar 2019 10:58:15 GMT): henheim (Mon, 04 Mar 2019 10:58:54 GMT): Daka (Mon, 04 Mar 2019 11:32:46 GMT): Daka (Mon, 04 Mar 2019 12:52:46 GMT): henheim (Mon, 04 Mar 2019 13:37:17 GMT): Smit95shah (Mon, 04 Mar 2019 13:50:32 GMT): Smit95shah (Mon, 04 Mar 2019 13:51:09 GMT): Smit95shah (Mon, 04 Mar 2019 14:29:24 GMT): Smit95shah (Mon, 04 Mar 2019 14:29:31 GMT): Daka (Mon, 04 Mar 2019 15:07:42 GMT): Daka (Mon, 04 Mar 2019 15:07:53 GMT): GyoonKi (Mon, 04 Mar 2019 20:24:44 GMT): Daka (Mon, 04 Mar 2019 20:36:07 GMT): Daka (Mon, 04 Mar 2019 20:36:39 GMT): GyoonKi (Mon, 04 Mar 2019 20:47:55 GMT): GyoonKi (Mon, 04 Mar 2019 20:50:48 GMT): Daka (Mon, 04 Mar 2019 21:13:21 GMT): GyoonKi (Mon, 04 Mar 2019 21:19:38 GMT): Daka (Mon, 04 Mar 2019 21:20:04 GMT): Daka (Mon, 04 Mar 2019 23:48:50 GMT): komalbharadiya (Tue, 05 Mar 2019 06:31:53 GMT): wangrangli (Tue, 05 Mar 2019 07:04:53 GMT): wangrangli (Tue, 05 Mar 2019 07:04:57 GMT): Daka (Tue, 05 Mar 2019 07:11:32 GMT): wangrangli (Tue, 05 Mar 2019 07:21:53 GMT): florianc (Tue, 05 Mar 2019 08:07:29 GMT): GyoonKi (Tue, 05 Mar 2019 08:54:30 GMT): Daka (Tue, 05 Mar 2019 09:08:55 GMT): Daka (Tue, 05 Mar 2019 09:08:55 GMT): Smit95shah (Tue, 05 Mar 2019 10:33:01 GMT): Smit95shah (Tue, 05 Mar 2019 10:33:14 GMT): Smit95shah (Tue, 05 Mar 2019 10:33:56 GMT): komalbharadiya (Tue, 05 Mar 2019 13:59:04 GMT): HappyThoughts (Tue, 05 Mar 2019 16:04:48 GMT): GyoonKi (Tue, 05 Mar 2019 16:45:34 GMT): AnasBaigMughal (Tue, 05 Mar 2019 19:03:01 GMT): mallikarjunasai995 (Tue, 05 Mar 2019 19:28:23 GMT): mallikarjunasai995 (Tue, 05 Mar 2019 19:28:52 GMT): mallikarjunasai995 (Tue, 05 Mar 2019 19:32:23 GMT): mallikarjunasai995 (Tue, 05 Mar 2019 19:32:53 GMT): mallikarjunasai995 (Tue, 05 Mar 2019 19:35:49 GMT): sivaprasadraj (Wed, 06 Mar 2019 02:41:18 GMT): sivaprasadraj (Wed, 06 Mar 2019 02:46:30 GMT): anilrachakonda (Wed, 06 Mar 2019 06:14:52 GMT): mallikarjunasai995 (Wed, 06 Mar 2019 07:01:08 GMT): mallikarjunasai995 (Wed, 06 Mar 2019 07:01:33 GMT): Jaline (Wed, 06 Mar 2019 08:57:16 GMT): wangrangli (Wed, 06 Mar 2019 09:48:11 GMT): GyoonKi (Wed, 06 Mar 2019 13:11:08 GMT): SameerKulkarni (Wed, 06 Mar 2019 13:15:11 GMT): saikumar3349 (Wed, 06 Mar 2019 13:15:44 GMT): saikumar3349 (Wed, 06 Mar 2019 13:16:44 GMT): benjamin.verhaegen (Wed, 06 Mar 2019 15:20:12 GMT): benjamin.verhaegen (Wed, 06 Mar 2019 15:21:35 GMT): HappyThoughts (Wed, 06 Mar 2019 17:47:01 GMT): FilippoD (Wed, 06 Mar 2019 20:03:45 GMT): mauricio (Wed, 06 Mar 2019 21:42:51 GMT): mallikarjunasai995 (Thu, 07 Mar 2019 02:46:50 GMT): roudhentel (Thu, 07 Mar 2019 07:03:46 GMT): roudhentel (Thu, 07 Mar 2019 07:03:59 GMT): SumaGowda (Thu, 07 Mar 2019 07:15:38 GMT): SumaGowda (Thu, 07 Mar 2019 07:15:56 GMT): benjamin.verhaegen (Thu, 07 Mar 2019 07:28:04 GMT): benjamin.verhaegen (Thu, 07 Mar 2019 07:28:04 GMT): Daka (Thu, 07 Mar 2019 08:43:12 GMT): sureshtedla (Thu, 07 Mar 2019 09:15:45 GMT): sureshtedla (Thu, 07 Mar 2019 09:16:00 GMT): stephenman (Thu, 07 Mar 2019 09:48:26 GMT): garunkumar450 (Thu, 07 Mar 2019 10:36:55 GMT): stephenman (Thu, 07 Mar 2019 11:38:47 GMT): mallikarjunasai995 (Thu, 07 Mar 2019 12:04:02 GMT): varunagarwal (Thu, 07 Mar 2019 12:07:14 GMT): Kosalayb (Thu, 07 Mar 2019 13:54:16 GMT): Kosalayb (Thu, 07 Mar 2019 14:05:58 GMT): mallikarjunasai995 (Thu, 07 Mar 2019 14:27:06 GMT): jcbombardelli (Thu, 07 Mar 2019 15:23:30 GMT): mallikarjunasai995 (Thu, 07 Mar 2019 15:40:49 GMT): Javi (Thu, 07 Mar 2019 17:05:23 GMT): koq 1 (Thu, 07 Mar 2019 18:31:46 GMT): koq 1 (Thu, 07 Mar 2019 18:34:48 GMT): koq 1 (Thu, 07 Mar 2019 18:35:24 GMT): nulee100 (Fri, 08 Mar 2019 01:19:56 GMT): nulee100 (Fri, 08 Mar 2019 01:20:46 GMT): touchingsoil (Fri, 08 Mar 2019 01:51:31 GMT): lidengjia (Fri, 08 Mar 2019 07:39:08 GMT): rohitkhatri (Fri, 08 Mar 2019 10:46:26 GMT): varunagarwal (Fri, 08 Mar 2019 11:02:35 GMT): JoeTech (Fri, 08 Mar 2019 15:04:08 GMT): mallikarjunasai995 (Fri, 08 Mar 2019 15:12:52 GMT): mallikarjunasai995 (Fri, 08 Mar 2019 15:13:43 GMT): mallikarjunasai995 (Fri, 08 Mar 2019 15:15:03 GMT): mallikarjunasai995 (Fri, 08 Mar 2019 15:20:51 GMT): benjamin.verhaegen (Fri, 08 Mar 2019 15:26:14 GMT): mallikarjunasai995 (Fri, 08 Mar 2019 18:35:34 GMT): wangrangli (Sat, 09 Mar 2019 05:40:10 GMT): rahuljain (Sat, 09 Mar 2019 10:52:36 GMT): rahuljain (Sat, 09 Mar 2019 10:53:33 GMT): haseeb.i (Sat, 09 Mar 2019 13:32:37 GMT): haseeb.i (Sat, 09 Mar 2019 13:32:56 GMT): haseeb.i (Sat, 09 Mar 2019 13:33:13 GMT): haseeb.i (Sat, 09 Mar 2019 13:34:28 GMT): haseeb.i (Sat, 09 Mar 2019 13:52:53 GMT): Jehutty (Sat, 09 Mar 2019 15:59:59 GMT): mallikarjunasai995 (Sat, 09 Mar 2019 19:01:49 GMT): mallikarjunasai995 (Sat, 09 Mar 2019 19:01:49 GMT): Daka (Sat, 09 Mar 2019 21:13:43 GMT): ak97m (Sun, 10 Mar 2019 03:22:57 GMT): ak97m (Sun, 10 Mar 2019 03:22:57 GMT): tsexplorer (Sun, 10 Mar 2019 09:41:28 GMT): mallikarjunasai995 (Sun, 10 Mar 2019 15:42:35 GMT): Daka (Sun, 10 Mar 2019 15:52:51 GMT): Daka (Sun, 10 Mar 2019 19:05:04 GMT): HappyThoughts (Sun, 10 Mar 2019 22:23:29 GMT): ak97m (Mon, 11 Mar 2019 04:23:33 GMT): ak97m (Mon, 11 Mar 2019 04:23:37 GMT): keshavrajput (Mon, 11 Mar 2019 05:41:58 GMT): keshavrajput (Mon, 11 Mar 2019 05:42:31 GMT): keshavrajput (Mon, 11 Mar 2019 05:43:24 GMT): davidpetit (Mon, 11 Mar 2019 07:08:31 GMT): Smit95shah (Mon, 11 Mar 2019 08:43:47 GMT): FilippoD (Mon, 11 Mar 2019 09:34:55 GMT): FilippoD (Mon, 11 Mar 2019 09:34:55 GMT): FilippoD (Mon, 11 Mar 2019 09:34:55 GMT): varunagarwal (Mon, 11 Mar 2019 10:13:39 GMT): varunagarwal (Mon, 11 Mar 2019 10:33:16 GMT): danilojodas (Mon, 11 Mar 2019 13:21:30 GMT): Frank.dR (Mon, 11 Mar 2019 13:24:14 GMT): Frank.dR (Mon, 11 Mar 2019 13:29:45 GMT): Frank.dR (Mon, 11 Mar 2019 13:32:41 GMT): tejateja (Tue, 12 Mar 2019 04:22:49 GMT): KYLeung (Tue, 12 Mar 2019 05:16:42 GMT): duy3991 (Tue, 12 Mar 2019 06:57:58 GMT): duy3991 (Tue, 12 Mar 2019 06:58:10 GMT): varunagarwal (Tue, 12 Mar 2019 08:00:24 GMT): varunagarwal (Tue, 12 Mar 2019 08:05:46 GMT): duy3991 (Tue, 12 Mar 2019 08:33:35 GMT): duy3991 (Tue, 12 Mar 2019 08:35:25 GMT): duy3991 (Tue, 12 Mar 2019 08:35:25 GMT): duy3991 (Tue, 12 Mar 2019 08:35:25 GMT): Jakeeyturner (Tue, 12 Mar 2019 09:44:09 GMT): mallikarjunasai995 (Tue, 12 Mar 2019 12:12:49 GMT): duy3991 (Tue, 12 Mar 2019 12:24:32 GMT): RanjithGandhasiri (Tue, 12 Mar 2019 13:37:55 GMT): RanjithGandhasiri (Tue, 12 Mar 2019 13:38:00 GMT): CorentinPacaud (Tue, 12 Mar 2019 14:54:52 GMT): CorentinPacaud (Tue, 12 Mar 2019 14:57:31 GMT): CorentinPacaud (Tue, 12 Mar 2019 14:57:31 GMT): CorentinPacaud (Tue, 12 Mar 2019 14:57:31 GMT): CorentinPacaud (Tue, 12 Mar 2019 14:57:31 GMT): CorentinPacaud (Tue, 12 Mar 2019 14:57:31 GMT): CorentinPacaud (Tue, 12 Mar 2019 14:57:31 GMT): John-labite (Tue, 12 Mar 2019 15:33:26 GMT): John-labite (Tue, 12 Mar 2019 15:34:39 GMT): John-labite (Tue, 12 Mar 2019 15:34:45 GMT): John-labite (Tue, 12 Mar 2019 15:35:00 GMT): John-labite (Tue, 12 Mar 2019 15:35:02 GMT): John-labite (Tue, 12 Mar 2019 15:35:28 GMT): John-labite (Tue, 12 Mar 2019 15:35:31 GMT): John-labite (Tue, 12 Mar 2019 15:35:47 GMT): John-labite (Tue, 12 Mar 2019 15:37:17 GMT): CorentinPacaud (Tue, 12 Mar 2019 15:37:23 GMT): John-labite (Tue, 12 Mar 2019 15:38:10 GMT): FathyGeaiessah (Wed, 13 Mar 2019 04:10:29 GMT): FathyGeaiessah (Wed, 13 Mar 2019 04:13:21 GMT): DLTChacha (Wed, 13 Mar 2019 04:41:31 GMT): bhanupraveen (Wed, 13 Mar 2019 04:58:54 GMT): bhanupraveen (Wed, 13 Mar 2019 04:59:49 GMT): adnanabbasktt (Wed, 13 Mar 2019 07:06:29 GMT): SoorajNarayanan (Wed, 13 Mar 2019 09:39:53 GMT): maniankara (Wed, 13 Mar 2019 11:07:42 GMT): ribjethgnis (Wed, 13 Mar 2019 12:22:49 GMT): danilojodas (Wed, 13 Mar 2019 12:41:41 GMT): PrzemekH (Wed, 13 Mar 2019 12:42:42 GMT): PrzemekH (Wed, 13 Mar 2019 12:42:46 GMT): benmambo (Wed, 13 Mar 2019 13:06:40 GMT): benmambo (Wed, 13 Mar 2019 13:09:05 GMT): NasserRahal (Wed, 13 Mar 2019 14:02:24 GMT): albanlienart (Wed, 13 Mar 2019 14:21:13 GMT): adnanabbasktt (Wed, 13 Mar 2019 18:13:02 GMT): TuhinMahmuud (Wed, 13 Mar 2019 18:16:43 GMT): RizwanAli (Wed, 13 Mar 2019 22:20:46 GMT): AnasBaigMughal (Thu, 14 Mar 2019 05:59:41 GMT): tejateja (Thu, 14 Mar 2019 06:39:34 GMT): SoorajNarayanan (Thu, 14 Mar 2019 06:49:26 GMT): SoorajNarayanan (Thu, 14 Mar 2019 06:49:31 GMT): krabradosty (Thu, 14 Mar 2019 10:30:53 GMT): adnanabbasktt (Thu, 14 Mar 2019 12:53:36 GMT): CorentinPacaud (Thu, 14 Mar 2019 13:23:10 GMT): CorentinPacaud (Thu, 14 Mar 2019 13:23:26 GMT): CorentinPacaud (Thu, 14 Mar 2019 13:23:51 GMT): CorentinPacaud (Thu, 14 Mar 2019 13:53:18 GMT): CorentinPacaud (Thu, 14 Mar 2019 14:15:20 GMT): adnanabbasktt (Thu, 14 Mar 2019 20:00:14 GMT): adnanabbasktt (Thu, 14 Mar 2019 20:04:50 GMT): GyoonKi (Thu, 14 Mar 2019 21:13:34 GMT): GyoonKi (Thu, 14 Mar 2019 21:15:26 GMT): Smit95shah (Fri, 15 Mar 2019 02:42:03 GMT): Smit95shah (Fri, 15 Mar 2019 02:42:03 GMT): SameerKulkarni (Fri, 15 Mar 2019 08:02:13 GMT): SameerKulkarni (Fri, 15 Mar 2019 08:02:13 GMT): SameerKulkarni (Fri, 15 Mar 2019 08:02:13 GMT): adnanabbasktt (Fri, 15 Mar 2019 08:31:50 GMT): CorentinPacaud (Fri, 15 Mar 2019 09:05:21 GMT): CorentinPacaud (Fri, 15 Mar 2019 09:11:41 GMT): adnanabbasktt (Fri, 15 Mar 2019 09:13:46 GMT): CorentinPacaud (Fri, 15 Mar 2019 09:14:47 GMT): adnanabbasktt (Fri, 15 Mar 2019 09:15:14 GMT): CorentinPacaud (Fri, 15 Mar 2019 09:16:09 GMT): adnanabbasktt (Fri, 15 Mar 2019 09:16:49 GMT): adnanabbasktt (Fri, 15 Mar 2019 09:17:45 GMT): CorentinPacaud (Fri, 15 Mar 2019 09:19:54 GMT): adnanabbasktt (Fri, 15 Mar 2019 09:22:09 GMT): GyoonKi (Fri, 15 Mar 2019 10:14:13 GMT): aamirmansuri (Fri, 15 Mar 2019 12:41:48 GMT): aamirmansuri (Fri, 15 Mar 2019 12:41:55 GMT): aamirmansuri (Fri, 15 Mar 2019 12:41:55 GMT): aamirmansuri (Fri, 15 Mar 2019 12:41:55 GMT): aamirmansuri (Fri, 15 Mar 2019 13:03:11 GMT): chengloy (Fri, 15 Mar 2019 13:41:00 GMT): nthomas20 (Fri, 15 Mar 2019 13:52:06 GMT): CorentinPacaud (Fri, 15 Mar 2019 13:55:10 GMT): GyoonKi (Fri, 15 Mar 2019 14:00:41 GMT): Daka (Fri, 15 Mar 2019 17:19:14 GMT): pavan876 (Fri, 15 Mar 2019 17:23:41 GMT): pavan876 (Fri, 15 Mar 2019 17:24:06 GMT): pavan876 (Fri, 15 Mar 2019 17:24:47 GMT): pavan876 (Fri, 15 Mar 2019 17:25:11 GMT): adnanabbasktt (Fri, 15 Mar 2019 18:01:56 GMT): adnanabbasktt (Fri, 15 Mar 2019 18:01:56 GMT): adnanabbasktt (Fri, 15 Mar 2019 18:05:43 GMT): pavan876 (Fri, 15 Mar 2019 19:33:46 GMT): carbonFeet (Sat, 16 Mar 2019 14:19:30 GMT): KumaranathFernando (Sat, 16 Mar 2019 15:25:08 GMT): KYLeung (Sat, 16 Mar 2019 16:12:49 GMT): pdina (Sat, 16 Mar 2019 19:16:38 GMT): ShubhamSingh9 (Sun, 17 Mar 2019 13:58:27 GMT): ShubhamSingh9 (Sun, 17 Mar 2019 13:58:37 GMT): ShubhamSingh9 (Sun, 17 Mar 2019 13:58:37 GMT): ShubhamSingh9 (Sun, 17 Mar 2019 13:58:37 GMT): ShubhamSingh9 (Sun, 17 Mar 2019 13:58:37 GMT): ShubhamSingh9 (Sun, 17 Mar 2019 13:58:37 GMT): ShubhamSingh9 (Sun, 17 Mar 2019 14:14:42 GMT): Daka (Sun, 17 Mar 2019 17:27:22 GMT): Daka (Sun, 17 Mar 2019 17:27:52 GMT): BlockQAI (Sun, 17 Mar 2019 18:02:05 GMT): GyoonKi (Sun, 17 Mar 2019 20:26:25 GMT): Daka (Sun, 17 Mar 2019 23:22:11 GMT): bilalahmed (Mon, 18 Mar 2019 08:57:14 GMT): ChaviArora (Mon, 18 Mar 2019 09:00:32 GMT): GyoonKi (Mon, 18 Mar 2019 09:52:17 GMT): Daka (Mon, 18 Mar 2019 12:39:21 GMT): GyoonKi (Mon, 18 Mar 2019 12:53:32 GMT): Daka (Mon, 18 Mar 2019 15:13:00 GMT): GyoonKi (Mon, 18 Mar 2019 16:52:10 GMT): GyoonKi (Mon, 18 Mar 2019 18:45:59 GMT): Daka (Mon, 18 Mar 2019 19:56:28 GMT): ronaldlong46 (Mon, 18 Mar 2019 22:30:54 GMT): pierre (Mon, 18 Mar 2019 22:55:21 GMT): pierre (Mon, 18 Mar 2019 22:56:27 GMT): jessezhu (Tue, 19 Mar 2019 03:27:18 GMT): Smit95shah (Tue, 19 Mar 2019 05:29:48 GMT): aamirmansuri (Tue, 19 Mar 2019 11:44:36 GMT): aamirmansuri (Tue, 19 Mar 2019 11:44:36 GMT): aamirmansuri (Tue, 19 Mar 2019 11:44:36 GMT): aamirmansuri (Tue, 19 Mar 2019 11:44:36 GMT): SaphiraBjartskular (Tue, 19 Mar 2019 16:01:48 GMT): BenW 11 (Tue, 19 Mar 2019 16:45:42 GMT): NaveenRaju (Tue, 19 Mar 2019 17:00:22 GMT): ndatebayo (Tue, 19 Mar 2019 17:04:32 GMT): GyoonKi (Wed, 20 Mar 2019 14:03:01 GMT): Daka (Wed, 20 Mar 2019 18:01:49 GMT): Daka (Wed, 20 Mar 2019 18:23:25 GMT): Daka (Wed, 20 Mar 2019 18:24:14 GMT): vishalnigam (Thu, 21 Mar 2019 07:44:41 GMT): vishalnigam (Thu, 21 Mar 2019 07:44:47 GMT): vishalnigam (Thu, 21 Mar 2019 07:45:01 GMT): adnanabbasktt (Thu, 21 Mar 2019 09:55:53 GMT): adnanabbasktt (Thu, 21 Mar 2019 09:55:53 GMT): Daka (Thu, 21 Mar 2019 11:24:47 GMT): randyz (Thu, 21 Mar 2019 14:24:53 GMT): BenW 11 (Thu, 21 Mar 2019 15:15:30 GMT): shubham16598 (Thu, 21 Mar 2019 16:17:31 GMT): shubham16598 (Thu, 21 Mar 2019 16:18:41 GMT): shubham16598 (Thu, 21 Mar 2019 16:18:53 GMT): shubham16598 (Thu, 21 Mar 2019 16:20:50 GMT): FilippoD (Thu, 21 Mar 2019 17:26:09 GMT): RicardoMurillo (Thu, 21 Mar 2019 20:12:51 GMT): diestrin (Thu, 21 Mar 2019 20:35:17 GMT): walmon (Thu, 21 Mar 2019 20:36:31 GMT): diestrin (Thu, 21 Mar 2019 20:58:30 GMT): sumitkumarmb (Thu, 21 Mar 2019 21:39:28 GMT): Smit95shah (Sat, 23 Mar 2019 07:19:23 GMT): YogiGhogare (Sat, 23 Mar 2019 17:56:41 GMT): SoorajNarayanan (Sun, 24 Mar 2019 07:18:47 GMT): SoorajNarayanan (Sun, 24 Mar 2019 07:19:36 GMT): SoorajNarayanan (Sun, 24 Mar 2019 07:20:31 GMT): SoorajNarayanan (Sun, 24 Mar 2019 07:21:06 GMT): amink-93 (Sun, 24 Mar 2019 14:34:18 GMT): amink-93 (Sun, 24 Mar 2019 14:36:43 GMT): mobie (Sun, 24 Mar 2019 19:21:19 GMT): ShrmaAmrit (Mon, 25 Mar 2019 12:37:24 GMT): RicardoMurillo (Tue, 26 Mar 2019 03:44:05 GMT): RicardoMurillo (Tue, 26 Mar 2019 03:44:05 GMT): narayanareddybvvr (Tue, 26 Mar 2019 05:06:26 GMT): narayanareddybvvr (Tue, 26 Mar 2019 05:06:32 GMT): AshishGujalwar (Tue, 26 Mar 2019 06:53:07 GMT): trinayanbhatt (Tue, 26 Mar 2019 10:42:42 GMT): trinayanbhatt (Tue, 26 Mar 2019 10:42:56 GMT): trinayanbhatt (Tue, 26 Mar 2019 10:43:53 GMT): salmanfarisk98 (Tue, 26 Mar 2019 11:33:02 GMT): salmanfarisk98 (Tue, 26 Mar 2019 11:48:59 GMT): salmanfarisk98 (Tue, 26 Mar 2019 11:49:17 GMT): salmanfarisk98 (Tue, 26 Mar 2019 11:49:29 GMT): SomenPalia (Tue, 26 Mar 2019 18:50:23 GMT): SomenPalia (Tue, 26 Mar 2019 18:50:31 GMT): varunagarwal (Tue, 26 Mar 2019 20:37:03 GMT): varunagarwal (Tue, 26 Mar 2019 20:38:27 GMT): varunagarwal (Tue, 26 Mar 2019 20:38:45 GMT): varunagarwal (Tue, 26 Mar 2019 20:38:54 GMT): varunagarwal (Tue, 26 Mar 2019 20:39:35 GMT): varunagarwal (Tue, 26 Mar 2019 20:40:26 GMT): albanlienart (Tue, 26 Mar 2019 22:00:44 GMT): dayubian (Tue, 26 Mar 2019 23:23:25 GMT): sooraj2189 (Wed, 27 Mar 2019 04:38:20 GMT): sooraj2189 (Wed, 27 Mar 2019 04:38:24 GMT): cgaspart (Wed, 27 Mar 2019 08:54:52 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 08:55:19 GMT): ribjethgnis (Wed, 27 Mar 2019 09:56:55 GMT): ribjethgnis (Wed, 27 Mar 2019 09:58:32 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 09:59:11 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 10:00:13 GMT): ribjethgnis (Wed, 27 Mar 2019 10:00:55 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:01:46 GMT): ribjethgnis (Wed, 27 Mar 2019 10:01:49 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:02:08 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 10:02:38 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:03:03 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:04:07 GMT): ribjethgnis (Wed, 27 Mar 2019 10:04:22 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:04:53 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 10:06:03 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:07:17 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 10:08:15 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:08:37 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:09:03 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 10:09:23 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:10:59 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 10:11:09 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 10:11:14 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:13:19 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 10:13:37 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:13:52 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:14:04 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:17:10 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:17:19 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 10:18:08 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:18:51 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:20:13 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 10:22:29 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:23:17 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:23:59 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:25:32 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 10:28:31 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:35:21 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:35:21 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 10:35:49 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:37:26 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:38:48 GMT): salmanfarisk98 (Wed, 27 Mar 2019 10:39:50 GMT): sooraj2189 (Wed, 27 Mar 2019 11:02:48 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 11:44:54 GMT): salmanfarisk98 (Wed, 27 Mar 2019 11:48:06 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 11:49:44 GMT): sooraj2189 (Wed, 27 Mar 2019 12:05:30 GMT): sooraj2189 (Wed, 27 Mar 2019 12:07:39 GMT): sooraj2189 (Wed, 27 Mar 2019 12:08:44 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:09:36 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:09:41 GMT): sooraj2189 (Wed, 27 Mar 2019 12:14:21 GMT): sooraj2189 (Wed, 27 Mar 2019 12:16:31 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:18:26 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:18:55 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:19:24 GMT): sooraj2189 (Wed, 27 Mar 2019 12:20:19 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:22:03 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:22:50 GMT): sooraj2189 (Wed, 27 Mar 2019 12:23:27 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:24:00 GMT): sooraj2189 (Wed, 27 Mar 2019 12:25:41 GMT): sooraj2189 (Wed, 27 Mar 2019 12:26:00 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:26:41 GMT): sooraj2189 (Wed, 27 Mar 2019 12:26:41 GMT): sooraj2189 (Wed, 27 Mar 2019 12:26:59 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:27:13 GMT): sooraj2189 (Wed, 27 Mar 2019 12:27:19 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:27:51 GMT): sooraj2189 (Wed, 27 Mar 2019 12:29:33 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:30:01 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:31:10 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:31:42 GMT): sooraj2189 (Wed, 27 Mar 2019 12:33:44 GMT): benjamin.verhaegen (Wed, 27 Mar 2019 12:36:31 GMT): sooraj2189 (Wed, 27 Mar 2019 12:49:23 GMT): irkoch (Wed, 27 Mar 2019 13:26:48 GMT): JoshCook (Wed, 27 Mar 2019 17:50:26 GMT): rrishmawi (Thu, 28 Mar 2019 12:06:18 GMT): pavan876 (Thu, 28 Mar 2019 14:47:32 GMT): pavan876 (Thu, 28 Mar 2019 14:47:34 GMT): benjamin.verhaegen (Thu, 28 Mar 2019 14:50:37 GMT): pavan876 (Thu, 28 Mar 2019 15:20:09 GMT): itsNebula (Thu, 28 Mar 2019 19:09:49 GMT): itsNebula (Thu, 28 Mar 2019 19:29:08 GMT): itsNebula (Thu, 28 Mar 2019 19:29:08 GMT): itsNebula (Thu, 28 Mar 2019 19:29:08 GMT): itsNebula (Thu, 28 Mar 2019 19:29:36 GMT): Harivenkateshsj (Fri, 29 Mar 2019 02:36:17 GMT): Harivenkateshsj (Fri, 29 Mar 2019 02:37:02 GMT): Harivenkateshsj (Fri, 29 Mar 2019 02:43:30 GMT): CieloZou (Fri, 29 Mar 2019 04:40:12 GMT): CieloZou (Fri, 29 Mar 2019 04:59:16 GMT): CieloZou (Fri, 29 Mar 2019 05:02:15 GMT): itsNebula (Fri, 29 Mar 2019 05:55:45 GMT): itsNebula (Fri, 29 Mar 2019 05:58:51 GMT): benjamin.verhaegen (Fri, 29 Mar 2019 06:56:55 GMT): itsNebula (Fri, 29 Mar 2019 07:08:00 GMT): benjamin.verhaegen (Fri, 29 Mar 2019 07:10:44 GMT): itsNebula (Fri, 29 Mar 2019 07:11:29 GMT): benjamin.verhaegen (Fri, 29 Mar 2019 07:15:04 GMT): BChain_Dev (Fri, 29 Mar 2019 07:16:06 GMT): BChain_Dev (Fri, 29 Mar 2019 07:17:09 GMT): benjamin.verhaegen (Fri, 29 Mar 2019 07:17:34 GMT): BChain_Dev (Fri, 29 Mar 2019 07:18:49 GMT): itsNebula (Fri, 29 Mar 2019 07:18:54 GMT): benjamin.verhaegen (Fri, 29 Mar 2019 07:19:41 GMT): itsNebula (Fri, 29 Mar 2019 07:25:05 GMT): itsNebula (Fri, 29 Mar 2019 07:25:51 GMT): benjamin.verhaegen (Fri, 29 Mar 2019 07:29:55 GMT): julian (Fri, 29 Mar 2019 10:48:21 GMT): ribjethgnis (Fri, 29 Mar 2019 12:48:07 GMT): ribjethgnis (Fri, 29 Mar 2019 12:48:11 GMT): ribjethgnis (Fri, 29 Mar 2019 12:48:49 GMT): CieloZou (Fri, 29 Mar 2019 13:18:32 GMT): CieloZou (Fri, 29 Mar 2019 13:23:27 GMT): CieloZou (Fri, 29 Mar 2019 13:31:46 GMT): CieloZou (Fri, 29 Mar 2019 13:31:52 GMT): ViveikYadav (Sat, 30 Mar 2019 10:03:23 GMT): mrethan (Sat, 30 Mar 2019 14:56:52 GMT): mrethan (Sat, 30 Mar 2019 14:57:26 GMT): Daka (Sat, 30 Mar 2019 14:59:14 GMT): Daka (Sat, 30 Mar 2019 14:59:38 GMT): mrethan (Sat, 30 Mar 2019 15:00:23 GMT): mrethan (Sat, 30 Mar 2019 15:01:55 GMT): Daka (Sat, 30 Mar 2019 15:03:05 GMT): Daka (Sat, 30 Mar 2019 15:03:22 GMT): mrethan (Sat, 30 Mar 2019 15:07:04 GMT): mrethan (Sat, 30 Mar 2019 15:07:06 GMT): mrethan (Sat, 30 Mar 2019 15:07:26 GMT): Daka (Sat, 30 Mar 2019 15:07:49 GMT): mrethan (Sat, 30 Mar 2019 15:08:12 GMT): mrethan (Sat, 30 Mar 2019 15:08:17 GMT): Daka (Sat, 30 Mar 2019 15:08:27 GMT): Daka (Sat, 30 Mar 2019 15:09:47 GMT): mrethan (Sat, 30 Mar 2019 15:10:14 GMT): Daka (Sat, 30 Mar 2019 15:10:39 GMT): mrethan (Sat, 30 Mar 2019 15:12:46 GMT): Daka (Sat, 30 Mar 2019 15:13:41 GMT): Daka (Sat, 30 Mar 2019 15:13:41 GMT): Daka (Sat, 30 Mar 2019 15:17:33 GMT): mrethan (Sat, 30 Mar 2019 15:21:13 GMT): mrethan (Sat, 30 Mar 2019 15:22:21 GMT): Daka (Sat, 30 Mar 2019 15:23:41 GMT): mrethan (Sat, 30 Mar 2019 15:23:56 GMT): Daka (Sat, 30 Mar 2019 15:24:12 GMT): Daka (Sat, 30 Mar 2019 15:24:53 GMT): Daka (Sat, 30 Mar 2019 15:24:53 GMT): Daka (Sat, 30 Mar 2019 15:24:59 GMT): Daka (Sat, 30 Mar 2019 15:25:08 GMT): mrethan (Sat, 30 Mar 2019 15:26:51 GMT): mrethan (Sat, 30 Mar 2019 15:34:22 GMT): Daka (Sat, 30 Mar 2019 15:35:03 GMT): Daka (Sat, 30 Mar 2019 15:36:57 GMT): Daka (Sat, 30 Mar 2019 15:37:58 GMT): mrethan (Sat, 30 Mar 2019 15:38:44 GMT): Daka (Sat, 30 Mar 2019 15:42:19 GMT): Daka (Sat, 30 Mar 2019 15:44:03 GMT): mrethan (Sat, 30 Mar 2019 15:44:24 GMT): mrethan (Sat, 30 Mar 2019 16:05:34 GMT): mrethan (Sat, 30 Mar 2019 16:05:39 GMT): mrethan (Sat, 30 Mar 2019 16:06:31 GMT): mrethan (Sat, 30 Mar 2019 16:07:46 GMT): mrethan (Sat, 30 Mar 2019 16:07:46 GMT): mrethan (Sat, 30 Mar 2019 16:09:14 GMT): Daka (Sat, 30 Mar 2019 16:13:21 GMT): mrethan (Sat, 30 Mar 2019 16:14:03 GMT): Daka (Sat, 30 Mar 2019 16:14:13 GMT): mrethan (Sat, 30 Mar 2019 16:14:18 GMT): Daka (Sat, 30 Mar 2019 16:14:51 GMT): mrethan (Sat, 30 Mar 2019 17:22:31 GMT): mrethan (Sat, 30 Mar 2019 17:22:33 GMT): mrethan (Sat, 30 Mar 2019 17:24:48 GMT): mrethan (Sat, 30 Mar 2019 17:30:15 GMT): mrethan (Sat, 30 Mar 2019 17:30:50 GMT): mrethan (Sat, 30 Mar 2019 17:30:50 GMT): mrethan (Sat, 30 Mar 2019 17:53:16 GMT): aswinavofficial (Sat, 30 Mar 2019 21:46:35 GMT): ahy (Sun, 31 Mar 2019 06:26:00 GMT): ahy (Sun, 31 Mar 2019 06:33:19 GMT): ahy (Sun, 31 Mar 2019 06:33:19 GMT): deceive3w (Sun, 31 Mar 2019 08:44:32 GMT): Daka (Sun, 31 Mar 2019 10:35:20 GMT): Daka (Sun, 31 Mar 2019 10:36:34 GMT): mrethan (Sun, 31 Mar 2019 17:57:51 GMT): mrethan (Sun, 31 Mar 2019 17:58:26 GMT): ahy (Sun, 31 Mar 2019 18:33:59 GMT): amink-93 (Sun, 31 Mar 2019 18:53:23 GMT): amink-93 (Sun, 31 Mar 2019 18:53:58 GMT): amink-93 (Sun, 31 Mar 2019 18:55:16 GMT): RobiHarid (Sun, 31 Mar 2019 19:01:27 GMT): RobiHarid (Sun, 31 Mar 2019 19:01:35 GMT): VictoriaW (Sun, 31 Mar 2019 19:20:35 GMT): amink-93 (Sun, 31 Mar 2019 21:35:05 GMT): ahy (Sun, 31 Mar 2019 23:12:34 GMT): ahy (Sun, 31 Mar 2019 23:12:34 GMT): ahy (Sun, 31 Mar 2019 23:13:41 GMT): ahy (Sun, 31 Mar 2019 23:13:41 GMT): VictoriaW (Mon, 01 Apr 2019 06:16:26 GMT): SoorajNarayanan (Mon, 01 Apr 2019 06:34:00 GMT): SoorajNarayanan (Mon, 01 Apr 2019 06:34:13 GMT): sunit.versatile (Mon, 01 Apr 2019 08:13:15 GMT): benjamin.verhaegen (Mon, 01 Apr 2019 09:21:41 GMT): athenablue27 (Mon, 01 Apr 2019 17:10:03 GMT): athenablue27 (Mon, 01 Apr 2019 17:14:24 GMT): amink-93 (Mon, 01 Apr 2019 22:18:21 GMT): walmon (Tue, 02 Apr 2019 01:02:59 GMT): iron-js (Tue, 02 Apr 2019 02:40:25 GMT): iron-js (Tue, 02 Apr 2019 02:43:57 GMT): GthmR (Tue, 02 Apr 2019 11:57:01 GMT): debajyoti-xyz (Tue, 02 Apr 2019 12:16:25 GMT): NEWNEW (Tue, 02 Apr 2019 16:40:42 GMT): NEWNEW (Tue, 02 Apr 2019 16:43:02 GMT): amink-93 (Tue, 02 Apr 2019 17:01:41 GMT): patrick.dacoliat (Tue, 02 Apr 2019 21:03:15 GMT): patrick.dacoliat (Tue, 02 Apr 2019 21:07:47 GMT): AkhilKura (Wed, 03 Apr 2019 04:19:34 GMT): AndresMartinezMelgar.itcl (Wed, 03 Apr 2019 07:01:26 GMT): AndresMartinezMelgar.itcl (Wed, 03 Apr 2019 07:01:41 GMT): jozefchmelar (Wed, 03 Apr 2019 07:41:12 GMT): jozefchmelar (Wed, 03 Apr 2019 07:45:35 GMT): davidkel (Wed, 03 Apr 2019 07:54:58 GMT): davidkel (Wed, 03 Apr 2019 07:54:58 GMT): BenW 11 (Wed, 03 Apr 2019 09:43:44 GMT): benjamin.verhaegen (Wed, 03 Apr 2019 11:39:24 GMT): ahy (Wed, 03 Apr 2019 17:22:53 GMT): ahy (Wed, 03 Apr 2019 17:23:10 GMT): ribjethgnis (Thu, 04 Apr 2019 06:18:20 GMT): ribjethgnis (Thu, 04 Apr 2019 08:25:22 GMT): shekharrajak (Thu, 04 Apr 2019 09:09:53 GMT): benjamin.verhaegen (Thu, 04 Apr 2019 11:17:42 GMT): bilalahmed (Thu, 04 Apr 2019 11:28:37 GMT): bilalahmed (Thu, 04 Apr 2019 11:29:30 GMT): bilalahmed (Thu, 04 Apr 2019 11:29:58 GMT): kjensen (Thu, 04 Apr 2019 13:50:23 GMT): kjensen (Thu, 04 Apr 2019 16:16:51 GMT): varunagarwal (Thu, 04 Apr 2019 18:59:33 GMT): varunagarwal (Thu, 04 Apr 2019 19:00:21 GMT): BChain_Dev (Fri, 05 Apr 2019 08:16:06 GMT): BChain_Dev (Fri, 05 Apr 2019 08:16:06 GMT): anguyen (Fri, 05 Apr 2019 12:29:00 GMT): SalmanKhan5 (Sat, 06 Apr 2019 10:46:05 GMT): KevinBai (Sat, 06 Apr 2019 14:57:33 GMT): Saif_Ali_Kamal (Sun, 07 Apr 2019 10:34:25 GMT): utkarshtrivedi56 (Sun, 07 Apr 2019 17:17:11 GMT): utkarshtrivedi56 (Sun, 07 Apr 2019 17:18:45 GMT): mallikarjunasai995 (Sun, 07 Apr 2019 18:28:59 GMT): hn77 (Mon, 08 Apr 2019 01:19:35 GMT): hn77 (Mon, 08 Apr 2019 01:19:51 GMT): ahy (Mon, 08 Apr 2019 03:41:27 GMT): karanp0987 (Mon, 08 Apr 2019 05:41:48 GMT): karanp0987 (Mon, 08 Apr 2019 05:42:21 GMT): benjamin.verhaegen (Mon, 08 Apr 2019 06:46:49 GMT): ShimingLiu (Mon, 08 Apr 2019 07:46:05 GMT): ahy (Mon, 08 Apr 2019 07:51:09 GMT): benjamin.verhaegen (Mon, 08 Apr 2019 07:54:16 GMT): benjamin.verhaegen (Mon, 08 Apr 2019 09:13:26 GMT): benjamin.verhaegen (Mon, 08 Apr 2019 09:13:48 GMT): PrakritiSharma (Mon, 08 Apr 2019 09:40:13 GMT): UnaiUrkiaga (Mon, 08 Apr 2019 09:43:10 GMT): WebKruncher (Mon, 08 Apr 2019 14:34:38 GMT): benjamin.verhaegen (Tue, 09 Apr 2019 06:44:29 GMT): bilalahmed (Tue, 09 Apr 2019 07:00:30 GMT): bilalahmed (Tue, 09 Apr 2019 07:00:46 GMT): ribjethgnis (Tue, 09 Apr 2019 07:47:55 GMT): benjamin.verhaegen (Tue, 09 Apr 2019 08:03:25 GMT): garunkumar450 (Tue, 09 Apr 2019 10:53:40 GMT): garunkumar450 (Tue, 09 Apr 2019 10:54:10 GMT): WebKruncher (Tue, 09 Apr 2019 10:56:44 GMT): benjamin.verhaegen (Tue, 09 Apr 2019 10:58:57 GMT): WebKruncher (Tue, 09 Apr 2019 11:41:48 GMT): WebKruncher (Tue, 09 Apr 2019 11:41:48 GMT): deelthor (Tue, 09 Apr 2019 12:16:49 GMT): davidkel (Tue, 09 Apr 2019 13:03:58 GMT): deelthor (Tue, 09 Apr 2019 13:11:17 GMT): davidkel (Tue, 09 Apr 2019 13:13:18 GMT): deelthor (Tue, 09 Apr 2019 13:16:46 GMT): nicola.attico (Tue, 09 Apr 2019 17:23:28 GMT): nicola.attico (Tue, 09 Apr 2019 17:24:58 GMT): JoseLedezma (Tue, 09 Apr 2019 18:12:47 GMT): JoseLedezma (Tue, 09 Apr 2019 18:15:44 GMT): JoseLedezma (Tue, 09 Apr 2019 18:16:26 GMT): JoseLedezma (Tue, 09 Apr 2019 18:16:46 GMT): JoseLedezma (Tue, 09 Apr 2019 18:17:09 GMT): JoseLedezma (Tue, 09 Apr 2019 18:17:09 GMT): benjamin.verhaegen (Wed, 10 Apr 2019 06:23:00 GMT): nakulgr13 (Wed, 10 Apr 2019 06:37:28 GMT): UnaiUrkiaga (Wed, 10 Apr 2019 06:53:25 GMT): benjamin.verhaegen (Wed, 10 Apr 2019 07:08:13 GMT): RafiqAhmed (Wed, 10 Apr 2019 07:28:18 GMT): RafiqAhmed (Wed, 10 Apr 2019 07:36:33 GMT): RafiqAhmed (Wed, 10 Apr 2019 07:36:33 GMT): UnaiUrkiaga (Wed, 10 Apr 2019 07:48:56 GMT): davidkel (Wed, 10 Apr 2019 07:59:11 GMT): RafiqAhmed (Wed, 10 Apr 2019 08:12:21 GMT): benjamin.verhaegen (Wed, 10 Apr 2019 08:14:55 GMT): UnaiUrkiaga (Wed, 10 Apr 2019 08:23:31 GMT): UnaiUrkiaga (Wed, 10 Apr 2019 08:23:45 GMT): UnaiUrkiaga (Wed, 10 Apr 2019 08:23:45 GMT): UnaiUrkiaga (Wed, 10 Apr 2019 08:23:48 GMT): UnaiUrkiaga (Wed, 10 Apr 2019 08:23:48 GMT): benjamin.verhaegen (Wed, 10 Apr 2019 08:26:30 GMT): RafiqAhmed (Wed, 10 Apr 2019 08:29:24 GMT): hn77 (Wed, 10 Apr 2019 09:20:13 GMT): chengloy (Wed, 10 Apr 2019 09:22:20 GMT): MichaelMarcotrigiano (Wed, 10 Apr 2019 10:05:27 GMT): MichaelMarcotrigiano (Wed, 10 Apr 2019 10:05:40 GMT): archana209 (Wed, 10 Apr 2019 10:06:22 GMT): MichaelMarcotrigiano (Wed, 10 Apr 2019 10:07:21 GMT): MichaelMarcotrigiano (Wed, 10 Apr 2019 10:07:25 GMT): MichaelMarcotrigiano (Wed, 10 Apr 2019 10:07:25 GMT): chengloy (Wed, 10 Apr 2019 10:24:13 GMT): benjamin.verhaegen (Wed, 10 Apr 2019 11:01:57 GMT): benjamin.verhaegen (Wed, 10 Apr 2019 11:03:15 GMT): benjamin.verhaegen (Wed, 10 Apr 2019 11:17:59 GMT): hn77 (Wed, 10 Apr 2019 12:47:42 GMT): alokkv (Wed, 10 Apr 2019 12:48:44 GMT): bilalahmed (Wed, 10 Apr 2019 13:02:03 GMT): davidkel (Wed, 10 Apr 2019 13:03:20 GMT): alokkv (Wed, 10 Apr 2019 13:08:51 GMT): alokkv (Wed, 10 Apr 2019 13:08:51 GMT): alokkv (Wed, 10 Apr 2019 13:10:29 GMT): CieloZou (Wed, 10 Apr 2019 13:10:46 GMT): CieloZou (Wed, 10 Apr 2019 13:11:13 GMT): CieloZou (Wed, 10 Apr 2019 13:11:39 GMT): davidkel (Wed, 10 Apr 2019 13:11:42 GMT): alokkv (Wed, 10 Apr 2019 13:12:17 GMT): CieloZou (Wed, 10 Apr 2019 13:13:00 GMT): alokkv (Wed, 10 Apr 2019 13:13:23 GMT): davidkel (Wed, 10 Apr 2019 13:14:22 GMT): bilalahmed (Wed, 10 Apr 2019 13:14:27 GMT): alokkv (Wed, 10 Apr 2019 13:14:45 GMT): CieloZou (Wed, 10 Apr 2019 13:15:47 GMT): alokkv (Wed, 10 Apr 2019 13:16:29 GMT): davidkel (Wed, 10 Apr 2019 13:16:45 GMT): alokkv (Wed, 10 Apr 2019 13:17:21 GMT): davidkel (Wed, 10 Apr 2019 13:17:57 GMT): alokkv (Wed, 10 Apr 2019 13:19:05 GMT): itsNebula (Wed, 10 Apr 2019 16:28:23 GMT): JoseLedezma (Wed, 10 Apr 2019 16:28:46 GMT): JoseLedezma (Wed, 10 Apr 2019 16:28:50 GMT): itsNebula (Wed, 10 Apr 2019 16:30:26 GMT): JoseLedezma (Wed, 10 Apr 2019 16:31:40 GMT): itsNebula (Wed, 10 Apr 2019 16:33:56 GMT): JoseLedezma (Wed, 10 Apr 2019 16:35:11 GMT): itsNebula (Wed, 10 Apr 2019 16:36:10 GMT): MichaelMarcotrigiano (Wed, 10 Apr 2019 16:43:16 GMT): ahy (Wed, 10 Apr 2019 18:59:59 GMT): ahy (Wed, 10 Apr 2019 19:00:38 GMT): ahy (Wed, 10 Apr 2019 19:00:40 GMT): UnaiUrkiaga (Thu, 11 Apr 2019 05:57:19 GMT): VaibhavVerma (Thu, 11 Apr 2019 06:19:41 GMT): VaibhavVerma (Thu, 11 Apr 2019 06:20:24 GMT): VaibhavVerma (Thu, 11 Apr 2019 06:21:29 GMT): VaibhavVerma (Thu, 11 Apr 2019 06:21:29 GMT): benjamin.verhaegen (Thu, 11 Apr 2019 06:22:10 GMT): VaibhavVerma (Thu, 11 Apr 2019 06:37:49 GMT): benjamin.verhaegen (Thu, 11 Apr 2019 06:42:37 GMT): VaibhavVerma (Thu, 11 Apr 2019 06:54:00 GMT): benjamin.verhaegen (Thu, 11 Apr 2019 06:55:15 GMT): bilalahmed (Thu, 11 Apr 2019 06:55:54 GMT): VaibhavVerma (Thu, 11 Apr 2019 07:19:48 GMT): benjamin.verhaegen (Thu, 11 Apr 2019 07:30:06 GMT): benjamin.verhaegen (Thu, 11 Apr 2019 07:32:00 GMT): VaibhavVerma (Thu, 11 Apr 2019 07:36:50 GMT): benjamin.verhaegen (Thu, 11 Apr 2019 07:43:20 GMT): VaibhavVerma (Thu, 11 Apr 2019 07:53:02 GMT): benjamin.verhaegen (Thu, 11 Apr 2019 09:32:23 GMT): Vasanth (Thu, 11 Apr 2019 11:13:11 GMT): Vasanth (Thu, 11 Apr 2019 11:13:26 GMT): anaswar (Thu, 11 Apr 2019 11:31:59 GMT): anaswar (Thu, 11 Apr 2019 11:31:59 GMT): Robin86543 (Thu, 11 Apr 2019 11:41:34 GMT): Robin86543 (Thu, 11 Apr 2019 11:44:30 GMT): MichaelMarcotrigiano (Thu, 11 Apr 2019 13:56:47 GMT): MichaelMarcotrigiano (Thu, 11 Apr 2019 13:59:17 GMT): MichaelMarcotrigiano (Thu, 11 Apr 2019 14:32:25 GMT): MichaelMarcotrigiano (Thu, 11 Apr 2019 14:32:25 GMT): MichaelMarcotrigiano (Thu, 11 Apr 2019 14:32:25 GMT): MichaelMarcotrigiano (Thu, 11 Apr 2019 14:32:25 GMT): wangrangli (Fri, 12 Apr 2019 03:28:58 GMT): erictran1910 (Fri, 12 Apr 2019 04:27:08 GMT): erictran1910 (Fri, 12 Apr 2019 04:27:33 GMT): erictran1910 (Fri, 12 Apr 2019 04:27:51 GMT): erictran1910 (Fri, 12 Apr 2019 04:30:30 GMT): mc (Fri, 12 Apr 2019 10:56:01 GMT): WebKruncher (Fri, 12 Apr 2019 14:45:34 GMT): WebKruncher (Fri, 12 Apr 2019 14:46:37 GMT): davidkel (Fri, 12 Apr 2019 15:40:48 GMT): WebKruncher (Fri, 12 Apr 2019 15:45:06 GMT): JoseLedezma (Fri, 12 Apr 2019 15:47:37 GMT): WebKruncher (Fri, 12 Apr 2019 19:11:34 GMT): SiddhantRawat (Sat, 13 Apr 2019 05:06:54 GMT): SiddhantRawat (Sat, 13 Apr 2019 05:22:17 GMT): AnasBaigMughal (Sat, 13 Apr 2019 07:28:08 GMT): WebKruncher (Sun, 14 Apr 2019 18:56:33 GMT): ahy (Sun, 14 Apr 2019 22:44:30 GMT): ahy (Sun, 14 Apr 2019 22:45:05 GMT): ribjethgnis (Mon, 15 Apr 2019 07:17:45 GMT): hn77 (Mon, 15 Apr 2019 10:29:16 GMT): WebKruncher (Mon, 15 Apr 2019 15:58:23 GMT): Robin86543 (Mon, 15 Apr 2019 16:47:06 GMT): Robin86543 (Mon, 15 Apr 2019 16:47:10 GMT): Robin86543 (Mon, 15 Apr 2019 16:48:41 GMT): Alecgilchrist (Mon, 15 Apr 2019 22:28:50 GMT): BChain_Dev (Tue, 16 Apr 2019 08:21:29 GMT): benjamin.verhaegen (Tue, 16 Apr 2019 08:46:44 GMT): itarunachalam (Tue, 16 Apr 2019 08:49:30 GMT): bilalo (Tue, 16 Apr 2019 13:38:13 GMT): bilalo (Tue, 16 Apr 2019 13:38:19 GMT): bilalo (Tue, 16 Apr 2019 13:38:41 GMT): malof (Tue, 16 Apr 2019 14:02:02 GMT): lucianosilva44 (Tue, 16 Apr 2019 14:05:46 GMT): AnasBaigMughal (Tue, 16 Apr 2019 14:50:57 GMT): lucianosilva44 (Tue, 16 Apr 2019 19:36:30 GMT): CieloZou (Wed, 17 Apr 2019 03:07:41 GMT): CieloZou (Wed, 17 Apr 2019 03:10:35 GMT): CieloZou (Wed, 17 Apr 2019 03:12:45 GMT): CieloZou (Wed, 17 Apr 2019 03:12:59 GMT): CieloZou (Wed, 17 Apr 2019 03:13:38 GMT): CieloZou (Wed, 17 Apr 2019 03:14:33 GMT): CieloZou (Wed, 17 Apr 2019 03:15:21 GMT): CieloZou (Wed, 17 Apr 2019 03:15:49 GMT): CieloZou (Wed, 17 Apr 2019 03:17:26 GMT): CieloZou (Wed, 17 Apr 2019 03:18:11 GMT): CieloZou (Wed, 17 Apr 2019 03:19:20 GMT): CieloZou (Wed, 17 Apr 2019 03:19:26 GMT): CieloZou (Wed, 17 Apr 2019 03:19:59 GMT): duy3991 (Wed, 17 Apr 2019 03:22:16 GMT): duy3991 (Wed, 17 Apr 2019 03:22:16 GMT): duy3991 (Wed, 17 Apr 2019 03:22:16 GMT): DarwinHarianto (Wed, 17 Apr 2019 03:45:38 GMT): CieloZou (Wed, 17 Apr 2019 07:18:40 GMT): CieloZou (Wed, 17 Apr 2019 07:20:36 GMT): CieloZou (Wed, 17 Apr 2019 07:32:08 GMT): CieloZou (Wed, 17 Apr 2019 07:32:49 GMT): CieloZou (Wed, 17 Apr 2019 07:34:19 GMT): DarwinHarianto (Wed, 17 Apr 2019 07:50:06 GMT): DarwinHarianto (Wed, 17 Apr 2019 07:50:06 GMT): CieloZou (Wed, 17 Apr 2019 08:35:57 GMT): CieloZou (Wed, 17 Apr 2019 08:36:17 GMT): DarwinHarianto (Wed, 17 Apr 2019 08:48:04 GMT): Lana2019 (Wed, 17 Apr 2019 10:21:26 GMT): Lana2019 (Wed, 17 Apr 2019 10:21:30 GMT): davidkel (Wed, 17 Apr 2019 11:42:16 GMT): davidkel (Wed, 17 Apr 2019 11:42:16 GMT): noursaadallah (Wed, 17 Apr 2019 12:42:12 GMT): WebKruncher (Wed, 17 Apr 2019 14:55:20 GMT): cgaspart (Wed, 17 Apr 2019 14:59:23 GMT): cgaspart (Wed, 17 Apr 2019 14:59:23 GMT): davidkel (Wed, 17 Apr 2019 15:00:32 GMT): brheverson (Wed, 17 Apr 2019 15:36:13 GMT): brheverson (Wed, 17 Apr 2019 15:39:35 GMT): JoseLedezma (Wed, 17 Apr 2019 16:31:24 GMT): WebKruncher (Wed, 17 Apr 2019 17:18:42 GMT): WebKruncher (Wed, 17 Apr 2019 19:39:04 GMT): hn77 (Thu, 18 Apr 2019 07:06:02 GMT): davidkel (Thu, 18 Apr 2019 07:34:13 GMT): davidkel (Thu, 18 Apr 2019 07:34:13 GMT): droyer (Thu, 18 Apr 2019 07:44:52 GMT): droyer (Thu, 18 Apr 2019 07:45:44 GMT): viralshah1494 (Thu, 18 Apr 2019 10:36:14 GMT): viralshah1494 (Thu, 18 Apr 2019 10:36:21 GMT): RyanBalmain (Thu, 18 Apr 2019 10:58:21 GMT): RyanBalmain (Thu, 18 Apr 2019 11:06:22 GMT): WebKruncher (Thu, 18 Apr 2019 13:05:18 GMT): davidkel (Thu, 18 Apr 2019 13:10:38 GMT): davidkel (Thu, 18 Apr 2019 13:10:38 GMT): WebKruncher (Thu, 18 Apr 2019 13:27:55 GMT): davidkel (Thu, 18 Apr 2019 13:39:13 GMT): WebKruncher (Thu, 18 Apr 2019 13:39:49 GMT): davidkel (Thu, 18 Apr 2019 13:42:13 GMT): davidkel (Thu, 18 Apr 2019 13:43:12 GMT): WebKruncher (Thu, 18 Apr 2019 13:43:23 GMT): WebKruncher (Thu, 18 Apr 2019 13:44:19 GMT): davidkel (Thu, 18 Apr 2019 13:47:19 GMT): WebKruncher (Thu, 18 Apr 2019 13:49:52 GMT): WebKruncher (Thu, 18 Apr 2019 13:58:47 GMT): davidkel (Thu, 18 Apr 2019 14:06:25 GMT): AnasBaigMughal (Thu, 18 Apr 2019 15:32:50 GMT): ufosky (Thu, 18 Apr 2019 16:40:51 GMT): Robin86543 (Thu, 18 Apr 2019 20:54:32 GMT): Robin86543 (Thu, 18 Apr 2019 20:54:46 GMT): Robin86543 (Thu, 18 Apr 2019 21:09:40 GMT): patrick.dacoliat (Thu, 18 Apr 2019 21:11:39 GMT): AnasBaigMughal (Thu, 18 Apr 2019 21:30:32 GMT): PaulA (Fri, 19 Apr 2019 05:42:41 GMT): AnasBaigMughal (Fri, 19 Apr 2019 09:03:09 GMT): aswinavofficial (Fri, 19 Apr 2019 10:23:20 GMT): aswinavofficial (Fri, 19 Apr 2019 10:23:59 GMT): aswinavofficial (Fri, 19 Apr 2019 10:24:45 GMT): aswinavofficial (Fri, 19 Apr 2019 10:24:49 GMT): viralshah1494 (Fri, 19 Apr 2019 12:12:54 GMT): patrick.dacoliat (Fri, 19 Apr 2019 13:38:52 GMT): schaffer (Fri, 19 Apr 2019 14:12:31 GMT): tocm (Sat, 20 Apr 2019 03:06:59 GMT): tocm (Sat, 20 Apr 2019 03:08:03 GMT): tocm (Sat, 20 Apr 2019 03:08:03 GMT): tocm (Sat, 20 Apr 2019 03:08:03 GMT): tocm (Sat, 20 Apr 2019 03:08:03 GMT): CieloZou (Sat, 20 Apr 2019 03:33:05 GMT): CieloZou (Sat, 20 Apr 2019 03:33:05 GMT): CieloZou (Sat, 20 Apr 2019 03:33:05 GMT): CieloZou (Sat, 20 Apr 2019 03:33:05 GMT): CieloZou (Sat, 20 Apr 2019 03:33:58 GMT): CieloZou (Sat, 20 Apr 2019 05:01:03 GMT): CieloZou (Sat, 20 Apr 2019 08:11:40 GMT): tennenjl (Sat, 20 Apr 2019 18:50:04 GMT): dselman (Sat, 20 Apr 2019 20:13:23 GMT): dselman (Sun, 21 Apr 2019 05:25:06 GMT): dselman (Sun, 21 Apr 2019 05:25:06 GMT): dselman (Sun, 21 Apr 2019 05:28:28 GMT): dselman (Sun, 21 Apr 2019 05:28:50 GMT): dselman (Sun, 21 Apr 2019 05:29:30 GMT): CieloZou (Sun, 21 Apr 2019 08:34:18 GMT): afonsobspinto (Sun, 21 Apr 2019 17:02:00 GMT): kevinyap (Mon, 22 Apr 2019 02:21:42 GMT): duy3991 (Mon, 22 Apr 2019 07:40:04 GMT): hnampk (Tue, 23 Apr 2019 02:59:44 GMT): PrakritiSharma (Tue, 23 Apr 2019 09:07:54 GMT): PrakritiSharma (Tue, 23 Apr 2019 09:12:40 GMT): PrakritiSharma (Tue, 23 Apr 2019 09:14:13 GMT): AnkurSagar (Tue, 23 Apr 2019 13:46:27 GMT): AnkurSagar (Tue, 23 Apr 2019 13:46:55 GMT): CT123 (Tue, 23 Apr 2019 15:31:03 GMT): itsNebula (Tue, 23 Apr 2019 19:39:47 GMT): itsNebula (Tue, 23 Apr 2019 19:40:08 GMT): itsNebula (Tue, 23 Apr 2019 19:41:07 GMT): DarwinHarianto (Wed, 24 Apr 2019 01:24:38 GMT): DarwinHarianto (Wed, 24 Apr 2019 01:24:55 GMT): SonDang (Wed, 24 Apr 2019 02:02:41 GMT): SonDang (Wed, 24 Apr 2019 02:06:10 GMT): SonDang (Wed, 24 Apr 2019 02:27:59 GMT): ahy (Wed, 24 Apr 2019 05:13:39 GMT): sbhv13 (Wed, 24 Apr 2019 05:57:56 GMT): sbhv13 (Wed, 24 Apr 2019 05:59:39 GMT): DarwinHarianto (Wed, 24 Apr 2019 06:18:11 GMT): DarwinHarianto (Wed, 24 Apr 2019 06:18:32 GMT): DarwinHarianto (Wed, 24 Apr 2019 06:19:27 GMT): ahy (Wed, 24 Apr 2019 06:20:32 GMT): sbhv13 (Wed, 24 Apr 2019 06:24:23 GMT): SonDang (Wed, 24 Apr 2019 06:26:45 GMT): DarwinHarianto (Wed, 24 Apr 2019 06:28:56 GMT): AnasBaigMughal (Wed, 24 Apr 2019 06:49:55 GMT): yyyyyyy9 (Wed, 24 Apr 2019 07:24:00 GMT): ahy (Wed, 24 Apr 2019 18:35:11 GMT): ahy (Wed, 24 Apr 2019 18:37:55 GMT): patrick.dacoliat (Wed, 24 Apr 2019 18:53:37 GMT): bilalahmed (Thu, 25 Apr 2019 07:18:59 GMT): ahy (Fri, 26 Apr 2019 00:15:28 GMT): DarwinHarianto (Fri, 26 Apr 2019 02:54:11 GMT): benjamin.verhaegen (Fri, 26 Apr 2019 06:37:41 GMT): Amanullah68 (Fri, 26 Apr 2019 07:39:35 GMT): Amanullah68 (Fri, 26 Apr 2019 07:40:12 GMT): Amanullah68 (Fri, 26 Apr 2019 07:40:21 GMT): Amanullah68 (Fri, 26 Apr 2019 07:41:33 GMT): Amanullah68 (Fri, 26 Apr 2019 07:41:33 GMT): benjamin.verhaegen (Fri, 26 Apr 2019 08:09:44 GMT): UnaiUrkiaga (Fri, 26 Apr 2019 08:12:30 GMT): UnaiUrkiaga (Fri, 26 Apr 2019 08:16:25 GMT): Amanullah68 (Fri, 26 Apr 2019 12:25:41 GMT): benjamin.verhaegen (Fri, 26 Apr 2019 12:27:10 GMT): Amanullah68 (Fri, 26 Apr 2019 12:29:05 GMT): Amanullah68 (Fri, 26 Apr 2019 12:29:33 GMT): benjamin.verhaegen (Fri, 26 Apr 2019 12:31:25 GMT): Amanullah68 (Fri, 26 Apr 2019 12:35:36 GMT): JoseLedezma (Fri, 26 Apr 2019 17:14:47 GMT): JoseLedezma (Fri, 26 Apr 2019 17:15:22 GMT): CieloZou (Sat, 27 Apr 2019 13:30:35 GMT): CieloZou (Sat, 27 Apr 2019 13:30:35 GMT): CieloZou (Sat, 27 Apr 2019 13:30:35 GMT): CieloZou (Sat, 27 Apr 2019 13:30:35 GMT): demiban (Sun, 28 Apr 2019 04:00:27 GMT): benjamin.verhaegen (Mon, 29 Apr 2019 06:58:55 GMT): mahmoud_baghani (Mon, 29 Apr 2019 08:01:15 GMT): mahmoud_baghani (Mon, 29 Apr 2019 08:49:13 GMT): cgaspart (Mon, 29 Apr 2019 09:49:43 GMT): PrakritiSharma (Mon, 29 Apr 2019 10:14:05 GMT): PrakritiSharma (Mon, 29 Apr 2019 10:14:05 GMT): UnaiUrkiaga (Mon, 29 Apr 2019 13:57:35 GMT): Mehak (Mon, 29 Apr 2019 18:01:42 GMT): djraj (Tue, 30 Apr 2019 01:17:40 GMT): ahy (Tue, 30 Apr 2019 04:05:58 GMT): ahy (Tue, 30 Apr 2019 04:06:00 GMT): cgaspart (Tue, 30 Apr 2019 12:17:25 GMT): chinmaym (Wed, 01 May 2019 02:40:16 GMT): chinmaym (Wed, 01 May 2019 02:41:24 GMT): helpme (Wed, 01 May 2019 02:41:27 GMT): chinmaym (Wed, 01 May 2019 02:43:08 GMT): HyperFabrics (Wed, 01 May 2019 17:53:46 GMT): HyperFabrics (Wed, 01 May 2019 18:00:11 GMT): dselman (Thu, 02 May 2019 05:12:31 GMT): dselman (Thu, 02 May 2019 05:12:57 GMT): dselman (Thu, 02 May 2019 05:17:46 GMT): dselman (Thu, 02 May 2019 05:18:09 GMT): dselman (Thu, 02 May 2019 05:20:03 GMT): dselman (Thu, 02 May 2019 05:22:12 GMT): Lantaros (Thu, 02 May 2019 15:33:00 GMT): Lantaros (Thu, 02 May 2019 15:33:22 GMT): Lantaros (Thu, 02 May 2019 15:34:52 GMT): Lantaros (Thu, 02 May 2019 15:35:06 GMT): Lantaros (Thu, 02 May 2019 15:43:33 GMT): HyperFabrics (Thu, 02 May 2019 16:48:54 GMT): dselman (Thu, 02 May 2019 17:01:47 GMT): Lantaros (Thu, 02 May 2019 17:06:12 GMT): OscarRoman (Thu, 02 May 2019 17:06:13 GMT): OscarRoman (Thu, 02 May 2019 17:06:55 GMT): HyperFabrics (Thu, 02 May 2019 20:49:39 GMT): dselman (Thu, 02 May 2019 22:24:35 GMT): HyperFabrics (Fri, 03 May 2019 01:55:07 GMT): benjamin.verhaegen (Fri, 03 May 2019 06:42:56 GMT): MikeRichardson (Fri, 03 May 2019 06:53:06 GMT): MikeRichardson (Fri, 03 May 2019 06:55:04 GMT): MikeRichardson (Fri, 03 May 2019 06:55:04 GMT): MikeRichardson (Fri, 03 May 2019 06:55:04 GMT): cgaspart (Fri, 03 May 2019 10:15:58 GMT): davidkel (Fri, 03 May 2019 10:19:37 GMT): cgaspart (Fri, 03 May 2019 10:28:26 GMT): MikeRichardson (Fri, 03 May 2019 10:53:50 GMT): davidkel (Fri, 03 May 2019 10:57:04 GMT): davidkel (Fri, 03 May 2019 10:57:04 GMT): MikeRichardson (Fri, 03 May 2019 11:12:37 GMT): deenario (Fri, 03 May 2019 11:35:01 GMT): deenario (Fri, 03 May 2019 11:35:21 GMT): deenario (Fri, 03 May 2019 11:35:21 GMT): deenario (Fri, 03 May 2019 11:36:19 GMT): deenario (Fri, 03 May 2019 11:36:29 GMT): ferpzfresh (Sun, 05 May 2019 05:26:04 GMT): arvindkumar6568 (Mon, 06 May 2019 02:54:31 GMT): arvindkumar6568 (Mon, 06 May 2019 02:55:16 GMT): arvindkumar6568 (Mon, 06 May 2019 02:55:57 GMT): Caralicious (Mon, 06 May 2019 08:53:26 GMT): Caralicious (Mon, 06 May 2019 08:56:24 GMT): neneg (Mon, 06 May 2019 10:40:25 GMT): neneg (Mon, 06 May 2019 10:41:45 GMT): Beluosa (Mon, 06 May 2019 21:05:13 GMT): Beluosa (Mon, 06 May 2019 21:06:21 GMT): Caralicious (Tue, 07 May 2019 06:35:05 GMT): neneg (Tue, 07 May 2019 13:32:24 GMT): davidkel (Tue, 07 May 2019 16:28:38 GMT): Beluosa (Tue, 07 May 2019 19:29:27 GMT): Beluosa (Tue, 07 May 2019 19:31:46 GMT): Beluosa (Tue, 07 May 2019 19:33:41 GMT): Silona (Tue, 07 May 2019 19:45:09 GMT): andrew114 (Tue, 07 May 2019 21:37:23 GMT): andrew114 (Tue, 07 May 2019 21:37:24 GMT): hyper-sunder (Wed, 08 May 2019 05:59:28 GMT): umarmw (Wed, 08 May 2019 06:45:04 GMT): umarmw (Wed, 08 May 2019 08:36:17 GMT): benjamin.verhaegen (Wed, 08 May 2019 08:36:51 GMT): umarmw (Wed, 08 May 2019 08:37:32 GMT): benjamin.verhaegen (Wed, 08 May 2019 08:38:13 GMT): umarmw (Wed, 08 May 2019 08:38:58 GMT): benjamin.verhaegen (Wed, 08 May 2019 08:39:33 GMT): umarmw (Wed, 08 May 2019 08:41:43 GMT): Tom-Xu-CNXA (Thu, 09 May 2019 01:24:42 GMT): Fedor_SH (Thu, 09 May 2019 08:31:22 GMT): Fedor_SH (Thu, 09 May 2019 09:21:21 GMT): benjamin.verhaegen (Thu, 09 May 2019 10:51:39 GMT): umarmw (Thu, 09 May 2019 10:55:22 GMT): OscarRoman (Thu, 09 May 2019 20:39:50 GMT): JoseLedezma (Thu, 09 May 2019 21:51:19 GMT): JoseLedezma (Thu, 09 May 2019 21:51:29 GMT): cmoudze64 (Fri, 10 May 2019 03:35:47 GMT): cmoudze64 (Fri, 10 May 2019 03:35:48 GMT): benjamin.verhaegen (Fri, 10 May 2019 07:42:29 GMT): davidkel (Fri, 10 May 2019 07:50:57 GMT): famar (Fri, 10 May 2019 14:45:09 GMT): famar (Fri, 10 May 2019 14:45:10 GMT): famar (Fri, 10 May 2019 14:45:10 GMT): famar (Fri, 10 May 2019 14:45:10 GMT): cmoudze64 (Fri, 10 May 2019 15:43:32 GMT): cmoudze64 (Fri, 10 May 2019 15:44:49 GMT): cmoudze64 (Fri, 10 May 2019 15:45:13 GMT): SrinivasanK (Sun, 12 May 2019 05:04:34 GMT): umarmw (Sun, 12 May 2019 17:50:07 GMT): davidkel (Sun, 12 May 2019 21:31:21 GMT): umarmw (Mon, 13 May 2019 01:50:54 GMT): NEWNEW (Mon, 13 May 2019 02:08:41 GMT): tocm (Mon, 13 May 2019 03:47:00 GMT): sanket1211 (Mon, 13 May 2019 06:39:12 GMT): sanket1211 (Mon, 13 May 2019 06:39:18 GMT): sanket1211 (Mon, 13 May 2019 06:39:46 GMT): knagware9 (Mon, 13 May 2019 09:00:16 GMT): tocm (Mon, 13 May 2019 10:00:05 GMT): varunagarwal (Mon, 13 May 2019 12:08:29 GMT): AttilioPapili (Mon, 13 May 2019 14:33:18 GMT): AttilioPapili (Mon, 13 May 2019 14:33:22 GMT): phoniks (Mon, 13 May 2019 15:55:36 GMT): NEWNEW (Mon, 13 May 2019 23:59:32 GMT): tocm (Tue, 14 May 2019 08:32:16 GMT): mahmoud_baghani (Tue, 14 May 2019 12:42:08 GMT): engr.aliraza190 (Tue, 14 May 2019 13:31:16 GMT): engr.aliraza190 (Tue, 14 May 2019 13:31:18 GMT): cmoudze64 (Tue, 14 May 2019 14:51:38 GMT): cmoudze64 (Tue, 14 May 2019 14:53:08 GMT): cmoudze64 (Tue, 14 May 2019 14:53:24 GMT): umarmw (Wed, 15 May 2019 01:17:30 GMT): cmoudze64 (Wed, 15 May 2019 01:21:23 GMT): mffrench (Wed, 15 May 2019 05:15:43 GMT): engr.aliraza190 (Wed, 15 May 2019 12:06:43 GMT): Lantaros (Wed, 15 May 2019 16:42:18 GMT): Lantaros (Wed, 15 May 2019 16:42:18 GMT): TharinduSandaruwan1 (Thu, 16 May 2019 02:33:39 GMT): SatheeshNehru (Thu, 16 May 2019 09:42:21 GMT): Lorem (Thu, 16 May 2019 12:50:16 GMT): Lorem (Thu, 16 May 2019 12:50:18 GMT): Lantaros (Thu, 16 May 2019 13:34:29 GMT): Lantaros (Thu, 16 May 2019 13:34:35 GMT): hgrgic (Thu, 16 May 2019 18:58:00 GMT): hgrgic (Thu, 16 May 2019 18:58:01 GMT): hgrgic (Thu, 16 May 2019 18:58:01 GMT): hgrgic (Thu, 16 May 2019 18:58:51 GMT): davidkel (Thu, 16 May 2019 19:42:51 GMT): Lantaros (Thu, 16 May 2019 23:59:58 GMT): Lantaros (Fri, 17 May 2019 00:01:56 GMT): Jelle.Diet (Fri, 17 May 2019 06:26:41 GMT): famar (Fri, 17 May 2019 09:15:49 GMT): nimaafraz (Fri, 17 May 2019 19:38:54 GMT): nimaafraz (Fri, 17 May 2019 19:38:54 GMT): nimaafraz (Fri, 17 May 2019 19:38:54 GMT): nimaafraz (Fri, 17 May 2019 19:38:54 GMT): nimaafraz (Fri, 17 May 2019 19:38:54 GMT): circlespainter (Sat, 18 May 2019 07:34:24 GMT): manojsingh2019 (Sat, 18 May 2019 13:17:26 GMT): manojsingh2019 (Sat, 18 May 2019 13:17:27 GMT): manojsingh2019 (Sat, 18 May 2019 13:23:55 GMT): MarkHynes (Sun, 19 May 2019 23:48:06 GMT): MarkHynes (Sun, 19 May 2019 23:48:07 GMT): MarkHynes (Sun, 19 May 2019 23:48:15 GMT): MarkHynes (Sun, 19 May 2019 23:49:16 GMT): MarkHynes (Sun, 19 May 2019 23:49:20 GMT): MarkHynes (Sun, 19 May 2019 23:49:24 GMT): ShashiRattan (Mon, 20 May 2019 01:13:20 GMT): arvindkumar6568 (Mon, 20 May 2019 03:14:38 GMT): arvindkumar6568 (Mon, 20 May 2019 03:15:05 GMT): arvindkumar6568 (Mon, 20 May 2019 08:33:56 GMT): arvindkumar6568 (Mon, 20 May 2019 10:34:24 GMT): smunx (Mon, 20 May 2019 17:19:51 GMT): afonsobspinto (Tue, 21 May 2019 01:28:52 GMT): JP (Tue, 21 May 2019 10:33:20 GMT): JP (Tue, 21 May 2019 10:33:20 GMT): JP (Tue, 21 May 2019 10:33:20 GMT): JP (Tue, 21 May 2019 10:33:20 GMT): MarkHynes (Tue, 21 May 2019 13:04:42 GMT): MarkHynes (Tue, 21 May 2019 13:04:42 GMT): MarkHynes (Tue, 21 May 2019 13:04:42 GMT): MarkHynes (Tue, 21 May 2019 13:07:11 GMT): horse (Tue, 21 May 2019 18:08:01 GMT): vanclief (Tue, 21 May 2019 18:22:46 GMT): vanclief (Tue, 21 May 2019 18:24:42 GMT): cfisher33 (Tue, 21 May 2019 20:27:32 GMT): cfisher33 (Tue, 21 May 2019 20:27:33 GMT): cfisher33 (Tue, 21 May 2019 20:27:33 GMT): cfisher33 (Tue, 21 May 2019 20:27:33 GMT): cfisher33 (Tue, 21 May 2019 20:32:29 GMT): DarwinHarianto (Wed, 22 May 2019 04:36:01 GMT): Sarath_Kumar (Wed, 22 May 2019 07:08:12 GMT): ribjethgnis (Wed, 22 May 2019 07:35:01 GMT): ribjethgnis (Wed, 22 May 2019 07:35:30 GMT): DarwinHarianto (Wed, 22 May 2019 08:25:39 GMT): amundson (Thu, 23 May 2019 15:58:41 GMT): kn3118 (Thu, 23 May 2019 16:43:42 GMT): Mahadevan 1 (Fri, 24 May 2019 04:46:29 GMT): armmarov (Fri, 24 May 2019 06:32:24 GMT): varunagarwal (Fri, 24 May 2019 10:00:29 GMT): varunagarwal (Fri, 24 May 2019 10:20:31 GMT): lesleyannj (Fri, 24 May 2019 10:29:21 GMT): tejateja (Fri, 24 May 2019 11:25:19 GMT): Abhishekg.s (Fri, 24 May 2019 13:35:16 GMT): arthurmsouza (Sun, 26 May 2019 12:15:56 GMT): RicardoMurillo (Sun, 26 May 2019 19:59:46 GMT): tejateja (Mon, 27 May 2019 08:37:13 GMT): raj_shekhar (Tue, 28 May 2019 11:54:28 GMT): raj_shekhar (Tue, 28 May 2019 11:54:28 GMT): afonsobspinto (Wed, 29 May 2019 01:28:58 GMT): afonsobspinto (Wed, 29 May 2019 01:32:29 GMT): walmon (Wed, 29 May 2019 17:29:20 GMT): walmon (Wed, 29 May 2019 17:29:20 GMT): FilippoD (Thu, 30 May 2019 08:55:21 GMT): FilippoD (Thu, 30 May 2019 08:55:21 GMT): WagnerCruz (Fri, 31 May 2019 13:25:08 GMT): danoprey (Fri, 31 May 2019 18:41:34 GMT): hanubc7743 (Sat, 01 Jun 2019 11:50:44 GMT): Matoran (Sat, 01 Jun 2019 18:46:05 GMT): Matoran (Sat, 01 Jun 2019 18:46:06 GMT): afonsobspinto (Sat, 01 Jun 2019 23:49:19 GMT): afonsobspinto (Sat, 01 Jun 2019 23:49:19 GMT): FilippoD (Sun, 02 Jun 2019 10:58:26 GMT): AdilAbdugaliyev (Sun, 02 Jun 2019 13:03:14 GMT): AdilAbdugaliyev (Sun, 02 Jun 2019 13:03:16 GMT): dkdinesh (Tue, 04 Jun 2019 11:42:03 GMT): dkdinesh (Tue, 04 Jun 2019 11:42:04 GMT): OscarRoman (Wed, 05 Jun 2019 21:39:06 GMT): SatvikSabharwal (Wed, 05 Jun 2019 22:16:14 GMT): ahy (Wed, 05 Jun 2019 23:57:44 GMT): ahy (Wed, 05 Jun 2019 23:58:24 GMT): DarwinHarianto (Thu, 06 Jun 2019 01:00:16 GMT): ahy (Thu, 06 Jun 2019 01:20:09 GMT): DarwinHarianto (Thu, 06 Jun 2019 01:39:13 GMT): KalyaniPullela (Thu, 06 Jun 2019 08:44:58 GMT): KalyaniPullela (Thu, 06 Jun 2019 08:44:59 GMT): ahy (Thu, 06 Jun 2019 20:53:57 GMT): arner (Mon, 10 Jun 2019 18:55:21 GMT): ahy (Wed, 12 Jun 2019 00:58:58 GMT): ahy (Wed, 12 Jun 2019 01:00:22 GMT): TBigjohn (Wed, 12 Jun 2019 08:45:08 GMT): TBigjohn (Wed, 12 Jun 2019 08:45:08 GMT): TBigjohn (Wed, 12 Jun 2019 08:46:43 GMT): horse (Wed, 12 Jun 2019 15:42:09 GMT): horse (Wed, 12 Jun 2019 19:10:13 GMT): CheeChyuan (Thu, 13 Jun 2019 04:18:00 GMT): KindleBitSoln (Thu, 13 Jun 2019 07:56:11 GMT): TBigjohn (Thu, 13 Jun 2019 09:08:35 GMT): nkl199 (Thu, 13 Jun 2019 16:37:18 GMT): krabradosty (Thu, 13 Jun 2019 18:39:10 GMT): krabradosty (Thu, 13 Jun 2019 18:39:11 GMT): walmon (Thu, 13 Jun 2019 18:44:19 GMT): KindleBitSoln (Fri, 14 Jun 2019 06:09:20 GMT): KindleBitSoln (Fri, 14 Jun 2019 06:09:20 GMT): KindleBitSoln (Mon, 17 Jun 2019 06:50:27 GMT): CT123 (Mon, 17 Jun 2019 20:43:27 GMT): CT123 (Mon, 17 Jun 2019 20:43:27 GMT): CT123 (Mon, 17 Jun 2019 20:43:27 GMT): famar (Tue, 18 Jun 2019 14:45:04 GMT): hanubc7743 (Tue, 18 Jun 2019 19:54:46 GMT): goody (Tue, 18 Jun 2019 22:01:46 GMT): goody (Tue, 18 Jun 2019 22:01:49 GMT): BlueKing (Thu, 20 Jun 2019 11:41:00 GMT): BlueKing (Thu, 20 Jun 2019 11:41:10 GMT): benjamin.verhaegen (Thu, 20 Jun 2019 11:46:55 GMT): BlueKing (Thu, 20 Jun 2019 12:31:05 GMT): BlueKing (Thu, 20 Jun 2019 12:31:10 GMT): BlueKing (Thu, 20 Jun 2019 12:31:30 GMT): BlueKing (Thu, 20 Jun 2019 12:32:27 GMT): BlueKing (Thu, 20 Jun 2019 12:33:04 GMT): BlueKing (Thu, 20 Jun 2019 12:33:17 GMT): BlueKing (Thu, 20 Jun 2019 12:34:08 GMT): mespejo84 (Thu, 20 Jun 2019 21:14:54 GMT): mespejo84 (Thu, 20 Jun 2019 21:14:55 GMT): CT123 (Thu, 20 Jun 2019 23:13:38 GMT): BlueKing (Fri, 21 Jun 2019 05:45:39 GMT): BlueKing (Fri, 21 Jun 2019 05:46:37 GMT): davidkel (Fri, 21 Jun 2019 08:14:41 GMT): mespejo84 (Fri, 21 Jun 2019 13:20:31 GMT): hdamar (Fri, 21 Jun 2019 20:59:09 GMT): hdamar (Fri, 21 Jun 2019 20:59:11 GMT): hdamar (Fri, 21 Jun 2019 21:33:56 GMT): hdamar (Fri, 21 Jun 2019 21:34:24 GMT): richardmurillo (Mon, 24 Jun 2019 20:58:55 GMT): nasht00 (Wed, 26 Jun 2019 06:59:06 GMT): nasht00 (Wed, 26 Jun 2019 06:59:08 GMT): nasht00 (Wed, 26 Jun 2019 07:14:27 GMT): irkoch (Wed, 26 Jun 2019 21:27:29 GMT): nasht00 (Thu, 27 Jun 2019 06:59:13 GMT): LorikManaj (Thu, 27 Jun 2019 22:19:52 GMT): LorikManaj (Thu, 27 Jun 2019 22:19:54 GMT): haokei (Fri, 28 Jun 2019 03:58:14 GMT): haokei (Fri, 28 Jun 2019 03:58:16 GMT): WagnerCruz (Fri, 28 Jun 2019 14:49:31 GMT): WagnerCruz (Fri, 28 Jun 2019 14:50:42 GMT): rahyul19 (Fri, 28 Jun 2019 16:29:05 GMT): zentenarioCode (Fri, 28 Jun 2019 22:05:58 GMT): ozaiter (Fri, 28 Jun 2019 22:20:58 GMT): incredible5 (Sat, 29 Jun 2019 08:31:16 GMT): incredible5 (Sat, 29 Jun 2019 08:31:18 GMT): haokei (Tue, 02 Jul 2019 04:57:37 GMT): haokei (Tue, 02 Jul 2019 04:57:37 GMT): incredible5 (Tue, 02 Jul 2019 08:53:43 GMT): sstone1 (Tue, 02 Jul 2019 09:58:58 GMT): incredible5 (Tue, 02 Jul 2019 10:07:29 GMT): sheru (Tue, 02 Jul 2019 14:47:59 GMT): sheru (Tue, 02 Jul 2019 14:48:01 GMT): 14gracel (Wed, 03 Jul 2019 09:49:21 GMT): Suarez20 (Wed, 03 Jul 2019 11:06:06 GMT): Suarez20 (Wed, 03 Jul 2019 11:06:08 GMT): Suarez20 (Wed, 03 Jul 2019 11:06:08 GMT): haokei (Wed, 03 Jul 2019 11:18:48 GMT): haokei (Wed, 03 Jul 2019 11:18:48 GMT): sstone1 (Wed, 03 Jul 2019 12:00:52 GMT): Suarez20 (Wed, 03 Jul 2019 12:44:40 GMT): Suarez20 (Wed, 03 Jul 2019 12:44:40 GMT): sstone1 (Wed, 03 Jul 2019 14:39:37 GMT): Suarez20 (Wed, 03 Jul 2019 15:13:40 GMT): diestrin (Wed, 03 Jul 2019 21:45:02 GMT): AASHU122 (Fri, 05 Jul 2019 08:37:42 GMT): AASHU122 (Fri, 05 Jul 2019 08:37:43 GMT): joaosobreira (Mon, 08 Jul 2019 14:36:07 GMT): joaosobreira (Mon, 08 Jul 2019 14:36:09 GMT): EmmanuelleRisson (Mon, 08 Jul 2019 16:29:32 GMT): EmmanuelleRisson (Mon, 08 Jul 2019 16:29:34 GMT): joaosobreira (Mon, 08 Jul 2019 16:53:01 GMT): sstone1 (Tue, 09 Jul 2019 12:00:22 GMT): sstone1 (Tue, 09 Jul 2019 12:00:53 GMT): joaosobreira (Tue, 09 Jul 2019 14:04:11 GMT): sstone1 (Tue, 09 Jul 2019 14:04:52 GMT): joaosobreira (Tue, 09 Jul 2019 14:07:04 GMT): joaosobreira (Tue, 09 Jul 2019 14:09:32 GMT): waleed (Wed, 10 Jul 2019 08:32:58 GMT): joaosobreira (Wed, 10 Jul 2019 09:17:42 GMT): EmmanuelleRisson (Thu, 11 Jul 2019 14:45:59 GMT): EmmanuelleRisson (Thu, 11 Jul 2019 14:49:50 GMT): EmmanuelleRisson (Thu, 11 Jul 2019 14:49:50 GMT): MicheleBortone (Mon, 15 Jul 2019 07:34:14 GMT): MicheleBortone (Mon, 15 Jul 2019 07:34:17 GMT): davidkel (Mon, 15 Jul 2019 08:43:25 GMT): davidkel (Mon, 15 Jul 2019 08:43:25 GMT): davidkel (Mon, 15 Jul 2019 09:48:30 GMT): MicheleBortone (Mon, 15 Jul 2019 12:10:03 GMT): MicheleBortone (Mon, 15 Jul 2019 12:12:47 GMT): davidkel (Mon, 15 Jul 2019 12:15:01 GMT): davidkel (Mon, 15 Jul 2019 12:17:48 GMT): davidkel (Mon, 15 Jul 2019 12:17:48 GMT): sandy (Tue, 16 Jul 2019 13:41:30 GMT): sandy (Tue, 16 Jul 2019 13:41:34 GMT): sandy (Tue, 16 Jul 2019 13:42:38 GMT): sandy (Tue, 16 Jul 2019 13:43:28 GMT): sandy (Tue, 16 Jul 2019 13:43:38 GMT): sandy (Tue, 16 Jul 2019 13:44:03 GMT): sandy (Tue, 16 Jul 2019 13:44:11 GMT): SatheeshNehru (Wed, 17 Jul 2019 05:41:58 GMT): DavideC (Fri, 19 Jul 2019 10:23:12 GMT): DavideC (Fri, 19 Jul 2019 10:23:13 GMT): DavideC (Fri, 19 Jul 2019 10:31:06 GMT): ravinayag (Sat, 20 Jul 2019 10:40:39 GMT): ravinayag (Sat, 20 Jul 2019 10:40:40 GMT): DayalMukati (Mon, 22 Jul 2019 07:23:03 GMT): walmon (Tue, 23 Jul 2019 04:19:18 GMT): DavideC (Tue, 23 Jul 2019 10:39:22 GMT): Shubham-koli (Thu, 25 Jul 2019 06:12:55 GMT): Daka 1 (Thu, 25 Jul 2019 07:26:27 GMT): pradeeppadmarajaiah (Fri, 26 Jul 2019 11:43:06 GMT): Kypros (Mon, 29 Jul 2019 08:59:58 GMT): joaosobreira (Mon, 29 Jul 2019 11:47:45 GMT): joaosobreira (Mon, 29 Jul 2019 17:13:47 GMT): KindleBitSoln (Tue, 30 Jul 2019 09:38:36 GMT): KindleBitSoln (Tue, 30 Jul 2019 09:38:48 GMT): KindleBitSoln (Tue, 30 Jul 2019 09:39:15 GMT): KindleBitSoln (Tue, 30 Jul 2019 09:39:22 GMT): MadhusudhanaHV (Wed, 31 Jul 2019 12:39:32 GMT): MadhusudhanaHV (Wed, 31 Jul 2019 12:39:33 GMT): MadhusudhanaHV (Wed, 31 Jul 2019 12:39:33 GMT): MadhusudhanaHV (Wed, 31 Jul 2019 12:39:33 GMT): MadhusudhanaHV (Wed, 31 Jul 2019 12:39:36 GMT): MadhusudhanaHV (Wed, 31 Jul 2019 12:39:55 GMT): MadhusudhanaHV (Wed, 31 Jul 2019 12:40:36 GMT): SoorajNarayanan (Thu, 01 Aug 2019 09:10:14 GMT): SoorajNarayanan (Thu, 01 Aug 2019 09:10:19 GMT): SoorajNarayanan (Thu, 01 Aug 2019 09:10:46 GMT): SoorajNarayanan (Thu, 01 Aug 2019 09:10:48 GMT): SoorajNarayanan (Thu, 01 Aug 2019 09:11:48 GMT): SoorajNarayanan (Thu, 01 Aug 2019 09:12:38 GMT): SoorajNarayanan (Thu, 01 Aug 2019 09:12:39 GMT): pradeeppadmarajaiah (Thu, 01 Aug 2019 10:59:18 GMT): pradeeppadmarajaiah (Thu, 01 Aug 2019 10:59:28 GMT): pradeeppadmarajaiah (Thu, 01 Aug 2019 10:59:36 GMT): ianco (Thu, 01 Aug 2019 20:23:36 GMT): MadhusudhanaHV (Fri, 02 Aug 2019 06:59:38 GMT): stanhughes (Fri, 02 Aug 2019 18:50:22 GMT): stanhughes (Fri, 02 Aug 2019 18:50:26 GMT): MadhusudhanaHV (Mon, 05 Aug 2019 07:25:13 GMT): MadhusudhanaHV (Mon, 05 Aug 2019 07:26:02 GMT): jtonline (Mon, 05 Aug 2019 10:10:32 GMT): SathishKumarIDM (Wed, 07 Aug 2019 08:53:38 GMT): tanguyracinet (Fri, 09 Aug 2019 12:40:19 GMT): sstone1 (Fri, 09 Aug 2019 15:18:37 GMT): ArslanKhalid (Fri, 09 Aug 2019 15:57:22 GMT): ArslanKhalid (Fri, 09 Aug 2019 15:57:24 GMT): au (Sat, 10 Aug 2019 09:58:06 GMT): gx96 (Mon, 12 Aug 2019 13:49:09 GMT): gx96 (Mon, 12 Aug 2019 13:49:09 GMT): tanguyracinet (Tue, 13 Aug 2019 07:52:39 GMT): alabarba (Sun, 18 Aug 2019 10:09:47 GMT): alabarba (Sun, 18 Aug 2019 10:09:53 GMT): Deviad (Sun, 18 Aug 2019 12:13:28 GMT): Deviad (Sun, 18 Aug 2019 12:13:29 GMT): Deviad (Sun, 18 Aug 2019 12:15:03 GMT): Anuj 48 (Mon, 19 Aug 2019 14:22:46 GMT): walmon (Mon, 19 Aug 2019 14:26:32 GMT): galaxystar (Tue, 20 Aug 2019 01:29:44 GMT): SeddikBenLamine (Tue, 20 Aug 2019 13:42:24 GMT): SeddikBenLamine (Tue, 20 Aug 2019 13:42:25 GMT): walmon (Tue, 20 Aug 2019 15:02:06 GMT): Deviad (Tue, 20 Aug 2019 17:31:08 GMT): Deviad (Tue, 20 Aug 2019 17:31:28 GMT): Deviad (Tue, 20 Aug 2019 17:32:21 GMT): Deviad (Tue, 20 Aug 2019 17:32:27 GMT): Deviad (Tue, 20 Aug 2019 17:32:44 GMT): Deviad (Tue, 20 Aug 2019 17:33:02 GMT): Deviad (Tue, 20 Aug 2019 17:33:34 GMT): Deviad (Tue, 20 Aug 2019 17:37:09 GMT): Deviad (Tue, 20 Aug 2019 17:37:12 GMT): Deviad (Tue, 20 Aug 2019 17:37:42 GMT): Deviad (Wed, 21 Aug 2019 18:55:43 GMT): Deviad (Wed, 21 Aug 2019 18:55:53 GMT): sstone1 (Thu, 22 Aug 2019 12:03:35 GMT): sstone1 (Thu, 22 Aug 2019 12:03:55 GMT): sstone1 (Thu, 22 Aug 2019 12:04:46 GMT): sstone1 (Thu, 22 Aug 2019 12:06:25 GMT): joaosobreira (Thu, 22 Aug 2019 17:05:48 GMT): Deviad (Fri, 23 Aug 2019 02:38:38 GMT): Deviad (Fri, 23 Aug 2019 02:38:38 GMT): Deviad (Fri, 23 Aug 2019 02:38:38 GMT): Deviad (Fri, 23 Aug 2019 02:38:38 GMT): Deviad (Fri, 23 Aug 2019 02:41:08 GMT): Deviad (Fri, 23 Aug 2019 02:48:13 GMT): Deviad (Fri, 23 Aug 2019 02:48:13 GMT): Deviad (Fri, 23 Aug 2019 02:48:29 GMT): Deviad (Fri, 23 Aug 2019 02:48:29 GMT): Deviad (Fri, 23 Aug 2019 02:48:29 GMT): Deviad (Fri, 23 Aug 2019 02:48:29 GMT): Deviad (Fri, 23 Aug 2019 02:48:29 GMT): Deviad (Fri, 23 Aug 2019 02:51:00 GMT): sstone1 (Fri, 23 Aug 2019 08:04:31 GMT): sstone1 (Fri, 23 Aug 2019 08:04:52 GMT): sstone1 (Fri, 23 Aug 2019 08:05:00 GMT): SriramBalasubramanian (Fri, 23 Aug 2019 13:04:06 GMT): SriramBalasubramanian (Fri, 23 Aug 2019 13:04:06 GMT): SriramBalasubramanian (Fri, 23 Aug 2019 13:04:06 GMT): davidkel (Fri, 23 Aug 2019 15:02:55 GMT): davidkel (Fri, 23 Aug 2019 15:14:29 GMT): davidkel (Fri, 23 Aug 2019 15:14:29 GMT): Koushik (Fri, 23 Aug 2019 21:28:41 GMT): jeffanon (Sat, 24 Aug 2019 23:36:20 GMT): sarapaul (Sun, 25 Aug 2019 22:09:51 GMT): touchingsoil (Mon, 26 Aug 2019 10:10:50 GMT): touchingsoil (Mon, 26 Aug 2019 10:15:48 GMT): CarlosAvim (Mon, 26 Aug 2019 13:41:35 GMT): charyorde (Wed, 28 Aug 2019 05:18:15 GMT): KindleBitSoln (Thu, 29 Aug 2019 07:52:26 GMT): RafaelForte (Thu, 29 Aug 2019 11:10:22 GMT): RafaelForte (Thu, 29 Aug 2019 11:10:23 GMT): Deviad (Thu, 29 Aug 2019 16:50:39 GMT): davidkel (Thu, 29 Aug 2019 17:06:28 GMT): sstone1 (Thu, 29 Aug 2019 19:20:40 GMT): sstone1 (Thu, 29 Aug 2019 19:20:40 GMT): sstone1 (Thu, 29 Aug 2019 19:20:47 GMT): rjones (Thu, 29 Aug 2019 21:09:21 GMT): rjones (Thu, 29 Aug 2019 21:09:22 GMT): nimit199 (Fri, 30 Aug 2019 05:47:27 GMT): nimit199 (Fri, 30 Aug 2019 05:47:28 GMT): sstone1 (Fri, 30 Aug 2019 07:35:22 GMT): sstone1 (Fri, 30 Aug 2019 09:50:47 GMT): touchingsoil (Tue, 03 Sep 2019 07:08:27 GMT): cagirtas (Tue, 03 Sep 2019 08:26:43 GMT): bregg (Thu, 05 Sep 2019 15:19:11 GMT): bregg (Thu, 05 Sep 2019 15:19:12 GMT): sstone1 (Thu, 05 Sep 2019 16:32:53 GMT): bregg (Thu, 05 Sep 2019 16:44:39 GMT): bregg (Thu, 05 Sep 2019 16:50:53 GMT): bregg (Thu, 05 Sep 2019 16:51:07 GMT): davidkel (Thu, 05 Sep 2019 18:37:53 GMT): bregg (Fri, 06 Sep 2019 06:59:44 GMT): yllllll (Mon, 09 Sep 2019 08:54:20 GMT): yllllll (Mon, 09 Sep 2019 08:54:20 GMT): AlbertCL (Thu, 12 Sep 2019 07:19:27 GMT): parsa (Thu, 12 Sep 2019 12:14:56 GMT): parsa (Thu, 12 Sep 2019 12:19:03 GMT): nimit199 (Tue, 17 Sep 2019 12:12:17 GMT): nanmin (Wed, 18 Sep 2019 15:49:34 GMT): knagware9 (Thu, 19 Sep 2019 05:00:46 GMT): twen (Sun, 29 Sep 2019 07:45:09 GMT): KellyCooper (Sun, 29 Sep 2019 18:13:07 GMT): UdkReddy (Tue, 01 Oct 2019 05:26:58 GMT): UdkReddy (Tue, 01 Oct 2019 05:26:59 GMT): sstone1 (Tue, 01 Oct 2019 12:32:38 GMT): aguel (Tue, 01 Oct 2019 15:12:30 GMT): Amanullah68 (Sat, 05 Oct 2019 06:03:13 GMT): Amanullah68 (Sat, 05 Oct 2019 06:04:15 GMT): Amanullah68 (Sat, 05 Oct 2019 06:04:30 GMT): Amanullah68 (Sat, 05 Oct 2019 06:04:43 GMT): Amanullah68 (Sat, 05 Oct 2019 06:04:50 GMT): japidei (Sat, 05 Oct 2019 07:26:16 GMT): japidei (Sat, 05 Oct 2019 07:27:45 GMT): davidkel (Sat, 05 Oct 2019 08:10:22 GMT): Amanullah68 (Sat, 05 Oct 2019 08:15:54 GMT): Amanullah68 (Sat, 05 Oct 2019 08:16:12 GMT): davidkel (Sat, 05 Oct 2019 08:22:11 GMT): Amanullah68 (Sat, 05 Oct 2019 08:25:02 GMT): Amanullah68 (Sat, 05 Oct 2019 08:25:22 GMT): Amanullah68 (Sat, 05 Oct 2019 13:19:33 GMT): ultimo2020 (Mon, 07 Oct 2019 05:01:26 GMT): touchingsoil (Tue, 08 Oct 2019 08:50:58 GMT): davidkel (Tue, 08 Oct 2019 09:13:08 GMT): touchingsoil (Tue, 08 Oct 2019 09:32:19 GMT): touchingsoil (Tue, 08 Oct 2019 09:32:19 GMT): davidkel (Tue, 08 Oct 2019 09:35:37 GMT): davidkel (Tue, 08 Oct 2019 09:36:12 GMT): davidkel (Tue, 08 Oct 2019 09:36:12 GMT): touchingsoil (Tue, 08 Oct 2019 10:27:01 GMT): davidkel (Tue, 08 Oct 2019 10:36:09 GMT): davidkel (Tue, 08 Oct 2019 10:36:09 GMT): davidkel (Tue, 08 Oct 2019 10:44:02 GMT): davidkel (Tue, 08 Oct 2019 10:44:02 GMT): Amanullah68 (Tue, 08 Oct 2019 11:43:11 GMT): Amanullah68 (Tue, 08 Oct 2019 11:43:59 GMT): touchingsoil (Wed, 09 Oct 2019 00:36:08 GMT): davidkel (Wed, 09 Oct 2019 06:11:08 GMT): davidkel (Wed, 09 Oct 2019 06:12:06 GMT): touchingsoil (Wed, 09 Oct 2019 07:53:18 GMT): klenik (Wed, 09 Oct 2019 13:37:57 GMT): Amanullah68 (Wed, 09 Oct 2019 15:23:48 GMT): Amanullah68 (Wed, 09 Oct 2019 15:24:04 GMT): FilippoD (Fri, 11 Oct 2019 14:03:03 GMT): davidkel (Fri, 11 Oct 2019 14:12:25 GMT): davidkel (Fri, 11 Oct 2019 14:12:25 GMT): diestrin (Fri, 11 Oct 2019 14:53:37 GMT): haydarmajeed (Mon, 14 Oct 2019 18:44:38 GMT): UdkReddy (Thu, 17 Oct 2019 10:43:14 GMT): obernardovieira (Fri, 18 Oct 2019 09:57:42 GMT): Unicow (Mon, 21 Oct 2019 10:34:58 GMT): Ishee (Tue, 22 Oct 2019 05:46:52 GMT): davidkel (Tue, 22 Oct 2019 07:15:43 GMT): davidkel (Tue, 22 Oct 2019 07:15:43 GMT): gdinhof (Wed, 23 Oct 2019 09:32:21 GMT): Shabana1717344 (Sun, 27 Oct 2019 07:00:59 GMT): Shabana1717344 (Sun, 27 Oct 2019 07:08:23 GMT): Shabana1717344 (Sun, 27 Oct 2019 07:08:23 GMT): selvaraman (Mon, 28 Oct 2019 11:35:01 GMT): ihormudryy (Mon, 28 Oct 2019 13:32:04 GMT): Shabana1717344 (Tue, 29 Oct 2019 09:13:27 GMT): selvaraman (Tue, 29 Oct 2019 10:18:38 GMT): Shabana1717344 (Tue, 29 Oct 2019 10:44:00 GMT): Shabana1717344 (Tue, 29 Oct 2019 10:45:22 GMT): davidkel (Tue, 29 Oct 2019 10:45:52 GMT): davidkel (Tue, 29 Oct 2019 10:45:52 GMT): Shabana1717344 (Tue, 29 Oct 2019 10:45:53 GMT): Shabana1717344 (Tue, 29 Oct 2019 10:47:17 GMT): Shabana1717344 (Tue, 29 Oct 2019 10:48:49 GMT): davidkel (Tue, 29 Oct 2019 10:52:04 GMT): davidkel (Tue, 29 Oct 2019 10:52:04 GMT): davidkel (Tue, 29 Oct 2019 10:54:59 GMT): Shabana1717344 (Tue, 29 Oct 2019 10:58:17 GMT): Shabana1717344 (Tue, 29 Oct 2019 10:59:07 GMT): Shabana1717344 (Tue, 29 Oct 2019 10:59:49 GMT): Shabana1717344 (Tue, 29 Oct 2019 11:01:12 GMT): davidkel (Tue, 29 Oct 2019 11:01:18 GMT): Shabana1717344 (Tue, 29 Oct 2019 11:02:38 GMT): Shabana1717344 (Tue, 29 Oct 2019 11:03:00 GMT): davidkel (Tue, 29 Oct 2019 11:03:13 GMT): davidkel (Tue, 29 Oct 2019 11:04:05 GMT): davidkel (Tue, 29 Oct 2019 11:04:05 GMT): Shabana1717344 (Tue, 29 Oct 2019 11:06:59 GMT): Shabana1717344 (Tue, 29 Oct 2019 11:10:02 GMT): knagware9 (Tue, 29 Oct 2019 11:14:51 GMT): Shabana1717344 (Tue, 29 Oct 2019 11:17:13 GMT): selvaraman (Tue, 29 Oct 2019 12:21:54 GMT): Piyush.Sharma (Mon, 04 Nov 2019 17:39:09 GMT): UnaiUrkiaga (Thu, 07 Nov 2019 10:09:18 GMT): UnaiUrkiaga (Thu, 07 Nov 2019 10:09:18 GMT): UnaiUrkiaga (Thu, 07 Nov 2019 12:47:16 GMT): Shabana1717344 (Mon, 11 Nov 2019 08:33:13 GMT): touchingsoil (Thu, 14 Nov 2019 03:05:04 GMT): maniankara (Fri, 22 Nov 2019 07:38:34 GMT): selvaraman (Tue, 26 Nov 2019 06:17:46 GMT): KalyaniPullela (Tue, 03 Dec 2019 19:25:48 GMT): Qeven (Thu, 05 Dec 2019 07:03:01 GMT): CJamie (Sat, 07 Dec 2019 16:20:16 GMT): CJamie (Sat, 07 Dec 2019 16:20:41 GMT): lmtriet (Tue, 10 Dec 2019 12:30:38 GMT): prashantnagawade (Fri, 13 Dec 2019 17:49:37 GMT): prashantnagawade (Fri, 13 Dec 2019 17:49:37 GMT): prashantnagawade (Fri, 13 Dec 2019 17:49:37 GMT): easeev (Mon, 16 Dec 2019 12:15:19 GMT): NeithLopes (Wed, 18 Dec 2019 15:11:51 GMT): NeithLopes (Wed, 18 Dec 2019 15:12:10 GMT): PaulA (Tue, 07 Jan 2020 06:23:52 GMT): joaquimpedrooliveira (Mon, 13 Jan 2020 18:14:44 GMT): pravn1729 (Tue, 14 Jan 2020 06:51:55 GMT): pravn1729 (Tue, 14 Jan 2020 06:53:32 GMT): pravn1729 (Tue, 14 Jan 2020 06:54:44 GMT): YashShukla (Wed, 15 Jan 2020 02:10:14 GMT): aguel (Tue, 21 Jan 2020 12:47:51 GMT): Nammalvar (Thu, 23 Jan 2020 08:50:05 GMT): amendafernando (Thu, 23 Jan 2020 21:10:10 GMT): davidkel (Thu, 23 Jan 2020 22:51:16 GMT): davidkel (Thu, 23 Jan 2020 22:51:16 GMT): amendafernando (Fri, 24 Jan 2020 04:32:13 GMT): davidkel (Fri, 24 Jan 2020 07:21:36 GMT): davidkel (Fri, 24 Jan 2020 07:22:00 GMT): amendafernando (Fri, 24 Jan 2020 07:46:36 GMT): davidkel (Fri, 24 Jan 2020 08:03:16 GMT): amendafernando (Fri, 24 Jan 2020 11:48:15 GMT): amendafernando (Fri, 24 Jan 2020 11:48:15 GMT): davidkel (Fri, 24 Jan 2020 11:52:46 GMT): amendafernando (Mon, 27 Jan 2020 05:28:12 GMT): davidkel (Mon, 27 Jan 2020 08:24:18 GMT): davidkel (Mon, 27 Jan 2020 08:25:02 GMT): amendafernando (Mon, 27 Jan 2020 08:48:05 GMT): davidkel (Mon, 27 Jan 2020 08:51:44 GMT): amendafernando (Mon, 27 Jan 2020 08:59:03 GMT): davidkel (Mon, 27 Jan 2020 09:28:01 GMT): davidkel (Mon, 27 Jan 2020 09:28:01 GMT): davidkel (Mon, 27 Jan 2020 09:28:01 GMT): davidkel (Mon, 27 Jan 2020 09:28:01 GMT): davidkel (Mon, 27 Jan 2020 09:28:43 GMT): amendafernando (Mon, 27 Jan 2020 09:47:48 GMT): davidkel (Mon, 27 Jan 2020 09:53:07 GMT): amendafernando (Mon, 27 Jan 2020 10:16:08 GMT): davidkel (Mon, 27 Jan 2020 10:54:43 GMT): d8bhatta (Mon, 27 Jan 2020 13:16:44 GMT): icordoba (Wed, 29 Jan 2020 09:13:13 GMT): Utsav_Solanki (Sat, 01 Feb 2020 06:36:08 GMT): Utsav_Solanki (Sat, 01 Feb 2020 06:36:12 GMT): diestrin (Tue, 04 Feb 2020 17:00:23 GMT): lmtriet (Mon, 10 Feb 2020 20:28:21 GMT): LWIH (Tue, 11 Feb 2020 18:26:45 GMT): ArvsIndrarys (Mon, 17 Feb 2020 14:49:51 GMT): SomaNayak (Wed, 26 Feb 2020 08:46:28 GMT): Koushik (Thu, 27 Feb 2020 01:59:51 GMT): rtorres (Tue, 03 Mar 2020 09:53:18 GMT): rushiraj111 (Fri, 06 Mar 2020 11:48:02 GMT): knagware9 (Mon, 09 Mar 2020 04:43:06 GMT): ivandigibuild (Mon, 09 Mar 2020 14:30:36 GMT): ivandigibuild (Mon, 09 Mar 2020 14:30:36 GMT): davidkel (Mon, 09 Mar 2020 14:35:47 GMT): ivandigibuild (Mon, 09 Mar 2020 14:51:46 GMT): davidkel (Mon, 09 Mar 2020 14:56:11 GMT): aakzubaidi (Tue, 10 Mar 2020 21:48:50 GMT): aakzubaidi (Tue, 10 Mar 2020 21:49:07 GMT): aakzubaidi (Tue, 10 Mar 2020 21:49:21 GMT): aakzubaidi (Tue, 10 Mar 2020 21:49:36 GMT): aakzubaidi (Tue, 10 Mar 2020 21:51:42 GMT): davidkel (Wed, 11 Mar 2020 08:55:55 GMT): brockhager (Wed, 11 Mar 2020 16:36:19 GMT): ramorcicare1 (Thu, 12 Mar 2020 13:47:17 GMT): ramorcicare1 (Thu, 12 Mar 2020 13:47:18 GMT): davidkel (Thu, 12 Mar 2020 16:04:14 GMT): ramorcicare1 (Thu, 12 Mar 2020 16:06:33 GMT): davidkel (Thu, 12 Mar 2020 16:50:09 GMT): ramorcicare1 (Fri, 13 Mar 2020 02:50:33 GMT): ramorcicare1 (Fri, 13 Mar 2020 03:33:57 GMT): ramorcicare1 (Fri, 13 Mar 2020 03:35:14 GMT): davidkel (Fri, 13 Mar 2020 08:18:13 GMT): jtwalker2000 (Mon, 23 Mar 2020 19:47:06 GMT): aberwag (Tue, 24 Mar 2020 08:07:48 GMT): matanyahu (Mon, 06 Apr 2020 17:46:16 GMT): toddinpal (Thu, 23 Apr 2020 22:49:06 GMT): davidkel (Fri, 24 Apr 2020 10:48:06 GMT): davidkel (Fri, 24 Apr 2020 10:48:40 GMT): toddinpal (Fri, 24 Apr 2020 15:02:32 GMT): toddinpal (Fri, 24 Apr 2020 15:17:20 GMT): jyellick (Wed, 29 Apr 2020 19:36:49 GMT): RocMax (Tue, 26 May 2020 07:34:16 GMT): SoorajNarayanan (Sun, 31 May 2020 05:11:20 GMT): SoorajNarayanan (Sun, 31 May 2020 05:12:26 GMT): SoorajNarayanan (Sun, 31 May 2020 05:13:40 GMT): SoorajNarayanan (Sun, 31 May 2020 05:13:58 GMT): knagware9 (Mon, 01 Jun 2020 15:09:50 GMT): GmoneyCoder (Thu, 04 Jun 2020 22:31:05 GMT): pkirkinezis (Wed, 10 Jun 2020 11:31:03 GMT): cylon56 (Fri, 19 Jun 2020 13:11:39 GMT): sudhan 25 (Mon, 22 Jun 2020 12:09:19 GMT): sudhan 25 (Mon, 22 Jun 2020 12:09:21 GMT): davidkel (Mon, 22 Jun 2020 17:57:40 GMT): sudhan 25 (Mon, 22 Jun 2020 19:14:36 GMT): sudhan 25 (Mon, 22 Jun 2020 19:14:41 GMT): sudhan 25 (Mon, 22 Jun 2020 19:14:47 GMT): davidkel (Mon, 22 Jun 2020 20:57:38 GMT): davidkel (Mon, 22 Jun 2020 20:57:38 GMT): sudhan 25 (Tue, 23 Jun 2020 05:55:23 GMT): davidkhala (Sun, 28 Jun 2020 15:05:24 GMT): rrishmawi (Tue, 07 Jul 2020 11:08:17 GMT): davidkel (Tue, 07 Jul 2020 12:46:26 GMT): rrishmawi (Tue, 07 Jul 2020 19:53:47 GMT): davidkel (Tue, 07 Jul 2020 20:18:37 GMT): davidkel (Tue, 07 Jul 2020 20:18:37 GMT): rrishmawi (Wed, 08 Jul 2020 07:54:01 GMT): davidkel (Wed, 08 Jul 2020 07:58:58 GMT): davidkel (Wed, 08 Jul 2020 07:59:30 GMT): rrishmawi (Wed, 08 Jul 2020 08:03:09 GMT): davidkel (Wed, 08 Jul 2020 08:08:49 GMT): davidkel (Wed, 08 Jul 2020 08:09:24 GMT): rrishmawi (Wed, 08 Jul 2020 09:14:56 GMT): davidkel (Wed, 08 Jul 2020 09:24:22 GMT): wangdong (Wed, 08 Jul 2020 15:05:02 GMT): spore-engineering (Wed, 08 Jul 2020 23:19:26 GMT): jainsamyak (Sun, 26 Jul 2020 07:15:43 GMT): jainsamyak (Sun, 26 Jul 2020 07:15:44 GMT): davidkel (Sun, 26 Jul 2020 08:24:28 GMT): jainsamyak (Mon, 27 Jul 2020 05:12:17 GMT): jainsamyak (Mon, 27 Jul 2020 05:13:51 GMT): jainsamyak (Mon, 27 Jul 2020 05:15:07 GMT): davidkel (Mon, 27 Jul 2020 07:17:25 GMT): davidkel (Mon, 27 Jul 2020 07:17:25 GMT): davidkel (Mon, 27 Jul 2020 07:17:39 GMT): davidkel (Mon, 27 Jul 2020 07:17:39 GMT): davidkel (Mon, 27 Jul 2020 07:17:39 GMT): davidkel (Mon, 27 Jul 2020 07:18:38 GMT): davidkel (Mon, 27 Jul 2020 07:19:14 GMT): davidkel (Mon, 27 Jul 2020 07:19:14 GMT): ykchong45 (Tue, 04 Aug 2020 05:19:00 GMT): ykchong45 (Tue, 04 Aug 2020 05:19:00 GMT): davidkel (Tue, 04 Aug 2020 07:33:54 GMT): ykchong45 (Tue, 04 Aug 2020 09:36:58 GMT): davidkel (Tue, 04 Aug 2020 09:44:45 GMT): jainsamyak (Mon, 10 Aug 2020 07:35:27 GMT): masarliev (Tue, 11 Aug 2020 06:28:18 GMT): masarliev (Tue, 11 Aug 2020 06:28:26 GMT): negupta (Mon, 31 Aug 2020 15:55:40 GMT): sstone1 (Thu, 03 Sep 2020 07:14:48 GMT): sheru (Fri, 04 Sep 2020 07:02:48 GMT): AspynP (Thu, 10 Sep 2020 22:31:16 GMT): tongli (Wed, 16 Sep 2020 12:13:45 GMT): sebstar (Wed, 16 Sep 2020 12:46:44 GMT): bassirpechaz (Wed, 23 Sep 2020 05:39:25 GMT): czar0 (Thu, 01 Oct 2020 12:51:48 GMT): aguel (Tue, 06 Oct 2020 07:15:58 GMT): davidkel (Fri, 09 Oct 2020 11:58:51 GMT): MichalRybarczyk (Fri, 23 Oct 2020 08:08:23 GMT): andrew-coleman (Wed, 28 Oct 2020 09:00:46 GMT): tomappleyard (Wed, 04 Nov 2020 16:53:11 GMT): JongWanSeo (Sat, 14 Nov 2020 11:57:58 GMT): iLico (Sun, 27 Dec 2020 10:33:33 GMT): lcvalves (Sat, 09 Jan 2021 16:06:32 GMT): adam0000345 (Sun, 10 Jan 2021 02:29:35 GMT): awa (Sun, 31 Jan 2021 12:22:41 GMT): awattez (Sun, 31 Jan 2021 13:25:24 GMT): Helen_Garneau (Thu, 04 Feb 2021 15:10:05 GMT): rehabali (Wed, 10 Feb 2021 15:56:04 GMT): NabinG (Wed, 24 Feb 2021 08:55:05 GMT): ndajiya (Sun, 28 Feb 2021 19:08:24 GMT): fabienpe (Thu, 04 Mar 2021 10:46:56 GMT): anand.balagopalan (Thu, 18 Mar 2021 14:11:42 GMT): nmarco (Sat, 20 Mar 2021 13:12:25 GMT): lehors (Thu, 29 Apr 2021 15:31:02 GMT): SankalpBharti (Sat, 29 May 2021 07:19:42 GMT): Gavimat (Wed, 13 Oct 2021 20:10:23 GMT): shivraj (Sun, 14 Nov 2021 11:19:03 GMT): JeenaDevasia (Sun, 19 Dec 2021 13:26:32 GMT): rjones (Wed, 23 Mar 2022 17:24:30 GMT): rjones (Wed, 23 Mar 2022 17:24:30 GMT): rjones (Wed, 23 Mar 2022 17:24:30 GMT):
@mahoney1 ...i am now stuck at running composer-rest-server using the identity i created using composer-cli. I keep getting following error
*composer-rest-server -c fisherman_user@fish-trade-network
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)
at _checkRuntimeVersions.then.catch (/Users/nxshah5/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:679:34)
at
@mahoney1 ...i am now stuck at running composer-rest-server using the identity i created using composer-cli. I keep getting following error.
*composer-rest-server -c fisherman_user@fish-trade-network
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)
at _checkRuntimeVersions.then.catch (/Users/nxshah5/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:679:34)
at
Hi...With 0.15 release things have stopped working for me....I have followed instructions carefully but I am having issues with using cards. Following is what I am doing
1. Following directions at https://hyperledger.github.io/composer/tutorials/developer-guide.html
2. create participants and identities and import them as well. This also generates cards
3. Open playground and directly try importing the cards created in step 2 and try to connect
4. It will not connect but keeps giving error that "identity is not registered..."
5. In order to resolve, I copy admin credentials located in .composer/client-data/admin@.... to .composer-credentials folder
6 Then in playground I would create new card, give appropriate connection info , point to /Users/username/.composer-credentials folder for keys and attempt to connect and it would succeed.
7. For other identities which I created in step 2, I would attempt to do the same but looking at the secret from metadata.json from cards/username@network folder. This will then create certs in ./composer-credentials folder. I would also export the card from playground
8 Then I start the composer-rest-server in multiuser mode and would try to import the card (created from step 7) for one of the identity to set as default and would try to ping the network but keeps giving following error
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)",
"stack": "Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: fisherman_user)\n at _checkRuntimeVersions.then.catch (/Users/nxshah5/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:679:34)\n at
Windows 10 Home for Docker containers is a non-starter, isn't it?
Has joined the channel.
@nehalshah50 There is an important step given in the release notes for 0.15.0 which you should follow in order to be able to share cards among the components of composer (cli, playground, rest-server). If you plan to use that identity in multiple places, you must create the card, import the card, ping using that card then export the card (delete the original one) then you can safely share it with the other components.
@greg2git docker for windows will only work on Windows 10 professional. docker toolbox has a windows version which should work on Windows 10 home, but not tried it. However Composer is not supported on windows
@greg2git docker for windows will only work on Windows 10 professional. docker toolbox has a windows version which should work on Windows 10 home, but not tried it. However Composer is not supported on windows and there are many issues trying to get the complete composer experience working on windows.
@greg2git docker for windows will only work on Windows 10 professional. docker toolbox has a windows version which should work on Windows 10 home, but not tried it. However Composer is not supported on windows because there are many issues trying to get the complete composer experience working on windows.
@davidkel Thx. Finally I figured out from release notes.
how do you get transaction detail(data) using rest service on composer-rest-server?
I want to add a query to my composer rest server, which can return the sum of all users' balance. Now I can return all user accounts , Is there any key word like "SUM" can return the sum?
How to use array at asset's type in composer?
Anyone can help me with this? https://stackoverflow.com/questions/47305764/permissioning-in-hyperlededger-fabric-composer-transactions/47309245#47309245
Hi All,need to understand how we can connect the rest API to a front end system like node.js
any example that can help to understand ?
@satyajitsasmal https://github.com/IBM/Decentralized-Energy-Composer This shows how to call rest API using angular. You can also use the Yeoman angular generator for composer to get a quick framework
Hi, has anyone encountered this error when deploying a network ?
`Error: Failed to deserialize creator identity, err expected MSP ID Org2MSP, received Org1MSP`
Hi, Decentralized is not working due to the rest server error. Other than Angular framework any options we have to connect the REST API to node js?
@satyajitsasmal Decentralized works for me. You can use any framework like jquery, react, angular that calls a http request function.
I am personally using jquery to connect to rest api
can you share any such example ?
Best example actually is decentralized
energy network
the other ones are only for composer and dont have a proper UI
Could not connect to REST server. Please check your configuration details
this is the error that i am getting for Decentralised one
go to composer tutorial and follow the my-network exmaple they have. I started from there
yeah, have gone through that
trying to under stand if we can have other UI other than angular
https://hyperledger.github.io/composer/integrating/getting-started-rest-api.html
Follow this. Then when you call an api from the browser ui, just see the url and options, and make a post request using any framework like jquery
No the only example they have is using angular2.0
angular is updated to 4.0
But the concept is the same, send a post request to the api url shows in the REST explorer.
so you still using the angular 2.0 ?
because in 2.0, i was not getting the error
maybe its angular4 then idk.
I am using jquery right now :D Nice and simple
:)
very basic, very easy to learn.
share your example if possible ?
:)
hmm..right
$.post( "../../v0/users/login", { username: $('#username').val(), password: $('#password').val() }). Something like this ? The url ../../v0 part depends on the structure of your project
@satyajitsasmal https://github.com/varunagarwal315/Decentralized-Energy-Composer/blob/master/angular-app/src/app/configuration.ts
thanks Varun
You can use `request` module is nodejs to write a wrapper around the composer-api calls and then call that. You can do this, if you want to add additional middleware which is what i have done. Second option is the link - directly call via the ui framework
Hey guys, anyone of you ever get a overflow int error when deploying a network ?
```Error: Error trying deploy. Error: Error trying to instantiate composer runtime. Error: error starting container: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer/vendor/gopkg.in/olebedev/go-duktape.v3
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.go:131: constant 18446744073709551615 overflows int
"```
Hello everyone! Can I create query with parameter or it's impossible?
@argman Yes you can add parameters. This shows a sample https://hyperledger.github.io/composer/reference/query-language.html
Or you can use a queryBuilder function and add filters
Much thanks!:smile:
@erNail have you built fabric yourself using go 1.9 by any chance ?
Hello everyone! may I ask your a question? How can I verify that the ACL rules in the composer have an effect
@davidkel Almost sure i didn't. I've installed the Composer components with the prerequisites and then the Fabric platform-specific binaries with `curl -sSL https://goo.gl/fMh2s3 | bash` (See http://hyperledger-fabric.readthedocs.io/en/latest/samples.html)
Right, that's pulling the 1.1-preview images down. We don't work or support 1.1-preview at the moment
Right, that's pulling the 1.1-preview images down. We don't work with or support 1.1-preview at the moment
@zhenkunxu Hi, you could try to execute a transaction with a certain identity (In the Playground for example) and see if it's executed or not
@davidkel Okay, thanks. Sooo, what would i need to do to get the supported images ?
Use our dev server or pull down the 1.0.x images yourself
@davidkel Hey if you don't mind, could you check this out for me https://stackoverflow.com/questions/47305764/permissioning-in-hyperlededger-fabric-composer-transactions
@davidkel Probably change the line 'export VERSION=1.1.0-preview' in the https://goo.gl/fMh2s3 ?
@davidkel Oh, there is a dev server ?
Has joined the channel.
@erNail yes, it's a simple server we provide of 1 peer, 1 orderder, 1 ca, 1 couchdb
@erNail see step 2 regarding getting fabric-dev-servers.tar.gz in the guide https://hyperledger.github.io/composer/installing/development-tools.html
@davidkel Oh, that's what you mean. I've used it before, right nor i'm trying to deploy it on my own network. I'll simply get the correct version for the images. Thanks for the help :)
Hi All, Do we have an example/sample project with "blockchain interoperability" i.e. where one blockchain talks to the another blockchain.
Hi, can someone explain more about privacy in Composer?
I understand that ACL will prevent unauthorized access by a "client".
However, participating nodes, with their certificate, can pretty much see ALL the data of the transactions, no? Or am I missing something?
Do queries support joins?
Has joined the channel.
@davidkel I was able to get rid of the int overflow error. I'm now using the 1.03 images. However, deploying the bna on 2 peers is taking a very long time. With the timeout set to 600 it's still not finishing. Any idea why that could be ?
```Error: Error trying deploy. Error: Error trying to instantiate composer runtime. Error: Timeout expired while starting chaincode maintenance-network:0.14.2(networkid:dev,peerid:peer0.example.com,tx:c5daca0ff2d01ffde0370ed6034587ecba3e1d3deb78409a6916207484052368)
Command failed```
@davidkel I was able to get rid of the int overflow error. I'm now using the 1.03 images. However, deploying the bna on 2 peers is taking a very long time. With the timeout set to 600 it's still not finishing. Any idea why that could be ?
```Error: Error trying deploy. Error: Error trying to instantiate composer runtime. Error: Timeout expired while starting chaincode maintenance-network:0.14.2(networkid:dev,peerid:peer0.example.com,tx:c5daca0ff2d01ffde0370ed6034587ecba3e1d3deb78409a6916207484052368)
Command failed```
The same happens with one peer and the timeout set to 2000.
Hey all, is there any ways to synchronize with Composer local playground and generated REST API server? (The problem is: I deployed BNA on the local playground, then I try to connect through composer-cli and generate REST server of that business network, but it will throw chaincode error. Vice verse, if you first deploy BNA through composer-cli, I cannot find the corresponding network on local playground)
Hey all, are there any ways to synchronize with Composer local playground and generated REST API server? (The problem is: I deployed BNA on the local playground, then I try to connect through composer-cli and generate REST server of that business network, but it will throw chaincode error. Vice verse, if you first deploy BNA through composer-cli, I cannot find the corresponding network on local playground)
@enbochen - Yes, the Playground and REST server can both be easily directed to connect to the same Hyperledger Fabric.
A couple of things to note - when you use Playground locally you need to make sure you connect to your Fabric when you deploy your Network from the Bottom Part of the browser under the section *Connection: hlfv1*. If you deploy using the Top Part of the browser with the section *Connection: Web Browser* then the Business Network definition and any data will only be in the local browser storage and NOT on the Fabric.
The first thing the REST server does is to interrogate/discover the running Business Network on the Fabric to build the dedicated API so it will find the Business Network if it is on the Fabric.
If you make changes to the Business Network and update it on the Fabric using Playground, you need to restart the REST server so that it picks up the changes.
Hopefully you are using Composer v0.15.0 and can use the new Business Network Cards to share between Playground and the CLI where you start the REST server.
Hyperledger composer runtime is a smart contract itself as such it abstracts a lot of things from the original hyperledger fabric like go contracts and channels and stuff. Is there a way to use these features (ex data segregation using different channels) in combination with the applications generated by hyperledger composer?
And can you for example hook the Hyperledger Explorer project to the networks generated and used by Composer?
Or retreive anydata stored in the fabric blockchain directly without the use of composer?
Has joined the channel.
Hi all,
Need a help. There is an error when connecting to certificate authority (CA) port when trying to implement as in the https://ibm-blockchain.github.io/interacting/ when trying to expose composer rest services. This is when trying to do composer-rest-server -p ibm-bc-org1 -n test-bna -i admin -s adminpw -N never -w true
[11/16/2017 3:22 PM] Venugopal, Jayasree (Cognizant):
No Title
Discovering types from business network definition ...
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.105.234:30054]
It will be retried for the next request.
Exception: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.105.234:30054]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.105.234:30054]
at client.getUserContext.then.then.catch (/home/ubuntu/.nvm/versions/node/v6.11.4/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:302:34)
at process._tickCallback (internal/process/next_tick.js:109:7)
ubuntu@ip-172-31-35-202:~/.composer-connection-profiles/ibm-bc-org1$ composer network ping -p ibm-bc-org1 -n test-bna -i admin -s adminpw
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.105.234:30054]
Command failed
Discovering types from business network definition ...
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.105.234:30054]
It will be retried for the next request.
Exception: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.105.234:30054]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.105.234:30054]
at client.getUserContext.then.then.catch (/home/ubuntu/.nvm/versions/node/v6.11.4/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:302:34)
at process._tickCallback (internal/process/next_tick.js:109:7)
ubuntu@ip-172-31-35-202:~/.composer-connection-profiles/ibm-bc-org1$ composer network ping -p ibm-bc-org1 -n test-bna -i admin -s adminpw
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.105.234:30054]
Command failed
Discovering types from business network definition ...
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.105.234:30054]
It will be retried for the next request.
Exception: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.105.234:30054]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.105.234:30054]
at client.getUserContext.then.then.catch (/home/ubuntu/.nvm/versions/node/v6.11.4/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:302:34)
at process._tickCallback (internal/process/next_tick.js:109:7)
:~/.composer-connection-profiles/ibm-bc-org1$ composer network ping -p ibm-bc-org1 -n test-bna -i admin -s adminpw
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.105.234:30054]
Command failed
Discovering types from business network definition ...
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.xxx.xxx:30054]
It will be retried for the next request.
Exception: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.xxx.xxxx:30054]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.xxx.xxx:30054]
at client.getUserContext.then.then.catch (/home/ubuntu/.nvm/versions/node/v6.11.4/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:302:34)
at process._tickCallback (internal/process/next_tick.js:109:7)
:~/.composer-connection-profiles/ibm-bc-org1$ composer network ping -p ibm-bc-org1 -n test-bna -i admin -s adminpw
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 159.8.xxx.xxx:30054]
Command failed
I keep getting the error `status: 500, message: Error: Object with ID 'Asset:org.acme.mynetwork.Commodity' in collection with ID '$sysregistries' does not exist)"` when I try posting a transaction. I wonder if it is because the logic.js file in the tutorial has the line `return getAssetRegistry('org.acme.mynetwork.Commodity')` when it should be org.acme.biznet.Commodity.
I am trying to connect to composer(v0.15.0) from node application. When i was using cpmposer version 14.0 i used to give parameters like this bizNetworkConnection.connect(hlfv1,my-network,admin,adminpw) and it used to get connected to composer and I was able to do transactions. But in version 15.0 i am giving parameters like bizNetworkConnection.connect("PeerAdmin@hlfv1", "admin@tutorial-network", "admin", "adminpw") and it is not getting connected and giving error like "UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: Cannot create property 'cardName' on string 'admin@tutorial-network'". Could anybody help me on this please.
Thanks in advance
@mastreips - This can occur if you are trying with a wrong data which does not exist.
[ ](https://chat.hyperledger.org/channel/composer?msg=XSiGp8pD5e87iviyH) @VinodPai the tutorial namespace is `namespace org.acme.biznet` so why does the logic.js function call `getAssetRegistry('org.acme.mynetwork.Commodity')` - biznet vs. mynetwork. Mynetwork was the name of the network in the old tutorial (pre-v0.15). Seems like an error to me
@mastreips - why don't you create another network with same functionality, possibly you can change the namespace and test out.
@JMcWes - Composer uses a default channel of "composerchannel" but could be changed to use a different channel.
You can use Hyperledger Blockchain-explorer, though I would advise testing to verify how much detail is available.
Data added to a Fabric Channel by Composer needs to be accessed by Composer using the API or the REST API.
Currently, you can't mix and match between Composer and Go on a Fabric - you need to use one or the other.
[ ](https://chat.hyperledger.org/channel/composer?msg=GPpsyd7ZySg4xCeMr) @VinodPai yes. I think that's right.
Has joined the channel.
Has joined the channel.
@erNail you will need to look at the peer logs to see why the peer is having problems starting the chaincode contaier
@erNail you will need to look at the peer logs to see why the peer is having problems starting the chaincode container
vagratn ssh
@davidkel How would i access the logs ? I haven't used docker that much.
@ernail docker logs
So if I understand correctly: When I create a business network on Composer(Playground) on hyfv1, I cannot generate REST server (composer-rest-server) for that particular one. Proper way is to create all files locally, generate rest server from them and then push that network up to hyfv1 right?
@skergetd What do you mean by pushing up to hyfv1 ?
The workflow usually is to create the directory and file structure using `yo hyperledger-composer:businessnetwork`, then making your changes, then generating the bna, and then generating the rest-server.
As described here https://hyperledger.github.io/composer/tutorials/developer-guide.html
@mastreips - you are correct there is an error in the Tutorial in the .js file you need to change the namespace to match the namespace in the .cto file.
(The tutorial is being updated)
[ ](https://chat.hyperledger.org/channel/composer?msg=ezmkeHXZZ66wHnecE) @rthatcher thanks for confirming my suspicions
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=no3hEkLoGmNLEpAho) @rthatcher Thanks for your fast reply. I did deploy on the fabric runtime on Docker as you said. After that, when I try to generate with composer-rest-server, then it throw error:"Connection fails: Error: Card not found: admin@my-network". I guess its the problem of id card. I was supposed to have id card generated already on the local playground. Maybe it's not the right route, so composer-rest-server cannot find it?
@davidkel In the logs i found this line: ```2017-11-16 11:27:10.299 UTC [endorser] simulateProposal -> ERRO 4060 failed to invoke chaincode name:"lscc" on transaction dd604527c8e6e7e3b3615966937072bf4fbe89cfc2bc42864b05c45049806067, error: Timeout expired while starting chaincode```
Any idea what it means ?
@enbochen - whenever you try to connect to a Fabric from Composer you need a 'Business Network Card'. You can import/export the cards so wherever you first create it you can export.
From Playground - Click on *Admin* in the top right corner then *My Business Networks*, and then at the bottom you should see your Admin card and there is an Icon to Export it.
On the CLI before you start the REST server - use the `composer card import` command.
[ ](https://chat.hyperledger.org/channel/composer?msg=sPLCvAzT9vJgi6u97) @rthatcher Thanks. I should read more about new release. And you're right, now the identity problem is solved. composer-rest-server is stuck at "Discovering types from business network definition ..." for a couple of minutes, then the error is thrown:`Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT"`. Then I tried to verify by `network ping -c admin@hssc`. Any idea about this?
[ ](https://chat.hyperledger.org/channel/composer?msg=sPLCvAzT9vJgi6u97) @rthatcher Thanks. I should read more about new release. And you're right, now the identity problem is solved. composer-rest-server is stuck at "Discovering types from business network definition ..." for a couple of minutes, then the error is thrown:`Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT"`. Then I tried to verify by `network ping -c admin@hssc` and it's just waiting there. Any idea about this?
[ ](https://chat.hyperledger.org/channel/composer?msg=sPLCvAzT9vJgi6u97) @rthatcher Thanks. I should read more about new release. And you're right, now the identity problem is solved. But now composer-rest-server stuck at "Discovering types from business network definition ..." for a couple of minutes, then the error is thrown:`Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT"`. Then I tried to verify by `network ping -c admin@hssc` and it's just waiting there. Any idea about this?
[ ](https://chat.hyperledger.org/channel/composer?msg=sPLCvAzT9vJgi6u97) @rthatcher Thanks. I should read more about new release. And you're right, now the identity problem is solved. But now composer-rest-server stuck at "Discovering types from business network definition ..." for a couple of minutes, then the error is thrown:`Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT"`. Then I tried to verify by `network ping -c admin@hssc` and it got the same error.(However everything is working fine on local playground) Any idea about this?
[ ](https://chat.hyperledger.org/channel/composer?msg=sPLCvAzT9vJgi6u97) @rthatcher Thanks. I should read more about new release. And you're right, now the identity problem is solved. But now composer-rest-server stuck at "Discovering types from business network definition ..." for a couple of minutes, then the error is thrown:`Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT"`. Then I tried to verify by `network ping -c admin@hssc` and it got the same error.(However everything is working fine through local playground) Any idea about this?
[ ](https://chat.hyperledger.org/channel/composer?msg=sPLCvAzT9vJgi6u97) @rthatcher Thanks. I should read more about new release. And you're right, now the identity problem is solved. But now composer-rest-server stuck at "Discovering types from business network definition ..." for a couple of minutes, then the error is thrown:`Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT"`. Then I tried to verify by `composer network ping -c admin@hssc` and it got the same error.(However everything is working fine through local playground) Any idea about this?
@enbochen - Are your Docker Containers still running? Try the command `docker ps`
[ ](https://chat.hyperledger.org/channel/composer?msg=hn6BboFbGrz4knnR8) @rthatcher Yes docker is still running and I can use playground to CRUD resouce on runtime (runtime logs is updating)
[ ](https://chat.hyperledger.org/channel/composer?msg=hn6BboFbGrz4knnR8) @rthatcher Yes docker is still running and I can use playground to CRUD resouce on runtime (runtime logs is updating). However I tried to ping another business network delployed through composer-cli, and it works. So maybe there is a problem when I deploy BNA through local composer playground?
Screenshot from 2017-11-16 17-58-11.png
:rolling_eyes:
:sob:
[ ](https://chat.hyperledger.org/channel/composer?msg=Kjj4LR5u48kmHxKCa) @rthatcher I solved the issue by replace connection.json of other's networks configuration. The difference is that urls in connection file(deyployed in Composer local playground) is not correct. For example, order url should be `grpc://localhost:7050` while in my connection file is `grpc://orderer.example.com:7050`
[ ](https://chat.hyperledger.org/channel/composer?msg=Kjj4LR5u48kmHxKCa) @rthatcher I solved the issue by replace connection.json of other's networks configuration. The difference is that urls in connection file(deyployed in Composer local playground) is not correct. For example, order url should be `grpc://localhost:7050` while in my connection file is `grpc://orderer.example.com:7050`. Not sure if this is universal problem of composer playground or not.
[ ](https://chat.hyperledger.org/channel/composer?msg=Kjj4LR5u48kmHxKCa) @rthatcher I solved the issue by replace connection.json of other's networks configuration. The problem is that urls in connection file(deyployed in Composer local playground) is not correct. For example, order url should be `grpc://localhost:7050` while in my connection file is `grpc://orderer.example.com:7050`. Not sure if this is universal problem of composer playground or not.
@sravs
"It's likely that you have something in your browser local storage that isn't compatible with the playground environment you are running. Can you try clearing local storage of the browser or open the playground url in an incognito window in chrome and see if you get the same error ?"(https://stackoverflow.com/questions/45542759/error-opening-playground-in-development-environment)
[ ](https://chat.hyperledger.org/channel/composer?msg=32inWgGH6ztARFTF7) @mahoney1 Thanks :) .. I am not clear on few terms.. Can you tell me the difference between these roles i.e. PeerAdmin and ChannelAdmin? Also, once business network is deployed (it will use PeerAdmin for deployment), do deployed business network use PeerAdmin again or its just one time? and only NetworkAdmin is used for issuing idenitty for participants? Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=5B4QyFPD3bsRn786f) @enbochen THanks man for such a nice find! This really helped me a lot and as you said, connection.json is what was not correct. Now everything works fine!
hi i completed the tutorial and finally i cretaed .card file after that i sent .card file to my friend and he imported that but while connecting getting an error that "permission denied mkdir home/vinay"
@skergetd @enbochen - I have just answered this connection question in more detail on Stack Overflow:
https://stackoverflow.com/questions/47319089/hyperledger-composer-0-15-0-sharing-network-with-the-local-playground
Has joined the channel.
@wininani @sravs - I think this is a known issue - but I'm following up
After x requests my rest-server keeps crashing with the error: PM2 Daemon is dead, im running it inside a docker container; anyone got an idea what's going wrong?
[ ](https://chat.hyperledger.org/channel/composer?msg=7HtDsDwe8zgeHnfry) @rthatcher Heh, looks like we both had similar idea :)
[ ](https://chat.hyperledger.org/channel/composer?msg=oCH8iP2Bi2nLuAfzP) @AkshayJindal They are special roles (specified as part of the metadata tha creates the relevant card) that can be performed by the ID in question, which include: peerAdmin, channelAdmin, NetworkAdmin, issuer roles. PeerAdmin role has privileges to install Composer runtime / chaincode on a peer or peers ; ChannelAdmin has privileges to administer the channels specified, including instantiating/starting a business network on that channel (eg. after someone with PeerAdmin role had installed the runtime). Beyond that, think in a multi-org setup, with each setting up their own 'blockchain infrastructure' and identities, etc, configuring their own nodes,channels etc etc. In your local setup, PeerAdmin does the deploy of the business network ; thereafter, that identity does not have authority to issue identities / administer on channels, so we use an identity that does which is the admin identity that is included as part of the Dev setup you installed.
[ ](https://chat.hyperledger.org/channel/composer?msg=oCH8iP2Bi2nLuAfzP) @AkshayJindal They are special roles (specified as part of the metadata tha creates the relevant card) that can be performed by the ID in question, which include: peerAdmin, channelAdmin,). PeerAdmin role has privileges to install Composer runtime / chaincode on a peer or peers ; ChannelAdmin has privileges to administer the channels specified, including instantiating/starting a business network on that channel (eg. after someone with PeerAdmin role had installed the runtime). Beyond that, think in a multi-org setup, with each setting up their own 'blockchain infrastructure' and identities, etc, configuring their own nodes,channels etc etc. In your local setup, PeerAdmin does the deploy of the business network ; thereafter, that identity does not have authority to issue identities / administer on channels, so we use an identity that does which is the admin identity that is included as part of the Dev setup you installed.
Has joined the channel.
hi
root@ubuntu:~/fabric-tools# composer network deploy -a /root/tutorial-network_working_new.bna -A PeerAdmin -C /root/fabric-tools/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -c PeerAdmin@hlfv1 -f /tmp/PeerAdmin@hlfv1.card
Deploying business network from archive: /root/tutorial-network_working_new.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: Start from scratch with a blank business network
✔ Deploying business network definition. This may take a minute...
Successfully created business network card to /tmp/PeerAdmin@hlfv1.card
Command succeeded
root@ubuntu:~/fabric-tools# composer-rest-server
? Enter the name of the business network card to use: PeerAdmin@hlfv1
? Specify if you want namespaces in the generated REST API: always use namespaces
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c PeerAdmin@hlfv1 -n always -w true
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request
Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request
at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:679:34)
I am able to deploy business network from BNA file and business card but getting error in creating REST server
can anyone help me in this ????
@yogesh.fulsunge so 1) in our install docs https://hyperledger.github.io/composer/unstable/installing/development-tools.html we specfically advocate not doing an `npm install` of composer modules using 'root' or a user with sudo privileges as it can causes problems later 2) The deploy command as shown at https://hyperledger.github.io/composer/reference/composer.network.deploy.html is simply `composer network deploy -a tutorial-network_working_new.bna -A admin -S -c PeerAdmin@hlfv1 -f admin.card` the file /tmp/PeerAdmin@hlfv1.card was already created earlier when you set up your development environment and represented PeerAdmin's card.
@yogesh.fulsunge so 1) in our install docs https://hyperledger.github.io/composer/installing/development-tools.html we specfically advocate not doing an `npm install` of composer modules using 'root' or a user with sudo privileges as it can causes problems later 2) The deploy command as shown at https://hyperledger.github.io/composer/reference/composer.network.deploy.html is simply `composer network deploy -a tutorial-network_working_new.bna -A admin -S -c PeerAdmin@hlfv1 -f admin.card` the file /tmp/PeerAdmin@hlfv1.card was already created earlier when you set up your development environment and represented PeerAdmin's card.
[ ](https://chat.hyperledger.org/channel/composer?msg=8DQPEKfvjB8fn4tC9) @mahoney1 npm install is not done using root
@yogesh.fulsunge ok cool
[ ](https://chat.hyperledger.org/channel/composer?msg=8DQPEKfvjB8fn4tC9) @mahoney1 network card is created first then i tried to deploy using composer deploy
whats wrong here?
installation is done using non root user but execution is done using root is that ok ?
anyone can pls help me troubleshoot it ?
hi there @yogesh.fulsunge - sorry just saw the rest of your message, scrolled off the screen
@yogesh.fulsunge so I see your network deployed successfully, but you used your public cert. You should have used the instructions from the docs https://hyperledger.github.io/composer/tutorials/developer-guide.html . You can't use your network (and you can't deploy it again with the same name (even if you do an undeploy) - unless you deploy the network with an alternative name (as in, deploy it with the correct deploy command that I posted earlier or just from the docs link above)). If you do want the same business network name (shown in package.json ie tutorial-network) suggest to tear down your Fabric containers (including the chaincode container). On your REST server issue (I didn't see until now that you started the REST server in the sequence followed) problem is you're trying to use PeerAdmin card (that is in the $HOME/.composer credentials directory( to start the REST server and it doesn't have privileges - instead use your admin.card name ie `admin@tutorial-network ` that you created with your run the `composer network deploy` command. The developer tutorial has the complete sequence, if you want to use the original name / follow that tutorial -> https://hyperledger.github.io/composer/tutorials/developer-guide.html .
@yogesh.fulsunge so I see your network deployed successfully, but you used your public cert. You should have used the instructions from the docs https://hyperledger.github.io/composer/tutorials/developer-guide.html . You can't use your network in its present state (and you can't deploy it again with the same name (even if you do an undeploy) - unless you deploy the network with an alternative name (as in, deploy it with the correct deploy command that I posted earlier or just from the docs link above)). If you do want the same business network name (shown in package.json ie tutorial-network) suggest to tear down your Fabric containers (including the chaincode container). On your REST server issue (I didn't see until now that you started the REST server in the sequence followed) problem is you're trying to use PeerAdmin card (that is in the $HOME/.composer credentials directory( to start the REST server and it doesn't have privileges - instead use your admin.card name ie `admin@tutorial-network ` that you created with your run the `composer network deploy` command. The developer tutorial has the complete sequence, if you want to use the original name / follow that tutorial -> https://hyperledger.github.io/composer/tutorials/developer-guide.html .
@yogesh.fulsunge so I see your network deployed successfully, but you used your public cert. You should have used the instructions from the docs https://hyperledger.github.io/composer/tutorials/developer-guide.html . You can't use your network in its present state (and you can't deploy it again with the same name (even if you do an undeploy) - unless you deploy the network with an alternative name (as in, deploy it with the correct deploy command that I posted earlier or just from the docs link above)). If you do want the same business network name (shown in package.json ie tutorial-network) suggest to tear down your Fabric containers (including the chaincode container). On your REST server issue (I didn't see until now that you started the REST server in the sequence followed) problem is you're trying to use PeerAdmin card (that is in the $HOME/.composer credentials directory( to start the REST server and it doesn't have privileges - instead use your admin.card name ie `admin@tutorial-network ` that you created when you ran the `composer network deploy` command. The developer tutorial has the complete sequence, if you want to use the original name / follow that tutorial -> https://hyperledger.github.io/composer/tutorials/developer-guide.html .
FabricStart-docker.jpg
[ ](https://chat.hyperledger.org/channel/composer?msg=EeQv5CnAubHyAmsJY) @nickyromeijn hmm hard PM2 limit or even a space issue as captured here (more checks by looking in the log). https://github.com/Unitech/pm2/issues/2013
[ ](https://chat.hyperledger.org/channel/composer?msg=EeQv5CnAubHyAmsJY) @nickyromeijn hmm hard PM2 limit or even a space issue? as captured here (more checks by looking in the log). https://github.com/Unitech/pm2/issues/2013
@mahoney1 It usually happens when i try to do quite a few requests at a time; but eventually always after x timespan. If it's limited to resources, how much does the rest-server actually use? The fabric containers keep running just fine it's only the rest-service that crashes
FabricStart-docker.jpg
Hi, I am seeing errors when I run the command composer card list, where I see: jtenmac:dist jeff$ composer card list admin@iadb-test
Error: Card not found: .DS_Store
[ ](https://chat.hyperledger.org/channel/composer?msg=crj4y93cqGnKtLA4i) @nickyromeijn right - so the same thing didn't happen before with same level of activity or you've only recently configured this setup?
@AkshayJindal the business network is deployed to a single org, development fabric runtime setup.
@AkshayJindal the business network is deployed to a single org, fabric runtime (development setup).
[ ](https://chat.hyperledger.org/channel/composer?msg=DxJsur8ypqCn2ksMy) @mahoney1 Is it because we are create more like proof of concept using composer instead of production applications?
[ ](https://chat.hyperledger.org/channel/composer?msg=DxJsur8ypqCn2ksMy) @mahoney1 Is it because we are creating proof of concept using composer instead of production applications?
@mahoney1 It started happening when i increased the load. It appears resolving references is quite taxing on the server
@mahoney1 Also, maybe a bit unrelated, but do you know if it's possible to programmatically retrieve the access token from the rest-server? T
Currently i'm injecting javascript into a hidden window to retrieve it but there must be a better way
angular
What about angular?
Lol my bad I was meant to search the messages for angular
Just trying to figure out if I can run a skeleton angular app now with 0.15 and it looks like you can
I heard there have been issues with it though
?
[ ](https://chat.hyperledger.org/channel/composer?msg=QQBMeCp5EAmWCJ3Sk) @nickyromeijn ok thanks - feel free to raise an issue if you wish. On programatically retrieving, I don't know off-hand. Not sure if this helps (the setting in providers.json and example of retrieval ) https://github.com/strongloop/loopback-component-passport/issues/65 and do a GET/POST of your token to the callback endpoint defined in providers.json
[ ](https://chat.hyperledger.org/channel/composer?msg=QQBMeCp5EAmWCJ3Sk) @nickyromeijn ok thanks - feel free to raise an issue if you wish.
[ ](https://chat.hyperledger.org/channel/composer?msg=7krmkN9STCKhAmy4A) @nickyromeijn On programatically retrieving, I don't know off-hand. Not sure if this helps (the setting in providers.json and example of retrieval ) https://github.com/strongloop/loopback-component-passport/issues/65 and do a GET/POST of your token to the callback endpoint defined in providers.json
Thanks for the answer, i'll check it out :)
How stateless is that component btw?
I know running composer on windows does not work yet but is it possible to use the composer-client module to connect on windows? (Can't test it myself)
I'm having some doubts and troubles following this tutorial from @sstone1, could someone help me? First when I up the network this message appears
`Error response from daemon: No such container: cli`
I think that isn't changing the final result so. But when I tried to install composer runtime this error appears:
```Error: Error trying install composer runtime. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
Command failed```
ohh, and sorry about my english :/ I'm not a native speaker
tried deploying BNA to a multi org network. followed the tutorial for byfn . installed the composer runtime on both the orgs . Tried the below command after that : composer network start -a apparel-network.bna -A admin -S adminpw -c PeerAdmin@byfn-network-org2-only .. got error : Error: Error trying to instantiate composer runtime. Error: error starting container: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer/vendor/gopkg.in/olebedev/go-duktape.v3
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.go:131: constant 18446744073709551615 overflows int
tried deploying BNA to a multi org network. followed the tutorial for byfn . installed the composer runtime on both the orgs . Tried the below command : composer network start -a apparel-network.bna -A admin -S adminpw -c PeerAdmin@byfn-network-org2-only ..after that got error : Error: Error trying to instantiate composer runtime. Error: error starting container: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer/vendor/gopkg.in/olebedev/go-duktape.v3
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.go:131: constant 18446744073709551615 overflows int
Please help
Hello all. Does anyone know how I can start an already deployed bna container after a reboot?
@msmarcal but if your docker containers were stopped then that means that you need to redeploy it
@andreasp1994 I've changed `fabric-tools/fabric-scripts/hlfv1/composer/docker-compose.yml` and added a mount point on the host to get the data persistent.
@andreasp1994 after that, if I try to deploy the business network again, I get the following error:
`Error: Error trying deploy. Error: Business network has already been deployed or undeployed and cannot be deployed again.`
can you ping it?
@msmarcal
@andreasp1994
`Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request`
nope :(
@msmarcal what command are you using to ping it?
`composer network ping -c PeerAdmin@hlfv1`
@msmarcal you should use the admin card that you created with the `composer card import --file networkadmin.card`
@andreasp1994 ah ok, sorry:
```
The connection to the network was successfully tested: doublecheck
version: 0.15.0
participant: org.hyperledger.composer.system.NetworkAdmin#admin
Command succeeded
@andreasp1994 I don't know what happened but, just after did ping it, the bna container started
haha nice :)
I'll continue with my testing. I just was wondering if there was a proper way to get data persistence...
hey guys I am getting this error when trying to connect with composer-client v0.15 on composer business network `TypeError: Cannot create property 'cardName' on string 'asclepeion-network'`
Any ideas what might happening?
Can I emit events from the Client API??
Has joined the channel.
Hi all - I am new and going through the developer guide at https://hyperledger.github.io/composer/tutorials/developer-guide.html - I have completed all the prereqs and when I hit Step 3 for deploying a .bna file I get the following error: TypeNotFoundException: Type ChangeAssetValue is not defined in namespace org.acme.biznet
Anyone has any ideas on how this can be fixed?
nevermind - i figured out the solution
Has joined the channel.
Hi all,
Has anyone managed to connect the blockchain explorer with the fabric-dev-servers images from the composer documentation?
I'll be grateful if someone can help me with the network-config file
Hi all, when using composer-client V0.15, I have deployed the network running a command similar to the docs: `composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card`.. I then imported the card: `composer card import --file networkadmin.card`, I then create a new participant (jeff) using the newly created networkadmin card. However if I attempt to issue an identity to the new participant using a command similar to this: `composer identity issue --card admin@tutorial-network -f jeff@tutorial-network.card -u jeff -a 'resource@org.blah.test.Trader#jeff' The command returns an error: Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]. What permissions does the networkadmin that is created during the composer network start have? Should I be creating a different admin for issuing new identities? Thanks!
Hi all, when using composer-client V0.15, I have deployed the network running a command similar to the docs: `composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card`.. I then imported the card: `composer card import --file networkadmin.card`, I then create a new participant (jeff) using the newly created networkadmin card. However if I attempt to issue an identity to the new participant using a command similar to this: `composer identity issue --card admin@tutorial-network -f jeff@tutorial-network.card -u jeff -a 'resource@org.blah.test.Trader#jeff'` The command returns an error: Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]. What permissions does the networkadmin that is created during the composer network start have? Should I be creating a different admin for issuing new identities? Thanks!
How do i search of a referenced object field in a transaction. e.g. participant Owner identified by ownerSSN {
o String ownerSSN
o String firstName
o String lastName
o String emailAddress
o String telephone
}
transaction Sale {
o Double salePrice
--> Property property
--> Owner newOwner
}
How do i search of a referenced object field in a transaction. e.g. im trying to search for the ownerSSN from my transaction below
participant Owner identified by ownerSSN {
o String ownerSSN
o String firstName
o String lastName
o String emailAddress
o String telephone
}
transaction Sale {
o Double salePrice
--> Property property
--> Owner newOwner
}
How do i search of a referenced object field in a transaction. e.g. im trying to search for the ownerSSN from my Sale transaction below. The app deployed fine, but its just not working?
participant Owner identified by ownerSSN {
o String ownerSSN
o String firstName
o String lastName
o String emailAddress
o String telephone
}
transaction Sale {
o Double salePrice
--> Property property
--> Owner newOwner
}
How do i search of a referenced object field in a transaction. e.g. im trying to search for the ownerSSN from my Sale transaction below. The app deployed fine, but its just not working?
participant Owner identified by ownerSSN {
o String ownerSSN
o String firstName
o String lastName
o String emailAddress
o String telephone
}
transaction Sale {
o Double salePrice
--> Property property
--> Owner newOwner
}
query selectSaleTransactionByOwner {
description: "Search transactions for property by PIN"
statement:
SELECT org.tibco.propertynetwork.Sale
WHERE (newOwner == _$ownerSSN)
}
@sstone1 Hi, a short question regarding image copyright. Can the Hyperledger Composer logo be used when posting Hyperledger Composer tutorials and or articles on blogs or do the rights to do this need to explicitly requested? Thank you. Talking about this logo. https://hyperledgercomposer.gallerycdn.vsassets.io/extensions/hyperledgercomposer/composer-support-client/0.14.2/1509641165610/Microsoft.VisualStudio.Services.Icons.Default
Has joined the channel.
I am trying to generate angular for the rest api created thru composer using Yo, but it creates UI only for assets. How can I create UI for Participants and Transactions
Message
Choose File
*bold*
_italics_
~strike~
`inline_code`
```
multi
line
```
\[KaTeX\]
>quote
Search Messages
You can search using RegExp. e.g. /^text$/i
angular
I am trying to generate angular for the rest api created thru composer using Yo, but it creates UI only for assets. How can I create UI for Participants and Transactions
Message
Choose File
*bold*
_italics_
~strike~
`inline_code`
```
multi
line
```
\[KaTeX\]
>quote
Search Messages
You can search using RegExp. e.g. /^text$/i
angular
I am trying to generate angular for the rest api created thru composer using Yo, but it creates UI only for assets. How can I create UI for Participants and Transactions
Message
Choose File
*bold*
_italics_
~strike~
`inline_code`
```
multi
line
```
\[KaTeX\]
>quote
Search Messages
You can search using RegExp. e.g. /^text$/i
angular
I am trying to generate angular for the rest api created thru composer using Yo, but it creates UI only for assets. How can I create UI for Participants and Transactions
Message
Choose File
*bold*
_italics_
~strike~
`inline_code`
```
multi
line
```
\[KaTeX\]
>quote
Search Messages
You can search using RegExp. e.g. /^text$/i
angular
I am trying to generate angular for the rest api created thru composer using Yo, but it creates UI only for assets. How can I create UI for Participants and Transactions
Message
Choose File
*bold*
_italics_
~strike~
`inline_code`
```
multi
line
```
\[KaTeX\]
>quote
Search Messages
You can search using RegExp. e.g. /^text$/i
angular
I am trying to generate angular for the rest api created thru composer using Yo, but it creates UI only for assets. How can I create UI for Participants and Transactions
Message
Choose File
*bold*
_italics_
~strike~
`inline_code`
```
multi
line
```
\[KaTeX\]
>quote
Search Messages
You can search using RegExp. e.g. /^text$/i
angular
I am trying to generate angular for the rest api created thru composer using Yo, but it creates UI only for assets. How can I create UI for Participants and Transactions
I am trying to generate angular for the rest api created thru composer using Yo, but it creates UI only for assets. How can I create UI for Participants and Transactions
Error when deploying bna :Deploying business network definition. This may take a minute...
Error: Error trying deploy. Error: Error trying to instantiate composer runtime. Error: error starting container: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer/vendor/gopkg.in/olebedev/go-duktape.v3
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.go:131: constant 18446744073709551615 overflows int
"
please help
@andreasp1994 I am getting the same error as u "TypeError: Cannot create property 'cardName' on string 'asclepeion-network'". could you please tell me if u have found the solution?
@Akshatha Yeah I did probably you updated your composer-client without noticing
in v0.15.0 the connect method only gets the card name
so in case you have something like `bizNetwork.connect(connection_profile, bussiness-network, id, secret)`
change it to `bizNetwork.connect(cardName)`
Please specify what changes You have done after that
where cardName is your preferred cardName ofcourse
Ya sure Thank you.. I will try this
@andreasp1994 Thank you so much:) It worked
No problem :)
once i install composer development tools using non privileged, which user shall i use to run it? can i run using root user?
i mean the profile and card creation, and network deploy commands needs to be run from root or non privileged user only ?
Can we do an integration of Hyperledger Composer with Hyperledger Explorer ?
Use of explorer to view transactions , chain code or blocks store on ledger. With the use of composer also transactions are getting stored on ledger on blockchain network.So ideally we should be able to those details on explorer. Please confirm whether my understanding is correct or not.
@flash139 I am also interested in using blockchain-explorer. Basically blockchain-explorer should work on any underlying blockchain whether created by composer or other means. However, I dont have experience of using blockchain-explorer on composer blockchain.
ok @mna2016 Hope we get soon ! lets start searching ...:relaxed:
@flash139 fyi, there is a separate channel for blockchain explorer. Just search for "blockchain-explorer" and join.
hello Please tell me who has the Chinese version of video, thank you for sharing!!!
@JosephKovuri you are using fabric 1.1-preview as your fabric level in your network which we don't support you should change your docker-compose files to use 1.0.4
[ ](https://chat.hyperledger.org/channel/composer?msg=p8vutycTrGvjR7PX9)
@tennenjl it's likely that you had some old credentials cached. We are working on ensuring any cached information is removed when you import a card with the same name, but for now what you can do is you can remove the card store and cache (which the cli uses) by deleting the `${HOME}/.composer` directory and re-importing your cards.
[ ](https://chat.hyperledger.org/channel/composer?msg=7b33b2zsGeLDpvTHq)
@yogesh.fulsunge None of our commands require root user to run
@davidkel I would really like to pick your brain about multi tenancy and the current implementation of the rest-server / cards. I'm wondering about 1. the scaleability of the rest-server. Is it stateless when using Github/Facebook auth etc? (can't find anything on it, not even on the connector repo or loopback). 2. Are there any plans to make it possible to retrieve the access token if running the rest-server as a completely seperate service? Currently if you want to retrieve the accesstoken programmatically you run into CORS issues so users must manually copy-paste the token to able to use it? 3. Regarding multi tenancy; in my use-case imagine a public pc where people want to authenticate using cards; while with 0.15 they're portable (which is nice) i'm really having my doubts importing and deleting them from the filesystem to be able to issue transactions. Why isn't it possible to use cards programatically without importing them first?
@nickyromeijn That's a lot of different questions :-) Could you categorise them and create stackoverflow questions for each category please
@davidkel Yeah i know, sorry :) i'll pop 'm up on stack so other people can get the answers as well
Has joined the channel.
Hello
Screen Shot 2017-11-17 at 10.15.11.png
I am getting quite strange error message when I want to generate rest server
Hi all. I would really like to get a prototype up and running where different participants can log in, make transactions and only see the things they have permission to see. Could someone give me a general idea about how I can get multiple users? Does each participant need a separate card to log in and do they all need to go through Github to authorise themselves? Any help would be greatly appreciated :)
@yogesh.fulsunge - you should NOT need root or sudo to run the composer commands
@mna2016 @flash139 - I have used Blockchain Explorer with Composer. You can see blocks and transactions, and relate the transactions back to the Historian in Composer. You should test it to see if it shows you what you need.
@kiknaio - what do you have for the ACL for your Business Network? Perhaps you have locked out the network admin user?
How did you deploy the network and create the Business Network Card?
Installation: `wine-market composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName wine-market`.
Start: `composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --netowrkAdminEnrollSecret adminpw --archiveFile wine-network@0.0.1.bna --file networkadmin.card`.
I have imported
`composer card import --file networkadmin.card`
admin card
@JoshuaRippon - First you create *Participants* according to your model. Then you Issue *Identities* to these users in the form of *Business Network Cards*. At this point you can test your permissions and model using the Playground by switching between the Cards in your wallet in the Playground.
The REST server can be secured using Github or many other options supported by passport. This document shows the various configuration possibilities of the REST server:
https://hyperledger.github.io/composer/integrating/integrating-index.html
I would advise starting with a simple model and permission scenarios and test with the Playground initially.
Great thankyou @rthatcher. Can I script out the issuing of identities in a demo transaction performed by the network admin? Or is this all done via the command line?
@JoshuaRippon You can Issue Identities via the CLI or scripting via the JavaScript API, or in Playground.
This doc shows the JavaScript API and the CLI:
https://hyperledger.github.io/composer/managing/identity-issue.html
Thankyou!!
Has joined the channel.
@here we've released Hyperledger Composer v0.15.1, with plenty of bug fix goodness - check out the release notes and the latest Conga comic here! 🎉 https://github.com/hyperledger/composer/releases/tag/v0.15.1
okay
@sstone1 & team, thanks for the update :)! Always love the comics
Cheers guys! It's awesome to see a tutorial that delves into the architecture of the Fabric network
@JoshuaRippon Yeah it really is :)
Was just wondering if composer has the capabilities to create private channels?
@JoshuaBarker - by default Composer uses a channel called 'composerchannel', but it can be configured to use a different channel.
@rthatcher - would it be possible to run a scenario where the information of a private transaction between two users cannot be viewed by others?
[ ](https://chat.hyperledger.org/channel/composer?msg=acP3uLkfeHPcN4phg) @rthatcher in the prereqinstall.sh for composer sudo is used to install docker-ce and some more tools but will this make any issues
?
@JoshuaBarker - an ACL that allows users to see only 'their data' could be the way forward for you. There are examples of how to do this by searching this channel for ACL and also on Stack Overflow. The PII sample model in the playground shows a very simple example.
Hey so Alice and Bob want to exchange some assets between them, but only they have `update` access on their own assets. If Alice calls a transaction to update the assets, it throws an acl error. Any tips?
@yogesh.fulsunge - docker-ce is OK without using root or sudo - as part of the setup you may need to add your user to the linux group docker. But the simple thing with docker is to run the small helloworld test to see if it works.
[ ](https://chat.hyperledger.org/channel/composer?msg=a4KrnS8yRPujDLDzC) @rthatcher pls answer my another question yogesh@ubuntu:~/fabric-tools$ ./createPeerAdminCard.sh
[ ](https://chat.hyperledger.org/channel/composer?msg=a4KrnS8yRPujDLDzC) @rthatcher docker-ce is now working after i rebooted and logged in as non privileged account previously i was using root acount
Hyperledger Composer PeerAdmin card has been imported
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --name
i have created network card but its created in above name is it ok ?"
@yogesh.fulsunge yes that looks fine
[ ](https://chat.hyperledger.org/channel/composer?msg=hrgkf3Gh43ZcmZ9SL) @sstone1 Hello. I am running composer version 0.15.0. can i follow the new tutorial (released in 0.15.1) with my current version or do i need to upgrade?
now do i need same card to exist in my bna file ???
@yogesh.fulsunge once check this tutorial https://hyperledger.github.io/composer/tutorials/developer-guide.html
? Enter the name of the business network card to use: PeerAdmin@hlfv1
? Specify if you want namespaces in the generated REST API: always use namespaces
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c PeerAdmin@hlfv1 -n always -w true
Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'
anyone knows solution for above error ????
please ignore above error
please provide me solution for below error
yogesh@ubuntu:/usr/local/lib/node_modules/composer-rest-server$ composer-rest-server
? Enter the name of the business network card to use: PeerAdmin@hlfv1
? Specify if you want namespaces in the generated REST API: always use namespaces
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c PeerAdmin@hlfv1 -n always -w true
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request
Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request
at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:709:34)
at
above error came while running composer-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=od39c3qv7JHzojvf5) @mmyburgh hi there - you search (in your REST parameter (for the query - eg. newOwner) using the full resource URI reference as the search parameter - eg. `resource:org.acme.biznet.Trader#TRADER2` see below
[ ](https://chat.hyperledger.org/channel/composer?msg=od39c3qv7JHzojvf5) @mmyburgh hi there - you search (in your REST parameter (for the query - eg. newOwner) using the full resource URI reference as the search parameter - eg. `resource:org.acme.biznet.Trader#TRADER2` see below (in the screenshot 'Trade' is the transaction - equivalent to 'Sale')
Clipboard - November 17, 2017 12:24 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=rjnFbvGu5BJCEYEfk) @mahoney1 Thats what i have done and its not working. It workd on an assets or participant, but not when i do it on a transaction.
generally where the network transactions and participants data will store when we are running in localhost
[ ](https://chat.hyperledger.org/channel/composer?msg=guRy8PziPZFwBxzCy) @mmyburgh and you presumably have actually submitted 'Sale' transactions for the query parameter you provided in REST ? :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=8fWToRQKG6CD4s9bj) @mahoney1 yes i have, but let me setup an example quick and send you the screenshot
ok, did you submit transactions through a POST or Playground (connected) etc. ?
rest POST
[ ](https://chat.hyperledger.org/channel/composer?msg=M2nut2HpF9jkvuJ8u) @mahoney1 not using playground, i use REST POST for all transactions
[ ](https://chat.hyperledger.org/channel/composer?msg=MQhh6sX5akqkceXw8) @wininani on the ledger http://hyperledger-fabric.readthedocs.io/en/release/ledger.html?highlight=stored
2017-11-17_07-37-43.png
[ ](https://chat.hyperledger.org/channel/composer?msg=gtftdamJZ8QwRxBZW) [ ](https://chat.hyperledger.org/channel/composer?msg=ML8yDYzssz8muABXp) Ah, i must have done something wrong, :) :(, its working now, thanks for the response
@mmyburgh ..cool...:thumbsup:
yogesh@ubuntu:~/fabric-tools/fabric-scripts/hlfv1$ composer network deploy -a /home/yogesh/mynetwork.bna -A admin -C /home/yogesh/fabric-tools/fabric-scripts/hlfv1/composer//crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457_sk -c admin@mynetwork -f /tmp/PeerAdmin@hlfv1.card
Deploying business network from archive: /home/yogesh/mynetwork.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: Start from scratch with a blank business network
Error: Error trying to ping. Error: Error trying to query business network. Error: could not find chaincode with name 'mynetwork' - make sure the chaincode mynetwork has been successfully instantiated and try again
Command failed
whats wrong in above command ?
you're deploying mynetwork.bna with identifier tutorial-network
my guess is that you should deploy tutorial-network.bna
@yogesh.fulsunge suggestions .. - 1) check your network name in package.json matches as mentioned 2) you can verify your card list by using `composer card list` 3) just...use .. `composer network deploy -a _yournetwork.bna_ -A admin -S -c PeerAdmin@hlfv1 -f admin.card` - DO call your admin card something else (as its not a PeerAdmin card ie -f). ie once you have checked the integrity of your bnan file (which you should re-create) and package.json and 4) the failed to load connector modules suggests your Composer install (composer-cli, compose-rest-server,etc etc as listed here -> https://hyperledger.github.io/composer/installing/development-tools.html had not completed successfully -assume for each you did a global install too `-g` - other than that, hard to know, but if you've been seeing this error for some time now - if it persists, then I would suggest to do a teardown (and remove any existing chaincode business network containers), and then an npm uninstall -g and then - install Composer packages again / startFabric for a new Fabric environmentincluding a new PeerAdminCard. all doneas a non-root user of course.
@yogesh.fulsunge suggestions .. - 1) check your network name in package.json matches as mentioned 2) you can verify your card list by using `composer card list` 3) just...use .. `composer network deploy -a _yournetwork.bna_ -A admin -S -c PeerAdmin@hlfv1 -f admin.card` - DO call your admin card something else (as its not a PeerAdmin card ie -f). ie once you have checked the integrity of your bnan file (which you should re-create) and package.json and 4) the failed to load connector modules suggests your Composer install (composer-cli, compose-rest-server,etc etc as listed here -> https://hyperledger.github.io/composer/installing/development-tools.html had not completed successfully -assume for each you did a global install too `-g` - other than that, hard to know, but if you've been seeing this error for some time now - if it persists, then I would suggest to do a teardown (and remove any existing chaincode business network containers), and then an npm uninstall -g and then - install Composer packages again / startFabric for a new Fabric environmentincluding a new PeerAdminCard. all doneas a non-root user of course.Once installed, Composer does not need root or sudo access to perform tasks.
Hey guys I am getting an error when trying to create a participant when using the REST server in multi user mode
```{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)",
"stack": "Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)\n at _checkRuntimeVersions.then.catch (/home/ubuntu/.nvm/versions/node/v8.9.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:679:34)\n at
@mahoney1 under .composer what is the difference between the cards directory and client-data directory?
The configuration for the REST server should be specified using the environment variable COMPOSER_PROVIDERS.
where do i change this?
@j [ ](https://chat.hyperledger.org/channel/composer?msg=jys8huD7MChYQJWPu) @jdockter Together, both `cards` and `client-data` directories are an integral part of the whole card structure. `client-data` is where the hlfv1 composer connector will store the identity credentials for a card (either by importing or when it enrolls an identity). eg for `admin@tutorial-network` it will have the usual client crypto artifacts eg. 'admin' xx-priv, xx-pub (It’s what was previously stored in ~/.composer-credentials).
The imported cards get persisted to the `cards` subdirectory.. If a card contains only an enrollment secret, this will get used on 'first use' to obtain the certificate, which will get stored initially only in the `client-data`. Certainly includes the certificate and private key for the user identity (which come either directly from the imported business network card, or are retrieved using the enrollment secret from the imported business network card). If the card is subsequently exported then any certificate data gets retrieved from `client-data` and added to the card content that is handed back, But one if you like acts as the card store including busness network metadata elements and the other is the working client credentials store and cache..
@j [ ](https://chat.hyperledger.org/channel/composer?msg=jys8huD7MChYQJWPu) @jdockter Together, both `cards` and `client-data` directories are an integral part of the whole card structure. `client-data` is where the hlfv1 composer connector will store the identity credentials for a card (either by importing or when it enrolls an identity). eg for `admin@tutorial-network` it will have the usual client crypto artifacts eg. 'admin' xx-priv, xx-pub (It’s what was previously stored in ~/.composer-credentials).
The imported cards get persisted to the `cards` subdirectory.. If a card contains only an enrollment secret, this will get used on 'first use' to obtain the certificate, which will get stored initially only in `client-data`. Certainly includes the certificate and private key for the user identity (which come either directly from the imported business network card, or are retrieved using the enrollment secret from the imported business network card). If the card is subsequently exported then any certificate data gets retrieved from `client-data` and added to the card content that is handed back, If you like, one acts as the card store including busness network metadata elements and the other is the working client credentials store and cache..
[ ](https://chat.hyperledger.org/channel/composer?msg=heuQ2qeLzBfYeEfvD) @davidkel As always, thanks will give it a try.
[ ](https://chat.hyperledger.org/channel/composer?msg=GLwQya6x4Btse829R) @kiknaio Check your `permision.acl` file. Maybe you didin't garantee network acess to users. Check if you have some like this in your archive.
``` rule SystemACL {
description: "System ACL to permit all access"
participant: "ANY"
operation: READ
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=NfHp5AXJc6D24dFfh) @berndoostrum set your envrironment variable (see 'Configuring your REST server' Step 10 of https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html ) and restart your REST server (also shown further down are docker starts with a changed COMPOSER_PROVIDERS for both persistent and non-persistent start ups)
@mahoney1 thanks! Didnt look at that page, tought it was a later step.
@JoshuaRippon did you use the card for admin@example elsewhere before you started up - probably now have different admin credentials in your cache. This is documented in the v0.15.0 release notes -> https://github.com/hyperledger/composer/releases/tag/v0.15.0 - suggest to remove your $HOME/.composer directory (stopping your REST server etc first) and re-import your cards (your PeerAdmin card should be in /tmp and the one for your current runtime Fabric (`composer card import --file /tmp/PeerAdmin@hlfv1.card `) and, then also next import your networkAdmin card (eg. admin@example) that you created earlier again. using `composer card import` - then try spin up your REST server using that card.,
@mahoney1 thanks...another question...what is `composer network ping -c admin@tutorial-network` actually doing under the covers?
@mahoney1 thanks...another question...what is `composer network ping -c admin@tutorial-network` actually doing under the covers? Is anything in cards or client-data being updated?
@vitorduarte just recreated the project an works well now
Thanks anyway!
@mahoney1 where do i edit the configuration of the REST server?
[ ](https://chat.hyperledger.org/channel/composer?msg=bHYJDurjvyuBJqHiL) @berndoostrum I would start here to better understand the full capabilities of the REST server, https://hyperledger.github.io/composer/integrating/integrating-index.html
@berndoostrum also note issue here that is still open, https://github.com/hyperledger/composer/issues/2654
@jdockter I believe ping just connects to the runtime using that card and verifies that the runtime version is compatible with the package version
@Jakeeyturner okay figured as much but wanted to double check
So looking at admin@my-network card...when does the credentials directory get populated? PeerAdmin@hlfv1 has a certificate and privateKey file
@mahoney1 @davidkel ^^^
@jdockter If you call 'ping' (where you use a card that only has enrolment secret then `.composer/client-data/
@jdockter If you call 'ping' (where you use a card that only has enrolment secret then `.composer/client-data/
hello, can anyone help me with these question: when we talk about the IBM blockchain or hypeledger, what blockchain this actually is and where does the code actually run, who participates in the blockchain network, where does the smart contract actually reside, who validates and how, etc.
@Emmy - this chat is really for Composer, the Hyperledger project is described here https://hyperledger.org/projects - you can google IBM Blockchain for their offerings such as hosting blockchain networks between multiple organsations that want to participate in a blockchain network. Composer is a development toolset, suite and framework that help you build use cases and turn these into business networks, applications and smart contracts that will ultimately run and be deployed to a blockchain network (ie an infrastructure that is set up by those multiple orgs)
Has joined the channel.
Hello Guys, I was trying to create a blockchain app, I'm stuck at this point: composer runtime install --card PeerAdmin@hlfv1 --businessNe
tworkName tutorial-network
Do you mean that IBM does the same work as the one done by miners in the bitcoin blockchain and that the composer is like a wallet?
I ran this command: composer card list
@mahoney1 Do you mean that IBM does the same work as the one done by miners in the bitcoin blockchain and that the composer is like a wallet?
And I don't have any cards
@mahoney1 so I'm walking through the https://hyperledger.github.io/composer/tutorials/developer-tutorial.html, Deploying the business network section...I've run steps 1 to 4...so at this point `/.composer/cards/admin@my-network/credentials/` is empty , but `/.composer/cards/client-data/admin@my-network/` has admin, priv and pub files...so seems like the info is split across two directories to connect to the local fabric...is that correct?
@mahoney1 so I'm walking through the https://hyperledger.github.io/composer/tutorials/developer-tutorial.html, Deploying the business network section...I've run steps 1 to 4...so at this point `/.composer/cards/admin@my-network/credentials/` is empty , but `/.composer/client-data/admin@my-network/` has admin, priv and pub files...so seems like the info is split across two directories to connect to the local fabric...is that correct?
I was wondering how I can get the privateKey certificate etc. to create a card
@jdockter I was doing the same tutorial were you able to create a card
composer runtime install --card
??
@agileThinker yes...all four steps worked for me ...I'm at Composer 15.1
[ ](https://chat.hyperledger.org/channel/composer?msg=37CZwuBsinHQioj2g) @Emmy no, they are not mining. Bitcoin is based on a public blockchain (that you refer to) - whereas Hyperledger Fabric and Composer deal with private, permissioned blockchain between known parties/Orgs. I suggest you Google some articles it will explain the differences (that you seek to understand) in more detail - cheers
@jdockter when you run: composer card list
do you see any cards
?
[ ](https://chat.hyperledger.org/channel/composer?msg=oudajyPw9m6gTjmbm) @mahoney1 thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=QvXYausDtQ6NfpuQG) @jdockter correct.
Has joined the channel.
Screenshot from 2017-11-17 11-00-34.png
I don't have any cards :(
the commands didn't work for me I'm on version 15.0
how can I update composer?
@agileThinker composer card list works for me...to update composer I follow this doc, https://hyperledger.github.io/composer/installing/development-tools.html
[ ](https://chat.hyperledger.org/channel/composer?msg=qHGwdhyNRys9oZPHG) @jdockter misread alot of stuff, working now thanks
@jdocker did you run those commands as root
I'm a root user
I wasn't able to run them with a non-root account
I updated to v15.0.1
@jdocer
@jdockter Probably there is something wrong with my cards... do you know how to create a card manually, cuz the tutorial says that PeerAdmin@hlfv1 should already be created
for me its not so I was wondering how I can create it myself
I found this link: But https://hyperledger.github.io/composer/managing/id-cards-playground.html
@jdockter Where is the /.composer/ directory?
@here Can someone tell me how I can create a new card, and get a enrollsecret certificate or a private key
?
@agileThinker check the cli documentation https://hyperledger.github.io/composer/reference/commands.html
[ ](https://chat.hyperledger.org/channel/composer?msg=X6GqJa9mgv6EF49JH) @agileThinker here the .composer directory is at $HOME. Try `~/.composer`
[ ](https://chat.hyperledger.org/channel/composer?msg=w57HGwNyaMPTztwky) @agileThinker :-) did you do the standard Dev setup - I'm assuming yes (I see 'tutorial-network' in your screenshot) - it looks like you haven't run `./createPeerAdminCard.sh` script in the tools setup sequence from here https://hyperledger.github.io/composer/installing/development-tools.html that is ```cd ~/fabric-tools
./downloadFabric.sh
./startFabric.sh
.*/createPeerAdminCard.sh*``` The last step - would have created you a PeerAdmin@hlfv1 business network card.
[ ](https://chat.hyperledger.org/channel/composer?msg=w57HGwNyaMPTztwky) @agileThinker :-) did you do the standard Dev setup - I'm assuming yes (I see 'tutorial-network' in your screenshot) - it looks like you haven't run `./createPeerAdminCard.sh` script in the tools setup sequence from here https://hyperledger.github.io/composer/installing/development-tools.html that is ```cd ~/fabric-tools
./downloadFabric.sh
./startFabric.sh
.**/createPeerAdminCard.sh**``` The last step - would have created you a PeerAdmin@hlfv1 business network card.
[ ](https://chat.hyperledger.org/channel/composer?msg=w57HGwNyaMPTztwky) @agileThinker :-) did you do the standard Dev setup - I'm assuming yes (I see 'tutorial-network' in your screenshot) - it looks like you haven't run `./createPeerAdminCard.sh` script in the tools setup sequence from here https://hyperledger.github.io/composer/installing/development-tools.html that is ```cd ~/fabric-tools
./downloadFabric.sh
./startFabric.sh
_./createPeerAdminCard.sh_``` The last step - would have created you a PeerAdmin@hlfv1 business network card.
[ ](https://chat.hyperledger.org/channel/composer?msg=w57HGwNyaMPTztwky) @agileThinker :-) did you do the standard Dev setup - I'm assuming yes (I see 'tutorial-network' in your screenshot) - it looks like you haven't run `./createPeerAdminCard.sh` script in the tools setup sequence from here https://hyperledger.github.io/composer/installing/development-tools.html that is ```cd ~/fabric-tools
./downloadFabric.sh
./startFabric.sh
./createPeerAdminCard.sh``` The last step - would have created you a PeerAdmin@hlfv1 business network card.
[ @agileThinker - hi there - so you don't need to run any composer command as root or sudo. Furthermore from the install tools page -> https://hyperledger.github.io/composer/installing/development-tools.html none of the Composer npm packages should have been installed with root or sudo - otherwise you will get problems further down the line - just saying.
@vitorduarte I tried to create a card I'm missing connection.json file
@mahoney1 I think I ran it but I might have deleted that file
I will create a new user
and start the process again
Thanks guys
Screenshot from 2017-11-17 11-24-27.png
you haven't got a connection.json file :-) I suggest to locate the `fabric-tools` directory in any case - you will have to create the PeerAdmin card because it has certain roles to be able to do the business network deploy etc . the steps to follow are in section `Step 2: Starting Hyperledger Fabric` in the install doc https://hyperledger.github.io/composer/installing/development-tools.html
@AkshayJindal The easiest thing to do is follow these steps below:
1) `npm uninstall -g composer-cli`
2) `npm uninstall -g composer-rest-server generator-hyperledger-composer composer-playground`
@AkshayJindal The easiest thing to do is follow these steps below:
1) `npm uninstall -g composer-cli`
2) `npm uninstall -g composer-rest-server generator-hyperledger-composer composer-playground`
@mahoney1 I found the fabric-tools directory and the peer admin :) looking for the connection.json file now
Screenshot from 2017-11-17 11-35-04.png
Has anyone managed get an angular app up and running with the v 0.15 updates?
@agileThinker you should download the FabricTools again and run the createPeerAdminCard.sh again - it will be easier - then you can follow the Developer tutorial
Guys,
I have updated to v0.15
After issuing deploy command and it ran successfully ..
I ran this command
composer identity list -c PeerAdmin@hlfv1
it got me this error
Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request
Any help?
Has joined the channel.
do you need to install an sdk on your network for composer to work?
just trying to get to grips with the basics
Can anyone refer me to some documentation or resources that tells me the limitations of Hyperledger Composer and/or Hyperledger Fabric?
limitations in what regard?
[ ](https://chat.hyperledger.org/channel/composer?msg=N6wfnFynTsdTpTWEA) @Buckley404 limitations in scalability and usability, going from PoC to production level limitations, etc. For instance, I've found https://jira.hyperledger.org/browse/FAB-2809 which has a limit on queries in couchdb
that's interesting, I didn't know that
well for performance, they have it benchmarked to process 100's of thousands transactions a minute
there are a lot of unknowns i think
[ ](https://chat.hyperledger.org/channel/composer?msg=7Wmt5KYD9XP46PZ2y) @Buckley404 For the transactions, for instance, you need to create your own high-thoroughput guard, if something is constantly being updated. I've ran into issues where transactions were rejected due to a simultaneous read/writes.
@ykcai what are you working on that you saw this? That's a little worrying
i understand issues with multiple parties trying to write at the same time on an asset, but read/write issues should only be problems for sql
[ ](https://chat.hyperledger.org/channel/composer?msg=RZ2XTDNw7nzaZijv7) @Buckley404 Was just using Composer, spammed a bunch of transactions that updated the same asset and all my transactions were rejected except for the last one.
interesting, i have to admit that it's a little reassuring (for my project) that the last transaction was committed
Thats my command to deploy ..
composer network deploy -a perishable-network.bna -A peerAdmin -S randomString -c PeerAdmin@hlfv1 -f admincard
Error occurs in the next command .. Error: Missing "chaincodeId" parameter in the proposal request
composer identity list -c PeerAdmin@hlfv1
Any help?
[ ](https://chat.hyperledger.org/channel/composer?msg=sjdQaS5FGyiJDhYAu) @Buckley404 Problematic if all the transactions are coming from different sources and all the sources are being rejected except the last one :P
@mostafa.elsayyad I think your issue will get fixed after running the ./createPeerAdmincard.sh script
@mostafa.elsayyad https://hyperledger.github.io/composer/installing/development-tools.html
and for the tutorial https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
I already done this command after starting the fabric
@mostafa.elsayyad are all the things write your pass etc.
@mostafa.elsayyad I noticed shouldn't -f be admin.card
@mostafa.elsayyad and not admincard
will check again, and revise the links above. thanks
@mostafa.elsayyad also usually the .bna file has @0.0.1 at the end like perishable-network@0.0.1.bna when it is generated unless you might have renamed it
@Buckley404 @ykcai the Fabric world state database uses MVCC and does not permit multiple writes to the same key in the same block. Composer stores assets and participants as single key/value pairs in the Fabric world state database and so transactions in the same block cannot update the same assets or participants.
@Buckley404 @ykcai the Fabric world state database uses MVCC and does not permit multiple writes to the same key in the world state database in the same block. Composer stores assets and participants as single key/value pairs in the Fabric world state database and so transactions in the same block cannot update the same assets or participants.
Has joined the channel.
@agileThinker , it worked! thanks a lot.
But another issue has rised.
I tried the below scenario ..
After successfully deploying the bna, I stopped the fabric, started it again.
1. issued this command
composer network deploy -a perishable-network.bna -A admin -S adminpw -c admin@perishable-network
error occurs
Error: Error trying to ping. Error: Error trying to query business network. Error: could not find chaincode with name 'perishable-network' - make sure the chaincode perishable-network has been successfully instantiated and try again
Anyone knows how to solve this error? or how to deploy again a previously deployed BNA but after I stopped and started fabric again?
thanks in advance
Hi guys,
I have a question about namespacing, I have tried following some of the example .bna's but it is not working for me
Questions
Does the model have to have the same name as the namespace?
why will the following not work
File name agent.cto
`namespace io.testnetwork.agent`
File named agreement.cto
`namespace io.testnetwork.agreement
import io.testnetwork.agent`
?
Thanks in advance
Hi guys,
I have a question about namespacing, I have tried following some of the example .bna's but it is not working for me
Questions
Does the model have to have the same name as the namespace?
why will the following not work
File name agent.cto
`namespace io.testnetwork.agent`
File named agreement.cto
```namespace io.testnetwork.agreement
import io.testnetwork.agent```
?
Thanks in advance
@mahoney1 Thank you so much, we'll try it out.
@hounded you can't import namespaces, only types. try importing all the types from a namespace:
`import io.testnetwork.agent.*`
or try importing a specific type from a namespace:
`import io.testnetwork.agent.MyAsset`
@sstone1 great, thank you !
@sstone1 I'm loving the new documentation, quick note on "deploying to hyperledger fabric" "step 8" the first command is missing it's syntax make it look like `code`
@sstone1 I'm loving the new documentation, quick note on "deploying to hyperledger fabric" "step 8" the first command is missing it's syntax to make it look like `code`
oh yes, will get that fixed
ah, @mahoney1 has already reported it:
https://github.com/hyperledger/composer/issues/2743
good as gold, I must fork and start contributing.
still coming to grips with it though
Guys,
collection with ID '$sysregistries' does not exist
this errors appear in plaground when trying to execute transaction that does the setup of network
thats the function
return getAssetRegistry(ns + '.Importer').then(function(importerRegistry)
{
return importerRegistry.addAll([importer]);
});
Guys,
collection with ID '$sysregistries' does not exist
this errors appear in plaground when trying to execute transaction that does the setup of network
thats the function
/**
* description of the function
* @param {org.acme.shipping.trading.SetupDemo} setupDemo
* @transaction
*/
function setupDemo(setupDemo)
{
var factory = getFactory();
var ns = 'org.acme.shipping.trading';
//create the importer
var importer = factory.newResource(ns, 'Importer', 'importer1@email.com');
var importerAddress = factory.newConcept(ns, 'Address');
importerAddress.country = 'USA';
importer.address = importerAddress;
importer.accountBalance = 20000;
return getAssetRegistry(ns + '.Importer').then(function(importerRegistry)
{
return importerRegistry.addAll([importer]);
});
}
Guys,
Error: Object with ID 'Asset:org.acme.shipping.trading.Importer' in collection with ID '$sysregistries' does not exist
this errors appear in plaground when trying to execute transaction that does the setup of network
thats the function
/**
* description of the function
* @param {org.acme.shipping.trading.SetupDemo} setupDemo
* @transaction
*/
function setupDemo(setupDemo)
{
var factory = getFactory();
var ns = 'org.acme.shipping.trading';
//create the importer
var importer = factory.newResource(ns, 'Importer', 'importer1@email.com');
var importerAddress = factory.newConcept(ns, 'Address');
importerAddress.country = 'USA';
importer.address = importerAddress;
importer.accountBalance = 20000;
return getAssetRegistry(ns + '.Importer').then(function(importerRegistry)
{
return importerRegistry.addAll([importer]);
});
}
sorry, thats the function ..
/**
* description of the function
* @param {org.acme.shipping.trading.SetupDemo} setupDemo
* @transaction
*/
function setupDemo(setupDemo)
{
var factory = getFactory();
var ns = 'org.acme.shipping.trading';
//create the importer
var importer = factory.newResource(ns, 'Importer', 'importer1@email.com');
var importerAddress = factory.newConcept(ns, 'Address');
importerAddress.country = 'USA';
importer.address = importerAddress;
importer.accountBalance = 20000;
return getAssetRegistry(ns + '.Importer').then(function(importerRegistry)
{
return importerRegistry.addAll([importer]);
});
}
i've posted an update to my multi-org deploy tutorial here:
https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
all the steps are now present, and it works with v0.15.1 but you need to ignore one of the errors that you get.
you'll also need to grab my copy of `fabric-samples` as i'm still waiting for my fabric PR to be merged to fix BYFN:
https://github.com/sstone1/fabric-samples/tree/issue-6978
`git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git`
@sstone1 are there any differences between `byfn-network-org1` and `byfn-network-org1-only` connection profiles?
yes
the `byfn-network-org1` connection profile has the request URL of the peers for org2
the `byfn-network-org1` connection profile has the peers for org1 and org2
the `byfn-network-org1-only` connection profile only has the peers for org1
@sstone1 got it. really helpful documentation!
great, glad you like it!
@sstone1 is the connection profile such as `byfn-network-org1` nothing related with the physical fabric network?
not sure i understand the question. the connection profile tells Composer where the physical Fabric network is running.
ok. i feel not express myself too. i mean for a given network, the connection profile can be reconfigured as needed without modification requirements of the network.
in other words, this profile is only used to reassign the role of the network. it will not affect the physical network. am i right?
correct, the connection profile does not affect the underlying Fabric network
each organization needs a different connection profile because the connection profile contains organization specific information, such as the MSP ID and the URL of the Fabric CA. also, each organization can only connect to their own event hubs - they can't connect to event hubs from other organizations.
so the four connection profiles you create in the tutorial are pointing at the same physical Fabric network, but different (organization specific) views of that network
Has joined the channel.
@sstone1 clear now. thanks.
np
@sstone1 Hey when is the next community call for composer?
23/11/17 @ 1700 UTC
https://wiki.hyperledger.org/community/calendar-public-meetings
query selectAllShipmentsPurchased {
description: "Select all shipments belonging to an actor"
statement:
SELECT com.varun.assets.shipment
WHERE (processor.$identifier == _$identifier)
}
```
```
query selectAllShipmentsPurchased {
description: "Select all shipments belonging to an actor"
statement:
SELECT com.varun.assets.shipment
WHERE (processor.$identifier == _$identifier)
}
```
I want to query where the owner is a particular participant. How to get the identifier?
any idea how to change join_channel.yaml to remove this error: ERRO 001 Cannot run peer because cannot init crypto, missing /etc/hyperledger/fabric/blockchain-org1peer1:30110 folder? basically, i'm not sure what CORE_PEER and PEER_ variable names are supposed to be or if their values and paths are correct or not
In @sstone1 Deploying a Network for Multiple Orgs tutorial https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html I get the following error when trying to retrieve the certificates for the network admins - `Unknown arguments: u, p` - these are not flag options for `composer identity request`. Trying to run the command without the -u and -p flags results in `TypeError: Cannot read property 'secret' of null` error. Please advise.
@mastreips can you run ‘composer -v’?
[ ](https://chat.hyperledger.org/channel/composer?msg=2vK4onM5848p7ZCSA) @sstone1 v0.15.0
[ ](https://chat.hyperledger.org/channel/composer?msg=hy93rxJsuFTkN3qFf) upgraded to -v0.15.1, flags are there, but now I get Enrollment failed with errors [["code":0, "message":"CA 'ca.org1.example.com' does not exist. Do I have to start over or is there a way to fix this after upgrading midway through the tutorial?
can you run `docker ps -a`. it seems you have not started up the network.
ok, recovered from my own yaml editing mistakes: INFO 002 Peer joined the channel!
[ ](https://chat.hyperledger.org/channel/composer?msg=EcQgGm743Q947oJ4z) Did a total restart using composer v0.15.1, but I am still getting stuck at requesting credentials. with `ca.org1.example.com does not exist`. Same for org2
According to the `docker-compose-e2e.yaml` file, the ca0 container name is `ca_peerOrg1` and not ca.org1.example.com. According to the docker logs, the cert request for ca.org1.example.com was made, but the container directed traffic to `CA ca.org1.example.com`. Should I reset the names in connection profile to match the container name?
hi , is there any guidance on the hardware sizing for a hyperledger project.
@mastreips it looks like the ca's are called `ca-org1` and `ca-org2`
Has joined the channel.
yep - just fixed the tutorial - sorry about that @mastreips
(made the fixes locally and forgot to update the doc!)
i've also just updated the tutorial to include endorsement policies and tested it properly end-to-end. would appreciate any more feedback if people want to try it out!
thanks @sstone1 - what is the best way to update the composer runtime after changing the connection profile?
you need to run `composer card create` again
`composer card delete` (to delete the old cards) and then reimport with `composer card import`
having a problem with this one: "http://YOUR_PUBLIC_IP_HERE:31090/explorer/"
Has joined the channel.
Has anyone tried to install the rest-server in the same machine as the composer?
I am following https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html here, as described in the "Run the REST server in a Docker Container - with no security (eg. Dev/Test)" part.
I have changed the URL's to localhost, and the keyValStore as used by other connections.
Running composer-rest-server works fine, but via docker not...
Some hints here? Thanks.
Has joined the channel.
@sstone1 https://github.com/hyperledger/fabric-samples/blob/release/high-throughput/chaincode/high-throughput.go Is there something like this (example maybe) that has been done in Hyperledger Composer? Or is there a way for me to write/update/read the same key-value pair in multiple transactions?
Has joined the channel.
Has joined the channel.
Clipboard - 2017년 11월 20일 오후 3시 30분
Clipboard - 2017년 11월 20일 오후 3시 30분
Clipboard - 2017년 11월 20일 오후 3시 30분
Hi , how can an enterprise subscirbe to events emitted by hyperledger rest server in a secured way
Has joined the channel.
Hi everyone. Is there a timeline for when the angular app tutorial will be added to the docs for V0.15?
Hi,
Is is possible that the current instructions for the access token authentication for the REST server aren't exactly correct in the documentation or outdated? It says that you can just pass the token as a query parameter or http header but I can only get it to work when I completely depend on cookies.
working code (after getting an access_token cookie value via a passport-jwt provider)
From `angular`
```
this.httpClient.get
Hi,
Is is possible that the current instructions for the access token authentication for the REST server aren't exactly correct in the documentation or outdated? It says that you can just pass the token as a query parameter or http header but I can only get it to work when I completely depend on cookies.
working code (after getting an access_token cookie value via a passport-jwt provider)
From `angular`
```
this.httpClient.get
Screenshot from 2017-11-16 17-58-11.png
[ ](https://chat.hyperledger.org/channel/composer?msg=EcQgGm743Q947oJ4z) @mastreips Hello, How have you upgraded to v0.15.1? Is it working fine with sample code?
Hello.. how to upgrade to v0.15.1? Please share the steps.
can anyone please tell me what we have to do with businessnetwork.card file , .bno files and what is the use of cerfificate,privatekey while importing business network and finally how to import a network
please help me i strucked here?
Are thew
Is the nodejs application document out of date as it requires a connection profile? https://hyperledger.github.io/composer/applications/node.html
However when you run `./createPeerAdminCard.sh` it looks like it just uses the connection profile to make the card and then removes the connection profile
Am I missing something?
Hi, Could you please address the below queries:
1. How can I send an Image as a parameter in the block chain network for e.g. when a Shipment is registered.
2. I am getting the following error on attempting to receive a shipment in Perishable Goods Network Composer example in Composer UI. Kindly suggest
Thanks for your continuous support :-)
Clipboard - November 20, 2017 3:58 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=qwzbwbePeCw9baRpa) @varunagarwal ```query selectAllShipmentsPurchased {
description: "Select all shipments belonging to an actor"
statement:
SELECT com.varun.assets.shipment
WHERE (processor == _$identifier)
} ``` should work - your parameter (assuming the processor field is a relationship to a Participant - would look (eg in the REST query) something like `resource:org.acme.biznet.RelatedParticipant#XYZ1` with the latter representing the URI specified instance.
@prmdmshra - you should upgrade (uninstall/reinstall) to current Composer modules to release (0.15.1) - you're working with an older release of composer (since fixed that issue in Playground)
[ ](https://chat.hyperledger.org/channel/composer?msg=Wm6RtN92umKbRtLQ8) @sravs this is not working in the current release (v0.15.x) - it will be fixed in the next release (planned this Thursday) FYI
@prmdmshra q1: storing an image or PDF - see here -> https://stackoverflow.com/questions/47155690/is-there-any-size-limit-for-pdf-in-hyperledger-fabric/47163301#47163301
How can we add peers to my business network, Please any one help to go forward.
[ ](https://chat.hyperledger.org/channel/composer?msg=H7zcPhZjXxthyhgQC) @JoshuaRippon yes, out of date now, will be fixed this week - in the meantime check out the JSDocs -> https://hyperledger.github.io/composer/jsdoc/module-composer-client.BusinessNetworkConnection.html
Thanks @mahoney1 . Are the JS docs you just sent me out of date too?
[ ](https://chat.hyperledger.org/channel/composer?msg=7gP5eD6FaxWXuhq4x) @AkshayJindal what's your Composer version? I assume you're running with a Development environment?
[ ](https://chat.hyperledger.org/channel/composer?msg=bzeeQjguQXkfaw9q8) @mahoney1 Currently I am running v0.15.0 with development environment.
@wininani - that is quite a long question. I would suggest trying the Playground Tutorial and the Developer tutorial to get some basic experience with the concepts and files:
https://hyperledger.github.io/composer/tutorials/tutorials.html
[ ](https://chat.hyperledger.org/channel/composer?msg=bqwZAvPGBbh9cYKpy) @JoshuaRippon they should be, are you having issues ?
Hi. Help me please.
Explain me, please, how should retrieve the access_token from REST my client application?
@jinwooChu @sravs - You have both asked questions about adding Peers to your Business Network
Our Hyperledger Composer 'standard' development environment comes pre-configured, with a single peer, but it looks like you want to work with something more complex.
The recommendation is to start with the 'byfn' from Hyperledger Fabric http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html and then expand after that. This new tutorial doc shows how to set up composer to work with byfn for a single server single org https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html
For a Single Org multi peer setup, the same approach is taken from a Composer perspective, but all the peers can be added as a JSON array in the initial connection profile. E.g. at Step 4 in the tutorial.
Hi guys!! I have created a concept in .cto file and have an array of it as a part of asset. How can I push the concept in the array while setting up demo data
Has joined the channel.
How to write a query to get the transaction history of an asset
query showCommodityAllHistorians{
description: "Select commodity all historians"
statement:
SELECT org.acme.biznet.system.HistorianRecord FROM
HistorianRegistry
WHERE (transactionType == 'AddAsset' OR transactionType ==
'UpdateAsset' OR transactionType == 'RemoveAsset')
}
isn't working
@VinayakDeshpande - can you show your .cto file?
concept KYCDocument{
o String id //Sample : 3221
o String[] kycGrpName
o String entity_type //Customer / BA
o String display_name //Ration Card/ Aadhar Card
o String document_url // S3 URL
o String document_type // ration_card / aadhar_card / pan_card
o String uploaded_by //CustomerID / id of the person who uploads
o String status //Approved / Rejected / pending
o String rejection_reason optional
o String rejection_comment optional
o DateTime date_created optional
}
asset KYCDetail identified by kycId {
o String kycId
o KYCDocument[] documents
--> Customer owner
}
these are the concept and asset I am creating
@AkshayJindal ```The easiest thing to do is follow these steps below:
1) `npm uninstall -g composer-cli`
2) `npm uninstall -g composer-rest-server generator-hyperledger-composer composer-playground`
@AkshayJindal The easiest thing to do is follow these steps below:
1) `npm uninstall -g composer-cli`
2) `npm uninstall -g composer-rest-server generator-hyperledger-composer composer-playground`
Hi
yogesh@ubuntu:~/tutorial-network$ composer network start -a tutorial-network@0.0.1.bna -l DEBUG -A PeerAdmin -C /home/yogesh/fabric-tools/fabric-scripts/hlfv1/composer//crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457_sk -c PeerAdmin@hlfv1 -f networkadmin.card
Starting business network from archive: tutorial-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: test
✔ Starting business network definition. This may take a minute...
Successfully created business network card to networkadmin.card
Command succeeded
yogesh@ubuntu:~/tutorial-network$ composer card import --file networkadmin.card
Successfully imported business network card
Card file: networkadmin.card
Card name: PeerAdmin@tutorial-network
Command succeeded
yogesh@ubuntu:~/tutorial-network$ composer network ping --card PeerAdmin@tutorial-network
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
I am able to start a sample network and import card but when trying to ping giving me Authorization Error and also when i try to start rest server same error comes
@mahoney1 can you please let me know
@rthatcher
@yogesh.fulsunge - step 4 of the tutorial tells you to use the admin@tutorial-network network admin card - I hope you are following the Developer Tutorial.
you can use the `composer card list` command to see what cards you have available.
yogesh@ubuntu:~/tutorial-network$ composer card list
The following Business Network Cards are available:
Connection Profile: hlfv1
┌────────────────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├────────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@tutorial-network │ PeerAdmin │ tutorial-network │
├────────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└────────────────────────────┴───────────┴──────────────────┘
Issue composer card list --name
[ ](https://chat.hyperledger.org/channel/composer?msg=FAb6uyg99NFSLzMFc) @JaikishanBukalsaria you need `org.hyperledger.composer.system.HistorianRecord` (ie system record) not `org.acme.biznet.system.HistorianRecord` (you're using a business namespace qualifier which is incorrect)
How can we add peers to my business network, Please any one help to go forward.
[ ](https://chat.hyperledger.org/channel/composer?msg=dSDFdzv2kRRvZ55ZX) @mahoney1 How can query for transaction of a particular asset using this query what extra condition is required
@yogesh.fulsunge as mentioned - you need to have the 'admin' identity - not the PeerAdmin identity (see your composer network start command) in your 'created' business network card - you will be pinging with the 'admin' identity and not the 'PeerAdmin' identity. - the card you've created is simply another PeerAdmin card, when what you actually need is a Network Admin card. Suggest to re-import your existing cards as follows So 1) just remove your $HOME/.composer directory 2) run `./createPeerAdminCard.sh` from `fabric-tools` directory - it will re-import your PeerAdmin card 3) `docker stop _
@yogesh.fulsunge as mentioned - you need to have the 'admin' identity - not the PeerAdmin identity (see your composer network start command) in your 'created' business network card - you will be pinging with the 'admin' identity and not the 'PeerAdmin' identity. - the card you've created is simply another PeerAdmin card, when what you actually need is a Network Admin card. Suggest to re-import your existing cards as follows So 1) just remove your $HOME/.composer directory 2) run `./createPeerAdminCard.sh` from `fabric-tools` directory - it will re-import your PeerAdmin card 3) `docker stop _
@yogesh.fulsunge as mentioned - you need to have the 'admin' identity - not the PeerAdmin identity (see your composer network start command) in your 'created' business network card - you will be pinging with the 'admin' identity and not the 'PeerAdmin' identity. - the card you've created is simply another PeerAdmin card, when what you actually need is a Network Admin card. Suggest to re-import your existing cards as follows So 1) just remove your $HOME/.composer directory 2) run `./createPeerAdminCard.sh` from `fabric-tools` directory - it will re-import your PeerAdmin card 3) `docker stop _
@yogesh.fulsunge as mentioned - you need to have the 'admin' identity - not the PeerAdmin identity (see your composer network start command) in your 'created' business network card - you will be pinging with the 'admin' identity and not the 'PeerAdmin' identity. - the card you've created is simply another PeerAdmin card, when what you actually need is a Network Admin card. Suggest to re-import your existing cards as follows So 1) just remove your $HOME/.composer directory 2) run `./createPeerAdminCard.sh` from `fabric-tools` directory - it will re-import your PeerAdmin card 3) `docker stop _
@VinayakDeshpande - I have tried a version of your model and have successfully POSTed this JSON data using the REST server:
``` {
"$class": "org.acme.biznet.KYCDetail",
"kycId": "KYC01",
"documents": [{
"$class": "org.acme.biznet.KYCDocument",
"id": "Doc01",
"kycGrpName": [
"GRP01"
],
"entity_type": "BA",
"display_name": "Ration Card",
"document_url": "http://nowhere.com/none",
"document_type": "ration_card",
"uploaded_by": "Rob",
"status": "pending"
}],
"owner": "c01"
} ```
When I tried it, the template JSON provided by the REST server showed owner : {} at the end - I think this is an error (bug) that I will follow up
Thanks @rthatcher !! but if I have to dynamically create a object of KYCDocument and assign the values using an argument and push it to the array and then save it. how can I do the js code?
Thanks @rthatcher !! but if I have to dynamically create an object of KYCDocument and assign the values using an argument and push it to the array and then save it. how can I do this with js code?
like one in this
var doc = new KYCDocument();
doc.id = "123123"
doc.kycGrpName = ["Address Proof", "Identity Proof"]
doc.entity_type = "customer"
doc.display_name = "ads"
doc.document_url = ""
doc.document_type = "ads"
doc.uploaded_by = "123123"
doc.status = "pending"
kycDetail.documents.push(doc);
kycDetail.owner = factory.newRelationship(NS, 'Customer', owner);
the error I am getting is ReferenceError: KYCDocument is not defined
Has joined the channel.
@VinayakDeshpande - have a look in the sample-networks - here is an example and function in PII sample network https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/lib/logic.js#L42 where an array of authorized[] - field on a participant in the model - is being manipulated / 'pushed'
@VinayakDeshpande - have a look in the sample-networks - here is an example and function in PII sample network https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/lib/logic.js#L42 where an array of authorized[] - field on a participant in the model - is being manipulated / 'pushed' then updated using `return memberRegistry.update(me);` for the participant registered returned earlier in the js code
@VinayakDeshpande - have a look in the sample-networks - here is an example and function in PII sample network https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/lib/logic.js#L42 where an array of authorized[] - field on a participant in the model - is being manipulated / 'pushed' then updated using `return memberRegistry.update(me);` for the participant registry returned earlier in the js code
ya but memberId in this context is a property of object and i want to create and push an entire object and that I am unable to do
@JaikishanBukalsaria ? all transactions for a particular Asset or specific transaction - in which case you just use the ID ?
@JaikishanBukalsaria ? all transactions for a particular Asset or specific transaction - in which case you just use the ID ? What is the query..
same query buy i need the transaction detail for an asset
Hey guys, I have a question regarding going through the sample tutorials: [this](https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html) -> Step 8
I need to start the network, but I am missing the `.bna` file. I tried creating one with yoman - `yo hyperledger-composer:businessnetwork`, then archive it with the same name `tutorial-network.bna`
So, when I try to start the network `composer network start -a tutorial-network.bna -c PeerAdmin@fabric-network -A admin -S adminpw`, I get the following error:
```
Starting business network from archive: tutorial-network.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: A network for smashing
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (tutorial-network:0.15.0)-open /var/hyperledger/production/chaincodes/tutorial-network.0.15.0: no such file or directory)
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=MdpPWCQdNpmLpv4Dv) @VinayakDeshpande I see what you're doing. Your KYCDocument is a modeled concept. So just check the sample networks as I say - you need to use `newConcept` see here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js#L67 and the model for ref is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/models/bond.cto in there, it has a PublishBond transaction - that uses the concept `bond` so as to submit the transaction, with that object replete
@mahoney1 yep thats what I need.. Thanks a lot!!
@luminance sounds like you didn't do a `composer runtime install -c PeerAdmin@fabric-network -n tutorial-network`
@luminance sounds like you didn't do a `composer runtime install -c PeerAdmin@fabric-network -n tutorial-network` - needs to be before the `composer network start`
Just installed composer 0.15.1 and get the following error when running createPeerAdminCard in the fabric-tools directory. ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.15.1
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'
Command failed
Any ideas?
did you forget to install global eg `npm install -g ` - seems something is awry (where in your previous version (0.15.0 ?) you didn't have this issue?
Now that I gave created the object of concept I am unable to push it in the array of the main object it says TypeError: kycDetail.documents is undefined. is it possible?
I am referring to KYCDocument which is an array of concept :
asset KYCDetail identified by kycId {
o String kycId
o *KYCDocument*[] documents
--> Customer owner
}
kycDetail.documents.push(doc); is not working
Has joined the channel.
@mahoney1 It did work in 0.15.0, however I had attempted to upgrade to Node v8.9.1 and it broke 0.15.0, Guess I did something wrong on the Node upgrade, reverted back to System and it works now fabric-tools$ nvm ls
-> v8.9.1
system
default -> v8.9.1
node -> stable (-> N/A) (default)
unstable -> 8.9 (-> v8.9.1) (default)
iojs -> iojs- (-> N/A) (default)
blockchain@ubuntu:~/fabric-tools$ nvm use system
Now using system version of node: v6.11.4 (npm v3.10.10)
blockchain@ubuntu:~/fabric-tools$ nvm ls
v8.9.1
-> system
default -> v8.9.1
node -> stable (-> N/A) (default)
unstable -> 8.9 (-> v8.9.1) (default)
iojs -> iojs- (-> N/A) (default)
@mahoney1 @JaikishanBukalsaria on that transaction query
we need complete transaction history on a assset
HistorianRecord does not store asset ID
@mahoney1 Thank you dude. You saved the day! :)
so I could not filter is for a particular asset
@mahoney1 @JaikishanBukalsaria https://github.com/hyperledger/composer/issues/991
@JaikishanBukalsaria So for sample network `trade-network` ```query selectTransaction{
description: "choose a specific commodity "
statement: SELECT org.acme.biznet.Trade
WHERE (commodity == _$commodity )
}``` finds all transactions of transaction `Trade` for a specific instance (you provide, in the REST server once you've updated your network to recognise the newly added query defined in your `queries.qry` and in the named query defined your .cto model file. So I went to my REST server and used a filter using `{"where":{"commodity":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"}` so find all transactions for
@JaikishanBukalsaria So for sample network `trade-network` ```query selectTransaction{
description: "choose a specific commodity "
statement: SELECT org.acme.biznet.Trade
WHERE (commodity == _$commodity )
}``` finds all transactions of transaction `Trade` for a specific instance (you provide, in the REST server once you've updated your network to recognise the newly added query defined in your `queries.qry` and in the named query defined your .cto model file. So I went to my REST server and used a filter using `{"where":{"commodity":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"}` so find all transactions for asset Commodity with tradingSymbol (identifier) ABC - ie a relationship and I can resolve the transaction and the particular asset it relates to
@JaikishanBukalsaria So for sample network `trade-network` ```query selectTransaction{
description: "choose a specific commodity "
statement: SELECT org.acme.biznet.Trade
WHERE (commodity == _$commodity )
}``` finds all transactions of transaction `Trade` for a specific instance (you provide, in the REST server once you've updated your network to recognise the newly added query defined in your `queries.qry` and in the named query defined your .cto model file. So I went to my REST server and used a filter using `{"where":{"commodity":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"}` so find all transactions for asset Commodity with tradingSymbol (identifier) ABC - ie a relationship and I can resolve the transaction and the particular asset it relates to. In this case it was 1 transaction (could be more) to change ownership and I can see that transaction (resolved) detail, for that asset
@JaikishanBukalsaria So for sample network `trade-network` ```query selectTransaction{
description: "choose a specific commodity "
statement: SELECT org.acme.biznet.Trade
WHERE (commodity == _$commodity )
}``` finds all transactions of transaction `Trade` for a specific instance (you provide, in the REST server filter) - ie once you've updated your network to recognise the newly added query defined in your `queries.qry` and in the named query defined your .cto model file. So I went to my REST server and used a filter using ```{"where":{"commodity":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"}``` so find all transactions for asset Commodity with tradingSymbol (identifier) ABC - ie a relationship and I can resolve the transaction and the particular asset it relates to. In this case it was 1 transaction (could be more) to change ownership and I can see that transaction (resolved) detail, for that asset
@JaikishanBukalsaria So for sample network `trade-network` ```query selectTransaction{
description: "choose a specific commodity "
statement: SELECT org.acme.biznet.Trade
WHERE (commodity == _$commodity )
}``` finds all transactions of transaction `Trade` for a specific instance (you provide, in the REST server filter) - ie once you've updated your network to recognise the newly added query defined in your `queries.qry` and in the named query defined your .cto model file. So I went to my REST server and used a filter using `{"where":{"commodity":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"} `.. so find all transactions for asset Commodity with tradingSymbol (identifier) ABC - ie a relationship and I can resolve the transaction and the particular asset it relates to. In this case it was 1 transaction (could be more) to change ownership and I can see that transaction (resolved) detail, for that asset
@JaikishanBukalsaria So for sample network `trade-network` ```query selectTransaction{
description: "choose a specific commodity "
statement: SELECT org.acme.biznet.Trade
WHERE (commodity == _$commodity )
}``` finds all transactions of transaction `Trade`- so that's a query - you can easily add a where clause for a specific Asset instance .ie once you've updated your network to recognise the newly added query defined in your `queries.qry` and in the named query defined your .cto model file. The other way is to use Filters(as opposed to queries): or a specific instance (you provide, in the REST server filter) - So I went to my REST server and used a filter using `{"where":{"commodity":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"} `.. so find all transactions for asset Commodity with tradingSymbol (identifier) ABC - ie a relationship and I can resolve the transaction and the particular asset it relates to. In this case it was 1 transaction (could be more) to change ownership and I can see that transaction (resolved) detail, for that asset
@JaikishanBukalsaria As Abhijeet mentions, we have a current issue open for Historian to show deltas. As a workaround - so for sample network `trade-network` ```query selectTransaction{
description: "choose a specific commodity "
statement: SELECT org.acme.biznet.Trade
WHERE (commodity == _$commodity )
}``` finds all transactions of transaction `Trade`- so that's a query - you can easily add a where clause for a specific Asset instance .ie once you've updated your network to recognise the newly added query defined in your `queries.qry` and in the named query defined your .cto model file. The other way is to use Filters(as opposed to queries): or a specific instance (you provide, in the REST server filter) - So I went to my REST server and used a filter using `{"where":{"commodity":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"} `.. so find all transactions for asset Commodity with tradingSymbol (identifier) ABC - ie a relationship and I can resolve the transaction and the particular asset it relates to. In this case it was 1 transaction (could be more) to change ownership and I can see that transaction (resolved) detail, for that asset
thanks @mahoney1 , this gives info if the ownership is changed using trade, how to show the creation timestamp or if any value updated directly to asset
@mahoney1 oh sorry I did not read the first line of last update
@Abhijeet.K see Historian -> https://hyperledger.github.io/composer/reference/historian.html transaction timestamp is standard UTC DateTime.
Does anyone know if there is something like this `https://github.com/hyperledger/fabric-samples/blob/release/high-throughput/chaincode/high-throughput.go` implemented with Composer? Or is possible to implement in Composer? Things such as `APIstub.GetStateByPartialCompositeKey` or `APIstub.CreateCompositeKey`
@ykcai I don't think anyone has done this.
Hi, how is the information synchronized between the nodes? Thanks!
@maaar1234 - the distributed nature of the Ledger is a fundamental of the Hyperledger Fabric - Please ask your question in the #fabric channel
@mahoney1 when issuing a new identity with composer 15.1 should I be using the --file to create a card at the same time?
per https://hyperledger.github.io/composer/reference/composer.identity.issue.html
[ ](https://chat.hyperledger.org/channel/composer?msg=uEa8M669nRf3ghPNw) @jdockter yes you should eg `--file johndoe.card` - our identity issue doc needs updating I notice.
@mahoney1 so does that create the full card or do I need to then do a `composer card create` ?
@mahoney1 so does that create the full card create or do I need to then do a `composer card create` ?
@mahoney1 so does that create the full card or do I need to then do a `composer card create` ?
[ ](https://chat.hyperledger.org/channel/composer?msg=9wdeDW7sY69FAeBWm) @jdockter yes, creates a full card - so using `composer identity issue --card admin@tutorial-network -u user4 -a resource:org.acme.biznet.Trader#TRADER2 -f user4.card` as an example - you would then need to import the card, to get it into the cardstore under $HOME/.composer - from there using `composer network ping -c user4@tutorial-network` sees the `client-data` credentials replete with user4's keys and cert
[ ](https://chat.hyperledger.org/channel/composer?msg=MTczRQ6qk5viEcZjf) @mahoney1 Thank you. The sample networks (https://github.com/hyperledger/composer-sample-networks/tree/master/packages) are compatible with v0.15.1? Also, single org. Fabric deployment is compatible with v0.15 but not multi org.?
Has joined the channel.
Hi can someone help me? Im trying to create new ID's with a local playground. Im getting an error: Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
but Im using an admin account with id creations rights
[ ](https://chat.hyperledger.org/channel/composer?msg=aanW8pvir3GTsSvGQ) @mahoney1 thanks, that makes sense
@AkshayJindal q1). Yes the `sample-networks` are. q2) Single-org or Multi-org, are compatible with Composer - you just need your Fabric configured (eg single-org, multi-org setup, with associated fabric infrastructure/nodes/names of nodes etc) and you simply connect up Composer by defining the right business network cards - see single org tutorial here https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html
@AkshayJindal q1). Yes the `sample-networks` are. q2) Single-org or Multi-org Fabric deployment is compatible with Composer - you just need your Fabric configured (eg single-org, multi-org setup, with associated fabric infrastructure/nodes/names of nodes etc) and you simply connect up Composer by defining the right business network cards - see single org tutorial here https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html
@AkshayJindal q1). Yes the `sample-networks` are. q2) Single-org or Multi-org Fabric deployment is compatible with Composer - you just need your Fabric configured (eg single-org, multi-org setup, with associated fabric infrastructure/nodes/names of nodes etc) and you simply connect up Composer by defining the right business network cards - see single org tutorial here as an example https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html (will be following soon with a multi-org tutorial)
Can the network handle multiple creations of asset/participants at the same time? I tried to run a loop of 1000 calls to the Composer API tp create some participants but i am see that transactions are getting timeout.
```2017-11-20 16:04:33.497 UTC [chaincode] ExecuteChaincode -> ERRO 3c26c Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
2017-11-20 16:04:33.498 UTC [endorser] callChaincode -> DEBU 3c26d Exit
2017-11-20 16:04:33.498 UTC [endorser] simulateProposal -> ERRO 3c26e failed to invoke chaincode name:"my-network" on transaction 87ea6311aeeb8bf2648ea012139f0d415ee2fb43fd17f3c25a98cc5819713339, error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
```
@berndoostrum - What version of Composer are you using? How did you create the Admin account?
[ ](https://chat.hyperledger.org/channel/composer?msg=eqyRw5eos9jnCRbhj) @rthatcher with this tutorial: https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html
its really weird, i can do everything except adding id's
@berndoostrum - are you using Playground or Command Line
Im trying to follow this: https://hyperledger.github.io/composer/playground/id-cards-playground.html
with a local playground
@berndoostrum - I have been able to follow the tutorial, and the document you linked to. I was able to issue IDs.
I'm wondering if you used the certificates for the original PeerAdmin ID, or used the new certificates for the Admin ID that was generated by the composer network start command?
Has joined the channel.
Hey. New to Hyperledger. Took both the IBM trainings. Also ran through the Composer trainings. I have been able to create a business network on the playground as well as via CLI. I have only been able to run the rest server when done via CLI. Can I create a business network in the playground and then interact with them via the rest server? I have a "hlfabric" Connection that was created when running the install-hlfv1.sh script.
hi, I've been following the composer tutorials but apparently card is not a valid argument for composer and therefore cannot deploy my business networks as described here: https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html Any ideas about what I am doing wrong? Thanks in advance
Hello.. Once .bna file is created, `composer network start` command is used to deploy the business network as mentioned in the tutorial (https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html). Can you please tell me the difference between `composer network start` and `composer network deploy` command?
@ferorus I ran into a similiar issue before. Did you install the composer-cli as listed in the docs?
`npm install -g composer-cli`
[ ](https://chat.hyperledger.org/channel/composer?msg=tokHs5BrMQMWSHjHm) @mastercpt hi there - welcome! The REST server won't work with the playground currently, but plan is to try fix this in this week's release. For now, use REST server with the CLI - cheers
@mahoney1 Thank you for response. Been working with the REST with the CLI and it works great. Adding support with the playground would be nice. Will wait for new release.
[ ](https://chat.hyperledger.org/channel/composer?msg=QMJ7ksNSMeRXeDn3P) @ferorus if the current version of Composer is "pre- business network cards") then you should be on latest Composer versions (albeit cards were introduced before the current version 0.15.1) - would suggest to do this first, and then work with the tutorial... To get latest Composer versions (vis-a-vis an installed earlier Composer version) do the steps outlined here -> https://chat.hyperledger.org/channel/composer?msg=5tg78qPi3vrjiExLe from step 1 in the single-org tutorial you posted, when you're done.
[ ](https://chat.hyperledger.org/channel/composer?msg=4ksHuvBKrdgrAKkya) @AkshayJindal start instantiates the business network on a channel. Important in single or multi org setups. Composer network deploy installs the chaincode from local archive onto the runtime Fabric- see also here for concepts ->. https://hyperledger.github.io/composer/business-network/bnd-deploy.html
[ ](https://chat.hyperledger.org/channel/composer?msg=4ksHuvBKrdgrAKkya) @AkshayJindal start instantiates the business network on a channel. Important in single or multi org setups. Composer network deploy installs the chaincode from local archive onto the runtime Fabric- see also here for concepts ->. https://hyperledger.github.io/composer/business-network/bnd-deploy.html
Has joined the channel.
@davidkel @mahoney1 @sstone1 ... I'm running the REST server with `-n never -a true -m true -w true -t true` using Google auth strategy...I create my participant, I create the identity and that generates a busn network card...I then import the card...I go back to the REST server to POST my card file, all is fine....I do this for several other participant/identity combinations and I'm able to switch cards with POST /wallet/{name}/setDefault , all is fine...I then make updates to my busn network via composer network update...I have to restart REST server to pickup changes because they are Query related...because it's in memory I know I'm going to have to add card back into REST server, all is not fine....error `Unhandled error for request GET /api/system/ping: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: slpdemo)` ...what did I miss or is this broken?
[ ](https://chat.hyperledger.org/channel/composer?msg=PPD35YGFiYZBLjwBB) @akshatbh could you please share the solution with me?
Hi,
When i am trying to execute the step fifteen in the following link https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
I am facing error while trying to execute issue command, Error: failed to request identity. Error trying to enroll user and return certificates. Error: Enrollment failed with errors [[{"code":0,"message":"CA '_ca.org1.example.com_' does not exist"}]]
But i can see the certificate name is like this in the below path,
/home/rahul/Project_folder/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/_Admin@org1.example.com-cert.pem_
Can please suggest me, should i add the identity admin to the enviroment or should i do any other change
Hi,
When i am trying to execute the step fifteen in the following link https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
I am facing error while trying to execute issue command, Error: failed to request identity. Error trying to enroll user and return certificates. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca.org1.example.com' does not exist"}]]
But i can see the certificate name is like this in the below path,
/home/rahul/Project_folder/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem
Can please suggest me, should i add the identity admin to the environment or should i do any other change
Hi,
When i am trying to execute the step fifteen in the following link https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
I am facing the mentioned error while trying to execute identity request command from this /home/rahul/Project_folder/fabric-samples/first-network directory, Error: failed to request identity. Error trying to enroll user and return certificates. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca.org1.example.com' does not exist"}]]
But i can see the certificate name is like this in the below path,
/home/rahul/Project_folder/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem
Can please suggest me, should i add the identity admin to the environment or should i do any other change
As suggested, refreshed the environment and recreated the files connection profiles and cards.
Now, while executing the step, Step Seventeen: Starting the business network in the tutorial https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
in the command pointed the correct path to refer the .bna file also.
getting the below error,
Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND
Can you please help on this to revolve.
@kmohanar you need to follow the tutorial again, you may have started with an old version that had the wrong CA names in it
at the very least you need to:
1) run all the `composer card delete` commands at the top
2) recreate all of the `connection-*.json` files
3) run all the `composer card create` commands again
4) run all the `composer card import` commands again
I have one doubt regarding composer, can't we able to get asset history??. We were working on one small project in composer,I have added code to change owner and everything is fine at each step.
We want to display the asset details with history in the screen. Please suggest any idea to do that.
[ ](https://chat.hyperledger.org/channel/composer?msg=9Y3FWkMmufMPJ3tyf) @sstone1 : Thank you.I will try from first and will update the status
@sstone1 In v0.15.1 this issue https://github.com/hyperledger/composer/issues/2668 has been fixed, thakns for your work! But I met new error in test. I posted new content in the issue above, could you please take a look at it.
how to move working example of hyperledger composer and fabric example on cloud ??
Hi All, A smart contract will run on all peers separately. And also I understand the smart contracts will need to be signed between organizations before they are deployed. Is there a link that explains the internal details of deploying smart contracts on composer network with multiple organizations and peers in picture? Thanks.
Hi guys! I have created a query file and added the queries in it, created archive and the rest APIs using composer-rest-server..
but I am unable to view the query in the swagger.. can anybody help me?
TIA
Anybody available?
@jdockter did you ping and export the cards ? the exported cards would then be reusable whereas the original cards are only going to contain secrets and won't be reusable.
Has joined the channel.
@VinayakDeshpande - Have you stopped and re-started the REST server? The REST server does a one time discovery when it starts so any update to the network (queries) will only be discovered on a restart.
If that doesn't work - please check on the name and location of the queries.qry file in your project folder.
ya I archived it, stopped the server, updated the business network and then restarted the server
@yogesh.fulsunge - as you have seen, the base Fabric runs in Docker Containers so can in theory run on any Docker capable cloud service. You may also have seen Composer Playground and Composer REST Server running in Containers, so the same applies to them.
On the IBM Cloud (bluemix) there is a set of scripts to setup a Fabric with Composer as a Sandbox environment. There is also a Production Grade service available from IBM as a paid service. Both of these come under the IBM Blockchain Platform umbrella.
https://ibm-blockchain.github.io/
thanks
Clipboard - November 21, 2017 10:14 AM
@VinayakDeshpande - then perhaps it is the filename / location - you could try unzipping your BNA archive file and verifying the name and location of the file:
so is it mandatory keep filename as queries.qry
?
how do i create private channel in hyperledger composer ?
by default the business network is public but for privacy reasons i need a private channel
@VinayakDeshpande - yes I think that filename is fixed.
it worked.. my bad, I named it as query.qry
thanks
another query.. can I get multiple assets or participants on the same query?
for instance: SELECT A, B WHERE (a == b)
@yogesh.fulsunge - In a development environment the Fabric Servers and the Composer configuration are not really secure by default (particularly the REST server starting which starts with an Admin ID and requires no authentication by default.) BUT in a production environment the whole infrastructure would be protected by a Certification Structure you would put in place, and other security measures you would implement.
(Composer uses a channel called composerchannel by default - but it can be setup to use a different channel or indeed more than one channel)
is there a reference to set up a privatee channel ?
@yogesh.fulsunge - I don't think there is a specific document for working with a Different Channel, but configuration files and Business Network cards allow a non-default channel to be specified. If you search the Hyperledger Composer docs for channel there are many references to follow up. https://hyperledger.github.io/composer/introduction/introduction.html
Hey guys, when trying to deploy a bna (following the tutorial) using `composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --n
etworkAdminEnrollSecret adminpw --archiveFile maintenance-network@0.0.1.bna --file networkadmin.card`, i get the following error:
```Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (maintenance-network:0.15.1)-open /var/hyperledger/production/chaincodes/maintenance-network.0.15.1: no such file or directory)```
Has joined the channel.
I've just tried the command again after restarting the fabric chain. It works now, no idea what the problem was.
[ ](https://chat.hyperledger.org/channel/composer?msg=jmC4rz468KRWLgFcc) @umamani113 As mentioned , we have a current issue open for Historian to showhistory of changes/ deltas for an asset - https://github.com/hyperledger/composer/issues/991 As a workaround - so for sample network `trade-network` ```query selectTransaction{
description: "choose a specific commodity "
statement: SELECT org.acme.biznet.Trade
WHERE (commodity == _$commodity )
}``` finds all transactions of transaction `Trade for a particular asset and add a date range`- so that's a query showing those transactions (what changed) - .ie once you've updated your network to recognise the newly added query defined in your `queries.qry` and in the named query defined your .cto model file . The other way is to use Filters (as opposed to queries):on your REST client - so used a filter using `{"where":{"commodity":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"} `.. so find all transactions for asset Commodity with tradingSymbol (identifier) ABC - ie a relationship and I can resolve the transaction and the particular asset it relates to. In this case it was 1 transaction (could be more) showing changes and I can see the transaction (with resolved) detail, for that asset
[ ](https://chat.hyperledger.org/channel/composer?msg=jmC4rz468KRWLgFcc) @umamani113 As mentioned , we have a current issue open for Historian to showhistory of changes/ deltas for an asset - https://github.com/hyperledger/composer/issues/991 As a workaround - so for sample network `trade-network` ```query selectTransaction{
description: "choose a specific commodity "
statement: SELECT org.acme.biznet.Trade
WHERE (commodity == _$commodity )
}``` finds all transactions of transaction `Trade` for a particular asset and add a date range- so that's a query showing those transactions (what changed) - .ie once you've updated your network to recognise the newly added query defined in your `queries.qry` and the named query defined in your .cto model file . The other way is to use Filters (as opposed to queries):on your REST client - so used a filter using `{"where":{"commodity":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"} `.. so find all transactions for asset Commodity with tradingSymbol (identifier) ABC - ie a relationship and I can resolve the transaction and the particular asset it relates to. In this case it was 1 transaction (could be more) showing changes and I can see the transaction (with resolved) detail, for that asset
[ ](https://chat.hyperledger.org/channel/composer?msg=ctysPCjPrEdi59sTc) @mahoney1 Thank you. I am bit confused.. I am still not sure when can I use `composer network deploy`? Just curious about it. Because when I follow single org. doc for deployment then this command is never used. Also, `composer archive create` is always used (as it creates .bna from business network definition) before we deploy (runtime install, network start and card imports as mentioned in step-7 in single org. doc)..right?
@AkshayJindal you can use `composer network deploy` generally in a local Dev (localhost) environment. But since Hyperledger Fabric v1.0 (the runtime network), this process is now a lot more involved. There are now multiple actions - some that are performed within an organisation, some that are performed across a consortium (a set of organisations) and can involve different roles - Orgs will want to ultimately set up a blockchain network beyond a development cell :-) So you would use `composer runtime install` to install the Composer runtime (onto a peer or multiple peers if so desired) then `composer network start` to instantiate that business network on a channel of interested peers across Orgs. Composer runtime install provides all of the functionality to host and support a business network archive (that is installed), for example data validation, error handling, transaction processor function execution, and access control. The user performing this action must be a peer administrator. Someone from the consortium (one of the Orgs) has a role to instantiate the network using composer network start on the channel the appropriate peers communicate on.
@AkshayJindal you can use `composer network deploy` generally in a local Dev (localhost) environment. But since Hyperledger Fabric v1.0 (the runtime network), this process is now a lot more involved when you go beyond 'localhost' as it were.. There are now multiple actions - some that are performed within an organisation, some that are performed across a consortium (a set of organisations) and can involve different roles - Orgs will want to ultimately set up a blockchain network beyond a development cell :-) So you would use `composer runtime install` to install the Composer runtime (onto a peer or multiple peers if so desired) then `composer network start` to instantiate that business network on a channel of interested peers across Orgs. Composer runtime install provides all of the functionality to host and support a business network archive (that is installed), for example data validation, error handling, transaction processor function execution, and access control. The user performing this action must be a peer administrator. Someone from the consortium (one of the Orgs) has a role to instantiate the network using composer network start on the channel the appropriate peers communicate on.
[ ](https://chat.hyperledger.org/channel/composer?msg=eorBMR6CNyfioWTxk) @VinayakDeshpande not presently - you're selecting from a particular registry and query endpoints are done against a single resource registry - feel free to raise a github issue if you wish.
[ ](https://chat.hyperledger.org/channel/composer?msg=eorBMR6CNyfioWTxk) @VinayakDeshpande not presently - you're selecting from a particular [Asset, Participant] registry and REST query endpoints in particular are done against a single resource registry - feel free to raise a github issue if you wish.
Hi, is it possible to use the admin card in the playground ? I've followed the tutorial and i can ping my network with `composer network ping --card admin@maintenance-network`. However, when i use the `networkadmin.card` in the playground, i get the error `Error: The current identity has not been registered: admin`
Hi all. I don't want to use 0.15 HC. Is it possible to read a documentation of old version?
[ ](https://chat.hyperledger.org/channel/composer?msg=KPQouZ9PuvMuxBRQP) @davidkel mmm, don't think I did the ping ...will try again
Hi All, I have an asset declared in the .cto file on composer network. The asset has a field order_number that I want only 1 type of participant to see(i.e. "Regulator"). How should I write the ACL rule to achieve this? Thanks.
Hi All, Appreciate a quick answer to this. Is consensus in hyperledger fabric really "plug and play". I mean can we customize how PBFT works or can we use an algorithm other than PBFT?
[ ](https://chat.hyperledger.org/channel/composer?msg=DQiTqxmgxyx8ttDNY) @erNail [ ](https://chat.hyperledger.org/channel/composer?msg=DQiTqxmgxyx8ttDNY) @erNail no, networkadmin.card uses localhost among other things, won't work with dockerrized playground - you can spin up your local playground executable `composer-playground` (if installed) and if you've already imported the card, you should be able to use it from there.
@erNail [ ](https://chat.hyperledger.org/channel/composer?msg=DQiTqxmgxyx8ttDNY) @erNail no, networkadmin.card uses localhost among other things, won't work with dockerrized playground - you can spin up your local playground executable `composer-playground` (if installed) and if you've already imported the card, you should be able to use it from there.
@mahoney1 Could you please guide me wrt access controlling a particular field inside an asset as per my last question?
[ ](https://chat.hyperledger.org/channel/composer?msg=oY3D2vdCFLz2ZtkYB) @mna2016 ACLs do not do field level access control presently...
Has joined the channel.
@mahoney1 1) Is ACL expected to feature field level access control in future? 2) What will be a feasible way to control the field level visibility? Any way to implement that in logic.js?
@sstone1 When following your tutorial at https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html, i get an error when executing `./byfn.sh -m up -s couchdb -f docker-compose-e2e.yaml`.
This is the output:
```vagrant@vagrant:~/first-network$ ./byfn.sh -m up -s couchdb -f docker-compose-e2e.yaml
Starting with channel 'mychannel' and CLI timeout of '10000' using database 'couchdb'
Continue (y/n)? y
proceeding ...
Creating couchdb0 ...
Creating ca_peerOrg2 ...
Creating couchdb2 ...
Creating couchdb1 ...
Creating couchdb0
Creating ca_peerOrg1 ...
Creating ca_peerOrg2
Creating orderer.example.com ...
Creating couchdb3 ...
Creating couchdb1
Creating couchdb2
Creating ca_peerOrg1
Creating couchdb3
Creating couchdb0 ... done
Creating peer0.org1.example.com ...
Creating couchdb3 ... done
Creating peer0.org2.example.com ...
Creating peer1.org2.example.com ...
Creating peer0.org2.example.com
Creating couchdb1 ... done
Creating peer1.org1.example.com ...
Creating peer1.org2.example.com ... done
Error response from daemon: No such container: cli```
@sstone1 I guess the reason is that there is no cli container defined in the `docker-compose-e2e.yaml` ?
how to add external peers to my tutorial network
As suggested, refreshed the environment and recreated the files connection profiles and cards.
Now, while executing the step to start the business network, Step Seventeen: Starting the business network in the tutorial https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
in the command pointed the correct path to refer the .bna file also.
getting the below error,
Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND
Can you please help on this to revolve.
@sstone1 As suggested, refreshed the environment and recreated the files connection profiles and cards.
Now, while executing the step to start the business network, Step Seventeen: Starting the business network in the tutorial https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
in the command pointed the correct path to refer the .bna file also.
getting the below error,
Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND
Can you please help on this to revolve.
@sstone1 As suggested, refreshed the environment and recreated the files connection profiles and cards.
Now, while executing the step to start the business network, Step Seventeen: Starting the business network in the tutorial https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
in the command pointed the correct path to refer the .bna file also.
getting the below error,
Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND
Can you please help on this to revolve.
@erNail - there's an issue about the `cli` container (tag) - get your repo from here instead git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git and then follow the sequence (as per the original docs link) -> https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html,
@erNail - there's an issue about the `cli` container (tag) - get your repo from here instead `git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git` and then follow the sequence (as per the original docs link) -> https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html,
@wininani see my last post - you can try out a multi-org tutorial (will soon be added to main docs) - two peers per Org (2 orgs).
@mahoney1 do you know what drives the creation of the composer-logs directory locally?
@kmohanar - you need to clear down completely, and then clone Simon's repository as @mahoney1 directed @erNail `git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git`
(I had the same problem as you at Step 17 but it is working with this modified fabric-samples.)
[ ](https://chat.hyperledger.org/channel/composer?msg=Xxtp3KtxkGRt9oEPn) @mna2016 suggest to raise an issue to expedite for order_number, you could have an asset `Order_Ref' that has a relationship field `--> order_number` back to main Order asset, which is denied to all but regulators. However, regulator types (Participant with that field set) have access to Order_Ref asset using something like (you need to try out, not tried) ```
rule R1 {
description: "Allow authorized (ie regulators) access if granted"
participant(p): "org.acme.biznet.Member"
operation: READ
resource(r): "org.acme.biznet.OrderRef.*"
condition: (p.authorized)
action: ALLOW
}
rule R2 {
participant(p): "org.acme.biznet.Member"
operation: ALL
resource(a): "org.acme.biznet.Order.*"
action: DENY
}``` OrderRef has reference to Order which is denied to all - and where authorized is Boolean 1 or 0 (Obviously this is set within the realm of whatever else you allow in your permissions.acl
[ ](https://chat.hyperledger.org/channel/composer?msg=Xxtp3KtxkGRt9oEPn) @mna2016 suggest to raise an issue to expedite. For order_number, you could have an asset `Order_Ref' that has a relationship field `--> order_number` back to main Order asset, which is denied to all but regulators. However, regulator types (Participant with that field set) have access to Order_Ref asset using something like (you need to try out, not tried) ```
rule R1 {
description: "Allow authorized (ie regulators) access if granted"
participant(p): "org.acme.biznet.Member"
operation: READ
resource(r): "org.acme.biznet.OrderRef.*"
condition: (p.authorized)
action: ALLOW
}
rule R2 {
participant(p): "org.acme.biznet.Member"
operation: ALL
resource(a): "org.acme.biznet.Order.*"
action: DENY
}``` OrderRef has reference to Order which is denied to all - and where authorized is Boolean 1 or 0 (Obviously this is set within the realm of whatever else you allow in your permissions.acl
[ ](https://chat.hyperledger.org/channel/composer?msg=3n99mG7QucvdqP9eH) @jdockter does this help -> https://hyperledger.github.io/composer/problems/diagnostics.html you mean beyond Winston logging that's used internally with an initial level of log points and destinations set up. ? There is also a section `Control of what is produced` on that page. From your question, you could mean how to control the destination factor.
hi can anyone help me with running fabric in docker swarm
i can see there option to deploy stack
Clipboard - November 21, 2017 9:08 PM
on ./startfabric.sh
Can the composer network handle multiple creations of asset/participants at the same time? I tried to run a loop of 1000 calls to the Composer API to create random/unique participants but i am seeing that some transactions are getting timeout.
```2017-11-20 16:04:33.497 UTC [chaincode] ExecuteChaincode -> ERRO 3c26c Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
2017-11-20 16:04:33.498 UTC [endorser] callChaincode -> DEBU 3c26d Exit
2017-11-20 16:04:33.498 UTC [endorser] simulateProposal -> ERRO 3c26e failed to invoke chaincode name:"my-network" on transaction 87ea6311aeeb8bf2648ea012139f0d415ee2fb43fd17f3c25a98cc5819713339, error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
```
I noticed that my chaincode container has crashed and my couchDB container was gone also. Is this a known issue to happen?
[ ](https://chat.hyperledger.org/channel/composer?msg=LWJ8QzusYSiyzR6QB) @mahoney1 Thanks a lot for detailed explanation :) ..I have conceptual doubt..Suppose there are 3 participants in my business network..and one of them submit the transaction which will emit event via transaction processor function. Then other two participants in this network will be able to listen this event automatically and can take some actions accordingly? each participant needs to subscribe to events? if there is a event which is common for all 3 participants and each of them is subscribed (want to listen when any of other two participants publish) as well as self publishing this event.. is this possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=LWJ8QzusYSiyzR6QB) @mahoney1 Thanks a lot for detailed explanation :) ..I have conceptual doubt..Suppose there are 3 participants in my business network..and one of them submit the transaction which will emit event via transaction processor function. Then other two participants in this network will be able to listen this event automatically and can take some actions accordingly? each participant needs to subscribe to events? if there is a event which is common for all 3 participants (kind of common transaction processor function containing event) and each of them is subscribed (want to listen when any of other two participants publish) as well as self publishing this event.. is this possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=LWJ8QzusYSiyzR6QB) @mahoney1 Thanks a lot for detailed explanation :) ..I have conceptual doubt..Suppose there are 3 participants in my business network..and one of them submit the transaction which will emit event via transaction processor function. Then other two participants in this network will be able to listen this event automatically and can take some actions accordingly? each participant needs to subscribe to events? if there is a event which is common for all 3 participants (kind of common transaction processor function emitting event) and each of them is subscribed (want to listen when any of other two participants publish) as well as self publishing this event.. is this possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=LWJ8QzusYSiyzR6QB) @mahoney1 Thanks a lot for detailed explanation :) ..I have conceptual doubt..Suppose there are 3 participants in my business network..and one of them submit the transaction which will emit event via transaction processor function. Then other two participants in this network will be able to listen this event automatically and can take some actions accordingly? each participant needs to subscribe to events? if there is a event which is common for all 3 participants (kind of common transaction emitting event in transaction processor function) and each of them is subscribed (want to listen when any of other two participants publish) as well as self publishing this event.. is this possible?
@bestbeforetoday - I notice you just closed https://github.com/hyperledger/composer-sample-networks/pull/112. Is there an alternate plan for getting tests working?
@bestbeforetoday - I notice you just closed https://github.com/hyperledger/composer-sample-networks/pull/112. Is there an alternate plan for getting tests working against v0.15.x?
We're working on it now. The approach that was taken kinda worked for simple test scenarios but was not really correct. I just posted a response to a Stackoverflow question with my best current info: https://stackoverflow.com/a/47417082/3680198
@davidoevans We're working on it now. The approach that was taken kinda worked for simple test scenarios but was not really correct. I just posted a response to a Stackoverflow question with my best current info: https://stackoverflow.com/a/47417082/3680198
The example there is focused on unit tests (using the embedded connection), but the general pattern will (I think!) apply ones the wrinkles in the purely programmatic approach are ironed out
The example there is focused on unit tests (using the embedded connection), but the general pattern will (I think!) apply once the wrinkles in the purely programmatic approach are ironed out
Things should be working fine if you use the CLI to import cards and install/start a business network that you are later going to interact with programmatically
@AkshayJindal its Nodejs apps that subscribe to events emitted by a TP function -> https://hyperledger.github.io/composer/applications/subscribing-to-events.html by using the composer-client.BusinessNetworkConnection.on API call - you can write your apps to do whatever you want when it receives those events.and whoever you wish (app users) to be notified of those business events
[ ](https://chat.hyperledger.org/channel/composer?msg=BE4Smmz23LbqcuLtq) @mahoney1 I think I'm seeing log output from ComposerConfig ...where is that set and how can I override it?
thx @bestbeforetoday - i'll try adjusting to what you posted on stackoverflow and respond there if issues.
Just note that the programmatic set up of the network admin identity on network start is not yet there. Any feedback or issues, let me know
There is enough boiler-plate in setting up the cards for testing that maybe we want to provide some utility function in the future to simplify the code
...ahh so basically it sounds like you're saying it's not going to work...is getting it working dependant on v0.15.2 release?
I am exploring hyperledger composer. Was just wondering if composer allows us to customize our network setup or do we need to live with default network setup that composer provides
@mahoney1 can u help me with this
[ ](https://chat.hyperledger.org/channel/composer?msg=pZvk6m4TGTaywm34Q)
@pravinghuge that's not really a composer question :-) suggest you google docker swarm fabric stack overflow and you'll find resources that can help you or ask on main #fabric channel and/or search using `/docker swarm/` there cheers
@pravinghuge that's not really a composer question :-) suggest you google `docker swarm fabric stack overflow` and you'll find resources that can help you or ask on main #fabric channel and/or search using `/docker swarm/` there cheers
[ ](https://chat.hyperledger.org/channel/composer?msg=RYdmg2MBJb8yLtGKA) @medhak19 this should help https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
Has joined the channel.
Does anyone have any info on this? https://chat.hyperledger.org/channel/composer?msg=FxihyZypqNESXfjMW
Hello team - could use some help. I am following the hyperledger tutorial and everything was working fine but our of the blue this morning I start getting this error when trying to deploy to the network: Error: Error trying to ping. Error: Error trying to query business network. Error: could not find chaincode with name 'tutorial-network' - make sure the chaincode tutorial-network has been successfully instantiated and try again
Fabric is up and running when I try to do this. Any ideas what might be going on?
[ ](https://chat.hyperledger.org/channel/composer?msg=wzCfpBeaCHXkiyKYw) @akshatbh Are you doing this locally on your machine?
@ykcai - yes this is local on my macbook
[ ](https://chat.hyperledger.org/channel/composer?msg=z7JD8amt775b8QdNk) @akshatbh It could just be a docker error and the chaincode container crashes or went offline. Run `docker ps -s` and see if you can see a chaincode container
@ykcai have you tried to look at peer logs, couchdb logs and chaincode logs to see if there is any more information. Try tracking the memory usage of the chaincode container to see if it is running out of memory
[ ](https://chat.hyperledger.org/channel/composer?msg=2F3C8eoqaGaRqfzL5) @ykcai I restarted docker and Fabric and see the following containers
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES SIZE
383536343ab1 hyperledger/fabric-peer:x86_64-1.0.4 "peer node start -..." 49 seconds ago Up 48 seconds 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com 20.1kB (virtual 154MB)
fd4e2e888bb5 hyperledger/fabric-orderer:x86_64-1.0.4 "orderer" 50 seconds ago Up 48 seconds 0.0.0.0:7050->7050/tcp orderer.example.com 28.3kB (virtual 151MB)
7dfd9f770f49 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-e..." 50 seconds ago Up 48 seconds 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb 10.8kB (virtual 1.5GB)
03a07d851059 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-..." 50 seconds ago Up 49 seconds 0.0.0.0:7054->7054/tcp ca.org1.example.com 37.1kB (virtual 238MB)
@davidkel From the *peer logs* it says `ERRO 119a8a failed to invoke chaincode name:"giveback" on transaction 0d079d72f80895ddc45aab20e2305631c7668152fcd5df35cb02dd0e8df1707c` I can see that my query for the historian returned results on the peer logs but the transaction times out
```2017-11-21 18:11:45.213 UTC [chaincode] func1 -> DEBU 119a7e Got keys and values. Sending RESPONSE
2017-11-21 18:11:45.213 UTC [chaincode] 1 -> DEBU 119a7f [0d079d72]handleQueryStateNext serial send RESPONSE
2017-11-21 18:11:45.216 UTC [chaincode] processStream -> DEBU 119a80 [0d079d72]Received message QUERY_STATE_CLOSE from shim
2017-11-21 18:11:45.216 UTC [chaincode] HandleMessage -> DEBU 119a81 [0d079d72]Fabric side Handling ChaincodeMessage of type: QUERY_STATE_CLOSE in state ready
2017-11-21 18:11:45.216 UTC [chaincode] afterQueryStateClose -> DEBU 119a82 Received QUERY_STATE_CLOSE, invoking query state close from ledger
2017-11-21 18:11:45.216 UTC [chaincode] afterQueryStateClose -> DEBU 119a83 Exiting QUERY_STATE_CLOSE
2017-11-21 18:11:45.216 UTC [chaincode] filterError -> DEBU 119a84 Ignoring NoTransitionError: no transition
2017-11-21 18:11:45.216 UTC [chaincode] func1 -> DEBU 119a85 Closed. Sending RESPONSE
2017-11-21 18:11:45.216 UTC [chaincode] 1 -> DEBU 119a86 [0d079d72]handleQueryStateClose serial send RESPONSE
2017-11-21 18:12:14.191 UTC [chaincode] Execute -> DEBU 119a87 Exit
2017-11-21 18:12:14.192 UTC [chaincode] ExecuteChaincode -> ERRO 119a88 Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
2017-11-21 18:12:14.192 UTC [endorser] callChaincode -> DEBU 119a89 Exit
2017-11-21 18:12:14.193 UTC [endorser] simulateProposal -> ERRO 119a8a failed to invoke chaincode name:"giveback" on transaction 0d079d72f80895ddc45aab20e2305631c7668152fcd5df35cb02dd0e8df1707c, error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
2017-11-21 18:12:14.193 UTC [endorser] simulateProposal -> DEBU 119a8b Exit
2017-11-21 18:12:14.194 UTC [lockbasedtxmgr] Done -> DEBU 119a8c Done with transaction simulation / query execution [e715fb51-8b1c-426f-9b76-7daeecb98420]
2017-11-21 18:12:14.194 UTC [endorser] ProcessProposal -> DEBU 119a8d Exit
2017-11-21 18:12:17.921 UTC [chaincode] processStream -> DEBU 119a8e [0d079d72]Received message COMPLETED from shim
2017-11-21 18:12:17.921 UTC [chaincode] HandleMessage -> DEBU 119a8f [0d079d72]Fabric side Handling ChaincodeMessage of type: COMPLETED in state ready
2017-11-21 18:12:17.921 UTC [chaincode] HandleMessage -> DEBU 119a90 [0d079d72f80895ddc45aab20e2305631c7668152fcd5df35cb02dd0e8df1707c]HandleMessage- COMPLETED. Notify
2017-11-21 18:12:17.921 UTC [chaincode] notify -> DEBU 119a91 notifier Txid:0d079d72f80895ddc45aab20e2305631c7668152fcd5df35cb02dd0e8df1707c does not exist
2017-11-21 18:15:52.844 UTC [eventhub_producer] Chat -> ERRO 119a92 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
2017-11-21 18:15:52.845 UTC [eventhub_producer] deRegisterHandler -> DEBU 119a93 deregistering event type: BLOCK
2017-11-21 18:17:55.964 UTC [eventhub_producer] Chat -> ERRO 119a94 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled```
In the *chaincode logs* I can see that the query had a callback
```
2017-11-21 20:04:02.804 UTC [Composer] Debug -> DEBU 220b63 Entering Engine.handleCallback 0xc4211625a0 &{0xc421114180}
2017-11-21 20:04:02.841 UTC [Composer] Debug -> DEBU 220b64 Exiting Engine.handleCallback 0
2017-11-21 20:04:02.842 UTC [Composer] Debug -> DEBU 220b65 Exiting Composer.Invoke [{"$class":"org.hyperledger.composer.system.HistorianRecord","transactionId":"111eca29105e94473eac0d75237c4f2e62ad136fafd89e94abc2eef0fb62f0f8","transactionType":"ca.ibm.giveback.TradeCoins","transactionInvoked":"resource:ca.ibm.giveback.TradeCoins#111eca29105e94473eac0d75237c4f2e62ad136fafd89e94abc2eef0fb62f0f8","participantInvoking":"resource:org.hyperledger.composer.system.NetworkAdmin#admin","identityUsed":"resource:org.hyperledger.composer.system.Identity```
But in the end I see the error :
```{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to query business network. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)",
"stack": "Error: Error trying to query business network. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)\n at channel.queryByChaincode.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:765:34)\n at
@davidkel From the *peer logs* it says `ERRO 119a8a failed to invoke chaincode name:"giveback" on transaction 0d079d72f80895ddc45aab20e2305631c7668152fcd5df35cb02dd0e8df1707c` I can see that my query for the historian returned results on the peer logs but the transaction times out
```2017-11-21 20:03:26.153 UTC [lockbasedtxmgr] Next -> DEBU 11a88f queryResultsItr.Next() returned a record:{"$class":"org.hyperledger.composer.system.HistorianRecord","$registryId":"org.hyperledger.composer.system.HistorianRecord","$registryType":"Asset","eventsEmitted":[],"transactionId":"8cfc470c-1fa9-4791-a7b5-3d76fd807334#0","transactionInvoked":"resource:org.hyperledger.composer.system.AddParticipant#8cfc470c-1fa9-4791-a7b5-3d76fd807334%230","transactionTimestamp":"2017-11-21T16:03:11.751Z","transactionType":"org.hyperledger.composer.system.AddParticipant"}
2017-11-21 20:03:26.153 UTC [chaincode] func1 -> DEBU 11a890 Got keys and values. Sending RESPONSE
2017-11-21 20:03:26.153 UTC [chaincode] 1 -> DEBU 11a891 [62d099e2]handleQueryStateNext serial send RESPONSE
2017-11-21 20:03:26.158 UTC [chaincode] processStream -> DEBU 11a892 [62d099e2]Received message QUERY_STATE_CLOSE from shim
2017-11-21 20:03:26.158 UTC [chaincode] HandleMessage -> DEBU 11a893 [62d099e2]Fabric side Handling ChaincodeMessage of type: QUERY_STATE_CLOSE in state ready
2017-11-21 20:03:26.158 UTC [chaincode] afterQueryStateClose -> DEBU 11a894 Received QUERY_STATE_CLOSE, invoking query state close from ledger
2017-11-21 20:03:26.158 UTC [chaincode] afterQueryStateClose -> DEBU 11a895 Exiting QUERY_STATE_CLOSE
2017-11-21 20:03:26.158 UTC [chaincode] filterError -> DEBU 11a896 Ignoring NoTransitionError: no transition
2017-11-21 20:03:26.159 UTC [chaincode] func1 -> DEBU 11a897 Closed. Sending RESPONSE
2017-11-21 20:03:26.159 UTC [chaincode] 1 -> DEBU 11a898 [62d099e2]handleQueryStateClose serial send RESPONSE
2017-11-21 20:03:54.537 UTC [chaincode] Execute -> DEBU 11a899 Exit
2017-11-21 20:03:54.542 UTC [chaincode] ExecuteChaincode -> ERRO 11a89a Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
2017-11-21 20:03:54.542 UTC [endorser] callChaincode -> DEBU 11a89b Exit
2017-11-21 20:03:54.543 UTC [endorser] simulateProposal -> ERRO 11a89c failed to invoke chaincode name:"giveback" on transaction 62d099e2ae90780ef6ef0740ce2b1703a834dcd24247e4b88b6e97a2699cd03f, error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
2017-11-21 20:03:54.550 UTC [endorser] simulateProposal -> DEBU 11a89d Exit
2017-11-21 20:03:54.555 UTC [lockbasedtxmgr] Done -> DEBU 11a89e Done with transaction simulation / query execution [98b9601d-9a69-4d38-90c4-8d257926fdfd]
2017-11-21 20:03:54.555 UTC [endorser] ProcessProposal -> DEBU 11a89f Exit
2017-11-21 20:04:02.941 UTC [chaincode] processStream -> DEBU 11a8a0 [62d099e2]Received message COMPLETED from shim
2017-11-21 20:04:02.941 UTC [chaincode] HandleMessage -> DEBU 11a8a1 [62d099e2]Fabric side Handling ChaincodeMessage of type: COMPLETED in state ready
2017-11-21 20:04:02.941 UTC [chaincode] HandleMessage -> DEBU 11a8a2 [62d099e2ae90780ef6ef0740ce2b1703a834dcd24247e4b88b6e97a2699cd03f]HandleMessage- COMPLETED. Notify
2017-11-21 20:04:02.941 UTC [chaincode] notify -> DEBU 11a8a3 notifier Txid:62d099e2ae90780ef6ef0740ce2b1703a834dcd24247e4b88b6e97a2699cd03f does not exist```
In the *chaincode logs* I can see that the query had a callback
```
2017-11-21 20:04:02.804 UTC [Composer] Debug -> DEBU 220b63 Entering Engine.handleCallback 0xc4211625a0 &{0xc421114180}
2017-11-21 20:04:02.841 UTC [Composer] Debug -> DEBU 220b64 Exiting Engine.handleCallback 0
2017-11-21 20:04:02.842 UTC [Composer] Debug -> DEBU 220b65 Exiting Composer.Invoke [{"$class":"org.hyperledger.composer.system.HistorianRecord","transactionId":"111eca29105e94473eac0d75237c4f2e62ad136fafd89e94abc2eef0fb62f0f8","transactionType":"ca.ibm.giveback.TradeCoins","transactionInvoked":"resource:ca.ibm.giveback.TradeCoins#111eca29105e94473eac0d75237c4f2e62ad136fafd89e94abc2eef0fb62f0f8","participantInvoking":"resource:org.hyperledger.composer.system.NetworkAdmin#admin","identityUsed":"resource:org.hyperledger.composer.system.Identity```
But in the end I see the error :
```{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to query business network. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)",
"stack": "Error: Error trying to query business network. Error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)\n at channel.queryByChaincode.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:765:34)\n at
@ykcai would have tried docker logs as well on the couchdb container to see if there was anything. I can't see anything obvious to indicate why the chaincode container crashed so would suggest tracking the memory utilisation of it to see if it runs out of memory
[ ](https://chat.hyperledger.org/channel/composer?msg=SX8yLsgCdmQoP6GTg) @davidkel ```****************************************************
WARNING: CouchDB is running in Admin Party mode.
This will allow anyone with access to the
CouchDB port to access your database. In
Docker's default configuration, this is
effectively any other container on the same
system.
Use "-e COUCHDB_USER=admin -e COUCHDB_PASSWORD=password"
to set it in "docker run".
****************************************************
```
this is what is get from the couchdb? Is there suppose to be more than this
@ykcai sorry no idea, i've never had to look at what couchdb might be doing
was hoping there might be some indication as to why the container stopped :-(
@ykcai : Reinstalling the composer runtime seems to have done the trick for me and solved the issue. Is there any established procedure to managing this runtime? Do I need to reinstall every time I modify the business application, restart the computer etc? Thanks for the help and any insights
@davidkel @akshatbh Its not a bug with a missing chaincode container or anything, this happened 100% of the time when i flood the network with requests - creation of assets/participants and other transactions. Around about 1k~ objects in the Historian I see a tremendous slow down for queries and then I get transactions timeouts for certain queries. This also happens when I host my Composer in Kubernetes. Around about 800~ transactions in the Historian and I get a timeout issues - (using couchdb as the database for my blockchain).
@ykcai could you raise an issue with your findings please, would be also good to capture the chaincode container memory utilisation as well as part of the results.
@davidkel I am also doing this on Kubernetes, and I dont even see a chaincode pod
@davidkel https://github.com/hyperledger/composer/issues/2801
@ykcai thanks for the issue. As you say you are also doing this in kubernetes I am assuming you also see this running say against the composer dev server ? so would you be able to get more diagnostic information using this environment ?
@ykcai thanks for the issue. As you say you are also doing this in kubernetes I am assuming you also see this running against the composer dev server ? so would you be able to get more diagnostic information using this environment ?
Hey, I am having an issue with `composer network ping` that fails, complaining that the identity in the admin card is not valid. I followed all of the steps in the developer tutorial to do it with fabric running locally, and that seemed to work. Now I am trying to deploy my network into fabric running in IBM Cloud Private that is not running "locally". I used the helm charts in the IBM Container Service repo, and my network seems functional. In fact, the network gets deployed successfully, via the `composer network start` command. It's just that the admin card it creates is not being accepted by my remote Fabric environment. I am running composer 0.15.1. I saw an earlier post from somebody else having a similar problem with playground, but didn't see resolution. I will keep searching, but if anybody has gotten around this please let me know how you did it. Thanks!
hello team, I just updated the composer to the lastest composer version, install the runtime, start the newtwork and created a brand new angular app, started the app and all seems to work fine, the server works fine, but I got this erro: Unhandled error for request GET /api/Producto: Error: There is no method to handle GET /Producto
[1] at restUrlNotFound (/home/node/my-startup/red-abalazo-startup/abalazo-app/node_modules/strong-remoting/lib/rest-adapter.js:397:17)
[1] at Layer.handle [as handle_request] (/home/node/my-startup/red-abalazo-startup/abalazo-app/node_modules/express/lib/router/layer.js:95
and on the local host Error: 404 - Could not find API route. Please check your available APIs. Could you tell me what I am missing
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=9cR73fyzhuDr5ER4r) @rthatcher Thank you. I will try it out and update the result
hello everyone
having a little trouble with composer rest server since the recent updates
i used to be able to just do composer-rest-server -p hlfv1 -n business-network -i admin -s adminpw
and itd fire up
i think what is happening when i create my peer admin card , it is not getting assigned a business network
got it working
Has joined the channel.
Anyone tried updating any documents in composer?
its document upload.. sorry for the typo
anyone have any idea what the warning from swagger means when doing queries "Swagger: skipping unknown type"
[ ](https://chat.hyperledger.org/channel/composer?msg=hpATCpDpAnQZmHvgf) @mahoney1 Thanks, didn't know i need modified fabric-samples :)
Hi all
I see that queries support limit and skip so you can make a paging/sorting query. However it looks like Order By is actually validating the provided field so you can't do following.
```
query selectCompanies {
description: "Select all companies with sorting and paging options"
statement:
SELECT org.indetail.nebulaNetwork.Company
ORDER BY _$sortColumn _$sortOrder
LIMIT _$limit
SKIP _$skip
}
```
Is the only solution, next to going custom, to make a separate query for every possible combination of sort column - ASC/DESC? That would mean 2 queries for every sortable column.
Thanks
Hi all
I see that queries support limit and skip so you can make a paging/sorting query. However it looks like Order By is actually validating the provided field so you can't do following.
```
query selectCompanies {
description: "Select all companies with sorting and paging options"
statement:
SELECT org.indetail.nebulaNetwork.Company
ORDER BY _$sortColumn _$sortOrder
LIMIT _$limit
SKIP _$skip
}
```
Is the only solution, next to going custom, to make a separate query for every possible combination of sort column - ASC/DESC? That would mean 2 queries for every sortable column, assuming the couch db indexes are available.
Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=S239oyjRLFJBMnQ2r) @davidoevans Through the API it is technically possible to specify your own bootstrap transactions on network start that create the network admin identities but realistically... 0.15.2 should make the entirely programmatic path workable. Until then, the CLI does work as expected
Hi All,
I need to build a PoC for Birth/Death registration in Block chain. Do we have any sample application to build it on Composer.
Thanks for your continuous help.
@conroydave - searching this channel I found a previous entry explaining that there are no 'REST API endpoints' for Concepts or Abstract types and that generates the Warning you see. (The Vehicle Lifecycle Demo model has quite a few of these.)
@sst
@sstone1 I've followed your tutorial at https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html. I get an error when trying to start the network. This is the output:
```
$ composer network start -c PeerAdmin@byfn-network-org1 -a main
tenance-network.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -
C bob/admin-pub.pem
Starting business network from archive: maintenance-network.bna
Business network definition:
Identifier: maintenance-network@0.0.1
Description: A decentralized maintenance market with IoT devices
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (maintenance-network:0.15.1)-open /var/hyperledger/production/chaincodes/maintenance-network.0.15.1: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (maintenance-network:0.15.1)-open /var/hyperledger/production/chaincodes/maintenance-network.0.15.1: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (maintenance-network:0.15.1)-open /var/hyperledger/production/chaincodes/maintenance-network.0.15.1: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (maintenance-network:0.15.1)-open /var/hyperledger/production/chaincodes/maintenance-network.0.15.1: no such file or directory)
Command failed
```
@sstone1 I shoul probably check if the error exists because of my own bna. One sec.
@sstone1 Forget it, i just remembered that the runtime was installed for `tutorial-network`
[ ](https://chat.hyperledger.org/channel/composer?msg=sxe2yQvhHv5fCoAZp) @aneb for a single `ORDER BY` field you may be hitting this index issue -> https://stackoverflow.com/questions/45919898/order-by-not-working-in-named-query/45966828#45966828 for multiple ORDER BY fields this is a current limitation of CouchDB see here -> https://github.com/hyperledger/composer/issues/1640 LIMIT/SKIP operators are blocked by Fabric presently as described here -> https://github.com/hyperledger/composer/issues/1015
[ ](https://chat.hyperledger.org/channel/composer?msg=TRRRCHxhYh9MkgCq4) @prmdmshra not presently.. this is a list of our sample networks feel free to browse -> https://github.com/hyperledger/composer-sample-networks/
Can an asset contain another asset?
@mayur.relekar - An Asset can contain an Asset. A Participant could also contain an Asset.
@mayur.relekar - An Asset can contain an Asset. A Participant could also contain an Asset.
As an alternative you might like to consider a Concept if you want to re-use parts of your model. I assume you have seen the reference doc on the modelling language:
https://hyperledger.github.io/composer/reference/cto_language.html
Hi... is the content at this link valid? Or does it need to be updated? - https://hyperledger.github.io/composer/managing/identity-issue.html
I am trying to multiple user mode for the REST server, as described at https://hyperledger.github.io/composer/integrating/enabling-multiuser.html. Can somebody help me with creating a blochain identity for one of my network participants. Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=HyD6qFm96mbycGvrb) @Hefziben [ ](https://chat.hyperledger.org/channel/composer?msg=HyD6qFm96mbycGvrb) @Hefziben are you trying to run it on localhost or otherwise -> https://stackoverflow.com/questions/46563282/hyperledger-rest-server-angular-web-app-getting-could-not-connect-to-rest-server Are you defining queries, can you post your model...
[ ](https://chat.hyperledger.org/channel/composer?msg=sSYH3iBsvxwhyJAnv) @parags hi there - that doc should be updated this week to use cards as an example. Try something like `composer identity issue --card admin@basic-sample-network -u bobid1 -a "resource:org.acme.sample.SampleParticipant#bob"`
[ ](https://chat.hyperledger.org/channel/composer?msg=sSYH3iBsvxwhyJAnv) @parags hi there - that doc should be updated this week to use cards as an example. Try something like `composer identity issue --card admin@basic-sample-network -u bobid1 -a "resource:org.acme.sample.SampleParticipant#bob"` and the latter is your already-created Participant the identity is mapped to.
Hi guys - having a slight issue. I would like a participant to accept an offer on one of their assets. When they go to accept the offer however, it won't update the other participant's account balance as they don't have read permission for the other person's account? Has anyone encountered this or knows a way around it? Regards,
hi @rthatcher thanks, yes I have seen the docs on the modelling language. Just didn't find anything on nested assets. I am not sure a concept would do the job as I am not looking to simply reuse properties as I need the parent asset to be accessible to ParticipantA but the child asset to be uniquely identifiable and accessible to ParticipantB. Make sense?
Don't worry, I solved it
has anyone published code to allow for self registration - say oauth provider to full on chain identity
ive only been able to do it with middleware mongodb
authenticating rest is easy, but i want to identify the particpants using that rest server
@conroydave you have to issue each of the participants an identity card. You then use the rest server to upload that card.
You can then switch between participants using the rest server
Hello Together, has anyone success using the composer-rest-server for testing with no securiy inside a Docker container?
As described at the end in https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
Easy to start - but nothing showes up on port 3000...
Thanhk for any hint...
so you issue the card during the registration process? like during the oauth handshake?
i am trying to allow for unmonitored, self registration
The way I am doing it at the moment is you would spin up a multi user Rest api using the network admin. The network admin would then import the cards for the participants and as admin you can switch between which card you want to use - it's just like how it works in the Playground
@HerwigHabenbacher - Starting the REST server in a container requires that parameters including the Admin are passed into the container as Environment Variables. Versions v0.15.* use Business Network Cards and I think there is a feature/fix this week to allow the new Cards to be passed as Environment variable data.
@mahoney1 Thank you for the feedback. Yeah I ran into the index problem but already found that one out.
@rthatcher Thank you! I used just the network - maybe this was the reason...
[ ](https://chat.hyperledger.org/channel/composer?msg=Jx2thcvbBnY5PMYW5) @mahoney1 Thanks... when I issue that command, i get an error
[ ](https://chat.hyperledger.org/channel/composer?msg=Jx2thcvbBnY5PMYW5) @mahoney1 Thanks... when I issue that command, i get an error.... Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Has joined the channel.
@parags - suggest you create a S/Overflow with who executed, what command, and what the exact error/output was, cheers
Hello all,
I have one network with 3 MSPs - 3 CAs, 3 couchDB, 3 peers and 1 orderer, utilizing fabric 1.0.4 with composer 0.14.3, with endorsement policy 3-of (requiring all peers to sign), network starts fine, participants are created, registered, assets added, etc. etc. When I try to invoke the first transaction with a non-admin participant I get at proposal phase:
DEBUG HLFConnectionManager :fabric-client() [Channel.js]: compareProposalResponseResults - start {}$
DEBUG HLFConnectionManager :fabric-client() [Channel.js]: compareProposalResponseResults - read/writes result sets match index=1 {}$
DEBUG HLFConnectionManager :fabric-client() [Channel.js]: compareProposalResponseResults - read/writes result sets match index=2 {}$
And later on:
DEBUG HLFConnectionManager :fabric-client() [Channel.js]: verifyProposalResponse - have a valid identity {}$
DEBUG HLFConnectionManager :fabric-client() [Channel.js]: verifyProposalResponse - This endorsement has both a valid identity and valid signature {}$
DEBUG HLFConnectionManager :fabric-client() [Channel.js]: compareProposalResponseResults - start {}$
DEBUG HLFConnectionManager :fabric-client() [Channel.js]: _getWriteSet - chaincode action status:200 message: {}$
DEBUG HLFConnectionManager :fabric-client() [Channel.js]: _getWriteSet - chaincode action status:200 message: {}$
ERROR HLFConnectionManager :fabric-client() [Channel.js]: compareProposalResponseResults - read/writes result sets do not match index=1 {}$
WARN HLFConnection :Peers do not agree, Read null$
DEBUG HLFConnection :_validateResponses() < {"0":false}$
The same transaction works fine if I have 1-of endorserment policy.
Any hints are appreciated, I have run out of ideas....
[ ](https://chat.hyperledger.org/channel/composer?msg=5mJFxaWqYcLZe728J) @jdockter I've raised an issue for this -> https://github.com/hyperledger/composer/issues/2810 to understand how it is set, how to configure level or ability to turn off/quiesce etc.
@IliasStergiou Ideally, the endorsement policy will determine whether there are sufficient consistent responses from the peers and this will be checked both at the application and in the orderer. The idea is that to fulfill (for it to pass validation at commit) an endorsement policy that needs signatures from your multiple peers to sign the same payload. That is why the comparison is being made. It might depend on your endorsement policy. .Sorry I can't help any further, you might want to ask on #fabric as this is a Fabric client issue.
@mahoney1 Thanks a million. I have checked the debug logs of the peers, orderer and the docker images running the chaincode and there is no error, it is the client that only complains.
has anyone here configured a multi-organisation network with endorsement policy different than 1-of?
Hi, I want to bind a business network card to a participant, how does that work? All the info on the website is not working. Alot of stuff is outdated I think
I try to implement multiuser access to the swagger API
I can add my .card to my wallet
but I get statuscode 500: error trying to login and get user context
Hi everyone. I am still encountering this problem where I can't use the networkadmin.card in a multi user Rest server. I launch the rest server using the networkadmin, I then import the network admin file, however I keep getting this error when I try to do anything!!!!
```
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)",
"stack": "Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)\n at _checkRuntimeVersions.then.catch (/home/ubuntu/.nvm/versions/node/v8.9.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:679:34)\n at
I have this problem too
really weird and frustrating
Is it something to do with the fact I am launching the rest server off the admin?
A work around might be to create a card for a second admin?? Any advice anyone?
@mayur.relekar [ ](https://chat.hyperledger.org/channel/composer?msg=Hku4Fk2NXLefyMQEF) @mayur.relekar hi there - defining a nested asset is supported - an example is ```asset PurchaseOrderAsset identified by orderId {
o String orderId
--> SupplierChainParticipant createdBy
--> SupplierChainParticipant assignedTo
o String description
o String status
o Integer quantity
o String assetId
o PurchaseOrderAsset[] subPurchaseOrders
}``` and an example JSON posting (scroll down) here -> https://github.com/hyperledger/composer/issues/1204 . You could also just try your modeled asset in Playground, and 'generate random data' to populate (and change the Participants to some relationships that already exist. However, if you want to use ACLs you could (instead) have a relationship `--> PurchaseOrderAsset[] childPurchaseOrder` and write an ACL condition (function to check its a child of this parent asset) on that asset which checks _something_ about it
eg. if the `childPurchaseOrder` had a relationship back to its parent asset, you could use that in the condition of your ACL -
e.g. `condition pseudocode: (asset.parent.createdBy.getIdentifier() === participant.getIdentifier() && asset.isChild === true)`. You might be better off not nesting and modeling (more optimally) as two separate assets yet still have an `--> PurchaseOrderAsset[] childPurchaseOrder` relationship back to the parent Asset - and that way you have two separate registries and it is easier to do the right ACL conditions for the Participant instance you only want to see in those asset registries, yet still have parent/child comparisons or resolution. Anyway, food for thought.
@mayur.relekar [ ](https://chat.hyperledger.org/channel/composer?msg=Hku4Fk2NXLefyMQEF) hi there - defining a nested asset is supported - an example is ```asset PurchaseOrderAsset identified by orderId {
o String orderId
--> SupplierChainParticipant createdBy
--> SupplierChainParticipant assignedTo
o String description
o String status
o Integer quantity
o String assetId
o PurchaseOrderAsset[] subPurchaseOrders
}``` and an example JSON posting (scroll down) here -> https://github.com/hyperledger/composer/issues/1204 . You could also just try your modeled asset in Playground, and 'generate random data' to populate (and change the Participants to some relationships that already exist. However, if you want to use ACLs you could (instead) have a relationship `--> PurchaseOrderAsset[] childPurchaseOrder` and write an ACL condition (function to check its a child of this parent asset) on that asset which checks _something_ about it
eg. if the `childPurchaseOrder` had a relationship back to its parent asset, you could use that in the condition of your ACL -
e.g. `condition pseudocode: (asset.parent.createdBy.getIdentifier() === participant.getIdentifier() && asset.isChild === true)`. You might be better off not nesting and modeling (more optimally) as two separate assets yet still have an `--> PurchaseOrderAsset[] childPurchaseOrder` relationship back to the parent Asset - and that way you have two separate registries and it is easier to do the right ACL conditions for the Participant instance you only want to see in those asset registries, yet still have parent/child comparisons or resolution. Anyway, food for thought.
@mahoney1 ah! yes of course, this makes sense too in my use case especially if nesting is sub-optimal. But what if my child asset was a completely different asset? Eg:
```
asset PurchaseOrderAsset identified by orderId {
o String orderId
--> SupplierChainParticipant createdBy
--> SupplierChainParticipant assignedTo
o String description
o String status
o Integer quantity
o String assetId
o RequirementsAsset[] requirements
}
asset RequirementsAsset identified by reqId {
o String reqId
--> RequirementFulfillerParticipant vendor
o String requirementName
o String status
o Double amount
}
```
Where each individual "requirement" within a purchase order can be fulfilled by separate "vendors". Would using relationships and ACL conditions do the job? Not sure!
[ ](https://chat.hyperledger.org/channel/composer?msg=aH9xBhnPCzzeY6Dh4) @berndoostrum should be something like `composer identity bind --card user4@tutorial-network -a org.acme.biznet.Trader#trader4 --certificateFile ~/.identityCredentials/user4-pub.pem` - the docs are being updated this week, to reflect card use, apols.
@mahoney1 where do i get the certifcate files from?
or how do I create them? I have one for admin, but not for normal users
@mayur.relekar yes, would work - in your ACL conditions, you would navigate the relationship factor in your condition and compare. I do notice that `RequirementsAssets[]` is not a `-->` relationship in your model .. Examples of such ACLs are here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/permissions.acl (check out the rule conditions)
great, will check them out @mahoney1 thanks!
Is there a description/tutorial somewhere of how to take a Composer based application and deploy it to an existing Fabric network?
Also, having this problem when trying to deploy bna to my local network:
```
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (donera:0.15.1)-open /var/hyperledger/production/chaincodes/donera.0.15.1: no such file or directory)
```
This is the command I'm trying to run:
```
composer network start -c PeerAdmin@hlfv1 -A admin -S adminpw -a donera-network.bna -f networkadmin.card
```
Unable to debug this.
Hello. In Fabric, the genesis block and channel configuration (crypto-config.yaml and configtx.yaml) are created when we execute `./byfn.sh´. I am not sure about composer. How does this happen in fabric? is this created when we run `./startFabric.sh` which further run docker-compose file?
Hello. In Fabric, the genesis block and channel configuration (crypto-config.yaml and configtx.yaml) are created when we execute ``./byfn.sh´. I am not sure about composer. How does this happen in fabric? is this created when we run ``./startFabric.sh` which further run docker-compose file?
Hello. In Fabric, the genesis block and channel configuration (crypto-config.yaml and configtx.yaml) are created when we execute ./byfn.sh. I am not sure about composer. How does this happen in fabric? is this created when we run ./startFabric.sh which further run docker-compose file?
Hello. In Fabric, the genesis block and channel configuration (crypto-config.yaml and configtx.yaml) are created when we execute ./byfn.sh. I am not sure about composer. How does this happen in composer? is this created when we run ./startFabric.sh which further run docker-compose file?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=tvmqr9eQgX2D5gGCZ) @berndoostrum you generate them -) Normally you would rely on `fabric-ca-client` to supply them but in the meantime you could use ```composer identity request -c PeerAdmin@byfn-network-org1-only -u admin -s adminpw -d alice``` as shown in this multi-org example -> https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
Hello, I worked very successful through the hyperledger composer tutorial an examples. But now I'm struggling to generate a Angular skeleton for digitalproperty-network. The network has been started
The output is Thomass-MacBook-Pro:hackaton xck2025$ yo hyperledger-composer:angular
Welcome to the Hyperledger Composer Angular project generator
? Do you want to connect to a running Business Network? Yes
? Project name: digitalproperty-angular
? Description: Hyperledger Composer Angular project
? Author name: Thomas
? Author email: thomas@email.com
? License: Apache-2.0
? Name of the Business Network card: PeerAdmin@hlfv1
? Do you want to generate a new REST API or connect to an existing REST API? Generate a new REST API
? REST server port: 3000
? Should namespaces be used in the generated REST API? Always use namespaces
events.js:183
throw er; // Unhandled 'error' event
^
Error: Error trying to ping. Error: Error trying to query business network. Error: Missing "chaincodeId" parameter in the proposal request
at _checkRuntimeVersions.then.catch (/Users/xck2025/.nvm/versions/node/v8.9.1/lib/node_modules/generator-hyperledger-composer/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:679:34)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=xCGdLKYfAhGScFP2C) @AkshayJindal do you mean the Composer development environment? We create a sample Dev fabric runtime (you can check out what goes on in `fabric-tools` or check out github for the scripts).
@berndoostrum @JoshuaRippon - I'm not certain if this is your problem, but let me explain something about Cards and Certificates.
When you issue an ID (or when the Admin@_network_ is issued for you) it contains a 'secret', and the first tie you use it Certificates are downloaded and stored in your Wallet (on the file system for CLI). So if you issue this sequence of commands
`composer network start -c PeerAdmin@hlfv1 -A admin -S adminpw -a tutorial-network@0.0.1.bna -f networkadmin.card`
`composer card import --file networkadmin.card`
`composer network ping --card admin@tutorial-network`
then you have downloaded Certificates to the CLI and used the one-time secret, and the networkadmin.card file is no longer useful - you can't import it into the REST server wallet. What you need to do is to export the card from the CLI (including the certificates) using this command:
`composer card export --file net-adm-cert.card --name admin@tutorial-network` you can then use the new card to import into REST server wallet.
- you can check that the new .card file is larger than the original .card file as it contains the certificates.
@berndoostrum @JoshuaRippon - I'm not certain if this is your problem, but let me explain something about Cards and Certificates.
When you issue an ID (or when the Admin@_network_ is issued for you) it contains a 'secret', and the first time you use it Certificates are downloaded and stored in your Wallet (on the file system for CLI). So if you issue this sequence of commands
`composer network start -c PeerAdmin@hlfv1 -A admin -S adminpw -a tutorial-network@0.0.1.bna -f networkadmin.card`
`composer card import --file networkadmin.card`
`composer network ping --card admin@tutorial-network`
then you have downloaded Certificates to the CLI and used the one-time secret, and the networkadmin.card file is no longer useful - you can't import it into the REST server wallet. What you need to do is to export the card from the CLI (including the certificates) using this command:
`composer card export --file net-adm-cert.card --name admin@tutorial-network` you can then use the new card to import into REST server wallet.
- you can check that the new .card file is larger than the original .card file as it contains the certificates.
[ ](https://chat.hyperledger.org/channel/composer?msg=EdTj9PDuZBBpebwGc) @toddinpal check out the Vehicle Lifecycle demo application -> https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-lifecycle its based on Composer
[ ](https://chat.hyperledger.org/channel/composer?msg=Xe7QZ5hHpoWYn6H5n) @mahoney1
I am updating a sample network to according to my use case.
Could you please suggest how can I reject a transaction from being added to the ledger as unconfirmed transactions. I want to implement the following in logic.js and the application to be included in block only if:
1. The business logic(in my case verification of data) is True, and
2. Manually a participant accepts the transaction to include it to the ledger.
@toddinpal - can I direct you to this tutorial which covers many of the things you need to do to deploy to an existing Fabric:
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html
This is a reasonably straightforward tutorial for a single org - but we have a multi-org multi-peer Tutorial that will be available soon.
[ ](https://chat.hyperledger.org/channel/composer?msg=rxiQXomw2nHs8HCEf) @tbberg I think you'll find you need to use the admin card for `Business Network card` ie `admin@tutorial-network -> https://hyperledger.github.io/composer/tutorials/developer-tutorial.html and you need to specify `never use namespaces`
[ ](https://chat.hyperledger.org/channel/composer?msg=rxiQXomw2nHs8HCEf) @tbberg I think you'll find you need to use the admin card for `Business Network card` ie `admin@tutorial-network` -> https://hyperledger.github.io/composer/tutorials/developer-tutorial.html and you need to specify `never use namespaces`
@rthatcher Thanks! I'll give it a try... any idea on when the multi-org version multi-peer version will be available?
@toddinpal - We expect the Multi-Org tutorial by the end of the week
[ ](https://chat.hyperledger.org/channel/composer?msg=iY59xMFuAQcNsgsYi) @mahoney1 okay..Yes you are right..fabric-tools folder already has these files like genesis block or channel configuration. No need to create for sample Dev Fabric.
[ ](https://chat.hyperledger.org/channel/composer?msg=iY59xMFuAQcNsgsYi) @mahoney1 okay..Yes you are right..fabric-tools folder already has these files like genesis block (composer-genesis.block) or channel configuration (composer-channel.tx). No need to create for sample Dev Fabric.
Has joined the channel.
looks like that is the case
in start fabric ive got this line: # Create the channel
docker exec peer0.org1.example.com peer channel create -o orderer.example.com:7050 -c composerchannel -f /etc/hyperledger/configtx/composer-channel.tx
@rthatcher thanks for the answers, going to try that
[ ](https://chat.hyperledger.org/channel/composer?msg=GwyeigoBmdsgW6DMS) @conroydave Hi..How docker resolve this domain name peer0.org1.example.com? I mean, info about IP address?
it just runs it locally
like a sandbox
is there any way to define a model file so assets automatically gets unique identifiers
i know playground generates test data, but would like to do it via rest
@rthatcher thankyou very much - that worked a treat! I would like to issue the cards using the api from javascript however I am unsure how to pass it the form data. Would you know how I can do that? I have been playing around with the form-data npm module but can't quite get it to post
@AkshayJindal - it is docker-compose that manages the IP address resolution of the containers. docker-compose starts all the containers on a specific network interface and enables them to see each other. The Fabric Tools used for the standard developer environment for Hyperledger Composer use docker-compose.
Further details will be available from the docker web sites.
@mahoney1 Thank you! The hint with the admin card it was. It actually was not imported for digitalproperty-network. The second hint did not play a role. It worked with "always use namespace" too
That's the way it worked
Clipboard - November 22, 2017 6:37 PM
and then
Clipboard - November 22, 2017 6:37 PM
@tbberg - cool, couldn't recall with angular gen, thanks for the info.
hmm I can import an admin account now in my wallet, but now I want to bind an account to a participant. When I try to do that I get Authorization failure...
In the playground it is so simple to add a businesscard with a participant. Without its almost impossible it seems
@berndoostrum what is the error you are getting?
✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
I am trying to issue an identity for a participant
Can someone help me?
I am trying to get the historian data in my angular app
[ ](https://chat.hyperledger.org/channel/composer?msg=WBmAziG9sSg3Homcq) @berndoostrum have you got the full command line you used?
[ ](https://chat.hyperledger.org/channel/composer?msg=tgcriWSr4c2J2NY3g) @berndoostrum if you look at the generated REST API (https://localhost:3000/explorer/) and look in "System", you'll find some Historian REST APIs you can call from your Angular app
Does the `LIMIT` keyword for queries work at this time on 0.14.2?
Has joined the channel.
Hello shall i user fabric or composer for development of block chain applications?
hyperledger provides features such as private channel, consessus and smart contract but the same whether composer also provides??? how to integrate composer code with fabric and make use of fabric features as well ????
[ ](https://chat.hyperledger.org/channel/composer?msg=rmvKTYNrvksKy9xnQ)
Could you please suggest how can I prevent an invalid transaction (according to the business logic) from being added in the ledger.
[ ](https://chat.hyperledger.org/channel/composer?msg=ETeAPxFcgtHhqNTnv) @mahoney1 Thanks... i found both the issue and possible solutions on S/Overlow at https://stackoverflow.com/questions/47295997/composer-identity-issue-authorization-failure-error-hyperldeger-composer-v0-15-0?noredirect=1&lq=1 . Turns out that my VM had some older ID information from previous runs. Cleaned everything up and voila... got multiple user mode to work with the REST server. thanks to @rthatcher for the informative post on S/Overflow.
@ykcai No, it's because they currently aren't supported in fabric. see https://jira.hyperledger.org/browse/FAB-5369
@yogesh.fulsunge Composer business networks are deployed to a hyperledger fabric network therefore composer exploits the capabilities of hyperledger fabric such as channels, concensus etc
so shall i develop applications in composer or fabric or both ?
composer creates a default channel and we can write smart contract between participants so whats the use of chaincode provided by fabric??? is it provides the same thing we can achieve by composer??
Has joined the channel.
Hello, I installed composer, I can deploy a smart contract using the command line or using composer-playground.
But when I try to communicate with the network I get this error: Error: Missing "chaincodeId" parameter in the proposal request
message would you have any idea about this ? thanks
you don't have to deploy , you need to install the network and start it
then import the card
yes when I said deploy, I meant install the runtime and start the network by using the following command: composer runtime install -c PeerAdmin@hlfv1 -n bna1 composer network start -c PeerAdmin@hlfv1 -a bna1@0.0.1.bna -A admin -S adminpw
you have forgot to specify business card --file networkadmin.card
below are the correct steps i had successfully executed
dear all i am Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations)
dear all i am Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations) but getting below error in requesting identity
./createPPeerAdminCard.sh
composer archive create -t dir -n .
composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card
composer card import --file networkadmin.card
composer network ping --card admin@tutorial-network
Hello, i have a question regarding transactions. Say for example i have a transaction which takes participantX and participantY. When i want to initiate the transaction i have to supply both id's. How does composer enforce that the id supplied as participantX (the initiator) is the one who's logged into the rest-server? I take that it's not possible to execute supplying an id of a different participant
Ok thanks I will try your procedure
@nickyromeijn if you have imported cards for your participants, the one that participant that is set as the default card will be the one executing the transaction
@JoshuaRippon I understand that, but how would i force through ACL's that the supplied participant in a transaction is the one that's executing transactions? Considering it's just a parameter that i supply to the transaction
I don't think you do that through ACL
ACL assumes that the person making the transactions is the one who is logged in
The one executing the transactions is the one who's identity card is set as the default
So let's say i'm authenticated as participant 1234 and i supply my transaction with participant 4321 and participant Y it would fail?
or is it possible to directly access the authenticated participant within transactions without supplying it as parameter?
[ ](https://chat.hyperledger.org/channel/composer?msg=RSwgvA8twFp7SygPo) @nickyromeijn you can do this with `getCurrentParticipant()`
That's what i needed :)
Thanks
Thank you very much Yogesh, I confused the business cards :)
now it works
can any one help me with how to add peers to the network? advance thanks\
@wininani please see the Hyperledger Fabric documentation
@sstone1 When you give a participant/identity the rights to issue more identities, is it possible to limit this to a certain type of participant?
For example participantY can only issue new identities for participant of type X
yep, by adding an ACL rule around the system transaction `IssueIdentity`
```
rule OnlySampleParticipantsCanIssueIdentities {
description: "Only sample participants can issue identities"
participant: "org.acme.sample.SampleParticipant"
operation: CREATE
resource: "org.hyperledger.composer.system.IssueIdentity"
action: ALLOW
}
```
awesome
_but_ you'll likely have existing rules around the `org.hyperledger.composer.system.*` namespace which will conflict
Yeah probably, but my tests should point that out quickly enough
@sstone1 I take you need to add a condition to the example you given me? Is there anywhere i can see the transaction parameters of the issueIdentity tx?
https://github.com/hyperledger/composer/blob/master/packages/composer-common/lib/system/org.hyperledger.composer.system.cto#L156
we really don't document this area very well at the moment - sorry1
No worries
rule CareGiverCanOnlyIssueIdentitiesToPatients {
description: "Only casemanagers can create patients"
participant(p): "nl.government.pgb.CaseManager"
operation: CREATE
resource(r): "org.hyperledger.composer.system.Identity"
transaction(tx):"org.hyperledger.composer.system.IssueIdentity"
condition: (tx.Participant.$type == "Patient")
action: ALLOW
}
```rule CareGiverCanOnlyIssueIdentitiesToPatients {
description: "Only casemanagers can create patients"
participant(p): "nl.government.pgb.CaseManager"
operation: CREATE
resource(r): "org.hyperledger.composer.system.Identity"
transaction(tx):"org.hyperledger.composer.system.IssueIdentity"
condition: (tx.Participant.$type == "Patient")
action: ALLOW
}```
something like that should be it i guess?
something like this should be it i guess?
```rule CaseManagerCanOnlyIssueIdentitiesToPatients {
description: "Only casemanagers can create patients"
participant(p): "CaseManager"
operation: CREATE
resource(r): "org.hyperledger.composer.system.Identity"
transaction(tx):"org.hyperledger.composer.system.IssueIdentity"
condition: (tx.Participant.$type == "Patient")
action: ALLOW
}```
nearly - lowercase p in `tx.participant.$type`
but that should be it!
ah woops, thanks :)
I have added one acl rule to restrict alice do any transactions but that is not at all getting triggered. Could u please help on this
The acl rule is
rule RestrictTrader2 {
description: "Deny alice1 to access to all resources"
participant: "org.acme.biznet.Trader#alice"
operation: ALL
resource: "org.acme.biznet.*"
action: DENY
}
@sstone1 could u please help me on this
When I update my business network definition (by adding say a new query), I run `composer network update` I don't see it update in my rest server. Do I have to keep resetting my rest server to see the update?
@sstone1 hi, could I please get an opinion regarding the following error when tring to list a business network, using the network admin card
```
[exec] Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.myorg.com"
```
@sstone1 hi, could I please get an opinion regarding the following error when tring to list a business network, using the network admin card generated at network start time
```
[exec] Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.myorg.com"
```
@sstone1 hi, could I please get an opinion regarding the following error when tring to list a business network, using the network admin card generated at network start time. The network did start successfully and the chaincode seems operational
```
[exec] Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.myorg.com"
```
Hi, is there a way to get all "transactions" using the nodejs API. In fact, I want to show who has done what on the blockchain for a given period.
@JoshuaRippon - when the REST server starts it interrogates the Business Network and creates the API - if you make updates to the Business Network you do need to restart the REST server.
Hi, just like @Akshatha , I have a rule that is not triggering ```rule RiskCarrierHasReadAccessToHisContracts {
description: "Allow to read "
participant(p): "org.mynet.participants.RiskCarrier"
operation: READ
resource(r): "org.mynet.assets.InsuranceContract"
condition: ( r.riskCarriers && r.riskCarriers.indexOf(p.getIdentifier()) >-1 )
action: ALLOW
}``` . The participant has been added to the riskCarriers collection (by the admin), but when I read all InsuranceContract when connected as that RiskCarrier user, the returned list is empty ...
Any idea ?
@Akshatha - the ACLs are processed in the order they appear - so you have a rule above that allows access?
(btw in the description you have alice1, but the participant you list is alice)
@rthatcher cheers
Hi All! I'm trying to install a bna file but I encounter an error in *installing* the network, where I can find a log to understand the problem? Thanks for the help!
Does anyone know if there is a way of querying the list in an enum type? Queries only accept participants, assets and transactions....
@ascatox - are you working in Composer Playground or on the Command line? Are you following a Tutorial guide? What error are you seeing?
@ascatox - are you working in Composer Playground or on the Command line? Are you following a Tutorial guide? What error are you seeing? What version of Hyperledger Composer are you using?
@rthatcher hello, is it obvious what am I doing wrong when trying to list a network using the network admin card which my peer doesn't like?
```
2017-11-23T10:54:28.149625149Z [31m2017-11-23 10:54:28.149 UTC [eventhub_producer] Chat -> ERRO 1a11[0m Error handling message: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.myorg.com")]]
@rthatcher hello, is it obvious what am I doing wrong when trying to list a network using the network admin card which my peer doesn't like?
```
2017-11-23T10:54:28.149625149Z [31m2017-11-23 10:54:28.149 UTC [eventhub_producer] Chat -> ERRO 1a11[0m Error handling message: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.myorg.com")]]
@rthatcher I barely got it to work in version 0.15 then when I installed 0.15.1, won't work anymore
@rthatcher I barely got it to work in version 0.15; then when I installed 0.15.1, it won't work anymore
Has joined the channel.
@rthatcher funny that I can install the runtime and start the network using cards which I manually made but I can't connect to the network, using a card generated by the "network start"
[ ](https://chat.hyperledger.org/channel/composer?msg=tPWPuaNJY8vN6hNjm) @rthatcher This is the message received: `✖ Installing runtime for business network ascatox-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed``
@ascatox - are your Containers for your Development Fabric started? (`docker ps` will show if they are)
Otherwise are you using the default PeerAdmin card (from fabrictools) to install the runtime?
@ascatox - are your Containers for your Development Fabric started? (`docker ps` will show if they are)
Otherwise are you using the default PeerAdmin card (from fabric-tools) to install the runtime?
In ./startFabric.sh file (sample Dev Fabric), there is `docker exec` command for creating channel ( `docker exec peer0.org1.example.com peer channel create -o orderer.example.com:7050 -c composerchannel -f /etc/hyperledger/configtx/composer-channel.tx` )and for joining peer to channel. Is there is any link where I can refer arguments of these commands? or can you explain me these commands?
[ ](https://chat.hyperledger.org/channel/composer?msg=Xs8XNuvvL2fzKHCq8) @uber.twin its not entirely obvious no -, but question: are you using your own CA server (looking at the domain name for CA server). Its possible that there's 'more' in your `crypto-config` than meets the eye, as in legacy crypto stuff that's causing the issue? And hence the unknown authority for crypto materials created (potentially) by a previous CA server? You will know best - Otherwise - can I suggest (if its a BFYN network) to recreate your network having clear out your existing `crypto-config` directory and regenerate it. Are you doing a single-org or multi-org BFYN setup ?
@AkshayJindal - The Hyperledger Fabric documentation will cover these commands:
http://hyperledger-fabric.readthedocs.io/en/latest/blockchain.html
[ ](https://chat.hyperledger.org/channel/composer?msg=E5hXGmEDFK7Tz9hcJ) @rthatcher Thanks.. I found the description here - http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#create-join-channel :)
[ ](https://chat.hyperledger.org/channel/composer?msg=phQ7rR7vMwgkzPTHs) @jaguarg not seen your model - is `riskCarriers a relationship or an array of relationships? I don't think that will work - I can see it working for a string - as shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/permissions.acl#L38 but for your example, you would likely need to write a function (that you could call in your condition) to do what you want here
[ ](https://chat.hyperledger.org/channel/composer?msg=phQ7rR7vMwgkzPTHs) @jaguarg not seen your model - is `riskCarriers a relationship or an array of relationships? I don't think that will work - I can see it working for a string array - as shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/permissions.acl#L38 but for your example, you would likely need to write a function (that you could call in your condition) to do what you want here
Hello @mahoney1 riskCarriers is an array of relationships . I get your point. How can I write a function in the .acl file ?
[ ](https://chat.hyperledger.org/channel/composer?msg=qNj7XHxp8uiurNT3B) @mahoney1 it is a multi org setup. I regenerated the certificates and recreated the cards, no luck
looking at the logs, it seems there is no request reaching the CA server: the peer decides by itself the network list request is no good.
@here we've released #Hyperledger #Composer v0.15.2, our best release yet! Read all about it on GitHub! 🎉 https://github.com/hyperledger/composer/releases/tag/v0.15.2
@uber.twin right - so the question then is - can `ca.myorg.com` be resolved, hence the request not reaching the CA server ?
Screenshot from 2017-11-23 16-46-18.png
@Akshay - are you doing this tutorial ? https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html - would check your connection.json that you used to build your card - might not have the right connection info. Check the doclink I sent
@AkshayJindal - are you doing this tutorial ? https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html - would check your connection.json that you used to build your card - might not have the right connection info. Check the doclink I sent
[ ](https://chat.hyperledger.org/channel/composer?msg=tXKb2iBYR8y4YRkyJ) @mahoney1 It just resolved. Yes there was some issue in connection.json. Thank you.
[ ](https://chat.hyperledger.org/channel/composer?msg=gXCKGoQEwruEXrfSs) @jaguarg hi there - you can create a function which can (from there because you're calling the function in your condition) access the array and you can use the javacript `.some() method to check the elements in an array so something like `(carrier.array.some(function (item) { return item.getIdentifier() === carriertoCheck.getIdentifier(); }))`
[ ](https://chat.hyperledger.org/channel/composer?msg=gXCKGoQEwruEXrfSs) @jaguarg hi there - you can create a function which can (from there because you're calling the function in your condition) access the array and you can use the javacript `.some()` method to check the elements in an array so something like `(carrier.array.some(function (item) { return item.getIdentifier() === carriertoCheck.getIdentifier(); }))` . The `some() ` method executes the function once for each element present in the array: If it finds an array element where the function returns a true value, some() returns true (and does not check the remaining values)
@mahoney1 thank you for that. Let me try it
fyi @here - the Community call today (Thurs) is at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-23rd-November-2017 best regards Paul
[ ](https://chat.hyperledger.org/channel/composer?msg=osAWZwCoBxyPYma9E) not sure if it was a 0.15.1 issue, but after I installed the 0.15.2 it's alright
has anyone installed composer on the first-network sample?
[ ](https://chat.hyperledger.org/channel/composer?msg=hZoJRzeLXLZwcZeiu) @Buckley404 we do have a tutorial for `first-network` https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html - see the `fabric-samples` repo mentioned there (the current `fabric-samples` git repo won't work with this - there is Fabric samples issue for that FYI) - then once 'cloned' you have some othec steps to complete first ```cd fabric-samples/first-network
Next, download the platform-specific binaries / extract using
curl -sSL https://goo.gl/5ftp2f | bash
This will pull down the latest Fabric docker images including `javaenv`, `kafka` and `zookeeper`
Next, set your PATH variable to include the `bin` directory (where it sources the binaries to create the sample first network):
export PATH=./bin:$PATH
to check that the PATH is set correctly type:
`which cryptogen` ``` then you can run the `byfn.sh` script as shown in the doc link I sent above
[ ](https://chat.hyperledger.org/channel/composer?msg=hZoJRzeLXLZwcZeiu) @Buckley404 we do have a tutorial for `first-network` https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html- see the `fabric-samples` repo mentioned there (the current `fabric-samples` git repo won't work with this - there is Fabric samples issue for that FYI) - then once 'cloned' you have some othec steps to complete first ```cd fabric-samples/first-network
Next, download the platform-specific binaries / extract using
curl -sSL https://goo.gl/5ftp2f | bash
This will pull down the latest Fabric docker images including `javaenv`, `kafka` and `zookeeper`
Next, set your PATH variable to include the `bin` directory (where it sources the binaries to create the sample first network):
export PATH=./bin:$PATH
to check that the PATH is set correctly type:
`which cryptogen` ``` then you can run the `byfn.sh` script as shown in the doc link I sent above
[ ](https://chat.hyperledger.org/channel/composer?msg=hZoJRzeLXLZwcZeiu) @Buckley404 we do have a tutorial for `first-network` https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html- see the `fabric-samples` repo mentioned there (the current `fabric-samples` git repo won't work with this - there is Fabric samples issue for that FYI) - then once 'cloned' you have some othec steps to complete first ```cd fabric-samples/first-network
Next, download the platform-specific binaries / extract using
curl -sSL https://goo.gl/5ftp2f | bash
This will pull down the latest Fabric docker images including `javaenv`, `kafka` and `zookeeper`
Next, set your PATH variable to include the `bin` directory (where it sources the binaries to create the sample first network):
export PATH=./bin:$PATH
to check that the PATH is set correctly type:
`which cryptogen` ``` then you can run the `byfn.sh` script and subsequent steps as shown in the doc link I sent above
[ ](https://chat.hyperledger.org/channel/composer?msg=hZoJRzeLXLZwcZeiu) @Buckley404 we do have a tutorial for `first-network` https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html- see the `fabric-samples` repo mentioned there (the current `fabric-samples` git repo won't work with this - there is Fabric samples issue for that FYI) - then once 'cloned' you have some other steps to complete first eg. ```cd fabric-samples/first-network
Next, download the platform-specific binaries / extract using
curl -sSL https://goo.gl/5ftp2f | bash
Next, set your PATH variable to include the `bin` directory (where it sources the binaries to create the sample first network):
export PATH=./bin:$PATH
to check that the PATH is set correctly type:
`which cryptogen` ``` then you can run the `byfn.sh` script (among other things it will pull down the latest Fabric docker images including `javaenv`, `kafka` and `zookeeper`)and there are subsequent steps as shown in the doc link I sent above
@mahoney1 perfect, thank you
@mahoney1 ok so to get all this to work on windows I need to run an ubunut on vagrant and then install docker into that image
and then set up the test network in there
reminds me of a russian doll :)
ubuntu*
Has joined the channel.
@Buckley404 you're not the only one trying this byzantine setup on Windows: virtualbox for vagrant for docker for java in go lang among other things, the latest image v1.1.0 is choking on zookeeper for me, though. would be interested to find out how has yours come out.
@greg2git didn't have any issues starting up anything, but i didnt get a chance to test anything
does each peer node require composer installed to access the api?
@Buckley404 sorry, dont' want to give you specific answers if i haven't made something to work e2e first. all my fabric, composer, and kubernetes setups are still work in progress as i keep finding gotchas using any of those approaches. my gut feel says no, but it's only an assumption at this point.
@greg2git fair enough man
only thing i dont like about not having it hosted on each node would mean that there is a single point of failure in the network
like lets say for example there was one node that was responsible for hosting the api
if that goes down then nobody can access the api
Has joined the channel.
Has joined the channel.
@rthatcher Did you manage to display the correct count of chaincode (Composer runtime) in Explorer? I've been looking in the config files and documentation to check how to make Explorer display the correct count of chaincode instead of 0.[ ](https://chat.hyperledger.org/channel/composer?msg=acP3uLkfeHPcN4phg) @rthatcher
@rthatcher Did you manage to display the correct count of chaincode (Composer runtime) in Explorer? I've been looking in the config files and documentation to check how to make Explorer display the correct count of chaincode instead of 0.[ ](https://chat.hyperledger.org/channel/composer?msg=gfrH5kbzTW369SZvF) @rthatcher
Has joined the channel.
@rthatcher I don't have any rules before that deny rule. Thats is the 1st rule in .acl file.
alice is the participant in the network. typo in the description.
@jaguarg Have u found a solution for getting the permissions.acl triggered?
Managed to fix the problem by updating the network-config.json file with the correct parameters for the key and cert files. [ ](https://chat.hyperledger.org/channel/composer?msg=nY8hh7DBM7qumSQwh)
Hi. I have installed my runtime, but then I had to change my connection profile and create a new card. How can I now update/delete the installed runtime?
./stopfabric?
@hounded I am installing the runtime on my custom hyperledger network and would prefer updating/deleting runtime without restarting the whole network
Clipboard - November 24, 2017 12:35 PM
Hello! I follow guide about Enabling multiple user mode for the REST server and face the problem. I import card to REST and call another request . That's what I get:
@jasoncys - yes I did manage to get the correct count - which for me was 2.
I used the PeerAdmin certs from my environment provided by the 'fabric-tools' scripts. I did find one problem with specifying the certificates in the network-config.json file - I was seeing an error in the log file whereby the keystore and cert folders were being wrongly added to the current working directory. I ended up copying the keystore and signcerts folders into the blockchainexplorer folder and changing my network-config.json file to look like this:
```
"admin": {
"key": "keystore",
"cert": "signcerts"
```
Hi,
I have followed the steps menioned in the https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html with the composer V0.15.1, i faced the Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND.
As suggested by @sstone1 refreshed the environment and as suggested by @rthatcher taken the fabric-samples from the following link git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git. In this case, Successfully completed all steps mentioned in the multi org setup.
Today i updated environment to composer V0.15.2 and taken the fabric samples from git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git.
Now, again i am facing the same error Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND.
Tried ny deleting the .composer and executed all the instructions freshly. Still i am getting the same error while executing the step seventeen to start the business network.
Can any one please help on this.
@argman - how did you create the Business Network Card that you are importing? Is it the card that was generated when you used the command `composer network start` ?
Hi, if we have 2 channels, do we need to execute `composer runtime install` for each channel or only one channel ?
[ ](https://chat.hyperledger.org/channel/composer?msg=EqpCBy57t2Tu9j8cu) @Buckley404 each endorsing/validating peer node in your multi-org setup will need it yes. The JavaScript APIs are used to query, create, update and delete resources and submit transactions from client applications. TP functions that may update the state of resources stored on the Blockchain are dispatched to the Composer runtime engine that hosts the business network. The runtime also exposes operations for the deployed business network to client applications via APIs.
@kmohanar - I have found the same problem - I'm investigating and will get back to you later
[ ](https://chat.hyperledger.org/channel/composer?msg=JCfFBDPZBoAnJucBG) @erNail the runtime install is done on the peers. When it comes to `composer network start` that's where the channels come into play. So if you have 3 orgs and 1 peer each, you would do a `composer runtime install` once on each peer (in each org) - and only one needs to do a `composer network start` assuming those 3 peers are configured (in the connection information ie in the business network card) to 'communicate' on the same channel - that starts the business network on the channel
[ ](https://chat.hyperledger.org/channel/composer?msg=JCfFBDPZBoAnJucBG) @erNail the runtime install is done on the peers. When it comes to `composer network start` that's where the channels come into play. So if you have 3 orgs and 1 peer each, you would do a `composer runtime install` once on each peer (in each org) - and only one needs to do a `composer network start` assuming those 3 peers are configured (in the connection information ie in the business network card) to 'communicate' on the same channel - that starts the business network on the channel (ledger)
@mahoney1 So the `composer runtime install` doesn't care about the given channel ?
[ ](https://chat.hyperledger.org/channel/composer?msg=4Zdu9dSQGnNJM48fW) @erNail technically no, I mean it uses a business network card that will have a channel defined, but its more concerned with the peer(s) its to be installed upon in your connection profile info and of course (when doing the runtime install) it needs to match the business network name that will later be instantiated on the peer/channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=4Zdu9dSQGnNJM48fW) @erNail (slight correction). I mean the composer runtime install CLI command uses a business network card that will have a channel defined. So Technically runtime install is tied to a channel because you have to specify the business network you are going to start using that runtime albeit its more concerned with the peer(s) its to be installed upon as your connection profile info (in your card) - and of course (when doing the runtime install) it needs to match the business network name that will later be instantiated on the peer/channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=4Zdu9dSQGnNJM48fW) @erNail (slight correction). I mean the composer runtime install CLI command uses a business network card that will have a channel defined. So technically runtime install is tied to a channel because you have to specify the business network you are going to start using that runtime albeit its largely concerned with the peer(s) its to be installed upon as per your connection profile info (in your card) - and of course (when doing the runtime install) it needs to match the business network name that will later be instantiated on the peer/channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=egH6Zjz8fgq6vc78k) @mahoney1 Thank you, that clears up a lot
@mahoney1 All right, thank you :)
Hi All! I can't deploy by bna, always I receive the error *Error: Error trying to instantiate composer runtime. Error: Error: SERVICE_UNAVAILABLE*
My fabric network is correctly started as suggested in the official guide, `./startFabric.s` but always I receive that error trying to execute this command `composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile test-network@0.0.1.bna --file networkadmin.card``
@ascatox - have you just re-run the startFabric.sh script? I think that the script removes your containers, and starts new ones so if you have just run that script you will need to run the `composer runtime install` command before the network start.
When starting a network with `composer network start`, the peer docker container require the `CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=composer_default` to be `composer_default` am i right ?
[ ](https://chat.hyperledger.org/channel/composer?msg=qGAK8eNzXoDgMtuDw) Thanks for the update @rthatcher
@erNail it depends totally on you how you have defined your docker compose environment, if you don't explicitly manage the network that all your docker containers are going to connect to, then docker composer will create one for you. That name is based on the directory where your docker compose files are and it adds _default to the end of it. It's got nothing to do with composer and everything to do with docker compose and fabric
@erNail it depends totally on you how you have defined your docker compose environment, if you don't explicitly manage the network that all your docker containers are going to connect to, then docker compose will create one for you. That name is based on the directory where your docker compose files are and it adds _default to the end of it. It's got nothing to do with composer and everything to do with docker compose and fabric
@davidkel Okay, thanks. So, what can i do to fix the following error:
```Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Error starting container: API error (404): {"message":"No such network: innovation-net_default"}```
try changing that environment variable to the name of that network
@In my `docker-compose`, i have the attribute `CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=innovation-net_default`. The directory of the `docker-compose` is `innovation-net`.
What's the environment variable you are talking about ?
@davidkel In my `docker-compose`, i have the attribute `CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=innovation-net_default`. The directory of the `docker-compose` is `innovation-net`.
What's the environment variable you are talking about ?
The one you posted here [ ](https://chat.hyperledger.org/channel/composer?msg=xFBXZcPZFHGPMXzG6)
@davidkel In my `docker-compose`, i have the attribute `CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=innovation-net_default`.
You can confirm your docker networks by using the docker networks command
You can confirm your docker networks by using the docker network ls command
you can then inspect a specific network to see what containers are connected to that network, that should help you determine the problem and what to put into that environment variable
[ ](https://chat.hyperledger.org/channel/composer?msg=LCKNbSdrMGK8B2W5T) @kmohanar - interested to know if it stills fails ? The docs -> https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html specifically have a step for `./byfn.sh -m up -s couchdb -a` that's been updated - and you should get the correct CLI container pulled. Suggest to do a teardown (including removing any old business network containers) and restart the tutorial, it should work fine.
[ ](https://chat.hyperledger.org/channel/composer?msg=LCKNbSdrMGK8B2W5T) @kmohanar - interested to know if it works for you now? The docs -> https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html specifically have a step for `./byfn.sh -m up -s couchdb -a` that's been updated - and you should get the correct CLI container pulled. Suggest to do a teardown (including removing any old business network containers) and restart the tutorial, it should work fine.
[ ](https://chat.hyperledger.org/channel/composer?msg=LCKNbSdrMGK8B2W5T) @kmohanar - interested to know if it works for you now? The docs -> https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html specifically has a step for `./byfn.sh -m up -s couchdb -a` that's been updated - and you should get the correct CLI container pulled. Suggest to do a teardown (including removing any old business network containers) and restart the tutorial, it should work fine.
@ascatox - you didn't post it - but one assumes you did a `composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName test-network` (assuming that's the name of the network in your package.json for the bna you created) - this is required before `composer network start` - see example here https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
@davidkel Thank you, the network name was ìnnovationnet`, instead of `innovation-net`
Hi, I get the same error with composer network start command on MacOS
as posted in stack-overflow - https://stackoverflow.com/questions/47327228/hyperledger-composer-error-trying-to-instantiate-composer-runtime-error-error
Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND
Can you please help what could be cause....not much details on the logs.
Followed the instructions ( https://hyperledger.github.io/composer/tutorials/developer-tutorial.html ) to create the archive file and install runtime.
Runtime install was successfull on both orgs.
I got it...I somehow forgot to create the channel after bringing up my network :( ....now it works. I could instantiate and ping network.
Sooo, anyone here has knowledge about endorsement-policy files ? It seems like there is an error in mine, that's why i can't ping the network:
```
{
"identities": [
{
"role": {
"name": "member",
"mspId": "org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "org2MSP"
}
},
{
"role": {
"name": "member",
"mspId": "org3MSP"
}
},
{
"role": {
"name": "member",
"mspId": "org4MSP"
}
}
],
"policy": {
"4-of": [
{
"signed-by": 0
},
{
"signed-by": 1
},
{
"signed-by": 2
},
{
"signed-by": 3
}
]
}
}
```
@sstone1 Thanks again for the tutorial for the multi-org setup, it worked great with my own network. One question: Why are we creating a `byfn-network-org2.json` and `byfn-network-org2.card` ? They are never used, only the `org1` and òrg2-only`are used.
@sstone1 Thanks again for the tutorial for the multi-org setup, it worked great with my own network. One question: Why are we creating a `byfn-network-org2.json` and `byfn-network-org2.card` ? They are never used, only the `org1` and `org2-only`are used.
@sstone1 Also, i have an issue in the Playground: Im stuck at
```Please Wait: Connecting to Business Network maintenance-network
using connection profile innovation-net-org2-only-mychannel```
@sstone1 Also, i have an issue in the Playground: Im stuck at
```Please Wait: Connecting to Business Network maintenance-network
using connection profile innovation-net-org2-only-mychannel```
Pinging the network works perfectly.
@rthatcher thanks for the info. I also saw some errors in the log file even the chaincode count is displayed correctly (1 in my case). I''ll try copying the two folders to the blockchain-explorer directory. [ ](https://chat.hyperledger.org/channel/composer?msg=4xuZXnz5fsuSdjZC3) @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=taEkEY9avZHtTGWH4) @erNail its a connection.json but named "byfn-network-org1" and "byfn-network-org2" yes, but more than anything, for completeness / symmetry - having the same card equivalent configured in Org2,
Screenshot from 2017-11-24 15-36-18.png
Screenshot from 2017-11-24 15-36-45.png
How node-red will locate `connection Profile`? I created my `Peer Admin` by running ./createPeerAdminCard.sh. I got to know that this file create `connection.json` file and then delete it after putting card into wallet. Can you please tell me how can I give connection profile details to node-red?
[ ](https://chat.hyperledger.org/channel/composer?msg=Y8pqPQxn8spoEHHAT) @AkshayJindal looking at the errors, it sounds like your Node red is out of date. We now used business network cards rather than connection profiles, Would suggest to have latest Composer (0.15.2) if you don't already have and uninstall your old node-red composer and install latest using `npm install node-red-contrib-composer`
team do you know how to fix this error: Type ChangeAssetValue is not defined in namespace org.abalazo.red
Add the type org.abalazo.red.ChangeAssetValue ?? ;-)
I have followed rest server deploy guide . But after deploying in docker logs i could see logs saying please input the business network name.. how do I pass the business network name. Is any thing missing in documents
Screenshot from 2017-11-24 16-59-25.png
Screenshot from 2017-11-24 16-59-25.png
Screenshot from 2017-11-24 16-59-25.png
@jon_s - what doc are you following? and what version of Composer are you using?
0.15.12 composer
https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
@jon_s that guide doesn't work at the moment... working on fixing it at the moment
[ ](https://chat.hyperledger.org/channel/composer?msg=p7GmwjiBwkTpsJPvE) @mahoney1 Thank you :) I updated my node red composer and now i can create and retrieve data using composer nodes.
[ ](https://chat.hyperledger.org/channel/composer?msg=2siuAe4EDs6AJpXBJ) @dselman thanks, how do I add it?
Thanks thanks @sstone1
Much helpful response from you
Is there any quick fix available at the moment
@jon_s - you can run the REST server on the Command line on an Ubuntu machine or Mac rather than in a Container
Thanks. I am gonna be doing that now.:slight_smile:
[ ](https://chat.hyperledger.org/channel/composer?msg=Quxv5rEHS4EKCoRew) @Hefziben add it in your model file (.cto) - see doc here https://hyperledger.github.io/composer/reference/cto_language.html - and a sample network (trade-network) model file as an example https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/models/trading.cto - check out https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js to see how its referenced in your Transaction Processor function - hope this helps
[ ](https://chat.hyperledger.org/channel/composer?msg=Quxv5rEHS4EKCoRew) @Hefziben add it in your model file (.cto) - see doc here https://hyperledger.github.io/composer/reference/cto_language.html - and here's a sample network (trade-network) model file https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/models/trading.cto - check out https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js to see assets etc are referenced in your Transaction Processor function - hope this helps
[ ](https://chat.hyperledger.org/channel/composer?msg=Quxv5rEHS4EKCoRew) @Hefziben add it in your model file (.cto) using Composer Playground to create it or your favourite editor - see doc here https://hyperledger.github.io/composer/reference/cto_language.html - and here's a sample network (trade-network) model file https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/models/trading.cto - check out https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js to see assets etc are referenced in your Transaction Processor function - hope this helps
@mahoney1 Hello.. Is there any command to retrieve particpants using composer command line? do i need to use `composer identity list`?
[ ](https://chat.hyperledger.org/channel/composer?msg=jQ936GTDZKdoQNj3F) @AkshayJindal yes - https://hyperledger.github.io/composer/managing/identity-list.html - or can list participants in multiple participant registries for the business network - see here -> https://hyperledger.github.io/composer/reference/composer.network.list.html
Hi everyone, what's the meaning of recursion inside an ACL? For example: "resource:" org.chinachain.** ";
Means permission applicable for all assets and transactions under that namespace
okay,thanks
Can I use my own authentication instead of passport GitHub.
Hi, I have a quick question: are the three methods *addAll()*, *removeAll()*, *updateAll()* under *AssetRegistry* all atomic? If not, what is the recommended approach to implement atomicity for committing changes to multiple assets at the same time like the *batch* in *Sawtooth*? Thanks.
Just saw in *Transaction Processor Functions* that * Changes made by transactions are atomic, either the transaction is successful and all changes are applied, or the transaction fails and no changes are applied*. Does it mean that atomicity will be automatically taken care of if the addAll, removeAll or updateAll calls are implemented in a transaction function? Thanks. [ ](https://chat.hyperledger.org/channel/composer?msg=8uxTDNa4Xiien7bLQ)
[ ](https://chat.hyperledger.org/channel/composer?msg=jNSogutnjo64xMZej) @jon_s you can use any Passport strategy, although we haven't tested them all. OAuth2 (GitHub, Facebook, Twitter, Google etc) is pretty straightforward, I've also seen LDAP and SAML working.
@jasoncys all of the *All methods are atomic, either all the resources are added/updated/removed or none of them are. transaction processor functions are also atomic, no matter how many assets and participants you work with.
Has joined the channel.
@sstone1 Thanks for the clarification.
Has joined the channel.
What would be the proper way to do indexOf conditions in ACL rules?
I have an array with participants and try to evaluate this condition: condition: (cm.patients.indexOf(bu.keeper.getIdentifier()) > -1)
I have an array with participants and try to evaluate this condition: condition: ```(cm.patients.indexOf(bu.keeper.getIdentifier()) > -1)``` The array is filled with relation objects but for some reason i cannot get the condition rules with IndexOf to trigger. I'm guessing the identifier is not what is stored in the array at the moment of evaluation?
@sstone1 what to do if just want the rest API authentication and not show swagger ui on success full authentication in composer-rest-server
Has joined the channel.
Hi everyone, would it be possible to import external javascript/ my own library into the Transaction Processor Functions js file? would the syntax be like node's "require" keyword?
Has joined the channel.
Has joined the channel.
Hi I am trying to change businesscards via my angular website. I want to do the api call /wallet/admin/setDefault. But I can't seem to get the right call. when I do a htttp.post(system.wallet/admin/setDefault) I get an error 404, card has no method handling GET.... So my post is seen as a get. really weird.
@jon_s While it depends on your used passport, in my case jwt, you can just do the authentication GET request through an ajax call, get the cookie from the request and completely ignore the redirect. This way you can even authenticate someone to the server without even using a browser. For future requests you then just include the cookie in the headers. (for some reason accessToken http header or even url param is not working for me) If you do use a browser than ignoring the redirect is all you need to do. The browser will pick up the set cookie request for you and by using withCredentials = true all future composer rest server requests will automatically include the set cookie.
@jon_s While it depends on your used passport strategy, in my case jwt, you can just do the authentication GET request through an ajax call, get the cookie from the response and completely ignore the redirect. This way you can even authenticate someone to the server without even using a browser. For future requests you then just include the cookie in the headers. (for some reason accessToken http header or even url param is not working for me) If you do use a browser then ignoring the redirect is all you need to do. The browser will pick up the set cookie request for you and by using withCredentials = true all future composer rest server requests will automatically include the set cookie.
@jon_s While it depends on your used passport, in my case jwt, you can just do the authentication GET request through an ajax call, get the cookie from the response and completely ignore the redirect. This way you can even authenticate someone to the server without even using a browser. For future requests you then just include the cookie in the headers. (for some reason accessToken http header or even url param is not working for me) If you do use a browser than ignoring the redirect is all you need to do. The browser will pick up the set cookie request for you and by using withCredentials = true all future composer rest server requests will automatically include the set cookie.
@jon_s While it depends on your used passport, in my case jwt, you can just do the authentication GET request through an ajax call, get the cookie from the response and completely ignore the redirect. This way you can even authenticate someone to the server without even using a browser. For future requests you then just include the cookie in the headers. (for some reason accessToken http header or even url param is not working for me) If you do use a browser then ignoring the redirect is all you need to do. The browser will pick up the set cookie request for you and by using withCredentials = true all future composer rest server requests will automatically include the set cookie.
[ ](https://chat.hyperledger.org/channel/composer?msg=JQwpy3K3suYr6uwL6) @rthatcher Yes, with `composer network start`
Hi All,
I have a business Network for Birth Certificate created on Composer. I have a few queries:
1. Could you please suggest how can we auto trigger a transaction, lets say I want to issue a notification to Parent for vacination when the Child reaches age of 3 years.
Also, How can we
Hi All,
I have a business Network for Birth Certificate created on Composer. I have a few queries:
1. Could you please suggest how can we auto trigger a transaction, lets say I want to issue a notification to Parent for vacination when the Child reaches age of 3 years.
2. Also, How can we wait for the transaction to be added to the block after all the endorement/signatures have been met
3. Lastly, could you please explain a bit on the consensus algorithm in Composer, on how it works
Hey guys... Is it possible to get current participants public key in a transaction function???
Has joined the channel.
Hi team,
I am trying to read the values from the object I published while emitting the event from the composer, all the values are coming undefined? CAn anyone help please.
Hi I am new to composer, wanna go through some examples of composer's potential. Any suggestions ?
Hi! When will composer be able to run on HF v1.1? When the alpha gets released?
Has joined the channel.
composer is not supported in Ubuntu zesty?
[ ](https://chat.hyperledger.org/channel/composer?msg=3KD9u2ZDr9WR9SZLX) @mahoney1 I know it's a connection.json, i was just confused why some of the created jsons are not used in the tutorial.
Has anyone managed to use the Playground after the multi-org setup ? I'm stuck at `Please Wait: Connecting to Business Network maintenance-network`
@Alvin1122 composer should run on ubuntu zesty it's just that we haven't tested the prereqs-ubuntu.sh script on that version yet so it won't run on that version. You can try to modify the script to allow zesty or install the pre-reqs manually.
@SimonOberzan We hope to have a version of composer soon that will run against the 1.1 tech preview, this version of composer will use the new node.js chaincode container support
@UtkarshSingh visit the composer documentation website https://hyperledger.github.io/composer/ for tutorials and indepth information about hyperledger composer
@argman - when you create the Network Admin card with the `composer network start` command the card is created with the one-time secret (adminpw), and the first time you use it Certificates are downloaded and the secret is no longer valid. So I'm guessing that the CLI has downloaded the certificates and you are importing the old card file with the secret into the REST server wallet - and it doesn't work.
Back on the command line export the card WITH the certificates with a command like this:
`composer card export --file net-adm-cert.card --name admin@tutorial-network` and then use then new card to import into the REST server Wallet.
(You can compare the sizes of the new and old .card files and see if the new one is larger now that it contains the certificates.)
[ ](https://chat.hyperledger.org/channel/composer?msg=WwA5PpexSfKe2Q29a) @nickyromeijn you can create a function (calling the function in your condition) which can access the array using the javacript `.some()` method to check the elements in the array so something like - not tried it fyi - `(cm.patients.some(function (item) { return item.getIdentifier() === bu.keeper.getIdentifier(); }))` . The `some() ` method executes the function once for each element present in the array: If it finds an array element that matches the function returns a true value, ie some() returns true (and does not check the remaining values in the array)
I have install business network and started the business network
using below code
composer runtime install -c PeerAdmin@hlfv1 -n carauction-network
composer network start -c PeerAdmin@hlfv1 -a carauction-network.bna -A admin -S adminpw
composer card import -f admin@carauction-network.card
composer-rest-server -c admin@carauction-network -n never -a true -m true -w true
but when i start this rest server. at default no business cards available. when i try to issue a business card its not allowing me to do so.
in composer identity issue -c 'admin@carauction-network' -u john -a "org.acme.vehicle.auction.Auctioneer#auctioner@domain.com” command
i am getting . below error
✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
and same in rest server. ( i was able to create paricipant without multi user mode enabled)
My query is how am i suppose to issue identity when i am not allowed to issue any identity
[ ](https://chat.hyperledger.org/channel/composer?msg=tNnmAnmmDhE5kfLiu) @summalho see here ->https://hyperledger.github.io/composer/applications/subscribing-to-events.html and https://hyperledger.github.io/composer/business-network/publishing-events.html
@jon_s - this doc explains the process of adding a Business Network Card to your Wallet on the REST server - at this point you can interact with the REST functions
https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
See my response to argman above about making sure you are importing a Card with certificates.
i dont have any other cards apart from admin and peeradmin
which doesnt have access to issue identity
@jon_s - so use the admin (Network Admin) to issue another card, then switch to using that. Or issue an Identity from the command line.
composer identity issue -c 'admin@carauction-network' -u john -a "org.acme.vehicle.auction.Auctioneer#auctioner@domain.com"
Issue identity and create Network Card for: john
✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
?? I am stuck here. I dont know what went wrong
please help me out :(
@jon_s - I'm just repeating your steps with the Car Auction network ...
[ ](https://chat.hyperledger.org/channel/composer?msg=sqhpJ8Zf4DRN3uvsZ) @rthatcher Thank you very much! It's work :)
[ ](https://chat.hyperledger.org/channel/composer?msg=3RtSmkmSnx8tT2DmC) @prmdmshra 1) use a combination of queries (such as the example here to trigger an action) -> and you could use node-red to trigger an email via SMTP etc. 2) once you have your transactionId that has been returned following the submission of a transaction such as in your client app -> https://hyperledger.github.io/composer/applications/node.html or events you subscribe to.to confirm its been committed.3) Composer does not deal with Consensus per se - it relies on the Fabric infrastructure. Fabric is built on/uses a pluggable architecture such that developers can configure their deployment with the consensus module that best suits their needs. Refer you to the Fabric page -> http://fabrictestdocs.readthedocs.io/en/latest/FAQ/consensus_FAQ.html?highlight=consensus
[ ](https://chat.hyperledger.org/channel/composer?msg=3RtSmkmSnx8tT2DmC) @prmdmshra 1) use a combination of queries (such as the example here to trigger an action) -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js in particular the query trigger RemoveHighQuantityCommodities and you could use node-red to trigger an email via SMTP etc. 2) once you have your transactionId that has been returned following the submission of a transaction such as in your client app -> https://hyperledger.github.io/composer/applications/node.html or events you subscribe to.to confirm its been committed.3) Composer does not deal with Consensus per se - it relies on the Fabric infrastructure. Fabric is built on/uses a pluggable architecture such that developers can configure their deployment with the consensus module that best suits their needs. Refer you to the Fabric page -> http://fabrictestdocs.readthedocs.io/en/latest/FAQ/consensus_FAQ.html?highlight=consensus
[ ](https://chat.hyperledger.org/channel/composer?msg=3RtSmkmSnx8tT2DmC) @prmdmshra 1) use a combination of queries (such as the example here to trigger an action) -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js in particular the query trigger RemoveHighQuantityCommodities and you could use node-red to trigger an email via SMTP etc. 2) once you have your transactionId that has been returned following the submission of a transaction such as in your client app -> https://hyperledger.github.io/composer/applications/node.html or events you subscribe toconfirm its been committed.3) Composer uses the consensus defined at the Fabric level -ie it simply relies on the Fabric infrastructure for that. Fabric is built on/uses a pluggable architecture such that developers can configure their deployment with the consensus module that best suits their needs. Refer you to the Fabric page -> http://fabrictestdocs.readthedocs.io/en/latest/FAQ/consensus_FAQ.html?highlight=consensus
@jon_s - I have just setup a carauction network without problems (I'm using Hyperledger Composer v0.15.2 and I exported a copy of the carauction-network from the latest playground on bluemix to get my .BNA file)
I would suggest to basic command line testing to start with to see if your admin card does have access to the network OK:
`composer card list`
`composer card list --name admin@carauction-network` - you should see 'credentials set' at the bottom of the output for this command
`composer network list -c admin@carauction-network` - you should see the Participant(s) you added in this list
If those commands work OK you can try:
` composer participant add -c admin@carauction-network -d '{"$class":"org.acme.vehicle.auction.Auctioneer","email":"mae@biznet.org","firstName":"Mae","lastName":"Smith"}' `
`composer identity issue -c admin@carauction-network -u mae -a "org.acme.vehicle.auction.Auctioneer#mae@biznet.org" `
thnka s will try
thanks its working
with the sample network bna file
but not with my bna
will check that
thnanks every one :|
:)
@aneb can you please share the code for jwt and ajax based auth for composer rest server
@jon_s
My apologies for just quick copy paste as I am about to go home now so I dont have time tonight to clean up the code or make a working repo. But you should be able to figure things out from the code.
`My provider ENV setting`
```
export COMPOSER_PROVIDERS='{
"jwt": {
"provider": "jwt",
"module": "'"$PWD"'/passport/custom-jwt.js",
"secretOrKey": "--your secret--",
"authScheme": "saml",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
`The file custom-jwt file contents`
```
'use strict';
const passportJwt = require('passport-jwt');
const util = require('util');
function CustomJwtStrategy(options, verify) {
options.jwtFromRequest = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken();
passportJwt.Strategy.call(this, options, verify);
}
util.inherits(CustomJwtStrategy, passportJwt.Strategy);
module.exports = {
Strategy: CustomJwtStrategy
};
`Getting the cookie from NodeJs, here I generated the server because it is my passport server but of course you need to get a valid token from somewhere`
private getComposerAccessTokenForUser(email: string): Promise
@jon_s
My apologies for just quick copy paste as I am about to go home now so I dont have time tonight to clean up the code or make a working repo. But you should be able to figure things out from the code.
`My provider ENV setting`
```
export COMPOSER_PROVIDERS='{
"jwt": {
"provider": "jwt",
"module": "'"$PWD"'/passport/custom-jwt.js",
"secretOrKey": "--your secret--",
"authScheme": "saml",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
```
`The file custom-jwt file contents`
```
'use strict';
const passportJwt = require('passport-jwt');
const util = require('util');
function CustomJwtStrategy(options, verify) {
options.jwtFromRequest = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken();
passportJwt.Strategy.call(this, options, verify);
}
util.inherits(CustomJwtStrategy, passportJwt.Strategy);
module.exports = {
Strategy: CustomJwtStrategy
};
```
`Getting the cookie from NodeJs, here I generated the token because it is my passport server but of course you need to get a valid token from somewhere`
```
private getComposerAccessTokenForUser(email: string): Promise
@jon_s
My apologies for just quick copy paste as I am about to go home now so I dont have time tonight to clean up the code or make a working repo. But you should be able to figure things out from the code.
`My provider ENV setting`
```
export COMPOSER_PROVIDERS='{
"jwt": {
"provider": "jwt",
"module": "'"$PWD"'/passport/custom-jwt.js",
"secretOrKey": "--your secret--",
"authScheme": "saml",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
```
`The file custom-jwt file contents`
```
'use strict';
const passportJwt = require('passport-jwt');
const util = require('util');
function CustomJwtStrategy(options, verify) {
options.jwtFromRequest = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken();
passportJwt.Strategy.call(this, options, verify);
}
util.inherits(CustomJwtStrategy, passportJwt.Strategy);
module.exports = {
Strategy: CustomJwtStrategy
};
```
`Getting the cookie from NodeJs, here I generated the server because it is my passport server but of course you need to get a valid token from somewhere`
```
private getComposerAccessTokenForUser(email: string): Promise
@jon_s
My apologies for just quick copy paste as I am about to go home now so I dont have time tonight to clean up the code or make a working repo. But you should be able to figure things out from the code.
`My provider ENV setting`
```
export COMPOSER_PROVIDERS='{
"jwt": {
"provider": "jwt",
"module": "'"$PWD"'/passport/custom-jwt.js",
"secretOrKey": "--your secret--",
"authScheme": "saml",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
```
`The file custom-jwt file contents`
```
'use strict';
const passportJwt = require('passport-jwt');
const util = require('util');
function CustomJwtStrategy(options, verify) {
options.jwtFromRequest = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken();
passportJwt.Strategy.call(this, options, verify);
}
util.inherits(CustomJwtStrategy, passportJwt.Strategy);
module.exports = {
Strategy: CustomJwtStrategy
};
```
`Getting the cookie from NodeJs, here I generated the token because it is my passport server but of course you need to get a valid token from somewhere`
```
private getComposerAccessTokenForUser(email: string): Promise
Has joined the channel.
Thanks alot @mahoney1. I followed the latest steps mentioned in the link. Now, the composer-rest-server is up and running in port 3000 using alice@tutorial-network card.
Starting the composer-rest-server using either alice or bob card is similar right(interms of bringing all the peers up)?
Started testing the environment by posting a transaction between the organization. Can you please share if there is any sample case to test.
Please correct me if i am wrong.
[ ](https://chat.hyperledger.org/channel/composer?msg=r4wJLavXAbuGwoRp8) Thanks alot @mahoney1. I followed the latest steps mentioned in the link. Now, the composer-rest-server is up and running in port 3000 using alice@tutorial-network card.
should i run anything else apart from this?
Starting the server using either alice or bob card is similar right(interms of bringing all the peers up)?
Started testing the environment by posting a transaction between the organization. Can you please share if there is any sample case to test.
[ ](https://chat.hyperledger.org/channel/composer?msg=r4wJLavXAbuGwoRp8) Thanks alot @mahoney1. I followed the latest steps mentioned in the link. Now, the composer-rest-server is up and running in port 3000 using alice@tutorial-network card.
should i run anything else apart from this?
Starting the server using either alice or bob card is similar right(interms of bringing all the peers up)?
Started testing the environment by posting a transaction between the organization. Can you please share if there is any sample case to test. Please correct me if i am wrong.
Hi guys! Quick question when I use the rest api to GET an asset, is there a way to get the time that asset was created?
There should be a historian record / transaction when you created that asset. So you could find the record (and timestamp) for that asset
Got it. So the Id of the asset creation should match up with the transaction id?
There'll be a transaction 'AddAsset' which will contain a resource (the asset created)
So you'd need to check the AddAsset records for a resource where the asset identifier is equal to whatever you're looking for. Then you know to get the timestamp of that transaction
@kmohanar that's the end of that tutorial - you can interact with your REST server with user alice - if you wish to extend your knowledge you could spin up REST Multi-user mode to try out different identities https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
Guys, need help
How to connect to db2 from composer?
For some reason, the resources section in the historian that shows the details of the transaction is not showing when I ping the rest api, however it does show when I make a transaction using the playground..... Anyone have a reason why?
[ ](https://chat.hyperledger.org/channel/composer?msg=zPqZo5Dw9pjAPJ9Rf) @mostafa.elsayyad Use Composer Node-red nodes https://hyperledger.github.io/composer/integrating/node-red.html download here -> https://www.npmjs.com/package/node-red-contrib-composer and - If to take JSON records out, to get into DB2 - example here -> https://www.ibm.com/support/knowledgecenter/en/SSEPEK_11.0.0/json/src/tpc/db2z_insertjsondata.html
Maybe your ACL rules aren't allowing you to view system registries
@mahoney1
How composer node-red nodes related to db2?
My question was how to retrieve data from db2 database and insert it as a transaction in the composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=m2tnfnvEj3C2Wg49Y) @mostafa.elsayyad Its up to you how you retrieve data from DB2 - a suggest is Node RED (if it helps there is a module called https://www.npmjs.com/package/node-red-contrib-db2). As for Composer, one of the Composer nodes is ‘Hyperledger-Composer-Out’, which allows you to create or update assets or participants and submit transactions. Otherwise, you can use the CLI too https://hyperledger.github.io/composer/reference/composer.transaction.submit.html or use the JS APIs, however you select your data from DB2
[ ](https://chat.hyperledger.org/channel/composer?msg=m2tnfnvEj3C2Wg49Y) @mostafa.elsayyad Its up to you how you retrieve data from DB2 - a suggestion is Node RED (if it helps there is a module called https://www.npmjs.com/package/node-red-contrib-db2). As for Composer, one of the Composer nodes is ‘Hyperledger-Composer-Out’, which allows you to create or update assets or participants and submit transactions. Otherwise, you can use the CLI too https://hyperledger.github.io/composer/reference/composer.transaction.submit.html or use the JS APIs, however you select your data from DB2
@mostafa.elsayyad There are many ways you could do this, but that depends complete on your setup.
- You could use node-red as mentioned, to link two systems together: one that provides the db2 data and other the composer node-red nodes.
- You could do all manually with composer client and just get your db2 data first and then execute your transactions
- you could do an external post or get from within your transaction to get the db2 data you want.
The thing is, your db2 data will always have to come from an external system. Of course maybe I misunderstand the question but to me it just seems like a "how do I get external data into composer" kind of problem which in a way is not really composer related as it is just "input".
@mostafa.elsayyad There are many ways you could do this, but that depends completely on your setup.
- You could use node-red as mentioned, to link two systems together: one that provides the db2 data and other the composer node-red nodes.
- You could do all manually with composer client and just get your db2 data first and then execute your transactions
- you could do an external post or get from within your transaction to get the db2 data you want.
The thing is, your db2 data will always have to come from an external system. Of course maybe I misunderstand the question but to me it just seems like a "how do I get external data into composer" kind of problem which in a way is not really composer related as it is just "input".
I have a question regarding the node-red-composer-in node. Just starting with node-red and I am trying to figure out how one would make the differentiation between event types and keep a nice visual flow. For example event type A --> send email, event type B --> access external POST etc. Is it currently an all or nothing implementation, when it comes to even types?
I have a question regarding the node-red-composer-in node. Just starting with node-red and I am trying to figure out how one would make the differentiation between event types and keep a nice visual flow. For example event type A --> send email, event type B --> access external POST etc. Is it currently an all or nothing implementation, when it comes to event types?
@aneb
thanks.
Is there a tutorial for each/any method or if possible could you explain here an example?
[ ](https://chat.hyperledger.org/channel/composer?msg=HDjtZBNk5YxkJinye) @aneb you can model different event types but you would need to add a function node to your node-red flow to parse 'which event' was received as I understand it today. This would be good to have though, so feel free to raise an issue request to know which event and add this functionality or ping me to add if you wish.
in issue identity via rest server how can i use options property.
how to issue an id that can issue id
thanks
52610XIpOjmYbKnTVjGtmexOgKrrwKc4eOapd7Sk9WEBvDhWnxnupxZaRoVA6lRc i am receiving these kind of tokens in composer-rest-server and 45f0fe736b62125d157b58dac6b7eba4a3d3470c kind of tokens from my node app for as github oauth tokens
and i am not able to use the tokens which i got from node app on composer-rest-server
Hey guys, I am trying to return a query in the logic.js script, however whenever I go to submit a transaction that involves the query, I get the error `Error: Required parameter asset has not been specified`. I think this is because my query requires that I put in an asset, however I am not sure of the syntax of how to pass in this variable in javascript. The documentation on this is quite limited. Any help would be greatly appreciated!!
Has joined the channel.
hi I am facing hyperledger error: no valid responses from any peers. Connect Failed? How to resolve this ??
while trying to runtime install PeerAdmin@card_name
Has joined the channel.
this is when following the tutorial steps from https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
hey good morning can u help me in starting my hyperledger with REST on my local machine? I am following this tutorial : https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
any idea how to troubleshoot this ?
@jon_s - on the REST server use the POST on /system/identities/issue with something similar to this:
``` {
"participant": "org.acme.biznet.Trader#t03",
"userID": "Mary",
"options": {"issuer" : true}
} ```
@rthatcher thank you very much
Have you faced this token issue with passport github
In the updated sample of a unit test for a business network, the identity used to connect with is a network admin user 'admin'.
In my unit test I try to create a new identity for my test user, then construct and import its card, and then connect to the business network with this card. As follows:
```
```
In the updated sample of a unit test for a business network, the identity used to connect with is a network admin user 'admin'.
In my unit test I try to create a new identity for my test user, then construct and import its card, and then connect to the business network with this card. As follows:
```
return businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user);
....
var supplierCard = new IdCard({ version: 1,
userName: userData.supplier.user,
enrollmentSecret: identitysupplier.userSecret,
businessNetwork: businessNetworkDefinition.getName(),
roles: []}, connectionProfile);
supplierCard.setCredentials(credentials);
// var payerCard = new IdCard({
// version: 1,
// userName: userData.payer.user,
// roles: []}, connectionProfile);
// payerCard.setCredentials(credentials);
// var analyticsCard = new IdCard({
// version: 1,
// userName: userData.analytics.user,
// roles: []}, connectionProfile);
// analyticsCard.setCredentials(credentials);
supplierCardName = `${userData.supplier.user}@${businessNetworkDefinition.getName()}`;
//TODO: error thrown here that the identity already exists - so try to just create card name and assume that the card is in the wallet
return adminConnection.importCard(supplierCardName, supplierCard);
// adminConnection.importCard(userData.payer.user + businessNetworkDefinition.getName(), payerCard),
// adminConnection.importCard(userData.analytics.user + businessNetworkDefinition.getName(), analyticsCard)
// ]);
})
.then(() => {
businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore });
return businessNetworkConnection.connect(adminCardName);
})
```
In the updated sample of a unit test for a business network (https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js), the identity used to connect with is a network admin user 'admin'.
In my unit test I try to create a new identity for my test user, then construct and import its card, and then connect to the business network with this card. As follows:
```
businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user);
....
var userCard = new IdCard({...});
userCard.setCredentials(credentials);
...
adminConnection.importCard(userCardName, userCard);
....
businessNetworkConnection.connect(userCardName))
...
```
However, importCard() throws an error that the identity already exists. Seems like embeddedConnectionProfile attempts to add the identity to the identities registry as part of importCard call, but it's already been added there by issueIdentity?
What am I doing wrong here?
Also, would be nice to have the unit test sample updated to include this scenario.
After updating the composer bna the issued identies no more works.. I have to issue again.. @kofman.alex@gmail.com means the Id once issued can't be issued again with same name.
Has joined the channel.
@mahoney1 Thank you for the feedback. I tried it with the function nodes and it is working fine. After considering it more I actually like it this way. Adding a node for every even type would probably slow things down anyway as every node acts like a listener I guess.
```
```
@mahoney1 Thank you for the feedback. I tried it with the function nodes and it is working fine. After considering it more I actually like it this way. Adding a node for every even type would probably slow things down anyway as every node acts like a listener I guess.
```
if (msg.$class === 'org.xxx.xxx.userCreatedEvent') {
msg.payload = 'user created';
return msg;
}
return null;
```
@mahoney1 Thank you for the feedback. I tried it with the function nodes and it is working fine. After considering it more I actually like it this way. Adding a node for every even type would probably slow things down anyway as every node acts like a listener I guess.
easy enough to use
```
if (msg.$class === 'org.xxx.xxx.userCreatedEvent') {
msg.payload = 'user created';
return msg;
}
return null;
```
@mahoney1 Thank you for the feedback. I tried it with the function nodes and it is working fine. After considering it more I actually like it this way. Adding a node for every type would probably slow things down anyway as every node acts like a listener I guess.
easy enough to use
```
if (msg.$class === 'org.xxx.xxx.userCreatedEvent') {
msg.payload = 'user created';
return msg;
}
return null;
```
Hi, I was wondering if there is any way to restrict which clients can subscribe to certain events, or if there were any plans to provide this type of a feature. Thanks!
Has joined the channel.
Hi guys, I am new to hyper ledger composer and fabric. I tried the tutorials available online. I created the bna file and create the participants using the composer rest server API in my localhost. Now, I am planning to develop a client side application. This client side application needs to be accessed by the participants created already using the rest api server by the admin user.I am wondering , How should I manage the login (authentication) of the participants which are already created by the admin of the business network. Can someone please help me!!
[ ](https://chat.hyperledger.org/channel/composer?msg=mZmjL53uq3JXankX4) @mahoney1
Thanks for your suggestions. I am implementing the PoC accordingly. Also, could you please advice whther the PoCs build on Composer .11 will run if I upgrade all the Composer components to 0.15.1
Everybody, I set up the environment based on the tutorial, and there's a mistake in the script.https://hyperledger.github.io/composer/installing/development-tools.html
Everybody, I set up the environment based on the tutorial, and there's a mistake in the script.
https://hyperledger.github.io/composer/installing/development-tools.html
fabric@ubuntu:~/fabric-tools$ ./startFabric.sh
Development only script for Hyperledger Fabric control
Running 'startFabric.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
#Detect architecture
ARCH=`uname -m`
uname -m
# Grab the current directory
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd
dirname "${BASH_SOURCE[0]}"
#
ARCH=$ARCH docker-compose -f "${DIR}"/composer/docker-compose.yml down
No such command: down
Commands:
build Build or rebuild services
help Get help on a command
kill Kill containers
logs View output from containers
port Print the public port for a port binding
ps List containers
pull Pulls service images
restart Restart services
rm Remove stopped containers
run Run a one-off command
scale Set number of containers for a service
start Start services
stop Stop services
up Create and start containers
migrate-to-labels Recreate containers to add labels
Has joined the channel.
one question how to do post request
how to post the vehicle refrence
in body
{"code":0,"message":"Identity 'mae' is already registered"} when trying to issue id from composer cli and The current identity has not been registered: mae is not registered from composer-rest-server
Hi, I am trying to connect multiple organizations, following https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html. Getting error while ping to the bob@tutorial-network.
Clipboard - November 28, 2017 12:53 PM
Please anyone can look at that error, help me to solve this.
Has joined the channel.
yogesh@ubuntu:~/fabric-samples/first-network$ composer identity request -c PeerAdmin@byfn-network-org1-only -u admin -s adminpw -d alice
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
Command failed
i am trying to Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations) i got above error
yogesh@ubuntu:~/fabric-samples/first-network$ composer identity request -c PeerAdmin@byfn-network-org1-only -u admin -s adminpw -d alice
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
Command failed
all steps above this got passed
trying Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations) got above error in step 15
i have issued so many identies and its no more working with same card
please :(
I am following this tutorial https://hyperledger.github.io/composer/tutorials/developer-tutorial.html ,
Everything is working fine till step Four 4., it fails while pining network.
I get Authorization failure error
composer network ping --card invoiceadmin@invoice-finance-network
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
How do I resolve this error?
@UdayCTO - how did you create your card invoiceadmin@invoice-finance-network ? My guess is that when you used the `composer network start` command you specified invoiceadmin instead of admin and adminpw. For the tutorial we use the user admin (and secret adminpw) that have already been added to the CA as part of the setup of 'fabric-tools' for the development environment. I suggest you start again with a new Fabric by running the fabric-tools start script and then restart the tutorial and use the admin ID we suggest. (Sorry if I have guess the wrong thing!)
@UdayCTO - how did you create your card invoiceadmin@invoice-finance-network ? My guess is that when you used the `composer network start` command you specified invoiceadmin instead of admin and adminpw. For the tutorial we use the user admin (and secret adminpw) that have already been added to the CA as part of the setup of 'fabric-tools' for the development environment. I suggest you start again with a new Fabric by running the fabric-tools start script and then restart the tutorial and use the admin ID we suggest. (Sorry if I have guessed the wrong thing!)
yogesh@ubuntu:~/fabric-samples/first-network$ composer identity request -c PeerAdmin@byfn-network-org1-only -u admin -s adminpw -d alice
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
Command failed
got error in step 15. all steps above this got passed
trying Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations) got above error in step 15
any idea for quick resolution?
followed steps from here https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
@yogesh.fulsunge - It looks like you can't connect to the CA container for Org1 - are the containers all running OK? Have you restarted you dev server between the steps? Try `docker ps` to see if all the containers are running.
@rthatcher below is the output of docker ps can you let me know what is not running?
yogesh@ubuntu:~/fabric-samples/first-network$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a39f79bd7c1f hyperledger/fabric-tools "/bin/bash -c './s..." 2 hours ago Up 2 hours cli
999a1a8d20e3 hyperledger/fabric-peer "peer node start" 2 hours ago Up 2 hours 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
901c58cbd494 hyperledger/fabric-peer "peer node start" 2 hours ago Up 2 hours 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
66cd87faa698 hyperledger/fabric-peer "peer node start" 2 hours ago Up 2 hours 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
dca727385f79 hyperledger/fabric-peer "peer node start" 2 hours ago Up 2 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
9ddadc63504e hyperledger/fabric-couchdb "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
be6fe0d2936a hyperledger/fabric-orderer "orderer" 2 hours ago Up 2 hours 0.0.0.0:7050->7050/tcp orderer.example.com
b5c5bdedb58f hyperledger/fabric-couchdb "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
32ab5fd53379 hyperledger/fabric-couchdb "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
78c376e15e69 hyperledger/fabric-couchdb "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
can anyone let me know about the above problem solution??
@jon_s - it looks like you already issued the identity from the command line or the Playground so you will need to Import that identity into a Wallet on the REST server.
@rthatcher i have not restarted in between step 1 to 14 but only in the beggining
configuration in the connection-org1.json and connection-org1-only.json file is :
"ca": {
"url": "https://localhost:7054",
"name": "ca-org1",
"cert": "/home/yogesh/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt",
"hostnameOverride": "ca.org1.example.com"
},
yogesh@ubuntu:~/fabric-samples/first-network$ composer identity request -c PeerAdmin@byfn-network-org1-only -u admin -s adminpw -d alice
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
Command failed
yogesh@ubuntu:~/fabric-samples/first-network$ composer identity request -c PeerAdmin@byfn-network-org2-only -u admin -s adminpw -d bobError: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:8054]
Command failed
the error is for ca block
@yogesh.fulsunge - looking at your list of Containers, I can't see either of the CA containers (for org1 or org2)
Try `docker ps -a` (to show all containers whether running or not) and see if they are listed.
If they are listed you could try and start them with `docker start NAME` specifying the Name of the CA container. (I don't have an environment running at the moment and can't remember the exact name)
let me check hold on
initial three containers are seen as exited
yogesh@ubuntu:~/fabric-samples/first-network$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
302fb838b7ca dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab "chaincode -peer.a..." 2 hours ago Exited (0) 29 minutes ago dev-peer1.org2.example.com-mycc-1.0
4e139cb39d4f dev-peer0.org1.example.com-mycc-1.0-384f11f484b9302df90b453200cfb25174305fce8f53f4e94d45ee3b6cab0ce9 "chaincode -peer.a..." 2 hours ago Exited (0) 29 minutes ago dev-peer0.org1.example.com-mycc-1.0
775dc2372609 dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b "chaincode -peer.a..." 2 hours ago Exited (0) 30 minutes ago dev-peer0.org2.example.com-mycc-1.0
a39f79bd7c1f hyperledger/fabric-tools "/bin/bash -c './s..." 2 hours ago Up 2 hours cli
999a1a8d20e3 hyperledger/fabric-peer "peer node start" 2 hours ago Up 2 hours 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
901c58cbd494 hyperledger/fabric-peer "peer node start" 2 hours ago Up 2 hours 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
66cd87faa698 hyperledger/fabric-peer "peer node start" 2 hours ago Up 2 hours 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
dca727385f79 hyperledger/fabric-peer "peer node start" 2 hours ago Up 2 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
9ddadc63504e hyperledger/fabric-couchdb "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
be6fe0d2936a hyperledger/fabric-orderer "orderer" 2 hours ago Up 2 hours 0.0.0.0:7050->7050/tcp orderer.example.com
b5c5bdedb58f hyperledger/fabric-couchdb "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
32ab5fd53379 hyperledger/fabric-couchdb "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
78c376e15e69 hyperledger/fabric-couchdb "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
correct me if i am wrong i tried starting container but it still shows exited
yogesh@ubuntu:~/fabric-samples/first-network$ docker start dev-peer1.org2.example.com-mycc-1.0
dev-peer1.org2.example.com-mycc-1.0
yogesh@ubuntu:~/fabric-samples/first-network$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
302fb838b7ca dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab "chaincode -peer.a..." 2 hours ago Exited (0) 1 second ago dev-peer1.org2.example.com-mycc-1.0
@rthatcher three of the containers geting exited even after i tried starting using docker start
@sravs - you are showing an error for Bob from Org2 - can Alice from Org1 ping the network?
@yogesh.fulsunge - the Important Containers you are trying to connect to are the CA (Certificate authority) called something like ca.org1.example.com and ca.org2...
These would be listening on ports 7054 and 8054 respectively - but they don't appear on your list. Did you have errors when using the byfn.sh script? Do you have enough resources on your machine to run all the containers? (diskspace, memory?)
i have 2 GB RAM and 60 GB HDD isn't it sufficient?
it says no such container ca.org1.example.com
@rthatcher @mahoney1 i don;t see the ca container in docker container list command
yogesh@ubuntu:~/fabric-samples/first-network$ docker container list
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a39f79bd7c1f hyperledger/fabric-tools "/bin/bash -c './s..." 2 hours ago Up 2 hours cli
999a1a8d20e3 hyperledger/fabric-peer "peer node start" 2 hours ago Up 2 hours 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
901c58cbd494 hyperledger/fabric-peer "peer node start" 2 hours ago Up 2 hours 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
66cd87faa698 hyperledger/fabric-peer "peer node start" 2 hours ago Up 2 hours 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
dca727385f79 hyperledger/fabric-peer "peer node start" 2 hours ago Up 2 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
9ddadc63504e hyperledger/fabric-couchdb "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
be6fe0d2936a hyperledger/fabric-orderer "orderer" 2 hours ago Up 2 hours 0.0.0.0:7050->7050/tcp orderer.example.com
b5c5bdedb58f hyperledger/fabric-couchdb "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
32ab5fd53379 hyperledger/fabric-couchdb "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
78c376e15e69 hyperledger/fabric-couchdb "tini -- /docker-e..." 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
NO - 2GB RAM is not enough. In this tutorial you are running a Multi-Peer, Multi-Org and so several Docker Containers. You should also check your free diskspace but 60GB might be enough for testing.
is it the cause of the problem ? sure??? how much RAM i need?
@yogesh.fulsunge - my suggestion is to start fresh with 6GB of RAM. But before starting again I would suggest doing a little research and testing with Docker.
i have kept 2.8 GB RAM
it should work with 2GB but only if not much else is running on the system
@yogesh.fulsunge for the standard Development environment - we recommended 4Gb -> https://hyperledger.github.io/composer/installing/development-tools.html . For a multi-org setup we recommend 6- 8Gb RAM
@yogesh.fulsunge for the standard Development environment - we recommended 4Gb -> https://hyperledger.github.io/composer/installing/development-tools.html . For a multi-org setup we recommend 6- 8Gb RAM (minimum)
i dnt have anything else running in system
ok thanks
@rthatcher hi, it seems the "adminConnection.getCard()" function is not available anymore. is there a replacement?
@uber.twin - the doc for the API is being updated (should be live later today) but you can find the latest doc now in Matthew's repo (only until it goes live):
https://mbwhite.github.io/api-doc/composer/api/api-doc-index
@rthatcher -when i tried to ping alice i got this error
Clipboard - November 28, 2017 6:19 PM
please help me to solve, Thanks in advance.
@aravs looking at the error - have you a HTTP PROXY env set ? Otherwise there's a suggestion there's something wrong in your connection.json for alice - what happens when you ping with the admin card (ie same network) ie using the card for one Org only
@aravs looking at the error - have you an HTTP PROXY env set ? Otherwise there's a suggestion there's something wrong in your connection.json for alice - what happens when you ping with the admin card (ie same network) ie using the card for one Org only
@sravs ravs looking at the error - (edited answer on closer inspection ) you've completely rebuilt your BYFN network environment - lthis is evident, looking at your command history in closer detail. This means you have stood up a new fabric infrastructure - You need to go back to the multi-org tutorial and resume at the point - where you did that command, from memory, you need to go and delete the old cards (the crypto material is not valid for the new environment).
@sravs looking at the error - (edited answer on closer inspection ) you've completely rebuilt your BYFN network environment - lthis is evident, looking at your command history in closer detail. This means you have stood up a new fabric infrastructure - You need to go back to the multi-org tutorial and resume at the point - where you did that command, from memory, you need to go and delete the old cards (the crypto material is not valid for the new environment).
@sravs looking at the error - (edited answer on closer inspection ) you've completely rebuilt your BYFN network environment - this is evident, looking at your command history in closer detail. This means you have stood up a new fabric infrastructure - You need to go back to the multi-org tutorial and resume at the point - where you did that command, from memory, you need to go and delete the old cards (the crypto material is not valid for the new environment).
@sravs looking at the error - (edited answer on closer inspection ) you've completely rebuilt your BYFN network environment - this is evident, looking at your command history in closer detail. This means you have stood up a new fabric infrastructure - You need to go back to the multi-org tutorial and resume at the point - where you did that command, from memory, you need to go and delete the old cards (the crypto material is not valid for the new environment). https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
Has joined the channel.
Has joined the channel.
hey guys! when I fire a container running the composer-cli image, import the card and then ping the network everything works. However, when I do the same thing again (start a new container, import the card and then ping the network) the ping command fails with the message "Error: The current identity has not been registered". Maybe someone has a hint on what is going on?
hey guys! when I fire a container using the composer-cli, import the card and then ping the network everything works. However, when I do the same thing again (start a new container, import the card and then ping the network) the ping command fails with the message "Error: The current identity has not been registered"
hey guys! when I fire a container using the composer-cli, import the card and then ping the network everything works. However, when I do the same thing again (start a new container, import the card and then ping the network) the ping command fails with the message "Error: The current identity has not been registered". Maybe someone has a hint on what is going on?
Hey guys, I am having an issue deploying/starting a business network (.bna) when running this command:
`composer network start -c PeerAdminOrg1@sample-blockchain-net-org1 -a ./application/sample-bis/sample-bis@0.0.1.bna -o endorsementPolicyFile=endorsment-policy.json -A user1 -C user1/admin-pub.pem -A user2 -C user2/admin-pub.pem`
this returns the following error:
`Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (sample-bis:0.15.2)-open /var/hyperledger/production/chaincodes/sample-bis.0.15.2: no such file or directory)`
Hey guys, I am having an issue deploying/starting a business network (.bna) when running this command:
`composer network start -c PeerAdminOrg1@sample-blockchain-net-org1 -a ./application/sample-bis/sample-bis@0.0.1.bna -o endorsementPolicyFile=endorsment-policy.json -A user1 -C user1/admin-pub.pem -A user2 -C user2/admin-pub.pem`
this returns the following error:
`Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (sample-bis:0.15.2)-open /var/hyperledger/production/chaincodes/sample-bis.0.15.2: no such file or directory)`
Am I missing anything?
@here we've released Hyperledger Composer v0.16.0, it's our first shiny stable release branch and we totally recommend you build your blockchain projects with it! Read the details and the latest CongaComic on GitHub 🎉 https://github.com/hyperledger/composer/releases/tag/v0.16.0
[ ](https://chat.hyperledger.org/channel/composer?msg=R3u62hzyZHJgr8CAd) @luminance looks like you haven't done a `composer runtime install` before the` composer network start ` ?-> https://hyperledger.github.io/composer/reference/composer.runtime.install.html
@lucasdf - the first time you use a card it connects with a one-time secret and then Certificates are downloaded and the secret is no longer valid. If you attempt to re-use the card with the secret in it you get the error you are seeing. What you need to do is to Export the card after you use it the first time, then you have a version with the certificates. (You will notice that the new version of the .card file is larger than the original as it now contains the certificates.)
@lucasdf - the first time you use a card it connects with a one-time secret and then Certificates are downloaded and the secret is no longer valid. If you attempt to re-use the card with the secret in it you get the error you are seeing. What you need to do is to Export the card after you use it the first time, then you have a version with the certificates. (You will notice that the new version of the .card file is larger than the original as it now contains the certificates.)
I assume that you are keeping the same Fabric containers, but just creating a new CLI container.
@rthatcher oh that's it! thanks! you have just saved me a few hours! :-) I did not know about that secret exchange for . certificate.
@rthatcher oh that's it! thanks! you have just saved me a few hours! I did not know about that exchange of a secret for . certificate.
Has joined the channel.
Hi I'm trying to start my composer network (`composer network start`). For some reason I keep getting the following error:
```
⠏ Starting business network definition. This may take a minute...(node:39255) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: The event hub has not been connected to the event source
(node:39255) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): Error: The event hub has not been connected to the event source
(node:39255) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 3): Error: The event hub has not been connected to the event source
(node:39255) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 4): Error: The event hub has not been connected to the event source
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: The event hub has not been connected to the event source
Command failed
```
However, after this the network seems to be in good working order (can ping successfully)
@are you following a tutorial? did you create your own connection.json files ? difficult to know context of your error.
@bsteinfeld you following a tutorial? did you create your own connection.json files ? difficult to know context of your error.
@mahoney1 I create my own connection.json files. I _kind of_ followed this tutorial: https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
I have a 3 org network (2 peers each).
@bsteinfeld at a guess, might want to check out your connection.json definitions - likely to be the source of your errors. `eventUrl` is used to connect the EventHub and registering event listeners
@mahoney1 @sstone1 per the new deploying rest server doc, https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html, a "discovery business network card" is mentioned. Assuming this card has to be tied to some participant/identity combo for the network correct? If so, what is the recommended ACL needed for that participant in a business network?
@jdockter it would be tied, yes. I'm guessing you're asking about 'minimal ACL permissions required' to be able to discover? It would minimally be 'READ' permission to discover the specific business network. Docs need updating, will find out more and get back shortly.
Is there any planed update for yo to include support for multi user mode and wallet support
@mahoney1 thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=5cGhdJiuunacZ3dnR) @jon_s not 'planned' presently, but feel free to raise an issue to describe/articulate your requirements, thanks..
thanks. raised it :)
[ ](https://chat.hyperledger.org/channel/composer?msg=HgYejThDKo2bcGpSc) @mahoney1
I sent you a PM with more details but I did check my connection.json and as far as I can tell the `eventUrl` is set correctly. I do see the following errors in my chaincode containers:
```
2017-11-28 15:58:55.630 UTC [Composer] Debug -> DEBU c09 @perf Chaincode.Init total duration for txnId [ 89c74b8333e389b7355aef66525de337ed1e5685dad94453e267e7ccf501fbbf ] : 6.488369591s
Error: Unhandled promise rejection {}
at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
at error () native strict preventsyield
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1) preventsyield
Error: Unhandled promise rejection {}
at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
at error () native strict preventsyield
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1) preventsyield
Error: Unhandled promise rejection {}
at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
at error () native strict preventsyield
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1) preventsyield
```
how to update business network from 15.2 to 16.0
or how remove older version
https://hyperledger.github.io/composer/managing/updating-composer.html
@jon_s - Follow what @uber.twin has suggested for updating your npm modules (include composer-playground is you installed that too). For cleaning up your Dev Fabric run the `.start_fabric.sh` script in fabric-tools which will create you a new clean and empty development Fabric.
Before you do this you might want to backup your model files, permissions, .js files etc.
I would also use `composer card list` and `composer card delete` to remove all your existing cards (and delete any .card files too)
After running ./start_fabric.sh don't forget to run `createPeerAdminCard.sh`
@rthatcher if I may, I think it would be really helpful if the reference sample application(s) get an update also when the runtime is being updated
Hi, I have tried to use ORDER BY Query to sort according to id. But that is throwing error. Can anyone help me to resolve that?
@umamani113 for a single `ORDER BY` field you may be hitting this index issue -> https://stackoverflow.com/questions/45919898/order-by-not-working-in-named-query/45966828#45966828 for multiple ORDER BY fields this is a current limitation of CouchDB see here -> https://github.com/hyperledger/composer/issues/1640 - lastly, check the docs https://hyperledger.github.io/composer/reference/query-language.html for examples
@jdockter the minimum ACL for discovery by a participant mapped to an identity with a card (example: a discovery participant below for namespace `proterra.quiz` )
```
rule NetworkPeopleCanSee{
description: ""
participant: "proterra.quiz.Person"
operation: READ
resource: "org.hyperledger.composer.system.Network#quiz-network@0.0.1"
action: ALLOW
}
@mahoney1 Yes, you are correct. I am facing that issue only
@mahoney1 Yes, you are correct. I am facing that issue only
@mahoney1 Yes, you are correct. I am facing that issue only {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to query business network. Error: chaincode error (status: 500, message: Error: http: read on closed response body)",
"stack": "Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: http: read on closed response body)\n at channel.queryByChaincode.then.catch (/home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:754:34)"
}
} --> How I can solve this thing, Can you please help me?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZkMakmszLdQWNNYsj) @mahoney1 thanks will give that a try
I believe I am not following the tutorial properly. I am installing runtime and starting business network. Then importing the card into cards list. And exporting it again with certificates this time. Then when I try to issue an id using composer rest server it throws error saying Authorization failed. And now coming back to cli the same error occurs. Am I missing anything. I am unknowingly got right many times today as well got it not working. Can anyone correct me by giving overview or big picture of what's happening behind
Has joined the channel.
Tutorial Question: composer rest server isn't showing my newly generated business network; rather, the original assets example that my tutorial code replaced to generate the BNA file. I think I followed the command line directives to the letter so confused about what is going on. Checked for docker container and sure enough, new stuff there. dev-peer0.org1.example.com-tutorial-network-0.16.0-c3fca5cdd7456aaf73801338b91d609e6e364b2ec46b0ae70956135fa0a0c918
Hi guys, I am new to hyper ledger composer and fabric. I tried the tutorials available online. I created the bna file and create the participants using the composer rest server API in my localhost. Now, I am planning to develop a client side application. This client side application needs to be accessed by the participants created already using the rest api server by the admin user.I am wondering , How should I manage the login (authentication) of the participants which are already created by the admin of the business network. Can someone please help me!!
@AkhilBhavirisetty
@AkhilBhavirisetty I am doing a similar thing and this is my current work flow.
- I don't want to use google or github etc passports so I have my own custom server acting as passport server
- I register a user through a transaction endpoint for example CreateUser which emits a userCreatedEvent
- Node-red listens to the userCreatedEvent and invokes a create passport request on my passport server whenever an event is received
- The passport server registers the user passport,with generated password, and emails the user with instructions on how to login
- My passport server also uses the composer CLI to generate the identity for the new user
- ** To keep things simple my passport server then authenticates itself, via nodejs, to the REST server as the new user identity and actually uploads the default wallet identity. This way my front-end doesn't have to worry about business cards etc and just uses a simple two step authentication method. First get a jwt token from my passport server, by username/password, and then use that jwt token to authenticate against the REST server and recieve the accessToken cookie for all future REST server requests.
A few notes on this:
- If you use events you need to create your own transaction code to emit the events. You cannot use the pre-defined REST server end points for example POST /User
- The ** step I did because it makes things easy but from an archecture point of view it might not be the best way as a passport server should not really be doing these things. For example imagine using google passport. You can't do things like this then. The alternative would be that the user in some way receives their network business card and uploads it on the initial login in some way that is easy for the user.
- Another issue might be that with my current way of doing things my front-end would stop working if anything goes wrong with the wallet data on the rest server. So you need to make it persistent which currently already possible. So actually after typing this text I am already reconsidering it :)
- In this scenario I am using passport-jwt
In all cases and scenarios though Node-red seems like the ideal way to get something or somebody to act and do something when a new participant is registered.
@AkhilBhavirisetty I am doing a similar thing and this is my current work flow.
- I don't want to use google or github etc passports so I have my own custom server acting as passport server
- I register a user through a transaction endpoint for example CreateUser which emits a userCreatedEvent
- Node-red listens to the userCreatedEvent and invokes a create passport request on my passport server whenever an event is received
- The passport server registers the user passport,with generated password, and emails the user with instructions on how to login
- My passport server also uses the composer CLI to generate the identity for the new user
- ** To keep things simple my passport server then authenticates itself, via nodejs, to the REST server as the new user identity and actually uploads the default wallet identity. This way my front-end doesn't have to worry about business cards etc and just uses a simple two step authentication method. First get a jwt token from my passport server, by username/password, and then use that jwt token to authenticate against the REST server and recieve the accessToken cookie for all future REST server requests.
A few notes on this:
- If you use events you need to create your own transaction code to emit the events. You cannot use the pre-defined REST server end points for example POST /User
- The ** step I did because it makes things easy but from an archecture point of view it might not be the best way as a passport server should not really be doing these things. For example imagine using google passport. You can't do things like this then. The alternative would be that the user in some way receives their network business card and uploads it on the initial login in some way that is easy for the user.
- Another issue might be that with my current way of doing things my front-end would stop working if anything goes wrong with the wallet data on the rest server. So you need to make it persistent which currently already possible. So actually after typing this text I am already reconsidering it :)
- In this scenario I am using passport-jwt
In all cases and scenarios though Node-red seems like the ideal way to get something or somebody to act and do something when a new participant is registered.
@AkhilBhavirisetty I am doing a similar thing and this is my current work flow.
- I don't want to use google or github etc passports so I have my own custom server acting as passport server
- I register a user through a transaction endpoint for example CreateUser which emits a userCreatedEvent
- Node-red listens to the userCreatedEvent and invokes a create passport request on my passport server whenever an event is received
- The passport server registers the user passport,with generated password, and emails the user with instructions on how to login
- My passport server also uses the composer CLI to generate the identity for the new user
- ** To keep things simple my passport server then authenticates itself, via nodejs, to the REST server as the new user identity and actually uploads the default wallet identity. This way my front-end doesn't have to worry about business cards etc and just uses a simple two step authentication method. First get a jwt token from my passport server, by username/password, and then use that jwt token to authenticate against the REST server and recieve the accessToken cookie for all future REST server requests.
A few notes on this:
- If you use events you need to create your own transaction code to emit the events. You cannot use the pre-defined REST server end points for example POST /User
- The ** step I did because it makes things easy but from an archecture point of view it might not be the best way as a passport server should not really be doing these things. For example imagine using google passport. You can't do things like this then. The alternative would be that the user in some way receives their network business card and uploads it on the initial login in some way that is easy for the user.
- Another issue might be that with my current way of doing things my front-end would stop working if anything goes wrong with the wallet data on the rest server. So you need to make it persistent which currently already possible. So actually after typing this text I am already reconsidering it :)
- In this scenario I am using passport-jwt
In all cases and scenarios though Node-red seems like the ideal way to get something or somebody to act and do something when a new participant is registered.
@AkhilBhavirisetty I am doing a similar thing and this is my current work flow.
- I don't want to use google or github etc passports so I have my own custom server acting as passport server
- I register a user through a transaction endpoint for example CreateUser which emits a userCreatedEvent
- Node-red listens to the userCreatedEvent and invokes a create passport request on my passport server whenever an event is received
- The passport server registers the user passport,with generated password, and emails the user with instructions on how to login
- My passport server also uses the composer CLI to generate the identity for the new user
- ** To keep things simple my passport server then authenticates itself, via nodejs, to the REST server as the new user identity and actually uploads the default wallet identity. This way my front-end doesn't have to worry about business cards etc and just uses a simple two step authentication method. First get a jwt token from my passport server, by username/password, and then use that jwt token to authenticate against the REST server and recieve the accessToken cookie for all future REST server requests.
A few notes on this:
- If you use events you need to create your own transaction code to emit the events. You cannot use the pre-defined REST server end points for example POST /User
- The ** step I did because it makes things easy but from an archecture point of view it might not be the best way as a passport server should not really be doing these things. For example imagine using google passport. You can't do things like this then. The alternative would be that the user in some way receives their network business card and uploads it on the initial login in some way that is easy for the user.
- Another issue might be that with my current way of doing things my front-end would stop working if anything goes wrong with the wallet data on the rest server. So you need to make it persistent which currently already possible. So actually after typing this text I am already reconsidering it :)
- In this scenario I am using passport-jwt
In all cases and scenarios though Node-red seems like the ideal way to get something or somebody to act and do something when a new participant is registered.
@AkhilBhavirisetty I am doing a similar thing and this is my current work flow.
- I don't want to use google or github etc passports so I have my own custom server acting as passport server
- I register a user through a transaction endpoint for example CreateUser which emits a userCreatedEvent
- Node-red listens to the userCreatedEvent and invokes a create passport request on my passport server whenever an event is received
- The passport server registers the user passport,with generated password, and emails the user with instructions on how to login
- My passport server also uses the composer CLI to generate the identity for the new user
- ** To keep things simple my passport server then authenticates itself, via nodejs, to the REST server as the new user identity and actually uploads the default wallet identity. This way my front-end doesn't have to worry about business cards etc and just uses a simple two step authentication method. First get a jwt token from my passport server, by username/password, and then use that jwt token to authenticate against the REST server and recieve the accessToken cookie for all future REST server requests.
A few notes on this:
- If you use events you need to create your own transaction code to emit the events. You cannot use the pre-defined REST server end points for example POST /User
- The ** step I did because it makes things easy but from an archecture point of view it might not be the best way as a passport server should not really be doing these things. For example imagine using google passport. You can't do things like this then. The alternative would be that the user in some way receives their network business card and uploads it on the initial login in some way that is easy for the user.
- Another issue might be that with my current way of doing things my front-end would stop working if anything goes wrong with the wallet data on the rest server. So you need to make it persistent which currently already possible. So actually after typing this text I am already reconsidering it :)
- In this scenario I am using passport-jwt
In all cases and scenarios though Node-red seems like the ideal way to get something or somebody to act and do something when a new participant is registered.
The actual specifics about wallet identities etc for the REST server can all be found in the online tutorials though.
Has joined the channel.
Has joined the channel.
@rthacher Thank you so much, it worked and now I have also successfully generated REST server. However How can I use different admin user?
Question:
why everytime I stop and start the fabric, then install & deploy again the bna file. the participants/assets/transactions that I have done before are deleted and start all over again?
Is there a solution for this if I want to persist the data?
Hello Everyone, I am working on commercial hyper ledger application. I have completed my development of the business network in a composer. Now I want to know what is the best way to go for a front end, user authentication and Handling permissions. Any tips or measures for security and scalability on live server Please let me know.
Hi Everyone, I was trying to use ORDER BY query for single data and two datas, I am getting these two types of errors. {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to query business network. Error: chaincode error (status: 500, message: Error: Couch DB Error:unsupported_mixed_sort, Status Code:400, Reason:Sorts currently only support a single direction for all fields.)",
"stack": "Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: Couch DB Error:unsupported_mixed_sort, Status Code:400, Reason:Sorts currently only support a single direction for all fields.)\n at channel.queryByChaincode.then.catch (/home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:754:34)"
}
} and another error is "message": "Error trying to query business network. Error: chaincode error (status: 500, message: Error: http: read on closed response body)",
"stack": "Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: http: read on closed response body)\n at channel.queryByChaincode.then.catch (/home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:754:34)" ------------> can anyone help me to fix this?
Another question:
the data that is inserted in the business network, like adding participants or assets .. where it is stored? if it is in couch database? I have opened the couch db and found nothing.
thanks
fyi @here - the Community call today is at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories on the call - we'll also discuss the latest release
Hello,How can i run two orgs in different pc's, Any one please help to set up orgs in different pc's and interconnect each other.
If i followed this tutorial https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html from single pc, its working
while trying with two different pc's, I am getting error at "composer network ping -c alice@tutorial-network"
Another question which is the 3rd one:
where is the path of logs for the composer?
thanks in advance and sorry for asking a lot :)
hi i completed https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
while i am doing this in multiple systems iam unable to ping org1 to org2 please help me i strucked here
hi @sstone1 i completed https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
while i am doing this in multiple systems iam unable to ping org1 to org2 please help me i strucked here
@umamani113 There are a few issues with the order by related to necessary CouchDB indexes. https://stackoverflow.com/questions/45919898/order-by-not-working-in-named-query/45966828#45966828 and https://github.com/hyperledger/composer/issues/1640 . I also needed to add couchdb indexes on the order by field to make it work
he
Has joined the channel.
Hello everyone! I am currently researching Fabric Composer and have a one question! What is the best way to handle asset unique identifiers in fabric blockchain? For example in traditional relation databases we have primary keys, which are automatically incremented. I want to achieve similar functionality when creating assets, is such an option built into Composer or I should generate uid by myself? Thank you for your time!
@mostafa.elsayyad - if you are using the fabric-tools development fabric, then the startfabric.sh script deletes your existing Fabric Containers and then creates new containers from the Docker Images, and hence you have a new empty fabric without any of your participants or data. If you research Docker and Docker Compose you can see what the scrips are doing and restart your fabric containers as they were.
The logs for the fabric servers and other containers are available with docker logs command.
This doc provides some other information on logging: https://sstone1.github.io/composer/problems/diagnostics.html
Only World State is stored in CouchDB other data is stored on the peers.
Has joined the channel.
@rthatcher please reply for my question
Hello Everyone.I ran basic-sample-network for automation.I did it learna run test.I got the Success messages of all testcases.But where to see the results
could you please help us anybody in that
Hello, iam trying to connect multiple peers following link https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html , iam trying to ping bob from organization2 but getting an error Error: Error trying invoke business network. Error: Peer has rejected transaction '0d4b7cca1ba110dc619481e9e3fd0538de94a7237de288b824a640a6603d51b3' with code ENDORSEMENT_POLICY_FAILURE
Please help to solve this, Thank you in advance.
@here - Community call starts in a few minutes FYI - can access via Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories on the call - we'll also discuss the latest release
@sravs - using a MultiOrg setup on different machines will have a few pitfalls to avoid. How have you set up the machines? Are you sharing the Crypto material between them? (If you generated 2 sets of Crypto material that will be a problem.) Also how are you managing addressing, lookup and communication between your 2 physical machines? These issues are the ones I would suggest you look at first.
@wininani - what step are you working on in the tutorial? What error are you seeing?
@rthatcher i completed all steps in same machine but iam getting error in last step when i used that in two different systems
@rthatcher ya i am sharing crypto materials between two pc's, and also added host address in coonnection-org1.json file
getti
and where we have to give ip address of the different machine in my json file
thaks for u r responce @rthatcher
@rthatcher do you have any advice on my question?
@wininani - so on PC1 you have Alice as admin and Alice can ping OK?
@rthatcher
@maris.c - in the modelling language whenever you define an Asset or Participant you have the syntax 'identified by' - and the variable following that is the ID for the object and you need to create it. I'm not aware of any system generated ID for objects. (Transactions on the other hand do get a generated unique ID)
@rthatcher please suggest me, which files i have to edit
@sravs @wininani what are the actual errors you are seeing when a ping fails ?
Clipboard - November 29, 2017 3:38 PM
@rthatcher i'm getting that error while i'm doing ping
image.png
Has joined the channel.
hi, I am getting error trying to import composer card
Clipboard - November 29, 2017 3:48 PM
@sravs @wininani - I would suggest looking at the logs on the Peers and the Orderer and check to see if there are communication issues between the various containers.
any idea?
@rthatcher how to check communications.i am a beginner
I am very beginner,please suggest me where i have to edit and how can i set up communication
@JayasreeVenugopal - check that you have a file called bcpoc.card in your current folder. Try specifying -f bcpoc.card as the file name
In which files i have to mention the ip address of another pc
please reply me @rthatcher
@rthatcher : i executed command in same manner. also i dont see its extension with.card. But this was created using the composer card create command
Clipboard - November 29, 2017 4:01 PM
@sravs @wininani - you will need to investigate general networking between containers and hosts and plan a network strategy. In production you might use something like Kubernetes or Docker Swarm to manage multi physical machines and multi containers communicating with eachother.
even i tried with the file admin.card. But none worked
@rthatcher thanks and can u share any relevant tutorial or link to follow.
@JayasreeVenugopal - try `composer card list` just to see if you have any existing cards. The composer cards will be created in a folder ~/.composer (i.e a hidden folder under your home folder) do you have this folder ? Is there anything in it ? Do you have the permissions to create such a folder?
The 2nd thing you can try is to copy the bcpoc file to a 2nd file called temp.zip and then unzip that into a temporary folder and check its contents.
so that i can follow the correct tutorial
@wininani - I don't have that information sorry - this is a Hyperledger Composer channel.
ok thankyou
~/.composer folder is visible
also i tried to unzip and able to see 3 files - connection.json, metadata.json and a lock file
@rthatcher
Also when i try, i see list card also fails
Clipboard - November 29, 2017 4:17 PM
@JayasreeVenugopal - I think the composer card list command is OK - you have no cards - I just wanted to check. Try copying the bcpoc file to a 3rd file called bcpoc.card and then try importing that.
0
down vote
favorite
I am curious to know, how composer API interacts internally with fabric up to committing the data in the blockchain.
Consider a scenario, where I built an application using Composer and deploy the .bna into fabric runtime.
I submit a transactions via composer REST server. Need to know
1) how composer API is linked to fabric API. 2) How Composer will make use of endorsing, committing and order peer. 3) How transaction is converted into Block and committed to the ledger.
I am curious to know, how composer API interacts internally with fabric up to committing the data in the blockchain.
Consider a scenario, where I built an application using Composer and deploy the .bna into fabric runtime.
I submit a transactions via composer REST server. Need to know
1) how composer API is linked to fabric API. 2) How Composer will make use of endorsing, committing and order peer. 3) How transaction is converted into Block and committed to the ledger.
@rthatcher
1. why didn't you refer to this link
https://hyperledger.github.io/composer/problems/diagnostics.html
instead of https://sstone1.github.io/composer/problems/diagnostics.html
2. where/how to access business network data that is stored in peers?
@rthatcher
1. why didn't you refer to this link
https://hyperledger.github.io/composer/problems/diagnostics.html
instead of https://sstone1.github.io/composer/problems/diagnostics.html
2. where/how to access business network data that is stored in peers?
Thanks
@rthatcher
1. why didn't you refer to this link
https://hyperledger.github.io/composer/problems/diagnostics.html
instead of https://sstone1.github.io/composer/problems/diagnostics.html
2. where/how to access business network data that is stored in peers?
3. Regarding that everytime fabric restart deletes the old data manipulated on business network .. What is the solution for this as fabric is stopped everytime the pc is shutdown?
Thanks
Hi, with the ACL-Rules, it's still not possible to allow UPDATE for certain attributes/fields, right ?
@mostafa.elsayyad
1 - sorry I sent you the wrong link - you are correct!
2 - You should only ever access the Business Network data through Composer API, Composer Playground or Composer REST API
3a - I would suggest looking at the scripts under fabric-tools and then understanding Docker and Docker compose.
(3b - try something like after a restart
``` cd ~/fabric-tools/fabric-scripts/hlfv1/composer/
docker-compose start ```
and before a shutdown `docker-compose stop` - BUT it is important to be in the right folder before using the docker-compose commands)
@rthatcher
thanks a lot
Has joined the channel.
@erNail - correct. At the moment it is not possible to set ACLs at the field level.
Hi guys, I'm playing around with composer and I want to create an app to get familiar with it. I want to create a system that handles some kind of pseudo-currency like karma points, a market within coworkers to reward each other. I'm trying to figure out how to structure my Business Network models, since creating an asset for every currency unit doesn't seem correct to me, so it does managing actors' balances and counting actor updates as transactions. Is that correct? Is there any guide or page when some use cases are exposed and how to organize a business network for them? I couldn't find any.
@rthatcher Is there an GitHub Issue for that ? Because i have a Provider who accepts a contract. He does this with the execution of a `acceptContract`-Transaction. To execute this transaction, he has to have CREATE-rights for the transaction and UPDATE-rights for the contract. Problem is, he should not be allowed to change all fields of the contract.
@erNail - https://github.com/hyperledger/composer/issues/983 - feel free to add a comment to the issue with your use case.
@arol - if you are using Composer Playground - there are several sample networks that you can explore to get inspiration to model your own. Further than that there are some Sample Applications with more complex models, particularly the Vehicle Lifecycle application. The sample networks are available in Composer, and if you want to teh sample applications they are here and can be cloned with git: https://github.com/hyperledger/composer-sample-applications/tree/master/packages
@rthatcher : Still that option failed for me
any configuration file to verify?
@JayasreeVenugopal - I have just created and imported cards OK in my test, using composer v0.16.0.
What version are you using? What exact command are you using to create the card ?
composer card create -p connection.json -f bcpoc -n test-bna -u admin -s adminpw -r "ChannelAdmin"
This command was successful
composer card import -f bcpoc
This one is failing
And composer card list
There are no Business Network Cards available.
Command succeeded
I could successfully launch composer rest service at http://169.51.20.6:31090/explorer/
@rthatcher
i am also using v0.16.0
@JayasreeVenugopal - for a NetworkAdmin card you don't need the ChannelAdmin role - so remove that. Also use the .card extension for the file. I assume that you have a valid connection.json file.
Are you using Kubernetes containers on Bluemix?
Has joined the channel.
@rthatcher - I am working @JayasreeVenugopal....so on behalf of @JayasreeVenugopal I answer to your queries......yes we use valid connection.json file. We also use Kubernetes containers on Bluemix. Would try with updated command as per your suggestion...However it is create command ( which is succeded). Error occurs during "Import" execution
Tried again
ubuntu@ip-172-31-41-47:~$ composer card create -p connection.json -f bcpoc.card -n test-bna -u admin -s adminpw
Successfully created business network card file to
Output file: bcpoc.card
Command succeeded
ubuntu@ip-172-31-41-47:~$ composer card import -f bcpoc.card
Error: Failed to save card: admin@test-bna
Command failed
A second way of import via composer playground was done
And when we try to connect the business network, I am getting following error: Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
@JayasreeVenugopal @deepakvin - sorry this Channel is for Hyperledger Composer - for support with your particular environment on IBM Cloud you should go to this page https://console.bluemix.net/docs/support/index.html#contacting-support
@JayasreeVenugopal @deepakvin - sorry this Channel is for Hyperledger Composer - for support with your particular environment on IBM Cloud you should go to this page https://console.bluemix.net/docs/support/index.html#contacting-support I think that there were changes yesterday for these Cloud based containers.
@Manasabingi - Are all your containers running correctly - I think you see this error when some of the containers are 'down' or not contactable. Or possibly some typos in the connection files.
can you provide examples of smart contract between buyer and seller ???
Thank you for your response @rthatcher these are my containers
containers.png
Hi I am trying to use generator-hyperledger-composer to generate Angular app. It generates successfully but I can't access it from net. I have deployed Fabric on Linux server on public IP, all ports are allowed. I can successfully access REST server (ip:3000/explorer). From REST server web interface, I can post, get data from underlying fabric but I can't access angular app. After generator builds app, I am using npm start commands... It says NG Live Development Server is running on http://localhost:4200, How do I access it?
Thanks a lot for your help.
===============================================
udayk@scw-99a524:~/invoice-finance-network/invoice-app$ npm start
> invoice-app@0.0.1 start /home/udayk/invoice-finance-network/invoice-app
> ng serve
** NG Live Development Server is running on http://localhost:4200 **
Hash: 822aadcc03b18c78b0d8 Time: 36904ms
chunk {0} polyfills.bundle.js, polyfills.bundle.js.map (polyfills) 265 kB {5} [initial] [rendered]
chunk {1} main.bundle.js, main.bundle.js.map (main) 42 kB {4} [initial] [rendered]
chunk {2} styles.bundle.js, styles.bundle.js.map (styles) 183 kB {5} [initial] [rendered]
chunk {3} scripts.bundle.js, scripts.bundle.js.map (scripts) 435 kB {5} [initial] [rendered]
chunk {4} vendor.bundle.js, vendor.bundle.js.map (vendor) 3.83 MB [initial] [rendered]
chunk {5} inline.bundle.js, inline.bundle.js.map (inline) 0 bytes [entry] [rendered]
webpack: Compiled successfully.
Hello, can I manually delete card? Here is the problem:
Clipboard - November 29, 2017 4:18 PM
@Manasabingi - I can't see your CA containers for Org1 or Org2, or any CouchDB containers - have they stopped? Try `docker ps -a` to see if you have stopped containers. How much memory does your Ubuntu machine have?
@argman - I would guess that admin is the UserId and that you have a Card Name with some unprintable character in the name. You could try looking in the ~/.composer/card folder and seeing if there is something odd there. How was the card created ?
But it calls "Client"
Clipboard - November 29, 2017 5:00 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=87HHs7nBvh2QLwGjg) @rthatcher I wrote small script to create and import some cards. Another cards was ok.
whats wrong with this script 'composer card create --businessNetworkName hc-blockchain --user client --enrollSecret supersecret --role PeerAdmin -p cards/connection.json
composer card create --businessNetworkName hc-blockchain --user seller --enrollSecret supersecret --role PeerAdmin -p cards/connection.json
composer card create --businessNetworkName hc-blockchain --user courier --enrollSecret supersecret --role PeerAdmin -p cards/connection.json
composer card import -f client@hc-blockchain.card --name client
composer card import -f seller@hc-blockchain.card --name seller
composer card import -f courier@hc-blockchain.card --name courier' ?
`composer card create --businessNetworkName hc-blockchain --user client --enrollSecret supersecret --role PeerAdmin -p cards/connection.json
composer card create --businessNetworkName hc-blockchain --user seller --enrollSecret supersecret --role PeerAdmin -p cards/connection.json
composer card create --businessNetworkName hc-blockchain --user courier --enrollSecret supersecret --role PeerAdmin -p cards/connection.json
composer card import -f client@hc-blockchain.card --name client
composer card import -f seller@hc-blockchain.card --name seller
composer card import -f courier@hc-blockchain.card --name courier`
```composer card create --businessNetworkName hc-blockchain --user client --enrollSecret supersecret --role PeerAdmin -p cards/connection.json
composer card create --businessNetworkName hc-blockchain --user seller --enrollSecret supersecret --role PeerAdmin -p cards/connection.json
composer card create --businessNetworkName hc-blockchain --user courier --enrollSecret supersecret --role PeerAdmin -p cards/connection.json
composer card import -f client@hc-blockchain.card --name client
composer card import -f seller@hc-blockchain.card --name seller
composer card import -f courier@hc-blockchain.card --name courier```
Hey guys, little help:
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Error starting container: API error (404): {"message":"No such network: sample-blockchain"}
```
My question is: Where do I setup this parameter? Where is it interconnected? Is it something I need to do with the fabric network?
@argman - I was just able to create a card called client so I don't think it is a special/reserved name. What version of Composer are you using.
(BTW have you now deleted Courier and Seller cards?)
I can only suggest deleting the folder ~/.composer/cards/Admin and ~/.composer/client-data/Admin if it exists. The do a composer card list again to check it is removed - then try the import again.
@argman - I was just able to create a card called client so I don't think it is a special/reserved name. What version of Composer are you using.
(BTW have you now deleted Courier and Seller cards?)
I can only suggest deleting the folder ~/.composer/cards/Admin and .composer/client-data/Admin if it exists. The do a composer card list again to check it is removed - then try the import again.
@argman - I was just able to create a card called client so I don't think it is a special/reserved name. What version of Composer are you using.
(BTW have you now deleted Courier and Seller cards?)
I can only suggest deleting the folder ~/.composer/cards/Admin and .composer/client-data/Admin if it exists. The do a composer card list again to check it is removed - then try the import again.
BTW - you shouldn't specify --role PeerAdmin for these cards which are for a specific Business Network
@luminance - I think @mahoney1 answered this yesterday, but have you run the command `composer runtime install` before the `composer network start` ?
Are you following a particular tutorial or guide?
Yes, I have deleted Courier and Seller. I find out the reason. I use CRLF instead of LF. Nevertheless thank you :)
`composer rest server` is throwing CORS error when API call is made from Cross Origin.
Any Help how to solve it?
@rthatcher but, I already did with the same name `composer runtime install --card PeerAdminOrg1@sample-blockchain-net-org1-only --businessNetworkName sample-blockchain`. I did copy/paste the vars just to make sure that I am not making any typos
@rthatcher but, I already did, with the same name `composer runtime install --card PeerAdminOrg1@sample-blockchain-net-org1-only --businessNetworkName sample-blockchain`. I did copy/paste the vars just to make sure that I am not making any typos
@luminance - is your fabric running? Have you restarted you machine? Can you try `docker ps` to see if the fabric is running?
@rthatcher yeah, I did that. I successfully deployed the tutorial (with default env vars). But now, I am modifying the docker-compose files to suit my needs. That is why I need know where this parameter is set. Does this appear only in when I am deploying with composer, or should I look something in the fabric?
@rthatcher yeah, I did that. I successfully deployed the tutorial (with default env vars). But now, I am modifying the docker-compose files to suit my needs. That is why I need know where this parameter is set. Does this appear only in composer, or should I look something in the fabric?
@rthatcher yeah, I did that. I successfully deployed the tutorial (with default env vars). But now, I am modifying the docker-compose files to suit my needs. That is why I need know where this parameter is set. Does this appear only in composer, or should I look something in the fabric? btw, all fabric peers/orderer/cli/cas are up and running
I am creating a POC based on the Perishable Sample netowrk. Could you please suggest on the following:
1. I want to generate a QR code when the shipment is registered(for the transaction and product details)
2. I want to merge multiple QR codes to create another QR code for the complete consignment.
3. How do we save Image within the blockchain
@luminance - the cards and the containers (created via the docker-compose file), and the crypto material are all interlinked - if you are changing the docker-compose files then I would suggest asking in the fabric channel, and explore the fabric documentation.
Has joined the channel.
hi i wanna create a local playground for that need any webserver
@tanvirmahtab - you will need to `npm install -g composer-playground` and then just simple run composer-playground command - it includes its own webserver and will start on port 8080 by default
@rthatcher hi, I'm getting the 'No ledger context for GetState' error in a transaction processing function which, as far as I see, it's associated with a timeout condition
is there another parameter controling the timeout, other than the one in profile definition( "timeout": 300") ?
by the way, what time units are those '300'?
@prmdmshra - you can't save an image directly as an attachment. This post in stack overflow explains how to do it:
https://stackoverflow.com/questions/47155690/is-there-any-size-limit-for-pdf-in-hyperledger-fabric/47163301#47163301
[ ](https://chat.hyperledger.org/channel/composer?msg=Qv3QnzuKAcwncQfrq) @rthatcher Much appreciated! Sorry for the late response, I was having lunch :raised_hands_tone3:
@rthatcher what happenss is I'm trying to create a new asset in a transaction processing function but the asset creation fails with ''' No ledger context for GetState''' error. The transaction object gets created and the client application is not reporting any error.
@rthatcher what happens is I'm trying to create a new asset in a transaction processing function but the asset creation fails with ''' No ledger context for GetState''' error. The transaction object gets created and the client application is not reporting any error.
@rthatcher what happens is I'm trying to create a new asset in a transaction processing function but the asset creation fails with ''' No ledger context for GetState''' error. The transaction object gets created and the client application is not reporting any error. Is this consistent with specs?(transaction object gets created but TPF crashes)
@rthatcher same code used to work fine a couple of versions ago.
@rthatcher same code used to work fine a couple of versions ago. Other than updating Composer I also got the Fabric 1.0.4 images
[ ](https://chat.hyperledger.org/channel/composer?msg=nfo8du3838WXTezdy) @uber.twin please create a Stack overflow - posting the code you say worked before, that doesn't now and all the relevant information like OS/Composer version, logs at point of crash etc. thanks
@rthatcher `composer rest server` is throwing CORS error when API call is made from Cross Origin.
Can you suggest me something?
I am trying out v0.16 on kubernetes. When I issue the composer network install it completes with "Command succeeded" but attempting to start it (using the network's PeerAdmin card) it fails with "Error: Error trying to ping. Error: Error trying to query business network. Error: could not find chaincode with name 'bakery-network'
- make sure the chaincode bakery-network has been successfully instantiated and try again" - should there be a pod starting up to run the chaincode or anything?
I am trying out v0.16 on kubernetes. When I issue the composer network install it completes with "Command succeeded" but attempting to start it (using the network's PeerAdmin card) it fails with "Error: Error trying to ping. Error: Error trying to query business network. Error: could not find chaincode with name 'bakery-network'
- make sure the chaincode bakery-network has been successfully instantiated and try again" - it works using the channel admin's card but I thought that was only needed for install, not the start?
@alisonb The problem is your card has a business network name in it and so the connection attempts to ping it but of course it isn't there yet. You need to use a card that doesn't have a business network defined in it.
@alisonb The problem is your card has a business network name in it and so the connection attempts to ping it but of course it isn't there yet. You need to use a card that doesn't have a business network defined in it but still has the correct credentials that allow it to perform a start.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=KW4DbESMZKkPRWmPQ) @aneb Thanks a lot.... Will try your way
I'm getting an error when running createPeerAdminCard.sh. It works fine until the last step when executing composer card import with the following error - "Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node' ". This repeats several times. I'm running MacOS 10.13.1. I've installed all the pre-reqs except for xcode I have the command line tools but not full xcode. Any suggestions?
@SanjivBhatia There are 2 possible causes
1. you installed composer, then changed the version of node
2. when you installed composer it tried to compile the grpc binary module because it couldn't download the pre-built one and that compile then failed (it would need xcode to compile)
I'm pretty sure composer-cli wouldn't install through npm install if you don't have xcode as there is another native module it will try to compile and would abort the install if that failed I thought
@davidkel Initially I did have trouble because I did not install nvm. I also did get an access error when installing composer but then I used sudo and it appeared install was successful. Now that you mention it, its seems npm may not have executed correctly; however, it did exit without any reported errors. Also I had checked that the C/C++ compiler was available. I can install the full version of xcode and do a reinstall. I'm assuming I should delete the current version of composer before reinstalling. Thanks.
@SanjivBhatia There are also other problems you can experience if you install node into /usr/local which is why we recommend using nvm as it avoids problems with directory and file permissions
@SanjivBhatia There are also other problems you can experience if you install node into /usr/local which is why we recommend using nvm as it avoids problems with directory and file permissions. Of course npm has ways to move where the global directory is which helps with this problem
Has left the channel.
Question -- Support for multiple channels within a single BNA: we need to create 3 channels for data for varying privacy reasons (one contains health data). Would we create 3 different connection profiles for each channel (cpA, cpB, cpC) and then deploy the BNA using cpA, cpB and cpC? Intent is to have 3 channels with the same business network definition each with their own ledger and state? Is this correct?
@CT123 yep, spot on
@davidkel I had node installed from before and it is in /usr/local/bin. nvm, which i installed today is in under my user account with another copy of node. Both versions are the same. Also seem to have 2 versions of npm. So it appears I need to delete the old stuff and reinstall and hopefully it works. Thanks for your help.
Thank you -- much appreciated! [ ](https://chat.hyperledger.org/channel/composer?msg=5wEdR9XqayewBjyT3) @sstone1
@sstone1 Do you happen to know if HSBN will support composer 16?
@theathibm it does
fantastic!
@sstone1 thanks! we'll migrate
@sstone1 Follow up Question: our BNA has as it's focus a single entity from which 3 streams of data (and respective transactions) is made available onto 3 separate channels. So within one unified BNA can we reconcile the 3 channel ledgers into a 'master transactional ledger'?
you can't currently share data between BNAs deployed to multiple channels
we want to add this feature - we call it "links" - but it's not there today
you'd need to have an external application read data from the 3 separate channels and combine it
Please do add that feature - we will use it. [ ](https://chat.hyperledger.org/channel/composer?msg=spAYLdBsEM4DYbyFs) @sstone1
This external application, could it be a separate BNA with 3 channels as 'peers' or nodes?
hi just upgraded a project, any pointers on where to start after the following error ```latest```
hi just upgraded a project, any pointers on where to start after the following error ``` Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Must create ConnectionManager with a ConnectionProfileManager implementation.```
oops
```
```{
"name": "fabric-network",
"type": "hlfv1",
"mspID": "Org1MSP",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"ca": {
"url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"orderers": [
{
"url" : "grpc://localhost:7050"
}
],
"channel": "composerchannel",
"timeout": 300
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=K3v6DifnZtJnxDLKL) Please help me to find the answer
Has joined the channel.
Hi guys, i'm following the install composer playground locally instructions and bump into this error
```
curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash
PAYLOAD_LINE=143
PAYLOAD_START=144
Development only script for Hyperledger Fabric control
Running 'downloadFabric.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
# Set ARCH
ARCH=`uname -m`
uname -m
# Grab the current directory.
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd
dirname "${BASH_SOURCE[0]}"
# Pull and tag the latest Hyperledger Fabric base image.
docker pull hyperledger/fabric-peer:$ARCH-1.0.4
Error response from daemon: Get https://registry-1.docker.io/v2/hyperledger/fabric-peer/manifests/x86_64-1.0.4: unauthorized: incorrect username or password
```
So I'm trying to run Composer on hlfv1, and am able to install the composer chaincode and start the network, and everything seems fine, but when I try to ping, I get this:
bcsdev@bcsdev:~/composer-test$ composer card create -p connection.json -u PeerAdmin -c Admin@orangegrowers.org-cert.pem -k private_sk -r PeerAdmin -r ChannelAdmin
Successfully created business network card file to
Output file: PeerAdmin@fabric-network.card
Command succeeded
bcsdev@bcsdev:~/composer-test$ composer card import -f PeerAdmin@fabric-network.card
Successfully imported business network card
Card file: PeerAdmin@fabric-network.card
Card name: PeerAdmin@fabric-network
Command succeeded
bcsdev@bcsdev:~/composer-test$ composer runtime install -c PeerAdmin@fabric-network -n tutorial-network
✔ Installing runtime for business network tutorial-network. This may take a minute...
Command succeeded
bcsdev@bcsdev:~/composer-test$ composer network start -c PeerAdmin@fabric-network -a ../fabric-tools/tutorial-network/tutorial-network@0.0.1.bna -A admin -S adminpw
Starting business network from archive: ../fabric-tools/tutorial-network/tutorial-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: Todd's test network
✔ Starting business network definition. This may take a minute...
Successfully created business network card to admin@tutorial-network.card
Command succeeded
bcsdev@bcsdev:~/composer-test$ composer network ping -c admin@tutorial-network
Error: Error trying to ping. Error: Error trying to query business network. Error: Connect Failed
Command failed
I can see that the chaincode is installed and instantiated on the channel. Any idea what could be wrong or where to look for what's causing the error?
@toddinpal after the admin card was created from the start command did you import the card ?
oops... nope..
@toddinpal so there is probably an old one still there which doesn't have the right info
@davidkel so I deleted the old, recreated it and imported it, and now I get:
bcsdev@bcsdev:~/composer-test$ composer network ping -c admin@tutorial-network
Error: Error trying to ping. Error: Error trying to query business network. Error: Endpoint read failed
Command failed
ahh.. interesting.. it crashed the peer
@toddinpal never heard of that before :-)
2017-11-29 23:01:37.346 UTC [eventhub_producer] Chat -> ERRO 009 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
2017-11-29 23:16:55.738 UTC [eventhub_producer] Chat -> ERRO 00a Error handling message: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID OrangeGrowers, received Org1MSP]]
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0xb49700]
goroutine 3186 [running]:
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal(0xc4202e1a70, 0x7f4907d58c90, 0xc421b01e60, 0xc421b01f50, 0x0, 0x0, 0x0)
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:381 +0x110
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler(0xd934c0, 0xc4202e1a70, 0x7f4907d58c90, 0xc421b01e60, 0xc421862140, 0x0, 0x0, 0x0, 0x8c700a, 0xc42187b8e0)
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112 +0x28d
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC(0xc4200aa500, 0x147dfe0, 0xc421b74000, 0xc420136900, 0xc4201ec720, 0x1459160, 0xc421b01ef0, 0x0, 0x0)
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:797 +0xc41
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream(0xc4200aa500, 0x147dfe0, 0xc421b74000, 0xc420136900, 0xc421b01ef0)
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:997 +0x15a6
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1(0xc4232add20, 0xc4200aa500, 0x147dfe0, 0xc421b74000, 0xc420136900)
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:561 +0xa9
created by github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:562 +0xa1
I think I know the problem... although it's weird it killed the peer
I think that is one for the the fabric developers on #fabric-peer-endorser-committer channel maybe
yup... thanks
@yipcma you shouldn't need any authorisation to pull down docker images from the hyperledger area in docker hub. Not sure why it would say that.
@hounded you might want to delete your node_modules directory and re-do npm install (make sure all your dependencies are at the same version in your package.json). If you were updating the composer components such as cli, playground, rest server then safer to uninstall first then re-install.
@davidkel thanks man I will give that ago, appreciate your time.
I successfully created a participant using nodejs API .. But, while I am trying to issue an identity to the created participant , authorization failure error
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
at IncomingMessage.
The code for issuing a new identity is: const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
let businessNetworkConnection = new BusinessNetworkConnection();
return businessNetworkConnection.connect('admin@hr-network')
.then(() => {
return businessNetworkConnection.issueIdentity('org.acme.biznet.Employer#TCS', 'tcsid1')
})
.then((result) => {
console.log(`userID = ${result.userID}`);
console.log(`userSecret = ${result.userSecret}`);
return businessNetworkConnection.disconnect();
})
.catch((error) => {
console.error(error);
process.exit(1);
});
can some one please help what might be the issue ? do i need to configure any aditional things ?
I even tried to use the command to issue the new identity , but still it failed..
composer identity issue -c admin@hr-network -f tcsid1.card -u tcsid1 -a "resource:org.acme.biznet.Employer#TCS"
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
@davidkel I installed the full version of xcode and reinstalled nvm and node. I'm still getting the same error while installing composer-cli. I get a file permission error and it goes into an infinite loop and I have ctrl-c out of it. Here's a snapshot of my commands and the error msg - the last lines kept repeating until I terminated the process. I'm on MacOS 10.13.1 - High Sierra . Here's the error snapshot -
@davidkel OOps - here's the error snapshot - Sanjivs-MBP:~ sanjivbhatia$ nvm use --lts
Now using node v8.9.1 (npm v5.5.1)
Sanjivs-MBP:~ sanjivbhatia$ node --version
v8.9.1
Sanjivs-MBP:~ sanjivbhatia$ npm --version
5.5.1
Sanjivs-MBP:~ sanjivbhatia$ sudo npm install -g composer-cli
Password:
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated crypto@0.0.3: This package is no longer supported. It's now a built-in Node module. If you've depended on crypto, you should switch to the one that's built-in.
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
/Users/sanjivbhatia/.nvm/versions/node/v8.9.1/bin/composer -> /Users/sanjivbhatia/.nvm/versions/node/v8.9.1/lib/node_modules/composer-cli/cli.js
> fsevents@1.1.3 install /Users/sanjivbhatia/.nvm/versions/node/v8.9.1/lib/node_modules/composer-cli/node_modules/fsevents
> node install
[fsevents] Success: "/Users/sanjivbhatia/.nvm/versions/node/v8.9.1/lib/node_modules/composer-cli/node_modules/fsevents/lib/binding/Release/node-v57-darwin-x64/fse.node" already installed
Pass --update-binary to reinstall or --build-from-source to recompile
> pkcs11js@1.0.10 install /Users/sanjivbhatia/.nvm/versions/node/v8.9.1/lib/node_modules/composer-cli/node_modules/pkcs11js
> node-gyp rebuild
gyp WARN EACCES user "root" does not have permission to access the dev dir "/Users/sanjivbhatia/.node-gyp/8.9.1"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/Users/sanjivbhatia/.nvm/versions/node/v8.9.1/lib/node_modules/composer-cli/node_modules/pkcs11js/.node-gyp"
gyp WARN EACCES user "root" does not have permission to access the dev dir "/Users/sanjivbhatia/.nvm/versions/node/v8.9.1/lib/node_modules/composer-cli/node_modules/pkcs11js/.node-gyp/8.9.1"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/Users/sanjivbhatia/.nvm/versions/node/v8.9.1/lib/node_modules/composer-cli/node_modules/pkcs11js/.node-gyp"
Has joined the channel.
@AkhilBhavirisetty You are welcome. Good luck with the implemenation.
@AkhilBhavirisetty You are welcome. Good luck with the implementation.
I am trying to deploy my bna file in sandbox environment, it is asking id and secret, where we'll find that? I was developing bna file through playground. How I can proceed? Please help me
Thank you for response @rthatcher , now some of my containers are stopped but ,previousliy when all containers are running i got same error. I am giving Org1 and Org2 in different Pc's, so is there any files to be changed to give IP address.
Is there anyone who has worked on composer angular app or frontend integration? I need help with the authentication and authorization part. Please help
@rthatcher : These issues are related to hyperledger composer only. i am able to list or vie business networks, but not cards in composer cli
anyone can help on this?
@SanjivBhatia You've used sudo to install composer-cli which you mustn't do. The point of nvm is you don't have to mess around with whether you need root access or not etc. Suggest you uninstall composer-cli using sudo, but install without using sudo
Hello! How to set credentials to card?
[ ](https://chat.hyperledger.org/channel/composer?msg=pHdEYLfxYP9DCsXkr) @rthatcher
Thanks :-)
Could you also please suggest whether we can validate a value entered for a field while adding asset with a lets say key-value set. I want to demonstrate validation from a web API with hard coded dictionary. E.g. The name and ID does not match with the govt database
is this tutorial alone is enough or not to add peers to business network ? https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html .
@wininani That tutorial is about how to define the connection profiles and cards required to interact with a multi-org fabric. The multi-org fabric comes from the fabric samples. If you want to know how to modify or create fabric networks you need to read the hyperledger fabric documentation http://hyperledger-fabric.readthedocs.io/en/release/
Hi all, I get a strange error in the newest version of composer-rest-server whenever I try to post an asset using the rest-server front-end: The asset has a relationship. The rest server throws an error "Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration".
@davidkel issue fixed, docker login issue
[ ](https://chat.hyperledger.org/channel/composer?msg=bHarAm8eBg6k8uZTo) @RobHekkelman hi there - are you providing the JSON data in the correct form? See https://hyperledger.github.io/composer/unstable/tutorials/queries.html and section "Step 6" - bullet 6. It has an example of the format of an Asset (Commodity) with a relationship that's being POST-ed - cheers
[ ](https://chat.hyperledger.org/channel/composer?msg=k77w28L4pPR4FYi6S) @argman it gets populated for you - so If we work with a new card and identity - using `composer identity issue --card admin@tutorial-network -u user4 -a resource:org.acme.biznet.Trader#TRADER2 -f user4.card` as an example - you would then need to import the user4.card card, to get it into the cardstore under $HOME/.composer - from there using `composer network ping -c user4@tutorial-network` sees the `client-data` credentials replete with user4's keys and cert
[ ](https://chat.hyperledger.org/channel/composer?msg=WkmmCGayBM9n2pDB9) @davidkel Ah, thankds David
[ ](https://chat.hyperledger.org/channel/composer?msg=ou9vZQLDPZPZ5LCAD) @JayasreeVenugopal try `composer card list` just to see if you have any existing cards for an existing business network eg `composer card list --name admin@my-network`. See https://hyperledger.github.io/composer/reference/composer.card.list.html and the command reference there - cheers
@mahoney1 : the issue has been resolved by placing the card file in .composer folder and imported
Clipboard - November 30, 2017 3:56 PM
Has joined the channel.
Can we have fabric development in playground?
Hi, I want to use login credentials for different participants in my network. It would be great if you could you please suggest how shall I proceed with it.
Will creating identity using Issue New Identity help. Kindly advice
[ ](https://chat.hyperledger.org/channel/composer?msg=fKeuzFvEQC7kR7PRY) @JayasreeVenugopal just FYI - the import cmd imports it into the .composer and its structure / permissions etc - the manual step you took (to put the .card file in that folder specifically) shouldn't be done - just saying. That specific directory, is for cards that are imported by whatever proper Composer method is used (CLI, API, Playground etc).
[ ](https://chat.hyperledger.org/channel/composer?msg=fKeuzFvEQC7kR7PRY) @JayasreeVenugopal just FYI - the import cmd imports it into the .composer and creates its structure / dir permissions etc - the manual step you took (to put the .card file in that folder specifically) shouldn't be done - just saying. That specific directory, is for cards that are imported by whatever proper Composer method is used (CLI, API, Playground etc).
[ ](https://chat.hyperledger.org/channel/composer?msg=PrapCDoRHy9quGq6F) @GulamJilani its for Composer-based development, specifically for writing the composite TP / JavaScript functions (as part of the BNA) and not for Go dev (for example).per se.
[ ](https://chat.hyperledger.org/channel/composer?msg=oKfH2GKaKPK6hSvbk) @mahoney1
Has joined the channel.
thanks.
I have one issue now, is that i get error when trying to do a network ping
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
[ ](https://chat.hyperledger.org/channel/composer?msg=CTFXH6NZxtPcpJQrY) @prmdmshra see https://hyperledger.github.io/composer/managing/identity-issue.html and the CLI to create an id and a card for the identity. Note the Hyperledger Fabric certificate authority generates an enrollment secret (not login credentials) that can be given to the participant, who can then use the enrollment secret to request their enrollment certificate and private keys from the Hyperledger Fabric CA / certificate authority.
I keep getting the following error on the playground when trying to run a transaction:
"Error: Cannot update type: Transaction to Asset"
Any leads on what typically prompts this error?
[ ](https://chat.hyperledger.org/channel/composer?msg=NuYfHmRtZBPLbLDDh) @mahoney1 Ahh, I didn't send the class# indentifier. Worked in the past i believe but that's ok. Thx!
@davidkel I initially tried installing without sudo and got a similar access error. It failed much sooner with a msg to install with root access. Will repeat without sudo and try again. I'm assuming others are not having this issue with High Sierra so its probably something I'm failing to do or with my system. Thanks again.
Where I can get namespace of "system" part?
[ ](https://chat.hyperledger.org/channel/composer?msg=WECpjj8fBPF2hZS53) @argman org.hyperledger.composer.system - see usage of namespace here in an Historian query https://hyperledger.github.io/composer/reference/historian.html
Clipboard - November 30, 2017 5:48 PM
but admin is already registered to business network
Clipboard - November 30, 2017 5:49 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=Mj7hp2m6f7vBmdrkj) @mayur.relekar something wrong in your transaction model definition sounds like.
Screen Shot 2017-11-30 at 5.54.14 PM.png
yes @mahoney1 found the issue and fixed it.
I have a new issue on playground where I have an asset with a Double param and when I am trying to run a transaction, I get the error in the screenshot above. My Double seems to be getting parsed as NaN.
did anyone know this error "No swap limit support" iam running fabric multi org in swarm, while connecting nodes im getting this error
[ ](https://chat.hyperledger.org/channel/composer?msg=rXZQxSWjkhMCDtW9L) @JayasreeVenugopal export the card in playground, then import it - so you can use it with the certifcate on the CLI - see also https://stackoverflow.com/questions/47319089/hyperledger-composer-0-15-0-sharing-network-with-the-local-playground/47331865#47331865 answer 2 cheers
@mayur - difficult to know without seeing the transaction CashtoCoins you modeled - but the error suggests the class is different to what you provided in your JSON. Best to check your model and transaction script fle, ensure you've supplied data for the right types - you can use 'Generate Random data' to check (and keep a copy of your JSON data with relationships aside, and cross-check)
@mayur - difficult to know without seeing the transaction CashtoCoins you modeled - but the error suggests the class is different to what you provided in your model Best to check your model and transaction script fle, ensure you've supplied data for the right types - you can use 'Generate Random data' to check (and keep a copy of your JSON data with relationships aside, and cross-check)
@mayur - difficult to know without seeing the transaction CashtoCoins you modeled - but the error suggests the class is different to what you provided in your model Best to check your model and transaction script fle, ensure you've supplied data for the right types - you can also use 'Generate Random data' to check (and keep a copy of your JSON data with relationships aside, and cross-check)
Hello. I just deployed my business network. I checked my `composer identity list` and it has one identity which is admin. Do I need to issue identity to all my participants in order to enable them to submit transactions or access the ledger? If yes, do i need to use `composer identity issue`? and How ACL is linked with this identity issuing?
@mahoney1
- I have supplied all required values to my assets
- Tested asset creation with 'Generate Random data' and it puts in double values where expected.
- Correctly sending the param for the transaction(I think)
Can I DM you a link to my .bna?
[ ](https://chat.hyperledger.org/channel/composer?msg=P79Pc3Sv6QPqPzy7c) @wininani suggest to check with your support team/resource - see also https://meta.discourse.org/t/why-does-docker-say-warning-no-swap-limit-support/29945/7 and you can check what's available with `free -m` cheers
[ ](https://chat.hyperledger.org/channel/composer?msg=zXE3nQzj3sjpLZf6K) @AkshayJindal 1) yes 2) yes 3) ACLs are applied to the Participants linked to the issued identities (you need to link the latter to the former) - see ACLs https://hyperledger.github.io/composer/reference/acl_language.html and see/check out the example networks with ACLs (in permissions.acl file ) -> https://github.com/hyperledger/composer-sample-networks/
[ ](https://chat.hyperledger.org/channel/composer?msg=ZdBpzBpaeQJxj6CJf) @mayur.relekar sure
@davidkel I finally got it working. Thanks again for your help.
@Manasabingi - There are 2 main challenges of running the MultiOrg setup on 2 physical machines.
1 - Initial setup and using the same generated Crypto material.
2 - Networking - making sure the containers on the separate machines know the addresses of the other containers and can connect. Network planning and testing is required at the beginning.
My advice would be to first try the MultiOrg tutorial on a single machine with sufficient resource.
@Manasabingi - There are 2 main challenges of running the MultiOrg setup on 2 physical machines.
1 - Initial setup and using the same generated Crypto material.
2 - Networking - making sure the containers on the separate machines know the addresses of the other containers and can connect. Network planning and testing is required at the beginning.
3 - Create/modify startup scripts for multihost.
My advice would be to first try the MultiOrg tutorial on a single machine with sufficient resource.
@rthatcher i have already done with connecting multi Org in single machine it is succeeded . Now i want to connect in multiple systems.
Thank you for response
Can i have to share my generated crypto material with other host?
And how other machine containers will know address of my machine containers and they can connect. Please help me.
@Manasabingi - Yes, you will need to share the Crypto material between the different Host machines.
Running Docker Containers on multiple hosts is not a Hyperledger Composer question, but a Docker Question. We try to answer Composer questions here, but not complex Docker situations. I would suggest looking into Kebernetes or Docker Swarm or some other solution for multi-host docker.
(I'm also editing my previous post to add point 3)
okay Thankyou.
[ ](https://chat.hyperledger.org/channel/composer?msg=FseH5d3QfHjMFkZJh) @mahoney1 `composer identity issue` command will create a card for the respective participant? and if yes, do i also need to import that card?
[ ](https://chat.hyperledger.org/channel/composer?msg=FseH5d3QfHjMFkZJh) @mahoney1 Thank you.. `composer identity issue` command will create a card for the respective participant? and if yes, do i also need to import that card?
@AkshayJindal yes as you've seen in the docs. eg. ` composer identity issue -c admin@network -f user4.card -u user4 -a "resource:net.biz.digitalPropertyNetwork.Person#mae@biznet.org"`` - you would then need to import the card, to get it into the cardstore under $HOME/.composer - from there using `composer network ping -c user4@digitalproperty-network` sees the `client-data` credentials replete with user4's keys and cert
when i try to execute peerAdmin card an error comes that peers not responding or card not found ?
hi good morning i am following this tutorial https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
to install hyperledger with rest in my local machine but unable to do that.?
Can someone help me to resolve this issue?
Error: No valid responses from any peers. Connect Failed??
@InduBhatti - what command are you running that generates that error? Have you restarted your machine since starting the tutorial?
composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network
during runtime install
@InduBhatti - please try `docker ps` to show if your containers are running. Also try `composer card list` to check your cards
hyperledger composer is running fine on my local machine but i am unable to execute composer-rest-server?
yup i did that. Everything is running fine . Cards are also available in composer card list but error comes no valid responses from peers. Connect failed?
@InduBhatti - Can you show me the command and error for composer-rest-server.
sure - let me re-run now and send you the error output
Can someone give me some insights, definition of an "asset registry"?
we got below error now when we ran ./startFabric.sh
DEBU 003 grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: Error while dialing dial tcp 172.18.0.5:7051: getsockopt: connection refused"; Reconnecting to {peer0.org1.example.com:7051
Following the examples, all the code I've been writing would stores assets of type A into registry A, and assets of type B into registry B.
However today, by mistake, I stored an asset of type A intro registry B ... and it let me.
So, is this a bug? Or did I misunderstand the meaning of registries?
now the docker ps shows this output:
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ab230cf00a78 hyperledger/fabric-peer:x86_64-1.0.4 "peer node start -..." About a minute ago Up About a minute 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
2f7b53215aec hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-e..." About a minute ago Up About a minute 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
82ff25de8815 hyperledger/fabric-orderer:x86_64-1.0.4 "orderer" About a minute ago Up About a minute 0.0.0.0:7050->7050/tcp orderer.example.com
fe5809ae9c16 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-..." About a minute ago Up About a minute 0.0.0.0:7054->7054/tcp
$ composer runtime install -c PeerAdmin@demo-network -n demo-network
×
Installing runtime for business network demo-network. This may take a minute...
Error: Error trying install composer runtime.
Error: The Composer runtime failed to install on 1 or more peers
running composer runtime install and got the following error:
$ composer runtime install -c PeerAdmin@arkilio-network -n arkilio-network
× Installing runtime for business network arkilio-network. This may take a minute...
Error: Error trying install composer runtime. Error: The Composer runtime failed to install on 1 or more peers
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ab230cf00a78 hyperledger/fabric-peer:x86_64-1.0.4 "peer node start -..." About a minute ago Up About a minute 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
2f7b53215aec hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-e..." About a minute ago Up About a minute 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
82ff25de8815 hyperledger/fabric-orderer:x86_64-1.0.4 "orderer" About a minute ago Up About a minute 0.0.0.0:7050->7050/tcp orderer.example.com
fe5809ae9c16 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-..." About a minute ago Up About a minute 0.0.0.0:7054->7054/tcp
@InduBhatti after running the ./startFabric.sh - did you run `createPeerAdminCard.sh` ? This should create the PeerAdmin card.
When you run `composer card list` you should see a card called PeerAdmin@hlfv1. This is the card you should use for the runtime install command.
yup i did that and the peerAdmin card got created and i can see it while executing composer card list
@InduBhatti - composer runtime install -c ~PeerAdmin@demo-network~ -n demo-network Use PeerAdmin@hlfv1
Screenshot from 2017-11-30 16-31-18.png
Screenshot from 2017-11-30 16-31-18.png
$ composer runtime install -c PeerAdmin@hlfv1 -n demo-network
× Installing runtime for business network demo-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
now i got this error?
??
Trying to delete composer cards and the commands listed in the one-org tutorial return the following errors -- can anyone let me know what we're doing wrong?
composer card delete -n PeerAdmin@fabric-network
composer card
@CT123 what version of the cli are you running ?
Is anyone working on a plug-in for Sublime Text?
@InduBhatti - so the error is showing a comms failure from the cli to the peer - suggesting that either the peer has stopped listening or that there is some Docker networking problem on your system.
I think I would suggest re-running the startFabric.sh script and the createPeerAdminCard.sh script (starting both in the fabric-tools folder)
I assume that you downloaded fabric-tools recently? and What version of Composer are you using?
If it fails after re-running the scripts we can check logs and Docker Network
version of composer is v0.15.2
@davidkel composer -v
v0.14.1
[ ](https://chat.hyperledger.org/channel/composer?msg=qunQE6JEYeQmqcXdJ) @davidkel
@rthatcher version is v0.15.2
I am struggling with this issue from last 2-3 days. Whenever i start from scratch I got the same error.
@CT123 official card support for the CLI came in 0.15.0, recommend you move to 0.16.0 though
@InduBhatti - We are running v0.16.0 now but this should work OK with 0.15.2. What OS and version are you using ?
we installed the latest composer 0.16.0 now and cleaned system - restarting now
we are using docker on windows
@InduBhatti - Windows is not support for the Dev environment - see this doc:
https://hyperledger.github.io/composer/installing/development-tools.html
Operating Systems: Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12
now we are getting this error:
$ composer runtime install -c PeerAdmin@hlfv1 -n demo-network
- Installing runtime for business network demo-network. This may take a minute...Assertion failed: 0, file src\win\handle.c, line 71
@InduBhatti - If you don't have access to a Mac or Ubuntu box - you could work with a VM
A VM on Windows could work with VMWare or VirtualBox perhaps or a VM could be provided on a cloud.
we are running in Docker : MINGW64_NT-10.0 LAPTOP-VKCNK3AB 2.5.0(0.295/5/3) 2016-03-31 18:47 x86_64 Msys
@InduBhatti - you are running in 'Docker on Windows'. Hyperledger Composer supports 'Docker on Mac and Docker on Ubuntu'
[ ](https://chat.hyperledger.org/channel/composer?msg=ufooDJoS9oi9Fh3fn) @nasht00 they're effectively a view into the ledger. Assets, participants and transaction are recorded in the world state in those respective registries and registry types.
installing now on : Linux LAPTOP-VKCNK3AB 4.4.0-43-Microsoft #1-Microsoft Wed Dec 31 14:42:53 PST 2014 x86_64 x86_64 x86_64 *GNU/Linux*
will do - much thanks! [ ](https://chat.hyperledger.org/channel/composer?msg=Tesu2jTrR9JhG8JxX) @davidkel
@AkshayJindal suggest to clear out cache - so just remove your $HOME/.composer . Next, go back to fabric-tools and run .createComposerPeerAdminCard.sh - then you can run your `composer network start` command (as your peer already has the runtime) and create your admin network card. Then you can import this card, then ping your network (eg admin@car-auction ) to test. If you need to refer - see equivalent here -> https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
@AkshayJindal suggest to clear out cache - so just remove your $HOME/.composer . Next, go back to fabric-tools and run ./createComposerPeerAdminCard.sh - then you can run your `composer network start` command (as your peer already has the runtime) and create your admin network card. Then you can import this card, then ping your network (eg admin@car-auction ) to test. If you need to refer - see equivalent here -> https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
@AkshayJindal suggest to clear out your card directory- so just remove your $HOME/.composer . Next, go back to fabric-tools and run ./createComposerPeerAdminCard.sh - then you can run your `composer network start` command (as your peer already has the runtime) and create your admin network card. Then you can import this card, then ping your network (eg admin@car-auction ) to test. If you need to refer - see equivalent here -> https://hyperledger.github.io/composer/tutorials/developer-tutorial.html - if still no joy, suggest then to do a teardown of your Fabric, once again clear the card dir - spin up a new set of Fabric containers and do the steps again above (of course for a new peer you will then need to do a `composer runtime install` as a prereq to the network start mentioned before)
Has joined the channel.
I have deployed a business network. I am also running node-red and composer-playground locally. I am creating participant using node-red and it is creating succesfully because I can retrieve participant using node-red. But I cannot see this participant in local composer playground. Also, If I am creating participant using playground compose then I cannot retrieve it using node-red. Could you please suggest me on this? How can I relate playground and node-red? I have given `admin@carauction-network` card to node-red nodes as well as playground.
I have deployed a business network. I am also running node-red and composer-playground locally. I am creating participant using node-red and it is creating succesfully because I can retrieve participant using node-red from registry. But I cannot see this participant in local composer playground. Also, If I am creating participant using playground compose then I cannot retrieve it using node-red. Could you please suggest me on this? How can I relate playground and node-red? I have given `admin@carauction-network` card to node-red nodes as well as playground.
Hi All! I'm currently connecting composer with installed HL fabric and on the step "composer network start " command I'm getting error "✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to execute transaction (Timeout expired while executing transaction)". What would be the best way to enable some traces or logs to see what's going on under in the background? Thanks
@ankashu check if your cards are in the wallet using `composer card list`.
@AkshayJindal thanks, I think it has to do something with connecting / pinging existing peers - judging by the "No valid responses from any peers".
@AkshayJindal The following Business Network Cards are available:
Connection Profile: fabric-network
┌──────────────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├──────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@fabric-network │ PeerAdmin │ │
└──────────────────────────┴───────────┴──────────────────┘
are there any logs available for composer commands?
@ankashu what platform have you installed on (OS platform)? what is your docker ps - check if your Fabric is running. Then the next thing would be to do a `composer runtime install` see dev tutorial for example -> https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
@ankashu what platform have you installed on (OS platform)? what does your `docker ps` output show - check if your Fabric is running. Then the next thing would be to do a `composer runtime install` see dev tutorial for example -> https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
[ ](https://chat.hyperledger.org/channel/composer?msg=stdoQAtPgL9tPckGK) @mahoney1 Thank you :) Now I have deployed a business network. I am also running node-red and composer-playground locally. I am creating participant using node-red and it is creating succesfully because I can retrieve participant using node-red from registry. But I cannot see this participant in local composer playground. Also, If I am creating participant using playground compose then I cannot retrieve it using node-red. Could you please suggest me on this? How can I relate playground and node-red? I have given `admin@carauction-network` card to node-red nodes as well as playground.
in Playground, import your businessnetwork card and then connect to the biz network you deployed to your Fabric.
Has joined the channel.
@rthatcher i am trying install docker in ubuntu and got the error below:
docker start ok
but docker status: docker is not running
@rthatcher i am trying to run createPeerAdminCard.sh but error comes failed to load composer-connector-hlfv1.. i tried to npm install but it is still not working??
@rthatcher i am trying to run createPeerAdminCard.sh but error comes failed to load composer-connector-hlfv1.. i tried to npm install but it is still not working??
@rthatcher i am trying to run createPeerAdminCard.sh but error comes failed to load composer-connector-hlfv1.. i tried to npm install but it is still not working??
blockchain foundation developer course demo needs updating: transactionId no longer needed to be defined explicitly in the modeling file
can we set up hyperledger on IBM Cloud using BareMetal servers ?
Has joined the channel.
Has joined the channel.
@rthatcher : i am getting error as :The current identity has not been registered: admin" when trying to ping network from cli
but i see admin is registered as Network admin in composer playground
Clipboard - December 1, 2017 10:24 AM
Has joined the channel.
Need urgent help please....how to get the history of all the transactions like create asset, update asset, delete asset, transactions related to update etc from different registries sequentially. Want to simulate same as we see "All transactions" in PlayGround. In historian APIs it is just giving the transactionid but not the attributes. All other explorer APIs provides the information respective to specific repositories..But I need all transactions (different APIs) in one call....
[ ](https://chat.hyperledger.org/channel/composer?msg=n7DSuHjt89YsRNPWR) @mahoney1 Hello again :) When I perform your commands in order you provided ping was fine. But when I load this card to REST API server I got next message: ```Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: client)```
Has joined the channel.
hi guys i have a question where can i find a use case for e payment by blockchain
hi,i use this command to install the composer on my ubuntu16.04 `sudo curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash`
but something wrong : Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock:Get http: ........
somone could help me ?
[ ](https://chat.hyperledger.org/channel/composer?msg=EzTWr5Kp6oBd3mjcC) i have solved this problem:grin:
hi guys I'm curious what you use to visualize the business networks that you design at the define phase. I'm looking for something interactive and built for the purpose (so no adobe illustrators). also, is there a standard of icons for illustrating the resources and their relations? Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=Z5XKsfKvNoPeoWvvH) I solved it to. But another one :) How to download card from `api/system/identities/issue` using javascript?
@yipcma you can generate a PlantUML diagram from a Business Network Definition. You can either use https://marketplace.visualstudio.com/items?itemName=HyperledgerComposer.composer-support-client or you can run `composer generator create` to create a PlantUML file from a business network archive.
thank you so much @dselman gonna give it a try :)
oh it's you, just following your tutorial on the foundation dev course :()
oh it's you, just following your tutorial on the foundation dev course :)
:-)
am halfway-through ;)
good luck!
thanks~
[ ](https://chat.hyperledger.org/channel/composer?msg=M9BgqS7bTn8DqTcC7) @mvaibhavshah see querying the historian section - historian record has a relationship to the transaction invoked -> https://hyperledger.github.io/composer/reference/historian.html
@mahoney1 Thanks for your response. Historian will useful in finding the sequence of the transaction but it will be difficult to get the attributes from different repositories, as historian currently stores only transaction type and transaction ids but not the actual attributes.
[ ](https://chat.hyperledger.org/channel/composer?msg=8BmDjqBnC2bBFiAr4) @mvaibhavshah Historian returns the historian record objects, for which you can resolve the transaction invoked and deltas in the transaction registry, and there is also the resolve method to resolve relationships available.
[ ](https://chat.hyperledger.org/channel/composer?msg=8BmDjqBnC2bBFiAr4) @mvaibhavshah Historian returns the historian record objects, for which you can resolve the transaction invoked and deltas in the transaction registry, and there is also the resolve method to resolve relationships in the Historian record.
@dselman
@dselman I'm having some continuity issues across the chapters in the foundation course. i've just finished deploying the rest-server from the developer tutorial, and then in the next lab i need to kill all the dockers running? i'm just curious if there's a way to build on what i've already done in lab 1 to test the fabric-client npm package.
Maybe following this would be easier? https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
This is in-sync with the latest releases
@yipcma : you can just use docker stop $(docker ps -aq) to stop all docker images.. and then after you can use docker start $(docker ps -aq) to start all the images which were running earlier
@dselman i've completed the tutorial from that link for lab 1, as i'm moving onto lab 2, i'm starting afresh, feeling quite disconnected to what i just learned.
i'm refering to this lab 2 tutorial https://hyperledger-fabric.readthedocs.io/en/latest/write_first_app.html
in addition, i face this error when trying to start fabric per lab 2 tutorial:
```
./startFabric.sh
# don't rewrite paths for Windows Git Bash users
export MSYS_NO_PATHCONV=1
docker-compose -f docker-compose.yml down
Removing network net_basic
WARNING: Network net_basic not found.
docker-compose -f docker-compose.yml up -d ca.example.com orderer.example.com peer0.org1.example.com couchdb
Creating network "net_basic" with the default driver
Pulling orderer.example.com (hyperledger/fabric-orderer:latest)...
ERROR: manifest for hyperledger/fabric-orderer:latest not found
```
in addition, i face this error when trying to start fabric per lab 2 tutorial:
```
./startFabric.sh
# don't rewrite paths for Windows Git Bash users
export MSYS_NO_PATHCONV=1
docker-compose -f docker-compose.yml down
Removing network net_basic
WARNING: Network net_basic not found.
docker-compose -f docker-compose.yml up -d ca.example.com orderer.example.com peer0.org1.example.com couchdb
Creating network "net_basic" with the default driver
Pulling orderer.example.com (hyperledger/fabric-orderer:latest)...
ERROR: manifest for hyperledger/fabric-orderer:latest not found
```
in addition, i face this error when trying to start fabric per lab 2 tutorial:
```
# inside fabric-samples/fabcar
./startFabric.sh
# don't rewrite paths for Windows Git Bash users
export MSYS_NO_PATHCONV=1
docker-compose -f docker-compose.yml down
Removing network net_basic
WARNING: Network net_basic not found.
docker-compose -f docker-compose.yml up -d ca.example.com orderer.example.com peer0.org1.example.com couchdb
Creating network "net_basic" with the default driver
Pulling orderer.example.com (hyperledger/fabric-orderer:latest)...
ERROR: manifest for hyperledger/fabric-orderer:latest not found
```
@yipcma - this channel is for Hyperledger Composer, not for Hyperledger Fabric.
If you want help with Fabric I would suggest the #fabric channel.
If you want to get started developing applications I would suggest using Hyperledger Composer and try the tutorial suggested by @dselman
Hi, everyone! "org.hyperledger.composer.system.Network#my-network@0.2.1" What does this passage mean?
Hi,everyone! "org.hyperledger.composer.system.Network#my-network@0.2.1" what does this passage mean?
[ ](https://chat.hyperledger.org/channel/composer?msg=Z5XKsfKvNoPeoWvvH) @argman How did you solve this error?
Screenshot from 2017-12-01 11-58-56.png
Screenshot from 2017-12-01 11-58-56.png
Hi all, I have a business network deployed but I can't find out how to add relations to an asset through the API using `composer-rest-server`. Any help?
@AkshayJindal - it looks like you may be missing the certificates try this command `composer card list --name admin@carauction-network` at the bottom of the output it will show either 'Credentials set' or 'No Credentials set'
(Your local composer playground did not 'import' your cards - it shares the same Cards as the CLI so that is why you can see them on the CLI and in Local Playground)
@rthatcher thanks for the note, i've already done that tutorial and am just trying reconcile the materials in lab 2 in the foundation course with fabric-composer.
Screenshot from 2017-12-01 12-43-48.png
Screenshot from 2017-12-01 12-43-48.png
@WatserAanDeHand - if you have an Asset with a --> relationship to say an Owner participant, in the owner field you could put the following `"owner": "resource:org.acme.biznet.Trader#t02"` - though I think you could just put in the t02 and the rest server would manage the situation. In this example t02 is the ID of a Trader.
yes correct, just the identifier is enough t02. But how do I add a new relation to an asset that has a --> Asset[] relation?
@AkshayJindal - when you create a card (either by starting a Business Network for the first time, or by issuing an identity) the card has a one time secret in it. The first time you use a card it connects with a one-time secret and then Certificates are downloaded and the secret is no longer valid. If you attempt to re-use the card with the secret in it you get the error you are seeing.
It seems a little strange that this worked in local playground, and then NOT on the CLI - have you run the composer card import since using playground? This would probably overwrite the 'good' card with the certificates with the original one with the redundant secret.
@WatserAanDeHand - try ["t01","t02"]
@rthatcher that works, but I have to put all existing relations in the array first, otherwise I lose them. Is this normal behaviour?
I also have to add all info of the (parent) asset as well
[ ](https://chat.hyperledger.org/channel/composer?msg=SXcaXvNWuL8CxxrYt) @rthatcher Hey. I have actually deployed my network again from scratch. As of now, I have not started local composer playground. I just pinged my network and it succeeded. Now I want to start local composer playground and import this card. Also, I want to start Node-red and would like to create my participant using Node-red and then I want to see my registry data in playground. Could you please tell me how should I proceed now with local composer/
[ ](https://chat.hyperledger.org/channel/composer?msg=SXcaXvNWuL8CxxrYt) @rthatcher Hello. I have actually deployed my network again from scratch. As of now, I have not started local composer playground. I just pinged my network and it succeeded. Now I want to start local composer playground and import this card. Also, I want to start Node-red and would like to create my participant using Node-red and then I want to see my registry data in playground. Could you please tell me how should I proceed now with local composer?
@AkshayJindal - repeat the command `composer card list --name admin@carauction-network` and you should see this time the Credentials Set. If you start Playground locally now (not in a Docker container) you should see that your cards are already present.
[ ](https://chat.hyperledger.org/channel/composer?msg=mtpof5mhaDri8cNF7) @rthatcher Yes it is showing me two cards automatically.
[ ](https://chat.hyperledger.org/channel/composer?msg=mtpof5mhaDri8cNF7) @rthatcher Yes it is showing me two cards automatically. What does it mean?
Screenshot from 2017-12-01 13-04-53.png
@AkshayJindal you can `connect now` and interact with the carauction-network !
@rthatcher how do I keep the composer-rest-server running without keeping a shell open? Will `pm2` work?
@WatserAanDeHand - In production you might choose to run it as a Docker Container since the Fabric servers are running in Containers. I think pm2 would work as I think pm2 is actually used by the official Rest server container! You could also try a script and starting as a service or use `nohup` as a quick solution.
Thanks @rthatcher. I got it working with `pm2` which is fine for the staging environment. Will run it in a docker container on production, thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=xsjCzkQXPZ4udWX2v) @mayur.relekar I have raised an issue for this NaN JSON error you reported fyi -> https://github.com/hyperledger/composer/issues/2915
[ ](https://chat.hyperledger.org/channel/composer?msg=sAuGJvsKvxyEnS56J) @rthatcher Thanks.. Yes I can connect with local composer playground. Now I want to use Node-red then what should I do with admin card? I think, i cannot use `amin@carauction-network` card as it is used by composer playground.
[ ](https://chat.hyperledger.org/channel/composer?msg=sAuGJvsKvxyEnS56J) @rthatcher Thanks.. Yes I can connect with local composer playground. Now I want to use Node-red then what should I do with admin card? I think, i cannot use `admin@carauction-network` card as it is used by composer playground.
[ ](https://chat.hyperledger.org/channel/composer?msg=sAuGJvsKvxyEnS56J) @rthatcher Thanks.. Yes I can connect with local composer playground. Now I want to use Node-red then what should I do with admin card? I think, i cannot use `admin@carauction-network` card as it is used by composer playground. Do I need to create new business card for Node-Red? I am bit confused here. Please help..
[ ](https://chat.hyperledger.org/channel/composer?msg=sAuGJvsKvxyEnS56J) @rthatcher Thanks.. Yes I can connect with local composer playground. Now I want to use Node-red then what should I do with admin card? I think, i cannot use `admin@carauction-network` card as it is used by composer playground. Do I need to create new business card for Node-Red? If yes, First i need to create partcipant in local composer then I need to issue identity which will create card? or can I directly create new card with admin user for Node-Red?
[ ](https://chat.hyperledger.org/channel/composer?msg=sAuGJvsKvxyEnS56J) @rthatcher Thanks.. Yes I can connect with local composer playground. Now I want to use Node-red then what should I do with admin card? I think, i cannot use `admin@carauction-network` card as it is used by composer playground. Do I need to create new business card for Node-Red? If yes, do i need to create partcipant in local composer then I need to issue identity which will create card? or can I directly create new card with admin user for Node-Red?
[ ](https://chat.hyperledger.org/channel/composer?msg=ptovLuGQNNtyDNskF) @mahoney1 hey, my docker images are up. 'composer runtime install' works OK, but 'composer network start' fails with the same message "✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to execute transaction (Timeout expired while executing transaction)". How can I debug this please - any logs, etc? Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=Phaf57gYvanXTEd6A) and my OS is Ubuntu 16.04.3 LTS
Has joined the channel.
Hi
how are u?
i get the same error when I try to create a business net
admcsm@botsrv-203:~/projects/tutorial/tutorial-network$ composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network
✖ Installing runtime for business network tutorial-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Command failed
please, can someone help me?
Thanks in advance!!!
hi @pcsanchez09 try looking at your docker container images logs, should be a container like 'dev-peer0-tutorial-network-0.15.1'
Has joined the channel.
@pcsanchez09 - are your Docker containers running for your Fabric? Have you restarted your machine since running the startFabric.sh script? Try `docker ps` to see if they are running.
in my case I found a message in peer0 log saying " failed to invoke chaincode name:"lscc" on transaction f9b22194d0454b7f82bb24f8fbabf7ffdb881b1e88f450d3de76ac2302a328a3, error: Failed to execute transaction (Timeout expired while executing transaction)", though I can invoke any other chaincode. any suggestions please?
Hi, I have created a custom Card Store and am trying to use it with the `composer-client`. I am finding that for some reason even though the cards are correct in my cardStore without the `~/.composer/client-data` folder my `businessNetworkConnection.connect` is failing with:
```
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
```
Is this a bug or am I doing something wrong?
Hi, I have created my own custom Card Store implementation and am trying to use it with the `composer-client`. I am finding that for some reason even though the cards are correct in my cardStore without the `~/.composer/client-data` folder my `businessNetworkConnection.connect` is failing with:
```
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
```
Is this a bug or am I doing something wrong?
(I am finding that it tries to recreate the credentials in `~/.composer/client-data` folder with only the private key, which is not the correct one specified in the card)
I'm using composer `0.16.0`
@bsteinfeld - further to your question, does anyone know why Composer's implementation of CryptoKeyStore duplicate the keys in the ".composer/client-data" folder rather than just reusing this data from the ".composer/cards" folder? Is there a plan to consolidate these?
@here it's hard to follow the interleaved questions, with no context, or the command sequence followed (that led to an error) or indeed the fact that in some cases, customisations have been carried out to environments. The Composer channel (as a general guide) is for discussions, requests, requirements and queries about Composer uses. . If you are stuck with a problem, as often reported here - I recommend you 1) *carefully* complete the developer tutorial or indeed the single/multi-org tutorials to get a sense of deploying a business network 2) review the samples )scripts, models, unit tests) in https://github.com/hyperledger/composer-sample-networks 3) browse the docs https://hyperledger.github.io/composer/ to get a good sense of the reference information that is there 4) read existing Stack overflow Q & A 5) search on Rocketchat history using search button and /your_search_text/ as a delimited search 6) failing that - create a stack overflow question tagged with the #hyperledger-composer tag.
@here it's hard to follow the interleaved questions, with no context, or the command sequence followed (that led to an error) or indeed the fact that in some cases, customisations have been carried out to environments. The Composer channel (as a general guide) is for discussions, requests, requirements and queries about Composer uses. . If you are stuck with a problem, as often reported here - I recommend you 1) *carefully* complete the developer tutorial or indeed the single/multi-org tutorials to get a sense of deploying a business network 2) review the samples )scripts, models, unit tests) in https://github.com/hyperledger/composer-sample-networks 3) browse the docs https://hyperledger.github.io/composer/ to get a good sense of the reference information that is there 4) read existing Stack overflow Q & A https://stackoverflow.com/questions/tagged/hyperledger-composer 5) read more about Business Network cards usage https://hyperledger.github.io/composer/playground/id-cards-playground.html 6) search on Rocketchat history using search button and /your_search_text/ as a delimited search 7) failing that - create a stack overflow question tagged with the #hyperledger-composer tag.
@here it's hard to follow the interleaved questions, with no context, or the command sequence followed (that led to an error) or indeed the fact that in some cases, customisations have been carried out to environments. The Composer channel (as a general guide) is for discussions, requests, requirements and queries about Composer uses. . If you are stuck with a problem, as often reported here - I recommend you 1) *carefully* complete the developer tutorial or indeed the single/multi-org tutorials to get a sense of deploying a business network 2) review the samples (scripts, models, unit tests) in https://github.com/hyperledger/composer-sample-networks 3) browse the docs https://hyperledger.github.io/composer/ to get a good sense of the reference information that is there 4) read existing Stack overflow Q & A https://stackoverflow.com/questions/tagged/hyperledger-composer 5) read more about Business Network cards usage https://hyperledger.github.io/composer/playground/id-cards-playground.html 6) search on Rocketchat history using search button and /your_search_text/ as a delimited search 7) failing that - create a stack overflow question tagged with the #hyperledger-composer tag.
@here it's hard to follow the interleaved questions, with no context, or to understand the command sequence you followed (ie that led to an error) or indeed the fact that in some cases, customisations have been carried out to environments that may affect what you might have expected to see. The Composer channel (as a general guide) is for discussions, requests, requirements and queries about Composer uses. . If you are stuck with a problem, as often reported here - I recommend you 1) *carefully* complete the developer tutorial or indeed the single/multi-org tutorials to get a sense of deploying a business network 2) review the samples (scripts, models, unit tests) in https://github.com/hyperledger/composer-sample-networks 3) browse the docs https://hyperledger.github.io/composer/ to get a good sense of the reference information that is there 4) read existing Stack overflow Q & A https://stackoverflow.com/questions/tagged/hyperledger-composer 5) read more about Business Network cards usage https://hyperledger.github.io/composer/playground/id-cards-playground.html 6) search on Rocketchat history using search button and /your_search_text/ as a delimited search 7) failing that - create a stack overflow question tagged with the #hyperledger-composer tag.
[ ](https://chat.hyperledger.org/channel/composer?msg=Rm4Ysnw9eAsW7AJ8s) @mahoney1 Are you saying don't ask technical questions in RocketChat?
@bstenfield Not saying that, no.
@bstenfeld Not saying that, no.
@bsteinfeld not saying that, no.
none of the steps (1 through 7) include asking here
If you'd like specific code for the issue I'm having here:
```
// card is defined as a Valid IdCard
const MemoryCardStore = require('composer-common').MemoryCardStore;
let cardStore = new MemoryCardStore();
cardStore.put('card@domain', card)
.then(() => {
let businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore })
return businessNetworkConnection.connect('card@domain').then(businessNetworkDefinition => {
console.log("successfully connected")
console.log(businessNetworkDefinition)
}).catch(err => {
console.log(err)
})
});
```
This will always fail as the card is not defined in the `~/.composer/client-data` folder. If I create said folder (with right priv/pub/connectionJSON it works).
@mahoney1 - thank you for the pointers. the sample networks aren't as elaborate with examples on acls/permissions and tests that can be run once an acl has been setup (the pii example is one where there are some rules being applied). i went through an IBM sample in github (https://github.com/IBM/BlockchainSmartContractTrading-CompositeJourney), and though the acls are elaborate there, they seem to be buggy am trying to understand better.
buggy as in member can create products while acl seems to define that they should not be able to
would you be able to share some good references for acls?
sorry, meant to ask sample networks with complex acls
@bsteinfeld Cards still need to be imported into the Cardstore - using `AdminConnection.importCard` (Create the admin connection passing the card store, the same as the business network connection earlier) and client-data gets populated when its used.not by putting something there directly.
Has joined the channel.
@mbharadwaj PII network -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/permissions.acl or Car Auction -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/permissions.acl
@bsteinfeld this code sample may help -> https://github.com/hyperledger/composer/blob/master/packages/generator-hyperledger-composer/generators/businessnetwork/templates/test/logic.js
@mahoney1 Hello. I have connected my business network with local composer playground but now I want to connect it with Node-Red. In composer node-red nodes, I need to mention business card name. For this, do I need to create a new business network card as my `admin@carauction-network` card is already in use by local composer playground? If yes, do i need to create new participant in composer or using CLI and then issue an identity for that participant and then use that card (created by issue) in node-red for accesing the business network?
@mahoney1 Hello. I have connected my business network with local composer playground but now I want to connect it with Node-Red simultaneoulsy. In composer node-red nodes, I need to mention business card name. For this, do I need to create a new business network card as my `admin@carauction-network` card is already in use by local composer playground? If yes, do i need to create new participant in composer or using CLI and then issue an identity for that participant and then use that card (created by issue) in node-red for accesing the business network?
you can use admin@carauction-network yes (if you wish) in your node-red flow (because you have imported it into $HOME/,composer and assuming you're using it with the same Fabric you have used previously (can check with your imported card `composer identity list admin@examplenetwork` where you replace with your nw).
you can use admin@carauction-network yes (if you wish) in your node-red flow (because you have imported it into $HOME/,composer and assuming you're using it with the same Fabric you have used previously (can check with your imported card `composer identity list admin@examplenetwork` where you replace with your nw). . If you decide to issue new identity + card, then you would need a mapped participant yes)
[ ](https://chat.hyperledger.org/channel/composer?msg=QPAj2nn8f9NC6aYDp) @mahoney1 Thanks. Now I am using `admin@carauction-network` for local playground as well as node-red at same time. I created one participant/asset called "Joe" using Node-red and one participant "Akshay" using local composer. But when I am doing `composer network list -c admin@carauction-network`. It is showing me only "Joe" as my assets. I am not sure know why local composer playground asset is not present there.
Screenshot from 2017-12-01 16-56-49.png
Screenshot from 2017-12-01 16-58-48.png
@AkshayJindal - With Playground Local it is possible to use an hlfv1 Fabric or a Web Fabric in the Browser memory. Is it possible that in Playground you have added data to the Web fabric instead of the Fabric in your Docker containers?
You can't see Akshay from the CLI - can you see Joe in Playground?
@davidoevans
They aren't replicated, the information in the card is how composer wants to transport the information. The information in client-data is how connectors want to persist information and can persist in more than just the file system.
[ ](https://chat.hyperledger.org/channel/composer?msg=svjnyekR3p5QPxEa7)
Hi @davidkel can you please advise if Composer can run on Power PC platform? I have a problem with instantiating composer chaincode and the error that I have in a chaincode container suggests that there might be an issue with the runtime
@ankashu We've never tested on a PPC and as such we don't support PPC. Out of interest what error are you getting ?
@davidkel here's the output from chaincode container
panic: SyntaxError: invalid number literal (line 1)
goroutine 23 [running]:
panic(0x106f2680, 0xc420167310)
/opt/go/src/runtime/panic.go:500 +0x3a8
main.(*Composer).createJavaScript(0xc420154ce0)
/chaincode/input/src/composer/composer.go:110 +0x350
main.NewComposer(0xc420154ce0)
/chaincode/input/src/composer/composer.go:43 +0x174
main.(*ComposerPool).Get(0xc420164080, 0x0)
/chaincode/input/src/composer/composerpool.go:55 +0x1e4
main.(*Chaincode).Init(0xc420162130, 0x10d5f260, 0xc420090580, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/chaincode/input/src/composer/chaincode.go:55 +0x2b4
github.com/hyperledger/fabric/core/chaincode/shim.(*Handler).handleInit.func1(0xc4202164d0, 0xc42016d810)
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/shim/handler.go:242 +0x510
created by github.com/hyperledger/fabric/core/chaincode/shim.(*Handler).handleInit
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/shim/handler.go:260 +0x48
any chance to have a Power build please? this is for customer project
@ankashu So the 0.16.x release uses Go Chaincode. However we are moving off of this to a pure javascript implementation using the Node.js chaincode support that is coming for fabric 1.1
thanks Dave - I have some other Q, will send them via email
@here. composer rest server is taking business network card as input. So if an org in involved in more than one channel, do we have to create two rest servers for that org to talk to multiple channels ?. Is it possible to specifiy more than one channel in the business network card and configure composer rest server to pick the channel depending on the request ?.
@Sandeep - you are correct the REST server depends on a Business Network Card with a single channel.
@rthatcher . any best practice/strategy to follow if an org is involved in more than one channel ?.
@rthatcher . any best practice/strategy to follow if an org is involved in more than one channel ?.
[ ](https://chat.hyperledger.org/channel/composer?msg=MHCWuRL8BKzPaHG5q) @Sandeep in addition, you need a REST server per business network that is/was instantiated on a channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=MHCWuRL8BKzPaHG5q) @Sandeep in addition, you need a REST server instance per business network that is/was instantiated on a channel.
thanks @rthatcher and @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=ahqcoaWoeHoMtwF3C) @rthatcher I think, I am using hlfv1 with composer playground because I deployed it locally and playground is showing `hlfv1 carauction-network` on the left hand top corner. Also, I could not see "Joe" in my playground. With ` composer network list -c admin@carauction-network`, I can see only "Joe" (asset created by node-red)
[ ](https://chat.hyperledger.org/channel/composer?msg=ahqcoaWoeHoMtwF3C) @rthatcher I think, I am using hlfv1 with composer playground because I deployed it locally and playground is showing `hlfv1 carauction-network` on the left top corner. Also, I could not see "Joe" in my playground. With ` composer network list -c admin@carauction-network`, I can see only "Joe" (asset created by node-red)
Local Playground
Has joined the channel.
Has joined the channel.
i have installed the composer locally ,and it is down, how can i restart it ?
Has joined the channel.
should try composer network --help command to get all the list of options available to you.
Hi all, I am facing problem in forming the JSON for very simple transaction via API
logic_js.png
The expected body for processing the trade is `{
"$class": "org.bhanu.io.CommitTrade",
"giver": {},
"taker": {},
"transactionId": "string",
"timestamp": "2017-12-02T08:01:53.840Z"
}`
What should be the value of giver and taker, I have tried multiple formats but I am getting `"Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration {name=giver, type=org.bhanu.io.User, array=false, optional=false}",` error for most of my trials
Can anyone just point me to the right direction or tell something about what I am doing wrong
Has joined the channel.
hi
how to change asset id to double type?
Now it is string type. I can't assign a double type to it
Has joined the channel.
Hi
Hi
I am facing an issue while executing the below command :-
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile test-network@0.0.1.bna --file networkadmin.card
Error :-
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Transaction returned with failure: SyntaxError: unterminated statement(line 58)
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=w6xj4vuaiw4puywFZ) @john111 It is always a string by default.
[ ](https://chat.hyperledger.org/channel/composer?msg=en7pM6A2dAvAWp7Qh) @varunagarwal is there any way to change?
Hi guys, i'm through with the composer tutorials on deploying networks, and tried the sample angular2 app. I'm curious how does one manage the participants' identity (user accounts). So far all the operations/transactions done on the REST server seems to be from the admin perspective. I'd appreciate a lot if anyone could give me some pointers as to how identity management is done for users/participants via the REST server. thanks a lot in advance.
Has joined the channel.
I used the Angular generator a couple of months ago and it worked well, creating CREU code for the assets in the business model. Now I can't find it in the tutorial. Anyone know where it's gone?
Has joined the channel.
@GiriMishra Hi, I am having the same issue today, although it was working few days ago. Any luck on your side solving this?
Has joined the channel.
Hi everyone, I am new here.
I am new to Composer and little bit stuck with queries:
`query`
`query q1 {
statement:
SELECT org.acme.test.asset1
WHERE (
_$id == asset2.id
)
}`
Here are my two assets:
`asset asset1 identified by id {
o String id
--> asset2 asset2
}
I am new to Composer and little bit stuck with queries:
`query`
`query q1 {
statement:
SELECT org.acme.test.asset1
WHERE (
_$id == asset2.id
)
}`
Here are my two assets:
`asset asset1 identified by id {
o String id
--> asset2 asset2
}
`asset asset2 identified by id {
o String id
}
I am new to Composer and little bit stuck with queries:
```
query
query q1 {
statement:
SELECT org.acme.test.asset1
WHERE (
_$id == asset2.id
)
}
Here are my two assets:
asset asset1 identified by id {
o String id
--> asset2 asset2
}
asset asset2 identified by id {
o String id
}
```
When using Composer Explorer, I can see that I have instances of asset2 and asset1 and my query q1 should return result. I get 200, but response is empty. Am I doing something wrong?
When using Composer Explorer, I can see that I have instances of asset2 and asset1 and my query q1 should return result. I get 200, but response is empty. Am I doing something wrong? Thanks.
@bhanuc 1 format is `"giver": "resource:org.bhanu.io.User#123456" ` and "taker": "resource:org.bhanu.io.User#666666"` where those Users already exist as participants - also you do not supply transactionId and timestamp - remove them they are already created by the transaction itself.
@bhanuc 1 format is `"giver": "resource:org.bhanu.io.User#123456" ` and `"taker": "resource:org.bhanu.io.User#666666"` where those Users already exist as participants - also you do not supply transactionId and timestamp - remove them they are already created by the transaction itself.
@dzeno hi there - just use the field name not `_asset.fieldname_` eg . `query q1 {
statement:
SELECT org.acme.test.asset1
WHERE (
_$id == id
)
}` see examples of queries here - https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry and also read more on this tutorial https://hyperledger.github.io/composer/tutorials/queries.html
@dzeno hi there - just use the field name not `asset.fieldname` eg . ```query q1 {
statement:
SELECT org.acme.test.asset1
WHERE (
_$id == id
)
}``` see examples of queries here - https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry and also read more on this tutorial https://hyperledger.github.io/composer/tutorials/queries.html
@dzeno hi there - try getIdentifer() ` eg . ```query q1 {
statement:
SELECT org.acme.test.asset1
WHERE (
_$id == asset2.getIdentifier()
)
}``` see examples of queries here - https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry and also read more on this tutorial https://hyperledger.github.io/composer/tutorials/queries.html
@mahoney1 Hi there. Thanks for your response but I think I might not have been clear enough in mo problem.
I want assets 1 which have connection to a specific asset2 >
```
query
query q1 {
statement:
SELECT org.acme.test.asset1
WHERE (
_$id == asset2.id2
)
}
Here are my two assets:
asset asset1 identified by id {
o String id1
--> asset2 asset2
}
asset asset2 identified by id {
o String id2
}
```
the query runs without error and returns 200 but its always empty...
[ ](https://chat.hyperledger.org/channel/composer?msg=dQNmsRmCnLoxcEAGM) @dzeno amended by response to first query - for your second one it would be something like `_id == asset2.getIdentifier()` (as id2 is the identifying field (and 2nd asset should say `identified by id2` etc etc
[ ](https://chat.hyperledger.org/channel/composer?msg=dQNmsRmCnLoxcEAGM) @dzeno amended my response to first query - for your second one it would be something like `_id == asset2.getIdentifier()` (as id2 is the identifying field (and 2nd asset should say `identified by id2` etc etc
[ ](https://chat.hyperledger.org/channel/composer?msg=dQNmsRmCnLoxcEAGM) @dzeno amended my response to first query - for your second one it would be something like `_id == asset2.getIdentifier()` (as id2 is the identifying field (and 2nd asset should say `identified by id2` etc etc also might want to call your 'fields' something different like a2 (less confusing) and therefore `a2.getIdentifier()` etc etc
[ ](https://chat.hyperledger.org/channel/composer?msg=dQNmsRmCnLoxcEAGM) @dzeno amended my response to first query - for your second one it would be something like `_id == asset2.getIdentifier()` (as id2 is the identifying field (and 2nd asset should say `identified by id2` etc etc) also might want to call your 'fields' something different like a2 (less confusing) and therefore `a2.getIdentifier()` etc etc
[ ](https://chat.hyperledger.org/channel/composer?msg=dQNmsRmCnLoxcEAGM) @dzeno amended my response to first query - for your second one it would be something like `_$id == asset2.getIdentifier()` (as id2 is the identifying field (and 2nd asset should say `identified by id2` etc etc) also might want to call your 'fields' something different like a2 (less confusing) and therefore `a2.getIdentifier()` etc etc
hi, i'm following https://hyperledger.github.io/composer//managing/identity-issue.html , it seems there's a gap between issuing an identity to a participant and using the card to ping the network, i'm getting
```
composer network ping -c alice1@tutorial-network
Error: Card not found: alice1@tutorial-network
Command failed
```
after `composer identity issue ...` a card is created as specified in `-f`, but how exactly may one use that card?
[ ](https://chat.hyperledger.org/channel/composer?msg=y9P3QrDPyf8PqfsQ6) @mahoney1 Thanks a lot. But unfortunately it would seem that we cannot use `getIdentifier()` in queries.qry. I am not sure why is this not working.
@yipcma you need to do `composer card import -f your_filename.-network.card` (whatever you called it) eg `composer card import -f alice@tutorial-network.card` .Next, do a composer network ping with the card. When you create a card (either by starting a Business Network for the first time, or by issuing an identity) the card has a one time secret in it. The first time you use a card (eg. ping) it connects with a one-time secret and then Certificates are downloaded and the secret is no longer valid.
Thank you @mahoney1 the doc could add your very helpful comment before the ping for clarification for new-comers.
@dzeno ok - lets revisit - you're querying asset registry `asset1` which has a relationship field - so this should work - this is an example -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry#L15 and this is the model file https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/models/trading.cto in this case `owner` (on Commodity, the registry being queried) is a relationship to a Participant `Trader` - there's no reason your query shouldn't work also - depends whether you are supplying a FULLY QUALIFIED URI parameter - so this should work ```query q1 {
description: "Select all matching assets"
statement:
SELECT org.acme.test.asset1
WHERE ( a2 == _$my_supplied_id )
}
Here are the the assets:
asset asset1 identified by id1 {
o String id1
--> asset2 a2
}
asset asset2 identified by id2 {
o String id2
o String mytext
}
Suggest you do the Trade queries tutorial -> https://hyperledger.github.io/composer/tutorials/queries.html and you'll see what is POSTed on the REST server - in particular the 'owner' query - it is the same principle. cheers
[ ](https://chat.hyperledger.org/channel/composer?msg=kwna2PKmPdvZq2FzS) @yipcma ok sure.
Could you please suggest how could we generate a QR Code for the created asset in Composer?
Could you please suggest how could we generate a QR Code for the asset created in Composer?
Could you please suggest whether we can generate a QR Code for the asset created in Composer?
Hi guys, when I try to run the command 'yo hyperledger-composer:businessnetwork'
Hi guys, when I run the command 'yo hyperledger-composer:businessnetwork', I get the error message '''Error hyperledger-composer:businessnetwork
You don't seem to have a generator with the name “hyperledger-composer:businessnetwork” installed.
But help is on the way:
You can see available generators via npm search yeoman-generator or via http://yeoman.io/generators/.
Install them with npm install generator-hyperledger-composer:businessnetwork.
To see all your installed generators run yo without any arguments. Adding the --help option will also show subgenerators.
If yo cannot find the generator, run yo doctor to troubleshoot your system.''' I ran 'yo doctor' and got the following result '''Yeoman Doctor
Running sanity checks on your system
✔ Global configuration file is valid
✔ NODE_PATH matches the npm root
✔ Node.js version
✔ No .bowerrc file in home directory
✔ No .yo-rc.json file in home directory
✔ npm version
Everything looks all right!'''. What do I do to fix this?
Has joined the channel.
i can not download or install any of the Pre-requisites Hyperledger Composer items docker you etc. error cant find etc.
is there a software bundle or cloud solution?
Hi guys, when I run my code with the admin card created during the tutorial to issue identities to participants, I get: "fabric-ca request register failed with errors [[{\"code\":400,\"message\":\"Authorization failure\"}]]". My question therefore is: "Is there a way of providing this user with the rights to issue identities, if so - how do I do that - it's not clear from the docs"
Has joined the channel.
Hi !
I am getting error while running ./createPeerAdminCard.sh
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'
@chessy looks like you are using node 9.2 which isn't supported
@chessy looks like you are using node 9 which isn't supported
[ ](https://chat.hyperledger.org/channel/composer?msg=cFYeK9YCgrEyX8vXX) Hello. It worked :) Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=cFYeK9YCgrEyX8vXX) @rthatcher Hello. It worked :) Thank you.
Has joined the channel.
I'm having a lot of problems determining the best way to login in as another user to test my composer project.
I used to issue a new identity with
var promise1 = businessNetworkConnection.issueIdentity(NS+'.Trader#TR', 'TR')
.then((result) => {
TR_ID={"userID":result.userID,"userSecret":result.userSecret};
});
And then login with
it('Login as the Reciever', () => {
return businessNetworkConnection.disconnect().then(()=>{
businessNetworkConnection = new BusinessNetworkConnection({ fs: bfs_fs });
return businessNetworkConnection.connectWithDetails('defaultProfile', 'trading-network', RC_ID.userID, RC_ID.userSecret);
});
});
This no longer works in the new version passing the error
TypeError: Cannot read property 'type' of undefined
at ConnectionProfileManager.connect (node_modules/composer-common/lib/connectionprofilemanager.js:160:72)
at BusinessNetworkConnection.connectWithDetails (node_modules/composer-client/lib/businessnetworkconnection.js:400:46)
at businessNetworkConnection.disconnect.then (test/logic.js:139:50)
My assumption is in node_modules/composer-common/lib/connectionprofilemanager.js:160:72 is additionalConnectOptions is not longer optional
hyperledger.png
Hello All i have generated REST APIS from my composer solution can anyone tell me how to call REST APIS from external applications ????
Hello Everyone, does anyone know how to write the role-based authentication module for composer angular application?
Hi, trying to figure out how to deploy my custom business network to a multi-org setup. Trying to follow the tutorial but it seems very closely tied to the first-network from the fabric-samples. Any pointers to somewhere in this chat where this is explained(tried searching) or how my workflow would be different from the tutorial?
Hello All i have generated REST APIS from my composer solution can anyone tell me how to call REST APIS from external applications ????
@yogesh.fulsunge
That's a little broad. Are you asking how to call ANY REST API from ANY APPLICATION?
Or is there something specific about the composer APIs that bothers you?
i need to call any REST API which i generated using composer-rest-server from ANY EXTERNAL APPLICATION how to do it ??
because i am working on one application which will create assets , participants, smart contracts, etc and i can manage it through one app dashboard the application should internally invoke REST APIS to GET,POST,DELETE operations
@yogesh.fulsunge you can call the rest api just like you call any other rest api, depends on your application if you are using npm you could use axios library for example to make the calls.
i have a related question to this @nasht00 what's the best practice in setting up multiple users with their own identities/wallets through the rest api? i've tried the tutorial where i need to upload the certificate i somehow get from the composer cli where i generated with the admin card. i wonder how this should be done when the user doesn't have those access (naturally) and i don't want them to upload certificates etc.
i have a related question to this @nasht00 what's the best practice in setting up multiple users with their own identities/wallets through the rest api? i've tried the tutorial where i need to upload the certificate i somehow get from the composer cli where i generated with the admin card. i wonder how this should be done when the user doesn't have those access (naturally) and i don't want them to upload certificates etc. Any pointers are much appreciated.
Sorry, can't help you there. I'm just a user and didn't get to that point yet :)
@suryasuresh06 - how did you restart the Fabric? Did you use the startFabric.sh script? This script clears down your existing Fabric and creates a new one. If this is your situation I would suggest deleting the card admin@finovatia and starting the composer runtime install and network start again.
```
The current identity has not been registered:admin
```
Anyone know why I am receive this when I save resources?
```
2017-12-04 09:37:50.158 UTC [eventhub_producer] SendProducerBlockEvent -> DEBU 6eae Exit
2017-12-04 09:37:50.208 UTC [eventhub_producer] validateEventMessage -> DEBU 6eaf ValidateEventMessage starts for signed event 0xc422715a40
2017-12-04 09:37:50.209 UTC [eventhub_producer] deRegisterHandler -> DEBU 6eb0 deregistering event type: BLOCK
2017-12-04 09:37:50.223 UTC [eventhub_producer] Chat -> ERRO 6eb1 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
```
This shows on Peer docker log
@yipcma - The .card file for the Network Admin which is created when you use the command composer network start contains a 'one time' secret. You then import that card into your wallet for the CLI and you can see the card by using the command 'composer card list'. At this point neither the .card file or the Wallet contain the certificates. The first time that you use the network admin card the secret is used and the certificates are downloaded into the CLI Wallet. If you try and use the .card file in the REST server you will get errors as no certificates exist in the card file (only the expired secret). My usual sequence of commands is as follows:
composer runtime install
composer network start
compose card import
composer network ping
composer card export - this export command will write a new .card file containing the certificates and can be used in the wallet of the REST API.
@rthatcher yes i restarted using the startFabric.sh. Once i delete the card, should i go through the entire process of writing the model, logic files. Is there any way to directly re use the card
@suryasuresh06 - I assume you still have the .BNA file? So your development effort spent with the Model and the Logic is still valid. Start with 'composer runtime install'
@rthatcher thanks for the speedy response. Yes, i understand that the cards a one-time only. My question is what's the best practice in issuing certificates for users to include to their wallet via the composer-rest-server.
@rthatcher thanks for the speedy response. Yes, i understand that the cards a one-time only. My question is what's the best practice in issuing certificates for users to include to their wallet via the composer-rest-server. I imagine something automatic that does not involve downloading/uploading files manually.
@levinkwong - what composer commands are you using to create this problem?
@rthatcher I use Node.js to send a transaction to composer, which will save a few resources
@rthatcher I can see the resources being saved on couchDB (I `cat` the couchDB files) but nothing returned when I run `composer network list -n my-network -p hlfv1 -i admin -s adminpw`
By resources, I mean composer Assets
@levinkwong - the format of the command you are using for composer network list is for v0.14.* or earlier. What version do you have installed? I would suggest you upgrade to the latest version v0.16.0 and use the new format of the commands with the Business Network Cards.
v0.12.1
Node.js library: "composer-client": "^0.12.1"
@levinkwong - that version is quite old now. I would suggest taking copies of your model, logic, queries and ACLs and then uninstall/reinstall composer. I would also recommend removing Containers and downloading a new version of Fabric tools.
@rthatcher Sorry, I don't think I can do that ...
I found this in the above log, do you know about this?
`@JS : IdentityManager :getIdentity() Error: The current identity has not been registered:admin `
Has joined the channel.
Screenshot from 2017-12-04 15-14-18.png
@rthatcher
Hi everyone!
I am installing development at https://hyperledger.github.io/composer/installing/development-tools.html
At step: ./createPeerAdminCard.sh
It print: "Need to have composer-cli installed at v0.15 or greater" but I INSTALLED IT AT THE BEGINING
and composer command line is not able to use
@tphduy probably logout/login terminal? or add to path?
@tphduy - did you npm install with *-g*
@rthatcher Sure, I definitely did it
I using MacOS
I have reinstalled Nodejs but it still print that error
Sorry for my bad English
@suryasuresh06 - Is your Fabric also on the cloud? On the same server where you will run the REST API?
The REST (composer-rest-server) does not need the BNA file - it connects to the Fabric and _discovers_ the Business Network. It uses the Card to connect.
In your screenshot you are trying 3 different cards. Typically people start the REST server using the Network Admin card created by the composer network start command.
Check which cards you really have using `composer card list`.
Also see my response earlier today about exorting cards with certificates.
hi @rthatcher on similar note, i'm looking at deploying fabric with cello. Can i use composer-rest-server in this case? do i just deploy it with one of the nodes?
it'd be great if there's any tutorial material around the use of composer-rest-server with a cello setup.
@levinkwong - I don't have access to v0.12 - Perhaps you could try using PeerAdmin - I think there was a bluring of roles with v0.12?
I would urge you to upgrate to the more stable v0.16 version when you can.
@rthatcher yes my fabric is also on the cloud. Same server as the REST API.
i deleted the other card and started with only the Network Admin card. It worked. But i am getting an error that composer-rest-server command not found. What is the mistake i am making here
i installed composer rest server again and it worked.
[ ](https://chat.hyperledger.org/channel/composer?msg=ATGdW5m2MsT5JY4cC) @yipcma should be possible yes. You deploy a REST server instance for a runtime Composer business network and from there you interact with on the runtime Fabric setup you've deployed. The 'rest' is a matter of configuration as in, how your applications/users connect to (ie through business network cards) to consume the REST endpoints that were generated for the business network. https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
[ ](https://chat.hyperledger.org/channel/composer?msg=fKJ28PKjE9BPboy5d) @mahoney1 cool i'll give it a try and keep you pinged
tried to execute REST API to find list of all buyers GET operation but got error related to access token
curl -X GET --header 'Accept: application/json' 'http://10.207.131.125:3000/explorer/#!/Buyer/Buyer_find'
The access token displayed above can be used to authenticate to the REST API using a standard
HTTP or REST client.
You must specify the access token in the query string
(?access_token=xxxxx
) or as an additional HTTP header (
Sorry if this question has been asked before (I'm new)
For the Sample's on the Composer Playground - such as the "Perishable Goods" sample
Are there PowerPoint's, or other _slides_ that accompany them to set context?
tried to execute REST API to find list of all buyers GET operation but got error related to access token
curl -X GET --header 'Accept: application/json' 'http://10.207.131.125:3000/explorer/#!/Buyer/Buyer_find'
The access token displayed above can be used to authenticate to the REST API using a standard
HTTP or REST client.
You must specify the access token in the query string
(?access_token=xxxxx
) or as an additional HTTP header (
even after i tried enable authentication for REST it is not generating REST API giving error as passport-github not found but it is installed by using command npm install -g passport-github
u need to setup the env
follow https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
yes i have tried that
i got stuck in the step when we start rest server
it gives error passport-github module not found
but i have installed it using npm
i figured it out it is working now
but some more issue is there the data POST operations is not persisting in DB
make sure to install in global with `npm i -g passport-github`
Capture.PNG
[ ](https://chat.hyperledger.org/channel/composer?msg=QqbNNejLj2gcqQmQN) @jonathansinclair no, just the README which you may have seen -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/README.md and this diag may help
[ ](https://chat.hyperledger.org/channel/composer?msg=QqbNNejLj2gcqQmQN) @jonathansinclair no, just the README which you may have seen -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/README.md and this [sample] diag may help
the changes are not persisting in db after running post operation from another Host, i am not able to see in my host
[ ](https://chat.hyperledger.org/channel/composer?msg=X5LA9FF83hcKzHP8Q) @mahoney1 Thanks Mahoney
Hi Everyone, I've tried to deploy my .bna file in IBM sandbox kubernete environment. I've deployed it successfully also, But when I tried to run connect rest-server, I am getting error as "Permission denied". Can anyone help me to resolve this.
Hi Everyone, I've tried to deploy my .bna file in IBM sandbox kubernete environment. I've deployed it successfully also, But when I tried to run connect rest-server, I am getting error as "Permission denied". Can anyone help me to resolve this. --->
Hi Everyone, I've tried to deploy my .bna file in IBM sandbox kubernete environment. I've deployed it successfully also, But when I tried to run connect rest-server, I am getting error as "Permission denied". Can anyone help me to resolve this. --->Error: -bash: ./create_composer-rest-server.sh: Permission denied
@umamani113 - for support with your particular environment on IBM Cloud you should go to this page https://console.bluemix.net/docs/support/index.html#contacting-support
Hi All, I'm testing Composer on IBM Z platform and would appreciate an advise please: on phase of instantiating composer chaincode I'm getting an error *"node:29241) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: The event hub has not been connected to the event source"*. If I look at the docker logs I can see the following error: `2017-12-04 13:17:44.388 UTC [Composer] Error -> ERRO 876 @JS : Resolver :resolveRelationship() Failed to resolve relationship [object Object]`. Any suggestions please - how to debug / fix it?
[ ](https://chat.hyperledger.org/channel/composer?msg=wnz6YZpvFMdCrgHZJ) @dselman hi, thanks, it on port 7053 like in the dev tutorial
Does it have to do with any Node.js / JS modules?
Check the ports/IP addresses for the event hub in your connection profile.
[ ](https://chat.hyperledger.org/channel/composer?msg=EfotGTjJAv4YEfto2)
Could you please suggest on the same
[ ](https://chat.hyperledger.org/channel/composer?msg=EfotGTjJAv4YEfto2)
Could you please advice on the same
I know nothing about QR code creation but the fully qualified ID of an asset is a string, so I assume you can take a string and generate a 2D QR code with it.
@prmdmshra Here is the a javascript implementation that you can do in the browser.
https://davidshimjs.github.io/qrcodejs/
I would suggest that in your Dapp/Website/Whatever you are calling would call that javascript to create it. I will happily write a code sample.
If someone would help me to determine if "businessNetworkConnection.connectWithDetails" is bugged it would help me. Cause it's acting different then before the 28th update
@LadarX businessNetworkConnection.connectWithDetails API has been removed from the public api. It is now purely and internal api and shouldn't be used.
@LadarX businessNetworkConnection.connectWithDetails API has been removed from the public api. It is now purely an internal api and shouldn't be used.
I am using it for testing my composer network.
@LadarX You should move to using the appropriate `connect` api which is public
Hello... I deployed my business network (local playground and node-red over fabric) and then I changed my business network model and transaction processor file. I want to redeploy my business network archive. I created new .bna file. Now do i need to use `composer network update` command to deploy my new .bna to fabric runtime with old admin card? If not, could you please suggest me steps?
Hello... I deployed my business network (local playground and node-red over fabric) and then I changed my business network model and transaction processor file. I want to redeploy my business network archive. I created new .bna file. Now do i need to use `composer network update` command to deploy my new .bna to fabric runtime with old admin card (already imported)? If not, could you please suggest me steps?
[ ](https://chat.hyperledger.org/channel/composer?msg=wnz6YZpvFMdCrgHZJ) @dselman hi, thanks - it's on the port 7053 like in the dev tutotial.
For the composer connection profile, is there a way to set `hostnameOverride` for the ca server? I'm getting this error without it:
```
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error [ERR_TLS_CERT_ALTNAME_INVALID]: Hostname/IP does not match certificate's altnames: Host: localhost. is not cert's CN: ca.my.domain]
```
For the composer connection profile, is there a way to set `hostnameOverride` for the ca server? I'm getting this error without it:
```Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error [ERR_TLS_CERT_ALTNAME_INVALID]: Hostname/IP does not match certificate's altnames: Host: localhost. is not cert's CN: tlsca.my.domain]
```
@bsteinfeld It's not a feature of the fabric-node-sdk so unfortunately there isn't a way for composer to do this. Only option would be to set verify to false. eg
```
"ca": {
"url": "https://ca.org1.example.com",
"name": "ca.org1.example.com",
"verify": false
},
```
thanks @davidkel for the response! Setting verify to false still tunnels the traffic through TLS, but just doesn't verify the cert is legitimate right?
@bsteinfeld I believe so.
@davidkel hi, my dev peer log is showing messages as below, continuously. is it normal? ``` 2017-12-04T14:42:10.399270470Z [36m2017-12-04 14:42:10.399 UTC [Composer] Debug -> DEBU e8c6[0m Garbage collection ticker 6
2017-12-04T14:42:11.162648193Z [36m2017-12-04 14:42:11.162 UTC [Composer] Debug -> DEBU e8c7[0m Garbage collection ticker 0
2017-12-04T14:42:13.776391445Z [36m2017-12-04 14:42:13.776 UTC [Composer] Debug -> DEBU e8c8[0m Garbage collection ticker 2
2017-12-04T14:42:13.987144708Z [36m2017-12-04 14:42:13.986 UTC [Composer] Debug -> DEBU e8c9[0m Garbage collection ticker 3
2017-12-04T14:42:14.370447315Z [36m2017-12-04 14:42:14.370 UTC [Composer] Debug -> DEBU e8ca[0m Garbage collection ticker 5
2017-12-04T14:42:14.398433867Z [36m2017-12-04 14:42:14.398 UTC [Composer] Debug -> DEBU e8cb[0m Garbage collection ticker 7```
[ ](https://chat.hyperledger.org/channel/composer?msg=hxDuTuNiajoZSZzoy) @AkshayJindal 'old' meaning 'current' ? To verify, suggest to 'ping' (eg -c `admin@my-network' ) your network, then export your card (if you've not already done this). Then (using that exported card) do the composer network update eg `composer network update -a mynetwork.bna -c admin@mynetwork`
[ ](https://chat.hyperledger.org/channel/composer?msg=hxDuTuNiajoZSZzoy) @AkshayJindal 'old' meaning 'current' ? To verify, suggest to 'ping' (eg -c `admin@my-network` ) your network, then export your card (if you've not already done this). Then (using that exported card) do the composer network update eg `composer network update -a mynetwork.bna -c admin@mynetwork`
[ ](https://chat.hyperledger.org/channel/composer?msg=hxDuTuNiajoZSZzoy) @AkshayJindal 'old' meaning 'current' ? To verify, suggest to 'ping' (eg -c `admin@my-network` ) your network, then export your card (if you've not already done this). Then do the composer network update eg `composer network update -a mynetwork.bna -c admin@mynetwork`
@uber.twin yes, its normal
@davidkel I get an error as below and than the log goes on with the garbage collection thing forever. I have no idea wht is causing it
```
2017-12-04T14:40:20.601150173Z [36m2017-12-04 14:40:20.600 UTC [Composer] Debug -> DEBU e810[0m @JS : AccessController :check() Processed rule [object Promise]
2017-12-04T14:40:20.601469202Z [36m2017-12-04 14:40:20.601 UTC [Composer] Debug -> DEBU e811[0m @JS : AccessController :checkRule() < true
2017-12-04T14:40:20.601872511Z [36m2017-12-04 14:40:20.601 UTC [Composer] Debug -> DEBU e812[0m @JS : AccessController :check() <
2017-12-04T14:40:20.606364374Z [36m2017-12-04 14:40:20.606 UTC [Composer] Debug -> DEBU e813[0m Entering DataCollection.add &{0xc420171440}
2017-12-04T14:40:20.607440825Z [31m2017-12-04 14:40:20.606 UTC [shim] handleGetState -> ERRO e814[0m [6ceccd16]GetState received error ERROR
2017-12-04T14:40:20.607463912Z [36m2017-12-04 14:40:20.607 UTC [Composer] Debug -> DEBU e815[0m Exiting DataCollection.add 0
2017-12-04T14:40:20.607553823Z [36m2017-12-04 14:40:20.607 UTC [Composer] Debug -> DEBU e816[0m @perf DataCollection.add total duration for [ Asset:my.TestAsset ] and transaction [ 6ceccd16141e0a69de07cb37b95979d92cf2b9a9aac3a9799a4ff45c878335bb ] : 1.2149ms
2017-12-04T14:40:20.608018808Z ### Error running ftp: Error: [6ceccd16]No ledger context for GetState. Sending ERROR
2017-12-04T14:40:20.612953954Z Error: Unhandled promise rejection {}
2017-12-04T14:40:20.612975317Z at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
2017-12-04T14:40:20.612980919Z at error () native strict preventsyield
2017-12-04T14:40:20.612985613Z at [anon] (eval:2) strict
2017-12-04T14:40:20.612990083Z at [anon] (eval:2) strict
2017-12-04T14:40:20.612994496Z at [anon] (eval:2) strict
2017-12-04T14:40:20.612998823Z at [anon] (eval:1)
2017-12-04T14:40:20.613003153Z at [anon] (eval:1)
2017-12-04T14:40:20.613007458Z at [anon] (eval:1)
2017-12-04T14:40:20.613011866Z at [anon] (eval:1) preventsyield
```
the actual transaction gets saved but the TPF function fails to save this asset instance
@davidkel the client app isn't notified of any error at all
@davidkel the error is caused by the failure of a "registry.add(assetInstance)" operation but the actual reason is a mistery
@dselman thanks you were right - fabric event hub was down! works OK now
[ ](https://chat.hyperledger.org/channel/composer?msg=jDWcpjiLHwK46YXQs) @mahoney1 Thank you. It worked :) Basically now to understand what I did, I exported the card using `composer card export -f admin@perishable-network.card -n admin@perishable-network` therefore this command will create new admin card and update my card list? then I used `composer network update` which will install new .bna on fabric runtime using this new admin card?
@uber.twin No Ledger Context for GetState Error is usually because the transaction has taken too long to run so the peer abandons it, and when the chaincode tries to call getState it fails.
@davidkel it doesn't seem to be waiting. It takes a second or so for the client app to return as if all was good
good morning . I am trying to run createPeerAdminCard.sh but error comes failed to load composer connector hlfv1
I tried to npm install composer connector hlfv1 package but still its not working?
ubuntu
@uber.twin guess you need to look in the peer logs to see if there is any indication as to what the peer is doing
Hi Guys,
I am trying to issue an identity to a participant that already exists in the network.
return this.bizNetworkConnection.connect(this.cardname)
.then((result) => {
let email = 'user@gmail.com',
username = email.split('@')[0];
this.businessNetworkDefinition = result;
return this.bizNetworkConnection.issueIdentity('org.test.Person#user@gmail.com', username);
})
.then((result) => {
console.log(`userID = ${result.userID}`);
console.log(`userSecret = ${result.userSecret}`);
})
I expect that I will see the userID and the userSecret logged on the console but I am getting errors as described below.
Following the developer tutorial on their documents:
If I use the card name for PeerAdmin@hlfv1 on the connect function above, I get the error. "Error trying to ping. Error: Error trying to query business network. Error: Missing \"chaincodeId\" parameter in the proposal request"
If I use the card name for admin@tutorial-network on the connect function above, I get the error "fabric-ca request register failed with errors [[{\"code\":400,\"message\":\"Authorization failure\"}]]"
For option 1, I know the network name is missing in the given card, whie option 2 means that the admin has no rights to issue an identity. However, I cannot seem to find any documentation directing me on how to use either to achieve my objective. Any help is highly welcome.
While I have listed the javascript code I am using to achieve the same, I would not mind if anyone can explain what I am missing using the composer cli.
Has joined the channel.
@davidkel I think I go it: I was doing factory.newResource() twice in the same transaction with the same object identifier.It was doing the instantiations fine but it seems it was the cause for the crash at "registry.add()" time
@davidkel I think I got it: I was doing factory.newResource() twice in the same transaction with the same object identifier.It was doing the instantiations fine but it seems it was the cause for the crash at "registry.add()" time
@davidkel previous Composer or possibly Fabric images didn't use to care
@uber.twin if you have a recreatable scenario could you create a github issue as it might be worth investigating to see if the runtime could be more helpful.
sure, I'll put something togheter
Has joined the channel.
Hi, I'm facing few issues with 0.16.0 version of composer while deploying the application on local network. Please help me to resolve it.
Steps Followed:
1. Start Fabric: ./startFabric.sh
2. Create Composer Profile: ./createComposerProfile.sh
3. Create Peer Admin Card: ./createPeerAdminCard.sh
4. Network Deployment: composer network deploy -a perishable-network.bna -A admin -c PeerAdmin@hlfv1 -S adminST
*Here I'm not able to add participant*
5. Add Participant: composer add participant add -c PeerAdmin@hlfv1 -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"Abhilash"}'
Error: Error trying to ping. Error: No business network has been specified for this connection
Help me to add participant from cli commands
[ ](https://chat.hyperledger.org/channel/composer?msg=EvjcQgkaL44FezfGW) @AbhilashSharma Hi. Have you followed this tutorial for deployment https://hyperledger.github.io/composer//tutorials/deploy-to-fabric-single-org.html
[ ](https://chat.hyperledger.org/channel/composer?msg=EvjcQgkaL44FezfGW) @AbhilashSharma Hi. Have you followed this tutorial for deployment? https://hyperledger.github.io/composer//tutorials/deploy-to-fabric-single-org.html
[ ](https://chat.hyperledger.org/channel/composer?msg=EvjcQgkaL44FezfGW) @AbhilashSharma Hi. Have you followed this tutorial for deployment? https://hyperledger.github.io/composer//tutorials/deploy-to-fabric-single-org.html and then try adding the participants
Hey people! wanted to know if composer is mature enough to back an Enterprise level application?
Hi everyone! I have installed composer but when I typed it in terminal it printed: "command not found"
How can I set directory of composer like nvm:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
[ ](https://chat.hyperledger.org/channel/composer?msg=SkhwfLr2oKCBWMo5z) @AbhilashSharma this is answered on Stack Overflow https://stackoverflow.com/questions/47638504/adding-participant-to-locally-hosted-application-networkadmin/47639470#47639470
[ ](https://chat.hyperledger.org/channel/composer?msg=5koxr23Nz3autPzDC) @tphduy would check you've satisfied all the pre-reqs (OS, versions supported etc) including which user its installed as - quite important -> https://hyperledger.github.io/composer/installing/development-tools.html
@AkshayJindal pinging the network after use means it populates the user identity's credentials as mentioned here previously -> https://chat.hyperledger.org/channel/composer?msg=DF3gTeSyQR6W93aoF and `admin` has the ability to update the network changes in the runtime network container
@AkshayJindal pinging the network means after use, it populates the user identity's credentials as mentioned here previously -> https://chat.hyperledger.org/channel/composer?msg=DF3gTeSyQR6W93aoF and `admin` has the ability to update the network changes in the runtime network container
Has joined the channel.
Thanks a lot. @mahoney1
is there a better channel for composer query question, what I am trying to query is the list the states of an asset... I think this can be done via pulling of UpdateAsset transaction where the resource is of a certain class/id combo... ideas thoughts or direction would be appreciated
Has joined the channel.
Has left the channel.
Has joined the channel.
[My two cents: I think so as the core is built on Fabric where Composer is a kind of chaincode modelling, development and deployment tool. However, I'm still curious if Fabric can support multi-million end users (participants).](https://chat.hyperledger.org/channel/composer?msg=zwFcBbfKhn6jgshGm) @mmick
I think you can query all the assets or a specific one using the default query mechanism by composer (either through HTML or curl). If you want to program it, you may try getAssetRegistry(
28c0f1d24a6e298cdee9268fd36d622.png
Hi, everyone! I have the privilege of not working, is the condition statement wrong?
using REST APIs how to execute transactions using user roles so that i can identify which user has performed what transaction?
the REST APIS i have generated can execute the transaction but there is not user which is registered and enrolled i think by default it is using admin but i need to know which customers have performed what transactions
Has joined the channel.
@yogesh.fulsunge my understanding is that the REST Server is only using one identity on one peer to perform the transaction, so either you identify your users in your application/REST client snd include their IDs within the payload of your transactions, or you review your architecture to have for each customer: one peer, one rest server, one identity
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=rgm8St6frprqm9eyC) Any leads on this?
Hi, everyone! In terms of permissions, you need to define the conditional statement in js, okay?
I have a question on the implementation of ACL in queries.
The documentation says:
> Any content which the current user does not have authority to view is stripped from the results
Is there a difference in performance between just "trusting the ACL", versus writing a query to filter content not relevant to me?
Meaning, `SELECT widget WHERE owner=me`, vs just `getAll` or `SELECT widget`?
@yogesh.fulsunge You need to enable multi-user mode in the rest server. see https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
Great hint @davidkel thanks a lot!
Has joined the channel.
Has joined the channel.
Hi. I'm developing my first chaincode. I wanna a query to get current height of blocks but the general methods in REST api only provide transaction id, transactionType... etc. I couldn't find a reference about it. can anyone help me?
@mayur.relekar - The MultiOrg tutorial is specific to the Hyperledger Fabric 'first network' sample, but towards the end it deploys the 'tutorial-network' form the Developer tutorial. You could quite easily substitute your Business network at that point. If you haven't already done so I would suggest trying the MultiOrg tutorial for familiarity.
To set up your own custom Fabric network will require some study of the Fabric documentation and some Docker skills.
Has joined the channel.
Hi all
I'm trying to follow the playground tutorial but it's outdated
I can't connect to the network that I've created at all
Is there somewhere where I can find the latest instructions?
@danshao - I just briefly tried the latest tutorial on the latest On Line Playground (v0.16.0) and it worked OK.
https://hyperledger.github.io/composer/tutorials/playground-tutorial.html
https://composer-playground.mybluemix.net/
Are you seeing a particular error ?
@rthatcher if you try to create a new business network, it requires you to pass in an identity either through a cert or password
What goes in those boxes?
[ ](https://chat.hyperledger.org/channel/composer?msg=D3SYRHvsWwE4QwMD9) @danshao - are you using Playground on the IBM Cloud URL (Bluemix) or a locally installed version ?
locally installed
@rthatcher is there a way to select a local hyperledger fabric deployment through the BlueMix playground?
this is what I'm following actually - https://hyperledger.github.io/composer/installing/using-playground-locally.html
When the web instance launches, the first thing you see is actually "Error: Error trying to ping. Error: No business network has been specified for this connection"
[ ](https://chat.hyperledger.org/channel/composer?msg=MxuFq9yEQnL5v2sw5) @danshao - The tutorial is written for the online Bluemix version of the Playground which can only use a 'Web' Fabric i.e. in local browser storage. Bluemix online playground is a zero install option to enable people to focus on testing a model.
Which tutorial? The one I linked is clearly to install it locally.
If you are usiing locally installed you have the option of using 'Web' fabric or 'Hlfv1' - connecting to a locally installed Fabric (typically using a Development Fabric created using a set of scripts)
right.. so that should be the tutorial that I linked to.
This [tutorial](https://hyperledger.github.io/composer/tutorials/playground-tutorial.html) is outdated
[ ](https://chat.hyperledger.org/channel/composer?msg=C6Frd3FY9kKRMiDYp) @danshao - Are you following this guide?
https://hyperledger.github.io/composer/installing/using-playground-locally.html
I think following the Playground tutorial immediately after the other document is where the error is - I agree.
(The Playground Tutorial by iteslf is fine if you start with it)
@rthatcher are you part of the composer team?
[ ](https://chat.hyperledger.org/channel/composer?msg=D5KkqjZDTYMDfomjp) @danshao - yes I work with them and can talk to them about the documentation.
If you are running a default installation locally you can deploy a Business Network to 'Hlfv1' using *admin / adminpw* in the credentials section of the form.
Here's what I'd like to do:
1. Deploy Composer and Fabric
2. Utilize vscode + Composer Playground to develop my business network (models, assets, and transactions)
3. Deploy said business network to Fabric
4. Rinse and repeat steps 2 + 3
`admin`/`adminpw` does work
`admin` `adminpw` does work as the credentials (this is missing from the tutorial)
that was the missing piece for using the local Playground, thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=srYxZ5ob2uDCZcw7E) @JihyeonJeong you can use the simple REST APIs as shown at https://github.com/hyperledger/blockchain-explorer perhaps - or ask on #fabric ? (Composer doesn't have REST APIs for business networks, not the underlying Fabric infrastructure)
[ ](https://chat.hyperledger.org/channel/composer?msg=srYxZ5ob2uDCZcw7E) @JihyeonJeong you can use the simple REST APIs as shown at https://github.com/hyperledger/blockchain-explorer eg `http://localhost:8080/apis/channels/:channelname/height` perhaps - or ask on #fabric ? (Composer doesn't have REST APIs for business networks, not the underlying Fabric infrastructure)
[ ](https://chat.hyperledger.org/channel/composer?msg=mA9C54zdruAHCJ7J3) it seems like it isn't intuitive to have a dev environment along with the Composer Playground running at the same time
Since each tutorial (playground, dev) launches a new Fabric instance
interesting, i found the two tutorials on setup local playground and dev env a bit redundant. it seems all one need to setup a playground is `composer-playground`
interesting, i found the two tutorials on setup local playground and dev env a bit redundant. it seems all one need to setup a playground is `composer-playground` the npm package
@danshao for your 1 to 4. you just need to do 1) Step 1 and 2 of https://hyperledger.github.io/composer/installing/development-tools.html (sounds like you have most of this installed - but DO install the optional local composer-playground if you've not already done so that is. - after this you have items 1, 2 done. 3. do a `composer network deploy -a MyNetwork.bna -A admin -S -c PeerAdmin@hlfv1 -f netAdmin.card` to deploy it let's assume your network is called 'tutorial-network' in package.json 4) `composer card import -c netAdmin.card` will import your card..5) 'Use' the card to get the credentials downloaded to 'admin's wallet in the card store eg `composer network ping -c admin@tutorial-network` 6) Make your changes, iterate (ie rinse and repeat) and then do a `composer network update -c admin@tutorial-network. You don't (in this case) need to use the netAdmin.card with the one-time enrolment password as you've imported the card into your card store and it has the cert/key etc etc
@danshao for your 1 to 4. you just need to do 1) Step 1 and 2 of https://hyperledger.github.io/composer/installing/development-tools.html (sounds like you have most of this installed - but DO install the optional local composer-playground if you've not already done so that is. - after this you have items 1, 2 done. 2) do a `composer network deploy -a MyNetwork.bna -A admin -S -c PeerAdmin@hlfv1 -f netAdmin.card` to deploy it let's assume your network is called 'tutorial-network' in package.json 3) `composer card import -c netAdmin.card` will import your card..4) 'Use' the card to get the credentials downloaded to 'admin's wallet in the card store eg `composer network ping -c admin@tutorial-network` 5) Make your changes, iterate (ie rinse and repeat) and then do a `composer network update -c admin@tutorial-network. You don't (in this case) need to use the netAdmin.card with the one-time enrolment password as you've imported the card into your card store and it has the cert/key etc etc
[ ](https://chat.hyperledger.org/channel/composer?msg=CWD8HzKtYL5QWsvo8) @yipcma one is a local playground (dockerised which you can persist if you wish) and one is a local dev (in which as you say you can do an npm install to use that executable with your locally installed Dev environment). The flexibility is there.
[ ](https://chat.hyperledger.org/channel/composer?msg=CWD8HzKtYL5QWsvo8) @yipcma one is a local playground (dockerised which you can persist if you wish) and one is a local dev (in which as you say you can do an npm install to use that executable with your locally installed Dev environment as well). The flexibility is there and can satisfy different roles.
@mahoney1 how do I launch Playground and use that as an interface to test and verify my bna?
`composer-playground` - its bullet 3 of 'Step 2' here -> https://hyperledger.github.io/composer/installing/development-tools.html if you ever need to refer again cheers..
`composer-playground` on the command line - its bullet 3 of 'Step 2' here -> https://hyperledger.github.io/composer/installing/development-tools.html if you ever need to refer again cheers..
Screen Shot 2017-12-05 at 6.23.06 PM.png
Any reason for this error if all the previous commands were successful? `Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"open /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem: no such file or directory"}]]
Command failed
`
Any reason for this error if all the previous commands were successful?
```Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"open /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem: no such file or directory"}]]
Command failed```
It's true that there is no file there at `/etc/hyperledger/fabric-ca-server-config/` but.?
so there's definitely a problem with your CA server setup I can't be certain of 'what went before' so I suggest to 1) remove $HOME/.composer directory 2) do a `./teardownFabric.sh` (see script name there) of your Fabric (from your fabric-tools) to include removing your deployed business network container too ) and 3) to a ./startFabric.sh from there - this will install the right environment then do the steps above.
@danshao so there's definitely a problem with your CA server setup I can't be certain of 'what went before' so I suggest to 1) remove $HOME/.composer directory 2) do a `./teardownFabric.sh` (see script name there) of your Fabric (from your fabric-tools) to include removing your deployed business network container too ) and 3) to a ./startFabric.sh from there - this will install the right environment then do the steps above.
Hi team, can we post feedback on Hyperledger composer documentation here ?
@indira.kalagara you can - if its a 'substantial' amount suggest to create an issue
Sure. Thank you.
@mahoney1 I have a network wherein we have 4 participants 1) admin 2) regulator 3) supplier 4) consumer . I have to put in place some access control rules or all these participants
@mahoney1 I have a network wherein we have 4 participants 1) admin 2) regulator 3) supplier 4) consumer . I have to put in place some access control rules or all these participants. After I ll need to test the composer network by loggin in as these users one by one. My question is "How do I create the ID cards for all these users". I assume I will need to create separate ID cards for each of them.
anyone with experience using `composer` to interact with a fabric deployed by `cello`?
anyone with experience using `composer` to interact with a fabric deployed by `cello`? am looking for specifically hints to setup the `connection.json` for creating a PeerAdmin.
@mna2016 - yes, you do. They are 4 identities (mapped to the participants you create in Composer). How ? either through Playground (as the admin user, because 'he' can issue identities) so basically step 3 onwards ('Creating a B N card') in https://hyperledger.github.io/composer/playground/id-cards-playground.html or from the command line -> https://hyperledger.github.io/composer/reference/composer.identity.issue.html
[ ](https://chat.hyperledger.org/channel/composer?msg=jDWcpjiLHwK46YXQs) @mahoney1 If there are cards (issued to participants) are also in the wallet then do I need to export them too after update? or just admin card is exported whenever .bna is redeployed?
Has joined the channel.
I am using the 0.16 version of online playground. My playground is set up on the IBM container service available on bluemix. I have deployed a .bna file to this network. I would like to export the connection.json file from my environment on IBM Bluemix. Is there a way I could do this from the online playground? Is there an alternate method of being able to export the connection.json from the IBM bluemix container service that my playground is set up on. Many thanks!
I am using the 0.16 version of online playground. My playground is set up on the IBM container service available on bluemix. I have deployed a .bna file to this network. I would like to export the connection.json file from my environment on IBM Bluemix. Is there a way I could do this from the online playground? Is there an alternate method of being able to export the connection.json from the IBM bluemix container service that my playground is set up on. Many thanks!
@AkshayJindal you only need export to a card file, if you want to give/distribute that user card to someone else to use (eg. another user) to import and use. In which case, if the user imports a card with credentials (ideally) then these credentials will be used by for that identity (the enrolment secret no longer valid - used 'one time'). If the card (say you build it) does not contain any credentials, then the enrollment secret will be used (instead) to obtain the cert/key credentials (stashed in the user wallet), when it is first used to connect.
[ ](https://chat.hyperledger.org/channel/composer?msg=Lc5hTtT92u73cNNhc) @charugosavi for support with your particular environment on IBM Cloud you should go to this page https://console.bluemix.net/docs/support/index.html#contacting-support - think it creates business network cards (eg admin) for you that you could export (if you wish)
[ ](https://chat.hyperledger.org/channel/composer?msg=Lc5hTtT92u73cNNhc) @charugosavi for support with your particular environment on IBM Cloud/Bluemix you should go to this page https://console.bluemix.net/docs/support/index.html#contacting-support - think it creates business network cards (eg admin) for you that you could export (if you wish)
[ ](https://chat.hyperledger.org/channel/composer?msg=Lc5hTtT92u73cNNhc) @charugosavi for support with your particular environment on IBM Cloud/Bluemix you should go to this page https://console.bluemix.net/docs/support/index.html#contacting-support - think it creates business network cards (eg admin) for you that you could export (if you wish) https://ibm-blockchain.github.io/paid/interacting/
. @mahoney1 Yep now i see the procedure to create the ID cards. pretty straightforward. Thanks
@mahoney1 This question might look a little disconnected: I want to see all the available frameworks that people have developed for developing applications on top if hyperledger fabric, composer etc. Information or links about such frameworks will be appreciated. Thanks.
How do I query an asset with it's relations via the composer rest server?
I just read that the Loopback filter functionality won't be implemented
so never mind
[ ](https://chat.hyperledger.org/channel/composer?msg=qGRaz9rABgqhDsMei) @rthatcher A) Thanks! Looks like I missed that bit. I surely intend to try it out but I was simply reading through the steps first and it kept feeling vastly different from my previous workflow where I would:
1) Start the fabric
2) Generate the BNA using Yeoman
3) Write my code
4) Install the runtime
5) Create/Export Card(s)
6) Start the network
But now, in the tutorial, there are steps(Step 1 - Step 6) that I just didn't seem to need.
I do realise, previously, all I was doing was build test networks and running them on my local machine or on the playground. Are these steps some kind of pre-requisites to achieving production readiness?
B) Also, in the conclusion to the tutorial, I found:
```
In this tutorial you have seen how to configure Hyperledger Composer with all of the information required to connect to a Hyperledger Fabric network that spans multiple organizations, and how to deploy a blockchain business network that spans all of the organizations in that Hyperledger Fabric network.
```
What is the difference between a 'Hyperledger Fabric Network' and a 'blockchain business network'?
[ ](https://chat.hyperledger.org/channel/composer?msg=qGRaz9rABgqhDsMei) @rthatcher I) Thanks! Looks like I missed that bit. I surely intend to try it out but I was simply reading through the steps first and it kept feeling vastly different from my previous workflow where I would:
1) Start the fabric
2) Generate the BNA using Yeoman
3) Write my code
4) Install the runtime
5) Create/Export Card(s)
6) Start the network
But now, in the tutorial, there are steps(Step 1 - Step 6) that I just didn't seem to need.
I do realise, previously, all I was doing was build test networks and running them on my local machine or on the playground. Are these steps some kind of pre-requisites to achieving production readiness?
II) Also, in the conclusion to the tutorial, I found:
```
In this tutorial you have seen how to configure Hyperledger Composer with all of the information required to connect to a Hyperledger Fabric network that spans multiple organizations, and how to deploy a blockchain business network that spans all of the organizations in that Hyperledger Fabric network.
```
What is the difference between a 'Hyperledger Fabric Network' and a 'blockchain business network'?
User User_1 added by davidoevans.
Hello. I deployed my business network using node-red and local composer over fabric. I would like to listen to an event which is emitting while submitting a transaction. I am able to submit the transaction successfully but not able to see the data emitted by event (in transaction processor function) on debug console in node-red. what could be problem in this case?
Hello. I deployed my business network using node-red and local composer over fabric. I would like to listen to an event in node-red. I am able to submit the transaction successfully, data is updated in the ledger, but not able to see the notification emitted by event (in transaction processor function) on debug console in node-red. what could be problem in this case?
Hello. I deployed my business network using node-red and local composer over fabric. I would like to listen to an event in node-red. I am able to submit the transaction successfully, data is updated in the ledger, but not able to see the notification emitted by event (in transaction processor function) on debug console in node-red. what could be the issue in this case?
[ ](https://chat.hyperledger.org/channel/composer?msg=WQoPjRqfm9S3MNzFy) @AkshayJindal see https://hyperledger.github.io/composer/integrating/node-red.html and also https://stackoverflow.com/questions/47389811/querying-hyperledger-composer-rest-services-via-node-red
[ ](https://chat.hyperledger.org/channel/composer?msg=oYtMqxZAyLXWnRSqN) @mahoney1 I think, i already followed this because all other things like submit transactions or create participants, are working fine in node-red. Could you please see this post I just created https://stackoverflow.com/questions/47656141/how-to-listen-events-in-node-red-hyperledger-composer
Is there a way to export the connection.json file from online playground version 0.16?
[ ](https://chat.hyperledger.org/channel/composer?msg=RcFvX4psqsXHoupFX) @mahoney1 :: Is there a way to export the connection.json file from online playground version 0.16?
@charugosavi you can export a BN card file and a constituent part of the .card file is the connection.json file
[ ](https://chat.hyperledger.org/channel/composer?msg=3MzgcpgbLLDTetFra) @mahoney1 super thanks!
Has joined the channel.
I have a question how *Composer REST API* handles Blockchain transactions: does it call invoke and waits for the final commitment? How does it know that the transaction was successful? Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=49t4YSEcCoipAqSPh) @mahoney1 thanks!
I saw that Composer with VSCode and Hyperledger Composer VSCode plugin is Linux & Mac support only. Windows walk around available or any solution ?
It seems like the demo playground is down :(
@ScottMorris 'my' http://composer-playground.mybluemix.net/login isn't
Clipboard - December 5, 2017 11:35 AM
When I click your link I get this
@greg2git When I click your link I get this
works for me @ScottMorris
seems like an issue on your side
@scottmorris i have cleared my browser cache and it's still working
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=cwb8zcfL6WAD4nku3) @ankashu it works like any other composer transaction (200 success code returned)
[ ](https://chat.hyperledger.org/channel/composer?msg=fnDRgWsy6zsgwygWa) @michael_aR works on Windows 10 (not tried 7)
Composer website is down
https://hyperledger.github.io/composer/stable/index.html
it is redirecting to this link...
Oh no!…there’s no blockchain here :(
If you fancy telling us about this please raise an issue on our Github
@gauthampamu Not sure what's happened, however you can get to the unstable version of docs here and at the moment they should be about the same
https://hyperledger.github.io/composer/unstable/index.html
hi everyone. I am trying to composer runtime install --card PeerAdmin@demo-network.card --businessNetworkName demo-network
errors comes Error trying to ping
Error trying to query business network
Failed to deserialize creator identity,err MSP org1MSP is unknown
??????
@InduBhatti you are sure your fabric network is up? You should see the list of peers with the command: docker ps (assuming you are trying out one of the tutorials..)
my docker ps is running fine
yup i am following the tutorial https://hyperledger.github.io/composer/tutorials/queries.html
@InduBhatti Is the fabric you are using one you've created yourself ?
yes i created the business network using yo hyperledger generator and create card as given in the tutorial it was imported successfully and was there when i do composer card list
but when i try to runtime install my network using the card . above errors comes up
@InduBhatti So I take it you haven't created your own fabric, but are using the fabric dev network provided by composer ?
yes
And you created the card yourself and you created the connection.json file by hand ?
And you created the card yourself and you created the connection.json file by hand ? If so then check that you have got the channel name correct in the connection.json file you used. it should be `composerchannel`
The other possible cause is that the fabric didn't start properly and the peer didn't join the channel
Hi Guys, has anyone been able to successfully deploy a network using a customised endoersement policy? Could you share?
Hi Guys, has anyone been able to successfully deploy a network using a customised endoersement policy? Could you share? How does one go about it?
Hi Guys, has anyone been able to successfully deploy a network using a customised endoersement policy? Could you share? How does one go about it especially in Hyperledger Composer?
Has joined the channel.
Ok thank you @davidkel I will try this solution too.
Can you please tell me why i am getting this error while composer network start : Error trying to instatntiate composer runtime. No valid responses from peers. Response from attempted peer comms was an error : REQUEST TIMEOUT
Has joined the channel.
and when i try to run this again.. then error changes premature execution-chaincode is being launched????
I am doing the Queries Tutorial and testing the various queries. I can't get selectCommoditiesByOwner to return anything. Has anyone else had issues with this?
now again error changes to failed to receive commit notification for transaction 6dc.....227 within the timeout period?
Has joined the channel.
is there any way to check the error log or get more troubleshooting information ?
anyone coming out to the IBM hyperledger event at DMZ this evening ?
Has joined the channel.
Hello,
I am following the developer tutorial available here: https://hyperledger.github.io/composer/tutorials/developer-tutorial.html.
After creating the .bna file, I perform the command to install the composer runtime that was provided in the tutorial, however the tool is complaining that I'm missing two required arguments: connectionProfileName, installId. Am I doing something wrong or are the tutorials not in sync with the latest composer runtime
^
never mind I was using an old version of composer-cli. Thanks!
Has joined the channel.
Is there any other way to login to composer instead of file upload from user end
Has joined the channel.
hello, i'm trying to figure out the relation between a network cards and how can they provide necessary authentication to the business network? also the documentation for composer varies with the functionalities available in the composer. can someone please explain the relation to me or guide me to any other useful links?
@mahoney1 I have raised an issue for property level access control "https://github.com/hyperledger/composer/issues/2953"
@mahoney1 Does composer-playground work on windows ? Did you test it ?
Is it possible that the Loopback REST-API filters don't support WHERE-Queries with more than 2 conditions ? When executing this query, i get data where `isClosed=false`:
```{ "where":{ "and":[ { "isAccepted":true }, { "isClosed":false }] } }```
However, if i add a third condition, the middle one is ignored (`isClosed`):
```{ "where":{ "and":[ { "isAccepted":true }, { "isClosed":false }, { "maintenanceProvider":"Aintenance"} ] } }```
Is it possible that the Loopback REST-API filters don't support WHERE-Queries with more than 2 conditions ? When executing this query, i get data where `isClosed=false`:
`{ "where":{ "and":[ { "isAccepted":true }, { "isClosed":false }] } }`
However, if i add a third condition, the middle one is ignored (`isClosed`):
`{ "where":{ "and":[ { "isAccepted":true }, { "isClosed":false }, { "maintenanceProvider":"Aintenance"} ] } }`
[ ](https://chat.hyperledger.org/channel/composer?msg=ZPBxMLygG9eRrLYp8) @InduBhatti Hi, the Composer tells you exactly what's wrong - in your case, there's something wrong with the crypto keys you are supplying with your composer card. When you did 'composer create card' what pair of keys did you use?
@InduBhatti in other words, you are trying to use certificates that were signed by org1MSP - but that MSP in unknown to the Fabric, hence the error
Hi All, can you please advise on how Composer handles blockchain transactions, invoke in particular? does the code 200 means that transaction has completed successfully? Or code 200 can be returned while it's still running? Is there a way to get either *trainId* or *transtatusid* that will confirm that the transaction has been completed successfully? Thanks! ( @mahoney1 - if you can please advise)
[ ](https://chat.hyperledger.org/channel/composer?msg=DKJNyasuJs4tkGhmr) @pallavigajwani https://hyperledger.github.io/composer/playground/id-cards-playground.html - network cards are a (convenient) means to connect with an issued identity to the network - that identity is issued by the CA server usually by someone with authority to do so in the Org. When you interact with the business network you can control how clients (using a known identity mapped to a participant) authenticate, before being allowed (per the authentication provider you set up) to use view or submit transactions, assets etc. See https://hyperledger.github.io/composer/playground/id-cards-playground.html and https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
[ ](https://chat.hyperledger.org/channel/composer?msg=G528rDn2EYr2E9WWW) @ankashu the transaction ID is returned in the result - see example (in the answer section) here -> https://stackoverflow.com/questions/45240219/submitting-a-transaction-via-restful-api-how-to-handle-transactionid-and-timest/45377645#45377645 . Try it out. The fix to return transaction ID has been in for quite some time -> https://github.com/hyperledger/composer/pull/843
[ ](https://chat.hyperledger.org/channel/composer?msg=BnyPqPPjoeyNS9dZz) Hi @rthatcher, any help with this would be great!
[ ](https://chat.hyperledger.org/channel/composer?msg=4giAs6zDyuzP82LLH) @erNail not aware it breaks with >2 conditions - what happens if you tried the alternative non-stringified JSON method ? eg `curl -g -X GET "http://127.0.0.1:3000/api/Commodity?filter[where][and][0][isAccepted]=1&filter[where][and][1][isClosed]=0&filter[where][and][2][maintenanceProvider]=Aintenance""` (you need to change to your REST endpoint obviously but the filter syntax should be right - this was from the cmd line using CURL but same principle applies etc etc
[ ](https://chat.hyperledger.org/channel/composer?msg=4giAs6zDyuzP82LLH) @erNail not aware it breaks with >2 conditions - what happens if you tried the alternative non-stringified JSON method ? eg `curl -g -X GET "http://127.0.0.1:3000/api/Commodity?filter[where][and][0][isAccepted]=1&filter[where][and][1][isClosed]=0&filter[where][and][2][maintenanceProvider]=Aintenance""` (you need to change to your REST endpoint obviously but the filter syntax should be right - this was from the cmd line using CURL but same principle applies etc etc and 1 for true, 0 for false etc
[ ](https://chat.hyperledger.org/channel/composer?msg=4giAs6zDyuzP82LLH) @erNail not aware it breaks with >2 conditions - what happens if you tried the alternative non-stringified JSON method ? eg `curl -g -X GET "http://127.0.0.1:3000/api/Commodity?filter[where][and][0][isAccepted]=1&filter[where][and][1][isClosed]=0&filter[where][and][2][maintenanceProvider]=Aintenance""` (you need to change to your REST endpoint obviously but the filter syntax should be right - this was from the cmd line using CURL but same principle applies etc etc and 1 for true, 0 for false etc and assume the data 'Aintenance' (ie not a typo, looks interesting) is the data you're looking for
[ ](https://chat.hyperledger.org/channel/composer?msg=4giAs6zDyuzP82LLH) @erNail not aware it breaks with >2 conditions - what happens if you tried the alternative `non-stringified JSON` method ? eg `curl -g -X GET "http://127.0.0.1:3000/api/Commodity?filter[where][and][0][isAccepted]=1&filter[where][and][1][isClosed]=0&filter[where][and][2][maintenanceProvider]=Aintenance""` (you need to change to your REST endpoint obviously but the filter syntax should be right - this was from the cmd line using CURL but same principle applies etc etc and 1 for true, 0 for false etc and assume the data 'Aintenance' (ie not a typo, looks interesting) is the data you're looking for
@mayur.relekar - In order to help Composer developers to get off to a fast start we have tools to create a minimal development environment Fabric. (The Fabric Tools folder and scripts). These tools create some Crypto Material to get started and startup the minimal Fabric in Docker Containers. The Multi-Org tutorial takes you a little deeper into setting up a Fabric that is previously done for you by Fabric Tools.
Some Developers will always be able to stick with Dev environment and simply hand over a .BNA file to Operational teams to deploy. Other people working with the tutorials will sooner or later have to study Fabric itself and Docker to standup their own Custom Networks.
II) This doc describes a Business Network:
https://hyperledger.github.io/composer/reference/glossary.html
I will look into the wording at the end of the tutorial.
@rthatcher @mahoney1 what is the transaction rate at which we can process the REST requests from external application using hyperledger composer solution ???
how many requests per second or per minute it can handle?
[ ](https://chat.hyperledger.org/channel/composer?msg=7MxRCskmu7uvub2Qe) @yogesh.fulsunge don't have that data presently but your question would depend on a lot of factors demarcated/bound by the infrastructure you're benchmarking against but also how/where your blockchain network is built/configured, which parties endorse etc etc. with/without NOOPs etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=7MxRCskmu7uvub2Qe) @yogesh.fulsunge don't have that data presently but your question would depend on a lot of factors demarcated/bound not only by the infrastructure you're benchmarking against but also how/where your blockchain network is built/configured, which parties endorse etc etc. with/without NOOPs etc.
Has joined the channel.
Hi Everyone, Good day!! , I had one doubt on ID and secret. When I tried to deploy my bna in sandbox environment, it is asking for ID and secret..I've created my bna file through playground. Where we can get ID and secret through playground. Please suggest. Thank you in advance!
[ ](https://chat.hyperledger.org/channel/composer?msg=ALBbrw6d9bNeB4HJB) @umamani113 hi there - as mentioned previously, you should get support through this 'channel' -> https://chat.hyperledger.org/channel/composer?msg=dDScHQGCweBc2cYpN
Has joined the channel.
@mahoney1 sure, I've raised the ticket already, Thank you!
hi anyone has success with setting up composer PeerAdminCard and installing runtime after setting up a fabric using the BYFN tutorial `fabric-samples/first-network`? I'm getting these errors
```
✖ Installing runtime for business network tutorial-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Endpoint read failed
```
hi anyone has success with setting up composer PeerAdminCard and installing runtime for the bna from the developer tutorial after setting up a fabric using the BYFN tutorial `fabric-samples/first-network`? I'm getting these errors
```
✖ Installing runtime for business network tutorial-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Endpoint read failed
```
my `connection.json`
```
{
"name": "fabric-network",
"type": "hlfv1",
"mspID": "Org1MSP",
"peers": [
{
"requestURL": "grpc://0.0.0.0:7051",
"eventURL": "grpc://0.0.0.0:7053"
}
],
"ca": {
"url": "http://0.0.0.0:7054",
"name": "ca.org1.example.com"
},
"orderers": [
{
"url" : "grpc://0.0.0.0:7050"
}
],
"channel": "mychannel",
"timeout": 300
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=QM8CdasFdkwsToqPg) @yipcma I have not encountered this particular error, however from my side I can suggest checking docker logs - to see if there's something meaningful there, check that you indeed have mychannel and peers joined this channel. Alternatively - have you tried installing / instantiating any sample chaincode (eg example02) - to make sure that it works OK?
[ ](https://chat.hyperledger.org/channel/composer?msg=qGaY6GNo7qkt6BQNk) @mahoney1 thanks. So I have a transaction ID that I have submitted - how can I make sure later that this transaction has been completed?
@yipcma is your fabric expecting comms over tls ?
oh probably so, BYFN seems to be using tls! @davidkel How to mitigate this?
@ankashu no issues from peer logs, coz couldn't ping it in the first place.
i'll try `grpcs://`
i'll try `grpcs://` and the certs per multi-org tutorial.
@yipcma either you change your fabric to not require tls comms or change your connection profile to work over tls
yes, trying it out right now, thanks so much for the pointers.
working fine now, thanks so much @davidkel @ankashu
Has joined the channel.
Hello, is it possible to use composer-rest-server with the passport-local strategy? in order to provide multi users without having to have an account on social networks ?
[ ](https://chat.hyperledger.org/channel/composer?msg=MNfPZx6tdrEa5RPPt) @pascallimeux see response here -> https://chat.hyperledger.org/channel/composer?msg=jP6znqHXa6fChLiAX
[ ](https://chat.hyperledger.org/channel/composer?msg=tPJ6r6iELXQk4v8bG) @mahoney1 thank you, I will try with google-oauth2
Being having this error when try to ping
Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, errThe supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.gtb.zonenet")
i upgraded composer to 0.15.1
So using network cards now.
Any idea why that happens when i try to ping the network?
i got my key and cert from the peerOrgs users/Admin@.../msp/signcert and keystore folders
i got my cert and key from the peerOrgs users/Admin@.../msp/signcert and keystore folders
Hi guys, a newbie question...can I add new identities to a sample network in composer playground or is it just a demo environment?
[ ](https://chat.hyperledger.org/channel/composer?msg=P8ZEdcvE5tfvWPYdA) @gen_el its not entirely obvious no based on the snippet - but a question: you using your own CA server (looking at the domain name for CA server). Its possible that there's 'more' in your `crypto-config` than meets the eye - did you start from scratch or from a BYFN setup? - what instruction/steps have you taken to get this far? And hence the unknown authority for crypto materials created (potentially) by a previous CA server? You will know best - Are you doing a single-org or multi-org network setup ?
[ ](https://chat.hyperledger.org/channel/composer?msg=P8ZEdcvE5tfvWPYdA) @gen_el its not entirely obvious why, based on the snippet - but a question: you using your own CA server (looking at the domain name for CA server). Its possible that there's 'more' in your `crypto-config` than meets the eye - did you start from scratch or from a BYFN setup? - what instruction/steps have you taken to get this far? And hence the unknown authority for crypto materials created (potentially) by a previous CA server? You will know best - Are you doing a single-org or multi-org network setup ?
[ ](https://chat.hyperledger.org/channel/composer?msg=BBDN98JYuEwiq5Ea7) @Kmantrip yes you can add identities - you could use the tutorial https://hyperledger.github.io/composer/tutorials/playground-tutorial.html and issue new identites in playground (map them to the participants you create in the tutorial) then add them to your wallet in Playground so you can use/switch between those identities interactively
What is the difference between each ..
org.hyperledger.composer.system.*
org.hyperledger.composer.system.**
org.acme.perishable.*
org.acme.perishable.**
Has joined the channel.
.* includes all types in the namespace
.** includes all types in the namespace and in all sub-namespaces
[ ](https://chat.hyperledger.org/channel/composer?msg=6qRDjgTqzPn8CDKR5) @mostafa.elsayyad [ ](https://chat.hyperledger.org/channel/composer?msg=6qRDjgTqzPn8CDKR5) @mostafa.elsayyad ```1. .system.** - recursive System ACL to permit all access - access to all operations and commands in the business network, including network access and business access.
2. .* is non-recursive.
3. org.acme.perishable.* - resources under the business network namespace
4. org.acme.perishable.** all resources recursively found under the business network namespace
``` See Evaluation of and Access Control Rule grammar here https://hyperledger.github.io/composer/reference/acl_language.html
[ ](https://chat.hyperledger.org/channel/composer?msg=6qRDjgTqzPn8CDKR5) @mostafa.elsayyad [ ](https://chat.hyperledger.org/channel/composer?msg=6qRDjgTqzPn8CDKR5) ```1. .system.** - recursive System ACL to permit all access - access to all operations and commands in the business network, including network access and business access.
2. .* is non-recursive.
3. org.acme.perishable.* - resources under the business network namespace
4. org.acme.perishable.** all resources recursively found under the business network namespace
``` See Evaluation of and Access Control Rule grammar here https://hyperledger.github.io/composer/reference/acl_language.html
Hey all.. I'm running composer 13.2, and I recently ran into some errors like this while running some transactions: "Error trying invoke business network. Error: The event hub has not been connected to the event source"
Does composer-rest-server have any method for reconnecting to an event port ?
nvm, found the issue addressing this: https://github.com/hyperledger/composer/issues/2799
[ ](https://chat.hyperledger.org/channel/composer?msg=LsKABaMyAxDtZrgYe) @mahoney1 Thank You...
can you provide me link to the documentation for how to create identities and link them to participants in composer solution and expose them as rest apis to client for role based authentication ??????
Could you please suggest how can I track all the transactions(Transaction Id, Timestamp, Participants involved) on a particular Asset
[ ](https://chat.hyperledger.org/channel/composer?msg=ZwgJQKe58gXxSxxr4) @rthatcher Thank you!
Has joined the channel.
i m getting this error
Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: error starting container: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer/vendor/gopkg.in/olebedev/go-duktape.v3
In file included from chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:7:0:
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go: In function '_duk_error':
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.h:510:127: warning: right-hand operand of comma expression has no effect [-Wunused-value]
(duk_error_raw((ctx), (duk_errcode_t) (err_code), (const char *) (DUK_FILE_MACRO), (duk_int_t) (DUK_LINE_MACRO), __VA_ARGS__), (duk_ret_t) 0)
^
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:153:2: note: in expansion of macro 'duk_error'
duk_error(ctx, err_code, "%s", str);
^
# composer/vendor/gopkg.in/olebedev/go-duktape.v3
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.go:134: constant 18446744073709551615 overflows int
"
Command failed
@muasif80 Looks like you are trying to use fabric 1.1, we only support fabric 1.0.
[ ](https://chat.hyperledger.org/channel/composer?msg=YL9pX3XYzyK4PGYJi) It would be great is someone can advice on the same.
[ ](https://chat.hyperledger.org/channel/composer?msg=MhmSnpLhMfY7gAkqo) @yogesh.fulsunge - Within composer you create Participants, then Issue Identities to Participants. On the REST server the the identity functions are under 'system'. Starting the REST server in multi user mode will enforce the authentication.
[ ](https://chat.hyperledger.org/channel/composer?msg=mvYt3qNyK6LEmtt9D) @prmdmshra - As mentioned , we have a current issue open for Historian to showhistory of changes/ deltas for an asset - https://github.com/hyperledger/composer/issues/991
As a workaround - so for sample network `trade-network`
```
query selectTransaction{
description: "choose a specific commodity "
statement: SELECT org.acme.biznet.Trade
WHERE (commodity == _$commodity )
}
```
finds all transactions of transaction `Trade` for a particular asset and add a date range- so that's a query showing those transactions (what changed) - .ie once you've updated your network to recognise the newly added query defined in your `queries.qry` and the named query defined in your .cto model file . The other way is to use Filters (as opposed to queries):on your REST client - so used a filter using `{"where":{"commodity":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"} `.. so find all transactions for asset Commodity with tradingSymbol (identifier) ABC - ie a relationship and I can resolve the transaction and the particular asset it relates to. In this case it was 1 transaction (could be more) showing changes and I can see the transaction (with resolved) detail, for that asset
[ ](https://chat.hyperledger.org/channel/composer?msg=mvYt3qNyK6LEmtt9D) @prmdmshra - We have a current issue open for Historian to showhistory of changes/ deltas for an asset - https://github.com/hyperledger/composer/issues/991
As a workaround - so for sample network `trade-network`
```
query selectTransaction{
description: "choose a specific commodity "
statement: SELECT org.acme.biznet.Trade
WHERE (commodity == _$commodity )
}
```
finds all transactions of transaction `Trade` for a particular asset and add a date range- so that's a query showing those transactions (what changed) - .ie once you've updated your network to recognise the newly added query defined in your `queries.qry` and the named query defined in your .cto model file . The other way is to use Filters (as opposed to queries):on your REST client - so used a filter using `{"where":{"commodity":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"} `.. so find all transactions for asset Commodity with tradingSymbol (identifier) ABC - ie a relationship and I can resolve the transaction and the particular asset it relates to. In this case it was 1 transaction (could be more) showing changes and I can see the transaction (with resolved) detail, for that asset
Hi Friends,
I have asked question on SO, Kindly reply it.
https://stackoverflow.com/questions/47691148/can-we-create-multiple-instance-of-fabric-composer-rest-server-for-same-business
Thank You,
Deepak Parmar
[ ](https://chat.hyperledger.org/channel/composer?msg=ypjkfKb9bLSPc7bPp) @deepakvparmar the SO has been answered.
Has joined the channel.
Hi Everyone, I've a issue with composer-rest-server
When I try to use it with multi user mode and try to make a transaction after importing the card it says `The current identity has not been registered: `
Even when using networkadmin card
Any idea why is that?
In the ACL language, for the `transaction` field, can I use some kind or `OR` syntax if I want something to be allowed via 2 different transactions?
Like `transaction: "txnA || txnB"`
[ ](https://chat.hyperledger.org/channel/composer?msg=4oBdnJBcBi9cENT4X) @varun-raj - when you create the Network Admin card with the `composer network start` command the card is created with the one-time secret (adminpw), and the first time you use it Certificates are downloaded and the secret is no longer valid. So I'm guessing that the CLI has downloaded the certificates and you are importing the old card file with the secret into the REST server wallet - and it doesn't work.
Back on the command line export the card WITH the certificates with a command like this:
`composer card export --file net-adm-cert.card --name admin@tutorial-network` and then use then new card to import into the REST server Wallet.
(You can compare the sizes of the new and old .card files and see if the new one is larger now that it contains the certificates.)
@rthatcher Hey thanks man. It worked for networkadmin. Should I export the card everytime for other participants as well?
[ ](https://chat.hyperledger.org/channel/composer?msg=xxanD5asssrkYLgoY) @nasht00 as the target in the ACL? It doesn't support an 'OR' condition when specifying the target presently - but you could create an abstract transaction and extend your two transaction types so that you can target the abstract transaction eg `abstract transaction spTransaction {` in your ACL eg. `org.acme.sample.spTransaction` - then have a rule something like this (sample, using a particular participant instance to try it out with ) ```rule one-of-twoTransactions {
description: "submit one of two transaction types"
participant: "org.acme.sample.SampleParticipant#1000"
operation: CREATE
resource: "org.acme.sample.spTransaction"
action: ALLOW
}``` but I guess your salient point might be around allowing an operator, rather than the model-driven method above ?
Has joined the channel.
I used that workaround yes, it worked fine, although I expect in some cases it will not make sense to groupe some transactions together under one parent
But actually I meant in the `transaction` field, not the `resource` field
[ ](https://chat.hyperledger.org/channel/composer?msg=L8onsMhLRAwCfKG3o) @varun-raj - it is quite a good idea to export (backup?) a card after it has certificates added to it. But it is more important if you are going to move the card from CLI into REST server or vice-versa. Rember to hit (ping?) the network before exporting the card.
Meaning, "the following transactions are allowed to update this resource"
@rthatcher I'm still confused about the login workflow. Say I'm building a react app. How will the login login to the system and access this REST Client?
Has joined the channel.
One question...What is better, to start composer rest server per identity or single one in "multiuser" mode. Any thoughts?
@aghaneka When you want to perform write operations and differentiate each action based on a user, go with the multiuser mode.
Has joined the channel.
hi guys, I want to start composer-rest-server with passport-jwt (another authentication strategy for passport), can anyone help me?
[ ](https://chat.hyperledger.org/channel/composer?msg=Z4HpzYFAJN5yrXCFT) @nasht00 right, I see... might want to raise an issue - else you might presently need a function to return a true/false on the transaction type allowed (don't know how extensive your scenario is or will become etc) - only other method I tried just now (notwithstanding your comment on grouping) was ```rule testspTransaction {
description: "TEST"
participant(p): "org.acme.sample.SampleParticipant#1000"
operation: CREATE
resource: "org.acme.sample.SampleAsset"
transaction(tx): "org.acme.sample.spTransaction"
condition: (1)
action: ALLOW
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=xrTs6sFvhPchM284t) @zhaochy try looking at this thread as a pointer -> [ ](https://chat.hyperledger.org/channel/composer?msg=etkJ7wzdbdFnSXW79)
[ ](https://chat.hyperledger.org/channel/composer?msg=xrTs6sFvhPchM284t) @zhaochy try looking at this thread as a pointer -> (https://chat.hyperledger.org/channel/composer?msg=etkJ7wzdbdFnSXW79)
[ ](https://chat.hyperledger.org/channel/composer?msg=xrTs6sFvhPchM284t) @zhaochy try looking at this thread as a pointer -> https://chat.hyperledger.org/channel/composer?msg=etkJ7wzdbdFnSXW79)
[ ](https://chat.hyperledger.org/channel/composer?msg=xrTs6sFvhPchM284t) @zhaochy try looking at this thread as a pointer -> https://chat.hyperledger.org/channel/composer?msg=etkJ7wzdbdFnSXW79
[ ](https://chat.hyperledger.org/channel/composer?msg=xrTs6sFvhPchM284t) @zhaochy try looking at this thread as a pointer -> `https://chat.hyperledger.org/channel/composer?msg=etkJ7wzdbdFnSXW79`
[ ](https://chat.hyperledger.org/channel/composer?msg=LX5iQBs296oArWFdM) @zhenkunxu a resource/target/participant/originator (or set of same) that matches the target of an access control rule -> https://hyperledger.github.io/composer/reference/acl_language.html
@mahoney1 thanks
Hi. I want to have a transaction PlaceOrder which would have an attributte ProductDetails. In ProductDetails I want to specify Intiger quantity and a Product. Products would be constants (eg. Stone{name: stone, measureUnit: kg}, Water{name:water, measureUnit: L}) How would I set those Products?
Has joined the channel.
for any transaction that i have where i am trying to debug and follow the events. how can i see the `console.log` output? I don't see it in the Chrome Dev Tool console
fyi @here - the Community call today (Thurs) is at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-7th December-2017
[ ](https://chat.hyperledger.org/channel/composer?msg=pnnyxKezqaBiJFu4m) @danshao `docker logs ...
Is it not possible for two participants to access the same asset at the same time?
I'm getting transaction timeouts when i try to do so
Hey guys, can `composer-cli` be installed on Red-Hat dists? I ran into some issues when installing on CentOS.
[ ](https://chat.hyperledger.org/channel/composer?msg=3DjnvbmePGQDumLrq) @luminance - This doc https://hyperledger.github.io/composer/installing/development-tools.html 'Installing and Developing with Hyperledger Composer' covers the supported OS.
[ ](https://chat.hyperledger.org/channel/composer?msg=3DjnvbmePGQDumLrq) @luminance - This doc https://hyperledger.github.io/composer/installing/development-tools.html 'Installing and Developing with Hyperledger Composer' covers the supported OS.
Another user has raides this issue about Red-Hat:
https://github.com/hyperledger/composer/issues/2028
Please feel free to add a comment to it with your experiences
[ ](https://chat.hyperledger.org/channel/composer?msg=NpsNNsE5JEppwTWLe) @nickyromeijn do you mean 'updating' or merely 'accessing' ?
@mahoney1 Accessing (READ)
It happens when i try to access the same assets and try to resolve the relationships
when i check the rest-server logs it's says there are query timeouts on the asset
@nickyromeijn so you make to REST /GET requests (with resolution), in quick succession, near-simultaneous? Can you provide some more context if you can. thanks.
@nickyromeijn so you make two REST /GET requests (with resolution), in quick succession, near-simultaneous? Can you provide some more context if you can. thanks.
@nickyromeijn so you make two REST /GET requests (with resolution), in quick succession / near-simultaneous? Can you provide some more context if you can. thanks.
@nickyromeijn so you make two REST /GET requests (with resolution), in quick succession / near-simultaneous? Can you provide some more context if you can (are you doing system / performance testing, many transactions etc etc). thanks.
@nickyromeijn so you make two REST /GET requests (with resolution), in quick succession / near-simultaneous? Can you provide some more context if you can (are you doing system / performance testing, many transactions etc etc). May wish to create a Stack Overflow with the logs you gathered - thanks.
https://zoom.us/j/441168172 Community call begins in a few mins FYI
@mahoney1 I'm doing 3 to 4 GET requests with resolution in quick succession. It might have something to do with reference recursion, this works a little bit wonky in my experience
[ ](https://chat.hyperledger.org/channel/composer?msg=DdXFdDFz3kLasNr5S) @nickyromeijn ok thanks for the info. Can you create an issue, with all the relevant info to be able to repeat it - because obviously it would need to be investigated etc.
If i manage to recreate the situation i'll post the logs on stack/git issues. Rebooting the rest-server usually fixes the problem for a while
[ ](https://chat.hyperledger.org/channel/composer?msg=EE4NhuNCt5ABPcXiE) @nickyromeijn probably best to create an issue in that case....
I was at a blockchain event yesterday where @sstone1 was speaking; you guys and the composer platform were the best represented of all the speakers, really enjoyed the demo as well
:thumbsup: so my compliments to the entire team ;)
@nickyromeijn thanks for the feedback !
@here. Can we return data from a transaction ?. For example, can I do a query in the transaction using the query defined in query file, further filter down the result set and return it back. Is that possible ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ozARF5pD69QchvDvy) @mahoney1 I cannot see any output from `console.log` while running composer-playground locally through the Chrome console.
[ ](https://chat.hyperledger.org/channel/composer?msg=ozARF5pD69QchvDvy) @mahoney1 I cannot see any output from `console.log` while running composer-playground locally through the Chrome console, works for `docker logs
[ ](https://chat.hyperledger.org/channel/composer?msg=ozARF5pD69QchvDvy) @mahoney1 I cannot see any output from `console.log` while running composer-playground locally through the Chrome console, works for `docker logs
Dose Composer have some high throughput solutions like https://github.com/hyperledger/fabric-samples/tree/release/high-throughput? I am working on a project of blockchain payment, now the account of the shop can only change balance once during block generation time. That is not very good....
@here How to issue an identity to a participant with which he can enroll more than once?
Currently whenever I create a .card file, I cant use it more than once.
Hi all, a question regarding error handling between transactions and the composer rest server. Currently it seems that a transaction error results into an internal server error on the composer rest server. Is this currently the only way to handle the business logic or did I look over a feature? For example lets say I have a /DeleteItem transaction and you can't delete the item when someone is still using it. In that case you throw the business logic error and Composer rest shows it as in internal server 500 error. Technically working fine as an error status code is an error status code wether it is 400 or 500 etc. I guess the internal server error just bugs me a little bit :)
why there is no docker images for composer-rest-server:0.16.0
in Mac OS, when I executing `npm install -g composer-cli`, a long time hang up appeared. who can avoid this?
``` grpc@1.6.6 install /Users/baoyangc/.nvm/versions/node/v8.9.0/lib/node_modules/composer-rest-server/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library```
@mahoney1 I have created and tested ACL with participants in place. I created all the identities and then clicked "use as" to test access for that particular participants. In a real production implementation, how are the real participants going to get their ID cards? Would they login somewhere or use CLI to generate and receive their own ID cards? Or would the admin relay the ID cards to them. Thanks.
@mna2016 Even I have the same doubt. Also I'm not able to use the same card for a participant more than one.
Do you have some solution for it?
Has joined the channel.
@varun-raj - A Business Network Card is not a single use artifact. When a card is created it has a one-time secret in it, and the first time it is used Certificates are downloaded to use instead of the secret and the secret becomes invalid. I don't know what your workflow and steps are, but I would suggest that after you use (connect to the Fabric) a card for the first time, Export that card and then you will be able to reuse the new card. If you are working with the CLI you will notice that the newly exported card is larger than the original .card file as it now contains the certificates.
Oh that sounds good. So after the first use in tne sense, after using it to issue an identifying should I export it?
Hi, everyone! What is the definition of the condition in the ACL.
[ ](https://chat.hyperledger.org/channel/composer?msg=cpidQWuR32yesDuuo) @baoyangc - I haven't checked in the last few days, but I pulled hyperledger/composer-rest-server a few days ago and it was v0.16.0
criteria that identifies a match of resource/target/participant (singular/plural/set of/combination of same) that is subject to an access control rule - https://hyperledger.github.io/composer/reference/acl_language.html
[ ](https://chat.hyperledger.org/channel/composer?msg=y9nhXDrjxkTLSM7aF) @mna2016 such exported identity cards should be handled with care since they contain unprotected credentials. We recommend that you only send identity cards that have been encrypted. Or (like you would for login access and credentials today for a system or application) you could provide a secure portal or means to send them to your destined users and they can decrypt / download / use.
Hello! Anybody tried to integrate composer-rest-server with auth0? Having hard time trying to figure out the right strategy for passport. Using passport-auth0. Seems like access_token is not being set in composer-rest-server, but it is being returned by auth0.
[ ](https://chat.hyperledger.org/channel/composer?msg=7sCxymix4kZgC4jNZ) @aneb yeah good question and how to know the circumstance (if you were to try conclude what the error was - eg. a 400 or 500 in isolation). This blog post may be of interest -> http://blog.restcase.com/rest-api-error-codes-101/ in terms of status codes.
Hi Team, I trying to call external services from rest server but it gives me following error
"message": "Error trying invoke business network. Error: chaincode error (status: 500, message: Error: Model violation in instance org.acme.sample.PostTransaction#396d3f34ff42bda4362f85f5eb48cc46cf848c177c8a77667c12fea8019af76e class org.acme.sample.SampleAsset has value Resource {id=org.acme.sample.SampleAsset#a1} expected a Relationship
when I trying with the same code in playground locally it works fine. Please sujjest me the solution
@suvpatil can you post your model and transaction code?
[ ](https://chat.hyperledger.org/channel/composer?msg=9PLsieELNumwwKxXR) @danshao [ ](https://chat.hyperledger.org/channel/composer?msg=9PLsieELNumwwKxXR) @danshao hmm not sure - this might help you ? https://stackoverflow.com/questions/18760213/chrome-console-log-console-debug-are-not-working you can always try another browser....and console....
[ ](https://chat.hyperledger.org/channel/composer?msg=kpMsgY8WhjM65gSGt) @shidosan my model
/**
* Sample business network definition.
*/
namespace org.acme.sample
asset SampleAsset identified by assetId {
o String assetId
--> SampleParticipant owner
o String value
}
participant SampleParticipant identified by participantId {
o String participantId
o String firstName
o String lastName
}
transaction SampleTransaction {
--> SampleAsset asset
o String newValue
}
event SampleEvent {
--> SampleAsset asset
o String oldValue
o String newValue
}
asset PostAsset identified by userId {
o String userId
o String id
o String title
o String body
}
transaction PostTransaction {
--> PostAsset asset1
--> SampleAsset asset
}
and transaction
function sampleTransaction(tx) {
// Save the old value of the asset.
var oldValue = tx.asset.value;
// Update the asset with the new value.
tx.asset.value = tx.newValue;
alert("Hi");
// Get the asset registry for the asset.
return getAssetRegistry('org.acme.sample.SampleAsset')
.then(function (assetRegistry) {
// Update the asset in the asset registry.
return assetRegistry.update(tx.asset);
})
.then(function () {
// Emit an event for the modified asset.
var event = getFactory().newEvent('org.acme.sample', 'SampleEvent');
event.asset = tx.asset;
event.oldValue = oldValue;
event.newValue = tx.newValue;
emit(event);
});
}
/**
* Handle a POST transaction, calling Node-RED running on Bluemix
* @param {org.acme.sample.PostTransaction} postTransaction - the transaction to be processed
* @transaction
*/
function handlePost(postTransaction) {
var url = 'http://10.102.8.158:1880/hello';
alert("hi" +url)
return post( url, postTransaction)
.then(function (result) {
alert(JSON.stringify(result));
alert("In post funct"+ result.body.userId)
postTransaction.asset.value = 'Count is ' + result.body.userId;
return getAssetRegistry('org.acme.sample.SampleAsset')
.then(function (assetRegistry) {
return assetRegistry.update(postTransaction.asset);
});
});
}
@suvpatil `SampleAsset has value Resource {id=org.acme.sample.SampleAsset#a1} expected a Relationship` seems to be a relationship error in your supplied JSON
run composer-rest-server meet error: ```-Cannot find module '/$HOME/.nvm/versions/node/v8.9.0/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node```
how to solve this
@suvpatil According to your model you should supply relationship string in your JSON when submitting a transaction not a Resource
```Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/$HOME/.nvm/versions/node/v8.9.0/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.```
[ ](https://chat.hyperledger.org/channel/composer?msg=K6X5WL4Z56ZmFiEvf) @shidosan so what is the modified change i need to do. Not understood properly
@suvpatil Can you show me the JSON you are providing to transaction?
[ ](https://chat.hyperledger.org/channel/composer?msg=qqBnKGsXkc5wAXWjF) @rthatcher Can please help me with the scrips that can do this?
[ ](https://chat.hyperledger.org/channel/composer?msg=oGoRCD7Jnd2khpngp) @shidosan {
"$class": "org.acme.sample.PostTransaction",
"asset1": "org.acme.sample.PostAsset#jwqw",
"asset": "org.acme.sample.SampleAsset#a1"
}
Try putting `resource:` before `org.acme.sample.SampleAsset#a1` and `org.acme.sample.PostAsset#jwqw`
@suvpatil Try putting `resource:` before `org.acme.sample.SampleAsset#a1` and `org.acme.sample.PostAsset#jwqw`
[ ](https://chat.hyperledger.org/channel/composer?msg=ijtPWTTgFie67bFS7) @shidosan no. Same error persist
[ ](https://chat.hyperledger.org/channel/composer?msg=H5KnGMCjDpqm9vofS) @mahoney1 but same is working throgh playground
If we are using composer, does it mean we don't need to define the chaincode? or does our .cto file translates into chaincode automatically by the composer tools?
@muasif80 please check the Composer docs & tutorials. Composer helps to simplify the chaincode dev, but it won't do the work for you. Your .cto file models the assets, while .js file is your logic, i.e. chaincode. I suggest you try the web playground with any existing example
That is fine. Basically i am seeing doc and asking for questions here as this forum is meant for this type of queries.
[ ](https://chat.hyperledger.org/channel/composer?msg=f4nacu67xmduC82Kt) @baoyangc have you checked composer pre-reqs? Was Node.js v 8.9.1 required?
I actually saw go code which was defining chaincode in fabric-samples. Here in a composer app i could not find any chaincode so i was curious where are they.
@muasif80 https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
@ankashu thanks
Hi can anybody share me connection profile file for multi host deployment...plz
When calling the query end point in rest server, can we get the entire object of the referenced entities like owner instead of just the id?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Bkd5Jdc4FEvqyDgKs) @ankashu Yes I have already completed this
@varun-raj did you see?
https://hyperledger.github.io/composer/tutorials/tutorials.html
Yeah @vsadriano I tried them
So when I use the rest client it gives me the Trader info like org.acme.Trader#1
How can I get the full info of the trader?
I saw Fabric Shim API used to define chaincode in go. Now i am trying to understand how the chaincode is implemented when we are using the composer.
composer chaincode is javascript (nodejs)
Ok
So basically it using the nodejs for defining chaincodes, which is one of the two languages to define chaincodes alongside go. Ok thanks.
can we debug the code in composer?
hi, is there a way to display a resource instance with composer client API ( JSON.stringify() doesn't work for resource instances and Serializer object is not available at this level)
[ ](https://chat.hyperledger.org/channel/composer?msg=xuM9ARiy66LmN4H5N) @mahoney1 yup that's not the issue. did not solve anything
Hello, is there any way to pass transient data when submitting a transaction? I need some fields not saved in the blocks.
what is the difference when we write in the acl file ..
resource: "org.hyperledger.composer.system.**"
and
resource: "**"
thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=6j6obbWSfyAkerHNt) @IliasStergiou I would think so - but I've never tried. Have a look here: https://github.com/hyperledger/fabric/tree/master/examples/chaincode/go/enccc_example
@ankashu I need transient data in composer.
Hi, is npm composer-cli installation compatible with SUSE LINUX Enterprise distribution ? Because i get errors while installationprozess
Hi, is npm composer-cli installation compatible with SUSE LINUX Enterprise distribution ? Because i get errors while installation process
``` gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/home/user/opt/node-v8.9.2-linux-x64/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack at emitTwo (events.js:126:13)
gyp ERR! stack at ChildProcess.emit (events.js:214:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Linux 4.4.90-92.45-default```
Hello,
I have added an ACL rule that only a participant can READ and UPDATE the Identity Registry 'org.hyperledger.composer.system.Identity'. I am trying to test it through cucumber:
```
Scenario: Tom can read the Identity Registry
Given I have issued the participant org.acme.User#user1 with the identity user1
When I use the identity user2
Then I should have the following identity of type org.hyperledger.composer.system.Identity
"""
[
{"$class":"org.hyperledger.composer.system.Identity", "identityId":"user1"}
]
"""
```
and I get the following error:
```
Undefined. Implement with the following snippet:
Then('I should have the following identity of type org.hyperledger.composer.system.Identity', function (string, callback) {
// Write code here that turns the phrase above into concrete actions
callback(null, 'pending');
});
```
Can the Identity Registry be accessed from cucumber?
@conroydave Hi! Did you try passport-auth0? I am having a hard time integrating with auth0. Could you, please, share your passport strategy?
@mahoney1 The problem my network was multi-org and was the connection json was not configured appropriately
So now am using a multi-org (2 0rg) connection profiles
But i encountered this error when running network start
composer network start -c PeerAdmin@zonebtp-network-gtb -a dist/btp-app@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A gtbnetworkadmin -C gtbnetworkadmin/admin-pub.pem -A skyenetworkadmin -C skyenetworkadmin/admin-pub.pem
[ ](https://chat.hyperledger.org/channel/composer?msg=L2j5KyBAASTb3XNzJ)
`composer network start -c PeerAdmin@zonebtp-network-gtb -a dist/btp-app\@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A gtbnetworkadmin -C gtbnetworkadmin/admin-pub.pem -A skyenetworkadmin -C skyenetworkadmin/admin-pub.pem`
I got this error -->
*Starting business network definition. This may take a minute...
TypeError: Path must be a string. Received [ 'gtbnetworkadmin/admin-pub.pem',
'skyenetworkadmin/admin-pub.pem' ]
Command failed*
TypeError: Path must be a string. Received [ 'gtbnetworkadmin/admin-pub.pem',
'skyenetworkadmin/admin-pub.pem' ]
Command failed
However it seemed to still deploy the bna file.
But i suspect all isn't well, as network ping took way too long
[ ](https://chat.hyperledger.org/channel/composer?msg=dop3o8DXxqxNK4otB) @gen_el copy the file .pem into your work directory and re-run the command. Also you can see if there's a new Docker container with composer chaincode (docker ps)
[ ](https://chat.hyperledger.org/channel/composer?msg=xkJdQbmtzATT9XJWb) @ankashu New chaincode containers were created the first time. I just don't get why it threw that error. Running it again will throw an exception because the chaincode already exists. Anyways, i probably just keep working with it. Network ping returned successfully. Just took a little longer than i expected.
[ ](https://chat.hyperledger.org/channel/composer?msg=fHowy3gTkjpxiNA5E) @gen_el checking the chaincode container logs also might help
[ ](https://chat.hyperledger.org/channel/composer?msg=HkQ5D5xJ2iqtS3Jru) @ankashu Will check. Thanks. Do you have a link to page that explain the schema of the endorsement-policy.json file?
[ ](https://chat.hyperledger.org/channel/composer?msg=HkQ5D5xJ2iqtS3Jru) @ankashu Will check. Thanks. Do you have a link to a page that explains the schema of the endorsement-policy.json file?
@gen_el Older versions of composer didn't allow multiple -A/-C definitions on the command line 0.16.0 should do. I think that is the error you are getting
How do I specify `endorsementPolicyFile` when starting the composer network via SDK?
```
await adminConnection.start(businessNetworkDefinition, { networkAdmins: networkAdmins } )
```
How do I specify `endorsementPolicyFile` when starting the composer network via SDK?
```await adminConnection.start(businessNetworkDefinition, { networkAdmins: networkAdmins } )
```
How do I specify `endorsementPolicyFile` when starting the composer network via SDK?
```await adminConnection.start(businessNetworkDefinition, { networkAdmins: networkAdmins } )
```
I'm currently doing this via cli: `composer network start -c PeerAdmin@domain -a app.bna -o endorsementPolicyFile=endorsement-policy.json -A networkadmin -C admin-pub.pem`
@here. Can we return data from a transaction ?. For example, can I do a query in the transaction using the query defined in query file, further filter down the result set and return it back. Is that possible ?
@bsteinfeld try
```
await adminConnection.start(businessNetworkDefinition, { networkAdmins: networkAdmins, endorsementPolicyFile: 'endorsement-policy.json'} )
```
@Sandeep Only way to do it is to emit an event
@davidkel Can i listen to a specific event?
@davidkel . Is it going to be supported in future ?
[ ](https://chat.hyperledger.org/channel/composer?msg=tDbgdG6AeLhDar985) It seems like its all or nothing at the moment.
[ ](https://chat.hyperledger.org/channel/composer?msg=odq9PfMoYZDrEXx64) @davidkel I suspected that was it. Thanks.
@davidkel Great that seemed to work (at least it didn't error out). Is there a simple way to validate/check what endorsement policy is currently set (without actually invoking transactions)?
Hello, I have a concern about how COMPOSER works with Fabric.
https://www-03.ibm.com/systems/data/flash/dk/lsu2017/D2T1S5_Blockchain.pdf
On this link, Slide no.5
Fabric network seems to be internal inside each organization.
Is that the case of using composer?
Composer makes sure to sync two different internal fabric networks?
or multiple?
I need guidance about this.
Thank you.
@bsteinfeld Not that I am aware of
ok thanks so much David!
@MuhammadSalah Composer runs in a hyperledger fabric network and thus works within the confines and capabilities of hyperledger fabric itself
Let me rephrase my question @davidkel
Why do each ORG Server has its own Fabric network?
Why is FABRIC is not a common network?
I understand Composer executes over Fabric through the NODE SDK.
So I have a confusion here, why is it advised to separate Fabric networks?
according to that sketch I am referring to.
You can just tell me it's mis-informed and I will ditch it.
I just hope that I can understand how to leverage COMPOSER.
@davidkel It looks like the slide shows the TESTING/DEV ENV against PROD ENV
@MuhammadSalah I can't comment on the slide you are looking at as I haven't seen this presentation. You would architect your fabric network based on requirements of the participating organisations. You might want to read the hyperledger fabric documentation to help you understand the principles of a fabric network at http://hyperledger-fabric.readthedocs.io/en/release
As an example consider 2 orgs that want to share a ledger. They would have their own peer which is joined to the channel (channels have their own ledger and world state) to share that ledger. The may use a 3rd party to host the orderer and each use their own ca implementation. Hyperledger composer would then run on this fabric network
That's why they separated the whole thing.
I just would like a clarification still on this mere information.
COMPOSER executes its instructions on behalf of the peers it holds the identity for?
So when it models an asset, its own embedded chaincodes, and ACL.
Is there any good document to present the flow of interaction between COMPOSER and FABRIC?
I already studied FABRIC to a good extent.
I am sorry about the mis-interpretation I had from these slides, but they seemed to be shocking at first for me.
Because, I don't understand when you model a whole network in a banana file; and you start deploying it over the fabric.
How do you choose your anchor peers?
I would suggest the composer doc website to start https://hyperledger.github.io/composer/stable/index.html
Thank you, I will read it carefully.
I hope I find my answer, sorry for the nuisance :)
np
I hope, if you could direct me to a specific context to cut me the slack of finding the technical part.
Because I believe I skimmed these docs before.
They focus on the development view, not the operational view.
@MuhammadSalah Composer has nothing to do with operational aspects of hyperledger fabric. If you are looking for deployment capabilities you might want to look at the Cello project
I just understood that @davidkel
Through the connection profile, you target a specific channel.
So basically, COMPOSER is an accelerator, to maintain a fabric channel.
You model the ledger assets, put scripts as chaincode, provision programmatic ACL.
makes sense to me.
I always thought, composer connects to the whole network.
My fault, my mistake, I should have learnt that earlier.
But I am new to all of this.
no worries
Hope that you see the benefits and advantages of using composer to develop your solutions
Has joined the channel.
Hi All, I am first time user, just started the composer developper tutorial, but had already experimented with HLF.
My problem: I am using compose CLI on MACOS but using docker toolbox instead of docker for mac
When I try to install the runtime, I get an error stating that compose cannot connect to the peer
I tried to change the address of the peer0 using a connection.json file
I was succesful with this when experiemnting with Fabric
But this time, it seems the file is not read. Where am I supposed to save that connection.json file??
Thanks for any help
Here is my connection.json file, currently in the tutorial-network directory:
{
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://172.19.0.5:7050" }
],
"ca": { "url": "http://172.19.0.5:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://172.19.0.5:7051",
"eventURL": "grpc://172.19.0.5:7053"
}
],
"keyValStore": "${HOME}/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}
I got the address 172.19.0.5 using docker inspect peer0.org1.example.com
Has joined the channel.
Has joined the channel.
Has joined the channel.
@here, How can I query with a resource as a condition. Like owner = _$participant
Found it. Just need to send full identiifer :)
Has joined the channel.
Hi,
Hi
I am trying to deploy my application by following this link https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
but in the last step I get this error while pinging it via CLI but I when I use "->connect now" in composer framework it connects to my business network, the error is
*Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed*
What am I doing wrong? I tried tearing down fabric and re running the process for deployment but I get same error
Hi
I am trying to deploy my application by following this link https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
but in the last step I get this error while pinging it via CLI but I when I use "->connect now" in composer framework it connects to my business network, the error is
*Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed*
What am I doing wrong? I tried tearing down fabric and re running the process for deployment but I get same error
Hi
I am trying to deploy my application by following this link https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
but in the last step I get this error while pinging it via CLI but I when I use "->connect now" in composer framework it connects to my business network, the error is
*Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed*
What am I doing wrong? I tried tearing down fabric and re running the process for deployment but I get same error
Screenshot from 2017-12-09 16-47-54.png
@Sneha What version of composer are you using ? `composer --version` should tell you. I assume you needed to delete your Admin1@university card from the card store when you tried it again ?
[ ](https://chat.hyperledger.org/channel/composer?msg=LxdhzMrqBxJDtyMDx) @davidkel Composer version is v0.16.0. Yes, I did it from scratch by the deleting card and restarting the fabric
@Sneha you need to look at the logs of the ca server to see what is going on then. `docker logs ca.org1.example.com` hopefully will provide info about why you are getting an auth failure
@davidkel it says [DEBUG] Failed to get identity 'Admin1': sql: no rows in result set
@Sneha Admin1 doesn't exist. The tutorial says to use `admin` which is the bootstrap registrar of the ca server
@davidkel okay, so while using this command " composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card " is the networkAdmin identity always constant which is "admin" or can it be changed to another ID issued in the ID registry of the business network ?
@davidkel okay, so while using this command " composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card " is the networkAdmin identity always constant which is "admin" or we can change it according to the another ID issued in the ID registry of the business network ?
@Sneha You can bind any identity you want at deploy time to a NetworkAdmin participant so long as you either have the crypto material already or you provide a secret to an identity ready to be enrolled in the fabric ca server.
@davidkel Okay, Thank you for the helpful comments. I am trying to understand this. I have created an identity using `Issue ID` on a participant which is "Admin1" How do I ensure that identity is enrolled in fabric ca server. Can I deploy the business network using this "Admin1" identity?
@davidkel Okay, Thankyou I am trying to understand this. I have created an identity using `Issue ID` on a participant which is "Admin1" How do I ensure that identity is enrolled in fabric ca server. Can I deploy the business network using this "Admin1" identity?
Hii All
can you tell me how to execute queries using playground and retrieve values ??
console.log('Received tradeProposal: ' + tradeProposal.sellerId);
var seller = factory.newResource(NS, 'Trader', traderId);
seller = query('findTraderById', {'traderId':traderId});
console.log('after executing findTraderByID query seller email is :' + seller.email);
console.log('after executing findTraderByID query seller email is :' + seller.name);
console.log('after executing findTraderByID query seller email is :' + seller.id);
console.log('after executing findTraderByID query seller email is :' + seller.contactNumber);
the above query returns undefined values in below logs
as seen from browser console
can you tell whats wrong here?
@yogesh.fulsunge I believe you have to save the new resource to registry before the query can find it
Hi All,
Responding to my own post.
Not sure if this is of interest to anyone (possibly also people experimenting on real node inestead of docker?), but I found a solution to the problem I previously reported (running the tutorial on MacOS using docker toolbox instead of Docker for Mac).
Docker Toolbox uses a Linux VM to run the engine that executes the containers. On my mac, the external IP of this container is 192.168.99.100. But by default, the composer tutorial assumes the containers can be reached using the localhost address, eg at grpc://localhost:7051/
This is what need to be changed when using docker toolbox.
Fortunately, the createPeerAdminCard.sh script normally accepts a `--host` parameter to change this.
Unfortunately, the script is called through a wrapper script that does not accept this parameter. So the solution is to skip the wrapper and call directly the script:
fabric-scripts/hlfv11/createPeerAdminCard.sh --host 192.168.99.100
```
Using composer-cli at v0.16.0
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Successfully imported business network card
Card file: /tmp/PeerAdmin@hlfv1.card
Card name: PeerAdmin@hlfv1
Command succeeded
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --name
Hi all, does anyone knows how to pass the current participant as a relationship to an asset in its creation process?
Currently this is what I'm doing, but it was not working:
```
Hi all, does anyone knows how to pass the current participant as a relationship to an asset in its creation process?
Currently this is what I'm doing, but it was not working:
```
var factory = getFactory();
var asset = factory.newResource('namespace', 'SampleAsset', 'asdf');
asset.owner = getCurrentParticipant().getFullyQualifiedIdentifier();
```
And my cto is defined as below:
```
participant User {}
asset SampleAsset {
--> User owner
}
Hi all, does anyone knows how to pass the current participant as a relationship to an asset in its creation process?
Currently this is what I'm doing, but it was not working:
```
var factory = getFactory();
var asset = factory.newResource('namespace', 'SampleAsset', 'asdf');
asset.owner = getCurrentParticipant().getFullyQualifiedIdentifier();
```
And my cto is defined as below:
```
participant User {}
asset SampleAsset {
--> User owner
}
```
The error shown on the playground was:
```
t: Model violation in instance namesapce.SampleAsset#1234. class namesapce.User has value namesapce.User#9689 expected a Relationship.
```
Hi all, does anyone knows how to pass the current participant as a relationship to an asset in its creation process?
Currently this is what I'm doing, but it was not working:
```var factory = getFactory();
var asset = factory.newResource('namespace', 'SampleAsset', 'asdf');
asset.owner = getCurrentParticipant().getFullyQualifiedIdentifier();
```
And my cto is defined as below:
```participant User {}
asset SampleAsset {
--> User owner
}
```
The error shown on the playground was:
```t: Model violation in instance namesapce.SampleAsset#1234. class namesapce.User has value namesapce.User#9689 expected a Relationship.
```
In the document, relationship is defined just like a fully qualified identifier:
https://hyperledger.github.io/composer//reference/cto_language.html
https://hyperledger.github.io/composer/jsdoc/module-composer-common.Identifiable.html#getFullyQualifiedIdentifier__anchor
However, based on the error message, they don't seem to be the interchangeable.
So, my question is, in general, how to pass an asset/participant into another asset as a relationship dynamically in the transaction function
Would very much appreciate if someone can help answer it.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Could you please suggest how can I send notification message for my Angular app on meeting any certain condition.
Specifically stating I am working on a PoC for Birth registration and trying to notify the user(Parent) for lets say Child attaining age of 5 years and enrolling for Primary education. Any advice will be very helpful.
And thanks you for your continuous support. You guys are a great team :-)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=zZwtB9uBfRtrQj4PB) @pangzineng `asset.owner = getCurrentParticipant();`
[ ](https://chat.hyperledger.org/channel/composer?msg=xouEi6GgCEGh6vQCJ) @prmdmshra you can emit events from a transaction processor function. your angular app can subscribe to those events from the REST server by using websockets. see:
https://hyperledger.github.io/composer/business-network/publishing-events.html
-and-
https://hyperledger.github.io/composer/integrating/publishing-events.html
anyone there ?
need help in generating rest apis using composer-rest-server... I am getting errors
such as Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'
@chessy looks like you are using node v9. Which isn't supported, please use node 8.9 and ensure you do an npm install with that version of node
yeah same issue i think
thanks will have to do that
Hi guys, I have completed the developer tutorial created by IBM. Now I want to learn more about Composer. Can anyone suggest me good resources online. Or where to go from now ?
@AbhilashSharma there's plenty of content on the main website if you haven't seen it yet: https://hyperledger.github.io/composer/introduction/introduction.html
Has joined the channel.
Has joined the channel.
hey.. i need help.. i am totally a newbie in hyperledger technologies. i just tried to install hyeperledger composer but i cant install compser-cli in ubuntu, can i get help?
Hello,
How to make 2 developers work and edit in the same bna file at the same time?
@rahulkannur You have to set up the development environment before installing composer-cli. There is detailed information on the hyperledger website https://hyperledger.github.io/composer/installing/development-tools.html
I have already installed the development envirmonment.
but it is running now locally
so what to change in to make the composer playground for example common between 2 developers
do we have an method to set permission to register an participant Type instance by Issuer
for example: certificate A is issued by ca.org1.example.com, certificate B is issued by ca.org2.example.com, and A can be registered as an participant AP instance, but B can't
Hi All,
How can I debug my transaction code when using composer playground in browser only mode? (On MacOS)
For example, I would like to insert the equivalent of debug printf or logs messages, but I ddidn't find where the logs are going (if any), except the results that pops up in the end.
Thanks in advance,
Olivier.
[ ](https://chat.hyperledger.org/channel/composer?msg=oqEATjeXsoownMrep) @rahulkannur hi there - welcome - sure you just go to https://hyperledger.github.io/composer/installing/development-tools.html (I assume you have all the prereqs, using the prereqs-ubuntu.sh script) and that you tried to install composer CLI as a non-root user (as instructed there) and you have a network connection to install from NPM repository (or not using a proxy) ..?
@mahoney1 thanx. my that error has gone.
[ ](https://chat.hyperledger.org/channel/composer?msg=9P73v9yiq8ECs3E47) @mostafa.elsayyad install the Playground in a cloud environment? Each can have a BN card to the deployed environment. But it is not collaborative - one developer won't see the others changes interactively - and not until he reconnects to the other Developer's deployed changes.
[ ](https://chat.hyperledger.org/channel/composer?msg=9P73v9yiq8ECs3E47) @mostafa.elsayyad install the Playground in a cloud environment? Each can have a BN card to the deployed environment. But it is not collaborative - one developer won't see the others changes interactively - and not until he reconnects to the other Developer's deployed changes. You can allow developers independently work with model files, that will be imported to the same modeled BNA.
while following the tutorial from this site but while i am creating a application given in this website http://www.goverticalworkshop.com/resources/how-to-create-a-decentralized-application-running-on-hyperledger-fabric-network i am getting this error composer network deploy -a dist/news-network.bna -p hlfv1 -i PeerAdmin -s randomString
composer network deploy [options]
Deploys a business network to the Hyperledger Fabric
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--archiveFile, -a The business network archive file name [string] [required]
--loglevel, -l The initial loglevel to set [choices: "INFO", "WARNING", "ERROR", "DEBUG"]
--option, -o Options that are specific specific to connection. Multiple options are specified by repeating this option [string]
--optionsFile, -O A file containing options that are specific to connection [string]
--networkAdmin, -A The identity name of the business network administrator [string] [required]
--networkAdminCertificateFile, -C The certificate of the business network administrator [string]
--networkAdminEnrollSecret, -S The enrollment secret for the business network administrator [string]
--card, -c The cardname to use to deploy the network [string] [required]
--file, -f File name of the card to be created [string]
Missing required arguments: networkAdmin, card
'composer network deploy -a dist/news-network.bna -p hlfv1 -i PeerAdmin -s randomString' this is the command that i have executed
[ ](https://chat.hyperledger.org/channel/composer?msg=xPb4wuW3Aw4LgSPNN) @rahulkannur suggest to contact the author - the tutorial looks out of date, at a guess.
[ ](https://chat.hyperledger.org/channel/composer?msg=xPb4wuW3Aw4LgSPNN) @rahulkannur suggest to contact the author - the tutorial looks out of date, you would need to use business cards, just like shown in the tutorials here https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
@mahoney1 can you please tell me what that command does just in brief.
[ ](https://chat.hyperledger.org/channel/composer?msg=nM2WHQezo7iWKHwHC) @odalle hi there - see this S/O here https://stackoverflow.com/questions/47177296/hyperledger-composer-playground-can-you-see-results-of-console-logsomething (it also has a link to more info)
[ ](https://chat.hyperledger.org/channel/composer?msg=yygZEvCppqi7fusMM) @mahoney1 Got it. Works well. Thanks!
@rahulkannur it deploys the Composer runtime and business network to Hyperledger Fabric - equivalent commands (per tutorial is) and assuming you ran `./createPeerAdminCard.sh` earlier from the `fabric-tools` directory? ; ```composer network deploy -a dist/news-network.bna -p hlfv1 -i PeerAdmin -s randomString
composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName news-network
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile dist/news-network.bna --file networkadmin.card
composer card import --file networkadmin.card```
@rahulkannur it deploys the Composer runtime and business network to Hyperledger Fabric - equivalent commands (per tutorial) are - and assuming you ran `./createPeerAdminCard.sh` earlier from the `fabric-tools` directory? ; ```composer network deploy -a dist/news-network.bna -p hlfv1 -i PeerAdmin -s randomString
composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName news-network
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile dist/news-network.bna --file networkadmin.card
composer card import --file networkadmin.card```
@rahulkannur it deploys the Composer runtime and business network to Hyperledger Fabric - equivalent commands (per tutorial) are - and assuming you ran `./createPeerAdminCard.sh` earlier from the `fabric-tools` directory? ; ```
composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName news-network
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile dist/news-network.bna --file networkadmin.card
composer card import --file networkadmin.card```
Hi @mahoney1 - there were number of questions here regarding good old debugging, inserting the breakpoints etc. I suspect that Composer does not have it - but one can use either Atom or Visual Studio plugins for Composer to have it all. Is this correct assumption?
[ ](https://chat.hyperledger.org/channel/composer?msg=XrdwsTBjMyPqzyb5t) @odalle ps see also https://hyperledger.github.io/composer/problems/diagnostics.html for more on logs.
[ ](https://chat.hyperledger.org/channel/composer?msg=QaNH5jKxsAjiWZGjm) @ankashu on breakpoints: these are set by the tooling :-) You can just use the embedded connector (eg TP functions) to try out / step through each breakpoint - for more info on VSCode -> https://code.visualstudio.com/docs/editor/debugging and Atom -> https://stackoverflow.com/questions/36964280/how-do-i-set-a-breakpoint-inside-of-atoms-package and I posted the link to diagnostics/logging above.
[ ](https://chat.hyperledger.org/channel/composer?msg=QaNH5jKxsAjiWZGjm) @ankashu on breakpoints: these are set by the Editor tooling :-) You can just use the embedded connector (eg TP functions) to try out / step through each breakpoint - for more info on VSCode -> https://code.visualstudio.com/docs/editor/debugging and Atom -> https://stackoverflow.com/questions/36964280/how-do-i-set-a-breakpoint-inside-of-atoms-package and I posted the link to diagnostics/logging above.
@mahoney1 thanks, I'll have a look
[ ](https://chat.hyperledger.org/channel/composer?msg=C2ukiKHZritnfSLsj) @mahoney1 Thanks, I had found that one. NB: I also posted the question on S/O, if you want to copy your answer there: https://stackoverflow.com/questions/47750679/how-to-debug-hyperledger-composer-transaction-code-in-playground
While defining an asset in hyperledger composer model file, how to deal with forms, images, videos? For example, let's say if my asset is house and I want to store an image of the house how do I define this in an asset?
While defining an asset in hyperledger composer model file, how do we deal with forms, images, videos? For example, let's say if my asset is house and I want to store an image of the house how do I define this in an asset?
[ ](https://chat.hyperledger.org/channel/composer?msg=QqZpFoSTq5AoaQyjy) @Sneha I don't think you want to save that kind of data. You use the business network only to ave meta-data, eg. the URL of the photo
Hi all, can anyone give an actual explanation for the `additionalConnectOptions` parameter in `businessNetworkConnection.connect()` method?
The document is here: https://hyperledger.github.io/composer/jsdoc/module-composer-client.BusinessNetworkConnection.html#connect__anchor
There is nowhere in the entire document space with the explanation.
I've been stuck with connection issue for the whole day trying to get my test cases running. I couldn't get it connected with a simple `.connect(cardName)` command (which was given by all the sample test cases), so I hope the `additionalConnectOptions` would be helpful.
A bit more background: the connection works fine during the setup in `before()` method, but when the test case start and I need to switch identity, I'm not able to re-connect with any id card once I disconnect from the connection established during `before()`
@odalle yeah, I have referred the documentation data types supported are string, double, long, integer, boolean, datetime. I was wondering if we can store forms, images, videos... kind of data. Thanks for the response
[ ](https://chat.hyperledger.org/channel/composer?msg=wesgcXbmdRgRdNc3v) @Sneha see https://stackoverflow.com/questions/47751609/how-to-deal-with-forms-images-videos-of-an-asset-in-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=HLnwdfovpiE35HzJX) @mahoney1 Got it. Thanks a lot.
[ ](https://chat.hyperledger.org/channel/composer?msg=vYJos9LTno3xCNS63) @pangzineng this I believe this may be something that is legacy from the 'older' connection profile connect days. You shouldn't need extra options to resolve your issue. So examples are here -> https://chat.hyperledger.org/channel/composer?msg=98CTyRPnFNu3hTazY (you may already have seen - connecting from an imported card file?) and also an example is here https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js - I think if you follow the sequence there, it might give some clues. Otherwise, you should probably post a Stack Overflow with your steps / code that you've tried and we can answer it there and a knowledge base for others..
[ ](https://chat.hyperledger.org/channel/composer?msg=vYJos9LTno3xCNS63) @pangzineng this (edited) I believe this may be something that is legacy from the 'older' connection profile connect days. You shouldn't need extra options to resolve your issue. So examples are here ->example is here https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js - I think if you follow the sequence there, it might give some clues. Otherwise, you should probably post a Stack Overflow with your steps / code that you've tried and we can answer it there and a knowledge base for others..
[ ](https://chat.hyperledger.org/channel/composer?msg=vYJos9LTno3xCNS63) @pangzineng this (edited) I believe this may be something that is legacy from the 'older' connection profile connect days. You shouldn't need extra options to resolve your issue. MemoryCard example is here (principle should be similar for fabric connect) https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js - I think if you follow the sequence there, it might give some clues. Otherwise, you should probably post a Stack Overflow with your steps / code that you've tried and we can answer it there and a knowledge base for others..
[ ](https://chat.hyperledger.org/channel/composer?msg=vYJos9LTno3xCNS63) @pangzineng this (edited) I believe this may be something that is legacy from the 'older' connection profile connect days. You shouldn't need extra options to resolve your issue. MemoryCard example is here (principle should be similar for runtime connect) https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js - I think if you follow the sequence there, it might give some clues. Otherwise, you should probably post a Stack Overflow with your steps / code that you've tried and we can answer it there and a knowledge base for others..
[ ](https://chat.hyperledger.org/channel/composer?msg=vYJos9LTno3xCNS63) @pangzineng this (edited) is something that is legacy from the 'older' connection profile connect days. You shouldn't need extra options to resolve your issue. MemoryCard example is here (principle should be similar for runtime connect) https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js - I think if you follow the sequence there, it might give some clues. Otherwise, you should probably post a Stack Overflow with your steps / code that you've tried and we can answer it there and a knowledge base for others..
Is it possible to auto-retrieve relations with queries?
Also do queries get their data the same way the rest-server does? eg from the worldstate db?
@mahoney1 I just came across a git issue where someone was running into the same timeout errors as I was. Apparently there are a few memory leaks with the older versions of the composer runtime. I have my project pinned on 14.3 so i'm guessing that's the cause ;)
[ ](https://chat.hyperledger.org/channel/composer?msg=CH5ySyRbcgiWx4cjT) @nickyromeijn Not presently in queries but via Filters eg. `{"include":"resolve"}` on a /GET or (say) on a particular field or identifier use something like `{"where":{"":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"}` - yes in registries in the worldstate
Thanks for the answer, that's the current way i retrieve assets/participants
Has joined the channel.
Chaincode container is constantly using 2gb ram. I'm guessing that isn't normal?
@nickyromeijn it is normal for that version and reasonable sized BNAs, you really want to move up to 0.16.x ;)
@mahoney1 thanks for pointing out the example from `bond-network`, however it did not cover my use case. In fact, I have a similar setting with the `basic-sample-network` test case: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/test/sample.js#L185 , where each test case use a different identity that was supposed to be pre-loaded into cardStore. I strictly followed the linked sample, but always got my code terminated at the moment of re-connection.
@mahoney1 thanks for pointing out the example from `bond-network`, however it did not cover my use case. In fact, I have a similar setting with the `basic-sample-network` test case: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/test/sample.js#L185 , where each test case use a different identity that was supposed to be pre-loaded into cardStore. I strictly followed the linked sample, but always got my code terminated at the moment of re-connection (L193).
[ ](https://chat.hyperledger.org/channel/composer?msg=ZCw3ibJ4n5EDcubnJ) @pangzineng ok thanks for the info. Can you create a S/O for it? Might be that an issue needs to be raised from there.
@mahoney1 ok, I'll make one tomorrow (now 1am in my timezone)
[ ](https://chat.hyperledger.org/channel/composer?msg=2yBSYwFg8SxfxJD9P) @pangzineng sure np :thumbsup:
@here Is it possible to create two different bna files using same composer model to deploy them on to two channels?
[ ](https://chat.hyperledger.org/channel/composer?msg=kYXnoowDSLA7sWwtE) @giridharg yes in theory. For all intents and purposes, they are two different business networks deployed on two different ledgers (channels).
@mahoney1 If I need to use same model for both business networks, how to configure single package.json file? Because the project name in package.json file used to create the bna file!
Hi All,
I've been playing with playground for a while, it proves really great for testing and learning, I just wish to it was easier to copy the code back and forth from an IDE...
Is there a trick to automate this transfer ?
Has joined the channel.
Has joined the channel.
Can anyone confirm if the javascript virtual machine that go runs for composer transaction code is single threaded? I assume it is but I would love confirmation. I ask because I'm running a for loop and that contains async calls to get assets which are then added to a ledger but the code balloons in complexity if I have to account for multithreaded stuff.
For anyone that was curious I found my answer in a bug report that described in some detail how the Javascript engine is employed:https://github.com/hyperledger/composer/issues/1873
[ ](https://chat.hyperledger.org/channel/composer?msg=yY7qXhWn9ZKgbZm2n) @mahoney1 I solved my problem, it was a stupid typo in one of the namespace written in the test case. The error message & behavior were misleading enough to bring me to a complete wrong direction for debugging.
[ ](https://chat.hyperledger.org/channel/composer?msg=TXGd6NxJn4npP97YA) @DaveyEbb It got removed around Thanksgiving with the update to the documentation and the new versions of composer (v0.15) - it would be nice if some kind soul could share the old docs as a reference.
[ ](https://chat.hyperledger.org/channel/composer?msg=qx8ydynRC7JbYv2tm) @ashutoshmca [ ](https://chat.hyperledger.org/channel/composer?msg=qx8ydynRC7JbYv2tm) @ashutoshmca There is no documentation for this. I had to replicate the logic given for assets for the participants and transactions elements. Using the generate command is helpful as is reading up on some basic angular documentation
Hello everyone, i'm trying to enable the rest api authentication for composer server, i have set up the composer-providers variable and done everything that was written in the documentation but m facing internal oauth error as the access token is not being generated. im using the companies network so it maybe a proxy issue but even after trying various things it is still failing in redirecting to the home url after authenticating the user.
@here Has anyone tried chain of the transaction?
Like tracking back the history of transaction
hey guys.. im not able to deploy .bna into network. Im using the following command:-
"composer network deploy -a dist/news-network.bna -p hlfv1 -i PeerAdmin -s randomString"
while executing the following command it says Missing required arguments: networkAdmin, card.
Can you please help....
@varun-raj Im using composer version v0.16.0
@rahulkannur if you're using the lastest composer-cli use the following pattern.
```composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile yournetowrk-network@0.0.1.bna --file networkadmin.card```
Has anyone tried to setup wallet with node client api??
@varun-raj Can you please tell me how to get details of above said arguments so that i can execute it.
other than `yournetowrk-network@0.0.1.bna` everything is your own
make sure you use `networkAdminEnrollSecret` as `adminpw`
Has joined the channel.
is there any way to get my network name?
@here Is there a docker-container with the composer-dev-environment installed ?
Hi All, We've successfully deployed BNA file and linked with AngularJS. verything is working fine. The problem we're facing is
Hi All, We've developed one small application using composer. One of the requirement is to run with Https(SSL). I tried to export TLS sample certificate and key. Its coming and I can able to see in Hyperledger explorer. but when we link with frontend(angular), Its throwing error like some insecured connection. Can anyone help me how to proceed? or any other way to make our composer URL as secured one? How to get composer private key ,certificate?
Clipboard - 2017年12月12日下午3点51分
Hi, everyone! Who can tell me what this rule means?
any participant of type '..Chainpart' is ALLOWed to do ALL operations on all resources of type ...Manufacturer if this resource has a property asnRole that is said to manufacturer
any participant of type '..Chainpart' is ALLOWed to do ALL operations on all resources of type ...Manufacturer if this resource has a property asnRole that is set to manufacturer
i guess like this
[ ](https://chat.hyperledger.org/channel/composer?msg=56bFdDuR8F338wz66) @aneb I think thats about it.
[ ](https://chat.hyperledger.org/channel/composer?msg=cSfsdEJPL4R3Pgr9W) @erNail `docker ps' will list all docker containers. Composer-playground and composer chaincode are containers; other components are processes `ps -ef |grep composer`
[ ](https://chat.hyperledger.org/channel/composer?msg=cSfsdEJPL4R3Pgr9W) @erNail `docker ps` will list all docker containers. Composer-playground and composer chaincode are containers; other components are processes `ps -ef |grep composer`
@ankashu Thanks, but i was asking some kind of dev environment ready as docker container. This way i could start my org-docker containers (peers, cli, etc.) and a composer-docker-container with the rest-servers and angular apps.
[ ](https://chat.hyperledger.org/channel/composer?msg=Pdm599qNiqtLiat9u) @rahulkannur You can use the namespace
Hi @mahoney1 sorry, I still have a question about Composer BC transactions. It's unclear to me whether the rest server actually waits till transaction has been completed, or developers should use tranid that is returned to check its status? Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=Pdm599qNiqtLiat9u) @rahulkannur yeah, either from a playground or check the directory where you were generating it (should have *.bna file there)
rest.png
Hi All, Have a query
Anyone of you using the IBM bluemix enterprise plan ?
@rahulkannur You should give a card name that should have linked with a business profile.
PeerAdmin@hlfv1 is not a part of any business profile.
[ ](https://chat.hyperledger.org/channel/composer?msg=EPJTpx524tgEpAsJg) @rahulkannur You're using the peer admin card
Try with the network admin card that you created when starting the network
@rahulkannur Try creating a business profile and attach the admin card while creating composer-rest-server :D
@navdevl exactly
@erNail - I have seen people using a Virtual Machine with a development environment running the Docker containers, but not a Docker running nested containers. There are potential complications and I do not think that this has been tested.
@navdevl ok..:thumbsup: Can you tell me how to do that?
Did you run `./createPeerAdmincard.sh` ?
@rthatcher All right, thanks. Yeah, i'm using a vm myself, was just wondering if i could easily "use the vm as docker container"
@rahulkannur Did you created a business profile and exported the .bna file or something?
@varun-raj yup
rest2.png
Great, have you started the network?
@varun-raj i ran ./startFabric.sh
@erNail Docker containers are really only meant to run a single process. There have been ways to get a container to run multiple processes but those approaches aren't recommended. Docker Compose is the way to group docker containers together. Alternatively you could look at other container solutions such as LXD which is designed with multiple processes in mind. Another option is to look at Vagrant which manages virtualbox VMs providing command line tools to provision and spin up predefined VMs
You need to create and run the business network
I'll share the script I wrote to setup it.
Has joined the channel.
```composer archive create -t dir -n .
composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName acme-network
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile acme-network@0.0.1.bna --file networkadmin.card
composer card import --file networkadmin.card
composer network ping --card admin@acme-network
composer card export --file networkadmin.card -n admin@acme-network
```
@davidkel Okay, thanks. Definitely need to improve my docker knowledge. And i'm using vagrant at the moment, and i think i'll stay with it.
[ ](https://chat.hyperledger.org/channel/composer?msg=yGJBjnD6pg5JAuQCz) @rahulkannur Here it is
Hello, I have a naive question. I have to build a prototype this semester and just started reading the docs. The prototype is for a big organization, so I was thinking of using fabric and make each organization have several peers and its own orderer. I am a bit confused on the role composer has on top of fabric, I was looking that this example https://github.com/IBM/Decentralized-Energy-Composer/ and even though in the composer permission file it seems that a lot of "effort" is put into security (who sees what), when I check the config files for fabric, they build it on top of a very simple network with one orderer, and I am not sure if this "architecture" justifies the use of blockchain at all (please correct me if im wrong). Im just a bit confused I think haha
[ ](https://chat.hyperledger.org/channel/composer?msg=4sFtfRJrN8YMJSYKo) @mastreips hi folks, it should be added back to the Developer tutorial later this week - effectively the steps are 1) start up your REST server for `tutorial-network` (per existing Developer [tutorial](https://hyperledger.github.io/composer/tutorials/developer-tutorial.html) steps 2) `cd tutorial-network` (the project folder created in the same tutorial) and then 3) run `yo hyperledger-composer` 4) complete the prompts such as using business network card `admin@tutorial-network`, Never use namespaces, and Y for connect to existing REST server (default port)
[ ](https://chat.hyperledger.org/channel/composer?msg=4sFtfRJrN8YMJSYKo) @mastreips hi folks, it should be added back to the Developer tutorial later this week - effectively the steps are 1) start up your REST server for `tutorial-network` (per existing Developer [tutorial](https://hyperledger.github.io/composer/tutorials/developer-tutorial.html) steps 2) `cd tutorial-network` (the project folder created in the same tutorial) and then 3) run `yo hyperledger-composer` 4) complete the prompts such as using business network card `admin@tutorial-network`, Never use namespaces, and Y for connect to existing REST server (default port) then 4) go to http://localhost:4200 - any 'adds' can be refreshed via browser refresh
Has anyone tried to deploy via Azure?
[ ](https://chat.hyperledger.org/channel/composer?msg=6HHjDGenws5gkXWST) @tamycova - Hyperledger Composer provides an abstraction layer away from Hyperledger Fabric, making it MUCH easier to model and develop Business Applications against a Hyperledger Fabric. The examples use a simple minimal 'Development Fabric' so that developers can concentrate on the Model and the Application and not Focus on the Fabric.
Creating a Multi-Org Multi-Peer Fabric is a significant task in its own right.
If you are interested in Composer and Fabric I would recommend working through the Tutorials we have here https://hyperledger.github.io/composer/tutorials/tutorials.html and then looking at a more complex Fabric after that.
[ ](https://chat.hyperledger.org/channel/composer?msg=P7Eg5Jh5hSm7RmJX9) @rthatcher thanks for your answer! I did all the tutorials already (very nice btw!!), thats when I realized to make something of value I should not use the basic fabric . Do you recommend any resource to start looking into integration with a more complex fabric? (the only thing I found is the fabric documentation, so I guess I will start reading haha)
[ ](https://chat.hyperledger.org/channel/composer?msg=5BDb7aYLqKJuoQFbb) @tamycova - yes the base Fabric documentation and their tutorials is the way to go.
I guess your remark is related to your specific project, but I would take issue with your remark " _to make something of value I should not use the basic fabric_" - very sophisticated applications can be developed using Composer against a simple development fabric :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=W7xSap76Ffj9Avnuj) @rthatcher Indeed! Im sorry for the phrasing, I meant for my project, since its a multi company thing with government regulators and they are very strict on the network part. Composer is amazing. Thanks again!
@here Is there a way to access the Playground with a predefined card to use ? Right now when accessing you are logged in with the `currentCard` in the localstorage. Is there a way to pass this currentCard as a parameter ?
Background: I want to access the playground via different links with different users logged in.
the -here- tag just popped up a notification on my desktop. I guess other tags dont do that.
@erNail no not currently, if you want this then raise a issue for it and you could always contribute it
@caroline-church couldn't you import it into $HOME/.composer using the CLI and the UI will look in there now won't it?
no he means to be able to have a url that would log you in directly
ah :+1:
by the way, which is the best browser for chat.hyperledger.org. On firefox the message pan keeps jumping every now and then.
i just use the rocket chat app
@caroline-church you mean smartphone?
no there is an app you can download (i use it on my mac)
thanks
Has joined the channel.
can i deploy business network and create REST APIs using hyperledger composer and composer-rest-server in CentOS?
@caroline-church Thanks, ive created an issue.
Another question: Is it possible to prevent the Playground from using the local key-value-store ?
Has joined the channel.
what version of composer are you using? in the latest the playground the cards are stored on your file system rather than in localstorage
what version of composer are you using? in the latest the playground the cards are stored on your file system rather than in localstorage if you are using a real fabric
@caroline-church Yeah i know, is it possible to prevent the Playground from accessing the file system storage e.g. `.composer` ?
no if you are using a real fabric
Background: I have so many cards in the Playground, the performance is terrible. I have to delete all of them manually for the website to work without freezing etc.
oh? These are cards for a real fabric or for a web browser?
oh? These are cards for a real fabric or for the web version?
how many cards is "so many" and why do you need so many?
@caroline-church Real fabric with 4 peers. I have 4 PeerAdmins for 2 channels (So 8 PeerAdmins) 4 Admins for 2 channels (So 8 admins), and a card for every participant (6 participants on public channel + 2 participants on private channel)
@caroline-church Real fabric with 4 peers. I have 4 PeerAdmins for 2 channels (So 8 PeerAdmins) 4 Admins for 2 channels (So 8 admins), and a card for every participant (6 participants on public channel + 2 participants on private channel) . So 24 cards
can you raise an issue for that, it shouldn't have a problem with 24 cards that doesn't seem that unreasonable
@caroline-church https://github.com/hyperledger/composer/issues/3001
thanx
Compose online playground is down?
Yeah https://composer-playground.mybluemix.net/ is down @varun-raj
@here https://composer-playground.mybluemix.net is up again (new build this AM)
Cool
@here did anyone try to create a chain of transaction for an asset?
Hi Team, I need to downgrade my hyper ledger composer from 0.14.1 to 0.13.2
I have seen the commands for updating hyper ledger composer https://hyperledger.github.io/composer/managing/updating-composer.html
But this talks to upgrade to latest version . Please suggest how to move to 0.13.2
@varun-raj I did not try it but it should be possible by searching the historian records.
But is the historian holding the data of the previous transaction?
Yes, it should contain the parameters of previous executed transactions.
Clipboard - 12. Dezember 2017 13:50
Clipboard - 12. Dezember 2017 13:50
[ ](https://chat.hyperledger.org/channel/composer?msg=h9MtNkq22GvrBTjLH) @varun-raj we have a current issue open for Historian to showhistory of changes/ deltas for an asset - https://github.com/hyperledger/composer/issues/991
As a workaround - so for sample network `trade-network`
```
query selectTransaction{
description: "choose a specific commodity "
statement: SELECT org.acme.biznet.Trade
WHERE (commodity == _$commodity )
}
```
finds all transactions of transaction `Trade` for a particular asset and add a date range- so that's a query showing those transactions (what changed) - .ie once you've updated your network to recognise the newly added query defined in your `queries.qry` and the named query defined in your .cto model file . The other way is to use Filters (as opposed to queries):on your REST client - so used a filter using `{"where":{"commodity":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"} `.. so find all transactions for asset Commodity with tradingSymbol (identifier) ABC - ie a relationship and I can resolve the transaction and the particular asset it relates to. In this case it was 1 transaction (could be more) showing changes and I can see the transaction (with resolved) detail, for that asset
@sstone1 @davidkel Just a suggestion, i think it would be handy if "cert" path or any path in the connection.json file could resolve environment variables like $HOME or $COMPOSER_HOME. Just to cut down the number of steps involved in deploying servers. For example: this, in a connection.json file, should work: `"cert": "$HOME/ca-certs/orderer.zonenet/tls/ca.crt",`
@sstone1 @davidkel Just a suggestion, i think it would be handy if "cert" path or any path in the connection.json file could resolve environment variables like $HOME or $COMPOSER_HOME. Just to cut down the number of steps involved in deployment. For example: this, in a connection.json file, should work: `"cert": "$HOME/ca-certs/orderer.zonenet/tls/ca.crt",`
@sstone1 @davidkel Just a suggestion. i think it would be handy if "cert" path or any path in the connection.json file could resolve environment variables like $HOME or $COMPOSER_HOME. Just to cut down the number of steps involved in deployment. For example: this, in a connection.json file, should work: `"cert": "$HOME/ca-certs/orderer.zonenet/tls/ca.crt",`
password
[ ](https://chat.hyperledger.org/channel/composer?msg=LvYHYp4bLHz2EGoJk) @prabvi01 haven't tried - our currently supported platforms are Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12 -> https://hyperledger.github.io/composer/installing/development-tools.html
@gen_el Putting file paths into the connection profile was never a documented feature. It was really there just for our system tests. The reason being is that business network cards need to be portable and if a connection profile contained just file names then the card that holds that profile isn't portable as the required TLS information isn't present. Unfortunately as we move to a common connection profile format capability of the node-sdk, that capability is documented so i've added your suggestion to this issue
https://github.com/hyperledger/composer/issues/2923
I have a question regarding the update of a participant's field.
Let's say I'm connected to the network with identify of participantA, which has balance: $100.
If someone else connected to the network as another participantB and submit a transaction that will cause my (participantA) to increase by $10.
When & How will that update come to my notice? Assume no event is used and I'm always connected.
[ ](https://chat.hyperledger.org/channel/composer?msg=KesfkjzupiCtNgX9B) @davidkel Seen. Then a portable card, in cases where cert files are needed will have to package the referenced cert files with the card during `composer card create ...`
@gen_el The only "official" way in the 0.16.x stable release is to embed the certificates into the connection profile (ie not referenced by file), and this won't change as no new facilities will be added to the 0.16.x stable release. The 0.17 and later releases (which will be referred to as "latest") will move over to what is called the Common Connection Profile and as such that definition allows for the reference of files. Ideally we would need `composer card create` to handle this specific situation which is why this issue exists and is described as an enhancement
[ ](https://chat.hyperledger.org/channel/composer?msg=Mxs8MWvyNwJpEXqkr) @satyajitsasmal I am using the IBM Bluemix enterprise plan.
[ ](https://chat.hyperledger.org/channel/composer?msg=9jBBsRBQt6SeN5ZQw) @davidkel Could you share a guide creating the connection profile and card in version 0.16.x?
[ ](https://chat.hyperledger.org/channel/composer?msg=9jBBsRBQt6SeN5ZQw) @davidkel Could you share a guide for creating the connection profile and card in version 0.16.x?
[ ](https://chat.hyperledger.org/channel/composer?msg=9jBBsRBQt6SeN5ZQw) @davidkel Could you share a guide for creating the connection profile, that takes embedding certificates into consideration, and card in version 0.16.x?
@gen_el sorry I don't have anything like that. There is an issue to change the multi-org tutorial. https://github.com/hyperledger/composer/issues/2922
[ ](https://chat.hyperledger.org/channel/composer?msg=W4pYidY8DnGjBqsE6) @ankashu a 200 - eg. a transaction, asset create transaction in the REST API client - means the record/transaction has been committed. The REST API waits for a block notification that says the transaction has been committed before returning 200 to the REST API client.
@mahoney1 great, thanks a lot!
We are facing a weird issue where only six elements are added to the blockchain when using the method 'addAll'. I start a transaction, and inside this transaction we loop over the received argument and then create x assets. For instance, the transaction receives the number 10 and creates 10 assets. We are using 'addAll' to add the assets. The rest server returns 200. However, when I list the assets there is only six of them. I logged the array which is passed to 'addAll' and it contains all elements. I can also look for the assets by id, but only up to the number six. Has anyone ever faced something similar? I will try to work on an reproducible example...
We are facing a weird issue where only six elements are added to the blockchain when using the method 'addAll'. THe transaction receives an argument and then create x assets. For instance, the transaction receives the number 10 and it creates 10 assets. We are using 'addAll' to add the assets. The rest server returns 200. However, when I list the assets there is only six of them. I logged the array which is passed to 'addAll' and it contains all elements (eg. 10). I can also look for the assets by id, but only up to the number six. Has anyone ever faced something similar? I will try to work on an reproducible example...
We are facing a weird issue where only six elements are added to the blockchain when using the method 'addAll'. THe transaction receives an argument and then create x assets. For instance, the transaction receives the number 10 and it creates 10 assets. We are using 'addAll' to add the assets. The rest server returns 200. However, when I list the assets there is only six of them. I logged the array which is passed to 'addAll' and it contains all elements (eg. 10). I can also look for the assets by their id, but only up to the element number six. Has anyone ever faced something similar? I will try to work on an reproducible example...
event.png
event.png
event.png
Has joined the channel.
i get this error when i run `docker-compose up` for hyperledger/composer-rest-server on my ubuntu server 16.04
i get this error when i run `docker-compose up` for hyperledger/composer-rest-server on my *Ubuntu server 16.04*
i get this error when i run `docker-compose up` for hyperledger/composer-rest-server:0.15.1 on my *Ubuntu server 16.04*
i get this error when i run `docker-compose up` for *hyperledger/composer-rest-server:0.15.1* on my *Ubuntu server 16.04*
```$ docker-compose up
Creating btp-rest-server ...
Creating btp-rest-server ... done
Attaching to btp-rest-server
btp-rest-server | 0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
btp-rest-server | 0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
btp-rest-server | 0|composer | Discovering types from business network definition ...
btp-rest-server | 0|composer | Connection fails: Error: Card not found: gtbnetworkadmin@btp-app
btp-rest-server | 0|composer | It will be retried for the next request.
btp-rest-server | 0|composer | { Error: Card not found: gtbnetworkadmin@btp-app
btp-rest-server | 0|composer | at IdCard.fromDirectory.catch.cause (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/cardstore/filesystemcardstore.js:73:27)
btp-rest-server | 0|composer | at
But it works on my macOS 10.13.2
I have check permissions on the .composer directory
I have checked permissions on the .composer directory
it seems fine
Here is my `docker-compose.yml` file
```version: '2'
networks:
composer_default:
services:
btp-rest-server:
image: hyperledger/composer-rest-server:0.15.1
container_name: btp-rest-server
ports:
- 3000:3000
environment:
- COMPOSER_CARD=gtbnetworkadmin@btp-app
- COMPOSER_NAMESPACES=never
- COMPOSER_AUTHENTICATION=false
- COMPOSER_MULTIUSER=false
volumes:
- ~/.composer:/home/composer/.composer
- ~/ca-certs:/home/composer/ca-certs
networks:
- composer_default```
What am i missing???? *It works perfectly fine on my macOS*
```$ ls -al gtbnetworkadmin@btp-app
total 20
drwxr-xr-x 3 zonetemp zonetemp 4096 Dec 12 15:12 .
drwxr-x--- 4 zonetemp zonetemp 4096 Dec 11 11:05 ..
-rwxr-xr-x 1 zonetemp zonetemp 1042 Dec 12 14:24 connection.json
drwxr-xr-x 2 zonetemp zonetemp 4096 Dec 11 11:05 credentials
-rwxr-xr-x 1 zonetemp zonetemp 70 Dec 11 11:05 metadata.json```
`drwxr-xr-x 3 zonetemp zonetemp 4096 Dec 12 15:12 gtbnetworkadmin@btp-app`
Okay. Done. Had no other choice. Had to run `chmod -R 777 ~/.composer` . I usually avoid doing that.
@gen_el Personally I would find a different way to populating the card store that is to be used by your rest server if you must use a docker container for it. volume mounting in docker is going to have these issues and in fact is worse on a Mac as docker containers cannot run natively they have to be run inside a linux vm on the mac
[ ](https://chat.hyperledger.org/channel/composer?msg=pupJ2feSARNPFLxtJ) @davidkel A DB?
Hi all, can you please advise if it is possible to expose APIs of a Go chaincode via Composer? Is it *composer-runtime-hlfv1* that provides this layer of interoperability between Go and JS?
hi does anyone know how to go back to documentation of previous version? I am specifically looking for 0.13.2
i looked on github on 0.13.2 tag but can't find it
Hello,
I was trying to deplo perishable-network
1. I ran this command
composer runtime install -c PeerAdmin@hlfv1 -n perishable-network
//success
2. I ran this
composer runtime install -c PeerAdmin@hlfv1 -n perishable-network
gave me this error
Response from attempted peer comms was an error: Error: Error starting container: API error (404): {"message":"No such network: composer_default"}
any help?
@gen_el a db is possible but I am not sure how easy it is to overwrite the default local file storage card store and loopbackstore that composer server is using. I decided to not use composer rest server anymore, for now, so created my own rest server by using composer client and composer admin. If you look at the composer rest server source code you can see that you can pass a cardstore setting with the composer client business network connection constructor. This being a class that extends the business network card store interface. In my case I have a mongoose cardstore. So then whenever you use importcard etc that custom cardstore is used. Now as I said I am not entirely sure on how to overwrite the composer rest server setting.
Has joined the channel.
@mostafa.elsayyad are you sure you ran the *composer runtime install* command twice or was your error from the *composer network start* command?
@mostafa.elsayyad and if my hunch is right, I suspect you may have done some modifications to the sample directory structures....when you use Docker Compose, the default name of the Docker network created for you is
@mostafa.elsayyad and if my hunch is right, I suspect you may have done some modifications to the sample directory structures....when you use Docker Compose, the default name of the Docker network created for you is
@mostafa.elsayyad and if my hunch is right, I suspect you may have done some modifications to the sample directory structures....when you use Docker Compose, the default name of the Docker network created for you is
@mostafa.elsayyad and if my hunch is right, I suspect you may have done some modifications to the sample directory structures....when you use Docker Compose, the default name of the Docker network created for you is dirName_default where dirName is where the Docker Compose yaml file lives. In the Hyperledger Composer samples, this file lives in a directory named *composer*, hence the Docker network name is *composer_default*. The peer has an environment variable in its yaml file that corresponds to this: *CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=composer_default*
So, if you moved your Docker Compose yaml file to a directory with a different name, e.g., *splunge*, then change that environment variable to read *CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=splunge_default*. Alternatively, you could use directives in your Docker Compose file to explicitly specify a network name of composer_default
[ ](https://chat.hyperledger.org/channel/composer?msg=9p5uKibPJ97f5oX9C) @aneb I was well on my way to building our own rest-server. I just decided to give composer-rest-server a spin, since i was still testing on a single channel and a single server. I did see the updated business network connection constructor.
@gen_el Great to hear. Sorry for if I posted redundant information :) Didn't see the full conversation on my phone.
which tag in the `composer-sample-network` repo is for composer version 0.16.0?
I had an error stating that :
Error: Participant 'org.hyperledger.composer.system.NetworkAdmin#admin' does not have 'CREATE' access to resource 'org.acme.sample.User#user@gmail.com' this is the error while executing my application
Can you figure out anything from it?
show your acl
This the code in acl file..
rule EverybodyCanReadEverything {
description: "Allow all participants read access to all resources"
participant: "org.acme.sample.User"
operation: READ
resource: "org.acme.sample.*"
action: ALLOW
}
rule EverybodyCanSubmitTransactions {
description: "Allow all participants to submit transactions"
participant: "org.acme.sample.User"
operation: CREATE
resource: "org.acme.sample.User"
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
there is no rule for `org.hyperledger.composer.system.NetworkAdmin`
```rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}```
ok.. let me add it ..
[ ](https://chat.hyperledger.org/channel/composer?msg=GgSFfR28TnXt28mYi) @rahulkannur : Please add rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
@mvaibhavshah should i add those two rule?
yes..
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
last one is same as @baoyangc
k .. let me check..
in act, i'm not sure why we need set system permissions
I think we should set permission for add participant depend the chaincode invoker's issuer.
@rahulkannur
Not working..
Error:
Unhandled error for request POST /api/user: Error: Error trying invoke business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: Error: Participant 'org.hyperledger.composer.system.NetworkAdmin#admin' does not have 'CREATE' access to resource 'org.acme.sample.User#user@gmail.com')
at _initializeChannel.then.then.then.then.catch (/home/user/.nvm/versions/node/v8.9.3/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:916:34)
at
@baoyangc how can we do that?
show your acl
delete this :```rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}```
@sstone1, in a multi organization network, I want the users of OrgA can only be registered as participant type `Seller`, and the users of OrgB can only be registered as participant type `Buyer`. does composer support this?
@here does anyone know abt it?
Hello everyone, i'm trying to enable the rest api authentication for composer server, i have set up the composer-providers variable and done everything that was written in the documentation but m facing internal oauth error as the access token is not being generated. im using the companies network so it maybe a proxy issue but even after trying various things it is still failing in redirecting to the home url after authenticating the user.
Has joined the channel.
Hello I was trying to deploy application on single org but in playground I m getting following error:
```
Error: Error trying to ping. Error: Composer runtime (0.16.1) is not compatible with client (0.16.0)
```
Hi guys,
I need help in deploying blockchain network on our server and also how to use the project to integrate with the apps. Pls help. TIA
Has joined the channel.
fyi @here - the Community call today is at 9am UTC (10am UK, 2:30pm IST, 5pm CST) Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-13th-December-2017
@here is there any way we can have custom logic and build enpoit for the rest cli?
Rest Client
@varun-raj what do you want to do?
Basically I would like to write some custom functions that does couple of queries and return some data and make it a rest end point
Possible?
I think so in a customised version of the REST server package yes
I'd start looking here https://github.com/hyperledger/composer/tree/master/packages/composer-rest-server
So we've to build our own rest service with nodejs?
Well you could expand on the capabilities in the composer rest server to add in your own customisations
Is that what you were after?
Yep kind of
Take a look here https://github.com/hyperledger/composer/blob/master/packages/composer-rest-server/server/boot/composer-discovery.js#L98-L122
But i dont find any documentation on customizing the`composer-rest-server` packgae
But i dont find any documentation on customizing the `composer-rest-server` package
yes, I don't believe there is any
Yeah :/
but if you have a look at the snippet there then you'll see how the rest server customizes the REST server for composer calls and should get an idea of how to go about adding your own customisations in there
Let me see that :)
perhaps with a `registerCustomMethods` function of your own :)
That's where I'd start anyway - good luck!
Cool :)
which part of kerala you're from?
[ ](https://chat.hyperledger.org/channel/composer?msg=RSaqPn4efb2ZFLq2m) @prabhatkashyap - You have a mismatch of versions. v0.16.2 is available now so I would suggest using npm to uninstal existing client software, and the install the new versions (composer-cli and any other composer packages). Then create a new fabric with the fabric-tools script startFabric.sh. Finally rebuild your .BNA file and redeploy. (By re-creating your Fabric you will lose your test data.)
[ ](https://chat.hyperledger.org/channel/composer?msg=RSaqPn4efb2ZFLq2m) @prabhatkashyap - You have a mismatch of versions. The simple thing to do is to update any composer npm modules you have installed (uninstall / install).
(Your client will then be at 0.16.2 which is a microversion ahead of the Runtime 0.16.1 - but that should be OK)
[ ](https://chat.hyperledger.org/channel/composer?msg=naKFBHBrnm5exYpz5) @rahulkannur did you do a business network update for the updated ACL rules to take effect (eg. run `composer network update` if not in Playground) - see similar ACL file here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/permissions.acl
@varun-raj I'm not from kerala, I'm in the UK where it is cold and wet at the moment ;)
Oops sorry wrong question :P
@here - Community call begins in a few minutes time -> zoom.us/j/441168172 -> https://github.com/hyperledger/composer/wiki/Meeting-13th-December-2017
[ ](https://chat.hyperledger.org/channel/composer?msg=o7aKi6rsbyLfZR4bB) @rthatcher Thanks it works now. :thumbsup:
Need some expertise help to design the architecture
Building a real time application Using composer
Consider a scenario : I am building the web application, in which some part of the data resides in Blockchain and in the normal data base. Application is authorized application.
.bna has two types of participant admin and normal user
Use case 1)
Customer registers as "admin" in the application.
Username and password is saved in the normal database.
Now the same user needs to be created in the Blockchain as Participant "admin" in parallel. How can we achieve it.
Use case 2) Another Customers login as "normal" user.how can we authenicate to show ,normal user data instead of "admin" user data.
@pradeeppadmarajaiah I've seen your Stack Overflow question and will answer it there - will point a link back to that, when I've added an answer on SO ...
Hi all, anyone know where to find a more detailed version of document/reference for modeling language?
The official reference (https://hyperledger.github.io/composer//reference/cto_language) casually shows the use of `default` and `regex` in the example, but never explain it.
Also there is no explanation of whether arrays type can use things like `default`. I try to give one of the array field a default empty array, but can't find the way to do so.
@here Is there any way to update the current transaction data inside Transaction Processor function of logic.js?
@ [ ](https://chat.hyperledger.org/channel/composer?msg=X3Lhyem77cMecWDYT) answered on S/O -> https://stackoverflow.com/questions/47791061/building-a-real-time-application-using-composer/47793332#47793332
[ ](https://chat.hyperledger.org/channel/composer?msg=9YmRSsTAwa7SoJusY) @pangzineng hi there - 1) on docs, not presently, should be updated 2) default - not on arrays 3) here's an example of setting it and using it (Sample networks) -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/lib/logic.js#L34
Hi All,
I am wondering about transactional transactions:
In transactions where multiple assets are created/updated, I observed that if one creation/update fails then the ledger may end up with a partial change.
Is it because I missed something in the way I proceed (I am quite new to Node/js and obviously to HLF/Composer) ?
If not is there some kind of transactional mechanism available (ie the classic commit/rollback found in transactional DB) ? Or is it planned?
Olivier.
hi everyone i'm using playground ...iam able to create admin card but how can i create card to the participants who can access my business network from different system .and also i am able to create cards for local participants and adding to my wallet ...
[ ](https://chat.hyperledger.org/channel/composer?msg=4XRcyX23H3JnXMRyn) @varun-raj normally, the current (@param) transaction data (or derived as a result of branching in the script logic) is used to update assets or participants affected by the transaction data, What do you want to do?
[ ](https://chat.hyperledger.org/channel/composer?msg=KZgkMJoGCbcngmd2t) @wininani hi there - you issue identities (as an admin), add it to your wallet and then you can export card files for the identities you created (to share) - see https://hyperledger.github.io/composer/playground/id-cards-playground.html section and also the section 'Exporting a Business Network Card' there cheers
@mahoney1 but there iam unable to download the cards
Clipboard - December 13, 2017 6:54 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=KQsZ92ofS62xMLDto) @wininani you connect to the business network, using the card as it mentions - then you are able to export it. (Using the export icon)
[ ](https://chat.hyperledger.org/channel/composer?msg=KQsZ92ofS62xMLDto) @wininani you connect to the business network, using the card as it mentions - then you are able to export it.
@mahoney1 i already did that also but after imported the card in another system there iam not getting connect under the card
thanks for u r reply
@mahoney1 thanks for u r reply
Clipboard - December 13, 2017 7:17 PM
@wininani from My business networks (top right) - download the cards for the identities you wish to export (using the icon)
@wininani go to My business networks (top right) - from the list (you've posted) download the cards for the identities you wish to export (using the icon)
@wininani go to My business networks (top right) - from the list (you've posted) download the cards for the identities/B N cards you wish to export (using the icon) - if the export icon is greyed out (as it appears to be in your screen) - that means you're using the 'in-browser' connector (not connected to a running Fabric - you can only export cards for a runtime Fabric environment) - I suspect you may be using the in-browser connector from your earlier screenshot and (if your problem persists) that's why you can't export)
@wininani go to My business networks (top right) - from the list (you've posted) download the cards for the identities/B N cards you wish to export (using the icon)
Clipboard - December 13, 2017 1:59 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=ACevMbrkx37m4WoJz) @odalle Changes made by **transactions** are atomic, either the transaction is successful and all changes are applied, or the transaction fails and no changes are applied. Any exceptions thrown from a transaction processor function will cause the entire **transaction** to be rolled back, leaving no changes to the blockchain or world state. So nothing is persisted if a transaction fails, Composer throw an exception and the transaction gets rolled back by Fabric. https://hyperledger.github.io/composer/reference/js_scripts.html
Hello,
in playground, why after I add a partcicipant and I want to change the value of "identified by" variable .. action is denied??
here is the error
Error: Object with ID 'trader1' in collection with ID 'Participant:org.acme.trading.Trader' does not exist
thanks
Another thing that I really want to know?
I have installed the development enviroment ..
How to access the database that holds the participants I just created after deploying the business network.
note: I have created a participant using command .. composer participant add
[ ](https://chat.hyperledger.org/channel/composer?msg=F2jW4HGyquQReBczG) @mostafa.elsayyad - You cannot change the "identified by" property. (You would have to delete and create new.)
In order to access the Registry of Participants stored on the Hyperledger Fabric, you can use the Playground, the REST server, or you could write code and use the JavaScript API.
[ ](https://chat.hyperledger.org/channel/composer?msg=uGu5Bz9DJdBwB8joC) @mostafa.elsayyad the reason for the error is the operation you're trying to do is a rename (using the identifier field) - we don't support that yet ..
[ ](https://chat.hyperledger.org/channel/composer?msg=uGu5Bz9DJdBwB8joC) @mostafa.elsayyad just go to the 'Test' tab (top) in playground, click on your Participant type under Participants and they should be list there (assuming you've connected with the same business network card as you'd used when you created the participant(s) from the CLI)
[ ](https://chat.hyperledger.org/channel/composer?msg=uGu5Bz9DJdBwB8joC) @mostafa.elsayyad just go to the 'Test' tab (top) in playground, this is the means to access the Registries you added the participant(s). As it seems you may already know, just click on your Participant type under Participants and they should be list there (assuming you've connected with the same business network card as you'd used when you created the participant(s) from the CLI)
[ ](https://chat.hyperledger.org/channel/composer?msg=uGu5Bz9DJdBwB8joC) @mostafa.elsayyad just go to the 'Test' tab (top) in playground, this is the means to access the Registries you added the participant(s) to. As it seems you may already know, just click on your Participant type under Participants and they should be list there (assuming you've connected with the same business network card as you'd used when you created the participant(s) from the CLI)
[ ](https://chat.hyperledger.org/channel/composer?msg=uGu5Bz9DJdBwB8joC) @mostafa.elsayyad just go to the 'Test' tab (top) in your local playground (as mentioned in this [link](https://hyperledger.github.io/composer/installing/development-tools.html), this is the means to access the Registries you added the participant(s) to. As it seems you may already know, just click on your Participant type under Participants and they should be list there (assuming you've connected with the same business network card as you'd used when you created the participant(s) from the CLI)
Has joined the channel.
I was running through the multi org tutorial on composer and I have everything set up correctly (I think), but when I try to do the Composer Identity Request it fails. The command is `composer identity request -c PeerAdmin@byfn-network-org1-only -u admin -s adminpw -d alice` I have created my cards and successfully did composer runtime on both orgs (Org1 and Org2). The error message I get when I do the Identity Request command is `Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]`
what is the benefit of using event?
or how does angular application catches the event emitted from a transaction?
[ ](https://chat.hyperledger.org/channel/composer?msg=u37v225e8zYg8nfR9) @mostafa.elsayyad see https://hyperledger.github.io/composer/business-network/publishing-events.html - you application subscribes to the business event and chooses a course of action (such as a business threshold reached etc) https://hyperledger.github.io/composer/applications/subscribing-to-events.html . The angular app (or any app) will consume the events that are emitted by the Transaction processor functions see here -> https://hyperledger.github.io/composer/applications/applications-index.html
[ ](https://chat.hyperledger.org/channel/composer?msg=gGF2eaM2MsYEsdgzH) @grice_32 sounds like your CA server is not up and running, I would double check the connection.json files you created to see if there are any errors and check if its http or https in the definition files etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=gGF2eaM2MsYEsdgzH) @grice_32 sounds like your CA server is not up and running, Else, I would double check the connection.json files you created to see if there are any errors and check if its http or https in the definition files etc.
Thanks a lot @mahoney1
Has joined the channel.
Anyone knows how to deploy .bna to the bluemix blockchain service?
yes, follow this tutorial
https://ibm-blockchain.github.io/setup/
How to make 2 or more developers edit in the same BNA or business network at the same time?
Thanks @mahoney1 -- Looks like I pulled the wrong git repository as that one didn't have the CA in it. @silliman helped me out finding the right one (Simon's)
[ ](https://chat.hyperledger.org/channel/composer?msg=JKGYjLSoQMuunowiY) @mahoney1 Hum. I must have hit some kind of bug then. Maybe due to some uncaught exception. The problem is that I fixed the bug that caused the exception so I can't reproduce the situation easily. Will try to retrieve it and post a bug report.
Has joined the channel.
Did anyone run into the error while working with Fabric-CA server; what is the identity type?
Because I get this following error.
Failed to register: Error: fabric-ca request register failed with errors [[{"code":0,"message":"No identity type provided. Please provide identity type"}]]
I got that while working with fabcar example.
This is wrong channel tho, sorry. :)
Has joined the channel.
Hi,I am a newbies. I have a question.How to query the all transations and show it in the angular client?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZyMzBwqfBdPGTZs7w) @mahoney1 I'd like to update the transaction data itself. Like find the previous transaction of that transaction and add a new data as `prevTransactionId`Will it be possible?
Has joined the channel.
Hi I got this error message when I start fabric => Removing network composer_default
ERROR: network composer_default id 68c403f262774bee2d6106e1245b61811b8f571668e6391fd45f35276cdd45a7 has active endpoints
right now I install hyperledger composer playground in my laptop it is work but when I want to test to use this command => composer archive create --sourceType dir --sourceName . -a ./dist/perishable-network.bna
and then I got this error => [Symfony\Component\Console\Exception\RuntimeException]
The "--sourceType" option does not exist.
so i thought that because I still not start the fabric so I go start the fabric then i got the first Error that I show you.
[ ](https://chat.hyperledger.org/channel/composer?msg=wqPPmWQiQSsu5NES8) @mahoney1 what should i do now to get the importable cards
@here is there any way to import a function from another file in composer logic.js?
Has left the channel.
@varun-raj Please avoid using `@here` for general query as it pings everyone on the channel
@varun Please avoid using `@here` for general query as it pings everyone on the channel
Sure
how to put count in the composer query
[ ](https://chat.hyperledger.org/channel/composer?msg=WzAnAh6xjrbHJEaYN) @mvaibhavshah You mean limit?
no...count of documents/assets..
query alldocuments {
description: "Select all the documents"
statement:
SELECT org.acme.poc.process.documents
}
You need to fetch and user `.length`
this is the query...want to count count
[ ](https://chat.hyperledger.org/channel/composer?msg=xXesFauqoBh7gHAf6) @varun-raj means need to write a function? will it be called through REST API
hi, after updated to v0.16.2, `composer network deploy` fails with error:
```Deploying business network from archive: ./decentralized-energy-network.bna
Business network definition:
Identifier: decentralized-energy-network
Description: Decentralized Energy application with Hyperledger Composer
✖ Installing runtime for business network undefined. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Command failed```
Hi, anyone here used `composer-rest-server` ?
Has joined the channel.
Hi friends, has anyone configured the composer-rest-server in multiple user mode? I am trying to configure the REST authentication but the documentation only contains an example of OAuth with GitHub... OAuth is nice, but I would start first with the passport-local strategy. I am not sure how the COMPOSER_PROVIDERS environment variable should look like, for passport-local. Any hints?
Hi friends, has anyone configured the composer-rest-server in multiple user mode? I'm trying to configure the REST authentication but the documentation only contains an example of OAuth with GitHub... OAuth is nice, but I'd start first with the passport-local strategy. I'm not sure how the COMPOSER_PROVIDERS environment variable should look like, for passport-local. Any hints?
@bogdancioc This link will describe about enabling rest authentication: https://hyperledger.github.io/composer/unstable/integrating/enabling-rest-authentication
Hi Ahmed, thank you. That page exemplifies the OAuth authentication through GitHub. I’m interested in the passport-local authentication strategy. Any ideas?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=yCdJL8vJT5pY3Nn43) @varunagarwal Yeah
why does `composer network deploy` use `--peer-defaultchain` for `peer node start`?
it is just a test channel id.
it is just a testchannelid.
it is just a testchannelid. the latest fabric has removed this flag.
can anyone help how to export .card files to the peers who is in different system?
HI,all.I Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations).There was a mistake .
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
Clipboard - 2017年12月14日下午5点14分
@zhoujunshan i was faced the same problem. do you use the latest fabric?
@zhoujunshan Check CA, orderer and peer is running. `docker ps`
the fact is composer uses `--peer-defaultchain` to start the peer node, while the latest fabric has remove this flag.
Clipboard - 2017年12月14日下午5点26分
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=TmxoYkkfN42eZQJnS) @ChevonDebora - do you have npm module 'composer' installed on your system? For Hyperledger Composer you need 'composer-cli' - perhaps trying `npm ls -g --depth=0` would clarify this.
[ ](https://chat.hyperledger.org/channel/composer?msg=BhF9h9pWH54xGzrLv) @varun-raj you don't explicitly use import, but functions currently defined in different script files are accessible to others in the business network
[ ](https://chat.hyperledger.org/channel/composer?msg=pyGrSd4oCZJsDqxZt) @mahoney1 Oh great, but I'm getting an error
```
Transaction returned with failure: SyntaxError: unterminated statement (line 155)```
[ ](https://chat.hyperledger.org/channel/composer?msg=352X5HyBDS7G9a4wM) @bogdancioc see thread here -> https://chat.hyperledger.org/channel/composer?msg=jP6znqHXa6fChLiAX and here -> https://chat.hyperledger.org/channel/composer?msg=uruWP9jJbCEQcQqNo - may help you.
[ ](https://chat.hyperledger.org/channel/composer?msg=352X5HyBDS7G9a4wM) @bogdancioc see thread here -> -https://chat.hyperledger.org/channel/composer?msg=jP6znqHXa6fChLiAX- and here -> -https://chat.hyperledger.org/channel/composer?msg=uruWP9jJbCEQcQqNo- - may help you.
[ ](https://chat.hyperledger.org/channel/composer?msg=352X5HyBDS7G9a4wM) @bogdancioc see thread here -> -https://chat.hyperledger.org/channel/composer?msg=jP6znqHXa6fChLiAX and here -> -https://chat.hyperledger.org/channel/composer?msg=uruWP9jJbCEQcQqNo - may help you.
[ ](https://chat.hyperledger.org/channel/composer?msg=352X5HyBDS7G9a4wM) @bogdancioc see thread here -> -"https://chat.hyperledger.org/channel/composer?msg=jP6znqHXa6fChLiAX" and here -> -"https://chat.hyperledger.org/channel/composer?msg=uruWP9jJbCEQcQqNo" - may help you.
[ ](https://chat.hyperledger.org/channel/composer?msg=352X5HyBDS7G9a4wM) @bogdancioc see thread here -> --https://chat.hyperledger.org/channel/composer?msg=jP6znqHXa6fChLiAX- and here -> --https://chat.hyperledger.org/channel/composer?msg=uruWP9jJbCEQcQqNo"- (remove superlfuous '-' in links ) - may help you.
[ ](https://chat.hyperledger.org/channel/composer?msg=k5RZhKcxd4x974MDn) @zhoujunshan - From your list of Containers it looks like you are running on a Fabric 1.0.0. You should be on a Fabric 1.0.4 for Composer v0.16.2.
(also do not forget this command in the pre-requisites - it is important to get the right version of byfn. `git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git` )
[ ](https://chat.hyperledger.org/channel/composer?msg=Q5Lgxpfgd4QamyW8S) @mostafa.elsayyad Thanks a bunch
Can anyone guide on how to measure Transactions per second? Just running an experiment here
[ ](https://chat.hyperledger.org/channel/composer?msg=352X5HyBDS7G9a4wM) @bogdancioc see thread here -> chat.hyperledger.org/channel/composer?msg=jP6znqHXa6fChLiAX and here ->
chat.hyperledger.org/channel/composer?msg=uruWP9jJbCEQcQqNo - may help you.
[ ](https://chat.hyperledger.org/channel/composer?msg=4xWqSDYqN35k3Nn9Y) @varun-raj shouldn't be to do with your JS function - more likely to be what's happening in your code - have split string literals over 2 lines without escaping ,terminated the line syntactically ??
[ ](https://chat.hyperledger.org/channel/composer?msg=P4a27LbXGyAdf47cM) @flash139 - the Business Network Card contains Credentials, The Name of the Business Network, and connection details to the Fabric. When creating a Card it is important to think about the Addresses used to connect to the Fabric - for instance localhost is often used for a single machine dev/test environment, but it not appropriate for a Multi Peer multi System Fabric. You will need to plan your network and the connections and create your initial Cards with this in mind.
[ ](https://chat.hyperledger.org/channel/composer?msg=P4a27LbXGyAdf47cM) @flash139 - the Business Network Card contains Credentials, the Name of the Business Network, and connection details to the Fabric. When creating a Card it is important to think about the Addresses used to connect to the Fabric - for instance localhost is often used for a single machine dev/test environment, but it not appropriate for a Multi Peer multi System Fabric. You will need to plan your network and the connections and create your initial Cards with this in mind.
[ ](https://chat.hyperledger.org/channel/composer?msg=P4a27LbXGyAdf47cM) @flash139 - the Business Network Card contains Credentials, the Name of the Business Network, and connection details to the Fabric. When creating a Card it is important to think about the Addresses used to connect to the Fabric - for instance localhost is often used for a single machine dev/test environment, but it not appropriate for a Multi Peer multi System Fabric. You will need to plan your network and the connections and create your initial Cards with this in mind. (The cards created and used in tutorials and examples will often use localhost for simplicity but this is not suitable for more advanced scenarios.)
@rthatcher thankyou .and can u help me where i can get the advanced tutorial to connect different systems from my business network
[ ](https://chat.hyperledger.org/channel/composer?msg=Q8HH9nzfh7dZFh39S) @varun-raj you can model your own transactions and add fields to it, then submit whatever you wish in your txn. The transactions you submitted will reflect that in Historian
function testQuery(testQuery) {
return getAssetRegistry('org.acme.trade.network.ProductInventory')
.then(function (assetRegistry) {
return query('findProductInventoryByProduct', {'product':testQuery.product})
.then(function (results) {
console.log('results are:');
for (var n = 0; n < results.length; n++) {
var product = results[n];
console.log('Product Details:' +product);
console.log('Product Name:' +product.productName);
}
});
});
}
I am trying to execute above query inside a test transaction but getting error as Error: Use Serializer.toJSON to convert resource instances to JSON objects.
@mahoney1 @rthatcher @silliman can you let me know how to fix above error in above code ???????
Hi, I am querying the Historian and I need to resolve the `transactionInvoked` for each returned record . Which registry do I need to access ? thx
when i do similar query on a non relationship it works fine and gives output but when used with a relationship say Product it gives error as s Error: Use Serializer.toJSON to convert resource instances to JSON objects.
@tkuhrt can you please have a look at above error and suggest some possible fix?
Has left the channel.
Can anyone tell me how to setup the network to accept username/password instead of the card file for authentication?
Hi Anna, any luck using the passport-local auth strategy with composer-rest-server?
@varun-raj Hyperledger Fabric Networks and as such Composer do not have a userid/password authentication mechanism. All access is done through MSP capabilities and the default Hyperledger fabric implementation is PKI using certificates. Business networks run inside a network fabric so that is a requirement to access a business network. The EnrollId/EnrollSecret combination is a One Time enrollment mechanism which is used by the Fabric-CA to issue certificates in order to allow access into the fabric network
[ ](https://chat.hyperledger.org/channel/composer?msg=6q6y3f6bWr7SiRvnk) I was not able to reproduce the problem. I understand the atomicity of the transaction at the HLF level, ie. the write set is either accepted or rejected as whole. I thought for some reason atomicity was not enforced at API level. Sorry for making such an assumption.
I now suspect the problem might be related to the changes made to the model in Playground: I noticed the assets instances don't show up anymore when the model is changed. But the instances are still there: their ids cannot be reused and the instances reappear once the the model is reverted to original.
So my missing assets instance might simply be "ghost" instances that are no more compliant with the current mode, and therefore don't show up in playground, but could still be referenced by the current model instances. I didn't have time verify this though.
@davidkel So is it possible to use certificates to simulate login/logout ?
function testQuery(testQuery) {
return getAssetRegistry('org.acme.trade.network.ProductInventory')
.then(function (assetRegistry) {
return query('findProductInventoryByProduct', {'product':testQuery.product})
.then(function (results) {
console.log('results are:');
for (var n = 0; n < results.length; n++) {
var product = results[n];
console.log('Product Details:' +product);
console.log('Product Name:' +product.productName);
}
});
});
}
I am trying to execute above query inside a test transaction but getting error as Error: Use Serializer.toJSON to convert resource instances to JSON objects. @mahoney1 @rthatcher @davidkel any idea about above error ??????
[ ](https://chat.hyperledger.org/channel/composer?msg=5sEFENPxZK5dX55Pe) @yogesh.fulsunge you need to do as it suggests in the Error - see example should help you -> https://stackoverflow.com/questions/46686996/search-for-an-specific-asset-inside-a-transaction
let me check
@mahoney1 the link you provided converts to json in order to update asset registry but in above example i am not updating only retrieving
[ ](https://chat.hyperledger.org/channel/composer?msg=ndyLwwkhTQFTs22nw) @mahoney1 can you suggest how to fix above code ??
[ ](https://chat.hyperledger.org/channel/composer?msg=CFgemTMhXDfDyzmfu) @jaguarg `org.hyperledger.composer.system.HistorianRecord` for Historian and `org.acme.sample.NAME_OF_TRANSACTION_CLASS` for transaction class. The `TransactoinInvoked` in Historian looks like this as a relationship eg `"resource:org.hyperledger.composer.system.Transaction#c1bcd961-41bb-43a3-b5ee-c1c3694f7736"`
[ ](https://chat.hyperledger.org/channel/composer?msg=CFgemTMhXDfDyzmfu) @jaguarg `org.hyperledger.composer.system.HistorianRecord` for Historian and `org.acme.sample.NAME_OF_TRANSACTION_CLASS` (ie sample namespace here) for transaction class. The `TransactoinInvoked` in Historian looks like this as a relationship eg `"resource:org.hyperledger.composer.system.Transaction#c1bcd961-41bb-43a3-b5ee-c1c3694f7736"`
[ ](https://chat.hyperledger.org/channel/composer?msg=GpMDvY28W6aYQYDzz) @flash139 - at this time we don't have that kind of material. Understanding Docker and how to use Docker and networking on multiple host machines is beyond the focus of this Hyperledger Composer Channel. I would suggest looking into Kubernetes or Docker Swarm and then investigate multi-org in Hyperledger Fabric.
Query is not working properly when I have more than 2. The center condition is not working
@yogesh.fulsunge I pasted an example of using the serializer . The problem is likely to be in your console.log ? try something like `console.log(JSON.stringify(businessNetworkConnection.getBusinessNetwork().getSerializer().toJSON(product)));
@yogesh.fulsunge I pasted an example of using the serializer . The problem is likely to be in your console.log ? try something like `console.log(JSON.stringify(businessNetworkConnection.getBusinessNetwork().getSerializer().toJSON(product)))`
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=NN7wSxxnPgQr2ocAr) @rthatcher i know about docker-swarm iam able to add worker nodes to my manager node but after that when i run composer iam getting " you are using docker swarm , use docker stack deploy" what should i do now.please help me.i strucker here
@mahoney1 thank you. But I would like to query system transaction AddAsset, UpdateAsset, Remove... . From the HisorianRecord, how can I get the details of the associated transaction ?
Looking for feedback: I have just published a new tutorial on building hyperledger composer based blockchain applications. It's called "Zero To Cognitive" and walks a developer through the process of creating a dispute resolution oriented business network with 5 different roles. The tutorial creates a web UI for each role and ends with using events to notify users of interesting things happening to 'their' assets. The tutorial is on YouTube here:https://www.youtube.com/playlist?list=PLnJzIOiv6cVTjaJRtJ2srarhs-m4V3zs3 and the git repo is here: https://github.com/rddill-IBM/ZeroToBlockchain
The tutorial is current with composer v0.16.0
Hello Team!
We tried to deploy HL Composer to business network with multiple organizations by this manual https://hyperledger.github.io/composer/stable/tutorials/deploy-to-fabric-multi-org
Everything goes good: install chaincode, create card and import card on both Orgs except last steps 18 and 19 with command "composer network ping -c user@tutorial-network" always falls with strange error:
> composer network ping -c user@tutorial-network
in console output also have that:
Error: Error trying to ping. Error: Error trying to query business network. Error: Error executing chaincode: premature execution - chaincode (roochey-network:0.16.0) launched and waiting for registration
in peer cotainer:
2017-12-14 11:12:00.830 UTC [eventhub_producer] Chat -> ERRO 244a error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
So we don't understand what goes wrong and what expect Fabric (or composer?) from us. We tried different ways to solve that - but without success.
Will appreciate for any info with that because Google, StackOverflow and HyperLedger JIRA doesn't help.
we tried deploy under versions
Composer 0.16
Fabric 1.0.4
[ ](https://chat.hyperledger.org/channel/composer?msg=iTs3u659ZxNdw2mWj) @jaguarg Build a query eg ``` // build the special query for historian records
let q1 = businessNetworkConnection.buildQuery(
`SELECT org.hyperledger.composer.system.HistorianRecord
WHERE (transactionType == 'AddAsset' OR transactionType == 'UpdateAsset' OR transactionType == 'RemoveAsset')`
);
return businessNetworkConnection.query(q1); ``` etc and then use REST filters on the API endpoint to resolve the relationships ? eg ` {"include":"resolve"}`
@mahoney1 great. That what I have done. I am not using the REST API . So my results look like this
```[ ValidatedResource {
'$modelManager': ModelManager { modelFiles: [Object] },
'$classDeclaration':
AssetDeclaration {
ast: [Object],
modelFile: [Object],
decorators: [],
name: 'HistorianRecord',
properties: [Object],
superType: 'Asset',
superTypeDeclaration: [Object],
idField: 'transactionId',
abstract: false,
fqn: 'org.hyperledger.composer.system.HistorianRecord' },
'$namespace': 'org.hyperledger.composer.system',
'$type': 'HistorianRecord',
'$identifier': '0f9d04b7c13f314c5135052fca176d40847730d82f3305d1bde9169d1aec36d9',
'$validator': ResourceValidator { options: {} },
transactionId: '0f9d04b7c13f314c5135052fca176d40847730d82f3305d1bde9169d1aec36d9',
transactionType: 'org.hyperledger.composer.system.UpdateAsset',
* transactionInvoked:
Relationship {
'$modelManager': [Object],
'$classDeclaration': [Object],
'$namespace': 'org.hyperledger.composer.system',
'$type': 'UpdateAsset',
'$identifier': '0f9d04b7c13f314c5135052fca176d40847730d82f3305d1bde9169d1aec36d9',
'$class': 'Relationship' },*
participantInvoking:
Relationship {
'$modelManager': [Object],
'$classDeclaration': [Object],
'$namespace': 'org.hyperledger.composer.system',
'$type': 'NetworkAdmin',
'$identifier': 'admin',
'$class': 'Relationship' },
identityUsed:
Relationship {
'$modelManager': [Object],
'$classDeclaration': [Object],
'$namespace': 'org.hyperledger.composer.system',
'$type': 'Identity',
'$identifier': 'ef35f675aab6f3ffc65a548507b8a8b76580dab9e6376186cb40931d8cd4118c',
'$class': 'Relationship' },
eventsEmitted: [],
transactionTimestamp: 2017-12-13T14:45:18.728Z } ]```
I need to resolve this bit :
Using the NodeJS modules I need to resolve this bit :
```Relationship {
'$modelManager': [Object],
'$classDeclaration': [Object],
'$namespace': 'org.hyperledger.composer.system',
'$type': 'UpdateAsset',
'$identifier': '0f9d04b7c13f314c5135052fca176d40847730d82f3305d1bde9169d1aec36d9',
'$class': 'Relationship' }```
```transactionInvoked: Relationship {
'$modelManager': [Object],
'$classDeclaration': [Object],
'$namespace': 'org.hyperledger.composer.system',
'$type': 'UpdateAsset',
'$identifier': '0f9d04b7c13f314c5135052fca176d40847730d82f3305d1bde9169d1aec36d9',
'$class': 'Relationship' }```
I have a doubt. After "composer network start" command, why "composer card import --file" command is run?
Hey! Is a good practice to receive a `transactionId` or any similar ID field from the client? I am generating a random uuid inside the transaction, so each peer generates its own random uuid. At the end, in a two peer and one org network one of them is stored. I am wondering if that will cause issues when we use more peers and a different endorsement policy. Is it better to always generate the ID on the client and then validate it (if it is an uuid) inside the transaction? ANy thoughts on this?
Hey! Is a good practice to receive a `transactionId`, an asset's ID or any similar ID field from the client? I am generating a random uuid inside the transaction, so each peer generates its own random uuid. At the end, in a two peer and one org network one of them is stored. I am wondering if that will cause issues when we use more peers and a different endorsement policy. Is it better to always generate the ID on the client and then validate it (if it is an uuid) inside the transaction? Any thoughts on this?
Hey! Is a good practice to receive a `transactionId`, an `asset's ID` or any similar `ID field` from the client? I am generating a random uuid inside the transaction, so each peer generates its own random uuid. At the end, in a two peer and one org network one of them is stored. I am wondering if that will cause issues when we use more peers and a different endorsement policy. Is it better to always generate the ID on the client and then validate it (if it is an uuid) inside the transaction? Any thoughts on this?
Hey! Is a good practice to receive a `transactionId`, an `asset's ID` or any similar `ID field` from the client? I am generating a random uuid inside the transaction, which makes each peer to generate a different ID value for the same transaction. At the end, in a two peer and one org network one of them is stored. I am wondering if that will cause issues when we use more peers and a different endorsement policy. Is it better to always generate the ID on the client and then validate it (if it is an uuid) inside the transaction? Any thoughts on this?
@rahulkannur The composer network start creates a card for the business network administrator, which is different from the PeerAdmin card used to start the network. The business network administrator is used to manage the now-started business network. That card has to be imported into the current, active card store to be used by your application or rest server. So, start the network, then import the newly created business adminstrator card.
[ ](https://chat.hyperledger.org/channel/composer?msg=HzgRsm8sBP45GjAGN) @MaratFatkullin - I have just re-run this tutorial with Compose v0.16.0 on Fabric 1.0.4 and did not encounter the same error as you. A couple of things to check - do you have enough system resource to run the tutorial? 6-8GB of RAM dedicated to the machine (or VM) running the tutorial. Are all of your containers still running? Did you see any errors in the command from step 17? After Step 17 you should see 4 new containers for the Business Network for each of the 4 Peers e.g. dev-peer1.org2.example.com-tutorial-network-0.16.0
@mahoney1, sorry to bother, do you know if what I am trying to do is feasible without using the REST API ?
Has joined the channel.
Hello
I am trying to set up a simple Hyperledger, but we have problem connecting. It fails on connect to 7054. Any idea what can be wrong?
[ ](https://chat.hyperledger.org/channel/composer?msg=cc9oHH3SpFSMLbzkQ) @rthatcher thank you for your reply!
That strange because we tried a lot of times with different version of composer 0.16 and 0.16.2 and Fabric 1.0.5 and 1.0.4 and always got the same error
We run docker containers on the Mac (16Gb on the laptop, 8Gb allocated for docker)
btw we run with Kafka + zookeeper + TLS, but without Kafka, zookeeper and TLS the same error
After 17th step we see all 4 containers and they are really up.
If we make deploy with single organization - all work ok for us, with any version of Composer and Fabric.
If we look into the logs on peer container after we make
> composer network ping -c user@tutorial-network
then we get this full log:
2017-12-14 11:14:17.967 UTC [eventhub_producer] validateEventMessage -> DEBU 2454 ValidateEventMessage starts for signed event 0xc42349f050
2017-12-14 11:14:17.968 UTC [eventhub_producer] registerHandler -> DEBU 2455 registering event type: BLOCK
2017-12-14 11:14:18.011 UTC [eventhub_producer] validateEventMessage -> DEBU 2456 ValidateEventMessage starts for signed event 0xc42349f4d0
2017-12-14 11:14:18.012 UTC [eventhub_producer] deRegisterHandler -> DEBU 2457 deregistering event type: BLOCK
2017-12-14 11:14:18.019 UTC [eventhub_producer] Chat -> ERRO 2458 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
@lucasdf I am (also) trying to figure idioms/good practices about ids.
I see two options:
- random ids, using uuids, or some kind of hash
But I think I read somewhere that random generation was prohibited in
transaction processor. Did I make that up? It would make sense considering that
the transaction processor must generate a deterministic compution to ensure that
all peer agree on the outcome.
- structured ids like:
user:1
asset:3
user_1_dependentAsset:4
...
Following I give a sample model with one user participant and one asset state.
The user has a current state and each state is linked to the previous state.
The transaction code is given in two forms for the update transaction:
one that uses a reference to the user and benefits from automagic resolution,
and the other that uses a property of the id structure.
```/**
* New model file
*/
namespace org.bug
// A simple model comprising a named user participant
// who owns a state asset.
// The state is a simple string value, but states are
// chained such that when the value is changed, the new
// resulting state is chained to the previous one.
participant User identified by userId {
o String userId
o String name
--> State current
}
asset State identified by stateId {
o String stateId
o String value
--> State previous
--> User owner
o BaseTransaction cause // Redundant with historian but handy.
}
// Make all Transaction derive from this one so they can
// be associated to each State change
abstract transaction BaseTransaction {
}
transaction CreateUser extends BaseTransaction {
o String name default = 'Hobby One'
o String value default = 'Initial Value'
o Integer userSeqId default = 5
}
transaction UpdateState extends BaseTransaction {
// Much easier to programm because the dependent references
// are automagically resolved, but the client must be able to
// provide this reference in order to trigger the transaction
--> User user
o String value default = 'Updated state'
}
transaction UpdateStateById extends BaseTransaction {
// No autoresolution magic, but a simple string is
// much easier to retrieve from eg. a web form or
// within a rest API call
o Integer userSeqId default = 5
o String value default = 'Updated state by ID'
}
```
```// A user participant with a state asset
//
// Author: Olivier Dalle
//
/**
* Computes the next sequential identifier of a resource
* @param {String} seqId
*/
function nextSeqId(seqId) {
var parts = seqId.split(':');
return parts[0]+':'+ (parseInt(parts[1])+1);
}
/**
* Create new User participant resource
* @param {org.bug.CreateUser} creation
* @transaction
*/
function onCreateUser(creation) {
var stateAssetRegistry;
var userPartRegistry;
var user;
return getAssetRegistry('org.bug.State')
.then (function (sar) {
stateAssetRegistry = sar;
var state = getFactory().newResource('org.bug','State','user_'+creation.userSeqId+'_state:1');
user = getFactory().newResource('org.bug','User','user:'+creation.userSeqId);
state.value = creation.value;
state.previous = state; // sentinel: links to itself
state.owner = user;
state.cause = creation;
user.current = state;
user.name = creation.name;
console.log('Adding state');
return sar.add(state)
})
.then (function () {
return getParticipantRegistry('org.bug.User')
})
.then (function (par) {
console.log('Now adding user');
return par.add(user)
})
}
/**
* Update the current state of user
* @param {org.bug.UpdateState} update
* @transaction
*/
function onUpdateState(update) {
var userPartRegistry;
var userParticipant;
return getParticipantRegistry('org.bug.User')
.then ( function(par) {
userPartRegistry = par;
return getAssetRegistry('org.bug.State')
})
.then ( function(sar) {
userParticipant = update.user;
var oldState = update.user.current;
var newState = getFactory().newResource('org.bug','State', nextSeqId(oldState.stateId));
newState.value = update.value;
newState.owner = userParticipant;
newState.previous = oldState;
newState.cause = update;
userParticipant.current = newState;
console.log('Updating state:'+newState);
return sar.add(newState);
})
.then ( function (newState) {
console.log('Updating user:'+userParticipant);
return userPartRegistry.update(userParticipant);
})
}
/**
* Update the current state of user
* @param {org.bug.UpdateStateById} update
* @transaction
*/
function onUpdateStateById(update) {
var userPartRegistry;
var stateAssetRegistry;
var newState;
var userParticipant;
return getParticipantRegistry('org.bug.User')
.then ( function(par) {
userPartRegistry = par;
return getAssetRegistry('org.bug.State')
})
.then ( function(sar) {
stateAssetRegistry = sar;
// Retrieve the participant resource ...
return userPartRegistry.get('user:' + update.userSeqId);
})
.then ( function(user) {
userParticipant = user;
// ... and the dependent asset(s)
return stateAssetRegistry.get(user.current.getIdentifier())
})
.then (function (oldState) {
newState = getFactory().newResource('org.bug','State', nextSeqId(oldState.stateId));
newState.value = update.value;
newState.owner = userParticipant;
newState.previous = oldState;
newState.cause = update;
userParticipant.current = newState;
console.log('Updating state:'+newState);
return stateAssetRegistry.add(newState);
})
.then ( function () {
console.log('Updating user:'+userParticipant);
return userPartRegistry.update(userParticipant);
})
}
```// A user participant with a state asset
//
// Author: Olivier Dalle
//
/**
* Computes the next sequential identifier of a resource
* @param {String} seqId
*/
function nextSeqId(seqId) {
var parts = seqId.split(':');
return parts[0]+':'+ (parseInt(parts[1])+1);
}
/**
* Create new User participant resource
* @param {org.bug.CreateUser} creation
* @transaction
*/
function onCreateUser(creation) {
var stateAssetRegistry;
var userPartRegistry;
var user;
return getAssetRegistry('org.bug.State')
.then (function (sar) {
stateAssetRegistry = sar;
var state = getFactory().newResource('org.bug','State','user_'+creation.userSeqId+'_state:1');
user = getFactory().newResource('org.bug','User','user:'+creation.userSeqId);
state.value = creation.value;
state.previous = state; // sentinel: links to itself
state.owner = user;
state.cause = creation;
user.current = state;
user.name = creation.name;
console.log('Adding state');
return sar.add(state)
})
.then (function () {
return getParticipantRegistry('org.bug.User')
})
.then (function (par) {
console.log('Now adding user');
return par.add(user)
})
}
/**
* Update the current state of user
* @param {org.bug.UpdateState} update
* @transaction
*/
function onUpdateState(update) {
var userPartRegistry;
var userParticipant;
return getParticipantRegistry('org.bug.User')
.then ( function(par) {
userPartRegistry = par;
return getAssetRegistry('org.bug.State')
})
.then ( function(sar) {
userParticipant = update.user;
var oldState = update.user.current;
var newState = getFactory().newResource('org.bug','State', nextSeqId(oldState.stateId));
newState.value = update.value;
newState.owner = userParticipant;
newState.previous = oldState;
newState.cause = update;
userParticipant.current = newState;
console.log('Updating state:'+newState);
return sar.add(newState);
})
.then ( function (newState) {
console.log('Updating user:'+userParticipant);
return userPartRegistry.update(userParticipant);
})
}
/**
* Update the current state of user
* @param {org.bug.UpdateStateById} update
* @transaction
*/
function onUpdateStateById(update) {
var userPartRegistry;
var stateAssetRegistry;
var newState;
var userParticipant;
return getParticipantRegistry('org.bug.User')
.then ( function(par) {
userPartRegistry = par;
return getAssetRegistry('org.bug.State')
})
.then ( function(sar) {
stateAssetRegistry = sar;
// Retrieve the participant resource ...
return userPartRegistry.get('user:' + update.userSeqId);
})
.then ( function(user) {
userParticipant = user;
// ... and the dependent asset(s)
return stateAssetRegistry.get(user.current.getIdentifier())
})
.then (function (oldState) {
newState = getFactory().newResource('org.bug','State', nextSeqId(oldState.stateId));
newState.value = update.value;
newState.owner = userParticipant;
newState.previous = oldState;
newState.cause = update;
userParticipant.current = newState;
console.log('Updating state:'+newState);
return stateAssetRegistry.add(newState);
})
.then ( function () {
console.log('Updating user:'+userParticipant);
return userPartRegistry.update(userParticipant);
})
}```
```
Sorry I forgot the question: any comments/criticism about that structured id approach? And what about the client side? Do you use asset/participant references in your client side code?
trying to run `adminConnection.install()`
but having an error saying
```
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca-org.service.consul' does not exist"}]]
```
which ca-org.service.consul is in the IdCarda resolvable domain within the network and it's also the name of the CA server.
any help appreciated
@bsteinfeld I am Bruce
looks like it's not able to resolve ca-org.service.consul
```
root@e8f9b15723b5:/usr/src/app# telnet ca-org.service.consul 7054
Trying 10.114.140.203...
Connected to ca-org.service.consul.
Escape character is '^]'.
```
can you do a `adminConnection.requestIdentity`
the error is from the above method
can u request cert though
how to verify that?
and moreover, are you not passing the businessNetworkName to the `install` command?
```
await adminConnection.importCard(cardName, card)
await adminConnection.connect(cardName)
identity = await adminConnection.requestIdentity(cardName, vaidID, validSecret)
```
```await adminConnection.importCard(cardName, card)
await adminConnection.connect(cardName)
identity = await adminConnection.requestIdentity(cardName, vaidID, validSecret)
```
[ ](https://chat.hyperledger.org/channel/composer?msg=SkoixefcZChw2eyrn) @jaguarg yes should be feasible
@mahoney1 would be great if you could give us some guidelines for this [ ](https://chat.hyperledger.org/channel/composer?msg=o35X4gNGyxikRY9uo) @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=8CzgviSBTEXZMXbmi) @MaratFatkullin - you are running on a Mac whereas I'm running a Linux VM, but this should work on a Mac. Looking at your responses of your current attempt you might be doing things slightly differently to the Tutorial - I would suggest sticking strictly to the Tutorial to start with until it works. Just to make sure, it is really important to clone and use the right repo for the fabric-samples and use the byfn.sh script within it. `git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git`
Does anyone know if we can pass flags to the duktape engine? I am facing some performance issues and I would like to thinker with it to see if I can improve performance.
Does anyone know if we can pass flags to the duktape engine? I am facing some performance issues and I would like to play with it to see if I can improve performance.
Has joined the channel.
Has joined the channel.
Hello. I have Hyperledger Composer up and running using the "tutorial-network" example and it works fine. I can write queries, add traders, transact, etc. but I"m struggling to make RESTFUL APIs calls to my "tutorial-network" business network via node.js. I can't get past the statement this.cardName = config.get("cardName"); It throws an error saying "Exception has occurred: Error ReferenceError: config is not defined" I'm sure I'm doing something stupid, but after many hours of hacking it can't seem to resolve. Any suggestions?
Having an issue working with one org tutorial where when I go to create the composer card create to create the bn card it can't read my Admin cert. Error reads as follows:
composer card create -p connection.json -u PeerAdmin -c Admin@org1.example.com-cert.pm -k 114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457_sk -r PeerAdmin -r ChannelAdmin
Error: Unable to read file: /Users/CT15/temp/HL-COMPOSE/fabric-tools/Admin@org1.example.com-cert.pm
Command failed
and permissions on that file are as follows:
-rwxr-xr-x 1 CT15 staff 790 Jul 11 18:20 Admin@org1.example.com-cert.pem
Anyone know why I can't open / read that file? Thanks.
NEVER MIND - helps to spell pem correctly.... [ ](https://chat.hyperledger.org/channel/composer?msg=mHTTwjTWgF8uifYwv)
@pbd3 The example I assume you have taken from the writing a node.js application ? The snippets actually come from this file
https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/lib/landRegistry.js
And this shows that config is actually created from
```
let config = require('config').get('digitalproperty-app');
```
ie, it comes from a required module called config, but also it requires a config.json file to exist and contain configuration information. Again for the sample above it would be this file
```
https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/config/default.json
```
which holds the information about `cardName`.
It's probably worth studying the whole sample application.
Has joined the channel.
Hi
I have a question regarding the "Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations)" tutorial. On Step Seventeen, why do we need to use the PeerAdmin@byfn-network-org1 card instead of the PeerAdmin@byfn-network-org1-only card?
I am trying to apply those instructions to a multi organization network on IBM Blockchain platform and getting an error when I try to use the card with all the peers. Things seems to work okay if I use the card with single org peers.
Hi I met a problem in event emitting. Is it possible to emit an event before throwing error? Now my code is like this:
```
return function()
.then(function(){})
.catch(function(err){
emit(someevent);
throw err;
})
```
and the event never be emitted. But if delete `throw err`, event will be emitted successfully. why does this happen?
when i try to enable rest authentication after installing passport-github module using npm : npm -g install passport-github and follow the steps mentioned in composer web site , it gives me error as module passport-github not found any one please let me know how to solve this ??
what is the use of peeradmincard?
@rahulkannur peer admin card is used to connect to the network and there is one card per peer, so in single peer organisation we have 1 peer admin card
whats the difference between peer admin card and network admin card?
Hello, i am facing this error while trying to authenticate the REST APIs {"error":{"statusCode":500,"name":"InternalOAuthError","message":"Failed to obtain access token","oauthError"
can somebody help me with this issue?
Hello! Does anyone know what does healt status fail mean? https://www.evernote.com/l/Af0CjsYNyepEpa5S4qc-vEvzrzX6HaSGBaw
Hello! Does anyone know what does health status fail mean? https://www.evernote.com/l/Af0CjsYNyepEpa5S4qc-vEvzrzX6HaSGBaw
Anyone has any example of using identity based transaction WITHOUT using `composer-rest-server` ?
Is anyone tried to get full object of the relationship data in query?
[ ](https://chat.hyperledger.org/channel/composer?msg=H7ibQMLrHwT8M7ZKt) @rahulkannur Peer is for setting up the fabric and deploying business network
Has joined the channel.
I am new to hyperledger composer and trying the tutorial on hyperledger composer. I have specified the model, script and access code in the Define tab. But the "Update" button is disabled. Any idea why?
[ ](https://chat.hyperledger.org/channel/composer?msg=Pg4YyqTWqjFpDqiST) @RGOPALAKMAPLE Update button is disabled if there is a syntax error in one of the files.
Well the message says "Everything looks good!" for all the 3 inputs
[ ](https://chat.hyperledger.org/channel/composer?msg=BvW7fJZq8monWXZ34) @varunagarwal Well the message says "Everything looks good!" for all the 3 inputs
Message
Choose File
*bold*
_italics_
~strike~
`inline_code`
```
multi
line
```
\[KaTeX\]
>quote
Members List
Add users
Showing: 58, Online: 58, Total: 1344 users Show all
ArnabChatterjee (UTC +9)
Audrius (UTC +1)
CodeReaper
Dau (UTC +1)
Dpkkmr
Jaline (UTC +8)
JayasreeVenugopal
Manasabingi
MeenakshiSingh
MohammadObaid (UTC +5)
NikkiNikki
RGOPALAKMAPLE
SushilShintre
UdayCTO
WiniNani
adrianblakey (UTC -8)
asaningmaxchain (UTC +8)
ascatox (UTC +1)
asuchit
baohua (UTC +8)
baoyangc (UTC +8)
bh4rtp (UTC +8)
bsteinfeld (UTC -5)
ccorley (UTC -6)
chfalak (UTC +5)
chokha (UTC -5)
cweiers (UTC +1)
flash139
gauthampamu (UTC -6)
guruce (UTC +8)
holocron (UTC -6)
john
johnz (UTC -8)
jtclark (UTC -5)
jworthington (UTC -5)
kletkeman (UTC -5)
knagware9
lakshaygaur
lehors (UTC +1)
luminance (UTC +1)
lxnx (UTC +8)
manojamin (UTC -5)
maris.c (UTC +2)
mayur.relekar
mbharadwaj (UTC -5)
metalog (UTC +3)
nehirakdag (UTC -5)
pallavigajwani
qingsongGuo (UTC +8)
rahulkannur
sanjay-saxena (UTC -8)
tkuhrt (UTC -7)
varun-raj
varunagarwal
vsadriano (UTC -3)
xixuejia (UTC +8)
yogesh.fulsunge
zhoujunshan (UTC +8)
[ ](https://chat.hyperledger.org/channel/composer?msg=HiZ6DWK6uqtHq3epA) @labcoinpoc Check this : https://hyperledger.github.io/composer/reference/js_scripts.html, section "Error handling in transaction processor functions"
The error makes the transaction roll back
Changes made by transactions are atomic, either the transaction is successful and all changes are applied, or the transaction fails and no changes are applied.
@odalle thanks for your reply! That's exactly what I needed.
@rahulkannur @pallavigajwani The PeerAdmin card has 2 roles in our dev fabric server setup. It has the authority to install chaincode onto the peer and it has the authority to instantiate chaincode onto the channel. It's name 'PeerAdmin' is a little confusing. Also in a real world scenario it's highly unlikely you would have a AdminCard for each Peer. What is more likely is you would have a PeerAdmin card for each organisation so you can install chaincode on all Peers in that organisaton. There would then be a separate ChannelAdmin card so that within the Consortium the Composer business network can be started.
@rahulkannur The Network Admin card is a card that provides access to the deployed business network. The default is that the credentials you supply either by -A/-S or -A/-C when you deploy or start a business network is then bound to in instance of the inbuilt NetworkAdmin Participant type with a name usually the same as that specified in the -A part. To access a business network you have to use an identity that is mapped to a participant
Has joined the channel.
Hey everyone.
Just started through tutorial of Hyperledger installation: https://hyperledger.github.io/composer/installing/using-playground-locally.html
Finished "Creating the containers and installing playground locally" and it removed all my containers. Don't you think that many people could have important things stored in containers?
At least you could warn people that installation will remove all your containers....
[ ](https://chat.hyperledger.org/channel/composer?msg=Qw3LJYmK3CMExyG65) @Petr.Shypila I am not part of the team that developed the tuto, but I might still help clarify about Docker: I think the philosophy of Docker is for ccontainers to be expandable, and save important data in volumes. By doing so you can lose/destroy/reinstall/update containers without comprimising your important data.
@odalle I agree. It's not that much about data, but container configuration. I used container to execute software there. There I had many many bash configs and exported variables. Quite often I need to set smth here and there inside container and saving it all the time into image becomes annoying. And as I knew that I don't plan to remove container it was fine for me. Definitely I didn't expect that it might be removed by running side software installation.
@Petr.Shypila sure - can add a warning at that step in the docs that the containers will be recreated when running the curl cmd
can i write a local transaction processing function to be called by another function ?????
[ ](https://chat.hyperledger.org/channel/composer?msg=byHMYFSi4LETgt6Yf) @yogesh.fulsunge yes indeed ..
Has joined the channel.
Hi all, Can someone show me how to deploy composer to Azure (portal.azure.com), Thank you so much
Hi all, Can someone show me how to deploy composer to Azure (portal.azure.com). I make the network by guideline here (https://hyperledger.github.io/composer/tutorials/developer-tutorial.html), I don't know how to deploy it, Thank you so much
[ ](https://chat.hyperledger.org/channel/composer?msg=8HMDWt3SsmkNNTEFD) @mahoney1 can you give me one example pls
[ ](https://chat.hyperledger.org/channel/composer?msg=Pg4YyqTWqjFpDqiST) @RGOPALAKMAPLE hi there, did you resolve your issue? Happy to look at a BNA if you're stuck cheers
@mahoney1 can you give me example how i can call local transaction function from another transaction function which will return results
I have a question about transaction timestamps and clock accuracy: What is the ultimate source of time used for producing timestamps? Is it based on an NTP synchronized clock? And if so, is the container running its own NTP client internally, or is it using the container's host clock?
[ ](https://chat.hyperledger.org/channel/composer?msg=C25rHDWPQBza5rFvb) @pallavigajwani - are you just using Authentication or setting up Multi-User too? (trying just authentication first then moving to Multi-User is easier to troubleshoot.)
I assume you had a 401 error the first time you attempted to access a resource?
Are you using a Browser to test or some other access method?
I would suggest trying a Private or Incognito window (depending on your browser) to start with a 'clean' environment.
Are there any other errors in the terminal window where you started the REST server?
Have you tried first logging into GitHub, then hitting the /auth/github URL? - this should set the token when logging into GitHub and the /auth/login on the REST server will pick it up.
If this doesn't help - retrace steps and make sure the environment variable COMPOSER_PROVIDERS has all the correct values.
[ ](https://chat.hyperledger.org/channel/composer?msg=C25rHDWPQBza5rFvb) @pallavigajwani - are you just using Authentication or setting up Multi-User too? (trying just authentication first then moving to Multi-User is easier to troubleshoot.)
I assume you had a 401 error the first time you attempted to access a resource?
Are you using a Browser to test or some other access method?
I would suggest trying a Private or Incognito window (depending on your browser) to start with a 'clean' environment.
Are there any other errors in the terminal window where you started the REST server?
Have you tried first logging into GitHub, then hitting the /auth/github URL? - this should set the token when logging into GitHub and the /auth/github on the REST server will pick it up.
If this doesn't help - retrace steps and make sure the environment variable COMPOSER_PROVIDERS has all the correct values.
[ ](https://chat.hyperledger.org/channel/composer?msg=kx2wN5jkAWsaXZew4) @maris.c - is this a question about the Hyperledger Cello project ? There is a #cello channel - this is Hyperledger Composer :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=iLcxQD4rqsKvMeQhJ) I guess I can answer my own question: the timestamp is added by the client and from HLF doc it is only required to be a monotonically increasing integer, so I guess I cant use it for things like reliably measuring the delay elapsed between two transactions submitted by client connected to distinct peers.
[ ](https://chat.hyperledger.org/channel/composer?msg=KtEzCo5fEb4RA3hQZ) @NaveenSachdeva - I think the best route for support for the IBM Blockchain Platform is this page https://console.bluemix.net/docs/support/index.html#contacting-support
in composer-rest-server, how can we limit the wallet to session scope?
Currently if I add a card to wallet it's accessible by any client
[ ](https://chat.hyperledger.org/channel/composer?msg=RGyaHEkHoatZcsziu) @yogesh.fulsunge you can call one TP function from another - so I've got 2 script files and one will return results from its function to the other (which is console.logged).
Clipboard - December 15, 2017 10:49 AM
@yogesh.fulsunge Its just been added to basic-sample-network - so from my transaction sampleTransaction I call it ie ```var returnVal;
//And now call the function in func2.js
var returnVal= sayHello("Yogesh");
var code = returnVal.code;
var msg= returnVal.message;
console.log('The returned message and code are: Msg-> ' + msg + ' the code -> ' + code );``` and then my func2.js script has this ```function sayHello(name) {
retMsg = "hello " + name;
return {code: 100, message: retMsg};
}
``` hope this helps
@yogesh.fulsunge Its just been added to basic-sample-network - so from my transaction sampleTransaction I call it ie ```var returnVal;
//And now call the function in func2.js
var returnVal= sayHello("Yogesh");
var code = returnVal.code;
var msg= returnVal.message;
console.log('The returned message and code are: Msg-> ' + msg + ' the code -> ' + code );``` and then my func2.js script has this
```function sayHello(name) {
retMsg = "hello " + name;
return {code: 100, message: retMsg};
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=RtPuTx5m3JMEvBwFD) Can someone help me in this?
Trying to figure out solutions to timing issues (I would like to measure the delay elapsed between two transactions produced at clients connected to different peers): where does the historian timestamp come from? Is it copied from the logged transaction, or independently generated by the historian process? I am still playing with playground. But when developing my own client, I guess my client code will have to either use the API provided serializer or fill in the timestamp and tx id in some reasonable way. So if I cannot trust the client code, I cannot trust the Tx timestamp. But If the historian can be trusted to produce correct timestamp (assuming the system clock is correctly set), it seems that would solve my problem.
how to decide between composer or node sdk to build aa application?
Hi, simple question: Is it possible to use the REST-API to subscribe to events ?
Hi when trying to enable REST authentication i am getting error module passport-github not found
@odalle - it comes from the transaction. The field `transactionTimestamp` in the Historian record, is the same timestamp generated for a transaction when it was submitted (and the timestamp is also accessible there).
@mahoney1 @rthatcher Hi when trying to enable REST authentication i am getting error module passport-github not found but the module is already installed and i followed the steps mentioned to enable authentication in compoase site
[ ](https://chat.hyperledger.org/channel/composer?msg=JG9ZFhDTSj8ysHv6E) Found it. https://hyperledger.github.io/composer/integrating/publishing-events.html
[ ](https://chat.hyperledger.org/channel/composer?msg=Wrdb4smLyjA4eJkY8) @yogesh.fulsunge see here - https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html you haven't npm installed the module eg. `npm install -g passport-github`
[ ](https://chat.hyperledger.org/channel/composer?msg=BAhCKKefnjZcqE59h) @mahoney1 i have installed still it is giving error
[ ](https://chat.hyperledger.org/channel/composer?msg=DsZk65AFi4BeFZWFp) @yogesh.fulsunge installed as sudo / root ? Are you just following that tutorial - or are you integrating the strategy to an app?
Hi! how to decide between composer or node sdk to build an application??
[ ](https://chat.hyperledger.org/channel/composer?msg=qqRujmkqyZKhdpHqe) @mahoney1 Thanks for the clarification. But the fact the actual Tx timestamp can be read directly from the Tx means that the Historian record could possibly be modified to insert its own timestamp rather than copying the Tx one. What is the rationale of repeating the timestamp (i mean except that it might be what Historian client expect)? Would it break anything to change the Historian such that it inserts its own timestamp rather than repeat the one found in the Tx?
[ ](https://chat.hyperledger.org/channel/composer?msg=qqRujmkqyZKhdpHqe) @mahoney1 Thanks for the clarification. But the fact the actual Tx timestamp can be read directly from the Tx means that the Historian could possibly be modified to insert its own timestamp rather than copying the Tx one. What is the rationale of repeating the timestamp (i mean except that it might be what Historian client expect)? Would it break anything to change the Historian such that it inserts its own timestamp rather than repeat the one found in the Tx?
@rthatcher thnx for the suggestion, i will try to try this way as well, i.e. without enabling multi-user mode
@rthatcher i am trying to access it using browser as well as command line, using incognito window only, no other errors are there in the REST server window and even composer_providers is set as per the documentation. can you explain what you meant by logging into Github and hitting the URL and i have not used anything such as "auth/login". whr am i supposed to use that??
@yogesh.fulsunge i have already done that part, but i am not able to get the access token.. do let me know if you are able to do by pass that stage
@mahoney1 Sorry, another timestamp related question: does the monotonically increasing property of ts have to be true for all transactions even when they originate from clients connected to distinct peers, or does it need only to be true per each Peer? Because if this property has to be enforced globally (ie transaction rejected if ts < highest recorded global ts), then it leaves very little room for a malicious peer to play with clock backward or it would take the risk to see its transactions rejected, right? But what if it uses a time in the future? Can a transaction with early timestamp (ie 1h ahead in future) be accepted? And if so, is it going to block all transactions until that time is reached by all? Is this a potential DoS attack?
[ ](https://chat.hyperledger.org/channel/composer?msg=xmg5jZah7RtRK6g74) @mahoney1 Installed as non root user
i am following the tutorial but it is not mentioned to install as root
[ ](https://chat.hyperledger.org/channel/composer?msg=LSj5Ff9SA9Hha6Du9) @pallavigajwani - Sorry /auth/login was a typo I meant /auth/github (I just edited the earlier reply). For clarity - if you first hit Http://localhost:3000/auth/github the Composer REST Server should redirect you to Github and then after login Github redirects you back. But if you login to Github first then you have your token, and when you hit Http://localhost:3000/auth/github second it will pick up the token instead of redirecting you. So logging in to Github first changes the test and might help find the problem.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=nSh6XGDZYzahYWkyJ) @rthatcher I will definitely check with IBM regarding the error but the error only happens if I use the card with multi org peers and my question is why do we need to use the card with multi org peers for "composer network start"? Thanks
hi, i'm evaluating different blockchain frameworks for integration in a product of ours and can't find the information i'm looking for wrt composer. The main question i have is: is it possible to regulate bnd updates in other ways than having a simple allowed or denied permission in an acl? To be more specific, i need multiple admins to sign an upgrade before it can become active. In the future, we might add additional restrictions, such as validating a signature of the bna.
is composer designed to have such resitrictions in place or would i be better off with another solution?
[ ](https://chat.hyperledger.org/channel/composer?msg=d7hfx9CkpvjjsTRYW) @varun-raj did you mean 'time-limit' by scope as in clear a user's wallet?
Has joined the channel.
@papegaaij I'm very new but you might be able to do that by having a bnd update conditional on a value in the chain. Then you restrict access to that value so that it cannot be changed directly and then handle the rest via transactions that only admins have access to.
*My own question*
For an `UPDATE` acl rule with resource `r`, in the conditional is there anyway to compare the current and old value of `r.someAttribute`?
To be more specific, I have a chain-calculated `reputation` field on a `participant` that I want to prevent direct-changes to. I could restrict all `UPDATE` access and require the updates to be done via transactions, but that feels crude and likely to lead to anti-pattern problems for a system at scale.
@burnhamrobertp perhaps you can code that in your transaction logic?
Normally mere updates don't require transactions, but yes we've considered `DISALLOW` all `UPDATE` and require that updates the `UserWithReputation` participant
Normally mere updates don't require transactions, but yes we've considered `DISALLOW` all `UPDATE` and require that updates to the `UserWithReputation` participant go through transactions.
Normally mere updates don't require transactions, but yes we've considered `DISALLOW` all `UPDATE` and require that updates to any `UserWithReputation` participant go through transactions.
`condition: (u.reputation === u.old.reputation)` would be so much more elegant.
Obviously I'm making up the existence of `u.old` though
well, on my chain i need to restrict almost every update, all need to go through transactions, even the updates to the bnd itself
bnd, you mean bna?
yes
gotcha, yeah updates to the BNA are always restricted, though? Or any participant can change the network model.
gotcha, yeah updates to the BNA are always restricted, though? Or any participant can change the network model, transactions, etc.
yes, but i need very specific restrictions, i can't trust any one user my network, i need the trust of at least 2
Yep, consider my suggested approach above, I think it very well could satisfy your needs.
this seems to be possible with hyperledger fabric itself, using package signing
Based on the limited knowledge I have of your use case, anyways.
i don't see how that would restrict the use of `composer network update ...`
as far as i can see, either the update succeeds or it fails
[ ](https://chat.hyperledger.org/channel/composer?msg=MK7Yqzo3RqhyRkcR9) @papegaaij I think it is possible through the Initiation Policy which can be provided during "composer runtime install"....but I believe you would need an out-of-band process to get the signatures....I have not tried this so far
[ ](https://chat.hyperledger.org/channel/composer?msg=qf4YCJq9p6ePWdw7q) @papegaaij seems to me your issue exists as a change management issue (your business network model and definition and a policy for aggregate authority to be able to update a business network) . By the time it gets to `composer network update` it seems, its already too late from your thread. The Network ACLs in Composer, can restrict who (ie a participant of that network) was allowed to do the network update. Its possible that such a record is only created once all the signatures are collected, as a one-time operation (so that the network update could take place). eg. ```rule networkControlPermission {
description: "networkControl can access network commands"
participant: "org.acme.vehicle.auction.networkControl"
operation: all
resource: "org.hyperledger.composer.system.Network"
action: ALLOW
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=qf4YCJq9p6ePWdw7q) @papegaaij seems to me your issue exists as a change management issue (your business network model and definition and a policy for aggregate signatures or authority to be able to update a business network) . By the time it gets to `composer network update` it seems, its already too late from your thread. The Network ACLs in Composer, can restrict who (ie a participant of that network) was allowed to do the network update. Its possible that such a record is only created once all the signatures are collected, as a one-time operation (so that the network update could take place). eg. ```rule networkControlPermission {
description: "networkControl can access network commands"
participant: "org.acme.vehicle.auction.networkControl"
operation: all
resource: "org.hyperledger.composer.system.Network"
action: ALLOW
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=qf4YCJq9p6ePWdw7q) @papegaaij seems to me your issue exists as a change management issue (your business network model and definition and a policy for aggregate signatures or authority to be able to update a business network) . By the time it gets to `composer network update` it seems, its already too late from your thread. The Network ACLs in Composer, can restrict who (ie a participant of that network) was allowed to do the network update. Its possible that such a record is only created once all the signatures are collected, as a one-time operation (so that the network update could take place). eg. ```rule networkControlPermission {
description: "networkControl can access network commands"
participant: "org.acme.vehicle.auction.networkControl"
operation: all
resource: "org.hyperledger.composer.system.Network"
action: ALLOW
}``` .Footnote: control to actually do the network update (I believe articulated here elsewhere) can be controlled outside of Composer again as I say a change management process drives it.
[ ](https://chat.hyperledger.org/channel/composer?msg=qf4YCJq9p6ePWdw7q) @papegaaij seems to me your issue exists as a change management issue (your business network model and definition and a policy for aggregate signatures or authority to be able to update a business network) . By the time it gets to `composer network update` it seems, its already too late from your thread. The Network ACLs in Composer, can restrict who (ie a participant of that network) was allowed to do the network update. Its possible that such a record is only created once all the signatures are collected, as a one-time operation (so that the network update could take place). eg. ```rule networkControlPermission {
description: "networkControl can access network commands"
participant: "org.acme.vehicle.auction.networkControl"
operation: all
resource: "org.hyperledger.composer.system.Network"
action: ALLOW
}``` .Footnote: control to actually do the network update (I believe articulated here elsewhere) can be controlled outside of Composer again as I say a change management process drives it. Anyway hope this helps
[ ](https://chat.hyperledger.org/channel/composer?msg=WntouiQtCG8Fs897m) My understanding is that both "composer network start" and "composer network update" are chaincode initiation
@NaveenSachdeva that's my understanding as well (with the limited knowledge i acquired today)
[ ](https://chat.hyperledger.org/channel/composer?msg=xewkR9jKEfNTn7ncw) @papegaaij If our understanding is correct then "composer network start" and "composer network update" should trigger the initiation policy and look for signed package (in this case the bna file) :)
what i try to accomplish is a smart contract bundled with an application, when this application is updated, the new version of the contract must be installed on the blockchain, but before this new version becommes active, at least 2 maintainers must accept this upgrade
@mahoney1 @rthatcher can i create a relationship to a asset and then access its values using relationship and also update the values ???
any sample example you have ??
the reason i cannot allow 1 user to update the chaincode is that this chain grants access to systems these users are probably not allowed to access, if 1 user could update the chaincode, than i have an attack vector where that user replaces the smart contract with a version that grants access to everything for himself
@mahoney1 can you point me to any documentation on how to influence this change management process?
[ ](https://chat.hyperledger.org/channel/composer?msg=BzrnoffhedwSpXxd3) @papegaaij you're stating that you need 2 verified signatures before the update can occur. A participant (that performs the S/C update) can be require two such signatures before it is created (ie it only exists because those criteria have been met, ie not one 'user'). From what I've read, your process requires two maintainers to sign-off that update. If the signed BNA is not there, then the composer network update can't possibly do it unless, its been through your process ?
[ ](https://chat.hyperledger.org/channel/composer?msg=BzrnoffhedwSpXxd3) @papegaaij you're stating that you need 2 verified signatures/signoffs before the update can occur. A participant in Composer (that performs the S/C update) can be required such that two signatures are provided (hashes or otherwise?) before that signoff maintainer record is created (ie it only exists because those criteria have been met, ie not one 'user'). From what I've read, your process requires two maintainers to sign-off that update. If the signed BNA is not there, then the composer network update can't possibly do it unless, its been through your process ?
[ ](https://chat.hyperledger.org/channel/composer?msg=BzrnoffhedwSpXxd3) @papegaaij you're stating that you need 2 verified signatures/signoffs before the update can occur. A participant in Composer (that performs the S/C update) can be required such that two signatures are provided (hashes or otherwise?) before that signoff maintainer record is created (ie it only exists because those criteria have been met, ie not one 'user'). From what I've read, your process requires two maintainers to sign-off that update, outside of Composer. So if the generated/signed-off BNA is not there, then the composer network update can't possibly do it unless, its been through your process ?
ah, you're suggesting to create a special participant to perform the update and only give this participant permission to UPDATE Network?
[ ](https://chat.hyperledger.org/channel/composer?msg=6k3ezoCXhwA7mmiQa) @papegaaij yes, one suggestion.
[ ](https://chat.hyperledger.org/channel/composer?msg=6k3ezoCXhwA7mmiQa) @papegaaij yes, one suggestion. You could also store a comparison hash, so that the update will only match the signed bna..
well, in fabric chaincode there's an 'Init' method, does such a method also exist in composer?
in fabric it's used to setup your state, but also to migrate state on an upgrade
but this method, i think, cannot be used to perform permission checks, because the new method will be invoked, so an attacker could install a new version without all the checks and it would be accepted
Guys,
There is a contradiction between that ..
blockchain is saying that transactions are persistant and final into the database
and
everytime I add or remove a property in an asset, all previous records of this asset are removed. same applies to participant class
note: I'm editing on playground
But, how could that be possible ?!
[ ](https://chat.hyperledger.org/channel/composer?msg=A3BrocLYYqZWCYufv) @mostafa.elsayyad Playground per default uses browser storage and not a real blockchain as backend
[ ](https://chat.hyperledger.org/channel/composer?msg=qe4wBpo7zgtFEZkNc) @papegaaij Composer does not directly generate chaincode or 'Go'. It uses a generic chaincode that maps composer models to chaincode tables and runs transaction processor functions using the javascript interpreter in a javascript engine. So it runs in its own runtime environment and chaincode container, for a business network. You (it appears) you only want an update to occur that's a) verifiable before it could be used as a source 2) control of how the update task could be invoked at all and 3) driven by a CM / update policy that exhibits compliance. That should be achievable as mentioned.
@mahoney1 ok, you just confirmed my view of composer, so that's nice :) From what i see so far, even though it may be possible to control all this in composer, i might be better off using plain chaincode in go (or maybe java?) and work directly on fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=u6Y2pocWDT2P3xAwq) @cweiers - and in Playground you can view All Transactions from the Test tab and see any create or update transactions via Historian records
it seems that for composer I have to do a lot of work to add all kinds of checks and do my own upgrade management, and i only have little benefit of composer itself
from what i've seen, most of these guards are available in fabric and the lower level of abstraction might actually help me :)
composer has really nice primitives to add participants, assets, manage networks etc, but in my case i need to disable most of them and reimplement them to prevent abuse
[ ](https://chat.hyperledger.org/channel/composer?msg=qDBT84rMark32m7J4) @papegaaij seems to me you can control it all outside Composer - you want to ensure that only the signed, proven contract gets used for an update. From what I've read, this can be taken out of the control of the 'malicious user' scenario you've portrayed, Its a signed certifed identity that would do it - that doesn't equate to network operator or user.
[ ](https://chat.hyperledger.org/channel/composer?msg=qDBT84rMark32m7J4) @papegaaij seems to me you can control it all outside Composer - you want to ensure that only the signed, proven contracts gets used for an update. From what I've read, this can be taken out of the control of the 'malicious user' scenario you've portrayed, Its a signed certified identity that would do it - that doesn't equate to network operator or user.
yes, but i've got similar constraints for adding/updating participants or assets
and that makes up most of my contract
so if i move all of that outside composer, there's little left to do in composer
Hello in below example i am not able to update registry using reference to a product . can anyone let me know how to do it ????
.then(function () {
return getAssetRegistry('org.acme.trade.network.Product');
})
.then(function (productRegistry) {
// Update the quantity and ownership of product
products = contract.productReq;
for ( var i = 0; i < products.length; i++) {
eachProduct = products[i];
var productRef = factory.newRelationship(NS, 'Product', eachProduct.productId);
productRef.quantityAvailable = productRef.quantityAvailable - eachProduct.quantity;
// update the state of the shipment
return productRegistry.update(productRef);
}
});
[ ](https://chat.hyperledger.org/channel/composer?msg=fX4uSfHvTPttCrdgW) @yogesh.fulsunge see example here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/animaltracking-network/lib/model.cto.js#L167 for convenience `businesses` array was defined earlier here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/animaltracking-network/lib/model.cto.js#L117
[ ](https://chat.hyperledger.org/channel/composer?msg=fX4uSfHvTPttCrdgW) @yogesh.fulsunge see example here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/animaltracking-network/lib/model.cto.js#L167 for convenience `businesses` array was defined earlier here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/animaltracking-network/lib/model.cto.js#L117 and model file here -> https://github.com/hyperledger/composer-sample-models/blob/master/packages/animaltracking-model/models/com.hyperledger.composer.animaltracking.cto
sometimes one can wish that composer logs can have a little bit more of info, instead of *Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND*
[ ](https://chat.hyperledger.org/channel/composer?msg=KPG8HeAw5DCSxbtcf) @ankashu did you do a `composer runtime install` ? which document/tutorial are you following? Are you trying to run on Windows ?
[ ](https://chat.hyperledger.org/channel/composer?msg=KPG8HeAw5DCSxbtcf) @ankashu did you do a `composer runtime install` ? which document/tutorial are you following? Have you forgot to created/started the Fabri channel you're profile is referring to ? Are you trying to run on Windows ?
[ ](https://chat.hyperledger.org/channel/composer?msg=KPG8HeAw5DCSxbtcf) @ankashu did you do a `composer runtime install` ? which document/tutorial are you following? Have you forgot to created/started the Fabric channel you're profile is referring to ? Are you trying to run on Windows ?
[ ](https://chat.hyperledger.org/channel/composer?msg=KPG8HeAw5DCSxbtcf) @ankashu did you do a `composer runtime install` ? which document/tutorial are you following? Have you forgot to create/start the Fabric channel you're profile is referring to ? Are you trying to run on Windows ?
[ ](https://chat.hyperledger.org/channel/composer?msg=KPG8HeAw5DCSxbtcf) @ankashu did you do a `composer runtime install` ? which document/tutorial are you following? Have you forgot to create/start the Fabric channel your profile (in your BN card) is referring to ? Are you trying to run on Windows ?
how can i switch cards from composer-client
[ ](https://chat.hyperledger.org/channel/composer?msg=dtbDjymTyTPx8ds3e) @mahoney1 no, on the mainframe :-D
@mahoney1 I have a feeling that there's something wrong with the channel. Though it'd be great to have more meaningful logs, eg 'channel not found'
[ ](https://chat.hyperledger.org/channel/composer?msg=Y3mNE9DtW2NepmomP) @jon_s beyond switching like ? ```const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
let businessNetworkConnection = new BusinessNetworkConnection();
return businessNetworkConnection.connect('lenny@digitalPropertyNetwork')
.then(() => { .........blah blah } return businessNetworkConnection.disconnect(); ```
@ankashu Unfortunately that's all you get back from fabric itself. I am hoping fabric have done some work to improve their error messages
@mahoney1 @davidkel indeed it was a channel pb, now all works good, thanks.
@mahoney1 Thanks. But I was expecting some implementation samples. Like we have .card file to be uploaded in wallet for rest server. Then we switch the cards there. I want some code to do similar stuff.. 😅
hi Good evening
I am trying to assign participant to an asset in transaction but got this error
Invalid JSON data. Found a value that is not a string: [object Object] for relationship
any help????
[ ](https://chat.hyperledger.org/channel/composer?msg=KqxRBQsaYZXr4yiE7) @InduBhatti please try assigning the field to
[ ](https://chat.hyperledger.org/channel/composer?msg=KqxRBQsaYZXr4yiE7) @InduBhatti please try assigning the field to
No actually i was getting this error during participant creation
Asset is already created
[ ](https://chat.hyperledger.org/channel/composer?msg=qNzzTwqekJqLtWLxZ) @InduBhatti so you have already created an asset and you are trying assign it to a participant? If yes then set it to
Yup i already did that.. When i use my bna file in composer playground, everything is created fine but when i try to do composer-rest-server
Participant creation gave me this error
is it just me or the keyword LIMIT does not work in a query?
@lucasdf No it doesn't work because of a limitation of hyperledger fabric.
Is there a way to catch events emitted during transaction processing when using playgrouynd?
[ ](https://chat.hyperledger.org/channel/composer?msg=hWBWreh4iNPYdTzLS) @davidkel thanks.. is this issue being tracked somewhere? do you know if this may get solved in fabric 1.1?
[ ](https://chat.hyperledger.org/channel/composer?msg=hWBWreh4iNPYdTzLS) @davidkel thanks for the information.. is this issue being tracked somewhere? do you know if this may get solved in fabric 1.1?
@lucasdf There is a JIRA raised, I haven't looked for a while to see the status of it. If it's not resolved yet we will try to get fabric to resolve it for 1.1
[ ](https://chat.hyperledger.org/channel/composer?msg=fdeoM6gp9uQ2en4Wp) @InduBhatti Can you share your JSON request?
@odalle use developer tools in chrome.. set debugger points and check them
[ ](https://chat.hyperledger.org/channel/composer?msg=A55zL87ZMYzuLuz8a) @jon_s Thanks
Has joined the channel.
Do you guys have any recommended first things first / getting started tutorial videos? I just installed hyperledger composer and hit up the docs, but I'm not quite wrapping my head around it as quickly as I'd like.
[ ](https://chat.hyperledger.org/channel/composer?msg=9SfP4RsqguSw7BR8w) @mahoney1 I'd like to have only one level of authentication where instead of passport, The user just uploads his card and start using the end point. So the clients are differentiated with help of cards alone not passport stretagey
Has joined the channel.
how to store an audio file on fabric using composer modeling language?
@nickyromeijn what resource are you following?
or any other way?
[ ](https://chat.hyperledger.org/channel/composer?msg=QReAx8vdZWhgxrB4L) @mmick best practice is NOT to store audio or pictures files (why?) on a blockchain, rather using links to that object (another database etc). However, this question was raised and replied on this channel, you might simply search it
@ankashu how to search in this thread?
[ ](https://chat.hyperledger.org/channel/composer?msg=6bEbdzSWqJbMx4KDA) @mmick there's a search (magnifying glass) icon in the toolbar on your right.
it did not work before but now (y)
@mahoney1 ( Storing an image ) if the reference is stored but object is stored off-chain isn't it prone to be easily tempered or manipulated?
Has left the channel.
Hi guys, I'm trying to start the composer rest api server in multiuser mode, but without OAuth - I would like to use local authentication. Can you point me to some ideas? I can't find any documentation on this, especially on the COMPOSER_PROVIDERS environment variable. Thanks for your hints!
Is there a way to store the security certificates on the client then provide them through (maybe) the HTTP Header to the REST server? This would avoid having to store the security certificates on the REST server...
Has joined the channel.
Hi
Has joined the channel.
I am very new to the composer world and I am looking for a good tutorial that deals gives deep insight on the integration of Composer and Sawtooth
[ ](https://chat.hyperledger.org/channel/composer?msg=M6Fth8734r2eLzYrD) @mmick you may also store a checksum (like a sha256)
[ ](https://chat.hyperledger.org/channel/composer?msg=M6Fth8734r2eLzYrD) @mmick you may also store in the blockchain a checksum (like a sha256) that the client may use to verify if the file is indeed the same
[ ](https://chat.hyperledger.org/channel/composer?msg=M6Fth8734r2eLzYrD) @mmick you may also store in the blockchain a hash checksum (like a sha256) that the client may use to verify if the file is indeed the same
[ ](https://chat.hyperledger.org/channel/composer?msg=Rr4hqB4JopkqaqmY6) @bogdancioc even I'm trying the same. Share me if you find any hopes I'll also do :)
Has joined the channel.
Hi All,
I need help figuring out how to compartment my organization using multiple (possibly many) channels.
Here is what I have in mind:
- My system is Peer-to-peer, in which all "nodes" are identical. I will call them "node" not to confuse with HLF Peer entities
- A node is a physical machine attached to a global network (Ie internet or entreprise network). Every node can reach every other (network is a complete graph)
- on each Node runs one (HLF/Composer) Peer instance (or maybe as many as channels? that is part of my question, see below)
- each node rune one endorser peer
- all transactions have to be endorsed by at least two peers (and therefore at least one other)
- multiple clients (I call them agents) are connected internally to each Peer on each node (each running in a separate Docker container)
- now the tricky part: I would like to compartment my organization in multiple channels such that:
* All the agents running on a given Node participate to multiple channels but not all possible channels
Example:
Nodes = { N1, N2, N3 }
Channels = { C1, C2, C3 }
N1 belongs to {C1, C2}
N2 belongs to {C2, C3}
N3 belongs to {C1, C3}
and therefore
C1 contains {N1, N3}
C2 contains {N1, N2}
C3 contains {N2, N3}
I would like each channel to run my business network independently.
I understand my agents will have to enrole (be enroled) as participant independently in each channel.
After reading the single/multi-organization tutorial, I understand that I could have each channel associated to a distinct organization, eg OrgC1, OrgC2, OrgC3.
Then for each organization, I would need a specific connection profile, specifying the corresponding channel. However I am a bit confused about the peers declaration in this profile. For example, should each peer be enrolled with a different port, or can the same port be used by a peer to listen on all channels?
And instead of multiple orgs, can I use a single one and mutualize the CA? In that case, is it sufficient to define multiple connection profiles for the same peer, but specifying different channels? Would the peers (and CA) need to use different ports for each channel?
Please do not hesitate to point out any inconsistancy in my diabolic plan...
how to handle error in script.js while developing buisness netowrks using composer
Looking at the same. According to the documentation, authentication is required for multi-user mode, .i.e. -a is automatically set to true is - m is set to true upon compser-rest-server start. The only hint provided in the documentation (https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html) is to to one of the 300+ Passport strategies. [ ](https://chat.hyperledger.org/channel/composer?msg=XrM4XgKRmRbeikzxh) @varun-raj
[ ](https://chat.hyperledger.org/channel/composer?msg=tZwGBPTKFyav9wQtL) @jasoncys yeah that's what. But I don't want authentication and authorisation as two different thing. It should be like once I uploaded the card it should take me in and perform operations
Hi @odalle . From a high level, looks like you are looking to implement a blockchain network within one organisation correct?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZaNCm73CaovTBFBat) @snowy13 Correct
[ ](https://chat.hyperledger.org/channel/composer?msg=ZaNCm73CaovTBFBat) @snowy13 Correct. But I am open to multi if necessary. (Ie. I guess I can handle multiple CAs)
And are you implementing channels because you require data privacy between systems within that organisation?
[ ](https://chat.hyperledger.org/channel/composer?msg=uXdNSfWhKsLzuqkM3) @snowy13 Privacy is one concern. The other is scalability.
>I would like each channel to run my business network independently.
It's this comment I'm having trouble with
[ ](https://chat.hyperledger.org/channel/composer?msg=5sxRj6Ha3QfeGB3y5) @snowy13 My constraints are that each node has to join a fixed number of channels K, but the total number of channels N >> K
[ ](https://chat.hyperledger.org/channel/composer?msg=5sxRj6Ha3QfeGB3y5) @snowy13 My constraints are that each node has to join a fixed number of channels K, but the total number of channels N >> K. All channel have the same function. It just joining K that matters.
[ ](https://chat.hyperledger.org/channel/composer?msg=tZwGBPTKFyav9wQtL) @jasoncys Right. So many possibilities yet the documentation is so poor. There are two more articles that may indicate a way forward. I'm posting them here may they'll help you, too: First, a description of what seems to have been implemented in Composer: https://github.com/hyperledger/composer/issues/142. Then, an indication on how to configure the REST API server with GitHub (again!) but with persistence of security certificates after restart (by default, if you chose a local authentication scheme, the certificates will be stored in memory, thus lost on restart of API REST Server...): https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
[ ](https://chat.hyperledger.org/channel/composer?msg=tZwGBPTKFyav9wQtL) @jasoncys Right. So many possibilities yet the documentation is so poor. There are two more articles that may indicate a way forward. I'm posting them here maybe they'll help you, too: First, a description of what seems to have been implemented in Composer: https://github.com/hyperledger/composer/issues/142. Then, an indication on how to configure the REST API server with GitHub (again!) but with persistence of security certificates after restart (by default, if you chose a local authentication scheme, the certificates will be stored in memory, thus lost on restart of API REST Server...): https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
[ ](https://chat.hyperledger.org/channel/composer?msg=zojPAWoCvzfJ64SwJ) I, for one, could live with storing the security certificates only on the client, then passing them to the REST server at each API call. If only that were possible... Does anybody know if that's possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=bc5tWprKEM3Jpb8Md) @odalle Not sure if this answers your question, but it seems you just need to work around the semantics. In your case, a Coomposer bockchain business network is your organisation, a Composer Org is your definition of a "peer node".
Hi Everyone, I recently saw this demo on you tube (https://www.youtube.com/watch?v=t5wZvmZGuAY) . It is about building a simple bank on the blockchain. In this context the participants of the blockchain are the "customer", "account" and "accountTransfer" which are define in the "Model File". The logic of how to transfer an amount from an account to another is define in "Script File". Now here comes the question: When we create new customers, accounts and transactions; these are stored in the blockchain ledger. But how exactly? According to this documentation (http://hyperledger-fabric.readthedocs.io/en/release/ledger.html) it seems that we need to define peers in order to store data in the ledger. If yes, How are the peers define in this demo? What is the relationship between peers and the participants of the blockchain? Thanks in advance for any answer!
Has joined the channel.
As far as I know, the data will be stored in the ledger which is inside of channel that you have setup and the channel will be joined in the peer
I`ve study that as well, but to discover that I went to linux foundation course
[ ](https://chat.hyperledger.org/channel/composer?msg=ZiXtRWwtZC95cFprC) @snowy13 Not exactly. Each of my "peer node" hosts local clients (participants) of the business network(s) (in docker containers) and need to access the service of a fixed number (K) of identical business-networks (which I was considering to instantiate as disctinct HLF Channels). But each node is not a self-contained orga, because it has it get and provide service to multiple clients (participants) hoted on multiple (possibly many) other nodes. My question was therefore rather to know if I can use a single HLF/Composer Peer per node to serve as a local "gateway" for all of these K business networks/channels (given that all channels can be part of a single organisation, ie all participant can be assigned their credentials in each channel by the same physical admin) and if so how am I supposed to configure such HLF/composer Peers.
Hi Team, Is there any way to subscribe to specific events and if not, is that on our roadmap? Thanks!
@tennenjl I don't think you can subscribe to specific events at the moment. As far as I know you need to check the event type in the event handler for now. (when using composer client)
@aneb Thanks for confirming. I would still like to see if there are any plans on the Composer roadmap to emit and receive specific event types with permissions. Thanks again.
Has joined the channel.
Has joined the channel.
Has joined the channel.
You are welcome. I am not part of the team so couldn't comment on the second part though.
Hi, while installing the business card I am getting the below error
$ composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName supply-chain
✖ Installing runtime for business network supply-chain. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Any idea, what is the issue?
Has joined the channel.
Has joined the channel.
Hello everyone I wanted to Deploy a multi-organization Hyperledger Fabric do i need to to create multiple aws instances for Deploying to a multi-organization Hyperledger Fabric as i am using hyperledger composer in aws instance .
i have reported an issue `https://github.com/hyperledger/composer/issues/3024`.
i have reported an issue at https://github.com/hyperledger/composer/issues/3024.
[ ](https://chat.hyperledger.org/channel/composer?msg=xR6xSGQCs2S3GoCyn) @Abhi119 - Are you following this tutorial as your first Multi-Org test? It is a good place to start:
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
This tutorial is intended to run in a single instance, as an Introduction to Multi-Org. (Running Multi-Org on a single instance 'feels wrong' but this Tutorial addresse the Composer issues, rather than the Fabric, Networking and Infrastructure issues.)
To run this tutorial, your instance on AWS should have a minimum of 6GB RAM - ideally 8GB.
[ ](https://chat.hyperledger.org/channel/composer?msg=dfTxShoDvnnLbCWPD) @SauravAnand
'Error: No valid responses from any peers'
**The Fabric is Not Started** - The error has been seen when a Developer's Fabric has not been started (or restarted). A simple check is the command `docker ps` that will show if the Fabric Containers are running.
If the Fabric is not running either run the `startFabric.sh` script under **fabric-tools** or see the entry in this Wiki for Restarting Development Fabric.
**The Fabric is not accessible** - The error can be seen when the Business Network Card uses IP Names or Addresses for Docker Containers that are not resolveable or accessible. For instance a Card my refer to Fabric Containers on localhost which work on a Developer's machine, but won't work if a card is passed to another person. Examine the addresses in the connection.json file to see if they can be reached. The connection.json file will be located in a folder similar to this example: `/home/_\
can anyone say that how those rest apis are created while executing composer-rest-server command. Can we see the code of it?
@rahulkannur you can download the sources tarball from https://github.com/hyperledger/composer/tags. good luck!
[ ](https://chat.hyperledger.org/channel/composer?msg=Dc8BTztExNezrK6kE) @rahulkannur - the composer-rest-server is built using Loopback. The code for Hyperledger Composer including the composer-rest-server is available to clone and examine from GitHub - https://github.com/hyperledger/composer
so those all apis are generated automatically?
@rthatcher i remember there were no source files in the cloned `composer` repository months ago. and notice that there are source files in https://github.com/hyperledger/composer. am i right?
@rthatcher i remember there were no source files in the cloned `composer` repository months ago. and notice that there are source files now in https://github.com/hyperledger/composer. am i right?
@rahulkannur the answer is yes.
[ ](https://chat.hyperledger.org/channel/composer?msg=cGj46J9mwnw4rrot3) @SauravAnand
I had the same issue sometime back. It is likely that your fabric has stopped. Best course of action is to restart the fabric and try again. If you get the same issue, I'd recommend clearing your docker images and starting up your fabric network from scratch and trying again, especially if you are following the multi-org tutorial or the likes.
You will find @rthatcher response to the same question on the link below:
- https://stackoverflow.com/questions/47625538/hyperledger-composer-v0-16-0-network-start-error
Hello everyone! Was just wondering if anyone has had any success deploying an application from Composer via Azure?
Hi everyone, a small query. Would be great if i could get some help/ I have generated a REST API of my business network. It has multiple participants. How do these different participants access the REST API. Do i need to use a login API. Or is there some inbuilt solution. eg. Suppose i have a shopkeeper and a bank as participants in my network. The shopkeeper sends a request for verification to the bank. And once the bank verifies, the transaction is completed. My question is when the blockchain solution is deployed for the two participants in the real world, do we need to create some logins for them using an external API. If yes, won't that defeat the purpose of blockchain since the external API may not be secure
If not, how do different participants access the API
[ ](https://chat.hyperledger.org/channel/composer?msg=ssyoCaG3s7uE9QCRP) @suryasuresh06 - These two documents should explain about authentication and Multi-user for the REST API:
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
So i've decided to upgrade to 0.16 but what would be the proper way to issue new identities through the npm modules? I make hefty use of user switching in my integration tests to see if my ACL works properly. The issueIdentity method returns an enrollmentId and secret, how does this translate to creating a new card through the API?
Can't find documentation on this
.getEnrollmentCredentials() on idCard is a method but i would expect .setEnrollmentCredentials to be one as well to use the credetials returned from the issueIdentity method
the following results in an invalid card error:
``return businessNetworkConnection.issueIdentity(NS+'.CaseManager#'+managerId, 'cm12345', {issuer:true})
.then((result) => {
console.log(result);
casemanagerCard.setCredentials(result);
return cardStore.put(casemanagerCard);
}).then((enroll)=>{
return businessNetworkConnection.connect('casemanager');
})```
the following results in an invalid card error:
return businessNetworkConnection.issueIdentity(NS+'.CaseManager#'+managerId, 'cm12345', {issuer:true})
.then((result) => {
console.log(result);
casemanagerCard.setCredentials(result);
return cardStore.put(casemanagerCard);
}).then((enroll)=>{
return businessNetworkConnection.connect('casemanager');
})```
the following results in an invalid card error:
``
return businessNetworkConnection.issueIdentity(NS+'.CaseManager#'+managerId, 'cm12345', {issuer:true})
.then((result) => {
console.log(result);
casemanagerCard.setCredentials(result);
return cardStore.put(casemanagerCard);
}).then((enroll)=>{
return businessNetworkConnection.connect('casemanager');
})
``
the following results in an invalid card error:
`
return businessNetworkConnection.issueIdentity(NS+'.CaseManager#'+managerId, 'cm12345', {issuer:true})
.then((result) => {
console.log(result);
casemanagerCard.setCredentials(result);
return cardStore.put(casemanagerCard);
}).then((enroll)=>{
return businessNetworkConnection.connect('casemanager');
})
`
the following results in an invalid card error:
```
return businessNetworkConnection.issueIdentity(NS+'.CaseManager#'+managerId, 'cm12345', {issuer:true})
.then((result) => {
console.log(result);
casemanagerCard.setCredentials(result);
return cardStore.put(casemanagerCard);
}).then((enroll)=>{
return businessNetworkConnection.connect('casemanager');
})
```
I have issued an identity using bizNetworkConnection.issueIdentity method and generated card file with toArchive. But how am i suppose to load the card and do transaction as differnt partiipant from composer node api
I've managed to fix my issue, had the wrong metadata specified :)
[ ](https://chat.hyperledger.org/channel/composer?msg=zwMqrNhRKgf3Wny7v) @nickyromeijn think you need to import the card before you connect (businessNetworkConnection) eg. ```businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user);
....
var userCard = new IdCard({...});
userCard.setCredentials(credentials);
...
adminConnection.importCard(userCardName, userCard);
....
.then(() => {
// Connect to the business network using the network admin identity
businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore });
businessNetworkConnection.connect(userCardName);
...```
@mahoney1 that's actually not needed, this is how i fixed it:
```
return businessNetworkConnection.issueIdentity(NS+'.CaseManager#'+managerId, cmIdentity, {issuer:true})
.then((result) => {
const casemanagerCard = new IdCard({
version: 1,
userName: cmIdentity,
businessNetwork:'composer-network',
enrollmentSecret:result.userSecret,
}, connectionProfile);
return cardStore.put(cardName,casemanagerCard);
}).then((list)=>{
return businessNetworkConnection.connect(cardName);
```
```
let cmIdentity = 'cm12345';
let cardName = `${cmIdentity}@composer-network`;
return businessNetworkConnection.issueIdentity(NS+'.CaseManager#'+managerId, cmIdentity, {issuer:true})
.then((result) => {
const casemanagerCard = new IdCard({
version: 1,
userName: cmIdentity,
businessNetwork:'composer-network',
enrollmentSecret:result.userSecret,
}, connectionProfile);
return cardStore.put(cardName,casemanagerCard);
}).then((list)=>{
return businessNetworkConnection.connect(cardName);
```
I do however have a different question; for some reason when i try to deploy the bna file on my local fabric containers i get this error:
```
etwork-definition/node_modules/yargs/yargs.js:1100
else throw err
^
Error: Cannot find module 'cli-table'
```
I do however have a different question; for some reason when i try to deploy the bna file on my local fabric containers i get this error:
```
etwork-definition/node_modules/yargs/yargs.js:1100
else throw err
^
Error: Cannot find module 'cli-table'
```
Does anyone know what this is? Can't seem to find the cause :/
Does Composer support concurrent mathematical operations, like making multiple concurrent additions or subtractions on an asset's property value?
Does Composer support concurrent mathematical operations, like making multiple concurrent additions or subtractions on an asset's property value? Something similar as working with a counter.
Does Composer support concurrent mathematical operations, like making multiple concurrent additions or subtractions on an asset's property value? Something similar as working with a counter. Our use case requires us to deal with billions of assets. Designing them as single units seems to be a bad solution since we need to query and update many of them at the same time. We faced some performance issues due to this. Is there a way to group these objects and perform concurrent operations like addition or subtraction on them?
Does Composer support concurrent mathematical operations, like making multiple concurrent additions or subtractions on an asset's property value? Something similar as working with a counter. Our use case requires us to deal with billions of assets. These assets may be logically grouped by fabrication lot number. Designing them as single units seems to be a bad solution since we need to query and update many of them at the same time. We faced some performance issues due to this. Is there a way to group these objects and perform concurrent operations like addition or subtraction on them?
Does Composer (or Fabric) support concurrent mathematical operations, like making multiple concurrent additions or subtractions on an asset's property value? Something similar as working with a counter. Our use case requires us to deal with billions of assets. These assets may be logically grouped by fabrication lot number. Designing them as single units seems to be a bad solution since we need to query and update many of them at the same time. We faced some performance issues due to this. Is there a way to group these objects and perform concurrent operations like addition or subtraction on them?
Does Composer (or Fabric) support concurrent mathematical operations, like making multiple concurrent additions or subtractions on an asset's property value? Something similar as working with a counter. Our use case requires us to deal with billions of assets. These assets may be logically grouped by fabrication lot number. Designing them as single units seems to be a bad solution since we need to query and update many of them at the same time. We faced some performance issues due to this. Is there a way to group these objects and perform concurrent operations like addition or subtraction on them? Or is there a better way to model the data?
[ ](https://chat.hyperledger.org/channel/composer?msg=fvHjfKGPdZGg9397w) @nickyromeijn what was the deploy command you used pls? Not sure if its similar to this https://github.com/hyperledger/composer/issues/2671 where a `-c` parameter is missing (unhelpful error)
[ ](https://chat.hyperledger.org/channel/composer?msg=fvHjfKGPdZGg9397w) @nickyromeijn what was the deploy command you used pls? Not sure if its similar to this https://github.com/hyperledger/composer/issues/2671 where a `-c` parameter is missing (unhelpful error) - but you said you recently 'upgraded' - did you do an `npm uninstall -g composer-cli` (and whatever other Composer modules you're using) first ? I say that, because its possible you haven't cleanly installed the later release (v0.16 in your case) given this dependency (of Composer) error
@mahoney1 it was indeed an issue with the deploy command i used; i tried to import a non existing card which broke stuff. However the documentation specifies a network card is automatically created by usin the default admin/adminpw creds when starting the network
[ ](https://chat.hyperledger.org/channel/composer?msg=rpCD6qzeTWEgRP3ga) @nickyromeijn oh I see.
for example: ```composer network deploy -a ./dist/composer-network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw```. This does not populate the card store with an admin card for my network
the deployed chaincode however seems to work fine.. (no errors in docker logs and container runs)
Do i need to manually create/import the card with the admin/adminpw creds?
correct - you need `composer network deploy -a ./dist/composer-network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw -f admin.card` - see https://hyperledger.github.io/composer/reference/composer.network.deploy.html then you need to import the card using `composer card import`
@nickyromeijn correct - you need `composer network deploy -a ./dist/composer-network.bna --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw -f admin.card` - see https://hyperledger.github.io/composer/reference/composer.network.deploy.html then you need to import the card using `composer card import`
Hi, I trying to undeploy a business network . I am using `composer network undeploy --card admin@my-network` and the command is successful .
Hi, I trying to undeploy a business network . I am using `composer network undeploy --card admin@my-network` and the command is successful .
After I make changes, I would like to redeploy it but I get errors when re-running `composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName my-network`
Ah i completely missed that step. thanks @mahoney1 :)
@jaguarg - correct, it marks the business network as 'defunct' or 'unresponsive' - ie cannot be reused (or that particular BN name, while it exists on that peer(s) (to which it was deployed) -> see here https://hyperledger.github.io/composer/reference/composer.network.undeploy.html
[ ](https://chat.hyperledger.org/channel/composer?msg=yWLtcrRbbKf6ujFTp) @jon_s you import it (see chat.hyperledger.org/channel/composer?msg=mB9dDJMnHb3gwdTfe ) then connect to the business network as that participant
I got PM2 Daemon is dead from my composer-rest-server. Now I can't even run composer-rest-server on the cli. It doesn't work anymore
I got `PM2 Daemon is dead` from my composer-rest-server. Now I can't even run composer-rest-server on the cli. It doesn't work anymore
I got `PM2 Daemon is dead` from my composer-rest-server container. Now I can't even run composer-rest-server on the cli. It doesn't work anymore
So, im running the rest server in docker and for some reason the cards automatically assume im running everything on localhost; is this derived from something or just default behaviour?
I now had to manually edit the connection.json in my cardstore to make the container work properly
[ ](https://chat.hyperledger.org/channel/composer?msg=QAmuSRCQfX8mC3Pwe) @nickyromeijn - assuming you are running a Development Fabric via fabric-tools scripts, then the PeerAdmin Card created for you by the scripts uses local host to connect through to the Docker Containers by Port forwarding. However as you have discovered when you share the card with a REST server Container localhost 'stays within the container'. The simplest approach to sharing a card inside and outside a container is to replace the 'localhost' with the IP Number of your docker host in the connection.json file of the card you are using.
[ ](https://chat.hyperledger.org/channel/composer?msg=QAmuSRCQfX8mC3Pwe) @nickyromeijn - assuming you are running a Development Fabric via fabric-tools scripts, then the PeerAdmin Card created for you by the scripts uses local host to connect through to the Docker Containers by Port forwarding. However as you have discovered when you share the card with a REST server Container localhost 'stays within the container'. The simplest approach to sharing a card inside and outside a container is to replace the 'localhost' with the IP Number of your docker host in the connection.json file of the card you are using.
This stack overflow covers a little more detail:
https://stackoverflow.com/questions/47804516/hyperledger-composer-cannot-connect-with-dockerized-node-js-app/47818372
Yea thats what im currently doing :)
thing is i previously had it running with a provisioning script which now needs to edit the card files
[ ](https://chat.hyperledger.org/channel/composer?msg=nrToLnWqvvexY6Cj9) @gen_el - PM2 is used in the composrer-rest-server docker container to start and restart the REST server if it fails. What other errors are you seeing in the container? What error are you seeing on the cli when you try and run it locally ?
Does Composer (or Fabric) support concurrent mathematical operations, like making multiple concurrent additions or subtractions on an asset's property value? Something similar as working with a counter. Our use case requires us to deal with billions of assets. These assets may be logically grouped by fabrication lot number. Designing them as single units seems to be a bad solution since we need to query and update many of them at the same time. We faced some performance issues due to this. Is there a way to group these objects and perform concurrent operations like addition or subtraction on them? Or is there a better way to model the data?
[ ](https://chat.hyperledger.org/channel/composer?msg=YdwuJGxbB3TtmySvX) @rthatcher Nothing. Just hangs...
[ ](https://chat.hyperledger.org/channel/composer?msg=meJSGdcwvvWy6Gq6T) @gen_el - you are using a command similar to `composer-rest-server -c admin@test-network -n never -w true` ? What output do you see - usually is starts "Discovering types from business network definition ..."
[ ](https://chat.hyperledger.org/channel/composer?msg=pAAGhxm2RzTbYufLa) @rthatcher Nothing. I suspect hardware resources are maxing out. Checking.
[ ](https://chat.hyperledger.org/channel/composer?msg=qKBGY9MX3Zv98a76d) @lucasdf your main problems seem to be 1) achieving deterministic results 2) concurrency using the correct state (eg counter example) each time and 3) the need (or otherwise) to record each and every update that changed that state, on the blockchain, as proof of transaction history (update transactions the order for which you cannot predict) to show the history of updates to an asset [value] (which is on the blockchain).
Has joined the channel.
Hello All , Are there any real time applications build using the Hyperledger composer playground ? If yes, Can I have a look at them
So what exactly does the /system/identities/issue REST endpoint return? a zip? because i can't seem to convert the octet stream to a zip file properly
hey!
@nickyromeijn what resource of composer documentation are you following?
Ehm, the current one for 0.16 and for the REST api the generated swagger doc
the one that's available at the composer website
how to remove a network admin card from deployed network?
Trying to read the octet-stream into a zip library returns the error that the returned format is invalid for .zip, anybody who got this working?
Has joined the channel.
Has joined the channel.
Is it possible to search for an Asset using the parent's class registry? Only the parent asset has a "identified by" field
Hi experts. Can somebody please help me with the installation problems I'm getting. I'm following instructions from https://hyperledger.github.io/composer/installing/development-tools.html on Ubuntu 16.04 LTS. The prerequisites using ./prereqs-ubuntu.sh were installed but when installing composer-cli or generator-hyperledger-composer I'm getting the following errors:
gyp ERR! stack Error: `gyp` failed with exit code: 1
npm ERR! Failed at the pkcs11js@1.0.12 install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the pkcs11js package
What should I do to get arround it?
@BlockchainFan run 'npm install -g node-gyp'
@bh4rtp verify your connection.json files whether you are using correct protocol for each url mentioned in the tutorials and if its correct then remove all the docker images and clean it and run again
@varunagarwal yes tell me
Can anyone help me in deploying business network in 2 different VM (ubuntu server)?
@nickyromeijn the /system/identities/issue should return a business network card which is basically a zip file.
i have created business network using fabric composer. i have deployed 2 org in same VM but i want to deploy this business network in 2 different VM as 2 org... can anyone help me in this. any doc or link would be appreciated
Has joined the channel.
Has joined the channel.
All right, I'm going to ask a low - level question now. Developers use REST servers and REST API to develop UI for buyers and homeowners
[ ](https://chat.hyperledger.org/channel/composer?msg=jx94Y8Yjy7cygw6Ru) @rthatcher I checked the connection.json file. The urls present there are not accessible. I ran startFabric.sh even that did not work. So tore down everything and started again by downloading images again. But still the issue persists and the urls in connection.json not accessible.
[ ](https://chat.hyperledger.org/channel/composer?msg=Jk8kiQm9BKni9b7pu) @mayur.relekar I tried deleting and downloading the images, but still no luck. Can I check the logs anywhere?
2017-12-19 04:53:00.098 UTC [couchdb] handleRequest -> DEBU 010 Entering handleRequest() method=GET url=http://couchdb:5984/
2017-12-19 04:53:00.099 UTC [couchdb] handleRequest -> DEBU 011 HTTP Request: GET / HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2017-12-19 04:53:00.174 UTC [couchdb] handleRequest -> WARN 012 Retrying couchdb request in 125ms. Attempt:1 Error:Get http://couchdb:5984/: dial tcp 192.168.1.1:5984: getsockopt: connection refused
2017-12-19 04:53:00.302 UTC [couchdb] handleRequest -> DEBU 013 HTTP Request: GET / HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2017-12-19 04:53:00.313 UTC [couchdb] handleRequest -> WARN 014 Retrying couchdb request in 250ms. Attempt:2 Error:Get http://couchdb:5984/: dial tcp 192.168.1.1:5984: getsockopt: connection refused
what might cause this issue
the peer is not starting due to this
:(
[ ](https://chat.hyperledger.org/channel/composer?msg=Z6AdsXD5bLKMuxPE7) @jon_s The mapped host port is probably already in use. Change the mapped port number in the docker-compose file for couchdb.
will check
not working
event after changing couchdb and peer dependency port number
could you share you docker-compose files?
could you share your docker-compose files?
could you share your docker-compose files? @jon_s
docker-compose.txt
this was working yesterday. and this is default from dev server
Has joined the channel.
@SauravAnand how are you starting up your fabric? What is your fabric version?
@gen_el adding
dns_search: .
makes things work
*to peer config in compose file
Hello! Is there any way to achieve rich queries with LevelDB in composer ?
I understand, CouchDB is meant for rich queries.
Any workaround would be appreciated!
Hello,
I m trying to run unit test cases and following `iot-perishable-network-advanced` but I m getting error.
```
Error: No chaincode ID found for business network 'ledgger'
at testIdentity.then (node_modules/composer-connector-embedded/lib/embeddedconnection.js:165:27)
at
Hello,
I m trying to run unit test cases and following `iot-perishable-network-advanced` but I m getting error.
``` Error: No chaincode ID found for business network 'ledgger'
at testIdentity.then (node_modules/composer-connector-embedded/lib/embeddedconnection.js:165:27)
at
Hello,
I m trying to run unit test cases and following `iot-perishable-network-advanced` but I m getting error.
``` Error: No chaincode ID found for business network 'Test'
at testIdentity.then (node_modules/composer-connector-embedded/lib/embeddedconnection.js:165:27)
at
Has joined the channel.
Hi everybody, i am trying to test my blockchain with node red. I've installed node-red-contrib-composer and didn't get where to set my network name, user id, user secret. There is a card name field in node setting but where to place my .card file to use it. Thanks for help.
@geoms No, rich queries are only available with CouchDB
Has joined the channel.
@kassymkhanTJ A `.card` file is a package that allows you to transport a card. Cards need to be imported into a card store to be used. Node-red will use the file system card store so you need to import the card into the card store and then you would enter the name of the card into the card name field for node red.
[ ](https://chat.hyperledger.org/channel/composer?msg=9KKpZjsmxX7RqeLhZ) @davidkel Can we use 'filter' option in the asset GET api, as a work around ?
@geoms No it uses rich queries
@davidkel @sstone1 quite the dramatic speed increase from 0.14 to 0.16
@davidkel @sstone1 quite a dramatic speed increase from 0.14 to 0.16
@davidkel @sstone1 quite a dramatic speed increase from 0.14 to 0.16. I just finished upgrading ;)
[ ](https://chat.hyperledger.org/channel/composer?msg=emckBPz7kSPsndyNz) @davidkel Ok. With 'filter' option in the GET api, we just can filter a single attribute of an asset. If we add AND, OR conditions, then it becomes a rich query.
Hi everybody, I execute the command "composer network deploy -a ./trade-network.bna -A PeerAdmin -S adminpw -c PeerAdmin@hlfv1 " ,return "Command succeeded",but then I execute the command "composer network ping -c PeerAdmin@hlfv1" returns the result "Error: Error trying to ping. Error: No business network has been specified for this connection",Does anyone know what I did wrong?
[ ](https://chat.hyperledger.org/channel/composer?msg=cWXP8rmw284iZviJB) @BruceZ - the PeerAdmin Identity has no access to the Business Network (only access to deploy). Are you using the Development Fabric created by fabric-tools? Can I suggest that you run the startFabric.sh script again to set up a new clear Fabric, and then follow the Developers tutorial which will take you through creating a Network Admin ID which will have access to the Business Network.
[ ](https://chat.hyperledger.org/channel/composer?msg=cWXP8rmw284iZviJB) @BruceZ - the PeerAdmin Identity has no access to the Business Network (only access to deploy). Are you using the Development Fabric created by fabric-tools? Can I suggest that you run the startFabric.sh script again to set up a new clear Fabric, and then follow the Developers tutorial which will take you through creating a Network Admin ID which will have access to the Business Network.
https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
Some background information on Cards and Identities:
The PeerAdmin card has 2 roles in our dev fabric server setup. It has the authority to install chaincode onto the peer and it has the authority to instantiate chaincode onto the channel.
The Network Admin card is a card that provides access to the deployed business network. The default is that the credentials you supply either by -A/-S or -A/-C when you deploy or start a business network.
@rthatcher ,i see,thank you.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=MvMH6SNWsFdndjgvz) @SauravAnand - after running the startFabric.sh script try the command `docker ps` to see if your Fabric Containers are running - there should be 4 containers running.
What tools are you using to verify the URLs? (I don't think a browser will work)
Are there any obvious errors in the logs of the Fabric Containers? Try `docker logs
[ ](https://chat.hyperledger.org/channel/composer?msg=idHZN2ahJb5zLmmys) @here
have you generated Peer Admin ?
or any admin for the business network
@jon_s yes the default one
[ ](https://chat.hyperledger.org/channel/composer?msg=t6FcJZJep3k3RspMT) @nickyromeijn great to hear :+1:
@davidkel what is *file system card store*, where it placed? sorry i am new to node red and hyperledger, where node red is going to search a card from card name field in node?
[ ](https://chat.hyperledger.org/channel/composer?msg=Zyi8PPkTNNopWcWY7) @prabhatkashyap hi there, can you run 1) `docker ps | grep dev` and 2) what is the name of your network in your `package.json project file (field `name`) for you're doing the unit test cases (I assume you did an npm install etc) - then post the output thx
[ ](https://chat.hyperledger.org/channel/composer?msg=Zyi8PPkTNNopWcWY7) @prabhatkashyap hi there, can you run 1) `docker ps | grep dev` and 2) what is the name of your network in your `package.json` project file (field `name`) for you're doing the unit test cases (I assume you did an npm install etc) - then post the output thx
@kassymkhanTJ You don't need to worry about where the file system card store is, composer has commands to import cards into the card store then you provide node red with the card name
@mahoney1
1.) I m not running any docker image/container
2.) Name of the network `"name": "Test"`
[ ](https://chat.hyperledger.org/channel/composer?msg=7xArtsPetjTykpfNf) @kassymkhanTJ hi there - for reference, its in the user's home directory eg $HOME/jbloggs/.composer - you don't need to specify that (just FYI). In node red you just specify the card eg `admin@tutorial-network` - but as @davidkel already mentioned you first need to do a `composer card import -f
@jon_s The errors you post look like they are from the peer starting where it basically polls for couchdb. Obviously after a few attempts it gives up. Does the couchdb container start ? Are there any docker logs in that container (even if it fails to start) to determine what might be causing it problems ?
@davidkel , is there a way to extract the assets using asset field/fields with leveldb ?
[ ](https://chat.hyperledger.org/channel/composer?msg=d3Nmv4xrZE5WFkaEM) @prabhatkashyap sorry I see you're running embedded. Has it worked at all ?
[ ](https://chat.hyperledger.org/channel/composer?msg=d3Nmv4xrZE5WFkaEM) @prabhatkashyap sorry I see you're running embedded. Has it worked at all previously?
when i say assets , I mean submitting transactions on any assets .
@mahoney1 It is working in samples `https://github.com/hyperledger/composer-sample-networks` but not in my own code.
Hey guys, what can be the problem when I am trying to run:
composer runtime install --card PeerAdminOrg1@mynet-blockchain-net-org1-only --businessNetworkName mynet-blockchain
⠋ Installing runtime for business network mynet-blockchain. This may take a minute...E1219 12:20:06.094384094 14405 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
E1219 12:20:06.097417745 14405 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
✖ Installing runtime for business network mynet-blockchain. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Response from attempted peer comms was an error: Error: Connect Failed
Hey guys, what can be the problem when I am trying to run:
```
composer runtime install --card PeerAdminOrg1@mynet-blockchain-net-org1-only --businessNetworkName mynet-blockchain
⠋ Installing runtime for business network mynet-blockchain. This may take a minute...E1219 12:20:06.094384094 14405 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
E1219 12:20:06.097417745 14405 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
✖ Installing runtime for business network mynet-blockchain. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Response from attempted peer comms was an error: Error: Connect Failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=Ep4Jgus4rDXqbec43) @prabhatkashyap right, so something's been changed in your unit test - are you following a tutorial for `iot-perishable-network-advanced` ?
[ ](https://chat.hyperledger.org/channel/composer?msg=9JDMjYAqAjZuAuMLu) @rthatcher Thank you so much! We didn't believe but problem was really because MAC (somewhere with mac network we think). We tried to run example at about 2 weeks and didn't know where's problem. On Ubuntu the example works well.
@mahoney1 thank you. It got resolved by using new way used in `https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js`
@mahoney1 thank you for your help. It got resolved by using new way used in `https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js`
[ ](https://chat.hyperledger.org/channel/composer?msg=KAAr9bBe72BKhXtLy) @luminance sounds like something in your connection profile info is wrong - can you post it ? Where is your business network being hosted, in a Cloud environment?
@kapilaArora There is no query capability when you use leveldb, you would have to iterate through the assets yourself
can any one tell me the model class for my requirement, my requirement is there can be one or more bank and these bank can send money to one another.
@davidkel , you mean to say , we can just get all the transactions on specific assets and then iterate through it.
@mahoney1 It's like deploying multiple org will come up with this problem.
Hi,everybody,When I execute the command "composer-rest-server" ,returns the result "Composer runtime (0.16.2) is not compatible with client (0.16.0)",Who knows how to solve this problem?
[ ](https://chat.hyperledger.org/channel/composer?msg=resvrun7bqikqWK5r) @kapilaArora for your use case, you can use events (transaction ID is emitted) if its something your application should know about and want to track - or should be able to use a REST API /GET on Historian (ie because with level DB you don't have Queries) and then (more circuitously) find what assets (eg. all the asset related transactions etc) you're looking for from the asset-related transactions you mentioned.
[ ](https://chat.hyperledger.org/channel/composer?msg=N6JtPN8mskRpbcthp) @zhoujunshan which problem? Are you referring to an earlier post on runtime install ? Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=hccEhtbq4Z6kfc9ur) @BruceZ You have a mismatch of versions (you can verify your REST server version using `composer-rest-server -v` fyi ). This could occur in fact using Composer REST server (your situation), APIs, App Generator or CLI. Suggest to uninstall the relevant modules eg `composer uninstall -g composer-rest-server` that you have installed - then `npm install -g composer-rest-server` at the same level - ensure you do so as a non-privileged user.
[ ](https://chat.hyperledger.org/channel/composer?msg=ggnxDo7NJmEWQfzfg) @rahulkannur you can check out our sample networks (and in particular the `models` directory) for examples. Sounds like in your case you want a central bank participant model then `extend` for banks that have additional/unique attributes. Example of extend / concepts (in modeling terms) is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/models/bond.cto and the modeling language is here -> https://hyperledger.github.io/composer/reference/cto_language.html Identities from each bank would be mapped to participant instances, so that transactions are invoked/signed by individuals created by each of those parties (banks)in question, that transact on the business network in question.
[ ](https://chat.hyperledger.org/channel/composer?msg=ggnxDo7NJmEWQfzfg) @rahulkannur you can check out our sample [networks](https://github.com/hyperledger/composer-sample-networks/) (and in particular the `models` directory) for examples. Sounds like in your case you want a central bank participant model then `extend` for banks that have additional/unique attributes. Example of extend / concepts (in modeling terms) is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/models/bond.cto and the modeling language is here -> https://hyperledger.github.io/composer/reference/cto_language.html Identities from each bank would be mapped to participant instances, so that transactions are invoked/signed by individuals created by each of those parties (banks)in question, that transact on the business network in question.
How can I add a relationship to an asset where the relation is either one of two participants?
[ ](https://chat.hyperledger.org/channel/composer?msg=5mKb3ksdM59CmW8Mv) @WatserAanDeHand kind of depends on what you're trying to do - can you provide more context, is this in your transaction logic / app , is it a dynamic condition you're trying to assert ? etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=5mKb3ksdM59CmW8Mv) @WatserAanDeHand kind of depends on what you're trying to do - can you provide more context, is this in your transaction logic / app , is it a dynamic condition you're trying to assert ? etc. An example of creating one is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/test/sample.js#L156
So regarding the logs of a composer chaincode container. Is it normal it keeps outputting an insane amount of log rules? It seems to be stuck in a loop. Is this normal behaviour or did i introduce this with reference loops?
The container also still seems to be eating more and more memory after time goes on
@mahoney1 I meant how to define a relation in my models.cto to a participant that can be either one of two participants types
currently I did it by adding `ownerType` and `ownerId` fields
[ ](https://chat.hyperledger.org/channel/composer?msg=NwXdSTQe2KokLSEec) @nickyromeijn might depend on the level of logging that's set -> https://hyperledger.github.io/composer/problems/diagnostics.html you can reduce it. As for the loop, would need more investigation / logs - might be a good one to put on Stack Overflow :-)
so it's not really a relation as with `-->` syntax
@mahoney1 You are probably right about the connection profile. Anyways, I have deployed the network on on-premises Kubernetes cluster. I have created a channel, joined peers and updated anchors without TLS.
I have exposed the ports 70xx to NodePort 3xxxx as you can see in the connection profile:
```
{
"name": "mynet-blockchain-net-org1-only",
"type": "hlfv1",
"mspID": "Org1MSP",
"peers": [
{
"requestURL": "grpcs://10.0.6.85:30001",
"eventURL": "grpcs://10.0.6.85:30002",
"cert": "crypto-config/peerOrganizations/org1/peers/peer0.org1/tls/ca.crt"
},
{
"requestURL": "grpcs://10.0.6.85:30003",
"eventURL": "grpcs://10.0.6.85:30004",
"cert": "crypto-config/peerOrganizations/org1/peers/peer1.org1/tls/ca.crt"
}
],
"ca": {
"url": "https://10.0.6.85:30100",
"cert": "crypto-config/peerOrganizations/org1/peers/peer0.org1/tls/ca.crt"
},
"orderers": [
{
"url" : "grpcs://10.0.6.85:32000",
"cert": "crypto-config/ordererOrganizations/orgorderer1/orderers/orderer0.orgorderer1/tls/ca.crt"
},
{
"url" : "grpcs://10.0.6.85:32001",
"cert": "crypto-config/ordererOrganizations/orgorderer1/orderers/orderer1.orgorderer1/tls/ca.crt"
}
],
"channel": "mychannel",
"timeout": 300
}
```
@mahoney1 You are probably right about the connection profile. Anyways, I have deployed the network on on-premises Kubernetes cluster. I have created a channel, joined peers and updated anchors without TLS.
I have exposed the ports 70xx to NodePort 3xxxx as you can see in the connection profile:
```
{
"name": "mynet-blockchain-net-org1-only",
"type": "hlfv1",
"mspID": "Org1MSP",
"peers": [
{
"requestURL": "grpcs://10.0.6.85:30001",
"eventURL": "grpcs://10.0.6.85:30002",
"cert": "crypto-config/peerOrganizations/org1/peers/peer0.org1/tls/ca.crt"
},
{
"requestURL": "grpcs://10.0.6.85:30003",
"eventURL": "grpcs://10.0.6.85:30004",
"cert": "crypto-config/peerOrganizations/org1/peers/peer1.org1/tls/ca.crt"
}
],
"ca": {
"url": "https://10.0.6.85:30100",
"cert": "crypto-config/peerOrganizations/org1/peers/peer0.org1/tls/ca.crt"
},
"orderers": [
{
"url" : "grpcs://10.0.6.85:32000",
"cert": "crypto-config/ordererOrganizations/orgorderer1/orderers/orderer0.orgorderer1/tls/ca.crt"
},
{
"url" : "grpcs://10.0.6.85:32001",
"cert": "crypto-config/ordererOrganizations/orgorderer1/orderers/orderer1.orgorderer1/tls/ca.crt"
}
],
"channel": "mychannel",
"timeout": 300
}
```
I am not sure what can be the issue, or what am I missing...
@mahoney1 : Basically our searches on business network data based on few filters and data range. Using Transaction ID , doesn't looks to be good solution for us even if we are able to get transaction id back as event.
@mahoney1 I'll see if i can capture anything meaningfull and post it to stack. You wouldn't happen to know if two objects referencing eachother causes weird behaviour would you?
[ ](https://chat.hyperledger.org/channel/composer?msg=JTPBLifBRyqas9jbx) @WatserAanDeHand correct - adding a type field to differentiate the type of participant is good and the created records (resource instances) are stored in one participant registry (which makes it easy to query one registry etc etc). Defining a class to `extend` from and have two separate participant types and what would be two separate resource registries, is probably not what you need (when it seems they are more less the same participants, but differentiated by a type field). Does that help?
@mahoney1 thanks, I think I'm on the right track. It's working as intended right now so if I don't run into any other issues, this should be fine
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ccWtMqdzQPbrRtii3) @nickyromeijn not aware presently ..
I'm guessing that's not the issue then :)
[ ](https://chat.hyperledger.org/channel/composer?msg=6azwuWvsmTcfvYAqE) @nickyromeijn assume you're sayiing the objects are just reading each other's resource instances or more?
No it's just that. Say for example i have Object A which references to Object B and B references to A
[ ](https://chat.hyperledger.org/channel/composer?msg=wX6DQjDuwr5gGEQBX) @nickyromeijn cool, will see what I can find out.
@mahoney1 any idea about the issue that I've asked earlier?
How do i retrieve events, using a query? I got this error when i used the event type name in the query: `Error: The query compiler does not support resources of this type`
Historian?
[ ](https://chat.hyperledger.org/channel/composer?msg=ESg8fH2LXtbydQkY7) @gen_el - Events are emitted and 'subscribed to' - there are various docs you can search for in the Hyperledger Composer documentation for events, but this doc shows an example of subscribing to an event published by the REST server
https://hyperledger.github.io/composer//integrating/publishing-events
[ ](https://chat.hyperledger.org/channel/composer?msg=5MtzbbrPuqNgb7BpL) @luminance not immediately no, but some observations 1) no "name": field for your CA server 2) verify you're using https for CA on an internal 10.x.x.x network 3) your paths to the cert files are correct (eg not relative like `../crypto-config` etc ?)
@mahoney1 I found a solution in the meantime. I have deployed the whole network without tls (peers, ca, orderers), but in the connection profiles, I was using a certificate (.crt). Obviously, that was a mistake :)
However, thank you for the effort. I appreciate it a lot.
[ ](https://chat.hyperledger.org/channel/composer?msg=cpu4yCcLzkczXLxsF) @rthatcher Yeah. I get that part. However, i wanted to provide an api to query fabric for the events emitted by a transaction.
@rthatcher `SELECT org.hyperledger.composer.system.HistorianRecord WHERE (transactionType == '
@gen_el it sounds like you want to store the events emitted, You can choose to store those (and make a REST API available) outside of Composer - or - as a Listing registry in Composer, ie modeled in your business network as a Listing (so as to query the events with a txn id stored and available as a REST API query endpoint. Its up to you, and depends on volumes and other factors that you will know more about. Does that help?
@gen_el it sounds like you want to store the events emitted, You can choose to store those (and make a REST API available) outside of Composer - or - as a Listing registry in Composer, ie modeled in your business network as a Listing (so as to query the events with a txn id stored and available as a REST API query endpoint. Events are usually for business related events (ie transactions that reach important milestones etc and not usually for every single trxn etc etc) Its up to you, and depends on volumes and other factors that you will know more about. Does that help?
[ ](https://chat.hyperledger.org/channel/composer?msg=ECji22vPzx5DXevXL) @mahoney1 Yeah. Thanks. It is for important transactions, not all. I'm leaning towards the "listing registry" approach. Thanks @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=ECji22vPzx5DXevXL) @mahoney1 Yeah. Thanks. It is for important transactions, not all. I'm leaning towards the "listing registry" approach for now. Thanks @rthatcher
can composer and fabric be used to make an chat application? like allowing audio and video calls?
can composer and fabric be used to make an chat application? like allowing audio and video calls? I mean to store the audio or video
can composer and fabric be used to make an chat application? like allowing audio and video calls? I mean to store the audio or video.
can composer and fabric be used to make a chat application? like allowing audio and video calls? I mean to store the audio or video.
[ ](https://chat.hyperledger.org/channel/composer?msg=wC9WgAbnvXPydzy5b) @mmick You can use String and base64 encode it - as a field in an Asset for example, and have responsibility for decoding later etc etc But would you want to store it on the blockchain?
You decide of course - as opposed to creating/saving a hash and link out of the chain to a URL. If you wanted to you could see an SO thread here https://stackoverflow.com/questions/21878404/how-can-i-convert-mp3-file-to-base64-encoded-string/23665155
@mahoney1 i am implementing a telehealth system using fabric. It includes chat b/w doctor and patient and all the consultation is to stored to resolve any future claims involved in telehealth.
[ ](https://chat.hyperledger.org/channel/composer?msg=DzyBK98d99EY5CLQT) @mmick I see. The only thing is, the encoded string will also need to be transmitted to the other peers participating in consensus and written to their copy of the master ledger. But storing a cryptographic hash of it may be more efficient.
base6
Has joined the channel.
then it will have another database to store those?
Can I retrieve the Asset from an Relationship object? Is there a method or the only way to get the id from the Relationship and then retrieve the asset?
Can I retrieve the Asset from an Relationship object? Is there a method for that or is the only way to get the id from the Relationship and then retrieve the asset?
[ ](https://chat.hyperledger.org/channel/composer?msg=33wzuANxDzwA82z7T) @lucasdf Retrieve the asset using `.resolve(asset.$identifier)`
[ ](https://chat.hyperledger.org/channel/composer?msg=33wzuANxDzwA82z7T) @lucasdf Retrieve the parent resource using `.resolve(resource.$identifier)`. Any relationship within the resource is resolved on get. Note this is not available in the runtime api (within transaction functions).
[ ](https://chat.hyperledger.org/channel/composer?msg=33wzuANxDzwA82z7T) @lucasdf Retrieve the parent resource using `.resolve(resource.$identifier)`. Any relationship within the resource is resolved on get. Note: this is not available in the runtime api (within transaction functions).
[ ](https://chat.hyperledger.org/channel/composer?msg=33wzuANxDzwA82z7T) @lucasdf Retrieve the parent resource using `resourceRegistry.resolve(resource.$identifier)`. Any relationship within the resource is resolved on get. Note: this is not available in the runtime api (within transaction functions).
@gen_el I got an asset using the registry. This asset has a relationship to another asset. I thought I could just access the asset which the relationship points to, but it seem I have to get the asset's ID from the relationship object and then retrieve it using the registry? All of that is inside a transaction.
[ ](https://chat.hyperledger.org/channel/composer?msg=WZxELCCazaiA46wvM) @lucasdf So inside a transaction, thats what you are going to have to do.
[ ](https://chat.hyperledger.org/channel/composer?msg=WZxELCCazaiA46wvM) @lucasdf So inside a transaction, thats what you are going to have to do. Yes.
@gen_el I see. well, thanks!
Has joined the channel.
Is there any documentation for Composer’s performance or data of this kind of matter?
I'm deploying hyperledger fabric composer business network in 2 machines. So what changes i need to do in docker-compose.yaml and connection.json files?
Hi All
Can we use java script with angular forms ?
seems whenever i am using formControlName tag in angular html, Java script part is not working
Any suggestions ?
whats is the use of creating assets if it is accessible by block chain users anyone can modify it?? can we only create transactions and use assets to point to that transaction ??? why there is need to store data in assets???
I am trying to add a asset using a transaction in which I am trying to relate one of the asset's fields with participant reference. But when I m trying to get name of participant using asset, it is showing me `undefined`
```asset TestAsset identified by id {
o String id
--> TestPart part
}
participant TestPart identified by id {
o String id
o String name
}
transaction AddTestAsset {
o String aId
o String pId
}
```
Logic.js
```function addTestAsset(tx) {
var factory = getFactory();
var NS = 'org.acme';
var newAsset = factory.newResource(NAMESPACE, 'TestAsset', tx.aId);
newAsset.part = factory.newRelationship(NAMESPACE, 'TestPart', tx.pId);
console.log(newAsset.part.name); //Showing undefined
return getAssetRegistry(NAMESPACE + '.TestAsset')
.then(function (aReg) {
return aReg.add(newAsset);
});
```
I am trying to add a asset using a transaction in which I am trying to relate one of the asset's fields with participant reference. But when I m trying to get name of participant using asset, it is showing me `undefined`
```asset TestAsset identified by id {
o String id
--> TestPart part
}
participant TestPart identified by id {
o String id
o String name
}
transaction AddTestAsset {
o String aId
o String pId
}
```
Logic.js
```function addTestAsset(tx) {
var factory = getFactory();
var NAMESPACE = 'org.acme';
var newAsset = factory.newResource(NAMESPACE, 'TestAsset', tx.aId);
newAsset.part = factory.newRelationship(NAMESPACE, 'TestPart', tx.pId);
console.log(newAsset.part.name); //Showing undefined
return getAssetRegistry(NAMESPACE + '.TestAsset')
.then(function (aReg) {
return aReg.add(newAsset);
});
```
I am trying to add a asset using a transaction in which I am trying to relate one of the asset's fields with participant reference. But when I m trying to get name of participant using asset, it is showing me `undefined`
Participant is already exist. I don't want to create a new participant using this transaction only asset.
```asset TestAsset identified by id {
o String id
--> TestPart part
}
participant TestPart identified by id {
o String id
o String name
}
transaction AddTestAsset {
o String aId
o String pId
}
```
Logic.js
```function addTestAsset(tx) {
var factory = getFactory();
var NAMESPACE = 'org.acme';
var newAsset = factory.newResource(NAMESPACE, 'TestAsset', tx.aId);
newAsset.part = factory.newRelationship(NAMESPACE, 'TestPart', tx.pId);
console.log(newAsset.part.name); //Showing undefined
return getAssetRegistry(NAMESPACE + '.TestAsset')
.then(function (aReg) {
return aReg.add(newAsset);
});
```
@here ^^
[ ](https://chat.hyperledger.org/channel/composer?msg=FJiK6uyCa9PhwhPJu) @rthatcher Just to add more context, I have used mac os migration assistance to switch to new laptop. And I have downloaded all the docker images fresh but did not work. In my previous laptop it is still working.
[ ](https://chat.hyperledger.org/channel/composer?msg=EKrv7xQsDrsPdX48x) @mayur.relekar I am starting it through the scripts given in the fabric-tools folder
Has joined the channel.
hi all,
i tried setting up the fabric env using composer
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
```
root@ip-172-31-18-10:/usr/hyperledger/fabric/fabric-samples/test-network# composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
Starting business network from archive: tutorial-network@0.0.1.bna
Error: Archive file tutorial-network@0.0.1.bna does not exist.
Command failed
```
getting this error at step 17
Has joined the channel.
@Varun2887 You can look at this. How to get tutorial-network@0.0.1.bna .https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
[ ](https://chat.hyperledger.org/channel/composer?msg=pxNcTB3kN6Ncua3vA) @prabhatkashyap There is another way to access the participant in the transaction function. If `tx.pId` is a relationship to the participant, then you can do: ```var testParticipant = tx.pId
testParticipant.name //will return the name.``` . Relationships in the transaction models are resolved automatically.
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ncoR5Je7yPPKYdsQu) @gen_el Hi
`tx.pId` is not the relation but the string. I m trying to relate asset with participant using participant's id.
hello, i am unable to get back the access token back via the company proxies to the local internal network, can somebody tell me the work around for the same. i have used passport-github2 as well but that also doesnt work in my case.
@zhoujunshan does composer mode supports installation on multiple servers, i mean where our nodes are hosted on different machines?
Hi I am issuing identity and later when i disconnect and reconnect later the card not working
(node:4477) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: dealer4@pwc.com)
warning.js:18
(node:4477) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: dealer4@domain.com)
warning.js:18
i am not able to reuse the issued identity
it was working when i issued
at what case the id becomes invalid
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: dealer2@domain.com)
same case when using in composer playground
if somebody has faced similar issue please reply at the earliest. sorry i forgot to mention, i am facing this issue while trying to authenticate the REST APIs. the no. of users being authorized on the Oauth application on github is available. has anyone else faced this issue? @jon_s @rthatcher can you help?
@Varun2887 I don't know, because I made a mistake in this step, too. But it shows "time out". Some people say the reason is the latest version of fabric.
have anyone deployed fabric-composer business network on 2 different machines?
@prabvi01 I want to know the same
@Varun2887 are you using fabric-sample/first network ?
[ ](https://chat.hyperledger.org/channel/composer?msg=pxNcTB3kN6Ncua3vA) @prabhatkashyap your Test part is a relation so try this
`asset TestAsset identified by id {
o String id
--> TestPart part
}
participant TestPart identified by Pid {
o String Pid
o String name
}
transaction AddTestAsset {
o String aId
--> TestPart pId
}`
[ ](https://chat.hyperledger.org/channel/composer?msg=pxNcTB3kN6Ncua3vA) @prabhatkashyap your Test part is a relation so try this
`asset TestAsset identified by id {
o String id
--> TestPart part
}
participant TestPart identified by Pid {
o String Pid
o String name
}
transaction AddTestAsset {
o String aId
--> TestPart pId
}
Logic.js
/**
* Add Test Asset
* @param {org.acme.AddTestAsset} details - Asset details
* @transaction
*/
function addAsset(details){
return getAssetRegistry('org.acme.TestAsset')
.then(function (TestAssetRegistry){
var factory =getFactory();
var testasset = factory.newResource('org.acme','TestAsset',details.aId);
testasset.part=details.pId
return TestAssetRegistry.add(testasset);
})
}
[ ](https://chat.hyperledger.org/channel/composer?msg=pxNcTB3kN6Ncua3vA) @prabhatkashyap your Test part is a relation so try this
`asset TestAsset identified by id {
o String id
--> TestPart part
}
participant TestPart identified by Pid {
o String Pid
o String name
}
transaction AddTestAsset {
o String aId
--> TestPart pId
}`
Logic.js
/**
* Add Test Asset
* @param {org.acme.AddTestAsset} details - Asset details
* @transaction
*/
function addAsset(details){
return getAssetRegistry('org.acme.TestAsset')
.then(function (TestAssetRegistry){
var factory =getFactory();
var testasset = factory.newResource('org.acme','TestAsset',details.aId);
testasset.part=details.pId
return TestAssetRegistry.add(testasset);
})
.catch(function (error){
throw error
});
}
[ ](https://chat.hyperledger.org/channel/composer?msg=pxNcTB3kN6Ncua3vA) @prabhatkashyap your Test part is a relation so try this
`asset TestAsset identified by id {
o String id
--> TestPart part
}
participant TestPart identified by Pid {
o String Pid
o String name
}
transaction AddTestAsset {
o String aId
--> TestPart pId
}
Logic.js
/**
* Add Test Asset
* @param {org.acme.AddTestAsset} details - Asset details
* @transaction
*/
function addAsset(details){
return getAssetRegistry('org.acme.TestAsset')
.then(function (TestAssetRegistry){
var factory =getFactory();
var testasset = factory.newResource('org.acme','TestAsset',details.aId);
testasset.part=details.pId
return TestAssetRegistry.add(testasset);
})
.catch(function (error){
throw error
});
}
[ ](https://chat.hyperledger.org/channel/composer?msg=Ap7g7o7TpxsT37Bhd) @prabvi01 - did you try the Multi-Org Tutorial on a single machine (requires 8GB RAM dedicated to the task)? https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
To set up a Fabric on Multiple Machines you will need to refer to the Fabric documentation and plan your network. After you have your Fabric configured and running you will be able to create a connection.json
@rthatcher yes i have deployed multi org on a single machine and it is working fine. Now same thing i have to deploy on 2 different machine. Org1 on one machine and org2 on other machine. For that what changes i have to do in docker-compose.yaml and connection.json files?
@prabvi01 i am trying with balance transfer
since i want use channel concept as well
[ ](https://chat.hyperledger.org/channel/composer?msg=NrMt6v6dfiWzGLMFt) @rthatcher
Thanks for helping,
I have few questions:
1. So by using `newAsset.part = factory.newRelationship(NAMESPACE, 'TestPart', tx.pId);` I am relating new asset with already existing participant?
2. If yes how will I able to resolve the relationship?
3. I am able to relate my `newAsset` with a pariticipant that don't exists. Is there any way to restrict it?
[ ](https://chat.hyperledger.org/channel/composer?msg=kMy2dRyHoi7NmMEKQ) @Sneha Thanks for helping with this but is there any way I can create relation with participant's id.
[ ](https://chat.hyperledger.org/channel/composer?msg=kMy2dRyHoi7NmMEKQ) @Sneha Thanks for helping with this :) but is there any way I can create relation with participant's id.
someone suggested using cellos but its not production ready
so confused now
@Varun2887 i'm using first-network coz i have my own bna file so i want to deploy that network but first network is built for multi org on single machine . so i need to change configuration in docker-compose. somewhere i'm missing something thats why getting error
but firsnt n/w doesnt have bna files
[ ](https://chat.hyperledger.org/channel/composer?msg=pTcXKrH9EBazKrnkz) @prabvi01 - there is no Composer tutorial for setting this up on 2 machines. You will need to refer to the Hyperledger Fabric documentation to build your Fabric, and decide how your multi-machine multi-org Docker containers will be networked.
http://hyperledger-fabric.readthedocs.io/en/latest/blockchain.html
[ ](https://chat.hyperledger.org/channel/composer?msg=pTcXKrH9EBazKrnkz) @prabvi01 - there is no Composer tutorial for setting this up on 2 machines. You will need to refer to the Hyperledger Fabric documentation to build your Fabric, and decide how your multi-machine multi-org Docker containers will be networked.
http://hyperledger-fabric.readthedocs.io/en/latest/blockchain.html
Kubernetes may be useful for the Docker networking
[ ](https://chat.hyperledger.org/channel/composer?msg=pxNcTB3kN6Ncua3vA) here Please help me with this
[ ](https://chat.hyperledger.org/channel/composer?msg=pxNcTB3kN6Ncua3vA) @rthatcher here Please help me with this
[ ](https://chat.hyperledger.org/channel/composer?msg=pxNcTB3kN6Ncua3vA) @here Please help me with this
@rthatcher ok i'll check that
@Varun2887 yes first-network doesn't have bna files but i have created .bna file using local playground and trying to deploy it but i'm using configuration of first-network coz i have deployed my .bna file as a multi org in single machine using first-network, so same folder i'm using in 2 machines to deploy multi org multi machines
whats is the use of creating assets if it is accessible by block chain users anyone can modify it ?? why there is need to store data in assets?? when transaction is executed which is pointing to asset and we can still modify the asset after transaction is submitted thus making information inconsistent and vulnerable how to avoid this ?????
i have fixed my issues thanks to https://github.com/hyperledger/composer/releases documentation
:)
issue -> import -> connect -> ping -> export
whether nested query is possible in composer query language ?? i want to query data using proposal id i am creating contract having contractid and using contract i am creating shipment having shipment id so how do i get shipment details from proposal id ???
transaction TradeProposal {
o String transactionProposalId
--> Trader seller
--> Trader buyer
o ProductReq[] products
o ProposalState proposalState
o DateTime deliveryDate
o DateTime responseTime
o DateTime startTime
} asset Contract identified by contractId {
o String contractId
o String proposalId
--> Trader seller
--> Shipper shipper optional
--> Trader buyer
o ProductReq[] productReq
o DateTime arrivalDateTime
}asset Shipment identified by shipmentId {
o String shipmentId
o ShipmentStatus status
o Long totalAmount
o Long paidAmount
o Long shippingCost
--> Contract contract
}
Hi, After starting the business network by "composer network start " command while pinging the network I get [[{"code":400,"message":"Authorization failure"}]]. When I see the logs it says ""Password mismatch: crypto/bcrypt: hashedPassword is not the hash of the given password""
what should I use as an Enrollment Secret while starting the network?
Hi, After starting the business network by "composer network start " command while pinging the network I get [[{"code":400,"message":"Authorization failure"}]]. When I see the logs it says ""Password mismatch: crypto/bcrypt: hashedPassword is not the hash of the given password""
what should I use as an Enrollment Secret?
[ ](https://chat.hyperledger.org/channel/composer?msg=Ps759Pp3JtPvPGMxr) @Sneha if you are using all default settings you should use `-A admin -S adminpw`
[ ](https://chat.hyperledger.org/channel/composer?msg=mymMiHTw8T48fiHYc) @lucasdf How can I change these settings to my own enrollement ID and secret
[ ](https://chat.hyperledger.org/channel/composer?msg=mymMiHTw8T48fiHYc) @lucasdf How can I change these settings
[ ](https://chat.hyperledger.org/channel/composer?msg=cEr8EMPtfu22TMZuC) @Sneha It seems that the admin user is defined in the Fabric CA. I think it is possible to change the default password by altering some env variables when starting the CA server.
[ ](https://chat.hyperledger.org/channel/composer?msg=cEr8EMPtfu22TMZuC) @Sneha It seems that these settings are defined in the Fabric CA. I think it is possible to change the default password by altering some env variables when starting the CA server.
[ ](https://chat.hyperledger.org/channel/composer?msg=9WTqurXnHuEhd84d5) @lucasdf Okay I will look it up . Please give any reference links if possible. Thanks for the response
I'm doing a post request to the REST api server and am getting `Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration`
I tried JSON stringifying the relation object but that doesnt work either
how do I do a POST request to a transaction?
Is there any composer sample that checks the code coverage in the tests? Is it even possible to check the code coverage of the transactions?
Is there any composer sample that checks the code coverage? Is it possible to check the code coverage of the transactions?
so, we can create a relationship to an asset that does not exist and then store it in the blockchain. Is it by design?
Using common API is possible to get the IdCard from a bind identity? I'm trying to make test cases to my business network for different kind of participants
In rest API, when I post an identity issue the card can be downloaded
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=dEG4pZ8nrKvDusjCD) @yogesh.fulsunge not presently. You could use REST filters on shipment asset and resolving Contract (and proposalId) using that eg. using `{"include":"resolve"}` and matching on the proposal id
[ ](https://chat.hyperledger.org/channel/composer?msg=XoNaSt4wPgfyY9xCw) @WatserAanDeHand - There has been a change in v0.16.0 where the example value for an asset with a relationship suggests an Object e.g.
```{
"$class": "org.acme.biznet.Commodity",
"tradingSymbol": "string",
"description": "string",
"mainExchange": "string",
"quantity": 0,
"owner": {}
}```
However the last item in the JSON should be something like ` "owner" : "resource:org.acme.biznet.Trader#t03" `
It is a little confusing, and we are looking into it.
[ ](https://chat.hyperledger.org/channel/composer?msg=XoNaSt4wPgfyY9xCw) @WatserAanDeHand - There has been a change since v0.16.0 where the example value for an asset with a relationship suggests an Object by using `{}` e.g.
```{
"$class": "org.acme.biznet.Commodity",
"tradingSymbol": "string",
"description": "string",
"mainExchange": "string",
"quantity": 0,
"owner": {}
}```
However the last item in the JSON should be something like ` "owner" : "resource:org.acme.biznet.Trader#t03" `
It is a little confusing, and we are looking into it.
[ ](https://chat.hyperledger.org/channel/composer?msg=meRaESkZxwdiqHbkD) @vitorduarte if you've added the identities to the wallet / imported the cards then you could use something like ```BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection; let businessNetworkConnection = new BusinessNetworkConnection(); return businessNetworkConnection.connect('lenny@digitalPropertyNetwork') .then(() => { .........blah blah do something ; } return businessNetworkConnection.disconnect();
[ ](https://chat.hyperledger.org/channel/composer?msg=gRJ5wRXkhezNxiS6K) @lucasdf our samples don't, no. We've used `istanbul` to generate code coverage reports for Composer modules. Once enabled, you'll see the coverage directory available after running `npm test`- see here for more -> https://www.npmjs.com/package/learn-istanbul
@mahoney hi, is there dedicated API which resolves all relationships of a resource or it needs to be done manually?
@mahoney1 hi, is there dedicated API which resolves all relationships of a resource or it needs to be done manually?
@mahoney1 or is there an option to say that a query should return completely resolved resources
@uber.twin you have create Realationship function which will create relationship with namespace and id combination.
[ ](https://chat.hyperledger.org/channel/composer?msg=CdFriwBQiefqfBsvk) @uber.twin `resourceRegistry.resolve()` anywhere else but transaction functions.
[ ](https://chat.hyperledger.org/channel/composer?msg=CdFriwBQiefqfBsvk) @uber.twin `resourceRegistry.resolve(resource.$identifier)` anywhere else but transaction functions.
[ ](https://chat.hyperledger.org/channel/composer?msg=r2P4iSaxtWP7P6ec8) @prabhatkashyap - with you `console.log(newAsset.part.name);` statement the `name` element is undefined as the participant relationship has not been resolved. if you use `console.log(newAsset.part);` you will see that it is a Relationship Object, not a Participant.
If anyone is interested I've just been updating my vagrant setup for Composer -> https://github.com/jt-nti/composer-quickstart-vagrant It should now do all the Composer installs since the one script install option is being dropped from the docs. Need to write some instructions for it, but let me know if you try it/have any comments/suggestions
I have a file which contains data in JSON format for example, `{
'attributes': {
'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],
'public': {}
},
'uris': ['calvinip://localhost:5000'],
'control_uris': ['http://localhost:5001']
}`
Hello, I need to put JSON data as an asset field..for example, *`{
'attributes': {
'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],
'public': {}
},
'uris': ['calvinip://localhost:5000'],
'control_uris': ['http://localhost:5001']
}`* .. How can I assign thie JSON data to asset field in model file in composer?
Hello, I need to put JSON data as an asset field..for example, ```{
'attributes': {
'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],
'public': {}
},
'uris': ['calvinip://localhost:5000'],
'control_uris': ['http://localhost:5001']
}``` How can I assign thie JSON data to asset field in model file in composer?
Hello, I need to put JSON data as an asset field..for example, ```{
'attributes': {
'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],
'public': {}
},
'uris': ['calvinip://localhost:5000'],
'control_uris': ['http://localhost:5001']
}``` How can I assign this JSON data to asset field in model file in composer?
Hello, I need to put JSON data as an asset field..for example, data like this, ```{
'attributes': {
'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],
'public': {}
},
'uris': ['calvinip://localhost:5000'],
'control_uris': ['http://localhost:5001']
}``` How can I assign this JSON data to an asset field ```asset Actor identified by {
o String uuidActor
o String actorName
o String actorType
o Integer[] inports
o Integer[] outports
--> Node node
}``` in model file in composer?
Hello, I need to put JSON data as an asset field..for example, data like this, ```{
'attributes': {
'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],
'public': {}
},
'uris': ['calvinip://localhost:5000'],
'control_uris': ['http://localhost:5001']
}``` How can I assign this JSON data to an asset field ```asset Actor identified by {
o String uuidActor
o String actorName
o String actorType
o Integer[] inports
o Integer[] outports
--> Node node
}``` in model file in composer?
Hello, I need to put JSON data as an asset field..for example, data like this, ```{
'attributes': {
'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],
'public': {}
},
'uris': ['calvinip://localhost:5000'],
'control_uris': ['http://localhost:5001']
}``` How can I assign this JSON data to an asset field, ```asset Actor identified by {
o String uuidActor
o String actorName
o String actorType
o Integer[] inports
o Integer[] outports
--> Node node
}``` in model file in composer?
Hello, I need to put JSON data as an asset field..for example, data like this, ```{
'attributes': {
'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],
'public': {}
},
'uris': ['calvinip://localhost:5000'],
'control_uris': ['http://localhost:5001']
}``` How can I assign this JSON data to an asset field, ````asset Actor identified by {
o String uuidActor
o String actorName
o String actorType
o Integer[] inports
o Integer[] outports
--> Node node
}```` in model file in composer?
Hello, I need to put JSON data as an asset field..for example, data like this, ```{
'attributes': {
'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],
'public': {}
},
'uris': ['calvinip://localhost:5000'],
'control_uris': ['http://localhost:5001']
}``` How can I assign this JSON data to an asset field in model file in composer? ```asset Actor identified by {
o String uuidActor
o String actorName
o String actorType
o Integer[] inports
o Integer[] outports
--> Node node
}```
Hello, I need to put JSON data as an asset field..for example, data like this, ```{
'attributes': {
'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],
'public': {}
},
'uris': ['calvinip://localhost:5000'],
'control_uris': ['http://localhost:5001']
}``` How can I assign this JSON data to an asset field in model file in composer? asset Actor identified by uuidActor ``` {
o String uuidActor
o String actorName
o String actorType
o Integer[] inports
o Integer[] outports
--> Node node
} ```
Hello, I need to put JSON data as an asset field..for example, data like this, ```{
'attributes': {
'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],
'public': {}
},
'uris': ['calvinip://localhost:5000'],
'control_uris': ['http://localhost:5001']
}``` How can I assign this JSON data to an asset field in model file in composer? For example, ```*asset Actor identified by uuidActor {
o String uuidActor
o String actorName
o String actorType
o Integer[] inports
o Integer[] outports
--> Node node
}*```
Hello, I need to put JSON data as an asset field..for example, data like this,
```
{
'attributes': {
'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],
'public': {}
},
'uris': ['calvinip://localhost:5000'],
'control_uris': ['http://localhost:5001']
}
```How can I assign this JSON data to an asset field in model file in composer? For example,```asset Actor identified by uuidActor {
o String uuidActor
o String actorName
o String actorType
o Integer[] inports
o Integer[] outports
--> Node node
}```
Hello, I need to put JSON data as an asset field..for example, data like this,
```
{
'attributes': {
'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],
'public': {}
},
'uris': ['calvinip://localhost:5000'],
'control_uris': ['http://localhost:5001']
}
```How can I assign this JSON data to an asset field in model file in composer?
Trying to create a multi-peer composer install. I have a 2 org each with 4 peer Fabric install. Is there any good resource or instruction to get composer to run on top of that fabric install?
[ ](https://chat.hyperledger.org/channel/composer?msg=t9XLcFBX7Ce2WZo54) @AkshayJindal certainly possible - try it in Playground eg. ```{
"$class": "org.acme.sample.mydomain",
"netId": "net1",
"resource": "'attributes': {, 'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],'public': {}},'uris': ['calvinip://localhost:5000'],'control_uris': ['http://localhost:5001']}"
} ``` it obviously has the newlines removed.
[ ](https://chat.hyperledger.org/channel/composer?msg=t9XLcFBX7Ce2WZo54) @AkshayJindal certainly possible - try it in Playground eg. ```{
"$class": "org.acme.sample.myAsset",
"netId": "net1",
"resourceAttr": "'attributes': {, 'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],'public': {}},'uris': ['calvinip://localhost:5000'],'control_uris': ['http://localhost:5001']}"
} ``` it obviously has the newlines removed
[ ](https://chat.hyperledger.org/channel/composer?msg=t9XLcFBX7Ce2WZo54) @AkshayJindal certainly possible - try it in Playground eg. ```{
"$class": "org.acme.sample.myAsset",
"netId": "net1",
"resourceAttr": "'attributes': {, 'indexed_public': ['/node/attribute/address/DE/NRW/Aachen/samplestreet/100/1/1'],'public': {}},'uris': ['calvinip://localhost:5000'],'control_uris': ['http://localhost:5001']}"
} ``` it obviously has the newlines removed (and where `resourceAttr` is a String )
[ ](https://chat.hyperledger.org/channel/composer?msg=6XxHFeFd9hRuqu6Pb) @mastercpt yes - there's a tutorial for that exact configuration, here -> https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html (it uses the Fabric BYFN sample)
Perfect. Thanks! That looks like exactly what I need
Hello, does anyone here have experience setting up authentication for the REST server with a passport strategy other than github?
Has joined the channel.
Hello, Can`t we use composer if the project involves commercialization and expansion of the network of organizers and participants?
Has anyone tried to run composer network in more than one peer?
how to retrieve updated assets from historian can anyone provide examples???
Hi, a small doubt on queries. Is it possible to get only those transactions where a particular participant is involved where participants are identified by email id. It says in the documentation that only assets and participants can be used for querying. SO could someone help me with this
[ ](https://chat.hyperledger.org/channel/composer?msg=NrMt6v6dfiWzGLMFt) @rthatcher
Thank you for helping.
I have few more questions:
1. So by using `newAsset.part = factory.newRelationship(NAMESPACE, 'TestPart', tx.pId);` I am relating new asset with already existing participant?
2. If yes how will I able to resolve the relationship?
3. I am able to relate my `newAsset` with a participant that don't exists. Is there any way to restrict it?
[ ](https://chat.hyperledger.org/channel/composer?msg=NrMt6v6dfiWzGLMFt) @rthatcher
Thank you for helping.
I have few more questions:
1. So by using `newAsset.part = factory.newRelationship(NAMESPACE, 'TestPart', tx.pId);` I am relating new asset with already existing participant?
2. If yes how will I able to resolve the relationship?
3. I am able to relate my `newAsset` with a participant that don't exists. Is there any way to restrict it?
Has joined the channel.
Does composer currently support:
- Calling transactions across channels?
- Calling fabric chaincode?
Or is it planned in an upcoming version?
[ ](https://chat.hyperledger.org/channel/composer?msg=rLScAgWbFnyexNdNj) @gen_el why not TPF? the '$identifier' doesn't look like official API:)
[ ](https://chat.hyperledger.org/channel/composer?msg=rLScAgWbFnyexNdNj) @gen_el why not TPF? is the '$identifier' field official API?
Hi All,
I need help with permissions:
After completing the multi-orgs tuto, I want to use the following card to deploy my own network:
```
$ composer card list -n PeerAdmin@byfn-network-org1-only
userName: PeerAdmin
description:
businessNetworkName:
roles:
- PeerAdmin
- ChannelAdmin
connectionProfile:
name: byfn-network-org1-only
type: hlfv1
channel: mychannel
secretSet: No secret set
credentialsSet: Credentials set
Command succeeded
```
In the multi-orgs tuto, the ACL leaves the door pretty open with the following def in `permissions.acl`:
```
rule SystemACL {
description: "System ACL to permit all access"
participant: "ANY"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
I would like to replace: ` participant: "ANY"` in the previous, with the participant corresponding to PeerAdmin in the above card. How do I designate that participant?
I guess I could associate a participant to each role defined in the card. How do I designate those roles?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZwZhFHQwinbg2NGXb) @varun-raj - There is a tutorial for Multi-peer, Multi-Org
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
The tutorial is intended to run on a single machine, so it is a demonstration of some of the Composer aspects rather than a real world scenario - but it is a good exercise! You will need 8GB RAM dedicated to the task as it runs many Docker Containers.
[ ](https://chat.hyperledger.org/channel/composer?msg=CXTh3K2XSAfqjnHGh) @rthatcher It does not seem to use that much memory:
```CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
777e95a3e610 dev-peer1.org1.example.com-tutorial-network-0.16.0 0.00% 33.21MiB / 1.955GiB 1.66% 66.4kB / 80kB 0B / 0B 5
1fcb89ee0087 dev-peer0.org1.example.com-tutorial-network-0.16.0 0.00% 35.18MiB / 1.955GiB 1.76% 66.4kB / 79.7kB 16.4kB / 0B 6
7e06a23f8983 dev-peer1.org2.example.com-mycc-1.0 0.00% 5.035MiB / 1.955GiB 0.25% 7.95kB / 2.33kB 0B / 0B 4
bdcb3388146c dev-peer0.org1.example.com-mycc-1.0 0.00% 3.141MiB / 1.955GiB 0.16% 10.1kB / 3.25kB 0B / 0B 4
ed4ee6970f2b dev-peer0.org2.example.com-mycc-1.0 0.00% 3.062MiB / 1.955GiB 0.15% 8.44kB / 2.52kB 0B / 0B 4
7d9d98c048e1 peer0.org2.example.com 1.07% 29.66MiB / 1.955GiB 1.48% 4.72MB / 1.42MB 4.1kB / 209kB 8
c8067ed79213 peer1.org1.example.com 1.01% 38.39MiB / 1.955GiB 1.92% 36.8MB / 30.1MB 4.1kB / 209kB 8
93ac69d60925 peer1.org2.example.com 1.09% 34.64MiB / 1.955GiB 1.73% 31.8MB / 28.4MB 4.1kB / 209kB 8
264450e935c3 peer0.org1.example.com 1.08% 40.1MiB / 1.955GiB 2.00% 36.6MB / 30.9MB 4.1kB / 209kB 8
8f927ba14796 couchdb2 0.33% 43.47MiB / 1.955GiB 2.17% 139kB / 141kB 61.4kB / 1.19MB 22
eb8ac69b7ce7 couchdb1 0.36% 36.34MiB / 1.955GiB 1.81% 173kB / 178kB 4.1kB / 1.16MB 22
88975498a85f couchdb3 0.44% 35MiB / 1.955GiB 1.75% 142kB / 145kB 102kB / 1.16MB 22
65d65c9cdf7b ca_peerOrg2 0.00% 4.504MiB / 1.955GiB 0.22% 6.19kB / 4.16kB 0B / 311kB 5
9f98305a2c19 couchdb0 0.41% 59.26MiB / 1.955GiB 2.96% 176kB / 186kB 16.4kB / 987kB 22
e119149fa43f orderer.example.com 0.03% 8.25MiB / 1.955GiB 0.41% 425kB / 1.05MB 201kB / 205kB 5
003e17187270 ca_peerOrg1 0.00% 4.473MiB / 1.955GiB 0.22% 6.19kB / 4.16kB 0B / 311kB 5
```
By the way, I have a question: where does the 0.16.0 come from in the dev-peer container name?
I am asking, bcause when I try to fdeploy my own network I get the following error:
```
$ composer network start -c PeerAdmin@byfn-network-org1-only -a safer-monitor\@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
Starting business network from archive: safer-monitor@0.0.1.bna
Business network definition:
Identifier: safer-monitor@0.0.1
Description: Safer Network prototype based on HLF
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (safer-monitor:0.16.0)-open /var/hyperledger/production/chaincodes/safer-monitor.0.16.0: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (safer-monitor:0.16.0)-open /var/hyperledger/production/chaincodes/safer-monitor.0.16.0: no such file or directory)
Command failed
```
I am asking, bcause when I try to fdeploy my own network I get the following error: That error shows 0.16.0 but my bna has version 0.0.1
```
$ composer network start -c PeerAdmin@byfn-network-org1-only -a safer-monitor\@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
Starting business network from archive: safer-monitor@0.0.1.bna
Business network definition:
Identifier: safer-monitor@0.0.1
Description: Safer Network prototype based on HLF
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (safer-monitor:0.16.0)-open /var/hyperledger/production/chaincodes/safer-monitor.0.16.0: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (safer-monitor:0.16.0)-open /var/hyperledger/production/chaincodes/safer-monitor.0.16.0: no such file or directory)
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=78EnpdmQMwdsMgg6r) @prabhatkashyap - you are correct, the relationship can be created for a Participant that does not exist. The design here is that you may not have access to 'see' the Participant through ACL restrictions, so you are allowed to create the relationship.
You could write code to check the presence of the Participant with `getParticipantRegistry`
[ ](https://chat.hyperledger.org/channel/composer?msg=wtTLwchxNwSKpcShh) @odalle - The PeerAdmin card has 2 roles in our dev fabric server setup. It has the authority to install chaincode onto the peer and it has the authority to instantiate chaincode onto the channel. The PeerAdmin identity does not have any access to the Business Network itself and so would not feature in the ACL.
If you look at the release notes for v0.14.0 (https://github.com/hyperledger/composer/releases/tag/v0.14.0) there is a description of the `org.hyperledger.composer.system.NetworkAdmin` which in the case of Multi-Org tutorial is Alice and Bob.
0.16.0 is your version of Composer not your Business Network
(We have seen a number of instances of the Multi-Org tutorial hang/crash due to lack of system resources - hence the 8GB recommendation)
[ ](https://chat.hyperledger.org/channel/composer?msg=XGi7jkQjhxfKjM49f) @rthatcher Thanks a lot!
After replacing my ACLs with the same one as tutorial network, I still experience the same error when trying to deploy my own network (it works well in playground):
```Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (safer-monitor:0.16.0)-open /var/hyperledger/production/chaincodes/safer-monitor.0.16.0: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (safer-monitor:0.16.0)-open /var/hyperledger/production/chaincodes/safer-monitor.0.16.0: no such file or directory)
```
Any clue?
[ ](https://chat.hyperledger.org/channel/composer?msg=uEebfZvbhvPubsg2W) @nasht00
Cross Channel linking is not currently supported, but is being considered for a future release.
There is currently no mix and match between Composer deployed Business Networks and 'fabric chaincode'
Can we add more peers dynamically?
can you provide example of a query on a transaction ???
i am getting error getTransactionRegistry is not defined
* @param {org.acme.trade.network.QueryTransaction} queryTransaction - the QueryTransaction transaction
* @transaction
*/
function queryTransaction(queryTransaction) {
return getTransactionRegistry('org.acme.trade.network.QueryTransaction')
.then(function (transactionRegistry) {
return query('selectTransactionById', {'id':queryTransaction.id})
.then(function (results) {
console.log('results are:');
for (var n = 0; n < results.length; n++) {
var temp = results[n];
console.log('id is :' + temp.id);
console.log('name is :' + temp.name);
console.log('value is :' + temp.value);
}
});
});
}
ReferenceError: getTransactionRegistry is not defined
any idea??
is there any way to the list of assets changes on a transaction
Has joined the channel.
or event is the only way
Hi everyone, I have sone issues when using query with nodeJs, the "==" clause seems not working :
```
var query = bizNetworkConnection.buildQuery('SELECT org.odm.assets.SharedHolder WHERE (iban == _$input)');
bizNetworkConnection.query(query, { input: iban })
.then(function (assets) {
console.log("Result SH by iban : ", assets);
```
what is the value in iban
?
are you not getting data or getting any error
[ ](https://chat.hyperledger.org/channel/composer?msg=emn4uaxyN8wtXYG5A) @mahoney1 In here the 'lenny@digitalPropertyNetwork' card was previously created right? I wanna know if it's possible and how to create a card from a identity issued
this.bizNetworkConnection.issueIdentity(`${NM}#${participant}`, id, {
issuer: true
}) @vitorduarte
you will be supplying issuer true
while issuing identity
Nice! I'll try it, thanks @jon_s!
@rthatcher Hi, consider the case of a TPF which needs to create and persist an asset resource.
It appears that such TPF could fail in a non transactional manner when it's not returning a promise that resolves all its asynchronous work. In such cases the transaction is saved but the extra work(saving the asset instance) could fail with error 'No ledger context for GetState'.
Is this intended behavior?
@vitorduarte Correct. As you say, you Issue identity, import card, connect to the business network using the card eg.
businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user);
....
var userCard = new IdCard({...});
userCard.setCredentials(credentials);
...
adminConnection.importCard(userCardName, userCard);
....
.then(() => {
// Connect to the business network using the network admin identity
...
businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore });
businessNetworkConnection.connect(userCardName); }
...
```
The relevant JS APIs are here https://hyperledger.github.io/composer/jsdoc/module-composer-common.IdCard.html#IdCard__anchor
you can also use the embedded connector for unit testing etc if you wish - example here
https://github.com/hyperledger/composer/blob/master/packages/generator-hyperledger-composer/generators/businessnetwork/templates/test/logic.js
@vitorduarte Correct. As you say, you Issue identity, import card, connect to the business network using the card eg.
```
businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user);
....
var userCard = new IdCard({...});
userCard.setCredentials(credentials);
...
adminConnection.importCard(userCardName, userCard);
....
.then(() => {
// Connect to the business network using the network admin identity
...
businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore });
businessNetworkConnection.connect(userCardName); }
...
```
The relevant JS APIs are here https://hyperledger.github.io/composer/jsdoc/module-composer-common.IdCard.html#IdCard__anchor
you can also use the embedded connector for unit testing etc if you wish - example here
https://github.com/hyperledger/composer/blob/master/packages/generator-hyperledger-composer/generators/businessnetwork/templates/test/logic.js
](https://chat.hyperledger.org/channel/composer?msg=hkug8PptbHF55rejS) @CorentinPacaud the query ```var query = bizNetworkConnection.buildQuery('SELECT org.odm.assets.SharedHolder WHERE (iban == _$input)');
return bizNetworkConnection.query(query, {input:iban})
.then(function (assets) {
assets.forEach(function (asset) {
// Process each asset.
});
console.log("Result SH by iban : ", asset);
etc ``` should definitely work, might suggest to do a `forEach` (above, added) to check just one asset (even if only one is returned ;-) ) - and as suggested by someone else, depends on what `iban` is set to - you can always use `{input: 'blah' })` string literal to test the query out
(https://chat.hyperledger.org/channel/composer?msg=hkug8PptbHF55rejS) @CorentinPacaud the query ```var query = bizNetworkConnection.buildQuery('SELECT org.odm.assets.SharedHolder WHERE (iban == _$input)');
return bizNetworkConnection.query(query, {input:iban})
.then(function (assets) {
assets.forEach(function (asset) {
// Process each asset.
});
console.log("Result SH by iban : ", asset);
etc ``` should definitely work, might suggest to do a `forEach` (above, added) to check just one asset (even if only one is returned ;-) ) - and as suggested by someone else, depends on what `iban` is set to - you can always use `{input: 'blah' })` string literal to test the query out
(https://chat.hyperledger.org/channel/composer?msg=hkug8PptbHF55rejS) @CorentinPacaud the query ```var query = bizNetworkConnection.buildQuery('SELECT org.odm.assets.SharedHolder WHERE (iban == _$input)');
return bizNetworkConnection.query(query, {input:iban})
.then(function (assets) {
assets.forEach(function (asset) {
// Process each asset.
});
etc ``` should definitely work, might suggest to do a `forEach` (above, added) to check just one asset (even if only one is returned ;-) ) - and as suggested by someone else, depends on what `iban` is set to - you can always use `{input: 'blah' })` string literal to test the query out
(https://chat.hyperledger.org/channel/composer?msg=hkug8PptbHF55rejS) @CorentinPacaud the query ```var query = bizNetworkConnection.buildQuery('SELECT org.odm.assets.SharedHolder WHERE (iban == _$input)');
return bizNetworkConnection.query(query, {input:iban})
.then(function (assets) {
assets.forEach(function (asset) {
// Process each asset.
console.log("Result SH by iban : ", asset);
});
etc ``` should definitely work, as suggested, depends on what `iban` is set to - you can always use `{input: 'blah' })` string literal to test the query out
(https://chat.hyperledger.org/channel/composer?msg=hkug8PptbHF55rejS) @CorentinPacaud the query ```var query = bizNetworkConnection.buildQuery('SELECT org.odm.assets.SharedHolder WHERE (iban == _$input)');
return bizNetworkConnection.query(query, {input:iban})
.then(function (assets) {
assets.forEach(function (asset) {
// Process each asset.
console.log("Result SH by iban : ", asset); }
});
etc ``` should definitely work, as suggested, depends on what `iban` is set to - you can always use `{input: 'blah' })` string literal to test the query out
(https://chat.hyperledger.org/channel/composer?msg=hkug8PptbHF55rejS) @CorentinPacaud the query ```var query = bizNetworkConnection.buildQuery('SELECT org.odm.assets.SharedHolder WHERE (iban == _$input)');
return bizNetworkConnection.query(query, {input:iban})
.then(function (assets) {
assets.forEach(function (asset) {
// Process each asset.
console.log("Result SH by iban : ", asset); }
});
etc ``` should definitely work, you can always check it out in a `forEach`( as shown, not tested), as suggested it also depends on what `iban` is set to - you can always use `{input: 'blah' })` string literal to test the query out also see [here](https://hyperledger.github.io/composer/jsdoc/composer-client_lib_businessnetworkconnection.js.html#sunlight-1-line-625)
iban is a string
at least, should be
I will try with a test value as suggested
Has left the channel.
well, I just replaced iban by 'toto1', the result is still empty...
I don't have any error, I just have no result. but I am 99% there is at least 1 result
[ ](https://chat.hyperledger.org/channel/composer?msg=qfgjSRHsFo6cJqcdd) @CorentinPacaud sure, ok btw - is the Asset registry definitely called `SharedHolder` (was thinking `ShareHolder` in english, but just a thought...you would know better)
yes, the spellin is ok. it is SharedHolder. Composer would send error it had mispelled ^^
yes, the spelling is ok. it is SharedHolder. Composer would send error it had mispelled ^^
ok i found the pb. Not related with HL
it is possible to create a relationship to an asset that does not exist and then store it in the blockchain. Is it by design?
it is possible to create a relationship to an asset that does not exist and then store it in the blockchain. Is it behavior a design decision?
is the field 'timestamp' inside a transaction the same for all peers? Is it safe to store it inside an Asset in a property like 'createdAt' (considering the need for the transaction to produce the same result in all peers) ?
[ ](https://chat.hyperledger.org/channel/composer?msg=73ECjrYxc9ZJ6xif6) @CorentinPacaud cool, so your same query def works now?
[ ](https://chat.hyperledger.org/channel/composer?msg=rScBkDd7yzzEPtwAW) @lucasdf its a good question. Partly whether the modeled biz network could/would allow it as a modeled relationship. Ordinarily you would say no, because the calling instance is trying to create a relationship to nothing in effect (ie is the relationship enforced, is it not:-) . As opposed to something that is (now) orphaned, over time, which is a transactional integrity-type question. Suggest to create an issue so the discussion can be raised, and the nuances/behaviours of this can be discussed.
[ ](https://chat.hyperledger.org/channel/composer?msg=rScBkDd7yzzEPtwAW) @lucasdf its a good question. Partly whether the modeled biz network could/would allow it [to happen as it did] as a modeled relationship. Ordinarily you would say no, because the calling instance is trying to create a relationship to nothing in effect (ie is the relationship enforced, is it not:, does Composer decide -) . As opposed to something that is (now) orphaned, over time (where previously a relationship existed), which is a transactional integrity-type question. Suggest to create an issue so the discussion can be raised, and the nuances/behaviours of this can be discussed.
@lucasdf the timestamp is the same. it comes from the transaction. The field is `transactionTimestamp` - you can see this in the Historian record, and is the same timestamp generated for a transaction when it was submitted
@lucasdf the timestamp is the same. it comes from the transaction. The field is `timestamp`(edited) - you can see this in the Historian record, and is the same timestamp generated for a transaction when it was submitted
@mahoney1 I will open an issue on Github to discuss the empty/broken relationship. Is the field `transactionTimestamp` generated by Fabric or Composer or does it come from the client?
@mahoney1 I will open an issue on Github to discuss the empty/broken relationship. Is the field `transactionTimestamp` generated by Fabric or Composer or does it come from the client? It seems that the field is `timestamp`, as accesed inside a transaction, not `transactionTimestamp`
@mahoney1 I will open an issue on Github to discuss the empty/broken relationship. Is the field `timestamp` generated by Fabric or Composer or does it come from the client? How can all peers generate the same value for the timestamp, do they receive it from the orderer? It seems that the field is `timestamp`, as accesed inside a transaction, not `transactionTimestamp`
@mahoney1 I thought I foubd the pb but not...
Is the Query operator CONTAINS works ?
When I just do a get on SharedHolders, the sharedholder.iban = "toto20"
When i try this query with the params "totot20", I have no result :
```SELECT org.odm.assets.SharedHolder WHERE (iban == _$input)```
Is the query operator "CONTAINS" work ?
[ ](https://chat.hyperledger.org/channel/composer?msg=JypzfiLT45ft636zt) @lucasdf correct it is `timestamp` (I was looking at Historian originally) The transaction timestamp is from Composer - its when the client submits the transaction (it then must transfer over the network to the runtime BN to be executed, then the endorsement results have to be sent back, then those endorsements have to be sent to the orderer etc), The peers will have the same timestamp in the transaction proposal and hence be deterministic
[ ](https://chat.hyperledger.org/channel/composer?msg=c7cd9Qah8Pk97gMkp) @CorentinPacaud yes - as in `SELECT org.acme.mynetwork.Offer WHERE ( property CONTAINS _$offerId)`
[ ](https://chat.hyperledger.org/channel/composer?msg=c7cd9Qah8Pk97gMkp) @CorentinPacaud yes - as in `SELECT org.acme.mynetwork.Offer WHERE ( property CONTAINS _$offerId)` and more examples here -> https://chat.hyperledger.org/channel/composer?msg=JL47TF7wPh9ozvxQL
So getting back to my previous question about memory leaks and constant logging; I'm still experiencing transaction timeouts with just ~20 assets stored
debug.gif
thats the constant output of my peer container which just keeps going on and on and on and on; is that normal?
thats the constant output of my chaincode container which just keeps going on and on and on and on; is that normal?
(even when no transactions are being done)
thx @mahoney1 I thought CONTAINS operator was for something like : SELECT org.acme.sample.TestAsset WHERE (myPropertyString CONTAINS 'Toto'
So, if testAsset.myPropertyString = 'totoblabla', the query will be good.
[ ](https://chat.hyperledger.org/channel/composer?msg=vqb6nzR2C8BkDuvTz) @nickyromeijn please raise an issue with the re-creatable sample / logs etc - (strange if there's no trxns) assume this is the Object A which references to Object B and B references to A scenario ?
@mahoney1 Yeah will do, yeah it's a complete hierarchy of objects that reference eachother, each child knows it's parent by reference and vice versa
@mahoney1 Is there a difference in using a .qry file as opposed to the default rest endpoints + ACL rules which auto-filter?
Who knows: Error trying invoke business network. Error: Peer has rejected transaction '...' with code ENDORSEMENT_POLICY_FAILURE?
Your Peer(s) aren't endorsing the transaction or not enough of them are endorsing the transaction. It depends on how your policy is setup. What is the Endorsement policy?
@CorentinPacaud its for finding a string value in an Array https://hyperledger.github.io/composer/reference/query-language.html
[ ](https://chat.hyperledger.org/channel/composer?msg=g7RY7F8dApt7KRaY3) @nickyromeijn yes, you can't use filters on query endpoints :-) But whatever you define in your .qry file, will be available as a REST endpoint..
Has joined the channel.
Hello, I have developed a BNA with Hyperledger Composer and it's running in an Hyperledger Fabric network and it's great!, but I have a question: Could other team be able to develop another BNA in the same HFL Network which communicates with my BNA, in order to automate the processes between both BNAs? For example: I have developed a BNA to buy and sells cars but other team develops a BNA to rent the cars which are int the first BNA (using the logic and assets from the 1st BNA in the 2nd BNA). Is it possible? Thank you so much!
[ ](https://chat.hyperledger.org/channel/composer?msg=zeTHrRghKk9wjYQc5) @frandai - Connection to a Business Network is made via a Business Network Card - which specifies One Business Network and One Channel (and possibly multiple Peers via a connection.json file). So at this time it is not possible to link between Business Networks or Channels. Linking between channels is being considered as a future feature.
@mahoney1 Ah so it is possible to bypass the ACL with queries? (i hope not)
tring to dockerize a node container using composer-client however I am having problems with it connecting to card store any suggestions or references I can used... I have tried mounting volume to ~/.composer but still seem to be missing something
@mahoney1 I just timed the execution time of retrieving my complete object hierarchy through the rest api with [resolve]=true. It takes the chaincode around 8 seconds to retrieve the assets and validate the ACL's. I'm fairly certain it's the recursive references.
[ ](https://chat.hyperledger.org/channel/composer?msg=xfTzzTBXsBevt2Kjr) @nickyromeijn no not saying that. Query results (executed for example as a REST Endpoint) are subject to ACL conditions, as you would expect them to.
@mahoney1 Ah i get it, queries and default endpoints are both executed against the couchDB (world state) database?
[ ](https://chat.hyperledger.org/channel/composer?msg=3hfXufY3Z6ZX5QNg6) @nickyromeijn Couchdb required for Query REST endpoints ; a "get by ID" or "get all" from a REST endpoint would work with LevelDB env as well. eg Commodity asset etc
I understand; the thing i was aiming at is that there shouldn't be any performance difference in retrieving assets from the default endpoints or queries (assuming the query selects the same data)
@here - just to advise that the next Hyperledger Composer Community call will be on Thursday 4th January (notice on that, posted nearer the time) and is adjourned until then. We won't be having a Community call at UTC 4pm (5pm UK, ET 12noon) today.
okay - Merry Christmas Paul! @mahoney1
:christmas_tree: :thumbsup:
[ ](https://chat.hyperledger.org/channel/composer?msg=5cfhi7dvYhPqZwFr7) @nickyromeijn on a like-for-like basis, no, not noticeably.
Has joined the channel.
Hi, From Hyperledger composer is it possible to connect 2 peers from 2 different machine
Hi everyone. I'm searching for an architecture or design doc or anything that shows how composer works under the hood.
https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture
Slightly out of date, but still useful.
I think there was a more detailed version presented on one of the community calls. Check the recordings.
Yeah I had found that one. I'll dig and post anything else I find..thanks!
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Why the previous error occurs when I imported the participant card
and While connecting to the network
I exported participant/ user card from my local playground
Has joined the channel.
Has joined the channel.
What's the best resource for a total newbie to wrap their heads around HyperLedger composer to start playing around with it right away? I want to interface with web applications.
For example, for me to start with something extremely basic as storing a simple invoice on the blockchain via PHP for example. What would I need to do to get started?
Has joined the channel.
Hello, how to add a chaincode of go ?
Are string literals allowed in composer queries? example : _$inputparam == 'ABC'
@here
Is there a way to increase the memory of the composer-rest-server?
Has joined the channel.
User User_1 added by Hyane.
Has joined the channel.
Has joined the channel.
What happens if I need to add a new peer? Will the old cards doesn't work and also should I redeploy everything?
Hi Everyone,
I am getting an SyntaxError: Unexpected token =
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:374:25)
at Object.Module._extensions..js (module.js:417:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Module.require (module.js:354:17)
at require (internal/module.js:12:17)
at Object.
Issues in createPeerAdminCard.png
@varun-raj Hi, From Hyperledger composer is it possible to connect 2 peers from 2 different machine
Yes it is possible. You have to create docker-compose file accordingly
How to configure...
in docker-compose we need to configure the peer nodes with ip??
if so can u plz share me a sample configuration for that
@varun-raj , To become a participant in a business network, should I be in the peer or from anymachine with the particiapnt card, I can connect to it
I'll prepare it and will send you accross
I think you can participate from any machine which is a peer
You need to install chaincode in all the peers
@varun-raj that would be great.
@varun-raj If a machine is not a peer then we cannot establish connection am I right??
@varun-raj we are trying all possible solutions. your help would greatly be appreciated
Yes
I've somehow figured out few things
Will be happy to help you :)
Very kind of you @varun-raj
:)
whether queries on transaction is possible in composer ????? except querying historian or assets i want to know query on transaction works or not . i have written example query on asset works but query on transaction does not works
@mahoney1 @dselman please let me know
Historian is the only way right
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZXpPoPniFKaizcCWm) @yogesh.fulsunge so, you can query a transaction class so ```query myTransactions {
description: "return all transactions in my trxn class (ie not system transactions)"
statement: SELECT org.acme.sample.NAME_OF_TRANSACTION_CLASS
}``` and then use the REST API endpoint
Has joined the channel.
Hi Everyone
I am following the tutorial network
https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
When I give this command
composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network
I get this error
Installing runtime for business network tutorial-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
[ ](https://chat.hyperledger.org/channel/composer?msg=xtjkqXeZDHFxSFmCP) @hendry19901990 - Hyperledger Composer does not use go. Hyperledger Composer a toolset and framework to make developing blockchain applications easier, using Composer you will write JavaScript, and lots less code than if you were using Go. If you want to proceed with Go - please use the #Fabric channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=3Gha4X2qSdHCCaeWW) @vasp - try the developer Tutorial here: https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
After this you could use PHP to connect to the Composer REST server, but you may prefer to use the JavaScript API.
[ ](https://chat.hyperledger.org/channel/composer?msg=FzSrPQ3AjTo2Hqcwr) @RanaAhmed the most common reason for this error is that the Fabric you are trying to install to is not running. Are your Fabric containers running? try `docker ps` to find out.
[ ](https://chat.hyperledger.org/channel/composer?msg=zcQJLnLY6m3CWfex5) @rthatcher
rana@ubuntu:~/tutorial-network$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
@varun-raj can you pls send me sample configyration docker-compose file to deploy business network in 2 different machine?
[ ](https://chat.hyperledger.org/channel/composer?msg=XQT48WWDQcCi439ac) @Abhi119 - What Operating System are you using? It looks like you are logged in as root which might be the cause of the problem. I would advise switching to a non-root user and following the pre-requisite steps from there.
@rthatcher hi, does the query languare allow the retrieval of a resource's field values domain ? e.g 'select qualified.name.field1 ...'
@rthatcher I am using ubuntu in aws instance . Is there is any other way if i can use this command in root user?
[ ](https://chat.hyperledger.org/channel/composer?msg=eBA99h2BujeGyhMkG) @uber.twin not presently - there is an issue raised https://github.com/hyperledger/composer/issues/3020
[ ](https://chat.hyperledger.org/channel/composer?msg=zGWuSwe7f9MyWxwCv) @RanaAhmed you have no runtime Fabric - so this is a problem :-) you needed to have completed 'Step 2' section of this setup / install doc https://hyperledger.github.io/composer/installing/development-tools.html
[ ](https://chat.hyperledger.org/channel/composer?msg=ehKeoBhicHoAdaoN8) @mahoney1
Thanks
Step 2 give me this error
Creating network "composer_default" with the default driver
Pulling couchdb (hyperledger/fabric-couchdb:x86_64-1.0.4)...
ERROR: Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on 127.0.1.1:53: no such host
[ ](https://chat.hyperledger.org/channel/composer?msg=YETFEE3ybD3MT57em) @Abhi119 - it might be possible but it would be difficult and I have not tried it. You might be better resetting your AWS instance. The Instructions in setting up the Development environment
[ ](https://chat.hyperledger.org/channel/composer?msg=YETFEE3ybD3MT57em) @Abhi119 - it might be possible but it would be difficult and I have not tried it. You might be better resetting your AWS instance. The Instructions in setting up the Development environment strongle advise against root ...
```If installing Hyperledger Composer using Linux, be aware of the following advice:
-Login as a normal user, rather than root.
-Do not su to root.
-When installing prerequisites, use curl, then unzip using sudo.
-Run prereqs-ubuntu.sh as a normal user. It may prompt for root password as some of it's actions are -required to be run as root.
-Do not use npm with sudo or su to root to use it.
-Avoid installing node globally as root.```
@RanaAhmed your problem is likely to be a proxy / networking issue. (as the registry error indicates). There's plenty of resources on google to find a resolution - see what happens if you do a `docker run hello-world` I suspect it will confirm your error - suggest you talk to your networking expert or enable routing out - see also
https://community.xibo.org.uk/t/error-get-https-registry-1-docker-io-v2/9618
[ ](https://chat.hyperledger.org/channel/composer?msg=MocibXYdLHsmo6TCT) @mahoney1 Thanks I'll have a look
@Abhi119 the issue with install as root causes problems for npm - which is why the recommend you don't use elevated privileges for npm installs (which composer uses). You can uninstall and install as a non-privileged user - see below ```1. INSTALL COMPOSER AS A NON-PRIVILEGED USER - IE NON-ROOT.
Ideally, when you install composer modules globally (eg. composer-cli) you should install using a designated, non-root user. If there are issues (eg, on Ubuntu with permissions to write/update node directories located in system directories like /usr/local) - the solution is perform the npm install to a directory you have access to - rather than resort to root or superuser access, as this is not good practice. Here is what to do to set the npm prefix to a given directory, ...
"npm config set prefix /home/myuser/"
In this case, global binaries are placed in /home/myuser/bin which is in your PATH, and the modules are placed in /home/myuser/lib ...
This is a method to do all the 'global' installs as non-root``` Then you will be able to install your composer modules as non-root and (hopefully) be able to continue smoothly
@Abhi119 also might be worth checking what version of Node you're running on ?
@mahoney1 is there any performance advantage when quering a resource by its declared identifier vs an arbitrary field?
[ ](https://chat.hyperledger.org/channel/composer?msg=ah3rmBYbHodB2959D) @prabvi01 Sure, I'll make a genric version of it and opensource it :)
[ ](https://chat.hyperledger.org/channel/composer?msg=3SDkmxxS3YuYDsWai) @uber.twin if the query you pass contains the parameters that map to that index, CouchDB will use the index whichever fields it relates to. So in theory, if you have mapped the query to the index correctly, all future queries will use the indexing and so be more performant.
[ ](https://chat.hyperledger.org/channel/composer?msg=3SDkmxxS3YuYDsWai) @uber.twin if the query you pass contains the parameters that map to an index, CouchDB will use the index whichever fields it relates to. So in theory, if you have mapped the query to the index correctly, all future queries will use the indexing and so be more performant.
[ ](https://chat.hyperledger.org/channel/composer?msg=ewTvGnb3a5Xp7Tcxh) @mahoney1 sure, so an index always needs to be defined in couchdb, then
any plans to be able to specify the indexes at the cto file level, in terms of composer concepts?
Has joined the channel.
@mahoney1 is there a runtime utility api call for generating consistent resource identifiers?
something similar to what is used for automatically assigning ids to transaction objects
[ ](https://chat.hyperledger.org/channel/composer?msg=oAPTA8FLD8Jhuu5sW) @rthatcher Thank you!!
@uber.twin That would require fabric to provide some capability to do this this is a fabric issue here https://jira.hyperledger.org/browse/FAB-3067
[ ](https://chat.hyperledger.org/channel/composer?msg=Cy85caknFoQbJ23DR)
@uber.twin That would require fabric to provide some capability to do this, there is a fabric issue here https://jira.hyperledger.org/browse/FAB-3067
[ ](https://chat.hyperledger.org/channel/composer?msg=Cy85caknFoQbJ23DR)
@davidkel thanks for the reference. other that this, is a transaction timestamp guaranteed to be unique?
@uber.twin we use the transactionid provided by the fabric-node-sdk and is used as the underly transaction id passed through the fabric network so I can't definitively answer that. The docs state this
```
Returns a new TransactionID object. Fabric transaction ids are constructed as a hash of a nonce concatenated with the signing identity's serialized bytes. The TransactionID object keeps the nonce and the resulting id string bundled together as a coherent pair.
```
You might get an answer on the #fabric-sdk-node channel but I think you would need to qualify the scope of uniqueness, eg fabric network, channel etc
@uber.twin sorry, misread your question. I don't think you can guarantee it after all it is a timestamp
alright
but is there a way to be able to consistently get the same timestamp on all endorsing peers in a chaincode simulation run?
get an orderer time or something like that
The timestamp is client side generated so will be the same across all endorsing peers
that is the timestamp of the transaction
ok
thank you
@davidkel I'd like to have a way of saying what is the current date. If I base it on the transaction timestamp, it could not be consistent since two clients may have different dates isn't it?
@uber.twin The client application doesn't generate the timestamp, it is generated by composer so the format will be consistent
How do i set the header for my `post(url, resource)` call in TPF?
How do i set the headers for my `post(url, resource)` call in TPF?
[ ](https://chat.hyperledger.org/channel/composer?msg=qqsrpM7C6nL7CjZnc) @davidkel I need to know the values are consistent too e.g. lets say I need to establish a priority based on the timestamp.
[ ](https://chat.hyperledger.org/channel/composer?msg=qqsrpM7C6nL7CjZnc) @davidkel I need to know the values are consistent too e.g. lets say I need to establish a priority based on the timestamp(fifo). A client submitting last transaction may have a timestamp prior to previously submitted transactions by other clients, isn't it?
@uber.twin Sorry, i could not respond to your question. I was unavailable. Hope you are good now.
sure, thank you:)
I am trying to dockerize node composer-client but cant seem to connect to card store. using hlfv1 I have added volume to docker run command `-v ~/.composer:/home/root/.composer` updated the createPeerAdminCard so that the generated connect.js uses ip address instead of localhost
node program runs fine outside container, but I get `Card not found: admin@biz-network` when running via container
@uber.twin I would only ever assume that the timestamp represents transaction submission
[ ](https://chat.hyperledger.org/channel/composer?msg=Lz4YtWbQwzTup7zEj) @davidkel Any idea?
Re-posting my question again here, I have a multi-org (many peers) multi-channel (a few channels) and 2 bna files for the business network. One of the composer-rest-server operating on the bna file seems to be slow, I would ike to know is there a way to increase memory for the composer-rest-server? I tried this option but doesnt seem to take in effect....
composer-rest-server --max-old-space-size=8192 -c admin-a@bna-a -p 4001 -w >composer-rest-server-a-logs.log 2>&1 &
node --max-old-space-size=8192 /home/myadmin/.npm-global/bin/composer-rest-server -c admin-a@bna-a -p 4001 -w >composer-rest-server-a-logs.log 2>&1 &
node --max-old-space-size=8192 /home/myadmin/.npm-global/bin/composer-rest-server --max-old-space-size=8192 -c admin-a@bna-a -p 4001 -w >composer-rest-server-a-logs.log 2>&1 &
[ ](https://chat.hyperledger.org/channel/composer?msg=Fu56ZuxvxqNeXWRAS) @C.Jason.Phelps - are you sure the user in the container has the `/home/root/` as the home directory? Is root really the user? root home directory is usually `/root`
[ ](https://chat.hyperledger.org/channel/composer?msg=yHTpLPyZBt73trCye) @gen_el there's an example here -> https://hyperledger.github.io/composer/integrating/call-out.html - this may also help you on headers -> https://stackoverflow.com/questions/43209924/rest-api-use-the-accept-application-json-http-header
@rthatcher def root sending command whoami returns root ... ill try updating location of volume on contain to /root/.composer
Hi, regarding Tx events, I would like to know what happen when my client app subscribe to an event. Is there a snapshot of previous events being sent ? How do I get past events ?
[ ](https://chat.hyperledger.org/channel/composer?msg=xzC6MPGLCPcCrvpDy) @mahoney1 I already call a rest api using `post(url, resource)`. However, now i have to call a rest api that requires that i provide a valid authorisation bearer token. The stackoverflow question speaks to calling rest api with headers, generally. Unless, you are suggesting adding the header to the url, as the url, should work?
[ ](https://chat.hyperledger.org/channel/composer?msg=wFDN5q89FmPhg7KZQ) @jaguarg You can find a "list of previous events for a specific transaction by querying HistorianRecord. For example: `SELECT org.hyperledger.composer.system.HistorianRecord WHERE (transactionType == 'PayForCarTransaction')` returns all PayforCardTransaction transactions with the events in the `eventEmitted` field. You can output the returned model to check it out.
Has joined the channel.
@gen_el OK cool thank you
OK cool thank you [ ](https://chat.hyperledger.org/channel/composer?msg=LgCA2Dm5f6J3CRMdF) @gen_el
Is there a way for a client app to catch exception when Tx fails for validation reasons ?
Is there a way for a client app to catch exception when Tx fails for validation reasons ? Typically, the code below is not catching any error from the Tx
```bizNetworkConnection.submitTransaction(transaction).then((result) => {
console.log("Tx Result", result) ;
}).catch((exception) => {
console.log("error", exception);
})```
[ ](https://chat.hyperledger.org/channel/composer?msg=gJZmZnw3mNmio8EoD) @jaguarg Probably ensure `submitTransaction` is called within a promise chain. That way it will be caught.
Ooops you are rights. apologies. [ ](https://chat.hyperledger.org/channel/composer?msg=KzGauebLpWBCR2oiB) @gen_el
@rthatcher Thanks for your help, figured it was somethign stupid simple
As you can gess, I am playing with Tx. And I am getting the error. `Participant 'org.company.participants.Underwriter#2e7469deaadf4cbac035bdc3aa38199268651f78' does not have 'CREATE' access to resource 'org.company.transactions.createContractTx` .
But my ACL reads
```rule canCreateInsuranceContractTx {
description: "Grant execute on createInsuranceContractTx "
participant: "org.company.participants.Underwriter"
operation: ALL
resource(v): "org.company.assets.Contract"
transaction(tx): "org.company.transactions.createContractTx"
condition: ( true )
action: ALLOW
}```
As you can gess, I am playing with Tx. And I am getting the error. `Participant 'org.company.participants.Underwriter#2e7469deaadf4cbac035bdc3aa38199268651f78' does not have 'CREATE' access to resource 'org.company.transactions.createContractTx` .
But my ACL reads
```rule canCreateContractTx {
description: "Grant execute on createInsuranceContractTx "
participant: "org.company.participants.Underwriter"
operation: ALL
resource(v): "org.company.assets.Contract"
transaction(tx): "org.company.transactions.createContractTx"
condition: ( true )
action: ALLOW
}```
As you can gess, I am playing with Tx. And I am getting the error. `Participant 'org.company.participants.Underwriter#2e7469deaadf4cbac035bdc3aa38199268651f78' does not have 'CREATE' access to resource 'org.company.transactions.createContractTx` .
But my ACL reads
```rule canCreateContractTx {
description: "Grant execute on createContractTx "
participant: "org.company.participants.Underwriter"
operation: ALL
resource(v): "org.company.assets.Contract"
transaction(tx): "org.company.transactions.createContractTx"
condition: ( true )
action: ALLOW
}```
As you can gess, I am playing with Tx. And I am getting the error. `Participant 'org.company.participants.Underwriter#2e7469deaadf4cbac035bdc3aa38199268651f78' does not have 'CREATE' access to resource 'org.company.transactions.createContractTx` .
But my ACL reads
```rule canCreateContractTx {
description: "Grant execute on createContractTx "
participant: "org.company.participants.Underwriter"
operation: ALL
resource(v): "org.company.assets.Contract"
transaction(tx): "org.company.transactions.createContractTx"
condition: ( true )
action: ALLOW
}```
Anything missing in terms of ACL ?
Hello. Is it possible to emit two different events by the same transaction processor function in composer? ``` return getAssetRegistry('org.acme.trading.Commodity')
.then(function (assetRegistry) {
return query('selectCommoditiesWithHighQuantity')
.then(function (results) {
var promises = [];
var removed = [];
for (var n = 0; n < results.length; n++) {
var trade = results[n];
// emit a notification that a trade was removed
var removeNotification = getFactory().newEvent('org.acme.trading', 'RemoveNotification');
removeNotification.commodity = trade;
removed.push(removeNotification.commodity.getIdentifier());
removeNotification.symbol = removed[n];
emit(removeNotification);
// remove the commodity
promises.push(assetRegistry.remove(trade));
}
// we have to return all the promises
return Promise.all(promises);
});
var exchange = "ABC";
return query('selectCommoditiesByExchange')
.then(function(mainExchange) {
var exchangeNotification = getFactory().newEvent('org.acme.trading', 'ExchangeNotification');
exchangeNotification.commodityIdentifier = mainExchange.getIdentifier();
emit(exchangeNotification);
});
}); ```
Hello. Is it possible to emit two different events (removeNotification and exchangeNotification) by the same transaction processor function in composer? ``` return getAssetRegistry('org.acme.trading.Commodity')
.then(function (assetRegistry) {
return query('selectCommoditiesWithHighQuantity')
.then(function (results) {
var promises = [];
var removed = [];
for (var n = 0; n < results.length; n++) {
var trade = results[n];
// emit a notification that a trade was removed
var removeNotification = getFactory().newEvent('org.acme.trading', 'RemoveNotification');
removeNotification.commodity = trade;
removed.push(removeNotification.commodity.getIdentifier());
removeNotification.symbol = removed[n];
emit(removeNotification);
// remove the commodity
promises.push(assetRegistry.remove(trade));
}
// we have to return all the promises
return Promise.all(promises);
});
var exchange = "ABC";
return query('selectCommoditiesByExchange')
.then(function(mainExchange) {
var exchangeNotification = getFactory().newEvent('org.acme.trading', 'ExchangeNotification');
exchangeNotification.commodityIdentifier = mainExchange.getIdentifier();
emit(exchangeNotification);
});
}); ```
Hello. Is it possible to emit two different events (removeNotification and exchangeNotification) by the same transaction processor function in composer? Both queries working on assetregistry.. ``` return getAssetRegistry('org.acme.trading.Commodity')
.then(function (assetRegistry) {
return query('selectCommoditiesWithHighQuantity')
.then(function (results) {
var promises = [];
var removed = [];
for (var n = 0; n < results.length; n++) {
var trade = results[n];
// emit a notification that a trade was removed
var removeNotification = getFactory().newEvent('org.acme.trading', 'RemoveNotification');
removeNotification.commodity = trade;
removed.push(removeNotification.commodity.getIdentifier());
removeNotification.symbol = removed[n];
emit(removeNotification);
// remove the commodity
promises.push(assetRegistry.remove(trade));
}
// we have to return all the promises
return Promise.all(promises);
});
var exchange = "ABC";
return query('selectCommoditiesByExchange')
.then(function(mainExchange) {
var exchangeNotification = getFactory().newEvent('org.acme.trading', 'ExchangeNotification');
exchangeNotification.commodityIdentifier = mainExchange.getIdentifier();
emit(exchangeNotification);
});
}); ```
Hello. Is it possible to emit two different events (removeNotification and exchangeNotification) by the same transaction processor function in composer? Both queries working on asset registry.. ``` return getAssetRegistry('org.acme.trading.Commodity')
.then(function (assetRegistry) {
return query('selectCommoditiesWithHighQuantity')
.then(function (results) {
var promises = [];
var removed = [];
for (var n = 0; n < results.length; n++) {
var trade = results[n];
// emit a notification that a trade was removed
var removeNotification = getFactory().newEvent('org.acme.trading', 'RemoveNotification');
removeNotification.commodity = trade;
removed.push(removeNotification.commodity.getIdentifier());
removeNotification.symbol = removed[n];
emit(removeNotification);
// remove the commodity
promises.push(assetRegistry.remove(trade));
}
// we have to return all the promises
return Promise.all(promises);
});
var exchange = "ABC";
return query('selectCommoditiesByExchange')
.then(function(mainExchange) {
var exchangeNotification = getFactory().newEvent('org.acme.trading', 'ExchangeNotification');
exchangeNotification.commodityIdentifier = mainExchange.getIdentifier();
emit(exchangeNotification);
});
}); ```
Hello. Is it possible to emit two different events (removeNotification and exchangeNotification) by the same transaction processor function in composer? Both queries working on same asset registry.. ``` return getAssetRegistry('org.acme.trading.Commodity')
.then(function (assetRegistry) {
return query('selectCommoditiesWithHighQuantity')
.then(function (results) {
var promises = [];
var removed = [];
for (var n = 0; n < results.length; n++) {
var trade = results[n];
// emit a notification that a trade was removed
var removeNotification = getFactory().newEvent('org.acme.trading', 'RemoveNotification');
removeNotification.commodity = trade;
removed.push(removeNotification.commodity.getIdentifier());
removeNotification.symbol = removed[n];
emit(removeNotification);
// remove the commodity
promises.push(assetRegistry.remove(trade));
}
// we have to return all the promises
return Promise.all(promises);
});
var exchange = "ABC";
return query('selectCommoditiesByExchange')
.then(function(mainExchange) {
var exchangeNotification = getFactory().newEvent('org.acme.trading', 'ExchangeNotification');
exchangeNotification.commodityIdentifier = mainExchange.getIdentifier();
emit(exchangeNotification);
});
}); ```
Hello @mahoney1 . Is it possible to emit two different events (removeNotification and exchangeNotification) by the same transaction processor function in composer? Both queries working on same asset registry.. ``` return getAssetRegistry('org.acme.trading.Commodity')
.then(function (assetRegistry) {
return query('selectCommoditiesWithHighQuantity')
.then(function (results) {
var promises = [];
var removed = [];
for (var n = 0; n < results.length; n++) {
var trade = results[n];
// emit a notification that a trade was removed
var removeNotification = getFactory().newEvent('org.acme.trading', 'RemoveNotification');
removeNotification.commodity = trade;
removed.push(removeNotification.commodity.getIdentifier());
removeNotification.symbol = removed[n];
emit(removeNotification);
// remove the commodity
promises.push(assetRegistry.remove(trade));
}
// we have to return all the promises
return Promise.all(promises);
});
var exchange = "ABC";
return query('selectCommoditiesByExchange')
.then(function(mainExchange) {
var exchangeNotification = getFactory().newEvent('org.acme.trading', 'ExchangeNotification');
exchangeNotification.commodityIdentifier = mainExchange.getIdentifier();
emit(exchangeNotification);
});
}); ```
Hello @mahoney1 . Is it possible to emit two different events (removeNotification and exchangeNotification) by the same transaction processor function in composer? Both queries working on same asset registry.. ``` return getAssetRegistry('org.acme.trading.Commodity')
.then(function (assetRegistry) {
return query('selectCommoditiesWithHighQuantity')
.then(function (results) {
var promises = [];
var removed = [];
for (var n = 0; n < results.length; n++) {
var trade = results[n];
// emit a notification that a trade was removed
var removeNotification = getFactory().newEvent('org.acme.trading', 'RemoveNotification');
removeNotification.commodity = trade;
removed.push(removeNotification.commodity.getIdentifier());
removeNotification.symbol = removed[n];
emit(removeNotification);
// remove the commodity
promises.push(assetRegistry.remove(trade));
}
// we have to return all the promises
return Promise.all(promises);
});
var exchange = "ABC";
return query('selectCommoditiesByExchange')
.then(function(mainExchange) {
var exchangeNotification = getFactory().newEvent('org.acme.trading', 'ExchangeNotification');
exchangeNotification.commodityIdentifier = mainExchange.getIdentifier();
emit(exchangeNotification);
});
}); ```
[ ](https://chat.hyperledger.org/channel/composer?msg=Ex477KufdZ53rFZBm) @mahoney1 Looking at the source for *composer-runtime-hlfv1/nodehttpservice*, it seems headers are not supported at the moment. ```const options = {
url : self.url,
method: 'POST',
body: self.data,
json: true
};```
@vkblue The parameter is `--max_old_space_size` and I would think the second invocation you posted would be the way I would try to launch to ensure the parameter was accepted ok
[ ](https://chat.hyperledger.org/channel/composer?msg=DWbAJSAhXhky3Hsjs) @gen_el no, not specifically, I just assumed from your question you wanted to set them (originally).
[ ](https://chat.hyperledger.org/channel/composer?msg=tWkPKr9cLgjpuEGuB) @davidkel Thanks for the reply. It doesn't seem to take it, that's the reason I posted it here. I'll see if I am doing anything missing from my side.
[ ](https://chat.hyperledger.org/channel/composer?msg=tWkPKr9cLgjpuEGuB) @davidkel Thanks for the reply. It doesn't seem to take it, that's the reason I posted it here. I'll see if I am missing anything from my side.
@vkblue well firstly the parameter you posted was not correct. If I try it and set it to say 16 then I can certainly get it to abend with no memory
[ ](https://chat.hyperledger.org/channel/composer?msg=x49rvpvYn8t8WxgD7) @davidkel Thanks! , let me try again.
@AkshayJindal should be possible to do that yes.
[ ](https://chat.hyperledger.org/channel/composer?msg=DHriwnpu2tQ9cR5e4) @mahoney1 Being able to pass the *headers* to `post()` is a key requirement. Most of the time, rest apis on production, are protected.
[ ](https://chat.hyperledger.org/channel/composer?msg=oDwTji9CGrNgRaqz2) @gen_el yep, I suggest to raise it as an issue ...
@mahoney1 Logged.
[ ](https://chat.hyperledger.org/channel/composer?msg=YiJZavgTpfqYujpJC) @mahoney1 Raised. https://github.com/hyperledger/composer/issues/3071
@gen_el thanks..
@here: after today, there will be limited support on Rocketchat and Stack Overflow until January 2nd 2018 :christmas_tree:
FYI the next Hyperledger Composer Community call is January 4th (Thurs 4pm UTC). Have a great Christmas :santa: , and a wonderful 2018 :thumbsup: :-) !
@here: after today, there will be limited support on Rocketchat and Stack Overflow between now and January 2nd 2018 :christmas_tree:
FYI the next Hyperledger Composer Community call is January 4th (Thurs 4pm UTC). Have a great Christmas :santa: , and a wonderful 2018 :thumbsup: :-) !
Has joined the channel.
Hi All
I have started using Hyperledger-composer
Please bear with me and guide me
@AkshayJindal i am getting CORS error while accessing APIs of my business network api server, in which file i should make changes. Please help
@here @AkshayJindal i am getting CORS error while accessing APIs of my business network api server, in which file i should make changes. Please help
Has joined the channel.
thanks @mahoney1 @davidkel @dselman @sstone1 for your fab support! Merry Christmas to you and your families!
https://hyperledger.github.io/composer/applications/node.html
I am just following this link.
@here i am continuously getting error at this line : this.bizNetworkConnection = new BusinessNetworkConnection();
I am able to ping the running network. Please help
I am not able to create runtime with 2 peers running on the same machine
Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
@manikhandan check your connection.json. are you using grpcs and https(for CA) or grpc as a protocol? coz when you are working with 2 or more peers u have to use grpcs protocol
I'm using grpc only
@varun-raj Thanks a lot. Can you pls reply with the link where you have posted it
@manikhandan thats what you have to use grpcs instead of grpc
ok let me check and let you know
Has joined the channel.
Has joined the channel.
Hi, is there documentation on how to try 0.17?
@nasht00 0.17 is not released yet, if you want to try it out, you need to download the latest fabric-dev-servers package and npm install composer-
@nasht00 0.17 is not released yet, if you want to try it out, you need to download the latest fabric-dev-servers package and `npm install composer-
aha `next-unstable` was the part I was looking for.
So I don't need to work with source code right?
@nasht00 nope there are published packages but still requires further testing and improvements
@nasht00 0.17 changes are Node.js chaincode exploitation in fabric v1.1 and a new connection profile format. The old format isn't supported anymore and we have completely dropped the Go/duktape implementation
That's good that's what I want to test (the nodejs engine).
Do we have ready samples I can clone for 0.17?
@nasht00 you can clone composer-sample-networks, the tests won't run as they need slight modification but the bnas they generate will be compatible
How do I know if I'm really running on the new javascript engine?
@nasht00 if you are using fabric 1.1 (docker ps) and you have a chaincode container then you will be
OK. By the way are you aware if there is a timeline to support `require`, meaning 3rd party npm modules?
The current plan for what is being called a 1.0 release is here
https://github.com/hyperledger/composer/issues/2705
but it doesn't include `require` support
Anyone knows what this error means when trying to run createPeerAdmincard on 0.16:
> Failed to load connector module "composer-connector-undefined" for connection type "undefined".
Are you trying to run the hlfv11 version of createPeerAdminCard.sh with composer-cli 0.16 ? If so it won't work.
I switch my fabric version env variable. If I understood correctly, it is supposed to run the scripts from the hlfv1 folder instead ...
But maybe something got mixed up in the process. Switching versions is a process
I'll continue trying tomorrow. Thanks for the help!
If you keep switching fabric versions you will have to keep clearing your card store as the cards are incompatible
aha I think that's it then. I cleared everything I know about, but cards I did not see how to clear
I though the create script would do this for me
It can't because it cannot remove previous cards due to the cards not being compatible between versions. Currently to clear the file system card store you can use `rm -fr ~/.composer`. But this is only for migration between versions and not a good solution for anything else.
yes that was it thanks
Has joined the channel.
Hello
I have a question on the tutorial https://github.com/IBM/BlockchainNetwork-CompositeJourney
on the step 3.
When I try to execute the command "npm install"
It gives error:
npm WARN lifecycle my-network@0.0.1~prepublish: cannot run in wd %s %s (wd=%s) my-network@0.0.1 mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/my-network.bna /home/batu/BlockchainNetwork-CompositeJourney
npm WARN ajv-keywords@2.1.1 requires a peer of ajv@^5.0.0 but none was installed.
npm WARN my-network@0.0.1 No repository field.
Will my application be only be able to run in a bluemix environment? or there are some other choices i mean like if composer is strictly bounded with bluemix ?
@mmick You can run the application on pretty much any linux vm. I think the only way it is linked with bluemix is when you use the Blockchain service platform on Bluemix. If you don't use this platform then the deployment becomes your responsibility and you can deploy wherever you want.
there will be endorsers, peers being part of an application running chaincode on there linux vm. most promising vm is blu
yeah and most promising linux vm will be bluemix!
Hello! I have a question on the tutorial https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
I need run the tutorial example with fabric version 1.1.0-preview. But when I run it I got errors.
rror: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Hello. Is it possible to create a transaction which will just query the ledger and gives results but do not update the ledger? In this case, current state will not change..
what is the difference between
org.hyperledger.composer.system.Participant
org.hyperledger.composer.system.NetworkAdmin
I guess that the first one includes both network admins & all participants inside network namespace, right?
Hello. I am using `console.log` in my transaction processor function. I am running my business network (over fabric) using composer-playground. How would I see the output of `console.log` ?
Hello. I am using `console.log` in my transaction processor function in composer. I am running my business network (over fabric) using composer-playground. How would I see the output of `console.log` ?
Hello. I am using `console.log` in my transaction processor function in composer. I am submitting transaction in my business network (running over local fabric) using composer-playground. How would I see the output of `console.log` ?
Has joined the channel.
Hello All. So excited to be a part of this community. I'm really new to this area and sorry for my amateur questions in advance
by mistake I have 2 installation of hyperledger fabric on my local machine. I'm trying to uninstall the fabric.. can anyone please help/
Has joined the channel.
How can we search through the transaction data in historian query? anyone tried it?
@varun-raj Can you pls share configuration for multi org for multiple machine?
Has joined the channel.
Has joined the channel.
Has joined the channel.
hello
anybody there
need help
i have docker on windows and i need to run composer command on it using powershell
command like this "docker run d10b6daa63ce composer network list -c admin@afifi-network"
Hi I'm starting the ibm tutos for fabric but right now I've a problem with the composer cli because i have installet php composer cli too
some one have this issue or any idea how to solve
@artessan use an alias to call your php composer or call directly the composer.phar, it will make your life easier..
the I need to remove the global composer php script and path
then I need to remove the global composer php script and path?
I‘d say yes, you will need to play around with your PATH variable, either on your config file, or on your terminal session (in the later case, you will be firced to do your change each time you open a new terminal session)
well thanks
@artessan fyi on my side I had the opposite issue, installing the composer.phar after installing the Hyperledger Composer cli, so I used an alias to call the composer.phar: alias comp=“~/php/composer.phar” which solved the issue.
yeah I'm thinking on an alias but for the hyperledger composer cli
or something thanks really
Has joined the channel.
Has joined the channel.
composer working well! 11 or so participant "classes" (not sure of all of the composer nomenclature). Reasonably easy to get up and going!
Hi @here
When I run my test cases I am getting the following error:
``` Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
at ConnectionProfileManager.getConnectionManagerByType (node_modules/composer-common/lib/connectionprofilemanager.js:76:23)
at AdminConnection.importCard (node_modules/composer-admin/lib/adminconnection.js:82:46)```
Any thing I am missing?
Hi @here
When I run my test cases I am getting the following error:
```Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
at ConnectionProfileManager.getConnectionManagerByType (node_modules/composer-common/lib/connectionprofilemanager.js:76:23)
at AdminConnection.importCard (node_modules/composer-admin/lib/adminconnection.js:82:46)```
Any thing I am missing?
Has joined the channel.
Hi All,
I am new to blockchain composer online
I am trying to create a sample use case to track a box which contains medicine.
/**
* securebox tracking
*/
namespace org.acme.securebox
/**
* The types of BOX that could be moved
*/
enum BoxType {
o SecureBox
o NORMALBOX
o OTHERS
}
/**
* Status of an order
*/
enum OrderStatus {
o ORDER_PLACED
o IN_FIELD
o IN_TRANSIT
o DELIVERED
}
/**
* The production type associated with a Box
*/
enum ProductionType {
o SUGAR_MEDICINE
o BLOODPRESSURE_MEDICINE
o OTHER
}
/**
* The Lock status associated with a Box
*/
enum BoxStatusType {
o LOCK
o UNLOCK
}
/**
* A Person participant
*/
abstract participant User identified by email {
o String email
o String firstName
o String lastName
}
participant Customer identified by custId extends User {
o String custId
o String address1 optional
o String address2 optional
o String county optional
}
/**
* A manufacturer of medicine
*/
participant Manufacturer identified by companyName {
o String companyName
}
/**
* An order for a medicine/others to be fulfilled by a manufacturer
* and dispatched to an orderer (Person).
*/
asset Order identified by orderId {
o String orderId
o ProductionType productiontype
o OrderStatus orderStatus
--> Customer customer
--> Manufacturer manufacturer
}
/**
* An Medicine asset, which is related to a order
*/
asset Medicine identified by medicineName {
o String medicineName
o BoxType box
o OrderStatus movementStatus
o ProductionType productionType
--> Manufacturer owner
}
/**
* An order for a medicine/others to be fulfilled by a manufacturer
* and dispatched to an orderer (Person).
*/
asset SecureBox identified by secureBoxId {
o String secureBoxId
o BoxStatusType statustype
}
/**
* Transaction to create an order
*/
transaction PlaceOrder {
o String orderId
--> Customer customer
--> Manufacturer manufacturer
}
event PlaceOrderEvent {
o String orderId
}
this the cto file code
/**
* securebox tracking
*/
namespace org.acme.securebox
/**
* The types of BOX that could be moved
*/
enum BoxType {
o SecureBox
o NORMALBOX
o OTHERS
}
/**
* Status of an order
*/
enum OrderStatus {
o ORDER_PLACED
o IN_FIELD
o IN_TRANSIT
o DELIVERED
}
/**
* The production type associated with a Box
*/
enum ProductionType {
o SUGAR_MEDICINE
o BLOODPRESSURE_MEDICINE
o OTHER
}
/**
* The Lock status associated with a Box
*/
enum BoxStatusType {
o LOCK
o UNLOCK
}
/**
* A Person participant
*/
abstract participant User identified by email {
o String email
o String firstName
o String lastName
}
participant Customer identified by custId extends User {
o String custId
o String address1 optional
o String address2 optional
o String county optional
}
/**
* A manufacturer of medicine
*/
participant Manufacturer identified by companyName {
o String companyName
}
/**
* An order for a medicine/others to be fulfilled by a manufacturer
* and dispatched to an orderer (Person).
*/
asset Order identified by orderId {
o String orderId
o ProductionType productiontype
o OrderStatus orderStatus
--> Customer customer
--> Manufacturer manufacturer
}
/**
* An Medicine asset, which is related to a order
*/
asset Medicine identified by medicineName {
o String medicineName
o BoxType box
o OrderStatus movementStatus
o ProductionType productionType
--> Manufacturer owner
}
/**
* An order for a medicine/others to be fulfilled by a manufacturer
* and dispatched to an orderer (Person).
*/
asset SecureBox identified by secureBoxId {
o String secureBoxId
o BoxStatusType statustype
}
/**
* Transaction to create an order
*/
transaction PlaceOrder {
o String orderId
--> Customer customer
--> Manufacturer manufacturer
}
event PlaceOrderEvent {
o String orderId
}
'use strict';
/**
*
* @param {org.acme.securebox.PlaceOrder} placeOrder - the placeOrder transaction
* @transaction
*/
function PlaceOrder(placeOrder) {
console.log('placeOrder');
var factory = getFactory();
var NS_M = 'org.acme.securebox';
var NS = 'org.acme';
var order = factory.newResource(NS_M, 'Order', placeOrder.orderId);
order.productiontype = 'SUGAR_MEDICINE';
order.orderStatus = 'ORDER_PLACED';
order.manufacturer = placeOrder.manufacturer;
// save the order
return getAssetRegistry(order.getFullyQualifiedType())
.then(function (registry) {
return registry.add(order);
})
.then(function(){
var placeOrderEvent = factory.newEvent(NS_M, 'PlaceOrderEvent');
placeOrderEvent.orderId = order.orderId;
emit(placeOrderEvent);
});
}
This is the script file code
I am getting the error like Instance org.acme.securebox.Order#1234 missing required field customer
plz help me how to code the same for placing the order
Hi @here
Why `composer-sample-networks` has been back-off to `v0.16.0` ?
what is the solution for Error: Invalid or missing identifier for Type Order in namespace org.acme.securebox
Hi @prabhatkashyap
I am not getting your point?
Can you please explain it briefly?
can any one help me to solve the above problem?
The whole code is pasted previuosly
@mahoney1 can i create multiple channels for same peers share the data ???
@mahoney1 can i integrate composer application and fabric code together in one project???
@suva Error is because you are missing `customer` relationship in `PlaceOrder` function
@suva Error is because you are missing `customer` relationship in `PlaceOrder` function while adding new `Order` asset
@prabhatkashyap . Can you plz help me how to create the relation ship ?
I guess you forgot to add this `order.customer = placeOrder.customer;` in your `PlaceOrder` function
After adding this also I am getting the same error
abstract participant User identified by email {
o String email
o String firstName
o String lastName
}
participant Customer identified by custId extends User {
o String custId
o String address1 optional
o String address2 optional
o String county optional
}
/**
* A manufacturer of medicine
*/
participant Manufacturer identified by companyName {
o String companyName
}
/**
* An order for a medicine/others to be fulfilled by a manufacturer
* and dispatched to an orderer (Person).
*/
asset Order identified by orderId {
o String orderId
o ProductionType productiontype
o OrderStatus orderStatus
--> Customer customer
--> Manufacturer manufacturer
}
@prabhatkashyap This is my cto file code
function PlaceOrder(placeOrder) {
console.log('placeOrder');
var factory = getFactory();
var NS_M = 'org.acme.securebox';
var NS = 'org.acme';
var order = factory.newResource(NS_M, 'Order', placeOrder.orderId);
order.productiontype = 'SUGAR_MEDICINE';
order.orderStatus = 'ORDER_PLACED';
order.manufacturer = placeOrder.manufacturer;
// save the order
return getAssetRegistry(order.getFullyQualifiedType())
.then(function (registry) {
return registry.add(order);
})
.then(function(){
var placeOrderEvent = factory.newEvent(NS_M, 'PlaceOrderEvent');
placeOrderEvent.orderId = order.orderId;
emit(placeOrderEvent);
});
}
this is my function to place a order
```/**
* Transaction to create an order
*/
transaction PlaceOrder {
o String orderId
--> Customer customer
--> Manufacturer manufacturer
}```
In this transaction you need to pass `orderId` which is string `customer` which is a participant and a `manufacturer` which again is a participant.
But according to your logic you aren't passing `customer`
It should be like
```'use strict';
/**
*
* @param {org.acme.securebox.PlaceOrder} placeOrder - the placeOrder transaction
* @transaction
*/
function PlaceOrder(placeOrder) {
console.log('placeOrder');
var factory = getFactory();
var NS_M = 'org.acme.securebox';
var NS = 'org.acme';
var order = factory.newResource(NS_M, 'Order', placeOrder.orderId);
order.productiontype = 'SUGAR_MEDICINE';
order.orderStatus = 'ORDER_PLACED';
order.manufacturer = placeOrder.manufacturer;
order.customer = placeOrder.customer;
// save the order
return getAssetRegistry(order.getFullyQualifiedType())
.then(function (registry) {
return registry.add(order);
})
.then(function(){
var placeOrderEvent = factory.newEvent(NS_M, 'PlaceOrderEvent');
placeOrderEvent.orderId = order.orderId;
emit(placeOrderEvent);
});
}```
```/**
* Transaction to create an order
*/
transaction PlaceOrder {
o String orderId
--> Customer customer
--> Manufacturer manufacturer
}```
In this transaction you need to pass `orderId` which is string `customer` which is a participant and a `manufacturer` which again is a participant.
But according to your logic you aren't passing `customer`
It should be like
```'use strict';
/**
*
* @param {org.acme.securebox.PlaceOrder} placeOrder - the placeOrder transaction
* @transaction
*/
function PlaceOrder(placeOrder) {
console.log('placeOrder');
var factory = getFactory();
var NS_M = 'org.acme.securebox';
var NS = 'org.acme';
var order = factory.newResource(NS_M, 'Order', placeOrder.orderId);
order.productiontype = 'SUGAR_MEDICINE';
order.orderStatus = 'ORDER_PLACED';
order.manufacturer = placeOrder.manufacturer;
order.customer = placeOrder.customer;
// save the order
return getAssetRegistry(order.getFullyQualifiedType())
.then(function (registry) {
return registry.add(order);
})
.then(function(){
var placeOrderEvent = factory.newEvent(NS_M, 'PlaceOrderEvent');
placeOrderEvent.orderId = order.orderId;
emit(placeOrderEvent);
});
}```
@suva
Thanks. But while doing the testing I am getting the error Error: Invalid or missing identifier for Type Order in namespace org.acme.securebox
plz suggest me the correct way
it would be great if post me the correct relationship
@prabhatkashyap
Hi all, anyone has a good way to handle the number precision problem in the transaction function (as well as test case)?
Once I start doing some simple math in the transaction with Double data type, it won't get the exact value I wanted, then I got error like: `AssertionError: expected 50000.00000000001 to equal 49999.99999999999`
I believe the root cause comes from the floating number precision in JavaScript, as the transaction is written in JavaScript.
So anyone has any suggestion on this? Other than not use Double and only use Integer/Long.
Has joined the channel.
Would anyone have some tips re: how to speed up composer transactions? I have some rather trivial chaincode running on composer 16/fabric 1.0.5, and I'm seeing average transaction times of 8-10 seconds.
Hi,
How to use concept using Node Js
Has joined the channel.
Hi guys, I'm trying out composer and I'm particularly interested in `composer-rest-server`. At this point in time, I suppose that it is not advisable to use it in a production environment, right?
Has joined the channel.
i have a dumb question. what am i supposed to do with the .exists return promise object? how do i evaluate true/false?
return getAssetRegistry('org.subledger.assets.Account')
.then(function (assetRegistryAccounts) {
console.log('result '+assetRegistryAccounts.exists(tx.id));
})
gives result [object Object]
nevermind. i got it working by chaining another .then
return getAssetRegistry('org.subledger.assets.Account')
.then(function (assetRegistryAccounts) {
return assetRegistryAccounts.exists(tx.id)
}).then(function (result) {
console.log('result of exists('+tx.id+') '+result);
});
Has joined the channel.
Hey guys I keep seeing this:
Connection fails: Error: Error trying to ping. Error: Composer runtime (0.16.2) is not compatible with client (0.16.0)
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Composer runtime (0.16.2) is not compatible with client (0.16.0)
Error: Error trying to ping. Error: Composer runtime (0.16.2) is not compatible with client (0.16.0)
at _checkRuntimeVersions.then.catch (/home/ubuntu/.nvm/versions/node/v8.9.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)
at
Anyone seen this just yet, looks like the update to 0.16.2 keeps crushing my environment
Any guidance on how to deal with this, i tried to restrict the version within package.json as such:
"composer-admin": "0.16.0",
"composer-client": "0.16.0",
"composer-common": "0.16.0",
"composer-connector-embedded": "0.16.0",
but still doesn't work :(
Has joined the channel.
Hi..We have recently started using Hyperledger composer. I was wondering if you have plugins available for using it in Webstorm
does hyperledger fabric generates new genesis block for each deployed network? are connectionprofiles different from cards ?
does hyperledger fabric composer generates new genesis block for each deployed network? are connectionprofiles different from cards ?
@mmick yes it does, but each time you have a fresh deployment, and yes connection profiles are different from cards
@mmick If you are asking if a new genesis block is generated whenever a business network is deployed, then no it doesn't. Business network cards are the combining of 1) connection profile, 2) identity crypto material (or fabric-ca registered id and secret) 3) a name of the business network to connect to (which is optional as a card can exist to deploy a business network)
[ ](https://chat.hyperledger.org/channel/composer?msg=Fsw8oFhsq8ipq3NDR) @arsalankhalid This is a conflict between the local version (fixed in package.json) and the globally installed version. the via npm install -g composer- .... installed packages have to have the same versions as the ones you declared in package.json
@arsalankhalid You've deployed a business network using 0.16.2, but your client is still at 0.16.0. A client version needs to be at 0.16.2 or a never 0.16 version (at the moment the latest is 0.16.2), so I suggest you change your package.json for your client app to be 0.16.2, delete the node_modules directory and then do npm install.
@arsalankhalid You've deployed a business network using 0.16.2, but your client is still at 0.16.0. A client version needs to be at 0.16.2 or a newer 0.16 version (at the moment the latest is 0.16.2), so I suggest you change your package.json for your client app to be 0.16.2, delete the node_modules directory and then do npm install.
Thanks @davidkel works!
Has joined the channel.
3 weeks ago my business network worked correctly and my business network cards worked properly to connect to it on IBM Bluemix. I just got back into it this morning and couldnt connect. The "Connect Now" button was greyed out. I wiped all my cards, cleaned up all docker containers, and npm updated all my composer cli tools. Now when I run composer-playground and re-create my business network card and recreate an empty business network the web app gives me this error:
```Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: Error starting container: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer/vendor/gopkg.in/olebedev/go-duktape.v3 In file included from chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:7:0: chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go: In function '_duk_error': chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.h:510:127: warning: right-hand operand of comma expression has no effect [-Wunused-value] (duk_error_raw((ctx), (duk_errcode_t) (err_code), (const char *) (DUK_FILE_MACRO), (duk_int_t) (DUK_LINE_MACRO), __VA_ARGS__), (duk_ret_t) 0) ^ chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:153:2: note: in expansion of macro 'duk_error' duk_error(ctx, err_code, "%s", str); ^ # composer /opt/go/pkg/tool/linux_s390x/link: running gcc failed: fork/exec /usr/bin/gcc: cannot allocate memory "```
Is it as simple as the peer(s) being out of memory? Any tips on how to tackle this would be great.
[ ](https://chat.hyperledger.org/channel/composer?msg=iR6WkoGeLWd4Q2Tpk) @here Any reasons? Please
I'm deploying multi-org on multiple machines but when i run composer network start command on VM1 (org1) i'm getting Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND Error
Hello all. Is it possible to have sub-directories in the models folder when building a business network? When there are a lot of .cto files, it'd be nice to be able to have a hierarchy of folders. VS Code plugin seems to fail to recognize them if they are recursively nested.
Is anyone tried LIMIT and Skip?
For me it never worked :/
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=kcXXjZQogKeB8DjQP) @JeremyStanton I am also getting the same error.
[ ](https://chat.hyperledger.org/channel/composer?msg=kcXXjZQogKeB8DjQP) @here @JeremyStanton I am also getting the same error.
Just a general question to anyone here. Would you put a Composer Application in production? In my opinion you lose some control with composer.
@varun-raj LIMIT and SKIP currently don't work against Hyperledger Fabric because it ignores the values composer sends to it. Hopefully this will be addressed in the fabric 1.1 release
@JeremyStanton I would suggest contacting your service provider as it really does look just like an out of memory problem.
Hey @davidkel @here I m getting following error on local system while deploying basic-network on composer using fabric network. Is there anything I am doing wrong or missing something?
```Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: error starting container: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer/vendor/gopkg.in/olebedev/go-duktape.v3 In file included from chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:7:0: chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go: In function '_duk_error': chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.h:510:127: warning: right-hand operand of comma expression has no effect [-Wunused-value] (duk_error_raw((ctx), (duk_errcode_t) (err_code), (const char *) (DUK_FILE_MACRO), (duk_int_t) (DUK_LINE_MACRO), __VA_ARGS__), (duk_ret_t) 0) ^ chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:153:2: note: in expansion of macro 'duk_error' duk_error(ctx, err_code, "%s", str); ^ # composer/vendor/gopkg.in/olebedev/go-duktape.v3 chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.go:134: constant 18446744073709551615 overflows int "```
[ ](https://chat.hyperledger.org/channel/composer?msg=EGERZtY3RieHgexWp) @davidkel Thanks for the reply. Is there any other workaround for this?
@varun-raj unfortunately not. The JIRA we raised is here
https://jira.hyperledger.org/browse/FAB-5369
which references this JIRA
https://jira.hyperledger.org/browse/FAB-2809
which looks like it's not targetted for 1.1 but perhaps 1.2 You could try commenting on the JIRA but I guess a decision has been made on which release to address this.
Got it
@prabhatkashyap please could you avoid using the (@)here as it does spam everyone on the channel. It really is only used for announcements. As for your problem, you are trying to deploy to a pre-release of fabric 1.1 using a 0.16.x or older version of composer which won't work. We don't have an official release yet that supports a pre-release of fabric 1.1
But when we've 100s data, the fetching becomes pretty slow right
@varun-raj Yep and we raised this issue with the fabric team ages ago but there's not a lot we can do :-(
Oh. Let see
@davidkel Thanks for solution and Sorry for using (@)here I will not use it any more I was using it to get answer. But I will keep that in mind.
Also is there any reason to backoff from 0.17.0 to 0.16.0?
@prabhatkashyap as for your question about composer-sample-networks, it was restored back to pulling down 0.16.x libraries rather than the unstable 0.17 packages. 0.17 hasn't been released and won't work with the unit tests for the composer-sample-networks
0.17 is the next version that drops support for fabric 1.0 and starts to support fabric 1.1 and the node.js chaincode capability
can anyone plz help me to solve the error
Error: Invalid or missing identifier for Type Order in namespace org.acme.securebox
I have already posted the code
again I am posting the code
Also is there a way to view and issue identity to a participant from node client?
asset Order identified by orderId {
o String orderId
o ProductionType productiontype
o OrderStatus orderStatus
-->Manufacturer manufacturer
-->Customer customer
}
transaction PlaceOrder {
o String orderId
--> Customer customer
--> Manufacturer manufacturer
}
function placeOrder(placeOrder) {
console.log('placeOrder');
var factory = getFactory();
var NS_M = 'org.acme.securebox';
var order = factory.newResource(NS_M, 'Order', placeOrder.orderId);
order.productiontype = 'SUGAR_MEDICINE';
order.orderStatus = 'ORDER_PLACED';
order.manufacturer = placeOrder.manufacturer;
order.customer = placeOrder.customer;
// order.customer = factory.newRelationship(NS, 'PrivateOwner', placeOrder.orderer.getIdentifier());
// save the order
return getAssetRegistry(order.getFullyQualifiedType())
.then(function (registry) {
return registry.add(order);
})
.then(function(){
var placeOrderEvent = factory.newEvent(NS_M, 'PlaceOrderEvent');
placeOrderEvent.orderId = order.orderId;
emit(placeOrderEvent);
});
}
This the flow
I am unable to place the order transaction
```var order = factory.newResource(NS_M, 'Order', placeOrder.orderId);
```
Here you've to pass the third parameter as some value
` placeOrder.orderId` will be undefined
{
"$class": "org.acme.securebox.PlaceOrder",
"orderId": "1234",
"manufacturer": "resource:org.acme.securebox.Manufacturer#6993",
"customer": "resource:org.acme.securebox.Customer#9950"
}
I am passing it in submit transaction
plz suggest I need to change any relation in cto file
Try printing and see if you're getting the right content
@davidkel Ok, thanks. As per the documentation https://hyperledger.github.io/composer/stable/installing/development-tools.html ,
to install hyperledger fabric we need to do curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip and then ./downloadFabric.sh . But, it is downloading 1.1.0-preview instead
@davidkel Ok, thanks. As per the documentation `https://hyperledger.github.io/composer/stable/installing/development-tools.html` ,
to install hyperledger fabric we need to do
```curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip```
and then `./downloadFabric.sh` . But, it is downloading `1.1.0-preview` instead
downloadFabric.sh gets 1.1.0-preview
@prabhatkashyap you have set the fabric_version to 1.1 as shown in the output (FABRIC_VERSION). You should either unset it or set it to `hlfv1`
[ ](https://chat.hyperledger.org/channel/composer?msg=PdmFEpkL2RmXs7FRv) @davidkel I am not setting fabric version explicitly, it's set by downloadFabric.sh only
[ ](https://chat.hyperledger.org/channel/composer?msg=PdmFEpkL2RmXs7FRv) @davidkel I am not setting fabric version explicitly, it's set by downloadFabric.sh only. I had to unset it and now it is working.
@varun-raj You should be able to issue an identity to a participant from the node client, you can look at the source here to see how the CLI does it
https://github.com/hyperledger/composer/blob/master/packages/composer-cli/lib/cmds/identity/lib/issue.js
@prabhatkashyap just downloaded the package to check and couldn't find anywhere where it was set explicitly. If it was not set then it defaults to hlfv1
[ ](https://chat.hyperledger.org/channel/composer?msg=5h9MYMgS8A3yaEwdg) @davidkel It would be really helpful then if the composer tutorial doesn't points us to master branch to get sample applications instead points to a stable branch from which we should learn how to develop applications, as in our case, we were following just the way tutorial is explaining to write unit test cases for our logic and somehow mistook master to be a stable version
Have a look, https://hyperledger.github.io/composer/stable/business-network/testing . It is pointing to https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js under Creating Unit Tests section
@prabhatkashyap The current master branch of composer-sample-networks is the stable branch
It was unfortunate that the samples very updated to point to 0.17
It was unfortunate that the samples were updated to point to 0.17
That's why it was corrected
[ ](https://chat.hyperledger.org/channel/composer?msg=wwLYhtKQ29X6XL3cy) @davidkel Yes and that caused a lot of confusion to us, maybe from next time we too will double check on if we are understanding sample apps from a Release branch which cannot be backed off randomly to save our time
@prabhatkashyap Be aware that this may change when 0.17 is released. No decision as yet has been made on how to make 2 sets of samples available
@davidkel Does this mean that sample applications are going to be available for only recent versions and not for older versions for now?
I would assume that there will be samples for the 0.16.x stable release as well as the next release stream
[ ](https://chat.hyperledger.org/channel/composer?msg=QubBNmqYgjefWFP6M) @davidkel Cool, it would be great then. We are building our product using composer and are constantly taking help from the sample applications to develop a better and in depth understanding. Thanks a ton!
Has joined the channel.
@varun-raj I got error before that. It showing relationship problem
asset Order identified by orderId {
o String orderId
o ProductionType productiontype
o OrderStatus orderStatus
-->Manufacturer manufacturer
-->Customer customer
}
transaction PlaceOrder {
o String orderId
--> Customer customer
--> Manufacturer manufacturer
}
event PlaceOrderEvent {
o String orderId
}
this is my cto file
@varun-raj
Can you send me the exact error
??
Error: Invalid or missing identifier for Type Order in namespace org.acme.securebox
You're passing an string identifier or is it integer???
Sometimes it automatically converted to integer
I am taking all as integer
please refer the code I posted
if u want i can post the same code again
@varun-raj
The code looks fine
Only thing is that the orderId is not getting properly set I think
Can you plz suggest what would be the right way
Try generating it randomly
I've something like this : ```function getRandomId() {
return Math.floor(Math.random() * (10000 + 1)).toString();
}
```
But it's very basic
Try to build a hash
I just got to my desk. Thanks for the helpful reply @davidkel
@suva The message you are getting comes from the call to `newResource` and it's complaining that the id is not a string. So either it is undefined, null or a different type (eg boolean, string etc). What I suggest is that you output the value of placeOrder to see what is going into that object into the TP function. You can do console.log and if you are running in playground you should see the output in the browser console.
@davidkel I have taken the idea from sample vehicle business network example in composer playground
it is the same what I am using
Clipboard - December 28, 2017 7:15 PM
@davidkel This is the error message
@suva That's a different message to the missing or invalid identifier, so I assume you have got past that problem
@suva That's a different message to the missing or invalid identifier, so I assume you have got past that problem, but the resolveRelationship is not a problem in this context as I think it's because the 2 relationships in your request don't exist.
Hi everyone.
Does the "resolveAll()" function resolve relationship if caller doesn't have explicite read right on the object of the relationship ?
Like : ObjectA has a relationship with ParticipantA. If participantB does a resolve on objectA, is the relationship resolve ?
For now, I only have the id of participantA.
Thx
asset Order identified by orderId {
o String orderId
o ProductionType productiontype
o OrderStatus orderStatus
-->Manufacturer manufacturer
-->Customer customer
}
transaction PlaceOrder {
o String orderId
--> Customer customer
--> Manufacturer manufacturer
}
event PlaceOrderEvent {
o String orderId
}
function PlaceOrder(PlaceOrder) {
console.log('PlaceOrder');
var factory = getFactory();
var NS_M = 'org.acme.securebox';
var order = factory.newResource(NS_M, 'Order', PlaceOrder.orderId);
order.productiontype = 'SUGAR_MEDICINE';
order.orderStatus = 'ORDER_PLACED';
order.manufacturer = PlaceOrder.manufacturer;
order.customer = PlaceOrder.customer;
// order.customer = factory.newRelationship(NS, 'PrivateOwner', placeOrder.orderer.getIdentifier());
// save the order
return getAssetRegistry(order.getFullyQualifiedType())
.then(function (registry) {
return registry.add(order);
})
.then(function(){
var placeOrderEvent = factory.newEvent(NS_M, 'PlaceOrderEvent');
placeOrderEvent.orderId = order.orderId;
emit(placeOrderEvent);
});
}
This the code I am using for testing
1st one is the model file code
and function is in js file
Plz suggest where I will change to solve this error message
Error: Invalid or missing identifier for Type Order in namespace org.acme.securebox
@davidkel
plz find all the details for your reference
if anybody found any error on the above code plz let me know I am struggling to solve the error
@suva As I suggested you need to console.log the contents of the placeOrder object
Also I note that placeOrder is being called twice ?
Hi everyone,
I have a server who does a resolveAll on a objectRegistry.
PB : the objects have a relationship with a participant and the resolveAll function seems to not resolve the relationship.
Code :
```
bizNetworkConnection.getAssetRegistry(pkgODM)
.then((odmsRegistry) => {
odmsRegistry.resolveAll().then((allODMs) => {
var ret = [];
for (let i = 0; i < allODMs.length; i++) {
console.log("from:", allODMs[i].from.memberId); // the result is "undefined" <----------
console.log("to:", allODMs[i].to.memberId); // the result is "undefined" <----------
[...]
```
I add that the "caller" have the READ right on "participants.Member"
?
@davidkel Thanks . I solved the problem. As placeorder called two times thats why i got the error message
Same for revolve with one Id
Same for resolve with one Id
any body working with zerotoblockchian tutorial on yt!!
Hello All, I have been trying the composer models to work through a business models and associated scripts (business logic) alongside the access control list definition. Quick query; does Fabric chaincode now supports writing transactions (business logic) in Javascripts (as is written in Composer), as I thought it only supports go code and is underway supporting Java code support?
Has joined the channel.
Has joined the channel.
I see instructions for both a kubernetes based deployment as well as a deployment using the IBM cloud blockchain service dashboard. Which one should I be using? Is one preferred over the other? The docs appear to lean in the direction of kubernetes but it's not clear to me if that's because the docs are intended for sandbox testing rather than enterprise deployment.
looks like a question for IBM support. I'll let them know.
Can we use composer for distributed network ? Like making one system peer of other, please let me know if any steps or documentation is available in this regard
Has joined the channel.
Hi,
I am getting the following error when I connect to my network
```Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'```
Hi,
I am getting the following error when I connect to my network
```Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'```
Hi all,
Anyone has seen my pb ?
I have a server who does a resolveAll on a objectRegistry.
PB : the objects have a relationship with a participant and the resolveAll function seems to not resolve the relationship.
Code :
```
bizNetworkConnection.getAssetRegistry(pkgODM)
.then((odmsRegistry) => {
odmsRegistry.resolveAll().then((allODMs) => {
var ret = [];
for (let i = 0; i < allODMs.length; i++) {
console.log("from:", allODMs[i].from.memberId); // the result is "undefined" <----------
console.log("to:", allODMs[i].to.memberId); // the result is "undefined" <----------
[...]```
thx
i have written a 1000 lines smart contract using composer. it has supply chain use cases i want to know its deployment options within fabric stack
@prabhatkashyap see https://stackoverflow.com/questions/48005067/not-able-to-run-composer-rest-server as it is a similar question to yours. Also I note that you have installed using sudo which we don't recommend unless you know what you are doing with npm otherwise you can hit issues
@CorentinPacaud can you raise an issue with a recreate of your problem please, ie would need a simple bna and client code that can demonstrate the problem ? Also please provide environment details (such as composer version, real fabric or unit test case etc)
well, tupically, this is just a relionship I try to "resolve" with my NodeJs server. Any link to post the issue ? github composer ?
well, typically, this is just a relionship I try to "resolve" with my NodeJs server. Any link to post the issue ? github composer ?
well, typically, this is just a relationship I try to "resolve" with my NodeJs server. Any link to post the issue ? github composer ?
@CorentinPacaud https://github.com/hyperledger/composer/issues but need an example recreate to demonstrate the problem, plus details as described in the issue section when creating a new issue please
Ok.
Can we do a participantRegistry.getAll() on an abstract class of particpants ?
Has joined the channel.
hello
the rest-server that gets generated by composer is a centralized component in your app? why should you use composer and not use a normal backend?
is this question for me ?
it's for anyone who can answer
[ ](https://chat.hyperledger.org/channel/composer?msg=NKNPJCGRZg9mFExCN) @CorentinPacaud no, there are no participant registries for abstract participant types - only concrete participant types
Ah ok ^^
ok thx @sstone1
[ ](https://chat.hyperledger.org/channel/composer?msg=LKCNraKLHxrWNvqas) @RzvnB what do you mean by centralized?
the server has to run on one machine
"one"
the ledger is not distributed to everyone, but centralized on the server
am I getting this wrong?
yep, afraid so ;)
the blockchain ledger and world state are maintained within a hyperledger fabric network that should be distributed across multiple applications
the blockchain ledger and world state are maintained within a hyperledger fabric network that should be distributed across multiple organizations
you deploy hyperledger composer business networks into that hyperledger fabric network; again, those are deployed across multiple organizations
all of the composer + fabric clients, including the REST server, are simply accessing that distributed hyperledger fabric network - they do not hold a copy of the blockchain ledger or world state
for each deployed business network, i'd expect each organization to deploy their own copy of the REST server. this is required because the REST server needs a private key to sign transactions, and you wouldn't want to share that across multiple organizations.
ok, I think I got it
is there a way to make a mobile app built around a fabric network?
yep - you can call the composer REST server from a mobile app in the same way you would for any other REST API
I was thinking of having the fabric network distributed across mobile devices
but, I don't think this is possible
nope, i'm not aware of any blockchain technology that lets you maintain the ledger on mobile devices
really? do you know why? is it the space constraints?
space constraints, processing power, unreliable networking
blockchain technologies for business (such as those in hyperledger) are about businesses using permissioned blockchains to share data and trade; would be unlikely that they choose to run their business on mobile devices
@here I just published “Debug your Blockchain business network using Hyperledger Composer”: https://medium.com/@mrsimonstone/debug-your-blockchain-business-network-using-hyperledger-composer-9bea20b49a74
@sstone1 i need your help i'm building an authentication login page what is the best other option instead of the rest api for authenticating the participant
New question : in a transaction function, can we get the current participant who is trying to make the transaction without passing its id in the transactionObject ?
@BCGEEKS the options are 1) use the authentication support built into the REST server as described in the documentation or 2) write your own authentication code
@CorentinPacaud `getCurrentParticipant()`
thx ;)
if i'm writing my own authentication code what will be the way of authenticating the participant appreciate if there is an example or sample app
@sstone1 if i'm writing my own authentication code what will be the way of authenticating the participant appreciate if there is an example or sample app
there is no example or sample app i know of, everyone just uses the built in code ;)
the REST server maps externally authenticated users (using passport) to business network cards. it uses the authenticated users business network card when creating new connections to the business network.
Has joined the channel.
Hello ! I need some help, I have a problem in creating peer admin card. After downloadfabric.sh and startFabric.sh when i run createPeerAdminCard.sh, it creates the business network card but it fails to save the card.
Screenshot of the problem.png
how to make user ids or cards for users to connect to fabric app as orderers or peers?
@souradeep please run `ls -lart ~/.composer` and paste the output in here
Screenshot .png
@mmick are you trying to add new orderers or peers to a fabric network? this is not done the same way as adding business network participants (users of an app) to a composer business network. you need to consult the fabric documentation for adding new orderers or peers.
@souradeep your composer directory is owned by `root` and the `composer` command cannot access it; suggest you `sudo chown -R souradeep: ~souradeep/.composer`
Thanks a lot ,@sstone1 !! Silly mistake.
@sstone1 like if i make an app like build by bob in zerotoblockchain how can i make customers and dealers to join my network and use the functionality built for them?
i mean i have to cards for each users that want to use my app in any role or there will be some sort of sign up method?
i mean i have to generate cards for each users that want to use my app in any role or there will be some sort of sign up method?
Does anyone here have experience deploying on IBM's Bluemix platform via these walkthroughs:
https://ibm-blockchain.github.io/setup/
https://ibm-blockchain.github.io/simple/
??
I have a cert+key question about creating new business network cards if so.
@BCGEEKS would you like to share your authentication code? thanks!
I worked out my connection issues by switching to this walkthrough: https://ibm-blockchain.github.io/platform-deployment/
@mmick when you deploy a blockchain business network you must specify an initial set of participants - we call these participants the business network administrators. see this page for details: https://hyperledger.github.io/composer/stable/business-network/bnd-deploy
once deployed, only those initial set of participants can interact with the network. if other participants want to join the network, then an existing participant must:
1) create a new participant instance and add it to a participant registry
2) issue/bind an identity to that participant instance
2) will create a business network card for the new participant to use to interact with the network.
there's no self signup built in, but you could build a portal that allows users to self signup - however that self signup portal must be using a business network card for an existing participant that has all the correct permissions to create new participants and issue/bind identities
Has joined the channel.
Has joined the channel.
Has joined the channel.
hi, I'm following the lab of this week, and i'm stuck on the "composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network" command. In the tutorial it says the PeerAdmin Card is already created but i get the response: "Error: Card not found: PeerAdmin@hlfv1"
@andrepadez sounds like the business network card hasn't been imported. what lab are you following? if you ran `startFabric.sh` did you run `createPeerAdminCard.sh` as well? did it have any errors? what is the output of `composer card list` ?
well i haven't done any of that... that might be the problem haha
Has joined the channel.
Hi...I am having the same issue..of not finding PeerAdmin card...but I cannot find the file startFabric.sh
@chhabras you should run it from ~/fabric-tools
https://hyperledger.github.io/composer/stable/installing/development-tools
"Step 4: Install Hyperledger Fabric"
Now getting a different error,,,"composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network
composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network
Error trying install composer runtime. Error: No valid responses from any peers.Response from attempted peer comms was an error: Error: Connect Failed
Hello I am looking for information on which Consensus Algorithms is used in hyperledger composer. Thanks for some links or explantations.
@sstone1 and @andrepadez ...Can one of you help?
@chhabras your fabric is not running. you have not run `startFabric.sh`, or the Docker containers for the Fabric have died. you can check using `docker ps` (only running containers) and `docker ps -a` (all containers)
@rbole composer uses the consensus mechanism provided by the underlying blcokchain technology, which is hyperledger fabric
@sstone1 thanks for this info, but in the documentation I found only that fabric use a pluggable architecture such that developers can configure their deployment in case of consensus algorithm. I have already successfully installed hyperleder-composer and run a sample network. I can use it with the composer-rest service as well. Where can I see which consensus algorithm is currently used in my implementation?
@rbole Our fabric dev server is just that a development server where you can try your business network on a real fabric. It is configured with a `solo` orderer which exists in fabric for development purposes only. If you want to do a production environment then fabric has a kafka based concensus system which provides crash fault tolerance. You would need to create your own fabric network to set that up and if you want to do that then you will need to look at the hyperledger fabric documentation. Composer will be able to deploy a business network to that environment.
@rbole Our fabric dev server is just that a development server where you can try your business network on a real fabric. It is configured with a `solo` orderer which exists in fabric for development purposes only. If you want to do a production environment then fabric has a kafka based concensus system which provides crash fault tolerance. You would need to create your own fabric network to set that up and if you want to do that then you will need to look at the hyperledger fabric documentation http://hyperledger-fabric.readthedocs.io/en/release/. Composer will be able to deploy a business network to that environment.
@davidkel hi, thanks for your response. Currently I'm working on a prototype implementation for a master essay and next semester for my master thesis, so the development environment would be fine. As a next step for the master-thesis I will go further more in production environment, but for know it should be ok, so I'm still a beginner in this field and try to learn as much as possible.
Hello all, I am wondering if there is anyway to create a helper structure in composer ?
For example if I have an asset which includes a location field
`asset ExampleAsset identified by id{
o String id
o Location location
}`
And I would like to have a structure *"location"* which will include fields like longitude, latitude and accuracy.
But I do not wish to define an asset "location" and for it to exist separately and have its own repository etc...
@sstone1 and @andrepadez ...Many thanks...I was able to execute that step
I am now struck at the next step ...."composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card" as this is giving the error...."Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Transaction returned with failure: Error: Get http://couchdb:5984/composerchannel/tutorial-network%00%00$syscollections%00$sysdata%00?attachments=true: dial tcp: lookup couchdb on 127.0.0.11:53: no such host"
Has joined the channel.
@inna you need a `concept` which is similar to a `struct` in C. here's an example:
https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/models/bond.cto#L28
@chhabras you seem to be unable to start the fabric network. the error message says that couchdb is not running, and couchdb is a container started by the `startFabric.sh` script. what is the output when you run this script? what is the output of `docker -v` and `docker-compose -v`? what operating system are you running these commands on?
@sstone1 ...Many thanks for all of your help...now I have been able to execute the commads
Has joined the channel.
Hi. When I start fabric network using startFabric.sh, I get following error. Error response from daemon: Container 08e78f04053e982d3a7f1f9d04013a816497daf9fced3ce42c0225e86bde87b6 is not running
For some reason, the container exits as soon as it starts. When I do 'docker ps', I don't see any container however I do see the container in question when I do 'docker ps -a'
[opc@hyperledger fabric-tools]$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
08e78f04053e hyperledger/fabric-peer:x86_64-1.1.0-preview "peer node start -..." 31 seconds ago Exited (1) 29 seconds ago peer0.org1.example.com
6148aba58a63 hyperledger/fabric-orderer:x86_64-1.1.0-preview "orderer" 31 seconds ago Exited (2) 30 seconds ago orderer.example.com
f14a80898243 hyperledger/fabric-ca:x86_64-1.1.0-preview "sh -c 'fabric-ca-..." 31 seconds ago Exited (1) 30 seconds ago ca.org1.example.com
45227305833f hyperledger/fabric-couchdb:x86_64-1.1.0-preview "tini -- /docker-e..." 31 seconds ago Exited (1) 30 seconds ago couchdb
@kiranthakkar are you intentionally trying to use Fabric v1.1? can you run `docker logs peer0.org1.example.com` so we can see why the containers are crashing?
Hi everyone, I was trying to create a bna file using this command 'composer archive create --sourceType module --sourceName basic-sample-network' but it gives Error: Cannot find module 'basic-sample-network' . I have successfully created and imported business network card and also run composer runtime install - n basic-sample-network -c PeerAdmin@hlfv1 successfully but i dont understand how should i create a bna file and deploy it on a rest server. PFA attached screenshot.
errorn on creating BNA file.png
@Abhi119 have you followed the developer tutorial? creating a BNA from a directory is covered there: https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
you want `-t dir` not `-t module`
hello everyone,
I have developed an application using composer on my local server and deployed it. Now i want my node to interact with the application. If the are present on the same server then easily it can be achieved but if i have both of them present in different servers or systems, how will i achieve that. Suppose my composer application and fabric is present in `server 1` and node application in `server 2`. How can i allow my node application in `server 2` interact with my composer application in `server 1`?
@aviralwal the connection profile `connection.json` specifies all of the hostnames and ports of the blockchain network; you need to set the correct hostname/IP addresses for your network
@sstone1 where is the `connection.json` defined? Or do i have to define it?
@aviralwal i suggest you read this tutorial:
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html
@sstone1 I ahve an existing business network so i was following https://hyperledger.github.io/composer/reference/composer.archive.create.html . but thanks now i have created a new sample network, org.garda.biznet.cto and all the files as mentioned in https://hyperledger.github.io/composer/tutorials/developer-tutorial.html but while running 'composer archive create -t dir -n .' command its fails with error 'TypeNotFoundException: Type ChangeAssetValue is not defined in namespace org.garda.biznet
Command failed' how should i fix this?
by defining the type ChangeAssetValue in the namespace org.garda.biznet ;)
or by fixing/removing the reference to the type ChangeAssetValue
@sstone1 Thank you very much, this works :)
np
[ ](https://chat.hyperledger.org/channel/composer?msg=idGckcMSk5uC6tcbX) @Abhi119 - the easiest way to find errors in your Model File is to import it into Composer Playground, and the line numbers of errors will be shown. If you haven't installed Playground locally, you can you the online version. Since you don't have a BNA archive yet, you can't import that, but you can cut and paste your model file into the editor.
I have been working with Composer tools for a while and developed some PoCs in last few months, but the following questions still confuses me. It would be great if you could you please suggest the address the following which would help me move forward on production ready development:
1. Is the business logic created in JS file equivalent to Chaincode after the BNA is deployed in Fabric network?
2. The consensus algorithm used seem to be Solo. Can I change the consensus algorithm after deploying the BNA file in Fabric Network?
3. How can I apply endorsement policies to a particular transaction/request which is defined in Hyperledger Composer?
4. The ACL seems to apply to the Participants on the Single Peer. How can we apply ACL rules to different Nodes/Peers on the Fabric Network?
Hi All,
I am having trouble with the last steps of the Two-Orgs tutorial.
Following is the output I get on the two last steps. I will also post the bash script I use to automate the tutorial execution. Sometimes the execution completes without error, and sometimes I get the error reported below.
I am running the tuto on MacOS with Docker Toolbox, but I also tried with Docker4Mac and got the same issue.
I would be happy to manually check the cert chain with openssl, but I am not sure where to look for. Ie which container is "deserializing" here ?
Any hint appreciated!
```
================ STEP: EIGHTEEN ==============
Successfully created business network card file to
Output file: alice@tutorial-network.card
Command succeeded
Successfully imported business network card
Card file: alice@tutorial-network.card
Card name: alice@tutorial-network
Command succeeded
Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate has expired or is not yet valid
Command failed
================ STEP: NINETEEN ==============
Successfully created business network card file to
Output file: bob@tutorial-network.card
Command succeeded
Successfully imported business network card
Card file: bob@tutorial-network.card
Card name: bob@tutorial-network
Command succeeded
Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate has expired or is not yet valid
Command failed
```
Denied to post bash script. Will upload on github.
Here is the GH link to the script repo: https://github.com/odalle/HL-Composer-Tuto-2Orgs
@odalle what version of cryptogen do you have installed?
```$ cryptogen version
cryptogen:
Version: 1.0.2
Go version: go1.7
OS/Arch: darwin/amd64
```
you need to update that to the same version of the fabric that you're using
i believe there was a fix in fabric v1.0.4 for this exact problem
Excellent. Thanks.
@ [ ](https://chat.hyperledger.org/channel/composer?msg=RatdQnRuoxZKqFjrw) @sstone1 So composer has to be present on the server in which the node application is present, the fabric blockchain can be present in a different server?
Also how does node decide at which port or ip does it have to hit the functions of composer-client since all we write is `require('composer-client').BusinessNetworkConnection;`
@aviralwal the Composer client (composer-client npm module, or the REST server) can communicate with a running Fabric anywhere. the connection profile in the business network card that you pass to `BusinessNetworkConnection.connect` in your node application must have the correct hostnames/IP addresses for the Fabric you are trying to connect to.
@sstone1 Ok.. Inside the `BusinessNetworkConnection.connect()` if i don't pass anything then by default it selects the localhost and the ports... And from where does it get the card info? When i run `composer card import --file networkadmin.card`, I'll get the admin card which i'll have to then add to my node application.
I got some clarity in things... I'll try these things out and then get back in case of anything... Thanks @sstone1 ... kudos to you :)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=QwMx2x7a5m7qEZmkq) @sstone1 Just to confirm that solves the issue. Thanks again.
Team , I am using Composer 0.16.0 . I need to enable the authentication for composer rest server using passport Github strategy as per this link https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
Please suggest , which file needs to be updated for export COMPOSER_PROVIDERS
for enabling authentication for composer rest server .
it's not a file, it's an environment variable
it shows you how to set the environment variable by running `export`
that's my initial perception but i was not sure . Thanks @sstone1 for confirmation.
Has joined the channel.
Has joined the channel.
Hi, I am using hyper ledger composer and enabled rest service authentication using passport service to use Github username and secret.
My doubt is when we issue new identity to user and add business card to wallet,
how this github credentials and composer wallet work to together ?
for rest call and execution?
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=3n6RwxfBnaeXm699h) @Abhijeet.K - I assume you have seen this document https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
as you are
[ ](https://chat.hyperledger.org/channel/composer?msg=3n6RwxfBnaeXm699h) @Abhijeet.K - I assume you have seen this document https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
as you are refering to the Wallets. For each Github user you would set up a default Wallet and those
[ ](https://chat.hyperledger.org/channel/composer?msg=3n6RwxfBnaeXm699h) @Abhijeet.K - I assume you have seen this document https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
as you are referring to the Wallets. For each Github user you would set up a default Wallet and the card specified as the default is used for that Guthub user, until you specify a different default. The Wallets and their relationship to Github users can be persisted in a Mongo database for example. The persistence is described in this doc:
https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
Thanks @rthatcher, so if I understood it correctly GitHub username secret is used to connect to Rest service (for authentication) and card (default) generated by composer is used to interact with BusinessNetwork.
Has joined the channel.
Hi all, for someone coming from Ethereum, would this be a fair description of Composer/Fabric. Composer creates Dapps for Fabric?
cd
yeah, that's kind of it
you can use Fabric to create Dapps for Fabric by writing chaincode
Composer is a framework that makes it easier and quicker to build Fabric Dapps by providing a higher level of abstraction (by focusing on the business problem) and providing utilities like client APIs, REST APIs, web application generators etc
@sstone1 why should one write in chaincode when all functionality is made available in composer?
not all the functionality from fabric is available from composer today, for example chaincode to chaincode queries cannot be done from composer. that is a problem that we'd like to fix, by exposing the underlying fabric shim APIs to transaction processor functions
I see plus, i think IBM is making FABRIC open source a good thing but what you would you like to say about IBM blockchain cloud platform! If one develops a DApp with fabric will he be converted to be there permanent customer?
I see plus,IBM is making FABRIC open source a good thing but what you would you like to say about IBM blockchain cloud platform! If one develops a DApp with fabric will he be converted to be there permanent customer?
Fabric is completely open source and has ~30 organisations contributing to it, there's no lock in whatsoever - you can run it anywhere you want without paying any money
i have seen a demo on YT about adding a new validating peer to the fabric network after deploying the network. it was shown as a hectic task and then displayed as a child's play on the IBM blockchain cloud platform. Just wanted to get my mind clear!
Plus how to view genesis block of my network. Thanks @sstone1
anybody is free to build a similar experience around the open source codebase - all the required technology is all there for anybody to use
genesis block is part of the ledger - that's a fabric operational question
suggest you ask over in #fabric, you might want to check out blockchain explorer as well
many thanks @sstone1 have a good day :)
[ ](https://chat.hyperledger.org/channel/composer?msg=aToGxHKFh25xno22J) @sstone1 while debugging, I am able to see `console.log` statements in my docker logs (composer over local fabric). Now if change these commands in TP function then do I need to install chaincode from scratch (`runtime install` , `network start` and `import`) or just `export` and `update` will work on re-created .bna file?
[ ](https://chat.hyperledger.org/channel/composer?msg=aToGxHKFh25xno22J) @sstone1 while debugging, I am able to see `console.log` statements in my docker logs (composer over local fabric). Now if change these commands in TP function then do I need to install chaincode from scratch ( `runtime install` , `network start` and `import`) or just `export` and `update` will work on re-created .bna file?
Has joined the channel.
@AkshayJindal just `composer network update` which replaces the BNA
@sstone1 No. since 1.0 failed, I thought of trying with 1.1 as well
I fixed the issue. I had to disable SELinux on the VM.
@sstone1 , I have tried "carauction-network" example in my local. But when I am starting the network by using "startFabric.sh" file, it is removing the Couch DB & again creating Couch DB, due to this old data are getting lost. Please suggest how we can start the fabric server without cleaning the data.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=uneYaXArHRmyF9RM5) @sstone1 I am trying to print JSON object using `console.log` in TP function but not working as of now. is it possible to do this? When I use `console.log` statement in `return getAssetRegistry .then(function() {`, what about semicolon in the end of statement?
[ ](https://chat.hyperledger.org/channel/composer?msg=uneYaXArHRmyF9RM5) @sstone1 I am trying to print JSON object as well as variable values using `console.log` in TP function but not working as of now. is it possible to do this? When I use `console.log` statement in `return getAssetRegistry .then(function() {`, what about semicolon in the end of statement?
[ ](https://chat.hyperledger.org/channel/composer?msg=uneYaXArHRmyF9RM5) @sstone1 I am trying to print JSON object as well as variable values using `console.log` in TP function but not working as of now. How can I solve this? When I use `console.log` statement in `return getAssetRegistry .then(function() {`, what about semicolon in the end of statement?
[ ](https://chat.hyperledger.org/channel/composer?msg=uneYaXArHRmyF9RM5) @sstone1 I am trying to print JSON object as well as variable values using `console.log` in TP function but not working as of now. How can I solve this? When I use `console.log` statement in `return getAssetRegistry .then(function() {`, do i need to use semicolon in the end of statement?
docker-logs.png
docker-logs.png
TP-function.png
Hi everyone, I wrote a article on running hyperledger fabric in multiple peer environment in different physical machines.
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
Hi, I encountered the following problem when trying to run the composer-rest-server in a local Docker container (Unbuntu 16.04; Docker version 17.09.1-ce, build 19e2cf6) where I’m stuck in the third line (with docker logs -f rest).
`0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.`
`0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode`
`0|composer | Discovering types from business network definition.`
Here are what I have performed:
*A. Start the Fabric network*
```docker rmi -f $(docker images -q)./stopFabric.sh
./teardownFabric.sh
./downloadFabric.sh
./startFabric.sh
B. Prepare the business network for composer-rest-server
1. composer archive create -t dir -n .
2. composer card delete -n PeerAdmin@fabric-network
3. composer card delete -n admin@mynetwork
4. composer card import -f PeerAdmin@fabric-network.card
5. composer runtime install -c PeerAdmin@fabric-network -n mynetwork
6. composer network start -c PeerAdmin@fabric-network -a mynetwork@0.0.1.bna -A admin -S adminpw
7. composer card import -f admin@mynetwork.card
8. composer network ping -c admin@mynetwork
C. Build Docker image for composer-rest-server
1. docker build -t myorg/my-composer-rest-server .
1. with the Dockerfile:
1. FROM hyperledger/composer-rest-server
2. RUN npm install && \
3. npm cache clean --force && \
4. ln -s node_modules .node_modules
I deliberately took out mongodb and passport-github from the example provided.
I did encounter the following error with or without installing mongodb and passport-github.
Sending build context to Docker daemon 9.216kB
Step 1/2 : FROM hyperledger/composer-rest-server
latest: Pulling from hyperledger/composer-rest-server
1160f4abea84: Already exists
66ff3f133e43: Already exists
4c8ff6f0a4db: Already exists
40cd393a481d: Already exists
Digest: sha256:fca06fc5b6be9e041b1e86f2938f93d01748ae3b9273908ceebbab1f6cd28d46
Status: Downloaded newer image for hyperledger/composer-rest-server:latest
---> fb9849d5073b
Step 2/2 : RUN npm install && npm cache clean --force && ln -s node_modules .node_modules
---> Running in 518d3c3b8e37
npm WARN saveError ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN composer No description
npm WARN composer No repository field.
npm WARN composer No README data
npm WARN composer No license field.
up to date in 0.064s
npm WARN using --force I sure hope you know what you are doing.
---> ab541928b272
Removing intermediate container 518d3c3b8e37
Successfully built ab541928b272
Successfully tagged myorg/my-composer-rest-server:latest
D. Run composer-rest-server in Docker container:
1. docker run \
2. -d \
3. -e COMPOSER_CARD=${COMPOSER_CARD} \
4. -e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
5. -e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
6. -e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
7. -v ~/.composer:/home/composer/.composer \
8. --name rest \
9. -p 3000:3000 \
10. myorg/my-composer-rest-server
1. with environment variables
1. export COMPOSER_CARD=admin@mynetwork
2. export COMPOSER_NAMESPACES=never
3. export COMPOSER_AUTHENTICATION=false
4. export COMPOSER_MULTIUSER=false
I also tried with supplying the network flag:
1. docker run \
2. -d \
3. -e COMPOSER_CARD=${COMPOSER_CARD} \
4. -e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
5. -e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
6. -e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
7. -v ~/.composer:/home/composer/.composer \
8. --name rest \
9. --network composer_default \
10. -p 3000:3000 \
11. myorg/my-composer-rest-server
Here is what I normally use to start the composer-rest-server from command line without any issues:
composer-rest-server -c admin@mynetwork -n never -w true
Is there anything that I’m missing? Do I have to use persistent data store and authentication for use of composer-rest-server in Docker?
Thanks in advance.
Anyone knows how to define an endorsement policy where the endorser one of two orgs. Specifically, the org of the current participant?
Anyone knows how to define an endorsement policy where the endorser is one of two orgs. Specifically, the org of the current participant?
Anyone knows how to define an endorsement policy where the endorser is one of two orgs. Specifically, the org of the current participant? @davidkel @mahoney1 Any ideas?
Hi, I encountered the following problem when trying to run the composer-rest-server in a local Docker container (Unbuntu 16.04; Docker version 17.09.1-ce, build 19e2cf6) where I’m stuck in the third line (per `docker logs -f rest`).
```
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
0|composer | Discovering types from business network definition.
```
Here are what I have done:
*A. Start the Fabric network*
```
$ docker rmi -f $(docker images -q)
$ ./stopFabric.sh
$ ./teardownFabric.sh
$ ./downloadFabric.sh
$ ./startFabric.sh
```
*B. Prepare the business network for composer-rest-server*
```
$ composer archive create -t dir -n .
$ composer card delete -n PeerAdmin@fabric-network
$ composer card delete -n admin@mynetwork
$ composer card import -f PeerAdmin@fabric-network.card
$ composer runtime install -c PeerAdmin@fabric-network -n mynetwork
$ composer network start -c PeerAdmin@fabric-network -a mynetwork@0.0.1.bna -A admin -S adminpw
$ composer card import -f admin@mynetwork.card
$ composer network ping -c admin@mynetwork
```
*C. Build Docker image for composer-rest-server*
```
$ docker build -t myorg/my-composer-rest-server .
```
with the Dockerfile:
```FROM hyperledger/composer-rest-server
RUN npm install && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
I deliberately took out mongodb and passport-github from the example provided.
I did encounter the following *npm warnings* *with or without mongodb and passport-github*.
```Sending build context to Docker daemon 9.216kB
Step 1/2 : FROM hyperledger/composer-rest-server
latest: Pulling from hyperledger/composer-rest-server
1160f4abea84: Already exists
66ff3f133e43: Already exists
4c8ff6f0a4db: Already exists
40cd393a481d: Already exists
Digest: sha256:fca06fc5b6be9e041b1e86f2938f93d01748ae3b9273908ceebbab1f6cd28d46
Status: Downloaded newer image for hyperledger/composer-rest-server:latest
---> fb9849d5073b
Step 2/2 : RUN npm install && npm cache clean --force && ln -s node_modules .node_modules
---> Running in 518d3c3b8e37
npm WARN saveError ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN composer No description
npm WARN composer No repository field.
npm WARN composer No README data
npm WARN composer No license field.
up to date in 0.064s
npm WARN using --force I sure hope you know what you are doing.
---> ab541928b272
Removing intermediate container 518d3c3b8e37
Successfully built ab541928b272
Successfully tagged myorg/my-composer-rest-server:latest
```
*D. Run composer-rest-server in Docker container:*
```
$ docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-v ~/.composer:/home/composer/.composer \
--name rest \
-p 3000:3000 \
myorg/my-composer-rest-server
```
with environment variables
```
export COMPOSER_CARD=admin@mynetwork
export COMPOSER_NAMESPACES=never
export COMPOSER_AUTHENTICATION=false
export COMPOSER_MULTIUSER=false
```
I also tried with supplying the network flag:
```
docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-v ~/.composer:/home/composer/.composer \
--name rest \
--network composer_default \
p 3000:3000 \
myorg/my-composer-rest-server
```
Here is what I normally use to start the composer-rest-server from command line without any issues:
`composer-rest-server -c admin@mynetwork -n never -w true`
Is there anything that I’m missing? Do I have to use *persistent data store and authentication* for use of composer-rest-server in Docker?
Thanks in advance.
[ ](https://chat.hyperledger.org/channel/composer?msg=dBk5xTML4kdMNTfqN)
It will be great if someone can please address the below queries
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Dkh5f74GhaHc59Y8Z) @jasoncys - nice thorough job of explaining your steps !
What you have done looks good. I'm wondering what Network Addresses you have in your Card (via connection.json file) for the Fabric Servers?
Assuming you are using the Developer Fabric provided by fabricTools ... look at a file similar to this `~/.composer/cards/admin@tutorial-network/connection.json` are you seeing localhost as the address for the Fabric servers? If so - try replacing this with the IP number of your Ubuntu Machine. (localhost in the container won't connect out to the Fabric - using the IP of the Ubuntu machine should work woth Port forwarding into the Fabric Containers)
[ ](https://chat.hyperledger.org/channel/composer?msg=nuWYArN5m64hdxShW) @prmdmshra - some answers ...
1. When you deploy a Business Network a Chaincode Container is created with a name similar to 'dev-peer0.org1.example.com-tutorial-network-0.16.2` the name is based on your Business Network Name and the versino of Composer you are using. This container is effectively your chaincode.
2. If you are using the Development Fabric started with fabricTools then this is a simple Fabric for Developers to get started and does use SOLO. The Dev Fabric has just one peer and one org so consensus is not really an issue. When moving to a non-development Fabric other Consensus Algorithms will be appropriate, and the Hyperledger Fabric docs are the place to go for that information: http://hyperledger-fabric.readthedocs.io/en/latest/blockchain.html
3. As far as I am aware the Endorsement Policy applies to All Transactions on a Deployed network, and is specified at the time the network is started. (there is an example in the MultiOrg Tutorial)
4. Participants do not belong to a Peer - they belong to a Business Network, so the ACL will Apply on all Peers and indeed is shared by all peers running the Network.
@rthatcher it works. Thanks! [ ](https://chat.hyperledger.org/channel/composer?msg=mZE6hxjvuE8JndFux) @rthatcher
I try to create the card and card has been created successfully. But when i try to fetch the card using "card list" command it is not displaying anything
composer card create -p connection/org1/connection-org1-only.json -u PeerAdmin -c /home/purandam/composerSample/blockchainnetwork/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k /home/purandam/composerSample/blockchainnetwork/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/74ce34c6ece368929f38f6beaf7245fe1454bf5d1eb26c26360b3e36afab13b2_sk -r PeerAdmin -r ChannelAdmin
Successfully created business network card file to
Output file: PeerAdmin@unilever-network-org1-only.card
Command succeeded
composer card list
There are no Business Network Cards available.
Command succeeded
[ ](https://chat.hyperledger.org/channel/composer?msg=jrw8z3L9EaWL2uspQ) @purandam - assuming that you have a `.card` file created ok, then you need to Import the card before it can be listed. `composer card import -f PeerAdmin@unilever-network-org1-only.card`
[ ](https://chat.hyperledger.org/channel/composer?msg=XdwjBDjSw7CHBEANh) @rthatcher
Thanks a lot. It clarifies my concerns very well :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=fYHfqAqqm9j6K4YSK) @rthatcher Thanks
Was following the "Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations)" Tutorial and was able to go through everything fine. Looking to test adding a new org to the existing setup and when run the peer command I get `panic: Fatal error when initializing core config : Error when reading core config file: Unsupported Config Type ""`
[ ](https://chat.hyperledger.org/channel/composer?msg=BBgrbrdqTRvtN4jHS) @mastercpt - this looks like a Hyperledger Fabric question - can you try the #fabric chat channel.
Ok thanks. wasn't sure where to put that. Ill try there.
@rthatcher #fabric said
```
It looks like a config mismatch
they have a wrong config file
I guess they need to update it
```
i just bounced it back to them
;)
@sstone1 should we still be using the fabric-samples here https://github.com/sstone1/fabric-samples when doing the tutorial? or from the fabric git
my fork has some changes that enable the Fabric CA which aren't yet merged into the Fabric git unfortunately
gotcha
Thank you
Has joined the channel.
Hello all
is any one facing problem like this
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: Error: SERVICE_UNAVAILABLE
Command failed
@sstone1 , I have tried "carauction-network" example in my local. But when I am starting the network by using "startFabric.sh" file, it is removing the Couch DB & again creating Couch DB, due to this old data are getting lost. Please suggest how we can start the fabric server without cleaning the data.
Please suggest.
[ ](https://chat.hyperledger.org/channel/composer?msg=oa4HaELAjc9ASfwen) @ChinmayaMahunta - I answered this on Stack Overflow earlier : https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
[ ](https://chat.hyperledger.org/channel/composer?msg=yn4xKjj54DgYm6cKo) @nasserfci - what command or action did you take to get this error, and what commands before that ?
[ ](https://chat.hyperledger.org/channel/composer?msg=cyxH2mP4iiQEsukxD) @rthatcher Thank you for your response
[ ](https://chat.hyperledger.org/channel/composer?msg=uneYaXArHRmyF9RM5) @sstone1 `composer network update` replcaes the BNA but if there is change in `console.log` statements in TP function then its output is not reflected in docker logs. In my case, docker logs are still the same as previous. How can i solve this?
[ ](https://chat.hyperledger.org/channel/composer?msg=uneYaXArHRmyF9RM5) @sstone1 `composer network update` replces the BNA but if there is change in `console.log` statements in TP function then its output is not reflected in docker logs. In my case, docker logs are still the same as previous. How can i solve this?
[ ](https://chat.hyperledger.org/channel/composer?msg=jSApubQ2piAqkEBJj) @AkshayJindal - are yoDocker Log for the container with a name such as "dev-peer0.org1.example.com-rob-network-0.16.2"
[ ](https://chat.hyperledger.org/channel/composer?msg=jSApubQ2piAqkEBJj) @AkshayJindal - are you looking at the Docker Log for the container with a name such as "dev-peer0.org1.example.com-rob-network-0.16.2"
[ ](https://chat.hyperledger.org/channel/composer?msg=tuAPHcLjHB3ACbK3R) @rthatcher i used cello to install fabric network (2 org , 2 peers per each organization, 1 ca) then we followed the tutorial (https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html) but we have only one ca instead of ca per org and when we run command
*** composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network/tutorial-network@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem ***
we get this error
[ ](https://chat.hyperledger.org/channel/composer?msg=QHsuxHqYJ2bjYANLt) @rthatcher Yes I was looking into the logs using `docker logs -f dev-peer0.org1.example.com-calvin-network-0.16.0 2>&1 | grep @debug` . I changed the `console.log` statements and executed but logs were the same as previous after updating BNA.
Is there a difference in executing queries through the restapi as opposed to the node API? While running tests using the node API i'm getting expected results but running the same query using the restapi always returns an empty array. Retrieving the queried asset through the auto-generated endpoints shows the asset just fine and the value i'm querying corresponds to my input value. Anyone?
Is there a difference in executing queries through the restapi as opposed to the node API? While running tests using the node API i'm getting expected results but running the same query using the restapi always returns an empty array. Retrieving the queried asset through the auto-generated endpoints shows the asset just fine and the value i'm querying corresponds to my input value; so it can't be an ACL issue... Anyone?
Is there a difference in executing queries through the restapi as opposed to the node API? While running tests using the node API i'm getting expected results but running the same query using the restapi always returns an empty array. Retrieving the queried asset through the auto-generated endpoints shows the asset just fine and the query parameter corresponds with the attribute of the asset; so it can't be an ACL issue... Anyone?
The field i'm querying is a reference to another asset so i'm using 'resource:'+FQN (the same as with the node API)
[ ](https://chat.hyperledger.org/channel/composer?msg=GKxg4Af8x7LScNLPn) @nickyromeijn - I'm using this format in my test which is returning values: `resource:org.acme.biznet.Trader#TRADER2`
[ ](https://chat.hyperledger.org/channel/composer?msg=GKxg4Af8x7LScNLPn) @nickyromeijn - I'm using this format in my test which is returning values: `resource:org.acme.biznet.Trader#TRADER2`
Clipboard - January 3, 2018 3:51 PM
Hello! Anyone with information on how to create an endorsement policy, in a multi-orgs network, where only 1 org endorses? @davidkel Any idea?
Write it seems all 4 peers on my network (2 peer per org) are endorsing the transaction
It seems all 4 peers on my network (2 peer per org) are endorsing the transaction
It seems all 4 peers on my network (2 peers per org) are endorsing the transaction
@gen_el yep, we use all of the peers in your connection profile for endorsing the transaction. if you only need one org to endorse then only put one org in the connection profile.
@nasserfci nobody in the composer team has experience with cello, so we don't know how it stands up a fabric. have you ensured that the channel specified in the composer connection profile has been created and joined by all of the peers?
[ ](https://chat.hyperledger.org/channel/composer?msg=KLq92errL6LQJYNqp) @sstone1 Oh! I see...
[ ](https://chat.hyperledger.org/channel/composer?msg=KLq92errL6LQJYNqp) @sstone1 Oh! I see. Thank you for clarifying.
[ ](https://chat.hyperledger.org/channel/composer?msg=dfBZJH9pyvnRjfhjm) @sstone1 i run peer channel list on all peers and all of it joined buissnesschannel
but the difference in cello fabric container is that there is only one ca container but in the composer documentation there two ca container for each peer
is the CA name correct then?
```
"ca": {
"url": "http://localhost:7054",
"name": "ca.org1.example.com" <-- this name
},
```
i didn't write any name for ca in the connection profiles
because in cello example there is only one ca
[ ](https://chat.hyperledger.org/channel/composer?msg=iz3CjQqMzL8SvEDZQ) @sstone1 Then what is the endorsement policy in this composer command for: ```composer network start -c PeerAdmin@zonebtp-stagingnetwork-gtb -a dist/btp-app@0.0.15.bna -o endorsementPolicyFile=endorsement-policy.json -A gtbnetworkadmin -C gtbnetworkadmin/admin-pub.pem -A skyenetworkadmin -C skyenetworkadmin/admin-pub.pem```
[ ](https://chat.hyperledger.org/channel/composer?msg=iz3CjQqMzL8SvEDZQ) @sstone1 Then what is the endorsement policy in this composer command for: ```composer network start -c PeerAdmin@zonebtp-stagingnetwork-gtb -a dist/btp-app@0.0.15.bna -o endorsementPolicyFile=endorsement-policy.json -A org1networkadmin -C org1networkadmin/admin-pub.pem -A org2networkadmin -C org2networkadmin/admin-pub.pem```
it's for defining which organisations need to endorse transactions
the endorsement policy will say "org1 + org2" need to sign
no transactions can be committed without org1 and org2 signing it, and any application submitting transactions will need peers for org1 and org2 in the connection profiles
what if i want to say "org1 | org2" should sign.
[ ](https://chat.hyperledger.org/channel/composer?msg=eeg2aaXT4idEA9dsN) @nasserfci it still has a name though and you still need to provide it
@gen_el you can say that in the endorsement policy and then have a connection profile with only org1 or org2 peers in it
is this policy correct: ```{
"identities": [{
"role": {
"name": "member",
"mspId": "org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "org2MSP"
}
}
],
"policy": {
"1-of": [{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
}```
i _think_ it looks OK but it's a fabric format, we just pass it through to the fabric SDK
so we're not experts on it
okay
okay. Thanks
if i write the same name of ca in the connection profile for org1 and org2 but with different cert . is this should work !
no, if you have multiple orgs you will have different CA names
a single CA server (docker container) can host multiple separate CAs for different orgs
i have no idea why or why that is a good idea, but your CA docker container could be hosting `ca_org1` and `ca_org2`
so there is no way use composer with one ca ?
no, that's not what i said
you need to put a name of the CA into the connection profile
the name will likely be different for each organisation
aha i will try again with name for each ca in the conection profile
Hi Team, Any recommendations on troubleshooting an ENDORSEMENT_POLICY_FAILURE error. It looks like all the endorsements are getting returned in the sendTransactionProposal response. I reused the same Endorsement Policy that is defined in the multiorganization tutorial found here: https://hyperledger.github.io/composer/stable/tutorials/deploy-to-fabric-multi-org.html
Hi Team, Any recommendations on troubleshooting an ENDORSEMENT_POLICY_FAILURE error. It looks like all the endorsements are getting returned in the sendTransactionProposal response. I reused the same Endorsement Policy that is defined in the multiorganization tutorial found here: https://hyperledger.github.io/composer/stable/tutorials/deploy-to-fabric-multi-org.html I am using a different bna file however that I have started. (composer network start). I am also using a different admin card.
Hi Team, Any recommendations on troubleshooting an ENDORSEMENT_POLICY_FAILURE error. It looks like all the endorsements are getting returned in the sendTransactionProposal response. I reused the same Endorsement Policy that is defined in the multiorganization tutorial found here: https://hyperledger.github.io/composer/stable/tutorials/deploy-to-fabric-multi-org.html I am using a different bna file however that I have started. (composer network start). I am also using a different admin card. Just a bit more information, the Debug logs show the following message: [Channel.js]: compareProposalResponseResults - read/writes result sets do not match index=1 {}$
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Can anyone explain what's the use or multiple organizations in Hyperledger Fabric netowkr
Can anyone explain what's the use or multiple organizations in Hyperledger Fabric network?
Has joined the channel.
Has joined the channel.
I using fabcar tutorial. I have question.
In Fabcar, Is function of Admin and User1 related with Node.js application? If I use cli when I invoke chaincode, isn't CA useful?
Hello everyone !
I hope there is someone in here, who is able to help me.
I worked my way through the "hyperledger composer" tutorials and got to the "queries tutorial".
Everything went fine until the last step where one had to /POST the "RemoveHighQuantityCommoditites".
When I did the Response Body said:
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: chaincode error (status: 500, message: Error: Could not find any functions to execute for transaction org.acme.biznet.RemoveHighQuantityCommodities#a32e581c33bbce74d30367733adf8dd60dc46b0d0317b34763179fbc15a853ad)\n",
"stack": "Error: Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: chaincode error (status: 500, message: Error: Could not find any functions to execute for transaction org.acme.biznet.RemoveHighQuantityCommodities#a32e581c33bbce74d30367733adf8dd60dc46b0d0317b34763179fbc15a853ad)\n\n at _initializeChannel.then.then.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:916:34)"
}
}
Does that sound familiar for someone?
Many thanks in advance!
.cto : transaction RemoveHighQuantityCommodities {}
logic.js: function removeHighQuantityCommodities(remove) {
return getAssetRegistry('org.acme.biznet.Commodity')
.then(function (assetRegistry) {
return query('selectCommoditiesWithHighQuantity')
.then(function (results) {
var promises = [];
for (var n = 0; n < results.length; n++) {
var trade = results[n];
// emit a notification that a trade was removed
var removeNotification = getFactory().newEvent('org.acme.biznet', 'RemoveNotification');
removeNotification.commodity = trade;
emit(removeNotification);
// remove the commodity
promises.push(assetRegistry.remove(trade));
}
// we have to return all the promises
return Promise.all(promises);
});
});
}
@tennenjl You have got proposals back from 2 or more peers, but at least 1 of the proposal results is different from the others. If for example your endorsement policy has stated that all the peers must endorse then it also means that all the peers must agree on the same results. If they don't you get an endorsement policy failure because at least 1 peer doesn't agree and so you cannot satisfy the endorsement policy
[ ](https://chat.hyperledger.org/channel/composer?msg=rrK7CsoisAWjsnnWh) @sstone1 now i am using "name": "ca-org", in connection profile and when write command
composer identity request -c PeerAdmin@byfn-network-org1-only -u admin -s adminpw -d alice
i get this error
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca-org' does not exist"}]]
is there any block chain example to store files in database and that information should store in block chain?
[ ](https://chat.hyperledger.org/channel/composer?msg=9XSD5oYTPTxrGqdS8) @seungchan - Fabcar is based just on Hyperledger Fabric - this channel is for Hyperledger Composer, and I don't think you are using Composer. Suggest you try the #fabric channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ob3GtbJwwkk52eAgo) @varun-raj - most use cases for a Blockchain will involve Multiple Organisations taking advantage of the characteristics of a Blockchain - shared, distributed, trusted (immutable).
[ ](https://chat.hyperledger.org/channel/composer?msg=4n5PPcvtvwzLeTdbt) @rthatcher Can you give some real world example?
Say I've a inventory system with suppy chain transactions
if an organization wants to set up their server to get involved, they will be created as a separated org right?
[ ](https://chat.hyperledger.org/channel/composer?msg=DAjqdewuxAv7kmi63) @sstone1 @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=9pQwTRdGNniLTRwcZ) @Ancient - if you have Pasted the logic.js exactly from the Tutorial document it should work - the error may indicate that you haven't included the 'Decorators' for @param and @transaction
(I assume that the other functions of the REST server, the straightforward GETs are working OK?)
[ ](https://chat.hyperledger.org/channel/composer?msg=axCTx6pxiAi9eWME2) @wininani not that I can paste easily - but you store your files(of whatever type) in your DB store using appropriate data structures, then produce a hash of it and store in the blockchain, a reference for which you save for access to the asset at any time later
[ ](https://chat.hyperledger.org/channel/composer?msg=oTeRiEnDa7h4eHE9q) @varun-raj something like this trade finance use case example ? you can google some examples https://www.gtreview.com/news/global/hyperledger-launch-moves-trade-finance-blockchain-towards-production/
Hi erveryone, currently, when I want to create a new resource (asset, participant,...) with a uniqueId, I generate this Id by a random function of 26 alphanumeric chars. Is it possible to generate it in a better like an autogenerate ID ? like 000001 and the next one will be 000002 ?
Hi erveryone, currently, when I want to create a new resource (asset, participant,...) with a uniqueId, I generate this Id by a random function of 26 alphanumeric chars. Is it possible to generate it in a better way like an autogenerate ID ? like 000001 and the next one will be 000002 ?
[ ](https://chat.hyperledger.org/channel/composer?msg=QyyEyAT3JA4SSatnj) @rthatcher Hello rhatcher! Thank you very much for your time! I am not sure what you mean by "including @param and @transaction".
Do I have to change something? I merely c&p'ed the tutorial code. And there the decorators are outcommented.
[I am also looking at how to use with passport-local with Loopback as the authentication provider. Does anyone has any hints? Thanks. ](https://chat.hyperledger.org/channel/composer?msg=EMbmkgs9ohkPGRcMd) @smpakes
Hi, I am trying out with issuing identities for registered participants. I followed the steps in *Issuing a new identity to a participant* (https://hyperledger.github.io/composer/managing/identity-issue.html). I tried with `composer network ping` for the newly issued identity but got the following error: ```Error: Card not found: userID@mynetwork
Command failed``` After I've imported the `userID.card` using `network card import` and try with `composer network ping` again, it works. So I'm asking if this is intended or the `network card import` step was missing in the documentation. Thanks.
@Ancient - the decorators are required, so this block is needed:
```/**
* Remove all high volume commodities
* @param {org.acme.biznet.RemoveHighQuantityCommodities} remove - the remove to be processed
* @transaction
*/```
[ ](https://chat.hyperledger.org/channel/composer?msg=DuPZGL8vEgAaAtBvR) @jasoncys - you are correct, the Import is required. I will followup with the documentation.
[ ](https://chat.hyperledger.org/channel/composer?msg=DuPZGL8vEgAaAtBvR) @jasoncys - you are correct, the `composer card import` is required. I will followup with the documentation.
[ ] Thanks for the clarification. (https://chat.hyperledger.org/channel/composer?msg=uWfrJGCCvMa6obN9Y) @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=pDDWLZDJKcMum7EuK) @rthatcher Alright,
that's just how I got it. Another question: The tutorial said "replace the content with the following".
However, if i replace the content, the execution gives out an error. I tried to merely expand the given
content and that's where I receive the initial error. Do I really have to replace everything that's preset?
It gives me the error, that ChangeSampleValues can't be initiated.
Many thanks in advance again!
[ ](https://chat.hyperledger.org/channel/composer?msg=cKz4jteK86wLySfeA) @Ancient - Where does 'ChangeSampleValues' come from ? I don't see that in the Tutorial.
(You don't have to replace all the content using cut/paste, but it is easier if you do.)
[ ](https://chat.hyperledger.org/channel/composer?msg=rSYcH5b3c8N7YBvkA) @CorentinPacaud you should generate the autoincrement ID client-side (custom generated, or using UUIDs for example - using uuid on the client side and pass it in as part of the TP payload) and pass that into the Composer APIs. The only safe, deterministic way to "generate" an ID on the 'Blockchain' side in a Composer transaction processor function is to use the transaction ID. You should not generate an autoincrement id within a transaction processor doing so could be non-deterministic and the transaction would be rejected because the results of the transaction processor running on different peers would not match.
Is there a document explaining production-level deployment of composer?
Putting aside the REST server, is there a "composer" runtime that needs to be deployed? Or can a regular fabric network handle composer without any add-ons?
[ ](https://chat.hyperledger.org/channel/composer?msg=Sxu7uFnfPxS2SKZHf) @nasht00 - When you use the command `composer runtime install` then `composer network start` command this will create an extra Docker container per peer for you, and this is the main runtime component.
If you are writing API programs (as opposed to hitting the REST API) then you will need to install npm modules (composer-client and/or composer-admin) on the same 'machine' as you applications.
Thanks @rthatcher In a production environment, where would this container live? On each pear?
Imagine I start a bluemix fabric instance. Can I just deploy my composer bna there? Or does the blockchain hosting service needs to "support" composer?
(I also wonder if fabric 1.1 changes anything to that, with its nodejs chaincode)
[ ](https://chat.hyperledger.org/channel/composer?msg=xH9Hpp3FaHYmwW47C) @nasht00 - for each Peer that you want the Business Network to run on, you will have a 'parallel' Container named something like "dev-peer0.org1.example.com-tutorial-network-0.16.0".
For the IBM hosted services, these containers will be automatically created when you deploy the Business Network. (Though if you have more questions about IBM hosting you need to go through those Cloud channels )
The same model of parallel chaincode containers will continue for Fabric 1.1 with Composer v0.17.* onwards
[ ](https://chat.hyperledger.org/channel/composer?msg=xH9Hpp3FaHYmwW47C) @nasht00 - for each Peer that you want the Business Network to run on, you will have a 'parallel' Container named something like "dev-peer0.org1.example.com-tutorial-network-0.16.0". (These Peers are determined by the connection.json belonging to the Network Card that was used on the runtime install command)
For the IBM hosted services, these containers will be automatically created when you deploy the Business Network. (Though if you have more questions about IBM hosting you need to go through those Cloud channels )
The same model of parallel chaincode containers will continue for Fabric 1.1 with Composer v0.17.* onwards
OK, I only gave Bluemix as an example, but from this I understand that it is the hosting's responsibility to support composer right? Meaning I can't just deploy to *any* fabric service, I can only deploy on "composer-compatible" services.
[ ](https://chat.hyperledger.org/channel/composer?msg=ydEJgPzvcPg7qKH3D) @nasht00 - I would expect that any Hyperledger Fabric (of the correct supported version) running on a properly configured Docker host/farm would work just fine with Composer. But do be aware that Setting up a new multi-peer multi-org Fabric takes some planning and execution!
@mahoney1 @rthatcher I have created a flow in node-red having two participants (each having identity and card). Then I am trying to submit same transaction from both partcipants in my flow but node-red is giving error with one of the participant. It is only running succesfully with one participant. Is it possible to work with partcipants (each having their own card) in node-red?
@mahoney1 @rthatcher I have created a flow in node-red having two participants (each having identity and card). Then I am trying to submit same transaction from both partcipants in my flow but node-red is giving error with one of the participant. It is only running succesfully with one participant. How Is it possible to work with participants (each having their own card) submitting same transaction at different times in node-red?
[ ](https://chat.hyperledger.org/channel/composer?msg=KQiZuXNJNQguFpWtv) @AkshayJindal - in your flow the Composer Out Node defines which card you are using. For testing you could duplicate your flow and set the 2nd copy to use the second card. I don't know if you can switch the card programatically.
[ ](https://chat.hyperledger.org/channel/composer?msg=uWHyh22PSsygfmggj) @rthatcher I have mentioned different card name (`runtime1@calvin-network` and `runtime2@calvin-network`)for composer out node (submitting same transaction). But it is giving error with runtime2. I think, there is problem when I am starting node-red. It is only recognizing `runtime1` for compose-out node.
[ ](https://chat.hyperledger.org/channel/composer?msg=uWHyh22PSsygfmggj) @rthatcher I have mentioned different card name ( `runtime1@calvin-network` and `runtime2@calvin-network`)for composer out node (submitting same transaction). But it is giving error with runtime2. I think, there is problem when I am starting node-red. It is only recognizing `runtime1` for compose-out node.
[ ](https://chat.hyperledger.org/channel/composer?msg=uWHyh22PSsygfmggj) @rthatcher I have mentioned different card name ( `runtime1@calvin-network` and `runtime2@calvin-network`)for two composer out nodes (submitting same transaction). But it is giving error with runtime2. I think, there is problem when I am starting node-red. It is only recognizing `runtime1` for compose-out node.
node-red.png
node-red.png
When will Aggregations like Count, Sum, Avg, etc... be supported in composer query language?
Thanks for the previous answer (about unique Id)
[ ](https://chat.hyperledger.org/channel/composer?msg=cNhSqWFXc7rKgwTrd) @davidkel Thanks, I will need to understand why the proposal results are different.
```/**
* A transaction processor function description
* @param {org.odm.transactions.RejectODM} parameter-name A human description of the parameter
* @transaction
*/
function txRejectedOdm(tx) {
var currentParticipant = getCurrentParticipant();
return getAssetRegistry("org.odm.assets.ODM")
.then(function (odmsRegistry) {
odmsRegistry.get(tx.odmId).then(function (odm) {
odm.issuerStatus = 'Rejected';
odm.issuerStatusDate = new Date();
return odmsRegistry.update(odm);
});
});
}```
Now this is my code. But I have this error :
```
error: [client-utils.js]: sendPeersProposal - Promise is rejected: Error: chaincode error (status: 500, message: Error: Expected a Resource or Concept.)
at /home/admlcl/apps/odm_blockchain/server/node_modules/grpc/src/node/src/client.js:554:15
TX error Error: Error trying invoke business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: Error: Expected a Resource or Concept.)
at _initializeChannel.then.then.then.then.catch (/home/admlcl/apps/odm_blockchain/server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:916:34)
error: [client-utils.js]: sendPeersProposal - Promise is rejected: Error: chaincode error (status: 500, message: Error: Expected a Resource or Concept.)
```
Any idea ?
Or how to debug the transactions.js ?
Has joined the channel.
@CorentinPacaud based on your posting , should be something like `@param {org.odm.transactions.RejectODM} tx - A human description of the parameter` - also using a `new Date()` is going to be a problem for determinism (proposals will likely fail at some point if policy applied using a non-deterministic datetime) ..but you know that now. Finally this link may be of benefit for TPs https://hyperledger.github.io/composer/reference/js_scripts.html
I try
[ ](https://chat.hyperledger.org/channel/composer?msg=mjZ7vNWH6yg4bwgDG) @theathibm no timeline presently, will try find out more - Issue for this -> https://github.com/hyperledger/composer/issues/2052
@mahoney1 I tried to change the parameter-name, same issue....
[ ](https://chat.hyperledger.org/channel/composer?msg=3eRYEW9jPr66xAxGc) @CorentinPacaud - what namespace are you using? you seem to have `org.odm.transactions` for your Transaction and `org.odm.assets` for your AssetRegistry ? perhaps you just need `org.odm` as the base namespace?
[ ](https://chat.hyperledger.org/channel/composer?msg=HB9aMa5hxZjkQpLTX) @AkshayJindal - what was the original error you were seeing when "trying to submit same transaction" ? (I guess this was the same transaction type - not the same data?)
yes, I have ```org.odm.transactions``` for transactions and ```org.odm.assets``` for assets. But I don't understand this "perhaps you just need `org.odm` as the base namespace?"
Hi Everyone, when Composer makes a sendTransaction to the orderers where there are multiple endorsement Peers, how does it select which R/W set it will send. Does it compare the R/W sets that are returned from each endorser before sending the the request, is it randomly picked, or does it send all of the R/W sets along with the endorsements? Thanks!
Hi Everyone, when Composer makes a sendTransaction to the orderers where there are multiple endorsement Peers, how does it select which R/W set it will send. Does it compare the R/W sets that are returned from each endorser before sending the the request, is it randomly picked, or does it send all of the R/W sets along with the endorsements? At first glance, it seems like it sends the last response it receives? Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=LR46wNgjhTScT5L5j) @CorentinPacaud - can you share your model file ?
```
namespace org.odm.assets
import org.odm.participants.Member
import org.odm.participants.TCParticipant
import org.odm.participants.IssuerParticipant
asset ODM identified by odmId {
o String odmId
--> TCParticipant from
--> IssuerParticipant to
o OperationType type
o ClientQuality codeQuality
o String clientLastName
o String clientFirstName
o String address
o String zipCode
o String city
o String country
--> SharedHolder sharedHolder
o String valueCode
o Integer quantity
o Integer acquisitionYear
o Boolean peaPme
o Comment[] comments
o DateTime tradeDate
o Status issuerStatus
o Status tccStatus
o DateTime issuerStatusDate
o DateTime tccStatusDate
o String codeTCC
o DateTime creationDate
o DateTime[] reflates
}
enum Status{
o Pending
o Acquitted
o Rejected
o Failed
o Canceled
}
asset Comment identified by commentId {
o String commentId
o String content
--> Member owner
}
asset Registre identified by registreId{
o String registreId
--> Member issuer
o SharedHolder[] sharedHolders
o String valueCode
o String toolNature
}
asset SharedHolder identified by sharedHolderId {
o String sharedHolderId //code affilié
o ClientQuality codeQuality
o String clientLastName
o String clientFirstName
o String address
o String zipCode
o String city
o String country
--> TCParticipant tcc
o DateTime acquisitionYear
o DateTime lastUpdate
o String iban
o String restrictions
o Integer quantity
o Boolean peaPme
--> Member issuer
}
enum OperationType{
o AddressChange
o EquityTransfer
}
enum ClientQuality{
o Mr
o Mme
}
```
```
namespace org.odm.participants
abstract participant Member identified by memberId { // CAN DO A GET OR RESOLVE ON ABSTRACT CLASS
o String memberId
o String name
o String address
o String zipCode
o String city
o String country
o String senderCode
o String codeTCC // idem as memberID
o String memberType
}
participant TCParticipant extends Member {
}
participant IssuerParticipant extends Member {
}
```
@CorentinPacaud don't see a transaction model pasted for transaction `RejectODM` - but I assume you have a relationship from the transaction eg `--> ODM odm` in which case something like this should work ```function txRejectedOdm(tx) {
var currentParticipant = getCurrentParticipant();
tx.odm.issuerStatus = 'Rejected';
// tx.odm.issuerStatusDate = new Date(); // set a deterministic datetime but isn't your current issue
return getAssetRegistry('org.odm.assets.ODM')
.then(function (odmsRegistry) {
return odmsRegistry.update(tx.odm);
});
}``` (not tested)
In fact, I have an other TX that create an ODM
so the RejectODM Tx just contains the odmId, then I do a "Get" on it, and try to update it. Should I replace the RejectODM { odmId : String} by RejectODM { odm : Object } ?
This is the Transaction.cto :
```
namespace org.odm.transactions
import org.odm.participants.Member
import org.odm.participants.TCParticipant
import org.odm.participants.IssuerParticipant
import org.odm.assets.ClientQuality
transaction OdmAddressChange{
o String from
o String to
o ClientQuality codeQuality
o String clientLastName
o String clientFirstName
o String address
o String zipCode
o String city
o String country
o String shId
o String valueCode
o Integer quantity
o Integer acquisitionYear
o Boolean peaPme
o DateTime tradeDate
}
transaction OdmEquityTransfer{
o String from
o String to
o ClientQuality codeQuality
o String clientLastName
o String clientFirstName
o String shId
o String valueCode
o Integer quantity
o Integer acquisitionYear
o Boolean peaPme
o DateTime tradeDate
o String codeTCC
}
transaction ValidateODM {
o String odmId
}
transaction RejectODM {
o String odmId
}
```
@CorentinPacaud no - the model definition is correct.
@CorentinPacaud no - the model definition is correct (as you've defined it now)
[ ](https://chat.hyperledger.org/channel/composer?msg=KhsxBguk9ELuWu95g) @rthatcher I am using `getCurrentParticipant()` function in my TP function and then checking its fully qualified identifier with the value (`participant identifier`) passed while submitting the transaction. if this check fails then it is throwing error (as mentioned on https://hyperledger.github.io/composer//business-network/programmatic-access-control). Therefore, in case of 2 participants, submitting the same transaction, `getCurrentParticipant()` in TP is not fetching different values for each. However, the same TP is running fine in composer-playground. In node-red, if I submit transaction with partcipant 1 then it will run fine and then if i submit transaction with participant 2 then `getCurrentParticipant()` check with passed value fails. it still consider this participant as participant 1.
So, no idea ? Can the Odm be null and this error appear ?
[ ](https://chat.hyperledger.org/channel/composer?msg=bNtcxAjmneuu6xQ3Q) @CorentinPacaud yes it could be null - so suggest to use `console.log` and write to debug logs to find out what you're getting back - then you can be sure.
ok I will try tomorrow. Thx for your time.
Has joined the channel.
Has joined the channel.
Hi, folks! I have several problems with Composer. Hope you will help me.
I interact with simple Business Network to issue identities. First of all, I don't want to persist my cards in the `${HOME}/.composer` directory, so I build them in memory. But it's surprising to me that identities' certificates and pub/priv keys are storing under the `${HOME}/.composer/client-data` directory anyway. How can I avoid this and request identity credentials from CA every time identity make an action. Also, I noticed that if I delete identity credentials manually (from `${HOME}/.composer/client-data`) and make an action as identity (with proper user name and enrollment secret) and I will see new different credentials under the directory `${HOME}/.composer/client-data` and will get an error from Composer network:
err": "Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: semen-id)"
Hi, folks! I have several problems with Composer. Hope you will help me.
I interact with simple Business Network to issue identities. First of all, I don't want to persist my cards in the `${HOME}/.composer` directory, so I build them in memory. But it's surprising to me that identities' certificates and pub/priv keys are storing under the `${HOME}/.composer/client-data` directory anyway. How can I avoid this and request identity credentials from CA every time identity make an action? Also, I noticed that if I delete identity credentials manually (from `${HOME}/.composer/client-data`) and make an action as identity (with proper user name and enrollment secret) and I will see new different credentials under the directory `${HOME}/.composer/client-data` and will get an error from Composer network:
err": "Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: semen-id)"
Hi folks, can I remove relationships?
meaning a specific relationship i.e. owner is linked to [a1, a2, a3] and I want to remove a3 and make it like [a1, a2]
@tennenjl it will send all the endorsed responses for a specific transaction to the orderer as it cannot make a decision about which ones to select. It will however throw away any which are not valid responses (ie not deemed as proper responses as determined by a call to the node-sdk)
@davidkel Thanks is this the code in question: ` eventHandler = new HLFTxEventHandler(this.eventHubs, finalTxId.getTransactionID(), this.commitTimeout);
eventHandler.startListening();
return this.channel.sendTransaction({
proposalResponses: validResponses,
proposal: proposal,
header: header
});
`
@davidkel Thanks is this the code in question: ` eventHandler = new HLFTxEventHandler(this.eventHubs, finalTxId.getTransactionID(), this.commitTimeout);
eventHandler.startListening();
return this.channel.sendTransaction({
proposalResponses: validResponses,
proposal: proposal,
header: header
});
`
@davidkel Thanks is this the code in question:
'eventHandler = new HLFTxEventHandler(this.eventHubs, finalTxId.getTransactionID(), this.commitTimeout);
eventHandler.startListening();
return this.channel.sendTransaction({
proposalResponses: validResponses,
proposal: proposal,
header: header
});'
@tennenjl so that part of the code sends the valid responses to the orderer and waits for transaction events from the peers
@davidkel and then the nodejs SDK sorts through the R/W sets in https://github.com/hyperledger/fabric-sdk-node/blob/6f7310ccda8648473d0f794e28c5b390ac030480/fabric-client/lib/Channel.js (line 448 looping through the responses)?
[ ](https://chat.hyperledger.org/channel/composer?msg=C8MxjMhtYpvrnouTr) @davidkel Any chance you can provide more details on throwing away not valid responses? :-)
I don't know if it does it explicitly, i do know we call the node sdk to check all the read/write sets and log a warning if any differ
As for throwing away, we call the node sdk to check the response has been properly signed and is thus a valid endorsed response we don't do any content checking
using permissions.acl file i can use a
Namespace: org.example.*
Namespace (recursive): org.example.**
Class in namespace: org.example.Car
Instance of a class: org.example.Car#ABC123
can i allow or deny access to a specific property of an asset class? like owner of a specific car?
Has left the channel.
@mmick we don't have property level access control yet
something we'd like to do eventually
Good Day. Has anyone compared the performance of Golang chaincode, composer runtime business network and node chaincode? We are really particular about this. Any insight would be much appreciated.
[ ](https://chat.hyperledger.org/channel/composer?msg=cNhSqWFXc7rKgwTrd) @davidkel As usual, you were spot on regarding the endorsement policy error, in the chain code there was a variable getting set with a new Date() call in the chain code. It worked fine when we only had one peer, but failed like a champ with multiple endorsement peers (as one would expect) Thanks!
Hi. While following steps on https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html, I got following error when I run a request to create Identity.
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 140322306012992:error:1411713E:SSL routines:ssl_check_srvr_ecc_cert_and_alg:ecc cert not for signing:../deps/openssl/openssl/ssl/ssl_lib.c:2520:
140322306012992:error:14082130:SSL routines:ssl3_check_cert_and_algorithm:bad ecc cert:../deps/openssl/openssl/ssl/s3_clnt.c:3550:
]
Command failed
Has anyone seen this issue before. All the previous commands were successful
I could actually get past that error.
Now when I start the network, I get following error.
[opc@hyperledger Org1]$ composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
Starting business network from archive: tutorial-network@0.0.1.bna
Error: Archive file tutorial-network@0.0.1.bna does not exist.
Command failed
The question is, where does it create tutorial-network@0.0.1.bna file when I install runtime
hi everyone, i have a question about developing web application. *registry.getAll()* method returns array of resources and can't send it to client it need to be serialized, but *serializer.toJSON()* method works only with instances of *Resource*, not with arrays. I should serialize them in a loop? Or there is other ways that i missed. And how composer-rest-server works with list of resources? Thanks for help)
[ ](https://chat.hyperledger.org/channel/composer?msg=BejHvHBQniC89Resi) @kassymkhanTJ I suggest you serialize each item using a foreach loop. That works.
Hello everyone! Has anyone compared the performance of Golang chaincode with composer runtime business network and node chaincode? We are really particular about this. Any insight would be much appreciated.
@kiranthakkar - The MultiOrg tutorial is quite complicated and assumes people have done other tutorials before and have .bna file. You can create one using the Developer Tutorial ( https://hyperledger.github.io/composer/tutorials/developer-tutorial.html ). Perhaps the doc should list it as a pre-requisite.
[ ](https://chat.hyperledger.org/channel/composer?msg=XEhu5YEQdof9n8yG9) @sstone1 is it possible to apply such constraint using node sdk?
[ ](https://chat.hyperledger.org/channel/composer?msg=BejHvHBQniC89Resi) @kassymkhanTJ this Stack Overflow may be of some use to you -> https://stackoverflow.com/questions/47012578/retrieving-array-of-assets-in-hyperledger-composer . 2nd question: perhaps see (or try out) this tutorial to get an insight https://hyperledger.github.io/composer/tutorials/queries.html
Hi everyone. I have a transaction that should update an object (A). This object has a relationship with another object (B). I update the object A and then try to update B. but when I try to update be with its registry (different from B) I get an error : ``` Error: Expected a Resource or Concept.```
Hi everyone. I have a transaction that should update an object (A). This object has a relationship with another object (B). I update the object A and then try to update B. but when I try to update B with its registry (different from B), I get an error : ``` Error: Expected a Resource or Concept.```
Hi everyone. I have a transaction that should update an object (A). This object has a relationship with another object (B). I update the object A and then try to update B. but when I try to update B with its registry (different from B ), I get an error : ``` Error: Expected a Resource or Concept.```
Hi everyone. I have a transaction that should update an object (A). This object has a relationship with another object (B). I update the object A and then try to update B. but when I try to update B with its registry (different from A ), I get an error : ``` Error: Expected a Resource or Concept.```
any idea ?
I try to update B like this : ``` bRegistry.update(aObject.bObject);```
[ ](https://chat.hyperledger.org/channel/composer?msg=CZNQbE2diJrpGiznZ) @RajuJose you would change it such that the asset a1 is unassigned [the owner] - you could have a participant that represents that too. But thereafter, resolving related assets for the target owner would only show a1 and a2. Relationships are not enforced (its not a relational DB). See more here also on discussion of relationships https://github.com/hyperledger/composer/issues/3065#issuecomment-354953014
how to deploy business network on cloud ?? which cloud environment can be used for free ?
[ ](https://chat.hyperledger.org/channel/composer?msg=Gun28TQEaASWjmXTx) @CorentinPacaud see examples here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L77 or here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L22 would also check your modeled transaction is set up correctly..
Is there any API for getting all the identities issued to a participant?
[ ](https://chat.hyperledger.org/channel/composer?msg=fkXAPwfyRmsnB6Ee8) @yogesh.fulsunge others can comment, but there are a few Fabric platforms you can just google and proceed to try out. Not really a #composer question per se.
Has joined the channel.
@mahoney1 hi, consider the following network model and associated transaction processing function. It seems that a SampleAsset instance with id ='1' and otherId=1 can not be added to registry. TPF always fails as "Failed to add object with ID '1' as the object already exists". But the registry is empty.
```
namespace trial
asset SampleAsset identified by id {
o String id
o Long otherId
}
transaction SampleTran {
}
/**
* @param {trial.SampleTran} sampleTran
* @transaction
*/
function onTrialTran(tran) {
console.log('### entered tran processing function ...');
return getAssetRegistry('trial.SampleAsset')
.then(function(registry){
var factory = getFactory();
var anAsset = factory.newResource('trial', 'SampleAsset', '1');
anAsset.otherId = 1;
console.log('### saving sample asset ...');
return registry.add(anAsset);
});
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=AKd69xN68stZfKZmZ) @varun-raj Historian is probably your best bet. It has a historical record of all `IssuedIdentity` transactions such as (example) ```{
"$class": "org.hyperledger.composer.system.IssueIdentity",
"participant": "resource:org.acme.trading.Trader#TRADER1",
"identityName": "tid1",
"transactionId": "3b609309-1d6e-45ac-8a2d-c1c28fc8d93a",
"timestamp": "2017-12-19T15:25:46.053Z"
}``` the link shows an API example of accessing Historian records - should be straightforward to find the matching participant, and IssueIdentity transactions.and check out the structure of the Historian Record (in particular, the relationship to participant recorded at the time of issue)
[ ](https://chat.hyperledger.org/channel/composer?msg=AKd69xN68stZfKZmZ) @varun-raj Historian is probably your best bet. It has a historical record of all `IssuedIdentity` transactions such as (example) ```{
"$class": "org.hyperledger.composer.system.IssueIdentity",
"participant": "resource:org.acme.trading.Trader#TRADER1",
"identityName": "tid1",
"transactionId": "3b609309-1d6e-45ac-8a2d-c1c28fc8d93a",
"timestamp": "2017-12-19T15:25:46.053Z"
}``` [this doc link](https://hyperledger.github.io/composer/reference/historian.html) shows an API example of accessing Historian records - should be straightforward to find the matching participant, and IssueIdentity transactions.and check out the structure of the Historian Record (in particular, the relationship to participant recorded at the time of issue)
Oh yeah this helps :D Thanks @mahoney1
But currently multiple AND in query doesnt work right? @mahoney1
@uber.twin hmm what happens when you try '2' or '11' ?
[ ](https://chat.hyperledger.org/channel/composer?msg=S6NqSK46sjibzSg5b) @varun-raj multiple ands should work eg. `WHERE ((age < _$ageParam AND firstName == 'Jon') AND (lastName != 'Doe'))` https://hyperledger.github.io/composer/reference/query-language.html
[ ](https://chat.hyperledger.org/channel/composer?msg=impix4kssXFrCvFD2) @mahoney1 Sure let me try like that :)
Also @mahoney1 can we revoke the identity with `identityName`? Because the history returns only the identityName
[ ](https://chat.hyperledger.org/channel/composer?msg=ZEhE47TgtPHPd8fFH) @mahoney1 it seems it works when the "id" value is anything but '1'
[ ](https://chat.hyperledger.org/channel/composer?msg=ZEhE47TgtPHPd8fFH) @mahoney1 it seems it works when the "id" value is anything but '1'. it also works if I remove the ```o Long otherId``` field
[ ](https://chat.hyperledger.org/channel/composer?msg=ZEhE47TgtPHPd8fFH) @mahoney1 it seems it works when the "id" value is anything but '1'.
@mahoney1 I've tried it with (id='2', otherId=1) and (id='3', otherId=1) and it works, however when performing a query, the results does not include the 'otherId' field :
@mahoney1 I've tried it with (id='2', otherId=1) and (id='3', otherId=1) and it works, however when performing a query, the result does not include the 'otherId' field :
@mahoney1 I've tried it with (id='2', otherId=1) and (id='3', otherId=1) and it works
```[
{
"$class": "trial.SampleAsset",
"id": "2"
},
{
"$class": "trial.SampleAsset",
"id": "3"
}
]```
@varun-raj - have a look at these 2 docs which show listing and revoking identities from the API and the CLI (it is the ID you need to revoke, not the shorter name)
https://hyperledger.github.io/composer/managing/identity-list.html
https://hyperledger.github.io/composer/managing/identity-revoke.html
I just figured out now. Queried identity record with the name to find the id :D
[ ](https://chat.hyperledger.org/channel/composer?msg=p9Fnq5mAcwf96nqkp) @uber.twin so are you using an identity that is subject to ACLs and Registry possibly not showing it (but existing) for that reason? Can't think why id=1 would be reserved off-hand.
[ ](https://chat.hyperledger.org/channel/composer?msg=p9Fnq5mAcwf96nqkp) @uber.twin so are you using an identity that is subject to ACLs and Registry possibly not showing it (but existing) for that reason? Can't think why id=1 would be reserved off-hand. (Shouldn't matter what otherId is set to at this point)
@mahoney1 could you give it a try?
@mahoney1 could you give it a try? I don't have ACL discriminating access based on the 'id' value
@mahoney1 could you give it a try? I don't have ACL discriminating access based on the 'id' value. Also, when I remove the "otherId" field, there are no problems adding a an asset instance with id='1'
Clipboard - January 5, 2018 12:50 PM
@uber.twin - ok so I tried it -> works for me (submitted transactions in Playground fyi). using your code sample ```/**
* @param {org.acme.trading.SampleTran} sampleTran
* @transaction
*/
function onTrialTran(tran) {
console.log('### entered tran processing function ...');
return getAssetRegistry('org.acme.trading.SampleAsset')
.then(function(registry){
var factory = getFactory();
var anAsset = factory.newResource('org.acme.trading', 'SampleAsset', '1');
anAsset.otherId = 1;
console.log('### saving sample asset ...');
return registry.add(anAsset);
});
}``` (just different namespace).
@uber.twin - ok so I tried it (id 1 and id 11, two txns) -> works for me (submitted transactions in Playground fyi). using your code sample ```/**
* @param {org.acme.trading.SampleTran} sampleTran
* @transaction
*/
function onTrialTran(tran) {
console.log('### entered tran processing function ...');
return getAssetRegistry('org.acme.trading.SampleAsset')
.then(function(registry){
var factory = getFactory();
var anAsset = factory.newResource('org.acme.trading', 'SampleAsset', '1');
anAsset.otherId = 1;
console.log('### saving sample asset ...');
return registry.add(anAsset);
});
}``` (just different namespace).
@mahoney1 alright, thank you for your time. I can't explain it
@mahoney1 just to make sure, you ran it with composer 0.16.x, right?
@uber.twin 0.16.2 yes. When you 'see there are no assets' [prior to running the transaction ] - are you looking in Playground for the asset listing when you do this ?
@uber.twin 0.16.2 yes. When you 'see there are no assets' [prior to running the transaction ] - are you looking in Playground for the asset listing when you do this ? Or else you could use the `getAll()` API to see what is returned prior to submitting transaction eg ```return getAssetRegistry('org.acme.trading.SampleAsset')
.then(function (txnAssetRegistry) {
// Get all of assets
return txnAssetRegistry.getAll();
})
.then(function (assets) {
// Process the array of vehicle objects.
assets.forEach(function (item) {
console.log(item.id);
});
})``` (paraphrased)
@uber.twin 0.16.2 yes. When you 'see there are no assets' [prior to running the transaction ] - are you looking in Playground for the asset listing when you do this ? Or else you could use the `getAll()` API to see what is returned prior to submitting transaction eg ```return getAssetRegistry('org.acme.trading.SampleAsset')
.then(function (txnAssetRegistry) {
// Get all of assets
return txnAssetRegistry.getAll();
})
.then(function (assets) {
// Process the array of objects.
assets.forEach(function (item) {
console.log(item.id);
});
})``` (paraphrased)
@mahoney1 yes, I do a query but not with playground. I verify it through a client side API (registry.resolveAll()) or a REST based query. None of them see any existing instance.
I see
@mahoney1 ok, I teared down the network and restarted. It works.
coud id be possible that after a network update, the left over inconsistent data won't show in queries but it will collision with new data?
@mahoney1 ok, I teared down the network and restarted. It works.
coud id be possible that after a network update, the left over inconsistent data won't show in queries but it will colide with new data?
@uber.twin - certainly with the model file changes, it can explain why you see no asset resources (the model's changed). And likewise when you change it back, you will see the assets (in REST query). But the point is the key is in use. This is why you could create '2' and not '1' in the same business network (it is the same name still). However, I'm sure if you had deleted it first (ie in 'old' where you can see it via REST), then add it (in new model) you should be able to add the asset using your transaction. Be interested to know what you get
@mahoney1 ok, originally, my asset only had the 'id' field. Than I did a network update to add the 'otherId'. At this point, since I didn't see any data reporter by REST, I thought the registry was wiped too.
but I guess the data was still there, just not visible
[ ](https://chat.hyperledger.org/channel/composer?msg=DwBCiu57ZA5HybQCJ) @uber.twin yep, it was :-)
ok, thank you for clearing this up for me:)
I think the date should still show, possibly truncated
I think the old data should still show, possibly truncated
@mahoney1 I think there is no means of deleting the old inconsistent data either.
@mahoney1 I think there are no means of deleting the old inconsistent data either.
@mahoney1 after testing with your github link shared before, I always the same error. ```Exiting Chaincode.Invoke 500 Error: Expected a Resource or Concept.```
@mahoney1 after testing with your github link shared before, I always have the same error. ```Exiting Chaincode.Invoke 500 Error: Expected a Resource or Concept.```
@mahoney1 after testing with your github link shared before, I always have the same error. ```Exiting Chaincode.Invoke 500 Error: Expected a Resource or Concept.```
maybe I can share my BNA?
By the way, the ```
console.log("SH update: ", sharedHolder);``` shows this ```Relationship {id=org.odm.assets.SharedHolder#6001}
```
Can I do a registry.update on this ?
By the way, the ```
console.log("SH update: ", sharedHolder);``` shows this ```Relationship {id=org.odm.assets.SharedHolder#6001}
```
Can I do a registry.update on this ?
By the way, the ```console.log("SH update: ", sharedHolder);``` shows this ```Relationship {id=org.odm.assets.SharedHolder#6001}
```
Can I do a registry.update on this ?
By the way, the ``` console.log("SH update: ", sharedHolder); ``` shows this ```Relationship {id=org.odm.assets.SharedHolder#6001}
```
Can I do a registry.update on this ?
By the way, the
``` console.log("SH update: ", sharedHolder); ``` shows this ```Relationship {id=org.odm.assets.SharedHolder#6001}
```
Can I do a registry.update on this ?
By the way, the
``` console.log("SH update: ", sharedHolder); ```
shows this ```Relationship {id=org.odm.assets.SharedHolder#6001}
```
Can I do a registry.update on this ?
By the way, the
``` console.log("SH update: ", sharedHolder);```
shows this
```Relationship {id=org.odm.assets.SharedHolder#6001}
```
Can I do a registry.update on this ?
By the way, the ``` console.log("SH update: ", sharedHolder);``` shows this
```Relationship {id=org.odm.assets.SharedHolder#6001}
```
Can I do a registry.update on this ?
By the way, the ``` console.log("SH update: ", sharedHolder);``` shows this
```Relationship {id=org.odm.assets.SharedHolder#6001}
```
Can I do a registry.update on this ?
By the way, the ``` console.log("SH update: ", sharedHolder);```
```Relationship {id=org.odm.assets.SharedHolder#6001}
```
Can I do a registry.update on this ?
By the way, the
``` console.log("SH update: ", sharedHolder);```
shows this
```
Relationship {id=org.odm.assets.SharedHolder#6001}
```
Can I do a registry.update on this ?
By the way, the
```
console.log("SH update: ", sharedHolder);
```
shows this
```
Relationship {id=org.odm.assets.SharedHolder#6001}
```
Can I do a registry.update on this ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ax72vAJQicisuMAzq) @uber.twin you should be able to - the issue you had is one of visibility. If you change fields to become required fields, then stands to reason your assets should be updated with appropriate values, then you should be able to see them again (same ids). If you make the additional field(s) optional in your model, I believe you should still be able to see the 'old' data (and delete it as appropriate from the Registry, and recorded in Historian etc etc) - you can try from Playground.
@CorentinPacaud just send me the BNA via DM - will try take a look.
https://stackoverflow.com/questions/48112331/which-are-the-right-node-npm-versions-for-hyperledger-fabric-composer-rest-ser
tried it on windwos and Linux but i get this error. Can someone help ?
https://stackoverflow.com/questions/48112331/which-are-the-right-node-npm-versions-for-hyperledger-fabric-composer-rest-ser
Tried it on windoqs and Linux but i get this error. Can someone help?
https://stackoverflow.com/questions/48112331/which-are-the-right-node-npm-versions-for-hyperledger-fabric-composer-rest-ser
Tried it on windows and Linux but i get this error. Can someone help?
[ ](https://chat.hyperledger.org/channel/composer?msg=z8JaSN3LDTdnNxi4g) @michael_aR - OK, for future ref, please add tag hyperledger-composer to Stack Overflow - lots of tags but not the one we monitor :-)
Hyperledger Composer is not supported on Windows at the moment. These are the supported OS:
- Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12
Can I suggest working through this doc:
https://hyperledger.github.io/composer/installing/development-tools.html
and then this tutorial:
https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
[ ](https://chat.hyperledger.org/channel/composer?msg=z8JaSN3LDTdnNxi4g) @michael_aR - OK, for future ref, please add tag hyperledger-composer to Stack Overflow - you put lots of tags but not the one we monitor :-)
Hyperledger Composer is not supported on Windows at the moment. These are the supported OS:
- Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12
Can I suggest working through this doc:
https://hyperledger.github.io/composer/installing/development-tools.html
and then this tutorial:
https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
@rthatcher Thank you for your answer! I Tried it on or suse enterpise server with root and getting very similar errors
[ ](https://chat.hyperledger.org/channel/composer?msg=m7T8Dzw8DWKZz9FRd) @michael_aR I would suggest going with Ubuntu to begin with as it is supported and the docs are written for it - then when you have it all going, it would be easier to replicate on a different Linux if you have to.
Has joined the channel.
client version 1.22 is too old. Minimum supported API version is 1.24, please upgrade your client to a newer version
ERROR !!!! Unable to start network
client version 1.22 is too old. Minimum supported API version is 1.24, please upgrade your client to a newer version
ERROR !!!! Unable to start network
i am getting this error when i run the code ./byfn.sh -m up what should i do
@rthatcher It's in our insurance company and we use only SUSE enterprise linux distributions on our servers
most bigger company's use enterprise linux....
[ ](https://chat.hyperledger.org/channel/composer?msg=McLPQzB7BE5yMAYDX) @michael_aR - right SUSE or RedHat in the Computer room. So the docs I pointed you to were getting started type docs for developers and they are more likely on Mac or Ubuntu laptop/desktops (and yes Windows too). When you get to test/pilot/production in the Computer Room it will likely mostly be on Docker Engines so SUSE/RedHat will be fine there - or Cloud Providers.
@rthatcher when will we get a docker linux image for a restserver ?! BEcause we want to develop a small app for our company. The Fabric Testnetwork with Golang Chaincodes is working fine
@rthatcher when will we get a docker linux image for a restserver ?! Because we want to develop a small app for our company. The Fabric Testnetwork with Golang Chaincodes is working fine on our SUSE server.
[ ](https://chat.hyperledger.org/channel/composer?msg=q2BYqQMXqhbbBynSn) @michael_aR - you can do it now!
Try this doc as a Starter for the REST Server:
https://hyperledger.github.io/composer/integrating/integrating-index.html
And then the specifics for the Container version:
https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
@rthatcher composer-rest-server like in the link is not working on suse linux.... tried it with node 8.9.2 & npm 5.5.1
a docker image like with the other fabric peers whould be nice
a docker image like with the other fabric peers would be nice
a docker image like the other fabric images would be nice
"npm install -g composer-rest-server" is not installing right
what's the best way to implement a payment method with an fabric composer app?
@sstone1 what's the best way to implement a payment method with an fabric composer app?
[ ](https://chat.hyperledger.org/channel/composer?msg=Tjihk9cps7ZuSwJND) @Aditya1305249 - I assume you are following the Multi-org tutorial? (https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html)
I wonder if this is a Docker related version - can you try `docker version` ?
[ ](https://chat.hyperledger.org/channel/composer?msg=8mtTbyoDcnM6aeogQ) @rthatcher Thanks for the response. I have done that tutorial but I did not archive the network after the tutorial. That is the step I am missing then. Thank you very much.
I get below error message when I try to start the network. Looks like some issue with go
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: error starting container: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer/vendor/gopkg.in/olebedev/go-duktape.v3
In file included from chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:7:0:
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go: In function '_duk_error':
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.h:510:127: warning: right-hand operand of comma expression has no effect [-Wunused-value]
(duk_error_raw((ctx), (duk_errcode_t) (err_code), (const char *) (DUK_FILE_MACRO), (duk_int_t) (DUK_LINE_MACRO), __VA_ARGS__), (duk_ret_t) 0)
^
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:153:2: note: in expansion of macro 'duk_error'
duk_error(ctx, err_code, "%s", str);
^
# composer/vendor/gopkg.in/olebedev/go-duktape.v3
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.go:134: constant 18446744073709551615 overflows int
Has anyone seen this issue before
This is the command that I am running.
composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C /scratch/hyperledger/fabric-samples/first-network/profiles/Org1/alice/admin-pub.pem -A bob -C /scratch/hyperledger/fabric-samples/first-network/profiles/Org2/bob/admin-pub.pem
I don't know which logs can I look at from my peer docker container because the error message is, no valid responses from any peers.
@kiranthakkar please run `docker ps -a` and paste the results in here
[USER@hyperledger network]$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
677ddbb1c0cb dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab "chaincode -peer.a..." 3 hours ago Up 3 hours dev-peer1.org2.example.com-mycc-1.0
7fb53b526a83 dev-peer0.org1.example.com-mycc-1.0-384f11f484b9302df90b453200cfb25174305fce8f53f4e94d45ee3b6cab0ce9 "chaincode -peer.a..." 3 hours ago Up 3 hours dev-peer0.org1.example.com-mycc-1.0
d4459f3a8587 dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b "chaincode -peer.a..." 3 hours ago Up 3 hours dev-peer0.org2.example.com-mycc-1.0
329d3e5a6309 hyperledger/fabric-tools "/bin/bash -c './s..." 3 hours ago Exited (0) 9 minutes ago cli
b92493ed7497 hyperledger/fabric-peer "peer node start" 3 hours ago Up 3 hours 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
229dc6b3e30a hyperledger/fabric-peer "peer node start" 3 hours ago Up 3 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
448fc0ec2320 hyperledger/fabric-peer "peer node start" 3 hours ago Up 3 hours 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
18d50ae97c6c hyperledger/fabric-peer "peer node start" 3 hours ago Up 3 hours 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
0b5872af0ae0 hyperledger/fabric-ca "sh -c 'fabric-ca-..." 3 hours ago Up 3 hours 0.0.0.0:7054->7054/tcp ca_peerOrg1
be724d542a6e hyperledger/fabric-ca "sh -c 'fabric-ca-..." 3 hours ago Up 3 hours 0.0.0.0:8054->7054/tcp ca_peerOrg2
e1626dbdf72c hyperledger/fabric-couchdb "tini -- /docker-e..." 3 hours ago Up 3 hours 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
27f23b6e7791 hyperledger/fabric-couchdb "tini -- /docker-e..." 3 hours ago Up 3 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
0e0a46f83d1e hyperledger/fabric-couchdb "tini -- /docker-e..." 3 hours ago Up 3 hours 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
44693b360ec8 hyperledger/fabric-couchdb "tini -- /docker-e..." 3 hours ago Up 3 hours 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
6635521e8892 hyperledger/fabric-orderer "orderer" 3 hours ago Up 3 hours 0.0.0.0:7050->7050/tcp orderer.example.com
guys,
the below code exists in trade-network sample inside trade transaction function in script file ..
I understand its usage but I dont understand what are those keywords or code itself. thanks
return getAssetRegistry('org.acme.trading.Commodity')
.then(function (assetRegistry) {
// persist the state of the commodity
return assetRegistry.update(trade.commodity);
});
}
Has joined the channel.
@kiranthakkar please also run `docker images` and paste the results in here
Has joined the channel.
Hello all, I am receiving the error: "The keyword 'const' is reserved" which I think is because I'm not running on the v1.1 preview. When I run composer -v it says 0.16.2. How do I switch that to 0.17 and the v1.1 preview?
When I run 'docker images' it seems to show the v1.0.2, v1.0.4 and v1.1 are all installed.
I have run 'export FABRIC_VERSION=hlfv11'
@mostafa.elsayyad - I think if you follow the LAB exercise, it asks you to updated that javascript. That existing script is just sitting there by default
Can anyone help here
getting below error message when trying to run the "Trade" transaction from hyperledger composer REST server:
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: chaincode error (status: 500, message: Error: Instance NEM has a property named owner which is not declared in org.acme.biznet.Commodity)\n",
"stack": "Error: Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: chaincode error (status: 500, message: Error: Instance NEM has a property named owner which is not declared in org.acme.biznet.Commodity)\n\n at _initializeChannel.then.then.then.then.catch (/Users/Neha/.nvm/versions/node/v8.9.3/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:916:34)\n at
[ ](https://chat.hyperledger.org/channel/composer?msg=5yvv8nSoR6aSR94vD) @sstone1
[USER@hyperledger ~]$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab latest 49a4be129070 34 hours ago 151MB
dev-peer0.org1.example.com-mycc-1.0-384f11f484b9302df90b453200cfb25174305fce8f53f4e94d45ee3b6cab0ce9 latest 0c9ed7275b63 34 hours ago 151MB
dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b latest 2d1da0373f8e 34 hours ago 151MB
hyperledger/fabric-tools latest c584c20ac82b 2 months ago 1.42GB
hyperledger/fabric-tools x86_64-1.1.0-preview c584c20ac82b 2 months ago 1.42GB
hyperledger/fabric-couchdb latest 5b8a15e6e972 2 months ago 1.57GB
hyperledger/fabric-couchdb x86_64-1.1.0-preview 5b8a15e6e972 2 months ago 1.57GB
hyperledger/fabric-kafka latest cf09c5534ef9 2 months ago 1.37GB
hyperledger/fabric-kafka x86_64-1.1.0-preview cf09c5534ef9 2 months ago 1.37GB
hyperledger/fabric-zookeeper latest ac127485fdc7 2 months ago 1.37GB
hyperledger/fabric-zookeeper x86_64-1.1.0-preview ac127485fdc7 2 months ago 1.37GB
hyperledger/fabric-orderer latest 2fccc91736df 2 months ago 159MB
hyperledger/fabric-orderer x86_64-1.1.0-preview 2fccc91736df 2 months ago 159MB
hyperledger/fabric-peer latest 337f3d90b452 2 months ago 165MB
hyperledger/fabric-peer x86_64-1.1.0-preview 337f3d90b452 2 months ago 165MB
hyperledger/fabric-javaenv latest cd459b218651 2 months ago 1.49GB
hyperledger/fabric-javaenv x86_64-1.1.0-preview cd459b218651 2 months ago 1.49GB
hyperledger/fabric-ccenv latest 82489d1c11e8 2 months ago 1.35GB
hyperledger/fabric-ccenv x86_64-1.1.0-preview 82489d1c11e8 2 months ago 1.35GB
hyperledger/fabric-baseos latest 6be1916d236d 3 months ago 130MB
hyperledger/fabric-baseos x86_64-0.4.2 6be1916d236d 3 months ago 130MB
hyperledger/fabric-ca latest e549e8c53c2e 7 months ago 238MB
hyperledger/fabric-ca x86_64-1.0.0-beta e549e8c53c2e 7 months ago 238MB
I was doing the lab assignment for Hyperledger Composer
doing a sample tutorial-network business network and stumbling upon while doing the trnsaction
wondering if anyone could help me understnad the issue.. i have been trying from past 1 hour trying different approach, but none of them are working
this is my CTO
*
* My commodity trading network
*
namespace org.acme.biznet
asset Commodity identified by tradingSymbol {
o String tradingSymbol
o String description
o String mainExchange
o Double quantity
--> Trader owner
}
participant Trader identified by tradeId {
o String tradeId
o String firstName
o String lastName
}
transaction Trade {
--> Commodity commodity
--> Trader newOwner
}
here;s my logic.js
function tradeCommodity(trade) {
trade.commodity.owner = trade.newOwner;
return getAssetRegistry('org.acme.biznet.Commodity')
.then(function (assetRegistry) {
return assetRegistry.update(trade.commodity);
});
}
and here's ACL
rule Default {
description: "Allow all participants access to all resources"
participant: "ANY"
operation: ALL
resource: "org.acme.biznet.*"
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "ANY"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
using the REST server
here's my Data Source for: Trader
[
{
"$class": "org.acme.biznet.Trader",
"tradeId": "TID1",
"firstname": "TID1",
"lastname": "TID1"
},
{
"$class": "org.acme.biznet.Trader",
"tradeId": "TID2",
"firstname": "TID2",
"lastname": "TID2"
}
]
here;s my data soruce for: Commodity
{
"$class": "org.acme.biznet.Commodity",
"tradingSymbol": "Symbol1",
"description": "Cypto Symbol1",
"mainExchange": "Ex1",
"Quantity": 24,
"Owner": "TID1"
}
When issuing below trade, i'm gettign error
{
"$class": "org.acme.biznet.Trade",
"commodity": "Symbol1",
"newOwner": "TID2"
}
Error: chaincode error (status: 500, message: Error: Instance Symbol1 has a property named owner which is not declared in org.acme.biznet.Commodity)
This looks like quite straight forward to me, but not sure what am I missing here...? Please help
Has joined the channel.
The query functionality, does it depend on the couchdb support or does it work on default Level DB. https://hyperledger.github.io/composer/stable/tutorials/queries
Hello all, I was following the developer tutorial(https://hyperledger.github.io/composer/tutorials/developer-tutorial.html)
Hello all, I was following the developer tutorial(https://hyperledger.github.io/composer/tutorials/developer-tutorial.html)
I am unable to generate a PeerAdmin card
Hello all, I was following the developer tutorial(https://hyperledger.github.io/composer/tutorials/developer-tutorial.html)
I am unable to generate a PeerAdmin card
getting the following error:
```Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.2
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'
Command failed
```
Hello all, I was following the developer tutorial(https://hyperledger.github.io/composer/tutorials/developer-tutorial.html)
I am unable to generate a PeerAdmin card using './createPeerAdmin'
getting the following error:
```Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.2
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'
Command failed
```
Please help
Hello all, I was following the developer tutorial(https://hyperledger.github.io/composer/tutorials/developer-tutorial.html)
I am unable to generate a PeerAdmin card using './createPeerAdmin'
getting the following error:
```Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.2
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'
Command failed
```
Please help
Hello all, I was following the developer tutorial(https://hyperledger.github.io/composer/tutorials/developer-tutorial.html)
I am unable to generate a PeerAdmin card using './createPeerAdmin'
getting the following error:
```Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.2
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'
Command failed
```
Hello all, I was following the developer tutorial(https://hyperledger.github.io/composer/tutorials/developer-tutorial.html)
I am unable to generate a PeerAdmin card using './createPeerAdmin'
got the following error initially:
```Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.2
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'
Command failed
```
@gauthampamu It requires couchdb support
then I did `npm install grpc` in the node_modules directory.
After that got the following error while generating the peerAdmin card:
```Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.2
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'
Command failed
```
Please help
then I did `npm install grpc` inside the /usr/lib/node_modules/composer-cli/node_modules directory.
After that got the following error while generating the peerAdmin card:
```Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.2
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'
Command failed
```
Please help
then I did `npm install grpc` inside the /usr/lib/node_modules/composer-cli/node_modules directory.
After that got the following error while generating the peerAdmin card:
```Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.2
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'-Cannot find module 'grpc'
Command failed
```
Please help
Has joined the channel.
@bruteforced Some of your global npm modules have been installed as root. Make sure you're root and navigate to /usr/lib/node_modules/composer-cli/ and run npm rebuild --unsafe-perm
You might need to do that for the other composer modules as well.
@snowy13 Still showing the same error
node version?
Hey Guys,
Using Composer, I`ve received those errors
composer network ping -c admin@network
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
--card PeerAdmin@hlfv1, there is my card
I have deployed fabric--tools
It worked a few minutes ago, but when I delete everything and re-do the process
stops working :(
@snowy13 v8.9.4
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=7odudn3y9dMeSpGAn)
[ ](https://chat.hyperledger.org/channel/composer?msg=WNgCEHLZsNsQWW22w)
[USER@hyperledger ~]$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab latest 49a4be129070 2 days ago 151MB
dev-peer0.org1.example.com-mycc-1.0-384f11f484b9302df90b453200cfb25174305fce8f53f4e94d45ee3b6cab0ce9 latest 0c9ed7275b63 2 days ago 151MB
dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b latest 2d1da0373f8e 2 days ago 151MB
hyperledger/fabric-tools latest c584c20ac82b 2 months ago 1.42GB
hyperledger/fabric-tools x86_64-1.1.0-preview c584c20ac82b 2 months ago 1.42GB
hyperledger/fabric-couchdb latest 5b8a15e6e972 2 months ago 1.57GB
hyperledger/fabric-couchdb x86_64-1.1.0-preview 5b8a15e6e972 2 months ago 1.57GB
hyperledger/fabric-kafka latest cf09c5534ef9 2 months ago 1.37GB
hyperledger/fabric-kafka x86_64-1.1.0-preview cf09c5534ef9 2 months ago 1.37GB
hyperledger/fabric-zookeeper latest ac127485fdc7 2 months ago 1.37GB
hyperledger/fabric-zookeeper x86_64-1.1.0-preview ac127485fdc7 2 months ago 1.37GB
hyperledger/fabric-orderer latest 2fccc91736df 2 months ago 159MB
hyperledger/fabric-orderer x86_64-1.1.0-preview 2fccc91736df 2 months ago 159MB
hyperledger/fabric-peer latest 337f3d90b452 2 months ago 165MB
hyperledger/fabric-peer x86_64-1.1.0-preview 337f3d90b452 2 months ago 165MB
hyperledger/fabric-javaenv latest cd459b218651 2 months ago 1.49GB
hyperledger/fabric-javaenv x86_64-1.1.0-preview cd459b218651 2 months ago 1.49GB
hyperledger/fabric-ccenv latest 82489d1c11e8 2 months ago 1.35GB
hyperledger/fabric-ccenv x86_64-1.1.0-preview 82489d1c11e8 2 months ago 1.35GB
hyperledger/fabric-baseos latest 6be1916d236d 3 months ago 130MB
hyperledger/fabric-baseos x86_64-0.4.2 6be1916d236d 3 months ago 130MB
hyperledger/fabric-ca latest e549e8c53c2e 7 months ago 238MB
hyperledger/fabric-ca x86_64-1.0.0-beta e549e8c53c2e 7 months ago 238MB
Hello
I have a condition . I want to disabled all participants access to read an asset except for owner and who's ids are stored in the owner's list. can i do that in acl file.
@kiranthakkar you should be using Fabric v1.0.x, but you are using Fabric v1.1-preview
Are there plans to have client SDKs in languages other than javascript?
I'm thinking if some enterprise already have systems in Java or something else, and want to communicate with the blockchain....
And, on a related note, could they interact with the composer business network with the plain Fabric SDK?
@nasht00 my team has no plans to do this at the moment. assuming the language is supported by a Fabric SDK, then you can use Fabric SDK to interact with a deployed business network - assuming you can figure out what chaincode calls to make! and if someone wanted to work on contributing the relevant JavaScript Composer code to run on top of the Java Fabric SDK we'd be happy to help them get up and running...
https://github.com/hyperledger/composer/issues/2182
OK thanks. Once a Java customer signs, you'll probably hear from us again ;)
Hello everyone,
I am trying to deploy fabric in for multiple organization referring https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html but in step 11 i am getting errorError: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to deserialize cr eator identity, err the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" wh ile trying to verify candidate authority certificate "ca.org1.example.com")
Response from attempted peer comms was an error: Error: Failed to deserialize cr eator identity, err the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" wh ile trying to verify candidate authority certificate "ca.org1.example.com")
Command failed
PFA the screen shots
connection-org 1-only.json.png
error on runtime install.png
@Abhi119 - this may be an error with the Certificates in the cards you created and imported from Step 5 onwards. Perhaps checking that you located and used the correct certificate files in steps 5 to 8. (If you need to redo these steps delete the .card files, _and_ the imported cards with the command `composer card delete` )
[ ](https://chat.hyperledger.org/channel/composer?msg=pfF5nDBxrN2t4Wvi3) @jaswanth - The `pii-network` in the samples has an ACL that does what I think you are trying to achieve - I would suggest looking at that.
how to run the composer-rest-server forever
in ubuntu
- thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=5qduYFB64d8EEbb7K) @jon_s - if you want to run the Composer REST Server continuously, then I would think creating a script to have it started as a service using systemctl is one approach, the other is to run it in a docker container with I think uses PM2 to retry. You would then use your normal operational management tools for monitoring processes / ports and configure alerts or restarts accordingly.
This doc shows how to configure the REST Server in a container:
https://sstone1.github.io/composer/integrating/deploying-the-rest-server.html
thanks @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=HvNFq38kJfMBsW3Af) @rthatcher Thank you . It worked
[ ](https://chat.hyperledger.org/channel/composer?msg=5qduYFB64d8EEbb7K) @jon_s you can use `forever` npm package or `nohup` as linux package. Alternatively, just create a new screen (screen is an ubuntu package), and run the command in that screen. This will allow you to go back to the screen whenever you want.
what is the exact command for that
thanks
@rthatcher I have tried deleting the cards but after that i am getting Error: Unable to read file: /home/ubuntu/fabric-tools/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/b14535d88e2fb676a3f1b077e2d586b8221a310e42f762d88e099b411b4e9eca_sk
on composer card create
composer card create error.png
how to store the issued identity card permently in .composer/cards folder
is ther any api for this
What's the best way to handle pagination in composer?
Hello. I would like to convert JSON object to JSON string (or vice versa) in TP function. How can I do this? Is it possible to use JSON.parse and JSON.stringfy?
Hi all, Can we make access control for a part of the asset like I stored some user id's in the assets ( only these id's can have read access). i just want to know can i hide this field from all the participants except the owner. ( i just want to hide it so that no one knows who can see his asset except the owner)
Hi all, Can we make access control for a part of the asset , I stored some user id's in the assets ( only these id's can have read access). i just want to know can i hide this field from all the participants except the owner. ( i just want to hide it so that no one knows who can see his asset except the owner)
Hi all, Can we make access control for a part of the asset , I stored some user id's in the assets's accessControl field ( only these id's can have read access). i just want to know can i hide this field from all the participants except the owner. ( i just want to hide it so that no one knows who can see his asset except the owner)
Hi all, Can we make access control for a part of the asset , I stored some user id's in the asset ( only these id's can have read access). i just want to know can i hide this field from all the participants except the owner. ( i just want to hide it so that no one knows who can see his asset except the owner)
[ ](https://chat.hyperledger.org/channel/composer?msg=XP2xXEciRMdcwnFLJ) @AkshayJindal You have serializer api for that. fromJSON and toJSON can be used from that
How can we issue new identities from rest server ?
How can we issue new identities in rest server ?
[ ](https://chat.hyperledger.org/channel/composer?msg=YzML9WKJqZvEPoDbj) I think i found it , its under System
[ ](https://chat.hyperledger.org/channel/composer?msg=ZJG7iKrDnKjbB83S5) @jaswanth - yes `/system/identities/issue`
@Abhi119 - I think you just need to find those files on your system - perhaps using more or cat to display them will ensure you have the correct paths/names.
[ ](https://chat.hyperledger.org/channel/composer?msg=XP2xXEciRMdcwnFLJ) @AkshayJindal some examples here for you -> https://stackoverflow.com/questions/46686996/search-for-an-specific-asset-inside-a-transaction/46959640#46959640 and JSON.parse -> https://stackoverflow.com/questions/46185606/would-like-to-upload-json-format-datafile-into-hyperledger-composer-asset-regist
[ ](https://chat.hyperledger.org/channel/composer?msg=zXW6gP54JFfkinTHh) @jon_s - does `composer card import` help you?
https://sstone1.github.io/composer/reference/composer.card.import.html
[ ](https://chat.hyperledger.org/channel/composer?msg=zXW6gP54JFfkinTHh) @jon_s - does `composer card import` help you?
https://hyperledger.github.io/composer/reference/composer.card.import.html
[ ](https://chat.hyperledger.org/channel/composer?msg=nsifMmpBZccJiricd) @varun-raj normally it would be via LIMIT/SKIP in queries but currently support is blocked by Fabric as described here https://github.com/hyperledger/composer/issues/1015
[ ](https://chat.hyperledger.org/channel/composer?msg=Pq7Hn2PQxrXvdmFyJ) @mahoney1 is there any other way to handle large data that's retrieved?
[ ](https://chat.hyperledger.org/channel/composer?msg=Q67QvwotTJCpLcob5) @varun-raj see the discussion (and comments) here -> https://jira.hyperledger.org/browse/FAB-2809 think it will be of use to you.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=jXh6gscurx2gZ7X26) @jaswanth [ ](https://chat.hyperledger.org/channel/composer?msg=jXh6gscurx2gZ7X26) @jaswanth hi - currently not possible for property (field) based access control in ACL runtime -> https://github.com/hyperledger/composer/issues/983 but if you insist on keeping the authorized list on the asset (I can see why you might do that), maybe store a hash of the authorised list in an array eg. `String[] Authorised optional` then something like ```
rule sampleRule {
description: "only allowed users"
participant(p): "org.acme.model.Participant"
operation: ALL
resource(r): "org.acme.model.Asset"
condition: ( r.Authorised.indexOf(hashCode(p.getIdentifier()) > -1) ``` where `hashCode` is a function defined in a script file in js directory .... (and possibly add an OR `||` for `p.getIdentifier() === r.owner.getIdentifier()` for ALLOWing the asset owner in the condition statement. Maybe this helps
action: ALLOW
}
[ ](https://chat.hyperledger.org/channel/composer?msg=jXh6gscurx2gZ7X26) @jaswanth [ ](https://chat.hyperledger.org/channel/composer?msg=jXh6gscurx2gZ7X26) @jaswanth hi - currently not possible for property (field) based access control in ACL runtime -> https://github.com/hyperledger/composer/issues/983 but if you insist on keeping the authorized list on the asset (I can see why you might do that), maybe store a hash of the authorised list in an array eg. `String[] Authorised optional` then something like ```
rule sampleRule {
description: "only allowed users"
participant(p): "org.acme.model.Participant"
operation: ALL
resource(r): "org.acme.model.Asset"
condition: ( r.Authorised.indexOf(hashCode(p.getIdentifier()) > -1) action: ALLOW``` where `hashCode` is a function defined in a script file in js directory .... (and possibly add an OR `||` for `p.getIdentifier() === r.owner.getIdentifier()` for ALLOWing the asset owner in the condition statement. Maybe this helps
action: ALLOW
}
[ ](https://chat.hyperledger.org/channel/composer?msg=jXh6gscurx2gZ7X26) @jaswanth hi - currently not possible for property (field) based access control in ACL runtime -> https://github.com/hyperledger/composer/issues/983 but if you insist on keeping the authorized list on the asset (I can see why you might do that), maybe store a hash of the authorised list in an array eg. `String[] Authorised optional` then something like ```
rule sampleRule {
description: "only allowed users"
participant(p): "org.acme.model.Participant"
operation: ALL
resource(r): "org.acme.model.Asset"
condition: ( r.Authorised.indexOf(hashCode(p.getIdentifier()) > -1) action: ALLOW``` where `hashCode` is a function defined in a script file in js directory .... (and possibly add an OR `||` for `p.getIdentifier() === r.owner.getIdentifier()` for ALLOWing the asset owner in the condition statement. Maybe this helps
action: ALLOW
}
Facing a problem in Deploying the business network:
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card
Starting business network from archive: tutorial-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: tutorial for new application in BC
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: Failed to receive commit notification for transaction '258ba4817b256aaa1753f8fc1ba7fb889cf463c30946d0eafed22527504557b6' within the timeout period
Command failed
I am not able to go beyond this. I am just learning this for the first time
@codenacci did you do a prior `composer runtime install --card PeerAdmin@hlfv1 tutorial-network` ? This is possibly why you get the runtime error. I assume you are following this tutorial ? https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
@codenacci did you do a prior `composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network` ? This is possibly why you get the runtime error. I assume you are following this tutorial ? https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
Hi, in a initial go , i mispelt the name space in my yo configuration. I have deleted and corrected it, but it seems like the name space still persists ie.
'''
Pros-MacBook-Pro:tutorial-network Santi$ composer archive create -t dir -n .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /Users/pro/~fabric-tools/tutorial-network
TypeNotFoundException: Namespace is not defined for type org.acne.biznet.Trade
Command failed
# org.acne.biznet.Trade is the error. Should be 'acme'
```
I have the proper spelling of the name space, but it is still throwing the same error
Hi, in a initial go , i mispelt the name space in my yo configuration. I have deleted and corrected it, but it seems like the name space still persists ie.
'''
Pros-MacBook-Pro:tutorial-network Santi$ composer archive create -t dir -n .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /Users/pro/~fabric-tools/tutorial-network
TypeNotFoundException: Namespace is not defined for type org.acne.biznet.Trade
Command failed
# org.acne.biznet.Trade is the error. Should be 'acme'
```
I have the proper spelling of the name space, but it is still throwing the same error
Hi, in a initial go , i mispelt the name space in my yo configuration. I have deleted and corrected it, but it seems like the name space still persists ie.
'''
Pros-MacBook-Pro:tutorial-network Santi$ composer archive create -t dir -n .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /Users/pro/~fabric-tools/tutorial-network
TypeNotFoundException: Namespace is not defined for type org.acne.biznet.Trade
Command failed
# org.acne.biznet.Trade is the error. Should be 'acme'
```
I have the proper spelling of the name space, but it is still throwing the same error
Hi, in a initial go , i mispelt the name space in my yo configuration. I have deleted and corrected it, but it seems like the name space still persists ie.
```
Pros-MacBook-Pro:tutorial-network Santi$ composer archive create -t dir -n .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /Users/pro/~fabric-tools/tutorial-network
TypeNotFoundException: Namespace is not defined for type org.acne.biznet.Trade
Command failed
# org.acne.biznet.Trade is the error. Should be 'acme'
```
I have the proper spelling of the name space, but it is still throwing the same error
Does anyone know how to resolve this?
you have 'acne' maybe you should have 'acme' ?
sorted it out. There was a typo in my lib/logic.js file. I had copied the code over so everytime I copied it back it errored again
`@param {org.acne.biznet.Trade} trade`
right - now matches.
yes it does :) I was reffereing to the `yo hyperledger-composer:businessnetwork step
yes it does :) I was reffereing to the `yo hyperledger-composer:businessnetwork step`
yes it does :) I was reffereing to the `yo hyperledger-composer:businessnetwork `step
thanks alot
Thats sorted but now I am getting this
```
IllegalModelException: Failed to find namespace org.hyperlegder.composer.system.**
```
when i run `composer archive create -t dir -n .`
its `org.hyperledger.composer.system.**` - typo
Godsend
My dyslexia will be the death of me
thanks alot!
@snowy13 any lead on that above issue?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=D4H6jkeWgTYkKuEw5) @sstone1 Thanks Simon. That fixed the issue.
0
down vote
favorite
I am following the tutorial here:
https://hyperledger.github.io/composer/tutorials/queries.html#step-six-test-the-rest-apis-and-create-some-data
When I try to post the data,
I get the following response:
{
"error": {
"statusCode": 400,
"name": "SyntaxError",
"message": "Unexpected token \n in JSON at position 38",
"body": "{\n \"$class\": \"org.acme.biznet.Trader,\n \"tradeId\": \"TRADER1\",\n \"firstName\": \"Jenny\",\n \"lastName\": \"Jones\"\n}",
"status": 400,
"stack": "SyntaxError: Unexpected token \n in JSON at position 38\n at JSON.parse (
0
down vote
favorite
I am following the tutorial here:
https://hyperledger.github.io/composer/tutorials/queries.html#step-six-test-the-rest-apis-and-create-some-data
When I try to post the data,
I get the following response:
```
{
"error": {
"statusCode": 400,
"name": "SyntaxError",
"message": "Unexpected token \n in JSON at position 38",
"body": "{\n \"$class\": \"org.acme.biznet.Trader,\n \"tradeId\": \"TRADER1\",\n \"firstName\": \"Jenny\",\n \"lastName\": \"Jones\"\n}",
"status": 400,
"stack": "SyntaxError: Unexpected token \n in JSON at position 38\n at JSON.parse (
I am following the tutorial here:
https://hyperledger.github.io/composer/tutorials/queries.html#step-six-test-the-rest-apis-and-create-some-data
When I try to post the data,
I get the following response:
```
{
"error": {
"statusCode": 400,
"name": "SyntaxError",
"message": "Unexpected token \n in JSON at position 38",
"body": "{\n \"$class\": \"org.acme.biznet.Trader,\n \"tradeId\": \"TRADER1\",\n \"firstName\": \"Jenny\",\n \"lastName\": \"Jones\"\n}",
"status": 400,
"stack": "SyntaxError: Unexpected token \n in JSON at position 38\n at JSON.parse (
I am following the tutorial here:
https://hyperledger.github.io/composer/tutorials/queries.html#step-six-test-the-rest-apis-and-create-some-data
When I try to post the data,
```
{
"$class": "org.acme.biznet.Trader,
"tradeId": "TRADER1",
"firstName": "Jenny",
"lastName": "Jones"
}
```
I get the following response:
```
{
"error": {
"statusCode": 400,
"name": "SyntaxError",
"message": "Unexpected token \n in JSON at position 38",
"body": "{\n \"$class\": \"org.acme.biznet.Trader,\n \"tradeId\": \"TRADER1\",\n \"firstName\": \"Jenny\",\n \"lastName\": \"Jones\"\n}",
"status": 400,
"stack": "SyntaxError: Unexpected token \n in JSON at position 38\n at JSON.parse (
@SamuelDare looks like the closing quote for *org.acme.biznet.Trader* is missing from your input
fuck my life!
Clearly been staring at the screen too long
thanks alot
@SamuelDare yw... come back from the ledge!
Has anyone successfully deployed composer 0.17.x on Fabric 1.1.0 preview?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=rG5MHS6WBdWCf77Yz) @mahoney1 yes I did the prior command: composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network
⠋ Installing runtime for business network tutorial-network. This may take a minu⠙ Installing runtime for business network tutorial-network. This may take a minute⠹
Command succeeded and then
[ ](https://chat.hyperledger.org/channel/composer?msg=rG5MHS6WBdWCf77Yz) @mahoney1 yes I did run the prior command: composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network
⠋ Installing runtime for business network tutorial-network. This may take a minu⠙ Installing runtime for business network tutorial-network. This may take a minute⠹
Command succeeded and then stuck on
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card
Starting business network from archive: tutorial-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: tutorial for new application in BC
Processing these Network Admins:
userName: admin
⠹ Starting business network definition. This may take a minute...
@rthatcher i am using sdk to issue identity. programatically i want to the same. thanks
Can anyone share their recipe successfully making Hyperledger Browser work on a Mac and connecting to the composer channel? Or perhaps any other fabric browser recommendation. Thanks much!
Team , we are using composer 0.16.0 for creating business network .
business network with all required PODs is getting deployed on kubernetes cluster with couchdb. We are using queries capability for business network asset selections . Facing issue with queries , where we have combination of parameters ( one is string parameter from asset and another is date range from Asset ) for example
query fetchAnimalBetweenBirthDateAndBreed {
description: "Get Animal list"
statement:
SELECT org.uk.defra.Animal
WHERE (breed ==_$breed AND dateOfBirth >=_$startdate AND dateOfBirth <=_$enddate)
}
But above query is just considering the breed selection instead of date of birth range.
Hi Everyone, Here is my next article on how to build a Nodejs application for hyperledger composer with NodeSDK.
https://www.skcript.com/svr/how-to-build-nodejs-application-for-your-hyperledger-composer-networks/
Can a transaction be called in another transaction function?
Also, does the query language support "count"?
Hi! Can I use the composer-client module in a browser?
Has joined the channel.
Hi Team,
I am getting the following error on attempting to deploy a sample network in Composer after updating the components
Error: Failed to load connection profile web-$default. Error was Error: ENOENT: no such file or directory, open '/home/composer/.composer-connection-profiles/web-$default/connection.json'
npm list -g --depth=0
/home/pwc/.nvm/versions/node/v6.11.1/lib
+-- @angular/cli@1.4.7
+-- angular-cli@1.0.0-beta.28.3
+-- bower@1.8.2
+-- composer-cli@0.16.2
+-- composer-playground@0.16.2
+-- composer-rest-server@0.16.2
+-- express@4.15.3
+-- generator-fabric-composer@0.7.1
+-- generator-hyperledger-composer@0.16.2
+-- graceful-fs@4.1.5
+-- grunt-cli@1.2.0
+-- gulp@3.9.1
+-- hfc@0.6.5
+-- hlc@0.0.12
+-- loopback-connector-mongodb@3.2.1
+-- node-gyp@3.6.2
+-- node-pre-gyp@0.6.38
+-- npm@5.5.1
+-- passport-github@1.1.0
+-- typescript@2.4.1
+-- typings@2.1.1
`-- yo@2.0.0
[ ](https://chat.hyperledger.org/channel/composer?msg=r6raY8Bm2GBgsG2DF) @prmdmshra - the folder /.composer-connection-profiles/... is old - from an earlier version of composer. Under 0.16.2 you will see all the Cards under `~/.composer/...` - so it looks like you have something old still running - perhaps you are using Playground in a Browser and there is old information in the browser local storage? Can you backup your Model etc and then clear local storage in your browser.
(from the browser console localStorage.clear() )
[ ](https://chat.hyperledger.org/channel/composer?msg=u9EBvc4i8YhfyArLu) @rthatcher
Thanks!! Clearing the Browser cache resolved the issue
[ ](https://chat.hyperledger.org/channel/composer?msg=r2Tg2YvqR9WTJpT8H) @kapilaArora as mentioned to Geomy, you need to check your source data - would suggest first to see what you get from `WHERE ( dateOfBirth >=_$startdate AND dateOfBirth <=_$enddate ) ` and where dateofBirth is defined as a DateTime in your asset.
[ ](https://chat.hyperledger.org/channel/composer?msg=TXbeKyodkRDFPqWkF) @varun-raj nice one Varun.
@codenacci I would do a `composer network list -c admin@tutorial-network` to check if you can query the network (assuming your Fabric is up)
[ ](https://chat.hyperledger.org/channel/composer?msg=zhdBgvemgh8KkqPFY) @mahoney1 :D Thanks @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=XHi5dHoYQbnhmK3j6) @gen_el a transaction cannot presently be called from another transaction - however, a transaction processor can call other functions to allow for code modularisation, but it will only be registered as a single transaction request in the transaction registry on Q2. COUNT is not yet supported (tracked by this issue https://github.com/hyperledger/composer/issues/2052 )
thanks @mahoney1 . Looks small shuffling in the condition worked for us. Yes Simple Date Range query was working fine from start .
Hello! I try to run multiple organizations guide ( https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html ) but with two virtual machines with ubuntu 16.04. (org1 and orderer on 1st; org2 on 2nd). I changed in connection files `localhost` with `172.20.141.140`(real ip addresses). But when I start network have next message ```ubuntu01@lsbt-blockchain:~/multi-org/fabric-samples/first-network$ composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem
Starting business network from archive: tutorial-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network@0.2.0-20180102082548
Description: The Hello World of Hyperledger Composer samples
Processing these Network Admins:
userName: alice
⠙ Starting business network definition. This may take a minute...E0109 14:17:29.796835361 2308 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0109 14:17:29.797142278 2308 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
⠋ Starting business network definition. This may take a minute...E0109 14:17:49.787946975 2308 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0109 14:17:49.790620778 2308 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
⠇ Starting business network definition. This may take a minute...E0109 14:18:09.787160408 2308 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0109 14:18:09.788510798 2308 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
✔ Starting business network definition. This may take a minute...
Successfully created business network card:
Filename: alice@tutorial-network.card
Command succeeded
```
Could you tell me what's wrong, please?
@argman - there is some explanation for this problem in Stack Overflow https://stackoverflow.com/questions/46191040/hyperledger-composer-connection-issue-when-using-tls so I would look at the connection.json files for Cert and hostnameOverride
Has joined the channel.
Hi Team I am new to this.. I have windows machine.. Is anyone know how to start work on block chain on windows
Hi,
My composer version: V0.16.2
i am trying to excecute the multi org setup steps given in the link: https://hyperledger.github.io/composer/stable/tutorials/deploy-to-fabric-multi-org.
While executing the command given in the steps number 18(c) and 19(c) composer network ping -c alice@tutorial-network and network ping -c bob@tutorial-network, getting error "Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT"
Except these two 18(c) and 19(c) composer network ping commands all other commands were succeded
Can anyone please help on this.
[ ](https://chat.hyperledger.org/channel/composer?msg=uZwpXGQ2wxqGaGXoq) Thanks @mahoney1.
Again i restarted the environment and tried to execute the composer network ping commands like,
Executed the "composer network ping -c alice@tutorial-network" straight after the import it is giving same error "Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT"
Executed "composer network ping -c bob@tutorial-network" after importing sometime, it is succeeded.
if i am listing the identities i can able to see state as ACTIVATED for bob and BOUND for alice.
can you please suggest how to resolve this problem, can i run composer card create (step 18a) once again.
[ ](https://chat.hyperledger.org/channel/composer?msg=mt3j73sWbRiQgRSeW) @amitjatav87 - This is a Hyperledger Composer channel, and at this time Composer is not supported on Windows - However many developers run an Ubuntu VM under Windows which works well if you have the resources to run VMs.
If you are wanting to start out developing with Hyperledger Composer on top of Hyperledger Fabric then please try these tutorials:
https://hyperledger.github.io/composer/tutorials/tutorials.html
If you just want to try Hyperledger Fabric - it does support Windows and you can start here:
http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#
If you just try Fabric, you will need to ask any questions in the #fabric channel
[ ](https://chat.hyperledger.org/channel/composer?msg=ZwPpS5WYohN3xN5mn) @rthatcher So, I check all certs and hostnameOverride as in the guide. Here is my connection file `connection-org1.json` :
``` {
"name": "byfn-network-org1",
"type": "hlfv1",
"mspID": "Org1MSP",
"peers": [
{
"requestURL": "grpcs://172.20.141.140:7051",
"eventURL": "grpcs://172.20.141.140:7053",
"cert": "crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt",
"hostnameOverride": "peer0.org1.example.com"
},
{
"requestURL": "grpcs://172.20.141.140:8051",
"eventURL": "grpcs://172.20.141.140:8053",
"cert": "crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt",
"hostnameOverride": "peer1.org1.example.com"
},
{
"requestURL": "grpcs://172.20.141.107:9051",
"cert": "crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt",
"hostnameOverride": "peer0.org2.example.com"
},
{
"requestURL": "grpcs://172.20.141.107:10051",
"cert": "crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt",
"hostnameOverride": "peer1.org2.example.com"
}
],
"ca": {
"url": "https://172.20.141.140:7054",
"name": "ca-org1",
"cert": "crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt",
"hostnameOverride": "ca.org1.example.com"
},
"orderers": [
{
"url" : "grpcs://172.20.141.140:7050",
"cert": "crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt",
"hostnameOverride": "orderer.example.com"
}
],
"channel": "mychannel",
"timeout": 300
} ```
Before, we test it with one vm and everything was alright
[ ](https://chat.hyperledger.org/channel/composer?msg=XMe3y8QsuEuC9LsJB) @kmohanar did you do the `ping` straight after the import ?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=AvGcC8ejme3hhZ69x) @argman did you recreate all your business network cards (such as PeerAdmin, which you're using for the network start) - not tried the tutorial with IP changes, TLS verify failure is usually overridden by setting the `hostnameOverride` property to the value of the server certificate's hostname. - is your CA server using https (I know the tutorial does) ? - perhaps you could try adding resolution in your hosts file?
[ ](https://chat.hyperledger.org/channel/composer?msg=AvGcC8ejme3hhZ69x) @argman did you recreate and import all your business network cards (such as PeerAdmin, which you're using for the network start) - not tried the tutorial with IP changes, TLS verify failure is usually overridden by setting the `hostnameOverride` property to the value of the server certificate's hostname. - is your CA server using https (I know the tutorial does) ? - perhaps you could try adding resolution in your hosts file?
[ ](https://chat.hyperledger.org/channel/composer?msg=AvGcC8ejme3hhZ69x) @argman did you recreate and import all your business network cards (such as PeerAdmin, which you're using for the network start) - not tried the tutorial with IP changes, TLS verify failure is usually overridden by setting the `hostnameOverride` property to the value of the server certificate's hostname. - is your CA server using https (I know the tutorial does) ? - perhaps you could try adding resolution in your hosts file and use the hostnames in the connection.,json not IPs?
[ ](https://chat.hyperledger.org/channel/composer?msg=AvGcC8ejme3hhZ69x) @argman have you generated/copied all the crypto material onto your two VMs? did you recreate and import all your business network cards (such as PeerAdmin, which you're using for the network start) - not tried the tutorial with IP changes, TLS verify failure is usually overridden by setting the `hostnameOverride` property to the value of the server certificate's hostname. - is your CA server using https (I know the tutorial does) ? - perhaps you could try adding resolution in your hosts file and use the hostnames in the connection.,json not IPs?
[ ](https://chat.hyperledger.org/channel/composer?msg=AvGcC8ejme3hhZ69x) @argman have you generated/copied all of the correct/appropriate crypto material (as your 'cert' fields refer to) onto your two VMs? did you recreate and import all your business network cards (such as PeerAdmin, which you're using for the network start) - not tried the tutorial with IP changes, TLS verify failure is usually overridden by setting the `hostnameOverride` property to the value of the server certificate's hostname. - is your CA server using https (I know the tutorial does) ? - perhaps you could try adding resolution in your hosts file and use the hostnames in the connection.,json not IPs?
[ ](https://chat.hyperledger.org/channel/composer?msg=4Z2F8ytxroqB6LjYQ) @mahoney1 I use default generated crypto materials for each VM. I recreated and import new cards (PeerAdmin etc) - Is `hostnameOverride` replace IPs in requests? - I use default CA server (as in first-network sample) - OK. I'll try to add hostnames to hosts file
@argman `hostnameOverride` is used in a test environment only, when the server certificate's hostname does not match the actual host endpoint that the server process runs at, to work around the client TLS verify failure by setting this property to the value of the server certificate's hostname eg "verified by `ca.org1.example.com` " etc.
Will we be able to implement complex queries like it is possible to do in chaincode on Fabric nn next versions of Composer? For instance, I would like to join multiple different classes of assets, edit the result based on some logic, and then return it. Right now I may do that by calling multiple simple Queries and building the final results outside Hyperledger. I would like to implement such complex query inside Hyperledger/Composer by using Javascript like I can do inside a transaction.
Will we be able to implement complex queries like it is possible to do in chaincode on Fabric nn next versions of Composer? For instance, I would like to join multiple different classes of assets, edit the result based on some logic, and then return it. Right now I may do that by calling multiple simple Queries and building the final results outside Hyperledger. I would like to implement such complex query inside Hyperledger/Composer by using Javascript like I can do inside a transaction. Is this already possible or are there plans to implement it? In other words, I would like to write transaction that returns a results.
@mahoney1 hi, just to make sure, a transaction (read, write, read) sequence with a registry will not work intuitively, isn't it? Namely, last "read" will not pickup the previous "write".
Has joined the channel.
@mahoney1 while i didn't have much time the last few weeks to develop on my composer application i found out what the cause was for the really slow transaction processing. I'm certain the cause was a circular reference in composer models. Removing these caused http requests to go from ~20 seconds to 0.5 seconds (still not very fast but that's because of my environment i'm guessing)
[ ](https://chat.hyperledger.org/channel/composer?msg=R6KXBoraJLc9Ah4hE) @uber.twin for same registry - correct, you're relying on the last write being committed but the last read can't rely on that. Fabric v1.0 does not support read your own writes; when you create or update an asset via a transaction, you cannot read those changes back until after the transaction has been committed. You must code for this behaviour.
[ ](https://chat.hyperledger.org/channel/composer?msg=fabGnzwBbJGh7WP42) @nickyromeijn thanks for the info - if you think you can reproduce the problem, by all means create an issue for that.
@mahoney1 thank you. so does Fabric 1.1 changing this pattern?
@mahoney1 thank you. so is Fabric 1.1 changing this pattern?
Hi, i have updated a network card given in the playground. How can i use it with composer-rest-server please?
Hi, i have updated a busness network given in the playground. How can i use it with composer-rest-server please?
Or is there a way to access the playground through http requests ?
[ ](https://chat.hyperledger.org/channel/composer?msg=GN7PnkRQ47yQxTZKk) @lucasdf with v1.1 Fabric nodiejs chaincode support (supportable with Composer v0.17.) you could use `requires` and call it from within your functions - you may wish to try it out https://github.com/hyperledger/composer/releases for info on the v0.17 / Fabric 1.1 preview release
[ ](https://chat.hyperledger.org/channel/composer?msg=GN7PnkRQ47yQxTZKk) @lucasdf `requires` will be supported in a later release of Composer (tba) and you call your custom query from a function
[ ](https://chat.hyperledger.org/channel/composer?msg=BRo3ewRdfSF35Fzq4) @uber.twin I should imagine its the same, the principle being - what if the transaction wasn't endorsed? The write isn't committed, your read from the registry has the original value.
Or can i download my network card ?
I have actually updated a busness network given in the playground. How can i use it with composer-rest-server please?
@mahoney1 registries not being Fabric concepts, it'd be nice if Composer would add a cache level to a registry, make it "read your writes" capable:)
and commit the cache to Fabric at the end of the transaction
[ ](https://chat.hyperledger.org/channel/composer?msg=EXjXBXjMsQnEyWDFM) @matrisis - this is the first doc for the Composer REST Server:
https://hyperledger.github.io/composer/integrating/getting-started-rest-api.html
There are then other documents in the section for more advanced usage.
@rthatcher I cannot access the business network i created in the playground? Because when i run composer-rest-server -c mycard. It doesn't work at all
It sayd this card doesnt exist
[ ](https://chat.hyperledger.org/channel/composer?msg=FxqbBxDRQ72CPXeMu) @matrisis - a couple of questions:
Did you have Playground Running locally (Not on Bluemix) ?
Did you deploy you network in Playground using the "Connection: hlfv1" section or the "Connection: Web Browser" section?
Can you run the command `composer card list` to show what cards you have available?
I run the playground locally using the "Connection: Web Browser" section.
composer card list`:
> ``` The following Business Network Cards are available:
Connection Profile: demo
┌─────────────┬────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────┼────────┼──────────────────┤
│ demoID@demo │ demoID │ │
└─────────────┴────────┴──────────────────┘
Issue composer card list --name
This nework card is empty, i just created it
This nework, i just created it
This nework card, i just created it
when i run `composer-rest-server -c demoID@demo` :
```Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'...```
If you have any idea @rthatcher :/
[ ](https://chat.hyperledger.org/channel/composer?msg=RRnSmJxucWgQ7vsCa) @matrisis - I assume you created your Fabric with Fabric Tools guided by this document:
https://hyperledger.github.io/composer/installing/development-tools.html
You should remember to run the `./createPeerAdminCard.sh` script
After you run that script you will have new card and you can restart Playground and you will see the "Connection: hlfv1" section
@rthatcher I tried it, i get this error :
``` Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.2
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'
Command failed
```
Are you running Node 9 ? Composer is supported for Node 8
Yes i run 9.3.0
@rthatcher but with node 8.9.4 i still get the same issue.
OK - I'm running 8.9.0
which version of node was set as the default when you did the install -g commands? Perhaps that is the problem?
Ok fixed the file execution using : https://github.com/hyperledger/composer/issues/1531
@rthatcher So now, how can i use my buisness network edited with playground ?
I still get the first error when running `composer-rest-server`
[ ](https://chat.hyperledger.org/channel/composer?msg=kdZfMJpLz8ur2XP4d) @matrisis - oh good. So you created your Business Network under "Web Browser" in Playground - so the Network was deployed only in your local Browser Storage. Either using Cut/Paste or by Export /Import you need to deploy your network under the Hlfv1 section - i.e. to a real Fabric. When you deploy to a real Fabric that process will generate a new 'Network Admin Card'.
After deploying to a real Fabric you should be able to re-do `composeer card list` and see your new Network Admin Card - something like admin@test-network
You should be able to start the REST server with that card
[ ](https://chat.hyperledger.org/channel/composer?msg=kdZfMJpLz8ur2XP4d) @matrisis - oh good. So you created your Business Network under "Web Browser" in Playground - so the Network was deployed only in your local Browser Storage. Either using Cut/Paste or by Export /Import you need to deploy your network under the Hlfv1 section - i.e. to a real Fabric. When you deploy to a real Fabric that process will generate a new 'Network Admin Card'. (You will use the Peer Admin card you created with the script to do the Deploy)
After deploying to a real Fabric you should be able to re-do `composeer card list` and see your new Network Admin Card - something like admin@test-network
You should be able to start the REST server with that card
Ok i get it now
@rthatcher Thank you.
However i still get the error : ```Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'```
[ ](https://chat.hyperledger.org/channel/composer?msg=vXPm4iipqqLgsAgro) @matrisis - I think this is still pointing to an environmental problem with Node - the ...node-v59-linux-x64... directory being an indicator.
@rthatcher So what should i do? Re-install ?
The folder /extension_binary/ doesnt exists at all
[ ](https://chat.hyperledger.org/channel/composer?msg=qaMAYoxk2ifhLKpM5) @matrisis - First I would save the work you have done on your Business Network - either Export it to a .BNA file, or just cut and paste the source text into a text file.
Next I would try `npm uninstall -g composer-cli` and also for composer-playground and rest-server (and generator if you installed that).
I'm not a node expert, but I think you can configure node for a default version if you have a multi-version install of node - make sure the default is set to 8.9
Ok thanks, i'll try that.
@rthatcher it didn't work. `/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/` juste doesn't exists and i don't know why
[ ](https://chat.hyperledger.org/channel/composer?msg=groHTo5A3upeX253Y) @matrisis hmmm e grpc module is a binary module and usually npm will download a prebuilt binary for your platform. If however it cannot do that (eg server down, or the platform is not recognised or you're behind a proxy so npm can't get out) then it will attempt to build the binary from source. You need to look at the output during the `npm -g install composer-cli` to see what is reported when npm attempts to install grpc - to determine what the problem is Also, are you doing the install as a 'non-root' user ?
[ ](https://chat.hyperledger.org/channel/composer?msg=groHTo5A3upeX253Y) @matrisis hmmm the grpc module is a binary module and usually npm will download a prebuilt binary for your platform. If however it cannot do that (eg server down, or the platform is not recognised or you're behind a proxy so npm can't get out) then it will attempt to build the binary from source. You need to look at the output during the `npm -g install composer-cli` to see what is reported when npm attempts to install grpc - to determine what the problem is Also, are you doing the install as a 'non-root' user ?
Ok found a way thanks, i rebuiled my composer-playground with `npm rebuild --unsafe-perm`
Hi
I am having issues running a network I have I have deployed locally on the online playground
after running
`curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash`
I get
Screen Shot 2018-01-09 at 19.26.51.png
Initially I thought it was because I hadnt deployed a business network
so I followed this : `https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org`
ie created business definitions and deployed to a local machine, created business network definitions and ran `curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash`
again
still got the same result
Would appreciate it if someone point out what I am doing wrong?
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
I cannot connect to the composer at https://localhost:3000/network/peers using Dockers.
passphrase
Hi, I want to enable HTTPS/TLS for my composer-rest-server and my private key is password protected. I can hardcode the passphrase for the private key in composer-rest-server/server.js to get it working from the command line `composer-rest-server -c admin@mynetwork`. What should I do if I want to run the composer-rest-server in Docker? Download hyperledger/composer-rest-server from GitHub, update server.js and build from local?
Another question: how do I disable the "/explorer" path?
I'm doing multiorg(here i'm usig 2 orgs) setup on on multiple machine so do i need to install composer on both the orgs?
Has joined the channel.
Hi all , I am trying to Issue the identity to a participant from the rest server . i have oauth through github ,Added admin to my wallet ( who is the Issurer) . When i try to issue through ```{
"participant": "org.acme.getinfo.User#u1",
"userID": "u1temp",
"options": {}
}```
it keeps on loading
Hi all , I am trying to Issue the identity to a participant from the rest server . i have oauth through github ,Added admin to my wallet ( who is the Issurer) . When i try to issue through ```{
"participant": "org.acme.getinfo.User#u1",
"userID": "u1temp",
"options": {}
}```
and click ` Try It Out` it keeps on loading .. no error response and success response ( its loading since yesterday !!). Any idea why this happening?
Hi all , I am trying to Issue the identity to a participant from the rest server . i have oauth through github ,Added admin to my wallet ( who is the Issurer) . I tried to issue the identity in `/system/identities/issue` and the data is ```{
"participant": "org.acme.getinfo.User#u1",
"userID": "u1temp",
"options": {}
}```
and click ` Try It Out` it keeps on loading .. no error response and success response ( its loading since yesterday !!). Any idea why this happening?
Check the console log for "composer-rest-server" to identify what exactly the error message is. [ ](https://chat.hyperledger.org/channel/composer?msg=vaWjeQSZ7Ptv8BSdY) @jaswanth
[ ](https://chat.hyperledger.org/channel/composer?msg=WA3yKcmAXy2vpsQyz) @jasoncys Thanks for the reply , i got an error there ```Uncaught DOMException: Failed to read the 'responseText' property from 'XMLHttpRequest': The value is only accessible if the object's 'responseType' is '' or 'text' (was 'blob').
at Request.
[ ](https://chat.hyperledger.org/channel/composer?msg=TXbeKyodkRDFPqWkF) @varun-raj :thumbsup: Very helpful,thank you!
i noticed that 0.16.3 is released. :thumbsup:
I guess you can try removing `"options": {}` and run it again. [ ](https://chat.hyperledger.org/channel/composer?msg=xGba3m2AaLPEbZF4W) @jaswanth
[ ](https://chat.hyperledger.org/channel/composer?msg=EvA3EoYkfQnAEpAdc) @mahoney1 . I am very new to this `hashing` can you please provide a doc or something to do that . and specially `where `hashCode` is a function defined in a script file in js directory` is this means that i need to write a function in js file and permission.acl can look into it and hash the participant and then it compares ?. Sorry if I am really asking a silly question.
[ ](https://chat.hyperledger.org/channel/composer?msg=EvA3EoYkfQnAEpAdc) @mahoney1 . I am very new to this `hashing` can you please provide a doc or something to do that . and specially from your response `hashCode is a function defined in a script file in js directory ' is this means that i need to write a function in js file and permission.acl can look into it and hash the participant and then it compares ?. Sorry if I am really asking a silly question.
[ ](https://chat.hyperledger.org/channel/composer?msg=EvA3EoYkfQnAEpAdc) @mahoney1 . I am very new to this `hashing` can you please provide a doc or something to do that . and specially from your response ` hashCode is a function defined in a script file in js directory ` is this means that i need to write a function in js file and permission.acl can look into it and hash the participant and then it compares ?. Sorry if I am really asking a silly question.
Hi Team,
Do we have an workaround for the following issue on v0.16.2
https://github.com/hyperledger/composer/issues/3055
Hi Team,
Do we have an workaround for the following issue on v0.16.2. I amm unable to run my demos on the new build and urgently need them up and working :-(
https://github.com/hyperledger/composer/issues/3055
fyi @here - the Community calltoday is at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest releases and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-10th-January-2018
fyi @here - the Community call today is at 9am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest releases and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-10th-January-2018
@jaswanth perhaps the answers in here can help - for string hashing -> https://stackoverflow.com/questions/7616461/generate-a-hash-from-string-in-javascript-jquery
Hi, I know Fabric 1.1 isn't even out yet, but does the Composer team have plans to make use of the new "side DB" feature? Is it on any roadmap?
my logic.js file ```function authorizeReadAccess(readAccess){
var factory = getFactory();
var user = getCurrentParticipant();
var PI = user.assetID;
PI.authorized.push(readAccess.userFullId);
return getAssetRegistry('org.acme.getinfo.PersonalInformation')
.then(function (assetRegistry) {
return assetRegistry.update(Pu);
});
} ```
I got Error as ```Error: chaincode error (status: 500, message: Error: last :Error: Expected a Resource or Concept.) ```
any idea Where I am doing wrong
my logic.js file ```function authorizeReadAccess(readAccess){
var factory = getFactory();
var user = getCurrentParticipant();
var PI = user.assetID;
PI.authorized.push(readAccess.userFullId);
return getAssetRegistry('org.acme.getinfo.PersonalInformation')
.then(function (assetRegistry) {
return assetRegistry.update(Pu);
});
} ```
I got Error as ```Error: chaincode error (status: 500, message: Error: last :Error: Expected a Resource or Concept.) ```
my logic.js file ```function authorizeReadAccess(readAccess){
var factory = getFactory();
var user = getCurrentParticipant();
var PI = user.assetID;
PI.authorized.push(readAccess.userFullId);
return getAssetRegistry('org.acme.getinfo.PersonalInformation')
.then(function (assetRegistry) {
return assetRegistry.update(PI);
});
} ```
I got Error as ```Error: chaincode error (status: 500, message: Error: last :Error: Expected a Resource or Concept.) ```
my logic.js file ```function authorizeReadAccess(readAccess){
var user = getCurrentParticipant();
var PI = user.assetID;
PI.authorized.push(readAccess.userFullId);
return getAssetRegistry('org.acme.getinfo.PersonalInformation')
.then(function (assetRegistry) {
return assetRegistry.update(PI);
});
} ```
I got Error as ```Error: chaincode error (status: 500, message: Error: last :Error: Expected a Resource or Concept.) ```
Has Bluemix support been dropped for one free (Lite) Hyperledger Fabric + Composer instances? Can't seem to create a container instance (I've deleted my old one) now for some reason.
is there call today ? because i join zoom but i don't found any one
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=rPitoznaDn52gutmi) @nasserfci - the call will be starting in 5 minutes I think
[ ](https://chat.hyperledger.org/channel/composer?msg=DeL5yZnZ55hhwpDqR)
The workaround seems to be renaming the IDs with string/text.
[ ](https://chat.hyperledger.org/channel/composer?msg=DeL5yZnZ55hhwpDqR)
The workaround seems to be renaming the ID with Text/String value
[ ](https://chat.hyperledger.org/channel/composer?msg=4eQTZX88hLa7nktfT) @Jakeeyturner - Sam created a new cluster and Fabric/Composer instance yesterday on Bluemix Container Services (IBM Cloud Container Services) - was a little slow in the initial Cluster request I think
[ ](https://chat.hyperledger.org/channel/composer?msg=2ARYviJpChR3GKzm5) @prmdmshra - my understanding is that the sample JSON provided shows the curly brackets {}, but if you supply a field:value pair as strings such as `"grower": "resource:org.acme.shipping.perishable.Grower#1732",` then the actual call works fine. So it is just the suggested sample JSON in error. It is currently shown as a p3 bug so probably not scheduled for immediate fix.
Has joined the channel.
hi, I am trying the "Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations)" tutorial and I am stuck at the composer network ping stuff. The ping commands fails "Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority". I am trying with "tls disabled" flag for peers and orderers. Any idea on this?
Please note I am trying a multivm setup where orderer, org1 and org2 are running on multiple vms.
Please note I am trying a multivm setup where orderer, org1 and org2 are running on separate vms.
And my composer version 0.16.2
Hi, i have an issue, when i run : `composer-rest-server -c admin@demo-network` i get this error : ```Discovering types from business network definition ...
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
It will be retried for the next request.
Exception: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
at client.getUserContext.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:305:34)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=XLDDJzRmH5eYyDERk) @nasht00 - I have not seen any Issues raised for this. If it is important to you try raising it in the #composer-contributors channel, and then depending on answers raise an issue for it in Github.
i have a participant as ```participant User extends Bussiness {
o Occupation occupation
--> Information information_Id optional
} ```
here information is an `asset` .In `logic.js`
``` var user = getCurrentParticipant()
var Asset = user.information_Id```
The Asset is not Appending , getting Asset value as `Relation{resource:org.acme.getinfo.Information#A_1}`
So i cannot perform actions on Asset , is this how getCurrentParticipant() works?
i have a participant as ```participant User extends Bussiness {
--> Information information_Id optional
} ```
here information is an `asset` .In `logic.js`
``` var user = getCurrentParticipant()
var Asset = user.information_Id```
The Asset is not Appending , getting Asset value as `Relation{resource:org.acme.getinfo.Information#A_1}`
So i cannot perform actions on Asset , is this how getCurrentParticipant() works?
if i want to perform operations operations on Asset , is there any other way ?
if i want to perform operations operations on Asset , is there any other way ?
@jasoncys Could you raise an issue about being able to disable the /explorer path and we can then look at it in more detail. Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=myTqxTW3XKXPCvHJM) @matrisis - can you try a `composer card list --name admin@demo-network` and on the output look for the line at the bottom with 'Credentials Set'. Also can you just check all your Docker Containers for the Fabric are running with `docker ps` you should see 4, a peer, coucbdb, orderer and ca as a minimum
Sure. Is it done in GitHub? [ ](https://chat.hyperledger.org/channel/composer?msg=wgpsWZPuauQN8Dy3s) @davidkel
@rthatcher I think the problem is that I had a trial account (which expired). I believe I need to upgrade to a pay-as-you-go account and provide payment details. Hopefully then I'll be able to create the Kubernetes cluster (and not be charged!)
I am trying to implement the https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html tutorial for creating a blockchain network on two seperate hosts as Organizations.
While following the tutorial I am stuck on Step 17.
E0109 10:32:21.410184041 4692 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0109 10:32:21.410461510 4692 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
Error: Error trying invoke business network. Error: Peer has rejected transaction 'aee416f7836f902aedf0ca1f392d9f33388bd2d249daa06fa6a7145ac6c19c17' with code ENDORSEMENT_POLICY_FAILURE
Following are the changes I did while following the tutorial.
1. Followed organisation specific commands on each vm.
2. Generated and started bynf with '-c mychannel1' and '-c mychannel2' n both organisations, restectively
3. In all 4 connection jsons, replaced localhost with actual hostnames(retained hostnameOverride as in the tutorial)
4. In step 17, to start the business network, sent the generated 'bob' folder in vm2 to vm1(vm1 is Org1, the admin)
Kindly suggest what else should be done.
Hello. How can I sync the time mentioned in transaction (can be docker time) with host time? I submitted the transaction in composer but Tx timestamp is different (1 hr out of sync) than host machine time.
@jasoncys yes, github please
[ ](https://chat.hyperledger.org/channel/composer?msg=Ppfg9edJe2ghnyCRv) @dpurnima0709 - yesterday another person @argman had the same issue. We suggested trying to put the server names e.g. peer0.org1.example.com in the /etc/hosts file of the clients and then putting these names in the connection.json files. We have not heard back the result of this test yet.
I assume you have seen this in Stack Overflow https://stackoverflow.com/questions/46191040/hyperledger-composer-connection-issue-when-using-tls
[ ](https://chat.hyperledger.org/channel/composer?msg=fymigrmbateffdvSs) @jaswanth yes that's how it works - also see example here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/lib/logic.js - is shows how you access an attribute of the current Participant. See also https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js
[ ](https://chat.hyperledger.org/channel/composer?msg=DxXGsQyPMeab5XqFp) @jaswanth [ ](https://chat.hyperledger.org/channel/composer?msg=DxXGsQyPMeab5XqFp) @jaswanth think you need something like this (not tried, and don't know full extent of your model but you get the gist) ```function authorizeReadAccess(readAccess){
var user = getCurrentParticipant();
var PI = user.assetID;
PI.authorized.push(readAccess.userFullId);
return getAssetRegistry('org.acme.getinfo.PersonalInformation')
.then(function (assetRegistry) {
return astRegistry.get(PI.getIdentifier()) // or whatever var hosts the asset identifier
.then(function(updAsset) {
updAsset.PI.authorized = PI.authorized ;
// blah
return assetRegistry.update(updAsset);
})
});
}``` you need to find what the asset is, to be able to update it with the auth list you want to update (latter part)
@jaswanth [ ](https://chat.hyperledger.org/channel/composer?msg=DxXGsQyPMeab5XqFp) @jaswanth think you need something like this (not tried, and don't know full extent of your model but you get the gist) ```function authorizeReadAccess(readAccess){
var user = getCurrentParticipant();
var PI = user.assetID;
PI.authorized.push(readAccess.userFullId);
return getAssetRegistry('org.acme.getinfo.PersonalInformation')
.then(function (assetRegistry) {
return astRegistry.get(PI.getIdentifier()) // or whatever var hosts the asset identifier
.then(function(updAsset) {
updAsset.PI.authorized = PI.authorized ;
// blah
return assetRegistry.update(updAsset);
})
});
}``` you need to find what the asset is, to be able to update it with the auth list you want to update (latter part)
@jaswanth [ ](https://chat.hyperledger.org/channel/composer?msg=DxXGsQyPMeab5XqFp) think you need something like this (not tried, and don't know full extent of your model but you get the gist) ```function authorizeReadAccess(readAccess){
var user = getCurrentParticipant();
var PI = user.assetID;
PI.authorized.push(readAccess.userFullId);
return getAssetRegistry('org.acme.getinfo.PersonalInformation')
.then(function (assetRegistry) {
return astRegistry.get(PI.getIdentifier()) // or whatever var hosts the asset identifier
.then(function(updAsset) {
updAsset.PI.authorized = PI.authorized ;
// blah
return assetRegistry.update(updAsset);
})
});
}``` you need to find what the asset is, to be able to update it with the auth list you want to update (latter part)
Has left the channel.
@rthatcher composer card list --name admin@demo-network
```userName: admin
description:
businessNetworkName: demo-network
roles: none
connectionProfile:
name: hlfv1
type: hlfv1
channel: composerchannel
secretSet: Secret set
credentialsSet: No Credentials set
Command succeeded```
``` NAMES
e59d733df450 dev-peer0.org1.example.com-demo-network-0.16.3-f7e9e6fb9bd950570cadc0123347d86950d7ca1d076d2c6f1368e89df7cb2dd3 "chaincode -peer.a..." 4 hours ago Up 4 hours dev-peer0.org1.example.com-demo-network-0.16.3
ad9ac2ebf69f hyperledger/fabric-peer:x86_64-1.0.4 "peer node start -..." 4 hours ago Up 4 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
0caffa037f86 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-..." 4 hours ago Up 4 hours 0.0.0.0:7054->7054/tcp ca.org1.example.com
57d530338710 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-e..." 4 hours ago Up 4 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
f0f56fb3a842 hyperledger/fabric-orderer:x86_64-1.0.4 "orderer" 4 hours ago Up 4 hours 0.0.0.0:7050->7050/tcp ```
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=YXY5odbn762Qc6jpY) @matrisis - OK so the error you were seeing is that the Credentials (certificates) are missing from the Card (No Credentials Set).
When a Card is first created it contains a one-time secret, and the first time it is used the Certificates are downloaded and the secret is no longer valid.
I'm not sure of your sequence of events getting to this situation (I know you had a few problems along the way.)
Can I suggest you follow the Developer Tutorial to get some grounding, and run the REST server straight after that Tutorial - then look at working on your own New Network aftr that:
https://hyperledger.github.io/composer/next-unstable/tutorials/developer-tutorial
[ ](https://chat.hyperledger.org/channel/composer?msg=EEqLD289EaX9tWxBQ) @rthatcher I had this issue, I was doing a 8 channel setup, I switched all the "localhost" to "ipaddress" it solved it. Also added host entry for orderer.example.com
[ ](https://chat.hyperledger.org/channel/composer?msg=wPAmysbEPoaEswpWi) @vkblue - Ah! Thanks - can you just clarify, you replaced localhost in the connection.json file for all the cards, and used "ipaddress" - do you mean 192.x.x.y or the symbolic address e.g peer0.org2.example.com ? And if you used symbolic address you added them all to /etc/hosts file.
[ ](https://chat.hyperledger.org/channel/composer?msg=uZwpXGQ2wxqGaGXoq) Thanks @mahoney1.
Again i restarted the environment and tried to execute the composer network ping commands like,
Executed the "composer network ping -c alice@tutorial-network" straight after the import it is giving same error "Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT"
Executed "composer network ping -c bob@tutorial-network" after importing sometime, it is succeeded.
if i am listing the identities i can able to see state as ACTIVATED for bob and BOUND for alice.
can you please suggest how to resolve this problem, can i run composer card create (step 18a) once again.
[ ](https://chat.hyperledger.org/channel/composer?msg=uZwpXGQ2wxqGaGXoq) Thanks @mahoney1
Again i restarted the environment and tried to execute the composer network ping commands like,
Executed the "composer network ping -c alice@tutorial-network" straight after the import it is giving same error "Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT"
Executed "composer network ping -c bob@tutorial-network" after importing sometime, it is succeeded.
if i am listing the identities i can able to see state as ACTIVATED for bob and BOUND for alice.
can you please suggest how to resolve this problem, can i run composer card create (step 18a) once again.
[ ](https://chat.hyperledger.org/channel/composer?msg=785kyiMEWXp5Y8WgF) @rthatcher [ ](https://chat.hyperledger.org/channel/composer?msg=785kyiMEWXp5Y8WgF) @rthatcher Yes, you got it. Only for the orderer I have the host entry. ``` {
"name": "byfn-network-org1-only",
"type": "hlfv1",
"mspID": "Org1MSP",
"peers": [
{
"requestURL": "grpcs://192.168.0.24:7051",
"eventURL": "grpcs://192.168.0.24:7053",
"cert": "/Users/mymac/go/src/github.com/hyperledger/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt",
"hostnameOverride": "peer0.org1.example.com"
},
{
"requestURL": "grpcs://192.168.0.24:8051",
"eventURL": "grpcs://192.168.0.24:8053",
"cert": "/Users/mymac/go/src/github.com/hyperledger/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt",
"hostnameOverride": "peer1.org1.example.com"
}
],
"ca": {
"url": "https://192.168.0.24:7054",
"name": "ca-org1",
"cert": "/Users/mymac/go/src/github.com/hyperledger/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt",
"hostnameOverride": "ca.org1.example.com"
},
"orderers": [
{
"url" : "grpcs://192.168.0.24:7050",
"cert": "/Users/mymac/go/src/github.com/hyperledger/fabric-samples/first-network/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt",
"hostnameOverride": "orderer.example.com"
}
],
"channel": "mvp-channel1",
"timeout": 300
}
```
Has left the channel.
When querying an asset that has a relationship, is there any way to return the asset and its relationship's values in a single query?
[ ](https://chat.hyperledger.org/channel/composer?msg=6Gt7xijfoJpwAgGZk) @lucasdf - yes, use this in your filter or query `{"include":"resolve"}`
Does the composer-rest-server use a connection pool? If yes, where can I find its properties defined?
[ ](https://chat.hyperledger.org/channel/composer?msg=fh5mb4CPee6D55nu2) @rthatcher is this new on 0.17?
[ ](https://chat.hyperledger.org/channel/composer?msg=fh5mb4CPee6D55nu2) @rthatcher is this new on 0.17 or does it work on 0.16?
[ ](https://chat.hyperledger.org/channel/composer?msg=fh5mb4CPee6D55nu2) @rthatcher is this new on 0.17 or does it work on 0.16?
edit: I have just seen that this was recently added. It seems that the next version will be great :-)
Has joined the channel.
probem.png
any idea why I cant create card name
I’m using HL / Composer on the IBM Container Services (i.e. k8s) as described at https://ibm-blockchain.github.io/. I’m interacting with my BNA through both my local CLI (which talks to the k8s hosted BNA) and by using the k8s hosted Playground. While I can connect to my deployed BNA fine thru the CLI (or API Explorer running locally), I haven’t yet been able to get a connection in the Playground environment from a card imported into the Playground. I’ve taken two approches:
(1.) I tried to connect using the BNA admin card which was generated in the BNA deployment. After deploying the BNA, I import the admin card into the Playground, then click “Connect now”. I get: “… Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)”. For reference, if I issue a ‘composer identity list’, I see an ‘admin’ in ACTIVATED state.
(2.) I created an additional non-admin identity for a BNA participant. I import that card into the Playground, but “connect now” gives me an “Error: Composer runtime (0.16.2) is not compatible with client (0.16.0)”. Yes, I’ve got 0.16.2 installed locally, while the scripts that generated the kube pods have setup a Playground .16.0.
Any insight into root problems here? Suggestions for next steps? I would prefer to upgrade my deployed Playground vs down-versioning my composer. Thanks!
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZYtDkXZ5xrjpegbHG) @mahoney1 : Once again i tried to execute the commands in the step 18,
1) composer card create -p ~/.composer-connection-profiles/hlfv1/connection-org1.json -u alice -n tutorial-network -c alice/admin-pub.pem -k alice/admin-priv.pem - succeeded
2) composer card import -f alice@tutorial-network.card - "Error: Card already exists: alice@tutorial-network"
Can you please help me on how to recreate and use this alice card again.
Thanks in advance.
Has joined the channel.
@kmohanar You already have alice@tutorial-network at your local computer . You can use ' composer card delete -n alice@tutorial-network' to clear your local record , and try import again . Good luck
Has joined the channel.
Has joined the channel.
@kmohanar if using the `alice` card on the CLI make sure you do a network ping (as shown in Step 18) - eg `composer network ping -c alice@tutorial-network`
@kmohanar with the newly imported `alice` card (eg importing on the CLI) make sure you do a network ping (as shown in Step 18) - eg `composer network ping -c alice@tutorial-network` (it will retrieve the credentials)
@kmohanar with the newly imported `alice` card (eg importing on the CLI) make sure you do a network ping (as shown in Step 18) - eg `composer network ping -c alice@tutorial-network` (albeit it should already have the credentials)
Hi all, `p.getIdentifier()` gives the current participant in ACL file , i want to know if the current participant is under `org.acme.getinfo.Seller` is there any specific function for that in ACL ( in js we can do that by
```var currentParticipant = getCurrentParticipant();
// Check to see if the current participant is a driver.
if (currentParticipant.getFullyQualifiedType() !== 'org.acme.Driver') {
// Throw an error as the current participant is not a driver.
throw new Error('Current participant is not a driver');
}```
@mahoney1 Thank you it worked. [ ](https://chat.hyperledger.org/channel/composer?msg=KfA5M2PFeoeJkYLtR)
[ ](https://chat.hyperledger.org/channel/composer?msg=cNKNDTopAXnr2tmXW) @jaswanth the nearest in an ACL is the condition. But obviously that's only evaluated during the runtime execution of (say) a submit transaction or asset CREATE etc? eg. ALLOW OR DENY an operation, if the current participant being evaluated matches condition - such as ```rule SampleConditionalRule {
description: "Allow owners to update their own assets"
participant(m): "org.example.SampleParticipant"
operation: ALL
resource(v): "org.example.SampleAsset"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}``` where `m.identifier` is the currently mapped Participant instance ie executing the transaction etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=Rc74KXcmX4z4birfp) @Rishabh-Sharma strange, did you complete step 4 (as in Step 4: Install Hyperledger Fabric) here -> https://hyperledger.github.io/composer/installing/development-tools.html - you may have named your directories different. I suggest to create a separate dir, pull the zip again, unzip and then try the create - plus - what does `uname -m` return?
[ ](https://chat.hyperledger.org/channel/composer?msg=Lm5ZYKkRFdtzH5DJW) @mahoney1 , is there any other way that i can get the fullyQualifiedIdentifier ? ( i tried with `get.identifier()` it works but i have multiple participants and participants have same id's , so i need to compare the participants including the namespace)
[ ](https://chat.hyperledger.org/channel/composer?msg=Lm5ZYKkRFdtzH5DJW) @mahoney1 , is there any other way that i can get the fullyQualifiedIdentifier ? like `org.acme.getinfo.User#U_1` ( i tried with `get.identifier()` it works but i have multiple participants and participants have same id's , so i need to compare the participants including the namespace)
@jaswanth - `currentParticipant.getFullyQualifiedIdentifier ; ` as in `iif (currentParticipant.getFullyQualifiedIdentifier() !== 'org.acme.Driver#DRIVER_1') {
// Throw an error as the current participant is not a driver.
throw new Error('Current participant is not the first driver');`
}
@jaswanth - `currentParticipant.getFullyQualifiedIdentifier ; ` as in ```iif (currentParticipant.getFullyQualifiedIdentifier() !== 'org.acme.Driver#DRIVER_1') {
// Throw an error as the current participant is not a driver.
throw new Error('Current participant is not the first driver');
}```
@jaswanth - `currentParticipant.getFullyQualifiedIdentifier ; ` as in ```if (currentParticipant.getFullyQualifiedIdentifier() !== 'org.acme.Driver#DRIVER_1') {
// Throw an error as the current participant is not a driver.
throw new Error('Current participant is not the first driver');
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=83vvk9mkyD5tKLCwy) @mahoney1 in ACL fileits not working
[ ](https://chat.hyperledger.org/channel/composer?msg=83vvk9mkyD5tKLCwy) @mahoney1 in ACL file its not working
[ ](https://chat.hyperledger.org/channel/composer?msg=83vvk9mkyD5tKLCwy) @mahoney1 Thank you it Worked .
Has joined the channel.
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'admin' and the identifier 'dsfbdbggfbdfv34434c33e3e23r2r24ct42r3434e2', has not been registered)
Hi, I am observing that the docker container of the chaincode keeps restarting under a different docker container id ?
Is that normal ?
Also, I have got an error in my Tx code ```error: [client-utils.js]: sendPeersProposal - Promise is rejected: Error: chaincode error (status: 500, message: TypeError: string required, found undefined (stack index 0))
at /.../server/node_modules/grpc/src/node/src/client.js:554:15```
How can I check where the code is failing ?
[ ](https://chat.hyperledger.org/channel/composer?msg=uZYvF4B3W7qiyMKAK) @AkshayMisal - are you using an OLD card that is no longer validor a card for a different network? (or even a different organisation?)
@jaguarg see https://hyperledger.github.io/composer/problems/diagnostics.html - you can get your logs from your container id `docker logs
Has joined the channel.
Has joined the channel.
Guys, does anyone have any idea regarding this error
```
# composer runtime install --card PeerAdminOrg1@my-net-only --businessNetworkName business-net
✖ Installing runtime for business network business-net. This may take a minute...
TypeError: Parameter "url" must be a string, not undefined
Command failed
```
Guys, does anyone have any idea regarding this error
```
$ composer runtime install --card PeerAdminOrg1@my-net-only --businessNetworkName business-net
✖ Installing runtime for business network business-net. This may take a minute...
TypeError: Parameter "url" must be a string, not undefined
Command failed
```
Has joined the channel.
@luminance `"url" ` ordinarily refers to a url entry in your connection profile definition - that you inserted as part of your connection profile eg ` "url": "https://localhost:7054",`. (Obviously there are other urls defined in the connection.json too such as `requestUrl` etc - but the error could suggest the former is an issue...). Would suggest you check your connection.json and see that is is defined correctly - see here (multi-org tutorial) for examples of a connection.json -> https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
Good afternoon, I'm trying with my mates to create a common business network, where we could share our work, ( not web user ) but i have no clue how it works. There might be a problem with defining Enrollment ID et Secret ID. I get a message error when trying. how can i create without problem a personal business network that i can share with my working group ? Thanks for your attention :)
[ ](https://chat.hyperledger.org/channel/composer?msg=3MrLtu8heXjePWDSc) @davidkel it could help if you could document it.
@shurima - you should probably set up a sandbox environment in the cloud. There are Cloud sandbox environments out there (via google), where you can get going with setting up a Fabric environment ...Once you've set up your cluster / environment and deployed a Fabric network, you can connect to the Fabric v1 env (on the hosted Cloud environment) and connect to via Composer playground (at a given URL) and deploy a business network in Playground (or via command line) - start with a sample network perhaps. You can then issue identities and export business network cards (with credentials) to give to your colleagues, so they can connect to the same business network in the cloud (so you can share and interact.
Is there a way to allow 2 participants access the same asset but see only specific attributes/fields? ``` asset MyPolicy identified by policyNumber {
o Integer policyNumber // Viewed by Participant A & B
o DateTime expriationDate // Viewed by Participant A & B
o String liabilityAmount// Viewed by Participant A & B
o String preminumPaidinFull // Viewed only by Participant B
}``` In the sample asset definition, I would want Participant A & B to Read/Write the first fields and Participant B could Read/Write all of them.?
This post describes how i resolved the issue that I posted yesterday, while working through my first use of Composer on a free, IBM hosted kubernetes kube (https://ibm-blockchain.github.io/). My objective was to run the Composer Developer tutorials which are written for a locally hosted dev environment (https://hyperledger.github.io/composer/tutorials/developer-tutorial), but to perform / deploy the resulting BNA to remote (and possibly shared) Cloud hosted HL fabric instance.
The error “chaincode error (status: 500, message: Error: The current identity has not been registered: admin)” resulted from a violation of one-time use of a newly issued card. To repro this error scenario: I had created the BNA locally, then generated the network admin car for ‘admin’ in the deployment operation via a ‘composer network start …’ command. However, I had then imported the card into my local composer wallet, and issued ‘composer network ping …’ from my workstation, before importing the card into the kube hosted Playground. When I changed the sequence so that I imported the card into the Playground before doing anything else with the card, then I was able to use the newly imported card in the Playground to connect to my BNA from the Playground. Perhaps there is an opportunity for the developer team to generate a better error message?
I also down-leveled my local composer level from 0.16.2 to 0.16.0 before doing anything else, so that the Playground version on the kube, and my locally installed composer version, are exactly matched.
This post describes how i resolved the issue that I posted yesterday, while working through my first use of Composer on a free, IBM hosted kubernetes kube (https://ibm-blockchain.github.io/). My objective was to run the Composer Developer tutorials which are written for a locally hosted dev environment (https://hyperledger.github.io/composer/tutorials/developer-tutorial), but to perform / deploy the resulting BNA to remote (and possibly shared) Cloud hosted HL fabric instance.
The error “chaincode error (status: 500, message: Error: The current identity has not been registered: admin)” resulted from a violation of one-time use of a newly issued card. To repro this error scenario: I had created the BNA locally, then generated the network admin card for ‘admin’ in the deployment operation via a ‘composer network start …’ command. However, I had then imported the card into my local composer wallet, and issued ‘composer network ping …’ from my workstation, before importing the card into the kube hosted Playground. When I changed the sequence so that I imported the card into the Playground before doing anything else with the card, then I was able to use the newly imported card in the Playground to connect to my BNA from the Playground. Perhaps there is an opportunity for the developer team to generate a better error message?
I also down-leveled my local composer level from 0.16.2 to 0.16.0 before doing anything else, so that the Playground version on the kube, and my locally installed composer version, are exactly matched.
Has joined the channel.
I am getting below error when i run "composer network ping --card admin@commodity-network"
I am getting below error when i run "composer network ping --card admin@commodity-network"
I am getting below error when i run "composer network ping --card admin@commodity-network" Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
I am getting below error when i run "composer network ping --card admin@commodity-network" Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
composer card list --name admin@commodity-network
userName: admin
description:
businessNetworkName: commodity-network
roles: none
connectionProfile:
name: fabric-azure-network
type: hlfv1
channel: mychannel
secretSet: Secret set
credentialsSet: Credentials set
composer card list --name admin@commodity-network
userName: admin
description:
businessNetworkName: commodity-network
roles: none
connectionProfile:
name: fabric-azure-network
type: hlfv1
channel: mychannel
secretSet: Secret set
credentialsSet: Credentials set
Can someone share the multi org composer profiles?
I'm facing an issue where the network is not starting.
``` The identity is a member of a different MSP (expected OrdererMSP, got Org1MSP)``` Any idea why this is happening?
Has joined the channel.
just a question.. is fabric really required when running composer-playground?
while deploying multiorg in multiple VMs when i run this command composer identity request -c PeerAdmin@byfn-network-org2-only -u admin -s adminpw -d bob
while deploying multiorg in multiple VMs when i run this command 'composer identity request -c PeerAdmin@byfn-network-org2-only -u admin -s adminpw -d bob'
while deploying multiorg in multiple VMs when i ran this command composer identity request -c PeerAdmin@byfn-network-org2-only -u admin -s adminpw -d bob to retrieve business network administrator certificate. But i got below error Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: Parse Error]
Is it possible to run Composer on top of Fabric V1.1-preview. Because when I tried running using the hlfv11 configurations in fabric-tools, I got the following error ```Error: Failed to load connector module "composer-connector-undefined" for connection type "undefined". Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'```
@rhansharief If you are planning to run composer-playground on your local environment, it is required to have fabric running. If you are going to run it online, it is not required at all. Hope that helps. Composer is a higher level abstraction framework that runs on Fabric. Without that it cant run on its own :)
@prabvi01 Can you share the screenshot of the whole error.? Before that try generating MSP's again and configure them properly in docker-compose and `CreatePeerAdminCard.sh`. Before generating, delete the crypto-config folder, teardown the instance and run it again.
thanks for the info @navdevl
@navdevl ok thanks i'll generate MSP's again and let you know if i get any error
[ ](https://chat.hyperledger.org/channel/composer?msg=cQ9A3Q2mdhw2gdozi) @vkblue - currently it is not possible to manage access control at the Field/Attribute level. This recent chat thread gives some more detail
[ ](https://chat.hyperledger.org/channel/composer?msg=cQ9A3Q2mdhw2gdozi) @vkblue currently not possible for property (field) based access control in ACL runtime - this has been raised as a request -> https://github.com/hyperledger/composer/issues/983
@vkblue currently not possible for property (field) based access control in ACL runtime - this has been raised as a request -> https://github.com/hyperledger/composer/issues/983
[ ](https://chat.hyperledger.org/channel/composer?msg=tZHr2jeEq5fnFptwL) @kipharris thank you..the only change in the sequence would be to export the admin card (after the ping) so that it has the credentials set. That would be the card that is transportable to Playground (rather than the original, if that makes sense). and (in your latter sequence) what you did for Playground use was correct anyway.because it downloaded the credentials in exchange for the enrolSecret.after connecting.
[ ](https://chat.hyperledger.org/channel/composer?msg=NqWMYX4KXSWNX5EpJ) @navdevl yes - with Composer v0.17.0 (https://github.com/hyperledger/composer/releases/) - for Fabric v1.1 preview docker images, you need to set your environment variable see. https://github.com/hyperledger/composer-tools/blob/master/packages/fabric-dev-servers/README.md eg `export FABRIC_VERSION=hlfv11`
@Moxy1683 what version of Composer are you running with and what tutorial are you following ? The tutorial for multi-org that Composer provides (running docker containers on localhost) uses `tutorial-network` . This stack overflow may help you -> https://stackoverflow.com/questions/46299853/connecting-hyperledger-composer-to-fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=voS9EQBQfZu3eDxxZ) @Moxy1683 - are you running a Multi-Org test? When setting up the cards (as part of the network start command) you may have used the certificates for a different org?
Hi, Can I get some assitance in `composer-rest-server` . I am building an app for a poc and needed to understand if I should use it or write my own APIs using nodejs`.
I have run it in isolation, and written one api of my own to ensure things are running
[ ](https://chat.hyperledger.org/channel/composer?msg=JXQXHstJXbyhKk9CY) @varunagarwal sure..
So basically If I something in production, I would want a logger and 1-2 other middlewares for my APIs that the client will call. I would also need some authentication method
Which confuses me, as to whether I can use the automated rest-server or it is better for production applications to handle their own APIs
@mahoney1 Any ideas?
I know the rest server lets you add a `passport` strategy for authentication and handles auth via access tokens in the header for api calls
@varunagarwal you can do either. It depends on what your architecture required - A composer rest server instance (for the discovered bus network) can use an Auth strategy that can serve the API calls in a suitable zone. Or you can use a NodeJS based custom solution which needs maintaining etc - this article may be useful http://thejackalofjavascript.com/architecting-a-restful-node-js-app/ to help you decide.
[ ](https://chat.hyperledger.org/channel/composer?msg=KcmqSFgthaQ8EFqCj) @mahoney1 I have built many applications with my own REST API
A good practice is to add a logger to APIs and middleware to handle custom errors, those won't be possible using the composer-rest-server as per my understanding.
[ ](https://chat.hyperledger.org/channel/composer?msg=zehugKG2asZ5ojdEm) Thanks @tuxy and @mahoney1 . i have deleted alice@tutorial-network card using the command "composer card delete -n alice@tutorial-network" as suggested by @tuxy . once i deleted the card i started following the steps mentioned in the 18 the step. but, i am facing the same "Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT".
@varunagarwal Composer uses winston logger and of course would depend somewhat on level of logging implemented and winston loggin settings / logging cycle/maintenance etc.
@varunagarwal Composer uses winston logger and of course would depend somewhat on level of logging implemented and winston logging settings / logging cycle/maintenance etc.
Hi All,
Can anyone please suggest how can i map the banking application or some realtime case with the hyperledger fabric.(Because, i have some idea about banking/financial products)
Here, we have different roles like participants, peers, organization and channel etc..,
In realtime case in the we will have customer(Bank A), bank(Bank A), lead bank(Bank A), same bank(Bank A) in different country, different bank(Bank B ) etc..,
Is this possible to map both the case in hyperledger fabric.
Can you please help me to understand more about the organization/hierarchical structure followed in the hyperledger fabric.
Thanks in advance.
Hi All,
Can anyone please suggest how can i map the banking application or some realtime case with the hyperledger fabric.(Because, i have some idea about banking/financial products)
Here, we have different roles like participants, peers, organization and channel etc..,
In realtime case in the we will have customer(Bank A), bank(Bank A), lead bank(Bank A), same bank(Bank A) in different country, different bank(Bank B ) etc..,
Is this possible to map both the case in hyperledger fabric.
Can you please help me to understand more about the organization/hierarchical structure followed in the hyperledger fabric.
Thanks in advance.
I am handling access token in backend node js app using proxy. but i am not able to do post calls perfectly
get calls working fine
apiProxy.on('proxyReq', function (proxyReq, req, res, options) {
proxyReq.setHeader('Cookie', data.cookie);
});
apiProxy.web(req, res, {
target: `http://${data.host}:${data.port}`
})
[ ](https://chat.hyperledger.org/channel/composer?msg=3TsESoqQMhb8m9HE8) @kmohanar So you would define each bank as a particpant. The customer's data as an asset that is governed by your own ACL, The trick is to decide the model for a customer. You can either define each as participant with its own identity pair, OR handle the mapping of the customers within the bank they originally registered in (might not be ideal)
I got a dapp running on Solidity for kyc and credit card rating sharing between banks and business units, exploring migration to fabric now, this is what i am currently doing
PM me, we can discuss ideas on handling customers between banks
Unhandled error for request POST /api/AddCar: Error: request aborted
at IncomingMessage.onAborted (/home/ubuntu/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/raw-body/index.js:269:10)
at emitNone (events.js:106:13)
at IncomingMessage.emit (events.js:208:7)
at abortIncoming (_http_server.js:412:9)
at socketOnClose (_http_server.js:406:3)
at emitOne (events.js:121:20)
at Socket.emit (events.js:211:7)
at TCP._handle.close [as _onclose] (net.js:554:12)
Has joined the channel.
Hey guys,
I am new to hyperledger composer. From what i know while working on Hyperledger fabric you use the chaincode to specify your application logic. However with Hyperledger Composer , you write this logic in the script.js file and you
specify your model in the model.cto file. My question is , while working with Hyperledger Composer , where is the chaincode ? ,, are those .js files compiled into chaincode or sth ?
Thank you.
Trying to run a rest server, gettng this erro *Missing required arguments: connectionProfileName, installId*
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile decentralized-energy-network.bna --file networkadmin.card Is what im running
I'm trying to use Composer with an existing fabric network. The fabric network works fine but it's one I created, not the standard byfn network. When I try to ping the business network, the peer crashes and reports:
2018-01-11 19:31:58.227 UTC [eventhub_producer] Chat -> ERRO 00c Error handling message: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID orangegrowers, received Org1MSP]]
What I can't figure out is where is Org1MSP coming from? I don't use it in any of my cards, so can't understand how/why it's being used.
[ ](https://chat.hyperledger.org/channel/composer?msg=jaK5bvruLhHe7wZM7) @toddinpal What did you use to deploy to the network? I am following this *https://ibm-blockchain.github.io/develop/tutorials/developer-tutorial* , but the composer runtime install command seems to not work.
[ ](https://chat.hyperledger.org/channel/composer?msg=jaK5bvruLhHe7wZM7) @toddinpal its used in the `connection.json` file (part of a business network card) - the field in the connection.json is `mspID` as in ``"mspID": "Org1MSP",` entry - see example of a connection.json here https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
[ ](https://chat.hyperledger.org/channel/composer?msg=ygKvaMCYmpmZqtocr) @Sahar hi there and welcome -> Composer does not directly generate chaincode or 'Go'. It uses a generic chaincode that maps composer models to chaincode tables and runs transaction processor functions in a javascript engine. So it runs in its own runtime environment and chaincode container. That javascript engine/interpreter is Duktape in Fabric v1.0.x - and very soon, with Fabric v1.1, it we will have native Node.js chaincode support - no Go chaincode required for Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=ygKvaMCYmpmZqtocr) @Sahar hi there and welcome -> Composer does not directly generate GO chaincode. It uses a generic chaincode that maps composer models to chaincode tables and runs transaction processor functions in a javascript engine. So it runs in its own runtime environment and chaincode container. That javascript engine/interpreter is Duktape in Fabric v1.0.x - and very soon, with Fabric v1.1, it we will have native Node.js chaincode support - no Go chaincode required for Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=ygKvaMCYmpmZqtocr) @Sahar hi there and welcome -> Composer does not directly generate GO chaincode. It uses a generic chaincode that maps composer models to chaincode tables and runs transaction processor functions (written in javascript) in a javascript engine. So it runs in its own runtime environment and chaincode container. That javascript engine/interpreter is Duktape in Fabric v1.0.x - and very soon, with Fabric v1.1, it we will have native Node.js chaincode support - no Go chaincode required for Composer.
@mahoney1 here is my connection.json:
{
"name": "fabric-network",
"type": "hlfv1",
"mspID": "orangegrowers",
"peers": [
{
"requestURL": "grpc://tlbcs:10000",
"eventURL": "grpc://tlbcs:10002"
}
],
"ca": {
"url": "http://tlbcs:32768",
"name": "fabricca0.orangegrowers.org"
},
"orderers": [
{
"url" : "grpc://tlbcs:5000"
}
],
"channel": "composerchannel",
"timeout": 300
}
@varunagarwal What command are you using and what's the error message?
https://github.com/IBM/Decentralized-Energy-Composer
Following this word-to-word
@toddinpal Also followed this -- https://ibm-blockchain.github.io/develop/tutorials/developer-tutorial
Both give the same error.
its weird, a while ago everything was working fine, im guessing some update came and the docs don't reflect it
@varunagarwal Again, what command are you using and what is the error?
[ ](https://chat.hyperledger.org/channel/composer?msg=qBdXjNhd8YqZfXwZu) @mahoney1 Thanks, that's what I thought!
Step 1 is `composer runtime install -n tutorial-network -c PeerAdmin@fabric-network` , which gives the error *Missing required arguments: connectionProfileName, installId
*
@toddinpal Any idea? I guess the command to deploy a .bna to fabric has changed but cant find an updated sample.
Hi everyone.
my Hyperledger project won't deploy just now. Here is the error in the console :
```
Command succeeded
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
events.js:160
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE :::3000
at Object.exports._errnoException (util.js:1026:11)
at exports._exceptionWithHostPort (util.js:1049:20)
at Server._listen2 (net.js:1253:14)
at listen (net.js:1289:10)
at Server.listen (net.js:1385:5)
at module.exports.promise.then.then (/usr/lib/node_modules/composer-rest-server/cli.js:131:19)
at process._tickCallback (internal/process/next_tick.js:103:7)
```
@varunagarwal What's in your connection.json?
@CorentinPacaud Looks like you already have something running on port 3000
:o
[ ](https://chat.hyperledger.org/channel/composer?msg=tRs3rjbB3TdHz3H3h) @toddinpal im just following the tutorials step by step
`{
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://localhost:7050" }
],
"ca": { "url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"keyValStore": "/home/varun/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}`
@varunagarwal The connection profile has no name... Try adding the name field
i can, but this is what comes by default. And you seem to be facing an issue even with adding the `name` field.
[ ](https://chat.hyperledger.org/channel/composer?msg=pGWGYcteWiQifbepe) @toddinpal the message you're seeing is a Fabric error so might be best to ask on #fabric - I would check your config / YAML files see here for guidance - https://stackoverflow.com/questions/46075270/error-while-adding-new-organization-in-hyperledger-fabric-1-0
[ ](https://chat.hyperledger.org/channel/composer?msg=pGWGYcteWiQifbepe) @toddinpal the message you're seeing is a Fabric error so might be best to ask on #fabric - I would check your config / YAML files see here for guidance - https://stackoverflow.com/questions/46075270/error-while-adding-new-organization-in-hyperledger-fabric-1-0 - as you show in your connection,json - the composer connection profile is expecting an MSP back of 'orangegrowers'
@mahoney1 I'm not using yaml... and I'm pretty certain my fabric network has nothing even close to Org1MSP
@varunagarwal My issue is very different. I've installed the composer runtime without any problems. I'm basically at the last step trying to ping my business network
ohk, im thinking of just removing composer entirely and reinstalling it.
somethings might have changed a lot recently
@mahoney1 yeah, I know it's a fabric error message, in fact it is killing the peer. :-( My question is where could this Org1MSP be coming from if it's not in my connection.json file
[ ](https://chat.hyperledger.org/channel/composer?msg=WLPSaa2w9cJWdak3w) @toddinpal its easy to do a find/grep ti find out ..... eg in `configtx.yaml `` ID: Org1MSP` is one such example of a defined entry (such as Fabric's first-network). - but you would know better than I what you've defined n your custom network
[ ](https://chat.hyperledger.org/channel/composer?msg=WLPSaa2w9cJWdak3w) @toddinpal its easy to do a find/grep ti find out ..... eg in `configtx.yaml ` `ID: Org1MSP` is one such example of a defined entry (such as Fabric's first-network). - but you would know better than I what you've defined n your custom network
@mahoney1 As I said, I'm not using a yaml file to create any part of my Fabric network, I'm using our own tools, and Org1MSP is not in them AFAIK, although I'll check with my developers.
[ ](https://chat.hyperledger.org/channel/composer?msg=fP7xoFZFNnqyaJKQJ) @mahoney1 Thank you
Ok my problem got solved. I used
`composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString -A admin -S`
Can you confirm the tutorial is not working, I can edit and add a PR to change this
or Should i open an issue directly @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=3GmB93A9QRShAWeX2) @toddinpal I know, I was just pointing out an equivalent config setting in Fabric., But you have custom built your own network, and (it would appear) that you have checked your composer configuration metadata for the corresponding entry. Sorry I can't help further, I don't have enough info to help :-)
@mahoney1 Thanks... I'm going to go check the peer code to see what exactly that error message is indicating
@mahoney1 How are you embedding Node.js? I tried to do that for another project a while back and couldn't find a solution.
[ ](https://chat.hyperledger.org/channel/composer?msg=3MrLtu8heXjePWDSc) @davidkel If we are using Hyperledger Fabric without CouchDB. How do you query the data ? Are we expected to use getAll on Asset Registry which gets all the data from the registry and then you iterate and filter it.
[ ](https://chat.hyperledger.org/channel/composer?msg=dnuPq5ExKRNAuvh8W) @varunagarwal - it looks like you are using an older version of Composer something like 0.14 or 0.13 - most are on 0.16 now and the format of the command has changed, and the tutorial reflects that
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=DumGQXDE4yCRWL5Bf) @rthatcher ya realized, i just reinstall it, or is there an update command?
as of now, im just reinstalling the dev tools
via npm
[ ](https://chat.hyperledger.org/channel/composer?msg=42dr5gCekeLqp62D9) @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=eqCBPRnvocd2uKKEe) @varunagarwal - Suggest you try this:
- make copies of you model, js, files etc
- remove fabric-tools folder and all contents
- download new fabric-tools with curl, and run ./download etc
(these 2 steps are necessayr as a newer version of Fabric Containers is required)
[ ](https://chat.hyperledger.org/channel/composer?msg=eqCBPRnvocd2uKKEe) @varunagarwal - Suggest you try this:
- make copies of you model, js, files etc
- remove fabric-tools folder and all contents
- download new fabric-tools with curl, and run ./download etc
(these 2 steps are necessary as a newer version of Fabric Containers is required)
- npm uninstall -g composer-cli (and other composer modules)
- npm install -g composer etc
I installed composer 0.16.0 version. I am using single org setup defined in "Hyperledger fabric single member blockchain" on Azure. I created "Peer Admin" card using this command: "composer card create -p fabric-connection.json -u PeerAdmin -c ./crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k ./crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/5697ecabc5cf674690debfb6832ba9ed992bd4764861026e2f89fd67da2580e9_sk -r PeerAdmin -r ChannelAdmin —file PeerAdmin@fabric-azure-network.card". After that i used this "PeerAdmin" card on "composer network start" command. Please suggest.
I installed composer 0.16.0 version. I am using single org setup defined in "Hyperledger fabric single member blockchain" on Azure. I created "Peer Admin" card using this command: "composer card create -p fabric-connection.json -u PeerAdmin -c ./crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k ./crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/5697ecabc5cf674690debfb6832ba9ed992bd4764861026e2f89fd67da2580e9_sk -r PeerAdmin -r ChannelAdmin —file PeerAdmin@fabric-azure-network.card". After that i used this "PeerAdmin" card on "composer network start" command. Please suggest.
[ ](https://chat.hyperledger.org/channel/composer?msg=gspwa58kNj97xfK6M) @rthatcher I installed composer 0.16.0 version. I am using single org setup defined in "Hyperledger fabric single member blockchain" on Azure. I created "Peer Admin" card using this command: "composer card create -p fabric-connection.json -u PeerAdmin -c ./crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k ./crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/5697ecabc5cf674690debfb6832ba9ed992bd4764861026e2f89fd67da2580e9_sk -r PeerAdmin -r ChannelAdmin —file PeerAdmin@fabric-azure-network.card". After that i used this "PeerAdmin" card on "composer network start" command. Please suggest.
[ ](https://chat.hyperledger.org/channel/composer?msg=gspwa58kNj97xfK6M) @rthatcher I installed composer 0.16.0 version. I am using single org setup defined in "Hyperledger fabric single member blockchain" on Azure. I created "Peer Admin" card using this command: "composer card create -p fabric-connection.json -u PeerAdmin -c ./crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k ./crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/5697ecabc5cf674690debfb6832ba9ed992bd4764861026e2f89fd67da2580e9_sk -r PeerAdmin -r ChannelAdmin —file PeerAdmin@fabric-azure-network.card". After that i used this "PeerAdmin" card on "composer network start" command (composer network start --card PeerAdmin@fabric-azure-network --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile asset-network.bna --file networkadmin-commodity.card). Please suggest.
Hi, I just encountered a strange problem with `composer-rest-server` running in a Docker container that it stopped without any hints except the "PM2 Daemon is dead" message shown in the log file. The `composer-rest-server` has been running fine in the last 2 days uninterrupted. Does anyone encountered similar problem? My environment: `Docker version 17.12.0-ce, build c97c6d6; composer version 0.16.3`.
[ ](https://chat.hyperledger.org/channel/composer?msg=qwsTqTa9dCkFaQ8GW) @Moxy1683 - Did you do a composer card import after the composer network start ? Was there a previous version of admin@commodity-network card ?
Has joined the channel.
composer archive create -t dir -n .
[RuntimeException]
The "-t" option does not exist.
Did anyone come across this issue ? composer archive create -t dir -n .
[RuntimeException]
The "-t" option does not exist.
[ ](https://chat.hyperledger.org/channel/composer?msg=oNE6vfZq43im5Gsat) @ajayvuyyuru - what version of composer are you running `composer -v`? Did it install ok with npm install -g ?
Composer version @package_branch_alias_version@ (1.0.0-beta2) 2016-03-27 16:00:34
Yes, installed using npm install -g composer-cli
[ ](https://chat.hyperledger.org/channel/composer?msg=w6zNGSuXzZMBKr4FZ) @ajayvuyyuru - looks odd - can you try `npm ls -g --depth=0`
Sorry for the long post
Sorry for the long post/home/blockchain1/.nvm/versions/node/v8.9.4/lib
├── composer-cli@0.16.3
├── composer-playground@0.16.3
├── composer-rest-server@0.16.3
├── generator-hyperledger-composer@0.16.3
├── npm@5.6.0
└── yo@2.0.0
npm ERR! peer dep missing: ajv@^5.0.0, required by ajv-keywords@2.1.1
npm ERR! peer dep missing: @angular/core@^4.0.3, required by @ng-bootstrap/ng-bootstrap@1.0.0-beta.2
npm ERR! peer dep missing: @angular/core@>=4.0.0, required by ngx-clipboard@8.0.4
npm ERR! peer dep missing: @angular/common@^4.0.3, required by @ng-bootstrap/ng-bootstrap@1.0.0-beta.2
npm ERR! peer dep missing: @angular/common@>=4.0.0, required by ngx-clipboard@8.0.4
npm ERR! peer dep missing: @angular/forms@^4.0.3, required by @ng-bootstrap/ng-bootstrap@1.0.0-beta.2
npm ERR! peer dep missing: @angular/platform-browser@>=4.0.0, required by ngx-clipboard@8.0.4
npm ERR! peer dep missing: core-js@>=2.4.1, required by ngx-clipboard@8.0.4
npm ERR! peer dep missing: @angular/core@>=2.4.1, required by ngx-window-token@0.0.2
npm ERR! peer dep missing: @angular/common@>=2.4.1, required by ngx-window-token@0.0.2
npm ERR! peer dep missing: @angular/platform-browser@>=2.4.1, required by ngx-window-token@0.0.2
npm ERR! peer dep missing: core-js@>=2.4.1, required by ngx-window-token@0.0.2
npm ERR! peer dep missing: ajv@^5.0.0, required by ajv-keywords@2.1.1
When i changed the command composer archive create --file ./ajay-network.bna
Searching for the specified package.
No composer.json found in the current directory, searching packages from packagist
Could not find a package matching create.
[ ](https://chat.hyperledger.org/channel/composer?msg=CR6u82gNAgmR72k5a) @jasoncys PM2 is used in the composrer-rest-server docker container to start and restart the REST server if it fails. If you want to run the Composer REST Server continuously, then I would think creating a script to have it started as a service using `systemctl` is one approach (In a scaled up environment, you might choose to run it as a Docker Container since the Fabric servers are running in Containers anyway), You would then use your normal operational management tools for monitoring processes / ports and configure alerts or restarts accordingly.
[ ](https://chat.hyperledger.org/channel/composer?msg=PvyCiLx8fgFyKQJEv) @rthatcher Yes, I imported the card after composer network start and there was a previous version of admin@commodity-network card too. I got the same error when i create a new composer business network card too.
@ajayvuyyuru archive command syntax is here -> https://hyperledger.github.io/composer/reference/composer.archive.create.html eg `composer archive create -t dir -n .` would create a file `myfile.bna` archive file, from a project in current directory
@ajayvuyyuru archive command syntax is here -> https://hyperledger.github.io/composer/reference/composer.archive.create.html eg `composer archive create -t dir -n .` would create a file `myfile.bna` archive in the current directory, from a project in current directory
Its strange. It is resolved once I logout and login my session.
[ ](https://chat.hyperledger.org/channel/composer?msg=aujdNeHBn8SXgzCKB) @Moxy1683 - The short answer is I think that the certificates from the old card were being used ( and are invalid) . The longer answer is that when you create a network admin card it typically does not have the Certificates in it, rather it has a 1 time secret and the first time you use it the Certificates are downloaded and the secret is invalidated. So the trick is to delete any old cards before you start.
In Hyperledger Fabric v1.1 as part of the app/chaincode you can decide if you want the data encrypted. v1.1.0-preview added chaincode APIs to make this easier for solutions. http://hyperledger-fabric.readthedocs.io/en/v1.1.0-preview/chaincode4ade.html#chaincode-encryption Is this feature going to be supported in Composer.
@sstone1 In Hyperledger Fabric v1.1 as part of the app/chaincode you can decide if you want the data encrypted. v1.1.0-preview added chaincode APIs to make this easier for solutions. http://hyperledger-fabric.readthedocs.io/en/v1.1.0-preview/chaincode4ade.html#chaincode-encryption Is this feature going to be supported in Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=Ww52ecddoHQiJumqw) @rthatcher I will delete all the cards. Do you want me to delete "PeerAdmin" card too? I thought "compose network ping" command uses the admin user signcerts on the "PeerAdmin". is it not correct?
PeerAdmin and Network Admin are different:
The PeerAdmin card has 2 roles in our dev fabric server setup. It has the authority to install chaincode onto the peer and it has the authority to instantiate chaincode onto the channel. It's name 'PeerAdmin' is a little confusing. Also in a real world scenario it's highly unlikely you would have a AdminCard for each Peer. What is more likely is you would have a PeerAdmin card for each organisation so you can install chaincode on all Peers in that organisaton. There would then be a separate ChannelAdmin card so that within the Consortium the Composer business network can be started.
The Network Admin card is a card that provides access to the deployed business network. The default is that the credentials you supply either by -A/-S or -A/-C when you deploy or start a business network is then bound to in instance of the inbuilt NetworkAdmin Participant type with a name usually the same as that specified in the -A part. To access a business network you have to use an identity that is mapped to a participant
[ ](https://chat.hyperledger.org/channel/composer?msg=RCEy9LCZwWmhd8KNe) @Moxy1683 - If you don't have a valid NetworkAdmin card (and we think you dont) - then you will neet to use a different Business Network name at least to carry on. But it may be easier for you to delete all cards and all containers and start again if you can - I assume you are broadly following this tutorial: https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
[ ](https://chat.hyperledger.org/channel/composer?msg=rKJqpWL8tu5kzQx52) @rthatcher I assume by deleting the containers, you meant only the containers that are started as part of chain code installation. And yes, i followed that tutorial only. Is it mandatory on connection profile to set "keyvaluestore" value? I notices that Network admin card uses this connection profile too. It is not set in that tutorial, so i too left it.
[ ](https://chat.hyperledger.org/channel/composer?msg=D5NsF9JfQfqZS2dmE) @rthatcher Thank you for the explanation.
@Moxy1683 he means the containers that you stood up for single Org (chaincode gets installed onto the peers) https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-single-org.html describes the steps to clear down and start a new Fabric (its part of the tutorial). . No you do not need to set keyValStore - it should not be included in any connection profile. - you can copy the complete connection.json in that tutorial as the basis for your json file.
[ ](https://chat.hyperledger.org/channel/composer?msg=zP6otxmrwZ2mseRxj) @mahoney1 Thanks for your response.
Has someone ever faced this issue when starting the network?
```
Has someone ever faced this issue when starting the network?
```
Response from attempted peer comms was an error: Error: Error starting container: API error (404): {"message":"network orderer_orderer not found"}
```
it seems that the chaincode docker container is launched on network orderer_orderer by default? can I change the network of the dev- container?
@lucasdf The network that the docker container tries to launch on is controlled by the core.vm.docker.hostconfig.networkmode variable at the peer, which can be set in the peer's core.yaml file (but is quite often overridden with the CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE environment variable in Docker Compose files, in case you're working with Docker Compose)
@mahoney1 Thanks for the advice. (https://chat.hyperledger.org/channel/composer?msg=caHnZaEZEBrxgoojS) @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=Na5oKc3oXhSiph8fy) @silliman thanks! that fixed that issue. I am trying to start a composer network on a two-peer/one-org network spread over three hosts (two peers and a orderer). After executing `composer network start` the chaincode container starts successfully in the two peers. However, the commands hangs until it fails with the message `Failed to receive commit notification for transaction TRANSACTION_ID within the timeout period`. The peers and the dev containers seem to be all right, but since the command fails I don't receive the admin card. Any tips on what could be wrong?
[ ](https://chat.hyperledger.org/channel/composer?msg=Na5oKc3oXhSiph8fy) @silliman thanks! that fixed that issue. I am trying to start a composer network on a two-peer/one-org network spread over three hosts (two peers and a orderer). After executing `composer network start` the chaincode container starts successfully in the two peers. However, the command hangs until it fails with the message `Failed to receive commit notification for transaction TRANSACTION_ID within the timeout period`. The peers and the dev containers seem to be all right, but since the command fails I don't receive the admin card. Any tips on what could be wrong?
Has joined the channel.
What;s the best tool for modelling data relationships for your `.cto` file?
Has joined the channel.
Hi, I find in the `Dockerfile` for `composer-rest-server` that `pm2-docker` is being used. On `PM2 Docker Integration` page (http://pm2.keymetrics.io/docs/usage/docker-pm2-nodejs), it is suggested to use `pm2-runtime` and I can't find `pm2-docker` in PM2
Hi, I find in the `Dockerfile` for `composer-rest-server` that `pm2-docker` is being used. On `PM2 Docker Integration` page (http://pm2.keymetrics.io/docs/usage/docker-pm2-nodejs), it is suggested to use `pm2-runtime` and I can't find `pm2-docker` in PM2's online documentation. Is there any particular reason to use `pm2-docker` instead of `pm2-runtime` and vice versa? Thanks.
Hi, I find in the `Dockerfile` for `composer-rest-server` that `pm2-docker` is being used. On `PM2 Docker Integration` page (http://pm2.keymetrics.io/docs/usage/docker-pm2-nodejs), it is suggested to use `pm2-runtime` and I can't find `pm2-docker` in PM2's online documentation. Is there any particular reason to use `pm2-docker` instead of `pm2-runtime` for `composer-rest-server` and vice versa? Thanks.
@jasoncys pm2-docker and pm2-runtime commands are the same thing.
@jasoncys pm2-docker and pm2-runtime commands are the same, they point to the same implementation
[ ](https://chat.hyperledger.org/channel/composer?msg=oPTqmoizTe4cmqYuZ) @lucasdf
I have not spread things out among multiple hosts yet, so I don't have direct experience, but what is happening is that Hyperledger Composer is creating an event listener hoping to hear back that things went well, and it never did and so it timed out. So my advice is to check the settings you used for setting up the event hub- in particular check your settings for the eventURL in your peers in your connection profile or business network card. "Out of the box" they are usually set at "grpc://localhost:7053", which probably won't work over multiple hosts.
I have configured a fabric network with 1 Org, 1 CA & 2 peers & 1 channel. I created a connection.json and a composer PeerAdmin card. I have imported the PeerAdmin card too. When I tried to install composer runtime on the fabric I get an error. The details are
composer runtime install -c PeerAdmin@hlfv1 -n commodity-network
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
When I saw in the docker logs for both the peer there is a error message "[endorser] ProcessProposal -> ERRO 36f simulateProposal() resulted in chaincode response status 500 for txid: d41eb1c588f97a93bf7c11685a30cb04e735a9ce56be4382eed153d2e7132f5d
Please advice what could be the issue
Has joined the channel.
Hello
i was editing on yo generating angular to be able to authenticate using composer-rest-server
but there is error {ERROR in /angular-app/src/app/org.tutorial.ts (1,9): Duplicate identifier 'Asset'.}
so where the org.tutorial.ts file generated ?
Can
How can I use the composer version with pbft Consensus?
[ ](https://chat.hyperledger.org/channel/composer?msg=88jw3NAQjGuZt2by9)
I have fixed this issue
I have setup a fabric network with 1 org, 1 CA, 2 peers, 1 channel. Fabric network works fine and it deploys containers for org, ca, 3 for peers (with couch DB). But when I tried to use composer and try to ping the network I get error on peer -
2018-01-14 12:08:16.421 UTC [eventhub_producer] Chat -> ERRO 12d8 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
2018-01-14 12:13:35.649 UTC [eventhub_producer] validateEventMessage -> DEBU 12d9 ValidateEventMessage starts for signed event 0xc42174f800
2018-01-14 12:13:35.650 UTC [eventhub_producer] Chat -> ERRO 12da Error handling message: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority]]
Below are the sequence of activity that I did
composer card create -p connection.json -u PeerAdmin -c /home/ubuntu/multipeer/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k /home/ubuntu/multipeer/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/xxxxxxxxx_sk -r PeerAdmin -r ChannelAdmin
composer card import -f PeerAdmin@hlfv1.card
composer runtime install -c PeerAdmin@hlfv1 -n commodity-network
composer identity request -c PeerAdmin@hlfv1 -u admin -s adminpw -d bala02
composer network start -c PeerAdmin@hlfv1 -a commodity-network@0.0.1.bna -A bala01 -C bala02/admin-pub.pem
composer card create -p connection.json -u bala02 -n commodity-network -c bala02/admin-pub.pem -k bala02/admin-priv.pem
composer card import -f bala02@commodity-network.card
composer network ping -c bala02@commodity-network
@BalajiSR How many peers are you targetting?
In your connection JSON.
if you are targeting both peers; are you sure your admin identity is for both peers?
I am only thinking out loud here. I never developed with composer on more than 1 peer (minimal environment) because of this simple justification that in real production environment; each peer admin will be responsible for the deployment of the runtime, and deployment of business network.
So my bet is you are supplying a valid admin identity but for the first peer only; so second peer is kind of rejecting it?
However, I will try to follow your steps, and find out what is happening.
Oh Gosh oh Gosh!
It's quite less convoluted than I thought sir.
First of all,
composer network start -c PeerAdmin@hlfv1 -a commodity-network@0.0.1.bna -A bala01 -f bala01@commoditynetwork.card
then you import this card sir. :)
the -C option is not existent on the latest composer cli "at least the one I have".
I am sorry for my convoluted assumptions at first. :)
So composer creates the admin identity, but doesn't stream it to a file.
You lose it.
You create a card from those creds you have; it rejects it because it's just some outer creds :)
hope this suffices for you
[ ](https://chat.hyperledger.org/channel/composer?msg=EcEEHHzdJLCef58fB) @MuhammadSalah How do we assign admin identity for both peers in same org?
[ ](https://chat.hyperledger.org/channel/composer?msg=EcEEHHzdJLCef58fB) @MuhammadSalah How do we assign admin identity for both peers in same org? is that a concern even of only peer-1 joined the channel, not peer-2?
[ ](https://chat.hyperledger.org/channel/composer?msg=EcEEHHzdJLCef58fB) @MuhammadSalah How do we assign admin identity for both peers in same org? is that a concern even if only peer-1 joined the channel, not peer-2?
I think you create two peer admin cards is best practice.
connect to each peer and perform suitable actions.
but in theory you can configure both peers on same admin certs, should not be a problem.
never tried it.
[ ](https://chat.hyperledger.org/channel/composer?msg=tHkj2wxD82SfvmNcJ) @Moxy1683
I have a setup of 1 Org, 1 CA & 2 peer all on the same channel. After bringing up the network I check the docker logs for the both the peers and I observed - [eventhub_producer] Chat -> ERRO 12d8 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled. Is this an issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=GJJvMeZQqrofgsxdd) @MuhammadSalah
Can't I have 2 peer in the same Org. I am sure this should be possible. There is composer tutorial on this and difference is its configured for 2 Org with total 4 peer with each org configured with 2 peer and a CA. Should I configure separate admin certs for each peers in the same Org?
yes, peer admins are different identities.
hello. in composer-playground.. Connect Now button is always disabled.. how do i debug this or enable this?
[ ](https://chat.hyperledger.org/channel/composer?msg=DGuWgRQGyDkkNsZ7Z) @MuhammadSalah
In my connection.json I have configured for both the peers and while creating the Peer Admin card I have mentioned that connection.json.
Below is the command that I used for creation of the PeerAdmin card
composer card create -p connection.json -u PeerAdmin -c /home/ubuntu/multipeer/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k /home/ubuntu/multipeer/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/35e332e8a752562d28bbe09c764d8dc671198e3abf374ff2ac9b4d9a879970ec_sk -r PeerAdmin -r ChannelAdmin
Hi, the PDF Version of "Hyperledger Composer basics, Part 3 Deploy locally, interact with, and extend your blockchain network" is corrupted. From Page 6 on many pages are complete useless with much whitespace and cropped pictures.
( https://www.ibm.com/developerworks/cloud/library/cl-deploy-interact-extend-local-blockchain-network-with-hyperledger-composer/index.html )
I think @jstevenperry wrote the tutorial (but probably not the pdf converter)
Hi, is there any plan to make composer and fabric available on AWS just like sawtooth did?
Hi, i have a question. In composer-client v 0.16 `BusinessNetworkConnection.connect()` works only with id cards? in source code there is `connectWithDetailsMethod()` what for this method is used, and how to connect with id and secret? Thanks for help
[ ](https://chat.hyperledger.org/channel/composer?msg=MvJGHjoyhMwLBAz4g) @a.ochs hi, I've posted a comment for you to Developerworks support to see what the problem might be with the PDF conversion. dheers
[ ](https://chat.hyperledger.org/channel/composer?msg=PAAudGr9AmHshmWCz) @jasoncys hi, suggest to contact Amazon / AWS marketplace support concerning provision of Hyperledger Fabric. Composer sits a layer above this with its own runtime to interact with a Fabric network infrastructure, assuming the Composer runtime was installed (given that a Fabric service was available there etc etc).
hi can anyone tell me how to setup composer 0.16.4 in uby=untu
hi can anyone tell me how to setup composer 0.16.4 in ubuntu
[ ](https://chat.hyperledger.org/channel/composer?msg=3bNpksLddLbQQJo8f) @vurumadla check out the docs -> read the prerequisites (and how to install them and info about the prereqs-ubuntu.sh script) - > https://hyperledger.github.io/composer/installing/installing-prereqs.html and then carry out the installation -> https://hyperledger.github.io/composer/installing/development-tools.html
[ ](https://chat.hyperledger.org/channel/composer?msg=MFcn8B3NtX7QeYbA7) @kassymkhanTJ yes - with cards when connecting to a Fabric network. Using APIs, the sequence goes something like: As an admin, connect to the business network using an admin card, then issue an identity businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user); .... then build your BN card for that identity - var userCard = new IdCard({...}); userCard.setCredentials(credentials); ... import it .... adminConnection.importCard(userCardName, userCard); .... .then(() => { // Connect to the business network using the identity ... businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore }); businessNetworkConnection.connect(userCardName); } ... see also https://stackoverflow.com/questions/48222964/composer-javascript-code-to-import-card-after-issue-identity/48228936#48228936 for more hints..
[ ](https://chat.hyperledger.org/channel/composer?msg=MFcn8B3NtX7QeYbA7) @kassymkhanTJ yes - with cards when connecting to a Fabric network. Using APIs, the sequence goes something like: As an admin, connect to the business network using an admin card, then issue an identity businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user); .... then build your BN card for that identity - var userCard = new IdCard({...}); userCard.setCredentials(credentials); ... import it .... adminConnection.importCard(userCardName, userCard); .... .then(() => { // Connect to the business network using the identity ... businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore }); businessNetworkConnection.connect(userCardName); } ... see also - the docs for issue identity https://hyperledger.github.io/composer/managing/identity-issue.html and also https://stackoverflow.com/questions/48222964/composer-javascript-code-to-import-card-after-issue-identity/48228936#48228936 for more hints..
[ ](https://chat.hyperledger.org/channel/composer?msg=XatcTawnMyE6YYoat) @BalajiSR is this an issue? yes quite possibly. Its a Fabric error - I would check your env / docker-compose.yaml - as suggested here -> https://stackoverflow.com/questions/46775044/error-when-try-to-instantiate-chain-code-on-hyperledger-fabric hope this helps (to resolve this particular issue, you would need to ask on #fabric issue rather than here, maybe you've already done so :) )
[ ](https://chat.hyperledger.org/channel/composer?msg=XatcTawnMyE6YYoat) @BalajiSR _is this an issue_? yes quite possibly. Its a Fabric error - I would check your env / docker-compose.yaml - as suggested here -> https://stackoverflow.com/questions/46775044/error-when-try-to-instantiate-chain-code-on-hyperledger-fabric hope this helps (to resolve this particular issue, you would need to ask on #fabric issue rather than here, maybe you've already done so :) )
[ ](https://chat.hyperledger.org/channel/composer?msg=25LHwQKg4jmM9ZDnb) @rhansharief Are you using playground to connect to a Fabric ? Is this to a business network you've successfully deployed using a Peer Admin? Do you see an admin card ?
[ ](https://chat.hyperledger.org/channel/composer?msg=nyTAyY59eYMfDMBGA) @rbole see answer here -> https://stackoverflow.com/questions/47546941/how-to-use-pbft-as-consensus-protocol-in-hyperledger-fabric-1-0
[ ](https://chat.hyperledger.org/channel/composer?msg=nyTAyY59eYMfDMBGA) @rbole see answer here -> https://stackoverflow.com/questions/47546941/how-to-use-pbft-as-consensus-protocol-in-hyperledger-fabric-1-0. Hyperledger Composer uses the underlying Fabric [supported] consensus mechanisms (which uses a pluggable consensus)
[ ](https://chat.hyperledger.org/channel/composer?msg=nyTAyY59eYMfDMBGA) @rbole see answer here -> https://stackoverflow.com/questions/47546941/how-to-use-pbft-as-consensus-protocol-in-hyperledger-fabric-1-0. Hyperledger Composer uses the underlying Fabric [supported] consensus mechanisms (and which uses a pluggable consensus)
[ ](https://chat.hyperledger.org/channel/composer?msg=mSSdNF5E2RS4CEikM) @mahoney1
Thanks @mahoney1 I will raise it in the #fabric channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=xijCdapQoaeq6K8aN)
@mahoney1 could you help to resolve this issue please
@mahoney1 Just a quick query.
Can a contract in composer invoke another contract deployed on the same Fabric node.
Has joined the channel.
Hi everybody.
How can I call a transaction from a transaction. For example, in some case I need to call in addition one more transaction if the first one was successful or even failed.
Has joined the channel.
Hi everyone, I try to do a resolveAll on an Historian but it seems to return less datas than getAll(), at least, the relationships are not resolve. Is it normal ? thx
Hi everyone, as Admin, I try to do a resolveAll on an Historian but it seems to return less datas than getAll(), at least, the relationships are not resolve. Is it normal ? thx
[ ](https://chat.hyperledger.org/channel/composer?msg=PrzSW7wqG7mpDynN8) @IssaAmit a transaction in Composer cannot be called from another transaction inside Composer (however, a transaction processor can call other functions to allow for code modularisation, but it will only be registered as a single transaction request in the transaction registry).
moreover, when i do a record.transaction.getType using historian.resolveAll(), it crashed. But not when I use historian.getAll()
moreover, when i do a record.transaction.getType() using historian.resolveAll(), it crashed. But not when I use historian.getAll()
[ ](https://chat.hyperledger.org/channel/composer?msg=qPAwEf7gBQ95gRgzv) @SergeySadon as above. you can use events to emit the transaction id and then decide what should happen next, depending on the result - see -> https://hyperledger.github.io/composer/reference/js_scripts.html
[ ](https://chat.hyperledger.org/channel/composer?msg=qPAwEf7gBQ95gRgzv) @SergeySadon as per response to _IssaAmit_ above. you can use events to emit the transaction id and then decide what should happen next, depending on the result - see -> https://hyperledger.github.io/composer/reference/js_scripts.html
[ ](https://chat.hyperledger.org/channel/composer?msg=4frBy26urhyfxpSNb) @CorentinPacaud strange....`resolveAll()` returns a promise that will be resolved with an array of JavaScript objects representing the resources and all of their resolved relationships. https://hyperledger.github.io/composer/api/client-historian.html
Yes, I know but this code crash when I use resolveAll() :
``` return bizNetworkConnection.getHistorian()
.then((recordsRegistry) => {
return recordsRegistry.getAll()
.then(function (records) {
console.log("Res : ", records.length);
var ret = [];
records.forEach(function (rec) {
console.log("Rec 1 : ", rec.transactionId);
var newRet = {
"txId": rec.transactionId,
"type": rec.transactionInvoked.getType(),
"timestamp": rec.transactionTimestamp
};
ret.push(newRet);
});
res.json({ "status": "OK", "historian": ret });
});
});```
It crash on ```"type": rec.transactionInvoked.getType(),```
@CorentinPacaud , apart from the fact that the results could be sorted differently (but you're checking the count in any case) I- what do your system ACLs say ? As for your error, would have to see some logs to see what's going on.
My system ACL say NetworkAdmin has all right on Historian. By the way, why the result would be different with a resolveAll and getAll() with the SAME user ?
I try to more logs for you.
My system ACL say NetworkAdmin has all right on Historian. By the way, why the result would be different with a resolveAll and getAll() with the SAME user ?
I try to have more logs for you.
My system ACL says NetworkAdmin has all right on Historian. By the way, why the result would be different with a resolveAll and getAll() with the SAME user ?
I try to have more logs for you.
```
return bizNetworkConnection.getHistorian()
.then((recordsRegistry) => {
return recordsRegistry.resolveAll()
.then(function (records) {
try {
console.log("Res : ", records.length);
var ret = [];
records.forEach(function (rec) {
console.log("Rec 1 : ", rec.transactionId);
var newRet = {
"txId": rec.transactionId,
"type": rec.transactionInvoked.getType(),
"timestamp": rec.transactionTimestamp
};
ret.push(newRet);
});
res.json({ "status": "OK", "historian": ret });
} catch (e) {
console.log("error", e);
res.json({ "status": "FAILED", "reason": e.toString() })
}
})
.catch(function (ex) {
console.log("error", ex);
res.json({ "status": "FAILED", "reason": exception.toString() })
});
});
```
Error is : ```error TypeError: rec.transactionInvoked.getType is not a function
```
Very strange
[ ](https://chat.hyperledger.org/channel/composer?msg=7eNruMFwFBdEA8AHa) @CorentinPacaud its more the SystemACL eg. `rule AllAccess {
description: "AllAccess - grant everything to everybody"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
} ``` - the ** means it would be the current level and all nested resources below that level (eg. thinking when it comes to resolving relationships to resources)
[ ](https://chat.hyperledger.org/channel/composer?msg=7eNruMFwFBdEA8AHa) @CorentinPacaud its more the SystemACL eg. ```rule AllAccess {
description: "AllAccess - grant everything to everybody"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
} ``` - the ** means it would be the current level and all nested resources below that level (eg. thinking when it comes to resolving relationships to resources)
I have this : ```rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}```
how to get asset created date
Has joined the channel.
@jon_s - Historian is probably your best bet -> the timestamp field. It has a historical record of all `AddAsset` transactions for the asset class in question. eg ```{
"$class": "org.hyperledger.composer.system.AddAsset",
"resources": [
{
"$class": "org.acme.account.BankAccount",
"accountID": "4",
"balance": 200,
"owner": "resource:org.acme.account.AccountTrader#4"
}
],
"targetRegistry": "resource:org.hyperledger.composer.system.AssetRegistry#org.acme.account.BankAccount",
"transactionId": "2748500e-ecef-481e-a5d7-78dbb4be6d55",
"timestamp": "2018-01-12T17:07:05.194Z"
}``` also - if you're creating the asset as part of a transaction processor function then an example of using the field is here -> https://stackoverflow.com/questions/43656164/getting-timestamps-in-deterministic-way-in-hyperledger-composer-transactions
thanks
@mahoney1 how to get the targetRegistry field in my result set
i am not getting same response
[ ](https://chat.hyperledger.org/channel/composer?msg=dywwdEiJZYy6dkxrY) DeveloperWorks wrote back - have said they'll resolve the PDF issue in the next day or so
[ ](https://chat.hyperledger.org/channel/composer?msg=B6XrfC6gy9fLdw75L) @jon_s `targetRegistry` is a field available to transaction from the transaction `org.hyperledger.composer.system.AddAsset` - see here https://github.com/hyperledger/composer/blob/master/packages/composer-common/lib/system/org.hyperledger.composer.system.cto#L114 - so query the AddAsset class and match on the target Asset Registry type eg something like `SELECT org.hyperledger.composer.system.AddAsset WHERE targetRegistry == 'resource:org.hyperledger.composer.system.AssetRegistry#org.acme.account.BankAccount' `
[ ](https://chat.hyperledger.org/channel/composer?msg=B6XrfC6gy9fLdw75L) @jon_s `targetRegistry` is a field available to transaction from the transaction `org.hyperledger.composer.system.AddAsset` - see here https://github.com/hyperledger/composer/blob/master/packages/composer-common/lib/system/org.hyperledger.composer.system.cto#L114
[ ](https://chat.hyperledger.org/channel/composer?msg=B6XrfC6gy9fLdw75L) @jon_s `targetRegistry` is a field available to transaction from the transaction `org.hyperledger.composer.system.AddAsset` - see here https://github.com/hyperledger/composer/blob/master/packages/composer-common/lib/system/org.hyperledger.composer.system.cto#L114 - so query the AddAsset class and match on the target Asset Registry type
I am getting following error...I have 1 Org, 1 CA, 2 couchdb and 2 peers ... I have created network card but getting error while composer install
⠼ Installing runtime for business network v10. This may take a minute...E0115 18:27:12.460107055 14177 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
E0115 18:27:12.461132409 14177 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
⠦ Installing runtime for business network v10. This may take a minute...E0115 18:27:34.372226506 14177 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
E0115 18:27:34.373038001 14177 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
E0115 18:27:34.373996846 14177 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
E0115 18:27:34.374327504 14177 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
✖ Installing runtime for business network v10. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Response from attempted peer comms was an error: Error: Connect Failed
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=SN4doYAasccZwguKK) @mvaibhavshah - Have you used `"hostnameOverride": "peer1.org1.example.com"` statements in your connection.json file? You might also like to see this thread on Rocket Chat where using a hostname has helped: chat.hyperledger.org/channel/composer?msg=wPAmysbEPoaEswpWi
Has joined the channel.
Hi. I am getting Error "Error: Card not found: PeerAdmin@hlfv1" when trying to run the command "composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network" when working through the Developer-tutorial (Step Four: Deploying the business network)
Has joined the channel.
ReferenceError: require is not defined .. I get this error when using the following code :
var BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
var businessNetwork = new BusinessNetworkConnection();
return businessNetwork.connect('testprofile', 'businessNetworkIdentifier', 'WebAppAdmin', 'DJY27pEnl16d')
.then(function(businessNetworkDefinition){
return businessNetworkDefinition.getHistorian();
})
.then(function(historian){
// Retrieved historian
});
(https://hyperledger.github.io/composer/api/client-historian)
Can anyone help me with this
[ ](https://chat.hyperledger.org/channel/composer?msg=DBcKxQP5BF54TGXeT) https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
@BrianV 3 did you run though the prerequisite steps listed in 'Set up your development environment' in the prerequisite section? In particular, the commands at the start of the 'Controlling your dev environment' section, one of which, `createPeerAdminCard.sh` should have created that card for you.
[ ](https://chat.hyperledger.org/channel/composer?msg=kDoFJyT6RvPuc3D4d) @BrianV 3 - You can try `composer card list` to show if the card really is present or not. Probably it is not - did you run the script `createPeerAdminCard.sh` from the fabricTools folder ? (may have got the script name a bit wrong)
[ ](https://chat.hyperledger.org/channel/composer?msg=5hex5JLjEK3A6oZRZ) @rthatcher thank you! the createPeerAdminCard.sh was the fix.
[ ](https://chat.hyperledger.org/channel/composer?msg=br6CPiJpNwYzFEJcz) @silliman thank you. the createPeerAdminCard.sh was the fix.
Has joined the channel.
Has joined the channel.
```Response from attempted peer comms was an error: Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority```
has anyone had this problem ?
I have tried searching the comments
ok things have improved slightly I have managed to install my runtime, but I can not composer start network
```
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Transaction returned with failure: SyntaxError: parse error (line 37)
```
docker ps shows
```
bce3e047d1e2 hyperledger/fabric-peer:x86_64-1.0.4 "peer node start --p…" 35 minutes ago Up 35 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.wgiplant.wgi.ap.mars
```
[ ](https://chat.hyperledger.org/channel/composer?msg=ZoqHEtiZoDHXZCL9j) @mahoney1 yes i'm using playground to connect to a fabric network deployed using cello. The problem is i have no idea if i have errors and the connect now button is disabled
[ ](https://chat.hyperledger.org/channel/composer?msg=hiDnhGgKqGMQMsuRx) do you have any reference/tutorials on how can i connect playground to the fabric network deployed from cello?
how to start fabric server without removing existing data.
cause the start removes my data and starts the server
This might be helpful for people who are struggling with multiorg setup.
https://www.skcript.com/svr/simple-steps-to-run-hyperledger-fabric-composer-network-with-multiple-organization/
[ ](https://chat.hyperledger.org/channel/composer?msg=2yQHBpmxoaP5LmG9G) @rthatcher : I have not used "hostnameOverride" but after putting ip into connection.json and adding ip into /etc/hosts for orderer.example.com I am not getting SSL_ERROR but now getting only following error
ubuntu@ubuntu-xenial:~/fabric-tools$ composer runtime install --card PeerAdmin@v10 -n v10
✖ Installing runtime for business network v10. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Response from attempted peer comms was an error: Error: Connect Failed
Command failed
@varun-raj : I am not able to open the link
[ ](https://chat.hyperledger.org/channel/composer?msg=pkBi5opKaZoT9uBD9) @mvaibhavshah What does it says?
@varun-raj : Secure Connection Failed
The connection to www.skcript.com was interrupted while the page was loading.
The page you are trying to view cannot be shown because the authenticity of the received data could not be verified.
Please contact the website owners to inform them of this problem.
Has joined the channel.
Good morning, I'm looking for some advice / best practise for connection handling. I've build a custom NodeJs API using composer-client libraries. Should i be creating one connection per user session or connecting and disconnecting per request? My main reason for creating a single connection is performance as connecting takes a bit of time, however I'm experiencing oddities in the api so wondering if this is due to keeping connections open for periods of time.
[ ](https://chat.hyperledger.org/channel/composer?msg=xJ5XLbNSS2P4JSE78) @mvaibhavshah Sure. I'll look into it right away.
@nippleDonkey can you be more explicit about the "oddities". It should be possible to use a connection over periods of time.
while deploying multiorg on multiple vm when i ping the deployed network i got Error trying invoke business network. Error: Failed to receive commit notification for transaction '2dc146af3ca39311c2fbc53511663f05c38578ed2e25d9476cadee876f1f75fe' within the timeout period. But when i see docker logs for peer, the transaction is successful but getting ERRO 1a23 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
[ ](https://chat.hyperledger.org/channel/composer?msg=CkrsPLpxdqEy5rWS9) @davidkel Sure, when i login and connect for the first time I can see the chaincode container spin up and everything is working fine and fairly responsive (usually within 300ms response times). If i have a period of inactivity, 5 - 10 minutes, and come back to the site and refresh it I notice the chaincode container gets removed and spins up again. This then causes the api connection to timeout. After another refresh (or two) things start to come back correctly
@nippleDonkey Constantly creating and disconnecting connections should have no bearing on keeping the chaincode container around. If your chaincode container is getting removed and the peer has to keep restarting it, that's unusual indeed but not related to composer connections. I think you need to understand the cause of the chaincode container disappearing
[ ](https://chat.hyperledger.org/channel/composer?msg=9v99YJTojGzNHGkeb) @davidkel Thanks for the response. The reason I'm asking about connections is me trying to understand why the chaincode is restarting. I've logged the chaincode container logs to the peer. But they don't seem to say much:
[[36m2018-01-15 17:27:03.651 UTC [chaincode] Launch -> DEBU 29763^[[0m chaincode is running(no need to launch) : lscc:1.0.2
but again it starts another one:
[[36m2018-01-15 17:27:37.470 UTC [chaincode] launchAndWaitForRegister -> DEBU 29863^[[0m start container with env:
CORE_CHAINCODE_ID_NAME=submission-network:0.16.3
CORE_PEER_TLS_ENABLED=false
CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
CORE_CHAINCODE_LOGGING_SHIM=warning
CORE_CHAINCODE_LOGGING_FORMAT=%{color}%{time:2006-01-02 15:04:05.000 MST} [%{module}] %{shortfunc} -> %{level:.4s} %{id:03x}%{color:reset} %{message}
^[[36m2018-01-15 17:27:37.470 UTC [container] lockContainer -> DEBU 29864^[[0m waiting for container(dev-peer0.operator1.com-submission-network-0.16.3) lock
^[[36m2018-01-15 17:27:37.470 UTC [container] lockContainer -> DEBU 29865^[[0m got container (dev-peer0.operator1.com-submission-network-0.16.3) lock
^[[36m2018-01-15 17:27:37.470 UTC [dockercontroller] Start -> DEBU 29866^[[0m Cleanup container dev-peer0.operator1.com-submission-network-0.16.3
2018-01-15 17:27:37.541 UTC [dockercontroller] func2 -> INFO 29867^[[0m Container dev-peer0.operator1.com-submission-network-0.16.3 has closed its IO channel
^[[36m2018-01-15 17:27:37.814 UTC [dockercontroller] stopInternal -> DEBU 29868^[[0m Stopped container dev-peer0.operator1.com-submission-network-0.16.3
^[[36m2018-01-15 17:27:37.814 UTC [dockercontroller] stopInternal -> DEBU 29869^[[0m Kill container dev-peer0.operator1.com-submission-network-0.16.3 (API error (409): {"message":"Cannot kill container: dev-peer0.operator1.com-submission-network-0.16.3: Container a91aedfe0d9bd89e3bce46522cd1619e0c3b396fcdc9986341ecd4b2758fa853 is not running"}
)
^[[36m2018-01-15 17:27:37.827 UTC [dockercontroller] stopInternal -> DEBU 2986a^[[0m Removed container dev-peer0.operator1.com-submission-network-0.16.3
^[[36m2018-01-15 17:27:37.827 UTC [dockercontroller] Start -> DEBU 2986b^[[0m Start container dev-peer0.operator1.com-submission-network-0.16.3
^[[36m2018-01-15 17:27:37.827 UTC [dockercontroller] createContainer -> DEBU 2986c^[[0m Create container: dev-peer0.operator1.com-submission-network-0.16.3
^[[36m2018-01-15 17:27:37.878 UTC [dockercontroller] createContainer -> DEBU 2986d^[[0m Created container: dev-peer0.operator1.com-submission-network-0.16.3-3f30f176ccafefbfd2bd03afe1db18f163bb684d935aff0cf5e5a90f0aca5175
2018-01-15 17:27:38.416 UTC [dev-peer0.operator1.com-global-network-0.16.3] func2 -> INFO 2986e^[[0m ^[[36m2018-01-15 17:27:38.416 UTC [Composer] Debug -> DEBU 1c09^[[0m Garbage collection ticker 0
[ ](htt@pschwarz ://chat.hyperledger.org/channel/composer?msg=WRsPAQAFTQn9yJRk3) @mvaibhavshah - have you restarted your machine? Is the Fabric started? `docker ps` should confirm this. Which IP addresses have you used?
Has joined the channel.
connection.json
[ ](https://chat.hyperledger.org/channel/composer?msg=4ZwyQEMkvTm9E7YQD) @rthatcher above is the connection.json
Has joined the channel.
In the tutorials it is explained, that pem keys should have the whole pem file content as its value. So specifying the location of the key is not OK? If not is it planned to be implemented in the future, and if so when?
In the tutorials it is explained, that pem keys should have the whole pem file content as its value. So specifying the location of the key is not OK? If not is it planned to be implemented in the future, and if so when? PS: Using v0.17
In the tutorials it is explained, that pem keys should have the whole pem file content as its value. So specifying the location of the key is not OK? If not is it planned to be implemented in the future, and if so when? PS: Using v0.17.0
@nippleDonkey don't really know what to suggest, maybe ask on one of the fabric channels for recommendations on how to debug this type of problem. It's not obvious from that snippet why the chaincode container is gone and I am assuming that the container has completely gone, just not stopped and still visable through `docker ps -a` before a new one is started
[ ](https://chat.hyperledger.org/channel/composer?msg=WMJNEPnL4dhm6KQYB) @davidkel Yes, if you monitor the docker ps you can see it disappear and come back up with the created time xx seconds ago, I'll try the fabric channel, thanks. Finally, in your experience do you know of any issues related to running fabric in a docker swarm environment?
@nippleDonkey Sorry, no haven't used swarm. I thought docker themselves were moving away from swarm towards K8s ? The only time I have seen something similar to what you see is when the docker container runs out of resources and just dies. Don't know if swarm does any kind of resource management on containers both in cpu/memory but also idle management.
is it possible to write our own REST response using composer-rest-server ?
@SimonOberzan You can specify the location of the file, but it is a different property name in the connection profile. The reason the tutorial demonstrates doing it by embedding the pem as a string is to demonstrate how to create a "portable" connection profile. If you start creating cards using a connection profile that specifies file paths, then those cards are not portable.
I did see your git issue comments about the resources, so i was monitoring the resources for this but they looked ok. I'll see what the fabric channel says and look into K8s, thanks.
@davidkel I see. Thank you
Clipboard - January 16, 2018 3:06 PM
@rthatcher : card is created , card is imported but composer install fails
Clipboard - January 16, 2018 3:07 PM
@SimonOberzan The format of the connection profile is defined by the fabric node-sdk which has documented it here
https://fabric-sdk-node.github.io/tutorial-network-config.html
unfortunately the documentation is not too comprehensive, but you should see a `path` option which you would use instead of the `pem` option if you really want to create unportable connection profiles.
@davidkel I have that working already, but from the tutorial I assumed it should necessarelly be pem, as I am having problems with installing runtime and I'm trying to debugg it. The problem I have is that I sucessfully install it using PeerAdmin@bc1st-org1, but then when I am trying to do the same for the second org with PeerAdmin@bc1st-org2, I get the following error: `Error: Error trying install composer runtime. Error: The Composer runtime is already installed on all the peers`. I have checked the /var/hyperledger/production/chaincodes/ directory and only peers of the first org have the chaincode installed. Do you have any idea what might have caused this?
connection-org1.yml: https://pastebin.com/Gxj0S07i, connection-org2.yml: https://pastebin.com/ejB1eumA
@davidkel I have that working already, but from the tutorial I assumed it should necessarelly be pem, as I am having problems with installing runtime and I'm trying to debugg it. The problem I have is that I sucessfully install it using PeerAdmin@bc1st-org1, but then when I am trying to do the same for the second org with PeerAdmin@bc1st-org2, I get the following error: `Error: Error trying install composer runtime. Error: The Composer runtime is already installed on all the peers`. I have checked the /var/hyperledger/production/chaincodes/ directory on the peers and only peers of the first org have the chaincode installed. Do you have any idea what might have caused this?
connection-org1.yml: https://pastebin.com/Gxj0S07i, connection-org2.yml: https://pastebin.com/ejB1eumA
I have found out that the second installation is still trying to connect only to org1 peers, but I don't know why
@SimonOberzan you can only install chaincode on peers of your own oganisation
So a connection profile targets a specific organisation. You would have 1 for each organisation and as such will differ in the client section declaring which organisation you are part of
Hello All..request your help...getting following error..can you please tell which ip should use in connection.json to get the peers communicate.error is "No valid responses from any peers"
connection.json.png
Clipboard - January 16, 2018 3_25 PM.png
Clipboard - January 16, 2018 3_23 PM.png
@davidkel Is it possible to emit an event before completion of a transaction.
@davidkel Is it possible to emit an event before completion of a transaction.
@davidkel Is it possible to emit an event before completion of a transaction.
Like if I want to emit that something is added to a particular asset registry and
then after emitting that event I want to update some other assets registry in the same/
@davidkel Is it possible to emit an event before completion of a transaction.
Like if I want to emit that something is added to a particular asset registry and
then after emitting that event I want to update some other assets registry in the same
transaction.
When I activate multiple user authentication on `composer-rest-server`, where is the data regarding the actual certificates and identities stored on the harddrive?
Calling the `/GET/` request on the wallet end point returns info about the identity, but can't find the physical location of the files. I plan to write and maintain my own APIs that mimic `composer-rest-server`
Has joined the channel.
@IssaAmit you can issue emit at any point in your transaction logic, but that event will not actually be emitted until the transaction is committed
@varunagarwal did you specify any actual persistence mechanism when you enabled multi-user ? If you didn't then it defaults to a simple in memory persistence mechanism. See https://hyperledger.github.io/composer/integrating/deploying-the-rest-server and the section `Configuring the REST server with a persistent data store` for more info.
Hello! I'm working on next problem for 2 weeks. I'm trying to implement `Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations)` on 2 different vm. So, can you provide something like "step-by-step guide" to configure systems for that?
Or if it exist, can you send the link on it?
@argman I know some people have tried something similar on this channel, however more people involved in setting up a fabric networks will be on other fabric channels. Once you have sorted out how to build your fabric network then you can refer to the composer documentation around connection profiles to help you build an appropriate connection profile for your fabric network. See https://hyperledger.github.io/composer/reference/connectionprofile for 0.16.x profiles or see https://hyperledger.github.io/composer/next/reference/connectionprofile for info on the new common connection profile format in the 0.17 and beyond release
[ ](https://chat.hyperledger.org/channel/composer?msg=DKrQS2MFSuDizbpQJ) @mvaibhavshah Make sure you executed the 'createPeerAdminCard.sh' and 'createComposerProfile.sh' and try again. You may also want to check you fabric instance up and running!
anyone know how to structure a permission.acl rule saying only the identity that created an asset should view the asset, when that asset does not have a relation to a participant?...
anyone know how to structure a permission.acl rule saying only the identity that created an asset should view the asset, when that asset does not have a relation to a participant?... except the identity running the rest server.
I have successfully followed the steps to multi-org, but now I'm stuck at starting the network. When I run 'composer network start ...', I get errors from the peers. Here are the logs from a peer: http://prntscr.com/i18c1b. The problem is at building the Dockerfile, but I can't find out how to fix it. Any hints much appreciated
I have successfully followed the steps to deploy multi-org, but now I'm stuck at starting the network. When I run 'composer network start ...', I get errors from the peers. Here are the logs from a peer: http://prntscr.com/i18c1b. The problem is at building the Dockerfile, but I can't find out how to fix it. Any hints much appreciated
I have successfully followed the steps to deploy multi-org, but now I'm stuck at starting the network. When I run `composer network start ...`, I get errors from the peers. Here are the logs from a peer: http://prntscr.com/i18c1b. The problem is at building the Dockerfile, but I can't find out how to fix it. Any hints much appreciated
I have successfully followed the steps to deploy multi-org, but now I'm stuck at starting the network. When I run `composer network start ...`, I get errors from the peers. Here are the logs from a peer: http://prntscr.com/i18c1b. The problem is at building the Dockerfile, but I can't find out how to fix it. Did anyone else encounter similar errors? Any hints much appreciated
I have successfully followed the steps to deploy multi-org, but now I'm stuck at starting the network. When I run `composer network start ...`, I get errors from the peers. Here are the logs from a peer: http://prntscr.com/i18c1b. The problem is at building the Dockerfile, but I can't find out how to fix it. Did anyone else encounter similar errors? Any hint much appreciated
@SimonOberzan That's an interesting fabric bug, here is what I see on my system
```
^[[36m2018-01-16 15:06:46.421 UTC [dockercontroller] Start -> DEBU 74d^[[0m start-could not find image
@davidkel Yeah, that is what I would expect
@SimonOberzan the problem could be down to how you have setup and configured your peer.
It is originating from there: https://github.com/hyperledger/fabric/blob/d9c320297bd2a4eff2eb253ce84dc431ef860972/core/chaincode/platforms/platforms.go#L106, but I can't figure out which platform is used. Do you know what determines it?
And I have successfully deployed a golang chaincode using Node SDK before trying to deploy a Composer networ, so this error is even weirder to me
And I have successfully deployed a golang chaincode using Node SDK before trying to deploy a Composer network, so this error is even weirder to me
How have you setup your peer ?
Using Cello ansible agent
Using Cello's ansible agent
I can show you the peer' compose file if that would help
I can show you the peer's compose file if that would help
Sorry, that doesn't mean much to me really but it could be the cello may not have configured the peer correctly.
The peer will determine what chaincode image to use for building through it's configuration (specifically there is a config definition `chaincode.node.runtime` ) it's possible in your setup that this definition has not been set
The peer's compose file: https://pastebin.com/susH53aX
I would say you need to report it back to the cello folk
I'll ask on the Fabric channel as this is not really Cello related. Thank you
Well, I think it is a suspect as it is changing the /etc/hyperledger/fabric directory where the peer configuration resides based on your compose file
I'll look into that
Hello, Is it possible to define function (for modular programming) within Transaction Processor and then calling that function based on submitted transaction?
[ ](https://chat.hyperledger.org/channel/composer?msg=ho7D8BbBFfsNrrpnz) @AkshayJindal a transaction cannot presently be called from another transaction - however, a transaction processor can call other functions to allow for code modularisation, but it will only be registered as a single transaction request, in the transaction registry. So example ....```function sayHello(name) { retMsg = "hello " + name; return {code: 11, message: retMsg}; }``` can be called in TP such that ```var returnVal; //And now call the function in func2.js var returnVal= sayHello("Jon Doe"); var code = returnVal.code; var msg= returnVal.message; console.log('The returned message and code are: Msg-> ' + msg + ' the code -> ' + code ); // output is "The returned message and code are: Msg -> Hello Jon Doe the code -> 11"```
[ ](https://chat.hyperledger.org/channel/composer?msg=ho7D8BbBFfsNrrpnz) @AkshayJindal a transaction cannot presently be called from another transaction - however, a transaction processor can call other functions to allow for code modularisation, but it will only be registered as a single transaction request, in the transaction registry. So example .... ```function sayHello(name) { retMsg = "hello " + name; return {code: 11, message: retMsg}; }``` can be called in TP such that ```var returnVal; //And now call the function in func2.js var returnVal= sayHello("Jon Doe"); var code = returnVal.code; var msg= returnVal.message; console.log('The returned message and code are: Msg-> ' + msg + ' the code -> ' + code ); // output is "The returned message and code are: Msg -> Hello Jon Doe the code -> 11"```
[ ](https://chat.hyperledger.org/channel/composer?msg=ho7D8BbBFfsNrrpnz) @AkshayJindal a transaction cannot presently be called from another transaction - however, a transaction processor can call other functions to allow for code modularisation, but it will only be registered as a single transaction request, in the transaction registry. So example .... ```function sayHello(name) { retMsg = "hello " + name; return {code: 11, message: retMsg}; } ``` can be called in TP such that ```var returnVal; //And now call the function in func2.js var returnVal= sayHello("Jon Doe"); var code = returnVal.code; var msg= returnVal.message; console.log('The returned message and code are: Msg-> ' + msg + ' the code -> ' + code ); // output is "The returned message and code are: Msg -> Hello Jon Doe the code -> 11"```
can someone help me in using BusinessNetworkConnection class in composer playgound?
I am trying to use: var BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
However it gives the error : ReferenceError: require is not defined
This is what I did ...but still getting an error....docker is up and running...
ubuntu@ubuntu-xenial:~/fabric-tools$ ./createComposerProfile.sh
# Grab the current directory
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd
dirname "${BASH_SOURCE[0]}"
rm -rf ~/.composer-connection-profiles/hlfv1/*
rm -rf ~/.composer-credentials/*
# copy org admin credentials into the keyValStore
mkdir -p ~/.composer-credentials
cp "${DIR}"/composer/creds/* ~/.composer-credentials
# create a composer connection profile
mkdir -p ~/.composer-connection-profiles/hlfv1
cat << EOF > ~/.composer-connection-profiles/hlfv1/connection.json
{
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://192.168.0.101:7050" }
],
"ca": { "url": "http://192.168.0.101:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://192.168.0.101:7051",
"eventURL": "grpc://192.168.0.101:7053"
},
{
"requestURL": "grpc://192.168.0.101:8051",
"eventURL": "grpc://192.168.0.101:8053"
}
],
"keyValStore": "${HOME}/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}
EOF
echo "Hyperledger Composer profile has been created for the Hyperledger Fabric v1.0 instance"
Hyperledger Composer profile has been created for the Hyperledger Fabric v1.0 instance
ubuntu@ubuntu-xenial:~/fabric-tools$ ./createPeerAdminCard.sh
Using composer-cli at v0.16.2
Deleted Business Network Card: PeerAdmin@v10
Command succeeded
Successfully created business network card file to
Output file: /tmp/PeerAdmin@v10.card
Command succeeded
Successfully imported business network card
Card file: /tmp/PeerAdmin@v10.card
Card name: PeerAdmin@v10
Command succeeded
Hyperledger Composer PeerAdmin card has been imported
The following Business Network Cards are available:
Connection Profile: v10
┌───────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├───────────────┼───────────┼──────────────────┤
│ PeerAdmin@v10 │ PeerAdmin │ │
└───────────────┴───────────┴──────────────────┘
Issue composer card list --name
Clipboard - January 17, 2018 12:21 AM
@mvaibhavshah you shouldn't be running createComposerProfile.sh it isn't required unless you want to create a connection profile for the fabric network set up by our development server (it also looks like you modified it). The createPeerAdminCard has it's own built in connection profile it uses to build the PeerAdmin Card. Again all these commands are relevant to our development server however it looks like you are trying to build your own server. Do you have any problems if you just use our development server ?
@davidkel : I just want to have 2 peers so I have added the peers....earlier I was not executing createComposerProfile.sh ..I was using connection.json which I create
and was getting same error...so question is which IPs should be used in connection.json ? I have Windows 7 and Oracle VM in that ubuntu is the image..thenafter all dockers
@mvaibhavshah So what I want to establish. If you use our development server did you get the same problem ?
@hounded
@davidkel : Development server is on 1 peer and I need 2 peer...In one peer there is no problem..
@mvaibhavshah so I guess what you are saying is that you had no problems working with our development server, but when you tried to build your own fabric network it doesn't work. Then I would think there is a problem with how you have built and stood up your fabric network that you need to understand
@davidkel : sorry by development server you mean the basic network with 1 peer, 1 CA, 1 orderer , 1 couchdb in 1 org?
@mvaibhavshah The server you download defined by our documentation (fabric-dev-servers.tar.gz). Which comes from composer-tools
That's our development server
@davidkel : Yes..in that I am just adding 2nd peer as peer1.org1.example.com....
And you had no problems before you tried to add a 2nd peer ?
@davidkel : No problem earlier
@mvaibhavshah So you know that you can't just add another peer definition to the docker-compose file and expect that to work don't you
@davidkel : second peer is running..but while compose install only I am having issues
@mvaibhavshah Well all I can say is that if you have used our development server and it worked (which uses localhost as the network address for the peer, orderer and ca) and by attempting to add another peer to this environment it has stopped working then whatever you have done to try to add another peer is the cause of the problem you are seeing.
Also I would suggest not trying to use TLS to begin with when trying to build and test your own fabric. Get it working without using TLS first
Has joined the channel.
Has joined the channel.
what is the difference between admin principal "Role.Admin" and "Role.Member" in configtx.yaml?
Has joined the channel.
I need a help. Im doing a composer application in which ther may be one or more participants and they can send moey to each other. the Cto file is below:
namespace org.acme.sample
asset BankAsset identified by assetId {
o String assetId
--> MyBank owner
o String value
}
participant MyBank identified by participantId {
o String participantId
o String bankName
}
transaction BankTransaction {
--> BankAsset asset
--> MyBank newOwner
}
Is this correct???? when i run the program its running but i cant see transactions saying asset send from x to y in /system/historian api. Please help..
[ ](https://chat.hyperledger.org/channel/composer?msg=4Lsbu7HfnfrpPekqe) : Thanks for the inputs @varunagarwal . I also will a look from this perspective and come back to you in case of any clarifications.
[ ](https://chat.hyperledger.org/channel/composer?msg=4Lsbu7HfnfrpPekqe) Thanks for the inputs @varunagarwal . I also will a look from this perspective and come back to you in case of any clarifications.
@rahulkannur The transaction function logic in logic.js determines the operations that are to be done.Please debug the logic.js file
@SudheerKaspa is that file in lib folder? in it, it is defined as
function sendMoney(tx){
// changing the asset owner
tx.asset.owner=tx.newOwner;
// Get the asset registry for the asset.
return getAssetRegistry('org.acme.sample.BankAsset')
.then(function (assetRegistry) {
// Update the asset in the asset registry.
return assetRegistry.update(tx.asset);
});
}
@rahulkannur Did you mention the transaction preprocessor in logic.js?? * @param {org.acme.sendMoney} tx
* @transaction
@SudheerKaspa it is like this
/**
* transfer money to another bank
* @param {org.acme.sample.BankTransaction} tx The transaction instance.
* @transaction
*/
commented. Should i remove the comment?
@rahulkannur It's perfect dont remove the comment
@rahulkannur also check the newowner of the asset after the transaction
The problem is after transaction is complete see transaction in BankTransaction api but not in /system/historian api. And also from who it was send should be also seen.
[ ](https://chat.hyperledger.org/channel/composer?msg=vaDtJ3pnc7gYK3izQ) @BalajiSR Can you try this approach and let me know whether its working for you. try `docker images` and if you see images starting with `dev-peer`, delete them using `docker rmi -f` command. And then try running your model again.
Hi everyone,
I try to resolveAll historian Records but it resolve nothing. I don't know where the problem is because I try with this ACL :
```
rule Default {
description: "Allow all participants access to all resources"
participant: "org.odm.participants.*"
operation: ALL
resource: "**"
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}```
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=mXAfiakbHdRNxZR4o) @rahulkannur - as you have found out, there are 2 parts to the historian data, and they are deliberately separated. Visibility of the 2 parts is controlled by different elements of the ACL. Using the Rest API - under system/historian you see the 'system' view (if you have access) and on the transaction side you see the 'data' (if you have access). To get the complete picture you would need to access both parts - linked by the TransactionID.
Hi, i have a question. If I give All access on a resourceType for a ParticipantType in a first rule and add a second rule which Deny some rights in certains conditions, does the second rule will take the advantage on the first one ?
Hi, i have a question. If I give All access on a resourceType for a ParticipantType in a first rule and add a second rule which Deny some rights in certains conditions, will the second rule take the advantage on the first one ?
Hi! I'm trying create a business network for two organizations and I would like to know where I can get an example of connection.json for this. A profile for multiple organizations. Thanks!
Hi i am getting this error - `Error: Card not found: PeerAdmin@hlfv1`
When trying to deploy to fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=i593KhaAGoKZ9RxPP) @CorentinPacaud - the *first* matching ACL in the list is used
@rthatcher ok, so if I put the rule with the DENY action before the rule with all access, the Deny will take the lead ?
@rthatcher Hi, When I downloaded fabric following the tutorial on docs page, the ./createAdminCard.sh file seems to be missing
[ ](https://chat.hyperledger.org/channel/composer?msg=6Fnb9NMoLK9KZp9Kg) @varunagarwal - you can try the command `composer card list` to see what cards you have. If you are using the Development Fabric from fabricTools you should have a script `createPeerAdminCard.sh`
Says no business cards available
However when I go to the fabric folder, in hlfv1 i can see a PeerAdmin
file
[ ](https://chat.hyperledger.org/channel/composer?msg=taY5Y9ksuKCftkM6w) @vsadriano - this tutorial is a walk through of a 2 Org example running on a _single_ machine.
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org
This is the reference document for connection profiles:
https://hyperledger.github.io/composer//reference/connectionprofile
[ ](https://chat.hyperledger.org/channel/composer?msg=GcKKgCwvgdwzvyNGA) @varunagarwal - I think I remember that you were using an old version of Composer - have you recently upgraded to v0.16.2 or 0.16.3 ? If you have, then you also need to replace your fabricTools with a new version (this new version includes the script I referred to, and an updated version of Fabric)
Ya i uninstalled and downloaded it all again. It works now.
Thanks. Hey are you with IBM?
[ ](https://chat.hyperledger.org/channel/composer?msg=9pSpanj9p85RQG7bS) @varunagarwal - yes I am.
Can I pm you?
Got an issue
[ ](https://chat.hyperledger.org/channel/composer?msg=ifrk6fQ2vR4QFgu3K) @varunagarwal - sure - though we usually answer most questions in the main channel for others to see.
@rthatcher hi, does the 0.17 come with a new REST API specification too or it keeps it compatible with the 0.16? also, does it change the data model or it keeps it as in 0.16?
[ ](https://chat.hyperledger.org/channel/composer?msg=sJm9iyoe44pygeaJL) @rthatcher This is separate type of question
Composer-rest-server handles authentication for participants, but if we were to do it on our own, would that be an issue. I am unable to find exactly where the rest server stores these identity documents in the wallet for each participant
Can we use node modules in trnasaction processor functions?
[ ](https://chat.hyperledger.org/channel/composer?msg=q39bKeG43nccTsYwm) @uber.twin - v0.17 is described here: https://github.com/hyperledger/composer/releases and it does have Breaking Changes. I think the REST API will have the same structure, so requests made to it should be the same. The text of the model, logic, permissions and queries should be the same, but I would keep text versions of them and create new BNA files.
@rthatcher
@rthatcher
`function isOlderOwner(identity,owner) {
getAssetRegistry('org.acme.identity_manager.owner')
.then(function (Owner_Registry) {
owner_asset = Owner_Registry.get(identity)
\\ Do Something with owner_asset
})
.then(function() {return true})
}`
@rthatcher
`function isOlderOwner(identity,owner) {
getAssetRegistry('org.acme.identity_manager.owner')
.then(function (Owner_Registry) {
owner_asset = Owner_Registry.get(identity)
\\ Do Something with owner_asset
})
.then(function() {return true})
}`
@rthatcher
```function isOlderOwner(identity,owner) {
getAssetRegistry('org.acme.identity_manager.owner')
.then(function (Owner_Registry) {
owner_asset = Owner_Registry.get(identity)
\\ Do Something with owner_asset
})
.then(function() {return true})
}```
Want to return true but instead its returning undefined?
[ ](https://chat.hyperledger.org/channel/composer?msg=XiLMqzyKJbWfDtKpQ) @varunagarwal - we have examples of using MongoDB as the persistent storage for Wallets. You should be able to use any LoopBack connector, but we recommend that you use a LoopBack connector for a NoSQL database. For example, MongoDB or Apache CouchDB. This document shows how to use MongoDb - https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
[ ](https://chat.hyperledger.org/channel/composer?msg=4qn4a4ABBiB97pqur) @navdevl @navdevl Thanks a lot that helped very much
@rthatcher if I switch on 0.17, I'll still be getting the same level of invaluable assistance on this channel, right:)?
@rthatcher if I switch on 0.17, I'll still be getting the same level of invaluable assistance on this channel, right:)? and is it reasonable to anticipate constant "breaking changes" for the next couple of realease on the 0.17 stream?
Error trying to instantiate composer runtime. Error: Peer has rejected transaction '7453073873c8a06089f710cbb678124325067ea8382c7fec617572924c10758d' with code ENDORSEMENT_POLICY_FAILURE
help we out for this error
[ ](https://chat.hyperledger.org/channel/composer?msg=jfaGknfaDuNKw49d5) @rthatcher thanks! But both examples works about one only organization or It has multiple connection profiles (deploy-to-fabric-multi-org). I don't understand what is the need and how I'll work with multiple connection profiles. Is it required (one connection profile for organization)?
@uber.twin the master branch (which will be used for all new capabilities and bug fixes) is driving the follow on releases and the first release is 0.17.0 out now. These new releases target fabric 1.1 which is currently a tech preview but an alpha is due soon (hopefully this month). New capabilities could result in breaking changes as we move closer to our 1.0 release and will result in a version bump.
@vsadriano In a multi-organisational setup, each organisation will have it's own set of connection profiles. If you are working with the 0.16.x releases then the number of connection profiles an organisation needs is more as you need different ones for different tasks. If you use the newer release of 0.17 then because of a change to the connection profile concept this has been simplified. The multi-org tutorial demonstrates the required connection profiles for the differing releases
[ ](https://chat.hyperledger.org/channel/composer?msg=FdPaA47G5Yuvbxw8B) @CorentinPacaud if there is a match on the conditions you mention, yes
[ ](https://chat.hyperledger.org/channel/composer?msg=Hx4TioagRJW8myW5W) @sstone1 @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=FERK3PimrQvpy7FJ2) @wininani are you deploying a multi-org environment with a custom Fabric setup / have you made changes to the Fabric config yaml files ?
@davidkel thank you. you also anticipate the 0.17 REST API will stay compatible with the 0.16 REST interface?
@uber.twin I am not aware of any changes as yet for the Rest Server
@mahoney1 I have successfully achieved multi peer in different machines, but when try to start composer network i am getting that error.
[ ](https://chat.hyperledger.org/channel/composer?msg=abx7L5EnjCPuKhcqC) @wininani Its possible - that you're seeing that because the orderer has been configured with the domain name and you’re using IP address.? (you'll know better - if so you could try change the domain name to your corresponding IP in configtx.yaml under orderer section). The thing is, you can trying deploying a sample Fabric chaincode sample like Marbles (which you can google) and see that it works - once it does, then you know with Composer (as Composer interfaces to the running Fabric, nodes and channel via its connection profiles) , its a matter of ensuring your connection profile info is configured correctly (so as to be able to instantiate the business network on the channel configured between the Orgs). You've also presumably set up a multi-Org connection profile (for the appropriate card such as the PeerAdmin card example shown here https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html) to use in your `start` command sequence.
[ ](https://chat.hyperledger.org/channel/composer?msg=abx7L5EnjCPuKhcqC) @wininani Its possible - that you're seeing that because the orderer has been configured with the domain name and you’re using IP address.? (you'll know better - if so you could try change the domain name to your corresponding IP in configtx.yaml under orderer section). The thing is, you can trying deploying a sample Fabric chaincode sample like Marbles (which you can google) and see that it works - once it does, then you know with Compooser, its a matter of ensuring your connection profile info is configured correctly (so as to be able to instantiate the business network on the channel configured between the Orgs).
[ ](https://chat.hyperledger.org/channel/composer?msg=abx7L5EnjCPuKhcqC) @wininani Its possible - that you're seeing that because the orderer has been configured with the domain name and you’re using IP address.? (you'll know better - if so you could try change the domain name to your corresponding IP in configtx.yaml under orderer section). The thing is, you can trying deploying a sample Fabric chaincode sample like Marbles (which you can google) and see that it works - once it does, then you know with Composer (as Composer interfaces to the running Fabric, nodes and channel via its connection profiles) , its a matter of ensuring your connection profile info is configured correctly (so as to be able to instantiate the business network on the channel configured between the Orgs). You've also presumably set up a multi-Org connection profile (for the appropriate card such as the PeerAdmin card example shown here https://sstone1.github.io/composer/tutorials/deploy-to-fabric-multi-org.html ) to use in your `start` command sequence.
Hi, I would like to understand the internal architecture design of Composer. Are there any design documents?
Hi, is there a way to allow participant(not admin) to issue an identity? Thanks)
@mahoney1, Thanks for your prev answer)
[ ](https://chat.hyperledger.org/channel/composer?msg=kpwATddrRLnJn7PeT) @IssaAmit its because you're using Promises. This thread may help -> https://stackoverflow.com/questions/42187045/return-true-actually-returns-undefined-using-async
[ ](https://chat.hyperledger.org/channel/composer?msg=8Sk7Qmf2sSJ7x3vSC) @sachikoy see here -> https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture and also here -> https://hyperledger.github.io/composer/introduction/solution-architecture.html
[ ](https://chat.hyperledger.org/channel/composer?msg=4mhtyk94ZrnftJE8T) @kassymkhanTJ - yes, when you issue an Identity there is a flag to add. On the command line it would be `composer identity issue --issuer ...`. It can also be done in a similar way with Playground and the REST API.
[ ](https://chat.hyperledger.org/channel/composer?msg=4mhtyk94ZrnftJE8T) @kassymkhanTJ - yes, you would create a participant and link it to a participant with authority to issue an identity (whether in Playground, CLI or using JS APIs ) that will be linked to a participant in Composer..
[ ](https://chat.hyperledger.org/channel/composer?msg=4mhtyk94ZrnftJE8T) @kassymkhanTJ - yes, you would create a participant (if it doesn't already exist) and link it to an identity, giving it authority to issue an identity (whether in Playground, CLI or using JS APIs ) that will be linked to a participant in Composer..
[ ](https://chat.hyperledger.org/channel/composer?msg=GRwT46frq9ZzXJFQn) @mahoney1 thanks for your responce i used IP address instead of Orderer. i will try marbles fabric chaincode.
@rthatcher Thanks, I got the Async part.
How can I retrieve resource(asset) values using Resource
object (asset ID)?
something like ```.then(function (assetRegistry) {
return assetRegistry.get(assetId.getIdentifier())``` or ```.then(function (assetRegistry) {
return assetRegistry.get(tx.assetId)``` or ``.then(function (assetRegistry) {
return assetRegistry.get('1234')`` etc
something like ```.then(function (assetRegistry) {
return assetRegistry.get(assetId.getIdentifier())``` or `.then(function (assetRegistry) {
return assetRegistry.get(tx.assetId)``` or ```.then(function (assetRegistry) {
return assetRegistry.get('1234')``` etc
something like ```.then(function (assetRegistry) {
return assetRegistry.get(assetId.getIdentifier())``` or ```.then(function (assetRegistry) {
return assetRegistry.get(tx.assetId)``` or ```.then(function (assetRegistry) {
return assetRegistry.get('1234')``` etc
something like ```.then(function (assetRegistry) {
return assetRegistry.get(assetId.getIdentifier())``` or ```.then(function (assetRegistry) {
return assetRegistry.get(tx.assetId)``` or ```.then(function (assetRegistry) {
return assetRegistry.get('1234')``` etc
something like `.then(function (assetRegistry) {
return assetRegistry.get(assetId.getIdentifier())` or `.then(function (assetRegistry) {
return assetRegistry.get(tx.assetId)` or `.then(function (assetRegistry) {
return assetRegistry.get('1234')` etc
something like `.then(function (assetRegistry) {
return assetRegistry.get(assetId.getIdentifier())` or `.then(function (assetRegistry) {
return assetRegistry.get(tx.assetId)` or `.then(function (assetRegistry) {
return assetRegistry.get('1234')` etc
something like ```.then(function (assetRegistry) {
return assetRegistry.get(assetId.getIdentifier()) or .then(function (assetRegistry) {
return assetRegistry.get(tx.assetId) or .then(function (assetRegistry) {
return assetRegistry.get('1234')``` etc
something like ```.then(function (assetRegistry) {
return assetRegistry.get(assetId.getIdentifier()) or .then(function (assetRegistry) {
return assetRegistry.get(tx.assetId) or .then(function (assetRegistry) {
return assetRegistry.get('1234')``` etc
@IssaAmit something like ```.then(function (assetRegistry) {
return assetRegistry.get(assetId.getIdentifier()) or .then(function (assetRegistry) {
return assetRegistry.get(tx.assetId) or .then(function (assetRegistry) {
return assetRegistry.get('1234')``` etc
I have followed the instructions in "Deploy to multi-org" successfully to `composer network ping ...` where it fails with: `Error: Error trying to ping. Error: Error trying to query business network. Error: error executing chaincode: transaction returned with failure: [14da41e5]Calling chaincode Invoke() returned error response [Error: The current identity, with the name 'admin' and the identifier 'db5ec7be37f48bb31bb1ca117e09609b79f090caebd510156f29528c5764ce8d', has not been registered]. Sending ERROR message back to peer
Command failed`. I then went back and realised that even though the response of `composer network start ...` was a success, the logs in dev-peer3.org1-test-network-0.17.0 have the following errors: https://pastebin.com/i4wwA5i4.
Did anyone encounter a similar problem?
I have followed the instructions in "Deploy to multi-org" successfully until `composer network ping ...`, where it fails with: `Error: Error trying to ping. Error: Error trying to query business network. Error: error executing chaincode: transaction returned with failure: [14da41e5]Calling chaincode Invoke() returned error response [Error: The current identity, with the name 'admin' and the identifier 'db5ec7be37f48bb31bb1ca117e09609b79f090caebd510156f29528c5764ce8d', has not been registered]. Sending ERROR message back to peer
Command failed`. I then went back and realised that even though the response of `composer network start ...` was a success, the logs in dev-peer3.org1-test-network-0.17.0 have the following errors: https://pastebin.com/i4wwA5i4.
Did anyone encounter a similar problem?
I have followed the instructions in "Deploy to multi-org" successfully until `composer network ping ...`, where it fails with: ```Error: Error trying to ping. Error: Error trying to query business network. Error: error executing chaincode: transaction returned with failure: [14da41e5]Calling chaincode Invoke() returned error response [Error: The current identity, with the name 'admin' and the identifier 'db5ec7be37f48bb31bb1ca117e09609b79f090caebd510156f29528c5764ce8d', has not been registered]. Sending ERROR message back to peer
Command failed```. I then went back and realised that even though the response of `composer network start ...` was a success, the logs in dev-peer3.org1-test-network-0.17.0 have the following errors: https://pastebin.com/i4wwA5i4.
Did anyone encounter a similar problem?
I have followed the instructions in "Deploy to multi-org" successfully until `composer network ping ...`, where it fails with: ```Error: Error trying to ping. Error: Error trying to query business network. Error: error executing chaincode: transaction returned with failure: [14da41e5]Calling chaincode Invoke() returned error response [Error: The current identity, with the name 'admin' and the identifier 'db5ec7be37f48bb31bb1ca117e09609b79f090caebd510156f29528c5764ce8d', has not been registered]. Sending ERROR message back to peer
Command failed```
I then went back and realised that even though the response of `composer network start ...` was a success, the logs in dev-peer3.org1-test-network-0.17.0 have the following errors: https://pastebin.com/i4wwA5i4.
Did anyone encounter a similar problem?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=SC9dvkgGLaur4esF3) @SimonOberzan one question - have you (looking at the pastebin logs) - have you got ACLs that allow a NetworkAdmin to perform network operations deployed? Along with the usual questions for non-registration errors (if you've followed the tutorial and environment therein, this shouldn't be an issue).
when i write command
`composer identity request -c PeerAdmin@byfn-network-org1-only -u admin -s adminpw -d alice`
i get this error
`Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 140337610980224:error:1411713E:SSL routines:ssl_check_srvr_ecc_cert_and_alg:ecc cert not for signing:../deps/openssl/openssl/ssl/ssl_lib.c:2520:
140337610980224:error:14082130:SSL routines:ssl3_check_cert_and_algorithm:bad ecc cert:../deps/openssl/openssl/ssl/s3_clnt.c:3550:
]`
any one now why ?
when i write command
``` composer identity request -c PeerAdmin@byfn-network-org1-only -u admin -s adminpw -d alice`
i get this error
`Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 140337610980224:error:1411713E:SSL routines:ssl_check_srvr_ecc_cert_and_alg:ecc cert not for signing:../deps/openssl/openssl/ssl/ssl_lib.c:2520:
140337610980224:error:14082130:SSL routines:ssl3_check_cert_and_algorithm:bad ecc cert:../deps/openssl/openssl/ssl/s3_clnt.c:3550:
]```
any one now why ?
@mahoney1 As far as I know i have followed the tutorial, except I didn't specify a endorsment policy, and that I used some different names. I have started my network with test-network@0.17.0.bna which I generated according to the steps in Developer tutorial, so I guess it should be OK. Did I answer your questions? My commands were:
- composer card create -p ./connection-org1.yml -u PeerAdmin -c ../keyfiles/org1/users/Admin@org1/msp/signcerts/Admin@org1-cert.pem -k ../keyfiles/org1/users/Admin@org1/msp/keystore/4ca6cb997228a3c1bd1b40e3190f76b24fbfc235eb32e290848a5ce20e86f751_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@bc1st-org1.card
- composer card create -p ./connection-org2.yml -u PeerAdmin -c ../keyfiles/org2/users/Admin@org2/msp/signcerts/Admin@org2-cert.pem -k ../keyfiles/org2/users/Admin@org2/msp/keystore/732eb885413a04d593e66f2287c54a84efe1a8241c011ecabe57eb7da8559f06_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@bc1st-org2.card
- composer card import -f PeerAdmin@bc1st-org1.card -n PeerAdmin@bc1st-org1
- composer card import -f PeerAdmin@bc1st-org2.card -n PeerAdmin@bc1st-org2
- composer runtime install -c PeerAdmin@bc1st-org1 -n test-network
- composer runtime install -c PeerAdmin@bc1st-org2 -n test-network
- composer identity request -c PeerAdmin@bc1st-org1 -u admin -s adminpw -d user-org1
- composer identity request -c PeerAdmin@bc1st-org2 -u admin -s adminpw -d user-org2
- composer network start --card PeerAdmin@bc1st-org1 --archiveFile test-network@0.0.1.bna --networkAdmin user-org1 --networkAdminEnrollSecret user-org1/admin-pub.pem
@mahoney1 As far as I know i have followed the tutorial, except I didn't specify a endorsment policy, and that I used some different names. I have started my network with test-network@0.17.0.bna which I generated according to the steps in Developer tutorial, so I guess it should be OK. Did I answer your questions? My commands were:
- `composer card create -p ./connection-org1.yml -u PeerAdmin -c ../keyfiles/org1/users/Admin@org1/msp/signcerts/Admin@org1-cert.pem -k `../keyfiles/org1/users/Admin@org1/msp/keystore/4ca6cb997228a3c1bd1b40e3190f76b24fbfc235eb32e290848a5ce20e86f751_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@bc1st-org1.card
- composer card create -p ./connection-org2.yml -u PeerAdmin -c ../keyfiles/org2/users/Admin@org2/msp/signcerts/Admin@org2-cert.pem -k ../keyfiles/org2/users/Admin@org2/msp/keystore/732eb885413a04d593e66f2287c54a84efe1a8241c011ecabe57eb7da8559f06_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@bc1st-org2.card
- composer card import -f PeerAdmin@bc1st-org1.card -n PeerAdmin@bc1st-org1
- composer card import -f PeerAdmin@bc1st-org2.card -n PeerAdmin@bc1st-org2
- composer runtime install -c PeerAdmin@bc1st-org1 -n test-network
- composer runtime install -c PeerAdmin@bc1st-org2 -n test-network
- composer identity request -c PeerAdmin@bc1st-org1 -u admin -s adminpw -d user-org1
- composer identity request -c PeerAdmin@bc1st-org2 -u admin -s adminpw -d user-org2
- composer network start --card PeerAdmin@bc1st-org1 --archiveFile test-network@0.0.1.bna --networkAdmin user-org1 --networkAdminEnrollSecret user-org1/admin-pub.pem
@mahoney1 As far as I know i have followed the tutorial, except I didn't specify a endorsment policy, and that I used some different names. I have started my network with test-network@0.17.0.bna which I generated according to the steps in Developer tutorial, so I guess it should be OK. Did I answer your questions? My commands were:
- `composer card create -p ./connection-org1.yml -u PeerAdmin -c ../keyfiles/org1/users/Admin@org1/msp/signcerts/Admin@org1-cert.pem -k ../keyfiles/org1/users/Admin@org1/msp/keystore/4ca6cb997228a3c1bd1b40e3190f76b24fbfc235eb32e290848a5ce20e86f751_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@bc1st-org1.card`
- composer card create -p ./connection-org2.yml -u PeerAdmin -c ../keyfiles/org2/users/Admin@org2/msp/signcerts/Admin@org2-cert.pem -k ../keyfiles/org2/users/Admin@org2/msp/keystore/732eb885413a04d593e66f2287c54a84efe1a8241c011ecabe57eb7da8559f06_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@bc1st-org2.card
- composer card import -f PeerAdmin@bc1st-org1.card -n PeerAdmin@bc1st-org1
- composer card import -f PeerAdmin@bc1st-org2.card -n PeerAdmin@bc1st-org2
- composer runtime install -c PeerAdmin@bc1st-org1 -n test-network
- composer runtime install -c PeerAdmin@bc1st-org2 -n test-network
- composer identity request -c PeerAdmin@bc1st-org1 -u admin -s adminpw -d user-org1
- composer identity request -c PeerAdmin@bc1st-org2 -u admin -s adminpw -d user-org2
- composer network start --card PeerAdmin@bc1st-org1 --archiveFile test-network@0.0.1.bna --networkAdmin user-org1 --networkAdminEnrollSecret user-org1/admin-pub.pem
@mahoney1 As far as I know i have followed the tutorial, except I didn't specify a endorsment policy, and that I used some different names. I have started my network with test-network@0.17.0.bna which I generated according to the steps in Developer tutorial, so I guess it should be OK. Did I answer your questions? My commands were:
- `composer card create -p ./connection-org1.yml -u PeerAdmin -c ../keyfiles/org1/users/Admin@org1/msp/signcerts/Admin@org1-cert.pem -k ../keyfiles/org1/users/Admin@org1/msp/keystore/4ca6cb997228a3c1bd1b40e3190f76b24fbfc235eb32e290848a5ce20e86f751_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@bc1st-org1.card`
- `composer card create -p ./connection-org2.yml -u PeerAdmin -c ../keyfiles/org2/users/Admin@org2/msp/signcerts/Admin@org2-cert.pem -k ../keyfiles/org2/users/Admin@org2/msp/keystore/732eb885413a04d593e66f2287c54a84efe1a8241c011ecabe57eb7da8559f06_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@bc1st-org2.card`
- composer card import -f PeerAdmin@bc1st-org1.card -n PeerAdmin@bc1st-org1
- composer card import -f PeerAdmin@bc1st-org2.card -n PeerAdmin@bc1st-org2
- composer runtime install -c PeerAdmin@bc1st-org1 -n test-network
- composer runtime install -c PeerAdmin@bc1st-org2 -n test-network
- composer identity request -c PeerAdmin@bc1st-org1 -u admin -s adminpw -d user-org1
- composer identity request -c PeerAdmin@bc1st-org2 -u admin -s adminpw -d user-org2
- composer network start --card PeerAdmin@bc1st-org1 --archiveFile test-network@0.0.1.bna --networkAdmin user-org1 --networkAdminEnrollSecret user-org1/admin-pub.pem
@mahoney1 As far as I know i have followed the tutorial, except I didn't specify a endorsment policy, and that I used some different names. I have started my network with test-network@0.17.0.bna which I generated according to the steps in Developer tutorial, so I guess it should be OK. Did I answer your questions? My commands were:
- `composer card create -p ./connection-org1.yml -u PeerAdmin -c ../keyfiles/org1/users/Admin@org1/msp/signcerts/Admin@org1-cert.pem -k ../keyfiles/org1/users/Admin@org1/msp/keystore/4ca6cb997228a3c1bd1b40e3190f76b24fbfc235eb32e290848a5ce20e86f751_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@bc1st-org1.card`
- `composer card create -p ./connection-org2.yml -u PeerAdmin -c ../keyfiles/org2/users/Admin@org2/msp/signcerts/Admin@org2-cert.pem -k ../keyfiles/org2/users/Admin@org2/msp/keystore/732eb885413a04d593e66f2287c54a84efe1a8241c011ecabe57eb7da8559f06_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@bc1st-org2.card`
- `composer card import -f PeerAdmin@bc1st-org1.card -n PeerAdmin@bc1st-org1`
- `composer card import -f PeerAdmin@bc1st-org2.card -n PeerAdmin@bc1st-org2`
- `composer runtime install -c PeerAdmin@bc1st-org1 -n test-network`
- composer runtime install -c PeerAdmin@bc1st-org2 -n test-network
- composer identity request -c PeerAdmin@bc1st-org1 -u admin -s adminpw -d user-org1
- composer identity request -c PeerAdmin@bc1st-org2 -u admin -s adminpw -d user-org2
- composer network start --card PeerAdmin@bc1st-org1 --archiveFile test-network@0.0.1.bna --networkAdmin user-org1 --networkAdminEnrollSecret user-org1/admin-pub.pem
@mahoney1 As far as I know i have followed the tutorial, except I didn't specify a endorsment policy, and that I used some different names. I have started my network with test-network@0.17.0.bna which I generated according to the steps in Developer tutorial, so I guess it should be OK. Did I answer your questions? My commands were:
- `composer card create -p ./connection-org1.yml -u PeerAdmin -c ../keyfiles/org1/users/Admin@org1/msp/signcerts/Admin@org1-cert.pem -k ../keyfiles/org1/users/Admin@org1/msp/keystore/4ca6cb997228a3c1bd1b40e3190f76b24fbfc235eb32e290848a5ce20e86f751_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@bc1st-org1.card`
- `composer card create -p ./connection-org2.yml -u PeerAdmin -c ../keyfiles/org2/users/Admin@org2/msp/signcerts/Admin@org2-cert.pem -k ../keyfiles/org2/users/Admin@org2/msp/keystore/732eb885413a04d593e66f2287c54a84efe1a8241c011ecabe57eb7da8559f06_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@bc1st-org2.card`
- `composer card import -f PeerAdmin@bc1st-org1.card -n PeerAdmin@bc1st-org1`
- `composer card import -f PeerAdmin@bc1st-org2.card -n PeerAdmin@bc1st-org2`
- `composer runtime install -c PeerAdmin@bc1st-org1 -n test-network`
- `composer runtime install -c PeerAdmin@bc1st-org2 -n test-network`
- `composer identity request -c PeerAdmin@bc1st-org1 -u admin -s adminpw -d user-org1`
- `composer identity request -c PeerAdmin@bc1st-org2 -u admin -s adminpw -d user-org2`
- `composer network start --card PeerAdmin@bc1st-org1 --archiveFile test-network@0.0.1.bna --networkAdmin user-org1 --networkAdminEnrollSecret user-org1/admin-pub.pem`
@SimonOberzan your create command should have `-p connection-org1-only.json` not .`yml` ?
@SimonOberzan your create command should have `-p connection-org1-only.json` not .`yml` ? Same applies ofr subsequent command(s)
@SimonOberzan your create command should have `-p connection-org1-only.json` not .`yml` ? Same applies for subsequent command(s)
[ ](https://chat.hyperledger.org/channel/composer?msg=A94cBvmX3R3n7bS5k) @mahoney1 It works the same though? I inspected it and it seem just like it should be, it seem it is capable of reading bot json and yml?
Also no errors or anything
I have it that way, because Node SDK usually uses .yml file for the connection profile
[ ](https://chat.hyperledger.org/channel/composer?msg=5wekH7fjuRMaxPM3S) @nasserfci is your CA server up and running - did you use the github repo as specified in the tutorial's pre-requisites specifically ? https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
[ ](https://chat.hyperledger.org/channel/composer?msg=sGf3ShEYxm6nt59rq) @mahoney1 Yes i found the problem is on https for ca server when i change it to http it's work
[ ](https://chat.hyperledger.org/channel/composer?msg=dBFBWXKNZsfXdrr9Q) @SimonOberzan `connection.yaml` is supported FYI
@mahoney1 I alredy started converting.. This is kinda unfortunate as example projects for Node SDK use .yml connection profiles, and so the reusability ain't that great then. I guess it will be supported in the future, but for now I'll convert. Thank you for your help
Has joined the channel.
'Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err MSP Org1MSP is unknown'
now i am facing this error while ping , i don't know which problem belong to ?
`Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err MSP Org1MSP is unknown`
now i am facing this error while ping , i don't know which problem belong to ?
Hello - I'm just putting this question out there to see if anyone has encountered it before. I set up a persistent and secured REST server using Docker for a hyperledger composer business network as of this tutorial: https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
However when I try to carry out a ping on the RESTful API I get the following error:
`Error trying to ping. Error: Error trying to query business network. Error: Call dropped by load balancing policy`
I asked the question on StackOverflow (https://stackoverflow.com/questions/48285566/error-trying-to-ping-error-error-trying-to-query-business-network-error-call) but I'm still having difficulty finding out what the problem could be. I tried tearing down the network, reinstalling all the composer libraries and starting it up again...
Hello - I'm just putting this question out there to see if anyone has encountered it before. I set up a persistent and secured REST server using Docker for a hyperledger composer business network as of this tutorial: https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
However when I try to carry out a ping on the RESTful API I get the following error:
`Error trying to ping. Error: Error trying to query business network. Error: Call dropped by load balancing policy`
I asked the question on StackOverflow (https://stackoverflow.com/questions/48285566/error-trying-to-ping-error-error-trying-to-query-business-network-error-call) but I'm still having difficulty finding out what the problem could be. I tried tearing down the network, reinstalling all the composer libraries and starting it up again but I still got the same error.
Hello - I'm just putting this question out there to see if anyone has encountered it before. I set up a persistent and secured REST server using Docker for a hyperledger composer business network as of this tutorial: https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
However when I try to carry out a ping on the RESTful API I get the following error:
`Error trying to ping. Error: Error trying to query business network. Error: Call dropped by load balancing policy`
I asked the question on StackOverflow (https://stackoverflow.com/questions/48285566/error-trying-to-ping-error-error-trying-to-query-business-network-error-call) but I'm still having difficulty finding out what the problem could be. I tried tearing down the network, reinstalling all the composer libraries and starting it up again but I still got the same error.
We are using v 1.6.6 of gRPC so I think it might be a bug related to this issue: https://github.com/googleapis/gax-ruby/issues/96
@SimonOberzan connection.yaml files are supported in 0.17
@davidkel So you think that will not solve my problem? Do you have any idea what couses it then? BTW, thank you for yesterday's help, the problem was in the outdated core.yml file which did not include chaincode.node configs
[ ](https://chat.hyperledger.org/channel/composer?msg=KuauhHCX4NQJiES5g) @nasserfci this error could be the result of a problem to create the channel and join the peer to the channel when you set up your Fabric. If you followed the Hyperledger Composer tutorials and downloaded the Composer Dev hyperledger fabric development server it would create it ordinarily - but you must ensure you have a version of docker equal or greater to version 17.03 (as per our pre-requisites). (The channel will fail to be created on older versions of docker.) So you could check that for starters
@SimonOberzan the card create will allow for a `.yml` file. It assumes it's yaml if it doesn't end with `.json`. The problem could be because the `network start` command you listed earlier is wrong
`composer network start --card PeerAdmin@bc1st-org1 --archiveFile test-network@0.0.1.bna -A user-org1 -C user-org1/admin-pub.pem`
you tried to supply a pem file as a parameter to enrollmentSecret
Copied from the tutorial: `composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem`. Is there something I did differently?
@davidkel Copied from the tutorial: `composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem`. Is there something I did differently?
@davidkel Copied from the tutorial: `composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem`. I supplied it like it says in the tutorial, didn't I?
@davidkel Copied from the tutorial: `composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem`. I supplied it like it says in the tutorial, right?
Has joined the channel.
Using the Node SDK, how can I proceed to create a card for a participant after I issue an identity?
the last part of the [tutorial](https://hyperledger.github.io/composer/managing/identity-issue) seems to be lacking some information. The point was to connect to the network using the new identity, but the last example connects to the network using the same admin card
@lucasdf
Would something like this work?
composer transaction submit --card admin@my-network -d '{"$class":"org.acme.OurSetupDemo"}'
composer identity issue --card admin@my-network --file lessor.card --newUserId lessor --participantId 'resource:org.acme.Lessor#lessor@gmail.com'
composer card import lessor.card
composer network ping --card admin@my-network
Hi @simonmullaney , thanks for the example. That would work in the command-line. However, I am trying to do the same using the Node SDK, inside our test suite. I am using this method to issue the identity https://hyperledger.github.io/composer/jsdoc/module-composer-client.BusinessNetworkConnection.html#issueIdentity , which returns an userID and an userSecret. I am not sure how I can use this data to create the card.
sorry missed that
@lucasdf - this should help you https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L139 (from the sample networks) - the principle of connecting to the network with the card you created and being persisted to a File CardStore (as opposed to the in Memory CardStore example used in this test script) is the same.
while composer runtime install started getting error
ubuntu@ubuntu-xenial:~/fabric-tools$ composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName v9
✖ Installing runtime for business network v9. This may take a minute...
Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=AzKSQ8cPMT6doABA7) @SimonOberzan earlier you had pasted `--`composer network start --card PeerAdmin@bc1st-org1 --archiveFile test-network@0.0.1.bna --networkAdmin user-org1 --networkAdminEnrollSecret user-org1/admin-pub.pem` ie shortcut is -S flag. However, If supplying a certificate file (as per the tutorial example you pasted in your last post ) - then you would use `--networkAdminCertificateFile` (or shortcut is -C flag). hence @davidkel post
[ ](https://chat.hyperledger.org/channel/composer?msg=AzKSQ8cPMT6doABA7) @SimonOberzan earlier you had pasted `composer network start --card PeerAdmin@bc1st-org1 --archiveFile test-network@0.0.1.bna --networkAdmin user-org1 --networkAdminEnrollSecret user-org1/admin-pub.pem` ie shortcut is -S flag. However, If supplying a certificate file (as per the tutorial example you pasted in your last post ) - then you would use `--networkAdminCertificateFile` (or shortcut is -C flag). hence @davidkel post
[ ](https://chat.hyperledger.org/channel/composer?msg=DgLHgQSL2CKCESLiG) @mahoney1 awesome! thanks!
@mvaibhavshah looks like you are trying to use 0.17 with a business network card from 0.16, they aren't compatible.
@mvaibhavshah looks like you are trying to use 0.17 with a business network card from 0.16, they aren't compatible. Also as you are using 0.17 you should ensure you are targetting a fabric 1.1 environment. 0.17 won't work with a fabric 1.0 environment
[ ](https://chat.hyperledger.org/channel/composer?msg=3yu4rPLkDYmxpMFFJ) @davidkel : Thanks, got it.
Do we have any composer API to get the channel name on which the current transaction is executing?
Getting error while composer network start :-
ubuntu@ubuntu-xenial:~/fabric-samples/first-network$ composer network start -c PeerAdmin@byfn-network-org1 -a v11@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
Starting business network from archive: v11@0.0.1.bna
Business network definition:
Identifier: v11@0.0.1
Description: documentleg2 - Leg2 part 1
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (v11:0.16.3)-open /var/hyperledger/production/chaincodes/v11.0.16.3: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (v11:0.16.3)-open /var/hyperledger/production/chaincodes/v11.0.16.3: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (v11:0.16.3)-open /var/hyperledger/production/chaincodes/v11.0.16.3: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (v11:0.16.3)-open /var/hyperledger/production/chaincodes/v11.0.16.3: no such file or directory)
Command failed
Has joined the channel.
Hey guys, anyone here who can help me with an issue I am having with executing queries in transactions?
[ ](https://chat.hyperledger.org/channel/composer?msg=Z2vB2NdiScgBf6Les) @PhilipeLouchtch What issue are you facing?
I have a query as part of some validation logic in my transaction
However, I cannot get the Promise to resolve
And it is infeasable for me to rewrite the tx logic into promise chains
And it is infeasable for me to rewrite the tx logic into promise chains. EDIT: I've modified one codepath to use a Promise chain, but now the TX just hangs (and will probably time out soon)
Working with 'deploying to a single or HL Fabric' tutorial -- at Step Six it jumps off to deploy the business network "tutorial-network" created in the developer tutorial. *Question*: the developer tutorial at Step Four and the "deploying to a single HLF" at Step Seven appear to be the same. Is that correct? Trying to create a seamless doc for my team and need a clarification. Thanks in advance.
Has joined the channel.
Guys, I 've trying to have a blockchain based on composer model. But I 'm seeing a performance dip of 30-40% when using composer to deploy my blockchain vs directly deploying my chaincode and use native sdk to invoke the chaincode. Is that kind of performance penalty expected with composer?
How to write query to filter Identity by Participant for which it belongs?
what does emiting an event do in logic.js? is it necessary?
could someone help me with a small problem i am facing. So, i have an asset which is being created by a participant. It is a listing which needs to be approved by another participant. How do i get this done. How can another participant make updates to the listing. thanks
@mahoney1 Does keyword `assert` in already taken/reserved in HyperLedger Compose. After defining `assert` in logic.js, it doesn't fire it when called?
[ ](https://chat.hyperledger.org/channel/composer?msg=K9W8beaCsXv5FcmmX) @mvaibhavshah Check your composer version. It might have created with v0.16.0, so v0.16.3 seems to be unavailable and raised an error. Check again once. See your node version and the composer-cli version. teardown your network and start it again. Hope it helps :D
@davidkel @navdev1 @vkblue @wininani @tkuhrt : Thanks all...everything is working now can able to see REST APIs using composer-rest-server as well..
@mahoney1 @sstone1 How can I dynamically add an organization to my network. I am able to deploy a 3organization network on multiple host machines successfully. Now I wanted to add a fourth organization after the network has started and few transactions has been commited. How to do it?
@mahoney1 @sstone1 How can I dynamically add an organization to my network. I am able to deploy a 3organization network on multiple host machines successfully. Now I wanted to add a fourth organization after the network has started and few transactions has been commited. How to do it?
I am currently in Composer v16, Fabric 1.0.
Has joined the channel.
Has joined the channel.
Hello every one , I am trying to start the composer network using this command composer network start --card PeerAdmin@sample-network --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile sample-network@0.0.1.bna --file networkadmin.card but i get this error -- Error: Error trying to instantiate composer runtime. Error: No valid responses f rom any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (sample-n etwork:0.16.3)-open /var/hyperledger/production/chaincodes/sample-network.0.16.3 : no such file or directory)
Command failed
PFA the attached screenshot .. If anyone can please help
composer network start error.png
@Abhi119 You have your answer, just 2chat-steps back from your question. :)
@navdevl I have checked the versions ubuntu@ip-172-33-20-23:~/fabric-tools/hlf-network/conf/sample-network$ composer --version
v0.16.3
ubuntu@ip-172-33-20-23:~/fabric-tools/hlf-network/conf/sample-network$ node -v
v8.9.4
it was created with the correct version but still gets an error
@here If we create a new card using IdCard() API using https://hyperledger.github.io/composer/api/common-idcard.html
where this will be stored?
I am not getting them in default directory
Can anyone help?
@Aniket-Engg Stored in /fabric-scripts/hlfv1
@Abhi119 Try docker exec into peer and ls into the `var/hyperledger/production/chaincodes/` has the file.
you can access it using `composer card list`
[ ](https://chat.hyperledger.org/channel/composer?msg=f4Nyfb69Dcp9KFqKW) @Aniket-Engg It wont be stored anywhere. You need to manually export it as a file.
Hey @navdevl I'm issuing identities to a participant, where do these identity certiifcates get stored? Can't figure that out. Basically I know loopback enables users to have a wallet for identity document
But I want to store them on my own
[ ](https://chat.hyperledger.org/channel/composer?msg=MLuvT7MF8J9wXdEFZ) @varunagarwal It will be in the js varibale and you can extract and use it as you want. Check out is it done in cli https://github.com/hyperledger/composer/blob/master/packages/composer-cli/lib/cmds/identity/lib/issue.js
I got some info on it from https://hyperledger.github.io/composer/managing/identity-issue.html . But wondering how Loopback handles it. The learning curve of loopback seems too steep
Yeah
Better to write your own with Client API
Is that what you are doing?
Cause one issue I found is if I want to build a query using `js` and not in the `.qry` file, loopback can't offer that afaik
Yes, I wrote my own nodejs client
so If I have a `GET` request with `url-encoded` query parameters, based on which I make a dynamic query, idk how to handle it except to make my own end point , extract the query params and then process it
You can build dynamic query
on Loopback? Or js
cause on js I understood how to, it doesn't seem like any issue. Quite straightforward
NodeJS
Yep
I know Loopback is by IBM so :D
This might help you. https://www.skcript.com/svr/how-to-build-nodejs-application-for-your-hyperledger-composer-networks/
How did you handle identity for multiple participants? Are you issueing it and then storing it in your own persistent db like mongoDB? Thats my aim for now
No. You can generate it and send it out without store it anywhere
WHen they import the card you can get the participant ID and with that card name create dynamic hash for sessionID
1) User logs in to my app
2) Registers with a username, password and an OTP
3) Server issues an identity to the participant and stores it itself
4) User logs in, sends a transaction and the server has a mapping that figures out which identity to use
5) win-win
For various reasons the participant won't be able to store his own identity card
```
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
let businessNetworkConnection = new BusinessNetworkConnection();
return businessNetworkConnection.connect('admin@digitalPropertyNetwork')
.then(() => {
return businessNetworkConnection.issueIdentity('net.biz.digitalPropertyNetwork.Person#mae@biznet.org', 'maeid1')
})
.then((result) => {
console.log(`userID = ${result.userID}`);
console.log(`userSecret = ${result.userSecret}`);
return businessNetworkConnection.disconnect();
})
.catch((error) => {
console.error(error);
process.exit(1);
});
```
Once I type this, I can extract the userID and userSecret from js code, store this in mongoDB against the user's username
question is
Useid and Secret is not usually used in composer
Is this a good way to proceed
You need to use the cards to validate the user.
Which contains the actual certificates
This is the example given in composer docs for identity issueing, I will have one node that will have multiple participants that connect to it, each with their own identity. So the card will be the card the node uses to access the network
right?
Yes
You need to create a card after issuing the ID and use that card to ping the server once which get your the certificates, then export the card and save it in a file
Do you mean this? https://github.com/IBM/Decentralized-Energy-Composer/blob/master/test/test.js#L90-#L101
Yes, something like that\
Because this can also let me make a schema such as
```
{
username: String,
password: String,
identity: {
This schema is for?
woops,
```
{
username: String,
password: String,
identity: {
userID: String,
enrollmentSecret: String
}
store in mongoDB and then use the example to build a card everytime the user accesses it. That way I dont store the card on file, can share the db to multiple servers
and ofc use a `jwt` to handle sessions
But how will you connect to business network with userID and enrollmentSecret?
as in?
The application server that runs the node will need to use different identities for each transaction it processes on behalf on a participant. The actual business network connection to the network will use the standard card issued to an organization
This way I can have ACL for each organization and then have further acl within the same organization. Am I understanding this right?
Actually you need to create connection object with the card name, only with that connection object you'll submit transactions,
Thats how you'll differentiates the users
https://github.com/IBM/Decentralized-Energy-Composer/blob/master/test/test.js#L290-#L314
https://github.com/IBM/Decentralized-Energy-Composer/blob/master/test/test.js#L490-#L561
wont this do?
What exactly you're trying to achive?
Ok so Il explain my requirement.
1) Its in supply chain
2) Multiple producers, processors and exporters will be part of the system. They will be separate participants each with their own identity
3) Because of their small size, they will require an application server to handle identity management for them
4) This identity will be mapped vs a username , password issued to them (like any standard application)
5) When they create a new good, buy a good process a good, they issue transactions to the network
6) Each transaction must be done by an identity
7) ACL exist for each participant. ie. an exporter cant buy from a producer, he must buy only from a processor
You need to store username password with the card name
And import their cards to your machine, and then when user logins save the encrypted cardname in session and while making transaction decrypt, connect and then submit transaction
yes so the above two links will be enough to handle the requirement, right?
I'm not sure
My approach was little different where the cards where not stored and only with the user
He logins with card directly instead of username and password
how did you do it? Won't the cards need to send to the server for the business network connection to use it?
ya that can also be an option for us, but we will need to map session token to that
Yeah only when they need to use the network. Not all the time
ya so the user will send the card details as a body in the `POST` request?
yes
What if 2 users send a transaction at the same time?
The server will have to make 2 different business network connections
Yes.
so an api would need to instantiate a new connection, use it, and then disconnect it. Means it would be made as a constructor
Since the web applications are multi threaded the The connection object will be tied to that instance
well if its multi threaded, it will still need to make more for every concurrent requestfrom a different user
Yeah thats how every web application works
sounds good, thanks a lot
il start working on a small test environment and see how it plays out
Sure
[ ](https://chat.hyperledger.org/channel/composer?msg=q7Hyzkmumze7L7f49) @mahoney1 Thank you, I somehow I missed that..
[ ](https://chat.hyperledger.org/channel/composer?msg=q7Hyzkmumze7L7f49) @mahoney1 Thank you, it works now. Somehow I missed that..
[ ](https://chat.hyperledger.org/channel/composer?msg=gcpKT5tE34oygNxMa) @navdevl it worked :) now i am getting this error while pinging ubuntu@ip-172-33-20-23:~/fabric-tools/hlf-network/conf/sample-network$ composer network ping -c admin@sample-network
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 140537800685376:error:1411713E:SSL routines:ssl_check_srvr_ecc_cert_and_alg:ecc cert not for signing:../deps/openssl/openssl/ssl/ssl_lib.c:2520:
140537800685376:error:14082130:SSL routines:ssl3_check_cert_and_algorithm:bad ecc cert:../deps/openssl/openssl/ssl/s3_clnt.c:3550:
]
Command failed
@Abhi119 It seems like you have enabled TLS. Try disabling it if you are just trying to run a demo network. You can check the docker-compose.yml file and disable TLS. :)
[ ](https://chat.hyperledger.org/channel/composer?msg=BWhF4YNQ5B97k94Bj) @varun-raj @varunagarwal is it stored somewhere, as your statement looks contradictory.
[ ](https://chat.hyperledger.org/channel/composer?msg=LNNxmZd3TWftJXzis) @navdevl I am deploying two org in two different host machine . i guess i will need TLS
Then, yeah you need TLS in that case :)
[ ](https://chat.hyperledger.org/channel/composer?msg=HGoQ8w3e8CtxeRAYH) @navdevl any other suggestions ? i will try with disabling TLS but for now i would be needing it for tests
@Abhi119 I think this would be helpful. https://discourse.skcript.com/t/running-hyperledger-composer-with-multiple-organization-on-different-host-machines/635/2.
Have anyone of you deployed angular app generated by yoman generator in IBM Cloud ?
if yes, can you share the steps for performing the same ?
If someone is getting started with Fabric, do check this out https://www.skcript.com/svr/understanding-hyperledger-fabric-s-architecture/
Have anyone of you deployed angular app generated by yoman generator in IBM Cloud ?
if yes, can you share the steps for performing the same ?
Clipboard - January 18, 2018 5:52 PM
Has joined the channel.
Hello,
I'm trying to create my own crypto currency-'WhizCoin' in Hyperledger Composer Playground. I have created basic model and script files. 2 Participants- Sender and Receiver, and 1 Asset- Coins, and 1 Transaction- DistributeCoins.
Below is the stackoverflow link for detailed question and the code containing the errors. If anyone can help, it would be much appreciated.
https://stackoverflow.com/questions/48315952/hyperledger-composer-playground-execution-error
Thanks in advance!
Hello,
I'm trying to create my own crypto currency-'WhizCoin' in Hyperledger Composer Playground. I have created basic model and script files. 2 Participants- Sender and Receiver, and 1 Asset- Coins, and 1 Transaction- DistributeCoins.
And while submitting transaction, I'm getting error as - Error: Expected a Resource or Concept.
I'm really stuck and couldn't find any solution anywhere else.
Below is the stackoverflow link for detailed question and the code containing the errors. If anyone can help, it would be much appreciated.
https://stackoverflow.com/questions/48315952/hyperledger-composer-playground-execution-error
Thanks in advance!
how would i know a more detailed logs?
✖ Installing runtime for business network tutorial-network. This may take a minute...
Error: Error trying install composer runtime. Error: The Composer runtime failed to install on 1 or more peers
Hi.. i need a help. I'm creating an application in which there can be any number of persons and between each person amount can be transferred. And after transaction senders outstanding amount should be reduced and obviously receivers outstanding amount should be increased. I have created .cto file and logic.js but amount is increasing and decreasing. Both files are shown below..
Business Network Defintion:
namespace org.acme.sample
asset BankAsset identified by assetId {
o String assetId
--> MyBank owner
--> MyBank prevOwner
o Double value
}
participant MyBank identified by participantId {
o String participantId
o String bankName
o Double amountOutstanding
}
transaction BankTransaction {
--> BankAsset asset
--> MyBank newOwner
--> MyBank oldOwner
}
Logic.js:
/**
* transfer money to another bank
* @param {org.acme.sample.BankTransaction} tx The transaction instance.
* @transaction
*/
function sendMoney(tx) {
// changing the asset owner
tx.asset.owner = tx.newOwner;
tx.asset.prevOwner = tx.oldOwner;
// Change amounts of banks
tx.asset.owner.amountOutstanding = tx.asset.owner.amountOutstanding + tx.asset.value;
tx.asset.prevOwner.amountOutstanding = tx.asset.prevOwner.amountOutstanding - tx.asset.value;
// Get the asset registry for the asset.
return getAssetRegistry('org.acme.sample.BankAsset')
.then(function (assetRegistry) {
// Update the asset in the asset registry.
return assetRegistry.update(tx.asset);
});
}
Whats the problem in this code?? please help...
@rahulkannur From my understanding of the code above you aren't updating the partcipants you are acting on only the asset. You need to get the participant registry and perform an update for the participant at tx.asset.prevOwner and tx.asset.owner.
@awjh can you please show me how it can be done
?
@rahulkannur The way to do it is similar to how you update the asset, get the participant registry and then call update on tx.asset.prevOwner and tx.asset.owner. Here is a way of doing it:
function sendMoney(tx) {
// changing the asset owner
tx.asset.owner = tx.newOwner;
tx.asset.prevOwner = tx.oldOwner;
// Change amounts of banks
tx.asset.owner.amountOutstanding = tx.asset.owner.amountOutstanding + tx.asset.value;
tx.asset.prevOwner.amountOutstanding = tx.asset.prevOwner.amountOutstanding - tx.asset.value;
// Get the asset registry for the asset.
return getAssetRegistry('org.acme.sample.BankAsset')
.then(function (assetRegistry) {
// Update the asset in the asset registry.
return assetRegistry.update(tx.asset);
})
.then(function() {
return getParticipantRegistry('org.acme.sample.MyBank')
})
.then(function (bankRegistry) {
return bankRegistry.update(tx.asset.prevOwner)
.then(function () {
return bankRegistry.update(tx.asset.owner);
});
})
}
You don't necessarily have to store the prevOwner in the asset for this purpose as it could also be performed on the values passed in as part of the transaction for the participant
[ ](https://chat.hyperledger.org/channel/composer?msg=6bcRLjsL9rMTdBaYn) @wininani - please can you ask this question in the #fabric channel
[ ](https://chat.hyperledger.org/channel/composer?msg=bJPtYtyuAusv62PE9) @rhansharief - you could look at the logs of the docker containers
[ ](https://chat.hyperledger.org/channel/composer?msg=djX3srFRhyKpgT7zj) @rthatcher i mean the composer runtime logs?
[ ](https://chat.hyperledger.org/channel/composer?msg=djX3srFRhyKpgT7zj) @rthatcher anyway, i resolved my previous error. do you have any idea about this error?
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 139748722722624:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:../deps/openssl/openssl/ssl/s23_clnt.c:797:
]
i get the error when im creating identities
now im getting this error
Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 139998271334208:error:140770
Anyone from IBM here?
https://hyperledger.github.io/composer/managing/participant-add.html
Under `Procedure` -> Add the participant to a participant registry
let factory = businessNetworkConnection.getFactory();
should be
let factory = businessNetworkConnection.getBusinessNetwork().getFactory();
Reposting this question.... Do we have any composer API to get the channel name on which the current transaction is executing?
i think there is a typo in the docs as mentioned above
is the composer identity request command still valid?
[ ](https://chat.hyperledger.org/channel/composer?msg=CdArno9rMsGhTmm9q) @varunagarwal thanks for letting the Composer team know - will get it fixed.
[ ](https://chat.hyperledger.org/channel/composer?msg=qdDGbkZBup42oe6vi) @vkblue we don't have one presently.
@ [ ](https://chat.hyperledger.org/channel/composer?msg=3EG4QrbRN9ux5EfbA) @mahoney1 Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=kcxxZp2oLuu8ApnSz) @rhansharief yes, its used in this multi-org tutorial for example -> https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
so in businessNetworkConnection, I can issue , bind and revoke an identity. Is it possible to delete one all together?
[ ](https://chat.hyperledger.org/channel/composer?msg=xn4s2jb5TrGYTQ6wD) @mahoney1 i cant make this command work composer identity request -c PeerAdmin@byfn-network-org1-only -u admin -s adminpw -d alice
[ ](https://chat.hyperledger.org/channel/composer?msg=xn4s2jb5TrGYTQ6wD) @mahoney1 i cant make this command work composer identity request -c PeerAdmin@byfn-network-org1-only -u admin -s adminpw -d alice and i can't find any resources about it. i can't find it here https://hyperledger.github.io/composer/reference/commands.html
fyi @here - the Community call today (Thurs) is at 5pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-17th-January-2018 best regards Paul
[ ](https://chat.hyperledger.org/channel/composer?msg=u7Et2DZZNuzdD4FNL) @navdevl I have updated all the docker-compose.yaml file but still getting this error while pinging the network Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
Command failed
finally worked. my mistake was that my ca server is not configured for tls. my apologies
Hey guys, I am getting the following error when pinging my network:
```
Hey guys, I am getting the following error when pinging my network:
```
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 139720483138376:error:1411713E:SSL routines:ssl_check_srvr_ecc_cert_and_alg:ecc cert not for signing:../deps/openssl/openssl/ssl/ssl_lib.c:2520:
139720483138376:error:14082130:SSL routines:ssl3_check_cert_and_algorithm:bad ecc cert:../deps/openssl/openssl/ssl/s3_clnt.c:3550:
```
The log from the ca server shows an handshake error. Any ideas? It seems that I am not using the correct .crt file?
Hey guys, I am getting the following error when pinging my network:
```
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 139720483138376:error:1411713E:SSL routines:ssl_check_srvr_ecc_cert_and_alg:ecc cert not for signing:../deps/openssl/openssl/ssl/ssl_lib.c:2520:
139720483138376:error:14082130:SSL routines:ssl3_check_cert_and_algorithm:bad ecc cert:../deps/openssl/openssl/ssl/s3_clnt.c:3550:
```
The log from the ca server shows an handshake error. Any ideas? It seems that I am not using the correct .crt file, but I can't see why. The cert seems to be ok.
Transaction-Time.png
Transaction-Time.png
Transaction-Time.png
Transaction-Time.png
Transaction-Time.png
Has joined the channel.
when "composer-rest-server" ,I get "Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/home/crj/node-v8.4.0-linux-x64/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/home/crj/node-v8.4.0-linux-x64/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node' " ,the solution is to "cd /home/crj/node-v8.4.0-linux-x64/lib/node_modules/composer-rest-server " ,then "npm install grpc@1.6.6"
[ ](https://chat.hyperledger.org/channel/composer?msg=nwXgeAt7TWsowi4qx) @crj Check if you installed the node modules properly. That should be causing this issue.
Hi, guys
Is there any article or forum about how to add new peer to existing network, except this one https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org ?
[ ](https://chat.hyperledger.org/channel/composer?msg=xpipCQLvpLsyat2bx) @Abhi119 Can you check the logs of your peers. That error log would be helpful.
[ ](https://chat.hyperledger.org/channel/composer?msg=NadwsQEGATN2zHPYT) @pichayuthk Currently there is one for adding a new org but not for new peer
[ ](https://chat.hyperledger.org/channel/composer?msg=ooATfqA8iqr8MsRs3) @awjh Thanx friend... :relaxed: That helped a lot.. :relaxed:
[ ](https://chat.hyperledger.org/channel/composer?msg=6XhJyrJozaR4qTYQv) @lucasdf This is related to TLS, if you've enabled TLS in peers and CA, make sure you mentioned the certificates in the connection profile
Has joined the channel.
composer network ping -c bob@tutorial-network
Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
Command failed
any ideas guys?
@varun-raj I mean new companies wanna join an existing network, and I have to deploy new ledger for them
[ ](https://chat.hyperledger.org/channel/composer?msg=vRkCHGk9mH428itFs) @pichayuthk you need to add a new org to your fabric network
@rhansharief I understand that we have to define how many org we have in the configtx.yaml along with some config in crypto-config.yaml and connection.json to locate the ip and port.
but if i want to add new org, does it mean that i have to re-config those files ?, I am confused
btw, I have never tried multi-org on multi server, only try the official tutorial in the website (local machine with multi-org)
Thank you
Has joined the channel.
Has joined the channel.
@navdevl while checking logs i found this warning 2018-01-19 08:15:34.135 UTC [nodeCmd] createChaincodeServer -> WARN 001 peer.chaincodeListenAddress is not set, use peer.listenAddress 0.0.0.0:7051
@navdevl while checking logs for cli container i found this warning 2018-01-19 08:15:34.135 UTC [nodeCmd] createChaincodeServer -> WARN 001 peer.chaincodeListenAddress is not set, use peer.listenAddress 0.0.0.0:7051
@navdevl while checking logs for cli container i found this warning 2018-01-19 08:15:34.135 UTC [nodeCmd] createChaincodeServer -> WARN 001 peer.chaincodeListenAddress is not set, use peer.listenAddress 0.0.0.0:7051 .
and for peers i got 2018-01-19 09:17:16.932 UTC [ledgermgmt] initialize -> INFO 002 Initializing ledger mgmt
2018-01-19 09:17:16.932 UTC [kvledger] NewProvider -> INFO 003 Initializing ledger provider
2018-01-19 09:17:16.933 UTC [kvledger.util] CreateDirIfMissing -> DEBU 004 CreateDirIfMissing [/var/hyperledger/production/ledgersData/ledgerProvider/]
2018-01-19 09:17:16.933 UTC [kvledger.util] logDirStatus -> DEBU 005 Before creating dir - [/var/hyperledger/production/ledgersData/ledgerProvider/] exists
2018-01-19 09:17:16.933 UTC [kvledger.util] logDirStatus -> DEBU 006 After creating dir - [/var/hyperledger/production/ledgersData/ledgerProvider/] exists
panic: Error while trying to open DB: resource temporarily unavailable
goroutine 1 [running]:
panic(0xc70020, 0xc42034fc20)
/opt/go/src/runtime/panic.go:500 +0x1a1
github.com/hyperledger/fabric/common/ledger/util/leveldbhelper.(*DB).Open(0xc420342b80)
/opt/gopath/src/github.com/hyperledger/fabric/common/ledger/util/leveldbhelper/leveldb_helper.go:88 +0x237
github.com/hyperledger/fabric/core/ledger/kvledger.openIDStore(0xc420342b40, 0x36, 0x1)
/opt/gopath/src/github.com/hyperledger/fabric/core/ledger/kvledger/kv_ledger_provider.go:267 +0x16f
github.com/hyperledger/fabric/core/ledger/kvledger.NewProvider(0xcb7d20, 0x0, 0xc4203526c0, 0x0)
/opt/gopath/src/github.com/hyperledger/fabric/core/ledger/kvledger/kv_ledger_provider.go:67 +0xf7
github.com/hyperledger/fabric/core/ledger/ledgermgmt.initialize()
/opt/gopath/src/github.com/hyperledger/fabric/core/ledger/ledgermgmt/ledger_mgmt.go:59 +0x14e
github.com/hyperledger/fabric/core/ledger/ledgermgmt.Initialize.func1()
/opt/gopath/src/github.com/hyperledger/fabric/core/ledger/ledgermgmt/ledger_mgmt.go:49 +0x14
sync.(*Once).Do(0x145adf0, 0xe3f380)
/opt/go/src/sync/once.go:44 +0xdb
github.com/hyperledger/fabric/core/ledger/ledgermgmt.Initialize()
/opt/gopath/src/github.com/hyperledger/fabric/core/ledger/ledgermgmt/ledger_mgmt.go:50 +0x39
github.com/hyperledger/fabric/peer/node.serve(0xc42034ec00, 0x0, 0x1, 0x0, 0x0)
/opt/gopath/src/github.com/hyperledger/fabric/peer/node/start.go:88 +0x113
github.com/hyperledger/fabric/peer/node.glob..func1(0x14016e0, 0xc42034ec00, 0x0, 0x1, 0x0, 0x0)
/opt/gopath/src/github.com/hyperledger/fabric/peer/node/start.go:75 +0x3f
github.com/hyperledger/fabric/vendor/github.com/spf13/cobra.(*Command).execute(0x14016e0, 0xc42034ebe0, 0x1, 0x1, 0x14016e0, 0xc42034ebe0)
/opt/gopath/src/github.com/hyperledger/fabric/vendor/github.com/spf13/cobra/command.go:599 +0x234
github.com/hyperledger/fabric/vendor/github.com/spf13/cobra.(*Command).ExecuteC(0x1401d40, 0xf, 0xc42000e075, 0x6)
/opt/gopath/src/github.com/hyperledger/fabric/vendor/github.com/spf13/cobra/command.go:689 +0x367
github.com/hyperledger/fabric/vendor/github.com/spf13/cobra.(*Command).Execute(0x1401d40, 0x1b, 0xc42000e075)
/opt/gopath/src/github.com/hyperledger/fabric/vendor/github.com/spf13/cobra/command.go:648 +0x2b
main.main()
/opt/gopath/src/github.com/hyperledger/fabric/peer/main.go:118 +0x54e
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=vRkCHGk9mH428itFs) @pichayuthk https://www.ibm.com/developerworks/cloud/library/cl-add-an-organization-to-your-hyperledger-fabric-blockchain/index.html
[ ](https://chat.hyperledger.org/channel/composer?msg=BPvqAFNQkg8MJb4fh) @varun-raj @pichayuthk - there is also this document from the Fabric Team about extending the 'First Network' sample. http://hyperledger-fabric.readthedocs.io/en/latest/channel_update.html - have you tried asking in the #fabric channel - it is more of a Fabric question than Composer.
i have installed hyperledger runtime install on hyperledger fabric peer using composer runtime install -c cardname -c busienessnetwrok-name Can anyone tell how to remove it
[ ](https://chat.hyperledger.org/channel/composer?msg=NHt7BSj7WfjT5wz8s) @Abhi119 - the error you were seeing from the ping was a connect problem on port 7054 which is typically the CA server not a peer. So checking the log of that might be helpful (assuming it is up and running OK?). What card are you using to try and ping? How was it created? Are you following a particular tutorial?
Team, We are using Hyper ledger Composer 0.16.0 with Fabric 1.0 , Required one clarity around Queries. Can we have below query against couchdb for example Select Count(org.demo.Asset1) ? Basically wants to understand if count function will work with select statement .
if we can get the count , what is correct way to use sum or count function with select statement.
[ ](https://chat.hyperledger.org/channel/composer?msg=Siy3xYidB9JM8Zf9P) @prabvi01 runtime is installed in a filesystem on the peer docker container .Composer supports network undeploy. All it will do is make the associated business network unavailable.
[ ](https://chat.hyperledger.org/channel/composer?msg=vADc4G3jSW5yWuABi) @mahoney1 @rthatcher Can you please advice me on this?
[ ](https://chat.hyperledger.org/channel/composer?msg=yEx7uWAKbQG7oJmzw) @kapilaArora hi, not yet - it is raised as an issue to add aggregate expressions -> https://github.com/hyperledger/composer/issues/2052
Clipboard - January 19, 2018 3:47 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=2tz3dZ3vDfnyD6g7W) @pichayuthk the network topology defined in configtx is the initial topology of your fabric network.. if you want to add new org, there's another process for that. I'll try to look for the documentation for this and send it to you. I'm not a contributor btw
[ ](https://chat.hyperledger.org/channel/composer?msg=d38KDbgPhxm5GpCrw) @mahoney1 @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=APk6iA47e58jqiPRd) @AkshayJindal the timestamp represents when a transaction is submitted, not committed.When you submit a transaction, the peer generates a read and write set. This read/write set is then used when the transaction is committed to the ledger. I would check the Fabric docs/resources, for a one peer setup I would have opine that it is high but I would be surprise at the time difference between your first timestamp and then the submit timestamp (its not committed at that stage).
[ ](https://chat.hyperledger.org/channel/composer?msg=APk6iA47e58jqiPRd) @AkshayJindal the timestamp represents when a transaction is submitted, not committed.When you submit a transaction, the peer generates a read and write set. This read/write set is then used when the transaction is committed to the ledger. I would check the Fabric docs/resources, for a one peer setup I would opine that it is high but I would be surprised at the time difference between your first timestamp and then the submit timestamp (its not committed at that stage).
[ ](https://chat.hyperledger.org/channel/composer?msg=APk6iA47e58jqiPRd) @AkshayJindal the timestamp represents when a transaction is submitted, not committed.When you submit a transaction, the peer generates a read and write set. This read/write set is then used when the transaction is committed to the ledger. I would check the Fabric docs/resources, for a one peer setup I would opine that it looks high, as an initial impression, but I am also surprised at the time difference between your first timestamp you generate and then the submit timestamp (its not committed at that stage).
[ ](https://chat.hyperledger.org/channel/composer?msg=A2M7EehGR4svNSqEe) @rthatcher Hi I cant see ant container for CA . I have used fabric to join two peers of two different host machines in a single channel and later i have used composer to create and deploy the BNA file.
[ ](https://chat.hyperledger.org/channel/composer?msg=A2M7EehGR4svNSqEe) @rthatcher Hi I cant see ant container for CA . I have used fabric to join two peers of two different host machines in a single channel and later i have used composer to create and deploy the BNA file. This is my connection.json file created by fabric : ----> {
"type": "hlfv1",
"orderers": [
{
"url" : "grpcs://orderer.gov.uk:7050",
"cert" : "-----BEGIN CERTIFICATE-----\\n-----END CERTIFICATE-----\n"
}
],
"ca": { "url": "https://172.33.20.23:7054",
"name": "ca-police"
},
"peers": [
{
"requestURL": "grpcs://peer0.police.gov.uk:7051",
"eventURL": "grpcs://peer0.police.gov.uk:7053",
"cert" : "-----BEGIN CERTIFICATE-----\\n-----END CERTIFICATE-----\n"
}
],
"keyValStore": "/home/ubuntu/.composer-credentials",
"channel": "gardachannel",
"mspID": "Police",
"timeout": "1000"
}
[ ](https://chat.hyperledger.org/channel/composer?msg=A2M7EehGR4svNSqEe) @rthatcher Hi I cant see ant container for CA . I have used fabric to join two peers of two different host machines in a single channel and later i have used composer to create and deploy the BNA file. This is my connection.json file created by fabric : ----> {
"type": "hlfv1",
"orderers": [
{
"url" : "grpcs://orderer.gov.uk:7050",
"cert" : "-----BEGIN CERTIFICATE-----\\n-----END CERTIFICATE-----\n"
}
],
"ca": { "url": "https://172.33.20.23:7054",
"name": "ca-police"
},
"peers": [
{
"requestURL": "grpcs://peer0.police.gov.uk:7051",
"eventURL": "grpcs://peer0.police.gov.uk:7053",
"cert" : "-----BEGIN CERTIFICATE-----\\n-----END CERTIFICATE-----\n"
}
],
"keyValStore": "/home/ubuntu/.composer-credentials",
"channel": "gardachannel",
"mspID": "Police",
"timeout": "1000"
}
can you please verify if it is in the correct format?
docker.png
[ ](https://chat.hyperledger.org/channel/composer?msg=Amd6grT3PNbaesZaR) @mahoney1 How can I see the timestamp when my transaction is committed? I am not sure how there is delay of 5-6 seconds when transaction is submitted via node-red (timestamp captured) and when the transaction is actully submitted within blockchain (when peers generate read-write set).
[ ](https://chat.hyperledger.org/channel/composer?msg=FXarTWEatkR3fRDQ4) @wininani from looking at screenshot (all I can go on) you are possibly using an old PeerAdmin credentials (and your CA doesn't recognise ) or you have recently added peer(s) to your custom Fabric configuration on a multi-peer setup..
@Abhi119 - you refer to a CA in your connection - is it running? perhaps on a different machine ?
@varun-raj @rthatcher Thank you, but it it not the same the process of adding new organization in fabric and composer ?
@varun-raj @rthatcher Thank you, but is it not the same the process of adding new organization in fabric and composer ?
@AkshayJindal you could have a look at the Fabric REST APIs to see if you get the info you want -> https://github.com/hyperledger/fabric-sdk-rest
@rhansharief thank you, I have tried to figure out how to do it but still confusing
[ ](https://chat.hyperledger.org/channel/composer?msg=pZKypkqQSqLEuWyBb) @rthatcher I guess its not running CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
18eedf57bad9 hyperledger/fabric-tools "/bin/bash" 2 hours ago Up 2 hours cli
d751f3931ab9 hyperledger/fabric-peer "/bin/bash -c 'cat /…" 2 hours ago Up 2 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.defence.gov.uk
f959b4c9009c hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-ent…" 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
this are the containers in the different machine
[ ](https://chat.hyperledger.org/channel/composer?msg=rgnc4b8hwrpDoP35Z) @pichayuthk - Composer requires Fabric, and from a Composer perspective we assume that the Fabric is configured and started correctly. There is obviously a blurred line and overlap, but we focus on Composer specific issues here, and #fabric deals with Fabric issues.
@rthatcher got it, my project have to use composer and i am still trying to figure it out
couldnt emit event when throw Error is done. is there any way
@rthatcher CA container is not running confirmed.
[ ](https://chat.hyperledger.org/channel/composer?msg=jc7AazGSZ7wbW6jn5) @mahoney1 yes i newly added a peer so that im getting this error .what to do now to solve and also for old peer iam getting an error while starting business network .how to do transaction for newly added peers
[ ](https://chat.hyperledger.org/channel/composer?msg=jc7AazGSZ7wbW6jn5) @mahoney1 yes i newly added a peer so that im getting this error
[ ](https://chat.hyperledger.org/channel/composer?msg=EuFWYZBfAqCNZXRzN) @mahoney1 Thanks
Hey guys, I am getting this error when trying to run this tutorial https://hyperledger.github.io/composer/integrating/deploying-the-rest-server
at docker logs -f rest
Server running fine when I give composer-rest-server command, anyone having an idea how to solve this:
0|composer | WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
0|composer | WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
0|composer | Discovering types from business network definition ...
0|composer | Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT
0|composer | It will be retried for the next request.
0|composer | Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT
0|composer | at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)
0|composer | at
[ ](https://chat.hyperledger.org/channel/composer?msg=Zcv3GCMhH9HwZsbnw) @Abhi119 - Did you ever start it? Is it in your docker-compose file? If it has stopped you can still look at the log for it. Try `docker ps -a` to find all containers whether started or stopped.
[ ](https://chat.hyperledger.org/channel/composer?msg=DDQQGN58k9j2jiDop) @rthatcher Yes i have added this command in docker-compose file command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.police.gov.uk-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/_sk -b admin:adminpw -d'
@rthatcher it shows exited hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-se…" 5 minutes ago Exited (1) 5 minutes ago
@rthatcher $ docker exec -it ca.police.gov.uk bash
Error response from daemon: Container f1a0a883d983ed7ffed60786c175d526313f575bbacd31d1637c0c9a4b1093a9 is not running
@wininani would check the Fabric docs if you're going to extend the 'First Network' BYFN sample - have you tried asking in the #fabric channel - it is more of a Fabric question than Composer. - once you've validated your Fabric environment is working ok, you can configure Composer to connect to it with connection profile metadata. Also this doc posted by someone on this channel can help you understand / assist with your reconfiguration https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602
[ ](https://chat.hyperledger.org/channel/composer?msg=eqGbqQohFLvg2xRLo) @mahoney1 ho thanks for your reply and i followed the same tutorial and completed the tutorial successfully.the problem is after the multi peer when i start composer then iam getting the error
@ra_w its likely you're seeing this https://github.com/hyperledger/composer/issues/3002- see solution at bottom regarding ip 0.0.0.0 - also check your Node version is a supported version as shown here https://hyperledger.github.io/composer/installing/installing-prereqs.html
Screenshot from 2018-01-19 16-20-42.png
Screenshot from 2018-01-19 16-20-42.png
Any one please help me.
@sravs - its likely you're seeing that Fabric error because your peer doesn't know how to contact the Orderer `orderer.example.com` -resolution comes to mind and especially as you're doing it on multiple machines and I'd wager this peer is on 'the other side' - this Fabric error highlights this problem - https://stackoverflow.com/questions/44775844/error-starting-up-a-network-nodes-in-different-vm-failed-connecting-to-ordere . The thing is, you can trying deploying a sample **Fabric** chaincode sample like Marbles (which you can google) and see that it works to validate your Fabric environment- once it does, then you know it will work with Composer (as Composer interfaces to the running Fabric, nodes and channel via its connection profiles) , So resolution, as mentioned and ultimately, once your Fabric multi-machine environment is validated - its a matter of ensuring your Composer connection profile info is configured correctly (so as to be able to go on and instantiate aComposer business network etc on the channel configured between the Orgs on multiple machines).
@rthatcher I did start the container again but again it get stopped
ca container stopped.png
@mahoney1 Thank you:slight_smile: I will try with fabric marbles example
I've updated my composer vagrant setup to handle latest/next/etc. versions better. There's only a basic readme at the moment so may only be of interest for people familiar with vagrant already but that's something I can fix if there's enough interest. Any feedback would be most appreciated if you'd like to give it a try -> https://github.com/jt-nti/composer-devenv
Hi, can i have an event listener on a specific transaction ? And can my event send me more data than just what newEvent gives ?
[ ](https://chat.hyperledger.org/channel/composer?msg=f9JvrJFsqyHNCz4Nq) @Abhi119 - There is obviousyl something seriously wrong with your Fabric setup.
The Composer Development Tutorial directs the user to create a Development Fabric using 'fabric-tools'. This creates a simple Development Fabric of 4 Docker Containers: Peer, Orderer, CA and CouchDb. This Fabric is created with standard crypto material and standard Admin users in the CA. The Development Fabric enables Developers to quickly deploy a Real Fabric, and then move on to work on the Business Model and Developing applications.
The fabric-tools hide much of the complexity of designing and deploying a Fabric, *and the step from simple pre-configured Development Fabric to self build Fabric (single or multi-org) is a big one.* Architects designing and building a multi-org Fabric will need to be familiar with **Docker in a Multi-host environment, networking (routing and DNS), and of course HyperLedger Fabric itself.** (https://hyperledger-fabric.readthedocs.io/en/latest/) These topics are beyond the scope of this Channel.
Can I suggest you look at the Fabric tutorials and experiment with base Fabric to get a good grounding in Fabric.
http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html
[ ](https://chat.hyperledger.org/channel/composer?msg=pGG5vvmJFHbp5CYwm) @jon_s Not really. Discussed here : https://hyperledger.github.io/composer/reference/js_scripts.html, section "Error handling in transaction processor functions" . So this
```
return function()
.then(function(){})
.catch(function(err){
emit(someevent);
throw err;
})
``` would not work (in your use case, where an error is thrown). While you can issue an 'emit' at any point in your transaction logic, that event will not actually be emitted until the transaction is committed. However,if an error is thrown the transaction is rolled back - changes made by transactions are atomic, either the transaction is successful as a whole and all changes are applied, or the transaction fails and no changes are applied.
[ ](https://chat.hyperledger.org/channel/composer?msg=pGG5vvmJFHbp5CYwm) @jon_s Not really. Discussed here : https://hyperledger.github.io/composer/reference/js_scripts.html, section "Error handling in transaction processor functions" . So this
```
return function()
.then(function(){})
.catch(function(err){
emit(someevent);
throw err;
})
``` would not work. While you can issue an 'emit' at any point in your transaction logic, that event will not actually be emitted until the transaction is committed. However, throwing the error makes the transaction roll back - changes made by transactions are atomic, either the transaction is successful as a whole and all changes are applied, or the transaction fails and no changes are applied.
[ ](https://chat.hyperledger.org/channel/composer?msg=pGG5vvmJFHbp5CYwm) @jon_s Not really. Discussed here : https://hyperledger.github.io/composer/reference/js_scripts.html, section "Error handling in transaction processor functions" . So this
```
return function()
.then(function(){})
.catch(function(err){
emit(someevent);
throw err;
})
``` would not work. While you can issue an 'emit' at any point in your transaction logic, that event will not actually be emitted until the transaction is committed. However,if an error is thrown the transaction is rolled back - changes made by transactions are atomic, either the transaction is successful as a whole and all changes are applied, or the transaction fails and no changes are applied.
[ ](https://chat.hyperledger.org/channel/composer?msg=LksBrD2ZW8vaH4hjk) @mahoney1 would it possible to use `hyperledger explorer` over my BNA to see blocks and then can verify the timestamp of commited block containing my transaction using transaction id?
[ ](https://chat.hyperledger.org/channel/composer?msg=fM9HRxDAZLvKeAo9C) @matrisis Yes in effect. Events are defined (by you) in the model file of a business network definition, and are emitted from your chosen transaction in the transaction processor functions file. The event emitted is in the event registry `namespace.EventClassName` so you can query events by TransactionId if that's what you mean by a 'specific' transaction. See https://stackoverflow.com/questions/44224833/how-listen-for-events-in-hyperledger-fabric-composer and model sample here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/models/sample.cto
[ ](https://chat.hyperledger.org/channel/composer?msg=fM9HRxDAZLvKeAo9C) @matrisis Yes in effect. Events are defined (by you) in the model file of a business network definition, and are emitted from your chosen transaction in the transaction processor functions file. The event emitted is in the event registry `namespace.EventClassName` so you can query events by TransactionId if that's what you mean by a 'specific' transaction. See also https://stackoverflow.com/questions/44224833/how-listen-for-events-in-hyperledger-fabric-composer and model sample here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/models/sample.cto for further info
[ ](https://chat.hyperledger.org/channel/composer?msg=6Tgd8bDtZG9oFv4Ff) @AkshayJindal see this thread https://chat.hyperledger.org/channel/blockchain-explorer?msg=C7sgr296depdpAdue on #blockchain-explorer and susequent posts in that view. Its really something to ask on that channel.
how do i get the exact chain code error, when an error is thrown during transaction execution. We currently get something like: ```Error: Error trying invoke business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: Error: Transaction failed with message: Transaction failed)```
how do i get the exact chain code error, when an error is thrown during transaction execution? We currently get something like: ```Error: Error trying invoke business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: Error: Transaction failed with message: Transaction failed)```
It does not even have the structured error object that was thrown in the transaction function
Our clients need to handle errors by error code (our custom error code)
Hi! Is there an option that enable endorsement policy update on composer cli?
Is it possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=Zsh6tugMuPopqWowm) @gen_el check the chaincode container logs `docker logs {container_name} 2>cclogs.txt`
[ ](https://chat.hyperledger.org/channel/composer?msg=wnqoBaGyGTwPs5HJB) @vsadriano At present, Composer cannot manage the endorsement policy presently, but this is definitely on the development roadmap. You can (as you probably know) pass on the endorsement policy as a parameter of a Business Network instantiation as shown here -> https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html in the tutorials.
[ ](https://chat.hyperledger.org/channel/composer?msg=wnqoBaGyGTwPs5HJB) @vsadriano At present, Composer cannot manage the endorsement policy, but this is definitely on the development roadmap. You can (as you probably know) pass on the endorsement policy as a parameter of a Business Network instantiation as shown here -> https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html in the tutorials.
@mahoney1 Yes, I can! But I need to update an endorsement policy on existing business network.
[ ](https://chat.hyperledger.org/channel/composer?msg=TEazazsz4MBP2PjFG) @vsadriano to my knowledge. Composer allows you to pass connector specific options through to the instantiation commands- like `composer network start` - ie via the APIs or the CLIs.. The discussion (from which the policy passthrough facility originated) on this issue -> https://github.com/hyperledger/composer/issues/1251 captures what the design intended. So because its not part of a Composer BNA (for example) you can't do a `network update` to change the policy on the fly, If using Composer to manage its policy, you would have to instantiate it as a different network (to achieve your goal of applying the new policy to pass on.)
[ ](https://chat.hyperledger.org/channel/composer?msg=TEazazsz4MBP2PjFG) @vsadriano to my knowledge. Composer only allows you to pass connector specific options through to the instantiation commands- like `composer network start` - ie via the APIs or the CLIs.. The discussion (from which the policy passthrough facility originated) on this issue -> https://github.com/hyperledger/composer/issues/1251 captures what the design intended. So because its not part of a Composer BNA (for example) you can't do a `network update` to change the policy on the fly, If using Composer to manage its policy, you would have to instantiate it as a different network (to achieve your goal of applying the new policy to pass on.)
[ ](https://chat.hyperledger.org/channel/composer?msg=TEazazsz4MBP2PjFG) @vsadriano to my knowledge. Composer only allows you to pass connector specific options through to the instantiation commands- like `composer network start` - ie via the APIs or the CLIs.. The discussion (from which the policy passthrough facility originated) on this issue -> https://github.com/hyperledger/composer/issues/1251 captures what the design intended. So because its not part of a Composer BNA (for example) you can't do a `network update` to change the policy on the fly, If using Composer to manage its policy, you would have to instantiate it as a different network (to achieve your goal of applying the new policy to pass on.), as things stand today
[ ](https://chat.hyperledger.org/channel/composer?msg=KkngRzstJC6roBY9c) @mahoney1 Chaos! :anguished:
Thanks @mahoney1! I'll find another method.
[ ](https://chat.hyperledger.org/channel/composer?msg=F7AEWHyvxWt85Bgi3) @mahoney1 I meant getting it in code.
hey guys! any tips on how to start on extending the composer-rest-server with customized APIs?
Has joined the channel.
Has joined the channel.
After dozens of successful various calls via composer-client, it consistently fails with "Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)". Have to restart fabric to bring it back to live. Any pointers where to start diagnosing it?
Has joined the channel.
Has joined the channel.
Has joined the channel.
While trying to submit a transaction, I am getting "class org.blockhack.model.User has value Resource {id=org.blockhack.model.User#USER2} expected a Relationship". The transaction has User as a relational field to a participant titled "User" which is defined in the model. I have correctly created the user "USER2". Yet, the transaction is failing.
Kindly requesting help 🙂
```
```
{
"$class": "org.blockhack.model.requestIssue",
"requestID": "1",
"user": "resource:org.blockhack.model.User#USER2",
"issuer": "resource:org.blockhack.model.Issuer#ISSUER2",
"documentType": "reportCard"
}
```
```
{
"$class": "org.blockhack.model.requestIssue",
"requestID": "1",
"user": "resource:org.blockhack.model.User#USER2",
"issuer": "resource:org.blockhack.model.Issuer#ISSUER2",
"documentType": "reportCard"
}
```
This (above) is the transaction I am trying to make
https://goflo.in/idm@0.0.1.bna
https://goflo.in/org.devcorp.idm.cto
https://goflo.in/logic.js
These are my files
Has joined the channel.
Hello All!!
Am a newbie to Hyperledger composer
Trying set up my dev environment today
I followed the steps mentioned - https://hyperledger.github.io/composer/installing/development-tools.html
however am unable to complete the setup and filed a issue on hyperledger github page - https://github.com/hyperledger/composer/issues/3186
Any help or guidance would be much appreicated
thanks in advance
`2018/01/21 08:32:01 [DEBUG] Client authentication type requested: noclientcert`
is this message ok or there is something missing
in logs of ca container
`2018/01/21 08:32:01 [DEBUG] Client authentication type requested: noclientcert`
is this message ok or there is something missing
Has joined the channel.
@praveeng145 what version of node are you using? Can you print the result of running `node -v`?
Has left the channel.
Has joined the channel.
Hi All!!
Can anyone please help me with this error message?
Error: Could not find any functions to execute for transaction org.local.insurance.issuePolicy#c80fc156-0f41-4a07-991d-32744f136123
`/**
* New model file
*/
namespace org.local.insurance
asset Policy identified by PolicyId {
o String PolicyId
o String carrierName
o Double premium
--> Customer customer
}
participant Customer identified by CustomerId{
o String CustomerId
o String firstName
o String lastName
o String ZipCode
o String city
o String insuranceType
}
transaction issuePolicy {
-->Policy policy
-->Customer newCustomer
}`
my processor
/*
* New script file
* @param {org.local.insurance.Policy} issuePolicy - policy to be processed
* @transcation
*/
function policyTrader(issuePolicy){
issuePolicy.policy.customer = issuePolicy.newCustomer;
return getAssetRegistry('org.local.insurance.Policy')
.then(function (assetRegistry) {
return assetRegistry.update(trade.policy);
});
//test
console.log(issuePolicy.newCustomer.firstName);
}
@lucasdf - am using node v5.4.0
[ ](https://chat.hyperledger.org/channel/composer?msg=W25sGJox9pJZBQ369) @praveeng145 I would recommend you to update it... That's a quite old version and that's probably why you are getting that error.
The prerequisites recommend using node version 8.9 (but not version 9): https://hyperledger.github.io/composer/installing/installing-prereqs.html
ok, sure.. I will give a try now
well, there seems to be an issue. When I tried running "node -v" in terminal application it gives v8.9.4; however when I run the same in VSCode terminal - it say v5.4.0
Do you know how can I update/point to my latest node:v8.9.4 in VSCode
I use Atom, I don't know much about VSCode..
Ok. Let me try figuring it out
I was able to set the latest version of node.js by running "npm use --lts"; now running createPeerAdminCard.sh gives me different error.
```readyshout-lm:Blockchain praveen$ ~/fabric-tools/createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.3
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-darwin-x64/grpc_node.node'
Command failed```
when i request identity card for alice
`Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: Parse Error]`
when i request identity card for alice
`Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: Parse Error]`
i change to https and its work in connection profile but now i found this error on peer1Org2
```2018-01-21 20:18:58.284 UTC [gossip/state] handleStateResponse -> WARN 3f3 Payload with sequence number 2 wasn't added to payload buffer: Payload with sequence number = 2 has been already processed```
is there problem in code on repository because i clone first network project and build first network but it didn't work
Clipboard - 2018年1月22日上午10点22分
Have anyone come across such a situation?Please help
Clipboard - 2018年1月22日上午10点32分
Has joined the channel.
Clipboard - 2018年1月22日中午11点42分
Are the docs going to be updated to explain how to write "expanded", "full-featured" transaction processor functions for 1.7? I noticed looking at the samples there are some subtle syntax changes and promises are replaced with "await" - is it now possible to "require" other packages for example?
how to use where in filter query param from composer-rest-server
for second level values
I'm trying to deploy business network which has 2 orgs each containing 2 peers each and i'm setting up orderer and org1 in one physical machine and org2 in another physical machine. I have created channel on 1st VM and successfully joined all the peers of org1 and org2 and following composer multi org steps to deploy the business network but when i'm running Composer network start command from org1 i'm getting below error Error trying to instantiate composer runtime. Error: Error: Invalid result s returned ::NOT_FOUND
error_composer.png
Has joined the channel.
error_composer.png
This is my model file
namespace net.test.acme
asset Token identified by name {
o String name
o String value
o String symbol
}
transaction Create_Token {
o String name
o String value
o String symbol
}
This is my script
/**
*
* @param {net.test.acme.Create_Token} Create_Token - To create Tokens
* @return {Promise} Asset Registry Promise
* @transaction
*/
function createToken(Create_Token) {
return getAssetRegistry('net.test.acme.Token').then(function(result) {
var factory = getFactory();
var token = factory.newResource('net.test.acme','Token','name1');
token.value =Create_Token.value;
token.symbol =Create_Token.symbol;
return result.add(token);
})
.catch(function (error) {
throw new Error(error);
});
}
But when I want to submit the transaction for creating a new asset it is giving error like
Error: Object with ID 'Asset:net.test.acme' in collection with ID '$sysregistries' does not exist
Please help me
sudheer@sudheer-HP-Laptop-15-bs0xx:~/Desktop/mroproject/mronproject$ composer transaction submit --card suppc@mron-business-network --data '{ "$class": "org.mron.CreateSupplierasset","part": { "$class": "org.mron.AircraftPartSupplier", "UniqueKey": "S005", "part": { "$class": "org.mron.AircraftPart", "Quantity": 8193, "Partnumber": "Enim deserunt quis magna.","SupplierId": "Eu.", "ManufacturerCode": 25960, "Keywordname": "Cupidatat.", "UnitPriceAmount": 28638,"UnitOfMeasure": "Essetemporproident.","InternationalCurrencyCode":"Irure mollit dolore sint.", "PriceEffectiveDate": 47359,"LeadTime": 31487,"ModelOfApplicability": "Animmollit." }}}'
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
While I was trying to submit a transaction other than admin I am facing the issue as shown above
[ ](https://chat.hyperledger.org/channel/composer?msg=jdKcEbARqj3iGoXKe) @SudheerKaspa - how have you created the card for 'suppc'? Can you try `composer card list -c suppc@mron-business-network` and look at the out out at the bottom for 'credentials set' or 'credentials notset'.
@rthatcher thanks for the response
composer card list suppc@mron-business-network
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────────────────┬───────────┬───────────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────────────────┼───────────┼───────────────────────┤
│ admin@dlt-network │ admin │ dlt-network │
├─────────────────────────────┼───────────┼───────────────────────┤
│ admin@cool-network │ admin │ cool-network │
├─────────────────────────────┼───────────┼───────────────────────┤
│ admin@mro │ admin │ mro │
├─────────────────────────────┼───────────┼───────────────────────┤
│ admin@new-network │ admin │ new-network │
├─────────────────────────────┼───────────┼───────────────────────┤
│ admin@mron-business-network │ admin │ mron-business-network │
├─────────────────────────────┼───────────┼───────────────────────┤
│ admin@sample │ admin │ sample │
├─────────────────────────────┼───────────┼───────────────────────┤
│ admin@tutorial-network │ admin │ tutorial-network │
├─────────────────────────────┼───────────┼───────────────────────┤
│ oemc@mron-business-network │ oemc │ mron-business-network │
├─────────────────────────────┼───────────┼───────────────────────┤
│ suppc@mron-business-network │ suppc │ mron-business-network │
├─────────────────────────────┼───────────┼───────────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────────────────┴───────────┴───────────────────────┘
Issue composer card list --name
Clipboard - January 22, 2018 3:08 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=xEERtQ2iLJrhP9vJq) @SudheerKaspa composer card list --name suppc@mron-business-network
[ ](https://chat.hyperledger.org/channel/composer?msg=xEERtQ2iLJrhP9vJq) @SudheerKaspa `composer card list --name suppc@mron-business-network`
@rthatcher
Clipboard - January 22, 2018 3:16 PM
Clipboard - January 22, 2018 3:16 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=r4prMQpgjTaz6gkBT) @prabvi01 - did the `composer runtime install` command complete successfully for both Orgs?
[ ](https://chat.hyperledger.org/channel/composer?msg=F35833vvSksNjkRNk) @crj - what version of Fabric are you using? 1.04 is the supported version for Composer v0.16.3
Clipboard - January 22, 2018 5:19 PM
Clipboard - January 22, 2018 5:19 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=GjCFszkQm52nAoCLZ) @abhilash1in hi there, the problem is in your TP function - not in your model (and modeled Trxn)( - `requestIssue`'s function code needs revisiting. See more info on call-outs -> https://hyperledger.github.io/composer/integrating/call-out and TP functions here -> https://hyperledger.github.io/composer/reference/js_scripts.html
Clipboard - January 22, 2018 4:01 PM
Clipboard - January 22, 2018 4:01 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=ehZc5QqRwsErNzkhQ) @adrianblakey hi there - on `requires` - we don’t yet support `requires` in TP functions, but it is plan for a later release of Composer ...on TPs, apart from the samples, this is the docs on that presently https://hyperledger.github.io/composer/reference/js_scripts.html
can we create more than one business networks in one channel
Please help me resolve the following error
sudheer@sudheer-HP-Laptop-15-bs0xx:~/Desktop/mroproject/mronproject$ composer identity issue -c admin@mron-business-network -fsupplier -u suppid -a "resource:org.mron.Supplier#S001" -x false
Issue identity and create Network Card for: suppid
✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=ngiQCDZ8DNrRd8ezZ) @wininani - Yes, by default composer uses a channel called 'composerchannel' and more than one Business Network can be deployed on the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=4MHsnuRqv4P9XMTZL) @pichayuthk In order to install the composer runtime using the composer install runtime command you need to have imported crypto material which is defined as an admin for the peer you plan to install on. If you have stood up a new Fabric environment for your organisation(s), you should also make sure to clear out old cards eg using `composer card delete`. If you are using the cryptogen structure (for your keys/certs) then each organisation defines an admin user and you should ensure that each of the peers in that organisation, uses that admin user with appropriate authority (the fabric examples such as BYFN should already do this btw). That user (for the admin in question) can be found in the users directory of the organisations for the peer (as you've have seen in the multi-org tutorial), you need the file in msp/signcerts for the public certificate and the msp/keystore for the private key for the composer identity import command. Then you need to start your business network, for that you need to use a channel admin identity. I'm pretty sure all the fabric examples make the peer admins 'channel admins' as well so you would use composer network start. It all depends on how you have set your network up, unfortunately in order to composer on more complex or custom networks you need to have an understanding of how the Fabric networks and channels have been configured in order to utilise the composer commands to set composer up appropriately against that organisation. That said, if you were following a tutorial, such as single org, happy to try help too.
[ ](https://chat.hyperledger.org/channel/composer?msg=4MHsnuRqv4P9XMTZL) @pichayuthk In order to install the composer runtime using the composer install runtime command you need to have imported crypto material which is defined as an admin for the peer you plan to install on. If you have stood up a new Fabric environment for your organisation(s), you should also make sure to clear out old cards eg using `composer card delete`. If you are using the cryptogen structure (for your keys/certs) then each organisation defines an admin user and you should ensure that each of the peers in that organisation, uses that admin user with appropriate authority (the fabric examples such as BYFN should already do this btw). That user (for the admin in question) can be found in the users directory of the organisations for the peer (as you've have seen in the multi-org tutorial), you need the file in msp/signcerts for the public certificate and the msp/keystore for the private key for the composer card create command. Then you need to start your business network, for that you need to use a channel admin identity. I'm pretty sure all the fabric examples make the peer admins 'channel admins' as well so you would use composer network start. It all depends on how you have set your network up, unfortunately in order to composer on more complex or custom networks you need to have an understanding of how the Fabric networks and channels have been configured in order to utilise the composer commands to set composer up appropriately against that organisation. That said, if you were following a tutorial, such as single org, happy to try help too.
[ ](https://chat.hyperledger.org/channel/composer?msg=4MHsnuRqv4P9XMTZL) @pichayuthk In order to install the composer runtime using the composer install runtime command you need to have imported crypto material which is defined as an admin for the peer you plan to install on. If you have stood up a new Fabric environment for your organisation(s), you should also make sure to clear out old cards eg using `composer card delete`. If you are using the cryptogen structure (for your keys/certs) then each organisation defines an admin user and you should ensure that each of the peers in that organisation, uses that admin user with appropriate authority (the fabric examples such as BYFN should already do this btw). That user (for the admin in question) can be found in the users directory of the organisations for the peer (as you've have seen in the multi-org tutorial), you need the file in msp/signcerts for the public certificate and the msp/keystore for the private key for the composer card create command, followed by a composer card import, then connect to the network. Then you need to start your business network, for that you need to use a channel admin identity. I'm pretty sure all the fabric examples make the peer admins 'channel admins' as well so you would use composer network start. It all depends on how you have set your network up, unfortunately in order to composer on more complex or custom networks you need to have an understanding of how the Fabric networks and channels have been configured in order to utilise the composer commands to set composer up appropriately against that organisation. That said, if you were following a tutorial, such as single org, happy to try help too.
[ ](https://chat.hyperledger.org/channel/composer?msg=4MHsnuRqv4P9XMTZL) @pichayuthk In order to install the composer runtime using the composer install runtime command you need to have imported crypto material which is defined as an admin for the peer you plan to install on. If you have stood up a new Fabric environment for your organisation(s), you should also make sure to clear out old cards eg using `composer card delete`. If you are using the cryptogen structure (for your keys/certs) then each organisation defines an admin user and you should ensure that each of the peers in that organisation, uses that admin user with appropriate authority (the fabric examples such as BYFN should already do this btw). That user (for the admin in question) can be found in the users directory of the organisations for the peer (as you've have seen in the multi-org tutorial), you need the file in msp/signcerts for the public certificate and the msp/keystore for the private key for the composer card create command, followed by a composer card import. Then you need to start your business network, for that you need to use a channel admin identity. I'm pretty sure all the fabric examples make the peer admins 'channel admins' as well so you would use composer network start. It all depends on how you have set your network up, unfortunately in order to composer on more complex or custom networks you need to have an understanding of how the Fabric networks and channels have been configured in order to utilise the composer commands to set composer up appropriately against that organisation. That said, if you were following a tutorial, such as single org, happy to try help too.
when i run peer instantiating i stuck on this
```===================== Chaincode is installed on remote peer PEER2 =====================
Instantiating chaincode on org2/peer2...
CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt
CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key
CORE_PEER_LOCALMSPID=Org2MSP
CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt
CORE_PEER_TLS_ENABLED=true
CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp
CORE_PEER_ID=cli
CORE_LOGGING_LEVEL=DEBUG
CORE_PEER_ADDRESS=peer0.org2.example.com:7051```
and when i get the logs of peer
```
2018-01-22 11:22:50.162 UTC [gossip/state] handleStateResponse -> WARN 3fb Payload with sequence number 2 wasn't added to payload buffer: Payload with sequence number = 2 has been already processed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=7nBqwHyXGdi8fE4kh) @nasserfci - in this #composer channel we tend to assume that the Fabric is setup and running fully. Please can you ask in the #'fabric channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=7nBqwHyXGdi8fE4kh) @nasserfci - in this #composer channel we tend to assume that the Fabric is setup and running fully. Please can you ask in the #fabric channel.
Has joined the channel.
Has joined the channel.
After successful execution of theses command
npm install -g composer-cli
npm install -g composer-rest-server
npm install -g generator-hyperledger-composer
npm install -g yo
I am receiving this error yo: command not found for yo hyperledger-composer:businessnetwork.
No command is working related to these installation.. Please guide
[ ](https://chat.hyperledger.org/channel/composer?msg=2GCatMDgdofam6iyt) @SudheerKaspa It would appear that the admin id in your card is not the one currently known to the ca server.. what happens when you do a `composer network list` with the admin card - should return results and verify that card. ps. I noticed you have no space after the `-f` parameter, normally you require this.
@mahoney1 I had tried with space and the result is same
[ ](https://chat.hyperledger.org/channel/composer?msg=n4xNxcPwzFMNGtP8M) @rthatcher It is resolved as i have given different names while creating channel and in connection.json file so bcoz of conflict it was throwing error
while deploying multi org in multiple machine i have deployed business network but when i'm trying to ping from VM1 where my orderer and org1 is setup i'm getting Error: Error trying invoke business network. Error: Peer has rejected transaction 'e5132f42894c9058a287751e8be3301beb665b41f1705d1f3944bf1d88355e24' with code ENDORSEMENT_POLICY_FAILURE
@Arindam - you need something like ``` function createToken(Create_Token) {
var factory = getFactory();
var token = factory.newResource('net.test.acme','Token','name1');
token.value = Create_Token.value;
token.symbol = Create_Token.symbol;
return getAssetRegistry('org.test.acme.Token')
.then(function (tokenReg) {
tokenReg.add(token);
});
}
```
or
```
function createToken(Create_Token) {
const registry = await getAssetRegistry('net.test.acme.Token');
var factory = getFactory();
var token = factory.newResource('net.test.acme','Token','name1');
token.value = Create_Token.value;
token.symbol = Create_Token.symbol
await registry.add(token);
}
```
@Arindam - you need something like (not tested fyi) ``` function createToken(Create_Token) {
var factory = getFactory();
var token = factory.newResource('net.test.acme','Token','name1');
token.value = Create_Token.value;
token.symbol = Create_Token.symbol;
return getAssetRegistry('org.test.acme.Token')
.then(function (tokenReg) {
tokenReg.add(token);
});
}
```
or
```
function createToken(Create_Token) {
const registry = await getAssetRegistry('net.test.acme.Token');
var factory = getFactory();
var token = factory.newResource('net.test.acme','Token','name1');
token.value = Create_Token.value;
token.symbol = Create_Token.symbol
await registry.add(token);
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=a5FMYb28uWB7qcuSm) @SudheerKaspa the signcert public cert file (.pem) - this is for binding a cert to an existing identity in Composer
Clipboard - January 22, 2018 6:19 PM
@SudheerKaspa hi there, just do `composer network ping -c suppc@mron-business-network` (ie use the card) to have your card download the credentials automatically. That's it. Your `composer participant add` command had a typo btw.
@SudheerKaspa hi there, just do `composer network ping -c suppc@mron-business-network` (ie use the card) to have your card download the credentials automatically. That's it. If you repeat your `composer card list --name` command for this card - you'll see a different status for the card. Your `composer participant add` command had a typo btw.
Hi guys, any idea regarding the roadmap of HL Composer? I'd like to know when (if) version 1.0 is going to roll out soon (June?). Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=MNv8WkknxeDPxveao) @fabcan - Hyperledger Composer is dependent on the Hyperledgerfabric v1.1 being formally released. See this Mailing List:
https://lists.hyperledger.org/pipermail/hyperledger-composer/2017-November/000044.html
[ ](https://chat.hyperledger.org/channel/composer?msg=pfKjbCzM2sy9jKSMc) @ahmadzafar you need to install `yo` using `npm install -g yo` then `yo hyperledger-generator:businessnetwork` should work fine (prompt for input).
[ ](https://chat.hyperledger.org/channel/composer?msg=pfKjbCzM2sy9jKSMc) @ahmadzafar you need to install `yo` using `npm install -g yo` (step 4 from here -> https://hyperledger.github.io/composer/unstable/installing/development-tools ) - then `yo hyperledger-generator:businessnetwork` should work fine (prompt for input).
[ ](https://chat.hyperledger.org/channel/composer?msg=pfKjbCzM2sy9jKSMc) @ahmadzafar you need to install `yo` using `npm install -g yo` (step 4 from here -> https://hyperledger.github.io/composer/unstable/installing/development-tools ) - then `yo hyperledger-composer:businessnetwork` should work fine (prompt for input).
[ ](https://chat.hyperledger.org/channel/composer?msg=DqejcnxtyBx6PF6KQ) @rthatcher Thanks a lot!
Hello. Has anyone tried to run `block listener` over composer fabric network? ..Link - https://github.com/hyperledger/fabric/tree/release/examples/events/block-listener
Has joined the channel.
Hi. I am trying to debug a condition n permissions.acl. is there a way to show the values of participant & resource (e.g. using console.log) so that I can see the output in docker logs?
Has joined the channel.
Has joined the channel.
How do we get history of an asset ?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=RGNzXEutaiggPNJrs) @lcinacio you can use console.log and it should print in the container's log. Persoanlly, I like do do these kind of tests/debugging using tests.
[ ](https://chat.hyperledger.org/channel/composer?msg=uAtH4nxTMM7RR7xwg) @ajayvuyyuru we have a current issue open for Historian to showhistory of changes/ deltas for a particular asset - https://github.com/hyperledger/composer/issues/991
As a workaround you can do the following - so for sample network `trade-network`
```
query selectTransaction{
description: "choose a specific commodity "
statement: SELECT org.acme.biznet.Trade
WHERE (commodity == _$commodity )
}
```
finds all transactions of transaction `Trade` (that are used to update an asset) for a particular asset id - can also add a date range if need be - so that's a query showing what changed - obviously there is an initial AddAsset transaction (see more on that here -> chat.hyperledger.org/channel/composer?msg=eZK96GouZhbAzniB2 - So once you've updated your network to recognise the newly added query defined in your `queries.qry` and the named query is defined in your .cto model file you can try it out . The other way is to use Filters (as opposed to queries):on your REST client - so use a filter using `{"where":{"commodity":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"} `.. so find all transactions for asset with tradingSymbol (ID field) of 'ABC' - ie a relationship - and I can resolve the transaction and the particular asset it relates to. In this case it was 1 transaction (could be more) showing changes and I can see the transaction (with resolved) detail, for that asset
Has joined the channel.
Developers needed; https://paeanproject.org/
Email me at bhavneesh@vasudacapitalmanagement.com
@mahoney1 Thanks for the response. I tried the alternate approach of using filters querying Trade API and getting following error response{
"error": {
"statusCode": 400,
"name": "Error",
"message": "Value is not an object.",
"stack": "Error: Value is not an object.\n at errorNotAnObject (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/strong-remoting/lib/types/object.js:80:13)\n at Object.validate (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/strong-remoting/lib/types/object.js:51:14)\n at Object.fromTypedValue (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/strong-remoting/lib/types/object.js:14:22)\n at Object.fromSloppyValue (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/strong-remoting/lib/types/object.js:41:17)\n at HttpContext.buildArgs (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/strong-remoting/lib/http-context.js:193:22)\n at new HttpContext (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/strong-remoting/lib/http-context.js:59:20)\n at restStaticMethodHandler (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/strong-remoting/lib/rest-adapter.js:485:15)\n at Layer.handle [as handle_request] (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at next (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/express/lib/router/route.js:137:13)\n at Route.dispatch (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/express/lib/router/route.js:112:3)\n at Layer.handle [as handle_request] (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at /home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:281:22\n at Function.process_params (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)\n at next (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)\n at Function.handle (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:174:3)\n at router (/home/blockchain1/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:47:12)"
}
}
I deployed a test network and see a difference in data between playground and rest api. Historian record doesn't include resources data when querying through System API but the playground shows it under All Transactions. How do i get resource data as part of System historian records using REST api ?
@ajayvuyyuru eg. `{"where":{"owner":"resource:org.acme.biznet.Trader#JonDoe"}, "include":"resolve"}`
@ajayvuyyuru eg.{"where":{"asset_id":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"} or ownership `{"where":{"owner":"resource:org.acme.biznet.Trader#JonDoe"}, "include":"resolve"}`
@ajayvuyyuru eg.`{"where":{"asset_id":"resource:org.acme.biznet.Commodity#ABC"}, "include":"resolve"}` or ownership `{"where":{"owner":"resource:org.acme.biznet.Trader#JonDoe"}, "include":"resolve"}`
@mahoney1 This worked but didn't give me Add / Update / remove assets.
[ ](https://chat.hyperledger.org/channel/composer?msg=mJf5X5puCNt4biY5i) @ajayvuyyuru ok - see other link I sent you earlier concerning `targetRegistry` - the example shown is 'AddAsset'
[ ](https://chat.hyperledger.org/channel/composer?msg=mJf5X5puCNt4biY5i) @ajayvuyyuru ok - see other link I sent you earlier concerning `targetRegistry` - the example shown is 'AddAsset' - transactions are the 'update' but in any case the targetRegistries would be UpdateAsset and RemoveAsset
[ ](https://chat.hyperledger.org/channel/composer?msg=RGNzXEutaiggPNJrs) @lcinacio eg `console.log("Asset ID is: " + myAsset.getIdentifier()) + " Address is: " + myPerson.address);` etc
Has joined the channel.
Clipboard - January 23, 2018 9:28 AM
hi,anyone could tell me what's wrong with it? I have a ca server & it names ca.org1.example.com.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=n4xNxcPwzFMNGtP8M) @rthatcher thanks ,I have solved this problem by replacing the BNA file
[ ](https://chat.hyperledger.org/channel/composer?msg=7xiKxqqAscgLxWFDx) @SudheerKaspa
You wrote the wrong thing,
is "@mron" , not "@mro"
while deploying multi org in multiple machine i have deployed business network but when i'm trying to ping from VM1 where my orderer and org1 is setup i'm getting Error: Error trying invoke business network. Error: Peer has rejected transaction 'e5132f42894c9058a287751e8be3301beb665b41f1705d1f3944bf1d88355e24' with code ENDORSEMENT_POLICY_FAILURE
Has joined the channel.
Clipboard - January 23, 2018 11:58 AM
Clipboard - January 23, 2018 12:04 PM
Clipboard - January 23, 2018 12:04 PM
Hi, I'm going through the developer tutorial for hyperledger-composer @ https://hyperledger.github.io/composer/tutorials/developer-tutorial. When I try to generate the bna from the command "yo hyperledger-composer:businessnetwork" command, yeoman starts the wizard and prompts for a "Business Network Name". I cannot progress beyond this step as no matter what I enter into the wizard the following exception is raised: 'Name cannot be null, empty or contain a space or uppercase character'. Any advice?
Hi All, I have deployed 2 peer node Fabric using composer, now I want to add a new peer to same. How can we use composer to add this new peer to the existing Fabric?
Clipboard - 2018年1月23日下午4点14分
Has left the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=rnvXiY4Sv2LKFJBM2) @Randyshu2018 - is your CA container started, and is the networking set up ok for it to be 'found' ?
[ ](https://chat.hyperledger.org/channel/composer?msg=rnvXiY4Sv2LKFJBM2) @Randyshu2018 - is your CA container started, and is the networking set up ok for it to be 'found' ?
I have just seen this new message at the bottom - I have not seen this error, but wondrering if it is also related to networking - possibly an error in the connection.json file used to create the cards
Has joined the channel.
has network configure json format been changed? there is an error when importing the created card.
```Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.```
has connection profile format been changed? there is an error when importing the created card.
```Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.```
Help: How do I add asset from the REST API using my transaction rather than directly to the asset?
Help: How do I add asset from the REST API using my transaction rather than POST directly to the asset?
Screenshot-2018-1-23 Hyperledger Composer REST server.png
Screenshot-2018-1-23 Hyperledger Composer REST server.png
Screenshot-2018-1-23 Hyperledger Composer REST server.png
Code used ```// Get the DigitalSignature registry.
return getAssetRegistry(blockchainLocation + '.' + assetName)
.then(function (digitalSignatureAssetRegistry) {
// Get the factory for creating new asset instance.
var factory = getFactory();
// Create the digital signature.
var ds = factory.newResource(blockchainLocation, assetName, addDigitalSignature.id);
ds.encryptedSignatureHash = addDigitalSignature.encryptedSignatureHash;
ds.publicKey = addDigitalSignature.publicKey;
// Emit a notification event that a digital signature is added
var addNotification = factory.newEvent(blockchainLocation, assetName);
addNotification.digitalSignature = ds;
emit(addNotification);
// Add the given digital signature to the DigitalSignature registry
return digitalSignatureAssetRegistry.add(ds);
})
.catch(function (error) {
// Add optional error handling here.
});```
[ ](https://chat.hyperledger.org/channel/composer?msg=mvbZDC8Jbsu275uZA) @bh4rtp - 'x-type' is new to v0.17.* stream - have you upgraded to 17 and trying to import a v0.16 card ?
cto ```asset DigitalSignature identified by id {
o String id
o String encryptedSignatureHash
o String publicKey
}
transaction addDigitalSignature {
o String id
o String encryptedSignatureHash
o String publicKey
}
event AddDigitalSignatureNotification {
--> DigitalSignature digitalSignature
}```
@rthatcher yes, i have just updated to v0.17.1. and deleted all existing card using `rm -rf ~/.composer`, then created a new card.
When querying, I get the asset in the asset db and the transaction one got ignored.
[ ](https://chat.hyperledger.org/channel/composer?msg=iW8LaLnxkZbzbTuya) @prabvi01 - assuming you are still working with the MultiOrg on 2 separate machines, I would guess that there is a networking/addressing problem between the 2 machines or an error in the connection.json file used to create the cards. (I would check that your endorsement policy file was correct, but it is a simple file and less likely to be the problem.)
could anyone please provide me a sample `connection.json` in format of v0.17.1?
found it by https://github.com/hyperledger/composer/search?utf8=%E2%9C%93&q=x-type&type=. thanks.
Quick question: I start the composer-rest-server and enable the event publication over web sockets. It works fine for my transactions calling emit, but I don't get anything when I add assets using the REST endpoints. Is there a way to generate events also for REST calls?
[ ](https://chat.hyperledger.org/channel/composer?msg=dFtr24BPndaGNjDvn) @wininani - I would think that you have an error in specifying the crypto material when you created the connection.json file for the Business Network card
[ ](https://chat.hyperledger.org/channel/composer?msg=hqM9sMiacGu4B3ssF) @mahoney1 I tried to add console.log directly in permissions.acl but it doesn't work:
rule SampleAsset {
description: "Sample asset"
participant(p): "org.acme.biznet.User"
operation: CREATE, UPDATE, DELETE
resource: "org.acme.biznet.SampleAsset"
condition: (console.log("SampleAsset rule") )
action: ALLOW
}
@rthatcher does v0.17.1 `connection.json` need `keyValStore` configuration?
[ ](https://chat.hyperledger.org/channel/composer?msg=4rsEqBs3wyn4nZzNZ) @RaikireHiuduo on 'asset add' correct, that would be what you have to do in your trxn logic. On query: you would have to share your query file but - did you check the asset was added via Playground / CLI ? If you added it correctly, it should show (just like any other asset) via REST too (assuming ACLs don't restrict etc).
[ ](https://chat.hyperledger.org/channel/composer?msg=hmJBu5JAGFq9EN9XQ) @lcinacio you can't do that - that is a condition statement :-) - your console log is in your script logic (for example)
[ ](https://chat.hyperledger.org/channel/composer?msg=5LdxZaD8NjqWvEEMJ) @lcinacio that's because the emit is defined/published in the TP function, add asset doesn't use that. Events are emitted by transaction JavaScript in the transaction processor functions file.
[ ](https://chat.hyperledger.org/channel/composer?msg=GSeXseGtu3GX4DWFb) @gibsonsyd what name did you try? So something like 'mynetwork' fails ?
[ ](https://chat.hyperledger.org/channel/composer?msg=SLBZehoxnRPHE6iKX) @mahoney1 Yeah, I know. I was just trying to debug...
I want the ACL to be used by REST endpoints, so I have to add the rule in permissions.acl and not in the transaction functions.
deploy bna failed.
```Deploying business network from archive: ./decentralized-energy-network.bna
Business network definition:
Identifier: decentralized-energy-network
Description: Decentralized Energy application with Hyperledger Composer
✔ Installing runtime for business network undefined. This may take a minute...
Starting business network from archive: ./decentralized-energy-network.bna
Business network definition:
Identifier: decentralized-energy-network@0.1.14
Description: Decentralized Energy application with Hyperledger Composer
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
✖ Installing runtime for business network undefined. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed```
[ ](https://chat.hyperledger.org/channel/composer?msg=RpCAtTsqz2bthjH9n) @bh4rtp no. See sample here -> https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-multi-org.html
@mahoney1 thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=ejgqfC5JkqLDG9exn) @rthatcher it is resolved now. what i did was i have created PeerAdmin@byfn-network-org1-only.card, peerAdmin@byfn-network-org1.card, peeradmin@byfn-network-org2-only.card and peeradmin@byfn-network-org2.card on first VM and started composer network on org1 and created alice@tutorial-network on vm1 and bob@tutorial-network on vm2 then it is working. prev i have separated first four in 2 VMs based on org there it was failing
Ran into an issue using `businessNetworkConnection.connect('admin@my-test-env')` . It gives a 400 error, saying auth failed. But when i type `composer card list`, the admin@my-test-env is clearly shown with userId admin and Business Network as my-test-env. Any idea what im doing wrong?
Getting this error when trying to issue an identity `Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]`
Hello. I'm not sure if this should post this in the fabric or composer channel. I will start here ;-)
We are having problems moving our fabric from a stand alone docker host to a docker swarm configuration. Firstly we have a working fabric using version 1.0.5, which we are happy with when running all containers on a single docker host. We use composer (0.16.3) to query our business networks.
When we take this configuration and move to a docker swarm of three nodes, on AWS, initially all seems fine. However if we leave the fabric for approx 20 mins, and then ping the business network using composer network ping, we receive a "Timeout expired while executing transaction" from composer, and our peer log contains the following errors:
```2018-01-23 09:31:42.084 UTC [chaincode] processStream -> ERRO 13dfd Error handling chaincode support stream: rpc error: code = Canceled desc = context canceled
2018-01-23 09:31:42.084 UTC [chaincode] deregisterHandler -> DEBU 13dfe Deregister handler: submission-network:0.16.3
2018-01-23 09:31:42.084 UTC [chaincode] deregisterHandler -> DEBU 13dff Deregistered handler with key: submission-network:0.16.3
2018-01-23 09:32:12.084 UTC [chaincode] Execute -> DEBU 13e00 Exit
2018-01-23 09:32:12.084 UTC [chaincode] ExecuteChaincode -> ERRO 13e01 Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
2018-01-23 09:32:12.084 UTC [endorser] callChaincode -> DEBU 13e02 Exit
2018-01-23 09:32:12.084 UTC [endorser] simulateProposal -> ERRO 13e03 failed to invoke chaincode name:"submission-network" on transaction 98ae36ac3500db8be66dca60bba5b420b602ee5bc993971f64496b950ff205f4, error: Error executing chaincode: Failed to execute transaction (Timeout expired while executing transaction)
2018-01-23 09:32:12.084 UTC [endorser] simulateProposal -> DEBU 13e04 Exit
2018-01-23 09:32:12.084 UTC [lockbasedtxmgr] Done -> DEBU 13e05 Done with transaction simulation / query execution [a282e292-f1ed-4c16-a0c4-88c0ab4cce76]
2018-01-23 09:32:12.084 UTC [endorser] ProcessProposal -> DEBU 13e06 Exit
2018-01-23 09:32:12.096 UTC [eventhub_producer] validateEventMessage -> DEBU 13e07 ValidateEventMessage starts for signed event 0xc4226d8a50
2018-01-23 09:32:12.097 UTC [eventhub_producer] deRegisterHandler -> DEBU 13e08 deregistering event type: BLOCK
2018-01-23 09:32:12.099 UTC [eventhub_producer] Chat -> ERRO 13e09 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled```
If we retry the network ping it is successful, but we notice the chaincode container for the peer we used to ping the business network has been removed, and another creeated in its place. This is reflected in the peer logs.
```
2018-01-23 09:36:20.537 UTC [chaincode] launchAndWaitForRegister -> DEBU 13e7d chaincode submission-network:0.16.3 is being launched
2018-01-23 09:36:20.537 UTC [chaincode] getArgsAndEnv -> DEBU 13e7e Executable is chaincode
2018-01-23 09:36:20.537 UTC [chaincode] getArgsAndEnv -> DEBU 13e7f Args [chaincode -peer.address=10.0.1.47:7051]
2018-01-23 09:36:20.537 UTC [chaincode] launchAndWaitForRegister -> DEBU 13e80 start container: submission-network:0.16.3(networkid:dev,peerid:peer0.fedcom.com)
2018-01-23 09:36:20.537 UTC [chaincode] launchAndWaitForRegister -> DEBU 13e81 start container with args: chaincode -peer.address=10.0.1.47:7051
2018-01-23 09:36:20.537 UTC [chaincode] launchAndWaitForRegister -> DEBU 13e82 start container with env:
CORE_CHAINCODE_ID_NAME=submission-network:0.16.3
CORE_PEER_TLS_ENABLED=false
CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
CORE_CHAINCODE_LOGGING_SHIM=warning
CORE_CHAINCODE_LOGGING_FORMAT=%{color}%{time:2006-01-02 15:04:05.000 MST} [%{module}] %{shortfunc} -> %{level:.4s} %{id:03x}%{color:reset} %{message}
2018-01-23 09:36:20.537 UTC [container] lockContainer -> DEBU 13e83 waiting for container(dev-peer0.fedcom.com-submission-network-0.16.3) lock
2018-01-23 09:36:20.537 UTC [container] lockContainer -> DEBU 13e84 got container (dev-peer0.fedcom.com-submission-network-0.16.3) lock
2018-01-23 09:36:20.538 UTC [dockercontroller] Start -> DEBU 13e85 Cleanup container dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.846 UTC [dockercontroller] stopInternal -> DEBU 13e86 Stopped container dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.846 UTC [dockercontroller] stopInternal -> DEBU 13e87 Kill container dev-peer0.fedcom.com-submission-network-0.16.3 (API error (409): {"message":"Cannot kill container: dev-peer0.fedcom.com-submission-network-0.16.3: Container a6e7f897996133c4b365841a866e0ac3e950bef2ea677b9fd399b4ad1c8960a5 is not running"}
)
2018-01-23 09:36:20.855 UTC [dockercontroller] stopInternal -> DEBU 13e88 Removed container dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.855 UTC [dockercontroller] Start -> DEBU 13e89 Start container dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.855 UTC [dockercontroller] createContainer -> DEBU 13e8a Create container: dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.895 UTC [dockercontroller] createContainer -> DEBU 13e8b Created container: dev-peer0.fedcom.com-submission-network-0.16.3-f48ec2f1f3ee65eade2e3608f03831352fbf83f88d3627a0352f9c01e2575ba8
2018-01-23 09:36:22.055 UTC [dockercontroller] Start -> DEBU 13e8c Started container dev-peer0.fedcom.com-submission-network-0.16.3
```
This behaviour is witnessed across all the channels we have created on our fabric.
We can continue to ping the business network without issue, but if we leave the network inactive for approx 20 mins, we begin the cycle again.
If we retry the network ping it is successful, but we notice the chaincode container for the peer we used to ping the business network has been removed, and another is created in its place. This is reflected in the peer logs.
```
2018-01-23 09:36:20.537 UTC [chaincode] launchAndWaitForRegister -> DEBU 13e7d chaincode submission-network:0.16.3 is being launched
2018-01-23 09:36:20.537 UTC [chaincode] getArgsAndEnv -> DEBU 13e7e Executable is chaincode
2018-01-23 09:36:20.537 UTC [chaincode] getArgsAndEnv -> DEBU 13e7f Args [chaincode -peer.address=10.0.1.47:7051]
2018-01-23 09:36:20.537 UTC [chaincode] launchAndWaitForRegister -> DEBU 13e80 start container: submission-network:0.16.3(networkid:dev,peerid:peer0.fedcom.com)
2018-01-23 09:36:20.537 UTC [chaincode] launchAndWaitForRegister -> DEBU 13e81 start container with args: chaincode -peer.address=10.0.1.47:7051
2018-01-23 09:36:20.537 UTC [chaincode] launchAndWaitForRegister -> DEBU 13e82 start container with env:
CORE_CHAINCODE_ID_NAME=submission-network:0.16.3
CORE_PEER_TLS_ENABLED=false
CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
CORE_CHAINCODE_LOGGING_SHIM=warning
CORE_CHAINCODE_LOGGING_FORMAT=%{color}%{time:2006-01-02 15:04:05.000 MST} [%{module}] %{shortfunc} -> %{level:.4s} %{id:03x}%{color:reset} %{message}
2018-01-23 09:36:20.537 UTC [container] lockContainer -> DEBU 13e83 waiting for container(dev-peer0.fedcom.com-submission-network-0.16.3) lock
2018-01-23 09:36:20.537 UTC [container] lockContainer -> DEBU 13e84 got container (dev-peer0.fedcom.com-submission-network-0.16.3) lock
2018-01-23 09:36:20.538 UTC [dockercontroller] Start -> DEBU 13e85 Cleanup container dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.846 UTC [dockercontroller] stopInternal -> DEBU 13e86 Stopped container dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.846 UTC [dockercontroller] stopInternal -> DEBU 13e87 Kill container dev-peer0.fedcom.com-submission-network-0.16.3 (API error (409): {"message":"Cannot kill container: dev-peer0.fedcom.com-submission-network-0.16.3: Container a6e7f897996133c4b365841a866e0ac3e950bef2ea677b9fd399b4ad1c8960a5 is not running"}
)
2018-01-23 09:36:20.855 UTC [dockercontroller] stopInternal -> DEBU 13e88 Removed container dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.855 UTC [dockercontroller] Start -> DEBU 13e89 Start container dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.855 UTC [dockercontroller] createContainer -> DEBU 13e8a Create container: dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.895 UTC [dockercontroller] createContainer -> DEBU 13e8b Created container: dev-peer0.fedcom.com-submission-network-0.16.3-f48ec2f1f3ee65eade2e3608f03831352fbf83f88d3627a0352f9c01e2575ba8
2018-01-23 09:36:22.055 UTC [dockercontroller] Start -> DEBU 13e8c Started container dev-peer0.fedcom.com-submission-network-0.16.3
```
This behaviour is witnessed across all the channels we have created on our fabric.
We can continue to ping the business network without issue, but if we leave the network inactive for approx 20 mins, we begin the cycle again.
If we retry the network ping it is successful, but we notice the chaincode container for the peer we used to ping the business network has been removed, and another is created in its place. This is reflected in the peer logs:
```
2018-01-23 09:36:20.537 UTC [chaincode] launchAndWaitForRegister -> DEBU 13e7d chaincode submission-network:0.16.3 is being launched
2018-01-23 09:36:20.537 UTC [chaincode] getArgsAndEnv -> DEBU 13e7e Executable is chaincode
2018-01-23 09:36:20.537 UTC [chaincode] getArgsAndEnv -> DEBU 13e7f Args [chaincode -peer.address=10.0.1.47:7051]
2018-01-23 09:36:20.537 UTC [chaincode] launchAndWaitForRegister -> DEBU 13e80 start container: submission-network:0.16.3(networkid:dev,peerid:peer0.fedcom.com)
2018-01-23 09:36:20.537 UTC [chaincode] launchAndWaitForRegister -> DEBU 13e81 start container with args: chaincode -peer.address=10.0.1.47:7051
2018-01-23 09:36:20.537 UTC [chaincode] launchAndWaitForRegister -> DEBU 13e82 start container with env:
CORE_CHAINCODE_ID_NAME=submission-network:0.16.3
CORE_PEER_TLS_ENABLED=false
CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
CORE_CHAINCODE_LOGGING_SHIM=warning
CORE_CHAINCODE_LOGGING_FORMAT=%{color}%{time:2006-01-02 15:04:05.000 MST} [%{module}] %{shortfunc} -> %{level:.4s} %{id:03x}%{color:reset} %{message}
2018-01-23 09:36:20.537 UTC [container] lockContainer -> DEBU 13e83 waiting for container(dev-peer0.fedcom.com-submission-network-0.16.3) lock
2018-01-23 09:36:20.537 UTC [container] lockContainer -> DEBU 13e84 got container (dev-peer0.fedcom.com-submission-network-0.16.3) lock
2018-01-23 09:36:20.538 UTC [dockercontroller] Start -> DEBU 13e85 Cleanup container dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.846 UTC [dockercontroller] stopInternal -> DEBU 13e86 Stopped container dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.846 UTC [dockercontroller] stopInternal -> DEBU 13e87 Kill container dev-peer0.fedcom.com-submission-network-0.16.3 (API error (409): {"message":"Cannot kill container: dev-peer0.fedcom.com-submission-network-0.16.3: Container a6e7f897996133c4b365841a866e0ac3e950bef2ea677b9fd399b4ad1c8960a5 is not running"}
)
2018-01-23 09:36:20.855 UTC [dockercontroller] stopInternal -> DEBU 13e88 Removed container dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.855 UTC [dockercontroller] Start -> DEBU 13e89 Start container dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.855 UTC [dockercontroller] createContainer -> DEBU 13e8a Create container: dev-peer0.fedcom.com-submission-network-0.16.3
2018-01-23 09:36:20.895 UTC [dockercontroller] createContainer -> DEBU 13e8b Created container: dev-peer0.fedcom.com-submission-network-0.16.3-f48ec2f1f3ee65eade2e3608f03831352fbf83f88d3627a0352f9c01e2575ba8
2018-01-23 09:36:22.055 UTC [dockercontroller] Start -> DEBU 13e8c Started container dev-peer0.fedcom.com-submission-network-0.16.3
```
This behaviour is witnessed across all the channels we have created on our fabric.
We can continue to ping the business network without issue, but if we leave the network inactive for approx 20 mins, we begin the cycle again.
Hi. I have successfully ran the multi org marbles-network example, but if I look at the BN container logs after starting the network I can see the following: https://pastebin.com/B8aVi6H8. Does anyone know what might cause this? Here is my command history: https://pastebin.com/jD76EnUw. I have also tested the network with composer-rest-server and it works, but I still don't like having so many unexplained errors.
[ ](https://chat.hyperledger.org/channel/composer?msg=C7vpWoizS23Q8ZqtC) @varunagarwal - are you importing and using a card that has a secret instead of a certificate?
When a card is created it has an ID and a 'one-time' secret. The first time it is used (after import) the secret is used and certificates are downloaded - after this the one-time secret can't be used. Is it possible you are importing and using a card withe a secret that can't be used? Try `composer card list --name admin@my-test-env` to see if the 'credentials are set /notset' at the bottom of the output.
How was your card created and imported?
```
userName: admin
description:
businessNetworkName: tata-test-env
roles:
- PeerAdmin
- ChannelAdmin
connectionProfile:
name: hlfv1
type: hlfv1
channel: composerchannel
secretSet: Secret set
credentialsSet: Credentials set
```
is what gets returned
```
return businessNetworkConnection.connect('admin@tata-test-env')
.then(() => {
return businessNetworkConnection.getParticipantRegistry('com.varun.participant.Person');
})
.then((participantRegistry) => {
return participantRegistry.get('Varun')
})
.then((person) => {
return businessNetworkConnection.issueIdentity('com.varun.participant.Person#'+person.name, person.name)
})
```
Is what I am trying to achieve by following https://hyperledger.github.io/composer/managing/identity-issue.html
@rthatcher ^^
Although the credentials folder in the card in my root folder is empty. That is probably the issue but I have no clue what to do. I followed the tutorial word by word. Card was created using
`composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tata-test-env`
`composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tata-test-env@1.0.0.bna --file networkadmin.card`
`composer card import --file networkadmin.card`
`composer network ping --card admin@tata-test-env`
Has joined the channel.
So for clarification:
1. In your sequence of commands you end with ping - I assume that ping was OK.
2. When you list that same card - you see 'Credentials set'
3. You will probably see certificates in a folder similar to: `ls ~/.composer/client-data/admin@tata-test-env/`
You could try creating a Participant and Issuing an Identity on the command line first to check that permissions work - then go back to the JS code
@varunagarwal - So for clarification:
1. In your sequence of commands you end with ping - I assume that ping was OK.
2. When you list that same card - you see 'Credentials set'
3. You will probably see certificates in a folder similar to: `ls ~/.composer/client-data/admin@tata-test-env/`
You could try creating a Participant and Issuing an Identity on the command line first to check that permissions work - then go back to the JS code
creating a participant works, issuing an identity returns the same error. My folder at admin@tata-test-env has an empty credentials folder, which is weird
The ping works fine.
while i run composer command
` composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
`
i faced error
```
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
```
and when get logs of container of dev-peer0.org1.example.com-tutorial-network-0.16.2
i found error
```
2018-01-23 12:53:31.929 UTC [shim] func1 -> ERRO 002 Received error from server: rpc error: code = Unknown desc = Error handling message, ending stream: transition canceled with error: peer will not accepting external chaincode connection name:"tutorial-network:0.16.2" (except in dev mode), ending chaincode stream
Error starting chaincode: rpc error: code = Unknown desc = Error handling message, ending stream: transition canceled with error: peer will not accepting external chaincode connection name:"tutorial-network:0.16.2" (except in dev mode)
```
while i run composer command
```
composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
```
i faced error
```
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
```
and when get logs of container of dev-peer0.org1.example.com-tutorial-network-0.16.2
i found error
```
2018-01-23 12:53:31.929 UTC [shim] func1 -> ERRO 002 Received error from server: rpc error: code = Unknown desc = Error handling message, ending stream: transition canceled with error: peer will not accepting external chaincode connection name:"tutorial-network:0.16.2" (except in dev mode), ending chaincode stream
Error starting chaincode: rpc error: code = Unknown desc = Error handling message, ending stream: transition canceled with error: peer will not accepting external chaincode connection name:"tutorial-network:0.16.2" (except in dev mode)
```
@rthatcher I redid everything, deleted the cards etc. and now it shows
```
userName: admin
description:
businessNetworkName: tata-test-env
roles: none
connectionProfile:
name: hlfv1
type: hlfv1
channel: composerchannel
secretSet: Secret set
credentialsSet: No Credentials set
Command succeeded
```
So I got to set the credentials now and proceed, right? Cause i don't know how.... sorry but im quite stuck on deployment :(
Everything else is doing good
[ ](https://chat.hyperledger.org/channel/composer?msg=SqyqkZSYxnSTL2uHw) @SimonOberzan hmm not sure - if you used the composer sample marbles-network you should have sufficient system ACLs to access as
@varunagarwal No - you've only got enrol secret. Do a `composer network ping --card admin@tata-test-env` and then it connects to the BN and downloads its cert/key and then the 'credentials are set'
@varunagarwal No - you've only got enrol secret. Do a `composer network ping --card admin@tata-test-env` and then it connects to the BN and downloads its cert/key and then the 'credentials are set' - if you're using that card elsewhere (another machine), make sure you export it (and remove the old .card and replace it with this exported version)
@mahoney1 No, I have just exported the template from web playground, upped the version to 0.17.0 and ran it on my blockchain
great , thanks.
I have previously tied the example BNA described in the tutorial and got same errors
I have previously tried the example BNA described in the tutorial and got same errors
[ ](https://chat.hyperledger.org/channel/composer?msg=PBvP876WyqhHEXpHz) @SimonOberzan would raise a request with your Composer version/Fabric info and a link to the network you used on GHub and of course the BN container logs - if its something that needs checking, then it needs looking at. can you post the output of `docker ps` pls?
@nasserfci hi - `docker ps` shows what ? Did the composer runtime install work as the prior command ?
to add to my chat above, I am able to keep the chaincode from restarting when using docker swarm, by scheduling a regular ping against it. This is not required when using a standalone docker host. I have also reduced the swarm to a single node, I still see the same behaviour. One difference between the standalone and swarm setup is the docker network driver used. Overlay is used for swarm, while bridge is used for standalone.
Clipboard - January 23, 2018 2:46 PM
Clipboard - January 23, 2018 2:46 PM
I have started my fabric network on 3 hosts using Cello
[ ](https://chat.hyperledger.org/channel/composer?msg=hhpz4vw9A3xQXPCaE) @SimonOberzan Is this in response to my chat?
No, to @mahoney1 :)
:-)
Has joined the channel.
Hi People am currently trying to put composer-rest-server onto Kubernetes but running into `Unable to read card directory: /home/composer/.composer/cards/` and `Error: ENOENT: no such file or directory, stat '/home/composer/.composer/cards/` Does anyone know of any tutorials of deploying the rest-server to Kubes
[ ](https://chat.hyperledger.org/channel/composer?msg=Sw9D5odpyDK9uv47q) @Calvin-J-Scott - are you hosting the Kubernetes service? or using it on IBM Cloud Container services?
When run in a standard Docker container a shared volume is used to share Business Network Cards between the host and the Container. The method for doing this is described in this document: https://hyperledger.github.io/composer/next-unstable/integrating/deploying-the-rest-server.html
You will need to achieve the same thing for your Kubernetes configuration
@rthatcher IBM Cloud Container services, and yeah i have been following the link it's just transferring the method of that to kubes configuration is there no documentation or example of this from a kubes perspective as kubes has several volume types hostpath, empty dir etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=6m5734QWTmToqRYhR) @rthatcher IBM Cloud Container services, and yeah i have been following the link it's just transferring the method of that to kubes configuration is there no documentation or example of this from a kubes perspective as kubes has several volume types hostpath, empty dir etc.
@Calvin-J-Scott - if you are on the IBM Container Service - can't you get the REST server created pretty much automatically ? https://ibm-blockchain.github.io/interacting/
[ ](https://chat.hyperledger.org/channel/composer?msg=M4vnydzkstgkrumkt) @rthatcher came across this was under the impression it was for hosting it all on Kube i just need the rest-server on it last time running the scripts i got a i/o timeout
@rthatcher i had looked at that before but was an old version of composer however mashing that and what i had already and it now works so thanks for the help :slight_smile:
is there a way to clearly check if a `registry.get` did not find the id without parsing the whole error message? I mean, I could use `exists`, but it seems a waste to do both. If I use a catch all error, I could be treating other kind of errors (like a network error) as not find. What I want is to use `registry.get` and throw a customized error message if the asset is not found. Is it possible?
is there a way to clearly check if a `registry.get` did not find the id without parsing the whole error message? I mean, I could use `exists`, but it seems a waste to do both. If I use a catch all error, I could be treating other kind of errors (like a network error) as not found. What I want is to use `registry.get` and throw a customized error message if the asset is not found. Is it possible?
@here Hello..In order to do some timing calculations, I wanted to calculate the time difference between the time when `tx is submitted` and `tx is committed to the block`. I was running composer over local fabric network. `hyperledger explorer` cannot help in this case as it doesnot show committed timestamp in the block. So there is workaround for this.There is application called `block-listener` (written in Go) which will generate block events whenever block is added to the ledger. one can subscribe to these events and note the time whenever event is occured. This can be used for timing calculation. Therefore, if you also want to do something related then this may help. Link https://stackoverflow.com/questions/48369186/how-to-get-timestamp-when-transaction-is-committed-or-completed-in-hyperledger
Has joined the channel.
Hi all. :) I am quite new to Hyperledger and I am starting off with Hyperledger Composer. I want to figure out how to adjust the configuration to deal with a lot of transactions being pushed to the blockchain?
@here Hi all. :) I am quite new to Hyperledger and I am starting off with Hyperledger Composer. I want to figure out how to adjust the configuration to deal with a lot of transactions being pushed to the blockchain?
Does this perhaps have anything to to with BatchSize and BatchTimeout?
Screen Shot 2018-01-23 at 8.23.21 PM.png
Screen Shot 2018-01-23 at 8.23.21 PM.png
[ ](https://chat.hyperledger.org/channel/composer?msg=7S6KysPdA3WjzQ2GT) @mahoney1 i solved the problem by run script byfn down but when
```
composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
```
it didn't work it take a long time and failed with error
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
```
and i don't know how but when i run the command again it successful
when i run docker ps
Has joined the channel.
hey all! is it possible to create coins with composer?
nvm! i found a source
Has joined the channel.
has anyone here successfully connected hyperledger composer to an active chain created using cello?
anyway, there's no documentation for composer identity request..
ownedOn has value \"2018-02-27T21:03:52.000Z\" (string) expected type DateTime
how do i do this date time from api
Has joined the channel.
Model violation in instance org.auction.Vehicle#1891 field firstRegistrationDate has value \"2018-01-24T06:04:44.904Z\" (object) expected type String
when i use retreive the data i posted i am getting same
Composer Team, We are facing issue with Composer Rest server APIs in correspondence to Composer Queries . It is giving time out issue.
These Composer Queries are extracting daily or Weekly data for one type of Asset , Which is getting almost 3k to 4k of data daily .
We have almost 4 type of Assets in the Model . Two type of Assets are getting daily volume as mentioned above.
For one of Asset extraction - we have a query as below Query
Select
i have also tried to add the index in correspondence to above query as this Added Index
{"index":{"fields": ["data.$class","data.$registryType","data.$registryId","data.AssetTimestamp "]}
in the couchdb .
but somehow , other queries are also stopped to respond back .
Please suggest , how to resolve this timeout issue from composer rest servers apis for queries or dealing these queries with better performance .
I have an asset X with 4 properties xp1, xp2, xp3, xp4.
I have 2 participants P1 & P2.
I would like Participant P1 to read only xp1 & xp3 properties whereas participant p2 can read/write xp2 property.
How do I write access control rule for this?
As per documentation, we can write rules at the Object level but not at the property.
How can this be achieved?
[ ](https://chat.hyperledger.org/channel/composer?msg=SNpWQZkRQJGPowmvn)
Hi All, is there a recent change in the composer network deploy command? I am getting message "missing required parrameter: networkAdmin, Card"
I got this after I updated composer-cli, composer-playground etc
Clipboard - January 24, 2018 1:30 PM
Some help required command used:
```composer network start -c PeerAdmin@hlfv1 -A admin -S adminpw -a filename.bna -f networkadmin.card```
[ ](https://chat.hyperledger.org/channel/composer?msg=m83uDjsqvKkd2DRQ5) @lindybrits hi there, would suggest to ask that on the #fabric channel -> its possible those can help yes -> see https://stackoverflow.com/questions/42756681/how-exactly-blocks-are-created-in-hyperledger-fabric and this thread may also help you -> https://lists.hyperledger.org/pipermail/hyperledger-fabric/2017-November/002074.html
@mahoney1 Sorry for the late reply. I added it using the POST in REST API of my transaction and the direct asset at localhost:3000 (where the REST server is deployed tentatively). Only the direct asset shows.
@mahoney1 Sorry for the late reply. I added it using the POST in REST API of my transaction and the direct asset at localhost:3000 (where the REST server is deployed tentatively). Only the direct asset shows when queried.
How do I ping to check my asset by CLI again?
~~How do I ping to check my asset by CLI again?~~ `composer network list --card {cardname}`
Using the CLI code above only shows me the one I directly POST to asset one only.
Using the CLI code above only shows me the one I directly POST to asset only.
[ ](https://chat.hyperledger.org/channel/composer?msg=sJtYv28LR8BbvzGW2) @IssaAmit check your transaction code (.js), are you perhaps defining a relationship where none exists in your model? or trying to reference a field/attribute that isn't defined in your model?
fyi @here - the Community call today is at 10am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-24th-January-2018
@mahoney1 Thanks. there was problem with logic.js
[ ](https://chat.hyperledger.org/channel/composer?msg=KqjZ4AeMwzCr5jhKh) @IssaAmit run command again i faced same problem and when run command again it work and i don't know why
Screen Shot 2018-01-24 at 11.01.45 AM.png
"Follow the Building Your First Network tutorial, ensuring that you use the GitHub repository cloned in the previous step. You must not clone and use the Hyperledger Fabric version of the GitHub repository as it is currently missing changes that are required for this tutorial."
what are the missing changes that are missing from the fabric version github repo?
Clipboard - January 24, 2018 5:30 PM
Clipboard - January 24, 2018 5:30 PM
@mahoney1 thanks for the reply! I appreciate! :)
On a specific composer note - I have read about the "timeout" option in the connection profile that is limited to 45s for a transaction, where can I change this restriction?
[ ](https://chat.hyperledger.org/channel/composer?msg=utx8zJxKuSrvsJ4cK) @mahoney1 is this to be found in "connection.json"? I have searched for this file, yet I can't seem to find it.
[ ](https://chat.hyperledger.org/channel/composer?msg=HyELdKqrBay8vATTy) @praveencastelino currently not possible for property (field) based access control in ACL runtime -> https://github.com/hyperledger/composer/issues/983
[ ](https://chat.hyperledger.org/channel/composer?msg=zJe3X58JE5w2PhpMS) @lindybrits timeout in the connection profile is an optional property which controls the timeout for each request made to peers and orderers.
[ ](https://chat.hyperledger.org/channel/composer?msg=GPNWGvQPLRfg6svJE) @pichayuthk There are a few challenges of running the MultiOrg setup on 2 separate physical machines/servers, beyond the scope of this channel and the minimal changes you have made - these are:.
1 - Initial setup and using the same generated Crypto material.
2 - Networking - making sure the containers on the separate machines know the addresses of the other containers and can connect. Network planning and testing is required at the beginning.
3 - Create/modify startup scripts for multihost startup - this may help you https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602
@lindybrits yes it is.
[ ](https://chat.hyperledger.org/channel/composer?msg=BbkedCZ7tdrE2JDAj) @nasserfci 1. git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git
2. curl -sSL https://goo.gl/byy2Qj | bash -s 1.0.5
3. cd first-network
then follow the steps as you've seen in the multi-org tutorial
4. ./byfn.sh -m generate
5. ./byfn.sh -m up -s couchdb -a
etc
etc
[ ](https://chat.hyperledger.org/channel/composer?msg=Rpx45eH5oFeLFf3ze) @rhansharief 1. git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git
2. curl -sSL https://goo.gl/byy2Qj | bash -s 1.0.5
3. cd first-network
then follow the steps as you've seen in the multi-org tutorial
4. ./byfn.sh -m generate
5. ./byfn.sh -m up -s couchdb -a
etc
etc
[ ](https://chat.hyperledger.org/channel/composer?msg=u8k8w5RjDfhugrxcL) @mahoney1 thank you for the reply. The steps in the tutorial works but I'm trying to integrate composer in the fabric network generated by cello but i'm still not successful. I'm just wondering if the said "missing changes that are required for this tutorial" have something to do with it
[ ](https://chat.hyperledger.org/channel/composer?msg=BbkedCZ7tdrE2JDAj) @nasserfci yes it is a little strange, in that the first request TIMED OUT and the second succeeded. you can do a `composer network list -c alice@tutorial-network` to see if you can interrogate the business network and its resources.
[ ](https://chat.hyperledger.org/channel/composer?msg=XJp5mcZDoKiATeEjn) @rhansharief no, the scope for this multi-org here is for a local / localhost environment, sorry I can't help with the Cello environment :)
[ ](https://chat.hyperledger.org/channel/composer?msg=2rC9YCFTpR8rMZq6a) @mahoney1 no problem. thank you for your response. i appreciate it
[ ](https://chat.hyperledger.org/channel/composer?msg=D3LQJWpzdP4Ts47bG) @nasserfci please raise an issue, this may need investigating, in that it should work the first time and no on the second follow-up submission (following in succession)
@mahoney1 is there any related Issue about comunication failure (rpc error) after N hour in idleness? My hf network remained idle for 15 hours and I could'nt update my business network - timeout exception.
Solution: restart peers containers.
@vsadriano I've been havin similar issues. I have chaincode timesout after approx 20 mins
@julian 20' in idleness?
@vsadriano I have been experiencing similar issues. I find chaincode timesout, and needs to restart after approx 20 minutes
It's a very short time window.
If I ping the business network every 5 minutes, I'm able to keep it alive. Please note this is on a docker swarm setup. I don't see the issue on a standalone docker host
I received this error after hours in idleness only.
Well! I've orderer, ca and cl@vsadriano on Kubernetes environment and all the peers are external. But I'll try enable keep alive on peers containers.
*cli
Clipboard - January 24, 2018 5:11 PM
@vsadriano I've noted others have introduced keep-alive pings to their chaincode: https://github.com/project-ubin/ubin-fabric
I'm going to do something similar. You could test your scenario with a simple composer network ping
It's new for me. I'll try now. Thanks a lot!
Clipboard - January 24, 2018 5:18 PM
Please any one help me.
Has joined the channel.
Please, run:
```shell
composer card list
```
[ ](https://chat.hyperledger.org/channel/composer?msg=3LnBcpif6zjAP9PNZ) @jon_s - there is little context here. Perhaps explicitly setting the type of your variables would help or converting from string to date before using. You could also try some debugging with `typeof`
@wininani where is the endorsement policy?I think you ommited this parameter on "composer network start...".
```shell
composer network start -c {HYPERLEDGER_FABRIC_ADMIN_CARD} -a ${BUSINESS_NETWORK_BNA_FILE} -o endorsementPolicyFile=${ENDORSEMENT_POLICY_FILE} -A ${BUSINESS_NETWORK_ADMIN} -C ${BUSINESS_NETWORK_ADMIN_CERT_PATH}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=XGsfBdfvH8BZRE7Js) @vsadriano thankyou for your reply actually we tried the composer developer tutorial before but now we are running the same tutorial for multi peer by the way we achieved the multi peer we never before used the endorsement policy file .if u have that file please share with me.thankyou and also could you tell how to use that file
@wininani I'll send in pvt...
[ ](https://chat.hyperledger.org/channel/composer?msg=vyDFMTZ9rATdi79ou) @wininani - you are having an issue with 'enroll' by the look of the error, so I would suggest looking at the log file of the CA container you are using.
But there's an example in https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html.
[ ](https://chat.hyperledger.org/channel/composer?msg=offgrtQ2eMFcMk9JS) @rthatcher
Clipboard - January 24, 2018 5:41 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=HyELdKqrBay8vATTy) can anyone help me answer this question?
@praveencastelino You can write transactions for each Participant Lets say P1 can run and the event emits the xp1 & xp3 properties
Also only P1 can run that transac
[ ](https://chat.hyperledger.org/channel/composer?msg=JjAaaHHyi4Gs2jeBi) @praveencastelino - I think this previous chat thread answers your question:
https://chat.hyperledger.org/channel/composer?msg=EvA3EoYkfQnAEpAdc
[ ](https://chat.hyperledger.org/channel/composer?msg=pT2NCASFmye5dnDAr) @wininani - I don't think the timestamp of the log of the CA lines up with the time you issued the commands? Perhaps the command can't see or connect to the CA on the other machine (assuming it is running).
Generally, supporting custom built Fabrics is beyond the scope of this channel - perhaps building the Fabric and proving it with a standard Fabric Sample would be a good exercise before introducing Composer to the equation.
$ composer identity issue -u newadmin -a org.hyperledger.composer.system.NetworkAdmin#newadmin -c admin@claim-network
Issue identity and create Network Card for: newadmin
:heavy_multiplication_x: Issuing identity.
This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
the above error occur while issuing a new ID, how I can solve this ?
@sebastian.paul try removing admin card and then create and import new admin card It worked out for me
@SudheerKaspa Thank you , let me try that way
Has joined the channel.
Hello, I am a new user, testing Hyperledger Farbric and Composer in order to check if it fits to one new project of my company. I am coming with some technical questions. Hope this is the right place ....
First question is about attachment support, how to add file ( pdf, pictures, whatever ) in an asset ? any information about size, data type, ... is welcome, Thanks
hi @TBigjohn welcome! you'll find quite a few answers for your project here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/master/knowledge.md - eg. for PDF question see here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/master/knowledge.md#information_source--miscellaneous-items---fabric-uncategorised - the best thing to do is read the Composer docs, concepts and info on architecture to get the fit and also see the answers are here (if you haven't looked there already :-) ) -> https://hyperledger.github.io/composer/introduction/introduction.html
hi @TBigjohn welcome! you'll find quite a few answers for your project here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/master/knowledge.md - eg. for PDF question see here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/master/knowledge.md#information_source--miscellaneous-items---fabric-uncategorised - the best thing to do is read the Composer docs, concepts and info on architecture to get the fit and also see if the answers you seek are here (if you haven't looked there already :-) ) -> https://hyperledger.github.io/composer/introduction/introduction.html
Has joined the channel.
@mahoney1 Thanks I will check those links. Yes I already had a look on the github but apparently not at the right place. I already post there the following question : https://github.com/hyperledger/composer/issues/3204
I you have a chance to have a look, Thank you very much !
[ ](https://chat.hyperledger.org/channel/composer?msg=n6QRPCoJ3tkmbpZsz) @TBigjohn hi there - the problem is likely that the skeleton web app (Angular) does not show the asset (you say you created through /POST, through the REST API) without manually refreshing the browser. You should be able to see the asset then - or else use a /GET on the Asset in REST to see the assets you've created.
[ ](https://chat.hyperledger.org/channel/composer?msg=n6QRPCoJ3tkmbpZsz) @TBigjohn hi there - the problem is likely that the skeleton web app (Angular) does not show the asset without manually refreshing the browser (ie that you created through /POST, in the REST API) You should be able to see the asset then in the skeleton Angular app - or else use a /GET on the Asset in REST to see the assets you've created.
[ ](https://chat.hyperledger.org/channel/composer?msg=55ok8ALDcqmmobwJD) @mahoney1 Hi, no the problem is not about browser refresh for sure. The problem is more to check if I am connected on the same application version on both side. Can the problem be about access rights ? Thanks
@TBigjohn you mean from Composer playground?Sure, its possible - what network have you deployed? - what does the permissions.acl show ? But you've been able to /POST and /GET on the REST APIs, so not enough info to know.
[ ](https://chat.hyperledger.org/channel/composer?msg=zWyKy57u2SJvtRA23) I am using a local version of the playground ( responding on localhost:8080/test on my machine. From ther I exported a bna and than start the rest server.
[ ](https://chat.hyperledger.org/channel/composer?msg=zWyKy57u2SJvtRA23) I am using a local version of the playground ( responding on localhost:8080/test on my machine. From ther I exported a bna and than start the rest server.
is it ok to submit a transaction from inside another transaction?
[ ](https://chat.hyperledger.org/channel/composer?msg=u4jzZW9KbeEiM42y6) @TBigjohn what do you see when you do a /GET of the Asset registry - do you see the asset you created? If so, and say you're using the same business network card when connected to the same business network in a local Playground - you should see the same results in theory.
I'm trying to change my chaincode to use composer 0.17.1 but something goes wrong. The network start runs without error, but when I try to ping using admin card I got an error:
``` Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]
Command failed
```
the Unsupported certificate purpose error should be something related with connection.json? I changed it to run using composer 0.17.1
On my docker some error appears too:
```018-01-24T14:28:28.622Z [7a7ac408] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:goledger.transaction.AdministerVaccine' in collection with ID '$sysregistries' does not exist
2018-01-24T14:28:28.646Z [7a7ac408] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:goledger.transaction.DiscardVaccine' in collection with ID '$sysregistries' does not exist
2018-01-24T14:28:28.683Z [7a7ac408] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'org.hyperledger.composer.system.NetworkAdmin' in collection with ID 'Asset:org.hyperledger.composer.system.ParticipantRegistry' does not exist
2018-01-24T14:28:28.684Z [7a7ac408] [ERROR ] @JS : Resolver :resolveRelationship() Failed to resolve relationship [object Object]
2018-01-24T14:28:28.688Z [7a7ac408] [INFO ] @JS : IdentityManager :
I need to do changes in my models to use the new version?
Do I need change my chaincode models to use the new version?
@vitorduarte you need to deploy your bna to Fabric 1.1 preview environment and set up your Composer environment accordingly -> https://hyperledger.github.io/composer/next/installing/development-tools.html. Not sure if you've done that. Connection profiles in 0.17 are different to 0.16.x of Composer - see https://hyperledger.github.io/composer/next/reference/connectionprofile.html
@vitorduarte you need to deploy your bna to 'Fabric 1.1 preview' based Fabric environment and set up your Composer environment accordingly -> https://hyperledger.github.io/composer/next/installing/development-tools.html. Not sure if you've done that. Connection profiles in 0.17 are different to 0.16.x of Composer - see https://hyperledger.github.io/composer/next/reference/connectionprofile.html
@vitorduarte you need to deploy your bna to 'Fabric 1.1 preview' based Fabric environment and set up your Composer environment accordingly -> https://hyperledger.github.io/composer/next/installing/development-tools.html. Not sure if you've done that. Connection profiles in 0.17 are different to 0.16.x of Composer - see https://hyperledger.github.io/composer/next/reference/connectionprofile.html - you possibly need this also near the end of your `connection.json` - eg ```"certificateAuthorities": {
"ca.org1.example.com": {
"url": "https://localhost:7054",
"caName": "ca-org1",
"httpOptions": {
"verify": false
}
},
}``` (for example)
@vitorduarte you need to deploy your bna to 'Fabric 1.1 preview' based Fabric environment and set up your Composer environment accordingly -> https://hyperledger.github.io/composer/next/installing/development-tools.html. Not sure if you've done that. Connection profiles in 0.17 are different to 0.16.x of Composer - see https://hyperledger.github.io/composer/next/reference/connectionprofile.html . Also - its likely it is to do with the verify of the CA eg. if you have modified the `connection.json` - need to add something like this (below) to the end of the ..json file ie `connection.json` - eg ```"certificateAuthorities": {
"ca.org1.example.com": {
"url": "https://localhost:7054",
"caName": "ca-org1",
"httpOptions": {
"verify": false
}
},
}``` (for example)
@vitorduarte you need to deploy your bna to 'Fabric 1.1 preview' based Fabric environment and set up your Composer environment accordingly -> https://hyperledger.github.io/composer/next/installing/development-tools.html. Not sure if you've done that. Connection profiles in 0.17 are different to 0.16.x of Composer - see https://hyperledger.github.io/composer/next/reference/connectionprofile.html . Also - its likely it is to do with the verify of the`certificateAuthorities` stanza eg. if you have modified the `connection.json` - need to add something like this (below) to the end of the ..json file ie `connection.json` - eg ```"certificateAuthorities": {
"ca.org1.example.com": {
"url": "https://localhost:7054",
"caName": "ca-org1",
"httpOptions": {
"verify": false
}
},
}``` (for example)
@vitorduarte you need to deploy your bna to 'Fabric 1.1 preview' based Fabric environment and set up your Composer environment accordingly -> https://hyperledger.github.io/composer/next/installing/development-tools.html. Not sure if you've done that. Connection profiles in 0.17 are different to 0.16.x of Composer - see https://hyperledger.github.io/composer/next/reference/connectionprofile.html . Also - its likely it is to do with the verify of the`certificateAuthorities` stanza eg. if you have modified the `connection.json` - need to add something like this (below) to the end of the ..json file ie `connection.json` - eg ```"certificateAuthorities": {
"ca.org1.example.com": {
"url": "https://localhost:7054",
"caName": "ca-org1",
"httpOptions": {
"verify": false
}
},
}``` (for example)
[ ](https://chat.hyperledger.org/channel/composer?msg=reimu2mPetSSFuJFt) @lucasdf No - a transaction cannot presently be called from another transaction. In Hyperledger Fabric (which Hyperledger Composer is currently using), However, a transaction processor can call other functions to allow for code modularisation, but it will only be registered as a single transaction request, in the transaction registry.
Has joined the channel.
Hi all.
I'm used new version the fabric x86_64-1.1.0-preview and composer v 0.17.1
I have some errors, and I do not know how to fix them.
Earlier on version 1.0.5 of the fabric and composer 0.16.3 everything was fine.
Immediately I will mark the problem only with composer, because Fabric itself works perfectly.
I can create channels and connect peers, as well as execute chaincode.
But if I want to deploy (runtime) a network using a composer, I get the error below.
Please, help me!
I put some files in the message ->
After run composer command
`
composer runtime install -c PeerAdmin@roochey-network-org1 -n roochey-network
`
OUTPUT:
`
Installing runtime for business network roochey-network. This may take a minute...E0124 19:00:04.542501000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.542548000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.542574000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.542583000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer0.org1.a100.popeye.ws:7053'
E0124 19:00:04.542590000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
E0124 19:00:04.543210000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.543224000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.543239000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.543246000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer1.org1.a100.popeye.ws:8053'
E0124 19:00:04.543253000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
E0124 19:00:04.571961000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.571988000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.572004000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.572011000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer0.org1.a100.popeye.ws:7051'
E0124 19:00:04.572017000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
E0124 19:00:04.572522000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.572534000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.572546000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.572552000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer1.org1.a100.popeye.ws:8051'
E0124 19:00:04.572557000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
⠴ Installing runtime for business network roochey-network. This may take a minute...
`
My connection-org1.json
https://pastebin.com/v3aj3fhm
Hi all.
I'm used new version the fabric x86_64-1.1.0-preview and composer v 0.17.1
I have some errors, and I do not know how to fix them.
Earlier on version 1.0.5 of the fabric and composer 0.16.3 everything was fine.
Immediately I will mark the problem only with composer, because Fabric itself works perfectly.
I can create channels and connect peers, as well as execute chaincode.
But if I want to deploy (runtime) a network using a composer, I get the error below.
Please, help me!
I put some files in the message ->
After run composer command
`composer runtime install -c PeerAdmin@roochey-network-org1 -n roochey-network`
OUTPUT:
`
Installing runtime for business network roochey-network. This may take a minute...E0124 19:00:04.542501000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.542548000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.542574000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.542583000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer0.org1.a100.popeye.ws:7053'
E0124 19:00:04.542590000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
E0124 19:00:04.543210000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.543224000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.543239000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.543246000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer1.org1.a100.popeye.ws:8053'
E0124 19:00:04.543253000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
E0124 19:00:04.571961000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.571988000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.572004000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.572011000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer0.org1.a100.popeye.ws:7051'
E0124 19:00:04.572017000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
E0124 19:00:04.572522000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.572534000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.572546000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.572552000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer1.org1.a100.popeye.ws:8051'
E0124 19:00:04.572557000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
⠴ Installing runtime for business network roochey-network. This may take a minute...
`
My connection-org1.json
https://pastebin.com/v3aj3fhm
Hi all.
I'm used new version the fabric x86_64-1.1.0-preview and composer v 0.17.1
I have some errors, and I do not know how to fix them.
Earlier on version 1.0.5 of the fabric and composer 0.16.3 everything was fine.
Immediately I will mark the problem only with composer, because Fabric itself works perfectly.
I can create channels and connect peers, as well as execute chaincode.
But if I want to deploy (runtime) a network using a composer, I get the error below.
Please, help me!
I put some files in the message ->
After run composer command
`composer runtime install -c PeerAdmin@roochey-network-org1 -n roochey-network`
OUTPUT:
`Installing runtime for business network roochey-network. This may take a minute...E0124 19:00:04.542501000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.542548000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.542574000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.542583000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer0.org1.a100.popeye.ws:7053'
E0124 19:00:04.542590000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
E0124 19:00:04.543210000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.543224000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.543239000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.543246000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer1.org1.a100.popeye.ws:8053'
E0124 19:00:04.543253000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
E0124 19:00:04.571961000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.571988000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.572004000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.572011000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer0.org1.a100.popeye.ws:7051'
E0124 19:00:04.572017000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
E0124 19:00:04.572522000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.572534000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.572546000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.572552000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer1.org1.a100.popeye.ws:8051'
E0124 19:00:04.572557000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
⠴ Installing runtime for business network roochey-network. This may take a minute...
`
My connection-org1.json
https://pastebin.com/v3aj3fhm
Hi all.
I'm used new version the fabric x86_64-1.1.0-preview and composer v 0.17.1
I have some errors, and I do not know how to fix them.
Earlier on version 1.0.5 of the fabric and composer 0.16.3 everything was fine.
Immediately I will mark the problem only with composer, because Fabric itself works perfectly.
I can create channels and connect peers, as well as execute chaincode.
But if I want to deploy (runtime) a network using a composer, I get the error below.
Please, help me!
I put some files in the message ->
After run composer command
`composer runtime install -c PeerAdmin@roochey-network-org1 -n roochey-network`
OUTPUT:
`Installing runtime for business network roochey-network. This may take a minute...E0124 19:00:04.542501000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.542548000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.542574000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.542583000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer0.org1.a100.popeye.ws:7053'
E0124 19:00:04.542590000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
E0124 19:00:04.543210000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.543224000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.543239000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.543246000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer1.org1.a100.popeye.ws:8053'
E0124 19:00:04.543253000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
E0124 19:00:04.571961000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.571988000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.572004000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.572011000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer0.org1.a100.popeye.ws:7051'
E0124 19:00:04.572017000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
E0124 19:00:04.572522000 140736281162560 ssl_transport_security.c:584] Could not load any root certificate.
E0124 19:00:04.572534000 140736281162560 ssl_transport_security.c:1297] Cannot load server root certificates.
E0124 19:00:04.572546000 140736281162560 security_connector.c:857] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0124 19:00:04.572552000 140736281162560 secure_channel_create.c:112] Failed to create secure subchannel for secure name 'peer1.org1.a100.popeye.ws:8051'
E0124 19:00:04.572557000 140736281162560 secure_channel_create.c:143] Failed to create subchannel arguments during subchannel creation.
⠴ Installing runtime for business network roochey-network. This may take a minute...`
My connection-org1.json
https://pastebin.com/v3aj3fhm
@SergeySadon there are mistakes in your connection profile. Specifically the ones where you specify the tls certs.
```
"tlsCACerts": {
"pem": "./keys/peer0.org1.a100.popeye.ws-ca.crt"
}
```
the pem field means you should be embedding the certificate pem text here, not a path.
Some information about the new format which is owned by the fabric team now is here
https://fabric-sdk-node.github.io/tutorial-network-config.html
the reason you might want to use an embedded pem string rather than a path is that these profiles are part of business network cards and for these cards to be portable you cannot have absolute paths in your connection profile otherwise you can break portability
[ ](https://chat.hyperledger.org/channel/composer?msg=QgbXSPeJcitrbxQv3) @mahoney1 I did this changes but still don't working, but now the error is ```Error: Error trying login and get user Context. TypeError: Cannot read property 'registerChaincodeEvent' of undefined
```
[ ](https://chat.hyperledger.org/channel/composer?msg=QgbXSPeJcitrbxQv3) @mahoney1 I did this changes and still don't working, but now the error is ```Error: Error trying login and get user Context. TypeError: Cannot read property 'registerChaincodeEvent' of undefined
```
My `connection.json`: https://pastebin.com/VnDkAgms
I change this "pem" values with the certificates, preserving the newlines, as I saw in docs...
``` "pem": "-----BEGIN CERTIFICATE-----\netc\n-----END CERTIFICATE-----\n"```
maybe this is a problem with certification generation, i'm verifying if my `cryptogen` and `configtxgen` version are correct
[ ](https://chat.hyperledger.org/channel/composer?msg=BLWfG6Mog8oy7bsJD) it doesn't work too :/
does anyone know where I could get a sample package.json for the composer v0.17.1 pre release?
getting a weird error when trying to boot up composer-rest-server, which I think is a dependency issue:
Error: Failed to load connector module "composer-connector-undefined" for connection type "undefined".
i am also getting errors! when I try to install the CLI tools I keep throwing a error codes similar to this: npm ERR! stack: 'Error: EACCES: permission denied, access \'/usr/local/lib/node_modules\'',
any help guys ?
Has joined the channel.
@vitorduarte there are a couple of mistakes in your connection profile. You have specified the event urls properties as `eventURL` when in fact they should be `eventUrl`
How to test query in composer online playground
getting the following error while working the developer tutorial:
*Type ChangeAssetValue is not defined in namespace org.acme.biznet*
All files are exactly as indicated in tutorial -- what is wrong or missing?
More specifically, the developer tutorial at Step Two, says to completely update the logic.js file with the contents listed in the tutorial. Should that read *add* the contents instead of replacing all of the logic.js file? The exact error is this -- and there is no ChangeAssetValue in the example in the developer tutorial -- but there is one in the model file generated via yo:
'TypeNotFoundException: Type ChangeAssetValue is not defined in namespace org.acme.biznet
Command failed'
'inline_code'TypeNotFoundException: Type ChangeAssetValue is not defined in namespace org.acme.biznet
Command failed
Update: the developer tutorial where the user defines the `.cto` file is incorrect and the transaction code section in that file should read
```transaction ChangeAssetValue {
--> Commodity commodity
--> Trader newOwner
}'''
Specifically `Trader` should be changed to `ChangeAssetValue`
With this change I was able to get `composer archive create -t dir -n .` to run successfully
Update: the developer tutorial where the user defines the `.cto` file is incorrect and the transaction code section in that file should read
```transaction ChangeAssetValue {
--> Commodity commodity
--> Trader newOwner
} ```
Specifically `Trader` should be changed to `ChangeAssetValue`
With this change I was able to get `composer archive create -t dir -n .` to run successfully
Does composer support The-relationship query and nested query?
Getting this error while deploying the bna file in different machine peers -
Error: Error trying to instantiate composer runtime. Error: Failed to receive commit notification for transaction 'a3aa9ce3a060dd7f12d06a1ddc180bcb5b5aade784336f47f347971e1190d9cf' within the timeout period
Hi guys. Could you clarify for me a few technical details regarding transactions commit?
Questions:
1. Executing a transaction (e.g using the REST interface) returns a transactionID in the response. But that transaction is not committed yet to the blockchain, as HL still needs to run the consensus mechanism, right?
2. If a transaction is calling emit to trigger events,the events are only sent upon successful execution of the transaction. Is the event sent only after transaction is committed to the blockchain?
3. For applications that have to keep in sync with information wirrten in the blockchain, is it enough to keep listening to the events? Assuming that asset modifications are always done via transactions...
[ ](https://chat.hyperledger.org/channel/composer?msg=9iwxqrrYFJ2TgeNnB) @CT123 could be your generator (after generating the skeleton biz network) is not up to date as shown here -> https://github.com/hyperledger/composer/issues/2929 - the network as-is should would fine.,(without changes to model file)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=jGQHzNC479wHhv6eN) @ShaunC - This is an environmental issue you have with the configuration of npm - you do not have the permission to write to the folder npm is configured to use.
You could try this `npm config set prefix /home/
Hi, I need to sanitise input for a composer query, any thoughts about the characters I should strip?
[ ](https://chat.hyperledger.org/channel/composer?msg=LkEr9cGkJg9XJrByr) @mvaibhavshah - I would think this is a networking issue with containers not able to find/connect to eachother.
Has joined the channel.
while submitting a transaction "ReferenceError: org is not defined" is encountered
could someone help , please
[ ](https://chat.hyperledger.org/channel/composer?msg=gkB7Ad2J6cy3nSbrj) @davidkel Thanks...I replace "pem" with "path" for tests, and it works.
But I have another problem when I start compositing networks, and then I see errors.
I have 3 organizations and 2 peers in each organization, 1 CA per one organizer, 1 couchdb per participant, 1 customer, 1 kafka, 1 zookeeper.
I also tried to change the timeouts, but this does not change anything.
Each organization on different servers under Ubuntu management 16.04
If you do all the same, but only have 1 feast per organization, everything works well.
Error --->
`Starting business network from archive: roochey-network@0.0.1.bna
Business network definition:
Identifier: roochey-network@0.0.1
Description: Roochey buisness network
Processing these Network Admins:
userName: admin
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer0.org1.a100.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer1.org1.a100.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer0.org2.b200.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer1.org2.b200.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer0.org3.c300.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer1.org3.c300.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Command failed`
[ ](https://chat.hyperledger.org/channel/composer?msg=gkB7Ad2J6cy3nSbrj) @davidkel Thanks...I replace "pem" with "path" for tests, and it works.
But I have another problem when I start composer networks, and then I see errors.
I have 3 organizations and 2 peers in each organization, 1 CA per one organizer, 1 couchdb per participant, 1 customer, 1 kafka, 1 zookeeper.
I also tried to change the timeouts, but this does not change anything.
Each organization on different servers under Ubuntu management 16.04
If you do all the same, but only have 1 feast per organization, everything works well.
Error --->
`Starting business network from archive: roochey-network@0.0.1.bna
Business network definition:
Identifier: roochey-network@0.0.1
Description: Roochey buisness network
Processing these Network Admins:
userName: admin
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer0.org1.a100.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer1.org1.a100.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer0.org2.b200.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer1.org2.b200.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer0.org3.c300.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer1.org3.c300.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Command failed`
[ ](https://chat.hyperledger.org/channel/composer?msg=gkB7Ad2J6cy3nSbrj) @davidkel Thanks...I replace "pem" with "path" for tests, and it works.
But I have another problem when I start composer networks, and then I see errors.
I have 3 organizations and 2 peers in each organization, 1 CA per one organizer, 1 couchdb per participant, 1 customer, 1 kafka, 1 zookeeper.
I also tried to change the timeouts, but this does not change anything.
Each organization on different servers under Ubuntu management 16.04
If you do all the same, but only have 1 peer per organization, everything works well.
Error --->
`Starting business network from archive: roochey-network@0.0.1.bna
Business network definition:
Identifier: roochey-network@0.0.1
Description: Roochey buisness network
Processing these Network Admins:
userName: admin
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer0.org1.a100.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer1.org1.a100.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer0.org2.b200.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer1.org2.b200.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer0.org3.c300.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Response from attempted peer comms was an error: Error: timeout expired while starting chaincode roochey-network:0.17.1(networkid:dev,peerid:peer1.org3.c300.popeye.ws,tx:e41a604a972c6942e8d8ae71b9674cb209648fe21c7cd665e64bcb73055ca3f0)
Command failed`
@SergeySadon looks like you are going to have to look at the peer logs and the chaincode logs to find out what the problem is
lshcpoc (2).zip
could someone help me to resolve problem , please
[ ](https://chat.hyperledger.org/channel/composer?msg=eRd6HMevaigt9nAk6) @davidkel Last strings logs from 1 peer https://pastebin.com/PRmrrRZf
In the broad gulls there are no errors at all, it will stop at this moment and everything, then just something awaits. The same in any other feast.
I checked all the containers everywhere, everything hangs and nothing happens, it is not written more correctly in the logs.
[ ](https://chat.hyperledger.org/channel/composer?msg=eRd6HMevaigt9nAk6) @davidkel Last strings logs from 1 peer https://pastebin.com/PRmrrRZf
In the broad gulls there are no errors at all, it will stop at this moment and everything, then just something awaits. The same in any other peer.
I checked all the containers everywhere, everything hangs and nothing happens, it is not written more correctly in the logs.
@davidkel could you help, please
@SergeySadon If you can't determine the cause from the logs then the only thing I can suggest is trying on one of the fabric channels, perhaps #fabric or #fabric-peer-endorser-committer. I would recommend also checking your chaincode logs as well.
@SergeySadon If you can't determine the cause from the logs then the only thing I can suggest is trying on one of the fabric channels, perhaps #fabric or #fabric-peer-endorser-committer . I would recommend also checking your chaincode logs as well.
[ ](https://chat.hyperledger.org/channel/composer?msg=jR78mBphckF8hMn6m) @Arindam not available in online playground presently, would suggest to install local playground in minutes and deploy network (and query file) there -> https://hyperledger.github.io/composer/installing/using-playground-locally
[ ](https://chat.hyperledger.org/channel/composer?msg=Mmpvsz6PEQjL2uD3z) @Krishnapv you haven't matched your Transaction name, with how you are referencing it in your transaction code in function #1 (you have incidentally defined it correctly in f#2) - I've just changed the name in this snippet below - to match - but you will likely want to make the transaction name + reference all in lowercase like you did in f#2 - but I'm fairly sure that's the reason you get the error (not tested). ```/**
*
* @param {org.patdrug.PublishPrescription} PublishPrescription
* @transaction
*/
function PublishPrescription(PublishPrescription) {
console.log(org.patdrug);
PublishPrescription.asset.PrescriptionState = PublishPrescription.state;
return getAssetRegistry('org.prescription').then(function(assetRegistry) {
return assetRegistry.update(PublishPrescription.asset);
});
}
/**
*
* @param {org.patdrug.PresValidate} presvalidate
* @transaction
*/
function PresValidate(presvalidate) {
presvalidate.asset.PrescriptionState = presvalidate.state;
console.log('PresValidate');
return getAssetRegistry('org.prescription').then(function(assetRegistry) {
return assetRegistry.update(presvalidate.asset);
});
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=wu37dxgCgaC9uMgC7) @mahoney1
Thanks for the response
I can see cto files are placed in model folder and js files are present in lib folder, but can not find any documentation where I should place the queries.qry file... please help
[ ](https://chat.hyperledger.org/channel/composer?msg=3863EuME7keKaNyJt) @Arindam no problem. queries.qry file is at the top level - same as where permissions.acl file is located (for example)
[ ](https://chat.hyperledger.org/channel/composer?msg=5hWLkrs7pbW5QNoCn) @lucasdf yes, absolutely - see some examples here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#filters and specifically the example 'resolve specific an asset relationship' bit - hopefully this helps
[ ](https://chat.hyperledger.org/channel/composer?msg=evnfYHW6kRBS6kprn) @mahoney1
Thanks much, so I am putting in the same place where model and lib file is present
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=nYEkH6HT8cSkvwKy8) @davidkel That's it! Thanks!
Has joined the channel.
THank you @mahoney1 apprciate your help! its working now
Has joined the channel.
Hi. I was performing tutorial for deploying blockchain business network on hyperledger fabric for single organisation. I have successfully installed hyperledger composer on hyperledger fabric peer nodes. After that when i'm trying to run that blockchain error its throwing error that "Error: Archive file tutorial-network.bna does not exist.". The bna file is not getting created. Can anyone help me with this?
Hi. I was performing tutorial for deploying blockchain business network on hyperledger fabric for single organisation. I have successfully installed hyperledger composer on hyperledger fabric peer nodes. After that when i'm trying to start blockchain network its throwing error - "Error: Archive file tutorial-network.bna does not exist.". The bna file is not getting created. Can anyone help me with this?
[ ](https://chat.hyperledger.org/channel/composer?msg=k3etYJ7cWSbzMoPyy) @Pranoti - this tutorial assumes that you have completed the developer tutorial https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
[ ](https://chat.hyperledger.org/channel/composer?msg=DnzXJjutMQforQDgv) @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=DnzXJjutMQforQDgv) @mahoney1 Please see my post from 5:34 yesterday -- evidently it's *not* the logic.js file but the .cto file that is incorrect in the documentation. When I made the change listed, the `composer archive` command ran and succeeded. But I will update the generator -- thanks much for the link.
hi everyone. When I try to execute the teardownFabric.sh , it fail with this error :
```ERROR: network composer_default has active endpoints```
What can I do ?
@CorentinPacaud these 3 commands should work
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
```
@davidkel thx, but it doesn't work. docker ps give no result
and I still have this error
Thsi cmd has worked : systemctl restart docker
This cmd worked : systemctl restart docker
Hi! Currently, I can use ` inside a filter to resolve the relationships. Can add a `where` clause inside the filter to filter it based on the resolved relationships?
Hi! Currently, I can use `include:resolve` inside a filter to resolve the relationships. Can add a `where` clause inside the filter to filter it based on the resolved relationships?
[ ](https://chat.hyperledger.org/channel/composer?msg=5hWLkrs7pbW5QNoCn) @lucasdf yes, absolutely - see some examples here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#filters and specifically the example 'resolve specific an asset relationship' bit - it has a where clause - hopefully this helps
Quick Q on ports, e.g. when standing up peer nodes, CA's, et al: do we have any flexibility in changing or specifying what ports are used? There's a security concern with a customer over using published, "public" ports -- can we change them?
Has joined the channel.
In Hyperledger Composer - How to validate presence of Participant Owner in Asset Transfer Transaction
0down votefavoriteIn the "basic-sample-network" or "trade-network" or "marbles-demo" sample of Hyperledger Fabric Composer - once the transaction is submitted then it checks for presence of the asset ID in the database.However it does not check if the new owner (participant) is actually present. How to check that the new owner is actually present in the database created ? Thanks
In the "basic-sample-network" or "trade-network" or "marbles-demo" sample of Hyperledger Fabric Composer - once the transaction is submitted then it checks for presence of the asset ID in the database.However it does not check if the new owner (participant) is actually present. How to check that the new owner is actually present in the database created ? Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=ZgmCfoz44ikgTYYeh) @kpv 1 You can go to participant/asset registry and use the exists method, here a sample:
[ ](https://chat.hyperledger.org/channel/composer?msg=ZgmCfoz44ikgTYYeh) @kpv 1 You can go to participant/asset registry and use the exists method, here a sample:
```return getParticipantRegistry(NAMESPACE)
.then(function(participantRegistry) {
//Verify if receiver exists
return participantRegistry.exists(ID);
})
.then(function(exists){
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=ZgmCfoz44ikgTYYeh) @kpv 1 You can go to participant/asset registry and use the exists method, here a sample:
```return getParticipantRegistry(NAMESPACE)
.then(function(participantRegistry) {
//Verify if receiver exists
return participantRegistry.exists(ID);
})
.then(function(exists){
}
```
Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=LSMQXW2EWiM5zdxap) @mahoney1 I think that what I wanted is not in the wiki.
When querying the asset `Asset` with `{"include":"resolve"}` I get this data (simplified), including the resolved relationship to `ChildAsset`:
```
[
{
"$class": "my.ns.Asset",
"id": "10ab8dca-21c5-40b6-9bd7-599db06c2bd4",
"status": "READY",
"ChildAsset": {
"$class": "my.ns.ChildAsset",
"value": "1"
}
},
{
"$class": "my.ns.Asset",
"id": "10ab8dca-21c5-40b6-9bd7-599db06c2bd4",
"status": "READY",
"ChildAsset": {
"$class": "my.ns.ChildAsset",
"value": "10"
}
}
]
```
However, I would like to query `Asset` including only those that have `ChildAsset` with the property "value" equal to 10. The result would be:
```
[
{
"$class": "my.ns.Asset",
"id": "10ab8dca-21c5-40b6-9bd7-599db06c2bd4",
"status": "READY",
"ChildAsset": {
"$class": "my.ns.ChildAsset",
"value": "10"
}
}
]
```
Is this possible? I could not find any example doing that.
I didnt understand the " .then(function(exists){
}
[ ](https://chat.hyperledger.org/channel/composer?msg=HyhFw3tgbybs8vjL5) @kpv I forgot to put if condition to do something if asset/participant exist
This is from the marbles-network sample provided-
/**
* Trade a marble to a new player
* @param {org.hyperledger_composer.marbles.TradeMarble} tradeMarble - the trade marble transaction
* @transaction
*/
function tradeMarble(tradeMarble) {
tradeMarble.marble.owner = tradeMarble.newOwner;
return getAssetRegistry('org.hyperledger_composer.marbles.Marble')
.then(function (assetRegistry) {
return assetRegistry.update(tradeMarble.marble);
});
}
correction:
``````
return getParticipantRegistry(NAMESPACE)
.then(function(participantRegistry) {
//Verify if receiver exists
return participantRegistry.exists(ID);
})
.then(function(exists){
if(exists){//Put your logic here}
```
correction:
```
return getParticipantRegistry(NAMESPACE)
.then(function(participantRegistry) {
//Verify if receiver exists
return participantRegistry.exists(ID);
})
.then(function(exists){
if(exists){//Put your logic here}
```
This checks presence of Asset ID ..
i want to modify this same function to check presence of participant ie. Player.email
Is the same process, you just need to modify the namespace
THanks - i will first check myself and if I cant then will get back to you... i have spent quite sometime figuring out this..
[ ](https://chat.hyperledger.org/channel/composer?msg=qdwSiskYx3T3fG4Ln) @kpv 1 also answered on S/Overflow -> https://stackoverflow.com/questions/48448485/in-hyperledger-composer-how-to-validate-presence-of-participant-owner-in-asset/48449301#48449301
[ ](https://chat.hyperledger.org/channel/composer?msg=PrKgbMmurv3ky3MeH) @vitorduarte and @mahoney1 .. thanks guys ... i genuinely appreciate.. but I am making some silly mistake and i dont generally expect spoon feeding.. but i am not a JS developer per se... this same code of marbles-network... can you please modify ... to also check if participant (Player.email) exists
@lucasdf - sorry I don't know offhand - but these filters are Loopback filters - would suggest to have a look at their docs on filters for examples of how to specify it.
Hi, is it possible for an asset to trigger itself the call to a transaction ? Based on the new value of one of hi fields for example . thanks
Hey all! Is it possible to create a countdown clock in the transaction_logic script that self-submits a transaction at completion?
Has joined the channel.
Hi , This is jason, new developer learning farbric and composer.
One simple question: If order packs several transaction in one block, there is great chance that some transactions could become stale and rejected.
Is my understanding correct?
Has joined the channel.
hello everyone.i have started composer tutorial and I am getting this error
Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND
Command failed
Can someone please help me solve it...it happens during the deployment step of bna
Capture.PNG
@mahoney1 thank you for the helpful tutorial.
i got an error when i change the script in ./startFabric.sh, i change "peer channel fetch" to fetch block from ip-address instead of orderer.example.com:7050.
but i will try to solve it
thank ou
@mahoney1 thank you for the helpful tutorial.
i got an error when i change the script in ./startFabric.sh, i change "peer channel fetch" to fetch block from ip-address instead of orderer.example.com:7050.
but i will try to solve it
thank you
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=PPmpdCwoejTNvrJzA) @Dark_Knight - unfortunately Hyperledger Composer is not yet supported on Windows https://hyperledger.github.io/composer/installing/installing-prereqs.html Windows users generally run an Ubuntu VM and work with Composer inside that.
[ ](https://chat.hyperledger.org/channel/composer?msg=PPmpdCwoejTNvrJzA) @Dark_Knight - unfortunately Hyperledger Composer is not supported on Windows https://hyperledger.github.io/composer/installing/installing-prereqs.html Windows users generally run an Ubuntu VM and work with Composer inside that.
Hello. Currently I am running default/sample local fabric v1.0 with composer. Has anyone tried to install & run fabric with single org and multiple peers (https://github.com/hyperledger/fabric) and then run composer over it? ..You may share what all issues faced? if there are any steps/suggestions?
Hello. Currently I am running default/sample local fabric v1.0 with composer v0.16. Has anyone tried to install & run fabric with single org and multiple peers (https://github.com/hyperledger/fabric) and then run composer over it? ..You may share what all issues faced? if there are any steps/suggestions?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=H83HQNSFiWBZwNdvg) @AkshayJindal - we have 2 tutorials for exploring the Composer aspects of deploying to Fabric:
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
Another member of the community has also blogged this:
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
In all these cases the key to success to work slowly and *accurately* through every step - good luck :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=H83HQNSFiWBZwNdvg) @AkshayJindal - we have 2 tutorials for exploring the Composer aspects of deploying to Fabric:
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
Another member of the community has also blogged this:
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
In all these cases the key to success is to work slowly and *accurately* through every step - good luck :-)
Has joined the channel.
regarding the composer-rest-server, is there a way to call an API and pass the card as argument? I am aware that it is possible to authenticate and store a card in the authenticated user wallet. I am wondering that it would be interesting to bypass the authentication and just let the user pass his card when calling an API endpoint.
regarding the composer-rest-server, is there a way to call an API and pass the card as argument? or is it in the roadmap? I am aware that it is possible to authenticate and store a card in the authenticated user wallet. I am wondering that it would be interesting to bypass the authentication and just let the user pass his card when calling an API endpoint.
My composer rest server stops when I log out. How do i make it run always ? Tried nohup but didn't work
Has joined the channel.
How can I import a json file (with seed data) in my logic.js file? The usual javascript techniques are not working...
Working the developer tutorial and with input from @mahoney1 updated generator to current version; completely tore down fabric and restarted as indicated in the 'deploying a single org' tutorial. When I run step three in the Developer Tutorial, I get the following error -- which makes no sense as I'm not running `digitalPropertyNetwork.zip`:
```composer archive create -t dir -n
composer archive create --archiveFile digitialPropertyNetwork.zip --sourceType module --sourceName digitalproperty-network```
Working the developer tutorial and with input from @mahoney1 updated generator to current version; completely tore down fabric and restarted as indicated in the 'deploying a single org' tutorial. When I run step three in the Developer Tutorial, I get the following error -- which makes no sense as I'm not running `digitalPropertyNetwork.zip`:
```composer archive create -t dir -n
composer archive create --archiveFile digitialPropertyNetwork.zip --sourceType module --sourceName digitalproperty-network```
Also can someone please confirm that the logic.js file to be updated in the one located in the `tutorial-network/lib` directory and *not* the `tutorial-network/test` directory? Thanks
Solution -- adding a '.' fixed some of the issue.
Hi All
https://hyperledger-fabric.readthedocs.io/en/latest/configtx.html
What is consortium? Where is consortium used in the peer/order/channel?
Has joined the channel.
Working the developer tutorial and trying to rebuild 'tutorial-network' again. Completely removed the directory `tutorial-network` and all its content. When I run the following I get the indicated error -- *why*?
```composer archive create -t dir -n .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /Users/CT15/temp/HL-COMPOSE/fabric-tools/tutorial-network
Error: namespace already exists
Command failed
```
after creating a business network in composer, is it possible to create an user interface? I am going through so many tutorials on Fabric and Composer but just want to make sure this is possible..
[ ](https://chat.hyperledger.org/channel/composer?msg=iJaRvAMoXNqB6codF) @cdpotts Yes, you can deploy composer-rest-server and use those REST APIs to build the UI or there is node JS SDK as well. You can use the SDK to interact with the network and offer UI for those functionalities. I think there is a sample UI for marbles sample application.
@kiranthakkar Much appreciated!
Has joined the channel.
Has left the channel.
Has joined the channel.
Newby here.. can someone explain the --> in the modeling language.
@BlockHead 2 --> is used to represent a relationship. There's some more documentation on the modeling language here - https://hyperledger.github.io/composer/reference/cto_language.html
@cdpotts there is also the Yeoman angular application generator too!
Has joined the channel.
What does a proper connection.json look like to point at Kubernetes cluster on IBM Container Service?
From https://ibm-blockchain.github.io/, I followed 1. Prepare & Setup, 2. Simple Install, 3. Interacting with your Blockchain.
{
"name": "myorg",
"type": "hlfv1",
"orderers": [
{
"url": "grpc://111.111.11.1:31010"
}
],
"ca": {
"url": "http://111.111.11.1:30000",
"name": "CA1"
},
"peers": [
{
"requestURL": "grpc://111.111.11.1:30110",
"eventURL": "grpc://111.111.11.1:30111"
}
],
"keyValStore": "/tmp/myorg",
"channel": "channel1",
"mspID": "Org1MSP",
"timeout": 300
}
Two main questions:
For the IPs in orders, ca, peers, are they all supposed to be the public IP of the Kubernetes cluster, or the different ones for all the pods? I've also seen these ports that start with a 3, and others that start with a 7 - which is correct?
https://github.com/mrshah-at-ibm/fabric-kubernetes#create-a-hyperledger-composer-connection-profile
https://ibm-blockchain.github.io/develop/reference/connectionprofile
I don't understand what keyValStore is for. Is it still necessary?
What does a proper connection.json look like to point at Kubernetes cluster on IBM Container Service?
From https://ibm-blockchain.github.io/, I followed 1. Prepare & Setup, 2. Simple Install, 3. Interacting with your Blockchain.
{
"name": "myorg",
"type": "hlfv1",
"orderers": [
{
"url": "grpc://111.111.11.1:31010"
}
],
"ca": {
"url": "http://111.111.11.1:30000",
"name": "CA1"
},
"peers": [
{
"requestURL": "grpc://111.111.11.1:30110",
"eventURL": "grpc://111.111.11.1:30111"
}
],
"keyValStore": "/tmp/myorg",
"channel": "channel1",
"mspID": "Org1MSP",
"timeout": 300
}
Two main questions:
1. For the IPs in orders, ca, peers, are they all supposed to be the public IP of the Kubernetes cluster, or the different ones for all the pods? I've also seen these ports that start with a 3, and others that start with a 7 - which is correct?
- https://github.com/mrshah-at-ibm/fabric-kubernetes#create-a-hyperledger-composer-connection-profile
- https://ibm-blockchain.github.io/develop/reference/connectionprofile
3. I don't understand what `keyValStore` is for. Is it still necessary?
What does a proper connection.json look like to point at Kubernetes cluster on IBM Container Service?
From https://ibm-blockchain.github.io/, I followed 1. Prepare & Setup, 2. Simple Install, 3. Interacting with your Blockchain.
{
"name": "myorg",
"type": "hlfv1",
"orderers": [
{
"url": "grpc://111.111.11.1:31010"
}
],
"ca": {
"url": "http://111.111.11.1:30000",
"name": "CA1"
},
"peers": [
{
"requestURL": "grpc://111.111.11.1:30110",
"eventURL": "grpc://111.111.11.1:30111"
}
],
"keyValStore": "/tmp/myorg",
"channel": "channel1",
"mspID": "Org1MSP",
"timeout": 300
}
Two main questions:
1. For the IPs in orders, ca, peers, are they all supposed to be the public IP of the Kubernetes cluster, or the different ones for all the pods? I've also seen these ports that start with a 3, and others that start with a 7 - which is correct?
- https://github.com/mrshah-at-ibm/fabric-kubernetes#create-a-hyperledger-composer-connection-profile
- https://ibm-blockchain.github.io/develop/reference/connectionprofile
2. I don't understand what `keyValStore` is for. Is it still necessary?
[ ](https://chat.hyperledger.org/channel/composer?msg=W6sAXRSjiPdoLeMPu) @rthatcher Thank You for the information
[ ](https://chat.hyperledger.org/channel/composer?msg=W6sAXRSjiPdoLeMPu) @rthatcher Thank You
Hey guys why I get this error :```Discovering types from business network definition ...
Connection fails: Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
It will be retried for the next request.
Exception: Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.```
when trying to spawn up the rest server with `node node_modules/composer-rest-server/cli.js -c admin@asclepeion-network -a true`
@andreasp1994 The error suggests you are trying to use a business network card built for composer 0.16.x use with 0.17. They aren't compatible.
@here Can I monitor my composer-generated network with explorer?
Hi just going through the perishable network example. In the script file they have a shipmentRecieved.timestamp i cant find any documentation showing timestamp anywhwere. I was wondering what other usefull information we can pull off the blockchain that isnt documented.
Has joined the channel.
Can't we install hyper ledger composer dev environment in windows?
@JayaprakashSalian no, sorry hyperledger composer is not supported in a native windows environment, we also don't support it in Windows Subsystem for Linux or a Git Bash shell. You will need to use a hypervisor (such as virtualbox) and install linux.
[ ](https://chat.hyperledger.org/channel/composer?msg=j6qYBmWvboqjG5wQT) @BlockHead 2 you can log the variable received by the transaction processor to inspect its content. It seems that this specific information is really not documented explicitly anywhere. I found out about it asking some questions here in the chat. Regarding additional information, there are a lot to be learned from the [SDK](https://hyperledger.github.io/composer/jsdoc/index.html)
[ ](https://chat.hyperledger.org/channel/composer?msg=j6qYBmWvboqjG5wQT) @BlockHead 2 you can log the variable received by the transaction processor to inspect its content. It seems that this specific information is really not documented explicitly anywhere. I found out about it asking some questions here in the chat. Regarding additional information, there are a lot to be learned from the [SDK/API](https://hyperledger.github.io/composer/jsdoc/index.html)
[ ](https://chat.hyperledger.org/channel/composer?msg=j6qYBmWvboqjG5wQT) @BlockHead 2 you can console.log the variable received by the transaction processor to inspect its content. It seems that this specific information is really not documented explicitly anywhere. I found out about it asking some questions here in the chat. Regarding additional information, there are a lot to be learned from the [SDK/API](https://hyperledger.github.io/composer/jsdoc/index.html)
[ ](https://chat.hyperledger.org/channel/composer?msg=j6qYBmWvboqjG5wQT) @BlockHead 2 you can console.log the variable received by the transaction processor to inspect its content. It seems that this specific information is really not documented explicitly anywhere. I found out about it by asking some questions here in the chat. Regarding additional information, there are a lot to be learned from the [SDK/API](https://hyperledger.github.io/composer/jsdoc/index.html)
Has joined the channel.
Hi all. How do I set the composer "timeout" environment variable?
[ ](https://chat.hyperledger.org/channel/composer?msg=zk8Qgk2iyST8Jg8eS) @davidkel Thanks!
Hey what is the best practice for authenticating users for my network. For example I am doing a medical record management system and I have patients as participants. Patients need to fill a form that submit to a hospital and then the hospital approves or rejects registration. If it is approved, should the hospital create a participant, issue an identity, bind it to the patient and then send it to the patient so he can use it? Wouldn't that mean that the hospital entity has full control over the participant?? How can I register users in a secure way?
@andreasp1994 Hey Andrea, I'm working on a similar problem and I may have a solution for you, however, I haven't reached the stage in my dev process to hash through the details of implementation. Granted my application requires less security and validity but I intend to authenticate my participants through an external source like facebook. You could try and create a smart contract that vets participants against their registered tax documentation or citizenship status. Hope that helps.
@andreasp1994 ahhh, upon further research I may have come to better understand your problem. I assume you mean is there a way for a patient to register and add themselves as a participating peer on the network without the composer admin having to do so manually. If so then I have the same problem lol.
or I suppose more accurately, add themselves as a participant rather than a peer...
Has joined the channel.
Hi everyone, I am new to composer and I am following the tutorial to deploy a multi-organization network: https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org
however, I got an error at step 11 and 12
for both organizations
composer runtime install -c PeerAdmin@byfn-network-org1-only -n tutorial-network
when I run this, it gives me error like this:
Error
however, I clearly see the ca.crt there...
ca.crt
I tried it several times
have no idea what I did wrong
can someone help? Thank you so much in advance
@ShaunC Exactly. I am trying to find a way to tackle this. I guess there should be a way right? Maybe the admin could create a participant that can be used to issue an identity for the patient. Something like a proxy... but I don't know...
@andreasp1994 I sure hope there is. That could work... Maybe every time a new patient clicks to create an account it triggers an event transaction. The transaction takes as inputs the user information then calls the admin which then outputs a new participant. Let me know if you have any success!
Does anyone know if there are any examples of multiple namespaces and multiple cto files using import?
@BlockHead 2 What did you try?
Just tested: just create a new file in `models` folder with same naming convention. Seems to work as expected.
Has joined the channel.
Has joined the channel.
```json
{
"name": "fabric-network",
"type": "hlfv1",
"mspID": "MarsMSP",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053",
"cert": "/srv/NFS/crypto-config/peerOrganizations/wgiplant.wgi.ap.mars/peers/peer0.wgiplant.wgi.ap.mars/tls/ca.crt"
},
{
"requestURL": "grpc://localhost:7081",
"eventURL": "grpc://localhost:7083",
"cert": "/srv/NFS/crypto-config/peerOrganizations/wgiplant.wgi.ap.mars/peers/peer1.wgiplant.wgi.ap.mars/tls/ca.crt"
}
],
"ca": {
"url": "http://localhost:7054",
"cert": "/srv/NFS/crypto-config/peerOrganizations/wgiplant.wgi.ap.mars/peers/peer0.wgiplant.wgi.ap.mars/tls/ca.crt"
},
"orderers": [
{
"url" : "grpc://localhost:7050",
"cert": "/srv/NFS/crypto-config/ordererOrganizations/wgiplant.wgi.ap.mars/orderers/orderer.wgiplant.wgi.ap.mars/tls/ca.crt"
}
],
"channel": "composerchannel",
"timeout": 300
}
```
I have the following connection profile
```bash
docker service ls
ID NAME MODE REPLICAS IMAGE PORTS
4kxsm03cdw3y hyp_ca replicated 1/1 hyperledger/fabric-ca:x86_64-1.0.4 *:7054->7054/tcp
qbq4y18p74ai hyp_couchdb0 replicated 1/1 hyperledger/fabric-couchdb:x86_64-1.0.4 *:5984->5984/tcp
kzi6uyftm4i1 hyp_couchdb1 replicated 1/1 hyperledger/fabric-couchdb:x86_64-1.0.4 *:6984->5984/tcp
igh7r64fzq5u hyp_orderer replicated 1/1 hyperledger/fabric-orderer:x86_64-1.0.4 *:7050->7050/tcp
r8cwtcyz8x5d hyp_peer0 replicated 1/1 hyperledger/fabric-peer:x86_64-1.0.4 *:7051->7051/tcp,*:7053->7053/tcp
yqbxudujrjrz hyp_peer1 replicated 1/1 hyperledger/fabric-peer:x86_64-1.0.4 *:7081->7081/tcp,*:7083->7083/tcp
```
Both peers are connected to hyperledger fabric
```bash
composer card create -p connection.json -u PeerAdmin -c /srv/NFS/crypto-config/peerOrganizations/wgiplant.wgi.ap.mars/users/Admin@wgiplant.wgi.ap.mars/msp/signcerts/Admin@wgiplant.wgi.ap.mars-cert.pem -k /srv/NFS/crypto-config/peerOrganizations/wgiplant.wgi.ap.mars/users/Admin@wgiplant.wgi.ap.mars/msp/keystore/4aba744ea7c131d0b4b94d0b76d918d42ca974697bfd3aeac44739eb1367aebf_sk -r PeerAdmin -r ChannelAdmin
```
OK
```bash
composer card import -f PeerAdmin@fabric-network.card
```
OK
```bash
composer runtime install -c PeerAdmin@fabric-network -n base
✖ Installing runtime for business network base. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
```
any help greatly appreciated
Hey, Guys, do you all have any suggestion of how to generate unique id for new asset instead of store the previous id in another db and increase by 1 ?
@pichayuthk I am not sure if I understood correctly.. but how about using uuid ??
Hey i just have a doubt in hyperledger concept. Where does this blockchain is stored in? is it with all participants that we are creating using rest api?
[ ](https://chat.hyperledger.org/channel/composer?msg=x8SiAKcRp8Yd6A5e3) @rthatcher Actually currently i'm performing this tutorial https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org and prerequisite for this tutorial is - https://hyperledger.github.io/composer/installing/development-tools.html, which I have performed it successfully.
@andreasp1994 Oh, Thank you.
I should generate id with uuid and pass the id to create a new asset
@here Hey i just have a doubt in hyperledger concept. Where does this blockchain is stored in? is it with all participants that we are creating using rest api?
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=bgSuJNGwfybTZ5bjy) @rahulkannur It's stored in all the peers of each organization
[ ](https://chat.hyperledger.org/channel/composer?msg=qxreQwPL82P4sezEa) @rthatcher no I'm using a new card and I have only one sample network.
@varun-raj Actually I'm confused with the term peers.. is it the participants which we are creating in during program run?
Peers are the machines that holds the data and commits transaction
Clipboard - January 29, 2018 2:17 PM
Clipboard - January 29, 2018 2:17 PM
Participants are just an entity in your composer network
@varun-raj Hey, working on the id issue I had, but when I try to issue a new identity using
```
const issueIdentity = () => {
return businessNetworkConnection.connect('admin@tata-test-env')
.then(() => {
return businessNetworkConnection.getParticipantRegistry('com.varun.participant.Person');
})
.then((participantRegistry) => {
return participantRegistry.get('Varun')
})
.then((person) => {
return businessNetworkConnection.issueIdentity('com.varun.participant.Person#'+person.name, person.name)
})
.then(result => {
console.log(result);
return businessNetworkConnection.ping();
})
.then(result => {
console.log(result);
return businessNetworkConnection.disconnect();
})
.then(() => {
console.log('disconnected');
})
.catch((error) => {
console.error(error);
});
}
```
i get thrown the error Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
```
userName: admin
description:
businessNetworkName: tata-test-env
roles: none
connectionProfile:
name: hlfv1
type: hlfv1
channel: composerchannel
secretSet: Secret set
credentialsSet: Credentials set
Command succeeded
```
My composer card
Has joined the channel.
Hi Team,
Could you please confirm the below queries:
1. Can we add new asset from transaction in Script File
2. Can we run For loop in the logic.js file to create multiple assets
[ ](https://chat.hyperledger.org/channel/composer?msg=biktnMWnuYg7g3men) @sascha Yes you see the transactions (and blocks) using explorer but you cannot see timestamp of committed block.
@prmdmshra yeah you can do both of those things. You can do pretty much anything you want in Javascript :)
@hounded - the `card create` and `card import` don't hit the Fabric, so the first time you are are trying to hit the Fabric is with the `composer runtime install` the error is saying that the composer CLI can't connect to the Fabric. Although it looks like your containers are running and ports are forwarded, perhaps the containers aren't actually listening - I would check the logs of the containers to see if they are running properly, and also try and hit those ports with another tool like telnet or wget.
On your peer1 you have ports 7081 and 7083 forwarded to the same ports in the containers - is this peer really set up to work on those ports?
Hi Guys,
If I want to use 'Nested query' to realize a traceability ,what should I do?
Has joined the channel.
Is it possible to install hyperledger composer in windows environment?
i'm unable to run the below commands
composer card list
composer runtime install
etc...
these are all showing "command not found error"
@rajivgandhi2010 I don't think it's really recommended - if you're stuck on Windows, most people I know run Linux VMs and do development in there
i have almost created a network using fabric in windows 10.
so only looking for solution in windows
[ ](https://chat.hyperledger.org/channel/composer?msg=FJu4XXp4cXE7jLMwC) @rahulkannur - The Composer REST API is a mechanism to make it simple to store and retrieve data from the blockchain - specifically from Hyperledger Fabric.
You should find answers to your concepts here:
http://hyperledger-fabric.readthedocs.io/en/latest/ledger.html
and here:
https://hyperledger.github.io/composer/reference/glossary
[ ](https://chat.hyperledger.org/channel/composer?msg=i4CMDtTkEQkd6WY7N) @Randyshu2018 nested queries aren't supported presently. You can turn on CouchDB logging (varying levels of detail -> http://docs.couchdb.org/en/2.0.0/config/logging.html) - you can also turn on different levels on logging at the Composer module level FYI -> https://hyperledger.github.io/composer/problems/diagnostics
[ ](https://chat.hyperledger.org/channel/composer?msg=i4CMDtTkEQkd6WY7N) @Randyshu2018 nested queries aren't supported presently. You can turn on CouchDB logging (varying levels of detail -> http://docs.couchdb.org/en/2.0.0/config/logging.html) or the /db/_explain feature to show execution / if its using indexes etc - you can also turn on different levels on logging at the Composer module level FYI -> https://hyperledger.github.io/composer/problems/diagnostics
@rajivgandhi2010 well done! Composer is a different thing and I've known people have difficulty on Windows and switch to the MacOS or Linux VM approach I suggested (and as implied in the doc https://hyperledger.github.io/composer/installing/installing-prereqs). Good luck :)
[ ](https://chat.hyperledger.org/channel/composer?msg=CgQEzkYTqRZAMtj2B) @AkshayMisal - What steps did you complete before the ping failure? If you are new to Composer, are you following one of the tutorials?
@mahoney1 thanks, but If another way can achieve goals?
@varunagarwal - suggest to connect to the business network, as the issued identity, then do the ping eg. `return businessNetwork.connect('your_usr001@tata-test-env')`
ya I solved the issue.
did a full restart. But how do I update a chain code? If I use ./stopFabric.sh and then do composer runtime install , do I lose my old data?
Or does the CA change?
On https://hyperledger.github.io/composer/tutorials/developer-tutorial.html it is claimed that [the tutorial will walk you through...] *generating/running a sample Angular 2 application that interacts with a blockchain network*. However, it ends with the REST server. Does anyone know *how to generate an Angular 2 web app* easily?
On https://hyperledger.github.io/composer/tutorials/developer-tutorial.html it is claimed that [the tutorial will walk you through...] *generating/running a sample Angular 2 application that interacts with a blockchain network*. However, it ends with instructions for the REST server only. Does anyone know *how to generate an Angular 2 web app* easily?
@mahoney1 So I am a bit confused. If I want to stop the session and do
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
./stopFabric.sh
```
Do I lose all my data? How do I restart my computer without losing all the data and configuration in my fabric deployment for a specific business network?
@sascha Check this out https://github.com/IBM/Decentralized-Energy-Composer
@varunagarwal Yes you will lose the data. Use `docker stop` instead and don't remove the images.
and then I just need to update the chain code, rather than install a new one?
@varunagarwal correct.
[ ](https://chat.hyperledger.org/channel/composer?msg=v9m4Js2yq326a4H3T) @varunagarwal cool - to update your business network in a chaincode container, you do a `composer network update` -> https://hyperledger.github.io/composer/reference/composer.network.update.html
[ ](https://chat.hyperledger.org/channel/composer?msg=v9m4Js2yq326a4H3T) @varunagarwal cool - to update your business network in a chaincode container, you do a `composer network update` -> https://hyperledger.github.io/composer/reference/composer.network.update.html - does that answer your Q ?
Angular, anyone?
https://github.com/IBM/Decentralized-Energy-Composer has a good example for using angular 2.0
and calling the rest server
@varunagarwal :grinning:
but its quite confusing imo
so gl :D
@mahoney1 ok wait, if I use docker stop and don't remove the images, I will need to start the exact set of images again right? So I just save the image tag and do it
[ ](https://chat.hyperledger.org/channel/composer?msg=jyoR8z7k5XXLQHeaP) @varunagarwal fyi if you want to stop your Fabric containers (eg. Dev environment as an example) - go to where your docker-compose-yml file is and you can do a `docker-compose stop` to stop the containers, but a `docker-compose start` can start them again, from their existing state.
[ ](https://chat.hyperledger.org/channel/composer?msg=jyoR8z7k5XXLQHeaP) @varunagarwal fyi if you want to stop your Fabric containers (eg. Dev environment as an example) - go to where your docker-compose-yml file is and you can do a `docker-compose stop` to stop the containers, but a `docker-compose start` can start them again, from their existing state. For individual containers, you can do `docker stop
[ ](https://chat.hyperledger.org/channel/composer?msg=jyoR8z7k5XXLQHeaP) @varunagarwal fyi if you want to stop your Fabric containers (eg. Dev environment as an example) - go to where your docker-compose-yml file is and you can do a `docker-compose stop` to stop the containers, but a `docker-compose start` can start them again, from their existing state. For individual containers, you can do `docker stop
ok the the first option will stop and restart everything. If I want to do it for specific business networks, the 2nd option seems better
will save these commands and test it. Thanks a lot
[ ](https://chat.hyperledger.org/channel/composer?msg=6EDtwssAE2Lzd5jaW) @Randyshu2018 for nested queries? Depends on what you're trying to achieve.
Hi folk!
Hi folks!
Do I understand correctly, that Promise returned by the method submitTransaction of BusinessNetworkConnection class will be fullfilled when the transaction has been added to the ledger
Hi folks!
Do I understand correctly, that Promise returned by the method submitTransaction of BusinessNetworkConnection class will be fulfilled when the transaction has been added to the ledger?
Has joined the channel.
How can I import a card to authenticate as a participant from the rest server???
using v0.15
[ ](https://chat.hyperledger.org/channel/composer?msg=NTkf2A8F6DR58GEj3) @andreasp1994 - you will need to use the REST Server in Multi User mode and then Issue an Identity to a participant. This document describes Multiuser mode:
https://hyperledger.github.io/composer/integrating/enabling-multiuser
Before using MultiUser mode you will also need to enable authentication:
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
I would also suggest reading the knowledge-base for background on cards and best practise:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#bizcards
@rthatcher Thanks for the response. I have setup the rest server in multi user mode and also authenticated using github passport. I issued a new card for the participant to use. Now that the participant holds his card how can he use it to import it to his wallet?
[ ](https://chat.hyperledger.org/channel/composer?msg=NBjHtfxdcW4zteDhk) @andreasp1994 - you should be able to import the .card file `POST /wallet/import` and then set as default
@rthatcher Yeah I remember that there was something like that to import the card but since I updated to v.0.15 there is not /wallet/import to the rest server
@rthatcher Hi, I am a bit lost with starting an existing chain code. I started a business network and then switched my computer off. Now i restarted it and want to resume the same network. Been trying this for a while and am completely stuck
Screen Shot 2018-01-29 at 12.13.44 PM.png
[ ](https://chat.hyperledger.org/channel/composer?msg=Zw5odhX9jFv3f2e37) @andreasp1994 - I don't have a v0.15.* system available - only v0.16.3 . It is not part of "system", but below it.
[ ](https://chat.hyperledger.org/channel/composer?msg=ozsvLbnSsEh6bBFdQ) @rthatcher There isn't anything below it ;p
[ ](https://chat.hyperledger.org/channel/composer?msg=6PmrXLjk6jydKdKuM) @varunagarwal - if you have done a startFabric.sh since restarting you machine, then the Business Network is lost. But if you have the .BNA file you can redeploy. If you have run startFabric.sh, I would also suggest deleting all the cards you have except PeerAdmin. After you have run startFabric.sh once, you can do as @mahoney1 suggested and use `docker-compose stop` and `docker-compose start`.
[ ](https://chat.hyperledger.org/channel/composer?msg=kHkQqMLMP9Rh6aLaN) @andreasp1994 - I'm pretty sure that /wallet appears when in multiuser mode - is multiuser mode really enabled ? Perhaps refresh the browser (cache) ?
I will test again later today on v0.16.3
[ ](https://chat.hyperledger.org/channel/composer?msg=HZ3w3H5twfp2ryZo7) @rthatcher Yeah I am pretty sure it is enabled since I get the a 401 NOT AUTHORIZED status code on requests but I will try again
[ ](https://chat.hyperledger.org/channel/composer?msg=7AyrZePd57PnHsJze) @rthatcher understood, but if I have 2 networks deployed at some point of time, and now want to restore the state of only one of the networks, then?
[ ](https://chat.hyperledger.org/channel/composer?msg=7BjSx7JwamZSz9rPn) @varunagarwal - they are both on the same Fabric and the same channel - so you restore both or none.
ohh, let me note all this down and restart everything ... again..
[ ](https://chat.hyperledger.org/channel/composer?msg=Z5pAj9WcDS7MHBi4E) @andreasp1994 - the 401 Authorization Required is when you enable authentication. If multiuser is enabled then after you authorize you get a "500 - A business network card has not been specified" - that is what tells you multiuser is enabled.
I just checked and it all works as expected on v0.16.3
Has joined the channel.
not sure if this is the right channel, but can anyone help me work out how to enable multi signature logic in hyperledger composer, i have a change of ownership transaction which has "currentOwner, newOwner and productId" i only want this transaction to be valid if both parties have signed the transaction
I've seen examples like this for ensuring ownership of an asset "condition: (v.owner.getIdentifier() == m.getIdentifier())" but haven't seen a rule to ensure a signature from the newOwner. The use case of this is for a supply chain where a recipient must sign for goods on arrival.
[ ](https://chat.hyperledger.org/channel/composer?msg=2GrW2oroY2uNBYsZn) @CiaranMcveigh You may implement this requirement inside your transaction logic. We have implemented something similar. In our case, when the asset is send to another owner, the transaction creates a "transportation" transaction. Only when the receiver confirms that the asset has been arrived then the asset's owner is changed.
[ ](https://chat.hyperledger.org/channel/composer?msg=2GrW2oroY2uNBYsZn) @CiaranMcveigh You may implement this requirement inside your transaction logic. We have implemented something similar. In our case, when the asset is send to another owner, the transaction creates a "transportation" transaction. Only when the receiver confirms that the asset has arrived then the asset's owner is changed.
[ ](https://chat.hyperledger.org/channel/composer?msg=2GrW2oroY2uNBYsZn) @CiaranMcveigh You may implement this requirement inside your transaction logic. We have implemented something similar. In our case, when the asset is send to another owner, the transaction creates a "transportation" asset. Only when the receiver confirms that the asset has arrived then the asset's owner is changed.
@lucasdf thanks for the response, is it possible to provide a code snippet, this is what i have currently
```transaction ChangeOfOwnership {
--> Product productId
--> Member currentOwner
--> Member newOwner
}
transaction Transport {
--> Member currentOwner (not sure whats suppose to go in here)
--> Member newOwner
}```
```function changeOfOwnership(changeOfOwnership) {
var productId = changeOfOwnership.productId;
var currentOwner = changeOfOwnership.currentOwner;
var newOwner = changeOfOwnership.newOwner;
transportation(x)
}
function transportation(transportation) {
}```
```rule ProductOwner {
description: "Allow the owner of a product total access"
participant(m): "org.acme.supply.chain.Member"
operation: ALL
resource(v): "org.acme.supply.chain.Product"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}
not sure what else to put in the acls```
apologies for the questions relatively new to this and can't find many resources online
[ ](https://chat.hyperledger.org/channel/composer?msg=AQwHR6uEteQ83ddyq) @rthatcher You are a life savior !! You are right... I feel so dumb.. I was running the rest server in authenticated mode but not in multi user mode
How to delete a namespace and all associated files, including hidden ones? I've tried blowing away the namespace directory and I'm still getting errors that the 'namespace' exists? I've searched the documentation and can't find an example - thanks in advance
I just posted a question on stackoverflow regarding "How to setup rule in ACL file of Hyperledger Composer to validate against enum?"
If someone can answer here or at stackoverflow i will be really grateful
https://stackoverflow.com/questions/48507769/how-to-setup-rule-in-acl-file-of-hyperledger-composer-to-validate-against-enum
Has joined the channel.
Hi every one, i need help to understand to auth process with the rest-server
It took me 2 days to understand the rest-server authentication workflow.
As a beginners, I was thinking i could build my whole app using the blockchain. Users, auth, store etc...
For a completely new organisation that does not have a private authentication mecanism (Ldap, sass, saml etc...) and don't want to use external providers (github, fb etc...), we have to build one outside of the blockchain.
That mean we must build and maintain a database that holds ours final users (just the auth data to connect to the blockchain and get identities -> participant)
Correct me if i am wrong, but the user registering process will become not so handly to implement and will require from us to manage a database/server cluster just to authenticate our users.
We could probably use our web server as the submitter of all tx, but it's not the intention of the blockchain.
So do you think it would be a good idea to implement an auth system directly inside our business network inside the blockchain ?
With a worklfow similar to this one:
- Create an endpoint in our webserver to call the blockchain and retrieve a user related to a password/email, those blockchain calls will be obviously signed by our private network admin card.
- Return the generated access token to the user who requested it
- Generating an identity card as usual and bound it to the related participant
- The user can now call the rest-server (protected via passport strategy)
This will make the blockchain acting as an authentication provider for our users.
Is this workflow realist ?
The main goal for us is to bypass the storage of our user outside the blockchain if we don't use externals providers
Any advise would be good to take :) and sorry for my english.
Hi every one, i need help to understand the auth process with the rest-server
It took me 2 days to understand the rest-server authentication workflow.
As a beginners, I was thinking i could build my whole app using the blockchain. Users, auth, store etc...
For a completely new organisation that does not have a private authentication mecanism (Ldap, sass, saml etc...) and don't want to use external providers (github, fb etc...), we have to build one outside of the blockchain.
That mean we must build and maintain a database that holds ours final users (just the auth data to connect to the blockchain and get identities -> participant)
Correct me if i am wrong, but the user registering process will become not so handly to implement and will require from us to manage a database/server cluster just to authenticate our users.
We could probably use our web server as the submitter of all tx, but it's not the intention of the blockchain.
So do you think it would be a good idea to implement an auth system directly inside our business network inside the blockchain ?
With a worklfow similar to this one:
- Create an endpoint in our webserver to call the blockchain and retrieve a user related to a password/email, those blockchain calls will be obviously signed by our private network admin card.
- Return the generated access token to the user who requested it
- Generating an identity card as usual and bound it to the related participant
- The user can now call the rest-server (protected via passport strategy)
This will make the blockchain acting as an authentication provider for our users.
Is this workflow realist ?
The main goal for us is to bypass the storage of our user outside the blockchain if we don't use externals providers
Any advise would be good to take :) and sorry for my english.
HI @Rmannn this might be of use, lots of useful links that may help
```https://hyperledger.github.io/composer/integrating/integrating-index```
Thank you for your answer, i just deleted my previous message by mistake, i publish it again for history
@CT123 Thank you for your answer, i just deleted my previous message by mistake, i publish it again for history
Hi every one, i need help to understand the auth process with the rest-server
It took me 2 days to understand the rest-server authentication workflow.
As a beginners, I was thinking i could build my whole app using the blockchain. Users, auth, store etc...
For a completely new organisation that does not have a private authentication mecanism (Ldap, sass, saml etc...) and don't want to use external providers (github, fb etc...), we have to build one outside of the blockchain.
That mean we must build and maintain a database that holds ours final users (just the auth data to connect to the blockchain and get identities -> participant)
Correct me if i am wrong, but the user registering process will become not so handly to implement and will require from us to manage a database/server cluster just to authenticate our users.
We could probably use our web server as the submitter of all tx, but it's not the intention of the blockchain.
So do you think it would be a good idea to implement an auth system directly inside our business network inside the blockchain ?
With a worklfow similar to this one:
- Create an endpoint in our webserver to call the blockchain and retrieve a user related to a password/email, those blockchain calls will be obviously signed by our private network admin card.
- Return the generated access token to the user who requested it
- Generating an identity card as usual and bound it to the related participant
- The user can now call the rest-server (protected via passport strategy)
This will make the blockchain acting as an authentication provider for our users.
Is this workflow realist ?
The main goal for us is to bypass the storage of our user outside the blockchain if we don't use externals providers
Any advise would be good to take 🙂 and sorry for my english.
@CT123 I've already seen this page, but it does not provide the information i was looking for.
This issue https://github.com/hyperledger/composer/issues/142 explains that to authenticate a users to the rest server, we must use passport strategy with external or internal auth providers.
This has no sense to us, because we can't require to ours customers to have an external account to work with us.
it also has no sense to us to have to manage an extra user provider outside the blockchain.
@CT123 I've already seen this page, but it does not provide the information i was looking for.
This issue https://github.com/hyperledger/composer/issues/142 explains that to authenticate a user to the rest server, we must use passport strategy with external or internal auth providers.
This has no sense to us, because we can't require to ours customers to have an external account to work with us.
it also has no sense to us to have to manage an extra user provider outside the blockchain.
@rthatcher Much thanks for taking the time to have a look
```bash
telnet localhost 7081
Trying ::1...
Connected to localhost.
telnet localhost 7083
Trying ::1...
Connected to localhost.
```
On Peer machine
```bash
2018-01-29 19:55:56.799 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2018-01-29 19:55:56.800 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2018-01-29 19:55:56.866 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized
2018-01-29 19:55:56.867 UTC [msp/identity] Sign -> DEBU 004 Sign: plaintext: 0A9A070A5C08031A0C08CCF8BDD30510...631A0D0A0B4765744368616E6E656C73
2018-01-29 19:55:56.867 UTC [msp/identity] Sign -> DEBU 005 Sign: digest: E5BF8E53CAF52BDB006B77AEC7936268FD2D196C8533E1432E522520DFC21FC6
2018-01-29 19:55:56.875 UTC [channelCmd] list -> INFO 006 Channels peers has joined to:
2018-01-29 19:55:56.875 UTC [channelCmd] list -> INFO 007 composerchannel
2018-01-29 19:55:56.875 UTC [main] main -> INFO 008 Exiting.....
```
Man why can't they make the composer runtime install run off the channel.tx or something similar, i'm sure it is something to do with the connection.json
Has joined the channel.
is it possible to deploy a business network using older version of composer? our rest server crashed so we tried to recreate but our bna file is no longer working as expected due to updated version of composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=gfMZif4F78dpxmbAq) @Rmannn I recently opened an [issue](https://github.com/hyperledger/composer/issues/3260) proposing the ability to send the composer card as argument, so authentication would be optional. That way, the only authentication a user would require is to have a valid composer card. I am planning to work on this feature soon since our project would benefit from it. Meanwhile, the only option is really to use an internal or external authentication with passport.
[ ](https://chat.hyperledger.org/channel/composer?msg=oqmTakygr78bn9C7x) @gWOLF3 if you are using composer-cli then you may just use the image for the version tat you want, like `composer-cli:0.16`. For the rest-server, you can set the env variable for the docker container `VERSION_CLI` to the version that you want to use.
[ ](https://chat.hyperledger.org/channel/composer?msg=oqmTakygr78bn9C7x) @gWOLF3 if you are using composer-cli then you may just use the image for the version that you want, like `composer-cli:0.16`. For the rest-server, you can set the env variable for the docker container `VERSION_CLI` to the version that you want to use.
[ ](https://chat.hyperledger.org/channel/composer?msg=oqmTakygr78bn9C7x) @gWOLF3 if you are using composer-cli then you may just use the image for the version that you want, like `composer-cli:0.16`. For the rest-server, you can do the same. You are probably using the `latest` version.
@lucasdf I saw your issue, it's a really good idea since we could simply give the card to our users.
And what do you think about using an internal passport that will use an admin@network card to connect to the network and to generate an access token related to a participant, then retrieve this token from the blockchain as an asset ?
Participant => Access token => Identity => Participant
I do not know if I am clear, maybe I am totally wrong.
Has joined the channel.
Has joined the channel.
Hello everyone! I have a quick newbie question about models
Clipboard - January 29, 2018 3:11 PM
Which is better? Having a User object in Organization or User[id] reference?
And why?
Let me know if this question is better suited for SO and I'll post it there
Has joined the channel.
is it possible to encrypt the read/write sets in composer like we can do in fabric using golang chaincodes in v1.1.0-preview
Has joined the channel.
HI .How to connect composer playground with database and also help with how to connect multi peer by playground in two different machines
i got a problem adding optional variables to the already existing data ... my sample data is ``` {
"$class": "org.acme",
"id": "1",
"ChildClass": {
"$class": "org.acme.child",
"Child-ChildClass": {
"$class": "org.acme.child.child",
"email":"example.com";
}
}
}```
here i want to add a name under email , in my model file i have ``` concept details{
i got a problem adding optional variables to the already existing data ... my sample data is ``` {
"$class": "org.acme",
"id": "1",
"ChildClass": {
"$class": "org.acme.child",
"Child-ChildClass": {
"$class": "org.acme.child.child",
"email":"example.com";
}
}
}```
here i want to add a name under email , in my model file i have ``` concept details{
o string email
o String name optional
} ```
iam able to add it when i append the childChild to child by using factory.newConcept(), but when i update it , it's not working. Any IDEA ?
Hello everyone! I have a question about deploy a new business network.
I currently deploy a fabric BaaS (3pc, include 1 orderer, 2 peers)
Now I want to composer playground to connect my current fabric environment.
After installing: npm install -g composer-playground
Start:composer-playground
On the page of Hyperledger Composer Playground choosing Create A Business Network Card
And choosing Hyperledger Fabric 1.0,while input users' CERT、KEY、 ca server url、orderer url、peer url,etc
Then creating successfully, and choosing Deploy New Business Network, then choosing empty-business-network,input users' CERT、KEY, clicking deploy.
Waiting for a while until the eorror
Checking the peer chaincode list --installed through the console,then the chained is installed,but it failured to instantiate.
error.bmp
Hi All,May I know the limitations of composer??.Can I use composer as a substitute for fabric??
@james3443112 what level of fabric are you running ?
1.0
@james3443112 that error implies you are running either 1.1-techpreview or 1.1-alpha or you have built your own images from source code
so i need to use low level composer-playground to match fabric v1.0 ?
composer-playground 0.16.3
@james3443112 composer 0.16.x works with fabric 1.0.x composer 0.17.2 works with fabric 1.1-techpreview
i user fabric v1.0.0 and composer-playground v0.16.3
can you do a docker ps to show the exact version you are using ?
can you do a docker ps to show the exact version of fabric you are using ?
i make orderer and peer to deploy my fabric service , not user orderer docker and peer docker
So you built it yourself from source ? I assume you used the release branch and not the master branch ? what level of go compiler are you using ?
yes , i built it myself from source . i used the release branch , and my go v1.9.2
2018-01-30 13:37:29.261 CST [chaincode-platform] func1 -> ERRO 04f Failed to generate platform-specific docker build: Error returned from build: 2 "# composer/vendor/gopkg.in/olebedev/go-duktape.v3
In file included from chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:7:0:
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go: In function '_duk_error':
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.h:510:127: warning: right-hand operand of comma expression has no effect [-Wunused-value]
(duk_error_raw((ctx), (duk_errcode_t) (err_code), (const char *) (DUK_FILE_MACRO), (duk_int_t) (DUK_LINE_MACRO), __VA_ARGS__), (duk_ret_t) 0)
^
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:153:2: note: in expansion of macro 'duk_error'
duk_error(ctx, err_code, "%s", str);
^
# composer/vendor/gopkg.in/olebedev/go-duktape.v3
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.go:134: constant 18446744073709551615 overflows int
"
this is the peer log
2018-01-30 13:37:29.262 CST [dockercontroller] deployImage -> ERRO 050 Error building images: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer/vendor/gopkg.in/olebedev/go-duktape.v3
In file included from chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:7:0:
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go: In function '_duk_error':
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.h:510:127: warning: right-hand operand of comma expression has no effect [-Wunused-value]
(duk_error_raw((ctx), (duk_errcode_t) (err_code), (const char *) (DUK_FILE_MACRO), (duk_int_t) (DUK_LINE_MACRO), __VA_ARGS__), (duk_ret_t) 0)
^
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:153:2: note: in expansion of macro 'duk_error'
duk_error(ctx, err_code, "%s", str);
^
# composer/vendor/gopkg.in/olebedev/go-duktape.v3
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.go:134: constant 18446744073709551615 overflows int
"
2018-01-30 13:37:29.262 CST [dockercontroller] deployImage -> ERRO 051 Image Output:
********************
********************
2018-01-30 13:37:29.267 CST [chaincode] Launch -> ERRO 052 launchAndWaitForRegister failed: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer/vendor/gopkg.in/olebedev/go-duktape.v3
In file included from chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:7:0:
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go: In function '_duk_error':
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.h:510:127: warning: right-hand operand of comma expression has no effect [-Wunused-value]
(duk_error_raw((ctx), (duk_errcode_t) (err_code), (const char *) (DUK_FILE_MACRO), (duk_int_t) (DUK_LINE_MACRO), __VA_ARGS__), (duk_ret_t) 0)
^
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:153:2: note: in expansion of macro 'duk_error'
duk_error(ctx, err_code, "%s", str);
^
# composer/vendor/gopkg.in/olebedev/go-duktape.v3
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.go:134: constant 18446744073709551615 overflows int
"
error starting container
2018-01-30 13:37:29.267 CST [endorser] simulateProposal -> ERRO 053 failed to invoke chaincode name:"lscc" on transaction aa31cf05ba9e455b19d0d2455d32ef5da5432a27d523c9d7398f5a15b182c2f6, error: Failed to generate platform-specific docker build: Error returned from build: 2 "# composer/vendor/gopkg.in/olebedev/go-duktape.v3
In file included from chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:7:0:
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go: In function '_duk_error':
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.h:510:127: warning: right-hand operand of comma expression has no effect [-Wunused-value]
(duk_error_raw((ctx), (duk_errcode_t) (err_code), (const char *) (DUK_FILE_MACRO), (duk_int_t) (DUK_LINE_MACRO), __VA_ARGS__), (duk_ret_t) 0)
^
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/api.go:153:2: note: in expansion of macro 'duk_error'
duk_error(ctx, err_code, "%s", str);
^
# composer/vendor/gopkg.in/olebedev/go-duktape.v3
chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duktape.go:134: constant 18446744073709551615 overflows int
"
error starting container
@james3443112 the problem in the level of go you have used. Fabric themselves use go 1.7 for the 1.0.x releases. Composer won't work when fabric is compiled with that level of Go
@james3443112 the problem is the level of go you have used. Fabric themselves use go 1.7 for the 1.0.x releases. Composer won't work when fabric is compiled with that level of Go
so i need to use go 1.7 to rebuild orderer and peer ?
Yes, not sure of the exact version fabric use, so you probably need to check
i user go 1.9.2 to build orderer and peer , and i use them to deploy my fabric servcie , and it success to work
@james3443112 but composer won't work with your setup
i try it , thx
my node version v8.9.3 , should i change it ?
no that version of node is ok
:ok_hand: thx
@james3443112 I'm not too familiar with the fabric build process but you need to ensure that the level of go compiler that is used to compile chaincode is also at the 1.7 level. That level gets built into the baseos image
:ok_hand:
[ ](https://chat.hyperledger.org/channel/composer?msg=nhrJSHM7c5Y3uXWXi) @SudheerKaspa - Hyperledger Composer is not a substitute for Hyperledger Fabric. Composer is a development and runtime abstraction layer to enable faster development of blockchain aplications. You will have seen from the tutorials and examples you have tried that you have a development/test Fabric running Docker containers. The Composer team have made it easy to get the test/dev fabric running, but in production you would need to build a production fabric.
[ ](https://chat.hyperledger.org/channel/composer?msg=oPPGBnJ2FWaghtrKc) @wininani - Connecting Playground to a multipeer network on different machines should be easy - you should just be able to connect using the Business Network Cards you have already created to connect to the Fabric. Depending on how you have built your Fabric you may have to look at the details of the addressing resolution and connectivity from the machine running playground to the machines running the Fabric.
What scenario are you looking at with "How to connect composer playground with database"?
Has joined the channel.
HI, I have Medicine Business from Manufacturing to distribution and marketing etc, can I shift my all data and business to this Hyperledger blockchain model ?
I don't want to keep even a single record out of this chain .. ?
[ ](https://chat.hyperledger.org/channel/composer?msg=5czjiBcR3ZvXh6i52) @username343 - this issue in Composer is in progress:
https://github.com/hyperledger/composer/issues/3120 which should make these functions available - https://fabric-shim.github.io/ChaincodeStub.html
Clipboard - 2018年1月30日晚上6点08分
If I want to make a trade ,what params should I send?
thanks @rthatcher
Clipboard - 2018年1月30日晚上6点10分
If I can send a object that not exist in blockchain system?
[ ](https://chat.hyperledger.org/channel/composer?msg=hAFMdMQEx7Hrc2pdB) @AshwinKumar844129 - as a simple answer then YES, I think what you are proposing is a good use case for Hyperledger Fabric and Hyperledger Composer. There is an example network "Perishable Food Network" which has similarities with traceability from source.
@rthatcher : Thanks a lot !!
[ ](https://chat.hyperledger.org/channel/composer?msg=uzxKMvCrhMbvhLmqE) @jess The concepts of Participant (or Asset or Transaction) may be considered to be different stereotypes of the class type. A class in Hyperledger Composer is referred to as a resource definition, therefore a participant instance (from your model) has a participant definition. FYI. The instances are stored in those [asset, participant, transaction[ registries. In this case User is already modeled and will have its own registry, and your orgAdmin is a relationship to a resource defined (and stored) there, eg data redundancy etc. (so probably using a relationship field as you've modeled it is good)
[ ](https://chat.hyperledger.org/channel/composer?msg=uzxKMvCrhMbvhLmqE) @jess The concepts of Participant (or Asset or Transaction) may be considered to be different stereotypes of the class type. A class in Hyperledger Composer is referred to as a resource definition, therefore a participant instance (from your model) has a participant definition. FYI. The instances are stored in those [asset, participant, transaction[ registries. In this case User is already modeled and will have its own registry, and your orgAdmin is a relationship to a resource defined (and stored) there, eg data redundancy etc. (so probably using a relationship field as you've modeled it is good)
[ ](https://chat.hyperledger.org/channel/composer?msg=uzxKMvCrhMbvhLmqE) @jess The concepts of Participant (or Asset or Transaction) may be considered to be different stereotypes of the class type. A class in Hyperledger Composer is referred to as a resource definition, therefore a participant instance (from your model) has a participant definition. FYI. The instances are stored in those [asset, participant, transaction] registries. In this case User is already modeled and will have its own registry, and your orgAdmin is a relationship to a resource defined (and stored) there, eg data redundancy etc. (so probably using a relationship field as you've modeled it is good)
[ ](https://chat.hyperledger.org/channel/composer?msg=C6WuXZm5n5X8yMugN) @Randyshu2018 those that are required by your Trade transaction ; your orderItems is an array of Strings and hence your second offering works (as string, the JSON would be the simpler form) ; yes you can create an asset 'object' instance in your transaction code (ie doesn't already exist on the blockchain) - the samples directory has examples of this in TP code eg. https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L119
Has joined the channel.
Hey guys, I am having issue in getting all the data(hyperledger composer) when I am subscribing to an event in nodejs. Anyone could help me out with this? Thanks
Hi can you explain me why network admin credentials cannot be changed (`--networkAdmin` and `--networkAdminEnrollSecret`) ?
Hi can you explain me why network admin credentials cannot be changed ( `--networkAdmin` and `--networkAdminEnrollSecret`) ?
@mahoney1 I will have a try , thanks a lot.
@rthatcher Hi, I had asked a question yesterday about restarting my laptop and then getting the same instance back. I used
```
cd ~/fabric-tools/fabric-scrips/hlfv1
docker-compose start
```
docker-compose stop
But the chain code instances didn't start. They are supposed to happen automatically?
User User_1 added by Preetam007.
Hi all i used ` github oauth` for authorization , my angular worked fine before but now all calls to api gave error ` unAuthorized ` , can anyone help me with this , sorry for asking angular question here .
[ ](https://chat.hyperledger.org/channel/composer?msg=wgSAB4oJKi4K4evzv) @jaswanth I faced a similar issue. Did you restart the application and then the error came?
[ ](https://chat.hyperledger.org/channel/composer?msg=4rWzHMxZaGfE7LbgB) @varunagarwal thanks for the reply , my application has codded before i authorized through github . i am new to the auth concepts. can you point out any docs for that , it will be very helpful
im in similar situation
Did you restart your computer or something?
When the auth stop working
auth is working fine , i can do stuf in explorer , but ii dont know how we can connectthe app to api when using auth.
auth is working fine , i can do stuf in explorer , but ii dont know how we can connect the app to api when using auth.
ah I havn;t done that. I have decided to make my own APIs and not use `loopback` or `composer-rest-server`
so not sure about how to proceed in that direction.
[ ](https://chat.hyperledger.org/channel/composer?msg=wQjcbozewXKL4CAR2) @varunagarwal - any chaincode containers get started the first time you 'hit' them after a restart, so that first connect can be slower.
ya its working. Sorry, just that for some reason its not showing in `docker ps`, whereas when I launch it for the firstt ime, it shows as a new container in `docker ps`.
got a bit confused. I am sooo close to finishing an initial deployment
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=sfY5BiCMvyotWYAw8) @matrisis
Its to specify that they should be created (using those flags), then bound to an instance of the in-built NetworkAdmin Participant type, with a name usually the same as that specified in the -A part. It then binds that 'admin' userid in the CA server to be a 'NetworkAdmin' system role in the business network. The enrolment secret (-S) is a one-time use thing and is passed to the Fabric CA and exchanged for an enrolment certificate (then that enrolment Secret is discarded, as we'll have a card with credentials (cert/key) for the network admin in the form of an imported card eg admin@my-network). So the initial 'id' and 'secret' are enrolment credentials, to be exchanged for a certificate (ie its not a password that can be changed) from the CA server.
Has joined the channel.
Has joined the channel.
i get this error when i run composer-rest-server in docker for 0.16.3
`Connection fails: Error: Card not found:
I thought it was permission issue. But that didn't solve it.
I thought it was a permission issue. But that didn't solve it.
I used an invalid card name and still got the same error
it seems either the name home user or the composer vault folder name has changed for the version 0.16.3 of the docker image
it seems either the name of home user or the composer vault folder name has changed for version 0.16.3 of the docker image
Has joined the channel.
Has joined the channel.
Hi I am absolutely new to Blockchain and was going through the Lab1 in the developer track. I am on Mac OS 10.11.6 and the required Mac is 10.12.6 for the labs. I have installed the pre-requisites but I am getting errors while executing the steps. Please help
Hi, i would like to know what is the limit of participant/identities we can create with composer ?
And also if each user in the system should have identity to work with the blochain ?
Hi, i would like to know the max number of participant/identity we could have in composer ?And also if each user in the system should have identity to work with the blochain ?
[ ](https://chat.hyperledger.org/channel/composer?msg=xb3r6S7h9buXHghcw) @amit0705 Hello - if you're following the installing developer environment prerequisites, that says the OS X environment that was used for that document was 10.12.6 -- we're running the most current OS X (10.13.3) and it works as written. If you're getting errors, you might capture them and post back here so others can try to help.
Thanks, can you point me to the instructions to uninstall everything that the prerequisite requires to install. So that I can upgrade my Mac OS and then try reinstalling again.
Hey has anyone managed to import a card to a multi user rest server using angular???
I have been trying with multipart form data but I get the following error ```"TypeError: Cannot read property 'path' of undefined↵ at Promise (/Users/Antreas/Desktop/Asclepeion/blockchain/asclepeion-network/node_modules/composer-rest-server/common/models/card.js:249:33)↵ at Promise.then (/Users/Antreas/Desktop/Asclepeion/blockchain/asclepeion-network/node_modules/composer-rest-server/common/models/card.js:248:20)↵ at process._tickCallback (internal/process/next_tick.js:109:7)"
```
Has joined the channel.
Has joined the channel.
hey guys pretty excited here was curious how we can do user management in hyperledger composer. the question might be wrong or dont make sense and sorry for that :) . in ethereum i could login user by privateKey or keyStore how can i do similar in hyperledger. is it done by identity? if so how can we create dynamic identity? thanks in advance
hey guys pretty excited about hyperledger and so far loving it. I was curious how we can do user management in hyper ledger composer. the question might be wrong or dont make sense and sorry for that :) . in ethereum i could login user by privateKey or keyStore how can i do similar in hyperledger. is it done by identity? if so how can we create dynamic identity? thanks in advance
i think we can do by this approach https://hyperledger.github.io/composer/managing/identity-issue.html thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=27LrbLydemewhzbrb) @amit0705 - there is some information here for uninstalling Hyperledger Composer:
https://stackoverflow.com/questions/48365524/uninstall-hyperledger-composer
hello i made the tutorial about deploy two organization in composer and i created identity for alice and bob
i have question can i add new identity without redeploy the network ?
[ ](https://chat.hyperledger.org/channel/composer?msg=xHjw2KdKtYBRxPPp2) @nasserfci yes, if you install local playground, launch it, connect to the business network in playground as alice (an admin) and you should be able to issue identities for her side of the organisation - but first you will have to create a participant (again in playground you can do this) to map the new identity to it - then connect to the network with that card.
@mahoney1 can u tell how to achieve multi peer from playground in different machines?
and also i want to connect my playground with db for transactions
for tutorial network tutorials
for tutorial network
[ ](https://chat.hyperledger.org/channel/composer?msg=QxsBT5aqgBiehNJeD) @piyush nice one. Probably best to read here -> https://hyperledger.github.io/composer/managing/participantsandidentities.html to understand more about how identities are managed, what participants are and how identity is used (in terms of transacting on a business network on the blockchain)
[ ](https://chat.hyperledger.org/channel/composer?msg=tk2wDcrysWvuYtkDF) @wininani Composer will work with whatever Fabric environment you configure on different machines. You could follow this https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602 that someone had posted. Once you've set up your multiple machines, and setup appropriate composer cards, you can connect (from playground) to the business network you deploy (eg, tutorial-network). As for connecting your playground with db ; playground connects to the business network deployed to the Fabric through a business network card ; one of the registries stored there is the Transaction registry.
[ ](https://chat.hyperledger.org/channel/composer?msg=NKqx24SYkCjSn8bdH) @mahoney1 thanks @mahoney1
Screenshot from 2018-01-30 16-19-54.png
sudheer@sudheer-HP-Laptop-15-bs0xx:~/Desktop/mroproject/Untitled Folder/cool-network$ composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName cool-network
✖ Installing runtime for business network cool-network. This may take a minute...
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=24ZbbAseEzPZjo6Er) I am facing the following composer runtime install commanbd
[ ](https://chat.hyperledger.org/channel/composer?msg=24ZbbAseEzPZjo6Er) @SudheerKaspa hi there would suggest review the logs of your ca server to see errors. Eg. `docker logs ca.org1.example.com` (or whatever) to get info on the auth failure and see where you configuration is failing.
[ ](https://chat.hyperledger.org/channel/composer?msg=24ZbbAseEzPZjo6Er) @SudheerKaspa hi there would suggest to review the logs of your ca server to see errors. Eg. `docker logs ca.org1.example.com` (or whatever) to get info on the auth failure and see where you configuration is failing.
[ ](https://chat.hyperledger.org/channel/composer?msg=24ZbbAseEzPZjo6Er) @SudheerKaspa hi there would suggest to review the logs of your ca server to see errors. Eg. `docker logs ca.org1.example.com` (or whatever) to get info on the auth failure and see where your configuration is failing.
[ ](https://chat.hyperledger.org/channel/composer?msg=AZZTYLy2apxE6Mxnx) @piyush i tried this but i face issue that i added Participant and i can't issue identity for him
[ ](https://chat.hyperledger.org/channel/composer?msg=2pDxth8BnopycL2fW) @gen_el - the Docker Container for .016.3 is working OK. The instructions for setting it up are here:
https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
but for the error you are seeing, the critical line is in the docker run command ` -v ~/.composer:/home/composer/.composer \ ` where your folder containing your cards is mapped into the container.
Just a quick for when you have sorted the card name - if your connection.json for the card has localhost in it as the address of the fabric servers you will have a problem as the Rest server running in the container will be resolving localhost back into the container. If you have localhost in the connection.json you will probably want to replace it with the address of your host system.
Clipboard - January 31, 2018 4:37 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=dhhkBnR3zpqhbYfgh) @rthatcher Checked that host folder mapping and it looked fine. I will run through the instruction again. Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=988sePGHLtEBJAkni) @mahoney1 [ ](https://chat.hyperledger.org/channel/composer?msg=ijEbsds5gDHkGdAxm)
@SudheerKaspa did you create the PeerAdmin card / import it ? Are you using the Dev environment setup for Composer? the logs suggest its requesting a new identity from the CA server - you can check with composer card list --name PeerAdmin@hlfv1 etc
@wininani don't know how you requested identities in the first place / or which CA server is serving the request, but the last message in your screen post is the problem.I would strongly suggest you review the logs of the ca server in question to see errors. Eg. docker logs etc to get info on the auth failure
[ ](https://chat.hyperledger.org/channel/composer?msg=QtWruRDWGtjjDyDqS) @mahoney1 sudheer@sudheer-HP-Laptop-15-bs0xx:~/Desktop/mroproject/mronproject$ composer card list --name PeerAdmin@hlfv1
userName: PeerAdmin
description:
businessNetworkName:
roles:
- PeerAdmin
- ChannelAdmin
connectionProfile:
name: hlfv1
type: hlfv1
channel: composerchannel
secretSet: No secret set
credentialsSet: Credentials set
Command succeeded
[ ](https://chat.hyperledger.org/channel/composer?msg=5Xwpu5k8JX2oCR3xm) Earlier PeerAdmin@hlfv1 used to work fine but I tried changing the PeerAdmin card for some purpose and then I restored the PeerAdmin@hlfvi
@SudheerKaspa can't be what steps you took before, would suggest to 1) delete the card `composer card delete` and 2) recreate / re-import it using the provided `./createPeerAdminCard.sh` script then 3) try a `composer network ping PeerAdmin@hlfv1` to connect and then try your runtime install
@SudheerKaspa can't be sure what steps you took before, would suggest to 1) delete the card `composer card delete` and 2) recreate / re-import it using the provided `./createPeerAdminCard.sh` script then 3) try a `composer network ping PeerAdmin@hlfv1` to connect and then try your runtime install
@SudheerKaspa can't be sure what steps you took before, would suggest to 1) delete the card `composer card delete` (although from memory I believe step 2 will delete it if its present anyway) and 2) recreate / re-import it using the provided `./createPeerAdminCard.sh` script then 3) try a `composer network ping PeerAdmin@hlfv1` to connect and then try your runtime install
[ ](https://chat.hyperledger.org/channel/composer?msg=GgSRjJrWoZoSLKGBj) @mahoney1 Thank you It worked out :slight_smile:
Hi everyone,
I work on a presentation of hyperledger for my team-mates, and I just see that, in Hyperledger we can choose the Consensus Type :
```Consensus may be implemented in different ways such as through the use of lotterybased
algorithms including Proof of Elapsed Time (PoET) and Proof of Work (PoW) or
through the use of voting-based methods including Redundant Byzantine Fault Tolerance
(RBFT) and Paxos. Each of these approaches targets different network requirements and
fault tolerance models.```
By default, which one is used in Hyperledger Fabric ?
[ ](https://chat.hyperledger.org/channel/composer?msg=4xCbmE9tjL9qTPszk) @CorentinPacaud - I would suggest you check the Fabric documentation http://hyperledger-fabric.readthedocs.io/en/latest/blockchain.html and if that does not answer, then ask in the #fabric channel.
Hello, I wrote the definition of an asset using cto. What if I want a transaction to be automatically called when the value of one attribute of this asset reach a certain value, Is it possible ? How ? Thanks for your help.
@CorentinPacaud suggest to read the WG paper on reference architecture and theh consensus layer. You mention 'Hyperledger' and it gives a reference point across the Hyperledger project frameworks. For Fabric, the default I believe is Kafka is provided as a reference implementation out of the box, but obviously pluggable (as discussed in the WP in particular p7-8).
@CorentinPacaud suggest to read the WG paper on reference architecture and the consensus layer. You mention 'Hyperledger' and it gives a reference point across the Hyperledger project frameworks. For Fabric, the default I believe is Kafka is provided as a reference implementation out of the box, but obviously pluggable (as discussed in the WP in particular p7-8).
[ ](https://chat.hyperledger.org/channel/composer?msg=rEor2EWMh66u4kBJS) @TBigjohn there's an example of exactly that in the sample-networks (eg trade-network) - See transaction logic -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L38 and the query built (to obtain the results based on criteria for the value set on one field) is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry#L22for the logic ("remove commodities over a certain threshold"). Queries are one way of checking ; a transaction that changes a value has to be committed by all peers, but it can't call another transaction from within a transaction, certainly without knowing if it was committed etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=rEor2EWMh66u4kBJS) @TBigjohn there's an example of something similar to that in the sample-networks (eg trade-network) - See transaction logic -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L38 and the query built (to obtain the results based on criteria for the value set on one field) is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry#L22for the logic ("remove commodities over a certain threshold"). Queries are one way of checking ; a transaction that changes a value has to be committed by all peers, but it can't call another transaction from within a transaction, certainly without knowing if it was committed etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=rEor2EWMh66u4kBJS) @TBigjohn there's an example of something similar to that in the sample-networks (eg trade-network) - See transaction logic -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L38 and the query built (to obtain the results based on criteria for the value set on one field) is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry#L22for the logic ("remove commodities over a certain threshold"). Queries are one way of checking ; a transaction that changes a value has to be committed by all peers, but can't call another transaction from within a transaction, certainly without knowing if it (its R/W set) was committed etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=vQXa8ueTmotDX3ZEh) @mahoney1 OK Thanks for this. But in that example the "remove commodities ... " still have to be launched manually. What I would like to achieve is to have this acting as a smart contract, so when the status attribute of my asset reach the value of 'Done', to have this asset itself launching a piece of code. I am wrong trying to do it this way ?
@TBigjohn so that's a business event - the asset reaches a particular threshold or status. So in the transaction that updates the asset, and after the update is performed there, you can emit an event that says 'asset has reached value of 'done'' - then from your application or wherever (that consumes the event), you trigger the transaction smart contract (as a result of the status change) that 'does something' (based on the event) eg. submit the resultant transaction -> https://hyperledger.github.io/composer/applications/subscribing-to-events.html
Another question : I read a lot in the doc about Hyperledger chanels. How do I setup a chanel in my dev to exchange between two participant ? Is it with acl to restrict access to access rights ? How can I know on which chanel the transaction code I wrote on js will be available ?
[ ](https://chat.hyperledger.org/channel/composer?msg=MG97wshv2N7nQN7n9) @mahoney1 Thanks
Has joined the channel.
Hello, How scalable are is a system written in composer compared to one written in go?
Hi all..are is the composer website down?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=aiAEigSYaeqCDn9hW) @TBigjohn channels are defined in Composer's connection profiles. Each Fabric channel (shared by two businesses) is a separate ledger. When you deploy your BNA (with the transaction code), you define which channel (through the connection profile, part of the business network card you used to do the business network deployment) its going to be instantiated on. You can check a business network card 's connection.json to know 'which channel' or use some dashboard means if the business network is installed (say) to a Cloud platform, as it will run in its own chaincode container. ACLs (a Composer concept), controls access within that business network (to which participants mapped to identities will transact). Channels create separation of ledgers. If you want to define your own channels, this is a Fabric task - see more here -> http://hyperledger-fabric.readthedocs.io/en/release/channels.html - it also has sample Fabric network examples that you can build.
[ ](https://chat.hyperledger.org/channel/composer?msg=aiAEigSYaeqCDn9hW) @TBigjohn Fabric channels are defined in Composer's connection profiles (so it knows which channel a business network is instantiated on). Each Fabric channel (shared by two businesses) is a separate ledger. When you deploy your BNA (with the transaction code), you define which channel (through the connection profile, part of the business network card you used to do the business network deployment) its going to be instantiated on. You can check a business network card 's connection.json to know 'which channel' or use some dashboard means if the business network is installed (say) to a Cloud platform, as it will run in its own chaincode container. ACLs (a Composer concept), controls access within that business network (to which participants mapped to identities will transact). Channels create separation of ledgers. If you want to define your own channels, this is a Fabric task - see more here -> http://hyperledger-fabric.readthedocs.io/en/release/channels.html - it also has sample Fabric network examples that you can build.
[ ](https://chat.hyperledger.org/channel/composer?msg=aiAEigSYaeqCDn9hW) @TBigjohn Fabric channels are defined in Composer's connection profiles (so it knows which channel a business network is instantiated on). Each Fabric channel (shared, say, by two businesses or orgs) is a separate ledger. When you deploy your BNA (with the transaction code), you define which channel (through the connection profile, part of the business network card you used to do the business network deployment) its going to be instantiated on. You can check a business network card 's connection.json to know 'which channel' or use some dashboard means if the business network is installed (say) to a Cloud platform, as it will run in its own chaincode container. ACLs (a Composer concept), controls access within that business network (to which participants mapped to identities will transact). Channels create separation of ledgers. If you want to define your own channels, this is a Fabric task - see more here -> http://hyperledger-fabric.readthedocs.io/en/release/channels.html - it also has sample Fabric network examples that you can build.
[ ](https://chat.hyperledger.org/channel/composer?msg=aiAEigSYaeqCDn9hW) @TBigjohn Fabric channels are defined in Composer's connection profiles (so it knows which channel a business network is instantiated on). Each Fabric channel (shared, say, by two businesses or orgs) is a separate ledger. When you deploy your BNA (with the transaction code), you define which channel (through the connection profile, part of the business network card you used to do the business network deployment) its going to be instantiated on. You can check a business network card 's connection.json to know 'which channel' or use some dashboard means if the business network is installed (say) to a Cloud platform, as it will run in its own chaincode container. ACLs (a Composer concept), controls access within that business network (to which participants mapped to identities will transact). Channels create separation of ledgers. If you want to define your own channels, this is a Fabric task - see more here -> http://hyperledger-fabric.readthedocs.io/en/release/channels.html - it also has (ie same website) sample Fabric network examples that you can build.
[ ](https://chat.hyperledger.org/channel/composer?msg=evrr5QGwN4tLSuQLP) @avagarwal in terms of performance, would read release notes for v0.17.0 for understanding of scalability aspects https://github.com/hyperledger/composer/releases (scroll down to v017.0). Composer does not directly generate GO chaincode. It uses a generic chaincode that maps composer models to chaincode tables and runs transaction processor functions (written in javascript) in a javascript engine. So it runs in its own runtime environment and chaincode container (just like Go). With with Fabric v1.1 (currently in preview), it will have native Node.js chaincode support to address scalability factors). But a lot depends on what you address as scalability - Composer's runtime runs atop Fabric as installed chaincode. There's also a Hyperledger working group looking at this (spanning use cases) see more here -> https://cn.hyperledger.org/blog/2017/06/08/hyperledger-announces-performance-and-scalability-working-group and wiki link with past minutes https://wiki.hyperledger.org/groups/pswg/performance-and-scale-wg
[ ](https://chat.hyperledger.org/channel/composer?msg=evrr5QGwN4tLSuQLP) @avagarwal in terms of performance, would read release notes for v0.17.0 for understanding of scalability aspects https://github.com/hyperledger/composer/releases (scroll down to v017.0). Composer does not directly generate GO chaincode. It uses a generic chaincode that maps composer models to chaincode tables and runs transaction processor functions (written in javascript) in a javascript engine. So it runs in its own runtime environment and chaincode container (just like Go). With with Fabric v1.1 (currently in preview), it will have native Node.js chaincode support to address scalability and other factors such as performance etc). But a lot depends on what you address as scalability - Composer's runtime runs atop Fabric as installed chaincode. There's also a Hyperledger working group looking at this (spanning use cases) see more here -> https://cn.hyperledger.org/blog/2017/06/08/hyperledger-announces-performance-and-scalability-working-group and wiki link with past minutes https://wiki.hyperledger.org/groups/pswg/performance-and-scale-wg
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=syBFun2Mr3YdRy58t) @mahoney1 Thank you very much for thos information about chanels, now it's really becoming more clear for me. So I assume that I can deploy the same bna on 2 or more different business networks BUT a transaction code deploy on chanel 1 will never be able to reach an assetdeploy on chanel 2. So if I need interaction between two different chanels, I need to use events, correct ?
[ ](https://chat.hyperledger.org/channel/composer?msg=MG97wshv2N7nQN7n9) @mahoney1 Thanks. In a system developped with Hyperledger Composer, if I say that a Smart Contract is the combination of one (or more) asset and one transaction code, am I correct ?
Has joined the channel.
@here is there a docker image for running as your deployment client, e.g.
node
nvm
python
composer-cli
composer-rest
yo
all the stuff from the preq and the development tools ??
[ ](https://chat.hyperledger.org/channel/composer?msg=QmwYXrbzGZ7BYYAFD) @mahoney1 Thank you for the reply. Will review the links
hi, everyone i have a permission issue. the error information is :
*Error: Error trying install composer runtime. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: Authorization for INSTALL has been denied (error-Failed verifying that proposal's creator satisfies local MSP principal during channelless check policy with policy [Admins]: [This identity is not an admin])) Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: Authorization for INSTALL has been denied (error-Failed verifying that proposal's creator satisfies local MSP principal during channelless check policy with policy [Admins]: [This identity is not an admin]))*
i use admin ca when i create business network card
use admin ca when i deploy a new business network
Has joined the channel.
I encountered one error when I execute the cmd of "composer identity issue" as below, anyone can help me?
Clipboard - 2018年2月1日下午3点19分
Has anyone tried this with composer?
https://www.ibm.com/developerworks/cloud/library/cl-add-an-organization-to-your-hyperledger-fabric-blockchain/index.html
[ ](https://chat.hyperledger.org/channel/composer?msg=QhoRABKLnNRQPpM4F) @qb I faced the same issue Please maintain a freshly imported admin card.For now do composer card delete and import it again
[ ](https://chat.hyperledger.org/channel/composer?msg=whqw5xLBfapPqWSWq) @james3443112 - are you following a tutorial or working on a custom Fabric?
When you created the card, did you include the 2 roles on the command line ` -r PeerAdmin -r ChannelAdmin`
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=QhoRABKLnNRQPpM4F) @qb - How was the card admin@marbles1 created? Can you try `composer network list --card admin@marbles1` to see if you can access the Business Network, and also `composer card list --name admin@marbles1` to show the full details of the card.
Hi, We are having some troubles in deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (Multiple Organizations).We followed this link as the reference. https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html . Still we have some issues.Can you help us to perform this task step by step?
Clipboard - February 1, 2018 3:24 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=HLjyCydMQYiY9nfbT) @varun-raj I don't think this can done in using composer. This is a fabric network configuration. Composer is for business network (business use case) related use cases.
[ ](https://chat.hyperledger.org/channel/composer?msg=HLjyCydMQYiY9nfbT) @varun-raj I don't think this can be done using composer (a self imposed limited due to the current composer project scope). This is a fabric network configuration. Composer is for business network (business use case) related use cases.
[ ](https://chat.hyperledger.org/channel/composer?msg=HLjyCydMQYiY9nfbT) @varun-raj I don't think this can be done using composer (a self imposed limited due to the current composer project scope). This is a fabric network configuration. Composer is for business network (business use case) related use cases.
[ ](https://chat.hyperledger.org/channel/composer?msg=HLjyCydMQYiY9nfbT) @varun-raj I don't think this can be done using composer (a self imposed limit due to the current composer project scope). This is a fabric network configuration. Composer is for business network (business use case) related use cases.
@mahoney1 @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=ow8XFrtahfGdfmu6S) @gen_el But when we need to add new org, we need to upgrade the chaincode. How to do that with composer cli commands?
[ ](https://chat.hyperledger.org/channel/composer?msg=gisbBXjX5KYhAr6wu) @varun-raj You can't add a new organisation with composer cli. Explore the Configtxlator tool and the Fabric SDK (not sure of the SDK).
[ ](https://chat.hyperledger.org/channel/composer?msg=gisbBXjX5KYhAr6wu) @varun-raj You can't add a new organisation with composer cli. Explore the Configtxlator tool and the Fabric SDK.
[ ](https://chat.hyperledger.org/channel/composer?msg=8BKu8BwMyMzBoFtuD) @gen_el Yeah, I'm able to add a new organization to the new network. Now the problem comes when I try to install the new version of the chaincode. Only after installing new version we can able to upgrade and then change the endorsement policy
Composer REST server API allows me to make API calls as an admin. How do I invoke the API call as a user of Organization X? Can you point me to some documentation?
[ ](https://chat.hyperledger.org/channel/composer?msg=73azZintDSjCurntx) @praveencastelino - the REST server starts with an "Admin" to discover the network. This doc has links for Authentication and Multiusermode for the REST Server:
https://hyperledger.github.io/composer/integrating/integrating-index
[ ](https://chat.hyperledger.org/channel/composer?msg=HLjyCydMQYiY9nfbT) @varun-raj Why would you want to do this on composer? Isnt composer meant to abstract alot of this away from the user?
Yeah even I guess so. But when we add a new organization, according to the documentation we need to install the chain code with a new version. How can I achieve this when I'm using composer? [ ](https://chat.hyperledger.org/channel/composer?msg=bGipJQ9tsDb3j6fv7) @SamuelDare
Add them as participants in your `models/cto` file and edit there permissions in the .acl and redeploy the business network
Has joined the channel.
@varun-raj If you add a new organisation then you need to install the chaincode at the same level as the other orgs. If you want to update the endorsement policy then you need to upgrade the chaincode and provide a new endorsement policy. Unfortunately although we provide a way in composer to upgrade to a new micro level (and that means you have to have a newer version of the composer runtime to upgrade to) of the composer runtime we don't provide a way to include a new endorsement policy
@varun-raj If you add a new organisation then you need to install the chaincode at the same level as the other orgs. If you want to update the endorsement policy then you need to upgrade the chaincode across all the orgs and provide a new endorsement policy. Unfortunately although we provide a way in composer to upgrade to a new micro level (and that means you have to have a newer version of the composer runtime to upgrade to) of the composer runtime we don't provide a way to include a new endorsement policy
@varun-raj If you add a new organisation then you need to install the chaincode at the same level as the other orgs. If you want to update the endorsement policy then you need to install new chaincode and upgrade to that chaincode across all the orgs and provide a new endorsement policy. Unfortunately although we provide a way in composer to upgrade to a new micro level (and that means you have to have a newer version of the composer runtime to upgrade to) of the composer runtime we don't provide a way to include a new endorsement policy
[ ](https://chat.hyperledger.org/channel/composer?msg=3sFwqmzRZZYtz8ZzG) @davidkel In that case, Can you add the new organization without updating the endorsement policy? and then start using composers chaincode in it?
[ ](https://chat.hyperledger.org/channel/composer?msg=L4WQxH3snoYgrk9qq) @SamuelDare I want to have multi-org setup where when a new company signs up they will set up their own machines to access the network. A typical distributed architecture
Hi guys.. the key store when I use compose is stored in the filesystem only? can I move to a database so it can be access from other nodes as well ?
Hi guys.. the key store when I use composer it stores the keys in filesystem only? can I move to a database so it can be access from other nodes as well ?
Has joined the channel.
Hello, I would like to know how to invoke Hyperledger Composer query having parameters through Transaction function.. I am able to invoke a normal query through Transaction function but giving me issue for queries having parameters
Hi All, I was able to set up business composer for single Organization as mentioned on https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org, but when I tried for multiple (two) Organizations as on https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org, its failing at the last steps -
@varun-raj you should be able to. Just use composer runtime install on the newly added peers to the channel. You need to make sure you put the same version that has already been installed on the other peers.
For single Org I was able to write into Ledger through composer_rest_server
Clipboard - February 1, 2018 5:25 PM
I followed the steps as mentioned on the tutorial page, but still getting the above error
[ ](https://chat.hyperledger.org/channel/composer?msg=MpMKRYgxwARYprZ3A) @davidkel Awesome, I'll try and checkit out.
[ ](https://chat.hyperledger.org/channel/composer?msg=Ag7xZAjJiHdncLpNZ) @mohamskh - did your `composer runtime install` command complete ok? Have you restarted your machine recently? Perhaps your Fabric is not running? Try `docker ps` to check.
[ ](https://chat.hyperledger.org/channel/composer?msg=Ag7xZAjJiHdncLpNZ) @mohamskh - did your `composer runtime install` command complete ok? Have you restarted your machine recently? Perhaps your Fabric is not running? Try `docker ps` to check.
This link will show how to restart the containers if they are not running:
https://stackoverflow.com/questions/47941684/resuming-hyperledger-session-using-hyperledger-composer/47942846#47942846
[ ](https://chat.hyperledger.org/channel/composer?msg=D8hheQcZpNtqzrCtX) @TBigjohn sorry for delay. The deployed business network (including the model file, permissions, the transaction processors, queries etc etc) IS the smart contract. We should really use that term more, than merely saying deployed chaincode (which is really a Fabric concept). Hope that helps.
[ ](https://chat.hyperledger.org/channel/composer?msg=T6v3NhHRjpEbRiKqD) @wininani have you got a permissions.acl in your business network and does it have any system / network ACLs to allow admin to connect - see https://hyperledger.github.io/composer/reference/acl_language.html - also as mentioned yesterday, you should do a `docker logs _your_ca_server_name_` to check for errors.
[ ](https://chat.hyperledger.org/channel/composer?msg=T6v3NhHRjpEbRiKqD) @wininani have you got a permissions.acl in your business network and does it have any system / network ACLs to allow admin to connect - see https://hyperledger.github.io/composer/reference/acl_language.html
Has joined the channel.
hi, i'm very new to blockchain, hyperledger, and now composer. i've gone through the playground tutorial and various docs on deployment, but i'm confused on how to deploy the business network to multiple peers so that they all know about each other in order to send each other updates to the ledger. what am i missing? thank you!
ah, i believe i found what i needed in Step 3 of this page: https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
fyi @here - the Community call is in 30 mins / 5pm UTC (5pm UK, 12pm ET, 9am PT) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-1st-February-2018 best regards Paul
[ ](https://chat.hyperledger.org/channel/composer?msg=ibf4LDQa6tZdQrhWg) @SteveYardumian cool
Has joined the channel.
Has joined the channel.
How do I make my raspberry pi a participant in the fabric network, which is created by hyperledger-composer?
@here Composer 0.17.3 was released today. This release only works with the 1.1-alpha that has just been released so make sure you grab the latest fabric-dev-servers.tar.gz file which has been upgraded to 1.1-alpha. Note that Composer 0.17.0-0.17.2 only works with the 1.1-techpreview so don't try to upgrade your fabric to 1.1-alpha without upgrading composer.
Has joined the channel.
Hello everyone, is it possible to create more than one business network admin?
I guess I have got my answer :)
I just need someone to confirm that I can issue this command
composer network start with two different network admins for different profiles.
has anyone tried limit,skip in queries? Can't seem to make them work
@theathibm limit and skip currently don't work as fabric doesn't allow them to be set.
@davidkel is there a work around?
how about order by?
really need to only get a few records and not all records
@davidkel actually, here's the problem: we have a ton of records/assets. we infact wan't to grab a bunch of them, but the size limit is reached in the query and composer / fabric can't return all the records because the result is too big
so we need to be able to paginate through all the records that we want.
i.e. break up the record set into chunks until we get all the records we need
@theathibm I'm not aware of any workaround. This is the hyperledger fabric jira raised
https://jira.hyperledger.org/browse/FAB-2809
@theathibm I'm not aware of any workaround. This is the hyperledger fabric jira raised
https://jira.hyperledger.org/browse/FAB-2809
Only alternative I can think of is you get all the assets and iterate through them.
@theathibm I'm not aware of any workaround. This is the hyperledger fabric jira raised
https://jira.hyperledger.org/browse/FAB-2809
Only alternative I can think of is you get all the assets and iterate through them, don't know if you can get creative with queries somehow
Hello everyone, I try to build a BNA but I've got this error :
```
```
Hello everyone, I try to build a BNA but I've got this error :
```
SyntaxError: Failed to parse ...../lib/logic.js: Cannot read property 'name' of null
Command failed
```
Any idea ? BTW, I don't any property named 'name'
Hi, having error a error when starting network, any help appreciated
```
2018-02-01 20:35:01.141 UTC [util] DockerBuild -> DEBU 5a2 Attempting build with image hyperledger/fabric-ccenv:x86_64-1.0.4
2018-02-01 20:35:07.435 UTC [chaincode-platform] func1 -> ERRO 5a3 Failed to generate platform-specific docker build
```
more detailed log: https://gist.github.com/dontfight/ae9081b03b5318d2345fb084878024a2
Hi, having a error when starting network, any help appreciated
```
2018-02-01 20:35:01.141 UTC [util] DockerBuild -> DEBU 5a2 Attempting build with image hyperledger/fabric-ccenv:x86_64-1.0.4
2018-02-01 20:35:07.435 UTC [chaincode-platform] func1 -> ERRO 5a3 Failed to generate platform-specific docker build
```
more detailed log: https://gist.github.com/dontfight/ae9081b03b5318d2345fb084878024a2
Hi, having an error when starting network, any help appreciated
```
2018-02-01 20:35:01.141 UTC [util] DockerBuild -> DEBU 5a2 Attempting build with image hyperledger/fabric-ccenv:x86_64-1.0.4
2018-02-01 20:35:07.435 UTC [chaincode-platform] func1 -> ERRO 5a3 Failed to generate platform-specific docker build
```
more detailed log: https://gist.github.com/dontfight/ae9081b03b5318d2345fb084878024a2
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=xAd6baSQrvqfkueYm) @rajivgandhi2010 Hi Rajiv
[ ](https://chat.hyperledger.org/channel/composer?msg=xAd6baSQrvqfkueYm) @rajivgandhi2010 Hi Rajiv.
composer and composer-playground are node scripts. Make sure you have node installed on the windows. The scripts I have are for linux environment. I am assuming that you have respective scripts for windows. You can also run them with node command line options like node composer or however you run node application on windows. Hope that helps.
[ ](https://chat.hyperledger.org/channel/composer?msg=725HsXjh22D2di6um) I have not checked that.
Hi have have managed to implement a docker swarm running multiply peers using docker-compose version 3 and NFS mapped drives, It is pretty rough but I could for fabric samples or something similar and give back to the project, would anyone be interested in this?
[ ](https://chat.hyperledger.org/channel/composer?msg=HLjyCydMQYiY9nfbT) @varun-raj Just a FYI, this document is for fabric v1.1 , this talks about adding orgs dynamically without need to edit the config files but creating deltas and merging them with only what is required for the new org.
[ ](https://chat.hyperledger.org/channel/composer?msg=XYgJDErhHfDvkE3r4) @vkblue yeah I understand that it's for v1.1 but my doubts is will we need to do something from composer side to achieve this if we're depending on composer for building the chaincode?
[ ](https://chat.hyperledger.org/channel/composer?msg=iYoSgNzuoW36F7Pvs) @varun-raj My understanding is,fabric is your core BC network, composer is you business network. If you add an Org to the BC network and you would want peers from the new Org to participate in the business network you need to create the cards required, install the runtime, deploy the bna file and of course take care of the RESTServers as required. May be you need to be very specific on you questions if this is not what you looking for.
[ ](https://chat.hyperledger.org/channel/composer?msg=iYoSgNzuoW36F7Pvs) @varun-raj My understanding is,fabric is your core BC network, composer is your business network. If you add an Org to the BC network and you would want peers from the new Org to participate in the business network you need to create the cards required, install the runtime, deploy the bna file and of course take care of the RESTServers as required. May be you need to be very specific on you questions if this is not what you looking for.
[ ](https://chat.hyperledger.org/channel/composer?msg=uH2jkxwmqPv6nEDcC) @vkblue Yeah exactly. Now I'm facing the trouble when I try to install the chaincode in newly added organization. According to the fabric's documentation, we need to fetch the 0 (Genisis block) and then join the channel with it. After that, we need to upgrade the chain code version with fabric, but I'm not able to achive this as our chaincode is deployed with composer. Any idea how to do this?
[ ](https://chat.hyperledger.org/channel/composer?msg=BPffAgXK39dThYjb8) @hounded :wave: Yup!
Hello, I am getting this error related to events. I have just subscribed to events and I don't know why this error popping up : ``` at events.forEach (/home/admlcl/apps/blockchain/server/node_modules/composer-client/lib/businessnetworkconnection.js:499:73)
at Array.forEach (native)
at HLFConnection.connection.on (/home/admlcl/apps/blockchain/server/node_modules/composer-client/lib/businessnetworkconnection.js:498:29)
at emitOne (events.js:96:13)
at HLFConnection.emit (events.js:188:7)
at ccEvent.eventHubs.(anonymous function).registerChaincodeEvent [as onEvent] (/home/admlcl/apps/blockchain/server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:231:22)
at /home/admlcl/apps/blockchain/server/node_modules/fabric-client/lib/EventHub.js:810:12
at Set.forEach (native)
at _processChainCodeOnEvents (/home/admlcl/apps/blockchain/server/node_modules/fabric-client/lib/EventHub.js:808:14)
at ClientDuplexStream.
Has joined the channel.
I tried to include multiple pairs in my network through connection profile (connection.js) to deploy my composer to single fabric organization. and it is giving me "Duplicate Peer: peer with this url already exists" . Any idea what this is?
I tried to include multiple peers in my network through connection profile (connection.js) to deploy my composer to single fabric organization. and it is giving me "Duplicate Peer: peer with this url already exists" . Any idea what this is?
Clipboard - February 2, 2018 2:44 PM
@wininani You don't need to post transaction id. just remove the transaction id and timestamp and try it out. It should work.
@subigyaupadhyay tq for your reply ...after this when i open couchdb that is showing txn 0 ...what is txn and block here
@subigyaupadhyay tq for your reply ...after this when i open couchdb that is showing txn 0
Clipboard - February 2, 2018 2:51 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=hS9ytQpqRgYDHeK6k) @wininani on CouchDB this [https://stackoverflow.com/questions/46149968/how-is-data-store-in-hyperledger-fabric-when-using-couchdb-as-the-ledger-state-d] may help you - to see the transaction you just submitted, you can use Playground (Historian) or use REST API to use a query that selects Trade - eg. `SELECT org.acme.sample.Trade`
@mahoney thank you, but my question is "When i am doing transactions using rest api block num count is being increased, tx num still 0. Can i know the difference between block num and tx num.
@mahoney1 thank you, but my question is "When i am doing transactions using rest api block num count is being increased, tx num still 0. Can i know the difference between block num and tx num.
[ ](https://chat.hyperledger.org/channel/composer?msg=At7onXZN5cjxe7eym) @subigyaupadhyay the file should be called connection.json (I assume it is and that's a typo). Sounds like your profile has duplicate stanza and you've replicated a peer definition in the same profile.
@mahoney1 thanks for the reply. so any idea how should I configure my connection.json file so as to have two peers in the organization?
Screen Shot 2018-02-02 at 3.08.35 PM.png
@mahoney1 any help would be greatly appreciated.
[ ](https://chat.hyperledger.org/channel/composer?msg=NjhhqEWrRiPExJ2Xq) @wininani more info here -> https://jira.hyperledger.org/secure/attachment/10585/HyperledgerFabric_LedgerV1_20170315.pptx in CouchDB its to do with block storage location (and indexing of:) so block, and offset in that block
[ ](https://chat.hyperledger.org/channel/composer?msg=pQCPHLQDk4KQLJozE) @subigyaupadhyay simply adding a peer to your connection.json file in isolation, isn't sufficient (unless you're saying you did the Fabric configuration to match). If you're running with Composer v.0.16.x then the Org1 setup (even though its a multi-org tutorial) is probably something similar to what you've done (see 'Step 3' for sample profile in particular the file connection-org1-only.json which has multiple peers, same org) . You can't just add the peer, it needs more steps such as mentioned and installing the Composer runtime onto that peer.
[ ](https://chat.hyperledger.org/channel/composer?msg=pQCPHLQDk4KQLJozE) @subigyaupadhyay simply adding a peer to your connection.json file in isolation, isn't sufficient (unless you're saying you did the Fabric configuration to match). If you're running with Composer v.0.16.x then the Org1 setup (even though its a multi-org tutorial) is probably something similar to what you've done (see 'Step 3' for sample profile in particular the file connection-org1-only.json which has multiple peers, same org) . You can't just add the peer, it needs more steps such as mentioned and installing the Composer runtime onto that peer. If you're running with Composer v0.17.x then you need to look at the 'next' version of the docs (because the connection profile takes on a different format) - see those docs here -> https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-multi-org.html
@mahoney1 I have already done the fabric configuration to match with one peer. I am just trying to add another peer and going through the fabric configuration again when that peer duplicate error got thrown.
and yes I am running with composer v0.17.x
@jaguarg would have to see your model / js code. Can you post on Stack Overflow so it can be reviewed. Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=gmp4ovhdNicqq77ow) @subigyaupadhyay as mentioned would verify your Fabric configuration first then - verify how you've configured your connection profile - check out the second doc link I sent you - it should help.
[ ](https://chat.hyperledger.org/channel/composer?msg=gmp4ovhdNicqq77ow) @subigyaupadhyay as mentioned, would verify your Fabric configuration first then - verify how you've configured your v17.x connection profile - check out the second doc link I sent you - it should help.
[ ](https://chat.hyperledger.org/channel/composer?msg=gmp4ovhdNicqq77ow) @subigyaupadhyay as mentioned, would verify your Fabric configuration first then - verify how you've configured your v17.x connection profile - check out the second doc link I sent you (including what steps are needed to bring that peer into use for Composer etc) - it should help.
@mahoney1 How can I do this `peer chaincode upgrade`, so that I can really update the endorsement policy. This is the case when I tried to dynamically add an organization. But I am not sure of the parameters that has to be sent to the cli command. When I tried, all I landed is on this error.
`Calling chaincode Init() returned error response [Error: Failed to add object with ID 'businessnetwork' in collection with ID '$sysdata' as the object already exists]. Sending ERROR message back to peer`
@navdevl that's really a #fabric question ; suggest to read here -> http://hyperledger-fabric.readthedocs.io/en/release/chaincode4noah.html on chaincode operations and also here -> https://stackoverflow.com/questions/46052136/how-to-change-endorsement-policies for discussion
@navdevl if the failure was as a result of a `composer network upgrade` command failure, then I would report this as an issue on the issues page on Github with all the details, logs, screenshots etc - otherwise, if not, that's really a #fabric question ; suggest to read here -> http://hyperledger-fabric.readthedocs.io/en/release/chaincode4noah.html on chaincode operations and also here -> https://stackoverflow.com/questions/46052136/how-to-change-endorsement-policies for discussion
Hi Everyone,
I have a business network with number of Access controls for different Participants.
Could you please suggest whether we have a sample application/wallet to use multiple users(cards) on the UI application.
[ ](https://chat.hyperledger.org/channel/composer?msg=y7PESR2XesNeT6oQa) @prmdmshra so you mean beyond switching identities (and checking ACLs) using, for example Playground? The link below the current composer sample applications directory -> https://github.com/hyperledger/composer-sample-applications/tree/master/packages
[ ](https://chat.hyperledger.org/channel/composer?msg=bon8Pmf9Yfh2WuSLt) @mahoney1
I have the Angular Web application. I want to switch between all the users/Participant in my Web application in the similar way we switch identities in Hyperledger Composer using ID registry.
I think that will be feasible to demo my Use case.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ayJ285txgPAWn2Pbj) @prmdmshra I see. Yes indeed. This demo https://developer.ibm.com/code/patterns/decentralized-energy-hyperledger-composer/ may also be of use ; and using the APIs, see examples here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#card-api-errors--resolutions
Has joined the channel.
Has joined the channel.
Hello, I had a general question about composer. It seems to me that composer is a tool for rapid development of applications built on Fabric. What I can't confirm is that it's meant only for prototyping or for both prototyping (in playground) as well as deploying apps in production, which I tend to believe
I'm getting conflicting feedback though from other parties
I am completing the labs and tutorials for Hyberledger as provided in the documentation and also through IBM's blockchain learning modules, but I feel there is still so much I need to know in order to create an app. Does anyone know of any additional tutorials or references I could use for developing a simple blockchain network and interface? this is for a University project
I should specify, all these labs are based on clones of already existing blockchain networks from hyperledger repos, so I dont fully understand the process as it goes from the beginning
Has joined the channel.
hello. can someone explain me how to i get a composer created BNA file to create transactions with a created participant via the API?
@jcap not entirely accurate. Indeed, Hyperledger Composer is a development framework but also a runtime abstraction layer for executing smart contracts in which a business network (eg. say 'trade settlement' blockchain as a use case or network ; or 'supply chain finance' etc etc) is deployed as a runtime smart contract, on the blockchain, between the parties vinvolved, and upon which all have agreed the terms (what the model is, the data elements, the security, the access control, how identities are issued, , the contract terms blah blah). Sure, Composer makes it easier to develop blockchain applications and smart contracts - that's one of its aims, as well as adding in all of the consistency, validation or gruntwork you would otherwise have to do as an application developer (you can get an insight into that here -> https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/ where Fabric and Composer are compared. So there's the development perspective but also the runtime perspective as I've alluded to above. Hyperledger Composer currently uses Hyperledger Fabric as the underlying 'blockchain infrastructure' or underlying blockchain technology, put simply. This can be configured in many ways in a secure Cloud environent etc etc. Composer is aimed at production deployment/scalability - ultimately, you'll be deploying business networks and smart contract transaction logic (written in a mainstream app dev language so app developers don't need specialist language skills) that will execute on the blockchain network (wherever that is deployed, however configured, privacy etc) that you (as an organisation etc) will configure (ie between the parties involved). Composer delivers native Node.js support with Fabric v1.1 (alpha version) and that version of Fabric will be available as a GA production ready release in the near future (obviously Fabric v1.0 is already out there). So Composer is both the development framework, the modeler and the runtime execution on the blockchain ; as well as all managing all the other important aspects of working with that business network, such as managing identity,access control, participation, API support and connectivity elements essential to working with/transacting on a blockchain network. Hope this helps.
@jcap not entirely accurate, let me add some more insight. Indeed, Hyperledger Composer is a development framework but also a runtime abstraction layer for executing smart contracts in which a business network (eg. say 'trade settlement' blockchain as a use case or network ; or 'supply chain finance' etc etc) is deployed as a runtime smart contract, on the blockchain, between the parties vinvolved, and upon which all have agreed the terms (what the model is, the data elements, the security, the access control, how identities are issued, , the contract terms blah blah). Sure, Composer makes it easier to develop blockchain applications and smart contracts - that's one of its aims, as well as adding in all of the consistency, validation or gruntwork you would otherwise have to do as an application developer (you can get an insight into that here -> https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/ where Fabric and Composer are compared. So there's the development perspective but also the runtime perspective as I've alluded to above. Hyperledger Composer currently uses Hyperledger Fabric as the underlying 'blockchain infrastructure' or underlying blockchain technology, put simply. This can be configured in many ways in a secure Cloud environent etc etc. Composer is aimed at production deployment/scalability - ultimately, you'll be deploying business networks and smart contract transaction logic (written in a mainstream app dev language so app developers don't need specialist language skills) that will execute on the blockchain network (wherever that is deployed, however configured, privacy etc) that you (as an organisation etc) will configure (ie between the parties involved). Composer delivers native Node.js support with Fabric v1.1 (alpha version) and that version of Fabric will be available as a GA production ready release in the near future (obviously Fabric v1.0 is already out there). So Composer is both the development framework, the modeler and the runtime execution on the blockchain ; as well as all managing all the other important aspects of working with that business network, such as managing identity,access control, participation, API support and connectivity elements essential to working with/transacting on a blockchain network. Hope this helps.
@jcap not entirely accurate, let me add some more insight. Indeed, Hyperledger Composer is a development framework but also a runtime abstraction layer for executing smart contracts in which a business network (eg. say 'trade settlement' blockchain as a use case or network ; or 'supply chain finance' etc etc) is deployed as a runtime smart contract, on the blockchain, between the parties involved, and upon which all have agreed the terms (what the model is, the data elements, the security, the access control, how identities are issued, , the contract terms blah blah). Sure, Composer makes it easier to develop blockchain applications and smart contracts - that's one of its aims, as well as adding in all of the consistency, validation or gruntwork you would otherwise have to do as an application developer (you can get an insight into that here -> https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/ where Fabric and Composer are compared. So there's the development perspective but also the runtime perspective as I've alluded to above. Hyperledger Composer currently uses Hyperledger Fabric as the underlying 'blockchain infrastructure' or underlying blockchain technology, put simply. This can be configured in many ways in a secure Cloud environent etc etc. Composer is aimed at production deployment/scalability - ultimately, you'll be deploying business networks and smart contract transaction logic (written in a mainstream app dev language so app developers don't need specialist language skills) that will execute on the blockchain network (wherever that is deployed, however configured, privacy etc) that you (as an organisation etc) will configure (ie between the parties involved). Composer delivers native Node.js support with Fabric v1.1 (alpha version) and that version of Fabric will be available as a GA production ready release in the near future (obviously Fabric v1.0 is already out there). So Composer is both the development framework, the modeler and the runtime execution on the blockchain ; as well as all managing all the other important aspects of working with that business network, such as managing identity,access control, participation, API support and connectivity elements essential to working with/transacting on a blockchain network. Hope this helps.
@jcap not entirely accurate, let me add some more insight. Indeed, Hyperledger Composer is a development framework but also a runtime abstraction layer for executing smart contracts in which a business network (eg. say 'trade settlement' blockchain as a use case or network ; or 'supply chain finance' etc etc) is deployed as a runtime smart contract, on the blockchain, between the parties involved, and upon which all have agreed the terms (what the model is, the data elements, the security, the access control, how identities are issued, , the contract terms blah blah). Sure, Composer makes it easier to develop blockchain applications and smart contracts - that's one of its aims, as well as adding in all of the consistency, validation or gruntwork you would otherwise have to do as an application developer (you can get an insight into that here -> https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/ where Fabric and Composer are compared. So there's the development perspective but also the runtime perspective as I've alluded to above. Hyperledger Composer currently uses Hyperledger Fabric as the underlying 'blockchain infrastructure' or underlying blockchain technology, put simply. This can be configured in many ways in a secure Cloud environent etc etc. Composer is aimed at production deployment/scalability - ultimately, you'll be deploying business networks and smart contract transaction logic (written in a mainstream app dev language so app developers don't need specialist language skills) that will execute on the blockchain network (wherever that is deployed, however configured, privacy etc) that you (as an organisation etc) will configure (ie between the parties involved). Composer delivers native Node.js support with Fabric v1.1 (alpha version) and that version of Fabric will be available as a GA production ready release in the near future (obviously Fabric v1.0 is already out there). So Composer is both the development framework, the modeler and the runtime execution on the blockchain ; as well as all managing all the other important aspects of working with that business network, such as managing identity,access control, participation, API support and connectivity elements essential to working with/transacting on a blockchain network. Hope this helps.
[ ](https://chat.hyperledger.org/channel/composer?msg=LHdMTcWh2WbZBYYDM) @majestade see JS API samples here for using a participant (and switching identity) https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L139 or elsewhere in the sample networks repository under https://github.com/hyperledger/composer-sample-networks/tree/master/packages/ - obviously, you could also use the generated REST APIs (in multiuser mode) for the business network you've deployed, to switch participants and use those REST APIs to create (submit) transactions as those identities/participants
https://hyperledger.github.io/composer/next/tutorials/queries
@cdpotts - this may help you -> https://github.com/IBM/Decentralized-Energy-Composer/tree/master/angular-app/src - this newclips skeleton app may also be useful http://www.goverticalworkshop.com/resources/how-to-create-a-decentralized-application-running-on-hyperledger-fabric-network (you can easily see the source code for both)
@cdpotts - this may help you -> https://github.com/IBM/Decentralized-Energy-Composer/tree/master/angular-app/src - this newsclips skeleton app may also be useful http://www.goverticalworkshop.com/resources/how-to-create-a-decentralized-application-running-on-hyperledger-fabric-network (you can easily see the source code for both)
@mahoney1 thanks, that more or less confirms my understanding and is great to hear. Definitely more thorough than I was expecting but good to know we're not going down the wrong path. Appreciate the clarification
@mahoney1 maybe just rephrasing this in my own words for my sanity. Composer is abstracting development focus to the Business Network Application logic rather than lower levels. The resulting development work is suitable not only for prototyping but also deployment across production fabrics
Hi, Everyone
Composer has a permission model. You can define it in permissions.acl. I
don't see similar doc in fabric. I assume it is part of composer
implementation.
Here is my question. Suppose we want a peer belonging to an org with
limited access to some ledger data. We define it in permissions.acl. But
since the peer is completely controlled by this org. This org can use
CouchDB for world state. This org can goes to couchDB to query any data it
wants. So what is the point of permissions.acl?
If I may (and I may be wrong, but I don't think so). You have application permissions and system permissions
permissions.acl will be defining your application level permissions
if a person has access to a physical node, other forms of permissions and security are required depending on your use case
@jcap any reference doc for system permissions
Know, but if I'm accurate, that would be more a function of Fabric administration in general
No, but if I'm accurate, that would be more a function of Fabric administration in general
fabric is claimed to be "permissioned". I could not find any document about permission.
The only thing I found is this: https://hyperledger.github.io/composer/reference/acl_language
That is why I asked the question.
I think you would want to look more at the CA re: fabric permissioning, but still caveating that I'm not an expert on this topic by any means
The CA is only used for identity verification: who you are. Not for control.
good point
It seems to me an org can access all data in channel the org participates
you mean because of the state db?
I believe within Fabric you grant permissions to identities for various activities. Composer is just abstracting that further for you.
There are some walk throughs in the docs I remember where they would give an example and explain you were granting x / y to z
@jcap I think I understand the "permissioned".
First every org/peer can read all data. There is no control on this.
But some org/participant(judged from certificate) can't write/update/delete. This is controlled by chaincode. chiancode enforce channel policy.
Has joined the channel.
Hello. If a participant submits a transaction via composer which will just query the ledger and produce some output, will this submitted transaction go to ordering service after the generating R/W sets by endorsing peers?
Hello @mahoney1 , If a participant submits a transaction via composer which will just query the ledger and produce some output, will this submitted transaction go to ordering service after the generating R/W sets by endorsing peers? Because I think, in fabric, client decide whether to send transaction to orderer or not. So how does this works in relation to composer where participant is acting like a client?
Hello @mahoney1 , If a participant submits a transaction via composer which will just query the ledger and produce some output, will this submitted transaction go to ordering service after the generating R/W sets by endorsing peers? Because I think, in fabric, client decide whether to send endorsed transaction to orderer or not, but i dont how client decide this. Also, how does this works in relation to composer where participant is acting like a client?
Hello @mahoney1 , If a participant submits a transaction via composer which will just query the ledger and produce some output, will this submitted transaction go to ordering service after the generating R/W sets by endorsing peers? Because I think, in fabric, client decide whether to send endorsed transaction to orderer or not, but i don't know how client decide this. Also, how does this works in relation to composer where participant is acting like a client?
Screen Shot 2018-02-03 at 2.25.19 AM.png
It gives the error stating transaction returned with failure however I can perform the same in playground without any error.
@subigyaupadhyay How can you make sure your playground is connected to your fabric network?
Has joined the channel.
Hi everyone,
how can i check which version of composer-cli I have installed? getting "Need to have composer-cli installed at v0.15 or greater" when trying to run createPeerAdminCard.sh
Has joined the channel.
Hi everyone, how can I change the base domain from example.org to xx.org ? Is there a script or something else to do this?
@CyberCal You should just be able to call `composer -v` from a terminal and that should say which version you have
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=uH2jkxwmqPv6nEDcC) @vkblue Sounds like its not possible, If we add a new org, we need to re install the chaincode and and then upgrade with init function
But with composer, you won't be able to use `init` functions as it will reset the entire world state
@varun-raj upgrade is only required if you want to change endorsement policy
@varun-raj an upgrade is only required if you want to change endorsement policy (but you can't do this with composer network upgrade)
the iniy
Also init when driven by upgrade should not reset the entire world state. However at the moment there is an issue trying to do upgrade which needs to be investigated
Has joined the channel.
Yeah currently it's not supported by composer right?
@varun-raj the upgrade should work, but currently there are issues with it so it doesn't :-( but it doesn't have the capability to include an endorsement policy
Oh yeah I understand it's under to-do currently
I'll also explore how we can solve it.
I think we need to update the document little clear I guess. It took two full days to figure it out
Do you think we can add a faq in the website?
It'll be much helpful for people
So what information would you like to see ? I might be able to get it added to https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md
About this limitation that occurs when we try adding new organization to fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=vD2bDku6LmYM86vST) @mahoney1
The demo is really helpful.
Could you please suggest a couple of things:
1. Is there a CLI to switch between identity cards on deployed network instead of running composer-rest-server with different users.
[ ](https://chat.hyperledger.org/channel/composer?msg=vD2bDku6LmYM86vST) @mahoney1
The demo is really helpful.
Could you please suggest a couple of things:
1. Is there a CLI to switch between identity cards on deployed network instead of running composer-rest-server with different users.
2. How could we get the alert() defined in Logic.js file in the BNA work on the Angular application. E.g Poping up an error is defined against any condition?
Could someone please help ,e resolving the issue ASAP. I am getting the error on issuing cards
composer identity issue -c admin@landsolution -f Ratan.card -u ratan -a "resource:org.nkda.transfer.Citizen#8094231455667744"
Issue identity and create Network Card for: ratan
✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
Has joined the channel.
Has joined the channel.
Hello gents, I need a bit of help here. Any of you had some issues installing the CLI packages?
When running: npm install -g composer-cli
I got this dependencies issue: ajv-keywords@2.1.1 requires a peer of ajv@^5.0.0 but none is installed. You must install peer dependencies yourself.
I am running it in a Mac 12 inch with Sierra
Has joined the channel.
I made a hyperledger project with properties and owner. I link the owner by "owner" : "org.acme.rental.PropertyOwner#id".. it gets called but the owner is not getting linked to the property
*/
function addProperty(newProperty) {
var NS = "org.acme.rental";
var factory = getFactory();
var property = factory.newResource(NS, 'Property', newProperty.propertyId);
property.rent = newProperty.rent;
// property.propertyId = newProperty.propertyId;
property.address = newProperty.address;
property.owner = newProperty.owner;
property.propertyStatus = 'POST_REQUEST_CREATED';
if(!property.owner.properties) {
property.owner.properties = [];
}
property.owner.properties.push(property);
var propertyPostEvent = factory.newEvent(NS, 'PropertyPostRequestSubmitted');
propertyPostEvent.property = property;
propertyPostEvent.message = '[EVENT] Post request has been ' + property.$identifier;
emit(propertyPostEvent);
return getAssetRegistry(NS + '.Property').then(function(registry) {
return registry.add(property);
}).then(function() {
return getParticipantRegistry(NS + '.PropertyOwner');
}).then(function(sellerRegistry) {
return sellerRegistry.update(newProperty.owner);
});
}
this is the logic for that. can anybody check whythis is happening
hello.. while doing a setup on my ubuntu machine ..I get thsi error. can anybody help me.
Screenshot from 2018-02-04 14-14-37.png
I was getting access error initially, for which I changed the npm install directory to home/vikas/.npm_profile
Did you installed the composer cli correctly?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=L8Munoke7zpqggSyd) @piiizh yes its installed ..i was getting a permission denied error initially, then i switched the npm install directory to /home/vikas/.npm_profile and it installed without any problems. But on creating a peer card, it still shows the cli related error. I am using Ubuntu 17.10 version
Has joined the channel.
Has joined the channel.
Hi, I'm following the composer developer tutorial here - https://hyperledger.github.io/composer/tutorials/developer-tutorial
Deploy to business network steps listed here are not working. The composer commands and parameters listed in the tutorial are not working. Any help on this will be great. thanks!
In particular - composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND
Command failed
any idea?
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (tutorial-network:0.16.2)-open /var/hyperledger/production/chaincodes/tutorial-network.0.16.2: no such file or directory)
Command failed
Hi all, We were using level db for composer, but in Rest endpoints, "get all" is working fine, but for "get by ID", We've tried using filter, seems like not working, Can anyone please help which query command we can use in level db for "Get by ID"
nekma@nekma:~/fabric-tools$ composer runtime install -c PeerAdmin@fabric-network -n tutorial-network
⠋ Installing runtime for business network tutorial-network. This may take a minu⠙ Installing runtime for business network tutorial-network. This may take a minu✖ Installing runtime for business network tutorial-network. This may take a minute...
Error: Failed to create client from connection profile. TypeError: Cannot set property 'credentialStore' of undefined
Command failed . Why do I get this error?
[ ](https://chat.hyperledger.org/channel/composer?msg=pZA4LcCqsLCdptzSG) @rhansharief - please show the command you are attempting to run.
Do you have a .bna file in your current folder?
[ ](https://chat.hyperledger.org/channel/composer?msg=Tochmj89bfTtkooot) @niroshana - are you trying the Developer tutorial? What version of Composer are you running ? Can you try `composer -v` and `npm ls g --depth=0`. What version of Hyperledger Fabric are you running - can you try `docker images`
[ ](https://chat.hyperledger.org/channel/composer?msg=D6NoNtF3vekxa2Gys) @rthatcher composer -v
v0.17.0
npm ls g --depth=0
fabric-dev-servers@0.0.11 /home/nekma/fabric-tools
└── (empty)
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hyperledger/fabric-tools x86_64-1.0.5 6a8993b718c8 2 months ago 1.33GB
hyperledger/fabric-couchdb x86_64-1.0.5 9a58db2d2723 2 months ago 1.5GB
hyperledger/fabric-kafka x86_64-1.0.5 b8c5172bb83c 2 months ago 1.29GB
hyperledger/fabric-zookeeper x86_64-1.0.5 68945f4613fc 2 months ago 1.32GB
hyperledger/fabric-orderer x86_64-1.0.5 368c78b6f03b 2 months ago 151MB
hyperledger/fabric-peer x86_64-1.0.5 c2ab022f0bdb 2 months ago 154MB
hyperledger/fabric-javaenv x86_64-1.0.5 50890cc3f0cd 2 months ago 1.41GB
hyperledger/fabric-ccenv x86_64-1.0.5 33feadb8f7a6 2 months ago 1.28GB
hyperledger/fabric-ca x86_64-1.0.5 002c9089e464 2 months ago 238MB
hyperledger/composer-playground 0.16.0 41f8e5910c54 2 months ago 247MB
hyperledger/composer-playground latest 41f8e5910c54 2 months ago 247MB
hyperledger/fabric-ca latest 2736904862db 3 months ago 218MB
hyperledger/fabric-ca x86_64-1.1.0-preview 2736904862db 3 months ago 218MB
hyperledger/fabric-tools latest c584c20ac82b 3 months ago 1.42GB
hyperledger/fabric-tools x86_64-1.1.0-preview c584c20ac82b 3 months ago 1.42GB
hyperledger/fabric-couchdb latest 5b8a15e6e972 3 months ago 1.57GB
hyperledger/fabric-couchdb x86_64-1.1.0-preview 5b8a15e6e972 3 months ago 1.57GB
hyperledger/fabric-kafka latest cf09c5534ef9 3 months ago 1.37GB
hyperledger/fabric-kafka x86_64-1.1.0-preview cf09c5534ef9 3 months ago 1.37GB
hyperledger/fabric-zookeeper latest ac127485fdc7 3 months ago 1.37GB
hyperledger/fabric-zookeeper x86_64-1.1.0-preview ac127485fdc7 3 months ago 1.37GB
hyperledger/fabric-orderer latest 2fccc91736df 3 months ago 159MB
hyperledger/fabric-orderer x86_64-1.1.0-preview 2fccc91736df 3 months ago 159MB
hyperledger/fabric-peer latest 337f3d90b452 3 months ago 165MB
hyperledger/fabric-peer x86_64-1.1.0-preview 337f3d90b452 3 months ago 165MB
hyperledger/fabric-javaenv latest cd459b218651 3 months ago 1.49GB
hyperledger/fabric-javaenv x86_64-1.1.0-preview cd459b218651 3 months ago 1.49GB
hyperledger/fabric-ccenv latest 82489d1c11e8 3 months ago 1.35GB
hyperledger/fabric-ccenv x86_64-1.1.0-preview 82489d1c11e8 3 months ago 1.35GB
hyperledger/fabric-ca x86_64-1.0.4 8e691b3509bf 3 months ago 238MB
hyperledger/fabric-couchdb x86_64-1.0.4 cf24b91dfeb1 3 months ago 1.5GB
hyperledger/fabric-orderer x86_64-1.0.4 b17741e7b036 3 months ago 151MB
hyperledger/fabric-peer x86_64-1.0.4 1ce935adc397 3 months ago 154MB
hyperledger/fabric-ccenv x86_64-1.0.4 856061b1fed7 3 months ago 1.28GB
hyperledger/fabric-baseimage x86_64-0.4.2 76daf60aeff4 4 months ago 1.33GB
hyperledger/fabric-baseos x86_64-0.4.2 6be1916d236d 4 months ago 130MB
hyperledger/fabric-baseos x86_64-0.3.2 bbcbb9da2d83 5 months ago 129MB
[ ](https://chat.hyperledger.org/channel/composer?msg=D6NoNtF3vekxa2Gys) @rthatcher we use this tutorial https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
@niroshana as you're using v0.17.x of Composer - you should be following this tutorial -> https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-single-org.html (and the connection profile format there is for v0.17.0 / Fabric v1.1 preview)., Note that from v0.17.3 of Composer, you will need to download the Fabric v1.1 alpha images (which our fabric-tools dev scripts pulls anyway FYI) - just so you and others know.
[ ](https://chat.hyperledger.org/channel/composer?msg=fb28J9fwsXoD7rjGb) @umamani113 that's strange. So you should be able to just use (example) "string") as the parameter id (ie without the quotes) on the Get Id - what happens if you supply a filter on the /GET (all) - with filter on ID of something like `{"personId": "mae123"}` (Participant person, with field personId)?
Here : https://github.com/IBM/Decentralized-Energy-Composer/blob/master/test/test.js#L90-#L101 from line 290, they issue one identity and import the card using that new identity. Does it mean that when we create an identity, card is created on the network. How CARD and INDENTITY work together?
[ ](https://chat.hyperledger.org/channel/composer?msg=NKCGmmtALNytp5SKn) @mahoney1 When we supply filter on the /GET, it is returning all the datas back, that filter is not working
[ ](https://chat.hyperledger.org/channel/composer?msg=9cEjeuinNTrxoSbHT) @umamani113 I believe only the where filter is supported of any filters (but GET by ID should work but sounds like its being ignored for you (I tried it just now albeit I have CouchDB, because I want to build/use Composer queries - and which required CouchDB) - more info on this here -> https://github.com/hyperledger/composer/issues/2106
[ ](https://chat.hyperledger.org/channel/composer?msg=9cEjeuinNTrxoSbHT) @umamani113 I believe only the where filter is supported of any filters (but GET by ID should work but sounds like its being ignored for you (I tried it just now, worked fine - albeit I have CouchDB, because I want to build/use Composer queries - and which required CouchDB) - more info on this here -> https://github.com/hyperledger/composer/issues/2106
businessSystemCardStore.getDefaultCardName is not a function
Getting this error while here : https://hyperledger.github.io/composer/api/common-businessnetworkcardstore#getdefaultcardname it is described as a function
@here please suggest
[ ](https://chat.hyperledger.org/channel/composer?msg=dPXoBpuGZ8dzDAB2u) @Aniket-Engg hi the API is `BusinessNetworkCardStore.getDefaultCardName`
[ ](https://chat.hyperledger.org/channel/composer?msg=dPXoBpuGZ8dzDAB2u) @Aniket-Engg hi the API is `BusinessNetworkCardStore.getDefaultCardName` (but accessible through FileSystemCardStore (default) or MemoryCardStore) eg. create instances etc ```var myfileSystemCardStore = new FileSystemCardStore();
var mybusinessNetworkCardStore = new BusinessNetworkCardStore();```
referring to the S/Overflow - yes - but principle is exactly the same - you just need to use FileCardStore instead of MemoryCardStore - see also here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L70
Hi @mahoney1
Has joined the channel.
@mahoney1 with capital B , i get this : BusinessNetworkCardStore.getDefaultCardName(...).then is not a function
[ ](https://chat.hyperledger.org/channel/composer?msg=2r3G7KkE5Q9N922ys) @Aniket-Engg exactly, its not a function its an abstract class, see above..
[ ](https://chat.hyperledger.org/channel/composer?msg=2r3G7KkE5Q9N922ys) @Aniket-Engg exactly, its not a function its an abstract class, see above..(and description on that page)
var businessNetworkCardStore = new BusinessNetworkCardStore();
var businessNetworkCardStore = new BusinessNetworkCardStore();
var businessNetworkCardStore = new BusinessNetworkCardStore();
businessSystemCardStore.getDefaultCardName is not a function , this was the error i was getting then
`var businessNetworkCardStore = new BusinessNetworkCardStore();
businessSystemCardStore.getDefaultCardName is not a function` , this was the error i was getting then
`var businessNetworkCardStore = new BusinessNetworkCardStore();`
businessSystemCardStore.getDefaultCardName is not a function` , this was the error i was getting then
`var businessNetworkCardStore = new BusinessNetworkCardStore();`
businessNetworkCardStore.getDefaultCardName is not a function` , this was the error i was getting then
yes , i was using this initially @mahoney1
@mahoney1 please suggest
`TypeError: fileSystemCardStore.getDefaultCardName is not a function`
getting this with instance like `var fileSystemCardStore = new FileSystemCardStore();`
@mahoney1 any suggestions?
@Aniket-Engg ```
// minimally ...
const BusinessNetworkCardStore = require('composer-common').BusinessNetworkCardStore;
// setup blah
var fileSystemCardStore = new FileSystemCardStore();
var businessNetworkCardStore = new BusinessNetworkCardStore();
var adminConnection = new AdminConnection();
// connection blah
var myidCardData, myidCardName;
var businessNetworkConnection = new BusinessNetworkConnection();
// eg. card from archive
return IdCard.fromArchive(cardData).then(function(idCardData) {
myidCardData = idCardData;
// here's your example
return businessNetworkCardStore.getDefaultCardName(idCardData)
}).then(function(idCardName) {
myidCardName = idCardName;
return fileSystemCardStore.put(myidCardName, myidCardData)
}).then(function(res) {
// next steps```
@Aniket-Engg ```
// minimally ...
const BusinessNetworkCardStore = require('composer-common').BusinessNetworkCardStore;
// setup blah
var fileSystemCardStore = new FileSystemCardStore();
var businessNetworkCardStore = new BusinessNetworkCardStore();
var adminConnection = new AdminConnection();
// connection blah
var myidCardData, myidCardName;
var businessNetworkConnection = new BusinessNetworkConnection();
// eg. card from archive
return IdCard.fromArchive(cardData).then(function(idCardData) {
myidCardData = idCardData;
// here's your example
myidCardName = BusinessNetworkCardStore.getDefaultCardName(idCardData);
return fileSystemCardStore.put(myidCardName, myidCardData)
}).then(function(res) {
// next steps```
@Aniket-Engg ```
// minimally ...
const BusinessNetworkCardStore = require('composer-common').BusinessNetworkCardStore;
// setup blah
var fileSystemCardStore = new FileSystemCardStore();
var BusinessNetworkCardStore = new BusinessNetworkCardStore();
var adminConnection = new AdminConnection();
// connection blah
var myidCardData, myidCardName;
var businessNetworkConnection = new BusinessNetworkConnection();
// eg. card from archive
return IdCard.fromArchive(cardData).then(function(idCardData) {
myidCardData = idCardData;
// here's your example
myidCardName = BusinessNetworkCardStore.getDefaultCardName(idCardData);
return fileSystemCardStore.put(myidCardName, myidCardData)
}).then(function(res) {
// next steps```
@Aniket-Engg ```
// minimally ...
const BusinessNetworkCardStore = require('composer-common').BusinessNetworkCardStore;
// setup blah
var fileSystemCardStore = new FileSystemCardStore();
var adminConnection = new AdminConnection();
// connection blah
var myidCardData, myidCardName;
var businessNetworkConnection = new BusinessNetworkConnection();
// eg. card from archive
return IdCard.fromArchive(cardData).then(function(idCardData) {
myidCardData = idCardData;
// here's your example
myidCardName = FileSystemCardStore.getDefaultCardName(idCardData);
return FileSystemCardStore.put(myidCardName, myidCardData);
}).then(function(res) {
// next steps```
Thanks @mahoney1
i am trying it like this :
```
i am trying it like this :
```
const idCardData = new IdCard(metadata, connectionProfile);
return fileSystemCardStore.getDefaultCardName(idCardData).then((idCardName)=> {
```
am i doing anything worng? @mahoney1
am i doing anything wrong? @mahoney1
anyone has any idea why `getAssetRegistry()` called on a parent asset type in a transaction, fails when the asset itself is an inherited object?
eg.
call to `changeOwner(org.acme.model.PolygonMarble#poly1, org.acme.model.Collector#owner2)`
model.cto:
```
asset Marble identified by Id {
o String Id
--> Collector owner
}
asset PolygonMarble extends Marble {
o Integer sides
}
```
script.js:
```
function changeOwner(args) {
args.marble.owner = args.newOwner;
return getAssetRegistry('org.acme.model.Marble').then(function(marbleRegistry) {
return marbleRegistry.update(args.marble);
});
}
```
I posted this problem on https://stackoverflow.com/questions/48622186/getassetregistry-on-parent-asset-type-fails-in-hyperledger-composer-transaction
@Aniket-Engg I've edited my example - upon checking, getDefaultCardName doesn't return a promise (per example, just assign it) FYI see above
@chunhui - you need to post the complete transaction class definition in your model (in Stack overflow) and also how you've set up the Transaction Processor - the structure of transaction processor functions includes decorators and metadata followed by your JavaScript function ; both parts are required for a transaction processor function to work FYI
ok let me check
@mahoney1 I have updated for completeness.
```
namespace org.acme.model
asset Marble identified by Id {
o String Id
--> Collector owner
}
asset PolygonMarble extends Marble {
o Integer sides
}
participant Collector identified by email {
o String email
}
transaction ChangeOwner {
--> Marble marble
--> Collector newOwner
}
```
```
/*@param {org.acme.model.ChangeOwner} args -
* @transaction */
function changeOwner(args) {
args.marble.owner = args.newOwner;
return getAssetRegistry('org.acme.model.Marble').then(function(marbleRegistry) {
return marbleRegistry.update(args.marble);
});
}
```
was trying to call `changeOwner(org.acme.model.PolygonMarble#poly1, org.acme.model.Collector#owner2)` and it failed.
FYI, it works perfectly if i call `changeOwner(org.acme.model.Marble#marble1, org.acme.model.Collector#owner2)` so i'm sure its an inheritance problem
@Rishabh-Sharma not clear to me what transaction `newProperty` contains, nor what new values it updates in the transaction on the `PropertyOwner` participant registry - but I would check the Historian (in Playground or through Queries) to see what the transaction actually does (View Record on the actual Transaction in question) - as a 'before' and 'after' FYI
@mahoney1 thanks a lot. That issue has been resolved. getting a new one in
```var adminConnection = new AdminConnection();
adminConnection.importCard(idCardName, idCardData).then.....
```
error is : `Error: Failed to load connector module "composer-connector-embedded" for connection type "embedded"`
@mahoney1 your suggestions matter :)
using connectionprofile for issuing identity : ```const connectionProfile = {
name: 'embedded',
type: 'embedded'
};
```
[ ](https://chat.hyperledger.org/channel/composer?msg=buSyCGNRWzR7C48Xr) error is `Object with ID 'poly1' in collection with ID 'Asset:org.acme.model.PolygonMarble' does not exist`
[ ](https://chat.hyperledger.org/channel/composer?msg=TtkEauCf6wBd4oYJD) @mahoney1 We are here working on a blockchain application model where the Smart contract is developed as an object composed of attributes an code. For this application to work as required we need to be able to certify to the user what was the exact state of the concerned smart contract ( value of attributes and code that has been ran ) before and after a transaction. We maust be able to have the smart contract signed by two participants to agree on it. We need also 2 smart contracts to be able to communicate together. So if the smart contract is “The deployed business network (including the model file, permissions, the transaction processors, queries etc etc)” do we need to have a business network for each ?
@Aniket-Engg - you need to install the embedded connector :-) update your package.json and add in your "devDependencies": {
...
"composer-connector-embedded": "latest"
} ``` (if you're using v0.16.x otherwise "next" if v0.17.x) and run the usual npm install
@Aniket-Engg - you need to install the embedded connector :-) update your package.json and add in your ``` "devDependencies": {
"composer-connector-embedded": "latest"
} ``` (if you're using v0.16.x otherwise "next" if v0.17.x) and run the usual npm install
i have installed this version : "composer-connector-embedded": "^0.16.3"
should i go for the latest ?
should i go for the latest ? @mahoney1
can we achieve multi peer from playground.and both peers are in different systems.
[ ](https://chat.hyperledger.org/channel/composer?msg=RtqahLvhvtfH3xQmc) This is looking like latest version
[ ](https://chat.hyperledger.org/channel/composer?msg=RtqahLvhvtfH3xQmc) This is looking like latest version @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=RtqahLvhvtfH3xQmc) @Aniket-Engg that is the latest
@chunhui - your answer is updated on Stack Overflow - https://stackoverflow.com/questions/48622186/getassetregistry-on-parent-asset-type-fails-in-hyperledger-composer-transaction/48623597#48623597
yes, when i changed the type as 'hlfv1' in connection profile , it works @mahoney1
But with that, it says "Error: The orderers array has not been specified in the connection profile
"
[ ](https://chat.hyperledger.org/channel/composer?msg=9cEsKWYLWdSAqEgSv) @wininani Composer Playground uses the same Business Network Cards as the CLI - so you can connect with Playground to a multi peer system.
[ ](https://chat.hyperledger.org/channel/composer?msg=J4TtAveAwjgeYocwm) @mahoney1 Then what can be the reason of error?
[ ](https://chat.hyperledger.org/channel/composer?msg=J4TtAveAwjgeYocwm) @mahoney1 Then what can be the reason of error? Getting this also appended in error : `Error: The orderers array has not been specified in the connection profile` any clues?
[ ](https://chat.hyperledger.org/channel/composer?msg=J4TtAveAwjgeYocwm) @mahoney1 Then what can be the reason of error? Getting this also appended in error : `Must create ConnectionManager with a ConnectionProfileManager implementation` any clues?
[ ](https://chat.hyperledger.org/channel/composer?msg=gx6kX2a6SnmhipZEj) @mahoney1 thank you so much for the response.
am I right to say, it doesn't work like a typical inheritance in other languages, where a method defined on a base class would work automatically in an inherited class?
[ ](https://chat.hyperledger.org/channel/composer?msg=ufJRWgELJzAe59ta9) @rthatcher thanks for your responce ....can you tell me or suggest some tutorial to achieve multi peer from playground.
[ ](https://chat.hyperledger.org/channel/composer?msg=SiHhkY4c2EdCgC86Z) @wininani - there is no specific tutorial for MultiPeer for Playground - But you can work through the normal MultiPeer tutorial, and then start Playground at the end and the cards will be available to use in Playground.
@mahoney1 please suggest
line `adminConnection.importCard(idCardName, idCardData).then((imported)`
Error : ` Error: Failed to load connector module "composer-connector-embedded" for connection type "embedded". Must create ConnectionManager with a ConnectionProfileManager implementation.`
line `adminConnection.importCard(idCardName, idCardData).then((imported)`
Error : ``` Error: Failed to load connector module "composer-connector-embedded" for connection type "embedded". Must create ConnectionManager with a ConnectionProfileManager implementation.```
[ ](https://chat.hyperledger.org/channel/composer?msg=XYRPRsdufNLQFEHXy) @rthatcher tq for your reply ...you mean after setting the multipeer ..and ..after business network setup.. i have to start the playground is it correct? 2) i have to do same in two machines?\
[ ](https://chat.hyperledger.org/channel/composer?msg=fkFavvz3TCMfi46jj) @wininani - 1) Yes, start layground after you have completed the Multi Peer or Multi Org Setup.
2) You can start Playground on 2 machines, or you could export the cards from one machine and copy to 2nd machine and Import.
are operations inside a transaction atomic? If I am updating or creating multiple assets inside a transaction, how do I make sure that I won't get an inconsistent state? do I need to catch exception for each operation and rollback previous operations in case of error?
[ ](https://chat.hyperledger.org/channel/composer?msg=b79FKdtdhLcoEqpdg) @lucasdf - Yes TP functions are atomic, they will commit everything or nothing.
[ ](https://chat.hyperledger.org/channel/composer?msg=MfftzJnvycBd5EZt2) @rthatcher great!
[ ](https://chat.hyperledger.org/channel/composer?msg=3Lqj3B6YeZpqEHoLP) @Aniket-Engg see answer here for an example on using import Card -> https://stackoverflow.com/questions/47393096/nodejs-test-hyperledger-composer-v0-15-fails-with-error-card-not-found-peeradm and addressed your composer-connector-embedded issue earlier
@mahoney1 theay are also using memory card store
[ ](https://chat.hyperledger.org/channel/composer?msg=SiHhkY4c2EdCgC86Z) @wininani I've made a vagrant-based multi-peer example with integrated composer-playground, that I used for teaching in a university.
You can take a look.
github.com/suenchunhui/fabric-tutorial-vagrant
Basically, going to `composer-playground` and start `./playground.sh` will bring up a multi-peer network with playground integrated on port 8080
[ ](https://chat.hyperledger.org/channel/composer?msg=SiHhkY4c2EdCgC86Z) @wininani I've made a vagrant-based multi-peer example with integrated composer-playground, that I used for teaching in a university.
You can take a look.
Basically, going to `composer-playground` and start `./playground.sh` will bring up a multi-peer network with playground integrated on port 8080
[ ](https://chat.hyperledger.org/channel/composer?msg=8cYpoEjqRhjNYnwJz) @Aniket-Engg see https://hyperledger.github.io/composer/jsdoc/module-composer-common.FileSystemCardStore.html FileSystemCardStore is used in pretty much the same way as the MemoryCardStore example ```var userCard = new IdCard({...}); userCard.setCredentials(credentials); ... adminConnection.importCard(userCardName, userCard); .... .then(() => { // Connect to the business network ... businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore }); businessNetworkConnection.connect(userCardName); } ...```
The major difference should be in connection profile
That is reason of error
What are the main ways to start the execution of a transaction code ? is it REST API method call ? If yes: This would mean, that the execution would take place at the node that I was connecting to? How do the other nodes get aware of the request?
Chain code is the real Hyperledger blockchain code, javascript is just used in the developper UI and translated in chain code by Hyperledger Composer. Is tha correct ?
Sadly it still doen't work.
[ ](https://chat.hyperledger.org/channel/composer?msg=dywwdEiJZYy6dkxrY) @mahoney1
I have read about IBM developing iconography in an attempt to standardize blockchain architecture and improve adoption...I was wondering if this was open source and there was anywhere we could download some assets?
Screen Shot 2018-02-05 at 15.32.43.png
[ ](https://chat.hyperledger.org/channel/composer?msg=hNaaDvKBReMhZoKKQ) @TBigjohn - In test/development you could use the Composer Playground to submit a Transaction. In production you would use the REST API, or the JavaScript API.
Using any of these methods, Composer will submit the Transaction to all the Peers that you have specified in your Connection Profile used by your Business Network Card.
@a.ochs I've pinged the publisher, FYI - but feel free to leave a comment yourself on the article
Hi guys, I have tried to look up an answer on the history, but couldn't get the definite answer. So here I go:
Let's assume that I've followed tutorial on deploying a network using Composer to the Fabric (2 Orgs)
1. Is it possible to interact with chaincode through fabric-SDK? E.g. either node-sdk or java-sdk, or go-sdk?
2. If yes, how can I update chaincode? Will Composer pick up an update automatically?
3. If I can't use any sort of Fabric SDK (apart from Composer API/CLI/REST-server), is there any other way I can interact with the chaincode?
Thanks!
I am running into errors trying to generate a yo boilerplate on my MacOSX
```
Pros-MacBook-Pro:HyperLegderFabric Santi$ yo hyperledger-composer
Welcome to the Hyperledger Composer project generator
? Please select the type of project: Angular
You can run this generator using: 'yo hyperledger-composer:angular'
Welcome to the Hyperledger Composer Angular project generator
? Do you want to connect to a running Business Network? No
? Project name: sample-app
? Description: Hyperledger Composer Angular project
? Author name: samuel dare
? Author email: samuel.b.dare@gmail.com
? License: Apache-2.0
? Business network archive file (Path from the current working directory): digit
alproperty-network.bna
? REST server address: http://localhost
? REST server port: 3000
? Are namespaces used in the generated REST API: Namespaces are not used
/usr/local/lib/node_modules/generator-hyperledger-composer/node_modules/composer-common/lib/businessnetworkdefinition.js:180
LOG.entry(method, Buffer.length);
^
TypeError: Cannot read property 'length' of undefined
at Function.fromArchive (/usr/local/lib/node_modules/generator-hyperledger-composer/node_modules/composer-common/lib/businessnetworkdefinition.js:180:33)
at ReadFileContext.fs.readFile [as callback] (/usr/local/lib/node_modules/generator-hyperledger-composer/generators/angular/index.js:367:54)
at FSReqWrap.readFileAfterOpen [as oncomplete] (fs.js:421:13)
Pros-MacBook-Pro:HyperLegderFabric Santi$
```
```
Pros-MacBook-Pro:HyperLegderFabric Santi$ yo hyperledger-composer
Welcome to the Hyperledger Composer project generator
? Please select the type of project: Angular
You can run this generator using: 'yo hyperledger-composer:angular'
Welcome to the Hyperledger Composer Angular project generator
? Do you want to connect to a running Business Network? No
? Project name: sample-app
? Description: Hyperledger Composer Angular project
? Author name: samuel dare
? Author email: xxxxxx@gmail.com
? License: Apache-2.0
? Business network archive file (Path from the current working directory): digit
alproperty-network.bna
? REST server address: http://localhost
? REST server port: 3000
? Are namespaces used in the generated REST API: Namespaces are not used
/usr/local/lib/node_modules/generator-hyperledger-composer/node_modules/composer-common/lib/businessnetworkdefinition.js:180
LOG.entry(method, Buffer.length);
^
TypeError: Cannot read property 'length' of undefined
at Function.fromArchive (/usr/local/lib/node_modules/generator-hyperledger-composer/node_modules/composer-common/lib/businessnetworkdefinition.js:180:33)
at ReadFileContext.fs.readFile [as callback] (/usr/local/lib/node_modules/generator-hyperledger-composer/generators/angular/index.js:367:54)
at FSReqWrap.readFileAfterOpen [as oncomplete] (fs.js:421:13)
Pros-MacBook-Pro:HyperLegderFabric Santi$
```
```
Pros-MacBook-Pro:HyperLegderFabric Santi$ yo hyperledger-composer
Welcome to the Hyperledger Composer project generator
? Please select the type of project: Angular
You can run this generator using: 'yo hyperledger-composer:angular'
Welcome to the Hyperledger Composer Angular project generator
? Do you want to connect to a running Business Network? No
? Project name: sample-app
? Description: Hyperledger Composer Angular project
? Author name: xxxx xxxx
? Author email: xxxxxx@gmail.com
? License: Apache-2.0
? Business network archive file (Path from the current working directory): digit
alproperty-network.bna
? REST server address: http://localhost
? REST server port: 3000
? Are namespaces used in the generated REST API: Namespaces are not used
/usr/local/lib/node_modules/generator-hyperledger-composer/node_modules/composer-common/lib/businessnetworkdefinition.js:180
LOG.entry(method, Buffer.length);
^
TypeError: Cannot read property 'length' of undefined
at Function.fromArchive (/usr/local/lib/node_modules/generator-hyperledger-composer/node_modules/composer-common/lib/businessnetworkdefinition.js:180:33)
at ReadFileContext.fs.readFile [as callback] (/usr/local/lib/node_modules/generator-hyperledger-composer/generators/angular/index.js:367:54)
at FSReqWrap.readFileAfterOpen [as oncomplete] (fs.js:421:13)
Pros-MacBook-Pro:HyperLegderFabric Santi$
```
Would appreciate any directions on this
@SamuelDare There seems to be an issue open here - https://github.com/hyperledger/composer/issues/3302
Than [ ](https://chat.hyperledger.org/channel/composer?msg=dcLPbZFAac9zHnPza) @Jakeeyturner Thanks!! not sure where to go from here...im assuming its something for one of the maintainers to pick up?>
yeah, someone needs to make a pull request to fix it
[ ](https://chat.hyperledger.org/channel/composer?msg=ZDNnwLnqFmAzn6sLb) @sativ - at the moment there is no way to switch between using Composer (API, REST, CLI) and node-sdk. However going forward this Improvement Proposal is in progress https://github.com/hyperledger/composer/issues/3120 - please feel free to comment on the proposal.
@here what are all the type of connection profile of a network card ?
@Aniket-Engg Please dont use (at-here) that should be used for announcements only
ok @davidkel , i will keep that in mind further
@chunhui rsvp'ed on Stack Overflow.
Has joined the channel.
Does composer files work with sawtooth?
Two Q'sL -- 1) Is there an update to the tutorial for the current version of playground (v0.16.3) running locally? The playground interface has changed significantly and I'm getting errors when setting up a new business network which bring Q 2) On deploy for a new empty business network with enrollment ID, Playground generate the following error:
```Error: Error trying to instantiate composer runtime. Error: Failed to receive commit notification for transaction 'f9eb034bf7f80baa5a4c3428e17a678bf4d00fe411e241144a4c1564b68a0148' within the timeout period```
Two Q's on composer playground running locally -- 1) Is there an update to the tutorial for the current version of playground (v0.16.3) running locally? The playground interface has changed significantly and I'm getting errors when setting up a new business network which bring Q 2) On deploy for a new empty business network with enrollment ID, Playground generate the following error:
```Error: Error trying to instantiate composer runtime. Error: Failed to receive commit notification for transaction 'f9eb034bf7f80baa5a4c3428e17a678bf4d00fe411e241144a4c1564b68a0148' within the timeout period```
Two Q's on composer playground running locally -- 1) Is there an update to the tutorial for the current version of playground (v0.16.3) running locally? The playground interface has changed significantly and I'm getting errors when setting up a new business network which brings Q 2) On deploy for a new empty business network with enrollment ID, Playground generate the following error:
```Error: Error trying to instantiate composer runtime. Error: Failed to receive commit notification for transaction 'f9eb034bf7f80baa5a4c3428e17a678bf4d00fe411e241144a4c1564b68a0148' within the timeout period```
Two Q's on composer playground running locally -- 1) Is there an update to the tutorial for the current version of playground (v0.16.3) running locally? The playground interface has changed significantly and I'm getting errors when setting up a new business network which brings Q 2) On deploy for a new empty business network with enrollment ID, Playground generate the following error:
```Error: Error trying to instantiate composer runtime. Error: Failed to receive commit notification for transaction 'f9eb034bf7f80baa5a4c3428e17a678bf4d00fe411e241144a4c1564b68a0148' within the timeout period```
Two Q's on composer playground running locally -- 1) Is there an update to the tutorial for the current version of playground (v0.16.3) running locally? The playground interface has changed significantly and I'm getting errors when setting up a new business network which brings Q 2) On deploy for a new empty business network with enrollment ID, Playground generate the following error:
```Error: Error trying to instantiate composer runtime. Error: Failed to receive commit notification for transaction 'f9eb034bf7f80baa5a4c3428e17a678bf4d00fe411e241144a4c1564b68a0148' within the timeout period```
What would cause the error? Is there a new tutorial? Thanks
Also now getting this error:
```Error: Error trying to instantiate composer runtime. Error: The event hub has not been connected to the event source```
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=TmgQNzHnoaoqZNdbZ) @mahoney1 Thank you for your quick response! I've also tried with Couch DB, It is working fine..but if we have level db as a world state, its not working..Is there any workaround to get the filtered data in composer?
Clipboard - February 6, 2018 12:58 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=4Sb7aFZuLKhtJCjkB) @wininani - how did you run Playground locally? Is it running from a command line, or is it running in a Docker container?
From the error it looks like your CLI command can't see one of your Peers, so I would think there is an error in your connection profile or some network issue preventing you 'seeing' the other peer - assuming it is started and running OK.
[ ](https://chat.hyperledger.org/channel/composer?msg=3TuFp2aAjCA8uqsrr) @rthatcher i just run two commands 1) npm install -g composer-playground 2) composer-playground ...... what to do to solve error now.....thankyou for your reply
[ ](https://chat.hyperledger.org/channel/composer?msg=qH24wcBCjLptY54ck) @wininani - OK, good that is the right way to run playground locally. You could look at the logs for your peers and see if you see errors or differences between the Peers responses, but it could be a problem with your connection profile or a networking/addressing issue.
@rthatcher thankyou and i will try in that way
Has joined the channel.
Has joined the channel.
Has joined the channel.
When I create a participant "A" and issue new Id using composer-playground. the user "A" is registered to CA am I correct?
[ ](https://chat.hyperledger.org/channel/composer?msg=6mr3rWYSiRW9WC299) @CT123 hmmm - Composer currently tries to listen for events for all peers (listed in the connection profile of the invoking card), but if the connection to a peer has been lost you may get errors like that - or else there's possibly something wrong with your connection profile - can you post it ? So you're using v0.16.3 - can you confirm what playground tutorial are you following?
[ ](https://chat.hyperledger.org/channel/composer?msg=6mr3rWYSiRW9WC299) @CT123 hmmm - Composer currently tries to listen for events for all peers (listed in the connection profile of the invoking card), but if the connection to a peer has been lost you may get errors like that - or else there's possibly something wrong with your connection profile - can you post it ? So you're using v0.16.3 - can you confirm what playground tutorial are you following? On 'commit notification' error - are you deploying to multiple (virtual/physical) machines - at a guess (with minimal info available) its possible that your Fabric config is not configured correctly in that the orderers are unable to push events back to the peers (if they are all available). So would check (in your fabric config) the AnchorPeers and other hostnames in configtx.yaml and ensure you run `configtxgen` once you have made those changes. Also this S/O may be something similar to what you've seen -> https://stackoverflow.com/questions/48153841/error-trying-to-instantiate-composer-runtime-error-failed-to-receive-commit-no
[ ](https://chat.hyperledger.org/channel/composer?msg=afH2GEXeks3EwMLgS) @devth yes (assuming you're connected to a Fabric CA)
Hi everyone,
On this tutorial (http://hyperledgerdocs.readthedocs.io/en/latest/asset_cli.html) :
It says " Exec into the cli container:
docker exec -it cli bash "
But I dont have a "cli". how to run it ?
And more general, how to add peers in the same server, and in another server and connect them ?
Don't find tuto
I don't find tuto
does anybody have added multiple peers in a single organisation? can anyone explain exactly how to add one peer in the existing blockchain network?
thanks in advance!
Same question @Pranoti ... I don't find clear doc...
[ ](https://chat.hyperledger.org/channel/composer?msg=2ycoAcTRzSpwRMv8d) @CorentinPacaud ... Yes exactly.. Actually in this https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org they are saying to add peer in the peers array in connection.json file. I tried that but its giving error. May be we need to provide ca path or something for this. But how don't know..
@Pranoti , well, I browsed the doc for 1 week now, and can't find any working. I am here now : Browse
@Pranoti , well, I browsed the doc for 1 week now, and can't find any working. I am here now : http://hyperledgerdocs.readthedocs.io/en/latest/asset_cli.html
But, I don't have a CLI running in docker, and ther absolutely no link where I can find how to run CLI
[ ](https://chat.hyperledger.org/channel/composer?msg=L88WnQA9PEXbiwmTy) @CorentinPacaud :slight_frown: lets see! Keep trying (y)
[ ](https://chat.hyperledger.org/channel/composer?msg=4rY3xNPwtG7EaQeS4) @CorentinPacaud that's a Fabric doclink so best to ask on #fabric about that (we don't use the CLI container in the Composer org tutorials) http://hyperledgerdocs.readthedocs.io/en/latest/install_instantiate.html?highlight=cli%20container
[ ](https://chat.hyperledger.org/channel/composer?msg=4rY3xNPwtG7EaQeS4) @CorentinPacaud that's a Fabric doclink so best to ask on #fabric about that (we don't use the CLI container in the Composer Single org tutorial) http://hyperledgerdocs.readthedocs.io/en/latest/install_instantiate.html?highlight=cli%20container
[ ](https://chat.hyperledger.org/channel/composer?msg=4rY3xNPwtG7EaQeS4) @CorentinPacaud that's a Fabric doclink so best to ask on #fabric about that (we don't use the CLI container in the Composer Single org tutorial) http://hyperledger-fabric.readthedocs.io/en/latest/install_instantiate.html?highlight=cli%20container
[ ](https://chat.hyperledger.org/channel/composer?msg=qftqZooxge6nPXxam) @Pranoti Composer uses the FABRIC BYFN network sample (which has multiple peers for each single org so you can see what's involved for a single org at a FABRIC level) - the answer to your question is contained here -> https://stackoverflow.com/questions/46371470/how-to-add-a-new-peer-to-an-existing-hyperledger-fabric-network
I really don't understand. It says : ```docker exec -it cli bash```. Am i suppose to replace "cli" by something ?
[ ](https://chat.hyperledger.org/channel/composer?msg=df2zxDixc2uPgLSKH) @CorentinPacaud - as @mahoney1 says this is a #fabric issue - but if you follow the BYFN tutorial from Fabric (part of which we use in our Multi Org tutorial) then it creates a docker container called cli that is used to set up the orderer and the peers, and after a period the cli container stops. If you are using our Single Org tutorial I don't think we use a container called cli.
There is a tutorial / blog here about adding an additional Peer in the same organisation on a different physical machine (or VM):
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
- I have not tested this, but other users in this channel have
[ ](https://chat.hyperledger.org/channel/composer?msg=df2zxDixc2uPgLSKH) @CorentinPacaud - as @mahoney1 says this is a #fabric issue - but if you follow the BYFN tutorial from Fabric (part of which we use in our Multi Org tutorial) then it creates a docker container called cli that is used to set up the orderer and the peers, and after a period the cli container stops. If you are using our Single Org tutorial I don't think we use a container called cli.
There is a tutorial / blog here about adding an additional Peer in the same organisation on a different physical machine (or VM):
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
- I have not tested this, but other users in this channel have
This long doc describes how BYFN works and about the cli container
http://hyperledger-fabric.readthedocs.io/en/release/build_network.html
ok thx
@here - the Community call tomorrow (Weds) will be at 10am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming - latest agenda: -> https://github.com/hyperledger/composer/wiki/Meeting-7th-February-2018
Has joined the channel.
Hi
Does anybody know how to deploy a blockchain business network on a peer node?
[ ](https://chat.hyperledger.org/channel/composer?msg=4a7D8xgafGxY5iidK) @doubleb - are you starting from scratch ? This tutorial explains how to create and deploy a simple Business Network to a Development Fabric - https://hyperledger.github.io/composer/tutorials/developer-tutorial
Hi guys,
Playing with Composer here, and a question appeared that I couldn't find and answer for:
let's say I want to DENY a certain participant to edit chaincode or model file.
The only way I have managed to do that is in Acl file is to deny everything like so:
```operation: UPDATE, CREATE, DELETE
resource: "org.hyperledger.composer.system.**" ```
but I couldn't get deeper into `composer.system` namespace
does anyone know where is there a list of resources available in `org.hyperledger.composer.system` ?
Thanks!
Hi guys,
Playing with Composer here, and a question appeared that I couldn't find and answer for:
let's say I want to DENY a certain participant to edit chaincode or model file.
The only way I have managed to do that is in Acl file is to deny everything like so:
``` operation: UPDATE, CREATE, DELETE
resource: "org.hyperledger.composer.system.**" ```
but I couldn't get deeper into `composer.system` namespace
does anyone know where is the list of resources available in `org.hyperledger.composer.system` ?
Thanks!
@rthatcher yes I am and that tutorial I've already done it
I've created a business network on playground and I need to create an organisation with 4 peers
It's for a demo, and I have 4 local machine to install it
I have an asset with a relationship of type `Participant`. In this case, composer-rest-server does not resolve the relationship when using `include: resolve`. Specific relationship are resolved. Is this an error on rest-server?
I've used https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
[ ](https://chat.hyperledger.org/channel/composer?msg=P9mKEef8dfNJEmPCm) @doubleb - OK then you need to design and create a Fabric, then create Business Connection Cards to utilise that Fabric from Composer. You can look at the MultiOrg tutorial for Composer to gain some knowledge of the Composer Aspects of a MultiOrg deployment. But you will need to refer to Fabric documentation to build and understand your underlying Fabric.
This tutorial in the Fabric documentation give some insight to setting up a Fabric:
http://hyperledger-fabric.readthedocs.io/en/release/build_network.html
[ ](https://chat.hyperledger.org/channel/composer?msg=2sS3as4L4xuEvfwFA) @rthatcher Thanks... I've created a .bna and I've tries to customise crypto-config.yaml adding another AnchorPeers with a port and on my connection.json I've added another peer with an IP address
[ ](https://chat.hyperledger.org/channel/composer?msg=2sS3as4L4xuEvfwFA) @rthatcher Thanks... I've created a .bna and I've tried to customise crypto-config.yaml adding another AnchorPeers with a port and on my connection.json I've added another peer with an IP address
I basically followed again https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org and tried to run Step Seven on onother machine while downloading the same fabric provided
[ ](https://chat.hyperledger.org/channel/composer?msg=8AZyoPxtY4Bb5hNoJ) @doubleb - so I would suggest trying the #fabric channel for support on extending Fabric, but have you also seen this:
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine
[ ](https://chat.hyperledger.org/channel/composer?msg=vmpjZ6EebhesZXyWB) @lucasdf - it does work on the REST server - this is the exact syntax `{"include":"resolve"}`
yes... I saw it on this chat...
[ ](https://chat.hyperledger.org/channel/composer?msg=gh6qjytZCkiJkToZ2) @rthatcher What I mean is that if the relationship type is `Participant` then the relationship is not resolved Any other (custom) participant type is resolved as it should.
```
asset SomeAsset {
o SomeParticipant example1
o Participant example2
}
```
SomeParticipant resolves fine. Participant is never resolved.
```
asset SomeAsset {
--> SomeParticipant example1
--> Participant example2
}
```
SomeParticipant resolves fine. Participant is never resolved.
[ ](https://chat.hyperledger.org/channel/composer?msg=WZXnH7nTMEhcoKsjs) @sativ - I think there is a doc missing from the documentation for these "System Namespace" - but this thread in Rocketchat may help you:
https://chat.hyperledger.org/channel/composer?msg=ZkMakmszLdQWNNYsj
`Participant` is the general type that can accept any kind of participant.
[ ](https://chat.hyperledger.org/channel/composer?msg=NEJB4qfFSLFuqhLSj) @lucasdf - thanks for your model snippet and explanation. I can't follow it up today.
Hello everyone. If I am developing the Hyperledger composer applications with Assets, Transactions and Participants, Do I have to create a Hyperledger Fabric with chaincode( including the transactions defined like in hyperledger composer) or I can use any Fabric network for this? Is the fabric network specific and all the chaincode transaction functions in Fabric have to be mapped to the Transactions logic in Composer applications.
[ ](https://chat.hyperledger.org/channel/composer?msg=33nohJvybeX4mCs9G) @Dark_Knight Composer will create and instantiate all the transactions in the peers. You will need a Fabric network, but you don't need any custom chaincode to run Composer.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=LKdpiWDEZCEqya8pn) @lucasdf Thanks for your reply :) I have one more question, so when we setup a Fabric network to be used for Composer, which parts of Fabric like MSP, Endorsing policy etc. can't be defined by composer and has to be defined in the Fabric?
Hello, I received a Business Network Card from a coworker. After importing it, I get the following error message when trying to connect to the network *** Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]] ***
[ ](https://chat.hyperledger.org/channel/composer?msg=7tg5mNc6yZGnvkY6C) @Dark_Knight Pretty much all of that is defined in Fabric, except for the endorsement policy which is defined by Composer. The whole Fabric network topology (list of organizations, peers, orderers, CAs) is described to Composer in the file `connection.json`. Also, Composer do have an extra layer of participants and authentication, so it is possible to replace what would be usually done using users in Fabric by using participants in Composer.
HI there i have a problem
can somebody help me?
I am developing an ionic node.js app
with hyperledger composer
[ ](https://chat.hyperledger.org/channel/composer?msg=k66oD2Q8yjNttR6ep) @lucasdf Thanks for your answer. That made many things clear to me
in order to get the business network definition from a javascript controller i need to doo the following
https://hyperledger.github.io/composer/applications/node.html
but when I try to do
this.bizNetworkConnection.connect(this.cardName)
.then((result) => {
this.businessNetworkDefinition = result;
});
i get the following error
TypeError: fs.stat is not a function
at Function.fromDirectory (idcard.js:322)
at FileSystemCardStore.get (filesystemcardstore.js:72)
at BusinessNetworkConnection.connect (businessnetworkconnection.js:427)
at ProductDetailPage.webpackJsonp.208.ProductDetailPage.getBND (product-detail.ts:38)
at ProductDetailPage.webpackJsonp.208.ProductDetailPage.ionViewDidLoad (product-detail.ts:32)
at ViewController._lifecycle (view-controller.js:486)
at ViewController._didLoad (view-controller.js:369)
at NavControllerBase._didLoad (nav-controller-base.js:768)
at t.invoke (polyfills.js:3)
at Object.onInvoke (core.js:4626)
what could be the problem?
can somebody help me?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=F37HWNQ6AronZffvg) @Brook 28 Which version of Composer are you using? It seems that the card has only been made totally portable in one of the most recent versions... Have your coworker exported the card before sending it to you? You need to export the card by using `composer card export -f /path/to/card --name admin@network-name` after the card is created and used to ping the network. That may solve your issue.
[ ](https://chat.hyperledger.org/channel/composer?msg=3zLeHJ992WtpDRQ5L) @lucasdf We get the same error message when trying to ping the network using the card
[ ](https://chat.hyperledger.org/channel/composer?msg=x4H7vhXEsubqoG2vd) @Brook 28 is there any interesting log in the CA logs? This error usually happen when there is some problem with the CA. Has this card been created when using `composer network start`?
@mahoney1 thanks for your notes. connection.json is here:[ ](https://chat.hyperledger.org/channel/composer?msg=WDSMY8yCbeux4pXcC) @mahoney1
```{
"name": "fabric-network",
"type": "hlfv1",
"mspID": "Org1MSP",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"ca": {
"url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"orderers": [
{
"url" : "grpc://localhost:7050"
}
],
"channel": "composerchannel",
"timeout": 300
}
```
@mahoney1 thanks for your notes. connection.json is here:[ ](https://chat.hyperledger.org/channel/composer?msg=WDSMY8yCbeux4pXcC) @mahoney1
```{
"name": "fabric-network",
"type": "hlfv1",
"mspID": "Org1MSP",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"ca": {
"url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"orderers": [
{
"url" : "grpc://localhost:7050"
}
],
"channel": "composerchannel",
"timeout": 300
}
```
Also, here are some errors echoing back to my terminal window:
```HLFConnectionManager :fabric-client() [Orderer.js]: sendBroadcast - start
HLFConnectionManager :fabric-client() [Orderer.js]: sendBroadcast - sent message
(node:12825) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: The event hub has not been connected to the event source
(node:12825) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
HLFConnectionManager :fabric-client() [Orderer.js]: sendBroadcast - on data response: {"status":"SUCCESS"}
HLFConnectionManager :fabric-client() [Orderer.js]: sendBroadcast - resolve with SUCCESS
HLFConnection :start() Received response from orderer {"status":"SUCCESS"}
HLFTxEventHandler :waitForEvents() >
HLFTxEventHandler :waitForEvents() <
HLFConnection :start() Error: Error trying to instantiate composer runtime. Error: The event hub has not been connected to the event source
ConnectorServer :Error: Error trying to i undefined
ConnectorServer :connectionDeploy() <
(node:12825) PromiseRejectionHandledWarning: Promise rejection was handled asynchronously (rejection id: 1)
HLFConnectionManager :fabric-client() [Orderer.js]: sendBroadcast - on end:
ConnectorServer :businessNetworkCardStore >
```
I should clarify that I'm using the tutorial that links to the browser window that pops when you run `composer-playground` - note there is zero info on using CA's as opposed to Id & Secret, along with a bunch of other missing content.
Further, I'm still getting the same error after doing a `./stopFabric.sh` and a `./teardownFabric.sh` and killing all the containers in Docker.
I'll research the link you provided -- thanks -- but in the interim, any thoughts / suggestions? Thanks much
I've followed this tutorial https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/ and I've got at the end of it but now I don't know how to deploy my .bna and test it
I mean, is there any tutorial how to set up and organisation with 4 peers and s
I mean, is there any tutorial on how to set up and organisation with 4 peers in physical machines and deploy and test your business network with the autogenerated rest api?
@mahoney1 also, I did check the stackoverflow link you provided -- I'm running the composer-playground scenario -- not the developer tutorial for single org. That said, I've been testing a lot of different scenarios, and I have in the recent past run that tutorial. So, question -- should I blow away and completely reinstall prior to each tutorial I run? That can't be feasible, can it? Thanks.
@mahoney1 also, I did check the stackoverflow link you provided -- I'm running the composer-playground scenario -- not the developer tutorial for single org. That said, I've been testing a lot of different scenarios, and I have in the recent past run that tutorial. So, question -- should I blow away and completely reinstall prior to each tutorial I run? That can't be feasible, can it? Thanks.
This is the tutorial doc I'm currently following and get the errors listed previously when I run composer-playground: https://hyperledger.github.io/composer/installing/development-tools.html
@mahoney1 This appears to be an issue with composer-playground -- checked the stackoverflow comments and 'fix' and according to the documentation here: there is no mandate to run the
```Assuming you have created the PeerAdmin card through running the createPeerAdminCard.sh script, it sounds like you did not do a composer runtime install -n tutorial-network -c PeerAdmin@tutorial-network first. If you did, then I suspect (in your tutorial, as you called it) that your Fabric is not configured correctly and the orderers are unable to push events back into the peers. First check the AnchorPeers and other hostnames in your file configtx.yaml and ensure you run configtxgen once you have made those changes. If you mean 'this tutorial' https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html then I would just follow it to the 'letter'. ```
@mahoney1 This appears to be an issue with composer-playground -- checked the stackoverflow comments and 'fix' and according to the documentation here: https://hyperledger.github.io/composer/installing/development-tools.html there is no mandate to run `composer runtime install -n tutorial-network -c PeerAdmin@tutorial-network` in order to run playground:
```Assuming you have created the PeerAdmin card through running the createPeerAdminCard.sh script, it sounds like you did not do a composer runtime install -n tutorial-network -c PeerAdmin@tutorial-network first. If you did, then I suspect (in your tutorial, as you called it) that your Fabric is not configured correctly and the orderers are unable to push events back into the peers. First check the AnchorPeers and other hostnames in your file configtx.yaml and ensure you run configtxgen once you have made those changes. If you mean 'this tutorial' https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html then I would just follow it to the 'letter'. ```
Can someone on the devel team check to make sure `composer-playground` is executing what's needed? I will tear down and try again this time from the single org devel document and not playground and will post back. Thanks.
Just re-installed fabric-dev-servers into a `fabric-tools` directory and I have a `.travis` directory which contains a single `gulp.js` file - I can't find any documentation on this directory or file.
Can someone please explain what this is? Is it associated with HLF?
Hi - try this: https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html [ ](https://chat.hyperledger.org/channel/composer?msg=HujuYDewZCeqpc3TC) @doubleb
Has joined the channel.
Hi, I deploy business model already chaincode is show in blockchain explorer. How do I get chaincode id?
[ ](https://chat.hyperledger.org/channel/composer?msg=zopoNA8xyeo8mXnp2) @mahoney1 Hi @mahoney1 thanks for the reply!
So you are saying that we can add multiple peers at fabric level only? At composer level it is not possible, is it?
[ ](https://chat.hyperledger.org/channel/composer?msg=fQZvMPYeA8AHMbCJD) @mahoney1 Hi @mahoney1 .. Thanks for the reply. I'll definitely try your solution. But I have one question is that, can't we add multiple peers at composer level? Do we have to add peers at fabric level only?
Clipboard - February 7, 2018 11:21 AM
[ ](https://chat.hyperledger.org/channel/composer?msg=AfxvSze3RovjmbK8A) @wininani How to create multipeers on composer playground??
[ ](https://chat.hyperledger.org/channel/composer?msg=MAhjQPvw3t6bDpm8B) @SudheerKaspa you can follow this link for multi peer https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
[ ](https://chat.hyperledger.org/channel/composer?msg=AQqTmN7aCZbGBqCrM) @wininani thanks for sharing the link
Has joined the channel.
Has joined the channel.
What you guys think ? "To develop production ready application Composer is not the best option since it lacks from a full set of features that are available using 'native' go based smart contract. Also be aware that Composer needs to be baked up by running fabric based blockchain network, otherwise it is useless. Composer operations that are managed using Web UI are not written in any blockchain but in memory instead.
Those are the main differences between Composer and Fabric, so definetively Composer is a great tool to build mockups, make PoC, etc"
ref: https://stackoverflow.com/questions/45505333/difference-between-hyperledger-composer-and-hyperledger-fabric
Has joined the channel.
Hi Everyone! I have a basic doubt. I have some model file and in that model file I have an asset and it has few parameters(members). When I test my business network on Playground it allows some of my asset parameter to be empty but while testing it through REST api using rest-server it is showing me an error that the field of an asset cant be empty. Can someone suggest something so that I can run this in REST server also.
Thanks in Advance :)
Has joined the channel.
we are looking to create a custom historian which shows all the details related to the transactions based on a particular assetId. Can someone help how can we do that. we have the api which shows just generic info in the history.
@MokeyJoy The person who wrote that response on Stackoverflow doesn't appear to understand the purpose of composer nor it's capabilities. For example playground is perfectly capable of interacting with a composer application on a real fabric where information is committed to a blockchain.
@davidkel Thank you. If I use hyperledger composer all I need to do(create new assets, query assets) is just using composer rest api? no need to use fabric_client to request to chaincode. Am I correct?
@MokeyJoy No you don't need to use fabric-client, composer provides it's own sdk for interacting with your business network
@MokeyJoy No you don't need to use fabric-client, composer provides it's own sdk for interacting with your business network, or use the REST server
[ ](https://chat.hyperledger.org/channel/composer?msg=x88aXxy3iEwoHcw89) @absingh0 Maybe you can declare the fields as optional in the definition of asset.
45 mins from now - the Community call today (Weds) will be at 10am UTC (10am UK, 2:30pm IST, 5pm CST) - Zoom : https://zoom.us/j/441168172 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming - latest agenda: -> https://github.com/hyperledger/composer/wiki/Meeting-7th-February-2018
ref : "https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html"
./byfn.sh -m up -s couchdb -a
-a is not in the command option ?
[ ](https://chat.hyperledger.org/channel/composer?msg=yNCqwodpoBJKAHogA) @MokeyJoy - did you use this specific command from the top of the tutorial:
`git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git` ? The -a option is available if you clone this repository.
[ ](https://chat.hyperledger.org/channel/composer?msg=M7owZ3xfYHixhKifp) @arunkarri - I think this section in our Knowledge Wiki will help answer your question:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#historianqueries
[ ](https://chat.hyperledger.org/channel/composer?msg=KvoXxD5P2bD5g5GLi) @Sneha @absingh0 - remember also that when you update the (redeploy) the model from Playground - you need to restart the REST server to pick up the changes.
[ ](https://chat.hyperledger.org/channel/composer?msg=duz9pGtWvu5JeqPf6) @rthatcher that was helpful but i already tried it, in the historian we can just see timestamp,type of transaction etc. But i am looking to track specifics of a transaction like quantity of assets purchased etc whatever i declare in the model
[ ](https://chat.hyperledger.org/channel/composer?msg=AfxvSze3RovjmbK8A) @wininani - the Cards are stored on the machine where you started Playground - so on your second machine - if you haven't imported any cards then you won't see any cards. I suggest you try exporting a card from the first machine and import it on the second machine.
Has joined the channel.
Hi , How to enabling authentication for the REST server other than github auth
Hi , How to enabling authentication for the REST server other than github auth
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
Hi , How to enabling authentication for the REST server other than github auth
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
The above url only specifies gihub auth
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
[ ](https://chat.hyperledger.org/channel/composer?msg=KvoXxD5P2bD5g5GLi) @Sneha Thanks! I also want these fields to be populated through transaction function. Will this optional suffice this?
In my model definition I have Asset1 which uses concept "Name" which contains first name, last name, initials etc.. While generating rest API using composer-rest-server I get this error Swagger: skipping unknown type "Name". I get the same error with all the remaining assets which are in relation to Asset1. How do I solve this?
[ ](https://chat.hyperledger.org/channel/composer?msg=SjDhpRfeBBC5vjXae) @aczire your admin.js file has some issues. Admin is a participant not an Asset so you have getParticipantRegistry() and then add a participant.
Is there a stable release of v0.17.3 ??How can I update from v0.16.2??
[ ](https://chat.hyperledger.org/channel/composer?msg=udvqyyE7v58r6hhmC) @absingh0 Yes, I think it should work when you are populating through rest API or transaction function.
[ ](https://chat.hyperledger.org/channel/composer?msg=dDZEyfyw3tEkKfZWt) @arunkarri - the following 2 example queries for the Tutorial Network show querying for the AddAsset System Transaction, and for the Trade transaction (defined in the model).
```
query QAddAssetTX {
description: "AddAsset System Transaction for Commodity"
statement: SELECT org.hyperledger.composer.system.AddAsset WHERE (targetRegistry == 'resource:org.hyperledger.composer.system.AssetRegistry#org.acme.biznet.Commodity') }
query QTradeTX {
description: "Trade Transaction"
statement: SELECT org.acme.biznet.Trade WHERE (commodity == _$commodity) }
```
Note that the passed parameter _$commodity needs to be fully qualified `org.acme.biznet.Commodity#SALT`
[ ](https://chat.hyperledger.org/channel/composer?msg=dDZEyfyw3tEkKfZWt) @arunkarri - the following 2 example queries for the Tutorial Network show querying for the AddAsset System Transaction, and for the Trade transaction (defined in the model).
```
query QAddAssetTX {
description: "AddAsset System Transaction for Commodity"
statement: SELECT org.hyperledger.composer.system.AddAsset WHERE (targetRegistry == 'resource:org.hyperledger.composer.system.AssetRegistry#org.acme.biznet.Commodity') }
query QTradeTX {
description: "Trade Transaction"
statement: SELECT org.acme.biznet.Trade WHERE (commodity == _$commodity) }
```
Note that the passed parameter _$commodity needs to be fully qualified `org.acme.biznet.Commodity#SALT`
The results of these Queries show the details I think you are looking for.
Has joined the channel.
I have issue when start the rest server, can't open the the angular web app on http://localhost:4200 any help please
I have issue when start the rest server, can't open the the angular web app on http://localhost:4200 any help please
[ ](https://chat.hyperledger.org/channel/composer?msg=vEXrmvNxSxJNAaa73) @pranavvr - the only current example is github, but a tutorial is being considered for authenticating with Google with oauth2. Just for reference there are many other possible 'passport strategies' http://www.passportjs.org/packages/
What authentication source / provider are you looking for ?
Screenshot from 2018-02-07 16-28-02.png
I create a new participant and issue new id, so new transaction is added in block. But I register and enroll a new client to CA using fabric ca client no transaction is added. The question is
1. what is differences concept between create a new participant and issue a new id using composer (new transaction) and create client using fabric ca client (no transaction)
Screen Shot 2018-02-07 at 3.01.52 PM.png
any help please
i faced this issue , its resolved when removed the fabric ledger and installed again[ ](https://chat.hyperledger.org/channel/composer?msg=nhFGEkW3JFSK33dna) @sravs
fabric ledger removing... what it means?
i uninstalled all environment and install it again, the thing is i was not able to reach the secured profile[ ](https://chat.hyperledger.org/channel/composer?msg=QX5d9hQLDY87QaM5g) @sravs
[ ](https://chat.hyperledger.org/channel/composer?msg=ciQgGnpY63LEjyu5S) @Sneha - I think there is a logged issue for this, but those errors 'skipping unknown type' can be ignored - they do not affect the function of the REST server.
[ ](https://chat.hyperledger.org/channel/composer?msg=tHPvyaaFdSsLp6GSa) @AkramAlkhalil - did you delete the folder `~/.composer` before re-running the `createPeerAdminCard.sh` script ?
Alternatively you could use the `composer card list` command and then `composer card delete` to delete all but the PeerAdmin card.
i removed the folders from the system files [ ](https://chat.hyperledger.org/channel/composer?msg=WfWqL3CEsJu9Yoxge) @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=xoKtjcWR5qhze7hno) @MokeyJoy - in order for a user to access a Business Network in Composer they need a Participant Record and for that Participant to be linked to an Identity from the CA. The normal workflow within Composer is to create the Participant and then Issue an ID, and the process of Issuing the ID links them together.
You can use the Fabric CA directly to create an ID, and then use the command `composer identity bind` to bind the ID to a Participant.
[ ](https://chat.hyperledger.org/channel/composer?msg=WJrCzp5hw2T9cFBb8) @SudheerKaspa - At the moment v0.16.3 is called 'latest' and v0.17.3 is called 'next' (and there are versions of 16 and 17 that are called unstable). There are breaking changes in v0.17 including a change to the underlying Fabric version, so you will need to start again to some extent. These steps should help:
1. Make bcakup text copies of your model, acl, queries, js etc.
2. Remove your 'old' Fabric with script `teardownFabric.sh`
3. uninstall existing composer code `npm uninstall -g composer-cli` (repeat for composer-rest-server and composer-playground)
4. Remove the 'old' business connection cards folder `rm -rf ~/.composer`
[ ](https://chat.hyperledger.org/channel/composer?msg=WJrCzp5hw2T9cFBb8) @SudheerKaspa - At the moment v0.16.3 is called 'latest' and v0.17.3 is called 'next' (and there are versions of 16 and 17 that are called unstable). There are breaking changes in v0.17 including a change to the underlying Fabric version, so you will need to start again to some extent. These steps should help:
1. Make bcakup text copies of your model, acl, queries, js etc.
2. Remove your 'old' Fabric with script `teardownFabric.sh`
3. uninstall existing composer code `npm uninstall -g composer-cli` (repeat for composer-rest-server and composer-playground)
4. Remove the 'old' business connection cards folder `rm -rf ~/.composer`
Follow these instruction carefully for installing composer 'next' AND the 1.1-Alpha version of Fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=WJrCzp5hw2T9cFBb8) @SudheerKaspa - At the moment v0.16.3 is called 'latest' and v0.17.3 is called 'next' (and there are versions of 16 and 17 that are called unstable). There are breaking changes in v0.17 including a change to the underlying Fabric version, so you will need to start again to some extent. These steps should help:
1. Make bcakup text copies of your model, acl, queries, js etc.
2. Remove your 'old' Fabric with script `teardownFabric.sh`
3. uninstall existing composer code `npm uninstall -g composer-cli` (repeat for composer-rest-server and composer-playground)
4. Remove the 'old' business connection cards folder `rm -rf ~/.composer`
Follow these instruction carefully for installing composer 'next' AND the 1.1-Alpha version of Fabric:
https://hyperledger.github.io/composer/next/installing/development-tools.html
[ ](https://chat.hyperledger.org/channel/composer?msg=KWeoQv9LDA2z38NHq) @rthatcher Please give me installation command for new version'
[ ](https://chat.hyperledger.org/channel/composer?msg=KWeoQv9LDA2z38NHq) @rthatcher Please give me installation command for new versionv.17'
@SudheerKaspa see the 'Installing Components' section - for cli its `npm install -g composer-cli@next` for example
@SudheerKaspa see the 'Installing Components' section - for composer-cli its `npm install -g composer-cli@next` for example
@pranoti - correct - peers are a Fabric (infrastructure) concept and thus peers (and appropriate config and crypto artifacts) are added at that level - Composer then connects through its connection profiles, as part of a business network card - to your modified Fabric network - the business network / smart contracts you build are deployed to the blockchain ledger (as effectively a runtime smart contract, often see as a 'chaincode' container in a Fabric dashboard or query facility), on the Fabric channel specified in your connection profile. Composer's docs add simple tutorials around getting Fabric Network samples (such as BYFN, taken from Fabric docs) up and running eg., show Composer tutorials for single-org config, multi-org config etc - showing how participants in organisations (mapped to blockchain identities) transact/interact with the business network (ie the smart contract) deployed to Fabric. The Fabric docs themselves is definitely the place to understand the principles of configuring a Fabric network, how peers are added, etc - though we try provide pointers to that (as indicated by links to available resources like Stack Overflow)
@pranoti - correct - peers are a Fabric (infrastructure) concept and thus peers (and appropriate config and crypto artifacts) are added at that level - Composer then connects through its connection profiles, as part of a business network card - to your modified Fabric network - the business network / smart contracts you build are deployed/submitted to Fabric peers / the ledger (as effectively a runtime smart contract, often see as a 'chaincode' container in a Fabric dashboard or query facility), on the Fabric channel specified in your connection profile. Composer's docs add simple tutorials around getting Fabric Network samples (such as BYFN, taken from Fabric docs) up and running eg., show Composer tutorials for single-org config, multi-org config etc - showing how participants in organisations (mapped to blockchain identities) transact/interact with the business network (ie the smart contract) deployed to Fabric. The Fabric docs themselves is definitely the place to understand the principles of configuring a Fabric network, how peers are added, etc - though we try provide pointers to that (as indicated by links to available resources like Stack Overflow)
@here qq... who should I talk to about the CI process w/ Composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=MBbfmCChMfDGXQbQE) @mahoney1 Okay! That's great.. Thanks, You made my day!! :relaxed: Thank you very much :pray:
@jtclark @jtonline
@sstone1 thanks
Has joined the channel.
Hello there! I'm new in this channel. I found a directory called codegen/ in composer. Inside there, I found fromcto/. After reading the source, I believe that composer could generate Golang / Java / Loopback / PlantUML code from .cto Composer Modeling Language sources. Does anyone know the command to achieve this?
Hello there! I'm new in this channel. I found a directory called codegen/ in composer. Inside there, I found fromcto/. After reading the source, I believe that composer could generate Golang / Java / Loopback / PlantUML code from .cto Composer Modeling Language sources. Does anyone know the command to achieve this? Thank you!
Has joined the channel.
Hi everyone, is it normal that when I try to install " npm install -g composer-cli" there is an error " checkPermissions Missing write access '/usr/lib/node_modules/composer-cli" ?
Do we need to do the install in sudo ?
[ ](https://chat.hyperledger.org/channel/composer?msg=haL6rxtgmkY7KLJsX) @CorentinPacaud - you should not use sudo when installing the composer cli. This section of the Knowledge Wiki should help with the permissions issue:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues
Has joined the channel.
Hi. I'm running on Ubuntu Xenial. I'm building my REST API and Angular App using 'yo hyperledger-composer:angular'. I'm starting my REST API and Angular App in the background using 'npm start &'. What's the best practice to stop them?
Has left the channel.
I have been trying to discover why the relationship to a type of a `Participant` is not resolved when using rest-server, resolve or resolveAll. I traced the problem to the serializer. I have tried to find the serializer but it seems that the Serializer class is just a proxy. Where can I find the real serializer?
Hello fellow people. I have asked a couple broad questions here before so forgive me, but I just want to be sure I am on the right path here. I want to create an app that allows multiple friends (users) to chat and propose events that they should do as a group. They can then cast votes in favor of these events using points they possess (accrued through active chat and other ways). If your event is chosen, then you are rewarded with the majority of the points used to vote, while the rest are split between the rest of the group. This goal is to create a contained social economy where disputes are settled or decisions made with these points.
I know this is probably not a solution that requires a blockchain, but I am looking for blockchain development experience.
Now, all that is to ask.. Is there a resource you can recommend for starting this? Is what I want to do possible using hyperledger? (i imagine its actually probably relatively easy, but I am still so lost) Thanks in advance!
Hi @cdpotts - start here: https://hyperledger.github.io/composer/introduction/introduction
Move to here: https://hyperledger.github.io/composer/installing/installing-index
Then follow the tutorials here: https://hyperledger.github.io/composer/tutorials/tutorials
Dummy question. What format does the composer rest server expect for the access_token?
Dummy question. What format does the composer rest server expect for the access_token? Is this just the loopback access_token?
For instance if I have a library which returns a JWT Token, and I want to parse it properly
@CT123 I am in the midst of the tutorials already, I have gone through all but I believe 1 or 2 of them. Is Hyperledger a good solution to my problem is what I am still trying to figure out. This is for part of my senior capstone, I want to be sure for time's sake
Has joined the channel.
Has joined the channel.
I am having trouble with examples at https://github.com/hyperledger/composer-sample-networks/ . The eslint says ecmascript 6, but it doesn't allow arrow functions. Also, the eslint file says no-vars, but the the transaction files in the lib have var instead of let
I had the change to ecmascript 8
[ ](https://chat.hyperledger.org/channel/composer?msg=ET6m3H4T8aS4LTKNf) @cdpotts go here to get a good overview of what is required - the course is free and it will walk you through the ~ 4 tests you need to meet to use distributed ledger / blockchain vs. a more conventional technology for your application -- the takeaway is not every application is a good fit for DL/BC but for those that are using hyperledger is a good solution: https://developer.ibm.com/courses/all/blockchain-essentials/
Hi Guys, I started on Composer tutorials and am facing an issue. My code to update the asset is not working. Not entirely sure what was the reason.
I debugged and I see that I am successfully calling assetRegistry.update() with updated asset information.
Below is the code
getParticipantRegistry('org.upc.network.Manufacturer')
.then(function (pr) {
return pr.get(updateItem.item.manufacturer.id)
}).then(function (manufacturer) {
var partners = manufacturer.partners;
for (var index = 0; index < partners.length; index++) {
partnerId = partners[index].id
console.log(submittedBy + "==" + partnerId)
if (submittedBy == partnerId) {
return getAssetRegistry('org.upc.network.Item')
.then(function (ar) {
assetRegistry = ar;
return ar.get(itemGTIN);
})
.then(function (asset) {
asset.description = updateItem.newDesc;
return assetRegistry.update(asset);
});
}
}
})
`getParticipantRegistry('org.upc.network.Manufacturer')
.then(function (pr) {
return pr.get(updateItem.item.manufacturer.id)
}).then(function (manufacturer) {
var partners = manufacturer.partners;
for (var index = 0; index < partners.length; index++) {
partnerId = partners[index].id
console.log(submittedBy + "==" + partnerId)
if (submittedBy == partnerId) {
return getAssetRegistry('org.upc.network.Item')
.then(function (ar) {
assetRegistry = ar;
return ar.get(itemGTIN);
})
.then(function (asset) {
asset.description = updateItem.newDesc;
return assetRegistry.update(asset);
});
}
}
})`
Clipboard - February 7, 2018 2:53 PM
``` getParticipantRegistry('org.upc.network.Manufacturer')
.then(function (pr) {
return pr.get(updateItem.item.manufacturer.id)
}).then(function (manufacturer) {
var partners = manufacturer.partners;
for (var index = 0; index < partners.length; index++) {
partnerId = partners[index].id
console.log(submittedBy + "==" + partnerId)
if (submittedBy == partnerId) {
return getAssetRegistry('org.upc.network.Item')
.then(function (ar) {
assetRegistry = ar;
return ar.get(itemGTIN);
})
.then(function (asset) {
asset.description = updateItem.newDesc;
return assetRegistry.update(asset);
});
}
}
})```
```
/**
* transaction to update the Item Desc
* @param {org.upc.network.updateItem} updateItem
* @transaction
*/
function onUpdateItem(updateItem) {
var assetRegistry, participantRegistry;
console.log("GTIN="+updateItem.item.gtin)
console.log("SubmittedBy="+updateItem.submittedBy.id)
console.log("Manufacturer="+updateItem.item.manufacturer.id)
var itemGTIN = updateItem.item.gtin;
var submittedBy = updateItem.submittedBy.id;
var itemManufacturer = updateItem.item.manufacturer.id;
// verify logic to ensure the item can only be updated by either manufacturer or its partners
if (submittedBy == itemManufacturer) {
return getAssetRegistry('org.upc.network.Item')
.then(function (ar) {
assetRegistry = ar;
return ar.get(itemGTIN);
})
.then(function (asset) {
asset.description = updateItem.newDesc;
return assetRegistry.update(asset);
});
} else {
// verify if it is submitted by one of the partners
getParticipantRegistry('org.upc.network.Manufacturer')
.then(function (pr) {
return pr.get(updateItem.item.manufacturer.id)
}).then(function (manufacturer) {
var partners = manufacturer.partners;
for (var index = 0; index < partners.length; index++) {
partnerId = partners[index].$identifier;
console.log(submittedBy + "==" + partnerId)
if (submittedBy == partnerId) {
return getAssetRegistry('org.upc.network.Item')
.then(function (ar) {
assetRegistry = ar;
return ar.get(itemGTIN);
})
.then(function (asset) {
asset.description = updateItem.newDesc;
return assetRegistry.update(asset);
});
}
}
})
}
}```
@y2255236 composer-sample-networks for stable can only be ES5 with a couple of extra polyfills (eg promises). You cannot use keywords such as `const` or `let` when working with stable. If you want to use ES8 for TP functions you need to use the next release of composer and the master branch of composer-sample-networks. Info on next release can be found at
https://hyperledger.github.io/composer/next/
Anyone kind enough to answer this question? https://stackoverflow.com/questions/48671801/error-invalid-or-missing-identifier-for-type-in-namespace
[ ](https://chat.hyperledger.org/channel/composer?msg=F2R4EFrFEqbT7rYWQ) Found the issue. Apparently I missed adding `return` statement before `getParticipantRegistry()`
Has joined the channel.
hey I'm trying to deploy multi-organization hyperledger fabric by using this tutorial ,https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-multi-org, In seventeenth step I got error, nekma@nekma-pc:/tmp/composer/org1$ composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network@0.0.1.bna -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
Starting business network from archive: tutorial-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: second network
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Response from attempted peer comms was an error: Error: Unknown chaincodeType: NODE
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (tutorial-network:0.17.3)-open /var/hyperledger/production/chaincodes/tutorial-network.0.17.3: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (tutorial-network:0.17.3)-open /var/hyperledger/production/chaincodes/tutorial-network.0.17.3: no such file or directory)
Command faile
hey I'm trying to deploy multi-organization hyperledger fabric by using this tutorial ,https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-multi-org, In seventeenth step I got error, nekma@nekma-pc:/tmp/composer/org1$ composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network@0.0.1.bna -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
Starting business network from archive: tutorial-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: second network
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Response from attempted peer comms was an error: Error: Unknown chaincodeType: NODE
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (tutorial-network:0.17.3)-open /var/hyperledger/production/chaincodes/tutorial-network.0.17.3: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (tutorial-network:0.17.3)-open /var/hyperledger/production/chaincodes/tutorial-network.0.17.3: no such file or directory)
Command failed Any guidence will be appreciated.Thanks
Good day! I'm just wondering why a model can't be identified with Long?
Good day! I'm just wondering why a model can't be identified with Long? Is there any reason behind it?
I just realized this! Interesting... May be they think blockchain is for "forever" and 64-bit integers are not big enough for that :D [ ](https://chat.hyperledger.org/channel/composer?msg=y4s6cQNdmcs9khkA7) @rhansharief
And, FYI, no any array of arrays. [ ](https://chat.hyperledger.org/channel/composer?msg=y4s6cQNdmcs9khkA7) @rhansharief
hi , everyone , when i create a BNC connect to a my v1.1 Blockchain . i input CERTIFICATE AUTHORITY with :
屏幕快照 2018-02-08 下午2.52.43.png
can I use composer for "sawtooth" or it is only for "fabric" ?
next, i deploy New Business Network ,i get some error like :
屏幕快照 2018-02-08 下午2.51.45.png
@tk1 you need to be running the 1.1-alpha release of fabric. Part of the tutorial will refer back to the hyperledger docs to download the latest version of fabric. As part of that process you should download the latest binaries and fabric images and then those fabric images should be tagged as latest. You need to ensure you fabric 1.1-alpha images are also tagged as latest. It looks like in your case they are still pointing to 1.0 images
@james3443112 when you set up and built your own fabric, you will have defined your ca. As part of that definition you will have given your ca 1 or more names (a ca can be partitioned). You need to provide the name that your ca has defined
Has joined the channel.
Hi All, I am trying to add asset using transaction. below is my code
```
/**
* CreateAsset transaction
* @param {com.asset.tmt.CreateAsset} createAsset
* @transaction
*/
function CreateAsset(createAsset) {
var factory = getFactory();
var asset = factory.newResource('com.asset.tmt', 'DigitalAsset', createAsset.assetId);
console.log(asset);
asset.assetId = createAsset.assetId;
asset.name = createAsset.name;
asset.creationDate = createAsset.creationDate;
asset.expiryDate = createAsset.expiryDate;
asset.rightsOwnedBy = createAsset.rightsOwnedBy;
asset.contentHashCode = createAsset.contentHashCode;
asset.isPublished = createAsset.isPublished;
asset.assetViewCounter = createAsset.assetViewCounter;
asset.sitesUsedAt = createAsset.sitesUsedAt;
asset.thumbnailURL = createAsset.thumbnailURL;
return getAssetRegistry(asset.getFullyQualifiedType())
.then(function(ar){
return ar.add(asset);
})
}
```
But when I click on transaction I am receiving `ReferenceError: DigitalAsset is not defined`
How to solve this?
@davidkel but the CERTIFICATE AUTHORITY - Name is not necessary and there is no field which shuold i input ca-secret
(1) Would you please show your CTO file? (2) Would you please do a console log for `asset.getFullyQualifiedType()`? [ ](https://chat.hyperledger.org/channel/composer?msg=E6oJdjsmZzbYvtfed) @rajadilipkolli
屏幕快照 2018-02-08 下午3.56.40.png
ygsoft is fabric-ca-server init id , and orderer1 peer0 peer1 are node id
@kenjisiu-ibmhk here is my cto file
```
participant User identified by userId {
o String userId
o String email
o String firstName
o String lastName
o String userGroup
}
asset DigitalAsset identified by assetId {
o String assetId
o String name
o String creationDate optional
o String expiryDate
o String rightsOwnedBy
o String contentHashCode
o Boolean isPublished default = false
o Integer assetViewCounter default = 0 optional
o String sitesUsedAt default = "none" optional
o String thumbnailURL
}
transaction ChangeAssetValue {
o String expiryDate
o String assetId
o String userId
o Boolean isPublished
}
transaction WatchVideoAsset {
o String assetId
o String userId
o Boolean isPublished
}
transaction CreateAsset {
o String assetId
o String name
o String creationDate optional
o String expiryDate
o String rightsOwnedBy
o String contentHashCode
o Boolean isPublished default = false
o Integer assetViewCounter default = 0 optional
o String sitesUsedAt default = "none" optional
o String thumbnailURL
}
```
@james3443112 the common connection profile https://jira.hyperledger.org/browse/FAB-5363 didn't define ca name as optional. Are you saying you can set up a ca that has no name ?
@rajadilipkolli Did you say `namespace com.asset.tmt` at the beginning of the cto file?
@kenjisiu-ibmhk yes
```
/**
* Model Definitions
*/
namespace com.asset.tmt
participant User identified by userId {
o String userId
o String email
o String firstName
o String lastName
o String userGroup
}
asset DigitalAsset identified by assetId {
o String assetId
o String name
o String creationDate optional
o String expiryDate
o String rightsOwnedBy
o String contentHashCode
o Boolean isPublished default = false
o Integer assetViewCounter default = 0 optional
o String sitesUsedAt default = "none" optional
o String thumbnailURL
}
transaction ChangeAssetValue {
o String expiryDate
o String assetId
o String userId
o Boolean isPublished
}
transaction WatchVideoAsset {
o String assetId
o String userId
o Boolean isPublished
}
transaction CreateAsset {
o String assetId
o String name
o String creationDate optional
o String expiryDate
o String rightsOwnedBy
o String contentHashCode
o Boolean isPublished default = false
o Integer assetViewCounter default = 0 optional
o String sitesUsedAt default = "none" optional
o String thumbnailURL
}
```
this is my full cto file
@rajadilipkolli In the transactions (`ChangeAssetValue`, `WatchVideoAsset`), it is better to use `--> Asset asset` and `--> User user`.
@rajadilipkolli In the transactions ( `ChangeAssetValue`, `WatchVideoAsset` ), it is better to use `--> Asset asset` and `--> User user`.
@kenjisiu-ibmhk Sure I will make necessary changes, Can you look into transaction (`CreateAsset`) and say what I am missing
@kenjisiu-ibmhk I tried there and it is giving me error
@rajadilipkolli Have you tested it on http://composer-playground.mybluemix.net ? I tried without any problem. The asset is created.
Screen Shot 2018-02-08 at 4.13.04 PM.png
Clipboard - February 8, 2018 1:46 PM
I am trying there and it is giving me above error
Did you click "Update" before testing?
@james3443112 ok, I see the problem now, I will raise an issue.
@kenjisiu-ibmhk yes I did
:ok_hand:
Screen Shot 2018-02-08 at 4.21.01 PM.png
@james3443112 https://github.com/hyperledger/composer/issues/3357
@rajadilipkolli What browser are you using? Would you please start a new user profile and test the code again?
@rajadilipkolli https://help.lever.co/hc/en-us/articles/206403315-How-do-I-create-multiple-Chrome-profiles-
Has joined the channel.
Hi guys, If you create a application with Hyperledger Composer can you modify it so that it works with channels? Maybe editing the connectionProfile. Or could you create an network through Hypeldeger Fabric with the channels and create the application with Hyperledger Composer? Or how would one get channel support in Hyperledger Composer ?
@rajadilipkolli Is your problem solved with a fresh browser user profile?
@davidkel thanks
@kenjisiu-ibmhk , it worked. I am using chrome till now. Tested the same code in IE and it started working
@kenjisiu-ibmhk Thanks for your help
@rajadilipkolli You're welcome. If you still have problems on Chrome, try clearing cookies and local storage from "playground".
@rajadilipkolli You're welcome. If you still have problems on Chrome, try clearing the browser cache, and the cookies and local storage from "playground".
@rajadilipkolli You're welcome. If you still have problems on Chrome, please try clearing the browser cache, and the cookies and local storage from "playground".
@rajadilipkolli Since the web-based playground is just a simulation of the blockchain, the data in it may be corrupted by using different versions of playground, or by a browser crash.
[ ](https://chat.hyperledger.org/channel/composer?msg=5hJD6XgTPQfwinaeJ) @Switch2Logic - Composer works with Channels. By default it uses a channel 'composerchannel' but you can configure your connection profile in your Business Network Card to use any channel name.
@rthatcher so it is possible to have 2 channels on Composer ?
@rthatcher Thank you I found the section I have over looked: https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html
[ ](https://chat.hyperledger.org/channel/composer?msg=33EFpvpn9E7Mzhtxe) @AshwinKumar844129 - Composer depends on Fabric. There is no co-dependency with sawtooth and no special documented connectivity. Composer does not deploy to Sawtooth. With APIs it might be possible to 'connect' between.
@rthatcher Thanks
Hi everyone.
I try to add the cli via this thing in docker-composer.yml :
```
cli:
container_name: cli
working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer
image: hyperledger/composer-cli:latest
```
then I execute the commands in this this website : https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
```
cd "$(dirname "$0")"
cryptogen generate --config=./crypto-config.yaml
export FABRIC_CFG_PATH=$PWD
configtxgen -profile ComposerOrdererGenesis -outputBlock ./composer-genesis.block
configtxgen -profile ComposerChannel -outputCreateChannelTx ./composer-channel.tx -channelID composerchannel
```
But with the last one I have this error :
```
2018-02-08 11:18:50.956 CET [common/tools/configtxgen] main -> INFO 001 Loading configuration
2018-02-08 11:18:50.961 CET [common/tools/configtxgen] doOutputChannelCreateTx -> INFO 002 Generating new channel configtx
2018-02-08 11:18:50.978 CET [common/tools/configtxgen] main -> CRIT 003 Error on outputChannelCreateTx: config update generation failure: could not parse application to application group: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")
```
What's wrong ?
Hi, is there a way to batch transactions in a block when using Composer?
@rhansharief Long is definitely a valid primitive type in Composer's Modeling Language https://hyperledger.github.io/composer/reference/cto_language.html
Has joined the channel.
@mahoney1 Hello. Currently I am using v0.16.0 for my development. How can I upgrade to stable version v0.16.3? Is this the latest stable release for fabric v1.0? I want to use fabric v1.0 as of now.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=QZk7m4YQMXbgcWkrW) @AkshayJindal ```1) npm uninstall -g composer-cli (and whatever other components you have eg composer-rest-server etc )
2) npm install -g composer-cli (will install 0.16.3) - and whatever other composer components etc.
3) composer runtime install -n network-name -c PeerAdmin@network-name (install new runtime)
4) composer network upgrade -c PeerAdmin@network-name (upgrade your network)```
I have been trying to discover why the relationship to a type of a `Participant` is not resolved when using rest-server, resolve or resolveAll. I traced the problem to the serializer. I have tried to find the serializer but it seems that the Serializer class is just a proxy. Where can I find the real serializer that is used by `resolve` and `resolveAll`?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZQS8ukXy6nWxN6NnQ) @JeremyH if you mean 'block' in a Fabric sense, then you should read more here (in particular the first answer) -> https://stackoverflow.com/questions/42756681/how-exactly-blocks-are-created-in-hyperledger-fabric .
any help ?
Has joined the channel.
Has joined the channel.
Hi, I have a question related to the web based composer playground. Im having some issues with my access control file. Before i start explaining, is this the right channel for this question? Couldn't find a specific playground channel on here.
[ ](https://chat.hyperledger.org/channel/composer?msg=or7SchGnyfaWGnpEt) @CorentinPacaud at a glance sounds like something went wrong with your channel config - see here or ask in #fabric -> http://hyperledger-fabric.readthedocs.io/en/release/configtxgen.html you should have got an INFO 003 message but instead you get CRIT 003 - you can also inspect your existing configuration (from configtxgen) FYI
Ok, I try to do to and understand every steps, and do it "by hand". thx
Ok, I try to do and understand every steps, and do it "by hand". thx
[ ](https://chat.hyperledger.org/channel/composer?msg=RpshLF6BgNMCNYTNn) @hendiflex yes, you can ask about ACLs here.
[ ](https://chat.hyperledger.org/channel/composer?msg=Qsy9cfbJs5WrWtzyK) @mahoney1 Okay cool. So what i'm trying to do is deny a certain participant access to a certain asset, but only when he is not a part of that asset. Now I am trying to use a conditional for this with use of the getIdentifier() method. But when I go over to the test it using the identity of the participant I've written the rule for, I get the error that "The runtime API is not available". It feels like I'm trying to do something very basic her, but I can't figure out why i would be getting this error. :(
[ ](https://chat.hyperledger.org/channel/composer?msg=Qsy9cfbJs5WrWtzyK) @mahoney1 Okay cool. So what i'm trying to do is deny a certain participant access to a certain asset, but only when he is not a part of that asset. Now I am trying to use a conditional for this with use of the getIdentifier() method. But when I go over to test it using the identity of the participant I've written the rule for, I get the error that "The runtime API is not available". It feels like I'm trying to do something very basic here, but I can't figure out why i would be getting this error. :(
[ ](https://chat.hyperledger.org/channel/composer?msg=P7h8ZthcYqJyk78mE) @lucasdf so typically it would be called as eg. ` let serializer = businessNetworkDefinition.getSerializer();` do these links help you (resolve/serializer issue for) -> https://stackoverflow.com/questions/43639867/how-to-resolve-a-relationship-to-get-a-hold-of-the-reference-being-pointed-to and -> https://stackoverflow.com/questions/47012578/retrieving-array-of-assets-in-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=hvy2PQJ3c5kwkCmk3) @mahoney1 no, they don't. At this point I am sure that there is some issue in Composer. The generic relationship do `Participant` is never resolved. That can be easily duplicated. Only relationships to specific classes are resolved. I traced the issue up to this point: at [this](https://github.com/hyperledger/composer/blob/a4cdeb7b935e6f4e832dca6f6c2be4b771fdfa6c/packages/composer-runtime/lib/engine.resources.js#L152) line, before the `toJSON` operation, all the relationships are resolved/completed. However, after the `toJSON` operation completes then the content of the relationship to `Participant` is replaced by just `{ '$class': 'org.hyperledger.composer.system.Participant' }`. I am not sure if that's very clear..
[ ](https://chat.hyperledger.org/channel/composer?msg=hvy2PQJ3c5kwkCmk3) @mahoney1 no, they don't. At this point I am sure that there is some issue in Composer. The generic relationship do `Participant` is never resolved. That can be easily duplicated. Only relationships to specific classes are resolved. I traced the issue up to this point: at [this](https://github.com/hyperledger/composer/blob/a4cdeb7b935e6f4e832dca6f6c2be4b771fdfa6c/packages/composer-runtime/lib/engine.resources.js#L152) line, before the `toJSON` operation, all the relationships are resolved/completed. However, after the `toJSON` operation completes then the content of the relationship to `Participant` is replaced by just `{ '$class': 'org.hyperledger.composer.system.Participant' }`. I am not sure if my explanation very clear..
[ ](https://chat.hyperledger.org/channel/composer?msg=hvy2PQJ3c5kwkCmk3) @mahoney1 no, they don't. At this point I am sure that there is some issue in Composer. The generic relationship do `Participant` is never resolved. That can be easily duplicated. Only relationships to specific classes are resolved. I traced the issue up to this point: at [this](https://github.com/hyperledger/composer/blob/a4cdeb7b935e6f4e832dca6f6c2be4b771fdfa6c/packages/composer-runtime/lib/engine.resources.js#L152) line, before the `toJSON` operation, all the relationships are resolved/completed. However, after the `toJSON` operation completes then the content of the relationship to a `Participant` is replaced by just `{ '$class': 'org.hyperledger.composer.system.Participant' }`. I am not sure if my explanation very clear..
[ ](https://chat.hyperledger.org/channel/composer?msg=hvy2PQJ3c5kwkCmk3) @mahoney1 no, they don't. At this point I am sure that there is some issue in Composer. The generic relationship do `Participant` is never resolved. That can be easily duplicated. Only relationships to specific classes are resolved. I traced the issue up to this point: at [this](https://github.com/hyperledger/composer/blob/a4cdeb7b935e6f4e832dca6f6c2be4b771fdfa6c/packages/composer-runtime/lib/engine.resources.js#L152) line, before the `toJSON` operation, all the relationships are resolved/completed. However, after the `toJSON` operation completes then the content of the relationship to a `Participant` is replaced by just `{ '$class': 'org.hyperledger.composer.system.Participant' }`, which does not contain the rest of the relationship's attributes/data. I am not sure if my explanation very clear..
[ ](https://chat.hyperledger.org/channel/composer?msg=hvy2PQJ3c5kwkCmk3) @mahoney1 no, they don't. At this point I am sure that there is some issue in Composer. The generic relationship do `Participant` is never resolved. That can be easily duplicated. Only relationships to specific classes are resolved. I traced the issue up to this point: at [this](https://github.com/hyperledger/composer/blob/a4cdeb7b935e6f4e832dca6f6c2be4b771fdfa6c/packages/composer-runtime/lib/engine.resources.js#L152) line, before the `toJSON` operation, all the relationships are resolved/completed. However, after the `toJSON` operation finishes then the content of the relationship to a `Participant` is replaced by just `{ '$class': 'org.hyperledger.composer.system.Participant' }`, which does not contain the rest of the relationship's attributes/data. I am not sure if my explanation very clear..
@lucasdf - I would advise you to raise an issue with the use case/scenario replicated to show where things are not resolved for your participant registry type - that registry is a system registry..
@lucasdf - I would advise you to raise an issue with the use case/scenario replicated to show where things are not resolved for your participant registry type (also assuming you have appropriate ACLs to permit access) - that registry [you mention] is a system registry so won't contain your business network participants resources but you probably know that..
Has joined the channel.
guys I am totally new to hyperledger, how it is different from ethereum ? How to what, what is hyperlrdger actually ???
Good day... have done the multiple organisation tutorial... In the tutorial the organisations are both on the local host... Does that mean organisations are Logical or would you link an organisation to a different physical machine in another geolocation ?
@mkvaghani https://medium.com/@philippsandner/comparison-of-ethereum-hyperledger-fabric-and-corda-21c1bb9442f6.... Really something you can google and read about.... Or even youtube videos
[ ](https://chat.hyperledger.org/channel/composer?msg=Bdfv6W8M29akwAMHk) @mkvaghani http://lmgtfy.com/?q=what+is+hyperledger
@hendiflex Really great advise there...
@Switch2Logic @hendiflex I understand and read it. But why I need blockchain. only for security ??
until now, I upload files on server AMAZON, now IBM is doing for hyperledger. same sam, then why I need blockchain. , Who host my files, how to decide ?
@mkvaghani http://lmgtfy.com/?q=why+would+I+use+Hyperledger+Fabric
@here we've released #Hyperledger #Composer v0.17.4, which includes new function that lets you directly access the underlying #Hyperledger #Fabric v1.1 chaincode APIs and load models from external data sources! The latest #CongaComic is also a right good'un 🎉 https://github.com/hyperledger/composer/releases/tag/v0.17.4
... and by good'un, I mean that the latest #CongaComic for #Hyperledger #Composer introduces everybody's favourite #blockchain hero, #BlockNorris! https://user-images.githubusercontent.com/8394544/35966022-90f7627e-0cb4-11e8-8de8-f4790a6fe379.png
why I need smart contracts ??? NO GOOGLE PLZ
@mkvaghani You seem very lazy... All these questions you are asking could be googled and if you read you will understand.
Has joined the channel.
@Switch2Logic trying if you guys know direct video or docs that I can refer. Google wasting time showing hundreds of links :)
anyways , thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=sGYsNBceJkrjpCeR7) @mahoney1 I have opened an issue here https://github.com/hyperledger/composer/issues/3371 . I think it is pretty completed and it may demonstrate it better the issue that I am facing. Let me know if I should include any other information.
[ ](https://chat.hyperledger.org/channel/composer?msg=sGYsNBceJkrjpCeR7) @mahoney1 I have opened an issue here https://github.com/hyperledger/composer/issues/3371 . I think it is pretty completed and it may demonstrate it better the issue that I am facing. Let me know if I should include any other information. The problem is not related to ACL permissions.
[ ](https://chat.hyperledger.org/channel/composer?msg=sGYsNBceJkrjpCeR7) @mahoney1 I have opened an issue here https://github.com/hyperledger/composer/issues/3371 . I think it is pretty complete and it may demonstrate it better the issue that I am facing. Let me know if I should include any other information. The problem is not related to ACL permissions.
@mkvaghani Asking questions like that here waist our time. And the first two links on google will always help you...
ok
[ ](https://chat.hyperledger.org/channel/composer?msg=LCQbsuGw6xtrF3tRQ) @Switch2Logic - The MultiOrg Tutorial provided in the Composer documentation is intended to give a flavour of the Composer aspects of a Multi Org Fabric. In a real-world scenario the Orgs would be distinctly separated (otherwise you wouldn't need a distributed ledger). On completion of the MultiOrg tutorial I would say the learning is that:
'Through use of Connection Profiles and Business Connection Cards composer can easily support and take advantage of a complex Multi Peer, Multi Org underlying Fabric.'
The tutorial was written to run on a single machine or VM so that it can easily be repeated and files can be cut and pasted using localhost.
Moving from a one machine tutorial to a custom Multi-Machine test/poc Fabric network requires some research/knowledge of Fabric, Docker and IP Networking.
@rthatcher Thank you for the response so I am on the right path that in production I would run Orgs on different servers in different geolocation as well as multiple orders and peers... Do you know of any resources that could help with the research into how one would set up a production multi-organisation networking?
@rthatcher I am a Masters Student in Information Technology and busy with this as a Masters project... IP Networking is not a problem my knowledge on docker is very limited... Just really need some guidance on a production level Fabric network..
[ ](https://chat.hyperledger.org/channel/composer?msg=8fwcLzScMXuKrbTKy) @Switch2Logic - in this composer channel we usually restrict ourselves to explaining that a production Fabric is a serious undertaking :-) I would point you to the #fabric channel and the Fabric docs http://hyperledger-fabric.readthedocs.io/en/latest/blockchain.html
Has joined the channel.
Hi All, last week I've done a local installation of HL-Composer Playground, following this tutorial: https://hyperledger.github.io/composer/next-unstable/installing/development-tools.html and it shows version number 0.17.3; it is possible to install old 0.16.3 (HL-Fabric v1.0 version) that I installed in january (a stable version is requested for a demo in a few weeks) ? thank you very much in advance for your response.
Hi @channel, new here. I've managed to setup de dev environment, created a simple bna and now am trying to start the network. I keep getting this error :No connection type provided, probably because the connection profile has no 'x-type' property defined. Any help appreciated
[ ](https://chat.hyperledger.org/channel/composer?msg=mjxoFjtoCXXknH2pP) @dpadev If you want to install a stable version without disrupting the 0.17.3 environment you have set up, I'd recommend using https://github.com/jt-nti/composer-devenv (especially if it's for demos). You'd be able to use `COMPOSER_VERSION=latest vagrant up` to get a demo VM setup, which you can suspend/resume as needed
Hi @sstone1 --could you please suggest to use of composer to develop fabric application for prod,,is it ready for prod ?
[ ](https://chat.hyperledger.org/channel/composer?msg=wYTuy44Fhgm6wEyAH) HI @rthatcher does such a multi-machine tutorial exist - anywhere?
All - is there info on how to customize the composer playground UI for local use, e.g., can it be customized by editing the localhost:8080/editor HTML file? Thanks
All - is there info on how to customize the composer playground UI for local use, e.g., can it be customized by editing the localhost:8080/editor HTML file? Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=sWCwr2vZgrCWSLHKv) @eduardosdgomes - I think that message suggests that you are now running v0.17.x but you have some old Business Network Cards from v0.16.x
If so, then you need to delete the old cards then run .createPeerAdminCard.sh from fabric-tools folder then you should be OK.
(If you can't delete the v0.16 cards, then just delete the ~/.composer folder and contents.
@rthatcher thanks... will try to do so and inform back
[ ](https://chat.hyperledger.org/channel/composer?msg=Efr4xcGEAKKHrHP5h) @knagware9 hi there, it is ready to develop composer-based applications yes (fyi - in the v0.17.4 release you can also try out calling Fabric APIs from Composer TP functions as shown here -> https://hyperledger.github.io/composer/next/tutorials/invoke-composer-network ) - and obviously in time, once a production release is available, deploy the Composer smart contracts to an appropriate production-level Fabric version / network. See also here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--miscellaneous-items---fabric-uncategorised for more general info.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi there, I have a field in type DateTime. How do I set the field value correctly in JS? I tried using Date() or String like '2018-01-01', but the system complains about type mismatch.
Hello, i recently setup composer 17.3 and fabric 1.1
following the developer tutorial i'm receiving the following error -- cloud@bailey-2:~/tutorial-network$ composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card
Starting business network from archive: tutorial-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: tutorial network
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Has joined the channel.
any suggestions on what the issue might be, i also see in the peer log this error - 2018-02-08 23:25:49.124 UTC [chaincode] launchAndWaitForRegister -> DEBU 4ad stopping due to error while launching: timeout expired while starting chaincode tutorial-network:
Hi Team, I know this might be obvious but I have been working with composer for a week now. First great work!! Second is it possible to call other business networks through transactions if they exist on the same fabric ledger?
To clarify I mean call other transaction functions (not the models themselves).
I know this is possible using Fabric and Codechain to call multiple channels, just haven't seen anything to show whether this is possible with composer.
inside chaincode runtime API, when assetRegistry.add() is resolved, is the asset added to ledger or just added to proposalResponse?
for the same api is called by client app, when promise is resolved, is the asset added to ledger or the proposal response is sent to ledger?
Has joined the channel.
Team, is it possible to write smart contracts in Hyperledger ?
[ ](https://chat.hyperledger.org/channel/composer?msg=zm32gM2ZHTXzuHfB2) @virup Yes in Fabric, known as chaincode.
[ ](https://chat.hyperledger.org/channel/composer?msg=zm32gM2ZHTXzuHfB2) @virup You may also do it in an easier way using Hyperledger Composer.
Team , i am playing around in the playground in below url https://composer-playground.mybluemix.net/editor
and facing error as Error: Object with ID '5132' in collection with ID 'Asset:org.acme.sample.SampleAsset' does not exist
when submitting the transaction. I have created sampleasset and sampleclass also
please suggest where it can go wrong
Error: Error trying to ping. Error: No business network has been specified for this connection
Hi team I followed this tutorials https://hyperledger.github.io/composer/tutorials/tutorials.html to setup composer with hlfv1, but my composer keep telling me this Erro
`Error: Error trying to ping. Error: No business network has been specified for this connection`
Hi team I followed this tutorials https://hyperledger.github.io/composer/tutorials/tutorials.html to setup composer with hlfv1, but my composer keep telling me this Erro
`Error: Error trying to ping. Error: No business network has been specified for this connection`
Hi team I followed this tutorials https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-orgto setup composer with hlfv1, but my composer keep telling me this Erro
`Error: Error trying to ping. Error: No business network has been specified for this connection`
can anybody help?
Help me :(
1. I start basic network with 1 peer(peer0.org1), ca, and orderer at "mychannel"
2. I start another peer(peer1.org1) and then join to "mychannel"
3. I test with connect block explorer with peer0 and peer1
4. I connect hyperledger composer to peer0 and deploy business network.
5. At block explorer that connect with peer0 show 1 chaincode and new transaction appear
6. At block explorer that connect with peer1 still 0 chaincode but new transaction appear ?????
How deploy chaincode to all peer that join in the same channel?
Help me :(
1. I start basic network with 1 peer(peer0.org1), ca, and orderer at "mychannel"
2. I start another peer(peer1.org1) and then join to "mychannel"
3. I test with connect block explorer with peer0 and peer1
4. I connect hyperledger composer to peer0 and deploy business network.
5. At block explorer that connect with peer0 show 1 chaincode and new transaction appear
6. At block explorer that connect with peer1 still 0 chaincode but new transaction appear ?????
How deploy chaincode to all peer that join in the same channel?
OK I got it
"Chaincode trust flexibility. The architecture separates trust assumptions for chaincodes (blockchain applications) from trust assumptions for ordering. In other words, the ordering service may be provided by one set of nodes (orderers) and tolerate some of them to fail or misbehave, and the endorsers may be different for each chaincode." ref : https://hyperledger-fabric.readthedocs.io/en/release/arch-deep-dive.html
Hi All, I have noticed a problem while creating assets in Composer Playground
It is allowing the NULL/EMPTY values in attributes which I din't mark as optional.
Hi All, I have noticed a problem while creating assets in Composer Playground
It is allowing the NULL/EMPTY values in attributes which I din't mark as optional.
How do I make sure few set of mandatory attributes are always taken.
@jtonline Thank you very much for your suggestion, I'll try it immediately
@rbailey what version of fabric1.1 are you using ? 0.17.3 will only work with 1.1-alpha
@gytaco we've just release 0.17.4 with that exact capability, check out the release notes for 0.17.4 for details https://github.com/hyperledger/composer/releases/v0.17.4
Hi All, I beg you pardon if it's wrong channel for this request, I was having this error in Step Nine of https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html : "Error: No connection type provided, probably because the connection profile has no 'x-type' property defined."
I've found a small difference in Step Three: Building connection profiles for Org1
{
"name": "byfn-network-org1-only",
"type": "hlfv1",
"mspID": "Org1MSP",
"peers": [
with:
https://hyperledger.github.io/composer/next-unstable/tutorials/deploy-to-fabric-single-org
Step Three: Building a connection profile
point 2
{
"name": "fabric-network",
"x-type": "hlfv1",
"version": "1.0.0",
It is right ? it can be simply a case of replacing type with x-type in connection profile ?
@dpadev if you are using composer 0.17.3 or 0.17.4 and fabric 1.1-alpha then you need to be working with the `next` documentation at https://hyperledger.github.io/composer/next and following the tutorials there.
@davidkel ok, so I was mixing different tutorial versions. Thank you for pointing to it.
[ ](https://chat.hyperledger.org/channel/composer?msg=EdFGC2hg2pkZeR6i4) @SudheerKaspa - you can use regular expressions to validate a string field in your model ` o String description regex =/^[A-z][A-z]{2}/ ` or a `range` for numeric values. As described here:
https://hyperledger.github.io/composer/reference/cto_language.html
[ ](https://chat.hyperledger.org/channel/composer?msg=T8yPhCigCCQHjwm6Q) @Luke_Chen - are you trying to 'ping' with the PeerAdmin card rather than the admin@tutorial-network card? Try the command `composer card list -n admin@tutorial-network` and repeat with the card PeerAdmin@Fabric-Network and if the previous steps in the tutorial went OK then you should see that the cards are different and only one has a Business Network specified. The following text describes the 2 cards:
The PeerAdmin card has 2 roles in our dev fabric server setup. It has the authority to install chaincode onto the peer and it has the authority to instantiate chaincode onto the channel. It's name 'PeerAdmin' is a little confusing. Also in a real world scenario it's highly unlikely you would have a AdminCard for each Peer. What is more likely is you would have a PeerAdmin card for each organisation so you can install chaincode on all Peers in that organisaton. There would then be a separate ChannelAdmin card so that within the Consortium the Composer business network can be started.
The Network Admin card is a card that provides access to the deployed business network. The default is that the credentials you supply either by -A/-S or -A/-C when you deploy or start a business network is then bound to in instance of the inbuilt NetworkAdmin Participant type with a name usually the same as that specified in the -A part. To access a business network you have to use an identity that is mapped to a participant
[ ](https://chat.hyperledger.org/channel/composer?msg=T8yPhCigCCQHjwm6Q) @Luke_Chen did you install the runtime on the peer and `composer network start` the business network per the tutorial? Did you successfully import the admin card?
I was building the network at fabric level. Following this tutorial http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html I have made changes in the following files and added 2 more peers in organisation1 only.
configtx.yaml
crypto-config.yaml
docker-compose-cli.yaml
docker-compose-couch.yaml
docker-compose-e2e.yaml
docker-compose-e2e-template.yaml
docker-compose-base.yaml
When im firing ./byfn.sh -m up command
Its getting stuck at this step. Its not even showing any error.
Im trying to add 2 more peers in first organisation. Is this the correct way? Am I doing something wrong?
I was building the network at fabric level. Following this tutorial http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html I have made changes in the following files and added 2 more peers in organisation1 only.
configtx.yaml
crypto-config.yaml
docker-compose-cli.yaml
docker-compose-couch.yaml
docker-compose-e2e.yaml
docker-compose-e2e-template.yaml
docker-compose-base.yaml
When im firing ./byfn.sh -m up command
Its getting stuck at this step. Its not even showing any error.
Im trying to add 2 more peers in first organisation. whats going wrong?
I was building the network at fabric level. Following this tutorial http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html I have made changes in the following files and added 2 more peers in organisation1 only.
configtx.yaml
crypto-config.yaml
docker-compose-cli.yaml
docker-compose-couch.yaml
docker-compose-e2e.yaml
docker-compose-e2e-template.yaml
docker-compose-base.yaml
When im firing ./byfn.sh -m up command
Its getting stuck at this step. Its not even showing any error.
Im trying to add 2 more peers in first organisation. whats going wrong?
a.png
a.png
[ ](https://chat.hyperledger.org/channel/composer?msg=3frP6itb7vBXSWyi7) @Pranoti - maybe you also need to edit the file scripts/script.sh - but we use this channel for Composer questions and discussions - please can you ask this in the #fabric channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=MuiuCNC7cntbN5oPt) @rthatcher Okay. Thanks! yup I'll post it there..
[ ](https://chat.hyperledger.org/channel/composer?msg=rNYEyyoNFDpP6xDqL) @virup - on the Test tab when you look at the list of SampleAsset - is 5132 visible? If you change the properties of the asset by adding a new field, (or by restricting a field with regex or a value range) then previously created assets can't be seen. If you need to add a new field to an existing asset you can use 'optional' in which case the existing data can be seen.
[ ](https://chat.hyperledger.org/channel/composer?msg=L26Kh6MsCumchx9pv) @gytaco - I think this tutorial illustrates what you are asking for:
https://hyperledger.github.io/composer/next/tutorials/invoke-composer-network
This is new functionality added to v0.17.4 which is the 'next' release of Composer which requires Fabric 1.1-Alpha. Unless you have specifically installed 'next', then you will probably be running Composer 'latest' v0.16.3.
https://github.com/hyperledger/composer/releases/tag/v0.17.4
Has joined the channel.
@rthatcher actually I am working on interating hyperledger/cello with hyperledger/composer, I noticed that Hyperledger has three composer relative images in dockerhub, there are composer-cli, composer-playground and composer-rest-api.
what are composer-cli and composer-cli used for ? can I just add composer-playground images to Cello project?
@rthatcher actually I am working on interating hyperledger/cello with hyperledger/composer, I noticed that Hyperledger has three composer relative images in dockerhub, there are composer-cli, composer-playground and composer-rest-api.
what are composer-cli and composer-cli used for ?
@rthatcher actually I am working on interating hyperledger/cello with hyperledger/composer, I noticed that Hyperledger has three composer relative images in dockerhub, there are composer-cli, composer-playground and composer-rest-api.
what are composer-cli and composer-rest-apiused for ?
@rthatcher actually I am working on interating hyperledger/cello with hyperledger/composer, I noticed that Hyperledger has three composer relative images in dockerhub, there are composer-cli, composer-playground and composer-rest-api.
what are composer-cli and composer-rest-api used for ?
composer-cli is equiped with composer command tools, and I right?
composer-cli is equiped with composer command tools, am I right?
As far as my concerned composer-cli is equiped with composer command tools, we can use composer-cli to generate composer config files, like cards and bussniess network .etc
If so, we can use composer-cli to generate composer config files, like cards and bussniess network .etc
Am I right ?
Has joined the channel.
I have a question on deploying rest server. The documentation https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html has instructions for configuring docker images. I wanted to find out if anyone has tried this configuration with Kube. I would really appreciate if you could share the configuration or share your experience. Also can we use cloudant for the data store or does it has to be couchdb or mongodb.
[ ](https://chat.hyperledger.org/channel/composer?msg=T4Gma3o9yvLuMDyzM) @Luke_Chen those images (REST server and Composer CLI) allow you to extend from / deploy instances in Cloud environments (for example) such as when using Cloud based deployment services. See more discussion on the REST server deployment and uses here -> https://hyperledger.github.io/composer/integrating/deploying-the-rest-server
@mahoney1 thanks
Is there anyone here who's having as much issues with ACL files as I am? I asked a question on it yesterday and since i didn't get any answers i tried my best to get it to work myself, spend the entire day on a very basic ACL file and i just can't get it to work.
working in playground btw
[ ](https://chat.hyperledger.org/channel/composer?msg=n35stFHMCj3x6nbnf) @gauthampamu This link on K8s may help you -> https://ibm-blockchain.github.io/reference/ and Fabric supports LevelDB and CouchDB
Has joined the channel.
@hendiflex - this tutorial (which can be done in online playground) should give you insight into what you're trying to do. - https://hyperledger.github.io/composer/next/tutorials/acl-trading - if you want to look at the use of `getIdentifier()` it might help you (its doing something similar to what you want to do).
@hendiflex - this tutorial (which can be done in online playground) should give you insight into what you're trying to do. - https://hyperledger.github.io/composer/next/tutorials/acl-trading - if you want to look at the use of `getIdentifier()` it might help you (its doing something similar to what you want to do). - by default a participant should be 'denied' unless granted authority to work with a resource (eg. an asset instance) - in access control terms. Feel free to post your Model file / ACL too if it helps, cheers
[ ](https://chat.hyperledger.org/channel/composer?msg=gn6am5wJttntB29vs) @mahoney1 yea, i followed that tutorial and that does work. I slowely built in top of that business network to try to get it to work. But i just found out that the problem is in my js transaction processer functions file. when i delete that, i get the desired functionality of acl
@mahoney1 yea, i followed that tutorial and that does work. I slowely built on top of that business network to try to get it to work. But i just found out that the problem is in my js transaction processer functions file. when i delete that, i get the desired functionality of acl
Let me rephrase, because that was terrible :sweat_smile: So I am using the online playground. When I delete my js Script file, i get the desired functionality of the ACL file, when i put it back it breaks again.
[ ](https://chat.hyperledger.org/channel/composer?msg=TrEiXvrAK8xTiAD2i) oooooooh, i figured it out. In my script file i stored getFactory() in a variable outside of the functions. When i put this inside the function it fixed the issue. Thanks for rubber ducking for me guys :kissing_heart:
@hendiflex no worries :-)
Has joined the channel.
Has joined the channel.
Hi. I've got a question about "Queries" with Composer. Is this the right place to ask ? Cheers.
[ ](https://chat.hyperledger.org/channel/composer?msg=G2eSCbmX4corx8SzL) @mahoney1 @hendiflex Thanks for sending the link. My question is not related to the couchd support of fabric, it is regarding the database support for the rest server for multi user support. In the documentation, it suggests mongo and couchdb but I wanted to find out whether composer rest server can support other databases like cloudant. Also how we can configure the kube configuration to use mongo or couchdb for the rest server.
[ ](https://chat.hyperledger.org/channel/composer?msg=GwK7W7GanNPF7Qrme) @davidkel I'm using 1.1-alpha and following procedures in https://hyperledger.github.io/composer/next/installing/development-tools.html
I'm going to attempt to attach some peer log info that i don't understand, but might be related?
fabric-alpha.txt
@gauthampamu the info is in the deploy link I sent you -> https://hyperledger.github.io/composer/integrating/deploying-the-rest-server - persistence is to a LoopBack data source, using a LoopBack connector. You should be able to use any LoopBack connector, this may also help -> https://www.ibm.com/blogs/bluemix/2015/09/getting-started-node-js-loopback-framework-ibm-cloudant/ sorry I can't help you on kube config, others may be able to help
[ ](https://chat.hyperledger.org/channel/composer?msg=HDSBMP5Qcyig8eHDT) @aparolini yes it is
Cool.
I sucessfuly used queries for simple cases, like the one in the tutorials. But when I try match referenced object fields, my queries keep returning nothing.
Exemple: I want all Exams that refere to a patient called "joe"
Here is my model:
Patient:
```
asset Patient identified by id {
o String id
o String clinicalPid
o String firstName
o String lastName
}
```
Exam:
```
asset Exam identified by id {
o String id
o ExamType type
o BodyPart bodyPart
o String protocol
o Long radiationValue
o DateTime examDate
--> Clinic clinic
--> Patient patient
}
```
And My query:
```
query selectExamByClinicPId {
description: "Select all Exam using the native clinical patient Id"
statement:
SELECT ch.hcuge.radiopassport.Exam
WHERE ( patient.firstName == _$patientName)
}
```
Cool.
I sucessfuly used queries for simple cases, like the one in the tutorials. But when I try match referenced object fields, my queries keep returning nothing.
Exemple: I want all Exams that refere to a patient called "joe"
Here is my model:
Patient:
```
asset Patient identified by id {
o String id
o String clinicalPid
o String firstName
o String lastName
}
```
Exam:
```
asset Exam identified by id {
o String id
o ExamType type
o BodyPart bodyPart
o String protocol
o Long radiationValue
o DateTime examDate
--> Clinic clinic
--> Patient patient
}
```
And My query:
```
query selectExamByName{
description: "Select all Exam using the name"
statement:
SELECT ch.hcuge.radiopassport.Exam
WHERE ( patient.firstName == _$patientName)
}
```
Cool.
I sucessfuly used queries for simple cases, like the one in the tutorials. But when I try match referenced object fields, my queries keep returning nothing.
Exemple: I want all Exams that refere to a patient called "joe"
Here is my model:
Patient:
```
asset Patient identified by id {
o String id
o String clinicalPid
o String firstName
o String lastName
}
```
Exam:
```
asset Exam identified by id {
o String id
o ExamType type
o BodyPart bodyPart
o String protocol
o Long radiationValue
o DateTime examDate
--> Clinic clinic
--> Patient patient
}
```
And My query:
```
query selectExamByPatientName{
description: "Select all Exam using the patient name"
statement:
SELECT ch.hcuge.radiopassport.Exam
WHERE ( patient.firstName == _$patientName)
}
```
Hi, All, suppose I run this code promise =assetRegistry.add(...) in chaincode.
when the promise is resolved, is the asset added to proposalResponse, or it is writtern to ledger?
@aparolini can't do that in queries right now, its not a relational database :-) (CouchDB) - so could only suggest the Filters/Resolve route eg using REST APIs eg. `example `{"where":{"firstName":"$name"}, "include":"resolve"}` against Patient and would resolve the related records in Exam found for those with that first name etc.
@aparolini can't do that in queries right now, its not a relational database :-) (CouchDB) - so could only suggest the Filters/Resolve route eg using REST APIs eg. `example ` {"where":{"firstName":"$name"}, "include":"resolve"} 1 against Patient and would resolve the related records in Exam found for those with that first name etc.
@aparolini can't do that in queries right now, its not a relational database :-) (CouchDB) - so could only suggest the Filters/Resolve route eg using REST APIs eg. `example ``` {"where":{"firstName":"$name"}, "include":"resolve"} ``` against Patient and would resolve the related records in Exam found for those with that first name etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=mDfqLCvmBDowg5Tt8) @jasonZhang see https://hyperledger.github.io/composer/jsdoc/module-composer-runtime.AssetRegistry.html#add__anchor yes. The promise is resolved when the asset has been added to this asset registry and Composer will await that.. If the asset cannot be added to this
asset registry, or if the asset already exists in the asset registry, then the promise will be rejected with an error that describes the problem
[ ](https://chat.hyperledger.org/channel/composer?msg=mDfqLCvmBDowg5Tt8) @jasonZhang see https://hyperledger.github.io/composer/jsdoc/module-composer-runtime.AssetRegistry.html#add__anchor yes to the ledger if returns successfully. The promise is resolved when the asset has been added to this asset registry and Composer will await that.. If the asset cannot be added to this
asset registry, or if the asset already exists in the asset registry, then the promise will be rejected with an error that describes the problem
@mahoney1 I can run this code at client app and chaincode.
Suppose I run this chain code, chaincode only endorses the Tx
Do you mean it is endorsed, passed to orderer, and committed to ledger?
If this is the case, it means assetRegister.add(...) also act as client to business network.
since it triggers a full transaction cycle(propose, endorse, package to block, commit to ledger) inside chaincode.
@mahoney1 any thoughts?
@jasonZhang so Imagine a fabric network (which Composer consumes, as the underlying blockchain network), which has multiple organisations involved (an Org can have 1 or more peers). When you (with the client app) submit a transaction you will submit it to a set of those peers in the blockchain network and you will receive a set of responses back (but maybe not from all peers possibly). You (client app) collate all the responses you have, and then submit them to the orderer. Only if that collection of proposals passes the endorsement policy requirements, can it be considered for commital. Other factors can also stop it being committed for example, the proposal content differs between peers. So yes, endorsed and committed successfully - all of the other terms you write about, I suggest you see what happens at a Fabric level in the transaction flow and what is returned to the client http://hyperledger-fabric.readthedocs.io/en/release/txflow.html ..
Here is my thought when asset is added to assetRegistry, asset is committed to ledger.
But how can you commit asset to ledger inside chaincode?
It could be done at client side, but could be very difficult at chaincode.
To make sure asset is committed to ledger, one need 1. submit Tx, 2) listens block event to make sure it is marked for valid in block
You can issue emit a Composer event (from your code to your client) at any point in your transaction logic (ie which runs as part of the deployed smart contract, in its own composer business network container), - but that Composer event will not actually be emitted, until the transaction in its entirety is successfully committed [by the peer(s)]. As mentioned (as you refer to blocks), Fabric has ways of informing you of its own events, if t block confirmation is what you want to check for -> http://hyperledger-fabric.readthedocs.io/en/release/Fabric-FAQ.html
You can issue emit a Composer event (from your code subscribed to by your client) at any point in your transaction logic (ie which runs as part of the deployed smart contract, in its own composer business network container), - but that Composer event will not actually be emitted, until the transaction in its entirety is successfully committed [by the peer(s)]. As mentioned (as you refer to blocks), Fabric has ways of informing you of its own events, if t block confirmation is what you want to check for -> http://hyperledger-fabric.readthedocs.io/en/release/Fabric-FAQ.html
Has joined the channel.
I upgraded Docker and lost all my work. I am trying to redeploy hyperledger composer and there is an issue getting couchdb to work, here is the error message, any suggestions are appreciated when I run ./startFabric.sh - {"Kernel pid terminated",application_controller,"{application_start_failure,couch,{{shutdown,{failed_to_start_child,couch_primary_services,{shutdown,{failed_to_start_child,collation_driver,\"/usr/lib/x86_64-linux-gnu/libicudata.so.55: invalid ELF header\"}}}},{couch_app,start,[normal,[]]}}}"}
@mahoney1 I just upgraded HL to 1.1-alpha and moved composer, et al to @next. Now when following the one org tutorial, I'm getting an error when I run the card import - please note I've updated the connection profile to read `"type": hlfv11"` but it fails with the error with hlfv1 - help?
```composer card import -f PeerAdmin@fabric-network.card
Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
Command failed
```
@mahoney1 I just upgraded fabric to 1.1-alpha and moved composer, et al to @next. Now when following the one org tutorial, I'm getting an error when I run the card import - please note I've updated the connection profile to read `"type": hlfv11"` but it fails with the error with hlfv1 - help?
```composer card import -f PeerAdmin@fabric-network.card
Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
Command failed
```
@mahoney1 I just upgraded fabric to 1.1-alpha and moved composer, et al to @next. Now when following the one org tutorial, I'm getting an error when I run the card import - please note I've updated the connection profile to read `"type": hlfv11"` but it fails with the same error with hlfv1 - help?
```composer card import -f PeerAdmin@fabric-network.card
Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=Z4NGvZEnn7cRDJjri) @CT123 see here -> https://stackoverflow.com/questions/48694060/unable-to-create-peeradmincard - and your "type" is definitely still `hlfv1` not `hlfv11` - as shown here FYI in the 'next' tutorial https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=EggKX4wyGp3xrmhbe) @pdavis39 I would definitely from the `fabric-tools` directory run a `teardownFabric.sh` or even `teardownAllDocker.sh`, if you want to remove old Fabric images from the docker repository - then do a `docker ps -a` and see the cleaned up env is OK before starting to install your new dev environment per https://hyperledger.github.io/composer/installing/development-tools.html (if its 0.16.x version of Composer you're after) - hopefully you're not using 'sudo' for installs as that can cause similar CouchDB errors from a quick look on causes of failures.
@mahoney1 . Thanks. I will do some test to test the event flow
Has joined the channel.
Is there any documentation providing information on available funtionality to query off-chain data to pull variable (binary, or noon-deterministic) via an off-chain API?
[ ](https://chat.hyperledger.org/channel/composer?msg=QYA9yB25mZJ52Tt8q) @mahoney1 Thanks - I have removed the ~/.composer directory and also did a `composer card delete -n PeerAdmin@fabric-network` for good measure as well. Updated `connection.json` to reflect `hlfv1` as well. Still getting the error below. Thoughts?
@mahoney1 - thanks for the response. no I am not using sudo, This is running on a Mac with Mac Docker, I have tried variations of your suggestion, docker ps - a looks better, but couchdb still is not reachable and when I restart couchdb from docker I get the following error message [os_mon] memory supervisor port (memsup): Erlang has closed
[os_mon] cpu supervisor port (cpu_sup): Erlang has closed
{"Kernel pid terminated",application_controller,"{application_start_failure,couch,{{shutdown,{failed_to_start_child,couch_primary_services,{shutdown,{failed_to_start_child,collation_driver,\"/usr/lib/x86_64-linux-gnu/libicudata.so.55: invalid ELF header\"}}}},{couch_app,start,[normal,[]]}}}"}
/docker-entrypoint.sh: line 49: 12 User defined signal 2 su-exec couchdb "$@"
@pdavis39 I'm running in a mac environment as well. As @mahoney1 suggested, from the fabric-tools directory, run the following:
@pdavis39 I'm running in a mac environment as well. As @mahoney1 suggested, from the fabric-tools directory, run the following:
```./stopFabric.sh
./teardownFabric.sh
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
```
@pdavis39 I'm running in a mac environment as well. As @mahoney1 suggested, from the fabric-tools directory, run the following:
```./stopFabric.sh
./teardownFabric.sh
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
```
Then check that docker doesn't have any fabric-related containers running -- you can do this by using Kitematic.
Once it's clean, run `teardownAllDocker.sh`. Once complete run `./downloadFabric.sh` which should get you going with fabric again. Then move forward from where you were.
@pdavis39 I'm running in a mac environment as well. As @mahoney1 suggested, from the fabric-tools directory, run the following:
```./stopFabric.sh
./teardownFabric.sh
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
```
Then check that docker doesn't have any fabric-related containers running -- you can do this by using Kitematic.
Once it's clean, run `./teardownAllDocker.sh`. Once complete run `./downloadFabric.sh` which should get you going with fabric again. Then move forward from where you were.
@pdavis39 the other command you can use to see what's running in Docker is: `docker images | grep fabric` which should either come back with your current version or tell you nothing.
@CT123 your card is still a 0.16.x type card. when need to recreate the PeerAdmin card suitable for 0.17. When you run the createPeerAdminCard.sh ensure that you have exported FABRIC_VERSION=hlfv11 to ensure the card created is the correct one
@CT123 your card is still a 0.16.x type card. you need to recreate the PeerAdmin card suitable for 0.17. When you run the createPeerAdminCard.sh ensure that you have exported FABRIC_VERSION=hlfv11 to ensure the card created is the correct one
@CT123 your card is still a 0.16.x type card. you need to recreate the PeerAdmin card suitable for 0.17. When you run the createPeerAdminCard.sh ensure that you have exported FABRIC_VERSION=hlfv11 to ensure the card created is the correct one, but you need to ensure you don't have an old 0.16.x card in the card store otherwise the command will fail.
@davidkel Thanks - I did both - `printenv` shows `FABRIC_VERSION=hlfv11` -- is it possible there is something lingering elsewhere?
@CT123 how did you create the card ? if it is createPeerAdminCard.sh the card would have been called something different from the card you listed in your post.
@davidkel Just did a `./stopFabric.sh` then a `./startFabric.sh` and a `./createPeerAdminCard.sh`. This is the output:
```./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is set to 'hlfv11'
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.17.4
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Successfully imported business network card
Card file: /tmp/PeerAdmin@hlfv1.card
Card name: PeerAdmin@hlfv1
Command succeeded
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --name
Now you have a card called PeerAdmin@hlfv1 already imported into your card store
so that is the card you should use to perform install/start operations
Still generates this:
```composer card import -f PeerAdmin@fabric-network.card
Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
Command failed
```
@CT123 you are trying to import some card you have lying around. You already have a card imported that will work with our fabric dev server
@CT123 you are trying to import some card file you have lying around. You already have a card imported that will work with our fabric dev server
That card is called PeerAdmin@hlfv1
@davidkel Ok, so with the new distro, I should skip step 5 on the one org tutorial -- proceed to the `composer runtime install -c PeerAdmin@fabric-network -n tutorial-network`?
If you are following the tutorial that's different. The tutorial is showing you the ins and outs of connection profiles and creating cards. In our dev server packages all that has been done for you as a means to get you started. In that case the most likely issue is that you are still following the stable tutorial while trying to use 0.17.4. You need to work with the docs at https://hyperledger.github.io/composer/next if you want to work with the next release (currently 0.17.4)
You will find that the connection profile definition is now completely different to what it was
@davidkel Ok, thanks that helps a lot! Will work from there and update our docs. Thank you again
Hi! I am getting the following error on running the command to build the first network
export CHANNEL_NAME=mychannel && ../bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $CHANNEL_NAME
2018-02-10 06:22:16.061 UTC [common/tools/configtxgen] main -> CRIT 003 Error on outputChannelCreateTx: config update generation failure: could not parse application to application group: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")
Can anyone help regarding this!!!
Hello. I would like to add one algorithm in transaction processor function (TP) which has matrix multiplication (or normalization, difference, square root, summation etc). Would it be possible to do this in composer TP?
Has joined the channel.
Hey all I am a little bit confused with the multi organisation setup tutorial. I aim is to deploy a multiorganisation fabric network and deploy a composer business network on that. However, lets say that I follow the tutorial in the documentation and deploy the multi org fabric network... How does this integrate with the composer code since in the code I am explicitly specifying the namespace of an organisation to do any kind of operation?? So how can I use the same composer bna code for both organisations??
[ ](https://chat.hyperledger.org/channel/composer?msg=oJE6spmxH8nh2XXdk) @gnpranoy at a glance sounds like something went wrong with your channel config - see here or ask in #fabric channel -> http://hyperledger-fabric.readthedocs.io/en/release/configtxgen.html you should have got an INFO 003 message but instead you get CRIT 003 - you can also inspect your existing configuration (from configtxgen) FYI
[ ](https://chat.hyperledger.org/channel/composer?msg=khryktLLxxaCiwxPt) @AkshayJindal the key with TPs (as a part of the whole smart contract deployed) is to achieve determinism in your code (on all the nodes). So matrix multiplication of
(say) two square matrices A and B - let the resulting matrix be C - would have to be deterministic (assumption here is its based on substituted values passed in or determined in the TP function. Its the same with any smart contract really.
[ ](https://chat.hyperledger.org/channel/composer?msg=WqtX6a6RxxnFMZgK6) @andreasp1994 hi there you are deploying a business network with a namespace that reflects the business network / smart contract agreed by the parties to the blockchain network. Model namespace is org.acme.trading (sample). The model is part of the smart contract deployed to the blockchain channel (and therefore ledger) shared by all Orgs on that channel / blockchain network (Org1, Org2).
[ ](https://chat.hyperledger.org/channel/composer?msg=WqtX6a6RxxnFMZgK6) @andreasp1994 hi there you are deploying a business network with a namespace that reflects the business network / smart contract agreed by the parties to the blockchain network. Model namespace is org.acme.trading (sample). The model is part of the smart contract deployed to the blockchain channel (and therefore ledger) shared by all Orgs on that channel / blockchain network (Org1, Org2). Finally, identities (issued for users in either Org) are mapped to participants on the composer business network and those participants connect to the business network (in order to transact etc) via business network cards (they know about the vital Fabric nodes and in particular the peers that will ultimately endorse transactions etc etc)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Hrjef4f2mX67ngQMb) @mahoney1 So lets say i have two orgs, org1.acme.trading and org2.acme.trading they can both communicate and interact in the same network with model namespace org.acme.trading ?? Or did I get it wrong?
Thanks @mahoney1 and @CT123 I have deployed my fabric based on your feedback. moved on to a new problem with composer-rest-server -composer-rest-server -c admin@tethering -n never -w true
The connection to the network was successfully tested: tethering
version: 0.16.3
participant: org.hyperledger.composer.system.NetworkAdmin#admin
Command succeeded
Pauls-MBP:dist pauldavis$ composer-rest-server -c admin@tethering -n never -w true
A datasource has a name of "Memory" while a name of "db" is specified in its settings. Please adjust your configuration so these names match. "Memory" will be assigned as the actual datasource name.
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Exception: Error: Cannot override built-in "file" type.
Error: Cannot override built-in "file" type.
at TypeRegistry.registerType (/Users/pauldavis/.nvm/versions/node/v6.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/lib/type-registry.js:36:11)
at TypeRegistry.registerObjectType (/Users/pauldavis/.nvm/versions/node/v6.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/lib/type-registry.js:79:8)
at RemoteObjects.defineObjectType (/Users/pauldavis/.nvm/versions/node/v6.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/lib/remote-objects.js:824:22)
at EventEmitter.app.model (/Users/pauldavis/.nvm/versions/node/v6.11.3/lib/node_modules/composer-rest-server/node_modules/loopback/lib/application.js:141:20)
at modelSchemas.forEach (/Users/pauldavis/.nvm/versions/node/v6.11.3/lib/node_modules/composer-rest-server/server/boot/composer-discovery.js:781:17)
at Array.forEach (native)
at Promise.resolve.then.then.then (/Users/pauldavis/.nvm/versions/node/v6.11.3/lib/node_modules/composer-rest-server/server/boot/composer-discovery.js:769:22)
Hello, I got an error when I try in composer playground ReferenceError: assetRegistry is not defined
When I try to execute a transaction.
{
var factory = getFactory(tntObj);
var Namespace = "org.acme.payments";
var property = tntObj.propAddress;
var addTntEvent = factory.newEvent(Namespace, 'Event1');
addTntEvent.email = tntObj.email;
return getAssetRegistry('org.acme.payrent.Property')
.then(function(propertyRegistry){
return assetRegistry.update(property); });
}
above code is my logic function
tntObj is the parameter.
getAssetRegistry is returning null and the error message says assetRegistry is not defined
figured out my composer-rest-server issue, it was changing -n to always :-)
OK, really silly question here.... when I first started working through the tutorials last year, the chaincode in the tutorials was all written in go. Now it looks like all the tutorials are in javascript. It also doesn't seem to let me create a chaincode file in go using the composer playground.
composer uses javascript for implementing transaction functionality and it creates the chaincode behind the scenes
Composer is an abstraction layer to fabric
OK that makes more sense. It's sometimes hard to sort out all the tutorials, versions, frameworks, etc...
hey all, I would like to ask a question about the rest server. As we know the multiuser mode of the rest server is configured with the following env variable ```export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "clientID",
"clientSecret": "Secret",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "http://localhost:4300/home/auth",
"failureRedirect": "/"
}
}'```
Now, imagine the scenario that i have 2 clients on the same machine that is running the rest server and I want to authenticate with two different identities for each one. Since in the success redirect I have to put an absolute path ... how am i supposed to redirect to the correct url for each one of the clients if they are running in different ports????
Has joined the channel.
Has joined the channel.
Has joined the channel.
Guys,
How does a participant login to a business network?
do we upon registration, make him download his card to be using it and upon login, he uploads the card?
or is there a way using username and password?
In the tutorial, the steps to run the createPeerAdmin.sh script never work. The command returns OK but there is never a PeerAdmin user in the composer playground afterwards.
frankblau@Franks-MacBook-Pro fabric-tools $ ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
ok, I googled and found a link about updating composer version and that seems to fix it :)
@andreasp1994 correct - the orgs will have configured their Fabric networks to be aware of other members on the blockchain network. Their conposer connection profiles (inside business network cards, issued by each org, that a participant from whatever org would use) allows them (ie if granted that access) interact with the same business network on the ledger (resource instances for which (assets, participants etc) are prefixed with model qualifier org.acme.trading in this example
[ ](https://chat.hyperledger.org/channel/composer?msg=W3BhegZisMGep3x97) @mostafa.elsayyad the participant 'connects' to a business network,- using a business network card, part of which contain the identity's credentials (that identity is mapped to a participant in Composer). See more incl examples of creation in Playground (can be via CLI or APIs too fyi) here -> https://hyperledger.github.io/composer/playground/id-cards-playground - an admin in your org would likely create the BN cards and issue them (distributed through a safe method) to application users that need to access the business network / ledger.(via the card). The identities would be enrolled first to download their certificates. Then (depending on org security requirements) authenticate the end users before accessing the card to import into their wallet (to then connect to the B N).
[ ](https://chat.hyperledger.org/channel/composer?msg=Dz7R6fmXeb4yWT6Dz) @NAWAZUDDIN552 typical usage would be ``` // Get the vehicle asset registry.
return getAssetRegistry('org.acme.Vehicle')
.then(function (vehicleAssetRegistry) {
// Get the factory for creating new asset instances.
var factory = getFactory();
// Create the vehicle.
var vehicle = factory.newResource('org.acme', 'Vehicle', 'VEHICLE_1');
vehicle.colour = 'BLUE';
// Add the vehicle to the vehicle asset registry.
return vehicleAssetRegistry.add(vehicle);
});``` - also - looks like your `getAssetRegistry` is looking at a registry that doesn't match your earlier Namespace assignment of `org.acme.payments`
@andreasp1994 see here -> https://stackoverflow.com/questions/46213575/how-to-authentication-multi-user each client will import their own business network card -> The wallet is private to that client, and is not accessible to other clients. When a client makes a request to the REST server, a Blockchain identity in the clients wallet is used to digitally sign all transactions made by that client. If each successfully authenticates at the authPath they are redirected to the REST server. See also here -> https://hyperledger.github.io/composer/integrating/enabling-multiuser and here -> https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
Hey, the CA part of my connection.json as follow `
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca_org1",
"cert": "tmp/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem",
"hostnameOverride": "ca.org1.example.com"
},
`
Hey, the CA part of my connection.json as follow `
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca_org1",
"cert": "tmp/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem",
"hostnameOverride": "ca.org1.example.com"
},
`
Hey, the CA part of my connection.json as follow
`"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca_org1",
"cert": "tmp/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem",
"hostnameOverride": "ca.org1.example.com"
},`
Hey, the CA part of my connection.json as follow
`"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca_org1",
"cert": "tmp/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem",
"hostnameOverride": "ca.org1.example.com"
},`
Hey, the CA part of my connection.json as follow
`"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca_org1",
"cert": "tmp/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem",
"hostnameOverride": "ca.org1.example.com"
},`
Hey, the CA part of my connection.json as follow
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca_org1",
"cert": "tmp/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem",
"hostnameOverride": "ca.org1.example.com"
}
but when I try to connect the businessnetwork, the play ground raised the error `Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca_org1' does not exist"}]]`
Hey, the CA part of my connection.json as follow
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca_org1",
"cert": "tmp/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem",
"hostnameOverride": "ca.org1.example.com"
}
but when I try to connect the businessnetwork, the play ground raised the error
`Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca_org1' does not exist"}]]`
how could I fix this ?
Hey, the CA part of my connection.json is as follow
"ca": {
"url": "http://ca.org1.example.com:7054",
"name": "ca_org1",
"cert": "tmp/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem",
"hostnameOverride": "ca.org1.example.com"
}
but when I try to connect the businessnetwork, the play ground raised the error
`Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'ca_org1' does not exist"}]]`
how could I fix this ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ASBmzNqLKz2HAZuPQ) @mahoney1 Thanks for your answer you are really helpful. But I managed to implement the multiuser authentication so now I can have multiple users authenticated with the rest server but when authentication succeeds it redirects to the rest server and then I manually need to go to each clients url. So my question is: Is there a way to make the rest server to redirect to a relative user of the referrer rather than an absolute url ?? Because one of my clients runs on 4200 port and the other on 4300.
@Luke_Chen is "ca_org1" a name you have defined when you configured your fabric-ca ?
@Luke_Chen is "ca_org1" a name you have defined when you configured your fabric-ca ? The error says the fabric-ca server doesn't have a ca with that name defined in it.
@Luke_Chen Also note that cert and hostname override are not applicable to the ca definition
@davidkel no, remove `name` key ?
@Luke_Chen could try, never tried with a fabric-ca that has no name associated with it so it may still be a problem.
@davidkel can't remove, anothere error `Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Error: Invalid results returned ::FORBIDDEN`
@davidkel can't remove, anothere error
`Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Error: Invalid results returned ::FORBIDDEN`
what environment varible should I used to config fabric-ca name ?
what environment varible should I used to config fabric-ca's name ?
@Luke_Chen That might not be a response from the CA, check your CA logs first, that might be the orderer
ok
Has joined the channel.
Running the tutorial for playground line by line. It says to not touch the access control, but there is an error flag: Error found!
t: Failed to find namespace org.acme.sample.*
Hello, everyone.
Anyone has an idea why my simple named queries are not working over composer-reset-server?
It returns an error: "read on closed body response".
Any idea why this might be happening?
I am trying to find an example to listen channel event. Here is the code in landregistry: https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/lib/landRegistry.js
That listen method is not implemented, isn't it?
I couldn't make it for me either.
Has joined the channel.
Hello Everyone,
I've a fabric business network deployed on my local system. In my BNA I've defined some transactions and would like to write fire those transactions from a node js application. But, I'm unable to find any function in the documentation that would let me do so. Could anyone help me out on this?
Any input regarding this would be highly valuable. *I'm able to programmatically create/read participants and assets.
@sameersubudhi
let resource = serializer.fromJSON({
'$class': 'net.biz.digitalPropertyNetwork.RegisterPropertyForSale',
'title': 'LID:1148'
});
return this.bizNetworkConnection.submitTransaction(resource);
through official documentation; you just simply create the resource.
I think you can also use the factory for this.
@MuhammadSalah Thank you very much. I'll try this out.
No problem, good luck
Could you share the link to the documentation?
of course
https://hyperledger.github.io/composer/applications/node
at the bottom
Thanks.....I'd seen the documentation it but somehow missed it!!
they should have gave it bigger space
and like a better example really..
that part is poor ye
:)
@MuhammadSalah Any example for listen chanel event?
business event?
you want to listen to an event?
yes
easiest way to do it
use wscat
@sameersubudhi : https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/lib/landRegistry.js
npm install -g wscat
wscat library?
does it require composer restful?
@MuhammadSalah did you try the approach in landRegistry approach?
checking it
I do similar stuff yes
but no annotations
just plain composer-client
I see the interesting part, the listen function
@jasonZhang Thanks!! I already have defined the transactions in my BNA. Just need to invoke them from my node js app using a REST call. I'm trying what @MuhammadSalah had shared.
yes, I tried listen function. I couldn't make it work.
I would just catch it
through websocket
This example never test listen function.
it's just ws
websocket should require composer-restful.
if you have no rest server
I think you have to go to that listen function then.
or grpc level
I have not done anything similar honestly.
@MuhammadSalah Thanks. Will look into this.
no problem
@MuhammadSalah Thank you again. That worked for me :)
welcome :^
Hi everyone, I am following the composer multi-organization tutorial with my friend. we are following the steps on two separate EC2 AWS machines, but we failed at the last step.
Here's the error message for org1:
Error: Peer has rejected transaction '6e5edfc482e87fdeee435546ebef622da2321eed9185f17d16164be27f331e94' with code ENDORSEMENT_POLICY_FAILURE
and here's the error message for org 2:
Error: could not find chaincode with name 'tutorial-network' - make sure the chaincode tutorial-network has been successfully instantiated and try again
Error: Card not found: bob@tutorial-networkError
anyone can help with this?
or what could be the potential issues? we are strictly following the tutorial
I tried to deploy using the composer cli too using, `composer network deploy --archiveFile /mnt/lab4.bna -A NetAdmin -c PeerAdmin@hlfv1 -S PASSWORD_FOR_NETADMIN`
however, the card that was created doesn't contain the private-key, but only enrollment secret. This is a problem because the credential was created with a 1 time enrollment limit. Is there anyway to get around this?
I tried to deploy using the composer cli too using, `composer network deploy --archiveFile mybna.bna -A NetAdmin -c PeerAdmin@hlfv1 -S PASSWORD_FOR_NETADMIN`
however, the card that was created doesn't contain the private-key, but only enrollment secret. This is a problem because the credential was created with a 1 time enrollment limit. Is there anyway to get around this?
I tried to deploy using the composer cli too using, `composer network deploy --archiveFile mybna.bna -A NetAdmin -c PeerAdmin@hlfv1 -S PASSWORD_FOR_NETADMIN`
however, the card that was created doesn't contain the private-key, but only enrollment secret. This is a problem because the credential for `NetAdmin` was created with a 1 time enrollment limit. Is there anyway to get around this?
hi everyone,
I tried to deploy using the composer cli too using, `composer network deploy --archiveFile mybna.bna -A NetAdmin -c PeerAdmin@hlfv1 -S PASSWORD_FOR_NETADMIN`
however, the card that was created doesn't contain the private-key, but only enrollment secret. This is a problem because the credential for `NetAdmin` was created with a 1 time enrollment limit. Is there anyway to get around this?
Wondering if someone can help with this :grinning:
`composer-playground` seems to be have created the card properly in the credential wallet, compared to the CLI tool?
`0 application online, exiting
Exiting PM2
`
I get this error while using docker run command to start a playground container
`0 application online, exiting
Exiting PM2
`
I get this error while using docker run command to start a playground container
`0 application online, exiting Exiting PM2`
I get this error while using docker run command to start a playground container
`0 application online, exiting Exiting PM2`
how can I avoid this situation?
how could I avoid this situation?
How we can write complex queries in hyperledger composer qry files.. how to join two tables? is it possible or not??
Whoes identiy should I use to fill this form? I got some errors from the CA `Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]`
Whoes identiy should I use to fill this form? I got some errors from the CA
`Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]`
I used the admin user
here comes the logs of CA `2018/02/12 05:59:14 [DEBUG] Directing traffic to CA ca.org1.example.com
2018/02/12 05:59:14 [DEBUG] DB: Getting identity admin
2018/02/12 05:59:14 [DEBUG] DB: Login user admin with max enrollments of -1 and state of 0
2018/02/12 05:59:14 [DEBUG] Failed to login 'admin': Password mismatch: crypto/bcrypt: hashedPassword is not the hash of the given password`
here comes the logs of CA `2018/02/12 05:59:14 [DEBUG] Directing traffic to CA ca.org1.example.com
2018/02/12 05:59:14 [DEBUG] DB: Getting identity admin
2018/02/12 05:59:14 [DEBUG] DB: Login user admin with max enrollments of -1 and state of 0
2018/02/12 05:59:14 [DEBUG] Failed to login 'admin': Password mismatch: crypto/bcrypt: hashedPassword is not the hash of the given password`
here comes the logs of CA
```2018/02/12 05:59:14 [DEBUG] Directing traffic to CA ca.org1.example.com
2018/02/12 05:59:14 [DEBUG] DB: Getting identity admin
2018/02/12 05:59:14 [DEBUG] DB: Login user admin with max enrollments of -1 and state of 0
2018/02/12 05:59:14 [DEBUG] Failed to login 'admin': Password mismatch: crypto/bcrypt: hashedPassword is not the hash of the given password```
Clipboard - 2018年2月12日下午2点07分
Hello everyone!
Can anyone tell me, what will happen if we only install chaincode on peer and not instantiate it to the channel? What is the difference between two?
Thanks in advance..
Hello everyone!
Can anyone tell me, what will happen if we only install chaincode on peer and not instantiate it to the channel? What is the difference between two, installing and instantiating?
Thanks in advance..
how can i run composer-playground and composer-rest-server in the same time
@Pranoti Install operation will package chaincod to peer's file system, while instantiating will launch a container to run the chaincode, then the chaincode can interact with he leadger.
So if you just install chaincode without instantiating it, the chaincode will be stored in peer's file system, it won't have any interaction with the leadger.
[ ](https://chat.hyperledger.org/channel/composer?msg=2SXapMe26xmtaTPim) @Luke_Chen Try Using ID and Secret, enrollment id "Admin" and enrollment secret "adminpw" these are the default settings.
[ ](https://chat.hyperledger.org/channel/composer?msg=2SXapMe26xmtaTPim) @Luke_Chen Try Using ID and Secret, enrollment id "admin" and enrollment secret "adminpw" these are the default settings.
@Sneha ha thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=W4FqsqsK3GKWKC9CW) @AkramAlkhalil Okay and what will happen if we just joined the peer to the channel and not installed the chaincode on it.. How that peer will contribute in the network?
[ ](https://chat.hyperledger.org/channel/composer?msg=pWnbDjRYWBS6DoPQ2) @Luke_Chen Okay then what will happen if just join the peer to the channel and not installed any chaincode on it. What will be that peer's contribution to the network then?
@Pranoti the peer will record every accessible transactions happends in the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=89HfzFcHrhR9pFhnr) @Luke_Chen It will only record. So it will not be able to perform any trnsaction .. is it right?
yes
meanwhile you can't request the data throught that peer before it install the relative chaincode.
[ ](https://chat.hyperledger.org/channel/composer?msg=sthH2QoLWoB9tmiJv) @Luke_Chen Okay. And the peer on which we have installed chaincode but not yet instantiated can it perform any transaction?
chaincode is a interface to access the ledger.
install and instantiate is very different
Yes it is. I was just trying to differentiate these functionalities.. Got confused..
install is a process that package chaincode source code to peer's file system, instantiation is a process that bind a chaincode to a specify channel.
every chaincode should be only instantiated once
Okay Thank you very much @Luke_Chen :slight_smile:
After rebooting the machine the deployed network containers are no longer there on starting the fabric. What should I change in docker-compose.yml in order to persist the containers and the data?
[ ](https://chat.hyperledger.org/channel/composer?msg=nmvoR3XcF3DC32hc3) @Sneha - does this answer on Stack Overflow help?
https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
[ ](https://chat.hyperledger.org/channel/composer?msg=W4FqsqsK3GKWKC9CW) @AkramAlkhalil - the Playground and REST Server can both be run at the same time. Are you getting errors? If you make changes to the model and Update through Playground, remember that you need to restart the REST server so that it can discover the changes.
@rthatcher hi, I get this error "namespace already exists", probably because I use the same namespace in multiple .cto files.
I'd use different namespaces but I can't have same type hierarchy spread across different namespaces.
are these limitations permanently intended so?
@rthatcher hi, I get this error "namespace already exists", probably because I use the same namespace in multiple .cto files.
I'd use different namespaces but apparently, I can't have same type hierarchy spread across different namespaces.
are these limitations permanently intended so?
[ ](https://chat.hyperledger.org/channel/composer?msg=HjyAo3HnKsnXed6T9) @rthatcher yes, I also found one other answer https://stackoverflow.com/questions/45590891/hyperledger-composer-model-not-persisted. Thanks for the response
[ ](https://chat.hyperledger.org/channel/composer?msg=DgrZaZJuNDwYjYBAi) @uber.twin so duplicate namespaces are not allowed and was previously captured here FYI https://github.com/hyperledger/composer/issues/1174 - I assume your goal is to import types / type hierarchy defined in some other base CTO files etc or - more than that? - if you want to post complete scenario, probably better to post on Stack Overflow
[ ](https://chat.hyperledger.org/channel/composer?msg=C2LgjWwEL3XP6Ssgz) @ahmadzafar can't use joins on two different registries on lhe eldger, but you could use resolves in Filters (if relationships exist between them), would suggest to write Stack Overflow with your request.
[ ](https://chat.hyperledger.org/channel/composer?msg=vrdPvBMNABxd2yYXw) @CorgiSong hi there, did you do the runtime install with `tutorial-network` then build then start a tutorial-network.bna archive file on the channel - built from the tutorial https://hyperledger.github.io/composer/tutorials/developer-tutorial ?
[ ](https://chat.hyperledger.org/channel/composer?msg=vrdPvBMNABxd2yYXw) @CorgiSong hi there, did you do the runtime install with `tutorial-network` then build (the `.bna` archive file) and start a tutorial-network.bna archive file on the channel - built from the tutorial https://hyperledger.github.io/composer/tutorials/developer-tutorial ?
Has joined the channel.
Hello everyone,
I had a network setup with peer setup on another server.
It worked the first time but on re running it i get the forbidden error
I even regenerated the crypto-config and copied to other server but it still isnt accessible this time
Screen Shot 2018-02-12 at 4.46.26 PM.png
2018-02-12 11:15:59.776 UTC [channelCmd] readBlock -> DEBU 00a Got status: &{FORBIDDEN}
Error: can't read the block: &{FORBIDDEN}
[ ](https://chat.hyperledger.org/channel/composer?msg=8uDDyQTsTLjv5gNAB) @mtaram - I would think this is as error with the config files and copying the crypto material, but this is really a Fabric question - can you ask this in the #fabric channel.
ok Thanks
Has joined the channel.
HI
I am trying to setup network with two orgs and i followed the steps mentioned in this url https://hyperledger.github.io/composer//tutorials/deploy-to-fabric-multi-org
When i ran this command composer network start -c PeerAdmin@byfn-network-org1 -a tutorial-network@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
I am getting the below error message please help me out how to resolve this
siva@siva-VirtualBox:~/fabric-samples/first-network$ composer network start -c PeerAdmin@byfn-network-org1 -a tradefinance.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
Starting business network from archive: tradefinance.bna
Business network definition:
Identifier: tradefinance@0.0.1
Description: Trade Finance
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to execute transaction (Timeout expired while executing transaction)
Response from attempted peer comms was an error: Error: Failed to execute transaction (Timeout expired while executing transaction)
Response from attempted peer comms was an error: Error: Failed to execute transaction (Timeout expired while executing transaction)
Response from attempted peer comms was an error: Error: Failed to execute transaction (Timeout expired while executing transaction)
Command failed
my application name is tradefinance.So i have given tradefinance.bna in the above commans
When i type docker ps command in my terminal all of containers are up and running.
Hello everyone,
I'm trying to Subscribe to events from my node js application by following the instructions in https://hyperledger.github.io/composer/applications/subscribing-to-events.html.
I've also tried looking on the internet for ways to implement it but there's just one article showing an example.
Even with the application have had made an API call to subscribe to events emitted transactions in a business network, none of the events is being captured.
Could anyone take a look at the below code snipped and help me out with the issue?
// Setup Demo
app.get('/setupdemo', function (req, res) {
return businessNetworkConnection.connect(CARD_NAME)
.then((businessNetworkDefinition) => {
businessNetworkConnection.on('event', (event) => {
// event: { "$class": "org.namespace.BasicEvent", "eventId": "0000-0000-0000-000000#0" }
console.log('GET event for /setupdemo');
console.log(event);
});
let serializer = businessNetworkDefinition.getSerializer();
let resource = serializer.fromJSON({
'$class': NAMESPACE_SETUPDEMO
});
businessNetworkConnection.submitTransaction(resource);
})
.then((result) => {
console.log(result);
res.send(SUCCESS);
})
.then(() => {
return businessNetworkConnection.disconnect();
})
.catch((error) => {
console.error(error);
res.send(error);
process.exit(1);
})
});
Hello everyone,
I'm trying to Subscribe to events from my node js application by following the instructions in https://hyperledger.github.io/composer/applications/subscribing-to-events.html.
I've also tried looking on the internet for ways to implement it but there's just one article showing an example.
Even with the application have had made an API call to subscribe to events emitted transactions in a business network, none of the events is being captured.
Could anyone take a look at the below code snipped and help me out with the issue?
// Setup Demo
app.get('/setupdemo', function (req, res) {
return businessNetworkConnection.connect(CARD_NAME)
.then((businessNetworkDefinition) => {
businessNetworkConnection.on('event', (event) => {
// event: { "$class": "org.namespace.BasicEvent", "eventId": "0000-0000-0000-000000#0" }
console.log('GET event for /setupdemo');
console.log(event);
});
let serializer = businessNetworkDefinition.getSerializer();
let resource = serializer.fromJSON({
'$class': NAMESPACE_SETUPDEMO
});
businessNetworkConnection.submitTransaction(resource);
})
.then((result) => {
console.log(result);
res.send(SUCCESS);
})
.then(() => {
return businessNetworkConnection.disconnect();
})
.catch((error) => {
console.error(error);
res.send(error);
process.exit(1);
})
});
And I get the below messages on my error console everytime I send a GET request on the URI.
(node:11714) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: The event hub has not been connected to the event source
(node:11714) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminatethe Node.js process with a non-zero exit code.
(node:11714) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 3): Error: Error trying invoke business network. Error: The event hub has not been connected to the event source
(node:11714) PromiseRejectionHandledWarning: Promise rejection was handled asynchronously (rejection id: 1)
Hello everyone,
I'm trying to Subscribe to events from my node js application by following the instructions in https://hyperledger.github.io/composer/applications/subscribing-to-events.html.
I've also tried looking on the internet for ways to implement it but there's just one article showing an example.
Even with the application have had made an API call to subscribe to events emitted transactions in a business network, none of the events is being captured.
Could anyone take a look at the below code snipped and help me out with the issue?
// Setup Demo
app.get('/setupdemo', function (req, res) {
return businessNetworkConnection.connect(CARD_NAME)
.then((businessNetworkDefinition) => {
businessNetworkConnection.on('event', (event) => {
// event: { "$class": "org.namespace.BasicEvent", "eventId": "0000-0000-0000-000000#0" }
console.log('GET event for /setupdemo');
console.log(event);
});
let serializer = businessNetworkDefinition.getSerializer();
let resource = serializer.fromJSON({
'$class': NAMESPACE_SETUPDEMO
});
businessNetworkConnection.submitTransaction(resource);
})
.then((result) => {
console.log(result);
res.send(SUCCESS);
})
.then(() => {
return businessNetworkConnection.disconnect();
})
.catch((error) => {
console.error(error);
res.send(error);
process.exit(1);
})
});
And I get the similar messages as below on my error console every time I send a GET request on the URI.
(node:11714) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: The event hub has not been connected to the event source
(node:11714) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminatethe Node.js process with a non-zero exit code.
(node:11714) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 3): Error: Error trying invoke business network. Error: The event hub has not been connected to the event source
(node:11714) PromiseRejectionHandledWarning: Promise rejection was handled asynchronously (rejection id: 1)
[ ](https://chat.hyperledger.org/channel/composer?msg=Z5uGQPuf3XoXqRKM9) @mahoney1 Thank you. Yes smart contract should be deterministic otherwise it wont produce same results on multiple peers. In order to do matrix computation in TP, can I import `mathjs` external module? Is it possible to use its functionalities (http://mathjs.org/download.html) in TP? Or can you suggest any other way for matrix computation in TP (assuming results or data input is deterministic)?
Has joined the channel.
Clipboard - February 12, 2018 3:00 PM
Hi everyone, I am following the composer multi-organization tutorial with my friend. we are following the steps on two separate EC2 AWS machines, but we failed at the last step.
Here's the error message for org1:
Error: Peer has rejected transaction '6e5edfc482e87fdeee435546ebef622da2321eed9185f17d16164be27f331e94' with code ENDORSEMENT_POLICY_FAILURE and here's the error message for org 2:
Error: could not find chaincode with name 'tutorial-network' - make sure the chaincode tutorial-network has been successfully instantiated and try again
Error: Card not found: bob@tutorial-networkError
anyone can help with this?
or what could be the potential issues? we are strictly following the tutorial
Hi everyone, I am following the composer multi-organization tutorial with my friend. we are following the steps on two separate EC2 AWS machines, but we failed at the last step.
Here's the error message for org1:
Error: Peer has rejected transaction '6e5edfc482e87fdeee435546ebef622da2321eed9185f17d16164be27f331e94' with code ENDORSEMENT_POLICY_FAILURE and here's the error message for org 2:
Error: could not find chaincode with name 'tutorial-network' - make sure the chaincode tutorial-network has been successfully instantiated and try again
Error: Card not found: bob@tutorial-networkError
anyone can help with this?
or what could be the potential issues? we are strictly following the tutorial. Thanks in advance.
[ ](https://chat.hyperledger.org/channel/composer?msg=PikeXo4TcHC5iJgCt) @pavaniuppalapati - is your Fabric running? Perhaps you have restarted your machine since running the composer runtime install comand? Try `docker ps` to see if the containers for the Fabric are running.
@hendiflex, yes, it appears so, we're looking into it - if urgent can point you to the source MD files (that build the docs)
[ ](https://chat.hyperledger.org/channel/composer?msg=2MBxGbqdTa6AKLBaQ) @mahoney1 Back up again, ty :)
[ ](https://chat.hyperledger.org/channel/composer?msg=9ELrsPNh2CYcSBtWi) @CorgiSong - what is the exact command that gives you an error ?
[ ](https://chat.hyperledger.org/channel/composer?msg=9ELrsPNh2CYcSBtWi) @CorgiSong - what is the exact command that gives you an error ? If you are running on 2 separate machines for Org1 and Org2 - what steps have you taken for managing the networking and port mapping for the 2 sets of containers?
@AkshayJindal can't import an external Node module in TP functions in Composer presently. but it is something that is in the plan for a later release.
@AkshayJindal can't import an external Node module via `requires` in TP functions in Composer presently. but it is something that is in the plan for a later release.
Hi quick question. Can you use the node sdk within the code through composer? I want to be able to generate new channels from a transaction
Hi , I have a question, how to export the data stored within couch db into db2? we will use composer, so is there any way to export the data?
@rthatcher Both Org 1 and Org 2 failed at the ping:
Org 1 failed at : composer network ping -c alice@tutorial-network
Org 2 failed at: composer network ping -c bob@tutorial-network
I guess I didn't really handled the port.. I was following the tutorial:
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org
@rthatcher I did open the ports on aws though see the picture attached
Capture.PNG
[ ](https://chat.hyperledger.org/channel/composer?msg=qff36aZJSW8FE2Wce) @CorgiSong - docker-compose is great for starting containers on a single machine and managing the connectivity and naming between the containers, but if you go to 2 machines you need to plan it yourself.
use node-red ? The Hyperledger Composer Mid node retrieves assets and participants from the Blockchain. Standard JSON in the payload. See https://hyperledger.github.io/composer/integrating/node-red
[ ](https://chat.hyperledger.org/channel/composer?msg=QskW642s3mtadrYmd) @xuzhao103389 use node-red ? The Hyperledger Composer Mid node retrieves assets and participants from the Blockchain. Standard JSON in the payload. See https://hyperledger.github.io/composer/integrating/node-red
[ ](https://chat.hyperledger.org/channel/composer?msg=QskW642s3mtadrYmd) @xuzhao103389 use node-red ? Supported in Composer v0.16.x FYI. The Hyperledger Composer Mid node retrieves assets and participants from the Blockchain. Standard JSON in the payload. See https://hyperledger.github.io/composer/integrating/node-red
@rthatcher do we have any resources/instructions on how to set up on 2 physical machines?
thanks , I will take a look @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=rr2EQp4DpgW6TMN5v) @CorgiSong - We don't have any Composer specific instructions for setting up a multi org Fabric on separate machines. The best approach is to read the Fabric docs about creating a Fabric and plan the network addressing and resolution. Docker Swarm or Kubernetes can help.
[ ](https://chat.hyperledger.org/channel/composer?msg=rr2EQp4DpgW6TMN5v) @CorgiSong - We don't have any Composer specific instructions for setting up a multi org Fabric on separate machines. The best approach is to read the Fabric docs about creating a Fabric and plan the network addressing and resolution. Docker Swarm or Kubernetes can help.
There is a **single Org** Doc with Peers on separate Machines that was created by one of the Channel members:
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
Hi Guys ,,,anyboday have composer sample application for multi organization fabric setup
@knagware9 need it as well
[ ](https://chat.hyperledger.org/channel/composer?msg=RvhPGLJRbk7m22bWX) @knagware9 - all the Sample Applications can be run on a MultiOrg Fabric - and if you don't require MultiOrg then perhaps you don't even need blockchain :-)
There is a MultiOrg tutorial which has the aim of showing the Composer aspects of connecting to a MultiOrg Fabric. For simplicity it runs on a single machine:
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org
Hi Everyone, Has anyone tried the event listen in https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/lib/landRegistry.js
I couldn't make it work. The sample code is incomplete for event listen.
Has joined the channel.
Hi Everyone, We're trying to install hyperledger composer on rasberry pi, anyone have any luck doing so?
What is the Path for websocket url in server?
I am using socket.io to connect restful server. but I don't know the path.
[ ](https://chat.hyperledger.org/channel/composer?msg=QHDXrBeTaCAtQ4uER) @mahoney1 Thanks. But is it possible to use javascript `Math` object in the TP function for example, `Math.pow` and `Math.sqrt`?
[ ](https://chat.hyperledger.org/channel/composer?msg=GwK7W7GanNPF7Qrme) @davidkel David, i'm still not able to get my development environment built using 0.17.3 with 1.1-alpha. I've been following procedures found in https://hyperledger.github.io/composer/next/. After reading other rocketchat's today i started over and made sure i deleted any cards from previously installed examples/environments (rm -fr .composer) and completed ./teardownAllDocker.sh. Unfortunately I'm still not able to instantiate composer runtime for the tutorial-network.
cloud@bailey-2:~/tutorial-network$ composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card
Starting business network from archive: tutorial-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: tutorial network
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
peer0 - 1.1-alpha.txt
[ ](https://chat.hyperledger.org/channel/composer?msg=eEZRTZ9e7HWs9i8WH) i've tried to attach logs from peer0 that indicate a possible when building fabric-ccenv??
i originally had an npm errors because i'm behind a proxy, which i fixed using npm set proxy.....so you are suggeting that i try to catch CC container as its being built?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=SZw4b2b2shPCyEJcq) Thanks Paul for the reply. But isf I was in charge of the query engine I would resolve this at composer lever: the composer quey engine should be limited to the DB engine it uses.
[ ](https://chat.hyperledger.org/channel/composer?msg=SZw4b2b2shPCyEJcq) Thanks Paul for the reply. But if I was in charge of the query engine I would resolve this at composer lever: the composer query engine should be limited to the DB engine it uses.
[ ](https://chat.hyperledger.org/channel/composer?msg=SZw4b2b2shPCyEJcq) Thanks Paul for the reply. But if I was in charge of the query engine I would resolve this at composer lever: the composer query engine should be limited to the DB engine capabilities it uses.
[ ](https://chat.hyperledger.org/channel/composer?msg=SZw4b2b2shPCyEJcq) Thanks Paul for the reply. But if I was in charge of the query engine I would resolve this at composer lever: the composer query engine should be limited to the DB engine capabilities it uses; Since I want my API to provide a simple way to find exams from the patient name.
[ ](https://chat.hyperledger.org/channel/composer?msg=SZw4b2b2shPCyEJcq) Thanks Paul for the reply. But if I was in charge of the query engine I would resolve this at composer lever: the composer query engine should be limited to the DB engine capabilities it uses; Since I want my API to provide a simple way to find exams from the patient name, and your solution implies that the client makes two calls.
[ ](https://chat.hyperledger.org/channel/composer?msg=SZw4b2b2shPCyEJcq) Thanks Paul for the reply. But if I was in charge of the query engine I would resolve this at composer lever: the composer query engine shouldn't be limited to the DB engine capabilities it uses; Since I want my API to provide a simple way to find exams from the patient name, and your solution implies that the client makes two calls.
[ ](https://chat.hyperledger.org/channel/composer?msg=SZw4b2b2shPCyEJcq) Thanks Paul for the reply. But if I was in charge of the query engine I would resolve this at composer lever: the composer query engine shouldn't be limited to the DB engine capabilities it uses; Since I want my API to provide a simple way to find exams from the patient name, and your solution implies that the client makes two API calls.
[ ](https://chat.hyperledger.org/channel/composer?msg=SZw4b2b2shPCyEJcq) Thanks Paul for the reply. But if I was in charge of the query engine I would resolve this at composer level: the composer query engine shouldn't be limited to the DB engine capabilities it uses; Since I want my API to provide a simple way to find exams from the patient name, and your solution implies that the client makes two API calls.
[ ](https://chat.hyperledger.org/channel/composer?msg=SZw4b2b2shPCyEJcq) Thanks Paul for the reply. But if I was in charge of the query engine I would have resolve this kind of call at composer level: the composer query engine shouldn't be limited to the DB engine capabilities it uses; Since I want my API to provide a simple way to find exams from the patient name, and your solution implies that the client makes two API calls.
[ ](https://chat.hyperledger.org/channel/composer?msg=SZw4b2b2shPCyEJcq) Thanks Paul for the reply. But if I was in charge of the query engine I would have resolve this kind of call at composer level: the composer query engine shouldn't be limited to the DB engine capabilities it uses; Since I want my API to provide a simple way to find exams from the patient name, and your solution implies that the client makes two API calls.
Is there a way I can provide an API method like findExamByPatientName() with some other means that Queries ?
[ ](https://chat.hyperledger.org/channel/composer?msg=SZw4b2b2shPCyEJcq) Thanks Paul for the reply. But if I was in charge of the query engine I would have resolve this kind of call at composer level: the composer query engine shouldn't be limited to the DB engine capabilities it uses; Since I want my API to provide a simple way to find exams from the patient name, and your solution implies that the client makes two API calls.
Is there a way I can provide an API method like findExamByPatientName() using composer ?
[ ](https://chat.hyperledger.org/channel/composer?msg=SZw4b2b2shPCyEJcq) Thanks Paul for the reply. But if I was in charge of the query engine I would have resolve this kind of call at composer level: the composer query engine shouldn't be limited to the DB engine capabilities it uses; Since I want my API to provide a simple way to find exams from the patient name, and your solution implies that the client makes two API calls.
Is there another way I can provide an API method like findExamByPatientName() using composer ?
@davidkel have run through the @next playground and developer tutorials on 0.17.4 and 1.1-alpha -- both work quite well and the REST server API that launches explorer at the end of the dev tutorial is a really nice touch. Will continue to go forward with the tutorial suite tomorrow but wanted to send feedback after all your assistance last week -- so far this is good. Thanks again
@rbailey One possible problem is that the npm install that is done when building the chaincode container is either taking too long or failing. You would have to initiate the instantiate then look for the container which is performing this step and get it's log to see if that is the problem. You have to be quick as the container will vanish.
@rbailey just read that you said you were behind a proxy. Then it is likely that is the problem. There is a soln for that
what is a soin? :)
@rbailey if you look at https://hyperledger.github.io/composer/next//managing/connector-information there should be some information about how you can provide your own npmrc file
ok, as usual.....thanks for the help!
I note there is a minor bug on the page. it's applicable to the install and deploy commands, not the start command
@davidkel moving from the developer tutorial to the query tutorial -- to modify .cto and other files so I first need to `./stopFabric` and teardown? Of can I simply kill the browser window running from the end of the developer tutorial and go from there? What's the protocol for moving from tutorial to tutorial? Thanks
@davidkel moving from the developer tutorial to the query tutorial -- to modify .cto and other files so I first need to `./stopFabric.sh` and teardown? Of can I simply kill the browser window running from the end of the developer tutorial and go from there? What's the protocol for moving from tutorial to tutorial? Thanks
Has joined the channel.
Has anyone seen this error before? `The current identity, with the name 'admin' and the identifier ', has not been registered)",`
@atbe Has your network admin card already been imported to the card store? for example like this ```composer card import --file networkadmin.card````
@atbe Has your network admin card already been imported to the card store? for example like this ```composer card import --file networkadmin.card```
@aneb yes it has
When is the error thrown? For example does pinging the business network with the card work?
It happens when I try to make a call from the REST API. I can ping the network in the CLI but pinging from the REST API causes the error
When you say REST ApI I assume you mean you are using the composer REST api server? Are you running it with authentication enabled?
Yes, I mean the composer REST api server, and yes I am running it with authentication enabled
I also get an error when trying to issue an identity in the CLI
`✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed`
To make a long story short :), have you already gone through this article/content https://hyperledger.github.io/composer/integrating/enabling-rest-authentication ? When using the composer REST server with authentication mode there are a few necessary steps you need to take before you can actually login/authenticate as that user.
Yep, I got an access token with google and that's all working. No 400 errors when using the REST API. That 400 error came up when using the CLI which makes 0 sense
I have api authentication setup and configured correctly
I use `composer-rest-server -c admin@msu-healthchain -n never -a true -m true -w true` command to start my api, it all works fine except for the 500 errors claiming the admin identity has not been registered
what does it even mean `has not been registered`
Depending on where the error comes from, for example not directly from the CA server docker image, the message should mean that the admin card is not available in the cardstore that the REST server is using. Which by default is the .composer folder in your home directory I guess.
@aneb same issue as you see here https://stackoverflow.com/questions/48380461/how-do-i-resolve-the-following-issue-on-hyperledger-composer-cli-command-for-ide
@aneb here is the output from my ca server when running the enroll command:
`2018/02/13 03:16:09 [DEBUG] Received request
POST /api/v1/register
Authorization: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUI4RENDQVplZ0F3SUJBZ0lVSHloOWdObjFaVFNIdzNFWWlyZFZhSVpkMmJzd0NnWUlLb1pJemowRUF3SXcKY3pFTE1Ba0dBMVVFQmhNQ1ZWTXhFekFSQmdOVkJBZ1RDa05oYkdsbWIzSnVhV0V4RmpBVUJnTlZCQWNURFZOaApiaUJHY21GdVkybHpZMjh4R1RBWEJnTlZCQW9URUc5eVp6RXVaWGhoYlhCc1pTNWpiMjB4SERBYUJnTlZCQU1UCkUyTmhMbTl5WnpFdVpYaGhiWEJzWlM1amIyMHdIaGNOTVRnd01qRXpNREExT0RBd1doY05NVGt3TWpFek1EQTEKT0RBd1dqQVFNUTR3REFZRFZRUURFd1ZoWkcxcGJqQlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQQpCRjRJcDhSckRIZzNpdXhCZS9WUU5hTCs2T25QM0NJUUI2anNKYXBINHU1UjE5UW5xaWdiNDgyempFU2dGUG9mCjVyWDFyZ0pyUTZpbTVrdjNkSTlxOStxamJEQnFNQTRHQTFVZER3RUIvd1FFQXdJSGdEQU1CZ05WSFJNQkFmOEUKQWpBQU1CMEdBMVVkRGdRV0JCUlRveS9nendsRHVpMTBSR25NZ0JGd1ZXOTlmVEFyQmdOVkhTTUVKREFpZ0NBWgpxMldydXdTQWZhMFM1TUNwcXFaa25uQ0dqanE5QWhlakl0aWVSK0dtcmpBS0JnZ3Foa2pPUFFRREFnTkhBREJFCkFpQnVCWWZOZktGb1ZrejRibGhodkthRVJqaTF5Z09oa2FObFlPcGdKeUZHZWdJZ0RqYlRxVk1UVWRHT2dFSFAKbU9EZHQzQWpxWWMySVU3c2hMWTBXMWZMRms4PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==.MEQCIE/wkEsXcL5hXxkcntofALe2Dgu6p+46k9H9YUJyVsBUAiBduVHB+sqcSt6FHAOYstG6+ujtsk6M0qmy4diuQHczMA==
{"id":"abeahmed-patient","type":"client","affiliation":"org1","max_enrollments":1,"attrs":[],"caName":"ca.org1.example.com"}
2018/02/13 03:16:09 [DEBUG] Directing traffic to CA ca.org1.example.com
2018/02/13 03:16:09 [DEBUG] Checking for revocation/expiration of certificate owned by 'admin'
2018/02/13 03:16:09 [DEBUG] DB: Get certificate by serial (1f287d80d9f5653487c371188ab75568865dd9bb) and aki (19ab65abbb04807dad12e4c0a9aaa6649e70868e3abd0217a322d89e47e1a6ae)
2018/02/13 03:16:09 [ERROR] No certificates found for provided serial and aki
ca.org1.example.com`
I don't understand why I can't issue a simple identity, all of my configuration seems correct
@aneb does this have anything to do with it https://jira.hyperledger.org/browse/FAB-6003
Could be related as your error seems to be the same '2018/02/13 03:16:09 [ERROR] No certificates found for provided serial and aki' I haven't encountered the same problem yet though and I am running 1.9 as well. But I am not using the compose rest server anymore. Although the sdk code is the same so in theory using the rest server or not should not matter as it seems to be the CA server on your side that is causing the problem.
Bloody hell, I fixed the problem, looks like the fabric teardown script wasn't tearing down fully, I ran the commands manually and the identity is now generated
@aneb thanks for the help. I have another quick question, should I give all participants read access to the network? I can't make simple queries using one of my participants
yes default you need this in your permission.acl file
```
rule Default {
description: "Allow all participants access to all resources"
participant: "ANY"
operation: ALL
resource: "org.***.***Network.*"
action: ALLOW
}
```
of course that is just for dev purposes
By the way to answer your question from the fabric channel. Long story short, I don't think there is like a uport clone for fabric yet. How the user logs in and with what data is all up to you for you. You can use the composer rest passport functionality or make your own custom one. For example in my case I am currently playing around with putting the cards content in a QR code so my users literally use their card as an id card with a scanner to login. It is actually a topic I would like to see more info on as well. I am very curious how everyone implements everything especially when it comes to web applications. For UX of course it seems necessary to do more than let the user upload the file every time but it just creates to many security problems once you start adding passports and keeping your cards on one location etc. But maybe that is just me over thinking it.
@aneb interesting, I have seen a project use a QR code (but the source code is not available). Would you use that to authenticate the user? I was just going to do what you said, upload the users card into the site directly because I don't have the time or business requirements to have a super-friendly UI. UPort def did something right for ethereum and I'm hoping a similar solution pops up for Hyperledger Fabric sometime soon
@aneb I have one more question, what's the difference between issuing an identity (generating the .card file) and _registering_ an identity?
Not really sure about the difference. Would have to look up the exact details for that as well in the CA server documentation. From a composer client SDK point of view it seems like only issueIdentity is ever called. Or I might be overlooking something.
I see
Do you know why this request is claiming the permission failed? `Error trying to query business network. Error: chaincode error (status: 500, message: Error: Participant 'org.msu.healthchain.Patient#3679' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#msu-healthchain@0.0.1')"` I'm trying to access a `Patient` resource, does that require `org.hyperledger.composer.system.Network#msu-healthchain@0.0.1` READ permission>
Could be many reasons and probably permission.acl file related. For non admin users you need to set seperate access to system files though
Could be many reasons and probably permission.acl file related. For all users you need to set seperate access to system files though
```
rule SystemACL {
description: "System ACL to permit all access"
participant: "ANY"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
should be set default as well
Instead of `Operation: ALL` you'd want `Operation: READ` though, right?
yeah. Of course for dev purposes setting it to ALL doesn't hurt
@aneb I can't for the life of me get around this `The current identity has not been registered` error
Has joined the channel.
i am performing multiple request through Composer Rest API. I am receiving this error Error: Error trying invoke business network. Error: Peer has rejected transaction with code MVCC_READ_CONFLICT
Hi Team .I am trying to setup multi org in my local.When i use composer network start command then its giving the below error
Identifier: tradefinance@0.0.1
Description: Trade Finance
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Has joined the channel.
Hi Team,
I am have started a blockchain network and a rest server on Ubuntu server with some chaincode. I want to invoke this chaincode from a Java class. Kindly direct me to useful sources.
I tutorial/sample class will be very useful.
ric deliver proto
Please ignore the last comment.
Hi Team,
After following the composer tutorial on Youtube, My question is we saw all crud operations using composer and the rest APIs available were able to add, update, read and delete assets on the blockchain, so where is the immutability in this or dies composer and fabric achieve all this using append only architecture and the underlying blockchain is still immutable?
From that tutorial were Offer/Close the Bidding the only two type of transactions or adding/updating/deleting assets are also implicitly converted into transactions?
[ ](https://chat.hyperledger.org/channel/composer?msg=5D3TYcRA8Hs6yfhsN) @itskhushal - you can view all transactions on Composer Playground by clicking 'All Transactions' under the Test tab. It will show your specific transactions, plus general ones such as 'AddAsset'.
Transactions can also be viewed from the REST Server under '/system/historian'.
Hi,
Is there any example out there regarding the following description on the ACL page. I have managed to make it work with a simple return true/false check but I am curious about real examples. For example do we have access to the asset and participant registries in this code? Or are we constraint to the actual asset we are accessing/modifying? What about promises etc.
`
Condition is a Boolean JavaScript expression over bound variables. Any JavaScript expression that is legal with the an if(...) expression may be used here. JavaScript expressions used for the condition of an ACL rule can refer to JavaScript utility functions in a script file. This allows a user to easily implement complex access control logic, and re-use the same access control logic functions across multiple ACL rules.
`
For example let's say we have something crazy like the following test rule: stop access to companies once there are more than 3 companies registered. (Obviously a useless rule but just for testing)
```
function testing() {
getParticantRegistry('org.***.***Network.Company')
.then(function (registry) {
registry.getAll().then(function(data) {
if (data && data.length > 3 ) {
return true;
}
return false;
});
});
}
```
```
rule Testing {
description: "Block someone from accessing a company based on logic.js file"
participant: "ANY"
operation: ALL
resource: "org.***.***Network.Company"
condition: (testing())
action: DENY
}
```
Is something like this currently possible? As for my test, no error is thrown but I can't seem to make it work.
Thanks.
Hi,
Is there any example out there regarding the following description on the ACL page. I have managed to make it work with a simple return true/false check but I am curious about real examples. For example do we have access to the asset and participant registries in this code? Or are we constraint to the actual asset we are accessing/modifying? What about promises etc.
'
Condition is a Boolean JavaScript expression over bound variables. Any JavaScript expression that is legal with the an if(...) expression may be used here. JavaScript expressions used for the condition of an ACL rule can refer to JavaScript utility functions in a script file. This allows a user to easily implement complex access control logic, and re-use the same access control logic functions across multiple ACL rules'
For example let's say we have something crazy like the following test rule: stop access to companies once there are more than 3 companies registered. (Obviously a useless rule but just for testing)
```
function testing() {
getParticantRegistry('org.***.***Network.Company')
.then(function (registry) {
registry.getAll().then(function(data) {
if (data && data.length > 3 ) {
return true;
}
return false;
});
});
}
```
```
rule Testing {
description: "Block someone from accessing a company based on logic.js file"
participant: "ANY"
operation: ALL
resource: "org.***.***Network.Company"
condition: (testing())
action: DENY
}
```
Is something like this currently possible? As for my test, no error is thrown but I can't seem to make it work.
Thanks.
Hi,
Is there any example out there regarding the following description on the ACL page. I have managed to make it work with a simple return true/false check but I am curious about real examples. For example do we have access to the asset and participant registries in this code? Or are we constraint to the actual asset we are accessing/modifying? What about promises etc.
''Condition is a Boolean JavaScript expression over bound variables. Any JavaScript expression that is legal with the an if(...) expression may be used here. JavaScript expressions used for the condition of an ACL rule can refer to JavaScript utility functions in a script file. This allows a user to easily implement complex access control logic, and re-use the same access control logic functions across multiple ACL rules''
For example let's say we have something crazy like the following test rule: stop access to companies once there are more than 3 companies registered. (Obviously a useless rule but just for testing)
```
function testing() {
getParticantRegistry('org.***.***Network.Company')
.then(function (registry) {
registry.getAll().then(function(data) {
if (data && data.length > 3 ) {
return true;
}
return false;
});
});
}
```
```
rule Testing {
description: "Block someone from accessing a company based on logic.js file"
participant: "ANY"
operation: ALL
resource: "org.***.***Network.Company"
condition: (testing())
action: DENY
}
```
Is something like this currently possible? As for my test, no error is thrown but I can't seem to make it work.
Thanks.
Hi,
Is there any example out there regarding the following description on the ACL page. I have managed to make it work with a simple return true/false check but I am curious about real examples. For example do we have access to the asset and participant registries in this code? Or are we constraint to the actual asset we are accessing/modifying? What about promises etc.
```Condition is a Boolean JavaScript expression over bound variables. Any JavaScript expression that is legal with the an if(...) expression may be used here. JavaScript expressions used for the condition of an ACL rule can refer to JavaScript utility functions in a script file. This allows a user to easily implement complex access control logic, and re-use the same access control logic functions across multiple ACL rules
```
For example let's say we have something crazy like the following test rule: stop access to companies once there are more than 3 companies registered. (Obviously a useless rule but just for testing)
```
function testing() {
getParticantRegistry('org.***.***Network.Company')
.then(function (registry) {
registry.getAll().then(function(data) {
if (data && data.length > 3 ) {
return true;
}
return false;
});
});
}
```
```
rule Testing {
description: "Block someone from accessing a company based on logic.js file"
participant: "ANY"
operation: ALL
resource: "org.***.***Network.Company"
condition: (testing())
action: DENY
}
```
Is something like this currently possible? As for my test, no error is thrown but I can't seem to make it work.
Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=zPtQbvexKS9FToDCJ) @pavaniuppalapati - did the `composer runtime install` complete OK?
Are your docker containers running for the Fabric? Try `docker ps` to see if they are running.
@aneb - we have a new tutorial for acls :-) - can I suggest you look at this doc which I think will answer most of your questions:
https://hyperledger.github.io/composer/next/tutorials/acl-trading
- Notice that the tutorial is under the 'next' documentation for v0.17.x of composer, and you are probably working on 'latest'/'stable' - the Tutorial will work fine on 0.16 but just be aware that some of the docs in the 'next' branch won't work for 0.16.
@rthatcher Thanks! I will take a look. I am planning to upgrade soon anyway so the new version is ok. I was , as you guessed, currently mostly looking at the 0.16x docs though.
@rthatcher composer runtime install command is successfull
and all of the containers also running when i type docker ps
When i see docker logs of (peer0.org1.example.com) container then the below error is showing
2018-02-13 06:50:55.616 UTC [eventhub_producer] Chat -> ERRO 82d error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
2018-02-13 06:52:46.563 UTC [chaincode] Launch -> ERRO 835 launchAndWaitForRegister failed Error starting container: context canceled
2018-02-13 06:52:46.563 UTC [endorser] callChaincode -> DEBU 836 Exit
2018-02-13 06:52:46.564 UTC [endorser] simulateProposal -> ERRO 837 failed to invoke chaincode name:"lscc" on transaction a9295ea833ff754a5747eda31d4f4c1e649fd543429cae
2018-02-13 06:52:47.140 UTC [chaincode] HandleMessage -> ERRO 841 []Failed to trigger FSM event REGISTER: transition canceled with error: peer will not accepting external chaincode connection name:"tradefinance:0.16.3" (except in dev mode)
2018-02-13 06:52:47.140 UTC [chaincode] processStream -> ERRO 842 []Error handling message, ending stream: transition canceled with error: peer will not accepting external chaincode connection name:"tradefinance:0.16.3" (except in dev mode)
[ ](https://chat.hyperledger.org/channel/composer?msg=jaAXXNaqthFmHfjjv) @ahmadzafar - there is some discussion of this error on Stack Overflow here:
https://stackoverflow.com/questions/45347439/mvcc-read-conflict-when-submitting-multiple-transactions-concurrently
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=bagiMcEpiRkvuSDTZ) @pavaniuppalapati - the first error in the log showing 'chat' indicates that your peers are having trouble communicating, so if all the containers are started I would think there is some networking or addressing issue. Are you running all the containers on one machine? are all the 4 peers for the MultiOrg tutorial running?
@rthatcher I have followed multiorg tutorial and i am trying this first-network in one machine
https://hyperledger.github.io/composer/next//tutorials/deploy-to-fabric-multi-org
i cloned the below code git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git
Hi All. I've seen questions about a tutorial on multi-channel deployment of blockchains, but haven't found a good answer. I'm looking for a "Multi-Channel Multi-Organizational Hyperledger Fabric deployment" tutorial that, I think, would be a natural follow-up to the "Multi-organization Hyperledger Fabric deployment" tutorial. I've been working with a two-org single channel network to get my business network in shape, but now it's time to add a third organization on a second channel. I have ideas on how to do it, but I'm looking for guidance on the "best practices" so I don't go down a road that leads to a dead end. Is there any such tutorial in the works? Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=jTuEhySjAoX3FTyAi) @pavaniuppalapati - thanks for that clarification.
When you run the command `./byfn.sh -m up -s couchdb -a` do you see this message ?
========= All GOOD, BYFN execution completed =========== ?
I see that you are looking at the tutorial for 'next' - are you running composer v0.17.x on Fabric v1.1.0-alpha ?
You can use `composer -v` for the composer version and `docker images` to see what Fabric images you have.
I know this is a lot of questions ! - do you have enough resources on your machine to run all these containers? How much RAM does Ubuntu have?
@rthatcher
When i ran ./byfn.sh -m up -s couchdb -a i am able to see --------Allgood,BYFN execution completed===--------
my composer version is 0.16.3
When i type docker images .x86_64-1.0.5 and latest also
i downloaded the images from curl -sSL https://goo.gl/byy2Qj | bash -s 1.0.5
RAM Size i am given for ubuntu is 104.46GB
@rthatcher that I understand but why is it that all transactions are visible as json, I thought blockchain was supposed to be encrypted and parts of the data would be decryptible based on permissions.
[ ](https://chat.hyperledger.org/channel/composer?msg=dXv7FifyeH3kr3Y3M) @pavaniuppalapati - Thanks for that info. You are using compatible versions of Fabric and Composer. The Tutorial doc you are following is for 'next' v0.17.x, and there are some differences from v0.16.x.
For v0.16.3 you need to use this tutorial: https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org (the connection profiles are quite different)
[ ](https://chat.hyperledger.org/channel/composer?msg=B4cLSAtLJHyi2wwZ5) @itskhushal - I don't think the data is encrypted by default, but you are right that it is permission based. Perhaps you are using the Admin ID for early testing and can see all the data? Also perhaps you are using a default ACL that allows free access?
[ ](https://chat.hyperledger.org/channel/composer?msg=rxKHHLS8EYgnMxXer) @rthatcher Yeah makes sense.
[ ](https://chat.hyperledger.org/channel/composer?msg=vxCvCvF2xiNGCLE7s) @mabnhdev - unfortunately there is no current tutorial for the scenario you are referring to. In terms of approach I think there are 3 key steps:
1. Create the Fabric peer (and CA) for the new organisation and manage the certificates between them.
2. Create the Channel
3. Configure Composer to access the new Org/Peer/Channel
The Fabric docs and tutorials can be used to help with steps 1 & 2 and there is also this doc on IBM DeveloperWorks:
https://www.ibm.com/developerworks/cloud/library/cl-add-an-organization-to-your-hyperledger-fabric-blockchain/index.html
For step 3 - the key for Composer is the connection profile where the Org, Peers, and Channel are all described in JSON. The multiOrg Tutorial is a good place for examples. Note that you can only specify 1 Channel for each Business Network Card - so multi-channel means multi card.
Please be aware that the connection profile has changed between v0.16.x and v0.17.x for Composer - different formats.
@rthatcher .Thank you very much.I will follow the above mentioned link.I have one question ,can i download the images from curl -sSL https://goo.gl/byy2Qj | bash -s 1.0.5 or else shall i need to download any particular version of fabric images
[ ](https://chat.hyperledger.org/channel/composer?msg=gMZzDEPntpLBvbZ9t) @pavaniuppalapati - Fabric 1.0.5 + Composer v0.16.3 is good. You just need to use the right document - and you will need to start at the top again and delete the existing containers, cards etc and delete the 'bad' json files.
[ ](https://chat.hyperledger.org/channel/composer?msg=jrLpNRxSHKQ8bXa5p) @rthatcher Thanks! That's very helpful. I'll follow your suggestions. I've seen a lot of references to v0.17.x, but I haven't moved up yet. My business logic is very simple and v0.16.3 seems to be doing the job for now. Is there anything in v0.17.x that would make multi-channel any easier?
@rthatcher .Sorry i have followed this link https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org
i have cross verified
WIth this steps only its failing
[ ](https://chat.hyperledger.org/channel/composer?msg=ChhDtAaJu5Jkuxn98) @aneb yes its possible ...examples of similar rules are here -> https://github.com/hyperledger/composer/blob/master/packages/composer-tests-functional/systest/data/accesscontrols.acl#L105 and the matching script file (with ACL functions) is here for you to peruse -> https://github.com/hyperledger/composer/blob/master/packages/composer-tests-functional/systest/data/accesscontrols.js
I am getting this error.Any ideas?
nekma@nekma:/tmp/composer/org2$ composer network ping -c bob@trade-network
Error: Error trying to ping. Error: Error trying to query business network. Error: make sure the chaincode trade-network has been successfully instantiated and try again: could not find chaincode with name 'trade-network'
Command failed
@mabnhdev - v0.17.x uses Fabric 1.1 (and specifically v0.17.4 uses 1.1.0-Alpha). If you are experimenting at this time then I would suggest using those newer versions because they will be the GA versions before too long and perhaps better to experiment with what you will deploy in production.
(If you are close to Production maybe there is a case for v0.16 and Fabric 1.0.5)
[ ](https://chat.hyperledger.org/channel/composer?msg=3KDFKGsrt6FBehHWG) @pavaniuppalapati OK - then I would look very closely at the command you used for Step 17, and also the file `connection-org1.json` which is used to create a card.
(Also confirm the Peers are all running `docker ps`)
[ ](https://chat.hyperledger.org/channel/composer?msg=RHNNiw87AjWwKYz4Y) @rthatcher Nowhere near production - I'm still in the early in proof-of-concept, so moving up sounds like a good suggestion. Thanks again.
[ ](https://chat.hyperledger.org/channel/composer?msg=4eGgYke3xC5ztZKez) @AkshayJindal yes should be possible -> the Math object is a built-in object so you should be able to use a static method like `Math.round(4.7) ` etc in a TP function etc etc.
@mahoney1 Thanks!
Hi
./byfn.sh -m up -s couchdb -a what exactly this command means? using ./byfn.sh -m up we are creating the whole network. but what is -s couchdb -a ? Is there any configuration need to be done in order to execute this command?
[ ](https://chat.hyperledger.org/channel/composer?msg=iWpbYDmad9Kfo7SYi) @Pranoti - the `-a` is used to start the CA servers for Org1 and Org2, and the `-s couchdb` is used to start a couchdb container for each peer instead of the default leveldb.
In order to use these extra features you need to be sure to use the clone command from the beginning of the tutorial:
`git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git`
Has joined the channel.
Hi, I need some guidance for deploying composer rest server to web. Please provide reference to suitable material.
Has joined the channel.
@bo2 What version of fabric and composer are you running? If you're running fabric 1.1-alpha and composer 0.17.4 then look at the tutorials here -- the developer tutorial launches a rest-server at the end: https://hyperledger.github.io/composer/next/tutorials/tutorials
If you need other reference materials for those running versions, try here: https://hyperledger.github.io/composer/next/reference/reference-index
However, if you are running fabric 1.1 and an earlier version of composer see the git repository for other docs
Thanks.. i'm on fabric 1.1-alpha and composer 0.16.3.. I need to understand basics of accessing localhost:3000 from other computers...
@bo2 composer 0.16.x won't work with fabric 1.1-alpha, you need to use 0.17.4
@rthatcher Hi i have uninstalled everything and freshly i am trying up multiorgs with this link https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org
./byfn.sh -m up -s couchdb -a when i use this command its saying as -a is illegal option
if use this command ./byfn.sh -m up -c mychannel -s couchdb then my CLI containers are not starting
[ ](https://chat.hyperledger.org/channel/composer?msg=ensH7Qeakk7B2kp9y) @pavaniuppalapati - OK - and did you use this exact command to clone the repository:
`git clone -b issue-6978 https://github.com/sstone1/fabric-samples.git`
It is this specif repo from sstone that has the `-a`
i have cloned from issue-6978 branch only
@rthatcher i have cloned from this branch only
Issue-6978
[ ](https://chat.hyperledger.org/channel/composer?msg=WPhmkL2nvEdfW5Azs) @pavaniuppalapati - if you try this command `./byfn.sh -?` you should see -a as an option in the help text
Clipboard - February 13, 2018 5:30 PM
@rthatcher ok thank you.let me check
When writing hyperledegr composer transaction functions, I run my tests using `npm run test` and I'm getting this error `ReferenceError: require is not defined` when trying to do this `var BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;`
Has anyone seen that error before?
I'm trying the code from here https://hyperledger.github.io/composer/managing/participant-add.html
Is it possible to enroll a participant within a transaction?
Does it make sense to use the code in here in a transaction??? https://hyperledger.github.io/composer/managing/participant-add.html
Is this documentation even up to date??? I'm getting an error `TypeError: businessNetworkConnection.getFactory is not a function` when trying to use the code
@atbe that code is client side code for writing client applications, not for use within transaction processor functions
some examples of working with asset registries in transaction processor functions here:
https://hyperledger.github.io/composer/reference/js_scripts.html
Screen Shot 2018-02-13 at 10.32.44 PM.png
Has joined the channel.
Has joined the channel.
Is there a *concise* reference for syntax for modeling language, e.g. if I define `participant Farmer identified by farmerId` can `o string farmerId' be Farmer-L1? Thanks.
Is there a *concise* reference for syntax for modeling language, e.g. if I define `participant Farmer identified by farmerId` can `o string farmerId` be Farmer-L1? Thanks.
Has joined the channel.
when I use `stopFabric` and then `startFabric` again. My business network state is refreshed as well. Is it possible to `stopFabric` without cleaning the state ? Thanks
when I use `stopFabric` and then `startFabric` again. My business network state is cleaned as well. Is it possible to `stopFabric` without cleaning the state ? Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=6jRotc96qou7ckezg) @rthatcher It is not working. After changing in configtx file. If i send request after 2 3 minutes it does not work also. any suggestion please other than this...
I'm trying run "composer network start" for multi org multiple machine on CentOS. It is showing network _byfn not found, $(COMPOSE_PROJECT_NAME) is empty. Can anyone help me in this?
@rthatcher
Still it is not working composer network start command even though i have uninstalled everything and followed the steps mentioned in multiorg document of sstone1
siva@siva-VirtualBox:~/fabric-samples/first-network$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
db044dca3cf0 dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab "chaincode -peer.add…" 24 minutes ago Up 24 minutes dev-peer1.org2.example.com-mycc-1.0
4c523bd46b5d dev-peer0.org1.example.com-mycc-1.0-384f11f484b9302df90b453200cfb25174305fce8f53f4e94d45ee3b6cab0ce9 "chaincode -peer.add…" 25 minutes ago Up 25 minutes dev-peer0.org1.example.com-mycc-1.0
d87dbee4a0e7 dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b "chaincode -peer.add…" 25 minutes ago Up 25 minutes dev-peer0.org2.example.com-mycc-1.0
8bcb946f6e7f hyperledger/fabric-tools "/bin/bash -c './scr…" 26 minutes ago Up 26 minutes cli
36143d015ac4 hyperledger/fabric-peer "peer node start" 26 minutes ago Up 26 minutes 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
b2d373bb668b hyperledger/fabric-peer "peer node start" 26 minutes ago Up 26 minutes 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
780e96a3e71b hyperledger/fabric-peer "peer node start" 26 minutes ago Up 26 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
6d351ec83485 hyperledger/fabric-peer "peer node start" 26 minutes ago Up 26 minutes 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
57ce0521482b hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 26 minutes ago Up 26 minutes 0.0.0.0:8054->7054/tcp ca_peerOrg2
ffe129e3cf8c hyperledger/fabric-couchdb "tini -- /docker-ent…" 26 minutes ago Up 26 minutes 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
83263fe1aca7 hyperledger/fabric-couchdb "tini -- /docker-ent…" 26 minutes ago Up 26 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
67ad1509713b hyperledger/fabric-couchdb "tini -- /docker-ent…" 26 minutes ago Up 26 minutes 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
ad2dce3ee26b hyperledger/fabric-couchdb "tini -- /docker-ent…" 26 minutes ago Up 26 minutes 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
54ad5475a91c hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 26 minutes ago Up 26 minutes 0.0.0.0:7054->7054/tcp ca_peerOrg1
31e6209030fe hyperledger/fabric-orderer "orderer" 26 minutes ago Up 26 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
siva@siva-VirtualBox:~/fabric-samples/first-network$
[ ](https://chat.hyperledger.org/channel/composer?msg=jbwWmjy54fqn6SqFd) @rthatcher Okay thanks.. Yesterday I tried that without cloning.. It gave error..
[ ](https://chat.hyperledger.org/channel/composer?msg=t6HyyMdPR9x8NZsYN) @pavaniuppalapati what error it is showing?
@prabvi01 this is not an error.I just send him about all of my containers are up and running
actual error is ✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
[ ](https://chat.hyperledger.org/channel/composer?msg=qbn5fofvkrZ9Whrop) @pavaniuppalapati yes i'm asking what error you are getting while running composer network start
@prabvi01 ✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
are you doing multiple org on same machine or on 2 different VMs?
@prabvi01 on same machine
did you tried this with disabling TLS ?
@prabvi01 i have not done any changes related TLS in Ubuntu
Shall we need disable manually.I am using Ubuntu 16.04
I havn't disabled TLS when i was deploying multi org on same VM but i did it when i was deploying multiple orgs on multiple machines on ubuntu 16.04
so u can give a try by disabling TLS or else redo the all steps from the blog which you are following "sstone1" coz even i have followed the same blog and it was working for me both multiple org on same VM and on 2 different VMs in ubuntu
@prabvi01 This is i am trying third time .I unintsalled everything and doing again freshely
still i am facing some issues
@prabvi01 shall we need to give anything in hosts file
Hello. I'm trying to authorize with admin card but get next message: `Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)`. Can you help me with this issue?
Hi team,
I have started a blockchain network on ubuntu server and trying to invoke it from Java Client.
While I am trying to create a channel, I am getting an error "org.hyperledger.fabric.sdk.exception.TransactionException: New channel [channel-name] error. StatusValue 400. Status BAD_REQUEST."
I can see a warning in the Orderer Docker logs as following
2018-02-14 06:46:35.223 UTC [orderer/common/broadcast] Handle -> WARN 1171 Rejecting CONFIG_UPDATE because: Error authorizing update: Error validating ReadSet: Readset expected key [Groups] /Channel/Application/Defence at version 0, but got version 1
Kindly suggest how i can debug this and get to the root of the issue.
Has joined the channel.
Has joined the channel.
Hi all .Does participants in hyperledger composer organisantion represent its peer nodes ?
let energynetwork = new EnergyNetwork();
energynetwork.init();
let factory = this.businessNetworkDefinition.getFactory();
I am receiving this error after line no 3. Cannot read property 'getFactory' of undefined
constructor() {
this.bizNetworkConnection = new BusinessNetworkConnection();
}
async init() {
this.businessNetworkDefinition = await this.bizNetworkConnection.connect(cardname);
// LOG.info('LandRegistry:
Has joined the channel.
@rthatcher I am sending my docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
db044dca3cf0 dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab "chaincode -peer.add…" 24 minutes ago Up 24 minutes dev-peer1.org2.example.com-mycc-1.0
4c523bd46b5d dev-peer0.org1.example.com-mycc-1.0-384f11f484b9302df90b453200cfb25174305fce8f53f4e94d45ee3b6cab0ce9 "chaincode -peer.add…" 25 minutes ago Up 25 minutes dev-peer0.org1.example.com-mycc-1.0
d87dbee4a0e7 dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b "chaincode -peer.add…" 25 minutes ago Up 25 minutes dev-peer0.org2.example.com-mycc-1.0
8bcb946f6e7f hyperledger/fabric-tools "/bin/bash -c './scr…" 26 minutes ago Up 26 minutes cli
36143d015ac4 hyperledger/fabric-peer "peer node start" 26 minutes ago Up 26 minutes 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
b2d373bb668b hyperledger/fabric-peer "peer node start" 26 minutes ago Up 26 minutes 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
780e96a3e71b hyperledger/fabric-peer "peer node start" 26 minutes ago Up 26 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
6d351ec83485 hyperledger/fabric-peer "peer node start" 26 minutes ago Up 26 minutes 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
57ce0521482b hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 26 minutes ago Up 26 minutes 0.0.0.0:8054->7054/tcp ca_peerOrg2
ffe129e3cf8c hyperledger/fabric-couchdb "tini -- /docker-ent…" 26 minutes ago Up 26 minutes 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
83263fe1aca7 hyperledger/fabric-couchdb "tini -- /docker-ent…" 26 minutes ago Up 26 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
67ad1509713b hyperledger/fabric-couchdb "tini -- /docker-ent…" 26 minutes ago Up 26 minutes 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
ad2dce3ee26b hyperledger/fabric-couchdb "tini -- /docker-ent…" 26 minutes ago Up 26 minutes 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
54ad5475a91c hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 26 minutes ago Up 26 minutes 0.0.0.0:7054->7054/tcp ca_peerOrg1
31e6209030fe hyperledger/fabric-orderer "orderer" 26 minutes ago Up 26 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
if you obeserve peero.org1.example.com and other peers its 0.0.0.0:7053
[ ](https://chat.hyperledger.org/channel/composer?msg=x9YN8XuLtWMXtMoJe) @nphi1212 - This answer on Stack Overflow should answer your question:
https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
its should be 127.0.0.1:7053
@rthatcher its poininting to 0.0.0.0:7053
i am still failing in the step composer network start command for setup of multiorg
@pavaniuppalapati what level of fabric are you running ? what level of composer are you running ?
@pavaniuppalapati what version of fabric are you running ? what version of composer are you running ?
@davidkel My fabric version 1.0.5 and composer version is 0.16.3
Hello,
I have my own architecture like this :
- one org
- 2 peers, Ca and orderer on server 1
- 1 peers on server 2.
Now I need to deploy my network (BNA), but it failed with this error :
```
/BusinessNetwork/tutorial-network$ ./deploy-bna.sh
✖ Installing runtime for business network tutorial. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Endpoint read failed
```
What should I change to make it work ?
If I have an attribute is a relationship,can I set it to null?
@ahmadzafar see example here from digital property sample applications -> https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/lib/landRegistry.js#L35
@ahmadzafar see example here from digital property sample application -> https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/lib/landRegistry.js#L35
@Jaline See "optional" : https://hyperledger.github.io/composer/reference/cto_language.html
[ ](https://chat.hyperledger.org/channel/composer?msg=PtZH6DK86PPhHNSrv)
@CorentinPacaud Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=ChhDtAaJu5Jkuxn98) @aneb
Where do you write the function testing()??
@CorentinPacaud Whether to set the property to optional ,I can set it to null in my prosess function.Such as:IN CTO document:--> SCNParticipant currentOwner;IN JS document:prodItem.currentOwner = null.
Hi
I have created fabric network with 1 orderer, 1 organisation and 4 peers. How can I integrate it with the composer now?
Hi
I have created fabric network with 1 orderer, 1 organisation and 4 peers. How can I integrate it with the composer now?
Is there any document for it? I search for this but could not find anything related to this
Well, we're always at the same level you and me @Pranoti . I have the exact same question 5 message before you :D
[ ](https://chat.hyperledger.org/channel/composer?msg=MbaadW2b6aNRiZYzT) @rthatcher can you advise anything?
@SudheerKaspa as a script file under `/scripts` in your business network
[ ](https://chat.hyperledger.org/channel/composer?msg=TCoygeehSrooqZ44b) @Jaline relationships are not enforced, but if you create the relationship field in your model as non-optional, you can't set it to null (as opposed to " " as relationships are not enforced)
@mahoney1 okay,thanks!
@argman - not enough info, are you doing a multi-org setup? sounds like you're doing a composer network ping with an old admin that's not the admin that was initially registered, (inadvertently or otherwise) so its possible you have enrolled another identity called admin - if you have the original card you created (with correct connection info), you could delete the old and import the new then try the ping (then export with credentials set for safekeeping).
@CorentinPacaud @Pranoti - we can only give general advice when you have a 'custom' network, so here are a few pointers.
1. From a Composer perspective the key is the connection.json file that you use to connect to your fabric. (If you are using TLS then you need to sort out certificates and Hostnames.)
2. From a Fabric perspective ALL your Peer containers and your orderer on all your Physical machines /VMs need to have connectivity between eachother. You will need to plan out the Address resolution and Routing, with port forwarding too. Depending on the way you have set up your machines you may find that the "extra_hosts:" feature of Docker Compose is useful. (I think that the Peers try to 'chat' with eachother on the same port number so you will need to manage any conflicts.)
3. Before putting Composer on top of your Custom Fabric we generally advise people to install the Fabric Marbles Sample network on all their peers to prove Fabric is working as expected before adding Composer. If you have problems with Fabric Marbles - please check the #fabric channel.
At this time we don't have a Multi-Machine tutorial, but one of the members of the channel has a doc for a Single Org on 2 machines:
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
[ ](https://chat.hyperledger.org/channel/composer?msg=zwLKDHqvnbT6DWsGa) @bingo1234 see here -> https://stackoverflow.com/questions/46066070/in-hyperledger-composer-what-does-a-participant-represents for an answer
[ ](https://chat.hyperledger.org/channel/composer?msg=4ys3eh3BudWHkguXq) @dpurnima0709 would ask on #fabric they will give info on the Fabric SDK
@rthatcher Thank you for your answer. In fact, I was following this tuto...
So, for now, there is no tuto on how to deploy bna on multiple Machine ?
Has left the channel.
Thanks @mahoney1 .
Is it even possible ?
[ ](https://chat.hyperledger.org/channel/composer?msg=pKKijhJ7EP26Hdr25) @mahoney1 Thanks! I'm exporting admin card before starting rest server and card is invalid. But when I export it later everything is ok. Can you explain please?
[ ](https://chat.hyperledger.org/channel/composer?msg=vanSYGANx5FKkWWcn) @CorentinPacaud - the MultiOrg (single machine) tutorial shows how to do it from a Composer perspective. So in theory if you follow that and substitute you custom Fabric details it should be fine. If you look at the docker logs for your Fabric at the time you run your composer commands you will probably see Fabric errors.
My guess would be that your containers can't 'see' each other properly.
(You may also find that you have 2 peers running on a physical machine and the Peer(s) on the other machine are trying to hit on the same Port. Perhaps trying a Fabric with just 1 peer on each physical machine might be a good place to start.)
[ ](https://chat.hyperledger.org/channel/composer?msg=BjM4CAkM7S9PfXSuh) @rthatcher Okay thanks @rthatcher At least we have something to start with.
[ ](https://chat.hyperledger.org/channel/composer?msg=BBYKgZ5abY5G4dXMq) @CorentinPacaud - Yes it is possible :-) In production you would use Tools like Kubenetes or Docker Swarm to manage all the networking and connectivity (or would work with a Hosting service) In a development environment you need to manage the networking aspects yourself.
[ ](https://chat.hyperledger.org/channel/composer?msg=KrNmmmdaHGbCaLxs5) @mahoney1 Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=XnRgwBekEr9AHFnYx) @mahoney1 Thanks. it worked
@argman - if you just export it with only the enrol secret set only ( ie you imported it but had not used the card to the BN ie to download the credentials to the wallet) - then the next use of the card will enrol again as a different id. I suspect the later export (that worked ok) was after connecting to the network with that admin card (and therefore its credentials are set). In the former case if you encounter it again that is, suggest to do a `composer network ping` (eg from CLI) with the `-c
@argman - if you just export it with only the enrol secret set only ( ie you imported it but had not used the card to the BN ie to download the credentials to the wallet) - then the next use of the card will enrol again as a different id to the Fabric CA and download a new cert. I suspect the later export (that worked ok) was after connecting to the network with that admin card (and therefore its credentials are set). In the former case if you encounter it again that is, suggest to do a `composer network ping` (eg from CLI) with the `-c
@Pranoti Hi Pranoti you said multi org in same machine is working fine.Could you able to send your docker ps -a output
[ ](https://chat.hyperledger.org/channel/composer?msg=S5HbBFYv6eE7nJhzJ) @mahoney1 Ok. Much Thanks :)
when we change something in models and update the business network in composer environment. We lost all the past data for that resource/asset. Even in historian that transaction is not opening. can we update the business network without loosing data? Please help
[ ](https://chat.hyperledger.org/channel/composer?msg=nkkR6KGWaPMJrT4tS) @pavaniuppalapati sure here it is..
running.png
Its looks like one org with 3 peers
@Pranoti
Its not multi org i guess
[ ](https://chat.hyperledger.org/channel/composer?msg=ovYjcnnDnA2WPRBXK) @pavaniuppalapati Its actually count from 0 to 3. That is how its total 4 peers. Yes its a single organisation.
[ ](https://chat.hyperledger.org/channel/composer?msg=AKoGA3kNWuoxPfFpP) @ra_w - if you add new fields to an Asset you are correct - you can no longer see the data. If you remove the field from the model - you can see the data again. If you add the new field with 'optional' then you can change the model and see the original data.
when i try to request identity from org i face this problem
```
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 139750154955648:error:1411713E:SSL routines:ssl_check_srvr_ecc_cert_and_alg:ecc cert not for signing:../deps/openssl/openssl/ssl/ssl_lib.c:2520:
139750154955648:error:14082130:SSL routines:ssl3_check_cert_and_algorithm:bad ecc cert:../deps/openssl/openssl/ssl/s3_clnt.c:3550:
]
Command failed
```
i have 3 org and 2 peer for each org
[ ](https://chat.hyperledger.org/channel/composer?msg=9vDG5Z8G3jx9GLRYJ) @nasserfci The error comes from invalid communication with your CA server most likely. So however you configured your CA server, the connection profile definition of the CA, used in the PeerAdmin card (if using single or multi-org etc) isn't correctly setup to communicate with your CA server - possible to do with using TLS (https) to communicate with the CA server in your connection profile ?
[ ](https://chat.hyperledger.org/channel/composer?msg=9vDG5Z8G3jx9GLRYJ) @nasserfci The error comes from invalid communication with your CA server most likely. So however you configured your CA server, the connection profile definition of the CA, used in the PeerAdmin card (if using that in the single or multi-org setup etc) isn't correctly setup to communicate with your CA server - possible to do with using TLS (https) to communicate with the CA server in your connection profile ?
[ ](https://chat.hyperledger.org/channel/composer?msg=9vDG5Z8G3jx9GLRYJ) @nasserfci The error comes from invalid communication with your CA server most likely. So however you configured your CA server, the connection profile definition of the CA, used in the PeerAdmin card (using that in your multi-org setup etc) isn't correctly setup to communicate with your CA server - possible to do with using TLS (https) to communicate with the CA server in your connection profile ?
[ ](https://chat.hyperledger.org/channel/composer?msg=9vDG5Z8G3jx9GLRYJ) @nasserfci - this is likely an error in the connection.json for your CA (or CAs) - check the HTTP or HTTPS settings and any certificates.
@rthatcher So, is the technology too young to handle multimachine network ? Not to blame you, but there is no tuto from A to Z to teach how to deploy a .BNA network with like 2 org, 2 peers and 2 machines like in this video ? https://www.youtube.com/watch?v=EKa5Gh9whgU
Am I trying to do something to hard for now (2 weeks already) ?
Hi.
Question on REST API:
Given this simple model:
```
asset Country identified by name {
o String name
}
Participant Person identified by id {
o String id
--> Country country
}
```
Since composer queries (.qry) cannot aggregate objects, how can I genereate an API method `getPersonFromCountry(countryName)` using Strongloop and `composer-rest-server` ?
Thanks.
Hi.
Question on REST API:
Given this simple model:
```
asset Country identified by name {
o String name
}
Participant Person identified by id {
o String id
--> Country country
}
```
Since composer queries (.qry) cannot aggregate objects, how can I generate an API method `getPersonFromCountry(countryName)` using Strongloop and `composer-rest-server` ?
Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=Qz8pH8JZaE8nhre9q) @CorentinPacaud - you are right that Hyperledger Fabric and Hyperledger Composer are new - but it is perfectly possible :-)
For Developers we (Composer team) create a simple 1 peer Fabric so you can get straight to developing/testing/experimenting with Composer.
Moving to a more complex Fabric is really a question for the #fabric channel - but there are tutorials in the Fabric documentation.
Once you have a working (proved) Fabric it is relatively easy to get Composer to use it, and we give an example in our MultiOrg tutorial.
We make the development Fabric easy - but moving beyond that there is some learning to be done for Fabric and quite often some docker (docker compose), and Networking.
So, should I ask my question in the #fabric channel ?
[ ](https://chat.hyperledger.org/channel/composer?msg=SwHcmXsfGPeJLHN3Z) @CorentinPacaud - yes - look for the errors in the Container logs and search for them in #fabric and Stack Overflow.
[ ](https://chat.hyperledger.org/channel/composer?msg=Wj37wBgge38JLY9WN) @aparolini suggest to see this Stack Overflow for guidance -> https://stackoverflow.com/questions/48722248/customizing-the-hyperledger-composer-rest-server
@aparolini on resolve/resolveAll - typically it would be something like this building a query you provided, need to check on resolved object (where relationship exists) ```/**
* Sample function
* @param {org.acme.trading.selectPatient} patients - sample
* @transaction
*/
function selectPatient(patients) {
return getParticipantRegistry('org.acme.dom.Patient')
.then(function (patientRegistry) {
// test code only
return query('selectPatient', {firstName: 'joe'} )
.then(function (results) {
var promises = [];
for (var n = 0; n < results.length; n++) {
var patient = results[n];
console.log('patient is ' + (n+1) + ', object is ' + patient);
console.log('patient identifier is ' + patient.getIdentifier());
return patientRegistry.get(patient.getIdentifier())
.then(function (patientRecord) {
console.log('object is ' + patientRecord); // all good
console.log('resolvable identifer is ' + patient.getIdentifier() );
})
return patientRegistry.resolve(patient.getIdentifier())
// return patientRegistry.resolveAll()
.then(function (resObj) {
console.log('my resolvable object is ' + resObj);
})
} // for
// we have to return all the promises
return Promise.all(promises);
}) //query
}); //participantRegistry
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=RrLyp2G2NRYqcb8ZN) @mahoney1 The example code is a transaction ( `@transaction`), so I need to rite a transaction fonction in order to implement my query ?
@mahoney1 The example code is a transaction ( `@transaction`), so I need to rite a transaction fonction in order to implement my query ?
@mahoney1 The example code is a transaction ( `@transaction`), so I need to write a transaction fonction in order to implement my query ?
@mahoney1 The example code is a transaction ( `@transaction`), so I need to write a transaction function in order to implement my query ?
@aparolini - you can do in your client app too - just an example in a TP
@aparolini - you can do in your client app too - just an example in a TP - see > https://hyperledger.github.io/composer/api/client-businessnetworkconnection#buildquery
Has joined the channel.
Hello, pls is Hyperledger a Blockchain created by IBM?
Hyperledger Fabric is a blockchain framework implementation and one of the Hyperledger projects hosted by The Linux Foundation. Intended as a foundation for developing applications or solutions with a modular architecture, Hyperledger Fabric allows components, such as consensus and membership services, to be plug-and-play. Hyperledger Fabric leverages container technology to host smart contracts called “chaincode” that comprise the application logic of the system. Hyperledger Fabric was *initially contributed by Digital Asset and IBM*, as a result of the first hackathon.
https://hyperledger.org/projects/fabric
@AwesomeT see also the full list of members who have supported or contributed to the Hyperledger projects here -> https://hyperledger.org/members
Has joined the channel.
Hello!
I'm executing *composer runtime install* and getting this error:
```
✖ Installing runtime for business network test-blockchain. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Endpoint read failed
Response from attempted peer comms was an error: Error: Endpoint read failed
Response from attempted peer comms was an error: Error: Endpoint read failed
Command failed
```
All peers are running, all necessary ports are exposed.
Hello!
I'm executing *composer runtime install* and getting this error:
```
✖ Installing runtime for business network test-blockchain. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Endpoint read failed
Response from attempted peer comms was an error: Error: Endpoint read failed
Response from attempted peer comms was an error: Error: Endpoint read failed
Command failed
```
All peers are running, all necessary ports are exposed.
I'm trying to interact with fabric network distributed across several machines.
Hello!
I'm executing *composer runtime install* and getting this error:
```
✖ Installing runtime for business network test-blockchain. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Endpoint read failed
Response from attempted peer comms was an error: Error: Endpoint read failed
Response from attempted peer comms was an error: Error: Endpoint read failed
Command failed
```
All peers are running, all necessary ports are exposed.
I'm trying to interact with fabric network distributed across several machines.
Any ideas?
fyi @here - the Community call tomorrow (Thurs) will be at 5pm UTC (5pm UK, 12pm ET, 9am PT) - Join from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-Feb-15th-2018 best regards Paul (note the revised Zoom conf id)
fyi @here - the Community call tomorrow (Thurs) will be at 5pm UTC (5pm UK, 12pm ET, 9am PT) - Join from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-February-15th-2018 best regards Paul (note the revised Zoom conf id)
[ ](https://chat.hyperledger.org/channel/composer?msg=76oWaDyHDQC9qyZtB) @krabradosty single-org/multi-org? Have you TLS enabled ? Would check your connection profile is set correct for runtime install -> https://hyperledger.github.io/composer/reference/connectionprofile.html and also see if single org on multiple machines see examples here ->https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602 and example of connection profile for composer runtime install to peers in the same org, as shown here -> https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
[ ](https://chat.hyperledger.org/channel/composer?msg=76oWaDyHDQC9qyZtB) @krabradosty single-org/multi-org? Have you TLS enabled ? Would check your connection profile is set correct for runtime install -> https://hyperledger.github.io/composer/reference/connectionprofile.html and also see isingle org on multiple machines example here ->https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602 and example of connection profile for composer runtime install to peers in the same org, as shown here -> https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
Unable to submit multiple transaction. I am receiving this error : Error: Failed to receive commit notification for transaction '968ff6e0d26d6d244b548e9ea71a0ac6df0fbb2aba712cb82b0c2ba99149c5cb' within the timeout period...
Unable to submit multiple transaction. I am receiving this error : Error: Failed to receive commit notification for transaction '968ff6e0d26d6d244b548e9ea71a0ac6df0fbb2aba712cb82b0c2ba99149c5cb' within the timeout period...
Unable to submit multiple transaction. I am receiving this error : Error: Failed to receive commit notification for transaction '968ff6e0d26d6d244b548e9ea71a0ac6df0fbb2aba712cb82b0c2ba99149c5cb' within the timeout period... After this command it is not coming back from network.. await this.bizNetworkConnection.submitTransaction(transaction);
Unable to submit multiple transaction. I am receiving this error : Error: Failed to receive commit notification for transaction '968ff6e0d26d6d244b548e9ea71a0ac6df0fbb2aba712cb82b0c2ba99149c5cb' within the timeout period... After this command it is not coming back from network.. await this.bizNetworkConnection.submitTransaction(transaction);
@mahoney1 single-org, tls enabled. Connection profile is configured correctly.
@mahoney1 single-org, tls enabled. Connection profile is configured correctly, but I will check it again. Maybe certificates are problem.
Hi all,
are acl rules applying to events ? If web socket events are activated on the rest server, everbody can connect to the web socket and read events, this is not really secured... is there a way to authenticate on the socket server ?
Issue with the @next Access Control tutorial. Specifically at Rule 3 - I'm not seeing transactions for Trader2, e.g. `tid2` in the transaction or Historian record. There is no record that the transaction from Trade1 to Trader2 took place for `tid2` but it does appear in the Asset Registry for Commodities. IOW - following the tutorial as `tid` I did in fact submit a transaction to transfer a commodity to `tid2` and it executed. The asset registry for `tid2` shows it. But the Transaction registry does not. What possibly wrong?
Issue with the @next Access Control tutorial. Specifically at Rule 3 - I'm not seeing transactions for Trader2, e.g. `tid2` in the transaction or Historian record. There is no record that the transaction from Trade1 to Trader2 took place for `tid2` but it does appear in the Asset Registry for Commodities for identity `tid2`. IOW - following the tutorial as `tid` I did in fact submit a transaction to transfer a commodity to `tid2` and it executed. The asset registry for `tid2` shows it. But the Transaction registry does not. What possibly wrong?
Issue with the @next Access Control tutorial. Specifically at Rule 3 - I'm not seeing transactions for Trader2, e.g. `tid2` in the transaction or Historian record. There is no record that the transaction from Trade1 to Trader2 took place for `tid2` but it does appear in the Asset Registry for Commodities for identity `tid2`. IOW - following the tutorial as `tid1` I did in fact submit a transaction to transfer a commodity to `tid2` and it executed. The asset registry for `tid2` shows it. But the Transaction registry does not. What possibly wrong?
Issue with the @next Access Control tutorial. Specifically at Rule 3 - I'm not seeing transactions for Trader2, e.g. `tid2` in the transaction or Historian record. There is no record that the transaction from Trade1 to Trader2 took place for `tid2` but it does appear in the Asset Registry for Commodities for identity `tid2`. IOW - following the tutorial as `tid1` I did in fact submit a transaction to transfer a commodity to `tid2` and it executed. The asset registry for `tid2` shows it. But the Transaction registry does not. What's possibly wrong?
Again, just to confirm, I did in fact submit and transfer an asset from Trader1 to Trader2, the asset registry for Trader2 now shows two assets (commodities) and the asset registry for Trader1 shows none (empty) -- but the Historian record, e.g. Transactions only reflects that Trader1 made the transfer -- it shows nothing for Trader2. Even if I change my identity to Admin, the Transaction register, e.g. Historian, shows nothing for Trader2 only activity for Trader1. What's wrong?
Again, just to confirm, I did in fact submit and transfer an asset from Trader1 to Trader2, the asset registry for Trader2 now shows two assets (commodities) and the asset registry for Trader1 shows none (empty) -- but the Historian record, e.g. Transactions, only reflects that Trader1 made the transfer -- it shows nothing for Trader2. Even if I change my identity to Admin, the Transaction register, e.g. Historian, shows nothing for Trader2 only activity for Trader1. What's wrong?
When trying to create a Regulator in the ACL tutorial for 1.1-alpha and composer 0.17.4 I get the following errors when doing this as Admin:
```Error: Error trying invoke business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: error executing chaincode: transaction returned with failure: [composerchannel-ae1e2139]Calling chaincode Invoke() returned error response [AccessException: Participant 'org.hyperledger.composer.system.NetworkAdmin#admin' does not have 'CREATE' access to resource 'org.acme.biznet.Regulator#Reg101']. Sending ERROR message back to peer```
my `permissions.acl` looks like this (as indicated in the access control tutorial:
```/**
* Access control rules for elbow-network
*/
rule R3_TradersSeeOwnHistoryOnly {
description: "Traders should be able to see the history of their own transactions only"
participant(t): "org.acme.biznet.Trader"
operation: READ
resource(v): "org.hyperledger.composer.system.HistorianRecord"
condition: (v.participantInvoking.getIdentifier() != t.getIdentifier())
action: DENY
}
rule R2_EnableTradeTxn {
description: "Enable Traders to submit transactions"
participant: "org.acme.biznet.Trader"
operation: ALL
resource: "org.acme.biznet.Trade"
action: ALLOW
}
rule R1b_TraderSeeTheirCommodities {
description: "Trader can see/work with their own Commodities"
participant(t): "org.acme.biznet.Trader"
operation: ALL
resource(c): "org.acme.biznet.Commodity"
condition: (c.owner.getIdentifier() == t.getIdentifier())
action: ALLOW
}
rule R1a_TraderSeeUpdateThemselvesOnly {
description: "Trader can see and update their own record only"
participant(t): "org.acme.biznet.Trader"
operation: READ, UPDATE
resource(v): "org.acme.biznet.Trader"
condition: (v.getIdentifier() == t.getIdentifier())
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "ANY"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
When trying to create a Regulator in the ACL tutorial for 1.1-alpha and composer 0.17.4 I get the following errors when doing this as Admin:
```Error: Error trying invoke business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: error executing chaincode: transaction returned with failure: [composerchannel-ae1e2139]Calling chaincode Invoke() returned error response [AccessException: Participant 'org.hyperledger.composer.system.NetworkAdmin#admin' does not have 'CREATE' access to resource 'org.acme.biznet.Regulator#Reg101']. Sending ERROR message back to peer```
my `permissions.acl` looks like this (as indicated in the access control tutorial:
```/**
* Access control rules for elbow-network
*/
rule R3_TradersSeeOwnHistoryOnly {
description: "Traders should be able to see the history of their own transactions only"
participant(t): "org.acme.biznet.Trader"
operation: READ
resource(v): "org.hyperledger.composer.system.HistorianRecord"
condition: (v.participantInvoking.getIdentifier() != t.getIdentifier())
action: DENY
}
rule R2_EnableTradeTxn {
description: "Enable Traders to submit transactions"
participant: "org.acme.biznet.Trader"
operation: ALL
resource: "org.acme.biznet.Trade"
action: ALLOW
}
rule R1b_TraderSeeTheirCommodities {
description: "Trader can see/work with their own Commodities"
participant(t): "org.acme.biznet.Trader"
operation: ALL
resource(c): "org.acme.biznet.Commodity"
condition: (c.owner.getIdentifier() == t.getIdentifier())
action: ALLOW
}
rule R1a_TraderSeeUpdateThemselvesOnly {
description: "Trader can see and update their own record only"
participant(t): "org.acme.biznet.Trader"
operation: READ, UPDATE
resource(v): "org.acme.biznet.Trader"
condition: (v.getIdentifier() == t.getIdentifier())
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "ANY"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
When trying to create a Regulator in the ACL tutorial for 1.1-alpha and composer 0.17.4 I get the following errors when doing this as Admin:
```Error: Error trying invoke business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: error executing chaincode: transaction returned with failure: [composerchannel-ae1e2139]Calling chaincode Invoke() returned error response [AccessException: Participant 'org.hyperledger.composer.system.NetworkAdmin#admin' does not have 'CREATE' access to resource 'org.acme.biznet.Regulator#Reg101']. Sending ERROR message back to peer```
my `permissions.acl` looks like this (as indicated in the access control tutorial:
```/**
* Access control rules for elbow-network
*/
rule R3_TradersSeeOwnHistoryOnly {
description: "Traders should be able to see the history of their own transactions only"
participant(t): "org.acme.biznet.Trader"
operation: READ
resource(v): "org.hyperledger.composer.system.HistorianRecord"
condition: (v.participantInvoking.getIdentifier() != t.getIdentifier())
action: DENY
}
rule R2_EnableTradeTxn {
description: "Enable Traders to submit transactions"
participant: "org.acme.biznet.Trader"
operation: ALL
resource: "org.acme.biznet.Trade"
action: ALLOW
}
rule R1b_TraderSeeTheirCommodities {
description: "Trader can see/work with their own Commodities"
participant(t): "org.acme.biznet.Trader"
operation: ALL
resource(c): "org.acme.biznet.Commodity"
condition: (c.owner.getIdentifier() == t.getIdentifier())
action: ALLOW
}
rule R1a_TraderSeeUpdateThemselvesOnly {
description: "Trader can see and update their own record only"
participant(t): "org.acme.biznet.Trader"
operation: READ, UPDATE
resource(v): "org.acme.biznet.Trader"
condition: (v.getIdentifier() == t.getIdentifier())
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "ANY"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
When trying to create a Regulator in the ACL tutorial for 1.1-alpha and composer 0.17.4 I get the following errors when doing this as Admin:
Error: Error trying invoke business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: error executing chaincode: transaction returned with failure: [composerchannel-ae1e2139]Calling chaincode Invoke() returned error response [AccessException: Participant 'org.hyperledger.composer.system.NetworkAdmin#admin' does not have 'CREATE' access to resource 'org.acme.biznet.Regulator#Reg101']. Sending ERROR message back to peer
```
my `permissions.acl` looks like this (as indicated in the access control tutorial:
```/**
* Access control rules for elbow-network
*/
rule R3_TradersSeeOwnHistoryOnly {
description: "Traders should be able to see the history of their own transactions only"
participant(t): "org.acme.biznet.Trader"
operation: READ
resource(v): "org.hyperledger.composer.system.HistorianRecord"
condition: (v.participantInvoking.getIdentifier() != t.getIdentifier())
action: DENY
}
rule R2_EnableTradeTxn {
description: "Enable Traders to submit transactions"
participant: "org.acme.biznet.Trader"
operation: ALL
resource: "org.acme.biznet.Trade"
action: ALLOW
}
rule R1b_TraderSeeTheirCommodities {
description: "Trader can see/work with their own Commodities"
participant(t): "org.acme.biznet.Trader"
operation: ALL
resource(c): "org.acme.biznet.Commodity"
condition: (c.owner.getIdentifier() == t.getIdentifier())
action: ALLOW
}
rule R1a_TraderSeeUpdateThemselvesOnly {
description: "Trader can see and update their own record only"
participant(t): "org.acme.biznet.Trader"
operation: READ, UPDATE
resource(v): "org.acme.biznet.Trader"
condition: (v.getIdentifier() == t.getIdentifier())
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "ANY"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
When trying to create a Regulator in the ACL tutorial for 1.1-alpha and composer 0.17.4 I get the following errors when doing this as Admin:
```Error: Error trying invoke business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: error executing chaincode: transaction returned with failure: [composerchannel-ae1e2139]Calling chaincode Invoke() returned error response [AccessException: Participant 'org.hyperledger.composer.system.NetworkAdmin#admin' does not have 'CREATE' access to resource 'org.acme.biznet.Regulator#Reg101']. Sending ERROR message back to peer
```
my `permissions.acl` looks like this (as indicated in the access control tutorial:
```/**
* Access control rules for elbow-network
*/
rule R3_TradersSeeOwnHistoryOnly {
description: "Traders should be able to see the history of their own transactions only"
participant(t): "org.acme.biznet.Trader"
operation: READ
resource(v): "org.hyperledger.composer.system.HistorianRecord"
condition: (v.participantInvoking.getIdentifier() != t.getIdentifier())
action: DENY
}
rule R2_EnableTradeTxn {
description: "Enable Traders to submit transactions"
participant: "org.acme.biznet.Trader"
operation: ALL
resource: "org.acme.biznet.Trade"
action: ALLOW
}
rule R1b_TraderSeeTheirCommodities {
description: "Trader can see/work with their own Commodities"
participant(t): "org.acme.biznet.Trader"
operation: ALL
resource(c): "org.acme.biznet.Commodity"
condition: (c.owner.getIdentifier() == t.getIdentifier())
action: ALLOW
}
rule R1a_TraderSeeUpdateThemselvesOnly {
description: "Trader can see and update their own record only"
participant(t): "org.acme.biznet.Trader"
operation: READ, UPDATE
resource(v): "org.acme.biznet.Trader"
condition: (v.getIdentifier() == t.getIdentifier())
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "ANY"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
I'm having trouble importing a card with `composer card import`. No matter how the card was created (either with the `./createPeerAdminCard.sh' or a straight `composer card create -p connection.json, etc` it breaks with this error: ```~/fabric-tools$ composer card import --file PeerAdmin@bcc-network.card
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier
Command failed```... I'm on node 6.11.2 and npm 3.10.10. I've tried reinstalling many different ways and rebuilding with the unsafe param with no success. Anyone have any ideas?
I'm having trouble importing a card with `composer card import`. No matter how the card was created (either with the `./createPeerAdminCard.sh` or a straight `composer card create -p connection.json, etc` it breaks with this error: ```~/fabric-tools$ composer card import --file PeerAdmin@bcc-network.card
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier
Command failed```... I'm on node 6.11.2 and npm 3.10.10. I've tried reinstalling many different ways and rebuilding with the unsafe param with no success. Anyone have any ideas?
any idea why the composer sample application would have broken?
https://github.com/hyperledger/composer-sample-applications
no longer seeing orders in the builder dashboard
was working a two weeks ago
"SyntaxError: Failed to parse lib/manufacturer.js: Unexpected token (22:6)"
@a.hyper node 6.11 and npm 3.10 are not supported any more. You need to be using node 8.9.4 and associated version of npm. The client code now uses capabilities only in this level of node
@conroydave Are you using the `unstable` installer by any chance ?
no
so i dug a bit deeper
and it seems like the error might be with https://www.npmjs.com/package/composer-connector-hlfv1
In node red I can see the message sent from the car builder to the manufacturer, but it errors
"Error: creating resource error Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier"
@conroydave do you know what version of the docker node-red image being used by any chance ?
latest
the install script updates all containers to latest when you run it
(which is a whole different gripe)
I'm also curious as to the other error you posted
gonna try the unstable version now
That's not going to help I don't think
it did not
:grinning:
so the real frustrating part here
is that ive had this working for like 3 months on AWS
but because of meltdown and spectre
i had to reboot the server
now, since the instantiation script calls out to updated docker containers
The problem is that we have started to exploit features of node 8 in our client side code base, but the node red docker container is still using the old lts node 6
it breaks
and I am presenting on Blockchain, and hyperledger
so since 0.16.4 was released, node-red in a docker container now won't work
tomorrow at noon
and have built demos ontop of this sample application that now fail
i tried to login to the node red container, and roll back the version of .16.4 to .3
but , also didnt work
:cry: :gun:
its gotten to the desperation point i was even messaging simon stone on linked in
which im not proud of
https://github.com/hyperledger/composer-sample-applications/issues/113
so David - you seem to have a pretty decent idea on whats going on
what would the process be for a fix
or even a hack
running node red locally outside of container? rolling back that package?
Certainly running node red locally rather than the docker container would be a solution
what would i need to do differently
kill the container, install node red
running it locally might not be available on the docker network tho
The other alternative is to go into a nodered docker container and upgrade it to node 8 and then commit a new image and then use that image
ok. im still at the office so im going to head home and take another look at it in an hour
Actually I think just grab the dockerfile from https://github.com/node-red/node-red-docker/tree/master/latest change it to use node 8 and build the image yourself
the instantiation script goes and pulls its own image
Not if you already have latest
or just change the script to point to yours
Seems there is an issue to upgrade to node 8
https://github.com/node-red/node-red-docker/issues/62
you cant change the script
it has some payload in it
that if you edit it, it fails
so frustration
so frustrating
when you clone this repo
https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-lifecycle
and run the build script
it downloads the installer script
the installer has a payload at the bottom
and if i change the file i cant save it without it erroring out
You can change it, you modify the file install.sh.in before running the build.sh file
???
ooook
alright, i see that
so then i update the install.sh.in
to use my local docker container that is running node 8
and node red?
When you clone sample-applications in the installers/hlfv1 directory you will find an install.sh.in file. If you modify that before running the build script that will do it.
got that part
so i update the install.sh.in file to use my own node red docker file
or just delete it
and configure my docker container seperately
?
i really appreciate your help, David
First remove the docker pull as you will have your own image (you can leave it in if you like though but it's overhead really). Then in the part where the node-red container is started
```
# Start Node-RED.
docker run \
-d \
--network composer_default \
--name node-red \
-v $(pwd)/.vld-card-store:/usr/src/node-red/.composer \
-e COMPOSER_BASE_URL=http://rest:3000 \
-v $(pwd)/flows.json:/data/flows.json \
-p 1880:1880 \
nodered/node-red-docker
```
change the image name at the bottom to use your image. Note that the image only exists on the machine you built it
word
thanks , this looks promising
headed to the train now, ill report back
gotta go now, good luck
@SudheerKaspa I just put the code in the lib/logic.js file.
I have a question.var prodItem = {} What does it mean here?
What does {} mean here?
[ ](https://chat.hyperledger.org/channel/composer?msg=qqdzwTa3QX288K5C8) @rthatcher Ok, thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=qqdzwTa3QX288K5C8) @rthatcher So, Hyperledger Fabric is like an Ethereum Blockchain but build/hosted by Linux Foundation is that correct?
its a blockchain for enterprise
without a native crypto currency
most implementations are going to be private
atleast for write access
Unable to submit multiple transaction. I am receiving this error : Error: Failed to receive commit notification for transaction '968ff6e0d26d6d244b548e9ea71a0ac6df0fbb2aba712cb82b0c2ba99149c5cb' within the timeout period... After this command it is not coming back from network.. await this.bizNetworkConnection.submitTransaction(transaction); Any idea??
Unable to submit multiple transaction. I am receiving this error : Error: Failed to receive commit notification for transaction '968ff6e0d26d6d244b548e9ea71a0ac6df0fbb2aba712cb82b0c2ba99149c5cb' within the timeout period... After this command it is not coming back from network.. await this.bizNetworkConnection.submitTransaction(transaction); Any idea?? Not receving promise....
Unable to submit multiple transaction. I am receiving this error : Error: Failed to receive commit notification for transaction '968ff6e0d26d6d244b548e9ea71a0ac6df0fbb2aba712cb82b0c2ba99149c5cb' within the timeout period... After this command it is not coming back from network.. await this.bizNetworkConnection.submitTransaction(transaction); Any idea?? Not receving promise.... This issue is occuring after 14 to 15 request....
Unable to submit multiple transaction. I am receiving this error : Error: Failed to receive commit notification for transaction '968ff6e0d26d6d244b548e9ea71a0ac6df0fbb2aba712cb82b0c2ba99149c5cb' within the timeout period... After this command it is not coming back from network.. await this.bizNetworkConnection.submitTransaction(transaction); Any idea?? Not receving promise.... This issue is occuring after 14 15 submitTransactions.....
hiii.when i export a business network card to another peer ....is there any need to send .bna file of the business network ..and how other peer will connect to my business network with card file .help me out and tell me how to create card file for other peer in my network....we are doing this in two physical machines
I'm trying run "composer network start" for multi org multiple machine on CentOS. It is showing network _byfn not found, $(COMPOSE_PROJECT_NAME) is empty. Can anyone help me in this?
[ ](https://chat.hyperledger.org/channel/composer?msg=3MBibwF6fYJbCaPGE) @sstone1 @rthatcher
@davidkel
Thanks,it works
But when I try to ping (step nineteen) the network I got this error, I follow this tutorial,
https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-multi-org,
pc:/tmp/composer/org1$ composer network ping -c alice@trade-network
Error: Error trying invoke business network. Error: Peer has rejected transaction '6375514f06e5010f0296d7be9a91b85f584350ba95ee87e5e9fb6041be0cd5a8' with code ENDORSEMENT_POLICY_FAILURE
Command failed
Any guidence?
thnaks.
hi @rthatcher I have one question to ask. Suppose we create this network https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine and again we deploy it to Kubenetes or Docker Swarm. Once we deploy it running it, if I want to add one peer or organisation how we can do that by keeping everything live? I guess there is tool configtxlator to do the changes with the existing network. But whether that tool can be used in this situation? Or do we have to maintain 2 servers? Or is there any better explanation or tutorial available for this?
https://www.skcript.com/svr/hyperledger-composer-nodejs-sdk-submiting-transactions/
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=9cos69qJXA9ekSWtJ) @wininani - If your Fabric is setup OK and running you do not need to copy the .bna to a second machine - you should see a 'chaincode' container running for each Peer where you want the Business Network to run. The chaincode container will have a long name e.g. dev-peer0.santes.cons.com-trade-network-0.17.2-20180123143912.
You Business Network Card should be 'portable' and you should be able use it on another machine - UNLESS you have put 'localhost' in the connection.json.
[ ](https://chat.hyperledger.org/channel/composer?msg=iGs4ejfARmM4SdnvQ) @Pranoti - you might find this document useful for configtxlator - https://www.ibm.com/developerworks/cloud/library/cl-add-an-organization-to-your-hyperledger-fabric-blockchain/index.html
[ ](https://chat.hyperledger.org/channel/composer?msg=aDHLNWLFkrH3YkiA9) @rthatcher So using this we can make changes in production environment?
[ ](https://chat.hyperledger.org/channel/composer?msg=aDHLNWLFkrH3YkiA9) @rthatcher So using this we can make changes in production environment? And will it be recorded as a transaction on blockchain world state?
[ ](https://chat.hyperledger.org/channel/composer?msg=Hzg4mbCSdQCFaH8Mh) @mahoney1 But if I implement my query as a transaction, hyperledger will record all the call as if it was a true transaction, which is not what I want. Where exactly should I but your exemple code to be accessible for the rest server as a simple query?
[ ](https://chat.hyperledger.org/channel/composer?msg=Hzg4mbCSdQCFaH8Mh) @mahoney1 But if I implement my query as a transaction, hyperledger will record all the call as if it was a true transaction, which is not what I want. Where exactly should I put your exemple code to be accessible for the rest server as a simple query?
[ ](https://chat.hyperledger.org/channel/composer?msg=Hzg4mbCSdQCFaH8Mh) @mahoney1 But if I implement my query as a transaction, hyperledger will record all the call as if it was a true transaction, which is not what I want. Where exactly should I put your exemple code to be accessible for the REST server as a simple query?
[ ](https://chat.hyperledger.org/channel/composer?msg=Hzg4mbCSdQCFaH8Mh) @mahoney1 But if I implement my query as a transaction, hyperledger will record all the calls as if it was a true transaction, which is not what I want. Where exactly should I put your exemple code to be accessible for the REST server as a simple query?
[ ](https://chat.hyperledger.org/channel/composer?msg=Hzg4mbCSdQCFaH8Mh) @mahoney1 But if I implement my query as a transaction, hyperledger will record all the calls as if it was a true transaction, which is not what I want. Where exactly should I put your exemple code to be accessible for the REST server as a simple query?
Something great would be a new annotation `@query` that we could but ahead of some functions that would appear in the named query section of the REST server
[ ](https://chat.hyperledger.org/channel/composer?msg=Hzg4mbCSdQCFaH8Mh) @mahoney1 But if I implement my query as a transaction, hyperledger will record all the calls as if it was a true transaction, which is not what I want. Where exactly should I put your exemple code to be accessible for the REST server as a simple query?
Something great would be a new annotation `@query` that we could put ahead of some functions that would appear in the named query section of the REST server
[ ](https://chat.hyperledger.org/channel/composer?msg=xRvxyEZ4XBSCGj4Lf) @tk1 - Did the composer network start command complete OK ? Are all your docker containers running? Can you show output from `docker ps`.
Hi all ,iam following the composer docs on multiple orgs , when i ping the network with alice it's working fine, but on bob case got below error ```Error: Error trying invoke business network. Error: Peer has rejected transaction '74105694451b8cb9e371d8491799beb41a8ef3631f4eb9b94ca678640cda521f' with code ENDORSEMENT_POLICY_FAILURE``` any idea ? my endorsement file is ```{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
} ```
Hi all ,iam following the composer docs on multiple orgs , when i ping the network with alice it's working fine, but on bob case got below error ```Error: Error trying invoke business network. Error: Peer has rejected transaction '74105694451b8cb9e371d8491799beb41a8ef3631f4eb9b94ca678640cda521f' with code ENDORSEMENT_POLICY_FAILURE ``` any idea ? my endorsement file is ```{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
} ```
Hi all ,iam following the composer docs on multiple orgs , when i ping the network with alice it's working fine, but on bob case got below error ``` Error: Error trying invoke business network. Error: Peer has rejected transaction '74105694451b8cb9e371d8491799beb41a8ef3631f4eb9b94ca678640cda521f' with code ENDORSEMENT_POLICY_FAILURE ``` any idea ? my endorsement file is ```{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
} ```
Hi all ,iam following the composer docs on multiple orgs , when i ping the network with alice it's working fine, but on bob case got below error ```Error: Error trying invoke business network. Error: Peer has rejected transaction '74105694451b8cb9e371d8491799beb41a8ef3631f4eb9b94ca678640cda521f' with code ENDORSEMENT_POLICY_FAILURE``` any idea ? my endorsement file is ```{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
} ```
Hi all ,iam following the composer docs on multiple orgs , when i ping the network with alice it's working fine, but on bob case got below error ``` Error: Error trying invoke business network. Error: Peer has rejected transaction '74105694451b8cb9e371d8491799beb41a8ef3631f4eb9b94ca678640cda521f' with code ENDORSEMENT_POLICY_FAILURE ```
any idea ? my endorsement file is ```{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
} ```
Hi all ,iam following the composer docs on multiple orgs , when i ping the network with alice it's working fine, but on bob case got below error
``` Error: Error trying invoke business network. Error: Peer has rejected transaction '74105694451b8cb9e371d8491799beb41a8ef3631f4eb9b94ca678640cda521f' with code ENDORSEMENT_POLICY_FAILURE ``` any idea ? my endorsement file is ```{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
} ```
Hi all ,iam following the composer docs on multiple orgs , when i ping the network with alice it's working fine, but on bob case got below error
``` Error: Error trying invoke business network. Error: Peer has rejected transaction '74105694451b8cb9e371d8491799beb41a8ef3631f4eb9b94ca678640cda521f' with code ENDORSEMENT_POLICY_FAILURE ``` any idea ? my endorsement file is ```{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
} ```
Hi all ,iam following the composer docs on multiple orgs , when i ping the network with alice it's working fine, but on bob case got below error
`Error: Error trying invoke business network. Error: Peer has rejected transaction '74105694451b8cb9e371d8491799beb41a8ef3631f4eb9b94ca678640cda521f' with code ENDORSEMENT_POLICY_FAILURE ` any idea ? my endorsement file is ```{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
} ```
[ ](https://chat.hyperledger.org/channel/composer?msg=JffpmoKmwdkWTWuZZ) @rthatcher ok thankyou for your reply fabric is running and also my business network container is running on second machine.now how to create the business card and which certificates i have to give while creating the business network card ....
[ ](https://chat.hyperledger.org/channel/composer?msg=FEj8AWwFaCNediPgQ) @rthatcher
-pc:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a94cb9f48c2e dev-peer1.org1.example.com-trade-network-0.17.4-ea282b5226e6bf4a489d057e43607efcfc0f7b246c9c40a76857a08e550a19d9 "/bin/sh -c 'cd /usr…" 2 days ago Up 2 days dev-peer1.org1.example.com-trade-network-0.17.4
067b7e14ef04 dev-peer0.org1.example.com-trade-network-0.17.4-a76af58b5058c410464bd8d784edc28b1960438e78b26aa9f83617c8ca44c68c "/bin/sh -c 'cd /usr…" 2 days ago Up 2 days dev-peer0.org1.example.com-trade-network-0.17.4
4fc21417fee4 dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab "chaincode -peer.add…" 2 days ago Up 2 days dev-peer1.org2.example.com-mycc-1.0
ead9ad8f0c12 dev-peer0.org1.example.com-mycc-1.0-384f11f484b9302df90b453200cfb25174305fce8f53f4e94d45ee3b6cab0ce9 "chaincode -peer.add…" 2 days ago Up 2 days dev-peer0.org1.example.com-mycc-1.0
f9f1f10147da dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b "chaincode -peer.add…" 2 days ago Up 2 days dev-peer0.org2.example.com-mycc-1.0
83a0a27e7283 hyperledger/fabric-peer "peer node start" 2 days ago Up 2 days 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
90a4c8a59035 hyperledger/fabric-peer "peer node start" 2 days ago Up 2 days 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
dfb0eb7ed4e9 hyperledger/fabric-peer "peer node start" 2 days ago Up 2 days 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
522255fd2111 hyperledger/fabric-peer "peer node start" 2 days ago Up 2 days 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
7261949b2f53 hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 days ago Up 2 days 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
82e5ce39c93c hyperledger/fabric-orderer "orderer" 2 days ago Up 2 days 0.0.0.0:7050->7050/tcp orderer.example.com
a52be277d5be hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 days ago Up 2 days 0.0.0.0:7054->7054/tcp ca_peerOrg1
7016a65dfdbe hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 days ago Up 2 days 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
c8addaa4e801 hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 days ago Up 2 days 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
7f16575d2bf7 hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 days ago Up 2 days 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
a54d98a2621e hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 days ago Up 2 days 0.0.0.0:8054->7054/tcp ca_peerOrg2
[ ](https://chat.hyperledger.org/channel/composer?msg=FEj8AWwFaCNediPgQ) @rthatcher - ya composer network start command and others worked well so far
I recently upgraded to Composer v0.17.4/Fabric 1.1.0-alpha. I'm using a network that I built from the "multi-organization Hyperledger Fabric deployment tutorial". My business network is a trivial asset transfer application based on the "Developer Tutorial". My business network started every time in about 30 seconds in v0.16.x/1.0.5. But, since I've upgraded, my business network starts up slowly - several minutes - and about 1/4 times, it fails to start with a timeout.
\u2716 Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
Once it is up, it works fine. But I'm wondering about the much longer startup time. Is this expected? Any ideas what may be causing the delay and occasional failures while starting the business network?
Hi again.
Please help me with building connection card in memory. My code:
```
const cardStore = new composerCommon.MemoryCardStore();
const deployerMetadata = {
"version": 1,
"userName": id,
"businessNetwork": this.networkName,
};
const deployerCard = new composerCommon.IdCard(deployerMetadata, this.connectionProfile);
deployerCard.setCredentials({privateKey, certificate});
cardStore.put(`${id}@${this.networkName}`, deployerCard);
const ownerConnection = new BusinessNetworkConnection({cardStore});
return ownerConnection.connect(`${id}@${this.networkName}`)
```
After my user has been enrolled, I delete his card and client-data (fabric credentials) from local storage. I use code above to establish connection, but always getting error:
```
Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
```
In memory card works fine, when I leave client-data (fabric credentials) in local storage and build user card just with connection profile and userName (without *deployerCard.setCredentials({privateKey, certificate});*). But I don't want to store them
Hi again.
Please help me with building connection card in memory. My code:
```
const cardStore = new composerCommon.MemoryCardStore();
const deployerMetadata = {
"version": 1,
"userName": id,
"businessNetwork": this.networkName,
};
const deployerCard = new composerCommon.IdCard(deployerMetadata, this.connectionProfile);
deployerCard.setCredentials({privateKey, certificate});
cardStore.put(`${id}@${this.networkName}`, deployerCard);
const ownerConnection = new BusinessNetworkConnection({cardStore});
return ownerConnection.connect(`${id}@${this.networkName}`)
```
After my user has been enrolled, I delete his card and client-data (fabric credentials) from local storage. I use code above to establish connection, but always getting error:
```
Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
```
In-memory card works fine, when I leave client-data (fabric credentials) in local storage and build user card just with connection profile and userName (without *deployerCard.setCredentials({privateKey, certificate});*). But I don't want to store them
Hi again.
Please help me with building connection card in memory. My code:
```
const cardStore = new composerCommon.MemoryCardStore();
const deployerMetadata = {
"version": 1,
"userName": id,
"businessNetwork": this.networkName,
};
const deployerCard = new composerCommon.IdCard(deployerMetadata, this.connectionProfile);
deployerCard.setCredentials({privateKey, certificate});
cardStore.put(`${id}@${this.networkName}`, deployerCard);
const ownerConnection = new BusinessNetworkConnection({cardStore});
return ownerConnection.connect(`${id}@${this.networkName}`)
```
After my user has been enrolled, I delete his card and client-data (fabric credentials) from local storage. I use code above to establish connection, but always getting error:
```
Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
```
In-memory card works fine, when I leave client-data (fabric credentials) in local storage and build user card just with connection profile and userName (without *deployerCard.setCredentials({privateKey, certificate});*). But I don't want to store my user's credentials
[ ](https://chat.hyperledger.org/channel/composer?msg=xztuByzorSgBkEf3D) @tk1 -you only have chaincode containers for Org1 - so for some reason they did not start on Org2 - perhaps the runtime install for org2 did not complete as expected ?
Has joined the channel.
Hi guys, quick question from me. I'm currently setting up a Boilerplate for composer and was looking for a .svg of the ComposerBlocks icon (see link) https://hyperledgercomposer.gallerycdn.vsassets.io/extensions/hyperledgercomposer/composer-support-client/0.16.2/1513355655540/Microsoft.VisualStudio.Services.Icons.Default
Does anyone know where I can find something like this?
what is the best place to learn from scratch about hyperledger fabric and composer
@Sriramj here : https://hyperledger.github.io/composer/
[ ](https://chat.hyperledger.org/channel/composer?msg=227yhsscq5Tv6Xhyx) @mabnhdev - thanks for the observations. I'm not aware if we have any official comparison performance for network start - but as you know under v0.17 we have switched to Fabric 1.1 with native NodeJS so I guess is it no surprise with these big changes that the start time is different. What we do have is unofficial testing showing that running v0.17 on 1.1 Fabric is significantly faster than v0.16 on Fabric 1.0 - so once it is started we have good news !
@aparolini - as per the link I sent -> see > https://hyperledger.github.io/composer/api/client-businessnetworkconnection#buildquery you can build the query in your client - not in your TP. eg ```const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
// blah blah
var businessNetwork = new BusinessNetworkConnection();
return businessNetwork.connect(cardName)
.then(function () {
let fname = 'joe';
let q1 = businessNetwork.buildQuery('SELECT my.org.acme.Patient ' + 'WHERE (firstName == _$name)');
return businessNetwork.query(q1,{name:fname})
})
.then(function (patients) {
patients.forEach(function (patient) {
// Process each patient.
});
})
.catch(function (error) {
// Add optional error handling here.
});```
@aparolini - as per the link I sent -> see > https://hyperledger.github.io/composer/api/client-businessnetworkconnection#buildquery you can build the query in your client - not in your TP. eg ```const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
// blah blah
var businessNetwork = new BusinessNetworkConnection();
return businessNetwork.connect(cardName)
.then(function () {
let fname = 'joe';
let q1 = businessNetwork.buildQuery('SELECT my.org.acme.Patient ' + 'WHERE (firstName == _$name)');
return businessNetwork.query(q1,{name:fname})
})
.then(function (patients) {
patients.forEach(function (patient) {
// Process each patient.
});
})
.catch(function (error) {
// Add optional error handling here.
});```
[ ](https://chat.hyperledger.org/channel/composer?msg=6GyEqn6yZiq6on35s) @rthatcher Thanks. It's not a big deal. I was just curious if anyone else was seeing the same behavior. I do agree that things do seem faster once I'm up and running. And, if the business network does manage to start, everything is working well.
@krabradosty see a working example here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L21 and also code for additional participants/identities to import in the same code -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L126
@mahoney1 I wrote my code according to this examples. Not working :frowning2:
Do you know, should certificate and privateKey strings contain prefix and postfix like:
```
-----BEGIN PRIVATE KEY-----
```
?
Yes, It's normal
I have it too, and it works
I have generated the REST API by using composer-rest-server and after I generating the rest API how to deploy the API to my domain eg: www.example.com
[ ](https://chat.hyperledger.org/channel/composer?msg=9vLMbovcksHXFrHsB) @krabradosty Embedded connection does not need real credentials ```const credentials = {
certificate: 'FAKE CERTIFICATE',
privateKey: 'FAKE PRIVATE KEY'
};
```
error.JPG
@AwesomeT you need to create an asset in VehicleListing in your playground called 'listing1' to close bidding on.
@AwesomeT you need to create an asset in VehicleListing in your playground with an identifier of 'listing1' to close bidding on.
[ ](https://chat.hyperledger.org/channel/composer?msg=tKJr3aBxB6H2bWyiw) @mahoney1 Thanks Mahoney, but I did create the asset, I followed the steps documented in the pdf file
Capture.JPG
[ ](https://chat.hyperledger.org/channel/composer?msg=tKJr3aBxB6H2bWyiw) @mahoney1 That's a screen shot of the asset created.
@AwesomeT It seems in your screenshot that the listingId you've given is just listing however in your submit transaction you have used the ID of listing1
[ ](https://chat.hyperledger.org/channel/composer?msg=4SJytQqp9swmbbPS9) @AwesomeT your listing shows an id of `listing` not `listing1`
fyi @here - reminder that the Community call is at 5pm UTC (5pm UK, 12pm ET, 9am PT) - Join from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-February-15th-2018 best regards Paul
ok, let me check it out again. I think I actually tried listing and listing1 and got same error result.
@mahoney1 But I'm trying to use in-memeory cards for real connections, not for the testing
Has joined the channel.
@krabradosty ok to a real fabric. So back to your original question - you would need to set credentials in the proper format eg `-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----` etc and then use ```const deployerCard = new IdCard(deployerMetadata, connectionProfile);
deployerCard.setCredentials(credentials);`` etc where credentials (for example) is `const credentials = {
certificate: 'certificate',
privateKey: 'key'
};``` this may also be useful as a reference. In theory using it with a real Fabric should work, but be interesting to see what's retained when you use the card you imported into the MemoryCardStore
@krabradosty ok to a real fabric. So back to your original question - you would need to set credentials in the proper format eg `-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----` etc and then use ```const deployerCard = new IdCard(deployerMetadata, connectionProfile);
deployerCard.setCredentials(credentials);`` etc where credentials (for example) is `const credentials = {
certificate: 'certificate',
privateKey: 'key'
};``` this may also be useful as a reference. In theory using it with a real Fabric should work, but be interesting to see what's retained when you use the card you imported into the MemoryCardStore - I've not tried it.
@krabradosty ok to a real fabric. So back to your original question - you would need to set credentials in the proper format eg `-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----` etc and then use ```const deployerCard = new IdCard(deployerMetadata, connectionProfile);
deployerCard.setCredentials(credentials);`` etc where credentials (for example) is `const credentials = {
certificate: 'certificate',
privateKey: 'key'
};``` this [here](https://github.com/hyperledger/composer/blob/master/packages/composer-client/test/businessnetworkconnection.js#L139) may also be useful as a reference. In theory using it with a real Fabric should work, but be interesting to see what's retained when you use the card you imported into the MemoryCardStore - I've not tried it.
Has left the channel.
anyone have any luck following https://hyperledger.github.io/composer/next/tutorials/developer-tutorial.html ? I get the following error when trying to complete composer network start...thanks
randy@randy-VirtualBox:~/tutorial-network$ composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card
Starting business network from archive: tutorial-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: test network
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for chaincode (tutorial-network:0.17.5)-open /var/hyperledger/production/chaincodes/tutorial-network.0.17.5: no such file or directory)
[ ](https://chat.hyperledger.org/channel/composer?msg=7RfNGhpoqyCQ2WzTx) i'm using composer 17.5 and fabric 1.1.0-alpha
Has joined the channel.
Has joined the channel.
is there a standard way to increase the default POST size limit for composer-rest-server? a settings file perhaps? Or do I need to edit the composer-rest-server script itself?
I get intermittent "Error: request entity too large" errors that only go away by restarting the composer rest server and retrying
Hi. I'm having some an error when trying to Enable authentication for the REST server
hi
[ ](https://chat.hyperledger.org/channel/composer?msg=Dga3oZ4nBd7NBQJQF) @rthatcher hi, here is the docker ps for org2
[ ](https://chat.hyperledger.org/channel/composer?msg=AeaC9ck4F2zv2ZzPj) docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b1aacbc37f5c dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab "chaincode -peer.add…" 2 days ago Up 2 days dev-peer1.org2.example.com-mycc-1.0
fadf36b188db dev-peer0.org1.example.com-mycc-1.0-384f11f484b9302df90b453200cfb25174305fce8f53f4e94d45ee3b6cab0ce9 "chaincode -peer.add…" 2 days ago Up 2 days dev-peer0.org1.example.com-mycc-1.0
0128da50f843 dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b "chaincode -peer.add…" 2 days ago Up 2 days dev-peer0.org2.example.com-mycc-1.0
7733de1618e5 hyperledger/fabric-peer "peer node start" 2 days ago Up 2 days 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
047c02c40922 hyperledger/fabric-peer "peer node start" 2 days ago Up 2 days 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
6a7326870fb1 hyperledger/fabric-peer "peer node start" 2 days ago Up 2 days 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
a3851b7f761e hyperledger/fabric-peer "peer node start" 2 days ago Up 2 days 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
0b96ff564bf6 hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 days ago Up 2 days 0.0.0.0:7054->7054/tcp ca_peerOrg1
44cb0db17645 hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 days ago Up 2 days 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
9c80d1717496 hyperledger/fabric-orderer "orderer" 2 days ago Up 2 days 0.0.0.0:7050->7050/tcp orderer.example.com
5ac3c8573399 hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 days ago Up 2 days 0.0.0.0:8054->7054/tcp ca_peerOrg2
06d3616d688b hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 days ago Up 2 days 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
df508a14533d hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 days ago Up 2 days 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
b128342c1799 hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 days ago Up 2 days 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
[ ](https://chat.hyperledger.org/channel/composer?msg=AeaC9ck4F2zv2ZzPj) Can you say some thing about this pls?
[ ](https://chat.hyperledger.org/channel/composer?msg=i8cnmjc2vz5JerFze) @sstone1 @rthatcher , hi can you please help me out with this, i'm still facing this issue
Has left the channel.
@sstone1 Does the node.js client application developed using composer-sdk, run on Windows ?
If yes, where should we keep the composer cards ?
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi there, noob here, I hope somebody here could help..[I'm getting these Expected a Resource or Concept error](https://stackoverflow.com/questions/48821567/simple-transaction-in-hyperledger-composer-application-yeilds-expected-a-resourc)
[ ](https://chat.hyperledger.org/channel/composer?msg=AgKkRsrYYKbN9358W) @mahoney1 @rthatcher
Hi, I started recently with Hyperledger and I have prepared a small prototype using Fabric and Composer, I found the problem of connecting with the RESTful API generated from Composer from a mobile app using AJAX requests, the problem is that the request is made but gives timeout. Does anyone know what can happen?
Thank you in advance.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=YvSkR9vNPurdGtHJh) @niroshana - Hi - You have 4 peer Containers
peer1.org1.example.com
peer0.org2.example.com
peer1.org2.example.com
peer0.org1.example.com
And yesterday when you did docker ps - it also showed 2 chaincode containers for org1 (with long names ...)
dev-peer1.org1.example.com-trade-network-0.17.4-ea2....
dev-peer0.org1.example.com-trade-network-0.17.4-a76....
There were no chaincode containers for org2 (there were also 3 x ...mycc... containers but they get created by byfn setup)
The chaincode containers should get started by the 'composer network start' command - but maybe the composer runtime install command for org2 did not complete correctly?
Do you still have the output from the 2 commands for composer runtime install, and for the composer network start?
[ ](https://chat.hyperledger.org/channel/composer?msg=DoQwHg28ZHQ8q24gm) @wininani - you will need to use command similar to those from the MultiOrg tutorial. The certificates should be in the folder crypto-config on the machine that you used to generate the crypto material.
[ ](https://chat.hyperledger.org/channel/composer?msg=kgAEFvHMGKhGcTvFX) @Nobodyme hi there, this Stack Overflow has been answered.
Hi all, I am trying to submit a transaction where I can create a SampleParticipant. To do so, I created a ModelManager by passing the string containing the contents of the .cto file: ```new ModelManager().addModelFile(modelData, modelName)```
Then I create a factory: ``` this.factory = new Factory(ModelManagerWrapper.getInstance());
``` and pass the instance of the ModelManager. Then I create the transaction: ```this.factory.newTransaction(this.composerNameSpace, TransactionType.createSampleParticipant);```
And I add a newResource: ```this.factory.newResource```. After that I submit the transaction: ```await this.businessNetworkHandler.submitTransaction(transaction);```
it gives me the following error: ```Unhandled rejection TypeError: this.$modelManager.getModelFile is not a function
at ValidatedResource.setIdentifier (/usr/src/app/node_modules/composer-common/lib/model/identifiable.js:63:46)
at Util.createTransactionId.then (/usr/src/app/node_modules/composer-client/lib/businessnetworkconnection.js:592:29)
at
Hi all, I am trying to submit a transaction where I can create a SampleParticipant. To do so, I created a ModelManager by passing the string containing the contents of the .cto file: ```new ModelManager().addModelFile(modelData, modelName)```
Then I create a factory: ```this.factory = new Factory(ModelManagerWrapper.getInstance());
``` and pass the instance of the ModelManager. Then I create the transaction: ```this.factory.newTransaction(this.composerNameSpace, TransactionType.createSampleParticipant);```
And I add a newResource: ```this.factory.newResource```. After that I submit the transaction: ```await this.businessNetworkHandler.submitTransaction(transaction);```
it gives me the following error: ```Unhandled rejection TypeError: this.$modelManager.getModelFile is not a function
at ValidatedResource.setIdentifier (/usr/src/app/node_modules/composer-common/lib/model/identifiable.js:63:46)
at Util.createTransactionId.then (/usr/src/app/node_modules/composer-client/lib/businessnetworkconnection.js:592:29)
at
Hi all, I am trying to submit a transaction where I can create a SampleParticipant. To do so, I created a ModelManager by passing the string containing the contents of the .cto file: '''new ModelManager().addModelFile(modelData, modelName)'''
Then I create a factory: ```this.factory = new Factory(ModelManagerWrapper.getInstance());
``` and pass the instance of the ModelManager. Then I create the transaction: ```this.factory.newTransaction(this.composerNameSpace, TransactionType.createSampleParticipant);```
And I add a newResource: ```this.factory.newResource```. After that I submit the transaction: ```await this.businessNetworkHandler.submitTransaction(transaction);```
it gives me the following error: ```Unhandled rejection TypeError: this.$modelManager.getModelFile is not a function
at ValidatedResource.setIdentifier (/usr/src/app/node_modules/composer-common/lib/model/identifiable.js:63:46)
at Util.createTransactionId.then (/usr/src/app/node_modules/composer-client/lib/businessnetworkconnection.js:592:29)
at
Hi all, I am trying to submit a transaction where I can create a SampleParticipant. To do so, I created a ModelManager by passing the string containing the contents of the .cto file: ```new ModelManager().addModelFile(modelData, modelName)```
Then I create a factory: ```this.factory = new Factory(ModelManagerWrapper.getInstance());
``` and pass the instance of the ModelManager. Then I create the transaction: ```this.factory.newTransaction(this.composerNameSpace, TransactionType.createSampleParticipant);```
And I add a newResource: ```this.factory.newResource```. After that I submit the transaction: ```await this.businessNetworkHandler.submitTransaction(transaction);```
it gives me the following error: ```Unhandled rejection TypeError: this.$modelManager.getModelFile is not a function
at ValidatedResource.setIdentifier (/usr/src/app/node_modules/composer-common/lib/model/identifiable.js:63:46)
at Util.createTransactionId.then (/usr/src/app/node_modules/composer-client/lib/businessnetworkconnection.js:592:29)
at
Hi all, I am trying to submit a transaction where I can create a SampleParticipant. To do so, I created a ModelManager by passing the string containing the contents of the .cto file: ``` new ModelManager().addModelFile(modelData, modelName) ```
Then I create a factory: ```this.factory = new Factory(ModelManagerWrapper.getInstance());
``` and pass the instance of the ModelManager. Then I create the transaction: ```this.factory.newTransaction(this.composerNameSpace, TransactionType.createSampleParticipant);```
And I add a newResource: ```this.factory.newResource```. After that I submit the transaction: ```await this.businessNetworkHandler.submitTransaction(transaction);```
it gives me the following error: ```Unhandled rejection TypeError: this.$modelManager.getModelFile is not a function
at ValidatedResource.setIdentifier (/usr/src/app/node_modules/composer-common/lib/model/identifiable.js:63:46)
at Util.createTransactionId.then (/usr/src/app/node_modules/composer-client/lib/businessnetworkconnection.js:592:29)
at
Hi all, I am trying to submit a transaction where I can create a SampleParticipant. To do so, I created a ModelManager by passing the string containing the contents of the .cto file: ``` ```new ModelManager().addModelFile(modelData, modelName) ```
Then I create a factory: ```this.factory = new Factory(ModelManagerWrapper.getInstance());
``` and pass the instance of the ModelManager. Then I create the transaction: ```this.factory.newTransaction(this.composerNameSpace, TransactionType.createSampleParticipant);```
And I add a newResource: ```this.factory.newResource```. After that I submit the transaction: ```await this.businessNetworkHandler.submitTransaction(transaction);```
it gives me the following error: ```Unhandled rejection TypeError: this.$modelManager.getModelFile is not a function
at ValidatedResource.setIdentifier (/usr/src/app/node_modules/composer-common/lib/model/identifiable.js:63:46)
at Util.createTransactionId.then (/usr/src/app/node_modules/composer-client/lib/businessnetworkconnection.js:592:29)
at
Hi all, I am trying to submit a transaction where I can create a SampleParticipant. To do so, I created a ModelManager by passing the string containing the contents of the .cto file: ```new ModelManager().addModelFile(modelData, modelName)```
Then I create a factory: ```this.factory = new Factory(ModelManagerWrapper.getInstance());
``` and pass the instance of the ModelManager. Then I create the transaction: ```this.factory.newTransaction(this.composerNameSpace, TransactionType.createSampleParticipant);```
And I add a newResource: ```this.factory.newResource```. After that I submit the transaction: ```await this.businessNetworkHandler.submitTransaction(transaction);```
it gives me the following error: ```Unhandled rejection TypeError: this.$modelManager.getModelFile is not a function
at ValidatedResource.setIdentifier (/usr/src/app/node_modules/composer-common/lib/model/identifiable.js:63:46)
at Util.createTransactionId.then (/usr/src/app/node_modules/composer-client/lib/businessnetworkconnection.js:592:29)
at
Hi all, I am trying to submit a transaction where I can create a SampleParticipant. To do so, I created a ModelManager by passing the string containing the contents of the .cto file: ```new ModelManager().addModelFile(modelData, modelName)```
Then I create a factory: ```this.factory = new Factory(ModelManagerWrapper.getInstance());
``` and pass the instance of the ModelManager. Then I create the transaction: ```this.factory.newTransaction(this.composerNameSpace, TransactionType.createSampleParticipant);```
And I add a newResource: ```this.factory.newResource```. After that I submit the transaction: ```await this.businessNetworkHandler.submitTransaction(transaction);```
it gives me the following error: ```Unhandled rejection TypeError: this.$modelManager.getModelFile is not a function
at ValidatedResource.setIdentifier (/usr/src/app/node_modules/composer-common/lib/model/identifiable.js:63:46)
at Util.createTransactionId.then (/usr/src/app/node_modules/composer-client/lib/businessnetworkconnection.js:592:29)
at
Hi all, I am trying to submit a transaction where I can create a SampleParticipant. To do so, I created a ModelManager by passing the string containing the contents of the .cto file: `new ModelManager().addModelFile(modelData, modelName)`
Then I create a factory: `this.factory = new Factory(ModelManagerWrapper.getInstance());
` and pass the instance of the ModelManager. Then I create the transaction: `this.factory.newTransaction(this.composerNameSpace, TransactionType.createSampleParticipant);```
And I add a newResource: ```this.factory.newResource```. After that I submit the transaction: ```await this.businessNetworkHandler.submitTransaction(transaction);```
it gives me the following error: ```Unhandled rejection TypeError: this.$modelManager.getModelFile is not a function
at ValidatedResource.setIdentifier (/usr/src/app/node_modules/composer-common/lib/model/identifiable.js:63:46)
at Util.createTransactionId.then (/usr/src/app/node_modules/composer-client/lib/businessnetworkconnection.js:592:29)
at
Hi all, I am trying to submit a transaction where I can create a SampleParticipant. To do so, I created a ModelManager by passing the string containing the contents of the .cto file: `new ModelManager().addModelFile(modelData, modelName)`
Then I create a factory: `this.factory = new Factory(ModelManagerWrapper.getInstance());` and pass the instance of the ModelManager. Then I create the transaction: `this.factory.newTransaction(this.composerNameSpace, TransactionType.createSampleParticipant);`
And I add a newResource: `this.factory.newResource`. After that I submit the transaction: `await this.businessNetworkHandler.submitTransaction(transaction);`
it gives me the following error: `Unhandled rejection TypeError: this.$modelManager.getModelFile is not a function
at ValidatedResource.setIdentifier (/usr/src/app/node_modules/composer-common/lib/model/identifiable.js:63:46)
at Util.createTransactionId.then (/usr/src/app/node_modules/composer-client/lib/businessnetworkconnection.js:592:29)
at
Hi all, I am trying to submit a transaction where I can create a SampleParticipant. To do so, I created a ModelManager by passing the string containing the contents of the .cto file: `new ModelManager().addModelFile(modelData, modelName)`
Then I create a factory: `this.factory = new Factory(ModelManagerWrapper.getInstance());` and pass the instance of the ModelManager. Then I create the transaction: `this.factory.newTransaction(this.composerNameSpace, TransactionType.createSampleParticipant);`
And I add a newResource: `this.factory.newResource`. After that I submit the transaction: `await this.businessNetworkHandler.submitTransaction(transaction);`
it gives me the following error: ```Unhandled rejection TypeError: this.$modelManager.getModelFile is not a function
at ValidatedResource.setIdentifier (/usr/src/app/node_modules/composer-common/lib/model/identifiable.js:63:46)
at Util.createTransactionId.then (/usr/src/app/node_modules/composer-client/lib/businessnetworkconnection.js:592:29)
at
Hi all, I am trying to submit a transaction where I can create a SampleParticipant. To do so, I created a ModelManager by passing the string containing the contents of the .cto file: `new ModelManager().addModelFile(modelData, modelName)`
Then I create factory: `this.factory = new Factory(ModelManagerWrapper.getInstance());` and pass the instance of the ModelManager. Then I create the transaction: `this.factory.newTransaction(this.composerNameSpace, TransactionType.createSampleParticipant);`
And I add a newResource: `this.factory.newResource`. After I submit the transaction: `await this.businessNetworkHandler.submitTransaction(transaction);`
it gives me the following error: ```Unhandled rejection TypeError: this.$modelManager.getModelFile is not a function
at ValidatedResource.setIdentifier (/usr/src/app/node_modules/composer-common/lib/model/identifiable.js:63:46)
at Util.createTransactionId.then (/usr/src/app/node_modules/composer-client/lib/businessnetworkconnection.js:592:29)
at
@jaswanth are you running multi-orgs setup on a single machine or across multiple machines? For a single machine setup - the alice card sequence is exactly the same as that for bob - would check bob's connection info but the endorsement polcy above looks fine.
@jaswanth are you running multi-orgs setup on a single machine or across multiple machines? For a single machine setup - the alice card sequence is exactly the same as that for bob - would check bob's connection info but the endorsement policy above looks fine. Also one assumes your composer runtime install for Bob's org was fine, and you have created a business network card for bob that has `/byfn-network-org2.json` as a constituent part
Has joined the channel.
Has joined the channel.
I have created 3 Org with 3 peer ( 1 peer each), 3 CAs & 1 Orderer. All these are connected on a single channel. I could able to bring this network up & running on Hyperledger Fabric. I also tested by deploying a fabric sample chaincode. It got deployed on all 3 peer with install chain code, query chain code functionality working. I configured a composer module for the same 3 Org with 3 peer admin cards and its corresponding connection profiles, endorsement policy for all 3 org as signing authority. When I deployed the composer .bna it failed with below error
⠸ Starting business network definition. This may take a minute...(node:29523) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: The event hub has not been connected to the event source
(node:29523) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): Error: The event hub has not been connected to the event source
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: The event hub has not been connected to the event source
[ ](https://chat.hyperledger.org/channel/composer?msg=FdkJbsY5T84iL59gQ) @mahoney1 iam running in a single machine , composer runtime installed succesfully , and able to create business network card .
[ ](https://chat.hyperledger.org/channel/composer?msg=FdkJbsY5T84iL59gQ) @mahoney1 iam running in a single machine , composer runtime installed succesfully , and able to create business network card . how can i solve it ?
[ ](https://chat.hyperledger.org/channel/composer?msg=FdkJbsY5T84iL59gQ) @mahoney1 iam running in a single machine , composer runtime installed succesfully , and able to create business network card . any suggestions ?
[ ](https://chat.hyperledger.org/channel/composer?msg=4fTTwwL8Jf5FGEAfw) @rthatcher I only have output of composer network start command,
pc:/tmp/composer/org1$ composer network start -c PeerAdmin@byfn-network-org1 -a trade-network@0.0.1.bna -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
Starting business network from archive: trade-network@0.0.1.bna
Business network definition:
Identifier: trade-network@0.0.1
Description: a trading network
Processing these Network Admins:
userName: alice
userName: bob
✔ Starting business network definition. This may take a minute...
Successfully created business network cards:
Filename: alice@trade-network.card
Filename: bob@trade-network.card
Command succeeded
Hi
Currently I'm working on this tutorial https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine
After executing this command 'docker exec peer0.org1.example.com peer channel create -o orderer.example.com:7050 -c channel001 -f /etc/hyperledger/configtx/composer-channel.tx'
I getting this error
' ' '2018-02-16 10:21:22.963 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2018-02-16 10:21:22.964 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2018-02-16 10:21:22.965 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized
2018-02-16 10:21:22.965 UTC [msp] GetLocalMSP -> DEBU 004 Returning existing local MSP
2018-02-16 10:21:22.965 UTC [msp] GetDefaultSigningIdentity -> DEBU 005 Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp] GetLocalMSP -> DEBU 006 Returning existing local MSP
2018-02-16 10:21:22.966 UTC [msp] GetDefaultSigningIdentity -> DEBU 007 Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 008 Sign: plaintext: 0A8C060A074F7267314D53501280062D...6D706F736572436F6E736F727469756D
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 009 Sign: digest: BAF05B786F0F0F6B762A3D214949F22698D680B14C675DB9219D78930CDA90F5
2018-02-16 10:21:22.966 UTC [msp] GetLocalMSP -> DEBU 00a Returning existing local MSP
2018-02-16 10:21:22.966 UTC [msp] GetDefaultSigningIdentity -> DEBU 00b Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp] GetLocalMSP -> DEBU 00c Returning existing local MSP
2018-02-16 10:21:22.966 UTC [msp] GetDefaultSigningIdentity -> DEBU 00d Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 00e Sign: plaintext: 0AC4060A1608021A0608A2E19AD40522...B1E6F31A8B3ED86867033236EDC5720D
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 00f Sign: digest: 7A753EB23BE56D9F5C3F7EC1D82A463B014B75E158118B5F4EEC41B6A8E4213C
Error: Got unexpected status: BAD_REQUEST
Usage:
peer channel create [flags]
Flags:
-c, --channelID string In case of a newChain command, the channel ID to create.
-f, --file string Configuration transaction file generated by a tool such as configtxgen for submitting to orderer
-t, --timeout int Channel creation timeout (default 5)
Global Flags:
--cafile string Path to file containing PEM-encoded trusted certificate(s) for the ordering endpoint
--logging-level string Default logging level and overrides, see core.yaml for full syntax
-o, --orderer string Ordering service endpoint
--test.coverprofile string Done (default "coverage.cov")
--tls Use TLS when communicating with the orderer endpoint
-v, --version Display current version of fabric peer server' ' '
I tried changing channel name twice, but its still not working.
Hi
Currently I'm working on this tutorial https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine
After executing this command docker exec peer0.org1.example.com peer channel create -o orderer.example.com:7050 -c channel001 -f /etc/hyperledger/configtx/composer-channel.tx
I getting this error
2018-02-16 10:21:22.963 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2018-02-16 10:21:22.964 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2018-02-16 10:21:22.965 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized
2018-02-16 10:21:22.965 UTC [msp] GetLocalMSP -> DEBU 004 Returning existing local MSP
2018-02-16 10:21:22.965 UTC [msp] GetDefaultSigningIdentity -> DEBU 005 Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp] GetLocalMSP -> DEBU 006 Returning existing local MSP
2018-02-16 10:21:22.966 UTC [msp] GetDefaultSigningIdentity -> DEBU 007 Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 008 Sign: plaintext: 0A8C060A074F7267314D53501280062D...6D706F736572436F6E736F727469756D
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 009 Sign: digest: BAF05B786F0F0F6B762A3D214949F22698D680B14C675DB9219D78930CDA90F5
2018-02-16 10:21:22.966 UTC [msp] GetLocalMSP -> DEBU 00a Returning existing local MSP
2018-02-16 10:21:22.966 UTC [msp] GetDefaultSigningIdentity -> DEBU 00b Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp] GetLocalMSP -> DEBU 00c Returning existing local MSP
2018-02-16 10:21:22.966 UTC [msp] GetDefaultSigningIdentity -> DEBU 00d Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 00e Sign: plaintext: 0AC4060A1608021A0608A2E19AD40522...B1E6F31A8B3ED86867033236EDC5720D
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 00f Sign: digest: 7A753EB23BE56D9F5C3F7EC1D82A463B014B75E158118B5F4EEC41B6A8E4213C
Error: Got unexpected status: BAD_REQUEST
Usage:
peer channel create [flags]
Flags:
-c, --channelID string In case of a newChain command, the channel ID to create.
-f, --file string Configuration transaction file generated by a tool such as configtxgen for submitting to orderer
-t, --timeout int Channel creation timeout (default 5)
Global Flags:
--cafile string Path to file containing PEM-encoded trusted certificate(s) for the ordering endpoint
--logging-level string Default logging level and overrides, see core.yaml for full syntax
-o, --orderer string Ordering service endpoint
--test.coverprofile string Done (default "coverage.cov")
--tls Use TLS when communicating with the orderer endpoint
-v, --version Display current version of fabric peer server
I tried changing channel name twice, but its still not working.
Hi
Currently I'm working on this tutorial https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine
After executing this command docker exec peer0.org1.example.com peer channel create -o orderer.example.com:7050 -c channel001 -f /etc/hyperledger/configtx/composer-channel.tx
I getting this error
2018-02-16 10:21:22.963 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2018-02-16 10:21:22.964 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2018-02-16 10:21:22.965 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized
2018-02-16 10:21:22.965 UTC [msp] GetLocalMSP -> DEBU 004 Returning existing local MSP
2018-02-16 10:21:22.965 UTC [msp] GetDefaultSigningIdentity -> DEBU 005 Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp] GetLocalMSP -> DEBU 006 Returning existing local MSP
2018-02-16 10:21:22.966 UTC [msp] GetDefaultSigningIdentity -> DEBU 007 Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 008 Sign: plaintext: 0A8C060A074F7267314D53501280062D...6D706F736572436F6E736F727469756D
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 009 Sign: digest: BAF05B786F0F0F6B762A3D214949F22698D680B14C675DB9219D78930CDA90F5
2018-02-16 10:21:22.966 UTC [msp] GetLocalMSP -> DEBU 00a Returning existing local MSP
2018-02-16 10:21:22.966 UTC [msp] GetDefaultSigningIdentity -> DEBU 00b Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp] GetLocalMSP -> DEBU 00c Returning existing local MSP
2018-02-16 10:21:22.966 UTC [msp] GetDefaultSigningIdentity -> DEBU 00d Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 00e Sign: plaintext: 0AC4060A1608021A0608A2E19AD40522...B1E6F31A8B3ED86867033236EDC5720D
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 00f Sign: digest: 7A753EB23BE56D9F5C3F7EC1D82A463B014B75E158118B5F4EEC41B6A8E4213C
Error: Got unexpected status: BAD_REQUEST
Usage:
peer channel create [flags]
Flags:
-c, --channelID string In case of a newChain command, the channel ID to create.
-f, --file string Configuration transaction file generated by a tool such as configtxgen for submitting to orderer
-t, --timeout int Channel creation timeout (default 5)
Global Flags:
--cafile string Path to file containing PEM-encoded trusted certificate(s) for the ordering endpoint
--logging-level string Default logging level and overrides, see core.yaml for full syntax
-o, --orderer string Ordering service endpoint
--test.coverprofile string Done (default "coverage.cov")
--tls Use TLS when communicating with the orderer endpoint
-v, --version Display current version of fabric peer server
I tried changing channel name twice, but its still not working.
Hi
Currently I'm working on this tutorial https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine
After executing this command
docker exec peer0.org1.example.com peer channel create -o orderer.example.com:7050 -c channel001 -f /etc/hyperledger/configtx/composer-channel.tx
I getting this error
2018-02-16 10:21:22.963 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2018-02-16 10:21:22.964 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2018-02-16 10:21:22.965 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized
2018-02-16 10:21:22.965 UTC [msp] GetLocalMSP -> DEBU 004 Returning existing local MSP
2018-02-16 10:21:22.965 UTC [msp] GetDefaultSigningIdentity -> DEBU 005 Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp] GetLocalMSP -> DEBU 006 Returning existing local MSP
2018-02-16 10:21:22.966 UTC [msp] GetDefaultSigningIdentity -> DEBU 007 Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 008 Sign: plaintext: 0A8C060A074F7267314D53501280062D...6D706F736572436F6E736F727469756D
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 009 Sign: digest: BAF05B786F0F0F6B762A3D214949F22698D680B14C675DB9219D78930CDA90F5
2018-02-16 10:21:22.966 UTC [msp] GetLocalMSP -> DEBU 00a Returning existing local MSP
2018-02-16 10:21:22.966 UTC [msp] GetDefaultSigningIdentity -> DEBU 00b Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp] GetLocalMSP -> DEBU 00c Returning existing local MSP
2018-02-16 10:21:22.966 UTC [msp] GetDefaultSigningIdentity -> DEBU 00d Obtaining default signing identity
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 00e Sign: plaintext: 0AC4060A1608021A0608A2E19AD40522...B1E6F31A8B3ED86867033236EDC5720D
2018-02-16 10:21:22.966 UTC [msp/identity] Sign -> DEBU 00f Sign: digest: 7A753EB23BE56D9F5C3F7EC1D82A463B014B75E158118B5F4EEC41B6A8E4213C
Error: Got unexpected status: BAD_REQUEST
Usage:
peer channel create [flags]
Flags:
-c, --channelID string In case of a newChain command, the channel ID to create.
-f, --file string Configuration transaction file generated by a tool such as configtxgen for submitting to orderer
-t, --timeout int Channel creation timeout (default 5)
Global Flags:
--cafile string Path to file containing PEM-encoded trusted certificate(s) for the ordering endpoint
--logging-level string Default logging level and overrides, see core.yaml for full syntax
-o, --orderer string Ordering service endpoint
--test.coverprofile string Done (default "coverage.cov")
--tls Use TLS when communicating with the orderer endpoint
-v, --version Display current version of fabric peer server
I tried changing channel name twice, but its still not working.
@BalajiSR would check your connection profiles - specifically `"eventURL":` - you aren't supposed to include `eventURL` for peers from 'other orgs' in the connection profile json. eg ```"peers": [
{
"requestURL": "grpcs://hostname:9051",
"eventURL": "grpcs://localhost:9053",
"hostnameOverride": "peer0.org.domain.abc",
"cert": "-----BEGIN CERTIFICATE-----\nMblahCCAfe....QNH\n3spjHtiblfJekAgO78lvGEY25Lw=\n-----END CERTIFICATE-----\n"
},
{
"requestURL": "grpcs://hostname:10051",
"eventURL": "grpcs://localhost:10053",
"hostnameOverride": "peer1.org.domain.abc",
"cert": "-----BEGIN CERTIFICATE-----\nMIICUD....NH\n3jHtiblfJekxh8lvGEY25Lw=\n-----END CERTIFICATE-----\n"
},
{
"requestURL": "grpcs://hostname:14051",
"hostnameOverride": "peer0.other.domain.abc",
"cert": "-----BEGIN CERTIFICATE-----\nMIICVssC....4nR9w==\n-----END CERTIFICATE-----\n"
},
{
"requestURL": "grpcs://hostname:15051",
"hostnameOverride": "peer1.other.domain.abc",
"cert": "-----BEGIN CERTIFICATE-----\nMIIfDT......R9w==\n-----END CERTIFICATE-----\n"
}
],```
@Pranoti - that looks like a detailed Fabric question before Composer is ever used - can you ask in the #fabric channel please.
[ ](https://chat.hyperledger.org/channel/composer?msg=qC3msMuT7NXXcgfqd) @Ricckk hi `ModelManager` is only called by Composer framework code, not a callable API. Instead you need to call BusinessNetworkConnection from a client (described more [here](https://hyperledger.github.io/composer/applications/node.html) - see adding participants (using composer-client APIs) -> https://hyperledger.github.io/composer/managing/participant-add.html also - if adding inside a transaction on the business network, you can see some sample code here `SetupDemo` here is set up as a transaction on a sample business network (Perishables) -> https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/perishable-network/lib/logic.js#L123 using the domain specific language (described here, you'll see its a lot easier to do. There are many more sample networks with similar code samples here -> https://github.com/hyperledger/composer-sample-networks hope this helps.
[ ](https://chat.hyperledger.org/channel/composer?msg=fZheLQYp5q9RwZuxa) @rthatcher Nobody answers over there..
[ ](https://chat.hyperledger.org/channel/composer?msg=PPZXLbdbsRxkP7TkE) @indira.kalagara - I don't think this is supported on Windows at this time. Certainly Windows is not a platform used during testing.
[ ](https://chat.hyperledger.org/channel/composer?msg=MzefvDrZpx3iPoPaA) @Pranoti - ah OK. Did you notice there was a specific #fabric-ca channel ? My guess is that people looking at the Fabric stuff will be in the US time zone.
[ ](https://chat.hyperledger.org/channel/composer?msg=MzefvDrZpx3iPoPaA) @Pranoti - ah OK. Did you notice there was a specific #fabric-ca channel ? My guess is that people looking at the Fabric stuff will be in the US time zone.
Maybe collecting all the details you have including config files, and putting in a Stack Overflow question tagged Hyperledger would get it sorted.
[ ](https://chat.hyperledger.org/channel/composer?msg=FNK9dTDsotaRkEdrJ) @rthatcher Ok.. i'll check there.. Thanks!!
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=5rb8EdoAf5dMzNkjB) @tk1 - I would suggest checking carefully the connection.json files used particularly looking for details on Org2. You could also look at the docker logs for the containers and see if there are errors.
[ ](https://chat.hyperledger.org/channel/composer?msg=52pPEyhaAudagSQvY) @mahoney1
I have 3 org with 3 peer and so I have created a connection profile with all 3 peers in my connection profile. I will remove the event profile for other orgs and try to deploy.
@jaswanth I would check your command history for Steps 17 and 19 in particular. Then would suggest to delete Bob's card (composer card delete) and recreate it then try your ping.again - I'm not entirely sure where you've gone wrong in your steps.
HI TEam, I am using composer version 17.5. In that i get issue while running network start command. I also used HSM in connection.json. without HSM network start command work fine. Do we need to change other setting to run this?
Error:
Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
getting this error while trying to createPeerAdminCard--> Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Can someone help ?
[ ](https://chat.hyperledger.org/channel/composer?msg=tf4zuu2NGyGwqDfds) @SuvitPatil - we have seen a couple of 'fails' with this that have been resolved just be repeating the composer network start command a couple of times! It should work with HSM - assuming all the details are correct.
Has joined the channel.
I made an asset with an optional array (so value = undefined)
Now when I invoke a transaction to edit this array, the initial value of the array has the invoker their resource string inserted. Is anyone aware of this bug?
https://github.com/hyperledger/composer/issues/3418
referring to this
I am realy confused by it!
how do I start composer runtime in version 0.16
./startFabric.sh
[ ](https://chat.hyperledger.org/channel/composer?msg=2Z54FaYgfXhX7n4Tz)
@mahoney1
I changed my connection profile and removed eventurl and it got deployed. When I checked the docker logs for the deployed composer .bna it has the below error
2018-02-16 15:18:41.392 UTC [Composer] Info -> INFO 001 Setting the Composer pool size to 8
2018-02-16 15:18:42.107 UTC [Composer] Info -> INFO 002 @JS : ModelManager :addSystemModels() [object Object]
2018-02-16 15:18:42.802 UTC [Composer] Error -> ERRO 003 @JS : Resolver :resolveRelationship() Failed to resolve relationship [object Object]
2018-02-16 15:18:42.803 UTC [Composer] Info -> INFO 004 @JS : IdentityManager :
[ ](https://chat.hyperledger.org/channel/composer?msg=knLcQixvWip5vmCzn) @Legiit hi - I think the problem is there's an error in your function - explained in comments of your issue - see what you think.
[ ](https://chat.hyperledger.org/channel/composer?msg=sA3SmgwgoGwHD5Z75) @mahoney1 Ok, but this client code wont be put automatically in the REST API using `composer-rest-server`.
I've raise two improvement requests that, to me as a newbee, would be great: https://github.com/hyperledger/composer/issues/3420 and https://github.com/hyperledger/composer/issues/3419
[ ](https://chat.hyperledger.org/channel/composer?msg=sA3SmgwgoGwHD5Z75) @mahoney1 Ok, but this client code wont be put automatically in the REST API using `composer-rest-server`.
I've raise two improvement requests that, to my point of view as a newbee, would be great: https://github.com/hyperledger/composer/issues/3420 and https://github.com/hyperledger/composer/issues/3419
[ ](https://chat.hyperledger.org/channel/composer?msg=xhXz8QbCmmzGix4zQ) @arunkarri - what version of composer do you have installed? Can you run `npm ls -g --depth=0`. Also what version of Fabric did you download?
[ ](https://chat.hyperledger.org/channel/composer?msg=PJbZjCAzvBqCuoDjT)
@mahoney1
I tried to connect from the composer playground with the card that has been created to the deployed network and I get the below error
An error has occurred
Error: ENOENT: no such file or directory, open '../xxxx/ordererOrganizations/domain.com/orderers/orderer.domain.com/tls/ca.crt.
I could see a matching path in my connection profile.
Also when I checked in the Docker logs for that peer - It has an error - 2018-02-16 15:18:46.412 UTC [eventhub_producer] Chat -> ERRO 1c6b error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
I really appreciate the quick overlook @mahoney1 !! I'll contact you Monday whether I have managed to solve the issue with my old function! But first I am going to enjoy the weekend :)
@BalajiSR on first item - your business network card (although built and imported on the command line) did not find the definition you entered for your Orderer cert path in your connection profile when you built the card - looks like you've gone one step further, on to build your own custom Fabric environment, as the tutorial specified `crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt` and that's where your problem lies. on second item from what I can tell, you've created a resource that it failed to resolve a relationship for at the time of creation, its a runtime message.
@BalajiSR on first item - your business network card (although built and imported on the command line) did not find the definition you entered for your Orderer cert path in your connection profile when you built the card - looks like you've gone one step further, on to build your own custom Fabric environment, as the tutorial specified `crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt` and that's where your problem lies. on second item from what I can tell, you've created a resource that it failed to resolve a relationship for at the time of creation, its a runtime message.
Hi while creating a transaction, I want to send a json in an error
```
throw new Error({
message: 'Shipment has already been spent'
})
```
But when I call the transaction
```
return businessNetworkConnection.getAssetRegistry(SHRIMP_NS + '.HarvestedShrimp')
.then(assetRegistry => {
return assetRegistry.get(harvestedShrimpSchema.qr);
})
.then((shrimp) => {
const factory = businessNetworkConnection.getBusinessNetwork().getFactory();
const sellShipment = factory.newTransaction(SHRIMP_NS, 'SellHarvestedShrimp')
sellShipment.invoiceNumber = 'IN-1234';
sellShipment.dateOfSale = new Date();
return businessNetworkConnection.submitTransaction(sellShipment)
})
.then((res) => {
console.log(res);
console.log(JSON.stringify(res));
})
.catch(err => {
console.log(err.message);
})
```
I expect an error to be thrown, but in the `catch` section, I am unable to parse the error object. Does the error thrown by fabric follow same structure as the native js error object, because `err.message` shows [object Object] , even `JSON.stringify(err.message)` does not work.
Has left the channel.
Does anyone have any idea why this message keeps coming up when I try to make a request from the rest api `http://localhost:3000/explorer` :
` "message": "Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'admin' and the identifier '44e3ef041fdcb6c3a04b4388a48998a75e1e3b3804e06c099e7f6c173e9fd6f8', has not been registered)",`
Sometimes it will happen and sometimes it won't and it's very frustrating because the only fix I've found is to reinstall the business network and that is becoming extremely time consuming
How do you turn off fabric? @atbe
`./stopFabric.sh && ./teardownFabric.sh` @varunagarwal
ya so that causes the CA to get deleted, which means the existing identities are not compatible with the new CA that gets created when you do `./startFabric.sh`
I regenerate the identities every time
so you can't use teardownFabric
well you mentioned you reinstall the business network and everything works fine?
you need to reinstall everything when you use `./tearDownFabric`
Right, and that includes creating my admin and a sample participant
Yes, I do reinstall everything
and business networks
got to reinstall those as well
\
`composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName msu-healthchain && composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile msu-healthchain@0.0.1.bna --file networkadmin.card && composer card import --file networkadmin.card`
that's what I run every time I tearDown, reinstall the business network, start it, then generate a participant
I also run the `./createPeerAdmin.sh` script
To save the state of composer, the identities, admin, CA and business network, do this instead
Go to the folder containing the `docker-composer.yaml` file
```
cd ~/fabric-tools/fabric-scrips/hlfv1
docker-compose stop
```
and when you want to resume work
```
cd ~/fabric-tools/fabric-scrips/hlfv1
docker-compose start
```
This way you don't need to redo everything, participants, identities, assets all are saved
I would do that if I didn't keep getting those `has not been registered` errors
even when you use docker-compose sto?
I need to figure out what the cause of that is
It won't matter if I stop the containers because I won't be able to sue the network
I had errors about identity register etc, it got solved when I used docker-composer stop instead of `./tearDownFabric'`
have you tried the command I shared?
Hi ppl, I've followed this tutorial, https://hyperledger.github.io/composer/tutorials/developer-tutorial.html, rying to get the dev environemnt set up, and everything goes smoothly up until when trying to do the network ping command with the new admin card created for the network
I keep getting this message:rror: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
I've looked at the docker logs, and it says that there is a password mismatch when trying to log with the admin card created... I'm pretty sure that the password is correct, because it'a a very simple password(same as login, duh!)
any help appreciated!
@varunagarwal I don't think `tearDownFabric.sh` is the source of my issues
@atbe But have you tried using `docker-compose stop` and `docker-compose start` ?
no, I'll try it now
so you dont do any of these commands except for the first time
```
cd ~/fabric-tools
./stopFabric.sh
./teardownFabric.sh
./downloadFabric.sh
./startFabric.sh
./createPeerAdminCard.sh
```
docker-compose start will automatically start and update fabric and all business networks you got
Okay, I'll keep that in mind
```namespace org.example.biznet
enum GoodsState {
o FOR_SALE
o SOLD
}
asset Goods identified by goodsId {
o String goodsId
o GoodsState state
o String description
--> User owner
}
participant User identified by email {
o String email
o String firstName
o String lastName
o Double balance
}
transaction Buy {
--> User user
--> Goods goods
o Double productPrice
}
transaction Sell {
--> User user
--> Goods goods
o Double sellingPrice
}
rule Member {
description: "Allow all participants read access to all resources"
participant: "org.example.biznet.User"
operation: READ
resource: "org.example.biznet.*"
action: ALLOW
}
rule OwnerHasFullAccessToTheirAssets {
description: "Allow all participants full access to their assets"
participant(p): "org.example.biznet.User"
operation: ALL
resource(r): "org.example.biznet.Goods"
condition: (r.owner.getIdentifier() === p.getIdentifier())
action: ALLOW
}
That model and this acl means only existing members can create an goods asset right?
but when,
{
"$class": "org.example.biznet.Goods",
"goodsId": "1315",
"state": "FOR_SALE",
"description": "",
"owner": "resource:org.example.biznet.User#3850"
}
Such data is passed user 3850 doesnt exist also, a good is being created, how to prevent that?
rule Member {
description: "Allow all participants read access to all resources"
participant: "org.example.biznet.User"
operation: READ
resource: "org.example.biznet.*"
action: ALLOW
}
rule OwnerHasFullAccessToTheirAssets {
description: "Allow all participants full access to their assets"
participant(p): "org.example.biznet.User"
operation: ALL
resource(r): "org.example.biznet.Goods"
condition: (r.owner.getIdentifier() === p.getIdentifier())
action: ALLOW
}
That model and this acl means only existing members can create an goods asset right?
but when,
{
"$class": "org.example.biznet.Goods",
"goodsId": "1315",
"state": "FOR_SALE",
"description": "",
"owner": "resource:org.example.biznet.User#3850"
}
Such data is passed user 3850 doesnt exist also, a good is being created, how to prevent that?
```
rule Member {
description: "Allow all participants read access to all resources"
participant: "org.example.biznet.User"
operation: READ
resource: "org.example.biznet.*"
action: ALLOW
}
rule OwnerHasFullAccessToTheirAssets {
description: "Allow all participants full access to their assets"
participant(p): "org.example.biznet.User"
operation: ALL
resource(r): "org.example.biznet.Goods"
condition: (r.owner.getIdentifier() === p.getIdentifier())
action: ALLOW
}
```
That model and this acl means only existing members can create an goods asset right?
but when,
```
{
"$class": "org.example.biznet.Goods",
"goodsId": "1315",
"state": "FOR_SALE",
"description": "",
"owner": "resource:org.example.biznet.User#3850"
}
```
Such data is passed user 3850 doesnt exist also, a good is being created, how to prevent that?
Is it possible to check and see who initiated a transaction? I want to make sure transactions are only invoked by the Participant involved so other Participants can't run transactions that modify other Participants
@varunagarwal as expected, performing a manual `docker-compose stop` and `docker-compose start` did not stop the `has not been registered` error to come up
I was able to perform a bunch of queriers to the peers from the api explorer and then all of a sudden it reports that the identity isn't registered, I really don't get this error at all, it makes no sense and isn't documented anywhere
@atbe I had the same error this morning, I toredown and restarted fabric and deleted ~/.composer and resintalled the application to fabric and created admin card once again and pinged it!
It worked. So you did all this and yet you get the same error?
@Nobodyme that's the only way I've found to get around the error *but it keeps coming back* and I want to know _why_ so I can prevent it when I go to production
And none of the core devs who probably know why that garbage is happening have responded about the issue either. I'm tempted to open an issue on Github because the behaviour is so unpredictable
I followed the steps here *step by step* https://hyperledger.github.io/composer/tutorials/developer-tutorial.html so I have a strong feeling that page is outdated
how do i access NG Live Development Server running on http://localhost:4200 remotely using my ip address.. i am not able to access it while i can access the rest server api
Is it possible to update my business network without restarting fabric?
woops, answering my own question: https://hyperledger.github.io/composer/reference/composer.network.update.html
Has anyone successfully increased the composer-rest-server POST request size limit from its default value of 102400?
Has joined the channel.
Hi, hopefully somebody here could help me with `Error: Object with ID 'Asset:org.example.biznet.User' in collection with ID '$sysregistries' does not exist` [Stackoverflow link here](https://stackoverflow.com/questions/48836448/error-object-with-id-assetorg-example-biznet-user-in-collection-with-id-sy)
Can someone please help me resolving the issue
I am getting the following error on issueing cards
composer identity issue -c admin@landsolution -f Ratan.card -u ratan -a "resource:org.nkda.transfer.Citizen#8094231455667744"
Issue identity and create Network Card for: ratan
✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
Can someone please help me resolving the issue
I am getting the following error on issueing cards
composer identity issue -c admin@landsolution -f Ratan.card -u ratan -a "resource:org.nkda.transfer.Citizen#8094231455667744"
Issue identity and create Network Card for: ratan
✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
Logs in CA:
POST /api/v1/register
Authorization: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUI4RENDQVplZ0F3SUJBZ0lVY2NyZmZFeWdISkdUd1pNa1Y1a0Y5MHlsanQ4d0NnWUlLb1pJemowRUF3SXcKY3pFTE1Ba0dBMVVFQmhNQ1ZWTXhFekFSQmdOVkJBZ1RDa05oYkdsbWIzSnVhV0V4RmpBVUJnTlZCQWNURFZOaApiaUJHY21GdVkybHpZMjh4R1RBWEJnTlZCQW9URUc5eVp6RXVaWGhoYlhCc1pTNWpiMjB4SERBYUJnTlZCQU1UCkUyTmhMbTl5WnpFdVpYaGhiWEJzWlM1amIyMHdIaGNOTVRnd01qRTJNVGd6TXpBd1doY05NVGt3TWpFMk1UZ3oKTXpBd1dqQVFNUTR3REFZRFZRUURFd1ZoWkcxcGJqQlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQQpCRzlNbEVaM1h6eWVjTTRjRWhUOHJ3T2hhVzNtdjVLcG1FUkFIMFZMN3ZUb3plR3dZUGpRMy85VDVIcVRVL1hQCkFnMjdoQmtxUGNORU9idG1FRW1KZlhTamJEQnFNQTRHQTFVZER3RUIvd1FFQXdJSGdEQU1CZ05WSFJNQkFmOEUKQWpBQU1CMEdBMVVkRGdRV0JCUWE5ZlJzR1FJQk80eUo1WnRENkppa0JXTjBzakFyQmdOVkhTTUVKREFpZ0NBWgpxMldydXdTQWZhMFM1TUNwcXFaa25uQ0dqanE5QWhlakl0aWVSK0dtcmpBS0JnZ3Foa2pPUFFRREFnTkhBREJFCkFpQWlXcUR3RElFcmNXbVRDUGlLNkVRbGZkSEF6c2M0TDZmd1hHY2x4cWhiYndJZ05xRjJJc0czbkY3LzZaZlcKUHluNjZKLzBKejdxMXI3Q0MxaGFZVHFJQWpnPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==.MEUCIQCsGMsk9TVU1bQUtzuN2KYXqMb847QoL/mrhN/YAF+zIwIgXrdKAC8za/2eHTjjGxo98CaYeqf+KFTYkq3Q5Nef7wA=
{"id":"ratan","type":"client","affiliation":"org1","max_enrollments":1,"attrs":[],"caName":"ca.org1.example.com"}
2018/02/17 01:38:17 [DEBUG] Directing traffic to CA ca.org1.example.com
2018/02/17 01:38:17 [DEBUG] Checking for revocation/expiration of certificate owned by 'admin'
2018/02/17 01:38:17 [DEBUG] DB: Get certificate by serial (71cadf7c4ca01c9193c19324579905f74ca58edf) and aki (19ab65abbb04807dad12e4c0a9aaa6649e70868e3abd0217a322d89e47e1a6ae)
2018/02/17 01:38:17 [ERROR] No certificates found for provided serial and aki
Has joined the channel.
@here anyone know how to read a history of asset ? e.g. history of value change in asset.
the getHistorian() only give me a very rough detail
so i have created a pretty simple schema. then realized i needed to add a couple of attributes to an object. yeah, simple enough to add to the .cto, tear everything down, and build it all back up again. that ok when your in a dev environment, but what's the process/documentation to modify a schema on a production environment? (we're getting ready to prod in a couple of months)
@downTheFallLine Look if this works for you, [composer network upgrade](https://hyperledger.github.io/composer/reference/composer.network.upgrade.html)
thanks. let me see if that handles the use case
Is it possible to parse `.card` files to find out what participant it belongs ot?
Is it possible to parse `.card` files to find out what participant it belongs to?
Has joined the channel.
Has joined the channel.
i ran through this command ./createPeerAdminCard.sh when i was setting up my environment by looking into composer github site. i am following error "Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1" " how to fix it?
this is my first time here. hello all
@Sriramj [Similar question on stackoverflow](https://stackoverflow.com/questions/48439634/connection-fails-error-failed-to-load-connector-module-composer-connector-und) that didnt help?
what are differences between online and offline composer playgrounds??
@here Hi, I'm very new to fabric and composer, im a bit confused about the idea of business network in composer, how is it compare to channels or is it something that is require to create a channel when using composer?
business network *definitions* get deployed to a channel. A business network archive (BNA) captures the models/logic/access control rules/queries that defines the logic that you want to run on a distributed channel architecture.
@dselman so basically you can create a hyperledger network w/o a bna? and BNA is like the chaincode and client app combined when using just a bare fabric framework w/o composer?
Not client app, no.
This might be helpful: https://www.ibm.com/developerworks/cloud/library/cl-model-test-your-blockchain-network-with-hyperledger-composer-playground/index.html
So just the chaincode? Will look into it, thanks!
This compares Fabric vs Composer on Fabric: https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/
Thanks!
@Nobodyme that didnt seem to work. I added an attribute to my model, went up one rev level in my package.json file (to 0.2.0 and eventually 0.3.0. I ran the upgrade command, and got Error: Error trying upgrade composer runtime for business network fhirblocks-network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: version already exists for chaincode with name 'fhirblocks-network')
if you pay attention to the fine print in the documentation, it mentions that "Before running the composer network upgrade command, a new version of the Hyperledger Composer runtime must have been installed to a blockchain node by using the composer runtime install command." i tried to install the runtime as suggested in the doc, and got the error "✖ Installing runtime for business network fhirblocks-network. This may take a minute...
Error: Error trying install composer runtime. Error: The Composer runtime is already installed on all the peers
Command failed" . This second error makes sense, since the runtime had indeed already been installed, and was working.
how to create a validation logic function inside ACL rules?
I have read you can do this in documentation; but there is no example.
Clipboard - February 18, 2018 6:35 PM
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hello all, I already have an application running in node.js and is fully functional. I want this app to be made in Hyperledger-Composer. What will be the process after I deploy the network?
Thanks in advance.
team, I am trying to process an array of objecjs, any idea how to do so?
this is is my model:
ordenId: string;
producto: Producto[];
ordenEstado: OrdenEsado;
cliente: Cliente;
servicer: Servicer;
actualizarEstado: string;
mensaje: string;
[ ](https://chat.hyperledger.org/channel/composer?msg=FyG4W74PuXr2PJjym) @bo2
I've had success by changing the *start* value from `ng serve` to `ng serve --host 192.168.22.225` in *package.json* and changing the *baseUrl* value from `http://localhost:4200` to `http://192.168.22.225:4200` in *protractor.conf.js* in the top-level directory of my generated Angular app (where 192.168.22.225 is my external IP address).
[ ](https://chat.hyperledger.org/channel/composer?msg=4uZzpfdMMj9vXY5om) @MuhammadSalah
I asked a similar question a few days ago and got the following links to the test code as an example.
```
yes its possible ...examples of similar rules are here -> https://github.com/hyperledger/composer/blob/master/packages/composer-tests-functional/systest/data/accesscontrols.acl#L105 and the matching script file (with ACL functions) is here for you to peruse -> https://github.com/hyperledger/composer/blob/master/packages/composer-tests-functional/systest/data/accesscontrols.js
```
Still haven't figured out what the limits are though so will check it in the source code.
I have created BNA with different transactions and logic built . I have deployed the BNA and tested it in playground. What I need is, I want one of the peer (only that peer) run a business rule and reject the transaction (based on a rule). I am testing a real use case where each peer is an organization and there is a disagreement on a transaction. How can I implement that.
Do we have a docker image equipped with composer-playground and composer-cli ?
@here Do we have a docker image equipped with composer-playground and composer-cli ?
[ ](https://chat.hyperledger.org/channel/composer?msg=qBiHFXnKgpsfkSKr2) Please reply. Thanks.
Clipboard - February 19, 2018 12:25 PM
@here I need help.. how can i run my hyperledger project in 2 or more systems?
[ ](https://chat.hyperledger.org/channel/composer?msg=craJdeWmeT5M8yZAK) @rahulkannur you can just refer this https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
Hi guys,i have a vuejs app making api calls to composer-rest-server .What would be the best way to deal with authentication in order to protect the api
[ ](https://chat.hyperledger.org/channel/composer?msg=SopWbfECZB5DtaPju) @Luke_Chen - if you go to Docker Hub (https://hub.docker.com/) and search for Hyperledger you will see those 2 images there. If you use them you will need to think about the addresses you put in your conection.json file for the Business Network Card.
[ ](https://chat.hyperledger.org/channel/composer?msg=trcLdBpNCJn7PAmFN) @punit 4 - Maybe the developer tutorial https://hyperledger.github.io/composer/tutorials/developer-tutorial.html and this doc on developing applications will help https://hyperledger.github.io/composer/applications/applications-index
[ ](https://chat.hyperledger.org/channel/composer?msg=aQmJzhToia6hauhfB) @wininani - I think that screen is for Creating a New Card. If you go to the 'My Business Networks' screen you should see a list of ards and you should be able to click the export icon.
@rthatcher I know theres are two images, if I started two containers which are composer-playground container and composer-cli container, now I create and import business network card in composer-cli container, composer-playground won't recognize there is a business network card that has been imported, am I right?
@rthatcher I know there are two images, if I started two containers which are composer-playground container and composer-cli container, now I create and import business network card in composer-cli container, composer-playground won't recognize there is a business network card that has been imported, am I right?
[ ](https://chat.hyperledger.org/channel/composer?msg=85u4C5MsKkiLiMSnP) @Luke_Chen - there are 2 issues you face when using these containers (and also the REST server as a container)
1. You potentially need to share the folder where the cards are stored - this can be done with shared volumes on the Docker Run command ` -v ~/.composer:/home/composer/.composer \ `.
2. What addresses do you put in the cards - if you use Docker Compose it manages addresses for you - but localhost in containers doesn't work.
@rthatcher aha, I am actually using the shared volumes to handle communication between cli and playground, thanks for your advices :;
:grin:@rthatcher aha, I am actually using the shared volumes to handle communication between cli and playground, thanks for your advices
@rthatcher aha, I am actually using the shared volumes to handle communication between cli and playground, thanks for your advices :grin:
[ ](https://chat.hyperledger.org/channel/composer?msg=xiSoq9EvYejP9vqrd) @rthatcher Thank you
I am having problems with the eventhub on version 1.1-alpha using composer v0.17.4
I get this errors while listening for events ```Error: Error trying invoke business network. Error: Failed to receive commit notification for transaction 'a20a89594466cd17f2cd83153c8c5458416ef8cb6f8e79013805da81785c5819' within the timeout period
at _initializeChannel.then.then.then.then.catch (/home/project/btp-apis/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:925:34)
0|btp-api- | at
Everything works fine a few minutes, then that starts happening.
Has joined the channel.
I didn't have this problem with fabric v1.0.4 and composer 0.16.3 So i am guessing its a problem with fabric v1.1-alpha. Whats the way out?
[ ](https://chat.hyperledger.org/channel/composer?msg=6qjkqBHEfDWdpMTrs) @bingo1234 - did you see this doc? https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html The REST server uses the open source Passport authentication middleware.
[ ](https://chat.hyperledger.org/channel/composer?msg=a2BLkJNRPhDFCu5mX) @pichayuthk we have a current issue open for Historian to showhistory of changes/ deltas for a particular asset - https://github.com/hyperledger/composer/issues/991 As a workaround you can do the following - so for sample network trade-network (say) - query selectTransaction{ description: "choose a specific commodity " statement: SELECT org.acme.biznet.Trade WHERE (commodity == _$commodity ) } finds all transactions of transaction Trade (that are used to update an asset) for a particular asset id (or all the Transaction types that affect that asset id) - can also add a date range if need be - so that's a query showing what changed - obviously there is an initial AddAsset transaction (see more on that here -> chat.hyperledger.org/channel/composer?msg=eZK96GouZhbAzniB2 (5:44pm 'mahoney1') - So once you've updated your network to recognise the newly added query defined in your `queries.qry` and the named query is defined in your .cto model file you can try it out
@mahoney1
I have found the issue with my code
reffering to this issue:
https://github.com/hyperledger/composer/issues/3418
I want to fetch " command: sh -c 'fabric-ca-server start --ca.certfile
[ ](https://chat.hyperledger.org/channel/composer?msg=wJoccs2nkPrJS4Goj) @rthatcher yes i want to create a card to the participant who is already a member in my multi peer system and we are doing this in different machines...and i want to access my business network from second system.what should i do now and how to create a card and that should able to interact with my network..thanx fr u r reply
[ ](https://chat.hyperledger.org/channel/composer?msg=wJoccs2nkPrJS4Goj) @rthatcher yes i want to create a card to the participant who is already a member in my multi peer system and we are doing this in different machines...and i want to access my business network from second system.what shouls i do now and how to create a card and that shouls able to interact with my network..thanx fr u r reply
Hey quick question, when building a `query`, I can do one for basic stuff like finding participants where one field is marked `true`, but how do I query actual relationships?
[ ](https://chat.hyperledger.org/channel/composer?msg=LBJMc7qKRNxtSTJFS) @Legiit see comments there -- see what I've written and see sample code there - I hope this helps you qualify any particular issue you're seeing ?
[ ](https://chat.hyperledger.org/channel/composer?msg=LBJMc7qKRNxtSTJFS) @Legiit see comments [there](https://github.com/hyperledger/composer/issues/3418) -- see what I've written and see sample code there - I hope this helps you qualify any particular issue you're seeing ?
Has joined the channel.
Hmm stays unclear,
I'm assuming it was me, mixing the use of myParam directly and through a pre-define variable (var x = myParam.x);
[ ](https://chat.hyperledger.org/channel/composer?msg=nhgRMSASmA5fa2FD9) @Legiit right you'll get the relationship object asset passed in eg myvar is `Resource {id=org.acme.trading.X#1000}`
Alright! anyways, thanks for the quick replies! It's nice to see such active members
Anyways, thanks for the quick replies! It's nice to see such active members
[ ](https://chat.hyperledger.org/channel/composer?msg=bapz7ZAu9ytNpHjKx) @Legiit you're welcome.
@mahoney1 thank you, I was thinking about using event. I still don't get about how to use your method, but i will play around and try to figure it out
[ ](https://chat.hyperledger.org/channel/composer?msg=nwpMk7DxgsuFpvjDW)
[ ](https://chat.hyperledger.org/channel/composer?msg=nwpMk7DxgsuFpvjDW) @mahoney1
I am using fabric with composer to create a small web shop.
ist it possible to create a login functionality (username + password = login)?
@waleed If you decide to use the composer REST server then you can you choose to use any passportjs implementation to your liking (in theory) as mentioned in the tutorials. If you decide to not use it, you have the freedom to do whatever you want. Build a node js server with any auth scheme to your liking and just use the composer client and admin npm packages for the actual Hyperledger fabric stuff. Of course at some point you will need to match that username and password to an identity.
@gen_el could you run your application with debug logging turned on `export DEBUG=composer:*`. it will generate a file in the composer_logs subdirectory but need to capture information from the client side first to see if there is some issue with the client side sdks.
[ ](https://chat.hyperledger.org/channel/composer?msg=ia9vsjNJXErLWRW47) @davidkel I didn't use the composer-rest-server. I built a set of rest apis using the composer-client package
[ ](https://chat.hyperledger.org/channel/composer?msg=ia9vsjNJXErLWRW47) @davidkel I didn't use the composer-rest-server. I built a set of rest apis using the composer-client package. I never had this issue in fabric v1.0.4. I am using fabric v1.1-alpha and composer 0.17.4
@gen_el I wasn't talking about the rest server either, I'm interested in debug info from the client-side sdks
[ ](https://chat.hyperledger.org/channel/composer?msg=Nmu9Aqheg9SE7L6tb) @davidkel okay.
Will get back to you on the logs
Hi @davidkel
I found this section and it seems the last line is the problem. ```[Organization.js]: Organization.const {}$
2018-02-19T14:55:01.996Z DEBUG HLFConnectionManager :fabric-client() [NetworkConfig101.js]: getPeer - name peer0.org1.company.com {}$
2018-02-19T14:55:01.997Z DEBUG HLFConnectionManager :fabric-client() [Peer.js]: Peer.const - url: grpcs://178.100.233.215:7051 timeout: 300000 {}$
2018-02-19T14:55:01.998Z DEBUG HLFConnectionManager :fabric-client() [NetworkConfig101.js]: getEventHub - name peer0.org1.company.com {}$
2018-02-19T14:55:01.998Z DEBUG HLFConnectionManager :fabric-client() [EventHub.js]: const {}$
2018-02-19T14:55:01.998Z DEBUG HLFConnectionManager :fabric-client() [EventHub.js]: setPeerAddr - grpcs://178.100.233.215:7053 {}$
2018-02-19T14:55:01.998Z DEBUG HLFConnectionManager :fabric-client() [EventHub.js]: _disconnect - start -- called due to:: EventHub has been shutdown due to new Peer address assignment {}$```
I found this section and it seems the last line is the problem. I am quite sure what happened there. ```[Organization.js]: Organization.const {}$
2018-02-19T14:55:01.996Z DEBUG HLFConnectionManager :fabric-client() [NetworkConfig101.js]: getPeer - name peer0.org1.company.com {}$
2018-02-19T14:55:01.997Z DEBUG HLFConnectionManager :fabric-client() [Peer.js]: Peer.const - url: grpcs://178.100.233.215:7051 timeout: 300000 {}$
2018-02-19T14:55:01.998Z DEBUG HLFConnectionManager :fabric-client() [NetworkConfig101.js]: getEventHub - name peer0.org1.company.com {}$
2018-02-19T14:55:01.998Z DEBUG HLFConnectionManager :fabric-client() [EventHub.js]: const {}$
2018-02-19T14:55:01.998Z DEBUG HLFConnectionManager :fabric-client() [EventHub.js]: setPeerAddr - grpcs://178.100.233.215:7053 {}$
2018-02-19T14:55:01.998Z DEBUG HLFConnectionManager :fabric-client() [EventHub.js]: _disconnect - start -- called due to:: EventHub has been shutdown due to new Peer address assignment {}$```
I found this section and it seems the last line is the problem. I am not quite sure what happened there. ```[Organization.js]: Organization.const {}$
2018-02-19T14:55:01.996Z DEBUG HLFConnectionManager :fabric-client() [NetworkConfig101.js]: getPeer - name peer0.org1.company.com {}$
2018-02-19T14:55:01.997Z DEBUG HLFConnectionManager :fabric-client() [Peer.js]: Peer.const - url: grpcs://178.100.233.215:7051 timeout: 300000 {}$
2018-02-19T14:55:01.998Z DEBUG HLFConnectionManager :fabric-client() [NetworkConfig101.js]: getEventHub - name peer0.org1.company.com {}$
2018-02-19T14:55:01.998Z DEBUG HLFConnectionManager :fabric-client() [EventHub.js]: const {}$
2018-02-19T14:55:01.998Z DEBUG HLFConnectionManager :fabric-client() [EventHub.js]: setPeerAddr - grpcs://178.100.233.215:7053 {}$
2018-02-19T14:55:01.998Z DEBUG HLFConnectionManager :fabric-client() [EventHub.js]: _disconnect - start -- called due to:: EventHub has been shutdown due to new Peer address assignment {}$```
@gen_el that debug entry from the fabric node-sdk is misleading and isn't actually an error or indicates that is what happened.
All that tells me is that an eventhub instance was created successfully and there were no problems
[ ](https://chat.hyperledger.org/channel/composer?msg=Nwt5fRfKsYFavgvuw) @davidkel I see
I need to see the logs for when the problem occurs to see if for example the fabric node-sdk actually receives an event and if it does why is doesn't propogate back into the composer code
This happens ```: registerTxEvent txid 0afd3921912bfdcd17a21d2b10bc9ff769cad181509c31b6718035d205eb81ed {}$
2018-02-19T15:40:10.382Z DEBUG HLFConnectionManager :fabric-client() [EventHub.js]: _checkConnection - start throw_error true, force_reconnect false {}$
2018-02-19T15:40:10.382Z DEBUG HLFConnectionManager :fabric-client() [Remote.js]: getUrl::grpcs://178.100.233.215:8053 {}$
2018-02-19T15:40:10.382Z DEBUG HLFConnectionManager :fabric-client() [EventHub.js]: _checkConnection - this hub grpcs://178.100.233.215:8053 is connected or trying to connect with stream channel state 2 {}$```
@davidkel Then this happens at the error point ```: unregisterTxEvent txid 0afd3921912bfdcd17a21d2b10bc9ff769cad181509c31b6718035d205eb81ed {}$
2018-02-19T15:45:10.383Z ERROR HLFConnection :invokeChainCode() {"message":"Error trying invoke business network. Error: Failed to receive commit notification for transaction '0afd3921912bfdcd17a21d2b10bc9ff769cad181509c31b6718035d205eb81ed' within the timeout period","stack":"Error: Error trying invoke business network. Error: Failed to receive commit notification for transaction '0afd3921912bfdcd17a21d2b10bc9ff769cad181509c31b6718035d205eb81ed' within the timeout period\n at _initializeChannel.then.then.then.then.catch (/home/project/btp-apis/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:925:34)\n at
@davidkel Then this happens at the error point ```2018-02-19T15:45:10.382Z DEBUG HLFConnectionManager :fabric-client() [EventHub.js]: unregisterTxEvent txid 0afd3921912bfdcd17a21d2b10bc9ff769cad181509c31b6718035d205eb81ed {}$
2018-02-19T15:45:10.383Z ERROR HLFConnection :invokeChainCode() {"message":"Error trying invoke business network. Error: Failed to receive commit notification for transaction '0afd3921912bfdcd17a21d2b10bc9ff769cad181509c31b6718035d205eb81ed' within the timeout period","stack":"Error: Error trying invoke business network. Error: Failed to receive commit notification for transaction '0afd3921912bfdcd17a21d2b10bc9ff769cad181509c31b6718035d205eb81ed' within the timeout period\n at _initializeChannel.then.then.then.then.catch (/home/project/btp-apis/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:925:34)\n at
@gen_el need to see the trace output inbetween as well
[ ](https://chat.hyperledger.org/channel/composer?msg=jWnPc54duMCw3uDQz) @davidkel Sent.
[ ](https://chat.hyperledger.org/channel/composer?msg=vLskhQmcDCrR25iKM) @rthatcher Have checked it out but am curious as to why i need a third party provider to protect the api .Have you tried using the access_token before because it doesn't show in browser localstorage
Does anyone know how to register a user? I keep getting this 500 error: `"Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'bob-jones-patient' and the identifier '04a26124157b781c627da5df30ebfd7267c176edc9403c1f70fa6156e3d671fc', has not been registered)"`
I'
I've been struggling with this issue for days
[ ](https://chat.hyperledger.org/channel/composer?msg=A7pBCbHzqSrfuHmw2) @aneb Any guide on setting up the authentication without using the composer rest-server because it seems i have rock bottom for 15hrs now.Did you use the erollment Id and secret for auth or you used another database for auth which is mapped to composer
[ ](https://chat.hyperledger.org/channel/composer?msg=mtyAty8yQMhwdqcqm) So when i restart the rest apis server it works and receives event from a while. After running for a few minutes the problem returns.
[ ](https://chat.hyperledger.org/channel/composer?msg=mtyAty8yQMhwdqcqm) @davidkel So when i restart the rest apis server it works and receives event for a while. After running for a few minutes the problem returns.
Anyone know what it means to `register` a participant?????
[ ](https://chat.hyperledger.org/channel/composer?msg=ZhNCe2JMtg3X8Zv2y) @atbe Have you taken a look at the docs ?https://hyperledger.github.io/composer//managing/participantsandidentities .Check it out ,it gives much detailed explanation
@bingo1234 I have, I'm running the REST API locally and it persists my entire session yet my cards still get hit with a 500 error every 20-30 minutes
Custom api server or the composer-rest-api server ?
composer-rest-api server
can you check this out .I was facing the same issue concerning adding new participants though i have tried the solution.https://github.com/hyperledger/composer/wiki/REST-Server
[ ](https://chat.hyperledger.org/channel/composer?msg=5dQweJ2mnLhL7ir49) @atbe can you check this out .I was facing the same issue concerning adding new participants though i have tried the solution.https://github.com/hyperledger/composer/wiki/REST-Server
[ ](https://chat.hyperledger.org/channel/composer?msg=5dQweJ2mnLhL7ir49) @atbe can you check this out .I was facing the same issue concerning adding new participants though i have tried the solution.https://github.com/hyperledger/composer/wiki/REST-Server .The second step might be your answer
@bingo1234 that page wont load
ah sorry ignore me
Hi Team! I have Hyperledger Composer running on my Port 8080 via Playground...can I leave that running or do I need to shut it down everytime? Much appreciated
@atbe The error is saying that the certificate which has a common name of `bob-jones-patient` has not been associated with a participant. Now you may have a associated an identity called `bob-jones-patient` with a participant, but the certificate used be associated with that participant is not the one you are trying to use which also has that same name. Are you using the rest server in multi-user mode ? If so maybe this issue is what you are experiencing ? https://github.com/hyperledger/composer/issues/3413
if it isn't then a step by step description of how to recreate the problem might have to be the next step
@atbe The error is saying that the certificate of the BN card you are using, which has a common name of `bob-jones-patient` has not been associated with a participant. Now you may have a associated an identity called `bob-jones-patient` with a participant, but the certificate used that was associated with that participant is not the one you are trying to use now which also has that same name. Are you using the rest server in multi-user mode ? If so maybe this issue is what you are experiencing ? https://github.com/hyperledger/composer/issues/3413
if it isn't then a step by step description of how to recreate the problem might have to be the next step
@davidkel this is most likely what's happening, I'll check my logs to make sure
Do you have a workaround?
@atbe unfortunately not, you would have to use cards that only have secrets for the moment. What version are you using ?
0.16.4, how can I add a secret when exporting a card for a new participant?
@atbe A card almost always have a secret, it's down to whether you have enrolled that identity and this used to 1 time secret to get the identity's certificate and private key.
@atbe A card almost always has a secret, it's down to whether you have enrolled that identity and this used to 1 time secret to get the identity's certificate and private key.
@atbe A card almost always has a secret (if created through issuing an identity then it definitely will), it's down to whether you have enrolled that identity and this used to 1 time secret to get the identity's certificate and private key.
@davidkel I created a participant using the client library, then I used the `composer identity issue` command to get a `.card` file for that participant to use in the composer-rest-api wallet. Is there an `enroll` step I'm missing?
I have followed the github passport policy and succefully got the access token back in my rest server
https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
But my query is if the call is from UI then How the UI provider will get back the access token and use it subsequent calls.
It is showing in Composer Rest server.. but when the actual application will run the redirection Success path URL will not be the composer rest server.
Any one have any example or link for the problem
what is the quickest way to load new permissions into a running business network (on local machine)??
is it possible to use a permission like this ` condition: (r.owner.authorizedPractitioners.indexOf(p.getIdentifier()) > -1)`
Has joined the channel.
When i run the command: "composer-playground", i get "-bash: composer-playground: command not found". How can i get around this?
[ ](https://chat.hyperledger.org/channel/composer?msg=touJPobW2HBSSu3XQ) @surenkonathala
Have you installed it? If so, the location where you installed it is probably not in your PATH which is why it isn't being found.
yes, i installed it. how can i find where it is installed, i can set it in my bash_profile
see what `npm get prefix` shows and it is probably in the `bin` directory underneath that
awesome.. yes it is. `lrwxr-xr-x 1 root staff 46 Feb 19 15:12 composer-playground -> ../lib/node_modules/composer-playground/cli.js`
@surenkonathala ok, but it looks like you installed this stuff as root, the Hyperledger Composer developers generally recommend that you do not install as root, due to potential problems down the line if you do so
@silliman works now!!! Thanks much :-)
i had troubke while installing and had to use `--unsafe-perms`
@surenkonathala what is the value of `npm get prefix` and `npm get cache`
@silliman
konathal$ npm get prefix
/Users/konathal/.np-global
konathal$ npm get cache
/Users/konathal/.npm
@surenkonathala were they always like that or did you change the prefix from something like `/usr/lib` at some point in the past?
@surenkonathala usually the problem trying to install as non-root is if your prefix is trying to use a directory such as `/usr/lib` that is not typically writeable by non-root, but in your case your current values should be writeable by what i assume is a non-root user named `konathal`
@atbe the card that results from the identity issue will only have secret in. You should then import that into your wallet. It will get enrolled when it is first used and that scenario would ensure the certificates are then stored (I assume that you are also using something like mongodb to as a persistence mechanism). You only ever want to enroll once (due to an issue with the fabric it currently allows the ability to enroll multiple times doing that will get another certificate and that certificate will NOT be the same as the one bound to the participant and so you will get the identity not registered response).
@davidkel that makes sense. At the moment, I'm using memory to persist the certs, I wonder if I can use mongodb locally
@silliman yes `konathal` is a non-root user but have admin priviliges
[ ](https://chat.hyperledger.org/channel/composer?msg=GyYhLEdFdfLCkfrEt) @surenkonathala
Ok. I've seen others use `--unsafe-perms` but ideally you should not have to use it. Was it a composer package such as composer-cli or composer-playground or composer-rest-server that required it? I think that the area where you might run into issues is if you use the Yeoman tool.
I found the answer regarding how to change the asset endpoint post body size limit. The config changes can be made here: /usr/local/lib/node_modules//composer-rest-server/server/config.json
@bingo1234
Basically I did the same thing as Composer REST server is doing, using a passport strategy, but simplified.
My node.js server acts as my REST server and uses JWT auth.
`The node.js passport part:`
I use a mongodb the store my user passports in. A passport is nothing more than a email-password-role combination.
When the user logs in, I retrieve the user passport from the mongo database, check the password and role and if OK return the token to the user for future requests. As you can see until this part it is very straightforward and has nothing to do with Composer.
`The Composer part:`
So now I have a user passport at my disposal but for Composer that passport data means absolutely nothing as it doesn't think or work in username-password combination. It wants an identity, business network card, to authenticate the user.
When you create a new BusinessNetworkConnection you will see you need to pass in a card store. If you don't pass this in I think it will use the local disk default cardstore
```
new BusinessNetworkConnection({cardStore: this.cardStore});
```
Whenever you connect to the composer network, like this `bizNetworkConnection.connect(`${cardName}`)`, the composer client will check if your card is already imported and available in the cardstore. Now obviously you probably want to store those cards in a database so you can create your own store implementation. This is very easy and straightforward. You just implement the following interface. I created one for Mongo db and uploaded it here https://github.com/ypeckstadt/hyperledger-composer/blob/master/mongoose-card-store.ts
So whenever you register a new user you just:
- register the passport data
- issue and identity for the user by `bizNetworkConnection.issueIdentity`
- import the identity card into the store by `adminConnection.importCard(userId, idCard)`
Now for every user request, when logged in, you can just do `bizNetworkConnection.connect(`${cardName}`)`, where cardname is for example the user id or email address, and execute whatever data changes or transactions you want.
So for example for POST /items when using JWT
- check if valid token with request
- create new BusinessNetworkConnection or get from pool
- connect to this BusinessNetworkConnection by passing in the userId/cardname which you get from the token which will retrieve the card from the cardstore
- from the connection get the assetRegistry for item
- registry.add() adds the item
@bingo1234
Basically I did the same thing as Composer REST server is doing, using a passport strategy, but simplified.
My node.js server acts as my REST server and uses JWT auth.
`The node.js passport part:`
I use a mongodb the store my user passports in. A passport is nothing more than a email-password-role combination.
When the user logs in, I retrieve the user passport from the mongo database, check the password and role and if OK return the token to the user for future requests. As you can see until this part it is very straightforward and has nothing to do with Composer.
`The Composer part:`
So now I have a user passport at my disposal but for Composer that passport data means absolutely nothing as it doesn't think or work in username-password combination. It wants an identity, business network card, to authenticate the user.
When you create a new BusinessNetworkConnection you will see you need to pass in a card store. If you don't pass this in I think it will use the local disk default cardstore
```
new BusinessNetworkConnection({cardStore: this.cardStore});
```
Whenever you connect to the composer network, like this `bizNetworkConnection.connect(`${cardName}`)`, the composer client will check if your card is already imported and available in the cardstore. Now obviously you probably want to store those cards in a database so you can create your own store implementation. This is very easy and straightforward. You just implement the following interface. I created one for Mongo db and uploaded it here https://github.com/ypeckstadt/hyperledger-composer/blob/master/mongoose-card-store.ts
So whenever you register a new user you just:
- register the passport data
- issue and identity for the user by `bizNetworkConnection.issueIdentity`
- import the identity card into the store by `adminConnection.importCard(userId, idCard)`
Now for every user request, when logged in, you can just do `bizNetworkConnection.connect(`${cardName}`)`, where cardname is for example the user id or email address, and execute whatever data changes or transactions you want.
So for example for POST /items when using JWT
- check if valid token with request
- create new BusinessNetworkConnection or get from pool
- connect to this BusinessNetworkConnection by passing in the userId/cardname which you get from the token which will retrieve the card from the cardstore
- from the connection get the assetRegistry for item
- registry.add() adds the item
Now as always this is just one way to do it. Maybe not the safest or the best but an easy one.
The carstore is an older version though as I modified it a bit and I am not storing my cards as a base64 string anymore but just use the Mongodb Buffer type.
The cardstore is an older version though as I modified it a bit and I am not storing my cards as a base64 string anymore but just use the Mongodb Buffer type.
Has anyone had this issue before: `nhandled error for request POST /api/wallet/import?name=MAIN: Error: There are multiple instances found.Upsert Operation will not be performed! `
I'm using couchdb for the `composer-rest-api` on localhost
my config looks like this
`
my config looks like this
`export COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "couchdb",
"host": "localhost",
"database": "test1"
}
}'`
my config looks like this
`export COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "couchdb",
"host": "localhost",
"database": "test1"
}
}'`
my config looks like this
`
export COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "couchdb",
"host": "localhost",
"database": "test1"
}
}'
`
my config looks like this
```
export COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "couchdb",
"host": "localhost",
"database": "test1"
}
}'
```
[ ](https://chat.hyperledger.org/channel/composer?msg=HEhKjPWXZAnehD2R8) @aneb let me implement this strategy.Will get back to you .Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=ka6sHRhv5Xgstw8Dm) @atbe - I assume it all works OK before you introduced couchdb as the datasource?
Is this a Port conflict? If you are using the standard Development Fabric there will be a docker container for couchdb with port forwarding set up on Port 5984, so localhost is already listening on the default couchdb port.
Any particular reason you are using Couchdb here and not Mongodb ?
Is it possible the .qry file is not imported into the playground from a BNA file?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=42i2dvyi5YhL6EKnz) @atbe yes it is possible - similar rule to that shown here in sample-networks -> https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/pii-network/permissions.acl#L33
[ ](https://chat.hyperledger.org/channel/composer?msg=dcNbN89NQW3DR5ReQ) @IronZion718 you can leave it running..
Hi Team, I am need to model a Business Network such as, a transaction will trigger an approval process for three Participants. Only after getting approval from all three Participants the asset should be moved to next stage of it life cycle. Please refer if there is any such example available..
Hi
If I want to create multiple channels and I want to install different chaincodes on different channels then is it done using composer or fabric? Or it can be done in both ways? I have created blockchain with 1 organization and 4 peers. Now I want to add channels and install chaincodes, then I guess I'll have to do it in fabric only.. Am I right??
Hi
If I want to create multiple channels and I want to install different chaincodes on different channels then is it done using composer or fabric? Or it can be done in both ways? I have created blockchain with 1 organization and 4 peers. Now I want to add channels and install chaincodes, then I guess I'll have to do it in fabric only.. Am I right?? (though I have not yet successfully integrated my fabric network with composer yet!! Is there any update on how to do it? any documentation on that yet??)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=kPJKkTbrpmB3yfQdN) @HendryRenald something like: each of the 3 participants (3 of n) submit a transaction, approving as part of a multi-stage approval. You then have 3 approvals recorded on the blockchain for the same asset id. The last approver's transaction (based on a read of a count field in the asset record in the assetRegistry) - on submitting the 3rd approval - updates the asset and resets the count to 0 (maybe also updates its approval status to 'APPROVED' etc) and immediately emits an APPROVED event back to your calling application with the asset ID and status to proceed to the next stage of your lifecycle. https://hyperledger.github.io/composer/business-network/publishing-events.html . The event would only be emitted (on approval 3) if that update was successful.
[ ](https://chat.hyperledger.org/channel/composer?msg=qYzfsW9Ej3fQbpHKr) @Pranoti Channels are configured in Fabric yes. But once you have your multi-channel Fabric up and running, and tested with sample Fabric chaincode, you then use Composer to deploy your business networks, on the channels you desire (party A and party B are on this channel only etc etc). . To do that, you will need the Composer connection profile information (to build your Composer business network cards, which allow you to connect to a runtime business network) deployed on a particular Fabric channel) that is configured for the channel/ledger upon which the business network will be deployed. See https://hyperledger.github.io/composer/reference/connectionprofile.html
@here FYI - the Community call tomorrow (Weds) will be at 10am UTC (10am UK, 2:30pm IST, 5pm CST) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming, best regards Paul
Has joined the channel.
Hello i was tring to emit event but i faced this error :
```
Error: Peer has rejected transaction ' with code ENDORSEMENT_POLICY_FAILURE
```
Has joined the channel.
Has joined the channel.
Hi, @here . Could anyone help me? I want to install my composer network into specific fabric network. Now i'm getting this error.
``` composer runtime install -c PeerAdmin@byfn-network-org2-only -n hc-network
✖ Installing runtime for business network hc-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
I think that means that composer hasn't found my network. What should i do to fix that?
@zasamen connection profile?
Hi. I'm trying to use a connection profile that I already use with my Node SDK. In it i have set a organization.{someorg}.adminPrivateKey.path variable, but I get an error response that organization.{someorg}.adminPrivateKey.pem variable should be defined. Sure I could go and fix the private key to pem value but I think it would be nice to have an option to let it be specified with its path.
@vsadriano Each? (4)
for example
``` {
"name": "byfn-network-org1",
"type": "hlfv1",
"mspID": "Org1MSP",
"peers": [
{
"requestURL": "grpcs://peer.blockchain.iba:7051",
"eventURL": "grpcs://peer.blockchain.iba:7053",
"cert": "crypto-config/peerOrganizations/blockchain.iba/peers/peer.blockchain.iba/tls/ca.crt",
"hostnameOverride": "peer.blockchain.iba"
},
{
"requestURL": "grpcs://peer.blockchain-clone.iba:7051",
"cert": "crypto-config/peerOrganizations/blockchain-clone.iba/peers/peer.blockchain-clone.iba/tls/ca.crt",
"hostnameOverride": "peer.blockchain-clone.iba"
}
],
"ca": {
"url": "https://ca.blockchain.iba:7054",
"name": "ca-org1",
"cert": "crypto-config/peerOrganizations/blockchain.iba/peers/peer.blockchain.iba/tls/ca.crt",
"hostnameOverride": "ca.blockchain.iba"
},
"orderers": [
{
"url" : "grpcs://orderer.blockchain.iba:7050",
"cert": "crypto-config/ordererOrganizations/blockchain.iba/orderers/orderer.blockchain.iba/tls/ca.crt",
"hostnameOverride": "orderer.blockchain.iba"
}
],
"channel": "cchannel",
"timeout": 300
}```
Ok. Ok. What's the status of docker containers?
All Up?
Clipboard - February 20, 2018 4:43 PM
Clipboard - February 20, 2018 4:44 PM
@zasamen Also if you are running the docker on your localhost machine. you might want to changes the Ips with local host.
ex:
```
"requestURL": "grpcs://peer.blockchain.iba:7051",
"eventURL": "grpcs://peer.blockchain.iba:7053",
```
to
```
"requestURL": "grpcs://localhost:7051",
"eventURL": "grpcs://localhost:7053",
```
in all the places
@zasamen Also if you are running the docker on your localhost machine. you might want to change all the host names with local host.
ex:
```
"requestURL": "grpcs://peer.blockchain.iba:7051",
"eventURL": "grpcs://peer.blockchain.iba:7053",
```
to
```
"requestURL": "grpcs://localhost:7051",
"eventURL": "grpcs://localhost:7053",
```
in all the places
@vsadriano yup
:point_up_2:
[ ](https://chat.hyperledger.org/channel/composer?msg=zRbDcuca6kPoGwkQr) @Ratnakar Why so? it is easier understand "what host is it? " when i use specific host names.
Does this `peer.blockchain.iba` host name exits ? can you ping `peer.blockchain.iba` from your machine where app is running ?
incase if you are multiple hosts to launch your network , you would want to replace it with host IP
incase if you are using multiple hosts to launch your network , you would want to replace it with host IP
Clipboard - February 20, 2018 4:50 PM
Clipboard - February 20, 2018 4:51 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=bih34MxHwMxwHBmNe) @Ratnakar No i don't in cause it is more verbose to use hostnames
[ ](https://chat.hyperledger.org/channel/composer?msg=bih34MxHwMxwHBmNe) @Ratnakar i wouldn't because it is more verbose to use hostnames
Hello i was tring to emit event but i faced this error :
```
Error: Error trying invoke business network. Error: Peer has rejected transaction 'ab242ad97438f75c41547afc10a999768f0487c195f256c4ac52fc092f825262' with code ENDORSEMENT_POLICY_FAILURE
```
Clipboard - February 20, 2018 4:55 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=ktHDiegikSk4pNJpa) @vsadriano What does it mean?
[ ](https://chat.hyperledger.org/channel/composer?msg=5y4LmkXj2xgCbWEFL) @mahoney1 Okay.. Is chaincode.go in fabric is a generalised? Can we implement chaincode/smart-contract in composer using js?? Will it work?
Hi, Im trying tot install hyperledger composer runtime on a azure peer node, does someone know how to do that?
Has joined the channel.
HI, composer network ping admin is throwing up an error
crypto/bcrypt: hashedPassword is not the hash of the given password
Any idea what could be the issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=xkccBintACK3vQbas) can any one help me because i can't fix it
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=5y4LmkXj2xgCbWEFL) Hi @mahoney1 the referenced composer profile doc refers to fabric 1.0 -- does this also apply exactly to 1.1-alpha?
@Pranoti Composer's transaction processor functions are written in javascript - see -> https://hyperledger.github.io/composer/reference/js_scripts
[ ](https://chat.hyperledger.org/channel/composer?msg=2fdPjKY9fbwknbJzY) @CT123 - the doc for Composer v0.17.x (usingFabric 1.1Alpha) has an extra /next in it:
https://hyperledger.github.io/composer/next/reference/connectionprofile
[ ](https://chat.hyperledger.org/channel/composer?msg=rWJv4QPRSJCv4oFza) @nasserfci - How many Peers do you have (how many Orgs do you have) - perhaps one of them is unavailable? Does your connection.json file have an entry for the eventUrl ?
[ ](https://chat.hyperledger.org/channel/composer?msg=PRsaBfmqoeXiML95N) @jv_400 - are you seeing this on the command line or via the REST server? How did you create the card? What steps did you take just before the error ?
[ ](https://chat.hyperledger.org/channel/composer?msg=LxmcrRwscnm5DaRDf) @berndoostrum - that is not a platform we test. What version of Fabric is running on Azure? This will determine what version of Composer you need to run. When you know the versions you require I would point you to the MultiOrg Tutorial for that version which shows how to build up a connection profile and business network card for the Fabric and the Crypto material you have.
[ ](https://chat.hyperledger.org/channel/composer?msg=LxmcrRwscnm5DaRDf) @berndoostrum - that is not a platform we test. What version of Fabric is running on Azure? This will determine what version of Composer you need to run. When you know the versions you require I would point you to the MultiOrg Tutorial for that version which shows how to build up a connection profile and business network card for the Fabric and the Crypto material you have.
See Microsoft support or forum for more information:
https://support.microsoft.com/en-us or https://social.msdn.microsoft.com/Forums/en-US/home?forum=azureblockchain
[ ](https://chat.hyperledger.org/channel/composer?msg=2FQ7fZy5xRxyTe65w) @rthatcher no the problem happen when i make asset with two participant as relation i don't know why
[ ](https://chat.hyperledger.org/channel/composer?msg=bXgEWjj6o2LALKakP) @nasserfci -OK - perhaps you have some non-deterministic code in your TP function - i.e. producing a different value when executed on more than one peer? Can you post your Model and TP function here?
[ ](https://chat.hyperledger.org/channel/composer?msg=kE68NXFAHrHDys5fJ) @rthatcher
```
transaction RequestRawMaterial {
-->Supplier supplier
-->Manufacture manufacture
o Long quantity
}
```
@nasserfci TP function code rather than model eg. if you're using `var x = new Date();` etc etc
[ ](https://chat.hyperledger.org/channel/composer?msg=gwkFfnzJmRg4iR9kL) @mahoney1 i couldn't get it because i change the code but the scenario is that i issue identity for manufacture and use it to make transaction requst raw material
Has joined the channel.
i think the problem is that i am trying to edit on the current participant
I'm at the Hyperledger Hackfest in LA and just wanted to post a new project built on Composer https://supersonicc.com. It's like Soundcloud on blockchain. Love the work the composer team has done!
[ ](https://chat.hyperledger.org/channel/composer?msg=kE68NXFAHrHDys5fJ) @rthatcher @mahoney1
now i face the same problem my logic
```
/**
* register new raw mterial.
* @param {org.participant.manufacturer.RequestRawMaterial} tx
* @transaction
*/
function requestRawMaterial(tx) {
var i = 0, quantity = 0;
var arrayToUpdate = [];
while(i < tx.supplier.rawMaterials.length && quantity < tx.quantity){
if (tx.supplier.rawMaterials[i].materialStatus === "AVALIABLE" ||
tx.supplier.rawMaterials[i].materialStatus === undefined){
tx.supplier.rawMaterials[i].materialStatus = "REQUESTED";
arrayToUpdate.push(tx.supplier.rawMaterials[i]);
quantity = quantity + 1;
}
i++;
}
if (quantity != tx.quantity) {
throw new BaseFileException("No avaliable number of raw material on supplier");
}
return getAssetRegistry("org.asset.raw.material.RawMaterial").
then(function (rawMaterialReg) {
return rawMaterialReg.updateAll(arrayToUpdate);
}).then(function(){
console.log(" RawMaterial requested ADDED ");
return getParticipantRegistry("org.participant.supplier.Supplier");
}).then(function(supplierReg){
if(tx.supplier.requestedMaterial === undefined){
tx.supplier.requestedMaterial = [];
}
var requestedRawMaterial = getFactory().newConcept("org.participant.supplier","RequestedRawMaterial");
requestedRawMaterial.manufacturer = tx.manufacture;
requestedRawMaterial.quantity = tx.quantity;
tx.supplier.requestedMaterial.push(requestedRawMaterial);
return supplierReg.update(tx.supplier);
}).then(function(){
return getParticipantRegistry("org.participant.manufacturer.Manufacturer");
}).then(function(manRegistery){
if(tx.manufacture.rawMaterialApply === undefined){
tx.manufacture.rawMaterialApply = [];
}
var requestedRawMaterial = getFactory().newConcept("org.participant.manufacturer","RawMaterialApply");
requestedRawMaterial.supplier = tx.supplier;
requestedRawMaterial.quantity = tx.quantity;
tx.manufacture.rawMaterialApply.push(requestedRawMaterial);
return manRegistery.update(tx.manufacture);
}).then(function(){
var event = getFactory().newEvent('org.participant.manufacturer', 'RequestRawMaterialEvent');
event.quantity = tx.quantity;
event.date = new Date();
return emit(event);
});
}
```
and when remove function that emit event it work good
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=f5SfJAWmdCqYaAiDD) Many thanks @rthatcher !
Has joined the channel.
Just wanted to ask this question here before I post a issue to github. Currently my BNA works on composer playground great. When I run composer-rest-server, and try to do the same transaction I get this error: "statusCode": 422,
"name": "ValidationError",
"message": "The `User` instance is not valid. Details: `messages` can't be blank (value: [])."
The problem is, I need that value to be blank, and it works correctly on Composer Playground. I have tried deleting all my packages and fabric, reinstalling, and rebooting again, but still doesn't work.
All i do is create a user which has two fields, a facebookId and a messages []. FacebookId can be anything, and messages [] has to be blank. Composer it works fine, but not on the Loopback-generated Rest server. Any help is appreciated :)
In terms of the versions that I have installed to run Fabric and then composer-rest-server locally here are my versions: ├── @angular/cli@1.7.0
├── @ibm-functions/shell@1.3.284
├── browserify@14.4.0
├── composer-cli@0.16.0
├── composer-playground@0.16.0
├── composer-rest-server@0.16.0
├── create-react-app@1.4.0
├── express@4.16.2
├── generator-hyperledger-composer@0.16.0
Tried using the composer-rest-server 0.17.4 and i noticed this happens when i try to execute transaction after a few hours of inactivity
```: Error trying invoke business network. Error: SERVICE_UNAVAILABLE
0|composer | at _initializeChannel.then.then.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:925:34)
0|composer | at
I don't know if its a problem with fabric v1.1-alpha
But its an issue. I experienced with even with a custom rest api server
But its an issue. I experienced it with even a custom rest api server
this happens in the composer-rest-server 0.17.4
```: Error trying invoke business network. Error: Failed to receive commit notification for transaction '7f2a43fba2e8f1aff72a47fc660b24055f19d5b8ee20f06147a2e05163f1fa6d' within the timeout period
0|composer | at _initializeChannel.then.then.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:925:34)
0|composer | at
Screen Shot 2018-02-21 at 2.17.37 AM.png
Has joined the channel.
Hello everyone, do we use JRA to track issues of the Composer?
Has joined the channel.
hi all
Has joined the channel.
i want to write a query where i want to check the fields of the eventsEmitted in the historian record. kindly suggest.
Has joined the channel.
is that something that could be done client side?
Hello, I created a web application that interact with my composer via the composer-rest-api, and I can add new participant to the blockchain via my web application. How can I create business card through web application and map it to the users so? The whole idea is that users could be able to register and interact with the blockchain through web interface and every body sumbit transaction based on acl defiend module .
the Community call today is at 10am UTC (10am UK, 2:30pm IST, 5pm CST) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-February-21st-2018
[ ](https://chat.hyperledger.org/channel/composer?msg=Xh5ZXnFPEwpS384fJ) @horeaporutiu just make `String messages[] optional` in your model and do a `composer network update` with the updated .bna file, to update your network in the runtime
@nasserfci send me the BNA and I'll take a look
Has joined the channel.
Hi All. I get an error from composer when I try to run this command:`runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network`
Hi All. I get an error from composer when I try to run this command:`runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network`.
The error is:
✖ Installing runtime for business network tutorial-network. This may take a minute...
Error: Error trying install composer runtime. Error: The Composer runtime failed to install on 1 or more peers
Command failed.
Hi All. I get an error from composer when I try to run this command:
`runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network`.
The error is:
✖ Installing runtime for business network tutorial-network. This may take a minute... Error: Error trying install composer runtime. Error: The Composer runtime failed to install on 1 or more peers Command failed.
[ ](https://chat.hyperledger.org/channel/composer?msg=Sf4rEPw6ohk7bGvXn) @gen_el - is your chaincode container still running at this point? (the one with the longname such as 'dev-peer0.omac.cons.com-trade-network-0.17....'). Can you try a composer network ping from another window and see if that helps.
[ ](https://chat.hyperledger.org/channel/composer?msg=3mtFpLTqvKStRE5P6) @Stecec - are you following the developer tutorial? Is your fabric running - try `docker ps` to see if all the containers are started.
[ ](https://chat.hyperledger.org/channel/composer?msg=yyH35JodMDWPJjJY9) @rthatcher Yes
[ ](https://chat.hyperledger.org/channel/composer?msg=yyH35JodMDWPJjJY9) @rthatcher Yes. Composer ping works, but has no effect on the rest server's behaviour
[ ](https://chat.hyperledger.org/channel/composer?msg=kMbb3EZmNHC84FmDm) @Sara.r see https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/trade-network/test/trading.js#L21 but use FileSystemCardStore instead of MemoryCardStore - we have an issue on documentation for this right now https://github.com/hyperledger/composer/issues/3088 the general flow is ```Issue identity, import card, connect to the business network using the card businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user); .... var userCard = new IdCard({...}); userCard.setCredentials(credentials); ... adminConnection.importCard(userCardName, userCard); .... .then(() => { // Connect to the business network using the network admin identity ... businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore }); businessNetworkConnection.connect(userCardName); } ...
[ ](https://chat.hyperledger.org/channel/composer?msg=sANEz9a6CHBemxDPF) @rthatcher Thanks for the reply. I'm trying to run this tutorial https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602/50 , that was suggested to me in "fabric-questions" channel. The aim of this tutorial is to develop a Fabric network where peers of the same organization are distributed on different O.S.
I successfully run this tutorial and everything seems to work, but when I try to use the command "composer runtime install" I have this error.
[ ](https://chat.hyperledger.org/channel/composer?msg=sANEz9a6CHBemxDPF) @rthatcher Thanks for the reply. I'm trying to run this tutorial https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602/50 , that was suggested to me in "fabric-questions" channel. The aim of this tutorial is to develop a Fabric network where peers of the same organization are distributed on different O.S.
I successfully run this tutorial and everything seems to work, but when I try to use the command "composer runtime install" I have this error.
[ ](https://chat.hyperledger.org/channel/composer?msg=xYAQxWZaq58evFhJE) @cammachusa we use the issues list here -> https://github.com/hyperledger/composer/issues
@here the Community call today is in 12 mins FYI : 10am UTC (10am UK, 2:30pm IST, 5pm CST) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-February-21st-2018
[ ](https://chat.hyperledger.org/channel/composer?msg=2pCpHjkynNAi7eKci) @Stecec - thanks for the extra info. If you are using 2 machines then I would think you have an addressing / networking issue or an error in your connection.json.
[ ](https://chat.hyperledger.org/channel/composer?msg=NNEuxnavTHLoiqCWY) @gen_el - I assume that the REST server will be OK if you restart it? I think there was a similar discussion here in the chat a while ago - I will look for it later.
[ ](https://chat.hyperledger.org/channel/composer?msg=dermoz49zHCyzmCPn) @rthatcher Yes, its okay after you restart it. And then after a few hours or sometimes less than an hour, it starts failing to return commit notifications.
I know the fabric event services are working, because all peers send `Event successfully`. It seems composer never gets it.
@rthatcher I know the fabric event services are working, because all peers send `Event successfully`. It seems composer never gets it.
[ ](https://chat.hyperledger.org/channel/composer?msg=rPQpXMQASJjs8fHLa) @rthatcher this is my connection.json file:
```
{
"name": "hlfv1",
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://localhost:7050" }
],
"ca": { "url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}, {
"requestURL": "grpc://localhost:8051",
"eventURL": "grpc://localhost:8053"
}, {
"requestURL": "grpc://192.168.56.111:9051",
"eventURL": "grpc://192.168.56.111:9053"
}
],
"keyValStore": "${HOME}/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}
```
I can not understand where the error may be.
[ ](https://chat.hyperledger.org/channel/composer?msg=rPQpXMQASJjs8fHLa) @rthatcher this is my connection.json file:
```
{
"name": "hlfv1",
"type": "hlfv1",
"orderers": [
{ "url" : "grpc://localhost:7050" }
],
"ca": { "url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}, {
"requestURL": "grpc://localhost:8051",
"eventURL": "grpc://localhost:8053"
}, {
"requestURL": "grpc://192.168.56.111:9051",
"eventURL": "grpc://192.168.56.111:9053"
}
],
"keyValStore": "${HOME}/.composer-credentials",
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": "300"
}
```
I can not understand where could the error be
Has joined the channel.
Clipboard - February 21, 2018 2:42 AM
I'm following the tutorial of composer and I got an error that the yml file is missnig
Clipboard - February 21, 2018 2:46 AM
Clipboard - February 21, 2018 2:49 AM
Clipboard - February 21, 2018 2:49 AM
Sorry, seem to be working now. I had to shut down the other image with the same organization name
but why is that? I thought different image are seperated?
Clipboard - February 21, 2018 2:51 AM
Now I'm getting this error after I ran ./createPeerAdminCard.sh
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=y5MCespTgTp9sJu6i) Sorry, you were right. I was editing the wrong connection.json file. Correcting the correct one now the command works. Thank you for your help.
But now
[ ](https://chat.hyperledger.org/channel/composer?msg=y5MCespTgTp9sJu6i) Sorry, you were right. I was editing the wrong connection.json file. Correcting the correct one now the command works. Thank you for your help.
[ ](https://chat.hyperledger.org/channel/composer?msg=sPehoeZAqZDyjMJsv) @nasserfci as mentioned previously,, your ENDORSEMENT_POLICY_FAILURE is due to the `new Date();` in your code
[ ](https://chat.hyperledger.org/channel/composer?msg=sPehoeZAqZDyjMJsv) @nasserfci as mentioned previously,, your ENDORSEMENT_POLICY_FAILURE is due to the `new Date();` in your code (even if you don't emit it)
[ ](https://chat.hyperledger.org/channel/composer?msg=g4sQRmn4DNK2P8Gih) @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=g4sQRmn4DNK2P8Gih) @mahoney1 why new Date make this issue ? And what alternative ?
[ ](https://chat.hyperledger.org/channel/composer?msg=f3PHcMBqprotNAun8) @TreyZhong seems you hadn't clearly up your previous environment - suggest to 1) from `fabric-tools` do a teardownFabric.sh 2) rm -rf $HOME/.composer 3) from `fabric-tools` do a `./startFabric.sh` as shown here -> https://hyperledger.github.io/composer/next/installing/development-tools.html 4) run `./createPeerAdminCard.sh` - your second issue / associated screenshot that you need to fix seems to indicate you did not install composer-cli properly (eg -g install as shown in thel ink I sent) what OS/version are you using? what does `npm ls -g --depth=0` show? The problem will have been reported during the npm install, however npm doesn't necessarily stop when it encounters a problem and continues to output the dependency tree as though nothing has happened. You may have that info to scroll back to. Also what level of python are you using You need to ensure you've met all the prereqs described here -> https://hyperledger.github.io/composer/installing/installing-prereqs.html
[ ](https://chat.hyperledger.org/channel/composer?msg=f3PHcMBqprotNAun8) @TreyZhong seems you hadn't cleared up your previous environment - suggest to 1) from `fabric-tools` do a teardownFabric.sh 2) rm -rf $HOME/.composer 3) from `fabric-tools` do a `./startFabric.sh` as shown here -> https://hyperledger.github.io/composer/next/installing/development-tools.html 4) run `./createPeerAdminCard.sh` - your second issue / associated screenshot that you need to fix seems to indicate you did not install composer-cli properly (eg -g install as shown in thel ink I sent) what OS/version are you using? what does `npm ls -g --depth=0` show? The problem will have been reported during the npm install, however npm doesn't necessarily stop when it encounters a problem and continues to output the dependency tree as though nothing has happened. You may have that info to scroll back to. Also what level of python are you using You need to ensure you've met all the prereqs described here -> https://hyperledger.github.io/composer/installing/installing-prereqs.html
[ ](https://chat.hyperledger.org/channel/composer?msg=f3PHcMBqprotNAun8) @TreyZhong seems you hadn't cleared up your previous environment - suggest to 1) from `fabric-tools` do a teardownFabric.sh 2) rm -rf $HOME/.composer (card directory) 3) from `fabric-tools` do a `./startFabric.sh` as shown here -> https://hyperledger.github.io/composer/next/installing/development-tools.html 4) run `./createPeerAdminCard.sh` - your second issue / associated screenshot that you need to fix seems to indicate you did not install composer-cli properly (eg -g install as shown in thel ink I sent) what OS/version are you using? what does `npm ls -g --depth=0` show? The problem will have been reported during the npm install, however npm doesn't necessarily stop when it encounters a problem and continues to output the dependency tree as though nothing has happened. You may have that info to scroll back to. Also what level of python are you using You need to ensure you've met all the prereqs described here -> https://hyperledger.github.io/composer/installing/installing-prereqs.html
Hi,
anyone had befor the following error when doing the development tutorial:
Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated ....
?
Hi,
anyone had befor the following error when doing the development tutorial:
Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated ....
-open /var/hyperledger/production/chaincodes/phrchain.0.16.4: no such file or directory
Thank you!
[ ](https://chat.hyperledger.org/channel/composer?msg=jRu7czBxQLzfRRBfR) @nasserfci because each peer will get a different result - so scenario is that have got proposals back from 2 or more peers, but at least 1 of the proposal results is different from the other(s). All transactions (say a transaction called `myTransaction`) have a system timestamp referenced as `myTransaction.timestamp` - you could use that. See https://stackoverflow.com/questions/43656164/getting-timestamps-in-deterministic-way-in-hyperledger-composer-transactions (see answer near the bottom)
[ ](https://chat.hyperledger.org/channel/composer?msg=jRu7czBxQLzfRRBfR) @nasserfci because each peer will get a different result - so scenario is that you have got proposals back from 2 or more peers, but at least 1 of the proposal results is different from the other(s). All transactions (say a transaction called `myTransaction`) have a system timestamp referenced as `myTransaction.timestamp` - you could use that. See https://stackoverflow.com/questions/43656164/getting-timestamps-in-deterministic-way-in-hyperledger-composer-transactions (see answer near the bottom)
[ ](https://chat.hyperledger.org/channel/composer?msg=8BD3pPQPbWJvEJJyp) @MartinKrmer hi - at a guess you may not have done the `composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network` step - or you did a runtime install that doesn't match the `name:` of the network in your package.json file that was generated.
@mahoney1 Ok I gonna restart and see if it is again the case
@gen_el - following our discussion on the Community Call - this link shows where the data is stored on Peers (and Couchdb) so that it can be persisted outside the containers with shared volumes:
http://hyperledger-fabric.readthedocs.io/en/release/build_network.html?highlight=persistence#a-note-on-data-persistence
[ ](https://chat.hyperledger.org/channel/composer?msg=Mv4wk4GpY7B9KjanN) @rthatcher Thanks!
@rthatcher Why does this happen? ```Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]] ```
It happened when i tried to use a card on another server
[ ](https://chat.hyperledger.org/channel/composer?msg=cZh6Js4t8dnH2RfjX) @gen_el - did you copy a .card file to another machine and import it?
The first time you create a card / card file, it contains an ID and a secret - this is a 'one-time' secret, so if you try and re-use that original file it has an invalid secret.
You can export the card again after first use, and this version of the .card file will be larger and will contain the certificate - you should be able to copy this to a different machine and import it.
[ ](https://chat.hyperledger.org/channel/composer?msg=n4pZH7Yk7TZyMQKp8) @rthatcher Okay. Thanks
@here as mentioned, the recording of today's Community call will be posted here later today here -> https://drive.google.com/open?id=0B_NJV6eJXAA1SDdTTjNmRktRdUk (toogle the sort on the top right to get latest first) , including previous call recordings.
Hyperledger Composer Community - Feb 21st.pdf
[ ](https://chat.hyperledger.org/channel/composer?msg=r2KxZwjPeNiuFRMjM) I solve this problem (it was related to my "connection.json" file), but now I have another error. When I try to execute this command `composer network start -c PeerAdmin@hlfv1 -a tutorial-network@0.0.1.bna -A alice -C alice/admin-pub.pem`, I receive this error:
```
Error: Error trying to instantiate composer runtime. Error: Failed to receive commit notification for transaction 'b3bf326d433fd587fbfb559df169ec840477be745fbbd9d1a7d34dc208e8679d' within the timeout period
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=r2KxZwjPeNiuFRMjM) I solve this problem, but now I have another error. When I try to execute this command `composer network start -c PeerAdmin@hlfv1 -a tutorial-network@0.0.1.bna -A alice -C alice/admin-pub.pem`, I receive this error:
```
Error: Error trying to instantiate composer runtime. Error: Failed to receive commit notification for transaction 'b3bf326d433fd587fbfb559df169ec840477be745fbbd9d1a7d34dc208e8679d' within the timeout period
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=r2KxZwjPeNiuFRMjM) @rthatcher I solve this problem, but now I have another error. When I try to execute this command `composer network start -c PeerAdmin@hlfv1 -a tutorial-network@0.0.1.bna -A alice -C alice/admin-pub.pem`, I receive this error:
```
Error: Error trying to instantiate composer runtime. Error: Failed to receive commit notification for transaction 'b3bf326d433fd587fbfb559df169ec840477be745fbbd9d1a7d34dc208e8679d' within the timeout period
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=hMabFwe2hn5ewevXF) I just got this error when i tried implement it . Error: Card not found: admin@tutorial-network
at IdCard.fromDirectory.catch.cause (/mnt/c/laragon/www/Hyperledger/tutorial-network/server/node_modules/composer-common/lib/cardstore/filesystemcardstore.js:74:
27)
at
Has joined the channel.
Hi.
When I try to install the runtime I get the following error: ```Installing runtime for business network marbles-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: Authorization for INSTALL has been denied (error-Failed verifying that proposal's creator satisfies local MSP principal during channelless check policy with policy [Admins]: [This identity is not an admin]))``` The error is pretty self-explanatory but I can't seem to make it work. The identity in question here is the one I have specified with -c and -k flags at the creation of the card, right? I have tried using my org admin identity(http://prntscr.com/ihsw7v) with which I am joining the peers to the channel, and with a CA admin identity(http://prntscr.com/ihsvjf), but none of those work.
Don't my admin IDs have all the permissions necessary? Any help much appreciated.
peer1.org1 logs: https://pastebin.com/7fjdp4sQ
[ ](https://chat.hyperledger.org/channel/composer?msg=8maD3ExiYBXijoie5) Problem solved. I forgot to re run cryptogen and configtxgen.
@SimonOberzan The error you have received is from the peer - saying the identity you have used for the runtime install does not have PeerAdmin rights to do so - so is not permitted to install the chaincode onto it - see example on multi-org tutorial (Step Seven) for example. https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org
Hello,
I try to update a bna via composer network update...
but the cmd return
```
(status: 500, message: Error: Participant 'org.hyperledger.composer.system.NetworkAdmin#admin' does not have 'CREATE' access to resource 'org.hyperledger.composer.system.AssetRegistry#org.hyperledger.composer.system.AssetRegistry'
```
Hello,
I try to update a bna via composer network update...
but the cmd return
```
(status: 500, message: Error: Participant 'org.hyperledger.composer.system.NetworkAdmin#admin' does not have 'CREATE' access to resource 'org.hyperledger.composer.system.AssetRegistry#org.hyperledger.composer.system.AssetRegistry'
```
But i have this permissions :
```
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
What's the pb ?
Hello,
I try to update a bna via composer network update...
but the cmd return
```
(status: 500, message: Error: Participant 'org.hyperledger.composer.system.NetworkAdmin#admin' does not have 'CREATE' access to resource 'org.hyperledger.composer.system.AssetRegistry#org.hyperledger.composer.system.AssetRegistry'
```
But I have this permissions :
```
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
What can I do ?
Clipboard - February 21, 2018 7:30 PM
i am trying to download network admin card. i am getting this error
i am trying to download network admin card. i am getting this error. Am i missing Something while installation?
[ ](https://chat.hyperledger.org/channel/composer?msg=SaTPgMoykLFHR8tST) @mahoney1 I had the example in the tutorial working before, but now i have generated my certificates using intermediate CAs. The admin-org1 ID that I have posted before should be the required admin the way I understand it, as I am also creating the channel using this identity and joining the peers to the channel. Is there some extra permissions that my admin should have? Like registrar maybe?
Hi All. I'm trying to run this command `composer network ping -c alice@tutorial-network`, but I get this error:
```
Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
Command failed
```
Any idea on how to solve it?
Hi All. I'm trying to run this command `composer network ping -c alice@tutorial-network`, but I get this error:```
Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
Command failed
```
Any idea on how to solve it?
Hi All. I'm trying to run this command `composer network ping -c alice@tutorial-network`, but I get this error:```Error: Error trying to ping. Error: Error trying to query business network. Error: Failed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
Command failed
```
Any idea on how to solve it?
Hi All. I'm trying to create a multi-channel network based on 'byfn'. I want org1 and org2 on channel1; org1 and org3 on channel2. I've tried putting org1/org2 in consortium1 and org1/org3 in consortium2. I got the error ' Attempted to include a member which is not in the consortium' when I tried to create the channel.
@mabnhdev this is a question for channel #fabric or #fabric-questions
[ ](https://chat.hyperledger.org/channel/composer?msg=rJCAecj4XzwiwMpqD) @CorentinPacaud Okay. Thanks, I'll head over there. I'm still trying to figure out which forum gets which questions.
Np ;)
[ ](https://chat.hyperledger.org/channel/composer?msg=yon9koGqtCxk7gAQN) @ranjithkumarmv - how was your card created? Does it work if you try and Deploy a network? I have seen similar messages with cards created with different versions of Composer.
Has joined the channel.
Hi guys am trying to establish a business connection to hyperledger fabric through composer in my node app but i keep getting this error { Error: Card not found: admin@tutorial-network
at IdCard.fromDirectory.catch.cause (/mnt/c/laragon/www/Hyperledger/tutorial-network/server/node_modules/composer-common/lib/cardstore/filesystemcardstore.js:74:
27)
at
@rthatcher I tried creating from playground webapp, I was trying to download i was getting that error. Even i tried creating via cli the exact response ``` [ Micro-S4 ] [root@hyd-lab12:/home/mapr/hyperledger] ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.4
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=SaTPgMoykLFHR8tST) Peer Admins. are different to Certificate Authority Admins.- see more here -> https://hyperledger.github.io/composer/business-network/bnd-deploy.html
[ ](https://chat.hyperledger.org/channel/composer?msg=T9n2LERZmMdnMaWt4) @ranjithkumarmv - It looks like you are still using Node v6, and we are now supporting Node v8. Unfortunately you will have to uninstall the composer components, then upgrade node, then re-install composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=9u9Pbg9Zo5cZg7uFw) @fabcan [ ](https://chat.hyperledger.org/channel/composer?msg=9u9Pbg9Zo5cZg7uFw) @fabcan hi there - see answers here -> would advise to check your connection profile and that you're using the right cert.key combo from the right CA authority when you built the card for alice (what happens with Bob's card..does that work ok?)
[ ](https://chat.hyperledger.org/channel/composer?msg=9u9Pbg9Zo5cZg7uFw) @fabcan [ ](https://chat.hyperledger.org/channel/composer?msg=9u9Pbg9Zo5cZg7uFw) @fabcan hi there - see answers here ->https://stackoverflow.com/questions/48186336/getting-an-error-certificate-signed-by-unknown-authority?rq=1 would advise to check your connection profile and that you're using the right cert.key combo from the right CA authority when you built the card for alice (what happens with Bob's card..does that work ok?)
[ ](https://chat.hyperledger.org/channel/composer?msg=kAFfEt7rqr7Y4oc47) @CorentinPacaud need to update your BN with your SystemACLs rule eg ```rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}```
Ok I will try
[ ](https://chat.hyperledger.org/channel/composer?msg=Z23X4xdTeMyBwktc9) @bingo1234 - the folder `/home/username/.composer` - do you need to replace 'username' with the name of your logged in user on the system perhaps 'bingo' in your case?
[ ](https://chat.hyperledger.org/channel/composer?msg=96RNrZFuuqi8GjWJn) @mahoney1 Thanks a lot, that hint helped me to solve the problem!
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=T9n2LERZmMdnMaWt4) Thanks @rthatcher Issue with node version only got resolved
Hi @mahoney1 this is the error i got form npm ls -g --depth=0
Clipboard - February 21, 2018 11:28 AM
@TreyZhong Looks like you have installed node using sudo and then are trying to install the composer tools using sudo. This is not a recommended path as it causes issues which you are experiencing. We recommend that you use nvm to manage your node install and do everything under your current user, ie don't use sudo.
so basically uninstall all the composer stuff and do the following?
Clipboard - February 21, 2018 11:39 AM
@TreyZhong you need to do more unfortunately, you need to un-install node
ok
I'm guessing you are on a Mac ? If so this will help
https://hyperledger.github.io/composer/installing/installing-prereqs#macos
It describes installing nvm
Ok, i just re-install the node an npm
Clipboard - February 21, 2018 12:03 PM
if I don't use sudo, i get permission issue. how do i by pass this?
Does anyone have a good code example that shows how to connect to a business network using a profile? My call to AdminConnection.connect kept giving me "No key value store directory or wallet has been specified" and I don't know what this means. Thanks.
@davidkel , i got it. I uninstall the npm and node ( I install those from a installer that's probably why it didn't work for non super user). I installed nvm and then I the npm stuff now it doesn't have any issue
Clipboard - February 21, 2018 12:43 PM
Succeeded!!!!!
I am trying to implement the passport-auth0 strategy in Hyperledger rest server. but the token returned by them can be parsed using util.js file of lib folder present in composer-rest-server module under node.
Can any one guide me how to overcome the issue.
@shidosan I saw a similar query of passport-auth0
Can any one also help me with passport-jwt strategy
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi I see this error when trying to ping the network
( composer network ping -c admin@vehicle-lifecycle-network )
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
I could ping and perform operations on this network earlier. And after 4-5days when I try to ping from cli, I see this error.
I have only used cli / composer playground installed locally to perform invoke/query on this network earlier.
Why does this same card is not working ? How can I retrieve the admin card for this business network to ping and interact ?
Has joined the channel.
enabling multiple user modes in hyperledger composer is not working properly.Sometimes works and
Sometimes it does not work.when it will be stable.
before updating the hyperledger-composer multiple user modes working fine.after update this is not working.
Has joined the channel.
hey anyone has any information on implementing SAML authentication for REST API routes
couldnt find much info on implementing passport-saml
pretty conversant in SAML applied to protecting resource servers
i dont think there's much info out in the literature.
yes i couldnt find much literature
was trying to implement in production but not much documentation
welcome to the wooly world of open source :)
:)
feel free to DM
who should i DM but
have you implemented SAML anytime in rest api
in fabric
How to limplement login functionality?
- using cards where user uploads his card
- username and password
and how to implement each please?
thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=Zj3RWGoCkNqFjWMES) @Akshay2218 - do you have a specific problem or scenario where the REST server is not working?
We have seen this issue recently, is this what you are seeing?
https://github.com/hyperledger/composer/issues/3413
[ ](https://chat.hyperledger.org/channel/composer?msg=Zj3RWGoCkNqFjWMES) @Akshay2218 - do you have a specific problem or scenario where the REST server is not working?
We have seen this issue recently, is this what you are seeing?
https://github.com/hyperledger/composer/issues/3413
What versions have you upgraded from and to?
[ ](https://chat.hyperledger.org/channel/composer?msg=2YpX2SRsaZTpM4b4S) @mostafa.elsayyad - have you worked with the REST Server using Authentication and MultiUser mode?
https://hyperledger.github.io/composer/integrating/integrating-index
In a production scenario I think developers would create a UI App that would interact with the REST server and allow the users to authenticate with tokens from the chosen Authentication Provider, and the cards would be stored in Wallets by the REST server, so the users would not directly manage their cards themselves.
[ ](https://chat.hyperledger.org/channel/composer?msg=2YpX2SRsaZTpM4b4S) @mostafa.elsayyad i think every user has his wallet which contain (public,private) key and this application will talk with fabric using your wallet
if you try playground and add participant and issue identity for him you will see the wallet created and you import it to playground to be able to use new identity
Hi,
can someone tell me if I can define also queries on all transactions?, and if so how do I best define via query file or build in query?
Has joined the channel.
Hi, I want to put JSON in new transaction
[
{
"$class": "org.ordersupplychain.TransactionsRecord",
"detail":{"productId":"1","customerId":"1","sellerId":"1"}
}
]
how can I achieve this?
[ ](https://chat.hyperledger.org/channel/composer?msg=XW2LEjWcXtcWnh9q2) @rthatcher i upgraded version from 0.16.0 to to 0.17.5. I'm not able to ping after importing the business network card in multiple owner modes.
[ ](https://chat.hyperledger.org/channel/composer?msg=XW2LEjWcXtcWnh9q2) @rthatcher i upgraded version from 0.16.0 to to 0.17.5. I'm not able to ping after importing the business network card in multiple owner modes. - first, i export the card then I import using wallet then I was set it as default.after that I'm not able to ping the network.
Hi all . Because I already received a few direct messages about the topic I decided to create a small demo project that shows how to can you implement the composer sdk in your own custom rest server and make use of the most important features. Including how you can link username/password data to your identity etc. I have two more things to implement and a few issues to fix but I think it can already provide a good example for those who are looking for it. It is all really basic but hope it can be of use for some people. https://github.com/ypeckstadt/hyperledger-composer-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=E7gkX7EDEXSQessaw) @PrabhatSutar would be ```{
"$class": "org.ordersupplychain.TransactionsRecord",
"detail":{
"productId":"1",
"customerId":"1","
sellerId":"1"
}
}``` assuming `detail` here is a concept
[ ](https://chat.hyperledger.org/channel/composer?msg=E7gkX7EDEXSQessaw) @PrabhatSutar would be ```{
"$class": "org.ordersupplychain.TransactionsRecord",
"detail":{
"productId":"1",
"customerId":"1","
sellerId":"1"
}
}``` assuming `detail` here is a concept. You can always connect to your business network in composer playground, click on Test - you can generate random data or click submit (for a transaction for example) to see the proposed JSON format for your model
[ ](https://chat.hyperledger.org/channel/composer?msg=ehpckYuskSZiLC4WA) @Akshay2218 - If the card you import has the Certificates included in it, then you are probably seeing the Bug that is in that Issue 3413. That bug will be fixed but I don't know when.
If this is causing you a problem you could go back to v0.16.3 I think. Feel free to put a comment on the Issue if it is causing you a real problem.
[ ](https://chat.hyperledger.org/channel/composer?msg=WeFLDWP8iiQTzoYZw) @MartinKrmer you can - all transactions are recorded in Historian, including the transaction invoked (what the change was) - see examples of queries defined there - you can create a `queries.qry` file in the root of yr business network directory to define the queries you want to build eg `SELECT org.hyperledger.composer.system.HistorianRecord WHERE (transactionType == 'myTranType'` - see also https://hyperledger.github.io/composer/business-network/query.html
@mahoney1 does that mean that you dont need to create registry for transactions?
[ ](https://chat.hyperledger.org/channel/composer?msg=oaFAfefP9MRuNLA3K) @rthatcher Thank you so much. I will try it on another machine.If it gets the same issue then I will go back to lower version.
If you create a Transaction class in your model - say `PayTraderRxn` - Composer will create a Transaction registry called `org.acme.biznet.PayTraderTxn` (sample namespace used here) where transactions of that class are recorded. Historian has a relationship to that transaction type in the Historian registry and its transactions of that type are shown in the registry (and the record has a relationship to the transaction invoked (what changed) from the transaction registry)
@MartinKrmer If you create a Transaction class in your model - say `PayTraderRxn` - Composer will create a Transaction registry called `org.acme.biznet.PayTraderTxn` (sample namespace used here) where transactions of that class are recorded. Historian has a relationship to that transaction type in the Historian registry and its transactions of that type are shown in the registry (and the record has a relationship to the transaction invoked (what changed) from the transaction registry)
@MartinKrmer If you create a Transaction class in your model - say `PayTraderRxn` - Composer will automatically create a Transaction registry called `org.acme.biznet.PayTraderTxn` (sample namespace used here) where transactions of that class are recorded. Historian has a relationship to that transaction type in the Historian registry and its transactions of that type are shown in the registry (and the record has a relationship to the transaction invoked (what changed) from the transaction registry)
I am creating an Web-Application (web-shop) using hyperledger fabric & hyperledger composer & Angular. I want to implement a login feature (username / email and password) to my application. How can I do this?
Is it possible to create a participant (user) with password und username in the .cto file and query this data when login?
[ ](https://chat.hyperledger.org/channel/composer?msg=ExJQkMB7r3wv5vL72) @waleed - did you see this reply earlier today ?
https://chat.hyperledger.org/channel/composer?msg=kJtWgLjdkPF5BmwDD
[ ](https://chat.hyperledger.org/channel/composer?msg=QnhGCvxoNAzCPcELP) @rthatcher - hi :)
I didn't see it but thanks :) this will help me
Has joined the channel.
I am trying to enforce uniqueness on an array datatype in my contract, but I can't get it to work...
function addAllergyToUser(addAllergy) {
if (!addAllergy.allergyUser.allergies.includes(addAllergy.allergy)){
addAllergy.allergyUser.allergies.push(addAllergy.allergy)
};
return getParticipantRegistry('org.sigurit.AllergyUser')
.then(function(assetRegistry) {
return assetRegistry.update(addAllergy.allergyUser);
});
}
I know I'm not the best javascript person... but I think that should work.... but it doesn't.... is there a better approach to enforcing uniqueness in Fabric object attributes?
[ ](https://chat.hyperledger.org/channel/composer?msg=jrLpNRxSHKQ8bXa5p) @rthatcher It looks like I'm going to need a little more hand-holding for this multi-channel effort.
Here is an overview of what I've done so far... https://pastebin.com/qjrfM5aW
I'm pretty sure the fabric network is up and running...
`
Up About an hour dev-peer0.org2.example.com-test-0.17.4
Up About an hour dev-peer1.org1.example.com-test-0.17.4
Up About an hour dev-peer0.org1.example.com-test-0.17.4
Up About an hour dev-peer1.org2.example.com-test-0.17.4
Up About an hour cli
Up About an hour peer1.org3.example.com
Up About an hour peer0.org2.example.com
Up About an hour peer0.org3.example.com
Up About an hour peer1.org1.example.com
Up About an hour peer1.org2.example.com
Up About an hour peer0.org1.example.com
Up About an hour couchdb2
Up About an hour couchdb4
Up About an hour couchdb5
Up About an hour ca_peerOrg1
Up About an hour couchdb1
Up About an hour couchdb3
Up About an hour ca_peerOrg3
Up About an hour orderer.example.com
Up About an hour ca_peerOrg2
Up About an hour couchdb0
`
But, as you can see, my chaincode is only running on org1 and org2.
I brought up the chaincode using the following...
`
composer runtime install -c PeerAdmin@byfn-network-org1 -n test
composer runtime install -c PeerAdmin@byfn-network-org2 -n test
composer runtime install -c PeerAdmin@byfn-channel2-org3 -n test
`
All three commands reported success. But, chaincode is not running on the org3 peers.
Any thoughts on where I may be going wrong?
Is there any "verbose" mode for composer commands?
@here Hi, why am i getting this error when running ./createPeerAdminCard.sh?
Screen Shot 2018-02-22 at 11.17.31 PM.png
@mabnhdev - I would guess that the Card (and connection.json) used when you ran the composer network start command did not contain the details for the peers on Org 3
[ ](https://chat.hyperledger.org/channel/composer?msg=srdgJiZd5hQpvvZpX) @sashico - what version of Node are you running - perhaps you have Node6 and we support Node8. If you have Node6, you will need to uninstall the composer code, upgrade node, then re-install composer.
@rthatcher
Node: v8.9.4
npm: 5.6.0
Docker: Docker version 17.12.0-ce, build c97c6d6
Docker Compose: docker-compose version 1.13.0, build 1719ceb
Python: Python 2.7.12
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=bPJ3b45KrGXLh49yW) @sashico - OK Node version is good. Did you install composer with npm install -g, and NOT using root.
[ ](https://chat.hyperledger.org/channel/composer?msg=bPJ3b45KrGXLh49yW) @sashico - OK Node version is good. Did you install composer with npm install -g, and NOT using root or sudo.
let me reinstall everything, I think i installed it w/ sudo npm
Hello, when I attempt to issue a new Identity with the network admin, I get the following error: ✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Any insight would be greatly appreciated
@rthatcher also there is this weird thing happening where in after i succesfully run ./prereqs-ubuntu.sh, node is not installed so I have to install it manually after ./prereqs-ubuntu.sh
Screen Shot 2018-02-22 at 11.36.48 PM.png
anyway moving forward
Hi.
Hi.
I have an model with an array of some other assets. Something like this:```
asset A {
o B[] Bs
}``` Is there a way to access the Bs elements by their IDs? (the ones specified by `identified by`)
Hi.
I have an model with an array of some other assets. Something like this:```asset A {
o B[] Bs
}``` Is there a way to access the Bs elements by their IDs? (the ones specified by `identified by`)
Hi.
I have an model with an array of some other assets. Something like this:```asset A identified by a {
o String a
o B[] Bs
}``` Is there a way to access the Bs elements by their IDs? (the ones specified by `identified by`)
Hi.
I have an model with an array of some other assets. Something like this:```asset A identified by a {
o String a
o B[] Bs
}``` Is there a way to access the Bs elements by their IDs? (the ones specified by `identified by`) Or should I always specify other assets by `-->`, unless I don't care about their IDs?
[ ](https://chat.hyperledger.org/channel/composer?msg=X59ketWvAZfkWKRKE) @rthatcher Yes, you are correct. I used PeerAdmin@byfn-network-org1 only.
Should I be calling `composer network start` twice? Once for each channel using the PeerAdmin@byfn-network-org1 and PeerAdmin@byfn-channel2-org1 cards?
@rthatcher thanks man, so it's basically a problem w/ my composer-cli because i installed it as root, this fixed the problem https://docs.npmjs.com/getting-started/fixing-npm-permissions
Hints towards user-management highly appreciated :)
I've got fabric/composer/rest-api/generated angular app up and running.
Now I was wondering, what do I need to setup to allow people to login to my website without using third party authentication? Is there a way to handle this within composer/fabric?
Has joined the channel.
anyone else getting this error in playground right now?
@here
Screen Shot 2018-02-23 at 12.49.44 AM.png
to avoid the error, replace the "editor" w/ login in the url
@sashico No need to do @ here. It sends a notification to everyone in this channel. Thanks!
I am trying the guide of "https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html", but fabric startup failed because join channel failed. Anyone can help?
[ ](https://chat.hyperledger.org/channel/composer?msg=TH6nrFgjpx4gRmFGW) @erinohara - how did you create or import the card for the 'network admin'? Are you following a particular tutorial?
Here is a little background on cards that might help...
The first time you create a card / card file, it contains an ID and a secret - this is a 'one-time' secret. The first time you use the card certificates are downloaded and the secret becomes invalid. If you try and import that original file it has an invalid secret and causes an error.
[ ](https://chat.hyperledger.org/channel/composer?msg=dPAtiRbSenAD3iv2a) @SimonOberzan so I defined (say asset B as ```asset B identified by b {
o String b
o String field
}``` and create a record of Asset A (with identfier `a1` as follows: ```
{
"$class": "org.acme.trading.A",
"a": "a1",
"Bs": [
{
"$class": "org.acme.trading.B",
"b": "b1",
"field": "Ea et ipsum minim duis."
},
{
"$class": "org.acme.trading.B",
"b": "b2",
"field": "Ea et ipsum minim duis."
}
]
}
``` then I can access elements of B with some sample code shown here -> ```/**
* Try access elements of an array of B assets
* @param {org.acme.trading.Atxn} atxn - function to access A elements (and B assets)
* @transaction
*/
function myfunc(atxn) {
// return getAssetRegistry('org.acme.trading.A')
// .then(function (ARegistry) {
// test code only
// })
return query('Aselect')
.then(function (results) {
var promises = [];
for (var n = 0; n < results.length; n++) {
var asset = results[n];
console.log('A ' + (n+1) + ', object is ' + asset);
console.log('A asset identifier is ' + asset.getIdentifier());
console.log('Bs array on A asset is ' + asset.Bs);
console.log("Bs object 1st array item is " + asset.Bs[0]);
console.log("Bs object 1st array item 'field' value is " + asset.Bs[0].field);
}
});
}``` not sure if this helps.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=dvFv7fX95RDhJg892) @marksta - did you see this reply earlier today ?
https://chat.hyperledger.org/channel/composer?msg=kJtWgLjdkPF5BmwDD
[ ](https://chat.hyperledger.org/channel/composer?msg=FZ7p5rKS8eATYjxkv) @qb did you have a previous fabric deployed ? Suggest to 1) remove your `fabric-tools` directory and 2) `mkdir fabric-tools ; cd fabric-tools` and then pull down the latest fabric tools (Step 4 from this link https://hyperledger.github.io/composer/installing/development-tools.html) then 3) run a `./teardownFabric.sh` first and then remove cards directory (dot-composer directory) ie `cd $HOME ; rm -rf .composer` then 4) try the steps in the single org tutorial again - suggest also for org tutorials to have around 6Gb memory (ie for your VM)
@SimonOberzan FYI my query (called in the transaction) is a simple query ``` query Aselect {
description: "Select all As"
statement:
SELECT org.acme.trading.A
}```
Reposting on this channel :
I am following a video tutorial for new developers . As the tutorial suggested I did the following:
1. Created a business network on playground online - assets/scripts/events .
2. Exported them to my laptop which already has fabric running and I have also created a Peer Admin Card on it.
3. Now as per the tutorial I should be able to run composer-playground.
This 3 step however throws an error "Error trying to ping. Error: No business network has been specified for this connection"
Can someone help out as to what I might be doing wrong ..
@mahoney1 Thanks for your response. I'd tried to run the create channel and join channel step by step in peer0 container. fount the error as below.
2018-02-22 16:59:30.316 UTC [grpc] Printf -> DEBU 003 grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: Error while dialing dial tcp 172.19.0.5:7051: getsockopt: connection refused"; Reconnecting to {peer0.org1.example.com:7051
I'd tried to change the timeout up to 30, does not work.
@qb - it seems you're doing those steps manually, but the tutorial (per the instructions earlier) do it for you (sets up a standard Development Fabric with which to do the tutorial). It should automatically bring up the peer. Port 7051 refusal is because your peer docker container is not up.
[ ](https://chat.hyperledger.org/channel/composer?msg=9NPnq953Cu7nQ5rJ2) @rthatcher [ ](https://chat.hyperledger.org/channel/composer?msg=9NPnq953Cu7nQ5rJ2) @rthatcher Thanks for the help! I used the "deploying to a single organization Hyperledger Fabric" tutorial. I create the admin@tutorial-network.card file with the adminpw enrollment secret. I can start and ping the network no problem. I just can't issue an identity to a participant I generate with the REST API
@harshchaturvedi did you deploy the business network?
I did .. "composer network deploy -a <>.bna -A admin -S adminpw -c PeerAdmin@hlfv1 -f admincard"
@mahoney1
anyone knows why im getting this error when deploying a bna in fabric? here's the command
composer network start -a ./hospital-inventory.bna -A admin -S adminpw -c PeerAdmin@hlfv1
[ ](https://chat.hyperledger.org/channel/composer?msg=kCieJHRCb5c3LXKda) @erinohara - can you show me the command you used to issue the identity please. Also can you do `composer card list -n
anyone knows why im getting this error when deploying a bna in fabric? here's the command
composer network start -a ./hospital-inventory.bna -A admin -S adminpw -c PeerAdmin@hlfv1
Screen Shot 2018-02-23 at 1.32.10 AM.png
[ ](https://chat.hyperledger.org/channel/composer?msg=sJiGdmubvTAMKfzGP) @harshchaturvedi you need to import the card `composer card import -f admincard` then try connect with it from Playground
1.png
2.png
@rthatcher Here you go. Thanks again.
[ ](https://chat.hyperledger.org/channel/composer?msg=z9aTXa2bMy4ABqeiB) @sashico seems to suggest your peer(s) are not up ?
@mahoney1 it is
Screen Shot 2018-02-23 at 1.39.28 AM.png
that's my peer container
@rthatcher oops got a different error there. Let me fix that and upload the authorization error message
Has joined the channel.
Did not work [ ](https://chat.hyperledger.org/channel/composer?msg=NeGW4cfAC5xnNpALj) @mahoney1
I did the deploy network and then imported the admincard . Post that I ran composer-playground but it still gives me the same error[ ](https://chat.hyperledger.org/channel/composer?msg=cZqn4DHqQGkL9PuZQ)
[ ](https://chat.hyperledger.org/channel/composer?msg=t5cQxCsTS9YjqKzM9) @erinohara - OK yes looks like the CA is not reachable now - I think the tutorial suggests 'localhost' I think it should be OK with the address of the host. I am logging off in a few mins - back tomorrow
@rthatcher oh my gosh it works. Thanks so much. So happy.
[ ](https://chat.hyperledger.org/channel/composer?msg=8zCzvABuFsamRkjDk) @rthatcher thank you, i'll look into that!
Clipboard - February 22, 2018 6:04 PM
Clipboard - February 22, 2018 6:05 PM
@sashico Looks to me like you answered your own question.
@sashico Looks to me like you answered your own question. installed with name 'inventory-bna', but then trying to start with a bna whose package.json name is hospital-inventory
@davidkel yes looks like when installing the composer runtime, the network name should be the same as my bna file name that im trying to deploy, it's working now
Screen Shot 2018-02-22 at 10.50.00.png
We've released Hyperledger Composer v0.17.6, with a sexy new design for generated Angular web applications, bug fixes, doc updates, and of course the latest CongaComic! 🎉 https://github.com/hyperledger/composer/releases/tag/v0.17.6
`Hyperledger Composer can only use business network cards that are placed into a wallet. The wallet is a directory on the file system that contains business network cards. In this step, you will import the business network card created in step five into the wallet so that you can use the business network card in subsequent steps.`
Does any one where exactly the wallet on the file system?
`Hyperledger Composer can only use business network cards that are placed into a wallet. The wallet is a directory on the file system that contains business network cards. In this step, you will import the business network card created in step five into the wallet so that you can use the business network card in subsequent steps.`
Does any one know where exactly the wallet on the file system?
`Hyperledger Composer can only use business network cards that are placed into a wallet. The wallet is a directory on the file system that contains business network cards. In this step, you will import the business network card created in step five into the wallet so that you can use the business network card in subsequent steps.`
Does anyone know where exactly the wallet on the file system?
What is ordering service in fabric (sorry if this is a dumb question)?
kafka or solo it works as consensus.
ordering service = consensus
Thanks
Hello everyone, I followed the tutorial : https://hyperledger.github.io/composer/installing/development-tools.html. When I tried to install composer runtime by this command: composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network . It complained that the composer runtime is already installed. Then I moved on the next step to deploy my business network by this command: composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card , it complained that " Error trying to instantiate composer runtime. Error: No valid responses from any peers"
Anyone experienced this error before, pls advice?
@cammachusa I encountered same error, when I upgrade fabric from 1.0.4 to 1.0.5. which version are you using?
Does anyone know why I'm receiving this error when creating the PeerAdmin card? I have all my pre-reqs up to date and I haven't installed as sudo for the cli, rest server and playground. I have ran to the file path where it cannot find the needed file and my path goes `node-v48-linux-s390x` instead of `node-v57-linux-s390x`
Has joined the channel.
Screen Shot 2018-02-22 at 11.14.42 PM.png
@grice_32 I am getting the same error on mine. Does anyone have a fix for that? Tried almost everything found on previous questions about this. Still have this error though
Has joined the channel.
@grice_32 Make sure you're root and navigate to wherever you have composer-cli installed (mine was /usr/lib/node_modules/composer-cli/) and run this command:
npm rebuild --unsafe-perm
stop farbric, start and then create peer.
worked for me from the same error
Hi, can we implement supply chain in Hyperledger Composer?
Hi, can we implement supply chain with one to many relationship in Hyperledger Composer?
Hi, can we develop a multi-stage supply chain in Hyperledger Composer?
For eg. Supplier=>Manufacturer=>Distriuter=>Retailer=>Customer
Hi,
I am looking for hyperledger composer developer regarding a small task.
Has joined the channel.
Hi,
I defined a query for my transactions but it is not shown when I deploy the network on the local REST server. What could be reasons for this matter?
[ ](https://chat.hyperledger.org/channel/composer?msg=joAPACzYNWAQ6ox3t) @grice_32 - I think you have a problem with the installation of Composer. Did you install composer-cli with `npm install -g ` and using a non-root user? (and not using sudo)
This section of our wiki may also help:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues
[ ](https://chat.hyperledger.org/channel/composer?msg=joAPACzYNWAQ6ox3t) @grice_32 ( @makyl ) -I think you have a problem with the installation of Composer. Did you install composer-cli with `npm install -g ` and using a non-root user? (and not using sudo)
This section of our wiki may also help:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues
[ ](https://chat.hyperledger.org/channel/composer?msg=DttT9WEYAePgsF5ZX) @MartinKrmer - I would check that your file is called `.qry' and then make sure it is in the main folder of the project, not in lib/ sub folder for example.
[ ](https://chat.hyperledger.org/channel/composer?msg=L8hgkX8LsMkbMEcLP) @PrabhatSutar - yes Supply Chain is a good use case for Hyperledger Fabric and Hyperledger Compser.
If you are new to composer I would suggest looking at the Developer Tutorial, and then look at the Perisable Food Network sample to start your thinking about supply chain.
https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
I am also getting that error above.
Screen Shot 2018-02-23 at 10.39.47 AM.png
I have tried reinstalling everything and I still get this.
[ ](https://chat.hyperledger.org/channel/composer?msg=ajrs8BBPKLvkioGBe) @fjblau - have you recently upgraded composer?
yes I did
that was when this started happening
[ ](https://chat.hyperledger.org/channel/composer?msg=bdWbF2HoxtkN3wYBY) @fjblau from what release of Composer did you upgrade? Also can you send a docker ps (if you've installed Fabric at this time).
0.16.3 -> 0.16,4
Screen Shot 2018-02-23 at 10.46.57 AM.png
I get the same error when I try and run the ./createPeerAdminCard.sh script also
Also in composer-playground when I try and deploy a new network
right - so you're using Fabric alpha1.1 docker containers for a 16.x Composer release - doesn't work. You need to use the 1.0.4 (1.0.x essentially) Fabric for Composer 0.16.x release stream. Release notes -> https://github.com/hyperledger/composer/releases/tag/v0.16.4 and also see this 'ready-reckoner' summary table to know "which 'Fabric' for which Composer version' -> https://github.com/hyperledger/composer/wiki
@fjblau right - so you're using Fabric alpha1.1 docker containers for a 16.x Composer release - doesn't work. You need to use the 1.0.4 (1.0.x essentially) Fabric for Composer 0.16.x release stream. Release notes -> https://github.com/hyperledger/composer/releases/tag/v0.16.4 and also see this 'ready-reckoner' summary table to know "which 'Fabric' for which Composer version' -> https://github.com/hyperledger/composer/wiki
how do I get back to the old fabric version... it was the same download link
[ ](https://chat.hyperledger.org/channel/composer?msg=7dM5EuFmjeaYThB44) you also need to ensure you've unset FABRIC_VERSION variable, because its likely that's why you're pulling down Fabric images - and your Peer Admin card will need to be run (eg ./createPeerAdminCard.sh` to create a 0.16.4 edition business network card (and not - a 0.17.x edition card - which is why you're probably seeing the composer-connector-undefined messages on the runtime install
[ ](https://chat.hyperledger.org/channel/composer?msg=7dM5EuFmjeaYThB44) you also need to ensure you've unset FABRIC_VERSION variable, because its likely that's why you're pulling down Fabric images - and your Peer Admin card will need to be run (eg ./createPeerAdminCard.sh` to create a 0.16.4 edition business network card (and not - a 0.17.x edition card - which is why you're probably seeing the composer-connector-undefined messages on the runtime install )
so what are the steps there.... stop the fabric.... unset the FABRIC_VERSION
"curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip"
1) unset 2) npm uninstall -g composer-cli 3) npm uninstall -g composer-playground 4) rm -rf $HOME/.composer 5) from fabric-tools ./teardownFabric.sh 6) remove any lingering dev-xx business network containers you may previously have deployed (they are separate docker containers) 7) as non-root user etc etc from fabric-tools ./startFabric.sh ; ./createPeerAdminCard.sh 8) npm install -g composer-cli 9) npm install -g composer-playground 10) then try composer runtime install -n sugurit -c PeerAdmin@hlfv1
1) unset 2) npm uninstall -g composer-cli 3) npm uninstall -g composer-playground 4) rm -rf $HOME/.composer 5) from fabric-tools ./teardownFabric.sh 6) remove any lingering dev-xx business network containers you may previously have deployed (they are separate docker containers eg `docker stop xx` ; `docker rm xxx ` ) 7) as non-root user etc etc from fabric-tools ./startFabric.sh ; ./createPeerAdminCard.sh 8) npm install -g composer-cli 9) npm install -g composer-playground 10) then try composer runtime install -n sugurit -c PeerAdmin@hlfv1
1) unset 2) npm uninstall -g composer-cli 3) npm uninstall -g composer-playground 4) rm -rf $HOME/.composer 5) from fabric-tools ./teardownFabric.sh 6) remove any lingering dev-xx business network containers you may previously have deployed (they are separate docker containers eg `docker stop xx` ; `docker rm xxx ` ) 7) as non-root user etc etc from fabric-tools ./startFabric.sh ; ./createPeerAdminCard.sh 8 ) npm install -g composer-cli 9) npm install -g composer-playground 10) then try composer runtime install -n sugurit -c PeerAdmin@hlfv1
1) unset 2) npm uninstall -g composer-cli 3) npm uninstall -g composer-playground 4) rm -rf $HOME/.composer 5) from fabric-tools ./teardownFabric.sh 6) remove any lingering dev-xx business network containers you may previously have deployed (they are separate docker containers eg `docker stop xx` ; `docker rm xxx ` ) 7) npm install -g composer-cli as non-root user 8) rm -rf fabric-tools dir && mkdir fabric-tools dir 9) get fabric tools zip -> curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip && unzip fab*zip inside fabric-tools 10) from fabric-tools ./startFabric.sh ; ./createPeerAdminCard.sh 9) npm install -g composer-playground 10) then try composer runtime install -n sugurit -c PeerAdmin@hlfv1
1) unset 2) npm uninstall -g composer-cli 3) npm uninstall -g composer-playground 4) rm -rf $HOME/.composer 5) from fabric-tools ./teardownFabric.sh 6) remove any lingering dev-xx business network containers you may previously have deployed (they are separate docker containers eg `docker stop xx` ; `docker rm xxx ` ) 7) npm install -g composer-cli as non-root user 8 ) rm -rf fabric-tools dir && mkdir fabric-tools dir 9) get fabric tools zip -> curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip && unzip fab*zip inside fabric-tools 10) from fabric-tools ./startFabric.sh ; ./createPeerAdminCard.sh 9) npm install -g composer-playground 10) then try composer runtime install -n sugurit -c PeerAdmin@hlfv1
1) unset 2) npm uninstall -g composer-cli 3) npm uninstall -g composer-playground 4) rm -rf $HOME/.composer 5) from fabric-tools ./teardownFabric.sh 6) remove any lingering dev-xx business network containers you may previously have deployed (they are separate docker containers eg `docker stop xx` ; `docker rm xxx ` ) 7) npm install -g composer-cli as non-root user 8 ) rm -rf fabric-tools dir && mkdir fabric-tools dir 9) get newer fabric tools zip -> curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip && unzip fab*zip inside fabric-tools 10) from fabric-tools ./startFabric.sh ; ./createPeerAdminCard.sh 9) npm install -g composer-playground 10) then try composer runtime install -n sugurit -c PeerAdmin@hlfv1
[ ](https://chat.hyperledger.org/channel/composer?msg=6ipPFvDszBNZ33AqF) @fjblau - yes you should remove old fabric-tools dir - recreate - then do as you did with the curl (this - before step 7 etc etc
Screen Shot 2018-02-23 at 11.09.30 AM.png
right, yes, do the npm installs first (of course) :-)
whew. back amoung the living now. I owe you a beer.
[ ](https://chat.hyperledger.org/channel/composer?msg=yBeJqcXp8iioLgQpP) @rthatcher Thanks
what's the easiest way to add an org or network to an existing fabric network?
I tried to install the Hyperledger Composer runtime onto all of the Hyperledger Fabric peer nodes.
`composer runtime install -c PeerAdmin@fabric-network -n composer-network`
For then composer is every thing OK and the command succeeded. But I got the following error in peer node container logs
`2018-02-23 11:14:24.580 UTC [eventhub_producer] Chat -> ERRO 37f error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled`
Can someone help?
[ ](https://chat.hyperledger.org/channel/composer?msg=rdbkza4uncA7jDy9q) @sashico follow this tutorial -> https://www.ibm.com/developerworks/cloud/library/cl-add-an-organization-to-your-hyperledger-fabric-blockchain/index.html adding in an 'Org3' to an existing Fabric (eg. a BYFN from the Fabric docs site)
Hi All, Unable to run createPeerAdminCard.sh on ubuntu. Getting error Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1"
can anyone help me?
[ ](https://chat.hyperledger.org/channel/composer?msg=dYjCDu5yvD66njgx3) @waleed The problem you are seeing is is likely because the identity you are using to try to install the runtime onto a peer is not authorised to do so. Unfortunately the logs info from Fabric don't indicate this . If you are using the Composer development server then it creates an identity for you called PeerAdmin which you should use to deploy business networks. If you are using your own fabric then you need to look into how to import crypto material when building a peer administrator card and for which it has the PeerAdmin role to do so. Are you following this tutorial ? https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
[ ](https://chat.hyperledger.org/channel/composer?msg=dYjCDu5yvD66njgx3) @waleed The problem you are seeing is is likely because the identity you are using to try to install the runtime onto a peer is not authorised to do so. Unfortunately the logs info from Fabric don't indicate this . If you are using the Composer development server then it creates an identity for you called PeerAdmin which you should use to deploy business networks. If you are using your own fabric then you need to look into how to import crypto material when building a peer administrator card and for which it has the PeerAdmin role to do so. Or are you following this tutorial ? https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
[ ](https://chat.hyperledger.org/channel/composer?msg=SpCSskf2Lric5PQhd) @suva what's your node version ?
v6.13.0
[ ](https://chat.hyperledger.org/channel/composer?msg=ykfYcSabntiF9FKs2) @mahoney1 Thanks for your answer :)
I created my own fabric network (not from the sample repo) and my own composer-network (not Composer development server) by following this tutorial https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
I think you'r right but how can I import crypto material when building a peer administrator card?
[ ](https://chat.hyperledger.org/channel/composer?msg=zeQwpnc5bDWsW9ptF) @suva hi there - see answer here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--node-related-issues-install-issues you need a supported Node version (8.9.x) -, always check the prerequisites for Composer in case you are missing others before proceeding with a Composer install https://hyperledger.github.io/composer/installing/installing-prereqs.html
@waleed - with composer card create once you've got your public cert/private key crypto materials ready - typically something like `composer card create -p connection-org1-only.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k 78f2139bfcfc0edc7ada0801650ed785a11cfcdef3f9c36f3c8ca2ebfa00a59c_sk -r PeerAdmin -r ChannelAdmin ` - ie with card roles specified for the PeerAdmin identity - of course, the runtime install is ONE organisation's peers at at time, as you know.
@waleed - with composer card create once you've got your public cert/private key crypto materials ready - typically something like `composer card create -p connection-org1-only.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k 78f2139bfcfc0edc7ada0801650ed785a11cfcdef3f9c36f3c8ca2ebfa00a59c_sk -r PeerAdmin -r ChannelAdmin ` - ie with card roles specified for the PeerAdmin identity - of course, the runtime install is to ONE organisation's peers at at time, as you know.
@waleed - with composer card create once you've got your public cert/private key crypto materials ready - typically something like `composer card create -p connection-org1-only.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k 78f2139bfcfc0edc7ada0801650ed785a11cfcdef3f9c36f3c8ca2ebfa00a59c_sk -r PeerAdmin -r ChannelAdmin ` - ie with card roles specified for the PeerAdmin identity - of course, the runtime install is to ONE organisation's peers at a time, as you know.
Has joined the channel.
Has joined the channel.
can I create something like stampery with composer
[ ](https://chat.hyperledger.org/channel/composer?msg=QYDGxEiFGw9Y9GrtA) @mahoney1 Thanks for the help. This is not exactly what I am trying to do though. What I am interested in is in querying a B asset(which is in Bs array of the A asset) by its ID. I could get the A asset and than iterate over all its Bs to find the B that I am searching for, but I was wondering if there was an easier way to access that B asset by itd ID.
Has joined the channel.
@mahnoey1, I have upgrade the node version to 8.9.4. while running I getting the error
azureuser@block1rpy-ca0:~/fabric-tools$ ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.4
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'
Command failed
I tried to install sudo npm install -g composer-cli
but getting below response
azureuser@block1rpy-ca0:~/fabric-tools$ sudo npm install -g composer-cli
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated crypto@0.0.3: This package is no longer supported. It's now a built-in Node module. If you've depended on crypto, you should switch to the one that's built-in.
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated constantinople@3.0.2: Please update to at least constantinople 3.1.1
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
/usr/bin/composer -> /usr/lib/node_modules/composer-cli/cli.js
npm WARN ajv-keywords@2.1.1 requires a peer of ajv@^5.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules/composer-cli/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
plz help me
As a toy example, I modelled two Participants: a ConferenceOrganizer and a PaymentProvider, as soon as somebody applies for a conference ticket (part of a Transaction named Register), the ConferenceOrganizer creates an asset: a PaymentRequest with a certain unique reference. When the PaymentProvider receives a payment with that same reference, he submits a Transaction named Pay. The Pay transaction will update the PaymentRequest (new status: fullfilled) and ideally, execution of the Pay Transaction will also result in the creation of a new asset, called Ticket. The PaymentProvider should be able to execute the Pay Transaction, however I don't want him to have the CREATE Ticket permission. Apparently, when a transaction is submitted, you also need all permissions for all actions that are done within a transaction. So the question is: how can that interaction be modelled correctly?
[ ](https://chat.hyperledger.org/channel/composer?msg=rv2Lx54k84E3XTftW) @rthatcher I was able to get it to work. I uninstalled everything and then reinstalled. I've done this numerous times, but I'm sure I missed something super small. Thank you for the help! @makyl that command didn't work for me, but thank you.
[ ](https://chat.hyperledger.org/channel/composer?msg=9jQn5McaekfSzTXsF) @mihaipruna Stampery AFAIK Stampery is a verification and certification platform that generates legal proofs for all its sensitive documents implemented using public blockchain. Composer could be used to develop/model the use case (part 1) and implement the same certification service but obviously you would expose your own APIs / blockchain cloud infrastucture to provide a similar service.
[ ](https://chat.hyperledger.org/channel/composer?msg=742oW47R7TTDJ6CnD) @guyver - can I suggest you look at the ACL tutorial to understand some of the issues, it might provide the answer directly, or give you enough information to carry on:
https://hyperledger.github.io/composer/next/tutorials/acl-trading
@rthatcher thx for the pointer, I didn't find that one myself, I will have a look
@SimonOberzan you can just regex the ID you're looking for in the Bs array in your code - or - you can build a query (or available from queries.qry) that uses CONTAINS (search an array for an id) eg `query myquery { description: "Example CONTAINS Query" statement: SELECT org.acme.sample.A WHERE (BValuesArray CONTAINS (value == _$id)) ` which when executed should return the array id you've requested
@SimonOberzan you can build a query (or available from queries.qry) that uses CONTAINS (search an array for an id) eg `query myquery { description: "Example CONTAINS Query" statement: SELECT org.acme.sample.A WHERE (BValuesArray CONTAINS (value == _$id)) ` which when executed should return the array id you've requested - or if you don't want queries, you can just regex the ID you're looking for in the Bs array in your code - or - maybe `.filter` on your array such as shown here -> https://stackoverflow.com/questions/40336345/search-array-of-object-with-filter-and-keyword
@mahoney1 I see. Thank you for your help
[ ](https://chat.hyperledger.org/channel/composer?msg=ZG7cDf93xZmzgEM8M) @mahoney1 can it be done on Huperledger Fabric? I'm mostly interested in reliably storing information on a document
[ ](https://chat.hyperledger.org/channel/composer?msg=eBjgA9gCciJuPt3sm) @guyver as @rthatcher suggests see the ACL tutorial. In your scenario ConferenceOrganizer and PaymentProvider are two separate Participant types. So you would simply restrict the `PaymentProvider` to `Pay` Transactions - upon invocation for the reference id in question, it can create an event to your client application so that it can trigger a new Ticket creation.. Or alternatively, a process can be invoked to run a query for fulfilled PaymentRequests with no Tickets (so as to create them in the matching transaction logic) that would be run by a separate 'system' participant in your business network (and therefore creates the tickets).
@mahoney1 so it is correct that it cannot be embedded in the "contract", we are dependent on an "external" client application to do the coordination?
@suva - what OS are you running on? (Supported: Operating Systems: Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12) Have you successfully uninstalled all composer modules? Have you installed all the prereqs -> https://hyperledger.github.io/composer/installing/installing-prereqs.html and checked the versions?
[ ](https://chat.hyperledger.org/channel/composer?msg=JfrstQMEojo3oXsWZ) @guyver no your not. You will know your use case better (I'm just making suggestions). The 3rd suggestion is to let the CreateTicket to occur upon PaymentProvider executing the Pay transaction -only (ie the ACL can be restrictive to only allow a one-time CREATE ticket, for a matching Pay - (as I say - only in the scope of the Pay transaction) - PaymentProvider would not be able to 'CreateTicket' independently for any spurious attempts at creating 'fake' tickets elsewhere, but sounds like you don't want him to start the ticket create process ...
[ ](https://chat.hyperledger.org/channel/composer?msg=JfrstQMEojo3oXsWZ) @guyver it can be embedded yes.. You will know your use case better (I'm just making suggestions). The 3rd suggestion is to let the CreateTicket to occur upon PaymentProvider executing the Pay transaction -only (ie the ACL can be restrictive to only allow a one-time CREATE ticket, for a matching Pay - (as I say - only in the scope of the Pay transaction) - PaymentProvider would not be able to 'CreateTicket' independently for any spurious attempts at creating 'fake' tickets elsewhere, but sounds like you don't want him to start the ticket create process ...
its bad idea if you are relying on outside info, make sure at any point in time it should be same for all peers.
@mahoney1 thx for the input
[ ](https://chat.hyperledger.org/channel/composer?msg=Ekt9XF52jC8t5FRhg) @mihaipruna you'll need to ask on #fabric - there are also many resources on Stack overflow relating to the topic.
[ ](https://chat.hyperledger.org/channel/composer?msg=3dJc9iYmTN5Qhs42i) @mahoney1 thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=69wWBhyGg9aQQLtbY) @mahoney1 still have the same problem
but i've got this answer from fabric-room:
`@waleed this is the standard error when a client disconnects without hangup. It does not necessarily represent a failure on the task you attempted.`
What is your openion abot that?
[ ](https://chat.hyperledger.org/channel/composer?msg=s26gnXZZggM3TgLt7) @waleed right, so composer runtime is ok, the 'error' is a Fabric message (I'm not a Fabric expert FYI) is this in a Cloud environment ? Is this just from one peer log ? Possibly a sync issue ? In which case it may just be a 'contemporaneous' message (and as #fabric person said, it doesn' actually represent a failure - ie it recovered the situation itself by a sync and may occur from time to time)
[ ](https://chat.hyperledger.org/channel/composer?msg=eucmt3yk8GSvnjT3K) @mahoney1 - the 'error' from all peers logs in my org. I actually agree with #fabric person
[ ](https://chat.hyperledger.org/channel/composer?msg=eucmt3yk8GSvnjT3K) @mahoney1 - the 'error' from all peers logs in my org. I actually agree with the #fabric person
@mahoney1 - another question: do you know how to implement a login functionality?
I have generated angular app and the app communicates with the composer network via REST api as you know. now I want to create a login page and try to login using username and password
@waleed - I don't really - there are examples of using angular with say a JWT based auth strategy out there -> http://jasonwatmore.com/post/2016/09/29/angular-2-user-registration-and-login-example-tutorial someone yesterday posted using a custom REST server passport/ltoken method https://github.com/ypeckstadt/hyperledger-composer-rest-server
@simonmullaney I replied to your S/O'flow post
rest server
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Clipboard - February 23, 2018 3:45 PM
i did -c and used same card used to deploy bna but then error changes to unknown i ,s, n
this is used for deployment``` composer network deploy -a basic.bna -A admin -S adminpw -c PeerAdmin@hlfv1 -f admincard```
now i want to add participant in network with admin rights.
Hello - I am able to issue identities with the Composer REST Server running in multi-user mode. It provides me with a download for the card for the issued identity. I can then import the card with POST /wallet/import. This requires me manually download the file then click the 'Choose File' button to upload the .card file. Is there any way to do this automatically that I am missing? Thanks!
Hello everyone, can somebody assign this ticket to me? https://github.com/hyperledger/composer/issues/3442
Has joined the channel.
Has joined the channel.
Has joined the channel.
am I understanding correctly that Composer is to develop blockchain applications for Fabric?
in other words, it requires Fabric?
@mc Yes it does require Fabric. Hyperldedger Composer is a framework that operates on top of Fabric. In the end your model, transaction code, access list and queries all get translated to Fabric chaincode. So you can run Fabric without composer but you can't run Hyperledger Composer without Fabric.
Hello - I am trying deploy composer bna file to fabric. I could install composer runtime successfully, but not able to start using a .bna file. Hyperledger Fabric version 1.0.0 and composer version v0.16.3.
Hello - I am trying deploy composer bna file to fabric. I could install composer runtime successfully, but not able to start using a .bna file. Hyperledger Fabric version 1.0.0 and composer version v0.16.3. Below is the Error:
Hello - I am trying deploy composer bna file to fabric. I could install composer runtime successfully, but not able to start using a .bna file. Hyperledger Fabric version 1.0.0 and composer version v0.16.3. Below is the Error: ✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Transaction returned with failure: SyntaxError: unterminated statement (line 351)
Hello - I am trying deploy composer bna file to fabric. I could install composer runtime successfully, but not able to start using a .bna file. Hyperledger Fabric version 1.0.0 and composer version v0.16.3. Below is the Error: ✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Transaction returned with failure: SyntaxError: unterminated statement (line 351) . Any idea clue please ?
Has joined the channel.
Hi, How to write a query inside the smart contract? I cant get the syntax right.
Can someone please tag me and let me know
@mc @aneb Hyperledger Composer has been designed so that support for other distributed ledger technologies can be added. I am not aware of the state of any efforts with regard to other technologies, but see, for example, the second paragraph at this link: https://www.hyperledger.org/blog/2017/05/03/meet-hyperledger-composer
@silliman Seems like it was originally designed for Fabric but can be pluggable for other Blockchain frameworks, e.g. Sawtooth. The Sawtooth project may add this feature in 2018
@mc Correct...in fact it was originally named Fabric Composer but then at some point the designers came to the realization that, "hey, about 95% of our code is independent of the underlying blockchain implementation", (I'm paraphrasing), so at that point they renamed the project Hyperledger Composer to reflect the goal that other blockchains can add support. Whether or not they had to restructure any of their code to at that time to accommodate this intent, I don't know.
@silliman Thanks for the clarification.
Has joined the channel.
Does each composer app always use a single channel, and so all data will be shared by all peers on the network? If so, the data privacy can only be controlled by the ACL on the database. Is it a risk that someone may alter the ACL on a node and so he can access more data in his own database?
Has joined the channel.
anyone know what this error means? happens after i submit a bunch of transactions
```
{
"message": "Error: Error: Error trying to query business network. Error: 8 RESOURCE_EXHAUSTED: received trailing metadata size exceeds limit"
}
```
HI guys i have been trying to add Particpants to the participants registry using the Api in my node App.The connection works but it seems th participants is not being added to the registry though adding the participants in the composer playground works .
HI guys i have been trying to add Particpants to the participants registry using the Api in my node App.The connection works but it seems th participants is not being added to the registry though adding the participants in the composer playground works .
HI guys i have been trying to add Particpants to the participants registry using the Api in my node App.The connection works but it seems th participants is not being added to the registry though adding the participants in the composer playground works .
Screenshot from 2018-02-25 07-48-39.png
Problem with Adding participants through Participants Registry Api
Problem with Adding participants through Participants Registry Api
[ ](https://chat.hyperledger.org/channel/composer?msg=S5YztiXhZJ28pWMgo) @suva locate the compose-cli folder and npm rebuild --unsafe-perm .https://github.com/hyperledger/composer/issues/1531
[ ](https://chat.hyperledger.org/channel/composer?msg=a6CoSobr7qxRE6NQa) @mreddychitti Check it there are no errors in your models and ACL .Teardown fabric and startFabric .Also delete the cards you created
Captura de pantalla de 2018-02-25 15-17-52.png
Hi guys, I hope you can help me, I think it is a basic error... In playground Im trying to update a value when I submit a transaction but it doesnt change... This is my .bna file
https://github.com/dyeghikoo/blockchain-game/blob/master/basic-sample-network.bna?raw=true
thx!
Has joined the channel.
rebuild it i am running 8.9.4 it works fine after rebuild
hello everyone
is there a good tutorial or example on how to make a client with login to connect a composer created blockchain?
Hello guys, I want to report some incident (I personally may consider this a bug but hopefully I thought maybe taking people's opinion here may result in seeing things better).
Composer registers the NetworkAdmin under the participants as well; so if I apply a rule to all participants; it goes and apply for the Network Admin; and I personally think this is not a very good way of handling things.
I discovered that when I tried to block access for all participants so I wrote a rule to block participants from all system resources; I end up blocking the admin as well.
Any opinions?
no, depends on use case. if I have finalized the channel contract and don't want anyone to change anything as an admin.
Has joined the channel.
Hey gay,I am a newbies.I have a question. What does mean this error:Error: Uncaught (in promise): t: Model violation in instance org.chinachain.scn.proditem.v1.ProdItem#prodItemBarcode:2813 class org.chinachain.scn.proditem.v1.ProdInfo has value [object Object] expected a Resource or a Concept.
can i encrypt the transactions in *All Transactions* in hyper ledger composer ?
[ ](https://chat.hyperledger.org/channel/composer?msg=qgNNg9v8xeKTY6MMe)
In fact, I already have this rule :
```
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule historianAccess{
description: "Only allow members to read historian records referencing transactions they submitted."
participant(p): "org.odm.participants.Member"
operation: READ
resource(r): "org.hyperledger.composer.system.HistorianRecord"
condition: (r.participantInvoking.getIdentifier() != p.getIdentifier())
action: DENY
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
i have already deployed multiple org business network, now i want to add one more org in it. is it possible to add one more org in deployed business network, if yes then can anyone help me in this?
[ ](https://chat.hyperledger.org/channel/composer?msg=L5CrhE7oEcxirDYDm) @mahoney1 thanks
@prabvi01 => #fabric-questions
[ ](https://chat.hyperledger.org/channel/composer?msg=pFK5KG2tLC3xQevr2) @prabvi01 Currently Composer has a limitation with that since the composer chaincode doesn't support upgrade option of fabric.
hello everyone. Sorry to insist but is there a good tutorial or example on how to make a client with login to connect a composer created blockchain?
Hi,
I am looking for somebody that can advice me regarding the logic coding :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=seWqKB2MnrhhTfSQN) @majestade not specifically, no - there are examples of using angular with (say) a JWT based auth strategy out there -> http://jasonwatmore.com/post/2016/09/29/angular-2-user-registration-and-login-example-tutorial someone Fridayy posted a link using a custom REST server passport/ltoken method https://github.com/ypeckstadt/hyperledger-composer-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=pFK5KG2tLC3xQevr2) @prabvi01 follow this tutorial -> https://www.ibm.com/developerworks/cloud/library/cl-add-an-organization-to-your-hyperledger-fabric-blockchain/index.html adding in an 'Org3' to an existing Fabric (eg. a BYFN from the Fabric docs site)
[ ](https://chat.hyperledger.org/channel/composer?msg=LqFXiGSpxgGGKg6W8) @yoko according to this -> https://github.com/hyperledger-archives/fabric/blob/master/vendor/google.golang.org/grpc/codes/codes.go#L90 - "ResourceExhausted indicates some resource has been exhausted, perhaps // a per-user quota, or perhaps the entire file system is out of space. So that's something to look for.
[ ](https://chat.hyperledger.org/channel/composer?msg=LwoKqiyEXh7nn4sEN) @AkramAlkhalil this would be implemented at a Fabric level -> see here -> https://stackoverflow.com/questions/47648174/ledger-encryption-in-hyperledger-fabric-1-0 and here -> https://stackoverflow.com/questions/47766627/what-is-the-best-strategy-to-store-sensitive-data-on-hyperledger-composer for discussion items and links thereof
Does anyone have experience with creating network cards linked to a participant instead of the default networkAdmin? I couldn't figure out how to do so
[ ](https://chat.hyperledger.org/channel/composer?msg=6tKktgjbjsSn5KZcP) @Legiit see the docs -> https://hyperledger.github.io/composer/playground/id-cards-playground and here (CLI) -> https://hyperledger.github.io/composer/reference/composer.card.create.html and also here (APIs approach) -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#card-api-errors--resolutions
[ ](https://chat.hyperledger.org/channel/composer?msg=suN4m3CoBgyPTZwmR) @varunagarwal there are examples of using `buildQuery` here -> https://hyperledger.github.io/composer/business-network/historian under the section 'querying the Historian' (same principle for querying BN resources). Alternative is to write your queries in a .qry file and then call then with your variables a la ```return query('myQryTest', {
"tradingSymbol": var1,
"description": var2,
"mainExchange": var3,
"quantity": var4,
"owner": fqresourcevar
}) ``` etc
thanks @mahoney1 and @prabvi01. will check and give updates! cheers
[ ](https://chat.hyperledger.org/channel/composer?msg=rFRqvoFMWJZYM8jAC) @Jaline - Welcome :-)
Where are you seeing this problem? - In your Transaction Processing function? Please can you share your model and TP function.
I have configured SoftHsm in my project (node sdk [alpha]) as it is given below.
bccsp:
default: PKCS11
PKCS11:
Library: /usr/local/Cellar/softhsm/2.1.0/lib/softhsm/libsofthsm2.so
Pin: 98765432
Label: ForFabric
hash: SHA2
security: 256
filekeystore:
# The directory used for the software file-based keystore
keystore: msp/keystore
But I got error PKCS11 is not initilazied . If anybody has an idea plz share.
Note: I have installed softhsm, openssl etc.
Im trying to write a query that lets me search all assets with qr codes that are contained within an array
```
var statement = buildQuery('SELECT com.varun.shrimp.HarvestedShrimp WHERE (_$arrayOfValues CONTAINS qr)');
var statement = buildQuery('SELECT com.varun.shrimp.HarvestedShrimp WHERE (qr CONTAINS _$value)');
```
tried both statements but none are working.
any help plz
@rthatcher Thanks,the problem have been resovle by myself
[ ](https://chat.hyperledger.org/channel/composer?msg=vcQwrQavrjGut6wii) @varunagarwal - this link to a chat from Friday covers a Query with an Array
https://chat.hyperledger.org/channel/composer?msg=FvDPrGTp3NyyQc392
Has joined the channel.
Greetings everyone, have a great day ahead, I would like to ask regarding the identity issued system, would the identity issued to the participants be used as a log-in function and also as a private key in general blockchain context?
I would like to create a log-in function for some participants, do I do this based on the identityID that has been issued as the power to interact with the blockchain?
[ ](https://chat.hyperledger.org/channel/composer?msg=RaXsAdCns4myW9HoB) @mahoney1
I am sorry, but I fail to see the link where you set - link the participant to a card
in the CLI command**
in the CLI command and API**
[ ](https://chat.hyperledger.org/channel/composer?msg=Xoon2MCzFyJJjp2vZ) @mikeleow - the Identity is issued by the Fabric CA and contains the keys. The Business Network Card which is created can be used on the CLI, in Playground or In the REST Server using multiuser mode. (Or be used by the API)
The REST server provides a login function (authentication). The REST server is documented here:
https://hyperledger.github.io/composer/integrating/integrating-index
[ ](https://chat.hyperledger.org/channel/composer?msg=GxehxAefdwwGyPa4n) @bingo1234 Thanks for response .. It worked after corrected some issues in the cto files..
identity.png
Basically in multi-user mode, my chain code is having problem authenticating the "admin" card
Once a valid token is retrieved the user can use this token to authenticate the client for all future requests. During these requests I then match the owner of the token to a matching Composer identity.
upon reading the link, the matching has been done through the storage of the item in the mongo database?
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'admin' and the identifier 'e2738c66b51fa8e91beb02baac6c80eb16f02fab5e9f211cb262ab6d9e640887', has not been registered)",
"stack": "Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'admin' and the identifier 'e2738c66b51fa8e91beb02baac6c80eb16f02fab5e9f211cb262ab6d9e640887', has not been registered)\n at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)\n at
Hello everyone, in my multiuser mode, upon adding the network card to the wallet, this is what I am getting.
I had been stuck with this for couple of days now, what would be the issue here? :o
[ ](https://chat.hyperledger.org/channel/composer?msg=LYoyNZibQHYmjf4ZB) @mikeleow - I think that the issue you are facing is this one:
https://github.com/hyperledger/composer/issues/3413
It is labelled as a P2 issue and I would think it will be fixed soon.
ok! I shall wait for the fixes and continue working
thanks a lot!
Hello @rthatcher , I am sorry to bother you again, but I tried with this flow, using "system/identity/issue" I had issue an BNA to a participants, then gotten the bna card, I manage to import the card to the business network and it works, I can access some data in the network, do I have to keep importing the BNA each time my user want to log in to the network, lets say with the front end website (from my end, maybe I would save it and keep deploying)?
Hello guys. I was trying to query my business network for getting 'Order' asset filtered with 'WHERE' clause
```
```
query Q_BUY_SELL{
description: "Select filtered Orders "
statement:
SELECT namespace.Order
WHERE ((((orderType != _$filterType AND orderStatus == _$filterStatus) AND bidTokenPrice == _$bidTokenPrice) AND orderer != _$orderer) AND property == _$property )
}
```
Apparently only 2 of the conditions(1st and last) are being processed
and rest are being ignored
It could be an issue... but not sure how can i confirm that
StackOverflow: https://stackoverflow.com/questions/48926230/hyperledger-composer-queries-not-returning-expected-result/
[ ](https://chat.hyperledger.org/channel/composer?msg=mkR7Z8ponzNZnhu4E) @mikeleow - just some terminology here ... The BNA is the Business Network Archive (an archive/zip file containing the definition of the Business Network.) When this is running you can create Participants and Issue IDs to Participants which result in a .card file (which is also an acchive/zip). You can then Import the .Card file into the Wallet in the REST server. If you use MongoDB as a Datasource then the Wallets will be persisted in Mongo and will be available next time you start the REST server.
Cool! Thanks, underwood!
understood, thanks a lot!
@rthatcher
https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
It's this part I was wondering about. This is what the text says:
```
Adding a business network card to the wallet
First, you must issue a Blockchain identity to a participant in the business network. This example will assume that you have issued the Blockchain identity alice1 to the participant org.acme.mynetwork.Trader#alice@email.com, and that you have created a business network card for this Blockchain identity stored in the file alice1@my-network.card.
```
They assume the identity is issued and a card has been created, but this is the exact issue I am having. I wasn't able to issue an identity and create a card, linked to the identity. I always get a 400 - Not Authorized when issue'ing a new identity (I use the networkAdmin admin@
https://hyperledger.github.io/composer/integrating/enabling-multiuser.html
It's this part I was wondering about. This is what the text says:
```
Adding a business network card to the wallet
First, you must issue a Blockchain identity to a participant in the business network. This example will assume that you have issued the Blockchain identity alice1 to the participant org.acme.mynetwork.Trader#alice@email.com, and that you have created a business network card for this Blockchain identity stored in the file alice1@my-network.card.
```
They assume the identity is issued and a card has been created, but this is the exact issue I am having. I wasn't able to issue an identity and create a card, linked to the identity. I always get a 400 - Not Authorized when issue'ing a new identity (I use the networkAdmin admin@
How about GitHub authentication, has that been done?[ ](https://chat.hyperledger.org/channel/composer?msg=7pdZrHrfCKnwgd3Jb) @Legiit
@Legiit You don't link participants to business network cards directly - you "link" identities to participants (its a mapping) in Composer. The business network card has the identity's cert/key combo (credentials) -so that is an essential part of the business network card. When you USE the BN card, Composer matches the identity in its IdentityRegistry to the participant record. So add a participant -> https://hyperledger.github.io/composer/managing/participant-add.html - issue an identity for the participant -> https://hyperledger.github.io/composer/managing/identity-issue - for understanding participants and identities see here -> https://hyperledger.github.io/composer/managing/participantsandidentities.html
Is there a tutorial around on deploying composer for a production environment? I'm new to composer and HL. The Install docs on the web page only cover the online playground and creating a development environment. thanks
@brianweaveros as in was?
aws
yes , ideally but even if it was just Linux directions that would help. I have developers using composer, and we eventually need to get their application to be a robust production level of performance and availability.
Clipboard - February 26, 2018 8:17 PM
https://hyperledger.github.io/composer/managing/identity-list.html
return getIdentityRegistry().then(function (holderReg) {
console.log(holderReg.getAll( ))
});
Can anyone help me to use this function in hyperledger composer
Hi,
I got an issue with the a basic remove function...
If I trigger my create function I get the response that object with ID '2' already exists, but when I trigger my remove function it says there is no object with the ID '2'....
Not sure why require is not working in hyperledger composer playground. It says require not defined.
Guys! I have a question. Why my get query with composer SDK to the state of the ledger (CouchDB) takes up to 6 seconds, while direct query to the CouchDB HTTP API (for the same data) is performed less than 500 ms?
Guys! I have a question. Why my get query with composer SDK to the state of the ledger (CouchDB) takes up to 6 seconds (connection to the blockchain is already established), while direct query to the CouchDB HTTP API (for the same data) is performed less than 500 ms?
Guys! I have a question. Why my GET query with composer SDK to the state of the ledger (CouchDB) takes up to 6 seconds (connection to the blockchain is already established), while direct query to the CouchDB HTTP API (for the same data) is performed less than 500 ms?
[ ](https://chat.hyperledger.org/channel/composer?msg=KqsHb79dJkjMfkKsx) No one can help?
I also created an issue on github 3 days ago, but apparently no one noticed
https://github.com/hyperledger/composer/issues/3460
[ ](https://chat.hyperledger.org/channel/composer?msg=8m2DPpxfnXXNjTHJf) @sun337 - I have seen working queries with 4 conditions. I will have a quick test with your Query.
Thanks @rthatcher for taking time out to have a look.
I've submitted a test case below the github issue, explaining how to reproduce the issue.
Screen Shot 2018-02-27 at 12.04.47 AM.png
[ ](https://chat.hyperledger.org/channel/composer?msg=7DAZTXA4mn828BvoD) @sun337 hi there - see my suggestion in Stack Overflow - so perhaps (in the WHERE - something like ``` WHERE ( (orderType != _$filterType) AND orderStatus == _$filterStatus AND bidTokenPrice == _$bidTokenPrice AND property == _$property AND (orderer != _$orderer) ) ```
[ ](https://chat.hyperledger.org/channel/composer?msg=7DAZTXA4mn828BvoD) @sun337 hi there - see my suggestion in Stack Overflow - so perhaps (in the WHERE clause) - something like ``` WHERE ( (orderType != _$filterType) AND orderStatus == _$filterStatus AND bidTokenPrice == _$bidTokenPrice AND property == _$property AND (orderer != _$orderer) ) ```
[ ](https://chat.hyperledger.org/channel/composer?msg=xvoJJT9xXPSaCY2Gf) @sun337 - I have an example of your query working with 5 elements - I will send you details in a private message as it will be too long in the main channel here
I'll take a moment to appriciate your effort in the community @rthatcher . THIS is pure joy. To see people helping each other without any personal motive. World needs more of this and less of ... whatever that is.
Has joined the channel.
Hi,
I got a bug in this code but playground cant find. Does someone of you know what is wrong with it?
function addTrustedProvider(transact) {
if(!transact.member.trustedProviders.find(function(x){return x==transact.provider;}))
transact.member.trustedProviders.push(transact.provider);
return getParticipantRegistry('com.reference.member')
.then(function (participantRegistry) {
return participantRegistry.update(transact.record);
});
TypeError: undefined is not an object (evaluating transact.member.trustedProviders.find) is not an object. Do I need to use the find differently? What do you think? Thanks in advance.
I'm having trouble with a function that only pushes the current Asset onto an array in Participant if it doesn't already exist there. But the includes() function always returns true. Is there some shortcut (or longcut) I am missing here?
hey! is there any way to retrieve which Fabric organization was used to create a Composer participant? In other words, we would like to link a composer participant to a Fabric organization. Since the composer participant is created by using an organization's CA, I wonder why this is not a property of the participant or if there is any way to store this information (to which Fabric organization the participant belongs to).
Has joined the channel.
Clipboard - February 27, 2018 10:25 AM
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=hZGta5vBNyk8KjiSg) @rthatcher How can we migrate data from the previous version? I can't lose this data in the production application. Is adding new fields with optional field only option?
Has joined the channel.
Hello guys I am having some trouble regarding adding all the elements to the registry. I am using registry.addAll() method but only first two elements are getting added. I've posted this on stack-overflow please have a look at it.
https://stackoverflow.com/q/49002945/6168555
Thanks.
Hi!
When I start the rest API and upload my admin card to the wallet I get the following error: The current identity, with the name 'admin' and the identifier 'xxx', has not been registered)
Does anyone have an idea how this can be resolved?
Many thanks in advance!
Can anybody help how to check block and ledger details on ubuntu?
I have ran the first-network sample on ubuntu
I am able to see genesis block in channel-artifacts folder
is there any command to see no of blocks and block creation path etc etc
plz help
[ ](https://chat.hyperledger.org/channel/composer?msg=XyS8fSXMzXFiJEMRy) @Legiit - I think you are seeing the problem listed in this issue on Github:
https://github.com/hyperledger/composer/issues/3413
This is a P2 bug affecting the 0.16 stream and 0.17 stream, so I would expect it to be fixed soon. What version are you using? You could potentially revert to v0.16.3 of composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=FzMAgDmgKsFMmnSMR) @suva - this looks like a detailed Fabric question - I would try asking in the #fabric-questions channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=tQh2WQD22BArgpL8X) @ra_w - I don't think there is a good story for this at the moment - after 2 searches I'm not seeing it as an open issue in GitHub.
If you just want to keep the data - without being concerned about the immutability etc then it is easy to extract the data to JSON files using the REST server.
If you are concerned about the auditability, immutability of the data etc, then I would think writing some transactions to extract the data and re-insert might be the best option.
If you can't find an Issue in Github for this - please feel free to add one with a good use case description. https://github.com/hyperledger/composer/issues
ELOOP: too many symbolic links encountered,
anyone face such issue
upon installing
npm install --production loopback-connector-mongodb passport-github && \
> npm cache clean --force && \
> ln -s node_modules .node_modules
I will give it a try! @rthatcher
I will give it a try! @rthatcher I was using version 0.16.5
I will give it a try! @rthatcher I was using version 0.16.4
Has joined the channel.
can someone help me out i keep getting this error
Screen Shot 2018-02-27 at 2.07.21 AM.png
Screen Shot 2018-02-27 at 2.07.33 AM.png
Screen Shot 2018-02-27 at 2.09.10 AM.png
Does SampleAsset with id 8762 already exist in your hyperledger environment? @allentsai93
Does SampleAsset with id 8762 already exist in your composer environment? @allentsai93
If not, or if that asset does not have the field "owner" filled in, you'll get that error
yup it exists
i do have owner filled in though
Your sample asset did not field owner?
Screen Shot 2018-02-27 at 2.17.03 AM.png
you use "tx.owner"
I think it's supposed to be "tx.newOnwer" If I am not mistaken?
you use "tx.owner"
I think it's supposed to be "tx.newOwner" If I am not mistaken?
ohh right let me try that
its working now
thank you!
No problem ^^
@rthatcher
Downgrading from 16.4 to 16.3 did not work. I am still getting `The current identity, with the name 'admin' and the identifier 'xxx', has not been registered`
Is there maybe a way to register a new admin and try and upload his card?
Every time I restart my environment my participants are also deleted, maybe it is not the bug, but the admin truly is not registered..?
Although running composer network ping --card admin@
Every time I restart my environment my participants are also deleted (how can I keep them??), maybe it is not the bug, but the admin truly is not registered..?
Although running composer network ping --card admin@
Every time I restart my environment my participants are also deleted (how can I keep them??), maybe it is not the bug, but the admin truly is not registered..?
Although running `composer network ping --card admin@
@here Hello! I have next problem. When I start network `composer network start -c PeerAdmin@fabric-network -a tutorial-network.bna -A admin -S adminpw` I get admin card. But I can't ping network with that card:
```$ composer network ping --card admin@hc-blockchain
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Error: Invalid results returned ::FORBIDDEN
Command failed
```
What's wrong?
@argman STOP USING @ HERE !!!
[ ](https://chat.hyperledger.org/channel/composer?msg=sNw76QWftD5fX3sDw) @Legiit - I will test this with v0.16.3 and let you know the result.
With regard to restarting the environment - see this answer on Stack Overflow:
https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data/48075379?noredirect
[ ](https://chat.hyperledger.org/channel/composer?msg=sNw76QWftD5fX3sDw) @Legiit - I have just tested with v0.16.3 and the REST server imports the admin card into the Wallet OK, and I can then use it to access the other API endpoints.
If you can ping your network OK, then I suggest Exporting the card to a new filename and trying the new filename with the /wallet/import.
`composer card export -n admin@
[ ](https://chat.hyperledger.org/channel/composer?msg=hcZrTDiHtCds6drpv) @Paradox ok will take a look
[ ](https://chat.hyperledger.org/channel/composer?msg=DPzeoJM2D5qJLvT6P) @Jaline each update returns a promise in your for loop - see sample code here -> https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/trade-network/lib/logic.js#L49 and -> here https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/trade-network/lib/logic.js#L49 for returning all promises and adding using an `addAll()` to the registry (in the first example `vehicleRegistry` )
How to use 'FROM' field in hyperledger query language.
Clipboard - February 27, 2018 7:55 PM
@mahoney1
Hi all.
I'm trying to put some real names in a network based on the "Two Org" tutorial.
When I try to import the PeerAdmin cards I've created, I get the following error.
```
import -f PeerAdmin@byfn-network-org2.card -n PeerAdmin@byfn-network-org2
Failed to import identity. Error: Client.createUser parameter 'opts mspid' is required.
```
Looking at my json and yaml files as well as the crypto-config tree, everything seems in order WRT the MSPs.
Can someone give me any additional troubleshooting tips?
Does 'composer-cli' have a "debug" or "verbose" mode that mey better illuminate the issue?
Hi all.
I'm trying to put some real names in a network based on the "Two Org" tutorial.
When I try to import the PeerAdmin cards I've created, I get the following error.
```
composer card import -f PeerAdmin@byfn-network-org2.card -n PeerAdmin@byfn-network-org2
Failed to import identity. Error: Client.createUser parameter 'opts mspid' is required.
```
Looking at my json and yaml files as well as the crypto-config tree, everything seems in order WRT the MSPs.
Can someone give me any additional troubleshooting tips?
Does 'composer-cli' have a "debug" or "verbose" mode that mey better illuminate the issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=AkmNiRERqr8n9fNBG) answered on S/O
[ ](https://chat.hyperledger.org/channel/composer?msg=AkmNiRERqr8n9fNBG)@paradox answered on S/O
@Paradox answered on S/O
@Jaline - hard to tell ...but are you initialising/stepping through your array eg normally something like ```for (var i = 0; i < array.length; ++i) {
var prodItem= array[i];
// ...
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=uTYpsjTLKggWmGveM) @argman are you doing a single-org on localhost or are you perhaps using a Kubernetes cloud environment ?
[ ](https://chat.hyperledger.org/channel/composer?msg=YfRraYCTiWJtfN8x9) @mahoney1 A single-org on localhost
[ ](https://chat.hyperledger.org/channel/composer?msg=YfRraYCTiWJtfN8x9) @mahoney1 A single-org on localhost. I'm folowing next guids
https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html
[ ](https://chat.hyperledger.org/channel/composer?msg=YfRraYCTiWJtfN8x9) @mahoney1 A single-org on localhost. I'm folowing next guides
https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html
[ ](https://chat.hyperledger.org/channel/composer?msg=yQabtnfTDxMsDH8ec) @lucasdf you have two options minimally 1) - in v0.17.5 onwards - you can use `getCurrentIdentity()` to get the certificate and one assumes you can derive the DN from that for the Issuer - this would be available in a Transaction for example (so who is the current Identity its easy to get the current Participant already of course 2) on creating a participant record, you can add the Org to a field of that participant that denotes his/her source Org (and if required, have ACLs defined such that only participants from that Org can see that record(s) in its own Org only) etc
[ ](https://chat.hyperledger.org/channel/composer?msg=yQabtnfTDxMsDH8ec) @lucasdf you have two options minimally 1) - in v0.17.5 onwards - you can use `getCurrentIdentity()` to get the certificate and one assumes you can derive the DN from that for the Issuer - this would be available in a Transaction for example (so who is the current Identity ; its easy to get the current Participant already of course 2) on creating a participant record, you can add the Org to a field of that participant that denotes his/her source Org (and if required, have ACLs defined such that only participants from that Org can see that record(s) in its own Org only) etc
Hello everyone, is the issue identity only happen once?
[ ](https://chat.hyperledger.org/channel/composer?msg=XqXmnogqBvttXbupn) @dpurnima0709 - I'm currently investigating the FROM clause in Queries. At the moment it is not working and I would suggest you avoid it.
[ ](https://chat.hyperledger.org/channel/composer?msg=XqXmnogqBvttXbupn) @dpurnima0709 - I'm currently investigating the FROM clause in Queries. At the moment it is not working and I would suggest you avoid it.
This has now been answered on Stack Overflow: https://stackoverflow.com/questions/49005855/sample-code-to-show-the-use-of-from-in-hyperledger-composer-query-language/49011061#49011061
@rthatcher Thanks a ton!
Exporting the card from CLI and importing it in the rest API works. This means somewhere my original card somewhere gets replaced...
Anyways, on to my last and final step!
Which is to issue new id's (cards) so that I can interact with the rest server through another participant. Instead of the networkAdmin! Any guidance to achieve this?
@rthatcher Thanks a ton!
Exporting the card from CLI and importing it in the rest API works. This means somewhere my original card gets replaced...
Anyways, on to my last and final step!
Which is to issue new id's (cards) so that I can interact with the rest server through another participant. Instead of the networkAdmin! Any guidance to achieve this?
[ ](https://chat.hyperledger.org/channel/composer?msg=2SmhiNpECiNYjdr2k) @Legiit - the endpoint `/system/identities/issue` will issue an identity to an existing Participant and create a .card file that you can use.
I think the Problem you had with your admin card was that you were using a version that contained a 'One-time Secret' rather than the Certificates. By exporting the working card you exported a version with Certificates and it worked OK.
There is more information about cards here:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--business-network-cards
[ ](https://chat.hyperledger.org/channel/composer?msg=qrpXsADD5Jw7jog8u) @mikeleow - There are cases where you might want to Issue more than one Identity to a Participant - for instance the Participant might be a General Call Center Participant and you Issue IDs to individual staff members.
If you have made an error with the Issuing of an Identity, or want to replace it, you can use Identity Revoke on the original, and the Issue a new Identity.
@MartinKmer, assuming `transact.member.trustedProviders` is an array, it seems your `find` is returning undefined - I tried this ```function addTrustedProvider(myArray) {
var array = [];
var x = ''
if(!myArray.find(function(x) {
return x == '2';
}));
array.push(x);
var item = myArray.find(function(x) { return x == '2'; });
console.log("what is x " + item);
}``` ie first pushes to another array object, second just assigns it and console.logs - and where `myArray` is called using `addTrustedProvider(myArray);`
@MartinKrmer , assuming `transact.member.trustedProviders` is an array, it seems your `find` is returning undefined - I tried this ```function addTrustedProvider(myArray) {
var array = [];
var x = ''
if(!myArray.find(function(x) {
return x == '2';
}));
array.push(x);
var item = myArray.find(function(x) { return x == '2'; });
console.log("what is x " + item);
}``` ie first pushes to another array object, second just assigns it and console.logs - and where `myArray` is called using `addTrustedProvider(myArray);`
I run this script every time my network starts.
```
#!/bin/bash
cd ..
composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName xxx-network
composer network start --card PeerAdmin@hlfv1 -A admin -S xxx -a ./dist/xxx-network.bna -f networkadmin.card
composer card delete --name admin@xxx-network // delete old admin card
composer card import -f networkadmin.card // import new admin card
composer network ping --card admin@xxx-network // Success!
```
Doesn't this create the certificates by using the import command?
As I can see from the link you gave. I am confused why this networkadmin.card would not work when importing it to the rest api
When you create the Network Admin card with the `composer network start` command the card is created with the one-time secret (adminpw), and the first time you use it Certificates are downloaded and the secret is no longer valid. The ping command on the CLI has downloaded the certificates BUT you are importing the old card file with the secret into the REST server wallet - and it doesn't work.
Back on the command line export the card WITH the certificates with a command like this:
`composer card export --file net-adm-cert.card --name admin@tutorial-network` and then use then new card to import into the REST server Wallet.
(You can compare the sizes of the new and old .card files and see if the new one is larger now that it contains the certificates.)
@Legiit - When you create the Network Admin card with the `composer network start` command the card is created with the one-time secret (adminpw), and the first time you use it Certificates are downloaded and the secret is no longer valid. The ping command on the CLI has downloaded the certificates BUT you are importing the old card file with the secret into the REST server wallet - and it doesn't work.
Back on the command line export the card WITH the certificates with a command like this:
`composer card export --file net-adm-cert.card --name admin@tutorial-network` and then use then new card to import into the REST server Wallet.
(You can compare the sizes of the new and old .card files and see if the new one is larger now that it contains the certificates.)
Thanks a lot @rthatcher
Alright thanks for clarification! @rthatcher
Hi, is here someone that knows what's wrong with my asset remove function?
function deleteRecord(recorddelete){
var recordID = 3;
var factory = getFactory();
return getAssetRegistry('org.gt.Record')
.then(function (recordAssetRegistry) {
return recordAssetRegistry.remove(recordID);
});
}
It always says that Error: Object with ID '3' in collection with ID does not exist, although it is 100% sure that object with recordID=3 exists
I'm getting `[shim] userChaincodeStreamGetter -> ERRO 002 Error trying to connect to local peer: context deadline exceeded` error when I start a network using `composer network start` for multi orgs network. Any ideas?
How can i increase Composer Pool size?
It defaults to 8
[ ](https://chat.hyperledger.org/channel/composer?msg=TonzffgHDQjHq5wQD) @Santhosh_S are you using Kubernetes based environment ? https://stackoverflow.com/questions/46675993/proper-configuration-for-fabric-peers-in-kubernetes answer 2 may help you.
[ ](https://chat.hyperledger.org/channel/composer?msg=TonzffgHDQjHq5wQD) @Santhosh_S are you using Kubernetes based environment or localhost based ? https://stackoverflow.com/questions/46675993/proper-configuration-for-fabric-peers-in-kubernetes answer 2 may help you if the former. Otherwise if localhost seems like your connection profile info is not configured properly to contact the peer in question
Has joined the channel.
"AND query language"
whoops ignore
composer runtime install -c PeerAdmin@fabric-network -n tutorial-network command gives me error
Clipboard - February 27, 2018 11:56 AM
but when i run command composer network deploy -a tutorial-network.bna -A admin -S adminpw -c PeerAdmin@hlfv1 -f admincard
works fine
what is difference between composer install and then network start. and directly deploying the .bna file
Has joined the channel.
Can any one help me with complex queries
query providerQueryonRecord {
description: "Select patient records on trusted provider"
statement:
SELECT com.cgm.ph.Record
WHERE (patient == (SELECT com.cgm.ph.Patient WHERE (trustedProviders CONTAINS _$provider))
}
Like this: but it is not working where I have to select something
[ ](https://chat.hyperledger.org/channel/composer?msg=a3tLQdT98FtcfsKai) @kakuzu - the deploy command is an old command and not recommended - I think it will be removed at some stage. But it ran both steps for 'runtime install' and 'network start'.
For the runtime install you specify a *Network Name* `composer runtime install -n tutorial-network ....`
For the network start you specify a *BNA file name* `composer network start -a tutorial-network@0.0.1.bna ...`
ok thanks . for deployment i am getting success but when i do composer network start it fails
Clipboard - February 27, 2018 12:44 PM
@rthatcher this is the problem should i again tear all start from the beginning. i am doing the deployment to a single org
[ ](https://chat.hyperledger.org/channel/composer?msg=bnQCNxwFWJjkoe7xR) @kakuzu - even though you have called the file *peri.bna* it looks like the Network Name is *perishable-network*. So if you do a runtime install with that Network Name, and then a network start it should be OK.
Has joined the channel.
I am working through setting up an instance of Hyperledger on a free tier cluster in the IBM Cloud (https://ibm-blockchain.github.io) I have the cluster up and running Hyperledger and I am connected to the composer playground via my browser...I am interested in deploying a test business network and it requires credentials for the network admin. What is the best way to generate the cert and key that are compatible with Hyperledger? I attempted to generate a self signed cert and key using openssl but the composer does not accept them. Any insight is appreciated...
CA server
I am new to composer and It might be a basic question but I would like to know what does `-->` and `o` represent in the code
@phanikumar1210 https://www.youtube.com/watch?v=S2S5cEcmx7Q&t=1343s
I will have a look at it @kakuzu, thank you.
Hey, is there an existing Docker image that has the composer CLI commands?
I'm looking to dockerize the entire Hyperledger Compose development environment, so I need something suitable to running commands like `composer card list`. It's easy enough to build, but it's always better to use official stuff for something like this.
Clipboard - February 27, 2018 2:22 PM
following this but if is use composer deploy it will work fine . trying this https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
following these command but if is use''' composer deploy '''it will work fine . trying this https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
following these command but if is use``` composer deploy ```it will work fine . trying this https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
following these command but if is use``` composer deploy ```works fine . trying this https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
@CorentinPacaud @kakuzu Thank you for the reply.
I am sorry, I was offline for quite sometime.
np brother,
Welp, I have come to an issue that seems to be up still.
How can I query the historian by asset??
Clipboard - February 27, 2018 2:51 PM
no idea with the query I am leaning now how can I manage fabric and composer.
Well, let me be more clear.
Is this issue solved?
https://stackoverflow.com/questions/46372302/how-do-i-find-the-history-of-transactions-for-an-asset-in-a-blockchain-implement/46378623#46378623
Or have no idea?
It's old, but one of my team members reports it still persists.
and I am about to investigate it now as well
so I thought yea; maybe use a hand here
Has joined the channel.
Is there a guide on how to install Composer on new peers? We have instantiate a network with Composer. Afterwards, we added a new peer to the Fabric network. I am not sure how to install the runtime and instantiate the banana on this new peer. Should we create a new connection_template containing only the new peer and then install the runtime and instantiate the network on it? Has someone ever deal with new peers on an existing Composer network?
Has joined the channel.
getting error *Type retailer is not defined in namespace org.myorg.supplychain_network* Can someone let me know in which file the issue could be
@mahoney1 Thank you for answering all questions in this channel. It's all appreciated.
const
Has joined the channel.
Has joined the channel.
Hi Team,
I have setup a Blockchain network on 2 nodes and am trying to expose them as rest services. When i try to start the composer network, I get the following error. Kindly sugget what the error indicates and any suggestions to resolve it.
⠹ Starting business network definition. This may take a minute...(node:6584) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: The event hub has not been connected to the event source
(node:6584) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: The event hub has not been connected to the event source
Command failed
How to solve Promise in the loop in order to create and call?
``` /**
* Sample business network definition.
*/
namespace org.acme.sample
asset Account identified by accountId {
o String accountId
--> Customer owner
o Double value
}
participant Customer identified by customerId {
o String customerId
o String firstName
o String lastName
}
transaction SampleTransaction identified by transcationId {
o String transcationId
--> Account from
--> Account to
o Double amount
}
```
I was getting * t: Transaction should not specify an identifying field. Line 18 column 1, to line 23 column 2. *
I was getting * t: Transaction should not specify an identifying field. Line 18 column 1, to line 23 column 2. * this error Am i missing anything?
Has joined the channel.
Does composer enable multi channel creation on the blockchain ?
https://github.com/hyperledger/composer/issues/2103
Hello.. I am using composer v0.16.0 with fabric v1.0. Now I want to upgrade it to v0.16.4 (latest version). How can I upgrade Fabric tools from v1.0.0 to v1.0.4?
I get this error when I ping my network using:
`composer network ping -c admin@composer-network`
Clipboard - February 28, 2018 9:53 AM
could anyone help please! :)
[ ](https://chat.hyperledger.org/channel/composer?msg=fhXNY4B6K5EyPjCvq) @waleed Try to export your card one more time
[ ](https://chat.hyperledger.org/channel/composer?msg=ZbbnnheY3EwBC424m) @leonsp here -> https://hub.docker.com/r/hyperledger/composer-cli/
[ ](https://chat.hyperledger.org/channel/composer?msg=X7n286DmYavh3FC3Z) @argman still have the same problem :(
[ ](https://chat.hyperledger.org/channel/composer?msg=5LNgpb66e7sXn7qn6) @dpurnima0709 - Did the composer runtime install complete OK? I would check that the connection.json you have used correctly specifies the eventUrl for the Peers, including taking note of whether you have TLS enabled or not so whether the eventUrl has grpc or grpcs. You should also look at the docker logs for the peers at the time you ran that command.
[ ](https://chat.hyperledger.org/channel/composer?msg=wRBk89fmcbvoRFiME) @ranjithkumarmv - You shouldn't specify an 'identified by ID for a transaction, so your transaction definition should look like this:
[ ](https://chat.hyperledger.org/channel/composer?msg=wRBk89fmcbvoRFiME) @ranjithkumarmv - You shouldn't specify an 'identified by ID for a transaction, so your transaction definition should look like this:
```
transaction SampleTransaction {
--> Account from
--> Account to
o Double amount
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=NCBgckdf9eMjGdxnj) @dpurnima0709 can be related to a number of issues, EventUrls are only defined - as @rthatcher mentions in the connection profile (that goes into your business network card) for 'this' Org's peers (and not other Org's peers) in a multi-node (machine?) setup.
[ ](https://chat.hyperledger.org/channel/composer?msg=NCBgckdf9eMjGdxnj) @dpurnima0709 can be related to a number of issues, - as @rthatcher mentions in the connection profile (that goes into your business network card). -EventUrls are only defined for 'this' Org's peers (and not other Org's peers) in a multi-node (machine?) setup.
can [ ](https://chat.hyperledger.org/channel/composer?msg=hGsPmJZ9hD4EvgkMw) @waleed `composer card list --name admin@composer-network` - which version of Composer, is it single org / multi org ??
[ ](https://chat.hyperledger.org/channel/composer?msg=v3JSmceohbLDBNaww) @mahoney1 I use composer v0.16.4
Clipboard - February 28, 2018 10:49 AM
Has joined the channel.
Hello, I am working on fabric composer for a POC in which i need to implement assetB in an assetA while both assets have different owners . How can we write .ACL for such implementation? I have tried by Denying owner of assetA to modify assetB but as assetB is part of assetA he can able to bypass that rule and able to modify assetB which is present in assetA.
[ ](https://chat.hyperledger.org/channel/composer?msg=FoS46jMpmseJqMpXD) @thelostone-mc - Composer currently supports only one Channel per Connection profile (business network card) - if you need to connect to 2 channels you will need to connection profiles (2 business network cards)
@mahoney1 wait a second! I think I know what the problem is
[ ](https://chat.hyperledger.org/channel/composer?msg=FoS46jMpmseJqMpXD) @thelostone-mc the comments/discussion in that issue capture the current status - in particular this comment.https://github.com/hyperledger/composer/issues/2103#issuecomment-340458536 In Composer 0.17.x (with Fabric 1.1) it can only support a single channel interaction presently where a Comon Connection Profile may have multiple channels defined ( it will choose the first defined one)
@mahoney1 Just wanted to make it still hasn't been incorporated
Hi All. I have an error trying to launch composer. When I run this command: 'composer identity request -c PeerAdmin@byfn-network-org1 -u admin -s adminpw -d alice', I receve this error:
'''
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 140156085024576:error:1411713E:SSL routines:ssl_check_srvr_ecc_cert_and_alg:ecc cert not for signing:../deps/openssl/openssl/ssl/ssl_lib.c:2520:
140156085024576:error:14082130:SSL routines:ssl3_check_cert_and_algorithm:bad ecc cert:../deps/openssl/openssl/ssl/s3_clnt.c:3550:
''' .
As Fabric network I'm trying to modify the 2 Orgs network (the tutorial on Composer website) to have, in the final network, only one organization with TLS connection
Hi All. I have an error trying to launch composer. When I run this command: 'composer identity request -c PeerAdmin@byfn-network-org1 -u admin -s adminpw -d alice', I receve this error:
'''
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 140156085024576:error:1411713E:SSL routines:ssl_check_srvr_ecc_cert_and_alg:ecc cert not for signing:../deps/openssl/openssl/ssl/ssl_lib.c:2520:
140156085024576:error:14082130:SSL routines:ssl3_check_cert_and_algorithm:bad ecc cert:../deps/openssl/openssl/ssl/s3_clnt.c:3550:
''' .
As Fabric network I'm trying to modify the 2 Orgs network (the tutorial on Composer website) to have, in the final network, only one organization with TLS connection. Can someone help me with this problem? Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=RNSpL9brXcgqQAMTC) @mahoney1 I was wrong. I didn't solve the problem. I followed "Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric for a single organization"
[ ](https://chat.hyperledger.org/channel/composer?msg=HF8MxdNhvznuXqkfH) @AkshayJindal - Assuming you have exported and saved any Business Network you are working on...
Stop your fabric if it is running with `stopFabric.sh`
Delete all your docker containers (assuming you don't have other non-composer/fabric containers) `docker rm $(docker ps -aq)`
Delete all your docker images (assuming you don't have any non-composer images) `docker rmi $(docker images -q)`
Delete your fabric-tools folder and all the contents.
Return to doc for Installing Composer and start at Step 4: Install Hyperledger Fabric :
https://hyperledger.github.io/composer/installing/development-tools.html
[ ](https://chat.hyperledger.org/channel/composer?msg=7BboXWjgbx6Xu2a4T) @Stecec - this command is trying to 'hit' your CA server. There is some mismatch of certificates. I would suggest checking the config of the CA, and look at the CA section of the connection.json you used to create the cards. You could also check the logs of the CA container
Has joined the channel.
Hi There...I am new to composer and learning....anybody knows how to write this models in model files:
asset SampleAsset identified by assetId {
o String assetId
--> SampleParticipant owner
o String value
[ ](https://chat.hyperledger.org/channel/composer?msg=CAyd3ruC8L6LXtP94) @chandrakanthm currently not possible for property (field/attribute) based access control in ACL runtime -> https://github.com/hyperledger/composer/issues/983 - don't know if you considered an outer Asset that is identified by Asset A and could have ``--> AssetB[] assetB` which Is an array of relationships to AssetBs related to Asset A. (You could also have a relationship to `--> Asset A` in that outer asset too of course). Asset A and B would be in separate asset registries, which means your ACLs work for both owners against those - but your outer Asset registry can maintain relationships (no duplication) of what Bs are associated with an Asset (A) - if not 1-to-1. Not sure if that helps you.
[ ](https://chat.hyperledger.org/channel/composer?msg=CHoBRozeyf5oH75bv) @waleed did your runtime install and network start work ok? What happens if you try connect to your business network in Playground as admin? Its difficult to know what went wrong, as this tutorial has been working for quite some time now.
[ ](https://chat.hyperledger.org/channel/composer?msg=CHoBRozeyf5oH75bv) @waleed did your runtime install and network start work ok? What happens if you try connect to your business network in Playground as admin? Its difficult to know what went wrong, as this tutorial (https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org) has been working for quite some time now.
[ ](https://chat.hyperledger.org/channel/composer?msg=8onNAcw7yXS2peubZ) @hkakaiya hi there - you can find out more on the Modeling language here -> https://hyperledger.github.io/composer/latest/reference/cto_language.html and I suggest to have a play in Composer Playground and 'deploy one of the sample business networks' (tdifferent choices shown when you scroll down) there https://composer-playground.mybluemix.net/ you can try out adding new fields, and hit 'Test' to createJSON records for your model to see what the modeled Asset etc looks like
@mahoney1 hi, is there a way to declare the chaincode files loading precedence/ dependencies with composer 0.16.X? i.e. something similar to the modules "import" directives
@MuhammadSalah still an issue captured by these issues https://github.com/hyperledger/composer/issues/2458 and https://github.com/hyperledger/composer/issues/991
[ ](https://chat.hyperledger.org/channel/composer?msg=WxPem9wiqWdewysFE) @phanikumar you may have an issue in your transaction code ?? See https://stackoverflow.com/questions/48155600/name-space-error
@ [ ](https://chat.hyperledger.org/channel/composer?msg=3whqHkMJL47WsFyBW) @kakuzu equivalent is to do a runtime install and a network start as shown in 'Step Fou Deploying the Business Networkr' in this tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial (replace tutorial-network with perishable-network in your case etc)
[ ](https://chat.hyperledger.org/channel/composer?msg=pB3EfmKZwfF8SpjmW) @uber.twin no there isn't..
@mahoney1 I saw the example of making a query but stil stuck with this
Asset A has an array of Asset B.
need to retrieve all asset B contained in the array stored in Asset A
keep getting this
` ValidationException: Model violation in instance com.varun.shrimp.ClaimProcessedShrimp#e59d5f76-e238-4357-8416-a140b2f98e89 class com.varun.shrimp.HarvestedShrimp has value Resource {id=com.varun.shrimp.HarvestedShrimp#0630} expected a Relationship.`
@varunagarwal is it similar to this ```var statement = buildQuery('SELECT com.varun.shrimp.HarvestedShrimp WHERE (_$arrayOfValues CONTAINS qr)');
var statement = buildQuery('SELECT com.varun.shrimp.HarvestedShrimp WHERE (qr CONTAINS _$value)');``` - would need to see your code/model to see what's not happening).
@varunagarwal is it similar to this ```var statement = buildQuery('SELECT com.varun.shrimp.HarvestedShrimp WHERE (_$arrayOfValues CONTAINS qr)');
;``` - would need to see your code/model to see what's not happening).
@varunagarwal is it similar to this ```var statement = buildQuery('SELECT com.varun.shrimp.HarvestedShrimp WHERE (_$arrayOfValues CONTAINS qr)');
``` - would need to see your code/model to see what's not happening).
I have tried the 2nd one. Doesnt work. Il post by entire thing
just send me a BNA maybe?
when I do
`return query(statement, someValue)`
I put the asset in the someValue right?
Should I?
I dont mind
eg ```return query('myQryTest', {
"tradingSymbol": "3",
"mainExchange": "2",
"description": "22"
})``` where I have 3 params defined in my query (that I use `buildQuery` for - or put in a .qry file eg _$tradingSymbol etc etc)
yes i have used queries for single values before. But in the case above, do I pass the array of assets B, or the entire asset A
tried both
So asset attributes.so you pass in the array field
So asset attributes - so you pass in the array field
or attribute (qr - presumably an array field) as you've done.
[ ](https://chat.hyperledger.org/channel/composer?msg=MYEcumLwLoxuPHm4K) @rthatcher Thanks for your answer. How is possible to see logs of the CA container?
@Stecec - checkout the `docker logs` command
Hi All. I encountered an error of `Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]` when I run the command of `composer identity issue --card admin@marbles -u tom -a org.acme.model.Collector#mike@example.com`.
I am using the version of `v0.17.6`.
@Stecec which container's log? fabric-ca?
[ ](https://chat.hyperledger.org/channel/composer?msg=QgjyjXMngJEJ2GEYK) Thanks. I check the log, these are the last 6 lines:
'''
2018/02/28 11:53:15 [INFO] Home directory for default CA: /etc/hyperledger/fabric-ca-server
2018/02/28 11:53:15 [DEBUG] 1 CA instance(s) running on server
2018/02/28 11:53:15 [DEBUG] TLS is enabled
2018/02/28 11:53:15 [DEBUG] Client authentication type requested: noclientcert
2018/02/28 11:53:15 [INFO] Listening on https://0.0.0.0:7054
2018/02/28 11:53:45 http: TLS handshake error from 192.168.56.111:45676: EOF
'''
I can not understand where is the problem. These are my connection.json file (the ca section) and docker ca yaml file:
'''
"ca": {
"url": "https://192.168.56.111:7054",
"name": "ca-org1",
"cert": "crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt",
"hostnameOverride": "ca.org1.example.com"
},
'''
'''
version: '2'
networks:
byfn:
services:
ca0:
image: hyperledger/fabric-ca
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca-org1
- FABRIC_CA_SERVER_TLS_ENABLED=true
- FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem
- FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/CA1_PRIVATE_KEY
ports:
- "7054:7054"
command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/CA1_PRIVATE_KEY -b admin:adminpw -d'
volumes:
- ./crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config
container_name: ca_peerOrg1
networks:
- byfn
'''
I can't see any error. Do you have any suggestions? Thanks a lot
[ ](https://chat.hyperledger.org/channel/composer?msg=QgjyjXMngJEJ2GEYK) Thanks. I check the log, these are the last 6 lines:
```
2018/02/28 11:53:15 [INFO] Home directory for default CA: /etc/hyperledger/fabric-ca-server
2018/02/28 11:53:15 [DEBUG] 1 CA instance(s) running on server
2018/02/28 11:53:15 [DEBUG] TLS is enabled
2018/02/28 11:53:15 [DEBUG] Client authentication type requested: noclientcert
2018/02/28 11:53:15 [INFO] Listening on https://0.0.0.0:7054
2018/02/28 11:53:45 http: TLS handshake error from 192.168.56.111:45676: EOF
```
I can not understand where is the problem. These are my connection.json file (the ca section) and docker ca yaml file:
```
"ca": {
"url": "https://192.168.56.111:7054",
"name": "ca-org1",
"cert": "crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt",
"hostnameOverride": "ca.org1.example.com"
},
```
```
version: '2'
networks:
byfn:
services:
ca0:
image: hyperledger/fabric-ca
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca-org1
- FABRIC_CA_SERVER_TLS_ENABLED=true
- FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem
- FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/CA1_PRIVATE_KEY
ports:
- "7054:7054"
command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/CA1_PRIVATE_KEY -b admin:adminpw -d'
volumes:
- ./crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config
container_name: ca_peerOrg1
networks:
- byfn
```
I can't see any error. Do you have any suggestions? Thanks a lot
[ ](https://chat.hyperledger.org/channel/composer?msg=kvR2k2x8zzaP3pZ3D) @mahoney1 runtime install works.
I have this error onmy playground
[ ](https://chat.hyperledger.org/channel/composer?msg=kvR2k2x8zzaP3pZ3D) @mahoney1 runtime install works.
I have this error on my playground
Clipboard - February 28, 2018 1:00 PM
@mahoney1 maybe I dont have the correct connection profile
```{
"name": "fabric-network",
"type": "hlfv1",
"ca": {
"url": "https://localhost:7054",
"name": "ca.org1.4eyes.ch",
"trustedRoots": "fabric-network/crypto-config/peerOrganizations/org1.4eyes.ch/ca/ca.org1.4eyes.ch-cert.pem",
"verify": true
},
"orderers": [
{
"url" : "grpcs://localhost:7050",
"cert": "fabric-network/crypto-config/ordererOrganizations/4eyes.ch/orderers/orderer.4eyes.ch/tls/ca.crt",
"hostnameOverride": "orderer.4eyes.ch"
}
],
"peers": [
{
"requestURL": "grpcs://localhost:7051",
"eventURL": "grpcs://localhost:7053",
"cert": "fabric-network/crypto-config/peerOrganizations/org1.4eyes.ch/peers/peer0.org1.4eyes.ch/tls/ca.crt",
"hostnameOverride": "peer0.org1.4eyes.ch"
},
{
"requestURL": "grpcs://localhost:8051",
"eventURL": "grpcs://localhost:8053",
"cert": "fabric-network/crypto-config/peerOrganizations/org1.4eyes.ch/peers/peer1.org1.4eyes.ch/tls/ca.crt",
"hostnameOverride": "peer1.org1.4eyes.ch"
}
],
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": 300
}```
@Stecec - looks like the problem is in the yaml file:
` - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/CA1_PRIVATE_KEY`
the CA1_PRIVATE_KEY needs to be replaced with the key file name - a long numeric filename enging in _sk
[ ](https://chat.hyperledger.org/channel/composer?msg=j5t7iHmGnnK2xCdSP) @rthatcher Yes. I already replace it. Sorry this is my template .yaml file
@walee [ ](https://chat.hyperledger.org/channel/composer?msg=xo5CHyN27MWeisA5e) @waleed it (the connection profile) should be as shown in the tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org - I might suggest to do start the tutorial again (its not long) - and do a teardown (from fabric-tools) and stop/remove your old business network docker containers - then clear out your card directory (actually, it could be possible that you had an old admin card previously, even though you imported the new and its using an old certificate ?) - to clear your card directory do `rm -rf $HOME/.composer` - then do the tutorial (as per the instruction) - else we can try carry on debugging.your current environment, up to you.
[ ](https://chat.hyperledger.org/channel/composer?msg=xo5CHyN27MWeisA5e) @waleed it (the connection profile) should be as shown in the tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org - I might suggest to do start the tutorial again (its not long) - and do a teardown (from fabric-tools) and stop/remove your old business network docker containers - then clear out your card directory (actually, it could be possible that you had an old admin card previously, even though you imported the new and its using an old certificate ?) - to clear your card directory do `rm -rf $HOME/.composer` - then do the tutorial (as per the instruction) - else we can try carry on debugging.your current environment, up to you.
[ ](https://chat.hyperledger.org/channel/composer?msg=TKQoykzYSJgxNgEEG) @mahoney1 I have already done that. Now I tried to create my own fabric network (not the one in fabric-tools). One Organisation with 2 peers. I did that according to the mentioned tutorial.
[ ](https://chat.hyperledger.org/channel/composer?msg=Sbar4KmWkH9dszuZz) Sorry. You are right. in my byfn.sh file there is a mistake on this line:
`sed $OPTS "s/CA2_PRIVATE_KEY/${PRIV_KEY}/g" docker-compose-e2e.yaml docker-compose-cas.yaml`. It must be instead CA1_PRIVATE_KEY. Thanks now every things is working.
[ ](https://chat.hyperledger.org/channel/composer?msg=Sbar4KmWkH9dszuZz) Sorry. You are right. in my byfn.sh file there is a mistake on this line:
`sed $OPTS "s/CA2_PRIVATE_KEY/${PRIV_KEY}/g" docker-compose-e2e.yaml docker-compose-cas.yaml`. It must be instead CA1_PRIVATE_KEY. Thanks now every things is working.
@Stecec I'd checked the log of `fabric-ca` which is `2018/02/28 12:16:59 [DEBUG] Received registration request from : { Name:tom Type:client Secret:**** MaxEnrollments:1 Affiliation:org1 Attributes:[] CAName:ca.org1.example.com }
2018/02/28 12:16:59 [INFO] 172.19.0.1:38362 POST /api/v1/register 401 30 "Certificate not found with AKI '19ab65abbb04807dad12e4c0a9aaa6649e70868e3abd0217a322d89e47e1a6ae' and serial '7ec9a1524c8d8cccfcf455f90ba6e45c104e7f0'"`.
@waleed - see 2nd example here -> https://hyperledger.github.io/composer/latest/reference/connectionprofile.html trustedRoots is an array field (in this case it has the certificate pasted into an array [] field ) ` "trustedRoots": [""],`
```
asset A identified by a {
o String a
o String description
o String bIds[]
o B[] bArray
--> B[] bRelationArray
}
asset B identified by b {
o String b
o String description
}
var statement = buildQuery('SELECT com.varun.assets.B WHERE (???)');
return query(statement, { ?? })
```
Got two assets, currently have asset A, need to get all asset Bs that have been referenced in asset A. Been stuck on this for like an hr :(
@mahoney1 Feel quite bad for asking, but could you spoonfeed me this snippet
For now I have used something like this
```
var phtPromise = [];
for (var i = 0; i < bIds.length; i++) {
var statement = buildQuery('SELECT com.varun.assets.B WHERE (a == _$value)');
var prm = query(statement, {value: bIds[i]});
phtPromise.push(prm);
}
return Promise.all(phtPromise)
```
Hi guys,
We are developing a prototype and we want to query the HistorianRecord to show the transaction history done on a particular asset. In researching how to do this I came across this SO [question] (https://stackoverflow.com/questions/48816023/what-is-the-difference-between-the-transactionregistry-and-the-historian).
This prototype will be deployed into the IBM Blockchain Platform to be showcased as a demo at IBM THINK. I was lucky to meet Simon Stone during Index and he directed me here for all questions. The problem that I am facing is that, to my knowledge, IBP does not support named or build queries so the answer to that SO question doesn't apply when the application is deployed on IBP.
How can this be accomplished without queries? Any and all help will be appreciated.
Hi guys,
We are developing a prototype and we want to query the HistorianRecord to show the transaction history done on a particular asset. In researching how to do this I came across this SO question: https://stackoverflow.com/questions/48816023/what-is-the-difference-between-the-transactionregistry-and-the-historian.
This prototype will be deployed into the IBM Blockchain Platform to be showcased as a demo at IBM THINK. I was lucky to meet Simon Stone during Index and he directed me here for all questions. The problem that I am facing is that, to my knowledge, IBP does not support named or build queries so the answer to that SO question doesn't apply when the application is deployed on IBP.
How can this be accomplished without queries? Any and all help will be appreciated.
@varunagarwal sure, will take a look - I've just tested with a sample network (BNA) and works fine - that I can send you DM including the test data for the CONTAINS. - only difference was I created a .qry stanza but I called it `return query(statement)` like you've done (I just didn't use buildQuery - should not matter a jot). By the way, you'll be search on the values of `bArray` in asset A and not `bRelationArray` (which is a relationship resource). eg
{
"$class": "org.acme.trading.C",
"id": "7987",
"C": [],
"bRelationArray": [
"resource:org.acme.trading.B#b1",
"resource:org.acme.trading.B#b2"
]
} `` (different namespacemodel obviously)
@varunagarwal sure, will take a look - I've just tested with a sample network (BNA) and works fine - that I can send you DM including the test data for the CONTAINS. - only difference was I created a .qry stanza but I called it `return query(statement)` like you've done (I just didn't use buildQuery - should not matter a jot). By the way, you'll be searching on the values of `bArray` in asset A and not `bRelationArray` (which is a relationship resource). eg
{
"$class": "org.acme.trading.C",
"id": "7987",
"C": [],
"bRelationArray": [
"resource:org.acme.trading.B#b1",
"resource:org.acme.trading.B#b2"
]
} `` (different namespacemodel obviously)
@varunagarwal sure, will take a look - I've just tested with a sample network (BNA) and works fine - that I can send you DM including the test data for the CONTAINS. - only difference was I created a .qry stanza but I called it `return query(statement)` like you've done (I just didn't use buildQuery - should not matter a jot). By the way, you'll be searching on the values of `bArray` in asset A (from your post above) and not `bRelationArray` (which is a relationship resource). eg
{
"$class": "org.acme.xxx.A",
"id": "7987",
"bRelationArray": [
"resource:org.acme.trading.B#b1",
"resource:org.acme.trading.B#b2"
]
} `` won't cut the mustard (different namespace model obviously above) and won't travers relationships for assets in 'B' asset from 'A' - you're looking for a string in a array field, with CONTAINS
Has joined the channel.
Hi,
how do you test if the ACL rules work?
@mahoney1 Yes please do send me a DM. Currently use `Promise.all[]` does work but probably not great idea
[ ](https://chat.hyperledger.org/channel/composer?msg=BXftRmk2HTBqwLNY3) @MartinKrmer see https://hyperledger.github.io/composer/next/tutorials/acl-trading you can use online playground - and different identities to test which participant is allowed/denied by rule etc
[ ](https://chat.hyperledger.org/channel/composer?msg=TiJ4cRBvexNzb9kME) @varunagarwal will do - question : in `var statement = buildQuery('SELECT com.varun.shrimp.HarvestedShrimp WHERE (qr CONTAINS _$value)');` is `qr` an array field ?
no it is the identifier
right I see.
what would be the array field?
A has an array of B's identifiers.
i have asset A from assetRegistry, now need to get all asset B, that was in the array in A
in that asset?
Nothing, just the identifiers. It can also be a relationship or the asset B itself. No constriction
I can change that array to anything that makes the query work.
anyway, let me tidy up my sample network and send it to you. will ping you with it.
[ ](https://chat.hyperledger.org/channel/composer?msg=fWx6LfbXrQJwYEvCK) @mahoney1 it works now :) after removing trustedRoots, verify: true and adding `"cert": "fabric-network/crypto-config/peerOrganizations/org1.4eyes.ch/ca/ca.org1.4eyes.ch-cert.pem"` to the ca.
I can now submit transactions using playground.
But there is somthing which I still don't understand:
after running `composer network start --card PeerAdmin@fabric-network --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile composer-network@0.0.1.bna --file admin@composer-network.card`
I get 2 new docker container "dev-peer0.org1.4eyes.ch-composer-network-0.16.4" & "dev-peer1.org1.4eyes.ch-composer-network-0.16.4"
Is this the composer network?
and the log files of these 2 containers doesn't seem to be good:
Clipboard - February 28, 2018 2:32 PM
is this oke?
@waleed question 1 - makes sense - question 2: yes each business network (from network start instantiation) has a chaincode container (iwith the peer name)
[ ](https://chat.hyperledger.org/channel/composer?msg=JhgottnWNXBjypaKh) @waleed yes, its ok - activation of identity was required, first-time use. And you can ignore those resolve items.
hi @mahoney1 I was wondering whether you had any guide/pointers to my question from above? I don't want my question to pass you by; it's been a blocker for me for about 2 days.
[ ](https://chat.hyperledger.org/channel/composer?msg=2SRa5GNk34TcJXA67) @mahoney1 Thank you very much for your help. I'm very happy to have an expert like you who can explain all these things. thanks again :)
Has joined the channel.
I’m new here so not sure if this the correct channel so happy to be advised. My friend and myself want to use Fabric to set up blockchain to record the details of a diamond through the supply chain journey. Is there any models on composer that the more experienced ca recommend to me?
[ ](https://chat.hyperledger.org/channel/composer?msg=C35ksfc24aWrAjGXc) @mahoney1 Thanks, will try it
[ ](https://chat.hyperledger.org/channel/composer?msg=nXCoe4g5fxkvsGT4K) @brian.leppez hi there, the API on `system/historian` will be the point where the asset was created (AddAsset) - you would have to traverse the transactionInvoked (a relationship field to the actual transaction delta - the add and which would have an asset id you're looking for).. Thereafter, a custom transaction (called 'updateThisAsset' in your modeled network could/would be a registry that records ALL transactions that update that particular asset type - you will likely (maybe) have a few of those. But from this registry, you would need to use REST APIs or the JS APIs to do a `getAll() then match on the asset ID in question in your code, sorted by timestamp (which all transactions have as an attribute) to find the history of subsequent changes. Those same transactions are recorded in the Historian too obviously, but that will have so much more transaction types and there you have to do a getbyID (transaction id - no good) or getAll (too big), I've not tried this, but I believe this is how it would work.
[ ](https://chat.hyperledger.org/channel/composer?msg=nXCoe4g5fxkvsGT4K) @brian.leppez hi there, the API on `system/historian` will be the point where the asset was created (AddAsset) - you would have to traverse the transactionInvoked (a relationship field to the actual transaction delta - the add - and which would have an asset id you're looking for).. Thereafter, a custom transaction (called 'updateThisAsset' in your modeled network could/would be a registry that records ALL transactions that update that particular asset type - you will likely (maybe) have a few of those. But from this registry, you would need to use REST APIs or the JS APIs to do a `getAll() then match on the asset ID in question in your code, sorted by timestamp (which all transactions have as an attribute) to find the history of subsequent changes. Those same transactions are recorded in the Historian too obviously, but that will have so much more transaction types and there you have to do a getbyID (transaction id - no good) or getAll (too big), I've not tried this, but I believe this is how it would work.
[ ](https://chat.hyperledger.org/channel/composer?msg=nXCoe4g5fxkvsGT4K) @brian.leppez hi there, the API on `system/historian` will be the point where the asset was created (AddAsset) - you would have to traverse the transactionInvoked (a relationship field to the actual transaction delta - the add - and which would have an asset id you're looking for).. Thereafter, a custom transaction (say 'updateThisAsset' in your modeled network could/would be a registry that records ALL transactions that update that particular asset type - you will likely (maybe) have a few of those Asset types. But from this transaction registry class, you would need to use REST APIs or the JS APIs to do a `getAll() on that registry class, then match on the asset ID in question in your code, sorted by timestamp (which all transactions have as an attribute by default) to find the history of subsequent changes for that particular asset ID. Those same transactions are recorded in the Historian too obviously, but that will have so much more transaction types and there you have to do a getbyID (transaction id - no good) or getAll (too big), I've not tried this, but I believe this is how it would work.
Thanks for the tip @mahoney1 I appreciate all the help!
[ ](https://chat.hyperledger.org/channel/composer?msg=J3ZAqyNkSDmW4XKv2) @brian.leppez you're welcome
[ ](https://chat.hyperledger.org/channel/composer?msg=QnkvrSSQykbgt78Aq) @waleed me, expert ? so kind :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=8K93QZn4AzceTBxTa) @mahoney1 of course you are! you helped me to understand alot of thins in hyperledger composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=ex3tgpwnAkf8ed9Xp) @AlanPalmer - Welcome to the #composer channel!
If you are new to Composer we normally advise working through the developer tutorial to start.
https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
After that there are 2 sample networks you can see on Playground that might be interesting for supply chain: perishable-network and animal-tracking-network
I am trying to query a transaction by id, but it always returns an empty array. What am I doing wrong? :)
```
query GetAssetByTxId{
description: "Get tx from corresponding txId"
statement:
SELECT org.hyperledger.composer.system.Transaction
WHERE (transactionId == _$txId)
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=QS7xA8ZK7iuK6mZhR) @Legiit - can you try `org.hyperledger.composer.system.HistorianRecord` in the SELECT
I just tried it! Now nothing is returned somehow, not even an empty array... I continue experimenting!
Ah nevermind! The query worked, but returns nothing when the "WHERE" part is left out :)
or I did something wrong :D but I got it working now!
I'm quite confuse on how the endorsement works after following in tutorial: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
The endorsement policy is both Org1 and Org2 must endorse transactions in the business network before they can be committed to the blockchain.
Let's say alice from org1 execute some business logic, does it mean bob from org2 must execute the same business logic for the transaction to be added to the blockchain? :thinking:
Or how does a participant endorse a transaction?
Has joined the channel.
Hi there, I would like to store some data (energy readings) on the blockchain using composer. I don't get the logical aspect of it: Would the energy readings be stored as transactions? is that the right term? Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=yntfgMezjZkRJ9bet) @dtp - the energy readings would be stored on the blockchain, and the Transaction details would also be stored. Can I suggest you try the Playground Tutorial, and then look at "All Transactions" on the test tab - it should answer your question for you.
https://hyperledger.github.io/composer/latest/tutorials/playground-tutorial
hi all, for smart contract i need the login credential anyone help me
Screenshot from 2018-02-28 20-59-20.png
any one can help me Frontend UI hyperledger composer
i tried but i can't get it
I can't identify what is my mistakes are
[ ](https://chat.hyperledger.org/channel/composer?msg=SCfXDXiuPQA9c79KK) @TsuiSauChi - it is the Peers that enforce the Endorsement Policy. When the network was started the certificates for Alice and Bob were both sent to all Peers and they are trusted by all Peers. There are youtube videos which cover the background material of the Hyperledger Fabric including Endorsement.
@mahoney1 yes ,sure it helps even i thought of same way around.However is there any possibility to add this ability to composer in near future ?
@mahoney1 yes ,sure it helps even i thought of same way around.However is there any possibility to add this ability to composer in near future ?Thank you
@rthatcher could you share the youtube link pls
Hi, is there default events for creation of assets, or is there a way to listen for all transactions ?
Hey guys - I'm new to the ecosystem (coming from Ethereum land) and just wanted to let someone know that there was an issue with the dev environment setup guide. This GH issue sums it up - https://github.com/hyperledger/composer/issues/1531
[ ](https://chat.hyperledger.org/channel/composer?msg=qiohJ3BC6ZTRqStc4) @kakuzu @TsuiSauChi - Try this one: https://www.youtube.com/watch?v=DqtzxJP6Y9k&list=PLyWfCf0RbByHSTDvvcrz1s15nvyzZuaLb&index=2&t=0s
[ ](https://chat.hyperledger.org/channel/composer?msg=qiohJ3BC6ZTRqStc4) @kakuzu @TsuiSauChi - Try this one: https://www.youtube.com/watch?v=DqtzxJP6Y9k&list=PLyWfCf0RbByHSTDvvcrz1s15nvyzZuaLb&index=2&t=0s
But there are many now I'm not sure which is best.
Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=g5NcFdwCNsoe8s3qP) @seth - welcome to this community Seth.
The install issues we see are generally to do with Node or npm - not really issues with Composer. We have some notes in a wiki on the subject which may help:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues
[ ](https://chat.hyperledger.org/channel/composer?msg=TXuDaytJw98dAwqT4) @chandrakanthm hi there, yes, the intention is to add this functionality, but I don't know what that timeline is yet.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=zEbToXZwxFpStwqQa) @Rmannn you emit your events from your transaction, so you can control what events you want to emit (for which transactions such as an add etc) -> https://hyperledger.github.io/composer/latest/business-network/publishing-events.html
@rthatcher - Thanks, glad to be here. The issue was with npm - `npm rebuild --unsafe-perm` did the trick
@mahoney1 Thanks, Yes, i know that but I would like to know how to listen for asset CRUD operations without having to recreate a transaction processor
[ ](https://chat.hyperledger.org/channel/composer?msg=MecpMvjwuBB5ibTnj) @RajaSathya you don't need 'login' credentials to access , you should just be able to 'connect now' in playground if you've issued your cards correctly
okay thanks @mahoney1
Has joined the channel.
Hi, I posted this message to stackoverflow but I wonder if anyone here has a clue https://stackoverflow.com/questions/49032172/sigsegv-when-creating-channel-possible-cert-error
I'm getting sigsev when creating a channel. It may be due to old certificate (this was a bug in late 2017 apparently). I can't seem to recover from this problem as the block file (correct term?) isn't returned back due to this bug.
@mahoney1 I need login credential then add products . once i add product it will affect the all other node with alert. how can I create those things
[ ](https://chat.hyperledger.org/channel/composer?msg=jya3QiEbvCntaLizn) @Rmannn are you doing the asset create from an application (using JS APIs) that connects to the business network?
@mahoney1 I am using both the composer-client in a server side, and the rest-server on client side, I have a worker that should do some jobs on asset creation. But to be notified that an asset was created, i have to create a specific transaction processor.
Maybe there is a way to listen for native fabric events ?
[ ](https://chat.hyperledger.org/channel/composer?msg=YRBaf4sDm2sGnAEYG) @talljhawkins SIGSEGV is segmentation violation - this is really a question for the #fabric channel .... just added references as a comment to the Stack overflow question FYI
@Rmann so could you not use a Query to find AddAsset records in Historian in a batch or are you seeking immediately after the operation. Because if the latter, you will need [ ](https://chat.hyperledger.org/channel/composer?msg=Le7cHE8C96P68F9Hb) other question is how much memory (GB) you are running with? Have you verified you meet the prereqs https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html ? Possibly seeing a docker GID issue, lack of privileges - so maybe log out and back in to seek if group privileges is now circumvented... Not sure.
@Rmann so could you not use a Query to find AddAsset records in Historian in a batch or are you seeking immediately after the operation?.
[ ](https://chat.hyperledger.org/channel/composer?msg=Le7cHE8C96P68F9Hb) @mahoney1 [ ](https://chat.hyperledger.org/channel/composer?msg=Le7cHE8C96P68F9Hb) @mahoney1 Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=3YzsbzhwkHG37x2Zk) Thanks - the webpage told me to come here :-( I'll go elsewhere ;-) cheers.
@talljhawkins np - other question is how much memory (GB) you are running with? Have you verified you meet the prereqs https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html ? Possibly seeing a docker GID issue, lack of privileges - so maybe log out and back in to seek if group privileges is now circumvented... Not sure.
@talljhawkins np - other question is how much memory (GB) you are running with? Have you verified you meet the prereqs https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html ? Possibly seeing a docker GID issue, lack of privileges - so maybe log out and back in to seek if group privileges is now circumvented... Not sure why you're seeing a Fabric issue (which is why I suggested first-off) but - as Composer creates the Dev setup (Fabric) for you - it should work within a matter of seconds. You must have something environmental going on - I would recommend 6Gb memory and then do a teardown (see 'Controlling the dev environment' in this install page (https://hyperledger.github.io/composer/latest/installing/development-tools) - scroll down
[ ](https://chat.hyperledger.org/channel/composer?msg=JYcKKcEA3EempHSEF) @mahoney1 I'm a bit of a "dumb user" for most of this so I just ran all the scripts as given by the instructions. I do meet all the other pre-reqs that the scripts don't download. Not sure what you mean by the docker GID issue. What do you mean by "group privileges circumvented"? I have logged in and out all over the place so I expect if it is anything then it would be fundamental to the container given to us in the demo because I followed the instructions to the letter.
@mahoney1 Query batch is really not an option, we don't want to surcharge our servers. We need to be notified right after creation to start a more complicated process. What I understand is that we lost the ability to play with event hubs using composer. An asset creation is a simple transaction, We should be able to listen for those events, like composer do internally to report a success. But how to... I am reading the code to find a way to do an eventHub connection on the fly, but not sure this will work
@talljhawkins no worries - what Op Sys are you running with? How much memory? ,On docker - docker has its own service (and needs Group ID (GID) privileges). ..
@talljhawkins no worries - what Op Sys are you running with? How much memory? ,On docker - docker has its own service (and needs Group ID (GID) privileges). .. When you say 'container given to us in the demo' - I assume you mean the Hyperledger Fabric containers downloaded by the scripts during the install doc at https://hyperledger.github.io/composer/latest/installing/development-tools?
[ ](https://chat.hyperledger.org/channel/composer?msg=fquDyzytjMR4HgY33) @Rmannn ok so found this - https://hyperledger.github.io/composer/latest/applications/subscribing-to-events you can subscribe for your add asset events here when you add in your code.
@mahoney1 I think i am not clear, What i need is to listen for events that came from the native api. When we create an asset, using composer-client or using the rest server, It's a transaction. I know how to listen and emit event inside a transaction processor. But since composer create CRUD transaction for us, we can't listen for those transactions. Do you know what i mean ? Thanks for your time BTW. I think i must do it with the native API.
[ ](https://chat.hyperledger.org/channel/composer?msg=HKAm3LGsuTfftDHoW) @Rmannn hi there, so my bad as I read about composer-client in the subscribe docs and immediately thought emit side would follow. Not the case. . So for basic 'CRUD' operations, you can't get events as they are not available/emitted (only those in TPs purpose-built to do so, as we mentioned). I think it would be nice to do that so that you can subscribe to CRUD operations like you mentioned. But that ability is not there presently - would you like me to create an issue for that, or would you prefer to ? https://github.com/hyperledger/composer/issues
@mahoney1 Yes, there already was an issue created (not me) about this case, but it was closed just after. I will create a new one as you said.
The issue i am talking about is this one, https://github.com/hyperledger/composer/issues/2003 Thank you.
@Rmannn I think you are right and this can only be done through the native API at the moment. I ran into the same problem and just created a transaction type and process for every asset creation-updating-deletion I wanted to listen too and dispatch events in it but it just felt like I was misusing the system that way. Because through a websocket connection I tried to keep my SPA redux state in sync. Before I knew it I was creating transaction processors for pretty much every pre-generated endpoint defeating the purposes of using the server in the first place. It is nice to have feature that would increase the usability of the rest server tenfold ;) The good thing about it though was that it gave me a good place to put my complex business logic without going custom. Which brings me to the point that it would be amazing if we could extend or prehook into generated endpoints to add complex logic. For example "this item can only be deleted if this and this and this is true(complex logic)" For scenarios that just cannot be covered by ACL alone.
Not complaing, just rambling along :)
@Rmannn I think you are right and this can only be done through the native API at the moment. I ran into the same problem and just created a transaction type and process for every asset creation-updating-deletion I wanted to listen too and dispatch events in it but it just felt like I was misusing the system that way. Because through a websocket connection I tried to keep my SPA redux state in sync. Before I knew it I was creating transaction processors for pretty much every pre-generated endpoint defeating the purposes of using the server in the first place. It is nice to have feature that would increase the usability of the rest server tenfold. The good thing about it though was that it gave me a good place to put my complex business logic without going custom. Which brings me to the point that it would be amazing if we could extend or prehook into generated endpoints to add complex logic. For example "this item can only be deleted if this and this and this is true(complex logic)" For scenarios that just cannot be covered by ACL alone.
Not complaing, just rambling along :)
@Rmannn I think you are right and this can only be done through the native API at the moment. I ran into the same problem and just created a transaction type and process for every asset creation-updating-deletion I wanted to listen too and dispatch events in it but it just felt like I was misusing the system that way. Because through a websocket connection I tried to keep my SPA redux state in sync. Before I knew it I was creating transaction processors for pretty much every pre-generated endpoint defeating the purpose of using the server in the first place. It is nice to have feature that would increase the usability of the rest server tenfold. The good thing about it though was that it gave me a good place to put my complex business logic without going custom. Which brings me to the point that it would be amazing if we could extend or prehook into generated endpoints to add complex logic. For example "this item can only be deleted if this and this and this is true(complex logic)" For scenarios that just cannot be covered by ACL alone.
Not complaing, just rambling along :)
@mahoney1 @aneb I just found a way to listen for all transactions, just tested an worked
```
const evtListener = businessNetworkConnection.connection.eventHubs[0].registerChaincodeEvent('couriier', 'composer', (event) => {
console.log('Tx EVENT', event)
})
process.on('exit', () => {
businessNetworkConnection.connection.eventHubs[0].unregisterChaincodeEvent(evtListener)
})
```
The returned event will have the tx id and a payload you can transform to json string `event.payload.toString('utf8')`
@mahoney1 @aneb I just found a way to listen for all transactions, just tested an worked
```
const evtListener = businessNetworkConnection.connection.eventHubs[0].registerChaincodeEvent('businessNetworkName', 'composer', (event) => {
console.log('Tx EVENT', event)
})
process.on('exit', () => {
businessNetworkConnection.connection.eventHubs[0].unregisterChaincodeEvent(evtListener)
})
```
The returned event will have the tx id and a payload you can transform to json string `event.payload.toString('utf8')`
oh nice! figures you can listen to the actual fabric chaincode event. Just stopped looking for a moment for it
@aneb 100% Right, It would be amazing to extend the basic workflow for CRUD, for now, using events just save me creating a custom tx that simply requires to add extra process after. And it allow us to do extra jobs and have transactions, exemple, 1 for creating the asset, the second one to send an email.
@aneb 100% Right, It would be amazing to extend the basic workflow for CRUD, for now, using events just save me creating a custom tx that simply requires to add extra process after. And it allows us to do extra jobs and have multiple transactions, exemple, 1 for creating the asset, the second one to send an email.
I will create an issue to expose this concept ans explain why it should be interesting to have it in composer.
Thanks. Will try it out this week at work as well. Curious to see how to filter for the event types. Currently based on the payload type I guess. For my current project I decided to go full custom and only use the sdk but that also requires a lot of boring boiler plate code so for my next project would love to switch back and use the server again.
How can I install Composer on new peers? I have instantiated a network and installed Composer allright. Then, I added a new peer to this Fabric network. The peer does work (it receives transactions and so on) but it does not have the composer chaincode installed. How can I install the composer runtime and the network on this new peer?
@lucasdf From my understanding of the fabric, your new peer should sync with the rest of the network. (To be verified) Maybe i am wrong but I think you should just start the chain code if you are in dev mode, And nothing to do if you are not in dev mode. I am not sure about it.
I ran into two contradictory points while deploying my business network. Where I am using nodejs 6.9.x version as stated in hyperledger document. But for composer I came with an issue where it required nodejs 8.9 is there any solution.
https://github.com/hyperledger/composer/issues/3407
Can someone help me
[ ](https://chat.hyperledger.org/channel/composer?msg=LtGceuYhvdMzYDxFj) @Rmannn thanks for the tip. But it seems that the new peers does not automatically install the composer runtime and the network. I am not in dev mode. I will try something like updating the connection.json to add the new peer information and updating the network; but I wonder if someone else have done this before.
[ ](https://chat.hyperledger.org/channel/composer?msg=orcoo2wnW67N8LFK3) @Rmannn cool, nice one - as you say, CRUD based events would be better for filtering on those events you really want to be notified on..
@lucasdf I think your are on the good way. Updating network using the new connection profile from your card should do the job.
Hi everyone, I am working the issue #3415, but not quite understand the issue. First, the reporter mentioned something about system tests. Where can I find them?
@mahoney1 @aneb I am writing a little module to be able to listen to all events, and to get the tx from historian and transaction registry because the payload is empty.
I will publish it here when ready.
Has joined the channel.
Hi all, I got this term "pluggable adapter" from an IBM Blockchain consultant but there is no more information about it. But basically I want to write an API to translate a standardized financial message in a certain industry protocol to the corresponding Composer REST API of the smart contract. And he told me that I need to write a "pluggable adapter". Regardless of terminology, any related information that you can think of? Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=fiYkKgJ9ecYhccw64) @dwong are you using the composer-rest-server provided by Composer?
hi all, is the Composer API webpage down? I get a 404 for all resources...
https://hyperledger.github.io/composer/api/api-doc-index
[ ](https://chat.hyperledger.org/channel/composer?msg=RbmcywinGRWMC8Byw) @lucasdf Yes we are
[ ](https://chat.hyperledger.org/channel/composer?msg=4FFtsC4nB5J42LnTH) @brian.leppez https://hyperledger.github.io/composer/latest/api/api-doc-index
I'm getting the following error when I run the Query tutorial for composer@next:
```composer-rest-server
? Enter the name of the business network card to use: trade-network
? Specify if you want namespaces in the generated REST API: never use namespaces
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c trade-network -n never -w true
Discovering types from business network definition ...
Connection fails: Error: Card not found: trade-network
It will be retried for the next request.
Exception: Error: Card not found: trade-network
{ Error: Card not found: trade-network
at IdCard.fromDirectory.catch.cause (/Users/CT15/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/cardstore/filesystemcardstore.js:74:27)
at
I'm getting the following error when I run the Query tutorial for composer@next - note I've consistently changed the name from `tutorial-network` to `trade-network`:
```composer-rest-server
? Enter the name of the business network card to use: trade-network
? Specify if you want namespaces in the generated REST API: never use namespaces
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c trade-network -n never -w true
Discovering types from business network definition ...
Connection fails: Error: Card not found: trade-network
It will be retried for the next request.
Exception: Error: Card not found: trade-network
{ Error: Card not found: trade-network
at IdCard.fromDirectory.catch.cause (/Users/CT15/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/cardstore/filesystemcardstore.js:74:27)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=Ewp2GseXXzGFYkTDE) @CT123
use `admin@trade-network` for your answer to the first prompt `composer-rest-server` gives you, not `trade-network`
Thank you every single link for the Composer API that I'm getting from Google returns an error
[ ](https://chat.hyperledger.org/channel/composer?msg=RcbGvor3BZrscY7k6) @silliman Much appreciated!
@silliman Much appreciated!
@silliman That helped' but I'm now getting the following errors:
```composer-rest-server
? Enter the name of the business network card to use: admin@trade-network
? Specify if you want namespaces in the generated REST API: never use namespaces
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c admin@trade-network -n never -w true
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Registering named query: selectCommodities
Registering named query: selectCommoditiesByExchange
Registering named query: selectCommoditiesByOwner
Registering named query: selectCommoditiesWithHighQuantity
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
events.js:183
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE :::3000
at Object._errnoException (util.js:1022:11)
at _exceptionWithHostPort (util.js:1044:20)
at Server.setupListenHandle [as _listen2] (net.js:1351:14)
at listenInCluster (net.js:1392:12)
at Server.listen (net.js:1476:7)
at module.exports.promise.then.then (/Users/CT15/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/cli.js:131:19)
at
@silliman That helped, but I'm now getting the following errors:
```composer-rest-server
? Enter the name of the business network card to use: admin@trade-network
? Specify if you want namespaces in the generated REST API: never use namespaces
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c admin@trade-network -n never -w true
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Registering named query: selectCommodities
Registering named query: selectCommoditiesByExchange
Registering named query: selectCommoditiesByOwner
Registering named query: selectCommoditiesWithHighQuantity
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
events.js:183
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE :::3000
at Object._errnoException (util.js:1022:11)
at _exceptionWithHostPort (util.js:1044:20)
at Server.setupListenHandle [as _listen2] (net.js:1351:14)
at listenInCluster (net.js:1392:12)
at Server.listen (net.js:1476:7)
at module.exports.promise.then.then (/Users/CT15/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/cli.js:131:19)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=nY7FxPXCs8LHnMdFn) @CT123
yes your port 3000 is in use, probably from your first attempt to start the composer-rest-server
stop your composer-rest-server process(es) and try again
Separate question about Contract JavaScript function to read data from registry. Correct me if I am wrong, but I see almost all examples do update/add to registry. Is there any example where Contract function returns an array of assets that fulfills some sort of query based on the function's input parameter? Thanks!
@silliman as it error'd out there is no ctrl-c I can do to kill it -- a github qa suggests killing the process -- is that the correct or only way to stop / kill it?
you have to find and kill specific process depending upon the port.
[ ](https://chat.hyperledger.org/channel/composer?msg=k69eNxR2dYJpjstac) @CT123
yes you can do `lsof -i tcp:3000` to see what process is using port 3000 then you can try `kill _pid_` and if that doesn't work try `kill -9 _pid_`
for linux https://www.tecmint.com/how-to-kill-a-process-in-linux/
[ ](https://chat.hyperledger.org/channel/composer?msg=JDFKNLD6YicB7zPFs)
replace _pid_ with the process id that shows up from the `lsof` command. run `lsof` again after the first `kill` example i gave you to see if it worked, some processes die more easily than others
@CT123 ^^^ and depending on your environment you may need to run lsof and/or kill with sudo or as root
thanks much the `lsof` and `kill` did the trick on my mac running HS - many thanks again[ ](https://chat.hyperledger.org/channel/composer?msg=WmwkHtyL2HJXrk3kH) @silliman
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=7uvEFwFu26W3YpjrA) Can someone suggest me something on this
not really understanding the endorsement process
Is the endorsement done automatically? I created an endorsement policy whereby 2 endorser peer need to endorse the transaction for the transaction to be valid
But whenever I execute a transaction on 1 peer, a block is added to the ledger
Am I doing something wrong?
Here's the endorsement policy
{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
}
Clipboard - March 1, 2018 4:50 AM
Has left the channel.
@aneb @mahoney1 I created a simple module to listen to all events, including native ones, tests will be dev later
https://github.com/Pop-Code/composer-subscriber Feel free to contribute.
@aneb @mahoney1 I created a simple module to listen to all events, including native ones, tests will be dev later
https://github.com/Pop-Code/composer-events-subscriber Feel free to contribute.
[ ](https://chat.hyperledger.org/channel/composer?msg=Xfgi7954ZeyWWFsWQ) @dwong I'm working to add my own methods in the composer-rest-server. I don't know if it helps you, but I modified the composer-rest-server script, adding my own methods based in this code https://github.com/hyperledger/composer/blob/master/packages/composer-rest-server/server/boot/composer-discovery.js and this https://github.com/hyperledger/composer/blob/master/packages/loopback-connector-composer/lib/businessnetworkconnector.js
Maybe you should clone the packages and modify to build another rest server
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=7rS8yvj4yJmMktAED) @TsuiSauChi
Composer will send the transaction for endorsement to each peer defined in the connection profile that your business network card uses. So you've probably got both peers defined and so Composer is getting the necessary endorsements for you
Trying to ping my network application from JS code using `composer-admin` package but when i try to ping my deployed network application it says
```
Composer runtime (0.16.5) is not compatible with client (0.16.3)
```
does anyone know how to solved this compatibility error for composer?
Trying to ping my network application from JS code using `composer-admin` package but when i try to ping my deployed network application it says
```
Composer runtime (0.16.5) is not compatible with client (0.16.3)
```
does anyone know how to solve this compatibility error for composer?
I had the same problem
I uninstall composer-cli and installed composer-cli@0.16.3
lemme try that
When a peer sends a transaction, the transaction proposal will be broadcast to all the endorser peer to check for a valid certificate. Then, the response will be collected and sent to the ordering service. And if the endorsement policy is met, then the transaction is committed and updates the state of the ledger. From reading this link: https://stackoverflow.com/questions/47675326/using-endorsements-in-hyperledger-composer-to-design-a-process
It seems that is entire process is automated and is invisible to the developer
so is it possible to write an application level endorsement whereby 2 users from different peer would have to execute the transaction manually for the transaction to be valid?
Hi, I want to query the asset registry for assets, like
`SELECT org.acme.trading.Commodity
WHERE (owner == _$owner)`
where owner is modeled as a relationship. But for some reason the query delivers no results when I pass the id the owner is identified with. When I query for other properties of the asset I get the right results for that query. I'm using JS API. Any advice?
Has joined the channel.
Thanks @mahoney1 and @rthatcher , as suggested, I removed the eventURL for other peers from each node connection json and it worked.
Has joined the channel.
Has joined the channel.
Any estimation when the website will be working properly again?
All links I find from google + the search functionality on the website itself are broken
Here's the link
https://hyperledger.github.io/composer/next/jsdoc/
@Legiit
For anyone hitting broken links, there's an issue open https://github.com/hyperledger/composer/issues/3505
Adding `latest/` after composer will take you to the latest stable release, i.e. the pages that have gone missing. Using `next/` takes you to the most recent release instead.
Okay thanks!
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=wBuZj2ra29ANoaueW) @christian3042 - Are you putting in the 'full name' of the owner? e.g. `resource:org.acme.trading.Trader#xxx` where xxx is your trader ID
[ ](https://chat.hyperledger.org/channel/composer?msg=FB6LpnKmHrNf6r93E) @JayPandya @TsuiSauChi - The Composer Runtime is installed on the Peer by the `composer runtime install` command or via Playground or the API. The version of the Runtime you have installed is 0.16.5, and you are trying to connect with a 0.16.3 _client_ . The _client_ version needs to be equal of greater than the runtime (within the same subversion). _client_ could be the command line, or could be an API program.
With your JS code app perhaps you have 0.16.3 in your package.json? If you update that to 0.16.5, remove the node_modules folder and rebuild the App it should be OK.
[ ](https://chat.hyperledger.org/channel/composer?msg=rPpbH297iBapvoBJ6) @TsuiSauChi do you mean application level, multi-stage approval? Yes its possible. Would you rather it was 2 users from two different organisations (you wrote peers) ? In which case, you can have blockchain identities (issued by the CA in either Organisation) sign the approval transactions after which 'something can take place'. Those blockchain identities are mapped to participants on the same business network (but with ACLs you can choose to make them visible to either Org if that's what you desire etc).
What should I do if I want to get a history of all trade on the system based on an Id and show it on the front end?
What should I do if I want to get a historian of all trades on the system based on an Id and show it on the front end?
Is it possible to create a query to get the complete history of 1 asset, found by assetId?
Example:
```
query getalltx{
description: "Get tx from corresponding asset, found by Id"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
WHERE (eventsEmitted[0].assetId == _$identifier)
}
```
This would result the full change history from creation, to updates etc.. of 1 asset, found by assetId
the query above does not work but was only an example** :D
hi all, Error: Error trying to ping. Error: Error trying to query business network. Error: could not find chaincode with name 'mybsnetwork' - make sure the chaincode mybsnetwork has been successfully instantiated and try again
[ ](https://chat.hyperledger.org/channel/composer?msg=Gpom6kpt2dx8KdFrH) @RajaSathya - what command are you running that generated this error ? composer network start perhaps ?
[ ](https://chat.hyperledger.org/channel/composer?msg=Gpom6kpt2dx8KdFrH) @RajaSathya - what command are you running that generated this error ? composer network start perhaps ?
If so, then perhaps you have specified the wrong name for the network on the runtime install command.
[ ](https://chat.hyperledger.org/channel/composer?msg=uQALzTumjbBMKwY7H) @Jaline you mean 'a participant ID' or 'asset ID' I assume ? And do you mean to render in a web application one assumes. So for the query something like below might work (not tried it):
``` query selectTraderrecords {
description: "Select all commodities based in historian by trader id "
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
WHERE ( participantInvoking == _$FQTrader)
}
then call it in your REST API as an endpoint (and provide the FQ Trader id or in your code eg.
return query('selectTraderrecords', { "FQTrader": trader} ) // trader value was set previously
.then(function (results) {
// do stuff....
``` - as for the web part and rendering, you could follow a simple angular tutorial to create your front end something like this will explain https://medium.com/craft-academy/connecting-an-api-to-an-angular-4-front-end-application-e0fc9ea33202 (you just need to tie up your REST APi data results to render in your web app component / associated web attributes.
[ ](https://chat.hyperledger.org/channel/composer?msg=TFT5eRscLrvnM4rcm) @Legiit hi might be possible yeah, if you emit an event in your TP code - so for example an event emitted for a commodity (from the sample trade-network network model) where `--> commodity` is emitted as part of the event - might look like this ``` {
"$class": "org.hyperledger.composer.system.HistorianRecord",
"transactionId": "2529902c-1393-4537-98ca-f3e4d46a3164",
"transactionType": "Trade",
"transactionInvoked": "resource:org.hyperledger.composer.system.Transaction#2529902c-1393-4537-98ca-f3e4d46a3164",
"eventsEmitted": [
{
"$class": "org.acme.trading.TradeNotification",
"commodity": "resource:org.acme.trading.Commodity#EMA",
"eventId": "2529902c-1393-4537-98ca-f3e4d46a3164#0",
"timestamp": "2017-08-07T15:04:33.790Z"
}
],
"transactionTimestamp": "2017-08-07T15:04:33.790Z"
} ```
@mahoney1
Thank you, you helped me a lot
[ ](https://chat.hyperledger.org/channel/composer?msg=9WcHbSqJ4xQgNCz54) @cammachusa - there is a #composer-contributors where you may get more information
I want to submit transactions via rest-service, but using certain identity(other than NetworkAdmin). Is there a way, we can specify the participant identity to be used while invoking the rest-service(To be used to track transaction history and enable application of ACLs)?
how to reset installed hyperledger composer cli
[ ](https://chat.hyperledger.org/channel/composer?msg=gphZgnDcoHjtJeifA) @RajaSathya - what are you trying to achieve? - based on your previous questions I wonder if you are wanting to start with a new empty Development Fabric - in which case you could re-run the startFabric.sh script from your fabric-tools folder.
yesterday composer-playground working without error
today composer also not working
Has joined the channel.
creating business network also getting error
Hi All,
Can anyone give suggestion to implement authentication using passport-jwt for composer REST API server
[ ](https://chat.hyperledger.org/channel/composer?msg=Xm5bYKcN3HbQgAzAG) @RajaSathya - Have you restarted the computer you are working on? If you have, the I would think that the Docker Containers running the Fabric are stopped and composer can't 'find' the Fabric.
This Q & A on Stack Overflow should help:
https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data/48075379?noredirect=1#comment84651872_48075379
@rthatcher thank you so much
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=TGtt68PLRJAHhGfy2) @rameshkphp hi there - see this Rocketchat discussion chat.hyperledger.org/channel/composer?msg=etkJ7wzdbdFnSXW79 and subsequent discussion there
[ ](https://chat.hyperledger.org/channel/composer?msg=W5sWhnC5LwdmYhg2d) @dpurnima0709 Set up your REST server with authentication -> https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html then in multiuser mode you can see how to switch identities in a REST client (via a business network card imported to the wallet) to call the REST APIs (eg. like submitting transactions, or adding asset transactions) as a particular participant/identity on the business network -> https://hyperledger.github.io/composer/integrating/enabling-multiuser . You can see (for example adding an asset in REST API) in Historian which participant was the 'invoker' etc eg
Clipboard - March 1, 2018 1:40 PM
Clipboard - March 1, 2018 1:40 PM
Could you suggest where I can find passport server? because this has not been mentioned in detail anywhere. Also where I can acquire the secret key from?
[ ](https://chat.hyperledger.org/channel/composer?msg=JStfqSAnxtmRc9ixm) @rameshkphp - working through the docs on this page should give you the information you need:
https://hyperledger.github.io/composer/latest/integrating/integrating-index
@mahoney1 The eventsEmitted code piece gives an error `t: Invalid WHERE clause in query getalltx: Property [object Object] does not exist on org.hyperledger.composer.system.Event Line 33 column 9, to line 35 column 1.`
Where looks like this: `WHERE (eventsEmitted[0].assetId == _$identifier)`
[ ](https://chat.hyperledger.org/channel/composer?msg=gNK77MYET6cEP3tFG) @Legiit hi there - right on closer inspection, your query won't work (validation fails on trying to get element of an event Array in left statement). Will take a look and get back to you.
[ ](https://chat.hyperledger.org/channel/composer?msg=gNK77MYET6cEP3tFG) @Legiit hi there - right on closer inspection, your query won't work (validation fails on trying to get element of an event Array in left statement). Will take a look [at options] and get back to you.
Thanks :) Would be nice if there was a way to get it working!
Can I create a multi-dimentional array in composer-playground
[ ](https://chat.hyperledger.org/channel/composer?msg=cHhYxMAbXcD9Q4qWf) @phanikumar - I don't think so, but you can achieve something similar:
https://stackoverflow.com/questions/48824274/how-to-initialise-a-2d-array-in-hyperledger-fabric-cto-file/48826849?noredirect=1#comment84659007_48826849
Ok, Thanks @rthatcher
Hi, if we can monitor what a user can access and its rights in the Access Control Composer file, what is the purpose to divide a network into different channels ? As I understood channels are existing to avoid a complete transparency of the ledger, thing that the access control file does am I right ?
Hi All. I'm trying to enable multiple user mode for the composer REST server. I have a doubt about this sentence:
First, you must issue a Blockchain identity to a participant in the business network. This example will assume that you have issued the Blockchain identity alice1 to the participant org.acme.mynetwork.Trader#alice@email.com, and that you have created a business network card for this Blockchain identity stored in the file alice1@my-network.card.
Hi All. I'm trying to enable multiple user mode for the composer REST server. I have a doubt about this sentence:
```
First, you must issue a Blockchain identity to a participant in the business network. This example will assume that you have issued the Blockchain identity alice1 to the participant org.acme.mynetwork.Trader#alice@email.com, and that you have created a business network card for this Blockchain identity stored in the file alice1@my-network.card.
```
Hi All. I'm trying to enable multiple user mode for the composer REST server. I have a doubt about this sentence:
```
First, you must issue a Blockchain identity to a participant in the business network. This example will assume that you have issued the Blockchain identity alice1 to the participant org.acme.mynetwork.Trader#alice@email.com, and that you have created a business network card for this Blockchain identity stored in the file alice1@my-network.card.
```
What must I do to "issued the Blockchain identity alice1 to the participant org.acme.mynetwork.Trader#alice@email.com"
Hi All. I'm trying to enable multiple user mode for the composer REST server. I have a doubt about this sentence:
```
First, you must issue a Blockchain identity to a participant in the business network. This example will assume that you have issued the Blockchain identity alice1 to the participant org.acme.mynetwork.Trader#alice@email.com, and that you have created a business network card for this Blockchain identity stored in the file alice1@my-network.card.
```
What must I do to "issued the Blockchain identity alice1 to the participant org.acme.mynetwork.Trader#alice@email.com"?
Hi All. I'm trying to enable multiple user mode for the composer REST server. I have a doubt about this sentence:
```
First, you must issue a Blockchain identity to a participant in the business network. This example will assume that you have issued the Blockchain identity alice1 to the participant org.acme.mynetwork.Trader#alice@email.com, and that you have created a business network card for this Blockchain identity stored in the file alice1@my-network.card.
```
What must I do to "issued the Blockchain identity alice1 to the participant org.acme.mynetwork.Trader#alice@email.com"?
Hi All. I'm trying to enable multiple user mode for the composer REST server. I have a doubt about this sentence from composer website:
```
First, you must issue a Blockchain identity to a participant in the business network. This example will assume that you have issued the Blockchain identity alice1 to the participant org.acme.mynetwork.Trader#alice@email.com, and that you have created a business network card for this Blockchain identity stored in the file alice1@my-network.card.
```
What must I do to "issued the Blockchain identity alice1 to the participant org.acme.mynetwork.Trader#alice@email.com"?
[ ](https://chat.hyperledger.org/channel/composer?msg=u8coMQyNaiyABYXtH) @Stecec - which doc are you looking at ?
[ ](https://chat.hyperledger.org/channel/composer?msg=2iFAE7uhZfkvit9Gv) @rthatcher This web page https://hyperledger.github.io/composer//integrating/enabling-multiuser
[ ](https://chat.hyperledger.org/channel/composer?msg=2iFAE7uhZfkvit9Gv) @rthatcher This webpage https://hyperledger.github.io/composer//integrating/enabling-multiuser
[ ](https://chat.hyperledger.org/channel/composer?msg=fLp3E6g9gwtysbPuD) @Stecec - Thanks for the link. (I think the doc should really say *Hyperledger Fabric Identity*, or *CA Identity* not Blockchain identity)
The identity the doc refers to as alice1 is the Network Admin that was created when the network was started. In dev and test this is frequently a card for something like admin@trade-network .
[ ](https://chat.hyperledger.org/channel/composer?msg=fLp3E6g9gwtysbPuD) @Stecec - A Participant is just a data structure in the Participant registry (same as an Asset) until an Identity from the CA is issued to it. So a Participant can't access the Business Network, but an Identity can.
So you create Participants first then Issue the Identity.
You can try this out in the Playground to start with to experiment.
@here - reminder that the Community call is at 5pm UTC (5pm UK, 12pm ET, 9am PT) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-1st-March-2018 best regards Paul
Hi all.
I just successfully went through deploying my first composer network to Fabric and managed to interact with it.
During the process, I noticed that you need to use one Card to do the deployment and then another one is created back during deployment that you need to use to interact with the network. Why is that so? Why can't the original card be used to interact with the network?
[ ](https://chat.hyperledger.org/channel/composer?msg=CZ2ZyDaECFDBLjGr6) @Elulup channels provide privacy, between organisations (say 2 organisations of _n_) on the same blockchain network. You can have many channels, and some organisations may not be allowed to join that channel (eg. two-party channel excludes a third) but still be part of the same 'greater' blockchain network.. Access Conrol rules work within the realms of a business network, controlling participants, asset access, transactions types allowed etc, what CRUD operations, etc etc - the business network (with its ACL rules) are deployed to a channel - usually an example is restricting either Org's participants (as identified in the business network) according to what they're allowed to do/see on the ledger they both have access to (on the channel).
Is there a way we can dynamically add fields to concept?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=hD99P7bqT3AxsimLx) @mahoney1 So a blockchain network can have several channels which have their own ledger shared by the organisations allowed to be part of this channel. And in each channel ACL are defined to control the access to the ledger, is that right ? Can we say that one business network gives one channel ?
[ ](https://chat.hyperledger.org/channel/composer?msg=hD99P7bqT3AxsimLx) @mahoney1 So a blockchain network can have several channels which have their own ledger shared by the organisations allowed to be part of this channel. And in each channel ACL are defined to control the access to the ledger, is that right ? Can we say that one business network gives one channel ? Thanks for your answer
[ ](https://chat.hyperledger.org/channel/composer?msg=hD99P7bqT3AxsimLx) @mahoney1 So a blockchain network can have several channels which have their own ledger shared by the organisations allowed to be part of this channel. And in each channel ACL rules are defined to control the access to the ledger, is that right ? Can we say that one business network gives one channel ? Thanks for your answer
[ ](https://chat.hyperledger.org/channel/composer?msg=xik4qaKRzHWGSTDtz) @CrazyBranch hi there - cool - firstly its to do with 'roles' that FABRIC lays down - so admin is a network admin . The PeerAdmin (who is not bound as a network admin) we bootstrap (ie a label for for someone that has 'PeerAdmin' authority (deploy chaincode) in Fabric in our Development environment setup (someone setting up their own network would create their own distinct identities via their CA and give the right roles. I suggest to read this to understand a bit more than I've paraphrased here -> https://hyperledger.github.io/composer/business-network/bnd-deploy.html - suffice to say that when a business network card is created for a business network, its good practice to have a clear demarcation for someone to deploy chaincode as opposed to doing admin / operational tasks on the network etc. Neither of those would be considered 'day to day business transactors' (creating transactions) - those would be done by other participants/consumers of the business network (for which you would create business network cards, as it includes their blockchain identity etc etc)
[ ](https://chat.hyperledger.org/channel/composer?msg=xik4qaKRzHWGSTDtz) @CrazyBranch hi there - cool - firstly its to do with 'roles' that FABRIC lays down - so admin is a network admin . The PeerAdmin (who is not bound as a network admin) we bootstrap (ie a label for for someone that has 'PeerAdmin' authority (deploy chaincode) in Fabric in our Development environment setup (someone setting up their own blockchain network infrastructure, would create their own distinct identities via their CA and give the right roles. I suggest to read this to understand a bit more than I've paraphrased here -> https://hyperledger.github.io/composer/business-network/bnd-deploy.html - suffice to say that when a business network card is created for a business network, its good practice to have a clear demarcation for someone to deploy chaincode as opposed to doing admin / operational tasks on the network - in that Org etc. Neither of those 'users' would be considered 'day to day business transactors' (creating transactions) - those would be done by other participants/consumers of the business network for whom the business network was set up - cross-org transactions (and for which you would create business network cards, as it includes their blockchain identity etc etc)
My company is providing Blockchain Dev Services leveraging Hyperledger Composer. I'm looking for powerpoint presentations that have been made available or can be made available to community members for my company's presentations. Please advise.
I'm curious to know if any Hyperledger Composer certifications are in the works.
[ ](https://chat.hyperledger.org/channel/composer?msg=CWsftAjKGKficm4H7) @mahoney1 That was super helpful. I completely misunderstood the role of a Peer Administrator but now it's clear. Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=CFXCZPZ6s78ZNRvWF) Can someone advice me on this
@Elulup 1) correct, yes and 1 channel = 1 ledger 2) ACLs are in the 'runtime' of the business network - so filtering if you like. Each channel can have more than one deployed business network on that channel - so the scenario where the same '2' orgs (etc) are running different kinds of business networks, and can share the same channel and therefore ledger - but in essence, the views/updates into that ledger are through the interaction in the business network, from where the source transactors can be identified and assets, participants, transactions etc are collated in an orderly, organised fashion through registries.
@Elulup 1) correct, yes and 1 channel = 1 ledger 2) ACLs are in the 'runtime' of the business network - so filtering if you like. Each channel can have more than one deployed business network on that channel - so the scenario where the same '2' orgs (etc) are running different kinds of business networks, and can share the same channel and therefore ledger - but in essence, the views/updates into that ledger are through the interaction in the relevant business network, from where the source transactors can be identified and assets, participants, transactions etc are collated in an orderly, organised fashion through registries (specific to that business network).
Can we see a block using *composer rest api's*
[ ](https://chat.hyperledger.org/channel/composer?msg=yKrkot2jkWNam4FsF) @phanikumar not dynamically, in the sense of a variable size concept that changes depending on data. You can change the model at any time to add fields to a Concept (if so approved) but the view of previous 'old' data in Playground will be obscured if looking there, however the original data, transactions etc are still on the ledger. (This would the case anyway, whether you choose to alter a model in Composer or otherwise)
[ ](https://chat.hyperledger.org/channel/composer?msg=JxDvPXYTq7iARuD7P) @mahoney1 Thanks that was very helpful
[ ](https://chat.hyperledger.org/channel/composer?msg=2w9jhfmFDJT8qgeZW) @MehulShah - This is a Composer Architecture presentation:
https://www.slideshare.net/SimonStone8/hyperledger-composer-architecture
IBM has an Open Badge program with this badge for Composer:
https://www-03.ibm.com/services/learning/ites.wss/zz-en?pageType=badges&id=7bf14537-371d-428b-b916-28f983425399
[ ](https://chat.hyperledger.org/channel/composer?msg=LASEjcrd5sqLeCdu9) @phanikumar see this Stack overflow for an answer -> https://stackoverflow.com/questions/45873107/how-to-check-blockchain-in-hyperledger-composer -
thank you @rthatcher appreciate the quick feedback. I already have the earned the 2 badges but those were too easy, I was wondering if there was a formal certification exam in the works. I also am not sure whether bumping the slides off slideshare is a good idea without permission.
I'm was wondering if resources have been created that have been made available for use by community members to bootstrap their own presentations.
[ ](https://chat.hyperledger.org/channel/composer?msg=qqw38AnXMQuqKoK3D) @MehulShah - I'm not aware of any more formal education, and with Composer still being Pre-release at the moment I don't think it will change in the short term.
thanks @rthatcher I was looking for formal certification but I suspect that's what you meant. Thank you so much for your feedback.
[ ](https://chat.hyperledger.org/channel/composer?msg=NcBMerMuFKeTGwt6L) @rthatcher Ok I tried and I got it. Thanks a lot
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=c4cyKYm8SLmP7iQjN) Any idea folks?
Hello - I have a single peer composer network up and running. I have made several network updates. Sometimes my existing data is retained after a 'composer network update' command, but other times it is completely dropped (though I can still see previous actions in the Historian record). What are the rules around whether the data is dropped or not upon an update command? Thanks
I am working with composer playground and created a participant and deleted it. But, when I am trying to create a new participant with the same name, it is saying participant already exists. Clearing localstorage will fix the issue. But, can I have some other alternative instead of clearing localstorage every time
i am following the multiple org i was getting error for
```
latest not found
```
so i updated images to specific version. Does it broke some thing
[ ](https://chat.hyperledger.org/channel/composer?msg=C73iYNdhDq3XCf6gj) @dwong hi there - this sample network (and code) https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/trade-network/lib/logic.js#L46 and query definition here -> https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/trade-network/queries.qry#L22 1) calls a predefined query (in your `queries,qry` file but you could equally build the same query using `buildQuery` API 2) returns a results array (Commodities exceeding a certain threshold which is an input parameter ie the query might be defined as ```query selectCommoditiesWithHighQuantity {
description: "Select commodities based on quantity"
statement:
SELECT org.acme.trading.Commodity
WHERE (quantity > _$quantity)
} ``` and called as `return query('selectCommoditiesWithHighQuantity' , { "quantity": qty }) ` in your code
[ ](https://chat.hyperledger.org/channel/composer?msg=356t7HBuPN4nTDZ28) @kakuzu which tutorial and what step number -was it this edition ? https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org or using 'next' edition https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-multi-org ?
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org this one i am following
./byfn.sh -m up -s couchdb -a here i did change images $IMAGE to specific X_6x...
and with -a it doesn't work
right, that ... is a step in multi-org tutorial, not single org ? (the doc link you sent is for single org - is that the right link ?)
@mahoney1 very thing works fine now , starting from scratch. sorry i shared the wrong link.
i will update you when all is set at least BYFN works fine.
i will update you when whole tutorial is complete atleast for now BYFN works fine.
thanks for the updated link.
i am following this https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
cool, I was just testing now and I'm getting similar results
[ ](https://chat.hyperledger.org/channel/composer?msg=BACQ29QweSTR6QLuf) @phanikumar hi there, if you add new fields to an Asset you are correct - you can no longer see the data in Playground. If you remove the field from the model - you can see the data again. If you add the new field with 'optional' for the field in the model you will see the original data (again). it is easy to extract the data to JSON files using the REST APIs (https://hyperledger.github.io/composer/integrating/getting-started-rest-api.html ). You can easily extract the JSON data from the registry in question to a text file - then change it to match your new model etc etc if you wish. I would think writing a simple to extract the data (eg using curl REST API GET) and re-adding (a REST API POST) with the new fields/data for relevant participants/assets might be a way forward if you wish to retain data going forward. Then you can see it in Playground change / add there etc etc
[ ](https://chat.hyperledger.org/channel/composer?msg=BACQ29QweSTR6QLuf) @phanikumar hi there, if you add new fields to a Participant you are correct - you can no longer see the data in Playground. If you remove the field from the model - you can see the data again. If you add the new field with 'optional' for the field in the model you will see the original data (again). it is easy to extract the data to JSON files using the REST APIs (https://hyperledger.github.io/composer/integrating/getting-started-rest-api.html ). You can easily extract the JSON data from the registry in question to a text file - then change it to match your new model etc etc if you wish. I would think writing a simple to extract the data (eg using curl REST API GET) and re-adding (a REST API POST) with the new fields/data for relevant participants/assets might be a way forward if you wish to retain data going forward. Then you can see it in Playground change / add there etc etc
[ ](https://chat.hyperledger.org/channel/composer?msg=BACQ29QweSTR6QLuf) @phanikumar hi there, if you add new fields to a Participant you are correct - you can no longer see the data in Playground (but the record with that participant id still exists on the ledger). If you remove the field from the model - you can see the data again. If you add the new field with 'optional' for the field in the model you will see the original data (again). it is easy to extract the data to JSON files using the REST APIs (https://hyperledger.github.io/composer/integrating/getting-started-rest-api.html ). You can easily extract the JSON data from the registry in question to a text file - then change it to match your new model etc etc if you wish. I would think writing a simple to extract the data (eg using curl REST API GET) and re-adding (a REST API POST) with the new fields/data for relevant participants/assets might be a way forward if you wish to retain data going forward. Then you can see it in Playground change / add there etc etc
[ ](https://chat.hyperledger.org/channel/composer?msg=BACQ29QweSTR6QLuf) @phanikumar hi there, if you add new fields to a Participant you are correct - you can no longer see the data in Playground (but the record with that participant id still exists on the ledger). If you remove the field from the model - you can see the data again. If you add the new field with 'optional' for the field in the model you will see the original data (again) - that might be all you need to solve your short-term issue. Going beyond that, it is easy to extract the data to JSON files using the REST APIs (https://hyperledger.github.io/composer/integrating/getting-started-rest-api.html ). You can easily extract the JSON data from the registry in question to a text file - then change it to match your new model etc etc if you wish. I would think writing a simple to extract the data (eg using curl REST API GET) and re-adding (a REST API POST) with the new fields/data for relevant participants/assets might be a way forward if you wish to retain data going forward. Then you can see it in Playground change / add there etc etc
@y2255236 same message as above relating to @phanikumar about seeing your sample data (whether its through a web connection or viewing it in playground against a real Fabric environment setup).
[ ](https://chat.hyperledger.org/channel/composer?msg=fjwiqFNWYWFDiWQsq) @mahoney1 Thanks mahoney1. Let me try now!
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=6ouBcxtaucguJRbZC) It works! Although this `return query('selectSomeAssetBySomething', {"something": thisThing})` does return an array of `SomeAsset` but when testing on Composer Online Playground there is no way to see what is being returned. So in the `query.then();`, I put a custom function to walk through the array and add them to an `Event` to be emitted. Now in the emitted `Event`, I see the whole array of result. Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=6ouBcxtaucguJRbZC) It works! Although this `return query('selectSomeAssetBySomething', {"something": thisThing})` does return an array of `SomeAsset`,when testing on Composer Online Playground there is no way to see what is being returned. So in the `query.then();`, I put a custom function to walk through the array and add them to an `Event` to be emitted. Now in the emitted `Event`, I see the whole array of result. Thanks!
Hi, what can we do if we deploy a composer network with bad endorsement policies ? I can't do anything except killing the network and restart ? Even updating a network is not possible cause ENDORSEMENT_POLICY_FAILURE
Can someone suggest me best practice to use composer on Production environment?
Is it okay to use scripts which create and start channel as suggested in docs here - https://chat.hyperledger.org/channel/composer on production env?
Or do we need to modify it with docker or anything like that?
Can someone suggest me best practice to use composer on Production environment?
Is it okay to use scripts which create and start channel as suggested in docs here - https://hyperledger.github.io/composer/installing/development-tools on production env?
Or do we need to modify it with docker or anything like that?
Can someone suggest me best practice to use composer on Production environment?
Is it okay to use scripts to start fabric env as suggested in docs here - https://hyperledger.github.io/composer/installing/development-tools on production env?
Or do we need to modify it with docker or anything like that?
Clipboard - March 1, 2018 6:08 PM
@mahoney1 jsust changed the organization: org1 to org2 and saved it with there keys.
@mahoney1 just changed the organization: org1 to org2 and saved it with there keys. following the multi-organization tutorial
Has joined the channel.
Can the hyperledger fabric store data like a traditional database and it not, how do I integrate?
How to use events then query historian or use get to get the transaction details? Is that if I enter a barcode ,it will return information(history of transactions of the item)
Has joined the channel.
Has joined the channel.
Hi, I am trying to fetch the history data using hyperledger composer? But the data is empty. Any help would be appreciated.
@dwong, just use `console.log` if you're using Playground eg. `console.log('Query result element ' + (n+1) + ' is identifier ' + assetArray[n].getIdentifier());` etc (hit shift-CTRL-I for JS console)
[ ](https://chat.hyperledger.org/channel/composer?msg=fmidM7TKBYhd9K99n) @Rmannn hi there - good question - so support for this (updating your policy, via composer network upgrade) is added in the Composer 'ext' 0.17.x release (current v0.17.6 is the current release) according to this closed issue -> https://github.com/hyperledger/composer/issues/2411 - it is not in 0.16.x just to point that out.
[ ](https://chat.hyperledger.org/channel/composer?msg=fmidM7TKBYhd9K99n) @Rmannn hi there - good question - so support for this (updating your policy, via composer network upgrade) is added in the Composer 'next' 0.17.x release (current v0.17.6 is the current release) according to this closed issue -> https://github.com/hyperledger/composer/issues/2411 - it is not in 0.16.x just to point that out.
@kakuzu so your connection profile definition is incorrect (orderers and peers stanzas are arrays [] in definition) - also for your `composer-connector-undefined` errors - see answer here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--runtime-install-errors-composer answer #6 beginning `Error: Failed to load composer module `
@kakuzu so your connection profile definition is incorrect (orderers and peers stanzas are arrays [] in definition) see -> https://hyperledger.github.io/composer/reference/connectionprofile.html for example - also for your `composer-connector-undefined` errors - see answer here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--runtime-install-errors-composer answer #6 beginning `Error: Failed to load composer module `
@kakuzu so your connection profile definition is incorrect (orderers and peers stanzas are arrays [] in definition) see -> https://hyperledger.github.io/composer/reference/connectionprofile.html for example or check the exact definition as shown in the multi-org tutorial you've been following- also for your `composer-connector-undefined` errors - see answer here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--runtime-install-errors-composer answer #6 beginning `Error: Failed to load composer module `
[ ](https://chat.hyperledger.org/channel/composer?msg=kSxCkDgRBPkTKDkmT) @oanewman that's really a Fabric question :-) but currently Fabric supports key/value DBs like CouchDB or LevelDB - see here for a bit more explanation on usage -> https://stackoverflow.com/questions/47505084/difference-between-chain-and-state-database-in-hyperledger-fabric Hyperledger Fabric (HLF) uses a key value database to store its state. This object store holds binary data which can be queried using its key. By default fabric uses a LevelDB store which is included in the peer process.But you can plug in CouchDB which supports queries. When using simple structs in your chaincode, you just need your data to be queried by their keys.. See more info on State Database info here http://hyperledger-fabric.readthedocs.io/en/release/ledger.html
[ ](https://chat.hyperledger.org/channel/composer?msg=kSxCkDgRBPkTKDkmT) @oanewman that's really a Fabric question :-) but currently Fabric supports key/value DBs like CouchDB or LevelDB - see here for a bit more explanation on usage -> https://stackoverflow.com/questions/47505084/difference-between-chain-and-state-database-in-hyperledger-fabric Hyperledger Fabric (HLF) uses a key value database to store its state. This object store holds binary data which can be queried using its key. By default fabric uses a LevelDB store which is included in the peer process.But you can plug in CouchDB which supports queries. When using simple structs in your chaincode, you just need your data to be queried by their keys.. See more info on State Database info here http://hyperledger-fabric.readthedocs.io/en/release/ledger.html - If you want to integrate - use something like an integration tool to get data into and out of the business network (standard JSON) - eg using Node-Red for example for which Composer has specific workflow components - see tutorial here - to see it in use (this doc goes into the next 0.16.x build) https://hyperledger.github.io/composer/unstable/tutorials/nodered-tutorial and the main docs page -> https://hyperledger.github.io/composer/latest/integrating/node-red.html
[ ](https://chat.hyperledger.org/channel/composer?msg=LxfFvgX6CqB76yzkh) @JayPandya well Composer has not gone GA yet so should not yet be used in Production, but with that caveat 1) yes you can just take the scripts and use https://github.com/hyperledger/composer-tools/tree/master/packages/fabric-dev-servers - In production you would use either a Cloud hosted blockchain provider or an 'enterprise capable' orchestration suite such (as you mention docker) Enterprise Docker Swarm to manage all the networking and connectivity (or would work with a Hosting service) - whereas in a development environment you need to manage the networking aspects yourself. See more info here -> https://blog.docker.com/2017/11/swarm-orchestration-in-docker-enterprise-edition/ - As for building your Fabric infrastructure (upon which deployed Composer business networks/smart contracts will sit), suggest to read Fabric docs here -> http://hyperledger-fabric.readthedocs.io/en/release/blockchain.html#what-is-hyperledger-fabric and also see these Stack overflows here -> https://stackoverflow.com/questions/46743165/using-hyperledger-fabric-in-production and here -> https://stackoverflow.com/questions/46658977/how-do-i-deploy-hyperledger-fabric-composer-in-the-cloud
[ ](https://chat.hyperledger.org/channel/composer?msg=LxfFvgX6CqB76yzkh) @JayPandya well Composer has not gone GA yet so should not yet be used in Production, but with that caveat 1) yes you can just take the scripts and use https://github.com/hyperledger/composer-tools/tree/master/packages/fabric-dev-servers - 2) In production you would use either a Cloud hosted blockchain provider or an 'enterprise capable' orchestration suite such (as you mention docker) Enterprise Docker Swarm to manage all the networking and connectivity (or would work with a Hosting service) - whereas in a development environment you need to manage the networking aspects yourself. See more info here -> https://blog.docker.com/2017/11/swarm-orchestration-in-docker-enterprise-edition/ - 3) As for building your Fabric infrastructure (upon which deployed Composer business networks/smart contracts will sit), suggest to read Fabric docs here -> http://hyperledger-fabric.readthedocs.io/en/release/blockchain.html#what-is-hyperledger-fabric , configuration tasks, YAML configuration files involved etc - and finally, also see these Stack overflows here -> https://stackoverflow.com/questions/46743165/using-hyperledger-fabric-in-production and here -> https://stackoverflow.com/questions/46658977/how-do-i-deploy-hyperledger-fabric-composer-in-the-cloud
Hi all.
Two things :
https://hyperledger.github.io/composer/reference/composer.network.update.html
404 Not found 🙂
And I try to do a `composer network start ....` but I have this :thumbsup:
```
Starting business network from archive: odm-network.bna
Business network definition:
Identifier: tutorial@0.0.1
Description: Demo
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (tutorial:0.16.3)-open /var/hyperledger/production/chaincodes/tutorial.0.16.3: no such file or directory)
```
The thing is I don't have the name "tutorial" anywhere... What's the pb ?
Hello everyone, can someone provide some idea for how to share assets READ rights with other participants.
For example an owner of a particular asset would like to share the status of that asset with another participant.
I want to do it simplistic as possible.
Second, there is a part in the official documentation that stated you can include JS functions to evaluate conditions.
I was not able to find any tutorials on it; because I want to create a rule that applies if you are enlisted within an array inside this asset. (The sharing feature can be implemented that way easily).
However, I want to test the functionality of course even if not for the sharing feature.
Here is a link of the second feature I would like some guide on it.
https://hyperledger.github.io/composer/latest/reference/acl_language
In the section of "Condition" you can use JS expressions to refer to a utility function. I want to get this done please. Thank you.
Has left the channel.
@CorentinPacaud there was an announce/info about URL changing - the 0.16.x doc link has `latest` in the path ie https://hyperledger.github.io/composer/latest/reference/composer.network.update.html - as for second part - looks like you haven't either 1) your peer(s) are down or 2) you've not done a `composer runtime install ` ??
@MuhammadSalah hi there, check out the ACL tutorial https://hyperledger.github.io/composer/next/tutorials/acl-trading (works with 0.16.x or 0.17.x) - it has JS functions as conditions - also you can see usage here of function call examples here (code in JS -> https://github.com/hyperledger/composer/blob/master/packages/composer-tests-functional/systest/data/accesscontrols.js ) and ACLs to match here -> https://github.com/hyperledger/composer/blob/master/packages/composer-tests-functional/systest/data/accesscontrols.acl - you could for example work out what criteria means a participant (through his record) is allowed to READ an asset (eg such as a group membership or something) and then the ACLs can test that condition in the condition statement like it does with the `getIdentifer()` match in the tutorial I sentn you
@MuhammadSalah hi there, check out the ACL tutorial https://hyperledger.github.io/composer/next/tutorials/acl-trading (works with 0.16.x or 0.17.x) - it has JS functions as conditions - also you can see usage here of function call examples here (code in JS -> https://github.com/hyperledger/composer/blob/master/packages/composer-tests-functional/systest/data/accesscontrols.js ) and ACLs to match here -> https://github.com/hyperledger/composer/blob/master/packages/composer-tests-functional/systest/data/accesscontrols.acl - you could for example work out what criteria means a participant (through his record) is allowed to READ an asset (eg such as a group membership or something) and then the ACLs can test that condition in the condition statement like it does with the `getIdentifer()` match in the tutorial I sent you
@MuhammadSalah hi there, check out the ACL tutorial https://hyperledger.github.io/composer/next/tutorials/acl-trading (works with 0.16.x or 0.17.x) - it has JS functions as conditions - also you can see usage here of function call examples here (code in JS -> https://github.com/hyperledger/composer/blob/master/packages/composer-tests-functional/systest/data/accesscontrols.js ) and ACLs to match here -> https://github.com/hyperledger/composer/blob/master/packages/composer-tests-functional/systest/data/accesscontrols.acl - you could for example work out what criteria means a participant (through his record) is allowed to READ an asset (eg such as a group membership or something) and then the ACLs can test that condition in the condition statement like it does with the `getIdentifer()` match in the tutorial I sent you - to ensure only those participants in the condition match are ALLOWed to READ the asset etc.
@mahoney1 That's very helpful, I can get going from there. :D
I only think I was missing for that "annotation parts".
Where can I find all possible @ {stuff} I can use?
How does it work is actually a better question?
how to query all asserts available with a manufacturer in composer? Is there any function for that?
[ ](https://chat.hyperledger.org/channel/composer?msg=RxmqewaKGn8LogDY2) @MuhammadSalah you mean for transactions? voila -> https://hyperledger.github.io/composer/reference/js_scripts.html
[ ](https://chat.hyperledger.org/channel/composer?msg=RxmqewaKGn8LogDY2) @MuhammadSalah you mean for transactions? voila, all explained here -> https://hyperledger.github.io/composer/reference/js_scripts.html
Screen Shot 2018-03-02 at 8.54.10 PM.png
is alright, figured out
@mahoney1
My network is always named "tutorial@0.0.1", while I don't have any "tutorial" string in my whole project.
[ ](https://chat.hyperledger.org/channel/composer?msg=ywBLBzMu9nKcKostP)
[ ](https://chat.hyperledger.org/channel/composer?msg=m3h2y48SATKARopxh) @phanikumar something like ```query selectAssetsByManufacturer {
description: "Select all commodities based on the manufacturer"
statement:
SELECT org.acme.trading.myAsset
WHERE (manufacturerID ==_$FQmanufacturerID)
} ``
and where your asset `myAsset` has a relationship `--> Manufacturer manufacturer`
// manf_id is 'resource:org.acme.trading.MyAsset#MFU_ID1'
return query('selectAssetsByManufacturer', {
"manufacturer": manf_id
})
.then(function (results) {
for (var n = 0; n < results.length; n++) {
var asset = results[n];
console.log('Query result is ' + (n+1) + ', object is ' + asset);
console.log('Manufacturer owner identifier is ' + asset.getIdentifier());
}
});
[ ](https://chat.hyperledger.org/channel/composer?msg=m3h2y48SATKARopxh) @phanikumar something like ```query selectAssetsByManufacturer {
description: "Select all commodities based on the manufacturer"
statement:
SELECT org.acme.trading.myAsset
WHERE (manufacturer ==_$manf_id)
} ``
and where your asset `myAsset` has a relationship `--> Manufacturer manufacturer`
// manf_id is 'resource:org.acme.trading.MyAsset#MFU_ID1'
return query('selectAssetsByManufacturer', {
"manufacturer": manf_id
})
.then(function (results) {
for (var n = 0; n < results.length; n++) {
var asset = results[n];
console.log('Query result is ' + (n+1) + ', object is ' + asset);
console.log('Manufacturer owner identifier is ' + asset.getIdentifier());
}
});
@mahoney1 sry, forget. it work now
[ ](https://chat.hyperledger.org/channel/composer?msg=iqefFaCyLnAujmq5g) @CorentinPacaud so your network name in your package.json is that ? - the network name you provide in your `composer runtime install` should match the "name" of your network in your package.json (you probably checked - just saying)
right
what was your problem?
Idk.... I remove everything, retransfere the package.json to my vm.
ok cool
[ ](https://chat.hyperledger.org/channel/composer?msg=ELYfDyAmFNFcEXg2H) @mahoney1 Thanks for the reply. Is there a sample video that demonstrate querying and event triggers in hyper ledger composer?
Would it be possible to send data on the blockchain from a device not running composer (not a peer)? Like a Raspberry Pi Zero for example
@phanikumar (ps updated my 'left-hand' operator' above FYI. I dont have sample video - see the tutorial https://hyperledger.github.io/composer/tutorials/queries but you can see use of queries and events in the sample networks repo - like these https://github.com/hyperledger/composer-sample-networks/tree/v0.16.x/packages/trade-network and https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/pii-network/lib/logic.js
[ ](https://chat.hyperledger.org/channel/composer?msg=KSiKAJg7GaeAwgtez) @dtp If you want to integrate - use something like an integration tool to get data into business network (standard JSON) on the blockchain - eg using Node-Red for example for which Composer has specific workflow components - see tutorial here -> https://hyperledger.github.io/composer/unstable/tutorials/nodered-tutorial to see it in use (this doc goes into the next 0.16.x build) - and the main docs page -> https://hyperledger.github.io/composer/latest/integrating/node-red.html
Thank you @mahoney1 . Specifically what I would like to do is store energy readings on the blockchain from a device that is not able to run Fabric. Would Node Red suit what I am looking for in this case?
you wrote this useful guide which I am reading (https://www.ibm.com/developerworks/cloud/library/cl-integrate-data-with-hyperledger-composer-blockchain/), should I follow that or follow your Node Red links? :)
@dtp you can use either means (the docs describes using REST APIs) . Node-red allows you define your bit inside a whole workflow which might be useful for you - part of which (I assume) you will deposit readings to be injected onto the blockchain. So yes, Node-red should suit.
Hello everyone, regarding the persistent data storage for mongo db, in the envvars.txt file, do I have to put export in front of every envvars?
@mahoney1 thanks
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=b3HAcxWi9BGrXNfNh) @mikeleow - no, just use the file as-is and on your command shell - type `source envvars.txt` - that's it. Per here -> https://hyperledger.github.io/composer/integrating/deploying-the-rest-server - obviously, if you're using this elsewhere like a scripted deploy - then that's different.
Re me,
I try to contact network via composer-client node module from my server.
But when I do `bizNetworkConnection.connect(profile)`
I have this error :thumbsup:
```
Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier
```
Any info ?
yes
@CorentinPacaud https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--runtime-install-errors-composer
@CorentinPacaud check here https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--runtime-install-errors-composer
Screen Shot 2018-03-02 at 10.57.42 PM.png
does this means I have to run my composer-rest-server first before running this docker?
@mahoney1 Thank you, but I already went through this :D
I was just talking in general.
I think at some point there has to be more detailed explanation for the runtime.
@mahoney1 Would you mine providing me the link for rest API doc. I had a look into the Git Source and would like to know more about what result will assetRegistry.remove(asset) provide is it a result of all remaining assets or success or failure status
Also do we implement business logic for event in script file itself?
I have a question as well; how can we register new identities through composer-client; I can create participants, I need to tie them to a composer card through nodeJS.
@kakuzu I did everything on the link but I still have the pb. I add that I built a custom network composed of 2 peers (and 2 couchDB) to try
[ ](https://chat.hyperledger.org/channel/composer?msg=h65XzLGPLyx3Zyrpk)
could you check the profile does it have a type specified.
check the profil ?
how ?
your card is broken .check this https://github.com/hyperledger/composer/issues/3407 https://github.com/hyperledger/composer/issues/2714 I think it is the versioning issue of node.
So I need to update node to 8 ?
yes. 8.9
did you tried the muti organization tutorial
no. I adapt this tuto with only 2 peers and one VM : https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
Updating to 9.6.1
Not better ....
```
~/fabric-tools$ npm version
{ 'fabric-dev-servers': '0.0.11',
npm: '3.10.3',
ares: '1.13.0',
cldr: '32.0.1',
http_parser: '2.7.0',
icu: '60.2',
modules: '59',
napi: '2',
nghttp2: '1.29.0',
node: '9.6.1',
openssl: '1.0.2n',
tz: '2017c',
unicode: '10.0',
uv: '1.19.1',
v8: '6.2.414.46-node.20',
zlib: '1.2.11' }
admlcl@VMXPOC4:~/fabric-tools$ ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.5
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'
Command failed
```
haha. i know this on u need to rebuild cli
let me give you the command
thx ;)
Sol
https://github.com/hyperledger/composer/issues/1531
go to /usr/lib/node_modules/composer-cli/) and run this command:
npm rebuild --unsafe-perm
@kakuzu same pb....
Ah, I'll try in root mod
yeah sure
rebuild with root.
try this tut because most of the things have been upgraded. this works for me fine if u want two peer change in crypto-config.
@kakuzu F*CK YEAH !!! It worked
haha nice
sudo thing is pain in ass.
i tried to add npm permission for normal user but it get revoked. running chain is easy if you manage to get the correct running environment.
Well... It worked for the normal network (startFabric.sh in fabrictools) but not my network. CY next week...
bye
byeI precise that I already try this thing : https://github.com/hyperledger/composer/issues/1531
bye
Has joined the channel.
Clipboard - March 2, 2018 11:41 AM
nothing is found.
Has joined the channel.
@kakuzu NVM is installed?
i need to reboot
try to type nvm use --lts
got it thanks i forgot to reboot the instance.
[ ](https://chat.hyperledger.org/channel/composer?msg=rSMM9GrixDn7LMGJy) @mahoney1 thanks, I am working with the 0.17.5 version, if the policy contain bad values, I also get ENDORSEMENT_POLICY_FAILURE during a composer network update command. I saw an issue on github that say we can't upgrade without a new version of the runtime. I tried and it was exact, we can't. So I was stuck with no other solution than killing the network and restart.
Also, I am trying to find a complete documentation of the configtxgen tool with a configtx.yml file containing all possible keys/values with no luck...
[ ](https://chat.hyperledger.org/channel/composer?msg=rSMM9GrixDn7LMGJy) @mahoney1 thanks, I am working with the 0.17.5 version, if the policy contains bad values, I also get an ENDORSEMENT_POLICY_FAILURE during a composer network update command. I saw an issue on github that say we can't upgrade without a new version of the runtime. I tried and it was exact, we can't, and again, this issue was closed without giving a chance to be resolved... So I am stuck with no other solution than killing the network and restart if I submit bad policies...
Also, I am trying to find a complete documentation of the configtxgen tool with a configtx.yml file containing all possible keys/values with no luck...
@Rmann - right - you meant `I also get an ENDORSEMENT_POLICY_FAILURE during a composer network upgrade command. ` I assume (`update` only updates the BN itself). - I believe the issue you refer to is this one ? https://github.com/hyperledger/composer/issues/2411 - but if its failing to upgrade with the endorsement policy (which is passed on by Composer to Fabric btw) - then post a comment and we'll get it re-opened etc. For configtxgen see the Fabric docs -> http://hyperledger-fabric.readthedocs.io/en/release/configtxgen.html?highlight=configtxgen
[ ](https://chat.hyperledger.org/channel/composer?msg=HCWFxT3XcC9yvpkxE) @MuhammadSalah we have an issue on documentation for this right now https://github.com/hyperledger/composer/issues/3088 -
the general flow is
```
Issue identity, import card, connect to the business network using the card `businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user); .... var userCard = new IdCard({...}); userCard.setCredentials(credentials); ... adminConnection.importCard(userCardName, userCard); .... .then(() => { // Connect to the business network using the network admin identity ... businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore }); businessNetworkConnection.connect(userCardName); } ...
```See examples here (but use FileSystemCardStore instead of MemoryCardStore) -> https://github.com/IBM/Decentralized-Energy-Composer/blob/master/test/test.js#L291 and here -> https://github.com/IBM/Decentralized-Energy-Composer/blob/master/test/test.js#L490-#L561
@mahoney1 Thank you mate, you saved my day again :D
[ ](https://chat.hyperledger.org/channel/composer?msg=dWahMMZMGtxqmZbbB) @MuhammadSalah on ACLs (just catching up) - did you see this doc -> https://hyperledger.github.io/composer/reference/acl_language
@mahoney1 looking at it
Ah this yea
I just want to do it all in a JS script.
For testing purposes
and I don't want to mix between JS and shell.
I usually do that stuff on shell.
ok, well the accesscontrols.js script I sent earlier and accompanying rules are examples. The general idea with ACLs is one resource type (or even instance of) has `some kind` of access to a target Resource - so you would set rules that define the criteria (eg 'all participants with a status of 'approved' and role of 'manager' can VIEW this asset registry or assets with this status only etc etc). The runtime DENIES the results (coming back from the ledger) to the participant in question (current participant using a business network card) - that is the default rule - DENIED unless GRANTEd explicitly (ie which operation, CREATE, ADD UPDATE, DELETE READ blah blah)
ok, well the accesscontrols.js script I sent earlier and accompanying rules are examples. The general idea with ACLs is one resource type (or even instance of) has `some kind` of access to a target Resource - so you would set rules that define the criteria (eg 'all participants with a status of 'approved' and role of 'manager' can VIEW this asset registry or assets with this status only etc etc). The runtime DENIES the results (coming back from the ledger) to the participant in question (current participant using a business network card) - that is the default rule - DENIED unless GRANTEd explicitly (ie which operation, CREATE, ADD UPDATE, DELETE READ blah blah). You can have conditions are evaluated dynamically based on certain field/attribute values of a resource (on the ledger) at the time the rule is evaluated. You can furthermore, control what TRANSACTION types are only allowed to be performed by certain participants blah blah.
@mahoney1 Well, I understand that part I think.
I need help with creating a new participant identity and creating a card
I could create an identity
get enrollment userID and secret
next step I should fill in metadata and connection profile to create a card
right?
and this is the part I am stuck with.
I could use the enrollment credentials and manually create a card or via shell
then import it
then I can access it through composer-client.
I want to be able to do this all through JS that's it
so I can create some testing scenario's for my business network while I develop it
who can issue identities and that kind of stuff
or create dummy participants then identities then cards then import the cards, execute a full cycle, tear down
hi, sure @MuhammadSalah this should help you -> https://medium.com/@aniketengg.225/hyperledger-composer-issue-identity-import-card-7e07af378447
hi, sure @MuhammadSalah this should help you -> https://medium.com/@aniketengg.225/hyperledger-composer-issue-identity-import-card-7e07af378447 - we have an issue on Cards/Identity Issue documentation for this right now https://github.com/hyperledger/composer/issues/3088
Thanks @mahoney1
Hello everybody! I need some help about Access Control File. I have a participant and I would like that this participant can't create assets BUT can create transactions which have to create assets however when the participant makes a transaction the system dont let the participant to make it because he can't create assets. I have no idea about how get it :thinking: Sorry if my english is bad. If you dont understand the doubt I can try again.
Hello everybody! I need some help about Access Control File. I have a participant and I would like that this participant can't create assets BUT can create transactions, each transactions have to create assets however when the participant makes a transaction the system dont let the participant to make it because he can't create assets. I have no idea about how get it :thinking: Sorry if my english is bad. If you dont understand the doubt I can try again.
Hello everybody! I need some help about Access Control File. I have a participant and I would like that this participant can't create assets BUT can create transactions, these transactions have to create assets however when the participant makes a transaction the system dont let the participant to make it because he can't create assets. I have no idea about how get it :thinking: Sorry if my english is bad. If you dont understand the doubt I can try again.
If I throw an Error in my transaction processor function if it doesn't update anything, will it still get recorded in the historian?
I am querying the Historian for all transaction performed on an assetId, but I'm getting all transactionsInvoked... is there anything I can do inside my transaction processor function that will prevent it from being recorded in the historian if it didn't change anything in the asset??
Has joined the channel.
Hi all...looking for devs to join our team www.trustabit.io if interested contact me at saritta@trustabit.io We are in the last stages of working out a joint venture deal with a tier 1 US well known airline
[ ](https://chat.hyperledger.org/channel/composer?msg=WG8FD5mBKE59ytazp) @mahoney1 as you said with this caveat we can go for production and I've looked into composer github releases in if you know this then can you tell me which are major issues or scenarios where we can't go with production env?
Considering I just want to build simple reward application with the use of composer and fabric so is this okay to go with current available version of composer?
Has joined the channel.
I have create script file with following data
var order = factory.newResource(NS, 'Order', 'ORD_001');
order.orderDate=setUpDemo.timestamp;
But, I am getting `t: Instance com.miraclesoft.blockchain.Order#ORD_001 missing required field orderDate` Can someone help me out on this
I have create script file with following data
var order = factory.newResource(NS, 'Order', 'ORD_001');
order.orderDate=setUpDemo.timestamp;
But, I am getting `t: Instance com.myorg.blockchain.Order#ORD_001 missing required field orderDate` Can someone help me out on this
@phanikumar1210 can you post the entire script so we could give a look on it?
Hello everyone, I had followed his instruction of adding the 0.0.0.0 to the connection profile. https://github.com/hyperledger/composer/issues/1784 but I still face with chain code error, I am hosting my machine on aws.
Screen Shot 2018-03-03 at 2.36.14 PM.png
If I were to add my aws public ip, it will totally can't ping the business card
Can someone helped me, I had been fixing it for the past couple of days.
Has joined the channel.
Has joined the channel.
Hello guys I have a question.
Is Hyperledger composer stable? Is it reliable enough for using in business?
how can i revoke access of an asset on time basis
Has joined the channel.
Has joined the channel.
Has joined the channel.
hi guys i have created .bna file and now i cant figure out how can i create a network and deploy my .bna to it, can any1 please give me some pointers.
@NewToFabric take a look here https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
Thanks @akula
@NewToFabric in case of doubts come back here
Screen Shot 2018-03-03 at 6.57.10 PM.png
I am running this code on aws. ubuntu
error_deploy.png
if anyone knows solution to above problem,please help
@NewToFabric the order of the commands:
`composer card delete -n PeerAdmin@commodity-network
composer card delete -n admin@commodity-network
composer archive create -t dir -n .
composer card create -p connection.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k 17f95a1817a46201305154fd728a3ed1cd014c29ef79241289fa4ba305da4758_sk -r PeerAdmin -r ChannelAdmin
composer card import -f PeerAdmin@commodity-network.card
composer runtime install -c PeerAdmin@commodity-network -n commodity-network
composer network start -c PeerAdmin@commodity-network -a commodity-network@0.0.1.bna -A admin -S adminpw`
be sure that network is up as well
Screen Shot 2018-03-03 at 10.39.42 PM.png
@mikeleow the environment variable COMPOSER_PROVIDERS contains invalid JSON
@sstone1 do I have to removes all whitespaces when using the envvars.txt file?
Has joined the channel.
Hi Guys. I have been taking the Hyperledger Playground Tutorial - https://www.youtube.com/watch?v=t5wZvmZGuAY and have been trying to re-create this banking example. However, in the very last step of submit transaction, I get this error saying - ReferenceError: accountransfer is not defined. I have followed each step previously shown and have definition for AccountTransfer Transaction. Not sure why this error is thrown.
Capture.JPG
@AbhikSengupta share the model file and logic file
seems to be a camel case issue or parameter name issue. 't' chacrater is missing between account and transfer. Check accountransfer vs accountTransfer vs accounttransfer
Model.JPG
Logic - 1.JPG
Logic - 2.JPG
[ ](https://chat.hyperledger.org/channel/composer?msg=LchbX88eXcDhDSJ4F) @AbhikSengupta check line #22
[ ](https://chat.hyperledger.org/channel/composer?msg=uxfqMkKSKi7Ra2xn2) @arunmitteam there was one t missing between account and transfer in logic which I corrected and retried. But still the same issue.
@arunmitteam - Thank you for your suggestion - the issue was with accounttransfer vs AccountTransfer. :)
cool
thanks a lot!
[ ](https://chat.hyperledger.org/channel/composer?msg=iHztvsKPPFrJRNwFX) @mikeleow not sure, want to paste in the contents of your envvars.txt file?
@sstone1 its alright, I had solved it! Thank you!
ah great, np
Has left the channel.
Has joined the channel.
.then(
function(asset){
query('getManufacturers',{manufacturerEmail:createProduct.product.productManufacturer});
}
).then(function(result)
{
console.log('result value'+result.length.should.equal(1));
console.log('result value'+result[0].getIdentifier().should.equal('intel@gmail.com'));
});
.then(
function(asset){
query('getManufacturers',{manufacturerEmail:createProduct.product.productManufacturer});
}
).then(function(result)
{
console.log('result value'+result.length.should.equal(1));
console.log('result value'+result[0].getIdentifier().should.equal('intel@gmail.com'));
});
resulting in error `TypeError: Cannot read property 'length' of undefined` but I have the manufacture record with that name and my query is as follows
SELECT com.myorg.blockchain.Manufacturer
WHERE (email ==_$manufacturerEmail)
.then(
function(asset){
query('getManufacturers',{manufacturerEmail:createProduct.product.productManufacturer});
}
).then(function(result)
{
console.log('result value'+result.length.should.equal(1));
console.log('result value'+result[0].getIdentifier().should.equal('intel@gmail.com'));
});
resulting in error `TypeError: Cannot read property 'length' of undefined` but I have the manufacture record with that name and my query is as follows
SELECT com.myorg.blockchain.Manufacturer
WHERE (email ==_$manufacturerEmail)
*can someone suggest me something on this*
@phanikumar1210 you need to `return` the promise that is returned by the `query` call
I am following these links https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/trade-network/test/trading.js for script and https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/trade-network/queries.qry for query language. But I didn't find any promise in them. Can you explain it in detail.
if you are not familiar with JavaScript promises, then you should read up on them and understand how promise chains work
here is the documentation for the `query` function in the runtime API used by transaction processor functions: https://hyperledger.github.io/composer/latest/api/runtime-api#query
Has joined the channel.
I found my mistake @sstone1, thanks for the help
:+1:
Guys I've seen that creating Transaction(via JS) is also creating its resource which is obvious and just want to know that we can also create Resource alone without transaction so basically if we are going to create Resource then obviously we are going to make it happen via Transaction because it would be great to keep track of records.
Only thing concerns me here is that creating Resource without transaction is just a test case or use case that we are going to use to testing purpose only except we don't want to create/record its transaction right?
It would be great if someone explain it in bit detail
It would be great if someone can explain it in bit detail
Has joined the channel.
Has joined the channel.
hy guys, can we unicast event to a particular user than broadcasting it to entire users in script file ??.. please help me here
Has joined the channel.
while creating the deployable .bna file ... using the command from the CLI ... I am facing error ... can you tell me why composer archive create -t dir -n .
-bash: composer: command not found
@JaspalSingh13 have you installed composer cli ?? ..check if composer --help works
[ ](https://chat.hyperledger.org/channel/composer?msg=Myg9AzKon8Pu5aJY5) @alexdevassy I have observed that the installation gave me an error or I re run the command .. below error is coming .... is it due to different versions of node ?? ... cn you please help
configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/composer-cli/node_modules/pkcs11js/build'
gyp ERR! System Darwin 17.4.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/composer-cli/node_modules/pkcs11js
gyp ERR! node -v v8.9.1
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! pkcs11js@1.0.13 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the pkcs11js@1.0.13 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/jaspalsingh/.npm/_logs/2018-03-04T08_02_27_731Z-debug.log
@JaspalSingh13 Do u have root permission .... if you dont have root acess then try with sudo
i tried with with Suda error persist. still the
i tried with with Sudo still error persist.
I tried with Sudo still error persist ..
complete log ....
sudo npm install -g composer-cli
Password:
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated crypto@0.0.3: This package is no longer supported. It's now a built-in Node module. If you've depended on crypto, you should switch to the one that's built-in.
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated constantinople@3.0.2: Please update to at least constantinople 3.1.1
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
/usr/local/bin/composer -> /usr/local/lib/node_modules/composer-cli/cli.js
> fsevents@1.1.3 install /usr/local/lib/node_modules/composer-cli/node_modules/fsevents
> node install
[fsevents] Success: "/usr/local/lib/node_modules/composer-cli/node_modules/fsevents/lib/binding/Release/node-v57-darwin-x64/fse.node" already installed
Pass --update-binary to reinstall or --build-from-source to recompile
> pkcs11js@1.0.13 install /usr/local/lib/node_modules/composer-cli/node_modules/pkcs11js
> node-gyp rebuild
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/composer-cli/node_modules/pkcs11js/build'
gyp ERR! System Darwin 17.4.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/composer-cli/node_modules/pkcs11js
gyp ERR! node -v v8.9.1
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! pkcs11js@1.0.13 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the pkcs11js@1.0.13 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/jaspalsingh/.npm/_logs/2018-03-04T08_02_27_731Z-debug.log
finally resolved ..... sudo npm install -g --unsafe-perm composer-cli ... this works
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
I created a sample project using hyperledger composer and its working perfectly till the 'composer-rest-server ' command is executed which is generating REST API's. The problem I am facing is when I try to send a POST request using Angular JS I am receiving an error 422 "Unhandled error for request POST in validation error instance is not valid" and post 422 (unprocessable entity)
@NAWAZUDDIN552 have you defined Validation rule in your model?
query checkOrderAvailability {
description: "Validating if the product already exists"
statement:
SELECT com.myorg.blockchain.Product
WHERE ((productQualities.productType ==_$productType) AND (productStatus ==_$productStatus) AND (productOwner ==_$providerName)) LIMIT _$quantity
}
*The above query is returning me invalid result by ignoring the productStatus in where clause which is enum* is there any other source by which I should provide enum validate
query checkOrderAvailability {
description: "Validating if the product already exists"
statement:
SELECT com.myorg.blockchain.Product
WHERE ((productQualities.productType ==_$productType) AND (productStatus ==_$productStatus) AND (productOwner ==_$providerName)) LIMIT _$quantity
}
*The above query is returning me invalid result by ignoring the productStatus in where clause which is enum* is there any other source by which I should provide enum validation
Has joined the channel.
Has joined the channel.
hello guys, could you please help me Iam trying to configuring the REST server with a persistent data store, I follow all the steps, from the documentation, but when I get to check that the REST server has started successfully by using the docker -f rest, I get this error:
~/composerapp$ docker logs -f rest
0|composer | ? Enter your Connection Profile Name:
0|composer |
0|composer |
any idea of what I am doing wrong?:disappointed_relieved:
@JayPandya No
Has joined the channel.
how to i deloy new chain code in composer
I have meet with the Government tomorrow to discuss hyperledger and my composer-playground is giving me the (Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v59-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v59-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v59-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v59-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v59-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v59-darwin-x64/grpc_node.node'-Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v59-darwin-x64/grpc_node.node') error
I figure this is a fairly common error but I can't fix it.
I've reinstalled composer-cli, composer-rest-server, generator-hyperledger-composer
There is a node-v57-darwin-x64
But no node-v59-darwin-x64
can we recognize which user initiated the transaction in script file
figured it out :) ... i used getCurrentParticipant() :) :)
can i submit a transcation in playground being not a network admin ie being some other participant
Clipboard - March 5, 2018 11:43 AM
hi, in hyperledger composer smartcontract, how to set login credential and how to create how frontend UI
hi, in hyperledger composer smartcontract, how to set login credential and how to create frontend UI
any one can help me
Has joined the channel.
@RajaSathya you can create a front using angular js and yoman .... Actually yo generates automatic angular front end for your project .....But i am less familiar with angular, so i am also searching for a alternative way to create front end
thanks @alexdevassy
Has joined the channel.
can we submit transcations in playground being a normal participant , not being admin?
Screen Shot 2018-03-05 at 09.12.55.png
Thank you in advance =)
Has joined the channel.
Hi everyone,
Can someone help me ? I have this strange error :
```
Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'
```
Hi everyone,
Can someone help me ? I have this strange error :
```
Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'
```I precise that I alreay try this thing : https://github.com/hyperledger/composer/issues/1531
Hi All,
I have created my own middleware API interacting with the business netwrok deployed on single org fabric setup on same server, now I wish to deploy the fabric setup in different server and run multiple instances of my API in one server and interact with fabric, is this possible? If yes, any pointers on what all configurations do i have to make?
Hi All,
I have created my own middleware API interacting with the business netwrok deployed on single org fabric setup on same server, now I wish to deploy the fabric setup in different server and run multiple instances of my API in one server and interact with fabric, is this possible? If yes, any pointers on what all configurations do i have to make?
@sstone1
Hi @sstone1,
I have created my own middleware API interacting with the business netwrok deployed on single org fabric setup on same server, now I wish to deploy the fabric setup in different server and run multiple instances of my API in one server and interact with fabric, is this possible? If yes, any pointers on what all configurations do i have to make?
[ ](https://chat.hyperledger.org/channel/composer?msg=kkK92vXrPw45kopJZ) @sstone1 @mahoney1
@wininani marbles is not a composer sample, please ask your question in the #fabric channel
[ ](https://chat.hyperledger.org/channel/composer?msg=Dgom8YgwRBMmvcMu2) @sstone1 tq for your reply if u know anything please let me know
if u know any example which we can run on multipeer and peers are in different machine
if u know any example which we can run on multipeer and peers are in different machine can u share the link
Hi, Could anyone help me? I'm trying to follow multy-org guide.
But when i install runtime i've got that error ```composer runtime install -c PeerAdmin@byfn-network-org1-only -n hc-blockchain
✖ Installing runtime for business network hc-blockchain. This may take a minute...
Error: PEM encoded certificate is required.
Command failed
```
example of connection profile ```{
"name": "byfn-network-org2-only",
"type": "hlfv1",
"mspID": "Org2MSP",
"peers": [
{
"requestURL": "grpcs://blockchain-clone.iba:7051",
"eventURL": "grpcs://blockchain-clone.iba:7053"
}
],
"ca": {
"url": "https://ca.bockchain-clone.iba:7054",
"name": "ca.blockchain-clone.iba"
},
"orderers": [
{
"url": "grpcs://blockchain.iba:7050"
}
],
"channel": "cchannel",
"timeout": 300
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=pPd7kHrBLv8dNt6Rq) @arpitsoman so once you configure your Fabric setup, across multiple phyysical/virtual machines/etc, and test it, you can then configure Composer, to talk to that runtime Fabric via its connection profiles. you will need to share the Crypto material between the different Host machines. A useful guide on a simple setup (so you can see what's involved) is here -> https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/ As mentioned, once that is up and running, you can then configure you Composer business network cards to talk to the Fabric (a constituent part of the BN card is the connection profile - see the the multi-org tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org to get an idea of the steps involved in a multi-org tutorial (there is a single-org example there too)
[ ](https://chat.hyperledger.org/channel/composer?msg=e4Hzwd4oPdfTAm6dx) @zasamen missing the TLS certs (eg peers, orderer, CA entry) -> take a look at the examples in the multi-org tutorial for a better understanding. https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=Fhq3XH6hnpw5H8wau) @alexdevassy yes - just create a participant/issue an identity for it, then just 'Use Now' in the ID registry in playground
[ ](https://chat.hyperledger.org/channel/composer?msg=Zw86QiXmCNyDW7KE4)
I precise that I already try this thing : https://github.com/hyperledger/composer/issues/1531
[ ](https://chat.hyperledger.org/channel/composer?msg=Zw86QiXmCNyDW7KE4)
[ ](https://chat.hyperledger.org/channel/composer?msg=qbKYDevPM4xkKsZwi) @CorentinPacaud what OS ? What version of grpc -- looks like something didn't compile right in your environment (or did you transport an image across ?) Seen similar issues at a generic level -> https://stackoverflow.com/questions/47337351/node-v59-linux-x64-grpc-node-node-is-missing
what version of node @CorentinPacaud ?
@mahoney1 I am running in a debian machine
Node V9.6-1
Node V9.6.1
I see - well we don't currently support Debian per se -> https://hyperledger.github.io/composer/installing/installing-prereqs.html and the node version as you can see that's supported is 8.9.x only
So I need to downgrade node ?
Hi Team, I am using composer v 16.04 Getting error while importing the card.
I also use HSM in connection.json
Error: _pkcs11SkiToHandle[486]: no key with SKI 114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457 found
@SuvitPatil yes, probably best to install NVM and use that to control?
@CorentinPacaud yes, probably best to install NVM and use that to control?
[ ](https://chat.hyperledger.org/channel/composer?msg=oRpQhLwegkx8pX3tu) @mahoney1 Sorry not understood. Please elaborate.
[ ](https://chat.hyperledger.org/channel/composer?msg=d4tQR476ggj4KFdRz) @mahoney1 Thank you, but
1. Can i disable them?
2. When i add them to network i got that:
```ubuntu01@lsbt-blockchain:~/composer-projects/fabric-samples/first-network$ composer runtime install -c PeerAdmin@byfn-network-org1-only -n hc-blockchain
⠸ Installing runtime for business network hc-blockchain. This may take a minute...E0305 12:33:40.091098631 19648 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
⠸ Installing runtime for business network hc-blockchain. This may take a minute...E0305 12:33:48.509407118 19648 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
✖ Installing runtime for business network hc-blockchain. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Command failed
```
connection profile example:
```{
"name": "byfn-network-org2-only",
"type": "hlfv1",
"mspID": "Org2MSP",
"peers": [
{
"requestURL": "grpcs://blockchain-clone.iba:7051",
"eventURL": "grpcs://blockchain-clone.iba:7053",
"cert": "crypto-config/peerOrganizations/blockchain-clone.iba/peers/peer.blockchain-clone.iba/tls/ca.crt"
}
],
"ca": {
"url": "https://ca.bockchain-clone.iba:7054",
"name": "ca.blockchain-clone.iba",
"cert": "crypto-config/peerOrganizations/blockchain-clone.iba/peers/peer.blockchain-clone.iba/tls/ca.crt"
},
"orderers": [
{
"url": "grpcs://blockchain.iba:7050",
"cert": "crypto-config/ordererOrganizations/blockchain.iba/orderers/orderer.blockchain.iba/tls/ca.crt"
}
],
"channel": "cchannel",
"timeout": 300
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=2HtAe2dMdkbTbHLuf) @SuvitPatil hi there -> see https://hyperledger.github.io/composer/reference/connectionprofile.html for more info on HSM definition
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=fZ394mzeLGHRTAxiB) @mahoney1 Yes, I am following the same, but not understood the error.
[ ](https://chat.hyperledger.org/channel/composer?msg=hDYNyZxa43fiM3PQy) Can I get some inputs on this?
[ ](https://chat.hyperledger.org/channel/composer?msg=hDYNyZxa43fiM3PQy) Can I get some inputs on this please?
Has joined the channel.
@SuvitPatil What it is saying is that the identity represented by the certificate in the business network card has no private key defined in your HSM referenced by the connection profile in your card. Looking at the SKI value I would guess you have HSM enabled the PeerAdmin card.
Hello everyone, I am just wondering, do I develop a login function above the rest api for participants?
@zasamen that's for you to decide, for example if running a single org tutorial such as https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org its shows an example of disabled. Probably not something you'll see in multi-org :-) or ever really want. But would advise to try to get it up and running with TLS config'ed between the nodes and read the Fabric docs to get that up and running FIRST -> http://hyperledger-fabric.readthedocs.io/en/release/build_network.html and deploy the marbles sample chaincode to see that it works ok (if you've not done so already). . In your composer profie, you should have hostnameOverride https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org (The multi-org fabric comes from the fabric samples).
[ ](https://chat.hyperledger.org/channel/composer?msg=CTAtjTQaPqRfntZrd) @mahoney1 Can you please suggest me something on this. I am checking for a particular productStatus. But it is providing me all available status in response irrespective of product status.
[ ](https://chat.hyperledger.org/channel/composer?msg=AS4QhXx6mwXWqoNRX) @mahoney1 How should i use option "hostnameOverride"?
[ ](https://chat.hyperledger.org/channel/composer?msg=2wi5xcikuK8Ac8aLf) @davidkel yes, correct. But how can i define private key in my HSM refereed by connection profile. I have given the path of .so in connection profile and created the card. What else I need to do?
Hi. Why do I get a `TypeError: [object Object] not callable` when calling the query() function in my transaction code ?
doc: https://hyperledger.github.io/composer/api/runtime-api#buildquery
```
var query = buildQuery('SELECT ch.hcuge.radiopassport.Patient WHERE (clinicalPatientId == _$inputValue)');
return query(query, {
inputValue: clinicalPatientId
})
.then(function (assets) {
if (assets.length === 1) {
return assets[0];
} else if (assets.length > 1) {
throw Error('More than one Patient wiht clinicalPatientId =' + clinicalPatientId);
}
})
.catch(function (error) {
log('Error in getPatientWithClinicalPId:' + error);
});
```
Hi. Why do I get a `TypeError: [object Object] not callable` when calling the 'query()' function in my transaction code ?
doc: https://hyperledger.github.io/composer/api/runtime-api#buildquery
```
var query = buildQuery('SELECT ch.hcuge.radiopassport.Patient WHERE (clinicalPatientId == _$inputValue)');
return query(query, {
inputValue: clinicalPatientId
})
.then(function (assets) {
if (assets.length === 1) {
return assets[0];
} else if (assets.length > 1) {
throw Error('More than one Patient wiht clinicalPatientId =' + clinicalPatientId);
}
})
.catch(function (error) {
log('Error in getPatientWithClinicalPId:' + error);
});
```
Hi. Why do I get a `TypeError: [object Object] not callable` when calling the 'query()' function in my transaction code ?
doc: https://hyperledger.github.io/composer/api/runtime-api#buildquery
```
var query = buildQuery('SELECT ch.hcuge.radiopassport.Patient WHERE (clinicalPatientId == _$inputValue)');
return query(query, {
inputValue: clinicalPatientId
})
.then(function (assets) {
if (assets.length === 1) {
return assets[0];
} else if (assets.length > 1) {
throw Error('More than one Patient wiht clinicalPatientId =' + clinicalPatientId);
}
})
.catch(function (error) {
log('Error in getPatientWithClinicalPId:' + error);
});
```
Thanks you.
@SuvitPatil If you want to HSM enable all the identities used by your fabric network (and I specifically say fabric-network here, not your composer business network) then you would have to find a way to recreate all the identities used to setup the fabric utilising your HSM, that is a fabric setup requirement and so you would need to ask on the fabric channels. If you want to then HSM manage the identities used by the composer business network you would need to use a connection profile with HSM enabled to perform the various identity management requests available in composer.
There are a couple of important points to note.
CLI commands that create cards will take the connection profile of the card currently being used to perform the request. If that card is not HSM enabled, then the newly created card will also have a connection profile that isn't HSM enabled. This means having a mixed environment of non HSM and HSM enabled identities requires more work in order to allow that kind of environment and isn't something that is documented. The HSM support assumes that all identities used both for fabric interaction and business network interaction are all HSM managed.
[ ](https://chat.hyperledger.org/channel/composer?msg=8aKxqgJvZGYtbqP3R) @aparolini check the value of clinicalPatientId that you are passing as inputValue to the query
[ ](https://chat.hyperledger.org/channel/composer?msg=yTdEZb9Y4jnpGS8No) @arpitsoman I hardcoded the value to be sure, same error:
```
return query(query, {
inputValue: 23
})
```
[ ](https://chat.hyperledger.org/channel/composer?msg=kF446c8k9NjTGzALG) @phanikumar1210 1) LIMIT doesn't work, until support is provided by Fabric itself https://github.com/hyperledger/composer/issues/1015 2) is productQualities.productType a concept presumably or meant to try specify a relationship? (as the latter will not work)- I suggest to post the complete model and query def on Stack overflow, hard to know whats failing but remove LIMIT for starters
[ ](https://chat.hyperledger.org/channel/composer?msg=SXygRhJLq6Nm7iqEb) @aparolini could you please share the .cto format of Patient?
Hi guys! I'm trying to enable authorization by passport-jwt, but I can't set up jwtFromRequest function in my variable COMPOSER_PROVIDERS, did someone connect it to himself? tell me how it can be done?
Please)
[ ](https://chat.hyperledger.org/channel/composer?msg=JxutLgjWw6F2LFwdp) @arpitsoman
```
asset Patient identified by id {
o String id
o String clinicalPatientID
o DateTime dateOfBirth
o Gender gender
}
```
@aparolini - think this should be `return query(query, {
clinicalPatientId: inputValue`
@aparolini - think this should be ```return query(query, {
clinicalPatientId: inputValue ```
@aparolini - think this should be ```return query(query, {
clinicalPatientId: inputValue ``` in ```var query = buildQuery('SELECT ch.hcuge.radiopassport.Patient WHERE (clinicalPatientId == _$inputValue)');
return query(query, {
clinicalPatientId: inputValue
}) ```
@aparolini - think this should be `return query(query, {
clinicalPatientId: inputValue ` in ```var query = buildQuery('SELECT ch.hcuge.radiopassport.Patient WHERE (clinicalPatientId == _$inputValue)');
return query(query, {
clinicalPatientId: inputValue
}) ```
[ ](https://chat.hyperledger.org/channel/composer?msg=6bdgGuarhHd4ZPJjh) @aparolini try this inputValue: '23'
@mahoney1 Is TLS necessary for multi-org guide? If not, can you tell how to disable it for connection profiles?
[ ](https://chat.hyperledger.org/channel/composer?msg=J37fcyxJceGjDj8Wa) @mahoney1 This gives me `ReferenceError: identifier 'inputValue' undefined`. Besides it's not like in the doc (https://hyperledger.github.io/composer/api/runtime-api#buildquery)
[ ](https://chat.hyperledger.org/channel/composer?msg=J37fcyxJceGjDj8Wa) @mahoney1 This gives me `ReferenceError: identifier 'inputValue' undefined`. Moreover it's not like in the doc (https://hyperledger.github.io/composer/api/runtime-api#buildquery)
[ ](https://chat.hyperledger.org/channel/composer?msg=eusAPoKXFBzng6xuN) @Turikalen see here -> https://github.com/hyperledger/composer/issues/2038#issuecomment-340540726 and Rocketchat thread here for more info -> https://chat.hyperledger.org/channel/composer?msg=etkJ7wzdbdFnSXW79
@Turikalen @Turikalen see here -> https://github.com/hyperledger/composer/issues/2038#issuecomment-340540726 and Rocketchat thread here for more info -> chat.hyperledger.org/channel/composer?msg=etkJ7wzdbdFnSXW79
[ ](https://chat.hyperledger.org/channel/composer?msg=yQdXy42Kff6PwD8tj) @arpitsoman Tried already, same error: `TypeError: [object Object] not callable`
Hello everyone, I had develop the mongodb, how do I import the admin card to the server?
whenever I run it
I get this
admin has not been registered
I had uploaded the admin card to the server
Error: chaincode error (status: 500, message: Error: The current identity, with the name 'admin' and the identifier
I am getting this
[ ](https://chat.hyperledger.org/channel/composer?msg=s8oZHo5CEYHkzw7xQ) @aparolini please recheck the namespace value and other parameters in the query, i dun see any other error in the code
[ ](https://chat.hyperledger.org/channel/composer?msg=ntEH6odu5MiniGphF) @argman it is enabled by default from Fabric and therefore for our multi-org tutorial. This is the BYFN that came from Fabric so you would have to ask on #fabric on whether they have an means through docker-compose yaml to bring it up without, sorry I can't help further on that.
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'admin' and the identifier '12312412mo1meo1meo12me1o(censored)', has not been registered)",
"stack": "Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'admin' and the identifier 'aodmaosdmaodmaod123o1m2341(censored)', has not been registered)\n at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)\n at
Hello everyone
I am getting this error
can anyone help me?
[ ](https://chat.hyperledger.org/channel/composer?msg=mDX22vj7zTbEW76BH) @mikeleow did you mean import to Wallet in the REST API ? You can issue an identity for admin card with enrol secret only and import that ..into your wallet. It will get enrolled when it is first used and in that scenario would ensure the certificates are then stored and will work in your REST API (I assume you're using mongodb as a persistence store). There is a problem (that should be fixed next release) with 'cards with certificates' re-enrolling and causing the issued you saw.
[ ](https://chat.hyperledger.org/channel/composer?msg=mDX22vj7zTbEW76BH) @mikeleow did you mean import to Wallet in the REST API ? You can issue an identity for admin card with enrol secret only and import that ..into your wallet. It will get enrolled when it is first used and in that scenario would ensure the certificates are then stored and will work in your REST API (I assume you're using mongodb as a persistence store). There is a problem (that should be fixed next release) with 'cards with certificates' re-enrolling and causing the issue you saw.
[ ](https://chat.hyperledger.org/channel/composer?msg=fRXJXRGmSgaT9extX) @arpitsoman Totally lost here.The error seems to say that the `query` object is not a callable function. In your doc: https://hyperledger.github.io/composer/jsdoc/module-composer-runtime.html#buildQuery__anchor , we can see that the `query`object returned by the `buildQuery()` function is used has a function and has a parameter in the same time. A bit odd. Are the docs right ?
```
// Build a query.
var query = buildQuery('SELECT org.acme.sample.SampleAsset WHERE (value == _$inputValue)');
// Execute the query.
return query(query, { inputValue: 'blue' })
.then(function (assets) {
assets.forEach(function (asset) {
// Process each asset.
});
})
.catch(function (error) {
// Add optional error handling here.
});
```
@mahoney1 yes importing the admin card to the Rest Api, and correct, I am currently using mongodb as the persistence store. How do I get the enrol secret? I think you meant this composer network deploy -a mynetwork.bna -p hlfv1 -i PeerAdmin -s f -A admin -S
right?
[ ](https://chat.hyperledger.org/channel/composer?msg=9zKb5ieznEXvP3Xh2) @mahoney1 I disable it in Fabric. But `runtime install` command still ask certificates in connection profile.
[ ](https://chat.hyperledger.org/channel/composer?msg=u36RzB7ypQ3LvRTLn) @mikeleow either using the `-f` on the composer network start - or you can issue identity from CLI / connected to Fabric from playground and export the card then use that card from your wallet import facility in REST
@aparolini this is example is fine, its the built query (maybe var querystr might help) - I'll try your example in a moment (from your asset posted)
@mahoney1 Sorry I do not get you, I had imported the card on the wallet import on the REST but its not working properly for admin card.
I would love to do it on the cli command, but I do not know how or any idea to d oit
Has left the channel.
https://hyperledger.github.io/composer/reference/composer.identity.issue.html issue a card an identity `restadmin` from the command line so you can use in your REST server? eg composer identity issue --card admin@tutorial-network -u restadmin -a "resource:org.acme.sample.SampleParticipant#restadmin" ` should be able to use your current admin to issue a new card - add `-x` if you want that card to issue identities in the REST APIs
@arpitsoman @mahoney1 : I did a very simple test transaction, and I get the exact same error in Composer sandbox:
```
transaction Test {
}
```
```
'use strict';
/**
* Testing a new transaction
* @param {ch.hcuge.radiopassport.Test} tx - the trade to be processed
* @transaction
*/
function testtransaction(tx) {
// Build a query.
var query = buildQuery('SELECT ch.hcuge.radiopassport.Clinic WHERE (name == _$inputValue)');
// Execute the query.
log('Starting:' + query);
return query(query, { inputValue: 'HUG' })
.then(function (assets) {
assets.forEach(function (asset) {
log('asset:' + assets);
});
});
}
```
@arpitsoman @mahoney1 : I did a very simple test transaction, and I get the exact same error in Composer sandbox:
```
transaction Test {
}
participant Clinic identified by id {
o String id
o String name
}
```
```
'use strict';
/**
* Testing a new transaction
* @param {ch.hcuge.radiopassport.Test} tx - the trade to be processed
* @transaction
*/
function testtransaction(tx) {
// Build a query.
var query = buildQuery('SELECT ch.hcuge.radiopassport.Clinic WHERE (name == _$inputValue)');
// Execute the query.
log('Starting:' + query);
return query(query, { inputValue: 'HUG' })
.then(function (assets) {
assets.forEach(function (asset) {
log('asset:' + assets);
});
});
}
```
@arpitsoman @mahoney1 : I did a very simple test transaction, and I get the exact same error in Composer sandbox: `Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: TypeError: [object Object] not callable)`
```
transaction Test {
}
participant Clinic identified by id {
o String id
o String name
}
```
```
'use strict';
/**
* Testing a new transaction
* @param {ch.hcuge.radiopassport.Test} tx - the trade to be processed
* @transaction
*/
function testtransaction(tx) {
// Build a query.
var query = buildQuery('SELECT ch.hcuge.radiopassport.Clinic WHERE (name == _$inputValue)');
// Execute the query.
log('Starting:' + query);
return query(query, { inputValue: 'HUG' })
.then(function (assets) {
assets.forEach(function (asset) {
log('asset:' + assets);
});
});
}
```
Hi All,
anyone of you tested the endorsement policies in local environment ?
Do we have any option for managing access based on roles instead of providing rights to individual user in composer
@aparolini - try ``` var clinicalPatientID = 'test';
var query1 = buildQuery('SELECT ch.hcuge.radiopassport.Patient WHERE (clinicalPatientID == _$inputValue)');
return query(query1, {inputValue:clinicalPatientID})
.then(function (results) {``` - now that I've tested it (it works) - your actual input value is on the RHS (I've set it as `var = ` but you will supply etc). but the other thing was - IN YOUR MODEL - you had `clinicalPatiientID` but in your query string you had `clientPatientId`(not the same) which was another issue.
@aparolini - try ``` var clinicalPatientID = 'test';
var query1 = buildQuery('SELECT ch.hcuge.radiopassport.Patient WHERE (clinicalPatientID == _$inputValue)');
return query(query1, {inputValue:clinicalPatientID})
.then(function (results) {``` - now that I've tested it (it works) - your actual input value is on the RHS (I've set it as `var = ` but you will supply etc). but the other thing was - IN YOUR MODEL - you had `clinicalPatiientID` but in your query string you had `clinicalPatientId`(not the same) which was another issue.
@aparolini - try ``` var clinicalPatientID = 'test';
var query1 = buildQuery('SELECT ch.hcuge.radiopassport.Patient WHERE (clinicalPatientID == _$inputValue)');
return query(query1, {inputValue:clinicalPatientID})
.then(function (results) {``` - now that I've tested it (it works) - your actual input value is on the RHS (I've set it as `var = ` but you will supply etc). but the other thing was - IN YOUR MODEL - you had `clinicalPatientID` but in your query string you had `clinicalPatientId`(not the same) which was another issue.
[ ](https://chat.hyperledger.org/channel/composer?msg=LQoWvGKhyXXtKLLmt) @phanikumar1210 yes, you can create a Participant as a role. A participant can have one -> n identities and hence ACLs will be applied against the Participant resorce
Thanks for quick reply. Can I have some reference link please @mahoney1 so that I get in deep dive into.
@mahoney1 Thank you)
How we can connect multiple channels with composer? i mean i want to create individual channels between 2 types of users in same fabric network?
How is this possible in composer ? do we need to use connection profile?
[ ](https://chat.hyperledger.org/channel/composer?msg=Kg9AoYMNu9quSBprJ) @mahoney1 Yes, it works ! Thanks so much. But I was also right: the documentation is wrong: The query() function is not the same object as the query variable.
[ ](https://chat.hyperledger.org/channel/composer?msg=CAHcS5oTksf8xfF6x) @phanikumar1210 see https://hyperledger.github.io/composer/next/tutorials/acl-trading - should work whether using Composer 0.16.x or 0.17.x
[ ](https://chat.hyperledger.org/channel/composer?msg=CAHcS5oTksf8xfF6x) @phanikumar1210 see https://hyperledger.github.io/composer/next/tutorials/acl-trading - should work whether using Composer 0.16.x or 0.17.x - it has the 'Regulator role' at the end - just one regulator participant used in the scenario - but you get the picture :pa:
Thank you very much @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=RaTaFp9Dwjcdw5Lof) @aparolini correct, they're not the same thing :-) glad it works !
[ ](https://chat.hyperledger.org/channel/composer?msg=NWmpFNmfECkGAGnyv) @satyajitsasmal Multi-org tutorial uses it https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org on a local environment - defines the rules around which organisations (2 in this case) must endorse transactions before they can be committed to the blockchain. By default, a Composer business network is deployed with an endorsement policy that states that only one organisation has to endorse a transaction before it can be committed to the blockchain. For the multi-org example, there's 2, etc.
@mahoney1 thanks for the reply. I tried using the mentioned links , but getting errors
2018-03-05 07:53:24.242 UTC [msp/identity] Sign -> DEBU 006 Sign: plaintext: 0AAA070A6608031A0B08F4EEF3D40510...6D7963631A0A0A0571756572790A0161
2018-03-05 07:53:24.251 UTC [msp/identity] Sign -> DEBU 007 Sign: digest: 65DCA92257A7DED112465FBC5FB568370AF8F74F73483888D8D73EC7EC6FFAC7
Error: Error endorsing query: rpc error: code = Unknown desc = error executing chaincode: timeout expired while starting chaincode mycc:1.0(networkid:dev,peerid:peer0.org1.example.com,tx:6229b2d538177f0a203c8e935fe59ebda891cafab958a58babd15e7c5f878d2d) -
Hello, Is search option disabled now on #composer channel? I would like to look into old posts.
[ ](https://chat.hyperledger.org/channel/composer?msg=bM39ewyFMsXrRPNaJ) @JayPandya you would need to create business cards *for each channel) for the users interacting/transacting on that channel (ledger) -> see https://stackoverflow.com/questions/47882334/channels-in-hyperlerdger-composer?rq=1 and also the discussion / background info / issue raised here in requests for enhancement -> https://github.com/hyperledger/composer/issues/2103 and also this S/O https://stackoverflow.com/questions/48161972/can-some-one-share-fabric-multi-channel-example-using-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=KQeeDEs3Aicn32Yjp) @JayPandya all such activities are recorded.Eg. creating, or updating an asset from Playground or CLI?. Same for new Resource when added to a registry etc. But for testing purposes you can run a test Fabric or use the web connector.
[ ](https://chat.hyperledger.org/channel/composer?msg=G8rFxNHqDfn3Muzv9) @satyajitsasmal sorry, you need to ask on #fabric for custom fabric configs, looks like something went wrong with your BYFN build as it tries to deploy sample chaincode on the peers (and this first peer is failing)
[ ](https://chat.hyperledger.org/channel/composer?msg=pfZnnwbBnsoARihXz) @AkshayJindal not that I'm aware of - works for me, no special privileges (maybe stuff further back is archived not sure).
Hey guys!
I am trying to create a NPM package to act as a middleman between my client application and the composer-rest-api.
Now I have skipped the authentication part (I just copy-paste hardcode the auth token) because I couldn't get the authorization to work with just username/pass
But now I came to a second problem. I'd like to manage the identity cards in the NPM packages aswell, meaning I'd have to upload the .card files to the rest-api through the NPM package.
I have tried many ways but I failed to get it working. Does anyone have a clue how I'll be able to accomplish this?
Kind regards!
Again me.
I downgrade nodeJS to 8.9.4 and try to run the startFabric.sh and CreatePeersAdmin.sh but the second one keep failing :
`
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'`
Has joined the channel.
Hi all - I have created participants using the node CLI and Business Network Connection. I have also assigned them with an identity.
Now; is it possible to use this identity to launch the composer-rest-server as this participant? E.g. could this be turn into a card that I can import and use? I have the userSecret saved.
[ ](https://chat.hyperledger.org/channel/composer?msg=JutFpf6YZMXNNzia6) @mahoney1 Thanks and it's all clear for me.
What I've got is its good that we don't allow users to access direct create/update access on network instead of that using transaction will do the same thing in more safe way.
Hi All. I'm trying to deploying the REST server for a business network following the instruction on composer website. When I try to run the docker container ```"myorg/my-composer-rest-server"``` I receive this error:
Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: Connect Failed
It will be retried for the next request.
Error: Error trying to ping. Error: Error trying to query business network. Error: Connect Failed
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)
at
Hi All. I'm trying to deploying the REST server for a business network following the instruction on composer website. When I try to run the docker container ``` "myorg/my-composer-rest-server" ``` I receive this error:
Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: Connect Failed
It will be retried for the next request.
Error: Error trying to ping. Error: Error trying to query business network. Error: Connect Failed
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)
at
Hi All. I'm trying to deploying the REST server for a business network following the instruction on composer website. When I try to run the docker container "myorg/my-composer-rest-server" I receive this error:
Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: Connect Failed
It will be retried for the next request.
Error: Error trying to ping. Error: Error trying to query business network. Error: Connect Failed
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)
at
Hi All. I'm trying to deploying the REST server for a business network following the instruction on composer website. When I try to run the docker container "myorg/my-composer-rest-server" I receive this error:
```
Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: Connect Failed
It will be retried for the next request.
Error: Error trying to ping. Error: Error trying to query business network. Error: Connect Failed
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)
at
Hi All. I'm trying to deploying the REST server for a business network following the instruction on composer website. When I try to run the docker container "myorg/my-composer-rest-server" I receive this error:
```
Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: Connect Failed
It will be retried for the next request.
Error: Error trying to ping. Error: Error trying to query business network. Error: Connect Failed
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=B9dToyPdMnqa6ghvK) @mahoney1 in this setup where will the BN cards be stored? in the fabric machine/system or the composer machine/
system?
[ ](https://chat.hyperledger.org/channel/composer?msg=MiEokNQoa8zb43bcp) @CorentinPacaud could be any number of reasons, guess an `npm ls -g --depth=0` might highlight something? I note you're using Debian too which we don't have support (though I've seen one example where someone had it running there). See comments here https://github.com/hyperledger/composer/issues/1531#issuecomment-315788127 and check if you've not overlooked anything.
[ ](https://chat.hyperledger.org/channel/composer?msg=MiEokNQoa8zb43bcp) @CorentinPacaud could be any number of reasons, guess an `npm ls -g --depth=0` might highlight something? I note you're using Debian too which we don't have support (though I've seen one example where someone had it up and running there). See comments here https://github.com/hyperledger/composer/issues/1531#issuecomment-315788127 and check if you've not overlooked anything.
@mahoney1
```
npm ls -g --depth=0
/home/admlcl/.nvm/versions/node/v8.9.4/lib
└── npm@5.6.0
npm ERR! invalid: minizlib@1.0.3 /home/admlcl/.nvm/versions/node/v8.9.4/lib/node_modules/npm/node_modules/tar/node_modules/minizlib
```
@mahoney1 I am sorry, but as of current situation, I can't access the RESTful api because my admin has not been issued/registed on the blcokchain
Hi,
do you know what usually is the root of this problem when starting the angular skeleton:
Error: 404 - Could not find API route. Please check your available APIs.
@arpitsoman in a card store that is accessible by your client (middleware). That could be a persistent card store that all your instances can access such as shown here for the REST server (REST clients using the APIs) -> https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server
Ok so my question is, how do I import the admin card to my rest-server with CLI or anything when I run a persistent data store?
@CorentinPacaud that'll be why your createPeerAdmincard failed - there's no composer modules installed from your output. I suspect you might need to check out your grpc install/build etc `npm ls -g grpc` and see what's going on - I'm sorry I can't help with that.
@mikeleow - can you run `composer card list` ?
@mahoney1 Yep, that's not sound good :
```
npm ls -g grpc
/home/admlcl/.nvm/versions/node/v8.9.4/lib
└── (empty)
```
Screen Shot 2018-03-05 at 10.13.13 PM.png
Screen Shot 2018-03-05 at 10.14.31 PM.png
@mikeleow can you successfully do `composer network ping -c admin@property-network`
from the cli
yes
Screen Shot 2018-03-05 at 10.15.26 PM.png
right. So as mentioned 1) create yourself a participant in your BN called 'restadmin' 2) from the CLI do `composer identity issue -c admin@property-network -u restadmin -a "resource:org.acme.sample.SampleParticipant#restadmin" -x -f rest.card ` and please do change the fully qualified -a in your command line for restadmin
right. So as mentioned 1) create yourself a participant in your BN called 'restadmin' 2) from the CLI do `composer identity issue -c admin@property-network -u restadmin -a "resource:org.acme.sample.SampleParticipant#restadmin" -x -f rest.card ` and please do change the fully qualified -a in your command line for restadmin
right. So as mentioned 1) create yourself a participant in your BN called 'restadmin' 2) from the CLI do `composer identity issue -c admin@property-network -u restadmin -a "resource:org.acme.sample.SampleParticipant#restadmin" -x -f rest.card ` and please do change the fully qualified -a in your command line for restadmin
Hi. I need help pls. I updated to last version composer by tag "next". I catched error when i trying query from buildQuery -> Error: Couch DB Error:invalid_operator, Status Code:400, Reason:Invalid operator: $class
Log https://pastebin.com/WMn2ZHPb
[ ](https://chat.hyperledger.org/channel/composer?msg=oP8pjFfKjC5R9PWXv) @MartinKrmer are you trying to use it from a different IP or is it assigned to non-locahost address ??
[ ](https://chat.hyperledger.org/channel/composer?msg=EhBfRDKryLuLv9Gjf) @SergeySadon you say you've updated to v0.17.6 ?? Can you provide a docker ps please?
[ ](https://chat.hyperledger.org/channel/composer?msg=KBpQ8BPrMEKi4exgA) @mahoney1 dev-peer0.org1.example.com-chainpad-network-0.17.6-a493d3c7d0e6c022da0e43015c89ab4a9909a14801f4089ef5bb992f2e9d063d latest eecc602190e3 40 minutes ago 1.46GB
hyperledger/fabric-ca x86_64-1.1.0-rc1 8a6c8c2e2ebf 3 days ago 283MB
hyperledger/fabric-orderer x86_64-1.1.0-rc1 10afc128d402 3 days ago 180MB
hyperledger/fabric-peer x86_64-1.1.0-rc1 6b44b1d021cb 3 days ago 187MB
hyperledger/fabric-ccenv x86_64-1.1.0-rc1 65c951b9681f 3 days ago 1.39GB
hyperledger/fabric-baseimage x86_64-0.4.6 dbe6787b5747 2 weeks ago 1.37GB
hyperledger/fabric-couchdb
[ ](https://chat.hyperledger.org/channel/composer?msg=KBpQ8BPrMEKi4exgA) @mahoney1 dev-peer0.org1.example.com-chainpad-network-0.17.6-a493d3c7d0e6c022da0e43015c89ab4a9909a14801f4089ef5bb992f2e9d063d latest eecc602190e3 40 minutes ago 1.46GB
hyperledger/fabric-ca x86_64-1.1.0-rc1 8a6c8c2e2ebf 3 days ago 283MB
hyperledger/fabric-orderer x86_64-1.1.0-rc1 10afc128d402 3 days ago 180MB
hyperledger/fabric-peer x86_64-1.1.0-rc1 6b44b1d021cb 3 days ago 187MB
hyperledger/fabric-ccenv x86_64-1.1.0-rc1 65c951b9681f 3 days ago 1.39GB
hyperledger/fabric-baseimage x86_64-0.4.6 dbe6787b5747 2 weeks ago 1.37GB
hyperledger/fabric-couchdb x86_64-0.4.6 7e73c828fc5b 2 weeks ago 1.56GB
docker ps
a6f164a1ec74 dev-peer0.org1.example.com-chainpad-network-0.17.6-a493d3c7d0e6c022da0e43015c89ab4a9909a14801f4089ef5bb992f2e9d063d "/bin/sh -c 'cd /usr…" Less than a second ago Up 2 seconds dev-peer0.org1.example.com-chainpad-network-0.17.6
df8bea4f4e8e hyperledger/fabric-peer:x86_64-1.1.0-rc1 "peer node start" 44 seconds ago Up 56 seconds 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
17f11b345bd3 hyperledger/fabric-couchdb:x86_64-0.4.6 "tini -- /docker-ent…" 45 seconds ago Up 57 seconds 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
3dbaec608c90 hyperledger/fabric-ca:x86_64-1.1.0-rc1 "sh -c 'fabric-ca-se…" 45 seconds ago Up 56 seconds 0.0.0.0:7054->7054/tcp ca.org1.example.com
c2a1f0254021 hyperledger/fabric-orderer:x86_64-1.1.0-rc1 "orderer" 45 seconds ago Up 57 seconds 0.0.0.0:7050->7050/tcp orderer.example.com
@SergeySadon would encourage to read release notes before installing -> https://github.com/hyperledger/composer/releases/tag/v0.17.6 `v0.17.3 and above are compatible with fabric **alpha** driver only ; v0.17.0 -> v0.17.2 are compatible with fabric preview driver / earliier candidates only` -> you don't have 1.1 alpha images.
Hello everyone.
Quick question, how to grant access to certain participants to issue new ID's; after you created them without doing the check box in the test of playground?
Ok, I reinstall composer-cli and composer-rest-server and it seems to be working
use the script it will install all the dependence and work fine with new fabric
yep, I know but I can't use the script because I am on Debian, not on Linux
thats a pain :)
yeah reinstalling will work.
And I had a bug after upgrade Node and npm. Yep, pain, but not my choice, choice of IT admin, in my bank company
node and npm make me cry when come to dependencies. yeah after upgrade you need to rebuilt.
node and npm make me cry when come to dependencies. yeah after upgrade you need to rebuilt if something fails.
And because I am in bank context, there is some f*cking proxy, and other stuff relative to access right, so much pain
[ ](https://chat.hyperledger.org/channel/composer?msg=AZkbQmkZ26xs69TP2) @MuhammadSalah if you mean 'upgrade' an identity to be able to subsequently 'issue', that isn't something passed on to us by Fabric (where the identity/certificate was issued from) .You could simply revoke the identity, and issue a new one (gets a new enrol certificate from the CA and you can bind the cert to the existing participant) that has the authority you mention and you can also use the CLI or JS APIs to do this.
ok great
rebind is the answer
@mahoney1 I am sorry, but I think you misunderstood me, I can not access the REST api because a business network card don't exist in the network (basically the admin). So I am totally unable to add a participants.
Well, another question arises.
Now, that I have finalized my solution. I want to create a mechanism for each org to enroll its users.
i.e. each NetworkAdmin is only able to issue identities for particular organization.
Or create somewhat a registrar account to handle organizational identities.
Where would be the way to look?
[ ](https://chat.hyperledger.org/channel/composer?msg=W7TxDdZ49saXt32ug) @mikeleow so are you unable to connect to your network as `admin@property-network` (which you posted) in playground (just connect to your running Fabric) and add participants from 'Test' ...'Create Participant' ? One of which is the restadmin participant.
[ ](https://chat.hyperledger.org/channel/composer?msg=khSuneCXM8Kronkyq) @MuhammadSalah that's the role of a CA Authority, in an organisation - suggest to read. http://hyperledger-fabric-ca.readthedocs.io/en/latest/users-guide.html#getting-started and also the section Registering a new identity further down the page
I will read it carefully
thank you
@mahoney1 you mean when I am running it, I can use playground to connect to my BNA?
hold on let me try
[ ](https://chat.hyperledger.org/channel/composer?msg=ChamHEr6fgifmbsX5) @mikeleow yes, you can connect to playground with your admin card for that BN.
@mahoney1 so the proposed solution is connect with composer playground and then issue a restadmin card? But that restadmin card wouldn't have all the access due to the acl
Hello..I am scaling my business network with 2-3 peers. Therefore I will installing fabric (v1.0.6) from `hyperledger fabric docs`. Currently I am using sample fabric v1.0.4. Do i need to remove docker images before installing fabric v1.0.6? or can I maintaing both the docker images v1.0.4 and v1.0.6?
Hello..I am scaling my business network with 2-3 peers. Therefore I will be installing docker fabric images (v1.0.6) from `hyperledger fabric docs`. Currently I am using sample fabric v1.0.4. Do i need to remove docker images before installing fabric v1.0.6? or can I maintaing both the docker images v1.0.4 and v1.0.6?
Hello..I am scaling my business network with 2-3 peers. Therefore I will be installing docker fabric images (v1.0.6) from `hyperledger fabric docs`. Currently I am using sample fabric v1.0.4. Do i need to remove docker images before installing fabric v1.0.6? or Can I maintain both the docker images v1.0.4 and v1.0.6?
[ ](https://chat.hyperledger.org/channel/composer?msg=uBjgY4YPo4m9N4Tsg) @mahoney1
Sorry to be so noob
haha
How would one interact with the composer-rest-api (multi-user enbaled) without having to get redirected to github.
Also, I failed to upload the cards to the rest-api in the client of my app, any clues about this?
How would one interact with the composer-rest-api (multi-user enbaled) without having to get redirected to github.I'd like to have a service layer in my application which handles the authorization to the rest-api
Also, I failed to upload the cards to the rest-api in the client of my app, any clues about this?
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'admin' and the identifier 'f6ddf5aa492a4f04913d1c3d1784fd8867b9835fdb89e36889825e40f01b9b44', has not been registered)",
"stack": "Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'admin' and the identifier 'f6ddf5aa492a4f04913d1c3d1784fd8867b9835fdb89e36889825e40f01b9b44', has not been registered)\n at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)\n at
Hello everyone, I am still getting this error
For admin card. I had exported the card beforehand.
[ ](https://chat.hyperledger.org/channel/composer?msg=MZ5Jkfwwu2FB9fNzW) @mikeleow connect to the business network, so you can create a participant easily under 'Test' , You can issue the restadmin identity (under ID registry top right - ie if you wish) - then - add to wallet then connect with it - this is now in your wallet. Confirm via `composer card list --name restadmin@property-network`. Next, suggest to read this Stack Overflow post to know how to connect to your dockerized REST server and then use identities in your REST API - https://stackoverflow.com/questions/49081564/error-face-following-tutorial-on-rest-persistent-data-store-on-hyperledger-compo/49114404#49114404 there is a `sed` to enable your persistent REST server container 'know' how to connect to the other Fabric containers via its connection profile.Sorry for delay, been on a call.
[ ](https://chat.hyperledger.org/channel/composer?msg=MZ5Jkfwwu2FB9fNzW) @mikeleow connect to the business network, so you can create a participant easily under 'Test' , You can issue the restadmin identity (under ID registry top right - ie if you wish) - then - add to wallet then connect with it - this is now in your wallet. Confirm via `composer card list --name restadmin@property-network`. Only suggest this to start your REST server (with persistent store) Next, suggest to read this Stack Overflow post to know how to connect to your dockerized REST server and then use identities in your REST API - https://stackoverflow.com/questions/49081564/error-face-following-tutorial-on-rest-persistent-data-store-on-hyperledger-compo/49114404#49114404 there is a `sed` to enable your persistent REST server container 'know' how to connect to the other Fabric containers via its connection profile.Sorry for delay, been on a call.
@mahoney1 thanks for the reply on stack overflow! Will look into it now!
[ ](https://chat.hyperledger.org/channel/composer?msg=SqKNvFzpQvtXJdBQt) @mikeleow you're welcome, the 'sed' is a quick workaround as the connection profile in the container is set to `localhost` - I just made a minor edit on that SO, just hit refresh to see 'the latest'
[ ](https://chat.hyperledger.org/channel/composer?msg=SqKNvFzpQvtXJdBQt) @mikeleow you're welcome, the 'sed' is a quick workaround, as the connection profile in the container is set to `localhost`(unable to contact the outside world) - I just made a minor edit on that SO, just hit refresh to see 'the latest'
@mikeleow
I had the same problem. I started the network as described in the docs right here: Deploying the business network --> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
Don't forget to delete the old admin using `composer card delete --name admin@
ahh, for the connection profile I had fixed it in the .composer by changing everything to my private ip
right, would use whatever resolves your hostname to your REST server (think docker can use the IP of the virtual host too)
[ ](https://chat.hyperledger.org/channel/composer?msg=DnHLaEahFsc32DkAs) @Legiit I am sorry but if you deleted the admin@xxx-network card before deploying, how would you run it on docker mongo?
docker rest*
[ ](https://chat.hyperledger.org/channel/composer?msg=NHpuoX5rBwByAmwCb) @mahoney1 I saw your reply that 0.8x has fixed the issue that I am currently facing, would it be ideal to update the composer now?
hello guys @mahoney1 , could you please help me I am trying to configuring the REST server with a persistent data store, I follow all the steps, from the documentation, but when I get to check that the REST server has started successfully by using the docker -f rest, I get this error:
~/composerapp$ docker logs -f rest
0|composer | ? Enter your Connection Profile Name:
0|composer |
0|composer |
any idea of what I am doing wrong?😥
Has joined the channel.
It's only applicable whenever `composer card list --name restadmin@property-network` does show an admin card :P @mikeleow
I have not yet deployed it with a docker so I cannot answer to that question :P
Has joined the channel.
good day everyone. I like to ask few questions regarding the connection profiles. is connection profile per org or per channel?
@Hefziben It's asking for a connection profile name which implies your docker image is based off a very old version of composer for which our documentation won't apply anymore
or even per user?
looking at this doc, https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org, quite confusing to me.
[ ](https://chat.hyperledger.org/channel/composer?msg=tkAKnr9qMLfQosk3w) @davidkel Thanks, I will update the composer then.
@mikeleow 0.18.x - will fix. Not available yet.
can anyone help? how to build connection profile with multiple orgs, multiple channels?
@tongli For the 0.16.x release which the `latest` docs refer to, a connection profile is specific to an organisation and references the channel as well. However an organisation needs different connection profiles to perform different roles. An Organisation needs a profile to install the composer runtime onto it's peers and then will need a different connection profile to transact on the network. There is also a need for a 3rd profile for use by whoever is the channel administrator in order to start the business network on the channel.
@tongli For the 0.16.x release which the `latest` docs refer to, a connection profile is specific to an organisation and references the specific channel as well. However an organisation needs different connection profiles to perform different roles. An Organisation needs a profile to install the composer runtime onto it's peers and then will need a different connection profile to transact on the network. There is also a need for a 3rd profile for use by whoever is the channel administrator in order to start the business network on the channel.
so if 3 orgs participate in one channel, then the peers section for all the 3 orgs will very much look the same, correct?
since that section basically hold all the peers from these 3 orgs.
I think that is the confusion for me. Peers in other orgs for some reason get included in the peers section, and i do not understand why they should be there.
assume this fabric network. 3 orgs, one peer each org, all in one channel.
when org1 connection profile gets created, seems to me (from the multipe orgs tutoial) all three peers will be in every connection profile.
@tongli yes, will have certain info from the 'other Org' peers like requestURL (own Org peer will have eventURL too). Hyperledger Fabric's peers 'chat' with each other (depends on the peers role etc etc) on the blockchain network and connecton profiles need the information for the other peers e-> see http://hyperledger-fabric.readthedocs.io/en/release/txflow.html - the client from where the transaction comes also needs to know. If the client application intends to submit the transaction (for which it gets proposal responses back) to Ordering Service to update the ledger, the application determines if the specified endorsement policy has been fulfilled before submitting (i.e. did peerA and peerB both endorse). The Hyperledger Fabric architecture is such that even if an application chooses not to inspect responses or otherwise forwards an unendorsed transaction, the endorsement policy will still be enforced by peers and upheld at the commit validation phase. The connection profiles (and need for peer info) reflect how Fabric works.
@mahoney1 thanks. so channel has to be created but peers should have not been joined? Composer will use the connection profile join all the specified peers into a channel?
my understanding is that composer does not really create channel
and assume that channel is created but no peers specified in the connection profile should have been joined to the channel, then composer will join the peers to the channel specified in the profile, or I have missed something big.
[ ](https://chat.hyperledger.org/channel/composer?msg=xvPd4mreB9BDsCfPY) @tongli
Composer does not join the peers in the connection profile to the channel. They have to have been already joined. In the simple Fabric network that Composer provides for development purposes, that is done for you in the `./startFabric.sh ` script.
@tongli, might suggest to watch this https://www.youtube.com/watch?v=C4K7S1JYsLs from about 24:10 onwards (or from the start if you have time :-)
@mahoney1 thanks a lot for the pointer, will watch.
Has joined the channel.
Hello, We have the following fields in the composer playground.
{
"$class": "com.miraclesoft.blockchain.createProduct",
"product": {
"$class": "com.miraclesoft.blockchain.Product",
"productQualities": {
"$class": "com.miraclesoft.blockchain.ProductQualities",
"productType": "",
"productModel": ""
},
"productId": "6546",
"productOwner": "",
"warrantyPeriod": 0,
"productDescription": "",
"productManufacturer": "",
"productStatus": "MANUFACTURED",
"productPrice": 0
}
}
But we are getting extra fields in the Hyperledger Composer REST API server as follows.
{
"$class": "com.miraclesoft.blockchain.createProduct",
"product": {
"$class": "com.miraclesoft.blockchain.Product",
"productQualities": {
"$class": "com.miraclesoft.blockchain.ProductQualities",
"productType": "string",
"productModel": "string",
"productConfiguration": "string",
"id": "string"
},
"productId": "string",
"productOwner": "string",
"warrantyPeriod": 0,
"productDescription": "string",
"productManufacturer": "string",
"productStatus": "MANUFACTURED",
"manufactureDate": "2018-03-05T20:01:25.613Z",
"productPrice": 0
},
"transactionId": "string",
"timestamp": "2018-03-05T20:01:25.613Z"
}
Please help me out on this.
Hello, We have the following fields in the composer playground.
{
"$class": "com.miraclesoft.blockchain.createProduct",
"product": {
"$class": "com.miraclesoft.blockchain.Product",
"productQualities": {
"$class": "com.miraclesoft.blockchain.ProductQualities",
"productType": "",
"productModel": ""
},
"productId": "6546",
"productOwner": "",
"warrantyPeriod": 0,
"productDescription": "",
"productManufacturer": "",
"productStatus": "MANUFACTURED",
"productPrice": 0
}
}
But we are getting extra fields in the Hyperledger Composer REST API server as follows.
{
"$class": "com.miraclesoft.blockchain.createProduct",
"product": {
"$class": "com.miraclesoft.blockchain.Product",
"productQualities": {
"$class": "com.miraclesoft.blockchain.ProductQualities",
"productType": "string",
"productModel": "string",
"productConfiguration": "string",
` "id": "string" `
},
"productId": "string",
"productOwner": "string",
"warrantyPeriod": 0,
"productDescription": "string",
"productManufacturer": "string",
"productStatus": "MANUFACTURED",
"manufactureDate": "2018-03-05T20:01:25.613Z",
"productPrice": 0
},
` "transactionId": "string",`
` "timestamp": "2018-03-05T20:01:25.613Z" `
}
Please help me out on this.
[ ](https://chat.hyperledger.org/channel/composer?msg=ewQEEY4iNYNnEhCm8) @mahoney1
I cleared that issue @mahoney1 Thank you so much. When I am trying to run the command `composer-rest-server` facing the following issue.
We've released Hyperledger Composer v0.18.0, with support for Hyperledger Fabric v1.1-rc1, cloud wallets (new function that lets you store your business network cards anywhere), and the latest CongaComic! 🎉 https://github.com/hyperledger/composer/releases/tag/v0.18.0
Hello, I have a business network up and running on a single peer network. I've inserted a thousand or so assets and the performance has dropped dramatically, to the point I can no longer get asset records via my REST server due to timeouts. Even with filters (such as limit:1), it continues to timeout. Any ideas on how I can improve the performance?
Hello, I have a business network up and running on a single peer network. I've inserted a thousand or so assets and the performance has dropped dramatically, to the point I can no longer get asset records via my REST server due to timeouts. Even with filters (such as limit:1), it continues to timeout. Any ideas on how I can improve the performance? When accessing the data in couchdb, the response seems very quick still, it seems to be a slowdown in the rest server component.
Hello, I have a business network up and running on a single peer network. I've inserted a thousand or so assets and the performance has dropped dramatically, to the point I can no longer get asset records via my REST server due to timeouts. Even with filters (such as limit:1), it continues to timeout. Any ideas on how I can improve the performance? When accessing the data in couchdb, the response seems very quick still, it seems to be a slowdown in the rest server component.
Hello, I have a business network up and running on a single peer network. I've inserted a thousand or so assets and the performance has dropped dramatically, to the point I can no longer get asset records via my REST server due to timeouts, unless I know the ID. Even with filters (such as limit:1), it continues to timeout. Any ideas on how I can improve the performance? When accessing the data in couchdb, the response seems very quick still, it seems to be a slowdown in the rest server component.
[ ](https://chat.hyperledger.org/channel/composer?msg=ucbprbMfZT8u9ay5L) @mahoney1, @sstone1 can you suggest something on this
[ ](https://chat.hyperledger.org/channel/composer?msg=ucbprbMfZT8u9ay5L) @mahoney1, @sstone1 can you please suggest something on this.
[ ](https://chat.hyperledger.org/channel/composer?msg=ucbprbMfZT8u9ay5L) https://stackoverflow.com/questions/42894071/transactionid-when-submitting-a-transaction
@phanikumar1210 that S/O is old. In your JSON - just remove transactionId and timestamp - these are generated for you. ```{
"$class": "com.miraclesoft.blockchain.createProduct",
"product": {
"$class": "com.miraclesoft.blockchain.Product",
"productQualities": {
"$class": "com.miraclesoft.blockchain.ProductQualities",
"productType": "string",
"productModel": "string",
"productConfiguration": "string",
"id": "string"
},
"productId": "string",
"productOwner": "string",
"warrantyPeriod": 0,
"productDescription": "string",
"productManufacturer": "string",
"productStatus": "MANUFACTURED",
"manufactureDate": "2018-03-05T20:01:25.613Z",
"productPrice": 0
}
}```
@phanikumar1210 that S/O is old. In your JSON - just remove transactionId and timestamp - these are generated for you. ```{
"$class": "com.miraclesoft.blockchain.createProduct",
"product": {
"$class": "com.miraclesoft.blockchain.Product",
"productQualities": {
"$class": "com.miraclesoft.blockchain.ProductQualities",
"productType": "string",
"productModel": "string",
"productConfiguration": "string",
"id": "string"
},
"productId": "string",
"productOwner": "string",
"warrantyPeriod": 0,
"productDescription": "string",
"productManufacturer": "string",
"productStatus": "MANUFACTURED",
"manufactureDate": "2018-03-05T20:01:25.613Z",
"productPrice": 0
}
}``` originally captured here -> https://github.com/hyperledger/composer/issues/1786
i have been created new business network with `yo hyperledger-composer:businessnetwork` , and i cant find folder contain file of my business network. Someone can help me? please.
hi ALl,
where can i find good example with fabric-compose
which has Access control implementation as well
also is composer production ready?
Has joined the channel.
Can Any one tell me how to resolve this version issue.
Using composer-cli at v0.16.5
Error: Unable to write card file: /tmp/PeerAdmin@hlfv1.card
Command failed
Screenshot from 2018-03-06 11-33-07.png
composer is returning me inconsistent timestamp .... How can i rectify this??
```gyp verb build dir attempting to create "build" dir: /usr/local/lib/node_modules/composer-rest-server/node_modules/dtrace-provider/build
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/composer-rest-server/node_modules/dtrace-provider/build'
gyp ERR! System Linux 4.4.0-1049-aws
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/composer-rest-server/node_modules/dtrace-provider
gyp ERR! node -v v8.9.3
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
```
what shall be done?
i am following https://hyperledger.github.io/composer/next/installing/development-tools.html
@mahoney1 thanks for the input on stack overflow, before I mess up my configurations, can I changed to Hyperledger composer 0.8 now, is it working fine?
Clipboard - March 6, 2018 2:50 PM
Clipboard - March 6, 2018 2:51 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=BsyAPowthAJ6cF2Wm) @Jaline There is a typo of "C" in your code.
Clipboard - March 6, 2018 2:56 PM
@mikeleow
Has joined the channel.
Hi,
How can I do a local/basic authentication with username and password on composer-rest-server?
I am interested in the same question as Mohammed :)
I am trying to have a service layer in my application but I couldn't figure out how to get authenticated with the rest server (basic auth + uploading of the cards to the server through the client)
@Mohammed_Azhar install passport-local then set COMPOSER_PROVIDERS as follows:
`COMPOSER_PROVIDERS='{ "local": { "provider": "local", "module": "passport-local", "usernameField": "username", "passwordField": "password", "authPath": "/auth/local", "successRedirect": "/", "failureRedirect": "/", "setAccessToken": true, "callbackHTTPMethod": "post" } }'`
To authenticate, POST the credentials to /auth/local/callback.
The loopback-component-passport package seems to be designed for OAUTH/LDAP style authentication schemes, and configures the `/auth/local` endpoint as a GET. Also, I used Mongo as my datasource and loaded the credentials ahead of time by retrieving the loopback app object from `composer-rest-server` and inserting the models directlly.
@igetgames Thank you for the reply.
I have another query. Will this procedure work as a registration of a new user or only as a login for existing user. If it is a registration is there any way of restricting it for only a login and not registration.
composer-rest-server is currently not easily extendable and passport-local doesn't support registration of new users. There may be another package that can do this that I'm not aware of. The method I described above only supports existing logins which is why I preloaded my login credentials (and cards!) into the datasource by writing a simple wrapper that retrieves the loopback app instance directly from composer-rest-server. I could then authenticate as an "existing user" and the user's card was immediately available for multiuser authentication.
I don't have time to post an example, but basically you grab the composer-rest-server entrypoint via:
`const server = require('composer-rest-server/server/server');`
And you have to call it with the composer options:
`const result = await server({ card, namespaces, port, authentication, multiuser, websockets, tls, tlscert, tlkey }); // only pass what you need`
The `result` object contains `app` and `server` which is the loopback app instance and composer-rest-server http(s) server instance. Once you have app you can access the `dataSources` and `models` members as if you were running composer-rest-server standalone. What's interesting is that composer-rest-server will be fully initialized (including business network model discovery) so you could potentially submit transactions and queries to your business network by accessing the `composer` variable ala `const composer = app.get('composer');`.
Note that all that is undocumented and I would guess unsupported, but for development it gets the job done.
Hey guys! I have a question about authorization by passport-jwt. Maybe it's stupid, but still) How can I generate correct jwt for this passport?
[ ](https://chat.hyperledger.org/channel/composer?msg=SxbJhrdQHay3cnKSb) this is exactly what I needed for the authentication part, now I need to find an easy way to pre-populate or manage the cards
Has joined the channel.
Hello,I can't restart peer node with fabric-tools.I
Hi team,
I am receiving the following error on deploying BNA File on the Fabric network (The fabric network has peers on different Physical Machines)
2018-03-06 08:58:33.494 UTC [eventhub_producer] Chat -> ERRO 22c1 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
2018-03-06 08:58:33.494 UTC [eventhub_producer] deRegisterHandler -> DEBU 22c2 deregistering event type: BLOCK
2018-03-06 08:58:33.495 UTC [eventhub_producer] Chat -> ERRO 22c3 Error handling message: error sending response to signature:"0D\002 w\007:\034\243\215\265\0311\023@\364\216\373\304n\313\301x\020q\3531\267\371Y\010i\321\350=\026\002 S\275Qp?\3671a4EC\273x\211\035\234\021\3110\3310\252@\035\201fx\365\016\027\216\211" eventBytes:"*\004\n\002\010\0012\242\006\n\007Org1MSP\022\226\006-----BEGIN CERTIFICATE-----\nMIICGjCCAcCgAwIBAgIRAKpW1VPCns7tRdXVwRB4ArowCgYIKoZIzj0EAwIwczEL\nMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG\ncmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh\nLm9yZzEuZXhhbXBsZS5jb20wHhcNMTgwMTAyMTE0NzUwWhcNMjcxMjMxMTE0NzUw\nWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN\nU2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNvbTBZ\nMBMGByqGSM49AgEGCCqGSM49AwEHA0IABI9ont3IbVGKccHVmf9ShZdlPW1AqnOC\nYpCNMXuA4DPWmBQFE5q7Oy59xBUzH+toM4kSgVWZ5x1HoRNgWjcjozKjTTBLMA4G\nA1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIGX7Hg5Cmgdo\nQiLlzBa4nKXPfZXFFND3myeFCoV2u/nqMAoGCCqGSM49BAMCA0gAMEUCIQD3+gry\nR0sTuiIXQ6qtAaqEpXZ8Ec/wZVQC7+H1MLa7FAIgFn0bvaUXi8JhNEkZhJnRcN6C\nBCDc0EUlDwmQIqL3EM4=\n-----END CERTIFICATE-----\n" : rpc error: code = Canceled desc = context canceled
Log on Another Peer:
2018-03-06 08:58:37.925 UTC [eventhub_producer] Chat -> ERRO 27b2 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
Hello,I can't restart peer node with fabric-tools.I run the command,like "./stopFabric.sh",and then run the command "./startFabric.sh" or "docker restart containerId".But It doesn't work.Docker logs say "2018-03-06 09:27:44.595 UTC [shim] func1 -> ERRO 003 Received error from server: rpc error: code = Unknown desc = Error handling message, ending stream: transition canceled with error: peer will not accepting external chaincode connection name:"vehicle-manufacture-network:0.16.5" (except in dev mode), ending chaincode stream
".So anyone can tell me what i can do?
[ ](https://chat.hyperledger.org/channel/composer?msg=FCf2RvTEbtYgEzkwF) @mikeleow hi there - the new release is available (v0.18.0 fyi not 0.8 ) ....be interested to hear back (that your admin or your restadmin card with certificates works fine in your dockerized REST server in this releasew)
[ ](https://chat.hyperledger.org/channel/composer?msg=X2Z5dS29w4f3nEiwE) @bamboo should be in your current working dir. If you called it 'tutorial-network' then it will be in there. `cd` to the dir and run `composer archive create -t dir -n .` to create your .bna file.
[ ](https://chat.hyperledger.org/channel/composer?msg=TKKjsa2cGDNdZyMwy) Anyone can help me?
[ ](https://chat.hyperledger.org/channel/composer?msg=rc9hvYqvrETsYLLWW) @Legiit fyi hi there so we haven't tested passport-local and it is a lot more involved than the 'conventional' strategies like 'github' or OAUTH2 for example (eg. authentication requests are passed off to an external AUTH provider at the REST client - 'local' is more involved because it means - being local - it has to live on the REST server. OAUTH2 (eg using Google) would be a good one to try out - we have a tutorial here -> https://hyperledger.github.io/composer/next/tutorials/google_oauth2_rest that works with Composer 0.17.x / 0.18.0 (released yesterday)
[ ](https://chat.hyperledger.org/channel/composer?msg=AS4QhXx6mwXWqoNRX) [ ](https://chat.hyperledger.org/channel/composer?msg=LkrGDRmMYAzswYtWn) @mahoney1 , So, how can i avoid TLS for now? (i've disabled them in fabric containers, did not included into connections).
[ ](https://chat.hyperledger.org/channel/composer?msg=ENDof3pxxCFnA5hMz) @zasamen have you got http:// and gprc:// in your connection.json files instead of https:// and grcps:// ? There is also a thread on Rocket Chat where using a hostname (host entry) has helped: chat.hyperledger.org/channel/composer?msg=wPAmysbEPoaEswpWi
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=bRQtCEX6migjKer66) I'd like my users to not be aware of any blockchain and business-cards. Also, they should not have to be redirected to any 3rd party authentications like google, github etc.. for user convenience :P
How to get the count of total number of transactions or within particular time period.
[ ](https://chat.hyperledger.org/channel/composer?msg=wmtBaN28t6R3M4RWc) @prmdmshra unfortunately this is really a Fabric issue in your custom Fabric n/w across physical machines - I had a quick look at history there but didn't see anything similar. The problem you may be seeing is possibly because the identity you are using to try to install the runtime onto a peer (I assume you're trying composer runtime install / network start not composer network deploy?) is not authorised to do so on the peer in question. Unfortunately the logs info from Fabric don't often indicate this . So for example in the Composer development server setup, it creates an identity for you called PeerAdmin which you would have used to deploy business networks. in a deve environment ; If you are using your own fabric then you need to look into how to import crypto material when building a peer administrator card and for which it has the **PeerAdmin role** to do so. - eg using composer card create / composer identity import as shown in step 7 here -> https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org - we often say to deploy once you've deployed the Fabric marbles https://github.com/IBM-Blockchain/marbles/tree/v4.0/chaincode/src/marbles to your altered blockchain Fabric network, you are ready to build your Composer connection profiles
Hey, guys! I have a question about rest-server. In my project I don't won't to use rest server as direct backend, I wanna have one more api, which will send different requests. So, my question is, what kind of auth I need to choose? (auth need for multi-user mode, I want to send transactions from different participants)
[ ](https://chat.hyperledger.org/channel/composer?msg=fnj3oKjCW2HspZBqk) @mahoney1 Reviving this thread. How could I then extract that same data from the blockchain from another device? Node-Red allows this too?
Does anybody know how to change timestamp basically time configuration in composer.. Because in the timestamp i get , the time zone is incorrect
[ ](https://chat.hyperledger.org/channel/composer?msg=nkakBKhx9To9gAHA4) @Legiit Google Auth is a delegated auth method for a client app; (and its just one example, of many passport strategies) - each user is not sent off for authentication FYI. See the tutorial
[ ](https://chat.hyperledger.org/channel/composer?msg=7AZueJBsDFub4MSXq) @alexdevassy local Composer should use whatever timezone you spin up your Docker environment with via docker-compose ? -> https://stackoverflow.com/questions/39172652/using-docker-compose-to-set-containers-timezones as an example may help. In the bigger picture, say in a multi-org environment, it willl be whatever each Org sets its timezone to, synchronized etc. Composer doesn't really 'configure' the timezone per se (as no variable to do so).
[ ](https://chat.hyperledger.org/channel/composer?msg=KpZmfYLwhio9JR9q4) @Varun2887 Follow the best practices here https://docs.npmjs.com/getting-started/fixing-npm-permissions including recommendation to install a Node Version Manager (install NVM then use that to manage Node installs)
@dtp - use Node-red yes. The `Hyperledger Composer Mid` node retrieves assets and participants from the Blockchain. The JSON to retrieve the resource looks like something this: `{"$class" : "org.acme.sample.SampleAsset", "id" : "1234"}` - see https://hyperledger.github.io/composer/integrating/node-red and https://medium.com/@CazChurchUk/integrate-your-blockchain-with-anything-using-hyperledger-composer-and-nodered-4226676f7e54 for more info.
[ ](https://chat.hyperledger.org/channel/composer?msg=SgFAFL63RsfYfmHzY) @xy250400 hello - 1) what OS and version are you running on? 2) docker ps output ? 2) from `fabric-tools` a) Change to the directory where the docker-compose.yml file is (e.g. fabric-tools/fabric-scripts/hlfv1/composer) b) Run `docker-compose stop` to stop the Fabric Containers c) Run `docker-compose start` to restart where you left off. d) try a `composer network ping -c `admin@yournetwork` to see if you can ping your business network container (assuming it is up when you do a `docker ps`
[ ](https://chat.hyperledger.org/channel/composer?msg=SgFAFL63RsfYfmHzY) @xy250400 hello - 1) what OS and version are you running on? 2) docker ps output ? 2) from `fabric-tools` a) Change to the directory where the docker-compose.yml file is (e.g. fabric-tools/fabric-scripts/hlfv1/composer) b) Run `docker-compose stop` to stop the Fabric Containers c) Run `docker-compose start` to restart where you left off. d) try a `composer network ping -c `admin@yournetwork` to see if you can ping your business network container (assuming it is up when you do a `docker ps` ) - and replace the name of the admin card with `your own network name that you deployed earlire`
[ ](https://chat.hyperledger.org/channel/composer?msg=SgFAFL63RsfYfmHzY) @xy250400 hello - 1) what OS and version are you running on? 2) docker ps output ? 2) from `fabric-tools` a) Change to the directory where the docker-compose.yml file is (e.g. fabric-tools/fabric-scripts/hlfv1/composer) b) Run `docker-compose stop` to stop the Fabric Containers c) Run `docker-compose start` to restart where you left off. d) try a `composer network ping -c `admin@yournetwork` to see if you can ping your business network container (assuming it is up when you do a `docker ps` ) - and replace the name of the admin card with `your own network name that you deployed earlier`
@Varun2887 others may suggest - but you may / may not have seen this tutorial - albeit a sample network https://hyperledger.github.io/composer/next/tutorials/acl-trading.html
It's for a client, I do not have to power to choose for Google Auth :) @mahoney1
Also, I tried issuing a new identity through the rest API but it stopped working (I had it working lately, don't really know what broke it..)
The message I am getting is:
```
Uncaught DOMException: Failed to read the 'responseText' property from 'XMLHttpRequest': The value is only accessible if the object's 'responseType' is '' or 'text' (was 'blob').
at Request.
It's for a client, I do not have to power to choose for Google Auth :) @mahoney1
Also, I tried issuing a new identity through the rest API but it stopped working (I had it working lately, don't really know what broke it..)
The message I am getting is:
```
Uncaught DOMException: Failed to read the 'responseText' property from 'XMLHttpRequest': The value is only accessible if the object's 'responseType' is '' or 'text' (was 'blob').
at Request.
It's for a client, I am not in the position to choose for Google Auth, as blockchain is an addition to an already existing project with it's own Authentication mechanism :) @mahoney1
Also, I tried issuing a new identity through the rest API but it stopped working (I had it working lately, don't really know what broke it..)
The message I am getting is:
```
Uncaught DOMException: Failed to read the 'responseText' property from 'XMLHttpRequest': The value is only accessible if the object's 'responseType' is '' or 'text' (was 'blob').
at Request.
It's for a client, I am not in the position to choose for Google Auth, as blockchain is an addition to an already existing project with it's own Authentication mechanism :) @mahoney1
I now have to figure out how to manage the business cards with their existing authentication mechanism ^^
thanks @mahoney1
Just wondering, I did npm link and my composer is still not updated to the v0.18
Has joined the channel.
when I click composer
but its shown its updated
hmm
Hi guys,
I'm getting the following error when I tried to deploy the business network following the developer tutorial (https://hyperledger.github.io/composer/tutorials/developer-tutorial.html)
*Command:*
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card
*Error:*
× Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND
Command failed
*O.S:* Windows 10
have you run into this before? ... Kindly advise
Has joined the channel.
Has joined the channel.
Where can I find parameter "url"?
```composer network start -c PeerAdmin@byfn-network-org1 -a hc-blockchain.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C ./admin-pub.pem
Starting business network from archive: hc-blockchain.bna
Business network definition:
Identifier: hc-blockchain@0.3.0
Description: Smart contract implementation for simple business process, Client - Seller - Courier model
TypeError: Parameter "url" must be a string, not undefined
Command failed
```
Hi,
I try to establish an authentification mechanism for a sample network but when I execute the scripts I always get Permission denied as response..
Has joined the channel.
Screen Shot 2018-03-06 at 8.51.42 PM.png
Hello, I am trying to run the command "./createPeerAdminCard.sh" , facing the following issue. Please help me out.
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier
Command failed
Has joined the channel.
Hi, I have problem. I have project and i use composer hyperledger. Project work locally, but i do not know how to use it on several computers, so that they connect with each other. I would ask for some tips.
[ ](https://chat.hyperledger.org/channel/composer?msg=AG9gRxgbiaW4qqsfH) @piotrek94 First try that: [tutor](https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602)
[ ](https://chat.hyperledger.org/channel/composer?msg=oswPmKMRAajZ2TX7S) @mikeleow did you uninstall the old modules and install the new ? See https://hyperledger.github.io/composer/next/installing/development-tools.html and you'll need the new Fabric v1.1-rc1 candidate docker images (as only that currently works with v0.18.0 of Composer FYI ) see release notes -> https://hyperledger.github.io/composer/next/installing/development-tools.html
@mahoney1 Alrighty, hold on!
[ ](https://chat.hyperledger.org/channel/composer?msg=Y6dy2Hza6RBQjqe6t) @Masthanbee 1 see the Wiki here (item 6 in the table - will explain what's wrong -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--runtime-install-errors-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=psv2MnQgQx2M6k2TZ) @MohamedAbdelwahab seems like you've not installed runtime
@mikeleow - not sure why your version show as v0.18.1 - that is not released (as mentioned, current @next release is v0.18.0) - you simply need to follow those instructions in the link I sent - to do an `npm uninstall -g composer-cli` (incl any other Composer modules you installed ie at previous levels etc etc) then do the `npm install -g composer-cli@next` and so on (eg npm install -g composer-rest-server@next` etc etc) that will install v0.18.0
@mikeleow - not sure why your version showed as v0.18.1 - that is not released (as mentioned, current @next release is v0.18.0) - you simply need to follow those instructions in the link I sent - to do an `npm uninstall -g composer-cli` (incl any other Composer modules you installed ie at previous levels etc etc) then do the `npm install -g composer-cli@next` and so on (eg npm install -g composer-rest-server@next` etc etc) that will install v0.18.0
@MohamedAbdelwahab Windows 10 not currently supported FYI -> https://hyperledger.github.io/composer/installing/installing-prereqs.html
[ ](https://chat.hyperledger.org/channel/composer?msg=SYt5jPi6ABukKQpfm) @argman probably your CA or orderer stanza in your connection profile ?
Hi.
When I am trying to start a network with the command `composer network start --card PeerAdmin@bc1st-org1 --archiveFile marbles-network.bna -o endorsementPolicyFile=endorsement-policy.json --networkAdmin BNadmin-org1 --networkAdminCertificateFile BNadmin-org1/ca1.org1.admin-pub.pem --networkAdmin BNadmin-org2 --networkAdminCertificateFile BNadmin-org2/ca1.org2.admin-pub.pem`, I get the following response: https://pastebin.com/bQrzmsrR
I am deploying an empty marbles network to my fabric network, which I run with certs generated by intermediate CAs instead of cryptogen. I had problems with org admin certs at runtime install before, but I have fixed them, but now I am stuck with this problem. Does anyone know which certificate is not set correctly here? I have called the composer identity request with an ca1.org1.admin which is the user created when I start my intermediate CA. Also this are the logs on a peer:https://pastebin.com/XwJuFU2F
Hi.
When I am trying to start a network with the command `composer network start --card PeerAdmin@bc1st-org1 --archiveFile marbles-network.bna -o endorsementPolicyFile=endorsement-policy.json --networkAdmin BNadmin-org1 --networkAdminCertificateFile BNadmin-org1/ca1.org1.admin-pub.pem --networkAdmin BNadmin-org2 --networkAdminCertificateFile BNadmin-org2/ca1.org2.admin-pub.pem`, I get the following response: https://pastebin.com/bQrzmsrR
I am deploying an empty marbles network to my fabric network, which I run with certs generated by intermediate CAs instead of cryptogen. I had problems with org admin certs at runtime install before, but I have fixed them, but now I am stuck with this problem. Does anyone know which certificate is not set correctly here? I have called the composer identity request with an ca1.org1.admin which is the user created when I start my intermediate CA. Also this are the logs on a peer:https://pastebin.com/XwJuFU2F
PS: I'm using v1.1.0-rc1 fabric and v0.18.0 composer
Hi.
When I am trying to start a network with the command `composer network start --card PeerAdmin@bc1st-org1 --archiveFile marbles-network.bna -o endorsementPolicyFile=endorsement-policy.json --networkAdmin BNadmin-org1 --networkAdminCertificateFile BNadmin-org1/ca1.org1.admin-pub.pem --networkAdmin BNadmin-org2 --networkAdminCertificateFile BNadmin-org2/ca1.org2.admin-pub.pem`, I get the following response: https://pastebin.com/bQrzmsrR
I am deploying an empty marbles network to my fabric network, which I run with certs generated by intermediate CAs instead of cryptogen. I had problems with org admin certs at runtime install before, but I have fixed them, but now I am stuck with this problem. Does anyone know which certificate is not set correctly here? I have called the composer identity request with an `ca1.org1.admin` which is the user created when I start my intermediate CA. Also this are the logs on a peer:https://pastebin.com/XwJuFU2F
PS: I'm using v1.1.0-rc1 fabric and v0.18.0 composer
Hi.
When I am trying to start a network with the command `composer network start --card PeerAdmin@bc1st-org1 --archiveFile marbles-network.bna -o endorsementPolicyFile=endorsement-policy.json --networkAdmin BNadmin-org1 --networkAdminCertificateFile BNadmin-org1/ca1.org1.admin-pub.pem --networkAdmin BNadmin-org2 --networkAdminCertificateFile BNadmin-org2/ca1.org2.admin-pub.pem`, I get the following response: https://pastebin.com/bQrzmsrR
I am deploying an empty marbles network to my fabric network, which I run with certs generated by intermediate CAs instead of cryptogen. I had problems with org admin certs at runtime install before, but I have fixed them, but now I am stuck with this problem. Does anyone know which certificate is not set correctly here?
I have called the composer identity request with an `ca1.org1.admin` which is the user created when I start my intermediate CA. Also this are the logs on a peer:https://pastebin.com/XwJuFU2F
PS: I'm using v1.1.0-rc1 fabric and v0.18.0 composer
Hi,
I have a BNA working on a VM. I need to target this network with the composer-client (on NodeJs) from an other VM. Where do I need to change the IpAddress ?
[ ](https://chat.hyperledger.org/channel/composer?msg=g99c4gmajSfjnwWSG) @mahoney1 I've checked all of them, but there is no null on url.
[ ](https://chat.hyperledger.org/channel/composer?msg=RMS7jcrD5MmWqckny) @SimonOberzan my guess would be if you're deploying an empty business network, with no permissions in the ACL to subsequently connect, then that might be a valid reason as to why you get 'access denied' in your pastebin logs ? You could try sending a 'normal' BN with minimal ACLs to connect to the business network (or deploy a sample network, its a separate container anyway) and see (using exactly the same params) if you get the same result ..
[ ](https://chat.hyperledger.org/channel/composer?msg=xXfnG5qANwu99sdCp) @mahoney1 I was deploying a default marble BN. I will try with sample-network now
asset C identified by c {
o String c
o someConcept[] someConceptArray
}
concept someConcept {
o String name
o String desc
}
so I have a structure like this and want to query all the C assets that has `Varun` stored in the `name` of a concept stored in `someConceptArray`
any suggestions?
actually @SimonOberzan just looked again at your pastebin `getChannelConfig - Failed getting channel config. Error: Error: 2 UNKNOWN: access denied: channel [businesschannel] ` - this is your probllem - a channel config issue. You would be well to deploy the Marbles GO chaincode https://github.com/IBM-Blockchain/marbles/tree/v4.0/chaincode/src/marbles to your custom blockchain Fabric network FIRST - and see if it works. If it doesn't then there's a config issue at a Fabric level. If it does - then you need to check your Composer connection profiles.
@mahoney1 will try. Thanks
@mahoney1 Hey just dmed you a reply, posted my question above as well. The query for an array of strings is easy but i need to query something more complex like an array of concepts
Hi,
I have a BNA working on a VM. I need to target this network with the composer-client (on NodeJs) from an other VM. Where do I need to change the IpAddress ?
Can anyone help me?
Hi,
I have a BNA working on a VM. I need to target this network with the composer-client (on NodeJs) from an other VM. Where do I need to change the IpAddress ?
@varunagarwal will take a look in a few moments.
@mahoney1 so I don't run step 4 on this correct? https://hyperledger.github.io/composer/next/installing/development-tools.html
@mahoney1 because I had setup a local ca 1.1 on my virtual enviroement
https://github.com/yeasy/docker-hyperledger-fabric-ca/blob/master/v1.1.0-rc1/Dockerfile
through this file
I have Created a basic bank Network and Using Composer Rest Server. I am trying to do transcations i am getting this error ```
Unhandled error for request POST /api/org.digital.bank.AccountTransfer: Error: Error trying invoke business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Error: Insufficient funds)
at _initializeChannel.then.then.then.then.catch (/usr/local/share/.config/yarn/global/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:916:34)
at
I have Created a basic bank Network and created rest endpoints Using Composer Rest Server. I am trying to do transcations i am getting this error ```
Unhandled error for request POST /api/org.digital.bank.AccountTransfer: Error: Error trying invoke business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Error: Insufficient funds)
at _initializeChannel.then.then.then.then.catch (/usr/local/share/.config/yarn/global/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:916:34)
at
Even the account has much balance.
is ok I got it @mahoney1 no worries
[ ](https://chat.hyperledger.org/channel/composer?msg=ewQEEY4iNYNnEhCm8) @mahoney1
I have cleared the issue. thank you @mahoney1
But facing an issue while running the command `composer-rest-server`.
error.PNG
@Masthanbee 1 Start from begning using Yarn Package Manager and as non root user.
[ ](https://chat.hyperledger.org/channel/composer?msg=jTRzG2HnRLSAzGEgp) @ranjithkumarmv unusual error to come back form a peer :-) except that your transaction logic is triggering it ? And have you submitted any POSTS to your REST APIs successfully to this point ?
Has joined the channel.
@Masthanbee 1 `composer -v ` ? and `docker ps ` ?
@Masthanbee 1 as mentioned by Ranjit - you need to install Composer as non-root - that's your issue also for background see more comments here ->
@Masthanbee 1 as mentioned by Ranjit - you need to install Composer as non-root - that's your issue also for background see more comments here -> https://github.com/hyperledger/composer/issues/1531#issuecomment-315788127
[ ](https://chat.hyperledger.org/channel/composer?msg=MS2sMZtzMt8b3cAcw) @mahoney1 yes I am getting some Success Response also ``` 200:0{$class=org.paysafe.digital.bank.AccountTransfer, amount=7, from=new828account, to=new847account}
200:1{$class=org.paysafe.digital.bank.AccountTransfer, amount=3, from=new372account, to=new930account}
500:2{$class=org.paysafe.digital.bank.AccountTransfer, amount=6, from=new121account, to=new999account}
200:3{$class=org.paysafe.digital.bank.AccountTransfer, amount=5, from=new768account, to=new989account}
200:4{$class=org.paysafe.digital.bank.AccountTransfer, amount=1, from=new437account, to=new723account} ```
[ ](https://chat.hyperledger.org/channel/composer?msg=MS2sMZtzMt8b3cAcw) @mahoney1 yes I am getting some Success Response also . I dont have any issues while creating assests and participants ``` 200:0{$class=org.paysafe.digital.bank.AccountTransfer, amount=7, from=new828account, to=new847account}
200:1{$class=org.paysafe.digital.bank.AccountTransfer, amount=3, from=new372account, to=new930account}
500:2{$class=org.paysafe.digital.bank.AccountTransfer, amount=6, from=new121account, to=new999account}
200:3{$class=org.paysafe.digital.bank.AccountTransfer, amount=5, from=new768account, to=new989account}
200:4{$class=org.paysafe.digital.bank.AccountTransfer, amount=1, from=new437account, to=new723account} ```
[ ](https://chat.hyperledger.org/channel/composer?msg=H4ErahdtCYTyG8R3Y)
[ ](https://chat.hyperledger.org/channel/composer?msg=LbFEoHM9J5Wp2myF3) @CorentinPacaud In your connection?
I put the real Ip in the connection.json
but when I try to connect with admin.card I have this :
```
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
Command failed
```
So I think connection.json is not set
Did you put the private ip instead of the public one?
What do you mean by private Ip ?
Here is my connection.json :
```
{
"name": "hlfv1",
"type": "hlfv1",
"orderers": [
{
"url" : "grpc://IpOfNetwork:7050"
}
],
"ca": {
"url": "http://IpOfNetwork:7054",
"name": "ca.org1.example.com"
},
"peers": [
{
"requestURL": "grpc://IpOfNetwork:7051",
"eventURL": "grpc://IpOfNetwork:7053"
}, {
"requestURL": "grpc://IpOfNetwork:8051",
"eventURL": "grpc://IpOfNetwork:8053"
}
],
"channel": "composerchannel",
"mspID": "Org1MSP",
"timeout": 300
}
```
I have this archi :
Physical machine 1 : All the network : (CA, orderer, Peer1, Peer2, CouchDb1, CouchDb2)
Physical machine 2 : My server NodeJs
[ ](https://chat.hyperledger.org/channel/composer?msg=qGpgDCQPWk3ZEqSu8) @ranjithkumarmv the error would suggest that your transaction processor code is doing the throw and hence why it doesn't get committed - is that the case? As you say, your biz network in other REST areas is working fine. Can you do a test transaction from another class ?
@varunagarwal on concept array (and posting for others to see/search) - given data of ```{
"$class": "org.acme.trading.CAsset",
"c": "Asset1",
"someConceptArray": [
{
"$class": "org.acme.trading.someConcept",
"name": "Myname",
"desc": "Mydesc"
}
]
}``` your query would be something like this for searching the array of concepts ```query CQuery2 {
description: "Select all Cs"
statement:
SELECT org.acme.trading.CAsset
WHERE (someConceptArray CONTAINS (name == "Myname") OR (desc == "Mydesc") )
} ```
@varunagarwal on concept array (and posting for others to see/search) - given data of ```{
"$class": "org.acme.trading.CAsset",
"c": "Asset1",
"someConceptArray": [
{
"$class": "org.acme.trading.someConcept",
"name": "Myname",
"desc": "Mydesc"
}
]
}``` your query would be something like this for searching the array of concepts ```query CQuery2 {
description: "Select all Cs"
statement:
SELECT org.acme.trading.CAsset
WHERE (someConceptArray CONTAINS (name == "Myname") OR (desc == "Mydesc") )
} ```
@varunagarwal on concept array (and posting for others to see/search) - given data of ```{
"$class": "org.acme.trading.CAsset",
"c": "Asset1",
"someConceptArray": [
{
"$class": "org.acme.trading.someConcept",
"name": "Myname",
"desc": "Mydesc"
}
]
}``` your query would be something like this for searching the array of concepts `query CQuery2 {
description: "Select all Cs"
statement:
SELECT org.acme.trading.CAsset
WHERE (someConceptArray CONTAINS (name == "Myname") OR (desc == "Mydesc") )
} `
@varunagarwal on concept array (and posting for others to see/search) - given data of ```{
"$class": "org.acme.trading.CAsset",
"c": "Asset1",
"someConceptArray": [
{
"$class": "org.acme.trading.someConcept",
"name": "Myname",
"desc": "Mydesc"
}
]
} ``` your query would be something like this for searching the array of concepts _query CQuery2 {
description: "Select all Cs"
statement:
SELECT org.acme.trading.CAsset
WHERE (someConceptArray CONTAINS (name == "Myname") OR (desc == "Mydesc") )
} _
@varunagarwal on concept array (and posting for others to see/search) - given data of ```{
"$class": "org.acme.trading.CAsset",
"c": "Asset1",
"someConceptArray": [
{
"$class": "org.acme.trading.someConcept",
"name": "Myname",
"desc": "Mydesc"
}
]
} ```
your query would be something like this for searching the array of concepts ```query CQuery2 {
description: "Select all Cs"
statement:
SELECT org.acme.trading.CAsset
WHERE (someConceptArray CONTAINS (name == "Myname") OR (desc == "Mydesc") )
} ```
[ ](https://chat.hyperledger.org/channel/composer?msg=2nJrpNvqWAjX4Pc2H) @mahoney1
getting same issue @mahoney1 when I am running using non-root user
[ ](https://chat.hyperledger.org/channel/composer?msg=qypK2cZd3ju27rLfo) @Masthanbee 1 how did you install composer ? Can you post trail ?
[ ](https://chat.hyperledger.org/channel/composer?msg=qypK2cZd3ju27rLfo) @Masthanbee 1 how did you install composer ? Can you post trail / screenshot?
error1.PNG
@mahoney1 I am following these docs as a reference.
https://hyperledger.github.io/composer/latest/installing/development-tools
https://www.ibm.com/developerworks/cloud/library/cl-deploy-interact-extend-local-blockchain-network-with-hyperledger-composer/index.html
How to integrate passport-Auth0 with composer ?
[ ](https://chat.hyperledger.org/channel/composer?msg=HHPZAjoHff9NmSdsH) @Masthanbee 1 as mentioned, we suggest not to install Composer using sudo or root, thanks for screenshot - sent you instructions.
[ ](https://chat.hyperledger.org/channel/composer?msg=enSbq2zfcCqw45PCH) @chandrakanthm from what I've read its token based (at least the one I saw) and should be similar to this https://hyperledger.github.io/composer/next/tutorials/google_oauth2_rest - although I didn't see it in http://www.passportjs.org/packages/
Sry to insist, but can anyone help me ?
[ ](https://chat.hyperledger.org/channel/composer?msg=H4ErahdtCYTyG8R3Y)
[ ](https://chat.hyperledger.org/channel/composer?msg=bdwnuJdtg2PzxrSFz) @mahoney1 I am having only one transaction processor function ``` function accountTransfer(accountTransfer) {
if (accountTransfer.from.balance < accountTransfer.to.balance) {
throw new Error ("Insufficient funds");
}
accountTransfer.from.balance -= accountTransfer.amount;
accountTransfer.to.balance += accountTransfer.amount;
return getAssetRegistry('org.paysafe.digital.bank.Account')
.then (function (assetRegistry) {
return assetRegistry.update(accountTransfer.from);
})
.then (function () {
return getAssetRegistry('org.paysafe.digital.bank.Account');
})
.then(function (assetRegistry) {
return assetRegistry.update(accountTransfer.to);
});
} ``` and it works for transaction involving new account . If we use the same (from and to accounts) for the next immediate transaction with different or same amount. I am getting this error ``` {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Error: Insufficient funds)\n",
"stack": "Error: Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Error: Insufficient funds)\n\n at _initializeChannel.then.then.then.then.catch (/usr/local/share/.config/yarn/global/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:916:34)\n at
[ ](https://chat.hyperledger.org/channel/composer?msg=bdwnuJdtg2PzxrSFz) @mahoney1 I am having only one transaction processor function ``` function accountTransfer(accountTransfer) {
if (accountTransfer.from.balance < accountTransfer.to.balance) {
throw new Error ("Insufficient funds");
}
accountTransfer.from.balance -= accountTransfer.amount;
accountTransfer.to.balance += accountTransfer.amount;
return getAssetRegistry('org.paysafe.digital.bank.Account')
.then (function (assetRegistry) {
return assetRegistry.update(accountTransfer.from);
})
.then (function () {
return getAssetRegistry('org.paysafe.digital.bank.Account');
})
.then(function (assetRegistry) {
return assetRegistry.update(accountTransfer.to);
});
} ``` and it works for transaction involving new account . If we use the same (from and to accounts) for the next immediate transaction with different or same amount. I am getting this error ``` {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Error: Insufficient funds)\n",
"stack": "Error: Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Error: Insufficient funds)\n\n at _initializeChannel.then.then.then.then.catch (/usr/local/share/.config/yarn/global/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:916:34)\n at
[ ](https://chat.hyperledger.org/channel/composer?msg=bdwnuJdtg2PzxrSFz) @mahoney1 I am having only one transaction processor function ``` function accountTransfer(accountTransfer) {
if (accountTransfer.from.balance < accountTransfer.to.balance) {
throw new Error ("Insufficient funds");
}
accountTransfer.from.balance -= accountTransfer.amount;
accountTransfer.to.balance += accountTransfer.amount;
return getAssetRegistry('org.paysafe.digital.bank.Account')
.then (function (assetRegistry) {
return assetRegistry.update(accountTransfer.from);
})
.then (function () {
return getAssetRegistry('org.paysafe.digital.bank.Account');
})
.then(function (assetRegistry) {
return assetRegistry.update(accountTransfer.to);
});
} ``` and it works for transaction involving new account . If we use the same (from and to accounts) for the next immediate transaction with different or same amount. I am getting this error ``` {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Error: Insufficient funds)\n",
"stack": "Error: Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Error: Insufficient funds)\n\n at _initializeChannel.then.then.then.then.catch (/usr/local/share/.config/yarn/global/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:916:34)\n at
[ ](https://chat.hyperledger.org/channel/composer?msg=bdwnuJdtg2PzxrSFz) @mahoney1 I am having only one transaction processor function ``` function accountTransfer(accountTransfer) {
if (accountTransfer.from.balance < accountTransfer.to.balance) {
throw new Error ("Insufficient funds");
}
accountTransfer.from.balance -= accountTransfer.amount;
accountTransfer.to.balance += accountTransfer.amount;
return getAssetRegistry('org.paysafe.digital.bank.Account')
.then (function (assetRegistry) {
return assetRegistry.update(accountTransfer.from);
})
.then (function () {
return getAssetRegistry('org.paysafe.digital.bank.Account');
})
.then(function (assetRegistry) {
return assetRegistry.update(accountTransfer.to);
});
}```
``` ``` and it works for transaction involving new account . If we use the same (from and to accounts) for the next immediate transaction with different or same amount. I am getting this error ``` {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Error: Insufficient funds)\n",
"stack": "Error: Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Error: Insufficient funds)\n\n at _initializeChannel.then.then.then.then.catch (/usr/local/share/.config/yarn/global/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:916:34)\n at
Has joined the channel.
Has joined the channel.
@ranjithkumarmv why don't you put the values of the balances into the txt of the error message you get back? Might help.
Screen Shot 2018-03-07 at 12.56.11 AM.png
is it because I ran the sed file
Screen Shot 2018-03-07 at 1.04.32 AM.png
yeah, you are using cli with is not compatible with fabric. remove all use the prerequisite script provided by the composer to install stuff and also follow next.
sol is here https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--runtime-install-errors-composer
@mikeleow not sed, no. Can you provide 1) `docker ps` output and 2) `composer -v` output. 3) `cat Dockerfile` It should work like it did in 0.17.6 as shown with the Google Auth tutorial here https://hyperledger.github.io/composer/next/tutorials/google_oauth2_rest
@mahoney1 I had decided to do a fresh start, let me try again.
Just wondering, would there be a tutorial on aws environment configuration for cloud wallet?
[ ](https://chat.hyperledger.org/channel/composer?msg=iCHSkAnrtLgmbykqX) @mikeleow not that I'm presently aware of.
Has joined the channel.
Hi,
facing some issue using composer rest server in multiuser mode. I started composer rest server in multi user mode, issued and new id. I can see its not not active. I got the card file. Now how can I activate it using composer rest server and then how can I switch to new card for accessing composer rest server /
@blockbuilder did you try importing the wallet from the REST API ? See here -> https://stackoverflow.com/questions/48838803/how-to-create-participant-there-identities-via-rest-api-that-generated-by-comp you can import a new card and use `setDefault` to switch identities in the REST API
@blockbuilder did you try importing the wallet from the REST API under /System eg. /POST /wallet/import? See here -> https://stackoverflow.com/questions/48838803/how-to-create-participant-there-identities-via-rest-api-that-generated-by-comp you can import a new card and use `setDefault` to switch identities in the REST API
@blockbuilder did you try importing the wallet from the REST API under /System eg. /POST /wallet/import? See here -> https://stackoverflow.com/questions/48838803/how-to-create-participant-there-identities-via-rest-api-that-generated-by-comp you can import a new card and use `setDefault` to switch identities in the REST API
anyone got this issue before? Unable to find image 'myorg/my-composer-rest-server:latest' locally
docker: Error response from daemon: pull access denied for myorg/my-composer-rest-server, repository does not exist or may require 'docker login'.
See 'docker run --help'.
Screen Shot 2018-03-07 at 12.56.11 AM.png
Has joined the channel.
Do you know what the correct syntax is to query the historian and specify values emitted in events? I tried the below statement, but it doesn't like the partNumber piece, but I know there has to be a way to query on this data.
query selectHistorian {
description: "Select Asset based on Part and Facility"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
WHERE (eventsEmitted.partNumber == 'resource:org.acme.trading.Part#7W9409')
}
@mahoney1 ya it works but when I try to fetch data of a participant. It gives error : Error: Participant 'org.tcs.auction.Buyer#Buyer1' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#auction-supply-chain@0.0.1. PS I haven't applied any ACLs
[ ](https://chat.hyperledger.org/channel/composer?msg=8mwqNYh6wCWme828o) @mbwhite @mbwhite Thanks there was a blunt logical mistake. Comparing fromAccountBalance and ToAccountBalance instead transferAmount and fromAccountBalance.
[ ](https://chat.hyperledger.org/channel/composer?msg=8mwqNYh6wCWme828o) @mbwhite @mbwhite Thanks there was a blunt logical mistake. Comparing fromAccountBalance and ToAccountBalance instead transferAmount and fromAccountBalance. Issue Solved.
eventsEmitted is an array, I can specify WHERE(eventsEmitted CONTAINS ' ')
I was Getting ReadConflict ``` Unhandled error for request POST /api/org.paysafe.digital.bank.AccountTransfer: Error: Error trying invoke business network. Error: Peer has rejected transaction 'cac00fde7e2bc615be8a3f4bf68434bb11800c39ab21e7fd76cfe6059336f843' with code MVCC_READ_CONFLICT
at _initializeChannel.then.then.then.then.catch (/usr/local/share/.config/yarn/global/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:916:34)
at
Trying to do a composer network start (0.16.2) for hyperledger fabric 1.0.4. getting the error "Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Error starting container: Failed to generate platform-specific docker build: Failed to pull hyperledger/fabric-ccenv:x86_64-1.0.4: API error (500): {"message":"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on 127.0.1.1:53: server misbehaving"}" Any Ideas?
Docker ps shows CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4355956929fd hyperledger/fabric-peer:x86_64-1.0.4 "peer node start -..." About an hour ago Up About an hour 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
6983c3c7e6aa hyperledger/fabric-orderer:x86_64-1.0.4 "orderer" About an hour ago Up About an hour 0.0.0.0:7050->7050/tcp orderer.example.com
2232ae1d5a01 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-..." About an hour ago Up About an hour 0.0.0.0:7054->7054/tcp ca.org1.example.com
cebeaa06a146 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-e..." About an hour ago Up About an hour 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
Screen Shot 2018-03-07 at 2.57.38 AM.png
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=GZ4qDfSBrkGsM2mLm) @mikeleow
`docker ps` shows containers, you use `docker images` to show images
Screen Shot 2018-03-07 at 3.07.37 AM.png
Had to change my vmware fusion network settings from NAT to Bridged Autodetect for some reason. NAT always worked before. Running Mac OS 10.13.2. Maybe something changed when I upgraded my Mac to 10.13
Had to change my vmware fusion network settings from NAT to Bridged Autodetect for some reason. NAT always worked before. Running Mac OS 10.13.2. Maybe something changed when I upgraded my Mac to 10.13. Turns out this is an issue with VMWare on a High Sierra
Has left the channel.
the Community call tomorrow (Weds) will be at 10am UTC (10am UK, 2:30pm IST, 5pm CST) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-March-7th-2018@
the Community call tomorrow (Weds) will be at 10am UTC (10am UK, 2:30pm IST, 5pm CST) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-March-7th-2018@
the Community call tomorrow (Weds) will be at 10am UTC (10am UK, 2:30pm IST, 5pm CST) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-March-7th-2018@
[ ](https://chat.hyperledger.org/channel/composer?msg=MmGSANoY8MZNtBZMW) @blockbuilder you need ACLs for your namespace eg. ```rule Default {
description: "Allow all participants access to all resources"
participant: "ANY"
operation: ALL
resource: "org..tcs.auction.*"
action: ALLOW
} ```
As for my earlier historian query question, it appears eventsEmitted is not a valid property to use in a query. I changed the query to eventsEmitted Contains 'xyz' and the composer-rest-server told me eventsEmitted is an invalid property and the query did not even show up in the explorer view
[ ](https://chat.hyperledger.org/channel/composer?msg=se8AS3bDAuWaCjy84) @DennisM330 see this Stack Overflow -> https://stackoverflow.com/questions/49104387/how-to-access-the-eventemitted-field-in-transaction-history-of-hyperledger-fab - normally you would use CONTAINS to search in an array field. I tried this ```query eventQuery {
description: "Select all events in history containing a certain Event ID"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
WHERE ( eventsEmitted CONTAINS ( eventId == "678cb4d1-b687-4c58-8067-de9ec9be3bbf#0") )
} ``` (eventId is a standard field on the event emitted - but you could use your event field)
[ ](https://chat.hyperledger.org/channel/composer?msg=se8AS3bDAuWaCjy84) @DennisM330 see this Stack Overflow -> https://stackoverflow.com/questions/49104387/how-to-access-the-eventemitted-field-in-transaction-history-of-hyperledger-fab - normally you would use CONTAINS to search in an array field. I tried this and it works ```query eventQuery {
description: "Select all events in history containing a certain Event ID"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
WHERE ( eventsEmitted CONTAINS ( eventId == "678cb4d1-b687-4c58-8067-de9ec9be3bbf#0") )
} ``` (eventId is a standard field on the event emitted - but you could use your event field)
[ ](https://chat.hyperledger.org/channel/composer?msg=se8AS3bDAuWaCjy84) @DennisM330 see this Stack Overflow -> https://stackoverflow.com/questions/49104387/how-to-access-the-eventemitted-field-in-transaction-history-of-hyperledger-fab - normally you would use CONTAINS to search in an concept array field. I tried this and it works (search it like you would a Concept (key = value) - as laid down by Couchdb - ```query eventQuery {
description: "Select all events in history containing a certain Event ID"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
WHERE ( eventsEmitted CONTAINS ( eventId == "678cb4d1-b687-4c58-8067-de9ec9be3bbf#0") )
} ``` (eventId is a standard field on the event emitted - but you could use your event field)
I'm getting the following error when I was trying to run the blockchain insurance app: https://github.com/IBM/build-blockchain-insurance-app
Clipboard - March 6, 2018 1:04 PM
I was actually able to run it last week. not sure what changed...
@mikeleow - your `docker run` sequence needs `myorg/composer-rest-server` rather than `myorg/my-composer-rest-server` - your image built fine - from which to instantiate the REST server container
npm install -g composer-cli not working under non-root user
`npm install -g composer-cli` not working under non-root user
installing composer under root user is giving me some errors. But, when installing composer under non-root is not letting me install the composer
@mahoney1 Did you get this syntax to work in .qry file in then were able to create the archive successfully?
[ ](https://chat.hyperledger.org/channel/composer?msg=KJgrPxcd9jQSS4ZTg) @mahoney1 can you please suggest me something on whether I should proceed installation as root user or non-root user for hyperledger composer
@mahoney1 query selectPartHistory {
description: "Select Asset based on Part"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
WHERE (eventsEmitted CONTAINS ( eventMessage == '12345'))
}
event componentAddPartEvent {
o String eventMessage
--> ComponentAssembly component
--> ComponentPart partNo
} Composer archive create fails with InvalidQueryException: Invalid WHERE clause in query selectPartHistory: Property eventMessage does not exist on org.hyperledger.composer.system.Event File 'queries.qry': line 24 column 7, to line 26 column 1
I have read ten about the product:
https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602/83
It is still not clear to me how to launch a project, eg Tutorial network from a sandbox, so that it works on two different computers. How do I do that? I can fire up locally with several accounts, but only on my computer. How to make an example project from the sandbox on two computers, so that they exchange data.
for a connection.json file, which PEM files am I supposed to reference for each CA, Peers, Orderers?
the same one for all? The TLSCA cert.pem?
the .crt for each peer/orderer/ca respectively?
I think I worked it out from another doc
Give me this document or tell me how to do it correctly? Nowhere can I find a good tutorial with the configuration of this on 2 computers
Hey guys, is there a way to resolve Relationship of a Resource without having to call `registry.resolve()` on each Relationship?
Currently I'm manually looping through a Resource object and check if its instanceof Relationship then try to resolve it. There must be a better way of doing so but I can't find anything in documentations. Thanks in advance
@mahoney1 Appears you can query eventsEmitted on built-in properties as you did, but you cannot query on custom fields
@DennisM330 might be worth creating an issue to be considered for an enhancement ?
@DennisM330 might be worth creating an issue to be considered for an enhancement ? Of course contributions welcome as well.
@mikeleow that error can occur if you try to use a card created using the `next` release with composer components running on the `latest` release. How did you build your rest server docker image ? did you base it on latest or next for example ?
@davidkel Will do
@ranjithkumarmv `MVCC_READ_CONFLICT` is a response from the fabric network. Stackoverflow for example has info about the meaning, eg
https://stackoverflow.com/questions/45347439/mvcc-read-conflict-when-submitting-multiple-transactions-concurrently
@phanikumar1210 would highly recommend you follow
https://hyperledger.github.io/composer/next/installing/installing-prereqs.html
which ensures node is not installed in a root priviledged directory (using nvm) and thus get's around the issues with node/npm having to be run while the root user.
Dear all, somehow I'm getting multiple Participants and Assets in my local Composer app when I go to demo.. Some are even not defined in model file, and some are not working. Is this common?
Screen Shot 2018-03-07 at 00.21.12.png
I have read ten about the product:
https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602/83
It is still not clear to me how to launch a project, eg Tutorial network from a sandbox, so that it works on two different computers. How do I do that? I can fire up locally with several accounts, but only on my computer. How to make an example project from the sandbox on two computers, so that they exchange data.
Has joined the channel.
Clipboard - March 7, 2018 9:09 AM
Clipboard - March 7, 2018 9:11 AM
[ ](https://chat.hyperledger.org/channel/composer?msg=kJE3w9SZNedgRFRRf) @mahoney1 Hi,thanks for answering my question. My OS is Ubuntu16.04.My peer docker status is exited,and the docker log is "2018-03-06 09:27:44.595 UTC [shim] func1 -> ERRO 003 Received error from server: rpc error: code = Unknown desc = Error handling message, ending stream: transition canceled with error: peer will not accepting external chaincode connection name:" I think it can't connect to the the network when the peer node is restarting.And I am sure my network isn't working,because when I ping my network,it tells me “make sure the chaincode vehicle-manufacture-network has been successfully instantiated and try again”.And I think the chaincode is installed in the peers,so what can I saw the docker log.
[ ](https://chat.hyperledger.org/channel/composer?msg=kJE3w9SZNedgRFRRf) @mahoney1 So I think my network restart need the chaincode in peer,and the peer restart need the network.
Clipboard - 2018年3月7日上午9点26分
And I have another question.When I deploy my network with composer,it doesn't work.My command is "composer network deploy -a my-network.bna -p hlfv1 -i admin -s adminpw",and it tell me "Missing required arguments: networkAdmin, card".So how can I fix it?
Hi,
Anyone has run into this problem with version 0.18.0 and using composer-wallet-redis?
Until 0.17.6 I was using my own mongodb cardstore implementation but might as well use the official one I thought.
Setting up the cloud cardstore, importing cards with an AdminConnection and setting up the 0.18.0 - Fabric1.1RC1 network is working fine.
However I am not able to create a BusinessNetworkConnection with my generated admin user. Pinging the network with the user does work however, from the CLI.
Nodejs error
```
something went wrong while connecting to business network Error: Error trying to ping. Error: Error trying to query business network. Error: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '247f89cef4fb6d496d2dee9b38baaf5b20ea041f54c20ca1b5c850a6e2674f30', has not been registered
error: unhandledRejection Error: Error trying to ping. Error: Error trying to query business network. Error: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '247f89cef4fb6d496d2dee9b38baaf5b20ea041f54c20ca1b5c850a6e2674f30', has not been registered
```
Peer0 error
```
2018-03-07 01:44:00.373 UTC [endorser] callChaincode -> DEBU 1bc3 [composerchannel][1b49b2b2] Exit
2018-03-07 01:44:00.373 UTC [endorser] simulateProposal -> ERRO 1bc4 [composerchannel][1b49b2b2] failed to invoke chaincode name:"nebula-network" , error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '247f89cef4fb6d496d2dee9b38baaf5b20ea041f54c20ca1b5c850a6e2674f30', has not been registered
github.com/hyperledger/fabric/core/chaincode.Execute
```
It can't seem to find the admin identity on the CA server. I guess it has something to do with the breaking changes. However a connection is just created from a cardName so can't see the big difference when working with the SDK.
Node js code
```
// Read admin business network card file and import
const data = fs.readFileSync('/tmp/composer/admin@test-network');
const card = await IdCard.fromArchive(data);
await connectionManager.importIdCard(hyperledgerConfig.adminBusinessNetworkCardName, card);
logger.info(`the card is loaded ${card}`);
//
const composerConnection = await connectionManager.createBusinessNetworkConnection('admin@test-network');
logger.info(`business network connection for ${hyperledgerConfig.adminBusinessNetworkCardName} has been successfully connected`);
```
Connection manager code
```
createBusinessNetworkConnection(cardName: string): Promise
Hi,
Anyone has run into this problem with version 0.18.0 and using composer-wallet-redis?
Until 0.17.6 I was using my own mongodb cardstore implementation but might as well use the official one I thought.
Setting up the cloud cardstore, importing cards with an AdminConnection and setting up the 0.18.0 - Fabric1.1RC1 network is working fine.
However I am not able to create a BusinessNetworkConnection with my generated admin user. Pinging the network with the user does work however, from the CLI.
Nodejs error
```
something went wrong while connecting to business network Error: Error trying to ping. Error: Error trying to query business network. Error: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '247f89cef4fb6d496d2dee9b38baaf5b20ea041f54c20ca1b5c850a6e2674f30', has not been registered
error: unhandledRejection Error: Error trying to ping. Error: Error trying to query business network. Error: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '247f89cef4fb6d496d2dee9b38baaf5b20ea041f54c20ca1b5c850a6e2674f30', has not been registered
```
Peer0 error
```
2018-03-07 01:44:00.373 UTC [endorser] callChaincode -> DEBU 1bc3 [composerchannel][1b49b2b2] Exit
2018-03-07 01:44:00.373 UTC [endorser] simulateProposal -> ERRO 1bc4 [composerchannel][1b49b2b2] failed to invoke chaincode name:"nebula-network" , error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '247f89cef4fb6d496d2dee9b38baaf5b20ea041f54c20ca1b5c850a6e2674f30', has not been registered
github.com/hyperledger/fabric/core/chaincode.Execute
```
It can't seem to find the admin identity on the CA server. I guess it has something to do with the breaking changes. However a connection is just created from a cardName so can't see the big difference when working with the SDK.
Node js code
```
// Read admin business network card file and import
const data = fs.readFileSync('/tmp/composer/admin@test-network');
const card = await IdCard.fromArchive(data);
await connectionManager.importIdCard(hyperledgerConfig.adminBusinessNetworkCardName, card);
logger.info(`the card is loaded ${card}`);
//
const composerConnection = await connectionManager.createBusinessNetworkConnection('admin@test-network');
logger.info(`business network connection for ${hyperledgerConfig.adminBusinessNetworkCardName} has been successfully connected`);
```
Connection manager code
```
createBusinessNetworkConnection(cardName: string): Promise
Hi,
Anyone has run into this problem with version 0.18.0 and using composer-wallet-redis?
Until 0.17.6 I was using my own mongodb cardstore implementation but might as well use the official one I thought.
Setting up the cloud cardstore, importing cards with an AdminConnection and setting up the 0.18.0 - Fabric1.1RC1 network is working fine.
However I am not able to create a BusinessNetworkConnection with my generated admin user. Pinging the network with the user does work however, from the CLI.
Nodejs error
```
something went wrong while connecting to business network Error: Error trying to ping. Error: Error trying to query business network. Error: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '247f89cef4fb6d496d2dee9b38baaf5b20ea041f54c20ca1b5c850a6e2674f30', has not been registered
error: unhandledRejection Error: Error trying to ping. Error: Error trying to query business network. Error: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '247f89cef4fb6d496d2dee9b38baaf5b20ea041f54c20ca1b5c850a6e2674f30', has not been registered
```
Peer0 error
```
2018-03-07 01:44:00.373 UTC [endorser] callChaincode -> DEBU 1bc3 [composerchannel][1b49b2b2] Exit
2018-03-07 01:44:00.373 UTC [endorser] simulateProposal -> ERRO 1bc4 [composerchannel][1b49b2b2] failed to invoke chaincode name:"test-network" , error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '247f89cef4fb6d496d2dee9b38baaf5b20ea041f54c20ca1b5c850a6e2674f30', has not been registered
github.com/hyperledger/fabric/core/chaincode.Execute
```
It can't seem to find the admin identity on the CA server. I guess it has something to do with the breaking changes. However a connection is just created from a cardName so can't see the big difference when working with the SDK.
Node js code
```
// Read admin business network card file and import
const data = fs.readFileSync('/tmp/composer/admin@test-network');
const card = await IdCard.fromArchive(data);
await connectionManager.importIdCard(hyperledgerConfig.adminBusinessNetworkCardName, card);
logger.info(`the card is loaded ${card}`);
//
const composerConnection = await connectionManager.createBusinessNetworkConnection('admin@test-network');
logger.info(`business network connection for ${hyperledgerConfig.adminBusinessNetworkCardName} has been successfully connected`);
```
Connection manager code
```
createBusinessNetworkConnection(cardName: string): Promise
[ ](https://chat.hyperledger.org/channel/composer?msg=kJE3w9SZNedgRFRRf) @mahoney1 Haaa.It can work.As you tell me,I use the docker-compose absolutely,and it can restart again.I think the startFabric.sh tool has removed all container and recreate them again.So the new container doesn't have the chaincode.Thank you very much.
Has joined the channel.
Get the Composer runtime (0.16.5) is not compatible with client (0.16.3) when I connect to a Blockchain in Composer Playground. How do I resolve the different version cause npm install -g composer-playground says it install composer-playground@0.16.5 but the version number is still 0.16.3 on the opening string
Get the error "Composer runtime (0.16.5) is not compatible with client (0.16.3)" when I connect to a Blockchain in Composer Playground.
How do I resolve the different version because
npm install -g composer-playground says it install composer-playground@0.16.5
but the version number is still 0.16.3 on the opening screen
composer-cli@0.16.5
Get the error "Composer runtime (0.16.5) is not compatible with client (0.16.3)" when I connect to a Blockchain in Composer Playground.
How do I resolve the different version because
npm install -g composer-playground says it install composer-playground@0.16.5
but the version number is still 0.16.3 on the opening screen
*screen
team, is there any tutorial or guide on how to update an existing network and angular app (if needed) to work with latest version, to avoid copy pasting the previous code to the new network and app when updating to the latest composr version? how would it be if I am running in a production enviroment to update without stoping the network ?
Has joined the channel.
i would like to install Hyperledger composer locally on Windows 10
I see no instructions available for Windows OS but only for Mac and other OS
can some one plz help me
Has joined the channel.
If composer does not support IN syntax then what do I want to achieve the same effect?
@mahoney1 You told me that each business network (from network start instantiation) has a chaincode container (iwith the peer name).
Do I need those Containers?
I Stopped them and every thing works!
Why do I need them?
If composer does not support IN syntax then what do I do to achieve the same effect?
[ ](https://chat.hyperledger.org/channel/composer?msg=vDDcfFyPfM2zTwcL8) @syedrazi82 Hi, Windows is not supported officially yet, but you must have windows 10 Pro not Home Version to be able to run composer manually process. More Iformation and instructions are available at this link: https://github.com/hyperledger/composer/issues/65
[ ](https://chat.hyperledger.org/channel/composer?msg=vDDcfFyPfM2zTwcL8) @syedrazi82 Hi, Windows is not supported officially yet, but you must have windows 10 Pro not Home Version to be able to run composer manually process. More Information and instructions are available at this link: https://github.com/hyperledger/composer/issues/65
Thanks.
I started composer rest server in multi user mode, using github oAuth authentication. I opened one session in chrome and one in firefox (to emulate as two different users) and authenticated using github. Now in one browser I wish to use one network card and in chrome another network card. Now when I import a network card in firefox same is reflected in Chrome as well. Doesn't it defeats purpose of authourisation ? So if one user is using its network card to perform transaction the other user will also be using the same network card as its been set as default for composer rest server. How to deal with scenario ?
I started composer rest server in multi user mode, using github oAuth authentication. I opened one session in chrome and one in firefox (to emulate as two different users) and authenticated using github. Now in one browser I wish to use one network card and in chrome another network card. Now when I import a network card in firefox same is reflected in Chrome as well. Doesn't it defeats purpose of authourisation ? So if one user is using its network card to perform transaction the other user will also be using the same network card as its been set as default for composer rest server. How to deal with scenario ?
@mahoney1
when created new asset, how to i can create transaction transfer asset?
Clipboard - March 7, 2018 8:21 AM
[ ](https://chat.hyperledger.org/channel/composer?msg=dxybkFykKyGX6cvKW) @waleed which version? yes if you want to work with the business network - example of the container for v0.17.5 shown below -> you can still connect to a business network deployed to the web connector in playground without a container deployed.
[ ](https://chat.hyperledger.org/channel/composer?msg=LJEv8MDynsB3XKFvd) @mahoney1 Thanks a lot, I gave it a try on ubuntu and managed to pass this step.
[ ](https://chat.hyperledger.org/channel/composer?msg=xxmBkEgkHyWCcPgHX) @LadarX did you uninstall previous composer playground first?
[ ](https://chat.hyperledger.org/channel/composer?msg=gESagNPAtX8TDfeai) @Jaline IN isn't supported by CouchDB, pls raise a Stack Overflow with what you are trying to achieve (incl model / query ) and we'lll see what can be done. Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=H4nCu8k6agDdgqMxd) @zasamen I did. Most probably it was a Windows support issue. I didn't have time to dig deeper so I switched to ubuntu and it passed there.
Thanks Zasamen
Clipboard - March 7, 2018 9:32 AM
[ ](https://chat.hyperledger.org/channel/composer?msg=2tA8TvYhqjrtD7kMZ) @mahoney1 I use 0.16.5
Has joined the channel.
Hello, I am a newer for hyperledger composer ,
Hello, I am a new for hyperledger composer . I have a problem. I have a random method in transaction method of logic.js , like `tx.asset.value = Math.random();`, and I found different value in each peers. so the transaction should not be commit . But it successed . so why?
Clipboard - March 7, 2018 5:03 PM
Has joined the channel.
A question about environment. Can composer be installed and run in CentOS
?
The pre-requisites says no: "Operating Systems: Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12
"
Why no?
@mahoney1 I've check all connection profiles. Where can I find this parameter "url"?
```
composer network start -c PeerAdmin@byfn-network-org1 -a hc-blockchain.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C ./admin-pub.pem
Starting business network from archive: hc-blockchain.bna
Business network definition:
Identifier: hc-blockchain@0.3.0
Description: Smart contract implementation for simple business process, Client - Seller - Courier model
TypeError: Parameter "url" must be a string, not undefined
Command failed
```
@mahoney1 I've check all connection profiles. Where can I find this parameter "url"?
```
composer network start -c PeerAdmin@byfn-network-org1 -a hc-blockchain.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C ./admin-pub.pem
Starting business network from archive: hc-blockchain.bna
Business network definition:
Identifier: hc-blockchain@0.3.0
Description: Smart contract implementation for simple business process, Client - Seller - Courier model
TypeError: Parameter "url" must be a string, not undefined
Command failed
```
Here connection profile:
```{
"name": "byfn-network-org1",
"type": "hlfv1",
"mspID": "Org1MSP",
"peers": [
{
"requestURL": "grpc://blockchain.iba:7051",
"eventURL": "grpc://blockchain.iba:7053"
},
{
"requestURL": "grpc://blockchain-clone.iba:7051"
}
],
"ca": [
{
"url": "http://blockchain.iba:7054",
"name": "ca.blockchain.iba"
},
{
"url": "http://blockchain.iba:7054",
"name": "ca.blockchain-clone.iba"
}
],
"orderers": [
{
"url": "grpc://blockchain.iba:7050"
}
],
"channel": "cchannel",
"timeout": 300
}```
@mahoney1 Hello. I've check all connection profiles. Where can I find this parameter "url"?
```
composer network start -c PeerAdmin@byfn-network-org1 -a hc-blockchain.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C ./admin-pub.pem
Starting business network from archive: hc-blockchain.bna
Business network definition:
Identifier: hc-blockchain@0.3.0
Description: Smart contract implementation for simple business process, Client - Seller - Courier model
TypeError: Parameter "url" must be a string, not undefined
Command failed
```
Here connection profile:
```{
"name": "byfn-network-org1",
"type": "hlfv1",
"mspID": "Org1MSP",
"peers": [
{
"requestURL": "grpc://blockchain.iba:7051",
"eventURL": "grpc://blockchain.iba:7053"
},
{
"requestURL": "grpc://blockchain-clone.iba:7051"
}
],
"ca": [
{
"url": "http://blockchain.iba:7054",
"name": "ca.blockchain.iba"
},
{
"url": "http://blockchain.iba:7054",
"name": "ca.blockchain-clone.iba"
}
],
"orderers": [
{
"url": "grpc://blockchain.iba:7050"
}
],
"channel": "cchannel",
"timeout": 300
}```
Has joined the channel.
@argman what version of composer are you using ?
[ ](https://chat.hyperledger.org/channel/composer?msg=HXvDtKx2j9tQJF6FD) @davidkel 16.0
[ ](https://chat.hyperledger.org/channel/composer?msg=taJt5wrwe7SnoffG3) @argman I think you you forgot to add event url to the second peer and mspID after the channel
[ ](https://chat.hyperledger.org/channel/composer?msg=taJt5wrwe7SnoffG3) @argman I think you forgot to add event url to the second peer and mspID after the channel
ah sorry yo added mspID
I didin't see it
@waleed I have multi host network and 2nd peer from another host.
@waleed I follow multi org guide. I have multi host network and 2nd peer from another host and another organisation.
what do you have in your endorsement-policy.json
@waleed ```{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
}```
@waleed ```{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
}```
Hello,
Hello,
how to set the Ip Address of the BNA to be able to contact it from a another server.
Like : BNA on VM1, and server on VM2
Thx
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=5XsgGQp4aBBf2Fsq9) Guys, I really need your help)
hello , i'm New in blockchain hyperledger and i want to build my first appliaction with hyperledger composer and fabric, i'm follolwing this tutorila :https://ibm-blockchain.github.io/develop/tutorials/developer-tutorial.html and i need more help
you need to choose your ownb implementation of auth. Don't know what answer you need .
[ ](https://chat.hyperledger.org/channel/composer?msg=ibbqpLcTtGswMfA9D)
Has joined the channel.
Ok, how can I tune my rest server to identify users, that comes? I'm trying to set up my own passport strategy, but the question is how can I not just authenticate users but register too
Ok, how can I tune my rest server to identify users, that comes? I'm trying to set up my own passport strategy, but the question is how can I not just authenticate users but registration too
[ ](https://chat.hyperledger.org/channel/composer?msg=aKprYRyeNkfC5rjc3) @argman mybe you have to use tls certs in your connection profile as mentioned in the tutorial
@Turikalen You need to create a participant and then, IssueIdebtity for him
Like this :
```
participantRegistry.add(participant)
.then((result) => {
bizNetworkConnection.issueIdentity('org.acme.participants.MyParticipant#' + participant.memberId, participant.memberId, { memberId: true })
```
Then, you need to create and import a card for this User
Like this script (usage : script participantId particpantsecret)
```
composer card create -n tutorial-network -p connection.json -u $1 -s $2
composer card import --f $1@tutorial-network.card -n $1
```
[ ](https://chat.hyperledger.org/channel/composer?msg=nPkRmWrmC53vkHP2b) @waleed Why? I can't realize it without TLS?
@mahoney1 I want to query the array. Should not use CONTAINS?My playground is v0.13.2.
When I used CONTAINS it reported an error. Is it because my version is too low as it does not support CONTAINS?
I think it is important because you have to orgs and they communicate with each other. and if your docker containers are configured to use tls, then you have to use it with composer. I am actulay not sure
@argman I think it is important because you have to orgs and they communicate with each other. and if your docker containers are configured to use tls, then you have to use it with composer. I am actulay not sure
@CorentinPacaud Thank you for your answer) and how can I latter conduct transactions on behalf of this user through rest server? It would be great, if I can just pass username or id of member to rest server and he could use relevant card, is it possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=mCnTsfjRToAoreXxC) @waleed Here is another problem. I just ask where I should set "url" parameter. (tls on Fabric disabled)
@Turikalen You need to save the generate secret. In my company we just copy it in a creds.json file (pretty secured, isn't it ? :D )
You can take look here : https://github.com/CorentinPacaud/AutoDemo/blob/master/server/serverAuto.js
Hi,
I try to issue an identity, but I get this response:
✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
What could be the reason?
@CorentinPacaud Thank you again) So you don't use composer-rest-server, you just use your own api, written on nodejs sdk?
Yes
The problem now is I try to put this server on a another machine but I can't connect to the network
@Turikalen If you want to try, the AutoBkc project is a working project with BNA, Ui, and server NodeJs. There is a readme in french
@CorentinPacaud Ok, thank you a lot) you really helped me)
So now, can anyone help me ???
I try to start a nodeServer on Vm 1 (Ip1) and the network is running on VM2 (Ip2).
How can I talk to network with the nodeServer ? For now, I have this error when I try to auth myself :
```
Error: Error trying login and get user Context. Error: Error trying to enroll us er or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
```
@argman Your connection profile is not correct. You cannot define multiple ca's in your example. You need to change
```
"ca": [
{
"url": "http://blockchain.iba:7054",
"name": "ca.blockchain.iba"
},
{
"url": "http://blockchain.iba:7054",
"name": "ca.blockchain-clone.iba"
}
],
```
to
```
"ca": {
"url": "http://blockchain.iba:7054",
"name": "ca.blockchain.iba"
},
```
@argman Your connection profile is not correct. You cannot define multiple ca's. You need to change
```
"ca": [
{
"url": "http://blockchain.iba:7054",
"name": "ca.blockchain.iba"
},
{
"url": "http://blockchain.iba:7054",
"name": "ca.blockchain-clone.iba"
}
],
```
to
```
"ca": {
"url": "http://blockchain.iba:7054",
"name": "ca.blockchain.iba"
},
```
Has joined the channel.
Is there any query or a way to get the metrics such as total number of (Assets, Participants, transactions) ?
@ranjithkumarmv maybe this ? https://hyperledger.github.io/composer/reference/query-language.html
[ ](https://chat.hyperledger.org/channel/composer?msg=bxQkR3xnGH76FDA2A) @DennisM330 thanks for raising https://github.com/hyperledger/composer/issues/3540 - currently only eventID was accessible, not custom fields.
[ ](https://chat.hyperledger.org/channel/composer?msg=bxQkR3xnGH76FDA2A) @DennisM330 thanks for raising https://github.com/hyperledger/composer/issues/3540 on querying eventsEmitted as part of a historian record - currently only eventID was accessible, not custom fields.
[ ](https://chat.hyperledger.org/channel/composer?msg=hNBhm9iBiy2or4YTQ) @davidkel Thanks, but I've got the same error.
[ ](https://chat.hyperledger.org/channel/composer?msg=hNBhm9iBiy2or4YTQ) @davidkel Thanks, but I've got the same error.
```
Starting business network from archive: hc-blockchain.bna
Business network definition:
Identifier: hc-blockchain@0.3.0
Description: Smart contract implementation for simple business process, Client - Seller - Courier model
TypeError: Parameter "url" must be a string, not undefined
Command failed
```
@CorentinPacaud I am looking for Count Kind Queries (if we use select * and having millions of transactions) how to arrive at the count ?
@ranjithkumarmv try like SQL : Select count(*)
Has joined the channel.
Has joined the channel.
hey what IDE do you use for hyperledger composer other than visual studio
Is there a way I can regenerate REST services using Java in hyperledger composer. I know it can be done for NodeJS
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=6qqDcDqic4cLQTvnm) @ranjithkumarmv https://github.com/hyperledger/composer/issues/2052 we currently have an issue for supporting aggregates like COUNT in Composer query language . Suggest to use something like `array.length ` in your results in your code.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=pNC8am9bJy6cXopk5) @HargobindGupta we support VS Code and Atom as editors -> https://github.com/hyperledger/composer/blob/master/contrib-notes/ide-setup.md
[ ](https://chat.hyperledger.org/channel/composer?msg=5NoL82czizEF4gZ9z) @shankar.borate see comment on Swagger Codegen (4th paragraph) here -> https://github.com/hyperledger/composer/issues/2182#issuecomment-332664485 does that help?
Has joined the channel.
I am newbee to composer. I am trying to install composer on Ubuntu 12.04 LTS running of vagrant 2.0.2 and when I try to install the prerequisites using the following command
[ ](https://chat.hyperledger.org/channel/composer?msg=TKJQn35sgYBFnZR8H) @Jaline there was a fix for CONTAINS applied in v0.15.1 to fix CONTAINs (your playground version is earlier than that). As for searching for custom events in Historian - this is currently an issue as described here _ https://github.com/hyperledger/composer/issues/3540 on querying eventsEmitted as part of a historian record - currently only eventID was accessible, not custom fields_
[ ](https://chat.hyperledger.org/channel/composer?msg=TKJQn35sgYBFnZR8H) @Jaline there was a fix for CONTAINS applied in v0.15.1 to fix CONTAINS (your playground version is earlier than that). As for searching for a string in custom eventsEmitted[] array in Historian - this is currently an issue as described here _ https://github.com/hyperledger/composer/issues/3540 on querying eventsEmitted as part of a historian record - currently only eventID was accessible, not custom fields_
[ ](https://chat.hyperledger.org/channel/composer?msg=TKJQn35sgYBFnZR8H) @Jaline there was a fix for CONTAINS applied in v0.15.1 to fix CONTAINS (your playground version is earlier than that). As for searching for a string in custom eventsEmitted[] array in Historian - this is currently an issue as described here _ https://github.com/hyperledger/composer/issues/3540 on querying an event class based on the systems eventsEmitted[] as part of a historian record - currently only eventID was accessible, not custom fields_
[ ](https://chat.hyperledger.org/channel/composer?msg=2ZKSpoyMwrSiBkTG8)
Any idea how to solve? I am a newbee to composer. I am trying to install composer on Ubuntu 12.04 LTS running of vagrant 2.0.2 and when I try to install the prerequisites; I get error using the following command vagrant@precise64:~$ curl -O --sslv3 https://hyperledger.github.io/composer/prereqs-ubuntu.sh
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (35) error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure
@NeelakantPatel couple of things, we don't support 12.04, only 14.04 (trusty) and 16.04 (xenial) LTS versions and yakkety. So would recommend you upgrade. Also see https://hyperledger.github.io/composer/latest/installing/installing-prereqs which provides more detail but you should remove the `--sslv3` option from your curl command.
@davidkel Thank you! You was right. Now everything works :smile:
[ ](https://chat.hyperledger.org/channel/composer?msg=2ZKSpoyMwrSiBkTG8)
Hi.
In my BN function, I have to hash a string. What is the best way to do this right now? I have found one solution here: https://stackoverflow.com/questions/48852587/hyperledger-composer-hashing-file-sha256 , but that only works in the playground, because the function still uses a require() function.
One other option would be to use https://hyperledger.github.io/composer/integrating/call-out to call a REST API which would hash the string, but I see that this feature is experimantal.
Hi.
In my BN function, I have to hash a string. What is the best way to do this right now? I have found one solution here: https://stackoverflow.com/questions/48852587/hyperledger-composer-hashing-file-sha256 , but that only works in the playground, because the function still uses a require() function.
One other option would be to use https://hyperledger.github.io/composer/integrating/call-out to call a REST API which would hash the string, but I see that this feature is experimantal.
BTW @mahoney1 thanks for help yesterday, the problem I had was on a fabric network
[ ](https://chat.hyperledger.org/channel/composer?msg=jhuYFkrhQsfpERb6n) @CorentinPacaud you need to change the IP to contact your CA server (it won't find it on 127.0.0.1) -> The error comes from you trying to communicate with your ca server. So however you configured your ca server, the connection profile definition of the ca used in the business network card isn't correctly setup to communicate with your CA. See answer at the end of this S/O -> https://stackoverflow.com/questions/48095108/error-when-trying-to-carry-out-operations-in-hyperledger-composer-rest-api - also whether your CA server is configured to expect TLS or non-TLS (and use http / https as appropriate in your connection.json)
Has joined the channel.
@mahoney1 I dont think it answer my question.
I have my BNA running on a server, says with the ipAddress X.
Now, I create a NodeJs server to request the BNA. The NodeJs server works perfectly on same server Ip X, but give the error above when running on an another server (ip Y)
@mahoney1
This is my CA config.
How to dedfine the Listen Address ?
```
services:
ca.org1.example.com:
image: hyperledger/fabric-ca:$ARCH-1.0.4
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca.org1.example.com
# - FABRIC_CA_SERVER_CA_CERTFILE=/etc/hyperledger/fabric-ca-server-config/org1.example.com-cert.pem
# - FABRIC_CA_SERVER_CA_KEYFILE=/etc/hyperledger/fabric-ca-server-config/a22daf356b2aab5792ea53e35f66fccef1d7f1aa2b3a2b92dbfbf96a448ea26a_sk
ports:
- "7054:7054"
command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/CA_PRIVATE_KEY -b admin:adminpw -d'
volumes:
- ./crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config
container_name: ca.org1.example.com
```
"error": {
"statusCode": 500,
"message": "Failed to import identity. TypeError: this.wallet.put is not a function"
Any idea why?
I am trying to do the
composer card export -f Mleow_exp.card -n mLeow@property-network ; rm Mleow.card
importing it to the wallet
Has joined the channel.
Hello, Greetings from Deepak.
I am new to this channel as well as to the hyperledger composer
I am trying to understand components of composer and trying to run sample projects like tutorial-network, I learnt how model and lib/logic.js works but its being difficult to use my understanding in the project I am doing.
Hi, I make tutorial: https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html and works fine, but how configure multi org betwen several machine? Not in localhost
I have created skeleton project using yo but its being difficult to convert it to my project..my project is also very simple, not so tough.
Has joined the channel.
Hi everyone, I'd like to join the Hyperledger Composer RocketChat channel ...Many Thanks
Hello, I have a business network up and running on a single peer network. I've inserted a thousand or so assets and the performance has dropped dramatically, to the point I can no longer get asset records via my REST server due to timeouts. Even with filters (such as limit:1), it continues to timeout. Any ideas on how I can improve the performance? When accessing the data in couchdb, the response seems very quick still, it seems to be a slowdown in the rest server component.
@y2255236 are you using a persistent data store?
can somebody provides me composer examples with couple of assets, couple of participants and couple of transactions and in working condition?
I need simple one
@d8bhatta you can find all the playground sample networks here https://github.com/hyperledger/composer-sample-networks
composer card export -f jdoe_exp.card -n jdoe@trade-network ; rm jdoe.card @mahoney1 jdoe_exp will change the card to jdoe_exp
but the tutorial shown that when you import is a jdoe.card
but you have remove it
@CorentinPacaud Your business network cards all contain connection profiles. Connection profiles describe among other things the URI's required to connect to the various fabric server's such as Peers, Orderers, CA's. As someone who is building a fabric network you need to create an appropriate connection profile that allows you to connect to that fabric network. That connection profile then needs to be used for any business network cards created,
@CorentinPacaud Your business network cards all contain connection profiles. Connection profiles describe among other things the URI's required to connect to the various fabric server's such as Peers, Orderers, CA's. As someone who is building a fabric network you need to create an appropriate connection profile that allows you to connect to that fabric network. That connection profile then needs to be used for any business network cards created
ok.
@y2255236 unfortunately the Fabric SDK does not respect the setting of limit/skip required to make this faster via pagination ... there is a default set at the moment which means that no matter what you do, all of the assets are retrieved from CouchDB before being serialised and sent to the REST server, where they are deserialised and filtered
Now, what do I need to do ? I copied the generate admin.card in the other server but I have this error :
`Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'admin' and the identifier '6432991dc54be0d33305661b70dde841e05705127b6b3d63eb7450238b6cbb6f', has not been registered)
`
@davidkel
Di I need to do this by the way ?
@CorentinPacaud if the generated card file you refer to was created using a secret, then that card file is a single shot card file. ie you can only import that file once.
What you need to do is import that card file into the card store and ping it. Then export that card into a new card file and share that one.
@CorentinPacaud if the generated card file you refer to was created from a secret, then that card file is a single shot card file. ie you can only import that file once.
What you need to do is import that card file into the card store and ping it. Then export that card into a new card file and share that one.
@CorentinPacaud if the generated card file you refer to was created with a secret, then that card file is a single shot card file. ie you can only import that file once.
What you need to do is import that card file into the card store and ping it. Then export that card into a new card file and share that one.
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying login and get user Context. TypeError: this.wallet.contains is not a function",
"stack": "Error: Error trying login and get user Context. TypeError: this.wallet.contains is not a function\n at client.getUserContext.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:285:34)\n at
Hi guys I am facing this issue, any way to get around it?
composer 0.18
@davidkel ouch ok.... pretty hard...
any tuto ?
is ok I mange to export the card and I am now face with this issue
[ ](https://chat.hyperledger.org/channel/composer?msg=4R3j3SdQDNj8syfCp) @mikeleow - correct, thanks - you import the `jdoe_exp.card` (and the associated graphic needs to change to reflect that - which it will this week)
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying login and get user Context. TypeError: this.wallet.contains is not a function",
"stack": "Error: Error trying login and get user Context. TypeError: this.wallet.contains is not a function\n at client.getUserContext.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:285:34)\n at
Any workaround this?
@davidkel IT WORKS !!!
Has joined the channel.
hi guys, i want to know how to create a login page for hyperledger composer application
Hi guys, what is the best way to resolve Relationship of a Resource? I there a way to fetch it as a Resource along with my main Resource from a query?
[ ](https://chat.hyperledger.org/channel/composer?msg=HBGW9q22RSZb8L4rz) @mikeleow sorry you're having issues. It appears something isn't right with connector -> seen with playground here too -> https://github.com/hyperledger/composer/issues/3536 `this.wallet.put is not a function` - I suggest to therefore use v0.17.5 of Composer to get your persistent dockerized REST server up and running (and that will be using Fabric 1.1 alpha docker images, not RC1 please note
[ ](https://chat.hyperledger.org/channel/composer?msg=HBGW9q22RSZb8L4rz) @mikeleow sorry you're having issues. It appears something isn't right with connector -> seen with playground here too -> https://github.com/hyperledger/composer/issues/3536 `this.wallet.put is not a function` - I suggest to therefore use v0.17.5 of Composer to get your persistent dockerized REST server up and running (and that will be using Fabric 1.1 alpha docker images, not Fabric 1.1 RC1 images, please note. The changes for Google Auth tutorial are going into tomorrows build too fyi -> https://github.com/mahoney1/composer/blob/master/packages/composer-website/jekylldocs/tutorials/google_oauth2_rest.md
[ ](https://chat.hyperledger.org/channel/composer?msg=HBGW9q22RSZb8L4rz) @mikeleow sorry you're having issues. It appears something isn't right with connector -> seen with playground here too -> https://github.com/hyperledger/composer/issues/3536 `this.wallet.put is not a function` - I suggest to therefore use v0.17.5 of Composer `npm install -g composer-cli@17.5 (after npm uninstalling existing composer-cli, composer-rest-server etc) to get your persistent dockerized REST server up and running (and that will be using Fabric 1.1 alpha docker images, not Fabric 1.1 RC1 images, please note. The changes for Google Auth tutorial are going into tomorrows build too fyi -> https://github.com/mahoney1/composer/blob/master/packages/composer-website/jekylldocs/tutorials/google_oauth2_rest.md
[ ](https://chat.hyperledger.org/channel/composer?msg=HBGW9q22RSZb8L4rz) @mikeleow sorry you're having issues. It appears something isn't right with connector -> seen with playground here too -> https://github.com/hyperledger/composer/issues/3536 `this.wallet.put is not a function` - I suggest to therefore use v0.17.5 of Composer `npm install -g composer-cli@17.5` (after npm uninstalling existing composer-cli, composer-rest-server etc) to get your persistent dockerized REST server up and running (and that will be using Fabric 1.1 alpha docker images, not Fabric 1.1 RC1 images, please note. The changes for Google Auth tutorial are going into tomorrows build too fyi -> https://github.com/mahoney1/composer/blob/master/packages/composer-website/jekylldocs/tutorials/google_oauth2_rest.md
[ ](https://chat.hyperledger.org/channel/composer?msg=HBGW9q22RSZb8L4rz) @mikeleow sorry you're having issues. It appears something isn't right with connector -> seen with playground here too -> https://github.com/hyperledger/composer/issues/3536 - `this.wallet.put is not a function` - I suggest to therefore use v0.17.5 of Composer `npm install -g composer-cli@17.5` (after npm uninstalling existing composer-cli, composer-rest-server etc) to get your persistent dockerized REST server up and running (and that will be using Fabric 1.1 alpha docker images, not Fabric 1.1 RC1 images, please note. The changes for Google Auth tutorial are going into tomorrows build too fyi -> https://github.com/mahoney1/composer/blob/master/packages/composer-website/jekylldocs/tutorials/google_oauth2_rest.md
[ ](https://chat.hyperledger.org/channel/composer?msg=XJkgBJwhWxgwSmWXS) @evin 4 you can use resolve(id) or resolveAll() in your client application - but these are not available in the runtime (eg, Transaction Processors) and resolve is not available to Composer queries - but you can use Loopback filters on your REST API /GET query using `{"include":"resolve"}` as the filter. An example of a particular asset id would look like this: `{"where":{"shipmentId":1000}, "include":"resolve"}`
[ ](https://chat.hyperledger.org/channel/composer?msg=5adJWqSTK5rkMuudR) @awash see here -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc and here -> for more information and also see answer part 2 on user registration below -> https://stackoverflow.com/questions/48893410/hyperledger-composer-web-application-user-authentication ....Creating a login page obviously means you develop your web app to use an authentication strategy and then once they have an appropriate token the users can consume the business network using their blockchain identity (contained inside a business network card in Composer) see more here on authentication -> https://hyperledger.github.io/composer/integrating/enabling-multiuser
[ ](https://chat.hyperledger.org/channel/composer?msg=hbhrEbvxoNjS9uHdB) @nkl199 Thank you. That explains the latency. Do you know if composer queries are affected by this as well?
@mahoney1 thank you for your response, actually i'm using composer-client library directly for querying. here is how my code looks like
Clipboard - March 7, 2018 1:32 PM
its a bit dirty but works and its about 3-4 seconds faster to resolve each relationship than using `registry.resolve` on main resource
it takes about 15 seconds to fetch 29 records with all relationships resolved this way, if i don't resolve relationships it takes 2 seconds to fetch 29 records
the query is simple `SELECT org.myorg.MyAsset WHERE ((status == _$status))`
@mahoney1 is calling `resolve` really the only option here?
i wasn't resolving resources asynchronously, was able to bring the query down to ~7 secs, still extremely slow. I went over `loopback-connector-composer` code to see if they resolve resources any other way but they seem to be doing the exact same thing :worried:
This performance is surprising since native CouchDB to simply get objects should be fast. Does anyone know if this is slow due to ACL rules being applied or if there's any other opportunities to optimize?
I see these issues are zooming in on the performance bottlenecks - https://github.com/hyperledger/composer/issues/2190, https://github.com/hyperledger/composer/issues/2576, https://github.com/hyperledger/composer/issues/3152
[ ](https://chat.hyperledger.org/channel/composer?msg=tkAKnr9qMLfQosk3w) @davidkel helloI updated composer, but still et the same message.
@Hefziben It is still asking for the connection profile name ?
Has joined the channel.
Has joined the channel.
Hi
Hi @davidkel could you help me with the developer tutorial
Hi can anyone aswre this question posted in stackoverflow
I'm a student in the coursera course
I'm doing this tutorial https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
but I'm stopped a this step composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card
it simply fails
Hi somebody there
???
I have this images
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c6c0ba63abf5 hyperledger/fabric-peer:x86_64-1.0.4 "peer node start --pâ¦" 5 minutes ago Up 5 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
316045da6039 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-entâ¦" 5 minutes ago Up 5 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
324e2ff2d550 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-seâ¦" 5 minutes ago Up 5 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
41989f7761c1 hyperledger/fabric-orderer:x86_64-1.0.4 "orderer" 5 minutes ago Up 5 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c6c0ba63abf5 hyperledger/fabric-peer:x86_64-1.0.4 "peer node start --pâ¦" 5 minutes ago Up 5 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
316045da6039 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-entâ¦" 5 minutes ago Up 5 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
324e2ff2d550 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-seâ¦" 5 minutes ago Up 5 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
41989f7761c1 hyperledger/fabric-orderer:x86_64-1.0.4 "orderer" 5 minutes ago Up 5 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c6c0ba63abf5 hyperledger/fabric-peer:x86_64-1.0.4 "peer node start --pâ¦" 5 minutes ago Up 5 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
316045da6039 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-entâ¦" 5 minutes ago Up 5 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
324e2ff2d550 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-seâ¦" 5 minutes ago Up 5 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
41989f7761c1 hyperledger/fabric-orderer:x86_64-1.0.4 "orderer" 5 minutes ago Up 5 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c6c0ba63abf5 hyperledger/fabric-peer:x86_64-1.0.4 "peer node start --pâ¦" 5 minutes ago Up 5 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
316045da6039 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-entâ¦" 5 minutes ago Up 5 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
324e2ff2d550 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-seâ¦" 5 minutes ago Up 5 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
41989f7761c1 hyperledger/fabric-orderer:x86_64-1.0.4 "orderer" 5 minutes ago Up 5 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c6c0ba63abf5 hyperledger/fabric-peer:x86_64-1.0.4 "peer node start --pâ¦" 5 minutes ago Up 5 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
316045da6039 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-entâ¦" 5 minutes ago Up 5 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
324e2ff2d550 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-seâ¦" 5 minutes ago Up 5 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
41989f7761c1 hyperledger/fabric-orderer:x86_64-1.0.4 "orderer" 5 minutes ago Up 5 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c6c0ba63abf5 hyperledger/fabric-peer:x86_64-1.0.4 "peer node start --pâ¦" 5 minutes ago Up 5 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
316045da6039 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-entâ¦" 5 minutes ago Up 5 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
324e2ff2d550 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-seâ¦" 5 minutes ago Up 5 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
but I can't deploy the networh
network
Hi all, I wrote a module to use Amazon S3 as card store, based on the ibmcos implementation from ampretia for users that do not have an IBM account
This will work only with composer 0.18.0 as specified in the composer documentation
https://github.com/Pop-Code/composer-wallet-s3
Hi all, I wrote a module that use Amazon S3 as card store, based on the ibmcos implementation from ampretia for users that do not have an IBM account to store cards in the cloud
This will work only with composer 0.18.0 as specified in the composer documentation
https://github.com/Pop-Code/composer-wallet-s3
Hi all, I wrote a module that uses Amazon S3 as card store, based on the ibmcos implementation from ampretia for users that do not have an IBM account to store cards in the cloud
This will work only with composer 0.18.0 as specified in the composer documentation
https://github.com/Pop-Code/composer-wallet-s3
https://stackoverflow.com/questions/49162396/installing-runtime-for-business-network-undefined-error-error-trying-instal
Quick question, gentlemen! what are the api to query channel and create channel?
Sorry but how do I install v0.17.5?
https://github.com/hyperledger/composer/pull/3538
By seeing this, its still not fixed yet righT?
[ ](https://chat.hyperledger.org/channel/composer?msg=4o9N9qiceyidZyW9y) @Rmannn Thank You!
[ ](https://chat.hyperledger.org/channel/composer?msg=8hyePZZMLT47Td9za) @mikeleow to install dev version you have to clone the repo, then run npm install inside the directory, this will install deps and will compile each module using lerna.
[ ](https://chat.hyperledger.org/channel/composer?msg=8hyePZZMLT47Td9za) @mikeleow to install dev version you have to clone the repo, then run npm install inside the directory, this will install deps and will compile each module using lerna. Then to work with each packages you need, you can do a npm link inside each package.
[ ](https://chat.hyperledger.org/channel/composer?msg=8hyePZZMLT47Td9za) @mikeleow to install dev version you have to clone the repo, then run npm install inside the directory, this will install deps and will compile each module using lerna. Then to work with each packages you need, you can do a npm link inside each package. You should also add binaries to your path. One last thing, when peer images are installed, they will run different runtime version, so will have to start the peer in dev mode, and start the runtime manually. The contributing note in the docs of the composer repository contains details that might helps you.
[ ](https://chat.hyperledger.org/channel/composer?msg=8hyePZZMLT47Td9za) @mikeleow to install dev version you have to clone the repo, then run npm install inside the directory, this will install deps and will compile each module using lerna. Then to work with each packages you need, you can do a npm link inside each package followed by a npm link [package name] in your app directory. You should also add binaries to your path to be able to work with the good version in terminal. One last thing, when peer images are started, they will run different runtime version (from npm), so you will have to start the peer in dev mode, and start the runtime manually. The contributing notes in the docs of the composer repository contains details that might helps you. Hope this will help you !
[ ](https://chat.hyperledger.org/channel/composer?msg=8hyePZZMLT47Td9za) @mikeleow to install dev version you have to clone the repo, then run npm install inside the directory, this will install deps and will compile each module using lerna. Then to work with each packages you need, you can do a npm link inside each package followed by a npm link [package name] in your app directory. You should also add binaries to your path to be able to work with the good version in terminal. One last thing, when peer images are started, they will run different runtime version (from npm), so you will have to start the peer in dev mode, and start the runtime manually. The contributing notes in the docs of the composer repository contains details that might help you. Hope this will help you !
@Rmannn Thank you!1
I shall take a look at it now
Do you guys think this https://developer.ibm.com/blockchain/2018/03/05/ibm-blockchain-platform-releases-starter-plan-developers-one-stop-shop/ will be able to transfer from our current progress work?
Has joined the channel.
Has joined the channel.
Hi @rickr, does fabric composer supports chaincode invoke chaincode?
Has joined the channel.
Just curious!
Have anybody implemented single blockchain on multiple machines(multi-peer! peers on different physical machines)?? If yes, then is it using this document https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine or any other?
Just curious!
Have anybody successfully implemented single blockchain on multiple machines(multi-peer! peers on different physical machines)?? If yes, then is it using this document https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine or any other?
@mikeleow You can install specific versions of composer, for example to install 0.17.6, first you need to uninstall composer-cli, composer-playground, composer-rest-server by using the command `npm uninstall -g
@absingh0 The ability to do that is in the `next` release utilising a `getNativeAPI` function in a Transaction Processor Function. See https://hyperledger.github.io/composer/next/tutorials/invoke-composer-network for an example on how to call another business network, but the principle is the same for non composer chaincode.
@cammachusa composer doesn't provide api's to do this, you would need to look at the fabric node-sdk for that capability
@davidkel when is the next release?
we currently have 2 releases. `latest` and `next`. Both of which are being published. `latest` is currently at version 0.16.5 and `next` is currently at 0.18.0. documentation for the next release can be found https://hyperledger.github.io/composer/next
@davidkel Thanks alot :)
thank you!
cd ~/fabric-tools
export FABRIC_VERSION=hlfv11
./downloadFabric.sh
There's a typo in the documentation
fyi
for newbies, it might face error and cause a lot of questions
hlfv11 == hlfv1
@mahoney1
Thank you for answering my question before, very important, helped me a lot. Now if I want to use a barcode to get all the transaction history information for a prodItem (including the previous transaction). How do I do on a hyperledger composer?
@mikeleow if you are looking at the `next` documentation then that is correct it is supposed to be `hlfv11`
oh wait nvm, wrong
it is hlfv11
my bad
@mikeleow in the 0.18.x 'next' release Composer docs -> https://hyperledger.github.io/composer/next/installing/development-tools.html `export FABRIC_VERSION=hlfv11 is correct (not a typo as shown in those docs) ie to get Fabric v1.1 rc1 images/runtime. In the 'latest' Composer docs - https://hyperledger.github.io/composer/latest/installing/development-tools.html - FABRIC_VERSION is set to hlfv1 to get Fabric v1.0.x images
Hi,
I am looking for someone that has experience with more complex ACL rules.
please whisper me :-)
Hello Martin. I think I can help you with that.
I have been referred to something cool, let me fetch that to you; you could almost do anything you want with it.
You could write a whole runtime function as ACL.
@aneb could you let me know if you're still having REDIS issue... would also be interested in the MongoDB variant.
All you have to do is the following:
1- create a .js file in lib folder.
2- Create an ACL function by simply providing the following
/**
* some comment
*@param {resource} parameterone this could be a participant or a resource or even a transaction
*@param {resource} yoursecondparameter dummy comment as usual
*@return {boolean}
*/
function WhateverFunctionName (parameterone, yoursecondparameter) { // body and make sure to return true or false}
3- just call the function by name in the condition section :)
You can create whatever complex rules by doing that :)
@MartinKrmer
I think I have a github link with an example.
Error: Error trying to ping. Error: Composer runtime (0.17.6) is not compatible with client (0.18.0)
Can I ask what did I installed wrongly
the client
as followed
Has joined the channel.
Hello there.
I tried asking in the Fabric channel, without much interest, but maybe you guys might have an opinion on this topic:
I'm considering using HLF in a production system, which must first go through a POC stage in prototyping before going to the dev teams for the production system.
From what I've understood: Composer uses a single "generic" chaincode to emulate all the possible ones we might code in Composer.
So it looks like it's a really big "single point of failure", isn't it?
Now, I'm wondering if Composer is "fine for prototyping" but "to be avoided in production" because of that? (I'm looking at the DAO failure, e.g.)
Or if one is prototyping something in Composer, it's not really comparable to the actual way to do it using real chaincodes and so one is kind of compelled to either use Composer in Prod afterwards, or to prototype directly using the actual Fabric if one wants native Go code in Prod?
(I'm currently considering either Composer or directly Fabric to build some new component, and since our dev team does not know Composer, neither Fabric, I've got to decide if it makes sense to start with Composer and later go on with "native" chaincodes, or if we should directly start using Fabric without any abstraction... And I'd value very much your opinion since you are more used to those than I am.)
[ ](https://chat.hyperledger.org/channel/composer?msg=uaF6up23ZxEELgJcf) @MartinKrmer have you tried the incremental-build ACL tutorial (will work for 0.16.x or the 0.18.x 'next' stream) ? https://hyperledger.github.io/composer/next/tutorials/acl-trading
[ ](https://chat.hyperledger.org/channel/composer?msg=AKFpck8ZDGM8cRBYG) @mikeleow hi - its like you did an `npm install -g composer-cli@17.6` and your REST server Dockerfile is using `FROM hyperledger/composer-rest-server:next ` - this will probably need to be `FROM hyperledger/composer-rest-server:17.6` to be in sync with your composer installed environment
[ ](https://chat.hyperledger.org/channel/composer?msg=AKFpck8ZDGM8cRBYG) @mikeleow hi - its likely you did an `npm install -g composer-cli@17.6` and your REST server Dockerfile is using `FROM hyperledger/composer-rest-server:next ` - this will probably need to be `FROM hyperledger/composer-rest-server:17.6` to be in sync with your composer installed environment
[ ](https://chat.hyperledger.org/channel/composer?msg=AKFpck8ZDGM8cRBYG) @mikeleow hi - its likely you did an `npm install -g composer-cli@17.6` and your REST server Dockerfile is using `FROM hyperledger/composer-rest-server:next ` - this will probably need to be `FROM hyperledger/composer-rest-server:17.6` to be in sync with your composer installed environment. If not the dockerized REST server, then just plain `npm install -g composer-rest-server@17.6`
[ ](https://chat.hyperledger.org/channel/composer?msg=AKFpck8ZDGM8cRBYG) @mikeleow hi - its likely you did an `npm install -g composer-cli@17.6` and your REST server Dockerfile is using `FROM hyperledger/composer-rest-server:next ` - this will probably need to be `FROM hyperledger/composer-rest-server:0.17.6` to be in sync with your composer installed environment. If not the dockerized REST server, then just plain `npm install -g composer-rest-server@17.6`
@mahoney1 cool thanks! I think I did 0.17.6
Will try it again
What about the fabric driver?
Since one is using rc driver and one is using alpha driver
Hi All. I'm trying to deploying the REST server for a business network following the instruction on composer website. When I try to run the docker container "myorg/my-composer-rest-server" I receive this error:
```
Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: Connect Failed
It will be retried for the next request.
Error: Error trying to ping. Error: Error trying to query business network. Error: Connect Failed
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)
at
@mikeleow you're welcome.... just checked the docker tags should be 0.17.6. In my last post to you, mentioned what goes with what -> chat.hyperledger.org/channel/composer?msg=3Qm9TFKvdCtcKJScc or see this 'ready reckoner' table for summary -> https://github.com/hyperledger/composer/wiki
@mahoney1 noted, thanks for all help. Will try it out tonite!
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=3fq662bKwNP5phFnP) @Stecec hi there, can you tell me which Composer doc you followed ? If its from 'next' stream -> https://hyperledger.github.io/composer/next/integrating/integrating-index then there are issues with v0.18.0 and REST server deploy (if you're not sure, just type `composer -v` on the command line or `docker ps |grep rest` and post. Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=3fq662bKwNP5phFnP) @Stecec hi there, can you tell me which Composer doc you followed ? If its from 'next' stream -> https://hyperledger.github.io/composer/next/integrating/integrating-index then there are issues with v0.18.0 and REST server deploy (if you're not sure, just type `composer -v` on the command line or `docker ps |grep rest` and post - can get an indication). Thanks.
A query on an enumeration directly in the Composer rest server says you can only select assets, participants, and transactions. Would like to use api for drop down list for an enumeration. Is this not possible?
Has joined the channel.
Does Hyperleadger composer is IBM Proprietaries ?
Has left the channel.
Has joined the channel.
@manishpparmar no, it's open source under the Apache 2.0 license, and owned by the Linux Foundation Hyperledger Project. IBM contributed the original code and continue to work it, but anyone is welcome to come along and start contributing as well :smiley:
Great!! SStone1
I am beginner for the blockchain technology, and acquiring the in-dept knowledge before jumping to implemention
Hello; @sstone1 what runtime APIs are supported if we have ACL utility function?
Can we query assets or fetch nested resources; I would like more elaboration on that.
Hi, I make tutorial: https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html and works fine, but how configure multi org betwen several machine? Not in localhost
Hi everyone. I've been struggling with this for sometime now, till i figured out the exact reason. Could be a bug.
```
.then(function () {
return getParticipantRegistry('com.contrachain.User');
})
.then(function (userRegistry) {
return userRegistry.updateAll(updatedUsers);
})
.then(function() {
return getAssetRegistry('com.contrachain.Order');
})
.then(function (orderRegistry) {
console.log(updatedAssets);
return orderRegistry.updateAll(updatedAssets);
})
.catch(function (error) {
console.log(error);
});
```
The userRegistry is getting updated but not the orderRegistry
But when i interchange the two, like below
```
.then(function () {
return getParticipantRegistry('com.contrachain.User');
})
.then(function (userRegistry) {
return userRegistry.updateAll(updatedUsers);
})
.then(function() {
return getAssetRegistry('com.contrachain.Order');
})
.then(function (orderRegistry) {
console.log(updatedAssets);
return orderRegistry.updateAll(updatedAssets);
})
.catch(function (error) {
console.log(error);
});
```
```
.then(function () {
return getParticipantRegistry('com.contrachain.User');
})
.then(function (userRegistry) {
return userRegistry.updateAll(updatedUsers);
})
.catch(function (error) {
console.log(error);
});
```
```
.then(function() {
return getAssetRegistry('com.contrachain.Order');
})
.then(function (orderRegistry) {
console.log(updatedAssets);
return orderRegistry.updateAll(updatedAssets);
})
.then(function () {
return getParticipantRegistry('com.contrachain.User');
})
.then(function (userRegistry) {
return userRegistry.updateAll(updatedUsers);
})
.catch(function (error) {
console.log(error);
});
```
Now the orderRegistry is getting updated but not the userRegistry
No error is catched.
[ ](https://chat.hyperledger.org/channel/composer?msg=ny3863dB4aG2uAfA3) @MuhammadSalah on queries, we don't support nesting of resources per se ; loopback filters on the REST APIs can get resolved relationships when querying resources there ; on ACLs, we don't currently support `requires` in the runtime but currently if you include ACL utility functions in accompanying scripts in your business network archive then the ACLs can utilise these as conditional tests.
So I cant fetch a nested resource on ACL validation condition?
Has joined the channel.
User User_1 added by ShereenSallam.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=WMdFX8dA5rHAixFAe) @DennisM330 hi there, yes it should be possible - so you're calling a query endpoint defined something like `query enumquery {
description: "Select all"
statement:
SELECT org.acme.trading.Asset
WHERE (size == 'LARGE')
} ` - can you paste the error you're getting ?
[ ](https://chat.hyperledger.org/channel/composer?msg=o6jwqwq9KyBAwdyb7) @MuhammadSalah you can compare the condition values by stepping through the resource relationships, yes - see examples -> https://hyperledger.github.io/composer/reference/acl_language and this test ACL is an example of such navigation -> https://github.com/hyperledger/composer/blob/master/packages/composer-tests-functional/systest/data/accesscontrols.acl#L132
@sun337 try ``` .then(function () {
return getParticipantRegistry('com.contrachain.User')
.then(function (userRegistry) {
return userRegistry.updateAll(updatedUsers);
})
.then(function() {
return getAssetRegistry('com.contrachain.Order')
.then(function (orderRegistry) {
// console.log(updatedAssets);
return orderRegistry.updateAll(updatedAssets);
})
.catch(function (error) {
console.log(error);
});``` it should work
Alright. I'll try that
@mahoney1 No, the person I am working with tried to simply query the enumeration itself not the asset containing the enumeration property. VS Code catches this right away and tells you that this is not possible
[ ](https://chat.hyperledger.org/channel/composer?msg=q5hAxb4myMTuYdqNk) @mahoney1
This way, ONLY orderRegistry is getting updated. I'm using composer v0.16.4 playground.
This is weird considering userRegistry was being updated earlier when i did this
https://chat.hyperledger.org/channel/composer?msg=9RbdiG6iZ9MChrm2T
[ ](https://chat.hyperledger.org/channel/composer?msg=6S8CE4CykMNWzfA4n) @DennisM330 I see what you mean :) Well Its not possible at the moment / but get the use case,
[ ](https://chat.hyperledger.org/channel/composer?msg=6S8CE4CykMNWzfA4n) @DennisM330 I see what you mean :) Well Its not possible at the moment / but get the use case, Might be worth raising an issue to query the model declaration itself so you can get the list, as you say
[ ](https://chat.hyperledger.org/channel/composer?msg=WgkuNumbWdGHELXGm) @piotrek94 see this tutorial examples here -> https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f and here https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602
@mahoney1 Thank you so much; I have checked the ACL rules in the github, perfect!!!
Hello everyone. After upgrading Composer from v0.17.6 to v0.18.0 and Fabric Alpha to RC1, everything works fine a part the ORDER BY option when querying the composer-rest-server.
Running the query with a simple SELECT / WHERE statements I still receive the correct response, but adding the ORDER BY option I receive a 500 error with the following stack:
```
Error: Error trying to query business network. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Couch DB Error:no_usable_index, Status Code:400, Reason:No index exists for this sort, try indexing by the sort fields.\n at channel.queryByChaincode.then.catch ([...]/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:820:34)\n at
Hello.
Simple question: how to create the asset identity (ID) field value with hyperledger composer ?
For instance when the API client calls a transaction that will create a new Asset. Is the new asset ID value created by the client, or is it computed somehow by the chain code ?
Hello.
Simple question: how to create the asset identity (ID) field value with hyperledger composer ?
For instance when the API client calls a transaction that will create a new Asset. Is the new asset ID value created by the client, or is it computed somehow by the chain code ?
Hello.
Simple question: how to create the asset identity (ID) field value with hyperledger composer ?
For instance when the API client calls a transaction that will create a new Asset. Is the new asset ID value created by the client, or is it computed somehow by the chain code, a bit like oracle sequences ?
Hello.
When a client calls a transaction that will create a new Asset. Should the new asset ID value by passed by the client, or should it be computed somehow by the chain code, a bit like oracle sequences ?
Hello.
When a client calls a transaction that will create a new Asset. Should the new asset ID value by passed by the client, or should it be computed somehow by the chain code, a bit like oracle sequences ? What is the best practice with this ?
Thanks in advance
@nicolapaoli are the json fields in your indexes pre-pended with "data." ?
Hi @davidkel, yes, this is the structure I use to create them from the 5984/_utils section.
```
{
"index": {
"fields": [
"data.creationTime"
]
},
"name": "foo-json-index",
"type": "json"
}
```
@nicolapaoli I gather there has been a change to fabric between alpha and rc1, you need to remove the `data.` part in the fields
hello everyone i use yo to generate my web app using angular how i can enable transaction?
[ ](https://chat.hyperledger.org/channel/composer?msg=qvEdKKPmM2iYXvQpp) @aparolini yes, it should ideally be passed by the client, you are in control of this, to produce a deterministic outcome / endorsement from the peers
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=nR6KzqxBy8QXvmgJG) @awash hi there - we have a current work-in-progress on improving the Angular generator to include transactions / transaction classes in the generated app -> https://github.com/hyperledger/composer/issues/3136 - this sample app here -> https://github.com/IBM/Decentralized-Energy-Composer/tree/master/angular-app/src/app has the date service for transactions added that you may want to take a look at - this may also be of use -> https://blog.angular-university.io/how-to-build-angular2-apps-using-rxjs-observable-data-services-pitfalls-to-avoid/
[ ](https://chat.hyperledger.org/channel/composer?msg=nR6KzqxBy8QXvmgJG) @awash hi there - we have a current work-in-progress on improving the Angular generator to include transactions / transaction classes in the generated app -> https://github.com/hyperledger/composer/issues/3136 - this sample app here -> https://github.com/IBM/Decentralized-Energy-Composer/tree/master/angular-app/src/app has the `data services` for transactions added that you may want to take a look at - this may also be of use -> https://blog.angular-university.io/how-to-build-angular2-apps-using-rxjs-observable-data-services-pitfalls-to-avoid/
Ok, it works now, Thank you @davidkel ! [ ](https://chat.hyperledger.org/channel/composer?msg=kzm5TYAafxi5SvGH2)
Ok, it works now, Thank you @davidkel ! [ ](https://chat.hyperledger.org/channel/composer?msg=vnmyPvTnJfboiaXwQ)
Do we have an option to save documents using composer?
Do we have an option to save documents using composer? If so,a reference link is really appreciated.
[ ](https://chat.hyperledger.org/channel/composer?msg=5drnxDrgcziKE7ab6) @phanikumar hi there - see this Stack Overflow https://stackoverflow.com/questions/47751609/how-to-deal-with-forms-images-videos-of-an-asset-in-hyperledger-composer (relating to storing docs (eg.PDFs)/images/media etc) - depending on needs/circumstance, more likely you might store 'off-chain' then store a hash of it / link to it etc.
Thanks @mahoney1
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi all, I am currently new to Hyperledger. I was wondering how Chaincode is written when programming in Composer.
I have written some transactions accompanied with some .js code. Are these the smart contracts that are written in Composer? Or is there another way to write Chaincode?
Has joined the channel.
I am trying to have passport-auth0 based authentication for my rest end points ,below is the code which i have used . I could able to authenticate into auth0 but somehow the access token is not carried into composer rest port 3000.What am i missing?
export COMPOSER_PROVIDERS='{
"auth0": {
"provider": "auth0",
"module": "passport-auth0",
"domain":"gskdemo.auth0.com",
"clientID": "
So I've been setting up a fabric network from scratch and moving away from the dev demos etc. I'm very close to being back to working on application level things, but I am really stuck deploying my business network
near as i can tell, the runtime is deployed without error
it in fact says it is successful
I have my PeerAdmin card created etc
but I get this when I run composer network start
but I get this when I run `composer network start`
but I get this when I run `composer network start -c PeerAdmin@hlfv1 -A admin -S adminpw -a basic-sample-network.bna`
> ✖ Starting business network definition. This may take a minute...
> Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
> Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (basic-sample-network:0.18.0)-open /var/hyperledger/production/chaincodes/basic-sample-network.0.18.0: no such file or directory)
[ ](https://chat.hyperledger.org/channel/composer?msg=8fPvRDX5Nz3h6Ftkx) @Rickos95
Welcome! When using Composer, the transaction processor functions are your "smart contracts" from a logical perspective. What happens is that a chaincode is installed that contains the Composer runtime that translates those javascript-based transaction processor functions into the necessary calls at the Fabric level that you would have had to write yourself had you not used Composer.
This `composer runtime install -n my-network -c PeerAdmin@hlfv1` runs just fine though
my composer cli type box is separate from the peer it's communicating with, it's not localhost
not sure if that's causing my challenges
and I do _not_ have a /var/hyperledger/production directory on this composer box I'm issuing commands from
so I'm not really sure what that is
I'm running composer-cli v. 0.18 again HL Fabric v1.1
@sstone1 Any idea when `0.18.1` will be released? It contains an important fix [`79fc905`](https://github.com/hyperledger/composer/commits?author=sstone1) for the composer rest api
@sstone1 Any idea when `0.18.1` will be released? It contains an important fix [`79fc905`](https://github.com/hyperledger/composer/commit/79fc90511ca08cd138949eadafc4c4973b3c4865) for the composer rest api
could somebody help me with this error
Clipboard - March 8, 2018 3:29 PM
Clipboard - March 8, 2018 3:31 PM
Has joined the channel.
Has joined the channel.
@mbwhite I will try it again in the weekend. Sadly due to an upcoming deadline I can"t afford slowdowns so will keep using 0.17.6 until I can resolve it in my own time. As for the mongo card store I am currently using, you can find it here in my small demo project https://github.com/ypeckstadt/hyperledger-composer-rest-server/blob/master/server/src/composer/mongoose-card-store.ts I am using mongoose to model the composer card though. Currently it is part of my rest api server so it is not really a separate module or npm package.
@mbwhite I will try it again in the weekend. Sadly due to an upcoming deadline I can"t afford slowdowns so will keep using 0.17.6 until I can resolve it in my own time. As for the mongo card store I am currently using, you can find it here in my small demo project https://github.com/ypeckstadt/hyperledger-composer-rest-server/blob/master/server/src/composer/mongoose-card-store.ts I am using mongoose to model the composer card though. Currently it is part of my rest api server so it is not really a separate module or npm package.
Has joined the channel.
Has joined the channel.
can i use mapping in model language of composer?
Issue for card import seems to be solved, any release date? :o
how can I get the current date or timestamp in permissions.acl? I need to give condition like- condition: (r.endTime < currentTimestamp)
Hi All I am running composer-playground but my browser will not open automatically.
what could be the problem?
I run cd ~/fabric-tools
./startFabric.sh
./createPeerAdminCard.sh
it working with no error
https://twitter.com/danielselman/status/972021638664540160
Has joined the channel.
Hi i am trying to import composer network id card through ajax call or xmlhttp request but not able to upload , i tried file reader passed as binary no success , passed as base64 or url no success , passed as array buffer no success , any one have idea how to import
how can i build my first hyperledger application?
@safasakly read the docs + tutorials: https://hyperledger.github.io/composer/
@sstone1 have u tried to import composer network card through ajax call
@sghosh2 no, but i know somebody that has: https://github.com/caroline-church/collectable-penguin-app/blob/master/src/services/rest.service.ts#L46
note that the card must be POSTed as part of a form (multipart/form-data)
and you need the withCredentials = true
okkk , thanks i will try , do i need to convert the file as binary or base64 before posting . because when i am trying normally it is throwing me 500 error
should be posted as a binary file with the application/octet-stream type
okk thanks :-)
Hi, I have problem with deploy buissnes network ( two physical machine)
Failed to receive commit notification for transaction 'de440d2d73c0646f6c574b544f58ed113174ded14cd17315df33cec1907b3cf9' within the timeout period
what am I doing wrong
@piotrek94 your Fabric configuration is probably incorrect, with your peers failing to receive new blocks from the orderer - this can happen if the anchor peers are not defined correctly in configtx.yaml (and have URLs resolvable by the orderer). alternatively validate that the event URLs in the connection profile are correct.
@piotrek94 your Fabric configuration is probably incorrect, with your peers failing to receive new blocks from the orderer - this can happen if the anchor peers are not defined correctly in configtx.yaml (and do not have URLs resolvable by the orderer). alternatively validate that the event URLs in the connection profile are correct.
I do not understand completely, if I gave you the contents of files, would you help?
@sstone1
you can paste the contents of configtx.yaml in here
@sstone1 I did this tutorial, but of course I changed the parameters of peer2 to IP //
[ ](https://chat.hyperledger.org/channel/composer?msg=8fPvRDX5Nz3h6Ftkx) @Rickos95 hi there, welcome......the smart contract is effectively everything in your business network (your transaction code, your model and relationships, your access control rules, your defined queries etc). These links should help you with comparisons -> https://stackoverflow.com/questions/48977403/chaincode-in-hyperledger-composer-vs-chaincode-in-hyperleger-fabric and here -> https://stackoverflow.com/questions/45505333/difference-between-hyperledger-composer-and-hyperledger-fabric
Does anybody know how composer rest server parses relationships??
Has joined the channel.
hi I am getting when I am running composer runtime install command
× Installing runtime for business network snb-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Endpoint read failed
Response from attempted peer comms was an error: Error: Endpoint read failed
can some one help me
Has joined the channel.
the peers docker containers are up and running
how to check if composer is able to connect to them?
[ ](https://chat.hyperledger.org/channel/composer?msg=vx5uWQuabgXmgdycm) @alexdevassy Can you be more specific? Composer REST server uses Loopback framework and explorer. The relationships returned have a standard URI format, eg resource:TYPE#ID format: eg `resource:org.acme.sample.SampleParticipant#participantId:111`
Hello
@mahoney1 i wrote a node js server to interact with deployed HL network but it seems that i can't get relations send through postman to the api's in the srver ..its giving me error that it expects a relationship
@mahoney1 but it is working flawlessly in composer rest server
I have created skeleton project using yoman...and set up project...I dont understand .js file inside test folder...we also have to write logic in lib/logic.js, what kind of code should we write in test/...js file, I can see there is connection and helps to get cards..but I would appreciate if somebody helps me to understand this
[ ](https://chat.hyperledger.org/channel/composer?msg=aRrmua5HPvvA5cwaq) @vpreddi can you post `docker ps` screenshot ? what version of composer, OS version? have you got TLS enabled in your connection profile ? Did you build your own Fabric? This stack overflow may help you -> https://stackoverflow.com/questions/44888364/getting-a-error-endpoint-read-failed-when-trying-to-deploy-a-bna
[ ](https://chat.hyperledger.org/channel/composer?msg=yzzpvC3BddkzkXwQZ) @mahoney1 $ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d81f8e454e02 hyperledger/fabric-tools "/bin/bash -c './scr…" About an hour ago Up About an hour cli
4c39c25a72a7 hyperledger/fabric-peer "peer node start" About an hour ago Up About an hour 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.regulatororg.snbchain.com
b81641bd84fe hyperledger/fabric-peer "peer node start" About an hour ago Up About an hour 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.foremanorg.snbchain.com
25f7dfdf00c2 hyperledger/fabric-peer "peer node start" About an hour ago Up About an hour 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.regulatororg.snbchain.com
4403affdba73 hyperledger/fabric-peer "peer node start" About an hour ago Up About an hour 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.foremanorg.snbchain.com
d40f06999db2 hyperledger/fabric-couchdb:x86_64-1.0.6 "tini -- /docker-ent…" About an hour ago Up About an hour 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
b8f9d079da6a hyperledger/fabric-orderer "orderer" About an hour ago Up About an hour 0.0.0.0:7050->7050/tcp orderer.snbchain.com
826d42e600a8 hyperledger/fabric-couchdb:x86_64-1.0.6 "tini -- /docker-ent…" About an hour ago Up About an hour 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
aa03e3b35df7 hyperledger/fabric-ca "sh -c 'fabric-ca-se…" About an hour ago Up About an hour 0.0.0.0:8054->7054/tcp ca_peerForemanOrgMSP
04c726733ac3 hyperledger/fabric-ca "sh -c 'fabric-ca-se…" About an hour ago Up About an hour 0.0.0.0:7054->7054/tcp ca_peerRegulatorOrgMSP
3723ac4e09a3 hyperledger/fabric-couchdb:x86_64-1.0.6 "tini -- /docker-ent…" About an hour ago Up About an hour 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
093c122dd1c5 hyperledger/fabric-couchdb:x86_64-1.0.6 "tini -- /docker-ent…" About an hour ago Up About an hour 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
windows 10 , $ composer -v
v0.16.5 ,yes I built my own fabric network
2 org , with 2 peer each
MSP for each org
@mahoney1 hi, can you guide , me what does this command does exactly composer runtime install ??
In Basic trade Network, Is there any way to restrict Participant to update his Asset (Commodity) Only by doing transaction not directly ?
@alexdevassy I see, what is the /GET (etc) you're posting - can you send a screenshot ?
@vpreddi - we currently don't support Windows 10 - open issue for this presently -> https://github.com/hyperledger/composer/issues/65 We support Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12 as shown here -> https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
[ ](https://chat.hyperledger.org/channel/composer?msg=8gC5vMuHgGkzRqTYC) @ranjithkumarmv yes you can - an example is : ```rule TradersTransact {
description: "Only Allow specific transaction TransferAmount, between Transferor/Transferee"
participant(p): "org.acme.account.AccountTrader"
operation: ALL
resource(v): "org.acme.account.BankAccount"
transaction(tx): "org.acme.account.TransferAmount"
condition: ( p.getIdentifier() === v.owner.getIdentifier() && v.getIdentifier() === tx.targetAccount.getIdentifier() )
action: ALLOW
} ``` Also FYI we have an ACL tutorial you may wish to check out -> https://hyperledger.github.io/composer/next/tutorials/acl-trading
[ ](https://chat.hyperledger.org/channel/composer?msg=8gC5vMuHgGkzRqTYC) @ranjithkumarmv yes you can - an example is (ie equivalent in trade-network, but same principle) : ```rule TradersTransact {
description: "Only Allow specific transaction TransferAmount, between Transferor/Transferee"
participant(p): "org.acme.account.AccountTrader"
operation: ALL
resource(v): "org.acme.account.BankAccount"
transaction(tx): "org.acme.account.TransferAmount"
condition: ( p.getIdentifier() === v.owner.getIdentifier() && v.getIdentifier() === tx.targetAccount.getIdentifier() )
action: ALLOW
} ``` Also FYI we have an ACL tutorial you may wish to check out -> https://hyperledger.github.io/composer/next/tutorials/acl-trading
I am using git bash to run all these commands , that should work right?
@mahoney1 I am using git bash to run all these commands , that should work right?
@vpreddi some people had tried early on with git bash with some success but that was a while ago. As we don't support windows we don't test in that environment so have no idea whether it should work or what the problems might be
[ ](https://chat.hyperledger.org/channel/composer?msg=5gFdEXvKt3oxz47Xd) @davidkel hi , can you suggest me that best way to run composer on windows 10?
How to clear the data on the explorer?
@vpreddi You will need to run a hypervisor such as virtualbox, hyper-v (if you are windows 10 pro) or vmware player and install linux.
@vpreddi You will need to run a hypervisor such as virtualbox, hyper-v (if you are windows 10 pro) or vmware player and install linux into a virtual machine
[ ](https://chat.hyperledger.org/channel/composer?msg=TgcLrWF9guZNJpTZZ) @Jaline can you clarify which explorer you refer to / what you're trying to do?
@piotrek94 The issue is possibly because your peer container hosted on a different machine doesn't know how to communicate back. See here -> https://stackoverflow.com/questions/46825974/how-can-i-make-a-communication-between-several-docker-containers-on-my-local-net - see here also for more info -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--multi-org--byfn-composer-tutorial---issues Second issue is that your connection profiles you've created may not be configured properly (as instructed by the external tutorial that you followed).
[ ](https://chat.hyperledger.org/channel/composer?msg=gzcAq2qMg38JBmjab) @mahoney1 Thanks this helps me a lot.
I connect two machine and works fine, but i can't make buissness network with composer. How to correctly create a network through a composer in the console and accounts for two computers that are already connected to each other?
I have problem with authorization new account with buissnes network
Command: composer network ping --card admin@tutorial-network
Error with composer : Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Error: Invalid results returned ::FORBIDDEN
[ ](https://chat.hyperledger.org/channel/composer?msg=xoJghW4nHT2Zpj8kC) @piotrek94 I assume you've done a composer runtime install already with your PeerAdmin card (which describes the connection profile shown in that tutorial) - for further users, you'll need to create participants, identities and business network cards for them - a crucial part of that will be the connection profile you create is correct see -> https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org (although this is on localhost, you are using a custom single-org, across different machines) and here -> https://hyperledger.github.io/composer/reference/connectionprofile.html - once you've done that, you can create your business network cards to interact with the business network you deploy - see also here -. https://hyperledger.github.io/composer//playground/id-cards-playground for card info
@mahoney1 I make account with https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org and i have error. I am a little layman and I do not know how to do it, could you tell me step by step how to create this network with only PeerAdmin?
Zrzut ekranu 2018-03-09 o 12.32.20.png
[ ](https://chat.hyperledger.org/channel/composer?msg=ErxXLeczgQciSZaSq) @piotrek94 hi there, so, if you're running with this tutorial https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org (from what I've read you are now) - you follow the instructions to do a network teardown/startup. To do that, you'll need to get the tools (as outlined in Step Four here -> https://hyperledger.github.io/composer/installing/development-tools.html ) - does that help?
You do not understand me, I did it according to this tutorial: https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602/42
Everything has passed me, so I would like to add to this card with the network. ->
I used to create a card of this tutorial what you sent me, but I have this error from the screen.
Uploading a new fabric-servers folder will not help me, because I have one of the above-mentioned tutorial, which works just like that between computers. I want to create a network between computers.
Everything has passed me, so I would like to add to this card with the network. -> https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org and https://hyperledger.github.io/composer/installing/development-tools.html *
@mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=Levdts6EhgqLiiMqu) @silliman Thank you for the answer, this already makes it a bit more clear for me!
[ ](https://chat.hyperledger.org/channel/composer?msg=Zc3x2Lbq6eEXzRik5) @mahoney1 Interesting links, thank you!
unable to launch composer-playground
PlaygroundAPI :createServer() > 8080, false
PlaygroundAPI :createServer() Playground API started on port 8080
PlaygroundAPI :createServer() <
Composer :main() >
@piotrek94 see https://stackoverflow.com/questions/47649994/how-to-get-certificates-for-identities-from-ca-in-hyperledger-composer?rq=1 if you've deployed a business network (bna file) as PeerAdmin using `composer runtim install` , and done a `composer network start` of that business network on the channel that you created in your Fabric environment, then you should have created an admin card (business network card. In which case, you can start creating participants and issuing identities (that are mapped to your participants, as that is what you have to do on issue) in your business network on your single-org environment - through playground (probably easier, as you can connect to each from the UI) or otherwise.
@piotrek94 see https://stackoverflow.com/questions/47649994/how-to-get-certificates-for-identities-from-ca-in-hyperledger-composer?rq=1 if you've deployed a business network (bna file) as PeerAdmin using `composer runtime install` , and done a `composer network start` of that business network on the channel that you created in your Fabric environment, then you should have created an admin card (business network card. In which case, you can start creating participants and issuing identities (that are mapped to your participants, as that is what you have to do on issue) in your business network on your single-org environment - through playground (probably easier, as you can connect to each from the UI) or otherwise.
@piotrek94 see https://stackoverflow.com/questions/47649994/how-to-get-certificates-for-identities-from-ca-in-hyperledger-composer?rq=1 if you've deployed a business network (bna file) as PeerAdmin using `composer runtime install` , and done a `composer network start` of that business network on the channel that you created in your Fabric environment, then you should have created an admin card (business network card). In which case, you can start creating participants and issuing identities (that are mapped to your participants, as that is what you have to do on issue) in your business network on your single-org environment - through playground (probably easier, as you can connect to each from the UI) or otherwise.
@piotrek94 see https://stackoverflow.com/questions/47649994/how-to-get-certificates-for-identities-from-ca-in-hyperledger-composer?rq=1 if you've deployed a business network (bna file) as PeerAdmin using `composer runtime install` , and done a `composer network start` of that business network on the channel that you created in your Fabric environment, then you should have created an admin card (business network card) which you can import using `composer card import -f
@piotrek94 see https://stackoverflow.com/questions/47649994/how-to-get-certificates-for-identities-from-ca-in-hyperledger-composer?rq=1 if you've deployed a business network (bna file) as PeerAdmin using `composer runtime install` , and done a `composer network start` of that business network (looks you're using `tutorial-network` from history) on the channel that you created in your Fabric environment, then you should have created an admin card (business network card) which you can import using `composer card import -f
[ ](https://chat.hyperledger.org/channel/composer?msg=ik2n3nBHGDWBP8Kaf) @suva what version of composer? how did you install playground? What OS ?
ping-error.png
I am trying to run composer v0.16.5 over fabric v1.0.6 with 1 org and 2 peers. When I am trying to ping the network, it is giving error as shown in above image. What could be issue here? Currently I have removed TLS options from the files.
Hello.. @mahoney1 ...I am trying to run composer v0.16.5 over fabric v1.0.6 with 1 org and 2 peers. When I am trying to ping the network, it is giving error as shown in above image. What could be issue here? Currently I have removed TLS options from the files.
@mahoney1 I've done step by step and i have that error when i want connect to profile
Zrzut ekranu 2018-03-09 o 13.31.30.png
[ ](https://chat.hyperledger.org/channel/composer?msg=JtcD6yXLP2pfwEMBq) @AkshayJindal see here for pointers to this Fabric CA -related error -> https://stackoverflow.com/questions/48186336/getting-an-error-certificate-signed-by-unknown-authority?rq=1 - could be you've built your card with the wrong certificate or you failed to clear out old admin certificates in your wallet directory?
azureuser@block1rpy-ca0:~$ /home/azureuser/.nvm/versions/node/v8.10.0/bin/composer -version
v0.16.5
azureuser@block1rpy-ca0:~$ uname -a
Linux block1rpy-ca0 4.4.0-116-generic #140-Ubuntu SMP Mon Feb 12 21:23:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
azureuser@block1rpy-ca0:~$
@mahoney1
I am installing playground using https://hyperledger.github.io/composer/installing/development-tools.html
hi, how i can use composer-client in details?
@suva - as mentioned in our pre-requisites - we only support node 8.9.x presently -> https://hyperledger.github.io/composer/installing/installing-prereqs.html
@mahoney1 have you idea, what i have to do?
[ ](https://chat.hyperledger.org/channel/composer?msg=8Pff9sduGJWaXvi7e) @awash if you mean for development purposes see here -> https://hyperledger.github.io/composer/applications/node.html if you mean for version info `npm ls -g composer-client --depth=0`
[ ](https://chat.hyperledger.org/channel/composer?msg=o6G9sn34QHX5Pn46N) @piotrek94 So the problem I suspect is likely to be at your Fabric configuration level - what happens when you deploy the sample Fabric marbles chaincode ? https://github.com/IBM-Blockchain/marbles/tree/v4.0/chaincode/src/marbles
@mahoney1 ok i try tommorow, and tell you
Hey guys! I'd like to issue an Identity through the composer SDK and import/upload it to the rest API, but I don't know how to use the business card in my code (as it is a *.card file) I've tried many things, but every time the .card get's corrupted. Could anyone point me in the right direction as how to handle these cards?
@Legiit I also tried , i am also not able to post this identity card to composer rest server
{"error":{"statusCode":500,"name":"Error","message":"MultipartParser.end(): stream ended unexpectedly: state = START_BOUNDARY","stack":"Error: MultipartParser.end(): stream ended unexpectedly: state = START_BOUNDARY\n at MultipartParser.end
this is the error i am getting
[ ](https://chat.hyperledger.org/channel/composer?msg=2Xd8ZzfKDhfKmykMm) @piotrek94 sure. This blog posted on Medium -> https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f is a very good illustration of setting up a blockchain network across two machines (based on Linux and based on the Fabric Samples BYFN network, albeit customised for a single-Org) -> you might want to read this and see how it uses the setup across two PCs and as importantly, how to test it at a Fabric level with sample chaincode tests. Once that is established, the easier part is connect up the right connection profiles / create business network cards.
[ ](https://chat.hyperledger.org/channel/composer?msg=s5feSxY6gR9RFDcBh) @sghosh2 could you confirm what version of composer (`composer -v`) and composer-rest-server (-v) version are you running ?
@mahoney1 0.16.5
[ ](https://chat.hyperledger.org/channel/composer?msg=Ka5LtSpNo3dYspY2p) @Legiit hi there - We have an issue https://github.com/hyperledger/composer/issues/2767 as the docs are not updated yet with examples. You can refer to the source for composer identity issue to see how it calls BusinessNetworkConnection.issueIdentity (as an admin with authority to issue identities) and creates a business network card from the result:-> https://github.com/hyperledger/composer/blob/master/packages/composer-cli/lib/cmds/identity/lib/issue.js#L46 and also another answer at the bottom here -> https://stackoverflow.com/questions/47393096/nodejs-test-hyperledger-composer-v0-15-fails-with-error-card-not-found-peeradm/47417082#47417082 (albeit with MemoryCardStore being replaced by FileSystemCardStore)
[ ](https://chat.hyperledger.org/channel/composer?msg=Ka5LtSpNo3dYspY2p) @Legiit hi there - We have an issue https://github.com/hyperledger/composer/issues/2767 as the docs are not updated yet with examples. You can refer to the source for composer identity issue to see how it calls BusinessNetworkConnection.issueIdentity (as an admin with authority to issue identities) and creates a business network card from the result:-> https://github.com/hyperledger/composer/blob/master/packages/composer-cli/lib/cmds/identity/lib/issue.js#L46 and also another answer at the bottom here -> https://stackoverflow.com/questions/47393096/nodejs-test-hyperledger-composer-v0-15-fails-with-error-card-not-found-peeradm/47417082#47417082 (albeit with MemoryCardStore being replaced by FileSystemCardStore). This blog is also useful -> https://medium.com/@aniketengg.225/hyperledger-composer-issue-identity-import-card-7e07af378447
[ ](https://chat.hyperledger.org/channel/composer?msg=Ka5LtSpNo3dYspY2p) @Legiit hi there - We have an issue https://github.com/hyperledger/composer/issues/3088 as the docs are not updated yet with examples. You can refer to the source for composer identity issue to see how it calls BusinessNetworkConnection.issueIdentity (as an admin with authority to issue identities) and creates a business network card from the result:-> https://github.com/hyperledger/composer/blob/master/packages/composer-cli/lib/cmds/identity/lib/issue.js#L46 and also another answer at the bottom here -> https://stackoverflow.com/questions/47393096/nodejs-test-hyperledger-composer-v0-15-fails-with-error-card-not-found-peeradm/47417082#47417082 (albeit with MemoryCardStore being replaced by FileSystemCardStore). This blog is also useful -> https://medium.com/@aniketengg.225/hyperledger-composer-issue-identity-import-card-7e07af378447
So currently it is not possible to "automate" the process of issueing identities and uploading them to the rest api, If I am not mistaken? :)
Issueing through the rest-api and uploading it didn't work for me either as the octet-stream I recieve is corrupted again when I try upload it :D
Never really handled octet-stream before, might be the lack of knowledge on my side
Im going to have a try with that blog post, interesting indeed
[ ](https://chat.hyperledger.org/channel/composer?msg=pfr3fKxnKLpnyNtWf) @Legiit yes, can automate / import - as mentioned to @sghosh2 earlier, the card must be POSTed as part of a form (multipart/form-data) and should be posted as a binary file with the application/octet-stream type. See example https://github.com/caroline-church/collectable-penguin-app/blob/master/src/services/rest.service.ts#L35
Woah cool, thanks!
It looks alot like my code, but I did not include the multipart/form-data, I thought that had to be application/octet-stream
I'll give it a try :D
In this command
composer card create -p connection-org1-only.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k 78f2139bfcfc0edc7ada0801650ed785a11cfcdef3f9c36f3c8ca2ebfa00a59c_sk -r PeerAdmin -r ChannelAdmin
In this command
composer card create -p connection-org1-only.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k 78f2139bfcfc0edc7ada0801650ed785a11cfcdef3f9c36f3c8ca2ebfa00a59c_sk -r PeerAdmin -r ChannelAdmin
it is stated that the sk file will be different. Can someone let me know where that file will be
Was wondering if anyone that maybe wasn't around last night has any thoughts on this: [ ](https://chat.hyperledger.org/channel/composer?msg=XGgvBqvpMxPDLGKHF)
in response to when I run `composer network start -c PeerAdmin@hlfv1 -A admin -S adminpw -a basic-sample-network.bna`
as I continue to struggle with that step for some reason :\
I did confirm last night that the composer runtime chain code is on the one peer I have (per the fabric `peer` commands)
so the prior `composer runtime install` command did work
Screen Shot 2018-03-09 at 10.52.38 PM.png
I thought this has been resolved
in Hyperledger composer v0.17.6
[ ](https://chat.hyperledger.org/channel/composer?msg=e8MT2dmwNMWmTP54B) @jcap Did you start fabric?
@mikeleow thanks for screenshot. I see a response of 200 (success) in your POST - should I be seeing something else or are you saying you get an error?
Is it? but it doesn't generate the business.card file as normally wat should happen
@mahoney1
@mikeleow it's not fixed, see https://github.com/hyperledger/composer/issues/2647
can someone let me know how to bypass certification validation failure in multi-org composer deployment
@jcap on your peer does this file actually exist ? `/var/hyperledger/production/chaincodes/basic-sample-network.0.18.0`
The usual cause is that when you did composer runtime install the value you passed to `-n` has to match exactly the name of the business network defined in package.json of the bna
Screen Shot 2018-03-09 at 11.07.37 PM.png
I actually tried in single user mode
and it works
but not sure why multi user mode doesn't
[ ](https://chat.hyperledger.org/channel/composer?msg=h6xBnmFHixHDMuNDc) @davidkel it does not. I don't even have a /var/hyperledger/production... path on this host
I don't quite understand where it should have come from
do I need fabric installed on my composer box? (I'm running composer as a docker container of its own to try and modularize a few things in our setup)
[ ](https://chat.hyperledger.org/channel/composer?msg=C8cyTmjexT5rvAMhT) @davidkel aha, now that seems highly likely to not be a match now that you mention that
How do I switch my identity to as admin?
is like the identity that I issue as restadmin, can I use that to issue identity
I know there's an issue but we are totally unable to generate a Business network card through system/identity/issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=yLfRwvwwLBkqBDkj7) @mahoney1 can you please help me out on this
[ ](https://chat.hyperledger.org/channel/composer?msg=SbHwAuyN9G6AvHyvz) Awesome, I have gotten further! Thank you. My newest error now is
> failed to init chaincode: handler not found for chaincode
so I'm going to go research that
[ ](https://chat.hyperledger.org/channel/composer?msg=fENJL5BXdoziFo9bA) @mikeleow in REST server, you can import your other card (admin) and use setDefault
as shown in here https://hyperledger.github.io/composer/next/tutorials/google_oauth2_rest ie `POST /wallet/name/setDefault/` - obviously if you're using the persistent REST server, your connection profile (connection.json) will need to reflect (as before) how to connect to the REST server
[ ](https://chat.hyperledger.org/channel/composer?msg=5tqXCCN2Ej23QiG5z) @phanikumar see example of non TLS environment here -> https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602 - see examples of connection profiles with or without TLS enabled here -> https://hyperledger.github.io/composer/reference/connectionprofile.html and here https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
So basically, whenever I import an admin card, it will always appear to be false.
@mahoney1 @Legiit this is my code , tell me what i am missing
// Code to get file from file uploader control
var oFileUploader = sap.ui.getCore().byId("fileUploader");
var file = jQuery.sap.domById(oFileUploader.getId() + "-fu").files[0];
// Code to upload
var fileReader = new FileReader();
fileReader.onload = function(e) {
var xmlHttpRequest = new XMLHttpRequest();
xmlHttpRequest.withCredentials = true;
xmlHttpRequest.open("POST", crdurl, true);
var data = e.target.result;
var formbin = new FormData();
formbin.append('card', data);
xmlHttpRequest.setRequestHeader("Content-Type", "multipart/form-data");
xmlHttpRequest.send(formbin);
}
fileReader.readAsBinaryString(file);
"Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]"
I believe this has not been resolved yet
am I correct.
ok
[ ](https://chat.hyperledger.org/channel/composer?msg=q2EKpty8Si58MxBLJ) @mahoney1 ok I will give it one more try tomorrow again, do I have to export as what I did with other cards?
@mikeleow yes fix will go into v0.18.1 (next release, early next week) https://github.com/hyperledger/composer/pull/3550 - will be announced when released.
[ ](https://chat.hyperledger.org/channel/composer?msg=pfmCMn6M9ZBmqqjPo) @sghosh2 have you reviewed this code -> https://github.com/caroline-church/collectable-penguin-app/blob/master/src/services/rest.service.ts#L35
[ ](https://chat.hyperledger.org/channel/composer?msg=pfmCMn6M9ZBmqqjPo) @sghosh2 have you reviewed this code -> https://github.com/caroline-church/collectable-penguin-app/blob/master/src/services/rest.service.ts#L35
@mahoney1 ok thank you! I will keep it on hold at the moment yet and start working on the front-end
while waiting for 0.18.1
Thanks a lot for your reply @mahoney1 :D
@mahoney1 can you just look at my above code and let me know where i am doing the mistakes
@mahoney1 yes from there only i have got idea
Clipboard - March 10, 2018 1:01 AM
Hello all, probably a rather simple question. But I was wondering whether creating, updating and deleting assets or participants are also seen as transactions. As I'm struggling a bit with defining transactions in the transaction section in composer. Would it be possible to define a process from a business without any defined transactions in the transaction section?
[ ](https://chat.hyperledger.org/channel/composer?msg=J5S7DBesFqhtYzP3d) @mahoney1 Getting the following error
⠹ Installing runtime for business network tutorial-network. This may take a minute...E0309 16:06:20.557563404 9835 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0309 16:06:20.557930785 9835 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
⠙ Installing runtime for business network tutorial-network. This may take a minute...E0309 16:06:21.295137310 9835 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0309 16:06:21.295561990 9835 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
✖ Installing runtime for business network tutorial-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Response from attempted peer comms was an error: Error: Connect Failed
@phanikumar - you probably need to set hostnameOverride for your nodes as mentioned in the answer here -> hostnameOverride option in the connection profile. for example orderers: [ { url: 'grpcs://localhost:7050', hostnameOverride: 'orderer.example.com', cert:...' } ] - see more on hostnameOverride here -> https://hyperledger.github.io/composer/reference/connectionprofile.html
[ ](https://chat.hyperledger.org/channel/composer?msg=N3YyH5b2udzBtRzKu) @Rickos95 hi there yes - they are transactions - there are the generic system transaction types (eg adding a new asset is `AddAsset` or AddParticipant or IssueIdentity etc etc) and there are your modeled transaction classes like `SettleTrade` or `IssueTicket` or `PayVendor` etc etc . You can try out sample models (such as shown here https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network) under the 'sample-networks repo there is a 'model' directory in each business network sample you can look at. But if you want to update assets or participants in your business network, you would need to define a transaction (it defines what it contains as parameters, with which to update a target asset or participant registry). Unless of course you were just adding assets or participants only each time (create asset, create participants) and not require a specific transaction class to update them later (ie one-off record instance, for queries only etc)
[ ](https://chat.hyperledger.org/channel/composer?msg=N3YyH5b2udzBtRzKu) @Rickos95 hi there yes - they are transactions - there are the generic system transaction types (eg adding a new asset is `AddAsset` or AddParticipant or IssueIdentity etc etc) and there are your modeled transaction classes (that you refer to) like `SettleTrade` or `IssueTicket` or `PayVendor` etc etc . You can try out sample models (such as shown here https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network) under the 'sample-networks repo there is a 'model' directory in each business network sample you can look at. But if you want to (or your business processes dictate) update assets or participants in your business network, you would need to define a transaction of sorts (it defines the parameters of change (eg. change of owners, adding a deposit to a bank account etc etc), with which to update a target asset or participant registry). Unless of course you were just adding assets or participants only each time (create asset, create participants) and not require a specific transaction class to update them later (ie one-off record instance, for queries only etc)
[ ](https://chat.hyperledger.org/channel/composer?msg=N3YyH5b2udzBtRzKu) @Rickos95 hi there yes - they are transactions - there are the generic system transaction types (eg adding a new asset is `AddAsset` or AddParticipant or IssueIdentity etc etc) and there are your modeled transaction classes (that you refer to) like `SettleTrade` or `IssueTicket` or `PayVendor` etc etc . You can try out sample models (such as shown here https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network) under the 'sample-networks repo there is a 'model' directory in each business network sample you can look at. But if you want to (or your business processes dictate) update assets or participants in your business network, you would need to define a transaction of sorts (it defines the parameters of change (eg. change of owner, adding a deposit to a bank account etc etc), with which to update a target asset or participant registry). Unless of course you were just adding assets or participants only each time (create asset, create participants) and not require a specific transaction class to update them later (ie one-off record instance, for queries only etc) - see the intro here for more info -> https://hyperledger.github.io/composer/latest/introduction/introduction
[ ](https://chat.hyperledger.org/channel/composer?msg=xSazzyEffoJ8gHtAD) @sghosh2 https://github.com/caroline-church/collectable-penguin-app/blob/master/src/services/rest.service.ts#L35
Hi
I am having issues starting the online playground
when I run it, I get this this
Screen Shot 2018-03-09 at 17.52.55.png
@Jaline do you mean 'delete multiple records rather than have to invoke each API to delete?' - you can write a simple query or function to delete them as shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L42 or a simple script. Or teardown if appropriate. I assume you mean the data you've committed.. If not, then you can clear your cache to clear any API inputs and refresh.
[ ](https://chat.hyperledger.org/channel/composer?msg=vjkeRDzyqbAk6d3KH) @SamuelDare I just tried https://composer-playground.mybluemix.net/ and its fine. Had you been into playground before that today - have you tried clearing the cache and trying again?
[ ](https://chat.hyperledger.org/channel/composer?msg=vjkeRDzyqbAk6d3KH) @SamuelDare I just tried https://composer-playground.mybluemix.net/ and its fine. Had you been into playground before that today - have you tried clearing the cache and trying again?
Has joined the channel.
Has joined the channel.
Hello! Question; I followed https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-single-org and I've got everything working perfectly. BUT: what is the minimum number of steps I need to take to start my business network after a reboot?
to make 'composer network ping -c admin@my-business-network' work again :)
[ ](https://chat.hyperledger.org/channel/composer?msg=mewTPyFrsQa9oCsE7) @mahoney1 Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=vrsAxCefswJp5htAE) @robinpapa just follow the steps carefully here -> https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data use the `docker-compose` sequence provided there (either side of your reboot :-) )
[ ](https://chat.hyperledger.org/channel/composer?msg=xzqNypzpy5BzMLanb) @mahoney1 Awesome! Thanks!
Has joined the channel.
Has joined the channel.
Having a problem restarting composer business network running on my mac after a restart. All of the dockers except the chaincode one restarted. That one fails and will not restart. The error is: `2018-03-09 19:17:21.608 UTC [grpc] Printf -> DEBU 005 grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: Error while dialing dial tcp 172.18.0.3:7051: getsockopt: connection refused"; Reconnecting to {peer0.org1.example.com:7051
Having a problem restarting composer business network running on my mac after a restart. All of the dockers except the chaincode one restarted. That one fails and will not restart. The error is:
`2018-03-09 19:17:21.608 UTC [grpc] Printf -> DEBU 005 grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: Error while dialing dial tcp 172.18.0.3:7051: getsockopt: connection refused"; Reconnecting to {peer0.org1.example.com:7051
Having a problem restarting composer business network running on my mac after a restart. All of the dockers except the chaincode one restarted. That one fails and will not restart. The error is:
`2018-03-09 19:17:21.608 UTC [grpc] Printf -> DEBU 005 grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: Error while dialing dial tcp 172.18.0.3:7051: getsockopt: connection refused"; Reconnecting to {peer0.org1.example.com:7051
Having a problem restarting composer business network running on my mac after a restart. All of the dockers except the chaincode one restarted. That one fails and will not restart. The error is:
`2018-03-09 19:17:21.608 UTC [grpc] Printf -> DEBU 005 grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: Error while dialing dial tcp 172.18.0.3:7051: getsockopt: connection refused"; Reconnecting to {peer0.org1.example.com:7051
Hi all. Have seen it in the past but can't seem to find the composer versions and features readme..
what exactly is a business network card? Is it a kind of identity of the user?
hello team, I would like to know how to update my business network in a production enviroument without uninstalling and installing again. and how to make sure that my angular app is up to date with new version
Has joined the channel.
Hello Team i am new to this community. i am facing an error message (t: Identifier cannot extend from super type.)
Could anyone please help.
@mahoney1 i'm getting this error message " ✖ Installing runtime for business network ./mafia-network@0.0.1.bna. This may take a minute...
Error: Error trying to ping. Error: Error trying to query business network. Error: could not find chaincode with name 'mafia-network' - make sure the chaincode mafia-network has been successfully instantiated and try again
Command failed" when i try run "composer runtime install -c MafiaAdmin -n ./mafia-network@0.0.1.bna"... Can you help me please?
@phanikumar yes it is an identity of user; it is composed of two important sections
The connection profile; which includes the addresses of fabric components; and the user credentials (that can be one of two forms: 1- certs and pems 2- enrollment userid and enrollment secret)
best way to get more insights; just unzip it with any archive tool and look at its contents.
@mahoney1 Yes,I just want to clear any API inputs.But I don't know how to clear my cache.
Has joined the channel.
hi , I am getting this error while executing -- composer network start
2018-03-10 04:05:15.121 UTC [Composer] Info -> INFO 001 Setting the Composer pool size to 8
2018-03-10 04:05:15.145 UTC [shim] userChaincodeStreamGetter -> ERRO 002 Error trying to connect to local peer: x509: certificate signed by unknown authority
Error starting chaincode: Error trying to connect to local peer: x509: certificate signed by unknown authority
the chaincode container is unable to talk to peer code
hi its show blocker ...can some one guide me
Hey @mahoney1 sorry to bother you but just a quick question, if I want to use as a restadmin@xxx-network, do I export the restadmin.card too? and then import it? and set default?
is ok it's not fixed yet.
Has joined the channel.
How do I get the access token on the Hyperledger composer-rest-server? apart form hidden, I mean getting it from the client side
hi any one out there can help me with TLS issue
Has joined the channel.
should i study fabric or composer for hyperledger blockchain development ?
[ ](https://chat.hyperledger.org/channel/composer?msg=L7yB5uPWar9AyTYBj) @RajkumarTiwari https://stackoverflow.com/questions/45505333/difference-between-hyperledger-composer-and-hyperledger-fabric
thank you robinpapa
User User_1 added by ShereenSallam.
Has joined the channel.
Hi I am trying to deploy the composer on fabric network. I have modified the fabric network as my application needs only single organization with 10 peers. I have modified the byfn.sh and script.sh file accordingly. According to this tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org I ran the comman ./byfn.sh -m up -s couchdb -a my two peers joined the channel but for third channel I got port: Error while dialing dial tcp 172.18.0.21:7051: getsockopt: connection refused"; Reconnecting to {peer2.org1.example.com:7051
I am new to fabric and composer. My application requires single organization with much more peers. Please help me as I didn't find any good online docs to deploy composer on any specific fabric network
@robinpapa any suggestion?
Has joined the channel.
Hi,
I am new to hyperledger and bit confused about hyperledger composer & nodejs api. I saw using composer we can create assets, transactions, participants and chaincode and in last we have to archive it this all into .bna file and finally we deploy this chaincode into network using admin card
But at other end using NodeJs API we can also write chaincode by overiding init & invoke methods.
How can we relate these all.
Has joined the channel.
Has joined the channel.
Response from attempted peer comms was an error: Error: The creator's signature over the proposal is not valid, err The signature is invalid
getting error `Response from attempted peer comms was an error: Error: The creator's signature over the proposal is not valid, err The signature is invalid` when trying to create multi-org deployment using hyperledger composer
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi guys
I'm following this link: https://hyperledger.github.io/composer/installing/development-tools.html#installing-components
However, the hyperledger fabric that is created has only one peer. What configuration files should I change to make it 3 peers?
@EfratLevy the Fabric network configuration provided with the Composer development environment is a very simple network for getting started only. please consult the Fabric documentation (http://hyperledger-fabric.readthedocs.io/en/release-1.0/) for information about building more complex networks. Composer can connect to and deploy to any Fabric network, and there are additional tutorials for this (https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org, https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org)
Capture.PNG
Sorry for my mistake its WaveMaker
is the REST server up and running? is it running on port 3000? is it running on the same machine as WaveMaker?
yes
[ ](https://chat.hyperledger.org/channel/composer?msg=TqG42atGwfZsebhJR) @mahoney1, @sstone1 I am getting this issue because I am not getting value at `card.getEnrollmentCredentials()` But I have a valid card created. Can you please suggest something on this?
how i can allow cross origin resource sharing for my rest server composer?
Hi, when I update my model files and remove an asset type completely, then create the .bna and then 'composer network update' it, why do I still see the old asset in the playground? Is it possible to some kind of forced update, that deletes old models?
I think composer network reset can help me
Yes, that worked.
Has joined the channel.
@sstone1 Thanks for your answering! I still don't understand how to configure the files so that x peers will be created.... if we're looking at https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Has joined the channel.
Hi, I'm running Ubuntu inside VirtualBox, trying to setup the development environment for hyperledger composer. I'm following instructions on github >> ZeroToBlockchain/Chapter03/README.md. All steps are successfully completed however when I run ./buildAndDeploy I get errors including ...: composer: command not found.
I'm facing a similar issue as ... https://github.com/rddill-IBM/ZeroToBlockchain/issues/1 except that I'm using Ubuntu inside VirtualBox.
Screenshot from 2018-03-12 00-58-56.png
hey people ...... I was sucessfully able to set up a fabric network across two machnies and deploy chaincode to it using composer... But how can i initiate a transaction from a particular peer?? like in the above case from peer1
please help me
[ ](https://chat.hyperledger.org/channel/composer?msg=Y7iawj6zQZ3cgsfj4) @AliCSLearner Have you installed npm modules
when i try to invoke a query and then remove the resut of the query if get the follwing erro
when I run a javascript query to select a record based on criteria and then try to remove the asset i get the following log in my docker container
2018-03-12 00:05:41.626 UTC [lockbasedtxmgr] Done -> DEBU 7a45 Done with transaction simulation / query execution [d4adf69b-bf18-4872-b1e9-65a1480735ba]
2018-03-12 00:05:41.626 UTC [endorser] simulateProposal -> DEBU 7a46 Exit
2018-03-12 00:05:41.626 UTC [endorser] ProcessProposal -> ERRO 7a47 simulateProposal() resulted in chaincode response status 500 for txid: 2f401dcba104124b7f4fd5794a7bc33346ba081c26ce51b6acc33f4325861719
2018-03-12 00:05:41.626 UTC [lockbasedtxmgr] Done -> DEBU 7a48 Done with transaction simulation / query execution [d4adf69b-bf18-4872-b1e9-65a1480735ba]
2018-03-12 00:05:41.626 UTC [endorser] ProcessProposal -> DEBU 7a49 Exit
how to i can modified composer rest server? and when using api rest server, i cant post transaction Trade (my business is using it `https://hyperledger.github.io/composer/latest/business-network/bnd-deploy`)
Has joined the channel.
Has joined the channel.
hi guys
we are building a production grade application for our usecase
can we use hyperledger composer in production
Has joined the channel.
I was getting *Error: Object with ID 'm1a' in collection with ID 'Asset:org.paysafe.digital.bank.MerchantAccount' does not exist*
I was getting *Error: Object with ID 'm1a' in collection with ID 'Asset:org.paysafe.digital.bank.MerchantAccount' does not exist* If i use One of my Participant Id . It works well with admin Account Id
Clipboard - March 12, 2018 1:24 PM
Has joined the channel.
azureuser@block1rpy-ca0:~/fabric-tools1$ composer-playground
PlaygroundAPI :createServer() > 8080, false
PlaygroundAPI :createServer() Playground API started on port 8080
PlaygroundAPI :createServer() <
Composer :main() >
unable to start composer playground on ubuntu
Itried to open in localhost:8080 port
can anybody help me out?
Clipboard - 2018年3月12日下午4点26分
when i run command “./startFabric.sh”,it tell me the container id can't be found.I think it's a bug.My compose version is 1.13.can any one help me?
Clipboard - 2018年3月12日下午4点29分
why the container id it took is so long?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZjT7hSzJD68nYNpQs) @bamboo - What errors are you seeing with the rest server when you try and POST to the Trade Transaction?
can somebody help me with mu previous question?
I have a Loyalty points Network with Merchant and customer Participants. Having the following Model and Transcation Logic. I wanted to restrict merchant to make transaction on his own account only by ACL. And not to update his account by his own. Account update should happen only by transaction `
asset CustomerAccount identified by accountId {
o String accountId
--> Customer owner
o Double balance
}
asset MerchantAccount identified by accountId {
o String accountId
--> Merchant owner
o Double balance
}
participant Customer identified by customerId {
o String customerId
o String firstName
o String lastName
}
participant Merchant identified by merchantId {
o String merchantId
o String firstName
o String lastName
}
transaction IssueLoyalty {
--> MerchantAccount from
--> CustomerAccount to
o Double amount
}
function IssueLoyalty(issueLoyalty) {
issueLoyalty.from.balance += issueLoyalty.amount;
issueLoyalty.to.balance += issueLoyalty.amount;
return getAssetRegistry('org.paysafe.digital.bank.MerchantAccount')
.then (function (assetRegistry) {
return assetRegistry.update(issueLoyalty.from);
})
.then (function () {
return getAssetRegistry('org.paysafe.digital.bank.CustomerAccount');
})
.then(function (assetRegistry) {
return assetRegistry.update(issueLoyalty.to);
});
} ` Sample ACL i tried ` rule IssueLoyaltyTranscat {
description: "Only Allow specific transaction TransferAmount, between Transferor/Transferee"
participant(p): "org.paysafe.digital.bank.Merchant"
operation: ALL
resource(v): "org.paysafe.digital.bank.**"
transaction(tx): "org.paysafe.digital.bank.IssueLoyalty"
condition: ( p.getIdentifier() === tx.from.owner.getIdentifier())
action: ALLOW
}`
I have a Loyalty points Network with Merchant and customer Participants. Having the following Model and Transcation Logic. I wanted to restrict merchant to make transaction on his own account only by ACL. And not to update his account by his own. Account update should happen only by transaction `
``` asset CustomerAccount identified by accountId {
o String accountId
--> Customer owner
o Double balance
}
asset MerchantAccount identified by accountId {
o String accountId
--> Merchant owner
o Double balance
}
participant Customer identified by customerId {
o String customerId
o String firstName
o String lastName
}
participant Merchant identified by merchantId {
o String merchantId
o String firstName
o String lastName
}
transaction IssueLoyalty {
--> MerchantAccount from
--> CustomerAccount to
o Double amount
}
function IssueLoyalty(issueLoyalty) {
issueLoyalty.from.balance += issueLoyalty.amount;
issueLoyalty.to.balance += issueLoyalty.amount;
return getAssetRegistry('org.paysafe.digital.bank.MerchantAccount')
.then (function (assetRegistry) {
return assetRegistry.update(issueLoyalty.from);
})
.then (function () {
return getAssetRegistry('org.paysafe.digital.bank.CustomerAccount');
})
.then(function (assetRegistry) {
return assetRegistry.update(issueLoyalty.to);
});
} ` Sample ACL i tried ` rule IssueLoyaltyTranscat {
description: "Only Allow specific transaction TransferAmount, between Transferor/Transferee"
participant(p): "org.paysafe.digital.bank.Merchant"
operation: ALL
resource(v): "org.paysafe.digital.bank.**"
transaction(tx): "org.paysafe.digital.bank.IssueLoyalty"
condition: ( p.getIdentifier() === tx.from.owner.getIdentifier())
action: ALLOW
} ```
I have a Loyalty points Network with Merchant and customer Participants. Having the following Model and Transcation Logic. I wanted to restrict merchant to make transaction on his own account only by ACL. And not to update his account by his own. Account update should happen only by transaction `
``` asset CustomerAccount identified by accountId {
o String accountId
--> Customer owner
o Double balance
}
asset MerchantAccount identified by accountId {
o String accountId
--> Merchant owner
o Double balance
}
participant Customer identified by customerId {
o String customerId
o String firstName
o String lastName
}
participant Merchant identified by merchantId {
o String merchantId
o String firstName
o String lastName
}
transaction IssueLoyalty {
--> MerchantAccount from
--> CustomerAccount to
o Double amount
}
function IssueLoyalty(issueLoyalty) {
issueLoyalty.from.balance += issueLoyalty.amount;
issueLoyalty.to.balance += issueLoyalty.amount;
return getAssetRegistry('org.paysafe.digital.bank.MerchantAccount')
.then (function (assetRegistry) {
return assetRegistry.update(issueLoyalty.from);
})
.then (function () {
return getAssetRegistry('org.paysafe.digital.bank.CustomerAccount');
})
.then(function (assetRegistry) {
return assetRegistry.update(issueLoyalty.to);
});
} ``` Sample ACL i tried ``` rule IssueLoyaltyTranscat {
description: "Only Allow specific transaction TransferAmount, between Transferor/Transferee"
participant(p): "org.paysafe.digital.bank.Merchant"
operation: ALL
resource(v): "org.paysafe.digital.bank.**"
transaction(tx): "org.paysafe.digital.bank.IssueLoyalty"
condition: ( p.getIdentifier() === tx.from.owner.getIdentifier())
action: ALLOW
} ```
I have a Loyalty points Network with Merchant and customer Participants. Having the following Model and Transcation Logic. I wanted to restrict merchant to make transaction on his own account only by ACL. And not to update his account by his own. Account update should happen only by transaction `
``` asset CustomerAccount identified by accountId {
o String accountId
--> Customer owner
o Double balance
}
asset MerchantAccount identified by accountId {
o String accountId
--> Merchant owner
o Double balance
}
participant Customer identified by customerId {
o String customerId
o String firstName
o String lastName
}
participant Merchant identified by merchantId {
o String merchantId
o String firstName
o String lastName
}
transaction IssueLoyalty {
--> MerchantAccount from
--> CustomerAccount to
o Double amount
}
function IssueLoyalty(issueLoyalty) {
issueLoyalty.from.balance += issueLoyalty.amount;
issueLoyalty.to.balance += issueLoyalty.amount;
return getAssetRegistry('org.paysafe.digital.bank.MerchantAccount')
.then (function (assetRegistry) {
return assetRegistry.update(issueLoyalty.from);
})
.then (function () {
return getAssetRegistry('org.paysafe.digital.bank.CustomerAccount');
})
.then(function (assetRegistry) {
return assetRegistry.update(issueLoyalty.to);
});
} ``` ```
``` Sample ACL i tried ```
``` ``` rule IssueLoyaltyTranscat {
description: "Only Allow specific transaction TransferAmount, between Transferor/Transferee"
participant(p): "org.paysafe.digital.bank.Merchant"
operation: ALL
resource(v): "org.paysafe.digital.bank.**"
transaction(tx): "org.paysafe.digital.bank.IssueLoyalty"
condition: ( p.getIdentifier() === tx.from.owner.getIdentifier())
action: ALLOW
} ```
I have a Loyalty points Network with Merchant and customer Participants. Having the following Model and Transcation Logic. I wanted to restrict merchant to make transaction on his own account only by ACL. And not to update his account by his own. Account update should happen only by transaction `
``` asset CustomerAccount identified by accountId {
o String accountId
--> Customer owner
o Double balance
}
asset MerchantAccount identified by accountId {
o String accountId
--> Merchant owner
o Double balance
}
participant Customer identified by customerId {
o String customerId
o String firstName
o String lastName
}
participant Merchant identified by merchantId {
o String merchantId
o String firstName
o String lastName
}
transaction IssueLoyalty {
--> MerchantAccount from
--> CustomerAccount to
o Double amount
}
function IssueLoyalty(issueLoyalty) {
issueLoyalty.from.balance += issueLoyalty.amount;
issueLoyalty.to.balance += issueLoyalty.amount;
return getAssetRegistry('org.paysafe.digital.bank.MerchantAccount')
.then (function (assetRegistry) {
return assetRegistry.update(issueLoyalty.from);
})
.then (function () {
return getAssetRegistry('org.paysafe.digital.bank.CustomerAccount');
})
.then(function (assetRegistry) {
return assetRegistry.update(issueLoyalty.to);
});
} ``` Sample ACL i tried ```
``` ``` rule IssueLoyaltyTranscat {
description: "Only Allow specific transaction TransferAmount, between Transferor/Transferee"
participant(p): "org.paysafe.digital.bank.Merchant"
operation: ALL
resource(v): "org.paysafe.digital.bank.**"
transaction(tx): "org.paysafe.digital.bank.IssueLoyalty"
condition: ( p.getIdentifier() === tx.from.owner.getIdentifier())
action: ALLOW
} ```
[ ](https://chat.hyperledger.org/channel/composer?msg=jMMMq9nvTAg6rtshK) @javrevasandeep - Hyperledger Composer is currently in pre-realease with new releases most weeks and often with breaking changes - this means that at this time most people would find this too risky for production.
Looking forward, a production version of Composer requires Hyperledger Fabric 1.1 - there is currently a release candidate for this so I would think we are not too far away from a Fabric 1.1 release. I'm not aware of any published date for a 1.0 production release of Composer.
This post form the Mailing List for Composer explains the production issue:
https://lists.hyperledger.org/pipermail/hyperledger-composer/2017-November/000044.html
Also keep an eye on the regular releases for latest information:
https://github.com/hyperledger/composer/releases and Issues: https://github.com/hyperledger/composer/issues
and finally the main Hyperledger site:
https://www.hyperledger.org/
[ ](https://chat.hyperledger.org/channel/composer?msg=BwuFSkYiLFycPAPQk) @suva - are you seeing any other error message? or just "PlaygroundAPI :createServer() > 8080, false"
Port 8080 is quite a common port number used by Web Servers e.g. Apache and also the Blockchain Explorer - are you perhaps running another server on that port that you can stop?
Has joined the channel.
Hi everyone. Not sure this is the best channel for questions regarding Composer but I'll give it a try: when I use the Composer playground and I change my business network definition (let's say a model), the data regarding that model goes away. Does this happen on networks deployed in Fabric as well?
[ ](https://chat.hyperledger.org/channel/composer?msg=JXWJhLfzo2eguJ45Q) @xy250400 - What version of Ubuntu are you using? Have you completed all the pre-reqs OK?
I think your Peer container has stopped or failed - do you have enough memory and diskspace free? Try docker logs on your peer container and see if it shows any errors.
[ ](https://chat.hyperledger.org/channel/composer?msg=5i8Z9wbE7vvRGAf3L) i still have the same proplem
[ ](https://chat.hyperledger.org/channel/composer?msg=y65YwWckibssimLQC) @joaofguerreiro - see this Stack Overflow answer :
https://stackoverflow.com/questions/48773445/save-data-while-updating-model-file-in-hyperledger-composer/48784374#48784374
[ ](https://chat.hyperledger.org/channel/composer?msg=sAKQDePH7zMLbAPC7) @rthatcher thank you, it was helpful!
[ ](https://chat.hyperledger.org/channel/composer?msg=9NeDWA2PB8YL7dGef) @awash - The URL looks wrong to me - try something like http://localhost:3000/api/Trader - where Trader is some asset or participant or Transaction
[ ](https://chat.hyperledger.org/channel/composer?msg=fXdjFLAKctb64vFAQ) @rthatcher i try it but i still have same error
@rthatcher , I saw using netstat -an | grep 8080 on windows. it shows me all the google crome connection and putty connection.
If i ran curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash coomand
it just hang in page
client-data/PeerAdmin@hlfv1/PeerAdmin
Hyperledger Composer
Link: manifest
Loading Hyperledger Composer...
Prepare to Blockchain
Clipboard - March 12, 2018 5:22 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=gAYAiEGDsyyBG5gqR) @joaofguerreiro so is it a limitation of composer. And would it be removed in future upgrades?
[ ](https://chat.hyperledger.org/channel/composer?msg=DWwg7qu884FWbxiqw) @divudivyansh from what I understand, this is a limitation of the Playground and not Composer itself.
Has joined the channel.
Hey just a random silly question on hyperledger composer. I have seen how it works. The .bna file gets deployed to come server or locally. But then how does that relate to being decentralized and using "block"+"chain" ? As the client apps with interact with a single server via REST apis and not by storing blocks.
Hey just a random silly question on hyperledger composer. I have seen how it works. The .bna file gets deployed to some server or locally. But then how does that relate to being decentralized and using "block"+"chain" ? As the client apps will interact with a single server via REST apis and not by storing blocks.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=9rzJB69pjZBywummE) @awash - from the same machine where you are running WaveMaker, can you try a curl command to test rest server ?
Capture2.PNG
```
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier
at Promise.resolve.then.e (/home/varun/Algorythmix/tata-shrimp-pilot/node_modules/composer-common/lib/connectionprofilemanager.js:136:42)
```
Tried to use a composer card to create a new asset and got this.
[ ](https://chat.hyperledger.org/channel/composer?msg=PzJDJa5wAQ2NgW7yf) @suva - Where did you find the command `curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash` ? Is it still in the online documentation? I think that script tries to run Composer Playground in a docker container, and we do not recommend that anymore because of complications with network addressing in cards. Can you install Composer playground locally using this command `npm install -g composer-playground@next` and then just run composer-playground in a terminal window.
@rthatcher Any idea what went wrong for me? It was working fine in composer v0.16 but not 0.16.3
[ ](https://chat.hyperledger.org/channel/composer?msg=3jhWopSvir6sc27Mp) @joaofguerreiro - I think this applies to Composer as a whole - not just Playground. So if you updated your model using the cli (e.g. composer network upgrade) you would see the same problem.
[ ](https://chat.hyperledger.org/channel/composer?msg=zHSPGL3mSxdJoqfNH) @roychowdhuryrohit-dev - in a developer environment you would have a Fabric that normally has a single Peer with the Blockchain - but Composer works with Multi-Org Multi-Peer underlying Fabric and the key to doing it is the connection profile which 'describes' the connection to the Fabric peers etc.
https://github.com/hyperledger/composer/blob/master/package.json shows version at 0.18.1 but installing composer env via CLI gives 0.16.3 as the latest version, so that is the latest stable version?
[ ](https://chat.hyperledger.org/channel/composer?msg=jQW5jXMp3xTqcYZSw) @rthatcher So doesn't it make development for a large application difficult? There is always a need for amendment..
[ ](https://chat.hyperledger.org/channel/composer?msg=AZJ54QoY6AxZ4xpDC) @varunagarwal - the error you showed:
"Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-Unexpected"
I have seen with people running Node v6 - but we are now supporting Node 8 (specifically Node 8.9 I think)
What version of node are you running ? `node -v`
The more stable version of Composer is the v0.16 stream which is what you install with npm install -g composer-cli for example - npm calls this 'latest'.
The knowledge wiki has a section on compose versions here:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source-upgrading-composer-eg-runtime-modules-clients-generators-etc
and the latest release information is here:
https://github.com/hyperledger/composer/releases
`composer` --> v0.16.6
`node` --> v6.11.5 the latest TLS version @rthatcher
Also should we use Fabric 1.0 or is 1.1 stable enough?
[ ](https://chat.hyperledger.org/channel/composer?msg=zaCgfjkWNYkAWqXbm) @varunagarwal - OK so you need to upgrade Node to 8.9. You should uninstall all the composer code before upgrading Node, then install composer again afterwards.
[ ](https://chat.hyperledger.org/channel/composer?msg=zaCgfjkWNYkAWqXbm) @varunagarwal - OK so you need to upgrade Node to 8.9. You should uninstall all the composer code before upgrading Node, then install composer again afterwards.
Composer v0.16.x *ONLY* works with Fabric 1.0 (not 1.1)
yes I read that part, 1.1 needs 0.18.x composer.
I use `nvm` so will be quite easy to switch.
what is the equivalent of the .cto model file if one were to use Fabric only, without Composer?
What is the equivalent of the .cto model file if one were to use Fabric only, without Composer?
I think its .go
since chaincode written in golang
@dtp
I mean the file where Assets, Participants and Transactions are defined
@dtp it's chaincode, written in golang ;) there is no modelling language in fabric
you must decide how you define an asset (JSON? XML?) and how you store that asset in the world state (using GetState/PutState etc)
[ ](https://chat.hyperledger.org/channel/composer?msg=ey737AYo7K3MMyijK) @mahoney1 Can you please me resolving this issue.
how i can make login page with multiple user access?
[ ](https://chat.hyperledger.org/channel/composer?msg=BmHYxx8ZvrnmNDoZA) @sstone1 Okay thanks, how easy would it be to port an application built with Composer (with .cto model files) to Fabric? Is there any guide for this? Composer REST server is useful, how would one configure a REST API without Composer?
Has joined the channel.
you have to rewrite it all from scratch
there is no guide
and you'd essentially be rewriting a lot of composer ;-)
there is no REST server for Fabric, so you'd have to write your own
any reason why you want to do this?
Thanks for the answers sstone1. Well, the lower the level of the language the better the performance (and understanding). I was just asking out of curiosity, it is not in the plans at the moment. :)
Is there some sort of migrations system in Composer? Anything you guys know of?
[ ](https://chat.hyperledger.org/channel/composer?msg=A364KfqvaXabkPG6L) @awash - if you read the docs here it should explain the Authentication and Multiuser options for the REST server:
https://hyperledger.github.io/composer/integrating/integrating-index
[ ](https://chat.hyperledger.org/channel/composer?msg=mn2MMgijFkscB8MJw) @joaofguerreiro - what are you trying to migrate ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ScKcbJwj7E9q8QD6L) @rthatcher I want to migrate the world state, in case the network needs some models to be updated
[ ](https://chat.hyperledger.org/channel/composer?msg=foDNGCQqeMh9wvyGA) @joaofguerreiro - you could use the REST server:
1. Execute a GET on each of the registries (Asset Types and Participant Types), and put these in text files,
2. Use a text editor to do 'global' search and replace to add your new fields
3. Deploy new extended business network
4. Execute a POST for each of the registries using the text files as the JSON input.
Or you could use Node RED to export / Import the data - We have a tutorial that shows how to import:
https://hyperledger.github.io/composer/latest/tutorials/nodered-tutorial.html
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ejdorhis3kxhoYXYc) @rthatcher thank you. The first solution seems a bit undoable in my case but I'll check the tutorial
Has joined the channel.
I am getting `Response from attempted peer comms was an error: Error: The creator's signature over the proposal is not valid, err The signature is invalid` error when I am running `composer runtime install -c PeerAdmin@byfn-network-org1-only -n tutorial-network` I believe this is mostly because of certificates. I stuck with this issue since thursday. Can someone help me out on this.
I even added the certificates to my linux environement as trusted certs
I'll tell you what I did: just took the IBM sample, deployed it in my environment, and made changes to the bna file from the composer-playground to fit my needs
https://github.com/IBM/Decentralized-Energy-Composer
Where can I find a full video explaining the JS file coding?
[ ](https://chat.hyperledger.org/channel/composer?msg=vnLtgCooyiCzBKpwx) @EfratLevy - I'm not familiar with that example - perhaps you could search YouTube or add an issue that that Repo.
[ ](https://chat.hyperledger.org/channel/composer?msg=BoyHKHTpzCdt4PrPA) @phanikumar - are you following a tutorial, or have you created your own Fabric Network? I would guess that you have an error in the Connection.json when creating the peer admin card.
[ ](https://chat.hyperledger.org/channel/composer?msg=7Li6JijGLwwrJvkNq) @rthatcher I am following the multi-organization tutorial
Does anyone know which Docker container has the blocks of transactions in our Composer application?
I've asked this on the Fabric channel but what I needed is a Composer-related answer
@joaofguerreiro the answer is the same for Composer and Fabric, Composer is not a blockchain implementation - it uses Fabric as the underlying blockchain and all transactions are recorded in the Fabric ledger
e.g. all of the blocks and transactions (the ledger) are recorded in the Fabric peers
[ ](https://chat.hyperledger.org/channel/composer?msg=AZq4aFmfWfRKAydc5) @sstone1 thanks for your reply. What I've been told is that I can access a block by using the method `QSCC.GetBlockByNumber` but can I do this on a Composer application?
only by using the Fabric client SDK - the Composer client SDK doesn't expose the underlying Fabric client SDK APIs (like that)
exactly. But I don't need to access the blocks, I just really want to know where they are stored (i.e. the directory on the Docker container or something similar)
@sstone1 Composer cli will not execute for me as it is looking for node-v57-darwin-x64 and I have:
`mbpkim:create kim$ ls /usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v48-darwin-x64/`
Any thoughts as to what I did wrong when installing the cli? Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=TfrspZWi5iGJPmeAo) @kletkeman - Composer requires Node 8 (node 8.9 is installed using the automated pre-req scripts) - are you using Node 6 ?
Hi, I saw on Github that release 0.18.1 will allow request node module. I really need it to make some computation (for example AES256) and HTTP Post with customized data.
Did you plan a relase date for 0.18.1?
[ ](https://chat.hyperledger.org/channel/composer?msg=gSx8Zff9gD3df6aTe) @ppcm - I would expect to see 0.18.1 this week.
so great!
Having a problem restarting composer business network running on my mac after a restart. All of the dockers except the chaincode one restarted. That one fails and will not restart. The error is:
`2018-03-09 19:17:21.608 UTC [grpc] Printf -> DEBU 005 grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: Error while dialing dial tcp 172.18.0.3:7051: getsockopt: connection refused"; Reconnecting to {peer0.org1.example.com:7051
[ ](https://chat.hyperledger.org/channel/composer?msg=534gqeuGnxe6aQL8a) @phanikumar Yes I have
[ ](https://chat.hyperledger.org/channel/composer?msg=hqhhWZ8F6PrsLq4Yn) @AliCSLearner how did you install npm modules? Can you paste the command here. Also under which user you are running the commands?
@phanikumar install npm
p.s. i'm a newbie here, following instructions in readme
can you share me the link that you are following
https://github.com/rddill-IBM/ZeroToBlockchain/tree/master/Chapter03
[ ](https://chat.hyperledger.org/channel/composer?msg=CK6jg9SB7WYQDT2fR) @AliCSLearner Please follow this link https://hyperledger.github.io/composer/installing/development-tools.html
Also make sure that you install npm modules from non-root user otherwise you will be in trouble at later point of time.
Re-running setup_Ubuntu_Part_1.sh worked.
k Great
I installed Composer Playgrounds on my Linux environment and am trying to deploy a sample perishable-network, but am getting the following error when deploying, Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v59-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-
I ran `npm rebuild --unsafe-perm` in /usr/lib/node_modules/composer-cli/, but that made no difference
[ ](https://chat.hyperledger.org/channel/composer?msg=WzwEX7dTsnXSBmmvw) @mahoney1 Thank you for the clear answer!
So far I used Composer to model and deploy my business networks. It is easy to use and gives me the possibility to write the chaincode in JS. But now I have to deploy my business network on the Fabric Blockchain Service of SAPs Cloud Platform. To deploy a chain code there I have to use create a ZIP archive, which includes a chaincode.yaml manifest, the chaincode GO code (.go) and the OpenAPI description (.yaml). Is there any possibility to create those files out of the Business Network Archive file (.bna)?
[ ](https://chat.hyperledger.org/channel/composer?msg=wGZ5e5W5hmnYgFq5R) so I figured this out. I uninstalled node and npm as root and then following these directions, https://docs.npmjs.com/getting-started/installing-node to reinstall it. Then, I followed the directions to install composer here, https://hyperledger.github.io/composer/installing/development-tools.html. The key is to not use 'su' or 'sudo'
Has left the channel.
so I have made some progress deploying this custom business network. I'm now stuck running `composer network start -c PeerAdmin...` and it "may take a while"
a `dev-peer0` node starts up
and then errors out
SSL handshake error with peer0
SSL handshake error with `peer0`
i feel like there must be something obviously wrong but I can't quite find it
I installed Composer Playgrounds on my local Linux environment. I was able to successfully create the sample "perishable-network" but when I click on "Connect Now", I get the error: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
I am not getting prompted for the enrollment Id or Secret, so I am not sure what to do
Has joined the channel.
Hi team.. I am looking for sample application where in we can create participants, register and have them authenticated via web application.. I saw some blogs related to loop back connector .. can you please guide how this can be done, we might have different sets of participants with the network
any sample application will be great
Has joined the channel.
current identity has not been registered
Has joined the channel.
I installed Composer Playground on my local environment. I was able to design bna file and test the network with the services. But, I couldn't find anywhere that how this can be deployed to other cloud provides like AWS or OpenStack. All I want is to deploy my defined network so that I can use the rest services to communicate with the blockchain. There isn't any reference in the docs which covers the deployment to other clouds. All it says is how it can be deployed to bluemix.
I installed Composer Playground on my local environment. I was able to design bna file and test the network with the services. But, I couldn't find anywhere that how this can be deployed to other cloud provides like AWS or OpenStack. All I want is to deploy my defined network so that I can use the rest services to communicate with the blockchain. There isn't any reference in the docs which covers the deployment to other clouds. All it says is how it can be deployed to bluemix.
has anyone gotten the sample networks to work?
@rthatcher I installed Node 8 today, but after that installs of the latest composer cli et al seemed to have trouble writing system files, even under sudo. So this might be the issue. I'm not sure what to do about it, but cli is looking for 57, so maybe the install did not complete properly.
don't use sudo or su
I had issues myself but the online docs mention this
refer to my previous comments, https://chat.hyperledger.org/channel/composer?msg=7wziqWqGPBB7pDqjZ
Hello, what does o Integer[] counts optional and --> Business business optional mean??
Hello, what does *o Integer[] counts optional* and *--> Business business optional* mean??
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi everyone, when I use command "./createPeerAdminCard.sh" in the example : https://github.com/hyperledger/composer-sample-applications/tree/master/packages/digitalproperty-app.
it always failed with below error:
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier
Command failed
who can give me any clue ? thanks a lot!
pls ignore my above question. After I switch node from 6 to 8, it works!
but got another failure after use 'npm run deployNetwork '
✖ Installing runtime for business network undefined. This may take a minute...
Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
Command failed
npm ERR! Linux 4.13.0-1011-azure
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "run" "deployNetwork"
npm ERR! node v6.13.1
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! digitalproperty-app@0.0.6 deployNetwork: `composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile ./digitalPropertyNetwork.bna --card PeerAdmin@hlfv1 -A admin -S adminpw -l INFO && composer card import --file ./admin@digitalproperty-network.card && composer network list --card admin@digitalproperty-network`
npm ERR! Exit status 1
so which node version should I use when run this example ? https://github.com/hyperledger/composer-sample-applications/tree/master/packages/digitalproperty-app
Already have a JIRA Bug here : https://jira.hyperledger.org/browse/FAB-8536
I am waiting their response
[ ](https://chat.hyperledger.org/channel/composer?msg=KDX6g9toRsXv9ScGA) @mahoney1 Can you help me with this
Dear All, I am following "https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html". Everything went good and I followed every steps in the documentation. But business network administrator "alice" and "bob" could not able to issue identity to participants. I am getting "Authorization Error". I am using composer v0.16.4. Am I missing anything? Please help.
How to redeploy the business network on the
How to redeploy the business network on the hyperledger fabric?
Has left the channel.
@Jaline https://hyperledger.github.io/composer/reference/composer.network.update.html Try this
@ranjithkumarmv Thanks.But I want to redeploy the network instead of updating it.
[ ](https://chat.hyperledger.org/channel/composer?msg=nHEMXw8uYNSR6G9Y3) @Jaline redeploy in a sense that you want to have a fresh ledger without any transactions in it but with existing logic
Yes, for some reason I need to redeploy the network.
@ranjithkumarmv Yes, for some reason I need to redeploy the network
[ ](https://chat.hyperledger.org/channel/composer?msg=Lmobp6jAswXDYNhyF) @Jaline I don't think we have redeploy option but we can undeploy and then again deploy the network . To Undeploy here is the tutorial https://hyperledger.github.io/composer/reference/composer.network.undeploy.html
Hi, I have connected two computers, orderer and peers. I make buissnes network but i connecting, have error : dailed to deserialize creator identity, err The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority
[ ](https://chat.hyperledger.org/channel/composer?msg=dZXmxm5jnceeYD9K2) @nitishbhardwaj19 - Composer Playground interacts with a Hyperledger Fabric as the underlying Blockchain network.(unless you are using the 'Web' connector when it just uses local Browser storage.) Assuming that you installed a Full Dev environment with Docker, then you would be running a Dev Fabric in Docker Containers controlled by scrpts like startFabric.sh. The intention of the Dev environment is to quickly deploy a minimal Fabric so that Developers can begin developing Business Networks and Applications. For a quick PoC or Demo, you can install a Dev environment on cloud based servers, but after that you would need to investigate and understand Hyperledger Fabric and deploy a Fabric to the cloud before 'hitting' it with Composer. As you say IBM provides tools for all this through IBM Cloud (bluemix)
@ranjithkumarmv “The business network cannot be redeployed or updated once the undeploy command has been issued”
What is the real meaning of this sentence?
[ ](https://chat.hyperledger.org/channel/composer?msg=xrCFaWRechqtsSFuW) @kletkeman - Have you uninstalled and re-installed -g the composer code after upgrading Node ? I'm not a Mac guy, but you should not need to use sudo if it is all installed ok.
[ ](https://chat.hyperledger.org/channel/composer?msg=R7cxT8J3Xmexcoce9) @Jaline Meaning you cannot use the network anymore
[ ](https://chat.hyperledger.org/channel/composer?msg=LELJPWkWq7MD5GohR) @cuevrob - this doc covers the modelling language and should answer your questions:
https://hyperledger.github.io/composer/reference/cto_language.html
how to open locathost:8080 while running composer-palyground
I am using it behind proxy
[ ](https://chat.hyperledger.org/channel/composer?msg=pDw2vLdsCCsgXwT2B) @Vincent - You should have Node 8.9. The error you are seeing 'connection profile has no 'x-type' property defined' is to do with a miss match of versions of Composer. I'm guessing that you have composer v0.17.x or v0.18.x installed, ( `composer -v` ) but the sample app may have been built with Composer v0.16.x. So I would suggest removing the nodemodules folder under the sample app and rebuilding the app with npm install. You might also want to check the dependencies in the package.json before rebuilding.)
while running compser-playground its not accessing
Nothing connected with 8080 port I checked
@suva so are you running playground and rest server on the same machine?
I am running compser-playground on ubuntu 16.04
https://hyperledger.github.io/composer/installing/using-playground-locally
i followed the below link
ok, and you run `composer-playground`?
that i did
azureuser@block1rpy-ca0:~/fabric-tools1/composer-data$ composer-playground
PlaygroundAPI :createServer() > 8080, false
PlaygroundAPI :createServer() Playground API started on port 8080
PlaygroundAPI :createServer() <
Composer :main() >
and did it start a browser for you?
no
i did cd ~/fabric-tools
./startFabric.sh
./createPeerAdminCard.sh
then composer-playground
ok, are you running in a VM?
no its azure VM
any setup to do before run composer-playground
so where are you running your browser - on your local machine?
yes
as per link it should open automatically
but playground is running somewhere in the azure cloud
can it open in google chrome or not?
so localhost is not the right URL
I'm using node-RED to populate my Composer application using some .json files. However it doesn't solve my problem: I want to add a new field to a participant class, so when I import those json files with the old schema of that participant, I get an error... is there no way of having the new fields added to the old format of the participants?
You'll need the IP address of your VM that is running playground in Azure
ok
[ ](https://chat.hyperledger.org/channel/composer?msg=DGjqPh3XnSFYmXNyZ) @biksen - are you able to 'ping' the network with Alice and Bob? Can you give the full command you are using and the full error message?
@smithsj , It not working with IP also
azureuser@block1rpy-ca0:~/fabric-tools1/composer-data$ composer-playground
PlaygroundAPI :createServer() > 8080, false
PlaygroundAPI :createServer() Playground API started on port 8080
PlaygroundAPI :createServer() <
Composer :main() >
I started composer-playground like this
so playground is running on Azure and your browser is running on your local laptop?
yes
plz suggest what all steps i need to follow to run it on browser
while running why it shows PlaygroundAPI :createServer() > 8080, false
don't get hung up on the message that says `false`
ok. thanks
so get the IP address of your VM on azure
I use the same IP while accessing the azure VM through putty
but still it is not working
I am working behind proxy also
ok so will your proxy/firewall allow connections to port 8080? if not then that is the problem
the fact that you can ssh into your VM via putty means that it should be able to connect to the VM
yes
I am giving my proxy user id and password in putty
then connect to azure VM
in your putty session then try doing `curl localhost:8080`
that will show you if playground is running
[ ](https://chat.hyperledger.org/channel/composer?msg=BkjCADtEDgK43kWFK) @piotrek94 - If you look at this post from Stack Overflow, the comments by david_k will help you understand the problem:
https://stackoverflow.com/questions/48186336/getting-an-error-certificate-signed-by-unknown-authority
@rthatcher I am able to ping the network using "Alice" and "Bob" but "Alice" and "Bob" NOT able to issue identity. I used the same commands which are used in the link "https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html"
@smithsj , while doing curl it gives me a html file
but while doing wget
azureuser@block1rpy-ca0:~/fabric-tools1$ wget localhost:8080
--2018-03-13 10:19:53-- http://localhost:8080/
Resolving localhost (localhost)... 127.0.0.1
Connecting to localhost (localhost)|127.0.0.1|:8080... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2902 (2.8K) [text/html]
Saving to: ‘index.html’
index.html 100%[=====================================================================================>] 2.83K --.-KB/s in 0s
2018-03-13 10:19:53 (333 MB/s) - ‘index.html’ saved [2902/2902]
[ ](https://chat.hyperledger.org/channel/composer?msg=5taXYyB6KdoEvqfFk) @joaofguerreiro - at the moment there is no way to dynamically extend the Model.
@rthatcher i configured my project with https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine . I am newbie and I do not know how to configure it correctly. Will you help me?
[ ](https://chat.hyperledger.org/channel/composer?msg=BZmZKsjahSJwvwYAb) @biksen - thanks. I'm not seeing 'identity issue' in the version of the doc you referenced. I assume you created participants before trying to issue identity? Can you show the full commands and errors?
[ ](https://chat.hyperledger.org/channel/composer?msg=gmE4D43zWi5Eh4QSa) @rthatcher so the solution is to export the data into JSON, manually insert the new field on all those files, and then import it to the updated network?
[ ](https://chat.hyperledger.org/channel/composer?msg=A8yH2JayEnPsKQW2A) @piotrek94 - I have not used that tutorial so I can't give you specific help. You will need to be very careful and exact when working with the configuration files and the connection.json files. Your error is with the CA and MSP details/certificates.
[ ](https://chat.hyperledger.org/channel/composer?msg=Fd4DegaKMjFJiJbiY) @joaofguerreiro - yes you will need to edit the JSON file - but you could use a scriped editor or write a short program.
@rthatcher do you have any example project that you have launched on several computers?
[ ](https://chat.hyperledger.org/channel/composer?msg=5LJsuP3WudjQfiJdc) @rthatcher I guess that's a solution... a troublesome one however. Do you know if it's on Composer's plans to solve this issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=5LJsuP3WudjQfiJdc) @rthatcher I guess that's a solution... a troublesome one however. Do you know if it's in Composer's plans to solve this issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=Lza4r4XYf7aJKC3sy) @piotrek94 - you could try this as background for Hyperledger Fabric - but again I haven't personally followed it.
[ ](https://chat.hyperledger.org/channel/composer?msg=NdEQTHYFvsrMNDXxB) @joaofguerreiro - the team will be aware that extending the model is difficult (!) - but I'm not sure there is a specific issue raised to fix it. Please feel free to search the current list of issues, and if you don't find one for extending the model then please raise an issue:
https://github.com/hyperledger/composer/issues
[ ](https://chat.hyperledger.org/channel/composer?msg=5bcZLq3D654AWLwyA) @rthatcher Thanks a lot for your help, But After I install another node version v8.9.4, it still failed with below error:
✖ Installing runtime for business network undefined. This may take a minute...
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier
Command failed
Deploying business network from archive: ./digitalPropertyNetwork.bna
Business network definition:
Identifier: digitalproperty-network
Description: Digital Property Network
✖ Installing runtime for business network undefined. This may take a minute...
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier
Command failed
npm ERR! Linux 4.13.0-1011-azure
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "run" "deployNetwork"
npm ERR! node v6.13.1
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! digitalproperty-app@0.0.6 deployNetwork: `composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile ./digitalPropertyNetwork.bna --card PeerAdmin@hlfv1 -A admin -S adminpw -l INFO && composer card import --file ./admin@digitalproperty-network.card && composer network list --card admin@digitalproperty-network`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the digitalproperty-app@0.0.6 deployNetwork script 'composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile ./digitalPropertyNetwork.bna --card PeerAdmin@hlfv1 -A admin -S adminpw -l INFO && composer card import --file ./admin@digitalproperty-network.card && composer network list --card admin@digitalproperty-network'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the digitalproperty-app package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! composer archive create --sourceName digitalproperty-network --sourceType module --archiveFile digitalPropertyNetwork.bna && composer network deploy --archiveFile ./digitalPropertyNetwork.bna --card PeerAdmin@hlfv1 -A admin -S adminpw -l INFO && composer card import --file ./admin@digitalproperty-network.card && composer network list --card admin@digitalproperty-network
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs digitalproperty-app
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls digitalproperty-app
npm ERR! There is likely additional logging output above.
Has joined the channel.
@Vincent - the error:
"Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-"
is usually associated with a Node version problem. (Though perhaps there are other cases that can cause it.)
Since you have cloned the Sample from github - I would think it wise to remove the sample app and folder, and clone a new version. And start again with it.
I assume you re-installed composer after upgrading Node.
Hello everyone.
I am trying to register users on the composer-rest-server with local authentication.
I was able to create a node app with the instance of composer-rest-server and i get the loopback. No i can do a loopback.create() on it to create a user. But i am not sure about the jso n structure of the user to create. I tried : *loopback.create({username : 'someUserName', password: 'somePassword'}, function(err,user){
});*
But when i try to login to composer rest server by posting my credentials to */auth/local/callback* i dont get the auth token.
Anyone has done this approach before. any help is much appreciated.
[ ](https://chat.hyperledger.org/channel/composer?msg=mjvivczs4GctWCY44) @rthatcher Ok, thanks, and I also confused with this description in the README.md https://github.com/hyperledger/composer-sample-applications/tree/master/packages/digitalproperty-app,
it declares that "There scripts use Node v6, and bash". But you mentioned you asked me to install v8.9.
[ ](https://chat.hyperledger.org/channel/composer?msg=AoHcjrgjRvJTWNRiZ) @Vincent - I will follow up on why it still says Node v6
thanks, I am removing ,and redo it again
I am trying to connect a network having 2 orgs (1 peer and 1 ca each) and one (SOLO) orderer. I have already generated all the cryptos and channel.tx file starting from a customized configuration. Exploring the contents of the channel.tx and the genesis.block I can see the certificates of both the MSPs.
I am using Composer (0.13.2) to import the `admin:adminpw` identity (with `org1` credentials and connection profile `org1MSP`) and the same user and connection to deploy. In the end, I import the identity of a second admin user, `admin2`, using the credential provided by `org2` and org2 connection profile (in which `org2MSP` is specified). Everything works fine till here.
Then, I try to deploy the same .bna with the `admin2` user and connection profile for org2 and I get back the following error from the CLI:
```
Error: Error trying deploy. Error: Failed to deserialize creator identity, err MSP org2MSP is unknown
```
Is this the correct way to install and instantiate the chaincode on a peer through Composer?
If I try to use the same MSP in the connection profile, I receive a different error:
```
Error: Error trying deploy. Error: Error trying install composer runtime. Error: Failed to deserialize creator identity, err Expected MSP ID org2MSP, received org1MSP
```
I believe something (keys/certificates) is missing or wrongly configured, but I am not sure where, as I do not see any error log on the peer, orderer or ca.
Any ideas? thanks
@rthatcher another question, could you tell me whether node v8.10.0 is supported for the demo of "digitalproperty-app"
after I redo some steps on installing compose, the node version is changed to v8.10.0 automatically by itself
so do I need to change it to v8.9 manually to continue ?
[ ](https://chat.hyperledger.org/channel/composer?msg=AKdZJvaoDEJicKLs7) @czar0 - Composer v0.13.2 is *very old* now. You should upgrade to the latest v0.16.x version if you can. This tutorial should be a useful guide to help you with what you are doing.
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html
https://hyperledger.github.io/composer/reference/model-compatibility is this docs section still in progress?
@rthatcher after redo it again, it works !!! Thanks a lot!!!
:grinning:
@joaofguerreiro I don't believe any of the docs are set in stone and feedback is always welcome
If there's a particular issue which you feel needs to be addressed by the docs then please feel free to raise it in GitHub ;)
@joaofguerreiro I don't believe any of the docs are set in stone and feedback is always welcome
If there's a particular issue which you feel needs to be addressed by the docs then please feel free to raise it in GitHub :)
[ ](https://chat.hyperledger.org/channel/composer?msg=xafWdZct5yhFN4yGq) @smithsj I'll raise an issue yes, thanks!
We've released Hyperledger Composer v0.18.1, with built-in support for the "request" module, several important bug fixes around cards and wallets, and the latest CongaComic! 🎉 https://github.com/hyperledger/composer/releases/tag/v0.18.1
Has joined the channel.
Hello everyone I am new to Hyperledger Composer. I am writing business logic but I am unable to understand when a particular function is going to be called like will the function only be called when a transaction is being started and for each transaction there is just one function?
Also please let me know if there is a way like I want to perform certain operations when a participant is being created
is that possible?
has anyone been able to get the sample networks to work?
[ ](https://chat.hyperledger.org/channel/composer?msg=Xkq7Qx22AYZ8cuvb6) @mc yup
@ulhaqanwaar web-based or on Fabric itself?
web-based
I can get web-based to work too, but not as a business network on Fabric
@ulhaqanwaar is there a way to do REST API interaction with web-based?
[ ](https://chat.hyperledger.org/channel/composer?msg=yXHW7ummzaEDLPD6p) @rthatcher Is there no way to have a multi-org network on version 0.13.2? Upgrading to a newer version of Composer will take additional effort.
[ ](https://chat.hyperledger.org/channel/composer?msg=rMQwJmeAd2pW2NvCQ) @mc @ulhaqanwaar - have you seen the Developer Tutorial? It goes through setting up a developmet environment including a Development Fabric, and then running a Business Network on the Fabric.
https://hyperledger.github.io/composer/tutorials/developer-tutorial
The REST API server only works against a Fabric - not with the Web Based Playground.
@rthatcher That's what I figured
is there any documentation on getting any of the examples up and running on a Fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=9vjLEBrHBLbSJDjR3) @mc - the tutorial I provided the link for has a sample in it. When you have completed the Tutorial you will see how to deploy the other samples to a Fabric.
@czar0 - it is possible to use 0.13.2 for a multi-org network - but there is no guide for it and much has changed in the documentation. I would strongly advise you to take the plunge and upgrade to v0.16.x
@rthatcher I see what you are saying, thanks. I'll try that.
Has joined the channel.
Has joined the channel.
Has left the channel.
Hello.. I am trying to sort the resources in the decreasing order using
Hello.. I am trying to sort the resources in the decreasing order using and `_$node = resource:org.decentralized.test.network.Node#1234`. It is throwing error. How can I use `ORDER BY` on DateTime field.
Hello.. I am trying to sort the resources in the decreasing order using <```
query selectActorsByNode {
description: "Select all actors running on this node"
statement:
SELECT org.decentralized.test.network.Actor
WHERE ( node == _$node)
ORDER BY [lastCreatedTime DESC]
}
``` > and `_$node = resource:org.decentralized.test.network.Node#1234`. It is throwing error. How can I use `ORDER BY` on DateTime field.
Hello.. I am trying to sort the resources in the decreasing order using ```
query selectActorsByNode {
description: "Select all actors running on this node"
statement:
SELECT org.decentralized.test.network.Actor
WHERE ( node == _$node)
ORDER BY [lastCreatedTime DESC]
}
``` and `_$node = resource:org.decentralized.test.network.Node#1234`. It is throwing error. How can I use `ORDER BY` on DateTime `lastCreatedTime` field?
@rthatcher I saw today the release 0.18.1, great
But my question more about the node keywork 'require' that can request node modules than the module request itself
@rthatcher I saw today the release 0.18.1, great
But my question more about the node keywork 'require' that can request node modules than the module request itself
[ ](https://chat.hyperledger.org/channel/composer?msg=gSx8Zff9gD3df6aTe)
@rthatcher I saw today the release 0.18.1, great
But my question is more about the node keywork 'require' that can request node modules than the module request itself
[ ](https://chat.hyperledger.org/channel/composer?msg=gSx8Zff9gD3df6aTe)
@rthatcher I saw today the release 0.18.1, great
But my question is more about the node keywork 'require' that can request node modules than the module request itself.
The question is for importing files too
[ ](https://chat.hyperledger.org/channel/composer?msg=gSx8Zff9gD3df6aTe)
[ ](https://chat.hyperledger.org/channel/composer?msg=nh55xmPKac53QdLpv) @AkshayJindal - there are some examples, and also some Issues documented in the Knowledge Wiki which should help:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--queries-and-query-support--examples
Has joined the channel.
Hi everyone. Can i use ES6/ES7 at the transation logic.js code? I found that i got the correct syntax because eslint showed no error. But i got the SyntaxError: the 'const' keyword is reserved while i am trying to create .bna file with this command: `omposer archive create -t dir -n .`
Hi everyone. Can i use ES6/ES7 at the transation logic.js code? I found that i got the correct syntax because eslint showed no error. But i got the SyntaxError: the 'const' keyword is reserved while i am trying to create .bna file with this command: `composer archive create -t dir -n .`
Has joined the channel.
Oh dear. I found that Javascript runtime library was implemented by ES5 syntax so I must follow this rule. Hopefully, the new update can come soon with ES6 feauture.
[ ](https://chat.hyperledger.org/channel/composer?msg=BgB9M6ameEZkhw2v9) @rthatcher Thanks I managed with v0.13.2. The only issue was that `peer0.org2` was not in the right channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Xmgfpv62XydY52BRA) @rthatcher Thank you. I created the index in the couchdb and then it worked. But I dont knw what happened here by creating an index for `lastCreatedTime` field. Could you please explain if possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=Xmgfpv62XydY52BRA) @rthatcher Thank you. I created the index in the couchdb and then it worked. But I dont know how it happened here by creating an index for `lastCreatedTime` field. Could you please explain if possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=Xmgfpv62XydY52BRA) @rthatcher Thank you. I created index in couch db as mentioned in the link. But it is not giving correct results. ```
{
"index": {
"fields": [
"data.lastCreatedTime"
]
},
"type": "json"
}
``` Once the index is created, couchdb automatically assign `asc` to this field. I have mentioned `ORDER BY [lastCreatedTime DESC]` in query. When I run the query it does not throw error but records are not sorted.
Has joined the channel.
Is there any way to create a participant inside a Transaction? Because there are complex checks on allowing anyone to create a client user as participant need a workaround please
Hello everyone. I was trying this link to install composer on Fabric *https://hyperledger.github.io/composer/installing/development-tools.html* when I was trying to create peer it was throwing me errors
Could anyone please help to get out of this error
`~/fabric-tools$ ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.4
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'
Command failed
`
@Vanitha installation issue try installing via yarn package manager and run these commands as non root user
[ ](https://chat.hyperledger.org/channel/composer?msg=fAiLG9utoq4bGocEk) @ulhaqanwaar - yes you can create a Participant in a Transaction in the same way that you create an Asset - you just work with the Participant registry instead of the Asset registry.
Correct me if I'm wrong, but CouchDB is the default database for Composer applications? Also, can we swap CouchDB for a different database?
@ranjithkumarmv I am running in non root user itself, but have a query what is the effect of running all the command with yarn package manger?
@Vanitha i was getting the same error while installation after trying out many ways yarn package manager works for me. Difference is by using npm there is dependency package called grpc or gyp will not install properly.
@Vanitha i was getting the same error while installation after trying out many ways yarn package manager works for me. Difference is by using npm there is dependency package called grpc or gyp will not install properly. with yarn package it will install properly.
[ ](https://chat.hyperledger.org/channel/composer?msg=pMDjxbkd6xhj2CbcP) @joaofguerreiro - levelDB is the default database for Hyperledger Fabric for the State database. Composer uses whatever State Database is defined for the Fabric it is connecting to. CouchDB is Optional for Fabric and gets started in a separate docker container. Queries are very limited for Composer when levelDB is used - so the Dev Fabric Composer uses has a CouchDB. The Fabric documentation and #Fabric channel will know if there are other options for the State database.
[ ](https://chat.hyperledger.org/channel/composer?msg=fJhgoQJdYv9qedDRn) @rthatcher thanks, you've been really helpful for the past hours!
@rthatcher I removed node and composer from my system this morning (rather savagely :-) ) and reinstalled Node 8 using nvm from scratch. This fixed the node-gyp issues and composer installed cleanly after that. Thanks.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hello guys, does something change with `getSerializer().toJSON()` in 0.18.1?
In release 0.18.0, `getSerializer().toJSON(tx)` works fine, but in release 0.18.1, I have the following error
```
ValidationException: Model violation in instance com.example.MyOwnTransaction#1def330b-0f9b-42ec-8591-a0f4fdf61b2b class com.example.MyToken has value Resource {id=com.example.MyToken#token1} expected a Relationship.
at Function.reportNotRelationshipViolation (node_modules/composer-common/lib/serializer/resourcevalidator.js:465:15)
at ResourceValidator.checkRelationship (node_modules/composer-common/lib/serializer/resourcevalidator.js:388:31)
at ResourceValidator.visitRelationshipDeclaration (node_modules/composer-common/lib/serializer/resourcevalidator.js:370:18)
at ResourceValidator.visit (node_modules/composer-common/lib/serializer/resourcevalidator.js:76:25)
at RelationshipDeclaration.accept (node_modules/composer-common/lib/introspect/decorated.js:54:24)
at ResourceValidator.visitClassDeclaration (node_modules/composer-common/lib/serializer/resourcevalidator.js:174:26)
at ResourceValidator.visit (node_modules/composer-common/lib/serializer/resourcevalidator.js:74:25)
at TransactionDeclaration.accept (node_modules/composer-common/lib/introspect/decorated.js:54:24)
at Serializer.toJSON (node_modules/composer-common/lib/serializer.js:97:30)
at Serializer.toJSON (node_modules/composer-runtime/lib/api/serializer.js:66:31)
at MyOwnTransaction (eval at
Hello guys, does something change with `getSerializer().toJSON()` in 0.18.1?
In release 0.18.0, `getSerializer().toJSON(tx)` works fine, but in release 0.18.1, I have the following error
```
ValidationException: Model violation in instance com.example.MyOwnTransaction#1def330b-0f9b-42ec-8591-a0f4fdf61b2b class com.example.MyToken has value Resource {id=com.example.MyToken#token1} expected a Relationship.
at Function.reportNotRelationshipViolation (node_modules/composer-common/lib/serializer/resourcevalidator.js:465:15)
at ResourceValidator.checkRelationship (node_modules/composer-common/lib/serializer/resourcevalidator.js:388:31)
at ResourceValidator.visitRelationshipDeclaration (node_modules/composer-common/lib/serializer/resourcevalidator.js:370:18)
at ResourceValidator.visit (node_modules/composer-common/lib/serializer/resourcevalidator.js:76:25)
at RelationshipDeclaration.accept (node_modules/composer-common/lib/introspect/decorated.js:54:24)
at ResourceValidator.visitClassDeclaration (node_modules/composer-common/lib/serializer/resourcevalidator.js:174:26)
at ResourceValidator.visit (node_modules/composer-common/lib/serializer/resourcevalidator.js:74:25)
at TransactionDeclaration.accept (node_modules/composer-common/lib/introspect/decorated.js:54:24)
at Serializer.toJSON (node_modules/composer-common/lib/serializer.js:97:30)
at Serializer.toJSON (node_modules/composer-runtime/lib/api/serializer.js:66:31)
at MyOwnTransaction (eval at
Hello guys, does something change with `getSerializer().toJSON()` in 0.18.1?
In release 0.18.0, `getSerializer().toJSON(tx)` works fine, but in release 0.18.1, I have the following error
```
ValidationException: Model violation in instance com.example.MyOwnTransaction#1def330b-0f9b-42ec-8591-a0f4fdf61b2b class com.example.MyToken has value Resource {id=com.example.MyToken#token1} expected a Relationship.
at Function.reportNotRelationshipViolation (node_modules/composer-common/lib/serializer/resourcevalidator.js:465:15)
at ResourceValidator.checkRelationship (node_modules/composer-common/lib/serializer/resourcevalidator.js:388:31)
at ResourceValidator.visitRelationshipDeclaration (node_modules/composer-common/lib/serializer/resourcevalidator.js:370:18)
at ResourceValidator.visit (node_modules/composer-common/lib/serializer/resourcevalidator.js:76:25)
at RelationshipDeclaration.accept (node_modules/composer-common/lib/introspect/decorated.js:54:24)
at ResourceValidator.visitClassDeclaration (node_modules/composer-common/lib/serializer/resourcevalidator.js:174:26)
at ResourceValidator.visit (node_modules/composer-common/lib/serializer/resourcevalidator.js:74:25)
at TransactionDeclaration.accept (node_modules/composer-common/lib/introspect/decorated.js:54:24)
at Serializer.toJSON (node_modules/composer-common/lib/serializer.js:97:30)
at Serializer.toJSON (node_modules/composer-runtime/lib/api/serializer.js:66:31)
at MyOwnTransaction (eval at
Hello guys, does something change with `getSerializer().toJSON()` in 0.18.1?
In release 0.18.0, `getSerializer().toJSON(tx)` works fine, but in release 0.18.1, I have the following error
```
ValidationException: Model violation in instance com.example.MyOwnTransaction#1def330b-0f9b-42ec-8591-a0f4fdf61b2b class com.example.MyToken has value Resource {id=com.example.MyToken#token1} expected a Relationship.
at Function.reportNotRelationshipViolation (node_modules/composer-common/lib/serializer/resourcevalidator.js:465:15)
at ResourceValidator.checkRelationship (node_modules/composer-common/lib/serializer/resourcevalidator.js:388:31)
at ResourceValidator.visitRelationshipDeclaration (node_modules/composer-common/lib/serializer/resourcevalidator.js:370:18)
at ResourceValidator.visit (node_modules/composer-common/lib/serializer/resourcevalidator.js:76:25)
at RelationshipDeclaration.accept (node_modules/composer-common/lib/introspect/decorated.js:54:24)
at ResourceValidator.visitClassDeclaration (node_modules/composer-common/lib/serializer/resourcevalidator.js:174:26)
at ResourceValidator.visit (node_modules/composer-common/lib/serializer/resourcevalidator.js:74:25)
at TransactionDeclaration.accept (node_modules/composer-common/lib/introspect/decorated.js:54:24)
at Serializer.toJSON (node_modules/composer-common/lib/serializer.js:97:30)
at Serializer.toJSON (node_modules/composer-runtime/lib/api/serializer.js:66:31)
at MyOwnTransaction (eval at
Hello guys, does something change with `getSerializer().toJSON()` in 0.18.1?
In release 0.18.0, `getSerializer().toJSON(tx)` works fine, but in release 0.18.1, I have the following error
```
ValidationException: Model violation in instance com.example.MyOwnTransaction#1def330b-0f9b-42ec-8591-a0f4fdf61b2b class com.example.MyToken has value Resource {id=com.example.MyToken#token1} expected a Relationship.
at Function.reportNotRelationshipViolation (node_modules/composer-common/lib/serializer/resourcevalidator.js:465:15)
at ResourceValidator.checkRelationship (node_modules/composer-common/lib/serializer/resourcevalidator.js:388:31)
at ResourceValidator.visitRelationshipDeclaration (node_modules/composer-common/lib/serializer/resourcevalidator.js:370:18)
at ResourceValidator.visit (node_modules/composer-common/lib/serializer/resourcevalidator.js:76:25)
at RelationshipDeclaration.accept (node_modules/composer-common/lib/introspect/decorated.js:54:24)
at ResourceValidator.visitClassDeclaration (node_modules/composer-common/lib/serializer/resourcevalidator.js:174:26)
at ResourceValidator.visit (node_modules/composer-common/lib/serializer/resourcevalidator.js:74:25)
at TransactionDeclaration.accept (node_modules/composer-common/lib/introspect/decorated.js:54:24)
at Serializer.toJSON (node_modules/composer-common/lib/serializer.js:97:30)
at Serializer.toJSON (node_modules/composer-runtime/lib/api/serializer.js:66:31)
at MyOwnTransaction (eval at
Of course, if I had option {convertResourcesToRelationships: true} or {permitResourcesForRelationships: true} or {validate: false} it works in release 0.18.1
So perhaps default values changed??
Hi , I am getting a validation error when using the `Datetime` primitive. I have used this before without an error. Would appreciate any pointers. Here is a snippet of my declaration in my `.cto` file below:
```
participant Patient identified by patientId {
o String patientId
o String firstName
o String lastName
o Datetime dateOfBirth
o String homeAddress
o String doctorName
o String Doct
}
```
Error: `t: Undeclared type Datetime in property org.medichain.mvp.Patient.dateOfBirth`
[ ](https://chat.hyperledger.org/channel/composer?msg=JAhdqAPoEkLyY45fC) @SamuelDare it's DateTime, not Datetime
@ppcm Serializer has not changed between 0.18.0 and 0.18.1
Guys
I'm using this URL to update hyperledger composer
https://hyperledger.github.io/composer/managing/updating-composer
but each time I follow the steps I get version 0.16.6 installed instead of 18.1
Anyone could help in this?
thanks in advance
@mostafa.elsayyad see https://hyperledger.github.io/composer/next/installing/development-tools on how to install the `next` version of composer which is currently at 0.18.1.
[ ](https://chat.hyperledger.org/channel/composer?msg=yTr6kPkMvHeuDcBwh) @joaofguerreiro d'oh! Thansk
Composer (but not Fabric) newb, so apologies if this question is rudimentary: Transactions seem like they are serving the function of chaincode, but they're written in Javascript. Are these actually executed on the fabric endorsing peers in some kind of golang-hosted Javascript sandbox? Or are these not really comparable to chaincode? Or how does this map?
@hamptonsmith yep, transaction logic is run inside a duktape JS container running inside the fabric at the moment
@hamptonsmith yep, transaction logic is run inside a duktape JS container running inside the fabric at the moment (ie. composer@latest running with fabric 1.0) although that changes in composer@next to use native JS support in fabric 1.1
@smithsj Aha, thank you! Do I understand you correctly that Fabric itself will support native JS chaincode soon?
yes there's an alpha version available at the moment I think.
Very cool. Thanks for the heads up/clearing that up for me!
no problems :)
Does composer supports coachdb ? if yes how do we configure and will it have any impact on modelling or query written in composer
Does composer supports couchdb? if yes how do we configure and will it have any impact on modelling or query written in composer
It could be stupid question as I am learning and new .. but wanted to understand how are participants tied with Organization when we define the model.
For example if I have 3 participants(Grower, Shipper, Trader) and have a network of 3 organization(OrgGrower,OrgShipper, OrgTrader)
then will adding participants how is the one to one relationship mapped between Participants and Organization.
I want to do all this via Web site and give access to administrator for adding only there participants and but also want to
have a super admin which has access to all the organization. Is this achievable via Hyperledger composer
can you please let me know on it
please help me understand this .. how are participants tied with Organization when we define the model.
For example if I have 3 participants(Grower, Shipper, Trader) and have a network of 3 organization(OrgGrower,OrgShipper, OrgTrader)
then will adding participants how is the one to one relationship mapped between Participants and Organization.
I want to do all this via Web site and give access to administrator for adding only there participants and but also want to
have a super admin which has access to all the organization. Is this achievable via Hyperledger composer
can you please let me know on it
please let me know on it .. i wanted to understand how are participants tied with Organization when we define the model.
For example if I have 3 participants(Grower, Shipper, Trader) and have a network of 3 organization(OrgGrower,OrgShipper, OrgTrader)
then will adding participants how is the one to one relationship mapped between Participants and Organization.
I want to do all this via Web site and give access to administrator for adding only there participants and but also want to
have a super admin which has access to all the organization. Is this achievable via Hyperledger composer
I assume you mean couchdb?
yep sorry for typo
if so then yes Composer does support it! it shouldn't have any impact on your modelling or queries. It looks like support was added here https://github.com/hyperledger/composer/issues/820
is ` admin` and ` adminpw ` default username and password for composer?
@smithsj thanks
@phanikumar sort of but not really, they're used/needed when you use composer in the samples/tutorials that are provided. They're the default username/password that are specified to the CA server that you start when you start the docker containers that get a fabric environment running. Search the docs for Identities and that'll help you understand about how users/identities are enrolled/used in fabric
@phanikumar sort of but not really, they're used/needed when you use composer in the samples/tutorials that are provided. Search the docs for Identities and that'll help you understand about how users/identities are enrolled/used in fabric
can we deploy multiple .bna files onto a single fabric?
Deploying 0.18.1 -- best way to *manually remove cards* re: `Business Network Cards are not transferable between v0.16.x and v0.17.x onwards. It will be necessary to manually clear your card store in order to use a different version. Please note that the CLI command to delete a named card will not work correctly if targeting a named card that was created from a different version.`??
Hello Team, got the following issue while dwploying .bna file. Please help me out.
"composer network deploy -a /home/ubuntu/miraclesoft-blockchain.bna -A admin -S adminpw -c PeerAdmin@hlfv1 -f networkadmin.card"
Deploying business network from archive: /home/ubuntu/miraclesoft-blockchain.bna
Business network definition:
Identifier: miraclesoft-blockchain
Description: Supply Chain management using blockchain
✖ Installing runtime for business network undefined. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Command failed
Hello Team, got the following issue while deploying .bna file. Please help me out.
"composer network deploy -a /home/ubuntu/miraclesoft-blockchain.bna -A admin -S adminpw -c PeerAdmin@hlfv1 -f networkadmin.card"
Deploying business network from archive: /home/ubuntu/miraclesoft-blockchain.bna
Business network definition:
Identifier: miraclesoft-blockchain
Description: Supply Chain management using blockchain
✖ Installing runtime for business network undefined. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Command failed
@MasthanbeeShaik_123 check docker for running containers e.g. `docker images | grep fabric` or `docker images'
@MasthanbeeShaik_123 check docker for running containers e.g. `docker images | grep fabric` or `docker images`
You can also check Kitematic if you have access to docker's UI
cd
docker.PNG
What version of composer are you running -- you can do a `composer --v`
v0.16.6 it seems
v0.16.6
containers.PNG
@MasthanbeeShaik_123 before deploy you should install runtime `composer runtime install -c PeerAdmin@fabric-network -n tutorial-network
` for more details follow this documentation https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
@MasthanbeeShaik_123 before deploy you should install runtime ` composer runtime install -c PeerAdmin@fabric-network -n tutorial-network ` for more details follow this documentation https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org
@CT123 the card store and client-data will be the directory `${HOME}/.composer`, so you can delete the `.composer` directory and it's contents
Any links to github examples of composer rest server with a hardcoded user database (like a flat file) for testing with?
@sstone1 @caroline-church what tool are you using to edit the GHPages content? I'd like to align the approach we use to download/install fabric binaries and docker images
specifically, to use the fabric/scripts/bootstrap.sh and also to use the goo.gl short URL to retrieve that so that we can track (to a certain degree) downloads
@rthatcher thanks man
Either that, or simply refer the reader to the fabric docs http://hyperledger-fabric.readthedocs.io/en/release-1.1/samples.html#download-platform-specific-binaries
Has anyone run into `Error trying login and get user Context. Error: Er…[[{"code":20,"message":"Authorization failure` when running composer rest server 0.18.1 on fabric 1.1 using mongodb loopback connector??
A lot of these errors are so poorly documented, there is no documentation on what that error means at all
I don't understand why making a simple request to the API would need to re enroll a user. How do I stop the REST API from re-enrolling users on every request?
2018/03/13 21:40:50 [DEBUG] Received request for /api/v1/enroll
2018/03/13 21:40:50 [DEBUG] ca.Config: &{Version:1.1.0-rc1 Cfg:{Identities:{AllowRemove:false} Affiliations:{AllowRemove:false}} CA:{Name:ca.org1.example.com Keyfile:/etc/hyperledger/fabric-ca-server-config/19ab65abbb04807dad12e4c0a9aaa6649e70868e3abd0217a322d89e47e1a6ae_sk Certfile:/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem Chainfile:/etc/hyperledger/fabric-ca-server/ca-chain.pem} Signing:0xc4202eda80 CSR:{CN:ca.org1.example.com Names:[{C:US ST:North Carolina L: O:Hyperledger OU:Fabric SerialNumber:}] Hosts:[a6422aed8a16
localhost] KeyRequest:
Has joined the channel.
Hi, can someone help me create a new identity with a secret. When I make one in Playground i'm not seeing the secret key and can't seem to make a CERT.
Is anyone aware why this error occur```
Error: Error trying to instantiate composer runtime. Error: Error: 2 UNKNOWN: Failed to deserialize creator identity, err MSP Org1MSP is unknown
```
@mohdhafeezaj try to delete your local browser storage for cards
@ppcm : i was able to resolve .. docker was not starting completely .. increased the time out it helped .. but i am getting a error when I ping the network `composer network ping --card admin@cargo-network`
it says `Error: Card not found: admin@cargo-network@0.0.1` .. but i was able to install start and import card successfully
```
@davidkel hey, I noticed you commited this change https://github.com/davidkel/fabric-composer/commit/724f06f6fbf453650114597a81b1303123ade9e2#diff-5adcbe7790134eaeb008b418bbeeb6f7 do you know how I can set options for the rest api?
any help here plz error: ```
unhandledRejection Error: Error trying to ping. Error: Composer runtime (0.18.0) is not compatible with client (0.17.6)
```
It could be stupid question.. but wanted to understand how are participants tied with Organization when we define the model.
For example if I have 3 participants(Grower, Shipper, Trader) and have a network of 3 organization(OrgGrower,OrgShipper, OrgTrader)
then will adding participants how is the one to one relationship mapped between Participants and Organization.
I want to do all this via Web site and give access to administrator for adding only there participants and but also want to
have a super admin which has access to all the organization. Is this achievable via Hyperleder composer
hi could not able to establish rest api auth with passport-auth0 , i can establish with passport-github though .Is everyone facing same issue ?
i could not able to establish rest api auth with passport-auth0 , i can establish with passport-github though .Is everyone facing same issue ?
i can able to sign up with auth0 but the access token is not retrieved by composer rest server
below is my passport-auth0 config
export COMPOSER_PROVIDERS='{
"auth0": {
"provider": "auth0",
"module": "passport-auth0",
"domain":"test619.auth0.com",
"clientID": "fEtazNHtlmUp04ZOCg7QNe3OteDctkyL",
"clientSecret": "Bsf8d8TaUNJ9tahIWidCGhoAFcc9JQCjwrpTphDdcBW_X_szeZ-g2hE6Kw26LXGR",
"authPath": "/auth/auth0",
"callbackURL": "/auth/auth0/callback",
"scope":"openid email",
"audience": "https://test619.auth0.com/api/v2/",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=8ttiKSjWcDpkWJsfm) @davidkel many thanks!
@mohdhafeezaj The second half of the message tells you to upgrade your client (npm install composer-client:0.18.0) and try again. If the unhandledrejectionerror persists, then you appear to have implement the .then but not the .catch for your client call. You need to catch errors as well as success path.
How do I deploy composer to AWS or OpenStack?
How do I deploy composer to AWS or OpenStack? All I need is to deploy my network to either AWS or Openstack to use the blockchain.
[ ](https://chat.hyperledger.org/channel/composer?msg=DpvaRWcDrRXF6dn2Z) @mohdhafeezaj Did you import the card?
@divudivyansh yes i did import the card
Does anyone know how to configure the blockexplorer inorder for it to work with composer network deployed locally in fabric?
Can I use ES6/ES7 in the business logic?
Has joined the channel.
I am trying to use Hyperledger Composer Developer Tutorial
But stuck while running ./startFabric.sh script, facing _error: Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running?_
Although I installed Docker as a part of setting development environment, but did not run the daemon. how should I do that?
[ ](https://chat.hyperledger.org/channel/composer?msg=wpLrfXgvtoJ6GfLfA) worked with sudo ./startFabric.sh
Clipboard - March 14, 2018 2:01 PM
I am able to start composer-playground
but unable to open in webbrowser
http://localhost:8080/login
please suggest how to open it
Has joined the channel.
I was using Composer Rest Server and import Card using playground and when make any request if found this error
```
I was using Composer Rest Server and import Card using playground and when make any request if found this error
```
Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'admin' and the identifier '7ca214e821996c22293b73ae2beb7079ecf902aaea63084e4c4496b60b10eb9b', has not been registered
```
Is anyone can help to tell me why there is no Model File in this composer network?
https://github.com/hyperledger/composer-sample-networks/tree/v0.16.x/packages/digitalproperty-network
But others network demo under packages all have Model File, Why ??
Help!
and I noticed that in package.json, below code shows that dependencies, Does it mean this demo put this model to npm repository ?
"dependencies": {
"digitalproperty-model": "^0.1.2"
}
Has joined the channel.
Has joined the channel.
Facing this error Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1".
On running fabric tool ./createPeerAdminCard.sh
any help please?
[ ](https://chat.hyperledger.org/channel/composer?msg=YLJiC77SgihfmZnzM) @Vincent - the model is here in sample models. I the sample networks inherit/include sample models. https://github.com/hyperledger/composer-sample-models/tree/v0.16.x/packages/digitalproperty-model
hmm. Thanks ! it confuse me , why not put it together ...
[ ](https://chat.hyperledger.org/channel/composer?msg=y5PA3sgoNNz5HptXP) @VijayThakre - this error usually means that you are running Node v6, but Composer requires Node v8. I think you will need to uninstall the composer code then upgrade Node and re-install Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=BAP7SymQwNKTZHbQr) @rthatcher node version is 9.6.1 in my machine will it be a problem
[ ](https://chat.hyperledger.org/channel/composer?msg=xFyDSctAA7ZmaK8NF) @nasserfci - are you seeing the error in Playground, or in Rest Server?
[ ](https://chat.hyperledger.org/channel/composer?msg=g3HiAGrCQ4Ypm6Fsn) @suva - are you running on an azure cloud system without a GUI ? I would think you need to find the IP address of the system you are using and then use that address instead of localhost - you might also have a firewall to configure.
[ ](https://chat.hyperledger.org/channel/composer?msg=MGtto93GKqprfm9Fj) @VijayThakre - you should not need to sudo for the startFabric.sh script if Docker is correctly installed. As part of the install your non-root user should be added to the docker GID group, but you might need to logout and back in again for the group to be active.
[ ](https://chat.hyperledger.org/channel/composer?msg=PKc4yag29ccijR8P7) @alexdevassy - there are a few posts in Stack Overflow, and searching for the tags [hyperledger-composer] and [hyperledger-explorer] returns a few results. By default the Explorer uses IP port 8080 which is the same as Composer so you might need to watch out for that in your configuration.
https://stackoverflow.com/questions/tagged/hyperledger-composer+hyperledger-explorer
Hello.. I wanted to sort the list of assets, returned by query, using `ORDER BY` on `timestamp` field. It didn't work.. Then I tried to create an index in couch db but that also didn't give sorted results...Can I use `sort` javascript function to achieve this in TP?
@rthatcher , could you please tell me why in my Playgound UI , there are two parts: Connection: hlfv1 and Connection:Web Browser
what is the difference between them ? thanks!
I don't know which one should I use
[ ](https://chat.hyperledger.org/channel/composer?msg=MAo9B94qPmMHEiGtF) @Vincent - Under the Web Part you are using a 'dummy fabric' in the local storage of the Browser. Under hlfv1 you are using a 'real Fabric' - probably the Dev Fabric you created with the startFabric.sh script.
Got it . Thank you rthatcher:blush:
[ ](https://chat.hyperledger.org/channel/composer?msg=jC5xEDgLwiLwY5jPR) @rthatcher
i understand that i shouldn't import it in playground and restserver in same time but i didn't know why you do that
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=S2h9LMGCYnC49Eots) @nasserfci - you can run the Playground and REST server at the same time and use the same card :-) I just wanted to know exactly where you see the error as there is a bug with the REST server. What version of composer are you using, and where did you see the error ?
[ ](https://chat.hyperledger.org/channel/composer?msg=mEFeqFEF5fH5Ch3hy) @rthatcher
my composer restserver version is v0.16.5
the error appear when import card in playground and import the same card in composer rest server
[ ](https://chat.hyperledger.org/channel/composer?msg=vxoCNsSJJwMzLdSQm) @nasserfci - this could be an 'old' card - have you restarted your Fabric since you last used the card? Can you use the card on the CLI to ping the network?
[ ](https://chat.hyperledger.org/channel/composer?msg=EE5wNHTFmMYNN4YJK) @rthatcher
no i didn't restarted fabric since last used the card
how can i ping the network without import it in playground wallet ?
@rthatcher when I deploy a new business network, it shows me : Error: Error trying install composer runtime. Error: The Composer runtime is already installed on all the peers
Could you pls take a look ?
thanks
what is the difference between `composer network start` and `composer network deploy`
what is the difference between `composer network start` and `composer network deploy`. Some docs are running composer network deploy without `composer runtime & composer network start`
what is the difference between `composer network start` and `composer network deploy`. Some docs are running `composer network deploy` without `composer runtime & composer network start`
@rthatcher , Can you help me how to firewall to configure?
i was implementing oauth2 https://github.com/hyperledger/composer/blob/cf8ac15971fc04e95a53bc8fd7061c1f102ba598/packages/composer-website/jekylldocs/tutorials/google_oauth2_rest.md , i could not able to start the rest server
$docker logs rest
gives this error Discovering types from business network definition ...
Connection fails: Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
It will be retried for the next request.
Exception: Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
at ConnectionProfileManager.getConnectionManagerByType (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:76:23)
at Promise.resolve.then (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:191:25)
at
i was implementing oauth2 https://github.com/hyperledger/composer/blob/cf8ac15971fc04e95a53bc8fd7061c1f102ba598/packages/composer-website/jekylldocs/tutorials/google_oauth2_rest.md , i could not able to start the rest server
$docker logs rest
gives this error Discovering types from business network definition ...
Connection fails: Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
It will be retried for the next request.
Exception: Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
at ConnectionProfileManager.getConnectionManagerByType (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:76:23)
at Promise.resolve.then (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:191:25)
at
When I model cto file, there is an error : Namespace is not defined for type org.acme.***Network, what is the restriction for this namespace ??
`composer network update --card PeerAdmin@hlfv1 --archiveFile tata-shrimp-pilot@0.1.0.bna`
```
Updating business network from archive: tata-shrimp-pilot@0.1.0.bna
Business network definition:
Identifier: tata-shrimp-pilot@0.1.0
Description: Pilot for tata shrimp
✖ Updating business network definition. This may take a few seconds...
Error: No business network has been specified for this connection
Command failed
```
Trying to update chaincode, says business network has not been specified but the `composer network update` does not take more than two commands.
Has joined the channel.
tar - tape archive
cto -
how cto extension is abbreviated?
[ ](https://chat.hyperledger.org/channel/composer?msg=oxNio5ggZm76b3uAs) @phanikumar - we are in the process of updating the documentation. You should NOT use the deploy command. You should use runtime install then network start.
[ ](https://chat.hyperledger.org/channel/composer?msg=6LBq7Aiw2Nvfac6ei) @suva - unfortunately no, you will have to investigate and solve that.
[ ](https://chat.hyperledger.org/channel/composer?msg=uM2DKaDqMGo87CG3F) @chandrakanthm - the error with "no 'x-type' property defined." is because you are using v0.17 (or v0.18) version of Composer with a v0.16.x or earlier Business Network Card. So nmy guess is that you have got v0.16.x installed and the Container has the Rest Server with v0.17 or 18
Is there any way to run the Rest-Server of Hyperledger Composer on another IP/Network than running on a localhost-port ?
The beginning is this "asset Product identified by prodId{}", and then I want to change it to "asset Product identified by barcode {}", is identified changed, update the network before the product's data will no longer be found When it arrives, the missed identified error will be reported. There is no way to submit data to the registry. I would like to ask this situation do not need to re-deploy business network? Update operation has no effect
The beginning is this "asset Product identified by prodId{}", and then I want to change it to "asset Product identified by barcode {}" is identified changed, after the implementation of the update operation, the previous Product data will no longer find Failed, and reported "missing identified" error, to submit data to the above is no way to record to the registry. I would like to ask this situation do not need to re-deploy business network?
[ ](https://chat.hyperledger.org/channel/composer?msg=b5ygDsGjWgodQYnD6) @Jaline Since you have changed the definition of your contract, you would have to redeploy your network.
[ ](https://chat.hyperledger.org/channel/composer?msg=CBue5nkrECSfKHzCY) @divudivyansh - you can set the port on the command line by specifying `-p 3003` for example. For the IP, I'm not sure it is specifically bound to localhost - if you try and hit the rest server on the IP of the machine you are running on it should work.
[ ](https://chat.hyperledger.org/channel/composer?msg=CBue5nkrECSfKHzCY) @divudivyansh You can push your network to Bluemix.
[ ](https://chat.hyperledger.org/channel/composer?msg=Y9moMCSKCT49s565j) Or you can change the configuration for it in core.yml file. Check the config folder. I am sure you will get the param to change. Just change the IP or port for rest-server
ok i will see
[ ](https://chat.hyperledger.org/channel/composer?msg=Na66hrCis3SFmcitM) @Vincent - can you share your model file ?
@nitishbhardwaj19 Yes, but how do I do it? Is it undeployed then deploy?Can you tell me an answer please.Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=aRRp8Hfo7zQgzHEbM) @nitishbhardwaj19 all am trying to do here is to host network in such a way that i can access my application from anywhere. How to do that?
Hello Team, we are trying to do Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric for a single organization with multiple peers using 2 VMs (peer0 and peer1 are in one machine and peer2 is in another machine). I am able to run the composer rest-server in the first Vm. How can we start the composer rest server in the second VM. Please help me out on this.
[ ](https://chat.hyperledger.org/channel/composer?msg=K22nrCxnwD3xkmpMx) @VladimirBorozna
In the early days of the Composer project, the project was named Concerto, so the file extension *cto* is an abbreviation of Concerto
[ ](https://chat.hyperledger.org/channel/composer?msg=e2dz5PpKA9BN8bNbM) @MasthanbeeShaik_123 - the Rest Server uses a Business Network Card to connect to the Peer(s) of the Fabric, so you need to have a Business Network card on the 2nd machine - you can edit the connection.json for that card to include just a specific peer that you want to run the rest server against.
[ ](https://chat.hyperledger.org/channel/composer?msg=T45WgvxdS8xXjypxB) @rthatcher yea it solved
I use nohub command running composer-rest-server in backend, how can I stop it ?
@rthatcher Thanks for the response. I am trying to start the business network for creating the business card. But I am facing the following issue.
error-card.PNG
when I submit Transaction, I got below error ,
Error: Error trying invoke business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: Error: Expected a Resource or Concept.)
@rthatcher could you please give me any clue ? thanks
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=MAgkX4i3qd25egRoZ) @MasthanbeeShaik_123 - it looks like you are trying to start a network that has already been started.
[ ](https://chat.hyperledger.org/channel/composer?msg=MAgkX4i3qd25egRoZ) @MasthanbeeShaik_123 - it looks like you are trying to start a network that has already been started. If you want to create a new card for a new user you will need to Add a Participant to your network, then Issue an Identity.
BUT - if you are still wanting to start the rest server on VM2 - then you can export your existing Network Admin card using `composer card export` on VM1, and then on VM2 use `composer card import`
Yes @rthatcher, when I am imported the card from VM2 but i am getting issue like unable to read the file.
Yes @rthatcher, when I am trying to import the card from VM2 getting issue like unable to read the file.
Yes @rthatcher, when I am trying to import the card to VM2 getting issue like unable to read the file.
export.PNG
import.PNG
Can any one help , how to add new organisation in existing running network?
[ ](https://chat.hyperledger.org/channel/composer?msg=ftXct7hc4mPnTTuTd) and Where should I get the log detail info?
I am learning Hyperledger composer,
I am following given tutorial https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
I have done all the installation, I have created tutorial-network project as given
now I am trying to generate business network archive for that I am using following command
"composer archive create" but I am getting error "Searching for the specified package.
No composer.json found in the current directory, searching packages from packagist
Could not find a package matching create."
Hi @rthatcher how to add new organisation in existing running blockchain network?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=dvm6CMoWxdfDPnp7a) @MasthanbeeShaik_123 - looks like the card is not present? try `ls -al` to see if it is there.
[ ](https://chat.hyperledger.org/channel/composer?msg=CQuga9eG2gARbxuj6) @ChinmayaMahunta - Adding an Organisation (a CA and Peers?) is really a Hyperledger Fabric question - you could try the Fabric documentation or ask in the #fabric channel. You could also try this tutorial:
https://www.ibm.com/developerworks/cloud/library/cl-add-an-organization-to-your-hyperledger-fabric-blockchain/index.html
Has joined the channel.
do composer have multi-channel support?
yet
How to write authentication system for REST clients in HyperLedger Composer ?
how to work with multiple .cto files having same namespace?
i tried importing asset on other file but it still says asset not defined.
[ ](https://chat.hyperledger.org/channel/composer?msg=BydJfYueGay7hwogn) @hamza113 Channels is a Fabric feature, composer bna can be deployed to peers on multiple channels. Hope I understood your question correctly.
@rthatcher I have exported the card file in VM1. Where is that card file will be locate.
@rthatcher Thanks for the response.
[ ](https://chat.hyperledger.org/channel/composer?msg=uhLpLJnBRXgZzBzSE) @roychowdhuryrohit-dev https://hyperledger.github.io/composer/integrating/enabling-multiuser this should help you.
[ ](https://chat.hyperledger.org/channel/composer?msg=jQi8zKHE6wa3TqmWg) @vkblue Thanks
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=LrcgqfbLagDFyuZNd) @vinodjadhav - in the terminal have you changed directory to be in the directory created by the generator ? `cd tutorial-network` ?
[ ](https://chat.hyperledger.org/channel/composer?msg=BydJfYueGay7hwogn) @hamza113 - Hyperledger Composer connects to the Channel on Hyperledger Fabric specified in the connection profile. By default the channel used by Composer is 'composerchannel'. Each Business Network Card in composer has a connection profile, and can connect to only one channel, BUT you can create multiple cards with multiple channels and the same Credentials, and switch cards to connect to different channels.
@rthatcher thanx for answering.
how can we switch different businness cards?
can we switch channels dynamically/
?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=4YCrJMukA8ce9EMQc) @NewToFabric - each .cto has to have a separate namespace. The vehicle lifecycle has examples of imports and multiple CTO files - it uses 'concepts' to import model elements into the current namespace.
You can look at the vehicle-lifecycle model either in Playground, or directly on Github:
https://github.com/hyperledger/composer-sample-models/tree/master/packages/vehicle-lifecycle-model
Hi Team, I am part of one finance company and using hyperledger 1.0.3. We deployed all services in Docker UCP (Enterprise Edition). After 15 mins call is timing out from peer to smart contracts.
Need help to configure hyper ledger applications to enable keep-alive on the socket and send TCP keep alive packets at regular intervals (less than 900 seconds )
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=CuDWQMZi6iPquvfQy) @hamza113 - if you are writing your own application and using the Composer API, then you can make appropriate API calls to make a BusinessNetworkConnection with a specific card.
The REST API Server is started with a Card that is used to discover the Network, so for each channel you would need to have a separate REST sever.
As an alternative, this tutorial shows how 2 separate networks can interact which you may find interesting:
https://hyperledger.github.io/composer/next/tutorials/invoke-composer-network
Has joined the channel.
Has joined the channel.
I created one processor function that two participants can call, this function manipulates a specific field in the asset depending on the type of participant doing the request. Is there a way to find out the type of participant inside the processor function?
I created one processor function that two participants can call, this function manipulates a specific field in the asset depending on the type of participant doing the request. Is there a way to find out the type of participant inside the processor function? Or I should code the processors function differently?
Has joined the channel.
Hi guys, need help
Just updating my .bna to the newer version and get 500 on transaction attempt via composer-rest
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: Peer has rejected transaction '50965bdcde3bde5a1e48e04c3783237396d6bc1764213ae87f0dcd0fc8fbf3f0' with code ENDORSEMENT_POLICY_FAILURE",
"stack": "Error: Error trying invoke business network. Error: Peer has rejected transaction '50965bdcde3bde5a1e48e04c3783237396d6bc1764213ae87f0dcd0fc8fbf3f0' with code ENDORSEMENT_POLICY_FAILURE\n at _initializeChannel.then.then.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:916:34)\n at
[ ](https://chat.hyperledger.org/channel/composer?msg=CTQ4z3S7Wkxiq5svF) @andreosti - you should be able to use `getCurrentParticipant` - which is described here: https://hyperledger.github.io/composer/next//api/runtime-api#getcurrentparticipant
@rthatcher That is exactly what I was looking for! Thank you!
[ ](https://chat.hyperledger.org/channel/composer?msg=TtjD5974c4kakCu5w) @rthatcher That is exactly what I was looking for! Thank you!
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=NiSvSQa7mWPRvmxiK) @Antiarchitect - have you restarted your REST server after updating the network? (The REST server 'discovers' the Business network when it starts, but does not check after that, so any update to the model/acl/query etc requires a restart.)
@rthatcher Yes - already know that. So at the end of my script I kill related kubernetes pod with the rest server
Currentrly I'm checking theory that it could be because I have 0.16.5 on the server side and 0.16.6 on dev.
* composer versions
[ ](https://chat.hyperledger.org/channel/composer?msg=F3m92Z5F3QoqPKuAM) @Antiarchitect - if you have upgraded your Business Network to runtime 16.6 and then you try and connect to it with 16.5 you will get errors. - Perhaps the rest server is 16.5 based ?
No, I just build .bna locally under 16.6
No, I just build .bna locally under 16.6 and then copied it to the server.
Can this be the source of the problem?
And network update shows me no errors
Guys,
I'm stuck in something
while deploying BNA
1. I ran composer runtime install successfully
2. while running this command after that ..
composer network start -c PeerAdmin@hlfv1 -a trading-network-0.3.bna -A admin -S adminpw
I'm facing this error
Response from attempted peer comms was an error: Error: 2 UNKNOWN: premature execution - chaincode (trading-network:0.18.1) is being launched
@mostafa.elsayyad Could you get the peer logs and describe the exact steps you did to create this ? It looks like a problem with fabric rather than composer
I started the fabric for the first time
then
ran the create peer admin command
then
composer runtime install -c PeerAdmin@hlfv1 -n trading-network
then
composer network start -c PeerAdmin@hlfv1 -a trading-network-0.3.bna -A admin -S adminpw
at the last command, error happens
Be worth looking in the peer logs to see what they say
where can I find it
use the docker logs command on the peer container ids
@rthatcher I found the place where it appears!
So Idea was to use UUIDv4 as id for the asset. When I put a string as an id into factory.newResource - all is ok
But if I declare a function uuid() above
and place just uuid() instead of ID this (!sic) error appears
So can I use functions in logics.js
?
* I'm a VERY bad JS'er BTW
@davidkel
2018-03-14 18:35:53.294 UTC [chaincode] Launch -> ERRO 543 launchAndWaitForRegister failed Unknown chaincodeType: NODE
2018-03-14 18:35:53.294 UTC [endorser] callChaincode -> DEBU 544 Exit
2018-03-14 18:35:53.294 UTC [endorser] simulateProposal -> ERRO 545 failed to invoke chaincode name:"lscc" on transaction 2b285d6bc63c226397d9bc8bf1064ea4bb4a35c09e4693bf8d6d3da7701e600c, error: Unknown chaincodeType: NODE
eb
@mostafa.elsayyad right, are you using fabric 1.1 ? looks like you are using 1.0. composer 18.1 only works with fabric 1.1.0-rc1
@davidkel
how to know the fabric version I am using, and how to install 1.1
How did you get your fabric network in the first place ?
from here
https://hyperledger.github.io/composer/next/installing/development-tools
that's why I think I'm having the right fabric
hlfv11
can you do `docker ps -a`, should provide details
I did so,
I found that the status of the peer that I'm installing the chaincode on is exited 24 minutes ago
how to make it up?
stop and start fabric?
what version of images did it say you were using >?
I found the problem ..
this LOC is the solution export FABRIC_VERSION=hlfv11
env variable was holding old version
thanks
Guys, I know my exact problem (I thin I know). When you try to generate random number inside the transaction and write it to the asset all peers are trying to do that and all of them have different random numbers!
So is there any way to push random string with only using composer-rest server and no other middleware. Does Business Network support random generation but before the transaction itself?
OR, can I use transactionId prematurely and write it down to the asset field?
Has joined the channel.
why my node version is always changed to v8.10 automatically ? is anyone meet this issue ?
Compose create archive require v8.9 right ?
Hello guys, is there a limit on the number of nodes (Participants) in hyperledger?
Is creating of participants definite of indefinite
@rthatcher yes, I had changed dir to tutorial-network.
I did some google about this, I found one answer on stack overflow, it says there are two composer with same name. so it may be using another composer, I checked my composer it looks like another composer so I think that is the problem, so I need to uninstall that composer first then need to try with hyperledger composer. Please confirm this is it right?
also problem is, If I want both composer on machine then how can I use both composer?
Hi everyone,
when I import *.card file in the composer UI. and click import , below error popup in a dialog :::
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":400,"message":"Authorization failure"}]]
In a Transaction I am trying to fetch a user by ID but it throws error when the user not exists how came I control that without throwing an error?
Also can I do this with a query? I don't know how to pass parameters from logic to query
Thanks I found the documentation https://hyperledger.github.io/composer/jsdoc/module-composer-runtime.ParticipantRegistry.html#exists__anchor finally :rolling_on_the_floor_laughing:
Error trying to ping. Error: Composer runtime (0.16.6) is not compatible with client (0.16.5)
need to update?
Has joined the channel.
Error on startFabric script.png
Facing this error on running startFabric.sh script as directed in composer developer tutorial
Facing this error on running startFabric.sh script as directed in composer developer tutorial
Any help please
removing the container docker rm -f $(docker ps -aq) and execute the command again @VijayThakre
Has joined the channel.
Hi All,
I have one question regarding authentication in REST API, how can I use LDAP in this? Actually , I'm new to this and don't know how to start with this.
Hi All,
I have one question regarding authentication in REST API, how can I use LDAP in this? Actually, I'm new to this and don't know how to start with this.
Hi @mahoney1 ,
I have one question regarding authentication in REST API, how can I use LDAP in this? Actually, I'm new to this and don't know how to start with this.
[ ](https://chat.hyperledger.org/channel/composer?msg=Cr4QPkjDKBDMXWSxP) @NAWAZUDDIN552 Not working facing same error
It worked for me yesterday
could u please let me know, How to Compare DateTime Data type with current date in hyperledger composer?
Hi,
when I modify an asset or participant model and create a new BNA then update the network using:
`composer network update --archiveFile ARChIVEFILE.bna --card CARD_NAME`
I lose all the assets or participants which I created before modifying the model.
Does anyone has explanation for this issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=j8yDnJmgPWuv9kT5g) Really want to know it too. Is there any Asset Upgrade operation between network versions?
[ ](https://chat.hyperledger.org/channel/composer?msg=j8yDnJmgPWuv9kT5g) hi @mahoney1 do you have an Idea, how to fix this?
Also Could u please tell me how to get the transaction id's ?
Has joined the channel.
Hi. I am new to hyperledger and am planning to use hyperledger #composer to build a mobile application which needs a payment gateway to be integrated to buy virtual coins. How can I achieve this?
Hi. I am new to hyperledger and am planning to use hyperledger #composer to build a mobile application which needs a payment gateway to be integrated to buy virtual coins. How can I achieve this? @waleed
[ ](https://chat.hyperledger.org/channel/composer?msg=Hyz4fMHevNmJYRQ9a) I am interested aswell. Whenever you update the BNA + the Rest API. The wallets are emptied and the users cards are not valid anymore. Every time I have to restart it completely and every issued identity etc is gone
Has joined the channel.
Hi all,
Have you any recommended tutorials to start with the Fabric composer?
thanks in advance
Hello,
Hello,
From the command line when I issue an identity using composer identity issue and generate a file, I get a card and after importing the card I can use it to access the network and it shows activated on composer-playground.
I am trying to do the same thing via nodejs using the following code:
`const identityIssued = await businessNetwork.issueIdentity(joinNS(NS, type) + "#" + email, `a${id}`);
let card = new IdCard({...cardTemplate, userName: `a${id}`, enrollmentSecret: identityIssued.userSecret}, connectionProfile);
const cardImported = await adminNetwork.importCard(`a${id}@poc`, card);`
The id got created and activated but it didn't get added to my wallet. If I am not wrong the last line should do that right? Am I doing something wrong
Hello,
From the command line when I issue an identity using composer identity issue and generate a file, I get a card and after importing the card I can use it to access the network and it shows activated on composer-playground.
I am trying to do the same thing via nodejs using the following code:
`const identityIssued = await businessNetwork.issueIdentity(joinNS(NS, type) + "#" + email, \`a${id}`);
let card = new IdCard({...cardTemplate, userName: `a${id}`, enrollmentSecret: identityIssued.userSecret}, connectionProfile);
const cardImported = await adminNetwork.importCard(`a${id}@poc`, card);`
The id got created and activated but it didn't get added to my wallet. If I am not wrong the last line should do that right? Am I doing something wrong
Hello,
From the command line when I issue an identity using composer identity issue and generate a file, I get a card and after importing the card I can use it to access the network and it shows activated on composer-playground.
I am trying to do the same thing via nodejs using the following code:
`const identityIssued = await businessNetwork.issueIdentity(joinNS(NS, type) + "#" + email, "a" + id`);
let card = new IdCard({...cardTemplate, userName: "a" + id, enrollmentSecret: identityIssued.userSecret}, connectionProfile);
const cardImported = await adminNetwork.importCard("a" + id + "@poc", card);`
The id got created and activated but it didn't get added to my wallet. If I am not wrong the last line should do that right? Am I doing something wrong
Hello,
From the command line when I issue an identity using composer identity issue and generate a file, I get a card and after importing the card I can use it to access the network and it shows activated on composer-playground.
I am trying to do the same thing via nodejs using the following code:
`const identityIssued = await businessNetwork.issueIdentity(joinNS(NS, type) + "#" + email, "a" + id);
let card = new IdCard({...cardTemplate, userName: "a" + id, enrollmentSecret: identityIssued.userSecret}, connectionProfile);
const cardImported = await adminNetwork.importCard("a" + id + "@poc", card);`
The id got created and activated but it didn't get added to my wallet. If I am not wrong the last line should do that right? Am I doing something wrong
Hello,
From the command line when I issue an identity using composer identity issue and generate a file, I get a card and after importing the card I can use it to access the network and it shows activated on composer-playground.
I am trying to do the same thing via nodejs using the following code:
`const identityIssued = await businessNetwork.issueIdentity(joinNS(NS, type) + "#" + email, "a" + id);`
`let card = new IdCard({...cardTemplate, userName: "a" + id, enrollmentSecret: identityIssued.userSecret}, connectionProfile);`
`const cardImported = await adminNetwork.importCard("a" + id + "@poc", card);`
The id got created and activated but it didn't get added to my wallet. If I am not wrong the last line should do that right? Am I doing something wrong
[ ](https://chat.hyperledger.org/channel/composer?msg=zqTx5C3quzyaZnsjP) @khalifa hi Khalifa, I recommend Hyperledger-Composer tutorials which are in the Documentation.
https://hyperledger.github.io/composer/tutorials/tutorials
[ ](https://chat.hyperledger.org/channel/composer?msg=E8yorir3SAKvxftKK) @Legiit I must only restart the rest server. but the the cards still valid
[ ](https://chat.hyperledger.org/channel/composer?msg=j8yDnJmgPWuv9kT5g) @waleed - this post from Stack Overflow should answer your question:
https://stackoverflow.com/questions/48773445/save-data-while-updating-model-file-in-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=j8yDnJmgPWuv9kT5g) @waleed @Antiarchitect - this post from Stack Overflow should answer your question:
https://stackoverflow.com/questions/48773445/save-data-while-updating-model-file-in-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=JnZvtcoXeCDRW2STG) @sagargarg if you new in hyperledger composer, I recommend you the developer tutorials. they are very useful.
https://hyperledger.github.io/composer/tutorials/tutorials
for your mobile app: the answer is also in the documentation:
`Web or mobile applications that need to interact with deployed business networks should make calls to a REST API. The easiest way to create the REST API is to use the composer-rest-server to dynamically generate a REST API from the deployed business network.`
https://hyperledger.github.io/composer/applications/web
[ ](https://chat.hyperledger.org/channel/composer?msg=JnZvtcoXeCDRW2STG) @sagargarg if are you new in hyperledger composer, I recommend you the developer tutorials. they are very useful.
https://hyperledger.github.io/composer/tutorials/tutorials
for your mobile app: the answer is also in the documentation:
`Web or mobile applications that need to interact with deployed business networks should make calls to a REST API. The easiest way to create the REST API is to use the composer-rest-server to dynamically generate a REST API from the deployed business network.`
https://hyperledger.github.io/composer/applications/web
Hello guys,
im using node-red with composer ..
I'm having inject node which contains json object
after it im having composer mid component
error:
composer-connector-undefined'-Cannot find module 'composer-connector
[ ](https://chat.hyperledger.org/channel/composer?msg=CPti7SYC726nuQ3Mi) @rthatcher thanks so much.
Also, when I'm trying to update the existing compoer component ..
erorr occurs
Failed to update: node-red-contrib-composer
Module not locally installed
[ ](https://chat.hyperledger.org/channel/composer?msg=E8yorir3SAKvxftKK) @Legiit - I think you are facing two issues here:
1. It looks like you are using the REST server in MultiUser mode to enable the Wallets, but you are not persisting the data when you stop the REST server. There is an example of using MongoDB to store the Wallets in this doc:
https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
2. you are seeing an issue with re-using the .card files. When a .card file is created the first time it has a one-time secret, and when it is used for the first time Certificates and Keys are downloaded, and the secret becomes invalid. So you import your cards into Wallets in the REST server then when you use them the cerfiticates are downloaded into the Wallet- BUT after you lose the Wallet you lose the certificate and when you reimport the card the secret is invalid.
We have more information on Cards in the wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#bizcards
Has joined the channel.
Hi
I have a question related to composer rest server environment variables. I'm trying to add mongo db connector and i'm firing command
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
So my question is, does the rest server should be up for this command? how do we know that it done successfully.
Or is it okay if we modify the file directly rest/node_modules/composer-rest-server/server/datasources.json ??
][
Has joined the channel.
I am facing issues while configuring HSM in the connection profile:
1)I have installed softhsm2 as per the HSM support steps.
2)Now after creating PeerAdmin@hlfv1 card, I edited and saved the connection.json with
x-hsm parameters.
3) When i am trying to install composer runtime using PeerAdmin@hlfv1 card i am getting below error:
"Failed to import identity. Error: _pkcs11SkiToHandle[535]: no key with SKI"
Please suggest where am i going wrong
[ ](https://chat.hyperledger.org/channel/composer?msg=GvQsDNfZ3exGMicWy) @VijayThakre - I have not seen that error starting the orderer before. You could try these 3 commands to completely remove all your docker containers and images, and then run the download script again. BEWARE these commands will delete ALL docker images and containers not just Hyperledger images!
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images -q)
```
Then `./downloadFabric.sh`
[ ](https://chat.hyperledger.org/channel/composer?msg=PXhJmroDoC3s4nswF) @Pranoti - you must stop the REST server, set the Environment Variable COMPOSER_DATASOURCES then start the REST server (in the same terminal window)
Its saying command not found.. Is there any prerequisite for this??
How to set the composer datasource???
HSM
[ ](https://chat.hyperledger.org/channel/composer?msg=pBMhj9STNEbMDd9aM) @Pranoti - You set the COMPOSER_DATASOURCE like any other Linux environment variable. This should work assuming you are setting up mongodb in a container `export COMPOSER_DATASOURCES='{"db": {"name": "db","connector": "mongodb","host": "mongo"}}'`
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=88333rDXdrJwjqdNu) @rthatcher got it resolved. Thanks! @rthatcher
@rthatcher Its throwing this error.. Im missing something. Is there anything else I have to do?
@rthatcher Its throwing this error.. Im missing something. Is there anything else I have to do?
MongoNetworkError: failed to connect to server [mongo:27017] on first connect [MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017]
MongoNetworkError: failed to connect to server [mongo:27017] on first connect [MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017]
Hi, how can I authenticate REST using passport-oAuth with slack?
[ ](https://chat.hyperledger.org/channel/composer?msg=C7TxqCHykKeSmxiHk) @Pranoti - The short answer is that you could try setting the environment variable with `..."host": "localhost"}}` - The longer answer is that you need to think about your networking and host resolution between you REST server and your mongo server/container.
[ ](https://chat.hyperledger.org/channel/composer?msg=E3aJ2ah8uTHqwdCH5) @sapnaupreti - Have you seen the tutorial for setting up OAUTH2.0 Authentication for the REST server with Google? https://hyperledger.github.io/composer/next/tutorials/google_oauth2_rest
Hopefully this gives you pointers of how you might approach the problem using Slack.
[ ](https://chat.hyperledger.org/channel/composer?msg=WLwRGca49ZB5DYFdS) @mostafa.elsayyad - what version of Composer are you using? The Tutorial in the Composer Docs is for v0.16.x of composer https://hyperledger.github.io/composer/tutorials/nodered-tutorial
@arpitsoman I am assuming you are using our development fabric ? The identity put into the PeerAdmin card is not HSM managed, so you cannot set the hsm properties in the connection profile for this card.
HSM capability in composer is really only for an everything is HSM managed environment, ie your fabric identities are HSM managed. It is possible to have a mixed environment but that requires much more work to do, but then it doesn't make sense to have some identities HSM managed and some not managed.
To create an HSM managed hyperledger fabric network is something you would have to build yourself. I am not aware of any tutorial on the hyperledger fabric docs page that would tell you how to do this so you would have to work this out based on their existing tutorials and understanding the various commands for building a fabric.
@rthatcher Thanks for responding :) I want it to perform for Slack based authentication.
[ ](https://chat.hyperledger.org/channel/composer?msg=D2z2yZCEy9WkK3Y2w) @divudivyansh - the 'client' must be equal to or a later micro-version than the 'runtime'. Use `composer -v` to see what version you have fr your CLI, and `npm uninstall/install -g` as appropriate. Perhaps you also have an API app that has dependencies in the package.json that refer to a lower version number? - if so edit the package.json, delete the nodeModules folder and rebuild the app.
[ ](https://chat.hyperledger.org/channel/composer?msg=iHERJMcyXGkSFrSwM) @davidkel - As per your comments the indentities for participants of my composer business network deployed on fabric, cannot be managed by HSM as of now,right?
@arpitsoman yes they can
but it would not be sensible to have a mixture of managed and non-managed
so our capability in composer doesn't provide an easy way to have that sort of environment.
[ ](https://chat.hyperledger.org/channel/composer?msg=x5HwNBnh6wTKbFeL2) @davidkel This is what I am trying to do, I want to manage the Identities of all my participants in my network
@arpitsoman But the PeerAdmin card isn't HSM managed but has access to your fabric, why would you not want to HSM manage that one ?
@arpitsoman if you HSM manage that one, then the composer capabilities work without having to do extra work around cards that get automatically created.
The auction app have participant bidder. (https://github.com/IBM/BlockchainEvents-CompositeJourney). There can be anyone who can bid from anywhere around the world. so providing certs to everyone isn't a less optimal?
doesn't this make HC public BC
plz someone clear me out on this
why do we need to create two cards for even single organization in this https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org we are importing `PeerAdmin@fabric-network.card` and `admin@tutorial-network.card`. Is `admin@tutorial-network.card` used at user level and `PeerAdmin@fabric-network.card` used at network level
@phanikumar You need a card for every different role involved in your network. In our development server we have combined the Peer Install role and the Channel admin role into a single identity called `PeerAdmin`. Then you need an identity to handle the Fabric-ca server issuer role. This is combined with the initial identity bound to the initial business network participant. These roles have been combined into one for the admin@tutorial-network.card
@phanikumar You need a card for every different role involved in your network. In our development server we have combined the Peer Install role and the Channel admin role into a single identity called `PeerAdmin`. Then you need an identity to handle the Fabric-ca server issuer role. You also need an identity bound to the initial business network participant. These roles have been combined into one for the admin@tutorial-network.card
[ ](https://chat.hyperledger.org/channel/composer?msg=WLwRGca49ZB5DYFdS)
guys, im facing this issue,
Any help?
thanks.
I also tried to remove the node-red using npm remove command and installed it again. but same error.
@mostafa.elsayyad node red composer integration doesn't currently work with the next release, it only works with 0.16.x release
mmmm
this means that I should return back to 0.16 version :/
what is the LTS version for hyperledger composer?
@rthatcher What happens with the assets in prod? I haven't tested this behavior. but what will happen if in new .bna version I will add a new field in asset?
[ ](https://chat.hyperledger.org/channel/composer?msg=8PYyrfz6FpM46MuG8) @davidkel
where could I find such information on their website?
[ ](https://chat.hyperledger.org/channel/composer?msg=KMTjNWqYL2WW8tyMy) Facing error now at composer runtime Install
Vostro-3550:~/work/tutorial-network$ composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network
✖ Installing runtime for business network tutorial-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=Sdmq9FYHymy3DSwm5) @mostafa.elsayyad - information on current releases is here:
https://github.com/hyperledger/composer/wiki
and details of each release are here:
https://github.com/hyperledger/composer/releases
[ ](https://chat.hyperledger.org/channel/composer?msg=acvDh3MkujW8FPXNj) @VijayThakre - are your Dev Fabric containers started? Can you try `docker ps` to show if they are running?
[ ](https://chat.hyperledger.org/channel/composer?msg=gvXcW4pavuvAeXYwh) @rthatcher Yes thats running
Screenshot from 2018-03-15 17-52-16.png
[ ](https://chat.hyperledger.org/channel/composer?msg=KyKn4AcsRWfEw7S2s) @Antiarchitect - if you change the model - then Assets with a different data structure are not visible - if you change the model back you can access them again. This doc provides more details:
https://hyperledger.github.io/composer/reference/model-compatibility
@rthatcher Thanks, missed this guide
Has joined the channel.
@davidkel If possible, Please suggest how can we test for the endorsement policy using the Composer framework in Local ?
The auction app have participant bidder. (https://github.com/IBM/BlockchainEvents-CompositeJourney). There can be anyone who can bid from anywhere around the world. so providing certs to everyone isn't a less optimal? doesn't this make Hyperledger composer public BC
plz someone clear me out on this
Has joined the channel.
Has joined the channel.
Hi guys, I'm trying to test with Mocha my transactions in ne section Test of my projet, using "npm test", but i'm getting an error "require is not defined". I have the same "package.json" as the ones found in the hyperledger/composer-sample-network on github
[ ](https://chat.hyperledger.org/channel/composer?msg=mG26EZeg3dsWPimbz) Here is my node version "9.8.0" and my npm version "5.6.0"
[ ](https://chat.hyperledger.org/channel/composer?msg=mG26EZeg3dsWPimbz) @terrypst - not sure I can fully answer this question but Composer supports Node v8.9.0
[ ](https://chat.hyperledger.org/channel/composer?msg=ehfbQHNLmkAMhJzj3) @rthatcher Yes that worked.. That was really a stupid mistake..
[ ](https://chat.hyperledger.org/channel/composer?msg=b7aMETifPT3Sc8dSS) @rthatcher Thanks @rthatcher for your fast answer, i already tried with this version, but same error with require...
While querying the transactions , through buildquery it gives the nested objects of the transaction has a Relationship.any idea how to get the fields of the Relationship objects from the transactions.
Capture.PNG
@terrypst There are 2 branches for composer-sample-network, which branch did you take the package.json information from
?
[ ](https://chat.hyperledger.org/channel/composer?msg=2HeM8oz354SY5Dwso) @davidkel Hi davidkel, here is the repository for the corresponding package.json : https://github.com/hyperledger/composer-sample-networks/tree/v0.16.x/packages/perishable-network
fyi - reminder that the Community call is at 5pm UTC (5pm UK, 12pm ET, 9am PT) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-March-15th-2018
Screen Shot 2018-03-15 at 19.44.22.png
Screen Shot 2018-03-15 at 19.44.22.png
@rthatcher hi, I am looking at the composer-tools project for Fabric 1.1 and it seems strange that the couchdb image is downgraded to 0.4.6
i.e. docker pull hyperledger/fabric-couchdb:$ARCH-0.4.6
while the Fabric v1 seems to use couchdb 1.0.4
[ ](https://chat.hyperledger.org/channel/composer?msg=SMTRHj5ouQvzHbZMC) @uber.twin - it is using a different numbering scheme for Fabric 1.1 - CouchDB is now called an external dependency so has an external numbering scheme. Bottom line - it is not an older version.
@rthatcher thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=d785sxoTYcxTyj5gg) @chandrasekarangengadharan - there is a feature on the REST server to Resolve Relationships using a 'Filter' `{"include":"resolve"}`
In a transaction process function this is not available so you will have to write code to retrieve the related objects details. We have an issue already logged to cover this, and I have added your question today as a +1.
https://github.com/hyperledger/composer/issues/3454
ah...seems that time zones catching us for Composer community call. It is 9 AM Pacific, but only 4 PM UK time @rthatcher
damn daylight savings time
@terrypst have you tried to use `require` in your TP function .js file ?
Just to confirm that with the Daylight Saving time changes - *the Community call is in ~40 mins* - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-March-15th-2018
@davidkel What do you mean with "TP function" ?
@terrypst these are your composer Transaction Processor functions, that form part of your business network definition
We have an asset which has an attribute that is an Array of Concepts like: concept MyConcept { o String Name, o String value } and the asset is asset MyAsset { o MyConcept[] myConceptArray }
would like to write a query that would do something like SELECT ... WHERE myConceptArray CONTAINS "name":field1, "value": "somevalue"
Does anyone know if it's possible?
@sstone1 please read above post from me, thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=48HyK8GBNZAuhDxPp) @theathibm - there are some examples of queries and arrays/concepts in the Knowledge Wiki
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--queries-and-query-support--examples
@rthatcher thanks for the links, @giridharg and I will dive into those links. Thanks!
how is composer-cli supposed to be used? create an instance for every command then rm it?
@davidkel Oh god you solved my problem, i had a require inside my TP function .js file, thanks a lot !
Can anyone response to my question regarding the composer-cli container? what is the recommended way of using it?
or any document on it?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZsdsLbtBCCCo4AmjC) @tongli - if you install the composer-cli application there are several composer CLI commands available to you as described here: https://hyperledger.github.io/composer/next/reference/commands
@rthatcher not wanting to setup the env. thinking using the container,
tried it to create business card, it works, but not sure what is the recommended way of using it.
Hello, using https://hyperledger.github.io/composer/next/applications/node.html i'm receiving the following error when attempting to connect to a deployed business network -- Error: Error trying to ping. Error: Composer runtime (0.17.6) is not compatible with client (0.18.1) . I don't understand why i'd get that message if am able to ping the network, startup a rest server and submit transactions using the cli against the same network?? below are the docker images running....thanks for any direction
555507ee9530: dev-peer0.org1.example.com-bailey-network-0.17.6-9e5e364eb1389acf9afb82133b81876ddab18dedee7ca423179f4630087cc61c
5bd50947da0d: hyperledger/fabric-peer:x86_64-1.1.0-rc1
b88d34c922f1: hyperledger/fabric-ca:x86_64-1.1.0-rc1
dcd3a3e5869d: hyperledger/fabric-orderer:x86_64-1.1.0-rc1
f2ad26cbca89: hyperledger/fabric-couchdb:x86_64-0.4.6
[ ](https://chat.hyperledger.org/channel/composer?msg=Njg4LAm6BiRZwyBBn) @tongli - a container is an option, but you will need to be mindful of name resolution and routing. Some developers create a 'light' VM with composer code and dependencies, often running the Dev Fabric containers within that VM.
[ ](https://chat.hyperledger.org/channel/composer?msg=Ra7FDHWH6FXhKfsmq) @rbailey - did you have 17.6 installed prior to installing 0.18.1 ? Looks like your first container with the long name is a legacy of that install. Can you remove that old container (and image) and then restart the fabric with the startFabric.sh script - you should then have a clean environment to do a composer runtime install, composer network start etc
ok, i'll give that a try, just didn't make sense that i was able to use cli..thx
Has joined the channel.
It could be stupid question as I am learning and new .. but wanted to understand how are participants tied with Organization when we define the model.
For example if I have 3 participants(Grower, Shipper, Trader) and have a network of 3 organization(OrgGrower,OrgShipper, OrgTrader)
then will adding participants how is the one to one relationship mapped between Participants and Organization.
I want to do all this via Web site and give access to administrator for adding only there participants and but also want to
have a super admin which has access to all the organization. Is this achievable via Hyperledger composer
Hello all, in composer muli channel support is created by different network cards. right? if yes can a peer can be a part of more than one organisation? if yes how do we achieve that?
did anyone here used loopback-passport-auth0 authentication ?
@davidkel hey, I noticed you commited this change https://github.com/davidkel/fabric-composer/commit/724f06f6fbf453650114597a81b1303123ade9e2#diff-5adcbe7790134eaeb008b418bbeeb6f7 do you know how I can set options for the rest api?
@davidkel hi, i posted an issue yesterday. and it was solved using another wifi ap to pull npm node modules. today i am build my local npm registry. could you please tell me where i can find the package.json file used by ccenv container to create chaincode image?
@davidkel hi, i posted an issue yesterday. and it was solved using another wifi ap to pull npm node modules. today i am building my local npm registry. would you please tell me where i can find the `package.json` used by ccenv container to create chaincode image?
Hi all, my fabric environment is built is remote ubuntu .
Is anyone can tell me how to keep composer-ground and composer rest server always running even if I logout remote linux server in SSH terminal console.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=j8bfDfWetekPbAC88) @rthatcher can you tell something even a small help....
@davidkel Regarding this issue that was closed 15 hours ago, https://github.com/hyperledger/composer/issues/1536. I am currently running into that exact problem. Resolving, through composer client, an asset with circular dependency causes the grpc stream to fail and give a mesage limit size exceeded error.
```
asset Validation identified by id {
o String id
--> Request request
}
asset Request identified by id {
o String id
--> Validation[] validations optional
}
```
Of course whether this is good design or not is another discussion. But from data lookup point of view this would be really handy.
@davidkel Regarding this issue that was closed 15 hours ago, https://github.com/hyperledger/composer/issues/1536. I am currently running into that exact problem. Resolving, through composer client, an asset with circular dependency causes the grpc stream to fail and give a mesage limit size exceeded error.
```
asset Validation identified by id {
o String id
--> Request request
}
asset Request identified by id {
o String id
--> Validation[] validations optional
}
```
```
Debug: internal, implementation, error
Error: Error trying to query business network. Error: 8 RESOURCE_EXHAUSTED: received trailing metadata size exceeds limit
at channel.queryByChaincode.then.catch (/home/yves/dev/aaa/aaa-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:820:34)
at
Hi, following document says only ES5 syntax could be used inside transaction processing functions. But, latest samples use ES6 syntax (ex:- async/await) in transaction processing functions. Is this document out-of-date? https://hyperledger.github.io/composer/next/api/api-doc-index
@varuna82 Until version 0.16.x you can only use ES5. From version 0.17.x and up you can use ES6. So yes I think that the documentation is out of date. Probably they made mistake and used 0.16 documentation in next branch by accident i guess.
@aneb Thanks for the reply. I'll add this as a github issue.
How much time does it take for a transaction in Hyperledger? Is there any performance figures? Is it real time?
can we have complex ACL rule based on multiple assets?
Hey everyone, if you're looking for some article for understanding Composer Query Language check this out.
https://www.skcript.com/svr/understanding-hyperledger-composer-query-language/
Hyperledger composer not supported on Windows10?
@sagargarg Not officialy yet. https://github.com/hyperledger/composer/issues/1628
[ ](https://chat.hyperledger.org/channel/composer?msg=gCTNyewAwYciNaPbq) @aneb so how can I use hyperledger composer to learn and build applications on windows machine?
Just noticed the main thread is this one https://github.com/hyperledger/composer/issues/65 . Short answer is there currently is no easy way to do it. You can either try the things they mention in the thread or just run it in a VM.
1 more thing: Do I need a hyperledger membership plan to deploy my application to market test?? I had a look at IBM's solution and they are charging a monthly subscription fee which is quite expensive.
That one I can't answer,sorry. Haven't used the IBM blockchain service yet.
[ ](https://chat.hyperledger.org/channel/composer?msg=5bM9PQtiQ2xo8DXLA) @aneb even if I do not use IBM and deploy on aws or google or azure do I need to take the membership?
[ ](https://chat.hyperledger.org/channel/composer?msg=5bM9PQtiQ2xo8DXLA) @aneb even if I do not use IBM and deploy on aws or google or azure do I need to take the membership? It defeats the opensource purpose
Has joined the channel.
In that case I don't see why you would need a membership plan. You can deploy your composer based application pretty much anywhere you want.
Installing runtime for business network tutorial-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Command failed
I am following https://hyperledger.github.io/composer/tutorials/developer-tutorial.html what do I do for this error?
for deploying the business network
sapna
hey guys, I am getting a `reference error` when trying to add an asset to the registry
below is my script code:
`/**
* Transaction to store the Asset (MetaData)
* @param {org.nusic.sample.assetPurchase} saveAsset
* @return {Promise} Asset Registry Promise
* @transaction
*/
function onAssetPurchase(saveAsset) {
console.log('### onAssetPurchase ' + assetPurchase.toString());
return getAssetRegistry('org.nusic.sample.trackname').then(function(result) {
return result.update(assetPurchase.trackname);
}
);
}`
below is my script code:
` /**
* Transaction to store the Asset (MetaData)
* @param {org.nusic.sample.assetPurchase} saveAsset
* @return {Promise} Asset Registry Promise
* @transaction
*/
function onAssetPurchase(saveAsset) {
console.log('### onAssetPurchase ' + assetPurchase.toString());
return getAssetRegistry('org.nusic.sample.trackname').then(function(result) {
return result.update(assetPurchase.trackname);
}
);
} `
I guess 'assetPurchase' is undefined in your code. You need to use 'saveAsset'
Error while creating peer admin card on v 0.18.1
Unable to write card file: /tmp/PeerAdmin@hlfv1.card
Fabric_version is set to hlfv11
ERROR: Error found in the connection profile in the card
Hi everyone , Who can tell me why should I get the script file and .cto model after modified in Composer Playgound UI, When I look them in the original network directory, the file content is still not updated, which directory are these updated files in ?
[ ](https://chat.hyperledger.org/channel/composer?msg=7hTTEGAoDgeD2kzp9)
[ ](https://chat.hyperledger.org/channel/composer?msg=7hTTEGAoDgeD2kzp9) @mahoney1 @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=aLZor84KYmYXG6Zhp) @rthatcher thanks,yes In the Rest Server,i am able to feel the include:resolve, however in my case i need to check all the existing transactions,and it's relationship value,to avoid duplicate values, can you just hint me "write code to retrieve the related object details".I am receiving objects like "Resource {id=com.xxx.blockchain.Programmeben#d9cad308-5e0d-44d8-877d-92bd4ff094f4}".unable to fetch the Relationship objects fields in the transaction processor
[ ](https://chat.hyperledger.org/channel/composer?msg=zHGBjvbTvNSHMFFiN) @aneb Great! Thanks.
Hi all, Is there any way to allow each participant on the network to have the instance of the ledger ?
@atbe There is no option to do that. However even if you could it would not solve your problem. If you could enroll the user again, it would generate a new identity that has the same name but it would be a new identity not the same as the one registered to the business network. What you need to do is use card files that do contain the certificate/private key so that you are sharing the same identity. It looks like you are importing a card file that only has a secret in.
Guys,
How to use the node-red flow as part of the composer app?
I mean ok integration node-red with composer is fine and json object is inserted to a specific BN.
but how to make the node-red flow as a function to be runned inside composer code?
@bh4rtp composer chaincode is currently in the npm module composer-runtime-hlfv1, however this will change in the very near future
@aneb I think the answer is that we don't support circular dependencies at the moment. In order to support it requires thought to ensure it is handled correctly through the whole stack and as such an improvement proposal with proposed design is required. Th e issue was original raised as a bug
@aneb I think the answer is that we don't support circular dependencies at the moment. In order to support it requires thought to ensure it is handled correctly through the whole stack and as such an improvement proposal with proposed design is required. The issue was originally raised as a bug
What is the Business Network Cards meaning ? Does it mean one user have one card ? If a Company have 1000 employee, we need to create 1000 Business Network Cards for each employee user ??
how to invoke `query` from the `script`?
how to invoke `query` from the `script` with some input params?
[ ](https://chat.hyperledger.org/channel/composer?msg=TDymeRZAeD5iwLar8)
Is anyone can help me on this question ?
@Vincent Business network cards provide details on which business network to connect to and what identity to use on that connection. That identity is then mapped to a business network participant defined in the business network. It's entirely up to you how you want to map your end users to participants inside a business network.
Thanks for your reply. for example, the business card means I set up a my company fabric network. and I create another business network card for other customer company system , my company fabric network communicate with other customer company network by this created business network card ?
@davidkel
very confused with this " A participant is a member of business networks and might represent individuals or organizations."
does it mean it can represent one enduser?
[ ](https://chat.hyperledger.org/channel/composer?msg=XqnMWDof5CiCriSBw) @Varun2887 - These 2 links from the Composer API documentation have examples:
https://hyperledger.github.io/composer//api/runtime-api#buildquery
https://hyperledger.github.io/composer//api/runtime-api#query
@rthatcher can you answer my ordeal pls
@rthatcher Hi rthatcher, glad to meet you . Where I can get the .cto model file and modified script file ? when I look the directory in the disk, I find the files still not be changed. so it must be saved somewhere, do you know ?
[ ](https://chat.hyperledger.org/channel/composer?msg=vMKK99jg3fMn5DyAc) @mostafa.elsayyad - The Node-Red tutorial offers a simple integration example, but introducing Node-Red as a component in your application architecture offers lots of opportunity to integrate with legacy systems and line of business applications.
You could set up HTTP endpoints in Node-Red and connect to them from your Transaction Processor function.
Using Composer 0.16.x refer to this doc: https://hyperledger.github.io/composer/integrating/call-out
Using Composer 0.18.x refer to this doc for a new experimental feature: https://hyperledger.github.io/composer/next/integrating/call-out
You already know thet Node-Red currently supports Composer 0.16.x, so if you want to use the experimental feature in 0.18.x you might need 2 machines.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=j8bfDfWetekPbAC88) @divudivyansh - hello ! - sorry I am not familiar with the link you posted. You could try contacting the author, and I just followed it back to this article: https://developer.ibm.com/code/patterns/create-and-execute-blockchain-smart-contracts/
Hyperledger Composer (based on Fabric) requires that any individual you wish to identify and 'audit' their activity on the ledger must had an Identity (and certificate) created.
@rthatcher ok but can you tell me one thing. as HF is private and permissioned and have Business to business application, can i use it for an application where any customer loging in to my app is issued an identity. doesn't this violate its b2b approach
Hi guys, have you ever get and error like this "Error: Missing id" when you try to add a Resource to your assetRegistry ?
Hi guys, have you ever get an error like this "Error: Missing id" when you try to add a Resource to your assetRegistry ?
Hi guys, have you ever get an error like this "Error: Missing id" when you try to add a Resource to your assetRegistry ? I think this is because i made a newRelationship somewhere
Hi guys, have you ever get an error like this "Error: Missing id" when you try to add a Resource to your assetRegistry ? I think it is because i made a newRelationship somewhere
Hi guys, have you ever get an error like this "Error: Missing id" when you try to add a Resource to your assetRegistry ? I think it's because i made a newRelationship somewhere
Hi guys, have you ever get an error like this "Error: Missing id" when you try to add a Resource to your assetRegistry ? I think it is because i made a newRelationship somewhere
Hi guys, have you ever get an error like this "Error: Missing id" when you try to add a Resource to your assetRegistry ? I think because i made a newRelationship somewhere
[ ](https://chat.hyperledger.org/channel/composer?msg=wDGJWnbLY2jJ94Lsz) @ranjithkumarmv - this document describes Participants and Identities in Composer and should help you. https://hyperledger.github.io/composer//managing/participantsandidentities
A Participant would not have an instance of the Ledger. An Organisation might have an 'Instance'.
[ ](https://chat.hyperledger.org/channel/composer?msg=ExTCTvjGTt5sJJyCb) @Vincent - have you seen this document: https://hyperledger.github.io/composer//managing/participantsandidentities
Capture.PNG
[ ](https://chat.hyperledger.org/channel/composer?msg=FDRidswkY465CR6pK) @Vincent - when you are working in Composer Playground the model, acl etc are stored in the browser local storage. You can export the files to a .BNA file from the 'define' tab. The .BNA file is an archive so you can use your normal tools to extract files from it.
[ ](https://chat.hyperledger.org/channel/composer?msg=MrJpq7Xsxev9YKoth) any help?....
[ ](https://chat.hyperledger.org/channel/composer?msg=fxXHJL3BwJ9QqT8kT) @rthatcher how to invoke `buildQuery` which library needs to be included
@terrypst Probably not the issue but just in case,because can't see the code, is your gui deterministic? Is it based on the transaction timestamp and not like new Date()?
@rthatcher ,thanks, It is very confused, if all related files stored in the local browser, why I can use rest API to interact with them ?
@aneb Hi aneb, my guid() function is a function defined lower, which used the Math library, i think this is not the issue but thanks !
@rthatcher I follow this link https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org to deploy my own fabric network. and then open it in composer Playgound , then modify the .cto and .js script file directly in the web UI, and then click Update button
[ ](https://chat.hyperledger.org/channel/composer?msg=77j3pwSoedWqJ4Le8) @Vincent - when you click 'update' in Playground you are deploying a new version of your Busines Network Definition (chaincode) to the Fabric - so it is live on the Fabric and hence your REST server discovers the updates (when it is restarted)
Oh, you mean , the .js script file saving in local browser ,but the generated chaincode is update to the Fabric server, right?
How would you deploy the composer-rest-server? As far as I know, this doesn't create files it just works as long as the command runs. I thought about maybe deploying my code to an EC2, then running the command and exposing the port to the outside but I don't know if this is good practice.
[ ](https://chat.hyperledger.org/channel/composer?msg=cdRxcWw4mqDNTPmPG) @rthatcher , I think I got your meaning ,right?
@terrypst I see. Just wanted to make sure that the id is not random when executed twice with same input :) As for the other code I don't really see that problem. (assuming country has name as identifier)
@terrypst I see. Just wanted to make sure that the id is not different when executed twice with same input :) As for the other code I don't really see a problem. (assuming country has name as identifier)
[ ](https://chat.hyperledger.org/channel/composer?msg=95s4uDbA4dopZ2eG6) @rthatcher Let us assume I wanted to create some Loyalty points Network it will have around 50k merchants and those merchants wont trust and wanted to have therir own ledger. Whats the option here do i need to create 50k organisations
[ ](https://chat.hyperledger.org/channel/composer?msg=95s4uDbA4dopZ2eG6) @rthatcher Let us assume I wanted to create some Loyalty points Network, It will have around 50k merchants and those merchants wont trust anyone on the network and wanted to have their own ledger copy. Whats the option here, do i need to create 50k organizations or is any way that if a participant update his own copy will reflect on all the other participants.
[ ](https://chat.hyperledger.org/channel/composer?msg=gJfzPTNKBMZTT4NJ6) @JeroenDePrest - don't know much about EC2 - but a few comments might help you ... the REST server does not generate files or write data - the data is written to the Hyperledger Fabric. BUT in production you are likely to be running the REST server in Multiuser mode with authentication in which case it writes 'Wallets' to a persisted datasource (often MongoDb). The docs under this page describe all of this, including running the REST server in a Docker container.
https://hyperledger.github.io/composer/integrating/integrating-index
@rthatcher In Composer Playground UI, the "Connect now" is disabled in the first network card . Is there anything wrong?
[ ](https://chat.hyperledger.org/channel/composer?msg=eeFikwCqCheMjwp4C) @ranjithkumarmv - You are not alone in thinking that a Loyalty network is a good use case for blockchain technology. In Hyperledger Fabric terminology an Organization is associated with a CA and a Peer so it is difficult to imagine that a 50k Organization network is practical. The loyalty network would have to be mapped in a different way. I would urge you to work through some of the Fabric and Composer documents and examples before deciding how to map the network.
[ ](https://chat.hyperledger.org/channel/composer?msg=38YQomFLmcbgQ6ne5) @rthatcher I Understand the complexity of creating organizations it should not be in that way. that is why i am asking is there any way that participants to have their copy
[ ](https://chat.hyperledger.org/channel/composer?msg=Sy4WrGxWXQa9kRXyS) @ranjithkumarmv - by the words 'have their copy', I assume you mean a Peer with the Ledger stored on it - it might be possible with some configuration of Committing Peers and Channels, but it doesn't sound practical, and it does sound expensive to set up and operate.
[ ](https://chat.hyperledger.org/channel/composer?msg=8oDQLr5WbE3n7FoK3) @Vincent - The first card should be the PeerAdmin card which is only used to deploy networks. The other Cards are Network Admin cards and can 'Connect Now'.
Has joined the channel.
is hyperledger real time?
Like how much time does a transaction take
I never get the answer of this question
@rthatcher hi, is it alright to use the Fabric v1.1 instead of v1.1-RC1 with Composer v0.18.1?
Hello, I have a doubt regarding the addition of participants to the network. Is there a way to prevent the network admin from using the javascript api (like in the example from https://hyperledger.github.io/composer/managing/participant-add.html) to add a participant without calling the processor function which performs some validations in it?
[ ](https://chat.hyperledger.org/channel/composer?msg=Jtt54kKWNMCizkf4z) @ulhaqanwaar - Transactions take place in 'real-time', but they go through the Endorsement and Ordering processes as they are written to the Ledger so won't be as fast as traditional TP systems.
[ ](https://chat.hyperledger.org/channel/composer?msg=7AjsvYKH6JopzgaRK) @uber.twin - Composer v0.18.1 requires Fabric v1.1.0-rc1. 18.1 was releaesed before Fabric v1.1 so hasn't been tested against it. I would expect a release next week that is compatible with Fabric 1.1
@rthatcher alright, thank you
@rthatcher If i am having Single Organization ultimately that will be the only source of truth, I can Do Modifications, Even I can use the Identity of a Participant, what advantages i get going with Blockchain
[ ](https://chat.hyperledger.org/channel/composer?msg=TtdDXy5p2f45ExhgR) @rthatcher Is this same case applies to read operations as well
[ ](https://chat.hyperledger.org/channel/composer?msg=EDtxfsxSBrxcxAr4r) @ranjithkumarmv - if a Hyperledger Fabric is - A shared, replicated, permissioned ledger with consensus, provenance, immutability and finality - then there are other features that might benefit you. But shared/replicated/distributed is clearly one of the key features and if you have a single instance it is more like a database. Perhaps blockchain is not the solution for you particular case, but a google search returns enough results to suggest loyalty programs in general are suitable.
Has joined the channel.
please let me know on it .. i wanted to understand how are participants tied with Organization when we define the model.
For example if I have 3 participants(Grower, Shipper, Trader) and have a network of 3 organization(OrgGrower,OrgShipper, OrgTrader)
then will adding participants how is the one to one relationship mapped between Participants and Organization.
I want to do all this via Web site and give access to administrator for adding only there participants and but also want to
have a super admin which has access to all the organization. Is this achievable via Hyperledger composer
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Z6LACDYFqQ298PZn6) @mohdhafeezaj - I was just reading the same Question in Stack Overflow - In Composer a Participant is just a data item, specifically an object in a Participant Registry. A Participant cannot access the Business Network on the Fabric until an Identity has been Issued to and bound to that Participant. Identities are generated by the CA which belongs to an Organisation. A user (administrator) with an Identity can create Participants if they have the ACL access to do so, but only an Identity with specific rights in the CA can issue Identities. This doc describes Participants and Identities in more detail: https://hyperledger.github.io/composer//managing/participantsandidentities
I don't know if CAs can 'cross certify' to allow your Super Admin to issue identities for the 3 CAs (Organizations). There is a #fabric-ca channel that should be able to answer that question.
Has joined the channel.
Hello guys,
I have a question related to node-red and this URL
https://hyperledger.github.io/composer/integrating/call-out
I have tried the example in composer playground but failed in returning the sum of 2 strings ..
appreciate ur help
Has joined the channel.
@rthatcher : Thanks ..
[ ](https://chat.hyperledger.org/channel/composer?msg=iYf4RZpvzKAKC2v5d) @davidkel How do I generate a card that does not contain certificate/private key?
Is there a different method of issuing identities than what is listed here? https://hyperledger.github.io/composer/managing/identity-issue
@davidkel
@atbe There are many ways to go about creating card files. issue identity creates a card file with a one time use only secret. If you import it into a card store in one place and use it, then import that file into the rest server (multi-user) and use it, you are basically trying to use the one time use secret twice. If it was allowed you create 2 different identities. They are NOT the same
@atbe There are many ways to go about creating card files. dentity issue creates a card file with a one time use only secret. If you import it into a card store in one place and use it, then import that file into the rest server (multi-user) and use it, you are basically trying to use the one time use secret twice. If it was allowed you create 2 different identities. They are NOT the same
@atbe There are many ways to go about creating card files. identity issue creates a card file with a one time use only secret. If you import it into a card store in one place and use it, then import that file into the rest server (multi-user) and use it, you are basically trying to use the one time use secret twice. If it was allowed you create 2 different identities. They are NOT the same
@davidkel I see, so if I issue a card file, how do I get one that doesn't contain the enrollment credentials?
Import it using the cli, delete that card file. Ping that identity, export a new card file
Say I have a card that contains the enrollment credentials, I just finished calling the `composer identity issue ...` what should I do with the card?
Okay, I imported and pinged, now how do I export it?
`composer card export`
@davidkel this is great, thanks for clarifying my misuse of the business cards! I wish this was better documented
me too :-) it's covered somewhat in the tutorials and on stackoverflow
Has joined the channel.
I want to build a manufacturer-distributor-retailer network where retailer places an orders with contains a products and quantity. At some point manufacturer recalls one of the product. If the order is with distributor, he/she will not be able to ship it to retailer as product is recalled. Similarly retailer will not be able to sell it to a customer. The idea is the recall is propagated very fast across network. My question is where should I implement the logic -if order has product recalled do not ship. I wrote the BNA and able to create an order(asset), product (asset) and place the order (transaction) , update the order status (transaction), update product status (transaction to recall). I am not able to implement the logic of checking real-time the status of product while updating order status. Please suggest a design.
Has joined the channel.
Start the web app ("Playground") -- where do I use the command 'composer-playground' as discussed on this tutorial https://hyperledger.github.io/composer/installing/development-tools.html
He guys, `Error: Error trying to instantiate composer runtime`. I get this error when I try to start the composer network. I get a `status: 500` error.
any idea why this happens?
Hello Guys,
Anyone tried the below code in this tutorial
https://hyperledger.github.io/composer/next/integrating/call-out
because it does not work for me.
appreciate ur help. thanks
Hi how could I reproduce this process in composer-playground?
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org
I want a network containing more than one organization.
Has joined the channel.
can we have advanced level of check in `ACL` where in I can invoke a `transaction` or `function` to perform some validation based on current data in blockchain
i am able to invoke a function but it cannot read the data from blockchain :(
Has joined the channel.
Hi, could someone share me a tutorial or give kick-start how to deploy fabric+composer project to virtual machine and share it to the users?
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hello, I am getting an error in the composer playground example, in the pii-network example. Every time I try to submit a transaction for Authorize access, it throws an error : t: Instance admin has a property named authorized which is not declared in org.hyperledger.composer.system.NetworkAdmin. I haven't made any changes to the script, model or ACL
Has anyone run across an issue with responses back to POSTMAN in testing on v0.16.x? Same issue with curl it seems. I can query from POSTMAN to the rest server to the composer runtime on bluemix and it pretty much always works. But transactions are problematic. Generally, I don't get a result back that says that something was created. I am getting crash tracebacks instead. Usually, the created item is present in the database, but not every time. This is pretty frustrating, as it otherwise is pretty brilliant. Thoughts?
GUys,
when submitting a transaction that calls node-red I recieve this error
{"statusCode":0,"body":{"originalStack":"g@http://localhost:8080/polyfills.eb7a9fefe827db0c2516.bundle.js:1:144464\nr@http://localhost:8080/main.5d1a7c123e25fb07d262.bundle.js:1:4203694\nn@http://localhost:8080/polyfills.eb7a9fefe827db0c2516.bundle.js:1:132877\n[863]/
Any help?
I have getting this error - Installing runtime for business network rajasthan-university-network. This may take a minute...
Error: Card not found: PeerAdmin@hlfv1.card
Command failed.
I have getting this error - Installing runtime for business network rajasthan-university-network. This may take a minute...
Error: Card not found: PeerAdmin@hlfv1.card
Command failed. My card is created in /temp. Please help.
if i create multiple channels in fabric then is it possible for deploying .bna file such that transcations could work in their respective channels ???
Has joined the channel.
Hello. I have problems with installation IDE on Ubuntu
Hi Team i have downloaded a samplle app from ibm but i want to deploy that on my network instead of running startfabric script of that package.
Hi Team i have downloaded a samplle app from ibm but i want to deploy that on my network instead of running startfabric script of that package. can i have created a sample network using byfn command can someone please tell me how can i create peer admin card so that i can deploy .bna file using that peer admin on my sample networ
Hi Team i have downloaded a samplle app from ibm but i want to deploy that on my network instead of running startfabric script of that package. can i have created a sample network using byfn command can someone please tell me how can i create peer admin card so that i can deploy .bna file using that peer admin on my sample network
Hi Team i have downloaded a samplle app from ibm but i want to deploy that on my network instead of running startfabric script of that package. i have created a sample network using byfn command . but i dont know how to create peer admin for that network so that i can deploy .bna file of the demo app to my test network .... can someone please help me in that ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZEXNKKbp3LTjPgoan) Throughout the installation process, there were warnings about depreced links and the unacceptability of using obsolete components
[ ](https://chat.hyperledger.org/channel/composer?msg=3nz2ZLawdagNMLoGF)
Снимок.JPG
Hi, I installed Hyperledger Fabric and Composer on AWS Ubuntu Server and started composer-playground using Git Bash. How can I logon to Composer running in the server?
Clipboard - 18. März 2018 15:41
Снимок5.JPG
Снимок5.JPG
Hi Team i have downloaded a samplle app from ibm but i want to deploy that on my network instead of running startfabric script of that package. i have created a sample network using byfn command . but i dont know how to create peer admin for that network so that i can deploy .bna file of the demo app to my test network .... can someone please help me in that ?
Has joined the channel.
Hello everyone, I am trying to run this command "composer archive create --t dir -n ." but getting error "-t" option does not exist. Please any advise how to fix this ?
[ ](https://chat.hyperledger.org/channel/composer?msg=NmfRx6CM9RwPZvtyj) Note that I got it working this morning in POSTMAN and the rest server itself. For whatever reason, the local rest server needed a restart. After that it responds quickly.
Has anyone tried to build an simple authorization system other that passport-github authorization strategies?
Has anyone tried to build an simple authorization system other than passport-github authorization strategies?
Has anyone tried to build an simple authorization system other than passport-github authorization strategy?
[ ](https://chat.hyperledger.org/channel/composer?msg=oANbei7wvFnocFvNC) @muhammadaliqadri
either `--sourceType` or `-t` but not `--t`
@silliman Thank you!
I have getting this error - Installing runtime for business network rajasthan-university-network. This may take a minute...
Error: Card not found: PeerAdmin@hlfv1.card
Command failed. My card is created in /temp. Please help.
I have getting this error - Installing runtime for business network test-network. This may take a minute...
Error: Card not found: PeerAdmin@hlfv1.card
Command failed. My card is created in /temp. Please help.
I have getting this error - Installing runtime for business network test-network. This may take a minute...
Error: Card not found: PeerAdmin@hlfv1.card
Command failed. My card is created in /tmp. Please help.
Has joined the channel.
Hi Guys, how could I save a new transaction created by factory.newResource inside a business network function?
[ ](https://chat.hyperledger.org/channel/composer?msg=KRNfwSDEj2Yy9e23g) @ArunDaniel any luck?
@ArunDaniel - create participants, issue id for the newly created participants and connect as that participant before trying the authorize access transaction
Has joined the channel.
Has joined the channel.
Hello Guys, how do I deploy hyperledger fabric on my dedicated server?
i can add user card when create transaction using rest server?
[ ](https://chat.hyperledger.org/channel/composer?msg=TtdDXy5p2f45ExhgR) @rthatcher like how much can be the time in worst case? Can it get near minutes? e.g in case of Bitcoin it's up to 10 minutes
Hello,
I have a hyperledger composer running on my local machine and a nodejs server. When I create cards and export from composer cli, I can use them from nodejs since all the peers, orderers and ca that are specified in the connection profile on different ports on localhost.
Now when I hosted the hyperledger on a seperate server and exposed the ports used by hyperledger to be accessible to node server and I exported the card , I had to change the localhost to ip address of hyperledger node for that card to be used with nodejs which is on a seperate server but I get an error that the participant with name 'something' with identity 'something' is not a registered participant.
Can anyone explain what am I doing wrong? How do I go about doing this?
[ ](https://chat.hyperledger.org/channel/composer?msg=45fy2We3uuFE7CQb9) any help please
[ ](https://chat.hyperledger.org/channel/composer?msg=Dew6e4pdPc6PpDirW) @Varun2887 I think you can perform logic on transactions only. If creating an asset or participant you won't be able to write business logic for it. I am also new to hyperledger but to my knowledge the only way possible is create your asset or participant in a transaction where you can perform the business logic.
@ulhaqanwaar - so in that case it wont be controlled by ACL
and I will have to provide access on `Asset ` first
so that it can be controlled by `transaction`
[ ](https://chat.hyperledger.org/channel/composer?msg=n2oYqvc4sN8QDdaPD) @Varun2887 You can control a transaction as well in the ACL like who can initiate which sort of transaction and checks inside but if additional logic is required you can write that in the Business logic part
but the asset that this transaction will control, will need to provide access to that asset
right?
[ ](https://chat.hyperledger.org/channel/composer?msg=vSQ6MB2oMxnSqFoDt) @Varun2887 I don't have deep knowledge about ACL but I think you can do pretty much everything in business logic
that i understand
hi, as `0.18.1` need to pull node modules from npm registry, i built my private npm registry using `verdaccio`. does anyone use it too?
and it there any better choice? i used `sinopia` before but it did not update several years.
and is there any better choice? i used `sinopia` before but it did not update several years.
and is there any better choice? i used `sinopia` before but it did not update several years. now `verdaccio` is actually mostly like `sinopia`. so i am doubted that `sinopia` was replaced by `verdaccio`:grinning:.
and is there any better choice? i used `sinopia` before but it did not update several years. now `verdaccio` is technically mostly like `sinopia`. so i am doubted that `sinopia` was replaced by `verdaccio`:grinning:.
and is there any better choice? i used `sinopia` before but it did not update for years. now `verdaccio` is technically mostly like `sinopia`. so i am doubted that `sinopia` was replaced by `verdaccio`:grinning:.
verdaccio is a fork of sinopia
@ashishapy that sounds reasonable. the architecture is actually the same.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=9bbtR4d6KuMq9E3pE) Nvm found the prob
Has joined the channel.
how to setup composer with kubernets
any link please
Has joined the channel.
can we write contains query?
text search on conains
Has anyone successfully implemented REST server authentication using passport-local? We've successfully used passport-github, but we're having trouble with passport-local. Anyone have an example of a working passport-local COMPOSER_PROVIDERS config?
I have tried to, but haven't gotten very far :) @tylerw 3
Maybe this might help you. Quoted from @ igetgames
```
As the rest-api is included in composer you can require the rest api and interact with the datasource directly, inserting users
Then local auth should work, but I have no experience implenting it 😛 Heared ir from @ igetgames
I don't have time to post an example, but basically you grab the composer-rest-server entrypoint via:
`const server = require('composer-rest-server/server/server');`
And you have to call it with the composer options:
`const result = await server({ card, namespaces, port, authentication, multiuser, websockets, tls, tlscert, tlkey }); // only pass what you need`
The `result` object contains `app` and `server` which is the loopback app instance and composer-rest-server http(s) server instance. Once you have app you can access the `dataSources` and `models` members as if you were running composer-rest-server standalone. What's interesting is that composer-rest-server will be fully initialized (including business network model discovery) so you could potentially submit transactions and queries to your business network by accessing the `composer` variable ala `const composer = app.get('composer');`.
```
Also this
```
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"callbackURL":"/auth/local/callback",
"successRedirect": "/",
"failureRedirect": "/",
"setAccessToken": true,
"callbackHTTPMethod": "post"
},
```
Should be exported :P and passport-local should be installed globally
@Legit
Thanks! I'll give it a try
[ ](https://chat.hyperledger.org/channel/composer?msg=SxbJhrdQHay3cnKSb) Here
and
[ ](https://chat.hyperledger.org/channel/composer?msg=MaXLCfWrPXNgZAj7d) Here
and
[ ](https://chat.hyperledger.org/channel/composer?msg=bRQtCEX6migjKer66)
Sorry for the spam :)
NP, thanks again, that's good info
Np! I personally haven't had the time to experiment with it yet and get it fully working, but with this info you should be pointed to the right direction :P
Ill also have a look at it this week ^^
[ ](https://chat.hyperledger.org/channel/composer?msg=FCaBPrftR9fvJP3uq) @oseifrimpong - the Composer Documentation covers how to deploy a standard Development Fabric: https://hyperledger.github.io/composer/installing/development-tools.html
If you want to deploy a custom Fabric on a server I would suggest starting with the Tutorials in the Fabric documentation: http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#
[ ](https://chat.hyperledger.org/channel/composer?msg=bmmt3uopcax7xDCfA) @ulhaqanwaar - I have not seen transactions take 10 minutes. Mining a Bitcoin is a *very different* type of activity to endorsing a Business Transaction. On production hardware you would expect sub-second transactions. In terms of worst case? - You could search Composer and Fabric documentation for timeouts and see what the defaults are.
[ ](https://chat.hyperledger.org/channel/composer?msg=T8Sq6Wp9knhfYcn6D) @Varun2887 - there are some examples of using queries with CONTAINS in the section in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#queries
@rthatcher case insensitive search is also feasible?
is it text contains?
[ ](https://chat.hyperledger.org/channel/composer?msg=g3Aanu9b4HcGr2ztW) @Varun2887 - for Kubernetes, IBM has some scripts that are used to create a Fabric on the IBM Container Service - you could look at these scripts as examples for your own Kubernetes deployment: https://ibm-blockchain.github.io/simple/
Hello, I have a problem with setting credentials for a composer card.
The error is "the client doesn't understand anything rather ECDSA keys". However, I am passing the privateKey as the hex string in the credentials of user.
[ ](https://chat.hyperledger.org/channel/composer?msg=sCNQ5f6wuuqb7wSkc) @tylerw 3 it'll be great if you update it when you finished
i'm trying the same building normal signup/signin app demo with composer and fabric so
Hi @rthatcher .. I'm performing this tutorial https://hyperledger.github.io/composer/next/tutorials/google_oauth2_rest.. And while running this command `docker run \ -d \ -e COMPOSER_CARD=${COMPOSER_CARD} \ -e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \ -e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \ -e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \ -e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \ -e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \ -v ~/.composer:/home/composer/.composer \ --name rest \ --network composer_default \ -p 3000:3000 \ myorg/composer-rest-server
` I'm getting error as "*docker: invalid reference format.*" .. Whats wrong?
Hi @rthatcher .. I'm performing this tutorial https://hyperledger.github.io/composer/next/tutorials/google_oauth2_rest.. And while running this command `docker run \ -d \ -e COMPOSER_CARD=${COMPOSER_CARD} \ -e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \ -e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \ -e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \ -e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \ -e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \ -v ~/.composer:/home/composer/.composer \ --name rest \ --network composer_default \ -p 3000:3000 \ myorg/composer-rest-server
` I'm getting error as *docker: invalid reference format.* .. Whats wrong?
Hi @rthatcher .. I'm performing this tutorial https://hyperledger.github.io/composer/next/tutorials/google_oauth2_rest.. And while running this command
`docker run \ -d \ -e COMPOSER_CARD=${COMPOSER_CARD} \ -e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \ -e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \ -e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \ -e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \ -e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \ -v ~/.composer:/home/composer/.composer \ --name rest \ --network composer_default \ -p 3000:3000 \ myorg/composer-rest-server`
I'm getting error as *docker: invalid reference format.* .. Whats wrong?
can we do text `contain` `case-insensitive` query on blockchain?
```Error found!
Error: t: Expected "!", "(", "[", "false", "function", "new", "null", "this", "true", "{", comment, end of line, identifier, number, regular expression, string or whitespace but "=" found. Line 3 column 63```
how to use regular expression or string based queries
Hi all,
I try to make use of ACL definitions by uploading the business network cards on the rest server. Unfortunately, I always receive a JSON error when I try to Post sth. although the same JSON worked in non-mutli-user mode.
"error": {
"statusCode": 500,
"name": "Error",
"message": "Invalid JSON data. Found a value that is not a string: 1 .......
Anysone expierenced the same issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=fZHoJ5piYQMSruzAA) Any help pelase
I use the "composer network undeploy -c admin@xxx" command to undeploy my business network, but it reported an error "-bash: ./undeploy.sh: Permission denied". Can anyone tell me why?
I use the "composer network undeploy -c admin@xxx" command to undeploy my business network, but it reported an error "-bash: ./undeploy.sh: Permission denied". Can anyone tell me why?
How do we restart business network so that latest changes is applied?
Has anyone configured a custom card store before?
using the sdk
Apparently following the documentation method doesn't work, it doesn't create a folder in the directory specified
Hi having issues with testing my business network on playground online
Screen Shot 2018-03-19 at 10.51.42.png
How do I submit assets and participant? These are specified in my model file so not sure why it isnt reading it
Do I need to configure the `.acl` first?
Screen Shot 2018-03-19 at 11.11.43.png
[ ](https://chat.hyperledger.org/channel/composer?msg=BpsMmGgBheXm6bq8B) @Pranoti - I can't see anything obvious in the command. Looking up that error other people have had unwanted
[ ](https://chat.hyperledger.org/channel/composer?msg=sFiikdKiDPZAEJoyj) @d8bhatta - are you trying to update the Network from a Command Line? Try `composer network update` - https://hyperledger.github.io/composer/reference/commands
[ ](https://chat.hyperledger.org/channel/composer?msg=ZdEicsMXgKxd8tWNc) @SamuelDare - Can you share your Model file ?
[ ](https://chat.hyperledger.org/channel/composer?msg=WXjms5fxCyRfooLnJ) @SamuelDare so you get this on SUBMIT of the transaction? I suspect the annotation etc to describe your transaction in your TP script file is not quite right - can you post it ? So your model may be fine, but .....
Its too long so will have to post in bits
its an adapation of the PII network transaction logic
just the header will do
not the whole script :-)
Shouldnt the model files enable assets and participants to be known?
```
**
* For the first iteration of the POC, all the model definitions
* will be placed in one file. As the project evolves, we might
*proceed to modularize each component (i.e seperate concerns)
**/
namespace org.medichain.mvp
import composer.base.*
import composer.events.*
/**
**Enum for the type of consultation
**/
enum TypeOfConsultation {
o CLINICAL
o SURGERY
o IMMUNIZATION
}
/**
**Enum for the type of Immunization
**/
enum ImmunizationType {
o HEPATITISB
o DTP
o HAEMOPHILLIUSINFLUENZA
o PNEUOMACOCAL
o POLIO
o ROTAVIRUS
o MMRS
o VARICELLA
o HEPATITISA
o MENINGCOCAL
}
/**
**Enum for the type of Disease
**/
enum Disease {
o CARDIOVASCULAR
o CANCER
o CHRONIC_LOWER_RESPIRATORY_DISEASE
o STROKE
o ANDROPAUSE
o ARTHRITIS
o ACUTE_BRONCHITIS
o BURN
o CROHNS
o DEPRESSION
o DIARRHEA
o DERMATITIS
o ENDOMETRIOSIS
o EPILEPSY
o FIBROMYALGIA
o DVT
o HERPES
o GONORRHEA
o GOUT
o GYNECOMASTIA
o MYOCARDIAL_INFARCTION
o HEMORRHOIDS
o HIV
o AIDS
}
/**
**Enum for the type of Gender
**/
enum Gender {
o Male
o Female
o Undisclosed
}
/**
**Enum for the type of DataAccessor
**/
enum DataAccessorType {
o ACADEMIC_RESEARCHER
o COMMERCIAL_ENTITY
}
participant Patient identified by patientId extends Member {
o String patientId
--> MedicalPractitioner patientDoctor
--> MedicalPractice patientPractice
}
participant MedicalPractice identified by practiceId {
o String practiceId
o String practiceName
o Integer practiceRegistrationNumber
}
participant MedicalPractitioner identified by practitionerId extends Member {
o String practitionerId
o String userName
o String firstName
o String lastName
o Integer registrationNumber
o String speciality
o String assistant optional
--> MedicalPractice practicionerPlaceOfWork
o String[] authorized optional
}
```
Thanks alot @rthatcher
Logic.js:
```
'use strict';
/**
* A medical practicioner grants access to Data Accessors / Other participants
* @param {org.medichain.mvp.GrantAccess} grantAccess - the function to grant access
* @transaction
*/
function GrantAccess(grantAccess) {
var me = getCurrentParticipant();
console.log('**** AUTH: ' + me.getIdentifier + 'granting access to ' + grantAccess.accessorId)
if(!me) {
throw new Error('A participant/certificate mapping does not exist.');
}
// if the member is not already authorized, we authorize them
var index = -1;
if(!me.authorized) {
me.authorized = [];
}
else {
index = me.authorized.indexOf(grantAccess.accessorId);
}
if(index < 0) {
me.authorized.push(grantAccess.accessorId);
return getParticipantRegistry('org.medichain.mvp.DataAccessor')
.then(function (memberRegistry) {
// emit an event
var event = getFactory().newEvent('org.medichain.mvp', 'MemberEvent');
event.memberTransaction = grantAccess;
emit(event);
// persist the state of the member
return memberRegistry.update(me);
});
}
}
```
can send DM if you like up to you. On Q: yes
thanks
Cant seem to find you
can you please message me?
Thanks!
A quick question, can composer work with fabric 1.1?
[ ](https://chat.hyperledger.org/channel/composer?msg=n6eKgRwDpiBdv6brq) @itskhushal - Composer v0.18.1 works with Fabric v1.1.0-RC1. There should be a release this week that supports Fabric 1.1 GA.
[ ](https://chat.hyperledger.org/channel/composer?msg=n6eKgRwDpiBdv6brq) @itskhushal Yes..version 1.1 + only work on it
[ ](https://chat.hyperledger.org/channel/composer?msg=tdDuhi7EALzTJpmr3) @rthatcher Can this we used in AWS with ubuntu
[ ](https://chat.hyperledger.org/channel/composer?msg=pEAYGphshxqX8aJQZ) @SamuelDare as mentioned probably need correct `event.permissionControl` transaction class name etc for the emit event in your TP code
[ ](https://chat.hyperledger.org/channel/composer?msg=ovEufpuXGLmuCPoRo) @rthatcher I tried that.. but its still not working.. Any idea??
[ ](https://chat.hyperledger.org/channel/composer?msg=ovEufpuXGLmuCPoRo) @rthatcher I tried that.. but its still not working.. Any idea?? Even I tried removing all docker containers and started with all fresh configuration.. but its giving same error at this step
If anyone has tried using https://github.com/jt-nti/composer-devenv to set up a VM development environment and hit problems with the latest Vagrant release, it should be working again now. (Note: Vagrant 2.0.3 is now the minimum supported version.)
I am having an issue adding a participant to my network online
Here is the definition in the model file:
```
participant DataAccessor identified by accessorId extends Member {
o String accessorId
o DataAccessor typeOfDataAccessor
o String name
o String[] authorized optional
}
```
When I try to create the participant, I get the following error: `Error : model is recursive` . I will appreciate pointers on this
Hello, i have a problem with the following code: `function placeOrder(placeOrder){
console.log('placeOrder');
var factory = getFactory();
var NS_O = 'org.acme.order';
var NS_I = 'org.acme.importer';
var NS_S = 'org.acme.shipper';
var importer = placeOrder.importer;
var orderedItem;
var order;
return getAssetRegistry('org.acme.order.Order')
.then(function (registry){
return registry.get(placeOrder.item.getIdentifier())
.then(function(item){
orderedItem = item;
order = factory.newResource(NS_O, 'Order', placeOrder.orderId);
order.item = orderedItem;
order.orderStatus = 'CREATED';
order.orderDetails = factory.newConcept(NS_O, 'OrderDetails');
order.orderDetails.importer = factory.newRelationship(NS_I, 'Importer', importer.getIdentifier());
return registry.add(order);
});
})
.then(function(){
var placeOrderEvent = factory.newEvent(NS_O,'PlaceOrderEvent');
placeOrderEvent.order = order;
placeOrderEvent.importer = placeOrder.importer;
emit(placeOrderEvent);
});
}`
Why can't i get the code to find the asset "item" and put it in the order as a relationship?
Has joined the channel.
`rule OtherUserAccess {
description: "Allow other users to access aadhaar if access is granted"
participant(u): "org.alpha.secureid.User"
operation: READ
resource(a): "org.alpha.secureid.Aadhaar"
transaction(tx): "org.alpha.secureid.ViewAadhaar"
condition: (tx.to.getIdentifier() === a.getIdentifier())
action: ALLOW
}`
Hey I am working on a composer application, the problem is that even though the participant(User) who is trying to access the asset Aadhaar has made ViewAadhaar transaction with the owner of the asset Aadhaar and the given condition should be satisfied but we are still getting an Access Controller error that the User does not have read access.
[ ](https://chat.hyperledger.org/channel/composer?msg=BjzdFCqjBCdWioxvG) @SamuelDare - You have DataAccessor as the Participant and within the Participant as a field - it is recursive :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=ghKZy8pTGpdRrEEpP) @rthatcher d'oH!
@omkarprabhu98 interested to know what happens when you set the condition to `condition: (tx.to.getIdentifier() === u.getIdentifier())` - does the same denial happen? It could also depend on what else you've defined in your ACL ruleset :-)
@benjamin.verhaegen so what happens, is it coming back undefined (what does `placeOrder.item.getIdentifier())` return) ?
[ ](https://chat.hyperledger.org/channel/composer?msg=moDLCjq4ZEAxQ8jG8) @mahoney1 The asset being accessed does not belong to user u, it belongs to tx.to. User u should be allowed to view the asset if he makes the ViewAadhaar transaction. We also tried removing the condition itself, still getting the same error. But removing the transaction field allows the user u to access the asset, and this rule is specified on the top if the acl file. There is also another rule concerning the participant user's access to the asset below in the file, which basically allows only the owner to access it.
```rule OwnUserAccess {
description: "Allow user to access his own aadhaar"
participant(u): "org.alpha.secureid.User"
operation: READ
resource(a): "org.alpha.secureid.Aadhaar"
condition: (a.owner.userId === u.userId)
action: ALLOW
}```
@Pranoti can you provide 1) the output of `pwd` where you're sourcing from and 2) docker version and 3) the `envvars.txt` file you created (assuming you're doing `source envvars.txt` as the means to set them in your environment).
@mahoney1 i've got it to work i needed to use factory.newResource
@omkarprabhu98 from what you've posted (I've not seen the actual error FYI) - it may be that your participant (in the first rule you posted) is unable to execute (eg, CREATE permission minimally) the transaction `transaction(tx): "org.alpha.secureid.ViewAadhaar"`because 'he' doesn't have an ACL allowing him access - the reason I asked my first question was to see if you got the same error. The rules are evaluated in order, and the first rule whose condition matches determines whether access is granted or denied. If no rule match - then access is denied.
@omkarprabhu98 from what you've posted (I've not seen the actual error FYI) - it may be that your participant (in the first rule you posted) is unable to execute (eg, CREATE permission minimally) the transaction `transaction(tx): "org.alpha.secureid.ViewAadhaar"`because 'he' doesn't have an ACL allowing him access to it in your rules - the reason I asked my first question was to see if you got the same error. The rules are evaluated in order, and the first rule whose condition matches determines whether access is granted or denied. If no rule match - then access is denied.
[ ](https://chat.hyperledger.org/channel/composer?msg=9N2jQNjNeJgcJoaKM) @benjamin.verhaegen ok cool thanks
@mahoney1
I am attaching my permissions file, so that you can take a proper look
And the exact error we are facing is
@JS : AccessController :check() t: Participant 'org.alpha.secureid.User#6517' does not have 'READ' access to resource 'org.alpha.secureid.Aadhaar#7236'
Has joined the channel.
@mahoney1
Couldn't upload file here is the paste bin link
https://pastebin.com/ER9mDh9r
[ ](https://chat.hyperledger.org/channel/composer?msg=PqsM44zArSB42pDE7) @omkarprabhu98 please share ur cto as well
Hi,
I has there someone been able to set up a local login?
:-)
Hi,
has there someone been able to set up a local login?
:-)
Hi everyone. Is it possible to use the method newResource() from the Factory() class without passing an ID?
[ ](https://chat.hyperledger.org/channel/composer?msg=PqsM44zArSB42pDE7) @omkarprabhu98 as per your error message some other user is trying to access your adhar which is feasible only with transaction `OtherUserAccess `
i hope you are accessing the data using this transaction only
Hi, all. Have couchdb backed ledger on each node
And named query with ORDER BY and LIMIT. Just overcame issue with lack of indexes for ORDER BY
And named query with ORDER BY and LIMIT. Just overcame issue with lack of indexes for ORDER BY https://github.com/hyperledger/composer/issues/1640
But the new problem is LIMIT 1 does not work
It just returns all my (two) assets
seems `query` framework needs major enhancements
i am unable to do contain text search as well
Oh, the order is incorrect too
@Varun2887 `OtherUserAccess` is a rule to control the access for the asset Aadhaar, according to which it should be accessible after the view aadhaar transaction which is not happening
Here are the link for cto https://pastebin.com/fZYfbiK4 and logicjs file: https://pastebin.com/JTzqThTK
@omkarprabhu98 is it because in this rule ```rule OwnUserAccess {
description: "Allow user to access his own aadhaar"
participant(u): "org.alpha.secureid.User"
operation: READ
resource(a): "org.alpha.secureid.Aadhaar"
condition: (a.owner.userId === u.userId)
action: ALLOW
} ``` you're comparing a string compare of a relationship identifier - with a standard identifier (eg you can check with condition: `(a.owner.userId.getIdentifier() === u.userId)` you'll know from your model definition (I can't tell if the former is a relationship)
@omkarprabhu98 is it because in this rule ```rule OwnUserAccess {
description: "Allow user to access his own aadhaar"
participant(u): "org.alpha.secureid.User"
operation: READ
resource(a): "org.alpha.secureid.Aadhaar"
condition: (a.owner.userId === u.userId)
action: ALLOW
} ``` you're comparing (in your condition) a string compare of a relationship identifier - with a standard identifier (eg you can check with condition: `(a.owner.userId.getIdentifier() === u.userId)` you'll know from your model definition (I can't tell if the former is a relationship)
actually I see you posted the CTO
these 2 rules seems to be contradicting each other
@mahoney1 I think the OwnUserAccess is working properly since the user is able to access his own aadhaar
i am not sure 2 rules gets used as `AND` internally or `OR`
@Varun2887 According to the documentation, The rules are evaluated in order, and the first rule whose condition matches determines whether access is granted or denied. If no rule match - then access is denied.
[ ](https://chat.hyperledger.org/channel/composer?msg=mnypBnW6TbHfugncZ) @Varun2887 its first match in evaluation (down the order of rules) - ignore my compare note - I see you're compariing like-for-like
[ ](https://chat.hyperledger.org/channel/composer?msg=mnypBnW6TbHfugncZ) @Varun2887 its first match in evaluation (down the order of rules) - ignore my compare note - I see you're compariing like-for-like on seeing the model
so eventually its an `OR` condition
for allowing the access
Also, just to clear a doubt in my mind, if the currentUser has submitted the transaction ViewAadhar shouldn't the rule `OtherUserAccess` be applied?
is your console log `console.log('View Aadhaar')`
getting printed
Yes and the transaction is added to the "All transactions" list
also.. i dont see u referring to any aadhar in ur code
its all users u r accessing?
@Varun2887 Yes, it is just 1 user allowing access to his aadhaar to the other user
Hi,
Would anyone be able to give me a hand?
I have a transaction processor and a separate node script that executes a transaction. The transaction gets executed, but the transaction processor does not run. Is there some part I am missing to get the processor to run? It runs fine if I execute the transaction through playground
.. can add code if that helps :)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=bzKnYZnYgw986M64A) @arunmitteam I did that before authorizing them. I have no problem with Unauthorize access transaction, only the authorize is giving an issue.
Hey, can anyone help me with deploying a composer application to Azure Hyperledger Consortium please?
[ ](https://chat.hyperledger.org/channel/composer?msg=3nkcHApTFPGyctCHj) @omkarprabhu98 on your Q: it should trigger '`OwnUserAccess` rule and the ID of getCurrentParticipant() in your TP function should match `u.userId` . Question; does ViewAadhaar transaction actually work for a User submitting this transaction (and that owns an Aadhaar asset) ie a participant that should pass ... Line 132 of your transaction code is comparing 'from' and' to' values -passed in by the tx transaction, is this intended ; lastly I would remove your 'return' (lines 134 - 136), rather than what appears to be an undefined, lclosing after the throw }.
[ ](https://chat.hyperledger.org/channel/composer?msg=3nkcHApTFPGyctCHj) @omkarprabhu98 on your Q: it should trigger '`OwnUserAccess` rule and the ID of getCurrentParticipant() in your TP function should match `u.userId` . Question; does ViewAadhaar transaction actually work for a User submitting this transaction (and that owns an Aadhaar asset) ie a participant that should pass ... Line 132 of your transaction code is comparing 'from' and' to' values -passed in by the tx transaction, is this intended ; lastly I would remove your 'return' (lines 134 - 136), rather than what appears to be returning as undefined, closing after the throw }.
Screen Shot 2018-03-19 at 17.35.14.png
here is a copy of the transaction logic
```
'use strict';
/**
* A medical practicioner grants access to Data Accessors / Other participants
* @param {org.medichain.mvp.GrantAccess} grantAccess - the function to grant access
* @transaction
*/
function GrantAccess(grantAccess) {
var me = getCurrentParticipant();
console.log('**** AUTH: ' + me.getIdentifier + 'granting access to ' + grantAccess.accessorId)
if(!me) {
throw new Error('A participant/certificate mapping does not exist.');
}
// if the member is not already authorized, we authorize them
var index = -1;
if(!me.authorized) {
me.authorized = [];
}
else {
index = me.authorized.indexOf(grantAccess.accessorId);
}
if(index < 0) {
me.authorized.push(grantAccess.accessorId);
return getParticipantRegistry('org.medichain.mvp.DataAccessor')
.then(function (memberRegistry) {
// emit an event
var event = getFactory().newEvent('org.medichain.mvp', 'MemberEvent');
event.permissionControl = grantAccess;
emit(event);
// persist the state of the member
return memberRegistry.update(me);
});
}
}
```
@ChrisMcQueenDevelopment can you show how you defined the transaction - and the name it has in your model file ?
@ChrisMcQueenDevelopment can you show how you defined the transaction in your script file (including its TP definition if you have it) - and the name it has been given in your model file ?
Hi everyone, i am getting this error "Error: Card not found: PeerAdmin@hlfv1" I have hlfvi at /home/shahbaz/fabric-tools/fabric-scripts/hlfv1 . i am trying to run this command ' composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network
' , Please anyone could advise.
[ ](https://chat.hyperledger.org/channel/composer?msg=yhspM2j5Mf6oGJKyz) @muhammadaliqadri - you can try `composer card list` to get the names of any cards you have. If the card is not in the list, did you run the script createPeerAdminCard.sh ?
[ ](https://chat.hyperledger.org/channel/composer?msg=Cosy7Eo9QcLn2WyE8) @SamuelDare You seem to be submitting the transaction as 'admin' which is not the kind of participant that will have a field called authorized at a guess :0-) - the clue is in the field 'authorized' in the message - from your model you have at least 4 participants - 2 of which have 'authorized' defined - you should check which_ business network _participant is submitting the transaction when you've created legitimate participants (eg. use console.log or easy to identify in playground) - then check your model. for the array field `authorized[] optional`
Can I grant admin access to this network? How Do I submit it as a different participant?
@rthatcher Thanks, i have run composer card list which returns no card available then i have run createpeeradmincard.sh, now i got this message
@rthatcher Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'
Command failed
Hyperledger Composer PeerAdmin card has been imported
There are no Business Network Cards available.
Command succeeded
[ ](https://chat.hyperledger.org/channel/composer?msg=rFRXHoMMRhxTrTnxS) @muhammadaliqadri - what version on Node are you running? Composer required Node v8.9. That error is seen sometimes with the wrong node version
[ ](https://chat.hyperledger.org/channel/composer?msg=dNxB6g3bNWfDJN585) @SamuelDare go to 'Test' in Playground - click on a participant type you're testing with (eg. Practitioner etc). and click 'Create Participant' - then go and create some identities (top right) and map the identityyou created) to the participant (you created). Finally, (once you 'use now' in Playground to 'become' that participant) - you can submit transactions as that participant - and your transaction will know about the field called authorized ....)
@rthatcher i think its 8.9 , how i could check node version , i am new to ubunto enviroment.
@rthatcher yest its 8.10
[ ](https://chat.hyperledger.org/channel/composer?msg=rCSr3Rgz4S3m3PnbT) @muhammadaliqadri - OK I think 8.10 is OK (certainly we need Node 8) - What version of Composer are you running ` composer -v ` and have you had any previous version running?
[ ](https://chat.hyperledger.org/channel/composer?msg=rCSr3Rgz4S3m3PnbT) @muhammadaliqadri - OK I think 8.10 is OK (certainly we need Node 8 ) - What version of Composer are you running ` composer -v ` and have you had any previous version running?
@rthatcher its v0.16.6
node -v or npm -v @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=5eW7FJ7xJubovAiFR) @muhammadaliqadri - and did you install composer-cli with the ` -g ` option, and NOT using sudo or root ?
[ ](https://chat.hyperledger.org/channel/composer?msg=pwmiDq5LjhkzCxdGu) @MokshJain that sounds like an Azure blockchain question -> have you checked the resources here -> snip.li/5gS (snipped) - what in particular is your Q?
Screen Shot 2018-03-19 at 18.14.32.png
[ ](https://chat.hyperledger.org/channel/composer?msg=XuRBx7vA6r78Sv4Qm) false alarm wrong winder
*window
[ ](https://chat.hyperledger.org/channel/composer?msg=wtf56EC3ZAEAjaCin) @rthatcher yes with -g option
@SamuelDare you need to create participant **instances** first - see https://hyperledger.github.io/composer/managing/participantsandidentities.html - have you tried the playground tutorial ? https://hyperledger.github.io/composer/tutorials/playground-tutorial.html - would suggest to understand these first, then you'll easily be able to map your identity to a participant (when you typeahead, it will find the instance, with a particular id, that you created)
I got it
was in the wrong window thanks!
:-)
[ ](https://chat.hyperledger.org/channel/composer?msg=5eW7FJ7xJubovAiFR) @muhammadaliqadri - OK - I think I know what the problem is - but I don't have too much time to follow up with you ...
I think that the version of npm the was installed with the prereqs-ubuntu.sh is "broken"
can you do npm -v
can you do ` npm -v ` - do you get 5.7.1 ? Perhaps if you try ` npm install npm@5.7.0 -g ` it might fix it
[ ](https://chat.hyperledger.org/channel/composer?msg=BRGypinZZYbQ7aRLS) @rthatcher Thank, but card is created at /tmp/PeerAdmin@hlfv1.card
[ ](https://chat.hyperledger.org/channel/composer?msg=GsFpzN2bxKx88dMA6) @muhammadaliqadri - right the .card file is created, but I think the command fails to Import it (so you can't see it in composer card list) .
Do you have the environment variable ` FABRIC_VERSION ` set ?
[ ](https://chat.hyperledger.org/channel/composer?msg=K2ceNvTktGXcF3eRq) @rthatcher Sorry npm is 5.6.0. dont know much how to set fabric version just followed the tutorial .
@mahoney1 Thanks a lot for the quick reply!
The problem I'm facing is that the Azure Hyperledger Consortium provides 4 VMs configured as 2 peers, 1 orderer and 1 ca. There is also a channel created. Now when I try to deploy my application using composer, following the guide at https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org. Now the problem I get is that when I run the `composer network start -c PeerAdmin@fabric-network -a tutorial-network.bna -A admin -S adminpw` command it gives this error: `Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND`. I'm running these commands from the CA node, which is the only one accessible through ssh.
Also the Azure Hyperledger platform is criminally underdocumented and we couldn't find any proper guide on deployment of composer apps.
Any help will be appreaciated
Thanks again!
[ ](https://chat.hyperledger.org/channel/composer?msg=2tPKeiviYMAYLaLGJ) @mahoney1
Thanks for replying
So the transaction processor is in the logic file: https://github.com/Chris-McQueen-Development/logistics-chain/blob/master/lib/logic.js
[ ](https://chat.hyperledger.org/channel/composer?msg=2tPKeiviYMAYLaLGJ) @mahoney1
Thanks for replying
So the transaction processor is in the logic file: https://github.com/Chris-McQueen-Development/logistics-chain/blob/master/lib/logic.js
and here I am creating a transaction ManufactureCar: https://github.com/Chris-McQueen-Development/logistics-chain/blob/master/utility-scripts/manufactureCar.js
Any help would be greatly appreciated!
[ ](https://chat.hyperledger.org/channel/composer?msg=2tPKeiviYMAYLaLGJ) @mahoney1
Thanks for replying
So the transaction processor is in the logic file: https://github.com/Chris-McQueen-Development/logistics-chain/blob/master/lib/logic.js
and here I am creating a transaction ManufactureCar: https://github.com/Chris-McQueen-Development/logistics-chain/blob/master/utility-scripts/manufactureCar.js
The model is here: https://github.com/Chris-McQueen-Development/logistics-chain/blob/master/models/outbound.logistics.vehicle.cto
Any help would be greatly appreciated!
[ ](https://chat.hyperledger.org/channel/composer?msg=2tPKeiviYMAYLaLGJ) @mahoney1
Thanks for replying
So the transaction processor is in the logic file: https://github.com/Chris-McQueen-Development/logistics-chain/blob/master/lib/logic.js - the console log doesnt get triggered and a car does not get added when I check the asset registry
and here I am creating a transaction ManufactureCar: https://github.com/Chris-McQueen-Development/logistics-chain/blob/master/utility-scripts/manufactureCar.js
The model is here: https://github.com/Chris-McQueen-Development/logistics-chain/blob/master/models/outbound.logistics.vehicle.cto
Any help would be greatly appreciated!
@MokshJain I see. Have you done a `composer runtime install` on each peer. with a business network name - that matches what you proposed to deploy as a business network from the .bna file ? See https://hyperledger.github.io/composer/reference/composer.runtime.install.html - Is the channel names correct in your connection.json that you used to create your PeerAdmin card ? See https://hyperledger.github.io/composer/reference/connectionprofile.html for more info - Has your CA got https / TLS enabled?
@ChrisMcQueenDevelopment will be going shortly but brief observs: 1) var getCurrentTime = new Date(); - non-deterministic code and transaction will get rejected, rather - you would pass in the Date() from your client side. 2) you should get the console.log - if you're connected to a runtime Fabric - then you'll need to look in the logs :0) it won't be in your web console - but if connected to web connector in playground only - I used Chrome - but had issues that needed extra tweaking in FF fyi 3) plant is the transaction object but your function has plantData ? Maybe intended.. 4) I would just do ```return getAssetRegistry('outbound.logistics.vehicle.Car').then(function(carRegistry) {
return registry.add(order);
})
@ChrisMcQueenDevelopment will be going shortly but brief observs: 1) var getCurrentTime = new Date(); - non-deterministic code and transaction will get rejected, rather - you would pass in the Date() from your client side. 2) you should get the console.log - if you're connected to a runtime Fabric - then you'll need to look in the logs :0) it won't be in your web console - but if connected to web connector in playground only - I used Chrome - but had issues that needed extra tweaking in FF fyi 3) plant is the transaction object but your function has plantData ? Maybe intended.. 4) I would just do ```return getAssetRegistry('outbound.logistics.vehicle.Car').then(function(carRegistry) {
return carRegistry.add(order);
})
@ChrisMcQueenDevelopment will be going shortly but brief observs: 1) var getCurrentTime = new Date(); - non-deterministic code and transaction will get rejected, rather - you would pass in the Date() from your client side. 2) you should get the console.log - if you're connected to a runtime Fabric - then you'll need to look in the logs :0) it won't be in your web console - but if connected to web connector in playground only - I used Chrome - but had issues that needed extra tweaking in FF fyi 3) plant is the transaction object but your function has plantData ? Maybe intended.. 4) I would just do (at the end) ```return getAssetRegistry('outbound.logistics.vehicle.Car').then(function(carRegistry) {
return carRegistry.add(order);
})
@ChrisMcQueenDevelopment will be going shortly but brief observs: 1) var getCurrentTime = new Date(); - non-deterministic code and transaction will get rejected, rather - you would pass in the Date() from your client side. 2) you should get the console.log - if you're connected to a runtime Fabric - then you'll need to look in the logs :0) it won't be in your web console - but if connected to web connector in playground only - I used Chrome - but had issues that needed extra tweaking in FF fyi 3) plant is the transaction object but your function has plantData ? Maybe intended.. 4) I would just do (at the end) ```return getAssetRegistry('outbound.logistics.vehicle.Car').then(function(carRegistry) {
return carRegistry.add(car);
})
@ChrisMcQueenDevelopment will be going shortly but brief observs: 1) var getCurrentTime = new Date(); - non-deterministic code and transaction will get rejected, rather - you would pass in the Date() from your client side. 2) you should get the console.log - if you're connected to a runtime Fabric - then you'll need to look in the logs :0) it won't be in your web console - but if connected to web connector in playground only you should see it in Dev Console - I tend to use Chrome - but had issues that needed extra tweaking in FF fyi 3) plant is the transaction object but your function has plantData ? Maybe intended.. 4) I would just do (at the end) ```return getAssetRegistry('outbound.logistics.vehicle.Car').then(function(carRegistry) {
return carRegistry.add(car);
})
@ChrisMcQueenDevelopment will be going shortly but brief observs: 1) var getCurrentTime = new Date(); - non-deterministic code and transaction will get rejected, rather - you would pass in the Date() from your client side. 2) you should get the console.log - if you're connected to a runtime Fabric - then you'll need to look in the logs :0) it won't be in your web console - but if connected to web connector in playground only you should see it in Dev Console - I tend to use Chrome - but had issues that needed extra tweaking in FF fyi 3) plant is the transaction object but your function has plantData as the txn object ? Maybe intended.. 4) I would just do (at the end) ```return getAssetRegistry('outbound.logistics.vehicle.Car').then(function(carRegistry) {
return carRegistry.add(car);
})
Has joined the channel.
What's the current stable version of composer, and what's the next version? I'm looking to build a PoC for my thesis, and I wanted to use composer in compatibility with fabric, but I'm not sure if it is possible at the current time
@mahoney1 Yes, I thought of the same thing, but I couldn't find a way to ssh into the nodes apart from the CA node, since azure is not showing me their ip address.
Hello, how much would someone charge me for sending me a .bna with all the files to build a blockchain in composer focused on factoring. I just need some guide to understand how composer works
Has joined the channel.
Greetings, is there any reason the Queries tutorial wouldn't be compatible with Couchdb? I am combining the composer tutorials with the fabric tutorial to deploy to multiple org fabric, and although the REST endpoints for the Commodity & Trader get/post work fine, once I add the sample queries.qry and redeploy, when I try to use the REST explorer to run the (extremely simple) selectCommodities query, (or any of the other queries) I get the following error: {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to query business network. Error: chaincode error (status: 500, message: Error: Couch DB Error:invalid_operator, Status Code:400, Reason:Invalid operator: $class)",
"stack": "Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: Couch DB Error:invalid_operator, Status Code:400, Reason:Invalid operator: $class)\n at channel.queryByChaincode.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:809:34)\n at
Since there are no user inputs to the selectCommodities query, it seems like it must be a lower level issue
(the query is simply: query selectCommodities {
description: "Select all commodities"
statement:
SELECT org.acme.biznet.Commodity
}
it may be related to what the response to a GET Commodity request is since it is choking on $class: {
"$class": "org.acme.biznet.Commodity",
"tradingSymbol": "KPX",
"description": "KnitPicks",
"mainExchange": "SP",
"quantity": 50,
"owner": "resource:org.acme.biznet.Trader#4567"
}
Has joined the channel.
Hello! Is it possible to create an asset from the implementation code of a transaction in the playground?
Has joined the channel.
Hello, I have 3 participants (identity issued) performing triggering same transaction via node-red (different node-red flow for each participant) and emitting events. If event emitted due to transaction submitted by 1st participant then this event is also seen/observed at other two participants (in node-red). Is there any way to differentiate these events based on ports or at participant level?
Hello, I have 3 participants (identity issued) trigger same transaction via node-red (different node-red flow for each participant) and emitting events. If event emitted due to transaction submitted by 1st participant then this event is also seen/observed at other two participants (in node-red). Is there any way to differentiate these events based on ports or at participant level?
Hello, I have 3 participants (identity issued) trigger same transaction via node-red (different node-red flow for each participant) and emitting events. If event is emitted due to transaction submitted by 1st participant then this event is also seen/observed at other two participants (in node-red). Is there any way to differentiate these events based on ports or at participant level?
Michael
[ ](https://chat.hyperledger.org/channel/composer?msg=rYSuDtvqfWJrKa9uc) @pedromlcosta The latest stable release of Hyperledger Composer is 0.16.6 and it runs either on Hyperledger Fabric v1.0 or in the cloud (http://composer-playground.mybluemix.net/login) -- On Friday Hyperledger Fabric updated to v1.1 and soon Composer will release v1.0 to support this new release. 0.17.x of Composer was used for 1.1-alpha of Fabric. 0.18.x of Composer was used for 1.1-rc1 of Fabric. You can find more information on these new releases and other tidbits (including Conga Comics) here: https://github.com/hyperledger/composer/releases
@davidkel hi, i am still dealing with 0.18.1 by use of private npm registry. and found that it did work with `--option registry=http://10.0.2.15:4873`. the `verdaccio` is used which listening on `0.0.0.0:4873`. when deploying business network, i cannot see any connection message from `verdaccio` side. ran `docker exec -it ccenv_containerid bash` and `npm config get registry`, it printed `https://registry.npmjs.org/`. the http://10.0.2.15.4873 registry did not take effect. the network and `verdaccio` were deployed on the same virtualbox. please give me some instructions. thanks!
@davidkel hi, i am still dealing with `0.18.1` by use of private npm registry. and found that it did work with `--option registry=http://10.0.2.15:4873`. the `verdaccio` is used listening on `0.0.0.0:4873`. when deploying business network, i cannot see any connection messages from `verdaccio` side. ran `docker exec -it ccenv_containerid bash` and `npm config get registry`, it printed `https://registry.npmjs.org/`. the `http://10.0.2.15.4873` registry did not take effect.
the network and `verdaccio` were deployed on the same virtualbox.
please give me some instructions. thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=9jeW4BzccMTj7q6Af) @cuevrob You can find copy the files from this tutorial for a basic business network: https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
[ ](https://chat.hyperledger.org/channel/composer?msg=9jeW4BzccMTj7q6Af) @cuevrob You can follow and copy the files from this tutorial for a basic business network: https://hyperledger.github.io/composer/tutorials/developer-tutorial.html f
Has joined the channel.
Has joined the channel.
can i install hyperledger on ubuntu 17.10
[ ](https://chat.hyperledger.org/channel/composer?msg=zNGdhLdCpZ8tevrAA) @JayPandya Will do. I think we have it working. I'll share some code @ you within a day or so. We ended up using a separate Express API to handle registration/login. Check what's written in MongoDB when you use passport-github to authenticate, that helped us
can we return data from `transaction`
@bh4rtp You need to create a file that defines the contents of the .npmrc file for example call it `/tmp/npmrcfile , then install the runtime as follows `composer runtime install -c
@bh4rtp You need to create a file that defines the contents of the .npmrc file for example call it `/tmp/npmrcfile , then install the runtime as follows `composer runtime install -c
@bh4rtp You need to create a file that defines the contents of the .npmrc file for example call it `/tmp/npmrcfile` , then install the runtime as follows `composer runtime install -c
@davidkel thanks. does the path of .npmrc option file, i.e. `/tmp/npmrcfile`, refer to local host (which deploy the network)?
[ ](https://chat.hyperledger.org/channel/composer?msg=P2WQktnBqK7kCZWyC) @Varun2887 you can use events to output data used in the transaction.
@bh4rtp it's local to you. The command will read that file and inject it into the chaincode that is installed
@davidkel ok. it is clear. i will have a try.
Has joined the channel.
Has joined the channel.
multiple node
Guys, need some help. Seems any filtering and subsetting by WHERE in my named queries absolutely don't work. Calling from composer-rest-server GUI and curl client. Always full asset set is returned.
composer 1.16.6
latest fabric couchdb
1.0.6 I think
Has joined the channel.
when I change default port 8080 to 80 for composer-playground , there is an error pop up in console :
Is anyone can help to take a look ?
composer-playground -p 80
PlaygroundAPI :createServer() > 80, false
PlaygroundAPI :createServer() Playground API started on port 80
PlaygroundAPI :createServer() <
Composer :main() >
events.js:183
throw er; // Unhandled 'error' event
^
Error: listen EACCES 0.0.0.0:80
at Object._errnoException (util.js:1022:11)
at _exceptionWithHostPort (util.js:1044:20)
at Server.setupListenHandle [as _listen2] (net.js:1350:19)
at listenInCluster (net.js:1408:12)
at Server.listen (net.js:1492:7)
at createServer (/home/redcore/.nvm/versions/node/v8.10.0/lib/node_modules/composer-playground/node_modules/composer-playground-api/index.js:60:12)
at Object.
Help !!!
[ ](https://chat.hyperledger.org/channel/composer?msg=MBDpjuKE72u676nts) @Antiarchitect - does this issue in GitHub describe what you are seeing? https://github.com/hyperledger/composer/issues/3460
My guess is that this won't be fixed in the v0.16.x stream as it works OK in v0.17.x onwards
Has joined the channel.
Hi Guys! I have updated my composer installato to v0.18.1.
It seems that the support for MemoryCardCore in composer-common has been removed. Which is the new way to deal with Identity Cards in tests? I haven't found any pointer to that in issues
@rhatcher Thank you!
Is there any point to move to 1.18.1 composer + 1.1 Fabric now?
Or should I wait. In their changelog they pointed that 1.17 wont' be backward compatible with 1.1 Fabric
@Antiarchitect Did you write any test with version 1.17 of composer?
No. Started with 1.16
Do you think I can up to 1.16 -> 1.17 painlessly?
Anyway I will try it
Sorry 0.16 -> 0.17
I suppose that is't not that easy. I have migrated from 16 to 18 directly and some classes I were using are not available anymore. I will try with 17 and I will get back to you
[ ](https://chat.hyperledger.org/channel/composer?msg=Yv6RS3z6xugpzuKtB) @benjamin.verhaegen can you please share an example? I want the transaction to return some data to the client that invoked it
[ ](https://chat.hyperledger.org/channel/composer?msg=6HRFFhmKz3PFsttCM) @Vincent - I'm seeing errors with ` -p ` for composer-playground. Why do you want to avoid port 8080? Ihave made it work with port 8081 but not port 80.
[ ](https://chat.hyperledger.org/channel/composer?msg=K3mmDBb2WBivCe68R) @AkshayJindal So, when a peer receives a new committed block, it emits all of the events in that block to all connected clients. *All* peers in a defined channel receive all the new blocks - so - all peers get all the events. In your scenario, you probably need use filtering in your Node-Red flow (based on what you emit or who triggers) ? https://stackoverflow.com/questions/31653132/how-to-filter-information-from-an-output-that-consists-of-x-y - it has a 'contains' (to use to filter). Does this help?
@rthatcher any help on retrieving data from blockchain:
1. via transaction
2. using query directly from client
3. with events as proposed by @benjamin.verhaegen
[ ](https://chat.hyperledger.org/channel/composer?msg=ZFJNyufnvEHckB8e7) @Varun2887 transaction PlaceOrder{
o String orderId
-->Item item
-->Importer importer
}
event PlaceOrderEvent{
o Importer importer
o Order order
o String productType
}
[ ](https://chat.hyperledger.org/channel/composer?msg=ZFJNyufnvEHckB8e7) @Varun2887 when transaction PlaceOrder is executed, the PlaceOrderEvent is triggered, you should be able to return this events to your client
`transaction PlaceOrder{
o String orderId
-->Item item
-->Importer importer
}
event PlaceOrderEvent{
o Importer importer
o Order order
o String productType
}`
@Vincent On unix systems all ports below 1024 are priviledged, you must be root to bind to listen on those ports
@rthatcher Thank you - my version of Google din't show me this issue
@rthatcher Thanks, I use another method to make this happen, change the server configure from Microsoft Azure , map 8080 to 80. it works. Thanks!
@davidkel , I am using ubuntu, I tried sudo , but it didn't work, anyway, I have another workaround
@rthatcher Are you aware of any place with documentation regarding how to write logic tests with v0.17 or v01.18?
@mahoney1 Really good spots, I'm not sure any of them are causing my issue though
1) Good point, thanks a lot - corrected
2) My manufactureCar.js is going to the logs, but the transaction processor is not :/
3) Good spot, too. Thanks!
4) You mean in the manufactureCar node file? I considered that but wanted to force everything through transactions really so I could control specific events later down the line.
So not sure what is causing the problem, anymore help would be great!
[ ](https://chat.hyperledger.org/channel/composer?msg=r3fMLAziiS8L8erkH) @benjamin.verhaegen and the client should be listening the event?
is it
@davidkel i did as you said. but it does work. the command is `composer network start --card PeerAdmin@decentralized-energy-network --archiveFile decentralized-energy-network.bna --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin@decentralized-energy-network.card --option npmrcFile=/home/allen/npmrc_file`. and my npmrcFile is `registry=http://172.17.0.1:4873/`. when i run `docker exec -it ccenv_containerid bash` and `curl http://172.17.0.1:4873/`, i can get the responses from `verdaccio`. but pulling npm modules responses from build chaincode image were not shown from `verdaccio`.
@davidkel i did as you said. but it does not work. the command is `composer network start --card PeerAdmin@decentralized-energy-network --archiveFile decentralized-energy-network.bna --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin@decentralized-energy-network.card --option npmrcFile=/home/allen/npmrc_file`. and my npmrcFile is `registry=http://172.17.0.1:4873/`. when i run `docker exec -it ccenv_containerid bash` and `curl http://172.17.0.1:4873/`, i can get the responses from `verdaccio`. but pulling npm modules responses from build chaincode image were not shown from `verdaccio`.
@davidkel i did as you said. but it does not work. the command is `composer network start --card PeerAdmin@decentralized-energy-network --archiveFile decentralized-energy-network.bna --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin@decentralized-energy-network.card --option npmrcFile=/home/allen/npmrc_file`. and my npmrcFile is `registry=http://172.17.0.1:4873/`. when i run `docker exec -it ccenv_containerid bash` and `curl http://172.17.0.1:4873/`, i can get correct response from `verdaccio`. but pulling npm modules responses from build chaincode image were not shown from `verdaccio`.
@davidkel i did as you said. but it does not work. the command is `composer network start --card PeerAdmin@decentralized-energy-network --archiveFile decentralized-energy-network.bna --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin@decentralized-energy-network.card --option npmrcFile=/home/allen/npmrc_file`. and my npmrcFile is `registry=http://172.17.0.1:4873/`. when i run `docker exec -it ccenv_containerid bash` and `curl http://172.17.0.1:4873/`, i can get correct response from `verdaccio`. but pulling npm modules responses for building chaincode image were not shown from `verdaccio`.
@davidkel i did as you said. but it does not work. the command is `composer network start --card PeerAdmin@decentralized-energy-network --archiveFile decentralized-energy-network.bna --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin@decentralized-energy-network.card --option npmrcFile=/home/allen/npmrc_file`. and my npmrcFile contains a single line, i.e. `registry=http://172.17.0.1:4873/`. when i run `docker exec -it ccenv_containerid bash` and `curl http://172.17.0.1:4873/`, i can get correct response from `verdaccio`. but pulling npm modules responses for building chaincode image were not shown from `verdaccio`.
Has joined the channel.
@ChrisMcQueenDevelopment 2) that's because you don't do any console.log / logging in your TP function, based on reading logic.js 4) no, I mean https://github.com/Chris-McQueen-Development/logistics-chain/blob/master/lib/logic.js#L14 - ie your TP function `function onCarManufactured(carData) ` - but now that you've removed the non-deterministic code (:-)) from it, have you retried - otherwise, see example here for something similar to what you're doing (or as I wrote in bullet 4 yesterday) -> https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/vehicle-lifecycle-network/lib/manufacturer.js#L29 - hope this helps
@davidkel i got it. the option file should be specified in `composer network install` command. i used in `composer network start`. :blush:
@rthatcher Faced with this error `Failed to import identity. Error: Client.createUser parameter 'opts mspid' is required.` on `composer card import`
Have adapted new connection.json example from here: https://github.com/hyperledger/composer/blob/v0.17.6/packages/composer-common/test/data/id-cards/valid/connection.json
Sorry - solved. Didn't replace all the example things
@mahoney1 Appreciate the quick replies :)
2) There is a console log on line 10 of the function that should run?
4) I have retried, no luck :( The console log inside of the ManufactureCar file gets ran fine: https://github.com/Chris-McQueen-Development/logistics-chain/blob/632aa0cdb161dc7313bd0053920ab8291aacd76d/utility-scripts/manufactureCar.js#L27
It runs fine when using composer server to launch the transaction. It just seems that the transaction processor does not run when I call it through the node API.
What is extra strange is I have created a viewCars file, and not only is it not in the vehicle registry, but it isn't in the transaction one either... probably something I'm missing!
https://github.com/Chris-McQueen-Development/logistics-chain/blob/632aa0cdb161dc7313bd0053920ab8291aacd76d/utility-scripts/viewCars.js#L15
Guys need some help!
Cannot upgrade my network:
```
composer network upgrade -n trustlogics-profile-logger -c PeerAdmin@trustlogics-profile-logger
✖ Upgrading runtime for business network trustlogics-profile-logger. This may take a minute...
Error: Error trying to ping. Error: Composer runtime (0.16.6) is not compatible with client (0.17.6)
Command failed
```
```
composer network upgrade -n acme-network -c PeerAdmin@trustlogics-profile-logger
✖ Upgrading runtime for business network acme-network. This may take a minute...
Error: Error trying to ping. Error: Composer runtime (0.16.6) is not compatible with client (0.17.6)
Command failed
```
I thought that composer network upgrade is for exact these things.
@Antiarchitect Not a full solution, but you could keep yourself on version 0.16.6.
npm uninstall -g composer-cli
npm install -g composer-cli@0.16.5
@Antiarchitect Not a full solution, but you could keep yourself on version 0.16.6.
`npm uninstall -g composer-cli
npm install -g composer-cli@0.16.5`
@Antiarchitect Not a full solution, but you could keep yourself on version 0.16.6.
`npm uninstall -g composer-cli`
`npm install -g composer-cli@0.16.5`
I cant, because I need 0.17
in 0.16 Queries don't work properly
And I have containers composer-cli and composer-rest-server of 0.17.6 version in my kubernetes, so I shouldn't even have these tools with old runtime versions
Could it be an old bna built with 0.16.6 complains?
What should I do with the old network?
Ah that's fair enough and valid points. I've had similar struggles too with minor jump. Hopefully someone else can help. Sorry I couldn't more!
[ ](https://chat.hyperledger.org/channel/composer?msg=Dxg9dGhYNhh2Hx7GB) @mahoney1 Thanks for the reply.. here are the details
pwd_output.png
docker-version.png
can you try the command - this way
@pranoti can you try the command - this way
```docker run
-d
-e COMPOSER_CARD=${COMPOSER_CARD}
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES}
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION}
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER}
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}"
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}"
-v ~/.composer:/home/composer/.composer
--name rest
--network composer_default
-p 3000:3000
myorg/composer-rest-server``` (just copy it to a txt file) then paste it onto the command line
(sorry - after each line - add a 'space' and a 'backslash' \ - except for last :-) (I know you were doing similar - if you had exactly this let me know - you may have). The other thing - can you actually check that there are no other rest servers running and lastly can you check for your image in `docker images |grep rest`
(sorry - after each line - add a 'space' and a 'backslash' \ - except for last line :-) (I know you were doing similar - if you had exactly this let me know - you may have from memory). The other thing - can you actually check that there are no other rest server processes running, and lastly can you check for your image in `docker images |grep rest` - it should return `myorg/composer-rest-server` in the output ?
thanks
@Antiarchitect 0.17.x and higher is completely different to 0.16.x 0.16.x will only work with fabric 1.0, 0.17.x and higher will only work with fabric 1.1. If you want to just update your business network, then currently the command to use is `composer network update` (ie update, not upgrade)
Already know this.
I've deleted all the data
and now have
`Error: Couch DB Error:invalid_operator, Status Code:400, Reason:Invalid operator: $class`
[ ](https://chat.hyperledger.org/channel/composer?msg=8AJvKWn4HhFHLBFgo) @Antiarchitect the problem is that your runtime installed on the peers is at 16.6 - you will need to run a composer runtime install for your current composer level of 0.17.6 - ie `composer runtime install ` - onto each of the peers using the PeerAdmin card
[ ](https://chat.hyperledger.org/channel/composer?msg=8AJvKWn4HhFHLBFgo) @Antiarchitect the problem is that your runtime installed on the peers is at 16.6 - but as davidkel points out
[ ](https://chat.hyperledger.org/channel/composer?msg=8AJvKWn4HhFHLBFgo) @Antiarchitect the problem is that your runtime installed on the peers is at 16.6 - but as davidkel points out you have different fabric levels to cater for
composer runtime install fails by the same reason
I couldn't find fabric-couchdb of the proper version, and 0.17 is incompatible with 1.0.x peers
So I updated my peers to 1.1.0
Buth fabric-couchdb still 1.0.6
Oh, just saw 1.1.0-preview
@Antiarchitect fabric docker images are 1.1.0, but 3rd party dependencies are using different scheme. so the couchdb fabric image is 0.4.6
Oh, thank you!
Almost took the wrong image
[ ](https://chat.hyperledger.org/channel/composer?msg=bG6Tj4xsLd3DHDxCb) @mahoney1 It worked .. It worked.. :working: I just fire the command as it is [just in a single line. just gave space not backslash].. Thank you so much!! I was stuck here from 2 days.. :pray: :smile:
docker-rest.png
@Pranoti hooray !
@davidkel do you think 0.4.6 couchdb would be compatible with fabric-1.1.0?
That's the version meant for fabric 1.1.0
Tried to use 0.4.6 still get error `Error: Couch DB Error:invalid_operator, Status Code:400, Reason:Invalid operator: $class`
May be the query syntax has changed from 0.16 -> 0.17 of composer ?
Have no clues
Screen Shot 2018-03-20 at 12.45.13.png
The transaction has worked in the past and I have chnaged permissions for `MedicalPracticioner` to `ALL` what am I missing?
```
rule MedicalPractionerCreateDataAccessor {
description: "Allow medical practitioner to create Data Accessors"
participant: "org.medichain.mvp.MedicalPractitioner"
operation: CREATE, UPDATE, READ
resource: "org.medichain.mvp.DataAccessor"
action: ALLOW
}
rule MedicalPractionerAuthorizeDataPractitioner {
description: "Allow medical practitioner to authorize Data Accessors"
participant: "org.medichain.mvp.MedicalPractitioner"
operation: ALL
resource: "org.medichain.mvp.GrantAccess"
action: ALLOW
}
```
Someone faced the same problem 12 hours ago: https://stackoverflow.com/questions/49374673/error-running-query-from-hyperledger-composer-queries-tutorial-against-couchdb-f
@mahoney1 Are there any plans to integrate caliper with composer for performance testing?
are you trying the transaction as a `MedicalPractitioner` in Playground (above)? in which case I'd expect you might need a rule ```rule MedicalPractionerCreateDataAccessor {
description: "Allow medical practitioner to create Data Accessors"
participant: "org.medichain.mvp.MedicalPractitioner"
operation: CREATE, UPDATE, READ
resource: "org.medichain.mvp.MedicalPractitioner"
action: ALLOW
}``` as it seems your TP function is trying to update the MedicalPractitioner resource
are you trying the transaction as a `MedicalPractitioner` in Playground (above)? in which case I'd expect you might need a rule ```rule MedicalPractitionerOp {
description: "Allow medical practitioner to create Data Accessors"
participant: "org.medichain.mvp.MedicalPractitioner"
operation: CREATE, UPDATE, READ
resource: "org.medichain.mvp.MedicalPractitioner"
action: ALLOW
}``` as it seems your TP function is trying to update the MedicalPractitioner resource
are you trying the transaction as a `MedicalPractitioner` in Playground (above)? in which case I'd expect you might need a rule ```rule MedicalPractitionerOp {
description: "Allow medical practitioner to update medical practiioner resource"
participant: "org.medichain.mvp.MedicalPractitioner"
operation: CREATE, UPDATE, READ
resource: "org.medichain.mvp.MedicalPractitioner"
action: ALLOW
}``` as it seems your TP function is trying to update the MedicalPractitioner resource (you could add a `condition` so the each MedicalPractitioner can only update its own 'profile' (highly likely) but first things first etc
are you trying the transaction as a `MedicalPractitioner` in Playground (above)? in which case I'd expect you might need a rule ```rule MedicalPractitionerOp {
description: "Allow medical practitioner to update medical practiitoner resource"
participant: "org.medichain.mvp.MedicalPractitioner"
operation: CREATE, UPDATE, READ
resource: "org.medichain.mvp.MedicalPractitioner"
action: ALLOW
}``` as it seems your TP function is trying to update the MedicalPractitioner resource (you could add a `condition` so the each MedicalPractitioner can only update its own 'profile' (highly likely) but first things first etc
[ ](https://chat.hyperledger.org/channel/composer?msg=zTvYAWsJjtgwqBKSc) @tylerw 3 Thanks man waiting to see it
though that's same approach I'm taking right now ti handle card creation and importing at the time of signup/signin from express app
and I guess you are using BusinessNetworkConnection class utilities to connect application right? because api won't work here I guess for diff. role of users or participants? :thinking:
@AkshayJindal - its already been done - @nkl199 is the guy to ask on that front.
[ ](https://chat.hyperledger.org/channel/composer?msg=cJt349uiFx5Euos95) @nkl199 Could you please provide any link or suggestion on this?
Hello, I am working through the free ibm cloud cluster here: https://ibm-blockchain.github.io/ I am able to get the cluster setup and start HLF. I am able to connect to the composer playground on port 31080 and define and deploy an example business network. I then use composer to create a rest api for the deployed sample BNA. I can see in the cluster that a new rest api container is started. When I try to connect to the rest server on port 31090 the connection is refused. Has anyone else had this issue? Am I missing a required credential/authentication setup? Any insight is appreciated...
Has joined the channel.
Hello everyone, does anyone has an idea how to encrypt the data in the world state and over the blocks? Is there any way to do this or it will be an application level kind of encryption?
Has joined the channel.
@rthatcher Don't like to ask personally, but you've been giving a really good advices: https://github.com/hyperledger/composer/issues/3636
[ ](https://chat.hyperledger.org/channel/composer?msg=KrbXHbgD2b7hzNqzX) @LloydPalum which B N card did you start the REST server with? Are you accessing the REST server using the correct public ip from Step 1 http://EXTERNAL_ENDPOINT_FOR_REST_SERVER:31090/explorer/
@mahoney1 - How we can access Rest Server with diff. users? I mean i know we can start Rest server with Card option
but let's say there is 4-5 users and we need to access APIs as those users then how it is possible in composer-rest-server?
Or this is the case where we need to use BusinessNetworkConnection class utils?
[ ](https://chat.hyperledger.org/channel/composer?msg=aYDrZ8ouHZQBxdqss) @MuhammadSalah see here -> https://stackoverflow.com/questions/47648174/ledger-encryption-in-hyperledger-fabric-1-0 and http://hyperledger-fabric.readthedocs.io/en/release-1.1/releases.html - In Hyperledger Fabric v1.1, as part of the app/chaincode you can decide if you want the data encrypted. v1.1 added chaincode APIs to make this easier for solutions.
[ ](https://chat.hyperledger.org/channel/composer?msg=3Jy4Qp6haH7mCxZd4) Anyone know this?
[ ](https://chat.hyperledger.org/channel/composer?msg=Wsf7w6HfiWzKFCpgt) @mahoney1 I started the basic-sample-network card...I am using the same public IP that I used to connect to the composer playground and deploy the BNA. I attempt to access the rest explorer like this http://
[ ](https://chat.hyperledger.org/channel/composer?msg=GPL6yB4gyW6jccBn5) @JayPandya - the Rest server has a MultiUser mode and Authentication options - this doc and its 'children' have all the REST server information
[ ](https://chat.hyperledger.org/channel/composer?msg=GPL6yB4gyW6jccBn5) @JayPandya - the Rest server has a MultiUser mode and Authentication options - this doc and its 'children' have all the REST server information: https://hyperledger.github.io/composer/next/integrating/integrating-index
@mahoney1 - got my issue sorted, thanks for your help man!
@LloydPalum what business network card was used in the command `./create/create_composer-rest-server.sh --business-network-card INSERT_BIZCARD_NAME` ?
Hi everyone, I'm getting this message when I try to start my network : " Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND" . Anyone has an idea about how to solve it ?
Has joined the channel.
Has joined the channel.
Hello. I recently started learing hyperledger fabric. Is it correct scheme? ledger <- connection profile <- composer rest api <- query?
and second question: is composer using in production systems or it's only for make prototype (draft ) system?
[ ](https://chat.hyperledger.org/channel/composer?msg=adx4FjwxC63BMBzkY) @Yakechi hi there, see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--runtime-install-errors-composer (4th item down) and check the answers for similar issues.
@Antiarchitect regarding your problem with query. If you are using fabric 1.1 then there isn't a version of composer available yet for that platform. 18.1 supports fabric 1.1.0-rc1. Do you get the same problem when using these versions ?
@davidkel I couldn't combine fabric 1.0.6 and 0.17.6 composer - dont remeber the error
@davidkel This problem has disappeared with combination of 0.18.1 composer and fabric-1.1.0
And even ORDER BY is properly works now. But still LIMIT doesn't work.
* BTW index for CouchDB for proper ordering is needed.
@Antiarchitect LIMIT doesn't work as fabric 1.1 has an issue where it doesn't accept limit values
Do you have a github issue link?
@davidkel So you think combination of fabric-1.0.6 and composer 0.17.6 are compatible?
@Antiarchitect only composer 0.16.x will work with fabric 1.0.x
and 0.17.x is for?
I have troubles with 0.16.x so - not my option.
[ ](https://chat.hyperledger.org/channel/composer?msg=jHBLLcwDyee86rWsE) @AkshayJindal - I will be committing the changes to Caliper soon, but if you want to run some of the sample tests you can do so from my [local git repository](https://github.com/nklincoln/caliper/tree/composer-fabric-rc1)
[ ](https://chat.hyperledger.org/channel/composer?msg=3Ru8K7cSgxbwFufBY) @mahoney1 ./create/create_composer-rest-server.sh --business-network-card basic-sample-network
@Antiarchitect 0.17.x targetted fabric 1.1-preview
@davidkel It turns out there are no proper combination of composer + fabric that support proper LIMIT and WHERE directives. According to this: https://github.com/hyperledger/fabric/blob/release-1.1/core/ledger/kvledger/txmgmt/statedb/statecouchdb/statecouchdb.go#L469-L477
There is no LIMIT and SKIP pagination?
There is no LIMIT and SKIP pagination? in fabric 1.1
Hi everyone, it is possible to accomplish a GET request to an external HTTP REST API from the lib/script.js code?
or import third party libraries?
@Antiarchitect as documented in the version of the docs for composer 0.18. https://hyperledger.github.io/composer/next/reference/query-language.html
@davidkel Thank you for this doc version.
can someone help with this question? when I use composer-cli to run compose card import where will the compose-cli import the business card to?
I used the composer-cli container created the network business card file which I can specify where the file should go, but when I try to import the card, I do not know where the card goes, can anyone help?
the command execution was successful.
```ubuntu@fabric001:~$ docker run -it -v /opt/gopath/vb1st/fabric:/opt/gopath/vb1st/fabric hyperledger/composer-cli:next card import -f /opt/gopath/vb1st/fabric/keyfiles/orga/orga.card --name orga_business_card
Successfully imported business network card
Card file: /opt/gopath/vb1st/fabric/keyfiles/orga/orga.card
Card name: orga_business_card
Command succeeded```
[ ](https://chat.hyperledger.org/channel/composer?msg=cFRro3RnDi4JKavMz) @rthatcher - Yeah i got that and have imported card using wallet api in rest server
can you tell me in which case we can use BusinessNetworkConnection class utilities? Trying to figure out use cases here
Has joined the channel.
@tongli It should import it to the card store
@Antiarchitect since that is the container and does not stay alive after the command execution, I wonder how do you actually see it is working and useful.
Hello, I'm creating an application where 4 organizations will be using the same network. Some of these organizations should not be able to create a specific type of participant. Is it possible to prevent an entire organization from executing a set of transaction functions? Is it possible to create some ACL rule that considers organization?
@tongli sec, it seems like you should mount volume to /home/composer/.composer
@tongli or just /home/composer - I don't remember exactly - and have modified Docker images
[ ](https://chat.hyperledger.org/channel/composer?msg=Nc2BzsgbvuHbQB5Nc) @Juanan_Tejero - you can't require modules in a Transaction Processor function. But you can make calls to another Rest Server.
If you are using Composer v0.16.* see this doc: https://hyperledger.github.io/composer/integrating/call-out.html
But if you are using v0.17 or v0.18 there are imporvements: https://hyperledger.github.io/composer/next/integrating/call-out.html
A few more details are available in this issue: https://github.com/hyperledger/composer/issues/3092
ah, I understand, I can mount to that location, so composer-playground can also do the same. so that composer-cli and composer-playground can work together. Let me try that.
@tongli last time I saw composer-playground it seemed fake to me - so there are no real components inside.
I could be mistaken
@Antiarchitect I actually start it up and imported a business network Card, and I can see that the card was imported to the .composer directory.
I mean I started composer-playground:next container.
Oh, sounds ok then
I used the UI and imported a business card. it seemed fine.
but I can not click on Connect now since it is grayed out.
I wonder if you know why the Connect now button grayed out.
Screen Shot 2018-03-20 at 12.39.11 PM.png
please see that screen shot.
Try to start a new one
@Antiarchitect import a new one?
No, you choose the right bit square.
big
And there will be
Yes. I tried that as well. selected an example, give certificates and private key.
then it run for awhile, eventually failed, said timed out.
Screen Shot 2018-03-20 at 12.42.52 PM.png
provided a certificate and private key,
Nono
Stop
Third square
haha. ok.
Drop here to upload
And there you place your bna
hmmm. I thought I can simply select one like bond-network, or carauction-network,
will that not work?
That networks are based on examples bna's
As I understood you, you want to deploy your own?
the fabric network is real, I can deploy any bna onto my network right?
this is to replace the web browser network so that transactions actually happen on a real fabric network.
Don't think it will work this way.
I created connnection.json file and created business network card.
I'd like you use this pretty web UI for my BNA updates
But currently doing it manually
I use cello to setup my fabric network, then I created connection profile based on my network, created channel.
I am trying to use the composer-cli to create business network card which worked.
the network step seems to me is to import the business network card into composer-playground, then pick an application.
so that I can actually do transactions using playground against a real fabric network.
You can just use composer-cli to perform network deploy/update
so the playground is really just a client app.
@Antiarchitect I guess what I am missing is after I run composer card create, I am supposed to run composer card import, I do not know where it import to
Actually we need to wait for people here to clarify. I think playground is not an UI client, but the playground build just for the demo purposes
composer card create and import is for Admin card
Screen Shot 2018-03-20 at 12.39.11 PM.png
I think it actually worked. otherwise, I would not be able to see that.
```
composer card create
composer card import
composer runtime install
composer network start
```
```
composer card create
composer card import
composer runtime install
composer network start
(composer network update)
```
All this I do from composer-cli, not the Web UI
http://www.blockchainexpert.uk/blog/installing-hyperledger-composer-playground - see the last phrase
@rthatcher hi, could I please get an opinion regarding this error when attempting to deploy on Fabric 1.1
```2018-03-20T16:48:42.033402578Z 2018-03-20 16:48:42.032 UTC [couchdb] CreateDatabaseIfNotExist -> INFO 03f[0m Created state database my-channel_lscc
2018-03-20T16:48:42.035568269Z 2018-03-20 16:48:42.035 UTC [lscc] executeInstall -> INFO 040[0m Installed Chaincode [my-network] Version [0.18.1] to peer
2018-03-20T16:48:42.089631716Z [31m2018-03-20 16:48:42.087 UTC [eventhub_producer] Chat -> ERRO 041[0m error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
2018-03-20T16:49:44.948443311Z [31m2018-03-20 16:49:44.948 UTC [chaincode-platform] func1 -> ERRO 042[0m Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
2018-03-20T16:49:44.948475934Z npm ERR! errno EAI_AGAIN
2018-03-20T16:49:44.948482359Z npm ERR! request to https://registry.npmjs.org/fabric-shim failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
2018-03-20T16:49:44.948487575Z
2018-03-20T16:49:44.948492227Z npm ERR! A complete log of this run can be found in:
2018-03-20T16:49:44.948497033Z npm ERR! /root/.npm/_logs/2018-03-20T16_49_44_672Z-debug.log```
@uber.twin - it looks like you are running Composer v0.18.1 - what version of Fabric do you have? You need specifically Fabric v1.1-RC1
I tried to issue an identity to a user I got the .card file. But the bind command requires file which I did not get. What should I do?
* requires certificate file
[ ](https://chat.hyperledger.org/channel/composer?msg=6CbFgixCczQofoEkb) @omkarprabhu98 - if you have Issued an Identity from Composer then there will be a 'bind' between the participant and the ID. If you are on the command line you can try `composer identity list `
So I would suggest you import the card and try it.
The certificate will be downloaded the first time the card is used.
The Knowledge Wiki has some more notes about Cards and Identities: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#bizcards
Has joined the channel.
anyone have any luck with the pii network example in the playground?
Hey, guys. Here at our company we already use composer to write the chaincodes
but we're stuck on a specific point about the business network itsel
but we're stuck on a specific point about the business network itself
@rthatcher Thanks a lot it worked
I can add a new org to the fabric-network using fabric tutorials
but how do I add a new org to an instantiated
but how do I add a new org to an instantiated business network
but how do I add a new org to an instantiated business network?
@rthatcher yes, that it what I am running, v1.1-RC1
```2018-03-20T16:47:21.548187607Z 2018-03-20 16:47:21.547 UTC [nodeCmd] serve -> INFO 001[0m Starting peer:
2018-03-20T16:47:21.548282532Z Version: 1.1.0-rc1
2018-03-20T16:47:21.548292172Z Go version: go1.9.2
2018-03-20T16:47:21.548299721Z OS/Arch: linux/amd64
2018-03-20T16:47:21.548307086Z Experimental features: false
2018-03-20T16:47:21.548314403Z Chaincode:
2018-03-20T16:47:21.548321712Z Base Image Version: 0.4.6
2018-03-20T16:47:21.548329092Z Base Docker Namespace: hyperledger
2018-03-20T16:47:21.548336552Z Base Docker Label: org.hyperledger.fabric
2018-03-20T16:47:21.548343879Z Docker Namespace: hyperledger```
@uber.twin looks like a problem with the chaincode build container trying to contact npm, eg DNS resolution failure (according to google).
@davidkel
@davidkel is it suppose to try to connect to the internet?
@davidkel is it supposed to try to connect to the internet?
@uber.twin yes, fabric has to download the dependencies of the node.js chaincode defined in the package.json, so will attempt to connect to an npm registry
so it means that my docker container might not be configured properly for my network?
[ @mahoney1 ](https://chat.hyperledger.org/channel/composer?msg=DDoFmpNJgwuk7XByJ) I have checked the logs of the REST pod and I see the following error when trying to connect: Error: ENOENT: no such file or directory, stat '/home/composer/.composer/cards/basic-sample-network Question: how does the card for basic-sample-network get "installed" on the REST service container in this path?
Has joined the channel.
[ @mahoney1 ](https://chat.hyperledger.org/channel/composer?msg=fgbHS9BicLfpTasmX) I managed to figure it out after logging into the REST pod... the card name is not basic-sample-network but rather admin@basic-sample-network... I appreciate your replies. I am all set for now...
Hi All,
Can anyone help me to figure out the reason why i am getting the following error while running $ ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.16.6
Successfully created business network card file to
Output file: @hlfv1.car" target="_blank" rel="noopener noreferrer">/tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier
Command failed
Hyperledger Composer PeerAdmin card has been imported
There are no Business Network Cards available.
Command succeeded
hi composer developers, I was able to successfully run the following commands.
composer card create, composer card inport, composer runtime install, and composer network start.
I assume that it is the composer network start actually start the chaincode container making things happen, I actually saw that the chaincode container got started and running.
but I am seeing the following errors from the container logs
```ubuntu@fabric001:~$ docker logs dev-peer1st-orga-carauction-network-0.18.1
> composer-runtime-hlfv1@0.18.1 start /usr/local/src
> node start.js "--peer.address" "peer1st-orga:7052"
2018-03-20T20:18:43.858Z [d7f4423b] [INFO ] @JS : ModelManager :addSystemModels() [object Object]
2018-03-20T20:18:44.025Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Asset:org.hyperledger.composer.system.AssetRegistry' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.033Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Asset:org.hyperledger.composer.system.ParticipantRegistry' in collection with ID '$sysregistries' does not exist```
my peer name is peer1st-orga.
what is pretty strange to me is that this container does not have a IP address. I do not know why that is.
other chaincode containers do not have IP address as well, I assume that is expected behaviors.
here is the rest of the errors from that container logs
```ubuntu@fabric001:~$ docker logs dev-peer1st-orga-carauction-network-0.18.1
> composer-runtime-hlfv1@0.18.1 start /usr/local/src
> node start.js "--peer.address" "peer1st-orga:7052"
2018-03-20T20:18:43.858Z [d7f4423b] [INFO ] @JS : ModelManager :addSystemModels() [object Object]
2018-03-20T20:18:44.025Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Asset:org.hyperledger.composer.system.AssetRegistry' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.033Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Asset:org.hyperledger.composer.system.ParticipantRegistry' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.037Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Asset:org.hyperledger.composer.system.TransactionRegistry' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.041Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Participant:org.hyperledger.composer.system.NetworkAdmin' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.045Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Asset:org.hyperledger.composer.system.HistorianRecord' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.049Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:org.hyperledger.composer.system.AddAsset' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.056Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:org.hyperledger.composer.system.UpdateAsset' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.060Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:org.hyperledger.composer.system.RemoveAsset' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.065Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:org.hyperledger.composer.system.AddParticipant' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.070Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:org.hyperledger.composer.system.UpdateParticipant' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.075Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:org.hyperledger.composer.system.RemoveParticipant' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.080Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Asset:org.hyperledger.composer.system.Identity' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.085Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:org.hyperledger.composer.system.IssueIdentity' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.090Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:org.hyperledger.composer.system.BindIdentity' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.095Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:org.hyperledger.composer.system.ActivateCurrentIdentity' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.100Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:org.hyperledger.composer.system.RevokeIdentity' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.105Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:org.hyperledger.composer.system.StartBusinessNetwork' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.110Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:org.hyperledger.composer.system.ResetBusinessNetwork' in collection with ID '$sysregistries' does not exist
2018-03-20T20:18:44.114Z [d7f4423b] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Transaction:org.hyperledger.composer.system.UpdateBusinessNetwork' in collection with ID '$sysregistries' does not exist
```
Has joined the channel.
Is it possible to update multiple assets in single Transaction?
@davidkel I'm the one with the same query issue as @Antiarchitect -- it sounds like you are saying the problem might be the Fabric version? How do I check that? I couldn't find a command online and honestly I've installed so many different things recently for the various tutorials that I don't remember which Fabric I installed.
`composer -v` for the version of hyperledger composer. `docker ps` may give you the exact image name being used for fabric. Or you can try looking in the peer log
I know composer version but it looked like you said that the fabric version needed to be 1.1.0, and I don't see a version # in my docker ps.
just a bunch of guids and what appear to be port addresses
what version of composer ?
0.16.6
err that fabric needed to be 1.0.0 rather
yes, you need fabric 1.0.x
but how do I tell which I have, that's the issue
that I am asking about
`docker logs
I was trying to do the composer "deploying to multi org network" tutorial, which had me pull down a separate git for fabric samples than the normal hyperledger tutorials did, because "only those would work" but I don't know what version that is or if it contains the runtimes themselves
ok, thanks, it does look like I have 1.1.0 installed. Is there a clean way of removing it to downgrade the version?
you can totally cleanup by doing
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images -q)
```
So looks like fabric have changed the links to where our release tutorial points to for byfn. And now the latest byfn from fabric will be 1.1, so I guess that is the problem. You might be better off moving to the latest version of composer and doing the byfn documented here https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-multi-org
This is the next release of composer (currently 0.18.1)
And that one targets 1.1.0?
is there any problem with having multiple fabrics installed but just targeting specific ones, or is it going to cause conflicts?
It does target 1.1.0 (rc1 currently though as we haven't released a version that we have tested with 1.1.0 release yet). byfn is a bit messy as it requires the fabric version it will use to be tagged as latest, so it would depend on the version tagged as latest rather than the versions downloaded
you can have multiple versions downloaded of fabric.
so where would we tag the one we want to use as latest?
At this point I have two fabric folders, one 1.0 and one 1.1. I haven't changed composer version yet.
I killed all the running docker processes though so it should be clean, I just want to make sure when I restart the right versions all mesh together.
you would use the `docker tag` command to tag images
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=mNQgJcF23Eqj2WnXT) @JayPandya yes - you can update multiple assets in multiple asset registries, all as one transaction unit of work. See https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/perishable-network/lib/logic.js#L77 for example
fyi the Community call tomorrow will be at 10am UTC (10am UK, 2:30pm IST, 5pm CST) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-21st-March-2018
[ ](https://chat.hyperledger.org/channel/composer?msg=nBiFjntiSgHGgcyd2) @mahoney1 - Yeah thanks man that's what i did and it worked :smile:
@LloydPalum cool.
@tongli at a glance (signing off now) - would check that 1) you have Fabric docker 1.1 rc1 images in your setup and 2) check that you have to allow the registries to be seen (if not already) see https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/trade-network/permissions.acl (last 3 rules) for example.
@pb - likely you're not using Node v8.9.x - most likely the problem ? What OS? Have you followed all the steps here -> https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html (for version info) . See related description here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--node-related-issues-install-issues
It would be really great if someone can just point out best use cases for authentication application
like multiuser mode is available for composer REST server but feel like we can use BusinessNetworkConnection(composer-client) utils for achieve the same...
It would be really great if someone can just point out best use cases for authentication application
like multiuser mode is available for composer REST server but feel like we can use BusinessNetworkConnection(composer-client) utils to achieve the same...
Has joined the channel.
hello,I add a js file in lib dir when I deploy bna file to the network module.exports in the file I added dosen't works but throw an error “identifier 'module' undefined”
hello,I add a js file in lib dir, when I deploy bna file to the network module.exports in the file I added dosen't works but throw an error “identifier 'module' undefined”
hello,I add a js file in lib dir, when I deploy bna file to the network,“ module.exports” in the js file I added dosen't works but throw an error “identifier 'module' undefined”
Has joined the channel.
hi
i am trying to install the IDE
Has joined the channel.
I have installed all the pre-requisite tools
next, to install CLI tools, its written that we need to run the npm command
however, when I run this on terminal - npm install -g composer-cli , i get an error that -bash: npm: command not found
what should I do?
I created 5 clients that would individually try to connect to the sdk using the same cardname. Each client would then submit transactions to the ledger. As soon as I run a 6th client however, everything stalls. The 5 that were working earlier also stall. On querying the ledger I don't see any new transactions being added. Any clue what might be happening?
Since it happens everytime I suspected there was a limit on the parallel connections that can be made to the SDK but I am not sure
Has joined the channel.
how to i use multi user mode rest api?
Hi Guys,
I have encountered an issue while setting up the installing environment of Hyperledger. I followed the instructions found on the
Hyperledger website:
https://hyperledger.github.io/composer/installing/development-tools.html
I have also installed all the pre-requisite as stated in the website. However, we encountered a problem in the last step; step 4 (installing Hyperledger Fabric) , part 2. We have successfully download and unzip the zip file. But we are unable to run the command ".~downloadFabric.sh".
The error stated is "Failed to register layer: Error processing tar file(exit status 1): Invalid argument."
We are running on Windows 10, Ubuntu Version 16.04.3 LTS Xenial, Docker Version 17.12.1 CE.
Would anyone be able to advise on this? Sorry for troubling. Thank you for your help.
Hi,
Has joined the channel.
Hi,
I have to setup two network and in between one peer is common for both.So in composer inter channel communication is possible?PFA.
Thanks in advance
Networkdetails
[ ](https://chat.hyperledger.org/channel/composer?msg=ntzrQRo6wK8CMHu2X) @mahoney1
I have followed steps as in -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--node-related-issues-install-issues
But still same error .Os is Ubuntu 16
[ ](https://chat.hyperledger.org/channel/composer?msg=smNppD3Mho5q4sSNQ) @mahoney1
I have followed steps as in -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--node-related-issues-install-issues
But still same error .Os is Ubuntu 16
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=r3fMLAziiS8L8erkH) @benjamin.verhaegen @rthatcher these events can consumed by anyone, i want to return data to the one who has invoked the trasnaction(which should ideally be query but since query advanced features such as text search are not supported we are invoking a transaction)
@mahoney1
Getting this error too -> Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'
in ubuntu server, I want to make composer-playground and composer-rest-server always running in background. It is that workable if I specify " &" in the end of the "composer-playground" and "composer-rest-server" ? it seems sometimes it is down by itself , Could someone give me any clue ?
[ ](https://chat.hyperledger.org/channel/composer?msg=zKAo2in9vY8Tt4pyM) @Vincent https://hyperledger.github.io/composer/next/integrating/deploying-the-rest-server
@Pranoti Thank you very much.
[ ](https://chat.hyperledger.org/channel/composer?msg=NDQz7Tq5CTHkoXnaf) @yogeshquick https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-multi-org
Question : If I were to use hyperledger fabric/composer for datasharing
Would it be possible to prune the blockchain to avoid the data being overloaded ?
I know it doesn't make sense but just trying to figure it out
I know I'm asking to trim down the ledger which supposed to be non-tamperable
Hi while trying to run createPeeradmin.sh I faced the following issue
Clipboard - March 21, 2018 12:55 PM
@nelsonthamhc When you say windows 10, ubuntu 16.04 did you install Ubuntu 16.04 from the Windows Store ? If you did, then that environment is not supported because it isn't a true ubuntu environment. I suggest you use a hypervisor such as HyperV, Virtualbox, or VMWare player to install a ubuntu image and use that instead.
[ ](https://chat.hyperledger.org/channel/composer?msg=826KPmtRrmz5kFWZj)
@yogeshquick The `next` release of composer can invoke chaincode/business networks on the same or different channel for an intro into the feature that provides this see
https://hyperledger.github.io/composer/next/tutorials/invoke-composer-network
Hi. Us there an easy way to roll back to a previous version of Composer. I'm running through some demos that are based on HLFv1 and Composer v.16
@SudheerKaspa You are trying to use composer 0.18 with fabric 1.0 which won't work. You need to set the FABRIC_VERSION env var to hlfv11. eg
`export FABRIC_VERSION=hlfv11` so that you are using fabric 1.1
During install of both I can only install the latest
That is my issue @davidkel :)
I tried and entire reinstall yesterday, But still installs latest versions
[ ](https://chat.hyperledger.org/channel/composer?msg=YYcXLqW6rhYoLGuRo) @davidkel thankyou I will use fabric 1.1
I know there is a hlv11 abd hlv1 folder in Fabric-scripts
But hlv1 doesn't work for me when i run the ./strategic etc from it
./startfabric
@notOccupanther if you want the next release then you have to explicitly request it. So uninstall your version of the composer components, then install with the `@next` tag, eg `npm install -g composer-cli@next`
https://hyperledger.github.io/composer/next/installing/development-tools
@davidkel I think my demo is done for the previous versions of HL and Composer
So I'm trying to reset up my env with the non-latest versions...if hl1 abd composer 0.16 are required
I think
@notOccupanther then don't use the `@next` tag. Then it will install the 0.16.x versions of composer that work with fabric 1.0
:ok_hand:
Many thanks @davidkel Will try that
Has joined the channel.
Is there any guideline about how to deploy a Hyperledger Composer blockchain business network to the Hyperledger Fabric single member network on Azure?
Hello! Are there any plan to use an other Hyperledger DLT besides Fabric? Sawtooth maybe?
Using composer rest server api , i am trying to do 20 concurrent transactions , i was getting 500 error response for almost 19 and 1 successful transaction. Anything to improve success transcation rate
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=XRntyBZoBXkN8KEoq) @Mark818 - unfortunately Azure is not a platform we have tested - this MS forum may help https://social.msdn.microsoft.com/Forums/en-US/home?forum=azureblockchain
[ ](https://chat.hyperledger.org/channel/composer?msg=mc58wJFZo7wYRytcb) @PierreHenry - there are no plans to use anything other than Fabric at the moment.
Is there a way to find the `participant` who submit a transaction from inside the `transaction function`?
[ ](https://chat.hyperledger.org/channel/composer?msg=nogi7hCn8pjcKsbiH) @thelostone-mc - I think there have been some discussions about Archiving for Fabric which may cover your requirement. I would suggest asking in the #fabric channel.
Yup yup!! got it ^_^
FYI - the Community call today will be at 10am UTC (10am UK, 2:30pm IST, 5pm CST) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-21st-March-2018
[ ](https://chat.hyperledger.org/channel/composer?msg=ejzet7kq3fD7pDmRc) @varuna82 - the getCurrentParticipant method described in the runtime api should help: https://hyperledger.github.io/composer//api/runtime-api#getcurrentparticipant
@rthatcher Thanks.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=h4mAQjGsS2ij7qvmB) @pb - what version of Node have you installed? you need Node 8 (v8.9) Have you installed Composer using sudo or root? This section of the Knowledge Wiki will help with installation issues: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues
[ ](https://chat.hyperledger.org/channel/composer?msg=rcJYRFhoJPxszdbSB) @rthatcher
Thanks ..The problem was with node ,composer and npm versions .Resolved.:slight_smile:
[ ](https://chat.hyperledger.org/channel/composer?msg=NDQz7Tq5CTHkoXnaf) @yogeshquick - there was a feature introduced in Composer v0.17.4 enabling Transaction Processor functions to connect to other Business Networks. There is a tutorial on the use of the new feature in the 'next' branch of the documentation https://hyperledger.github.io/composer/next/tutorials/invoke-composer-network
[ ](https://chat.hyperledger.org/channel/composer?msg=dScxf6P25ZbH7LEMH) @bamboo - please see the documentation here: https://hyperledger.github.io/composer/integrating/integrating-index
Has joined the channel.
I want to validate few fields when asset is created by a participant. Is there a way to override the `Create` functionality using transactions (or another method)?
[ ](https://chat.hyperledger.org/channel/composer?msg=qk7Wx6LXpngv9NeDi) @varuna82 can you provided more context? You do have the option to create `regex` patterns on individual fields (in your model) eg. for creating an asset class instance etc. etc.
@mahoney1 I want to make sure that participant who create the asset is the owner of the asset as well.
[ ](https://chat.hyperledger.org/channel/composer?msg=7oZT7qJW9EcngovN4) I've solved this by creating a new Transaction to create the asset explicitly and restricted CREATE permission for the participant.
@Varun2887 have you considered `request` from your client ? Eg, calling a query with CONTAINS or string based compare and getting the body back as JSON - this may help https://blog.risingstack.com/node-hero-node-js-request-module-tutorial/
@varuna82 yes using `.getIdentifier()` condition for ownership on your ACL would work - to restrict or passing in relationship to the owner (from an asset) would work (in the sense you can easily check its set (or not).
@varuna82 yes using `.getIdentifier()` condition for ownership on your ACL would work - to restrict or passing in relationship (to your Txn in your model) to the owner (of an asset class) would work (in the sense you can easily check its set (or not).
[ ](https://chat.hyperledger.org/channel/composer?msg=eAqhpRFX4rBBSSEqq) @mahoney1 definitely yes but the queries that can be done are limited as per the documentation https://hyperledger.github.io/composer/business-network/query.html
also I will not recommend pulling the complete set of data from blockchain(millions of record) and filtering on them on my backend application
@Varun2887 is it because you have a large aggregate WHERE clause that doesn't work ? (ie criteria to reduce what's returned). You don't need to pull complete set of data.
@Varun2887 is it because you have a large aggregate WHERE clause that doesn't work ? (ie criteria to reduce what's returned). You don't need to pull complete set of data. Just asking.
Hi Is there any way to increase the transaction count, as of now i can do transactions sequentially meaning i cant do multiple transactions per second
@mahoney1 Thanks for the help. Condition in ACL solved the issue, with security intact.
Has joined the channel.
Has joined the channel.
Hi all, is there a way to set login/password access to the composer-playground web?
Trying to issue identity with Javascript API like - bnUtil.connection.issueIdentity('org.dataexchange.participant.User#user-01', 'user1')
and it is giving userSecret and usreId Successfully but where I can find card for this? :thinking:
though its working fine with command with composer identity issue...
Hello everyone, I have a question regarding querying the assets with an `optional` param.
Do you know is there a way to get the assets without that param? Something like `WHERE param == NULL`, `!param` or so. Thanks in advance!
[ ](https://chat.hyperledger.org/channel/composer?msg=iBMCCysZvkfkXAQt7) @JayPandya generally the sequence is ```Issue identity, import card, connect to the business network using the card businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user); .... var userCard = new IdCard({...}); userCard.setCredentials(credentials); ... adminConnection.importCard(userCardName, userCard); .... .then(() => { // Connect to the business network ... businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore }); businessNetworkConnection.connect(userCardName); } ...will download cert/key ``` - see example here -> https://medium.com/@aniketengg/hyperledger-composer-issue-identity-import-card-7e07af378447 (section 'import cards for default directory')
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=44WMsLwsLnDFAwm5H) @rtorres not really, as its a playground but you can control who has a card to connect (and what access they have via ACLs) -> see also https://stackoverflow.com/questions/48759063/enabling-authentication-for-access-to-hyperledger-composer-playground-and-blockc
[ ](https://chat.hyperledger.org/channel/composer?msg=TZx8tqac7DBrrHRi6) @ranjithkumarmv depends on many factors, how you model, how you represent units of work, that will be committed as a 'whole' in your designated Transaction class, dependencies, who endorses / policy etc etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=9gNKNTZX9GGF9Ymh6) @mahoney1 Thanks trying this
Hi all, I am getting Unhandled error for request POST /api/org.secure.db.insertRow: Error: Error trying invoke business network. Error: Peer has rejected transaction 'aa1bda8b2bf39f245e3fd37391b04be40a5bebdf0c012ef34e2bc04778bf248e' with code MVCC_READ_CONFLICT
for concurrent queries
Any help?
Hi
I'm having new issue. After successfully launching REST server instance for google oAuth strategy I'm still not able to connect to http://localhost:3000/explorer . I tried changing the ip address in connection file to 0.0.0.0 and 127.0.0.1 which residing in .composer. but its not working. Is there any other way? Or something else is missing?
here is the screenshot of the log..
Has joined the channel.
rest_logs.png
[ ](https://chat.hyperledger.org/channel/composer?msg=4gx6NuYLmMMfCRJP9) @nicolapaoli - sounds like : you're not concerned if there's a value set on the optional asset field ? In which case, don't add the condition match Then you get both sets of assets :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=4gx6NuYLmMMfCRJP9) @nicolapaoli - sounds like : you're not concerned if there's a value set on the optional asset field ? In which case, don't add the condition match. Then you get both sets of assets :-)
hiii ,i am a beginer hyperledger composer,i want to ask that do every participant defined in cto file should have a peers and CA associated in hyperledger fabric.
Does anyone know how to write a high throughput model for composer similar to that of fabric?
ping
Thanks @mahoney1 for your reply! Probably my question wasn't so clear, but actually I am! Basically I would like to get all the assets without that field, not all the asset of that type!
That param is actually a reference, that might be optional like this:
```
Asset {
---> AnotherAsset param optional
```
I'll probably add one more field as workaround, but
https://chat.hyperledger.org/channel/composer?msg=QHwGZNHBBm7YCJCMD
Thanks @mahoney1 for your reply! Probably my question wasn't so clear, but actually I am! Basically I would like to get all the assets without that field, not all the asset of that type!
That param is actually a reference, that might be optional like this:
```
Asset {
---> AnotherAsset param optional
}
```
I'll probably add one more field as workaround, but I was curious to see if there was a way to filter them anyway!
https://chat.hyperledger.org/channel/composer?msg=QHwGZNHBBm7YCJCMD
Thanks @mahoney1 for your reply! Probably my question wasn't so clear, but actually I am! Basically I would like to get all the assets without that field, not all the assets of that type!
That param is actually a reference, that might be optional like this:
```
Asset {
---> AnotherAsset param optional
}
```
I'll probably add one more field as workaround, but I was curious to see if there was a way to filter them anyway!
https://chat.hyperledger.org/channel/composer?msg=QHwGZNHBBm7YCJCMD
Thanks @mahoney1 for your reply! Probably my question wasn't so clear, but actually I am concerned!:) Basically I would like to get all the assets without that field, not all the assets of that type!
That param is actually a reference, that might be optional like this:
```
Asset {
---> AnotherAsset param optional
}
```
I'll probably add one more field as workaround, but I was curious to see if there was a way to filter them anyway!
https://chat.hyperledger.org/channel/composer?msg=QHwGZNHBBm7YCJCMD
Thanks @mahoney1 for your reply! Probably my question wasn't so clear, but actually I am concerned!:) Basically I would like to get all the assets without that field, not all the assets of that type!
That param is actually a reference, that might be optional like this:
```
Asset {
---> AnotherAsset param optional
}
```
For example, giving the following assets instantiated, I would need to retrieve only Asset1, which has not a reference:
```
Asset1{
}
Asset2{
param: "resource:[...]"
}
```
I'll probably add one more field as workaround, but I was curious to see if there was a way to filter them anyway!
https://chat.hyperledger.org/channel/composer?msg=QHwGZNHBBm7YCJCMD
can anyone guide me how to write logic for high throughput in hyperledger composer
can anyone guide me how to write logic for high throughput in hyperledger composer?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=FNM87WxAGQzk995DE) @smsharma I was also looking for the same, as of now i cant do more than a transaction per second as of now.
[ ](https://chat.hyperledger.org/channel/composer?msg=kunDozTW6ceqeQjTL) @Pranoti - from the log output it looks like your Rest Server has not started, that is why you can't connect to it. The errors you are seeing with 'x-type' indicate that the version of Composer Rest Server in the container is v0.17 or 0.18 and that you are passing a v0.16 card into the container.
ls
Hey guys, I am using the composer-rest-server with authentication and multi user mode. I am using this API with an angular app, Now my problem is that usually the oauth redirects to the rest api explorer which saves the cookie to localstorage. I am used confused as to how to integrate this Oauth api flow into my application, which is being served separately? Any help would be appreciated. Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=n8m7SuebCnMvRwHKo) @rthatcher hey thanks for the reply.. so what should I do to get it work? my docker version is 0.17
[ ](https://chat.hyperledger.org/channel/composer?msg=n8m7SuebCnMvRwHKo) @rthatcher hey thanks for the reply.. so what should I do to get it work? my docker version is 0.17..
And the rest server is started.. after firing command `docker ps |grep rest` I got this output..
e85d173e96fb myorg/composer-rest-server "pm2-docker compos..." 33 minutes ago Up 33 minutes 0.0.0.0:3000->3000/tcp rest
[ ](https://chat.hyperledger.org/channel/composer?msg=n8m7SuebCnMvRwHKo) @rthatcher hey thanks for the reply.. so what should I do to get it work? my docker version is 0.17..
And the rest server is started.. after firing command `docker ps |grep rest` I got this output..
`e85d173e96fb myorg/composer-rest-server "pm2-docker compos..." 33 minutes ago Up 33 minutes 0.0.0.0:3000->3000/tcp rest`
[ ](https://chat.hyperledger.org/channel/composer?msg=xiTCobZhExzhj7ude) @himanshuchawla009 - you can create multiple Participant Types in the same CTO model file, and then create 'many' instances of each type in the Participant registry. These Participants are just data items. You can optionally Issue an Identity to a participant, and that is when the CA is used. The participant and the Identity are then 'bound' together. This doc explains Participants and Identities: https://hyperledger.github.io/composer/next//managing/participantsandidentities
[ ](https://chat.hyperledger.org/channel/composer?msg=xiTCobZhExzhj7ude) @himanshuchawla009 - you can create multiple Participant Types in the same CTO model file, and then create 'many' instances of each type in the Participant registry. These Participants are just data items. You can optionally Issue an Identity to a participant, and that is when the CA is used. The participant and the Identity are then 'bound' together. This doc explains Participants and Identities: https://hyperledger.github.io/composer/managing/participantsandidentities
Has joined the channel.
hi , i'm making a project where i need to be able to see the changes of a asset. I saw that historian does not yet have this functionality (https://github.com/hyperledger/composer/issues/2458). i was wondering if there is an alternative way to make this happen in composer.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ee46nCMCkHRr2EkbN) @Pranoti - your Docker container is running, but the composer-rest-server within the container has failed to start - there is the 'x-type' error and you can see at the bottom of the log 'connection fails' ...'it will be retried' ...
When the rest server starts successfully you see the message 'Browse your REST API at http://localhost:3000/explorer'
Are you using Composer v0.16? ` composer -v `
Having checked, the tutorial you are following is in the 'next' stream and won't work with composer v0.16
Hi I had question...is it possible to access an asset registry created by one business network in another?
[ ](https://chat.hyperledger.org/channel/composer?msg=u7WN9MHzthGcWnkPj) @koineramitranjan - please see this chat thread from earlier today :-) https://chat.hyperledger.org/channel/composer?msg=vwgYsKdCBi6XjC4Mr
thanks @rthatcher will check it out :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=iDPtvuHiF9vjqBr3Z) @kevinsyx - there is a section on Querier in the Knowledge Wiki which may help you (the bottom of the table) https://chat.hyperledger.org/channel/composer?msg=vwgYsKdCBi6XjC4Mr
[ ](https://chat.hyperledger.org/channel/composer?msg=iDPtvuHiF9vjqBr3Z) @kevinsyx - there is a section on Querier in the Knowledge Wiki which may help you (the bottom of the table) https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=fkXPP8huz9LZKfxEg) @rthatcher thx, i'll try it.
[ ](https://chat.hyperledger.org/channel/composer?msg=X6ud4GDBwqahqkWKr) @mahoney1 So, the good way is to let the playground open (if you use it) and secure the REST Api, isn't it?
[ ](https://chat.hyperledger.org/channel/composer?msg=w9Dzm3RG5oo3HsCda) @rtorres you can apply authentication mechanisms to control access to both - they're both just web resources at the end of the day. Even then, a authenticated user (by whatever auth strategy) will need a business network card, with his/her identity credentials to access the business network.
Hello! when using the REST server of composer, I have this example of asset:``
Hello!
When using the composer rest server, I have this asset model represented as JSON:
```
{
"$class": "org.acme.mynetwork.Definition",
"id": "string",
"name": "string",
"content": "string",
"ip": {},
"signatures": [
{}
]
}
```
The problem is that the server won't accept the signatures fields.
The signatures field is supposed to be empty but gets rejected.
Also, it's not possible to add a dummy value since it should be a pointer to a
resource ('resource:org.…#
Hello!
When using the composer rest server, I have this asset model represented as JSON:
```
{
"$class": "org.acme.mynetwork.Definition",
"id": "string",
"name": "string",
"content": "string",
"ip": {},
"signatures": [
{}
]
}
```
The problem is that the server won't accept the signatures field.
The signatures field is supposed to be empty but gets rejected.
Also, it's not possible to add a dummy value since it should be a pointer to a
resource ('resource:org.…#
Hello!
When using the composer rest server, I have this asset model represented as JSON:
```
{
"$class": "org.acme.mynetwork.Definition",
"id": "string",
"name": "string",
"content": "string",
"ip": {},
"signatures": [
{}
]
}
```
The problem is that the server won't accept the signatures field.
The signatures field is supposed to be empty but gets rejected.
Also, it's not possible to add a dummy value since it should be a pointer to a
resource ('resource:org.…#
Hello!
When using the composer rest server, I have this asset model represented as JSON:
```
{
"$class": "org.acme.mynetwork.Definition",
"id": "string",
"name": "string",
"content": "string",
"ip": {},
"signatures": [
{}
]
}
```
The problem is that the server won't accept the signatures field.
The signatures field is supposed to be empty but gets rejected.
Also, it's not possible to add a dummy value since it should be a pointer to a
resource ('resource:org.…#
@mahoney1 hi, I'm seeing the following composer cli error when running "network start". looking at the dev peer logs seems like the network was deployed and my orderer peer seems alright too
```Error: Error trying to instantiate composer runtime. Error: "orderer" request parameter is missing and there are no orderers defined on this channel in the network configuration```
@mahoney1 hi, I'm seeing the following composer cli error when running "network start". looking at the dev peer logs seems like the network was deployed and my orderer peer seems alright too. my composer version is v0.18.2, Fabric v1.1.0
```Error: Error trying to instantiate composer runtime. Error: "orderer" request parameter is missing and there are no orderers defined on this channel in the network configuration```
I'm trying to drop in a bna file into Composer 0.18.2 to hlfv11 and I get the following error `Error: Error trying login and get user Context. TypeError: this.wallet.contains is not a function` -- I've dropped this in before without issues previously. My images and containers all represent 1.1 of Fabric
I can drop it into Composer Web without an issue
[ ](https://chat.hyperledger.org/channel/composer?msg=ie7XLDaiiq2CwYGy7) @mahoney1 Oh ok. I'll check how to do it. Thanks!
@mahoney1 actually I do see a dev peer log error ```2018-03-21T15:06:41.465268159Z 2018-03-21T15:06:41.462Z [fb9996c5] [DEBUG ] @JS : RegistryManager :get() > Asset:org.hyperledger.composer.system.ParticipantRegistry
2018-03-21T15:06:41.465272811Z 2018-03-21T15:06:41.462Z [fb9996c5] [DEBUG ] @JS : Resolver :getRegistryForRelationsh < [object Object]
2018-03-21T15:06:41.465277027Z 2018-03-21T15:06:41.462Z [fb9996c5] [DEBUG ] @JS : Resolver :resolveRelationship() Getting resource in registry org.hyperledger.composer.system.NetworkAdmin
2018-03-21T15:06:41.465281377Z 2018-03-21T15:06:41.462Z [fb9996c5] [DEBUG ] @JS : NodeDataCollection :get() > org.hyperledger.composer.system.NetworkAdmin
2018-03-21T15:06:41.465410704Z 2018-03-21T15:06:41.465Z [fb9996c5] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'org.hyperledger.composer.system.NetworkAdmin' in collection with ID 'Asset:org.hyperledger.composer.system.ParticipantRegistry' does not exist
2018-03-21T15:06:41.465420218Z 2018-03-21T15:06:41.465Z [fb9996c5] [DEBUG ] @JS : NodeDataCollection :@PERF NodeDataCollection 0 ., 2541477```
https://stackoverflow.com/questions/49410471/not-able-to-create-asset-factory-newresource
Can anybody help me figure out what is wrong with this simple code:
https://stackoverflow.com/questions/49410471/not-able-to-create-asset-factory-newresource
Thanks
@PierreHenry normally, to allow any field to be optional - add the keyword `optional` eg ....```asset B identified by b {
o String b
o String field
o String[] myArray optional
}
``` I can add either of ```{
"$class": "org.acme.trading.B",
"b": "3445",
"field": "Ullamco ut id sit.",
"myArray": []
}``` or ``` {
"$class": "org.acme.trading.B",
"b": "3445",
"field": "Ullamco ut id sit."
} ```
@PierreHenry normally, to allow any field to be optional - add the keyword `optional` eg ....```asset B identified by b {
o String b
o String field
o String[] myArray optional
}
``` I can add either of ```{
"$class": "org.acme.trading.B",
"b": "3445",
"field": "Ullamco ut id sit.",
"myArray": []
}``` or ``` {
"$class": "org.acme.trading.B",
"b": "3445",
"field": "Ullamco ut id sit."
} ``` see https://hyperledger.github.io/composer/reference/cto_language.html
[ ](https://chat.hyperledger.org/channel/composer?msg=Q9Ky3JDmAiuw3CXZ5) @mahoney1 Thx. Yes, putting "optional" everywhere make things work. Yet, for some reason, it works in the playground but not with the rest server.
[ ](https://chat.hyperledger.org/channel/composer?msg=Q9Ky3JDmAiuw3CXZ5) @mahoney1 Thx. Yes, putting "optional" everywhere make things work. Yet, for some reason, it works in the playground but not with the rest server. Thx for your reply!
[ ](https://chat.hyperledger.org/channel/composer?msg=Q9Ky3JDmAiuw3CXZ5) @mahoney1 Thx. Yes, putting "optional" everywhere makes things work. Yet, for some reason, it works in the playground but not with the rest server. Thx for your reply!
[ ](https://chat.hyperledger.org/channel/composer?msg=Xo8dbQTqenqyBxSCX) @grice_32 - I have seen that error with Cards exported/Issued in the REST server - but I thought it was fixed. Are you re-using an old card or exporting from the REST server ?
@rthatcher It's a BNA file.. I thought 0.18.1 fixed the multi-user card issue. I was using 0.17.6 without an issue, but now trying 0.18.2 with 1.1
[ ](https://chat.hyperledger.org/channel/composer?msg=pP8WS5vAXkX6iJ3i3) @grice_32 - right, but you must be using a card to 'drop' the BNA file. Are you using Playground or the CLI to deploy the BNA ?
@rthatcher Playground UI
[ ](https://chat.hyperledger.org/channel/composer?msg=or9RXQjtnjX3Tx7dh) @uber.twin Error: "orderer" request parameter is missing looks suspiciously like your connection profile (using the card you're using to do the runtime install) has not got an orderers section defined (or its malformed) - are you following something like this -> https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-multi-org (specifically the example shown of a 'runtime install ' profile ?)
[ ](https://chat.hyperledger.org/channel/composer?msg=or9RXQjtnjX3Tx7dh) @uber.twin 'Error: "orderer" request parameter is missing' looks suspiciously like your connection profile (using the card you're using to do the runtime install) has not got an orderers section defined (or its malformed) - are you following something like this -> https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-multi-org (specifically the example shown of a 'runtime install ' profile ?)
[ ](https://chat.hyperledger.org/channel/composer?msg=tmPrddscLjehwN7B2) @grice_32 (I thought the problem was fixed too :-) but thought you might have an old card)
Assuming you have created a new Fabric Fabric v1.1-RC1 (not 1.1) and installed composer v0.18.1 - have you re-run the createPeerAdmin.sh script ?
@mahoney1 oh you are right, my connection profile 'orderers' section doesn't look quite alright, thank you
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=mWew65Mfop5BRfL4T) @Paradox this has been answered..
@rthatcher One second.. I'm pulling the rc1 images now. CouchDB is always the slowest. I guess what's not so interesting is that I was able to deploy the BNA in the IBM Blockchain Start Plan without an issue. The "not so interesting" part there is that it's using 0.16.2 of Composer so no surprise that it worked there :)
@rthatcher I adjusted the ./downloadFabric script to pull 1.1-rc1 images. Then the ./startFabric script pulls the 1.1.0 images and containers. Is there was way to just get the rc1 containers? I have adjusted all the npm installs to get 0.18.1.
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=WxnFKyEv2ACmELdFf) @grice_32 - there has been a release today - v0.18.2 of composer which supports Fabric 1.1 GA
So the easiest thing might be to uninstall all composer components and then ` npm install -g composer-cli@next ` etc
[ ](https://chat.hyperledger.org/channel/composer?msg=WxnFKyEv2ACmELdFf) @grice_32 - there has been a release today - v0.18.2 of composer which supports Fabric 1.1 GA
So the easiest thing might be to uninstall all composer components and then ` npm install -g composer-cli@next ` etc
(Sorry about the timing!! v0.18.2 had not been released when I replied earlier)
Guys,
I followed this URL
https://hyperledger.github.io/composer/next/installing/development-tools.html
and when creating peerAdminCard ..
I found that he is creating card name .. PeerAdmin@hlfv1 and not @hlfv11
Anyone facing this now?
note: I'm still using 0.18.1
[ ](https://chat.hyperledger.org/channel/composer?msg=Q3paN2EScSFczBaQJ) @mostafa.elsayyad - its OK it is just a label. (It was used to differentiate between hlfv0.6 and hlfv1
ok cool. thanks
@mahoney1 thanks for commenting on my question. I am trying to create an endorsement policy json file. Wonder if you and someone else can point me to more docs on the following:``` "policy": {
"2-of": [
{"signed-by": 0},
{"signed-by": 1}
]
}
```
I am not really sure what the element signed-by and its value mean. can someone give me a bit help?
if I have 3 orgs, will this make sense? the value really is just the index of the list of orgs?
```endorsement-policy': {
identities: [
{ role: { name: 'member', mspId: ORGS['org1'].mspid }},
{ role: { name: 'member', mspId: ORGS['org2'].mspid }},
{ role: { name: 'admin', mspId: ORGS['org1'].mspid }},
{ role: { name: 'admin', mspId: ORGS['org2'].mspid }}
],
policy: {
'2-of': [
{ 'signed-by': 1},
{ 'signed-by': 3}
]
}
}```
in the example above, will the signed-by: 1 really means org2 member and org2 admin both need to endorse?
Has joined the channel.
Has joined the channel.
Hey guys, Hopefully this is a good place to ask this question. I'm looking at the best ways to build a prototype with hyperledger to check it out, and want to know the differences between fabric itself and console.
Is one held above the other? Is composer advanced enough for production instances or still being built and too early to trust?
I'm guessing that people here will say how much better composer is, and how beneficial, but wanted to check if there's anything else people want to talk about.
[ ](https://chat.hyperledger.org/channel/composer?msg=BbSn32Nw8bZaRmp27) @rthatcher The same error persists with 1.1 GA of Fabric and 0.18.2 of Composer
`Error: Error trying login and get user Context. TypeError: this.wallet.contains is not a function`
@grice_32 if the `~/.composer/cards` directory will be a directory with the name of your card used to perform the bna deploy. In that directory is connection.json. could you post the contents ? Also how did you create this identity ?
@grice_32 in the `~/.composer/cards` directory will be a directory with the name of your card used to perform the bna deploy. In that directory is connection.json. could you post the contents ? Also how did you create this identity ?
@davidkel `{"name":"hlfv1","x-type":"hlfv1","x-commitTimeout":300,"version":"1.0.0","client":{"organization":"Org1","connection":{"timeout":{"peer":{"endorser":"300","eventHub":"300","eventReg":"300"},"orderer":"300"}}},"channels":{"composerchannel":{"orderers":["orderer.example.com"],"peers":{"peer0.org1.example.com":{}}}},"organizations":{"Org1":{"mspid":"Org1MSP","peers":["peer0.org1.example.com"],"certificateAuthorities":["ca.org1.example.com"]}},"orderers":{"orderer.example.com":{"url":"grpc://localhost:7050"}},"peers":{"peer0.org1.example.com":{"url":"grpc://localhost:7051","eventUrl":"grpc://localhost:7053"}},"certificateAuthorities":{"ca.org1.example.com":{"url":"http://localhost:7054","caName":"ca.org1.example.com"}}}` -- I'm using the Playground UI to deploy my BNA file
@tongli - Endorsement policy is really a Fabric concept (which is passed on by Composer). In the first example you posted - the policy states that both Org1 and Org2 must endorse transactions in the business network, before they can be committed to the blockchain. So if Org1 or Org2 do not endorse transactions, or disagree on the result of a transaction, then the transaction will be rejected by the business network. your second example picks element 2 and 4 as I understand it. For more information on writing Hyperledger Fabric endorsement policies, see the Hyperledger Fabric Node.js SDK documentation https://fabric-sdk-node.github.io/global.html#ChaincodeInstantiateUpgradeRequest which provides examples of endorsement policies. For more info on endorsement http://hyperledger-fabric.readthedocs.io/en/release-1.1/endorsement-policies.html?highlight=endorsement
@mahoney1 yeah, I did some googling and figured the value is really just the position (array index) of the orgs.
@davidkel That is my PeerAdmin@hlfv1 (hlfv11) credentials
and I hope that my assumption/understanding is correct.
@grice_32 does it only happen when you use your bna, or does it also fail trying to deploy on of the samples from playground ?
@grice_32 does it only happen when you use your bna, or does it also fail trying to deploy one of the samples from playground ?
[ ](https://chat.hyperledger.org/channel/composer?msg=QcAzThYen6XENTxZt) @jackschultz hi there - check this Stack Overflow out -> https://stackoverflow.com/questions/49343059/what-is-the-hyperledger-model-how-it-works for the info (see the answer in particular that I posted including comparisons). Best thing to do is install Hyperledger **Composer** first -> https://hyperledger.github.io/composer/installing/development-tools.html (you download a runtime Fabric blockchain in those steps) then try out the tutorials -> https://hyperledger.github.io/composer/tutorials/tutorials cheers
[ ](https://chat.hyperledger.org/channel/composer?msg=BauXddBrLB9NYYoiA) @davidkel I tried the animal tracking and I get the same error
@grice_32 very odd, I have just done a clean install of playground and can't reproduce it. I wonder if it is somehow picking up an old version on the composer-connector-hlfv1 module.
@grice_32 very odd, I have just done a clean install of playground and can't reproduce it. I wonder if it is somehow picking up an old version of the composer-connector-hlfv1 module.
@mahoney1 Thanks for those links. I was actually asking a little more of that. I have everything set up, running locally, and have the rest api running locally as well. I'm thinking in terms of if I were to build an application for a business, whether composer advanced enough to handle the size and requirements for a business rather than only test apps.
@davidkel I'm using a Linux1 Community Cloud Instance (SLES SP3) so I can delete this one and try again. I'll let you know if the error persists
@jackschultz - suggest to read the following -> https://stackoverflow.com/questions/47791061/building-a-real-time-application-using-composer and https://stackoverflow.com/questions/48893410/hyperledger-composer-web-application-user-authentication for user registration bit. Lastly see item 2 of here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--miscellaneous-items---fabric-uncategorised for more insight - lastly these two blogs will help you get started -> https://medium.com/hyperlegendary/how-to-build-nodejs-application-for-your-hyperledger-composer-networks-2b08ff25665f and https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
[ ](https://chat.hyperledger.org/channel/composer?msg=GH2Hj2B94JNW3e2WW) @tongli yep element = array element
@mahoney1 Excellent. I've been searching a lot of course, but don't know which posts or questions / answers to trust.
@davidkel I was able to deploy the BNA on a new instance. I don't know what was going on in the last instance, but at least it's working now with 1.1 of Fabric and 0.18.2 with Composer. Thank you for your help! You too @rthatcher
I'm trying to use the `hyperledger/composer-playground:0.18.2` Docker image instead of the `composer-playground` CLI command
I've generated a card called `PeerAdmin@hlfv1.card` and mounted it on the Docker container under `/home/composer/.composer/cards/`
When I open the playground in my web browser, I get this error:
`Error: Corrupted zip: missing 4 bytes.`
This corresponding error shows up in the container log:
```
playground_1 | PlaygroundAPI :createServer() Client with ID 'OjF-RGVDF0RmySiiAAAD' on host '::ffff:172.18.0.1' connected
playground_1 | ConnectorServer :constructor() > {"storeOptions":{"type":"composer-wallet-filesystem","StoreModule":{"version":"0.18.2","description":"0.18.2","name":"composer-wallet-filesystem"},"namePrefix":"cards"},"store":{"storePath":"/home/composer/.composer/cards","fs":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":64,"O_EXCL":128,"O_NOCTTY":256,"O_TRUNC":512,"O_APPEND":1024,"O_DIRECTORY":65536,"O_NOATIME":262144,"O_NOFOLLOW":131072,"O_SYNC":1052672,"O_DSYNC":4096,"O_DIRECT":16384,"O_NONBLOCK":2048,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1,"UV_FS_COPYFILE_EXCL":1,"COPYFILE_EXCL":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1},"rimrafOptions":{"constants":{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":64,"O_EXCL":128,"O_NOCTTY":256,"O_TRUNC":512,"O_APPEND":1024,"O_DIRECTORY":65536,"O_NOATIME":262144,"O_NOFOLLOW":131072,"O_SYNC":1052672,"O_DSYNC":4096,"O_DIRECT":16384,"O_NONBLOCK":2048,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1,"UV_FS_COPYFILE_EXCL":1,"COPYFILE_EXCL":1},"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1,"disableGlob":true}}}, {}, [object Object]
playground_1 | ConnectorServer :constructor() <
playground_1 | ConnectorServer :businessNetworkCardStore >
playground_1 | ProxyCardStore :getAll() >
playground_1 | IdCard :fromArchive() > 2443
playground_1 | ConnectorServer :Error: Corrupted zip: mi undefined
```
How do I fix this? Is there a better way of preloading stuff into the playground?
Has joined the channel.
Ok, I’ve fixed the issue by unzipping the contents of `PeerAdmin@hlfv1.card` into a `PeerAdmin@hlfv1` subdirectory
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=3wJFpafJC7NbTnRNj) @mahoney1 didnt get you... i have some piece of data
```asset Demographics identified by SSN
{
o String SSN
o String FirstName
o String LastName
o String DateofBirth
o String Address
o String City
o String State
o String Country
o Double ZipCode
o Double PhoneNumber
o String Email
}```
where in i want to search data based on `FirstName` `LastName` etc.. for say data has `FirstName` has `Varun` so I should be able to search this record even if I search `RUN`(caseinsensitive and contains text search)
Has joined the channel.
bTw is composer production ready?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=cmADJFuRLinaspxR7) @rthatcher Ohhk. Yes my composer version is 0.16 I'll upgrade and check. Thank you !! :)
Hello everyone! I'm new in this field trying to setup a simple prototype of two traders selling to each other ice creams. I have created a business network with two traders and one asset online and exported it as a bna. Also I have installed hyperledger fabric development environment on two laptops: one with mac os and second with ubuntu. How do I share this business network between two installed development environments so each trader could make a "change ice cream ownership" transaction? Currently when i import the business network bna file to each laptop it behaves separately without any connection. Do I miss something? Many thanks in advance.
Has joined the channel.
I am writing a TouristActivity booking demo using composer. I have created an activity with per adult and per child pricing. Now, I want to calculate price depending on number of adults and children. How can I extend the Activity model to have a calculation function accessible from outside (ex:- adding a virtual field to the model)?
Hi Guys, im trying to add to new peer but unfortunately composer doesnt have a cryptogen to generate the certificates /MSP's for the new peer.I have included the peer details in configtx yaml file but have no clue how to run it. Could i just copy the Cryptogen Script from fabric into composer and run? any help would be much appreciated. Thanks
Hi How to install crptogen tool in ubuntu
Has joined the channel.
@ibmiotspark just download platform specific binaries and add path to them to $PATH env variable [fabric guide](http://hyperledger-fabric.readthedocs.io/en/release-1.1/samples.html#binaries)
Hi i am trying to connect business network with node composer-client . My code ``` const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
this.bizNetworkConnection = new BusinessNetworkConnection();
this.cardName = config.get('networkadmin.card');
this.businessNetworkIdentifier = config.get('businessNetworkIdentifier');
this.bizNetworkConnection.connect(this.cardName)
.then((result) => {
this.businessNetworkDefinition = result;
});
``` I am Getting This Error ```
this.cardName = config.get('networkadmin.card');
^
ReferenceError: config is not defined
at Object.
Hi i am trying to connect business network with node composer-client . My code ``` const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
this.bizNetworkConnection = new BusinessNetworkConnection();
this.cardName = config.get('networkadmin.card');
this.businessNetworkIdentifier = config.get('businessNetworkIdentifier');
this.bizNetworkConnection.connect(this.cardName)
.then((result) => {
this.businessNetworkDefinition = result;
});
``` I am Getting This Error```
``` ```
this.cardName = config.get('networkadmin.card');
^
ReferenceError: config is not defined
at Object.
@ranjithkumarmv where did u defined config variable?
@ranjithkumarmv where did you define `config` variable?
@ranjithkumarmv where did you define `config` variable? Perhaps you should import (`require`) it to use in your code
@mahoney1 https://stackoverflow.com/questions/48816023/what-is-the-difference-between-the-transactionregistry-and-the-historian/48829109#48829109 I have further doubt, how can we see the transaction details? the data that was sent( the way it gets in `view record` on play ground(
@mahoney1 https://stackoverflow.com/questions/48816023/what-is-the-difference-between-the-transactionregistry-and-the-historian/48829109#48829109 I have further doubt, how can we see the transaction details? the data that was sent( the way it gets in `view record` on play ground)
[ ](https://chat.hyperledger.org/channel/composer?msg=pwW4qtQRnNcbfFjAw) @zasamen what should be in config variable I am following this doc https://hyperledger.github.io/composer/applications/node.html
Is it possible to chain two participants/ resources in a Acl rule>
eg.rule MedicalPractionerCreateDataAccessor {
description: "Allow medical practitioner to create Data Accessors"
participant: "org.medichain.mvp.MedicalPractitioner, "org.hyperledger.composer.system.NetworkAdmin"
operation: CREATE, UPDATE, READ
resource: "org.medichain.mvp.DataAccessor; "
action: ALLOW
}
```
Is it possible to chain two participants/ resources in a Acl rule>
eg.rule MedicalPractionerCreateDataAccessor {
description: "Allow medical practitioner to create Data Accessors"
participant: "org.medichain.mvp.MedicalPractitioner, "org.hyperledger.composer.system.NetworkAdmin"
operation: CREATE, UPDATE, READ
resource: "org.medichain.mvp.DataAccessor; "
action: ALLOW
}
```
Is it possible to chain two participants/ resources in a Acl rule>
eg.
```
rule MedicalPractionerCreateDataAccessor {
description: "Allow medical practitioner to create Data Accessors"
participant: "org.medichain.mvp.MedicalPractitioner, "org.hyperledger.composer.system.NetworkAdmin"
operation: CREATE, UPDATE, READ
resource: "org.medichain.mvp.DataAccessor; "
action: ALLOW
}
```
@zasamen when we r trying to download platform specific binaries then it was pulling all containers that already exist
[ ](https://chat.hyperledger.org/channel/composer?msg=m23NbZhfRurZAYWsH) @ranjithkumarmv i'm not sure, but i think that in that guide was used that [module](https://www.npmjs.com/package/config)
I'm following this https://ibm-blockchain.github.io/develop/tutorials/developer-tutorial
[ ](https://chat.hyperledger.org/channel/composer?msg=ZuGu4BvR2JYB4WGv8) @ibmiotspark that guide performs 3 actions: 1) pull images, 2) install binaries in ` $PWD/bin` 3)
Hi everyone, when I deploy rest server follow link:
https://hyperledger.github.io/composer/next/integrating/deploying-the-rest-server
I got this error:
docker logs -f rest
[2018-03-22 09:25:05] PM2 log: Launching in no daemon mode
[2018-03-22 09:25:05] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-03-22 09:25:05] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT
Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)
at
Help!!!!
[ ](https://chat.hyperledger.org/channel/composer?msg=ZuGu4BvR2JYB4WGv8) @ibmiotspark that guide performs 3 actions: 1) pull images, 2) install binaries in ` $PWD/bin` 3) installes some preconfig.
Has joined the channel.
@ranjithkumarmv I believe its this module https://www.npmjs.com/package/config and as mentioned you would need to require `var config = require('config');` etc
[ ](https://chat.hyperledger.org/channel/composer?msg=XrvsDpSnnseLsJ583) @ibmiotspark I don't see cryptogen tool in that guide
Has joined the channel.
@zasamen in taht tool when I'm doing Deploying to a multi-organization Hyperledger Fabric "./byfn.sh -m generate" then it was showing cryptogen not found
@SamuelDare no, not presently, you could create an abstract participant (from which based participant resource classes would be extended and the subject in your rule)
@zasamen if we follow http://hyperledger-fabric.readthedocs.io/en/release-1.0/samples.html?highlight=cryptogen then how to generate .bna file
[ ](https://chat.hyperledger.org/channel/composer?msg=dbJSxGFRsG3Ng9HAG) @ibmiotspark here you just configure your network and prepare some environment. You generate `.bna` file in your composer project dir.
[ ](https://chat.hyperledger.org/channel/composer?msg=eoX8HdpwjwW42HuhE) @ibmiotspark so did you installed necessary tools from http://hyperledger-fabric.readthedocs.io/en/release-1.0/samples.html?highlight=cryptogen ?
[ ](https://chat.hyperledger.org/channel/composer?msg=Ty7XkzjWskTTWDLdN) @mahoney1 After using that module i was getting `Error: Configuration property "networkadmin" is not defined
`
[ ](https://chat.hyperledger.org/channel/composer?msg=Ty7XkzjWskTTWDLdN) @mahoney1 After using that module i was getting ` Error: Configuration property "networkadmin" is not defined `
[ ](https://chat.hyperledger.org/channel/composer?msg=Ty7XkzjWskTTWDLdN) @mahoney1 After using that module i was getting ` Error: Configuration property "networkadmin" is not defined ` ```
/root/ranjith/node_modules/config/lib/config.js:202
throw new Error('Configuration property "' + property + '" is not defined');
^
Error: Configuration property "networkadmin" is not defined
at Config.get (/root/ranjith/node_modules/config/lib/config.js:202:11)
at Object.
Has joined the channel.
@ranjithkumarmv you need to define the property :-)
Has joined the channel.
Hi all
is hyper-ledger composer used to create web application on fabric network ?
[ ](https://chat.hyperledger.org/channel/composer?msg=2x8tKu95TL5oh7Jc3) @mahoney1 Appreciate if you could give an insight about this. :pray:
Has joined the channel.
Hi guys, did anyone ever work with node-red-contrib-composer ?
I'm facing two types of error from the same hyperledger-composer-node in node-red when executing my flow : the first is "Error: parent.findChild is not a function" and the second one is "Error: Cannot read property 'then' of undefined" when i try another time.
[ ](https://chat.hyperledger.org/channel/composer?msg=J7rqmgxZMysEbTHm8) @mahoney1 can you help me with where to define the property ? i guess it is not documented yet
Hi All,
I have one issue with my multi user system, I have created a card and ran the composer network with the following command:
```
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile missions-timesheets-network@0.0.1.bna --file networkadmin.card
```
And on creating identity, I'm getting this error:
```
err: Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
at IncomingMessage.
i get the same error on every attempt to create a new environment
@varuna82 probably best to post the question on what you want to achieve on Stack Overflow. Not enough context or scope tbh, short of writing a function that's accessible to your TPs - again, I don't have enough context to answer.
@ranjithkumarmv `config` is not a composer module - this is an npm module that you use (its documented on the link I sent you - and the blog like I sent you - see comments to show you how to use it :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=CXhXNGpeEpCJyFNzh) @mahoney1 I'll post in StackOverflow.
Has joined the channel.
In transaction processor is anyone aware of a workaround for the resolveAll issue: https://github.com/hyperledger/composer/issues/3454
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=5bpgAe95jF2Md5Ta2) @nitrek You can. Once you download the pre-reqs onto a machine and build a network, you can expose your business network to a REST Server and then create a Angular App. If you wanted to make a web application using REST APIs, you can go to your localhost:3000/explorer/swagger.json to get the swagger document. If you take that swagger doc, you can plug in the APIs into your web app code.
Stuggling with the PII network sample
Created Two particpants, Two ID cards, and using 1 person, granted the other access. When I try to view the participant with the Id granted access, I cant see it. What am I doing wrong?
Created Two particpants, Two ID cards, and using 1 person, granted the other access. When I try to view the participant with the Id granted access, I cant see it. What am I doing wrong?
for reference , see here: https://github.com/hyperledger/composer-sample-networks/tree/v0.16.x/packages/pii-network
[ ](https://chat.hyperledger.org/channel/composer?msg=CeWAKLfnDonP354Zc) @grice_32 is it possible to use composer for the indy project?
[ ](https://chat.hyperledger.org/channel/composer?msg=W9EDK3979YL9zeBsh) @ydennisy It's on the road map, but for now it only supports `Fabric`
[ ](https://chat.hyperledger.org/channel/composer?msg=HY3W3D5sbtcWNXr2H) @SamuelDare amazing thanks, any idea on a rough timescale?
[ ](https://chat.hyperledger.org/channel/composer?msg=YW8yEexRmYnBpvTee) @ydennisy Nope. Saw Brian Behnlendorf at talk and he mentioned it
[ ](https://chat.hyperledger.org/channel/composer?msg=eaFZoXAEo8MtxRZoT) @SamuelDare see examples in the README file -> https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/pii-network/README.md
I am trying to do more transactions concurrently i cant go more than a transaction at a time , I am getting this error ` MVCC_READ_CONFLICT ` . this clearly states that before a successful commit we could not do another transaction. Is this limitation with Fabric ?
@sapnaupreti see https://github.com/hyperledger/composer/issues/2873 its like you had an old admin card (and therefore old admin cert/key still left there)
[ ](https://chat.hyperledger.org/channel/composer?msg=nhL3LuiHjcSqaTfpc) @mahoney1 Thanks see this already. Assuming we have 2 parties : `A` & `B`.
I create 2 participants and IDs
I switch IDs from Admin to `A`
I authorize `B`
When I swithc to ID `B`, I cant see `A's` infor
[ ](https://chat.hyperledger.org/channel/composer?msg=nhL3LuiHjcSqaTfpc) @mahoney1 Thanks see this already. Assuming we have 2 parties : `A` & `B`.
I create 2 participants and IDs
I switch IDs from Admin to `A`
I authorize `B`
When I switch to ID `B`, I cant see `A's` info
@SamuelDare suggest to use either `condition: ( r.authorized != '' && r.authorized.indexOf(p.getIdentifier()) > -1)` or `condition: ( r.authorized.indexOf(p.getIdentifier()) > -1)`
@ranjithkumarmv MVCC_READ_CONFLICT` is a response from the Fabric network. Stackoverflow for example has info about the meaning, eg https://stackoverflow.com/questions/45347439/mvcc-read-conflict-when-submitting-multiple-transactions-concurrently
@mahoney1 Hi, I'm looking at the sample connection profile, as defined at https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-multi-org
why would a client application need to know the communication details of all peers for all organizations and the channel complete configuration too?
just for connection purposes, isn't it enough to know the details of a single peer?
Hi, I am on composer 16.6 and fabric 1.1. Running query, I get errors: Composer 0.16.x ONLY works with Fabric v1.0.x (you can check from your logs / docker images what you installed. The release notes detail which versions of composer will work with which versions of fabric. eg https://github.com/hyperledger/composer/releases what can be the problem?
[ ](https://chat.hyperledger.org/channel/composer?msg=NjQD3PKxZ733g8ujh) @uber.twin see https://chat.hyperledger.org/channel/fabric-questions?msg=hLMWeYrzW5G4gXPa2 for discussion on why Fabric needs this in v1.0 and v1.1 - for further details suggest to ask on #fabric-questions (the profile reflects what Fabric requires ;-)
[ ](https://chat.hyperledger.org/channel/composer?msg=NjQD3PKxZ733g8ujh) @uber.twin see https://chat.hyperledger.org/channel/fabric-questions?msg=hLMWeYrzW5G4gXPa2 for discussion on why Fabric needs this in v1.0 and v1.1 - for further details suggest to ask on #fabric-questions (the profile reflects what Fabric requires ;-) It also depends on other factors like who endorses etc etc
[ ](https://chat.hyperledger.org/channel/composer?msg=NjQD3PKxZ733g8ujh) @uber.twin see chat.hyperledger.org/channel/fabric-questions?msg=hLMWeYrzW5G4gXPa2 for discussion on why Fabric needs this in v1.0 and v1.1 - for further details suggest to ask on #fabric-questions (the profile reflects what Fabric requires ;-) It also depends on other factors like who endorses etc etc
Hi tried to start rest-server as docker container but I got this error:
Hi I tried to start rest-server as docker container but I got this error:
Clipboard - March 22, 2018 4:15 PM
can anyone help? :)
@lars - see the table here -> https://github.com/hyperledger/composer/wiki - so you definitely need HLF v1.0.x to be able to use Composer v0.16.x - is states that here -> https://github.com/hyperledger/composer/releases/tag/v0.16.6 - would go to https://hyperledger.github.io/composer/installing/development-tools.html to get the appropriate 1.0.x Fabric images etc
@lars - see the table here -> https://github.com/hyperledger/composer/wiki - so you definitely need HLF v1.0.x to be able to use Composer v0.16.x - it states that here -> https://github.com/hyperledger/composer/releases/tag/v0.16.6 - would go to https://hyperledger.github.io/composer/installing/development-tools.html to get the appropriate 1.0.x Fabric images etc
Yes, right. Thank you!!
@waleed 1) what version of composer are you running (composer -v 2) what version of composer-rest-server (-v) are you running and 3) what instruction / tutoriall are you following ?
@mahoney1 thank you
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=gSAzS7H3x9BEoTKnC) @mahoney1 Hallo @mahoney1
1) v0.16.5
2) v0.16.5
3) i followed this: https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
[ ](https://chat.hyperledger.org/channel/composer?msg=gSAzS7H3x9BEoTKnC) @mahoney1 Hello @mahoney1
1) v0.16.5
2) v0.16.5
3) i followed this: https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
Hello, I am getting `MVCC_READ_CONFLICT` error when multiple participants are submitting the transactions (via `node-red` ). Is there any way to capture this error in a variable or message (in node-red) and use it to re-submit the transaction?
[ ](https://chat.hyperledger.org/channel/composer?msg=osmn6FSzZoFBQDGbN) @mahoney1 In that case we cannot do concurrent transactions? do u have any Benchmark ?
[ ](https://chat.hyperledger.org/channel/composer?msg=QdtrMTn5NX4tbi5Hh) @mahoney1 In that case we cannot do concurrent transactions? do u have any Benchmark ?
@waleed - I believe this is where the connection.json inside the dockerized rest server cannot resolve - need to update the connection.json - so that the docker hostnames (from within the persistent REST server instance) can resolve the other containers' IP addresses. you can do a one-liner on the connection.json see the `sed` command sequence here -> scroll down to 'Step 6' https://hyperledger.github.io/composer/next/tutorials/google_oauth2_rest - just click copy - BUT - change the name of the business network card directory to the one you're using :-) obviously..
@ranjithkumarmv if you have multiple threads updating a given key concurrently then you will hit MVCC read conflict issues, as there is no global lock to prevent concurrent updates to a key. Its really a #fabric question. In that S/O, it gives you an answer (near the bottom) on strategy for avoidance and a [Fabric] link to read.
Trying to generate an angular APP with yo generator
getting this reponse
```
events.js:183
throw er; // Unhandled 'error' event
^
Error: Card not found: medichain@0.0.1.bna
at IdCard.fromDirectory.catch.cause (/usr/local/lib/node_modules/generator-hyperledger-composer/node_modules/composer-common/lib/cardstore/filesystemcardstore.js:74:27)
at
how do I move the bna to this folder?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=CnwxbvKBDunGjYAxu) @mahoney1 stoll have the same issue :(
[ ](https://chat.hyperledger.org/channel/composer?msg=CnwxbvKBDunGjYAxu) @mahoney1 still have the same issue :(
[ ](https://chat.hyperledger.org/channel/composer?msg=CnwxbvKBDunGjYAxu) @mahoney1 still have the same issue :(
it is not able to find:
`{ Error: ENOENT: no such file or directory, open '/Users/waleed/projects/znueni.4eyes.ch/Blockchain/composer/fabric-network/crypto-config/ordererOrganizations/4eyes.ch/orderers/orderer.4eyes.ch/tls/ca.crt'`
Does anyone have experience with the Angular Generator?
I have managed to spin one up , when i launch the app with `ng serve --open` on local host 4200 i get an error: `Cannot GET /`
what does the console output show you?
@waleed - its clear it can't locate the ca.crt file , and the `sed` I gave was a localhost example with standard directory paths. I suggest to look at this S/O https://stackoverflow.com/questions/49081564/error-face-following-tutorial-on-rest-persistent-data-store-on-hyperledger-compo and try follow the steps for your custom environment
@SamuelDare - you need your REST server started, at a guess
@SamuelDare - you need your REST server started, at a guess - when you start your angular generated app, say 'I'm using an existing REST server'
[ ](https://chat.hyperledger.org/channel/composer?msg=fWnuZFCaau742m7bW) @smithsj I think i might be close
```
ERROR in /Users/pro/Documents/Code/MediChain/Hyperledger-MVP/medichain/Sample/src/app/org.medichain.mvp.ts (58,33): Cannot find name 'Member'.
ERROR in /Users/pro/Documents/Code/MediChain/Hyperledger-MVP/medichain/Sample/src/app/org.medichain.mvp.ts (68,45): Cannot find name 'Member'.
ERROR in /Users/pro/Documents/Code/MediChain/Hyperledger-MVP/medichain/Sample/src/app/org.medichain.mvp.ts (79,38): Cannot find name 'Member'.
```
when I open the type script file, it doesnt seem to have imported an abstract class `Member` which is in another CTO file. seems likes it only picks up the one that matches the namespace?
[ ](https://chat.hyperledger.org/channel/composer?msg=B3MAh95qbK7oa6rJP) @mahoney1 Started a new one... dont let holding on to old baggage :)
[ ](https://chat.hyperledger.org/channel/composer?msg=B3MAh95qbK7oa6rJP) @mahoney1 Started a new one... dont like holding on to old baggage :)
@mahoney1 do I need to have all the classes in one `.cto` file for this to run?
or are you recommending using an existing one?
also `app.component.css` appears to be empty even though `app.component.html` references css classes..is this as expected?
Can i restrict bussiness network admin in composer to update asset regiteries ?
and can other participants create instances of assets and add them in asset registry or only bussiness network admin can do this
@SamuelDare I don't think everything needs to be in one model file but your namespaces will need to line up
[ ](https://chat.hyperledger.org/channel/composer?msg=93CuC4QGpKQbBrC2g) @himanshuchawla009 you might be able to do this in the `permission file`
[ ](https://chat.hyperledger.org/channel/composer?msg=Kouog8Skk9FR6xcmL) @smithsj not sure if I understand
@himanshuchawla009 yes you can, you can use access control lists to get fine grained control over who can do what, where and when - there's some good info in the docs on this
These are my names spaces :
```
namespace org.medichain.mvp
import composer.base.*
import composer.events.*
```
and for `base.cto` (where Member is defined)
namespace composer.base
abstract participant Member {
o String companyName
}
```
namespace composer.base
abstract participant Member {
o String companyName
}
```
thanks @smithsj @SamuelDare for quick reply can u plz answer the second query
in the same question
any participants can add assets as long as the ACLs allow it
[ ](https://chat.hyperledger.org/channel/composer?msg=cAobzzox7W2rena3k) @himanshuchawla009 Yes it depends on what access or rights the participants have to the resources
in fact you probably don't want business network administrators to be the people adding assets
this an example of giving a partipant access to a resource
```
rule MedicalPractionerCreateDataAccessor {
description: "Allow medical practitioner to create Data Accessors"
participant: "org.medichain.mvp.MedicalPractitioner"
operation: CREATE, UPDATE, READ
resource: "org.medichain.mvp.DataAccessor"
action: ALLOW
}
```
you can change the resource to whatever you see fit
yep - that's a good example
[ ](https://chat.hyperledger.org/channel/composer?msg=9LSrvCiqFiEe3tjde) @smithsj I owe it all to sweat and tears from @mahoney1
haha, yeah he's a top bloke!
[ ](https://chat.hyperledger.org/channel/composer?msg=ivC4i2hEF5SAmcNqE) @SamuelDare I believe so yes (same .cto), for building the skeleton app.
:v:
[ ](https://chat.hyperledger.org/channel/composer?msg=247wmH6GGWMQRFJr5) @mahoney1 Thanks `he strikes again`
@mahoney1 is that a requirement for the generator then? I thought your model could be defined in several model files
@jyellick I could solve the error yesterday, sorry for posting here that, as the images are fabric built I thought that could be a fabric related issue, as there wasn't any fix on zookeeper forums that apply
Has joined the channel.
now I have a second question, I need to set the flag `maxClientCnxns` on `zoo.cfg` file
what's the flag that I need to set on composer file?
[ ](https://chat.hyperledger.org/channel/composer?msg=wY8WNBvSbFTSTE66m) @smithsj I believe for the NG generator yes, will get confirmation. Obviously elsehwere a BN definition can have multiple files / imports etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=wY8WNBvSbFTSTE66m) @smithsj I believe for the NG generator yes, will get confirmation. Obviously elsewhwere a BN definition can have multiple files / imports etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=wY8WNBvSbFTSTE66m) @smithsj I believe for the NG generator yes, will get confirmation. Obviously elsewhere a BN definition can have multiple files / imports etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=iBfaoLhkqinBpdKAB) @mahoney1 :+1:
Has joined the channel.
Has joined the channel.
@vieiramanoel would it be worth asking on #fabric or maybe this helps https://community.hortonworks.com/articles/51191/understanding-apache-zookeeper-connection-rate-lim.html ?
Hi all, I just created a new issue for the 0.18.2 version. For those who are stuck like I was during the night, If you want to listen to events via a worker script, you should submit a random existing transaction before to be able to register a listener. https://github.com/hyperledger/composer/issues/3669
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=LE4Cq54TiN24uD5ry) @mahoney1 thanks for the link. your answer ther helped me to solve the problem :) but now i have another one :sweat_smile:
the container hangs on this step:
`Discovering types from business network definition ...`
[ ](https://chat.hyperledger.org/channel/composer?msg=LE4Cq54TiN24uD5ry) @mahoney1 thanks for the link. your answer there helped me to solve the problem :) but now i have another one :sweat_smile:
the container hangs on this step:
`Discovering types from business network definition ...`
There seems to be a bug in the composer-playground code. I accidentally added a Participant that belongs to Registry A to registry B. I then tried to do the same with Assets and that also, for some reason, was allowed. Adding Participants to Assets, and vice versa, was not.
My current versions of composer and composer tools, as well as the hyperledger/fabric image tags are as follows:
composer V0.16.6
composer-rest-server V0.16.6
composer-playground V0.16
hyperledger/fabric-ca x86_64-1.0.4
hyperledger/fabric-couchdb x86_64-1.0.4
hyperledger/fabric-peer x86_64-1.0.4
hyperledger/fabric-orderer x86_64-1.0.4
I also just tried to reproduce this behavior in the online composer-playground (https://composer-playground.mybluemix.net) and it seems to be an issue there too.
This behavior does not appear to be true for composer-rest-server. However, I can still query assets that were added to a wrong registry using composer-playground via the composer-rest-server API.
I found a similar issue that has been fixed: https://github.com/hyperledger/composer/issues/2228
[ ](https://chat.hyperledger.org/channel/composer?msg=A8zzoCGkoqg47TAeo) @mahoney1 now I've got this:
```Connection fails: Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT
Error: Error trying to ping. Error: Error trying to query business network. Error: REQUEST_TIMEOUT
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=Rs4S8fXwcn7yf7iAq)
Wait, this also seems to be an issue in composer-rest-server. It will still let you add "foreign" Assets to any registry as long as you include the identifier of the original asset.
guys, I have been trying to do network start, but having issues , here is the command I used to start the network.
```ubuntu@fabric002:~/.composer$ docker run -v /home/ubuntu/.composer:/home/composer/.composer -v /opt/gopath/vb1st/fabric:/opt/gopath/vb1st/fabric hyperledger/composer-cli:next network start -a /opt/gopath/vb1st/fabric/run/keyfiles/orga/trade-network.bna -A PeerAdmin -c orga_firstnetwork -C /opt/gopath/vb1st/fabric/run/keyfiles/orga/users/Admin@orga/msp/admincerts/Admin@orga-cert.pem
Starting business network from archive: /opt/gopath/vb1st/fabric/run/keyfiles/orga/trade-network.bna
Business network definition:
Identifier: trade-network@0.2.3-20180314171154
Description: Commodities Trading Business Network
Processing these Network Admins:
userName: PeerAdmin
Successfully created business network card:
✔ Starting business network definition. This may take a minute...
Filename: PeerAdmin@trade-network.card```
the command finished fine. I am using the composer-cli container so that I do not have to mess up my env.
it even started two chaincode containers.
one container with one peer, I have two peers in my orga.
but both chincode container have the following errors in their logs.
```ubuntu@fabric001:~$ docker logs dev-peer1st-orga-trade-network-0.18.2
> composer-runtime-hlfv1@0.18.2 start /usr/local/src
> node start.js "--peer.address" "peer1st-orga:7052"
2018-03-22T19:36:15.685Z [381aaf4e] [INFO ] @JS : ModelManager :addSystemModels() [object Object]
2018-03-22T19:36:15.803Z [381aaf4e] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Asset:org.hyperledger.composer.system.AssetRegistry' in collection with ID '$sysregistries' does not exist
2018-03-22T19:36:15.811Z [381aaf4e] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Asset:org.hyperledger.composer.system.ParticipantRegistry' in collection with ID '$sysregistries' does not exist
2018-03-22T19:36:15.816Z [381aaf4e] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Asset:org.hyperledger.composer.system.TransactionRegistry' in collection with ID '$sysregistries' does not exist
2018-03-22T19:36:15.819Z [381aaf4e] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Participant:org.hyperledger.composer.system.NetworkAdmin' in collection with ID '$sysregistries' does not exist```
can anyone help? I feel that I am very close to get the network started.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=zSTKYGJJmrYWoLc9C) How do .query files fit into the angula generator?
I have an issue with composer cards and the rest server.
If I turn on multi-user mode I can export a card from the cli and import it into the rest server to use there.
However, if I
tear down the rest server
rebuild it
export the card from the cli a second time
and import it into the rest server a second time
Then the card stops working on both the rest server and the cli. So even from the CLI, I can't ping the network.
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'xxxxxx' and the identifier '8542d72ae30ad4869e5ae1c00088b8eaeec8079dcf553416467641be49f72425', has not been registered)",
"stack":"Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'xxxxxx' and the identifier '8542d72ae30ad4869e5ae1c00088b8eaeec8079dcf553416467641be49f72425', has not been registered)
at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js: 713: 34)
at
I have an issue with composer cards and the rest server.
If I turn on multi-user mode I can export a card from the cli and import it into the rest server to use there.
However, if I
tear down the rest server
rebuild it
export the card from the cli a second time
and import it into the rest server a second time
Then the card stops working on both the rest server and the cli. So even from the CLI, I can't ping the network.
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'xxxxxx' and the identifier '8542d72ae30ad4869e5ae1c00088b8eaeec8079dcf553416467641be49f72425', has not been registered)",
"stack":"Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'xxxxxx' and the identifier '8542d72ae30ad4869e5ae1c00088b8eaeec8079dcf553416467641be49f72425', has not been registered)
at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js: 713: 34)
at
How do I factor in submitting transactions under different Ids in with the angular generator?
Also I noticed that the transaction functions were commented out in the `app-routing.module.ts`
Last when I try to summit data, I get `422` and `400` error. My rest server is working in between
Has joined the channel.
Hi. I downloaded `fabric-dev-servers.zip` and tried starting the fabric to user composer, but one of my containers is dying with the following message:
```2018-03-22 23:07:08.640 UTC [main] main -> ERRO 001 Cannot run peer because error when setting up MSP from directory /etc/hyperledger/peer/msp: err Could not load a valid signer certificate from directory /etc/hyperledger/peer/msp/signcerts, err Could not read directory open /etc/hyperledger/peer/msp/signcerts: permission denied, err /etc/hyperledger/peer/msp/signcerts
```
In fact, I see that the same happened to several containers: fabric-peer, fabric-ca, fabric-orderer. All of them with permission denied under /etc/hyperledger/...etc.
maybe use root user run smoothly,then try other users
Has joined the channel.
Hi we are trying to dockerize the composer rest server. When we run the rest server container it can't connect to the business network. Says that the admin card we are trying to use has not been registered. Interestingly/frustratingly, when we import the admin card, it has state BOUND, no name nor issuer. We have changed the connection.json to point to peers etc using the docker container names instead of localhost. Anyone able to shed any light into what's happening here?
should have scrolled up :)... hoping https://hyperledger.github.io/composer/next/tutorials/google_oauth2_rest, step 6 will do the trick. We were doing that step effectively, but before the import
Has joined the channel.
hi,all which doc can show me how to add a new computer to an existing network?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=eZK96GouZhbAzniB2) @mahoney1 can we see the input of the transaction here?
when i create org3 by "eyfn.sh",it seems like need the org1 and org2 certs.why does it ?
Clipboard - 2018年3月23日下午2点19分
Can somebody help me to create a REST API to access chaincode function
?
https://abc.com/purchaseorderdetails/?$filter='ORD0002'
I need a service like this
how can I create this type of service?
Any document or help doc to proceed further
[ ](https://chat.hyperledger.org/channel/composer?msg=cuAnrw2uJm6geBv9s) @suva You can create the asset called `purchaseOrderDetails` in you `cto` file eg.
```
asset purchaseOrderDetails identified by orderId {
o String orderId
}
```
when you run `composer-rest-server` , the loop back connector will automaticaly generate `An Asset called purchase Order Details` which you can filter by @bourbonkidQ
Has joined the channel.
@SamuelDare .Thanks
@SamuelDare .Any document link for reference?
Has joined the channel.
Has joined the channel.
hy everyone, this is alx from india (kerala) .. I am part of kba (Kerala Blockchain Acedemy) http://www.iiitmk.ac.in/kba/ .. and we are searching for passionate people to part of kba as mentors, trainers, developers etc ... if interested join out telegram group https://t.me/joinchat/FQnIAk17xeIygA__QI_9bg
How to install cryptogen
all other components are installed when I tried to run ./byfn.sh -m generate o/p:cryptogen not found
follow the composer developer tuturials
I cant find the link because `github.io` pages are blocked for me
[ ](https://chat.hyperledger.org/channel/composer?msg=TmsSds9sZXnG58gM3) @ibmiotspark it comes with the plafrom binaries when you pull the `fabric` docker files
have you add the `fabric` file path to your `urs/bin`?
have you added the `fabric` file path to your `urs/bin`?
have you added the `fabric` file path to your `usr/bin`?
Hi Guys! I am struggling with transaction testing. Has anyone every *tested that a transaction throws an error*?
Hi Guys! I am struggling with transaction testing. Has anyone ever *tested that a transaction throws an error*?
[ ](https://chat.hyperledger.org/channel/composer?msg=8xgG9vjWe4DLSFTg8) Fixed `await assertThrowsAsync(async () => await businessNetworkConnection.submitTransaction(userCreationTransaction), /Error/);`
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=dW5DHtirjJGz95uXh) @Rmannn thanks for raising. Does this Stack -> (answer 2) to register a listenener help? https://stackoverflow.com/questions/44224833/how-listen-for-events-in-hyperledger-fabric-composer. (ie using business cards nowadays as opposed the 'old way' with conx profile, but the principle is the same).
[ ](https://chat.hyperledger.org/channel/composer?msg=dW5DHtirjJGz95uXh) @Rmannn thanks for raising. Does this Stack -> (answer 2) to register a listener help? https://stackoverflow.com/questions/44224833/how-listen-for-events-in-hyperledger-fabric-composer. (ie using business cards nowadays as opposed the 'old way' with conx profile, but the principle is the same).
[ ](https://chat.hyperledger.org/channel/composer?msg=8xgG9vjWe4DLSFTg8) @Ambros 3 Fixed? or does this help -> https://javascript.info/async-await
[ ](https://chat.hyperledger.org/channel/composer?msg=nJ6BayKjMibFwst7N) @suva here you go https://hyperledger.github.io/composer/integrating/getting-started-rest-api.html (once you update your changes on your business network per above)
[ ](https://chat.hyperledger.org/channel/composer?msg=aaQ9youTENPAktK6u) @Varun2887 yes (for the add asset for that class) eg ```{
"$class": "org.hyperledger.composer.system.AddAsset",
"resources": [
{
"$class": "org.acme.trading.myAsset",
"id": "5"
}
],
"targetRegistry": "resource:org.hyperledger.composer.system.AssetRegistry#org.acme.trading.myAsset",
"transactionId": "bb3da0a3-c30b-48d1-8f3c-496bfe8810f9",
"timestamp": "2018-03-21T16:06:48.510Z"
}```
@mahoney1 Hello, if any transaction fails with `MVCC_Read_conflict` error then is there any possibility to capture it or save the error/message into variable in `node-red` so then can try re-submitting it?
Screenshot from 2018-03-22 17-11-42.png
[ ](https://chat.hyperledger.org/channel/composer?msg=c5yBFwLurGskdKo37) @AkshayJindal I suspect probably using the Fabric SDK / eventhub? https://fabric-sdk-node.github.io/EventHub.html eg `EventHub connect to peer (localhost:7053) ******* Received error validation Code MVCC_READ_CONFLICT` as mentioned, this is returned by Fabric.
Hi
I am a beginner in composer .Can anyone tell me how the .bna is installed on the fabric network when we give
composer network deploy -a dist/iot-perishable-network.bna -A admin -S adminpw -c PeerAdmin@hlfv1 -f networkadmin.card
Hi
I am a beginner in composer .Can anyone tell me how the .bna is installed on the fabric network when we give
composer network deploy -a dist/iot-perishable-network.bna -A admin -S adminpw -c PeerAdmin@hlfv1 -f networkadmin.card
How does fabric network handles the .bna file ?
I have 2 rest server containers, when i start them, they run on the same port '3000':
```docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=false \
-e COMPOSER_MULTIUSER=false \
-v ~/.composer:/home/composer/.composer \
-v ${DIR}/certs:/home/certs \
--name rest-single-user \
--network net_fabric \
-p 3001:3001 \
znueni-composer-rest-server
# Start a new instance of the extended Docker image for the REST server that created.
# This REST server will run in multi-user mode und used to the authentication.
docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ~/.composer:/home/composer/.composer \
-v ${DIR}/certs:/home/certs \
--name rest-multi-user \
--network net_fabric \
-p 3000:3000 \
znueni-composer-rest-server```
[ ](https://chat.hyperledger.org/channel/composer?msg=FX5D7aHCQZKNAGKiQ) found the solution.
I had to add environmental variable:
`-e PORT=3001`
Fab-830
[ ](https://chat.hyperledger.org/channel/composer?msg=zNkgLcJ3986TpZQtk) @pb `deploy` command is deprecated. Currently, Composer - uses a generic chaincode runs its transaction processor functions etc (written in javascript) within its own runtime. So it runs in its own Composer runtime environment and business network container. With Fabric v1.1 (Hyperledger Fabric v1.1 available, and Composer 'next' stream that goes 'hand-in-glove' with that - it provides native node.js chaincode support) . But quite soon (planned next release) the plan is the business network is deployed within Hyperledger Fabric 'as chaincode' (just like non-Composer chaincode if you like) and not require an explicit 'composer runtime' per se.
[ ](https://chat.hyperledger.org/channel/composer?msg=zNkgLcJ3986TpZQtk) @pb `deploy` command is deprecated. Currently, Composer - uses a generic chaincode to runs its transaction processor logic / functions etc (written in javascript) within its own runtime. So it runs in its own Composer runtime environment and business network container. With Fabric v1.1 (Hyperledger Fabric v1.1 available, and Composer 'next' stream that goes 'hand-in-glove' with that - it provides native node.js chaincode support) . But quite soon (planned next release) the plan is the business network is deployed within Hyperledger Fabric 'as chaincode' (just like non-Composer chaincode if you like) and not require an explicit 'composer runtime' per se.
Hi Team, Are there plans to add Fab-830 (application level encryption) support into Composer? Thanks!
@waleed - correct - p to change the port number :-)
@mahoney1 I have now rest-server container and the `COMPOSER_DATASOURCES` refers to my mongoDB container.
will the rest server store the data in mongodb automatically? or should I do anything els?
[ ](https://chat.hyperledger.org/channel/composer?msg=pinQjCtnek8foPmu3) anyone have a fix for this issue? I'm able to create two Assets (Asset 1 and Asset 2). As long as Asset 1 has at minimum the same attributes as Asset 2 I can add it to the Asset2 registry which doesn't make sense to me. Any clarification would be great!
[ ](https://chat.hyperledger.org/channel/composer?msg=cZZSg33MurfmDhXvg) @mahoney1 Hello. I use `block event` to calculate tx commit time. Actually I am using node-red to connect my external system with blockchain. When multiple transaction comes, few nodes throw `MVCC_Read_conflict` and I can see this msg in node-red `debug` console. I would like to use this error inorder to re-submit my transaction via `node-red`. Therefore, I got to know there is `catch` node available in node-red which can catch errors if any node throws. I tried to use it but it didnt work with `composer` nodes. I am not sure if composer nodes throw error `"Error trying invoke business network. Error: Peer has rejected transaction 'ce59c38741626ca5dbc1ae7055e0a52297ff99293751f796ed41d40b5cfc59e9' with code MVCC_READ_CONFLICT"
` in actual or proper error form. I think, if `catch` node in node-red can catch this error somehow then it could be use to re-submit the transaction in case of conflict.
[ ](https://chat.hyperledger.org/channel/composer?msg=cZZSg33MurfmDhXvg) @mahoney1 Hello. I use `block event` to calculate tx commit time. Actually I am using node-red to connect my external system with blockchain. When multiple transaction comes, few nodes throw `MVCC_Read_conflict` and I can see this msg in node-red `debug` console. I would like to use this error inorder to re-submit my transaction via `node-red`. Therefore, I got to know there is `catch` node available in node-red which can catch errors if any node throws. I tried to use it but it didnt work with `composer` nodes. I am not sure if composer nodes throw error ``` Error trying invoke business network. Error: Peer has rejected transaction 'ce59c38741626ca5dbc1ae7055e0a52297ff99293751f796ed41d40b5cfc59e9' with code MVCC_READ_CONFLICT ```
` in actual or proper error form. I think, if `catch` node in node-red can catch this error somehow then it could be use to re-submit the transaction in case of conflict.
[ ](https://chat.hyperledger.org/channel/composer?msg=cZZSg33MurfmDhXvg) @mahoney1 Hello. I use `block event` to calculate tx commit time. Actually I am using node-red to connect my external system with blockchain. When multiple transaction comes, few nodes throw `MVCC_Read_conflict` and I can see this msg in node-red `debug` console. I would like to use this error inorder to re-submit my transaction via `node-red`. Therefore, I got to know there is `catch` node available in node-red which can catch errors if any node throws. I tried to use it but it didnt work with `composer` nodes. I am not sure if composer nodes throw error ``` Error trying invoke business network. Error: Peer has rejected transaction 'ce59c38741626ca5dbc1ae7055e0a52297ff99293751f796ed41d40b5cfc59e9' with code MVCC_READ_CONFLICT ```
in actual or proper error form. I think, if `catch!` node in node-red can catch this error somehow then it could be use to re-submit the transaction in case of conflict.
[ ](https://chat.hyperledger.org/channel/composer?msg=N8ZKhW7k2osSYHDC2) @waleed yes should do - the MongoDB instance will persist all information regarding authenticated users and their wallets (containing that users business network cards when multiple user mode is enabled) for the REST server.
should I be able to use CQL to query based on the properties of a relationship?
For example, if Dog has an owner property that is a relationship to Owner, CQL fails if I pass an invalid property of owner but it accepts the following syntax `SELECT org.kennel.Dog WHERE owner.name == 'Bob'`. ...but quietly returns no results.i've confirmed I get all the results and can resolve owners if I query `SELECT org.kennel.Dog`.
I'm using Composer 0.17.4
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=XGZ5SiLz8ajfdZMrY) @tennenjl so `getNativeAPI` in Composer ('next' or 0.18.x stream) allows you to call the Hyperledger Fabric APIs. In Fabric v1.1 GA, you have the ability to encrypt ledger data for confidentiality using the chaincode encryption library, does this help?
Hi ! Someone already have this error : Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'
i use node 8.10.0, npm 5.6.0 and composer 0.16.6
@davidoevans try ```query myDogs {
description: "Select all dogs where.."
statement:
SELECT org.kennel.Dog
WHERE (owner == "resource:org.kennel.Dog.owner#Bob")
} ``` or similar (need URI scheme, and don't used stepped notation in WHERE - just the fieldname in `Dog` will do
@davidoevans try ```query myDogs {
description: "Select all dogs where.."
statement:
SELECT org.kennel.Dog
WHERE (owner == "resource:org.kennel.Dog.owner#Bob")
} ``` or similar (need URI scheme, and don't used stepped notation in WHERE - just the fieldname in `Dog` will do)
[ ](https://chat.hyperledger.org/channel/composer?msg=ZfJiCq5s5Et4X66zj) @Poneey you need Node 8.9.x :-) https://hyperledger.github.io/composer/installing/installing-prereqs.html suggest to uninstall old composer modules, get your node version up to speed using nvm then switch to that node version and install composer modules etc per https://hyperledger.github.io/composer/installing/development-tools
Thank, i'm trying something. If it doesn't work, i will do what you say
@mahoney1 In fact i already follow https://hyperledger.github.io/composer/installing/development-tools. I have an error when i try to install composer-cli : gyp ERR! stack Error: EACCES: permission denied, mkdir '/root/.node/lib/node_modules/composer-cli/node_modules/pkcs11js/build'
right, so apart from never installing composer modules using sudo or root (you know that, just saying) - for npm errors / permission denied - suggest to follow the best practices here https://docs.npmjs.com/getting-started/fixing-npm-permissions including recommendation to install a Node Version Manager (install NVM then use that to manage Node installs) - more info here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues (items 1, 2)
Thanks @mahoney1 - i didn't know you could do as suggested. The difference in what i'm trying to do is filter based on a property rather than the identifier of an asset. Can that be done to?
sure `query myDogs {
description: "Select all dogs where.."
statement:
SELECT org.kennel.Dog
WHERE (owner == _$owner) ` - the latter being the parameter passed to the query in your TP function (for example) eg ```
var fqname = tx.name;
return query('myDog', {
"name": fqname })
.then(function (results) {
// do something `
});```
sure `query myDogs {
description: "Select all dogs where.."
statement:
SELECT org.kennel.Dog
WHERE (owner == _$owner) ` - the latter being the parameter passed to the query in your TP function (for example) eg ```
var owner = tx.owner;
return query('myDog', {
"name": owner })
.then(function (results) {
// do something `
});```
sure : query myDogs {
description: "Select all dogs where.."
statement:
SELECT org.kennel.Dog
WHERE (owner == _$owner) - the latter being the parameter passed to the query in your TP function (for example) eg ```
var owner = tx.owner;
return query('myDog', {
"name": owner })
.then(function (results) {
// do something `
});```
sure (you can select whatever property to query you wish to use as criteria) : query myDogs {
description: "Select all dogs where.."
statement:
SELECT org.kennel.Dog
WHERE (owner == _$owner) - the latter being the parameter passed to the query in your TP function (for example) eg ```
var owner = tx.owner;
return query('myDog', {
"name": owner })
.then(function (results) {
// do something `
});```
@mahoney1 Thank. Actually, i know that i suppose to not use root but i don't know informations connection to user ...
hhmmm...nope...your example is still finding based on an owner...i'll pick another property to query on.
```
SELECT org.kennel.Dog where (owner.hairColor == 'brown')
```
hhmmm...nope...your example is still finding based on an owner identity...i'll pick another property to query on.
```
SELECT org.kennel.Dog where (owner.hairColor == 'brown')
```
hhmmm...nope...your example is still finding based on an owner identity...i'll pick another property to query on.
```
SELECT org.kennel.Dog where (owner.hairColor == 'brown')
```
should that work?
[ ](https://chat.hyperledger.org/channel/composer?msg=o9hCcpwd3rvvY3Sev) @mahoney1 Perfect. Thanks! I need that capability moving forward
[ ](https://chat.hyperledger.org/channel/composer?msg=LuX4uGTTbcbeRiHDz) @davidoevans sorry, you're saying - an attribute of the related resource, outside of the identifier field - no you can't - as that attribute is not in the registry you're querying :-) (CouchDB is not a relational DB). You would have to query the registry based on identifier, then filter on an attribute as you described in your TP - not difficult though.
[ ](https://chat.hyperledger.org/channel/composer?msg=LuX4uGTTbcbeRiHDz) @davidoevans sorry, you're saying - an attribute of the related resource, outside of the identifier field - no you can't - as that attribute is not in the registry you're querying :-) (CouchDB is not a relational DB and as mentioned, you can't used stepped notation the way you've written). You would have to query the registry based on identifier, then filter on an attribute as you described in your TP - not difficult though.
Such conditions do work for ACL rules tho...correct? As per https://github.com/hyperledger/composer/issues/1007
...just not in CQL
[ ](https://chat.hyperledger.org/channel/composer?msg=c8SkiwKuwgrMFYENu) @davidoevans yes - because its filtering in the Composer runtime, as opposed something we can pass on from CQL to the CouchDB query language ..
hmmm...it's strange...because CQL recognizes the properties of the related resource but just doesn't query on them...for example, if I misspell the hairColor property above, CQL will error. Is there any plan to allow CQL to support these filters?
[ ](https://chat.hyperledger.org/channel/composer?msg=WNAZKx7MHWgjG4eZf) @davidoevans correct - it recognizes - and validates. I don't see a specific issue for using queries like ACL conditions or nesting queries based on relationship objects (just been looking - feel free to raise your own specific one)
@mahoney1 I have created this post on stackoverflow
@mahoney1 I have created this post on stackoverflow https://stackoverflow.com/questions/49453283/node-red-catching-error-node-red-contrib-composer
Another question...my dog travels a lot....think like 100 different kennels daily for 10 years...so if I keep an `--> Kennel[] kennels` relationship on my Dog, it will become a huge array...i have a bunch of scenarios like this. So what i'm thinking is to keep relationships on a different asset; say:
```
asset DogKennelRelationship identified by id {
o String id
o Dog dog
o Kennel kennel
}
```
1. As per discussion above, it would be great if I could query this relationship registry based on properties of a dog or a kennel...but we know where that stands for now.
2. Is there any way for me to reference this DogKennelRelationship registry from with an ACL rule associated with the Dog asset. For example, when Kennel participant tries to `SELECT Dog`, ACL rules will limit results to those dogs that have a relationship to that Kennel?
Another question...my dog travels a lot....think like 100 different kennels daily for 10 years...so if I keep an `--> Kennel[] kennels` relationship on my Dog, it will become a huge array...i have a bunch of scenarios like this. So what i'm thinking is to keep relationships on a different asset; say:
```
asset DogKennelRelationship identified by id {
o String id
--> Dog dog
--> Kennel kennel
}
```
1. As per discussion above, it would be great if I could query this relationship registry based on properties of a dog or a kennel...but we know where that stands for now.
2. Is there any way for me to reference this DogKennelRelationship registry from with an ACL rule associated with the Dog asset. For example, when Kennel participant tries to `SELECT Dog`, ACL rules will limit results to those dogs that have a relationship to that Kennel?
Another question...my dog travels a lot....think like 100 different kennels daily for 10 years...so if I keep an `--> Kennel[] kennels` relationship on my Dog, it will become a huge array...i have a bunch of scenarios like this. So what i'm thinking is to keep relationships on a different asset; say:
```
asset DogKennelRelationship identified by id {
o String id
--> Dog dog
--> Kennel kennel
}
```
1. As per discussion above, it would be great if I could query this relationship registry based on properties of a dog or a kennel...but we know where that stands for now.
2. Is there any way for me to reference this DogKennelRelationship registry from an ACL rule associated with the Dog asset. For example, when Kennel participant tries to `SELECT Dog`, ACL rules will limit results to those dogs that have a relationship to that Kennel?
I believe the approach described above aligns with recommendations for managing N:N relationships in CouchDB.
heyho, a short question. I use for debugging `console.log("xx")` in my code. In the composer-playground.mybluemix does it work fine. But will it also work, when I execute the code in the real blockchain?
Hello, guys.
Anyone having a reference for a working nodejs file.
I followed this but no output
https://hyperledger.github.io/composer/applications/node
thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=ec8CG8KMvqJAKRfvB) @a.ochs it will be in your docker container logs - see here for more info -> https://stackoverflow.com/questions/48890545/hyperledger-composer-on-fabric-console-log-doesnt-work?rq=1
@mahoney1 okay, thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=uD9BM4HwMH9mFnrtd) @AkshayJindal as mentioned, the error comes from Fabric - might want to have a watcher that finds the error in the logs and pulls it into your flow ? See also here on info about avoiding collisions -> https://stackoverflow.com/questions/45347439/mvcc-read-conflict-when-submitting-multiple-transactions-concurrently
[ ](https://chat.hyperledger.org/channel/composer?msg=BwWH69ufBMwBisRf9) @mahoney1 okay thanks. Also, just to know, Can I make changes in `node-red-contrib-composer` locally and install those nodes in my node-red? If yes, Is there any link for support?
@davidoevans yes probably on 2. (would have to see the model etc) - using `indexOf` to see what matches ( to allow it to GRANT access) - see https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/pii-network/permissions.acl#L38
@AkshayJindal you can change the source for your own purposes for your own use if you wish. I don't have a link to resources other than what's in github https://github.com/hyperledger/composer-tools/tree/master/packages/node-red-contrib-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=g2cfnQGNK5sXEQWhF) @AkshayJindal you could also add the debug node to your flow.
@joebynoe - seemingly not - I take it you tried this in Playground? Please raise an issue with the examples (PLayground, REST) that you tried including the JSON data - thanks
I have an issue with composer cards and the rest server.
If I turn on multi-user mode I can export a card from the cli and import it into the rest server to use there.
However, if I
tear down the rest server
rebuild it
export the card from the cli a second time
and import it into the rest server a second time
Then the card stops working on both the rest server and the cli. So even from the CLI, I can't ping the network.
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'xxxxxx' and the identifier '8542d72ae30ad4869e5ae1c00088b8eaeec8079dcf553416467641be49f72425', has not been registered)",
"stack":"Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'xxxxxx' and the identifier '8542d72ae30ad4869e5ae1c00088b8eaeec8079dcf553416467641be49f72425', has not been registered)
at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js: 713: 34)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=PPjwf2QerbqBEzQCB) @mahoney1 If composer node is throwing an error like `MVCC_Read_conflict` then `debug` node cannot capture it. It can be on debug console. There can be one solution to this. If `node.error(msg)` in composer node-red can be change to `node.error("Error",msg)` Then already available `catch` node in node-red may be used to capture the error and may be transaction can be re-submitted using it.
[ ](https://chat.hyperledger.org/channel/composer?msg=PPjwf2QerbqBEzQCB) @mahoney1 If composer node is throwing an error like `MVCC_Read_conflict` then `debug` node cannot capture it. It can be see only on `debug console`. There can be one solution to this. If `node.error(msg)` in composer node-red can be change to `node.error("Error",msg)` Then already available `catch` node in node-red may be used to capture the error and may be transaction can be re-submitted using it.
[ ](https://chat.hyperledger.org/channel/composer?msg=PPjwf2QerbqBEzQCB) @mahoney1 If composer node is throwing an error like `MVCC_Read_conflict` then `debug` node cannot capture it. It can be see only on `debug console`. There can be one solution to this. If `node.error(msg)` in composer node-red code can be change to `node.error("Error",msg)` Then already available `catch` node in node-red may be used to capture the error and may be transaction can be re-submitted using it.
[ ](https://chat.hyperledger.org/channel/composer?msg=SZPenepxZnCnEjTXo) @mostafa.elsayyad try one of these -> https://www.skcript.com/svr/how-to-build-nodejs-application-for-your-hyperledger-composer-networks/ or someone else from the Community shared this https://github.com/Chris-McQueen-Development/logistics-chain/blob/632aa0cdb161dc7313bd0053920ab8291aacd76d/utility-scripts/createManufacturers.js (see requires in the same directory )
@AkshayJindal sure - feel free to raise an issue to request this.
Has joined the channel.
hey all, are oracles suported?
[ ](https://chat.hyperledger.org/channel/composer?msg=Jb5WaSKLzDF4jEzZJ) @VamzR If you mean world state database support - Fabric (which Composer uses presently as the underlying blockchain infrastructure runtime) supports CouchDB and LevelDB presently http://hyperledger-fabric.readthedocs.io/en/release-1.1/couchdb_as_state_database.html . If you mean integration - you can use an integration method see more here https://hyperledger.github.io/composer/integrating/integrating-index including a Composer Node-red tutorial https://hyperledger.github.io/composer/tutorials/nodered-tutorial
@mahoney1 do you mean that Fabric can interact with data on the internet, so long as it is funneled via CouchDB for example?
@y2255236 'tear down' meaning: destroying a persistent REST server container? what's does `ls -l $HOME/.composer/client-data/admin@yrnetwork/` show ? (id substitute your admin card with the above - ie whatever card you're trying to import into the REST API using `Wallet/import` etc )
Does the promise from BusinessNetworkConnection.submitTransaction only resolves when the transaction was really added to the ledger?
I am trying to get my card using rest server but i get this error:
Clipboard - March 23, 2018 7:31 PM
do I provide the wrong card name?
[ ](https://chat.hyperledger.org/channel/composer?msg=5myZC6j7KKGQNRpYW) @andreosti yes
Clipboard - March 23, 2018 6:34 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=AufxxdpXhQ3mGPZiP) @waleed yes :-) try a GET /wallets to see what's there eg
[ ](https://chat.hyperledger.org/channel/composer?msg=rY7hC2JNk84yPbFnz) @VamzR no. If you want to clarify your question, I'll see...if I can answer :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=rY7hC2JNk84yPbFnz) @VamzR no [I didn't mean that]. If you want to clarify your question, I'll see...if I can answer :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=rY7hC2JNk84yPbFnz) @VamzR no [I didn't mean that]. If you want to clarify your question, I'll see...if I can answer :-) ..Explanation of Blockchain world state - and the ledger - here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#recap FYI
@mahoney1 I'm looking for a way to let my Fabric contracts access data streams from the internet. Is there anyway this can be done? I was imagining if Fabric can read/write to a CouchDB, then why can't a python script (with internet access) write to the same DB? Is there any way to accomplish this?
@VamzR sorry, but I can only answer Composer questions - suggest to ask on #fabric channel as its a Fabric question :-)
Dosnt Composer build on top of Fabric?
Can what I asked be done in Composer?
yes. Using Composer artifacts. You can do a call-out from transaction processors yes and get results back (deterministically - so that you transactions will get endorsed obviously) - see https://hyperledger.github.io/composer/integrating/call-out which is an experimental feature but will be replaced in time - see issue here -> https://github.com/hyperledger/composer/issues/3092 for more discussion on using something else like `request` module. Does that help?
yes. Using Composer artifacts. You can do a call-out from transaction processors yes and get results back (deterministically - so that your transactions will get endorsed obviously) - see https://hyperledger.github.io/composer/integrating/call-out which is an experimental feature but will be replaced in time - see issue here -> https://github.com/hyperledger/composer/issues/3092 for more discussion on using something else like `request` module. Does that help?
[ ](https://chat.hyperledger.org/channel/composer?msg=uyfTip8nJdxGPHg7s) @mahoney1 I got empty array.
but I have allready card in my wallet
Clipboard - March 23, 2018 7:46 PM
@waleed so that's the wallet in your card store :-) the REST client is a separate entity - you need to import it into your REST client through the APIs - see this tutorial for an example (and pictures) of how that's done (Google OAUTH2 authentication with multi-user, persistent REST server)
@waleed so that's the wallet in your card store :-) the REST client is a separate entity - you need to import it into your REST client through the APIs - see this tutorial for an example (and pictures) of how that's done (Google OAUTH2 authentication with multi-user, persistent REST server - 'Step 11' onwards)
I'm off folks have a nice weekend, may be back online later or tomorrow. :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=jgSx6GQiDjK8StMo4) @mahoney1
Thank you, that does help. I have one more question if you don't mind. Is there a way to build some type of system on composer/fabric that can initiate payments? For example, if Joe checks in, the chaincode will determine his job is complete and pay him out?
@VamzR does it need to be real-time? The obvious thing would be the check-in updates a status of COMPLETE somewhere. And a means of checking those 'as yet unpaid participants' - so that it can trigger the Payout transaction you refer to (such as Queries, that can invoke actions but sensibly batch them to be invoked as one transaction rather than piecemail transactions)?
Has joined the channel.
Does the Composer Playground Docker image (https://hub.docker.com/r/hyperledger/composer-playground/) store the defined networks and other data somewhere on disk?
It does pick up cards I put under `/home/composer/.composer` but it doesn't seem to write anything else there
[ ](https://chat.hyperledger.org/channel/composer?msg=jf7jXYeDJot5iyvG2) @mahoney1
Yes tear down means destroy the persistent store with the wallets and cards so I have to set them up again.
when I run ls -l I see
-rw-r--r-- 1 fcprxbci FORDNA1\Domain Users 246 Mar 22 16:36 ae0003a430a421984fd57183bf3efc7edc63bfdea28ddc5e2b8f9a293923ee54-priv
-rw-r--r-- 1 fcprxbci FORDNA1\Domain Users 182 Mar 23 15:52 ae0003a430a421984fd57183bf3efc7edc63bfdea28ddc5e2b8f9a293923ee54-pub
-rw-r--r-- 1 fcprxbci FORDNA1\Domain Users 969 Mar 23 15:52 xxxxxx
[ ](https://chat.hyperledger.org/channel/composer?msg=HxsSeohBK7JFPW4Q7) @mahoney1 Thank you!
hi, is there a syntax hilighting package available for vim for composer files (.cto etc) ?
Has joined the channel.
composer identity request --card ca --path ./credentials
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
any clue?
trying to follow the ibm starter plan tutorial
is ok got it figured out
Has joined the channel.
is there any way to extend the TIMEOUT on `network start`?
hello guys, I am setting up a multi-orgs network on K8s. I managed to have everything up and running; creating a channel; joining the channel with a peer; importing the admin identity and deploying the .bna (with `composer-cli`). Everything seems to work fine till this stage. Then, with my node app (`composer-client`), I am trying to connect with the `admin` credentials using a connection profile which works perfectly in my local environment, and I get this error:
```
Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Error: Invalid results returned ::FORBIDDEN
```
and the log from my Orderer is:
```
Principal deserialization failure (The supplied identity is not valid, Verify() returned x509: certificate signed by unknown authority) for identity
```
I am reading around it could be related to an expired/bad-configured CA certificate, but the same configuration (using exactly the same crypto-config) works perfectly in my local environment.
Any thoughts?
@mahoney1 I'm looking for examples on image storing on fabric .. is there any ?
Hello everyone, I am having this error
{
"msp_id": "ExamplePeerOrg1",
"adminCertName": "exampleAdminCert1",
"adminCertificate": "-----BEGIN CERTIFICATE-----\nMIIBkzCCATqgAwIB...",
"peer_names": [
"example-fabric-peer-1234a"
],
"SKIP_CACHE": true
}
I don't know where to find this?
https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-networks-on-starter-plan
I am following this tutorial
any help please :(
@mahoney1 I have raised this issue - https://github.com/hyperledger/composer-tools/issues/113 .. Is it the right place?
@mahoney1 Hello..I have raised this issue - https://github.com/hyperledger/composer-tools/issues/113 .. Is it the right place?
Hello everybody! I am facing a noob problem with the composer-common lib in node js.
I can't create MemoryCardStore.
A very kind notice; this change is significant only in the next release.
0.18.1 specifically.
Any help where I can instantiate the card store will be appreciated.
Hey all. I have been thinking the process for setting up a fabric network and deploying a composer bna file on it and I have the following question. If a connection profile is required to create a card and deploy the business archive file, and the connection profile must have all the peer ips and names in the json file, how can a peer be added dynamically after the network has been deployed and being used? Does this mean that all the cards need to be reissued if a new peer is added??
Has joined the channel.
I Am implementing my research project on Hyperledger. I would love to understand more about composer as such. I had a decision between Corda and hyperledger and corda does seem to be better with docs and quick bootsrapping till I discovered composer I was going to go with Corda. Is Composer a good way to create proof of concept applications.
Also is composer a part of Hyperledger project?
[ ](https://chat.hyperledger.org/channel/composer?msg=vBCeedcabNGXx2H7n) @balabky9 yes, it's also hyperledger (see https://www.hyperledger.org/projects/composer) and like fabric it's pushed and used by IBM. (btw. the composer playground is a very valuable tool)
[ ](https://chat.hyperledger.org/channel/composer?msg=vBCeedcabNGXx2H7n) @balabky9 Definitely go with composer
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hello everyone
whenever I am running this, composer network start -c adminCard -a vehicle-manufacture-network.bna -A admin -C ./credentials/admin-pub.pem -f delete_me.card for hyper ledger starter plan, there's a request time-out, no valid response from peers? Any clue or help please, couple of days of the same problem and reconfiguring and trying. running it on 0.18.2
what does this --> means in .cto file of Hyperledger? Sorry for lame question.
I am facing this issue of IllegalModelException: Failed to find namespace org.acme.biznet.* in my .acl file. Code from this tutorial -->https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
Has joined the channel.
Error: Expected a Resource or Concept.
Error: Expected a Resource or Concept.
Error: Expected a Resource or Concept.
how to solve it?
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ybA6qccfS3RkBhMdr) @mikeleow how did you figure it out? Running into same problem
[ ](https://chat.hyperledger.org/channel/composer?msg=uQfNBbvLcGMQeQL63) @mikeleow I believe this will be in the starter plan -> overview -> connection profile
"Trying this at home" ... 2 caveats ... this is just looking to begin using HFC/HLF at home as a POC ... and my Ubuntu was already on artful (when I lied to the prereq install script, all seems to have gone OK). Anyway, I had what looked like a docker-compose issue I had eons ago (earlier when I was doing this but work priorities pulled me off of it. Now I think it is different. I am trying to set up the playground with: ./startFabric.sh and the error I get is:
2018-03-25 23:51:26.132 UTC [grpc] Printf -> DEBU 003 grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: Error while dialing dial tcp 172.18.0.5:7051: getsockopt: connection refused"; Reconnecting to {peer0.org1.example.com:7051
Woops, didn't mean to send yet. I tried expanding startup time (which I didn't think was the issue, but didn't want to leave the stone unturned) with: export FABRIC_START_TIMEOUT=60 ... and while it did the delay, it did not change the issue. Not an expert on any other virtual IPs in the docker world ... or if there is some env var I can set for the peer. In doing some docker network investigation ... I see that the "composer-default" network in docker knows of 3 containers
couchdb "172.18.0.4/16"
orderer.example.com "172.18.0.2/16"
ca.org1.example.com "172.18.0.3/16"
So it may be that there is something odd with peer where he is not being properly registered into that network? Thanks
So po
One last item ... peer container does show up for a while (maybe was registered with composer-default network at that point) ... but it later goes away. I may need to grab a debug from that guy.
OK, last of the evening, I got the log from the peer, and it is dying waiting for couchdb:
panic: Error in instantiating ledger provider: Unable to connect to CouchDB, check the hostname and port: Get http://couchdb:5984/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
But couchdb container is up:
480b46c41e87 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-ent…" 13 minutes ago Up 13 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
and appears to be listening fine:
netstat -ant | grep 598
tcp6 0 0 :::5984 :::* LISTEN
So it could be the couchdb reference, but composer-default network did mention a specific couchdb container. Hoping someone else has seen this and it is not just me being terribly challenged.
[ ](https://chat.hyperledger.org/channel/composer?msg=xPAfs6rSEAnmepAre) @horeaporutiu Requires synchronisation to the ibm blockchain.,
but my error still persist in terms of time-out though.
Hi any specific place whe
Hi I am just started with Hyperledger composer on the web playground. Wanted to know is there any specific place where I can know the supported syntax for data types for my model file. Eg. How do I use Date . Any help would be appreciated.. thanks
Has joined the channel.
Hello everyone, I have a question, how scalable is Hyperledger composer? Can I do a production ready environment for hypelrdger composer?
I am 90% complete with my POC.
Has joined the channel.
I am looking for any wiki to understand on - How an application build using hyperledger-composer could be deployed on Hyperledger-Fabric
Hi all,
Can anyone tell me where i can find the .cto file in fabric network after deploying .bna file ?
Hello everyone,
I was trying to test chaincode using node js. But i am getting an error while executing the following command:
CORE_PEER_LOCALMSPID=Org1MSP CORE_PEER_MSPCONFIGPATH=/home/composer/Hyperledger/src/github.com/hyperledger/fabric-samples/basic-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp peer chaincode install -l node -n mycc -v v0 -p /home/composer/Hyperledger/src/github.com/hyperledger/fabric-samples/basic-network/nodecc/
*Error : ERRO 001 Fatal error when initializing core config : error when reading core config file: Unsupported Config Type ""*
Has joined the channel.
Has joined the channel.
Has joined the channel.
can I get any sample BNA filefor supply chain?
in composer
Error: BusinessNeworkCardStore Abstract function called - getWallet..
why we get this error
[ ](https://chat.hyperledger.org/channel/composer?msg=Eq9av9zMvNfXufAzP) @suva - there is a 'perisable-network' in the samples for Composer Playground
[ ](https://chat.hyperledger.org/channel/composer?msg=tGFkRhobwS5tMQJhb) @Mohammed_Azhar - this looks more like a Hyperledger Fabroic question than one for Composer - can you ask in the #fabric channel?
[ ](https://chat.hyperledger.org/channel/composer?msg=T4ZpkMumDH83bEku2) @Laxminarayana - what version of Composer are you using? and what command task were you running when you saw the error?
Has joined the channel.
hello everybody. i come from chinese, nice to meet everyone.
[ ](https://chat.hyperledger.org/channel/composer?msg=NbAjL6FjB7AbLY9Eh) @ManojJain - have you seen the Developer Tutorial ? https://hyperledger.github.io/composer/tutorials/developer-tutorial.html
My problem statement is to use blockchain network to allow secure access to a document repository. When a file is inserted in the Document repository, its hashcode is persisted in the BCN. Is there a way, i can write a transaction to call the Document respository web service to fetch a file and send it to the requesting source. Current problems faced:
1. Transactions return Promises. I am able to call the Document Repository web service and get the file. Is there a way I can send this file to the calling application without persisting the file in BCN.
2. The datatype to handle this file.
[ ](https://chat.hyperledger.org/channel/composer?msg=yzQJQZ4Yc4o5WuAsi) @RohanMudaliar - the composer modelling language is described here:
https://hyperledger.github.io/composer/reference/cto_language
In that document there is this following definition:
DateTime: an ISO-8601 compatible time instance, with optional time zone and UTZ offset.
@rthatcher I'm using 0.18.2 ersion of the composer
[ ](https://chat.hyperledger.org/channel/composer?msg=8n4cNPzqibpKFwEZP) @rthatcher I'm using composer version 0.18.2
Hi gays,when i run "peer channel create",it show me that "Error: got unexpected status: BAD_REQUEST -- error authorizing update: error validating ReadSet: readset expected key [Group] /Channel/Application at version 0, but got version 1". what version is it? who can tell me how can fix it?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=qkHirtncxEiyzWgnr) @Laxminarayana - what commands / steps were you using when you had the error ?
[ ](https://chat.hyperledger.org/channel/composer?msg=2BjwzX2gij4r8Lcie) @xy250400 - this looks like a Hyperledger Fabric question not a Composer question - please can you ask in the #fabric channel?
[ ](https://chat.hyperledger.org/channel/composer?msg=tezMgaTDh28YidZrn) @rthatcher peer channel create -c mychannel -o orderer.example.com:7050 -f ./channel-artifacts/channel.tx
im trying to create a channel
Has joined the channel.
Clipboard - 2018年3月26日下午5点33分
good time of day. Could Anybody help me? I.ve some troubles straring composer: SyntaxError: Unexpected token =
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:374:25)
at Object.Module._extensions..js (module.js:417:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Module.require (module.js:354:17)
at require (internal/module.js:12:17)
at Object.
Hi all,
I am trying to run composer sample applications but when I am executing `npm test` I am getting an error
Hi all,
I am trying to run composer sample applications but when I am executing `npm test` I am getting an error
paradox@labrats:~/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app$ npm test
> digitalproperty-app@0.0.7 test /home/paradox/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app
> npm run bootstrapAssets && npm run listAssets && npm run submitTransaction
> digitalproperty-app@0.0.7 bootstrapAssets /home/paradox/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app
> node cli.js landregistry bootstrap
info: [DigitalProperty-App] Hyperledger Composer: Digital Property console application
info: [DigitalProperty-App] Adding default land titles to the asset registry
error: [DigitalProperty-App] Error: Error trying to ping. Error: Composer runtime (0.18.2) is not compatible with client (0.17.6)
Command failed.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! digitalproperty-app@0.0.7 bootstrapAssets: `node cli.js landregistry bootstrap`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the digitalproperty-app@0.0.7 bootstrapAssets script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/paradox/.npm/_logs/2018-03-26T09_35_58_193Z-debug.log
npm ERR! Test failed. See above for more details.
paradox@labrats:~/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app$
paradox@labrats:~/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app$ npm test
> digitalproperty-app@0.0.7 test /home/paradox/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app
> npm run bootstrapAssets && npm run listAssets && npm run submitTransaction
> digitalproperty-app@0.0.7 bootstrapAssets /home/paradox/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app
> node cli.js landregistry bootstrap
info: [DigitalProperty-App] Hyperledger Composer: Digital Property console application
info: [DigitalProperty-App] Adding default land titles to the asset registry
error: [DigitalProperty-App] Error: Error trying to ping. Error: Composer runtime (0.18.2) is not compatible with client (0.17.6)
Command failed.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! digitalproperty-app@0.0.7 bootstrapAssets: `node cli.js landregistry bootstrap`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the digitalproperty-app@0.0.7 bootstrapAssets script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/paradox/.npm/_logs/2018-03-26T09_35_58_193Z-debug.log
npm ERR! Test failed. See above for more details.
paradox@labrats:~/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app$
Can anyone help me out on this
Hi all,
I am trying to run sample application but when I am executing `npm test` it is throwing following error
paradox@labrats:~/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app$ npm test
> digitalproperty-app@0.0.7 test /home/paradox/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app
> npm run bootstrapAssets && npm run listAssets && npm run submitTransaction
> digitalproperty-app@0.0.7 bootstrapAssets /home/paradox/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app
> node cli.js landregistry bootstrap
info: [DigitalProperty-App] Hyperledger Composer: Digital Property console application
info: [DigitalProperty-App] Adding default land titles to the asset registry
error: [DigitalProperty-App] Error: Error trying to ping. Error: Composer runtime (0.18.2) is not compatible with client (0.17.6)
Command failed.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! digitalproperty-app@0.0.7 bootstrapAssets: `node cli.js landregistry bootstrap`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the digitalproperty-app@0.0.7 bootstrapAssets script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/paradox/.npm/_logs/2018-03-26T09_35_58_193Z-debug.log
npm ERR! Test failed. See above for more details.
paradox@labrats:~/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app$
Can anyone help me out on this
Hi all,
I am trying to run sample application(https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/README.md) but when I am executing `npm test` it is throwing following error
paradox@labrats:~/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app$ npm test
> digitalproperty-app@0.0.7 test /home/paradox/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app
> npm run bootstrapAssets && npm run listAssets && npm run submitTransaction
> digitalproperty-app@0.0.7 bootstrapAssets /home/paradox/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app
> node cli.js landregistry bootstrap
info: [DigitalProperty-App] Hyperledger Composer: Digital Property console application
info: [DigitalProperty-App] Adding default land titles to the asset registry
error: [DigitalProperty-App] Error: Error trying to ping. Error: Composer runtime (0.18.2) is not compatible with client (0.17.6)
Command failed.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! digitalproperty-app@0.0.7 bootstrapAssets: `node cli.js landregistry bootstrap`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the digitalproperty-app@0.0.7 bootstrapAssets script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/paradox/.npm/_logs/2018-03-26T09_35_58_193Z-debug.log
npm ERR! Test failed. See above for more details.
paradox@labrats:~/hyperledger/composer/github/composer-sample-applications/packages/digitalproperty-app$
Can anyone help me out on this
[ ](https://chat.hyperledger.org/channel/composer?msg=qH9kzfnnYGpLkWX5K) @iserikov - I think you have some problem installing Composer. Please see this section in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues
[ ](https://chat.hyperledger.org/channel/composer?msg=Yyq38Gdu3bjdm6kSB) @rthatcher Thanks a lot!!!
[ ](https://chat.hyperledger.org/channel/composer?msg=p4HwKnFzZrTeMNtm6) @Paradox - what version of Composer are you running ? `composer -v` Do you have v18.2 installed and then the Sample app and Tests have a different version specified as dependencies in the package.json ?
[ ](https://chat.hyperledger.org/channel/composer?msg=p4HwKnFzZrTeMNtm6)
[ ](https://chat.hyperledger.org/channel/composer?msg=p4HwKnFzZrTeMNtm6) I've also raised the question on SOF
@Paradox - did you see my reply ? - looks like we posted at the same time
I'm wanting to use an enum I have defined in the CTO, the docs are really sparse on this. Anyone able to give guidance?
[ ](https://chat.hyperledger.org/channel/composer?msg=dyfyMSQrfk88uix6H) @ChrisMcQueenDevelopment - have you seen the Animal Tracking sample? It makes quite a lot of use of enum. The sample can be seen on Composer Playground or directly here: https://github.com/hyperledger/composer-sample-models/blob/v0.16.x/packages/animaltracking-model/models/com.hyperledger.composer.animaltracking.cto
@rthatcher - I hadn't, but that's awesome! Thanks I'll go look at it :)
@rthatcher - It doesn't use the node api to create anything though :(
Anyone else able to help?
I am having a doubt regarding what happens internally, right from deploying .bna and then onwards within Composer. i.e how the .cto and the logic.js file is used, how composer does communication with fabric network, so on. Can anyone please clear this?
Has joined the channel.
@rthatcher hi, is it possible to know the MSPID of the current user in the composer client runtime? or the MSPID of a certain IDCard object?
@rthatcher hi, is it possible to know the MSPID of the current user in the composer client runtime? or the MSPID of a certain IDCard object? With older composer versions it used to be retrievable as "idCard.getConnectionProfile().mspID"
@rthatcher hi, is it possible to know the MSPID of the current user in the composer client runtime? or the MSPID of a certain IDCard object? With older composer versions it used to be retrievable as "idCard.getConnectionProfile().mspID", as the connection profile was associated with a single organisation
@rthatcher hi, is it possible to know the MSPID of the current user in the composer client runtime? or the MSPID of a certain IDCard object? With older composer versions it used to be retrievable as "idCard.getConnectionProfile().mspID", as the connection profile was associated with a single organization
[ ](https://chat.hyperledger.org/channel/composer?msg=aA8wmLHXRj3pjZ6sY) @rthatcher
I am little confused -
I have build composer application create and archive .BNA and application around that
Now I want to deploy this application on Fabric but it doen't have any API to install .bna
So how composer applications can be deployed into production fabric
So how composer applications can be deployed into production fabric.
Hi, everyone! I'm playing with the playground right now in order to understand Composer but I have a question about the asset. It seems like you have to include the whole asset in a transaction. Then how do you translate it for money for example? Because in that case you can only give a percentage of what you have.```
There is a quantity variable in the Commodity asset property but it's never used. (I'm talking about the trade-network example in the playground.
Thanks
Hi, everyone! I'm playing with the playground right now in order to understand Composer but I have a question about the asset. It seems like you have to include the whole asset in a transaction. Then how do you translate it for money for example? Because in that case you can only give a percentage of what you have.
There is a quantity variable in the Commodity asset property but it's never used. (I'm talking about the trade-network example in the playground.
Thanks
Hi, everyone! I'm playing with the playground right now in order to understand Composer but I have a question about the asset. It seems like you have to include the whole asset in a transaction. Then how do you translate it for money for example? Because in that case you can only give a percentage of what you have.
There is a quantity variable in the Commodity asset property but it's never used. (I'm talking about the trade-network example in the playground.)
Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=iSTyfqxw7v9AQ56SF) Thanks it worked but I am getting `Error: Composer runtime (0.18.2) is not compatible with client (0.17.6)` across this error a lot when working with the dev network. Where can I find the config file to change that in the fabric-tools dir?
[ ](https://chat.hyperledger.org/channel/composer?msg=iSTyfqxw7v9AQ56SF) Thanks it worked but I am getting `Error: Composer runtime (0.18.2) is not compatible with client (0.17.6)` across this error a lot when working with the dev network. Where can I find the config file to change that in the fabric-tools dir?
I am not even able to generate the rest server on the dev network. Previously I used the first network it was working fine there
[ ](https://chat.hyperledger.org/channel/composer?msg=gGwSZXJkS7MGdtNrz) @ManojJain Have a look at this : https://hyperledger.github.io/composer/next/tutorials/developer-tutorial.html
[ ](https://chat.hyperledger.org/channel/composer?msg=gGwSZXJkS7MGdtNrz) @ManojJain
[ ](https://chat.hyperledger.org/channel/composer?msg=gGwSZXJkS7MGdtNrz) @ManojJain Have a look at this to deploy .bna into a network
[ ](https://chat.hyperledger.org/channel/composer?msg=gGwSZXJkS7MGdtNrz) @ManojJain Have a look at this to deploy .bna into a network https://hyperledger.github.io/composer/next/tutorials/developer-tutorial.html
Hey, I'm looking at the sample project:
https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/carauction-network/lib/logic.js
In the make offer, the participant making the offer has update on the vehicle listing. Isn't this a flaw? Wouldn't they then be able to maliciously get rid of other biddings so they won?
[ ](https://chat.hyperledger.org/channel/composer?msg=jgnzHciNzvkJKKqz2) @ManojJain - there are 2 commands near the end of the developer tutorial: `composer runtime install` and `composer network start` - these commands are available after you have installed composer-cli using npm.
[ ](https://chat.hyperledger.org/channel/composer?msg=ni2BxfuvF8SgoNkCJ) @uber.twin - the New 'common' connection profile has a 'client' section at the beginning which specifies which Organisation the current ID is using. I would expect the 'client organization' to be available in the getConnectionProfile object. The Client Organization is not the same as the MSP, but it might be enough for you. If not the Organizations are also available in the ConnectionProfile and the Organization contains the MSP.
[ ](https://chat.hyperledger.org/channel/composer?msg=m2QFTWvxhnY4xzNo5) @lkchao78 - the Trade transaction in the example passes a link to a Commodity asset, rather than the whole object. You could modify that transaction:
```
transaction Trade {
--> Commodity commodity
--> Trader newOwner
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=m2QFTWvxhnY4xzNo5) @lkchao78 - the Trade transaction in the example passes a link to a Commodity asset, rather than the whole object. You could modify that transaction:
```
transaction Trade {
--> Commodity commodity
o Double newQuantity
}
```
and change the script to just update the quantity instead of the owner.
ls
[ ](https://chat.hyperledger.org/channel/composer?msg=rgcEmaSAzWqjWhSbn) @rthatcher First thanks for the answer,
then if i understand in that way you are supposed to update your own asset then create a new asset for the one receiving part of your asset (eg money)?
@rthatcher First thanks for the answer,
then if i understand in that way you are supposed to update your own asset then create a new asset for the one receiving part of your asset (eg money)?
@rthatcher First thanks for the answer,
then if i understand in that way you are supposed to update your own asset then create a new asset for the one receiving part of your asset (eg money)?
```
return businessNetworkConnection.connect(req.body.cardName)
.then(() => {
return businessNetworkConnection.ping();
})
.then(result => {
console.log(result);
return businessNetworkConnection.disconnect();
})
```
I created a composer card and now want to generate the certificate by the above function. Getting this error
`Error trying to query business network. Error: chaincode error (status: 500, message: Error: Participant 'com.varun.farms.Farm#farm_123' does not have 'READ' access to resource 'org.hyperledger.composer.system.Networ`
Do I have to grant all participants `READ` access?
[ ](https://chat.hyperledger.org/channel/composer?msg=pFWoEzvjipe36CTB3) @Paradox the runtime refers to the version of Composer that is installed on to the Peer with your Network - you can see this if you execute `docker ps -a` and you will see a container with a name such as `dev-peer0.org1.example.com-animaltracking-network-0.16.6...` this show the Composer runtime version and the network name. You have a couple of options:
1. Re-create your Fabric which will delete that container with the 18.2 runtime
2. Upgrade your client to 18.2
@rthatcher Could you see my question please :)
Hi,
Where are the "HTML project" of the API generated ? The one which is accesible usually through localhost:3000/explorer ?
It's beacause the url isn't responding
@CorentinPacaud wat do you mean?
Normally, you can access the Api of your project with this url : http://localhost:3000/explorer.
But mine is not responding. So i would like to extract the html files, if they exist
I really need this api doc
Hello Everyone, I am following this, https://hyperledger.github.io/composer/next/tutorials/google_oauth2_rest tutorial, how do I start it in multiuser mode?
or is this already multi user mode?
[ ](https://chat.hyperledger.org/channel/composer?msg=L2HJuJTHtwqqt8Aji) @mikeleow `composer-rest-server -c
oh its alright, already set it to multi user mode
[ ](https://chat.hyperledger.org/channel/composer?msg=w6gNrogYmJdpYYiYL) @CorentinPacaud you can go to `localhost:3000/explorer/swagger.json` to get your swagger document. As far as I know, there is no HTML -- but you can take the swagger document and your REST API call (POST, GET, etc) and plug it into your HTML for a front end
@grice_32 Doesn't work : w3m http://localhost:3000/explorer/swagger.json
w3m: Can't load http://localhost:3000/explorer/swagger.json.
[ ](https://chat.hyperledger.org/channel/composer?msg=K9CZrCAL7jsbcgQQr) @CorentinPacaud Have you started your REST Server? Obviously, you need the REST Server up in order to get to the swagger document
@grice_32 Yes
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
Hello... In composer `events`are emitted by the transaction processor function (TP) when transaction is successful and committed to the block (I mean, when peer execute TP again during validation check and before commit)?
Hello everyone!
Does anyone knows why I have this error while I try to install the runtime to my peer?
composer runtime install -c PeerAdmin@onuguns-network-org1-only -n onuguns-network
⠸ Installing runtime for business network onuguns-network. This may take a minute...E0326 17:06:32.850929930 6543 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
E0326 17:06:32.851406380 6543 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
⠏ Installing runtime for business network onuguns-network. This may take a minute...E0326 17:06:34.320418763 6543 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
E0326 17:06:34.320609154 6543 ssl_transport_security.c:921] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
✖ Installing runtime for business network onuguns-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Response from attempted peer comms was an error: Error: Connect Failed
I do not have the TLS enabled at the peers.
Thanks ! :)
Hi,
Is it possible to do a get query on a transaction without going through historian? It returns an empty array for me. I'm wondering if it is permissions related.
Even the swagger UI returns an empty array, unfortunately
Has joined the channel.
Has joined the channel.
Hello. I'm trying to understand why a `composer ping` commande keep failing. My setup is on Microsoft Azure and the composer tutorial steps succeed up to the point of doing this ping. I get the following error `Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'locku3hhv-ca0.org1.example.com' does not exist"}]]
`. How could I get more details? I've tried different values for the CA name, but none of the obvious ones (given the configuration) work. Is there a way to show a full debugging trace for instance?
Hello. I'm trying to understand why a `composer ping` command keeps failing. My setup is on Microsoft Azure and the composer tutorial steps succeed up to the point of doing this ping. I get the following error `Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"CA 'locku3hhv-ca0.org1.example.com' does not exist"}]]`. How could I get more details? I've tried different values for the CA name, but none of the obvious ones (given the configuration) work. Is there a way to show a full debugging trace for instance?
[ ](https://chat.hyperledger.org/channel/composer?msg=hYJP59qywBgWoyy7i) Fixed my issue, was permissions! Urgh :P
[ ](https://chat.hyperledger.org/channel/composer?msg=XXnHcYFkaZbmebbMJ) @AkshayJindal - While you can issue an 'emit' at any point in your transaction logic, that event will not actually be emitted until the transaction is committed.
[ ](https://chat.hyperledger.org/channel/composer?msg=QqTqmr9ygiNCss5ZL) @rthatcher so can I use event emmiting timestamp to calculate time taken by transaction to commit?
@Gerard9494 - are you working on a 'custom' fabric or working through a tutorial? If you have TLS disabled on Fabric (Peers and CA), what do you have in your connection.json for the URLS - hopefully http:// and grpc:// - not https and grpcs ?
[ ](https://chat.hyperledger.org/channel/composer?msg=hYJP59qywBgWoyy7i) @ChrisMcQueenDevelopment - there are 2 parts to the historian data, and they are deliberately separated. Visibility of the 2 parts is controlled by different elements of the ACL. Using the Rest API - under system/historian you see the 'system' view (if you have access) and on the transaction side you see the 'data' under the endpoint for the transaction.(if you have access). To get the complete picture you would need to access both parts - linked by the TransactionID.
[ ](https://chat.hyperledger.org/channel/composer?msg=hYJP59qywBgWoyy7i) @ChrisMcQueenDevelopment - there are 2 parts to the historian data, and they are deliberately separated. Visibility of the 2 parts is controlled by different elements of the ACL. Using the Rest API - under system/historian you see the 'system' view (if you have access) and on the transaction side you see the 'data' under the endpoint for the transaction.(if you have access). To get the complete picture you would need to access both parts - linked by the TransactionID.
And now I just see that you have found the resolution ! :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=r7wYnEwsYsd22wfsj) @fabienpe - which tutorial are you following ?
[ ](https://chat.hyperledger.org/channel/composer?msg=xzyPyn2btCr9ih47o) Hello.. If some transaction fails then it throws error like `MVCC_Read_Conflict` then I am capturing this error and re-submitting my transaction. But in case if transaction is succesful then I would like to do something at client side for example, . Should I emit event or is there any messge which can be captured?
[ ](https://chat.hyperledger.org/channel/composer?msg=xzyPyn2btCr9ih47o) @rthatcher Hello.. If some transaction fails then it throws error like `MVCC_Read_Conflict` then I am capturing this error and re-submitting my transaction. But in case if transaction is succesful then I would like to do something at client side for example, . Should I emit event or is there any messge which can be captured?
Has joined the channel.
@varunagarwal generally READ is required to have connect access to the business network by your participant. So the minimal rule for participants (in your namespace) to access it would be something like ```rule AllAccess {
description: "grant participants access to the Network"
participant: "com.varun.farms.*"
operation: READ
resource: "org.hyperledger.composer.system.Network"
action: ALLOW
} ```
Using Composer 0.17.4. I am trying to set up a businessNetworkConnection to handle a specific event type. However, i'm finding that the businessNetworkConnection that can receive an event is the one that created that event.
Using Composer 0.17.4. I am trying to set up a businessNetworkConnection to handle a specific event type. However, i'm finding that the businessNetworkConnection that emits the event is the only one can receive it. What am I missing?
Getting an asset from the registry is an operation that goes through consensus?
Has joined the channel.
can we get list of all transaction names using composer command or some other source?
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hello experts - need some help - i am able to add participants using composer cli but get this error "No certificates found for provided serial and aki" when trying to issue identity..any suggestions?
Has joined the channel.
Has joined the channel.
ubuntu@ubuntu:~/composer-sample-networks/packages/basic-sample-network/dist$ composer network start -c PeerAdmin@hlfv1 -a ./basic-sample-network.bna -A admin -S adminpw
Starting business network from archive: ./basic-sample-network.bna
Business network definition:
Identifier: basic-sample-network@0.1.14
Description: The Hello World of Hyperledger Composer samples
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND
Command failed
can any one help me? thank u
I am having a doubt regarding what happens internally, right from deploying .bna and then onwards within Composer. i.e how the .cto and the logic.js file is used, how composer does communication with fabric network, so on. Can anyone please clear this?
Hi All, I have a network setup with Two channels , i am confused how to write composer for these two channels . Any help here? And does composer support multi-channel ? ( some where i read that it does not , is it true? )
how long it took , when you executing those composer install command, 10mins past since i enter " npm install -g composer-cli" is that normal?
[ ](https://chat.hyperledger.org/channel/composer?msg=6QMjdct6bKEqScqjP) @davidhu depending on your connection speed it may take some time
[ ](https://chat.hyperledger.org/channel/composer?msg=qaPSAm9pTHdhWhqi8) @gaeshi thans, by the way, can I execute those command concurrently
what commands?
@davidhu what commands?
npm install -g composer-rest-server ,g generator-hyperledger-composer..
i tried, it's ok
[ ](https://chat.hyperledger.org/channel/composer?msg=cLYaoR4AyNqY9iQgi) @rthatcher Once the standard Microsoft deployment complete, I followed this page https://github.com/mnoncloud/fabriconAzure/blob/master/Creating%20Channel%20and%20adding%20Peers to add peers do a channel, then I've been following, from step 3, the following tutorial: https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org At step 10 I encounter the problem.
[ ](https://chat.hyperledger.org/channel/composer?msg=cLYaoR4AyNqY9iQgi) @rthatcher Once the standard Microsoft deployment completed, I followed this page https://github.com/mnoncloud/fabriconAzure/blob/master/Creating%20Channel%20and%20adding%20Peers to add peers do a channel. Then I created an additional VM part of the same security domain, on which I installed the pre-requisites for composer and on which I've been following, from step 3, the following tutorial: https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org At step 10 I encounter the problem.
Has joined the channel.
Hi @rthatcher, I'm working in a 'custom' fabric and it was exactly the problem you said (i had grpcs and https). Thank you very much for your help ! :)
Has joined the channel.
buntu@ubuntu:~/composer-sample-networks/packages/basic-sample-network/dist$ composer network start -c PeerAdmin@hlfv1 -a ./basic-sample-network.bna -A admin -S adminpw
Starting business network from archive: ./basic-sample-network.bna
Business network definition:
Identifier: basic-sample-network@0.1.14
Description: The Hello World of Hyperledger Composer samples
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: Error: Invalid results returned ::NOT_FOUND
Command failed
@rocket.cat can u help me?
Has joined the channel.
Hello.. If two different transactions are updating two different parameters of same resource (participant or asset) at same time..will it throw a read conflict error?
[ ](https://chat.hyperledger.org/channel/composer?msg=5auS3rKBJkhQ2vjjK) @fabienpe - The Azure platform is not one I have tested. (I originally thought you just had Ubuntu VM on Azure, not the Fabric service). I assume the runtime install and network start commands worked OK? I would look carefully at the connection.json for errors around the CA and MSP (http vs https ?) - also what version of the Fabric is running on Azure, and are you using the right version of the Composer Cli for that Fabric version ?
[ ](https://chat.hyperledger.org/channel/composer?msg=hLYjjrkgcF62XpWEQ) @yjqdgx - the Knowledge Wiki has a section on runtime errors which should help : https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--runtime-install-errors-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=ZYWZt758QEmDpRuJN) @AkshayJindal - I would think that could happen especially in a multi-peer configuration. Applications you write need to be handle failed transactions.
[ ](https://chat.hyperledger.org/channel/composer?msg=YvAbuSaf4zm5vFtz8) @rthatcher I am trying to do the same.. I am trying to capture the failed transaction and re-submit the failed one.. I want to know when any update happen, does it happen at resource parameter level or complete resource structure level?
[ ](https://chat.hyperledger.org/channel/composer?msg=o79MGRMnAeE8qR237) @TomWeiss - there are some files in this folder (or a similar folder on your system) `~/.nvm/versions/node/v8.9.0/lib/node_modules/composer-rest-server/server` which may help you. The rest server is based on Loopback (Strongloop) so information from there should help too. https://loopback.io/doc/index.html
Hello.. Just a conceptual question..If there is one transaction which is reading/fetching the current state of all other participants and trying to make the decision (selection of best participant for exchange) then in this case if any of other participant is updating its state or its asset state then will this read transaction will fail or will the read the last state of each participant even though the current state could be updated?
Hello.. Just a conceptual question..If there is one transaction which is reading/fetching the current state of all other participants and trying to make the decision (selection of best participant for exchange) then in this case if any of other participant is updating its state or its asset state then will this read transaction will fail or will this tx read the last stored state of each participant even though the current state could be updated?
Hi All, I have a network setup with Two channels , i am confused how to write composer for these two channels . Any help here? And does composer support multi-channel ? ( some where i read that it does not , is it true? )
[ ](https://chat.hyperledger.org/channel/composer?msg=QHBvqGSgfQDpL3fE5) @jaswanth - Connections made to Fabric and a Channel are made with a Business Network Card, and the Card specifies the channel. So in a 'normal' configuration different channels require different cards, and so a Business Transaction can only write to one channel through one card. However through a new feature it is possible to execute a transaction that invokes a 2nd Network (which could be on a separate channel). This tutorial covers an example: https://hyperledger.github.io/composer/next/tutorials/invoke-composer-network - NOTE: that this is from the 'Next' stream not 'Latest', and the current 'Next' version is v0.18.2. There are different Fabric requirements for latest/next.
[ ](https://chat.hyperledger.org/channel/composer?msg=jpSLS9KCZuHCLdkAu) @DRSK - this is a queston with a very long possible answer! My short version is that Composer is written on top of Fabric Node SDK, and uses Connection Profiles (with Business Network Cards) to connect to the Fabric. Can I suggest that you work through the Composer Tutorials to gain a practical understanding of how the components work. https://hyperledger.github.io/composer/tutorials/tutorials
[ ](https://chat.hyperledger.org/channel/composer?msg=GM8zHfbRjaWFyZjah) @rthatcher Thank you rthatcher .
[ ](https://chat.hyperledger.org/channel/composer?msg=GM8zHfbRjaWFyZjah) @rthatcher Thank you
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=PRoBTwzehLSGx356q) @rthatcher
hi, i'm trying to get all trades that happend to a ticket and use this query:
`SELECT org.acme.biznet.Trade WHERE (ticket.ticketId == _$ticketId)`
But it doesn't seem to work , am i doeing the query wrong ?
Is it possible to use Composer to model a supply chain between various companies (with different channels, possibly, and different permissions)? Or would this constitute "more than 1 business network", and as such be out of the scope for composer?
Hi..
After successful google authentication on REST server, I was calling RST API /GET System/Historian, but its saying `{
"error": "no response from server"
}`
Hi..
After successful google authentication on REST server, I was calling REST API /GET System/Historian, but its saying
`{
"error": "no response from server"
}`
what could be the error?
Hi..
After successful google authentication on REST server, I was calling REST API /GET System/Historian, but its saying
`{ "error": "no response from server" }`
what could be the error?
Hi..
After successful google authentication on REST server, I was calling REST API /GET System/Historian, but its saying
`{ "error": "no response from server" }`
what could be the reason?
[ ](https://chat.hyperledger.org/channel/composer?msg=4BJgjKfCJ9gajYDpA) @pedromlcosta in my understanding composer doesn't support multi-channel yet.
[ ](https://chat.hyperledger.org/channel/composer?msg=ztAGMtP8qLaLTfLFt) Just reading now the previous answer given by @rthatcher [ ](https://chat.hyperledger.org/channel/composer?msg=GM8zHfbRjaWFyZjah)
Hi all , Any tutorial for setting up Hyperledger composer on Multiple Hosts ?
[ ](https://chat.hyperledger.org/channel/composer?msg=3WBduh6qoudtZSyLo) @kevinsyx - can you share your model ? for us to help with the Query ?
[ ](https://chat.hyperledger.org/channel/composer?msg=8D5QiwASEvtJxvLTE) @mahoney1 can you help me out with this. I am trying to build UI part for an application and don't want to hardcode any transaction details. So, I would like to know is there a way to get all the transaction names using composer cli
[ ](https://chat.hyperledger.org/channel/composer?msg=4BJgjKfCJ9gajYDpA) @pedromlcosta - it looks like you can see the previous discussion on channels :-) But Composer requires Hyperledger Fabric and can support multi-organisation. You don't have to use channels for security, Composer has ACLs that might have enough security for your needs.
[ ](https://chat.hyperledger.org/channel/composer?msg=BBTsQXqHXweWNmywT) @Unni_1994 - Setting up Composer for a Multi Host Fabric is pretty easy - you just create connection.json with the details of the Fabric you have deployed. However you probably want a 'one-stop' tutorial for setting up a Fabric and deploying Composer Business Networks on it. There are some guides provided my members of this channel but I have not tested them:
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f
Thanks
@rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=w8M8BBGBjFr6TnccH) @Pranoti - what do you see in the Log for the REST server ?
Here is the log of rest docker container
Unhandled error for request GET /api/system/historian: Error: Error trying invoke business network. Error: REQUEST_TIMEOUT
at _initializeChannel.then.then.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:959:34)
at
Here is the log of rest docker container
Unhandled error for request GET /api/system/historian: Error: Error trying invoke business network. Error: REQUEST_TIMEOUT
at _initializeChannel.then.then.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:959:34)
at
sure , the model looks like this `asset Ticket identified by ticketId {
o String ticketId
o String description
o Double price
o Double maxPrice
--> Trader owner
}
transaction Trade {
--> Ticket ticket
--> Trader newOwner
}
`
[ ](https://chat.hyperledger.org/channel/composer?msg=trmFxJZLN9giGG2hz) @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=dDxaCfpsThnYhhywM)
If i use the following query `SELECT org.acme.biznet.Trade WHERE (ticket.ticketId == _$ticketId)` I can get the tickets i want by providing a ticket `resource:org.acme.biznet.Ticket#1` as parameter but i would want to be able to get it by just entering the id
If i use the following query `SELECT org.acme.biznet.Trade WHERE (ticket == _$ticket)` I can get the tickets i want by providing a ticket `resource:org.acme.biznet.Ticket#1` as parameter but i would want to be able to get it by just entering the id ('1')
[ ](https://chat.hyperledger.org/channel/composer?msg=dDxaCfpsThnYhhywM)
@Pranoti - I assume that after logging in with Google Credentials you are able to Import a Card OK? Do you get the same error if you try to GET one of your assets or commodities?
Yes I am able to import the card and I'm able to call the REST api's related to wallet. But as you are saying i'm not able to GET any assets or commodities.
@rthatcher Yes I am able to import the card and I'm able to call the REST api's related to wallet. But as you are saying i'm not able to GET any assets or commodities. Yes and getting the same error for the rest of the API's as a REQUEST_TIMEOUT
Yes and getting the same error for the rest of the API's
Yes and getting the same error for the rest of the API's as a REQUEST_TIMEOUT
[ ](https://chat.hyperledger.org/channel/composer?msg=tnttmR8799DDSnZ5N) @Pranoti - I wonder if there is something wrong with the Card you imported - how did you create the card? - The .card file is a zip archive - can you unzip the .card file and show the connection.json file in it?
@All , I am trying to write some details in registry. I am getting the result. But i m not getting evenid and time stamp at last of the result
example:
"billAddress": {
"$class": "org.acme.base.BillingAddress",
"city": "THANE",
"country": "INDIA",
"locality": "VIJAYGARDEN",
"street": "RR",
"street2": "TT",
"street3": "UU",
"postalCode": "615"
}
}
"eventId":"240b908c00136e2f1e6a7b5e8d79f87e0c687f346e453acf0e3a07bacbee3742#0","timestamp":"2018-01-04T11:04:16.741Z"}
evenid and time stamp is added while we are adding to the registry or not
my result looks like as below
{
"$class": "org.acme.test.PurchaseOrder",
"orderId": "5678",
"orderDate": "2018-03-27T13:26:19.242Z",
"quantity": "1",
"prodPrice": "150 USD",
"deliveryDate": "2018-03-27T13:26:19.242Z",
"customerName": "SUBHA",
"shipAddress": {
"$class": "org.acme.base.ShippingAddress",
"city": "THANE",
"country": "INDIA",
"locality": "GHODBUNDER",
"street": "AA",
"street2": "BB",
"street3": "CC",
"postalCode": "612"
},
"billAddress": {
"$class": "org.acme.base.BillingAddress",
"city": "THANE",
"country": "INDIA",
"locality": "VIJAYGARDEN",
"street": "RR",
"street2": "TT",
"street3": "UU",
"postalCode": "615"
}
}
i want to know whether evenid and timestamp is automatically added or not
or while querying the result it is coming?
plz somebody help me
[ ](https://chat.hyperledger.org/channel/composer?msg=pCyDAEg7z4hHhsX6o) this was only happening in unit tests...so it's working fine when deployed to a Fabric.
[ ](https://chat.hyperledger.org/channel/composer?msg=R7er7PWjycJNhexXe) @rthatcher contents of connection.json
{
"name": "supply-chain-network",
"x-type": "hlfv1",
"x-commitTimeout": 300,
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},
"channels": {
"composerchannel": {
"orderers": ["orderer.example.com"],
"peers": {
"peer0.org1.example.com": {},
"peer1.org1.example.com": {}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": ["peer0.org1.example.com", "peer1.org1.example.com"],
"certificateAuthorities": ["ca.org1.example.com"]
}
},
"orderers": {
"orderer.example.com": {
"url": "grpc://orderer.org1.example.com:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://peer0.org1.example.com:7051",
"eventUrl": "grpc://peer0.org1.example.com:7053"
},
"peer1.org1.example.com": {
"url": "grpc://peer1.org1.example.com:8051",
"eventUrl": "grpc://peer1.org1.example.com:8053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://ca.org1.example.com:7054",
"caName": "ca.org1.example.com"
}
}
}
I guess I'll perform the whole thing again tomorrow. If the issue still persist then I'll let you know tomorrow again.
Thanks for the help though :)
[ ](https://chat.hyperledger.org/channel/composer?msg=McMw8DYqmo4mgHbGs) @suva - querying the Registries will return you the 'Current State' from the World State Database. I think you might want to Query the Transaction or the Historian.
[ ](https://chat.hyperledger.org/channel/composer?msg=cDDARLQjCHL6QF34m) @rthatcher you're right, having the
Hello. when I install runtime on my network I get next:
```
E0327 17:18:35.742781955 4355 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0327 17:18:35.772220810 4355 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
✖ Installing runtime for business network hc-blockchain. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
```
What's wrong?
[ ](https://chat.hyperledger.org/channel/composer?msg=xQiyk9X6BwHzbMgyg) @kevinsyx - Asking a 'user' to type in the fully qualified resource is not practical I agree. In reality a user won't be directly hitting the REST server, you will likely have an App that will make that call for the user, so you can build the long value. You could also create a Filter so you could generate custom filters for your users. So in the Trade-Network example you would make a GET request to the Trade transaction with a filter like {"where": {"commodity": `{"=":"resource:org.acme.trading.Commodity#COAL"}}}`
@rthatcher Ok thx , i looked at filters but tought it might be worse for performance but i think if i want to have better performance i have to go to fabric itself.
[ ](https://chat.hyperledger.org/channel/composer?msg=5S48HAJ7MmeLtgNG7) @argman - I would think that you have an error with the TLS certificates specified in your connection.json - perhaps the wrong certificates, or not correctly formatted. Depending on the addresses used in the connection.json you might also have to specify "ssl-target-name-override" for the peers. Are you working on a custom fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=g4TffcEPW4Z7XASw3) @kevinsyx - the next version of composer to be released will be automatically building CouchDb indices too:
"Automatic Couch DB index generation for queries. We now automatically index Couch DB for any queries present within your business network definition during the deployment phase. This means that there is no requirement to manually perform the indexing in order to increase query performance. Please note that we only create indexes for queries contained within your query files."
See the draft release notes for Composer v0.19.0: https://github.com/hyperledger/composer/releases
[ ](https://chat.hyperledger.org/channel/composer?msg=eB4bTioGzTCmmpKPq) @rthatcher I'm still figuring out how I will model it, but I'll have to be careful, because some data from some companies should probably be private to members of other companies.
Hello experts - need some help - i am able to add participants using composer cli but get this error "No certificates found for provided serial and aki" when trying to issue identity..any suggestions?
Hello experts - need some help - i am able to add participants using composer cli but get this error "No certificates found for provided serial and aki" when trying to issue identity..any suggestions? I am using the admin card for issuing identity. There is no problem with the card itself.
Nevermind - I figured it out
I updated go to 1.9, updated fabric-ca to 1.1.0 and rebuilt composer - that solved the issue
I'd like to build a CI/CD pipeline for my composer application. I want to build from a cloud based Git repo, then deploy to the "cloud sandbox" environment on IBM Container Services (environment described at https://ibm-blockchain.github.io/). I have little background creating CI/CD configurations. The general guidance and tutorials on the IBM Garage https://www.ibm.com/cloud/garage/toolchains may be helpful. However, I think that there are also specific challenges when working with Fabric and Composer in this CI/CD environment. E.g., are there certificates involved in the connection for the deployment? Where do I store and access the necessary Identity Cards? How do I run the correct versions of the Composer tools? and so forth. Can any SME's point to available resources and/or samples that would help jumpstart this task? Much thanks -KipH.
A related question to my prior post just now -- Is the toolchain used to build and test the HL Composer itself (at https://github.com/hyperledger/composer/blob/master/contrib-notes/getting-started.md) available for viewing?
passport
Has joined the channel.
Has joined the channel.
hi,guys.when i run "composer network start ",it shows me "Error: package.json must exist".I think when i make the bna file,it has bean packaged in the bna.And i think there is not options for me to point the package.json.
Clipboard - 2018年3月28日上午10点32分
how can i solve the error.
when i run ./createPeerAdminCard.sh , i get a successful msg: Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
and an error:
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier-Unexpected identifier
Command failed
Hyperledger Composer PeerAdmin card has been imported
There are no Business Network Cards available.
is it ok, can i go on or i should solve this error?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=24ehp59Y5aZAuGHWW) @davidhu
Most probably because of the nodejs version .
i followed the instruction, nodejs version is v6.13.1 below v7.x
I'm trying to deploy a business network, but the request is time out. What do you think can be the reason for that ?
I saw the logs of the chaincode container and they were related to node
do you think request being timed out has anything to do with the reachability of npm repository or just a shit host machine which couldn't start the chaincode containers on time?
Clipboard - 2018年3月28日下午1点25分
how can i modify the network version? Anyone can tell me?
Has joined the channel.
is there a way to query based on multiple assets?
something sort of join?
i found a inconsistent instruction about nodejs version
this one say nodejs should be 6.2-6.10 https://github.com/IBM/BlockchainNetwork-CompositeJourney/blob/master/README-cn.md
and this one say 8.9 to below 9.0 https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
i followed the first one, maybe i need to reinstall the node
[ ](https://chat.hyperledger.org/channel/composer?msg=i8BNuGRq9kNJNeji4) @rthatcher Yes, it's custom fabric. What should I specify in `ssl-target-name-override`? Name of container?
how to add resolve all with query
I have 2 assets
asset Demographics identified by SSN
{
o String id optional
o String SSN
o String FirstName
o String LastName
o String DateofBirth
}
asset Membership identified by id
{
o String id
--> Demographics demographics
}
```
asset Demographics identified by SSN
{
o String id optional
o String SSN
o String FirstName
o String LastName
o String DateofBirth
}
asset Membership identified by id
{
o String id
--> Demographics demographics
}
```
can i query something like `SELECT org.model.Membership WHERE (demographics.SSN == _$SSN)`
playground says its a valid query but doesnt return results :(
Which Version of Hyperledger Composer is at the moment at composer-playground.mybluemix ?
Does "Playground v0.16.6" mean it is the Hyperledger Composer v0.16.6 ?
ReferenceError: error is not defined , throw new error is not working
any one faced similar issue
?
[ ](https://chat.hyperledger.org/channel/composer?msg=7BTLZk4vFZvbyymZZ) @a.ochs Yes it is working off that version
how to invoke a transaction in another business network from a business network, which will commit changes on the another network?
Hi everyone =)
I would like to be sure about something: are channels and business networks correlated?
Because each business network has its own registry/ledger isn't it?
Thanks in advance!
Hello everyone,
Does somebody know why I have this problem at the moment to start a network using composer? I haven't found the solution a that is working at the chat.
I have 3 organizations, alice -> org1 admin bob -> org2 admin gerard -> org3 admin
Processing these Network Admins:
userName: alice
userName: bob
userName: gerard
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (onuguns:0.16.4)-open /var/hyperledger/production/chaincodes/onuguns.0.16.4: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (onuguns:0.16.4)-open /var/hyperledger/production/chaincodes/onuguns.0.16.4: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (onuguns:0.16.4)-open /var/hyperledger/production/chaincodes/onuguns.0.16.4: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (onuguns:0.16.4)-open /var/hyperledger/production/chaincodes/onuguns.0.16.4: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (onuguns:0.16.4)-open /var/hyperledger/production/chaincodes/onuguns.0.16.4: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (onuguns:0.16.4)-open /var/hyperledger/production/chaincodes/onuguns.0.16.4: no such file or directory)
Thanks ! :)
Hello everyone,
Does somebody know why I have this problem at the moment to start a network using composer? I haven't found the solution a that is working at the chat.
I have 3 organizations, alice -> org1 admin bob -> org2 admin gerard -> org3 admin
Error:
Processing these Network Admins:
userName: alice
userName: bob
userName: gerard
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (onuguns:0.16.4)-open /var/hyperledger/production/chaincodes/onuguns.0.16.4: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (onuguns:0.16.4)-open /var/hyperledger/production/chaincodes/onuguns.0.16.4: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (onuguns:0.16.4)-open /var/hyperledger/production/chaincodes/onuguns.0.16.4: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (onuguns:0.16.4)-open /var/hyperledger/production/chaincodes/onuguns.0.16.4: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (onuguns:0.16.4)-open /var/hyperledger/production/chaincodes/onuguns.0.16.4: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (onuguns:0.16.4)-open /var/hyperledger/production/chaincodes/onuguns.0.16.4: no such file or directory)
Thanks ! :)
[ ](https://chat.hyperledger.org/channel/composer?msg=8rhrq2Hot9G5b8Sfn) @rthatcher Thanks a lot bro, It seems it was some problem with the packages. I removed and then installed all the packages, now everything is working fine.
@rthatcher @mahoney1 - I am just curious to know if i want to declare an asset/participant/transactions(which is not declared in model(.cto) file)on the fly in an existing business-network, which is up and running on Fabric, via my service layer - is this scenario possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=5JqudujD9HZJqeH7y) @username343 Have a look at this: https://hyperledger.github.io/composer/next/tutorials/invoke-composer-network
I want to know how do i submit a transaction which will change the state on another network , not just query it
Has joined the channel.
@Paradox I want to know the syntax of how to invoke the transaction declared on another network
Hi! Here I am one again bothering you with tests. Can someone share the syntax about how to create ad asset and add it to a registry in the tests?
Hi! Here I am one again bothering you with tests. Can someone share the syntax about how to create a partecipant and add it to a registry in the tests?
Hi, I have a question about Composer REST Server. We are using /system/historian method to display history of all transactions. The list is quite long and there is no filter parameter, which is present on other registries. We would only need support for pagination (offset and limit). Is this a technical limitation, or just not yet implemented? Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=YZYghRqkx3dn6jQda) It's solved ! I didn't have the correct name at the package.json
Hello! I run Composer on my custom Fabric network. When I want to check REST server on `localhost:3000` I see next:
```{"error":{"statusCode":500,"name":"Error","message":"Cannot find module './lib/mediaType'","code":"MODULE_NOT_FOUND","stack":"Error: Cannot find module './lib/mediaType'\n at Function.Module._resolveFilename (module.js:536:15)\n at Function.Module._load (module.js:466:25)\n at Module.require (module.js:579:17)\n at require (internal/module.js:11:18)\n at loadModule (/home/ubuntu01/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/node_modules/negotiator/index.js:114:16)\n at Negotiator.mediaTypes (/home/ubuntu01/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/node_modules/negotiator/index.js:76:29)\n at Accepts.type.Accepts.types (/home/ubuntu01/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/node_modules/accepts/index.js:105:33)\n at IncomingMessage.req.accepts (/home/ubuntu01/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/request.js:134:23)\n at ServerResponse.res.format (/home/ubuntu01/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/response.js:664:11)\n at ServerResponse.redirect (/home/ubuntu01/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/response.js:925:8)\n at router.get (/home/ubuntu01/.npm-global/lib/node_modules/composer-rest-server/server/boot/root.js:20:13)\n at Layer.handle [as handle_request] (/home/ubuntu01/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at next (/home/ubuntu01/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/route.js:137:13)\n at Route.dispatch (/home/ubuntu01/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/route.js:112:3)\n at Layer.handle [as handle_request] (/home/ubuntu01/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at /home/ubuntu01/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:281:22"}}```
What is wrong?
I am trying to deploy a composer business network to Fabric v.1.1 runtime, I am using composer-cli@0.18.2 and composer-playground@0.18.2 I created a business network card for my network which is up and running, the problem is when I create network card the connect button stays disabled and I have no idea what's wrong with it.
Fabric network:
Channel: composerchannel, org1MSP, 1 peer, 1ca tls enabled.
@All, I m getting the below error while trying to query from registry
SyntaxError: Failed to parse null: Unexpected token
My code is:
function GetPOByOrderID(OrderId){
return getAssetRegistry('org.acme.securebox')
.then(function (assetRegistry) {
return query('selectPOByorderID', {'orderId':orderId.orderId});
.then(function (results) {
var promises = [];
for (var n = 0; n < results.length; n++) {
var trade = results[n];
}
// we have to return all the promises
return Promise.all(promises);
});
});
}
query selectPOByorderID {
description: "Select all PO details on their orderID"
statement:
SELECT org.acme.securebox.Order
WHERE (orderId ==_$orderID)
}
transaction GetPOByOrderID {
o String OrderID
}
I have included the transaction on cto file
plz help me how to resolve the issue
I am able to solve this error, but not getting the result . My requirement is passing the orderID , i will fetch all the details of that order from registry
I am getting the error as
Clipboard - March 28, 2018 4:35 PM
though I have all the details for that ID
Clipboard - March 28, 2018 4:36 PM
after i reinstall nodejs the previous error has gone, but i got new error when execute $ sudo ./createPeerAdminCard.sh
Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'-Cannot find module '/usr/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64/grpc_node.node'
Command failed
Hyperledger Composer PeerAdmin card has been imported
There are no Business Network Cards available.
can someone help me out
[ ](https://chat.hyperledger.org/channel/composer?msg=37s2A62NpgJh4DkbB) @itskhushal try to ping your business network with the card you've created: composer network ping --card USER@YOUR-NETWORK
[ ](https://chat.hyperledger.org/channel/composer?msg=q3Wga3i9h52zkPawo) @davidhu I came across similar error, while installation of node modules due to some permission issues the module was not installed properly. To solve it I changed npm's default directory manually and then reinstalled the module and now it works flawlessly. To do that visit [this](https://docs.npmjs.com/getting-started/fixing-npm-permissions) doc
[ ](https://chat.hyperledger.org/channel/composer?msg=q3Wga3i9h52zkPawo) @davidhu I came across similar error, due to some permission issues the module was not installed properly. To solve it I changed npm's default directory manually and then reinstalled the module and now it works flawlessly. To do that visit [this](https://docs.npmjs.com/getting-started/fixing-npm-permissions) doc
Stupid question:
Should I use composer-rest-server for production?
Stupid question:
Should/Could I use composer-rest-server for production?
@Paradox Thank u very much, i'm trying it
[ ](https://chat.hyperledger.org/channel/composer?msg=iKH227hbcpMkPvhS9) @Varun2887 You will be not able to do what you want in a simple request
:9
:(
can it be done it in some other way
where in we need not pull the complete registery and do it at client side
You have to code it, first get all Demographics where SSN== _$SSN, then get all Memberships which reference this Demographics
You have to code it on client side, first get all Demographics where SSN== _$SSN, then get all Memberships which reference this Demographics
yep
Hello there,
I am looking for to avoid MVCC_READ_CONFLICT because of the concurrency, I saw this in Fabric https://github.com/hyperledger/fabric-samples/tree/release/high-throughput, but it is specific for Fabric and writen in Goland
Does somebody know how to do the same with Composer?
Hello everyone,
Does somebody knows why this command does not work, please?
Command:
composer network start -c PeerAdmin@onuguns-network-org1 -a ../onuguns/dist/onuguns-network@0.0.1.bna -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem -A gerard -C gerard/admin-pub.pem
Error:
Starting business network from archive: ../onuguns/dist/onuguns-network@0.0.1.bna
Business network definition:
Identifier: onuguns-network@0.0.1
Description: Smart contract to manage the location and the guns exchanges between countries.
Processing these Network Admins:
userName: alice
userName: bob
userName: gerard
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
Thanks! :)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=GyrvYkTgwtHYhLf47)
Starting business network from archive: ../onuguns/dist/onuguns-network@0.0.1.bna
Business network definition:
Identifier: onuguns-network@0.0.1
Description: Smart contract to manage the location and the guns exchanges between countries.
Processing these Network Admins:
userName: alice
userName: bob
userName: gerard
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: premature execution - chaincode (onuguns-network:0.16.4) launched and waiting for registration
Response from attempted peer comms was an error: Error: premature execution - chaincode (onuguns-network:0.16.4) launched and waiting for registration
Response from attempted peer comms was an error: Error: premature execution - chaincode (onuguns-network:0.16.4) launched and waiting for registration
Response from attempted peer comms was an error: Error: premature execution - chaincode (onuguns-network:0.16.4) launched and waiting for registration
Response from attempted peer comms was an error: Error: premature execution - chaincode (onuguns-network:0.16.4) launched and waiting for registration
Response from attempted peer comms was an error: Error: premature execution - chaincode (onuguns-network:0.16.4) launched and waiting for registration
Command failed
@All. can somebody ans my problem?
Hello, can anyone already use array in cto ? I explain : i want manage vaccin with blockchain, so i create asset "child" with name etc. and i would like to create a list of vaccins already made and add vaccin when child made a new
is there anyway i can avoid the peer to get access to the composer information stored in the fabric blocks which are unfortunately stored in the plain text on peer
Basically what i want is that the information that is being handled by the composer should only be accessible according to the access control list specified for the network, beyond that, that information should not even be accessible to the peer admin.
Is it possible to achieve this goal?
Someone already have "Error: Cannot instantiate Abstract Type *** in namespace ****" ?
Has joined the channel.
Is it possible to use Fabric's endorsement policies so that a specific transaction from composer and only that transaction requires endorsements from others?
Really appreciate the help!
Hello,
Does anyone knows how to solve this problem when i try to start a new network?
peer1.org2.example.com | 2018-03-28 14:59:18.682 UTC [eventhub_producer] Chat -> ERRO 36a Error handling message: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org2MSP, received Org1MSP]]
Thanks! :)
Has joined the channel.
Im getting this error and for the life of me do not understand it: "composer network ping --card admin@airlinev8
Error: Error trying to ping. Error: Error trying to query business network. Error: access denied: channel [composerchannel] creator org [Org1MSP]"
The error came from using these commands: teardownFabric.sh,stopFabric.sh,startFabric.sh
In my logs file I am getting this error: {"message":"Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'admin' and the identifier '7d195e0cbc77f47d78f39e21ec879210cdff2f8506d5f326af245563ebfcbb69', must be activated (ACTIVATION_REQUIRED))","stack":"Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity, with the name 'admin' and the identifier '7d195e0cbc77f47d78f39e21ec879210cdff2f8506d5f326af245563ebfcbb69', must be activated (ACTIVATION_REQUIRED))\n at channel.queryByChaincode.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:809:34)\n at
Has joined the channel.
How many different logic files I can create and how to export one logic file so that I can use functions in other logic as well.
How can i access database in hyperledger?
Hi,are there any examples of web portals for registering and logging in participants using email and password?
Has joined the channel.
Hi, i'm new to hyperledger and have some basic questions that i can't seem to get a good answer to. Is installing compose runtime the same as installing chaincode to fabric peers? Or must chaincode already be installed for composer to work properly? If so, is it arbitrary to choose chaincode(Go or NodeJs)?
Hello, has anyone managed to implement an API-key Passport strategy on the composer-rest-server (ideally without needing to change the source to get things to work)?
We've released Hyperledger Composer v0.19.0, our first release that we think is ready for production, including native Hyperledger Fabric deployment, automatic CouchDB index generation, system namespace documentation, and the latest CongaComic! 🍻 https://github.com/hyperledger/composer/releases/tag/v0.19.0
We love this release so much, we've made it the default release for building your blockchain business networks - if you want to stick with v0.16.x, then you'll need to explicitly reference that version using npm or docker!
Has joined the channel.
@sstone1 really great news
Is there a way to interact with composer using nodejs Application
@phanikumar using composer rest server you can interact with composer business network , and composer rest server is based on nodejs
or you can use the node.js APIs in `composer-client`
I am good with performing transactions using composer rest server and I want some other additional functionality like getting all block details, transaction details and other sorts of implementations is there a source for that in composer or should I go with Hyperledger Fabric for these
Thanks for the reply @sghosh2 and @sstone1 I am good with performing transactions using composer rest server and I want some other additional functionality like getting all block details, transaction details and other sorts of implementations is there a source for that in composer or should I go with Hyperledger Fabric for these
Swagger Error and definition in the model file
Hi, I deployed a Business Network on Fabric. But when I generate the composer rest server I do get a error message "Swagger: skipping unknown type "Order"." The Order is my central Asset and clearly defined in the Model File (see screenshot above). Any idea what is the issue?
2nd question. Rest Server is running on an AWS Ubuntu Server. And the system tells me teh WEb server is running:
--> Web server listening at: http://localhost:3000
--> Browse your REST API at http://localhost:3000/explorer
I tried to connect using the public IP of my AWS-Instance but it didn't work. Any ideas?
Has joined the channel.
Hi All, we are trying to install Composer on Azure
while trying to install the playground
Here is the error:
npm ERR! Error: EACCES: permission denied, access '/usr/lib/node_modules/composer-rest-server'
npm ERR! at Error (native)
npm ERR! { Error: EACCES: permission denied, access '/usr/lib/node_modules/composer-rest-server'
npm ERR! at Error (native)
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/usr/lib/node_modules/composer-rest-server' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
This is happening in the very first step
I have cretae
as per documentation:
**If installing Hyperledger Composer using Linux, be aware of the following advice:
• Login as a normal user, rather than root.
• Do not su to root.
• When installing prerequisites, use curl, then unzip using sudo.
• Run prereqs-ubuntu.sh as a normal user. It may prompt for root password as some of it's actions are required to be run as root.
• Do not use npm with sudo or su to root to use it.
• Avoid installing node globally as root.**
So we are not installing as Root
I have created my code in composer playground now how do i deploy it on fabric?
Also will each participant be a node?
How is the network architecture decided?
There is a nice blog post which also includes the bna deployment: https://blogs.sap.com/2018/01/15/build-business-blockchain-using-scp-hyperledger-composer-and-scp-cloud-connector/
@Saschaka thanks
Do you know about the network architecture and infra details?
How do i decide number of nodes
can someone share a uptodate URL that documents step by step install instructions
unfortunately not. Also just making my first deployment
Also is their any tutorial that can guide me to deploy fabric on a multi machine setup
can someone share a uptodate URL that documents step by step install instructions for Composert and playground
I used https://ibm-blockchain.github.io/develop/installing/installing-prereqs.html to install the pre-requisites and https://ibm-blockchain.github.io/develop/installing/development-tools.html to install the components like fabric and composer
all of the latest documentation can be found here: https://hyperledger.github.io/composer/latest/
Thanks Saschaka and sstone1
we were referring to the https://hyperledger.github.io/composer/latest/
but got the error - npm ERR! Error: EACCES: permission denied, access '/usr/lib/node_modules/composer-rest-server'
doc says • Login as a normal user, rather than root.
the docs also say:
> Avoid installing node globally as root.**
we strongly recommend that you install node.js using nvm (node version manager) following the instructions here: https://github.com/creationix/nvm#installation
you can use nvm to install node 8.* using these steps:
```nvm install --lts
nvm use --lts
node --version```
ok SStone1... will try it
thanks
I just installed 0.19 from 0.16. I'm creating network card with certificate and privateKey successfully but get this error when importing:
"Failed to import the business network card
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: x-type
message: should have required property 'x-type'
Error: Errors found in the connection profile in the card"
This didn't happen in 0.16 any new configuration for network cards?
@sstone1 suddenly all link got broken
https://hyperledger.github.io/composer/business-network/publishing-events.html
https://hyperledger.github.io/composer/latest/
note the `latest`
that is an old link
okk
@Bjodn you need to use the new connection profile format introduced in v0.17.0+
@sstone1 thanks , it worked
this is the new Fabric v1.1 connection profile format, which Composer now uses. there's an example here: https://hyperledger.github.io/composer/latest/reference/connectionprofile
Ah, thanks @sstone1
[ ](https://chat.hyperledger.org/channel/composer?msg=vbeqnTTv6yLxGFcm4) Nobody encounter a problem with MVCC_READ_CONFLICT?
Has joined the channel.
Hey! Is there a composer-dev channel as well?
Has joined the channel.
Anyone knows what happened to the documentation for FileSystemCardStore ?
MVCC_READ_CONFLICT, ive had this issue
i started batching requests locally
:sob:
Has joined the channel.
I cant find the history/change log of the documentation either
Has joined the channel.
what has happened to the documentation of composer?????
@guiomie for MVCC_READ_CONFLICT, this article https://github.com/hyperledger/fabric-samples/tree/release/high-throughput explain how to avoid it, but it is specific for Fabric and written in Go, but I don't understand well the script...
@ppcm when you trying to read or write one key-value multiple times in one block, it will cause MVCC_READ_CONFLICT error. here is the document: http://hyperledger-fabric.readthedocs.io/en/release-1.1/readwrite.html?highlight=set . The high-throughput model uses composite key to avoid this problem, every time the value is changed, the model stores a delta value with the composite key instead of changes value directly. So it does not cause the MVCC_READ_CONFLICT error. This may cause other issues, one is you cannot check the value realtime, you should read the value and all deltas and calculate them together to get the realtime value. The other problem is there will be more and more deltas in the blockchain, so in the model there is a method called prune which can combine the deltas into the value and clean them.
@ppcm In composer we do not have the composite key, so I made a model, use Assets to store the deltas, also add a transaction to prune the deltas. It works, but I think make new Assets is not as good as composite key in effectiveness.
@ppcm In composer we do not have the composite key, so I made a model, use Assets to store the deltas, also add a transaction to prune the deltas. It works, but I think make new Assets is not as good as composite key in efficiency.
@labcoinpoc thanks, that what I understood, but and I wasn't sure, but for me, in this model, there is another issue, when prune is called there is a risk to have an other MVCC_READ_CONFLICT
Can you suggest an other model to avoid MVCC_READ_CONFLICT?
@labcoinpoc thanks, that what I understood, but I wasn't sure, but for me, in this model, there is another issue, when prune is called there is a risk to have an other MVCC_READ_CONFLICT
Can you suggest an other model to avoid MVCC_READ_CONFLICT?
@ppcm Theoretically each composite key is written only when it is created or pruned. would you give more details about how the prune cause MVCC_READ_CONFLICT?
@labcoinpoc The idea is to use Asset to replace composite key, when the prune is call, it will modify the base value of the counter and at this moment, an other transaction can try to read the value and cause a MVCC_READ_CONFLICT
@labcoinpoc The idea is to use Asset to replace composite key, when the prune is called, it will modify the base value of the counter and at this moment, an other transaction can try to read the value and cause a MVCC_READ_CONFLICT
@ppcm yes , that might happen. In my project , the prune will be triggered in midnight and I just stop the balance check api before that and resume it after
[ ](https://chat.hyperledger.org/channel/composer?msg=JekXk3Fy5DciugPp7) Can anyone tell me if it's possible to achieve this?
Has joined the channel.
@labcoinpoc this a solution, thanks for your help
@All, I am unable to fetch all details for a orderID using below function
function GetPOByOrderID(OrderId){
return getAssetRegistry('org.acme.securebox.Order')
.then(function (assetRegistry) {
return query('selectPOByorderID', {'orderId':OrderId.orderId});
})
.then(function (results) {
var promises = [];
for (var n = 0; n < results.length; n++) {
var trade = results[n];
promises.push(trade);
}
// we have to return all the promises
return Promise.all(promises);
});
}
This is my function.
I received the above result is passing order id
Clipboard - March 29, 2018 12:07 PM
Clipboard - March 29, 2018 12:07 PM
My query function is above
But I have all the details related to that orderid in registry. Plz find the screenshot for reference
Clipboard - March 29, 2018 12:08 PM
@labcoinpoc But perhaps it could be, in the future, a more elegant solution, use of Semaphore-like queue...
@ppcm I hope so. Fabric just keep it simple and we should solve it in the upper level
Hi @rthatcher That problem still persist.. not able to access GET /api/system/historian or any other api ..
Here is the log of rest container ...
You have triggered an unhandledRejection, you may have forgotten to catch a Promise rejection:
Error: Failed to receive commit notification from peer0.org1.example.com:7051 for transaction '4a72dd22d682724cae15a7b473e44ee252c24b9a1d1f36c919b71f4bdc1440f5' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:482:11)
at tryOnTimeout (timers.js:317:5)
at Timer.listOnTimeout (timers.js:277:5)
Unhandled error for request GET /api/system/historian: Error: Error trying invoke business network. Error: REQUEST_TIMEOUT
at _initializeChannel.then.then.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:959:34)
at
@labcoinpoc hope hope hope
Hello ! I'm trying to create a transaction in localhost:3000/explorer but it return "Error: chaincode error (status: 500, message: ReferenceError: identifier 'madeTo' undefined)", any idea ?
Has joined the channel.
Is it possible to use Fabric's endorsement policies so that a specific transaction from composer and only that transaction requires endorsements from others?
Hello,
Where does this page go ? https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org
Was here yesterday
@CorentinPacaud, what did this tutorial ? I maybe can give you an another ...
It explains the deployement of the project byfn. Network with multiOrg
can anybody help me with my question ?
@CorentinPacaud https://github.com/IBM/BlockchainNetwork-CompositeJourney/blob/master/README.md#2-starting-hyperledger-fabric this can help you ?
@Poneey @CorentinPacaud here it is https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@labcoinpoc thx ^^
Thank
Do you know why it was moved ?
now the project separate to 2 versions one is for fabric 1.1.0 and other for 1.0.0, maybe that is why they add `latest` and `next` into the url
yep, that's correct. it should have been done ages ago, the docs at the old URLs were never automatically updated.
ok, merci pour votre réponse
ok, thank for your answer * (sorry for french ^^)
don't know if this is the place for this but all links on google link to the 'page not found' page because now there is a need for /latest/ in the url.
https://hyperledger.github.io/composer/`latest`/introduction/introduction.html
don't know if this is the place for this but all links on google link to the 'page not found' page because now there is a need for /latest/ in the url.
`https://hyperledger.github.io/composer/`latest`/introduction/introduction.html`
Hello all.. If anyone is using `node-red` and facing `MVCC_Read_Conflict` error due to multiple peer updates on the same resource. Then in `node-red`, this error can be captured using `catch` node and then failed transaction can be submitted again. Few changes are required in `node-red-contrib-composer` module to enable `catch` node for capturing as mentioned on this link.```
https://github.com/hyperledger/composer-tools/issues/113
```
Hello all.. If anyone is using `node-red` and facing `MVCC_Read_Conflict` error due to multiple peer updates on the same resource. Then in `node-red`, this error can be captured using `catch` node and then failed transaction can be submitted again. Few changes are required in `node-red-contrib-composer` module to enable `catch` node for capturing as mentioned (https://github.com/hyperledger/composer-tools/issues/113). I tested it and it seems to work :)
Hello all.. If anyone is using `node-red` and facing `MVCC_Read_Conflict` error due to multiple peer updates on the same resource. Then in `node-red`, this error can be captured using `catch` node and then failed transaction can be submitted again. Few changes are required in `node-red-contrib-composer` module to enable `catch` node for capturing as mentioned (https://github.com/hyperledger/composer-tools/issues/113). I tested it and it seems to work :)
Hello all.. If anyone is using `node-red` and facing `MVCC_Read_Conflict` error due to multiple peer updates on the same resource. Then in `node-red`, this error can be captured using `catch` node and then failed transaction can be submitted again. Few changes are required in `node-red-contrib-composer` module to enable `catch` node for capturing as mentioned (https://github.com/hyperledger/composer-tools/issues/113). I tested it and it seems to work :)
@labcoinpoc I am reading the doc of Composer 0.19.0, and I saw `getNativeAPI().createCompositeKey` could it be an alternative to our problem about MVCC_READ_CONFLICT ?
Hey, can someone talk me through the changes to the card store in 0.19? By the looks of it the FileStore is no longer available?
since composer-0.19 released, when i trying to execute sudo ./createPeerAdminCard.sh , it's always prompt me to "Need to have composer-cli installed at v0.19 or greater"
even i updated , composer-cli@0.19.0
updated 1 package in 93.927s
and there is no error
david@bcvm01:~/fabric-tools$ sudo ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Need to have composer-cli installed at v0.19 or greater
[ ](https://chat.hyperledger.org/channel/composer?msg=vX7aBgnPqhdtzdQhY) I have my issue fixed :)
[ ](https://chat.hyperledger.org/channel/composer?msg=K7aYttYxhdAQhbr2G) @davidhu Have you done an uninstall on composer-cli?
no
npm uninstall -g composer-cli
how to uninstall them
npm install -g composer-cli
ok
afterwards :)
Hopefully its that easy of a fix! I'll stick on here next half an hour just in case
i'll try, thank you
hi everyone
oh , did u uninstall other components like composer-rest..? @ChrisMcQueenDevelopment
Is there anyway to prevent the peer admin from accessing the contents of the comopser blocks?
Yeah I would do @davidhu, save yourself issues in the future
[ ](https://chat.hyperledger.org/channel/composer?msg=Ge5eQtJsBos2e45mH) @username343 In terms of reads? Unless you encrypt the content using a traditional encryption method, everyone can read everything if they try hard enough.
They only alternative would be to create channels and only have the parties involved for that
The only alternative would be to create channels and only have the parties involved for that
thanks for responding @ChrisMcQueenDevelopment , Basically what i want is that the information that is being handled by the composer should only be accessible according to the access control list specified for the network, beyond that, that information should not even be accessible to the peer admin
so one option that i have is to use encryption but that is not what i am very keen on using, I wanted to know if there is any feature in composer that allows to do this?
so one option that i have is to use general encryption but that is not what i am very keen on using, I wanted to know if there is any feature in composer that allows to do this?
[ ](https://chat.hyperledger.org/channel/composer?msg=umbEFgi9JrNLNcHCv) @username343 That's a totally fair requirement. from my understanding ACL rules simply wrap the business logic in those rules, which can prevent updates and new content etc. However, fabric is a distributed ledger so everyone will always have a copy of all of the material
thanks @ChrisMcQueenDevelopment
It's the huge caveat imo... its why you require "some trust" in a permissioned network
@davidhu:
I just did a similar upgrade. I also had to change my package.json file, change the devDependencies too:
`"devDependencies": {
"composer-admin": "^0.19.0",
"composer-cli": "^0.19.0",
"composer-client": "^0.19.0",
"composer-common": "^0.19.0",
"composer-connector-embedded": "^0.19.0",
"composer-cucumber-steps": "^0.19.0",
"chai": "latest",
"chai-as-promised": "latest",
"cucumber": "^2.2.0",
"eslint": "latest",
"nyc": "latest",
"mkdirp": "latest",
"mocha": "latest"
}`
Then run npm install from inside of your project to pull the latest changes in
@davidhu:
I just did a similar upgrade. I also had to change my package.json file, change the devDependencies too:
`"devDependencies": {
"composer-admin": "^0.19.0",
"composer-cli": "^0.19.0",
"composer-client": "^0.19.0",
"composer-common": "^0.19.0",
"composer-connector-embedded": "^0.19.0",
"composer-cucumber-steps": "^0.19.0",
"chai": "latest",
"chai-as-promised": "latest",
"cucumber": "^2.2.0",
"eslint": "latest",
"nyc": "latest",
"mkdirp": "latest",
"mocha": "latest"
}`
`
Then run npm install from inside of your project to pull the latest changes in
yes, the dependencies must be changed. thanks for reminding me
still in uninstall - install process
Hi, did an update to 0.19.0. I have an issue with our current unit tests. I keep getting:
TypeError: networkDefinition.getScriptManager is not a function
at Function.newInstance (node_modules/composer-runtime/lib/installedbusinessnetwork.js:35:49)
at EmbeddedConnection.start (node_modules/composer-connector-embedded/lib/embeddedconnection.js:173:72)
at _buildStartTransaction.then (node_modules/composer-admin/lib/adminconnection.js:450:40)
at
Has joined the channel.
does anybody know how to access the composer document for v1.0
[ ](https://chat.hyperledger.org/channel/composer?msg=NeKcCsY3miDMyNhjq) @KevinWu
https://hyperledger.github.io/composer/latest/introduction/introduction
https://hyperledger.github.io/composer/introduction/introduction.html
shows page not found
https://hyperledger.github.io/composer/latest/introduction/introduction ,this one is for fabric 1.10,
Ahh sorry
Clipboard - 29 maart 2018 12:25
i'm unable to delete cards after the update
I'm not sure sorry @KevinWu. I just upgraded to latest version and feels worth it as this should be the stable release going forward
I'm not sure sorry @KevinWu . I just upgraded to latest version and feels worth it as this should be the stable release going forward
done, but the old issue come out, i fixed this by change nodejs version from6.x to 8.x
Error: EACCES: permission denied, mkdir '/home/david/.composer/cards'
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=Ttn3p4Z2TY3yvKBf2) @kevinsyx Try:
`composer card delete --card PeerAdmin@hlfv1`
Or just delete the .composer folder
[ ](https://chat.hyperledger.org/channel/composer?msg=fofxwkhHogDmwzGbR) @davidhu Have you also tried deleting the .composer folder?
Has joined the channel.
@ChrisMcQueenDevelopment , thanks
@ChrisMcQueenDevelopment I removed this folder, try again, it's prompt this issue again
david@bcvm01:~/fabric-tools$ sudo ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Need to have composer-cli installed at v0.19 or greater
Hello
I have an array of string in an asset. I want had somethink and the end of this array with a transaction. Someone know how to make that ?
[ ](https://chat.hyperledger.org/channel/composer?msg=aMsS4LHY4bNdR4xhx) @davidhu Noo! If you do composer-cli --version
What is the result?
[ ](https://chat.hyperledger.org/channel/composer?msg=aMsS4LHY4bNdR4xhx) @davidhu Noo! If you do `composer-cli --version`
What is the result?
[ ](https://chat.hyperledger.org/channel/composer?msg=aMsS4LHY4bNdR4xhx) @davidhu Noo! If you do `composer --version`
What is the result?
version's right
david@bcvm01:~/fabric-tools$ composer --version
v0.19.0
Ahh sorry!
The fabric-tools folder has changed with the version
delete the folder and then run:
`mkdir ~/fabric-tools && cd ~/fabric-tools
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz
tar -xvf fabric-dev-servers.tar.gz`
and then:
`cd ~/fabric-tools
./downloadFabric.sh`
delete the folder and then run:
`mkdir ~/fabric-tools && cd ~/fabric-tools`
`curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz`
`tar -xvf fabric-dev-servers.tar.gz`
and then:
`cd ~/fabric-tools`
`./downloadFabric.sh`
i just downloaded them this afternoon
[ ](https://chat.hyperledger.org/channel/composer?msg=LSnHjxvTShvj73AzY) @Poneey Get the asset. Get the array from the asset, append a string and then update the asset?
https://hyperledger.github.io/composer/latest/api/client-assetregistry#update
[ ](https://chat.hyperledger.org/channel/composer?msg=yocw2hnN3KeL5bQPC) @davidhu Yeah I just noticed it says hlv11 so must be the newer version. One minute
ok, thanks
@ChrisMcQueenDevelopment in the asset i did "String[] ..." and in the function i tried :
myarray = myarray + ["...", "...", "..."]
myarray = myarray + [".."]
myarray = myarray + ".."
Or with myarray.push(...)
Or with myarray.add(...)
@davidhu it may be because you are using sudo to do things:
https://stackoverflow.com/questions/49180156/cannot-start-hyperledger-fabric-as-part-of-hyperledger-composer-local-install-e
I did the same a month bank and I had nightmares. My (inelegant) solution was to install everything again without using sudo (npm too)
@ChrisMcQueenDevelopment (I will lunch, i come back after)
yes, otherwise i can't connect to docker
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=sc4wk5EKYtRegtAr6) @Poneey No problem, going to do similar.
https://hyperledger.github.io/composer/latest/api/common-resource#addarrayvalue
There is addArrayValue which should do what you want :)
@ChrisMcQueenDevelopment do i need to delete the entire fabric-tool folder, then do it again?
[ ](https://chat.hyperledger.org/channel/composer?msg=owDEbfXe5ixNGQj7w) @davidhu I deleted all the tools / things I've downloaded and made sure not to use sudo
That's obviously a really naive solution, but I havent had problems since. Perhaps someone else here has a nicer solution?
Has joined the channel.
what did you do , i have to use sudo
david@bcvm01:~/fabric-tools$ ./downloadFabric.sh
Development only script for Hyperledger Fabric control
Running 'downloadFabric.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Warning: failed to get default registry endpoint from daemon (Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.37/info: dial unix /var/run/docker.sock: connect: permission denied). Using system default: https://index.docker.io/v1/
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdock
@ChrisMcQueenDevelopment i'm using ubuntu, when connecting to docker, i have to use sudo. what's OS are u using?
this time i got this
Using composer-cli at v0.19.0
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: EACCES: permission denied, mkdir '/home/david/.composer/cards'
Command failed
Error: EACCES: permission denied, mkdir '/home/david/.composer/cards'
Command failed
Hyperledger Composer PeerAdmin card has been imported, host of fabric specified as 'localhost'
@ChrisMcQueenDevelopment finally, i solved this issue by sudo chown -R $(whoami) "$HOME/.composer"
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Successfully imported business network card
Card file: /tmp/PeerAdmin@hlfv1.card
Card name: PeerAdmin@hlfv1
Command succeeded
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --card
happy to see it again, thank you for your help @ChrisMcQueenDevelopment
and this command without sudo
david@bcvm01:~/fabric-tools$ ./createPeerAdminCard.sh
Sorry @davidhu went for lunch. I'm also using Ubuntu.
Awesome that its sorted!
:relaxed:, it's 7:30 pm in my place, enjoy lunch break
@ChrisMcQueenDevelopment ok thank, i will check this
@ChrisMcQueenDevelopment i have "(status: 500, message: ReferenceError: identifier 'addArrayValue' undefined)" ..
Can you send through all of the code block?
What ?
For information, i tested to do " myarray = ["...."] " and it worked, i just can't add some string at the end, it replace all.
Could you send your code just so I can get a full view?
Clipboard - 29 mars 2018 13:54
Clipboard - 29 mars 2018 13:55
I probably made some mistake, it's my first try
No thats fine, no other way to learn
Oh, i sent you a version without addArayValue... i had made " addArrayValue(vaccinate.inchild.vaccins, vaccinate.aboutvaccin.vaccinId);"
So it should be:
`vaccinate.inchild.addArrayValue("vaccins", VACCIN to APPEND HERE)`
Oh yes ... I will try !
Don't know much about your business context, but vaccin feels like it could be suitable to be a *concept* :)
Ah, maybe ...I will do some research
"vaccinate.inchild.addArrayValue("vaccins", VACCIN to APPEND HERE)" work ! Thank you !
I will check for "concept" now
Nice! Go for it, it adds some complexity but allows for things to be re-used nicely
Feel free to look at my proj for reference:
https://github.com/Chris-McQueen-Development/logistics-chain
There's a lot in the utility-scripts folder, too
thank you !
Can I get all the information using this function
Clipboard - March 29, 2018 5:40 PM
I am trying to query from registry using orderid
If I click on order asset I am getting the entry of order id with all the information
Use .then after your query
query(.....).then(function(results) {
// Put your code in here for seeing it
})
@ChrisMcQueenDevelopment i looked your code in git, indeed concept seems good for me, i will try this.
@suva you can reference my version from here:
https://github.com/Chris-McQueen-Development/logistics-chain/blob/master/utility-scripts/viewBids.js
[ ](https://chat.hyperledger.org/channel/composer?msg=rWgHNeTjYLe5qcvfD) @Poneey Thought so, have fun!
@ChrisMcQueenDevelopment . I am not getting the expected result
Clipboard - March 29, 2018 5:47 PM
This is what I am getting
Actually I have details like below
Clipboard - March 29, 2018 5:48 PM
If I m doing something wrong plz help me
Has left the channel.
I dont know how to debug it?
If you can spare the money there is a good udemy course on this
https://www.udemy.com/hyperledger/learn/v4/
Otherwise, you need to look at promises, and making sure each of them are resolved
I use node for most things not playground, but I think most people do use playground, not too sure how to debug by only using that, sorry!
@ChrisMcQueenDevelopment .Thanks
hello all! Just been setting up HL composer and playing with the PII example on my local - great docs etc btw it has been a very nice experience! I do however have a few questions:```
11
```
hello all, been setting up HL and composer today and wanted to say the docs and resources are great, but also I have a few Q's
1. In the PII network, why do we create a `abstract transaction MemberTransaction` and then extend it with actual usable tx types?
2. When creating `AuthorizeAccess` txs it takes a `memberId` but nothing else in the model references this?
3. How do I test if a can/cannot access details about a participant, I have managed to push entries onto the `authorised[]` but how can I validate these entries?
Thanks in advance!
So, can any body help?
https://chat.hyperledger.org/channel/composer?msg=fNMMgFedfQA2C3TiA
Can anybody help how to retrieve a record details from a registry in composer?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=d8srbrp4YtgiQW2iZ) @argman I had issues launching REST server, there has just been an update on the composer-cli, so updating everything worked for me but my err was not the same as yours...
Clipboard - 29 mars 2018 15:25
[ ](https://chat.hyperledger.org/channel/composer?msg=M6Es7NNk9Xx4667Jv) @GrondinLaurent You can delete it manually
[ ](https://chat.hyperledger.org/channel/composer?msg=7nFsfGKMTXqoYnZSp) @argman Yeah i can. But i have the same issue with other composer-cli command like composer install.
*composer network install
[ ](https://chat.hyperledger.org/channel/composer?msg=tKiZo4yAmkLCBZttu) @GrondinLaurent How do you update you composer tools? Like here https://ibm-blockchain.github.io/develop/managing/updating-composer ?
[ ](https://chat.hyperledger.org/channel/composer?msg=tKiZo4yAmkLCBZttu) @GrondinLaurent How do you update your composer tools? Like here https://ibm-blockchain.github.io/develop/managing/updating-composer ?
oh well i only did it for composer-cli. Will do it. Thanks
Can any body help me how to debug in hyperledger composer BNA file?
setup compoer-cli:next and composer playground:next. the backend is fabric 1.1 but having issues like this.
seeing errors from chaincode container and peer container.
```ubuntu@fabric001:~$ docker logs dev-peer1st-orga-carauction-network-0.18.2
> composer-runtime-hlfv1@0.18.2 start /usr/local/src
> node start.js "--peer.address" "peer1st-orga:7052"
2018-03-29T13:30:59.403Z [6a4cc437] [INFO ] @JS : ModelManager :addSystemModels() [object Object]
2018-03-29T13:30:59.564Z [6a4cc437] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'Asset:org.hyperledger.composer.system.AssetRegistry' in collection with ID '$sysregistries' does not exist```
```2018-03-29T13:30:59.799Z [6a4cc437] [ERROR ] @JS : NodeDataCollection :get() Error: Object with ID 'org.hyperledger.composer.system.NetworkAdmin' in collection with ID 'Asset:org.hyperledger.composer.system.ParticipantRegistry' does not exist
2018-03-29T13:30:59.799Z [6a4cc437] [ERROR ] @JS : Resolver :resolveRelationship() Failed to resolve relationship [object Object]
2018-03-29T13:30:59.803Z [6a4cc437] [INFO ] @JS : EngineTransactions :createHistorianRecord() created historian record
2018-03-29T13:31:11.063Z [6d9983fd] [ERROR ] @JS : IdentityManager :validateIdentity() Error: The current identity, with the name 'admin' and the identifier '9088102f5c65d66be8fa02760a11f50669cec7f9cfbefa752b587601109a4315', must be activated (ACTIVATION_REQUIRED)
2018-03-29T13:31:11.064Z [6d9983fd] [ERROR ] @JS : Engine :invoke() Caught error, rethrowing [object Object]
2018-03-29T13:31:11.064Z [6d9983fd] [ERROR ] @JS : Composer :Invoke() Error: The current identity, with the name 'admin' and the identifier '9088102f5c65d66be8fa02760a11f50669cec7f9cfbefa752b587601109a4315', must be activated (ACTIVATION_REQUIRED)
[2018-03-29T13:31:11.064] [ERROR] lib/handler.js - [firstchannel-6d9983fd]Calling chaincode Invoke() returned error response [Error: The current identity, with the name 'admin' and the identifier '9088102f5c65d66be8fa02760a11f50669cec7f9cfbefa752b587601109a4315', must be activated (ACTIVATION_REQUIRED)]. Sending ERROR message back to peer
2018-03-29T13:31:11.124Z [0a7570bd] [ERROR ] @JS : IdentityManager :validateIdentity() Error: The current identity, with the name 'admin' and the identifier '9088102f5c65d66be8fa02760a11f50669cec7f9cfbefa752b587601109a4315', must be activated (ACTIVATION_REQUIRED)```
[ ](https://chat.hyperledger.org/channel/composer?msg=M6Es7NNk9Xx4667Jv) Well updating every tools didn't work. STill same issue
do not know how to deal with the issue.
Hi.
I can sucessfully query my model on string attributes, but I have a problem quering a model with a reference to some asset whose ID I know. I have tried quering with just ID and with the string (in my case) `resource:org.vote.Ballot#Test`, but in both cases I get nothing back. Does someone know what is the best way to handle this?
@SimonOberzan Do you have an error or just no result ?
no error, just empty array responses
@CorentinPacaud no error, just empty array responses
did you check you ACL ?
@CorentinPacaud This is not the problem, as I can query attributes like Strings
@CorentinPacaud This is not the problem, as I can query by attributes like Strings
Can you try to list all your assets and see if this a good id ?
Ill try
@CorentinPacaud That is an ballot attribute of an example response: ``` ballot:
Relationship {
'$modelManager': [Object],
'$classDeclaration': [Object],
'$namespace': 'org.vote',
'$type': 'Ballot',
'$identifier': 'Test',
'$class': 'Relationship' },```
@CorentinPacaud That is a ballot attribute of an example response: ``` ballot:
Relationship {
'$modelManager': [Object],
'$classDeclaration': [Object],
'$namespace': 'org.vote',
'$type': 'Ballot',
'$identifier': 'Test',
'$class': 'Relationship' },```
So if you try to query 'Test' with the same card, it fails ?
Clipboard - 29 maart 2018 16:08
@CorentinPacaud I get an empty array
Can you past your query ?
Just a sec
Could really do with some help, trying to run through the multi-org tutorial. When doing a composer identity request I get the following:
`Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]`
I have done dockerps and there does not seem to be a ca running on 7054. I think its because I took the -a away from:
`./byfn.sh -m up -s couchdb -a`
As it would not run with it. Can anyone advise?
@CorentinPacaud ``` ```
@CorentinPacaud ```let query = connection.buildQuery(`
SELECT org.vote.Vote
WHERE (ballot == _$ballot)
`);
connection.query(query, { ballot: 'Test' }) ```
@CorentinPacaud ``` let query = connection.buildQuery(`
SELECT org.vote.Vote
WHERE (ballot == _$ballot)
`);
connection.query(query, { ballot: 'Test' }) ```
@CorentinPacaud ``` let query = connection.buildQuery(`
SELECT org.vote.Vote
WHERE (ballot == _$ballot)
`);
connection.query(query, { ballot: 'Test' }) ```
With `composer-rest-server 0.19.0`, does wallet works fine for you?
In my case GET /wallet returns a 404 error, to make it work I have to make a GET /api/wallet and effectively I have `[]`
But for the import bot GET /wallet/import and GET /api/wallet/import return a 404 error
With `composer-rest-server 0.19.0`, does wallet works fine for you?
In my case GET /wallet returns a 404 error, to make it work I have to make a GET /api/wallet and effectively I have `[]`
But for the import both GET /wallet/import and GET /api/wallet/import return a 404 error
With `composer-rest-server 0.19.0`, does wallet works fine for you?
In my case GET /wallet returns a 404 error, to make it works I have to make a GET /api/wallet and effectively I have `[]`
But for the import both GET /wallet/import and GET /api/wallet/import return a 404 error
@SimonOberzan I was thinking.... Why do you use query for ids ?
ballot.get(id).then().... doesn't make the job ?
@CorentinPacaud I have Votes with an reference to the ballots. Now i want to get all the votes that belong to some ballot.
In my case the ballot doesn't have references to the votes
@CorentinPacaud That would just get me the ballot object, right?
I have Votes with an reference to the ballots. Now i want to get all the votes that belong to some ballot.
In my case the ballot doesn't have references to the votes
I could change it so that an ballot object contains all the references to its votes, but I don't think that is a simpler way to query all the Votes that belong to a ballot
sry, I cannot answer. Maybe the id is prefixed with org.acme.ballot#....
@CorentinPacaud Yeah it is. That is how it looks like in the playground: ``` {
"$class": "org.vote.Vote",
"hashedToken": "5e8fd070861710f1396515f3aaacc2420febe1647c847be47c72a26e53aabcac",
"ballot": "resource:org.vote.Ballot#Test"
}``` but even if i query ballot to be like it is here, is still get nothing..
Just moved to composer 0.19.0 -- downloaded new fabric instance. Docker shows the following -- QUESTION - should I remove the 1.1.0-rc1 instances and if so how do I do that on disk?
```docker images | grep fabric
hyperledger/fabric-ca x86_64-1.1.0 72617b4fa9b4 13 days ago 299MB
hyperledger/fabric-orderer x86_64-1.1.0 ce0c810df36a 13 days ago 180MB
hyperledger/fabric-peer x86_64-1.1.0 b023f9be0771 13 days ago 187MB
hyperledger/fabric-ccenv x86_64-1.1.0 c8b4909d8d46 13 days ago 1.39GB
hyperledger/fabric-ca x86_64-1.1.0-rc1 8a6c8c2e2ebf 3 weeks ago 283MB
hyperledger/fabric-orderer x86_64-1.1.0-rc1 10afc128d402 3 weeks ago 180MB
hyperledger/fabric-peer x86_64-1.1.0-rc1 6b44b1d021cb 3 weeks ago 187MB
hyperledger/fabric-ccenv x86_64-1.1.0-rc1 65c951b9681f 3 weeks ago 1.39GB
hyperledger/fabric-couchdb x86_64-0.4.6 7e73c828fc5b 5 weeks ago 1.56GB```
Just moved to composer 0.19.0 -- downloaded new fabric instance. Docker shows the following -- QUESTION - should I remove the 1.1.0-rc1 instances and if so how do I do that on disk?
```docker images | grep fabric
hyperledger/fabric-ca x86_64-1.1.0 72617b4fa9b4 13 days ago 299MB
hyperledger/fabric-orderer x86_64-1.1.0 ce0c810df36a 13 days ago 180MB
hyperledger/fabric-peer x86_64-1.1.0 b023f9be0771 13 days ago 187MB
hyperledger/fabric-ccenv x86_64-1.1.0 c8b4909d8d46 13 days ago 1.39GB
hyperledger/fabric-ca x86_64-1.1.0-rc1 8a6c8c2e2ebf 3 weeks ago 283MB
hyperledger/fabric-orderer x86_64-1.1.0-rc1 10afc128d402 3 weeks ago 180MB
hyperledger/fabric-peer x86_64-1.1.0-rc1 6b44b1d021cb 3 weeks ago 187MB
hyperledger/fabric-ccenv x86_64-1.1.0-rc1 65c951b9681f 3 weeks ago 1.39GB
hyperledger/fabric-couchdb x86_64-0.4.6 7e73c828fc5b 5 weeks ago 1.56GB```
[ ](https://chat.hyperledger.org/channel/composer?msg=ChgFwNf3mQ8Egmizf) @CT123 The new fabric tools has a script to remove docker images
[ ](https://chat.hyperledger.org/channel/composer?msg=iHNpGE5ecj2cY4TZC) @ChrisMcQueenDevelopment Thanks - you mean this?
```docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)```
I do that regularly when we update. My question though is it appears we've got both 1.1.0 and 1.1.0-rc1 images, *I'm guessing* on disk. Kitematic only shows 1.1.0 running for ca.org1, orderer and peer0 -- it shows couchdb as 64-0.4.6. Should we remove the rc1 stuff from our fabric-tools folder?
Has joined the channel.
Can someone please help? I have verified that composer-cli v0.19 is installed but when I try to run "./createPeerAdminCard.sh" i get "need to have composer-cli installed at v0.19 or greater"
[ ](https://chat.hyperledger.org/channel/composer?msg=ZFb25bbP67oeachN9) @LegoEngineering
please post your output from `composer --version`
If anyone can answer my stackoverfllow question, that would be dream:
https://stackoverflow.com/questions/49560791/hyperledger-fabric-endorsement-based-on-specific-parties-involved-in-the-trans
[ ](https://chat.hyperledger.org/channel/composer?msg=qFG6RQYmdqm5gwYLw) @silliman
Hey, thanks for responding.
Here's the output:
Error: Cannot find module './api'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.
[ ](https://chat.hyperledger.org/channel/composer?msg=Pm3AJTFo5yfFsqwYw) @LegoEngineering
You've got something fundamentally wrong with your installation then.... you should be getting a version number returned from the command that the *createPeerAdminCard.sh* script then parses in order to determine what version you're running.
is there a way to get all the successful and failure transaction details using composer-rest-server?
I have gone through Historian but it only stores successful transactions
@LegoEngineering e.g. something nice and clean, like this:
```
$ composer --version
v0.18.2
```
(of course it should be saying *v0.19.0* in your case)
[ ](https://chat.hyperledger.org/channel/composer?msg=dDu3E4W6Gf5P73wX3) @silliman
Hey Silliman,
I appreciate your help.
I'm trying to do a clean install. I deleted everything inside /usr/local/lib/ and reinstalled node 8.9.
Now (and earlier) when I try to install "npm install -g composer-cli" I get access denied permission errors. I've also tried with sudo.
Here is my output:
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
/usr/local/bin/composer -> /usr/local/lib/node_modules/composer-cli/cli.js
> dtrace-provider@0.8.6 install /usr/local/lib/node_modules/composer-cli/node_modules/dtrace-provider
> node-gyp rebuild || node suppress-error.js
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/composer-cli/node_modules/dtrace-provider/build'
gyp ERR! System Darwin 17.4.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/composer-cli/node_modules/dtrace-provider
gyp ERR! node -v v8.9.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
> fsevents@1.1.3 install /usr/local/lib/node_modules/composer-cli/node_modules/fsevents
> node install
[fsevents] Success: "/usr/local/lib/node_modules/composer-cli/node_modules/fsevents/lib/binding/Release/node-v57-darwin-x64/fse.node" already installed
Pass --update-binary to reinstall or --build-from-source to recompile
> node-report@2.2.1 install /usr/local/lib/node_modules/composer-cli/node_modules/node-report
> node-gyp rebuild
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/composer-cli/node_modules/node-report/build'
gyp ERR! System Darwin 17.4.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/composer-cli/node_modules/node-report
gyp ERR! node -v v8.9.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-report@2.2.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-report@2.2.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/andrewbrick/.npm/_logs/2018-03-29T16_49_00_059Z-debug.log
ACE-DEV:lib andrewbrick$ sudo npm install -g composer-cli
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
/usr/local/bin/composer -> /usr/local/lib/node_modules/composer-cli/cli.js
> dtrace-provider@0.8.6 install /usr/local/lib/node_modules/composer-cli/node_modules/dtrace-provider
> node-gyp rebuild || node suppress-error.js
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/composer-cli/node_modules/dtrace-provider/build'
gyp ERR! System Darwin 17.4.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/composer-cli/node_modules/dtrace-provider
gyp ERR! node -v v8.9.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
> fsevents@1.1.3 install /usr/local/lib/node_modules/composer-cli/node_modules/fsevents
> node install
[fsevents] Success: "/usr/local/lib/node_modules/composer-cli/node_modules/fsevents/lib/binding/Release/node-v57-darwin-x64/fse.node" already installed
Pass --update-binary to reinstall or --build-from-source to recompile
> node-report@2.2.1 install /usr/local/lib/node_modules/composer-cli/node_modules/node-report
> node-gyp rebuild
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/composer-cli/node_modules/node-report/build'
gyp ERR! System Darwin 17.4.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/composer-cli/node_modules/node-report
gyp ERR! node -v v8.9.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-report@2.2.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-report@2.2.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
[ ](https://chat.hyperledger.org/channel/composer?msg=TnsENmSuSzDSRR7qy) @LegoEngineering
```
npm config get prefix # will show you something you don't have access to like /usr/...
npm config set prefix $HOME # or use $HOME/npm just anything under your $HOME
npm config get prefix # to verify that your changes took
```
try the above ... you may have to uninstall what you've already got installed... looks like you may have installed node and npm with root or sudo and that gets you into trouble when you try to use it as non-root
Has joined the channel.
Surely a stupid question, but noway to find the response.
How to retrieve the current particpant in an application which is already connected?
Of course, we are outside the Blockchain and any Chaincode, so `getCurrentParticipant()` is not the answer, or prehaps I didn't find the class where it is implemented
The tutorial site is down?
[ ](https://chat.hyperledger.org/channel/composer?msg=JNPdLsZQSA6fYEX2D) @TreyZhong
tuck a `/latest/` in between *composer* and *tutorials* in your URL
[ ](https://chat.hyperledger.org/channel/composer?msg=wjBWfH5szrRSjkPWb) Nobody for that?
Is there a way to turn off POST requests in composer-rest-server, e.g. I dont want the default POST behavior to create SampleAsset. How do I turn off the default ability to create assets via POST?
Has joined the channel.
Has joined the channel.
is there a way to make to fields in any participant or assert as primary key?
is there a way to make fields in any participant or assert as primary key?
Has joined the channel.
what happened to the tutorial pages on github? the pages have been down for a few days already
https://hyperledger.github.io/composer/tutorials/tutorials.html
which version of composer should i be using for fabric 1.0.5?
i assume 0.16.5
[ ](https://chat.hyperledger.org/channel/composer?msg=HBsSctmLd3Fqm4RHf) @danastos https://hyperledger.github.io/composer/latest/tutorials/tutorials.html
thanks
So i'm curious about the pros and cons of fabric vs sawtooth right now. From what i've heard, sawtooth "is better", but yet fabric seems to have more resources available and you can utilize composer. Anybody have any opinions on this matter?
I'm pretty new to hyperledger and am just going through the edx course on it right now, but i'd like to prioritize my time if possible
has anyone seen this before?
```
$ composer -v
v0.16.5
$ composer card import -f org1ca.card -n org1ca
Error: Failed to load connector module "composer-connector-undefined" for connection type "undefined". Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=RTtrnBiMdhLnffzxM) @ppcm I will try this, thanks!
Has joined the channel.
how to i can upgrade my local composer version
Has joined the channel.
Has joined the channel.
With the latest composer tutorials, for the multi-org tutorial (https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org), I get following error while running "*./byfn.sh -m up -s couchdb -a*"
`[grpc] Printf -> DEBU 003 grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: Error while dialing dial tcp 172.18.0.11:7051: getsockopt: connection refused"; Reconnecting to {peer0.org1.example.com:7051
[ ](https://chat.hyperledger.org/channel/composer?msg=iFj6n3LsJ5xkigLmy) @labcoinpoc Let me know if it is a good way...
[ ](https://chat.hyperledger.org/channel/composer?msg=MsS3s2g9SqG6JnXhd) Nobody entours the same problem?
how to query History of a specific asset in composer ?
Has joined the channel.
Hello, can anyone open the link https://hyperledger.github.io/composer/integrating/enabling-rest-authentication
or any new link will work?
@AaronHu007 Try https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication
@ppcm Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=MsS3s2g9SqG6JnXhd) Nobody for that?
Hi @rthatcher or @mahoney1 or anybody facing this problem...
Not able to access GET /api/system/historian or any other api ..
Here is the log of rest container ...
You have triggered an unhandledRejection, you may have forgotten to catch a Promise rejection:
Error: Failed to receive commit notification from peer0.org1.example.com:7051 for transaction '4a72dd22d682724cae15a7b473e44ee252c24b9a1d1f36c919b71f4bdc1440f5' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:482:11)
at tryOnTimeout (timers.js:317:5)
at Timer.listOnTimeout (timers.js:277:5)
Unhandled error for request GET /api/system/historian: Error: Error trying invoke business network. Error: REQUEST_TIMEOUT
at _initializeChannel.then.then.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:959:34)
at
Hi @rthatcher or @mahoney1 or anybody facing this problem...
Not able to access GET /api/system/historian or any other api ..
Here is the log of rest container ...
You have triggered an unhandledRejection, you may have forgotten to catch a Promise rejection:
Error: Failed to receive commit notification from peer0.org1.example.com:7051 for transaction '4a72dd22d682724cae15a7b473e44ee252c24b9a1d1f36c919b71f4bdc1440f5' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:482:11)
at tryOnTimeout (timers.js:317:5)
at Timer.listOnTimeout (timers.js:277:5)
Unhandled error for request GET /api/system/historian: Error: Error trying invoke business network. Error: REQUEST_TIMEOUT
at _initializeChannel.then.then.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:959:34)
at
@All, How to display all the return value from a query in composer?
Hi All, is there any way we can get the history details of input transactions(add,update,delete) in composer ?
Has joined the channel.
Hi All, I'm trying to install the components of the development environment after installing composer via VS code as mentioned here : https://hyperledger.github.io/composer/latest/installing/development-tools.html
Hi All, I'm trying to install the components of the development environment after installing composer via VS code as mentioned here : https://hyperledger.github.io/composer/latest/installing/development-tools.html ```
but Im getting a large number of error while installing the CLI tools and utlities
``` Jeffs-MacBook-Pro:~ Jeff$ npm install -g composer-rest-server
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated constantinople@3.0.2: Please update to at least constantinople 3.1.1
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated mailcomposer@4.0.1: This project is unmaintained
Has joined the channel.
I came across the getNative API through which one call chaincode from Hyperledger composer. See here: https://github.com/hyperledger/composer/issues/3120
Can someone please tell me exactly how does this work? Say if I have a very simple chaincode with a getter and setter, can I invoke those from the JS code in composer
Just started working on blockchains and JS, so I am looking for a slightly detailed answer
Thank you!
[ ](https://chat.hyperledger.org/channel/composer?msg=zD3RcPbvSF5NxDAPy) @jmat201 I believe these are just warnings and not errors
Has joined the channel.
@ppcm I believe that it is possible to make a new model with `getNativeAPI().createCompositeKey`, create composite key when value being changed, and prune the deltas with another transaction. But there is some problem with the check value api, In old model I made a query to find all Assets in which the deltas is stored, then calculated them together with the value. But I think `getNativeAPI().getStateByPartialCompositeKey(objectType, attributes)` may not be used in the query script of composer. So how do we build the query? Maybe we cannot invoke `getNativeAPI().getStateByPartialCompositeKey(objectType, attributes)` from client, since `getStateByPartialCompositeKey` function belongs to `shim` which is the chaincode interface.
@ppcm I believe that it is possible to make a new model with `getNativeAPI().createCompositeKey`, create composite key when value being changed, and prune the deltas with another transaction. But there is some problem with the check value api, In old model I made a query to find all Assets in which the deltas is stored, then calculated them together with the value. But I think `getNativeAPI().getStateByPartialCompositeKey(objectType, attributes)` may not be used in the query script of composer. So how do we build the query? Maybe we cannot invoke `getNativeAPI().getStateByPartialCompositeKey(objectType, attributes)` from client either, since `getStateByPartialCompositeKey` function belongs to `shim` which is the chaincode interface.
@ppcm I believe that it is possible to make a new model with `getNativeAPI().createCompositeKey`, create composite key when value being changed, and prune the deltas with another transaction. But there is some problem with the check value api, In old model I made a query to find all Assets in which the deltas is stored, then calculated them together with the value. But I think `getNativeAPI().getStateByPartialCompositeKey(objectType, attributes)` may not be used in the query script of composer. Maybe we cannot invoke `getNativeAPI().getStateByPartialCompositeKey(objectType, attributes)` from client either, since `getStateByPartialCompositeKey` function belongs to `shim` which is the chaincode interface.So how do we build the query?
@ppcm I believe that it is possible to make a new model with `getNativeAPI().createCompositeKey`, create composite key when value being changed, and prune the deltas with another transaction. But there is some problem with the check value api, In old model I made a query to find all Assets in which the deltas is stored, then calculated them together with the value. But I think `getNativeAPI().getStateByPartialCompositeKey(objectType, attributes)` may not be used in the query script of composer. Maybe we cannot invoke `getNativeAPI().getStateByPartialCompositeKey(objectType, attributes)` from client either, since `getStateByPartialCompositeKey` function belongs to `shim` which is the chaincode interface. So how do we build the query?
@ppcm I believe that it is possible to make a new model with `getNativeAPI().createCompositeKey`, create composite key when value being changed, and prune the deltas with another transaction. But there is some problem with the check value api, In old model I made a query to find all Assets in which the deltas are stored, then calculated them together with the value. But I think `getNativeAPI().getStateByPartialCompositeKey(objectType, attributes)` may not be used in the query script of composer. Maybe we cannot invoke `getNativeAPI().getStateByPartialCompositeKey(objectType, attributes)` from client either, since `getStateByPartialCompositeKey` function belongs to `shim` which is the chaincode interface. So how do we build the query?
Hello ! I saw that we can create rules for permission for the differents participant created. However i can't understand how specify which participant is using my network. Someone know how manage this ?
[ ](https://chat.hyperledger.org/channel/composer?msg=o3XewLBxeGqs3NPmW) @Poneey this may help https://hyperledger.github.io/composer/latest/integrating/enabling-multiuser.html
@labcoinpoc oh ok, it just when i run "composer-rest-server" i do "my participant@mynetwork" instead of "admin@mynetwork" ? I thought that was more compliquated..
Oh sorry, i read the document and i saw that i have to configure before. Thank you ^^
My pleasure.
I'm working for an app in healthcare so i need a safe strategy to identify my participant (not facebook, twitter, ...), do you know one ?
Has joined the channel.
http://www.passportjs.org all the ways here works theoretically, you may build your own oauth server instead of Facebook
Yes, but i saw that there was 500 strategies, i just asked if someone know one safe
or what's the safest ?
Hi All, can someone please help me with my query posted above. I am pasting it here again:
I came across the getNative API through which one call chaincode from Hyperledger composer. See here: https://github.com/hyperledger/composer/issues/3120
Can someone please tell me exactly how does this work? Say if I have a very simple chaincode with a getter and setter, can I invoke those from the JS code in composer
Just started working on blockchains and JS, so I am looking for a slightly detailed answer
Thank you!
@argman I had composer issue yesterday. I advise you to uninstall all composer component, like cli, rest,... and install then again. due to composer 0.19 released update
how can i expose my query result from a registry so that it can be accessed by REST API
[ ](https://chat.hyperledger.org/channel/composer?msg=Q3LZfPsSQM8X5AJNK) @davidhu I've updated it to 0.18.2 and still have this issue. As I understand, REST server works well, but I should manually type `/explorer` to see it. Redirect is not working.
Has joined the channel.
HI @All, I am confused about the Multiuser mode in the REST Server, i want to authenticate each user to their respective wallets ids. Essentially my front end application, written in django, creates a user in its own database for each member in the network. I want to launch the REST server and the Django Server on my local server. and then access the Django Frontend. Only through this front end, i want to transact with my network a different participants from different computers on the same network at the same time. From the DOCs, its not clear if i can use different participants at the same time from diffeent machines. I dont want every identity to use my Github account to athenticate the server. Please help out! :)
@labcoinpoc Perhaps an evolution Composer to make it possible easely.
Because, I have no idea how to build a query to get composite keys...
Has joined the channel.
Hello everyone, I do not get the purpose of a cloud storage wallet
Hi All, after lots of frustration, I was able to:
- Start Fabric runtime with 1 org, 2 peers, 1 orderer, 1 ca.
- Create a connection profile on composer and have its card created/imported
- Deploy a business network archive to my fabric runtime
- Instantiate / state by business network archive / chaincode on my fabric runtime with identity admin/adminpw and created this admin card.
x Now when click the connect from composer-playground ui or ping my networking using composer network ping -c adminCard@test-network
I get a failure response saying:
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]
Command failed
Can anybody guide me what's wrong?
PS: When I enroll admin:adminpw using fabric-ca-client on ca server it works perfectly fine, additional info I have tls enabled on my network components
[ ](https://chat.hyperledger.org/channel/composer?msg=AvAuk4jaSgNrqcQdH) @SuryanshuGupta
[ ](https://chat.hyperledger.org/channel/composer?msg=AvAuk4jaSgNrqcQdH) @SuryanshuGupta Thanks for your reply. But there are errors showing after that. I wasn't able to post the whole log here.```
```
[ ](https://chat.hyperledger.org/channel/composer?msg=AvAuk4jaSgNrqcQdH) @SuryanshuGupta Thanks for your reply. But there are errors showing after that. I wasn't able to post the whole log here.```
```
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
gyp ERR! configure error
gyp ERR! stack Error: Python executable "/Users/Jeff/anaconda/bin/python" is v3.6.1, which is not supported by gyp.
gyp ERR! stack You can pass the --python switch to point to Python >= v2.5.0 & < 3.0.0.
gyp ERR! stack at PythonFinder.failPythonVersion (/Users/Jeff/.nvm/versions/node/v8.11.1/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:492:19)
gyp ERR! stack at PythonFinder.
Hello. How unpack .bna files? is it possible do from console without import in composer?
why do you want unpack ?
@jmat201 do you install node-gyp rebuild ?
@jmat201 i think i had this error but i don't remember exactly how i fixed it.
It's probably by installing node-gyp rebuild or a compilator c++ (yum install gcc-c++)
@Poneey I installed the pre-requisites using the instructions here: https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html#macos but i haven't come across the node-gym rebuild
@Poneey for example, i'd like to edit .cta in my favorite editor and don't use composer gui - is it possible?
would you have any weblink as to how you went about installing composer and the developing environment?
@Vya4eslav For me .bna is just for the deployment ...
@jmat201 https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
@jmat201 i used the sames instructions but i remember have this error and fixed it by installing something more.. Try with gc++, i think it was that.
Hello there
For Queries, in which case we have to use the operator `FROM`?
Oh i think it was with this command : "
npm install -g node-gyp
npm config set python /usr/bin/python"
(i'm on linux, you sould adapt it)
@Poneey Thanks a lot for your help. I was able to install the components. really appreciate the help :slight_smile:
Has joined the channel.
Hi! I'm running on 0.19.0 and have my Fabric set to 1.1 -- I'm trying to deploy a business network (.bna) through the playground UI. My PeerAdmin is set to hlfv11. I get the following error when I try to deploy: `Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". ENOENT: no such file or directory, uv_cwd-ENOENT: no such file or directory, uv_cwd-ENOENT: no such file or directory, uv_cwd-ENOENT: no such file or directory, uv_cwd-ENOENT: no such file or directory, uv_cwd-ENOENT: no such file or directory, uv_cwd-ENOENT: no such file or directory, uv_cwd`
Has joined the channel.
During the processing of one transaction I sometimes want to create and submit another transaction. Are there any examples with the runtime API on how to do that? I found docs on how to create a new transaction within the runtime API but I'm stuck after that.
composer-rest-server
any one having idea how to see blockchain from composer , what is my understanding is the transaction we get in composer its totally different from fabric's transaction
Has anyone been able to follow https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org successfully? For me it worked fine with the previous version 2 days back, but not with the latest version. An error for connection with peer0.org1.example.com:7051 is coming up which fails the startup of byfn (./byfn.sh -m up -s couchdb -a)
hi all. What is the best way to expose the rest api generated by composer-rest-server? I mean in production. Maybe by getting the loopback codes somehow...
Has joined the channel.
@akula Here is the documentation https://hyperledger.github.io/composer/latest/integrating/getting-started-rest-api
But it is not up to date, espacially for 'Enabling authentication for the REST server' and 'Enabling multiple user mode for the REST server'
I posted a question about that, but no answer...
thanks @ppcm. I've read the docs but still confused about put everything in production. Should we install the composer-rest-server on a DigitalOcean node, for example, to be able to expose the rest api? That is the point I do not get yet
@ppcm I think one have to use the loopback connector from here https://github.com/hyperledger/composer/tree/master/packages/loopback-connector-composer
@akula I'm sure, it is not explain in the documentation
I my case, I put a firewall between the rest api and the world. I follow recommandations in the documentation
@akula I'm not sure, it is not explain in the documentation
I my case, I put a firewall between the rest api and the world. I follow recommandations in the documentation
nice @ppcm. And you installed the composer-rest-server on your own server?
@akula In my own infrastructure
great. Thanks a lot
hey guys needed some help
Ive installed hyperledger composer
I ran startFabric.sh and then createPeerAdminCard.sh
everything works great
except that when I try to create a new business network the deploy button is disabled
If I edit the html and click deploy it takes some time but does end up getting deployed. I am able to work on it as well.
The button is disabled if I want to deploy on my local network as well as within the web-browser
*This is on the composer playground
seems like some odd issue going on.
composer.png
Has joined the channel.
Has joined the channel.
I created a Peer admin card and it runs successfully but I am getting an error in running the metadata.json
Using composer-cli at v0.19.0
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Deleted Business Network Card: PeerAdmin@hlfv1
Command succeeded
Successfully imported business network card
Card file: /tmp/PeerAdmin@hlfv1.card
Card name: PeerAdmin@hlfv1
Command succeeded
Error: Unable to read required file: metadata.json
Command failed
When I execute the command: composer card list it also says it cannot read metadata.json
Error: Unable to read required file: metadata.json
Command failed
Has joined the channel.
Has there been changes with composer in the latest version 0.19?
commands like composer runtime aren't working
Hi
i am trying to generate a business network archive
but I am getting the following error:
composer archive create -t dir -n .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /Users/kanishka@ca.ibm.com/fabric-tools/tutorial-network
SyntaxError: Failed to parse /Users/kanishka@ca.ibm.com/fabric-tools/tutorial-network/lib/logic.js: Unexpected token (6:6)
Command failed
Unexpected token (6:6)?
the content of the logic.js are below:
cat lib/logic.js
/**
* Track the trade of a commodity from one trader to another
* @param {org.acme.mynetwork.Trade} trade - the trade to be processed
* @transaction
*/
async function tradeCommodity(trade) {
trade.commodity.owner = trade.newOwner;
let assetRegistry = await getAssetRegistry('org.acme.mynetwork.Commodity');
await assetRegistry.update(trade.commodity);
}
what is the reason for error
Has joined the channel.
Hi
Hi, I have a question with calling external REST API, I want to use method POST with request Body in JS file of hyperledger composer like normal JS of web. I tired use with this tutorial `https://hyperledger.github.io/composer/latest/integrating/call-out`.
My json request body like this:
{
"firstName": "Jenny",
"lastName": "Jones"
}
Has joined the channel.
hi. how can i modify `composer runtime install` and `composer network start` from 0.18.3 for 0.19.0?
Has joined the channel.
hey is `https://hyperledger.github.io/composer/tutorials/developer-tutorial.html` down?
Has joined the channel.
getting following error " Cannot use v0.16.4 version of composer with this level of fabric " when try to run createPeerAdminCard.sh
Has joined the channel.
How do you make the data persistent in Hyperledger? Everytime I restart fabric, all the data is gone
[ ](https://chat.hyperledger.org/channel/composer?msg=apm9sXAFCz6LRQpZu) @danastos You can refer these stack overflow threads https://stackoverflow.com/questions/45590891/hyperledger-composer-model-not-persisted and https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
i got it working with the docker-compose stop & start but I cant get it to work with the volume mounting so I can use startFabric.sh
my docker-compose.yml has the volume for orderer and peer as such:
volumes:
- ./:/etc/hyperledger/configtx
- ./crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/etc/hyperledger/msp/orderer/msp
- /etc/hyperledger/peer0:/var/hyperledger/production
volumes:
- /var/run/:/host/var/run/
- ./:/etc/hyperledger/configtx
- ./crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/peer/msp
- ./crypto-config/peerOrganizations/org1.example.com/users:/etc/hyperledger/msp/users
- /etc/hyperledger/peer0:/var/hyperledger/production
but the data still doesnt stick...
have you tried this on couchdb - /var/hyperledger/couchdb0:/opt/couchdb/data?
also, you have to persist the CA as well:
- ./ca/:/etc/hyperledger/fabric-ca-server
no that didnt work either
volumes:
- ./crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config
- ./ca/:/etc/hyperledger/fabric-ca-server
container_name: ca.org1.example.com
couchdb:
container_name: couchdb
image: hyperledger/fabric-couchdb:$ARCH-1.0.4
ports:
- 5984:5984
environment:
DB_URL: http://localhost:5984/member_db
volumes:
- /var/hyperledger/couchdb0:/opt/couchdb/data
not sure if i wrote it correctly though
Has joined the channel.
"/usr/local/lib/node_modules/composer-cli/node_modules/composer-common/lib/cardstore/businessnetworkcardstore.js:54
async get(cardName) {
^^^
SyntaxError: Unexpected identifier" while running ./createPeerAdminCard.sh
@SriramJothiswaran make sure you are using the latest version of fabric and composer.
Has joined the channel.
hi, fairy new to composer. I'm following the developer tutorial and when I'm deploying the business network I get the following error.
Screen Shot 2018-03-31 at 12.38.49 PM.png
Screen Shot 2018-03-31 at 12.40.12 PM.png
any idea ?
@grdiaz checkout your connection.json file. You are probably using a older version of composer, because newer version has a different format on that file
refer to this link:
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
Step Three: Building a connection profile
Thannks
to get the newest version of composer: npm -g install composer-cli
as you can see here: https://hyperledger.github.io/composer/latest/installing/development-tools
Thx
I'm having issues with the composer developer tutorial
I'm following the instructions exactly and am getting "Cannot use v0.18.2 version of composer with this level of fabric"
I'm assuming this means fabric is out of date but I just downloaded it using the tutorial steps
anybody know how I might fix this?
for reference, this is at the step "Starting and stopping Hyperledger Fabric" under "Controlling your dev environment"
this happens when i try to run " ./createPeerAdminCard.sh"
Also, is it possible to deploy with composer to anything other than IBM's bluemix?
https://www.meetup.com/Hyperledger-Austin/events/249303642/
april-meetup.png
Will be streamed :)
Has joined the channel.
Hi all, while trying to generate a business network archive I am getting the below error:
SyntaxError: Failed to parse /Users/xxxx@xxxx.com/fabric-tools/tutorial-network/lib/logic.js: Unexpected token (6:6)
Here is the content from logic.js file:
/**
* Track the trade of a commodity from one trader to another
* @param {org.acme.mynetwork.Trade} trade - the trade to be processed
* @transaction
*/
async function tradeCommodity(trade) {
trade.commodity.owner = trade.newOwner;
let assetRegistry = await getAssetRegistry('org.acme.mynetwork.Commodity');
await assetRegistry.update(trade.commodity);
}
any idea how I can resolve this Unexpected token (6:6) ?
Has joined the channel.
@Kanishk_Kishore now with version 0.19.0 of composer we are able to use some features of javascript like async/await. You probably are using a older version of composer, so I suggest you to change
npm install -g composer-cli
Has joined the channel.
what response my composer-rest-server returns if i don't return anything from transaction function?
Hi all
i have created my code in composer play ground how to deploy on fabric ?
composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
i tried this command getting crror
error
Clipboard - April 1, 2018 6:35 PM
Has joined the channel.
@nitrek i guess you are using `composer 0.18.x`. as the printed message says, you should give `-A` and `-c` options when running `composer network deploy`.
i am using version v.19
ok. but your command line is for 0.16.x.
i am confused ..
i have made my code in composer play ground exported the bna what next?
everything i do gives errors
please help
@nitrek the syntax has changed, so you have to follow the new rules. Take a look here https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
composer has so many dependencies and these tutorial don't mention the exact version of tools to use for that tutorial it's really frustating
so it gives errors
@nitrek there will always some trivial changes in command syntax and usages. so you shall refer the different docs.
@nitrek if you don't care about version, you can install the specified version such as `npm install -g composer-cli@0.16.6` or `docker pull hyperledger/composer-playground:0.16.6`.
i need to see something running to understand fabric and composer
nothing i try seems to work due to version problems and changes
@nitrek try this: https://www.youtube.com/watch?v=nS_MRqAeEbQ
that series take you from the beginning
that series takes you from the beginning
Has joined the channel.
@nitrek you can also install specified version by use of `npm install -g composer-cli@0.16.6` or `docker pull hyperledger/composer-playground:0.16.6`.
@nitrek please see above.
Hey does anyone have an example for how I can instantiate multiple instances of an item at once in the composer tool? For example, if I wanted to instantiate multiple "fruit" objects, all that share the same schema, in a single click, how would I go about it?
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hey! I am not able to install the composer-cli and -rest-server.
My rest-server running in a docker container can not connect to 127.0.0.1:7054
i.e another container ca.org1.example.com which is listening on 0.0.0.0:7054
https://stackoverflow.com/questions/49601857/composer-rest-server-cant-connect-to-ca-org1-example-com
see the link for logs
Can anyone explain why my service in docker can't be reached from outside
please*
any examples of how to deploy to AWS lightsail?
I'm stuck trying to use composer-playground 0.19.0.
It seems to install. Then, I run composer-playground, and the browser launches. But, I get this error,
*Error: Object with ID 'undefined' in collection with ID 'chaincodes' does not exist*.
I want to user 0.19.0 so that async works as the tutorial example uses async.
Ideas on what might be wrong? I've tried everything I can think of including reinstalling.
Has joined the channel.
Has joined the channel.
Hello, i already generated a .bna via Hyperledger Composer playground. Now i'm curious to understand how hyperledger fabric interacts with hyperleder composer playground. I'm also very interested in the architecture concept behind. Where can I learn more?
Has joined the channel.
I have generated .bna file. But am not able to run it.
Has joined the channel.
Error: Card not found: PeerAdmin@hlfv1
Command failed
Help please!
Hi, I am unable to access HistorianRecords using the query. The API for the query returns 'null' even after enough transactions being made. Please help!!!
Has joined the channel.
Has joined the channel.
Hello, I read https://github.com/IBM/BlockchainNetwork-CompositeJourney
But there was no utilization chaincode of fabric here. If I use a composer, is it possible don't use chaincode?
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: premature execution - chaincode (blockre:0.0.1) is being launched
@psymatix @sakoula please help!
Has joined the channel.
Hi, can anybody tell me what key does composer use to store key value pair on world db???
I'm trying to use getState() in go for assets that I've created using composer rest services..
Hello, I would appreciate your reply. I am developing a network using Fabric. But if I use Composer, do I need to develop Chaincode? I am confused about chaincode of Fabric and Script of Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=NqQ2TgfDALiM3my6p) @songchanback you don't need to write the chaincode if you decide to use composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=P7CBwBKnYKbDhdGGp) @kunalkukreja Oh... Thank you .. If I do not use the very technical part of the Fabric, it would be nice to use Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=QBbJd4QZsK6we9J8W) @songchanback yes. Composer is in fact built to bootstrap your business model deployment on hyperledger fabric.
[ ](https://chat.hyperledger.org/channel/composer?msg=5Rzk8MjQgXTZJr8Jy) @kunalkukreja When composer was first built up, did it not consider chaincode of Fabric?
Composer card import error
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org
i am following this tutorial
getting error on card import
step 9
Has joined the channel.
Hi ,anybody here ?
I just got a issue when do createPeerAdminCard
kevin@ubuntu:~/fabric-tools$ ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is set to 'hlfv11'
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Need to have composer-cli installed at v0.19 or greater
just to npm install -g composer-cli@0.19
look above ,it just tells that require composer-cli installed at v0.19 or greater
but actually i already installed 0.19
npm view composer-cli version
try this
this will show the version
let me see
kevin@ubuntu:~/fabric-tools$ npm view composer-cli version
0.19.0
yup,
actually 0.19
@nitrek ,any idea?
no
can anyone help ?i just confused, i repeat the process several times
maybe you have 2 versions of cli
but when do npm view composer-cli version, it shows working version ,right ?
any idea how to check is there any other version ?
npm uninstall composer-cli
npm uninstall -g composer-cli
and reinstall ?
then install with -g only
alright, let me try.
npm install must have installed locally composer-cli which might be different version
in the folder
that's possible.
I just uninstalled both with -g and no -g and trying to reinstall.
let's see.
it's not working
kevin@ubuntu:~/fabric-tools$ ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is set to 'hlfv11'
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Need to have composer-cli installed at v0.19 or greater
still give this
actually it told there no local version when do unstall
kevin@ubuntu:~$ npm uninstall composer-cli
npm WARN saveError ENOENT: no such file or directory, open '/home/kevin/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/home/kevin/package.json'
npm WARN kevin No description
npm WARN kevin No repository field.
npm WARN kevin No README data
npm WARN kevin No license field.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
removed 1 package in 11.952s
Has joined the channel.
How to integrate kafka + Hyper ledger fabric
please guide me if any one have knowledge about HA environment
I want to set up multiple Orderer with multiple node
I have not gone that far.:joy:
has anyone done this -> https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org
need help
anyone?
[ ](https://chat.hyperledger.org/channel/composer?msg=c9Rb4ua8kWxcA5Leg)
no ar
btw is anyone konw how to start composer-playground?
composer-playground
just tis
this*
i typed composer-playground directly but be told no such command
I just feel all my installation is not working .but they all installed successfully, i am confused.
kevin@ubuntu:~/fabric-tools$ npm view composer-playground version
0.19.0
please anyone can help ?
./composer.sh
is this for start copmoser-playground ?
@NAWAZUDDIN552
if it is where shit file exists?
i seared who disk ,no such file.
sorry for the previous message @KevinFu `https://stackoverflow.com/questions/48874616/composer-playground-shows-command-not-found-on-mac`
composer runtime install is this command no longer available ?
latest
Has joined the channel.
that's right, after add bin into path, it's working ,thanks a lot @NAWAZUDDIN552
and btw, the composer-cli version issue also resolved. I suppose because of this miss, it cannot find composer.
thanks a lot all of u.:grinning:
Clipboard - April 2, 2018 4:55 PM
Hello, i already generated a .bna via Hyperledger Composer playground. Now i'm curious to understand how hyperledger fabric interacts with hyperleder composer playground. I'm also very interested in the architecture concept behind. Where can I learn more?
Has joined the channel.
@BeneHei http://hyperledger-fabric.readthedocs.io/en/release-1.1/arch-deep-dive.html
Hey all - I apologize if this has been asked already, but has anyone else experienced `Need to have composer-cli installed at version 0.16` when running `createPeerAdminCard`?
when I check `composer --version` I get a stack trace...
`composer --version
module.js:681
return process.dlopen(module, path._makeLong(filename));
^
Error: The module '/usr/lib/node_modules/composer-cli/node_modules/node-report/api.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 48. This version of Node.js requires
NODE_MODULE_VERSION 57. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).
`
I've tried the suggested `npm` commands, but they have fixed the issue
I've tried the suggested `npm` commands, but they have not fixed the issue
Thins I've tried - 1) install `npm 8.x` using `nvm`; 2) rebuild and reinstall `composer-cli`
Has joined the channel.
Trying to do a clean install of Composer 0.19. What's the best way to completely remove all previous files and settings?
@cbishop I just did `npm install -g composer-cli` and it works
also, try to wipe out all previous cards
@All how can I update an asset with new field in composer?
Let say I am trying to write a transaction where I will get some value and update the same in asset.
@akula, how would I wipe out all previous cards? I deleted the .composer directory. Is there anything else?
composer card delete -c admin@tutorial-network
or delete .composer/cards
Screen Shot 2018-04-02 at 10.04.17 AM.png
I npm uninstalled, then npm install -g all the composer packages. Then, setup and launch Fabric as described at https://hyperledger.github.io/composer/latest/installing/development-tools.html
But, when I launch composer-playground, I still get the attached error.
The logs say:
composer-playground
info: [Hyperledger-Composer] undefined:LoadModule :loadModule() Loading composer-wallet-filesystem from /Volumes/Userdata/Users/clarkebishop/.nvm/versions/node/v8.11.1/lib/node_modules/composer-playground/node_modules/composer-wallet-filesystem
info: [Hyperledger-Composer] undefined:PlaygroundAPI :createServer() Playground API started on port 8080
info: [Hyperledger-Composer] undefined:PlaygroundAPI :createServer() Client with ID 'rJp5bI_MHyXfpS8lAAAA' on host '::1' connected
Any help or ideas GREATLY appreciated!
Screen Shot 2018-04-02 at 10.11.56 AM.png
I cleared the first error, then went to the Upper Right drop down, then to My Business Networks.
It seemed to let me create a new Web Browser connection, but then I got another error.
I had previously cleared Local Storage in the browser. I'm going to try that again. How else could it be finding a previous Chaincode install?
@akula what operating system do you use?
OS X 10.12.6
I seem to continuously have node issues using Ubuntu :tired_face:
Screen Shot 2018-04-02 at 10.41.56 AM.png
This time, I clicked *Clear storage* at the top of the Chrome (65) dev tools to wipe out everything. That seemed to do the trick.
my issue appears to be 100% node related so I apologize for posting here. if anyone else has run into these issues and has some suggestions for fixes I would greatly appreciate it.
Has joined the channel.
I am trying to install hyperledger on ubuntu .(Ubuntu 16.04 installed on Windows 10 via VirtualBox) when run ./prereqs-ubuntu.sh getting erroe "Syntax error"
@brendonakay, have you done *nvm list*? What version of node is set as the default?
Also, what do you get when you run *npm ls -g --depth=0*? That shows all the installed packages for the current version of node.
I'd try to uninstall composer-cli and then install it again.
p.s. Sorry if you already tried all this.
bkay@HKLabs:~/lib/node_modules$ nvm list
-> v8.11.1
default -> lts/* (-> v8.11.1)
node -> stable (-> v8.11.1) (default)
stable -> 8.11 (-> v8.11.1) (default)
iojs -> N/A (default)
lts/* -> lts/carbon (-> v8.11.1)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.14.1 (-> N/A)
lts/carbon -> v8.11.1
:~/lib/node_modules$ nvm list
-> v8.11.1
default -> lts/* (-> v8.11.1)
node -> stable (-> v8.11.1) (default)
stable -> 8.11 (-> v8.11.1) (default)
iojs -> N/A (default)
lts/* -> lts/carbon (-> v8.11.1)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.14.1 (-> N/A)
lts/carbon -> v8.11.1
hmm
when i run `npm ls -g --depth=0` I get...
~/lib/node_modules$ npm ls -g --depth=0
/home/bkay/.nvm/versions/node/v8.11.1/lib
└── npm@5.8.0
should I see composer-cli in there?
going to try uninstalling and reinstalling
alas I see it is installed successfully, but I get the NODE_MODULE_VERSION mismatch error again
~/lib/node_modules$ npm install -g composer-cli
/home/bkay/.nvm/versions/node/v8.11.1/bin/composer -> /home/bkay/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/cli.js
+ composer-cli@0.19.0
added 1 package from 1 contributor in 5.998s
```~/lib/node_modules$ npm install -g composer-cli
/home/bkay/.nvm/versions/node/v8.11.1/bin/composer -> /home/bkay/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/cli.js
+ composer-cli@0.19.0
added 1 package from 1 contributor in 5.998s```
this looks promising, however
~/lib/node_modules$ npm ls -g --depth=0
/home/bkay/.nvm/versions/node/v8.11.1/lib
├── composer-cli@0.19.0 -> /home/bkay/lib/node_modules/composer-cli
└── npm@5.8.0
```~/lib/node_modules$ npm ls -g --depth=0
/home/bkay/.nvm/versions/node/v8.11.1/lib
├── composer-cli@0.19.0 -> /home/bkay/lib/node_modules/composer-cli
└── npm@5.8.0```
making progress...
things are happening
I got it running from the `node_modules` folder!!
```~/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli$ node cli.js --version
v0.19.0
```
I think there's something funky with the soft link to the binary
@cbishop thanks so much for the suggestions
Hi there, wondering why most of the links to the Composer docs are broken?
Clipboard - April 2, 2018 4:26 PM
No worries, solved. you must've changed the structure of the docs to include the release versions after the /composer/ in URLs. that didn't used to be there. most links to Composer docs from google search will be broken
@brendonakay, Glad I could help. It's a little tricky with nvm. It installs the dependent packages separately with each node version. This makes sense, but it's easy to think you installed something when you didn't install it with the right version!
@cbishop I completely agree. I am more familiar with Python than I am Node, so I was a bit green going into this. Similarly with `pip`, you need to be careful about installing packages and where. My issue was using `sudo` to force some things to install, which ultimately installed them in the wrong location. `nvm` was a huge help once I got it to work properly
Mac OS
[ ](https://chat.hyperledger.org/channel/composer?msg=Mij7TAfktqSmgw7tu) @brendonakay
Has joined the channel.
Has left the channel.
Has joined the channel.
hi all, am trying to deleting admin card composer card delete -n test@hlfv1 using this command in my local enviornment
am getting issue as Missing required argument: card
Missing required argument: card
cli version is v0.19.0
os is ubuntu
any suggestions on this issue
[ ](https://chat.hyperledger.org/channel/composer?msg=JTdD5cCHbKsRM8mmJ) @kumaraswamypallukuri
```
$ composer --version
v0.16.3
$ composer card delete --help
composer card delete [options]
Delete a business network card
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--name, -n The name of the card to delete [string] [required]
$ composer --version
v0.19.0
$ composer card delete --help
composer card delete [options]
Delete a business network card
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--card, -c The name of the card to delete [string] [required]
```
Has joined the channel.
Does anyone know how to change the GRPC Max send/receive length for a deployed business network? I keep hitting the default GRPC limit which is 4MB when executing large queries or transactions.
Clipboard - April 2, 2018 1:56 PM
Here (https://jira.hyperledger.org/browse/FAB-5658) it is discussed as been 100 MB already, I'm unsure why the system defaults to 4MB (GRPC server default).
Here (https://jira.hyperledger.org/browse/FAB-5049) they also discuss this same issue and same error.
Any ideas? Could it be the Keepalive setting (https://github.com/hyperledger/fabric/blob/master/core/comm/config.go#L23-L24)?
Basically I'm trying to retrive about 20Mb of assets in one query.
I created a StackOverflow thread: https://stackoverflow.com/questions/49619350/hyperledger-fabric-v1-1-composer-v0-19-grpc-message-max-limit-reached-4mb
Hello everybody! So, we should or should not use composer in production? I've read this link: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#production but it was wrote before Fabric 1.1. I have also found some people saying to be careful about composer in production, but all that sayings are too old (months ago).
Why the hyperledger team are spending so much efforts to build something you use only to prototype? When the time to go live arrives, one must to rewrite the entire code in GO?? Can't belive it
@akula see https://github.com/hyperledger/composer/releases/tag/v0.19.0 for more info
@davidkel thanks for your time. But it does not answer my question because I want to know if it is safe to use only composer in production. The release note brings a lot of nice stuffs, but the question remains
@akula the release notes state `This is our first release that we truly believe to be production ready`
@davidkel I thought that this statement was regarding to use composer to prototype BNA in a solid manner. But I now relieved. Thanks again
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=P7CBwBKnYKbDhdGGp) @kunalkukreja I just went through the chaincode developer tutorial and was wondering what the advantages are of writing pure chaincode over Composer's javascript smart contracts? I saw somewhere in the documentation that writing pure chaincode can allow for easier queries using CouchDB, but haven't seen much else. Do you know of any resources or parts of the documentation that explain this better?
I am using the node-red-contrib-composer package and when I updated to composer v0.19 and hlfv11 it no longer worked. I then tried doing the basic test using the carauction network and the hyperledger-composer out node (i.e. the example on this page: https://www.npmjs.com/package/node-red-contrib-composer) with composer-cli and composer-playground version 0.19 and get the same error as with my node-red flow: "Error: creating resource error Failed to load connector module "composer-connector-undefined" for connection type "undefined". Cannot find module 'composer-connector-undefined'. Looking in the package.json for node-redcomposer-contrib it looks like it still has v0.16 for composer. When I change back to composer v0.16 with hlfv1 my flow as well as the carauction example work. I was wondering if there was something I could do to get this to work/(If I am missing something) or if there will be an update to node-red-contrib-composer to get it to work with composer v0.19/hlfv11?
It could be related to the filesystem card store. They've made some changes in composer-client (see BusinessNetworkConnection). I know I had to change that part of my code where I connect to the network.
In a nutshell, previous to 1.1 you had to create a filesystem card store object and pass that to the BNConnection, not in 1.1 you only pass the card Id.
That resulted in the "composer-connector-undefined" error until I fixed it.
The network itself is connected i.e. the composer playground and composer rest-server work and update so that you can see changes made in one in the other but the node-red doesn't connect to that same network. Are you referring to a change to be made in the node-red-contrib-composer package?
[ ](https://chat.hyperledger.org/channel/composer?msg=5Mq4np29gSCiHSKeC) @akula : Thanks Akula. Yes, looks like that was indeed the problem. I have installed the newer version and got rid of this error :)
Nice! :sunglasses:
[ ](https://chat.hyperledger.org/channel/composer?msg=c9HzpPe8MnXnZRTBE) @Kanishk_Kishore
Has joined the channel.
If I use Composer, do I just have to build the network topology of the fabric? Do not have to touch the rest of Fabric?
Has joined the channel.
Has joined the channel.
Hi!! Is anybody facing this problem?
Not able to access GET /api/system/historian or any other api ..
Here is the log of rest container ...
You have triggered an unhandledRejection, you may have forgotten to catch a Promise rejection:
Error: Failed to receive commit notification from peer0.org1.example.com:7051 for transaction '4a72dd22d682724cae15a7b473e44ee252c24b9a1d1f36c919b71f4bdc1440f5' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:482:11)
at tryOnTimeout (timers.js:317:5)
at Timer.listOnTimeout (timers.js:277:5)
Unhandled error for request GET /api/system/historian: Error: Error trying invoke business network. Error: REQUEST_TIMEOUT
at _initializeChannel.then.then.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:959:34)
at
can events be restricted to particular participants based on ACL?
or anything
Has left the channel.
Hi All,
I am trying to run the steps given below mentioned link, using we can setup one organisation with two peers in one machine(VM) and anther peer in another VM,
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
i can able to run both the ./teardownFabric.sh && ./startFabric.sh && ./createPeerAdminCard.sh and ./startFabric-Peer2.sh in another machine, it is bringing the docker instances up as expected.
I am trying to run the composer environment for this one. So, i followed the single org steps provided in the
https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-single-org.html link.
while execuintg the network start command i can see the log in the second VM is like,
[shim] handleGetState -> ERRO 004 [732df71d]GetState received error ERROR
and
[Composer] Error -> ERRO 0ba [732df71d] @JS : Engine :init() Caught error, rethrowing [object Object] - in the log file
can any one guide me on this
Is there any link to refer to setup multi/single org composer setup in multiple machines.
Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=K3pmYQhZpuE9hbcvZ) @kmohanar I tried that document.. even i was not able to up the blockchain network on multiple machines. It gave me grpc:addConn.resetTransport error..
Has left the channel.
Failed to start tutorial-network, Anyone can help me?
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 8 RESOURCE_EXHAUSTED: received trailing metadata size exceeds limit
Command failed
Has joined the channel.
What is the API endpoint to achieve `composer identity request` using composer-client or composer-admin javascript API? Also how to create card and import it using the API?
Did someone already use Passport authentication middleware ? (another strategy than passport-github proposed in tutorial)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=M4cLpxa5fMWXtz9hA) @Poneey - there is a full tutorial for using with Google and OAuth 2.0
@Santhosh_S I would not recommend trying to use `composer identity request` or it's equivalent api. We plan to remove this capability from composer soon. The alternative will be to use the pre-built binary `fabric-ca-client` from the fabric binaries package, but if you must use an api then I would recommend looking at the apis provided by the fabric node-sdk.
@Santhosh_S I would not recommend trying to use `composer identity request` or it's equivalent api. We plan to remove this capability from composer soon. The alternative will be to use the pre-built binary `fabric-ca-client` from the fabric binaries package for CLI interaction, but if you must use an api then I would recommend looking at the apis provided by the fabric node-sdk.
@Santhosh_S I would not recommend trying to use `composer identity request` or it's equivalent api. We plan to remove this capability from composer in the future. The alternative will be to use the pre-built binary `fabric-ca-client` from the fabric binaries package for CLI interaction, but if you must use an api then I would recommend looking at the apis provided by the fabric node-sdk.
[ ](https://chat.hyperledger.org/channel/composer?msg=yjop3okr4GZfy5snt) @suiwenfeng - can you show us the exact command you used please? Also what version of composer are you using `composer -v` and what version of Fabric `docker ps`
@kmohanar - what version of Composer and what version of Fabric are you using ?
@rthatcher I don't want use google or facebook or github .. And i don't find tutorial for localpassport or keypub
@rthatcher Using composer-cli at v0.19.0
and
16bf7cc0e3f9 hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" About an hour ago Up About an hour 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
df56773a8bf8 hyperledger/fabric-orderer:x86_64-1.1.0 "orderer" About an hour ago Up About an hour 0.0.0.0:7050->7050/tcp orderer.example.com
757861c46f9b hyperledger/fabric-couchdb:x86_64-0.4.6 "tini -- /docker-ent…" About an hour ago Up About an hour 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
43af2aa87194 hyperledger/fabric-ca:x86_64-1.1.0 "sh -c 'fabric-ca-se…" About an hour ago Up About an hour 0.0.0.0:7054->7054/tcp ca.org1.example.com
[ ](https://chat.hyperledger.org/channel/composer?msg=CfLdrxQtHq963245e) @Poneey - we don't have a tutorial for passport local, but if you look at this URL and follow the discussion there is some more information: https://chat.hyperledger.org/channel/composer?msg=SxbJhrdQHay3cnKSb
[ ](https://chat.hyperledger.org/channel/composer?msg=dK5amGhPpZyAuJYiH) @suiwenfeng - thanks - and the exact command you used?
@rthatcher
composer network start --networkName tutorial-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
i am following the tutorial at https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
[ ](https://chat.hyperledger.org/channel/composer?msg=uZ5TrBjExJrLK9uoo) @suiwenfeng - I have just run the Tutorial the same as you with Composer v0.19 anf Fabric 1.1 and the steps in the Tutorial are fine. The error you have "RESOURCE_EXHAUSTED: received trailing metadata size exceeds limit" is a grpc error - quite likely a communications error. Did the previous command `composer network install` complete without error ?
[ ](https://chat.hyperledger.org/channel/composer?msg=uZ5TrBjExJrLK9uoo) @suiwenfeng - I have just run the Tutorial the same as you with Composer v0.19 anf Fabric 1.1 and the steps in the Tutorial are fine. The error you have "RESOURCE_EXHAUSTED: received trailing metadata size exceeds limit" is a grpc error - quite likely a communications error. Did the previous command `composer network install` complete without error ?
The `composer network start' command creates a new Docker Container for you with a name similar to `dev-peer0.org1.example.com-tutorial-network-0.0.1-... ` this takes a little time and needs a good network connection as it runs npm install commands within that new container.
[ ](https://chat.hyperledger.org/channel/composer?msg=zSbji57wLp4brbN8n) @songchanback - Hyperledger Composer requires Hyperledger Fabric, so for a Production Deployment you will need to design and build a Fabric - BUT for developing there is a small Fabric installed and configured for you if you follow this doc: https://hyperledger.github.io/composer/latest/installing/development-tools.html
[ ](https://chat.hyperledger.org/channel/composer?msg=Zon5WQjGuLR4ZZSd9) @rthatcher : I am using composer v0.16.3
[ ](https://chat.hyperledger.org/channel/composer?msg=7aDQA7c5NhcgWjQdb) @kmohanar - I have not used that tutorial, but for Composer v0.16.3 you need to have Fabric v1.0 (v1.0.4 or 1.0.5)
[ ](https://chat.hyperledger.org/channel/composer?msg=CKLZfYhA4n83Appf5) @rthatcher Currently i am using fabric- tools x86_64-1.1.0-rc1, i will downgrade the fabric version to V1.0.5 and share the results. Thank you\
[ ](https://chat.hyperledger.org/channel/composer?msg=CKLZfYhA4n83Appf5) @rthatcher Currently i am using fabric- tools x86_64-1.1.0-rc1, i will downgrade the fabric version to V1.0.5 and share the results. Thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=i46uQ3wMP9qiEy3bh) @Pranoti : As rthatcher suggested i am updating the fabric version and trying it out. will let you kno if i get results. Thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=i46uQ3wMP9qiEy3bh) @Pranoti : As rthatcher suggested i am updating the fabric version and trying it out. will let you know if i get results. Thank you
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hey, just a heads up! I was following the installation tutorial for the dev environenment found at "https://hyperledger.github.io/composer/next/installing/development-tools.html", but, running the commands found there with @next, I consistently got the error "Cannot use v0.18.2 version of composer with this level of fabric". (I was pretty sure that it was version 1.1 of Fabric) I was able to fix the error by running the commands again to update composer to the @latest version.
pls can anyone help i am getting command error running this composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
[ ](https://chat.hyperledger.org/channel/composer?msg=YFvuPn9JAGFhGQLv7) Hi @rthatcher.. What possibly could be wrong with this issue? Im trying all the time but its throwing same error.. And I guess nobody else got this error...
@Pranoti - I just tried this tutorial - and it works for me :-) - for the Card you imported - did you make sure to run the `sed` command to convert the addresses from localhost ?
[ ](https://chat.hyperledger.org/channel/composer?msg=CXbXiBfL6is34twdc) @harcmed - what is the error you are seeing? What version of Composer are you using `composer -v` and what version of Fabric are you running `docker ps`
how can composer protect model file to prevent hacker attack on server then edit its? Pls explain for me, thanks.
Clipboard - April 3, 2018 6:16 PM
@rthatcher the error happened in macos 10.13, but work on ubuntu
[ ](https://chat.hyperledger.org/channel/composer?msg=kZ8TRXXXdiRD7Bnhs) how do I resolve the error
did you run "startFabric.sh" ? Have you got a proxy ?
[ ](https://chat.hyperledger.org/channel/composer?msg=LwZaQcFL6pMeXbqrw) @rthatcher Yes I did changes in the card related to addresses, using sed command..
[ ](https://chat.hyperledger.org/channel/composer?msg=6f7N5SsRDZpuSX8Sk) @SudheerKaspa - in your runtime install command you give the name "mron-network" but your network name is actually "mron-business-network".
Try `composer runtime install ` with the natworkname mron-business-network, then try the `composer network start` command.
Hello, i'm trying to create authentification in my projet with passport-local but i'm totally lost ... I don't understand where i suppose to do what... Does anyone have an easy example to share or a good tutorial or can explain me ? Thank.
@Poneey please refer to this tutorial: https://www.youtube.com/watch?v=TbPsou9ok7Y at 55:30 you will find an integration with github. It would help
@akula Thank but i don't want use github because final user doesn't necessary have an account...
That's why i want use passport-local but i don't find tutorial ..
humm got it. The tutorial shows how to integrate with any provider, so I think it worts a try. But I think I understand your idea, you want to generate the api locally and got all control upon loopback files so you can be able to use your desire strategy. I was looking for it too
[ ](https://chat.hyperledger.org/channel/composer?msg=usfBG86WC92mu5iqq) @Pranoti - I don't know why you get your error. But can you try this command and see if you can get the rest server to run OK and GET the historian etc `composer-rest-server -c admin@trade-network -n never -p 3001` - it will run on port 3001 so it won't conflict with your container
@akula i just want use a safe strategy without prior account and i found just passport-local ... I tried to follow some tutorials with github but i didn't suceed...
Has joined the channel.
Has joined the channel.
Has joined the channel.
Perishable Shipping Network
1) "before all" hook
0 passing (1s)
1 failing
1) Perishable Shipping Network "before all" hook:
Error: Failed to save connection profile defaultProfile
at mkdirp.then.then.catch (node_modules\composer-common\lib\fsconnectionprofilestore.js:110:23)
at
can anyone help me to resolve it
Hello everyone,
I am trying to do this new tutorial from hyperledger composer: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
My problem is that when I execute the following command:
composer network start -c PeerAdmin@byfn-network-org1 -n trade-network -V 0.1.14 -o endorsementPolicyFile=tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
I got this error:
Starting business network trade-network at version 0.1.14
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-04-03T14_14_58_287Z-debug.log
"
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-04-03T14_14_58_322Z-debug.log
"
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-04-03T14_14_58_358Z-debug.log
"
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-04-03T14_14_58_348Z-debug.log
"
Command failed
Does anyone knows what is happening?
Thanks ! :)
Hello! Can I emit event by standard `system.AddAsset` transaction?
Has left the channel.
Has joined the channel.
Has joined the channel.
Hello, I have a quick question about creating participants within transactions. In most of the examples they have something like this:
Has joined the channel.
Has joined the channel.
Has joined the channel.
Is there still a composer network install?
I see it in the composer reference but not in the cli composer network --help
What's your version ?
@JoeN 6
v0.16.6
try composer runtime install in v0.16.6
composer network install is in latest version (like 0.19.0n maybe earlier)
composer network install is in latest version (like 0.19.0 or maybe earlier)
hey all - back with another question! I believe this one is a simple fix but the quickstart tutorial gives me a 404. When running `yo hyperledger-composer:angular` I receive the following error ```/home/bkay/.nvm/versions/node/v8.11.1/lib/node_modules/generator-hyperledger-composer/node_modules/composer-common/lib/businessnetworkdefinition.js:183
LOG.entry(method, zipBuffer.length);
^
TypeError: Cannot read property 'length' of undefined``` I read in a GitHub issue that I need to update packages.json?
[ ](https://chat.hyperledger.org/channel/composer?msg=YYwuyQm9DHMnZL6Cb) @CorentinPacaud @JoeN 6 - yes there are some command changes for V0.19.0 - see the release notes: https://github.com/hyperledger/composer/releases
[ ](https://chat.hyperledger.org/channel/composer?msg=RbkiXJP7P9APh7SEp) @brendonakay - there have been some changes recently to the Generator - what version of Composer are you using ? ( ` composer -v ` )
Has joined the channel.
```bkay@***:~$ composer -v
v0.19.0
bkay@***:~$ composer-rest-server --version
v0.19.0
```
@rthatcher :point_up:
it seems like there is talk of reverting to version 0.16.x?
[ ](https://chat.hyperledger.org/channel/composer?msg=qbw9Q4zKDLfqJeCGN) @brendonakay - you could look at the package.json in the folder of the Angular Project and look at the dependencies - I just ran this for the tutorial network:
Clipboard - April 3, 2018 5:50 PM
composer -v
If you are wondering about my composer version, I listed it above [ ](https://chat.hyperledger.org/channel/composer?msg=dQiEy9pjBxReQBxi8)
@brendonakay actually could you also provide the version of the generator-hyperledger-composer you are using, plus the steps you took that resulted in that error message ?
in the `package.json` that I see ```"_id": "generator-hyperledger-composer@0.19.0"```
to create this error, I followed the developer tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html
although, I did have issues with composer-rest-server but reinstalled it to fix them
I've had a bit of a rollercoaster experience with my environment this week
have a meeting now but will be back later
I am trying to start a network I have already worked on previously
following instructions here: https://hyperledger.github.io/composer/next/tutorials/developer-tutorial
When I try to import the network card i.e `composer card import --file networkadmin.card` I get the error: `Error: Card already exists: admin@medichain`
When I try to ping the network , I get :
```
composer network ping --card admin@medichain.comError: Card not found: admin@medichain.com
Command failed
```
Does anyone know what I doing wrong?
@SamuelDare I think you must to clean up your environment using `composer card delete -c XXX@tuturial-network
also, be aware that with newer version of composer some properties have changed
Thanks @akula . I think the flag I needed was `-n` not `c`
nice, Samuel!
Can I use the `PeerAdmin@hlfv1` to install chaincode on my peer?
ie.
```
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile tutorial-network@0.0.1.bna --file networkadmin.card
```
can I swap `tutorail-network@0.0.1bna` for the archive I have just created?
take a close look at the new format o conection.json
i suggest you to rebuild your .bna due all those changes
Thanks! where is this file?
connection.json should be found in root folder
Hi
```
Pros-MacBook-Pro:medichain Santi$ sudo composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName medichain
✖ Installing runtime for business network medichain. This may take a minute...
Error: Error trying install composer runtime. Error: The Composer runtime is already installed on all the peers
```
We are experiencing some additional overhead from composer that we don't understand. It looks like composer is doing a whole bunch of extra stuff when invoking either the CRUD interface of an assetRegistry or submitTransaction to invoke TPF's. Both always seem to take 2 seconds to complete via the Client SDK
any thoughts?
We are experiencing some additional overhead from composer that we don't understand. It looks like composer is doing a whole bunch of extra stuff when invoking either the CRUD interface of an assetRegistry or submitTransaction to invoke TPF's. Both always seem to take 2 seconds to complete via the Client SDK
any thoughts? @sstone1
[ ](https://chat.hyperledger.org/channel/composer?msg=BX4miAW8LgAy9LZ9z) @akula the root of the `project` folder or my actual system root?
@SamuelDare, sorry, on BNA root folder
it doesnt seem to have a connections.json in it :(
```
MedicChain_MVP index.js models permissions.acl
README.md lib networkadmin.card query.qry
composer-logs medichain@0.0.1.bna package.json test
```
I have torn down my network and started it again.
```
medichain Santi$ composer card import --file networkadmin.card
Error: Failed to save card: admin@medichain
Command failed
```
Every runs fine until i try to import the network card
is that because it already exists in the folder?
humm... check this: https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-single-org
Thanks loads Akula. I thought one of the advantages of composer was that it abstracted alot of the node congiguration by spinning up a single node out of the box?
what do you mean with "single node"? After write your code with composer you may test it on playgroud or install directly on local fabric network
Let me hit the books ..thanks @akula I must be confusing myself a bit
@SamuelDare its ok dude, let me know if you need some help
Hi everyone, does anyone know if we can query given a list of IDs?
something like "give me all the participants whose ID are in this list"
Has joined the channel.
@joaofguerreiro You should refer to querys and the CONTAINS properties. Check this out: https://hyperledger.github.io/composer/latest/reference/query-language
@akula thanks for your reply. I checked before the CONTAINS but it isn't what I need. I need to get a list of Participants that have their identifier in a list. Say like "1, 3, 4, 5, 10, 12". I'd want to retrieve the participants with those IDs. All in one query.
SELECT * FROM Participant WHERE userID IN [1, 3, 4, 5, 10, 12]
like that
got it... well its a good question.
[ ](https://chat.hyperledger.org/channel/composer?msg=TozvJ5GyQxThLJjqm) @joaofguerreiro might not be sargable but have you tried used `or`?
@SamuelDare `or` won't do for me because I never know how long the list of IDs will be
should I just make a transaction model that returns all those participants?
Depending on how complex your app is, you could filter them server side?
I could try making one query for each ID, or I could query all of them and then filter server side yes... it's one option. Thanks
can you past here your model?
Has joined the channel.
Has joined the channel.
Just upgraded to composer v0.19.0 on my mac with hlfv11. when I run composer network install, I get this error:
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=JuD3JE5RcWCgFJuH8) @f2918124 have you started your fabric network?
Am trying to delete the exisitng admin card in my local network with the below command
composer card -c delete --n test@hlfv1
am getting the error as below
Not enough non-option arguments: got 0, need at least 1
[ ](https://chat.hyperledger.org/channel/composer?msg=x2DvozhwDQd7YxShd) @kumaraswamypallukuri try `composer card delete -n test@hlfv1`
you dont need the `-c`
err.jpg
hi samuel i tired with out c also
am getting missing argument error
any suggestions
please find the attached screenshot
my composer cli version is composer v0.19.0
Any insight to this error?
what version of composer are u using?
Hyperledger_Composer.png
composer v0.19.0
[ ](https://chat.hyperledger.org/channel/composer?msg=Z87eX3Misbar4uR97) @kumaraswamypallukuri ah im using `0.16`. Infact that might be the cause of alot of my misery
might need to upgrade. Will let you know if i need to thank you in a bit
[ ](https://chat.hyperledger.org/channel/composer?msg=zrR6Nyhruxg8GnMTt) @SamuelDare
Yes,
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3c4a33d89030 hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" About an hour ago Up About an hour 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
aa3d533266b0 hyperledger/fabric-orderer:x86_64-1.1.0 "orderer" About an hour ago Up About an hour 0.0.0.0:7050->7050/tcp orderer.example.com
f86fab038203 hyperledger/fabric-couchdb:x86_64-0.4.6 "tini -- /docker-ent…" About an hour ago Up About an hour 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
5f4be51b5cd3 hyperledger/fabric-ca:x86_64-1.1.0 "sh -c 'fabric-ca-se…" About an hour ago Up About an hour 0.0.0.0:7054->7054/tcp ca.org1.example.com
Has joined the channel.
yeah
on mac
it's working fine
https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html#ubuntu
Operating Systems: Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12
Docker Engine: Version 17.03 or higher
Docker-Compose: Version 1.8 or higher
Node: 8.9 or higher (note version 9 is not supported)
npm: v5.x
git: 2.9.x or higher
Python: 2.7.x
A code editor of your choice, we recommend VSCode.
see if any version is missing in your laptop
install xcode
will reslove your problem
Im using python 2.7x
it installed but I have had issues with some node dependencies in the past
do you know if this call is still valid in `0.19` composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network
do you know if this call is still valid in `0.19`
`composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network`
```
composer --help
composer
it dooest seem to have `runtime` as an option anymore
combing through the release notes and it looks like they might have done away with runtime
can anyone validate this?
[ ](https://chat.hyperledger.org/channel/composer?msg=LDRTrNk6HwRszAAsi) @SamuelDare
See the release notes. You need network install and network start:
https://github.com/hyperledger/composer/releases
[ ](https://chat.hyperledger.org/channel/composer?msg=nY2mgwEzt8iqbu3JP)
By the way, as I said earlier, the network install command is giving me an error 14, so does anyone else get that with a mac, composer v0.19, and hlfv11?
So I have deleted my card store
and triand recreate the peeradmin card
went to my fabric tools root and ran `./createPeerAdmin`
```
Pros-MacBook-Pro:fabric-tools Santi$ sudo ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.19.0
composer card list
List all business network cards
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--card, -c The name of the card to list [string]
--quiet, -q Only display the card name [boolean]
Unknown argument: n
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Failed to import the business network card
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: x-type
message: should have required property 'x-type'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: client
message: should have required property 'client'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: certificateAuthorities
message: should have required property 'certificateAuthorities'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: channels
message: should have required property 'channels'
keyword: type
dataPath: .orderers
schemaPath: #/type
params:
type: object
message: should be object
keyword: type
dataPath: .peers
schemaPath: #/type
params:
type: object
message: should be object
Error: Errors found in the connection profile in the card
Command failed
```
Any experience using Loopback have an ios or android app work with Fabric? Here's the Loopback iOS sdk https://github.com/strongloop-community/loopback-sdk-ios
Any experience using Loopback to have an ios or android app work with Fabric? Here's the Loopback iOS sdk https://github.com/strongloop-community/loopback-sdk-ios
Also open to using Loopback to support React Native on iOS and Android
Has joined the channel.
does hyperledger composer work with sawtooth?
Has joined the channel.
Hi everyone, what happen to fabric if an attacker can modify the chaincode model file in composer?
Has joined the channel.
hi
I need help urgently
been struggling with modelling a business network
[ ](https://chat.hyperledger.org/channel/composer?msg=o8KQxRpCLJ7pyP9A3) @SamuelDare First: export FABRIC_VERSION=hlfv11
you have to switch the FABRIC_VERSION to hlfv11 to use the ./createPeerAdmin which works with composer v0.19/hlfv11. Now, it looks like you are using the ./createPeerAdmin for hlfv1/composer v0.16.x
Has joined the channel.
Has joined the channel.
Hi everyone, I follow the official doc to install composer-cli. After installation, I run then composer command and got the following error:
Hi everyone, I follow official doc to install composer-cli, after that I run composer command and got the error: module.js:549
throw err;
^
Error: Cannot find module './api'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.
Is there any step I missed?
kmohanar
I got error when update the network, anyone know the reason ?
kevin@ubuntu:~/kevin-yoman-bcnetwork$ composer network upgrade -c PeerAdmin@hlfv1 -n kevin-yoman-bcnetwork -V 0.0.2
Upgrading business network kevin-yoman-bcnetwork to version 0.0.2
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (kevin-yoman-bcnetwork:0.0.2))
Command failed
composer network install --card PeerAdmin@hlfv1 --archiveFile kevin-yoman-bcnetwork@0.0.2.bna already executed sucessfully
pls anyone can help me ?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=XvHAQrESMzkS4Y7wZ) @rthatcher Hi @rthatcher .. I tried this. It worked.. But I did not understand the issue.. can you explain how and why it worked on different port?
[ ](https://chat.hyperledger.org/channel/composer?msg=XvHAQrESMzkS4Y7wZ) Hello @rthatcher .. I tried this. It worked.. But I did not understand the issue.. can you explain how and why it worked on different port?
[ ](https://chat.hyperledger.org/channel/composer?msg=XvHAQrESMzkS4Y7wZ) Hello @rthatcher .. I tried this. It worked.. But I did not understand the issue.. can you explain how and why it worked on different port? And i'm able to access on 3001 without authorization so whats the use? didn't understand..
Tried to deploy BNA to Fabric but getting this error,
```
$ composer network install -c PeerAdmin@hlfv1 -a ~/Downloads/comment-network.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
```
@technowar ,this happend sometimes, I tried few minitues later or restart the services,it will work.
For me, it happen when you can't communicate with your blockchain. Have you start fabric ? Have you a firewall or proxy ? ...
My Mac's firewall is currently off
My Mac's firewall is currently off, also no proxy
fabric services in progress ?
@KevinFu restart the service using `~/fabric-tools/.stopFabric.sh && ~/fabric-tools/.startFabric.sh`?
correct
Yeah, currently running
I ran the Fabric before executing the command
account created ?
Is account created different with the card something?
This is the Stackoverflow link: https://stackoverflow.com/questions/49643061/running-composer-network-install-in-hyperledger-throws-out-an-error
createPeerAdminCard.sh
Yep, already had one named `PeerAdmin@hlfv1`
You can try to follow this tutoriel after step 4, it worked for me https://medium.freecodecamp.org/ultimate-end-to-end-tutorial-to-create-an-application-on-blockchain-using-hyperledger-3a83a80cbc71
maybe open a new terminal and try again.
In this tutorial they say run "composer network start ..." to deploy BNA, not "composer network install"; it can be this ..
`composer network start --card PeerAdmin@hlfv1 --businessNetworkName test-bank` like this, @Poneey ?
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile comment-network.bna --file networkadmin.card
Okay
Will give it a try, wish me luck :D
I don't know which item is required or not, this is the complet command
Has joined the channel.
```
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--card, -c The cardname to use to start the network [string] [required]
--networkName, -n Name of the business network to start [required]
--networkVersion, -V Version of the business network to start [required]
--loglevel, -l The initial loglevel to set [choices: "INFO", "WARNING", "ERROR", "DEBUG"]
--option, -o Options that are specific specific to connection. Multiple options are specified by repeating this option [string]
--optionsFile, -O A file containing options that are specific to connection [string]
--networkAdmin, -A The identity name of the business network administrator [string] [required]
--networkAdminCertificateFile, -C The certificate of the business network administrator [string]
--networkAdminEnrollSecret, -S The enrollment secret for the business network administrator [string]
--file, -f File name of the card to be created [string]
Unknown argument: archiveFile
```
archiveFile is an unknown argument
Oh .. It's work for me ..
Maybe we are of different composer version
Can I define ACL in composer to allow create of an asset only through transaction ?. Because I wan't to perform some queries and validate some existing assets to avoid duplication before creating the record. So allowing direct assets create access will allow duplication, and also the transaction requires create access enabled for the asset to create from transaction. Any Ideas>!
Can I define ACL in composer to allow create of an asset only through transaction ?. Because I wan't to perform some queries and validate some existing assets to avoid duplication before creating the record. So allowing direct assets create access will allow duplication, and also the transaction requires create access enabled for the asset to create from transaction. Any Ideas?!
Hi everyone! In composer if an asset have a property (which is a relation to a participant), then why at the time of creating the asset it does not check whether that participant is present in the participant registry or not?
LC.PNG
even then the importer has a relation with BOB-001? why
@technowar yes we probably have. So i can't help you .. Sorry
@divudivyansh From what I saw, Composer doesn't check if participant exists when you create an asset with relation to him. I believe that it check only for relations in transactions
No worries man
@technowar what version do you have ?
composer-cli@0.19.0
composer-cli@0.19.0, yours?
[ ](https://chat.hyperledger.org/channel/composer?msg=PXfhZNCNdYGNRLt2X) @Pranoti - This was just a quick check that the Fabric was working, and that the Business Network was OK with a 'simple' rest server (no authentication).
FYI there is no Community call today at 9am UTC (10am UK, 2:30pm IST, 5pm CST).
[ ](https://chat.hyperledger.org/channel/composer?msg=8JHkkfaueiyr83H2b) @divudivyansh Composer doesn't enforce referential integrity for relationships per se. This question is best answered by the comments shown here -> https://github.com/hyperledger/composer/issues/3065#issuecomment-354953014. To try and preserve integrity of relationships would be a near impossible task (CouchDB is a key/value DB, not a relational DB :-) all it does it attempt to resolve the relationships for an incoming transaction (so that the JS code doesn't need to resolve manually).
[ ](https://chat.hyperledger.org/channel/composer?msg=yfvfyzGhFtz8sdXx5) @Santhosh_S yes - something like ```rule CreateOnlyThruTxn {
description: "example"
participant(p): "org.acme.account.Creator"
operation: ALL
resource(v): "org.acme.account.BankAccount"
transaction(tx): "org.acme.account.CreateAccount"
condition: ( p.getIdentifier() === v.owner.getIdentifier() && v.getIdentifier() === tx.tgtAccount.getIdentifier() )
action: ALLOW
}```
@mahoney1 can you also look into my problem?
Hi guys, How can I deploy my business network to the real-world servers, cloud or hosts? I try to search something related to it such as Cello, Docker Swarm or Kubernetes but I still concern about these which one is better and easier to deploy with Composer. Also, can you guys give me some instruction videos? Thanks
Has joined the channel.
Do we have meeting today?
[ ](https://chat.hyperledger.org/channel/composer?msg=L8MN7G3PR6JpzhfBr) @phanikumar
Ok thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=nDkenzABYJZjPx9Cr) @technowar sorry I just opened chat in mobile app and couldn't see the conversation
No worries man
@technowar can you do an `npm ls -g --depth=0` and also a `docker ps` and paste the results?
Has joined the channel.
```
$ npm ls -g --depth=0
/usr/local/lib
├── composer-cli@0.19.0
├── npm@5.6.0
└── yarn@1.3.2
```
```
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3c53d0e52eca hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 8 minutes ago Up 7 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
4d9f0b0da630 hyperledger/fabric-orderer:x86_64-1.1.0 "orderer" 8 minutes ago Up 8 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
88c7b570ff0d hyperledger/fabric-couchdb:x86_64-0.4.6 "tini -- /docker-ent…" 8 minutes ago Up 8 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
1f8c5bdef12b hyperledger/fabric-ca:x86_64-1.1.0 "sh -c 'fabric-ca-se…" 8 minutes ago Up 8 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
```
I uninstalled both `generator-hyperledger-composer` and `yo` earlier
I tried to feed .bna file that is generated from the sample code using `yo hyperledger-composer:businessnetwork` and still getting error
Hi Team,
I want to Append/Add non optional field (something like comment) on every transaction for an Existing asset. Could you please help on the same.
Has joined the channel.
I believe, right now Hyperledger Composer only works with Fabric. Does anyone have any idea about how to extend it to use Sawtooth as well? How would that be done?
[ ](https://chat.hyperledger.org/channel/composer?msg=vREwsru6NxxtniwKj) @prmdmshra [ ](https://chat.hyperledger.org/channel/composer?msg=vREwsru6NxxtniwKj) @prmdmshra add it to the asset from the transaction? So wouldn't adding an element to an concept array (in " ") thru your transaction suffice (with the trxn ID as its key)?
[ ](https://chat.hyperledger.org/channel/composer?msg=vREwsru6NxxtniwKj) @prmdmshra add it to the asset from the transaction? So wouldn't adding an element to an concept array (in " ") thru your transaction suffice (with the trxn ID as its key)?
[ ](https://chat.hyperledger.org/channel/composer?msg=bmSytP7aLCXkPgpCX) @SandipNirmal Currently Composer does not support Sawtooth, but it (Composer) has been designed in such a way that it could be ported to Sawtooth or other Blockchain platforms: as such, there is no co-dependency with Sawtooth and no special documented connectivity right now. Sawtooth supports the ability to execute JavaScript so should be able to port the Composer code to run on it.
@technowar so, are you stuck at `composer network install` (from your SO "Error: 14 UNAVAILABLE:") now - or - have you moved on to `composer network start` (failing from earlier RC post)?
[ ](https://chat.hyperledger.org/channel/composer?msg=wXCerQ7q7TnDqqQBe) @mahoney1
I am presently adding it to the transactions. But, I will have to query and fetch comments from all transactions for the particular ID and display them together for the End User.
Was just wondering if we can append a new field on a existing asset in Composer as a simpler alternative.
Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=wXCerQ7q7TnDqqQBe) @mahoney1
I am presently adding it to the transactions. But, I will have to query and fetch comments from all transactions for the particular ID and display them together for the End User.
Was just wondering if we can append a new field on a existing asset in Composer as a simpler alternative or Allow a specific type of user(e.g. Approver) to edit the value for a field in the asset.
Thanks!
Has joined the channel.
So, can anybody help me?
https://chat.hyperledger.org/channel/composer?msg=LXGm93JQTdH8sHt2e
@prmdmshra don't know your use case: seems to me the comments are related to the asset and can belong there ; you can control what's added thru trxn which has --> asset relationship so you can easily access that comment field. If you fetch the asset by ID, its easier - you fetch all the comments. Or - the comments can themselves be modeled as a related resource, 'bound' by an asset ID. Either way, they're both accessible in the same trxn so that the Approver can update what was entered before (the transaction delta would show what was different).
[ ](https://chat.hyperledger.org/channel/composer?msg=F5BjG56SjNMNtAuXf) @technowar No. I was looking for composer support for sawtooth but I have not found anything which will say that composer is can be used with sawtooth.
[ ](https://chat.hyperledger.org/channel/composer?msg=F5BjG56SjNMNtAuXf) @technowar No. I was looking for composer support for sawtooth but I have not found anything which will say that composer can be used with sawtooth.
Hej folks,
does someone knows how to handle the issue if composer can't find the npm address of the fabric containers?
[ ](https://chat.hyperledger.org/channel/composer?msg=LXGm93JQTdH8sHt2e) @argman you would have to use something like that shown here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#events
@MartinKrmer `npm address of the fabric containers` - could you explain more?
Hello
At the time of submitting transaction, I am getting error like : Error: Expected a Resource or Concept.
[ ](https://chat.hyperledger.org/channel/composer?msg=M2kFBdcR5uGsnd55Z) @mahoney1 thank you very much. Will try it.
[ ](https://chat.hyperledger.org/channel/composer?msg=oQSBLN9qB3fJNvvqA) @d8bhatta hi there, suggest to look on Stack Overflow - there are answers that could be similar to your issue - eg.see answer -> https://stackoverflow.com/questions/48724746/error-expected-a-resource-or-concept or search using https://stackoverflow.com/search?q=%5Bhyperledger-composer%5D+resource+or+concept
@thiennguyen2824 this blog may help you gain some insights https://www.altoros.com/blog/hyperledger-cello-to-govern-multi-tenant-blockchain-as-a-service/ - obviously, once you've ultimately deployed your Fabric network, Composer is configured to connect to wherever your Fabric runtime infrastructure/cluster etc is deployed:-)
Has joined the channel.
hello friends I have question composer-rest-server and named queries. I have put my named queries in queries.qry at the root level in my project dir. After I invoke composer-rest-server -c admin@my-test-network the rest server starts up but does not parse my named queries and make them available in the rest server for under "Queries" section as mentioned tutorials online. I am using composer v0.16.6 with hlfv1 1.0. any pointers much appreciated :)
Has joined the channel.
Has joined the channel.
@ParthPatil I think you should move to composer 0.19.0
Hello, is it possible to add asset in command line ? For exemple, we can add participant by "run composer participant add -d '{ ... }' -c admin@my-network", do it exist something similar for assets?
thanks @akula I will try that, though I will also have to move to hlfv1.1 right ?
Hi everyone, I have a question regarding the way the transactional logic is executed in a business network with multiple peers. Looking at Ethereum, smart contract logic is executed deterministically on every node as a way to enforce correct logic execution. That way, everyone in the network knows that the smart contract logic is executed properly and state changes are results from 'approved' (or at least known) logic.
How is this kind of concept enforced in the Hyperledger Composer framework? In other words, where is the transactional logic executed and how can all peers trust on the correct execution of the business logic?
[ ](https://chat.hyperledger.org/channel/composer?msg=M2kFBdcR5uGsnd55Z) @mahoney1 Thanks it works
@ParthPatil I think so
[ ](https://chat.hyperledger.org/channel/composer?msg=mT5NDfzZjn87QrhyK) @ParthPatil - after creating the new queries.qry file, have you created a new .bna file and issued the composer network update command? (and you are right - when you move to Composer v0.19.0 you will need Fabric 1.1)
@rthatcher I did not :( I think that might be the problem ! thanks for catching that. let me try to redeploy and check it out
Hi everyone, is it possible to implement something like oracle database vault to prevent peer admins from reading the information from the blocks?
[ ](https://chat.hyperledger.org/channel/composer?msg=KEfqnAWJmHyLXq8oG) @JonasVdB - Composer relies on the Hyperledger Fabric to enforce the endorsement policy for transactions. Endorsement and policies are covered in the Hyperledger Fabric Docs - http://hyperledger-fabric.readthedocs.io/en/release-1.1/
[ ](https://chat.hyperledger.org/channel/composer?msg=Q7HgdRydweN4si6GP) @rthatcher Thank you, that's something I overlooked. Sometimes I can't see the wood for the trees anymore when trying to understand everything.
So, just to check if I understand correctly: the transaction processor functions are transformed into Fabric Chaincode by Composer, which is subject to the endorsement policies on the underlying Fabric blockchain?
Has joined the channel.
getting this error:
```
sudo composer network start --networkName medichain --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@fabric-network --file networkadmin.card
Password:
Starting business network medichain at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)
Command failed
```
using composer 0.19
hyperleger 1.1
@SamuelDare are you sure about the peer version of the fabric? Orderer, peer and CA should be 1.1
I've read this Jyra and seens that the error is no longer on fabric 1.1: https://jira.hyperledger.org/browse/FAB-7645
and fabric-ccenv as well
try a `docker images ` to make sure
from jira:
Support for Node chaincode was introduced in fabric-1.1. So, this problem actually occurs when trying to use a Node chaincode on a pre 1.1 network.
This is actually working as designed.
[ ](https://chat.hyperledger.org/channel/composer?msg=bZ99mpoZt4eGfDAAZ) @mahoney1 Thank you mahoney
[ ](https://chat.hyperledger.org/channel/composer?msg=mKrkjWctTcjQYWKe2) @username343 the nearest for the vault (ie for private keys) is HSM -> see here -> https://hyperledger.github.io/composer/latest/reference/connectionprofile.html and here https://github.com/hyperledger/composer/wiki/HSM-Support for more info. For content in blocks, in Fabric v1.1 GA, you have the ability to encrypt ledger data for confidentiality using the chaincode encryption library, accessible from Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=mKrkjWctTcjQYWKe2) @username343 the nearest for the vault (ie for private keys) is HSM -> see here -> https://hyperledger.github.io/composer/latest/reference/connectionprofile.html and here https://github.com/hyperledger/composer/wiki/HSM-Support for more info. For content in blocks, in Fabric v1.1 GA, you have the ability to encrypt ledger data for confidentiality using the chaincode encryption library, accessible from Composer via Fabric API calls.
@SamuelDare ...and the previous `composer network install` worked fine?
Hello, i just installed composer-playground (npm install -g composer) without error (just warn about fsevents not supporting in linux) but when i try to run "composer-playground" it return : "bash: composer-playground: command not found...". Any idea ?
("npm install -g composer-playground" of course....)
@theathibm
@Pooney - Is it on a Mac ? his may help -> https://stackoverflow.com/questions/48874616/composer-playground-shows-command-not-found-on-mac
@Pooney - Is it on a Mac ? this may help -> https://stackoverflow.com/questions/48874616/composer-playground-shows-command-not-found-on-mac
thanks for responding @mahoney1 , if i go with the option to encrypt the ledger data i'll have to share the key for encryption with every entity that's going to access the ledger data
@mahoney1 : It is on Centos but your link helped me to know what i had to search. It's work, thank
[ ](https://chat.hyperledger.org/channel/composer?msg=HXZhNBDYHxew2hXNL) @mahoney1 yes it did
[ ](https://chat.hyperledger.org/channel/composer?msg=AGNSbBFdojghkrsP3) @username343 right, then the former (ie something similar from the client) is similar to what you're looking for. Others can comment or maybe more help is available on #fabric
removing all docker images and trying to install hlfv1.1 fresh
thanks @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=q8GNGHBzK3KKHRktD) @SamuelDare don't forget to clear out old cards in your $HOME/.composer too then in that case - but you know that :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=xXmgHvcB5ADNEuWh6) @akula thanks hit the nuclear rest button will keep posted
@SamuelDare here my own image list:
hyperledger/fabric-ca:x86_64-1.1.0
hyperledger/fabric-orderer:x86_64-1.1.0
hyperledger/fabric-peer:x86_64-1.1.0
hyperledger/fabric-ccenv:x86_64-1.1.0
hyperledger/fabric-couchdb:x86_64-1.0.6
hyperledger/fabric-baseimage:x86_64-0.4.6
what is error "Error: No connection type provided, probably because the connection profile has no 'x-type' property defined." when we try to connect in a network ? ...
(in playground)
@Poneey x-type is the new name for type from older version of composer, so, take a look at this https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
@Poneey `x-type` defines the version of Hyperledger Fabric that you will connect to, from Composer. To connect to Hyperledger Fabric v1.1, `x-type` must be defined and set to hlfv1 - see https://hyperledger.github.io/composer/latest/reference/connectionprofile.html
@akula @mahoney1 thank for your help, i will try ....
[ ](https://chat.hyperledger.org/channel/composer?msg=NbE9riQpNrzpyAGky) @akula figured out what was wrong. I couldnt never run the `./createPeerAdmin` script without sudo
its an issue I have with mac...a conflict between posix and ACL permissions
new issue
getting this error now :
```
sudo composer-rest-server
Password:
? Enter the name of the business network card to use: admin@medichain
? Specify if you want namespaces in the generated REST API: never use namespaces
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c admin@medichain -n never -w true
Discovering types from business network definition ...
Exception: Error: namespaces has been set to never, but type names in business network are not unique
Error: namespaces has been set to never, but type names in business network are not unique
at ensureConnected.then (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:1161:31)
at
@SamuelDare I think that some of objects names of your BNA are the same, as you instruct composer-rest-server to not use namespaces it has found the equals
I'm following the Developer tutorial, and when I run the command "composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network", it does not identify runtime as a command of composer. Any help?
Ok, I was able to fix it, but I had to change the arguments. Seems there are some changes since I am using 0.19 :)
[ ](https://chat.hyperledger.org/channel/composer?msg=L2vfKBZWyvFom3TMC) @akula Thanks this had worked previously
@SamuelDare, as written here before, you will get problems (with npm) when you use sudo - see here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#installissues for more info on best practices. Our pre-requisites mention not using sudo or root https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
I had assumed that it was becuase I had an angular app in the folder and there were conflicts in the type script
so is it working now?
Hello folks,
I'm building an application (using composer) which includes user management.
I am thinking of the flow:
GithubAuth -> Signup Form
Signup Complete -> Card eMailed to user
Login using the card received on email
But in the docs, it is mentioned:
`Important: Exported identity cards should be handled with care since they contain unprotected credentials. For example, you should never send identity cards via email or other unencrypted means of communication.`
I'll be using multi-user rest-server for APIs
I'm not sure what's the right way, any help would be appreciated.
[ ](https://chat.hyperledger.org/channel/composer?msg=zrRSLxTZnd5CMhPvY) @mahoney1 Thanks i am not using root to install composer. Becuase of my access controls on my pc, I need to use sudo to run the composer commands
Has joined the channel.
@mahoney1 not using sudo anymore but still geting this error:
```
xception: Error: namespaces has been set to never, but type names in business network are not unique
Error: namespaces has been set to never, but type names in business network are not unique
at ensureConnected.then (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:1161:31)
at
This worked on the previous version of composers but can seem to see this as a breaking change in 0.19 release notes
It worked when I used name spaces
:unamused:
and `admin@medichain` is using a v0.19.0 compatible profile ? can send me the bna in DM if you wish me to test a connection.
@mahoney1 to the rescue once gaain
In composer 0.19, what is the correspondent command to composer network update?
In composer 0.19, what is the correspondent command to the 0.18.2 composer network update?
Trying to run the following command: "composer network update -a tutorial-network@0.0.1.bna -c admin@tutorial-network"
Trying to run the following command: "composer network update -a tutorial-network@0.0.1.bna -c admin@tutorial-network", but on version 0.19 there is no update; also, the nearest command to it, upgrade, does not take -a as an argument, and I cant seem to make it work
Trying to run the following command: "composer network update -a tutorial-network@0.0.1.bna -c admin@tutorial-network"; I try to use upgrade instead, but it does not take -a as an argument, and I cant seem to make it work
[ ](https://chat.hyperledger.org/channel/composer?msg=cw8JZAS5CGCXKEc7k) @pedromlcosta - it is now a 2 stage process:
`composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.2.bna`
`composer network upgrade -c PeerAdmin@hlfv1 -n tutorial-network -V 0.0.2`
and you will need to update the version number in the package.json
You can check the Queries tutorial for an example:
https://hyperledger.github.io/composer/latest/tutorials/queries
[ ](https://chat.hyperledger.org/channel/composer?msg=cw8JZAS5CGCXKEc7k) @pedromlcosta - it is now a 2 stage process:
`composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.2.bna`
`composer network upgrade -c PeerAdmin@hlfv1 -n tutorial-network -V 0.0.2`
and you will need to update the version number in the package.json
You can check the Queries tutorial for an example:
https://hyperledger.github.io/composer/latest/tutorials/queries
The releases doc covers this and some other useful information about v0.19.0
https://github.com/hyperledger/composer/releases
Oh, there's a latest version for the tutorials! I was doing the next version ^^ I tried those commands though, and I got the following errors
Clipboard - 4 de Abril de 2018 17:45
[ ](https://chat.hyperledger.org/channel/composer?msg=LP7S7fGFPg2sPYx6K) @pedromlcosta (I think that Next documents are unhelpful at the moment )
[ ](https://chat.hyperledger.org/channel/composer?msg=oSdB8XT4Eqzu6Cy9d) @pedromlcosta stop, tearDown and start fabric ?
I shall do that @sun337 :)
[ ](https://chat.hyperledger.org/channel/composer?msg=sArj2iLE3MoetC4K4) @pedromlcosta no need to do that
[ ](https://chat.hyperledger.org/channel/composer?msg=sArj2iLE3MoetC4K4) @pedromlcosta no need to do that - you can modify your Business network (model, js etc) then edit the package.json file to update the version to 0.0.3 - then you should be able to `install` the new BNA version and then `upgrade` specifying the new version number.
[ ](https://chat.hyperledger.org/channel/composer?msg=sArj2iLE3MoetC4K4) @pedromlcosta no need to do that - you can modify your Business network (model, js etc) then edit the package.json file to update the version to 0.0.3 - then you should be able to `install` the new BNA version and then `upgrade` specifying the new version number.
(stopFabric and startFabric.sh will also work ) :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=EMo5mTzY8Eu3RrKXB) is this okay ?
@SamuelDare - when you start composer-rest-server, just choose this option: ?Specify if you want namespaces in the generated REST API: `use namespaces if conflicting types exist` (2nd option) for your business network with imports. Should be ok then.
@sun337 probably better the user is sent a secure link that validates them to download the business network card
Sounds fairly secure. Thanks. :)
Hello Composer-Ninjas!
Are we aware of the 4MB gRPC limit issues with Composer?
Not sure whether it's logged anywhere - I can open a JIRA ticket if one does not exist
@JonathanLevi If there is a limitation then it is a problem with the node-sdk. The node-sdk has defaults that is supposed to set the the grpc message limits to infinite. Composer doesn't make any explicit settings for this. Also trying to determine if it's actually changable by adding grpcOptions to the connection profile.
@JonathanLevi If there is a limitation then it is a problem with the fabric node-sdk. The node-sdk has defaults that is supposed to set the the grpc message limits to infinite. Composer doesn't make any explicit settings for this. Also trying to determine if it's actually changable by adding grpcOptions to the connection profile.
When I try to use node-red-contrib-composer composer-out node following the example at https://www.npmjs.com/package/node-red-contrib-composer after spinning up a hlfv11 network and creating a peerAdminCard following https://hyperledger.github.io/composer/latest/installing/development-tools.html and then deploying a car-auction network using the sample in composer playground I get the error: "Error: creating resource error Failed to load connector module "composer-connector-undefined" for connection type "undefined". Cannot find module 'composer-connector-undefined'. When I try these steps with composer v0.16/hlfv1.04 it works correctly but with composer v0.19/hlfv11 it fails with the aforementioned error.
The network itself does seem to be connected as I tried loading the restServer and doing transactions which showed up in the composer-playground but node-red is not connecting to this network
Has joined the channel.
I am getting a `422` error when I try to create assets on my angular app. I am unfamiliar with this error and would love tips on diagnosing this
[ ](https://chat.hyperledger.org/channel/composer?msg=35NnF6XegBffFSGNj) @SamuelDare Try creating the asset using the composer rest server to be sure your business network is okay.
I think I might have solved this. I am trying to create participants without defining what group they are a part of.
eg:
```
participant MedicalPractice identified by practiceId {
o String practiceId
o String practiceName
o Integer practiceRegistrationNumber
}
participant MedicalPractitioner identified by practitionerId extends Member {
o String practitionerId
o String userName
o String firstName
o String lastName
o Integer registrationNumber
o String speciality
o String assistant optional
--> MedicalPractice practicionerPlaceOfWork
o String[] authorized optional
}
```
I was trying to create MedicalPracticioner before member
Can anyone suggest a more logical way of doing this / desigining the cto file?
as it stands, When a medical practioner joins the platform, he cannot subscribe unless his medical practice has already joined
the user experience leaves little to be desired
[ ](https://chat.hyperledger.org/channel/composer?msg=3f8oJEaTgQJkctJym) @gen_el thanks!
Also is it possible for a class to `extend` more than one parameter? eg `participant MedicalPractitioner identified by practitionerId extends Member, MedicalPractice `
@SamuelDare It sounds like the Practitioner is a person
@SamuelDare It sounds like the Practitioner is a person, while the practice is an org
@SamuelDare If you solution is primarily for the practice driven, then your practitioner needs to belong to practice to be registered
@SamuelDare If your solution is primarily for the practice driven, then your practitioner needs to belong to practice to be registered
Preferrably, the Practice may register the Practitioner.
@SamuelDare How if you actually expect practitioners register as stand alone entities, then you have to make the "Medical practice" property optional. Also, does the practitioner always belong to 1 practice?
@SamuelDare However, if you actually expect practitioners register as stand alone entities, then you have to make the "Medical practice" property optional. Also, does the practitioner always belong to 1 practice?
@SamuelDare However, if you actually expect practitioners to register as stand alone entities, then you have to make the "Medical practice" property optional. Also, does the practitioner always belong to 1 practice?
@SamuelDare However, if you actually expect practitioners to register as stand alone entities, then you have to make the "Medical practice" property optional. Also, does the practitioner always have 1 practice?
[ ](https://chat.hyperledger.org/channel/composer?msg=YBvpNWRE5v3TjEBLu) @gen_el Thanks you've pointed me the right direction. I wanted to keep it 1 to 1 as this is an mvp but in reality they might be working with different practices
Could anyone help me in moving to v.0.19.0 using the ORDER BY option in a query? I see the indexes on CouchDB are generated, but now from the rest server I get this error:
```
error executing chaincode: transaction returned with failure: Error: Couch DB Error:no_usable_index, Status Code:400, Reason:No index exists for this sort, try indexing by the sort fields.
```
while on the unit test I get this:
```
Cannot sort on field(s) "\$class,\$registryType,\$registryId,scheduledTime" when using the default index
```
Any idea? Thank you
What does the error 'Error: 1 CANCELLED: Received http2 header with status: 503' mean when attempting to install the composer runtime?
What does the error `Error: 1 CANCELLED: Received http2 header with status: 503` mean when attempting to install the composer runtime
@nicolapaoli could you create a stackoverflow entry with more details such as your query file and information about the generated indexes. Do the indexes look correct ?
Has joined the channel.
Good evening!
Question: would Hyperledger Fabric w/ Composer be a good choice as the underlying blockchain system for a platform which allows to add surveys and allow others to fill out the surveys?
Is there a parser for event notification messages in Node.js? What is the recommended way of extracting/parsing information from event notification messages in Node.js?
any idea why the vehicle life cycle demo is failing to launch
event notification
https://github.com/hyperledger/composer-sample-applications/issues/126
I am trying to run composer v0.19.0 on hlvfv11 from behind a proxy.
I am getting an error when I execute composer network start
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code ENOTFOUND
npm ERR! errno ENOTFOUND
npm ERR! network request to https://registry.npmjs.org/composer-common failed, reason: getaddrinfo ENOTFOUND registry.npmjs.org registry.npmjs.org:443
npm ERR! network This is a problem related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settings.
npm ERR! network
npm ERR! network If you are behind a proxy, please make sure that the
npm ERR! network 'proxy' config is set properly. See: 'npm help config'
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-04-04T21_05_38_474Z-debug.log
"
@f2918124 providing an npmrc file will npm specific settings to handle being behind a proxy is what you are going to have to do. You pass the npm rc file as an option when you install your business network onto your peers. Hopefully the information here is enough to help you
https://hyperledger.github.io/composer/latest/managing/connector-information
Hi folks! I got this error when I'm building card in memory and trying to ping connection:
`Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '8d24cb5bb624b7b0669638ea81b0780cfed1dab962254c3e877204c2277c9300', has not been registered
at _checkRuntimeVersions.then.catch (/home/ubuntu/temp/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:787:34)`
Hi folks! I got this error when I'm building card in memory and trying to ping connection:
```Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '8d24cb5bb624b7b0669638ea81b0780cfed1dab962254c3e877204c2277c9300', has not been registered
at _checkRuntimeVersions.then.catch (/home/ubuntu/temp/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:787:34)```
Hi folks! I got this error when I'm building card in memory and trying to ping connection:
```Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '8d24cb5bb624b7b0669638ea81b0780cfed1dab962254c3e877204c2277c9300', has not been registered
at _checkRuntimeVersions.then.catch (/home/ubuntu/temp/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:787:34)```
code:
```
let cardStore = NetworkCardStoreManager.getCardStore({type: 'composer-wallet-inmemory'});
const metadata = {
userName: 'admin',
version: 1,
enrollmentSecret: 'adminpw',
businessNetwork: 'optherium-wps',
}
const card = new IdCard(metadata, connectionProfile);
card.setCredentials({
privateKey: '-----BEGIN PRIVATE KEY-----\n' +
'MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQglP7hMS7nUvImGvdU\n' +
'O7vErlYFVPu6W81eDnb05eW0eVShRANCAARNQfvX5P1TDCCxhqs2L27QaJVGRjVm\n' +
'HCxfVe6t5+15nrMvYb7GTkGRZAtE9UXZ4olmzUov3yFblcWU4Ufy1MRJ\n' +
'-----END PRIVATE KEY-----',
certificate: "-----BEGIN CERTIFICATE-----\nMIICAjCCAaigAwIBAgIUIN+0Sa9+7IGX06yC6rbKyH6yIy0wCgYIKoZIzj0EAwIw\nczELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNh\nbiBGcmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMT\nE2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTgwNDA0MTg0MjAwWhcNMTkwNDA0MTg0\nNzAwWjAhMQ8wDQYDVQQLEwZjbGllbnQxDjAMBgNVBAMTBWFkbWluMFkwEwYHKoZI\nzj0CAQYIKoZIzj0DAQcDQgAETUH71+T9UwwgsYarNi9u0GiVRkY1ZhwsX1Xureft\neZ6zL2G+xk5BkWQLRPVF2eKJZs1KL98hW5XFlOFH8tTESaNsMGowDgYDVR0PAQH/\nBAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFCuz/XtDWbUdvJ+vbYPR6OO0\nZZKeMCsGA1UdIwQkMCKAIBmrZau7BIB9rRLkwKmqpmSecIaOOr0CF6Mi2J5H4aau\nMAoGCCqGSM49BAMCA0gAMEUCIQDqskgz+jACXZ1I/AXG42lwTTQrFlbHy8MzXcm7\nt1SDTAIgRnfnO3lcdPHDAC+m1dWcZ7NJntwqD6bamtkLDEI4YUY=\n-----END CERTIFICATE-----\n"
})
let cardName = `admin@optherium-wps`;
Promise.resolve()
.then(() => {
return cardStore.put(cardName, card);
})
.then(() => {
let businessNetworkConnection = new BusinessNetworkConnection({cardStore});
businessNetworkConnection.connect(cardName)
.then(() => {
return businessNetworkConnection.ping();
})
.then(() => {
console.log('Yesss')
})
.catch((error) => {
console.log(card.getCredentials());
console.log(`Error`);
console.log(error);
})
})
```
Hi folks! I got this error when I'm building card in memory and trying to ping connection:
```Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '8d24cb5bb624b7b0669638ea81b0780cfed1dab962254c3e877204c2277c9300', has not been registered
at _checkRuntimeVersions.then.catch (/home/ubuntu/temp/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:787:34)```
code:
```
let cardStore = NetworkCardStoreManager.getCardStore({type: 'composer-wallet-inmemory'});
const metadata = {
userName: 'admin',
version: 1,
enrollmentSecret: 'adminpw',
businessNetwork: 'optherium-wps',
}
const card = new IdCard(metadata, connectionProfile);
card.setCredentials({
privateKey: '-----BEGIN PRIVATE KEY-----\n' +
'MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQglP7hMS7nUvImGvdU\n' +
'O7vErlYFVPu6W81eDnb05eW0eVShRANCAARNQfvX5P1TDCCxhqs2L27QaJVGRjVm\n' +
'HCxfVe6t5+15nrMvYb7GTkGRZAtE9UXZ4olmzUov3yFblcWU4Ufy1MRJ\n' +
'-----END PRIVATE KEY-----',
certificate: "-----BEGIN CERTIFICATE-----\nMIICAjCCAaigAwIBAgIUIN+0Sa9+7IGX06yC6rbKyH6yIy0wCgYIKoZIzj0EAwIw\nczELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNh\nbiBGcmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMT\nE2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTgwNDA0MTg0MjAwWhcNMTkwNDA0MTg0\nNzAwWjAhMQ8wDQYDVQQLEwZjbGllbnQxDjAMBgNVBAMTBWFkbWluMFkwEwYHKoZI\nzj0CAQYIKoZIzj0DAQcDQgAETUH71+T9UwwgsYarNi9u0GiVRkY1ZhwsX1Xureft\neZ6zL2G+xk5BkWQLRPVF2eKJZs1KL98hW5XFlOFH8tTESaNsMGowDgYDVR0PAQH/\nBAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFCuz/XtDWbUdvJ+vbYPR6OO0\nZZKeMCsGA1UdIwQkMCKAIBmrZau7BIB9rRLkwKmqpmSecIaOOr0CF6Mi2J5H4aau\nMAoGCCqGSM49BAMCA0gAMEUCIQDqskgz+jACXZ1I/AXG42lwTTQrFlbHy8MzXcm7\nt1SDTAIgRnfnO3lcdPHDAC+m1dWcZ7NJntwqD6bamtkLDEI4YUY=\n-----END CERTIFICATE-----\n"
})
let cardName = `admin@optherium-wps`;
Promise.resolve()
.then(() => {
return cardStore.put(cardName, card);
})
.then(() => {
let businessNetworkConnection = new BusinessNetworkConnection({cardStore});
businessNetworkConnection.connect(cardName)
.then(() => {
return businessNetworkConnection.ping();
})
.then(() => {
console.log('Yesss')
})
.catch((error) => {
console.log(card.getCredentials());
console.log(`Error`);
console.log(error);
})
})
```
Any thoughts what I'm doing wrong?
Hi @davidkel this is the entry I created on stackoverflow with some more details:
https://stackoverflow.com/q/49660607/9599003
Let me know if you have any suggestions. Thank you.
[ ](https://chat.hyperledger.org/channel/composer?msg=askwXQQJgZxNWeJPQ)
@nicolapaoli thank you, I will get someone more familiar in this area to take a look tomorrow morning.
@krabradosty You need to bind the identity you are using for the card to a participant. The error message you are getting is saying that the identity in your card has not been registered to the runtime and bound to a participant.
trying to update my network (change model definition) and the docs point to `composer network update`. This is throwing an` incorrect command error`.is `composer network update ` a call or do we have to use `composer network update`?
Has joined the channel.
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
`namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}`
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`.
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`.
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`.
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`.
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`.
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
`}`
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`.
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
`namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}`
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`.
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
\[namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}\]
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`.
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`.
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
```namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}```
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`.
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
```namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}```
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`.
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
```namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}```
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`. Something like this:
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
```query GetTransactionsThatHaveAsset2 {
description: ""
statement:
SELECT org.acme.biznet.Transact
WHERE (asset1.contents CONTAINS (Asset2Id == _$propId))
}```
```namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}```
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`. Something like this:
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
```namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}```
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`. Something like this:
```query GetTransactionsThatHaveAsset2 {
description: ""
statement:
SELECT org.acme.biznet.Transact
WHERE (asset1.contents CONTAINS (Asset2Id == _$propId))
}```
Hello all, I am having trouble writing a specific query, and I was wondering if anyone could assist me.
```namespace org.acme.biznet
asset Asset1 identified by Asset1Id {
o String Asset1Id
--> Asset2[] contents
}
asset Asset2 identified by Asset2Id {
o String Asset2Id
}
transaction Transact {
--> Asset1 asset1
}```
I want to select all transactions that contain an instance of `Asset A` that contains a user specified instance of `Asset B`. This is a query that I have written, but I get back an empty `[]` when I expect data to come back:
```query GetTransactionsThatHaveAsset2 {
description: ""
statement:
SELECT org.acme.biznet.Transact
WHERE (asset1.contents CONTAINS (Asset2Id == _$propId))
}```
Has joined the channel.
hello everyone,what about the front-end application for composer?does it only support angular? can we make changes to the angular app generated by yeoman? how do rest api calls works with that.
[ ](https://chat.hyperledger.org/channel/composer?msg=uAep9ts6ktXmZZYXn) @mahoney1 many thanks :) . I will try it now
The html of the blockquote within
https://hyperledger.github.io/composer/latest/installing/development-tools.html#controlling-your-dev-environment
is showing up as
```... Examples of this include running it via Kubernetes, or on a managed platform such as IBM Cloud. For further details, see
Has joined the channel.
Hi Experts
Can I create http rest apis for my network using fabric composer?
@NOWHERE
Has joined the channel.
Anyone knows about this issue?? ```Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Failed to load gRPC binary module because it was not installed for the current system Expected directory: node-v57-linux-x64-glibc Found: [node-v59-linux-x64-glibc] This problem can often be fixed by running "npm rebuild" on the current system Original error: Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node'-Failed to load gRPC binary module because it was not installed for the current system Expected directory: node-v57-linux-x64-glibc Found: [node-v59-linux-x64-glibc] This problem can often be fixed by running "npm rebuild" on the current system Original error: Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node'-Failed to load gRPC binary module because it was not installed for the current system Expected directory: node-v57-linux-x64-glibc Found: [node-v59-linux-x64-glibc] This problem can often be fixed by running "npm rebuild" on the current system Original error: Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node'-Failed to load gRPC binary module because it was not installed for the current system Expected directory: node-v57-linux-x64-glibc Found: [node-v59-linux-x64-glibc] This problem can often be fixed by running "npm rebuild" on the current system Original error: Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node'-Failed to load gRPC binary module because it was not installed for the current system Expected directory: node-v57-linux-x64-glibc Found: [node-v59-linux-x64-glibc] This problem can often be fixed by running "npm rebuild" on the current system Original error: Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node'-Failed to load gRPC binary module because it was not installed for the current system Expected directory: node-v57-linux-x64-glibc Found: [node-v59-linux-x64-glibc] This problem can often be fixed by running "npm rebuild" on the current system Original error: Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node'-Failed to load gRPC binary module because it was not installed for the current system Expected directory: node-v57-linux-x64-glibc Found: [node-v59-linux-x64-glibc] This problem can often be fixed by running "npm rebuild" on the current system Original error: Cannot find module '/usr/local/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node'```
When I run composer this error message shows on browser
@davidkel It has already been binded. I can ping network from a CLI
@pankajcheema You need to update grpc ( npm update --save grpc)
@krabradosty using the CLI can you do a `composer identity list` does it show an identity with the identifier `8d24cb5bb624b7b0669638ea81b0780cfed1dab962254c3e877204c2277c9300` ? If it doesn't then you haven't bound the identity in your code to a participant.
@davidkel
```
List all identities in the business network
-
$class: org.hyperledger.composer.system.Identity
identityId: 7c439d81037c244cc782f7ab1d5e546507ad025ef2dab704465b8f7bc627dad4
name: admin
issuer: ac3dbcbe135ba48b29f97665bb103f8260c38d3872473e584314392797c595f3
certificate:
"""
-----BEGIN CERTIFICATE-----
MIICAjCCAaigAwIBAgIUIN+0Sa9+7IGX06yC6rbKyH6yIy0wCgYIKoZIzj0EAwIw
czELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNh
biBGcmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMT
E2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTgwNDA0MTg0MjAwWhcNMTkwNDA0MTg0
NzAwWjAhMQ8wDQYDVQQLEwZjbGllbnQxDjAMBgNVBAMTBWFkbWluMFkwEwYHKoZI
zj0CAQYIKoZIzj0DAQcDQgAETUH71+T9UwwgsYarNi9u0GiVRkY1ZhwsX1Xureft
eZ6zL2G+xk5BkWQLRPVF2eKJZs1KL98hW5XFlOFH8tTESaNsMGowDgYDVR0PAQH/
BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFCuz/XtDWbUdvJ+vbYPR6OO0
ZZKeMCsGA1UdIwQkMCKAIBmrZau7BIB9rRLkwKmqpmSecIaOOr0CF6Mi2J5H4aau
MAoGCCqGSM49BAMCA0gAMEUCIQDqskgz+jACXZ1I/AXG42lwTTQrFlbHy8MzXcm7
t1SDTAIgRnfnO3lcdPHDAC+m1dWcZ7NJntwqD6bamtkLDEI4YUY=
-----END CERTIFICATE-----
"""
state: ACTIVATED
participant: resource:org.hyperledger.composer.system.NetworkAdmin#admin
Command succeeded
```
It seems that composer is trying to issue new identity instead of using existing one
It seems that composer is trying to issue new identity instead of using existing one. And he can't do it, because it's admin card and new enrollment is forbidden.
@krabradosty That definitely would explain what you are seeing. Out of interest do you get the same problem if you used the filesystem card store rather than the in memory one ?
No, fs works well
@krabradosty ok, sounds like a bug, could you raise a github issue please on https://github.com/hyperledger/composer ?
@davidkel OK
[ ](https://chat.hyperledger.org/channel/composer?msg=ANQhJhLbmG45zaaHr) @victer - this might be the missing link: https://console.bluemix.net/catalog/services/blockchain
[ ](https://chat.hyperledger.org/channel/composer?msg=BYzWJCvdioqFgZJ8y) @rthatcher Yes, Azure simply deploys 4 Ubuntu VM in which it runs a hyperledger node in docker. There is one VM for a CA, one for an Orderer and two VM for peers. While investigating I noticed that Composer was upgraded, so I decided to redeploy the VM with Fabric 1.1. Composer is installed on the VM of the CA and it's version 0.19.0. I've updated the deployment scripts from MS so that the setup is, as far as I can see, the same as for the Composer tutorial - except the dockers are on different VM on the same network. Now I get a new error when trying the last step of https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org: `Error: Error trying to ping. Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP]
Command failed`. In debug mode, here are the last few lines of the dump: `debug: [Hyperledger-Composer] undefined:HLFConnectionManager :fabric-client() [crypto_ecdsa_aes]: ecdsa signature: Signature {
r:
[ ](https://chat.hyperledger.org/channel/composer?msg=tXTSgGT6wX3FAjT9q) @SamuelDare - with Composer v0.19.0 the CLI commands have been streamlined. So firstly make sure you are viewing the correct version of the docs starting here: https://hyperledger.github.io/composer/latest/ (for v0.19.0 you should not use URLs with 'next' in them. The steps to take for upgrading your network:
1. Make changes to the Model, ACL, JS, queries etc
2. Update the version number in package.json file
3. Generate a new .bna file `composer archive create`
4 . Install the new code on to the peers `compose network install`
[ ](https://chat.hyperledger.org/channel/composer?msg=tXTSgGT6wX3FAjT9q) @SamuelDare - with Composer v0.19.0 the CLI commands have been streamlined. So firstly make sure you are viewing the correct version of the docs starting here: https://hyperledger.github.io/composer/latest/ (for v0.19.0 you should not use URLs with 'next' in them. The steps to take for upgrading your network:
1. Make changes to the Model, ACL, JS, queries etc
2. Update the version number in package.json file
3. Generate a new .bna file `composer archive create`
4 . Install the new code on to the peers `compose network install`
5. Upgrade (not update) the running network `composer network upgrade` (remember to use ` -V ` for the new version specified in package.json)
@fabienpe - Hi - are you saying that the `composer network start` was successful, but the `composer network ping` failed?
Are you using Fabric 1.1 GA (not rc1 or alpha)?
Have you issued commands to create the Channel ?
Is there an existing user (such as 'admin') already created in the CA for which you have the enrollment secret?
@pankajcheema - have you installed composer using root or sudo? (sudo or root should not be used) Please see this section in our Wiki : https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues
@rthatcher yeoman generator generates the skeleton in angular right? can we use other frameworks such as vue for frontend?
Hi again! Why do requests to the ledger state from Composer always go through one and the same of my peers? (There are a lot of debug logs from one of my peers and silence from others)
Hi again! Why do requests to the ledger state from Composer always go through the one and the same of my peers? (There are a lot of debug logs from one of my peers and silence from others)
[ ](https://chat.hyperledger.org/channel/composer?msg=sPuH52GhEuekuofbW) @rthatcher Yes `composer network start` was successful but not `composer network ping`. Command to create the channel have been created on peer0 and both peer0 and peer1 have joined the channel. Those commands were successful. As for your last question, there is indeed an admin account and password which I have for the CA. I use this version of Fabric: https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric/hyperledger-fabric/linux-amd64-1.1.0/hyperledger-fabric-linux-amd64-1.1.0.tar.gz
[ ](https://chat.hyperledger.org/channel/composer?msg=sPuH52GhEuekuofbW) @rthatcher Yes `composer network start` was successful but not `composer network ping`. Commands to create the channel have been entered on peer0 and both peer0 and peer1 have joined the channel. Those commands were successful. As for your last question, there is indeed an admin account and password which I have for the CA. I use this version of Fabric: https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric/hyperledger-fabric/linux-amd64-1.1.0/hyperledger-fabric-linux-amd64-1.1.0.tar.gz
Hi,
can someone tell me: for a deployed Fabric v1.1 network:
Is it necessary to have a CA in the connection profile (key "certificateAuthorities" in JSON file) if the crypto-config is already deployed on the peers/orderers and I do not plan to add new entities for now?
[ ](https://chat.hyperledger.org/channel/composer?msg=YKSLd8y7QkM7ZbR8c) @iDix - one of the first tasks is to Install then Start a Business Network. When you start the Business Network, a Network Admin participant is created and Bound to an Identity in the CA - for this a connection to the CA will obviously be required. The first time that the Network Admin card is used to access the Business Network, it will also require the CA to exchange the initial secret for certificates. I have not tried removing the CA, but you would certainly not be able to issue any more user identities.
[ ](https://chat.hyperledger.org/channel/composer?msg=5sTTbD7zwSuLGyttj) @rthatcher But I started the network by copying the crpyto-config to a local directory on all peers/orderers and referenced them by env-variables. I did not need the CA until now and everything is setup. I included a dummy certificateAuthority (which cannot respond to requests, since it is not setup as a CA) and everything is working fine. But the question is whether Composer would complain if I left the certificateAuthorities section out completely.
[ ](https://chat.hyperledger.org/channel/composer?msg=x3uzRnDRJYNyGXsEx) @hamza113 feel free to raise an issue (request) for this
[ ](https://chat.hyperledger.org/channel/composer?msg=x3uzRnDRJYNyGXsEx) @hamza113 correct - on 2nd question, feel free to raise an issue (request) for this
@krabradosty All chaincode query requests will go to the same single peer chosen from the list of peers in the organisation you are requesting from. We currently don't perform any sort of round robin type approach. The only time it will switch to another peer in your organisation is if a request to the peer fails with a connect failed
@all. while running ./prereqs-ubuntu.sh throws me below error
./prereqs-ubuntu.sh: line 1: syntax error near unexpected token `newline'
./prereqs-ubuntu.sh: line 1: `'
[ ](https://chat.hyperledger.org/channel/composer?msg=5sTTbD7zwSuLGyttj) @rthatcher But I will try it later and tell whether it worked. At the moment it's just a proof of concept and not supposed to be working in all scenarios
how to solve this error
[ ](https://chat.hyperledger.org/channel/composer?msg=NEfws324NiGhhuMcM) @suva so it looks like you are fetching it through a web page instead of (say) extracting the script from an archive.
[ ](https://chat.hyperledger.org/channel/composer?msg=NEfws324NiGhhuMcM) @suva so it looks like you are fetching/downloading it through a web page instead of (say) extracting the script from an archive.
@iDix Currently it is mandatory to have a CA definition even if you don't perform any actions that would require you to interact with a fabric CA.
how to resolve this error
@davidkel Got it. Thanks
@mahoney1 . plz sugest what i ll do to resolve this error
[ ](https://chat.hyperledger.org/channel/composer?msg=W9sMrXPnqKrMSmaWZ) @suva can clone the composer repo to locate it or click 'Raw' in the Github page and paste it into your favourite editor for file `prereqs-ubuntu.sh` as another suggestion?
@mahoney1 . I am using this repo curl -O https://hyperledger.github.io/composer/prereqs-ubuntu.sh
[ ](https://chat.hyperledger.org/channel/composer?msg=wNFAj47wPYHpqYWw9) @davidkel Ok, thanks
Has joined the channel.
Is composer capable of creating Http Rest Api's?
Search for composer-rest-server
Clipboard - April 5, 2018 10:52 AM
[ ](https://chat.hyperledger.org/channel/composer?msg=6XmQBDHmQELEML9EE) @suva exactly, as shown in https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html and just tested this to check:
@mahoney1 . Thanks. I have downloaded from the same path what mentioned in the https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html . But i am unable to get the details what you have given in the pic
@suva, what version of Ubuntu are you using? This has obviously worked for you previously, new build environment?
16.04
Hi guys. I got a problem while following this tutorial https://hyperledger.github.io/composer/latest/applications/node. Actually, I wanna connect my own NodeJS server to Blockchain business network without using composer-rest-server but this show error that "Network configuration invalid". I try to fix and also import the admin card but it still errors. Can someone give me advice?
Hi, how can i see all the installed version of chaincode .
Hi, how can i see all the installed version of chaincode ?
Is is mandatory that npm install -g composer-cli/npm install -g composer-rest-server will install withoot sudo on ubuntu 16.04
it throwing error while installing permission denied to /usr/lib/node_module folder
If i will change the permission of that folder to 777 then also it throws me
npm ERR! path ../lib/node_modules/composer-rest-server/cli.js
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall symlink
npm ERR! Error: EACCES: permission denied, symlink '../lib/node_modules/composer-rest-server/cli.js' -> '/usr/bin/composer-rest-server'
npm ERR! at Error (native)
can one participant search another participant? for example i have two participants in my network shopkeepers and buyers. can buyers search shopkeepers?
@mahoney1 thanx for the reply how do we raise an issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=s4C4buE2Dz3W6SkFQ) @suva this is an npm related permission error. I do not recommend using sudo for versioning reasons. Here is a quick, well explained fix to solve your Eaccess problem: https://www.youtube.com/watch?v=bxvybxYFq2o
[ ](https://chat.hyperledger.org/channel/composer?msg=RYFpmXyGEEhpxXjHu) @matrisis - you can see the current active version on the output of a `composer network ping` command, and you can see the installed version by looking at the folder `/var/hyperledger/production/chaincodes/` in a Peer container. e.g.
```
docker exec -it peer0.org1.example.com /bin/sh
# ls /var/hyperledger/production/chaincodes/
tutorial-network.0.0.1 tutorial-network.0.0.3
tutorial-network.0.0.2 tutorial-network.0.0.4
# exit
```
Hi;
I receive the following error: RangeError: Maximum call stack size exceeded.
When trying to update a boolean variable of an asset.
Do you have any ideas what could potentially be the reason?
[ ](https://chat.hyperledger.org/channel/composer?msg=wCcYT2o8zhyrg5Jis) Thnaks !
[ ](https://chat.hyperledger.org/channel/composer?msg=wCcYT2o8zhyrg5Jis) Thanks !
When starting a network (composer network start, after card-import and network-install were successful) on a Fabric-peer in my local network, I get the following error.
"Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated mailcomposer@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.9: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated buildmail@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.10: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
> x509@0.3.3 install /chaincode/output/node_modules/x509
> node-gyp rebuild
gyp ERR! clean error
gyp ERR! stack Error: EACCES: permission denied, rmdir 'build'
gyp ERR! System Linux 4.13.0-38-generic
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /chaincode/output/node_modules/x509
gyp ERR! node -v v8.9.4
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm WARN sampl@1.0.0 No repository field.
npm WARN The package composer-common is included as both a dev and production dependency.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! x509@0.3.3 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the x509@0.3.3 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-04-05T12_06_13_615Z-debug.log
"
Command failed
"
I guess the central error is the line "gyp ERR! stack Error: EACCES: permission denied, rmdir 'build'"
Does anybody know/understand where he tries to do that? Then I could just change the ownership of that folder (as described in the video provided by @WarWolf89 ). Or any other thoughts on how to fix this? I'm running on a peer running on Ubuntu 16.04 (xenial)
[ ](https://chat.hyperledger.org/channel/composer?msg=kTtTpgj2kdAcQTjvK) @iDix what node version are you running?
[ ](https://chat.hyperledger.org/channel/composer?msg=XvDqwGfqQBfbStZRC) @WarWolf89 npm version 5.8.0
[ ](https://chat.hyperledger.org/channel/composer?msg=oBs5tmZ7uxAbT3wGL) @hamza113 q1. yes - eg passing it in to the function as on the trxn or example shown here in the docs https://hyperledger.github.io/composer/latest/jsdoc/module-composer-runtime.ParticipantRegistry.html#get__anchor - you'll already have `getcurrentParticipant()` method available for the participant invoking. 2) you can raise it here -> https://github.com/hyperledger/composer/issues
[ ](https://chat.hyperledger.org/channel/composer?msg=oBs5tmZ7uxAbT3wGL) @hamza113 q1. yes - eg passing it in to the function on the trxn or example shown here in the docs https://hyperledger.github.io/composer/latest/jsdoc/module-composer-runtime.ParticipantRegistry.html#get__anchor - you'll already have `getcurrentParticipant()` method available for the participant invoking. 2) you can raise it here -> https://github.com/hyperledger/composer/issues
@iDix so node-gyp is basically a tool to compile modules for nodeJs that uses npm calls. It tries to call commands on the build folder, and it has no permissions to do so. Again I recommend fixing the permission issues like with npm
[ ](https://chat.hyperledger.org/channel/composer?msg=eMiYw74vjgt2PGGj7) @MartinKrmer would have to see your model / logic to know more - want to post it on Stack Overflow?
@iDix alternativley you can try npm config set unsafe-perm true see: https://docs.npmjs.com/misc/config#unsafe-perm
@iDix alternativley you can try ```npm config set unsafe-perm true``` see: https://docs.npmjs.com/misc/config#unsafe-perm
@iDix The error you are receiving is coming back from fabric. It is attempting to build a chaincode container image. I've never seen a chaincode build fail with the error you are seeing
@WarWolf89 I am trying aroung with what you said, but I don't know what directory the error is thrown. I changed the ownership of the node_modules directly (although that already was in my home folder (~)) and the .nvm, but those don't seem to fix the problem (probably because I already owned them, since they were in my home directory). I installed node-gyp and rebuild manually (npm install -g node-gyp rebuild), like suggested by @Poneey in a PM, but still the same error.
Also the file that is said to be produced (/root/.npm/_logs/...) is not present. :P
@iDix have you tried solution no 2?
@davidkel Yeah, it's weird. But ultimately - as far as I can see - it doesn't matter whether it's a Fabric or Composer issue, because it is simply a node issue?
@WarWolf89 On it at the moment,
@iDix All of this is running inside a special fabric docker container, you have no control over it. You shouldn't hit errors with permissions because the container has it's own file system
@davidkel I am running the peer commands directly from the command line (for reference on how I setup the Fabric network, see here: https://blockchain-fabric.blogspot.de/2017/09/underconstruction-setting-up-blockchain.html). It's real VMs, not docker containers. Or are you referring to some internal Fabric doings?
@iDix even though the peer is running natively (and I haven't tried that myself) I would expect fabric to still create a docker container to build the chaincode image. It's in this container that npm install --production is run and it provides the version of node/npm to use. At a guess it probably mounts a volume into this chaincode building container mapped to /chaincode/output to capture the output of the build and it is there that the permission problems are arising
@iDix even though the peer is running natively (and I haven't tried that myself) I would expect fabric to still create a docker container to build the chaincode image. It's in this container that npm install --production is run and it provides the version of node/npm to use. At a guess it probably mounts a volume into this chaincode building container mapped to /chaincode/output to capture the output of the build and it is there that the permission problems are arising. It's a guess as I haven't delved into the chaincode image builder of fabric.
@iDix even though the peer is running natively (and I haven't tried that myself) I would expect fabric to still create a docker container to build the chaincode image. It's in this container that npm install --production is run and it provides the version of node/npm to use. ~At a guess it probably mounts a volume into this chaincode building container mapped to /chaincode/output~ Doesn't look like it does this via volume mounting to capture the output of the build and it is there that the permission problems are arising. It's a guess as I haven't delved into the chaincode image builder of fabric.
@iDix even though the peer is running natively (and I haven't tried that myself) I would expect fabric to still create a docker container to build the chaincode image. It's in this container that npm install --production is run and it provides the version of node/npm to use. ~At a guess it probably mounts a volume into this chaincode building container mapped to /chaincode/output~ (Doesn't look like it does this via volume mounting) It then uses streams to capture the output of the build and it is there that the permission problems are arising. It's a guess as I haven't delved into the chaincode image builder of fabric.
@iDix even though the peer is running natively (and I haven't tried that myself) I would expect fabric to still create a docker container to build the chaincode image. It's in this container that npm install --production is run and it provides the version of node/npm to use. ~At a guess it probably mounts a volume into this chaincode building container mapped to /chaincode/output~ (Doesn't look like it does this via volume mounting) It then uses streams to capture the output of the build and maybe it is there that the permission problems are arising. It's a guess as I haven't delved into the chaincode image builder of fabric.
@iDix a ```docker ps``` output could be useful here if solution no 2 doesn`t work
@WarWolf89 no containers running. Solution no 2 didn't fix it. But isn't it weird, that I don't have the folders mentioned in the error message.
There is no file "usr/local/bin/node" ("which node" produces the output ~/.nvm/versions/node/v8.11.1/bin/node)
There is no file "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" (node-gyp.js is in ~/node_modules/node-gyp/bin/)
Also no folder /chaincode
node and npm were install via the prereqs-file from https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html#ubuntu
Although I set the prefix with "npm set prefix ~/npm-global", if I query the prefix with "npm prefix" it outputs my current directory (~/temp/composer)... ?? I don't work with node often, but that doesn't seem normal
@iDix this seems like an install issue
Ok, then I'll try fixing that. Thanks for your help @WarWolf89 @davidkel
@iDix I know your pain man had to go through all of this when I initially did it, good luck! also be wary with the 0.19 changes and the documentation!
Yes, when I started with this, I tried installing npm by hand... what a heckle! Then I was happy to find that composer offered this nice install_prereqs.sh file that did everything for me... But apparently it's not as easy :-(
any body know what us the default root password for azure VM
can any one guide which technology should be used to create UI for interacting with composer?
Angular is suggested framework for UI in official document
https://hyperledger.github.io/composer/latest/introduction/solution-architecture
I want to create a self-registration UI connected to composer-rest-server instance with github passport. However, it's not possible to register a user after login with github, since a card is necessary to create a participant and issue a card. How can I solve this dilemma?
@varuna82 the authentication and the identity management are separated in composer by design, the network admin has to issue the card and manage the identity
@WarWolf89 Thanks. I found this article which uses two rest servers (one to issue identity and the other to login) https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc.
I am not sure about security threats though!
[ ](https://chat.hyperledger.org/channel/composer?msg=uBJhotrC5MDcWNxRu) @hamza113 Angular, React .. See example of Angular (incl code on Github) here -> https://developer.ibm.com/code/patterns/decentralized-energy-hyperledger-composer/ and the vehicle manufacture sample application here -> https://github.com/hyperledger/composer-sample-applications/tree/master/packages
@mahoney1 so where the angular sekelton would come in?
does sideDB feature has been implemented in latest composer version?
@varuna82 this is just my opinion: on a closed consortium chain I would not even consider this type of an approach, as you mentioned for security reasons. Basically what this means that you are placing an identity management layer on a rest server and detach it from the actual fabric environment.
@WarWolf89 My idea as well. In a practical system, let's say admin creates the cards and send them to legitimate users via email. Users authenticate via github and use the card to access the system (now they don't want to use the card in the future). But, in an enterprise setting moving card via email (or other simple methods) may not considered secure. Is there a better (or standard) practice to issue/distribute cards?
@varuna82 I do not have experience in that regard, but my initial thought would be to use encrypted emails with digital signatures + certs
Hi, I would like to know if the Composer-client is based on the Fabric-client or it's completely independant? Thanks :)
@WarWolf89 Thanks for the help. Simple tricks will do since we are still at early stages.
@mahoney1 i have gone through this demo https://developer.ibm.com/code/patterns/decentralized-energy-hyperledger-composer/ you enlisted. but there is only admin that is modifying assets and registering residents, what if i want to have a portal for residents to interact with blockchain.
[ ](https://chat.hyperledger.org/channel/composer?msg=zTY7noszDdGz6tJoD) @hamza113 it is a skeleton Angular app for demo purposes, in v0.19.0 showing interaction with the business network (forms entry for assets participants you modeled/generated, and list of transactions from your model). You obviously have to extend/build on that to do anything like you mention. SideDB is not implemented in latest Composer version.
[ ](https://chat.hyperledger.org/channel/composer?msg=fXuhm7Amzg2HXL2da) @lkchao78 completely independent https://hyperledger.github.io/composer/latest/jsdoc/module-composer-client
Hi Experts
I have created my own network using yaml files and its up and running. I have writting my own chaincode and it is also working.
Now I want to create http rest apis for this. What would be a better option for me? SDK or composer?
@mahoney1 Ok thanks for the answer! Then that means if I have a service based on Composer then I will need to use only once the Fabric-client when deploying the composer in my Fabric network, isn't it?
@mahoney1 Ok thanks for the answer! Then that means if I have a service based on Composer then I will need to use only once the Fabric-client when deploying the Composer Business Network in my Fabric network, isn't it?
@mahoney1 Ok thanks for the answer! Then that means if I have a service based on Composer then I will need to use only once the Fabric-client when deploying the Composer business network in my Fabric network, isn't it?
We are making some architectural choices for our app. Composer seems easier to use and implement than coding directly in Fabric chaincode. My question is, what do you give up? For which use cases would Composer impose limits that make it best to code directly in Go?
A related question is, how exactly does Composer translate all it's elements to the Fabric runtime. Is this documented anywhere?
[ ](https://chat.hyperledger.org/channel/composer?msg=j57oedMJdxjnwNpQH) @lkchao78 You use Composer (tools/commands) to deploy it to the Fabric network.
@cbishop see **item 2** in this link https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--production-related-questions for more info and resources (incl a side-by-side comparison blog) for you to decide (item 1 needs updating, HLF Fabric 1.1 GA, Composer v0.19.0 is now production ready). You can also call Fabric APIs - see here https://hyperledger.github.io/composer/latest//reference/js_scripts and on architecture see here -> https://hyperledger.github.io/composer/latest/introduction/solution-architecture.html and incl see the intro https://hyperledger.github.io/composer/latest/introduction/introduction
Has joined the channel.
Hi! I'm new to Linux and Composer, when running the pre-req script to install everything on my 14.04, the very last line says E: Unable to locate package docker-ce
I haven't been able to find the solution yet.
Has joined the channel.
Has joined the channel.
Hi all, I have a question regarding ACL. I am restricting the read access to historian to allow users to see their historian records only (participantInvoking == currentParticipant)
I am trying to do the same thing with the transaction registries to allow users to see the data they submitted during a transaction... But transaction registries store data without any reference to the participant that has invoked them and I can't find a way to restrict them via ACL.
Is there a way to resolve relationships (transactionInvoked) in a historian record ? (also using the rest server ?)
Is there a way to restrict access to owned transaction only via acl ?
Story: As a user, if I submit a transaction, i should be able to see the historian records (actually working), And I should be able to see transactions submitted via the related transaction registry (Not ok, actually i can only see all, or none, and i am not able to restrict it via a custom condition)
@mahoney1 that explains a lot. thank you.
if new questions rise i will be asking :)
@MegganDo have you installed docker? run docker --version command does it show any output?
Getting an error trying to install network-archive in v11.
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
Fabric seems to be running pretty well. I did a docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
72e8af7b45f6 hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 34 minutes ago Up 31 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
32dfba29c93e hyperledger/fabric-couchdb:x86_64-0.4.6 "tini -- /docker-ent…" 34 minutes ago Up 31 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
cb6a44d3bda9 hyperledger/fabric-ca:x86_64-1.1.0 "sh -c 'fabric-ca-se…" 34 minutes ago Up 31 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
05442cbd75e1 hyperledger/fabric-orderer:x86_64-1.1.0 "orderer" 34 minutes ago Up 31 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
Has joined the channel.
@DevB I had the same error when upgrading, A peer was down, I had to kill old runtime and start a new one
Has joined the channel.
Has joined the channel.
@DevB @Rmannn yes, killing the docker with these commands fixed similar issue for me.. docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
@Rmannn @varinder Thanks. I will give it a try.
@Rmannn by kill runtime you mean ./teardownFabric?
@horeaporutiu Nope, if you teardown you will maybe clean some artifacts that are not persisted (depends on your docker config)
Simply do a `docker ps` to see all your running containers
Then relaunch the command `docker-compose up` or your bootstrap script if you have one.
@horeaporutiu Nope, if you teardown you will maybe clean some artifacts that are not persisted (depends on your docker config)
Simply do a `docker ps` to see all your running containers
Kill the container that is not anymore responding `docker kill [container_id]`
Then relaunch the command `docker-compose up` or your bootstrap script if you have one.
@Rmannn Thanks. I just wiped all the docker containers. When I do ```docker ps``` i see nothing.
I should be all good then right?
@horeaporutiu if you see nothing, that mean nothing is running, you should be able to start the fabric again as usual
@Rmannn @varinder Killing the old docker instance at first did not work. It was looking for missing 'x-type' which took me a long time to realize I needed a connection.json file to add the peeradmin card. Basically - quite an upgrade. All's well that ends well - I guess. Thanks. :smile:
Has joined the channel.
Has joined the channel.
Hello Gentlemen
I am following this https://hyperledger.github.io/composer/next/installing/development-tools.html
when I run ./startFabric.sh command I get following error:
Development only script for Hyperledger Fabric control
Running 'startFabric.sh'
FABRIC_VERSION is set to 'hlfv11'
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
/root/fabric-tools/fabric-scripts/hlfv11/startFabric.sh: line 50: docker-compose: command not found
I am installing this in centos server
can we get the currentParticipant Identity in client code?
@d8bhatta did u try with sudo?
yes..I tried
what version of docker-compose do u work with?
but same result
docker-compose -v
docker-compose version 1.20.1, build 5d8c71b
@thanhhaibka
in fact, I missed to installed docker-compose, now the command is running.
thanks for pointing this out
I am getting this error now:
No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher
I am not able to install composer-cli
I tried running sudo npm install --unsafe-perm -g composer-cli
but this doesn't solve the problem
@d8bhatta Hello, try to install it without "sudo" and --unsafe-perm"
Normally you have to install it as user, not root.
# npm install --unsafe-perm -g composer-cli
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
/usr/bin/composer -> /usr/lib/node_modules/composer-cli/cli.js
/usr/lib
└── composer-cli@0.19.0
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/composer-cli/node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
It's normal for fevent. This module is compatible only on Mac because Linux and Windows already have natively something similarly
Why do you think that composer-cli doesn't be installed ?
this is a reason
# ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher
Ok. Have you an error when you try "npm install -g composer-cli"?
If yes, can you show it ? If no, it's maybe just a problem with Path ..
I think I got warning but not error..let me see
m WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
/usr/bin/composer -> /usr/lib/node_modules/composer-cli/cli.js
/usr/lib
└── composer-cli@0.19.0
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/composer-cli/node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
You have mail in /var/spool/mail/root
so this is what I get running command : npm install -g composer-cli
Ok so it seems to be installed .. Try to add Path, it sould be something like this :
export PATH=$PATH:/usr/lib/node_modules/composer-cli/
I am still getting same error
No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher
Oh ..
# echo $PATH;
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/lib/node_modules/composer-cli/
any other idea?
Maybe you should try to uninstall it and reinstall...
uninstall composer-cli?
I don't know, I have no more idea to fix your issue now
[ ](https://chat.hyperledger.org/channel/composer?msg=6Xkvp4q2AgdNBWD8F) @mahoney1 Ok thanks for the information =)
is there anyway other we can install composer-cli except node?
Someone told me to use nvm instead of npm but i don't know more about this
[ ](https://chat.hyperledger.org/channel/composer?msg=J4a5tXZRdj7qNsAL5) @Varun2887 not presently, its a runtime API method to get the invoking participant in a transaction.
[ ](https://chat.hyperledger.org/channel/composer?msg=72hnJkYsoSov7Ef3H) @d8bhatta currently require npm to install composer modules/dependencies. More background info on npm here (and what it provides) -> https://stackoverflow.com/questions/31930370/what-is-npm-and-why-do-i-need-it
[ ](https://chat.hyperledger.org/channel/composer?msg=J4a5tXZRdj7qNsAL5) @Varun2887 - in a Transaction Fuction you can use `getCurrentParticipant` and `getCurrentIdentity` https://hyperledger.github.io/composer/latest//api/runtime-api
Note that getCurrentIdentity is a new method and only works on recent versions of Composer (it does work on v0.19.0)
[ ](https://chat.hyperledger.org/channel/composer?msg=J4a5tXZRdj7qNsAL5) @Varun2887 - in a Transaction Fuction you can use `getCurrentParticipant` and `getCurrentIdentity` https://hyperledger.github.io/composer/latest//api/runtime-api
Note that getCurrentIdentity is a new method and only works on recent versions of Composer (it does work on v0.19.0)
In client code see this from the Digital Property sample application:
https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/lib/landRegistry.js#L52
```
async init() {
this.businessNetworkDefinition = await this.bizNetworkConnection.connect(cardname);
LOG.info('LandRegistry:
Hi, I would like to be sure about something: you can have only one business network per channel isn't it? Thanks =)
[ ](https://chat.hyperledger.org/channel/composer?msg=NY4sRyjZdcPNGC59M) @Varun2887 You can also use businessNetworkConnection.getBusinessNetwork().getIdentifier()
[ ](https://chat.hyperledger.org/channel/composer?msg=NY4sRyjZdcPNGC59M) @Varun2887 You can also use `businessNetworkConnection.getBusinessNetwork().getIdentifier()`
[ ](https://chat.hyperledger.org/channel/composer?msg=FQkAiBoQCgYs29neS) @lkchao78 Composer business networks are deployed to a specific channel/ledger - but if agreed by member parties, you can have multiple business networks with unique names deployed to the same channel
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=zMoyd3DeZoWkr9QeW) @mahoney1 Ok thanks (again)! But if you run mutiple business networks on one channel, then they will use the same ledger. How is it working at this point? Like one specific bloc per business network or mixing every transactions in the same bloc ?
how can I link various contracts in composer? Does it follow the same export/import method as in Nodejs or is there a different process?
how can I link multiple contracts in composer? Does it follow the same export/import method as in Nodejs or is there a different process?
@lkchao78 correct - in that scenario, same ledger/channel on Fabric, different business networks (ie different registries accessible / access controlled thru Composer for the participants (mapped to identities) in question, having views into the ledger using their business network cards to access that business network). In practice, you may ONLY wish to have one business network per channel, as access by parties (and participants thereof) may not be strictly homogeneous etc etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=QxA7ppqYfuwx2EXtA) @sagargarg `imports` and `requires` in Transaction Processors are not implemented in the current release of Composer, which has native NodeJS chaincode support (eg. smart contracts). You can invoke one smart contract from another in Composer as shown here https://hyperledger.github.io/composer/latest//tutorials/invoke-composer-network (you'll see in the example, where it takes a payload back from smart contract B (having invoked it to get a deterministic result) back to smart Contract A and updates an asset in 'A' based on invoking 'B') - furthermore, you also to ability to call Fabric APIs inside the transaction processors of a smart contract as implemented here https://fabric-shim.github.io/ChaincodeStub.html
[ ](https://chat.hyperledger.org/channel/composer?msg=K79xGS5PXfyAYDszg) @mahoney1 Ok thanks =)
Has joined the channel.
Hi .. Do we need to do any changes in hyperledger explorer configuration after authenticating the REST server??
cause its giving me error right now [31merror[39m: [client-utils.js]: sendPeersProposal - Promise is rejected: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
at new createStatusError .. this one..
[ ](https://chat.hyperledger.org/channel/composer?msg=xaFq4kqjnqAF3BeLr) : I have updated my fabric version to 1.0.5. When executing the composer network start command on top of the network created using the link https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/, getting the error "Error: Error trying to instantiate composer runtime. Error: Failed to receive commit notification for transaction 'f63c529432734d7174301486f49543507314472877f325f7c457a55d627adb69' within the timeout period"
Thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=xaFq4kqjnqAF3BeLr) I have updated my fabric version to 1.0.5. When executing the composer network start command on top of the network created using the link https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/, getting the error "Error: Error trying to instantiate composer runtime. Error: Failed to receive commit notification for transaction 'f63c529432734d7174301486f49543507314472877f325f7c457a55d627adb69' within the timeout period"
Thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=Y8i4BpQFFYNiFFnmP) @Pranoti - I haven't tested this with Fabric 1.1, but make sure you have referenced the correct certificates in the config.json file. These are the values I used with Fabric 1.0: (replace
[ ](https://chat.hyperledger.org/channel/composer?msg=55mw73RoZgbZT2imy) @rthatcher works.. forgot to change directory from hlfv1 to hlfv11
[ ](https://chat.hyperledger.org/channel/composer?msg=eQqjNEtGQc8SDgxqF) @kmohanar - maybe you have an error with a server name/address in your connection.json file, or some connection/addressing problem between your 2 machines.
Another question... How can we authenticate the user to the blockchain through web application? In this [https://hyperledger.github.io/composer/next/tutorials/google_oauth2_rest] we authenticate the rest server but not user.. Im not able to picture the flow from web application perspective. Generally we authenticate user and return token and using that token we allow access to the rest server. Suppose i want to develop a web application on blockchain network how user will be authenticated? We'll create a card and we'll bind the participant to that card but what will be the user's entry point in the blockchain through a web application? please clear my thought process if i'm in wrong direction..
@Pranoti you can use something like this : https://hyperledger.github.io/composer/next/integrating/enabling-rest-authentication
Has joined the channel.
Personnally, i'm trying to use a similar way but i not able to adapt it without github
[ ](https://chat.hyperledger.org/channel/composer?msg=jJN8JvP5fyJTva6v6) @Poneey No, I have completed this. Its regarding REST server authentication. What i'm asking is user authentication on the blockchain network.. Thanks for the reply though :)
Oh sorry, i misunderstood your question. So i don't know, i ask myself the same question
Its okay no problem!! :) Its good to have a questions and doubts :wink:
@All, I am not getting any composer related documents in given path
https://hyperledger.github.io/composer/installing/installing-prereqs.html
is there any location change for these files?
if anyone know the latest path plz let me know
@suva yes you have to had "/latest" or "/next" after "composer" in yours paths
(I believe that "latest" is for version 16 and "next" for version 19 but i'm not sur about this)
" https://hyperledger.github.io/composer/next/installing/installing-prereqs.html " for example
(to add*)
does composer latest version supports adding participants dynamically?
@Poneey .Thanks a lot
Someone have an example of authentification with passport local (not github) ?
[ ](https://chat.hyperledger.org/channel/composer?msg=qZCubSsvDnvrfQecb) @Pranoti You would choose a supported auth strategy from http://www.passportjs.org as outlined here https://hyperledger.github.io/composer/latest//integrating/enabling-rest-authentication
An example is the `passport-jwt` strategy - see resources https://medium.com/front-end-hacking/learn-using-jwt-with-passport-authentication-9761539c4314 and https://github.com/hyperledger/composer/issues/2038 on JWT specifically - then use that jwt token to authenticate against the REST server and receive the accessToken cookie for all future REST server requests. Also here https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc passing the authentication token to the REST server.
[ ](https://chat.hyperledger.org/channel/composer?msg=uq2BR8Eonyj8ooyBR) @Poneey this RC thread may help chat.hyperledger.org/channel/composer?msg=rc9hvYqvrETsYLLWW&hash=vfXbtrWLterZuDH9X
@mahoney1 Thank you. I already tried something like that. My problem is that tutorials ask to add some functions in "app.js" or other but i don't have this files in my app
@mahoney1 i have two participants what if i want to send one participant asset to specific another participant for endorsement.
@mahoney1 in composer can we define endorsement policies?
if yes do we need to configure with native fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=F6HNzkm8mqSA8n3HD) @mahoney1 Okay lets consider we did the whole authentication using passport- jwt strategy. And I'm also having a composer card ready. How will i bind the card to the user who is logging in for whom that card was created?? how to validate the user? Is the validation suppose to be done using enrollmentSecret? [we get in metadata.json file after creating a participant]. And after that we'll pass the private key to the user.. Is it like this?
I cannot access this link, https://hyperledger.github.io/composer/installing/installing-index.html. Is the website down?
[ ](https://chat.hyperledger.org/channel/composer?msg=AeceYyHM2mRasenGX) @hamza113 see https://hyperledger.github.io/composer/latest//managing/connector-information in the docs - you can provide Hyperledger Fabric endorsement policies to both the composer `network start` and `network upgrade` requests. (your other question - not sure what you wrote). Endorsement is done by Fabric ; you can specify multi-stage approval for participants in Composer (if that's what you mean) to ensure they minimally approve or othewise (if that's what you mean by endorsement in that context) - you just need to define what your workflow is, then see where to resolve? On Stack Overflow, https://stackoverflow.com/questions/tagged/hyperledger-composer you can search for similar responses already posted.
[ ](https://chat.hyperledger.org/channel/composer?msg=Xu6faEg4RqioyyF9u) @cbishop add `latest/` after `composer` (see my post earlier for link to docs)
[ ](https://chat.hyperledger.org/channel/composer?msg=Xu6faEg4RqioyyF9u) @cbishop add `/latest/` after `composer` (see my post earlier for link to docs)
Has joined the channel.
I'm trying to use passport but tutorials say to add some lines in "app.js". However, i don't have this file, i just have "index.js" but it is empty.. Where i'm supposed to add lines ?
(i use yo hyperledger-composer to generate my project)
@Pranoti - this RC thread chat.hyperledger.org/channel/composer?msg=rc9hvYqvrETsYLLWW&hash=vfXbtrWLterZuDH9X specifies a flow you might consider. Once the user is registered / authenticated, 'behind the scenes' his/her BN card is created, a 'connect' to the BN is done (to retrieve the certificate for the B N card) and the card is made available (persistent store, cloud objectstore etc) so that (in the application user context) it is available for him/her to interact (connect as the registered identity) with the blockchain (through the composer business network) via the web application - examples on user registration is discussed here https://stackoverflow.com/questions/48893410/hyperledger-composer-web-application-user-authentication (further down)
@Poneey from passportjs.org -> https://github.com/jaredhanson/passport-local - it has links to samples
@mahoney1 yes but i already have a project and i don't understand how add passport in my project ..
First, i run my project with "composer-rest-server", not "node .." so i don't have file like app.js ...
Maybe it's really simple so you don't understand my issue ..
[ ](https://chat.hyperledger.org/channel/composer?msg=Xu6faEg4RqioyyF9u) @cbishop - try this with "latest" in the URL https://hyperledger.github.io/composer/latest/installing/installing-index.html
@mahoney1 samples in your link (or all other i found) do not work with composer-rest-server so i can't find how use it with composer-rest-server ..
@Poneey we don't have a tutorial for passport-local (I presume that is the 'it' you refer) - there are 300+ strategies FYI -> maybe this will help you https://stackoverflow.com/questions/31594949/where-to-put-passportjs-local-strategy-in-an-express-application or others here can help
Yes, 'it" refer to passport-local.
I looked a lot of this tutorials.
They say to add some lines in app.js but i don't have it and because i launch my app with "composer-rest-server" i don't know where is the file who can replace "app.js"
Hello,
When I do a composer install, I have this error `error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number`.
Can I do something ? It seems to be a grpc problem ?
@mahoney1 please check direct messages. help would be much appreciated thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=GhAyhP5B43eGBj5u5) @mahoney1 :smile: great this is what I wanted.. Thank you s much!! I'll try this now..
[ ](https://chat.hyperledger.org/channel/composer?msg=GhAyhP5B43eGBj5u5) @mahoney1 :smile: great this is what I wanted.. Thank you so much!! I'll try this now..
[ ](https://chat.hyperledger.org/channel/composer?msg=7cNJ6NTTshAfe2e6n) @hamza113 answered
@hamza113 answered
@mahoney1 thanx the participants in a network card do they enroll as peer?
[ ](https://chat.hyperledger.org/channel/composer?msg=n8XXK2mSaeKLg4FfK) @hamza113 no. see https://hyperledger.github.io/composer/latest/playground/id-cards-playground and read how a card is created (further down) - as an ordinary user that interacts with the business network (they won't have 'peer' admin privileges). Usually its one participant, mapped to one blockchain identity from that CA, though can be one-> many in theory.
[ ](https://chat.hyperledger.org/channel/composer?msg=3C9ezrrkQrJMjtZnT) @rthatcher It's linked from Get Started button on the main Hyperledger Composer page, https://www.hyperledger.org/projects/composer. If the URL has changed, the link needs to be updated.
@cbishop - thanks, I'll follow that up.
Has joined the channel.
Hey,
I noticed in 0.9 release of composer you can generate docs: https://github.com/hyperledger/composer/releases and https://github.com/hyperledger/composer/pull/3666
Anyone got any extra guidance on this?
[ ](https://chat.hyperledger.org/channel/composer?msg=hrSQh9NS89WuJwZ8b) @ChrisMcQueenDevelopment 0.19.0? See https://github.com/ampretia/composer-opus and here https://ampretia.github.io/composer-opus/ (with links top left)
[ ](https://chat.hyperledger.org/channel/composer?msg=hrSQh9NS89WuJwZ8b) @ChrisMcQueenDevelopment 0.19.0? Described in issue https://github.com/hyperledger/composer/issues/3126 FYI . See https://github.com/ampretia/composer-opus and here https://ampretia.github.io/composer-opus/ (with links top left)
[ ](https://chat.hyperledger.org/channel/composer?msg=hrSQh9NS89WuJwZ8b) @ChrisMcQueenDevelopment 0.19.0? Described in issue https://github.com/hyperledger/composer/issues/3126 FYI . See https://github.com/ampretia/composer-opus and example here https://ampretia.github.io/composer-opus/ (with links top left)
[ ](https://chat.hyperledger.org/channel/composer?msg=hrSQh9NS89WuJwZ8b) @ChrisMcQueenDevelopment `composer generator docs`
https://hyperledger.github.io/composer/latest//reference/composer.generator.docs
Brill! Thanks both
@d8bhatta Try this - sudo curl -L https://github.com/docker/compose/releases/download/1.20.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
// verify
docker-compose --version
Hi there, I've just installed a new VM Ubuntu 16.04 to play with composer 0.19 and fabric 1.1 and installed Prerrequisites from here: https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html#ubuntu everything fine, But when issuing npm install -g composer-cli I got this error: Error: Cannot find module './lib/dist-tags/add'
can you guys help me? can't find anything on the web regarding this
Has joined the channel.
I see in release `v0.19.0` the line,
"Automatic Couch DB index generation for queries. We now automatically index Couch DB for any queries present within your business network definition during the deployment phase."
Does this have something to do with "views" in CouchDB? I am just picking up CouchDB but cannot find much information on this?
I'm using Ubuntu stretch/sid, with node v8.10.0. I delete all of my composer files, and recreate the card from scratch. When I run composer card import, I get errors ending with: Error: Corrupted zip or bug : unexpected signature (\x6E\x74\x69\x61, expected \x50\x4B\x03\x04). Is this a bug? Is there a work-around?
Hi. Anybody having issues with TransactionID in hlfv11? It had gone away in v1, Its back again.
Hi all, chaincode developed with composer can invoke from fabric SDK?
e.g. `peer chaincode query/invoke` ?
Has joined the channel.
sorry to bother, I am working a a simple transaction. But got a 422 Validation error. Any help to resolve this, grateful...
Hi, My Question is How to find whether the transaction already exist for particular asset and participant in hyperledger composer? Participant
IDFC
Participant
TATA , MRF
Asset
FINANCEPROGRAM
Transaction
(Data need to submit)
participant(TATA) ,Asset (FINANCEPROGRAM ) ,loanAmount , loantenure
I need to check whether the transaction for FINANCEPROGRAM and TATA are already exist.
If so exist i need to reject the transaction.
var query1 = query('SELECT com.ett.blockchain.Programmeben WHERE (beneficiary == _$beneficiary AND bankprogramme == _$bank program) ');
return query('query1',{beneficiary : 'resource:com.ett.blockchain.Beneficiary #'+pgben.beneficiary .customerid,bankprogram: 'resource:com.ett.blockchain.Bankprogramme#'+pgben.bankprogramme.programmeid})
.then(function (transactions1) {
transactions1.forEach(function (trans1) {
console.log("transaction exist " );
});
throw Error("Transaction already exist");
});
If the transaction does not exist , i need to continue with some more validation.But in my case it throws only "Transaction already exist" Not the validation exception.
Hi guys, I am facing this issue with 0.19, Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is set to 'hlfv11'
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Cannot use v0.18.2 version of composer with fabric 1.1, v0.19 or higher is required
anyone?
Has joined the channel.
@mikeleow re
@mikeleow reinstall the composer-cli with this command npm install -g composer-cli
@mikeleow reinstall the composer-cli with this command npm install -g composer-cli , check for the node version
@HarshithaC you mean for the issue of request time out?
@HarshithaC my node version is v8.11.1
for 0.19
[ ](https://chat.hyperledger.org/channel/composer?msg=2ek5MH2dpDQKp54PG) for this issue Cannot use v0.18.2 version of composer with fabric 1.1, v0.19 or higher is required
@HarshithaC so the rest of it just add the tag @next?
@HarshithaC if I do as your guided following, I would get npm install -g composer-cli version 0.19 and not 0.18
is ok let me try it
@mikeleow OK.
tq!
Has joined the channel.
Hi everyone, would greatly appreciate if anyone can guide me in installing the composer network start for v0.19, its not starting, it alway happen peers response timeout
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=XWhcWc3uqoWfrBbrg) @mikeleow Its difficult to identify the error without the logs. Check the logs of peer(s) for any error.
is there a way I can make use of SQL DB instead of the packaged CouchDb with Hyperledger?
is there a way I can make use of SQL DB instead of the packaged CouchDb with Hyperledger?
[ ](https://chat.hyperledger.org/channel/composer?msg=mXa9YwcuCANpCm8MS) @sagargarg No. It supports LevelDB (default) and CouchDB as state DB.
Has joined the channel.
Has joined the channel.
composer runtime gives "...Unknown argument: runtime". Any ideas? v0.19.0
Hi, my name is eduward post, and at this moment i'm participating in the blockchaingers hackathon. I have a question about the ACL which i can't find in the documentation. is it possible to use promises in the javascript that's been run in the "condition" field of an acl rule?
@eduwardpost everything you can use on if statement you can use in the condition field. So the answer is no, you can't use promises in the conditions
Ok thank you @akula , is there a way to get some data from a asset registry that is neither the participant nor the asset in the rule being defined?
sorry, I'm not following. What do you mean?
we have the following model:
`
...
abstract asset SecureFile {
o String hash
o String fileLocation
o String encryptionKey
o DateTime added
--> PoliceOfficer addedBy
}
asset ProcesVerbal identified by documentId extends SecureFile {
o String documentId
--> Evidence evidence optional
}
abstract asset Dossier {
--> SecureFile[] files optional
--> PoliceOfficer[] hasAcces
}
...
`
we want to have a acces rule that has the following condition:
`
if PoliceOfficer is in the hasAcces list from the Dossier asset.
then the police officer is allowed to see the SecureFiles from that Dossier
`
(looks like the code formatting didn't work)
The idea is to have a acces rule on the secure file instance, that checks if the participant requesting it has acces to the Dossier asset (trough the hasAcces property) and with that give READ acces to the SecureFile asset related to the Dossier
I think you can achieve this by using queries with CONTAINS
or, something like that:
Is it possible to query from a diffrent repository in the where clause (or a subquery)?
@eduwardpost
rule PoliceHasAccess {
description: "br.com.synapsetec.InspectionCompany"
participant(po): "PoliceOfficer"
operation: READ
resource(d): "Dossier"
condition: (d.hasAccess.some(function(el) {return el.getIdentifier() == po.getIdentifier();}))
action: ALLOW
}
@eduwardpost
rule PoliceHasAccess {
description: "some desc"
participant(po): "PoliceOfficer"
operation: READ
resource(d): "Dossier"
condition: (d.hasAccess.some(function(el) {return el.getIdentifier() == po.getIdentifier();}))
action: ALLOW
}
but I don't know if it will actually work
I'll give it a try, thanks in advance!
take a look here: https://hyperledger.github.io/composer/latest/reference/query-language
[ ](https://chat.hyperledger.org/channel/composer?msg=ar8v7t4WjZtzjeJxH) @eduwardpost
@akula i got it working by using async / await in the lib file. and now able to query the registry from within the ACL condition. thank's for thinking with me!
Nice!
@JackMalinowski checking the `Breaking Changes` section of v0.19.0 release note.
It changed to `composer network install`
https://github.com/hyperledger/composer/releases/tag/v0.19.0
[ ](https://chat.hyperledger.org/channel/composer?msg=tf65jWob2pbGFdBkB) @kkado Thanks, I eventually managed to run the dev environment with 0.19.0 successfully. Before I worked on version 0.16.4, and now I see that the composer command arguments and parameters have changed.
Btw. IBM could update their tutorial how to use the CLI
https://ibm-blockchain.github.io/develop/tutorials/developer-tutorial.html
Correct commands for "Deploying the business network":
Step 1:
composer network install -a tutorial-network\@0.0.1.bna -c PeerAdmin@hlfv1
Step 2:
composer network start -c PeerAdmin@hlfv1 -n tutorial-network -V 0.0.1 -A admin -S adminpw -f networkadmin.card
Has joined the channel.
Does anyone have a working example of using the getNativeAPI() calls with the new crypto library? The enccc sample in the new node.js format would be amazing but I'd be happy if anyone could even share a few lines of working code to encrypt and decrypt. I've been using a third party library (SJCL) with decent success but would like to try the built in tools to avoid some potential issues.
what if i want to create a view for my participant.how do i connect it to network as angular sekelton is generated only for admin
Hello
When I try to run composer-playgroun, I get following
[root@portal fabric-tools]# composer-playground
Composer :main() >
PlaygroundAPI :createServer() > 8080, false
LoadModule :loadModule() composer-wallet-filesystem -- /usr/local/lib/node_modules,/root/fabric-tools/node_modules,/usr/lib/node_modules,/root/node_modules,/node_modules,/usr/lib/node_modules/composer-playground/node_modules -- /usr/lib/node_modules/composer-playground/node_modules
LoadModule :loadModule() checking path /usr/local/lib/node_modules/composer-wallet-filesystem
LoadModule :loadModule() checking path /root/fabric-tools/node_modules/composer-wallet-filesystem
LoadModule :loadModule() checking path /usr/lib/node_modules/composer-wallet-filesystem
LoadModule :loadModule() checking path /root/node_modules/composer-wallet-filesystem
LoadModule :loadModule() Loading composer-wallet-filesystem from /root/node_modules/composer-wallet-filesystem
PlaygroundAPI :createServer() Playground API started on port 8080
PlaygroundAPI :createServer() <
it doesn't shows the IP address to access the playground from browser
I was running playground in local but now i want to install it in remote server and access it vie IP. Its installed but its not giving me a way to access it vie IP in browser
Has joined the channel.
Has joined the channel.
@d8bhatta what is the IP address of your server?
How do I import transactions that are in a .CSV file and add them to the blockchain. Google said to use Node-red, but this answer was from last year. Is this still a viable solution?
@ronaldlong46 It can be anything like 69.128.65.98
So then navigate to 69.128.65.98:8080
Make sure the composer playground is still running in terminal in your browser
@ronaldlong46 I make sure my playground is running but the IP is not working in browser 69.128.65.98:8080
Is it blank? Or does it throw an error?
Maybe try 69.128.65.98:8080/login
Has joined the channel.
at this point, I think I need to change port of my server to be used for playground, so instead of port 8080, how can I set it something like 8888
?
@gewing the getNativeAPI() only gives you access to the node.js chaincode stub. unfortunately this stub doesn't provide any encryption capabilities.
Hey! I keep forgetting... What is the localhost address to see CouchDB?
composer -v
/usr/local/lib/node_modules/composer-cli/node_modules/composer-common/lib/cardstore/businessnetworkcardstore.js:54
async get(cardName) {
^^^
Whenever I am running 0.18.2, my composer keep asking me to upgrade it to 0.19 to run the Hyperledger fabric 1.1
Why would this keep happening?
:o
This has made me stuck from migrating since yesterday.
Screen Shot 2018-04-08 at 6.44.06 PM.png
@mikeleow The `latest` documentation is currently wrong. Do not install the composer using the `@next` tag. To get composer 0.19 you need to just install using `npm install -g composer-cli`. I suggest you uninstall your version of composer-cli using `npm uninstall -g composer-cli` then install again using `npm install -g composer-cli`. The latest fabric development server we provide expects composer-cli to be at version 0.19
@davidkel I would like to have 0.18.1 installed, so I did install base on next.
I mean @0.18.1
@Sriramj you are using node 6 and that is not supported. Suggest you uninstall all the composer components, upgrade to node 8 and re-install
{
"msp_id": "ExamplePeerOrg1",
"adminCertName": "exampleAdminCert1",
"adminCertificate": "-----BEGIN CERTIFICATE-----\nMIIBkzCCATqgAwIB...",
"peer_names": [
"example-fabric-peer-1234a"
],
"SKIP_CACHE": true
}
anyone is familiar with the starter plan, wat would the msp_id be
and also peer-names?
or the admin cert
would these be the public-pub that I gotten
@mikeleow `@next` is still at 0.18.2 not 0.18.1. Our development server package if fabric 1.1 GA, 0.18.1 targetted fabric 1.1-rc1. 0.18.2 should work work fabric 1.1 GA, however our dev server package has been explicitly set to only allow 0.19 as this is the version that was released under the `@latest` tag rather than the in development `@next`.
@mikeleow `@next` is still at 0.18.2 not 0.18.1. Our development server package is fabric 1.1 GA, 0.18.1 targetted fabric 1.1-rc1. 0.18.2 should work work fabric 1.1 GA, however our dev server package has been explicitly set to only allow 0.19 as this is the version that was released under the `@latest` tag rather than the in development `@next`.
Screen Shot 2018-04-08 at 7.22.32 PM.png
Running on v0.19
It got stuck and then ✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
this happen
what is function of "include" key in passed in "filter" query parameter in composer rest server?
@mikeleow see https://github.com/hyperledger/composer/issues/3731 you will need to look at the peer logs to see if more information is available on the cause.
Screen Shot 2018-04-08 at 8.38.41 PM.png
Hi guys,I would like to track the Historian of a specific asset ?Has anyone tried it before?
can someone of an expert help me
Hello, I have a question that the angular skeleton only creates the view for ad-min. can i create a view for the participants and how do i authenticate them to the network?
Has joined the channel.
Screen Shot 2018-04-08 at 10.49.36 PM.png
[ ](https://chat.hyperledger.org/channel/composer?msg=s4EKRnZ4wi8Xzaqvk) @mikeleow I think you should post this at the #fabric-questions channel
@bingo1234 but I am using Hyperledger composer though.
@mikeleow recently I faced a similar error. I've resolved by downloading the `hyperledger/fabric-ccenv` before starting the network
[ ](https://chat.hyperledger.org/channel/composer?msg=hLv5Fuh7dTibREHAY) @mikeleow Try installing hyperledger/fabric-ccenv as said by @mikeleow
if that image is already available, try to watch the logs to make sure the npm are downloading the necessary files to start up `dev-` container
@akula I am sorry, but how exactly did you do that? Did you just pull the docker container?
Yes, just pull `hyperledger/fabric-ccenv`
[ ](https://chat.hyperledger.org/channel/composer?msg=T5RJQQqTQm52Ksd7P) @mikeleow
Screen Shot 2018-04-08 at 10.59.10 PM.png
no problem man,
well, you must to specify the version
`docker pull hyperledger/fabric-ccenv:x86_64-1.1.0`
I don't know why using latest does not work anymore
Damn, it said image is up to date.
ok, try to start the network again but now pay attention to the `fabric-ccenv` logs
it will try to download from npm registry
https://kitematic.com would help to see the logs
I had notice that the fabric-ccenv is not started.
It is ok
It gets initialized at the moment you try to install a new chaincode version
I can't install the kinematic though, I am running on aws.
haha
no problem
type docker ps to see the containers list
catch the id and type `docker logs -f ID`
also, check if you are running docker with privileges to create new containers instances
Screen Shot 2018-04-08 at 11.11.53 PM.png
is ok I google
seems to be a typo according to most sources.
let me look at my code again
ok, check the images versions as well
and make sure your aws node is able to download from npm registry
ok the problem seems to be persisted after I fix the typo in js
Ok I had found out the problem, I can't have a query.qry file.
if anyone is interested haha
happy to read that
Has joined the channel.
What is the best practice to update a business network with a new .bna version?
Has joined the channel.
@davidkel Thanks for the answer about getNativeAPI() although that's unfortunate that it doesn't work yet! I appreciate it.
Hi. When I was going to run the command "composer card create" for the org1, I got the following error message.
Hi. When I was going to run the command "composer card create" for the org1, I got the following error message.
[InalidArgumentException]
Command "card" is not defined.
Hi. When I was going to run the command "composer card create" for the org1, I got the following error message.
[InalidArgumentException]
Command "card" is not defined.
Hi. I got the following error message when I was going to run the command "composer card create -p /tmp/composer/org2/byfn-network-org2.json -u PeerAdmin -c /tmp/composer/org2/Admin@org2.example.com-cert.pem -k /tmp/composer/org2/*_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@byfn-network-org2.card".
[InalidArgumentException]
Command "card" is not defined.
Hi. I got the following error message when I was going to run the command "composer card create -p /tmp/composer/org1/byfn-network-org1.json -u PeerAdmin -c /tmp/composer/org1/Admin@org1.example.com-cert.pem -k /tmp/composer/org1/*_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@byfn-network-org1.card".
[InalidArgumentException]
Command "card" is not defined.
Is there anyone know where I'm wrong?
Thanks.
Hi. I got the following error message when I was going to run the command "composer card create -p /tmp/composer/org1/byfn-network-org1.json -u PeerAdmin -c /tmp/composer/org1/Admin@org1.example.com-cert.pem -k /tmp/composer/org1/*_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@byfn-network-org1.card".*
[InalidArgumentException]
Command "card" is not defined.*
Is there anyone know where I'm wrong?
Thanks.
Hi. I got the following error message when I was going to run the command "composer card create -p /tmp/composer/org1/byfn-network-org1.json -u PeerAdmin -c /tmp/composer/org1/Admin@org1.example.com-cert.pem -k /tmp/composer/org1/*_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@byfn-network-org1.card".
*[InalidArgumentException]
Command "card" is not defined.*
Is there anyone know where I'm wrong?
Thanks.
Hi. I got the following error message when I was going to run the command "composer card create -p /tmp/composer/org1/byfn-network-org1.json -u PeerAdmin -c /tmp/composer/org1/Admin@org1.example.com-cert.pem -k /tmp/composer/org1/*_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@byfn-network-org1.card".
[InalidArgumentException]
Command "card" is not defined.
Is there anyone know where I'm wrong?
Thanks.
@Mark818 What do you get with `composer -v`?
should be `v0.19.0`
Has joined the channel.
hello,
is it possible to download Fabric images once and save them (docker save) then load images into other peer (docker load)
hello,
is it possible to download Fabric images once and save them (docker save) then load images into other peer (docker load)
Thanks in advance
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=rcjHJ9bekXLxhQP3s) @akula I found I installed the composer for php instead of composer-cli. Now the command works. Thanks akula!!
HI everyone. am getting this error with latest composer vs
$ ./startFabric.sh
Development only script for Hyperledger Fabric control
Running 'startFabric.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
C:\cygwin64\home\divyansh\HLF-Windows-Fabric-Tool\fabric-scripts\hlfv11\composer\docker-compose.yml
Removing network composer_default
Network composer_default not found.
Creating network "composer_default" with the default driver
Creating ca.org1.example.com ... done
Creating orderer.example.com ... done
Creating couchdb ... done
Creating peer0.org1.example.com ... error
ERROR: for peer0.org1.example.com Cannot create container for service peer0.org1.example.com: b'Mount denied:\nThe source path "\\\\var\\\\run:/host/var/run/"\nis not a valid Windows path'
ERROR: for peer0.org1.example.com Cannot create container for service peer0.org1.example.com: b'Mount denied:\nThe source path "\\\\var\\\\run:/host/var/run/"\nis not a valid Windows path'
Encountered errors while bringing up the project.
Has joined the channel.
@divudivyansh windows is not currently supported
Hello. I have a fabric network running with 2 peers and 1 org. I want to create a endorsement policy `both peers should endorse. Is this code correct? what is `2-of`? ```
``` `
"identities": [
{
"role": {
"name": "peer",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "peer",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
}`
Hello. I have a fabric network running with 2 peers and 1 org. I want to create a endorsement policy `both peers should endorse. Is this code correct? what is `2-of`? ``
"identities": [
{
"role": {
"name": "peer",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "peer",
"mspId": "Org1MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
}`
Hello. I have a fabric network running with 2 peers and 1 org. I want to create a endorsement policy `both peers should endorse`. Is this code correct? what is `2-of`? `
"identities": [
{
"role": {
"name": "peer",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "peer",
"mspId": "Org1MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
}`
Hello. I have a fabric network running with 2 peers and 1 org. I want to create a endorsement policy `both peers should endorse`. Is this code correct? what is `2-of`?
``` "identities": [
{
"role": {
"name": "peer",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "peer",
"mspId": "Org1MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
} ```
[ ](https://chat.hyperledger.org/channel/composer?msg=mdFKsiaXyjfx5Z9Hi) @johnpentester - standard docker commands (like load and save) should be fine. Are you investigating this to script a build, or because your other peer doesn't have network connectivity? Be aware that additional containers get built when you start a Business Network, and the additional container uses the npm command - by default connecting to the internet.
$ ./startFabric.sh
Development only script for Hyperledger Fabric control
Running 'startFabric.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
C:\cygwin64\home\divyansh\HLF-Windows-Fabric-Tool\fabric-scripts\hlfv11\composer\docker-compose.yml
client version 1.22 is too old. Minimum supported API version is 1.24, please upgrade your client to a newer version
how to update client version
?
[ ](https://chat.hyperledger.org/channel/composer?msg=rbTwTCTetMkQ5QBvz) @AkshayJindal - the signing for endorsement is on a Per Organisation basis, not per peer, so what you are showing doesn't really make sense.
In a 2 Org configuration you would specify Org1 and Org2 in the array of Identities, and ` 2-of ` would require them both to sign.
In a 3 Org setup you would put the 3 Orgs in the Identity array, and you could then have 2-of the 3 signing in the Policy section.
Endorsement policies are a Fabric feature that Composer uses - they are describrn in the Fabric documentation: http://hyperledger-fabric.readthedocs.io/en/latest/
[ ](https://chat.hyperledger.org/channel/composer?msg=PRdwT4dtH9ZTEnSLn) @rthatcher Okay Thanks. But if there is only one org with two peers. If peers produce different results then how does endorsement works?
[ ](https://chat.hyperledger.org/channel/composer?msg=ov2KYmrFgezdJDfkr) @divudivyansh - Hyperledger Fabric is supported on Windows I think, BUT as sstone said, Hyperledger Composer is not supported on Windows at this time (which includes the startup script you are trying to run)
Has joined the channel.
Has joined the channel.
hello all, is it required to increment Business Network version when making changes to the model and logic?
Hi, many of the documentation links (eg : https://hyperledger.github.io/composer/next/tutorials/deploy-to-fabric-single-org) seems to be down since last couple of weeks. Is there any work progressing on this side or am I missing something ?
@All,
Can I write a function to store multiple value in my registry
async function GetTempDetails(uID){
var factory = getFactory();
var NS_M = 'org.acme.securebox';
var uniqueId = uID.orderId + "-" + uID.prodId + "-" + uID.secureBoxId;
var temperature = factory.newResource(NS_M, 'Temperature', uniqueId);
const temp = await request.get({ uri: '
this is my function to read from json and write value into registry
How remove all networks (and docker images) and uninstall composer?
I have to install everything from the beginning because now I get only errors and cannot even list networks
@suva yes you can (to answer your Q)
@mahoney1 . But I am unable to write into registry
my model file is as below
asset Temperature identified by uniqueId {
o String[] uniqueId
o String[] minTemp
o String[] maxTemp
o String[] avgTemp
}
cannot set property '0' of undefined error I am getting
Plz help me if I want to write multiple value corresponding to one unique ID
[ ](https://chat.hyperledger.org/channel/composer?msg=eSz8MHqRxnoXb44v5) @JackMalinowski see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--runtime-install-errors-composer (item 6 in table, starting with `2)` through 6) only - then follow https://hyperledger.github.io/composer/latest/installing/development-tools.html to install composer/new Fabric network, then (once composer is installed with new version) recreate a new bna using`composer archive create` for your business network project(s) (if you have them) or follow the Dev tutorial https://hyperledger.github.io/composer/latest/installing/development-tools.html to create a tutoriall biz network
@suva - I think you need `registry.add` not `registry.append` ?
https://hyperledger.github.io/composer/next/tutorials Is the "next" version also deprecated??
[ ](https://chat.hyperledger.org/channel/composer?msg=jvR5kTcP7tXiBuDC7) @sstone1 Okay thank you! :thumbsup:
@Pranoti yes, use the `/latest/` docs
can somebody tell me how to write multiple value of a ID in a registry?
My requirement is reading temperature data from a device and write it to registry?
[ ](https://chat.hyperledger.org/channel/composer?msg=aJSTf4nxLSq5AP7kJ) @ydennisy - yes, for Composer v0.19.0 you need a new version number when Installing and Upgrade a Network.
[ ](https://chat.hyperledger.org/channel/composer?msg=9go3B4YzbJrAqM2N5) @shalin 9 - which version of Composer are you using? If you are using v0.19.0 (` composer -v ` should confirm) then you need the 'latest' docs - https://hyperledger.github.io/composer/latest/tutorials/tutorials
concept TempReadings {
o DateTime[] redDate
o String[] minTemp
o String[] maxTemp
o String[] avgTemp
}
asset Temperature identified by uniqueId {
o String uniqueId
o TempReadings redTemp
}
transaction GetTempDetails {
o String orderId
o String prodId
o String secureBoxId
}
event CreateTempDetailsEvent {
o String uniqueId
}
async function GetTempDetails(uID){
var factory = getFactory();
var NS_M = 'org.acme.securebox';
var uniqueID = uID.orderId + "-" + uID.prodId + "-" + uID.secureBoxId;
var temperature = factory.newResource(NS_M, 'Temperature', uniqueID);
const temp = await request.get({ uri: 'https://
I am unable to store the value in block chain registry
plz somebody help
me
@shalin, replace next with latest
when i run command 'composer network start' it shows up following error
'Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (tutorial-network:0.0.1))
Command failed'
i am running into an error. When i run command 'composer network start' it shows up following error
'Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (tutorial-network:0.0.1))
Command failed'
i am running into an error. When i run command 'composer network start' it shows up following error
'Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (tutorial-network:0.0.1))
Command failed' @rthatcher
i am running into an error. When i run command 'composer network start' it shows up following error
'Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (tutorial-network:0.0.1))
Command failed' @rthatcher
can some bosy go through my code and tell me how to read multiple value from a jason and write in to a registry
[ ](https://chat.hyperledger.org/channel/composer?msg=aotK4byky2yd2zZa7) @suva its difficult to help, if we don't know what the `request` call returns - can you provide a sample?
Clipboard - April 9, 2018 4:22 PM
@mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=MRiXA3wERn3cS3xJy) command succeed after re-run
Has joined the channel.
How to update network with a new .bna version by composer cli?
[ ](https://chat.hyperledger.org/channel/composer?msg=L4KBuQSLoG8x6gZwy) @JackMalinowski hi there, see https://hyperledger.github.io/composer/latest/tutorials/queries for a worked example. Specifically 'Step Three' (Regenerate) and 'Step Four' (Deploy) - for your particular network name / file.
Clipboard - April 9, 2018 4:37 PM
@mahoney1 . This is my output. I not able to write all value.
I changed the model file as below
asset Temperature identified by uniqueId {
o String uniqueId
//o TempReadings[] redTemp
o String minTemp
}
I am unable to print the request output
as I am using https://composer-playground-next.mybluemix.net/
My requirement is to store all value in a concepts
I am trying to use the buildQuery feature in the composer apis but anytime i retrieve the asset use serialize.toJSON() it says Serializer.toJSON only accepts instances of Resource.
[ ](https://chat.hyperledger.org/channel/composer?msg=h8efJimw8qHyfKvWB) @mahoney1 Thanks, I managed to upgrade my network, but all previous Participants are gone. Can I make data stay after upgrade?
Help needed: composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
This returns incorrect command
while installing the business network.
@JackMalinowski - you've changed your model right? See https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--data-migration-eg-from-playground-the-ledger---for-future-use-etc for guidance (complete section)
@bingo1234 typical use of buildQuery ```var accountQuery = buildQuery("SELECT org.acme.account.Account \
WHERE (transaction == _$type)");
return query(accountQuery, { type: "D" })
// sum up the deposits in the array of
.then(function(deposits){
var depAmount = 0;
deposits.forEach(function(deposit){
depAmount += deposit.amount;
});
return depAmount;
})``` not sure if you're using a separate JS object that needs to be serialized (eg., `resource = serializer.fromJSON(data)` etc - or working with results direct?
Has joined the channel.
@suva - thanks for info. Will take a look in due course.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=8MXdbYPEbg5p9pqxW) @mahoney1 Yes. Thanks now I added "optional" to a model property and everything stays.
hello, how to record data(images) by hyperledger composer
[ ](https://chat.hyperledger.org/channel/composer?msg=M8uvo8r5unn6xi6oH) @hussein.knight hi, see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--miscellaneous-items---fabric-uncategorised (item 2 in the table and included links)
Has joined the channel.
Hi everybody? How create a card for the participant by node.js api hyperledger composer? Is there any tutorial/example? I can't find
Hi everybody? How create a card for the participant by node.js api of hyperledger composer? Is there any tutorial/example? I can't find
Hi everybody! How create a card for the participant by node.js api of hyperledger composer? Is there any tutorial/example? I can't find
Hi all. Is there a way to query a particular asset and get all the related changes to that asset?
[ ](https://chat.hyperledger.org/channel/composer?msg=uALgKRd7kWMgg9oFZ) @JoshuaRippon - I think this section in the Knowledge Wiki will help: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks
Hi everyone...
Is anyone able to use ldap passport strategy with mongo
That's what I needed. Thanks @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=cNkFisB6ZbJiHMaXZ) @sathishkumar0416 Does `composer --version` show you at v0.19.0 or above? The install/start process changed when v0.19.0 was released, and the `composer network install` command was introduced then. Earlier versions used `composer runtime install` and had different arguments
[ ](https://chat.hyperledger.org/channel/composer?msg=P2LT4xhJwDAPrcLN8) @ipahomov - I haven't seen any particular example, but have you seen this doc from the API ? https://hyperledger.github.io/composer/latest/api/common-businessnetworkcardstore.html
after upgrading my composer-cli and connection profile to follow new upgrade when i
```
composer network install --card PeerAdmin@org1 --archiveFile /opt/ols/composer/local/org1.example.com/bna/tutorial-network@0.0.1.bna
```
```
⠹ Installing business network. This may take a minute...E0409 15:18:12.293453019 26731 ssl_transport_security.cc:599] Could not load any root certificate.
E0409 15:18:12.295075177 26731 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0409 15:18:12.295132415 26731 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0409 15:18:12.295193792 26731 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:7051'
E0409 15:18:12.295241832 26731 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0409 15:18:12.295779939 26731 ssl_transport_security.cc:599] Could not load any root certificate.
E0409 15:18:12.295999160 26731 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0409 15:18:12.296038867 26731 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0409 15:18:12.296070982 26731 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:8051'
E0409 15:18:12.296100508 26731 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
⠸ Installing business network. This may take a minute...E0409 15:18:12.471888111 26731 ssl_transport_security.cc:599] Could not load any root certificate.
E0409 15:18:12.472030337 26731 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0409 15:18:12.472071373 26731 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0409 15:18:12.472104408 26731 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:7051'
E0409 15:18:12.472134958 26731 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
⠦ Installing business network. This may take a minute...^C
```
and when i check my ca container logs i found
```
2018/04/09 13:10:02 [DEBUG] Client authentication type requested: noclientcert
```
and i check all certifacte and it's exist
Hello, i'm trying to use passport-github but it return " InternalOAuthError: Failed to obtain access token", i looked in internet and saw that it can due to firewall or it because i'm working in a distant server by ssh and not localhost. Someone know how to fix it ?
@nasserfci - a few questions ...
what version of composer are you using?
what version of Fabric is running?
Are you following a particular tutorial or document?
Are you using the Development Fabric, or a Custom Fabric?
Has joined the channel.
Has joined the channel.
HI, a question about composer: in composer chaincode is written in JS, while as I know, fabric executes chaincode written in golang. Is the composer converting js to golang?
[ ](https://chat.hyperledger.org/channel/composer?msg=Cvk6PsYFf8nJbFvJt) @rthatcher Yes, I saw this docs. There are methods for operate with cards except create, unfortunately
@ipahomov check this gist: https://gist.github.com/rdemorais/d23124955371ad971ee176929c046659
I'm working on a DAPP that interact with the composer based network, so I had to write that one
Hi All,
i am trying to setup multi org setup in multiple physical machine,
while configuring my docker-compose-peer2 file,
For services→peer1.org2.example.com→depends_on is "orderer.example.com".
i replaced orderer.example.com with the IP address(for example 10.135.135.12:7050).
Can anyone please tell me is this correct.
Can you please tell me when i am trying to run organization one and orderer in one machine and organization two in another machine how to update the value for this services→peer1.org2.example.com→depends_on. since order is running in forst machine.
Thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=JnttTzk47pADFswHH) @akula thank you. Got it. Do you create file .card for participant after that? How participant know his card?
[ ](https://chat.hyperledger.org/channel/composer?msg=rNR3nDexyD8b5pT94) @nikolas - with Fabric 1.1, Node.js can be used natively - please see this: https://jira.hyperledger.org/browse/FAB-2331
Composer code no longer has to run in a virtualized layer and there are performance gains.
[ ](https://chat.hyperledger.org/channel/composer?msg=rNR3nDexyD8b5pT94) @nikolas - with Fabric 1.1, Node.js can be used natively - please see this: https://jira.hyperledger.org/browse/FAB-2331
@ipahomov We are on the same page now. I want to create a DAPP outside composer-rest-server, but I don't know how to do the login. With that gist all you have to do is to pass the user card name and all things will be available.
of course, you could email the card name, but, it is weird
[ ](https://chat.hyperledger.org/channel/composer?msg=hQ4QvfHKrwaMP6CrC) @akula May be this will help you https://www.skcript.com/svr/how-to-build-nodejs-application-for-your-hyperledger-composer-networks/
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ckMAzCZGWapTbtHGS) @rthatcher
my composer version is v0.19.0
i am using fabric version one i think because i am following https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org tutorial
i am using development fabric
hi, i have just updated to composer-cli 0.19. According to the docs, the command 'composer network deploy' is not usable anymore. therefore how can i deploy a business network .bna file through local composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=7kSjvPhNn5rruqyAY) @kmohanar - As far as I know docker-compose works on a single machine only, so you can only 'depend' on a container running on the same machine. If you are running on separate machines you will need to manager the addressing and networking yourself. In a production scenario you would run either Docker Swarm or Kubernetes to manage the networking, or use a hosting service.
There are 2 links here which may help you in your 2 machine configuration, but I think both were written before Composer v0,19.0 and Fabric 1.1
https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
Can Composer manage the endorsement policy ?? if yes, How???
@ipahomov thank you!! Unfortunately that tutorial uses card name to do the login :(
[ ](https://chat.hyperledger.org/channel/composer?msg=W8gAbDRJfkYgTdkW6) @KuAmirul - yes, the deploy command has been removed in Composer v0.19.0. The new commands are explained in the Release notes: https://github.com/hyperledger/composer/releases and the Developer tutorial has worked examples https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
@akula Yeah. But if your composer-rest-server is a only a small module of your big dapp, so this dapp has own authentication, or not?
[ ](https://chat.hyperledger.org/channel/composer?msg=mNT9Bjrzfit7dsbai) @rthatcher Thank you. I will check the shared links.
@akula Also you can use HSM for card security https://github.com/hyperledger/composer/wiki/HSM-Support
[ ](https://chat.hyperledger.org/channel/composer?msg=eCgBJeqkvSiECbW5G) @rthatcher Thanks!
Everything worked until I restarted docker, now I get "Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode b4media has been successfully instantiated and try again: could not find chaincode with name 'b4media'".
Even I have run ./startFabric after the restart.
Can Composer manage the endorsement policy ?? if yes, How???
@rthatcher Thanks a lot for the info!
@ipahomov HSM is really a good approach, but if someone knows another user card name... we got a security breach. That's why I think that to enforce login by using the card credentials is the right path
@akula what abou passport.js? (http://www.passportjs.org/) You can choose any type of authentication. I tried JWT
[ ](https://chat.hyperledger.org/channel/composer?msg=7E3fERfcT5CYvSisJ) @BilalAhmad There is some information on specifying endorsement policy as part of the network start/upgrade about halfway down this page: https://hyperledger.github.io/composer/latest//managing/connector-information
[ ](https://chat.hyperledger.org/channel/composer?msg=7E3fERfcT5CYvSisJ) @BilalAhmad There is some information on specifying endorsement policy as part of the network start/upgrade about halfway down this page: https://hyperledger.github.io/composer/latest//managing/connector-information
There is also a worked example in this tutorial: https://hyperledger.github.io/composer/latest//tutorials/deploy-to-fabric-multi-org
@ipahomov it is my first choice, but the problem remains. Passport will give to you the JWT that brings the card name...
I think the solution can be found here `node_modules/composer-client/lib/businessnetworkconnection.js:429`
There you connect against the network using username and password
[ ](https://chat.hyperledger.org/channel/composer?msg=7E3fERfcT5CYvSisJ) @BilalAhmad - Composer can specify an Endorsement Policy when the Business Network is started, or when the Business Network is updated. There are a number of references in the Composer documentation regarding endorsement so I would recommend searching there. Endorsement is covered in more detail in the Fabric documentation.
[ ](https://chat.hyperledger.org/channel/composer?msg=JW8LaxQmtZTgckEPf) @bestbeforetoday Thanks a lot for the help!!
[ ](https://chat.hyperledger.org/channel/composer?msg=bwooTmQDZmTHXAFKs) @JackMalinowski - The startFabric.sh script actually starts a new (empty!) fabric so your b4media network has been lost. Please see this Stackoverflow question on the same subject: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
[ ](https://chat.hyperledger.org/channel/composer?msg=Pfr49jLyynYMu5dAz)
it worked when i copy the certificate with copy and paste it on connection profile file
but what should i do if i want to use the file path ? in connection profile instead of copy and paste the whole certificate
@akula sorry, don't have a access to the code now
@ipahomov thanks for thinking with me. I will keep trying
Has joined the channel.
@akula thank you. I saw the code. Got it. And i still have my problem - create .card files. Btw composer-playground can do it, so just need to find this logic.
[ ](https://chat.hyperledger.org/channel/composer?msg=z4WSnhsGyWwZAFRdy) @Poneey someone posted this - similar to your issue -> https://github.com/binario200/passport-social-auth
@ipahomov Right now I'm creating cards with that gist I sent to you. But I have install/started the network (BNA) previously
@akula but you create cards without files or you can export them somehow?
For downloading
this line: `const cardStore = require('composer-common').NetworkCardStoreManager.getCardStore();` get you current composer store, so the cards are created here `/Users/rafaeldemorais/.composer/cards/`
this line: `const cardStore = require('composer-common').NetworkCardStoreManager.getCardStore();` get your current composer store, so the cards are created here `/Users/rafaeldemorais/.composer/cards/`
all subsequent commands rely on that location
@akula oh, now i see. Thank you!
:)
hello everyone, I am just wondering, for the restadmin card, do we have to import it?
Hello all, I really need your help... I have spent so much time trying to launch the Hyperledger Explorer, and a file cannot be found by the app - it is the certificate - the path is correct for sure and I have even changed the permissions to allow all access...
`Error: ENOENT: no such file or directory, open '~/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt'`
Is there any reason why the node app cannot access this file?
if I simply `cd ~/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/`
then all works fine and I can see the file
:)
@ydennisy I'm no expert in explorer, but, if it is a docker container you should map that path to somewhere inside the container. Try to check the env variables
hey @akula it is not a docker
But even is I just run the command to get that file from the node REPL - the error remains
How do I handle request routing in Hyperledger?
@ydennisy did you try to pass the complete path? (without `~/`)
Hello everyone, https://discourse.skcript.com/t/how-to-build-nodejs-application-for-your-hyperledger-composer-networks/616, for this link, this will only work with node js am I correct? I read on packages that was installed such as compose-admin, compose-client and all
seems to be only working for js
seems to be the packages that only available for node js*
[ ](https://chat.hyperledger.org/channel/composer?msg=3dfHgihqRRJGHGP6f) @akula WOWOW!
thanks @akula such a silly thing but it works now
thanks
nice!
npm install express composer-admin composer-client composer-common --save Base on my little knowledge, these are exclusive to node js?
Hello I need to deploy blockchain technology into an existing achademic system for the management of students records, the idea is to keep the track of all record transactions, in such a way that users (Students, professors and parents) could inspect the student courses with absolute guaratee. I've been seen Hyperledger Fabric, but I realize that there are to approaches 1 Via Hyperledger-Composer, and 2 Via Hyperledger Fabric SDKs. My questions is if some body could give me some hints on what approach do I need to take, or which best fits into my needs. The actual system is string all data in a SQL database server.
@eguevarar depends on your scale, and time to production.
Guys, since I made changes to the permissions on my files I forgot to note them... could some please check the following permissions at defaults state:
`~/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config`
`~/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt`
Anyone of you guys manage to get the rest-api system.identity/issue done?
Mine seems to stuck forever
Unhandled error for request POST /api/system/identities/issue: Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
This message appeared
https://github.com/hyperledger/composer/issues/3792
posted the issue here.
Can we create pubic blockchain using hyperledger composer
Screen Shot 2018-04-10 at 3.44.45 AM.png
Has joined the channel.
I was looking for an answer to this as well. I've yet to find a way (preferably through queries or the rest server) to filter by a property that is null. Is this currently possible? Thanks [ ](https://chat.hyperledger.org/channel/composer?msg=GDXstaJcSxCCZHjR8)
Has joined the channel.
Good day, I would like to know if someone has examples of ACL's Access Control in Hyperledger Composer specifically in the conditions part because the examples presented are very few, I would appreciate, thanks for your time and information
Hi everyone.
I'm very new in this area. Now, following this tutorial: https://www.ibm.com/developerworks/cloud/library/cl-deploy-interact-extend-local-blockchain-network-with-hyperledger-composer/index.html
but when I use this :cd $COMPOSER_ROOT/developerWorks/iot-perishable-network
composer network deploy -a dist/iot-perishable-network.bna -A admin -S adminpw -c PeerAdmin@hlfv1 -f networkadmin.card
composer card import --file networkadmin.card its gives me an error.
it seems that instead of composer network deploy I should use composer network install/start , but doesn't work for me.
any idea?!
Has joined the channel.
@faezeh993 I suggest you to follow this tutorial: https://www.youtube.com/watch?v=nS_MRqAeEbQ&t=28s
And yes, you should install and start the network first
@faezeh993 I suggest you follow this tutorial: https://www.youtube.com/watch?v=nS_MRqAeEbQ&t=28s
And yes, you should install and start the network first
thanks for the youtube link
How can I access Azure VM using RDP? because I want to open composer-restserver on brwoser
browser
@mahoney1 Hello, thank for your answer. I tried this solution but it didn't help me. I don't know if i correctly used it because functions whose it talk isn't in "oauth.js" but "oauth2.js" so i modified "oauth2.js"
Hi, i'm following the multi-org deployment tutorial, and i was wondering: Are *.yaml files also supported for the connection profiles ?
@erNail You can create a card with a yaml common connection profile then import the card. The yaml format isn't kept though it will always be converted to JSON, so if you export the card the connection profile will be in JSON format.
@davidkel All right, thank you
can anyone tell me how to check the version number of the business network? Is the version is the same version as we define in the connection.json file? [while starting the network we give networkVersion in the command.. for this i'm asking.. ]
Hello, i have two questions :
is it possible to authentificate participant by stocking login/password in network (defined in models.cto) ?
is there a way to create scheduled function (like cron) which look at data every ** hours in blockchain ?
@Pranoti the version of a business network is the version stored in package.json of the business network. When you create the BNA it will output the version number as part of the identifier. When you install the business network it will output the name as well as the version number it has installed. You can also use the `composer archive list` command to output details of a `.bna` file
[ ](https://chat.hyperledger.org/channel/composer?msg=jbGumBWwBm9jGSiNd) : Hi,
As suggested we have tried to setup multi orge setup in multi host using the docker swarm manager,
When running the ./startFabric-Peer2.sh file i am facing the below mentioned error,
Error: can't read the block: &{FORBIDDEN}
Inside the dokcer logs of the orderer we can see the error message like,
"2018-04-10 05:37:06.059 UTC [cauthdsl] func2 -> ERRO 7b5 Principal deserialization failure (MSP org2MSP is unknown) for identity 0a076f7267324d53501280062d2d2d2d2d424547494e202d2d2d2d2d0a4d4949434754434341622b6741774942416749514a765137434e69664f396a5675436e4a59466c523954414b42676771686b6a4f50515144416a427a4d5173770a435159445651514745774a56557a45544d4"
Can anyone please help on this
Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=jbGumBWwBm9jGSiNd) Hi,
As suggested we have tried to setup multi orge setup in multi host using the docker swarm manager,
When running the ./startFabric-Peer2.sh file i am facing the below mentioned error,
Error: can't read the block: &{FORBIDDEN}
Inside the dokcer logs of the orderer we can see the error message like,
"2018-04-10 05:37:06.059 UTC [cauthdsl] func2 -> ERRO 7b5 Principal deserialization failure (MSP org2MSP is unknown) for identity 0a076f7267324d53501280062d2d2d2d2d424547494e202d2d2d2d2d0a4d4949434754434341622b6741774942416749514a765137434e69664f396a5675436e4a59466c523954414b42676771686b6a4f50515144416a427a4d5173770a435159445651514745774a56557a45544d4"
Can anyone please help on this
Thanks
Guys,
on submitting transaction .. error ..
t: Model violation in instance org.acme.vehicle_network.Order#qq class org.acme.vehicle_network.Vehicle has value Resource {id=org.acme.vehicle_network.Vehicle#v1} expected a Relationship.
why?
that's the default JSON object when doing placeorder transaction
{
"$class": "org.acme.vehicle_network.PlaceOrder",
"order": {
"$class": "org.acme.vehicle_network.Order",
"orderId": "qq",
"orderStatus": "",
"vehicle": "resource:org.acme.vehicle_network.Vehicle#v1",
"owner": "resource:org.acme.vehicle_network.Person#p1"
}
}
Has joined the channel.
Has joined the channel.
Hi,
i'm using HL Composer v0.18.1 with HL Fabric v1.1.0.
I'm having an error when I try to launch a complex query.
The error displayed is this one:
"Error: Couch DB Error:no_usable_index, Status Code:400, Reason:No index exists for this sort, try indexing by the sort fields."
And the query launched is this one:
SELECT org.hyperledger.composer.system.HistorianRecord
WHERE ((participantInvoking==_$participantInvoking) AND (_$fromTime>=transactionTimestamp) AND (_$toTime<=transactionTimestamp))
ORDER BY [transactionTimestamp DESC]
Actually without the ORDER BY part, the query works fine.
Does anyone have any idea?
Thanks
can we add and update a registry in same transaction function?
[ ](https://chat.hyperledger.org/channel/composer?msg=juXQ9NrEqwYLfkZvS) @davidkel great.. thanks! :) (y)
[ ](https://chat.hyperledger.org/channel/composer?msg=juXQ9NrEqwYLfkZvS) @davidkel great.. thanks! :) :thumbsup:
[ ](https://chat.hyperledger.org/channel/composer?msg=uGtQoe4rktyxenT6v) @mostafa.elsayyad - are you using the sample Vehicle Lifecycle network, in Composer v0.19.0?
This is the default JSON format for the PlaceOrder Transaction:
```
{
"$class": "org.acme.vehicle_network.PlaceOrder",
"orderId": "PO99",
"vehicleDetails": {
"$class": "org.acme.vehicle_network.VehicleDetails",
"make": "resource:org.acme.vehicle_network.Manufacturer#2509",
"modelType": "",
"colour": ""
},
"options": {
"$class": "org.acme.vehicle_network.Options",
"trim": "",
"interior": "",
"extras": []
},
"orderer": "resource:org.acme.vehicle_network.Person#4688"
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=Bt9oiderzozkjaNKj) @suva - you can add and update to the same registry, in a single transaction, BUT not the same object.
Hello, I have this issue, any idea ?
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
```
I wish to make a game using hyperledger. My main use case is matchmaking engine. Instead of using unity matchmaking I wish to build my own. As such this is a big task and quite time consuming but I was wondering if by using Hyperledger the amount of work required can be reduced. I couldn't find anything on udp protocol, load balancing, session management etc in hyperledger so if anyone can guide me how to go about things it would be really helpful
@rthatcher . Thanks. But my requirement is i will create a registry asset and add some value then after some interval i will read other values and update registry?
if I use add then its only update the latest value in registry, I need all the value for my contract logic built
[ ](https://chat.hyperledger.org/channel/composer?msg=xoqJ2Kk7WXnCfCGAt) @suva you add the asset to the registry (on the ledger) - then you update that asset in the world state via a separate trxn.
@sagargarg Before you come to this point, you should try deploy a simple network....
[ ](https://chat.hyperledger.org/channel/composer?msg=vatEpLNXHZqXZcrhL) @CorentinPacaud I did try the perishable network sample provided
Yes, but you didn't try multi organization, multi channel, multi machine, etc.
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=gWWuQDE8Km4u8bgZb) @CorentinPacaud - when you execute a `composer network start` command a new Docker Container is created, and when it is started it issues npm commands. So it looks like your new container can't see the default npm repository. Is there a proxy involved or some other network isolation or network connectivity issue?
Has joined the channel.
Hello, what is happening with the broken doc links? I want to view the tutorial to publish & subscribe to websocket events.
https://hyperledger.github.io/composer/business-network/publishing-events.html
https://hyperledger.github.io/composer/applications/subscribing-to-events.html
Happy to find this in an alternate source if anyone has one. I am hoping to listen to events on the composer-rest-server, which I assume are all published since this is asked when firing it up?
I think I have it :)
https://hyperledger.github.io/composer/latest/applications/subscribing-to-events
https://hyperledger.github.io/composer/latest/business-network/publishing-events.html
However! One question remains - does the `rest server` emit events automatically?
for any operations such as GET/POST etc
Hello
I have created sample rest api provided by yo..now I have chaneged logic.js and model file as well..restart farbric, deleted older card, created new bna file and repeat the process but still I have not seeing my changes in the rest api. Can somebody kindly suggest me how can I see my changes in to rest api page?
should I teardownall?
@ydennisy correct - docs include `/latest/` in the path - no, `rest server` doesn't automatically emit events - you add this in your TP function (eg could be in the transaction you POST on the REST client) - see https://hyperledger.github.io/composer/latest//business-network/publishing-events.html
Hi all. Is there a quick way to make updates to an asset?
[ ](https://chat.hyperledger.org/channel/composer?msg=thxZXzHKPdGyTvAqk) @mahoney1 Thanks! However, I am not using any txs I am just making participants - there is now way to create an event for any newly made participants? Could I write a generic tx which just fires the event?
[ ](https://chat.hyperledger.org/channel/composer?msg=iaytBHjEGsNp4yjok) @d8bhatta you don't need to restart your Fabric each time to do that you only need to 1) recreate your archive using `composer network archive` - see example steps captured here -> https://hyperledger.github.io/composer/latest/tutorials/queries specifically 'Step Three' - Regenerate... 'Step Four' - Deploy (with your network name substituted etc) - and you should be able to carry on (for your use case) with 'Step Five' through 'Step Six' to interact with the REST server.
@ydennisy not for system events (eg, AddParticipant, AddAsset) -> but see here for alternative method https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#events - feel free to raise an issue for this.
[ ](https://chat.hyperledger.org/channel/composer?msg=Z3xiLooPftr2Rv58s) @JoshuaRippon yeah, connect to your BN using Playground :-)
@mahoney1 Thanks for your help. I ran the command and got this error:
$ composer network upgrade -c PeerAdmin@hlfv1 -n test-tech -V 0.0.2
Upgrading business network realized-tech to version 0.0.2
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (test-tech:0.0.2))
Command failed
@d8bhatta 1) did you earlier install 0.0.1 using `composer network install` (what was the command) - 2) did you change your package.json to add 0.0.2 ? 3) did you run a `composer network install --card PeerAdmin@hlfv1 --archiveFile test-tech@0.0.2.bna` (filename?) prior to your `upgrade` step above?
@d8bhatta 1) did you earlier install 0.0.1 using `composer network install` (what was the command) - 2) did you change your package.json `"version"` to add 0.0.2 ? 3) did you run a `composer network install --card PeerAdmin@hlfv1 --archiveFile test-tech@0.0.2.bna` (filename?) prior to your `upgrade` step above?
[ ](https://chat.hyperledger.org/channel/composer?msg=oW64TiEWLvLou53XZ) @mahoney1 Thank you will take a look at this.
[ ](https://chat.hyperledger.org/channel/composer?msg=Z3xiLooPftr2Rv58s) @JoshuaRippon I use composer rest server rather than playground :) Can launch it in one line
hello all, i need some help in my project..
hello all i need some help, my project is to put student certificate on the blockchain, i install the composer playground, and start to write the participant(students) and the asset(certificate) and the transaction(btw the students),but i need to know how can the admin add the images to the asset(i read that we can encode the image to base64 and attach as a string) but how can i do is, i have a js function for encoding but the path of the images is the localhost directory? or what i need some help plz if any one can
hello all i need some help, my project is to put student certificate on the blockchain, i install the composer playground, and start to write the participant(students) and the asset(certificate) and the transaction(btw the students),but i need to know how can the admin add the images to the asset(i read that we can encode the image to base64 and attach as a string) but how can i do this, i have a js function for encoding but the path of the images is the localhost directory? or what i need some help plz if any one can
@mahoney1 I missed install step, now it works. Awesome thank you so much
async function GetTempDetails(uID){
var factory = getFactory();
var NS_M = 'org.acme.securebox';
var Namespace = "org.acme.base";
var uniqueID = uID.orderId + "-" + uID.prodId + "-" + uID.secureBoxId;
var temperature = factory.newResource(NS_M, 'Temperature', uniqueID);
var conceptTemperature = factory.newConcept(Namespace, 'TempReadings');
const temp = await request.get({ uri:
'https://s0014297893s0014297893trial.hanatrial.ondemand.com/SecureBox/odataServices/service1.xsodata/new_temp_test?$filter = ORDERID eq '+uniqueID ,json:true});
temperature.uniqueId = temp.d.results[0].ORDERID;
conceptTemperature.minTemp = temp.d.results[0].tempMin;
conceptTemperature.maxTemp = temp.d.results[0].tempMax;
conceptTemperature.avgTemp = temp.d.results[0].tempAvg;
temperature.redTemp = conceptTemperature;
alert("working");
// save the order
return getAssetRegistry(temperature.getFullyQualifiedType())
.then(function (registry) {
return registry.update(temperature);
})
.then(function(){
var CreateTempDetailsEvent = factory.newEvent(NS_M, 'CreateTempDetailsEvent');
CreateTempDetailsEvent.uniqueId = temperature.uniqueId;
emit(CreateTempDetailsEvent);
});
}
it throwing me an error t: Instance org.acme.securebox.Temperature#ORD0001-PROD0001-3456 missing required field redTemp
though it already is in my asset model file
asset Temperature identified by uniqueId {
o String uniqueId
o TempReadings redTemp
}
[ ](https://chat.hyperledger.org/channel/composer?msg=gWWuQDE8Km4u8bgZb) @CorentinPacaud You need to create a file that defines the contents of the .npmrc filefor example call it `/tmp/npmrcfile` , then install the network archive (bna) using `composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.2.bna -o npmrcFile=/tmp/npmrcfile`. Info: https://hyperledger.github.io/composer/latest/managing/connector-information.html
ok, will try
@mahoney1 What should be the content of this fiel ?
@mahoney1 What should be the content of this file ?
And why should I use this registry mapping ? We want to use the standard one
And why I didn't need it before ?
the issue you have is resolution to registry.npmjs.org from inside the container - you could try adding `registry=151.101.60.162:4873` to the npmrcFile (that's the address that I got resolved for the domain name)
@suva - your Stack overflow is answered
@mahoney1 .Thanks
I have added some values to a registry. If I am doing some update with other values, the registry will update with latest one. But I want to store all value is that registry because I want to fetch all the value when needed
If I update a registry the older value would be there or overwrite
My requirement is to append one by one value
@hussein.knight this may help https://gist.github.com/MarkoCen/0ee9437439e00e313926 - you can then create the appropriate transaction JSON - then submit the transactions (the transactions will update the associated assets by ID - see example here -> https://hyperledger.github.io/composer/latest/reference/composer.transaction.submit.html )
[ ](https://chat.hyperledger.org/channel/composer?msg=jbGumBWwBm9jGSiNd) Hi,
As suggested we have tried to setup multi orge setup in multi host using the docker swarm manager,
When running the ./startFabric-Peer2.sh file i am facing the below mentioned error,
Error: can't read the block: &{FORBIDDEN}
Inside the dokcer logs of the orderer we can see the error message like,
"2018-04-10 05:37:06.059 UTC [cauthdsl] func2 -> ERRO 7b5 Principal deserialization failure (MSP org2MSP is unknown) for identity 0a076f7267324d53501280062d2d2d2d2d424547494e202d2d2d2d2d0a4d4949434754434341622b6741774942416749514a765137434e69664f396a5675436e4a59466c523954414b42676771686b6a4f50515144416a427a4d5173770a435159445651514745774a56557a45544d4"
Can anyone please help on this
Thanks
@ùa
@mahoney1 Well, this is better, I think....
New error :
``` composer network start -c PeerAdmin@hlfv1 -A admin -S adminpw --file ./admin.card -n odm-poc-network -V 0.0.81 -o tmp/npmrcfile
/home/me/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/composer-common/lib/cardstore/businessnetworkcardstore.js:54
async get(cardName) {
^^^
SyntaxError: Unexpected identifier
at Object.exports.runInThisContext (vm.js:76:16)
at Module._compile (module.js:542:28)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.
Need to update something
?
two things 1) you need node 8.9.x (async won't work with that version of node 2) not sure if you mean /tmp/npmrcFile in the longer run - but just pointing that out
@CorentinPacaud two things 1) you need node 8.9.x (async won't work with that version of node 2) not sure if you mean /tmp/npmrcFile in the longer run - but just pointing that out
ok, seems better
can we add one by one value in to a registry ? if yes how?
update it will update the existing one with new one. I want both older value plus new value
[ ](https://chat.hyperledger.org/channel/composer?msg=qRNbGEqJvLKpxuJCx) @suva
Something like this?
https://github.com/Chris-McQueen-Development/logistics-chain/blob/master/utility-scripts/createPlants.js
like this
ORD0001-PROD0001-3456
{
"$class": "org.acme.securebox.Temperature",
"uniqueId": "ORD0001-PROD0001-3456",
"redTemp": {
"$class": "org.acme.base.TempReadings",
"minTemp": "16",
"maxTemp": "23",
"avgTemp": "19.5"
}
"$class": "org.acme.securebox.Temperature",
"uniqueId": "ORD0001-PROD0001-3456",
"redTemp": {
"$class": "org.acme.base.TempReadings",
"minTemp": "17",
"maxTemp": "24",
"avgTemp": "20"
}
"$class": "org.acme.securebox.Temperature",
"uniqueId": "ORD0001-PROD0001-3456",
"redTemp": {
"$class": "org.acme.base.TempReadings",
"minTemp": "34",
"maxTemp": "12",
"avgTemp": "32"
}
}
Add it as a new asset?
You can't have two assets with the same unique ID, as that's no longer a unique id
@suva - there are sample networks https://github.com/hyperledger/composer-sample-networks/tree/master/packages you can explore (particular under `/lib`) to see examples (eg. SetupDemo) of assets being added to registries etc.
@suva - there are sample networks https://github.com/hyperledger/composer-sample-networks/tree/master/packages you can explore (particular under `/lib`) to see examples (eg. SetupDemo in https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L119) of assets being added to registries etc.
@mahoney1 Wel, it's really working....
```composer network start -c PeerAdmin@hlfv1 -A admin -S adminpw --file ./admin.card -n odm-poc-network -V 0.0.81 -o npmrcfile=tmp/npmrcfile
Starting business network odm-poc-network at version 0.0.81
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-04-10T12_01_25_732Z-debug.log
"
Command failed
```
And yes, I put the conf file in the tmp folder here
can i update values with same unique id
@CorentinPacaud
[ ](https://chat.hyperledger.org/channel/composer?msg=hjmSTLy2cubcaRESm) @suva No, you can't have two values with the same id.
Think of it like a primary key in a SQL database
[ ](https://chat.hyperledger.org/channel/composer?msg=hjmSTLy2cubcaRESm) @suva No, you can't have two assets with the same id.
Think of it like a primary key in a SQL database
hey guys! where do i set the composer docker images version? my `docker-compose-composer-cli.yaml` file doesn't have an image field
apparently it builds the image from somewhere else but I don't know docker that much... can someone help me?
@CorentinPacaud that's because you need it on the `composer network install` and not the `composer network start` command :-)
Ah ok
@CorentinPacaud if I am going to store sensor data stores in blockchain in every 5 mins or 15 mins with some Device ID , how can i proceed with my coding?
@mahoney1 ok, it's better but one last error :
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! Only HTTP(S) protocols are supported
```
[ ](https://chat.hyperledger.org/channel/composer?msg=pvKzCTwP3YNtQdoEg) @bandreghetti - where are you seeing that yaml file ? I don't have it on my system
Hi, i've just checked, when you define 2 channels in a connection profile, composer will accept these channels when creating and importing the PeerAdmin cards. My question is: Is the second channel ignored ? Or what happens with it ? As far as i know you can only use one channel per connection profile ?
Hi, i've just checked, when you define 2 channels in a connection profile, composer will accept these channels when creating and importing the PeerAdmin cards. My question is: Is the second channel ignored ? Or what happens with it ? As far as i know you can only use one channel per connection profile ?
Context: I'm trying to deploy a multi-org network with 2 channels
@erNail how composer handles the channel definition on a profile is defined here
https://hyperledger.github.io/composer/latest/reference/connectionprofile
And BTW, the connectionProfile.json if composer v0.16.0 and under are completly not compatible with v0.19.0
Has joined the channel.
Can someone help me with this problem
Unable to find image 'myorg/my-composer-rest-server:latest' locally
docker: Error response from daemon: pull access denied for myorg/my-composer-rest-server, repository does not exist or may require 'docker login'.
See 'docker run --help'.
[ ](https://chat.hyperledger.org/channel/composer?msg=mTBPcF27ooMfnXmot) @CorentinPacaud - this is a good place to remind members of the community that every time there is a version change, there are almost certainly "breaking changes" such as the change in Business Cards (including connection.json) between v0.16 and v0.17.
The breaking changes and other changes are described in the releases document on GitHub and we always recommend people read this doc when upgrading :-)
https://github.com/hyperledger/composer/releases?after=v0.17.4
Has joined the channel.
@davidkel Thanks for the information.
Hi, i met a error when start network, below is the error message:
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
@jerry-zww I have exactly the same
yes, it is stop me a long time. No know why
try many time to clean all the containers and rebuild, the error is still
same
Anybody know how the problem happen?
BTY, I am using the fabric 1.1.0
I had the same too, my machine wasn't powerful enough to run it. I changed to a more powerful PC and not had that issue since
Think you may be able to increase the timeout though
[ ](https://chat.hyperledger.org/channel/composer?msg=XEzKsyR8Y5Pi5YLJf) @ComposerAPI - are you following a particular tutorial or document? If you are executing a `docker run` command then the name of the image you are trying to run has to match up to the name you used in the previous `docker build` command. You can try `docker images` to get a list of images and see if you have successfully created a customized composer-rest-server image.
[ ](https://chat.hyperledger.org/channel/composer?msg=8r2WxFuzf69bzBMFb) @rthatchermyorg/composer-rest-server latest 20311fab3892 13 hours ago 283MB
hyperledger/composer-rest-server latest 000304115947 12 days ago 267MB
[ ](https://chat.hyperledger.org/channel/composer?msg=dGYrL8bSCsvrDWpsf) @ComposerAPI - `myorg/composer-rest-server` vs `myorg/my-composer-rest-server` note the extra ` my- `
[ ](https://chat.hyperledger.org/channel/composer?msg=cxexSsSEj3ga3Gxbd) @rthatcher th and it work
Hi all im trying to start composer, but I receve this error:
```
Hi all im trying to start composer, but I receve this error:
```
Starting business network tutorial-network at version 0.0.1
Processing these Network Admins:
userName: user1
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Error: 2 UNKNOWN: access denied: channel [mychannel] creator org [Org1MSP]
```
Hi all im trying to start composer, but I receve this error:
```
Starting business network tutorial-network at version 0.0.1
Processing these Network Admins:
userName: user1
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Error: 2 UNKNOWN: access denied: channel [mychannel] creator org [Org1MSP]
```
Hi all im trying to start composer, but I receve this error:
```
Starting business network tutorial-network at version 0.0.1
Processing these Network Admins:
userName: user1
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Error: 2 UNKNOWN: access denied: channel [mychannel] creator org [Org1MSP]
```
Hi all im trying to start composer, but I receve this error:
```
Starting business network tutorial-network at version 0.0.1
Processing these Network Admins:
userName: user1
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Error: 2 UNKNOWN: access denied: channel [mychannel] creator org [Org1MSP]
```
Any ideas about this error?
I try to open my localhost composer in Safari but it show me Failed to open page server is busy
@jerry-zww @CorentinPacaud take a look at https://github.com/hyperledger/composer/issues/3731
@jerry-zww @CorentinPacaud take a look at https://github.com/hyperledger/composer/issues/3731 see if it helps
[ ](https://chat.hyperledger.org/channel/composer?msg=ZPjzupCx2DrfokndE) @ComposerAPI - assuming you are trying to hit 'localhost:3000/explorer` for the REST server?
Then have a look at the log for the rest server and see if it is started correctly `docker logs rest` (if 'rest' is the name of the container)
Hello, i'm creating a simple component to authentifiat participant (just check if informations in form are equals to information in blockchain).
I can now compare informations etc but i don't know how to manage connection with blockchain now. Someone have an idea or an example or tutorial for me ?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=6BQGcbCweRgonogPp) @Stecec - are you working on a custom version of the Fabric byfn.sh network?
I would suggest looking at the log of the peer containers (starting with the first listed in your connection.json) and the log of the CA container.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=SnjqQys5m8Ak3Yg3r) @mahoney1 can you please let me know whether we can create public blockchain by disabling API authentication
Having an issue with create identity:
composer identity issue -c admin@mynetwork -u foobar -a com.xxx.mynetwork.Person#Foobar -c foobar@mynetwork -f foobar@mynetwork
Results in the following output:
Issue identity and create Network Card for: foobar
TypeError: name.startsWith is not a function
Command failed
Having an issue with create identity:
composer identity issue -c admin@mynetwork -u foobar -a com.xxx.mynetwork.Person#Foobar -c foobar@mynetwork -f foobar@mynetwork
Results in the following output:
Issue identity and create Network Card for: foobar
TypeError: name.startsWith is not a function
Command failed
Having an issue with create identity:
composer identity issue -c admin@mynetwork -u foobar -a com.xxx.mynetwork.Person#Foobar -c foobar@mynetwork -f foobar@mynetwork
Results in the following output:
Issue identity and create Network Card for: foobar
TypeError: name.startsWith is not a function
Command failed
Note composer v0.19.0 and hlfv11
Hello,
I have a strange result here:
Executing:
$ npm install -g composer-cli@next
Gives:
+ composer-cli@0.18.2
And Executing:
$ npm install -g composer-cli
Gives:
+ composer-cli@0.19.0
I expected the contrary: `$ npm install -g composer-cli@next ⇒ composer-cli@0.18.2` and `$ npm install -g composer-cli ⇒ composer-cli@0.19.0`.
Hello,
I have a strange result here:
Executing:
$ npm install -g composer-cli@next
Gives:
+ composer-cli@0.18.2
And Executing:
$ npm install -g composer-cli
Gives:
+ composer-cli@0.19.0
I expected the contrary: `$ npm install -g composer-cli@next ⇒ composer-cli@0.19.0` and `$ npm install -g composer-cli ⇒ composer-cli@0.18.2`.
Hello,
I have a strange result here:
Executing:
$ npm install -g composer-cli@next
Gives:
+ composer-cli@0.18.2
And Executing:
$ npm install -g composer-cli
Gives:
+ composer-cli@0.19.0
I expected the contrary: `$ npm install -g composer-cli@next ⇒ composer-cli@0.19.0` and `$ npm install -g composer-cli ⇒ composer-cli@0.18.2`.
Hello,
I have a strange result here:
Executing:
$ npm install -g composer-cli@next
Gives:
+ composer-cli@0.18.2
And Executing:
$ npm install -g composer-cli
Gives:
+ composer-cli@0.19.0
I expected the contrary: `$ npm install -g composer-cli@next ⇒ composer-cli@0.19.0` and `$ npm install -g composer-cli ⇒ composer-cli@0.18.2`.
I followed the instruction in the github repo with the commit set to the tag v0.19.0... So I expected to install `composer-cli@0.19.0` by following the instructions (`$ npm install -g composer-cli@next`)
`Connection fails: Error: Error trying to ping. Error: Composer runtime (0.19.0) is not compatible with client (0.18.1)
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Composer runtime (0.19.0) is not compatible with client (0.18.1)
Error: Error trying to ping. Error: Composer runtime (0.19.0) is not compatible with client (0.18.1)
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:699:34)
at
`Connection fails: Error: Error trying to ping. Error: Composer runtime (0.19.0) is not compatible with client (0.18.1)
It will be retried for the next request. Exception: Error: Error trying to ping. Error: Composer runtime (0.19.0) is not compatible with client (0.18.1) Error: Error trying to ping. Error: Composer runtime (0.19.0) is not compatible with client (0.18.1) at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:699:34) at
`Connection fails: Error: Error trying to ping. Error: Composer runtime (0.19.0) is not compatible with client (0.18.1) It will be retried for the next request. Exception: Error: Error trying to ping. Error: Composer runtime (0.19.0) is not compatible with client (0.18.1) Error: Error trying to ping. Error: Composer runtime (0.19.0) is not compatible with client (0.18.1) at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:699:34) at
@Pranoti composer-client ? composer-common ?
[ ](https://chat.hyperledger.org/channel/composer?msg=QA8fLpWJTKMNLbR5w) @rthatcher Thanks I'm working on a custom version of byfn.sh. I solved the problem by using docker stop and rm on all docker containers. But the I receved this error for the same command:
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=QA8fLpWJTKMNLbR5w) @rthatcher Thanks I'm working on a custom version of byfn.sh. I solved the problem by using docker stop and rm on all docker containers. But the I receved this error for the same command:
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=QA8fLpWJTKMNLbR5w) @rthatcher Thanks I'm working on a custom version of byfn.sh. I solved the problem by using docker stop and rm on all docker containers. But the I received this error for the same command:
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=tgesKm9S4CuGR8PKT) @CorentinPacaud didn't get that..what you trying to say?
[ ](https://chat.hyperledger.org/channel/composer?msg=tgesKm9S4CuGR8PKT) @CorentinPacaud didn't get that..what you are trying to say?
Did you update composer-client and composer-commom ?
Hi all. How come I can see the transaction record in the historian on the playground however when I use the GET /system/historian it does not give me the exact transaction details?
[ ](https://chat.hyperledger.org/channel/composer?msg=rZseKuZaEpWCBEcTu) @CorentinPacaud No ..
[ ](https://chat.hyperledger.org/channel/composer?msg=rZseKuZaEpWCBEcTu) @CorentinPacaud No .. I have followed this link https://hyperledger.github.io/composer/latest/installing/development-tools.html .. There is nothing in there what you saying.. composer client and common? what are these for?
there are npm module
I followed instructions in the documentation in order to access the playground and I have:
```
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
```
I followed instructions in the documentation in order to access the playground and I have:
```
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
```
Playground v0.19.0
[ ](https://chat.hyperledger.org/channel/composer?msg=fWRcuyKispDSaD3TJ) @JoshuaRippon Please share what you can see?
Clipboard - April 10, 2018 3:55 PM
@ChrisMcQueenDevelopment I can see that a participant was added and updated but I can't see who was added or what they were updated to
You'll have to do a separate check based on the ID of that person after historian gives you it
The super long #3d932,,, etc is their id
@ChrisMcQueenDevelopment how would I check the original identity? Since when I query the participant I will only get back the latest one, not how they were pre update
.. Good question
Two points
1) I wrap all my CRUD in transactions for business logic. You can then look at the individual transaction that occured
2) I can't imagine that's only the case, maybe someone more knowledgable than me can chime in?
Has joined the channel.
Am I able to write custom queries on system updates? In this example I have used system.updateParticipant, so would I be able to write a custom query for this?
To query them? I believe you can. If not, you can definitely use the node api to look at the participant registry
If this is true, then I would be able to track all the updates for that participant. However if there were changes to that participant in other ways, ie via a custom transaction, then simply querying the update.Participant wouldn't show me all the changes. I would need to query the custom transaction and join the two
One of the most important things that someone should be able to do is to easily track any updates or changes to an asset, however it seems like at the moment you have to use workarounds to do so...
Nope, even a custom transaction should go through as an update
That is a valid point; hopefully someone else is online to explain better than me
@stetec - this reply from earlier today may help:
https://chat.hyperledger.org/channel/composer?msg=8quCd5s8XLtDEFfzq
Your timeout is happening when a new container is being created for each Peer in your Fabric network, so maybe you are having trouble with local system resources (performance) or network connectivity. The link covers increasing the timeout value which may solve the problem.
[ ](https://chat.hyperledger.org/channel/composer?msg=SvwNdgXzX9D2WffiM) @PierreHenry - are you running Playground locally? What steps are you taking to cause that error ?
[ ](https://chat.hyperledger.org/channel/composer?msg=xuH8wxoeKYs2sqXQJ) @Pranoti - are you seeing that error in a Docker Container for the REST server? Perhaps you have an old version of the REST Server in a Docker Image? You could very this with the following commands if the container is still running:
```
docker exec -it rest /bin/sh
/home/composer/.npm-global/bin/composer-rest-server -v
exit
```
[ ](https://chat.hyperledger.org/channel/composer?msg=QHgnEejTwBaver5uw) @rthatcher Yes locally. I was running v0.16.0 and somehow reinstalled the thing. It's now v0.19.0. And the default documentation was updated to v0.19.0 in the meantime... anyway, it's a mess. I'm re-installing all the things, put that in a script and hopefully can be more precise if something goes wrong again.
[ ](https://chat.hyperledger.org/channel/composer?msg=QHgnEejTwBaver5uw) @rthatcher Yes locally. I was running v0.16.0 and somehow reinstalled the thing. It's now v0.19.0. And the default documentation was updated to v0.19.0 in the meantime... anyway, it's a mess: I thing I run fabric 1.0 instead of 1.1... I'm re-installing all the things, put that in a script and hopefully can be more precise if something goes wrong again.
[ ](https://chat.hyperledger.org/channel/composer?msg=PoLRAnpcbkQo49WLD) @y2255236 - I would first try this command to verify that the Participant Foobar exists:
` composer network list -c admin@mynetwork -r com.xxx.mynetwork.Person `
The issue you identity command including the quotes and the word 'resource'
` composer identity issue -c admin@mynetwork -u foobar -a "resource:com.xxx.mynetwork.Person#Foobar -c foobar@mynetwork" -f foobar@mynetwork `
Has joined the channel.
Hi Guys! I made a blockhain using hyperledger composer and now i would like to install on the blumix platform but only uploading the bna file is not working. It is unclear how to set it up. Can someone help?
[ ](https://chat.hyperledger.org/channel/composer?msg=XN6Pk3hKwpNdpnji3) @andrisjordan - you could look at this doc for setting up an environment on a Container service on IBM Cloud : https://ibm-blockchain.github.io/ or you could look at 'Starter Plan' from IBM Cloud - but you should probably ask about IBM Cloud in IBM Cloud forum or ticketing system.
Has joined the channel.
Hi Composer folks! Are there any tools to troubleshoot the ACL rules... i.e. I think I have them right but they are not working how I think they should. I need to know if there's a way to "see" what the values in the condition are to compare against what I "think" they are.... worse case write to a log that I can look at. I'll keep searching but if anyone has a clue that they can shoot over, I'd appreciate it.
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
Hi All. I get this error:
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
Hi All. I get this error working on a custom version of byfn:
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
Hi All. I get this error working on a custom version of byfn:
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
Hi All. I get this error working on a custom version of byfn:
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
Hi All. I get this error working on a custom version of byfn:
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
Any ideas?
@Stecec I got into the same issue here.
try to `docker pull hyperledger/fabric-ccenv:x86_64-1.1.0`
then, after execute start command, check if you got any image named `dev-...`
On my environment I run into timeout or had to wait around 8-10 minutes to finished
On my environment, I run into timeout or had to wait around 8-10 minutes to finish
check out this closed issue: https://github.com/hyperledger/composer/issues/1514
I've just ask again for help
is there a way to query all transactions on a deployed network without writing my own custom query? e.g. what is shown in the All Transactions tab in playground.
preferably using the rest server
@Stecec take a look at https://github.com/hyperledger/composer/issues/3731 see if it helps
Has joined the channel.
Thanks @akula and @davidkel , I tried with a longer timeout and now it works. But now I have this error when I try to ping the the composer network:
```
Error: Error trying invoke business network. Error: Peer 192.168.56.111:7051 has rejected transaction '25a97c0d5aa91f7347a124224a04a63852857487e1589893a744f7cf8314ceff' with code ENDORSEMENT_POLICY_FAILURE
Command failed
```
I noticed in the composer playground if you create a model object instance then add a new field you can't see that model object instance anymore. The new field must be marked as optional or provide a default value. Is there any documentation about cto model best practices and data versioning?
@Stecec did you create a channel and peer has joined the orderer?
@Stecec did you create a channel and peer has joined on it?
Did i miss something or doesn't the Hyperledger Composer Playground V0.19 show the logs in the chrome console anymore? :open_mouth:
I didn't get the console.log() anymore.
[ ](https://chat.hyperledger.org/channel/composer?msg=SEycMoEZSPrAq43hp) @akula yes I create it and joined two peers to it
[ ](https://chat.hyperledger.org/channel/composer?msg=SEycMoEZSPrAq43hp) @akula yes I created it and the peers joined it
[ ](https://chat.hyperledger.org/channel/composer?msg=GhgpXzS62sTBQ3DTx) @sstone1 This would be a good feature to have multple query files and multiple ACL files. We have multiple .cto files already with different namespaces and would be nice to create corresponding .qry and .acl files instead of just one giant queries.qry and one giant .acl
What do you guys think? I'm making a support forum for hyperledger http://hyperledgertalk.com
It's still a work in progress
Hi, is it possible to extend the transactions file (in my sample its called logic.js) with thirdparty libs - like a logger lib?
@thoduerr I read somewhere that you can't. That code runs inside as chain code which makes it compartmentalized from the outside world. Someone with more experience might tell me I'm wrong though.
Has joined the channel.
hi everyone, my queries in `composer-rest-server` returns empty array no matter what I do.
The query: `SELECT br.com.synapsetec.Asset WHERE (bundleId == _$bundleId)`
Already tried a simple form: `SELECT br.com.synapsetec.Asset`
But the results: []
Any ideas?
in the composer-playground the asset can be seen
Has joined the channel.
Has joined the channel.
@akula could your composer-playground be running on a different network? are the assets created within composer-rest-server too ?
hello @PaulYeoh, I'm using a local composer-playground and it is working. The composer-rest-server has generate the Apis. I also try to get the query running in javascript, but no success yet
the `assetRegistry.getAll()` brings the asset I'm trying to load. Only query does not
I've submitted an issue for it: https://github.com/hyperledger/composer/issues/3800
Has joined the channel.
@akula :thumbsup: good luck!
Hello, when we create asset or participant in playground, we can see transaction id such entity under all transaction...how can we get such transaction id of asset or participant in composer rest api? Please suggest
Has joined the channel.
In context of hyperledger composer, what are the smart contracts?
Hi friends, I am proposing a solution for Blockchain to our client but, they want to know the benefits or using Hyperledger composer over traditional fabric network setup approach. Actually they want to know about the pros and cons of using composer or fabric network. I tried googling the same but, did not get anything very clear. Can you suggest me some docs from where I can quickly get some knowledge on both the approach and their pros and cons. If any one of you have faced such situation and you have something it would be really great. Thank you so much.
[ ](https://chat.hyperledger.org/channel/composer?msg=5PBzYeDaSFtLxKqwF) @rthatcher Yes i'm seeing that error from docker 'rest' container.. I verified the version, its showing 0.18.1. But how to upgrade these docker containers with version 0.19.0 ?
Can somebody provide an example of posting data from php to rest api ?
@JackStrohm thx
Anyone else?
@All, I am unable to delete a asset from registry , it throws me below error
Clipboard - April 11, 2018 12:28 PM
If i will create using create new asset it is allow me to delete the asset
If I am add the same ID into the registry its giving me that object is already present
[ ](https://chat.hyperledger.org/channel/composer?msg=sNgTKYe2unEBo9nsq) solved it. removed the hyperledger/composer-rest-server docker image.. And downloaded new one. So it worked.. Is there any other way to do it? any other command?
can someone help me out?
Hello, i'm begging with playground but i have this error : "Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.", any idea ?
install business netwrok.png
clear the local storage @Poneey
[ ](https://chat.hyperledger.org/channel/composer?msg=52ohofDnbXTzXRXnP) @Poneey - that error message says that you have an old card from v0.16 of Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=52ohofDnbXTzXRXnP) @Poneey - that error message says that you have an old card from v0.16 of Composer. It is probably easiest to delete the card and start with a new Business Network.
[ ](https://chat.hyperledger.org/channel/composer?msg=YBPwBgvLFGRSN8q7a) @ShereenSallam is your Fabric started ? You can use `docker ps` to see if it is. (If you are just starting, I assume you are using Composer v0.19.0 and Fabric 1.1 GA.)
[ ](https://chat.hyperledger.org/channel/composer?msg=d48RCWhtj5dh5BFnp) @TomWeiss - at the moment it is not possible to include of depend on external packages in a Transaction function. There is an 'Improvement Proposal' for this to be added to Composer: https://github.com/hyperledger/composer/issues/3169 - Feel free to respond to it with a 'like' or details of your requirement.
[ ](https://chat.hyperledger.org/channel/composer?msg=tLHXfZgDRMEbL4vbn) @Pranoti - Deleting the Image and re-creating the Container was the correct option. (Because your Wallets are stored in MongoDb, and your real data is on the Fabric - you have simple upgraded the REST server with no loss of data :-) )
[ ](https://chat.hyperledger.org/channel/composer?msg=GQt96aW9o4oMHdJDC) @rthatcher yes, my fabric is started
@suva - see https://stackoverflow.com/questions/46926804/object-with-id-assetid5326-in-collection-with-id-assetorg-acme-mynetwork-se
@mahoney1.Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=vmdF7rRht9f3wbSB6) @rthatcher Okay!! great then, :thumbsup: :relaxed:
[ ](https://chat.hyperledger.org/channel/composer?msg=FFnG7BezzwqZf4jS5) @d8bhatta - you can find each Transaction including system transactions under ` /system/historian ` for the detail of a transaction you can request a ` GET ` against the transaction, and using `{"include":"resolve"}` in the filter will give all details of the transaction.
Has joined the channel.
Hello I am new to composer. Just read about "concepts" and wanted to ask if there is any problem if we declare concept as an asset. For example it is given that address is a concept. Will it be okay if we declare it as an asset? If yes, can someone please explain in a little bit depth what exactly is the criterion for classifying something as a concept
[ ](https://chat.hyperledger.org/channel/composer?msg=xSETJdep9Wzmg3Myk) @rthatcher So, Re-installed all the things from scratch, taking care of destroying any previous data, namely: `~/.composer` and taking down any docker container, deleting them whenever necessary.
I followed the instructions from the documentation website and tried to launch the playground.
The playground web app is working so I added a basic network.
Then I try to connect:
[ ](https://chat.hyperledger.org/channel/composer?msg=xSETJdep9Wzmg3Myk) @rthatcher So, Re-installed all the things from scratch, taking care of destroying any previous data, namely: `~/.composer` and taking down any docker container, deleting them whenever necessary.
I followed the instructions from the documentation website and tried to launch the playground.
The playground web app is working so I added a basic network.
Then I try to connect:
and get the error message:
`Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]`
[ ](https://chat.hyperledger.org/channel/composer?msg=tGh7TgEo6ubA2PMKx)
``
[ ](https://chat.hyperledger.org/channel/composer?msg=tGh7TgEo6ubA2PMKx)
`info: [Hyperledger-Composer] undefined:ConnectionProfileManager :getConnectionManagerByTyp Looking up a connection manager for type 0=hlfv1
error: [Hyperledger-Composer] undefined:HLFConnection :enroll() Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
at caClient.enroll.then.then.then.then.catch (/home/nomos/.nvm/versions/node/v8.11.1/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:218:34)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=xc3wqyKmWedNaWKkK) @anshulkathuria34 - a Concept has no IDentified so it can't be declared as an Asset. It is more a re-useable subcomponent that you might include in lots of Assets. For example you might include an Address Concept in both a Customer asset and a Supplier asset.
[ ](https://chat.hyperledger.org/channel/composer?msg=Qo4CeR9SjWGmTZ3o8) @rthatcher Thanks for the explanation!
@PierreHenry - Are you running the standard Development Fabric, or a Custom Fabric?
(I assume that all composer components are at v0.19.0 `npm ls -g -depth=0`)
(I assume you have Fabric v1.1 GA - `docker ps`)
Can you check your CA container log for errors `docker logs ` docker logs ca.org1.example.com `
@PierreHenry - Are you running the standard Development Fabric, or a Custom Fabric?
(I assume that all composer components are at v0.19.0 `npm ls -g -depth=0`)
(I assume you have Fabric v1.1 GA - `docker ps`)
Can you check your CA container log for errors ` docker logs ca.org1.example.com `
@PierreHenry - when you are deploying the new network - what are you specifying as the Enrollment ID and Enrollment Secret ? These should be admin and adminpw for the default Development Fabric - (or if you have a Custom Network they should be for an ID you have already created in the CA)
@PierreHenry - when you are deploying the new network - what are you specifying as the Enrollment ID and Enrollment Secret ? These should be *admin* and *adminpw* for the default Development Fabric - (or if you have a Custom Network they should be for an ID you have already created in the CA)
[ ](https://chat.hyperledger.org/channel/composer?msg=pTJwspHDe9NHHZx7x) @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=pTJwspHDe9NHHZx7x) @rthatcher
I'll try that, I've input user_id and user_pwd instead of what you suggested. Thx for the reply!
[ ](https://chat.hyperledger.org/channel/composer?msg=RMRJYZDvTu8neMwLt) Good Catch! That was the problem. I created a 2 new BN and used Enrollment ID with user: admin and pwd: adminpwd and it connected just fine. Please, let me know If I missed something in the documentation or that the documentation is missing something. AFAIK, the choice between Enrollment ID and Enrollment Secret does not exist in the doc.
[ ](https://chat.hyperledger.org/channel/composer?msg=RMRJYZDvTu8neMwLt) Good Catch! That was the problem. I created a 2 new BN and used Enrollment ID with user: admin and pwd: adminpwd and it connected just fine. Please, let me know If I missed something in the documentation or that the documentation is missing something. AFAIK, the choice between Enrollment ID and Enrollment Secret does not exist in the doc.
Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=GQt96aW9o4oMHdJDC) @rthatcher the fabric is up and the versions are as assumed
hey, I have one question.. We fire sed command to change the localhost addresses to the docker host-names in the connection.json file of the rest admin as its in the another "docker container". But I didn't get this. Why we need to do that? [referring this one https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest]
As we create blockachin network with peers and orderer, CA. These are also in different docker containers so why we didn't change the localhost addresses to the docker hostnames?
Upon running the command i am getting the following error! "readlink /var/lib/docker/overlay2/l : invalid arguement"
Can someone please help me provide a solution for this?
can we read external service as an xml format in transaction function?
if yes how , if any reference link then plz share with me
[ ](https://chat.hyperledger.org/channel/composer?msg=TxnaPgP7Gr8id58XS) @Pranoti because Docker needs to be able to resolve the container names from within the persistent REST server container
[ ](https://chat.hyperledger.org/channel/composer?msg=jTWiJBjy2BTiJyLFs) @anshulkathuria34 not enough info and its really a docker issue not a composer issue try https://github.com/docker/for-mac/issues/1396 or google can help
@suva yes, use request.get and use something like xml2json to convert etc
@suva yes, use `request.get` and use something like xml2json to convert etc
[ ](https://chat.hyperledger.org/channel/composer?msg=4E5EvwAH9KGBoqxWG) @mahoney1 yes but still not clear. Peers and orderer, CA are also on different containers that time we don't change the addresses.. why? and why here we change the address..
[ ](https://chat.hyperledger.org/channel/composer?msg=4E5EvwAH9KGBoqxWG) @mahoney1 yes but still not clear. Peers and orderer, CA are also on different containers that time we don't change the addresses.. why? and why here we change the address.. can you please elaborate in detail ..
Has joined the channel.
Pranoti - as above, for the BN card used to start the rest server in a container, also see also item 2 for insights https://stackoverflow.com/questions/47804516/hyperledger-composer-cannot-connect-with-dockerized-node-js-app
Is there any sort of limitation to dynamic channels? I wish to create 1 dedicated channel for each partner that signs up and the partner number can scale exponentially. I need a separate channel as each partner would not like his/her data to be visible to others but would like to access user data associated to his/her services. Since users would be peers so they can spread across each channel without the access to partner data. Here is how I have designed the channels:
-- One channel with orgs User and Us
-- Separate channels for each partner with orgs as Us and the Parther
Is this the right way to architect the solution? All in one network? Or will a two network ( one having us, user, partner and the other having us and partners with each partner in a separate channel) multi channel solution would be needed?
Has joined the channel.
Hey how can we get /system/historian using rest api?
in composer playground, when asset is created, transaction id is created if we click 'All Transaction', I want to get same transaction id in rest api as well when asset/participant is created. is is possible?
To get all the same details in the REST server as you see in Playground you need to write a Query - similar to this:
```
query a1 {
description: "Select Add Participants"
statement:
SELECT org.hyperledger.composer.system.AddParticipant
}
```
@sagargarg design of your channels / who uses which ledger is really a question for #fabric - perhaps you should ask there or better still create a Stack Overflow with your scenario. Composer uses connection profiles to know: which channel/ledger to connect to on the Fabric network, and uses business network cards (that include the connection profile) to connect to the business network (ie including the data relating to that business network) deployed on that ledger. Each channel has its own ledger (privacy).
Has joined the channel.
There was a very useful functionality in the playground prior to the v0.19.0 release : "replace". I dropped the .bna and then the state of the channel (I guess it's the correct term) was reset. How to do this now?
There was a very useful functionality in the playground (local deployment) prior to the v0.19.0 release : "replace". I dropped the .bna and then the state of the channel (I guess it's the correct term) was reset. How to do this now?
There was a very useful functionality in the playground (local deployment) prior to the v0.19.0 release : "replace". I dropped the .bna and then the state of the channel (I guess it's the correct term) was reset. How to do this now?
(All of the previous transactions where wiped out and I could do my "setup_demo" again).
Hello, I'm having some issues pinging a connection to a Fabric CA that is protected by HTTPS behind an NGINX ingress. While everything works well when the CA server is behind HTTP (still using the NGINX ingress), when I implement an HTTPS production certificate (e.g. using Let's Encrypt), the connection refuses to ping:
I'm still able to access the CA server with curl:
```
curl https://example.com:443/api/v1/cainfo
{"result":{"CAName":"ca.org1.example.com","CAChain":"LS0tLS1CRUdJTiBDRV[...]==","Version":"1.1.0"}
,"errors":[],"messages":[],"success":true}%
```
But I can't ping the network
```
$ composer network ping --card admin@tutorial-network
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: unable to get issuer certificate]
```
Has anyone come across this problem and how can one solve it?
[ ](https://chat.hyperledger.org/channel/composer?msg=YcCCByY8g2uTjhLai) @alexvicegrab - what do you have in your `connection.json` file (for the admin card) in the certificateAuthorities section?
I have tried a bunch of things. Before I had something like:
```
{\"url\": \"http://example.com:80\", \"caName\": \"ca.org1.example.com\"}}
```
and this worked perfectly when Fabric CA server was not using HTTPS, but HTTP.
I tried adding the Certificate of the TLS as well like this:
```
"tlsCACerts": {"pem": "-----BEGIN CERTIFICATE-----\nMIIGET[...]-----END CERTIFICATE-----"}
```
And this did not help.
I have tried a bunch of things. Before I had something like:
```
{\"url\": \"https://example.com:443\", \"caName\": \"ca.org1.example.com\"}}
```
and this worked perfectly when Fabric CA server was not using HTTPS, but HTTP:
```
{\"url\": \"http://example.com:80\", \"caName\": \"ca.org1.example.com\"}}
```
I tried adding the Certificate of the TLS as well like this:
```
"tlsCACerts": {"pem": "-----BEGIN CERTIFICATE-----\nMIIGET[...]-----END CERTIFICATE-----"}
```
And this did not help.
I have tried a bunch of things. Before I had something like this in the CA section:
```
{\"url\": \"https://example.com:443\", \"caName\": \"ca.org1.example.com\"}}
```
and this worked perfectly when Fabric CA server was not using HTTPS, but HTTP:
```
{\"url\": \"http://example.com:80\", \"caName\": \"ca.org1.example.com\"}}
```
I tried adding the Certificate of the TLS as well like this:
```
"tlsCACerts": {"pem": "-----BEGIN CERTIFICATE-----\nMIIGET[...]-----END CERTIFICATE-----"}
```
And this did not help.
I have tried a bunch of things. Before I had something like this in the CA section:
```
{\"url\": \"https://example.com:443\", \"caName\": \"ca.org1.example.com\"}}
```
and this worked perfectly when Fabric CA server was not using HTTPS, but HTTP:
```
{\"url\": \"http://example.com:80\", \"caName\": \"ca.org1.example.com\"}}
```
I tried adding the Certificate of the TLS as well like this:
```
"tlsCACerts": {"pem": "-----BEGIN CERTIFICATE-----\nMIIGET[...]-----END CERTIFICATE-----"}
```
And this did not help.
I have tried a bunch of things (enabling TLS on the Fabric CA side with FABRIC_CA_SERVER_TLS_ENABLED actually broke the curl command). Before I had something like this in the CA section:
```
{\"url\": \"https://example.com:443\", \"caName\": \"ca.org1.example.com\"}}
```
and this worked perfectly when Fabric CA server was not using HTTPS, but HTTP:
```
{\"url\": \"http://example.com:80\", \"caName\": \"ca.org1.example.com\"}}
```
I tried adding the Certificate of the TLS as well like this:
```
"tlsCACerts": {"pem": "-----BEGIN CERTIFICATE-----\nMIIGET[...]-----END CERTIFICATE-----"}
```
And this did not help.
I have tried a bunch of things (enabling TLS on the Fabric CA side with FABRIC_CA_SERVER_TLS_ENABLED=true actually broke the curl command, so this is instead set to false). Before I had something like this in the CA section:
```
{\"url\": \"https://example.com:443\", \"caName\": \"ca.org1.example.com\"}}
```
and this worked perfectly when Fabric CA server was not using HTTPS, but HTTP:
```
{\"url\": \"http://example.com:80\", \"caName\": \"ca.org1.example.com\"}}
```
I tried adding the Certificate of the TLS as well like this:
```
"tlsCACerts": {"pem": "-----BEGIN CERTIFICATE-----\nMIIGET[...]-----END CERTIFICATE-----"}
```
And this did not help.
I have tried a bunch of things (e.g. enabling TLS on the Fabric CA side with `FABRIC_CA_SERVER_TLS_ENABLED=true` actually broke the curl command, so this is instead set to `false`). Before I had something like this in the CA section:
```
{\"url\": \"https://example.com:443\", \"caName\": \"ca.org1.example.com\"}}
```
and this worked perfectly when Fabric CA server was not using HTTPS, but HTTP:
```
{\"url\": \"http://example.com:80\", \"caName\": \"ca.org1.example.com\"}}
```
I tried adding the Certificate of the TLS as well like this:
```
"tlsCACerts": {"pem": "-----BEGIN CERTIFICATE-----\nMIIGET[...]-----END CERTIFICATE-----"}
```
And this did not help.
I have tried a bunch of things (e.g. enabling TLS on the Fabric CA side with `FABRIC_CA_SERVER_TLS_ENABLED=true` actually broke the curl command, so this is instead set to `false`). Before I had something like this in the CA section:
```
{\"url\": \"https://example.com:443\", \"caName\": \"ca.org1.example.com\"}}
```
and this worked perfectly when Fabric CA server was not using HTTPS, but HTTP:
```
{\"url\": \"http://example.com:80\", \"caName\": \"ca.org1.example.com\"}}
```
I tried adding the Certificate of the TLS as well like this:
```
"tlsCACerts": {"pem": "-----BEGIN CERTIFICATE-----\nMIIGET[...]-----END CERTIFICATE-----"}
```
And this also did not help.
The development cycle is probably somewhere past the 10x slower now with the v0.19.0 release wrt the v0.16.0 release...
The reason seems to be the time it takes to upgrade a business network.
The dev cycle being: update .cto | .js | .acl, test transactions, reset the state of the blockchain, goto beginning.
The development cycle is probably somewhere past the 10x slower mark now with the v0.19.0 release wrt the v0.16.0 release...
The reason seems to be the time it takes to upgrade a business network.
The dev cycle being: update .cto | .js | .acl, test transactions, reset the state of the blockchain, goto beginning.
The development cycle is probably somewhere past the 10x slower mark now with the v0.19.0 release of the playground wrt the v0.16.0 release...
The reason seems to be the time it takes to upgrade a business network.
The dev cycle being: update .cto | .js | .acl, test transactions, reset the state of the blockchain, goto beginning.
The development cycle is probably somewhere past the 10x slower mark now with the v0.19.0 release of the playground wrt the v0.16.0 release...
The reason seems to be the time it takes to upgrade a business network.
The dev cycle being: update .cto | .js | .acl, test transactions, reset the state of the blockchain, goto beginning.
If anyone has an idea of how to shorten this, I take it :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=AB2RiXjPRGpWFs598) @alexvicegrab - it might be the fact that the certificate used by HTTPS is from ca.org1.example.com, but the address you are using is example.com . You could try this:
```
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "https://localhost:7054",
"caName": "ca-org1",
"httpOptions": {
"verify": false
}
}
```
Which disables the verification of the certificate, or you could put the full ca address in your 'dns/hosts file' and use that instead of example.com
[ ](https://chat.hyperledger.org/channel/composer?msg=AB2RiXjPRGpWFs598) @alexvicegrab - it might be the fact that the certificate used by HTTPS is from ca.org1.example.com, but the address you are using is example.com . You could try something like this:
```
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "https://localhost:7054",
"caName": "ca-org1",
"httpOptions": {
"verify": false
}
}
```
Which disables the verification of the certificate, or you could put the full ca address in your 'dns/hosts file' and use that instead of example.com
@rthatcher, thank you, I will first try "verify": false, and get back to you.
@rthatcher, thank you, I will first try `"verify": false`, and get back to you.
Thanks, the `"httpOptions": {"verify": false}` helps, I will check if fixing the CA domain name to the correct one helps.
Hello, does composer-playground save network definition somewhere ? (.cto, .acl ...)
Because i have this error "t: Participant 'org.acme.vaccinesspace.Parent#0914@' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#vaccines-network@0.0.2-deploy.8'" so I can't modify file (permissions rules ...) ..
Hi guys. Does anyone know if an asset is changed through a transaction (ie change of owner) it also gets recorded as an asset update?
hi everyone, my queries in `composer-rest-server` returns empty array no matter what I do.
The query: `SELECT br.com.synapsetec.Asset WHERE (bundleId == _$bundleId)`
Already tried a simple form: `SELECT br.com.synapsetec.Asset`
But the results: []
Any ideas?
in the composer-playground the asset can be seen
[ ](https://chat.hyperledger.org/channel/composer?msg=cXaqgdre2uB73gcBX) @Poneey connect / switch to admin and export ?
[ ](https://chat.hyperledger.org/channel/composer?msg=piXjTt5KjoRDzX7ui) @JoshuaRippon yes. In Historian (eg, see Playground) you can see the Transaction created (eg PayVendor) - then click on view record to see the transactional changes to the asset - that is a view into the ledger.
@mahoney1 Cheers. However it looks like changes to an asset can only have one transaction type. I want to track ALL changes to that asset. I want to see every time a particular asset has been changed, whether that be through an add, trade or update transaction
akula - are you using the same user or different to that in Playground, ACLs ?
Do I have to write a separate query for each of the different transaction types in that case?
@mahoney1 No, i made a mistake and i deleted one rule in my project and now i can't access at my network because participant don't have autorisation .. So i'm looking for a solution to re-add this rule..
@JoshuaRippon on Q2: - currently an issue open for finding history of a specific asset - see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks (item 6, 7 in table) on transactions. You can have more than one transaction class that updates an asset (if that's what you chose to do eg. for different reasons)
@mahoney1 Ok so if I have multiple transactions updating the class, I have to query all those transaction classes to find all the modifications?
[ ](https://chat.hyperledger.org/channel/composer?msg=sLCMWPM4eTWPdSnSa) @JoshuaRippon you would yes, as things stand. You could run the queries in a TP function (and call that) to process / sort the results if you need to collate, just a thought.
@mahoney1 ok cheers. Couldn't this issue be addressed if the transaction details were actually recorded in the historian? That one you could do one query on the historian and get back everything you need!
Seriously Hyperledger developers/coders/writers, I think you really need eyes :
https://hyperledger.github.io/composer/latest/business-network/bnd-deploy
1) In this tuto, two commands doesn't use the same CardName. One is `...@fabric-network`, the other one is `...@Fabric-network`
2) The version of the tutorial is not 1.0.0. IT'S `0.0.1` !!!!!!!
Has joined the channel.
And why do I need to add `-o npmrcFile=mynpmrcfile` ?
Moreover, I think, in this cmd, we need to use the PeerAdmin@hlfv1 card.
I am open for answer.
[ ](https://chat.hyperledger.org/channel/composer?msg=PWS3eKrDdeRe3jFGB) @JoshuaRippon I think it's possible to push a PR for the website here: [github:composer-website](https://github.com/hyperledger/composer/tree/master/packages/composer-website)
[ ](https://chat.hyperledger.org/channel/composer?msg=PWS3eKrDdeRe3jFGB) @JoshuaRippon
[ ](https://chat.hyperledger.org/channel/composer?msg=MQ4DQCkGAMDvEiTHz) @CorentinPacaud I think it's possible to push a PR for the website here: [github:composer-website](https://github.com/hyperledger/composer/tree/master/packages/composer-website)
Has joined the channel.
@PierreHenry , Sorry but I think it's not my job as an IT worker of 4 years XP to correct the code of a +20 years XP IBM/Intel developers
My company is not paid by Intel/IBM
[ ](https://chat.hyperledger.org/channel/composer?msg=hCtzzn7z3yAoSwtZh) @CorentinPacaud Ok... but anyways, thx for message : pitfall less !
[ ](https://chat.hyperledger.org/channel/composer?msg=hCtzzn7z3yAoSwtZh) @CorentinPacaud Ok... but anyways, thx for message : one pitfall less !
Hello, I am trying to setup a Fabric environment to deploy a .bna built on composer.
To do so I have followed this tutorial https://github.com/CATechnologies/blockchain-tutorials/wiki/Tutorial:-Hyperledger-Fabric-v1.1-–-Create-a-Development-Business-Network-on-zLinux. What it says is :
1) Generate certificates for peers and orderers using cryptogen
2) Generate a channel and the associated channel.tx, genesis block and anchor peers using configtxgen
3) Define the docker-compose-cli, docker-compose-base and peer-base files
4) Start the network using the command CHANNEL_NAME=$CHANNEL_NAME docker-compose -f docker-compose-cli.yaml up -d
5) Make peers join the channel
This instantiates X peers + Y orderers + 1 CLI containers. When I try to follow the official Composer tutorial about how to deploy the bna to a fabric network https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org, when I get to the step 7 and try to install the bna with the command composer network install -c PeerAdmin@fabric-network -a tutorial-network@0.0.1.bna.
I get the following error "Error: No valid responses from any peers.Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed" Any Idea where this comes from ? I am doing this installation on a single Ubuntu machine. I did not use the ./startFabric.sh script because I thought it was only a sort of minimal Fabric environment built only for Composer playground purpose
@omarqr what does `docker ps` say ?
It says I have 3 peers, 1 orderer and 1 CLI running
and CA and couchDB .
and CA and couchDB ?
[ ](https://chat.hyperledger.org/channel/composer?msg=FxXgmmLGwLndbigcc) @CorentinPacaud No they are not mentionned anywhere in the tutorial, nor on the official one, I found it odd also
You need one CouchDB for each Peer. and at least 1 CA in general
I think you should start with the startFabric.sh in the fabric-tools folder
Any idea about how to configure them and how to start them ?
[ ](https://chat.hyperledger.org/channel/composer?msg=PWS3eKrDdeRe3jFGB) @JoshuaRippon Historian already has a relationship to the `transactionInvoked) via its transaction ID. One means would be to add metadata into the HistorianRecord to capture the IDs of the assets (or participants) that were impacted by the transaction along with the operation performed (delete, update, create, read). Once that is in place you will be able to query the HistorianRecord for that given asset/participant id.
[ ](https://chat.hyperledger.org/channel/composer?msg=PWS3eKrDdeRe3jFGB) @JoshuaRippon Historian already has a relationship to the `transactionInvoked` via its transaction ID. One means would be to add metadata into the HistorianRecord to capture the IDs of the assets (or participants) that were impacted by the transaction along with the operation performed (delete, update, create, read). Once that is in place you will be able to query the HistorianRecord for that given asset/participant id.
So you think the execution of this script is mandatory even if I want to configure my own setup for Fabric ? Because the script startFabric also starts a Peer node and an orderer
@omarqr Did you set correctly your docker-compose.yaml ?
I think no
Do you have any example for the content of the docker-compose.yaml please ?
I have one file called docker-compose-cli.yaml but it doesn't mention couchDB nor one CA
@omarqr from what I'e read your custom, 3 Org Fabric tutorial is ....multi-org. The Composer doc link you posted is for single-org - for a Development Fabric setup - you would be better comparing what you need to do by equivalence with the multi-org tutorial -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org (it also has a link to the relevant Fabric BYFN info from Fabric)
@omarqr from what I've read your custom, 3 Org Fabric tutorial is ....multi-org. The Composer doc link you posted is for single-org - for a Development Fabric setup - you would be better comparing what you need to do by equivalence with the multi-org tutorial -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org (it also has a link to the relevant Fabric BYFN info from Fabric)
@omarqr from what I've read - your custom, 3 Org Fabric tutorial is ....multi-org. The Composer doc link you posted is for single-org - for a Development Fabric setup - you would be better comparing what you need to do by equivalence with the multi-org tutorial -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org (it also has a link to the relevant Fabric BYFN info from Fabric)
Yes sorry I forgot to say I adapted it to fit my use case wich is one org with 3 peers
Hi all, I'm trying to start composer with two orderers, but I get this error:
```
⠹ Starting business network definition. This may take a minute...E0411 16:51:07.372354037 14608 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: SERVICE_UNAVAILABLE
Command failed
```
Any ideas?
Hi Folks , I am an Phd Candidate in www.nitrr.ac.in my Linkedind Profile is https://www.linkedin.com/in/eramitg/ for sake of earning an Phd Degree i was proposed Blockchain Technology research work area to my guide so oom I request all of you gyus ,please guide me and assign me some research oriented task so that we mutullay benifited research related to Hyperledger Umbrella Project , All of you feel free to catch me on twitter or skype to https://twitter.com/eramitg1 or amitg.iitb skype id also in Zoom to in Zoom ID 3649222703 or whatsapp +917773011100 Regards
[ ](https://chat.hyperledger.org/channel/composer?msg=GKEmyGaGaFTF2o3uk) @Stecec - I would think you have a mismatch between the certificates used on your containers and those specified in your connection.json file. You could try working with TLS disabled on the Fabric containers as a simplified test.
[ ](https://chat.hyperledger.org/channel/composer?msg=GCTk5PspCqbAfyqMp) @eramitg - Welcome :-) - Can I suggest you post the same in the #composer-contributors channel
ok sir
Hi @rthatcher, thanks for your help earlier, I've updated the Fabric CA to use my host:
```
"certificateAuthorities": {
"example.com": {
"url": "https://example.com:7054",
"caName": "example.com",
"httpOptions": {
"verify": false
}
}
```
And I updated the FABRIC_CA_SERVER_CA_NAME to "example.com" before starting the CA server.
and things work fine when I have `"httpOptions": {"verify": false}`, but I have the same error when I revert to `"httpOptions": {"verify": true}`.
The issue appears already when I import the card of my network:
```
composer card import --file admin@tutorial-network.card
```
When I have `"verify": false`, the CA logs:
```
2018/04/11 15:05:02 [DEBUG] Received request for /api/v1/enroll
2018/04/11 15:05:02 [DEBUG] ca.Config: &{Version:1.1.0 Cfg:{Identities:{AllowRemove:false} Affiliations:{AllowRemove:false}} CA:{Name:ca-dev.sashatest.tk Keyfile:/shared/crypto-config/peerOrganizations/org1.example.com/ca/key.pem Certfile:/shared/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem Chainfile:/shared/fabric-ca/server/ca-chain.pem} Signing:0xc4202de670 CSR:{CN:ca.org1.example.com Names:[{C:US ST:North Carolina L: O:Hyperledger OU:Fabric SerialNumber:}] Hosts:[dapper-bobcat-hl-network-ca-68f96c9664-8fns7 localhost] KeyRequest:
Hi @rthatcher, thanks for your help earlier, I've updated the Fabric CA to use my host:
```
"certificateAuthorities": {
"example.com": {
"url": "https://example.com:7054",
"caName": "example.com",
"httpOptions": {
"verify": false
}
}
```
And I updated the FABRIC_CA_SERVER_CA_NAME to "example.com" before starting the CA server.
and things work fine when I have `"httpOptions": {"verify": false}`, but I have the same error when I revert to `"httpOptions": {"verify": true}`.
The issue appears already when I import the card of my network:
```
composer card import --file admin@tutorial-network.card
```
When I have `"verify": false`, the CA logs:
```
2018/04/11 15:05:02 [DEBUG] Received request for /api/v1/enroll
2018/04/11 15:05:02 [DEBUG] ca.Config: &{Version:1.1.0 Cfg:{Identities:{AllowRemove:false} Affiliations:{AllowRemove:false}} CA:{Name:example.com Keyfile:/shared/crypto-config/peerOrganizations/org1.example.com/ca/key.pem Certfile:/shared/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem Chainfile:/shared/fabric-ca/server/ca-chain.pem} Signing:0xc4202de670 CSR:{CN:ca.org1.example.com Names:[{C:US ST:North Carolina L: O:Hyperledger OU:Fabric SerialNumber:}] Hosts:[dapper-bobcat-hl-network-ca-68f96c9664-8fns7 localhost] KeyRequest:
@alexvicegrab - I would think that your client (composer CLI commands) is going to a resource "example.com" but is being provided with a certificate from "ca.org1example.com". If this is the case you should use "ca.org1.example.com" in all references to CA in the connection.json file.
The TLS certificate is actually issued using Let's Encrypt, and in the name of "example.com"
The TLS certificate is actually issued using Let's Encrypt, and in the name of "example.com". I can PM you with details of the actual website, to show you how it looks
The TLS certificate is actually issued using Let's Encrypt, and in the name of "example.com", and the connection.json has references only to "example.com", not to "ca.org1.example.com". I can PM you with details of the actual website, to show you how it looks
@mahoney1 I'm using the same card with the same user
guys how do i create archive file for the sample tutorial- network as hyperledger is showing incorrect command when i run this "composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna"
guys, I am new to Hyperledger and composer, I was able to install composer on Windows 7, using a Ubuntu Docker image. My question is: is it possible to install composer on Windows 7 or 10? If it is, do we have a document?
@kkermanizadeh Unfortunately we don't support windows at the moment.
@harcmed composer network install requires composer 0.19 or higher. You may have installed an older version.
@alexvicegrab Is it failing because there is no trust chain and so the tls certificate you have cannot be trusted ? Don't know much about Let's encrypt so don't know if they are part of a well known trust chain.
@alexvicegrab Is it failing because there is no trust chain and so the tls certificate you have cannot be trusted ? Don't know much about Let's encrypt so don't know if they are part of a well known trust chain and so verification fails.
[ ](https://chat.hyperledger.org/channel/composer?msg=E7GvMKS2xtoYgiT9P) @rthatcher Disabling TLS I get this error:
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=E7GvMKS2xtoYgiT9P) @rthatcher Disabling TLS I get this error:
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Command failed
```
I forgot to write that I'm working with nodes on multiple virtual machines
[ ](https://chat.hyperledger.org/channel/composer?msg=E7GvMKS2xtoYgiT9P) @rthatcher Disabling TLS I get this error:
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Command failed
```
Also I forgot to write that I'm working with nodes on multiple virtual machines.
[ ](https://chat.hyperledger.org/channel/composer?msg=E7GvMKS2xtoYgiT9P) @rthatcher Disabling TLS I get this error:
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Command failed
```
I Also forgot to write that I'm working with nodes on multiple virtual machines.
[ ](https://chat.hyperledger.org/channel/composer?msg=E7GvMKS2xtoYgiT9P) @rthatcher Disabling TLS I get the same error, but without this line:
```
E0411 16:51:07.372354037 14608 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
```
I Also forgot to write that I'm working with nodes on multiple virtual machines.
@davidkel, well, the TLS certificate is valid when accessing the Fabric CA API via a browser. Since the Fabric CA is behind an NGINX proxy, I set the `FABRIC_CA_SERVER_TLS_ENABLED` to `false`. Using curl to access the Fabric CA API works fine (e.g. to check the `cainfo`), and I don't need to use the `-k` flag. Somehow it looks like the issue is more on the composer side, since the Fabric CA does not even register that there was an attempt to `enroll` if I set:
```
"certificateAuthorities": {
"example.com": {
"url": "https://example.com:7054",
"caName": "example.com",
"httpOptions": {
"verify": true
}
}
```
in the `connection.json`. And the composer CLI does not throw any kind of error or log when I import the network card for the network. But it registers the `enroll` action if "verify" is set to `false` when I import the network card.
@alexvicegrab If no TLS connection can be established then I don't think anything will appear in the logs.
@alexvicegrab If no TLS connection can be established then I don't think anything will appear in the logs. With verify set to false, you still use tls because the handshake completes and a connection is established. With verify set to true, then it will verify the cert from the CA first that the hostname in the cert (or the altNames in the cert) matches where the request is going to, then it needs to check the trust chain. Composer doesn't do this, it's all handled by the fabric node-sdk (who own the connection profile spec).
I'm assuming from previous discussions that you have ruled out the hostname verification of the certificate, so the next possibility is the trust chain.
@davidkel, thanks for the reply. I guess then the best way of checking this would be via the fabric node-sdk, attempting to connect using the connection.json (both using verify - false/true) and see what is logged on that end when the connection fails?
@alexvicegrab As you have proved, verify set to false works. It's a case of verify set to true that fails. As for logging it depends on the NGINX logs for the server side, for the client side because this is low level stuff down in node, you would have to look at how to get node.js debugging turned on. I had a quick look on the let's encrypt website and don't see node.js listed as compatible or incompatible. I can only find references to server side node.js and not client side node.js when using let's encrypt. Node.js defines the set of trusted root certs and it is possible that the one required to allow let's encrypt is not included in that list
the fabric node-sdk doesn't document the option, but you can replace the list of trusted roots completely with your own set through the
```
"httpOptions": {
"trustedRoots": ["pem encoded cert", "pem encoded cert", ...]
}
```
but I have never tried it.
the fabric node-sdk doesn't document the option, but you can replace the list of node.js trusted roots completely with your own set through the
```
"httpOptions": {
"trustedRoots": ["pem encoded cert", "pem encoded cert", ...]
}
```
but I have never tried it.
I found your original error message and that makes me think it's even more likely to be a trust chain problem.
Thank you @davidkel, that makes a lot more sense now. I'll save your suggestions and have a look later at the node-sdk and the "trustedRoots" option. Simlarly it's a good idea to check the logs of the ingress, which I will do with a clearer head and on a clear deployment :)
Curiosity won and I checked the ingress controller. I did first a curl, and then an attempt to create the network, import the card (which creates the enroll action) and ping the network.
The logs from the ingress only show the curl:
```
10.240.0.5 - [10.240.0.5] - - [11/Apr/2018:21:02:02 +0000] "GET /api/v1/cainfo HTTP/1.1" 200 1260 "-" "curl/7.55.1" 96 0.103 [default-riotous-mouse-hl-network-ca-http] 10.244.1.68:7054 1260 0.103 200
```
but nothing after. I guess I will need to dive into the node-SDK :) Good night and thanks again!
@alexvicegrab guess the server side only shows a valid connection and doesn't go into low level TLS handshaking maybe ?
Not sure, here's some other logs mentioning TLS handshakes:
```
2018/04/11 20:17:20 [crit] 11450#11450: *666683 SSL_do_handshake() failed (SSL: error:1417D18C:SSL routines:tls_process_client_hello:version too low) while SSL handshaking, client: 10.244.1.1, server: 0.0.0.0:443
```
```
2018/04/11 15:21:20 [error] 10904#10904: connect() to [2a02:26f0:6b::5f64:60e8]:80 failed (101: Network is unreachable) while requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, peer: [2a02:26f0:6b::5f64:60e8]:80, certificate: "/ingress-controller/ssl/default-hl-network-ca--tls.pem"
```
```
2018/04/10 16:15:34 [crit] 4508#4508: *527476 SSL_do_handshake() failed (SSL: error:1417D102:SSL routines:tls_process_client_hello:unsupported protocol) while SSL handshaking, client: 10.240.0.5, server: 0.0.0.0:443
```
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi can anyone guide me how to create PeerAdmin@hlfv11
by default i am getting only peerAdmin@hlfv1
[ ](https://chat.hyperledger.org/channel/composer?msg=9Wrq7GYs3YbjoEFY3) @mahoney1 Haven't got a solution on the #fabric channel either
but while installing composer its using fabric version hlfv11.
because of that i am getting error while starting the netwrok
Hello guys,
I am making a composer-wallet for MongoDB (the goal is the share it with the community), it is inspired from composer-wallet-redis. All tests pass correctly, I can add, remove a card and send transactions.
I only have one issue with `composer card list`
```
$ composer card list
Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html
Command failed
```
Any idea where it can comes from?
Hello guys,
I am making a composer-wallet for MongoDB (the goal is the share it with the community), it is inspired from composer-wallet-redis. All tests pass correctly, I can add, remove a card and send transactions.
I only have one issue with `composer card list`
```
$ composer card list
Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html
Command failed
```
Any idea where it can come from?
@Shaan9888 Our fabric-dev-servers package doesn't create a card called PeerAdmin@hlfv11 it will always create one called PeerAdmin@hlfv1. The `hlfv1` comes from the name of the connection profile it generates. We plan to change this as well as the PeerAdmin name to avoid the confusion it sometime's causes such as this, see https://github.com/hyperledger/composer/issues/3801
@Shaan9888 Our fabric-dev-servers package doesn't create a card called `PeerAdmin@hlfv11` it will always create one called `PeerAdmin@hlfv1` irrespective of the version of fabric specified in `FABRIC_VERSION` environment variable. The `hlfv1` comes from the name of the connection profile it generates. We plan to change this as well as the PeerAdmin name to avoid the confusion it sometime's causes such as this, see https://github.com/hyperledger/composer/issues/3801
Hello guys,
I am making a composer-wallet for MongoDB, I start the development from composer-wallet-redis. So now all tests pass successfully, I can add and remove cards, and I can send transactions.
I have only one issue with `composer card list`
```
$ composer card list
Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html
Command failed
```
One more thing, when I use `composer-wallet-filesystem`, everything works fine
Any idea?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=enGDybWvzvR36GuDz)
I think your pem (Certificate) is miswritten in the connection.json.
I had the same error when the certificate was written like this :
```
--------------BEGIN CERTIFICATE--------------------------
skjhfskljqhfdmlshjmfhsqdjfhsdjkhsdkljhsfhdkljhqfhdj
sqjfdrsjdfklsjdfklsjdklfjsdklqjsqjfdklsjfsjdjfsjfdsqjdfkls
....
-------------END CERTIFICATE-----------------------------
```
Instead of :
```--------------BEGIN CERTIFICATE--------------------------\nskjhfskljqhfdmlshjmfhsqdjfhsdjkhsdkljhsfhdkljhqfhdj\nsqjfdrsjdfklsjdfklsjdklfjsdklqjsqjfdklsjfsjdjfsjfdsqjdfkls\n....\n-------------END CERTIFICATE-----------------------------
@Shaan9888 - what error do you have starting the network?
@ppcm great to hear you've got a MongoDB implementation! One issue I had with writing the other implementations was ensuring that the binary data that is the zip file is correctly persisted and retrieved. This takes some careful review of the code and documentation. I would suggest writing a standalone test program that stores and retrieves a zip file from MongoDB to validate the code.
How to check if yes or no fabric is running? i.e. if ./startFabric.sh has been ran?
`docker ps`
[ ](https://chat.hyperledger.org/channel/composer?msg=wQMTvehpgnBAopPMG) @PierreHenry Bonjour, mainly the startFabric creates a channel a join peer0.org1 to this channel. To check if this was successful, you can docker a `docker ps`, connect to the peer0.org1 docker `docker exec -it
You should see you channel `composerchannel`
`shaan@shaan-HP-Pavilion-15-Notebook-PC:~/fabric-tools$ composer network start -c PeerAdmin@hlfv1 -n tutorial-bna -V 0.0.1 -A admin -S adminpw
Starting business network tutorial-bna at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated mailcomposer@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.9: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated buildmail@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.10: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
> x509@0.3.3 install /chaincode/output/node_modules/x509
> node-gyp rebuild
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: read ECONNRESET
gyp ERR! stack at _errnoException (util.js:1022:11)
gyp ERR! stack at TLSWrap.onread (net.js:615:25)
gyp ERR! System Linux 4.4.0-119-generic
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /chaincode/output/node_modules/x509
gyp ERR! node -v v8.9.4
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm WARN tutorial-bna@0.0.1 No repository field.
npm WARN The package composer-common is included as both a dev and production dependency.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! x509@0.3.3 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the x509@0.3.3 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-04-12T08_45_41_242Z-debug.log
"
Command failed
`
I am getting this error on starting the network
install went fine
@rthatcher
@davidkel
[ ](https://chat.hyperledger.org/channel/composer?msg=kaJxTJx4q9FfNfDRw) @MonnyClara Great, Thx!
`
docker exec -it peer0.org1.example.com echo "Hello!"
if [ $? -ne 0 ]; then
echo "./startFabric.sh seems not to have been ran. Exit.";
exit 1;
else
echo "./startFabric.sh seems to have been ran.";
fi
`
[ ](https://chat.hyperledger.org/channel/composer?msg=kaJxTJx4q9FfNfDRw) @MonnyClara Great, Thx!
docker exec -it peer0.org1.example.com echo "Hello!"
if [ $? -ne 0 ]; then
echo "./startFabric.sh seems not to have been ran. Exit.";
exit 1;
else
echo "./startFabric.sh seems to have been ran.";
fi
[ ](https://chat.hyperledger.org/channel/composer?msg=kaJxTJx4q9FfNfDRw) @MonnyClara Great, Thx!
```
docker exec -it peer0.org1.example.com echo "Hello!"
if [ $? -ne 0 ]; then
echo "./startFabric.sh seems not to have been ran. Exit.";
exit 1;
else
echo "./startFabric.sh seems to have been ran.";
fi
```
[ ](https://chat.hyperledger.org/channel/composer?msg=kaJxTJx4q9FfNfDRw) @MonnyClara, @mbwhite mbwhite Great, Thx!
```
docker exec -it peer0.org1.example.com echo "Hello!"
if [ $? -ne 0 ]; then
echo "./startFabric.sh seems not to have been ran. Exit.";
exit 1;
else
echo "./startFabric.sh seems to have been ran.";
fi
```
[ ](https://chat.hyperledger.org/channel/composer?msg=kaJxTJx4q9FfNfDRw) @MonnyClara, @mbwhite Great, Thx! Here a small dirty script that may save someone a few minutes:
```
docker exec -it peer0.org1.example.com echo "Hello!"
if [ $? -ne 0 ]; then
echo "./startFabric.sh seems not to have been ran. Exit.";
exit 1;
else
echo "./startFabric.sh seems to have been ran.";
fi
```
[ ](https://chat.hyperledger.org/channel/composer?msg=kaJxTJx4q9FfNfDRw) @MonnyClara, @mbwhite Great, Thx! Here a small dirty script that may save someone else a few minutes:
```
docker exec -it peer0.org1.example.com echo "Hello!"
if [ $? -ne 0 ]; then
echo "./startFabric.sh seems not to have been ran. Exit.";
exit 1;
else
echo "./startFabric.sh seems to have been ran.";
fi
```
[ ](https://chat.hyperledger.org/channel/composer?msg=9S8rMckc4dw2BGJdu) @mbwhite Thanks for the response, but I don't understand what to do, because there is nothing about zip in other composer-wallet
Do you suggest to only test if zip file can be stored in MongoDB?
@ppcm if you're familar with the redis version - look at the `_encodeType` and `_determineType` fns. they workout what is being passed in on the `put` and then store it approriately.
[ ](https://chat.hyperledger.org/channel/composer?msg=3QX5mxqmb7QuCkSXY) @mbwhite In the case of MongoDB, I treated that with 2 types: String and Buffer
But in Buffer case, it is not treated correctly even tests pass correctly...
Has joined the channel.
Hello ! I want to update my business network without having to change the version ! Is it possible ?
Hello ! I want to update my business network without having to change the version ! Is it possible ?
Hello ! I want to update my business network without having to change the version ! Is it possible ?
Hello ! I want to update my business network without having to change the version ! Is it possible ?
Hello ! I want to update my business network without having to change the version ! Is it possible ? *
Hello ! What is the good way during development to push changes to the network ?
Hello ! What is the good way during development to push changes to the network ?
Hello ! What is the good way during development to push changes to the network ?
Has joined the channel.
Hey guys, is there a way to listen to a NewBlock event on composer ?
Does someone have tutorial to setup Google account for authentification on blockchain ?
(sorry, i find)
@Shaan9888 - with your command ` composer network start -c PeerAdmin@hlfv1 -n tutorial-bna -V 0.0.1 -A admin -S adminpw ` the network name (-n) and version number (-V) should match up to the values in the .bna file you have just installed. I assume that ` composer network install ` completed OK ?
You can check the network name and version number by listing the archive ` composer archive list -a tutorial-network@0.0.1.bna `
[ ](https://chat.hyperledger.org/channel/composer?msg=YAPTgLWumFJ4LcdP2) @CorentinPacaud Thank you for your suggestion, but I think this is not the problem, because if I try with one orderer, instead of two, it works. Also I already "escaped" the new line characters
@rthatcher yeah install went well and name and version are also correct
`shaan@shaan-HP-Pavilion-15-Notebook-PC:~/fabric-tools$ composer archive list -a tutorial-bna/dist/tutorial.bna
Listing Business Network Archive from tutorial-bna/dist/tutorial.bna
Identifier:tutorial-bna@0.0.1
Name:tutorial-bna
Version:0.0.1
Command succeeded
`
see if i made mistake anywhere i couldnt find one, all looks okay.
i face
```
[[{"code":0,"message":"CA 'ca.org1.example.com' does not exist"}]]
```
when i try to run idenetiy request command
and when i run composer network start
i found
```
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=b4HAuMoyrdKrmXSRH) @Shaan9888 - just checking - you have composer v0.19.0, Fabric v1.1GA, Ubuntu or Mac ?
You are getting an error rather than a timeout so it I would guess your Fabric is running, but `docker ps` will confirm.
Are you seeing errors in the log for the Peer container ? `docker logs peer0.org1.example.com`
Can you import your BNA file into the online playground to see if it works OK there? http://composer-playground.mybluemix.net
[ ](https://chat.hyperledger.org/channel/composer?msg=heyfmLhFD8xhdpdaF) @nasserfci - are you following a particular guide or tutorial, or working on a custom fabric?
Is your CA container started ?
If the identity request failed, do you have the certificates you need to start the network?
BTW what version of composer and Fabric do you have?
I am using ubuntu 16.04 composer v is v0.19.0 docker are up n running BNA file I check its working fine in composer @rthatcher
`2018-04-12 10:19:48.685 UTC [dockercontroller] deployImage -> ERRO 57e Image Output:
********************
********************
2018-04-12 10:19:48.685 UTC [container] unlockContainer -> DEBU 57f container lock deleted(dev-peer0.org1.example.com-tutorial-bna-0.0.1)
2018-04-12 10:19:48.685 UTC [chaincode] launchAndWaitForRegister -> DEBU 580 stopping due to error while launching: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated mailcomposer@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.9: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated buildmail@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.10: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
> x509@0.3.3 install /chaincode/output/node_modules/x509
> node-gyp rebuild
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: read ECONNRESET
gyp ERR! stack at _errnoException (util.js:1022:11)
gyp ERR! stack at TLSWrap.onread (net.js:615:25)
gyp ERR! System Linux 4.4.0-119-generic
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /chaincode/output/node_modules/x509
gyp ERR! node -v v8.9.4
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm WARN tutorial-bna@0.0.1 No repository field.
npm WARN The package composer-common is included as both a dev and production dependency.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! x509@0.3.3 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the x509@0.3.3 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-04-12T10_19_47_052Z-debug.log
"
error starting container
2018-04-12 10:19:48.685 UTC [container] lockContainer -> DEBU 581 waiting for container(dev-peer0.org1.example.com-tutorial-bna-0.0.1) lock
2018-04-12 10:19:48.685 UTC [container] lockContainer -> DEBU 582 got container (dev-peer0.org1.example.com-tutorial-bna-0.0.1) lock
2018-04-12 10:19:48.686 UTC [dockercontroller] stopInternal -> DEBU 583 Stop container dev-peer0.org1.example.com-tutorial-bna-0.0.1(No such container: dev-peer0.org1.example.com-tutorial-bna-0.0.1)
2018-04-12 10:19:48.687 UTC [dockercontroller] stopInternal -> DEBU 584 Kill container dev-peer0.org1.example.com-tutorial-bna-0.0.1 (No such container: dev-peer0.org1.example.com-tutorial-bna-0.0.1)
2018-04-12 10:19:48.688 UTC [dockercontroller] stopInternal -> DEBU 585 Remove container dev-peer0.org1.example.com-tutorial-bna-0.0.1 (No such container: dev-peer0.org1.example.com-tutorial-bna-0.0.1)
2018-04-12 10:19:48.688 UTC [container] unlockContainer -> DEBU 586 container lock deleted(dev-peer0.org1.example.com-tutorial-bna-0.0.1)
2018-04-12 10:19:48.688 UTC [chaincode] func1 -> DEBU 587 chaincode tutorial-bna:0.0.1 launch seq completed
`
`2018-04-12 10:19:48.688 UTC [chaincode] Launch -> ERRO 588 launchAndWaitForRegister failed: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated fs-promise@1.0.0: Use mzor fs-extra^3.0 with Promise Support
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated mailcomposer@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.9: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated buildmail@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.10: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
> x509@0.3.3 install /chaincode/output/node_modules/x509
> node-gyp rebuild
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: read ECONNRESET
gyp ERR! stack at _errnoException (util.js:1022:11)
gyp ERR! stack at TLSWrap.onread (net.js:615:25)
gyp ERR! System Linux 4.4.0-119-generic
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /chaincode/output/node_modules/x509
gyp ERR! node -v v8.9.4
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm WARN tutorial-bna@0.0.1 No repository field.
npm WARN The package composer-common is included as both a dev and production dependency.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! x509@0.3.3 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the x509@0.3.3 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-04-12T10_19_47_052Z-debug.log
"
error starting container
2018-04-12 10:19:48.688 UTC [endorser] callChaincode -> DEBU 589 [composerchannel][df1595dc] Exit
`
`2018-04-12 10:19:48.688 UTC [endorser] simulateProposal -> ERRO 58a [composerchannel][df1595dc] failed to invoke chaincode name:"lscc" , error: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated mailcomposer@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.9: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated buildmail@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.10: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
> x509@0.3.3 install /chaincode/output/node_modules/x509
> node-gyp rebuild
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: read ECONNRESET
gyp ERR! stack at _errnoException (util.js:1022:11)
gyp ERR! stack at TLSWrap.onread (net.js:615:25)
gyp ERR! System Linux 4.4.0-119-generic
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /chaincode/output/node_modules/x509
gyp ERR! node -v v8.9.4
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm WARN tutorial-bna@0.0.1 No repository field.
npm WARN The package composer-common is included as both a dev and production dependency.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! x509@0.3.3 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the x509@0.3.3 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-04-12T10_19_47_052Z-debug.log
"
error starting container
2018-04-12 10:19:48.688 UTC [endorser] simulateProposal -> DEBU 58b [composerchannel][df1595dc] Exit
2018-04-12 10:19:48.688 UTC [lockbasedtxmgr] Done -> DEBU 58c Done with transaction simulation / query execution [df1595dc5875ddd224f7b0399ba2cda48b0bd1afef153dbdd787fa6a391f77a6]
2018-04-12 10:19:48.688 UTC [endorser] ProcessProposal -> DEBU 58d Exit: request from%!(EXTRA string=172.18.0.1:44398)
^C
shaan@shaan-HP-Pavilion-15-Notebook-PC:~/fabric-tools$`
these are the log from peer container in order
[ ](https://chat.hyperledger.org/channel/composer?msg=3QX5mxqmb7QuCkSXY) @mbwhite I tested with the wallet, I put a zip file in the databse, I get it back and the result was writing in a file. The result file is a valid zip file
Hey Guys, any ways I can get the banana .bna file if I lose access to it because I mistakely put a wrong ACL and now all cards are blocked?
Hey Guys, any way I can get the banana .bna file if I lose access to it because I mistakely put a wrong ACL and now all cards are blocked?
Can I update two registry in a trasaction?
transaction?
var orderupdate = factory.newRelationship('org.acme.securebox','Order',ID.orderId) ;
orderupdate.boxId = ID.secureBoxId;
return getAssetRegistry( 'org.acme.securebox.Order' )
.then( function( registry ) {
// Update the asset
return registry.update( orderupdate);
});
I create a relationship and update the registry , but it wont work for me
Hey Guys, any way I can get the banana .bna file if I lose access to it because I mistakely put a wrong ACL and now all cards are blocked?
Hi all i'm trying to instantiate the composer chaincode with multiple orgs , getting the following error ```
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated mailcomposer@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.9: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated buildmail@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.10: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
```
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=wSjZmnX6Fg2HzWvZr) @itskhushal - are you in Playground or on the Command line ?
[ ](https://chat.hyperledger.org/channel/composer?msg=j6GaomCWJZjC9wX3a) @Shaan9888 - thanks for checking all those things! The 'composer network start` command tries to build a specific new docker image and container for your Business network. This new image build is failing with an npm install issue for module x509 - with a specific Connection error
```
gyp ERR! configure error
gyp ERR! stack Error: read ECONNRESET
gyp ERR! stack at _errnoException (util.js:1022:11)
gyp ERR! stack at TLSWrap.onread (net.js:615:25)
gyp ERR! System Linux 4.4.0-119-generic
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /chaincode/output/node_modules/x509
gyp ERR! node -v v8.9.4
```
[ ](https://chat.hyperledger.org/channel/composer?msg=j6GaomCWJZjC9wX3a) @Shaan9888 - thanks for checking all those things! The 'composer network start` command tries to build a specific new docker image and container for your Business network. This new image build is failing with an npm install issue for module x509 - with a specific Connection error
```
gyp ERR! configure error
gyp ERR! stack Error: read ECONNRESET
gyp ERR! stack at _errnoException (util.js:1022:11)
gyp ERR! stack at TLSWrap.onread (net.js:615:25)
gyp ERR! System Linux 4.4.0-119-generic
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /chaincode/output/node_modules/x509
gyp ERR! node -v v8.9.4
```
This looks like a networking issue possibly some proxy issue in your environment. Can you try to use npm to install the x509 module directly on to your Ubuntu machine to see if you get the same problem?
Do you have any specific npm config on your ubuntu machine to get around networking/proxy issues? If so, you need to 'pass' those config details to the network start command using an option to include a npmrcFile. This is explained in the composer documentation: https://hyperledger.github.io/composer/latest//managing/connector-information.html
[ ](https://chat.hyperledger.org/channel/composer?msg=zupBFmKxZD5r44z3w) @jaswanth - please check the log for the first Peer you are starting the Network on, and you will likely see an error 'similar' to Shaan988 - so the same advice may apply for an npmrcFile.
[ ](https://chat.hyperledger.org/channel/composer?msg=9FRjZjJ6NtAFSFrHX) @suva - you can update 2 registries in 1 transaction - but remember that the whole transaction is one atomic unit and will complete/fail as a whole - so any data in the first registry you update won't be available within the transaction.
[ ](https://chat.hyperledger.org/channel/composer?msg=E7GvMKS2xtoYgiT9P) @rthatcher I checked. Without TLS I have the same error, without this line:
```
E0411 16:51:07.372354037 14608 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
```
@rthatcher yeahhh it worked Thanks alot :metal:
@rthatcher can you suggest any workaround to get .bna file exported from playground as I had incorrect ACL rules and now all of my cards are blocked?
[ ](https://chat.hyperledger.org/channel/composer?msg=9aGBih6D4TBkmuwwk) @itskhushal - can you try `composer network download -c PeerAdmin@hlfv1`
[ ](https://chat.hyperledger.org/channel/composer?msg=9aGBih6D4TBkmuwwk) @itskhushal - can you try `composer network download -c PeerAdmin@hlfv1` - try `composer network download` to get all the parameters
let me try I was on playground
@Stecec I noticed you mentioned you have defined 2 orderers. How are you actually doing that ? Fabric supports only 2 types of orderer, SOLO and KAFKA and normally for a KAFKA setup you would have 3 orderers
[ ](https://chat.hyperledger.org/channel/composer?msg=rkF6hJFfKWyGZjy7r) @davidkel Types of orderer implementation is a separate thing and number of ordering service nodes is a different thing
[ ](https://chat.hyperledger.org/channel/composer?msg=BGpoGFaNAaAH9fNSs) You can have multiple orderers using kafka implementation for ordering
@itskhushal I'm trying to understand about your orderer setup. Have you defined 2 SOLO orderers and added them to the connection profile for example ?
I haven't tried with multiple orderers in SOLO but currently have 2 orderers and kafka implementation
I am trying to participant not see see transactions history that they didn't invoke. But Every participant is able to see it. I need little help.
I am trying to participant not see see transactions history that they didn't invoke. But Every participant is able to see it. I need little help. https://hyperledger.github.io/composer/latest/tutorials/acl-trading.html i am following this tutorial.
I am trying to participant not see see transactions history that they didn't invoke. But Every participant is able to see it. I need little help. i am following this tutorial https://hyperledger.github.io/composer/latest/tutorials/acl-trading.html
@rthatcher tried composer network download it only shows deployed networks on fabric runtime, my business network was deployed on browser emulated runtime :(
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=WFptcCGjLQc8v7ktc) @ZahidZafar Look into ACL rules and implement correct ACL rules for all assets participants and transactions then you will be able to achive this.
[ ](https://chat.hyperledger.org/channel/composer?msg=Ttqn564nPg46YAqyj) @itskhushal i made a lot tries.. didn't work. When i remove 'SystemACL' all ids' unable to use playgournd editor.
@itskhushal Unless something has changed in the fabric-node-sdk, even in a kafka setup you only define a single orderer in the connection profile. I don't believe there is any kind of failover capability
@itskhushal Unless something has changed in the fabric-node-sdk, even in a kafka setup you only define a single orderer in the connection profile. I don't believe there is any kind of failover capability, ie use a different orderer if it cannot contact the first one.
@itskhushal I am assuming that you work with @Stecec ?
Clipboard - April 12, 2018 4:56 PM
if you check you can add multiple orderers
[ ](https://chat.hyperledger.org/channel/composer?msg=qCRrhCpXah6RMFLng) @davidkel No i work for a healthcare organization assigned this research task to get some knowledge of fabric
@itskhushal Sorry my questions were not meant to be directed to you. In the case of a connection profile, the fabric specification supports it but I don't believe the node-sdk exploits it. So although it's possible in playground I don't believe it has meaning in hyperledger fabric yet.
see https://jira.hyperledger.org/browse/FAB-5565
@itskhushal Sorry my questions were not meant to be directed to you. In the case of a connection profile, the fabric specification supports it but I don't believe the fabric node-sdk exploits it. So although it's possible in playground I don't believe it has meaning in hyperledger fabric yet.
see https://jira.hyperledger.org/browse/FAB-5565
Has left the channel.
Thanks for the info, may be my misunderstanding then,
what will be the best way to implement authentication with rest-api from front end (angular)
[ ](https://chat.hyperledger.org/channel/composer?msg=59YksWe39PeJ2Y7vY) @rthatcher I eventually found the cause of the problem. The Fabric tool script (`startFabric.sh`) starts the CA server using `fabric-ca-server-config/ca.org1.example.com-cert.pem` as `ca.certfile` while the Microsoft deployment script was using `fabric-ca-server-config/org1.example.com-cert.pem`.
[ ](https://chat.hyperledger.org/channel/composer?msg=59YksWe39PeJ2Y7vY) @rthatcher I eventually found the cause of the problem. The Fabric tool script `startFabric.sh` starts the CA server using `fabric-ca-server-config/ca.org1.example.com-cert.pem` as `ca.certfile` while the Microsoft deployment script was using `fabric-ca-server-config/org1.example.com-cert.pem`.
Has joined the channel.
thoduerr
hi - Can anyone point me please to the hyperledger composer doc for version v0.18.1? Thx.
It is possible to add third party javascript packages in a composer model, modifying the package.json file?
We've released Hyperledger Composer v0.19.1, with sample deployment scripts for generated applications, simplified JSON serialization for assets, and various bug/documentation fixes! 😍 https://github.com/hyperledger/composer/releases/tag/v0.19.1
Hey guys, is it possible to listen to past events and newBlock event with composer ?
Hi
Before upgrading to 0.19 version I was able to see data in the couch db http://127.0.0.1:5984/_utils/#/_all_dbs .. but now its not showing anything.. Is any configuration changed related to this? (I have not done any authorisation or persistent storage currently..)
Hello, I have a manufacturer as a participant in the composr playground. And I have a transaction with "createproduct". I assigned only READ access to the manufacturer eventhough I am able to create the product. Can u please help me out on this. This my rule for manufacturer.
rule Manufacturer {
description: "Allow the auctioneer full access"
participant: "com.miraclesoft.blockchain.Manufacturer"
operation: READ
resource: "com.miraclesoft.blockchain.createProduct"
action: ALLOW
}
rule Manufacturer {
description: "Allow the manufacturer read access"
participant: "com.miraclesoft.blockchain.Manufacturer"
operation: READ
resource: "com.miraclesoft.blockchain.createProduct"
action: ALLOW
}
@MasthanbeeShaik With "I am able to create" do you mean by using admin?
yes @akula
yes @akula
[ ](https://chat.hyperledger.org/channel/composer?msg=S5XZPCmvT7xNZzzHJ) @thoduerr - I don't think doc for v0.18.1 is available anymore. v0.19.* has many new features - are you able to upgrade? If you are using the CLI, there is help with each command for syntax purposes.
@MasthanbeeShaik well, the admin normally has the access, so you should try to `create` the transaction using another identity. Additionally, be aware that you should use `CREATE`in a transaction in order to perform it
[ ](https://chat.hyperledger.org/channel/composer?msg=ioZ7GoKS5jzsSGQJh) @NicolasGirardot - Composer Transactions can emit events. The Historian allows you to query prior events, and prior transactions. A newBlock happens when it is needed and not seen by Composer. For Fabric there is the Blockchain Explorer, which will show blocks I think and transactions.
[ ](https://chat.hyperledger.org/channel/composer?msg=wRdn4xt9Z5FxtH2bY) @rthatcher So in order to have an event triggered every new block I need to use Fabric and not composer ?
[ ](https://chat.hyperledger.org/channel/composer?msg=wRdn4xt9Z5FxtH2bY) @rthatcher So in order to have an event listener every new block I need to use Fabric and not composer ?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=9YMTp55wpmts4YGjN) @NicolasGirardot - Hyperledger Composer requires Hyperledger Fabric. Can I suggest you start here https://hyperledger.github.io/composer/latest/introduction/introduction.html which covers the relationship between Composer and Fabric. Why do you specifically want to know a block has been added? Because 1 block may contain 1 or more transactions - so from an app perspective a Block is not such an important thing.
[ ](https://chat.hyperledger.org/channel/composer?msg=Y5PrdN4jtiii7KS5J) @rthatcher Well, in the project I'm working on, the client has asked to display new blocks just to prove it is connected to hyperLedger, we, developers, find this a bit silly but the guy really wants this feature for now, I'll definitely check your link
[ ](https://chat.hyperledger.org/channel/composer?msg=Exnrxr5Wu7BFRvj7A) @MasthanbeeShaik - you may have some generic rule allowing your participant to create - perhaps you should look at a specific or generic DENY rule
[ ](https://chat.hyperledger.org/channel/composer?msg=Lq8tfv3QAhdp6TyCM) @NicolasGirardot - ah OK - then Blockchain Explorer has a nice GUI for exactly that purpose :-) - https://github.com/hyperledger/blockchain-explorer
[ ](https://chat.hyperledger.org/channel/composer?msg=y5c2iMoCRuRom6kYG) @rthatcher Alright I have a look into all this ! Thanks a lot :slight_smile:
Can anyone confirm to me whether the current version of composer 0.19.0 is STABLE release?
I mean to say its not yet "1.0" so I am assuming its kind of initial alpha-beta release which is supported with Hyperledger 1.1(stable release).
[ ](https://chat.hyperledger.org/channel/composer?msg=JvZmpRSdAAWvNFTLr) @BhaveshPatadiya - this is the release doc for v0.19.0 https://github.com/hyperledger/composer/releases
and this is extracted from that ...
```
This is our first release that we truly believe to be production ready; given time and TSC approval, we hope to brand it v1.0, but for now here you go. We really want you to pick it up, test it, and find as many bugs as you can!
```
and v0.19.1 was released today
Hello @rthatcher .. I am using composer v 0.16.5. I have created three different flows in node-red. each flow correspond to one participant with issued identity. Each flow has "subscribe to event" node and "transaction submitting node" but in each flow, nodes are having card names based on issues identity. However, when I am running this node-red file which contains three flows. it is just getting configured to one card name. Event is subscribed to only card name. it is not taking two other card names based on the flows. How can I resolve node-red flows so that each transaction submitted in each flow corresponds to different card name?
Hello @rthatcher .. I am using composer v 0.16.5. I have created three different flows in node-red. each flow correspond to one participant with issued identity. Each flow has "subscribe to event" node and "transaction submitting node" but in each flow, nodes are having card names based on issues identity. However, when I am running this node-red file which contains three flows. it is just getting configured to one card name. Event is subscribed to only card name. it is not taking two other card names based on the flows. How can I resolve this issue so that transactions in each flow should take their assigned card name while submission?
Good day my people, i have a question in the moment when apply the command COMPOSER-REST-SERVER for create API appears the next Error :( , somebody know how fix this ERROR, thanks a lot
Clipboard - April 12, 2018 7:08 AM
@Dieku I noticed you are using `-n never`, so the rest server will no longer consider namespaces. Are you sure you are using exclusive names to assets, transaction, participants etc?
after running network start command bussiness network card get generated my i knw where it is exactly the location
`shaan@shaan-HP-Pavilion-15-Notebook-PC:~/fabric-tools$ composer network start -c PeerAdmin@hlfv1 -n tutorial-bna -V 0.0.1 -A admin -S adminpw
Starting business network tutorial-bna at version 0.0.1
Processing these Network Admins:
userName: admin
✔ Starting business network definition. This may take a minute...
Successfully created business network card:
Filename: admin@tutorial-bna.card
Command succeeded
`
I am not able to find it by running
`shaan@shaan-HP-Pavilion-15-Notebook-PC:~/fabric-tools$ composer network list -c
✖ List business network from card
Card not found:
Error: Card not found:
Command failed
`
@Shaan9888 after starts the network you should import the admin card
`composer card import -f ./dist/admin@my-network.card`
That what from where should I import @akula the location ?
based on your command the admin card will be created on the same folder (~/fabric-tools)
`admin@tutorial-bna.card` I think
cool okay got it thanks @akula
nice
but why i am not able to list the card ?
I am not able to find it by running
`shaan@shaan-HP-Pavilion-15-Notebook-PC:~/fabric-tools$ composer network list -c
✖ List business network from card
Card not found:
Error: Card not found:
Command failed
`
even after imported
any idea
opps typo it was composer card list :P
LOL :D
fyi - reminder that the Community call is at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-29th-March-2018
fyi - reminder that the Community call is at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming
Has joined the channel.
Has joined the channel.
Getting a weird error when trying to `npm start` the `composer-playground` package:
```
Getting a weird error when trying to `npm start` the `composer-playground` package:
```
zone.js:1990 GET http://localhost:15699/socket.io/?EIO=3&transport=polling&t=MAwTC-V net::ERR_CONNECTION_REFUSED
```
I am working on a hotspot and was wondering if anyone with some networking experience might have insight into this issue? Or is this a composer issue? I am using Chrome on a Mac, and I have tested other packages in the composer repository successfully. When I open `localhost:3000` where it is running, I get this error and the UI loads but doesn't show any data. Any help appreciated thanks!
Getting a weird error when trying to `npm start` the `composer-playground` package:
```
zone.js:1990 GET http://localhost:15699/socket.io/?EIO=3&transport=polling&t=MAwTC-V net::ERR_CONNECTION_REFUSED
```
I am working on a hotspot and was wondering if anyone with some networking experience might have insight into this issue? Or is this a composer issue? I am using Chrome on a Mac, and I have tested other packages in the composer repository successfully. When I open `localhost:3000` where it is running, I get this error and the UI loads but doesn't show any data.
Based on the code that I have read through, `localhost:15699` is the proxy connection manager. Any help appreciated thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=QPyWGqf5xEfTpXSzB) @zachgoll if you're just trying to run Playground locally then doing it from the source package is probably not what you want. Instead you might want to install and run the npm packages as per this doc page: https://hyperledger.github.io/composer/latest/installing/development-tools
If you want to contribute to the Composer development and so really do need to run your local snapshot of the Composer / Playground source, head over to the #composer-contributors channel
@bestbeforetoday Yes, I am asking in regards to contributing so I will head over there. Thanks for pointing me in the right direction!
[ ](https://chat.hyperledger.org/channel/composer?msg=xH9GRJHuy7Pw8MxHR) @rthatcher thx
Does someone know if composer/js chaincode allow to require third party modules - like a Winston logger?
@thoduerr Sorry, no it doesn't at the moment.
hi , just built a vote app based on HyCo
https://www.builtwithblockchain.io/livepreview/vote-app/ your feedback are welcome
Has joined the channel.
Hello , i am new to this forum as well as hyperleger, need some help in installing composer in ubuntu,
npm install -g composer-cli when using this on ubuntu 16.04(32bit) asking me install using administrator, is it ok, as i have read instruction saying not to install as root. Please help. Hope this is correct forum. Thank you
hi @sv2011 , do not use npm with sudo
I think the best way to reinstall node js
Hi folks. What do you think about using the last version of Composer in production? Has anyone been measuring the performance Composer+Fabric? Do you know current Composer bottlenecks?
[ ](https://chat.hyperledger.org/channel/composer?msg=wgmGY6krfDJ4sMxcc) @html5-ninja So are suggesting reinstalling node js will help. thank you
$ sudo apt install nodejs I had used this cmd to install
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/composer-cli/node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"ia32"})
npm ERR! Linux 4.7.0-040700rc3-generic
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install" "-g" "composer-cli"
npm ERR! node v6.14.1
npm ERR! npm v3.10.10
npm ERR! path /usr/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/usr/lib/node_modules'
npm ERR! at Error (native)
npm ERR! { Error: EACCES: permission denied, access '/usr/lib/node_modules'
npm ERR! at Error (native)
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/usr/lib/node_modules' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
Has joined the channel.
@sv2011 don't install node.js from the distribution package manager. I recommend you install `nvm` which will make it easy to install different versions of node.js. If you are on ubuntu you can download and run a script that will do all the pre-req setup for you. see
https://hyperledger.github.io/composer/latest/installing/installing-prereqs#ubuntu
Further down the page are details on how to download the script and run it
Has joined the channel.
hi, everyone, I have a question, when I try to command "composer network ping --card admin@tutorial-network" for composer rest server appears the next ERROR: ```
aos@ubuntu:~/banconfio$ composer network ping --card admin@banconfio
Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: AccessException: Participant 'org.hyperledger.composer.system.NetworkAdmin#admin' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#banconfio@0.0.1'
Command failed
```
any help? please?
in the composer playground appears the same ERROR :(
@Dieku All participants need an ACL to allow them to perform a READ access on the business network in order to be able to interact, so you don't have an ACL that allows the participant `admin` to read the business network. Unfortunately if NetworkAdmin#admin is your only participant then you are completely locked out of your business network
@Dieku All participants need an ACL to allow them to perform a READ access on the business network in order to be able to interact, so you don't have an ACL that allows the participant `NetworkAdmin#admin` to read the business network. Unfortunately if NetworkAdmin#admin is your only participant then you are completely locked out of your business network
@Dieku All participants need an ACL to allow them to perform a READ access on the business network in order to be able to interact, so you don't have an ACL that allows the participant `NetworkAdmin#admin` to read the business network. Unfortunately if NetworkAdmin#admin is your only participant then you are could be locked out of your business network
However if you are running Composer 0.19.x then you should be able to change the ACL definitions and upgrade your business network
However if you are running Composer 0.19.x then you should be able to change the ACL definitions and upgrade your business network, if you are running an earlier version of Composer then you won't be able to get access to the business network at all.
If you are running Composer 0.19.x then you should be able to change the ACL definitions and upgrade your business network, if you are running an earlier version of Composer then you won't be able to get access to the business network at all.
[ ](https://chat.hyperledger.org/channel/composer?msg=GFL38f9RjDv4YKwLr) @davidkel Sure will do that . thank you
Is there any outlook for release date of Composer 1.0 ?
Has joined the channel.
Is there a link that clearly describes what a "concept" is vs a "resource"? (sadly the word "concept" didn't lend itself well to google searches)
SO I found some of the source code... I suppose my real question is: when do I use factory.createResource vs createConcept? Can I use concept for something that is actually an asset? they both seem to extend type in different ways...
SO I found some of the source code... I suppose my real question is: when do I use factory.createResource vs createConcept? Can I use concept for something that is actually an asset? they both seem to extend "type" in different ways...
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi,
I am using named query for retrieving data.
`// Uses the Limit and Skip
query AllFlightsSkipLimit {
description: "Limits the number of flights returned"
statement:
SELECT org.acme.airline.flight.Flight
LIMIT _$limit
SKIP _$skip
}`
but it is fetching all records. Can anyone help me for this?
LIMIT and SKIP seem to be blocked by fabric
https://stackoverflow.com/questions/49544653/hyperledger-composer-query-with-limit-and-skip-return-all-results
and https://github.com/hyperledger/composer/issues/1015
@JohnR So how can we do pagination? I mean to say is there any other way for doing same?
Can any one help me with this error
`shaan@shaan-HP-Pavilion-15-Notebook-PC:~/fabric-tools$ composer-rest-server
? Enter the name of the business network card to use: admin@tutorial-bna
? Specify if you want namespaces in the generated REST API: always use namespaces
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: No
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c admin@tutorial-bna -n always
Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Failed to load gRPC binary module because it was not installed for the current system
Expected directory: node-v57-linux-x64-glibc
Found: [node-v59-linux-x64-glibc]
This problem can often be fixed by running "npm rebuild" on the current system
Original error: Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node'-Failed to load gRPC binary module because it was not installed for the current system
Expected directory: node-v57-linux-x64-glibc
Found: [node-v59-linux-x64-glibc]
This problem can often be fixed by running "npm rebuild" on the current system
Original error: Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node'-Failed to load gRPC binary module because it was not installed for the current system
Expected directory: node-v57-linux-x64-glibc
Found: [node-v59-linux-x64-glibc]
This problem can often be fixed by running "npm rebuild" on the current system
Original error: Cannot find module '/usr/local/lib/node_modules/composer-rest-server/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node'-Failed to load gRPC binary module because it was not installed for the current system
Expected directory: node-v57-linux-x64-glibc
Found: [node-v59-linux-x64-glibc]
`
@rthatcher
Has joined the channel.
how to create a hyperledger fabric network with one organization and one peer
@kavyamk you're in the wrong channel; you need to ask fabric questions in the #fabric channel
@Shaan9888 you've installed a composer npm module using an old version of node.js, then started using a newer version of node.js. you must reinstall all of the composer npm modules with the version of node.js that you want to use.
@HoneyShah no way to do pagination until the Fabric limitation is resolved (I'm assured that it will be included in Fabric v1.2)
@ztanaka1971 we are working on it. all the code is there, but we have to go through some legal and security reviews with Hyperledger, along with TSC approval to go v1.0. you should not wait for v1.0 to come out before you start building apps with Composer - we think v0.19.x is ready for production now!
✖ List business network from card PeerAdmin@hlfv1
Error trying to ping. Error: No business network has been specified for this connection
Error: Error trying to ping. Error: No business network has been specified for this connection
Command failed
i am getting this error after installing network
composer network install --archiveFile loc-network.bna --card PeerAdmin@hlfv1
composer network list --card PeerAdmin@hlfv1
composer network install -a loc-network.bna -c PeerAdmin@hlfv1
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network is already installed on all the peers
Command failed
@jon_s You can refer to this https://stackoverflow.com/questions/47599375/hyperledger-composer-no-business-network-has-been-specified-for-this-connectio?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa if it helps
thanks
Johns-Air:~ johns$ composer network start --networkName loc-network --networkVersion 1.0.0 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw
Starting business network loc-network at version 1.0.0
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (loc-network:1.0.0))
Command failed
@sstone1 but i am using one version of node and nodejs from beginning can you help me how should i fix it.
[ ](https://chat.hyperledger.org/channel/composer?msg=6ZDe74dahdf3qTDaW) @jon_s It seems you are using different version while installing the business network application. version inside package.json should be the same while installing and starting the network.
Johns-Air:Downloads johns$ composer network install -a loc-network.bna -c PeerAdmin@hlfv1
✔ Installing business network. This may take a minute...
Successfully installed business network loc-network, version 0.0.3-deploy.0
Command succeeded
Johns-Air:Downloads johns$ composer network list -c PeerAdmin@hlfv1
✖ List business network from card PeerAdmin@hlfv1
Error trying to ping. Error: No business network has been specified for this connection
Error: Error trying to ping. Error: No business network has been specified for this connection
Command failed
Johns-Air:Downloads johns$
I am having trouble in the step seven of "Deploying to a single organization Hyperledger Fabric" tutorial. When I try to install the composer business network onto the peer nodes i get an error "No valid response from any peers".
@BhaveshPatadiya can you identify whats wrong here
thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=kvx6k8YLmKxSFgFe3) @jon_s have you imported card
check composer card list
[ ](https://chat.hyperledger.org/channel/composer?msg=47gYKgbsp4bbzALZT) @Shaan9888 the error says that you have used two different node.js versions; you have installed the npm modules using `node-v59-linux-x64-glibc` and are trying to run the installed modules using `node-v57-linux-x64-glibc`.
[ ](https://chat.hyperledger.org/channel/composer?msg=wSqFpCh49yeYbATua) @sstone1 sorry but how to use node-v57-linux-x64-glibc
Johns-Air:Downloads johns$ composer card list
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --card
I cleared old dev environment and started everything again .
rm -rf ~/.composer
cd fabric-tools
./teardownFabric.sh
./startFabric.sh
./createPeerAdminCard.sh
@Shaan9888 Composer must be used with Node v8. Node v9 or other versions are not supported. If you do not have Node v8 instead, see the Composer docs or the Node website. You will need to uninstall all old Composer modules using `npm` and then install them again.
@jon_s `composer network list` can only be used with a business network; `PeerAdmin@hlfv1` is an admin card for deploying business networks.
ok will do @sstone1
thanks
@jon_s what I did is create a separate card when starting the network for the first time and import that one
composer network start --networkName loc-network --networkVersion 0.0.3-deploy.0 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
and then composer card import --file networkadmin.card
@jon_s There is one filed "version": "0.0.2" in package.json file. --network version in start command have to be same as version specified in package.json
@jon_s There is one filed "version": "0.0.2" in package.json file. --network version in start command have to be same as version specified in package.json and check if there is no typo in business network name
Hi everyone. Is composer v.0.19.0 ready for windows?
@divudivyansh there is no automated testing for windows, which is why we do not list it as supported; but the npm modules for v0.19.0 do seem to install on windows, so you may be able to get it to work.
Upgrading the network from 0.0.1 to 0.0.2 is not destroying the earlier container of 0.0.1. After upgrading I was in thought that existing 0.0.1 peer container would be replaced by the latest version container. Is there any reason for this? also is it the normal behaviour? If my application is having 20 version upgrade in a day, would that mean that I will have 20 containers running at the same time?
Upgrading the network from 0.0.1 to 0.0.2 is not destroying the earlier container of 0.0.1. After upgrading I was in thought that existing 0.0.1 peer container would be replaced by the latest version container. Is there any reason for this? also is it the normal behaviour? If my application is having 20 version upgrade in a day, would that mean that I will have 20 containers running at the same time? @sstone1 @rthatcher
Has joined the channel.
@BhaveshPatadiya this is normal behaviour for Hyperledger Fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=sWdXwhoui8gZ378rR) @HoneyShah @JohnR thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=FKJmdqtxzZCTixTk4) @ReginaMehta - are you following a particular guide or tutorial? Is your Fabric started ? ` docker ps `
Hello, do someone already use docker container hyperledger/composer-rest-server ? I can't access at the REST API explorer
[ ](https://chat.hyperledger.org/channel/composer?msg=wwueyYPchKHFxxee5) @BhaveshPatadiya - if you want to do lots of iterations of a model and transaction functions in a day, you can always use Composer Playground - online or locally using Web Profile - and no containers will be created.
[ ](https://chat.hyperledger.org/channel/composer?msg=7LETiFG2ZrLwDr8DF) @Poneey - yes, a number of people in this community have the REST server running in a container. Are you following a guide or tutorial? What does the log for the rest container say?
@rthatcher Yes, i'm following it. logs "docker logs rest" return this :
[2018-04-13 10:20:12] PM2 log: Launching in no daemon mode
[2018-04-13 10:20:12] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-04-13 10:20:12] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
{ Error: EACCES: permission denied, mkdir '/home/composer/.composer/logs'
at Object.fs.mkdirSync (fs.js:885:18)
at Function.sync (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/mkdirp/index.js:71:13)
at Object.exports.getLogger (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/log/winstonInjector.js:76:20)
at Function._loadLogger (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/log/logger.js:632:25)
at Function._setupLog (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/log/logger.js:530:30)
at Function.getLog (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/log/logger.js:507:20)
at Object.
@rthatcher and when i try to access "http://
[ ](https://chat.hyperledger.org/channel/composer?msg=X8CXhbGZWCGZaGmWe) @Poneey That looks like the user starting the rest server doesn't have permissions to the directory /home/composer/.composer/logs (either write or execute on any of the directories in the tree)
[ ](https://chat.hyperledger.org/channel/composer?msg=X8CXhbGZWCGZaGmWe) @Poneey - the REST server in the container is not starting properly, so you can't connect to it. This is a Linux security 'error' - when you start the container you are including something like ` -v ~/.composer:/home/composer/.composer ` which is volume sharing the ` .composer ` folder from your home directory with the Default Composer user in the container, but the Default Composer user does not have permission to create a logs folder.
The Default Composer user in the container has a uid of 1000, and usually that is the same as the first created user on Ubuntu so permission is not a problem. On my test system when I issue this command ` more /etc/passwd ` I see my account listed near the bottom with a uid of 1000:
```
saned:x:119:127::/var/lib/saned:/bin/false
usbmux:x:120:46:usbmux daemon,,,:/var/lib/usbmux:/bin/false
rthatcher:x:1000:999:ibm,,,:/home/ibm:/bin/bash
sshd:x:121:65534::/var/run/sshd:/usr/sbin/nologin
mysql:x:122:129:MySQL Server,,,:/nonexistent:/bin/false
```
I guess that if you use the same command you will see that your username has a different ID. What you will need to do is use the `chmod` command to grant access to your home folder. or possibly the `setfacl` command.
After you have fixed the access problem - try stopping and restarting the REST container.
@rthatcher Thank for your answer, i will try this, i will tell you if it works :)
@rthatcher Yes my fabric is started. The error says "Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
@rthatcher i have to change in permission in docker container ? I can't access it by "docker exec -it rest bash" ...
[ ](https://chat.hyperledger.org/channel/composer?msg=35ynpyd2TSRdcGABr) @ReginaMehta - I would think that you have an error somewhere in step Four or Five with the certificates. You could try looking at the logs of the CA and Peer to see what errors are there ( ` docker logs ` )
[ ](https://chat.hyperledger.org/channel/composer?msg=BCjRD3YmZ2nui44rY) @rthatcher My concern is not about doing lots of iterations of transaction but want to know how the upgrade mechanism works. As per my understanding if I am runing version 0.0.1 version of application its creating dev-peer... for 0.0.1 version. and once upgrading the whole app to 0.0.2 via package.json, I was assuming that earlier created dev-peer container should be either stopped or killed and newer dev-peer.. for 0.0.2 version will get created. But while doing this found that earlier peer is yet running which might not be needed anymore.
[ ](https://chat.hyperledger.org/channel/composer?msg=FrAAGFWjjzo48Lf9m) @Poneey - no, you need to change the permission of your folder on Ubuntu. Did you have a different UID number (not 1000) ?
[ ](https://chat.hyperledger.org/channel/composer?msg=HBzCmhW6m8nt5s8zr) @rthatcher Thank you. I'll try doing this and get back ti inform.
[ ](https://chat.hyperledger.org/channel/composer?msg=HBzCmhW6m8nt5s8zr) @rthatcher Thank you. I'll try doing this and get back to inform.
Hello,
Can we have any mechanism for stopping any business network without stopping fabric?
Hello all,
Can we have any mechanism for stopping any business network without stopping fabric?
Hello all,
Would it will be possible to stop any running business network without stopping fabric?
Hello all,
Would it be possible to stop any running business network without stopping fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=36ZfmbmZFTzvmEb6X) @BhaveshPatadiya - right. I can't remember if old versions of the chaincode container eventually timeout and stop themselves. I guess you know this but composer network ping shows the current version being run - so other versions can safely be deleted.
@rthatcher i have several UID number ..
I added permissions for all folder of "/home/composer/.composer/logs" but it still doesn't work
[ ](https://chat.hyperledger.org/channel/composer?msg=fd9oxNESp6gbRuixw) @Poneey - try putting the permissions on the ` .composer ` folder - and perhaps use -r to set for all files/folders in that tree
@rthatcher Yes i did. I did chmod 777 for all folder in the tree (home, composer, .composer and logs) to be sure that permissions for composer user are ok
[ ](https://chat.hyperledger.org/channel/composer?msg=uKJZRRyfJTCkNpXXt) @rthatcher Thanks for the clarification. I am not sure if the earlier created peer container automatically timeout and shutdown by themselves. I will try and see if its working like this way.
[ ](https://chat.hyperledger.org/channel/composer?msg=KsQsgkEXKdSfpLQCa) @HoneyShah - there are no Composer commands to stop the running network. You could stop the chaincode container (but I think a new one will be created if you try to access the network again). I think you could stop the chaincode container and delete the BNA network from the Peers, but the data would still remain on the Fabric.
`Any one have guide to do passport-jwt in same way as this one https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc`
[ ](https://chat.hyperledger.org/channel/composer?msg=HBzCmhW6m8nt5s8zr) @rthatcher The logs show that promblem is with decoding the PEM structure. How can i resolve this ?
Hi.. Can somebody please tell me how to check the data in couchdb?
[ ](https://chat.hyperledger.org/channel/composer?msg=58PrpBETi3f8z7QgW) @ReginaMehta - I don't know that exact error, but it is a problem with the certificates.
I'm going to test the tutorial today just to make sure it works with the latest versions.
If you have the time you could restart the tutorial.
Just to confirm - you are using this version of the document: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
and you have Composer v0.19.0 (or v0.19.1) and Fabric v1.1 GA ?
[ ](https://chat.hyperledger.org/channel/composer?msg=EMmCdSP823dAkJjNH) I tried to see if the earlier peer container gets stop automatically but now can confirm that its not stopping automatically. Shouldn't this be fixed by the composer api? Seems like this is very odd behaviour to me.
[ ](https://chat.hyperledger.org/channel/composer?msg=EMmCdSP823dAkJjNH) I tried to see if the earlier peer container gets stop automatically but now can confirm that its not stopping automatically. Shouldn't this be fixed by the composer api? Seems like this is very odd behaviour to me. @rthatcher
@BhaveshPatadiya the behaviour is Fabric behaviour for a chaincode upgrade; there is nothing that Composer can do about it.
{
"error": {
"statusCode": 404,
"name": "Error",
"message": "Cannot GET /auth/google",
"status": 404,
"stack": "Error: Cannot GET /auth/google\n at raiseUrlNotFoundError (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/server/middleware/url-not-found.js:21:17)\n at Layer.handle [as handle_request] (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at trim_prefix (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7\n at Function.process_params (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)\n at next (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:635:15\n at next (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:260:14)\n at Function.handle (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:174:3)\n at router (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:47:12)\n at Layer.handle [as handle_request] (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at trim_prefix (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7\n at Function.process_params (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)\n at next (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)\n at urlencodedParser (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/body-parser/lib/types/urlencoded.js:91:7)\n at Layer.handle [as handle_request] (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at trim_prefix (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7\n at Function.process_params (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)\n at next (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)\n at jsonParser (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/body-parser/lib/types/json.js:103:7)"
}
}
i am so down after continous issues
[ ](https://chat.hyperledger.org/channel/composer?msg=mytvHZZiTphCDBYbS) @rthatcher Thank you for your response
I am having issues with google, jwt, github auth mechanism
[ ](https://chat.hyperledger.org/channel/composer?msg=M3mitXWunnphGaALY) @sstone1 Alright. Thank you for your insights regarding the same.
@rthatcher Why i have permission denied even thow i have the right in folders ?
COMPOSER_PROVIDERS='{
"google": {
"provider": "google",
"module": "passport-google-oauth2",
"clientID": "
this is my provider config
[ ](https://chat.hyperledger.org/channel/composer?msg=CgkqfXBHQhvQ3NBMM) @Poneey - have you stopped, removed and then re-created (run) the container ?
[ ](https://chat.hyperledger.org/channel/composer?msg=XKGak3nz2DQFv2EgN) @rthatcher Yes, I am using this version. I restarted the tutorial, it worked this time. The problem was with reading the Admin@org1.example.com.cert.pem , This time I copied the certificate given in the tutorial and it worked. Thanks for your help.
@jon_s - I have not tried the 'CazChurch' code yet. But have you tried the OAUTH2.0 tutorial in the Composer docs - it might be a good place to start for background (and success!!) before working with a more complex setup. https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
@rthatcher i was able do it now. but one problem is i was using a jwt strategy before (.16.0) now its not working with latest version
"jwt": {
"provider": "jwt",
"module": "passport-empty",
"clientID": "2d74910237e2151313dd",
"clientSecret": "8b347162cf156290ae168bd59adf5e25fcfb1d61",
"secretOrKey": "secret",
"authPath": "/auth/jwt",
"authScheme": "saml",
"callbackURL": "/auth/jwt/callback",
"successRedirect": "http://localhost:4200?loggedIn=true",
"failureRedirect": "/"
}
https://www.npmjs.com/package/passport-empty
i have published this package
and was getting token by
return new Promise((resolve, reject) => {
let token = jwt.sign({
id: req.body.username | 'admin@loc-network',
}, config.get('app.secret'));
const options = {
host: config.get('app.host'),
port: config.get('app.restport'),
path: config.get('app.restauthpath'),
method: 'GET',
headers: {
authorization: `Bearer ${token}`,
},
withCredentials: false,
signedCookies: false,
};
http.get(options, (resp) => {
console.log(resp);
const setCookies = resp.headers['set-cookie'];
if (setCookies.length > 0
&& setCookies[0].indexOf('access_token') !== -1) {
res.json(resp.headers['set-cookie'][0]).end();
} else {
res.json({
message: 'Token generation unsuccessfull',
});
}
}).on('error', (err) => {
console.log(err);
res.json(options).end();
});
});
`return new Promise((resolve, reject) => {
let token = jwt.sign({
id: req.body.username | 'admin@loc-network',
}, config.get('app.secret'));
const options = {
host: config.get('app.host'),
port: config.get('app.restport'),
path: config.get('app.restauthpath'),
method: 'GET',
headers: {
authorization: `Bearer ${token}`,
},
withCredentials: false,
signedCookies: false,
};
http.get(options, (resp) => {
console.log(resp);
const setCookies = resp.headers['set-cookie'];
if (setCookies.length > 0
&& setCookies[0].indexOf('access_token') !== -1) {
res.json(resp.headers['set-cookie'][0]).end();
} else {
res.json({
message: 'Token generation unsuccessfull',
});
}
}).on('error', (err) => {
console.log(err);
res.json(options).end();
});
});`
which no longer works. and i am getting socket err.
{ Error: socket hang up
at createHangUpError (_http_client.js:331:15)
at Socket.socketOnEnd (_http_client.js:423:23)
at emitNone (events.js:111:20)
at Socket.emit (events.js:208:7)
at endReadableNT (_stream_readable.js:1055:12)
at _combinedTickCallback (internal/process/next_tick.js:138:11)
at process._tickCallback (internal/process/next_tick.js:180:9) code: 'ECONNRESET' }
cause the endpoint /auth/jwt/callback no longer working
LOL
its working
now
@jon_s - I can't help you with the detail there - but I would just say if you have recently upgraded to v0.19.0 then make sure you don't have any old dependencies in package.json to v0.16 any where (and rebuild) and also make sure you removed the old v16 rest server container and Image - I have seen people forget to get a new rest container version
i was missing to send username and id while signing
[ ](https://chat.hyperledger.org/channel/composer?msg=wNXbq4Hxnag52hSNJ) @jon_s - good news !
i think in this version its mandatory to send username
is that so
May be i will put up tutorial for this part (passport-empty) based auth in composer like i did for sawtooth
thanks @rthatcher
function updateOrder(orderId) {
console.log('updateOrder');
var factory = getFactory();
orderId.order.status = 'DELIVERED';
orderId.securebox.statusType = 'UNLOCKED';
//Get the asset registry
return getAssetRegistry( 'org.acme.securebox.Order' )
.then( function( registry ) {
// Update the asset
return registry.update( orderId.order);
});
return getAssetRegistry( 'org.acme.securebox.SecureBox')
.then( function( registry ) {
// Update the asset
return registry.update( orderId.securebox);
});
}
my transaction file is as below
transaction updateOrder{
--> Order order
--> SecureBox securebox
}
event updateOrderEvent {
o String orderId
}
I am able to update the first registry but unable the second one
no error also comes
plz help me to do this?
I am having cookie value { access_token: 's:yjmpnujFxWioJlJjKzTC23oixsbVnHlGlBKJVtSHrAmNnGnTmatSuSJtC8CKlz1g.fOuBxYfwyBi+yql9lWIjBxB/vvKJEHPwQn85XrC9EWo',
'Max-Age': '1209600',
Path: '/',
Expires: 'Fri, 27 Apr 2018 11:00:23 GMT' }
what part of the access token can be used to communicate with api
[ ](https://chat.hyperledger.org/channel/composer?msg=MbhbEGRJfoxGPyYFa) @jon_s - yes please share :-)
@rthatcher yes i do "docker rm ..." and "docker start ..."
@rthatcher I found how to fix my issue about permissions, it was permissions in docker container. But now i have a new error :
Connection fails: Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
It will be retried for the next request.
Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
How i can fix it ?
@rthatcher it's probably beause it looks for "connectionprofilemanage.js" in /home/root/.npm-global.." but i'm in root so it's in "root/.npm-global" ...
Hi @rthatcher When we authenticate the rest server. Then on mongo db we store all the cards and identities. But the transnational data is still stored on couch db right?
@rthatcher access_token: 's:yjmpnujFxWioJlJjKzTC23oixsbVnHlGlBKJVtSHrAmNnGnTmatSuSJtC8CKlz1g.fOuBxYfwyBi+yql9lWIjBxB/vvKJEHPwQn85XrC9EWo'
i want to get just usable access token from this. whole string
which part should i take
@Pranoti correct, the transactional data is always stored in the world state database (CouchDB or LevelDB depending on Fabric configuration). The MongoDB for the REST server only stores information about authenticated users and business network cards.
Okay so I ahev 2 peers and 2 couchdb instance for each peer.. So my couchdb1 shows the logs correctly i guess. And the 2nd couchdb0 instance showing errors..
Okay so I have 2 peers and 2 couchdb instance for each peer.. So my couchdb1 shows the logs correctly i guess. And the 2nd couchdb0 instance showing errors..
couchdb1.png
couchdb0.png
couchdb0.png
Starting business network test-bna at version 0.0.1
Processing these Network Admins:
userName: admin
× Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (test-bna:0.0.1))
Command failed.
what may be the reason behind the error
?
[ ](https://chat.hyperledger.org/channel/composer?msg=g3a7R5eAJxDZYRXEM) @divudivyansh I am getting the same error, docker logs peer0.org1.example.com, gives me "[endorser] ProcessProposal -> ERRO 439 simulateProposal() resulted in chaincode response status 500 for txid: ..."
any one has an idea about its origins ? I have started a fully functionnal Fabric network, deployed the business network archive, but I get this error when trying to start it using "composer network start --networkName hlfv1 --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card"
[ ](https://chat.hyperledger.org/channel/composer?msg=kyNMfkrKpQeigbZnT) @omarqr I am assuming your network name is " --networkName test-bna"? it should not be hlfv1.
[ ](https://chat.hyperledger.org/channel/composer?msg=TCAsiyr5emnTkSdhr) @omarqr I am assuming your network name is " --networkName test-bna"? it should not be hlfv1.
The exact error is the followi
Starting business network hlfv1 at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)
The exact error is the following
Starting business network hlfv1 at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)
I meant that I had the same issue as @divudivyansh
And still have it btw
@omarqr you're using Composer v0.17+ or later with Fabric v1.0, you must use it with Fabric v1.1
@omarqr my problem was solved after exporting compose_convert_windows_path=1
I am indeed using Composer v0.19, any idea where I can find the Fabric version ?
[ ](https://chat.hyperledger.org/channel/composer?msg=pyAgvjZrknMcgp7dA) @divudivyansh It's the first time I see this variable...
[ ](https://chat.hyperledger.org/channel/composer?msg=thmebETZDA8sFMHWv) @omarqr https://github.com/lando/lando/issues/823
are you on window or linux
I have windows10 but have on top of it a vm with Ubuntu 16.04.3
how did you start the fabric?
using the startFabric.sh script after modifying the files that needed to be modified
have you downloaded the new version of those scripts since getting v0.19?
have you got the environment variable FABRIC_VERSION set?
In the file I used to extract those scripts I have two folders one called hlfv1 and one hlfv11 I used the second one so I guess it must be the version 1.1 nope ?
no echo $FABRIC_VERSION doesn't give me any value
you've probably got an old version where hlfv1 is the default
you can `export FABRIC_VERSION=hlfv11` to get the right version
and after this ? Relaunch startFabric script ?
@rthatcher Hello, i finally fixed my issue about permissions and about "x-type" not defined but i still can't access at REST API, i have "ERR_CONNECTION_REFUSED" ... This is my log from container :
[2018-04-13 14:45:26] PM2 log: Launching in no daemon mode
[2018-04-13 14:45:26] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-04-13 14:45:26] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Have you an idea ?
[ ](https://chat.hyperledger.org/channel/composer?msg=kLwksSNeznXzruxd2) @omarqr - yes, rerun startFabric.sh script aftr the export command - then check the containers are running with the correct version by using ` docker ps `
Has joined the channel.
Has joined the channel.
I did so, and yet still getting the same error
I really don't think it is a version problem, I previously crossed an error something like "this version of Fabric is incompatible with this version of Composer" So I changed from folder hlfv1 to hlfv11 and the error got away or at least it changed...
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=a35jZR78iyybnhJny) @Poneey - did I see earlier that you are using 'root' - there should be no need for root access.
With the x-type error I assume there was an old version of a card ?
Is that all you see in the REST container log ?
[ ](https://chat.hyperledger.org/channel/composer?msg=7zqjbBiTv9H2BrDhH) @omarqr - can use try `docker ps` and show the output here? and `npm ls -g -depth=0` ?
@rthatcher i fixed issues for permissions and x-type, i don't have anymore error now but i still can't access to REST API i don't understand why ...
Screenshot from 2018-04-13 15-13-03.png
Hi all, I have a question regarding documentations (https://ibm-blockchain.github.io/develop/tutorials/developer-tutorial) which seems to be outdated for composer v0.19. I'm following the tutorials, however in the latest version of composer, the 'runtime' argument of composer command does not exist anymore, any chance the documentation will be updated soon? thanks
@epezhman https://hyperledger.github.io/composer/latest/tutorials/tutorials.html
[ ](https://chat.hyperledger.org/channel/composer?msg=o95S2mke2E5HZAsJd) @omarqr - OK - this shows that you are running Fabric 1.0.4 and for Composer 0.19.0 - you need Fabric 1.1. Can I suggest these commands:
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images -q)
```
Then remove the contents of the fabrictools folder and re-download the fabric tools.
The latest version of the fabrictools will automatically download Fabric 1.1 when you run the download script
[ ](https://chat.hyperledger.org/channel/composer?msg=o95S2mke2E5HZAsJd) @omarqr - OK - this shows that you are running Fabric 1.0.4 and for Composer 0.19.0 - you need Fabric 1.1. Can I suggest these commands:
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images -q)
```
Then remove the contents of the fabrictools folder and re-download the fabric tools.
The latest version of the fabrictools will automatically download Fabric 1.1 when you run the download script
Then you can run the command to create the peerAdmin card - and finally you should be OK to do `composer network install` and `composer network start`
Hello @rthatcher.. I have observed that `event is emitted even if transaction is failed due to read conflict`. For example, I submitted the transaction (T1) which `read the blockchain data and emit even`t. Based on emitted data, it submits another transaction (T2) which actually update the blockchain. So if T1 somehow fails due to `MVCC_READ_Conflict` then also event is emitted and T2 got submitted. I also checked the `block event` and verified that T1 is `invalid tx` but in the next block, I saw T2 is submitted successfully and it was done by emitted event. Is this an issue or I am missing some concept here? Please clarify :)
Hello @rthatcher .. I have observed that `event is emitted even if transaction is failed due to read conflict`. For example, I submitted the transaction (T1) which `read the blockchain data and emit even`t. Based on emitted data, it submits another transaction (T2) which actually update the blockchain. So if T1 somehow fails due to `MVCC_READ_Conflict` then also event is emitted and T2 got submitted. I also checked the `block event` and verified that T1 is `invalid tx` but in the next block, I saw T2 is submitted successfully and it was done by emitted event. Is this an issue or I am missing some concept here? Please clarify :)
Hello @rthatcher .. I have observed that `event is emitted even if transaction is failed due to read conflict`. For example, I submitted the transaction (T1) which `read the blockchain data and emit event`. Based on emitted data, it submits another transaction (T2) which actually update the blockchain. So if T1 somehow fails due to `MVCC_READ_Conflict` then also event is emitted and T2 got submitted. I also checked the `block event` and verified that T1 is `invalid tx` but in the next block, I saw T2 is submitted successfully and it was done by emitted event. Is this an issue or I am missing some concept here? Please clarify :)
@rthatcher hi, does an asset instance support transient like properties? i.e. is it legal to assign it a property not defined by the cto?
[ ](https://chat.hyperledger.org/channel/composer?msg=BzMN8b3MW9ggD4Sma) @rthatcher I only mean to add an extra property, which does not need be saved with the asset, for the sole usage at chaincode runtime. Is that ok? Wouldn't it cause the update operation to fail because of the extra property of the asset, not defined in the CTO?
[ ](https://chat.hyperledger.org/channel/composer?msg=DJmsvT6FZ4epAoT7r) @uber.twin - the model file is part of the agreed smart contract, so it does not make sense for it to be dynamically extensible.
Hi, i'm trying to implement an authenticaton to my REST API. I follow the OAUTH2.0 tutorial to use the google provider (https://hyperledger.github.io/composer/latest//tutorials/google_oauth2_rest) and everything is ok. To build a business network to prodution, I need to implement my own authentication server. Can someone help me with this? I'm thinking to use the passport-http-bearer authentication strategy, but I don't know how to configure and what the fields are necessary to put in COMPOSER_PROVIDERS variable.
@rthatcher I have the same pb as omarqr. But how can you say he is Fabric V 1.0.4 ?
@CorentinPacaud I'd say the name of the docker containers
oh, sry
np
So, i am in 1.1.0 and I've got this :
```
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
```
@AkshayJindal I am guessing you are on Fabric 1.0 and Composer 0.16.x ? Fabric will always report a chaincode event irrespective of whether the transaction was a success or a failure (All transactions are committed to the blockchain even if they fail, they are just marked as failing) however there was no way to tell if it came from a successful or failing transaction. In 1.1 they fixed this, so Composer 0.19.x should now only emit an event on a successful txn.
I cannot determine what to provide as input to get my sample working. My model looks like this:
participant SampleParticipant identified by participantId {
o String participantId
o String firstName
o String lastName
}
asset SampleAsset identified by assetId {
o String assetId
--> SampleParticipant owner
o String value
}
The POST /SampleAsset operation requires input like:
{
"$class": "com.ibmgarage.sample.SampleAsset",
"assetId": "string",
"owner": {},
"value": "string"
}
My provide input is
{
"$class": "com.ibmgarage.sample.SampleAsset",
"assetId": "string",
"owner": {
"$class": "com.ibmgarage.sample.SampleParticipant",
"participantId": "1",
"firstName": "chuck",
"lastName": "norris"
},
"value": "string"
}
but get
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration {name=owner, type=com.ibmgarage.sample.SampleParticipant, array=false, optional=false}",
"stack": "Error: Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration {name=owner, type=com.ibmgarage.sample.SampleParticipant, array=false, optional=false}\n at JSONPopulator.visitRelationshipDeclaration (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:249:27)\n at JSONPopulator.visit (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:58:25)\n at RelationshipDeclaration.accept (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/introspect/decorated.js:54:24)\n at JSONPopulator.visitClassDeclaration (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:83:60)\n at JSONPopulator.visit (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:56:25)\n at AssetDeclaration.accept (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/introspect/decorated.js:54:24)\n at Serializer.fromJSON (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer.js:180:26)\n at ensureConnected.then (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:634:43)\n at
[ ](https://chat.hyperledger.org/channel/composer?msg=yt6SgERfSvEFjH5fZ) @rthatcher Indeed it was due to a version problem thank u, I now have a new issue I'll try solving it on my own, if I don't find a solution I might come back here ! haha
@thoduerr I may be mistaken, but you may have to prefix your ids, like so:
```
{
"$class": "com.ibmgarage.sample.SampleAsset",
"assetId": "com.ibmgarage.sample.SampleAsset#0",
"owner": {
"$class": "com.ibmgarage.sample.SampleParticipant",
"participantId": "com.ibmgarage.sample.SampleParticipant#0",
"firstName": "chuck",
"lastName": "norris"
},
"value": "string"
}
```
@thoduerr EDIT: as stated by @HoneyShah
```
{
"$class": "com.ibmgarage.sample.SampleAsset",
"assetId": "com.ibmgarage.sample.SampleAsset#0",
"owner": "com.ibmgarage.sample.SampleParticipant#110",
"value": "string"
}
```
good day, my people...anyone have examples or tutorial for begin the "SCRIPT FILE.JS" archive, or documents. Thank u
[ ](https://chat.hyperledger.org/channel/composer?msg=6GYR9GZdXcXDD2ZHf) @thoduerr owner is a reference here. So you just need to pass reference string to the owner.
So, "owner" : "com.ibmgarage.sample.SampleParticipant#110" would be good to go for you. Note that 110 is the ID of the instance of order here. It would be based on which instance of participant you want to make reference for the particulat asset. I hope it makes clear your doubt.
[ ](https://chat.hyperledger.org/channel/composer?msg=Ckzrc9LHtYj9oaG66) @Dieku Perfekt answer - works
@HoneyShah Perfekt answer - works
Has joined the channel.
Hi! I'm trying to deploy Composer over an existin fabric network, and I'm getting the following error... Does anyone know why?
```
Processing these Network Admins:
userName: admin
x Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (signchain:0.0.1))
Command failed```
[ ](https://chat.hyperledger.org/channel/composer?msg=fCDujp4r22GMX2aTs) @andreamagagna May be you are using your business network admin card instead of PeerAdmin@hlfv1
[ ](https://chat.hyperledger.org/channel/composer?msg=fCDujp4r22GMX2aTs) @andreamagagna May be you are using your business network admin card instead of PeerAdmin@hlfv1. Check if this is the case
Yes I'm creating a card using this command
```composer card create -p connection.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k key_sk -r PeerAdmin -r ChannelAdmin```
where key_sk is the one in fabric-tools, and connection.json is the configuration of my fabric network
Yes I'm creating a card using this command
```composer card create -p connection.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k key_sk -r PeerAdmin -r ChannelAdmin```
where key_sk and the certificate are those in fabric-tools, and connection.json is the configuration of that fabric network
And then I'm using it to start Composer
[ ](https://chat.hyperledger.org/channel/composer?msg=RezQoQsWcDRicMPAC) @andreamagagna start network using PeerAdmin card. Don't create your own. Once you start your network admin card will be created automatically. Then you have to import card using card import commad.
[ ](https://chat.hyperledger.org/channel/composer?msg=RezQoQsWcDRicMPAC) @andreamagagna start network using PeerAdmin card. Don't create your own. Once network is started, your network admin card will be created automatically. Then you have to import card using card import commad.
[ ](https://chat.hyperledger.org/channel/composer?msg=RezQoQsWcDRicMPAC) @andreamagagna start network using PeerAdmin card. Don't create your own. Once network is started, your network admin card will be created automatically. Then you have to import same card using card import commad.
[ ](https://chat.hyperledger.org/channel/composer?msg=RezQoQsWcDRicMPAC) @andreamagagna start network using PeerAdmin card. Don't create your own. Once network is started, your network admin card will be created automatically. Then you have to import same card using composer card import commad.
I'm following this tutorial: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
[ ](https://chat.hyperledger.org/channel/composer?msg=fCDujp4r22GMX2aTs) @andreamagagna - this error is a mismatch in the name (or version) of the network you are trying to start. Use the command `composer archive list` to get the exact network name and version from the archive file you used on the network install command
[ ](https://chat.hyperledger.org/channel/composer?msg=fCDujp4r22GMX2aTs) @andreamagagna - this error is a mismatch in the name (or version) of the network you are trying to start. Use the command `composer archive list` to get the exact network name and version from the archive file you used on the network install command - and use those values on the network start command.
[ ](https://chat.hyperledger.org/channel/composer?msg=dgDCArETSKRiwSrMf) @davidkel Thank you :) Yes my application is running on composer v0.16.5 and Fabric v1.0.6 (). So if I switch to v0.19.x, would it be a big change?
[ ](https://chat.hyperledger.org/channel/composer?msg=SCcTu6vy5o253b2Aq) @CorentinPacaud - if you just get a timeout and no other errors, it may be just that building the chaincode container takes too long. Are you trying to start the network on a single peer or multiple peers?
It doesn't look like a problem with npm inside the container - but you have already seen that issue with @mahoney1
We have seen a problem like this if there is an error in the .js file for the transaction function - so it might be worth importing your .bna into playground to see if it is valid.
@AkshayJindal A Business network developed under 0.16.5 can be deployed unchanged using 0.19.x, but 0.19.x requires fabric 1.1 and the deployment process has changed (as well as changes to the composer card commands). There is no migration of data path so you would be starting a new business network effectively
Hello
customer info is stored as participant..customer info gets updated in the participant table..my client wants to see info before it is updated, how can I do this?
any ideas geeks?
@d8bhatta Show an estimate of the changes computed from the front-end ?
yes...I want to show the changes at frontend (web page)
say customer first had phone number 12121, later it is changed to 2232323...
I want to show history of the changed record at frontend
@nebularnoise
I'm not sure I understand what's stopping you. If the changes are submitted through the front-end, you can show what values were passed, before the API responds. When it does, you can display some kind of confirmation.
at first user submit info from frontend and it is stored into participant table (say customer)
after some time, he changes his info and submit to blockchain and participant table is updated. since it updates the participant, directly I cannot see what the phone number was before update.
@rthatcher @HoneyShah Thank you very much!!
[ ](https://chat.hyperledger.org/channel/composer?msg=qkcNhb63caCukRdYL) Someone used another authentication, with exception of google or github? An authentication without a third part
[ ](https://chat.hyperledger.org/channel/composer?msg=beM7oyw6dy8tAZwAn) @vitorduarte - try contacting @jon_s - he was working on passport-jwt earlier and https://www.npmjs.com/package/passport-empty
and there are a couple of links here for passport-local: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--passport-strategy-info
Hi. How can I enable Composer logs output to the console?
Getting this error while running `composer network start` :- `failed to invoke chaincode name:"lscc" , error: transaction returned with failure: ReferenceError: require is not defined`. Can anyone help ?
[ ](https://chat.hyperledger.org/channel/composer?msg=vGTmmHmNQpQiigtd4) @krabradosty - about halfway down this document there is a section on Log Output Location where it covers logging to Console. https://hyperledger.github.io/composer/latest//problems/diagnostics
@rthatcher thanks
Has joined the channel.
Hello,
I'm looking a way to integration passportjs in composer-rest-server for authentication and session management
Ideally I would like to use the passport-local strategy
looking to the doc I see I can integrate passportjs with github strategy easily
https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication
but it's not clear to me if it's possible with passport-local strategy
can we use passport-local strategy with composer-rest-server ?
if yes can you give some inputs ?
[ ](https://chat.hyperledger.org/channel/composer?msg=aczaqiLNt4iC4ZZZ9) @mffrench - yes you can use any of the passport strategies with Composer. I have not used passport-local, but there are some links here for passport-local: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--passport-strategy-info
@rthatcher : unfortunately the links for passport-local are not working
Has joined the channel.
I am trying to install hyperledger explorer using hyperledger composer, upto last step it was fine
I am using default network configuration for composer, upto last step it was fine , but after launching the application in browser it is giving the following error.
[2018-04-13 17:32:27.742] [ERROR] Query - Error: No identity has been assigned to this client
at Client._getSigningIdentity (/home/ubuntu/blockchain-explorer/node_modules/fabric-client/lib/Client.js:1206:11)
at Channel.queryInfo (/home/ubuntu/blockchain-explorer/node_modules/fabric-client/lib/Channel.js:896:36)
at helper.getOrgAdmin.then (/home/ubuntu/blockchain-explorer/app/query.js:98:18)
My config.js file is
{
"network-config": {
"org1": {
"name": "peerOrg1",
"mspid": "Org1MSP",
"peer1": {
"requests": "grpc://127.0.0.1:7051",
"events": "grpc://127.0.0.1:7053",
"server-hostname": "peer0.org1.example.com"
},
"admin": {
"key": "/home/ubuntu/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore",
"cert": "/home/ubuntu/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts"
}
}
},
"host": "localhost",
"port": "8080",
"channel": "composerchannel",
"keyValueStore": "/tmp/fabric-client-kvs",
"eventWaitTime": "30000",
"pg": {
"host": "127.0.0.1",
"port": "5432",
"database": "fabricexplorer",
"username": "hppoc",
"passwd": "password"
},
"license": "Apache-2.0"
}
Has joined the channel.
After I have a working model in composer playground, do I need to convert the .js document to golang?
I wrote a tutorial on how to install playground on a linux vps
https://chaincodedevs.com/showthread.php?tid=3
@cuevrob no, Fabric v1.1 supports Node.js chaincode and can execute the JavaScript business logic
Has joined the channel.
Hi, i have a question
For a dapp in production, its good use hyperledger fabric + composer?
or is this technology still very instable / new?
Thanks
Has joined the channel.
Has joined the channel.
can i increase instantiate chaincode timeout? now it is 300 seconds, there are too many packages to pull from repository. it may take longer time to finish.
Hello all, i need help, first what is the difference between nodes(peers that have all the blockchain) and hosts(are clients that only query from the blockchain) is this true? , the second question is about i want to deploy my composer network on the different peers and i have 2 peers one on my local machine and the other is on the VBox ubuntu, how can i do this?
@bh4rtp if you use docker-compose to start your fabric network, you can add
`CORE_CHAINCODE_STARTUPTIMEOUT=1200s` to your peer environment
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=BeZgxJYpdPaAqWNam) @jesusruizlopez composer v0.19.x with fabric v1.1 is ready for production
Has joined the channel.
Has joined the channel.
hi anyone tried to run composer with explorer
i configured config.json with channel
composerchannel
and then removed the tls and updated the path
but still after running start.sh nothing is opening
Clipboard - April 14, 2018 10:38 PM
Hello..I am planning to update my composer from v0.16.5 to v0.19.0. Will I be able to deploy my current application files (model file, transaction processing file, query file) without any changes in those files? Please suggest
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=3SHvnxnMdwjnsGpzS) @sstone1 Thanks man, awesome job!
[ ](https://chat.hyperledger.org/channel/composer?msg=keSCx8hnQFzbd432f) @sstone1 thanks for the reply
Has joined the channel.
why does `package.json` of unzipped bna file use old definitions?
```{"engines":{"composer":"^0.16.0"},"name":"decentralized-energy-network","version":"0.1.14","description":"Decentralized Energy application with Hyperledger Composer","networkImage":"https://hyperledger.github.io/composer-sample-networks/packages/basic-sample-network/networkimage.svg","networkImageanimated":"https://hyperledger.github.io/composer-sample-networks/packages/basic-sample-network/networkimageanimated.svg","scripts":{"prepublish":"mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/decentralized-energy-network.bna","pretest":"npm run lint","lint":"eslint .","postlint":"npm run licchk","licchk":"license-check","postlicchk":"npm run doc","doc":"jsdoc --pedantic --recurse -c jsdoc.conf","test-inner":"mocha --recursive && cucumber-js","test-cover":"nyc npm run test-inner","test":"mocha --recursive -t 4000"},"repository":{"type":"git","url":"https://github.com/hyperledger/composer-sample-networks.git"},"keywords":["composer","composer-network"],"author":"Raheel Zubairy","license":"Apache-2.0","devDependencies":{"browserfs":"^1.2.0","chai":"^3.5.0","chai-as-promised":"^6.0.0","composer-admin":"^0.18.0-1","composer-cli":"^0.18.0-1","composer-client":"^0.18.0-1","composer-connector-embedded":"^0.18.0-1","composer-cucumber-steps":"^0.18.0-1","cucumber":"^2.2.0","eslint":"^3.6.1","istanbul":"^0.4.5","jsdoc":"^3.4.1","license-check":"^1.1.5","mkdirp":"^0.5.1","mocha":"^3.2.0","moment":"^2.17.1","nyc":"^11.0.2"},"license-check-config":{"src":["**/*.js","!./coverage/**/*","!./node_modules/**/*","!./angular-app/**/*","!./out/**/*","!./scripts/**/*"],"path":"header.txt","blocking":true,"logInfo":false,"logError":true},"nyc":{"exclude":["coverage/**","features/**","out/**","test/**"],"reporter":["text-summary","html"],"all":true,"check-coverage":true,"statements":100,"branches":100,"functions":100,"lines":100}}```
i use composer 1.19.1 to create the archive. but the package.json uses composer 0.16.0.
i got the answer. it is the package.json file created by `yo hyperledger-composer:businessnetwork`
Why `vehicle-manufacture-network` has difference github with composer-playground?
On https://composer-playground.mybluemix.net, there has `models/business.cto`, but in github, https://github.com/hyperledger/composer-sample-networks/blob/master/packages/vehicle-manufacture-network/models/org.acme.vehicle_network.cto there is just one file. Why they has difference? In my opinion, they should be the same.
Has joined the channel.
Please consider the scenario below:
1.Participant A calls a TP and creates an asset XYZ.
2. Now, A also wants to tell participant B the unique id of the asset that he created.
How can that be done using the Composer API?
I am trying to install composer and all other composer packages that I need, do we have a complete list of all composer packages that I need to install? like composer-admin, composer-ui, .....?
Has joined the channel.
Has joined the channel.
Has joined the channel.
Can you update/append the .bna files such as the model(.cto), script files, .acl and .qry files once a system is deployed? Documentation supporting the response would be very helpful. Thanks
How do we authenticate a participant and perform the transactions that only he is allowed to perform? because angular generator creates the skelton for admin only. how do we authenticate participants through client app?
I implemented hyperledger composer tutorial and create a simple business network definition and deploy it on through composer and implement it's rest API's through composer-rest-server. Now I want to add one more peer to it on a different machines (PC) which can access blockchain I created previously. I has follow this "Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations)" but in this tutorial is configured using docker containers, with both organizations' fabric networks, on the same machine.
My Question:
1. What are difference between multiple organizations using docker containers (on the same machine) and using multiple machines (PC)?
2. How to implement multiple organizations with multiple machines (different PC) with Hyplerledger Composer?
Thank you in advance!
how can check the query return value in https://composer-playground-next.mybluemix.net .
?
I want to see if i will execute a query to retrieve value from a registry and display the result
[ ](https://chat.hyperledger.org/channel/composer?msg=7bHFQWfxCHYvY9MSK) @mhell245 - yes you can *upgrade* a Business Network using the `composer network upgrade` command. The composer CLI commands are described here:
https://hyperledger.github.io/composer/latest/reference/commands
and there are examples in the Developer Tutorial to deploy and initial network, and the Query Tutorial to upgrade the network
https://hyperledger.github.io/composer/latest/tutorials/tutorials
[ ](https://chat.hyperledger.org/channel/composer?msg=nfTLiBBJPLoBsM55x) @dara652 - The tutorial you refer to (Multi Organisation on one PC) is used to illustrate the Composer Aspects of a Multi Organisation - Multi Peer configuration. It is not necessary to use Docker Containers to build a Fabric, but it is easier and the majority choose to do it that way.
It is easy for Composer to work with a Multi Machine setup - you just create a different connection.json file to 'point' to the various addresses! The real question is how to implement a Multi-Org Hyperledger Fabric. Docker Compose is the tool used for a Development Fabric and for the tutorials and it provides networking between the component containers, but Docker Compose is only really intended for a single machine. To work with multiple machines Kubernetes or Docker Swarm are better choices (or cloud hosting) and certainly something other than Docker Compose is required for production.
There are however a couple of tutorials that can be used for learning or PoC - I haven't tried them, but others in the community have:
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f
[ ](https://chat.hyperledger.org/channel/composer?msg=bmgBtCpz94y7egzCr) @suva - you need to test Queries on the REST server
I am trying the tutorial "Deploying to a multi-organization Hyperledger fabric" , when I run the command "./byfn.sh -m up -s couchdb -a" for settin up the network I get an error "Channel creation failed. ERROR : FAILED to execute End-2-End Scenario". Can someone provide insight into what could possibly be wrong?
[ ](https://chat.hyperledger.org/channel/composer?msg=vLqRYvgFBQWZ389g6) @hamza113 - the Angular App is intended to give you a fast start to building your App. It requires the REST servers and uses the context/privilege of the ID that is used to start the REST server which doesn't have to be the Network Administrator - it could be a different ID/Card.
I think the answer is to use the REST server in MultiUser mode with Authentication which will then honour the ACLs and access for each user. In order to make this work with the Angular APP you will need to write some code to 'call' the authentication and then adjust the callback parameter to return to your App. You will also need to look at the way to pass the authentication token from your Angular App to the REST server.
Hello
I am using reqclient nodejs module to perform curl operation. The operation is successful but the response I am getting, is make ing me crazy..I am not able to figure out how to parse the response and use the status code..here is return result:
Web server listening at: http://0.0.0.0:3000
{}
Promise {
anybody have experience on using reqclient and handling its response? please share your ideas.
how to modify the createPeerAdmin script to use redis card store
[ ](https://chat.hyperledger.org/channel/composer?msg=GaTg6bXBx9z5bnDbN) @rthatcher Thank you very much! I have one more question with Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations). In a blockchain is peer to peer network, when one node or peer (Docker Container or PC) is down and then all network in blockchain is working find. And in this tutorial, How can we testing alice and bob work in this tutorial is mean, can I use composer-rest-server in 2 terminal, one is alice@trade-network and other is bob@trade-network? How we know when one peer is down or problem?
[ ](https://chat.hyperledger.org/channel/composer?msg=X3iELRvaE5kEfh8FS) @jon_s - I just had a quick look at the script and I _think_ it will work without modification. Are you seeing errors ? If there is a real problem I might be easier to disable redis, create the card, export, enable redis, then finally import the card.
[ ](https://chat.hyperledger.org/channel/composer?msg=jb84YZLr5vmB3ap7s) @dara652 - Composer and Fabric should be OK and continue to run if a Peer goes down. However in the MultiOrg configuration I think there is only one Orderer so that will cause problems. (Also I think there is an issue with Fabric in a multi-Orderer configuration if 1 goes down.)
In a Production scenario you would have some monitoring tools setup to detect any failed components.
@rthatcher Thank you, you save my life. But I try with your link that you provide to me: 'https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/ ', I am not clear with Prerequisites:
-Install Docker
-Install Composer
-Install Fabric Images (1.0.4)
-Install Fabric Tools (Use this) // This link is not working
Can you help me explain about this? How to install it?
Sorry for many question!
i have published a package saying passport-empty
use this composer-provider
"jwt": {
"provider": "jwt",
"module": "passport-empty",
"secretOrKey": "secret",
"authPath": "/auth/jwt",
"authScheme": "saml",
"callbackURL": "/auth/jwt/callback",
"successRedirect": "http://localhost:4200?loggedIn=true",
"failureRedirect": "/"
}
and once the api is up do a get call to /auth/jwt/callback
you will get set-cookie in header
use the cookie for other request from client
Hi ! I just updated all composer software, i deleted all docker images, i created a new project. But when i try "composer network start...." it return :
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: premature execution - chaincode (vaccinate-network:0.0.1) is being launched
Command failed
Or Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
Any idea ?
Hi!
If I create multiple REST server instances then how the data get stored and how one REST server can communicate with another REST server? Does all the REST server has the same data?
Has joined the channel.
hi team
i am trying to install composer ... so far i have done, 'npm install composer-cli', the install is successful but i cannot run the command 'composer' or 'composer-cli'
@vick do you have error "command not found" ?
yes, for composer-cli, i get command not found
but for composer it says that it is not currently installed
you have to add in path
ok, so i found the directory composer-cli in node_modules folder
but there's no bin folder in the composer-cli
You should run npm install -g composer-cli
ok, but i need a specific version, 0.16.x
npm install -g composer-cli@0.16.6?
yes
ok, i should do that in my home directory?
yes
After that, look where it's installed and add Path
ok i will try ... thank you
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=4DufWzm3C6TGiFBrv) @dara652 - this is not my tutorial and I have not followed it myself. But I think you would need to look at this link for installing the fabric tools and starting the fabric. From Step 4 onwards https://hyperledger.github.io/composer/latest/installing/development-tools.html
wow ... i am trying to follow that same tutorial
i am acutally stuck on this composer thing ... i left a question at the bottom of this tutorial in the comments
if anyone could provide some clarity would be much appreciated
[ ](https://chat.hyperledger.org/channel/composer?msg=GCGZ96q6P6WskdEFZ) @Pranoti - All composer REST server instances are connected to a Business Network running on the Fabric. If they are connected to the same Network they will both read/write the same data - assuming that they have the access to do so either through the Card that started the REST server or through the current card being used in a multi-user mode REST server.
[ ](https://chat.hyperledger.org/channel/composer?msg=z5E3vkTahKiY8GftP) @rthatcher So this means its done by hyperldger composer internally? we just need to create multiple REST server instances on the same composer network...
[ ](https://chat.hyperledger.org/channel/composer?msg=z5E3vkTahKiY8GftP) @rthatcher So this means its done by hyperldger composer internally [read/write data on the REST servers]? we just need to create multiple REST server instances on the same composer network...
[ ](https://chat.hyperledger.org/channel/composer?msg=z5E3vkTahKiY8GftP) @rthatcher So this means its done by hyperldger composer internally [read/write data on the REST servers and syncronization of the data on multiple servers]? we just need to create multiple REST server instances on the same composer network...
Has joined the channel.
Hey anyone out there. can you please answer this question. https://stackoverflow.com/questions/49799003/hyperledger-composer-for-blockchain-based-academic-certificates/49821884#49821884
Also How do I sign a transaction?
:pray:
[ ](https://chat.hyperledger.org/channel/composer?msg=qDRBBt6sCe6iCA7vq) @Pranoti - yes, but it is actually the Hyperledger Fabric that is doing the replication - the Distributed Ledger, a key feature of Blockchain.
[ ](https://chat.hyperledger.org/channel/composer?msg=KckFqAhzC9rrnMeh2) @rthatcher hmmm.. Hyperledger fabric is synchronising data of the ledger .. For REST servers I thought composer is doing the work.. So for REST server its using kafka/solo [whichever is defined in the fabric] algorithm too?? As the REST server is a different than the ledger, its main purpose is to store card and identities.. isn't it??
[ ](https://chat.hyperledger.org/channel/composer?msg=KckFqAhzC9rrnMeh2) @rthatcher hmmm.. Hyperledger fabric is synchronising data of the ledger .. For REST servers I thought composer is doing the work.. So for REST server its using kafka/solo [whichever is defined in the fabric] algorithm too?? As the REST server is a different than the ledger, its main purpose is to store card and identities.. isn't it?? Sorry to trouble you im just clearing my concepts.. :no_mouth:
[ ](https://chat.hyperledger.org/channel/composer?msg=4CMoojz66XwTx7ccF) @RahulSingh 6 - answered on Stack Overflow
[ ](https://chat.hyperledger.org/channel/composer?msg=uGmftaDFftBSHMqxv) @Pranoti - the only data stored on the REST server (and probably stored in a persistent datasource e.g. Mongo) are the Wallets/Cards. The "real" data (assets, transactions, participants) is stored on the Fabric.
REST Server, Playground, JavaScript API programs - all write 'real' data to the Fabric.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Cizj8BwmikjiGD3wW) Can we get some fresh news on this ? The links concerning passport-local aren't working :(
[ ](https://chat.hyperledger.org/channel/composer?msg=auLmmAznaWGwMAx3R) @rthatcher Okay great!! thanks :relaxed:
How to set composer rest server URL other than localhost?
[ ](https://chat.hyperledger.org/channel/composer?msg=enw8XxLzf6NzutB9G) @rthatcher Thank you:heart_eyes:
can anyone guide on the installation for composer? the website is not very clear, i am having issues after installed composer-cli, using npm, i can't run the command composer-cli
when installing composer is there a different flavour of it? like is the composer needed this one?;
https://getcomposer.org/installer
or is there a hyperledger specific composer?
can someone explain to me what should I do after I already have the .cto .js. .acl files that work on composer playground, I want to use fabric but amt a bit confused on the next steps I should take
[ ](https://chat.hyperledger.org/channel/composer?msg=ifv6CDvq8xYZwThtR) @MartinKrmer - I don't think the REST server Port is bound to any particular network device so you should be able to 'hit' it using the address of the machine where you start it.
Otherwise you could look at the file config.json in this folder which might help: /home/rthatcher/.nvm/versions/node/v8.9.0/lib/node_modules/composer-rest-server/server
Thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=hJijEWDfYdkBtLnLt) @vick - even though you install composer-cli - the command to test is `composer -v` Did you remember to use npm install *-g* ?
Has joined the channel.
yes i did @rthatcher
16-04-2018 15-42-49.png
[ ](https://chat.hyperledger.org/channel/composer?msg=MjQ6jjF2JEghtd6Zr) @vick - just for clarity this is the link for installing Hyperledger Composer https://hyperledger.github.io/composer/latest/installing/development-tools.html
(I guess that the other link is for composer php which is unreleated )
@rthatcher ok sure, so i've run the first command to install the composer-cli ... it ran without problems but i still cannot invoke it ..
[ ](https://chat.hyperledger.org/channel/composer?msg=3atSg29gc5qT4emHA) @vick - did you use root or sudo ?
sudo
Has left the channel.
@rthatcher i used sudo
Has joined the channel.
i am getting permissions problems if i run it wthout sudo
[ ](https://chat.hyperledger.org/channel/composer?msg=WPcyAfpGXdsXTfKPM) @vick - so just to prove the install worked OK you could try `sudo composer -v` But I would suggest read this section of the knowledge wiki whick covers npm permission problems. Hopefully you can uninstall with sudo and then re-install without it.
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues
Hi all - I've been trying to run the DeveloperTutorial for composer locally on Windows - using Docker for Windows. Everything seems to be going fine until the step where I start the network, then I get the error " Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP]"
Can anyone help? Thanks!
hello, is there any way I can store an image of a document in a transaction on hyperledger
[ ](https://chat.hyperledger.org/channel/composer?msg=wuB97ExaviQvY9ZHq) @ksant - Hyperledger Composer is not supported for Windows - so it is quite likely an environment issue. How did you run the startFabric.sh script? and did it complete without error?
You could try looking at the log of the Peer container for errors.
[ ](https://chat.hyperledger.org/channel/composer?msg=ecLiEMtxTxTY8dgcG) @cuevrob - there is a section in the knowledge wiki that covers storing Images in Fabric : https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--miscellaneous-items---fabric-uncategorised
[ ](https://chat.hyperledger.org/channel/composer?msg=4m4fuZfftSoZbHL9t) @rthatcher thank you man, I appreciate your quick response
@rthatcher I ran startFabric.sh and createPeerAdminCard.sh using a Windows Powershell - and yes both completed without an error. I can see the PeerAdmin card in the UI when I run composer-playground. The BN install also says it completed successfully, but the card still shows no business network attached. If I manually add the network to the card json in metadata.json, I can see the network in the UI. But I get the same "access denied" error while starting the network, no matter where it's done from.
@ksant just out of interest, those 2 scripts are bash scripts. Does powershell support bash scripts now ?
[ ](https://chat.hyperledger.org/channel/composer?msg=HMGAcYtyr9hszyC5H) @davidkel I have Git Bash installed too - so that's why it works, but yes all the scripts seem to run fine.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=wuB97ExaviQvY9ZHq) @ksant I am trying do the same and I have similar issues, maybe we can work together and share our experience to address the issues?
@kkermanizadeh yes sure - although I'm a newbie at this... I'm trying to use Ubuntu on Windows now, to see if I can get it working.
[ ](https://chat.hyperledger.org/channel/composer?msg=xnvcu8Q7FtjGzJam7) @ksant I was able to address this issue by creating a docker volume and map that to all docker images. I believe the issue is the file permission in windows, I have seen the similar issue when i was trying to run an Oracle image on windows.
[ ](https://chat.hyperledger.org/channel/composer?msg=Gfk2znreJncnqEkPR) @kkermanizadeh Interesting - can you share how you did that?
[ ](https://chat.hyperledger.org/channel/composer?msg=YJcihxmyYyB6LELdR) @ksant I was working on this tutorial: https://www.ibm.com/developerworks/cloud/library/cl-model-test-your-blockchain-network-with-hyperledger-composer-playground/index.html
hello guys. Im trying to deploy .bna file to IBM Bluemix Cloud by following this instruction: https://ibm-blockchain.github.io/platform-deployment/ but i am stucking by error while running this command: composer network deploy : REQUEST TIMEOUT and no valid response from any peers. Can anyone give me a help? Thanks guys
[ ](https://chat.hyperledger.org/channel/composer?msg=w77F36zTEaAP3Lo3g) when I was working on the part 3 of this tutorial, I created a docker volume as "composer", and copied the "fabric-dev-servers" content on this volume. I also modified the Docker-composer file to mount this volume on all images. I was able to bring all servers up and running.
[ ](https://chat.hyperledger.org/channel/composer?msg=hbqbbD6HuQScTg8qJ) here is the docker-compose.yml content:```
version: '2.2'
services:
ca.org1.example.com:
container_name: ca.org1.example.com
image: hyperledger/fabric-ca:x86_64-1.1.0
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca.org1.example.com
ports:
- "7054:7054"
command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/19ab65abbb04807dad12e4c0a9aaa6649e70868e3abd0217a322d89e47e1a6ae_sk -b admin:adminpw -d'
volumes:
- composer/:/etc/hyperledger/
orderer.example.com:
container_name: orderer.example.com
image: hyperledger/fabric-orderer:x86_64-1.1.0
environment:
- ORDERER_GENERAL_LOGLEVEL=debug
- ORDERER_GENERAL_LISTENADDRESS=0.0.0.0
- ORDERER_GENERAL_GENESISMETHOD=file
- ORDERER_GENERAL_GENESISFILE=/etc/hyperledger/configtx/composer-genesis.block
- ORDERER_GENERAL_LOCALMSPID=OrdererMSP
- ORDERER_GENERAL_LOCALMSPDIR=/etc/hyperledger/msp/orderer/msp
working_dir: /opt/gopath/src/github.com/hyperledger/fabric
command: orderer
ports:
- 7050:7050
volumes:
- composer/:/etc/hyperledger/
peer0.org1.example.com:
container_name: peer0.org1.example.com
image: hyperledger/fabric-peer:x86_64-1.1.0
environment:
- CORE_LOGGING_LEVEL=debug
- CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
- CORE_VM_ENDPOINT=tcp://192.168.99.100:2376
- CORE_PEER_ID=peer0.org1.example.com
- CORE_PEER_ADDRESS=peer0.org1.example.com:7051
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=composer_default
- CORE_PEER_LOCALMSPID=Org1MSP
- CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/peer/msp
- CORE_LEDGER_STATE_STATEDATABASE=CouchDB
- CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb:5984
working_dir: /opt/gopath/src/github.com/hyperledger/fabric
command: peer node start
ports:
- 7051:7051
- 7053:7053
volumes:
- composer/:/etc/hyperledger/
depends_on:
- orderer.example.com
- couchdb
couchdb:
container_name: couchdb
image: hyperledger/fabric-couchdb:x86_64-0.4.6
ports:
- 5984:5984
environment:
DB_URL: http://localhost:5984/member_db
volumes:
composer:
external: true
``` another point for windows : you need to set CORE_VM_ENDPOINT=tcp://192.168.99.100:2376```
```
[ ](https://chat.hyperledger.org/channel/composer?msg=34fhnBXkXeHC2zvaa) I think it will be great if we can document the step by step approach and share and compare with each other and also if anyone else is interested can join the conversation.
[ ](https://chat.hyperledger.org/channel/composer?msg=YJcihxmyYyB6LELdR) @ksant I was working on this tutorial: https://www.ibm.com/developerworks/cloud/library/cl-model-test-your-blockchain-network-with-hyperledger-composer-playground/index.html
when I was working on the part 3 of this tutorial, I created a docker volume as "composer", and copied the "fabric-dev-servers" content on this volume. I also modified the Docker-composer file to mount this volume on all images. I was able to bring all servers up and running.
here is the docker-compose.yml content:
```
version: '2.2'
services:
ca.org1.example.com:
container_name: ca.org1.example.com
image: hyperledger/fabric-ca:x86_64-1.1.0
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca.org1.example.com
ports:
- "7054:7054"
command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/19ab65abbb04807dad12e4c0a9aaa6649e70868e3abd0217a322d89e47e1a6ae_sk -b admin:adminpw -d'
volumes:
- composer/:/etc/hyperledger/
orderer.example.com:
container_name: orderer.example.com
image: hyperledger/fabric-orderer:x86_64-1.1.0
environment:
- ORDERER_GENERAL_LOGLEVEL=debug
- ORDERER_GENERAL_LISTENADDRESS=0.0.0.0
- ORDERER_GENERAL_GENESISMETHOD=file
- ORDERER_GENERAL_GENESISFILE=/etc/hyperledger/configtx/composer-genesis.block
- ORDERER_GENERAL_LOCALMSPID=OrdererMSP
- ORDERER_GENERAL_LOCALMSPDIR=/etc/hyperledger/msp/orderer/msp
working_dir: /opt/gopath/src/github.com/hyperledger/fabric
command: orderer
ports:
- 7050:7050
volumes:
- composer/:/etc/hyperledger/
peer0.org1.example.com:
container_name: peer0.org1.example.com
image: hyperledger/fabric-peer:x86_64-1.1.0
environment:
- CORE_LOGGING_LEVEL=debug
- CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
- CORE_VM_ENDPOINT=tcp://192.168.99.100:2376
- CORE_PEER_ID=peer0.org1.example.com
- CORE_PEER_ADDRESS=peer0.org1.example.com:7051
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=composer_default
- CORE_PEER_LOCALMSPID=Org1MSP
- CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/peer/msp
- CORE_LEDGER_STATE_STATEDATABASE=CouchDB
- CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb:5984
working_dir: /opt/gopath/src/github.com/hyperledger/fabric
command: peer node start
ports:
- 7051:7051
- 7053:7053
volumes:
- composer/:/etc/hyperledger/
depends_on:
- orderer.example.com
- couchdb
couchdb:
container_name: couchdb
image: hyperledger/fabric-couchdb:x86_64-0.4.6
ports:
- 5984:5984
environment:
DB_URL: http://localhost:5984/member_db
volumes:
composer:
external: true
```
another point for windows : you need to set CORE_VM_ENDPOINT=tcp://192.168.99.100:2376```
I think it will be great if we document the steps and share and compare, and finally come up with a reproduce-able steps. if anyone else is interested can join the conversation.
Has joined the channel.
Hi, Can anyone point me to the Perishable_Goods-UI source-code showed in this presentation by Simon: https://www.youtube.com/watch?v=gAxK6zYrfxI Hope @SimonHan is there.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=xqHSc4CBXizbmdTbC) @kkermanizadeh It failed for me within Ubuntu for Windows too. Same step. Everything else worked fine until then.
Hi all - have a question about auth using composer
Hi all - have a question about auth using composer-rest-server in multi user mode
I want to figure out if there is a way to exclusively map external users (for simplicity basic auth usernames) to composer identities? E.g. if I have external user u1, u2, u3 and composer participants with ids id1, id2 id3 I want u1 to map to id1, u2 to id2 and u3 to id3 mutually exclusively - is this possible?
Hello!
We build highload service that uses Hyperledger Fabric. Our backend system consists of HF blockchain network, several microservices (node js) which communicate with blockchain via Hyperledger Composer, message broker for communication between microservices.
As you have already probably guessed, Fabric and Composer are our bottlenecks. I've read article "Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains" by IBD where they report about throughput of ~3000 transactions per second. And I'm trying to achieve this result. I've started performing load testing.
Fabric network:
```
{
fabric001: {
cas: [],
peers: ["anchor@peer1st.main"],
orderers: ["orderer1st.orderer"],
zookeepers: ["zookeeper1st"],
kafkas: ["kafka1st"]
},
fabric002: {
cas: [],
peers: ["worker@peer2nd.main"],
orderers: ["orderer2nd.orderer"],
zookeepers: ["zookeeper2nd"],
kafkas: ["kafka2nd"]
},
fabric003: {
cas: [],
peers: ["worker@peer3rd.main"],
orderers: ["orderer3rd.orderer"],
zookeepers: ["zookeeper3rd"],
kafkas: ["kafka3rd"]
},
fabric004: {
cas: ["ca1st.main"],
peers: [],
orderers: ["orderer4th.orderer"],
zookeepers: ["zookeeper4th"],
kafkas: ["kafka4th"]
}
}
```
Hello!
We build highload service that uses Hyperledger Fabric. Our backend system consists of HF blockchain network, several microservices (node js) which communicate with blockchain via Hyperledger Composer, message broker for communication between microservices.
As you have already probably guessed, Fabric and Composer are our bottlenecks. I've read article "Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains" by IBD where they report about throughput of ~3000 transactions per second. And I'm trying to achieve this result. I've started performing load testing.
Fabric network:
```
{
fabric001: {
cas: [],
peers: ["anchor@peer1st.main"],
orderers: ["orderer1st.orderer"],
zookeepers: ["zookeeper1st"],
kafkas: ["kafka1st"]
},
fabric002: {
cas: [],
peers: ["worker@peer2nd.main"],
orderers: ["orderer2nd.orderer"],
zookeepers: ["zookeeper2nd"],
kafkas: ["kafka2nd"]
},
fabric003: {
cas: [],
peers: ["worker@peer3rd.main"],
orderers: ["orderer3rd.orderer"],
zookeepers: ["zookeeper3rd"],
kafkas: ["kafka3rd"]
},
fabric004: {
cas: ["ca1st.main"],
peers: [],
orderers: ["orderer4th.orderer"],
zookeepers: ["zookeeper4th"],
kafkas: ["kafka4th"]
}
}
```
Fabric config:
```
BatchTimeout: 0.2s
BatchSize:
MaxMessageCount: 10
AbsoluteMaxBytes: 98 MB
PreferredMaxBytes: 512 KB
TLS disabled
```
Hello!
We build highload service that uses Hyperledger Fabric. Our backend system consists of HF blockchain network, several microservices (node js) which communicate with blockchain via Hyperledger Composer, message broker for communication between microservices.
As you have already probably guessed, Fabric and Composer are our bottlenecks. I've read article "Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains" by IBD where they report about throughput of ~3000 transactions per second. And I'm trying to achieve this result. I've started performing load testing.
Fabric network:
```
{
fabric001: {
cas: [],
peers: ["anchor@peer1st.main"],
orderers: ["orderer1st.orderer"],
zookeepers: ["zookeeper1st"],
kafkas: ["kafka1st"]
},
fabric002: {
cas: [],
peers: ["worker@peer2nd.main"],
orderers: ["orderer2nd.orderer"],
zookeepers: ["zookeeper2nd"],
kafkas: ["kafka2nd"]
},
fabric003: {
cas: [],
peers: ["worker@peer3rd.main"],
orderers: ["orderer3rd.orderer"],
zookeepers: ["zookeeper3rd"],
kafkas: ["kafka3rd"]
},
fabric004: {
cas: ["ca1st.main"],
peers: [],
orderers: ["orderer4th.orderer"],
zookeepers: ["zookeeper4th"],
kafkas: ["kafka4th"]
}
}
```
Fabric config:
```
BatchTimeout: 0.2s
BatchSize:
MaxMessageCount: 10
AbsoluteMaxBytes: 98 MB
PreferredMaxBytes: 512 KB
TLS disabled
```
fabric001-004 - aws ec2 instances of t2.xlarge type. Initially, I used m5.4xlarge, but it costs a lot and CPU usage was always low even when Fabric starts to fail.
Hyperledger Fabric v1.1. Hypeledger Composer v0.19.0.
First of all I decided to test request to the state of the ledger (CouchDB). Blockhcain is empty, only system data and few participant. Direct query requests to the CouchDB open port are very fast (~150 ms). My microservice connects to the Fabric by establishing a permanent connection for before issued identity. Requests take up ~500 ms in our system without high load. Half of this time accounts on message broker (AWS SQS is really slow). For load testing I'm using tool YandexTank. Load is going smoothly without latency increasing up to ~70 requests per second. Then latency stats degrade and at some point, chaincode starts return error messages. You can see test results here https://overload.yandex.net/97372#tab=test_data&tags=&plot_groups=main&machines=&metrics=&slider_start=1523822254&slider_end=1523822400 . There are two error messages that I received during different load tests:
1. [Hyperledger-Composer] undefined:HLFQueryHandler :queryChaincode() query payload returned an error: Error: 2 UNKNOWN: error executing chaincode: failed to execute transaction: timeout expired while executing transaction
2. HLFQueryHandler :queryChaincode() query payload returned an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'txBuilder' and the identifier '5606acbada327a8ef33134e601f990076872b31a3dda5ec0a983e04915d16007', has not been registered
Chaincode container does not restart by itself, but it from this time it doesn't work well. Sometimes I can't ping it, sometimes I can, but latency is terrible. Only restart of the peer container can help. (I remind you that request to the ledger goes through one peer, that's not good, but it's not the point of my investigation).
The second error is really strange because this is the only identity I use and it works before chaincode starts to fail. And it works after I restart peer.
Also, I saw that during applying load CPU usage of the peer, chaicode and CouchDB are the most (as expected). I'm in the middle of a configuaring monitoring system for my blockchain network and soon I will be able to share more info.
Any thoughts? Maybe I should report this problem somewhere else?
Hello!
We build highload service that uses Hyperledger Fabric. Our backend system consists of HF blockchain network, several microservices (node js) which communicate with blockchain via Hyperledger Composer, message broker for communication between microservices.
As you have already probably guessed, Fabric and Composer are our bottlenecks. I've read article "Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains" by IBD where they report about throughput of ~3000 transactions per second. And I'm trying to achieve this result. I've started performing load testing.
Fabric network:
```
{
fabric001: {
cas: [],
peers: ["anchor@peer1st.main"],
orderers: ["orderer1st.orderer"],
zookeepers: ["zookeeper1st"],
kafkas: ["kafka1st"]
},
fabric002: {
cas: [],
peers: ["worker@peer2nd.main"],
orderers: ["orderer2nd.orderer"],
zookeepers: ["zookeeper2nd"],
kafkas: ["kafka2nd"]
},
fabric003: {
cas: [],
peers: ["worker@peer3rd.main"],
orderers: ["orderer3rd.orderer"],
zookeepers: ["zookeeper3rd"],
kafkas: ["kafka3rd"]
},
fabric004: {
cas: ["ca1st.main"],
peers: [],
orderers: ["orderer4th.orderer"],
zookeepers: ["zookeeper4th"],
kafkas: ["kafka4th"]
}
}
```
Fabric config:
```
BatchTimeout: 0.2s
BatchSize:
MaxMessageCount: 10
AbsoluteMaxBytes: 98 MB
PreferredMaxBytes: 512 KB
TLS disabled
```
fabric001-004 - aws ec2 instances of t2.xlarge type. Initially, I used m5.4xlarge, but it costs a lot and CPU usage was always low even when Fabric starts to fail.
Hyperledger Fabric v1.1. Hypeledger Composer v0.19.0.
First of all I decided to test request to the state of the ledger (CouchDB). Blockhcain is empty, only system data and few participant. Direct query requests to the CouchDB open port are very fast (~150 ms). My microservice connects to the Fabric by establishing a permanent connection for before issued identity. Requests take up 500 ms in our system without high load. Half of this time accounts on message broker (AWS SQS is really slow). For load testing I'm using tool YandexTank. Load is going smoothly without latency increasing up to 70 requests per second. Then latency stats degrade and at some point, chaincode starts return error messages. You can see test results here https://overload.yandex.net/97372#tab=test_data&tags=&plot_groups=main&machines=&metrics=&slider_start=1523822254&slider_end=1523822400 . There are two error messages that I received during different load tests:
1. [Hyperledger-Composer] undefined:HLFQueryHandler :queryChaincode() query payload returned an error: Error: 2 UNKNOWN: error executing chaincode: failed to execute transaction: timeout expired while executing transaction
2. HLFQueryHandler :queryChaincode() query payload returned an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'txBuilder' and the identifier '5606acbada327a8ef33134e601f990076872b31a3dda5ec0a983e04915d16007', has not been registered
Chaincode container does not restart by itself, but it from this time it doesn't work well. Sometimes I can't ping it, sometimes I can, but latency is terrible. Only restart of the peer container can help. (I remind you that request to the ledger goes through one peer, that's not good, but it's not the point of my investigation).
The second error is really strange because this is the only identity I use and it works before chaincode starts to fail. And it works after I restart peer.
Also, I saw that during applying load CPU usage of the peer, chaicode and CouchDB are the most (as expected). I'm in the middle of a configuaring monitoring system for my blockchain network and soon I will be able to share more info.
Any thoughts? Maybe I should report this problem somewhere else?
Hello!
We build highload service that uses Hyperledger Fabric. Our backend system consists of HF blockchain network, several microservices (node js) which communicate with blockchain via Hyperledger Composer, message broker for communication between microservices.
As you have already probably guessed, Fabric and Composer are our bottlenecks. I've read article "Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains" by IBD where they report about throughput of ~3000 transactions per second. And I'm trying to achieve this result. I've started performing load testing.
Fabric network:
```
{
fabric001: {
cas: [],
peers: ["anchor@peer1st.main"],
orderers: ["orderer1st.orderer"],
zookeepers: ["zookeeper1st"],
kafkas: ["kafka1st"]
},
fabric002: {
cas: [],
peers: ["worker@peer2nd.main"],
orderers: ["orderer2nd.orderer"],
zookeepers: ["zookeeper2nd"],
kafkas: ["kafka2nd"]
},
fabric003: {
cas: [],
peers: ["worker@peer3rd.main"],
orderers: ["orderer3rd.orderer"],
zookeepers: ["zookeeper3rd"],
kafkas: ["kafka3rd"]
},
fabric004: {
cas: ["ca1st.main"],
peers: [],
orderers: ["orderer4th.orderer"],
zookeepers: ["zookeeper4th"],
kafkas: ["kafka4th"]
}
}
```
Fabric config:
```
BatchTimeout: 0.2s
BatchSize:
MaxMessageCount: 10
AbsoluteMaxBytes: 98 MB
PreferredMaxBytes: 512 KB
TLS disabled
```
fabric001-004 - aws ec2 instances of t2.xlarge type. Initially, I used m5.4xlarge, but it costs a lot and CPU usage was always low even when Fabric starts to fail.
Hyperledger Fabric v1.1. Hypeledger Composer v0.19.0.
First of all I decided to test request to the state of the ledger (CouchDB). Blockhcain is empty, only system data and few participant. Direct query requests to the CouchDB open port are very fast (~150 ms). My microservice connects to the Fabric by establishing a permanent connection for before issued identity. Requests take up 500 ms in our system without high load. Half of this time accounts on message broker (AWS SQS is really slow). For load testing I'm using tool YandexTank. Load is going smoothly without latency increasing up to 70 requests per second. Then latency stats degrade and at some point, chaincode starts return error messages. You can see test results [here](https://overload.yandex.net/97372#tab=test_data&tags=&plot_groups=main&machines=&metrics=&slider_start=1523822254&slider_end=1523822400). There are two error messages that I received during different load tests:
1. [Hyperledger-Composer] undefined:HLFQueryHandler :queryChaincode() query payload returned an error: Error: 2 UNKNOWN: error executing chaincode: failed to execute transaction: timeout expired while executing transaction
2. HLFQueryHandler :queryChaincode() query payload returned an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'txBuilder' and the identifier '5606acbada327a8ef33134e601f990076872b31a3dda5ec0a983e04915d16007', has not been registered
Chaincode container does not restart by itself, but it from this time it doesn't work well. Sometimes I can't ping it, sometimes I can, but latency is terrible. Only restart of the peer container can help. (I remind you that request to the ledger goes through one peer, that's not good, but it's not the point of my investigation).
The second error is really strange because this is the only identity I use and it works before chaincode starts to fail. And it works after I restart peer.
Also, I saw that during applying load CPU usage of the peer, chaicode and CouchDB are the most (as expected). I'm in the middle of a configuaring monitoring system for my blockchain network and soon I will be able to share more info.
Any thoughts? Maybe I should report this problem somewhere else?
Hello!
We build highload service that uses Hyperledger Fabric. Our backend system consists of HF blockchain network, several microservices (node js) which communicate with blockchain via Hyperledger Composer, message broker for communication between microservices.
As you have probably guessed, Fabric and Composer are our bottlenecks. I've read article "Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains" by IBD where they report about throughput of ~3000 transactions per second. And I'm trying to achieve this result. I've started performing load testing.
Fabric network:
```
{
fabric001: {
cas: [],
peers: ["anchor@peer1st.main"],
orderers: ["orderer1st.orderer"],
zookeepers: ["zookeeper1st"],
kafkas: ["kafka1st"]
},
fabric002: {
cas: [],
peers: ["worker@peer2nd.main"],
orderers: ["orderer2nd.orderer"],
zookeepers: ["zookeeper2nd"],
kafkas: ["kafka2nd"]
},
fabric003: {
cas: [],
peers: ["worker@peer3rd.main"],
orderers: ["orderer3rd.orderer"],
zookeepers: ["zookeeper3rd"],
kafkas: ["kafka3rd"]
},
fabric004: {
cas: ["ca1st.main"],
peers: [],
orderers: ["orderer4th.orderer"],
zookeepers: ["zookeeper4th"],
kafkas: ["kafka4th"]
}
}
```
Fabric config:
```
BatchTimeout: 0.2s
BatchSize:
MaxMessageCount: 10
AbsoluteMaxBytes: 98 MB
PreferredMaxBytes: 512 KB
TLS disabled
```
fabric001-004 - aws ec2 instances of t2.xlarge type. Initially, I used m5.4xlarge, but it costs a lot and CPU usage was always low even when Fabric starts to fail.
Hyperledger Fabric v1.1. Hypeledger Composer v0.19.0.
First of all I decided to test request to the state of the ledger (CouchDB). Blockhcain is empty, only system data and few participant. Direct query requests to the CouchDB open port are very fast (~150 ms). My microservice connects to the Fabric by establishing a permanent connection for before issued identity. Requests take up 500 ms in our system without high load. Half of this time accounts on message broker (AWS SQS is really slow). For load testing I'm using tool YandexTank. Load is going smoothly without latency increasing up to 70 requests per second. Then latency stats degrade and at some point, chaincode starts return error messages. You can see test results [here](https://overload.yandex.net/97372#tab=test_data&tags=&plot_groups=main&machines=&metrics=&slider_start=1523822254&slider_end=1523822400). There are two error messages that I received during different load tests:
1. [Hyperledger-Composer] undefined:HLFQueryHandler :queryChaincode() query payload returned an error: Error: 2 UNKNOWN: error executing chaincode: failed to execute transaction: timeout expired while executing transaction
2. HLFQueryHandler :queryChaincode() query payload returned an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'txBuilder' and the identifier '5606acbada327a8ef33134e601f990076872b31a3dda5ec0a983e04915d16007', has not been registered
Chaincode container does not restart by itself, but it from this time it doesn't work well. Sometimes I can't ping it, sometimes I can, but latency is terrible. Only restart of the peer container can help. (I remind you that request to the ledger goes through one peer, that's not good, but it's not the point of my investigation).
The second error is really strange because this is the only identity I use and it works before chaincode starts to fail. And it works after I restart peer.
Also, I saw that during applying load CPU usage of the peer, chaicode and CouchDB are the most (as expected). I'm in the middle of a configuaring monitoring system for my blockchain network and soon I will be able to share more info.
Any thoughts? Maybe I should report this problem somewhere else?
Hello!
We build highload service that uses Hyperledger Fabric. Our backend system consists of HF blockchain network, several microservices (node js) which communicate with blockchain via Hyperledger Composer, message broker for communication between microservices.
As you have probably guessed, Fabric and Composer are our bottlenecks. I've read article "Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains" by IBD where they report about throughput of ~3000 transactions per second. And I'm trying to achieve this result. I've started performing load testing.
Fabric network:
```
{
fabric001: {
cas: [],
peers: ["anchor@peer1st.main"],
orderers: ["orderer1st.orderer"],
zookeepers: ["zookeeper1st"],
kafkas: ["kafka1st"]
},
fabric002: {
cas: [],
peers: ["worker@peer2nd.main"],
orderers: ["orderer2nd.orderer"],
zookeepers: ["zookeeper2nd"],
kafkas: ["kafka2nd"]
},
fabric003: {
cas: [],
peers: ["worker@peer3rd.main"],
orderers: ["orderer3rd.orderer"],
zookeepers: ["zookeeper3rd"],
kafkas: ["kafka3rd"]
},
fabric004: {
cas: ["ca1st.main"],
peers: [],
orderers: ["orderer4th.orderer"],
zookeepers: ["zookeeper4th"],
kafkas: ["kafka4th"]
}
}
```
Fabric config:
```
BatchTimeout: 0.2s
BatchSize:
MaxMessageCount: 10
AbsoluteMaxBytes: 98 MB
PreferredMaxBytes: 512 KB
TLS disabled
```
fabric001-004 - aws ec2 instances of t2.xlarge type. Initially, I used m5.4xlarge, but it costs a lot and CPU usage was always low even when Fabric starts to fail.
Hyperledger Fabric v1.1. Hypeledger Composer v0.19.0.
First of all I decided to test request to the state of the ledger (CouchDB). Blockhcain is empty, only system data and few participant. Direct query requests to the CouchDB open port are very fast (~150 ms). My microservice connects to the Fabric by establishing a permanent connection for before issued identity. Requests take up 500 ms in our system without high load. Half of this time accounts for message broker (AWS SQS is really slow). For load testing I'm using tool YandexTank. Load is going smoothly without latency increasing up to 70 requests per second. Then latency stats degrade and at some point, chaincode starts return error messages. You can see test results [here](https://overload.yandex.net/97372#tab=test_data&tags=&plot_groups=main&machines=&metrics=&slider_start=1523822254&slider_end=1523822400). There are two error messages that I received during different load tests:
1. [Hyperledger-Composer] undefined:HLFQueryHandler :queryChaincode() query payload returned an error: Error: 2 UNKNOWN: error executing chaincode: failed to execute transaction: timeout expired while executing transaction
2. HLFQueryHandler :queryChaincode() query payload returned an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'txBuilder' and the identifier '5606acbada327a8ef33134e601f990076872b31a3dda5ec0a983e04915d16007', has not been registered
Chaincode container does not restart by itself, but it from this time it doesn't work well. Sometimes I can't ping it, sometimes I can, but latency is terrible. Only restart of the peer container can help. (I remind you that request to the ledger goes through one peer, that's not good, but it's not the point of my investigation).
The second error is really strange because this is the only identity I use and it works before chaincode starts to fail. And it works after I restart peer.
Also, I saw that during applying load CPU usage of the peer, chaicode and CouchDB are the most (as expected). I'm in the middle of a configuaring monitoring system for my blockchain network and soon I will be able to share more info.
Any thoughts? Maybe I should report this problem somewhere else?
Hello!
We build highload service that uses Hyperledger Fabric. Our backend system consists of HF blockchain network, several microservices (node js) which communicate with blockchain via Hyperledger Composer, message broker for communication between microservices.
As you have probably guessed, Fabric and Composer are our bottlenecks. I've read article "Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains" by IBD where they report about throughput of ~3000 transactions per second. And I'm trying to achieve this result. I've started performing load testing.
Fabric network:
```
{
fabric001: {
cas: [],
peers: ["anchor@peer1st.main"],
orderers: ["orderer1st.orderer"],
zookeepers: ["zookeeper1st"],
kafkas: ["kafka1st"]
},
fabric002: {
cas: [],
peers: ["worker@peer2nd.main"],
orderers: ["orderer2nd.orderer"],
zookeepers: ["zookeeper2nd"],
kafkas: ["kafka2nd"]
},
fabric003: {
cas: [],
peers: ["worker@peer3rd.main"],
orderers: ["orderer3rd.orderer"],
zookeepers: ["zookeeper3rd"],
kafkas: ["kafka3rd"]
},
fabric004: {
cas: ["ca1st.main"],
peers: [],
orderers: ["orderer4th.orderer"],
zookeepers: ["zookeeper4th"],
kafkas: ["kafka4th"]
}
}
```
Fabric config:
```
BatchTimeout: 0.2s
BatchSize:
MaxMessageCount: 10
AbsoluteMaxBytes: 98 MB
PreferredMaxBytes: 512 KB
TLS disabled
```
fabric001-004 - aws ec2 instances of t2.xlarge type. Initially, I used m5.4xlarge, but it costs a lot and CPU usage was always low even when Fabric starts to fail.
Hyperledger Fabric v1.1. Hypeledger Composer v0.19.0.
First of all I decided to test request to the state of the ledger (CouchDB). Blockhcain is empty, only system data and few participant. Direct query requests to the CouchDB open port are very fast (~150 ms). My microservice connects to the Fabric by establishing a permanent connection for before issued identity. Requests take up 500 ms in our system without high load. Half of this time accounts for message broker (AWS SQS is really slow). For load testing I'm using tool YandexTank. Load is going smoothly without latency increasing up to 70 requests per second. Then latency stats degrade and at some point, chaincode starts return error messages. You can see test results [here](https://overload.yandex.net/97372#tab=test_data&tags=&plot_groups=main&machines=&metrics=&slider_start=1523822254&slider_end=1523822400). There are two error messages that I received during different load tests:
1. [Hyperledger-Composer] undefined:HLFQueryHandler :queryChaincode() query payload returned an error: Error: 2 UNKNOWN: error executing chaincode: failed to execute transaction: timeout expired while executing transaction
2. HLFQueryHandler :queryChaincode() query payload returned an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'txBuilder' and the identifier '5606acbada327a8ef33134e601f990076872b31a3dda5ec0a983e04915d16007', has not been registered
Chaincode container does not restart by itself, but from this time it doesn't work well. Sometimes I can't ping it, sometimes I can, but latency is terrible. Only restart of the peer container can help. (I remind you that request to the ledger goes through one peer, that's not good, but it's not the point of my investigation).
The second error is really strange because this is the only identity I use and it works before chaincode starts to fail. And it works after I restart peer.
Also, I saw that during applying load CPU usage of the peer, chaicode and CouchDB are the most (as expected). I'm in the middle of a configuaring monitoring system for my blockchain network and soon I will be able to share more info.
Any thoughts? Maybe I should report this problem somewhere else?
Has joined the channel.
Has joined the channel.
No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher
I am getting this issue on ubuntu
is there a recent commit which broke it? or that I am missing something?
hi, i have a question
how to delete sampleparticipant of my participant list?
I modified the model file with my custom participants, but sampleParticipant its visible
@krabradosty You might be better off raising a stackoverflow question with the details you have written here so that this information in this chat channel isn't lost. It's not possible to say where the problem may be, those error messages are certainly not expected. It could be issues with the peer or the shim in the chaincode for example, so logs showing the behaviour would be need (peer and chaincode) to further debug.
@krabradosty You might be better off raising a stackoverflow question with the details you have written here so that this information in this chat channel isn't lost. It's not possible to say where the problem may be, those error messages are certainly not expected. It could be issues with the peer or the shim in the chaincode for example, so logs showing the behaviour would be needed (peer and chaincode) to further debug.
[ ](https://chat.hyperledger.org/channel/composer?msg=wuB97ExaviQvY9ZHq) I was able to fix this by adding one line in the startFabric.sh script. Followed the instructions from this: https://github.com/hyperledger/composer/issues/3735. Able to complete the Developer Tutorial now.
Has joined the channel.
Anyone around with familiarity of the composer-cucumber-steps library? I'm wondering if this is going to work for my use case or not and could use some advice. thanks
Has joined the channel.
I am trying to instantiate the network on IBM cloud's hyperledge fabric using following command
sudo composer network start -c adminCardOrg1 -A admin -C ./org1credentials/admin-pub.pem -A admin -C ./org2credentials/admin-pub.pem -n marble-network -V 0.2.4-deploy.0 -o endorsementPolicyFile=./endorsement-policy.json -l DEBUG
sudo composer network start -c adminCardOrg1 -A admin -C ./org1credentials/admin-pub.pem -A admin -C ./org2credentials/admin-pub.pem -n marble-network -V 0.2.4-deploy.0 -o endorsementPolicyFile=./endorsement-policy.json -l DEBUG
sudo composer network start -c adminCardOrg1 -A admin -C ./org1credentials/admin-pub.pem -A admin -C ./org2credentials/admin-pub.pem -n marble-network -V 0.2.4-deploy.0 -o endorsementPolicyFile=./endorsement-policy.json -l DEBUG
sudo composer network start -c adminCardOrg1 -A admin -C ./org1credentials/admin-pub.pem -A admin -C ./org2credentials/admin-pub.pem -n marble-network -V 0.2.4-deploy.0 -o endorsementPolicyFile=./endorsement-policy.json -l DEBUG
sudo composer network start -c adminCardOrg1 -A admin -C ./org1credentials/admin-pub.pem -A admin -C ./org2credentials/admin-pub.pem -n marble-network -V 0.2.4-deploy.0 -o endorsementPolicyFile=./endorsement-policy.json -l DEBUG
sudo composer network start -c adminCardOrg1 -A admin -C ./org1credentials/admin-pub.pem -A admin -C ./org2credentials/admin-pub.pem -n marble-network -V 0.2.4-deploy.0 -o endorsementPolicyFile=./endorsement-policy.json -l DEBUG
sudo composer network start -c adminCardOrg1 -A admin -C ./org1credentials/admin-pub.pem -A admin -C ./org2credentials/admin-pub.pem -n marble-network -V 0.2.4-deploy.0 -o endorsementPolicyFile=./endorsement-policy.json -l DEBUG
but getting following error
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (marble-network:0.2.4-deploy.0))
can anyone tell me what wrong am I doing?
Has joined the channel.
Hi All.After i use composer to upgrade my network,I can't see my old asset.Who can help me to see my old asset
how do i connect to redis wallet from composer rest server docker container
what configuration changes are required
in redis options
Hi;
does someone know to provide the composer multiuser REST server with a token if you use a custom login?
Hello,
I have generated two participants using command line. I was successfully able to access network using those participants. But when I stopped fabric and started it again I am getting following error while accessing network using those participants.
Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'wills' and the identifier 'fe29a68705a3b2e2b75df9aa9cb1fe06c353b5db6e18a31d5a71543ff30373c2', has not been registered
It would be great if anyone can help
Hello,
I have generated two participants using command line. I was successfully able to access network using those participants. But when I stopped fabric and started it again I am getting following error while accessing network using those participants.
Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'wills' and the identifier 'fe29a68705a3b2e2b75df9aa9cb1fe06c353b5db6e18a31d5a71543ff30373c2', has not been registered
Participants are deleted once fabric is stopped but cards are there and though I am getting error. Is there any way to stop deletion of data on fabric stop?
It would be great if anyone can help.
Hello, how i can know wath version of fabric is excuting ?
hello everyone,
Hello everyone,
I am new here as well as in composer,
I am installing the network with the command
```composer network install -a myapp.bna -c PeerAdmin@hlfv1```
The error is coming like
```Error: Error trying install business network. Error: The business network is already installed on all the peers```
Please anyone tell me, how to resolve this.
Thanks
Hello everyone,
I am new here as well as in composer,
I am installing the network with the command
composer network install -a myapp.bna -c PeerAdmin@hlfv1
The error is coming like
Error: Error trying install business network. Error: The business network is already installed on all the peers
Please anyone tell me, how to resolve this.
Thanks
Hello everyone,
I am new here as well as in composer,
I am installing the network with the command
composer network install -a myapp.bna -c PeerAdmin@hlfv1
The error is coming like
Error: Error trying install business network. Error: The business network is already installed on all the peers
Please anyone tell me, how to resolve this.
Thanks
Hello everyone,
I am new here as well as in composer,
I am installing the network with the command
composer network install -a myapp.bna -c PeerAdmin@hlfv1
The error is coming like
Error: Error trying install business network. Error: The business network is already installed on all the peers
Please anyone tell me, how to resolve this.
Thanks
this is already installed
try to ping network
@hrt031293 this mean that you already run this command. If you want update your network, you can run "./startfabric.sh" to delete your network and rerun this command
composer card list
then??
composer network ping -c
Hello I have a fully functionnal business Network deployed on a Fabric network, when i submit data through the composer rest server, and I view the peer container logs I get the message
"UTC [kvledger] CommitWithPvtData -> INFO 052 Channel [composerchannel]: Committed block [6] with 1 transaction(s)".
I am looking for a quick way to view my block's content. Any ideas on how to do so ?
you could try using https://github.com/hyperledger/blockchain-explorer
Hello everybody ! When i run "composer network start ..." i have this error :
Starting business network vaccinate-network at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
Someone can help me ?
I have composer 19.1 and fabric 1.1
how to view fabric blocks
is it same historian
[ ](https://chat.hyperledger.org/channel/composer?msg=tQjQLEkkpExz86eZe) @Poneey - if you use `docker ps` you should see version numbers on the image name
@rthatcher Thank, i found after. I have fabric 1.1
[ ](https://chat.hyperledger.org/channel/composer?msg=QCN6gJEJNoa2C5uJ9) @HoneyShah - This answer from Stack Overflow should help: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
[ ](https://chat.hyperledger.org/channel/composer?msg=ZbFacnGaaxKY5cacX) @rthatcher
I use the startFabric.sh in the fabric-tools folder, so, yes only 1 peer.
@jon_s - to view the 'actual blocks' you want to use the blockchain-explorer
is there any API endpoint
which i can use to show user
[ ](https://chat.hyperledger.org/channel/composer?msg=tkWXkFcJ6MdsxaFPX) @jon_s - if you take the Google OAuth2 tutorial as a template:
https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
The you would need to
1. add an additional NPM install to the build of the custom Rest docker image (composer-wallet-redis)
2. add an additional environment variable to the envvars.txt file ($NODE_CONFIG)
3. add an additional environment to the Docker run command (£NODE_CONFIG)
4. probably remove the volume mapping line fromthe docker run command.
Hello,
when I create an asset using AssetRegistry.add(...), the asset is created successfully, but I get nothing returned back. What I would like to do is to get back a tansactionId of the transaction. How would I go about it?
[ ](https://chat.hyperledger.org/channel/composer?msg=MCXNWz4SmqgKg4t5g) @rthatcher thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=gkbZGjyKMhxetiDFa) @jon_s - there is a Web GUI and a REST endpoint.for Blockchain Explorer
Oh great. So the blockchain explorer has to running
thanks @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=QCgZoorRXxTCn4Tbb) @xy250400 - I think this section in the Knowledge Wiki will answer your question:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--data-migration-eg-from-playground-the-ledger---for-future-use-etc
[ ](https://chat.hyperledger.org/channel/composer?msg=3SRQWGSaj8ehYTJdg) @RajeevSarda - I think that error message is telling you that either the Network name (marble-network) or the version number (0.2.4-deploy.0) do not match up to the actual name/version from the BNA file. Try `composer archive list YOUR_FILE.bna` which should show the details. For problems with IBM Cloud you should probably raise a ticket on the IBM Cloud system.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=8SBMFDokfFYsKCZQS) @vancemorris - I'm not really familiar with, but I do have an example file we used to use for the developer tutorial - the file is quite long so I'm sending it in a private message.
[ ](https://chat.hyperledger.org/channel/composer?msg=fQE29DSL2uJ3jvrz3) @rthatcher thank you.It's very helpful.
[ ](https://chat.hyperledger.org/channel/composer?msg=F4rwQFnunggqvkGtM) @rthatcher Thanks for the answer.
@rthatcher How should i configure the blockchain explorer for composer network
i am using fabric-dev-server
dont have certificates and keys
does special character creates issue in query?
{
"network-config": {
"org1": {
"name": "peerOrg1",
"mspid": "Org1MSP",
"peer1": {
"requests": "grpcs://127.0.0.1:7051",
"events": "grpcs://127.0.0.1:7053",
"server-hostname": "peer0.org1.example.com",
"tls_cacerts": "/Users/johns/fabric-tools/fabric-scripts/hlfv11/composer/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt"
},
"admin": {
"key": "/Users/johns/fabric-tools/fabric-scripts/hlfv11/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore",
"cert": "/Users/johns/fabric-tools/fabric-scripts/hlfv11/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts"
}
}
},
"host": "localhost",
"port": "8080",
"channel": "composerchannel",
"keyValueStore": "/tmp/fabric-client-kvs",
"eventWaitTime": "30000",
"pg": {
"host": "0.0.0.0",
"port": "5432",
"database": "fabricexplorer",
"username": "hppoc",
"passwd": "password"
},
"license": "Apache-2.0"
}
I am using this config for blockchain explorer
``
`Please open web browser to access :http://localhost:8080/
error when connecting to db: { Error: connect ECONNREFUSED 0.0.0.0:5432
at Object._errnoException (util.js:1022:11)
at _exceptionWithHostPort (util.js:1044:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1182:14)
code: 'ECONNREFUSED',
errno: 'ECONNREFUSED',
syscall: 'connect',
address: '0.0.0.0',
port: 5432 }
E0417 15:18:30.889733000 140735693321024 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
error: [client-utils.js]: sendPeersProposal - Promise is rejected: Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:583:15
error: [Channel.js]: Failed Query channel info. Error: Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:583:15
[2018-04-17 15:18:30.903] [ERROR] Query - Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:583:15
[2018-04-17 15:18:30.905] [ERROR] blockscanner - TypeError: Cannot read property 'low' of undefined
at getChainInfo.then.response (/Users/johns/pwc-projects/blockchain-explorer/app/query.js:213:24)
at
this is the error log i am getting
:(
Please open web browser to access :http://localhost:8080/
error when connecting to db: { Error: connect ECONNREFUSED 0.0.0.0:5432
at Object._errnoException (util.js:1022:11)
at _exceptionWithHostPort (util.js:1044:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1182:14)
code: 'ECONNREFUSED',
errno: 'ECONNREFUSED',
syscall: 'connect',
address: '0.0.0.0',
port: 5432 }
E0417 15:18:30.889733000 140735693321024 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
error: [client-utils.js]: sendPeersProposal - Promise is rejected: Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/Users/johns/my-projects/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/johns/my-projects/blockchain-explorer/node_modules/grpc/src/client.js:583:15
error: [Channel.js]: Failed Query channel info. Error: Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/Users/johns/my-projects/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/johns/my-projects/blockchain-explorer/node_modules/grpc/src/client.js:583:15
[2018-04-17 15:18:30.903] [ERROR] Query - Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/Users/johns/my-projects/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/johns/my-projects/blockchain-explorer/node_modules/grpc/src/client.js:583:15
[2018-04-17 15:18:30.905] [ERROR] blockscanner - TypeError: Cannot read property 'low' of undefined
at getChainInfo.then.response (/Users/johns/my-projects/blockchain-explorer/app/query.js:213:24)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=evBQBqmXHzmzkcrhM) @jon_s - you have an issue with your Postgres database connection you need to investigate:
" { Error: connect ECONNREFUSED 0.0.0.0:5432 "
[ ](https://chat.hyperledger.org/channel/composer?msg=MJcK3SEbWRNhS8NXK) @Varun2887 - what character ? Is the character in the Query or in the data ?
data
```
{
"$class": "org.model.Demographics",
"demographicsId": "d8gobf32njfkquee3",
"SSN": "616-79-8010",
"FirstName": "Jacob",
"LastName": "White",
"DateofBirth": "02/12/1961",
"Address": "Stetson Avenue",
"City": "Chicago",
"State": "Illinois",
"Country": "USA",
"ZipCode": "76978",
"PhoneNumber": "7821293902",
"Email": "jacob@white.com"
}
```
i have this user
Has joined the channel.
when i am quering on `FirstName` and `LastName` with input `{FirstName: Jacob, LastName: White} it works fine
when i am quering on `FirstName`, `DateofBirth` and `LastName` with input `{FirstName: Jacob, LastName: White, DateofBirth:02/12/1961} it works fine
but when i am quering on `FirstName`, `DateofBirth` and `LastName` with input `{FirstName: Jacob, LastName: Whiteasdas, DateofBirth:02/12/1961} it `still` works fine
last case it should not produce output
since lastname is not matching
i am doing `AND` operation
@rthatcher
Hi All , I have 3 orgs , org 1 and 2 in channel1 , org 2 and 3 in channel2 . i deployed 2 bussiness networks in two channels .My question is how can i access 2 channels with a single Card , Does composer support it ? . is there any other way .
using composer i doubt
havent tried it... will be interested in its answer @jaswanth
@Varun2887 - what version of composer do you have? There is an Issue with Quersies and Composer v0.16
i am using .16 only
:(
.16.2
Hi . Can we call a transaction in one business network from other business netwrok ?
@vudathasaiomkar no
@davidkel https://stackoverflow.com/questions/49875309/attempt-to-achieve-high-throughput-in-hyperledger-fabric-network
@davidkel https://stackoverflow.com/questions/49875309/attempt-to-achieve-high-throughput-in-hyperledger-fabric-network
[ ](https://chat.hyperledger.org/channel/composer?msg=ZhAh9oKniNKcwZgN6) @Varun2887 then apart from querying what can we do with `invokechaincode() `
@rthatcher i had created an asset using `composer-client` using `add` in assetRegistery
can i query that data
only query
Hi everybody! I was trying to install Composer over an existing fabric network... but I'm getting this error when trying to install Composer runtime:
```Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT```
Can anyone help me?
and the invoke chaincode method is go lang method
i doubt it works in composer
have used it with fabric not with composer
in v0.19.0 composer supports the native Api's
ohk have to check
[ ](https://chat.hyperledger.org/channel/composer?msg=uoaECyf3BsoFfFjDK) @Varun2887 - this is the issue if you are interested in the detail: https://github.com/hyperledger/composer/issues/3460
can anyone give me guide to setup postgres for blockchain explorer
Johns-Air:blockchain-explorer johns$ sudo -u postgres psql
sudo: unknown user: postgres
sudo: unable to initialize policy plugin
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=8QcM9z5pQDrRdsuwz) @rthatcher thanks for the details
@rthatcher i had created an asset using `composer-client` using `add` in assetRegistery, can i query the data I have created(not the global state but the state when it was created)
[ ](https://chat.hyperledger.org/channel/composer?msg=HF5EsASDxCkFrCuED) @jaswanth - a single Card supports a connection to a single Channel.
There is the possibility to 'call' another Network using `getNativeAPI` this is documented at the bottom of this document - but be sure to read the *security warning* : https://hyperledger.github.io/composer/latest//reference/js_scripts
There is also a tutorial showing how to use the feature: https://hyperledger.github.io/composer/latest/tutorials/invoke-composer-network
Hi everybody! I was trying to run this command : ``docker-compose -f sawtooth-default.yaml down``
After the following line it had stopped running ``sawtooth-shell-default | writing file: /root/.sawtooth/keys/root.pub``
Hi everybody! I was trying to run this command : ```docker-compose -f sawtooth-default.yaml down```
After the following line it had stopped running ```sawtooth-shell-default | writing file: /root/.sawtooth/keys/root.pub```
@rthatcher thankyou for reply , can i invoke transactions from invokeChaincode()
[ ](https://chat.hyperledger.org/channel/composer?msg=9XTNRSoxA58kJNmJG) @vudathasaiomkar - the answer I just provided about channels for @jaswanth - is the same for you :-)
Hi everyone, I was running this command : ```docker-compose -f sawtooth-default.yaml up```
it had stopped running after showing this : ```sawtooth-shell-default | writing file: /root/.sawtooth/keys/root.pub ```
If anyone has any idea, do let me know
Hi everyone, I was running this command : docker-compose -f sawtooth-default.yaml up
it had stopped running after showing this : sawtooth-shell-default | writing file: /root/.sawtooth/keys/root.pub
If anyone has any idea, do let me know
Hi All
I'm trying to use Composer in my Fabric installation!!!
I always encounter the error "Error private key not correct or not a string"
[ ](https://chat.hyperledger.org/channel/composer?msg=2f4Wzh4RnAf5hkE9Q) @JasmineKaur - this is the Hyperledger Composer channel I suggest you try #sawtooth
[ ](https://chat.hyperledger.org/channel/composer?msg=LBhsphEAXCEszdPbF) at new createStatusError (/Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:583:15
[2018-04-17 16:08:57.945] [ERROR] Query - Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:583:15
[2018-04-17 16:08:57.945] [ERROR] blockscanner - TypeError: Cannot read property 'low' of undefined
at getChainInfo.then.response (/Users/johns/pwc-projects/blockchain-explorer/app/query.js:213:24)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=LBhsphEAXCEszdPbF) at new createStatusError (/Users/johns/my-projects/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/johns/my-projects/blockchain-explorer/node_modules/grpc/src/client.js:583:15
[2018-04-17 16:08:57.945] [ERROR] Query - Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/Users/johns/my-projects/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/johns/my-projects/blockchain-explorer/node_modules/grpc/src/client.js:583:15
[2018-04-17 16:08:57.945] [ERROR] blockscanner - TypeError: Cannot read property 'low' of undefined
at getChainInfo.then.response (/Users/johns/my-projects/blockchain-explorer/app/query.js:213:24)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=iXhguzjXhMLriZiAo) @rthatcher
Sorryt. Wrong channel
[ ](https://chat.hyperledger.org/channel/composer?msg=iXhguzjXhMLriZiAo) @rthatcher
Sorry. Wrong channel
[ ](https://chat.hyperledger.org/channel/composer?msg=KGKXERvCjEi4EqYuW) @andreamagagna - I would guess you have an error in the connection.json file - but what version of Composer are you using, What version of Fabric and what is the exact command you used ?
Hi all.How can I produce a query method with node,not only in .qry file? When i try to make a transaction return a asset, it only return me a transaction id.
Hi
I have created participant then issued identity.. Now i'm binding that participant its asking me for certificate file.. question is how to create certificate for participants?
Need help
in getting explorer
SSL routines:SSL3_GET_RECORD:wrong version number.
E0417 16:15:14.438524000 140735693321024 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
error: [client-utils.js]: sendPeersProposal - Promise is rejected: Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:583:15
error: [Channel.js]: Failed Query channel info. Error: Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:583:15
[2018-04-17 16:15:14.439] [ERROR] Query - Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/johns/pwc-projects/blockchain-explorer/node_modules/grpc/src/client.js:583:15
[2018-04-17 16:15:14.439] [ERROR] blockscanner - TypeError: Cannot read property 'low' of undefined
at getChainInfo.then.response (/Users/johns/pwc-projects/blockchain-explorer/app/query.js:213:24)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=j5tyfpifZWQAiqoP3) @ascatox - what task or command are you using to generate this error ?
[ ](https://chat.hyperledger.org/channel/composer?msg=cJHgC786hb4GACPaY) @Pranoti - where are you Issuing the Identity - Playground, Rest Server, API or CLI? You don't need to Bind after you have issued the identity.
[ ](https://chat.hyperledger.org/channel/composer?msg=kGf6SoXJsj6BSNtwb) @rthatcher using cli I have created it..
[ ](https://chat.hyperledger.org/channel/composer?msg=bfyiL6bno2qRCctfk) @Pranoti - so from a CLI the sequence is
( `composer participant add`) - but may be this is already done
`composer identity issue` - this creates a ` .card file
` composer card import` - import the .card file just created
use the card perhaps `composer network ping` or `composer network list`
After you first use the Card the certificates/keys are downloaded into the cards
can you please specify "After you first use the Card" ?? Like how I have to use the card ?? Do I need to perform any transaction?
can you please specify "After you first use the Card" ?? Like how I have to use the card ?? Do I need to perform any transaction? And where it will be downloaded?? in .composer directory ?
@rthatcher I'm using composer 0.19.1, fabric 1.1
The command is `composer network install -c PeerAdmin@mynetwork -a mynetwork@0.0.1.bna`
@rthatcher i had created an asset using `composer-client` using `add` in assetRegistery, can i query the data I have created(not the global state but the state when it was created)
the data may have changed by other transactions during the course of time, i need the asset detaisl when it was added
[ ](https://chat.hyperledger.org/channel/composer?msg=MijHLBWdbBm4Efhnb) @rthatcher I did one transaction .. I got the crtificate.. Checked in REST api system/identities. Is it storing in mongodb??
[ ](https://chat.hyperledger.org/channel/composer?msg=MijHLBWdbBm4Efhnb) @rthatcher I did one transaction .. I got the crtificate.. Checked in REST api system/identities. I guess its storing in mongodb as im not able to see the certificate in .composer directory
[ ](https://chat.hyperledger.org/channel/composer?msg=mwLs4pWy8C636LJtf) @Pranoti - if you have configured MongoDb as a Datasource then yes that is where the Wallets are stored for the REST server.
I am setting the environment variables for composer provider and trying to start rest-server
7 out of 10 times its throwing urlnotfound error
Johns-MacBook-Air:~ johns$ echo $COMPOSER_PROVIDERS
{ "google": { "provider": "google", "module": "passport-google-oauth2", "clientID": "312039026929-t6i81ijh35ti35jdinhcodl80e87htni.apps.googleusercontent.com", "clientSecret": "Q4i_CqpqChCzbE-u3Wsd_tF0", "authPath": "/auth/google", "callbackURL": "/auth/google/callback", "scope": "https://www.googleapis.com/auth/plus.login", "successRedirect": "http://localhost:4200?loggedIn=true", "failureRedirect": "/" }, "github": { "provider": "github", "module": "passport-github", "clientID": "2d74910237e2151313dd", "clientSecret": "8b347162cf156290ae168bd59adf5e25fcfb1d61", "authPath": "/auth/github", "callbackURL": "/auth/github/callback", "successRedirect": "http://localhost:4200?loggedIn=true", "failureRedirect": "/" }, "jwt": { "provider": "jwt", "module": "passport-empty", "secretOrKey": "secret", "authPath": "/auth/jwt", "authScheme": "saml", "callbackURL": "/auth/jwt/callback", "successRedirect": "http://localhost:4200?loggedIn=true", "failureRedirect": "/" } }
[ ](https://chat.hyperledger.org/channel/composer?msg=ybDaWhACR8b4dNADr) @Varun2887 - if you added an Asset in the Playground using the `+ Create New Asset` button then you used the System Transaction AddAsset . You can query and return data in the format below from the tutorial example:
```
{
"$class": "org.hyperledger.composer.system.AddAsset",
"resources": [
{
"$class": "org.acme.mynetwork.Commodity",
"tradingSymbol": "CT",
"description": "Certificate",
"mainExchange": "London",
"quantity": 1,
"owner": "resource:org.acme.mynetwork.Trader#t77"
}
],
"targetRegistry": "resource:org.hyperledger.composer.system.AssetRegistry#org.acme.mynetwork.Commodity",
"transactionId": "5a0bcab392b05f1c1978f8c991dc65c711f7da3f2716e7eba0ee167e375f0b7a",
"timestamp": "2018-04-16T13:38:54.339Z"
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=iyovYLkfYEgvJuQvT) @rthatcher I guess the problem is that I created the PeerAdmin card from the connection.json I wrote, because I didn't follow any tutorial but I created the network from scratch
https://medium.com/hyperlegendary/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-bfbe4e38b6c6
has anyone managed to get this example working?
[ ](https://chat.hyperledger.org/channel/composer?msg=XMM59ArN2fCknZrzt) @andreamagagna - Have you seen these 2 tutorials which go through building a connection.json file?
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
They should give you some of the background you need.
(Composer v.019.1 and Fabric 1.1 is good)
it's for a multi host setup of fabric
@rthatcher can that example be used for multi host too?
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
So, i am in 1.1.0 and I've got this :
```
(sorry for last message)
I have this error :
```Error: Error trying install business network. Error: No valid responses from any peers.✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed```
In composer 19.1, fabric 1.1. Someone know how fix it ?
[ ](https://chat.hyperledger.org/channel/composer?msg=tGQD8y8kbs6Kx7LGN) @vick I think this tutorial is using a connection.json for OLD versions of composer v0.16
[ ](https://chat.hyperledger.org/channel/composer?msg=MmsgJx6GS95PJEtGt) did you try to increase the time out setting? can you see which peer is trying to communicate with what? where do you get the error? what command do you run or which peer does the error appear on?
@rthatcher yeah, do you recommend something else?
[ ](https://chat.hyperledger.org/channel/composer?msg=5vw3gJvgnuCBFZSTL) @vick - the tutorial uses localhost in URLs in the connection.json - so it won't work on Multi Host without changes. But it is more complex than that - it uses Docker-Compose to manage the addressing and networking between the peers etc, so you would need to find another way of doing that.
@vick :
- i added composer time out at 1200s like i see in a forum
- I don't know how see that
- I run "composer network start --networkName vaccinate-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card" in console and i have the error in console centos too
ok and you didn't have that error in a previous version of composer?
if you roll back are you able to eliminate the error or does it remain?
@rthatcher could you advise what is the best course of action to find a solution? re:"...but it's more complex than that ..."
i don't try to roll back. I just updated composer, it's worked in v16. I try to import .bna in playground to see if i have an error but it's worked find
ok try to rollback the composer and see if it still works, otherwise i think you will need to raise a bug report in their JIRA system
It worked before update so it should work if i rollback. But i have to use v19 because i'm trying to use oauth2 whom use composer-rest-server in docker and it is in version 19 ...
For information, i work behind a corporate proxy. I saw in forums that i have to modify npm config and add "-o npmrcFile=/root/config/npmConfig" in "composer network install", i tried this but it didn't change anything
[ ](https://chat.hyperledger.org/channel/composer?msg=MLip52zWxxWDioz4B) @rthatcher Yes of course... I'm following that guideline, except for the construction of the fabric network... I don't know if Fabric could be the problem
@vick i just look at docker log, i have "[chaincode-platform] func1 -> ERRO 4b5 Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code ETIMEDOUT
npm ERR! errno ETIMEDOUT
npm ERR! network request to https://registry.npmjs.org/composer-common failed, reason: connect ETIMEDOUT 151.101.0.162:443
npm ERR! network This is a problem related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settings."
@Poneey i think it's trying to download some library but it's not able to reach the end point, can you try to curl that url from your command line and see if it brings back anything?
@poon
@Poneey also see if you are able to go to the url from a web browser to see if it's actually live or not
i tried curl https://registry.npmjs.org/composer-common and and nothing happened .. I saw in some forums that we can personnalise registry, is it that ?
So :
- without "export http_proxy..." : nothing happenned for "curl..." and network start return timeout error
- with "export ..." : curl works but "network start..." return "Error: Error: 14 UNAVAILABLE: Connect Failed"
i can access the url from the browser ... @Poneey
@vick I'm in a server by ssh. I can access the url from the browser of my computer, but i don't know from my server.
hi , i'm trying to get my transaction history on a asset with the use of the 'getNativeAPI()' but i don't get anny results , i think it is because of the createCompositeKey part ( i don't know what i should change it to) here is the code
@andreamagagna - have you looked for errors in the logs of the Peers? It looks like you are not hitting the Peers, but it is worth checking the logs.
Clipboard - 17 april 2018 14:53
[ ](https://chat.hyperledger.org/channel/composer?msg=9ZgSepNFo7fZGCMuD)
@rtatcher : In the peer docker logs. I have this :
```
2018-04-17 10:00:57.698 UTC [chaincode-platform] func1 -> ERRO 4b6 Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code ETIMEDOUT
npm ERR! errno ETIMEDOUT
npm ERR! network request to http://151.101.60.162:4873/composer-common failed, reason: connect ETIMEDOUT 151.101.60.162:4873
```
How can I resolve it ?
[ ](https://chat.hyperledger.org/channel/composer?msg=c4RfY5j5Sa7K2hRYi) @rthatcher How can i check the logs?
docker logs
i have a container that i configured in the yaml file that isn't appearing under docker ps, is there someway for me to check why the container did not come up?
[ ](https://chat.hyperledger.org/channel/composer?msg=BhxnBk4SL437LdGhM) @CorentinPacaud Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=7NM9dooJr796hDoHb) @andreamagagna
@vick i fixed my issue !!
@CorentinPacaud i think you had the same error. Do you have a corporate proxy ?
cool! @Poneey , do you remember what the variable is you need to set for specifying image version?
Yes, one minute i will send it
@Poneey Yes, I have a corporate proxy. But with or without it, it failed
Add a file "npmConfig" in /home/user1/config/npmConfig and write this line :
''''proxy=http://username:password@host:port
https-proxy=http://username:password@host:port
registry=http://registry.npmjs.org/
strict-ssl=false''''
After that install your network with this command :
composer network install --card PeerAdmin@hlfv1 --archiveFile
yo
I think the online playground still uses an old version of composer. My code works when I deploy it to my own Hyperledger Fabric, but when I try to use the online playground my transactions wont show up...
@Poneey ok I will try
The online playground doesnt give me errors in my browser console, but the assets are not added through my transaction. Manually adding assets works though
@CorentinPacaud Ok, telll me if it works
[ ](https://chat.hyperledger.org/channel/composer?msg=aJbaGfcWk7JfCbMv5)
I'll fixed it , i had to change the nativeKey to :` const nativeKey = getNativeAPI().createCompositeKey('Asset:org.acme.mynetwork.Ticket', [id]);`
[ ](https://chat.hyperledger.org/channel/composer?msg=aJbaGfcWk7JfCbMv5)
I'll fixed it , i had to change the nativeKey to :mountain_bicyclist_tone5:
`const nativeKey = getNativeAPI().createCompositeKey('Asset:org.acme.mynetwork.Ticket', [id]);`
[ ](https://chat.hyperledger.org/channel/composer?msg=aJbaGfcWk7JfCbMv5)
I'll fixed it , i had to change the nativeKey to
`const nativeKey = getNativeAPI().createCompositeKey('Asset:org.acme.mynetwork.Ticket', [id]);`
@Poneey I was already using an npmrcfile with this `registry=http://registry.npmjs.org/`
And I don't have any proxy
@Poneey I was already using an npmrcfile with this `registry=http://registry.npmjs.org/`
And I don't have any proxy on this server (my IT guy said)
Hello, can somebody help me with ACLs? I'm using custom condition function in which I need to access parent Asset via a reference. But once i try to getAssetRegistry() in ACL code, I get an error that The runtime API is not available. Is it really not possible to access registries in ACL? Thanks
Hi,
I got the problem that I successfully installed on the fabric containers, but when I host the chaincode with the rest server I receive the following the error message:
"message": "Error trying to ping. Error: Error trying to query business network. Error: could not find chaincode with name 'xxxx' [...]
I put the right name in every command, but is there also a internal chaincode name in the bna file?
[ ](https://chat.hyperledger.org/channel/composer?msg=u6uaHzzF9uhvfj2o3) @berndoostrum - you should see the Composer version in the bottom right corner of the online playground - I'm seeing v0.19.1
[ ](https://chat.hyperledger.org/channel/composer?msg=5z8KYhSbzB8Jq3EmH) @MartinKrmer - you start the REST server with a Card, often when testing we use admin@MY-network - and this card was created with the Network Name in it when the Network was Started.
What card are you using and how was it created?
If you use that same card can you ping the network from the command line ?
@CorentinPacaud ok so i don't know ...
@rthatcher computer restart helped*
Okay, found the issue with registries in ACL code was fixed in this PR, maybe it helps someone ;) https://github.com/hyperledger/composer/pull/1468
[ ](https://chat.hyperledger.org/channel/composer?msg=5XFT5iNiKbztfA73T) @majkowski - do you have a good example ACL rule to share ?
Is it possible to run rest-server on multiuser mode without authentification?
Hi. I'm trying to use docker composer-rest-server but i have error permission denied in docker log. Any idea ?
''''WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
Connection fails: Error: Card not found: admin@vaccinate-network
It will be retried for the next request.
{ Error: Card not found: admin@vaccinate-network
at store.get.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/cardstore/walletbackedcardstore.js:74:27)
at
17-04-2018 16-02-26.png
was trying to bring up a peer and it gave this error ... not sure what it's trying to tell me, should i regenerate the crypto artifacts?
[ ](https://chat.hyperledger.org/channel/composer?msg=bDpYnyT8czkP8qAdA) do you need to run, createPeerAdminCard.sh
[ ](https://chat.hyperledger.org/channel/composer?msg=3aidFwQFjeEyZ7Nsg) @Poneey - that looks like the error you had yesterday with Permissions on the shared volume
@rthatcher any thoughts on the screenshot i sent, is it do with crypto files inappropriately generated?
[ ](https://chat.hyperledger.org/channel/composer?msg=PzNJbzEQr3LRKaaBc) @vick - I assume you are using a Custom Fabric - not the standard Development Fabric? I think the folder referred to in the log (/etc/hyperledger/peer/msp) is a mapped volume, so I would think you need to look at the YAML files and see if they are correctly mapped.
@rthatcher yes had checked that already, they all seem to be referencing the correct folders ... but i will check again
When I try composer network ping -c PeerAdmin@fabric-network I get this error message: Error: PEM encoded certificate is required.
Command failed
Any ideas what certificate composer is complaining about?
Has joined the channel.
Hi, I'm seeing errors in HyperLedger composer when ever I try to load one of the sample networks. I had some issues loading a network I created manually. Now everything else seems to be failing. Here is the error I see in Playground:
An error has occurred
Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html
In the terminal I get
error: [Hyperledger-Composer] :ConnectorServer :Error: Can't find end of
Hi, I'm seeing errors in HyperLedger composer when ever I try to load one of the sample networks. I had some issues loading a network I created manually. Now everything else seems to be failing. Here is the error I see in Playground:
An error has occurred
Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html
In the terminal I get
error: [Hyperledger-Composer] :ConnectorServer :Error: Can't find end of
I'm getting a 200 when it tries to read in those example repositories. Otherwise everything is working.
Hi, I'm seeing errors in HyperLedger composer playground when ever I try to load one of the sample networks. I had some issues loading a network I created manually. But I got that to work. Now loading anything else seems to be failing. Here is the error I see in Playground:
An error has occurred
Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html
In the terminal I get:
error: [Hyperledger-Composer] :ConnectorServer :Error: Can't find end of
I'm getting a 200 when it tries to read in those example repositories. Otherwise everything is working.
OK, so I got past the above error by adding the necessary references to the pem files in my connection.json file. However now when I try to ping, I get this error: Error: Error trying to ping. Error: No business network has been specified for this connection
Which means what exactly?
@rthatcher i had to regenerate the crypto files, i had a private key defined somewhere in correctly
does anyone know what would cause this error;
ERRO 001 Cannot run peer because cannot init crypto, missing @org1.exmaple.com" target="_blank" rel="noopener noreferrer">/etc/hyperledger/msp/users/Admin@org1.exmaple.com/msp folder
i have checked and the folder exists
Is there some mechanism to enable debug logging or other tools to help diagnose composer errors?
Has joined the channel.
Has joined the channel.
What certificates must go in the connection profile to use SSL/TLS?
Has joined the channel.
Hi everyone, has anyone encounter the no reply error from composer-rest-server before?
I posted my question on the https://github.com/hyperledger/composer/issues/3837, haven't got reply yet. So trying some luck here :)
Has joined the channel.
Hi, can anyone please point me in the right direction for packaging the business network logic `*.bna` and admin card into something deployable through `docker-compose`. I am working on a project that I would like to build Docker images that already contain my business network logic. Is that possible without using the composer-cli?
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=bx8fsp7xuy5QgzEsM) @rthatcher i used client side code, fetched the asset registry first then did addAll, since i had to add multiple assets
ECONNREFUSED 127.0.0.1:7054 from rest-server when using redis store
Has joined the channel.
Hi guys, I just updated my hyperledger composer to v0.19.1 and when I try network start command, I get the following error:
Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
Command failed
Please let me know if anybody knows about it TIA
i am trying the "Deploying to multi organisation" tutorial from https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org and everything works fine until step 11. I get the following error when i try to install the business network onto hyperledger fabric peer nodes :* Error : Error trying to install business network. Error ; No valid response from any peers. Response from attempted peer comms was an error : Error: REQUEST_TIMEOUT *
i am trying the "Deploying to multi organisation" tutorial from https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org and everything works fine until step 11. I get the following error when i try to install the business network onto hyperledger fabric peer nodes : Error : Error trying to install business network. Error ; No valid response from any peers. Response from attempted peer comms was an error : Error: REQUEST_TIMEOUT
I have looked into the logs, but I can't spot the error, please tell me what am I doing wrong.
Has joined the channel.
Hi, I am trying to connect multiple systems on a single blockchain network. What more do i have to do in the multi oranisation
Hi, I am trying to connect multiple systems on a single blockchain network. What more do i have to do in the "multi organization tutorial" for multiple systems to interact instead of multi organizations communication on a single system.
Hello.. has anyone tried running caliper with composer? Can you share your results or experience?
[ ](https://chat.hyperledger.org/channel/composer?msg=hcjL7FpRoXrgLnZD8) @abhi96 https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f You could try this.
Good morning - I added an identity using the generated api POST /system/identities/issue. If I invoke GET /system/identities I see the identity but how do I reach the state 'ACTIVATED' like I see it for the admin identity AND second question where does the certificate come from? I assume I have to bind the certificate and participant using POST /system/identities/bind ...
{
"$class": "org.hyperledger.composer.system.Identity",
"identityId": "06a79e71ac0b8009b0110ee0c2942cc905e6a5bd99f5ed92a023d4fe0b8aba8b",
"name": "email@chuck.norris",
"issuer": "0898d84c8fad436d79de22f786f42d1069b59d1675d910437eeb9a2a616d693f",
"certificate": "",
"state": "ISSUED",
"participant": "resource:com.garage.sample.SampleParticipant#0"
}
I want to develop a mobile app. I have few questions regarding it.
1. How user registration will work? (Issues identities ?)
2. How session will work?
3. I want to save data locally. Do i need to integrate fabric with any database?
Hello everyone, I would like to ask if it is possible to create new assets during the execution of a transaction?
Has joined the channel.
fyi - reminder that the Community call is at 9am UTC (10am UK) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming
[ ](https://chat.hyperledger.org/channel/composer?msg=96ibvgd8R54p7nS7x) @Nabilel 1 - yes Assets can be created in the Transactions. If you look at the sample networks in Playground there are some examples. The bond network has a transaction to create a single asset, and some of the other samples like Vehicle Manufacture and Animal Tracking have a 'setup' transaction that creates many Assets and Participants.
[ ](https://chat.hyperledger.org/channel/composer?msg=d6XNRF4Ada3objXRR) @ZahidZafar
1. The process for adding a 'user' to to Add a Participant, then Issue an Identity.
2. If you use the Composer REST Server in Multi user mode then Tokens are used and with REST the sessions are 'stateless'
There are tutorials available for setting up the REST server in Multi User mode, and there is a blog that explains how to use 2 REST servers to allow User Self-Registration:
https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
[ ](https://chat.hyperledger.org/channel/composer?msg=7S9t899D52FNXuX4u) @thoduerr - When you issue an Identity you are given a "One Time" secret within the Card, and the First time you use the card to connect to the network the secret is exchanged for Certificates and Keys. On this first use the state changes from ISSUED to ACTIVATED.
As a test, you can Export the .card file before and after activation and compare the sizes and you will see the one with Certificates is larger.
There is some more information on Cards in the Knowledge Wiki, but it is focused on the CLI and Playground not the REST server, but it is useful background:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--business-network-cards
[ ](https://chat.hyperledger.org/channel/composer?msg=ijpTGBsb5YiR7QmK6) @AkshayJindal - I guess you have seen this doc:
https://github.com/hyperledger/caliper/blob/master/docs/Composer.md
[ ](https://chat.hyperledger.org/channel/composer?msg=SD9BS7ibQjaKDHbbT) @ReginaMehta - if these are the only errors you can see I would think that either the Fabric is not started or perhaps a problem with the connection.json used to create the Cards.
[ ](https://chat.hyperledger.org/channel/composer?msg=tDzp767KRiFRGkagc) @VINAYAKDESHPANDEN - the 'x-type error' usually means you have some old cards from v0.16 of Composer. You could try deleting the ~/.composer folder and re-running the createPeerAdminCard.sh script.
There is a Stack Overflow thread with a similar problem for background information:
https://stackoverflow.com/questions/49847420/hyperledger-composer-install-is-not-installing-business-network/49881540#49881540
Hi!
I'm trying to implement user registration functionality.. So im implementing identityIssue() and testConnection() API's. So i'm confused whether to write these functions in logic.js file or any separate js file? need help..
Has joined the channel.
Hello Guys,
Am going through the Hyperledger composer tool and wanted to clarify that are the Participants in HL composer represents the Organization of the Hyperledger fabric, because when I run the BNA file on my HyperLedger Instance there are no different organization/peers being used for different participants.
Thank you very much @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=TKPCgfZitjgivS9Wt) @rthatcher Hi @rthatcher thanks for the reply, but I am not able to delete the cards as well it's giving me the same error
Hello !
I'm following "Using OAUTH2.0 with a REST server" tutorial and i'm on step 8 but when i try to access at "http://
[ ](https://chat.hyperledger.org/channel/composer?msg=kGM3KSxFfNaBoa4qr) @VINAYAKDESHPANDEN - Yes it is a problem to delete the cards:-) You need to delete the folder containing the cards from the terminal window - something like ` rm -rf ~/.composer `
Hello,
I have been trying to achieve multihost setup using fabric.
I have created a channel "mychannel" in 1st host and trying to fetch it from the 2nd host and join the peer running in 2nd host to that channel. So for this if i run the command "docker exec -e "CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp/users/Admin@org2.example.com/msp" peer0.org2.example.com peer channel fetch config -o 10.76.72.134:7050 -c mychannel" it gives error like below
2018-04-18 08:57:06.035 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2018-04-18 08:57:06.035 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2018-04-18 08:57:06.038 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized
2018-04-18 08:57:06.038 UTC [msp] GetLocalMSP -> DEBU 004 Returning existing local MSP
2018-04-18 08:57:06.038 UTC [msp] GetDefaultSigningIdentity -> DEBU 005 Obtaining default signing identity
2018-04-18 08:57:06.040 UTC [msp] GetLocalMSP -> DEBU 006 Returning existing local MSP
2018-04-18 08:57:06.041 UTC [msp] GetDefaultSigningIdentity -> DEBU 007 Obtaining default signing identity
2018-04-18 08:57:06.041 UTC [msp/identity] Sign -> DEBU 008 Sign: plaintext: 0AC3060A1508021A0608E290DCD60522...1C04EDD0693D12080A020A0012020A00
2018-04-18 08:57:06.041 UTC [msp/identity] Sign -> DEBU 009 Sign: digest: A40821DB84DA999CC7C38D047846EAC77EF7F7993416B254530BEFBF9E5DFC5E
2018-04-18 08:57:06.044 UTC [channelCmd] readBlock -> DEBU 00a Got status: &{NOT_FOUND}
Error: can't read the block: &{NOT_FOUND}
Usage:
peer channel fetch
Has joined the channel.
Could anybody please help me on this error?
@rthatcher Could you please check this?
[ ](https://chat.hyperledger.org/channel/composer?msg=xxFhMpqQWpWKbLdCi) @Poneey - I'm just testing this myself, and I think I have found an error with the tutorial doc - let me check and I will let you know
Ok, thanks !
[ ](https://chat.hyperledger.org/channel/composer?msg=hgjguC42JrDhuETW2) @rthatcher
I was also facing the same issue and is resolved by rm -rf ~/.composer. Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=SYm4jkbiAoTK8GxTy) @Akshatha - I'm sorry I don't know this error - can you ask in the #fabric channel (it is not a Composer problem really)
yes. Thank you:)
[ ](https://chat.hyperledger.org/channel/composer?msg=xxFhMpqQWpWKbLdCi) @Poneey - There is an error in the tutorial - caused by a change somewhere between v17/18/19.
At the end of Step 6, there is a `sed` command to modify the connection.json for the restadmin card. It changes 'localhost' to use the 'names' of the containers (this is required as the restadmin card will be used in the REST container.)
The problem is that the sed command assumes the order of the urls in the file is "orderer-peer-peer-ca" but with v0.19 the order is "peer-peer-ca-orderer" - so the wrong names/addresses are being used and the REST server won't start in the container.
Steps to fix:
1. Stop and remove the rest container `docker stop rest` `docker rm rest`
2. edit the file `~/.composer/cards/restadmin@tutorial-network/connection.json` to correct the addresses (or use the one below)
3. Check that the environment variables are still set in this session e.g. `echo $COMPOSER_CARD`
4 Issue the command to run the REST container `docker run -d ......`
5. Look at the rest container log - check for errors and search for this line:
Web server listening at: http://localhost:3000
6. Test REST server
[ ](https://chat.hyperledger.org/channel/composer?msg=xxFhMpqQWpWKbLdCi) @Poneey - There is an error in the tutorial - caused by a change somewhere between v17/18/19.
At the end of Step 6, there is a `sed` command to modify the connection.json for the restadmin card. It changes 'localhost' to use the 'names' of the containers (this is required as the restadmin card will be used in the REST container.)
The problem is that the sed command assumes the order of the urls in the file is "orderer-peer-peer-ca" but with v0.19 the order is "peer-peer-ca-orderer" - so the wrong names/addresses are being used and the REST server won't start in the container.
Steps to fix:
1. Stop and remove the rest container `docker stop rest` `docker rm rest`
2. edit the file `~/.composer/cards/restadmin@tutorial-network/connection.json` to correct the addresses (or use the one below)
3. Check that the environment variables are still set in this session e.g. `echo $COMPOSER_CARD`
4 Issue the command to run the REST container `docker run -d ......`
5. Look at the rest container log - check for errors and search for this line:
Web server listening at: http://localhost:3000
6. Test REST server !
7. Note that the 'sed' command in step 9 for the jdoe card has the same error.
```
{"name":"fabric-network","x-type":"hlfv1","version":"1.0.0","peers":{"peer0.org1.example.com":{"url":"grpc://peer0.org1.example.com:7051","eventUrl":"grpc://peer0.org1.example.com:7053"}},"certificateAuthorities":{"ca.org1.example.com":{"url":"http://ca.org1.example.com:7054","caName":"ca.org1.example.com"}},"orderers":{"orderer.example.com":{"url":"grpc://orderer.example.com:7050"}},"organizations":{"Org1":{"mspid":"Org1MSP","peers":["peer0.org1.example.com"],"certificateAuthorities":["ca.org1.example.com"]}},"channels":{"composerchannel":{"orderers":["orderer.example.com"],"peers":{"peer0.org1.example.com":{"endorsingPeer":true,"chaincodeQuery":true,"eventSource":true}}}},"client":{"organization":"Org1","connection":{"timeout":{"peer":{"endorser":"300","eventHub":"300","eventReg":"300"},"orderer":"300"}}}}
```
where i can find documentation of api's like this "api/system/identities/issue" ?
where i can find documentation of api's like this "api/system/identities/issue" ?
Clipboard - April 18, 2018 3:47 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=eRnc6sE5m3F8PB8Fq) @SudheerKaspa - I assume you are using Composer v0.19.0 and Fabric v1.1 - but please confirm. Can you also confirm if you are using the standard Development fabric, or a custom Fabric?
The easy error is the last one - "... cannot get package ..." - this means that you are trying to start a particular name and version of the BNA that has not been previously installed - this is slightly odd as the previous attempts did not show the same error, but perhaps you restarted fabric in a different Window?
Have you looked at the peer log file to see if there are other errors?
Please see this Stack Overflow Answer which should help with the timeout issue:
https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer/49758354#49758354
Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]
I have issues an identity using composer-admin sdk
Hey.
Is it possible to query events?
[ ](https://chat.hyperledger.org/channel/composer?msg=jjQTRwaMZkJdouGjM) @rthatcher How do I check the peer log file
` docker logs
Clipboard - April 18, 2018 4:27 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=kSezk6FXKiJzM6Yqv) @Bjodn - events appear under the Transaction in the Historian - this Question and Answer in Stack Overflow wil give you some help and background.
what causes this error
@rthatcher
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]",
"stack": "Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]\n at client.getUserContext.then.then.catch (/Users/johns/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)\n at
I have issues and have releavnt participant
still this error i am getting when i try to connect twith generated card
@rthatcher thank for your help. I just not sur what i suppose to modify in connection.json
Has joined the channel.
Okay, let's try a really simple question since I've not gotten any other responses. In the connection.json file in 0.16 , how should certificates be entered? Do I simply take the PEM encoded file I have and turn it into one long string? If so do I add \n at the end of where each line break occurred in the PEM file?
[ ](https://chat.hyperledger.org/channel/composer?msg=NYSMx3d6XZTxkW4pm) @jon_s - possibly a card with an 'expired' one-time secret where a card with certificates should be used?
[ ](https://chat.hyperledger.org/channel/composer?msg=6dsTTrNrqdMhjmnpn) @Poneey - you can replace the contents of the connection.json file with the sample I provided.
@rthatcher i changed connection.js and i have this in log rest :
[2018-04-18 14:35:12] PM2 log: Launching in no daemon mode
[2018-04-18 14:35:12] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-04-18 14:35:12] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
[ ](https://chat.hyperledger.org/channel/composer?msg=Lp3RWMJ7uufkb8Su9) @toddinpal - its a while since I worked with v16, but certainly in later versions the certificate is one long string with no real line breaks, but include the \n s in the long string.
@rthatcher And after a long time it return this :
Connection fails: Error: Error trying to ping. Error: REQUEST_TIMEOUT
It will be retried for the next request.
Error: Error trying to ping. Error: REQUEST_TIMEOUT
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfco nnection.js:789:34)
at
@rthatcher OK, thanks. That is what I sort of thought, only I don't see it documented anywhere. :-( Having set that up, I'm not getting:
DEBUG=* composer runtime install -c donghan@fabric-network -n tutorial-network
✖ Installing runtime for business network tutorial-network. This may take a minute...
Error: Error trying install composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Connect Failed
Command failed
Not sure how to debug this as there isn't much useful information in the associated trace file.
Oh, and I have to 0.16 as my Fabric network is still at Fabric 1.0.x
[ ](https://chat.hyperledger.org/channel/composer?msg=pdTYDcx8Ro9h9HSWk) @toddinpal - I assume the Fabric is up and running OK. Are there any errors in the logs of the containers for the time when you ran the command?
Not seeing anything in the container logs
[ ](https://chat.hyperledger.org/channel/composer?msg=fBamwiLvocmg8sbzm) @toddinpal - the multi org tutorial for v16 shows using a path to the certificate file rather than including the certificate in the connection.json file. Have you tried that ?
BTW - here is the tutorial: https://hyperledger.github.io/composer/v0.16/tutorials/deploy-to-fabric-multi-org
Has joined the channel.
@rthatcher Thanks, I'll give that a try... I also didn't see that option in the documentation for the connection settings... sigh
[ ](https://chat.hyperledger.org/channel/composer?msg=NiacPcSxKoWC39Bii) @toddinpal - be sure to look at the v016 docs as there are some differences.
@rthatcher OK, so I added "cert" elements to my connection.json and now I end up with a bunch of SSL errors
I don't think that format (specifying file path) works
[ ](https://chat.hyperledger.org/channel/composer?msg=EgtyMZ2EdraLLG9Xa) @Poneey - OK it still looks like there is a problem connecting to the Fabric from the Rest server.
From a terminal window connect to the REST container `docker exec -it rest /bin/sh`
Look at the connection.json from inside the container `more /home/composer/.composer/cards/restadmin@tutorial-network/connection.json`
Also Check that the Rest container can connect to the Peer `wget http://peer0.org1.example.com:7051` (this command should say 'connecting' then 'Connection reset')
Please show me the output of these commands
[ ](https://chat.hyperledger.org/channel/composer?msg=NRmfgT3mWm7JD2itf) @toddinpal - are you using `hostnameOverride` in the connection.json?
Clipboard - 18 avril 2018 15:18
@rthatcher before, i tried to run "composer-rest-server" directly in the container. It returns this :
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
It will be retried for the next request.
Exception: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
at client.getUserContext.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)
at
@rthatcher I was, but have just removed it... now it works... Thanks!
@Poneey - still inside the container try to 'hit' the ca with this command `wget http://ca.org1.example.com:7054` - it should connect and give a 404 not found error
@rthatcher OK, so that worked, and I can see that the runtime (chaincode) got deployed, but now I get:
composer network ping -c donghan@fabric-network
2018-04-18T13:26:09.772Z INFO ConnectionProfileManager:getConnectionManagerByTy Looking up a connection manager for type {"0":"hlfv1"}$
2018-04-18T13:26:10.471Z INFO ConnectionProfileManager:getConnectionManagerByTy Using this connection manager {"0":{"connectionProfileManager":{}}}$
2018-04-18T13:26:11.399Z INFO HLFConnectionManager :fabric-client() [EventHub.js]: _connect - options {"request-timeout":300000} {}$
2018-04-18T13:26:11.686Z ERROR HLFConnection :ping() {"message":"Error trying to ping. Error: No business network has been specified for this connection","stack":"Error: Error trying to ping. Error: No business network has been specified for this connection\n at _checkRuntimeVersions.then.catch (/home/bcsdev/.nvm/versions/node/v8.9.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:713:34)\n at
@rthatcher yes i have this : Connecting to ca.org1.example.com:7054 (172.18.0.2:7054)
wget: server returned error: HTTP/1.1 404 Not Found
[ ](https://chat.hyperledger.org/channel/composer?msg=rHSyorwvcpPxkYK6r) @toddinpal so after the runtime install you executed a `composer network start` ?
I would guess that the card donghan@fabric-network is a PeerAdmin or Channel admin card, and does not have access to the network (and does not specify a Business Network in the card.)
You need to use the Network Admin card - maybe a .card file was created when you did the network start? Try importing and using that card
[ ](https://chat.hyperledger.org/channel/composer?msg=rHSyorwvcpPxkYK6r) @toddinpal so after the runtime install you executed a `composer network start` ?
I would guess that the card donghan@fabric-network is a PeerAdmin or Channel admin card, and does not have access to the network (and does not specify a Business Network in the card.)
You need to use the Network Admin card - maybe a .card file was created when you did the network start? Try importing and using that card - or building your Network Admin based on certs you have downloaded.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZR7qiqsj978LHnZLL) @Poneey - so that means that the Rest container can make a connection to the CA container - good news. Can you look at the log of the CA container to see if there are any errors?
Hi.
When i try to start the network I have this error. It seems that I need to upgrade fabric but where and how ?
```
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: transaction returned with failure: ReferenceError: window is not defined
```
@rthatcher I hope i look at the good container log .. I have this error in:
1.
2018/04/18 10:07:43 [DEBUG] Initializing enrollment signer
2018/04/18 10:07:43 [DEBUG] No key found in BCCSP keystore, attempting fallback
2018/04/18 10:07:43 [DEBUG] validating configuration
2.
2018/04/18 10:11:41 [DEBUG] Attribute extension being added to certificate is: &{ID:[1 2 3 4 5 6 7 8 1] Critical:false Value:7b226174747273........}
2018/04/18 10:11:41 [DEBUG] Adding attribute extension to CSR: &{ID:[1 2 3 4 5 6 7 8 1] Critical:false Value:7b22617474......}
[ ](https://chat.hyperledger.org/channel/composer?msg=eNYwpmjT7SieCkhhb) @CorentinPacaud - seeing this "ReferenceError: window is not defined" I wonder if you have something in you transaction script called window that is causing a problem.
hmm ok, I will check
Holy f****, that's right !
[ ](https://chat.hyperledger.org/channel/composer?msg=MuLdqcLmJJsct9nF9) @Poneey - I don't know for sure - but I think that for some reason there is a problem with your restadmin card (for some reason the one time secret has been used, but the Certificates are not downloaded.) I would suggest the following:
1. Stop and Remove the rest container.
2. Follow Step 6 of the tutorial to create a new restadmin ID, but call it a different name like testadmin
(Remember that we have an error in step 6 with the sed command - so use this new sed command:
`sed -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/ca.org1.example.com:/' -e 's/localhost:/orderer.example.com:/' < $HOME/.composer/cards/restadmin@trade-network/connection.json > /tmp/connection.json && cp -p /tmp/connection.json $HOME/.composer/cards/restadmin@trade-network/`
3. edit your envvars.txt file to replace restadmin with testadmin
4. re-export the new varibles `source envvars.txt`
5. issue the `docker run .....` command to create a new rest container
6. check the log of the rest container
i obtain this :
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 172.18.0.3:7054]
hello, I already created the rest server with the api and the angular site with yeoman. i am able to create new assets and participants but when I want to run a transaction I cant, instead it shows me *When invoked, this transaction will have the following attributes: * and no button or fields to tun the transaction only a text with the attributes that it would have. Please can someone tell me whats going on
I would like to store all the transaction Id's which are generated automatically after submission of transactions, can I do it. I can see all the transactions in the composer palyground(All Transactions) and also in the Hyperledger Explorer(SystemHistorian)
Please suggest me how to do it
Please suggest me to how to do it
The main problem here is the Transaction Id's which are in All transaction list and in SytemHistory are different. Would like to know y it is varying?
Peer has rejected transaction \'1b7b1e411f047b3ea787a0e89aa233c6aa704c89feb76b3a5c107023a53f077c\' with code ENDORSEMENT_POLICY_FAILURE' }
2018-04-18T15:47:57.393Z ERROR HLFConnectionManager :fabric-client() [Channel.js]: compareProposalResponseResults - read/writes result sets do not match index=1 {}$
2018-04-18T15:47:58.321Z ERROR HLFConnection :invokeChainCode() {"message":"Error trying invoke business network. Error: Peer has rejected transaction '0c64cf0a4f63bba8781d0f12f9c1693c319171dbe2f3d9b4838e6776dd48a719' with code ENDORSEMENT_POLICY_FAILURE","stack":"Error: Error trying invoke business network. Error: Peer has rejected transaction '0c64cf0a4f63bba8781d0f12f9c1693c319171dbe2f3d9b4838e6776dd48a719' with code ENDORSEMENT_POLICY_FAILURE\n at _initializeChannel.then.then.then.then.catch (/home/hyper/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:918:34)\n at
Please suggest me to how to do it
does anybody have experience with deploying chaincode across multiple hosts?
underway
in your chaincode ,don’t use new Date() and random() :joy:
Has joined the channel.
Hey Guys, can we get hash of transaction?
Hi everyone.
My composer version is v0.19.1 and my fabric has a tag of $ARCH-1.0.4. When I try to create admin cards, I get the following error message:
"v0.19.1 is not supported for this level of fabric. Please use version 0.16"
Is there a fabric version out there compatible with composer v0.19.1?
Has joined the channel.
Has joined the channel.
to download fabric 1.1.0, do before executing download script:
export FABRIC_VERSION=hlfv11
Has joined the channel.
Hi Team,
Is there any tool available for converting model(cto) file into ER (entity relationship).
Has joined the channel.
Hi, Just doing the tutorial and I have made it through the prerequisites to "npm start" which states "This will fire up an Angular 4 application running against your REST API at http://localhost:4200." By "fire up" what does it mean the terminal (Ubuntu) just sits there with "webpack: Compiled successfully." showing
Thanks
Hi, Just doing the tutorial and I have made it through the prerequisites to "npm start" which states "This will fire up an Angular 4 application running against your REST API at http://localhost:4200." By "fire up" what does it mean the terminal (Ubuntu) just sits there with "webpack: Compiled successfully." showing
Thanks
EDIT:
localhost:3000 will show the output
Has joined the channel.
Clipboard - April 18, 2018 11:28 PM
Clipboard - April 18, 2018 11:28 PM
Clipboard - April 18, 2018 11:28 PM
Hello friends! Does hyperledger composer have a concept of read-only transactions ? i.e can I write a transaction processor that only reads data from lets say registries are returns that to the caller ? I tried to do this but I am not able to control what gets returned from the transaction
also I am invoking this said read-only transaction via the rest endpoint that composer-rest-server gives me and I am doing a HTTP POST
Has joined the channel.
@rthatcher it's ok, i can access to the rest api now !
Has joined the channel.
Clipboard - 19 april 2018 10:05
@kevinsyx I have the exact same question! I am thinking maybe the way to go is create a separate service for reading data. The service can use the supported SDKs
Hello ! I'm trying to use Google for authentification but I can't access to /auth/google because i use a private IP adress (i run composer in server connected by ssh). Someone know how contourn this ?
Starting to wonder whether the effort is worth it.
Started on the tutorials, battled through and finally got a system running (npm --unsafe-perm helps a lot). Started the Querying top and everything fell to pieces
This ... "composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.2.bna"
worked.
The next step
composer network upgrade -c PeerAdmin@hlfv1 -n tutorial-network -V 0.0.2
Upgrading business network tutorial-network to version 0.0.2
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (tutorial-network:0.0.2))
Command failed
Having a lot of trouble finding help online as apparently things have changed with composer
https://stackoverflow.com/a/49663772/529273
Starting to wonder whether the effort is worth it.
Started on the tutorials, battled through and finally got a system running (npm --unsafe-perm helps a lot). Started the Querying topic and everything fell to pieces
This ... "composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.2.bna"
worked.
The next step
composer network upgrade -c PeerAdmin@hlfv1 -n tutorial-network -V 0.0.2
Upgrading business network tutorial-network to version 0.0.2
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (tutorial-network:0.0.2))
Command failed
Having a lot of trouble finding help online as apparently things have changed with composer
https://stackoverflow.com/a/49663772/529273
[ ](https://chat.hyperledger.org/channel/composer?msg=djPTvZ7rtrajwEuyF) Do you have any reference or guide avialable so we could try this ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZzEdtAN7StP44QyLw) @CarbonMan - the error says that a network with that particular name and version can't be found to install - so my guess is that you forgot to change the version number in the package.json before you built the new v0.0.2 .bna file. You can confirm this with the command `composer archive list -a tutorial-network@0.0.2.bna`
[ ](https://chat.hyperledger.org/channel/composer?msg=ZzEdtAN7StP44QyLw) @CarbonMan - the error says that a network with that particular name and version can't be found to install - so my guess is that you forgot to change the version number in the package.json before you built the new v0.0.2 .bna file. You can confirm this with the command `composer archive list -a tutorial-network@0.0.2.bna`
(I assume you are using Composer v0.19 and Fabric 1.1)
[ ](https://chat.hyperledger.org/channel/composer?msg=zNWNarxSw4u35rqHx) @robvanpamel I am just referring to using the nodejs SDK or golang sdk to build a separate http service that queries fabric directly and responds to user requests
@robvanpamel check this https://github.com/hyperledger/fabric-sdk-node
@ParthPatil thanks, I'm looking into this
[ ](https://chat.hyperledger.org/channel/composer?msg=XRajciQ5LHWamiixs) @surendra-kushwaha - I have not tested these, but I think there are 2 ways to generate UML diagrams which might give you what you require.
1. The `composer generator create` command can create UML output : https://hyperledger.github.io/composer/latest/reference/composer.generator.create
2. There is a VSCode extension : https://github.com/hyperledger/composer-vscode-plugin
There is also the `composer generator docs` command which documents your Business Network - but it doesn't produce diagrams
[ ](https://chat.hyperledger.org/channel/composer?msg=DmraNi4aTzeqADyMr) @Poneey this is really a Google issue (in what it redirects to and relative vs FQ host etc) but this may assist - you'll need to check resources like Google / Stack https://stackoverflow.com/questions/10215863/why-is-google-oauth-returning-invalid-redirect-uri-in-my-rails-app?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa
@mahoney1 thanks, i will try ....
I saw several examples even in the composer documentation where keywords like let and const are used
when I want to use those in playground I do get an error that they are reserved keywords
So it's work but i have a new error ...
Hey, is it possible to submit transactions from within a runtime function transaction? Like you do with BusinessNetworkConnection?
When i try to connect with google, it load for a long time and i have this error in rest's logs :
"Unhandled error for request GET /auth/google/callback?code=4/AAASWZZpqq4ylraiRlrsVq5ghXYJzQIlkByxQ-wOw-pUvXyanfNBjmOo7jPl9JvR31Rr6yeU-GxTyAq8NwscjtY: Error: connect ETIMEDOUT 216.58.198.205:443"
Someone already fix this issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=KFkFFvqADDsaNRBDH) @Bjodn
- not really : a transaction cannot presently be submitted from another transaction. A transaction processor can call other functions / build multiple updates/adds as a single transaction unit of work, and allow for code modularisation, but it will only be registered as a single transaction request for the transaction class in question. BusinessNetworkConnection is used from Composer client to connect to and then interact with a deployed BN Definition instance.
[ ](https://chat.hyperledger.org/channel/composer?msg=QsutMBfzuKiPZbDcX) @mahoney1 I see. Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=Yu88KTMXbxu7zLvH9) @Saschaka local playground? I did a quick check in scripts in https://composer-playground.mybluemix.net and its OK - how are you defining?
let can't be used
[ ](https://chat.hyperledger.org/channel/composer?msg=Yjbx3qC5DHXTCnX5j) @mahoney1 For example like this
Has joined the channel.
Is anyone have developed any enterprise fintech application using Hyperledger Composer tool only?
Has joined the channel.
Has joined the channel.
I want to know if any organisation working with only composer tool to create their own enterprise level apps
Please let me know ASAP
@Saschaka, I suspect there's a `.eslintrc` file missing in your project.
[ ](https://chat.hyperledger.org/channel/composer?msg=nZ5AtdhH4C8y25hGj) @mahoney1 Where should I add that file. Is there a goog playground example I could check?
Hello,
when I create an asset using AssetRegistry.add(...), the asset is created successfully, but I get nothing returned back. What I would like to do is to get back a tansactionId of the transaction. How would I go about it?
@SimonOberzan take this sample network script -> github.com/hyperledger/composer-sample-networks/blob/master/… you would get the transaction ID using `transactionId` field of the transaction object - eg. using (say) `console.log("Transaction id is " + trade.transactionId);` ie trade txn object passed as a parameter. Does that help?
@rthatcher I changed it - but never saved it :(
So I installed the new version with
composer network upgrade --card PeerAdmin@hlfv1 --networkName tutorial-network --networkVersion 0.0.2
Upgrading business network tutorial-network to version 0.0.2
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: could not find chaincode with name 'tutorial-network')
Command failed
but when I attempt to upgrade I get
composer network upgrade --card PeerAdmin@hlfv1 --networkName tutorial-network --networkVersion 0.0.2
Upgrading business network tutorial-network to version 0.0.2
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: could not find chaincode with name 'tutorial-network')
Command failed
@rthatcher I changed it - but never saved it :(
So I installed the new version with
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.2.bna
✔ Installing business network. This may take a minute...
Successfully installed business network tutorial-network, version 0.0.2
Command succeeded
but when I attempt to upgrade I get
composer network upgrade --card PeerAdmin@hlfv1 --networkName tutorial-network --networkVersion 0.0.2
Upgrading business network tutorial-network to version 0.0.2
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: could not find chaincode with name 'tutorial-network')
Command failed
@rthatcher I changed it - but never saved it :(
So I successfully installed the new version with
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.2.bna
✔ Installing business network. This may take a minute...
Successfully installed business network tutorial-network, version 0.0.2
Command succeeded
but when I attempt to upgrade I get
composer network upgrade --card PeerAdmin@hlfv1 --networkName tutorial-network --networkVersion 0.0.2
Upgrading business network tutorial-network to version 0.0.2
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: could not find chaincode with name 'tutorial-network')
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=DwerwhSqF4TwGYSnq) @CarbonMan - Have you run the startFabric.sh script again, since install/start of V 0.0.1 ?
You can check what versions have been installed by looking on the Peer container with the following commands:
```
docker exec -it peer0.org1.example.com /bin/sh
ls /var/hyperledger/production/chaincodes/
exit
```
@rthatcher
ls /var/hyperledger/production/chaincodes/
tutorial-network.0.0.1 tutorial-network.0.0.2
@rthatcher I ran stopFabric and then startFabric
Hello,
Can anyone kindly reply to my message as I am waiting for it for hours?
[ ](https://chat.hyperledger.org/channel/composer?msg=kHYqMjoBBvxHdSCZT) @CarbonMan - OK - so startFabric is badly named, it deletes the existing fabric and starts a new one - see this Answer in Stack Overflow for more information : https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
Can you try composer network start for V 0.0.2 ?
Has joined the channel.
Hi , I am beginner , can somebody plz help me in configuring docker compose file for multiple peers on same machine ,.... I am having issue in port configuring
as the peer1 is not getting connected to its couchdb1
[ ](https://chat.hyperledger.org/channel/composer?msg=Cva7RfrxQw3gTDpg2) @raj_shekhar - you could look at this tutorial which sets up 2 Peers for 2 Organisations = 4 in total. When you follow the tutorial there are docker-compose yaml files. https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=7szNYjQ62xKAS4q73) @shihabullah hi there, fyi, just replying, if someone in the community has, they may well post a suitable response. Certain resources here https://www.hyperledger.org/industries/finance may also be of interest
When i try to connect with google, it load for a long time and i have this error in rest's logs :
"Unhandled error for request GET /auth/google/callback?code=4/AAASWZZpqq4ylraiRlrsVq5ghXYJzQIlkByxQ-wOw-pUvXyanfNBjmOo7jPl9JvR31Rr6yeU-GxTyAq8NwscjtY: Error: connect ETIMEDOUT 216.58.198.205:443"
Someone already fix this issue?
@rthatcher Thank you very much for your help
The feature for submit transaction is not available in angular app developed on hyperledger composer! Is there any tutorial/blog/post for developing the same?
I am new to angular and building rest api.
@rthatcher do you know what's the recommended process for adding a new orderer to an existing network?
is that a valid use case?
do all the crypto artifacts need to be regenerated?
Hi! How can I set composer wallet storePath using environment variable ?? What is the format for it?
`{ "composer": { "wallet" : { "type": "composer-wallet-filesystem", "options" : { "storePath" : "/my/network/location" } } }` I read that this json can be used to export as environment variable.. but I didn't find any format for this..
`{ "composer": { "wallet" : { "type": "composer-wallet-filesystem", "options" : { "storePath" : "/my/network/location" } } }`
I read that this json can be used to export as environment variable.. but I didn't find any format for this..
I mean what should be the variable name to export it???
I mean what should be the variable name to export it as a environment variable???
Im Configuring file system custom card stores by the way..
@Pranoti https://hyperledger.github.io/composer/latest/business-network/cloud-wallets
yes exactly that document im reading but for file system there is no command line specified for environment variable...that's why i wanted to confirm .. is it NODE_CONFIG only??
[ ](https://chat.hyperledger.org/channel/composer?msg=JzJ8oC9CFmoLBYQ9s) @anshulkathuria34 - Transactions will be added to the Angular Generator - not too long in the future, but there is no date for it. In the meantime you would need to write your own code on top of the Angular framework to make POST requests to the REST server for Transactions. I have not seen any specific blog/documentation on the subject.
[ ](https://chat.hyperledger.org/channel/composer?msg=hn9YQ2M4aaHJ3FEex) @vick - changing the orderer setup for a Fabric network is really a Fabric question :-) can you ask this in the #fabric channel
sorry, thank you @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=xDzeYAAm5ni9Rmeq8) @Pranoti - this doc shows you how to configure a file or environment variable https://hyperledger.github.io/composer/latest//business-network/cloud-wallets
[ ](https://chat.hyperledger.org/channel/composer?msg=sW2qBgaXmWzZzGLNu) @Pranoti yes, exactly the same: NODE_CONFIG
[ ](https://chat.hyperledger.org/channel/composer?msg=sW2qBgaXmWzZzGLNu) Sorry I guess you didn't get my question. Specifying it in detail.. the command is missing in the document i want variable name to export it as a environment variable.. is it node_config ore something else ??
env.png
[ ](https://chat.hyperledger.org/channel/composer?msg=vhsAghJscHqXF5SRT) @mahoney1 Okay great thanks that's what I wanted.. :grinning: Thank you so much!!
Hello I have a fully functionnal business Network deployed on a Fabric network, when i submit data through the composer rest server, and I view the peer container logs I get the following messages
"[common/deliver] deliverBlocks -> WARN 056 [channel: composerchannel] Error sending to 172.18.0.1:51918: rpc error: code = Unknown desc = the stream has been done
[kvledger] CommitWithPvtData -> INFO 052 Channel [composerchannel]: Committed block [6] with 1 transaction(s)".
Anyone knows why I am getting the warning message ?
Hey everyone, I'll jump in here as well to ask a question. We've been working on something, and kind of running into an issue, summary being adding an outside organization to an existing network is possible of course, but not sure how to add the new admin to the network. He posted the question on stack overflow, https://stackoverflow.com/questions/49777005/adding-an-organization-to-a-channel-and-composer, as well as a github issue, https://github.com/hyperledger/composer/issues/3858. Hopefully some of these descriptions makes sense.
Hello everyone,
Does somebody knows how could I issue new identities using the comoposer-rest-server explorer ? I've done the multi-user authentitacion and I do not find the way to issue new identities.
Rest api logs:
Unhandled error for request POST /api/system/identities/issue: Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Ca logs:
Checking to see if caller 'jdoe' is a registrar
2018/04/19 15:33:03 [DEBUG] Registration of 'test' failed: : scode: 401, local code: 42, local msg: 'jdoe' is not a registrar, remote code: 20, remote msg: Authorization failure
2018/04/19 15:33:03 [INFO] 172.19.0.8:51394 POST /api/v1/register 401 42 "'jdoe' is not a registrar"
Thanks! :)
Gerard
[ ](https://chat.hyperledger.org/channel/composer?msg=m8tXLuQBYGLhuGrXZ) @omarqr I noticed you've posted it on #fabric too - that is the correct place (as it is a Fabric / orderer service delivery type message)
[ ](https://chat.hyperledger.org/channel/composer?msg=EnQAfGyiakm42MJN7) @Gerard9494 - there is an optional parameter on the `composer identity issue` command to enable the ID (in this case jdoe) to have the privilege to issue other Identities. The optional parameter is ` -x ` and the whole command is documented here: https://hyperledger.github.io/composer/latest//reference/composer.identity.issue
I assume you followed the Google OAuth2 tutorial, where joe doesn't get the privilege :-)
Hi all - does anyone know if the modeling language supports auto timestamps, e.g. putting something like DateTime lastUpdate = now or DateTime lastUpdate auto or something like that?
Has joined the channel.
also hello! i've a question regarding one of IBM's tutorials for deploying applications to their starter plan: https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-networks-on-starter-plan. On step 5 number 1, the command given to "Hyperledger Composer runtime" is `composer runtime install -c adminCard -n vehicle-manufacture-network`.
I've composer v0.19.1 installed which doesn't seem to support those CLI parameters. anyone know what the appropriate call should be?
also hello! i've a question regarding one of IBM's tutorials for deploying applications to their starter plan: https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-networks-on-starter-plan. On step 5 number 1, the command given to "Install the Hyperledger Composer runtime" is `composer runtime install -c adminCard -n vehicle-manufacture-network`.
I've composer v0.19.1 installed which doesn't seem to support those CLI parameters. anyone know what the appropriate call should be?
How to resolve relationship using Composer Query?
My assets:
Vehicle which contains an owner.
I want to list all vehicles along with its owner information using Query in queries.qry.
Using AssetRegistry I can get the results using resolveAll method, anyway how to get the same result using Query?
One question. I have started the REST server http://localhost:3000/explorer. Then how to access it to invoke the REST API by using machine IP from internet?
[ ](https://chat.hyperledger.org/channel/composer?msg=MKb3WuWybiKFrp6LX) @rthatcher thnks a lot
Has joined the channel.
Has joined the channel.
I am having an issue with adapting the cucumber tests provided in the yo basic business network, I can't seem to test a false Boolean, the test is always expecting a true,
Clipboard - April 20, 2018 8:35 AM
There's actually no test coverage for supporting false booleans, so it could be a bug (If what I am doing here is correct) https://github.com/hyperledger/composer/blob/ac35397d628337929733e2762f882ae8a2316bb8/packages/composer-cucumber-steps/features/assets.feature
Leaving only empty spaces resolves false, so I have managed to move forward with my test, raised an issue here: https://github.com/hyperledger/composer/issues/3878
[ ](https://chat.hyperledger.org/channel/composer?msg=JKYqRWRYKSd8NRuuK) @rthatcher - Yes, I've followed the Google OAuth2 tutorial, thanks for your answer, it worked! :)
Nevertheless, can we do it through the API? My objective is to build a test application where I can manage two types of users, admins and normal users.
Do I have to build my own API in order to manage the identities issue rights?
@rthatcher Hello, had you a proxy when you tested google auth tutorial ?
[ ](https://chat.hyperledger.org/channel/composer?msg=AX4tgxwEmRBMDgwTv) @peenakOgilvy - If you are using the IBM Cloud Starter Plan you need to have Composer v0.18.1 - so you should uninstall Composer, re-install. If you have created any Business Cards with v0.19 I think they will be compatible. You can raise a ticket in the IBM Cloud system for support.
[ ](https://chat.hyperledger.org/channel/composer?msg=hiKmvPTkxahJ8abAx) @akshatbh - YES and NO ! The No bit first - your transactions get executed on all 'nominated' Peers in the network so any timestamp function would likely give a slightly different result and your transaction would fail as peers have to 'agree' on the same result. The Yes part is that Composer puts a Timestamp on every transaction for you, and you can query the Transaction in the Historian to get at it.
[ ](https://chat.hyperledger.org/channel/composer?msg=JKMwu9ScK9L9kHYPT) @Mark818 - although the output shows localhost the REST server is not bound to any particular network device on your machine, so you can hit the REST server on port 3000 using the IP Address of the machine.
Clipboard - April 20, 2018 9:29 AM
[ ](https://chat.hyperledger.org/channel/composer?msg=cxfENoigz6YhDQqtm) @Gerard9494 - yes this can also be done with the REST API - see the screenshot:
[ ](https://chat.hyperledger.org/channel/composer?msg=QyEDJ55Cdmx3KzHB8) @Poneey - no I didn't have to configure for a proxy.
@rthatcher Ok thanks .. Because it doesn't work and i think that due to proxy
[ ](https://chat.hyperledger.org/channel/composer?msg=qmy5dgwXSsTurdSSW) @PirangPhan `resolveAll` isn't available in the runtime yet (like it is in composer-client) so you can't get all resolved relationships invoking a Query (say in a TP) - see https://github.com/hyperledger/composer/issues/3454 . But you can get them via REST Filters ; adding `{"include":"resolve"}` as a filter, will resolve all the relationships to the asset owners and you can process the results that way.
[ ](https://chat.hyperledger.org/channel/composer?msg=Ri7fYGxgdoPGureuK) @rthatcher - Cool !! Thanks :)
@akshatbh further info - use `trxn.timestamp` field to get / use the current Date/Time for the transaction - see example here https://stackoverflow.com/questions/43656164/getting-timestamps-in-deterministic-way-in-hyperledger-composer-transactions
@mahoney1 how can I access my generated angular app as different types of participants mentioned in my .cto file?
While using composer playground locally, I can do that by issuing a new identity for each participants
@shihabullah you will need to develop the login aspects of the generated skeleton app if you want to use angular. These resources may help you https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc and https://discourse.skcript.com/t/how-to-build-nodejs-application-for-your-hyperledger-composer-networks/616
Hello All
I have a case: user which is participant has to go through several steps and the steps has to be stored in blockchain. I am not sure what should be steps i.e. participant or asset?
please suggest!
Has joined the channel.
how can i create a identity by providing email and password, with out Oauth ?
how can i create a identity by providing email and password, without Oauth ?
how can i create an identity by providing email and password, without Oauth ?
[ ](https://chat.hyperledger.org/channel/composer?msg=Tww9n33TRymr6jSfA) @d8bhatta not sure of the use case: do you have a model? A participant being created, creates a transaction (the record stored on the bc). Further updates will also create transactions. Those transactions are the 'footprints' that are posted/added to the ledger. If a participant owns (or has a relationship to) an asset, then any activities relating to that can also be tracked.
thanks @mahoney1 , we can track it using historian as well but during the development, we face such scenario that its hard to decide wether to keep the entity as asset or participant
[ ](https://chat.hyperledger.org/channel/composer?msg=3hjnntpA6fDRBYLCF) @ZahidZafar di you mean programmatically using Composer APIs or CLI?
[ ](https://chat.hyperledger.org/channel/composer?msg=3hjnntpA6fDRBYLCF) @ZahidZafar did you mean programmatically using Composer APIs or CLI?
[ ](https://chat.hyperledger.org/channel/composer?msg=6nyFcqp9WoKba6aEj) @mahoney1 i want use reset api
[ ](https://chat.hyperledger.org/channel/composer?msg=6nyFcqp9WoKba6aEj) @mahoney1 i want to use reset api
[ ](https://chat.hyperledger.org/channel/composer?msg=6nyFcqp9WoKba6aEj) @mahoney1 i want to use composer reset APIs.
[ ](https://chat.hyperledger.org/channel/composer?msg=6nyFcqp9WoKba6aEj) @mahoney1 yes by programmatically using Composer Rest APIs
[ ](https://chat.hyperledger.org/channel/composer?msg=5qtbiS8LZxeLKa8uc) @d8bhatta might be worth revisiting concepts page https://hyperledger.github.io/composer/latest/introduction/key-concepts there is a distinction that can help you - participants relate to 'who' is doing what - on target resources (like assets).
@ZahidZafar see these resources: https://medium.com/@aniketengg/hyperledger-composer-issue-identity-import-card-7e07af378447 or snippet https://pastebin.com/ST684NCw or see Caroline Church blog -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc for examples
@mahoney1 where would you put steps which shall have fields like user_id, property_id, step_status,document_link...is the steps particiapant or asset?
@mahoney1 Thanks for the reply, will be checking it shortly.
Another question, I have written a query in a .qry file. How will I use it in composer playground and the yeoman generated app?
@d8bhatta could be either (samples shown) depending on your use case eg ```asset IdTracker identified by user_id {
o String user_id
o String name
o String property_id
o String step_status
o String document_link
--> Participant participant
}
``` but some sample networks here https://github.com/hyperledger/composer-sample-networks/tree/master/packages (and in particular, models under 'models') can help you get a better picture
[ ](https://chat.hyperledger.org/channel/composer?msg=3FePPSJr6xaZ35ehf) @shihabullah call your query in your TP code eg given ```query myQryTest {
description: "Select all commodities"
statement:
SELECT org.acme.trading.Commodity
WHERE ( tradingSymbol == _$tradingSymbol AND mainExchange == _$mainExchange )
}
in your TP code
return query('myQryTest', {
"tradingSymbol": "3",
"mainExchange": "3"
})
.then(function (results) {
for (var n = 0; n < results.length; n++) {
blah
```
as for generated skeleton app, you would need to format the results obviously to render them accordingly in your customised app :-)
@mahoney1 logic.js file contains the following code while running composer playground:
async function publish(publishBond) { // eslint-disable-line no-unused-vars
const registry = await getAssetRegistry('org.acme.bond.BondAsset');
const factory = getFactory();
return query('Q1')
// Create the bond asset.
const bondAsset = factory.newResource('org.acme.bond', 'BondAsset', publishBond.ISINCode);
bondAsset.bond = publishBond.bond;
// Add the bond asset to the registry.
await registry.add(bondAsset);
}
But I cannot see or getting back any result set as per my query written in queries.qry file as mentioned below:
query Q1{
description:"Select all the issuers named John"
statement: SELECT org.acme.bond.Issuer
WHERE (name == "John")
}
Please tell me what to do and how actually queries are used and implemented. I am in the learning stage regarding hyperledger query language. Thanks in advance!
@shihabullah something like ```
async function MyTrxnFunc(trxn) {
var results = await query('Q1');
for (let n = 0; n < results.length; n++) {
let trade = results[n];
// do something with this element so you can see on Developer console or chaincode logs
console.log('Trade identifier is ' + trade.getIdentifier());
console.log('New owner is ' + trade.newOwner.lastName);
}
}``` etc
@shihabullah something like ```
async function MyTrxnFunc(trxn) {
var results = await query('Q1');
for (let n = 0; n < results.length; n++) {
let trade = results[n];
// do something with this element so you can see on Developer console or chaincode logs (if connected to Fabric not online playground)
console.log('Trade identifier is ' + trade.getIdentifier());
console.log('New owner is ' + trade.newOwner.lastName);
}
}``` etc
Has joined the channel.
Hi :)
I'm looking to implement a custom strategy (a passport oauth2 strategy) to use with "composer-rest-server"
I installed the node module passport-http-bearer, but I can't find any tutorial about :(
@giovanniconte we have a tutorial for this already https://hyperledger.github.io/composer/latest//tutorials/google_oauth2_rest but a slight change on the `sed` command script where shown in that tutorial : Follow Step 6 of the tutorial to create a new restadmin ID, but call it a different name like testadmin
(Remember that we have an error in step 6 with the sed command - so use this new sed command: It should be `sed -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/ca.org1.example.com:/' -e 's/localhost:/orderer.example.com:/' < $HOME/.composer/cards/restadmin@trade-network/connection.json > /tmp/connection.json && cp -p /tmp/connection.json $HOME/.composer/cards/restadmin@trade-network/ `
@giovanniconte we have a tutorial for this already https://hyperledger.github.io/composer/latest//tutorials/google_oauth2_rest but a slight change on the `sed` command script where shown in that tutorial : so use this new sed command: It should be `sed -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/ca.org1.example.com:/' -e 's/localhost:/orderer.example.com:/' < $HOME/.composer/cards/restadmin@trade-network/connection.json > /tmp/connection.json && cp -p /tmp/connection.json $HOME/.composer/cards/restadmin@trade-network/ `
[ ](https://chat.hyperledger.org/channel/composer?msg=x3nYf5gGtCMwctG5s) @mahoney1 thanks for the answer. I followed that tutorial, and it works fine. The tutorial is related for using the "passport-github" node module. Instead, I would use the "passport-http-bearer" node module
And I'm looking for a guideline to use that module (passport-http-bearer -> https://github.com/jaredhanson/passport-http-bearer) with composer
@giovanniconte we don't have a tutorial for this, sorry, but there may be some guidance on using that strategy from others, or via a search
hello,everyone
now,i deployed a fabric service( 3 pc , orderer and peer are Created by make orderer(peer)) ,include 1orderer ,2 peer. use v1.1.0
and , compsoer-playground, v0.19.1
after i start composer-playground service. i used Chrome to create a BNC:
Hyperledger Fabric v1.1
Connect to a new v1.1 Blockchain
after input orderer、peer、ca infomation ,
orderer(s) : Name(orderer.example.com) Url(http://192.168.0.1:7050)
peer(s) : Name(peer0.org1.example.com) Url(http://192.168.0.2:7051) Event Url(http://192.168.0.2:7053)
peer(s) : Name(peer1.org1.example.com) Url(http://192.168.0.3:7051) Event Url(http://192.168.0.3:7053)
CA : Name(ca.example.com) Url(http://192.168.0.4:7054)
after click button, i input admin`s cert and priavtekey(not Connect ca to enroll cert)
click create button to create BNC
after Created this BNC, i deploy a new business network whith anyone model,
and input admin`s cert and priavtekey(not Connect ca to enroll cert)
last, i click deploy button.
i check the peer debug log,
the peer node created chaincode docker was 12 minutes!
the chaincode docker created successfully, but the browser got an error:
An error has occurred
Error:Failed to import identity.Error:priavtekey not specified or not a string
i have two questions:
1. why the peer created chaincode docker so slow
2. why browser got that error
when i use fabric-ca-server to enroll admin cert:
i got an error :
Error: Error trying to start business network. Error: Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP]
[ ](https://chat.hyperledger.org/channel/composer?msg=j7iFd7W5MzEqJoe6s) @mahoney1 ok, thanks
@james3443112 suggest to do network tracing in your multi-machine setup - resolution? You could determine things at a Fabric level first by deploying the Marbles chaincode samples https://github.com/IBM-Blockchain/marbles/tree/v4.0/chaincode/src/marbles to your custom blockchain Fabric network, and check? on 2, sounds like a privateKey was not supplied? What OS are you running on?
Hi everybody.
I have a network with a participant: faezeh and a participant: researchAgency plus asset Y, I want to grant access to researchAgency to see asset Y. When I try it, it gives me this error. Do you know what is this error related to?!
Error: Object with ID 'faezeh' in collection with ID 'Participant:org.acme.health.researchAgency' does not exist
@mahoney1 hi, could I please get an opinion on the error below, generated when trying to run ```composer archive create -t dir -n .```
```TypeNotFoundException: Type UpdateBusinessNetwork is not defined in namespace org.hyperledger.composer.system```
@mahoney1 hi, could I please get an opinion on the error below, generated when trying to run composer archive create -t dir -n .
TypeNotFoundException: Type UpdateBusinessNetwork is not defined in namespace org.hyperledger.composer.system
@mahoney1 hi, could I please get an opinion on the error below, generated when trying to run composer archive create -t dir -n .
TypeNotFoundException: Type UpdateBusinessNetwork is not defined in namespace org.hyperledger.composer.system
@mahoney1 hi, could I please get an opinion on the error below, generated when trying to run composer archive create -t dir -n .
TypeNotFoundException: Type UpdateBusinessNetwork is not defined in namespace org.hyperledger.composer.system
@mahoney1 hi, could I please get an opinion on the error below, generated when trying to run ''composer archive create -t dir -n "
TypeNotFoundException: Type UpdateBusinessNetwork is not defined in namespace org.hyperledger.composer.system
@mahoney1 hi, could I please get an opinion on the error below, generated when trying to run ''composer archive create -t dir -n ."
TypeNotFoundException: Type UpdateBusinessNetwork is not defined in namespace org.hyperledger.composer.system
((I am trying to move to composer 0.19 and I am not sure what I'm omitting with the update routine))
(I am trying to move to composer 0.19 and I am not sure what I'm omitting with the update routine)
anybody now why my transactions are not showing in my ui of my skeleton app created by yeoman?
*know
i can create new assets and participants but cant make transactions in the UI
[ ](https://chat.hyperledger.org/channel/composer?msg=QHoDYLhYwoNoq9Tyy) @uber.twin - somewhere in your network files you are trying to reference "UpdateBusinessNetwork" in the system namespace - perhaps in a query?
We now have the system namespace documented - so for future reference you can check here: https://hyperledger.github.io/composer/latest/systemns/systemns-index
If you can't immediately find the error in the model, you could start pasting the files into the online playground where errors will be highlighted interactively.
@cuevrob this is not supported yet (is currently being worked on though)
Hi
I would like to know if we can initialize some global variables in the composer chaincode logic ? How can I perform init equivalent from golang cc ?
[ ](https://chat.hyperledger.org/channel/composer?msg=tjhyurQYgFXeg4DtF) @sstone1 alright man cool, thanks for the response
[ ](https://chat.hyperledger.org/channel/composer?msg=jtARNEDztXSN39N3D) @faezeh993 - can you share your model and acl file?
[ ](https://chat.hyperledger.org/channel/composer?msg=4N2dBNgrDYoEuga32) @rthatcher thank you, I had a query doing just that
[ ](https://chat.hyperledger.org/channel/composer?msg=Wd6SWjBy9Xg5qfzST) @rthatcher Thankyou!
@faezeh993 its related to ACLs - eg need something like (assuming asset class is Y ```rule seeAsset {
description: "Can see asset"
participant: "org.acme.health.researchAgency"
operation: ALL
resource: "org.acme.mynet.Y"
action: ALLOW
}``` see https://hyperledger.github.io/composer/latest/reference/acl_language for examples
@faezeh993 its related to ACLs - eg need something like (assuming asset class is Y ```rule seeAsset {
description: "Can see asset"
participant: "org.acme.health.researchAgency"
operation: ALL
resource: "org.acme.health.Y"
action: ALLOW
}``` see https://hyperledger.github.io/composer/latest/reference/acl_language for examples
I asked this yesterday, but wanted to throw something in again to see if I can get something back. Are we able to add another admin organization to an already started network? The deploy to multiple org tutorial (https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org) goes through this with steps 15 and 16 getting the admin certificates for the different orgs before step 17 and starting the network. But after the network starts, we haven't been able to find the right way to add a new admin org to that network. Is this possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=QzzTxSBXcnhGKnmCK) @jackschultz - you are not alone in requesting this, and we are looking at a new tutorial for this :-) The issue referred to here does give some information on how to tackle the problem before the tutorial is available.
https://github.com/hyperledger/composer/issues/3858
[ ](https://chat.hyperledger.org/channel/composer?msg=E57DbQFRZ6DP9fMk8) @rthatcher Thanks for your response. I actually fixed it! :)
@rthatcher Excellent, thanks very much for the response. That's actually the issue that was created by one of the guys who I'm working with, and I hadn't checked for updates yet today! We'll work to check into it as well.
small world !!
I'm trying to upgrade my network from a stable 19.1 to an unstable: 0.19.2-20180420035315 version, and am seeing this:
```
composer network upgrade -n tutorial-network -V 0.0.w -c PeerAdmin@hlfv1
Response from attempted peer comms was an error: Error: 2 UNKNOWN: transaction returned with failure: Error: Cannot upgrade business network. New composer runtime version of (0.19.2-20180420035315) is not compatible with (0.19.1). Composer runtime has changed major or minor version and cannot be upgraded.
```
@alexvicegrab Assuming you npm uninstalled the older Composer modules before installing the new@unstable editions first - you can follow the sequence of steps in 'Steps Three and Four' to deploy the network as shown in this tutorial https://hyperledger.github.io/composer/latest/tutorials/queries to regenerate / upgrade your business network to a new version
Step 3 and 4 is what I followed
The issue is with the way semver works
https://github.com/hyperledger/composer/issues/3890
semver.satisfies('0.19.2-20180420035315', '^0.19.1') returns false
While semver.satisfies('0.19.2', '^0.19.1') returns true
Has joined the channel.
is there any way to have a UI that can both create assets and participants and also process transactions?
@cuevrob yes, you can extend the code in the generated angular app to make an HTTP POST call to the REST API - the REST API includes APIs for submitting transactions
[ ](https://chat.hyperledger.org/channel/composer?msg=8SS7j9qQ6wSst67fo) @sstone1 alright man thanks for the response
What is the url to logout from Composer Rest Server that uses github passport strategy? I am using http://localhost:3000/auth/logout but it only logged out the user from Composer rest server but not from Github account.
@vijayin26 only GitHub can logout from GitHub - the Composer REST server cannot do that
@sstone1 when try to authenticate with rest server we use http://localhost:3000/auth/github url right. The same way there should be a url that can logout both from Composer rest server as well as github right.
when you call http://localhost:3000/auth/github, the Composer REST server initiates an OAuth2 based login with GitHub - it redirects to GitHub, where the user must login to GitHub and grant access to the Composer REST server - and then GitHub redirects back to the Composer REST server
yes true ... what is the way to logout the user when multi user authentication mode enabled?
http://localhost:3000/auth/github
http://localhost:3000/auth/logout
I tried it but only removes token from cookies but not logged out the user
If I refresh again the the github user is not logged out so it fetches the token again ....I want to force the user to do the github login again...
why? that's not generally how oauth2 based applications work
imagine if the user was using github to work on their source code... and then they logged out of your application, which logged them out of github... and then they'd have to log back into github to work on their source code again
From a web application if the user clicks on logout button it has to logout that user right otherwise the user is always logged in...
again - this is how oauth2 applications generally work
you delegate authentication to a third party identity/authentication service (in this case github)
as long as the user is logged into that service (github) they can use your application
Has joined the channel.
Has joined the channel.
what is the diffrenet between Hyperledger Composer Modeling Language and fabric smart contract ?
because as per as my understanding i think composer modeling language is as layer to help you to write my business instead of my smart contract
Has joined the channel.
hi :)
does anyone know how to run composer-cli in a docker container? Documentation anywhere?
@mahoney1 hi , i also deploy the model of Marbles。
1. i check the peer`s log , the chaincode deployed successfully 。
peer chaincode list -C testchannel --instantiated
the chaincode created successfully
2. i usr centos 7.4 to deploy fabric service
@nasserfci correct, Composer is a layer or framework for developing smart contracts on top of Fabric - the modelling language, business centric APIs and other features allow you to focus on the business use case instead of the underlying technical platform
The business network definition (.bna) file is equivalent to a Fabric chaincode and is deployed in exactly the same way
@waleed try something like “docker run —rm -it hyperledger/composer-cli network ping”
Has joined the channel.
Hi
I have a question here
When I try to run the createPeerAdminCard.sh
It tells me "No version of composer-cli"
But I actually have composer-cli installed
What does “composer -v” return?
It gives me error
Clipboard - April 21, 2018 11:28 PM
I just follow the toturial
You have not installed Node 8
You have Node 6 or earlier installed
I have version 7
Node 7.2.1
You need Node 8
As per the documentation
Is version 8.9.4 ok?
Any version of Node 8 will do
I've tried using node 8
But it always failed to compile
When I ran "npm install composer-cli -g"
node-gyp has some problem
Did you use root or sudo?
Yup
I'm using sudo
Don’t use root or sudo with nvm, Node.js, or npm
If you use nvm, you should never need root or sudo
It should be the problem most probably
I'll try
By the way, is it possible to use composer on a multi-nodes fabric blockchain?
For now, I just tried it on my macbook. But I need to deloy several peers on different machines later.
Can organizations be added dynamically/systematically through api? Want a new org to register, add participants through an app then ready to use Fabric without manual intervention
Has joined the channel.
Has joined the channel.
Hi world
Seeking Blockchain experienced developer for project with doctors without borders. Please reply if qualified
Has joined the channel.
I'm trying to get composer working with an existing Fabric network. I've successfully installed the runtime, started my business network, but when I try to ping it, I get:
composer network ping -c admin@tutorial-network
2018-04-21T22:23:08.227Z INFO ConnectionProfileManager:getConnectionManagerByTy Looking up a connection manager for type {"0":"hlfv1"}$
2018-04-21T22:23:08.963Z INFO ConnectionProfileManager:getConnectionManagerByTy Using this connection manager {"0":{"connectionProfileManager":{}}}$
2018-04-21T22:23:10.632Z ERROR HLFConnection :enroll() {"message":"Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: unable to get local issuer certificate]","stack":"Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: unable to get local issuer certificate]\n at caClient.enroll.then.then.then.then.catch (/home/bcsdev/.nvm/versions/node/v8.9.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:206:34)\n at
Hi
Clipboard - April 22, 2018 11:40 AM
I deployed my fabric network on my local machine. Then I try to connect to the network on my macbook using composer
But it keeps failing
Clipboard - April 22, 2018 11:43 AM
It works fine on my local machine
When I use localhost
But not, when I use remote machine as peer
Clipboard - April 22, 2018 12:46 PM
premature execution - chaincode is being launched
what does this mean?
Hello
How to use rest api to update the asset?
Has joined the channel.
Has joined the channel.
Hi everyone, I am developing a business network with hyperledger composer. I have followed the tutorial on composer web site at https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html and have made the tutorial-network as well. Now I am facing one issue. after finishing defining your business network, how is it possible to get the underlying Fabric code that is generated? I can't think of a reason why it should be necessary to have it directly, but lets say if for any reason, like having to give Fabric code to your customer for whom you have developed a poc, you need to have that. Is Fabric code being saved somewhere? I have looked into the business network folder; there are only subfolders for models, test, the business network itself, and after you generate the archive file there is only one file with .bna extension. Nothing related to Fabric there!
I have raised this question in stackoveflow at https://stackoverflow.com/questions/49961633/how-to-access-the-underlying-fabric-code-in-hyperledger-composer but it seems there aren’t so many people who are answering composer or fabric questions there. Many people like me refer to stackoverflow the first thing. I appreciate for helping developing the community there kindly answer it there. I appreciate your help.
The other question that I have asked in https://stackoverflow.com/questions/49962051/what-admin-peer-can-do-in-hyperledger-composer is related to PeerAdminCard. In defining a business network, at some point after starting fabric, a PeerAdminCard is created by ./createPeerAdminCard.sh After that it can be seen in the card name and when imported for a specific business network, it can be seen to what Business Network it has been assigned.
Based on my undestanding this peer is the admin of the network, and when you run composer-playground, this is what you see in ID Registry on top right which has access to everything (all participants, assets and transactions.) And it seems that this Admin (PeerAdminCard) can also issue other identities. If these assumption are correct (please correct me if I am wrong), the following questions rise for me:
1- Is it safe to have such a peer in network?
2- Doesn't it make things more centralized?
3- If it can add peers to the network, can't it save the secret key of the peers and later use that to impersonate that peer or just simply read the content of transactions which are made by that peer?
4- Regarding question number 3, are transactions made in a channel already encrypted so that only members of the channel can somehow decrypt them by their private key or if Admin adds itself to a channel at some point in time can simply read those transactions without difficulty?
I appreciate any help. Thank you in advance.
Is there an explanation of how the Composer artifacts relate to Fabric artifacts and what identities are used for various operations? What in the flow of composer commands actually registers a new Fabric identity? What identity is used to perform that registration and where does the identity come from?
Is there an explanation of how the Composer artifacts relate to Fabric artifacts and what identities are used for various operations? What in the flow of composer commands actually registers a new Fabric identity? What identity is used to perform that registration and where does the identity come from?
Is there an explanation of how the Composer artifacts relate to Fabric artifacts and what identities are used for various operations? What in the flow of composer commands actually registers a new Fabric identity? What identity is used to perform that registration and where does the identity come from?
Has joined the channel.
Has joined the channel.
Hi all. I am getting following error when trying to deploy:
{"status":500,"name":"indexed_db_went_bad","message":"unknown","reason":"Failed to open indexedDB, are you in private browsing mode?"}
Has joined the channel.
Has joined the channel.
Hi everyone I am developing a businessn network with Composer and I'd like to know if I can create my own tokens with Composer or do I have to switch to Hyperledger Fabric ?
[ ](https://chat.hyperledger.org/channel/composer?msg=B2KXfeFXyWoWvYpQB) @d8bhatta Just create a transaction that update your asset
[ ](https://chat.hyperledger.org/channel/composer?msg=JppfSS95KE5zerPPb) @EEB I am not sure of it but I don't think that any Fabric code is generated. I think that the .bna file is interpreted by Fabric thanks to the NodeJs SDK (https://github.com/hyperledger/fabric-sdk-node) and then executed. If you're customer wants to see the code I think that the one made with Composer is suficient. Do not forget that Composer is a framework
[ ](https://chat.hyperledger.org/channel/composer?msg=xautbgXapZBkBwqeF) @kuna.sharma What is the command you used ?
@EEB there is a "shim" component of Composer that is native Fabric chaincode (written in go) that supports an implementation of a NodeJs VM in which the Fabric transactions run. This obviously requires every node to install these components before being able to run a bna. A better solution that the Fabric team is working on delivering is a native js chaincode implementation in which the bna contains not only the transaction code but also the shim. This will make Fabric a portable applicaiton that can be installed on a node like any Fabric application. So you might want to wait a bit ...
Can someone update fabric multi-org deployment. It looks like by mistake it was spelled BFYN instead of BYFN
Clipboard - April 23, 2018 6:15 AM
Has joined the channel.
I just opened an issue on github if anybody knows a fix please let me know this is driving me insane https://github.com/hyperledger/composer/issues/3893
@FredHaws
Hi there,
Could you please send me an email with your RFP (Request for proposal) document for the block-chain solution by developing an application?
I hope we could assist you with minimum cost and high quality and efficiency!
Shihab Ullah
Software Engineer
BJIT Limited
shihab.ullah@bjitgroup.com
sample.jpg
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org.html
```✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (ssg-wda-network:0.0.2))
```
@Varun2887 it looks like you haven't started the fabric containers it seems. Can you paste output of following commands docker ps -qa
@Varun2887 it looks like you haven't started the fabric containers it seems. Can you paste output of following commands `docker ps -qa`
```
72f312748e7f
f77a4f327d5d
f951eb02ac32
358a1326df4e
5f45b0ab4c29
8e89dc94ca93
21f9f6827829
9c9deb6e8028
88c2e0f8a1f9
c7b97c0e9904
89f5c5208226
81e19d463e25
c637af5a8ba4
8e6f7505a6f0
8cfde81c1781
262587a5a5a8
4f0cb92854d7
637d8c00d0d4
```
its there
is your version number correct?
in the fabric script i have started the network and have made the peers join it
yes
send me `docker ps -a ` response once
```CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
72f312748e7f hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 5 minutes ago Up 5 minutes 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.TP2.WDA.com
f77a4f327d5d hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 5 minutes ago Up 5 minutes 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer0.AG1.WDA.com
f951eb02ac32 hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 5 minutes ago Up 5 minutes 0.0.0.0:11051->7051/tcp, 0.0.0.0:11053->7053/tcp peer0.AG2.WDA.com
358a1326df4e hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 5 minutes ago Up 5 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.SSG.WDA.com
5f45b0ab4c29 hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 5 minutes ago Up 5 minutes 0.0.0.0:12051->7051/tcp, 0.0.0.0:12053->7053/tcp peer1.SSG.WDA.com
8e89dc94ca93 hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 5 minutes ago Up 5 minutes 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer0.TP1.WDA.com
21f9f6827829 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-e..." 6 minutes ago Up 5 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5988->5984/tcp couchdborg5
9c9deb6e8028 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-..." 6 minutes ago Up 5 minutes 0.0.0.0:8054->7054/tcp ca.TP1.WDA.com
88c2e0f8a1f9 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-e..." 6 minutes ago Up 5 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5986->5984/tcp couchdborg3
c7b97c0e9904 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-e..." 6 minutes ago Up 5 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdborg1
89f5c5208226 hyperledger/fabric-orderer:x86_64-1.0.4 "orderer" 6 minutes ago Up 5 minutes 0.0.0.0:7050->7050/tcp orderer.localhost
81e19d463e25 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-..." 6 minutes ago Up 5 minutes 0.0.0.0:10054->7054/tcp ca.AG1.WDA.com
c637af5a8ba4 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-..." 6 minutes ago Up 5 minutes 0.0.0.0:7054->7054/tcp ca.SSG.WDA.com
8e6f7505a6f0 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-..." 6 minutes ago Up 5 minutes 0.0.0.0:11054->7054/tcp ca.AG2.WDA.com
8cfde81c1781 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-e..." 6 minutes ago Up 5 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5989->5984/tcp couchdborg6
262587a5a5a8 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-e..." 6 minutes ago Up 5 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5987->5984/tcp couchdborg4
4f0cb92854d7 hyperledger/fabric-ca:x86_64-1.0.4 "sh -c 'fabric-ca-..." 6 minutes ago Up 5 minutes 0.0.0.0:9054->7054/tcp ca.TP2.WDA.com
637d8c00d0d4 hyperledger/fabric-couchdb:x86_64-1.0.4 "tini -- /docker-e..." 6 minutes ago Up 5 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5985->5984/tcp couchdborg2
```
WORKED
was using wrong network name:(
Hello all,
I am using composer-api to install network:
`// Install the Hyperledger Composer runtime
async function networkInstall(){
let adminConnection = new AdminConnection();
let businessNetworkDefinition = BusinessNetworkDefinition.fromDirectory(pathToBNA);
try {
await adminConnection.connect(cardNameForPeerAdmin);
console.log("connected");
await adminConnection.install(businessNetworkDefinition);
console.log("installed");
// Business network installed
} catch (error) {
// Add optional error handling here.
console.log("error");
console.log(error);
}
}`
I am getting following error while installing network:
TypeError: businessNetworkDefinition.getMetadata is not a function
at HLFConnection.install (/home/honey/blockchain/HLF-Course-Domain-Model-master/airlinev9/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:420:54)
at Promise.resolve.then (/home/honey/blockchain/HLF-Course-Domain-Model-master/airlinev9/node_modules/composer-admin/lib/adminconnection.js:271:36)
at
Hello all,
I am using composer-api to install network:
`// Install the Hyperledger Composer runtime
async function networkInstall(){
let adminConnection = new AdminConnection();
let businessNetworkDefinition = BusinessNetworkDefinition.fromDirectory(pathToBNA);
try {
await adminConnection.connect(cardNameForPeerAdmin);
console.log("connected");
await adminConnection.install(businessNetworkDefinition);
console.log("installed");
// Business network installed
} catch (error) {
// Add optional error handling here.
console.log("error");
console.log(error);
}
}`
I am getting following error while installing network:
TypeError: businessNetworkDefinition.getMetadata is not a function
at HLFConnection.install (/home/honey/blockchain/HLF-Course-Domain-Model-master/airlinev9/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:420:54)
at Promise.resolve.then (/home/honey/blockchain/HLF-Course-Domain-Model-master/airlinev9/node_modules/composer-admin/lib/adminconnection.js:271:36)
at
Hello all,
I am using composer-api to install network:
`// Install the Hyperledger Composer runtime
async function networkInstall(){
let adminConnection = new AdminConnection();
let businessNetworkDefinition = BusinessNetworkDefinition.fromDirectory(pathToBNA);
try {
await adminConnection.connect(cardNameForPeerAdmin);
console.log("connected");
await adminConnection.install(businessNetworkDefinition);
console.log("installed");
// Business network installed
} catch (error) {
// Add optional error handling here.
console.log("error");
console.log(error);
}
}
`
I am getting following error while installing network:
TypeError: businessNetworkDefinition.getMetadata is not a function
at HLFConnection.install (/home/honey/blockchain/HLF-Course-Domain-Model-master/airlinev9/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:420:54)
at Promise.resolve.then (/home/honey/blockchain/HLF-Course-Domain-Model-master/airlinev9/node_modules/composer-admin/lib/adminconnection.js:271:36)
at
Hello all,
I am using composer-api to install network:
`// Install the Hyperledger Composer runtime
async function networkInstall(){
let adminConnection = new AdminConnection();
let businessNetworkDefinition = BusinessNetworkDefinition.fromDirectory(pathToBNA);
try {
await adminConnection.connect(cardNameForPeerAdmin);
console.log("connected");
await adminConnection.install(businessNetworkDefinition);
console.log("installed");
// Business network installed
} catch (error) {
// Add optional error handling here.
console.log("error");
console.log(error);
}
}`
I am getting following error while installing network:
TypeError: businessNetworkDefinition.getMetadata is not a function
at HLFConnection.install (/home/honey/blockchain/HLF-Course-Domain-Model-master/airlinev9/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:420:54)
at Promise.resolve.then (/home/honey/blockchain/HLF-Course-Domain-Model-master/airlinev9/node_modules/composer-admin/lib/adminconnection.js:271:36)
at
Hello all,
I am using composer-api to install network:
`// Install the Hyperledger Composer runtime
async function networkInstall(){
let adminConnection = new AdminConnection();
let businessNetworkDefinition = BusinessNetworkDefinition.fromDirectory(pathToBNA);
try {
await adminConnection.connect(cardNameForPeerAdmin);
console.log("connected");
await adminConnection.install(businessNetworkDefinition);
console.log("installed");
// Business network installed
} catch (error) {
// Add optional error handling here.
console.log("error");
console.log(error);
}
}`
I am getting following error while installing network:
TypeError: businessNetworkDefinition.getMetadata is not a function
at HLFConnection.install (/home/honey/blockchain/HLF-Course-Domain-Model-master/airlinev9/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:420:54)
at Promise.resolve.then (/home/honey/blockchain/HLF-Course-Domain-Model-master/airlinev9/node_modules/composer-admin/lib/adminconnection.js:271:36)
at
Hello all,
I am using composer-api to install network:
```
// Install the Hyperledger Composer runtime
async function networkInstall(){
let adminConnection = new AdminConnection();
let businessNetworkDefinition = BusinessNetworkDefinition.fromDirectory(pathToBNA);
try {
await adminConnection.connect(cardNameForPeerAdmin);
console.log("connected");
await adminConnection.install(businessNetworkDefinition);
console.log("installed");
// Business network installed
} catch (error) {
// Add optional error handling here.
console.log("error");
console.log(error);
}
}
```
I am getting following error while installing network:
```
TypeError: businessNetworkDefinition.getMetadata is not a function
at HLFConnection.install (/home/honey/blockchain/HLF-Course-Domain-Model-master/airlinev9/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:420:54)
at Promise.resolve.then (/home/honey/blockchain/HLF-Course-Domain-Model-master/airlinev9/node_modules/composer-admin/lib/adminconnection.js:271:36)
at
`rule ParticipantRegistryControlPermission {
description: "give admin ALL access to ACME participant types"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.acme.airline.**"
action: ALLOW
}`
` action: ALLOW` is going
Has joined the channel.
does anyone met this error before? chaincode launched and waiting for registration
more detail https://stackoverflow.com/questions/49974724/hyperledger-on-ibm-cloud-chaincode-launched-and-waiting-for-registration
Hello, google oauth doesn't work for me ... When i try to registrate, it load for a long time and there is an error time out in rest's log ..
Hi Team, Do we have any commands to get the Block number and Data in the Block to showcase running Blockchain system on which Business network is deployed. I need to demonstrate it to client .
Has joined the channel.
Hi everyone, I used Fabric Go SDK to Put or Get from State DB, does anyone know how to get details of a transaction from transaction id?
P.s: I call PutState with my own key, not using stub.GetTxID
@titoe218 wrong channel, try #fabric-sdk-go
@prmdmshra you need to use the Fabric SDK to access block information
@sstone1 Thanks
@tim-hub you have to use composer v0.18.1 (not v0.18.2, not v0.19.x) at the moment
[ ](https://chat.hyperledger.org/channel/composer?msg=pipHr8HYJ6vtJjrR5) @tim-hub - just asnwered this question on Stack Overflow
@HoneyShah `let businessNetworkDefinition = BusinessNetworkDefinition.fromDirectory(pathToBNA);` - fromDirectory returns a promise so you need to `await` it
[ ](https://chat.hyperledger.org/channel/composer?msg=JqDNNMhNnYW6F9QMv) @prmdmshra - if you are after a visual tool for a demo, you might like to look at the 'Blockchain Explorer' https://github.com/hyperledger/blockchain-explorer
[ ](https://chat.hyperledger.org/channel/composer?msg=RSBdhZT2QB5Snaz6s) @Varun2887 - good news it worked - you can use the `composer archive list` command to verify the network name and version from your .bna file
yea used that
saw it from one of ur git post :)
Has joined the channel.
Can anyone help me with this
can anyone help me with this . events.js:183░░░░░░⸩ ⠹ extract:cross-spawn: sill extract stream-http@2.8.1
throw er; // Unhandled 'error' event
^
Error: write after end
at writeAfterEnd (_stream_writable.js:236:12)
at PassThrough.Writable.write (_stream_writable.js:287:5)
at PassThrough.Writable.end (_stream_writable.js:563:10)
at ReadEntry.entry.on (/Users/abhinavmishra/.nvm/versions/node/v8.11.1/lib/node_modules/npm/node_modules/pacote/lib/extract-stream.js:19:41)
at emitOne (events.js:121:20)
at ReadEntry.emit (events.js:211:7)
at ReadEntry.emit (/Users/abhinavmishra/.nvm/versions/node/v8.11.1/lib/node_modules/npm/node_modules/tar/node_modules/minipass/index.js:287:25)
at ReadEntry.[maybeEmitEnd] (/Users/abhinavmishra/.nvm/versions/node/v8.11.1/lib/node_modules/npm/node_modules/tar/node_modules/minipass/index.js:240:12)
at ReadEntry.end (/Users/abhinavmishra/.nvm/versions/node/v8.11.1/lib/node_modules/npm/node_modules/tar/node_modules/minipass/index.js:153:27)
at Unpack.[consumeBody] (/Users/abhinavmishra/.nvm/versions/node/v8.11.1/lib/node_modules/npm/node_modules/tar/lib/parse.js:210:13)
at Unpack.[consumeChunkSub] (/Users/abhinavmishra/.nvm/versions/node/v8.11.1/lib/node_modules/npm/node_modules/tar/lib/parse.js:391:40)
at Unpack.[consumeChunk] (/Users/abhinavmishra/.nvm/versions/node/v8.11.1/lib/node_modules/npm/node_modules/tar/lib/parse.js:362:30)
at Unzip.(anonymous function).on.chunk (/Users/abhinavmishra/.nvm/versions/node/v8.11.1/lib/node_modules/npm/node_modules/tar/lib/parse.js:291:59)
at emitOne (events.js:116:13)
at Unzip.emit (events.js:211:7)
at Unzip.emit (/Users/abhinavmishra/.nvm/versions/node/v8.11.1/lib/node_modules/npm/node_modules/tar/node_modules/minipass/index.js:287:25)
events.js:183░░░░░░⸩ ⠏ extract:postcss-normalize-charset: sill extract registry
throw er; // Unhandled 'error' event
@sstone1 hi Simon, thanks
I downgrade to 0.18.1
but I get another error:
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode
[ ](https://chat.hyperledger.org/channel/composer?msg=8wCkatGyvJ3mP9yPM) @adrianblakey @EEB @lvndry - Adrian is correct, but it has already been delivered in Fabric 1.1 GA and Composer v0.19
[ ](https://chat.hyperledger.org/channel/composer?msg=CGybx7XX5M3ZyrdG8) @tim-hub - it is likely that you have specified the wrong name or version on network start command - you can execute `composer archive list` to get the exact details from the .bna file that you have presumably installed.
@rthatcher I think `composer achieve list` doesn't work on 0.18.1
But I think I get your idea
[ ](https://chat.hyperledger.org/channel/composer?msg=6JbByXwge3vDT79Lq) @tim-hub - sorry - I'm in a v0.19 zone at the moment !
Hi
Clipboard - April 23, 2018 5:02 PM
When I try to deploy my local playground
It asks me for credentials
But it's not the base for online playground
Did I miss something?
@IceFox The online Playground is probably using a Web connection rather than a real Fabric instance. The Web connection is for prototyping and quick testing, and any credentials used can get fluffed up automagically for you. Deploying to a real Fabric you need to specify a real identity (known to the Fabric Certificate Authority) that will be configured as the administrative identity for that network, and which is used to initially connect to the network and set up other participants. The development configuration of Fabric provided with Composer contains an identity called _admin_ with enrollment secret _adminpw_ that you can use for this purpose
Can I use the fabric network that is deployed on other machines for composer?
The development configuration specify localhost, I try to change to other local ip
Clipboard - April 23, 2018 5:20 PM
Like this
Hello
When I run ./createPeerAdminCard.sh, I get this error. https://justpaste.it/2lymj
shortly,
/createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv1
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.18.2
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Failed to import the business network card
keyword: required
dataPath:
Screen Shot 2018-04-23 at 3.06.25 PM.png
[ ](https://chat.hyperledger.org/channel/composer?msg=zdrt4bjcq47n5rg5P) @sstone1 Thanks for your response.
@sstone1 @rthatcher In BusinessNetworkDefination.fromArchive() we need to pass zipBuffer as documented in https://hyperledger.github.io/composer/latest/api/common-businessnetworkdefinition.html#fromarchive . So my question is how to create it?
I have run ./tearDownFabric.sh as well as teardownall
but I am still getting error
@Icefox "_Can I use the fabric network that is deployed on other machines for composer_" you can, but your Composer business network users (eg jbloggs@yournetwork) will need the resolved connection profile info (including docker container names resolved, such as those you've pasted) to be able to interact with that environment and for those docker containers to be able to talk to each other (assuming they're on the same subnet?) - hostnameOverride may help you https://stackoverflow.com/questions/45915565/how-can-i-specify-canonical-server-name-in-composer-connection-profile?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa
@Icefox "_Can I use the fabric network that is deployed on other machines for composer_" you can, but your Composer business network users (eg jbloggs@yournetwork) will need the resolved connection profile info (including docker container names resolved, such as those you've pasted) to be able to interact with that environment and for those docker containers to be able to talk to each other (assuming they're on the same subnet?) - hostnameOverride may help you https://stackoverflow.com/questions/45915565/how-can-i-specify-canonical-server-name-in-composer-connection-profile and https://hyperledger.github.io/composer/latest/reference/connectionprofile.html
Has joined the channel.
Yes
Actually, the machines are in the same subnet
Clipboard - April 23, 2018 5:38 PM
The peer did receive my request
But, then it stop here
[ ](https://chat.hyperledger.org/channel/composer?msg=pa2bjd28ANo4n8Dy6) @d8bhatta judging by your paste messages - although running you're running 0.18.2 - you have not followed the steps to remove an old version of the fabric-tools - you need to do that (rm -rf that dir) - then get a new fabric-tools (see Step Four https://hyperledger.github.io/composer/latest/installing/development-tools.html) - then it should tell you the default is hlfv11 so you will get the correct Fabric (v1.1 GA docker) runtime images
[ ](https://chat.hyperledger.org/channel/composer?msg=DRK72cQLJbDYAqZNb) @mahoney1 Thx, man
I just solved it. Turns out I forget to change all the localhost to ip. Leaving the orderer still using localhost
@mahoney1 ok.. i am trying
[ ](https://chat.hyperledger.org/channel/composer?msg=bwYEpPp923tm6WqB2) @IceFox ok cool.
Currently, it's really a big progress for me
I'll dig deeper
how many tranasctions are kept in a block
can we control it?
@mahoney1 Really appreciate your help!
Can somebody refer me tutorial i.e. node js and composer connection and perform add/edit and query operation?
Hello guys, is it possible with queries to have some reductions like count, sum, ... ?
[ ](https://chat.hyperledger.org/channel/composer?msg=FN6THFHXShBQ2zBYT) @Varun2887 - really a #fabric question (ie its configured there) - see https://stackoverflow.com/questions/42756681/how-exactly-blocks-are-created-in-hyperledger-fabric for parameters and details here - http://hyperledger-fabric.readthedocs.io/en/release-1.1/configtx.html this thread may also be of interest https://chat.hyperledger.org/channel/composer?msg=EmdLy3oQ9Zv6LzyHB
[ ](https://chat.hyperledger.org/channel/composer?msg=FN6THFHXShBQ2zBYT) @Varun2887 - really a #fabric question (ie its configured there) - see https://stackoverflow.com/questions/42756681/how-exactly-blocks-are-created-in-hyperledger-fabric for parameters and details here - http://hyperledger-fabric.readthedocs.io/en/release-1.1/configtx.html this thread may also be of interest chat.hyperledger.org/channel/composer?msg=EmdLy3oQ9Zv6LzyHB
[ ](https://chat.hyperledger.org/channel/composer?msg=m7YxiSnzB2xmicJR3) @ppcm not yet, is is raised as an issue to address https://github.com/hyperledger/composer/issues/2052
hyperledger has empty blocks?
or is it mandatory to have a transaction
@mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=LGRSa9ffqSbLMuERT) @d8bhatta https://github.com/hyperledger/composer-sample-networks and the Composer docs
@mahoney1 Thanks for the answer, I added a +1, but any idea if someone with take in charge this evolution?
[ ](https://chat.hyperledger.org/channel/composer?msg=TFXCHPM4JwiKBeDFb) @Varun2887 please ask on #fabric also this may help https://stackoverflow.com/questions/42756681/how-exactly-blocks-are-created-in-hyperledger-fabric?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa or check the Fabric docs.
[ ](https://chat.hyperledger.org/channel/composer?msg=TFXCHPM4JwiKBeDFb) @Varun2887 please ask on #fabric also this may help https://stackoverflow.com/questions/42756681/how-exactly-blocks-are-created-in-hyperledger-fabric or check the Fabric docs.
[ ](https://chat.hyperledger.org/channel/composer?msg=7pc2iQAGrTXr3yepN) @HoneyShah `BusinessNetworkDefinition.fromArchive()` is used to read from a _.bna_ file so you might use it like this:
```
const bnaFile = fs.readFileSync('/path/to/bna/file');
const networkDefinition = await BusinessNetworkDefinition.fromArchive(bnaFile);
```
@bestbeforetoday Thanks!!
Clipboard - 23 april 2018 14:18
Clipboard - 23 april 2018 14:18
Clipboard - 23 april 2018 14:18
Hello!
I have made changes in BNA file.. But in rest server API, the changes are not reflected.. So I tried using npm install and start.. The BNA file changes are not reflecting anywhere... What to do ?? What am missing?
[ ](https://chat.hyperledger.org/channel/composer?msg=X2aGMC2xtcW884wGq) @Pranoti - this is the flow:
edit files (model query etc) - remember to update the version number in the package.json
create a new archive `composer archive create`
install the newly updateed archive on to the peers: `composer network install`
upgrade the network `composer network upgrade`
Note that you will now have a new docker container, and you can check the version of your running network with `composer network ping`
you can remove old chaincode containers and images using docker commands.
Hi, is there a way to query related assets/participants within the REST-API ? I'm trying to do this with the 'include' filter, but i can't get it to work.
Has joined the channel.
Good Mornig. Hoping to join this channel
*Good Morning (I need more coffee)
[ ](https://chat.hyperledger.org/channel/composer?msg=vgjK3hCZYd8tzpL7J) Okay, just found the solution, you have to use `{"include":"resolve"}`. Is this mentioned somewhere in the documentation ?
Is there an explanation of how the Composer artifacts relate to Fabric artifacts and what identities are used for various operations? What in the flow of composer commands actually registers a new Fabric identity? What identity is used to perform that registration and where does the identity come from?
We've released #Hyperledger #Composer, with API key security for the REST server, access to the underlying #Fabric client SDK from the #Composer client + admin SDKs, various bug fixes, and the latest #CongaComic featuring #BlockNorris! 🌟 https://github.com/hyperledger/composer/releases/tag/v0.19.2
We've released Hyperledger Composer, with API key security for the REST server, access to the underlying Fabric client SDK from the Composer client + admin SDKs, various bug fixes, and the latest CongaComic featuring BlockNorris! 🌟 https://github.com/hyperledger/composer/releases/tag/v0.19.2
We've released Hyperledger Composer v0.19.2, with API key security for the REST server, access to the underlying Fabric client SDK from the Composer client + admin SDKs, various bug fixes, and the latest CongaComic featuring BlockNorris! 🌟 https://github.com/hyperledger/composer/releases/tag/v0.19.2
[ ](https://chat.hyperledger.org/channel/composer?msg=CyAybpH5Xu28mLX7f) @erNail hi, Loopback Filters are mentioned here -> https://hyperledger.github.io/composer/latest/business-network/query.html
[ ](https://chat.hyperledger.org/channel/composer?msg=CyAybpH5Xu28mLX7f) @erNail hi, Loopback Filters are mentioned here -> https://hyperledger.github.io/composer/latest/business-network/query.html and some examples shown in the knowledge wiki https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md
[ ](https://chat.hyperledger.org/channel/composer?msg=dzLhr2MFvxoE8sg34) @mahoney1 From the documentation: ` Currently, only the WHERE LoopBack filter is supported`. This appears to be wrong, since i'm using the include filter right now-.
Has joined the channel.
Hi Awesome Community! :smiley:
I am new to hyperledger. I am facing problem in installing composer-cli
npm version: 5.8.0
@erNail Loopback `include` filter should be there...as well, to my knowledge.
[ ](https://chat.hyperledger.org/channel/composer?msg=Hga7DSMixf7doDcJf) @adilj13 :-) hello there - have you seen the prerequisites page https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html and and followed that - then tried the install as shown here? -> https://hyperledger.github.io/composer/latest/installing/development-tools.html ? What's the problem?
[ ](https://chat.hyperledger.org/channel/composer?msg=bKiGZNemZz2pMLbB2) @mahoney1 I opened an issue about it https://github.com/hyperledger/composer/issues/3899.
[ ](https://chat.hyperledger.org/channel/composer?msg=RwqF3rccGnkQcgzT4) @toddinpal see here
https://www.slideshare.net/MattLucas3/blockchain-composed-v207, here https://hyperledger.github.io/composer/latest/introduction/key-concepts.html and here https://stackoverflow.com/questions/47197045/what-is-the-difference-between-composer-network-and-composer-identity-and-also-r?rq=1
[ ](https://chat.hyperledger.org/channel/composer?msg=RwqF3rccGnkQcgzT4) @toddinpal using composer identity issue (CLI) -> https://hyperledger.github.io/composer/latest/managing/identity-issue.html also here
https://www.slideshare.net/MattLucas3/blockchain-composed-v207, here https://hyperledger.github.io/composer/latest/introduction/key-concepts.html and here https://stackoverflow.com/questions/47197045/what-is-the-difference-between-composer-network-and-composer-identity-and-also-r?rq=1
Hello, I am working on implementing a sample usecase of blockchain using hyperledger composer and hyperledger fabric. In hyperldger composer I have created participants like Mnaufacturer, retailer and customer. And I am able to give permissions to the users by creating new id's (I am giving only create permission to the manufacturer, he is unable to do delete and update and read actions). In local it works fine. When I am trying to deploy that .bna file to the hyperledger fabric network it doesn't take any permissions. Please help me out on this.
[ ](https://chat.hyperledger.org/channel/composer?msg=5f8JtguPD6LRridJ5) @mahoney1 I followed both. But I am unable to install composer-cli. the answer at https://stackoverflow.com/questions/44813895/unable-to-install-composer-cli is saying that composer does not support npm v5.
I am confused. :(
[ ](https://chat.hyperledger.org/channel/composer?msg=M38CRieyDtdecYxKE) @MasthanbeeShaik16 suggest to post a Stack Overflow with the details of the ACLs you've created - if you 'deploy that bna to the Fabric network' it most certainly should include the .acl file contents as you wrote them and behave as they did in the runtime of your playground network (as the same user) etc.
yes @mahoney1 Hyperledger fabric network has admin access defaultly. Is there any way to change the admin to user?
@adilj13 npm 5.x is supported (that SO is quite 'old' but I've added a note to that SO to cross-ref the latest supported pre-reqs like npm etc)
@mahoney1 Thanks let me try. once again.
@MasthanbeeShaik16 see https://hyperledger.github.io/composer/latest//reference/acl_language for use of ACLs. Suggest to backup/export you BNA to a file in case you lock yourself out etc. You can restrict what an admin or business network participant can do in your network.
hey guys! i'm using composer 0.19.1 and i'm facing this error (shown in rest-server logs):
```
cp: can't create '/composer-rest-server/server/boot/composer-discovery.js': No such file or directory
cp: omitting directory '/home/composer/.npm-global/lib/node_modules'
```
i have no idea of why this is happening, since I'm using the docker image provided by hyperledger which I guess should have these directories. could anyone enlighten me?
can you paste 1) a screenshot, of the command sequence prior to this? 2) What OS are you using and version and 3) docker ps output
@bandreghetti can you paste 1) a screenshot, of the command sequence prior to this? 2) What OS are you using and version and 3) docker ps output
Has joined the channel.
@mahoney1 have a look.
adil@karigar:~/fabric-tools$ sudo npm install -g composer-cli
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
/usr/local/bin/composer -> /usr/local/lib/node_modules/composer-cli/cli.js
npm WARN fsevents@1.2.0 had bundled packages that do not match the required version(s). They have been replaced with non-bundled versions.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.0 (node_modules/composer-cli/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.0: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
+ composer-cli@0.19.2
added 114 packages from 75 contributors, removed 2 packages and updated 2 packages in 74.844s
adil@karigar:~/fabric-tools$ sudo ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher
Screenshot from 2018-04-23 20-52-21.png
Screenshot from 2018-04-23 20-52-21.png
@mahoney1 have a look please.
@adilj13 per https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html - it explicitly states `Do not use npm with sudo or su to root to use it.` You should uninstall the composer modules and install as an ordinary non-privileged user in your OS. If need be, see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues for guidance on best practices for
@adilj13 per https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html - it explicitly states `Do not use npm with sudo or su to root to use it.` (This is because it causes issues for npm, and therefore Composer). You should uninstall the composer modules and install as an ordinary non-privileged user in your OS. If need be, see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues for guidance on best practices for
Then it show error permission denied.
@adilj13 - see guidance on best practices - for npm - in the link I sent.
Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=cBdERgENDKSsyb83K) @mahoney1 forget it, i found the cause of the error! it was local so i don't believe it's worth reporting. thanks anyway!
[ ](https://chat.hyperledger.org/channel/composer?msg=cBdERgENDKSsyb83K) @mahoney1 nevermind, i found the cause of the error! it was local so i don't believe it's worth reporting. thanks anyway!
Has joined the channel.
@bandreghetti cool
@mahoney1 Thanks, I will read through those links and see if I can make sense of it.
Hi everyone. Do you know if it possible to make a query that doesn't specify a transaction type?
Something like `SELECT org.transactions WHERE (timestamp > _$dateFrom)`
team, any idea, I have a rest server witth persistent database and authorization set with githup, I got authorized on the rest server and imported the network card. however, when I try to process arequest from the angular app generated, I get Error: 401 - Unauthorized. can you tell my how I can get angular app authorized?
[ ](https://chat.hyperledger.org/channel/composer?msg=kzrp5LqC7MjeHnHJW) @joaofguerreiro What do you the query to return ?
Has joined the channel.
Can someone tell me if its possible to select specific attributes of an asset in queries.qry file?
Hello All,
Can I retrieve the chaincode(GO file) that is internally built by my HyperLedger composer BNA.
Hi all, can some help me how to connect AZURE VM using RDP ?
as I am unable to connect through RDP, I need local browser of Ubuntu VM on azure
I am able to connect the VM through putty
Hi,
Why there is no newTransaction method in https://hyperledger.github.io/composer/latest/api/runtime-factory?
Hi,
Why there is no `newTransaction` method in https://hyperledger.github.io/composer/latest/api/runtime-factory?
Hi,
What is difference between Runtime module's registry and Client module registries?
Client module : https://hyperledger.github.io/composer/latest/api/client-participantregistry
Runtime module : https://hyperledger.github.io/composer/latest/api/runtime-participantregistry
Hi,
What is difference between Runtime module's registry and Client module registries?
Client module : https://hyperledger.github.io/composer/latest/api/client-participantregistry
https://hyperledger.github.io/composer/latest/api/client-assetregistry
Runtime module : https://hyperledger.github.io/composer/latest/api/runtime-participantregistry
https://hyperledger.github.io/composer/latest/api/runtime-assetregistry
Hi,
What is difference between Runtime module's registry and Client module registries?
Client module : https://hyperledger.github.io/composer/latest/api/client-participantregistry
https://hyperledger.github.io/composer/latest/api/client-assetregistry
Runtime module : https://hyperledger.github.io/composer/latest/api/runtime-participantregistry
https://hyperledger.github.io/composer/latest/api/runtime-assetregistry
[ ](https://chat.hyperledger.org/channel/composer?msg=bDt465tsz2LP8Wsra) @rthatcher It worked!! :relaxed: Thank you!!
UNKNOWN: premature execution - chaincode (tutorial-network:0.0.1) is being launched
What does this line mean?
When I follow the tutorial
It gives this error
Hello! How to start REST server in detached mode?
Hi..
I'm implementing user authentication and I have to call the addParticipant() and identityIssue() API's.. So where these API should be written? in logic.js file or need to create new js file? or somewhere else ? I read on stackoverflow that it should be written in client application.. Is it correct?
Hi..
I'm implementing user authentication and I have to call the addParticipant() and identityIssue() API's.. So where these API should be written? in logic.js file or need to create new js file? or somewhere else ? I read on stackoverflow that it should be written in client application.. Is it correct? Im implementing web application using angular..
Hi..
I'm implementing user authentication and I have to call the addParticipant() and identityIssue() API's.. So where these API should be written? in logic.js file or need to create new js file? or somewhere else ? Just FYI, I'm implementing web application using angular..
I found that some mention "CORE_CHAINCODE_STARTUPTIMEOUT=1200s"
Set the core chaincode startuptimeout bigger
1200s
Hi everyone! Can I use a transacation define in the model file but not in the logic file ?
[ ](https://chat.hyperledger.org/channel/composer?msg=p5vBpGe2bYjS8hgd2) @anshulkathuria34 - The Queries tutorial takes you through this including sample queries that use different attributes: https://hyperledger.github.io/composer/latest/tutorials/queries
[ ](https://chat.hyperledger.org/channel/composer?msg=ryqGHx9KvLRaDxkLW) @suneel18 - Since v018.2 of Composer it has been using Fabric 1.1 where JavaScript can be used natively as an alternative to Go - so there is no Go translation.
[ ](https://chat.hyperledger.org/channel/composer?msg=grcdhgWd3sXmPxr5x) @suva - you might have more luck investigating vnc rather than rdp - but this is a Composer channel for Hyperledger composer questions :-)
I have created a BNA file. How can I deploy into the ubuntu composer environment ?
plz share some helpful link so that I can refer
[ ](https://chat.hyperledger.org/channel/composer?msg=nW6PEBew4hcrdF6YA) @IceFox - I assume you have composer v0.19, Fabric 1.1, and that you are working through the Developer Tutorial.
This is an unusual error - I think it is the result of running a composer network start command a second time after a failure? What commands were you using to generate the error, and just before the error?
composer network install -c
that would be the installation
[ ](https://chat.hyperledger.org/channel/composer?msg=mnvtb7bNPoAXb2ZEx) @argman - you have a couple of 'good' options - you can write a startup script to work on Linux with systemctl, or you could run the REST server as a Docker Container (examples of this can be seen in the tutorial for Google Oauth2 authentication for Multi-user - but you can run it it a Container without using multi-user mode). There is also a 'bad' but quick way to do this using 'nohup'.
[ ](https://chat.hyperledger.org/channel/composer?msg=2vDMExb22apgdmmpC) @Pranoti - if you are using the Angular App generated by Composer, then you will also have the REST server running - you might find it easier to make calls to the REST endpoints. If you want to write against the API I would suggest going through this document: https://hyperledger.github.io/composer/latest/applications/node.html
[ ](https://chat.hyperledger.org/channel/composer?msg=QPcc5qoetsDmPco6f) @rthatcher can you please let me know about this>
[ ](https://chat.hyperledger.org/channel/composer?msg=QPcc5qoetsDmPco6f) @rthatcher can you please let me know about this?
[ ](https://chat.hyperledger.org/channel/composer?msg=p4xSj4Sj6S5Wbxkjb) @suva - if you are trying to copy files into a Linux system you might want to explore ftp, sftp, or copying the files to a site you can reach from the Linux box - but this is a Hyperledger Composer channel not a Linux channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=rZQQqfRF7fmC7gvYQ) @rthatcher Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=QPcc5qoetsDmPco6f) @HoneyShah - any module under the Runtime API is available to you in the logic of a Transaction Processor function, AND only modules in the Runtime API are available to TP functions. Admin, Client and Common API functions are available if you are writing a generic NodeJS application. ParticipantRegistry is available to is available in Runtime and Client API.
[ ](https://chat.hyperledger.org/channel/composer?msg=zqczNTrGoC87m9SPP) @lvndry in general, you have a TP function to match your modeled transaction (that's how you use it), but you can still define it in the model and add logic later.
Hi does anyone here able to deploy even just on 2 VM the MultiOrg? VM1 = Org1 and VM2 = Org2? using this tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org ? Thanks in Advanced
[ ](https://chat.hyperledger.org/channel/composer?msg=uHpARdS2gY99tfN93) @rthatcher I have already read through the tutorial. In the tutorial it isn't shown if you can select any attribute of any asset. They are always selecting the asset and applying where condition on the attributes. So thats why I wanted to ask can you simply select any attribute of an asset?
[ ](https://chat.hyperledger.org/channel/composer?msg=3QnKS42qnuf9y4Hka) @rthatcher I am still confuse. Can you please elaborate more possibly by some example?
@JeffGutierrez see item 2 from this table, may help you (it talks about 'physical' machines but similar anyway) -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--multi-org--byfn-composer-tutorial---issues
[ ](https://chat.hyperledger.org/channel/composer?msg=DESgP93LAtn6vdYh2) @mahoney1 This is great thanks a lot @mahoney1
@anshulkathuria34 Not presently supported (ie retrieves the whole record) there is an issue raised https://github.com/hyperledger/composer/issues/3020 -you would select the record(s) and step through in a results array, at the present time.
This error appared after updating composer-cli. Anyone knows why ?
module.js:549
throw err;
^
Error: Cannot find module './api'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.
@HoneyShah - Client example (as explained by Rob) -> https://hyperledger.github.io/composer/latest/applications/node.html - where you first 'connect' to the runtime business network and then work with the participant (say) classes you've defined (in your model) from your client app. Runtime example -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L79 (the latter is transaction logic embedded in the deployed business network ie the smart contract).
@HoneyShah - Client example (as explained by Rob) -> https://hyperledger.github.io/composer/latest/applications/node.html - where you first 'connect' to the deployed business network and then work with the participant (say) classes you've defined (in your model) from your client app. Runtime example -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L79 (the latter is transaction logic embedded in the deployed business network ie the smart contract).
@lvndry please see the prereqs - your Node version is not supported https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
I have node v8.11.1
and npm 6.0.0
No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher error I m getting while running createPeerAdminCard.sh
I have checked the version is 0.19
can anyone help me why this error is coming?
[ ](https://chat.hyperledger.org/channel/composer?msg=CrrfkaEdZ9xJZ59Cj) @mahoney1 got it!! Thanks
plz some one help me
@suva - is it because you've tried to install using root or sudo ? https://hyperledger.github.io/composer/latest/installing/development-tools.html can you send a screenshot of the sequence of commands leading up
i have installed all the installation without sudo or root
1. Essential CLI tools:
Copy
npm install -g composer-cli
2. Utility for running a REST Server on your machine to expose your business networks as RESTful APIs:
Copy
npm install -g composer-rest-server
3. Useful utility for generating application assets:
Copy
npm install -g generator-hyperledger-composer
4. Yeoman is a tool for generating applications, which utilises generator-hyperledger-composer:
Copy
npm install -g yo
this is the sequence I followed
azureuser@sbox1ybhu-ca0:~$ npm install -g composer-cli
npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support
/home/azureuser/.npm/bin/composer -> /home/azureuser/.npm/lib/node_modules/composer-cli/cli.js
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.2 (node_modules/composer-cli/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
+ composer-cli@0.19.2
updated 1 package in 13.145s
this is how I installed
node version? npm version ? have you checked all of the prereqs are matched https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
@suva node version? npm version ? have you checked all of the prereqs are matched https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
azureuser@sbox1ybhu-ca0:~$ npm --version
5.6.0
azureuser@sbox1ybhu-ca0:~$ node --version
v8.9.0
azureuser@sbox1ybhu-ca0:~$
@mahoney1
Does .exists() function return an error if the asset is not present in the AssetRegistry?
@anshulkathuria34 https://hyperledger.github.io/composer/latest//jsdoc/module-composer-runtime.AssetRegistry.html#exists__anchor ...returns a promise ... is resolved with a boolean of true if the specified asset exists in the asset registry, etc etc eg ```// Get the vehicle asset registry.
return getAssetRegistry('org.example.Vehicle')
.then(function (vehicleAssetRegistry) {
// Determine if the specific vehicle exists in the vehicle asset registry.
return assetRegistry.exists('VEHICLE_1');
})
.then(function (exists) {
// Process the the boolean result.
console.log('Vehicle exists', exists);
})
.catch(function (error) {
// Add optional error handling here.
});```
After upgrading to the latest composer release(v0.19.2) I reinstalled and started my business network from the fresh including uninstall and installing PeerAdmin card. Business network application is also seems working normally with the latest version. However, while checking whether network is available via `network ping` command I am seeing below responses which is saying current composer runtime version is 0.19.
After upgrading to the latest composer release(v0.19.2) I reinstalled and started my business network from the fresh including uninstall and installing PeerAdmin card. Business network application is also seems working normally with the latest version. However, while checking whether network is available via `network ping` command I am seeing below responses which is saying current composer runtime version is 0.19.1
```
$ composer network ping -c admin@airlinev9
The connection to the network was successfully tested: airlinev9
Business network version: 0.0.1
Composer runtime version: 0.19.1
participant: org.hyperledger.composer.system.NetworkAdmin#admin
identity: org.hyperledger.composer.system.Identity#ebdfde0f4822b524447b43aafa169d8d5f874dda3de893b545d91c23e195859d
Command succeeded
bhavesh (master *) dist
$ composer -version
v0.19.2
bhavesh (master *) dist
$ composer card list
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ admin@airlinev9 │ admin │ airlinev9 │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --card
After upgrading to the latest composer release(v0.19.2) I reinstalled and started my business network from the fresh including uninstall and installing PeerAdmin card. Business network application is also seems working normally with the latest version. However, while checking whether network is available via `network ping` command I am seeing below responses which is saying current composer runtime version is 0.19.1
```
$ composer network ping -c admin@airlinev9
The connection to the network was successfully tested: airlinev9
Business network version: 0.0.1
Composer runtime version: 0.19.1
participant: org.hyperledger.composer.system.NetworkAdmin#admin
identity: org.hyperledger.composer.system.Identity#ebdfde0f4822b524447b43aafa169d8d5f874dda3de893b545d91c23e195859d
Command succeeded
bhavesh (master *) dist
$ composer -version
v0.19.2
bhavesh (master *) dist
$ composer card list
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ admin@airlinev9 │ admin │ airlinev9 │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --card
[ ](https://chat.hyperledger.org/channel/composer?msg=2x8PxcC9A5wyCc8gv) @rthatcher The previous error is "Timeout"
@BhaveshPatadiya The runtime refers to the version of Composer that is installed on to the Peer with your Network - you can see this if you execute docker ps -a | grep dev. You should upgrade your business network as shown in Step Three and Four below https://hyperledger.github.io/composer/latest/tutorials/queries
plz some one help me
regarding my error which i have posted
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=oMJjxpEwjiTpG4iLA) I tried executing `docker ps -a | grep dev.` and geting below response.
```
$ docker ps -a | grep dev
3bceeb9986e9 dev-peer0.org1.example.com-airlinev9-0.0.1-8d572b96af93071c23ce295dffea243997132b519af3200136cb8dcb730ebd34 "/bin/sh -c 'cd /usr…" 16 minutes ago Up 16 minutes dev-peer0.org1.example.com-airlinev9-0.0.1
```
Also, I actually already removed the earlier created peer container and install and create the fresh one.
@suva what does `composer-v` and `npm ls -g --depth=0` show. Suggest to create a Stack Overflow with full details and description of your environment, clearly something not right in your environment as you should be able to do a composer install (if you've cleanly removed old modules - and removed old wallets from previous failed attempts that is). You should capture the output of the composer-cli install and check for messages of any failures to find out why its not installing properly.
@suva what does `composer -v` and `npm ls -g --depth=0` show. Suggest to create a Stack Overflow with full details and description of your environment, clearly something not right in your environment as you should be able to do a composer install (if you've cleanly removed old modules - and removed old wallets from previous failed attempts that is). You should capture the output of the composer-cli install and check for messages of any failures to find out why its not installing properly.
[ ](https://chat.hyperledger.org/channel/composer?msg=ms8wWrDinKpJWJ3W3) @IceFox - this answer from Stack Overflow deals with Timeout in the second part of the answer, and might help you: https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer/49758354#49758354
So I would think the best course is to
1. modify the yaml file as described,
2. then run `startFabric.sh` script again,
3. `composer network install ...`
4. `composer network start ...`
@BhaveshPatadiya - can you paste your package.json
composer version is 0.19
[ ](https://chat.hyperledger.org/channel/composer?msg=YvdmQo3omjHRJZMZh)
```
{
"name": "airlinev9",
"version": "0.0.1",
"description": "Incremental creation of the ACME model",
"scripts": {
"test": "mocha --recursive"
},
"author": "Rajeev",
"email": "raj@acloudfan.com",
"license": "Apache-2.0",
"devDependencies": {
"composer-admin": "latest",
"composer-client": "latest",
"composer-connector-embedded": "latest",
"browserfs": "latest",
"chai": "latest",
"eslint": "latest",
"istanbul": "latest",
"mkdirp": "latest",
"mocha": "latest"
},
"dependencies": {
"chai": "^4.1.2"
}
}
```
Here it is.
[ ](https://chat.hyperledger.org/channel/composer?msg=FZYC8fnCvYE2gdsHN) @suva we're on 0.19.2 now, not 0.19.0 https://github.com/hyperledger/composer/releases and not sure if you're resuming install attempts (from earlier versions))
azureuser@sbox1ybhu-ca0:~$ npm ls -g --depth=0
/home/azureuser/.npm/lib
├── composer-cli@0.19.2
├── composer-playground@0.19.2
├── composer-rest-server@0.19.2
├── formatio@1.2.0
├── fs-promise@2.0.3
├── generator-hyperledger-composer@0.19.2
├── node@8.9.4
├── npm@5.6.0
├── pug@2.0.3
├── upgrade@1.1.0
└── yo@2.0.2
`which composer`
@suva command `which composer` ?
Has joined the channel.
azureuser@sbox1ybhu-ca0:~$ /home/azureuser/.npm/bin/composer -v
module.js:672
return process.dlopen(module, path._makeLong(filename));
^
Error: The module '/home/azureuser/.npm/lib/node_modules/composer-cli/node_modules/node-report/api.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 48. This version of Node.js requires
NODE_MODULE_VERSION 57. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).
at Object.Module._extensions..node (module.js:672:18)
at Module.load (module.js:556:32)
at tryModuleLoad (module.js:499:12)
at Function.Module._load (module.js:491:3)
at Module.require (module.js:587:17)
at require (internal/module.js:11:18)
at Object.
can some one help, how to resolve the error "Error: channel create configuration tx file not found open C:/Program Files/Git/etc/hyperledger/configtx/composer-channel.tx: no such file or directory"
this is the error I am getting while running composer -v
[ ](https://chat.hyperledger.org/channel/composer?msg=B8yK9kajn9y9Wt6nj) @mahoney1 I was trying to use it as if(assetRegistry.exists(idSpecified)) //Do something and it is giving error when the idSpecified is not present but is working fine if the idSpecified is present
[ ](https://chat.hyperledger.org/channel/composer?msg=i2fJHJdgu4FMznZnc) @BhaskarRaju - this looks like a Fabric error that you might be better asking in the #fabric channel - but also be aware thet Composer is not supported on Windows.
[ ](https://chat.hyperledger.org/channel/composer?msg=8PKyJ3FYh8bwomF3W) @rthatcher thank you
is there an issue with update functionality in composer 0.19.1
[ ](https://chat.hyperledger.org/channel/composer?msg=ibML6Nav6ekByXYvS) @suva Which version of node are you running? It seems like that one might be out of date
```
/**
* Transaction processor function.
* @param {org.acc.ssg.txPayment} inputTx Payment transaction instance.
* @transaction
*/
function txPayment(inputTx) {
return query("getUsers", { nric: inputTx.nric }).then(function (queryResult) {
var userAssetToUpdate = [];
for (var userAsset of queryResult) {
var userAssetJSON = getSerializer().toJSON(userAsset);
console.log("input userAsset ", userAsset);
(inputTx.sUtilised).forEach(function (s) {
if (userAssetJSON.Id == s.Id
&& userAssetJSON.remainingAmount >= s.allocatedAmount) {
userAssetJSON.remainingAmount -= s.allocatedAmount;
userAssetJSON.inTransition += s.allocatedAmount;
console.log("output userAsset ", userAssetJSON);
// userAssetToUpdate.push(getSerializer().fromJSON(userAssetJSON));
return getAssetRegistry('org.acc.ssg.Users').then(function (ugReg) {
console.log("1111", ugReg);
return ugReg.update(getSerializer().fromJSON(userAssetJSON));
console.log("2222");
});
}
});
}
}).catch(function (error) {
// Add optional error handling here.
throw new Error(error);
});```
the asset is not getting updated no error as well
@suva - so Composer did not install properly as suspected. What version of python are you using ? `python --version`
@suva - so Composer did not install properly as suspected. What version of python are you using ? `python --version` - in our prereqs we strongly recommend installing NVM to manage node versions. Composer install did not work properly as it likely failed to compile (some npm modules require compilation using node-gyp and node-gyp requires python 2.7) - also not sure if nodeJS was installed as root previously?
[ ](https://chat.hyperledger.org/channel/composer?msg=ibML6Nav6ekByXYvS) @suva oh and composer is at level 0.19.2 by now.
@anshulkathuria34 see 'EDIT' in this SO https://stackoverflow.com/questions/47997743/updating-existing-assets-hyperledger-composer for another working example
[ ](https://chat.hyperledger.org/channel/composer?msg=5kWSA4iPK2QPpmMtY) @Varun2887 shouldn't be - are you seeing the console.logs inside your condition statement each time? - might be an idea to paste the question to Stack Overflow with the model, then can take a look
[ ](https://chat.hyperledger.org/channel/composer?msg=nQz2ipWk5otPYHerR) @mahoney1 yes all logs are there, no error
Hello
[ ](https://chat.hyperledger.org/channel/composer?msg=ENjiSMqwA8Rqrr6uP) @rthatcher I didn't get that.. Actually we have developed web application using angular js [not generated using composer] and now we want to integrate the blockchain network with it. For now, we are developing user registration module. So when user registers we want to call addParticipant() and identityIssue() methods. So do we need to write these methods in angular or in logic.js file?
Is it possible to call api in such cases?
[ ](https://chat.hyperledger.org/channel/composer?msg=ENjiSMqwA8Rqrr6uP) @rthatcher Sorry I didn't get that.. Actually we have developed web application using angular js [not generated using composer] and now we want to integrate the blockchain network with it. For now, we are developing user registration module. So when user registers we want to call addParticipant() and identityIssue() methods. So do we need to write these methods in angular or in logic.js file?
Is it possible to call api in such cases?
[ ](https://chat.hyperledger.org/channel/composer?msg=i2CSoodd2kM4u7tos) @mahoney1 Thanks for the help. I'll look into it
When I try to update record in Rest API using PUT, I get error
"message": "id property (user_id) cannot be updated from user_id to u1",
this is my screenshot
Screen Shot 2018-04-24 at 5.16.57 PM.png
@d8bhatta id represents u1 (your id field) - and remove the line from your data
@Pranoti most likely you would call it from your client app not your transaction logic - see useful info and resources here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--node-js-application-development-questions-eg-build-real-time-apps-login-etc
Please anyone I recently updated composer with npm i composer-cli and since I can't use it
I have this error
composer --version
module.js:549
throw err;
^
Error: Cannot find module './api'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.
I have this error
$ composer --version
module.js:549
throw err;
^
Error: Cannot find module './api'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.
I am developing a network with multiple transactions and to make the code more readable I am splitting the transaction processor over multiple files. Having multiple common functionalities I would like to move some functions to a util folder or file.
```import { constants, otherUtils } from '../utils';```
```export function otherUtils = {
...
}
But when I try to generate the bna file I get this error:
```SyntaxError: Failed to parse /Users/..[path]../lib/utils.js: 'import' and 'export' may appear only with 'sourceType: module' (9:0)```
can any one post me complete hyperledger block chain mutliple organizations project that uses both fabric and composer
[ ](https://chat.hyperledger.org/channel/composer?msg=6hnfun2pXDWCSnpYw) @sureshtedla
This link is helpful
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Do you have any idea that how to install fabric-ca and fabric-sdk go i am getting lot of errors
[ ](https://chat.hyperledger.org/channel/composer?msg=uSwAhMs9yDz74zcWT) @prmdmshra Do you have any idea that how to install fabric-ca and fabric-sdk go i am getting lot of errors
Hello! I follow `Using OAUTH2.0 with a REST server` guide and when I check logs of rest container with `docker logs rest` I get next:
```[2018-04-24 12:41:26] PM2 log: Launching in no daemon mode
[2018-04-24 12:41:26] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-04-24 12:41:26] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
{ Error: EACCES: permission denied, mkdir '/home/composer/.composer/logs'
at Object.fs.mkdirSync (fs.js:885:18)
at Function.sync (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/mkdirp/index.js:71:13)
at Object.exports.getLogger (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/log/winstonInjector.js:76:20)
at Function._loadLogger (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/log/logger.js:633:25)
at Function._setupLog (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/log/logger.js:531:30)
at Function.getLog (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/log/logger.js:508:20)
at Object.
stopping due to error while launching: timeout expired while starting chaincode
Why this happened?
What kind of problem could leads to this issue
@lvndry as mentioned earlier chat.hyperledger.org/channel/composer?msg=iCnJfijsS4ZWQvPru your Node version is not supported. Recommend installing nvm as directed on the prereqs page https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
@sureshtedla for issues with fabric specifically - would ask on #fabric
@mahoney1 I changed the node version to 8.9 and npm to 5.6.0 but I had an other error
@argman - possibly as the order of the 'sed' sequence has changed see this chat chat.hyperledger.org/channel/composer?msg=x3nYf5gGtCMwctG5s (there are 3 'sed' sequences in that tutorial FYI
Hi all,
azureuser@sbox1ybhu-ca0:~$ composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --networkName securebox-tracking --file networkadmin.card --networkVersion 1.0.0
Starting business network securebox-tracking at version 1.0.0
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (securebox-tracking:1.0.0))
Command failed
azureuser@sbox1ybhu-ca0:~$
After changing the version I had an other error then I did npm rebuild but nothing changed
I am getting the error while start the network
composer network install -a dist/securebox-tracking.bna -c PeerAdmin@hlfv1
I installed using the above command
but unable to start the network
@suva is your network has name `securebox-tracking.bna`? Usually it has version
Show error
@suva The network start has failed for the particular network name and version specified. This can occur because a composer network install has not been run, but it is more likely that there is a mismatch. Run the `composer archive list` command on your bna to see the exact name and version used in the .bna file. Remember that the version number must be changed and saved in the package.json file then the .bna archive re-created
azureuser@sbox1ybhu-ca0:~/securebox$ composer archive list -a dist/securebox-tracking.bna
Listing Business Network Archive from dist/securebox-tracking.bna
Identifier:securebox-tracking@0.0.2-deploy.421
Name:securebox-tracking
Version:0.0.2-deploy.421
Command succeeded
azureuser@sbox1ybhu-ca0:~/securebox$
this is the out put
[ ](https://chat.hyperledger.org/channel/composer?msg=kvEci8TXhoG3isBQE) @lvndry I mentioned, as your log shows v8.11.1 of node. The output from `composer-v` shows Composer did not install properly as suspected. What version of python are you using ? `python --version` - in our prereqs we strongly recommend installing NVM to manage node versions and switch using that, before doing the install. Composer install did not work properly as it likely failed to compile (some npm modules require compilation using node-gyp and node-gyp requires python 2.7) - also not sure if nodeJS was installed as root previously?
@mahoney1 , I have posted you the error
sorry output of archive
Hello. I'm trying to use google auth. I can access at google and add my connection's informations but it return a timeout error. Someone already have it ?
[ ](https://chat.hyperledger.org/channel/composer?msg=iQPzo7tmh9m63oze6) @mahoney1 I've tried this new `sed` but still have this issue :(
@argman you have to change access permission IN docker
You can access at container by "docker exec -u 0 -it rest /bin/sh", after that you have to do a chmod (-R) in /home/composer
Then you delete the composer (docker rm -f rest) and run it again. It worked for me
@suva need to match the version info in your start command with that which you installed. See https://hyperledger.github.io/composer/latest/reference/composer.network.install.html and https://hyperledger.github.io/composer/latest/reference/composer.network.start.html
@mahoney1 . Thanks. It works now
Now I m getting below error while running composer-rest-server
Connection fails: Error: Failed to load connector module "composer-connector-hlfv1" for connection type "hlfv1". Failed to load gRPC binary module because it was not installed for the current system
Expected directory: node-v57-linux-x64-glibc
[ ](https://chat.hyperledger.org/channel/composer?msg=LHoj9X3HpAkHv5Ri2) @Poneey Thank you! It works :)
you're welcom
```Unhandled error for request GET /auth/google/callback?code=4/AAAko76DYXa8h98i7i36UfuCzcjk_qdyEeEE7k6v5sCTqE9PaamaGiYL0VB33TPdd0pQa9qMXopR7f5Dogo03r0: Error: connect ETIMEDOUT 216.58.201.237:443
at Strategy.OAuth2Strategy._createOAuthError (/home/composer/node_modules/passport-oauth2/lib/strategy.js:379:17)
at /home/composer/node_modules/passport-oauth2/lib/strategy.js:166:45
at /home/composer/node_modules/oauth/lib/oauth2.js:191:18
at ClientRequest.
Quick question - my Asset has an attribute
...
o Double amount
...
and i receive an error: Error: Error trying invoke business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: Error: Generated invalid JSON: {"$class":"org.acme.test.Sender","name":"Test","*amount":NaN}*)
https://hyperledger.github.io/composer/latest/reference/cto_language
"Double: a double precision 64 bit numeric value."
How are doubles handled in javascript? 64bit Double.MAX_VALUE > Javascript Number.MAX_VALUE ???
Does this cause the NaN?
Quick question - my Asset has an attribute
...
o Double amount
...
and i receive an error:
Error: Error trying invoke business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: Error: Generated invalid JSON: {"$class":"org.acme.test.Sender","name":"Test","*amount":NaN}*)
https://hyperledger.github.io/composer/latest/reference/cto_language
"Double: a double precision 64 bit numeric value."
How are doubles handled in javascript? 64bit Double.MAX_VALUE > Javascript Number.MAX_VALUE ???
Does this cause the NaN?
@suva the error (you posted REST server and 'composer-connector-hlfv1 message - and errors from earlier) indicates that you have used two different node.js versions; you have installed the npm modules using `node-v59-linux-x64-glibc` and are trying to run the installed modules using `node-v57-linux-x64-glibc . Composer must be used with v8.9.x only. Didn't mention whether nvm was installed to manage Node vresions nor provide python version. Suggest to uninstall Composer modules using npm then (once your Node version is managed), install them again, with one consistent Node version installed for the entire-ity of the Composer install
should i use npm uninstall composer and then install using npm install composer
correct?
@suva per the docs https://hyperledger.github.io/composer/latest/installing/development-tools.html ie `npm uninstall -g composer-cli`, blah blah ......`npm install -g composer-cli ` etc etc
@thoduerr have you multiple transactions in the same script file, did you copy one transaction to start another etc ?
can you paste?
Double = 12.34 eg.
@mahoney1 thanks, it works.
[ ](https://chat.hyperledger.org/channel/composer?msg=6jApQnWNRNFkSwSvu) @mahoney1 I have multiple transactions in the same file. I do not invoke one transaction from another transaction. it seems it happens only when I try to calculate like "asset.amount += value"
@thoduerr what I mean is: possibly you have duplicate decorator names (prelude to the transaction code) - ie even though you've changed the function names, decorator names the same - I've seen the error occur with that. Would check your names basically all match up and are unique.
@thoduerr what I mean is: possibly you have duplicate decorator names (prelude to the transaction code) - ie even though you've changed the function names, decorator names the same - I've seen the error occur with that (ie meaning: call other funcs code). Would check your names basically all match up and are unique.
[ ](https://chat.hyperledger.org/channel/composer?msg=STMXBQyeMxzwPvv8X) @mahoney1 all @param ... decorators have unique names
[ ](https://chat.hyperledger.org/channel/composer?msg=2RLGTXG9pumcBptNK) @mahoney1 could you please check this for m
Hello, I have deployed the .bna file to the hypereldger fabric network. I am trying to create an angular application by following the link 'https://hyperledger.github.io/composer/latest/applications/web'. When I performed any operation in rest server API it reflects on the angular app UI. But didn't get the transaction id's. Please help me out.
transaction.png
@thoduerr thanks - would have to see the offending code to know what could be happening.
composer network install
composer network install
@walle
.
@Poneey are you following the Google OAUTH2 tutorial or your own custom environment? Error suggests that http://localhost:3000/auth/google/callback 'Authorized Redirect URIs' has not been configured on Google OAUTH2 service provider side ?
@Poneey are you following the Google OAUTH2 tutorial or your own custom environment? Error suggests that http://localhost:3000/auth/google/callback redirect URI has not been configured on 'Authorized Redirect URIs' in Google OAUTH2 service provider side ?
Yes i'm following this tutorial
@mahoney1 I add adress in google
[ ](https://chat.hyperledger.org/channel/composer?msg=sdjWRsSixAPLvwMH8) @Hefziben check out this blog (including the resources Caroline has posted as links in her blog). cheers https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
@mahoney1 I'm on a server connected by ssh so i use "http://mydomaine:3000/auth/google/callback in google project like it's suggest in tutorial
[ ](https://chat.hyperledger.org/channel/composer?msg=Nm9HN23bcckhEGfwX) @mahoney1 Thanks for the reply.. I guess for now i'll have to do it using REST API's...
[ ](https://chat.hyperledger.org/channel/composer?msg=Nm9HN23bcckhEGfwX) @mahoney1 Thanks for the reply :relaxed: .. I guess for now i'll have to do it using REST API's...
@Poneey - I posted the amended Google OAUTH2 tutorial earlier https://github.com/mahoney1/composer/blob/master/packages/composer-website/jekylldocs/tutorials/google_oauth2_rest.md will do again now - this includes the modifications for the corrected `sed -e` sequence etc etc. If you followed this, it definitely works. Not sure why the callback issue occurs, might want to check your envvars.txt settings
@MasthanbeeShaik16 transactions are not implemented yet in the skelton Angular app - it is coming :0-) for now, just assets and participants it is being tracked here https://github.com/hyperledger/composer/issues/3136
@mahoney1 Thanks for the information :slight_smile:
@waleed can you do a docker ps ? This error is a failure of Composer, to connect to the running Fabric, usually because the Fabric is not started. In this case peers. If its not started, then start the fabric. Depending on how you started the Fabric, it may be necessary to repeat the `composer network install` command.
[ ](https://chat.hyperledger.org/channel/composer?msg=dp46jnzQ68AJzMJKb) @Poneey right, sure: the redirect URI is where the Google Auth provider service will redirect the user after they authorize the client application, and therefore the part of *your* application that will handle authorization codes or ultimately access tokens.
[ ](https://chat.hyperledger.org/channel/composer?msg=dp46jnzQ68AJzMJKb) @Poneey right, sure: the redirect URI is where the Google Auth provider service will redirect the user after they authorize the client application, .
Clipboard - 24 april 2018 16:39
[ ](https://chat.hyperledger.org/channel/composer?msg=X3vDs2qNGTq5nHLeS) @mahoney1 thanks a million, that is really helpful
@mahoney1 If redirect URI is where it will redirect the user after authentification , why we put "localhost:3000/auth/google/callback" and not "localhost:3000/explorer" ?
[ ](https://chat.hyperledger.org/channel/composer?msg=tawCNCAx9xix4FLGY) @mahoney1 @mahoney1 thanks for your answer. My peers are running the problem is: one of them can not communicate with other.
[ ](https://chat.hyperledger.org/channel/composer?msg=tawCNCAx9xix4FLGY) @mahoney1 thanks for your answer. My peers are running the problem is: one of them can not communicate with other.
[ ](https://chat.hyperledger.org/channel/composer?msg=XbHP2Jy7E6nhgp8HM) @Poneey you can choose. It puts '/auth/google/callback' btw as a relative path and returns the user to the browser that made the call out to the Google Auth service over www. In theory, it'll redirect the browser to whatever you set in as the callback URL but Google itself have restrictions (eg, not to localhost) on what is an authorised Redirect URI. It'll include in that request the token as a parameter, and if need be your callback page can then validate the token.
@waleed .. ahh ok cool
Has joined the channel.
Hello, one question, I'm trying to deploy a bna to a multi-org network with composer 0.16.3, all guides have been updated to the install. What's the equivalent command for 0.16?
I mean, what's the way to do install+start on 0.16.3 (deploy is not working here, I'm trying to perform two deploys one from Org/bussines card admin)
@mahoney1 is it OK, if 2 peers (from the same Org) have the same configs in connection profile?
```
"channels": {
"${CHANNEL_NAME}": {
"orderers": [
"orderer.${DOMAIN}"
],
"peers": {
"peer0.org1.${DOMAIN}": {
"endorsingPeer": true,
"chaincodeQuery": true,
"ledgerQuery": true,
"eventSource": true
},
"peer1.org1.${DOMAIN}": {
"endorsingPeer": true,
"chaincodeQuery": true,
"ledgerQuery": true,
"eventSource": true
}
}
}
},
```
Hi all, do you guys know what's the problem here? `"ParseException: Expected \"FROM\", \"LIMIT\", \"ORDER BY\", \"SKIP\", \"WHERE\", comment, end of input, end of line or whitespace but \"(\" found. Line 1 column 61 Line 1 column 61"`... The query string I built seems fine though...
@joaofguerreiro you should write the query if you want help :P
Has joined the channel.
Hi all, can anyone define what a "PeerAdmin" is? I can't seem to find any clear definition from the documentation. Thanks
@FlorentinoSainz `"SELECT org.hyperledger.composer.system.HistorianRecord WHERE (transactionType == 'Trade')"`
@adilw3nomad afaik the only one who can send commands to a peer (like join channels etc)
@FlorentinoSainz thanks !
someone has a guide for deploying bna's in multi-org 0.16 composer? :/
https://hyperledger.github.io/composer/v0.16/tutorials/deploy-to-fabric-multi-org
@sstone1 thanks!
@waleed they will need independent ports as shown on the connection profile here https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
:kevinsyx -what do you get when you do `composer network ping -c admin@tc1-network`
@kevinsyx -what do you get when you do `composer network ping -c admin@tc1-network`
I am developing a network with multiple transactions and to make the code more readable I am splitting the transaction logic over multiple files and it works fine.
However, if I want to move common functions to a util folder or file like this:
logic.js:
`import { constants, otherUtils } from '../utils';`
utils.js:
```
export function otherUtils = {
...
}
```
I get the following error:
```SyntaxError: Failed to parse /Users/..[path]../lib/utils.js: 'import' and 'export' may appear only with 'sourceType: module' (9:0)
```
Can you help me to figure out how to import them? I know I cannot
I am developing a network with multiple transactions and to make the code more readable I am splitting the transaction logic over multiple files and it works fine.
However, if I want to move common functions to a util folder or file like this:
logic.js:
`import { constants, otherUtils } from '../utils';`
utils.js:
```
export function otherUtils = {
...
}
```
I get the following error:
```SyntaxError: Failed to parse /Users/..[path]../lib/utils.js: 'import' and 'export' may appear only with 'sourceType: module' (9:0)
```
Can you help me to figure out how to import them?
[ ](https://chat.hyperledger.org/channel/composer?msg=WkGspnDJufRMpbnE4) @adilw3nomad see docs -> https://hyperledger.github.io/composer/latest//business-network/bnd-deploy The PeerAdmin card is a special ID card used to administer the local Hyperledger Fabric dev setup provided via our docs site. There is a Fabric PeerAdmin role which is a special role reserved for functions such as: Deploying business networks, installing chaincodes and starting them on a Fabric channel.
thanks!
@nicolapaoli cannot import / use requires in TP functions presently - see https://github.com/hyperledger/composer/issues/3169 . imports` and `requires` in Transaction Processors are not implemented in the current release of Composer, which has native NodeJS chaincode support (eg. smart contracts). You can invoke one smart contract from another in Composer as shown here https://hyperledger.github.io/composer/latest//tutorials/invoke-composer-network (you'll see in the example, where it takes a payload back from smart contract B (having invoked it to get a deterministic result) back to smart Contract A and updates an asset in 'A' based on invoking 'B') - furthermore, you also to ability to call Fabric APIs inside the transaction processors of a smart contract as implemented here https://fabric-shim.github.io/ChaincodeStub.html
@mahoney1 hi, I am seeing an error such as below when doing a "network start" with composer 0.19.1
```
[exec] npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
```
I also get an error if I ran the install step with a "npmrcFile" option, registry=https://151.101.192.162
```
request to https://151.101.192.162/composer-common failed, reason: Hostname/IP doesn't match certificate's altnames: "IP: 151.101.192.162 is not in the cert's list: "
@nicolapaoli can't do that see https://github.com/hyperledger/composer/issues/3169 . imports` and `requires` in Transaction Processors are not implemented in the current release of Composer - would need to have your utils scripts under 'lib' and call the functions from your transaction scripts
@nicolapaoli can't do that see https://github.com/hyperledger/composer/issues/3169 . `imports` and `requires` in Transaction Processors are not implemented in the current release of Composer - would need to have your utils scripts under 'lib' and call the functions from your transaction scripts
Ok, thank you @mahoney1
@uber.twin see https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer/49758354#49758354 or https://stackoverflow.com/questions/49652193/hyperledger-composer-v1-1unable-to-instantiate-chaincode/49653917#49653917 you minimally need an npmrcFile looks like.
guys what would be the reason for my HistorianRecord returning an empty list of transactions, when it should return 2?
[ ](https://chat.hyperledger.org/channel/composer?msg=DPFEiav742m7dpeY4) @joaofguerreiro viewing in REST APIs ? You could try first listing the actual transaction endpoint (that created those 2 x trxns) and see (confirm) there are indeed two from a /GET. If not that, have you got ACLs configured?
thanks @mahoney1 I'll check both situations
[ ](https://chat.hyperledger.org/channel/composer?msg=g8up9co6Z9jrEBFJJ) @mahoney1 I did try to explicitly set "registry=https://151.101.192.162" (which seems to be the registry.npmjs.org IP) in a npmrcFile file but I still get this error
```request to https://151.101.192.162/composer-common failed, reason: Hostname/IP doesn't match certificate's altnames: "IP: 151.101.192.162 is not in the cert's list: ```
Another question here, not a problem right now but I'm a little worried about it, if I have two organizations, how do I prevent them from binding an identity to a participant? (for example, if participants in the smart contract have permissions based on organization, is there a mechanism to prevent one of the network admin/org to create participants who have a permission/profile which should be entirely "owned/reserved" for the other organization?
I mean, a way to add an ACL which restricts participant "add" to a concrete bn-admin/CA based on properties of the participant itself
@uber.twin - think it needs the resolved name ?
Did you try registry=http://registry.npmjs.org/
I gave DateTime purchaseDate in a function and I want to store all these Timestamps and query that for further purpose. Can I store all those timestamps after submission of the transaction?
@FlorentinoSainz Hyperledger Composer differentiates between access control for resources within a business network (business access control) and access control for network administrative changes (network access control). You can define ACLs to ensure only appropriate admins can add participants and have ability to bind the correct identities to those participants, of the business network. See -> https://hyperledger.github.io/composer/latest/reference/acl_language
@mahoney1 so a concrete network admin can be represented in the ACL language? (like NetworkAdmins#alice)?
@Vanitha you can if you wish store (its on the ledger after the transaction is committed - so query etc etc) - as you may know, the transaction has a field `timestamp` which you access (to set on whatever field you wish) in the transaction logic. See example https://stackoverflow.com/questions/43656164/getting-timestamps-in-deterministic-way-in-hyperledger-composer-transactions
Okay can you please tell me how we can store all the Transaction Id's that are generated automatically after submission
the transaction object has the id after the callback has been done in node (if that's what ur asking @Vanitha )
I have tried storing of OrderId and I faced an issue like when I submit a transaction I stored that OrderId and later on when I submit another one the previous OrderId got replaced with the newer one?
How can I resolve this issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=yWP5ReqBTvxeHXgkc) @FlorentinoSainz yes - that's a specific network admin instance in org.hyperledger.composer.system.NetworkAdmin that can be targeted in an ACL rule, with care obviously. :-)
@mahoney1 thanks!, that solves my problem :) I thought it couldnt
[ ](https://chat.hyperledger.org/channel/composer?msg=v4sZr5ZrNquTvuEqm) @FlorentinoSainz Every transaction object has an Id which we will get after submission of that transaction right I want to store those Id's or even let's say I have a function and in that function I have OrderId which will be auto generated and I want to store all those Id's and query later. Will this kind of scenarios possible ?
personally, I would store those outside of hyperledger. If you are taking of saving from inside the smart contract, it shud be doable in couchdb too (for querying capability)
couchdb or just an array in your cto :P
@Vanitha as @FlorentinoSainz mentions - the transaction Id is already part of the transaction class, generated when you submit it. Transactions are the means, to carry out updates/adds of assets, participants etc. As for OrderId (assuming its part of an asset) - you either assign your asset record a unique identifier (for add operation) or you use `assetregistry.update(id)` etc to update existing record. Both the Add and Update are transactions in their own right. You then simply create a query that will query one / all of the asset Registry (for list of orders) or Historian for history of transactions (Add asset, update asset via transaction blah blah) or the Transaction class (for specific transaction class in its own right). As Florentino mentions, usually the calling client (say via REST) will provide the auto-incremented OrderId so that you are submitting a deterministic transaction
@Vanitha as @FlorentinoSainz mentions - the transaction Id is already part of the transaction class, generated when you submit it. Transactions are the means, to carry out updates/adds of assets, participants etc. As for OrderId (assuming its part of an asset) - you either assign your asset record a unique identifier (for add operation) or you use `assetregistry.update(id)` etc to update existing record. Both the Add and Update are transactions in their own right. You then simply create a query that will query one / all of the asset Registry (for list of orders) or Historian for history of transactions (Add asset, update asset via transaction blah blah) or the Transaction class (for specific transaction class in its own right). As Florentino mentions, usually the calling client (say via REST) will provide the auto-incremented OrderId so that you are submitting a deterministic transaction to the endorsing peers (so its not rejected etc).
[ ](https://chat.hyperledger.org/channel/composer?msg=4ccuguPYMDjM6JZxm) @FlorentinoSainz
[ ](https://chat.hyperledger.org/channel/composer?msg=hHT7ajZFPhz9zsYsb) I tried with array and the problem I faced was it's replacing older value with newer one
but you mean like you want to store every transaction dealing with a concrete order? or you just want an unique identifier for your orders? Then as mahoney said, either generate it outside, or personally. I just use the transaction id ( "OrderID_"+tx.transactionid ) as "id" for my objects
if you are pushing to an array, you shouldnt have replacements, I have that use case (history of "states" of an order) and I never had any problem (using 0.16 and 1.0)
@FlorentinoSainz Can u please provide some links u have followed or a sample example to do that?
well, if your order gets called in parallel from multiple clients maybe you can have a concurrency problem, but afaik (theory) fabric should fail
I just followed the standard docs, but having something like --> Date[] timestamps in your CTO and then when adding a new date, just "order.timestamps.push(xx)" works for me
then you don't even have to query anything complex, just retrieve your order and there are the times
Okay, will try
Thank you @FlorentinoSainz & @mahoney1
Has joined the channel.
Has joined the channel.
hello again (can't tell in the rocket chat app if i've double posted - so appologies if i have), I'm now a bit further in the tutorial here: https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-networks-on-starter-plan - for the IBM Blockchain. I'm getting the following error when trying to run the following command: ```
USNYINAMPEALX12:ibm-hyperledger-playground peenak.inamdar$ composer network start -c adminCard -a ./second-attempt/dist/second-attempt.bna -A admin -C ./credentials/admin-pub.pem -f delete_me.card
Starting business network from archive: ./second-attempt/dist/second-attempt.bna
Business network definition:
Identifier: second-attempt@0.0.1
Description: basic-network
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: instantiation policy violation: signature set did not satisfy policy)
Command failed
```
am not sure what i'm doing wrong. when i go to the ibm admin console for the starter plan i'm using, am able to upload the code though get an error when I try to instantiate it.
Has joined the channel.
Has joined the channel.
Hey Guys
I'd like to ask your help, I just deployed my first business network app and everything went alright, I can see the docker machine fired up, but I get this error msg -->
thomas@thomas-virtual-machine:~/Desktop/Fabric/firstbna/dist$ composer network ping -c thomas@firstbna
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed
I have imported the generated card properly --> http://prntscr.com/j9msus
what am I doing wrong?
(Using Hyperledger Composer)
I just tear down the complete profile and created a new peeradmincard and tried it again, it did not help.
well after 4-5 tries it worked
I had to remove the .composer folder
no idea why it worked
Has joined the channel.
.composer stores admin cards and specifically card delete commands needed or as you have tried , brute force removal of entire folder
Has joined the channel.
Hi, why would I need to contact the docker server, each time I deploy a chaincode?
Team, aggregate functions available in Composer query? If yes, is there any sample code?
@biksen i'm not from the team and I'm not sure if aggregate are available (didn't see any yet), but if you want to do something "fancy", you can look into the peer debug logs when you are doing a normal query (it will show the query performed into the native fabric) maybe you can query it without going thru composer (ACLs won't be enforced tho).
btw, someone has any hint on why my composer is stuck when starting my bussines network? (multi-node start, following https://hyperledger.github.io/composer/v0.16/tutorials/deploy-to-fabric-multi-org), runtime installs fine, but the network won't start (BNA is correct, I had it running in a single organization mode), it shows no errors (on peer logs or in the console), its just stuck
Hi everyone
I am always facing this problem :
```
10528 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
```
This error occurs when I do a composer network install.
Any idea ?
@mahoney1 I tried to put :3000/explorer as redirect URI, i access at REST API but i don't have the line about token ...
extending my question, after a long wait, I'm getting on "composer network start" Error: Error trying install composer runtime. Error: The Composer runtime is already installed on all the peers (runtime was installed)
Clipboard - 25 april 2018 09:40
Clipboard - 25 april 2018 09:42
[ ](https://chat.hyperledger.org/channel/composer?msg=h5wMgnt7BDdGvSF37) @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=h5wMgnt7BDdGvSF37) @mahoney1
`The connection to the network was successfully tested: tc1-network
Business network version: 0.3.7
Composer runtime version: 0.19.0
participant: org.hyperledger.composer.system.NetworkAdmin#admin`
everything works on my network i'ts just only adding cards that doesn't seem to work.
[ ](https://chat.hyperledger.org/channel/composer?msg=h5wMgnt7BDdGvSF37) @mahoney1
`The connection to the network was successfully tested: tc1-network
Business network version: 0.3.7
Composer runtime version: 0.19.0
participant: org.hyperledger.composer.system.NetworkAdmin#admin`
everything works on my network i'ts only adding cards that doesn't seem to work.
[ ](https://chat.hyperledger.org/channel/composer?msg=vDD3vf6e3KPw8gc93) @FlorentinoSainz - You are following the v0.16 tutorial, is there any particular reason you are still with 0.16?
I assume that the composer runtime install command worked OK for both orgs?
Have you looked in the logs of your peer containers for errors?
[ ](https://chat.hyperledger.org/channel/composer?msg=P7xBg2ELGkTsGcgBp) @CorentinPacaud - are you working with a particular guide or tutorial? or with a Custom fabric?
The error is likely a mismatch of certificates used in connection.json vs those used by the containers, or differences in hostnames. The peer logs or ca log may have more detailed information for you.
@rthatcher I try to build my own network with my own connection.json and docker-compose.yaml
@IceFox - when you say 'docker server' what bit of the system are you thinking about??
Hello,
I was adding OAuth for rest-server. After that when I am trying to add participant it does nothing. network ping also not working. There is no error just process paused.
Can anyone help?
[ ](https://chat.hyperledger.org/channel/composer?msg=jBwxKrwnMxzMtvZFj) I made a new deployment , using the old .bna and now it works. maybe i did something wrong creating the admin card for the bna
@rthatcher sorry, had a meeting, no particular reason, I just didnt have time to update, I'll do it soon. The peer shows on error, it shows the two "typical" messages when in receives an incoming connection and hangs forever (I tried 50min timeout with no luck)
*shows no error
@rthatcher and yes, runtime install worked ok for both orgs
[ ](https://chat.hyperledger.org/channel/composer?msg=cBvX3Bd66MKHjyoeC) @mahoney1 when I explicitly specify registry=https://registry.npmjs.org, the error comes out exactly as when I don't use a 'npmrcFile' install option at all: ``` npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443```
@mahoney1 and I can confirm the docker container can resolve host names:```
/bin/sh: 1: 0: not found
# # # # getent hosts registry.npmjs.org | awk '{ print $1 }'
151.101.64.162
151.101.0.162
151.101.192.162
151.101.128.162
```
@CorentinPacaud hi, could you please share with us if you came to a resolution on the issue regarding the npm registry connectivity
i.e. "reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443"
@uber.twin Yes, it worked with the npmrcfile. And I think it was a server pb because I change server and I didn't need this file
[ ](https://chat.hyperledger.org/channel/composer?msg=P7xBg2ELGkTsGcgBp)
I find this line in the orderer logs :
``` 0xc42000ef70 identity 0 does not satisfy principal: the identity is a member of a different MSP (expected OrdererMSP, got Org1MSP)
2018-04-25 09:42:50.024 UTC [cauthdsl] func2 -> DEBU 317 0xc42000ef70 principal evaluation fails
```
Mayber it can help ?
[ ](https://chat.hyperledger.org/channel/composer?msg=uT38QdNrS9rH8AmAa) @CorentinPacaud - looks like you have configured your Orderer to be `OrdererMSP`, but you have configured the connection.json or some yaml file to use an old value of 'Org1MSP'.
[ ](https://chat.hyperledger.org/channel/composer?msg=XxiCxBqMbQgSaK47n) @kevinsyx just back: yes, that is possible, or an old admin cert was still in the wallet such that the CA didn't recognise it as an authority to issue, not sure.
Screenshot from 2018-04-25 16-04-03.png
@mahoney1 @rthatcher @sstone1 I am not able to open http://localhost:3000/explorer while adding OAuth for rest-server. Screenshot attached.
[ ](https://chat.hyperledger.org/channel/composer?msg=8usJLqxHhu7nHP7HH) @Poneey just try '/'
Screenshot from 2018-04-25 16-04-03.png
[ ](https://chat.hyperledger.org/channel/composer?msg=w3wsRR4SbeLZodo6Y) @mahoney1 let me try
@HoneyShah what tutorial are you following?
[ ](https://chat.hyperledger.org/channel/composer?msg=TzgXPPTLsiY64wTQs) @mahoney1 https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
@HoneyShah https://hyperledger.github.io/composer/latest//tutorials/google_oauth2_has a change in the 'sed' order - on the `sed` command script where shown in that tutorial : use this new sed command in Step 6 and re-source your `envvars.txt` to take effect : ie `sed -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/ca.org1.example.com:/' -e 's/localhost:/orderer.example.com:/' < $HOME/.composer/cards/restadmin@trade-network/connection.json > /tmp/connection.json && cp -p /tmp/connection.json $HOME/.composer/cards/restadmin@trade-network/ ` - the amended tutorial will go into the docs in the next days -> its here https://github.com/mahoney1/composer/blob/master/packages/composer-website/jekylldocs/tutorials/google_oauth2_rest.md
@HoneyShah https://hyperledger.github.io/composer/latest//tutorials/google_oauth2_ has a change in the 'sed' order - on the `sed` command script where shown in that tutorial : use this new sed command in Step 6 and re-source your `envvars.txt` to take effect : ie `sed -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/ca.org1.example.com:/' -e 's/localhost:/orderer.example.com:/' < $HOME/.composer/cards/restadmin@trade-network/connection.json > /tmp/connection.json && cp -p /tmp/connection.json $HOME/.composer/cards/restadmin@trade-network/ ` - the amended tutorial will go into the docs in the next days -> its here https://github.com/mahoney1/composer/blob/master/packages/composer-website/jekylldocs/tutorials/google_oauth2_rest.md
@HoneyShah https://hyperledger.github.io/composer/latest//tutorials/google_oauth2 has a change in the 'sed' order - on the `sed` command script where shown in that tutorial : use this new sed command in Step 6 and re-source your `envvars.txt` to take effect : ie `sed -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/ca.org1.example.com:/' -e 's/localhost:/orderer.example.com:/' < $HOME/.composer/cards/restadmin@trade-network/connection.json > /tmp/connection.json && cp -p /tmp/connection.json $HOME/.composer/cards/restadmin@trade-network/ ` - the amended tutorial will go into the docs in the next days -> its here https://github.com/mahoney1/composer/blob/master/packages/composer-website/jekylldocs/tutorials/google_oauth2_rest.md
[ ](https://chat.hyperledger.org/channel/composer?msg=wCwbjqPLYCphamvfy) @mahoney1 Thanks!! I will try this
[ ](https://chat.hyperledger.org/channel/composer?msg=g3KquxMXmEyivffRk) Still it's not working
[ ](https://chat.hyperledger.org/channel/composer?msg=g3KquxMXmEyivffRk) @mahoney1 Still it's not working
@mahoney1 Thanks for your answer, i will try. Can you look in private message ? I spent you all config
@mahoney1 I try "callbackURL": "/", i access at REST API after connect in google but i don't have the line about token ..
Hi all, I am getting error while running composer rest API on internet which is behind proxy
error:- Failed to load resource: the server responded with a status of 403 (Forbidden)
can we build network with out composer? is it possible
https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
curl -O https://hyperledger.github.io/composer/latest/prereqs-ubuntu.sh
this gives 404
seems to be working now
[ ](https://chat.hyperledger.org/channel/composer?msg=pe3nMvQeWxd7395zq) @vinayak 22 can we build network with out composer? is it possible
no idea mate, i'm still at the prereqs stage myself :P
okk :slight_smile:
```
```
~/fabric-tools$ composer-playground
info: [Hyperledger-Composer] :LoadModule :loadModule() Loading composer-wallet-filesystem from /home/geospoc/.nvm/versions/node/v8.11.1/lib/node_modules/composer-playground/node_modules/composer-wallet-filesystem
/home/geospoc/.nvm/versions/node/v8.11.1/lib/node_modules/composer-playground/node_modules/composer-playground-api/index.js:61
port = server.address().port;
^
TypeError: Cannot read property 'port' of null
at createServer (/home/geospoc/.nvm/versions/node/v8.11.1/lib/node_modules/composer-playground/node_modules/composer-playground-api/index.js:61:28)
at createServer (/home/geospoc/.nvm/versions/node/v8.11.1/lib/node_modules/composer-playground/index.js:34:17)
at Object.
@mahoney1 hi, do you have any thoughts on this error logged by the dev peer container at network startup ```2018-04-25T10:05:50.924072791Z > my-network@0.0.5 start /usr/local/src
2018-04-25T10:05:50.924091690Z > start-network "--peer.address" "peer0.org1.com:7052"
2018-04-25T10:05:50.924102139Z
2018-04-25T10:05:51.088446580Z running start.js
2018-04-25T10:05:53.522698631Z SyntaxError: Unexpected string
2018-04-25T10:05:53.522736180Z at eval (eval at compile (/usr/local/src/node_modules/composer-runtime/lib/scriptcompiler.js:99:33),
[ ](https://chat.hyperledger.org/channel/composer?msg=j5vBDg9JNpGwMsQth) @sureshtedla - Composer is a set of tools to make it fast and simple to develop a blockchain application to run on Hyperledger Fabric. You can write a blockchain app directly against Fabric but it is much harder. You can define and test a network in Composer Playground online without installing anything locally, but sooner or later people install composer to do serious work. - hope this answers the question
When using composer, dev container are created. I would like to know what is its purpose and if in a production are they essential ?
[ ](https://chat.hyperledger.org/channel/composer?msg=268gqH44KpdGWd6xZ) @GrondinLaurent - as you have observed, when you run a composer network start command (or composer network upgrade) a new Docker Image and Container are created. These are 'chaincode' containers and run your chaincode for your Business Network. They are essential in production. You can remove old versions of the containers and images, but don't remove the current version. If you do accidentally remove the current version it will be re-created automatically. (Whilst these containers are created after issuing the composer network start command, this is not a composer 'thing' - it is the way Fabric works.)
[ ](https://chat.hyperledger.org/channel/composer?msg=H7YpeFbH2YvdK7CdJ) @rthatcher Thanks mate. It was all i have been looking for :)
does any1 have a hint why on composer 0.16, network start will hang forever while the peer does nothing until REQUEST_TIMEOUT? (it shows the messages it shows when it receives any new connection, but debug shows no further action). I've already changed timeouts to 50minutes, no new dockers are created in my machine meanwhile either (and i've seen tickets on 0.19 about this)
[ ](https://chat.hyperledger.org/channel/composer?msg=PjKPQwKKzksYrTbgt) @rthatcher i am getting lot of errors while installing fabric ca you help me out?
[ ](https://chat.hyperledger.org/channel/composer?msg=2nKKGL5RYN9um7DzT) How to setup fabric and sdk and how the peers of different organizations will interact with each other
[ ](https://chat.hyperledger.org/channel/composer?msg=2nKKGL5RYN9um7DzT) @sureshtedla - if you are using the 'fabric tools' from Step 4 of this document: https://hyperledger.github.io/composer/v0.16/installing/development-tools.html - then I can probably help. If you are setting up some other fabric configuration you should ask in the #fabric or #fabric-ca channels.
[ ](https://chat.hyperledger.org/channel/composer?msg=jCWgSKg6gz65bwik7) @rthatcher I am using step 4 instructions
Hi everyone,
I am trying to make POST request from the transactions using the request.post() function and I have not found much documentation about how to provide body and headers data...
I have tried this and it returns a XHR error...
var qry = await request.post({uri: 'http://dummyAPI.com/asdfasdf', options : {body: body,headers: header}, json: true});
Any ideas?
Thanks!
@uber.twin not sure, no. I know there is a start.js in composer-runtime-hlfv1, but one of scriptcompiler's tasks (reported in your log) is to compile all the js scripts in the specified script manager into a compiled script bundle for use by the runtime
Can anyone help me if I send him my docker-compose file and connection.json ?
1 months without progress still the error :
```
Installing business network. This may take a minute...E0425 16:13:24.439105502 22358 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
```
@vinayak 22 you need to use Node v8.9.x as per the prereqs page https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html - have you got multiple Node versions installed on your machine?
[ ](https://chat.hyperledger.org/channel/composer?msg=5s7tSWjJTdTYEaj8Y) @sureshtedla - I made a small error sending you the link for Composer *v0.16* - hopefully you are using the docs for *latest*:
https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
https://hyperledger.github.io/composer/latest/installing/development-tools.html
What steps have you taken and what errors are you seeing?
[ ](https://chat.hyperledger.org/channel/composer?msg=eWua2iw25H7rp6n5a) @rthatcher after go setup and installing fabric-ca by using the cmd provided in document after that when i enter fabric-ca-server i am getting fabric-ca-server cmd not found error
[ ](https://chat.hyperledger.org/channel/composer?msg=Zh5HuGP6hokCej3ux) @sureshtedla - can you post the link to the doc you are following, together with the exact command you used and the output you are seeing
[ ](https://chat.hyperledger.org/channel/composer?msg=yZrGSFiTwvDfdNXue) @rthatcher The following installs both the fabric-ca-server and fabric-ca-client binaries in $GOPATH/bin.
go get -u github.com/hyperledger/fabric-ca/cmd/...
[ ](https://chat.hyperledger.org/channel/composer?msg=a2kPN2kbArnNtCGan)
Anyone ?
[ ](https://chat.hyperledger.org/channel/composer?msg=fz9ohaztvQ4G9QLqa) @Juanan_Tejero see examples on our docs page -> https://hyperledger.github.io/composer/latest/integrating/call-out and also on Stack overflow (one example) https://stackoverflow.com/questions/49519111/webservice-in-hyperledger-composer/49533951#49533951
[ ](https://chat.hyperledger.org/channel/composer?msg=e2JWan6FtgNM8xTKX) @mahoney1 Thanks a lot. I understand then that the body element must be provided into the json parameter; but what it is the syntax to include the headers?
In fact, I have this error.
https://stackoverflow.com/questions/50006049/handshake-failed-with-fatal-error-ssl-error-ssl
[ ](https://chat.hyperledger.org/channel/composer?msg=p5swPS93FzGztFAeX) @sureshtedla - this does not look like you are using the Composer tools or install instructions. Although you haven't provided the link I think you are following some Fabric tutorial - please can you ask this an a #fabric channel :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=3NsSnBdsXcowQdX3x) @rthatcher Can you instruct me how to install fabric and sdk
[ ](https://chat.hyperledger.org/channel/composer?msg=pSN26LMyNn4SGvee7) if posible give me links
@Juanan_Tejero might need to look at request itself https://github.com/request/request or see examples like perhaps this one - you'll know better for your use case https://stackoverflow.com/questions/17121846/node-js-how-to-send-headers-with-form-data-using-request-module
[ ](https://chat.hyperledger.org/channel/composer?msg=6cMRMXZQbatTYdbp3) @mahoney1 Thanks again :) I'll try it.
[ ](https://chat.hyperledger.org/channel/composer?msg=QSuRWSDez7gAjd649) @mahoney1 that error comes on the dev peer container, which goes offline after a while. subsequent;y, the peer container log prints the following ```2018-04-25T14:20:21.725695331Z 2018-04-25 14:20:21.725 UTC [sccapi] deploySysCC -> INFO 039[0m system chaincode qscc/channel-of-the-brave(github.com/hyperledger/fabric/core/chaincode/qscc) deployed
2018-04-25T14:20:27.748126837Z 2018-04-25 14:20:27.748 UTC [kvledger] CommitWithPvtData -> INFO 03a[0m Channel [channel-of-the-brave]: Committed block [1] with 1 transaction(s)
2018-04-25T14:20:27.766795163Z 2018-04-25 14:20:27.766 UTC [kvledger] CommitWithPvtData -> INFO 03b[0m Channel [channel-of-the-brave]: Committed block [2] with 1 transaction(s)
2018-04-25T14:20:27.785726002Z 2018-04-25 14:20:27.785 UTC [kvledger] CommitWithPvtData -> INFO 03c[0m Channel [channel-of-the-brave]: Committed block [3] with 1 transaction(s)
2018-04-25T14:20:27.804538952Z 2018-04-25 14:20:27.804 UTC [kvledger] CommitWithPvtData -> INFO 03d[0m Channel [channel-of-the-brave]: Committed block [4] with 1 transaction(s)
2018-04-25T14:31:05.760597616Z 2018-04-25 14:31:05.760 UTC [couchdb] CreateDatabaseIfNotExist -> INFO 03e[0m Created state database channel-of-the-brave_lscc
2018-04-25T14:31:05.762857816Z 2018-04-25 14:31:05.762 UTC [lscc] executeInstall -> INFO 03f[0m Installed Chaincode [my-network] Version [0.0.5] to peer
2018-04-25T14:41:14.846026922Z [31m2018-04-25 14:41:14.845 UTC [chaincode] Launch -> ERRO 040[0m launchAndWaitForRegister failed: timeout expired while starting chaincode my-network:0.0.5(networkid:dev,peerid:peer0.frny.com,tx:fc33de4d131186c283257990b643013a006209aa0cbb4d2c909a0000b3f518c6)
2018-04-25T14:41:14.846044332Z github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
2018-04-25T14:41:14.846050857Z /opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
2018-04-25T14:41:14.846053594Z github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch```
[ ](https://chat.hyperledger.org/channel/composer?msg=QSuRWSDez7gAjd649) @mahoney1 that error comes on the dev peer container, which goes offline after a while. subsequent;y, the peer container log prints the following ```2018-04-25T14:20:21.725695331Z 2018-04-25 14:20:21.725 UTC [sccapi] deploySysCC -> INFO 039[0m system chaincode qscc/channel-of-the-brave(github.com/hyperledger/fabric/core/chaincode/qscc) deployed
2018-04-25T14:20:27.748126837Z 2018-04-25 14:20:27.748 UTC [kvledger] CommitWithPvtData -> INFO 03a[0m Channel [channel-of-the-brave]: Committed block [1] with 1 transaction(s)
2018-04-25T14:20:27.766795163Z 2018-04-25 14:20:27.766 UTC [kvledger] CommitWithPvtData -> INFO 03b[0m Channel [channel-of-the-brave]: Committed block [2] with 1 transaction(s)
2018-04-25T14:20:27.785726002Z 2018-04-25 14:20:27.785 UTC [kvledger] CommitWithPvtData -> INFO 03c[0m Channel [channel-of-the-brave]: Committed block [3] with 1 transaction(s)
2018-04-25T14:20:27.804538952Z 2018-04-25 14:20:27.804 UTC [kvledger] CommitWithPvtData -> INFO 03d[0m Channel [channel-of-the-brave]: Committed block [4] with 1 transaction(s)
2018-04-25T14:31:05.760597616Z 2018-04-25 14:31:05.760 UTC [couchdb] CreateDatabaseIfNotExist -> INFO 03e[0m Created state database channel-of-the-brave_lscc
2018-04-25T14:31:05.762857816Z 2018-04-25 14:31:05.762 UTC [lscc] executeInstall -> INFO 03f[0m Installed Chaincode [my-network] Version [0.0.5] to peer
2018-04-25T14:41:14.846026922Z [31m2018-04-25 14:41:14.845 UTC [chaincode] Launch -> ERRO 040[0m launchAndWaitForRegister failed: timeout expired while starting chaincode my-network:0.0.5(networkid:dev,peerid:peer0.frny.com,tx:fc33de4d131186c283257990b643013a006209aa0cbb4d2c909a0000b3f518c6)
2018-04-25T14:41:14.846044332Z github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
2018-04-25T14:41:14.846050857Z /opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
2018-04-25T14:41:14.846053594Z github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch``` does this still have to do with the npm registry settings not reachable?
[ ](https://chat.hyperledger.org/channel/composer?msg=QSuRWSDez7gAjd649) @mahoney1 that error comes on the dev peer container, which goes offline after a while. subsequent;y, the peer container log prints the following ```2018-04-25T14:20:21.725695331Z 2018-04-25 14:20:21.725 UTC [sccapi] deploySysCC -> INFO 039[0m system chaincode qscc/channel-of-the-brave(github.com/hyperledger/fabric/core/chaincode/qscc) deployed
2018-04-25T14:20:27.748126837Z 2018-04-25 14:20:27.748 UTC [kvledger] CommitWithPvtData -> INFO 03a[0m Channel [channel-of-the-brave]: Committed block [1] with 1 transaction(s)
2018-04-25T14:20:27.766795163Z 2018-04-25 14:20:27.766 UTC [kvledger] CommitWithPvtData -> INFO 03b[0m Channel [channel-of-the-brave]: Committed block [2] with 1 transaction(s)
2018-04-25T14:20:27.785726002Z 2018-04-25 14:20:27.785 UTC [kvledger] CommitWithPvtData -> INFO 03c[0m Channel [channel-of-the-brave]: Committed block [3] with 1 transaction(s)
2018-04-25T14:20:27.804538952Z 2018-04-25 14:20:27.804 UTC [kvledger] CommitWithPvtData -> INFO 03d[0m Channel [channel-of-the-brave]: Committed block [4] with 1 transaction(s)
2018-04-25T14:31:05.760597616Z 2018-04-25 14:31:05.760 UTC [couchdb] CreateDatabaseIfNotExist -> INFO 03e[0m Created state database channel-of-the-brave_lscc
2018-04-25T14:31:05.762857816Z 2018-04-25 14:31:05.762 UTC [lscc] executeInstall -> INFO 03f[0m Installed Chaincode [my-network] Version [0.0.5] to peer
2018-04-25T14:41:14.846026922Z [31m2018-04-25 14:41:14.845 UTC [chaincode] Launch -> ERRO 040[0m launchAndWaitForRegister failed: timeout expired while starting chaincode my-network:0.0.5(networkid:dev,peerid:peer0.frny.com,tx:fc33de4d131186c283257990b643013a006209aa0cbb4d2c909a0000b3f518c6)
2018-04-25T14:41:14.846044332Z github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
2018-04-25T14:41:14.846050857Z /opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
2018-04-25T14:41:14.846053594Z github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch``` does this still have to do with the npm registry settings not reachable?
@uber.twin no, I don't believe it does at that point. the timeout is more to do with CORE_CHAINCODE_STARTUPTIMEOUT setting described here https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=sR5bWRDA8qFZ2Ro8v) @mahoney1 would a CORE_CHAINCODE_STARTUPTIMEOUT adjustment make any difference if my dev-peer fails at startup as below? ```2018-04-25T15:30:18.595876515Z > start-network "--peer.address" "peer0.org0.com:7052"
2018-04-25T15:30:18.595881298Z
2018-04-25T15:30:18.687673519Z running start.js
2018-04-25T15:30:20.706619079Z SyntaxError: Unexpected string
2018-04-25T15:30:20.706651658Z at eval (eval at compile (/usr/local/src/node_modules/composer-runtime/lib/scriptcompiler.js:99:33),
@mahoney1 I have no clue about approaching the node startup issue
@uber.twin - have you investigated that one of your scripts is causing this (`SyntaxError: Unexpected string`) - as that's one of scriptcompiler.js jobs, to process the scripts in your network :-) https://github.com/hyperledger/composer/blob/master/packages/composer-runtime/lib/scriptcompiler.js
Has joined the channel.
hi folks!
Can you tell me Do composer's identities mapped somehow to fabric?
I mean if i create an identity with composer to build, manage a fabric network, will this identity show up somehow in fabric context? And if yes what's the logic behind?
Hey guys, I saw that composer chaincode is deployed same way as fabric now, but I've a new question: how do a package a composer chaincode to install it to a new peer added to fabric network?
Hey guys, I saw that composer chaincode is deployed same way as fabric now, but I've a new question: how do a package a composer chaincode to install it into a new peer added to fabric network?
[ ](https://chat.hyperledger.org/channel/composer?msg=S9fD5nLdtoP5JhC2f) @mahoney1 it's not saying much about what is it that it can't evaluate, does it? I maintained same scripts as when I ran with composer 0.18 and it was fine then. Only change is I now use a unique npm package for /lib and /models dirs.
[ ](https://chat.hyperledger.org/channel/composer?msg=S9fD5nLdtoP5JhC2f) @mahoney1 it's not saying much about what is it that it can't evaluate, does it? I maintained same scripts as when I ran with composer 0.18 and it was fine then. Only change is I now use a unique npm package for /lib and /models dirs.
Screenshot from 2018-04-25 23-18-53.png
@SudheerKaspa is your fabric-ca running?
Can I call the product Id that was generated in one function(createProduct) to other function(claimWarrenty)
In the createProduct I have "product.productId=createProduct.product.productId;" like this and I want to compare this product Id with the one in the claimWarrenty
Can someone suggest me
Has joined the channel.
Screenshot from 2018-04-26 09-33-37.png
@vieiramanoel Hello manuel , can you tell me which consensus algorithm is used behind the composer and are there any ways to either select or change the underlying algorithm running?
Also can you suggest me any enterprise level application currently being developed with using composer? Thanks in advance!
Has joined the channel.
hello, can any tell me how to pass parameter in query within transaction processor function?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=rdhbyTv4WtvgvrjfF) @vieiramanoel yes its running i am also able to deploy/upgrade network
Can someone send me the changes we need to make to configure 3 organisations in deploying multi organisation network? I tried for multi organisation in 2 organisations.
```
~/fabric-tools$ composer-playground
info: [Hyperledger-Composer] :LoadModule :loadModule() Loading composer-wallet-filesystem from /home/geospoc/.nvm/versions/node/v8.11.1/lib/node_modules/composer-playground/node_modules/composer-wallet-filesystem
info: [Hyperledger-Composer] :PlaygroundAPI :createServer() Playground API started on port 8080
```
but i am unable to view it in browser :(
Has left the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=hcMLMTrELfHg3oHBJ) @HoneyShah - is your REST server started OK? The rest container can be running 'OK' but the actual REST server within it may not - have you looked at the logs in the container?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=GrupeyJtFT9DYvFhB) @shihabullah - the consensus algorithm is part of the Fabric configuration, and Composer does not have to be aware of worry about what algorithm is used. This doc is a good starting place for Fabric consensus - http://hyperledger-fabric.readthedocs.io/en/latest/ordering-service-faq.html
Has joined the channel.
Hi
I am new in blockchain. Currently I am designing my application. I have decided to use composer for blockchain. I want to know, Can it be possible to create a node that does not have a ledger, kind of light node who does not have a couchdb. Node connect with peers node to do transaction who are kind of full node.\
[ ](https://chat.hyperledger.org/channel/composer?msg=4Mf2ghHvx9EXY7Z7c) @m0ksh_12 - you can define parameters for Transactions in the model file, then within the transaction you can supply the parameter to the query. So if you have a query called Q1 you could pass a parameter like this: ` return query('Q1', { inputValue: mytransaction.myparameter }) `
This doc shows an example of building a new query, and calling an existing query: https://hyperledger.github.io/composer/latest/api/runtime-api#buildquery
I need 3 types of node one just web application type who only need to view the data, another who is light node, means does not have a ledger but have ability to create and update the transaction by seading this transaction to full node and last one is full node who is proper node.
[ ](https://chat.hyperledger.org/channel/composer?msg=e95NkCEcksp3wgQwx) @anshulkathuria34 - this section in the Knowledge Wiki has some information and pointers for you: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--multi-org--byfn-composer-tutorial---issues
Hi
I am currently working on composer and have doubts regarding how an event indicating completion of transaction commit on the ledger can be coded. I have found many event publish subscribe samples. But anyone please tell me
1) what exactly the emit does?
2) when does emit be called? only after the commit to ledger completion happened?
3) how the node to bna connection for event subscription could be written?
Also, the event which I saw in example seems to be an event designed and triggered by ourselves and like it has nothing to do with the actual ledger completion. The sample I saw is posted below. Any help would be much appreciated.
return getAssetRegistry(record.getFullyQualifiedType())
.then(function (registry) {
return registry.add(record);
}) .then(function(){
var BasicEvent = factory.newEvent(model, 'BasicEvent');
BasicEvent.rec = record.rec;
BasicEvent.val = record.val;
emit(BasicEvent);
});
Hi
I am currently working on composer and have doubts regarding how an event indicating completion of transaction commit on the ledger can be coded. I have found many event publish subscribe samples. But anyone please tell me
1) what exactly the emit does?
2) when does emit be called? only after the commit to ledger completion happened?
3) how the node to bna connection for event subscription could be written?
Also, the event which I saw in example seems to be an event designed and triggered by ourselves and like it has nothing to do with the actual ledger completion. The sample I saw is posted below. Any help would be much appreciated.
return getAssetRegistry(record.getFullyQualifiedType())
.then(function (registry) {
return registry.add(record);
}) .then(function(){
var BasicEvent = factory.newEvent(model, 'BasicEvent');
BasicEvent.rec = record.rec;
BasicEvent.val = record.val;
emit(BasicEvent);
});
Hi
I am currently working on composer and have doubts regarding how an event indicating completion of transaction commit on the ledger can be coded. I have found many event publish subscribe samples. But anyone please tell me
1) what exactly the emit does?
2) when does emit be called? only after the commit to ledger completion happened?
3) how the node to bna connection for event subscription could be written?
Also, the event which I saw in example seems to be an event designed and triggered by ourselves and like it has nothing to do with the actual ledger completion. The sample I saw is posted below. Any help would be much appreciated.
return getAssetRegistry(record.getFullyQualifiedType())
.then(function (registry) {
return registry.add(record);
}) .then(function(){
var BasicEvent = factory.newEvent(model, 'BasicEvent');
BasicEvent.rec = record.rec;
BasicEvent.val = record.val;
emit(BasicEvent);
});
@rthatcher @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=BJHnfdhRcb5koHWKB) @pranjalps03 - Most of the questions you ask are Fabric questions about node design rather than Composer questions - you might be better to ask them in the #fabric channel. One observation though is that you could use the Composer REST server instead of a Peer to 'view' the data. I would also focus on the Business aspects and the Application and not over design the Fabric.
@Vanitha you can return results back from another function as shown here (simple example item 5 + 6 in table) -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source-transaction-processor-errors
Has joined the channel.
Hi everyone, do you know if composer will support multichannel in the future ?
Hello,
Can anyone help me with this ?
https://stackoverflow.com/questions/50039054/handshake-failed-with-fatal-error-ssl-error-ssl-error1408f10bssl-routinesssl
Ping @rthatcher
@dsl 1) it emits a business event so you control it 2) that event will not actually be emitted until the transaction is committed. However, throwing an error in a transaction or in your transaction code (if triggered) would make the transaction roll back - and the event would not actually be emitted. 3)
See https://hyperledger.github.io/composer/latest//applications/subscribing-to-events and answer here https://stackoverflow.com/questions/46462151/how-to-listen-to-the-eventcommit-event-in-hyperledger-fabric? for a nodejs client example listening for the published events. The event itself is recorded in Historian do note (you can see this in Playground or REST API call on Historian etc)
[ ](https://chat.hyperledger.org/channel/composer?msg=RtEDK5QA585P94Bpg) @geourjoa hi there, probably best to read this issue and comment thread for the current status on this multichannel support in Composer -> https://github.com/hyperledger/composer/issues/2103
[ ](https://chat.hyperledger.org/channel/composer?msg=dvn6cBWTqmigRrfSX) @mahoney1
How can we say that the event is emitted after only after actual blockchain commit?
[ ](https://chat.hyperledger.org/channel/composer?msg=dvn6cBWTqmigRrfSX) @mahoney1
How can we say that the event is emitted after only after actual blockchain commit?
[ ](https://chat.hyperledger.org/channel/composer?msg=aWDb7M2fYMoaDdr7c) @pb by subscribing to it in your client app. In Fabric 1.1 they fixed an issue in that Fabric always reported a chaincode event irrespective, of whether the transaction was a success or a failure (All transactions are committed to the blockchain even if they fail, they are just marked as failing) however there was no way to tell if it came from a successful or failing transaction - so (back to) Composer 0.19.x, it should now only emit an event on a successfully committed txn.
[ ](https://chat.hyperledger.org/channel/composer?msg=FGDFkAyvte4H7XgQh) @mahoney1
Thanks .But however the event corresponding to a transaction in Composer is user defined and how can it listen to a actual blockevent.
@pb - for blocks read Fabric: the eventhub... See https://stackoverflow.com/questions/46462151/how-to-listen-to-the-eventcommit-event-in-hyperledger-fabric may help
[ ](https://chat.hyperledger.org/channel/composer?msg=tb5egmTcS7jE2oCGQ) @CorentinPacaud - ah, I didn't realise you were 'Cocorico'. Yesterday you showed thos error in the Orderer:
"(expected OrdererMSP, got Org1MSP)"
So if you still have the same error, you need to search your connection.json, your docker-compose.yaml files (including those under the base sub directory) and also the script.sh file, and the configtx.yaml, crypto-config.yaml files. Somewhere in one of those files you still have a reference to Org1MSP.
[ ](https://chat.hyperledger.org/channel/composer?msg=tb5egmTcS7jE2oCGQ) @CorentinPacaud - ah, I didn't realise you were 'Cocorico'. Yesterday you showed this error in the Orderer:
"(expected OrdererMSP, got Org1MSP)"
So if you still have the same error, you need to search your connection.json, your docker-compose.yaml files (including those under the base sub directory) and also the script.sh file, and the configtx.yaml, crypto-config.yaml files. Somewhere in one of those files you still have a reference to Org1MSP.
[ ](https://chat.hyperledger.org/channel/composer?msg=2x9gYG6GMEepdvtEj) @mahoney1
But if one is using composer to model the business network then how is it possible to use fabric nodeSDK to register eventhub?
@rthatcher thank you. i actually want to store query result in an event parameter. so that UI side i can subscribe that event to display this result..
according to you is there any better way?
1) Can someone please tell me how to call one transaction from another in the logic.js file ?
2) Also can a transaction be an input to an event in the cto file ?
@ReginaMehta may be it's not possible to call one transaction from another in logic.js because those are smart contracts which will be resolved by orderer node one at a time, but you can call that in angular UI.
ls
Has joined the channel.
Has joined the channel.
Hi,```
Could someone help me with this problem ?```
https://stackoverflow.com/questions/50039532/cannot-install-hyperledger-composer-cli
```
```
@CarrereArnaud from your S/O logs - it looks like you're using an unsupported Node version (8.11) - see all prerequisites here -> https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html you need Node v8.9.x - as mentioned there, its recommended to install nvm to manage node versions. Hope this helps.
HI, I finished the modelling and chaincode part in composer and have a deployable bna file which works on our dev environment. But I am getting frustrated with setting up a real network with multiple servers. Is there any good ressource?
@pb Composer deals with business events at a transaction level (however Fabric is configured (eg BatchSize/BatchTimeout etc) to write these into blocks). If you're talking about block events - then use Fabric-sdk-node to create a block listener - When there is a need to monitor for new blocks being added to the ledger, use a block event listener. The Fabric client Node.js app will be notified when a new block is committed to the ledger on the peer. The app callback will be passed a JSON representation of the newly added block see https://fabric-sdk-node.github.io/tutorial-channel-events.html for an example
@Saschaka so you're talking firstly about configuring a Fabric blockchain network, across multiple servers on an IP network. See this section of the knowledge wiki -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--multi-org--byfn-composer-tutorial---issues - there are resources to understand more about setting up across physical machines etc
I undestand that I have to see the Network and the bna-file as two separate topics, right? I have to bring up a Fabric Network with several servers, create a channel and than I deploy the bna on the peer, right?
[ ](https://chat.hyperledger.org/channel/composer?msg=mPpSsGvpey7AypceR) @Saschaka yes in summary, and obviously join those peer at a Fabric level s to the channel (ledger). Once the business network is installed on all the peers (so they have the code/smart contract), the business network is started on the channel and you interact with the business network as participants of the business network.
[ ](https://chat.hyperledger.org/channel/composer?msg=mPpSsGvpey7AypceR) @Saschaka yes in summary, and obviously join those peers at a Fabric level s to the channel (ledger). Once the business network is installed on all the peers (so they have the code/smart contract), the business network is started on the channel and you interact with the business network as participants of the business network.
[ ](https://chat.hyperledger.org/channel/composer?msg=mPpSsGvpey7AypceR) @Saschaka yes in summary, and obviously join those peers, at a Fabric level, to the channel (ledger). Once the business network is installed on all the peers (so they have the code/smart contract), the business network is started on the channel and you interact with the business network as participants of the business network.
Hi! can we configure REST server's address and port??
[ ](https://chat.hyperledger.org/channel/composer?msg=eYcMJkN3i9rkM23kc) @ReginaMehta 1) as mentioned, you can't call one txn from another - however, a transaction processor can call other functions to allow for code modularisation, but it will only be registered as a single transaction request, in the transaction registry. 2) yes you can use the transaction as input - eg. such as fields of the transaction object etc - see https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L28 for an example (using a relationship field in the transaction)
[ ](https://chat.hyperledger.org/channel/composer?msg=JwvLLCtEk9XfQompg) @m0ksh_12 this is probably the easiest way. Other than that your client application could do a `request.get` to the API endpoint and process the query results eg https://codeburst.io/4-ways-for-making-http-s-requests-with-node-js-c524f999942d
@Pranoti - use `-P` port to change - and see https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server.html - should listen on 0.0.0.0 by default (means if you make it available on an IPv4 address, it should be accessible).
@rthatcher I found this in the logs' orderer.
```2018-04-26 11:54:53.334 UTC [msp] getMspConfig -> DEBU 00a Intermediate certs folder not found at [/etc/hyperledger/msp/orderer/msp/intermediatecerts]. Skipping. [stat /etc/hyperledger/msp/orderer/msp/intermediatecerts: no such file or directory]
2018-04-26 11:54:53.334 UTC [msp] getPemMaterialFromDir -> DEBU 00b Reading directory /etc/hyperledger/msp/orderer/msp/tlscacerts
2018-04-26 11:54:53.334 UTC [msp] getPemMaterialFromDir -> DEBU 00c Inspecting file /etc/hyperledger/msp/orderer/msp/tlscacerts/tlsca.example.com-cert.pem
2018-04-26 11:54:53.335 UTC [msp] getPemMaterialFromDir -> DEBU 00d Reading directory /etc/hyperledger/msp/orderer/msp/tlsintermediatecerts
2018-04-26 11:54:53.335 UTC [msp] getMspConfig -> DEBU 00e TLS intermediate certs folder not found at [/etc/hyperledger/msp/orderer/msp/tlsintermediatecerts]. Skipping. [stat /etc/hyperledger/msp/orderer/msp/tlsintermediatecerts: no such file or directory]
2018-04-26 11:54:53.335 UTC [msp] getPemMaterialFromDir -> DEBU 00f Reading directory /etc/hyperledger/msp/orderer/msp/crls
2018-04-26 11:54:53.335 UTC [msp] getMspConfig -> DEBU 010 crls folder not found at [/etc/hyperledger/msp/orderer/msp/crls]. Skipping. [stat /etc/hyperledger/msp/orderer/msp/crls: no such file or directory]
2018-04-26 11:54:53.335 UTC [msp] getMspConfig -> DEBU 011 MSP configuration file not found at [/etc/hyperledger/msp/orderer/msp/config.yaml]: [stat /etc/hyperledger/msp/orderer/msp/config.yaml: no such file or directory]
```
[ ](https://chat.hyperledger.org/channel/composer?msg=aWQg6jjACyX5qv9Hs) @mahoney1 using -p only port will change.. I want to change address too. Actually yes I want to make it available on IPv4 address.. how to do that?
[ ](https://chat.hyperledger.org/channel/composer?msg=J5TKQEvNnwXGExy3N) I saw your anser over here https://stackoverflow.com/questions/47179869/need-to-replace-localhost3000-with-realip3000-in-composer-rest-server .. I tried that.. But its not working..
[ ](https://chat.hyperledger.org/channel/composer?msg=J5TKQEvNnwXGExy3N) I saw your anser over here https://stackoverflow.com/questions/47179869/need-to-replace-localhost3000-with-realip3000-in-composer-rest-server .. I tried that.. But its not working.. Is there anything else to change ip address?
[ ](https://chat.hyperledger.org/channel/composer?msg=J5TKQEvNnwXGExy3N) @mahoney1 I saw your anser over here https://stackoverflow.com/questions/47179869/need-to-replace-localhost3000-with-realip3000-in-composer-rest-server .. I tried that.. But its not working.. Is there anything else to change ip address?
[ ](https://chat.hyperledger.org/channel/composer?msg=J5TKQEvNnwXGExy3N) @mahoney1 I saw your answer over here https://stackoverflow.com/questions/47179869/need-to-replace-localhost3000-with-realip3000-in-composer-rest-server .. I tried that.. But its not working.. Is there anything else to change ip address?
[ ](https://chat.hyperledger.org/channel/composer?msg=J5TKQEvNnwXGExy3N) @mahoney1 I saw one answer over here https://stackoverflow.com/questions/47179869/need-to-replace-localhost3000-with-realip3000-in-composer-rest-server .. I tried that.. But its not working.. Is there anything else to change ip address?
Hey guys I am having problem in setting composer on my local machine.
I am following this video https://youtu.be/t5wZvmZGuAY?t=22m10s.
and completed process till 22:10
"composer network deploy" do not work on ubuntu.
[ ](https://chat.hyperledger.org/channel/composer?msg=9cdzfAdYPBDKwcgWc) @adilj13 - that video is dated Oct 2017 I think, and we have had a few new versions of Composer since then - the 'composer network deploy' command does not exist any more. If you are using composer v0.19 which is the latest recommended version (` composer -v ` to check) then I would suggest following this tutorial: https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
[ ](https://chat.hyperledger.org/channel/composer?msg=2BM2Cu6WC2GHqcWBA) @CorentinPacaud - I would _guess_ that if you look in the docker-compose-base.yaml file in the base folder you will see volume mappings for the orderer - if you are running a custom fabric you may have to modify these to reflect your folder structure.
(I assume that you are working with a modified 'byfn' fabric)
@rthatcher Yes, I have this but there is no `tlsintermediatecerts` folder in the crypto-config folder....
same for config.yaml.
There are generated, right ?
And, no, I don't work with the byfn. I built my own docker-compose.yaml, connection.profile and my script to restart all the thing (kill docker, generate crypto material, restart docker, etc)
Has joined the channel.
hello everyone, i am a final year MCA student. I am working on a block chain hyper ledger composer project, but i am very new to this technology, have less idea about the technology. i have installed the platform of hyper ledger composer, has written model files and script files too, but am unable to verify the error in my code. i will be very much thankful if you suggest me any professional help.
hello everyone, i am a final year MCA student. I am working on a block chain hyper ledger composer project, but i am very new to this technology, have less idea about the technology. i have installed the platform of hyper ledger composer, has written model files and script files too, but am unable to verify the error in my code. i will be very much thankful if you suggest me any professional help.
hello everyone, i am a final year MCA student. I am working on a block chain hyper ledger composer project, but i am very new to this technology, have less idea about the technology. i have installed the platform of hyper ledger composer, has written model files and script files too, but am unable to verify the error in my code. i will be very much thankful if you suggest me any professional help.
hello everyone, i am a final year MCA student. I am working on a block chain hyper ledger composer project, but i am very new to this technology, have less idea about the technology. i have installed the platform of hyper ledger composer, has written model files and script files too, but am unable to verify the error in my code. i will be very much thankful if you suggest me any professional help.
hello everyone, i am a final year MCA student. I am working on a block chain hyper ledger composer project, but i am very new to this technology, have less idea about the technology. i have installed the platform of hyper ledger composer, has written model files and script files too, but am unable to verify the error in my code. i will be very much thankful if you suggest me any professional help.
[ ](https://chat.hyperledger.org/channel/composer?msg=ztzX7jpK4Lj2XrgX7) @CorentinPacaud - OK thanks for the info. This now looks like a Fabric and Fabric CA question, not a Composer question, so I would suggest asking in the #fabric or #fabric-ca channels.
ok :(
mahoney1 thanks for your advice currently i tried ` return query('Q1', { inputValue: mytransaction.myparameter }) `, solution now the query gives me participants based on input parameter in transaction and i want to display this list Angular UI side. should i do that by emitting event and storing filtered list in event?
@mahoney1 thanks for your advice currently i tried ` return query('Q1', { inputValue: mytransaction.myparameter }) `, solution now the query gives me participants based on input parameter in transaction and i want to display this list Angular UI side. should i do that by emitting event and storing filtered list in event?
[ ](https://chat.hyperledger.org/channel/composer?msg=vqCkK6XLYA8MHuZeu) @utsha94 hi there, you can review the business network / chaincode container logs for errors eg `composer network loglevel -c admin@bna_name -l "DEBUG" ` - seehttps://hyperledger.github.io/composer/latest//reference/composer.network.logLevel, https://stackoverflow.com/questions/48890545/hyperledger-composer-on-fabric-console-log-doesnt-work and also https://hyperledger.github.io/composer/latest//problems/diagnostics for more info
[ ](https://chat.hyperledger.org/channel/composer?msg=vqCkK6XLYA8MHuZeu) @utsha94 hi there, you can review the business network / chaincode container logs for errors eg `composer network loglevel -c admin@bna_name -l "DEBUG" ` - see https://hyperledger.github.io/composer/latest//reference/composer.network.logLevel, https://stackoverflow.com/questions/48890545/hyperledger-composer-on-fabric-console-log-doesnt-work and also https://hyperledger.github.io/composer/latest//problems/diagnostics for more info
BTW, @rthatcher , when I run the `byfn -m up -s couchdb -a` , I have this error :
```
!!!!!!!!!!!!!!! Chaincode instantiation on PEER2 on channel 'mychannel' failed !!!!!!!!!!!!!!!!
========= ERROR !!! FAILED to execute End-2-End Scenario ===========
```
[ ](https://chat.hyperledger.org/channel/composer?msg=p3KjJgk8EwDQ7pXkf) @m0ksh_12 the results would be too big to emit in an event (that's not really what its designed for, returning large results data). Would suggest it might be better that you set up a table component in Angular app (I'm no Angular expert, this is Composerland :-) ) to consume your REST query results, - this may help https://codeburst.io/display-a-table-using-components-with-angular-4-f13f0971666d
[ ](https://chat.hyperledger.org/channel/composer?msg=p3KjJgk8EwDQ7pXkf) @m0ksh_12 the results would be too big to emit in an event (that's not really what its designed for, returning large results data). Would suggest it might be better that you set up a table component in yr Angular app (I'm no Angular expert, this is Composerland :-) ) to consume your REST query results, - this may help https://codeburst.io/display-a-table-using-components-with-angular-4-f13f0971666d
[ ](https://chat.hyperledger.org/channel/composer?msg=YZgF7RoffXyx2FfHf)
it seems that the `-a` is not working.
@mahoney1 Okay i try with tables
[ ](https://chat.hyperledger.org/channel/composer?msg=ZGpaYQdnuQNZMTm52)
So for me, the first-network is not working.
I brought my Fabric network following the tutorial. How can I instantiate my bna file there now?
[ ](https://chat.hyperledger.org/channel/composer?msg=TMaapHqpddXo68uaP) @CorentinPacaud - the ` -a ` is a flag that starts the CA container so not likely to be the issue you are seeing. If you check the log for the for the peer, or the cli container you will see more.
BTW are you running this all on a single machine?
Moving from a standard byfn configuration to a custom fabric is a process of planning, and then going through all the files line by line to make sure all references are covered.
@rthatcher Well, now, when I retry to do the `./byfn.sh -m up -s couchdb -a`, I have this error :
```
2018-04-26 13:40:30.431 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2018-04-26 13:40:30.433 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2018-04-26 13:40:30.437 UTC [grpc] Printf -> DEBU 003 grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: Error while dialing dial tcp 172.25.0.11:7051: getsockopt: connection refused"; Reconnecting to {peer0.org1.example.com:7051
When I was trying to store Id's in an array I was facing replacement issues. Hope someone can guide me.
//declared globally
var productArr = [];
var i;
//In function
product.productId=createProduct.product.productId;
productArr.push(product.productId);
console.log(productArr);
for(i=0; i <= productArr.lengh; i++){
console.log(prodcutArr[i]);
}
output:
In createProductFunc fun
VM263:150 ["3476"]0: "3476"length: 1__proto__: Array(0)
VM263:163 intel@gmail.com
VM263:180 valid manufacturer
VM263:191 Valid Product ID
VM263:139
In createProductFunc fun
VM263:150 ["3576"]0: "3576"length: 1__proto__: Array(0)
VM263:163 intel@gmail.com
VM263:180 valid manufacturer
VM263:191 Valid Product ID
[ ](https://chat.hyperledger.org/channel/composer?msg=J5TKQEvNnwXGExy3N) @mahoney1 Is it not possible to configure the address??
[ ](https://chat.hyperledger.org/channel/composer?msg=aWQg6jjACyX5qv9Hs) @mahoney1 Yes actually i want to make it available on IPv4 address.. And I saw one answer over here https://stackoverflow.com/questions/47179869/need-to-replace-localhost3000-with-realip3000-in-composer-rest-server .. I tried this but its not working.. Is there anything else I can do to change the configuration??
[ ](https://chat.hyperledger.org/channel/composer?msg=aWQg6jjACyX5qv9Hs) @mahoney1 Using -p only port will change.. I want to change address.. Yes actually i want to make it available on IPv4 address.. And I saw one answer over here https://stackoverflow.com/questions/47179869/need-to-replace-localhost3000-with-realip3000-in-composer-rest-server .. I tried this but its not working.. Is there anything else I can do to change the configuration??
@Pranoti - P (capital for port). For address you should just be able to add a 'host' parameter to your COMPOSER_DATASOURCES I believe to bind it (its a loopback datasource) . https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server.html
[ ](https://chat.hyperledger.org/channel/composer?msg=NhRbP3HnmCmFqG2cF) @mahoney1 Okay thank you very much I'll try this now..
@Vanitha I suspect its because you have `prodcutArr[i])` in your console.log (if you're referring to your for loop). My answer here (ie answer) may be be useful reference point https://stackoverflow.com/questions/49961252/update-and-updateall-not-functioning-as-needed/49983533#49983533
@mahoney1 Thanks for the link
@mahoney1 hi, I still can't figure out which part of my chaincode is causing the error below at "network start" time. Exactly same code used to work with composer 0.18. Could you please suggest any regarding what should I check for, based on the addition validations done by composer 0.19?
If not, are there any chances the future releases will display any sort of usable information on such evaluation error issues?```
2018-04-26T14:23:29.269306563Z running start.js
2018-04-26T14:23:32.416464867Z SyntaxError: Unexpected string
2018-04-26T14:23:32.416506366Z at eval (eval at compile (/usr/local/src/node_modules/composer-runtime/lib/scriptcompiler.js:99:33),
Has joined the channel.
Has joined the channel.
Hi all
How can we check blockchain on hyperledger composer ?
How to show immutability attribute in hyperledger composer
How to show immutability attribute in hyperledger composer
How to show immutability attribute in hyperledger composer
How to show immutability attribute in hyperledger composer
How to show immutability attribute in hyperledger composer
How to show immutable attribute of composer
How to show immutability attribute in hyperledger composer
Hello, what is the latest version of nodejs ?
The latest Node.js version is 10.0
I made a video tutorial on how to write a model file: https://www.youtube.com/watch?v=Cvt7OmxfYxI
Has joined the channel.
Has joined the channel.
FYI here - reminder that the Community call now 4pm UTC (5pm UK, 12pm ET, 9am PT) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming best regards Paul
FYI here - reminder that the Community call in 5 mins - 4pm UTC (5pm UK, 12pm ET, 9am PT) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/j/961428987 dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming best regards Paul
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=GrupeyJtFT9DYvFhB) @shihabullah srry, I can't help you with it, but I think @vitorduarte could.
[ ](https://chat.hyperledger.org/channel/composer?msg=qQygk5voMmy33Gm6A) @SudheerKaspa check tha ca logs after the composer identity command
@uber.twin - its a strange one. Would have to see the bna. But what I would suggest first is to maybe create a separate, cutdown version of your B/network with one script file and deploy it as a *new* network : to see if you get the same thing, notwithstanding what you mention between 0.18.x and 0.19.x. You could also take a sample network from Github and see if you get any such behaviours in your current environment eg something like perishable-network.
Hi everyone. What's the command to use in 0.19.2 to install a new .bna file?
@shihabullah see http://hyperledgerdocs.readthedocs.io/en/latest/FAQ/consensus_FAQ.html Hyperledger Composer uses the underlying Fabric [supported] consensus mechanisms (and which uses a pluggable consensus in its own right) - working group paper here -> https://www.hyperledger.org/wp-content/uploads/2017/08/Hyperledger_Arch_WG_Paper_1_Consensus.pdf
nevermind, I found it btw.
[ ](https://chat.hyperledger.org/channel/composer?msg=5Gz5GyJM4qS6ipGMS) @mahoney1 Thank you, I did consider the same approach. It should not be an environment issue since I could install and start a network consisting of the simplest model and code I could think of. I also thought of deploying increasingly complex versions of my network but that would not be very productive since I accumulated around 4k lines of chaincode.
@uber.twin - indeed - was thinking if there is a point at which its being observed in 0.19.x, then an issue should be created if that's poss, if not already.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=LrDGbXjvBuEa3o4c7) @mahoney1 One thing I didn't expect is I got to manually delete de dev-peer docker image created at a "network start" time. A docker-compose stop/up, followed by Fabric channel creation/ join will not suffice to retry with a new bna network install/ start as it will still use the previously generated dev-peer image. It is true I am not increasing my network versions between re-deployments, but again, composer 0.18 didn't care about it.
[ ](https://chat.hyperledger.org/channel/composer?msg=LrDGbXjvBuEa3o4c7) @mahoney1 One thing I didn't expect is I got to manually delete de dev-peer docker image created at a "network start" time. A docker-compose stop/up, followed by Fabric channel creation/ join will not suffice to retry with a new bna network install/ start as it will still use the previously generated dev-peer image. It is true I am not increasing my network versions between re-deployments, but again, composer 0.18 didn't care about it. Regardless, my problem persists:)
Has joined the channel.
Hey I am new to HL community
How to get better? Doing Coursera course of IBM blockchain for Developers. What to do next, good resources to study?
Hi folks!
I am trying to install a composer runtime to my running fabric network via composer (My network is a custom network build with fabric-ca, the exact example of the fabric-ca sample network only with one org). I am struggling creating the correct connection profile...my guess is that i giving wrong tls certs. For instance my peers have 3 tls certs: for server,client and cli, orderer has one the server tls. All of them using the same root CA (there is only one org). So which tls should i use? Should i merge them to one? I there any documentation for the connection profile?
kubectl get svc
Is there any documentation about connecting to rest server web sockets with multi user mode and authentication?
I tried this, and no events get displayed.
wscat -c ws://localhost:3000?access_token=c0j914yK27rpiuQlmhULYJGVAkfDDYaOAsIGy4BRgMXeZR4zdl49eeqABLNVoG54
Has joined the channel.
Has joined the channel.
Hi everyone. Can anyone just explain how to extract specific data of asset through composer query Language ?
Has joined the channel.
Has joined the channel.
Hello everyone,
When I execute sudo ./createPeerAdminCard.sh then getting following error:
"No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher"
I have installed composer-cli higher version using following command:
npm install -g composer-cli@0.19.2
@silentinfotech run `composer -v` and paste the output in here
and it will installed successfully but still I have getting this error.
[ ](https://chat.hyperledger.org/channel/composer?msg=QdKLZYoZzof9JKaGv) @RitikaBundela this is not possible
@sstone1 Output:
module.js:549
throw err;
^
Error: Cannot find module './api'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.
the install was not successful ;-)
you will have got a bunch of errors from `node-gyp` about being unable to compile the native module
also i'm assuming (since your node install is in `/usr/lib`) that you used root or sudo to install node.js + composer-cli which is not recommended
@sstone1 Thanks, I executing command using sudo.
@sstone1 Thanks, I executed command using sudo.
root / sudo do not work very well with native modules
we recommend that you use nvm to install node.js
https://github.com/creationix/nvm#installation
it installs it for the current user and you do not need root or sudo
Hi All, I want to call external service using below coomand
const Tempred = await request.get({ uri: URLNAME,json: true});
I want to do some thing after the successful of this request
what happening is now that URL is called but result is not coming may be late respone
as this is an async call rest of the things also executing
how can I handle this ?
Has joined the channel.
Hello, guys.
How to catch the middle value of resource?
newResource(NS, 'something', 'ID1'); I see that i can catch id by getIdentifier(). But how to catch the middle one, in this case it's "something".
Hi Composer fans! I will be talking about Smart *Legal* Contracts (and demoing an integration with Composer) at this webinar on Tuesday next week. All are welcome. https://mailchi.mp/9acb513ddda5/webinar-smart-legal-contracts-optimise-or-disrupt
@dselman hello.
Could you answer my question?
@tvman99 `getIdentifier()` will return a string of the form `NAMESPACE/TYPE#ID`
@tvman99 `getFullyQualifiedIdentifier()` will return a string of the form `NAMESPACE/TYPE#ID`
I get that. So how to get type?
which is right after namespace
Call `getType()`
See: https://hyperledger.github.io/composer/latest/api/common-resource.html
Thank you so much.
`getType()`
;-)
https://hyperledger.github.io/composer/latest/api/common-typed
actually, use this instead
https://hyperledger.github.io/composer/latest/api/common-resource
@suva you need to understand how `async` and `await` work - the code you pasted in already does what you want it to ;-)
I also want to know how async and await works even i am not currently using async yet.
hi :relaxed: , does anyone how to secure mongodb and specify databse name, username & password for the rest server to connect to mongodb
?
https://javascript.info/async covers promises, promise chaining, and the new async/await keywords - all of which is vital knowledge for writing async JS code (including Composer TP functions)
@waleed check out the config options for the mongodb loopback connector here: https://github.com/strongloop/loopback-connector-mongodb#creating-a-mongodb-data-source
you need to specify the correct options in your COMPOSER_DATASOURCES
[ ](https://chat.hyperledger.org/channel/composer?msg=yfBxiLKDzerRaSjoL) @sstone1 thanks for your answer:
Here how I run my mongo container and create rest user:
```
docker run \
-d \
-e MONGO_INITDB_ROOT_USERNAME=${MONGO_INITDB_ROOT_USERNAME} \
-e MONGO_INITDB_ROOT_PASSWORD=${MONGO_INITDB_ROOT_PASSWORD} \
-e TZ=Europe/Zurich \
--name ${MONGO_CONTAINER_NAME} \
--network ${FABRIC_DOCKER_NETWORK_NAME} \
-p 27017:27017 \
mongo
sleep 5
echo "Creating mongo user..."
docker exec ${MONGO_CONTAINER_NAME} mongo admin -u ${MONGO_INITDB_ROOT_USERNAME} -p ${MONGO_INITDB_ROOT_PASSWORD} --eval "db.createUser({user: '${MONGO_ZNUENI_DB_USER}', pwd: '${MONGO_ZNUENI_DB_USER_PASSWORD}', roles: [{role: 'readWrite', db: '${MONGO_ZNUENI_DB_NAME}'}]});"
echo "Mongo user created."
```
this works fine.
Here is my `COMPOSER_DATASOURCES`:
```
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "'$MONGO_CONTAINER_NAME'",
"database": "'${MONGO_ZNUENI_DB_NAME}'",
"user": "'$MONGO_ZNUENI_DB_USER'",
"password": "'$MONGO_ZNUENI_DB_USER_PASSWORD'"
}
}'
```
I get this error from rest-server logs:
```
Connection fails: MongoError: Authentication failed.
It will be retried for the next request.
MongoError: Authentication failed.
```
and this error from mongo:
```
2018-04-27T09:39:24.388+0200 I ACCESS [conn2] SCRAM-SHA-1 authentication failed for rest on znueni from client 172.18.0.14:55816 ; UserNotFound: Could not find user rest@znueni
```
[ ](https://chat.hyperledger.org/channel/composer?msg=yfBxiLKDzerRaSjoL) @sstone1 thanks for your answer:
Here how I run my mongo container and create rest user:
```
docker run \
-d \
-e MONGO_INITDB_ROOT_USERNAME=${MONGO_INITDB_ROOT_USERNAME} \
-e MONGO_INITDB_ROOT_PASSWORD=${MONGO_INITDB_ROOT_PASSWORD} \
-e TZ=Europe/Zurich \
--name ${MONGO_CONTAINER_NAME} \
--network ${FABRIC_DOCKER_NETWORK_NAME} \
-p 27017:27017 \
mongo
sleep 5
echo "Creating mongo user..."
docker exec ${MONGO_CONTAINER_NAME} mongo admin -u ${MONGO_INITDB_ROOT_USERNAME} -p ${MONGO_INITDB_ROOT_PASSWORD} --eval "db.createUser({user: '${MONGO_ZNUENI_DB_USER}', pwd: '${MONGO_ZNUENI_DB_USER_PASSWORD}', roles: [{role: 'readWrite', db: '${MONGO_ZNUENI_DB_NAME}'}]});"
echo "Mongo user created."
```
this works fine.
Here is my `COMPOSER_DATASOURCES`:
```
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "'$MONGO_CONTAINER_NAME'",
"database": "'${MONGO_ZNUENI_DB_NAME}'",
"user": "'$MONGO_ZNUENI_DB_USER'",
"password": "'$MONGO_ZNUENI_DB_USER_PASSWORD'"
}
}'
```
I get this error from rest-server logs:
```
Connection fails: MongoError: Authentication failed.
It will be retried for the next request.
MongoError: Authentication failed.
```
and this error from mongo:
```
2018-04-27T09:39:24.388+0200 I ACCESS [conn2] SCRAM-SHA-1 authentication failed for rest on znueni from client 172.18.0.14:55816 ; UserNotFound: Could not find user rest@znueni
```
Hello! I've faced with one very strange issue. When I start network, I ping network using `composer network ping -c alice@hc-blockchain` and it's OK. After that, I'm trying to load this card to REST server and got next
```{
"error": {
"statusCode": 500,
"message": "Failed to import identity. Error: privateKey not specified or not a string"
}
}```
And after that command `composer network ping -c alice@hc-blockchain` NOT WORKING!
How does it work???
[ ](https://chat.hyperledger.org/channel/composer?msg=q3LJESuF9GNxyBZnJ) @silentinfotech - we have some additional notes on Install issues in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#installissues
Hi All, If i am going to update my deployed BNA file then what all steps I need to follow. As I am following https://hyperledger.github.io/composer/unstable/business-network/upgrading-bna
But bit cofuse about the version change
If any one has any reference plz share with me?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=cJtL5cpTJRrekYjuz) @argman - we have some background information on Cards in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--business-network-cards
I think what you are doing is trying to use a card with a one-time secret in it after the secret is already used.
After you have had a successful ping of the network - export that card to a new .card file ` composer card export ` then use that new .card file to import into the rest server.
[ ](https://chat.hyperledger.org/channel/composer?msg=SdMWNy438qTGodtTc) @rthatcher Yes, after export it works on REST serve. But now my CLI commands don't work.
[ ](https://chat.hyperledger.org/channel/composer?msg=SdMWNy438qTGodtTc) @rthatcher Yes, after export it works on REST server. But now my CLI commands don't work.
How am i supposed to use isResource()?
asset.getFullyQualifiedIdentifier().isResource() doesnt work
nor isResource(asset.getFullyQualifiedIdentifier())
@rthatcher As I understand, I should export it from REST and load it to composer CLI to use it. Am I right?
Accessing historian rest api it returns,
{
"$class": "org.hyperledger.composer.system.HistorianRecord",
"transactionId": "d92440de-70b9-4b87-b67e-adebec4c8fc6#0",
"transactionType": "org.hyperledger.composer.system.AddParticipant",
"transactionInvoked": "resource:org.hyperledger.composer.system.AddParticipant#d92440de-70b9-4b87-b67e-adebec4c8fc6%230",
"eventsEmitted": [],
"transactionTimestamp": "2018-04-27T06:32:35.760Z"
},
{
"$class": "org.hyperledger.composer.system.HistorianRecord",
"transactionId": "4649d351f6db8d4725e005459424c6ec1e9e84370b4d5f1c3b187fe18f151ab3",
"transactionType": "org.hyperledger.composer.system.AddParticipant",
"transactionInvoked": "resource:org.hyperledger.composer.system.AddParticipant#4649d351f6db8d4725e005459424c6ec1e9e84370b4d5f1c3b187fe18f151ab3",
"participantInvoking": "resource:org.hyperledger.composer.system.NetworkAdmin#admin",
"identityUsed": "resource:org.hyperledger.composer.system.Identity#936bd4ff232441d5bf6e9cd445f3d0bde0f0bfb1c2bfa438a1d86bb43d4ea41d",
"eventsEmitted": [],
"transactionTimestamp": "2018-04-27T06:40:25.274Z"
}
There is no data about participants.Is there any ways to fetch using transaction id?
can i run upgrade command for updating a deployed network?
[ ](https://chat.hyperledger.org/channel/composer?msg=nqoDSCwKruCE7ZJsN) @tvman99 hi there - just use `asset.isResource()` ? eg on current participant (sample) ```currentParticipant = getCurrentParticipant();
console.log("is current participant is resource?: " + currentParticipant.isResource()); ```
[ ](https://chat.hyperledger.org/channel/composer?msg=nqoDSCwKruCE7ZJsN) @tvman99 hi there - just use `asset.isResource()` ? eg on current participant (sample) ```currentParticipant = getCurrentParticipant();
console.log("is current participant a resource?: " + currentParticipant.isResource()); ```
[ ](https://chat.hyperledger.org/channel/composer?msg=oQtsfLnXfTu5rxDcy) @suva see example here https://stackoverflow.com/questions/49749163/read-multiple-value-from-as-json-format-from-a-external-service-and-store-in-com (answer obviously)
[ ](https://chat.hyperledger.org/channel/composer?msg=fydh2qQx3w8S43QBw) @argman - the important thing is to understand that when a card is created (an Identity Issued) it has a one-time secret. The first time you use that card the secret is exchanged for keys/certificates. So after that time you can't use the old card as the secret is invalid.
You can see this on the command line using `composer card list -c alice@hc-blockchain` - at the bottom of the output you will see _credentials_ and this will have the value of _One time use only secret set_ or _credentials set_
The size of a .card file will show whether it includes certificates.
@suva on upgrading your business network - see 'Step Three' and 'Step Four' of https://hyperledger.github.io/composer/latest/tutorials/queries
@mahoney1 Thanks
@rthatcher Much thanks! Now it's clear :)
can we configure the block size and time in which it is closed?
can we configure the block size and time in which it is closed?
and what is the preferred size of blocks in general?
[ ](https://chat.hyperledger.org/channel/composer?msg=jCoi5sE9MhRf7wDEc) any help for this issue?
and what is the preferred size of blocks in general?
Hey, people!) I have a troubles with authorization on composer-rest-server, especially with local auth. Does any-body have a working example with local auth?
@waleed it would see that your authentication database can't find the user `rest@znueni` - https://docs.mongodb.com/manual/core/security-users/ I would validate it manually first - not sure if you've manually config'ed authentication - this may help https://unix.stackexchange.com/questions/261921/mongodb-authentication-failed - hope this helps
[ ](https://chat.hyperledger.org/channel/composer?msg=wARJMPff6CWJDyqAg) @Varun2887 - yes you can configure these. They are Fabric settings and Composer just uses the Fabric, so you will need to check the Hyperledger Fabric documentation or the #fabric channel.
I'm trying to push asset.something into asset.array[].
asset.array.push(asset.something); doesnt work as expected
[ ](https://chat.hyperledger.org/channel/composer?msg=wARJMPff6CWJDyqAg) @Varun2887 that's a Fabric question really - but see here for more info https://stackoverflow.com/questions/42756681/how-exactly-blocks-are-created-in-hyperledger-fabric and https://stackoverflow.com/questions/45328658/separate-block-creating-for-each-transaction-in-ibm-bluemix-hyperledger-fabric-v
it shows an error that says generated invalid json
@tvman99 see answers pasted here https://stackoverflow.com/questions/49961252/update-and-updateall-not-functioning-as-needed or see here https://stackoverflow.com/questions/49002945/not-able-to-add-all-elements-of-an-array-of-new-resources-to-the-registry/49008380#49008380 or here for examples
[ ](https://chat.hyperledger.org/channel/composer?msg=jorbZwo8Xf69gS289) @Turikalen this SO may help you https://stackoverflow.com/questions/46216970/how-to-use-passport-local-to-authenticate-in-composer-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=jorbZwo8Xf69gS289) @Turikalen this S/O may help you https://stackoverflow.com/questions/46216970/how-to-use-passport-local-to-authenticate-in-composer-rest-server
Hi folks - I generated an typescript-node api for the composer generated rest api swagger.json. The definition for a SampleAsset is:
```
/**
* An asset named SampleAsset
*/
export class SampleAsset {
/**
* The class identifier for this type
*/
'_class': string;
/**
* The instance identifier for this type
*/
'assetId': string;
/**
* The identifier of an instance of owner
*/
'owner': XAny;
'value': string;
static discriminator = undefined;
static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
{
"name": "_class",
"baseName": "$class",
"type": "string"
},
{
"name": "assetId",
"baseName": "assetId",
"type": "string"
},
{
"name": "owner",
"baseName": "owner",
"type": "XAny"
},
{
"name": "value",
"baseName": "value",
"type": "string"
} ];
static getAttributeTypeMap() {
return SampleAsset.attributeTypeMap;
}
}
```
I try to create an asset like:
```
let superPower: SampleAsset = new SampleAsset()
superPower._class = 'com.ibmgarage.sample.SampleAsset'
superPower.assetId = '1'
superPower.owner = 'com.ibmgarage.sample.SampleParticipant#' + ironman.participantId
superPower.value = 'Super Power is low'
```
and I receive an issue like:
```
{ statusCode: 500,
name: 'Error',
message: 'Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration {name=owner, type=com.ibmgarage.sample.SampleParticipant, array=false, optional=false}',
stack: 'Error: Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration {name=owner, type=com.ibmgarage.sample.SampleParticipant, array=false, optional=false}\n at JSONPopulator.visitRelationshipDeclaration (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:249:27)\n at JSONPopulator.visit (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:58:25)\n at RelationshipDeclaration.accept (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/introspect/decorated.js:54:24)\n at JSONPopulator.visitClassDeclaration (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:83:60)\n at JSONPopulator.visit (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:56:25)\n at AssetDeclaration.accept (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/introspect/decorated.js:54:24)\n at Serializer.fromJSON (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer.js:180:26)\n at ensureConnected.then (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:634:43)\n at
Hi folks - I generated an typescript-node api for the composer generated rest api swagger.json. The definition for a SampleAsset is:
```
/**
* An asset named SampleAsset
*/
export class SampleAsset {
/**
* The class identifier for this type
*/
'_class': string;
/**
* The instance identifier for this type
*/
'assetId': string;
/**
* The identifier of an instance of owner
*/
'owner': XAny;
'value': string;
static discriminator = undefined;
static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
{
"name": "_class",
"baseName": "$class",
"type": "string"
},
{
"name": "assetId",
"baseName": "assetId",
"type": "string"
},
{
"name": "owner",
"baseName": "owner",
"type": "XAny"
},
{
"name": "value",
"baseName": "value",
"type": "string"
} ];
static getAttributeTypeMap() {
return SampleAsset.attributeTypeMap;
}
}
```
I try to create an asset like:
```
let superPower: SampleAsset = new SampleAsset()
superPower._class = 'com.ibmgarage.sample.SampleAsset'
superPower.assetId = '1'
superPower.owner = 'com.ibmgarage.sample.SampleParticipant#' + ironman.participantId
superPower.value = 'Super Power is low'
```
and I receive an issue like:
```
{ statusCode: 500,
name: 'Error',
message: 'Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration {name=owner, type=com.ibmgarage.sample.SampleParticipant, array=false, optional=false}',
stack: 'Error: Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration {name=owner, type=com.ibmgarage.sample.SampleParticipant, array=false, optional=false}\n at JSONPopulator.visitRelationshipDeclaration (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:249:27)\n at JSONPopulator.visit (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:58:25)\n at RelationshipDeclaration.accept (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/introspect/decorated.js:54:24)\n at JSONPopulator.visitClassDeclaration (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:83:60)\n at JSONPopulator.visit (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:56:25)\n at AssetDeclaration.accept (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/introspect/decorated.js:54:24)\n at Serializer.fromJSON (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer.js:180:26)\n at ensureConnected.then (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:634:43)\n at
Hi folks - I generated an typescript-node api for the composer generated rest api swagger.json. The definition for a SampleAsset is:
```
/**
* An asset named SampleAsset
*/
export class SampleAsset {
/**
* The class identifier for this type
*/
'_class': string;
/**
* The instance identifier for this type
*/
'assetId': string;
/**
* The identifier of an instance of owner
*/
'owner': XAny;
'value': string;
static discriminator = undefined;
static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
{
"name": "_class",
"baseName": "$class",
"type": "string"
},
{
"name": "assetId",
"baseName": "assetId",
"type": "string"
},
{
"name": "owner",
"baseName": "owner",
"type": "XAny"
},
{
"name": "value",
"baseName": "value",
"type": "string"
} ];
static getAttributeTypeMap() {
return SampleAsset.attributeTypeMap;
}
}
```
I try to create an asset like:
```
let superPower: SampleAsset = new SampleAsset()
superPower._class = 'com.sample.SampleAsset'
superPower.assetId = '1'
superPower.owner = 'com.sample.SampleParticipant#' + ironman.participantId
superPower.value = 'Super Power is low'
```
and I receive an issue like:
```
{ statusCode: 500,
name: 'Error',
message: 'Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration {name=owner, type=com.sample.SampleParticipant, array=false, optional=false}',
stack: 'Error: Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration {name=owner, type=com.sample.SampleParticipant, array=false, optional=false}\n at JSONPopulator.visitRelationshipDeclaration (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:249:27)\n at JSONPopulator.visit (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:58:25)\n at RelationshipDeclaration.accept (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/introspect/decorated.js:54:24)\n at JSONPopulator.visitClassDeclaration (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:83:60)\n at JSONPopulator.visit (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:56:25)\n at AssetDeclaration.accept (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/introspect/decorated.js:54:24)\n at Serializer.fromJSON (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/composer-common/lib/serializer.js:180:26)\n at ensureConnected.then (/home/composer/.npm-global/lib/node_modules/@ibmblockchain/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:634:43)\n at
@thoduerr from reviewing the code here -> https://hyperledger.github.io/composer/latest/jsdoc/composer-common_lib_serializer_jsonpopulator.js.html#sunlight-1-line-220 it would appear the invalid JSON data is looking for a `string` for owner (and likely got a JSON object with ` { } ` ? - captured here too I believe https://github.com/hyperledger/composer/issues/3055
@thoduerr from reviewing the code here -> https://hyperledger.github.io/composer/latest/jsdoc/composer-common_lib_serializer_jsonpopulator.js.html#sunlight-1-line-249 it would appear the invalid JSON data is looking for a `string` for owner (and likely got a JSON object with ` { } ` ? - captured here too I believe https://github.com/hyperledger/composer/issues/3055
@thoduerr from reviewing the code here -> https://hyperledger.github.io/composer/latest/jsdoc/composer-common_lib_serializer_jsonpopulator.js.html#sunlight-1-line-249 it would appear the code is looking for a `string` for owner (and likely got a JSON object with ` { } ` ? - captured here too I believe https://github.com/hyperledger/composer/issues/3055
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=KzqCggr5pW3T2sKDG) @mahoney1 Right the generated Object serializer creates ```
{ '$class': 'com.sample.SampleAsset',
assetId: '1',
owner: {},
value: 'Super Power is low' }
```
I think I need to figure out how to describe the owner using the XAny type...
```
export class XAny {
static discriminator = undefined;
static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
];
static getAttributeTypeMap() {
return XAny.attributeTypeMap;
}
}
```
@thoduerr and you can't use string ? As that's what is required...for owner..
[ ](https://chat.hyperledger.org/channel/composer?msg=YBReLGtYS863CKGoY) @mahoney1 No. My input for the is:
```
{ _class: 'com.sample.SampleAsset',
assetId: '1',
owner: 'com.sample.SampleParticipant#mail@ironman.marvel',
value: 'Super Power is low' }
```
The generated Object serializer produces:
```
{ '$class': 'com.sample.SampleAsset',
assetId: '1',
owner: {},
value: 'Super Power is low' }
```
I fixed the generated code so that the type of owner is string - then it works... But this can't be the solution :)
Note that the type of owner is generated to be XAny. Let me quickly check what the swagger type def says.
Swagger file says:
```
"SampleAsset": {
"description": "An asset named SampleAsset",
"properties": {
"$class": {
"default": "com.sample.SampleAsset",
"description": "The class identifier for this type",
"type": "string"
},
"assetId": {
"description": "The instance identifier for this type",
"type": "string"
},
"owner": {
"description": "The identifier of an instance of owner",
"$ref": "#/definitions/x-any"
},
"value": {
"type": "string"
}
},
"required": ["assetId", "owner", "value"],
"additionalProperties": false
},
```
[ ](https://chat.hyperledger.org/channel/composer?msg=S9fD5nLdtoP5JhC2f) @mahoney1 I think I got it, cause seems to be related to the usage of the <'use strict';> directive in the scope of a non strict code.
@thoduerr - I see and yes I agree - suggest you raise an issue for this to be investigated, pasting all the evidence you've gathered to cite your use case.
@uber.twin ah, right, ok thanks for letting me know.
[ ](https://chat.hyperledger.org/channel/composer?msg=kBShTboprZX3z4Hrj) @f2918124 you may need an '&' before access_token in your URL string ?
hello, I want to use API to get data in my smart contract and I followed the process given here https://hyperledger.github.io/composer/latest/integrating/call-out using the request module but when I submit a transaction it's giving error like invalid JSON and the 'accountBalance' field in my model which I'm trying to modify is showing NaN suddenly . Can anyone point out what is wrong exactly?
@ApoorvChandurkar would need to see your TP code. Is your call-out returning a serialized JSON object ? Do you require parseFloat perhaps? Have you seen the last example (of a transaction update) at https://hyperledger.github.io/composer/latest/integrating/call-out
Hi All,how can get the the value of from the relationship
"order": "resource:org.acme.securebox.Order#0781
I want 0781 from the relation ship
and store into a variable
Has joined the channel.
@mahoney1, could you please tell me how I can store transaction Id's that are generated after submission of a transaction. I can see the logs from both Explorer and also in the composer playground(All Transactions.) I would like to see that from the Programming end like If I have a function where I can order things let's say i'm have submitted 10 times and I need to store all those transaction Id's into an array.
Thank you.
Has joined the channel.
I'm trying to use the query functionality of Composer.
I am using above code to get the value of identifier
how can I get only the value
[ ](https://chat.hyperledger.org/channel/composer?msg=9u4rQ24g2rckqWJua) @suva use `getIdentifier()` - eg `trade.newOwner.getIdentifier()` returns the '0781' bit etc etc (where 'newOwner' is the relationship field eg `--> Owner newOwner ` (say) from your model def
I'm trying to use the query functionality of Composer and have defined the following 2 assets.
`namespace com.my.assets
asset chapter identified by id {
o String id
o String title
--> Book book
}
asset book identified by id {
o String id
o String title
}`
I would like to query so that I find all of the chapters for a given book. I have tried the following:
`statement:
SELECT com.my.assets.chapter
WHERE (Book.id == _$id)`
I have tried passing in both the id for the book( such as Book01 as well as the FQN such as com.my.assets.book#Book01 but neither work.
@Vanitha `transactionId` is a field in the transaction class for the transaction you're submitting - you just need to use some.push() etc to push to your array (this is really a javascript question)
@mahoney1 Yes, but I want to know from where I can get this transaction Id. As I can see this Id after submission of a transaction thereby if I want to push that to an array. Would like to know where those details are being stored and how can I see that.
I have posted questions to u in personal hope u can reply me on that too.
@DarinMcBeath see the **answer** on here https://stackoverflow.com/questions/50013948/hyperledger-composer-query-an-assets-parameter similar to what you're doing
@Vanitha Per the system namespace definitions, transaction class already generate transactionId and a timestamp when the transaction is submitted. https://hyperledger.github.io/composer/latest//systemns/04_transactions As I said, you can access the field from inside your TP function. If you mean historical transaction IDs (?) then you can query Historian (via HistorianRecord -> https://hyperledger.github.io/composer/latest/reference/historian.html )
@Vanitha Per the system namespace definitions, transaction class already generates a transactionId and a timestamp when the transaction is submitted. https://hyperledger.github.io/composer/latest//systemns/04_transactions As I said, you can access the field from inside your TP function. If you mean historical transaction IDs (?) then you can query Historian (via HistorianRecord -> https://hyperledger.github.io/composer/latest/reference/historian.html )
Has joined the channel.
Has joined the channel.
The first transaction to apply for a leave succeeds. The second time the same Engineer applies for a leave I get the 'invalid JSON' error.
@safasakly going to need a bit more info than that please...
I run the first transaction successfully but the second time the same transaction i get the 'invalid JSON' error.
..and how is the transaction defined? What level of Composer are you using? Is this in a client app, REST API, Playground etc............
async function onCheckMovementDeparture(movementDeparture) { } , i'm using composer CLI 0.19 , and this problem occured with playground
.. and the json you supply in both cases???
the first transaction run successfuly, but the second one i get invalid JSON
so what JSON are typing in the box in playground the second time??
0.PNG
.. and what about that red text seems to be invalid?
but it has been run the first time
I think what @toneady is trying to say is that something is showing as being wrong - and can you see what that is.. the purpose of transactions is to update the state of assets. You've done that once.. the second time the results will be different...
What is wrong in the JSON that is displayed.. what is invalid?
o.PNG
from the first image..
that's the console log in the browser
it returns all the JSON i have
@safasakly I suspect the invalid JSON message occurs after you hit 'Submit' - we'd have to see what your transaction function is doing to cause this (for all the relationships shown in red that you're passing into the transaction, per your model)
I am looking for a possible workaround to spread queries among multiple files rather than including there only in `queries.qry`. I start to have a numbers of queries there and it would be nice to be able to divide them in multiple files. From a quick look at the rest server I suppose that is the only file loaded, but please let me know if, by any chance, you have already handled this before.
I am looking for a possible workaround to spread queries among multiple files rather than including them only in `queries.qry`. I start to have a numbers of queries there and it would be nice to be able to divide them in multiple files. From a quick look at the rest server I suppose that is the only file loaded, but please let me know if, by any chance, you have already handled this before.
[ ](https://chat.hyperledger.org/channel/composer?msg=zrqh35XYNmhoMj4RG) @nicolapaoli - only one query file is supported.
Has joined the channel.
Has joined the channel.
hi there ... i am trying to build a query to view the actual transactions on the ledger that modified an asset and look at the modified values that came in on the transaction .. I see that the historian api does not give me this ability ... now in order to execute a query a of this type I would need to be working with CouchDB to begin with, is that correct ?
Circular reference works if the relationship is single, but it will throw 'JSON error' if the relationship is Array.
Simple code as below:
asset Host{
--> Client[] clients optional
}
asset Client{
--> Host host optional
}
Detailed completed .bna file attached.
Steps:
1. Submit 'ConnecTransaction', to set host to client, and add client to 'clients array' of the host, it works fine.
2. Submit 'ConnecTransactoin' again, to add client the 'clients array', an error was throws, what said below:
Error: Generated invalid JSON: {"$class":"org.acme.reftest.Host","id":"1","clients":[{"$class":"org.acme.reftest.Client","id":"1","host":
{"$class":"org.acme.reftest.Host","id":"1","clients":["resource:org.acme.reftest.Client#1",
{"$class":"org.acme.reftest.Client","id":"2","host":"resource:org.acme.reftest.Host#1"}]}},{"$class":"org.acme.reftest.Client","id":"2","host":
{"$class":"org.acme.reftest.Host","id":"1","clients":
[{"$class":"org.acme.reftest.Client","id":"1","host":"resource:org.acme.reftest.Host#1"}"resource:org.acme.reftest.Client#2"]}}]}
Please pay attention at the tail of the message, "resource:org.acme.reftest.Client#2" should not be there.
Expected:
If the circular references with array is not supported, it should be forbidden at first.
Otherwise, the JSON error should be fixed.
Should this be an issue? Anyone know about this?
Circular reference works if the relationship is single, but it will throw 'Error: Generated invalid JSON' if the relationship is Array.
Simple code as below:
asset Host{
--> Client[] clients optional
}
asset Client{
--> Host host optional
}
Detailed completed .bna file attached.
Steps:
1. Submit 'ConnecTransaction', to set host to client, and add client to 'clients array' of the host, it works fine.
2. Submit 'ConnecTransactoin' again, to add client the 'clients array', an error was throws, what said below:
Error: Generated invalid JSON: {"$class":"org.acme.reftest.Host","id":"1","clients":[{"$class":"org.acme.reftest.Client","id":"1","host":
{"$class":"org.acme.reftest.Host","id":"1","clients":["resource:org.acme.reftest.Client#1",
{"$class":"org.acme.reftest.Client","id":"2","host":"resource:org.acme.reftest.Host#1"}]}},{"$class":"org.acme.reftest.Client","id":"2","host":
{"$class":"org.acme.reftest.Host","id":"1","clients":
[{"$class":"org.acme.reftest.Client","id":"1","host":"resource:org.acme.reftest.Host#1"}"resource:org.acme.reftest.Client#2"]}}]}
Please pay attention at the tail of the message, "resource:org.acme.reftest.Client#2" should not be there.
Expected:
If the circular references with array is not supported, it should be forbidden at first.
Otherwise, the 'Error: Generated invalid JSON' should be fixed.
Should this be an issue? Anyone know about this?
Circular reference works if the relationship is single, but it will throw 'Error: Generated invalid JSON' if the relationship is Array.
Simple code as below:
asset Host{
--> Client[] clients optional
}
asset Client{
--> Host host optional
}
Steps:
1. Submit 'ConnecTransaction', to set host to client, and add client to 'clients array' of the host, it works fine.
2. Submit 'ConnecTransactoin' again, to add client the 'clients array', an error was throws, what said below:
Error: Generated invalid JSON: {"$class":"org.acme.reftest.Host","id":"1","clients":[{"$class":"org.acme.reftest.Client","id":"1","host":
{"$class":"org.acme.reftest.Host","id":"1","clients":["resource:org.acme.reftest.Client#1",
{"$class":"org.acme.reftest.Client","id":"2","host":"resource:org.acme.reftest.Host#1"}]}},{"$class":"org.acme.reftest.Client","id":"2","host":
{"$class":"org.acme.reftest.Host","id":"1","clients":
[{"$class":"org.acme.reftest.Client","id":"1","host":"resource:org.acme.reftest.Host#1"}"resource:org.acme.reftest.Client#2"]}}]}
Please pay attention at the tail of the message, "resource:org.acme.reftest.Client#2" should not be there.
Expected:
If the circular references with array is not supported, it should be forbidden at first.
Otherwise, the 'Error: Generated invalid JSON' should be fixed.
Should this be an issue? Anyone know about this?
testref-business-network.bna.zip
Has joined the channel.
Hey! I am trying to install Composer on a Windows10 machine - is this possible?
Has joined the channel.
Dear all
I have some problem with blockchain-explorer, it shows me 'No identity has been assigned to this client', the details is as following:
{
"network-config": {
"org1": {
"name": "Org1",
"mspid": "Org1MSP",
"peer1": {
"requests": "grpc://127.0.0.1:7051",
"events": "grpc://127.0.0.1:7053",
"server-hostname": "peer0.org1.example.com"
},
"admin": {
"key": "/home/user00/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore",
"cert": "/home/user00/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts" }
}
},
"host": "localhost",
"port": "8438",
"channel": "composerchannel",
"keyValueStore": "/tmp/fabric-client-kvs",
"eventWaitTime": "30000",
"pg": {
"host": "127.0.0.1",
"port": "5432",
"database": "fabricexplorer",
"username": "hppoc",
"passwd": "password"
},
"license": "Apache-2.0"
}
INSERT ID: 16
^[[31m[2018-04-24 02:53:53.089] [ERROR] Query - ^[[39mError: No identity has been assigned to this client
at Client._getSigningIdentity (/home/user00/blockchain-explorer/node_modules/fabric-client/lib/Client.js:1206:11)
at Channel.queryInfo (/home/user00/blockchain-explorer/node_modules/fabric-client/lib/Channel.js:896:36)
at helper.getOrgAdmin.then (/home/user00/blockchain-explorer/app/query.js:98:18)
at
Error message is:INSERT ID: 16
^[[31m[2018-04-24 02:53:53.089] [ERROR] Query - ^[[39mError: No identity has been assigned to this client
at Client._getSigningIdentity (/home/user00/blockchain-explorer/node_modules/fabric-client/lib/Client.js:1206:11)
at Channel.queryInfo (/home/user00/blockchain-explorer/node_modules/fabric-client/lib/Channel.js:896:36)
at helper.getOrgAdmin.then (/home/user00/blockchain-explorer/app/query.js:98:18)
at
Thanks for help!!
Another question here for yeoman. I generated an angular 4 app again the REST API, when I access 4200 port, it shows:Invalid Host header, can you help on this? Thanks!
Another question here for yeoman. I generated an angular 4 app again the REST API, when I access 4200 port, it shows:Invalid Host header, can you help on this? Thanks!
Has joined the channel.
Has joined the channel.
Hi all, Is there any way to emit an event for create asset transactions? I don't want to right the explicit TP function to create an asset. I want to use the native APIs explosed by rest-server (say for an asset Vehicle, I want to use POST /vehicle REST-Api to create an vehicle asset). Can anyone please help. Is the feature available in composer? I am using v0.19.1
Hi All, Im trying to deploy a business network with the following code```
composer network start --networkName test-bank --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card ``````
``` But I get the following error:
``` ✖ Starting business network definition. This may take a minute... Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (test-bank:0.0.1))
```
i got it sorted
@jmat201 How did you fix it?
@edm629 Installing Composer on Win 10 is possible, but you will run into a lot of problems. It's recommended to just go and get a cheap vps and use that. I made a video if you want something you can follow along to: https://www.youtube.com/watch?v=HS03Y_DlesM
so the previous step is installing composer runtime, I am following this tutorial ```
https://medium.freecodecamp.org/ultimate-end-to-end-tutorial-to-create-an-application-on-blockchain-using-hyperledger-3a83a80cbc71
``` but with composer v 19 instead of runtime you have to run this: composer network install --card PeerAdmin@hlfv1 --archiveFile test-bank@0.0.1.bna. My achive file name was test-bank@0.0.1.bna
thats what fixed it for me
Oh okay nice!
Has joined the channel.
Hi Any one configured hyperledger composer with hyperledger explorer
@sstone1 any clue about configuring hyperledger explorer with composer
Has joined the channel.
Has joined the channel.
Has joined the channel.
Any update?
Screenshot from 2018-04-29 17-05-03.png
Screenshot from 2018-04-29 17-05-03.png
Screenshot from 2018-04-29 17-05-03.png
Has joined the channel.
Hi there I was trying to get my hands on pii network and modify the ACL file to make it link with my CTO model of a patient portfolio where a doctor,clinic,hospital,patient and pharmacy are participating to allow access a patient can temporarily let the required organisation have a look at his/her records and then revoke the access automatically when the transaction is triggered, so how can I make a similar logic using ACL I made participants in CTO file but I cannot implement it on angular app. Lots of errors are coming I followed the tutorial too that's available on official site but I cannot ping other peers on the network too... I am a beginner so please help me... I used composer on bluemix it was great and my bna file was running well there.
When I install a chaincode, I get a new container with a name like "dev-peer0-example.com-composer-network.0.0.1". How can I change this name? or does this mean that the chaincode is running in development mode? if yes, how can I change it to be in production mode?
When I install a chaincode, I get a new container with a name like "dev-peer0.example.com-composer-network.0.0.1". How can I change this name? or does this mean that the chaincode is running in development mode? if yes, how can I change it to be in production mode?
When I install a chaincode (after running `composer network start`), I get a new container with a name like "dev-peer0.example.com-composer-network.0.0.1". How can I change this name? or does this mean that the chaincode is running in development mode? if yes, how can I change it to be in production mode?
Has joined the channel.
Is anyone running composer with multiple peers? I've got it running fine with 3 peers, but when I look at the couchdb database behind the 3 peers, I only see actual data for peer0. I verified that the BNA gets installed on all 3 peers, and when I start it, the orderer says that all 3 peers received the updated blocks. I can turn off peer1 or peer2 and it seems to work fine, but when I turn off peer0 (leaving peer1 and peer2 up) it says it can't find my chaincode when I try to connect. Any help would be great. :-)
Has joined the channel.
Hi There, questions please.https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial how do I use VSCode to open the .cto file so I can follow the tutorial and edit it? Sorry for the dumb question. Thank you.
Has joined the channel.
Hi Everyone, does anyone encounter this "mychannel from LSCC error: chaincode fingerprint mismatch data mismatch"
Has joined the channel.
@All, If I am want to get the identifier value in a variable , I am using the below code
Order = factory.newRelationship(NS_M, 'Order', ID.order.getIdentifier());
as a result I am getting only
Relationship {id=org.acme.securebox.Order#ORD0002}
but I want Order=ORD0002
Hello, did someone already use google auth behind a corporate proxy ?
Has joined the channel.
I am trying out the playground tutorial. During setup of business network it is asking for admin credentials. Do I need to create a new one or one that is generated by cryptogen?
Hello, I have a question and am having trouble to find the answer in the documentation. I have the following use case which i would like to implement;
Person A with, lets name it, "security clearance" to give new personal an account and identity within the hyperledger-composer system wants to on board an new personal member (Person B).
For security reasons Person A can not see the password generated for Person B, the password gets directly delivered towards Person B. But in order to use the composer application Person B needs to have an identity in the chain, thus a card imported in his/her wallet.
But to prevent unwanted access only participant's with the security clearance can create identity cards (in this case Person A)
Is there a way for person A to import a identity card into person B's wallet. If possible by the rest API.
Hello, I have a question and am having trouble to find the answer in the documentation. I have the following use case which i would like to implement;
Person A with, lets name it, "security clearance" to give new personal an account and identity within the hyperledger-composer system wants to on board an new personal member (Person B ).
For security reasons Person A can not see the password generated for Person B, the password gets directly delivered towards Person B. But in order to use the composer application Person B needs to have an identity in the chain, thus a card imported in his/her wallet.
But to prevent unwanted access only participant's with the security clearance can create identity cards (in this case Person A)
Is there a way for person A to import a identity card into person B's wallet. If possible by the rest API.
[ ](https://chat.hyperledger.org/channel/composer?msg=SNRxzLdJRhmetYCCw) @sampath06 - are you using Playground Locally, connecting to a 'real' Fabric ? If you are using the simple Development Fabric created with the fabric tools scripts, then the credentials are for a default admin user "admin" with secret "adminpw".
[ ](https://chat.hyperledger.org/channel/composer?msg=QQ8LwASo62qdGvA9Y) @virtualmason - you should make sure you have added the composer extension to VSCode (as described at the bottom of this document) - then just simple open the Folder of the tutorial network.
[ ](https://chat.hyperledger.org/channel/composer?msg=drNYE2sPHCLHXHG2K) @JeffGutierrez - what commands are you running to generate this error? What version of Composer and Fabric are you running? Are you following a particular tutorial or guide?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZY9yEC2FNxvh5Z2Xi) Can anyone please help me with this?
[ ](https://chat.hyperledger.org/channel/composer?msg=HYYwHchmBsrk35i4g) @absingh0 a community user posted this for ref: chat.hyperledger.org/channel/composer?msg=orcoo2wnW67N8LFK3 you can listen to all transaction events (such as 'Add Asset' event) and process accordingly. Client applications can use a WebSocket client to subscribe to the business events that are published by the REST server. FYI.
[ ](https://chat.hyperledger.org/channel/composer?msg=HYYwHchmBsrk35i4g) @absingh0 a community user (provided 'as-is', some time ago) posted this for ref: chat.hyperledger.org/channel/composer?msg=orcoo2wnW67N8LFK3 you can listen to all transaction events (such as 'Add Asset' event) and process accordingly. Client applications can use a WebSocket client to subscribe to the business events that are published by the REST server. FYI.
Can I call a transaction on some time interval. If yes then how ?
@eduwardpost using Cloud wallets is one solution https://hyperledger.github.io/composer/latest/business-network/cloud-wallets but you can use REST wallets too. Person A can issue an Identity for Person B (because A has capability to) from a UI - that uses the underlying Composer JS APIs to issue the identity, create the card with the enrolment secret, rather than password (that only Person B sees), so that he/she can fulfill their blockchain identity, meaning getting their cert/key credentials to be able to interact with the business network on the blockchain. Person B initially gets notified (by email or whatever) that 'she has had an identity issued' (and which is mapped to a participant instance in the business network in Composer terms) and follows the process to engage / access the business network card to download his/her cert etc. Part of Person A's record may have an attribute which is a Boolean `security_cleared` (true |false) etc - as it could of course 'lapse' which should mean they can't (point in time) now issue identities blah blah.
@All, Can I call a transaction in 15mins interval?
@mahoney1 So if i understood it correctly Person B should receive the card trough an external devivery (mail or such) an import it on its own?
@eduwardpost I mean: it should be secure and a means/mechanism to 'challenge' that person receiving etc, before they are able to download the card from a unique link that in itself is securely delivered and/or a means to authenticate or challenge/response to verify the recipient (who may have the download link sent to their registered email following that, depending on your business processes etc etc). That is up to you to decide.
[ ](https://chat.hyperledger.org/channel/composer?msg=Qs5Rpw9ZrA5G2Zmm3) @suva as you wish, timer control / submission from your client, as your business process dictates ..etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=Qs5Rpw9ZrA5G2Zmm3) @suva invoke a txn as you wish, timer control / submission from your client, as your business process dictates ..etc.
@mahoney1 . Can i get any reference or example for implementation?
https://hyperledger.github.io/composer/latest/reference/composer.transaction.submit.html or read the JS API docs.
@mahoney1 .Thanks
@mahoney1 Thank you for your insight :) I'll take another dive into it
can we use multiple cards with rest server composer?
which can be controlled based on the requests?
@Varun2887 You can run the rest server in Multi user mode, and bind a card to a user (multi user requires auth)
https://hyperledger.github.io/composer/latest/integrating/enabling-multiuser
i did check this it says how to configure but not how to use
@eduwardpost
Check this post out @Varun2887 https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
She's made an example application using hyperledger composer which runs in the multiuser mode
Has joined the channel.
Hi All,
I am trying to listen for all transactions from nodejs using
var Subscriber =require('composer-events-subscriber')
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
//connect to the business network using the composer-client
businessNetworkConnection = new BusinessNetworkConnection();
var card="admin@basic-network"
businessNetworkConnection.connect(card).then((invokedTx, historianTx) => {
const subscriber = new Subscriber(businessNetwork)
//subscribe to event hub
const unsubscribe = subscriber.subscribe()
//listen for all transaction
subscriber.on('tx', (tx, historianTx)=> {
console.log('All events')
}).on('error', e => {
console.log('ERROR')
})
//unsubscribe on process exit
process.on('exit', () => unsubscribe())
})
But i am getting following error Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
Hi All,
I am trying to listen for all transactions from nodejs using
var Subscriber =require('composer-events-subscriber')
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
//connect to the business network using the composer-client
businessNetworkConnection = new BusinessNetworkConnection();
var card="admin@basic-network"
businessNetworkConnection.connect(card).then((invokedTx, historianTx) => {
const subscriber = new Subscriber(businessNetwork)
//subscribe to event hub
const unsubscribe = subscriber.subscribe()
//listen for all transaction
subscriber.on('tx', (tx, historianTx)=> {
console.log('All events')
}).on('error', e => {
console.log('ERROR')
})
//unsubscribe on process exit
process.on('exit', () => unsubscribe())
})
But i am getting following error Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
Can anyone help me to figure out the problem.
Has joined the channel.
Hello guys,
I am working in a startup that wants that have ambitious projects for the future and we are looking for devs comfortable with Hyperledger (Composer + Fabric), javascript, nodejs environment and that can work remotly. If you want to know more send me a message here or on my LinkedIn: https://www.linkedin.com/in/landry-monga/
@mahoney1 . I went through the link you have provided. I want the transaction to be submitted in certain time interval.
I am not getting any arguments in composer transaction submit
Hi all, I want to create a participant card from the playground but whenever i create an ID from my wallet, it gives me this error
Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]
Any quick help is really appreciated. Thanks.
if any one have any example on the same then composer transaction submit then plz share with me
[ ](https://chat.hyperledger.org/channel/composer?msg=FsabPyXfYSazyDWvo) @pb - we see the *x-type* errors when an old v0.16 card is used with a newer version of composer - have you recently upgraded you composer version? Or perhave there is a dependence of 'latest' in your package.json?
[ ](https://chat.hyperledger.org/channel/composer?msg=FsabPyXfYSazyDWvo) @pb - we see the *x-type* errors when an old v0.16 card is used with a newer version of composer - have you recently upgraded your composer version? Or perhave there is a dependence of 'latest' in your package.json?
Screenshot from 2018-04-30 09-49-17.png
[ ](https://chat.hyperledger.org/channel/composer?msg=Xo2HFY2Yhkqm9HLiB) @maddy - are you following a particular guide or tutorial? Are you connecting to the simple Development Fabric, or a Custom Fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=WrbabDLbNKDWnsDHD) @Vanitha the "ReferenceError:" is saying that there is a problem in your Transaction logic script, and the Network cannot be started. I would think you are using await wrongly. So when you have resolved the script problem, update the package.json with a new version number and re-run the composer network install and composer network start commands
[ ](https://chat.hyperledger.org/channel/composer?msg=Xo2HFY2Yhkqm9HLiB) @maddy are you using your own cert - and if so, where did you get your cert ? How did you set up your Fabric environment.... The certificate error suggests exactly what it implies, its not fit for the purpose it is intended.
@ [ ](https://chat.hyperledger.org/channel/composer?msg=bemkFCEy2Tfy5YTpZ)
Thanks for quick help, i'm using cryptogen for peers, orderers and ca certificate and then enrolling an admin user dynamically from fabric-ca-client, used the ca-generated certificates for the network admin.
Has joined the channel.
Has joined the channel.
Hi everyone. Complete beginner here, building my first post-tutorial business network. I'm having trouble tracking down a code example that shows how to create an Asset within transaction processor javascript. Can anyone provide such an example?
Hi everyone. Complete beginner here, building my first post-tutorial business network. I'm having trouble tracking down a code example that shows how to create an Asset within transaction processor javascript. Can anyone provide such an example? Specifically, I see the add() method on the AssetRegistry, but I'm not sure how to create the Resource that I need to supply to that function.
Has left the channel.
@maddy assuming you've enrolled that admin with the Fabric CA - and got a certificate/private key pair for it / you already have the cert / .pem file, then you can bind that Blockchain identity to the network admin participant as an existing network admin the network using composer identity bind -> https://hyperledger.github.io/composer/latest/managing/identity-bind.html - then you can create your card for it as well as shown in Step 18 here -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org or in Playground if you're using a Dev setup environment.
@geekoftheweek hi there welcome :-) ! This is a very simple example for the Composer Sample 'bond' network -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/lib/logic.js
@geekoftheweek hi there welcome :-) ! This is a very simple example for the Composer Sample 'bond' network -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/lib/logic.js - model file is here [here](https://github.com/hyperledger/composer-sample-networks/tree/master/packages/bond-network/models) - a more 'advanced' sample is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L122 and the model file for that is under 'models' etc in that repo. cheers
@geekoftheweek hi there welcome :-) ! This is a very simple example for the Composer Sample 'bond' network here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/lib/logic.js - model file is [here](https://github.com/hyperledger/composer-sample-networks/tree/master/packages/bond-network/models) - a more 'advanced' sample is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L122 and the model file for that is under 'models' etc in that repo. cheers
@mahoney1 Thank you, I'll take a look!
I made a youtube tutorial and writing your first model file: https://www.youtube.com/watch?v=Cvt7OmxfYxI
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=DMC4HmvXhzyLqGG9Y) @mikeleow So interested. GOD BLEESSSS YOU. Your saved my life hahaha. I was almost running out of hair, but you managed to figure out this fix. +100000
Has joined the channel.
Has joined the channel.
HI, I am trying to install a bna in IBM Starter Kit environment, I am running "composer network start" and get a timeout error: "Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT".
Any help?
i used -> https://hyperledger.github.io/composer/latest/managing/identity-issue to issue new id card, but i can't find where is card contained in directory .composer
any one can help me?
[ ](https://chat.hyperledger.org/channel/composer?msg=uvo7HvGQWC5B4KEuu) @bamboo Should be in the same directory you run the command (probably different from .composer)
Hey everyone, I have a problem in the PII sample network on composer (I am a newbie). Originally, the network has only one participant which is the Member, and the member authorizes or revokes access of his information to other members.
However, I want to change that and add a new participant, say 'Doctor', and the member can authorize or revoke access the Doctor participant.
The problem is that when I added a new Doctor participant and want to authorize it, the transaction does not search in the Doctor Participant, but in the Member participant.
I tried changing the logic.js, from getParticipantRegistry('org.acme.pii.Member') to getParticipantRegistry('org.acme.pii.Doctor'), but it gave me an error.
So, can anyone help me out in pointing what should I change? is it the logic, or the definition? or what?
Hey everyone, I have a problem in the PII sample network on composer (I am a newbie). Originally, the network has only one participant which is the Member, and the member authorizes or revokes access of his information to other members.
However, I want to change that and add a new participant, say 'Doctor', and the member can authorize or revoke access the Doctor participant.
The problem is that when I added a new Doctor participant and want to authorize it, the transaction does not search in the Doctor Participant, but in the Member participant.
I tried changing the logic.js, from getParticipantRegistry('org.acme.pii.Member') to getParticipantRegistry('org.acme.pii.Doctor'), but it gave me an error.
So, can anyone help me out in pointing what should I change? is it the logic, or the definition? or what?namespace org.acme.pii
concept Address {
o String street
o String house
o String city
o String county
o String country
o String zip
}
participant Member identified by email {
o String email
o String firstName
o String lastName
o DateTime dob optional
o Address address optional
o String[] authorized optional
}
participant Doctor identified by email {
o String email
o String firstName
o String lastName
o DateTime dob optional
o Address address optional
o String[] authorized optional
}
abstract transaction MemberTransaction {
o String memberId
}
abstract transaction DoctorTransaction {
o String memberId
}
transaction AuthorizeAccess extends MemberTransaction {
}
transaction RevokeAccess extends MemberTransaction {
}
event MemberEvent {
o MemberTransaction memberTransaction
}
Hey everyone, I am using the pii network sample. And originally, the network has only one participant which is the Member, and the member authorizes or revokes access of his information to other members.
However, I want to change that and add a new participant, say 'Doctor', and the member can authorize or revoke access the Doctor participant.
The problem is that when I added a new Doctor participant and want to authorize it, the transaction does not search in the Doctor Participant, but in the Member participant.
I tried changing the logic.js, from getParticipantRegistry('org.acme.pii.Member') to getParticipantRegistry('org.acme.pii.Doctor'), but it gave me an error.
So, can anyone help me out in pointing what should I change? is it the logic, or the definition? or what?
You can find my question with the code on stackoverflow: https://stackoverflow.com/questions/50109177/pii-network-sample-want-to-authorize-another-participant
I didn't want to bombard you with the code here.
Anyone experiencing an error when attempting to start the `composer-rest-server`? I am getting the following error:
```
Discovering types from business network definition ...
/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/ChannelEventHub.js:666
throw error;
^
Error: Connection is not in the READY state
at ChannelEventHub._checkConnection (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/ChannelEventHub.js:664:17)
at ChannelEventHub.registerChaincodeEvent (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/ChannelEventHub.js:825:8)
at HLFConnection._registerForChaincodeEvents (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:279:44)
at HLFConnection._checkCCListener (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:256:22)
at Timeout.ccListenerHandle.setTimeout [as _onTimeout] (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:381:35)
at ontimeout (timers.js:482:11)
at tryOnTimeout (timers.js:317:5)
at Timer.listOnTimeout (timers.js:277:5)
```
Just updated to v0.19.3 and was wondering if this caused it?
Anyone receiving this error when using `composer-rest-server` at `v0.19.3`?
```
Discovering types from business network definition ...
/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/ChannelEventHub.js:666
throw error;
^
Error: Connection is not in the READY state
at ChannelEventHub._checkConnection (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/ChannelEventHub.js:664:17)
at ChannelEventHub.registerChaincodeEvent (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/ChannelEventHub.js:825:8)
at HLFConnection._registerForChaincodeEvents (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:279:44)
at HLFConnection._checkCCListener (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:256:22)
at Timeout.ccListenerHandle.setTimeout [as _onTimeout] (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:381:35)
at ontimeout (timers.js:482:11)
at tryOnTimeout (timers.js:317:5)
at Timer.listOnTimeout (timers.js:277:5)
```
I have tried it against 3 separate business networks, updated all packages, checked Node version. Cannot figure out if this is a composer issue or because I just updated Docker?
Anyone receiving this error when using `composer-rest-server` at `v0.19.3`?
```
Zachs-Air:perishable-network Zach$ composer-rest-server -c admin@perishable-network -n never -w true
Discovering types from business network definition ...
/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/ChannelEventHub.js:666
throw error;
^
Error: Connection is not in the READY state
at ChannelEventHub._checkConnection (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/ChannelEventHub.js:664:17)
at ChannelEventHub.registerChaincodeEvent (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/ChannelEventHub.js:825:8)
at HLFConnection._registerForChaincodeEvents (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:279:44)
at HLFConnection._checkCCListener (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:256:22)
at Timeout.ccListenerHandle.setTimeout [as _onTimeout] (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:381:35)
at ontimeout (timers.js:482:11)
at tryOnTimeout (timers.js:317:5)
at Timer.listOnTimeout (timers.js:277:5)
```
I have tried it against 3 separate business networks, updated all packages, checked Node version. Cannot figure out if this is a composer issue or because I just updated Docker?
Anyone receiving this error when using `composer-rest-server` at `v0.19.3`?
```
Zachs-Air:perishable-network Zach$ composer-rest-server -c admin@perishable-network -n never -w true
Discovering types from business network definition ...
/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/ChannelEventHub.js:666
throw error;
^
Error: Connection is not in the READY state
at ChannelEventHub._checkConnection (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/ChannelEventHub.js:664:17)
at ChannelEventHub.registerChaincodeEvent (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/ChannelEventHub.js:825:8)
at HLFConnection._registerForChaincodeEvents (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:279:44)
at HLFConnection._checkCCListener (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:256:22)
at Timeout.ccListenerHandle.setTimeout [as _onTimeout] (/Users/Zach/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:381:35)
at ontimeout (timers.js:482:11)
at tryOnTimeout (timers.js:317:5)
at Timer.listOnTimeout (timers.js:277:5)
```
I have tried it against 3 separate business networks, updated all packages, checked Node version. Cannot figure out if this is a composer issue or because I just updated Docker?
Node - `v8.10.0`
Docker - `18.03.1-ce`
All composer packages - `v0.19.3`
Has joined the channel.
Has joined the channel.
@zachgoll I am currently running into the same issue after upgrading to 0.19.3. For me the error is thrown at a different time though. For example when pinging the business network. The thing is that everything else is working fine as my application that is connected to the composer network works perfectly fine. Will test again with going back to 0.19.2
Really seems like a 0.19.3 bug because now tried it out on 3 different development computers.
Hi everyone just a quick question in multi-host implementation for example peer0.org1 in VM1 and peer1.org1 in VM2,, i have successfully deploy the BNA file in VM1 ,, question.. should I need to deploy the BNA file again in VM2?
Clipboard - May 1, 2018 9:32 AM
Whenever I try and switch to another network in Playground, it seems like everything breaks, and I get this error:
The only thing that clears it is deleting .composer and starting all over again. That seems excessive. :)
[ ](https://chat.hyperledger.org/channel/composer?msg=kwruBF6MP3jJivpGa) @fjblau - are you on a Mac? Have you seen this answer in Stack Overflow ? https://stackoverflow.com/questions/50084707/about-hyperledger-fabric-composer-error-when-execute-cmd-composer-card-list
[ ](https://chat.hyperledger.org/channel/composer?msg=YtcrKyd7yguSiNi2t) @JeffGutierrez - Are the Peers in the same organisation? It is a question of Organisations not VMs. The MultiOrg tutorial shows that you run `composer network install` for each organisation, but you only run `composer network start` once.
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Boom. Delete \.DS_Store :) Works now!
[ ](https://chat.hyperledger.org/channel/composer?msg=R5LEQhDsGRweM9Ai2) @aneb @zachgoll - I don't think this is a wide ranging bug in v0.19.3 - I can run the rest server using the sama parameters as you. The first line of the error suggests EventHub - can you retry the rest-server with ` -w false ` If that makes a difference, look at the connection.json and the event url section.
[ ](https://chat.hyperledger.org/channel/composer?msg=R5LEQhDsGRweM9Ai2) @aneb @zachgoll - I don't think this is a wide ranging bug in v0.19.3 - I can run the rest server using the sama parameters as you. The first line of the error suggests EventHub - can you retry the rest-server with ` -w false ` If that makes a difference, look at the connection.json and the event url section.
Another user has now reported this problem https://github.com/hyperledger/composer/issues/3944 and it is now under investigation.
[ ](https://chat.hyperledger.org/channel/composer?msg=SL7cMLrQC5YryFXvw) @rthatcher Yes its running on the same organisations and i'm using ubuntu , I'm still puzzled when running the node application on Peer1.org1 on VM2 because the imported card using the connection.json that was created in Peer0.Org1 on VM1
Hi anyone encounter this "Error: got unexpected status: BAD_REQUEST -- error authorizing update: error validating DeltaSet: policy for [Group] /Channel/Application not satisfied: Failed to reach implicit threshold of 1 sub-policies, required 1 remaining"
i got it from creating a channel,
docker exec peer0.org1.example.com peer channel create -o orderer.example.com:7050 -c mychannel -f /etc/hyperledger/configtx/channel.tx
Hello,
Can composer can interact with only one channel? I found the line saying *Hyperledger Composer can only interact with a single channel so only one channel should be defined.* in https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Hello,
Can composer can interact with only one channel? I found the line saying *Hyperledger Composer can only interact with a single channel so only one channel should be defined* in https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@mahoney1 @rthatcher @sstone1
Can composer can interact with only one channel? I found the line saying *Hyperledger Composer can only interact with a single channel so only one channel should be defined* in https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@mahoney1 @rthatcher @sstone1
Is composer can interact with only one channel? I found the line saying *Hyperledger Composer can only interact with a single channel so only one channel should be defined* in https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@mahoney1 @rthatcher @sstone1
Is composer can interact with only one channel? I found the line saying *Hyperledger Composer can only interact with a single channel so only one channel should be defined* in https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org What if we have multiple channels?
Any thoughts about how to keep Composer code in sync with code developed in an IDE? I find it a total clusterf to keep switching back and forth... even with creating some automated bash scripts it still breaks almost every time on one side or the other.
It would be nice to have some sort of git integration so you could say "download from git and deploy" instead of having just browser code storage.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=8EQWjGoidQ5nqYawf) @mahoney1 Thanks for the reply. This solution is related to node.js application.. but I am just using Rest-API in my web application. So is there any way to do in rest-server.
2nd Question: Is there any way to rename the APIs, suppose I have create one TP function as addVehicle and I want to rename it to POST /vehicles?
[ ](https://chat.hyperledger.org/channel/composer?msg=8EQWjGoidQ5nqYawf) @mahoney1 Thanks for the reply. This solution is related to node.js application.. but I am just using Rest-API in my web application. So is there any way to do in rest-server.
2nd Question: Is there any way to rename the APIs, suppose I have create one TP function as addVehicle and I want to rename it to POST /vehicles?
These two issues are the major bottleneck :(
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=zYMthDnA57dFkjMtA) @fjblau - feel free to raise an issue in Github, and tag with "user story" - such as these examples
[ ](https://chat.hyperledger.org/channel/composer?msg=zYMthDnA57dFkjMtA) @fjblau - feel free to raise an issue in Github, and tag with "user story" - such as these examples: https://github.com/hyperledger/composer/labels/user%20story
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=DNno8ZrL7Bt49MEGb) @HoneyShah correct, a single channel is supported in the Composer connection profile. We do have an open issue requesting support for multiples FYI -> https://github.com/hyperledger/composer/issues/2103
Has joined the channel.
Screenshot from 2018-05-01 10-01-40.png
Please suggest the ways
please suggest
[ ](https://chat.hyperledger.org/channel/composer?msg=Lq6C3gnNXZvbStZ5c) @TomWeiss - this has been reported here as an issue: https://github.com/hyperledger/composer/issues/3944 and is currently being investigated.
@absingh0 - don't presently get CRUD 'system' events such as Add Asset per se or via the POST operational endpoints (ie its only request/response stuff). With the REST server, as you know, you can use a WebSockets client to subscribe to events (as you can use the -w flag to enable Websockets publishing on the REST server). You would have to 'emulate' the CRUD operations for your asset CRUD operations when you need to emit events to find out such an event took place - ie instead of calling the REST endpoints for assets, you call the REST API to invoke a transaction. The transaction invokes your logic file, and it is there that you emit events.
FYI - we currently have PR that that is building to lock the version of the GRPC module to 1.10.1; an upgrade in last day of GRPC has, it is currently suspected, caused this issue.
@Vanitha - you can create a query on the transaction class(es) - then call it/each from a TP function, or from your client and, with an array of trxn IDs provided to that query transaction, you can (when you found the id in question), use the relationship to the ProductId (that was stored as a relationship on the transaction) to source the Product (or Order as the case may be) details you want, in your for loop and process accordingly etc
Has joined the channel.
Has joined the channel.
Hey Guys
I got a pretty beginner question
I am trying to hide all the unrelevant transaction log
I have this rule in permissions.acl -->
rule SeeOwnHistoryOnly {
description: "Users should be able to see the history of their own transactions only"
participant(t): "org.blockknowhow.com.Users"
operation: READ
resource(v): "org.hyperledger.composer.system.HistorianRecord"
condition: (v.participantInvoking.getIdentifier() != t.getIdentifier())
action: DENY
}
but it does not seem to work
I can still see adding other participants
http://prntscr.com/jcfs00
I was able to hide Users from other Users --> http://prntscr.com/jcfs61
but it does not work with my transaction log
can you give me some advice?
Is it possbile to give the composer-rest-server a public ip?
@ThomasBereczky Do you have any rules above this one which are handling `org.hyperledger.composer.system.HistorianRecord` or `org.hyperledger.composer.system.**` ? maybe there is a rule being applied first preventing this one from working.
@carlcraig One sec, let me give you my complete Permissions.acl
permissions.txt
ok, try moving `rule SystemACL` below `rule historianAccess`
@ThomasBereczky ok, try moving `rule SystemACL` below `rule historianAccess`
permissions.txt
@ThomasBereczky have made a few small changes in the permissions.acl file for you... I believe the problem was around the ordering of rules... once the matching rule is matched subsequent rules are not evaluated.. so your `SystemACL` and `hidehistorianAccess` rules were preventing `historianAccess` from being evaluated
Thank you very much!
it was working even by moving it down
cool
I really love composer :D
works like a charm
:smiley:
fyi all - reminder that the Community call is at 9am UTC (10am UK, 12pm ET, 9am PT) tomorrow Wednesday this week - Join via Zoom from PC, Mac, Linux, iOS or Android: -> https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-May-2nd-2018 best regards Paul
@mahoney1 On asset creation, how do you emit an event to the listening applications without kicking off a transaction? I want our microservice to listen to a 'assetCreatedEvent' to do some processing. I am creating the asset with the composer-sdk without the need to call a transaction processor function but I don't know how I would be able to emit that event without calling a transaction function.
Has joined the channel.
Has joined the channel.
hey everyone, I have a patient who has their medicalRecord asset, and I want each patient to just see their record where they are owners at; however, the code that I wrote does not work, and I am not sure why. The patient just does not see their asset. Can someone help?
`participant Patient identified by email {
o String email
o String firstName
o String lastName
o DateTime dob optional
o Address address optional
o String[] authorized optional
}
asset medicalRecord identified by medical {
o String medical
--> Patient owner
--> Doctor issuer
}
rule owner {
description: "Allow full access to the owner of a medical record"
participant(i): "org.acme.pii.Patient"
operation: ALL
resource(a): "org.acme.pii.medicalRecord"
condition: (a.bond.owner.email === i.email)
action: ALLOW
}
`
hey everyone, I have a patient who has their medicalRecord asset, and I want each patient to just see their record where they are owners at; however, the code that I wrote does not work, and I am not sure why. The patient just does not see their asset. Can someone help?
`participant Patient identified by email {
o String email
o String firstName
o String lastName
o DateTime dob optional
o Address address optional
o String[] authorized optional
}
asset medicalRecord identified by medical {
o String medical
--> Patient owner
--> Doctor issuer
}
rule owner {
description: "Allow full access to the owner of a medical record"
participant(i): "org.acme.pii.Patient"
operation: ALL
resource(a): "org.acme.pii.medicalRecord"
condition: (a.pii.owner.email === i.email)
action: ALLOW
}
`
[ ](https://chat.hyperledger.org/channel/composer?msg=4iGYSB3B82ErAE5YZ) @brian.leppez Interested in the answer as well
[ ](https://chat.hyperledger.org/channel/composer?msg=YA3ZiuhMid5oxD4YD) @rthatcher I was able to figure this out, now I have another issue,,, in VM1 running Peer0.Org1 I have successfully issue a new identity and created a card which I will use in the Peer1.Org1 on VM2 when running the Node Application,, the error I'm getting now is --
[ ](https://chat.hyperledger.org/channel/composer?msg=dTp2EQfnccrfEDmhA) /node_modules/fabric-client/lib/ChannelEventHub.js:666
throw error;
^
Error: Connection is not in the READY state
Has joined the channel.
Does anyone know if a business network generated withi composer can be easily added to the AWS Fabric support
`Hyperledger Fabric 1.1 does not support couchdb as of now.`
is it true?
[ ](https://chat.hyperledger.org/channel/composer?msg=a5CuBwWuP5pbw9ps7) @mahoney1 Yes, I understand that I can create transactions and in my transaction logic I can emit an event. But there is one more issue with this I am facing, as per standard convention all APIs should be like GET /vehicles, POST /vehicles, PUT /vehicles/id, DELETE /vehicles/id and I cant create all of these APIs from transactions with the same name.
[ ](https://chat.hyperledger.org/channel/composer?msg=a5CuBwWuP5pbw9ps7) @mahoney1 Yes, I understand that I can create transactions and in my transaction logic I can emit an event. But there is one more issue with this I am facing, as per standard convention all APIs should be like GET /vehicles, POST /vehicles, PUT /vehicles/id, DELETE /vehicles/id and I cant create all of these APIs from transactions with the same name. Thanks for your suggestions in advance.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=4PwD8pRgYZBoMiE4b) @mahoney1 Thanks for the information.
OK I have written a bash script to sync IDE-written chaincode with Git and then deploying it.... DM me if you are interested.
It uses a parameter-driven version numbering, but that could be better written... with some sort of auto-numbering that matches the playground format
Hello !
I'm following google OAUTH2.0 tutorial. I create my network, it works and i can ping network. But after run the sed command, ping don't work anymore. Any idea ?
[ ](https://chat.hyperledger.org/channel/composer?msg=rLyrbbZbWhuHAJsv3) @rthatcher No i havent upgraded composer yet.
Hello,
Can we have same organisation deployed on different server? And is there any way to uninstall network from peers without stopping fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=4iGYSB3B82ErAE5YZ) @brian.leppez currently Composer events are emitted by Transactions only. If you can't use that, it sounds like you want to use HTTP request/response handling pipeline in your client to handle the response codes (eg 200 for success) and the asychronous response as appropriate. There are many resources out there that can help such as https://medium.com/@jeffandersen/building-a-node-js-rest-api-with-express-46b0901f29b6 (just an example)
[ ](https://chat.hyperledger.org/channel/composer?msg=854Rrqw6hHJovdj8u) @absingh0 you would otherwise have to look at the HTTP request/response handling pipeline in your client to manage the responses (as mentioned above) from the generated CRUD operations I would think.
fyi all - reminder that the Community call is at 9am UTC (10am UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android: -> https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-May-2nd-2018 best regards Paul
[ ](https://chat.hyperledger.org/channel/composer?msg=8SoQQAuEgyvLZwLmv) @HoneyShah deployment of member networks usually involves deployment on different servers within an organisational IP / host network zone. on removal, see the Fabric docs - you would should quiesce Fabric ideally if an orderly removal - this may also help https://stackoverflow.com/questions/49646062/remove-hyperledger-fabric-added-peer
[ ](https://chat.hyperledger.org/channel/composer?msg=MRkzw2uf22dZRnbJW) @mgcox should be able to. If you specified a public subnet, you can connect to the EC2 instance as would any other EC2 instance from your Dev environment, and should be able to deploy it to a 1.1 Fabric (which I believe its supports) .
Hello! Apologies for the noob question, but I am having trouble understanding a very simple thing from the samples. How do I actually authenticate end users and set their permissions?
I have a simple scenario where I want both UserA and UserB belonging to CompanyC to perform some transactions. I want the users to login from a web app with their own username and password.
How do I connect to the CA to authenticate them? And in the ACL, can I map permissions to the Company, or do I need to specify a condition where the user has to belong to the Company?
[ ](https://chat.hyperledger.org/channel/composer?msg=hNMKr4TYCDsG8oXXk) @Poneey if it's a issue due to corporate proxy, you need to work with your network guy(s) to enable a route to/from the REST server and the Google authorization server
@JeffGutierrez are you running a release earlier than 0.19.4 of Composer ? This has been reported as an issue : https://github.com/hyperledger/composer/issues/3944 - suggest to go to 0.19.4 and should fix this issue - also reported here chat.hyperledger.org/channel/composer?msg=nfugGoyDxASi8PHyg
[ ](https://chat.hyperledger.org/channel/composer?msg=ww7ZTo345vZCiu4s9) @mahoney1 im running on v0.19.2
[ ](https://chat.hyperledger.org/channel/composer?msg=xavmW2WrLsPpWJrsd) @mahoney1 Thanks. and one other thing is there any tutorial which uses JWT/SAML or X_API_KEY to authenticate user?
[ ](https://chat.hyperledger.org/channel/composer?msg=ww7ZTo345vZCiu4s9) @mahoney1 Thanks @mahoney1 in packages.json for node im using these version "composer-admin": "0.19.1",
"composer-client": "0.19.1",
[ ](https://chat.hyperledger.org/channel/composer?msg=ww7ZTo345vZCiu4s9) @mahoney1 Thanks a lot on the link got it solved because of the GRPC version :D
@mahoney1 Do you think it's due to proxy ? Because it works before sed command
@acbellini see here for resources/guidance on user login / authentication https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--node-js-application-development-questions-eg-build-real-time-apps-login-etc - once your users are logged in following authentication/registration, you issue (or more likely have already issued by then) business network cards (which contain their blockchain identity/certificate and connection metadata to connect to the business network on the Fabric blockchain network). So when they 'transact' from the application (ie something needs to go out to write to the ledger or query it etc) - it will use their blockchain identity to sign the transaction. There is a multi-organisational tutorial on setting up two Orgs in a sample blockchain network -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org and also a sample Authentication tutorial (which uses Google OAUTH2/REST in this case) https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest. Fabric uses CA servers by and large for issuing certs in the respective orgs etc. As for ACLs, these are for the defined participants in the business network (mapped to the blockchain identities I mentioned). You can map permissions to the resources in your modeled namespace, meaning the realm you want to control (like any security realm). See ACL tutorial here https://hyperledger.github.io/composer/latest/tutorials/acl-trading to see interaction with the business network, as different identiies (and therefore diff access control effects)
[ ](https://chat.hyperledger.org/channel/composer?msg=QXzsWP7DqEHPkPtNP) @mahoney1 Thanks for the detailed answer and the links, appreciate it a lot! On to those tutorials :)
@mahoney1 Have you tried my provided BNA regarding the restrictive ACL?
reminder that the Community call is at 9am UTC (10am UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android: -> https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 https://github.com/hyperledger/composer/wiki/Meeting-May-2nd-2018
[ ](https://chat.hyperledger.org/channel/composer?msg=whW44NrqNgZCFJJvi) @mahoney1 Joined at the very last minute this week. Putting this on my calendar for next week! Thanks :)
[ ](https://chat.hyperledger.org/channel/composer?msg=XHJQTDZLSGzXBJ4SW) @Poneey the current Google Auth tutorial was tested with the current release (the sed order was changed to what it is now - you can see the changes - in 3 places in this commit (onwards from this line in green) -> [here](https://github.com/hyperledger/composer/pull/3933/commits/519d1f571d644e469bdc03f65ef908d8fe6317e2#diff-be00ba6dd992a78096e24c8d7d7eadf8L226)
[ ](https://chat.hyperledger.org/channel/composer?msg=XHJQTDZLSGzXBJ4SW) @Poneey the current Google Auth tutorial was tested with the current release 0.19.4 (the sed order was changed to what it is now - you can see the changes - in 3 places in this commit (onwards from this line in green) -> [here](https://github.com/hyperledger/composer/pull/3933/commits/519d1f571d644e469bdc03f65ef908d8fe6317e2#diff-be00ba6dd992a78096e24c8d7d7eadf8L226)
@acbellini :thumbsup:
@HoneyShah don't have a tutorial but see https://github.com/hyperledger/composer/issues/2038#issuecomment-340540726 - this [issue](https://github.com/hyperledger/composer/issues/2038) has a rocketchat link too that's useful and info on COMPOSER_PROVIDERS etc
@nekyl been in meetings and other stuff, and will be some today - so not yet, will take a look today..
@nekyl been in meetings and other stuff, and will be some today - so not yet, but will take a look today..
@mahoney1 It's ok, HoneyShah help me
Hi all,
I am in search of how events can be handled using composer, found an option of using composer-events-subscriber and tried out, but was not successful. Have anyone used this or have any suggestions of how to use it?
Hi all,
I am in search of how events can be handled using composer, found an option of using composer-events-subscriber and tried out, but was not successful. Have anyone used this or have any suggestions of how to use it? @pb @mahoney1 @rthatcher
@dsl - for publishing events -> https://hyperledger.github.io/composer/latest/business-network/publishing-events.html for subscribing from your client -> https://hyperledger.github.io/composer/latest/applications/subscribing-to-events.html using `composer-client.BusinessNetworkConnection.on` call. Also describes how to subscribe to events emitted from a deployed business network, and publish those business events for consumption by client applications. There is an example of a Web app consuming event data from websockets out on the web may be useful -> https://github.com/IBM/BlockchainEvents-CompositeJourney/tree/master/Web/public the event in that B.N. is modeled here -> https://github.com/IBM/BlockchainEvents-CompositeJourney/blob/master/Composer/models/product.cto#L48
@dsl - for publishing events -> https://hyperledger.github.io/composer/latest/business-network/publishing-events.html for subscribing from your client -> https://hyperledger.github.io/composer/latest/applications/subscribing-to-events.html using `composer-client.BusinessNetworkConnection.on` call. Also describes how to subscribe to events emitted from a deployed business network, and publish those business events for consumption by client applications. There is an example of a Web app consuming event data into a tabulated Event View from websockets out on the web may be useful -> https://github.com/IBM/BlockchainEvents-CompositeJourney/tree/master/Web/public the event in that B.N. is modeled here -> https://github.com/IBM/BlockchainEvents-CompositeJourney/blob/master/Composer/models/product.cto#L48
[ ](https://chat.hyperledger.org/channel/composer?msg=bc4baAWuTE4n4cSMQ) @mahoney1 Basically the admin identity works fine for me, its just that I am trying to issue a new identity for my participant using admin as the issuer, now the problem is playground, composer-cli all are throwing unsupported certificate purpose error for me and checking logs of CA Server shows no activity at all, while creating connection for my fabric runtime for ca I used url, https://ca.org1.example.com:7054 and used certificate with it from path /peerOrganization/organization1/peers/peer1/tls/ca.cert (I used this certificate because in composer single organization and multiple organization tutorials it is sugguested to use this certificate) @rthatcher any help would be appreciated Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=bc4baAWuTE4n4cSMQ) @mahoney1 Basically the admin identity works fine for me, its just that I am trying to issue a new identity for my participant using admin as the issuer, now the problem is playground, composer-cli all are throwing unsupported certificate purpose error for me and checking logs of CA Server shows no activity at all, while creating connection for my fabric runtime for ca I used url, https://ca.org1.example.com:7054 and used certificate with it from path /peerOrganization/organization1/peers/peer1/tls/ca.cert (I used this certificate because in composer single organization and multiple organization tutorials it is sugguested to use this certificate). Also if I register an identity directly on CA docker container using fabric-ca-client(admin id) then enroll that new id and use its certificate to create new participant card from composer and bind its certificate with participant using composer cli command (composer identity bind -participant -certificate) then it works fine, the problem is composer-cli and playground is unable to issue new identities, I suspect its because of the connection profile either the url https://ca.org1.example.com or its tls certificate, it's hard to know which certificate goes with ca here, is it tls cert or is it something else entirely? @rthatcher any help would be appreciated Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=b2k9y66XTq8jBdS8Y) @maddy - In the connection.json you need the TLS certificate something like ` crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt `
The multiorg tutorial has examples of including the certificates, and shows how they are added in a single string with the `\n` characters included.
[ ](https://chat.hyperledger.org/channel/composer?msg=b2k9y66XTq8jBdS8Y) @maddy - In the connection.json you need the TLS certificate something like ` crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt `
The multiorg tutorial has examples of including the certificates, and shows how they are added in a single string with the `\n` characters included.
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=MdbsaHpZD9Wsk9oLm) @rthatcher That is the exact certificate that I am using for ca tls, also to make sure that https://ca.org1.example.com:7054 resolve to https://localhost:7054 I have added in entry in host file and I can correctly ping ca.org1.example.com, still issuing identity using composer cli or playground does move ca contain logs a bit
[ ](https://chat.hyperledger.org/channel/composer?msg=MdbsaHpZD9Wsk9oLm) @rthatcher That is the exact certificate that I am using for ca tls, also to make sure that https://ca.org1.example.com:7054 resolve to https://localhost:7054 I have added in entry in host file and I can correctly ping ca.org1.example.com, still issuing identity using composer cli or playground doesn't move ca contain logs a bit
@maddy - are you using the default dev environment Fabric provided by Composer - or - have you got a custom Fabric you're building (given that you're using https on the CA url)? The dev connection profile has http://
can we use `await` in composer playground
as of now i am getting errors
[ ](https://chat.hyperledger.org/channel/composer?msg=gE5xyuQsmDmcNuFJM) @mahoney1 It's custom environment but its based on fabric provided setup
[ ](https://chat.hyperledger.org/channel/composer?msg=BXCbddw3MCbJGTDkk) its https only because I have enabled TLS on my fabric runtime
@maddy, ok I see
I am regretting having a chat handle maddy, fabric/composer is really driving me mad.
Has joined the channel.
Ok. I am a newbie. Trying to install NVM and Xcode IDE on a Macbook and when I go to Terminal and enter: ```curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash ```After about 1:15, it times out and gives an error that it Failed to connect ("curl: (7) Failed to connect to raw.githubusercontent.com port 443: Operation timed out") Anyone know why this is happening?
```
```
Apologies, I just realized that I should have posted this to the general channel instead of the composer channel. Switching to that channel now
Has joined the channel.
it loads just fine for me, you might have port 443 closed in your machine
(Outgoing)
or you don't have dns servers
try ping 8.8.8.8
then ping google.com
do you have littlesnitch installed?
@maddy - assuming your "Error: unsupported certificate purpose" error still occurs (that you see when trying to issue identity) - these error messages are indicating that the cert you're specifying is not fact a CA cert (might need to double-check your config for its location to including path/suffix/camelcase etc. You could use a browser/utility to examine the CA cert for example: A valid CA cert will read something like: `X509v3 blah.. CA:TRUE` whereas: A non-CA cert will display this instead: `X509v3 blah CA:FALSE` -
@maddy - assuming your "Error: unsupported certificate purpose" error still occurs (that you see when trying to issue identity) - these error messages are indicating that the cert you're specifying is not in fact a CA cert (might need to double-check your config for its location to including path/suffix/camelcase etc. You could use a browser/utility to examine the CA cert for example: A valid CA cert will read something like: `X509v3 blah.. CA:TRUE` whereas: A non-CA cert will display this instead: `X509v3 blah CA:FALSE` -
@Varun2887 - only tried online playground (0.19.4) at present, and deployed sample network trade-network [here](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js) ie with async/await - and it works fine for me.
Hello my people, someone have any example about de "SCRIPT.JS" I do not know how to start,
I already did the part of "MODEL.CTO" but I am very lost about de "SCRIPT.JS".
I appreciate your time and help
Has joined the channel.
@diego.garzon the script files don't have to be called `script.js` - you can call it what you like as long as you put the .js files under the `/lib` folder - see the sample networks - eg Basic Sample Network - it (as an example) has a script file called `sample.js` under `/lib` - see example in the business network samples directory : https://github.com/hyperledger/composer-sample-networks/tree/master/packages/basic-sample-network/lib
@diego.garzon the script files doesn't have to be called `script.js` - you can call it what you like as long as you put the .js files under the `/lib` folder - see the sample networks - eg Basic Sample Network - it (as an example) has a script file called `sample.js` under `/lib` - see example in the business network samples directory : https://github.com/hyperledger/composer-sample-networks/tree/master/packages/basic-sample-network/lib
@diego.garzon the script files doesn't have to be called `script.js` - you can call it what you like as long as you put the .js files under the `/lib` folder - see the sample networks - eg Basic Sample Network (link below) - it (as an example) has a script file called `sample.js` under `/lib` - see example in the business network samples directory : https://github.com/hyperledger/composer-sample-networks/tree/master/packages/basic-sample-network/lib
and the Developer tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial which uses a script file `lib/logic.js`
@diego.garzon the script files doesn't have to be called `script.js` - you can call it what you like as long as you put the .js files under the `/lib` folder - see the sample networks - eg Basic Sample Network (link below) - it (as an example) has a script file called `sample.js` under `/lib` - see example in the business network samples directory : https://github.com/hyperledger/composer-sample-networks/tree/master/packages/basic-sample-network/lib
and the Developer tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial which uses a script file `lib/logic.js` as well as the intro diagram [here](https://hyperledger.github.io/composer/latest/introduction/key-concepts)
Hi everyone in group, In Hyperledger composer rest api (composer-rest-server) are secure with enable authentication for the rest server. but in http://localhost:3000/explorer, All sensitive data is not encryption. Could i use other cryptography or other approach to encrypt and decrypt like asymmetric to prevent data privacy (sensitive data)?. Thank you in advance!
@dara652 use TLS between REST client and REST server - see https://hyperledger.github.io/composer/latest/integrating/securing-the-rest-server
@dara652 use TLS between REST client and REST server - see https://hyperledger.github.io/composer/latest/integrating/securing-the-rest-server and useful info on TLS here https://devcentral.f5.com/articles/ssl-profiles-part-8-client-authentication
@mahoney1 Thank you. but in this tutorial, I'm not clear with its. when I run with command in this tutorial and then how to use it?
@mahoney1 thank u so much, I'm gonna read
[ ](https://chat.hyperledger.org/channel/composer?msg=2fPHpQT856Ji9mnyu) @dara652 you would really need to set up authentication with TLS like discussed [here](https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication) then connect to the authentication path for your application to authenticate the user using https://localhost:3000/auth/github:3000 or whatever and then interactions/ data in transit between client and server will be encrypted.
[ ](https://chat.hyperledger.org/channel/composer?msg=2fPHpQT856Ji9mnyu) @dara652 you would really need to set up authentication with TLS like discussed [here](https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication) then connect to the authentication path for your application to authenticate the user using https://localhost:3000/auth/github or whatever and then interactions/ data in transit between client and server will be encrypted.
[ ](https://chat.hyperledger.org/channel/composer?msg=2fPHpQT856Ji9mnyu) @dara652 you would really need to set up authentication with TLS like discussed [here](https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication) then connect to the authentication path for your application to authenticate the user using https://localhost:3000/auth/github (or whatever the authPath is for your implemented strategy) and then interactions/ data in transit between client and server will be encrypted.
@mahoney1 Thank you very much! I will try it.
[ ](https://chat.hyperledger.org/channel/composer?msg=Wob5y3tiuxv8kbkpy) @dara652 ok np - have also provided a similar response to this Stack overflow - https://stackoverflow.com/questions/50139388/privacy-of-hyperledger-composer-rest-server (may be one and the same).
Hello, I have a question in which data composer stores exactly on the blockchain. As Hyperledger Fabric is using PutState and GetState functions to store and load data from CouchDB I assume that only the key is stored on the blockchain itself. Please correct me if I'm wrong. As Composer allows to query assets through their Id, I assume that the Id's are stored on the blockchain and the assets itself are stored in a CouchDB database.
Also, how can be verified that data stored in a CouchDB has net been tampered?
Has joined the channel.
Has joined the channel.
hello all, i have aquestion in composer-playground. when i deploy bussiness network , i get an error : Error: 2 UNKNOWN: access denied: channel [tc1] creator org [Org1MSP]
Has joined the channel.
Am I correct to assume that using Composer, us developers will still need to generate Certificate Authorities as well as adding Peers to a network? Or rather which deployment features of Fabric will I still need to use even though I might be using Composer. I'm trying to understand which pieces of network management Composer manages for us vs using Fabric directly. It is not abundantly clear in a production setting
Has joined the channel.
In hyperledger composer is it possible to transfer data for a specific participant/peer
In hyperledger composer is it possible to transfer data for a specific participant/peer
In hyperledger composer is it possible to transfer data for a specific participant/peer
Is it possible to pass message/data to a specific participant using Hyperledger composer chaincode (ie BNA) ?
Hi All, I am a bit confused, will the command "composer network install" install the network on all the peer nodes listed in the connection profile?
[ ](https://chat.hyperledger.org/channel/composer?msg=6uXykrtj85pugLE9n) @MarkPrice everything except the chain code will be required
[ ](https://chat.hyperledger.org/channel/composer?msg=kLdhrvCmAaB7c7THq) @mjoarder NO as of now I guess
data will be transferred but u can put ACL checks so that a node/card cannot access
Hello team, I had a requirement where I need to get the complete details about the transaction by providing the transaction id. I have gone through explorer for this. But, I was able to get only encrypted transaction data. Can someone help me out on this
hello all, i have aquestion in composer-playground. when i deploy bussiness network , i get an error : Error: Failed to import identity. Error: privateKey not specified or not a string
Hi all,
Hi All
I am trying to subscribe to the composer events using below event.js file But i am getting following error
throw new Error('Configuration property "' + property + '" is not defined');
^
Error: Configuration property "event-app" is not defined
Hi All
I am trying to subscribe to the composer events using below event.js file But i am getting following error
throw new Error('Configuration property "' + property + '" is not defined');
^
Error: Configuration property "event-app" is not defined
Below is my event.js file
'use strict';
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
const winston = require('winston');
var chalk = require('chalk');
let config = require('config').get('event-app');
let participantId = config.get('participantId');
let participantPwd = config.get('participantPwd');
const LOG = winston.loggers.get('application');
class SitechainListener{
constructor() {
this.bizNetworkConnection = new BusinessNetworkConnection();
this.CONNECTION_PROFILE_NAME = config.get('connectionProfile');
this.businessNetworkIdentifier = config.get('businessNetworkIdentifier');
}
init() {
return this.bizNetworkConnection.connect(this.CONNECTION_PROFILE_NAME, this.businessNetworkIdentifier, participantId, participantPwd)
.then((result) => {
this.businessNetworkDefinition = result;
//LOG.info(this.businessNetworkDefinition.getIdentifier());
})
// and catch any exceptions that are triggered
.catch(function (error) {
throw error;
});
}
/** Listen for the sale transaction events
*/
listen(){
this.bizNetworkConnection.on('event',(evt)=>{
console.log(evt);
let options = {
properties: { key:'value'}
};
});
}
}
var lnr = new SitechainListener();
lnr.init();
lnr.listen()
Can anyone help me to figure out the issue?
Hi All
I am trying to subscribe to the composer events using below event.js file But i am getting following error
throw new Error('Configuration property "' + property + '" is not defined');
^
Error: Configuration property "event-app" is not defined
Below is my event.js file
'use strict';
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
const winston = require('winston');
var chalk = require('chalk');
let config = require('config').get('event-app');
let participantId = config.get('participantId');
let participantPwd = config.get('participantPwd');
const LOG = winston.loggers.get('application');
class SitechainListener{
constructor() {
this.bizNetworkConnection = new BusinessNetworkConnection();
this.CONNECTION_PROFILE_NAME = config.get('connectionProfile');
this.businessNetworkIdentifier = config.get('businessNetworkIdentifier');
}
init() {
return this.bizNetworkConnection.connect(this.CONNECTION_PROFILE_NAME, this.businessNetworkIdentifier, participantId, participantPwd)
.then((result) => {
this.businessNetworkDefinition = result;
//LOG.info(this.businessNetworkDefinition.getIdentifier());
})
// and catch any exceptions that are triggered
.catch(function (error) {
throw error;
});
}
/** Listen for the sale transaction events
*/
listen(){
this.bizNetworkConnection.on('event',(evt)=>{
console.log(evt);
let options = {
properties: { key:'value'}
};
});
}
}
var lnr = new SitechainListener();
lnr.init();
lnr.listen()
Can anyone help me to figure out the issue?
is there any way to import external libraries in lib/script.js
Hi
I am trying to subscribe the events emitted from composer .For this i have written an event.js file .But while running it i am getting the following error ie;
(node:15431) UnhandledPromiseRejectionWarning: Error: Failed to load connection profile hlfv1. Error was Error: ENOENT: no such file or directory, open '/home/.composer-connection-profiles/hlfv1/connection.json'
at fs.readFile.then.catch
Can anyone help me to figure out the reason?Thanks.
Happy Thursday!
I have a question on the modeling language. Say I have a scenario with two different transactions:
```
transaction TomatoDeliveryTransaction {
--> Farmer from
--> Transformer to
o Integer kilos
}
protobuf
[ ](https://chat.hyperledger.org/channel/composer?msg=PebiH8orFo9Mk4bjx) @pb - What version of Composer do you have ? The folder name you quote is one we haven't used for a good few versions now. Perhaps you have some dependency in your code with an old version of Composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=CE2m6b2cyNW9ePX43) @MohitYadav2317 - the runtime for the Transaction Processing scripts does not support require or import.
[ ](https://chat.hyperledger.org/channel/composer?msg=uxPDEiXcNwHrikCdf) @rthatcher what is the reason for this? is there a workaround for using external npm modules in it?
[ ](https://chat.hyperledger.org/channel/composer?msg=mpmdx5WgKBE4KmET6) @james3443112 - are you connecting to Playground online or a locally installed Playground? If you are using locally, are you connecting to your own Fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=DWLkdAB4hrF8Ai6nS) @MohitYadav2317 - I'm not certain of the reason. There is no workaround, but there is something that might help - the ability to make external REST calls through the request module https://hyperledger.github.io/composer/latest/integrating/call-out.html
I have had a quick search through the Issues for Composer and can't find a reference to it ( https://github.com/hyperledger/composer/issues ) - if you have a good use case for needing npm modules, add an Issue.
[ ](https://chat.hyperledger.org/channel/composer?msg=ajFcapJfhkXQNKEu2) @phanikumar - do you mean the "Blockchain Explorer", or the explorer UI for the REST server?
Have you looked under the /system/historian endpoints on the REST server, or tried writing queries against the Historian?
[ ](https://chat.hyperledger.org/channel/composer?msg=DyzYzhLf9xAM73Mgh) @Varun2887 @MarkPrice - composer connects to an existing Fabric. There may be a little confusion because by using Composer Playground you can have a 'simulated' fabric in the browser local storage for early development and testing. Composer also provides a simple way to get a basic Development Fabric (fabrictools --> startFabric.sh) - this has the advantage of getting developers off to a fast start, but does somewhat hide the fact that a Real Fabric needs creation and configuration.
[ ](https://chat.hyperledger.org/channel/composer?msg=uxPDEiXcNwHrikCdf) @rthatcher does that mean that the whole logic for a business netwotk has to be in a single file?
I'm testing with the online Playground. I tried
```
- create a participant of type ParticipantA
- modify the definition (add a field)
```
The result was that, at least in the web view, there was no trace left of the previous participant. The transactions with which it was created were still there, but I had no way to access it. Is this the expected behaviour? How do you manage changes in the definition in a live production environment?
[ ](https://chat.hyperledger.org/channel/composer?msg=5D4nj4QFr5FhtYys4) @rthatcher @rthatcher I spoke about block chain explorer UI. Even I have checked historian. It is providing me abstract details
[ ](https://chat.hyperledger.org/channel/composer?msg=gi8zS7jvtc6hKcoR7) @rthatcher
My composer version is v0.16.6
Which version should i use to subscribe event from my event.js file
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
const winston = require('winston');
var chalk = require('chalk');
let config = require('config').get('event-app');
let participantId = config.get('participantId');
let participantPwd = config.get('participantPwd');
const LOG = winston.loggers.get('application');
class SitechainListener{
constructor() {
this.bizNetworkConnection = new BusinessNetworkConnection();
this.CONNECTION_PROFILE_NAME = config.get('connectionProfile');
this.businessNetworkIdentifier = config.get('businessNetworkIdentifier');
}
init() {
return this.bizNetworkConnection.connect(this.CONNECTION_PROFILE_NAME, this.businessNetworkIdentifier, participantId, participantPwd)
.then((result) => {
this.businessNetworkDefinition = result;
//LOG.info(this.businessNetworkDefinition.getIdentifier());
})
.catch(function (error) {
throw error;
});
}
listen(){
this.bizNetworkConnection.on('event',(evt)=>{
console.log(evt);
let options = {
properties: { key:'value'}
};
});
}
}
var lnr = new SitechainListener();
lnr.init();
lnr.listen()
[ ](https://chat.hyperledger.org/channel/composer?msg=6ir68RmJwcEomyvGH) @acbellini - you are correct, and this is the expected behaviour. The short answer is to create the new field as optional. The longfer answer is here in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#model
(BTW - you can split your transaction login amongst more than one file in the logic folder.)
@rthatcher thanks! (yeah, I had realised I was just being dumb on the logic files :P )
[ ](https://chat.hyperledger.org/channel/composer?msg=evmisLekDBrCHoDYn) @phanikumar - you should see the details of your Transaction if you perform a GET against your transaction endpoint in the REST server, or if it is a system transaction such as AddParticipant you can write a query - there is an example in this Stack Overflow answer: https://stackoverflow.com/questions/49981858/get-the-state-of-the-assets-and-participants-using-transaction-id/49983421#49983421
Is there any way to query for an asset by asset id in historian?
@mahoney1 @rthatcher What is exactly done by `sed -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/ca.org1.example.com:/' -e 's/localhost:/orderer.example.com:/' < $HOME/.composer/cards/restadmin@trade-network/connection.json > /tmp/connection.json && cp -p /tmp/connection.json $HOME/.composer/cards/restadmin@trade-network/
`
@mahoney1 @rthatcher What is exactly done by ```
sed -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/ca.org1.example.com:/' -e 's/localhost:/orderer.example.com:/' < $HOME/.composer/cards/restadmin@trade-network/connection.json > /tmp/connection.json && cp -p /tmp/connection.json $HOME/.composer/cards/restadmin@trade-network/
```
[ ](https://chat.hyperledger.org/channel/composer?msg=qg6z3gaCCLBmgD9v9) @pb - Firstly, unless there is a particular reason you are using v0.16.6 - I would recommend moving to the latest supported version (v0.19.*) there are many new features.
Secondly, even under v0.16.6 - the folder structure is ` .composer/cards/... ` not ` .composer-connection-profiles/ ` - so somewhere you have something old.
[ ](https://chat.hyperledger.org/channel/composer?msg=GSEqSNropoCp5vqDR) @MohitYadav2317 - there currently no way to do this directly, but there is a workaround documented in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks
[ ](https://chat.hyperledger.org/channel/composer?msg=wXZS6P5dGfekfQGBP) @rthatcher
As you have said my folder structure is exactly .composer/cards/... and the versions which i use are ,
composer -v0.16.6
node-v8.10.0
fabric- 1.0.4
[ ](https://chat.hyperledger.org/channel/composer?msg=xbjTkALQazLkdSxrQ) @HoneyShah - this command modifies the addresses of the Peer, Orderer etc in the connection.json. This is necessary because if you connect from your Ubuntu or Mac machine to your development fabric we simply use 'localhost', and docker (with docker-compose) does Port Forwarding into the containers, BUT when you run the REST server in a Container 'localhost' points back into the container and does not see the Fabric. So in the tutorial you use a new card called restadmin where we modify the addresses so that the REST container can 'see' the Fabric on address that are defined by docker-compose.
@pb - you should connect to your business network in 0.16.x with a business network card - as shown here -> https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/basic-sample-network/test/sample.js#L126 (you're doing it differently). https://hyperledger.github.io/composer/v0.16/api/client-businessnetworkconnection#connect - an example of event subscription in 0.16.x is here -> https://hyperledger.github.io/composer/v0.16//applications/subscribing-to-events
@pb - you should connect to your business network in 0.16.x with a business network card - as shown here -> https://github.com/hyperledger/composer-sample-networks/blob/v0.16.x/packages/basic-sample-network/test/sample.js#L126 (you're doing it differently). https://hyperledger.github.io/composer/v0.16/api/client-businessnetworkconnection#connect - an example of event subscription in 0.16.x is here -> https://hyperledger.github.io/composer/v0.16//applications/subscribing-to-events - but in answer to your question, as rthatcher recommends, you should use the latest Composer version (0.19.4) unless there's a reason not to.
[ ](https://chat.hyperledger.org/channel/composer?msg=mBDcSbq7Wd9mku7j5) @rthatcher Why it is repeated twise?
~sed -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/peer0.org1.example.com:/'~
[ ](https://chat.hyperledger.org/channel/composer?msg=mBDcSbq7Wd9mku7j5) @rthatcher Why it is repeated twise?
~sed -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/peer0.org1.example.com:/'
[ ](https://chat.hyperledger.org/channel/composer?msg=mBDcSbq7Wd9mku7j5) @rthatcher Why it is repeated twise?
```
sed -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/peer0.org1.example.com:/'
```
[ ](https://chat.hyperledger.org/channel/composer?msg=mBDcSbq7Wd9mku7j5) @rthatcher Thanks for the answer. Why it is repeated twise?
```
sed -e 's/localhost:/peer0.org1.example.com:/' -e 's/localhost:/peer0.org1.example.com:/'
```
@rthatcher : figured out my modeling doubts on adding/removing fields (I can add a field as optional, update all the assets, remove the `optional` keyword if needed. If I delete a field, Composer will no longer show the field but the asset persists). However the link to https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#model takes to an empty section. Happy to submit a PR and add this detail, if you'd like me to.
[ ](https://chat.hyperledger.org/channel/composer?msg=BeZaxAYX6xbRRL7Rc) @HoneyShah - the Peer has 2 entries in the connection.json , once as a general url and again for an eventurl. So the sed command replaces them both.
[ ](https://chat.hyperledger.org/channel/composer?msg=hSvTWy4X2D8WKuAnX) @acbellini - useful trick to remove optional after updates :-)
This is the right link - https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--data-migration-eg-from-playground-the-ledger---for-future-use-etc
[ ](https://chat.hyperledger.org/channel/composer?msg=d9ypqjbfi4PLwme9Z) @mahoney1
Ok let me try it .Thanks.
As I work more and more with Composer, it looks to me like the Blockchain is to data what GitHub is to code :) So, the question comes natural: what is the proper way to be able to trace back to the status of the ledger (or a portion of it) at a certain point in time? Take this sample scenario:
```
BottleManufacturerParticipant creates BottleAsset#123 that has color:"red" at timestamp T0
ClientA orders100 BottleAsset#123, because she wants 100 red bottles at timestamp T1
BottleManufacturerParticipant updates BottleAsset#123 setting color to "blue" at timestamp T2
```
Besides the application logic that I can add to make sure to inform ClientA of the change, in case of an audit or so, how can I show that at timestamp T1 the color on BottleAsset#123 was "red"?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=AT23Czn8HESBuLeRq) @rthatcher Got it. Thanks
I am using composer -v 0.19.0
My production environment don't have Internet connection. But running the 'composer network install' or 'composer network start' and 'composer network upgrade' required active Internet connection to download various NPM module. To overcome this problem I have set up local NPM registry by using 'Verdaccio' docker image. Now I can see all NPM module is getting downloaded from 'Verdaccio'. But still 'composer network upgrade' command failed.
Command : composer network upgrade -n tutorial-network -V 0.0.11 -c PeerAdmin@fabric-network -o npmrcFile=/home/firoz/tutorial-network/npmConfig
Output : Upgrading business network definition. This may take a minute... Error: Error trying to upgrade business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: 8 RESOURCE_EXHAUSTED: received trailing metadata size exceeds limit
Can any body help me out here
Does anybody have a link to a working application of a Real Estate listing site built on hyperledger?
@acbellini - thank you - I've added it - the link should be https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration (under Data migration)
Hello, I have been facing an error constantly which is when I first deploy a composer business network everything works fine, but id I decide to make some changes and change the version number or network name through package.json, and run composer network start command I get this error `"Response from attempted peer comms was an error: Error: 2 UNKNOWN: transaction returned with failure: SyntaxError: Identifier 'ProtobufBatchConverter' has already been declared"` There are these files which get automatically generated in the .bna file when we create it such as protobuf.js protobufbatchconverter.js protobufconverter.js and I couldn't exactly understand their role but i understood that they are converting protobuf files into composer model and concepts. But this error is always cropping when I change name or version. I have to start the network with version and name which was deployed first and then make changes by upgrading. But when I run Rest-server the query file changes are not reflected and I get the version I first deployed. Can anyone point out how to resolve this or what exactly to do?
Hello, I have been facing an error constantly which is when I first deploy a composer business network everything works fine, but if I decide to make some changes and change the version number or network name through package.json, and run composer network start command I get this error `"Response from attempted peer comms was an error: Error: 2 UNKNOWN: transaction returned with failure: SyntaxError: Identifier 'ProtobufBatchConverter' has already been declared"` There are these files which get automatically generated in the .bna file when we create it such as protobuf.js protobufbatchconverter.js protobufconverter.js and I couldn't exactly understand their role but i understood that they are converting protobuf files into composer model and concepts. But this error is always cropping when I change name or version. I have to start the network with version and name which was deployed first and then make changes by upgrading. But when I run Rest-server the query file changes are not reflected and I get the version I first deployed. Can anyone point out how to resolve this or what exactly to do?
@ApoorvChandurkar unusual, not see that one before. Possibly something wrong with a declaration in the model or were you converting protobuf files to Composer models using https://github.com/hyperledger/composer-tools/blob/master/packages/composer-protobuf/README.md ?? The method for upgrading your BN is described here -> https://hyperledger.github.io/composer/latest/tutorials/queries (specifically 'Step Three' Regenerate and 'Step Four' - Deploy )
@ApoorvChandurkar unusual, not see that one before. So you were you converting protobuf files to Composer models using https://github.com/hyperledger/composer-tools/blob/master/packages/composer-protobuf/README.md ?? As for the BN, the method for upgrading your BN is described here -> https://hyperledger.github.io/composer/latest/tutorials/queries (specifically 'Step Three' Regenerate and 'Step Four' - Deploy )
Anybody in Bangalore? Need help for my college final year project. Extremely important. Please I may fail my course. Anybody?
[ ](https://chat.hyperledger.org/channel/composer?msg=TXEetDwAob6N6KLgN) before running sed command the connection.json file was
```
"orderers": {
"orderer.example.com": {
"url": "grpc://localhost:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://localhost:7051",
"eventUrl": "grpc://localhost:7053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://localhost:7054",
"caName": "ca.org1.example.com"
}
}
```
And after running it looks like:
"```
orderers": {
"orderer.example.com": {
"url": "grpc://peer0.org1.example.com:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://peer0.org1.example.com:7051",
"eventUrl": "grpc://ca.org1.example.com:7053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://orderer.example.com:7054",
"caName": "ca.org1.example.com"
}
}
```
Is it in correct order?
[ ](https://chat.hyperledger.org/channel/composer?msg=TXEetDwAob6N6KLgN) before running sed command the connection.json file was
```
"orderers": {
"orderer.example.com": {
"url": "grpc://localhost:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://localhost:7051",
"eventUrl": "grpc://localhost:7053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://localhost:7054",
"caName": "ca.org1.example.com"
}
}
```
And after running it looks like:
```
"orderers": {
"orderer.example.com": {
"url": "grpc://peer0.org1.example.com:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://peer0.org1.example.com:7051",
"eventUrl": "grpc://ca.org1.example.com:7053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://orderer.example.com:7054",
"caName": "ca.org1.example.com"
}
}
```
Is it in correct order?
[ ](https://chat.hyperledger.org/channel/composer?msg=TXEetDwAob6N6KLgN) @rthatcher @mahoney1 before running sed command the connection.json file was
```
"orderers": {
"orderer.example.com": {
"url": "grpc://localhost:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://localhost:7051",
"eventUrl": "grpc://localhost:7053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://localhost:7054",
"caName": "ca.org1.example.com"
}
}
```
And after running it looks like:
```
"orderers": {
"orderer.example.com": {
"url": "grpc://peer0.org1.example.com:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://peer0.org1.example.com:7051",
"eventUrl": "grpc://ca.org1.example.com:7053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://orderer.example.com:7054",
"caName": "ca.org1.example.com"
}
}
```
Is it in correct order?
Has joined the channel.
@ApoorvChandurkar I've not seen the source classes (were they originally Google Protobuf files? ) but the problem you see above is in the destination model file (in the BN) ie line 122 the concept Address is not completed with `}` - and the last item looks like a part-Asset declaration that only has ``` --> Vehicle orderVehicles
o Integer ordernum
--> Dealer purchasingDealer
}``` ie missing something like `asset OrderVehicle identified by id { ` before it etc, If you used the converter, do note it says "It is currently experimental and has a number of limitations" (see link I sent earlier) so you might like to check the model first and then add the necessary closing syntax. But that is the problem.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=kTpZrTPEd8FzA7HSZ) @mahoney1 I downloaded composer-tools because I needed redis storage for cards I didn't even know about protobuf but with that repo protobuf also got downloaded and after that something happened I guess?
@mahoney1 also I didn't explicitly do anything whenever I run composer archive create command to create .bna files those probuf related js files get included automatically
hello,i am using composer version v 19.4 . Can anyone help me with field level access permission
@ApoorvChandurkar - you need to check what's in your lib folder of your BNA. For some reason you have protobuf.js and other protobuf* files in there. This is another reason for the `already declared` message etc
@mahoney1 yes I checked that I found out those files where coming from composer-tools/packages/composer-protobuf folder because I had downloaded composer tools repository I just deleted that composer-protobuf folder and now when I create .bna those files are not there but error still remains somehow
Hi is anyone getting this error when pinging a network card?
```/home/ubuntu/.npm-global/lib/node_modules/composer-playground/node_modules/fabric-client/lib/ChannelEventHub.js:666
throw error;
^
Error: Connection is not in the READY state
at ChannelEventHub._checkConnection (/home/ubuntu/.npm-global/lib/node_modules/composer-playground/node_modules/fabric-client/lib/ChannelEventHub.js:664:17)
at ChannelEventHub.registerChaincodeEvent (/home/ubuntu/.npm-global/lib/node_modules/composer-playground/node_modules/fabric-client/lib/ChannelEventHub.js:825:8)
at HLFConnection._registerForChaincodeEvents (/home/ubuntu/.npm-global/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:279:44)
at HLFConnection._checkCCListener (/home/ubuntu/.npm-global/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:256:22)
at Timeout.ccListenerHandle.setTimeout [as _onTimeout] (/home/ubuntu/.npm-global/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:381:35)
at ontimeout (timers.js:482:11)
at tryOnTimeout (timers.js:317:5)
at Timer.listOnTimeout (timers.js:277:5)```
Hi guys!!, I'm new in Hyperledger. Now I use Hyperledger composer to deploy my sample business network. But Im curious, how can I start chaincode docker container again If I stop all fabric containers?
[ ](https://chat.hyperledger.org/channel/composer?msg=R5XgLG6RqtPC6auAz) @joaofguerreiro - this is an error with grpc which was discovered a couple of days ago - https://github.com/hyperledger/composer/issues/3944
If you uninstall and re-install the problem you should be OK.
[ ](https://chat.hyperledger.org/channel/composer?msg=x58NBYqHsxsfpZuqk) @ppanya - If the `composer network install`, and `composer network start` have completed OK, then when you start Fabric again then the chaincode container will be started automatically when first "requested/accessed".
Please also see this Stack Overflow answer: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
@rthatcher , maybe that link cannot help me and when I logs from chaincode docker (failed to restart).
It throws this error
```
> poc@0.0.1 start /usr/local/src
> start-network "--peer.address" "peer0.org1.example.com:7052"
running start.js
[2018-05-03T11:06:18.063] [ERROR] lib/handler.js - Chat stream with peer - on error: "Error: 2 UNKNOWN: error handling message, ending stream: transition canceled with error: peer will not accept external chaincode connection name:\"poc:0.0.1\" (except in dev mode)\n at Object.exports.createStatusError (/usr/local/src/node_modules/grpc/src/common.js:87:15)\n at ClientDuplexStream._emitStatusIfDone (/usr/local/src/node_modules/grpc/src/client.js:235:26)\n at ClientDuplexStream._receiveStatus (/usr/local/src/node_modules/grpc/src/client.js:213:8)\n at Object.onReceiveStatus (/usr/local/src/node_modules/grpc/src/client_interceptors.js:1316:15)\n at InterceptingListener._callNext (/usr/local/src/node_modules/grpc/src/client_interceptors.js:590:42)\n at InterceptingListener.onReceiveStatus (/usr/local/src/node_modules/grpc/src/client_interceptors.js:640:8)\n at /usr/local/src/node_modules/grpc/src/client_interceptors.js:1136:18"
```
Can you enlighten me, what is this problem and how to solve this?
[ ](https://chat.hyperledger.org/channel/composer?msg=YjA2zZaeaeYcCh9nD) @ppanya - OK - this is not a composer question, it is a Fabric question - please can you ask this in the #fabric channel :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=QWHbYuxbXs6LnmASF) @rthatcher THX :)
@ApoorvChandurkar did you delete wallet.js as well - that should not be there, you should only have your file - logic.js . But per my last message - your Model file (unless you've now fixed it as I suggested) is incomplete ie probably the reason. What happens if you import it into playground?
@asmitapatil see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--access-control-lists-acls (item 4 in table) - Composer doesn't yet support field level access permission, see info in the link posted.
[ ](https://chat.hyperledger.org/channel/composer?msg=ncEyF3NgDuQz5DWNw) @rthatcher I've done multiple attempts on uninstalling and re-installing everything. I've also forced the 1.10.1 version of `grpc` package. I still get the same error
@mahoney1 Yes my model file is free of error I checked and corrected that. I didn't delete wallet.js becauseI'm using composer-wallet-redis package
[ ](https://chat.hyperledger.org/channel/composer?msg=mxCGgcEHyjw2jAc39) @rthatcher I am getting abstract details about when the transaction is invoked and who invoked the transaction. But I am unable to get what exact request inputs are there in the transaction
[ ](https://chat.hyperledger.org/channel/composer?msg=mxCGgcEHyjw2jAc39) @rthatcher I am getting abstract details about when the transaction is invoked and who invoked the transaction. But I am unable to get what exact request inputs are there in the transaction which is what I am looking for
@ApoorvChandurkar - the scripts directory is for your runtime Transaction Processors (by the time you've called the functions in the scripts, you'll already be connected to the runtime BN with a business network card). The composer-tools is for client applications connecting to a redis cloud store - as per the readme - https://github.com/hyperledger/composer-tools/tree/master/packages/composer-wallet-redis
[ ](https://chat.hyperledger.org/channel/composer?msg=tk44HnbkjE5iw7mf3) @phanikumar - when I use this query:
```
```
[ ](https://chat.hyperledger.org/channel/composer?msg=tk44HnbkjE5iw7mf3) @phanikumar - when I use this query:
```
```
[ ](https://chat.hyperledger.org/channel/composer?msg=tk44HnbkjE5iw7mf3) @phanikumar - when I use this query:
```
query a2 {
description: "System Transaction AddAsset"
statement:
SELECT org.hyperledger.composer.system.AddAsset
}
```
I see this result - which is what I think you are looking for
```
{
"$class": "org.hyperledger.composer.system.AddAsset",
"resources": [
{
"$class": "org.acme.mynetwork.Commodity",
"tradingSymbol": "6642",
"description": "",
"mainExchange": "",
"quantity": 0,
"owner": "resource:org.acme.mynetwork.Trader#9508"
}
],
"targetRegistry": "resource:org.hyperledger.composer.system.AssetRegistry#org.acme.mynetwork.Commodity",
"transactionId": "028704408c5062e269efddee63f569907e4d9e4ae17ebf50d384ce604569601b",
"timestamp": "2018-05-03T10:46:17.198Z"
}
```
guys I have all my composer dependencies on 0.19.4 version. When I ping the networkadmin.card, I get this answer: `Composer runtime version: 0.19.2`
[ ](https://chat.hyperledger.org/channel/composer?msg=N6WpstRX2sAmgsLAQ) @joaofguerreiro upgrade network and then try to ping
[ ](https://chat.hyperledger.org/channel/composer?msg=Xhe9647xwFCJsni5r) @rthatcher the output is same as what I expected. But, I don't want to query based on asset instead I want to query based on transaction
{
"$class": "org.hyperledger.composer.system.HistorianRecord",
"transactionId": "94e2ac769f802fababc9d3a1006e247053379d6723591273b51e4244c26c375b",
"transactionType": "com.learning.blockchain.createProduct",
"transactionInvoked": "resource:com.learning.blockchain.createProduct#94e2ac769f802fababc9d3a1006e247053379d6723591273b51e4244c26c375b",
"participantInvoking": "resource:org.hyperledger.composer.system.NetworkAdmin#admin",
"identityUsed": "resource:org.hyperledger.composer.system.Identity#3872917816be1385e78476ffdea5bb6279443f65a24750216dab994a572560d9",
"eventsEmitted": [],
"transactionTimestamp": "2018-05-03T11:44:54.023Z"
}
==============================================
expected output
{
"$class": "com.learning.blockchain.createProduct",
"product": {
"$class": "com.learning.blockchain.Product",
"productQualities": {
"$class": "com.learning.blockchain.ProductQualities",
"productType": "i2",
"productModel": "i2"
},
"productId": "1234",
"productOwner": "intel@gmail.com",
"warrantyPeriod": 1,
"productDescription": "i2",
"productManufacturer": "intel@gmail.com",
"productStatus": "MANUFACTURED",
"manufactureDate": "2018-05-03T11:18:32.686Z",
"productPrice": 500,
"transactionIds": []
},
"productCreatedDate": "2018-05-03T11:18:32.686Z",
"transactionId": "94e2ac769f802fababc9d3a1006e247053379d6723591273b51e4244c26c375b"
}
Has joined the channel.
Has joined the channel.
Hello ladies and gentlemen ! I am currently trying to build an application for a demonstration for my company, but I'm having some trouble with the code of my script. If I could get support from you guys that would be great. How does it work here? I shall put my code here and explain what I am trying to acheive ?
I'm pretty sure it's a pretty simple problem, but I have spent hours on that without success, and found nothing helpfuk browsing google
hi all can i save transaction id and transaction type to a transaction
i have a transaction in .cto and i have written a transaction processor function, but while saving this asset to registry i need to save the transaction id to it, is it possible? i need these transaction id for linking assets created in get history phase
[ ](https://chat.hyperledger.org/channel/composer?msg=N6WpstRX2sAmgsLAQ) @joaofguerreiro The version of Composer used as the (npm package) dependency is set at the point that the business network (chaincode) is installed. By default it is set to the same as the version of Composer that you use to perform the install
const manufactRegistry = await getParticipantRegistry('org.acme.securebox.Manufacturer');
If i m using this syntax , I will get the below error
Error: SyntaxError: Failed to parse null: Unexpected token (227:34)
though I have a participant
Clipboard - May 3, 2018 7:11 PM
@suva I got the same error because of the await
@florianpautot . I am taking the example of perishable-network , where it is working fine
Has joined the channel.
Oh alright that's weird. Every time I'm trying to use await in the composer runtime I keep having this error
Has joined the channel.
Screenshot from 2018-05-03 17-23-51.png
Can anyone point me to the tutorial on how to deploy the network onto your local hyperledger composer v0.18? I am using this tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html but the `composer network install` command doesn't exist in composer v0.18.0. Do you guys know where I can find the tutorial for that version?
Hey! So, in my composer model, I have a participant type that has an array of assets he possesses. On my asset model, I have a property for its owner. Does anybody know if it is possible, when creating an asset that is owned by a certain participant, to automatically update the participant's array of assets? (so, basically, a function running when an asset is created)
I'm having an issue connecting to my business network. I have 2 nodejs-based services which use the `composer-client` to listen for events. They have the exact same code yet one of the services always gets the following error on connection:
```
/app/node_modules/fabric-client/lib/ChannelEventHub.js:666
throw error;
^
Error: Connection is not in the READY state
at ChannelEventHub._checkConnection (/app/node_modules/fabric-client/lib/ChannelEventHub.js:664:17)
at ChannelEventHub.registerChaincodeEvent (/app/node_modules/fabric-client/lib/ChannelEventHub.js:825:8)
at HLFConnection._registerForChaincodeEvents (/app/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:277:44)
at HLFConnection._checkCCListener (/app/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:254:22)
at Timeout.ccListenerHandle.setTimeout (/app/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:379:35)
at Timeout._onTimeout (/app/node_modules/async-listener/glue.js:188:31)
at ontimeout (timers.js:475:11)
at tryOnTimeout (timers.js:310:5)
at Timer.listOnTimeout (timers.js:270:5)
```
The code which causes this error is:
```
const { BusinessNetworkConnection } = require('composer-client');
var businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore });
var businessNetworkDefinition = businessNetworkConnection.connect('registrar@healthchain-prescription').then(() => {
console.log("CONNECTED");
});
```
I see the connection just fine in the peer logs so I'm not sure what's happening. Moreover if I comment out the following lines from `fabric-client/lib/ChannelEventHub.js` everything works fine:
```
if(state != 2 && !this._connect_running) { //Not READY, but trying
logger.error('_checkConnection - connection is not in the ready state. state:',getStateText(state));
let error = new Error('Connection is not in the READY state');
this._disconnect(error);
throw error;
}
```
It seems that `self._stream.call` does not have `channel_` defined. Any idea why that would be the case?
[ ](https://chat.hyperledger.org/channel/composer?msg=6uMSig2LJKo3gTTG8) @brian.leppez
I had the same issue, I solved it using this commands :
- composer network install -a network.bna -c PeerAdmin@hlfv1
- composer card create -p DevServer_connection.json -u
but couldn't find any help up to date ...
@florianpautot `composer network install` doesn't exist in composer v0.18.0
Oh sorry I was using v0.19 I compeltely forgot
[ ](https://chat.hyperledger.org/channel/composer?msg=qHfekiWTZ8GykR4vN) @Hopes - have you installed composer-playground with su, sudo or root access? This is not recommended. If you have permissions issues when installing composer, have a look at this section in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#installissues
[ ](https://chat.hyperledger.org/channel/composer?msg=6uMSig2LJKo3gTTG8) @brian.leppez - is there any particular reason why you want to remain with v0.18.0 (apart from the time/effort to upgrade :-) )
the v0.19 stream is termed "production ready" so that is the supported version.
I think you _might_ be able to find commands in this doc that will get you through the tutorial for a quick demo- but there are differences between 16 and 18 too: https://hyperledger.github.io/composer/v0.16/tutorials/developer-tutorial
I urge you to upgrade to v0.19
does IBP support composer 0.19?
@rthatcher does IBP support composer 0.19?
[ ](https://chat.hyperledger.org/channel/composer?msg=LAb9BxM3TQisq3cy9) @pedromlcosta - there is no "automatic" option when doing a simple createAsset, but it is relatively straitforward to code as your own transaction. I would suggest using the playground to deploy different samples and browse the example transactions which do update/create multiple objects.
[ ](https://chat.hyperledger.org/channel/composer?msg=9qn2RL6EwEFnu9dQz) @brian.leppez - as far as I know IBP Enterprise supports v0.16 and the Beta for Starter Plan supports v0.18.1 (though I believe that Starter Plan will be upgrading to support v0.19 soon.)
@rthatcher Thank you. That's the reason I need to use v0.18.1. This network is going to be deployed on Starter Plan.
@bsteinfeld - there has been an issue with a version of grpc that changed its behaviour (I think) it is more fully explained in this ussue, but I think that if you search your dependency tree you will see a reference to the 'bad' version of grpc. I think that composer has a temporary fix by 'fixing' the version of grpc so an uninstall or rebuild of your app should do the trick.
https://github.com/hyperledger/composer/issues/3944
@rthatcher Do you have a date on which composer v0.19 will be supported by IBP Starter Plan?
[ ](https://chat.hyperledger.org/channel/composer?msg=WaC8b5dAysC9M4tmL) @brian.leppez - sorry I can't do better than soon - my guess is days not weeks.
@rthatcher Thank you for all your help! It's definitely appreciated!
[ ](https://chat.hyperledger.org/channel/composer?msg=QhgkXMzCKBB5Sot7q) @rthatcher no, I didn't; however, during the installation of the composer components, I had these warnings. `npm WARN composer-wallet-filesystem@0.19.4 requires a peer of composer-common@0.19.3 but none is installed. You must install peer dependencies yourself.
npm WARN composer-wallet-inmemory@0.19.4 requires a peer of composer-common@0.19.3 but none is installed. You must install peer dependencies yourself.`
[ ](https://chat.hyperledger.org/channel/composer?msg=pyhfNd5epMD7K5D9Q) @rthatcher So, I have to code a different transaction and manually deploy it each time an asset is created?
Or creating an asset through a function of my own, which probably was what you meant ^^'
@pedromlcosta your transaction (function) can create the asset and do the update of the participant array of assets as one transaction....if you wish. But in any case, your assets will have a relationship back to the owner, and you could easily query all assets owned by that id, to save you maintaining an array list just FYI - don't know your use case)
@pedromlcosta your transaction (function) can create the asset and do the update of the participant array of assets as one transaction....if you wish. But in any case, your assets will have a relationship back to the owner, and you could easily query all assets owned by that id, to save you maintaining an array list just FYI - don't know your use case - but you can run a query inside a TP function then process the results too)
Hi all,
I am trying to upgrade my composer to latest version 0.19.4
after executing ./CreatePeerAdminCard.sh I got the following error:
Error: No connection type provided, probably because the connection profile has no 'x-type' property defined.
Command failed
Can anyone help me to get it resolved?Thanks.
Hey Everyone
Did anyone had any luck setting up the Rest Server with passport-local authentication ?
I am trying something like this based on a few stackoverflow posts --> http://prntscr.com/jdc51y
but this does not work, if I try to authenticate with postman I do not get a token back
Hi All
I have upgraded composer to version 0.19.4.But am unable to do npm innstall from my buisinessnetwork exported from composer playground ,to generate dist folder .I am getting following error
Hi All
I have upgraded composer to version 0.19.4.But am unable to do npm innstall from my buisinessnetwork exported from composer playground ,to generate dist folder .I am getting following error
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/home/parvathy/.nvm/versions/node/v8.10.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack at emitTwo (events.js:126:13)
gyp ERR! stack at ChildProcess.emit (events.js:214:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Linux 4.4.0-121-generic
gyp ERR! command "/home/.nvm/versions/node/v8.10.0/bin/node" "/home/.nvm/versions/node/v8.10.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/parvathy/HyperledgerComposer/composer0.19.4/iwitness-network(6).bna_FILES/node_modules/node-report
gyp ERR! node -v v8.10.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm WARN iwitness-network@0.0.2-deploy.2 license should be a valid SPDX license expression
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.3 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-report@2.2.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-report@2.2.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!
My node version is v8.10.0
Hi All
I have upgraded composer to version 0.19.4.But am unable to do npm innstall from my buisinessnetwork exported from composer playground ,to generate dist folder .I am getting following error
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/home/parvathy/.nvm/versions/node/v8.10.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack at emitTwo (events.js:126:13)
gyp ERR! stack at ChildProcess.emit (events.js:214:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Linux 4.4.0-121-generic
gyp ERR! command "/home/.nvm/versions/node/v8.10.0/bin/node" "/home/.nvm/versions/node/v8.10.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/parvathy/HyperledgerComposer/composer0.19.4/iwitness-network(6).bna_FILES/node_modules/node-report
gyp ERR! node -v v8.10.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm WARN iwitness-network@0.0.2-deploy.2 license should be a valid SPDX license expression
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.3 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-report@2.2.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-report@2.2.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!
My node version is v8.10.0
installed node-gyp.js
Has joined the channel.
"stack": "Error: Error trying invoke business network. Error: No valid responses from any peers. I am getting this error.
On my localhost:3000 when trying to complete a transaction. What could be the reason?
[ ](https://chat.hyperledger.org/channel/composer?msg=e8hX9vxj99mC5pxij) @RajathNandan Sounds like something went wrong on the peer and so no response ever came back to the client. Depending on what you were trying to do, look for the logs from the peer or chaincode docker container using the `docker logs` command. That should contain information on what actually went wrong
Good day my people,
could someone help me with some information about "-->" relationships, can you bring a specific field of an asset to put it in another asset? Thank you very much for your time and information
I noticed when I imported .bna file into my network using command line it didn't bring in the script file
now I am using composer-playground command and in the webpage, i manually added the script file and deployed changes. But it is taking forever on the Upgrading network screen..
it's been few minutes, is this normal?
now I get timeout error er
I cannot receive any events using composer 0.19.3 and fabric 1.1 using s hyperledger composer node.js client. I can see the event in the historian within the composer rest server. However the debug trace log shows the following over and over again "could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events...". The code is as follows:
This client app is modeled off the sample digitalProperty land title example. The listen code is as follows:listen() {
LOG.info('Awaiting events');
this.bizNetworkConnection.on('event', (event) => {
// event: { "$class": "org.namespace.BasicEvent", "eventId": "0000-0000-0000-000000#0" }
console.log(event);
});
}
In case, you wondered, an init function was called ahead of time that ensured the business network connection was initialized. async init() {
this.businessNetworkDefinition = await this.bizNetworkConnection.connect(cardname);
await this.bizNetworkConnection.connect(cardname);
//LOG.info('CommodityRegistry:
@DennisM330 could you try using Composer 0.19.4 ? A change to GRPC has broken the fabric node-sdk and that specifically breaks events. We have put a circumvention fix into 0.19.4 and this could be the problem you are experiencing
@davidkel Will do, is 0.19.4 out today?
@DennisM330 we released it a couple of days ago as soon as we found out
@davidkel Thanks will test it all out again under 0.19.4. I was aware of the GPRC change
@DennisM330 I hope it solves the problem, it definitely breaks event handling so I hope it will help.
@davidkel I created a little CommodityTrader app to go with the tutorials that is modeled off the DigitalProperty one. Mainly just to show how to do some things with queries in code and also nice to have a little sample composer-client app that mirrors the commoditytrader sample tutorial-network in the composer developer tutorials
How much slower should I expect Composer to be vs Fabric. On a test box I can get a few hundred Transactions per second in Fabric, but with Composer I can't get over 5. Is this typical? In both cases, they read 2 records and transfer "money" from one to the other, then write 2 records.
Everytime i export .bna from Playground, it does not include the script file.. is that normal?
Having some issues dynamically loading modules in Angular. This issue seems to be causing problems for several people so thought I would post my Stack Overflow question here - https://stackoverflow.com/questions/50164668/unable-to-dynamically-load-modules-in-angular-5-and-hyperledger-composer
How do I run my REST API and my Angular 4 project simultaneously?
Everytime I run either one, the terminal does not accept new commands UNTIL I exit the REST API or Angular 4?
[HPM] Error occurred while trying to proxy request /api/BuyingRealEstate from localhost:4200 to http://localhost:3000 (ECONNREFUSED) (https://nodejs.org/api/errors.html#errors_common_system_errors)
Solution to my above issue: do not export .bna file from composer. It somehow never includes the script file causing issues later when you want to run the logic. So best way is to copy the cto/js in your terminal relevant folders (steps 1-3 https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial )
@davidkel still have issue with no events received in 0.19.4
I've spent all day reading through the codebase trying to determine if it is possible to obtain a `BusinessNetworkDefinition` from an exported card?
```
async function getBusinessNetworkDefinitionFromCard() {
const card = await cardFromArchive('/Users/Zach/Desktop/admin@perishable-network.card');
let connProfile = card.getConnectionProfile();
const networkName = card.getBusinessNetworkName();
const cardUser = card.getUserName();
const cardSecret = card.getEnrollmentCredentials().secret;
connProfile.cardName = 'admin@perishable-network.card';
// Hyperledger Fabric connection
const networkConnection = await connectionProfileManager.connectWithData(connProfile, networkName, {cardName: 'admin@perishable-network.card'});
const businessNetworkConnection = new BusinessNetworkConnection();
const networkDef = businessNetworkConnection._connectionLogin(networkConnection, cardUser, cardSecret);
}
getBusinessNetworkDefinitionFromCard();
```
That's what I have written and I can get the fabric connection, but the last line of code throws the error:
```
Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '395f85ad21fecc25fd57e6789ec8f58b4d7c5d0aed31e48420c3aa36d69a1279', has not been registered
```
I've got a HLF network running on my machine and have imported this particular card so wondering what's going on?
@rthatcher i connecting to a locally installed playground , and use it to connect to my own fabric
how to i can issue identify user and create identify card, import card to wallet as composer-playground?
hi everyone, can anyone please tell me how to connect a fabric-node-sdk using the network started by business card admin@fabric-network
[ ](https://chat.hyperledger.org/channel/composer?msg=hg3hTqZBbaSC2wq9W) @MohitYadav2317 you may want to check this :) https://hyperledger.github.io/composer/latest/applications/node
[ ](https://chat.hyperledger.org/channel/composer?msg=N4oqj7ajWBgyZZGAb) and this as well https://github.com/hyperledger/fabric-samples/tree/release-1.1/balance-transfer
Hi,
I am getting the below error while deploying the business network using multi org env.
Error : Error trying install business network. Error: No valid responses from any peers.
Responses from attempted peer comms was an error : Error : 14 UNAVAILABLE : Connect Failed.
Quick background of my env:
I have a local ubuntu machine with Composer installed.
I have Multi Org setup installed with Hyperledger Fabric which includes 3 Orgs with 9 peers in 9 physical machines.
The connection profile has been used here to deploy the business network application from my local ubuntu machine.
Cards have been created sucessfully with the given Connection Profile and also imported successfully. Created 3 connection profiles for the 3 organizations. Also used TLS certs in the connection profiles.
Please guide me to resolve the issue.
Hi All
I have upgraded composer to version 0.19.4.But am unable to do npm innstall from my buisinessnetwork exported from composer playground ,to generate dist folder .I am getting following error
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/home/parvathy/.nvm/versions/node/v8.10.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack at emitTwo (events.js:126:13)
gyp ERR! stack at ChildProcess.emit (events.js:214:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Linux 4.4.0-121-generic
gyp ERR! command "/home/.nvm/versions/node/v8.10.0/bin/node" "/home/.nvm/versions/node/v8.10.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/parvathy/HyperledgerComposer/composer0.19.4/iwitness-network(6).bna_FILES/node_modules/node-report
gyp ERR! node -v v8.10.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm WARN iwitness-network@0.0.2-deploy.2 license should be a valid SPDX license expression
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.3 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-report@2.2.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-report@2.2.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!
My node version is v8.10.0
installed node-gyp.js
@rthatcher @mahoney1
Where do we check logs for composer in ubuntu?
@All,
// add the manufature details to registry
const manufactRegistry = await getParticipantRegistry(NS +'.Manufacture');
await manufactRegistry.addAll([manufacturer]);
Has joined the channel.
I am unable to run above code . it throws me Error: SyntaxError: Failed to parse null: Unexpected token (227:34)
unable to install composer on ubuntu bionic.any suggestions?
await is the problem
I dot know how to resolve the issue
can somebody help me on this?
[ ](https://chat.hyperledger.org/channel/composer?msg=ptExenR7eyFth4sZL) @zachgoll It isn't designed to work that way and using undocumented internals of the code is going to get you in trouble further down the line when that code changes. You can get the BusinessNetworkDefinition for a running network by connecting to it using the public API and/or CLI. This relies on you having imported a card that you can use to connect
@zachgoll The BusinessNetworkDefinition is returned to you from the call to `connect()`. For a code example, see the API reference at https://hyperledger.github.io/composer/latest/api/client-businessnetworkconnection#connect
Can we use more than one passport strategy in hyperledger composer ?? one passport-local strategy and one social login example google that is passport-google-oauth2 strategy..
Can we use more than one passport strategies in hyperledger composer ?? one passport-local strategy and one social login example google that is passport-google-oauth2 strategy..
@zachgoll, nearly there - your code with the `networkConnection` should be the `cardName` ..eg like `admin@perishable-network` .. as opposed to the card File).
@zachgoll, nearly there - your code with the `networkConnection` should be the `cardName` ..eg like `admin@perishable-network` .. as opposed to the card File.
[ ](https://chat.hyperledger.org/channel/composer?msg=dFFXRMnojkqh4mDtE) @diego.garzon https://hyperledger.github.io/composer/latest/reference/cto_language.html your relationship field in one asset will be to the identifier in the 'related' asset FYI - but - in your code it allows you to access all the attributes of that asset eg `relatedAsset.firstName` etc etc eg -> https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network see model file and lib/logic.js
[ ](https://chat.hyperledger.org/channel/composer?msg=6gwPpFK5rD3u9kmGp) @JackStrohm no, not normal, what version of Composer ? Can you post your code / bna here and a connection.json from your submitt business network participant ( or put on Stack Overflow as its more suited etc) so we can take a look
Hello, i have this error :
`Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 8 RESOURCE_EXHAUSTED: received trailing metadata size exceeds limit
Command failed`
Do someone know how fix this ?
[ ](https://chat.hyperledger.org/channel/composer?msg=aryM2g2Q8fDXzJHqM) @varinder no, should export - can you paste a screenshot of the file / directory structure of your existing exported bna? What version of Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=MFh7JqXGiSDqjsbnG) @RajathNandan Simply start your REST server ... then when you start your Angular generated app, say 'connect to an existing REST server' when prompted in the dialog. See Step Six here -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html
[ ](https://chat.hyperledger.org/channel/composer?msg=ywbZrKcSzNPRLscAA) @Poneey So a couple of things come to mind. The resource exhausted error implies that you might have run out of memory or disk space. Also - are you using a hosted Verdaccio npm registry or not? If the former, for you would need to load all the dependency tree package into it, there would be roughly 300+ npm packages etc
[ ](https://chat.hyperledger.org/channel/composer?msg=aBNPuiErtitq5Csty) @bamboo see https://hyperledger.github.io/composer/latest/playground/id-cards-playground
@mahoney1 I just updated composer from 19.2 to 19.4, i didn't change anything else. This change something for start network ?
@does your package.json in your BN have 'latest' for composer dependencies - one assumes you did a network install then network upgrade if your BN was there before (upgrade proc shown - step 3 and 4 - shown [here](https://hyperledger.github.io/composer/latest/tutorials/queries). Have you checked you have enough memory and disk space? Have you stood up a new Fabric or not - and is it up and running (not least, no response from any peers)? RESOURCE_EXHAUSTED points at something else as I say.
@does your package.json in your BN have 'latest' for composer dependencies - one assumes you did a network install then network upgrade if your BN was there before (upgrade proc shown - step 3 and 4 - shown [here](https://hyperledger.github.io/composer/latest/tutorials/queries) ). Have you checked you have enough memory and disk space? Have you stood up a new Fabric or not - and is it up and running (not least, no response from any peers)? RESOURCE_EXHAUSTED points at something else as I say.
@suva see examples here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/vehicle-manufacture-network/lib/script.js#L216 and here -> https://stackoverflow.com/questions/49002945/not-able-to-add-all-elements-of-an-array-of-new-resources-to-the-registry
@mahoney1 I deleted all images in docker and redownload files (startFabric.sh etc), replace bna file and deploy the "new" network
[ ](https://chat.hyperledger.org/channel/composer?msg=zfLZDZTB5CEh2Duuc) @Poneey right - would check your have enough memory/disk to begin with - not sure why pulling down a new Fabric / Composer level would cause this, other than something else changing in the environment (just saying)
@suva - await works fine - you can try your code in online Playground to check : what does `composer -v` return?
@suva - await works fine - you can try your code in online Playground to check : what does `composer -v` return?
@mahoney1 . Thanks.
@mahoney1 I'm using composer 0.19.3 - I'll put it up on Stack Overflow. Thanks for the response.
@pb did you mean composer network install - that would be the next thing to install the network to your new level of Composer ? (if you kept your existing Fabric and previous business network, you would need to upgrade it (incl changing package.json) as shown in Queries tutorial Step Three / Four https://hyperledger.github.io/composer/latest/tutorials/queries otherwise (newly stood-up Fabric: deploy it afresh) as shown here https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
Is there any sample example of contact calculation in a transaction?
@sgaddam see https://hyperledger.github.io/composer/latest/problems/diagnostics and here https://stackoverflow.com/questions/49987916/hyperledger-composer-not-getting-console-log-messages
[ ](https://chat.hyperledger.org/channel/composer?msg=Po3q2FxrphpQEbvfa) @JackStrohm before you do that, would suggest you install the latest Composer 0.19.4 (not least it has a grpc fix)
@suva - something like this - which you can find on the web https://github.com/IBM/Decentralized-Energy-Composer/blob/master/lib/transactions.js
Hey Guys
Anyone had any luck setting up the composer-rest-server with SAML OpenID?
I wanted passport-local in the beginning but I ended up installing a Keycloak server hoping it'll help me
[ ](https://chat.hyperledger.org/channel/composer?msg=mYFShNjzwWZjJbhkM) @Pranoti you can use 300+ Passport strategies - we've shown two strategies, to use with Composer in the docs. It mentions about strategies here -> https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication
[ ](https://chat.hyperledger.org/channel/composer?msg=55rdNq6RwBb9zg5vR) @mahoney1
Thanks alot
@mahoney1 how can i check memory ?
Is there any documentation for setting up multi node composer network
@shalinigpt Is this what you need? https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org
Has it ever happened to you guys that you leave your nodejs application running on a server but after some hours you get a `businessNetworkConnection()` error???
[ ](https://chat.hyperledger.org/channel/composer?msg=t2Pj9mZEAggRRphkG) @Poneey ? free -h ...... install htop .....depends on your OS etc.
@joaofguerreiro Is will work on 2 different Virtual machines right ?
@mahoney1 Yes but where i can find what memory use fabric ?
Clipboard - 4 mai 2018 10:58
@mahoney1 here memory before start network and during trying to start ..
hi all, how can i start composer rest server with multiple cards?
i tried https://hyperledger.github.io/composer/latest/integrating/enabling-multiuser.html
but things are not working
[ ](https://chat.hyperledger.org/channel/composer?msg=vkq2vmZ8h2qN6fqZi) @mahoney1 yes we can use any of these strategies.. but what im asking is, at the same time i want to use 2 passport strategies .? can we configure REST server to use 2 composer providers... is it possible?
Has joined the channel.
@Poneey - you should also check your free disk space as mentioned.
[ ](https://chat.hyperledger.org/channel/composer?msg=wXZS6P5dGfekfQGBP) @rthatcher
As per your suggestion ,i have updated my composer version to 0.19.4 but still i am getting this error
(node:30087) UnhandledPromiseRejectionWarning: Error: Failed to load connection profile hlfv1. Error was Error: ENOENT: no such file or directory, open '/home/parvathy/.composer-connection-profiles/hlfv1/connection.json'
at fs.readFile.then.catch (/home/HyperledgerComposer/composer0.19.4/event/node_modules/composer-common/lib/fsconnectionprofilestore.js:87:23)
[ ](https://chat.hyperledger.org/channel/composer?msg=wXZS6P5dGfekfQGBP) @rthatcher
As per your suggestion ,i have updated my composer version to 0.19.4 but still i am getting this error
(node:30087) UnhandledPromiseRejectionWarning: Error: Failed to load connection profile hlfv1. Error was Error: ENOENT: no such file or directory, open '/home/.composer-connection-profiles/hlfv1/connection.json'
at fs.readFile.then.catch (/home/HyperledgerComposer/composer0.19.4/event/node_modules/composer-common/lib/fsconnectionprofilestore.js:87:23)
@Poneey - as mentioned also in our install docs (as you've confirmed you installed Composer as root) - you should not use root or sudo as per here -> https://hyperledger.github.io/composer/latest/installing/installing-prereqs - captured in the table here https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues. I will get the other install doc https://hyperledger.github.io/composer/latest/installing/development-tools.html changed - as similar advice should also be provided here too explicitly. The problem is with npm - as mentioned in the link I provided.
I am getting the below error while deploying the business network using multi org env.
Error : Error trying install business network. Error: No valid responses from any peers.
Responses from attempted peer comms was an error : Error : 14 UNAVAILABLE : Connect Failed.
Quick background of my env:
I have a local ubuntu machine with Composer installed.
I have Multi Org setup installed with Hyperledger Fabric which includes 3 Orgs with 9 peers in 9 physical machines.
The connection profile has been used here to deploy the business network application from my local ubuntu machine.
Cards have been created sucessfully with the given Connection Profile and also imported successfully. Created 3 connection profiles for the 3 organizations. Also used TLS certs in the connection profiles.
Please guide me to resolve the issue.
@pb - the error with message `/home/.composer-connection-profiles/hlfv1/connection.json'` clearly suggests your using the 'old' method of biz network connection and beyond. We use business network cards to connect eg `let this.businessNetworkDefinition = await this.bizNetworkConnection.connect(cardName);` see code samples here https://hyperledger.github.io/composer/latest/managing/identity-issue.html (scroll down) and here https://medium.com/@aniketengg/hyperledger-composer-issue-identity-import-card-7e07af378447 and here for useful reference points
[ ](https://chat.hyperledger.org/channel/composer?msg=9hFC23aq9LzcaZpvw) @Pranoti no can't combine the two. You can just stand up two separate REST server instances to have multiple strategies - your apps should know which to connect to ?
hi everyone , so we have two options to write transaction logics, either in transaction processor in lib/script.js or we can just write cto file and write logic in a .js file like here https://hyperledger.github.io/composer/latest/applications/node
can we write all transaction processor functions in second way? just define a .cto file and assets and transactions can be executed from the .js file as mentioned here https://hyperledger.github.io/composer/latest/applications/node
[ ](https://chat.hyperledger.org/channel/composer?msg=H4ccseHYTYXuJhzu9) @Varun2887 you only `start` it with one card - but if you mean interact with multiple - see an example in the Google Auth tutorial (~ Step 10 onwards etc) -> https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
@sgaddam This error is usually a failure of Composer to connect to the Fabric - usually because the Fabric is not started (or fails to connect to the nodes you defined in your profile for the Peer Admin installing the BN to that Org's peer(s). IF you're saying the connection profile - which is part of the card - was used from your local machine, then the obvious thing to note is that its local, and you may need a different profile to connect to your peer(s) because you have a custom Fabric network and this is the composer channel, there's only such much I can suggest :-) Resolution: Start the fabric - then depending on how you started the Fabric, it may be necessary to repeat the composer network install command. We have a wiki table here https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#multiorg where you may find some useful guidance especially item 2 etc.
@mahoney1 Thank you. One question here: My Ubuntu is running on VirtualBox and the machine is behind proxy, any change required in this case?
@mahoney1 what is the different profile you are talking about? I have used 3 different profiles for three different orgs and three cards have been created for the 3 connection profiles respectively.
@sgaddam so you're asking me a networking question, the answer is 'possibly' if the Ubuntu vm does not have all the requisite ports open to conduct the Fabric network activities it would expect to perform between nodes such as peers etc etc. I might suggest to try out Fabric marbles (per the doc link I sent) first to check your network communicates between the Orgs first (you may have already verified it at a Fabric level). On Connection profile, 2 peer admin cards, for the 3 orgs is minimally required, correct to install the business network on their respective peers.
@sgaddam so you're asking me a networking question, the answer is 'possibly' if the Ubuntu vm does not have all the requisite ports open to conduct the Fabric network activities it would expect to perform between nodes such as multi-org peers etc etc. I might suggest to try out Fabric marbles (per the doc link I sent) first to check your network communicates between the Orgs first (you may have already verified it at a Fabric level). On Connection profile, 2 peer admin cards, for the 3 orgs is minimally required, correct to install the business network on their respective peers.
In default fabric (fabric-tools) with composer v0.19.1, If I modify the `BatchTimeOut` value in `configtx.yaml` and then start the fabric using `./startFabric.sh`. Will it consider the changes done in `configtx` file?
Hello..In default fabric (fabric-tools) with composer v0.19.1, If I modify the `BatchTimeOut` value in `configtx.yaml` and then start the fabric using `./startFabric.sh`. Will it consider the changes done in `configtx` file?
Hello @mahoney1 ..In default fabric (fabric-tools) with composer v0.19.1, If I modify the `BatchTimeOut` value in `configtx.yaml` and then start the fabric using `./startFabric.sh`. Will it consider the changes done in `configtx` file?
[ ](https://chat.hyperledger.org/channel/composer?msg=KLfhnQNQ8zESr4yEH) Okay thanks @mahoney1.. I guess I got my next experimental part here... Thank you!! :slight_smile:
[ ](https://chat.hyperledger.org/channel/composer?msg=KLfhnQNQ8zESr4yEH) Okay thanks @mahoney1 .. I guess I got my next experimental part here... Thank you!! :slight_smile:
Dear All, any update on composer issue no #983 ? Please help.
[ ](https://chat.hyperledger.org/channel/composer?msg=YQS2zaMS65SHvgb2a) @mahoney1 Yup, I know, it was just a question of efficiency, having to run through all the assets on each query or simply having a list ready
@AkshayJindal would need to update first to take effect see Fabric docs http://hyperledger-fabric.readthedocs.io/en/release-1.1/channel_update_tutorial.html and http://hyperledger-fabric.readthedocs.io/en/release-1.1/config_update.html
@mahoney1 i followed https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org.html
but when i am trying to create cards from the admin cards using playground i am getting error
[ ](https://chat.hyperledger.org/channel/composer?msg=jzkvxYR5JbnyGMRYY) @biksen not yet - this is still an open issue (request for attribute-level ACL rules)
[ ](https://chat.hyperledger.org/channel/composer?msg=L3Dx4QsdDAwdWHz9B) @mahoney1 Do you mean that I should switch to full fabric (v1.1.0) in order to see the effect? I think, this is due to the fact that in default fabric, `configtxgen` is already executed and generated the certificates and all. But in full fabric, it would happen again after modifications.. right?
@Varun2887 suggest to post it on Stack overflow with screenshots.
ok
@AkshayJindal no - you asked about how to update config - The configtxgen tool takes configtx.yaml as input - you will need to update the config block - I suspect `peer channel update ` - BatchTimeout might be channel wide, you need to check -> http://hyperledger-fabric.readthedocs.io/en/release-1.1/commands/peerchannel.html#peer-channel-update - or you can ask on #fabric or read the docs on how changes take effect in Fabric
@AkshayJindal no not suggesting - you asked about how to update config - The configtxgen tool takes configtx.yaml as input - you will need to update the config block - I suspect `peer channel update ` - BatchTimeout might be channel wide, you need to check -> http://hyperledger-fabric.readthedocs.io/en/release-1.1/commands/peerchannel.html#peer-channel-update - or you can ask on #fabric or read the docs on how changes take effect in Fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=ucWznpuQfj53NDkEB) @mahoney1 Okay.. Thanks a lot !!
[ ](https://chat.hyperledger.org/channel/composer?msg=oztcNH52B9kjZHifd) @mahoney1
Thanks .I tried it but now getting this error
error: [ChannelEventHub.js]: _checkConnection - connection is not in the ready state. state: UNKNOWN_STATE
[ ](https://chat.hyperledger.org/channel/composer?msg=oztcNH52B9kjZHifd) @mahoney1
Thanks .I tried it but now getting this error
error: [ChannelEventHub.js]: _checkConnection - connection is not in the ready state. state: UNKNOWN_STATE
This is my event.js file
var Subscriber =require('composer-events-subscriber')
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
//connect to the business network using the composer-client
businessNetworkConnection.connect(card).then((invokedTx, historianTx) => {
businessNetworkConnection = new BusinessNetworkConnection();
var card="admin@sample-network"
const subscriber = new Subscriber(businessNetwork)
//subscribe to event hub
const unsubscribe = subscriber.subscribe()
//listen for all transaction
subscriber.on('tx', (tx, historianTx)=> {
console.log('All events')
}).on('error', e => {
console.log('ERROR')
})
//unsubscribe on process exit
process.on('exit', () => unsubscribe())
})
[ ](https://chat.hyperledger.org/channel/composer?msg=oztcNH52B9kjZHifd) @mahoney1
Thanks .I tried it but now getting this error
error: [ChannelEventHub.js]: _checkConnection - connection is not in the ready state. state: UNKNOWN_STATE
This is my event.js file
var Subscriber =require('composer-events-subscriber')
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
//connect to the business network using the composer-client
businessNetworkConnection.connect(card).then((invokedTx, historianTx) => {
businessNetworkConnection = new BusinessNetworkConnection();
var card="admin@sample-network"
const subscriber = new Subscriber(businessNetwork)
//subscribe to event hub
const unsubscribe = subscriber.subscribe()
//listen for all transaction
subscriber.on('tx', (tx, historianTx)=> {
console.log('All events')
}).on('error', e => {
console.log('ERROR')
})
//unsubscribe on process exit
process.on('exit', () => unsubscribe())
})
[ ](https://chat.hyperledger.org/channel/composer?msg=oztcNH52B9kjZHifd) @mahoney1
Thanks .I tried it but now getting this error
error: [ChannelEventHub.js]: _checkConnection - connection is not in the ready state. state: UNKNOWN_STATE
This is my event.js file
var Subscriber =require('composer-events-subscriber')
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
//connect to the business network using the composer-client
businessNetworkConnection.connect(card).then((invokedTx, historianTx) => {
businessNetworkConnection = new BusinessNetworkConnection();
var card="admin@sample-network"
const subscriber = new Subscriber(businessNetwork)
//subscribe to event hub
const unsubscribe = subscriber.subscribe()
//listen for all transaction
subscriber.on('tx', (tx, historianTx)=> {
console.log('All events')
}).on('error', e => {
console.log('ERROR')
})
//unsubscribe on process exit
process.on('exit', () => unsubscribe())
})
Screenshot from 2018-05-04 13-47-55.png
Screenshot from 2018-05-04 13-47-55.png
is it the right path of download prerequisite file for ubuntu 16.04?
I am referring the path curl -O https://hyperledger.github.io/composer/prereqs-ubuntu.sh
Clipboard - May 4, 2018 5:53 PM
but getting error
I got it. I am choosing the wrong path
Has joined the channel.
@Hopes - I've just tried this model https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/models/pii.cto (which has parallel model definitions) and spun up a Composer REST server (v0.19.4) and it all worked fine. There should be no issue using the abstract in your event definition as you've done :-) so something else is up. Suggest to see if you deploy this PII sample in your network (you can do it through Playground) and - once deployed - it will have an admin@pii-network card that you can spin up a REST server with. If it doesn't give the same error - then clearly we would have to revisit your model file probably? Are you using Composer v0.19.4 (not that I'm aware this was an issue in recent releases)
@Hopes - I've just tried this model https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/models/pii.cto (which has parallel model definitions) and spun up a Composer REST server (v0.19.4) and it all worked fine. There should be no issue using the abstract in your event definition as you've done :-) - and indeed there are no complaints for `memberTransaction` - just `assetTransaction` on closer inspection - so something else is up. Suggest to see if you deploy this PII sample in your network (you can do it through Playground) independently and - once deployed - it will have an admin@pii-network card that you can spin up a REST server with. If it doesn't give the same error - then clearly we would have to revisit your model file probably - there is something not right with it I would guess (one abstract in event works, the other creates a problem doesn't seem right). Also assume you re-generated your archive and deployed /upgraded that that (in case you had any model def duplication earlier)
[ ](https://chat.hyperledger.org/channel/composer?msg=yrPFpJAnktrogtv7f) @Hopes - maybe the problem is that you are passing an Abstract class to the event.
[ ](https://chat.hyperledger.org/channel/composer?msg=tAzrLbXyzcgBwyFcy) @suva `curl -O https://hyperledger.github.io/composer/latest/prereqs-ubuntu.sh` - you need latest in the url
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi, I want to check inside my chain code if an item(string) exists within an array. I can't find any information on this, would anyone be able to help with this?
#composer Hi, I want to check inside my chain code if an item(string) exists within an array. I can't find any information on this, would anyone be able to help with this?
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=9Yn6HCg8ppRHnG2L9) @bestbeforetoday My idea was that a business network administrator could issue an external auditor a temporary "read only" card archive, and then that person could simply upload their card archive file in a front-end ui and instantly see information about a business network. I would agree this is the wrong way to approach it but was mostly just playing around to see what my options were.
[ ](https://chat.hyperledger.org/channel/composer?msg=XSJafdDq92Aso6xbj) @mahoney1 Ah that worked! So close yet so far...
grpc
[ ](https://chat.hyperledger.org/channel/composer?msg=Sw4YDzkLr7kNEhA5d) @mahoney1 It actually worked after I changed the name of the function :D thanks a lot for the reply
Screenshot from 2018-05-04 16-50-27.png
Has anyone here managed to connect the composer bna to IBM blockchain before, and can help me out with my previous question?
[ ](https://chat.hyperledger.org/channel/composer?msg=FmrEjGdT6iPZrhkKa) @rthatcher Thanks so much @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=7coZeSbfmLtfuCcg4) @Hopes - I think your problem could be related to an underlying problem with grpc, which was upgraded recently and had a bad knock on effect with Composer. The problems were seen with v0.19.x stream, and a temporary fix was put in place. The same fix was not put in v018.1 which is what you need to use for IBM Blockchain Platform Starter Plan. You may be able to fix it manually after reading the issue in the link below, but I think the Starter Plan is being upgraded soon to work with Fabric 1.1 and Composer v0.19.
(It might be a different problem - but it looks like the grpc issue.)
https://github.com/hyperledger/composer/issues/3944
Hello Have anyone how to issue a new network admin identity for an already deployed network
Hello, Have anyone know how to issue a new network admin identity for an already deployed network
[ ](https://chat.hyperledger.org/channel/composer?msg=PxSp9XLiMuRZtjmkH) @eguevarar - These four example commands (extracted from the Google OAuth REST Server Tutorial) should show you how - assuming you still have the original Network Admin card
```
composer participant add -c admin@trade-network -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"restadmin"}'
composer identity issue -c admin@trade-network -f restadmin.card -u restadmin -a "resource:org.hyperledger.composer.system.NetworkAdmin#restadmin"
composer card import -f restadmin.card
composer network ping -c restadmin@trade-network
```
[ ](https://chat.hyperledger.org/channel/composer?msg=83reXqAo4zHhGSMmQ) @rthatcher How do I change the grpc version then?
@Hopes - there is some advice on this in the comments of the issue
@Hopes - there is some advice on this in the comments of the issue- I think Matthew White specifically mentions 18.1
Hello - I've recently started getting an error when trying to issue a 'composer network start' command. The error is:
Error executing chaincode: premature execution - chaincode
I have successfully deployed new networks before, not sure how to resolve this or where to even look next.
[ ](https://chat.hyperledger.org/channel/composer?msg=N9cEjEjzdY765quyn) @jfodale - we have seen that error :-) - what version of Composer and Fabric are you running ?
Hello! I have a problem regarding the recent grpc issue. I updated my global composer-cli to version 0.19.4, I redownloaded the docker images, and I deleted the node_modules folder of my app to install them again. But still when I try to deploy my application, the ccenv container log shows me that it attempts to install grpc@1.11.2, and fails. Where does this grpc package come from, and how do I suppress it?
hi, anyone has any luck deploying composer-rest-server on IBMcloud with Kubernetes ?
[ ](https://chat.hyperledger.org/channel/composer?msg=vPoEvoBTLMoZbjDPE) @MKhabrat - after you removed the node_modules folder of your app, did you also check you package.json ? perhaps it contains some ref to composer 19.3 or even grpc ?
how can i use fabric commands to play nice with composer? let's say i want to redeploy my network with new order config, it will restart all the containers and hence all the data on the blockchain and world state will be lost
what is the best approach to handle such cases
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=tgiqW5WZJL5cuap4c) @shabscan - I have not tested it for a while, but the last time I checked it it was OK. Are you following this document? https://ibm-blockchain.github.io/interacting/
The important thing is to be sure to start the rest server with the Network Admin card, not the PeerAdmin card.
[ ](https://chat.hyperledger.org/channel/composer?msg=hTAebRXcwaKNJbaq6) @rthatcher I'm pretty sure it's 19.1 composer and 1.1 fabric, though I will double check later this afternoon
@jfodale - I have seen that error a couple of times when repeating a `composer network start` after a failure. You could try updating the version of your network in the package.json file and then use composer network install, and composer network upgrade. Otherwise restart the fabric might help.
[ ](https://chat.hyperledger.org/channel/composer?msg=SSnocBa9rCJb6Cnbj) @rthatcher I used the Admin card here's the log : ./create/create_composer-rest-server.sh --business-network-card ~/Downloads/admin\(1\).card
Preparing yaml file for create composer-rest-server
sed: -e expression #1, char 20: unknown option to `s'
Creating composer-rest-server pod
Running: kubectl create -f /home/hyperledger/ibm-container-service/cs-offerings/scripts/../kube-configs/composer-rest-server.yaml
error: no objects passed to create
Composer rest server created successfully
Preparing yaml file for create composer-rest-server
Creating composer-rest-server pod
Running: kubectl create -f /home/hyperledger/ibm-container-service/cs-offerings/scripts/../kube-configs/composer-rest-server.yaml
deployment.extensions "composer-rest-server" created
Composer rest server created successfully
@MKhabrat there isn't a problem with the ccenv container using grpc 1.11.2
@MKhabrat there isn't a problem with the ccenv container using grpc 1.11.2 and it is mandatory to use for building the chaincode image. What error are you seeing ?
[ ](https://chat.hyperledger.org/channel/composer?msg=SLMCf9Fv53tBaCZEd) @rthatcher Thanks for your answer. Now I'm facing this problem. I have success installing my network via composer (composer network install --card PeerAdmin@innova-acl-network --archiveFile ./dist/innova-acl-network@0.0.4.bna) but when I try to start this (composer network start --networkName innova-acl-network --networkVersion 0.0.4 --networkAdmin admin --networkAdminEnrollSecret Innova123* --card PeerAdmin@innova-acl-network --file innovanetworkadmin.card) The the process take some time, and then fails saying timeout, I've seen some guys changing this values (- CORE_CHAINCODE_DEPLOYTIMEOUT=5000s
- CORE_CHAINCODE_STARTUPTIMEOUT=5000s) but you can see mines
Hello @davidkel ca you point me out what stuff composer do when I run (composer network start ...) the process take sometime and then fails setting timeout or something like chaincode is being launched. Is there any process that I can do manually to install and instantiate that chaincode and create the container (dev-peer0.....) manually??
when you install composer-cli the command is just "composer"
i keep getting these two errors as i install the different composer components and could not find a fix. Can anyone help?
npm WARN composer-wallet-filesystem@0.19.4 requires a peer of composer-common@0.19.3 but none is installed. You must install peer dependencies yourself.
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
everything was quite smooth until:
~/fabric-dev-servers$./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher
[ ](https://chat.hyperledger.org/channel/composer?msg=5AgkXMKFQSh8775gy) @youssefg did you installed composer-cli with -g option
yes i did
Sorry but that kind of things I have not face it
don't know whta is happening
try to install npm install -g composer-common manually just as is pointing out the message
Screen Shot 2018-05-04 at 22.34.47.png
Clipboard - 4 de mayo de 2018 15:39
Screen Shot 2018-05-04 at 22.40.58.png
try (composer --version)
from the root folder i get v0.19.4
but from fabric-dev-servers i get command not found
then you should add "~/.nvm/versions/node/v8.10.0/bin/" to your path replace v8.10.0 with your own version
export PATH=~/.nvm/versions/node/v8.10.0/bin/:$PATH
and try again
thanks a lot eguevarar
it seems that composer is only working in the terminal window where i installed it
any other terminal window does not even see composer installed
i was able to run the createPeerAdminCard but only from the terminal window where i installed composer
how could i connect to the composer rest server from outside the Kubernetes deployment on IBM Cloud ? I tried node
Has joined the channel.
Hello guys. Hope I'm in the right place.
I'm trying to give a certain type of participant permissions to create assets. With this in mind I wrote this rule:
`rule APAddAsset {
description: "Allow AP to create new Assets"
participant (p): "org.acme.model.AP"
operation: CREATE
resource (r): "org.acme.model.Attr"
transaction (tx): "org.hyperledger.composer.system.AddAsset"
condition: (r.issuer.getIdentifier() == p.getIdentifier())
action: ALLOW
}`
Hello guys. Hope I'm in the right place.
I'm trying to give a certain type of participant permissions to create assets. With this in mind I wrote this rule:
``rule APAddAsset {
description: "Allow AP to create new Assets"
participant (p): "org.acme.model.AP"
operation: CREATE
resource (r): "org.acme.model.Attr"
transaction (tx): "org.hyperledger.composer.system.AddAsset"
condition: (r.issuer.getIdentifier() == p.getIdentifier())
action: ALLOW
}``
Hello guys. Hope I'm in the right place.
I'm trying to give a certain type of participant permissions to create assets. With this in mind I wrote this rule:
rule APAddAsset {
description: "Allow AP to create new Assets"
participant (p): "org.acme.model.AP"
operation: CREATE
resource (r): "org.acme.model.Attr"
transaction (tx): "org.hyperledger.composer.system.AddAsset"
condition: (r.issuer.getIdentifier() == p.getIdentifier())
action: ALLOW
}``
Hello guys. Hope I'm in the right place.
I'm trying to give a certain type of participant permissions to create assets. With this in mind I wrote this rule:
`````
rule APAddAsset {
description: "Allow AP to create new Assets"
participant (p): "org.acme.model.AP"
operation: CREATE
resource (r): "org.acme.model.Attr"
transaction (tx): "org.hyperledger.composer.system.AddAsset"
condition: (r.issuer.getIdentifier() == p.getIdentifier())
action: ALLOW
}
```
Hello guys. Hope I'm in the right place.
I'm trying to give a certain type of participant permissions to create assets. With this in mind I wrote this rule:
```
rule APAddAsset {
description: "Allow AP to create new Assets"
participant (p): "org.acme.model.AP"
operation: CREATE
resource (r): "org.acme.model.Attr"
transaction (tx): "org.hyperledger.composer.system.AddAsset"
condition: (r.issuer.getIdentifier() == p.getIdentifier())
action: ALLOW
}
```
Hello guys. Hope I'm in the right place.
I'm trying to give a certain type of participant permissions to create assets. With this in mind I wrote this rule:
```rule APAddAsset {
description: "Allow AP to create new Assets"
participant (p): "org.acme.model.AP"
operation: CREATE
resource (r): "org.acme.model.Attr"
transaction (tx): "org.hyperledger.composer.system.AddAsset"
condition: (r.issuer.getIdentifier() == p.getIdentifier())
action: ALLOW
}
```
when testing i get an error message saying that the participant has no create permissions relative to the asset
I've installed a network using composer on the IBM Cloud(starter-plan). I'd like to bring up a REST server as an app on the IBM cloud also. Can someone point me to docs or examples for how to get that working?
@robertbrown You could always start it in a Docker container and use this image - https://hub.docker.com/r/hyperledger/composer-rest-server/
[ ](https://chat.hyperledger.org/channel/composer?msg=grBnARzeGBHGMD6ic) @eguevarar I'm having the same issue. When I try to invoke 'composer network start', it hangs and eventually times out. This is a new problem, I've successfully deployed new networks in the past.
@toipacoelho Where is this rule located in your permissions.acl file? Do you have any other rules in that file?
yes, I have multiple... this rule is on top of the default ones for the admin and below the others
@toipacoelho the permissions file reads from the top of the file downwards, and the second it finds a rule applicable to the participant in question, it reads that rule and exits. So if you have a rule that applies to `AP` participant *above* the rule that you posted here, then it will process with that rule. Try putting this rule at the very top of your file and see what happens.
Ok. I'll try that tomorrow. Thanks for the tips
No problem!
[ ](https://chat.hyperledger.org/channel/composer?msg=umawa8yjHqjmavpMm) @rthatcher I followed the commands.. However, I still get the same error. Starting to lose hope :D
[ ](https://chat.hyperledger.org/channel/composer?msg=QvJNcdtqeergAteCu) So, after installing and uninstalling grpc.. and trying out many different versions, the only thing that worked with me to deploy the bna on the IBM blockchain network is to actually comment out the lines related to the getConnectivity function, after I did that, it worked.
Has joined the channel.
hi
is there way or example available for multichannel and multinode using hyperledger composer
@npc0405 https://chaincodedevs.com/showthread.php?tid=26
I have a question, why does it take so long to start a network?
Starting business network definition. This may take a minute...
It seems there's a lot of network activity during this process
Is a way to speed up this?
Has joined the channel.
Has joined the channel.
Installed everything from prerequisite to composer and then fabric. but while creating admin card throwing error: "No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher
"
Even though this 'composer-cli at v0.19' installed. Followed document: https://hyperledger.github.io/composer/latest/installing/development-tools.html#controlling-your-dev-environment, anyone faced this problem?
Os: Ubuntu 16.04
Doing everything local installation
[ ](https://chat.hyperledger.org/channel/composer?msg=raZeDsWuCkj8npbPx) @UmeshRajani what is your node version?
6.11.3
Yup
[ ](https://chat.hyperledger.org/channel/composer?msg=pfdRdo4DnPbW8xg2o) @UmeshRajani
You need to upgrade your node version to 8.x
Ok Thanks @IceFox will check this.
[ ](https://chat.hyperledger.org/channel/composer?msg=mWDT22kCARkBWiwTM) @IceFox Mine has been timing out on network starts. I've read that it is because it is getting NPM requirements for the docker it is creating. I've also read you can create a local npm repository to speed up the process (and then feed it in as a property in your npmrc file), but I haven't tried it yet.
local npm repository
That sounds like a good idea
CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=composer_default
I found this setting in the example code of hyperledger composer
I'm wondering why we set this to "composer_default"?
Has joined the channel.
composer network install --archiveFile test-bank@0.0.1.bna --card PeerAdmin@h1fv1
✖ Installing business network. This may take a minute...
Error: Card not found: PeerAdmin@h1fv1
Command failed
composer network install --archiveFile test-bank@0.0.1.bna --card PeerAdmin@h1fv1
✖ Installing business network. This may take a minute...
Error: Card not found: PeerAdmin@h1fv1
Command failed
composer network install --archiveFile test-bank@0.0.1.bna --card PeerAdmin@h1fv1
✖ Installing business network. This may take a minute...
Error: Card not found: PeerAdmin@h1fv1
Command failed
any solution for this error!!!!1
[ ](https://chat.hyperledger.org/channel/composer?msg=4ZrgcQN25BqbiPtpC) @cloudtester Have you import the card "PeerAdmin@h1fv1" ?
Try "composer card import -f PeerAdmin@h1fv1.card"
[ ](https://chat.hyperledger.org/channel/composer?msg=H8uH2xhraohaidMC4) @IceFox error unable to read card file
composer card list
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Has joined the channel.
Is it possible to use passport-local for authentication in composer-rest-server instead of OAuth just as drop in ? Can anybody elaborate on how to do this ? Thanks
@cloudtester did you import the card as @IceFox suggested? What does `composer card list` return for you?
[ ](https://chat.hyperledger.org/channel/composer?msg=ypQnGBYCeNHsx9RyD) @zachgoll composer card import -f PeerAdmin@h1fv1.card
Error: Unable to read card file: /home/ubuntu/PeerAdmin@h1fv1.card
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=SahhNWaYjTnYpGvET) @IceFox In `0.19.x` release, the way which the chaincode is installed on peers has changed. From the release notes: "Business networks are now deployed within Hyperledger Fabric 'as chaincode' meaning that the business network (rather than Composer runtime) can be agreed by all parties and signed, using a similar management model to non-Composer chaincode. As a result of this, the deployment and update process has changed."
[ ](https://chat.hyperledger.org/channel/composer?msg=R5yitNxgeJKGjhYN4) yes!! that returns peeradmin card.
I've added participant card in network and also imported via composer and when i try to inspect that card under `.card` folder(which has default home location on machine) i found nothing under `credentials` though `connection.json` and `metadata.json` is fine
I've added participant card in network and also imported via composer and when i try to inspect that card under `.card` folder(which has default home location on machine) i found nothing under `credentials` though `connection.json` and `metadata.json` is fine
(composer version - v0.19.4)
so is this okay or something went wrong there?
@cloudtester what is your node and composer version? Also, have you tried deleting the cardstore directory and restarting fabric yet?
[ ](https://chat.hyperledger.org/channel/composer?msg=emcwwQRg6qQirhZ9i) @zachgoll node -v
v8.11.1
ubuntu@ip-172-31-28-90:~$ composer -v
v0.19.4
Has joined the channel.
Hi all, Im working on a Hyperledger Composer project, and am stuck. Can someone help me out?
Error: proposal failed (err: rpc error: code = Unknown desc = chaincode error (status: 500, message: Cannot create ledger from genesis block, due to LedgerID already exists))
Iam getting this error when trying to start fabric. (I have followed the instructions given on http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#a-note-on-data-persistence for modifying docker-compose.yml to add persistence in the network)
Has joined the channel.
@cloudtester I setup a Ubuntu LTS 0.16 machine and installed my network fine. Looks like your versions are okay, but maybe try killing all your Docker containers, pulling the latest `fabric-tools`, and then restarting the network. Sounds mundane but usually will do the trick.
@cloudtester I setup a Ubuntu LTS 0.16 machine and installed my network fine. Looks like your versions are okay, but maybe try killing all your Docker containers, pulling the latest `fabric-tools`, and then restarting the network. Sounds mundane but usually will do the trick.
If you cannot afford to kill the Docker containers for whatever reason, try `rm -rf ~/.composer/cards/PeerAdmin@hlfv1`, and then re-run the `fabric-tools/createPeerAdmin.sh` script.
@zachgoll ever seen this issue? Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error
status: 500, message: cannot get package for chaincode
@mgcox Yes I have. Check out this issue - https://github.com/hyperledger/composer/issues/3731#issuecomment-383385787
Also may reference this StackOverflow post - https://stackoverflow.com/questions/50064302/composer-network-start-no-valid-responses-from-any-peers-response-from-attempt
Seems to be a problem with the Docker network. You can always run `docker network prune` to make sure you don't have stale networks. Once I upgraded to `0.19.4` I stopped having this issue though!
hmm... i didnt even think i was using docker locally when using composer cli to deploy to an ibm network
and it looks like i have the network installed already "on all peers"
just seems like it is a matter of starting it
Has joined the channel.
`composer network ping` failed for `Error: Error trying to ping. SyntaxError: Unexpected end of JSON input`. why?
composer 0.19.4 is used
composer 0.19.4 is used.
Can anybody point me to a list of all of the environment variables, files and data sources that composer 0.13.0 can read from for configuration?
I'm trying to unravel a production issue, and I don't have a connection.json on composer but I do have a COMPOSER_CONFIG environment variable set with what looks like connection profile. So I'd really just like a full list of every configuration element so I can start to grep through code and understand what the heck is going on
It looks like the COMPOSER_CONFIG environment variable is removed from a bunch of places between 0.13.0 and the latest master
I'm wondering what replaced it if anything?
Also I'm getting this:
```
2018-05-06T03:17:06.989Z ERROR FSConnectionProfileStore:load() Failed to loaded connection profile hlfv1 {"0":{"stack":["{Error}ENOENT: no such file or directory, open '/home/composer/.composer-
connection-profiles/hlfv1/connection.json' Error: ENOENT: no such file or directory, open '/home/composer/.composer-connection-profiles/hlfv1/connection.json'"," at Error (native)"]}}$
```
Which is because there's no file connection.json in the composer docker container
And I'm like, am I being asked to put a config file in a docker container instead of using an environment variable like a good 12 factor app developer? Or am I missing something?
so I set DEBUG to be `composer:*` and it helped a little bit I'm pretty sure the connection worked.
So the error log is just wrong (in the sense that it's not an error to put connection config in one of the available places but not the other)
Has left the channel.
Has joined the channel.
I have a question about the query language for composer
I have a where condition like below
WHERE (owner.staffId == _$staffId)
I want to filter by the owner's staffId
But After I try, it gives me nothing
I can't find the docs on how to do this
Can anybody help me out with my github issue? https://github.com/hyperledger/composer/issues/3958
when using the composer command line for deploying a network, I should supply credentials for that. Where I find these credentials? how I retrieve them or create new ones?
Has joined the channel.
Hello there. Sorry for a newbee question. I'm trying to use composer-common, composer-client and composer-admin NPM modules. Is there any Documentation available? Couldn't find it on the github page.
[ ](https://chat.hyperledger.org/channel/composer?msg=A8qG5wByREF6kpZxw) @aakzubaidi they should be in the crypto-config folders generated by the tool "cryptogen".
@hardik047 https://hyperledger.github.io/composer/latest/api/allData
@TuckerSiegel what build of Linux are you using?
@zachgoll Ubuntu 16.04 on aws
@TuckerSiegel Are you just experimenting around trying to get it working, or are you trying to preserve an active network?
I updated to 0.19.4, trying to get my existing network back up. I just reverted to an old snapshot on AWS. Testing now to see if it works, then I'll update and see what happens
You had mentioned this all happened after running a python script. What is your default version of python when you run `python -v`?
You had mentioned this all happened after running a python script. What is your default version of python when you run `python --version`?
3.5
The python script is one I wrote to test it
That might be an issue as I know Composer requires `2.7.x`. Have you tried setting your default version to `2.7`?
Ok I'll try that.
@zachgoll I'm on 2.7 and transactions still fail
When you initially setup the machine, did you use the `./prereqs-ubuntu.sh` script?
Hi ... I am able to fry a composer smart contract -- but not the composer run time or the fabric -- with great ease and I am wondering if anyone has some idea what this error might mean: Error: No connection found with ID 4a1a8c38-9455-48a5-bd60-c639de63dd13 ... this on Composer 162. (IBM Container Service on a lite k8s cluster on IBM cloud).
The scenario: an IoT client running traffic of various intensity into a blockchain (long term tests at 1/s and short term tests at 5/s or 10/s both seem to cause the issue). I use a burst tester that sends messages through a client with a queue, and on the backend dequeues 20 messages at a time (which we have found to be the sweet spot for the configuration mentioned above *with or without CouchDB seems to make no difference to the issue*). So these messages in flight tend to be committed within about 2 to 3 seconds average. In the background, we use the node SDK to poll blocks and create our own event streams to listening clients. So we are hitting the system from two directions and things work out quite nicely on our newest clients.
The problem is that, after testing for hours, when I then just let the system sit it becomes unresponsive 4 or 5 hours later. And throws errors when connecting or sometimes just when trying to run transactions. Either way, the contract is unusable. I used to think this was the fabric itself frying, until I tried deploying another copy of our business network into composer and it worked. I have a system right now with three dead contracts and am wondering if this is a known issue?
@zachgoll yeah
@zachgoll can we move this to a pm
@zachgoll , Thanks a lot :relaxed: :thumbsup:
I'm having problems with timeouts when executing 'composer network start' commands after 19.0. I'm trying the fixes listed on the composer github (https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues - see REQUEST_TIMEOUT section). I've added both timeout properties to my docker-compose.yml file and increased the timeout to 2400s, but the 'composer network start' command still fails after just 5 minutes.
I've tried the 'docker-compose stop' and 'docker-compose start' commands as the article suggests, and I've done full fabric teardowns, but it still times out after 5 minutes. Any idea what I'm doing wrong?
Getting this error when trying to issue 'composer network start' commands:
Response from attempted peer comms was an error: Error: 8 RESOURCE_EXHAUSTED: received trailing metadata size exceeds limit
Where can I find this limit and increase it? Or is it telling me I don't have enough system memory?
I'm running with 4GB ram
Has joined the channel.
'$sysregistries' does not exist
what does it mean?
Hi. Has anybody tried working on hyperledger composer on multiple hosts ? I am trying to follow this tutorial : https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f and I get an error on "Testing the network, instantiating the network on peer 0" . If there is any other documentation of a multi host implementation, kindly share.
Hi,
can someone tell me if the "historian record" should be always part of an composer application or is this complementary feature? What your opinion on ot?
Hello All, How can I get the last ID from participant/asset table using query
Has joined the channel.
Anyone knows a fix to `esponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)` issue? My chain code was fine one month plus ago. This problem is new to me and I can't trace the issue.
@davidkel hi, apparently any time new chaincode is deployed one needs to increase the business network version number. isn't that a little overkill for the development routine?
hi, does anybody face this error when start `composer-rest-server`:
```Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. SyntaxError: Unexpected end of JSON input
It will be retried for the next request.
Exception: Error: Error trying to ping. SyntaxError: Unexpected end of JSON input
Error: Error trying to ping. SyntaxError: Unexpected end of JSON input
at _checkRuntimeVersions.then.catch (/home/allen/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:789:34)
at
Hi, I am not able to filter transaction using available fields. Its returning all records ignoring my filter.
filter.png
Can somebody suggest me how can I use fields to filter transaction records
@d8bhatta i did not use filter yet. you test `{"selector":{"agreement_id":"a1"}}`.
@d8bhatta i did not use filter yet. you may test `{"selector":{"agreement_id":"a1"}}`.
@d8bhatta i did not use filter yet. you may test with `{"selector":{"agreement_id":"a1"}}`.
ok..thanks @bh4rtp, how do you normally get to the required transaction records?
@d8bhatta in the chaincode, i use json selector.
ok. @bh4rtp Is there any such documentation to reference?
you can search `mangodb json selector`. it has standard specifications.
ok..cool..Will try
{"selector":{"agreement_id":"a1"}} returns all records
that means records are not filtered @bh4rtp
[ ](https://chat.hyperledger.org/channel/composer?msg=dphrE2s8JqgdnXt9B) @mahoney1 I tried to do as it says there, but on the whole I got the HTTP authorization and that not working because, as I understand, there is no database in which this login and password will be checked. Is there some way for the most local-auth to simply have a handle, where the post could be requested to throw in a username and password and it would be authorized?
Has joined the channel.
@d8bhatta how about using `{\"selector\":{\"agreement_id\":\"a1\"}}`?
Can I access an asset in a created asset and fetch the value from the registry?
I am using const Order = await getAssetRegistry(NS + '.Order');
alert(order.expecteddeliverydate);
its showing me undefined
Hi
Can we do user registration on REST server anyhow?
[ ](https://chat.hyperledger.org/channel/composer?msg=bpStJu2eADz2DhWL9) @rthatcher Sorry for the long reply, couldn't access chat over the weekend. I checked package.json - it has all the composer depenedcies versions listed as "^0.19.1". I checked the newly installed node_modules folder, and all the composer dependecies are 0.19.4
Has joined the channel.
where can i find in-depth explanation of hyperledger composer? please guide me to some resources
Has joined the channel.
Hi Guys,
I am getting an error when a trying to create a card for the peer admin user with the command composer card create : [Invalid Argument Exception] "Command card is not defined"
Can anybody help me with that?
how do i make backup of blockchain data using composer? i think we lose the flexibility of hyperledger fabric this way, is there any way to get flexibility of fabric smart contracts and docker configs with sdk to composer fabric combination?
Is there any workaround for Circular reference array doesn't work for multiple relationships #3934
How can i use a single composer-rest-server to have multiple cards associated with it?
Clipboard - May 7, 2018 9:54 AM
Clipboard - May 7, 2018 9:54 AM
@davidkel I believe I found my issue from last week where I could not receive events from my composer client app. I found that I needed to do an export of FABRIC_VERSION=hlfv11 first and then I could receive my events
has anyone solved the grpc issue when running 'composer network start'? I've tried adding an older version of grpc as a dependency inside the composer-cli and composer-rest-server modules (as suggested here: https://github.com/hyperledger/composer/issues/3944), but no luck - it still dies and tries to install grpc 1.11.3 every time
```status: 500, message: instantiation policy violation: signature set did not satisfy policy```
any clues on the possible cause for this error logged by the "network upgrade" operation?
hello @mahoney1 ,could you please tell me how can import the rest api definition to AWS API gateway?
Works Hyperledger Composer on Ubuntu 18.04?
hello @nekyl according ubuntu pre requisited https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html#ubuntu these are the supported Operating Systems: Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit)
[ ](https://chat.hyperledger.org/channel/composer?msg=ZzGCHgot5TY7fsjXf) Any updates on this.
when using composer-rest-server to route `system/identities/issue` , in json data has field `options: {}`. What should i fill in options to prevent new card can create new user?
when using composer-rest-server at route `system/identities/issue` , in json data has field `options: {}`. What should i fill in options to prevent new card can create new user?
some people can use new card import in wallet and create new participant.
[ ](https://chat.hyperledger.org/channel/composer?msg=eZYrhdbPStym4r46c) @jfodale Yes its a problem. Now I managed to deploy the network, but with the same erratic behavior. If you ask the answer I cant tell you one, because I don't know how it started. I just set the env vars up and changed the registry to a local one in the ccenv. First time I tried to start the network after a couple of minutes it failed with time out, then I tried to start it again, and a new error came out "chaincode is been launched", then I waited for 10 mins and tried again and it finally deployed the network. Other thing the credentials on the generated card only accept admin:adminpw pair, I tried to change the pass without success, I maybe don't understand that user functions or if it's linked with the peer admin or the criptoconfig stuff generated by default
Has joined the channel.
Error: Error getting endorser client channel: endorser client failed to connect to peer0.org1.example.com:7051: failed to create new connection: tls: first record does not look like a TLS handshake Can someone help me out on this
when using composer-rest-server `system/identities/issue`, what type of data response? and how to create card file from this data?
Has joined the channel.
how can I transfer ownership from one participant to another when there in different groups of participants
This is a model design question - I want to have a token that is transferred for purchases of food and issued as payment for services --- I am thinking a token could be an asset having an owner and the balance the owner holds would be the number of tokens -- Alternatively I could have participants own wallets with balances of tokens and not have tokens as assets - the transactions would simply be transfers between wallets - this is my understanding of the way bitcoin works -- Any thoughts on designing a token based system with Fabric/Composer
Hi, what is a standard process of deploying a network developed on docker to a production environment?
By production, I mean Virtual Machines in the cloud where I have to configure everything myself.
hi, are there any changes in `connection.json` after updated composer from 0.19.0 to 0.19.4? i am facing an error saying `unexpected end of JSON input`.
Has joined the channel.
Hi,
maybe someone her can answer may question. If define a network with hyperledger composer and there different access rules according to the role of nodes. Does the nodes that have no access to an asset still a physcial copy of it?
Thank you!
For those interested I created a very simple escrow payment mimicking smart contract in Hyperledger composer. Not for the real world but good for study purposes. For me personally I mostly created it to see how easily unit testable everything is as the smart contract is as straight forward is things can be. https://github.com/ypeckstadt/hyperledger-composer-escrow-payment
Hi all , I have subscribed starter version of blockchain in ibm bluemix. but unable to run and instatiate bna file . any one have done similar things .
@sstone1 any idea, is starter plan is only intended to run go chain code or is there any way to do that.
Hello, is there a concepto of "dictionary" in hyperledger composer CTOs? (modeling)
*concept
without adding new relationships
[ ](https://chat.hyperledger.org/channel/composer?msg=gBuY3nd54Yo2dJAX2) @FlorentinoSainz - There are concepts, and enumerated types. Can you give an example of what you are trying to do ?
Does anybody know how to make a simple implementation of ERC20 in composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=kmoNH4dmYwKt62gqw) @sghosh2 - you can install and start a BNA with Starter Plan. If you have a particular problem I would suggest logging a ticket with IBM Cloud. I think that currently v0.18.1 of Composer is required for Starter Plan, but there are some install problems because of a 'grpc' error described here: https://github.com/hyperledger/composer/issues/3944
I think that Starter Plan is going to be upgraded to Fabric 1.1GA soon, so after that Composer v0.19.x will be required.
@rthatcher I just want to have an array of "Participants" (the ones who are able to interact with it) in one of my "Assets", but I want to be able to search it, I can work with an array, but it would be good If i had dictionaries for easy lookups etc....
[ ](https://chat.hyperledger.org/channel/composer?msg=tSd9rsEofuCxRaY8D) @MartinKrmer - All peers have a copy of the Ledger and state database. The ACLs apply to Participants bound to IDs from the CA.
[ ](https://chat.hyperledger.org/channel/composer?msg=sqRL8NnrcmYc4nLJJ) @bh4rtp - the format of the connection.json has not changed as far as I know.
@rthatcher thanks. i use the latest 1.2.0 master branch fabric, and face the `composer network ping` and `composer-rest-server` start error issues. please see https://chat.hyperledger.org/channel/composer?msg=bLbccZFNKwQKqxskm
Hi Guys,
I am getting an error when a trying to create a card for the peer admin user with the command composer card create : [Invalid Argument Exception] "Command card is not defined"
Can anybody help me with that?
[ ](https://chat.hyperledger.org/channel/composer?msg=wrE6qeXtYdSmcZLnq) @bh4rtp - I have not seen anything of Fabric 1.2.0 . Composer support Fabric 1.1GA. If you get the same error with 1.1 then you may have a 'corrupt' file. You could try and copy a connection.json from another card on the same network that is working.
[ ](https://chat.hyperledger.org/channel/composer?msg=4qiDEk8BqRvDMYRF3) @lipoplus - can you just type `composer` and then `composer -v` and then share the output
@rthatcher ok, i will pull fabric 1.1.0 and test with composer 0.19.4.
[ ](https://chat.hyperledger.org/channel/composer?msg=oYDXk7QdE9B5qMtFx) @FlorentinoSainz so why not use something like `indexOf` to find the participant in an array of relationships (participant) ? Not sure if that list is to be maintained outside of the BN, if so, you can do a [call-out](https://hyperledger.github.io/composer/latest/integrating/call-out)
Has joined the channel.
@mahoney1 I can, I mean, it's not a deal breaker for me, just something which would be handy :)
Hi All,
I am trying to create angular application for block chain network on top of composer rest server , which is running in my local system. But I am getting only Assets options in Angular application not getting participants , transactions . Can anyone help on this.
Thanks in Advance
is there any example available where `composer rest server` consumes multiple cards?
print_1.JPG
print_1.JPG
print_2.JPG
print_2.JPG
print_3.JPG
print_3.JPG
print_4.JPG
print_4.JPG
@lipoplus ohhh this is php's composer not related to fabric
@rthatcher yes, you are right. 0.19.4 only supports fabric-1.1.0 release. it is ok for 1.1.0 release, does not work for the latest 1.2.0 master branch.
@rthatcher yes, you are right. 0.19.4 only supports fabric-1.1.0 release. it is ok for 1.1.0 release, and does not work for the latest 1.2.0 master branch.
@rthatcher yes, you are right. 0.19.4 only supports fabric-1.1.0 release. it is ok for 1.1.0 release, but does not work for the latest 1.2.0 master branch.
@lipoplus this is php dependancy manager composer not related to hyperledger
[ ](https://chat.hyperledger.org/channel/composer?msg=FqK632tQ9kb96SrJC) @ApoorvChandurkar @JayPandya where i can get the composer related to fabric? i created an fabric network and i want to deploy the composer configuration
[ ](https://chat.hyperledger.org/channel/composer?msg=z6Rc3S5DLc7wxEmCz) @FlorentinoSainz :thumbsup: ...You can always raise a feature request for under Issues with examples of what you want ot achieve. could use standard JS objects eg ```var dictionary = {};//create new object
dictionary["key1"] = value1;//set key1
var key1 = dictionary["key1"];//get key1``` or look into `map` as an implementation. Current implementation is standard javascript
hello, in my business network definition I'm using sample queries in my queries.qry file which query current participants in the network the queries are as follows:
@lipoplus see https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html for prereqs before you install Hyperledger Composer then the Install section is here -> https://hyperledger.github.io/composer/latest/installing/installing-index
query selectCompanies {
description: "Select all companies"
statement: SELECT org.bajajauto.supplychain.Company
}
query selectDealers {
description: "Select all dealers"
statement: SELECT org.bajajauto.supplychain.Dealer
}`` but when I try to execute I get this error :` 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: ExecuteQuery not supported for leveldb` anybody can tell me what's wrong? @mahoney1
@mahoney1 i have already made that, i followed that steps in composer installation
```
FROM hyperledger/composer-rest-server
RUN npm install --production loopback-connector-mongodb passport-google-oauth2 && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
Where will be the two npm modules will installed?
And for using passport-jwt should I use following command?
```
FROM hyperledger/composer-rest-server
RUN npm install --production loopback-connector-mongodb loopback-component-passport passport-jwt && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
```
FROM hyperledger/composer-rest-server
RUN npm install --production loopback-connector-mongodb passport-google-oauth2 && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
Where will be the two npm modules will installed for above command?
And for using passport-jwt should I use following command?
```
FROM hyperledger/composer-rest-server
RUN npm install --production loopback-connector-mongodb loopback-component-passport passport-jwt && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
```
FROM hyperledger/composer-rest-server
RUN npm install --production loopback-connector-mongodb passport-google-oauth2 && \
npm cache clean --force && \
ln -s node_modules .node_modules
```Where will be the two npm modules will installed for above command?
And for using passport-jwt should I use following command?
```
FROM hyperledger/composer-rest-server
RUN npm install --production loopback-connector-mongodb loopback-component-passport passport-jwt && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
```
FROM hyperledger/composer-rest-server
RUN npm install --production loopback-connector-mongodb passport-google-oauth2 && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
Where will be the two npm modules will installed for above command?
And for using passport-jwt should I use following command?
```
FROM hyperledger/composer-rest-server
RUN npm install --production loopback-connector-mongodb loopback-component-passport passport-jwt && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
@mahoney1 thanks!
```error: [Hyperledger-Composer] :HLFConnection :login() Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
at caClient.enroll.then.then.then.then.catch (/usr/local/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:220:34)
at
while connecting to a newly created network on playgroind
any probable reason?
Hello.. I would like to track the changes in one of the asset's field which is modified/changed over time. How can I do this using `Historian`?
Hello.. I would like to track asset's field which is modified/changed over time. How can I do this using `Historian`?
Hello @mahoney1 .. I would like to track `asset's field` which is modified/changed over time. How can I do this using `Historian`?
[ ](https://chat.hyperledger.org/channel/composer?msg=W5RZRSpuoFL29H9zn) @mahoney1
CN = tlsca.org1.example.com
O = org1.example.com
L = San Francisco
S = California
C = US
These are the issuer details for the certificate. and its also of Type = CA.
@ApoorvChandurkar the error is a Fabric [error](https://jira.hyperledger.org/browse/FAB-1933). For Composer Queries you really need to configure CouchDB -> see https://hyperledger.github.io/composer/latest/business-network/query
@maddy, thanks, its strange (as the error is a TLS handshake error as you can appreciate) - so - is TLS enabled on your CA server side (I recall it was in your connection.json definition).
@maddy, thanks, its strange (as the error is a TLS handshake error as you can appreciate) - so - is TLS enabled on your CA server side (I recall it was/is, in your connection.json definition).
@AkshayJindal see last item in this table [here](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks) as workaround. You could use REST /GET on the transaction class with a Filter (include/resolve)to get the results and it would be easy to see if the delta on an asset was indeed the field in question. The detail of the change is in the Transaction class
@AkshayJindal see last item in this table [here](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks) as workaround. You could use REST /GET on the transaction class with a Filter (include/resolve)to get the results and it would be easy to see if the delta on an asset was indeed the field in question. The detail of the change is in the Transaction class, Or see here for an [alternative](https://github.com/hyperledger/composer/issues/2458#issuecomment-383377837) method.
[ ](https://chat.hyperledger.org/channel/composer?msg=Wp5zP4HwcxgC8CRNX) @mahoney1 but I'm spawning couchdb docker containers I can see that when I run `docker ps` and my docker-compose.yml file also is having couchdb definitions also or there is some other configurations to be done?
Has joined the channel.
@ApoorvChandurkar your error said `executeQuery not supported for leveldb` so is it a Fabric level configuration issue ?? Composer queries will work quite happily with a correctly configured CouchDB. Have you changed the peer config so that 1) the Statedb is CouchDB and 2) give the address of CouchDB container to the respective peer(s). See http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#using-couchdb
Hello, one question regarding composer 0.19, I'm currently running a code in 0.16, If I update I understand my transactions code should still work, will I be able to use nodejs features which were not available before (like await etc) out of the box? Or I need to configure something so I use nodejs instead of the "old" go javascript interpreter
[ ](https://chat.hyperledger.org/channel/composer?msg=cqsBzt9Ns3fbAPXkL) @eduwardpost multi user seems to be adding multiple cards to wallet
but can use only one at a time
but can use only one at a time(based on default id of wallet)
what if I have a client application which has different users logging in and are need to be served in parallel
@Varun2887 You should do your own backend if you want something more complex, its quite easy with nodejs express (at least thats the way I went)
not sure of how much rest-server evolved since then
[ ](https://chat.hyperledger.org/channel/composer?msg=GMxGdxSM5GCi7g7XW) @mahoney1 Thanks! found out the error now I can query without issues!
@Varun2887 you should check out the Composer sample applications 1) Set up an express server for the REST server https://github.com/hyperledger/composer-sample-applications/blob/master/packages/vehicle-manufacture-manufacturing/server/app.js and your routes obviously and 2) example code of how to call a Composer REST API endpoint -> https://github.com/hyperledger/composer-sample-applications/blob/master/packages/vehicle-manufacture-manufacturing/server/api/orders/orders.js#L20 and 3) https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-manufacture-manufacturing/server/api here are some routes defined.
@Varun2887 you should check out the Composer sample applications 1) Set up an express server for the REST server https://github.com/hyperledger/composer-sample-applications/blob/master/packages/vehicle-manufacture-manufacturing/server/app.js and your routes obviously and 2) example code of how to call a Composer REST API endpoint -> https://github.com/hyperledger/composer-sample-applications/blob/master/packages/vehicle-manufacture-manufacturing/server/api/orders/orders.js#L20 and 3) https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-manufacture-manufacturing/server/api here are some routes defined. Connect with different identities here as shon [here](https://stackoverflow.com/questions/48893410/hyperledger-composer-web-application-user-authentication) then the REST client (once the card is imported in the user's wallet) can interact with the cardname for the logged in user [here](https://stackoverflow.com/questions/48893410/hyperledger-composer-web-application-user-authentication) should be straightforward to know in your Node app 'which user has logged in' to check 'which business network card to use' to interact with the blockchain
@Varun2887 you should check out the Composer sample applications 1) Set up an express server for the REST server https://github.com/hyperledger/composer-sample-applications/blob/master/packages/vehicle-manufacture-manufacturing/server/app.js and your routes obviously and 2) example code of how to call a Composer REST API endpoint -> https://github.com/hyperledger/composer-sample-applications/blob/master/packages/vehicle-manufacture-manufacturing/server/api/orders/orders.js#L20 and 3) https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-manufacture-manufacturing/server/api here are some routes defined. Connect with different identities here as shown [here](https://stackoverflow.com/questions/48893410/hyperledger-composer-web-application-user-authentication) then the REST client (once the card is imported in the user's wallet) can interact with the cardname for the logged in user - should be straightforward to know in your Node app 'which user has logged in' to check 'which business network card to use' to interact with the blockchain
@ApoorvChandurkar was the error in your config ?
[ ](https://chat.hyperledger.org/channel/composer?msg=f5kNeY9SXHGfoYZjF) @mahoney1 yes there was silly typo in the config file that caused the default database to remain levelDB
hello, can anyone help me to solve update asset issue. I have one asset of multiple fields,some fileds are using one transaction, and remaining fileds are getting updated in another transaction which are optinal fileds,but i am not getting asset updated with that filed...
[ ](https://chat.hyperledger.org/channel/compose?msg=giqvds2gAcPNbbsoL) @Priyanka14 would suggest to post your question on Stack overflow with your code / model - suggest to follow this structure as a [guideline](https://github.com/mahoney1/composer-knowledge-wiki/blob/latest/knowledge.md#issue)
@mahoney1 @rthatcher @davidkel Did you guys ever get Issuing Identity working through composer-cli or composer-playground? @maddy and I are working on on some use cases and it turns out composer-cli and playground won't issue Identities, we've checked certificates and connection profile is perfectly okay, chaincode deployment, instantiation is also working fine, testing network rocks, but Issuing identities is where everything goes sideways, our CA container is showing no logging activity while it is accessible over its REST APIs. We are just wondering if it is only us having these issues, did any if you face such issues ever? We have also explored composer-client APIs and turns out the IdentityRegister.js has methods add/addAll yet its documentation suggest unsupported operation.
@mahoney1 @rthatcher @davidkel Did you guys ever get Issuing Identity working through composer-cli or composer-playground? @maddy and I are working on on some use cases and it turns out composer-cli and playground won't issue Identities, we've checked certificates and connection profile is perfectly okay, chaincode deployment, instantiation is also working fine, testing network rocks, but Issuing identities is where everything goes sideways, our CA container is showing no logging activity when composer-cli commands are executed while it is accessible over its REST APIs. We are just wondering if it is only us having these issues, did any if you face such issues ever? We have also explored composer-client APIs and turns out the IdentityRegister.js has methods add/addAll yet its documentation suggest unsupported operation.
I did from composer-cli and it worked well
on fabric runtime or browser simulated blockchain?
When following this tutorial, there's a point where you have to use composer-cli to request
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
fabric runtime
which version of composer cli did you have? and fabric peers version?
which version of composer cli did you have?
0.19.2
we have followed exactly the same steps and same composer version its throwing unsupported certificate purpose error.
composer identity request -c PeerAdmin@byfn-network-org1 -u admin -s adminpw -d alice
you mean this command
Do you have any knowledge of how CA is connected with the rest of the blockchain components? It's something we could use your help on
right?
I didn't follow the guide step-by-step, I was with my own blockchain, extending it to multiorganization
Has joined the channel.
I am trying to setup my first Hyperledger Fabric network on my Windows 10 Pro PC.
I did follow below steps to create network.
./startFabric.sh - Success
./createPeerAdminCard.sh - Success
composer archive create -t dir -n . - .bna file created successfully on project root folder
composer network install --card PeerAdmin@hlfv1 --archiveFile sample-test-network@0.0.1.bna
Now I got error in next step when executing below command for start network.
composer network start --networkName diam-test-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file diam-testkAdmin.card
It take sometime for execution and then it gave error mention below :
**Processing these Network Admins: userName: admin
× Starting business network definition. This may take a minute... Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT Command failed**
When I seen log using below command :
peer0.org1.example.com .
I attached log error in image file.Log Image File
Can anyone suggestions me how I can proceed next step for start my first Hyper Fabric network.?
Thanks in Advance.!
@itskhushal its not connected afaik, when you create a channel you set the CA public "key", so that key is used in order to check if your signers have the same key
errt.png
No we used command, composer identity issue
can you please share request, issue and bind how these three operations should be ordered?
can you please share request, issue and bind how these three operations should be ordered? @FlorentinoSainz
oh, composer issue also worked for me
no its not working for us :(
I think it could be an error with your connection.json
just guessing
I mean, the card contains the address of your CA
(the card its just a json, its on $HOME/.composer/cards)
yes and that same address is working when accessed via REST apis
uh weird
yes that I know I have checked all its content
I had no problems with it, worked straight :/
is your ca dockerized?
yep
is the fabric-ca example one
which image are you using?
I have two CAs tho (multi-org)
ah, good, I was wondering which image is your ca docker container based on?
ca.org1.com:
image: hyperledger/fabric-ca:$ARCH-1.1.0
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca.org1.com
same image here
ca.org1.com:
image: hyperledger/fabric-ca:$ARCH-1.1.0
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca.org1.com
# - FABRIC_CA_SERVER_CA_CERTFILE=/etc/hyperledger/fabric-ca-server-config/org1.example.com-cert.pem
# - FABRIC_CA_SERVER_CA_KEYFILE=/etc/hyperledger/fabric-ca-server-config/a22daf356b2aab5792ea53e35f66fccef1d7f1aa2b3a2b92dbfbf96a448ea26a_sk
ports:
- "8054:7054"
command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/a2aad70b7e95a89f846307592abfc593ebc6833d3f61168366a631509b6ff7de_sk -b admin:adminpw -d'
volumes:
- ./crypto-config/peerOrganizations/org1.com/ca/:/etc/hyperledger/fabric-ca-server-config
container_name: ca.org1.com
this is my whoile conf for the CA+
anyways, when you created your admin card for the peer admin, you should have also requested one certificate to that CA
is your CA behind TLS?
nope
when you did identity request it worked?
AFAIK regarding the CA, if one works the other should work too :scooter:
we deployed our composer bna using peer admin,
we deployed our composer bna using peer admin card
then exec-ed into ca container and enrolled as admin using fabric-ca-client enroll -u https://admin:adminpw@ca.org1.example.com:7054
then enrollment created certs
and we used those certs for admin card
@itskhushal I am not getting successed in it :)
since then admin card is working fine but issueing new didn;t work
I am not ableto start network it gives Request Time Out connection failed error.
× Starting business network definition. This may take a minute... Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT Command failed**
[ ](https://chat.hyperledger.org/channel/composer?msg=Yn4NvCBLXy2qq5RFd) @jiteshukani2006 after how long, chaincode installation takes time increase your timeout that should work, also check your peers addresses and certificates (if your network is tls enabled)
Can you please suggest me in which places I need to change I increse time out in docker_compose.yml file to 2400s but not getting successed.
approx how much maximum time needed?
- CORE_CHAINCODE_STARTUPTIMEOUT=5000s
- CORE_CHAINCODE_EXECUTETIMEOUT=16000s
I tried this
it's 1600 not 16000 :)
[ ](https://chat.hyperledger.org/channel/composer?msg=8n5mq6goD5jru5v7X) @jiteshukani2006 I think you are doing deployment in different way, what I meant was that when you create PeerAdmin card for connection using composer it asks for timeouts
[ ](https://chat.hyperledger.org/channel/composer?msg=yGNTsYgongzCnnZjg) @ApoorvChandurkar Use couchDB instead of leveldb in your peers to support queries and filters
Getting error The COMPOSE_PROJECT_NAME variable is not set. Defaulting to a blank string while trying to build multi-org. Can someone help me out on this
Do I need to provide that Variable name for sure?
How do I create/delete an asset within a transaction processor?
I am getting the following error `Error getting chaincode code chaincode: path to chaincode does not exist: /opt/gopath/src/github.com/chaincode/chaincode_example02/go`. But I didn't find any folder with name chaincode_example02 in my local environment.
I am getting the following error `Error getting chaincode code chaincode: path to chaincode does not exist: /opt/gopath/src/github.com/chaincode/chaincode_example02/go`. But I didn't find any folder with name chaincode_example02 in my local environment. It will be great if I can get some support on whether I need to change something to get this bypassed or should I need to perform anything for this
I am getting the following error `Error getting chaincode code chaincode: path to chaincode does not exist: /opt/gopath/src/github.com/chaincode/chaincode_example02/go`. But I didn't find any folder with name chaincode_example02 in my local environment. It will be great if I can get some support on whether I need to change something to get this bypassed or should I need to perform anything for this to get resolved
Is there a way to clear composer-playground cache?
Is there a way to clear composer-playground cache? I redeployed my .bna locally but the playground is still showing the old one.
@brian.leppez you can clear your browser cache which will clear composer-playground cache
I think there's a bug with the playground. Because I shouldn't have to clear cache for it to look for my updated .bna
I will explore further...
[ ](https://chat.hyperledger.org/channel/composer?msg=ZmSCANQ6PYQYHo7go) @mahoney1/ @rthatcher can you please help me on this
[ ](https://chat.hyperledger.org/channel/composer?msg=LebQ36zvcWKDHwk9P) @phanikumar - COMPOSE_PROJECT_NAME is a docker-compose feature, that effectively joins all your docker containers to the same network bridge so they can address and communicate with each other. I think it can be set on the docker run command, in the .yaml file or via an environment variable.
Are you using a custom fabric ? or following a particular guide or tutorial?
[ ](https://chat.hyperledger.org/channel/composer?msg=DhNvoa8X5Su4yFu98) @rthatcher I am going with fabric-samples example for multi-org deployment. In specific I am trying to separate each organization into a separate file
[ ](https://chat.hyperledger.org/channel/composer?msg=sq6aSwSEa9N2RycDL) @itskhushal its possible then that the 'admin' you enrolled using fabric-ca-client (rather than issued through Composer) only enrolled the admin as an ordinary user, and not someone with authority from the CA to ISSUE certificates (ie issue identities in Composer - as that authority comes from Fabric's CA server). This might possibly explain why you could use it ok to connect but not issue identities. As mentioned by another user, identity issue (for an admin) definitely works - an example (as he mentions) is shown here -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org .
[ ](https://chat.hyperledger.org/channel/composer?msg=7mEr7opL5JhEKfuvF) @phanikumar - sounds interesting - I guess you will have to investigate docker-compose some more :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=PbFBNNLa8QGKGYJm3) @brian.leppez open the developer tools, go to the console and click the 'bin' icon or type `localStorage.clear()` and then refresh the browser page.
[ ](https://chat.hyperledger.org/channel/composer?msg=fLDDp4vFzGCH7wHmo) @rthatcher Figured out the issue. This is because actual fabric samples have the path ../chaincode/chaincode_example02 which is being mounted to the containers and that is not available in my environment.
[ ](https://chat.hyperledger.org/channel/composer?msg=fLDDp4vFzGCH7wHmo) @rthatcher Figured out the issue. This is because actual fabric samples have the path ../chaincode/chaincode_example02 from first-network which is being mounted to the containers and that is not available in my environment.
can anyone explain me how do we backup blockchain data in case the fabric network crashes?
because if we bring down network by fabric cli commands then we will be losing the data as it is all stored on peers
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=GZHpoYyGRfvu43qHW) @MohitYadav2317 its a #fabric question really - see this RC thread on #fabric and the links provided . Strategy wise, an organisation is responsible for its own nodes (and however the HA/DR/disk configuration/backup is implemented - obviously its the world state and ledger that are most important. But one org's peers crashing can catch up (when restored to do so) from the other peers in the network.
Hi Everybody,
I'm trying to deploy hyperledger on docker swarm.
- i use docker swarn and i create a network (overlay without encryption)
- i launch my stack without error
- i launch createPeerAdmin.sh without error
- i installed my business network without error
when i start my business network and i'm watching logs from peer0. I see that the dev-peer0-blabla-network-1.3.0 can not communicate correctly why peer0 and the install failed.
My docker network is named as "hyp" and i reuse this name in docker-compose: CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=hyp
Docker version: 18.03.1-ce, build 9ee9f40
An ideas ?
Thank you, regards
Capture d’écran 2018-05-08 à 18.28.51.png
Capture d’écran 2018-05-08 à 18.20.54.png
Has joined the channel.
@mahoney1 I deleted localstorage by using `localstorage.clear()` on the command line. I tore down the fabric and restarted the fabric and deployed the .bna onto the fabric via both the playground and through the command line but when launching the playground to issue a transaction the old .bna is still shown... Do you have any other ideas why this could be?
@vivanno see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues (in relation to `CORE_CHAINCODE_STARTUPTIMEOUT` setting or see here (item 2) -> https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer/49758354#49758354
@mahoney1 ok thank you I will look at this now.
@brian.leppez try clear history from today in playground. you can see the version you upgraded your b/network to - using the 'settings' icon top right (ie in Composer 0.19.4) - and see your deployed network version using `composer network ping -c admin@yournetwork` or `docker ps |grep dev`
@mahoney1 Thank you. I am running into another issue: I am trying to submit a transaction that creates an Asset. My CTO is defined as follows:
` concept Package {
--> Postal originCountry
--> Postal destinationCountry
o String packageId // given by EDI message
o Double weight // in kg
o Status currentStatus
o PackageType packageType
o String originReceptacleId optional // given by EDI message
o String dispatchId optional // given by EDI message
}
asset PackageAsset identified by packageUUID {
o String packageUUID // created by blockchain
o Package package
}
transaction createPackage {
o String packageUUID
o Package package
}
````
```
@mahoney1 Thank you so much.
@mahoney1 I added CORE_CHAINCODE_STARTUPTIMEOUT=1200s to my peers config peers in docker-compose file.
But no change.
The start business network command failed. In log of dev-peer0-trainingchain-network-1.3.0 container i can see that dev-peer0-trainingchain-network-1.3.0 can not communicate with peer0 (see log in attachement)
I hope dev-peer0-trainingchain-network-1.3.0 is attached automaticaly to my swarn network ?
thanks for your help
dev-peer0-trainingchain-network-1.3.0 logs
Has joined the channel.
Hi I need some help. I was able to easily get the angular app working using yo on my mac. I then tried the same exact steps and code on an Ubuntu instance on AWS and everything worked until I tried to compile the angular app - it sits at 92% chunk asset optimization. I am stuck. I found a lot of info on the angular 92% issue but nothing specific to composer that I can test out. Anyone have any suggestions? When I use this command: "ng serve --host *.compute-1.amazonaws.com port 4200 --sourcemap=false" I don't get the 92% issue but then I go into the app and I get "Error: 404 - Could not find API route. Please check your available APIs." yet I know the REST server is up because I can access it. If I just use "npm start" I get an invalid host error. Any ideas?
I also have another question - I see that composer recommends using Ubuntu for Linux setups. Does anyone know how well it will work on other Linux distributions?
for business Use-case is it good to develop application with composer or native fabric or it doesn't matter
does anyone facing this issue while deploying a new .bna? No connection type provided, probably because the connection profile has no 'x-type' property defined.
[ ](https://chat.hyperledger.org/channel/composer?msg=dYDvkZWaR7ewEB6Nf) for default fabric-sample project, it is not throwing any error and even not configuring `COMPOSE_PROJECT_NAME` variable and it is creating net_byfn network. But, when I am separating the organizations files, it is creating `myblockchain_byfn` network. But I haven't configured this as well. I am not what is determining this network name. It is causing issue when instantiating the chaincode as it looking for _byfn network
[ ](https://chat.hyperledger.org/channel/composer?msg=dYDvkZWaR7ewEB6Nf) for default fabric-sample project, it is not throwing any error and even not configuring `COMPOSE_PROJECT_NAME` variable and it is creating `net_byfn network`. But, when I am separating the organizations files, it is creating `myblockchain_byfn` network. But I haven't configured this as well. I am not what is determining this network name. It is causing issue when instantiating the chaincode as it looking for _byfn network
[ ](https://chat.hyperledger.org/channel/composer?msg=dYDvkZWaR7ewEB6Nf) for default fabric-sample project, it is not throwing any error and even not configuring `COMPOSE_PROJECT_NAME` variable and it is creating `net_byfn network`. But, when I am separating the organizations files, it is creating `myblockchain_byfn` network. But I haven't configured this as well. I am not sure what is determining this network name. It is causing issue when instantiating the chaincode as it looking for _byfn network
Hey guys, jumping in here. Anyone have to or know the best way to handle data migrations in composer? For example, adding another field on an asset, or changing the name of the field, is there a standard way of making those changes to currently existing assets?
yes... you deploy the changes with the blue button on the bottom left and the version is auto-incremented
Has joined the channel.
Hi,
is it possible to track the changes of the distributed ledger without having a "historian record". In other words is the historian record needed to have the typical "blockchain" feature? @rthatcher =)
[ ](https://chat.hyperledger.org/channel/composer?msg=xbyTHE75KGcsthHhc) I got stuck at this single point in separating organizations. Can someone help me out how this COMPOSE_PROJECT_NAME environment variable is being configured in fabric-samples
[ ](https://chat.hyperledger.org/channel/composer?msg=xbyTHE75KGcsthHhc) I got stuck at this single point in separating organizations. Can someone help me out how this COMPOSE_PROJECT_NAME environment variable is being configured in fabric-samples. It will be great if I can get some help on this
[ ](https://chat.hyperledger.org/channel/composer?msg=xbyTHE75KGcsthHhc) I got stuck at this single point in separating organizations. Can someone help me out how this COMPOSE_PROJECT_NAME environment variable is being configured in fabric-samples. It will be great help to me if I can get some help on this
@mgcox I got that handled, we make the version changes using the cli not playground, but handling assets in the system that have a field changed. Does that question make sense? Like a field on the asset being added would require some changes to the assets to avoid errors.
[ ](https://chat.hyperledger.org/channel/composer?msg=rXSbfXCvwJDDk5gjF) @agranoff I had this issue in the past, I identified that the problem was because I had many network configurations and a VPN adapter. Then when angular generated app tryied to connect with 0.0.0.0 had the same problem you just describe. Fixing that address to localhost, corrected my app, Hope this help.
Has joined the channel.
seems like if you are using the cli to update then you might need to reinstantiate the chaincode and start it up
Please could someone tell me if the "http POST" api is still supported? https://ibm-blockchain.github.io/develop/integrating/call-out Also, was support for it added to the request node module? as per this: https://github.com/hyperledger/composer/issues/3488 if so please can someone provide a link to the api?
@adrianblakey i'd describe `post` as deprecated, see the `request` docs here: https://hyperledger.github.io/composer/latest/integrating/call-out
@sstone1 ty
I want to be able to call blockchain transactions with different identities and not the default identity. Something similar is mentioned in the Git issue 142 - https://github.com/hyperledger/composer/issues/142.
"Alice does not register for a blockchain ID; she does not have the permission to do so. Somebody or something (perhaps an automated service) with an existing blockchain ID that has the permission to issue new blockchain IDs has to issue Alice with a blockchain ID."
a. Is this implemented?
b. How does the registrar pass the identity to the user? By providing him with the access token?
I have already setep the server on multi-user mode and am able to set default identities on the wallet. Kindly help.
Error: Error trying to ping. Error: Error trying to query business network. Error: transaction not found Get http://couchdb:5984/composerchannel/lscc%00ownet?attachments=true: dial tcp: lookup couchdb on 127.0.0.11:53: no such host - make sure the chaincode ownet has been successfully instantiated and try again
can anyone help with this error
[ ](https://chat.hyperledger.org/channel/composer?msg=7pdqRys8YSLpKMqiK) does anybody have tried user registattion?
[ ](https://chat.hyperledger.org/channel/composer?msg=7pdqRys8YSLpKMqiK) does anybody have tried user registration?
[ ](https://chat.hyperledger.org/channel/composer?msg=7pdqRys8YSLpKMqiK) does anybody have tried user registration? Or is it even possible?
hi we are getting the following error when trying to use composer rest server apis : Error: Error trying invoke business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: SyntaxError: Identifier ‘namespace’ has already been declared
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode:
can some one help me on this. major blocker for us
I have a question like : if we change the asset fields , can we use composer network upgrade command to couple a new version , we are getting error doing that?
@vpreddi I dont think so, I'm not an expert, but after all, your code will read the older version, as long as your code is capable of reading/working both with old and new versions of the data it shud be fine
hyperledger at the end only cares about what you read and write :>
[ ](https://chat.hyperledger.org/channel/composer?msg=jPZduwgDLiJbzN8b9) @itskhushal No I am followin steps mention in https://hyperledger.github.io/composer/unstable/tutorials/developer-tutorial.html.
[ ](https://chat.hyperledger.org/channel/composer?msg=jPZduwgDLiJbzN8b9) @itskhushal No I am following steps mention in https://hyperledger.github.io/composer/unstable/tutorials/developer-tutorial.html.
[ ](https://chat.hyperledger.org/channel/composer?msg=jPZduwgDLiJbzN8b9) @itskhushal No I am following steps mention in https://hyperledger.github.io/composer/unstable/tutorials/developer-tutorial.html.
[ ](https://chat.hyperledger.org/channel/composer?msg=jPZduwgDLiJbzN8b9) @itskhushal No I am following steps mention in https://hyperledger.github.io/composer/unstable/tutorials/developer-tutorial.html. I reached at composer network install step by step but I stuck. :(
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=hYw7sRNMfLijJM5Tw) @vpreddi - there is a section in the Knowledge Wiki that covers data migration. I think It will answer your question: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration
Hello,
I am trying to integrating authentication using passport jwt and I am following https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--node-js-application-development-questions-eg-build-real-time-apps-login-etc. But I don't have clear idea about how will be it achieved. It would be great if anyone will tell clear steps to follow or if any tutorial available
Hello all,
I am trying to integrating authentication using passport jwt and I am following https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--node-js-application-development-questions-eg-build-real-time-apps-login-etc. But I don't have clear idea about how will be it achieved. It would be great if anyone will tell clear steps to follow or if any tutorial available
[ ](https://chat.hyperledger.org/channel/composer?msg=YQH6YQjebfTJ8AhtY) @jiteshukani2006 - have you seen this section in the Knowledge Wiki which covers the various timeout issues for Composer Network Start - https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
[ ](https://chat.hyperledger.org/channel/composer?msg=RTehoBK68o3GrYiBe) @vivanno same issue here :( I have ssen my log
It displays error :
2018-05-09 07:26:21.560 UTC [endorser] simulateProposal -> ERRO 4b9 [composercha nnel][d5bd7630] failed to invoke chaincode name:"lscc" , error: timeout expired while starting chaincode diam-test-network:0.0.1(networkid:dev,peerid:peer0.org1 .example.com,tx:d5bd7630c7cd365f038975ad13e1882a9bba257b945ee8685d1fceba2838d080 )
[ ](https://chat.hyperledger.org/channel/composer?msg=nR2FgRhCfY3hfhngz) @rthatcher Thanks. Let me check and back.
[ ](https://chat.hyperledger.org/channel/composer?msg=P6kPbfdczrQuf2nqF) @vpreddi - looks like you have a javascript error in your transaction function.
[ ](https://chat.hyperledger.org/channel/composer?msg=bRrYZBCAPzFL4T85E) @Pranoti - User Registration is not the right term here, but with the REST server you can *Create Participants*, and then *Issue Identity*. You will need to execute a POST against your participant, then a POST against /system/identities/issue
Has joined the channel.
Hi , I have been trying to install composer on ubuntu. I have been getting the following error : composer-wallet-inmemory@0.19.4 requires a peer of composer-common@0.19.3 but none was installed. Please help.
[ ](https://chat.hyperledger.org/channel/composer?msg=5Gv4EznXqNpXQ9FGE) @rthatcher hi , this code is working fine when deployed to fabric on my local machine but failing on server which is on cloud ubunut machine
[ ](https://chat.hyperledger.org/channel/composer?msg=n8v5b6cdpkwGf35tL) I tried both solution which mentioned in your given link but not getting successed. :(
@reshmamohiyiddin this was noted in https://github.com/hyperledger/composer/issues/3954 and for the in-memory wallet, that warning can be ignored. The fix for this mismatch in levels is going into next Mon's 0.19.5 release with the [update](https://github.com/hyperledger/composer/pull/3955/commits/f7748e8ffd2d571f9f28bfc30de52b2363f61cf1) lined up etc
[ ](https://chat.hyperledger.org/channel/composer?msg=WbQLWJ3S4kRBij9kH) Can anyone help me with this please?
[ ](https://chat.hyperledger.org/channel/composer?msg=hYw7sRNMfLijJM5Tw) @vpreddi yes - the example in Step Three / Four here https://hyperledger.github.io/composer/latest/tutorials/queries does just that (see the sequence there)
[ ](https://chat.hyperledger.org/channel/composer?msg=Tk84q839w4DBq9Kou) @jiteshukani2006 - what exact error are you seeing with your `composer network install` command? (Sorry, I had assumed you were doing a composer network start).
BTW - what version of Composer are you using (` composer -v `).
Unless of have specifically installed 'unstable' version of composer, I would suggest you use this version of the tutorial: https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html
@vpreddi - the variable `namespace` error is a javascript error I believe (its in your Transaction code that it complains) - is it a const or let being re-declared in the same scope - would have to see your code ..i
@vpreddi - the variable `namespace` error is a javascript error I believe (its in your Transaction code that it complains) - is it a const or let being re-declared in the same scope - would have to see your code ..
@mahoney1 hello , I shutdown fabric , cleaned up everything , and installed , it is working fine now . We guess the problem was due to multiple version installed on fabric . We are using composer network upgrade to move from one version to another. Only if we clean up containers it is working , so may be due old version containers being still running? Not sure!!
[ ](https://chat.hyperledger.org/channel/composer?msg=Loqqy7GpH8jvwm7Cp) @rthatcher Okay. Thanks for you reply.. Will work on it.. Actually we implemented google sign in using angular 4 and accessing the rest api using google access token, passing it through http header, but still the REST api send the 401 error as authorisation required. Even I tried this using https://developers.google.com/oauthplayground but still it's giving the same error.. Can you tell me what possibly is going wrong or what step I'm missing?
[ ](https://chat.hyperledger.org/channel/composer?msg=Loqqy7GpH8jvwm7Cp) @rthatcher Okay. Thanks for your reply.. Will work on it.. Actually we implemented google sign in using angular 4 and accessing the rest api using google access token, passing it through http header, but still the REST api send the 401 error as authorisation required. Even I tried this using https://developers.google.com/oauthplayground but still it's giving the same error.. Can you tell me what possibly is going wrong or what step I'm missing?
[ ](https://chat.hyperledger.org/channel/composer?msg=TEWcghyTRXmLrPgDW) @Pranoti - not sure what is wrong with your setup, but what I have found useful in the past is to install POSTER on Chrome or POSTMAN on Firefox - and use those to quickly test REST endpoints and pass headers etc. (I just used POSTER on chrome to hit my REST server with Google OAuth2 and it works well.)
Can someone share me how to authenticate a participant using passport-local strategy? As I am new to Nodejs I am finding it difficult to get it
[ ](https://chat.hyperledger.org/channel/composer?msg=6KNbSDygBp6KiqewE) @rthatcher I tried this from postman too. Im getting access token but not able to access the rest api of the hyperledger composer.. here is the complete error. If this helps you to point out the error..
`{ "error": { "statusCode": 401, "name": "Error", "message": "Authorization Required", "code": "AUTHORIZATION_REQUIRED", stack": "Error: Authorization Required\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/lib/application.js:389:21\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/lib/model.js:353:7\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:464:16\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3874:9\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:473:16\n at iteratorCallback (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:1050:13)\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:958:16\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3871:13\n at /home/composer/.npm-lobal/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:449:17\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/role.js:331:21\n at _combinedTickCallback (internal/process/next_tick.js:131:7)\n at process._tickDomainCallback (internal/process/next_tick.js:218:9)" } }`
`error: API error (404): {"message":"network _byfn not found"}` Hello i have encountered this when trying to run a multi org network following the tutorial from hyperledger. Any idea ?
`error: API error (404): {"message":"network _byfn not found"}` Hello i have encountered this when trying to start `composer start` a multi org network following the tutorial from hyperledger. Any idea ?
Clipboard - May 9, 2018 12:35 PM
@Pranoti - after you have authenticated with Google (via /auth/google - or whatever you set up as your authPath), then you will need to create 2 headers in POSTMAN (the same as you will have to do in your code). Here is an example of the headers I used:
[ ](https://chat.hyperledger.org/channel/composer?msg=yfhjR9mLqhXSke4Ji) @GrondinLaurent - can you show the full command you are using please?
[ ](https://chat.hyperledger.org/channel/composer?msg=8uR5QveKoFwa4gyd9) @rthatcher Yes I have set those too..
[ ](https://chat.hyperledger.org/channel/composer?msg=bjwsZyhnr4qAfGH3H) @RahulSingh 6 - there is some additional information about passport strategies in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--passport-strategy-info
@rthatcher `composer network start -c PeerAdmin@byfn-network-org1 -n vehicle-manufacture-network -V 0.2.3 \
-o endorsementPolicyFile=vldstage/endorsement-policy.json \
-A private -C private/admin-pub.pem \
-A manufact -C manufact/admin-pub.pem \
-A regulator -C regulator/admin-pub.pem` I'm trying to start from a 3 org network
[ ](https://chat.hyperledger.org/channel/composer?msg=KmoEPoFT9YA9fTqsH) @Pranoti - I would suggest you clear your browser cache, and re-authenticate with /auth/google to get a new token (or possibly use a private/incognito window)
Hi guys, we were able to resolve the Unsupported Certificate Purpose issue, turns out we were using wrong certificate, the certificate mentioned in the tutorial was not accepted by composer, may be have configured wrong tls certificate on our ca server.
Another question though, once I revoke a user, how do I undo the revocation request?
Another question though, once I revoke a user, how do I undo the revocation request? reactive of sorts
Another question though, once I revoke a user, how do I undo the revocation request? reactivate of sorts
@rthatcher When using other strategy for authentication, we need to generate token at some point. Here we don't to any registration kind of stuff then when should we need to generate token ? At time of issuing identity or something else like login. Can you please suggest me for this?
@rthatcher When using other strategy for authentication, we need to generate token at some point. Here we don't do any registration kind of stuff then when should we need to generate token ? At time of issuing identity or something else like login. Can you please suggest me for this?
@maddy glad to hear you got it sorted. On yr question - normally in Fabric, once revoked, you simply issue a new certificate from the CA . From a Composer standpoint see https://hyperledger.github.io/composer/latest/managing/identity-revoke.html . Once an identity has been revoked, the identity (in the Composer business network) can no longer be used by the business network participant (it was mapped to) to interact with the business network in the context of that participant. Revoke Identity in Composer does not revoke/delete the identity on the Fabric CA (Hyperledger Composer does not currently attempt to revoke the identity by using the Hyperledger Fabric certificate authority (CA) APIs).
[ ](https://chat.hyperledger.org/channel/composer?msg=RP3zaNTyJvX95pdJv) @GrondinLaurent - I have not seen that error from that command.
I are you using Composer v0.19.? and Fabric 1.1GA ?
Did the composer network install command complete for all 3 organisations?
Does your connection.json for org1 contain the string "_byfn" anywhere?
Have you looked at the log for the Peers at the time the command fails (starting with org1)
[ ](https://chat.hyperledger.org/channel/composer?msg=RP3zaNTyJvX95pdJv) @GrondinLaurent - I have not seen that error from that command.
I are you using Composer v0.19.? and Fabric 1.1GA ?
Did the composer network install command complete for all 3 organisations?
Does your connection.json for org1 contain the string "_byfn" anywhere?
Have you looked at the log for the Peers at the time the command fails (starting with org1)
Are all 3 of your Orgs on the same physical machine? - if not how are you managing the addressing and connectivity between them?
[ ](https://chat.hyperledger.org/channel/composer?msg=RP3zaNTyJvX95pdJv) @GrondinLaurent - I have not seen that error from that command.
I are you using Composer v0.19.? and Fabric 1.1GA ?
Did the composer network install command complete for all 3 organisations?
Does your connection.json for org1 contain the string "_byfn" anywhere?
Have you looked at the log for the Peers at the time the command fails (starting with org1)
Are all 3 of your Orgs on the same physical machine? - if not how are you managing the addressing and connectivity between them?
Final question! - do you have "_byfn" anywhere in your docker setup instead of "byfn" (meaning a docker network bridge name)
[ ](https://chat.hyperledger.org/channel/composer?msg=aidN9P2cdNwQQetv9) @rthatcher Yes 0.19 and 1.1. Composer network install command were all good. It doesn't but i wasn't a problem when i strictly followed the turorial using byfn network and the given json connection. If i look at th logs from any peer i find the same error code. I'm doing all locally
[ ](https://chat.hyperledger.org/channel/composer?msg=Ys6fhA72pcrMd4ErW) @rthatcher Using web browser it runs perfectly fine.. When we run http://localhost:3000/auth/google we get access token on browser and we access the REST api. But same thing im doing in postman I do get token and following these instructions too "You must specify the access token in the query string (?access_token=xxxxx) or as an additional HTTP header (X-Access-Token: xxxxx)." which displayed on browser. I'm passing it in header but its neither working in postman and nor from my angular application. Is there any settings we need to do any of the node-modules files?
0.19
@GrondinLaurent - (I don't think this is the problem - but just worth checking that the version and name of the network on the command line are exactly the same as those shown from a composer archive list command?)
In extending the byfn network to 3 orgs, did you modify script.sh to invoke and query the mycc chaincode on all the peers in all the orgs? This would 'prove' the fabric.
@rthatcher i checked the correct name and version with composer archive list and it's all good. In script.sh i commented everything from installing and invoking chaincode since i'm using composer i tought it wasn't neccessery. It worked with two org tutorial.
Question regarding composer transaction scripts, all script "js" are placed in the same folder inside the peer when executing? (aka it is safe to make a kind of "common" and require it from others?)
I was running a blockchain network on 2 nodes, on composer version 0.16. Today I upgraded it to 0.19. I have modified the connection json and command syntax based on the multi org tutorial. When I reach try to start the network, the command fails with the following error: ✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)
Command failed
I was running a blockchain network on 2 nodes, on composer version 0.16. Today I upgraded it to 0.19. I have modified the connection json and command syntax based on the multi org tutorial. When I reach try to start the network, the command fails with the following error: ✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=eHX3gosY4qpmHPCs2) @GrondinLaurent -
Something else to check that is prob not the issue - but you have lots of containers running, and more to come when you start chaincode containers - I assume you have loads of free memory and diskspace?
Regarding script.sh - you are correct that we don't _need_ the mycc invoke and query - but it does prove that all Peers are joined to the channel and containers can 'see' eachother. The success/failure of mycc across all peers will help isolate a fabric problem or a composer problem.
[ ](https://chat.hyperledger.org/channel/composer?msg=Frw5owj8ScpMhiZvu) @dpurnima0709 - this looks like you haven't upgraded Fabric to 1.1GA which is one of the requirements of Composer v0.19.x.
Do you know how to do this, or do you need some steps to follow?
@rthatcher I do have enough of free memory and disk place or at least i think. Good idea i'll try to install fabric chaincode and try to se trough this. altough i don't have any error when joining all peer to the same channel and updating anchors for each org.
[ ](https://chat.hyperledger.org/channel/composer?msg=EgFS927obpn4wh5jL) @rthatcher its v0.19.4
[ ](https://chat.hyperledger.org/channel/composer?msg=mvbbQRpZ7F4nLGdDQ) @rthatcher Ok. Please direct me to the steps.
@dpurnima0709 - OK, these are the steps to upgrade to Fabric 1.1GA
These commands to delete all your docker containers and images:
```
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
```
The the following doc from *Step 4* : https://hyperledger.github.io/composer/latest/installing/development-tools
[ ](https://chat.hyperledger.org/channel/composer?msg=dB3mJnwKaGkZQBBfY) @jiteshukani2006 - what exact error are you seeing with your `composer network install` command?
Any body know How can I issue an identity from inside a transaction??
Clipboard - 9 mai 2018 15:45
@rthatcher When trying with a fabric chaincode i got the same error in the logs of the peer i'm trying to instiate from (install were all okay)
@rthatcher When trying with a fabric chaincode i got the same error in the logs of the peer i'm trying to instantiate from (install were all okay)
Hello, has anyone switched docker images from hyperledger->ibmblockchain and got following errors?
error: [Hyperledger-Composer] :HLFConnectionManager :fabric-client() [client-utils.js]: sendPeersProposal - Promise is rejected: Error: 2 UNKNOWN: error starting container: Post http://unix.sock/containers/create?name=dev-peer0.org1.example.com-basic-sample-network-0.2.4-20180426144018: dial unix /host/var/run/docker.sock: connect: permission denied
I only changed image location for peer to : image: ibmblockchain/fabric-peer-$ARCH:1.1.0
[ ](https://chat.hyperledger.org/channel/composer?msg=EZfKvvddu2WrmZQ94) @GrondinLaurent - well good news is some consistency then :-)
two ways forward for you I think - 1. search all your .yaml and .json and .sh files (including subfolders) for the string "_byfn" and your environment variables. 2. Ask this Fabric question in the #fabric channel (note there are several #fabric-??? channels
[ ](https://chat.hyperledger.org/channel/composer?msg=8cvf7TTf4wSmYaPNy) @rthatcher Thanks i'll keep digging that way then :)
@pranoti - rthatcher has sent you a screenshot of his `postman` output earlier, not sure if you saw. You can either pass the full API (eg. /GET) call with access_token= and tick Content-type (application/json) (and you should get results if the access_token is active - otherwise you would get 401) - or - you can just provide the standard API call up top (ie no query string appended here) and enter the access token / content-type as rthatcher has shown. I've just tried this with postman and it works.
Hey! If a some integrity check on a transaction is violated, which we can check for on a transaction processor, is there any way for the transaction not to be submitted? I want to create assets with the ID not null inside a transaction processor and throw an error when it is null: i have successfully thrown the error when it happens, but the transaction still gets recorded :/
Or is there any way to preprocess data before submitting the transaction? Otherwise, isn't it impossible to make integrity checks on the serverside?
Is there any way to preprocess data before submitting the transaction? Otherwise, isn't it impossible to make integrity checks on the serverside?
I have a function that creates an asset, but I have to do some integrity checks for the identifier field; If it fails some checks, it does not create the asset; HOWEVER, the transaction is still recorded in the historian...
I have a function that creates an asset, but I have to do some integrity checks for the identifier field; If it fails some checks, it does not create the asset; HOWEVER, the transaction is still recorded...
I am creating an asset in a transaction processor function, and when the asset ID already exists, the assetregistry.add function throws an error saying the ID already exists. So far, so good... The problem is that, when this happens, the transaction has already been submitted and added to the transaction registry! is there any way to check if the ID already exists before the transaction gets recorded? Any attempts to get the assetregistry are asynchronous and somehow when doing it, the transaction always ends up submitted before any check occurs
Hi @mahoney1, @rthatcher I am able to change the network name by configuring the `COMPOSE_PROJECT_NAME` environment variable which is creating COMPOSE_PROJECT_NAME`_byfn` as network name. what should I do to get the network created without `_byfn` in the network name
Hi @mahoney1, @rthatcher I am able to change the network name by configuring the `COMPOSE_PROJECT_NAME` environment variable which is creating COMPOSE_PROJECT_NAME`_byfn` as network name. what should I do to get the network created without `_byfn` in the network name. Can you please help me out on this
Hi @mahoney1, @rthatcher I am able to change the network name by configuring the `COMPOSE_PROJECT_NAME` environment variable which is creating COMPOSE_PROJECT_NAME `_byfn` as network name. what should I do to get the network created without `_byfn` in the network name. Can you please help me out on this
can anyone explain why i get the error launched and waiting for registration
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: premature execution - chaincode launched and waiting for registration
this was already running just fine on an ibm start plan
looks like the resolution was updating local versions of composer to the latest
What's the stable version of composer today? is it 0.19.4 ? or 0.19.0
@yongkook 0.16.6 for hlfv1 and 0.19.4 for hlfv11
thanks @vijayin26
I am having an weird error with ibmblockchain images with 0.19.4...so I was wondering if this was a known issue or not
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=pNHBNxpCQchsPwMd2) @mgcox
I have a similar problem. Full description here:
https://stackoverflow.com/questions/50256241/hyperledger-composer-business-network-installation-error
Can anybody help?
I have been trying to start the network for the fourth week. I struggle with problems without the help of experienced people, but it's very hard and long. Please help me.
https://stackoverflow.com/questions/50256241/hyperledger-composer-business-network-installation-error
I have been trying to start the network for the fourth week. I struggle with problems without the help of experienced people, but it's very hard and long. Please help me.
https://stackoverflow.com/questions/50256241/hyperledger-composer-business-network-installation-error
Has joined the channel.
@VadimInshakov which version of the composer you are using?
it seems more like a docker issue than anything
@VadimInshakov looks to me certificate authorities both pointing to org1 in createPeerAdminCard.sh ... I think it should be "ca.org2.innodata.ru": {
"url": "http://${HOST}:8054",
"caName": "ca.org2.innodata.ru"
}
Has joined the channel.
Is anyone know where i can read the full doc about .acl (not that one on the composer site, the information is very little)
@pichayuthk What additional information about access control do you feel you need that is not in the documents? Perhaps if you phrase the question differently you might be able to get some specific help ...
@adrianblakey are you familiar with access control best practices for composer?
i was wondering: If you dont want to give a particpant the ability to perform a specific function, but you want them to be able to request that that function be performed on their behalf (by a participant with greater authority), is the best way to implement such a model, to have the participant emit an event that the greater authority is subscribed to and then fulfills the request immediately? Thats all i envisioned as a working solution
Has joined the channel.
hey guys im new to linux
and having problems
installing composer
[ ](https://chat.hyperledger.org/channel/composer?msg=EymKZjyQKuhWWpL4R) @vijayin26 composer-cli@0.19.4
Has joined the channel.
Composer run time (0.19.4) is not compatible with client (0.19.2) trying to downgrade or upgrade i have uninstall/install the composer
npm uninstall -g composer-cli
npm install -g composer-cli
and i have run
teardownFabric.sh
go the the following error .FileNotFoundError: [Errno 2] No such file or directory: '/cygdrive/c/Users/Hiii
/workspace/HLF-Windows-Fabric-Tool/fabric-scripts/hlfv11/composer/docker-compose.yml
*is there any simple way just ugrade or downgrade and make both in the same sync*
@vijayin26 there are two CA:
https://bitbucket.org/userVI/workchain/src/6b5eff7bd7c2d29fdccf20f086b40f86ee71501f/fabric-dev-servers/fabric-scripts/hlfv11/createPeerAdminCard.sh#lines-165
Hello, I have done following steps to add x-api-key restriction:
1.Setup an environmental variable COMPOSER_APIKEY
2.Add a param -y APIKEY via the command line when starting the composer-rest-server.
I have added header parameter `x-api-key` using postman but it gives me Unauthorised error.
Can anybody tell me what was I am doing wrong or if I missed something
Hello, I have done following steps to add x-api-key restriction:
1.Setup an environmental variable COMPOSER_APIKEY
2.Add a param -y APIKEY via the command line when starting the composer-rest-server.
I have added header parameter `x-api-key` using postman but it gives me Unauthorised error.
Can anybody tell me what I did wrong or if I missed something
[ ](https://chat.hyperledger.org/channel/composer?msg=QDysxwQvD8WKASW8Q) @pichayuthk - I assume you saw the ACL tutorial too (but of course that isn't the same as reference documentation.) There is a little additional information in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#acls
If you feel there is a particular absence of Doc for ACLs - please raise an issue on GitHub
@VadimInshakov - have responded to S/O : -> https://stackoverflow.com/questions/50256241/hyperledger-composer-business-network-installation-error/50268434#50268434
[ ](https://chat.hyperledger.org/channel/composer?msg=3sDYtqh6opJBGnnBH) @mdvenkatesh - I don't think you need to run teardownFabric.sh The `startFabric.sh` script actually removes the existing Fabric containers and starts new ones.
@rthatcher i have already tried the running ./startFabric.sh
[ ](https://chat.hyperledger.org/channel/composer?msg=AWwBv68XStPMjDHk5) @HoneyShah - I tested this with Postman yesterday and it worked as expected. But you could try using curl on the command line for a quick test - maybe in 2 command windows:
```
composer-rest-server -c admin@trade-network -y QQ-apikey-WW -n never
curl -X GET --header 'x-api-key: QQ-apikey-WW' 'http://localhost:3000/api/Trader'
```
(I'm using the tutorial example with the Trader network)
[ ](https://chat.hyperledger.org/channel/composer?msg=AWwBv68XStPMjDHk5) @HoneyShah - I tested this with Postman yesterday and it worked as expected. But you could try using curl on the command line for a quick test - maybe in 2 command windows:
```
composer-rest-server -c admin@trade-network -y QQ-apikey-WW -n never
curl -X GET --header 'x-api-key: QQ-apikey-WW' 'http://localhost:3000/api/Trader'
```
(I'm using the tutorial example with the Trader network)
You get *401 Unauthorized* is you specify the wrong key or the wrong header name
@mdvenkatesh so Windows is not officially supported etc ..see https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html but you can always run it in a virtual machine. compatible error msg (on upgrade cmd? ) is likely that you would need to upgrade your business network 0.19.2 to match
@mdvenkatesh so Windows is not officially supported etc ..see https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html but you can always run it in a virtual machine. compatible error msg (on upgrade cmd? ) is likely that you would need to upgrade your business network 0.19.2 to match . Upgrading the business network is captured in Step Three/Four [here](https://hyperledger.github.io/composer/latest/tutorials/queries)
[ ](https://chat.hyperledger.org/channel/composer?msg=XDMvnt7zB2BJnvvtN) @rthatcher Thanks. It's working now. I was not specifying never use namespaces
[ ](https://chat.hyperledger.org/channel/composer?msg=XDMvnt7zB2BJnvvtN) @rthatcher Thanks. It's working now. I was not specifying never use namespaces so probably using wrong url
[ ](https://chat.hyperledger.org/channel/composer?msg=J5DtY8qZchAmd36xL) @mgcox I assume you mean particular operation (function): you can let the non-privileged participant request the update via a trxn request (ie if you want the request to show on the chain, otherwise do client-side). The request can trigger an event (as you suggested, to notify the higher authority) - or, the client app (ie higher authority user) can execute a query for request assets (that need the 'function' performed ) - that the higher authority participant is resp for. Once done, its status gets updated to CLOSED etc. So: one request trxn type, the operation trxn, and an ACL that enables the higher authority participant to perform the operation
[ ](https://chat.hyperledger.org/channel/composer?msg=NbBdQ7Pe5bWwvXyDJ) @mgcox I assume you mean particular operation (function): you can let the non-privileged participant request the update via a trxn request (ie if you want the request to show on the chain, otherwise do client-side). The request can trigger an event (as you suggested, to notify the higher authority) - or, the client app (ie higher authority user) can execute a query for request assets (that need the 'function' performed ) - that the higher authority participant is resp for. Once done, its status gets updated to CLOSED etc. So: one request trxn type, the operation trxn, and an ACL that enables the higher authority participant to perform the operation
@mahoney1 hi, is there some CLI command which shows the currently deployed network version number?
@uber.twin `composer network ping -v -c admin@tutorial-network` or `composer network ping -c admin@tutorial-network`
for the multi-org setup, is there a way to stop the network and start it back, so that data in couchdb is retained?
I am using following tutorial. I would like to shutdown my system and then resume from where I left
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
can it be possible in composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=p8xxv9NkLXiEHfSTs) @mahoney1 I thought so too, but for me, the "-v" option of "network list"/ "network ping" shows the composer version, not the business network version
*How to implement asset ownership sharing in composer?*
For example, there is a house, and its owner is *A* and *B*, and *A* has _30%_ ownership, *B* has _70%_ ownership.
Then, in hyperledger composer model language, how to implemnt it? Does composer model language support (or has) *_map_* data structure?
I have tried the following code, it does not work. So, does anybody has some good ideas?
````
participant Owner identified by email {
o String email
}
concept ShareOwnerShip {
o Double percentage
--> Owner owner
}
asset House identified by id {
o String id
--> ShareOwnerShip [] sharedOnwerShip
}
````
*BTW*, Please do not tell me to save the ownership as new asset, I am really do not want to do like that!!!!
*How to implement asset ownership sharing in composer?*
For example, there is a house, and its owner is *A* and *B*, and *A* has _30%_ ownership, *B* has _70%_ ownership.
Then, in hyperledger composer model language, how to implemnt it? Does composer model language support (or has) *_map_* data structure?
I have tried the following code, it does not work. So, does anybody has some good ideas?
````
participant Owner identified by email {
o String email
}
concept ShareOwnerShip {
o Double percentage
--> Owner owner
}
asset House identified by id {
o String id
--> ShareOwnerShip [] sharedOnwerShip
}
````
*BTW*, Please do not tell me to save the ownership as new asset, I am really do not want to do like that!!!!
*How to implement asset ownership sharing in composer?*
For example, there is a house, and its owner is *A* and *B*, and *A* has _30%_ ownership, *B* has _70%_ ownership.
Then, in hyperledger composer model language, how to implemnt it? Does composer model language support (or has) *_map_* data structure?
I have tried the following code, it does not work. So, does anybody has some good ideas?
````
participant Owner identified by email {
o String email
}
concept ShareOwnerShip {
o Double percentage
--> Owner owner
}
asset House identified by id {
o String id
--> ShareOwnerShip [] sharedOnwerShip
}
````
*BTW*, Please do not tell me to save the ownership as new asset, I am really do not want to do like that!!!!
*How to implement asset ownership sharing in composer?*
For example, there is a house, and its owner is *A* and *B*, and *A* has _30%_ ownership, *B* has _70%_ ownership.
Then, in hyperledger composer model language, how to implemnt it? Does composer model language support (or has) *_map_* data structure?
I have tried the following code, it does not work. So, does anybody has some good ideas?
````
participant Owner identified by email {
o String email
}
concept ShareOwnerShip {
o Double percentage
--> Owner owner
}
asset House identified by id {
o String id
--> ShareOwnerShip [] sharedOnwerShip
}
````
*BTW*, Please do not tell me to save the ownership as new asset, I am really do not want to do like that!!!!
*How to implement asset ownership sharing in composer?*
For example, there is a house, and its owner is *A* and *B*, and *A* has _30%_ ownership, *B* has _70%_ ownership.
Then, in hyperledger composer model language, how to implemnt it? Does composer model language support (or has) *_map_* data structure?
I have tried the following code, it does not work. So, does anybody has some good ideas?
````
participant Owner identified by email {
o String email
}
concept ShareOwnerShip {
o Double percentage
--> Owner owner
}
asset House identified by id {
o String id
--> ShareOwnerShip [] sharedOnwerShip
}
````
*BTW*, Please do not tell me to save the ownership as new asset, I am really do not want to do like that!!!!
hi guys
i want to do a block chain project containing 3 nodes (can any one suggest how do i configure the peer node and order node ) for validation and being sync in the datebase
[ ](https://chat.hyperledger.org/channel/composer?msg=uWwaqxN4yAuFH6n7R) i.e. I get "v0.19.1" but that is my composer version, not the installed business network version
@mengluo668 the concept array is effectively the map structure. What you have is fine. This sample network -> https://github.com/hyperledger/composer-sample-models/blob/master/packages/composer.finance/models/bond.cto and use of Concepts here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js will be a good reference point (Your model has a typo btw - 'Ownership')
@mengluo668 the array of concepts is effectively the map structure. What you have is fine. This sample network -> https://github.com/hyperledger/composer-sample-models/blob/master/packages/composer.finance/models/bond.cto and use of Concepts here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js will be a good reference point (Your model has a typo btw - 'Ownership')
[ ](https://chat.hyperledger.org/channel/composer?msg=RYYvgogBKLr8FsXT9) @uber.twin right, so -v is giving the cli version when you would expect the business network version (that you're pinging). But the output (without -v) of ping should show the deployed network version.
[ ](https://chat.hyperledger.org/channel/composer?msg=rRvK3of6jSBeuKzXg) @mdvenkatesh see table of resources here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#multiorg or there are some on the web - also check out the Fabric docs (as its a Fabric #fabric question) for guidance on building your 3 node network.
@mengluo668 Is it possible to reference concepts?
@mahoney1 Thanks for your response, but it does not meet my requirement, the code from composer-sample-models is about how to use keywork concept, but not about how to share a ownership of asset. Could you please try it from your local, I think it will be better to understand my requirement
@pedromlcosta no, my requirement is: An asset has multiple owners, different owner has different percentage of ownership. and it should be looks like below```
{asset:'house', owners:[{owner: 'A', percentage: '0.3'}, {owner: 'B', percentage: '0.5'}, {owner: 'C', percentage: }]
```
@pedromlcosta no, my requirement is: An asset has multiple owners, different owner has different percentage of ownership. and it should be looks like below```
{asset:'house', owners:[{owner: 'A', percentage: '0.3'}, {owner: 'B', percentage: '0.5'}, {owner: 'C', percentage: '0.2'}]
```
@pedromlcosta no, my requirement is: An asset has multiple owners, different owner has different percentage of ownership. and it should be looks like below```
{asset:'house', owners:[{owner: 'A', percentage: '0.3'}, {owner: 'B', percentage: '0.5'}, {owner: 'C', percentage: '0.2'}]
``` So, my requirement is, how to write code for upon ownership in composer model language ````asset house identified by houseId```` block
@pedromlcosta no, my requirement is: An asset has multiple owners, different owner has different percentage of ownership. and it should be looks like below```
{asset:'house', owners:[{owner: 'A', percentage: '0.3'}, {owner: 'B', percentage: '0.5'}, {owner: 'C', percentage: '0.2'}]
``` So, my requirement is, how to write code for upon ownership in composer model language `asset house identified by houseId` block
@pedromlcosta no, my requirement is: An asset has multiple owners, different owner has different percentage of ownership. and it should be looks like below```
{asset:'house', owners:[{owner: 'A', percentage: '0.3'}, {owner: 'B', percentage: '0.5'}, {owner: 'C', percentage: '0.2'}]
``` So, my requirement is, how to write code for upon ownership in composer model language `asset house identified by houseId { }` block
@pedromlcosta no, I know it is impossible to reference `concept` array in `asset` block, that's why I have to find out a solution to support my requirement: An asset has multiple owners, different owner has different percentage of ownership. and it should be looks like below```
{asset:'house', owners:[{owner: 'A', percentage: '0.3'}, {owner: 'B', percentage: '0.5'}, {owner: 'C', percentage: '0.2'}]
``` So, my requirement is, how to write code for upon ownership in composer model language `asset house identified by houseId { }` block
in the house asset, if you change "-->" to "o", would it work?
Because without creating new assets, the concept seems to be pretty much the only way to create a map
[ ](https://chat.hyperledger.org/channel/composer?msg=yjgwQGQ9uegvnJCiL) @mahoney1 tank you, that's what I was looking for
[ ](https://chat.hyperledger.org/channel/composer?msg=yjgwQGQ9uegvnJCiL) @mahoney1 thank you, that's what I was looking for
@mahoney1 i tried to by changing in the code package.json in replaced 0.19.2 to 0.19.4 and typed the following commands
1)composer archive create -t dir -n ../
@mahoney1 i tried to by changing in the code package.json in replaced 0.19.2 to 0.19.4 and typed the following commands
1)composer archive create -t dir -n ../
2)composer network install -a test-bna@0.0.2.bna -c PeerAdmin@hlfv1
3)now we are going to update the network by using the following command
composer network upgrade -c PeerAdmin@hlfv1 -n test-bna -V 0.0.2
@mahoney1 i tried to by changing in the code package.json in replaced 0.19.2 to 0.19.4 and typed the following commands
1)composer archive create -t dir -n ../
2)composer network install -a test-bna@0.0.2.bna -c PeerAdmin@hlfv1
3)now we are going to update the network by using the following command
composer network upgrade -c PeerAdmin@hlfv1 -n test-bna -V 0.0.2
*× Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: could not find chaincode with name 'test-bna')
Command failed*
@mahoney1 Thank you.
Hello! I am working on a multi-organization scenario. I read the tutorial here https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org. As I understand it, in this scenario there is only one wallet and only one REST server. The authentication to the REST server happens through any passport-supported strategy, e.g. github OAuth2.0 , and the card is imported into the wallet once.
In our scenario, the idea of having a single REST server that keeps a single wallet with all the identities of everyone is not applicable.
As I understand it, I cannot use an external wallet and pass the required information at request time to the REST server, correct? If I want separate wallets, I have either to run a REST server for each wallet, or ditch the REST server and use... what?
@mdvenkatesh The short answer to this is that the network name on the upgrade command is wrong (doesn't match what's already deployed and which you're trying to upgrade). One assumes you updated the 'version' property in package.json to match what you provided on the CLI. And also that your `composer-admin`, `composer-client` (ie composer modules) in your devDependencies are showing "0.19.4"
@mahoney1 I have to use passport-jwt for authentication and I am trying to finding sources which can help but unfortunately I am not getting exact steps to follow. I am quite confuse about how to generate url which returns token based on our logic and how to use that subsequently to authenticate other apis? Like in google oAuth we are providing authPath and callbackUrl to produce authentication token and retrieve it. Kindly help me to sort out this. I have done setup as provided in https://github.com/hyperledger/composer/issues/2038
@mahoney1 @rthatcher I have to use passport-jwt for authentication and I am trying to finding sources which can help but unfortunately I am not getting exact steps to follow. I am quite confuse about how to generate url which returns token based on our logic and how to use that subsequently to authenticate other apis? Like in google oAuth we are providing authPath and callbackUrl to produce authentication token and retrieve it. Kindly help me to sort out this. I have done setup as provided in https://github.com/hyperledger/composer/issues/2038
@mahoney1 @rthatcher I have to use passport-jwt for authentication and I am trying to find sources which can help but unfortunately I am not getting exact steps to follow. I am quite confuse about how to generate url which returns token based on our logic and how to use that subsequently to authenticate other apis? Like in google oAuth we are providing authPath and callbackUrl to produce authentication token and retrieve it. Kindly help me to sort out this. I have done setup as provided in https://github.com/hyperledger/composer/issues/2038
Has joined the channel.
@pedromlcosta Good idea, let me try and give you feedback later, thank you very much
sudo composer network start --networkName test --networkVersion 0.0.1 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw
Hi
I am running above command to the start the network and getting following error:
> x509@0.3.3 install /chaincode/output/node_modules/x509
> node-gyp rebuild
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: self signed certificate in certificate chain
gyp ERR! stack at TLSSocket.
can you please help?
[ ](https://chat.hyperledger.org/channel/composer?msg=Jx4sskFk2jKCw7GDM) @rudras - Are you seeing that error on your command line, or in a container log?
If you are seeing it on the command line I think it is a problem due to using `sudo`.
The install docs recommend against using sudo su or root.
This section in the Knowledge Wiki covers some Composer install questions: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#installissues
@rthatcher Thanks for quick reply, I have tried setup the docker/composer without sudo & I fail to do it
@rthatcher I am getting SSL certs validation error as I am behind corp proxy
[ ](https://chat.hyperledger.org/channel/composer?msg=syEo87vvSmY9A8Yig) @acbellini - there is a Wallet for each authenticated user to the rest server (e.g. for each Google user). I would think that in most cases each authenticated user would import just one card.
In the 2 Org example, a REST server could be started for both Orgs, and the 2 REST servers could use different Passport Strategies - so both Orgs could hook up to their Corporate directory rather than google.
Got, thanks @rthatcher
Hi, i have deployed Hyperledger Fabric 1.1 along with Hyperledger composer on two hosts. Second host is able to join the network. I executed following command and it worked perfectly. 'composer network install --card PeerAdmin@hlfv1 --archiveFile marbles-network.bna' . But when i try to execute following command it produces error. 'composer network start -n marbles-network -V 0.2.1-deploy.0 -A admin -S adminpw --card PeerAdmin@hlfv1 -f networkadmin.card' *Error* saeedi@saeedi-virtual-machine:~/marbles-network$ composer network start -n marbles-network -V 0.2.1-deploy.0 -A admin -S adminpw --card PeerAdmin@hlfv1 -f networkadmin.card
Starting business network marbles-network at version 0.2.1-deploy.0
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (marbles-network:0.2.1-deploy.0))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (marbles-network:0.2.1-deploy.0))
Command failed
``
Hi, i have deployed Hyperledger Fabric 1.1 along with Hyperledger composer on two hosts. Second host is able to join the network. I executed following command and it worked perfectly. 'composer network install --card PeerAdmin@hlfv1 --archiveFile marbles-network.bna' . But when i try to execute following command it produces error. 'composer network start -n marbles-network -V 0.2.1-deploy.0 -A admin -S adminpw --card PeerAdmin@hlfv1 -f networkadmin.card' *Error* ```saeedi@saeedi-virtual-machine:~/marbles-network$ composer network start -n marbles-network -V 0.2.1-deploy.0 -A admin -S adminpw --card PeerAdmin@hlfv1 -f networkadmin.card
Starting business network marbles-network at version 0.2.1-deploy.0
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (marbles-network:0.2.1-deploy.0))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (marbles-network:0.2.1-deploy.0))
Command failed
```
Hi, i have deployed Hyperledger Fabric 1.1 along with Hyperledger composer on two hosts. Second host is able to join the network. I executed following command and it worked perfectly. *composer network install --card PeerAdmin@hlfv1 --archiveFile marbles-network.bna* . But when i try to execute following command it produces error. *composer network start -n marbles-network -V 0.2.1-deploy.0 -A admin -S adminpw --card PeerAdmin@hlfv1 -f networkadmin.card* *Error* ```saeedi@saeedi-virtual-machine:~/marbles-network$ composer network start -n marbles-network -V 0.2.1-deploy.0 -A admin -S adminpw --card PeerAdmin@hlfv1 -f networkadmin.card
Starting business network marbles-network at version 0.2.1-deploy.0
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (marbles-network:0.2.1-deploy.0))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (marbles-network:0.2.1-deploy.0))
Command failed
```
Hi, i have deployed Hyperledger Fabric 1.1 along with Hyperledger composer on two hosts. Second host is able to join the network. I executed following command and it worked perfectly. *composer network install --card PeerAdmin@hlfv1 --archiveFile marbles-network.bna* . But when i try to execute following command it produces error. *composer network start -n marbles-network -V 0.2.1-deploy.0 -A admin -S adminpw --card PeerAdmin@hlfv1 -f networkadmin.card* ```saeedi@saeedi-virtual-machine:~/marbles-network$ composer network start -n marbles-network -V 0.2.1-deploy.0 -A admin -S adminpw --card PeerAdmin@hlfv1 -f networkadmin.card
Starting business network marbles-network at version 0.2.1-deploy.0
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (marbles-network:0.2.1-deploy.0))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (marbles-network:0.2.1-deploy.0))
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=LzLxsybv6KEhGgNDx) @pedromlcosta yes it is possible.
@mengluo668 correct, it was. If you post a Stack Overflow [question](https://stackoverflow.com/questions/tagged/hyperledger-composer) I can provide an example of how to 'traverse' an element in a concept array. You can also query 'the owner' (eg 'A') in your code, passing it a variable etc, to do something: eg. find me the number of owners that have a >= 0.3 stake and as I want to give them preferential treatment blah blah.
@mengluo668 correct, it was. If you post a Stack Overflow [question](https://stackoverflow.com/questions/tagged/hyperledger-composer) I can provide an example of how to 'traverse' an element in a concept array in a transaction script. You can also query 'the owner' (eg 'A') in your code, passing it a variable etc, to do something: eg. find me the number of owners that have a >= 0.3 stake and as I want to give them preferential treatment blah blah.
[ ](https://chat.hyperledger.org/channel/composer?msg=zkXoHqr6yWrS6kieD) @mahoney1 yes, it can work well, I am testing my code now, thank you very much
[ ](https://chat.hyperledger.org/channel/composer?msg=HJQMycGk68QfCyw8Q) @VadimInshakov line 132 point to org2 ca but that does not exist because the typo error on line 170. You need correct it and create PeerAdmin card.
@saeedi - apart from the obvious resolution issues as you've created a custom network (no valid response from _any_ peers) you need to use a PeerAdmin card, with a connection profile that knows about both sets of peers - assume this is this single Org or multi-Org ? Single org example here -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org - also you didn't say what Composer version you are using and also assumes you're using 1.1 GA Fabric
@mahoney1 Sorry about that. I am using composer 0.19.4 and yes i am using fabric v1.1.
@mahoney1 I have created. PeerAdmin card on first machine and as well as connection.json. Do i need to redo it on second peer and also do i need to install network on second peer ?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=HcdTAsd59r6Trqsri) @saeedi the business network needs to be installed on all peers. if 2nd peer is in the same Org, then no, otherwise yes you would.
Peers are in same organizations
@mahoney1 Peers are in same organizations
[ ](https://chat.hyperledger.org/channel/composer?msg=jfwAXAbRRKe7PFm5q) @mahoney1 Thank you very much for the detailed answer. But I have not yet found a solution to the problem. I left a comment in response to your statement.
Has joined the channel.
Hey, I've installed Hyperledger Fabric and composer locally on my machine. I've created a business network but when I try to compile it, the rest server cannot find the card.`zoobtech@zoobtech-VirtualBox:~$ composer-rest-server
? Enter the name of the business network card to use: me@dlms
? Specify if you want namespaces in the generated REST API: always use namespace
s
? Specify if you want to use an API key to secure the REST API: No
? Specify if you want to enable authentication for the REST API using Passport:
No
? Specify if you want to enable event publication over WebSockets: No
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c me@dlms -n always
Discovering types from business network definition ...
Connection fails: Error: Card not found: me@dlms
It will be retried for the next request.
Exception: Error: Card not found: me@dlms
{ Error: Card not found: me@dlms
at store.get.then.catch (/home/zoobtech/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/cardstore/walletbackedcardstore.js:74:27)
at
Hey, I've installed Hyperledger Fabric and composer locally on my machine. I've created a business network but when I try to compile it, the rest server cannot find the card.`zoobtech@zoobtech-VirtualBox:~$ composer-rest-server
? Enter the name of the business network card to use: me@dlms
? Specify if you want namespaces in the generated REST API: always use namespace
s
? Specify if you want to use an API key to secure the REST API: No
? Specify if you want to enable authentication for the REST API using Passport:
No
? Specify if you want to enable event publication over WebSockets: No
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c me@dlms -n always
Discovering types from business network definition ...
Connection fails: Error: Card not found: me@dlms
It will be retried for the next request.
Exception: Error: Card not found: me@dlms
{ Error: Card not found: me@dlms
at store.get.then.catch (/home/zoobtech/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/cardstore/walletbackedcardstore.js:74:27)
at
Hey, I've installed Hyperledger Fabric and composer locally on my machine. I've created a business network but when I try to compile it, the rest server cannot find the card.```
``` `zoobtech@zoobtech-VirtualBox:~$ composer-rest-server
? Enter the name of the business network card to use: me@dlms
? Specify if you want namespaces in the generated REST API: always use namespace
s
? Specify if you want to use an API key to secure the REST API: No
? Specify if you want to enable authentication for the REST API using Passport:
No
? Specify if you want to enable event publication over WebSockets: No
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c me@dlms -n always
Discovering types from business network definition ...
Connection fails: Error: Card not found: me@dlms
It will be retried for the next request.
Exception: Error: Card not found: me@dlms
{ Error: Card not found: me@dlms
at store.get.then.catch (/home/zoobtech/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/cardstore/walletbackedcardstore.js:74:27)
at
Hey, I've installed Hyperledger Fabric and composer locally on my machine. I've created a business network but when I try to compile it, the rest server cannot find the card.
`zoobtech@zoobtech-VirtualBox:~$ composer-rest-server
? Enter the name of the business network card to use: me@dlms
? Specify if you want namespaces in the generated REST API: always use namespace
s
? Specify if you want to use an API key to secure the REST API: No
? Specify if you want to enable authentication for the REST API using Passport:
No
? Specify if you want to enable event publication over WebSockets: No
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c me@dlms -n always
Discovering types from business network definition ...
Connection fails: Error: Card not found: me@dlms
It will be retried for the next request.
Exception: Error: Card not found: me@dlms
{ Error: Card not found: me@dlms
at store.get.then.catch (/home/zoobtech/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/cardstore/walletbackedcardstore.js:74:27)
at
Hey, I've installed Hyperledger Fabric and composer locally on my machine. I've created a business network but when I try to compile it, the rest server cannot find the card.
```zoobtech@zoobtech-VirtualBox:~$ composer-rest-server
? Enter the name of the business network card to use: me@dlms
? Specify if you want namespaces in the generated REST API: always use namespace
s
? Specify if you want to use an API key to secure the REST API: No
? Specify if you want to enable authentication for the REST API using Passport:
No
? Specify if you want to enable event publication over WebSockets: No
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c me@dlms -n always
Discovering types from business network definition ...
Connection fails: Error: Card not found: me@dlms
It will be retried for the next request.
Exception: Error: Card not found: me@dlms
{ Error: Card not found: me@dlms
at store.get.then.catch (/home/zoobtech/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/cardstore/walletbackedcardstore.js:74:27)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=xbyTHE75KGcsthHhc) Can I get some inputs on this
Has joined the channel.
Has joined the channel.
reminder that the Community call is at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-10th-May-2018 best regards Paul
Is there a way to split the ACL in multiple files?
@mahoney1 : what are the weekly times for the community calls?
@AbdullahTariq maybe you haven't imported the card? You can check the exact name(s) of your cards that are in your wallet using `composer card list`
@acbellini - no you can't - just one file - `permissions.acl` - on call -> see https://github.com/hyperledger/composer/wiki/Community (schedule A and B times at the bottom) - you can also download the calendar and import from [here](https://calendar.google.com/calendar/embed?src=linuxfoundation.org_nf9u64g9k9rvd9f8vp4vur23b0%40group.calendar.google.com&ctz=UTC)
[ ](https://chat.hyperledger.org/channel/composer?msg=fQPiNh6Lu9oZckRqq) @phanikumar - if you don't specify a project name for docker-compose via the environment variable, or a 'networks' name in the .yaml file, then the name of the current folder is used.
sorry reply to wrong message. I just want to exclude _byfn from my network that is what my requirement is and missed out that message somewhere
sorry reply to wrong message. I just want to exclude _byfn from my network that is what my requirement is and missed out that message somewhere @rthatcher can you help me on this
[ ](https://chat.hyperledger.org/channel/composer?msg=YXuCS8bvqKinjyqsm) @mahoney1 What can be done if compooser is not creating cards?```
I can use the business network on the browser using composer playground but it isn't creating any cards
```
SCGHK'Y
[ ](https://chat.hyperledger.org/channel/composer?msg=apyqk4826ZCesgRL2) @AbdullahTariq so are you using playground to test this using the web connector (where you create cards in the browser's local storage) - and now you're spinning up a REST server against a real Fabric (as you have to) and thus that's why you don't see the 'same cards' because Fabric is looking for the card in your disk-based wallet ??? That is my initial guess based on what you've posted.
[ ](https://chat.hyperledger.org/channel/composer?msg=apyqk4826ZCesgRL2) @AbdullahTariq so are you using playground to test this using the web connector (where you create cards in the browser's local storage) - and now you're spinning up a REST server against a real Fabric (as you have to) and thus that's why you don't see the 'same cards' because Composer is looking for the card in your disk-based wallet ??? That is my initial guess based on what you've posted.
[ ](https://chat.hyperledger.org/channel/composer?msg=apyqk4826ZCesgRL2) @AbdullahTariq so are you using playground to test this using the web connector (where you create cards in the browser's local storage) - and now you're spinning up a REST server against a real Fabric (as you have to) and thus that's why you don't see the 'same cards' because Composer is looking for the card in your disk-based wallet ??? That is my initial guess based on what you've posted. To create cards for interacting with Fabric, you have to create them using an admin, that is connected to the Fabric environmnet
[ ](https://chat.hyperledger.org/channel/composer?msg=QJTrr7nxZd2ECfYS5) @mahoney1 Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=cwBe4996YYAXdSpNN) @mahoney1 Yes, This is exactly what I wanted to say
So, What should I do to compile it?
@mahoney1 I have created several cards using admin too but still I cannot access it.
??
@mahoney1 ??
Has joined the channel.
@AbdullahTariq have you stood up a Fabric - like the Fabric provided by Composer, as a simple environment for development purposes? (Step Four in https://hyperledger.github.io/composer/latest/installing/development-tools.html ) ?
@AbdullahTariq have you stood up a Fabric - like the Fabric provided by Composer, as a simple environment for development purposes? (Step Four in https://hyperledger.github.io/composer/latest/installing/development-tools.html ) ? Once you've done that - see Step Four and Five of https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - creates the admin card. Once imported, you can use Playground to connect to the Fabric and create your user's business network cards....and as it shows, spin up your REST server either as the imported admin, or other designated participant of your business network
POST
...
Has anyone here successfully subscribed to composer events in an application?
How can I pass a value to Datetime type used in models.cto file. I tried to pass it as a string but it deos not work, then when I remove the quotes deos not work either.
@eguevarar I think its a timestamp
try printing tx.timestamp
javascript date shud work
forget the "I think its a timestamp :P"
[ ](https://chat.hyperledger.org/channel/composer?msg=JwGwdaGyuLRBWbFFr) @FlorentinoSainz yes a tried with Date but it does not work
I could save that in a model Datetime
*try tx.timestamp
here is the thing
(I mean, print it on console or something, that object can be saved in a Datetime)
I'm trying to migrate data from an existing system into actual deployed blockchain
ye ye I know, I was trying to give you a hint so you can find out what's the javascript date type
I know what is inside tx.timestamp can be stored there :)
so I'm designing a transaction that receive a string with a json array that contain a number of particioant data, after I parse the json I try to assing that value captured from console as you point me out (in that format) but it convert it into a large number as an epoch time I think, but don't figure how to convert it into Datetime
I'll try that tx.timestamp
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=XmEy9yBKwoAct8ek7) @vijayin26 Sorry, I just forgot to update the repository. I'll fix it now. But the error is the same as before.
Has joined the channel.
running fabric-samples causing the shell to halt at the
========= All GOOD, BYFN execution completed ===========
_____ _ _ ____
| ____| | \ | | | _ \
| _| | \| | | | | |
| |___ | |\ | | |_| |
|_____| |_| \_| |____/
running fabric-samples causing the shell to halt at the
========= All GOOD, BYFN execution completed ===========
_____ _ _ ____
| ____| | \ | | | _ \
| _| | \| | | | | |
| |___ | |\ | | |_| |
|_____| |_| \_| |____/
for a long period of time. I still can't understand why the script is halting even after completing the execution process
running fabric-samples causing the shell to halt at the
========= All GOOD, BYFN execution completed ===========
_____ _ _ ____
| ____| | \ | | | _ \
| _| | \ | | | | | |
| |___ | | \ | | |_| |
|_____| |_| \_| |____/
for a long period of time. I still can't understand why the script is halting even after completing the execution process
[ ](https://chat.hyperledger.org/channel/composer?msg=48wzrs7z63PCtAz3H) @mahoney1 is there such thing as a transaction request? Or am I creating that concept through the use of events?
@mgcox depends on where the transaction request is initiated, and whether you need to record the request on the blockchain. Presume the request come through a client application - so why couldn't the higher authority be notified there. Then that HA can execute the function you mention that creates a transaction or writes something in the business network. You need to work out the flow of the notification mechanism, and then how that is performed (including what interactions need to occur on the busines network). Just an opinion really, based on what info you've posted :-)
Has joined the channel.
@mahoney1 thanks a lot good fellow. You have been insightful
I think I will try to record the requests on the chain... that would enable the higher authority to be a decentralized figure(s) that fulfill the request. But that will require others scrupulously subscribed and listening to events in order to actively fullfill them on behave of the lesser participant
Has joined the channel.
Hello everyone, what would you estimate could be the average time to build a blockchain for commercial use? Also, can I use the bna created on composer to build a commercial blockchain or are there mores steps to take?
thanks in advance
It all depends on what you are trying to craft. Yes it can be deployed for commercial use.. but architecting the blockchain is just a sliver of the process.
Has joined the channel.
Has joined the channel.
Hi Everyone, Just started learning and using hyperledger fabric.
I have just made some changes in my models, and i want to upgrade my bna, for that
1. I have changed the version in package.json file
2. created new bna .
3. started the bna
And now i am upgrading from version 0.0.2 to 0.0.3 i am receiving the below error
`Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: could not find chaincode with name 'airlinev9')`
1. Docker is running .
2. ./startFabric.sh is done.
3. ./createPeerFabric.sh is done
Any one can tell what i am not able to understand?
I am using the below command for upgrade :
`composer network upgrade -c peeradmin@hlfv1 -n airlinev9 -V 0.0.3`
Has joined the channel.
Hi #composer. I have a question about the license status of what I'm being told is a composer-common dependency, sjcl. It doesn't seem to be Apache-2.0 and its license says "We suggest that you consult legal counsel before using SJCL
in a commercial project." Are there any concerns or discussions about this or similar license situations?
[ ](https://chat.hyperledger.org/channel/composer?msg=EmBWGKgHNaqWLyppY) Well i just found the solution by myself.
What i did is i deleted the previous card from the card list. And then again executed the command. And it successfully executed. Thank anyways.
@kennethcarpenterdltlabs looks like sjcl is part of the fabric-ca-client dependencies (not something composer directly depends on), so you might want to try #fabric-sdk-node channel
@kennethcarpenterdltlabs looks like sjcl is part of the fabric-ca-client dependencies (ie not something composer directly depends on), so you might want to try #fabric-sdk-node channel
Thanks David!
When I am starting the composer-rest-server I am getting the following error.
Exception: Error: Error trying to ping. Error: Composer runtime (0.19.5) is not compatible with client (0.19.2)
Where exactly is the client? I know where the composer runtime version is coming from because I did uninstall and install fresh.
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"open /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem: no such file or directory"}]]
It will be retried for the next request.
Exception: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"open /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem: no such file or directory"}]]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"open /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem: no such file or directory"}]]
at client.getUserContext.then.then.catch (/Users/RJT/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)
at
What could be the exact problem?
Hello everyone,
something went wrong while connecting to business network Error: Error trying to ping. Error: Error trying to query business network. Error: transaction not found Get http://couchdb:5984/composerchannel/lscc%00ownet?attachments=true: dial tcp: lookup couchdb on 127.0.0.11:53: no such host - make sure the chaincode ownet has been successfully instantiated and try again
I am getting this error after some time when composer is deployed on my server.
I am using 0.16.6 version of composer.
It works fine initially but later after sometime no transaction will help. Please suggest whats wrong in here @mahoney1 @rthatcher
It works fine initially but later after sometime everything, even ping will be failed. Please suggest whats wrong in here @mahoney1 @rthatcher
Response from attempted peer comms was an error: Error: 2 UNKNOWN: premature execution - chaincode (realestate:0.0.1) is being launched
@mahoney1 I figured out the issue, it was due to me using a network version. But now i am receiving following error ```✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated mailcomposer@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.9: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated buildmail@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.10: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm WARN notice [SECURITY] debug has 1 low vulnerability. Go here for more details: https://nodesecurity.io/advisories?search=debug&version=2.6.2 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/commander-558b3520/LICENSE'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/LICENSE'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/async-e04a06be/LICENSE'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/commander-558b3520/Readme.md'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/karma.conf.js'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/async-e04a06be/bower.json'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/node.js'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/async-e04a06be/CHANGELOG.md'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/component.json'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/async-e04a06be/.jshintrc'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/Makefile'
```
```npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/async-e04a06be/component.json'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/core-js-25614c68/LICENSE'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/.coveralls.yml'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/core-js-25614c68/Gruntfile.js'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/bower.json'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/core-js-25614c68/index.js'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/.eslintrc'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/core-js-25614c68/shim.js'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/.travis.yml'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/CHANGELOG.md'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/acorn-3d20bf66/dist/acorn.es.js'
npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/bluebird-25432266/js/browser/bluebird.js'
npm WARN The package composer-common is included as both a dev and production dependency.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: bytes@3.0.0 (node_modules/bytes):
npm WARN network SKIPPING OPTIONAL DEPENDENCY: request to https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz failed, reason: getaddrinfo ENOTFOUND registry.npmjs.org registry.npmjs.org:443
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: double-ended-queue@2.1.0-0 (node_modules/double-ended-queue):
npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: Cannot cd into '/chaincode/output/node_modules/.staging/double-ended-queue-5d5dc01a'
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: depd@1.1.2 (node_modules/depd):
npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: Cannot cd into '/chaincode/output/node_modules/.staging/depd-034cb485'
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: esprima@3.1.3 (node_modules/degenerator/node_modules/esprima):
npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: Cannot cd into '/chaincode/output/node_modules/.staging/esprima-aa16605d'
npm ERR! code ENOTFOUND
npm ERR! errno ENOTFOUND
npm ERR! network request to https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz failed, reason: getaddrinfo ENOTFOUND registry.npmjs.org registry.npmjs.org:443
npm ERR! network This is a problem related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settings.
npm ERR! network
npm ERR! network If you are behind a proxy, please make sure that the
npm ERR! network 'proxy' config is set properly. See: 'npm help config'
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-05-11T05_26_58_243Z-debug.log
"
Response from attempted peer comms was an error: Error: 2 UNKNOWN: failed to init chaincode: handler not found for chaincode marbles-network:0.2.4-deploy.0
Command failed```
Has joined the channel.
Has joined the channel.
Hi Team
While composer network install i am getting tls_process_server_certificate:certificate verify failed. error
I was struck here and unable to find why it is coming
Hello Can we create inner join kind of query?
I was following this tutorial
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Hi !!
I want some technical help related to a cookie to pass the authentication token to the REST server.
1. I wanted to know what parameters do cookie contain. Im able to recognise *access_token, userId* but what this *connect.sid* parameter is for? Which value I need to set for this parameter?
2. We get token from google api. When we validate it, it contains these fields in the json { issued_to, audience, user_id, scope, expires_in, email, verified_email, access_type } And we have to pass it in the cookie. So what is the format of the cookie hyperledger composer is following? we tried encodeURIComponent() for this but its not working. The format which I checked on hyperledger composer REST server is different. Can anyone tell me about this..
Hi !!
I want some technical help related to a cookie to pass the authentication token to the REST server.
1. I wanted to know what parameters do cookie contain. Im able to recognise *access_token, userId* but what this *connect.sid* parameter is for? Which value I need to set for this parameter?
2. We get token from google api. When we validate it, it contains these fields in the json { issued_to, audience, user_id, scope, expires_in, email, verified_email, access_type } And we have to pass it in the cookie. So what is the format of the cookie hyperledger composer is following? we tried encodeURIComponent() for this but its not working. The format which I checked on hyperledger composer REST server is different. Can anyone tell me about this..
Im using *angular4*..
Currently composer documentation says composer supports only single channel configuration when will it support multi-channel configuration as well? @mahoney1
hey in the query part of the tutorial when i try upgrade the tutorial network to 0.0.2
sri@sri-G551JW:~/tutorial-network$ composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.2.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
this is the response
what am i missing here
hi, all i find an error with composer-playground:
in connectorserver.js
funcation:
async connectionManagerImportIdentity (connectionProfile, connectionOptions, id, certificate, privateKey, callback)
if print some log :
LOG.info(method, connectionProfile, id, certificate, privateKey);
i find privateKey = null when i deploy a business-network (i upload Certificate and Private Key)
@saeedi - the errors you are seeing with composer network start command are problems with NPM commands while the new chaincode container is being built. Basically whatever npm settings you have on your host system (proxy config?) need to be replicated within the container . This section in the Knowledge Wiki has some guidance on how to do that: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
[ ](https://chat.hyperledger.org/channel/composer?msg=jAkg9g5J2n9mvXZS8) @sriharshajasthi - have you restarted you machine ? It looks like the Fabric is not started. You can verify this by trying `docker ps` - before re-starting your Fabric, look at this Q&A on Stack Overflow https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
[ ](https://chat.hyperledger.org/channel/composer?msg=DZhi7FB7vEKrixvMP) @rthatcher Thanks. That helped. :thumbsup:
@rthatcher hi, is there a way to design a single query covering all transaction types or are there built-in REST endpoint(s) for all/each transaction type(s)?
(I know one can write dedicated queries for each transaction type. e.g. "SELECT org.hyperledger.composer.system.AddParticipant"
[ ](https://chat.hyperledger.org/channel/composer?msg=66TfBKgcuLBfyNN4b) @uber.twin - there is an endpoint for each transaction you define, but for "system transactions" such as AddParticipant you will need to write a Query.
[ ](https://chat.hyperledger.org/channel/composer?msg=t9DzM7wMnwSzRT4j5) @rthatcher alright, thanks, that's all I need
[ ](https://chat.hyperledger.org/channel/composer?msg=JhdSNPf5mrTLWeTeC) @ApoorvChandurkar - please see this answer I wrote about channels yesterday on Stack Overflow: https://stackoverflow.com/questions/50252488/hyperledger-composer-for-enterprise/50254624#50254624
@rthatcher thanks for the link .Yes i did restart my laptop
its working fine if i can go uninterrupted
[ ](https://chat.hyperledger.org/channel/composer?msg=FfYXyQbz3ZwWEeHar) @Pranoti - this is an example of the curl command I use to test my REST server with Google OAuth2 - it shows that you need to pass the token as a Header, and it shows that the token is a long alpha-numeric string - hope it helps.
`curl -X GET --header 'X-Access-Token: htnNqL0zD9NGwtl30y6uBt6uKws6nnWjxDzYbYUyloqAm4pmjW1x4x0f0vknd0z2' 'http://localhost:3000/api/Trader'`
[ ](https://chat.hyperledger.org/channel/composer?msg=XHuKWubyyHj3JBbrj) @d8bhatta - no, there are no joins. Remember that you are querying CouchDB for the State Datsbase, not a relational database.
Has joined the channel.
Hello Everyone. I am in the process of setting up a test network where I have a single peer running on a remote server. I think I have all of the basic requirements setup. Using "peer channel create" and "peer channel join" on the peer I have successfully created and joined a channel. Next I created a connection from a remote composer-cli and successfully installed a .bna file with "composer network install". Finally I tried to start the network using "composer network start" from the remote composer-cli but it hangs and then times out with the error "Error: 2 UNKNOWN: error starting container: no such image". In the logs on the Peer I see "Attempting build with image hyperledger/fabric-ccenv:x86_64-1.1.0" but then it fails with "start-could not recreate container post recreate image: no such image". I am using composer-cli version v0.19.5. Any advice?
[ ](https://chat.hyperledger.org/channel/composer?msg=ruKAwrozMHh8dpYsa) @rthatcher ok, thanks for your reply.
[ ](https://chat.hyperledger.org/channel/composer?msg=jtDrjh86Pdo5hP33G) Please suggest me something.
[ ](https://chat.hyperledger.org/channel/composer?msg=ek777DXSWDjKXjakj) @jsmithmap - not sure why you are seeing the error, but you could try ` docker pull hyperledger/fabric-ccenv:x86_64-1.1.0` on the remote machine, and then retry the composer network start?
yes, ill try that now
[ ](https://chat.hyperledger.org/channel/composer?msg=y3hLpPn4xcqApSwwz) @rthatcher I got "Status: Image is up to date for hyperledger/fabric-ccenv:x86_64-1.1.0" and got the same error on running "composer network start" again
[ ](https://chat.hyperledger.org/channel/composer?msg=AKxwvE8HRzwKjtcKk) @vvmallesh - I would think that there is a problem with the certificate pasted into the connection.json file.
If I run "docker images" on the remote machine I see there is an image for each time I have run "composer network start". The latest one will have a REPOSITORY listed as "dev-blockchainpeer1.mytest133234.com-book-tracking-0.0.1-a706f0ad88c46efa1f54fa7b8ac2f8ff8c3c261ead9a20275b425d599df71daa" and be tagged as latest. For each other time I have run the "composer network start" command there is another image with REPOSITORY
Hello, one question, In composer acl files, Is there a way to create macro-conditions? I mean, like setting "
condition: (
p.organisations.some(function (organisation) {
return organisation.getIdentifier() === h.organisation.getIdentifier();
} )
)"
I would like to put that condition as an alias, bcs i'll be using it like 20 times
@james3443112 what version of Composer Playground (shown at the bottom) are you using, and on what OS and version - thanks. As this function from composer-common has been used extensively, the question arises how you built your business card (the privateKey is null).
@james3443112 what version of Composer Playground (shown at the bottom) are you using, and on what OS and version - thanks. As this function from composer-connector-server has been used extensively, the question arises how you built your business card (the privateKey is null).
[ ](https://chat.hyperledger.org/channel/composer?msg=Z6RLq9Csqc3X6kpho) one more thing, this transaction model/interface is stable, not subject to any imminent change, isn't it?
[ ](https://chat.hyperledger.org/channel/composer?msg=Z6RLq9Csqc3X6kpho) @rthatcher one more thing, this transaction model/interface is stable, not subject to any imminent change, isn't it?
something went wrong while connecting to business network Error: Error trying to ping. Error: Error trying to query business network. Error: transaction not found Get http://couchdb:5984/composerchannel/lsccownet?attachments=true: dial tcp: lookup couchdb on 127.0.0.11:53: no such host - make sure the chaincode ownet has been successfully instantiated and try again
[ ](https://chat.hyperledger.org/channel/composer?msg=JMWvzPvvWFWvJy7Ma) @jsmithmap - there should be a new Image (and container) for peer, for each new version of chaincode started - that is standard for Fabric. I guess you have 'several' failed builds that didn't get properly built or tagged.
BTW - did the pull make any difference?
[ ](https://chat.hyperledger.org/channel/composer?msg=xXkK8maLiNjBPywkh) @rthatcher No, doing the pull first did not make any difference
[ ](https://chat.hyperledger.org/channel/composer?msg=9Lh97R24JKZnLMQ9C) So is there potentially an issue with the chaincode itself causing the build of the ccenv image to fail?
Hello ! I generated API with yo, but i have this error :
````Error: 404 - Could not find API route. Please check your available APIs.````
I looked in google, some people say to change my-app/src/app/configuration.ts but i don't have this file ... How can i fix my issue ?
@pranoti 1. session ID cookie (can't help you on value, this is the composer channel) 2. there is a $cookies service available in the AngularJS API to set it. See [here](https://stackoverflow.com/questions/19915237/way-to-store-data-into-cookies-un-encoded) and [here](https://stackoverflow.com/questions/19915237/way-to-store-data-into-cookies-un-encoded)
@FlorentinoSainz you can simply write a function and call that for a true/false test ? eg `condition: (testOwnership(a, p))` where its defined as (eg) `function testOwnership(asset, participant) {
return asset.owner.getIdentifier() === participant.getIdentifier();
}
` in a script file
@FlorentinoSainz you can simply write a function and call that for a true/false test ? eg `condition: (testOwnership(a, p))` where its defined as (eg) ```function testOwnership(asset, participant) {
return asset.owner.getIdentifier() === participant.getIdentifier();
}
``` in a script file
it will find it in any script file?
I mean, the same script files that are used for transactions right?
@mahoney1 I guess yes, Ima try, thanks a lot!, its great, acl was getting a little weird to read with so many profile == 0, profile ==1 :)
is it feasible to perform a join operation in queries?
@yes, same files and same directory (lib).
@FlorentinoSainz yes, same files and same directory (lib).
didnt get u was it answer to my question?
@Varun2887 it was mine
If you are asking performance-wise, its a couchdb what you are querying, so it should work fine if you create the queries
(If ur asking about support, I didn't test if composer queries support joining)
(Assuming ur using couchdb as "database")
@Varun2887 JOIN is not available in the CouchDB (its not an SQL db) queries (and hence not yet in Composer QL) - each query works on one registry (asset, participant, trxn), to join results you could possibly 1) find all assets in assetRegX where its owner matches the owner of participantRegY (or assetRegY etc - depends what you want to match or 2) you would have to (in your TP code or client) manage in an array and `find` as appropriate etc
@Varun2887 JOIN is not available in the CouchDB (its not an SQL db) queries (and hence not 'yet' in Composer QL) - each query works on one registry (asset, participant, trxn), to join results you could possibly 1) find all assets in assetRegX where its owner matches the owner of participantRegY (or assetRegY etc - depends what you want to match or 2) you would have to (in your TP code or client) manage in an array and `find` as appropriate etc
@Varun2887 JOIN is not available in the CouchDB (its not an SQL db) queries (and hence not 'yet' in Composer QL) - each query works on one registry (asset, participant, trxn), to join results you could possibly 1) find all assets in assetRegX where its owner matches the owner of participantRegY (or assetRegY etc - depends what you want to match) or 2) you would have to (in your TP code or client) manage in an array and `find` as appropriate etc
@Varun2887 JOIN is not available in the CouchDB (its not an SQL db) queries (and hence not 'yet' in Composer QL) - each query works on one registry (asset, participant, trxn), to join results you could possibly 1) find all assets in assetRegX where its owner matches the owner of participantRegY (or assetRegY etc - depends what you want to match) or 2) you would have to (in your TP code or client) manage in an array and `find/join` as appropriate etc
@Varun2887 JOIN is not available in the CouchDB (its not an SQL db) queries (and hence not 'yet' in Composer QL) - each query works on one registry (asset, participant, trxn), to join results you could possibly 1) find all assets in assetRegX where its owner matches the owner of participantRegY (or assetRegY etc - depends what you want to match) or 2) you would have to (in your TP code or client) manage in an array and `find/join` as appropriate or use map/reduce etc
[ ](https://chat.hyperledger.org/channel/composer?msg=N8vrgzoZAETt2yQGW) @mahoney1 didnt understand point 1
these will be series of queries?
@Varun2887 point 1: you could conceivably '"JOIN" on relationships - as you have to match on something (relationships will straddle two registries in effect in producing the query results).
@Varun2887 point 1: you could conceivably '"JOIN" on relationship field(s) - as you have to match on something (relationships will straddle two registries in effect in producing the query results).
but for that i must know the relationship objects before hand
that have to come from a query as well
in my case
if you really really need it, there are ways to perform "pseudo-joins" on couchdb, but you would have to bypass composer ql prolly (I always end doing 2 queries anyways)
if you really really need it, there are ways to perform "pseudo-joins" on couchdb, but you would have to bypass composer ql (I always end doing 2 queries anyways)
(not recommending doing it, just saying :P)
@Varun2887 you would need to know the fields (find me all objects in regA that match the id in related regB without know what that id is ). You would know your use case better than me.
@Varun2887 you would need to know the fields (find me all objects in regA that match the id in related regB without knowing what that id is ). You would know your use case better than me.
Hello all, For some particular reason, we want to generate hash token in composer ````logic.js````, and make the hash token as identifier of an asset. So my question is, how to generate hash token in ````logic.js````? Can we import external packages into ````logic.js````?
Hello all, For some particular reason, we want to generate hash token in composer `logic.js`, and make the hash token as identifier of an asset. So my question is, how to generate hash token in `logic.js`? Can we import external packages into `logic.js`?
@mengluo668 two options 1) make a call-out `request.get()` from a service to generate it for you as described [here](https://hyperledger.github.io/composer/latest/integrating/call-out) or 2) if you want something simpler, write a JS function and call it in your TP eg such as ```function hashCode(str) {
return str.split('').reduce((prevHash, currVal) =>
(((prevHash << 5) - prevHash) + currVal.charCodeAt(0))|0, 0);
}``` and you can `console.log` it to check eg. `console.log('hashcode is ' + hashCode('Hello!') );` ...hth
@mengluo668 two options 1) make a call-out `request.get()` from a service to generate it for you as described [here](https://hyperledger.github.io/composer/latest/integrating/call-out) or 2) if you want something simpler, write a JS function and call it in your TP eg such as ```function hashCode(str) {
return str.split('').reduce((prevHash, currVal) =>
(((prevHash << 5) - prevHash) + currVal.charCodeAt(0))|0, 0);
}``` and you can `console.log` it to check eg. `console.log('hashcode is ' + hashCode('Hello!') );` ...hth ps. cannot use `includes` or `requires` in TP functions
Can anybody tell me how will it work?https://github.com/hyperledger/composer/blob/master/packages/composer-rest-server/test/authentication.js
[ ](https://chat.hyperledger.org/channel/composer?msg=EAsBL3f2YviTAbfeQ) @mahoney1 Thank you very much. I prefer to write a function...
[ ](https://chat.hyperledger.org/channel/composer?msg=rPggGChxH5KmieAKc) @rthatcher Not able to access REST api in that way actually..
[ ](https://chat.hyperledger.org/channel/composer?msg=spMo6r97khGfxeCG7) @jiteshukani2006 - Please check if your are connecting to the correct channel
While trying to do the composer identify request this message is throne, "Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 101057795:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:openssl\ssl\s23_clnt.c:827:
]" . Does any one got this, and tell me what is the issue here
Hello, is there an efficient way to determine the id of an Participant if I only now certain field values?
[ ](https://chat.hyperledger.org/channel/composer?msg=hLbKT2yFqLK5zxT5R) @rthatcher Ok, thanks for the info!
@mahoney1 hi, is a query "where" clause permitted to navigate relationships??
@mahoney1 hi, is a query "where" clause permitted to navigate relationships?
@Saschaka I think the best way would be to add a index into couchDB and then query based on that
I mean, add an index which indexes those fields
@Saschaka if ur using a basic secureless couchDB, this is what I use to add indexes (if it helps you, of course the json has to represent your index)
curl -i -g -X POST -H 'Content-Type: application/json' -d '{"index":{"fields": ["chaincodeid","data.$class","data.$registryType","data.$registryId","data.flowStatus"]},"name":"asset","ddoc":"assetDoc","type":"json"}' http://127.0.0.1:5984/composerchannel/_index
[ ](https://chat.hyperledger.org/channel/composer?msg=sPLWrsBzzLSKvHjgR) @Saschaka `getCurrentParticipant()` returns you the current participant as in `let currentParticipant = getCurrentParticipant();` - for other participants you can get them by id from the registry ... eg ```return getParticipantRegistry("org.acme.biz.Person")
.then(function (reg) {
return reg.get(tx.person.getIdentifier())
.then(function(me) {
console.log("my id: ", me.getIdentifier());
console.log("my address: ", me.address);
});
})
```
[ ](https://chat.hyperledger.org/channel/composer?msg=sPLWrsBzzLSKvHjgR) @Saschaka `getCurrentParticipant()` returns you the current participant as in `let currentParticipant = getCurrentParticipant();` - for other participants you can get them by id from the registry ... eg ```return getParticipantRegistry("org.acme.biz.Person")
.then(function (reg) {
return reg.get(tx.person.getIdentifier())
.then(function(me) {
console.log("my id: ", me.getIdentifier());
console.log("my address: ", me.address);
});
})
``` if you don't know the identifier, use a query.
oh, I didnt read the participant part, Thought you were asking about assets, sorry
[ ](https://chat.hyperledger.org/channel/composer?msg=cPjvZLg8TRmu3XQ9D) @uber.twin not in queries presently, just the fields in that registry.
Thx for your input @FlorentinoSainz . @mahoney1 the problem is that I do not have the ID. The ID is what I want to determine. I do have other fields which identify a participant (Business partner number and system number from an ERP-System ...)
[ ](https://chat.hyperledger.org/channel/composer?msg=jqeXr4cfFReAEgA9p) @Saschaka I had just updated my answer above
[ ](https://chat.hyperledger.org/channel/composer?msg=jqeXr4cfFReAEgA9p) @Saschaka I had just updated my answer above (call the query, or build/call the query, from your TP)
The transaction has attributes of the participants as input and I need to determine the unique ID which is used in the Participant-Registry
you can query the same way you query assets I think
For the PoC I will probably do a getAll() and then forEach until I find the right participant.
oh, I can use queries in the chaincode?
I think so (never did tho), anyways, you could also make your web backend to do the query and fill the id (unless its a security problem)
composer/latest/tutorials/queries
https://hyperledger.github.io/composer/latest/tutorials/queries
check the example there, 2nd one does a query in the chain code
if you want to do it even faster you can add an index, but I don't think it will be a problem anyways
hey, thats nice! Thx a lot @FlorentinoSainz ! I will try this.
Unfortunately the query in the example is not dynamoc
[ ](https://chat.hyperledger.org/channel/composer?msg=FcpvjNvEASojLTtkk) @Saschaka yes you can use queries from TP functions, or as you say you can do what you suggest (if its not a voluminous / large registry etc etc)
@Saschaka I think if you add the parameters after the name it works
I mean, like await connection.query(queryName, params), and params being a dictionary with the names in the query
i think the API is the same than for composer-client, didn't try tho
[ ](https://chat.hyperledger.org/channel/composer?msg=8ipsETwwYE6uiuTdf) @Saschaka if the transaction is passed the participant as a relationship, why can't you access that (you can get the ID using tx.person.getIdentifier() blah blah ). Even if you pass multiple participants etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=8ipsETwwYE6uiuTdf) @Saschaka if the transaction is passed the participant as a relationship, why can't you access that (you can get the ID using tx.person.getIdentifier() or any field blah blah ). Even if you pass multiple participants etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=hZg3hwWnGrnBcFtaY) @mahoney1 OK, I don't know if there is a way to list all HistorianRecords pertaining to a certain asset type.
it'll be great if the HistorianRecord could carry information regarding the actual asset type of a AddAsset transaction
[ ](https://chat.hyperledger.org/channel/composer?msg=hZg3hwWnGrnBcFtaY) @mahoney1 OK, I don't know if there is a way to list all HistorianRecords pertaining to a certain asset type.
it'll be great if the HistorianRecord could carry information regarding the actual asset type of a AddAsset transaction. I know I can query the AddAsset instead of HistorianRecord, but it'll convey more data than I need. Queries don't support projection, right?
@uber.twin feel free to raise an enhancement request. Presently, you would have to go to the registry for the transaction type (eg AddAsset) and get it this way in a query `SELECT org.hyperledger.composer.system.AddAsset WHERE targetRegistry == 'resource:org.hyperledger.composer.system.AssetRegistry#org.acme.account.BankAccount'` that should pull the trxns related to that asset class. Similarly for UpdateAsset , RemoveAsset etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=Bx8ZytmqnEyj832wD) @mahoney1 yes, thank you. I'll be the full data though and possibly make the operation slow
@rthatcher Thanks now it works. I am trying to import a card in 2nd machine that i exported from 1st machine but when i execute *composer card import -f jdoe.card*
```It produces following error.
Error: Unable to read card file: /home/saeedi/blockchain/jdoe.card
Command failed```
@rthatcher Thanks now it works. I am trying to import a card in 2nd machine that i exported from 1st machine but when i execute *composer card import -f jdoe.card*
It produces following error.
```
Error: Unable to read card file: /home/saeedi/jdoe.card
Command failed```
[ ](https://chat.hyperledger.org/channel/composer?msg=D2pMoXeLR3RjdvWL6) @saeedi - the .card file is really a .zip file, so as a test of the file you could try to unzip it.
@rthatcher It contains two files. *connection.json* and *metadata.json*. So how do i use import with this ?
[ ](https://chat.hyperledger.org/channel/composer?msg=tgBnN3nYxRs5sYDNc) @mahoney1 nevertheless, when quering the AddAsset transaction type, is it possible to search in terms of a specific Asset identity/instance too?
[ ](https://chat.hyperledger.org/channel/composer?msg=tgBnN3nYxRs5sYDNc) @mahoney1 nevertheless, when quering the AddAsset transaction type, is it possible to search in terms of a specific Asset identity/instance too? as to obtain the transaction which created a specific Asset
[ ](https://chat.hyperledger.org/channel/composer?msg=tgBnN3nYxRs5sYDNc) @mahoney1 nevertheless, when quering the AddAsset transaction type, is it possible to search in terms of a specific Asset identity/instance too? as to obtain the transactions which created and possibly updated a specific Asset
[ ](https://chat.hyperledger.org/channel/composer?msg=EyEAgapnDtzprtXdw) @saeedi - OK, I just suggested unzip to see if the file was a vaild zip archive file. I see the error *Unable to read card file:* when the permissions are not set for the file, perhaps try `chmod +rwx jdoe.card` and retry the import
@rthatcher Thanks a lot it worked. :blush:
For those interested I updated my small demo application on how to setup a complete rest server with jwt auth - multi user mode and all the necessary endpoints to manage your data to 0.19.5. Good for learning purposes :) https://github.com/ypeckstadt/hyperledger-composer-rest-server
Hello ! I have this error in rest's log when i try to use angular API :
``Unhandled error for request GET /bootstrap.min.css.map: Error: Cannot GET /bootstrap.min.css.map``
Someone know how fix it ?
@Poneey Do you have bootstrap in your package.json and installed in your node_modules?
@uber.twin given query 'testquery' = `SELECT org.hyperledger.composer.system.AddAsset WHERE targetRegistry == 'resource:org.hyperledger.composer.system.AssetRegistry#org.acme.account.BankAccount` (say) - you can try this to access the asset ids as follows ```return query('testquery')
.then(function (results) {
for (var n = 0; n < results.length; n++) {
var txn = results[n];
console.log('A asset identifier is: ' + txn.getIdentifier()); // 4bd69db-d4e5-4587-b427-d6e3d302727a
console.log('Resources for asset: ' + txn.resources); // Resource {id=org.acme.trading.House#6389}
console.log('Asset ID in resources array ' + txn.resources[0].id); 6389 my field is 'id'
}
}); ``` where `resources[]` is available for the AddAsset trxn.
@uber.twin given query 'testquery' = `SELECT org.hyperledger.composer.system.AddAsset WHERE targetRegistry == 'resource:org.hyperledger.composer.system.AssetRegistry#org.acme.trading.House` (say) - you can try this to access the asset ids as follows ```return query('testquery')
.then(function (results) {
for (var n = 0; n < results.length; n++) {
var txn = results[n];
console.log('A asset identifier is: ' + txn.getIdentifier()); // 4bd69db-d4e5-4587-b427-d6e3d302727a
console.log('Resources for asset: ' + txn.resources); // Resource {id=org.acme.trading.House#6389}
console.log('Asset ID in resources array ' + txn.resources[0].id); 6389 my field is 'id'
}
}); ``` where `resources[]` is available for the AddAsset trxn.
@uber.twin given query 'testquery' = `SELECT org.hyperledger.composer.system.AddAsset WHERE targetRegistry == 'resource:org.hyperledger.composer.system.AssetRegistry#org.acme.trading.House` (say) - you can try this to access the asset ids as follows ```return query('testquery')
.then(function (results) {
for (var n = 0; n < results.length; n++) {
var txn = results[n];
console.log('A trxn identifier is: ' + txn.getIdentifier()); // 4bd69db-d4e5-4587-b427-d6e3d302727a
console.log('Resources for asset: ' + txn.resources); // Resource {id=org.acme.trading.House#6389}
console.log('Asset ID in resources array ' + txn.resources[0].id); 6389 my field is 'id'
}
}); ``` where `resources[]` is available for the AddAsset trxn.
@uber.twin given query 'testquery' = `SELECT org.hyperledger.composer.system.AddAsset WHERE targetRegistry == 'resource:org.hyperledger.composer.system.AssetRegistry#org.acme.trading.House` (say) - you can try this to access the asset ids as follows ```return query('testquery')
.then(function (results) {
for (var n = 0; n < results.length; n++) {
var txn = results[n];
console.log('trxn identifier is: ' + txn.getIdentifier()); // 4bd69db-d4e5-4587-b427-d6e3d302727a
console.log('Resources for asset in trxn: ' + txn.resources); // Resource {id=org.acme.trading.House#6389}
console.log('Asset ID from resources array ' + txn.resources[0].id); 6389 my field is 'id'
}
}); ``` where `resources[]` is available for the AddAsset trxn.
@uber.twin given query 'testquery' = `SELECT org.hyperledger.composer.system.AddAsset WHERE targetRegistry == 'resource:org.hyperledger.composer.system.AssetRegistry#org.acme.trading.House` (say) - you can try this to access the asset ids as follows ```return query('testquery')
.then(function (results) {
for (var n = 0; n < results.length; n++) {
var txn = results[n];
console.log('trxn identifier is: ' + txn.getIdentifier()); // 4bd69db-d4e5-4587-b427-d6e3d302727a
console.log('Resources for asset in trxn: ' + txn.resources); // Resource {id=org.acme.trading.House#6389}
console.log('Asset ID from resources array ' + txn.resources[0].id); // 6389 my field is 'id'
}
}); ``` where `resources[]` is available for the AddAsset trxn.
@vijayin26 in what package.json ? Of my app ?
yes
@vijayin26 i just found the issue ! i deleted "/*# sourceMappingURL=bootstrap.min.css.map */" in bootstrap.css and bootstrap.min.css
[ ](https://chat.hyperledger.org/channel/composer?msg=2GZufE92yZFzKiz9Q) @mahoney1 Sure, but I'm saying the other way around -having an Asset Id, to retrieve all transactions pertaining to it, for the purpose of an audit trail
@uber.twin you're querying a transaction registry ; you need an asset id to compare against yours. ie ...if THIS transaction, in that trxn registry class, relates to the asset ID you're looking for. As I mentioned earlier, you can't use relationships in a query. The above is one way to get it - you can compare. But you have to query all trxn in AddAsset. This is but one option.
@uber.twin you're querying a transaction registry ; you need an asset id to compare against yours. ie ...if THIS transaction, in that trxn registry class, relates to the asset ID you're looking for. As I mentioned earlier, you can't use relationships in a query condition. The above is one way to get it - you can compare. But you have to query all trxn in AddAsset. This is but one option.
[ ](https://chat.hyperledger.org/channel/composer?msg=ndzwFyrQGJvkgH5rF) @mahoney1 I could also try to save the transaction ids in the chaincode, as part of the asset maybe
[ ](https://chat.hyperledger.org/channel/composer?msg=ndzwFyrQGJvkgH5rF) @mahoney1 I could also try to save the transaction ids in the chaincode, as part of the asset maybe, then I'll have a list with the ids of all transactions acting upon an asset instance
@uber.twin you can certain create a transaction, that adds an asset and do as you wrote above as the asset is added to the registry, absolutely.
@uber.twin you can certainly create a transaction, that adds an asset and do as you wrote above as the asset is added to the registry, absolutely.
Has joined the channel.
Hi everyone, how to do if the first is down ? i have 6 peers but if the first is down, the transactions failed 😞
An idea ?
thanks for your help, regards
[ ](https://chat.hyperledger.org/channel/composer?msg=N9Hz64uS3dg7C53aM) @vivanno - what is the failure message ?
@rthatcher when i'm submit a transaction via composer with first peer down the result is :
Error: Error trying invoke business network. Error: Error: 14 UNAVAILABLE: Connect Failed
@vivanno what version of composer, how many peers are in your channel definition and are all endorsing peers ? the above looks like it only tried to contact a single peer.
Hey Guys,
Hey Guys,```
I want to import a business card but I am constantly getting an error
```
Hey Guys,```
I want to import a business card but I am getting an error`zoobtech@zoobtech-VirtualBox:~/tutorial-network$ composer card import -f admin@tutorial-network.card
Failed to import the business network card
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: x-type
message: should have required property 'x-type'
keyword: pattern
dataPath: .version
schemaPath: #/properties/version/pattern
params:
pattern: ^1.0.*$
message: should match pattern "^1.0.*$"
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: client
message: should have required property 'client'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: certificateAuthorities
message: should have required property 'certificateAuthorities'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: channels
message: should have required property 'channels'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: orderers
message: should have required property 'orderers'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: peers
message: should have required property 'peers'
Error: Errors found in the connection profile in the card
Command failed
`
```
Hey Guys,```
I want to import a business card but I am getting an error
`zoobtech@zoobtech-VirtualBox:~/tutorial-network$ composer card import -f admin@tutorial-network.card
Failed to import the business network card
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: x-type
message: should have required property 'x-type'
keyword: pattern
dataPath: .version
schemaPath: #/properties/version/pattern
params:
pattern: ^1.0.*$
message: should match pattern "^1.0.*$"
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: client
message: should have required property 'client'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: certificateAuthorities
message: should have required property 'certificateAuthorities'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: channels
message: should have required property 'channels'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: orderers
message: should have required property 'orderers'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: peers
message: should have required property 'peers'
Error: Errors found in the connection profile in the card
Command failed
`
```
@AbdullahTariq - are you trying to import an 'old' card into a 'new' version of Composer ? - where did the card come from ?
@rthatcher I created the card using CARD CREATE command
@vivanno @davidkel - just confirming (before signing off) Composer (v0.19.x) is designed to be tolerant of a _downed peer_ if the configuration in the connection.json is correct, and endorsement does not require it.
@rthatcher ?
[ ](https://chat.hyperledger.org/channel/composer?msg=KeMMBE8QBLy6S3NoE) @AbdullahTariq - I would guess that you have some formatting error in the connection.json - if you use a "good" editor it should highlight syntax errors.
Hi, I cannot find the recording for yesterday's community call in the gdrive folder. Am I missing something? I wanted to listen again to something as I had to drop early
Has joined the channel.
@davidkel @rthatcher thanks i have one organisation and six peers. i use composer v0.19.4. look at my connection.json :
{
"name": "hlfv1",
"x-type": "hlfv1",
"x-commitTimeout": 600,
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "600",
"eventHub": "600",
"eventReg": "600"
},
"orderer": "600"
}
}
},
"channels": {
"composerchannel": {
"orderers": [
"orderer.example.com"
],
"peers": {
"peer0.org1.example.com": {},
"peer1.org1.example.com": {},
"peer2.org1.example.com": {},
"peer3.org1.example.com": {},
"peer4.org1.example.com": {},
"peer5.org1.example.com": {}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com",
"peer1.org1.example.com",
"peer2.org1.example.com",
"peer3.org1.example.com",
"peer4.org1.example.com",
"peer5.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
}
},
"orderers": {
"orderer.example.com": {
"url": "grpc://localhost:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://X.X.X.X6:7051",
"eventUrl": "grpc://X.X.X.X:7053"
},
"peer1.org1.example.com": {
"url": "grpc://X.X.X.X:8051",
"eventUrl": "grpc://X.X.X.X:8053"
},
"peer2.org1.example.com": {
"url": "grpc://X.X.X.X:7051",
"eventUrl": "grpc://X.X.X.X:7053"
},
"peer3.org1.example.com": {
"url": "grpc://X.X.X.X:8051",
"eventUrl": "grpc://X.X.X.X:8053"
},
"peer4.org1.example.com": {
"url": "grpc://X.X.X.X:7051",
"eventUrl": "grpc://X.X.X.X:7053"
},
"peer5.org1.example.com": {
"url": "grpc://X.X.X.X:8051",
"eventUrl": "grpc://X.X.X.X:8053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://localhost:7054",
"caName": "ca.org1.example.com"
}
}
}
@vivanno connection profile looks ok, but unable to recreate your issue. Maybe you could get some debug trace by doing
```
export DEBUG=composer[debug]:*
```
and capturing the output
@vivanno connection profile looks ok (assuming the urls of X.X.X.X obfuscating some info), but unable to recreate your issue. Maybe you could get some debug trace by doing
```
export DEBUG=composer[debug]:*
```
and capturing the output
@vivanno connection profile looks ok (assuming the urls of X.X.X.X obfuscating some info), but unable to recreate your issue. Maybe you could get some debug trace by doing
```
export DEBUG=composer[debug]:*
```
and capturing the output when you invoke the transaction
Has joined the channel.
What I installed the composer-playground and run it, I got below error. pls help.
internal/child_process.js:323
throw errnoException(err, 'spawn');
what -> when
I installed it with npm v8.9.4 in ubuntu 16.04
Has joined the channel.
@vivanno managed to recreate the scenario, there is a restriction in the way the fabric node-sdk works which limits how tolerant composer can be to peers going down. Thanks for the feedback will need to feed this back to the fabric node sdk to address.
So the rule is
- if you have an established connection and any peer is down, the connection will continue to work
- if you don't have an established connection and the first peer in the connection profile is down, a connection cannot be established. A connection can be established if the first peer is up but other peers are down.
Has joined the channel.
@davidkel hi, when export DEBUG=composer[debug]:* is declared nothing to appear. Could you give your source about the rules ? it's official ? Do you know a workaround about this subject ? Thanks you.
@vivanno @davidkel Hello guys, I am in the same case, for the moment, I am on a POC, so with what you are saying, I can not validate the solution because it is a big SPOF.
Can you confirm?
[ ](https://chat.hyperledger.org/channel/composer?msg=WcG4fjhaZbEXung2r) @rthatcher the message is:
Error: Error trying invoke business network. Error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
Has joined the channel.
Has joined the channel.
@vivanno Logging is described here https://hyperledger.github.io/composer/latest/problems/diagnostics. I hadn't used it for a while and the behaviour was changed such that it writes to a log file in the `.composer/composer-logs` directory and not to the console anymore. As for official we don't document the capabilities of failover as although there is code in there to try to be as resilient as possible, not all scenarios have been tested. The only workaround would be to change the order of peers in the connection profile when establishing a connection. However applications should not be constantly creating and disconnecting connections if it can be avoided.
@vivanno Logging is described here https://hyperledger.github.io/composer/latest/problems/diagnostics. I hadn't used it for a while and the behaviour was changed such that it writes to a log file in the `.composer/composer-logs` directory and not to the console anymore. As for official we don't document the capabilities of failover as although there is code in there to try to be as resilient as possible, not all scenarios have been tested. The only workaround would be to change the order of peers in the connection profile when establishing a connection. However applications should not be constantly creating and disconnecting connections if it can be avoided and once your connection is established then if the first peer goes down then so long as the org has other peers defined, this will continue to work
Has joined the channel.
Has anyone been able to connect locally running composer-playground to IBM Fabric Network? I'm not able to generate correct connection profile. It says AUTHORIZATION_FAILED. Any help would be appreciated. Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=d7JjfD39ybS9pFYF9) @davidkel thanks for details
@davidkel Does it means if the application detect that peer0 is down, we can change the order of connection to peers with the param `additionalConnectOptions` of BusinessNetworkConnection.connect() ?
@davidkel Does it mean if the application detect that peer0 is down, we can change the order of connection to peers with the param `additionalConnectOptions` of BusinessNetworkConnection.connect() ?
error
Hi i am trying to deploy bna file to bluemix starter plan which is having hlfv 1.1 now , i m trying from latest composer but i m getting below error , any help would be appreciated
@sstone1 @rthatcher any insight
as its fabric version is 1.1 we should be able to do using composer 0.19.x
cli container getting stopped when the time period is completed
cli container getting stopped when the time period is completed and making the network unreachable
cli container getting stopped when the time period is completed and making the container unavailable to execute commands
@phanikumar how to do that
what do you mean by how to do that?
what do you mean by how to do that @sghosh2 ?
Ohkk got it , sorry , do u have any idea how to fix this
issue
and if i go to bluemix i see there it is
Clipboard - May 13, 2018 12:57 PM
Has left the channel.
Unable to start composer network for multiple organizations. I am using this command for network start.
composer network start -c PeerAdmin@byfn-network-org1 -n tutorial-network -V 0.0.1 -o endorsementPolicyFile=tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem Error: Error: Error trying to start business network.
Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: premature execution - chaincode (tutorial-network:0.0.1) is being launched
Hey,
Is there any command to check for duplicate input in two fields?
If yes, then how to block duplicate input in two or more fields?
Anyone?
is cli a mandatory container to run?
Has joined the channel.
@ahmadzafar it happens when you didnt install properly and/or using not using the correct version for composer
try this tutorial https://hackernoon.com/deploy-a-business-network-on-free-ibm-blockchain-starter-plan-93fafb3dd997
[ ](https://chat.hyperledger.org/channel/composer?msg=onvdGMqwvYMTeZp7R) @mataide thanks. It has been solved now. It was version issue..
Guys, how to set an identifier?
Everytime that I make a request, my identifier changes
{
"5": "Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier 'd2ece2bd101c04b4c333f4c7e021923c094fe70907a141d9f44a592f2aca726b', has not been registered"
}
```{
"5": "Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier 'd2ece2bd101c04b4c333f4c7e021923c094fe70907a141d9f44a592f2aca726b', has not been registered"
}```
Hello,
I'am tryng to install the .bna that i extract from my composer playground, but when i execute the command composer network install gives me the error : ERROR: card not found, but the card is in the directory and when i execute the command i specify the card directory.
Can somebody help me?
Response from attempted peer comms was an error
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
What is the meaning of this error and how can i solve it
i'am trying to execute this identity request :
composer identity request -c PeerAdmin@orgx-network-rawmaterials -u admin -s adminpw -d adminRM
but always gives me the error
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
Has joined the channel.
Can somebody help me? I am trying to use the NodeJs Api, when I am trying to do the connection:
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
I get this error
Unable to load requested module composer-wallet-filesystem
somebody knows which is the issue?
something about this?
https://hyperledger.github.io/composer/latest/business-network/cloud-wallets
but I dont get it
Has joined the channel.
hmmm i wonder if it is a namespace problem
Unable to upgrade composer network..
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: version already exists for chaincode with name 'tutorial-network')
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: version already exists for chaincode with name 'tutorial-network')
I am using this command..
composer network upgrade -c PeerAdmin@byfn-network-org1 -n tutorial-network -V 0.0.1 -o endorsementPolicyFile=tmp/composer/endorsement-policy.json
Unable to upgrade composer network..
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: version already exists for chaincode with name 'tutorial-network')
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: version already exists for chaincode with name 'tutorial-network')
I am using this command..
composer network upgrade -c PeerAdmin@byfn-network-org1 -n tutorial-network -V 0.0.1 -o endorsementPolicyFile=tmp/composer/endorsement-policy.json
Unable to upgrade composer network..
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: version already exists for chaincode with name 'tutorial-network')
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: version already exists for chaincode with name 'tutorial-network')
I am using this command..
composer network upgrade -c PeerAdmin@byfn-network-org1 -n tutorial-network -V 0.0.1 -o endorsementPolicyFile=tmp/composer/endorsement-policy.json
Unable to upgrade composer network..
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: version already exists for chaincode with name 'tutorial-network')
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: version already exists for chaincode with name 'tutorial-network')
I am using this command..
composer network upgrade -c PeerAdmin@byfn-network-org1 -n tutorial-network -V 0.0.1 -o endorsementPolicyFile=tmp/composer/endorsement-policy.json
Unable to install updated network.
Error: Error trying install business network. Error: The business network is already installed on all the peers
I am using this command for install updated network
composer network install --card PeerAdmin@byfn-network-org1 --archiveFile tutorial-network\@0.0.1.bna
i tried restarting the peers and i think that helped
Error: Unhandled promise rejection {}
at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
at error () native strict preventsyield
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1) preventsyield
Error: Unhandled promise rejection {}
at [anon] (/chaincode/input/src/composer/vendor/gopkg.in/olebedev/go-duktape.v3/duk_console.c:55) internal
at error () native strict preventsyield
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:2) strict
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1)
at [anon] (eval:1) preventsyield
I am getting this problem in docker container for my network
can anybody tell me why this is happening
I am still using composer 0.16.6
this will go if I restart everything
how can we pull the transaction details of a recently committed transaction>
also is it possible to get current number of blocks written in a network with its details
Has joined the channel.
```Error: Error trying invoke business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: TypeError: Cannot read property 'getIdentifier' of undefined Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: TypeError: Cannot read property 'getIdentifier' of undefined Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: TypeError: Cannot read property 'getIdentifier' of undefined Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: TypeError: Cannot read property 'getIdentifier' of undefined Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: TypeError: Cannot read property 'getIdentifier' of undefined ```
getting this error on `getCurrentParticipant()` in a transaction.. any probable root cause?
I am getting following error while executing command
`docker logs rest`
```
[2018-05-14 08:03:31] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-05-14 08:03:31] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: Composer runtime (0.19.5) is not compatible with client (0.19.2)
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Composer runtime (0.19.5) is not compatible with client (0.19.2)
Error: Error trying to ping. Error: Composer runtime (0.19.5) is not compatible with client (0.19.2)
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:789:34)
at
@Varun2887 yes, the root cause is most likely how you're using the getIdentifier function eg should be something likke `let currentParticipant = getCurrentParticipant() ; if (currentParticipant.getIdentifier() !== '2' ) // do something ....`
@Varun2887 yes, the root cause is most likely how you're using the getIdentifier function eg should be something like `let currentParticipant = getCurrentParticipant() ; if (currentParticipant.getIdentifier() !== '2' ) // do something ....`
i have to preserve the current participant id in an asset
```enrollUser.individualUser = factory.newResource('org.acc', 'Users', getCurrentParticipant().getIdentifier());```
this is my code
@mahoney1
can there be some issue with ACL?
@Varun2887 `var factory = getFactory();
let resource = factory.newResource('org.acme.biznet', 'Trader', getCurrentParticipant().getIdentifier());
console.log('Varun2889's test for the curr Participant is a relationship resource id in my txn ' + resource);` ..this works fine. (think you would get 'resource does not exist' (or similar) if it can't 'see' the resource due to ACLs.
@Varun2887 `var factory = getFactory();
let resource = factory.newResource('org.acme.biznet', 'Trader', getCurrentParticipant().getIdentifier());
console.log('Varun2889's test for the curr Participant is a relationship resource id in my txn ' + resource);` ..this works fine. (normally think you would get 'resource does not exist' (or similar) if it can't 'see' the resource due to ACLs but not ruling it out - it would look to me like it can't get the identifier of an object it can't read (as current participant) - ie in your current BN deployed (and using its incumbent data) - you replicating that in the browser mode (and different data, yet works fine) could make for different result, just saying. Undefined suggests the object you're working with is inaccessible - the code is fine.
@Varun2887 `var factory = getFactory(); let resource = factory.newResource('org.acme.biznet', 'Trader', getCurrentParticipant().getIdentifier());
console.log('Varun2889's test for the curr Participant is a relationship resource id in my txn ' + resource);` ..this works fine. (normally think you would get 'resource does not exist' (or similar) if it can't 'see' the resource due to ACLs but not ruling it out - it would look to me like it can't get the identifier of an object it can't read (as current participant) - ie in your current BN deployed (and using its incumbent data) - you replicating that in the browser mode (and different data, yet works fine) could make for different result, just saying. Undefined suggests the object you're working with is inaccessible - the code is fine.
@Varun2887 `var factory = getFactory(); let resource = factory.newResource('org.acme.biznet', 'Trader', getCurrentParticipant().getIdentifier());
console.log('Varun2889's test for the curr Participant is a relationship resource id in my txn ' + resource); ` ..this works fine. (normally think you would get 'resource does not exist' (or similar) if it can't 'see' the resource due to ACLs but not ruling it out - it would look to me like it can't get the identifier of an object it can't read (as current participant) - ie in your current BN deployed (and using its incumbent data) - you replicating that in the browser mode (and different data, yet works fine) could make for different result, just saying. Undefined suggests the object you're working with is inaccessible - the code is fine.
@Varun2887 ```var factory = getFactory(); let resource = factory.newResource('org.acme.biznet', 'Trader', getCurrentParticipant().getIdentifier());
console.log('Varun2889's test for the curr Participant is a relationship resource id in my txn ' + resource); ``` ..this works fine. (normally think you would get 'resource does not exist' (or similar) if it can't 'see' the resource due to ACLs but not ruling it out - it would look to me like it can't get the identifier of an object it can't read (as current participant) - ie in your current BN deployed (and using its incumbent data) - you replicating that in the browser mode (and different data, yet works fine) could make for different result, just saying. Undefined suggests the object you're working with is inaccessible - the code is fine.
@Varun2887 ```var factory = getFactory(); let resource = factory.newResource('org.acme.biznet', 'Trader', getCurrentParticipant().getIdentifier());
console.log('Varun2889s test for the curr Participant is a relationship resource id in my txn ' + resource); ``` ..this works fine. (normally think you would get 'resource does not exist' (or similar) if it can't 'see' the resource due to ACLs but not ruling it out - it would look to me like it can't get the identifier of an object it can't read (as current participant) - ie in your current BN deployed (and using its incumbent data) - you replicating that in the browser mode (and different data, yet works fine) could make for different result, just saying. Undefined suggests the object you're working with is inaccessible - the code is fine.
@Varun2887 ```var factory = getFactory(); let resource = factory.newResource('org.acme.biznet', 'Trader', getCurrentParticipant().getIdentifier());
console.log('Varun2887s test for the curr Participant is a relationship resource id in my txn ' + resource); ``` ..this works fine. (normally think you would get 'resource does not exist' (or similar) if it can't 'see' the resource due to ACLs but not ruling it out - it would look to me like it can't get the identifier of an object it can't read (as current participant) - ie in your current BN deployed (and using its incumbent data) - you replicating that in the browser mode (and different data, yet works fine) could make for different result, just saying. Undefined suggests the object you're working with is inaccessible - the code is fine.
yea
the same code is working in browser module
but on network it is not working
[ ](https://chat.hyperledger.org/channel/composer?msg=mm2gbp4CWa4r9feSL) @HoneyShah looks like your REST server does not match your runtime (Composer CLI at 0.19.5 and your deployed BN at same level). Need to get REST server to to the same level (uninstall/reinstall at that level
[ ](https://chat.hyperledger.org/channel/composer?msg=GeXb4t5JhHySz5442) @mahoney1 the same code is working in browser module
but on network it is not working.. can it be an issue with the cards been created?
[ ](https://chat.hyperledger.org/channel/composer?msg=WYo2xxy5KTChn3AQg) @mahoney1 I have already the latest REST server 0.19.5. I have checked the version
@HoneyShah 'client' means something in your environment is at Composer 0.19.2 - the error says its trying to ping (connect to the BN) - did you upgrade your business network to 0.19.5? Also, what tutorial / docs are you following that led to the issue above ?
[ ](https://chat.hyperledger.org/channel/composer?msg=xZeJ4rzdyq2SZTBjf) @mahoney1 I am following https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
I have upgraded business network to 0.19.5
```
honey@Honey-Shah:~/blockchain/HLF-Course-Domain-Model-master/airlinev1/dist$ composer network ping --card admin@airlinev1
The connection to the network was successfully tested: airlinev1
Business network version: 1.1.1
Composer runtime version: 0.19.5
participant: org.hyperledger.composer.system.NetworkAdmin#admin
identity: org.hyperledger.composer.system.Identity#d2a7e761d7b7e9992e357048a72bac75b7c40df382064d41fd29aebf396c6c20
```
[ ](https://chat.hyperledger.org/channel/composer?msg=xZeJ4rzdyq2SZTBjf) @mahoney1 I am following https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
I have upgraded business network to 0.19.5. What else I need to check? Can you please suggest me
```
honey@Honey-Shah:~/blockchain/HLF-Course-Domain-Model-master/airlinev1/dist$ composer network ping --card admin@airlinev1
The connection to the network was successfully tested: airlinev1
Business network version: 1.1.1
Composer runtime version: 0.19.5
participant: org.hyperledger.composer.system.NetworkAdmin#admin
identity: org.hyperledger.composer.system.Identity#d2a7e761d7b7e9992e357048a72bac75b7c40df382064d41fd29aebf396c6c20
```
[ ](https://chat.hyperledger.org/channel/composer?msg=kfXLS55GZanDvx6KR) @ahmadzafar - the error shows that you already have version 0.0.1 of tutorial-network running. Typically if you are upgrading, you have made some changes somewhere in the model or script. In this scenario you would upgrade the version number in the package.json and then Install and Upgrade version 0.0.2.
@HoneyShah although you're using a different BN to that of the tutorial, and whether you're doing anything else thats different - it sounds like your persisted REST server image is still at 0.19.2 (even though you installed the binaries for 0.19.5 locally). Not sure when you set that up but suggest to rebuild your docker image for REST server ; it will pull the latest /hyperledger/composer-rest-server image.
@HoneyShah although you're using a different BN to that of the tutorial, and whether you're doing anything else thats different - it sounds like your persisted REST server image is still at 0.19.2 (even though you installed the binaries for 0.19.5 locally). Not sure when you set that up but suggest to rebuild your docker image for REST server (stop and remove the old container ; remove the old image and follow steps to pull the latest docker *image* and then it will start a persistent REST server instance at that level; it will pull the latest /hyperledger/composer-rest-server image.
[ ](https://chat.hyperledger.org/channel/composer?msg=HQiGEdM364RoxF9ts) any idea on this?
@mahoney1 @rthatcher
@Varun2887 I suggested testing without ACLs. Simply deploy the same network with a new name in its package.json (re-archive, deploy etc) in a test environment and provide the ACLs that allow essential READ operation for the target resource registry. Or change the ACLs in your current network as you wish
@Varun2887 I suggested testing without restrictive ACLs. Simply deploy the same network with a new name in its package.json (re-archive, deploy etc) in a test environment and provide the ACLs that allow essential READ operation for the target resource registry. Or change the ACLs in your current network as you wish
[ ](https://chat.hyperledger.org/channel/composer?msg=kSeCjX2smbuJsd3eP) @ra_w - Is there a particular reason you are working with v0.16.6 ? What commands or actions are you taking that cause the error?
[ ](https://chat.hyperledger.org/channel/composer?msg=RvrW2nNmBjudPmjea) @mahoney1 Thanks!!
Hello, I am now on composer v0.19.4 with hlfv11 . I have built my bna but when doing a `composer network list -c mycard` I can see all my assets registries listed but participants registries are missing. Is there an ACL I need to add ?
as a consequence `bizNetworkConnection.getAllParticipantRegistries` is returning an empty array
I need some help as this is working on another machine with same version of hlf and composer :rolling_eyes:
[ ](https://chat.hyperledger.org/channel/composer?msg=xtYxKghKSB2TZYJ4x) @mahoney1 getting the same error with basic ACL
```rule EverybodyCanReadEverything {
description: "Allow all participants read access to all resources"
participant: "**"
operation: ALL
resource: "**"
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}```
@rthatcher I have my own code for rest server APIs which is written for 0.16.6 version only. I can update it but will take time. Cause of the error: I am trying to find the cause but no result. I think it is similar to this issue https://github.com/hyperledger/composer/issues/2104 [ ](https://chat.hyperledger.org/channel/composer?msg=qcCquGapyZLYuz4Fz)
i'am trying to execute this identity request :
composer identity request -c PeerAdmin@orgx-network-rawmaterials -u admin -s adminpw -d adminRM
but always gives me the error
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
Can somebody help me ?
can somebody help me what is the sizing details required to deploy hyperledger fabric and composer on cloud?
@Varun2887 ok, it confirms its not ACL. I would suggest to stand the BN up in a Dev Fabric environment - create a similar card in playground once you import the admin card and connect with it. If it works, then there's something possibly wrong with your current connection profile (or the referenced profile doesn't exist) in the submitting card, at a guess.
[ ](https://chat.hyperledger.org/channel/composer?msg=XXHiFTWGFE5CpEeh4) @jaguarg yes you need an ACL something like ```rule Default {
description: "Allow all participants access to all resources"
participant: "ANY"
operation: ALL
resource: "org.example.trading.*" /// all resources, assets, participants and transactions in this case
action: ALLOW
} ```
[ ](https://chat.hyperledger.org/channel/composer?msg=XXHiFTWGFE5CpEeh4) @jaguarg yes you need an ACL for the BN itself ; something like ```rule Default {
description: "Allow all participants access to all resources"
participant: "ANY"
operation: ALL
resource: "org.example.trading.*" /// all resources, assets, participants and transactions in this case
action: ALLOW
} ```
FROM hyperledger/composer-rest-server
RUN npm install --production loopback-connector-mongodb passport-google-oauth2 && \
npm cache clean --force && \
ln -s node_modules .node_modules
I have installed two npm components in docker image using above command. Now I want to create one file relative to passport-google-oauth2's packages folder. But I don't know the physical location of where these components are installed. How can I know that?
```
FROM hyperledger/composer-rest-server
RUN npm install --production loopback-connector-mongodb passport-google-oauth2 && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
I have installed two npm components in docker image using above command. Now I want to create one file relative to passport-google-oauth2's packages folder. But I don't know the physical location of where these components are installed. How can I know that?
@ra_w - so are you having an ACL problem ? we could potentially look at that?
Since v0.19 (and v0.18.2?) we have been using native javascript on the Fabric, withoudt using 'go-duktape' it is a big change, and the supported version now, so I would upgrade to v0.19 if you can.
I have just found out that the 'go-duktape' error, is more of a logging 'feature' than a real error. Are you having problems, or just seeing the error and worrying about it?
@ra_w - so are you having an ACL problem ? we could potentially look at that?
Since v0.19 (and v0.18.2?) we have been using native javascript on the Fabric, withoudt using 'go-duktape' it is a big change, and the supported version now, so I would upgrade to v0.19 if you can.
Hi,
I have a scenario where we'd like several end users to act on behalf of the same Participant. We would issue different Business Cards for each end user, and we would map all the identities to the same Participant, as we would like to define our ACL on the Participants, not on the end users.
At the same time, we would like to record somewhere the identity that was used to perform the transaction. How do we access the information of the business card inside either the ACL or the model logic? Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=Empz5bJRr3YDp8zsu) @mahoney1 issue resolved it was creating error at some other line, but was giving this error :|... iss there a way to enable logging?
Has joined the channel.
can we get transaction details of a recently committed transaction whose inputs are available to us/
composer-playground: command not found on ubuntu 16.04
[ ](https://chat.hyperledger.org/channel/composer?msg=tHuY9dukR2u67AHYT) @KindleBitSoln please install composer playground with `-g`
I have installed
but when I am execute this then it give me same error
try which `composer-playground`
try `which composer-playground`
Screenshot from 2018-05-14 16-44-57.png
cmd executed but no result showing
[ ](https://chat.hyperledger.org/channel/composer?msg=YALxp7ySvrwkNF94x) @HoneyShah - within the container try ` /home/composer/node_modules/ ` or ` /home/composer/.npm-global/ `
@Varun2887 see https://hyperledger.github.io/composer/latest/problems/diagnostics - if its committed, you can check the transaction (which you say is available to you) in Historian using the transaction ID you say that's available to you (ie the transaction was already committed).
@Varun2887 see https://hyperledger.github.io/composer/latest/problems/diagnostics - if its committed, you can check the transaction identifier (which you say is available to you) in Historian using the transaction ID you say that's available to you (ie the transaction was already committed).
@Varun2887 I did try
Can anyone help me to figure out?
[ ](https://chat.hyperledger.org/channel/composer?msg=8ApA85aSfcwHZsdeG) @KindleBitSoln - did you use the command ` npm install -g ` to install the composer code ?
Yes
[ ](https://chat.hyperledger.org/channel/composer?msg=pGjywmQZp2SrbkYBa) - did you use sudo, su or root ?
I did follow "https://hyperledger.github.io/composer/latest/installing/development-tools.html" officials "npm install -g composer-playground"
nope
@KindleBitSoln can you confirm your node version
[ ](https://chat.hyperledger.org/channel/composer?msg=kcuMXDsCWmmHRF8Ye) @rthatcher So I need to create file using command line?
Screenshot from 2018-05-14 16-54-20.png
@mahoney1 please check screenshot
`npm get prefix` ?
@mahoney1 /home/kbs/.nvm/versions/node/v8.11.1
@KindleBitSoln and what happens if you `cd` - then try `composer -v` firstly ?
@KindleBitSoln and what happens if you `cd` (goes to home directory) - then try `composer -v` firstly ?
[ ](https://chat.hyperledger.org/channel/composer?msg=vNvgRsafpHP3eDLtp) @HoneyShah - I would suggest you investigate the ADD or COPY commands in your dockerfile - https://docs.docker.com/engine/reference/builder/
When using getNativeAPI to retrieve history for an asset this is the following error i encounter
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: object type or attribute not a non-zero length string",
"stack": "Error: Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: object type or attribute not a non-zero length string\n at _initializeChannel.then.then.then.then.catch (C:\\Users\\KLUSER\\AppData\\Roaming\\npm\\node_modules\\composer-rest-server\\node_modules\\composer-connector-hlfv1\\lib\\hlfconnection.js:957:34)\n at
Screenshot from 2018-05-14 17-00-56.png
@mahoney1 please check above screenshot we are not using php composer
@mahoney1 Are you there?
[ ](https://chat.hyperledger.org/channel/composer?msg=TxQq6fas9QteWSt98) @mahoney1 can it be something dynamic for all transactions? since we will have to query it right?
@KindleBitSoln did you previously install PHP composer (I know you said its not installed) The point being there are 000's of installed on Ubuntu 16.04 that have worked fine using the instructions - just saying - currently your PATH can't find a route to playground or composer (CLI), suggests something is awry in your env.. (to set the PATH).
@KindleBitSoln did you previously install PHP composer (I know you said its not installed) The point being there are 000's of installed on Ubuntu 16.04 that have worked fine using the instructions - just saying - currently your PATH can't find a route to playground or composer (CLI), suggests something is awry in your env.. (to set the PATH). You can check what's in your PATH currently too.
@Varun2887 transaction id is available in all transactions. If a transaction was committed to registry, yes, you would have to query it, if it wasn't available by other means.
@rthatcher I am having serious problem once this problem occur I cant even ping to the network. even composer playground cant connect to deployed network[ ](https://chat.hyperledger.org/channel/composer?msg=6MRDHheq7AbLnGXaF)
[ ](https://chat.hyperledger.org/channel/composer?msg=mcvKLhnYxquACiuut) @mahoney1 what can be the other means? couldnt get yout
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=guEMzcarm9RhSstEA) @mahoney1 i have checked all the links but its all related to networking error, i am facing problem in coding. if you can help me out, then that will be very much helpful.
@mahoney1 i have checked all the links but its all related to networking error, i am facing problem in coding. if you can help me out, then that will be very much helpful.
@mahoney1 Yes I had , after install npm composer i have removed it.
where to set playgroud or compose CLI path?
My model has two participants Landlord and tenant and a asset House. How to set relation between Tenant and house, so that each house should be occupied by a unique tenant and owned by a unique landlord ?
Please some one help me on the data modeling
[ ](https://chat.hyperledger.org/channel/composer?msg=PRfbk69eRutoJ2RoN) @mahoney1 I tried that with my namespace of course and it doesn't work. Will try to rollback to version 0.19.1 and try.
Does anyone know if there is a standard way of querying an asset transaction history? Every tutorial or code I find online always has a hack to it. I wonder if composer v0.19.4 has fixed this?
@jaguarg you shouldn't need to, its an ACL issue. Have you defined any system level ACLs - that could be your issue - check out the sample networks on github and the permissions.acl there for examples
[ ](https://chat.hyperledger.org/channel/composer?msg=qsMPb7BvsA4Q8yEGd) @brian.leppez no its not been added yet, I don't have an outline.
Okay, do you have a reference on how you would achieve it under composer v0.19.4?
@KindleBitSoln the problem first is to properly clean out your 'old' php install -> https://stackoverflow.com/questions/30396451/remove-composer - once you've done that, I would do an `npm uninstall -g composer-cli` etc etc then follow the doc link you referred to earlier.
I have already done this.
@mahoney1 I have already done this.
From the same link
[ ](https://chat.hyperledger.org/channel/composer?msg=e7TF6zk8xbbtfpGLC) @brian.leppez https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks item 6 onwards. Using filters to get the related objects to the transaction (eg AddAsset is the initial asset, then your txn classes would do the rest)
@KindleBitSoln did you log out completely?
Yes and restarted the system also
@KindleBitSoln if you've followed that, then come back in - it should have (in theory) cleaned out the PATH stuff too.
[ ](https://chat.hyperledger.org/channel/composer?msg=X4S2ReczFxW5dvYiy) @mahoney1 Amazing. Thank you very much!
@KindleBitSoln So why not create another user to do the install with, or have you done this already? (Was this the same user that had inadvertently installed PHP previously - I've seen stack overflows where PHP hasn't removed 'cleanly').
@mahoney1 i have checked all the link which you have suggested. but all is showing networking level error. but i am facing error in coding. if you can help im coding that will be very helpful for me.
No i didn't check with new user.
@mahoney1 No i didn't check with new user.
[ ](https://chat.hyperledger.org/channel/composer?msg=KFZjEtLrtXQHLN4hJ) @utsha94 debugging is described here -> https://hyperledger.github.io/composer/latest/problems/diagnostics and how to set the requisite level in Composer. Also have you checked out the sample-networks https://github.com/hyperledger/composer-sample-networks/tree/master/packages and transaction processor guidance https://hyperledger.github.io/composer/latest/reference/js_scripts or Stack overflow https://stackoverflow.com/questions/tagged/hyperledger-composer (I don't know what coding error you're having)
but if we create new user so it will adopt all the settings just like other user.
@mahoney1 all these link you have given me before. but i didnt find any solution from these.
@mahoney1 problem is in transactions. when i submit the transaction, after submitting also no transaction is happening. but in coding i am not getting any error also. so dont know how to find out the error.
@utsha94 try this https://stackoverflow.com/questions/42622281/debugging-transaction-code - can debug your code within a single Node App. You can also post a Q on S/Overflow if need be.
[ ](https://chat.hyperledger.org/channel/composer?msg=Aq3u5oYfXTQri7JAk) @KindleBitSoln so all new users have a profile that knows about Composer PHP?
[ ](https://chat.hyperledger.org/channel/composer?msg=Aq3u5oYfXTQri7JAk) @KindleBitSoln so all new users have a profile that knows about Composer PHP? (You don't have to answer, just saying - if you're stuck, I would try a clean environment)
@mahoney1 in the transaction link just now which you sent it is showing 404 error. page not found.
@utsha94 the link is in the comment at the bottom
@Varun2887 you mentioned you had access to 'data' in your TP already - clearly, you don't
@mahoney1 in the stackoverflow page, they have given one link for example https://github.com/fabric-composer/sample-networks/blob/master/packages/CarAuction-Network/test/CarAuction.js#L31-L49, but link is only not openning. what to do?
@utsha94 that was some time ago ; the link I sent above is https://github.com/hyperledger/composer-sample-networks/tree/master/packages - you should be able to find it from there.
@utsha94 you also need to be connected to a runtime Fabric (ie not using Playground embedded connector) to see the debug logs :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=TkuCHWm9pw3Wk6A4D) @mahoney1 didnt get u
what is TP?
@Varun2887 Transaction Processor
i do have
@mahoney1 I have created a new user is getting previous node and npm and all by default
but I am not sure how to use it to get tx details
since i am using `composer-client` to interact with blockchain and blockchain tx is not returning me anything when it is getting completed
I am not sure how `composer-rest-server` provides us with the tx-id of each tx
[ ](https://chat.hyperledger.org/channel/composer?msg=9qzv4LJnDrdfGNa6X) @KindleBitSoln if its stilll not working with the new user - as I suggested, you need to use an environment where its not installed or look at resources to [clean up](https://askubuntu.com/questions/716230/cant-remove-composer-via-terminal)
@mahoney1 Okay will try in new system. Thanks.
Has joined the channel.
hi, I have problem one, when I export file on Hyperledger and when I want to open that file again, everything that i wrote in test is now empty, is that have to happen or
@mahoney1 I have tried with several versions and the rule here does not make a difference : ```rule Default {
description: "Allow all participants access to all resources"
participant: "**"
operation: ALL
resource: "org.icc.**" /// all resources, assets, participants and transactions in this case
action: ALLOW
}
```
I can list all registries except participant registries :-(
@mahoney1 I am trying deploy multi-org on two machines. I have created a channel on PC1 and trying to fetch channel configurations from PC-2. But, I am getting the following error *transport: http2Client.notifyError got notified that the client transport was broken unexpected EOF.*
*Error: Error receiving: rpc error: code = Unavailable desc = transport is closing* Can you please help me out in resolving the issue.
@phanikumar could be anything based on above, create channel, join channel etc Most likely a TLS error eg. hostname in the TLS cert not matching / check your yaml files. I see you've asked on the on #fabric channel which is the right place.
[ ](https://chat.hyperledger.org/channel/composer?msg=Pa8A7PBszCuxiPzkj) @jaguarg would have to see what other rules causing that.
[ ](https://chat.hyperledger.org/channel/composer?msg=thbAngmMNu7JhcQH7) @sime2 export, exports a BNA file (incl scripts under lib dir)
[ ](https://chat.hyperledger.org/channel/composer?msg=thbAngmMNu7JhcQH7) @sime2 export, exports a BNA file (incl scripts under lib dir) see [here](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks) for migration info
Please, help me to start composer network. All nodes in Fabric network runnig, business network installed successfully, but I can't to start it.
Command that I use:
```
composer network start --networkName inno --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@inno --file networkadmin.card
```
Output:
```
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: API error (404): {"message":"network inno not found"}
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: API error (404): {"message":"network inno not found"}
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (inno:0.0.1))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (inno:0.0.1))
Command failed
```
Why?
Fabric v1.1, Composer 0.19.5
@VadimInshakov sounds like the network name in your package.json and/or that which you used for the composer network install doesn't match your start cmd (above) network name
@VadimInshakov sounds like the network name in your package.json and/or that which you used for the composer network install (assuming that was done) doesn't match your start cmd (above) network name
can somebody ans my previous question?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=mZK7ctKszPvruLJiX) @mahoney1
but I install without specifying a network name (I follow the guidelines)
```
composer network install --card PeerAdmin@inno --archiveFile inno@0.0.1.bna
```
Network name in connection.json is "inno", like in start command, so I am amazed by this error
@VadimInshakov your network name is obtained from the bna's package.json -(not connection.json) - you can see your running containers using docker ps|grep dev
@VadimInshakov your network name is obtained from the bna's package.json -(not connection.json) - the version must match that on your `start` cmd line too - ~~ you can see your running containers using `docker ps|grep dev`
[ ](https://chat.hyperledger.org/channel/composer?msg=mbaTGSzggHRY8qpxN) @mahoney1
I found that there is no such parameter in my package.json:
```
"engines": {
"composer": "^0.19.5"
},
```
how can I reinstall the network now?
[ ](https://chat.hyperledger.org/channel/composer?msg=aMRtjeZ5xRBGDQAiY) @mahoney1 this is the full ACL ```rule Default {
description: "Allow all participants access to all resources"
participant: "**"
operation: ALL
resource: "org.icc.**" /// all resources, assets, participants and transactions in this case
action: ALLOW
}
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=QzPQG6upo9f6r3XRN) @VadimInshakov - if you use this command ` composer archive list --archiveFile inno@0.0.1.bna ` - it should show you the exact network name and version to use on the ` composer network start ` command
[ ](https://chat.hyperledger.org/channel/composer?msg=6fTTfGa4mv9xB4qq5) @rthatcher
But everything is fine here:
```
inno@0.0.1.bna
Listing Business Network Archive from inno@0.0.1.bna
Identifier:inno@0.0.1
Name:inno
Version:0.0.1
```
@mahoney1 need your help, error remain the same
```
```
My package.json
```
{
"engines": {
"composer": "^0.19.5"
},
"name": "inno",
"version": "0.0.1",
"description": "-",
"scripts": {
"prepublish": "mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/inno.bna",
"pretest": "npm run lint",
"lint": "eslint .",
"test": "nyc mocha -t 0 test/*.js && cucumber-js"
},
"author": "Vadim Inshakov",
"email": "vadiminshakov@gmail.com",
"license": "Apache-2.0",
"devDependencies": {
"chai": "latest",
"chai-as-promised": "latest",
"composer-admin": "^0.19.5",
"composer-client": "^0.19.5",
"composer-common": "^0.19.5",
"composer-connector-embedded": "^0.19.5",
"composer-cucumber-steps": "^0.19.5",
"cucumber": "^2.2.0",
"eslint": "latest",
"grpc": "^1.10.1",
"mkdirp": "latest",
"mocha": "latest",
"nyc": "latest"
},
"dependencies": {
"composer-cli": "^0.19.5"
}
}```
@jaguarg just use `participant: "ANY"` or `participant: "org.example.SampleParticipant"` (if more qualified etc) and not ** for the source participant
Has joined the channel.
@mahoney1 @rthatcher I can provide any additional information, including source code. Or, if you have time later, in any other chat room, just let me know where you can discuss the solution to this problem. I am very interested in solving this.
@VadimInshakov - if the 'composer network start' doesn't work with the correct version and network name - I would look at the Peers to see if the composer network install has completed OK.
You can try commands similar to these to see if the Network has installed:
```
docker exec -it peer0.org1.example.com /bin/sh
# ls /var/hyperledger/production/chaincodes/
tutorial-network.0.0.1 tutorial-network.0.0.3
tutorial-network.0.0.2 tutorial-network.0.0.4
# exit
```
You should also look at the Peer logs at the time that you execute the composer network start command and see the detailed errors.
@VadimInshakov - if the 'composer network start' doesn't work with the correct version and network name - I would look at the Peers to see if the composer network install has completed OK.
You can try commands similar to these to see if the Network has installed:
```
docker exec -it peer0.org1.example.com /bin/sh
# ls /var/hyperledger/production/chaincodes/
tutorial-network.0.0.1 tutorial-network.0.0.3
tutorial-network.0.0.2 tutorial-network.0.0.4
# exit
```
You should also look at the Peer logs at the time that you execute the composer network start command and see the detailed errors.
You could also check your BNA is good by deploying/testing it to online bluemix
@rthatcher in peer0 of org1 I see the same error:
https://imgur.com/a/2Q5If5H
@mahoney1 0.19.5, centos7.4, fabric-1.1.0.
i use composer-playground to connect local fabric service,
create first card which configuration url and ip to connect local fabric service, privateKey has value(has ca service , but use ca file to upload privateKey and publicKey)
create second card which configuration chaincode(also upload privateKey and publicKey,not use ca service).
when i deploy chaincode to loacl fabric service. the chaincode deploy in local fabric service succesfully, but composer-play has an error: privateKey not specified or not a string(i print some log in composer-playground , the privateKey has no value)
Has joined the channel.
@mahoney1 @rthatcher
here all the sources: https://bitbucket.org/userVI/workchain/src
@james3443112 I think it would be best to create a Stack Overflow with all the details ; I'd be interested to see if you create a card (like the second) from the command line / CLI using `composer card create` eg. shown here https://hyperledger.github.io/composer/latest/reference/composer.card.create what happens when you try do a `composer network ping` and a `composer network list`
[ ](https://chat.hyperledger.org/channel/composer?msg=oHWNjtruBENG22nft) @VadimInshakov - just got some more information ...
`Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: API error (404): {"message":"network inno not found"}`
This error may be referring to a *Docker Network*, rather than a Composer Network - perhaps you have some config issues with .yaml files and environment variables for the Docker Network name.
[ ](https://chat.hyperledger.org/channel/composer?msg=f8fZjvT2QhyFpj2Cn) @rthatcher thanks a lot! But everything looks pretty good. I set the variable CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE equal to "inno" on each peer (and only on peers) like so:
```
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=inno
```
You can review it here: https://gist.github.com/VadimInshakov/077b376766de97720e0ddeb2528e2af9
I'm thinking about making a Composer tutorial for beginners. Anyone have specific requests?
Has joined the channel.
@srcmake make one on querries please. How to access results of queries within a transaction and how to handle these results in the transaction script
[ ](https://chat.hyperledger.org/channel/composer?msg=oHWNjtruBENG22nft) @VadimInshakov the error is most certainly a configuration issue at the Fabric/Docker level P
[ ](https://chat.hyperledger.org/channel/composer?msg=oHWNjtruBENG22nft) @VadimInshakov the error is most certainly a configuration issue at the Fabric/Docker level - similar problem found here -> https://stackoverflow.com/questions/46775044/error-when-try-to-instantiate-chain-code-on-hyperledger-fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=oHWNjtruBENG22nft) @VadimInshakov the error is most certainly a configuration issue at the Fabric/Docker level - similar problem found here -> https://stackoverflow.com/questions/46775044/error-when-try-to-instantiate-chain-code-on-hyperledger-fabric - have you set `COMPOSE_PROJECT_NAME` - also from your src, that Composer BNA (package.json) is a different name to that deployed (just an aside).
[ ](https://chat.hyperledger.org/channel/composer?msg=oHWNjtruBENG22nft) @VadimInshakov the error is most certainly a configuration issue at the Fabric/Docker level. The error happens at chaincode instantiation and appears to be network and/or docker related - similar problem found here -> https://stackoverflow.com/questions/46775044/error-when-try-to-instantiate-chain-code-on-hyperledger-fabric - have you set `COMPOSE_PROJECT_NAME` - also from your src, is your docker daemon up and running, are all nodes listening ok? Also - that Composer BNA (package.json) is a different name to that deployed (just an aside).
[ ](https://chat.hyperledger.org/channel/composer?msg=oHWNjtruBENG22nft) @VadimInshakov the error is most certainly a configuration issue at the Fabric/Docker level. The error happens at chaincode instantiation and appears to be network and/or docker related - similar problem found here -> https://stackoverflow.com/questions/46775044/error-when-try-to-instantiate-chain-code-on-hyperledger-fabric - you can check CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE in `workchain/base/peer-base.yamlcore.yaml` - I see its set to - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=${COMPOSE_PROJECT_NAME}_inno (ie with leading underscore). Also - that Composer BNA (package.json) has a different business network name to that deployed in earlier threads (just an aside).
[ ](https://chat.hyperledger.org/channel/composer?msg=oHWNjtruBENG22nft) @VadimInshakov the error is most certainly a configuration issue at the Fabric/Docker level. The error happens at chaincode instantiation and appears to be network and/or docker related - similar problem found here -> https://stackoverflow.com/questions/46775044/error-when-try-to-instantiate-chain-code-on-hyperledger-fabric - you can check CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE in `workchain/base/peer-base.yaml` - I see its set to - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=${COMPOSE_PROJECT_NAME}_inno (ie with leading underscore). Also - that Composer BNA (package.json) has a different business network name to that deployed in earlier threads (just an aside).
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ANNNSWBirYN5yPgzg) @mahoney1 I checked that this error appears only after ```composer network start``` command. And I can't find errors in my yaml.
@VadimInshakov see what I wrote about instantiation (something Composer has to do from your network start cmd). I've seen similar errors here on Fabric examples (ie no Composer). I strongly suggest to ask on #fabric channel or use 'search' (others there have had similar issues) . When the Fabric issue is resolved, you will be able to instantiate your business network, on Fabric
@VadimInshakov see what I wrote about instantiation (something Composer has to do from your network start cmd). I've seen similar errors [here](https://jira.hyperledger.org/browse/FAB-9642?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aall-tabpanel) on Fabric examples (ie no Composer). I strongly suggest to ask on #fabric channel or use 'search' (others there have had similar issues) . When the Fabric issue is resolved, you will be able to instantiate your business network, on Fabric
import
[ ](https://chat.hyperledger.org/channel/composer?msg=2GvK7Tm92E8NeabCY) @rthatcher Got it. Thanks
Guys, I am trying to upgrade a chaincode in 0.19.4
I did composer network install
then composer network upgrade
it installed ok
but upgrade I got an error
````
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: premature execution - chaincode (proak-hyperledger-network:0.0.6) is being launched
````
Anyone else unable to see the transactions when generating an angular app?
Has joined the channel.
hi , I have two questions related to #composer & I will be grateful if someone could help me
1- suppose I have asset A that has one to many relationship with asset B ( A has many Bs) , Is it possible to load B details (not only the IDs ) when calling the A get method in the rest server ? I tried use Include as they recommend here https://stackoverflow.com/questions/44559413/does-composer-rest-server-rest-api-return-nested-object-in-json-response
but it doesn't work and I found that only the 'WHERE' LoopBack filter is supported as mentioned in the documentation.
2- Can I query against the couchdb and make some rich queries instead of the composer query ?
Has joined the channel.
Has joined the channel.
how can i create a new peer on another VM.
Screenshot from 2018-05-15 11-09-49.png
Has joined the channel.
I have done set up for passport-jwt as following:
```
"jwt": {
"provider": "jwt",
"module": "../../../custom-jwt.js",
"secretOrKey": "--your secret--",
"authScheme": "saml",
"successRedirect": "/",
"failureRedirect": "/"
}
```
custom-jwt.js
```
'use strict';
const passportJwt = require('passport-jwt');
const util = require('util');
function CustomJwtStrategy(options, verify) {
options.jwtFromRequest = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken();
passportJwt.Strategy.call(this, options, verify);
}
util.inherits(CustomJwtStrategy, passportJwt.Strategy);
module.exports = {
Strategy: CustomJwtStrategy
};
```
The path of custom-jwt.js is relative from node_modules/loopback-component-passport/lib/passport-configurator.js.
Now when I go to http://localhost:3000/auth/jwt it gives me unauthorized.
when we do `composer network upgrade ` it creates new docker images... how shall we remove the old one
[ ](https://chat.hyperledger.org/channel/composer?msg=tgB3pq3TYHLH6XW83) @Varun2887 - yes a new Docker Image and a New Container for each peer. (Composer is now in line with the standard way thet Hyperledger Fabric creates containers). The old ones can be deleted using standard Docker commands: `docker rm` for the containers, and `docker rmi` for the images
@mahoney1 thank you. In the last answer you said that the wrong configuration of the docker network is in yaml. Probably, you looked the wrong file (docker-composer-cli.yaml, I already deleted it), all Fabric configurations are in docker-composer-kafka.yaml and docker-composer-couch.yaml. If you can review it, I will be grateful. https://bitbucket.org/userVI/workchain/src/master/
Yes, in #fabric cnannel I posted it too.
[ ](https://chat.hyperledger.org/channel/composer?msg=pw6ox4CeAbmppzGB8) @Akash76 - What Fabric are you connected to - the simple development Fabric, or your own custom Fabric? How was the Admin card created?
[ ](https://chat.hyperledger.org/channel/composer?msg=SYNb66LazemzSALZb) @mgcox presently, the generator only creates forms for Assets and Participants (Transactions are a current work-in-progress see -> https://github.com/hyperledger/composer/issues/3136 )
[ ](https://chat.hyperledger.org/channel/composer?msg=ArvukPpDEniCkniMq) @gurpreetsingh1193 - there is information and links on the Knowledge Wiki for multi-org / multi machine configurations: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#multiorg
@HoneyShah suggest to look at the passportjs site for configuration (that's where you'll find out more about the strategy and how to code) -> https://github.com/themikenicholson/passport-jwt and http://loopback.io/doc/en/lb2/Making-authenticated-requests.html -> this may also be of use (link at the bottom, hit translate) -> https://stackoverflow.com/questions/45921909/node-js-authentications-with-passport-jwt-unauthorized
Hello guys,
i'am trying to execute this identity request :
composer identity request -c PeerAdmin@orgx-network-rawmaterials -u admin -s adminpw -d adminRM
but always gives me the error
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
Can somebody explain me what cause this ?
I have a question about composer transaction. Does composer transaction has a sync control when some participants update one asset at the same time?
Hi , I am getting the below error when i try running , createPeerAdminCard.sh .
Hi , I am getting the below error when i try running , createPeerAdminCard.sh . Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher
Hi , I am getting the below error when i try running , createPeerAdminCard.sh . Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher
However, I installed composer-cli . This is the error i get when i type , composer - V. /home/remo/.nvm/versions/node/v6.10.3/lib/node_modules/composer-cli/node_modules/composer-common/lib/cardstore/businessnetworkcardstore.js:54
async get(cardName) {
^^^
SyntaxError: Unexpected identifier
at createScript (vm.js:56:10)
at Object.runInThisContext (vm.js:97:10)
at Module._compile (module.js:542:28)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.
[ ](https://chat.hyperledger.org/channel/composer?msg=te3uY4tDHTtKbfnaX) @lipoplus - that looks like the Fabric Container on port 7054 is not started or is not listening
@reshmamohiyiddin Please update grade your `node` and `npm` version
I have a question about composer transaction. Does composer transaction has a sync control when some participants update one asset at the same time?
I have a question about composer transaction processor. Does composer transaction processor has a sync control when some participants update one asset at the same time?
ok,let me try. Thank you.
[ ](https://chat.hyperledger.org/channel/composer?msg=AC7ZW3W2GJvj3YYgB) @mengluo668 - @reshmamohiyiddin - I would suggest `npm uninstall -g composer-cli` before upgrading node
I defined a transaction processor to update an asset, this transaction process may called by a lot of participants at very short time. So, I want to know does composer can do a sync control?
I defined a transaction processor to update an asset, this transaction processor may be called by a lot of participants at very short time. So, I want to know does composer can do a sync control?
[ ](https://chat.hyperledger.org/channel/composer?msg=zW6Wh7e2jFkSKeQQy) @mengluo668 - as part of the Hyperledger Fabric core functions if 2 transactions try to update the same Asset then one will fail the endorsement process and an error will be returned.
@rthatcher When using getNativeAPI to retrieve history for an asset this is the following error i encounter
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: object type or attribute not a non-zero length string",
"stack": "Error: Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: object type or attribute not a non-zero length string\n at _initializeChannel.then.then.then.then.catch (C:\\Users\\KLUSER\\AppData\\Roaming\\npm\\node_modules\\composer-rest-server\\node_modules\\composer-connector-hlfv1\\lib\\hlfconnection.js:957:34)\n at
@rthatcher how about this: Participant *A* query an asset(property *value=10*) in transaction _tx1_, then Participant B update asset(property *value = 20*) in anther transaction _tx2_ and submit the transaction(transaction _tx2_ for *B* is completed, transaction _tx1_ for *A* still in progress), then participant *A* update the asset's value to *30* and submit the transaction. Then what's result? An error will be occurred?
Because of in my business network, the modification of AN asset is very very high concurrency, so I have to take care it
Because of in my business network, the modification of an asset is very very high concurrency, so I have to care about it very much, could you please confirm it? Even though we will test it, I still want to get some suggestion at the development phrase, thank you very much.
I got this description from a Stack Overflow Q/A - and I think it is a good short explanation:
"When you submit a transaction, the peer generates a read and write set. This read/write set is then used when the transaction is committed to the ledger. It contains the name of the variables to be read/written and their version when they were read. If, during the time between set creation and committing, a different transaction was committed and changed the version of the variable, the original transaction will be rejected during committal because the version when read is not the current version."
https://stackoverflow.com/questions/45347439/mvcc-read-conflict-when-submitting-multiple-transactions-concurrently
But there are other descriptions of the whole process in various presentations and articles on the Web.
@rthatcher Very useful, thank you very much~_~
@rthatcher how can i check the status of the port and start if needed?
[ ](https://chat.hyperledger.org/channel/composer?msg=4oS9HWKFmei2TsFXJ) @lipoplus - ` docker ps ` would be a good place to start to see if the containers you have specified in your custom fabric are started, and running on the ports you defined. Is you custom fabric all running on a single machine?
[ ](https://chat.hyperledger.org/channel/composer?msg=qRnac84iCHBNkJxY2) @rthatcher Yes all containers are in one machine and running
Since fabric 1.1 doesnt have support for SKIP and LIMIT for pagination purpose. Whats the recommended way to handle it, as returning the whole result set might not be an option as it might be large in number
[ ](https://chat.hyperledger.org/channel/composer?msg=Hg3kFAtt2zgjuEvid) @lipoplus - you could look at the log for the container of the ca for orgx and see if there are errors.
[ ](https://chat.hyperledger.org/channel/composer?msg=Wxes5j3KQ2f9BoLT8) @koineramitranjan add more criteria to reduce the set, might be possible to query ranges perhaps
Hyperledger Composer ACL can be used to hide data. But, what if someone has physical access to a node, can he/she read hidden data by accessing CouchDB?
[ ](https://chat.hyperledger.org/channel/composer?msg=aMoR3GspH5ZsnphbM) @rthatcher the container of CA is the orderer container right?
[ ](https://chat.hyperledger.org/channel/composer?msg=DuSYXuM4GtB7t3ewz) @lipoplus - the orderer and the ca have very different functions. The ca will have what ever name you have given it in your custom fabric - but it might be something like ca.orgx.myorg.com
[ ](https://chat.hyperledger.org/channel/composer?msg=9oPwQLuTtFhpCQYDe) @varuna82 That is an issue for the Org in question to manage -> also see https://stackoverflow.com/questions/47457566/can-we-rely-on-hyperledger-composer-acl-for-privacy and [here](https://shaih.github.io/pubs/BHH18.pdf) and [here](https://jira.hyperledger.org/secure/attachment/12720/PrivacyEnabledLedger20171022.pptx) for reference.
Has joined the channel.
question: why eslit always show `[eslint] 'query' is not defined. (no-undef)` in composer transaction processor function? like below?
Untitled.png
@mengluo668 see answer on https://stackoverflow.com/questions/49983532/npm-test-fails-on-the-query-function-hyperledger-composer
@mahoney1 Thank you very much, it works.
@mahoney1 Thanks for information. I presume channels should be used to hide information related to specific contracts.
[ ](https://chat.hyperledger.org/channel/composer?msg=PofxFSzqCafXw2LsL) @rthatcher shouldnt it be taken care by composer commands?
on which platform i have to start my project on fabric or on composer
[ ](https://chat.hyperledger.org/channel/composer?msg=BkvjaciQXp6bgdiP4) @varuna82 between parties, yes..
[ ](https://chat.hyperledger.org/channel/composer?msg=ZozTot5CyXD4rJRTY) @gurpreetsingh1193 see supported platforms in the [docs](https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html)
Hi, is it possible do the blue arrow "Read data" in hyperledger ? or do I have to pass though Orderer-CA whose contact all Peers ?
architecture.PNG
Has joined the channel.
Has joined the channel.
Is there a endpoint that will always exist to get the metadata, that is the information about the cto, acl, query ?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=xkQKpqvkpGmFy6Xwd) @ApurvTandon - there is a discovery endpoint for the REST Server. The REST server has endpoints for Assets, Participants and Transactions, so the discovery URL will cover these. The Queries and the Parameters for the queries are also on that endpoint. I'm not aware of a way to discover the ACL - but that is probably a good thing for security. Here is the REST server endpoint : http://localhost:3000/explorer/swagger.json
@rthatcher thanks for the update but this swagger convention will have one problem it will have x-any in it for every object reference that is there, how can we be sure that the object will be there is there a reliable source that says yes this object which is of the type x-any will be in the models ?
for example Asset{
object : x-any
}
Can use your help on one more thing suppose i update the cto definition how will all my peers know that , there is a update in the cto definitions, is there a proper way to do it ?
[ ](https://chat.hyperledger.org/channel/composer?msg=cczZD5t5mMQC6SN7Y) @ApurvTandon - if you update your cto file, you will need to create an updated BNA with a new version number in the package.json file, then issue CLI commands to install and upgrade the Business Network. Assuming your connection profile (connection.json) and Fabric are properly configured, then all peers will get the updated Business Network. (The Query Tutorial has an example of upgrading a network to include queries : https://hyperledger.github.io/composer/latest/tutorials/queries
[ ](https://chat.hyperledger.org/channel/composer?msg=RFNPhz9ZHitZ4XHN8) @rthatcher For me the command for upgrade is not working on 0.19.4
https://github.com/hyperledger/composer/issues/4010
[ ](https://chat.hyperledger.org/channel/composer?msg=hR7WCPaWdMBGutf7x) @mataide - are you using the standard Development Fabric or a Custom Fabric? The Card you are using for the Upgrade, looks like a Network Admin card - the upgrade should use a Peer Admin card. (Earlier version of composer did use Network admin for upgrade)
Someone please help me with this question https://stackoverflow.com/questions/46294178/configure-passport-ldap-in-hyperledger-composer
Also with this https://stackoverflow.com/questions/50353575/hyperledger-composer-vehicle-lifecycle-network
[ ](https://chat.hyperledger.org/channel/composer?msg=hhHC7qgKjwkMyDKBW) @rthatcher I am using the IBM Blochain Starter plan, I think it is the standard. I just tried with the Peer admin card and got the same error
Should I install using Peer Admin card too?
[ ](https://chat.hyperledger.org/channel/composer?msg=dwYi8MhtsXRpDHcxG) @mataide - yes you should use first admin card you created for Installing and Upgrading the network. If the problem persists you should create a ticket with the IBM Cloud system.
hey guys!
I have a query:
`query getConsumer{
description: "Select Consumer by userId"
statement:
SELECT org.my_network.Consumer
WHERE (userId==_$userId)
}`
and in my logic file, I want to make this query. and the problem is that I don't know how to pass userId parameter...
`const checkAuthor = await query('getConsumer', userId=reqeust.user.getIdentifier());
const checkAuthor = await query('getConsumer', userId=reqeust.user.getIdentifier());`
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=BcZjmNdHb7csrT4Cn) @RahulSingh 6 - there is an error with that model (and it is not new by the look of it) - I will look into it, but I don't have a quick answer.
Thank you @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=KYoWwXCxkPge8CuSX) @etrn - are you trying to use a parameter that you have passed to the transaction? or lookup the ID/Participant executing the transaction?
fyi - reminder that the Community call is at 9am UTC (10am UK, 12pm ET, 9am PT) Wednesday this week - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-16th-May-2018 best regards Paul
@ertn try `const checkAuthor = await query('getConsumer', { "userId": request.user.getIdentifier() } );`
I am trying to run Blockchain Explorer for composer channel. I am getting Blank page after initial Explorer oading messages on browser. I need to specifically present the block information to the technical client to showcase the activities in Fabric backend on firing transactions from Composer application.
https://github.com/hyperledger/blockchain-explorer
*Config.json*
{
"network-config": {
"org1": {
"name": "peerOrg1",
"mspid": "Org1MSP",
"peer1": {
"requests": "grpc://localhost:7051",
"events": "grpc://localhost:7053",
"server-hostname": "peer0.org1.example.com",
"tls_cacerts": "/home/pwc/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt"
},
"admin": {
"key": "/home/pwc/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore",
"cert": "/home/pwc/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts"
}
}
},
"host": "localhost",
"port": "8085",
"channel": "composerchannel",
"keyValueStore": "/home/pwc/.composer-credentials",
"eventWaitTime": "30000",
"users":[
{
"username":"admin",
"secret":"adminpw"
}
],
"pg": {
"host": "localhost",
"port": "5432",
"database": "fabricexplorer",
"username": "hppoc",
"passwd": "password"
},
"license": "Apache-2.0"
}
Has joined the channel.
Hi there
I want to start with Hyperledger Composer, but I don't understand, should I define and run Hyperledger Fabric network and then run Composer on top of it?
@rthatcher great thanks
Hello Team, When I am running the network start command facing the following issue. Please help me out. Thank you.
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-05-15T19_08_46_615Z-debug.log
"
Command failed
Has joined the channel.
We have deployed several sample networks (marbles, pii, trader) within the Composer Playground (running on prem), exported the bna to our local system, created the RestAPI server and Angular App according to the documentation. However, our Angular App doesn't allow invocation of transactions. It just shows what fields are required for the transaction. The Rest Server allows us to create a transaction. Is this a known shortcoming of the Angular code generation or a bug?
Has joined the channel.
Has joined the channel.
Hi, I was trying to push a huge Json data into my asset. We need to store JSON data either in one field or as a asset which is having around 1000 lines of Json, Those Json structure will not be same everytime. so wanted to store as a Json object. Can this be possible, Is there any way to store the dynamic Json Object into the asset? Please help and suggest
[ ](https://chat.hyperledger.org/channel/composer?msg=yyfN2QQPt4rWr4Em6) @rthatcher sorry for late response. I was out of station for few days.
[ ](https://chat.hyperledger.org/channel/composer?msg=yyfN2QQPt4rWr4Em6) @rthatcher sorry for late response. I was out of station for few days.
[ ](https://chat.hyperledger.org/channel/composer?msg=yyfN2QQPt4rWr4Em6) @rthatcher sorry for late response. I was out of station for few days. https://chat.hyperledger.org/file-upload/rQy5bJYXvt5kAwL6h/ERROR%20Composer%20network%20%20START.png
exact error in log is as per screenshot
ERROR Composer network START.png
[ ](https://chat.hyperledger.org/channel/composer?msg=2PQBR8mgpi7NxXEKB) ERROR is in composer netwrk start command.
[ ](https://chat.hyperledger.org/channel/composer?msg=wz2LgtTjeS5vofFsC) @reshmamohiyiddin your composer-cli version must be <0.19...try by executing 'export COMPOSER_VERSION=hlfv1'
can i create peer on another machine in composer at run time
Has joined the channel.
@hyperledger-bot I want to qrcode npm module in my composer's script.js , how to do it??
Has joined the channel.
@hyperledger-bot I want to use qrcode npm module in my composer's script.js , how to do it??
can somebody guide me how to check transaction details ( like:- number of blocks etc ) in a dashboard in blockchain?
means If i have developed a BNA and while doing the transaction I want to see details in a dashborad
is there anyway to monitor all these?
plz somebody help me ?
[ ](https://chat.hyperledger.org/channel/composer?msg=z2rNNr4yW7GMGLmFC) @suva https://github.com/hyperledger/blockchain-explorer this is what i have used.. to show case the dashboard
Thanks Varun
can i create peer on another machine in composer at run time
peer i doubt
[ ](https://chat.hyperledger.org/channel/composer?msg=zTcEQX6zKwPEtzzor) @mahoney1
How can i get all the history for a particular asset using getNativeAPI. I am getting error while implementing it
@Varun2887 , Which one to choose mysql or postgraceSql
[ ](https://chat.hyperledger.org/channel/composer?msg=zTcEQX6zKwPEtzzor) @mahoney1
Hyperledger Fabric seems have promising progress on data privacy, even though it might take some time to get to composer https://www.ibm.com/developerworks/cloud/library/cl-blockchain-private-confidential-transactions-hyperledger-fabric-zero-knowledge-proof/index.html?ca=drs-
[ ](https://chat.hyperledger.org/channel/composer?msg=pZQkLiEbadWJEpfeT) @suva i used postgres
is there any guide to install postgres on linux ?
since it is open source
what i m getting is bit confusing
`apt-get` :)
ok thanks
Can anyone help me about 'Unknown arguments: card, businessNetworkName, runtime, install'
I did execute commmand 'composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network' but it saying Unknown arguments: card, businessNetworkName, runtime, install
[ ](https://chat.hyperledger.org/channel/composer?msg=yWZRonDNCKx9bAGR3) @KindleBitSoln which version of composer and fabric are u using
runtime was in v1.0 it has been removed in v1.1 0.19
reminder that the Composer Community call is at 9am UTC (10am UK, 12pm ET, 9am PT) Wednesday this week - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-16th-May-2018 best regards Paul
@Varun2887 How to know which version of fabric is runnning
?
while downloading u would have mentioned the version
https://hyperledger.github.io/composer/v0.16/installing/development-tools
I have followed this link to configure.
`docker images`
what is the version number you see in front of hyperledger images
`composer -v`
Clipboard - May 16, 2018 12:47 PM
it is 1.1
So for now what I do ?
Deploying the business network
https://hyperledger.github.io/composer/latest/installing/installing-index
follow this
the latest version
Thanks @Varun2887
Hello, isnt default="XX" supossed to preinitialize those fields in an asset? I'm getting field not defined errors on variables which have default value :scooter:
(using http://composer-playground.mybluemix.net/editor)
can we create cards using client application? `enroll` `issue card` etc
something similar to command line `composer card create`
https://hyperledger.github.io/composer/latest/managing/identity-issue there seems to be an issue in documentation here `testConnection` card details are not mention
[ ](https://chat.hyperledger.org/channel/composer?msg=6WBZqeReSmjSnLfdm) @Akash76 - it looks like you have Node v6 installed - composer supports Node v8.9. I would suggest uninstalling Composer before upgrading node, then re-install Composer
[ ](https://chat.hyperledger.org/channel/composer?msg=Q8EvPdCeAxZyhsJe5) @jiteshukani2006 - I can't see enough of the error, but I think it says timeout. The Knowledge Wiki has a section dealing with composer network start problems including timeout - https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
[ ](https://chat.hyperledger.org/channel/composer?msg=WGzcH8xPrRh3tGmDG) @gurpreetsingh1193 - adding Peers and making other changes to the underlying Fabric is not really a Composer issue - Composer simply uses a connection profile in the Business Network Card to describe the underlying Fabric. You could ask this question in the #fabric channel, but I suspect they will direct you to the fabric docs: http://hyperledger-fabric.readthedocs.io/en/latest/whatis.html
[ ](https://chat.hyperledger.org/channel/composer?msg=zE2GQqM5rXs4gBxmY) @AnirudhaKharabe - the transaction processing scripts do not currently support import or require. Recent versions of Composer now support the request module for call-out which may help you: https://hyperledger.github.io/composer/latest/integrating/call-out
reminder that the Composer Community call is at 9am UTC (10am UK, 12pm ET, 9am PT) - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=dTKTSzkGsv2pSGwgk) is there a way we can identify all the old docker container and images?
how to find cryptogen tool in composer
its there in `bin` folder
[ ](https://chat.hyperledger.org/channel/composer?msg=fksbqCr3otcaTENHo)
Could you please suggest an alternative/Fix to display the Block informations
Also raised a issue in Stackoverflow
https://stackoverflow.com/questions/50346550/blank-page-is-displayed-on-launching-hyperledger-explorer
[ ](https://chat.hyperledger.org/channel/composer?msg=JgqFubmkgBkJ3sSEd) @gurpreetsingh1193 - cryptogen is a Fabric tool - not part of composer. The default install of a Development Fabric for Composer does include Crypto material, but not the cryptogen tool.
@prmdmshra - I tried Blockchain Explorer yesterday and I get the same blank screen as you (actually I get an animated graphic - then a blank screen) - Data about the blocks is being discovered and written to the Postgres database, but not displayed in the UI.
[ ](https://chat.hyperledger.org/channel/composer?msg=wXwN2G6CvSmEWxfPe) @rthatcher it is working for me
not sure if something has gone wrong in latest code
:)
how can i set block chain explorer for hyperledger composer?
I am developing a travel related activity booking engine using composer. Application has `activity` as the main asset. An activity has transaction data (like price, availability) and descriptive data (like description, photos). Transactional data is stored in `blockchain` since they are needed by booking transactions. But, I like to store descriptive data externally to reduce unnecessary overhead in the blockchain.
What is the best solution link blockchain with external data in situation like above? Should I create an API as a top layer to the composer generated REST API as a Facade, or is there a better way to connect to external sources internally?
[ ](https://chat.hyperledger.org/channel/composer?msg=cL6A5rcKEwMybZc6w) @varuna82 an application layer API is the thing to go with
Has joined the channel.
@rthatcher hi, any suggestion on how can I possibly find the cause for the error below at "composer archive create" time? No indication is given regarding the line number ``` Cannot read property 'name' of null```
eslint error in npm test
eslint error in npm test '''
eslint error in npm test getFactory is not defined. Any idea how I solve this error in the npm test command?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZFambhtFxtK6ScBLT) @uber.twin - I would guess you have a missing network `name` or syntax error in your package.json file.
[ ](https://chat.hyperledger.org/channel/composer?msg=YM4dFWRXSAoonvJBN) @verofin it was a bad function annotation statement e.g.
```
/**
* @param myParam
*
*/
```
[ ](https://chat.hyperledger.org/channel/composer?msg=ykd5AB3buBv3ytxRE) @rthatcher it was a bad function annotation statement e.g.
```
/**
* @param myParam
*
*/
```
how can one guess that has any possible relation with that error message
[ ](https://chat.hyperledger.org/channel/composer?msg=YM4dFWRXSAoonvJBN) @verofin - the answer in this Stack Overflow should help you with the eslint error. https://stackoverflow.com/questions/49983532/npm-test-fails-on-the-query-function-hyperledger-composer
there should be a dedicate channel for voicing JS related frustrations
Git it thanks!! +1 for separate rant channel
Got it thanks!! +1 for separate rant channel
Has joined the channel.
if the client does not wish to trust the REST server with their private key , what are the other options?
emit(event) is throwing error by "Cannot read property 'getIdentifier' of null"! Can anyone tell me how to resolve this error?
Hello
How can I run service in port except 3000 using composer-rest-server ?
Hi all, my tests on the sample network are failing. The error seems unrelated to the business logic. ''' licchk: 'license-check-and-add' ''' Any ideas?
Hi all, not a problem but just a simple question regarding ACL rules. Once the code is compiled to actual chaincode, is there any difference in performance between using ACL or doing the check in the transaction code itself? For example doing the check `User from country A is not allowed to call transaction B` through ACL or do an if (user.country === 'A') { throw new error().. check in the transaction itself. I assume in the end the decision table is just injected in the chaincode and called for each invoke and does not make a whole lot of different when it comes to performance? Of course from a security point of view not the ideal situation to open all up first through ACL but just curious. Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=HJ9vWvTxKL9LTkR2p) @d8bhatta - `composer-rest-server -h` will show you all the options for starting the REST servr -ncluding ` -p `
Has joined the channel.
Hyperledger Composer REST API does not generate transaction interfaces
Hyperledger Composer REST API does not generate transaction interfaces
Hyperledger Composer REST API does not generate transaction interfaces
Hyperledger Composer REST API does not generate transaction interface , which runs fine in composer-playground
I created a business network and tested it in the playground. It all works fine. I can create transactions, assets and participants. When i try and create a rest interface with the composer-rest-server, the participant and asset rest interface is created, but the transactions are not.
- How to deploy contract to business network on development fabric?
- How to connect to the business network?
[ ](https://chat.hyperledger.org/channel/composer?msg=qmrvyKKAQTsiv8TNN) @verofin - are you using the samples exactly as downloaded, or are you modifying files? I think the license checking is checking for Apache licenses at the top of text files.
[ ](https://chat.hyperledger.org/channel/composer?msg=uvG3xoKdn5ByxK75Z) @silentinfotech - the Developer Tutorial will show you how to deploy and connect: https://hyperledger.github.io/composer/latest/tutorials/tutorials
[ ](https://chat.hyperledger.org/channel/composer?msg=PuaPD9bQH8CRaANTD) @AnilKharabe - are there any conflicts in names?
I had update the all npm modules of composer , still facing the problem
[ ](https://chat.hyperledger.org/channel/composer?msg=hLcWTqK5LC9vFSbrG) @rthatcher I had updated all the npm modules , still facing the problem
@rthatcher I'm running it as is. I cloned the composer-sample-network and made a copy of the one package. When I run npm test in the copied directory I get the error. perishable-network@0.2.4 licchk
Is it possible to implement the COUNT operator in composer query languages?
Sometimes, I want to query against the number of some assets
[ ](https://chat.hyperledger.org/channel/composer?msg=iGR7Ke97YT6prJRBr) @verofin - I just ran the `npm install` and `npm test` for the perishable-network *within* the folder that I cloned. When I took a copy to a different folder I saw your error, but looking further up I saw this:
`Error: ENOENT: no such file or directory, open '../../markdown-license.txt'`
So there is a link to a license in a superior folder. You can either run the test in the original folder or copy folders at a higher level or possibly comment out the license check now that you have seen the license.
Hello, anyone have any info with this error ?
```
docker exec peer1.org1.example.com peer channel create -o orderer.example.com:7050 -c composerchannel -f /etc/hyperledger/configtx/composer-channel.tx
Error: got unexpected status: BAD_REQUEST -- error authorizing update: error validating ReadSet: readset expected key [Group] /Channel/Application at version 0, but got version 1
```
[ ](https://chat.hyperledger.org/channel/composer?msg=NuTu79P4nieoR6ayS) @AnilKharabe - I would suggest you create a stack overflow question including all the details: Environment, versions, model, transaction logic scripts, commands used and output from the commands. (I think there will be too many details for this chat :-) )
@rthatcher I have found that when using the swagger.js endpoint, the swagger file shows x-any for sever object types. I have observed that this occurs when an object refers to another object from itself. e.g: within the cto file if i define an asset Prescription with reference to a patient (--> Patient patient) then the resulting swagger file will have
[ ](https://chat.hyperledger.org/channel/composer?msg=WosiNYTmKZPgd4PrP) @CorentinPacaud - please can you ask this fabric question in the #fabric channel
ok
[ ](https://chat.hyperledger.org/channel/composer?msg=yDDmoRvqiFYBiJ5T6) @ApurvTandon - I noticed that yesterday after we chatted. I would suggest you create a github issue for this, being careful to state the details of use use case.
@rthatcher saw ur suggestion in stackoverflow, https://stackoverflow.com/questions/49847420/hyperledger-composer-install-is-not-installing-business-network but i am still facing the same issue, i am having fabric 1.1 trying to run a tutorial of zerotoblockchain attaching the screenshot
Clipboard - May 16, 2018 6:15 PM
@chandrasekarangengadharan answer 2 on that link still applies -- in this case, looks like you're trying to import a 0.16.x BN card into your 0.19.x Composer / 1.1 Fabric environment. Won't work. Example of 0.19.x profile here -> https://hyperledger.github.io/composer/latest/reference/connectionprofile.html or just look at the profile of the network admin from Developer tutorial etc.
@IceFox its not supported in CouchDB presently - we still have an issue to then support it in Composer Query Language (CQL) https://github.com/hyperledger/composer/issues/2052. You would have to run/build your the query (eg. dynamically or otherwise) in your TP code and get array.length etc. from the results.
@IceFox its not supported in CouchDB presently - we still have an issue to then support it in Composer Query Language (CQL) https://github.com/hyperledger/composer/issues/2052. You would have to run/build your query (eg. dynamically or otherwise) in your TP code and get array.length etc. from the results.
@suva - see ANSWER 1 here https://stackoverflow.com/questions/48680545/hyperledger-explorer-shows-empty-data
@rthatcher Thanks for the help. Your a star
@mahoney1 Hi, apparently, a chaincode function annotated as "@transaction" gets called after the actual transaction instance has been saved/ processed by the composer core runtime.
Is there an option to have it called beforehand?
@mahoney1 Hi, apparently, a chaincode function annotated as "@transaction" gets called after the actual transaction instance has been saved/ processed by the composer core runtime.
Is there an option to have it called beforehand? The idea would be to "enrich" the current transaction instance, as for example to add some audit to the currently created asset.
@uber.twin just to confirm are you asserting that a function annatated as @transaction is being called in addition to transaction function you invoked?
[ ](https://chat.hyperledger.org/channel/composer?msg=Lo3nBBPSbmsiQZhLJ) @mbwhite yes, I am actually calling a built in "registry.add" or "registry.update" from a client composer app or their respective built in REST operations.
[ ](https://chat.hyperledger.org/channel/composer?msg=Lo3nBBPSbmsiQZhLJ) @mbwhite yes, I am actually calling a built in "registry.add" or "registry.update" from a client composer app or their respective built in REST operations. Then, I'd like to have an extra handler in my chaincode, annotated as below, called automatically when an asset is being added or updated
```
* @param {org.hyperledger.composer.system.AddAsset} myAssetTran
@transaction
```
[ ](https://chat.hyperledger.org/channel/composer?msg=Lo3nBBPSbmsiQZhLJ) @mbwhite yes, I am actually calling a built in "registry.add" or "registry.update" from a client composer app or their respective built in REST operations. Then, I'd like to have an extra handler in my chaincode, annotated as below, called automatically when an asset is being added or updated
```
@param {org.hyperledger.composer.system.AddAsset} myAssetTran
@transaction
```
[ ](https://chat.hyperledger.org/channel/composer?msg=Lo3nBBPSbmsiQZhLJ) @mbwhite yes, I am actually calling a built in "registry.add" or "registry.update" from a client composer app or their respective built in REST operations. Then, I'd like to have an extra handler in my chaincode, annotated as below, called automatically, before the asset is being added or updated
```
@param {org.hyperledger.composer.system.AddAsset} myAssetTran
@transaction
```
a function annotated as such, does get called but only after the asset has been added
Hey there! Can anybody tell me if it is possible to, having a past transaction's ID, to access all its parameters programatically?
Guys, how to wipe composer-playground data?
[ ](https://chat.hyperledger.org/channel/composer?msg=fqcgRFzTa5wijipbJ) @mataide - if you are connecting to a real fabric you need to remove and replace the Fabric (for the Development Fabric this means running the `startFabric.sh` script) - if you are using the Web profile in Playground then in the browser you need to use `localstorage.clear()` in the Browser console.
@rthatcher I did stopFabric.sh, tearDownFabric.sh and all the stuff but when I run composer-playground again, it shows invalid version, It looks like you've used an older version of Composer Playground before!
I've been running into a problem for the past week now and exhausted other research options. I keep getting a `Errored!! ReferenceError: require is not defined`. View gist here => https://gist.github.com/tdespenza/c020762e85021fb1b480169e57fa0c2f
In your REST API, use `{"where":{"include":"resolve"} ` on the filter of your REST /GET transaction by ID endpoint, to get the detail / deltas.
@pedromlcosta In your REST API, use `{"where":{"include":"resolve"} ` on the filter of your REST /GET transaction by ID endpoint, to get the detail / deltas.
@tdespenza there is no way to import/require third libraries
Oh. got it.
@mataide Oh. got it. Didn't know that. Thanks.
@uber.twin ... so you want to create an asset, and have some extra code.. I'd suggest implementing your own transaction, that does the extra bits you need and then does the create.
@mataide there's also the `composer network reset` CLI
Hi again,
Any idea on this ?
```
Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
```
[ ](https://chat.hyperledger.org/channel/composer?msg=CFG5sgrGS6mexkFWn) @mbwhite But it will reset just locally or the cloud?
I am getting an undefined object from ``` return await this.bizNetworkConnection.submitTransaction(transaction);````
[ ](https://chat.hyperledger.org/channel/composer?msg=YdmjbjtGmBn3r9Qgh) @mataide - I should have mentioned deleting all the Business Network Cards you have, and running createPeerAdminCard.sh
Then, restart Playground - do the localstorage.clear(), then hit http://localhost:8080/login
@rthatcher did this, not working.. just give up with playground
[ ](https://chat.hyperledger.org/channel/composer?msg=63a46WRoJead7hrxh) @CorentinPacaud - I have seen that error when the CA container is not started or not accessible to that client at that address. So possibly the connection.json is referring to the wrong CA, or it is not available. If it is available you should check the log to see if it is being hit by the client.
@rthatcher I'd like to inspect the code of how composer-rest-server do a submit a transaction, where in the code I can find it? Do you know?
@rthatcher Oh, you seems to be right, when I do a `docker ps` I dont have any CA ^^
@rthatcher I think I have a pb with certificate : ` Failed to find private key for certificate in '/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem': Could not find matching private key for SKI: Failed getting key for SKI `
[ ](https://chat.hyperledger.org/channel/composer?msg=ygiCfMs37PbkFkmxx) @mataide - all the composer code is here on github https://github.com/hyperledger/composer
@rthatcher hi, is there a generic way to resolve the "targetRegistry" Registry relation of a system transaction?
@rthatcher hi, is there a generic way to resolve the "targetRegistry" Registry relationship of a system transaction?
@rthatcher hi, is there a generic way to resolve the "targetRegistry" Registry relationship of a system transaction? ``` abstract transaction RegistryTransaction {
--> Registry targetRegistry
}```
@rthatcher hi, is there a generic way to load the "targetRegistry" Registry relationship of a system transaction? ``` abstract transaction RegistryTransaction {
--> Registry targetRegistry
}```
Hello, I'm trying to issue new identities with composer 0.19.5, but when I try to do it with composer identity issue, I get an exception in the peer: " transaction returned with failure: Error: Invalid continuation byte". Any hints?
(request doesn't arrive to CA, at least no logs)
[ ](https://chat.hyperledger.org/channel/composer?msg=MQyAdwydrHpEr66bN) @uber.twin - are you tring to retrieve data with a query ?
[ ](https://chat.hyperledger.org/channel/composer?msg=MQyAdwydrHpEr66bN) @uber.twin - are you trying to retrieve data with a query ?
hi, I am trying to understand the lifecycle of a transaction inside the business logic. When the async function that the embodies the transaction code completes, has consensus been reached, or is the function executing locally to the peer? How does the timing of the transaction function, and that of the REST API endpoint, relate to the fabric transaction flow http://hyperledger-fabric.readthedocs.io/en/release-1.1/txflow.html ?
Hi there. We are doing an experiment on Comoposer Transactions Vizualization using GraPhys. Does someone here have an active Composer with a REST API with some active data so that we could run some tests?
Has joined the channel.
Hi, I've just started going through the developer tutorial for the first time. When I try to install composer runtime, I'm not able to do so. I see -
Unknown arguments: card, businessNetworkName, runtime, install
I published it in a #fabric too. Sorry for the duplicate, I just want to find the person who will help.
---
When I try to install business network on Fabric, I get the error:
```
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: timeout expired while starting chaincode net_inno:0.0.1(networkid:dev,peerid:peer0.org1.innodata.ru,tx:b946385b19ed4f17e7b787c9d1cf76fe53bb17725d8aa95f399ff6b3451fd9e8)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: timeout expired while starting chaincode net_inno:0.0.1(networkid:dev,peerid:peer1.org1.innodata.ru,tx:b946385b19ed4f17e7b787c9d1cf76fe53bb17725d8aa95f399ff6b3451fd9e8)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (net_inno:0.0.1))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (net_inno:0.0.1))
```
Most likely, this is because of wrong setting up a Fabric. Can anybody tell me what I did wrong?
Logs of peer0 of org1:
https://imgur.com/a/DAI8gl6
https://imgur.com/a/dzRB220
Here all the sources: https://bitbucket.org/userVI/workchain/src/master/
I can provide access to the server with Fabric, if you are willing to help.
I published it in a #fabric too. Sorry for the duplicate, I just want to find the person who will help.
---
When I try to **start** business network on Fabric, I get the error:
```
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: timeout expired while starting chaincode net_inno:0.0.1(networkid:dev,peerid:peer0.org1.innodata.ru,tx:b946385b19ed4f17e7b787c9d1cf76fe53bb17725d8aa95f399ff6b3451fd9e8)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: timeout expired while starting chaincode net_inno:0.0.1(networkid:dev,peerid:peer1.org1.innodata.ru,tx:b946385b19ed4f17e7b787c9d1cf76fe53bb17725d8aa95f399ff6b3451fd9e8)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (net_inno:0.0.1))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (net_inno:0.0.1))
```
Most likely, this is because of wrong setting up a Fabric. Can anybody tell me what I did wrong?
Logs of peer0 of org1:
https://imgur.com/a/DAI8gl6
https://imgur.com/a/dzRB220
Here all the sources: https://bitbucket.org/userVI/workchain/src/master/
I can provide access to the server with Fabric, if you are willing to help.
[ ](https://chat.hyperledger.org/channel/composer?msg=zMHAbddkvGWfKbDHc) @ameyaraje check the versions of Fabric, Composer and tutorial that you use.
@VadimInshakov follow this tutorial https://hackernoon.com/deploy-a-business-network-on-free-ibm-blockchain-starter-plan-93fafb3dd997
Someone knows if submit transaction returns the object created? https://stackoverflow.com/questions/50378913/retrieve-result-from-hyperledger-transaction
Has joined the channel.
@VadimInshakov, thanks for the suggestion, I'll take a look
[ ](https://chat.hyperledger.org/channel/composer?msg=wQdnDKkikGfTnsGkn)
How do I know what versions are compatible/should I be running?
[ ](https://chat.hyperledger.org/channel/composer?msg=nbW2bYKztwTJiygai) @ameyaraje If you are running inside IBM Cloud, use v.0.19.5
can anyone help with my fabric question?
best to got the #fabric channel @Buckley404
@mbwhite help me with a hard question https://stackoverflow.com/questions/50378913/retrieve-result-from-hyperledger-transaction
Has joined the channel.
Hi
Error: EPERM: operation not permitted, open 'C:\Windows\System32\tutorial-network\tutorial-network@0.0.1.bna'
Command failed
while executeing "https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial"
Step Three: Generate a business network archive
I using windows 10
@gurpret7 I think that you dont hv read permission
but why are u using it inside System32 folder?
[ ](https://chat.hyperledger.org/channel/composer?msg=xpzYkzgWNwd4hMpkB) @Varun2887
It will be great if you could you please let me know the version/share the files on which the Explorer is running for Composer
Hello Guys, I do have few question.
1. As Composer Tool is yet to be stable, should I go ahead with Fabric SDK only to Integrate Fabric in our app? Is it compulsory to use composer tool in order to make the app in production?
Hello Guys, I do have a question.
1. As Composer Tool is yet to be stable, should I go ahead with Fabric SDK only to Integrate Fabric in our app? Is it compulsory to use composer tool in order to make the app in production?
[ ](https://chat.hyperledger.org/channel/composer?msg=5pseBf9kmEBkXeZfQ) @prmdmshra ```"name": "hyperledger-explorer",
"version": "0.3.0"```
[ ](https://chat.hyperledger.org/channel/composer?msg=Lz9xJsiEuo96qgPLA) @mataide
Thanks for your reply.
[ ](https://chat.hyperledger.org/channel/composer?msg=Lz9xJsiEuo96qgPLA) @mataide
Thanks for your reply.
Even I tried out of system32 folder, still getting same error.
how to get these read permission?
C:\Gurpreet Drive\Learning\BC\Hyperledger\practice>composer archive create -t dir -n .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: C:\Gurpreet Drive\Learning\BC\Hyperledger\practice
Error: ENOENT: no such file or directory, open 'C:\Gurpreet Drive\Learning\BC\Hyperledger\practice\package.json'
Command failed
Has joined the channel.
composer doesnt work well on windows
how to report documentation issues???
i guess
I would like to build a **rest server**, I tried to use `composer-rest-server` on my own server and `nginx reverse proxy`, but it does not work very well, it looks like composer-rest-server will stop by itself after running a while.
Does anyone get any ideas to build this kind of server? Thanks in advance.
yeah... i think you will need to rewrite the instantiation part of composer-rest-server
so that you can run nohup or never.. so that the process does not die
i just got it to work
what problem are you having?
you can run it, detach from it, then move it to the background
zerotoblockchain
How to run existing rest server application?
If we reuse command from starting then it doesn't show previous data.
[ ](https://chat.hyperledger.org/channel/composer?msg=BneqsFBX4YbzcKbxt) @mgcox In fact, I do not know the reason. It worked, but not very well, hours or days later, the nginx will give me 503 bad gateway. when I checked the composer-rest-server log, it stoped unexpectedly.
how to invoke a function from a transaction? which in turns perform some fabric related operations
namespace test
asset vehicle identified by Symbol {
o String Symbol
--> Manf M
}
participant Manf identified by Id {
o String Id
}
participant Dealer identified by Id {
o String Id
}
participant Buyer identified by Id {
o String Id
}
transaction Trade {
--> vehicle veh
--> Dealer D
}
unction tradeCommodity(trade) {
trade.veh.M = trade.D;
return getAssetRegistry('test.vehicle')
.then(function (assetRegistry) {
return assetRegistry.update(trade.veh);
i want transfer assets from one participant to another participant , not from same kind participant. like participant Dealer to participant Buyer
you should use a base participant
which is extended by all others
you can use "extend" (inheritance)
@cloudtester
Hello guys, I am looking for the default endorsement rule as I don't have a endorsement policy file .
@jaguarg I think i'ts only one organization has to sign
(i read it on the docs)
Hi,
Does anyone know something about this error ?
```
error: [ChannelEventHub.js]: _checkConnection - connection is not in the ready state. state: UNKNOWN_STATE
Caught exception: Error: Connection is not in the READY state
```
I seems to be a problem with GRPC but I dont where : https://stackoverflow.com/questions/50219592/error-connection-is-not-in-the-ready-state-at-channeleventhub-checkconnection
My config :
```server$ npm ls grpc
odmserver@1.0.0 PATH/server
├─┬ composer-client@0.19.5
│ └─┬ composer-connector-hlfv1@0.19.5
│ ├─┬ fabric-client@1.1.0
│ │ └── grpc@1.11.3 deduped
│ └── grpc@1.10.1
└── grpc@1.11.3
```
[ ](https://chat.hyperledger.org/channel/composer?msg=xxGBGhZPLN4aMFT4G) @FlorentinoSainz please can you share the link to doc section ? we have extended the sample network with 3 peers.
@jaguarg http://hyperledger-fabric.readthedocs.io/en/release-1.1/endorsement-policies.html
ctrl+F for "default"
[ ](https://chat.hyperledger.org/channel/composer?msg=GENpqwG72k5wHqL5F) @FlorentinoSainz Excellent. Thank you. Do you know where I could find the syntax / semantics for endorsement policy file ? I would like to implement rule like "At least 2",
[ ](https://chat.hyperledger.org/channel/composer?msg=AkEcYCCG8hNJg9HAD) @FlorentinoSainz i am using `composer network start` . The option `-o endorsementPolicy=` requires json formatted string or `-o endorsementPolicyFile=` requires a json file.
@jaguarg https://hyperledger.github.io/composer/v0.16/tutorials/deploy-to-fabric-multi-org
there's a sample there
no idea or where to find better docs tho
there are number of issues on https://hyperledger.github.io/composer/latest/managing/identity-issue
wanna report
Hi, does anyone know how to get the history of a specific Asset or Participant?
@waleed use historian
[ ](https://chat.hyperledger.org/channel/composer?msg=AkEcYCCG8hNJg9HAD) @jaguarg - this doc has some example json for endorsement policy : https://fabric-sdk-node.github.io/global.html#ChaincodeInstantiateUpgradeRequest
[ ](https://chat.hyperledger.org/channel/composer?msg=Z9SJTRWqA6J38s5wM) @Varun2887 Historian give only the transactions, but I don't see the asset id in the record
@Varun2887 can u give me an example?
[ ](https://chat.hyperledger.org/channel/composer?msg=nhXdZFS2KWqBEFy2P) @waleed - this section of the Knowledge Wiki shows there is an outstanding issue for history of Assets, but it also includes a work around: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#historian
@rthatcher https://hyperledger.github.io/composer/latest/managing/identity-issue this page seems to be misleading
if you can please help me out in issuing identity from client side
[ ](https://chat.hyperledger.org/channel/composer?msg=uvKxFiWw8TSQk3xqy) @Varun2887 - have you seen the getNativeAPI function that can be used in the Transaction logic. It is described here: https://hyperledger.github.io/composer/latest/reference/js_scripts
@rthatcher yes
@rthatcher @mahoney1 I am looking for API to register new user(create cards) on the composer using client API. And thereafter use the newly created card for further communication(hence import the card details at client side to connect to network)
everything to be automated
[ ](https://chat.hyperledger.org/channel/composer?msg=kao6nZ5zJ3PycdQqC) @rthatcher the current system transactin agregates the resource being act upon. Lets assume it's an asset type resource. I'd like to make some modifications of my own to the resource(s) and then I'd like to save my updates - and for this I need the resource registry. Something as below:
```
/**
* @param {org.hyperledger.composer.system.AddAsset} assetTran
* @transaction
*/
function onAssetAddTran(assetTran) {
for(var i = 0; i
[ ](https://chat.hyperledger.org/channel/composer?msg=kao6nZ5zJ3PycdQqC) @rthatcher the current system transactin agregates the resource being act upon. Lets assume it's an asset type resource. I'd like to make some modifications of my own to the resource(s) and then I'd like to save my updates - and for this I need the resource registry. Something as below:
```
/**
* @param {org.hyperledger.composer.system.AddAsset} assetTran
* @transaction
*/
function onAssetAddTran(assetTran) {
for(var i = 0; i
[ ](https://chat.hyperledger.org/channel/composer?msg=kao6nZ5zJ3PycdQqC) @rthatcher the current system transaction aggregates the resource being act upon. Lets assume it's an asset type resource. I'd like to make some modifications of my own to the resource(s) and then I'd like to save my updates - and for this I need the resource registry. Something as below:
```
/**
* @param {org.hyperledger.composer.system.AddAsset} assetTran
* @transaction
*/
function onAssetAddTran(assetTran) {
for(var i = 0; i
[ ](https://chat.hyperledger.org/channel/composer?msg=kao6nZ5zJ3PycdQqC) @rthatcher the current system transaction aggregates the resource being act upon. Lets assume it's an asset type resource. I'd like to make some modifications of my own to the resource(s) and then I'd like to save my updates - and for this I need the resource registry, namely the ```assetTran.targetRegistry``` ,resolved. Something as below:
```
/**
* @param {org.hyperledger.composer.system.AddAsset} assetTran
* @transaction
*/
function onAssetAddTran(assetTran) {
for(var i = 0; i
[ ](https://chat.hyperledger.org/channel/composer?msg=kao6nZ5zJ3PycdQqC) @rthatcher the current system transaction aggregates the resource being act upon. Lets assume it's an asset type resource. I'd like to make some modifications of my own to the resource(s) and then I'd like to save my updates - and for this I need the resource registry, namely the assetTran.targetRegistry ,resolved. Something as below:
```
/**
* @param {org.hyperledger.composer.system.AddAsset} assetTran
* @transaction
*/
function onAssetAddTran(assetTran) {
for(var i = 0; i
[ ](https://chat.hyperledger.org/channel/composer?msg=kao6nZ5zJ3PycdQqC) @rthatcher the current system transaction aggregates the resource being act upon. Lets assume it's an asset type resource. I'd like to make some modifications of my own to the resource(s) and then I'd like to save my updates - and for this I need the resource registry, namely the assetTran.targetRegistry, resolved. Something as below:
```
/**
* @param {org.hyperledger.composer.system.AddAsset} assetTran
* @transaction
*/
function onAssetAddTran(assetTran) {
for(var i = 0; i
[ ](https://chat.hyperledger.org/channel/composer?msg=Lx3ZonrzNXfKMrAuF) @gurpret7 - Composer is not supported for Windows. It is possible to make it work, but not supported. This link may be of help, and you could raise issues against it in guthub - https://davidkel.github.io/docs/Windows/Intro.html
[ ](https://chat.hyperledger.org/channel/composer?msg=5Cuo7jrJet7rJNo7f) @KindleBitSoln - The REST server doesn't store data itself, so restarting the REST server should not remove data. Are you restarting your Fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=5qi87mZR4ACza7bqX) @rthatcher
Thanks alot. Its a well written document
[ ](https://chat.hyperledger.org/channel/composer?msg=5fWN9c3LDTvqZgw7P) @cloudtester - the realtionship denoted by --> is for a particular class (participant or asset) so switching classes won't work. Perhaps you could use 2 optional properties.
If I have an array as property in asset and I want to create a query like `SELECT asset WHERE arrayProperty[0] == 1 `
What is right syntax (on WHERE) to do this?
[ ](https://chat.hyperledger.org/channel/composer?msg=KySPyHzubskXLTyRd) @waleed contains may help you
```query Q18 {
description: "Select all drivers who has the following interests"
statement:
SELECT org.example.Driver
WHERE (badges CONTAINS ['punctual', 'steady-driving'])
}``` Ref: https://hyperledger.github.io/composer/latest/reference/query-language
not sure if index based query is available
https://futurestud.io/tutorials/pm2-process-management
[ ](https://chat.hyperledger.org/channel/composer?msg=76SJ8GzYee6Y6B5hb) @Varun2887 this works if have an array of strings, but what if u have an arry of objects
[ ](https://chat.hyperledger.org/channel/composer?msg=76SJ8GzYee6Y6B5hb) @Varun2887 this works if have an array of strings, but what if u have an array of objects
[ ](https://chat.hyperledger.org/channel/composer?msg=76SJ8GzYee6Y6B5hb) @Varun2887 this works if have an array of strings, but what if u have an array of objects?
Is there a way in composer-client to get the currentParticipant?
like getCurrentParticipant() inside transaction logic
(wtihout going thru all the identity registry I mean)
http://composer-playground.mybluemix.net/editor
I uploaded my BNA file here, now I can't get rid of it and start a new project. How do I start a new project?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=8Sh5h7BaHhCTntdtY) @VamzR clear ur browser cache
it gets stored on browser
I tried that, it did not work =/
is there a way to create cards on the fly using client APIs? I am not getting anything as such as of now in the API's
hello guys, I'am trying to deploy the .bna to my fabric network, but when i execute the start command give this error : Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (blockchainu:0.0.2)).
What may cause this ?
````
docker run \
--rm \
--network net_byfn \
--stop-timeout 20 \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:{{COMPOSER-VERSION}} \
network install -c PeerAdmin@byfn-network-org1 -a vehicle-manufacture-network.bna
``` `
```
docker run \
--rm \
--network net_byfn \
--stop-timeout 20 \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:latest \
network install -c PeerAdmin@byfn-network-org1 -a vehicle-manufacture-network.bna
```
I'm trying to run this command (retrieve from the composer-sample-application for vehicle-manufacture-network) but it does nothing, no error, no info.
And when i try without a docker container it works. Can some one help ?
```
docker run \
--rm \
--network net_byfn \
--stop-timeout 20 \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:latest \
network install -c PeerAdmin@byfn-network-org1 -a vehicle-manufacture-network.bna
```
I'm trying to run this command (retrieve from the composer-sample-application for vehicle-manufacture-network) but it does nothing, no error, no info.
And when i try without a docker container it works. Can some one help ?
```
docker run \
--rm \
--network net_byfn \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:latest \
network install -c PeerAdmin@byfn-network-org1 -a vehicle-manufacture-network.bna
```
I'm trying to run this command (retrieve from the composer-sample-application for vehicle-manufacture-network) but it does nothing, no error, no info.
And when i try without a docker container it works. Can some one help ?
hello guys, I have several test files under composer `test/` folder, each test file is used to test a feature, and each test file require a clean test environment. But when i specify the test script to `mocha test/*.js` and execute command `npm run test`, I find all the test files share a same environment, and any environment changes that are made in test file *a.js* also exist in *b.js* execution environment. This always make some of my testcase fail. Does anybody know how to solve it? Thank
hello guys, I have several test files under composer `test/` folder, each test file is used to test a feature, and each test file require a clean test environment. But when i specify the test script to `mocha test/*.js` and execute command `npm run test`, I find all the test files share a same environment, and any environment changes that are made in test file *a.js* also exist in *b.js* execution environment. This always make some of my testcase fail. Does anybody know how to solve it? Thank you very much.
hello guys, I have several test files under composer `test/` folder, each test file is used to test a feature, and each test file require a clean test environment. But when i specify the test script to `mocha test/*.js` and execute command `npm run test`, I find all the test files share a same environment, and any environment changes that are made in test file *a.js* also exist in *b.js* execution environment. This always make some of my testcase fail. Does anybody know how to solve it? Thank you very much.
[ ](https://chat.hyperledger.org/channel/composer?msg=bQuudPmigzy2ZfugS) @Varun2887 - you would need to Issue an Identity then create the card.
API Docs:
https://hyperledger.github.io/composer/latest/api/client-businessnetworkconnection#issueidentity
https://hyperledger.github.io/composer/latest/api/common-idcard.html
Issue Identity Example:
https://hyperledger.github.io/composer/latest/managing/identity-issue.html
[ ](https://chat.hyperledger.org/channel/composer?msg=hftmrnozpZLY6wYgf) @lipoplus - usually this is the solution for that error:
The network start has failed for the particular network name and version specified. This can occur because a composer network install has not been run, but it is more likely that there is a mismatch.
Run the `composer archive list` command to see the exact name and version used in the .bna file.
Remember that the version number must be changed and saved in the package.json.
(Taken from the knowledge wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues )
[ ](https://chat.hyperledger.org/channel/composer?msg=5ssqPddLoCRCXBkp8) @GrondinLaurent - I would think that you should also share a volume for the Card PeerAdmin - something like ` -v ~/.composer:/home/composer/.composer \ `
[ ](https://chat.hyperledger.org/channel/composer?msg=xa6nCaxRjrwA5EXQ9) @rthatcher The card PeerAdmin is in the volume `.vld-card-store` because i have imported it with :
```
docker run \
--rm \
--network net_byfn \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $PARENT/first-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp:/home/composer/PeerAdmin@org1 \
hyperledger/composer-cli:{{COMPOSER-VERSION}} \
card import -f vldstage/PeerAdmin@byfn-network-org1.card --card PeerAdmin@byfn-network-org1
```
[ ](https://chat.hyperledger.org/channel/composer?msg=xa6nCaxRjrwA5EXQ9) @rthatcher The card PeerAdmin is in the volume `.vld-card-store` because i have imported it with :
```
docker run \
--rm \
--network net_byfn \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $PARENT/first-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp:/home/composer/PeerAdmin@org1 \
hyperledger/composer-cli:latest \
card import -f vldstage/PeerAdmin@byfn-network-org1.card --card PeerAdmin@byfn-network-org1
```
hello guys, I have several test files under composer `test/` folder, each test file is used to test a feature, and each test file require a clean test environment. But when i specify the test script to `mocha test/*.js` and execute command `npm run test`, I find all the test files share a same environment, and any environment changes that are made in test file *a.js* also exist in *b.js* execution environment. This always make some of my testcase fail. Does anybody know how to solve it? Thank you very much.
@GrondinLaurent - the card file " vldstage/PeerAdmin@byfn-network-org1.card " - did you create a connection.json file for it replacing 'localhost' with the names/addresses of the containers according to docker-compose?
User User_1 added by HarshithaC.
Has joined the channel.
Hello guys, I am trying to integrate hyperledger google auth api with angular app. I got the access token from google. Is there any way to get the hyperledger access token from google access token?
Clipboard - 17 mai 2018 14:43
[ ](https://chat.hyperledger.org/channel/composer?msg=gZd2xdDnFY4YvSoC2) @rthatcher Everything is on my machine so i have localhost in connection json and every name from docker-compose files are correct. Here a sample my json :
[ ](https://chat.hyperledger.org/channel/composer?msg=gZd2xdDnFY4YvSoC2) @rthatcher Everything is on my machine so i have localhost in connection json and every name from docker-compose files are correct. Here a sample of my json :
[ ](https://chat.hyperledger.org/channel/composer?msg=YAnMqxZj3C7AAL9Nm) @GrondinLaurent - when the command runs in the container, 'localhost' refers to the container - so can't see out to your fabric - you will need the names/addresses of the containers as known to the docker bridge you are using
[ ](https://chat.hyperledger.org/channel/composer?msg=X6wsEGEgzSXDXcM2K) @rthatcher ooh i see i totally miss that part. I think it's that. Thanks i'll try it right away :)
Can anyone point me to sample code regarding connecting to a blockchain network through the node SDK and making sure that it gets reconnected in case it loses the connection so that I don't lose any events emitted? Looking to have my node REST server constantly connected to the blockchain network...
[ ](https://chat.hyperledger.org/channel/composer?msg=E9wmFHZ6yfkecYvof) @Varun2887
I am also working on the same version ("version": "0.3.0"). Blank Web page is displayed for me after initial loading messages on the UI. It would be great if you could help me on resolving the issue.
[ ](https://chat.hyperledger.org/channel/composer?msg=tQfEsKnskP2zxuQsp)
Thats exactly the one Im running. Any other suggestions?
[ ](https://chat.hyperledger.org/channel/composer?msg=N9BG6FtecGRN9a4wo) I am trying to reset the context for each test file with below code `after(async () => {
await adminConnection.reset(businessNetworkName);
});` and I got a new error `"after all" hook:
TypeError: Cannot read property 'engine' of undefined
at EmbeddedConnection.queryChainCode (node_modules/composer-connector-embedded/lib/embeddedconnection.js:203:53)
at Function.queryChainCode (node_modules/composer-common/lib/util.js:69:48)
at EmbeddedConnection.reset (node_modules/composer-common/lib/connection.js:156:33)
at Promise.resolve.then (node_modules/composer-admin/lib/adminconnection.js:513:36)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=N9BG6FtecGRN9a4wo) I am trying to reset the context for each test file with below code `after(async () => {
await adminConnection.reset(businessNetworkName);
});` and I got a new error `"after all" hook:
TypeError: Cannot read property 'engine' of undefined
at EmbeddedConnection.queryChainCode (node_modules/composer-connector-embedded/lib/embeddedconnection.js:203:53)
at Function.queryChainCode (node_modules/composer-common/lib/util.js:69:48)
at EmbeddedConnection.reset (node_modules/composer-common/lib/connection.js:156:33)
at Promise.resolve.then (node_modules/composer-admin/lib/adminconnection.js:513:36)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=N9BG6FtecGRN9a4wo) I am trying to reset the context for each test file with below code ```
after(async () => {
await adminConnection.reset(businessNetworkName);
});
``` ` and I got a new error `"after all" hook:
TypeError: Cannot read property 'engine' of undefined
at EmbeddedConnection.queryChainCode (node_modules/composer-connector-embedded/lib/embeddedconnection.js:203:53)
at Function.queryChainCode (node_modules/composer-common/lib/util.js:69:48)
at EmbeddedConnection.reset (node_modules/composer-common/lib/connection.js:156:33)
at Promise.resolve.then (node_modules/composer-admin/lib/adminconnection.js:513:36)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=N9BG6FtecGRN9a4wo) I am trying to reset the context for each test file with below code ```
after(async () => {
await adminConnection.reset(businessNetworkName);
});
```
and I got a new error `"after all" hook:
TypeError: Cannot read property 'engine' of undefined
at EmbeddedConnection.queryChainCode (node_modules/composer-connector-embedded/lib/embeddedconnection.js:203:53)
at Function.queryChainCode (node_modules/composer-common/lib/util.js:69:48)
at EmbeddedConnection.reset (node_modules/composer-common/lib/connection.js:156:33)
at Promise.resolve.then (node_modules/composer-admin/lib/adminconnection.js:513:36)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=N9BG6FtecGRN9a4wo) I am trying to reset the context for each test file with below code ```
after(async () => {
await adminConnection.reset(businessNetworkName);
});
```
and I got a new error,```
"after all" hook:
TypeError: Cannot read property 'engine' of undefined
at EmbeddedConnection.queryChainCode (node_modules/composer-connector-embedded/lib/embeddedconnection.js:203:53)
at Function.queryChainCode (node_modules/composer-common/lib/util.js:69:48)
at EmbeddedConnection.reset (node_modules/composer-common/lib/connection.js:156:33)
at Promise.resolve.then (node_modules/composer-admin/lib/adminconnection.js:513:36)
at
As per my understanding each organization will host its own rest server. In the vehicle lifecycle network, which rest server will the privateOwner connect to? someone please clarify me
So in bitcoin we have this concept called the mempool from which nodes pick up random transactions, form a block and *mine* them. Is there something similar here? If 500 transactions appear at the same, how does fabric decide which ones to execute tfirst?
Has joined the channel.
Does anyone have example code of how to manually submit a transaction in the logic javascript file? So, if I have transactions A and B, in the processor of transaction A, I want to trigger transaction B.
Has joined the channel.
I have hyperledger composer network setup as follows:
Orderer, CA, Peer1 (couchdb1), Peer2 (couchdb2) on System 1
Peer 3 (couchdb3) on System 2
All Peers are subscribed to a common channel (composerchannel). I create a sample application (tutorial-network) provided in tutorial section of the main web site and installed it on the network.
When I browse couchdb1 I can see a database named "composerchannel_tutorial-network" for my imported application. I added couple of participants through REST interface and they appears in couchdb1 too.
The problem is when I look at the couchdb2 and couchdb3 instance I don't see database "composerchannel_tutorial-network" on them. I believe since all these peers are subscribed to a single channel it should replicate this database on all peers automatically.
[ ](https://chat.hyperledger.org/channel/composer?msg=GrB5CBF95CDnEF78c) I see this on docker container of peer 2 "unable to get chaincode data from ledger for tx due to lscc's state for [tutorial-network] not found"
[ ](https://chat.hyperledger.org/channel/composer?msg=e49bJGNEQCPvouFrq) @mahoney1 Is it only possible on a client app? I'd like to use it on the composer runtime (in another transaction's processor function)
[ ](https://chat.hyperledger.org/channel/composer?msg=Jf24hDsRn9GZ58rFf) @rthatcher thanks for your help @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=MJAQmQQ2omZRhCkaE) @ameyaraje - from your message yesterday I think you were trying to run the command `composer runtime install` - this is an old command that no longer exists, perhaps you were looking at on old version of a document. The current version of the developer tutorial is here: https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
This doc uses the new commands ` composer network install ` and ` composer netwprk start `
[ ](https://chat.hyperledger.org/channel/composer?msg=xPT8Td8NoumBr48kC) @pedromlcosta - Filters are only supported by the REST server. (They are actually part of the Loopback system that the REST server is built on)
@mahoney1 What about using something like getTransactionRegistry?
only for client as well?
only for client as well? I could really use it to do some interesting stuff
only for client as well? I could really use it to do some interesting stuff in the transaction processors
@rthatcher, thanks for pointing me to the correct link! I'll take a look
Can anyone provide some code as to how to handle the init() function on application start-up, continually check that the connection to the blockchain is established and reconnect when the connection is down?
@rthatcher, Im now stuck at the same step because it says
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Card not found: PeerAdmin@hlfv1
Command failed
Actually, I was able to figure out why it was giving an error. I reinstalled the card and it worked! Thanks for the correct link
@rthatcher @mahoney1 no community call today?
o did I mess up with the weekly schedule?
[ ](https://chat.hyperledger.org/channel/composer?msg=HKKrpBRopbqsEXXhg) @acbellini :-) yes you did mess up the schedule - next week at this time though.
:P
Has joined the channel.
Is it possible to access Fabric remotely using composer on different machine/node?
Has joined the channel.
Hi. Wh would one use the Composer over the Fabric? Is it right to think that the Composer is just a pre-made solution, while the Fabric is more low level?
Hi. Why would one use the Composer over the Fabric? Is it right to think that the Composer is just a pre-made solution, while the Fabric is more low level?
Has joined the channel.
Has left the channel.
@rthatcher For composer authentication only support is web, or there sdk support too?
can composer rest server login be authenticated through some process?
@rthatcher For composer authentication only support is web, or there sdk support too?
can composer rest server login be authenticated through some process?
Is there a way for the peers to know that a new version of the bna has been deployed? Can you suggest some places i can read about how the news about the update is given to all the peers?
Hi All, I want to know about the whole transaction time... When client submits it and when it gets commit into the blockchain... I know about the events.. I want to clarify that, if I use REST server and when I submit some transaction via APIs then REST server return the transaction response immediately or after the transaction commit?
Hello, i'm running composer 0.19.5 and when im deploying + upgrading new versions of the code, all the old dockers are still alive, is this normal?
it didnt happen on 0.16
+ can i stop old ones?
@FlorentinoSainz It is normal, a business network is now the fabric chaincode (it wasn't the case for 0.16) which affords the appropriate controls for deploying business networks (signed by all organisations, authority to install/start/upgrade handled at a fabric level). In a development environment it is safe to remove the old ones. It's something we hope hyperledger fabric will address in the future.
@davidkel oh thats addressed then, great!. Thanks, they seem to be idling anyways, so no much of a problem :). (just a side curiosity question, does fabric keep them for some kind of versioning between chaincodes or un-deploy is just a missing feature?)
@FlorentinoSainz fabric document the current situation here http://hyperledger-fabric.readthedocs.io/en/latest/chaincode4noah.html?highlight=upgrade#upgrade (easier than I trying to transcribe it :-) )
thanks!
oh oke got it :)
Has joined the channel.
Hi Everyone! I'm building a network and running into a strange issue when deploying my .bna file. I create a PeerAdmin card for the network and then if I launch composer-playground I can deploy my code and everything works. However, if I try to use the composer-cli commands "composer network install" and "composer network start" instead of composer-playground the process fails. The first command (composer network install) works successfully and if I log onto the peer at that point I can see the chaincode was install. What is weird is the peer also lists it as instantiated. Then when I try to run the "composer network start" command I get the error "simulateProposal() resulted in chaincode name:"lscc" response status 500 for txid: bfcd8f3d18fc0fe0a265ba1fd4537302c3a4af8491efca158014ad5cc757d100" in the logs of the Peer and the chaincode container never gets created. Any advice? Thanks!
Has joined the channel.
Having a little trouble adding a resource to the registry when running test, https://gist.github.com/tdespenza/956ede2aa863519bbff730e1991df377. When I attempt to read a list of the resources from the registry I just saved it to, I always back a list of empty array.
[ ](https://chat.hyperledger.org/channel/composer?msg=s6kJKHD72mZNsQRgF) @rthatcher is there an example around it? issuing the ID Card
Has joined the channel.
Has joined the channel.
Hi Everyone
is anyone in here knew why I can't run composer network update?
I am getting an invalid command for that
is it already not available in version 0.19.4?
its upgrade now
@JesonGodilo install+upgrade is what ur looking for
hmm seems like doesnt work
I already tried that
what I am doing is adding a .qry file
you can only have one qry file afaik? (not an expert, just a user)
for now I just only have 1
which commands are u executing
when u tried install+uprade?
composer network upgrade
It is successfully executed
but I cant see my qry methods in rest server
you probably need to regenerate
the rest server
yes i did that also
is ur file named queries.qry?
(just in case)
no
idk about rest-server, I use my own implemented rest-server
try that, could be a reason (no idea)
ok ill try
still dont see my .qry in rest server
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=i4CWquvCYmb3Bnoeg) Anyone?
[ ](https://chat.hyperledger.org/channel/composer?msg=CTJJKud2DoZk6WiYo) @JesonGodilo - maybe there is a problem with the query file - it must be called `queries.qry` and it must be in the root folder of the project (the same place as package.json). I guess you are following the Queries tutorial - but if not here is the link which cover doing the `composer network upgrade` etc. https://hyperledger.github.io/composer/latest/tutorials/queries and remember to stop and restart the REST server.
[ ](https://chat.hyperledger.org/channel/composer?msg=E8tRY5DgMecFuW5Zm) @tdespenza - are you trying to read the assets in the same transaction as they are written? They are not available until the transaction completes.
[ ](https://chat.hyperledger.org/channel/composer?msg=skGSkjF7e9i8SLrNT) @absingh0 yes it does as described here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--rest-apis-questions
[ ](https://chat.hyperledger.org/channel/composer?msg=voioD9pnLdXuZdECk) @mahoney1 Thanks alot :) This is really very helpful :)
I am following https://github.com/hyperledger/composer/issues/2038.
According to that I have done setup as following:
COMPOSER_PROVIDERS setup:
```
"jwt": {
"provider": "jwt",
"module": "/home/composer/node_modules/custom-jwt.js",
"secretOrKey": "tasmanianDevil",
"authScheme": "jwt",
"successRedirect": "/",
"failureRedirect": "/"
}
```
custom-jwt.js :
```
'use strict';
const passportJwt = require('passport-jwt');
const util = require('util');
function CustomJwtStrategy(options, verify) {
options.jwtFromRequest = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken();
passportJwt.Strategy.call(this, options, verify);
}
util.inherits(CustomJwtStrategy, passportJwt.Strategy);
module.exports = {
Strategy: CustomJwtStrategy
};
```
And I am generating jwt as following at some other place.
```
var jwtOptions = {}
jwtOptions.jwtFromRequest = passportJWT.ExtractJwt.fromAuthHeaderAsBearerToken();
jwtOptions.secretOrKey = 'tasmanianDevil';
app.post("/login", function(req, res) {
if(req.body.name && req.body.password){
var name = req.body.name;
var password = req.body.password;
}
var user ={id:1,name:name, password:password};
console.log(user);
var payload = {id: user.id};
var token = jwt.sign(payload, jwtOptions.secretOrKey);
res.json({message: "ok", token: token});
}
```
Generation of token is just for testing purpose to check whether rest points are accessible using the token generated by same secret key provided in configuration of COMPOSER_PROVIDER. But it is still not working. When I access any rest API generated by composer rest server using generated token in postman I got 'Authorisation Required' error.
It would be great if you help to find out what I did wrong or if I am missing something
I am following https://github.com/hyperledger/composer/issues/2038.
According to that I have done setup as following:
COMPOSER_PROVIDERS setup:
```
"jwt": {
"provider": "jwt",
"module": "/home/composer/node_modules/custom-jwt.js",
"secretOrKey": "tasmanianDevil",
"authScheme": "jwt",
"successRedirect": "/",
"failureRedirect": "/"
}
```
custom-jwt.js :
```
'use strict';
const passportJwt = require('passport-jwt');
const util = require('util');
function CustomJwtStrategy(options, verify) {
options.jwtFromRequest = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken();
passportJwt.Strategy.call(this, options, verify);
}
util.inherits(CustomJwtStrategy, passportJwt.Strategy);
module.exports = {
Strategy: CustomJwtStrategy
};
```
And I am generating jwt as following at some other place.
```
var jwtOptions = {}
jwtOptions.jwtFromRequest = passportJWT.ExtractJwt.fromAuthHeaderAsBearerToken();
jwtOptions.secretOrKey = 'tasmanianDevil';
app.post("/login", function(req, res) {
if(req.body.name && req.body.password){
var name = req.body.name;
var password = req.body.password;
}
var user ={id:1,name:name, password:password};
console.log(user);
var payload = {id: user.id};
var token = jwt.sign(payload, jwtOptions.secretOrKey);
res.json({message: "ok", token: token});
}
```
Generation of token is just for testing purpose to check whether rest points are accessible using the token generated by same secret key provided in configuration of COMPOSER_PROVIDER. But it is still not working. When I access any rest API generated by composer rest server using generated token in postman I got 'Authorisation Required' error.
It would be great if anyone could help to find out what I did wrong or if I am missing something
For an update in the bna how will the peers be notified about the change, suppose a case where there is a addition of a field in the person definition so the peers must be notified for that is there a REST endpoint or how exactly it is done?
Suppose i am a peer in the network and want to see the metadata will the swagger.json be available on all peers or is it specific to the admin?
Has joined the channel.
I am trying to develop a business network, and in my business network, participants can change the assets that *only* belongs to them, and can't change the assets not belongs to them! But during the development phrase, I found it almost impossible when *participant A* want to transfer _partial_ asset to *participant B*, my code in below,```
namespace test
participant User identified by email {
o String email
}
asset Wallet identified by token {
o String token
o Double amountOfMoney
--> User owner
}
transaction TransferMoney {
o Double amount
--> Wallet myWallet
--> Wallet toWallet
}
``` and transaction,```
/**
* Processor of delegate transfer share transaction
* @param {org.idianyou.dysbiznet.TransferMoney} tx
* @transaction
*/
async function transferMoney(tx){
const participantA = getCurrentParticipant();
const walletAssetRegistry = await getAssetRegistry('test.Wallet');
tx.myWallet.amontOfMoney -= tx.amount;
tx.toWallet.amountOfMony += tx.amount;
await walletAssetRegistry.update(tx.myWallet);
// The below line code makes participant A change an asset that not belongs to him!!!
// So my question is,
// 1. Is it reasonable to make participant A can change assets than belongs to participant B?
// 2. Does it cause security problems?
// 3. How to develop a solution to meet my requirements?
await walletAssetRegistry.update(tx.toWallet);
}
```
I am trying to develop a business network, and in my business network, participants can change the assets that *only* belongs to them, and can't change the assets not belongs to them! But during the development phrase, I found it almost impossible when *participant A* want to transfer _partial_ asset to *participant B*, my code in below,```
namespace test
participant User identified by email {
o String email
}
asset Wallet identified by token {
o String token
o Double amountOfMoney
--> User owner
}
transaction TransferMoney {
o Double amount
--> Wallet myWallet
--> Wallet toWallet
}
```
and transaction,```
/**
* Processor of delegate transfer share transaction
* @param {org.idianyou.dysbiznet.TransferMoney} tx
* @transaction
*/
async function transferMoney(tx){
const participantA = getCurrentParticipant();
const walletAssetRegistry = await getAssetRegistry('test.Wallet');
tx.myWallet.amontOfMoney -= tx.amount;
tx.toWallet.amountOfMony += tx.amount;
await walletAssetRegistry.update(tx.myWallet);
// The below line code makes participant A change an asset that not belongs to him!!!
// So my question is,
// 1. Is it reasonable to make participant A can change assets than belongs to participant B?
// 2. Does it cause security problems?
// 3. How to develop a solution to meet my requirements?
await walletAssetRegistry.update(tx.toWallet);
}
```
I am trying to develop a business network, and in my business network, participants can change the assets that *only* belongs to them, and can't change the assets not belongs to them! But during the development phrase, I found it almost impossible when *participant A* want to transfer _partial_ asset to *participant B*, fox example,```
namespace test
participant User identified by email {
o String email
}
asset Wallet identified by token {
o String token
o Double amountOfMoney
--> User owner
}
transaction TransferMoney {
o Double amount
--> Wallet myWallet
--> Wallet toWallet
}
```
and transaction,```
/**
* Processor of delegate transfer share transaction
* @param {org.idianyou.dysbiznet.TransferMoney} tx
* @transaction
*/
async function transferMoney(tx){
const participantA = getCurrentParticipant();
const walletAssetRegistry = await getAssetRegistry('test.Wallet');
tx.myWallet.amontOfMoney -= tx.amount;
tx.toWallet.amountOfMony += tx.amount;
await walletAssetRegistry.update(tx.myWallet);
// The below line code makes participant A change an asset that not belongs to him!!!
// So my question is,
// 1. Is it reasonable to make participant A can change assets than belongs to participant B?
// 2. Does it cause security problems?
// 3. How to develop a solution to meet my requirements?
await walletAssetRegistry.update(tx.toWallet);
}
```
I am trying to develop a business network, and in my business network, participants can change the assets that *only* belongs to them, and can't change the assets not belongs to them! But during the development phrase, I found it almost impossible when *participant A* want to transfer _partial_ asset to *participant B*, fox example,```
namespace test
participant User identified by email {
o String email
}
asset Wallet identified by token {
o String token
o Double amountOfMoney
--> User owner
}
transaction TransferMoney {
o Double amount
--> Wallet myWallet
--> Wallet toWallet
}
```
and transaction,```
/**
* Processor of delegate transfer share transaction
* @param {test.TransferMoney} tx
* @transaction
*/
async function transferMoney(tx){
const participantA = getCurrentParticipant();
const walletAssetRegistry = await getAssetRegistry('test.Wallet');
tx.myWallet.amontOfMoney -= tx.amount;
tx.toWallet.amountOfMony += tx.amount;
await walletAssetRegistry.update(tx.myWallet);
// The below line code makes participant A change an asset that not belongs to him!!!
// So my question is,
// 1. Is it reasonable to make participant A can change assets than belongs to participant B?
// 2. Does it cause security problems?
// 3. How to develop a solution to meet my requirements?
await walletAssetRegistry.update(tx.toWallet);
}
```
I am trying to develop a business network, and in my business network, participants can change the assets that *only* belongs to them, and can't change the assets not belongs to them! But during the development phrase, I found it almost impossible when *participant A* want to transfer _partial_ asset to *participant B*, fox example,```
namespace test
participant User identified by email {
o String email
}
asset Wallet identified by token {
o String token
o Double amountOfMoney
--> User owner
}
transaction TransferMoney {
o Double amount
--> Wallet myWallet
--> Wallet toWallet
}
```
and transaction,```
/**
* Processor of delegate transfer share transaction
* @param {test.TransferMoney} tx
* @transaction
*/
async function transferMoney(tx){
const participantA = getCurrentParticipant();
const walletAssetRegistry = await getAssetRegistry('test.Wallet');
tx.myWallet.amontOfMoney -= tx.amount;
tx.toWallet.amountOfMony += tx.amount;
await walletAssetRegistry.update(tx.myWallet);
// The below line code makes participant A change an asset that not belongs to him!!!
// So my question is,
// 1. Is it reasonable to make participant A can change assets than belongs to participant B?
// 2. Does it cause security problems?
// 3. How to develop a solution to meet my requirements?
await walletAssetRegistry.update(tx.toWallet);
}
```
I thinks it is security issue when participant A can change the asset of participant B. If I write ACLs to make participant A can't update the asset of participant B, then the upon transaction processor will not
I am trying to develop a business network, and in my business network, participants can change the assets that *only* belongs to them, and can't change the assets not belongs to them! But during the development phrase, I found it almost impossible when *participant A* want to transfer _partial_ asset to *participant B*, fox example,```
namespace test
participant User identified by email {
o String email
}
asset Wallet identified by token {
o String token
o Double amountOfMoney
--> User owner
}
transaction TransferMoney {
o Double amount
--> Wallet myWallet
--> Wallet toWallet
}
```
and transaction,```
/**
* Processor of delegate transfer share transaction
* @param {test.TransferMoney} tx
* @transaction
*/
async function transferMoney(tx){
const participantA = getCurrentParticipant();
const walletAssetRegistry = await getAssetRegistry('test.Wallet');
tx.myWallet.amontOfMoney -= tx.amount;
tx.toWallet.amountOfMony += tx.amount;
await walletAssetRegistry.update(tx.myWallet);
// The below line code makes participant A change an asset that not belongs to him!!!
// So my question is,
// 1. Is it reasonable to make participant A can change assets than belongs to participant B?
// 2. Does it cause security problems?
// 3. How to develop a solution to meet my requirements?
await walletAssetRegistry.update(tx.toWallet);
}
```
I thinks it is security issue when participant A can change the asset of participant B. If I write ACLs to make participant A can't update the asset of participant B, then the upon transaction processor will *not* work due to less of privileges. I am trying to search a solution to support both business and secure requirements. Does anybody has good ideas?
I am trying to develop a business network, and in my business network, participants can change the assets that *only* belongs to them, and can't change the assets not belongs to them! But during the development phrase, I found it almost impossible when *participant A* want to transfer _partial_ asset to *participant B*, fox example,```
namespace test
participant User identified by email {
o String email
}
asset Wallet identified by token {
o String token
o Double amountOfMoney
--> User owner
}
transaction TransferMoney {
o Double amount
--> Wallet myWallet
--> Wallet toWallet
}
```
and transaction,```
/**
* Processor of delegate transfer share transaction
* @param {test.TransferMoney} tx
* @transaction
*/
async function transferMoney(tx){
const participantA = getCurrentParticipant();
const walletAssetRegistry = await getAssetRegistry('test.Wallet');
tx.myWallet.amontOfMoney -= tx.amount;
tx.toWallet.amountOfMony += tx.amount;
await walletAssetRegistry.update(tx.myWallet);
// The below line code makes participant A change an asset that not belongs to him!!!
// So my question is,
// 1. Is it reasonable to make participant A can change assets than belongs to participant B?
// 2. Does it cause security problems?
// 3. How to develop a solution to meet my requirements?
await walletAssetRegistry.update(tx.toWallet);
}
```
I think it is security issue when participant A can change the asset of participant B. If I write ACLs to make participant A can't update the asset of participant B, then the upon transaction processor will *not* work due to less of privileges. I am trying to search a solution to support both business and secure requirements. Does anybody has good ideas?
I am trying to develop a business network, and in my business network, participants can change the assets that *only* belongs to them, and can't change the assets not belongs to them! But during the development phrase, I found it almost impossible when *participant A* want to transfer _partial_ asset to *participant B*, fox example,```
namespace test
participant User identified by email {
o String email
}
asset Wallet identified by token {
o String token
o Double amountOfMoney
--> User owner
}
transaction TransferMoney {
o Double amount
--> Wallet myWallet
--> Wallet toWallet
}
```
and transaction,```
/**
* Processor of transfer money transaction
* @param {test.TransferMoney} tx
* @transaction
*/
async function transferMoney(tx){
const participantA = getCurrentParticipant();
const walletAssetRegistry = await getAssetRegistry('test.Wallet');
tx.myWallet.amontOfMoney -= tx.amount;
tx.toWallet.amountOfMony += tx.amount;
await walletAssetRegistry.update(tx.myWallet);
// The below line code makes participant A change an asset that not belongs to him!!!
// So my question is,
// 1. Is it reasonable to make participant A can change assets than belongs to participant B?
// 2. Does it cause security problems?
// 3. How to develop a solution to meet my requirements?
await walletAssetRegistry.update(tx.toWallet);
}
```
I think it is security issue when participant A can change the asset of participant B. If I write ACLs to make participant A can't update the asset of participant B, then the upon transaction processor will *not* work due to less of privileges. I am trying to search a solution to support both business and secure requirements. Does anybody has good ideas?
[ ](https://chat.hyperledger.org/channel/composer?msg=rjM5NJ6M5cjiGFhXL) @ApurvTandon - you first run the `composer network install` command once for each org (if the org has more than one peer Fabric takes care of replicating between peers). When you run the `composer network upgrade` command, all the peers in all the orgs start a new chaincode container with the new version of the Network. Any REST server needs to be restarted to 'discover' the new version of the Network.
@mengluo668 - perhaps the model you have is not sophisticated enough for the security requirement. And just to confirm, we don't have property level ACLs at the moment.
You could use a trusted 3rd party, so Participant A creates a "request" and gives up the money, and the 3rd party picks up the money and gives it to Participant B - like a clearing house or Escrow system. This partial model might help your thinking:
```
namespace test
participant User identified by email {
o String email
}
asset CashSum identified by cashID {
o String cashID
o Double value
o User owner
}
asset Wallet identified by token {
o String token
--> CashSum[] myCash
--> User owner
}
transaction TransferMoney {
o Double amount
--> Wallet myWallet // to remove the an element from my Array
--> CashSum myPayment
o User newOwner // to write into the CashSum
}
```
Hello Guys,
I am getting this error:
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode escrow has been successfully instantiated and try again: could not find chaincode with name 'escrow'
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode escrow has been successfully instantiated and try again: could not find chaincode with name 'escrow'
Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode escrow has been successfully instantiated and try again: could not find chaincode with name 'escrow'
at _checkRuntimeVersions.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:787:34)
Early it was working, I just upgraded package to 0.0.5 and restarted fabric-tool and then I got this error
@d8bhatta - did you run the startFabric.sh script? - please see this answer: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data/48075379#48075379
yes..I did. @rthatcher
Does anyone knows when we can expect a production ready version of Hyperledger Composer?
Hi all, ```
``` As an administrator using the back office, when you create a participant, you have to create associated identity and connection card to enable the participant connection to the blockchain.
I encounter a problem with the POST request to create the identity. My code is the following one (javascript) :
const identity = {
participant: 'org.acme.sample.Company#'+companyId,
userID: companyId,
options: {}
};
$.ajax({
url: "http://localhost:3000/api/system/identities/issue",
type: "POST",
dataType: "application/octet-stream",
data: identity,
success: function (card) {
console.log(card);
},
error: function (xhr, status) {
// code run if request fails; raw request and status
console.log("Sorry, there was a problem!");
},
complete: function (xhr, status) { // code to run regardless of success or failure\u000B
console.log("The request is complete!");
}
});
When I execute it, the identity is correctly added to the blockchain, but I'm unable to download the corresponding card contained in the response body of the request. The code doesn't pass through "success" but "error". I believe it's a response type problem from my side. I don't understand how to download the card
Has joined the channel.
@rthatcher I used docker-compose stop to stop fabric container so that I can restart whole app, but it doesn't happen. I ran the command and see rest api, it was still browsing
[ ](https://chat.hyperledger.org/channel/composer?msg=rG4cYuAQA22aPq2m7) @d8bhatta - did you switch to the right folder before running the docker-compose stop ?
@rthatcher Yes, i switched to /home/apiuser/fabric-tools/fabric-scripts/hlfv1/composer
@CarrereArnaud - are you distinguishing between the datatype you are putting in the request, and the datatype you expect in the response? - in the example curl command I see this "--header 'Content-Type: application/json' --header 'Accept: application/octet-stream' " - I wouls recommend testing with Postman in Chrome or Poster which quickly let you see and set all the headers and and parameters
[ ](https://chat.hyperledger.org/channel/composer?msg=fwfb89iG2dArmDBXy) @d8bhatta If you are using composr v0.19 you want *hlfv11* in the folder name not v1
@rthatcher if participant create a new CashSum and specify the owner as himself, then the security issue still exist. I am thinking, if we can control that asset only can be create by a customer transaction processor, and can’t be create by system transactions processor, it will be much more better.
@rthatcher ok..I switched to h1fv11 and run teh command , still nothing happened
$ sudo docker-compose stop
WARNING: The ARCH variable is not set. Defaulting to a blank string.
Stopping peer0.org1.example.com ... done
Stopping couchdb ... done
Stopping ca.org1.example.com ... done
Stopping orderer.example.com ... done
[apiuser@test composer]$ pwd
/home/apiuser/fabric-tools/fabric-scripts/hlfv11/composer
I want to retrieve my assets using getAssetRegistry , but unable to get the asset. , please give me some examples that access to existing assets using getAssetsRegistry
Hello,
I have created a new business network card (PeerAdmin@hlfv1) and create a new bna using following command:
composer archive create -t dir -n .
And then deployed using following command:
composer network install --card PeerAdmin@hlfv1 --archiveFile
Plz help me, how to fix this issue?
Your question isn't clear
@rthatcher Oh thanks for clarifying that. But even when I run a test after submitting a transaction, I still get the same result. Is there something specific I need to do?
@rthatcher Oh thanks for clarifying that. But even when I run a test after submitting a transaction, I still get the same result. Is there something specific I need to do?
I updated the gist with a snippet of the test I was running, https://gist.github.com/tdespenza/956ede2aa863519bbff730e1991df377
Hi Anil,
Please go through a snippet
cardStore : require('composer-common').FileSystemCardStore,
BusinessNetworkConnection : require('composer-client').BusinessNetworkConnection,
cardName : "admin@1",
connection: {},
connect : function(callback) {
const cardStore = new this.cardStore();
this.connection = new this.BusinessNetworkConnection({ cardStore: cardStore });
var cardType = { type: 'composer-wallet-filesystem' }
this.connection = new this.BusinessNetworkConnection(cardType);
// Invoke connect
return this.connection.connect(this.cardName).then(function(){
callback();
}).catch((error)=>{
callback(error);
});
},
function getAssertValue(assetId) {
this.connect();
return this.connection.getAssetRegistry('yourOrgPackage'+'.'+'yourAsset')
}
Hi @AnilKharabe
Please go through a snippet
cardStore : require('composer-common').FileSystemCardStore,
BusinessNetworkConnection : require('composer-client').BusinessNetworkConnection,
cardName : "admin@1",
connection: {},
connect : function(callback) {
const cardStore = new this.cardStore();
this.connection = new this.BusinessNetworkConnection({ cardStore: cardStore });
var cardType = { type: 'composer-wallet-filesystem' }
this.connection = new this.BusinessNetworkConnection(cardType);
// Invoke connect
return this.connection.connect(this.cardName).then(function(){
callback();
}).catch((error)=>{
callback(error);
});
},
function getAssertValue(assetId) {
this.connect();
return this.connection.getAssetRegistry('yourOrgPackage'+'.'+'yourAsset')
}
@mahoney1 So, it is not possible to, in a transaction processor function, to create and submit another transaction? (since transactionRegistry is not accesible runtime)
[ ](https://chat.hyperledger.org/channel/composer?msg=5mrS2sdWMnnhyCutF) @d8bhatta - after you have done the 'stop' - try docker ps to see if the containers are running
@nitishbhardwaj19 I want code to run in composer-playground
[ ](https://chat.hyperledger.org/channel/composer?msg=yhFNDrmWwECa2ANXt) @AnilKharabe
[ ](https://chat.hyperledger.org/channel/composer?msg=yhFNDrmWwECa2ANXt) @AnilKharabe It's simple, use this
function getAssetById(id) {
return getAssetRegistry('yourOrgPackage.yourAsset').then(function(registry){
return registry.get(id);
});
}
Hello,
I'm trying to install an archive on the network with
```
docker run \
--rm \
--network net_byfn \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:{{COMPOSER-VERSION}} \
network install -c PeerAdmin@byfn-network-org1 -a vehicle-manufacture-network.bna
```
But i run into this error
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network failed to install on 1 or more peers: Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
```
It works without running the command into a docker container but not this way. It seems that the peer0.org1.example cannot communicate with the rest of the network because it is the only one displaying logs of this command. I replace every `localhost` in the connection profile by the name of the container but it's not fixing this issue. Can someone help ?
Hello,
I'm trying to install an archive on the network with
```
docker run \
--rm \
--network net_byfn \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:{{COMPOSER-VERSION}} \
network install -c PeerAdmin@byfn-network-org1 -a vehicle-manufacture-network.bna
```
But i run into this error
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network failed to install on 1 or more peers: Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
```
It works without running the command into a docker container but not this way. It seems that the peer0.org1.example cannot communicate with the rest of the network because it is the only one displaying logs of this command. I replaced every `localhost` in the connection profile by the name of the container but it's not fixing this issue. Can someone help ?
Hello,
I'm trying to install an archive on the network with
```docker run \
--rm \
--network net_byfn \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:{{COMPOSER-VERSION}} \
network install -c PeerAdmin@byfn-network-org1 -a vehicle-manufacture-network.bna
```
But i run into this error
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network failed to install on 1 or more peers: Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
```
It works without running the command into a docker container but not this way. It seems that the peer0.org1.example cannot communicate with the rest of the network because it is the only one displaying logs of this command. I replaced every `localhost` in the connection profile by the name of the container but it's not fixing this issue. Can someone help ?
Hello,
I'm trying to install an archive on the network with
```docker run \
--rm \
--network net_byfn \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:{{COMPOSER-VERSION}} \
network install -c PeerAdmin@byfn-network-org1 -a vehicle-manufacture-network.bna
```
But i run into this error
```✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network failed to install on 1 or more peers: Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
```
It works without running the command into a docker container but not this way. It seems that the peer0.org1.example cannot communicate with the rest of the network because it is the only one displaying logs of this command. I replaced every `localhost` in the connection profile by the name of the container but it's not fixing this issue. Can someone help ?
Hello,
I'm trying to install an archive on the network with
```docker run \
--rm \
--network net_byfn \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:latest \
network install -c PeerAdmin@byfn-network-org1 -a vehicle-manufacture-network.bna
```
But i run into this error
```✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network failed to install on 1 or more peers: Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
```
It works without running the command into a docker container but not this way. It seems that the peer0.org1.example cannot communicate with the rest of the network because it is the only one displaying logs of this command. I replaced every `localhost` in the connection profile by the name of the container but it's not fixing this issue. Can someone help ?
[ ](https://chat.hyperledger.org/channel/composer?msg=4Y3hqbtYS5ZCMTo7j) @silentinfotech - are you using Composer Playground?
On the Playground UI, if you have a Development Fabric installed there are 2 connections - *Connection: hlfv1* and *Connection: Web Browser*. The Web Browser uses the Browser localStorage, and the hlfv1 uses your real Fabric. So any network you install/start with the CLI will be under the hlfv1 Connection. Perhaps you should stop and restart Playground after install/starting a Network.
While installing the network 2018-05-18 08-49-51.png
Could someone help me out on this. Trying to deploy multi orgs on single VM.
facing error like this Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: Collection with ID '$sysdata' does not exist)
[ ](https://chat.hyperledger.org/channel/composer?msg=rAqeLtwjia7yAJy5a) @GrondinLaurent - I don't know quite what is the problem you have, but you could try this to do some testing ...
Create a new temporary container, but keep it 'alive' whilst you test within it
`docker run -it --network composer_default -v $(pwd)/.vld-card-store:/home/composer/.composer --entrypoint "/bin/sh" hyperledger/composer-cli:latest`
Now in the container experiment with `wget` to see if you can connect to your fabric containers - try a couple of other sites first so that you can see what success and failure look like:
```
```
[ ](https://chat.hyperledger.org/channel/composer?msg=rAqeLtwjia7yAJy5a) @GrondinLaurent - I don't know quite what is the problem you have, but you could try this to do some testing ...
Create a new temporary container, but keep it 'alive' whilst you test within it
`docker run -it --network composer_default -v $(pwd)/.vld-card-store:/home/composer/.composer --entrypoint "/bin/sh" hyperledger/composer-cli:latest`
Now in the container experiment with `wget` to see if you can connect to your fabric containers - try a couple of other sites first so that you can see what success and failure look like:
```
~ $ wget bbc.co.uk > a.a
Connecting to bbc.co.uk (151.101.192.81:80)
Connecting to www.bbc.co.uk (212.58.244.27:80)
Connecting to www.bbc.co.uk (212.58.244.26:443)
wget: can't execute 'ssl_helper': No such file or directory
wget: error getting response: Connection reset by peer
~ $ wget bad.not.there.xx > a.a
wget: bad address 'bad.not.there.xx'
~ $ wget peer0.org1.example.com:7051 > a.a
Connecting to peer0.org1.example.com:7051 (172.18.0.5:7051)
wget: error getting response: Connection reset by peer
~ $ wget peer0.org1.example.com:7052 > a.a
Connecting to peer0.org1.example.com:7052 (172.18.0.5:7052)
wget: error getting response: Connection reset by peer
~ $ wget peer0.org1.example.com
Connecting to peer0.org1.example.com (172.18.0.5:80)
wget: can't connect to remote host (172.18.0.5): Connection refused
```
note that connection reset by peer looks like an error for wget, but for us just testing connectivity - it is actually success because we provoked a response on that host/peer
[ ](https://chat.hyperledger.org/channel/composer?msg=rAqeLtwjia7yAJy5a) @GrondinLaurent - I don't know quite what is the problem you have, the error is showing a failure of the cli container to 'find' the fabric on the addresses you have supplied.
You could try this to do some testing ...
Create a new temporary container, but keep it 'alive' whilst you test within it
`docker run -it --network composer_default -v $(pwd)/.vld-card-store:/home/composer/.composer --entrypoint "/bin/sh" hyperledger/composer-cli:latest`
Now in the container experiment with `wget` to see if you can connect to your fabric containers - try a couple of other sites first so that you can see what success and failure look like:
```
~ $ wget bbc.co.uk > a.a
Connecting to bbc.co.uk (151.101.192.81:80)
Connecting to www.bbc.co.uk (212.58.244.27:80)
Connecting to www.bbc.co.uk (212.58.244.26:443)
wget: can't execute 'ssl_helper': No such file or directory
wget: error getting response: Connection reset by peer
~ $ wget bad.not.there.xx > a.a
wget: bad address 'bad.not.there.xx'
~ $ wget peer0.org1.example.com:7051 > a.a
Connecting to peer0.org1.example.com:7051 (172.18.0.5:7051)
wget: error getting response: Connection reset by peer
~ $ wget peer0.org1.example.com:7052 > a.a
Connecting to peer0.org1.example.com:7052 (172.18.0.5:7052)
wget: error getting response: Connection reset by peer
~ $ wget peer0.org1.example.com
Connecting to peer0.org1.example.com (172.18.0.5:80)
wget: can't connect to remote host (172.18.0.5): Connection refused
```
Note that connection reset by peer looks like an error for wget, but for us just testing connectivity - it is actually success because we provoked a response on that host/peer
You could also use `docker inspect` to check what network bridges your containers are using
help me, please
When I try to **start** business network on Fabric, I get the error:
```
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: timeout expired while starting chaincode net_inno:0.0.1(networkid:dev,peerid:peer0.org1.innodata.ru,tx:b946385b19ed4f17e7b787c9d1cf76fe53bb17725d8aa95f399ff6b3451fd9e8)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: timeout expired while starting chaincode net_inno:0.0.1(networkid:dev,peerid:peer1.org1.innodata.ru,tx:b946385b19ed4f17e7b787c9d1cf76fe53bb17725d8aa95f399ff6b3451fd9e8)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (net_inno:0.0.1))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (net_inno:0.0.1))
```
Most likely, this is because of wrong setting up a Fabric. Can anybody tell me what I did wrong?
Logs of peer0 of org1:
https://imgur.com/a/DAI8gl6
https://imgur.com/a/dzRB220
Here all the sources: https://bitbucket.org/userVI/workchain/src/master/
I can provide access to the server with Fabric, if you are willing to help.
@rthatcher I have this
```~ $ wget bbc.co.uk > a.a
Connecting to bbc.co.uk (151.101.192.81:80)
wget: error getting response: Address not available
~ $ wget peer0.org1.example.com:7051 > a.a
Connecting to peer0.org1.example.com:7051 (172.18.0.9:7051)
wget: error getting response: Resource temporarily unavailable
```
I'm using tls by the way maybe it has to do with this
@GrondinLaurent - from the host machine try `wget localhost:7051 > a.a` - do you get the same result ? Try the other peers too
@rthatcher
@rthatcher
```
~ $ wget peer1.org1.example.com:8051 > a.a
Connecting to peer1.org1.example.com:8051 (172.18.0.10:8051)
wget: can't connect to remote host (172.18.0.10): Connection refused
~ $ wget peer0.org2.example.com:9051 > a.a
Connecting to peer0.org2.example.com:9051 (172.18.0.11:9051)
wget: can't connect to remote host (172.18.0.11): Connection refused
```
@rthatcher
```
~ $ wget peer1.org1.example.com:8051 > a.a
Connecting to peer1.org1.example.com:8051 (172.18.0.10:8051)
wget: can't connect to remote host (172.18.0.10): Connection refused
~ $ wget peer0.org2.example.com:9051 > a.a
Connecting to peer0.org2.example.com:9051 (172.18.0.11:9051)
wget: can't connect to remote host (172.18.0.11): Connection refused
~ $ wget localhost:7051 > a.a
Connecting to localhost:7051 (127.0.0.1:7051)
wget: can't connect to remote host (127.0.0.1): Connection refused
```
@rthatcher
```~ $ wget peer1.org1.example.com:7051 > a.a
Connecting to peer1.org1.example.com:7051 (172.18.0.10:7051)
wget: error getting response: Resource temporarily unavailable
~ $ wget peer1.org1.example.com:8051 > a.a
Connecting to peer1.org1.example.com:8051 (172.18.0.10:8051)
wget: can't connect to remote host (172.18.0.10): Connection refused
~ $ wget peer0.org2.example.com:9051 > a.a
Connecting to peer0.org2.example.com:9051 (172.18.0.11:9051)
wget: can't connect to remote host (172.18.0.11): Connection refused
~ $ wget localhost:7051 > a.a
Connecting to localhost:7051 (127.0.0.1:7051)
wget: can't connect to remote host (127.0.0.1): Connection refused
```
@GrondinLaurent try the localhost *from the host machine* not the container :-)
@rthatcher my bad
```--2018-05-18 15:32:26-- http://localhost:7051/
Resolving localhost (localhost)... 127.0.0.1
Connecting to localhost (localhost)|127.0.0.1|:7051... connected.
HTTP request sent, awaiting response... 200 No headers, assuming HTTP/0.9
Length: unspecified
Saving to: 'index.html.1'
index.html.1 [ <=> ] 7 --.-KB/s in 0s
2018-05-18 15:32:26 (297 KB/s) - 'index.html.1' saved [7]
```
[ ](https://chat.hyperledger.org/channel/composer?msg=A9sSZFH6pEXuDdsxc) @Vanitha - are you working with the multi-org tutorial or a Custom Fabric?
@rthatcher Multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=rW3niEFfMAauZZRtt) @Vanitha - I wonder if you have the certificates pasted into the connection.json correctly? The correct certificates need to be pasted into the file in the right places, but they also need to be in one long string with no line breaks. (the \n characters indicate a line break but there should be no actual line break.) The certificate should start with -----BEGIN CERTIFICATE-----\n and have the matching end certificate at the end.
@rthatcher I have pasted them correctly and it's in a single line
I have rechecked
ls
[ ](https://chat.hyperledger.org/channel/composer?msg=yvhsQ7nP7eci2mWzh) @chandrasekarangengadharan - is there any other error before or after that ?
@rthatcher I see what the problem is. Is it possible to create queries by searching on the nested relationship attributes? See the `queries.qry` https://gist.github.com/tdespenza/956ede2aa863519bbff730e1991df377
[ ](https://chat.hyperledger.org/channel/composer?msg=9EaBGxgnEbFjnHyuy) @Vanitha - what version of co.mposer do you have? and when did you install it? I wonder if you have a version with a Bad version of grpc
[ ](https://chat.hyperledger.org/channel/composer?msg=eCdQzaem3PQXbJjsB) @tdespenza - there are some hints and tips on queries in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#queries
I updated my question:
https://stackoverflow.com/questions/50412765/hyperledger-composer-start-error-error-error-trying-to-start-business-network
Gentlemen, I have been trying to start the network for several weeks now. I have no one else to ask for help.
@rthatcher Version of composer v0.19.5
@rthatcher Thanks.
@rthatcher From the host, i can communicate with every peers
@rthatcher From the host, i can communicate with `wget`with every peers
[ ](https://chat.hyperledger.org/channel/composer?msg=6zJvKfDoDzC6h5HiY) @GrondinLaurent - so you need to be able to get the same wget results in the test container - looks like you have some Docker networking to fix.
@rthatcher Well x) Since i have discover docker trough fabric, it won't be that easy ! Thanks anyway :)
[ ](https://chat.hyperledger.org/channel/composer?msg=XtSRLyQ5R4f35fndW) @Vanitha - ok v0.19.5 should be fine. There is a little more information in this Stack Overflow - https://stackoverflow.com/questions/49667690/ssl-transport-security-cc599-could-not-load-any-root-certificate
can someone please help here? https://stackoverflow.com/questions/50236729/hyperledger-composer-couchdb-not-replicating-on-all-peers
Has joined the channel.
Has left the channel.
@rthatcher do u really think the problem is with the cmd what we are giving to establish connection. if we try with perl command will it get resolve?
[ ](https://chat.hyperledger.org/channel/composer?msg=XoxqWcKT32weKoDH4) @Vanitha - there is clearly a mismatch of certificates somewhere - I don't think there is a problem with that awk command in the script, but there are other things mentioned in that Q/A to check.
Is there a way for me to intercept the validation cycle in the REST server and tailor the messages? We are submitting a list of items and if one fails validation we cannot see which one it is.
We just get an error 500 with a long text message...
Hey Guys, someone know how REST SERVER do QUERY?
at the `composer-cli` I just see participant.add
[ ](https://chat.hyperledger.org/channel/composer?msg=zj5RKfc764t8HwxSY) @mataide - have you seen the Queries tutorial? https://hyperledger.github.io/composer/latest/tutorials/queries
[ ](https://chat.hyperledger.org/channel/composer?msg=SFy77XsHYMHa28CGv) @rthatcher Yes, it doesnt help me, I am building a framework, so user tutorials dont help, but thanks anyway, I got it working
Hello, is anyone doing the IBM Global Citizen Challenge? I am currently stuck on installing the prereqs to the development environment and was wondering if anyone else was having that issue. I am following this tutorial: https://ibm-blockchain.github.io/develop/installing/installing-prereqs
Has joined the channel.
Hi, is there any admin/ teach team from IBM here? Had one question.
Hello all, I just heard from a fabric developer that the original intention of composer is to build a demonstration prototype quickly. And he said he did not recommend deploying composer applications into production! So, composer designer, is it really?
@mengluo668 That is not the case, as of the 0.19 release we believe hyperledger composer is ready for production.
@davidkel good news, thank you very much. Anyway, I have to deploy the composer application to the production environment, because of I don't have enough time to develop pure go chaincodes....
Has joined the channel.
Hello everyone! Is there any documentation about how to manage money transfer with Hyperledger Composer ?
Shoud .bna and .card files be ignored by Github ?
Hi All , I am trying to build a network , using http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html# . All the pre requisites are installed and when I run command
./byfn.sh -m generate
It successfully generates peers but when I run following command:
./byfn.sh -m up
Error: failed to create deliver client: orderer client failed to connect to orderer.example.com:7050: failed to create new connection: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "tlsca.example.com")
Usage:
peer channel create [flags]
Flags:
-c, --channelID string In case of a newChain command, the channel ID to create.
-f, --file string Configuration transaction file generated by a tool such as configtxgen for submitting to orderer
-t, --timeout int Channel creation timeout (default 5)
Hi All , I am trying to build a network , using http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html# . All the pre requisites are installed and when I run the command
./byfn.sh -m generate
It successfully generates peers but when I run following command:
./byfn.sh -m up
Error: failed to create deliver client: orderer client failed to connect to orderer.example.com:7050: failed to create new connection: context deadline exceeded
Usage:
peer channel create [flags]
Flags:
-c, --channelID string In case of a newChain command, the channel ID to create.
-f, --file string Configuration transaction file generated by a tool such as configtxgen for submitting to orderer
-t, --timeout int Channel creation timeout (default 5)
Global Flags:
--cafile string Path to file containing PEM-encoded trusted certificate(s) for the ordering endpoint
--certfile string Path to file containing PEM-encoded X509 public key to use for mutual TLS communication with the orderer endpoint
--clientauth Use mutual TLS when communicating with the orderer endpoint
--keyfile string Path to file containing PEM-encoded private key to use for mutual TLS communication with the orderer endpoint
--logging-level string Default logging level and overrides, see core.yaml for full syntax
-o, --orderer string Ordering service endpoint
--ordererTLSHostnameOverride string The hostname override to use when validating the TLS connection to the orderer.
--tls Use TLS when communicating with the orderer endpoint
-v, --version Display current version of fabric peer server
!!!!!!!!!!!!!!! Channel creation failed !!!!!!!!!!!!!!!!
========= ERROR !!! FAILED to execute End-2-End Scenario ===========
ERROR !!!! Test failed
[ ](https://chat.hyperledger.org/channel/composer?msg=sknEWG98gjKFPaF7H) @reshmamohiyiddin go to #fabric-questions
ok,thank you.
I'm trying to run the network following this tutorial: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
everything goes well until I start the network:
(after very long time I see this)
```
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
```
Log of peer0:
https://imgur.com/a/IoovrMK
https://imgur.com/a/EZ6Pvk1
I'm trying to run the network following this tutorial: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
everything goes well until I start the network:
(after very long time I see this)
```
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
```
Log of peer0:
https://imgur.com/a/IoovrMK
https://imgur.com/a/EZ6Pvk1
https://imgur.com/a/pjqOrF4
I guess this may be due to the incorrect configuration of the connection profile, because the tutorial shows only excerpts from connection.json files. Where I can find correct examples of connection profiles for two organizations?
Here are my connection profiles:
https://gist.github.com/VadimInshakov/c9086c962b66ca7911f6ed6f5a85834b
https://gist.github.com/VadimInshakov/1f59dd43ecf921f33ee9d12312b81eca
Has joined the channel.
@VadimInshakov You may want to take a look at https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
It may be taking too long to build the chaincode images
Hello everyone! Is there any documentation about how to manage money transfer with Hyperledger Composer ? How can we include third parties like Paypal in the network ?
Has left the channel.
I realized that the problem may be due to the fact that I can not install the cnaincode on the second organization.
When I run this, all is ok:
```
composer network install --card PeerAdmin@inno1 --archiveFile inno@0.0.1.bna
```
But when I run this command:
```
composer network install --card PeerAdmin@inno2 --archiveFile inno@0.0.1.bna
```
I get error:
```
Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
Command failed
```
Here are my connection profiles:
https://gist.github.com/VadimInshakov/c9086c962b66ca7911f6ed6f5a85834b
https://gist.github.com/VadimInshakov/1f59dd43ecf921f33ee9d12312b81eca
PLEASE HELP, it's really an obscure error.
I read every line of the tutorial. And I tried many times to restart the network with different changes in the configuration files. I spent a month on this. I do not know what to do with this problem. I just need to install and start network.
@VadimInshakov to install a new bna version you should do the following commands:
````
"prepublish": "mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/proak-hyperledger-network.bna",
"publish": "composer network install --archiveFile ./dist/proak-hyperledger-network.bna --card adminCard",
"upgrade": "composer network upgrade -n proak-hyperledger-network -V 0.0.28 -c adminCard"
````
I think that you are probably using the wrong card, you should use the admin one
Has joined the channel.
Has joined the channel.
Hi everyone! I am using hyperledger composer 0.19.5. When using AdminConnection() and the connect() method, everything works like a charm. But when I use BusinessNetworkConnection() and the subsequent connect() method, I am always getting a businessNetwork connect failed TypeError: Cannot convert undefined or null to object exception. So I checked this with the composer cli as well and I get the same. composer network ping -c 'abby@kidfriendlyinc.com'
TypeError: Cannot convert undefined or null to object. So I have tried the whole day to fix this issue, research and get pointers but to no avail. Can anyone here please help?
I have checked that the ~/.composer folder having the necessary card files
businessNetworkConnection = new BusinessNetworkConnection();
return BusinessNetworkDefinition.fromArchive(archiveFile)
.then((bnd) => {
ser = bnd.getSerializer();
//
// v0.14
// return businessNetworkConnection.connect(config.composer.connectionProfile, config.composer.network, req.body.userID, req.body.secret)
//
// v0.15
console.log(method+' req.body.userID is: '+req.body.userID );
return businessNetworkConnection.connect(req.body.userID)
.then(() => { .....
return businessNetworkConnection.connect(req.body.userID) fails with : TypeError: Cannot convert undefined or null to object
Please someone help me! Thanks
I also checked that the network card is in issued state : $class: org.hyperledger.composer.system.Identity
identityId: cca8dec4f5fc2af306813343228a00928cb4cbac1883824f13e9d550a4e54510
name: abby@kidfriendlyinc.com
issuer: ac3dbcbe135ba48b29f97665bb103f8260c38d3872473e584314392797c595f3
certificate:
state: ISSUED
participant: resource:org.acme.Z2BTestNetwork.Buyer#abby@kidfriendlyinc.com
[ ](https://chat.hyperledger.org/channel/composer?msg=WkXT2MWh4XsSipCEh) @mataide my problem is in another, I can not install the network
Why I see this when try to start composer network?
```
2018-05-20 07:41:38.325 UTC [chaincode] launchAndWaitForRegister -> DEBU ac6 stopping due to error while launching: timeout expired while starting chaincode inno:0.0.1(networkid:dev,peerid:peer1.org1.innodata.ru,tx:c575fa137bd4cd2ef8c12a8861515832a30f3c6a7983e14bcff83b56d9ccb83f)
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:731
github.com/hyperledger/fabric/core/chaincode.Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/exectransaction.go:45
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:83
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:164
github.com/hyperledger/fabric/core/endorser.(*Endorser).simulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:265
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:491
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:781
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2337
```
Why I see this when try to start composer network?
```
2018-05-20 07:41:38.325 UTC [chaincode] launchAndWaitForRegister -> DEBU ac6 stopping due to error while launching: timeout expired while starting chaincode inno:0.0.1(networkid:dev,peerid:peer1.org1.innodata.ru,tx:c575fa137bd4cd2ef8c12a8861515832a30f3c6a7983e14bcff83b56d9ccb83f)
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:731
github.com/hyperledger/fabric/core/chaincode.Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/exectransaction.go:45
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:83
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:164
github.com/hyperledger/fabric/core/endorser.(*Endorser).simulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:265
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:491
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:781
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2337
```
Why I see this when try to start composer network?
```
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
```
peer log:
```
2018-05-20 07:41:38.325 UTC [chaincode] launchAndWaitForRegister -> DEBU ac6 stopping due to error while launching: timeout expired while starting chaincode inno:0.0.1(networkid:dev,peerid:peer1.org1.innodata.ru,tx:c575fa137bd4cd2ef8c12a8861515832a30f3c6a7983e14bcff83b56d9ccb83f)
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:731
github.com/hyperledger/fabric/core/chaincode.Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/exectransaction.go:45
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:83
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:164
github.com/hyperledger/fabric/core/endorser.(*Endorser).simulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:265
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:491
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:781
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2337
```
Has joined the channel.
So like in the rest api we have endpoints with id can we have those with name, or anyother thing we want.
How can I set up the composer rest server API to show the errors I throw in my transaction processor functions?
Has joined the channel.
Has joined the channel.
Also, is there any way to require a transaction to have permission from 2 people? For example, if 2 people want to sign a contract and formalize it within the blockchain, so its terms can be followed after;
Authentication Failure Error
@rthatcher When on local playground (fabric was created using all the steps described in the development environment tutorial), I always get this error when trying to isse new IDs; I also get the same error whenever I create a business network card and then try to connect (though that must be because I dont have the secret stored somewhere)
Clipboard - 21 de Maio de 2018 00:58
same happens on command line, I guess, when I try to issue a new identity for a participant
@rthatcher If I create an identity and want to import it in some machine with access to composer, but dont have that identity's card (if it was created through code with a user ID and user secret, for example), are there any other ways to do it?
@rthatcher If I create an identity and want to import it in some machine with access to composer, but dont have that identity's card (if it was created through code with a user ID and user secret, for example), are there any other ways to do it (so, can we create a new card out of those details)?
Has joined the channel.
Has joined the channel.
Hi can anyone tell me how to fetch history of a particular asset
Has joined the channel.
Has joined the channel.
@karunesh10 You can query `org.hyperledger.composer.system.HistorianRecord`, its structure is ```
asset HistorianRecord identified by transactionId {
o String transactionId
o String transactionType
--> Transaction transactionInvoked
--> Participant participantInvoking optional
--> Identity identityUsed optional
o Event[] eventsEmitted optional
o DateTime transactionTimestamp
}
``` , please refer to [hisorian](https://hyperledger.github.io/composer/latest/business-network/historian)
composer-runtime-error.png
I am facing the problem - composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName true-network
docker already working fine , and also tried stopFabric / startFabric too
Few commands got deprecated in latest version can you please check them once @AnilKharabe
@mengluo668 Thank you.But it won't give the data that has been changed
I uploaded my bna file and submit transaction with composer-client to my ibm blockchain network .
Now , I tried to submit transaction with large data more than 1mb and it doesnt work.I got that error :
----------------------------------
Error: Error trying invoke business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
at _initializeChannel.then.then.then.then.catch (/Users/martine/Documents/ron/ibm/node_modules/composer-client/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:927:34)
at
You need to check configurations in configixtx.yaml @ronbiz
@phanikumar can you pls mention the commands , I am stucked over there
@phanikumar or any link
It is not a command. The max block size will be configured in configtx.yaml file
@phanikumar thanks you,where can I find it? And what I need to change to increase the block size?????
You need to change that
Yes you need to increase blocksize
@ronbiz, on your business network timeout issue - you need to go through your IBM support links to get this resolved. Batch Size is the section in your yaml that controls the block size in that file.
@ronbiz, on your business network timeout issue - you need to go through your IBM support links to get this resolved. Batch Size is the section in your yaml that controls the block size (ie a parameter section in that file).
@karunesh10 see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md for more info (esp item 6 onwards) - we have an outstanding issue for this
@AnilKharabe suggest to check out the Developer tutorial to see how its used -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial (as mentioned `runtime install` is deprecated, mainly would be `composer network install` then `composer network start` etc.etc
@mahoney1 ,Its weird when I tried to submit data <1mb, I dont have business network timeout issue.I tried several times for several weeks to contact IBM support I never had an answer from them.:disappointed:
Hi all, Despite have the proper ACLs in place, I am getting this error : Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: AccessException: Participant....
The ACL is : rule SellerACL {
description: "Allow Seller full access to order where they are listed as seller and the order has been Submitted for Purchase"
participant(m): "org.acme.Z2BTestNetwork.Seller"
operation: READ, CREATE, UPDATE
resource(v): "org.acme.Z2BTestNetwork.Order"
condition: ((v.seller.sellerID == m.getIdentifier()) && (v.bought != ''))
action: ALLOW
}
/**
*
*/
rule netAccessSeller {
description: "Allow Sellers access to the network"
participant: "org.acme.Z2BTestNetwork.Seller"
operation: READ, CREATE, UPDATE, DELETE
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule SellerOrderFromSupplier {
description: "Enable a Seller to Submit an Order to a third party for fulfillment"
participant(m): "org.acme.Z2BTestNetwork.Seller"
operation: READ, CREATE, UPDATE
resource(v): "org.acme.Z2BTestNetwork.**"
transaction(tx): "org.acme.Z2BTestNetwork.OrderFromSupplier"
condition: (v.seller.sellerID == m.getIdentifier())
action: ALLOW
}
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: AccessException: Participant 'org.acme.Z2BTestNetwork.Seller#Erin@2ndlifesystemsinc.com' does not have 'CREATE' access to resource 'org.acme.Z2BTestNetwork.OrderFromSupplier#6522ba67dd387b7fd8d0a0a89206a532778e39975242cce1beb936c1414b1392'
So why am I see this exception despite me clearly defining those rules... Any clues will be helpful and appreciated. TIA
@pedromlcosta The scenario you paint is where the BN card exists and the cert/key is downloaded. You would export it and make it accessible from the machine you (or your user) wants to use it. The exported card is portable. Alternatively, why don't you use a cloud-based object store - see more here -> https://hyperledger.github.io/composer/latest/business-network/cloud-wallets.
@SeetharamanNarayanan the error suggests you're missing a rule - to allow those participants to use the transaction class (resource) - suggest something like this - higher up your list of rules' stanzas - see also my notes ```rule netAccessSellerTxnOrderFromSupplier {
description: "Allow Sellers run transaction - if not only Sellers, ie broader - use 'ANY' below"
/// participant: "ANY"
participant: "org.acme.Z2BTestNetwork.Seller"
operation: READ, CREATE
resource: "org.acme.Z2BTestNetwork.OrderFromSupplier"
action: ALLOW
}``` then update your business network archive with the later BN edition - as shown in Steps Three / Four [here](https://hyperledger.github.io/composer/latest/tutorials/queries)
Tried your recommendation, but getting the same exception again.
Thanks @mahoney1 for your attempt to help me.
I am pulling my hairs on this one. Looks like everything is in order, but still the permissions are biting.
Since the exception looks like this : Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: AccessException: Participant 'org.acme.Z2BTestNetwork.Seller#Erin@2ndlifesystemsinc.com' does not have 'CREATE' access to resource 'org.acme.Z2BTestNetwork.OrderFromSupplier#51f2c4d3786c22a96b2dd2bc1283adad483dd165d763fc90c3312a9b2cb995ce' and the permission looks like some thing like this : resource(v): "org.acme.Z2BTestNetwork.**" -> So this wild carding should take care of org.acme.Z2BTestNetwork.Seller#Erin@2ndlifesystemsinc.com correct?
@mahoney1 Thank you.
I created issue in github Composer repository about this problem, but is was closed and I was given a link to a document describing the meaning of error codes and typical solutions to these problems. In this document, it is recommended to set the value - CORE_CHAINCODE_STARTUPTIMEOUT=1200s. But it did not help. I get exactly the same errors. Where should I go now? Where can I get an answer?
An error occurs when I start a business network.
```
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
```
Check whether the peers are running or not @VadimInshakov
[ ](https://chat.hyperledger.org/channel/composer?msg=wHuiP3j2PWFPRZ9zt) @phanikumar yes, they running, I checked.
Are you running your entire network in single machine
If you are running everything on single machine what is your hardware configuration
@SeetharamanNarayanan the issue is a denial by ACL rules for that participant to create/execute a transaction of that class. Something else in your ruleset is preventing it evaluating that rule (that answers your other question). I suggest you create a SO, with ALL the rules, and your model file - to see what's going wrong. Your system ACLs should also be nearer the bottom of the ruleset.
[ ](https://chat.hyperledger.org/channel/composer?msg=oa5GNu2nyNM8M3W6M) @VadimInshakov - are you seeing any other on the command line before or after the extract you showed? Please look at the logs of the Docker Container for the peers to see what errors are being generated.
[ ](https://chat.hyperledger.org/channel/composer?msg=jkZrBTb2R3K2JZgrF) @rthatcher peer0 of org1 last error in log:
```
2018-05-21 09:10:52.153 UTC [endorser] callChaincode -> DEBU 76f [innochannel][455909f7] Exit
2018-05-21 09:10:52.153 UTC [endorser] simulateProposal -> ERRO 770 [innochannel][455909f7] failed to invoke chaincode name:"lscc" , error: timeout expired while starting chaincode inno:0.0.1(networkid:dev,peerid:peer0.org1.innodata.ru,tx:455909f76176fda19265d5e162c5f54696cda2e8222367a0970f359db874d5b0)
```
Here all the errors and warnings in log:
https://imgur.com/a/qi5fXCM
[ ](https://chat.hyperledger.org/channel/composer?msg=jkZrBTb2R3K2JZgrF) @rthatcher peer0 of org1 last error in log:
```
2018-05-21 09:10:52.153 UTC [endorser] callChaincode -> DEBU 76f [innochannel][455909f7] Exit
2018-05-21 09:10:52.153 UTC [endorser] simulateProposal -> ERRO 770 [innochannel][455909f7] failed to invoke chaincode name:"lscc" , error: timeout expired while starting chaincode inno:0.0.1(networkid:dev,peerid:peer0.org1.innodata.ru,tx:455909f76176fda19265d5e162c5f54696cda2e8222367a0970f359db874d5b0)
```
Here all the errors and warnings in log:
https://imgur.com/a/qi5fXCM
Hi Team,
I am trying to Run Hyperlededger COmposer in Multiple Physical Machines:
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/.
I am getting the following error on attempting for 'composer network start..'. The 'composer network install' has run successfully
I could not get any solution from https://stackoverflow.com/questions/49651938/hyperledger-error-while-starting-business-network
Please suggest......I have to demonstrate Composer running on Mutiple Physical machines
Screenshot_ComposerDeployError.png
[ ](https://chat.hyperledger.org/channel/composer?msg=QkyWzFLQCwgAhjoKQ) @VadimInshakov I had similar error when the hardware is unable to create service and respond back to request
@ronbiz suggest to see suggested answere [here](https://developer.ibm.com/answers/questions/441724/unable-to-add-new-participants-to-a-deployed-busin/ ) . A REQUEST_TIMEOUT can occur with the failure to build the Chaincode containers for all peers within the default timeout period s eg due to slow network connection(s) potentially
@ronbiz suggest to see suggested answere [here](https://developer.ibm.com/answers/questions/441724/unable-to-add-new-participants-to-a-deployed-busin/ ) . A REQUEST_TIMEOUT can occur with the failure to build the Chaincode containers for all peers within the default timeout period s eg due to slow network connection(s) potentially
@ronbiz suggest to see suggested answer [here](https://developer.ibm.com/answers/questions/441724/unable-to-add-new-participants-to-a-deployed-busin/ ) . A REQUEST_TIMEOUT can occur with the failure to build the Chaincode containers for all peers within the default timeout period s eg due to slow network connection(s) potentially
[ ](https://chat.hyperledger.org/channel/composer?msg=XiGnNJp8G2kFgvcad) @phanikumar It seems on my server everything meets the requirements.
Can we define Objects on hyperledger model?
@prmdmshra almost certainly you get the 'Unknown chaincodeType' error because you've failed to use Composer with the correct version of Fabric (1.1 GA latest) - or something else is 'legacy' in your environment - you should clean up your environment and install the correct Fabric level at a guess.
[ ](https://chat.hyperledger.org/channel/composer?msg=kKXoDiPnxCKHpSL5q) @prmdmshra - it looks like you are using Fabric 1.0 when you need to be running Fabric v1.1 (it looks like you are running Composer v0.19.?)
[ ](https://chat.hyperledger.org/channel/composer?msg=uANvxHmnFxSLJFXE5) @VadimInshakov if entire network is on single machine network might not be a factor. Can you check peer logs as well
[ ](https://chat.hyperledger.org/channel/composer?msg=uANvxHmnFxSLJFXE5) @VadimInshakov if entire business network is on single machine networking might not be a factor. Can you check peer logs as well
Has joined the channel.
@rthatcher , whiles trying to read the swagger file that is generated by the loppback, i found that there is no clear indicator to allow one to know which attribute in an object is used to identify the object when accessing it through the endpoint AIs on the REST server. When we create objects in the cto file, we mention their identifying attribute (eg: participant Hospital identified by HospName). When reading the swagger file, it is not clear as to where one would get the info that the HospName is the identifying value to be used when accessing the object through the api. WIll this feature be added to the swagger files in future releases ? or is this currently a bug with loopback
@rthatcher , whiles trying to read the swagger file that is generated by the loppback, i found that there is no clear indicator to allow one to know which attribute in an object is used to identify the object when accessing it through the endpoint APIs on the REST server. When we create objects in the cto file, we mention their identifying attribute (eg: participant Hospital identified by HospName). When reading the swagger file, it is not clear as to where one would get the info that the HospName is the identifying value to be used when accessing the object through the api. WIll this feature be added to the swagger files in future releases ? or is this currently a bug with loopback
[ ](https://chat.hyperledger.org/channel/composer?msg=s4ZnJpmBHBcdaS5BG) @mahoney1
Thanks.....Please let me check the versions and upgrade it to latest
[ ](https://chat.hyperledger.org/channel/composer?msg=Akb5Driv8SdXBrAwn) @sapnaupreti on the *Modeling* language, suggest you read this [answer](https://stackoverflow.com/questions/49622812/what-is-modeling-language-in-blockchain-where-it-is-use) - if you have a specific scenario, you can raise it on Stack Overflow or here.
When using composer, is there a way to allow the user to create the transaction on his frontend and then send it? Ideally the system should work without the user ever having to reveal his key to the central application server/ peer nodes @mahoney1
@varunagarwal Composer stores the key/certificate in a wallet accessible by the client application user, so the user can sign transactions on the business network (he has to use a Composer business network card to connect to it and which has the user's blockchain identity as you know). However if you're using an HSM (Hardware Security Module) to manage your private keys, just a certificate is required as your private keys are managed by an HSM (see more info [here](https://github.com/hyperledger/composer/wiki/HSM-Support) ).
Thing is my client has said on Ethereum, a user can use Mist wallet to submit a trasnaction to a smart contract without ever having to expose their key to the internet, The tx can be made and signed offline, then sent via Mist. Is there any such possibility here? (will read on HSM)
A bit of context, we are running a PoC with some major names in India for agriculture traceability and this is the next step in our plan
@mahoney1 Can I message you separately if its possible to setup a formal arrangement between us and IBM for some tech support/ architecture workshops?
In composer queries, is there a way to, through the API, give an array of IDs variable in size, and the query retrieves all objects (of a certain class) that match those IDs?
You can construct a SQL based query and pass in parameters
I'm finding it hard to do some queries due to there not being a JOIN or WHERE ... IN ... . In my case I have a shipment which has a relationship to an array of commodities. The shipment has an ID, all the comodities have their own IDs as well. I want to retrieve all commodities in a shipment, by giving the shipment ID, basically
There is a WHERE
Yes, but in my model, a shipment has the commodity relationship, but the opposite isn't true
Clipboard - May 21, 2018 2:27 PM
Clipboard - May 21, 2018 2:27 PM
Doesn't matter, you can define two queries then, one that is based on shipment, and the other on commodity
Yes, I was thinking about that @varunagarwal First to query the array of IDs, then use that array to query all the assets at once
[ ](https://chat.hyperledger.org/channel/composer?msg=jzwifCBgQqJQuAgxb) how can i solve this error_?
I think it can be done in one query itself, no need to split
I'm trying to understand how to see the status of a transaction from Composer (ideally, from a query), with respect to the underlying transaction workflow http://hyperledger-fabric.readthedocs.io/en/release-1.1/txflow.html
I have a few questions:
- when the transaction processor function terminates correctly, where are we in the workflow?
- when I invoke a transaction through the REST server and I get a response, what is the (minimum) status of the transaction? Has consensus been achieved at this point?
- if when I get the answer the transaction is not already committed to the ledger, how can I see when that has happened?
[ ](https://chat.hyperledger.org/channel/composer?msg=ej48zjDaudruY7mbr) @varunagarwal Hmm, by putting a query inside a query (a select inside the where?)?
No, just two WHERE
[ ](https://chat.hyperledger.org/channel/composer?msg=tdCFyj3uhvseKA9ng) @pedromlcosta @varunagarwal is correct, you can use CONTAINS and `buildQuery` to create your query in your code. You can post you Q on Stack overflow with the example of what you're trying to achieve if you need help see also https://hyperledger.github.io/composer/latest/reference/query-language.html and the wiki https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#issue for CONTAINS / WHERE examples (just scroll down)
[ ](https://chat.hyperledger.org/channel/composer?msg=tdCFyj3uhvseKA9ng) @pedromlcosta @varunagarwal is correct, you can use CONTAINS and `buildQuery` to create your query in your code. You can post your Q on Stack overflow (model/query) with the example of what you're trying to achieve if you need help see also https://hyperledger.github.io/composer/latest/reference/query-language.html and the wiki https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#issue for CONTAINS / WHERE examples (just scroll down)
Can you explain your thing a bit better
[ ](https://chat.hyperledger.org/channel/composer?msg=A5HaS3H29gaBZswyz) @abityildiz I think you need to upgrade your version number in package.json and repackage it. Then make sure to install the new version
const statement = 'SELECT org.asset.one WHERE (arrayId CONTAINS (org.asset.two.id ==_$value))'; is this what you are looking for?
@pedromlcosta
I think probably not ^^' But let me paste the two assets so you can see better
Clipboard - 21 de Maio de 2018 12:41
@varunagarwal I have a Commodity, which has no relationships; then the shipment has an array of commodities; I want to give the shipmentID and receive all info of all assets
ahhh thats exactly the situation i am in
wait il find and give you the code
@acbellini - 1) step 6 committed (if successful) you have a transaction ID to query in the world state and 2) successful status = 200 means it was created/submitted successfully . yes would have to be... otherwise it would have been rejected (varying reasons possible). 3) you can examine successful or failed trxns on the blockchain and of course you have the log files to examine too.
Thanks @mahoney1 !
So you have a `ShipmentAsset` and a `CommodityAsset` , the shipment has an array called `commodityArray` that stores the identifiers of commodities. You want to pass what exactly?
the shipmentID
how is the commodity array? Is it a relationship array or a string array?
relationship
[ ](https://chat.hyperledger.org/channel/composer?msg=moB6vX7K3XAA8pi5N) @acbellini i have tired.but get the same error.I installed certifications correctly.
@pedromlcosta :D When you query an asset, all relationships within any variable also get queried and returned ! You dont need to make a query for this, fabric does it by default
But doesnt it only return it as an identifier of the relationship?
no it returns the whole object
Great :)
so you basically get the `ShipmentAsset`, then you just make a `for` loop over the relationship array, make a new array in your `.js` code and store each `Commodity` in that array. Don't access the relationship array directly
ah, yes, programatically in JS, but I also wanted to make the query in the queries.qry file, so that I can invoke it in frontend
Now if you want to get creative and use only a String array, you will need to create two queries and use `Promisify.all[`] which I don't recommend
Same concept, in the front end, just make sure you extract that particular array
But instead of this, why not perform the query in the API that the front end calls itself. Might be easier
I thought this was the proper way to create an API query xD
Front end will receive info only by calling an API, you can simple parse the data using `serializer()` and push it
no, better you handle it in the back-end. WIll make your frontend lighter as well
Isn't composer the back-end here, though? THe composer-rest-server, I mean
Because the `serializer` function wont be available in your front end
Yes it is, see the issue here is, the array that has the commodities will be of a particular kind. You need to use `https://hyperledger.github.io/composer/latest/api/common-serializer#tojson` before being able to access it on the frontend. This is what I have done on my server
But i am not using `composer-rest-server`, if you are using it, just run the test directly on the browser
So, you're writing your own backend? How do you interlace it with composer?
I wrote that as well
and used this https://hyperledger.github.io/composer/latest/reference/reference-index
They got 3 libraries that let you code without using rest server. Another example is https://github.com/IBM/Decentralized-Energy-Composer . For a `.qry` file you can do this
```
query selectCommodity{
description: "Select all commodities owned by a shipment"
statement:
SELECT org.ShipmentAsset WHERE (shipmentId == _$value)
}
```
Has joined the channel.
I was trying multi user in version 1.1
I was trying multi user in version 1.1
While I was trying to ping the system with admin card I got this error:
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '0fd5764a1ba78ee2e74147b692dd29e54812cfe5220307b837c10b1592205a08', has not been registered",
"stack": "Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '0fd5764a1ba78ee2e74147b692dd29e54812cfe5220307b837c10b1592205a08', has not been registered\n at _checkRuntimeVersions.then.catch (/home/tanay/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:790:34)\n at
[ ](https://chat.hyperledger.org/channel/composer?msg=zD3mmuQr8G4Fe4E2c) @ApurvTandon - I think this is covered in the description ...
In my simple test model:
```asset Invoice identified by invoiceId {
o String invoiceId
```
and in the Swagger doc under _Definitions _and _Invoice _I see:
```"$class":{
"default":"org.acme.empty.Invoice",
"description":"The class identifier for this type",
"type":"string"
},
"invoiceId":{
"description":"The instance identifier for this type",
"type":"string"
```
I see the description "The Instance identifier for this type" for all my Assets and Participants.
@VadimInshakov - I had a look at your log and I didn't see any Composer error I recognised. I did notice in one of your previous posts that you are using 3 Orderers, and also noticed a warning about orderers in the log - have you tried testing the same Fabric with a single Solo Orderer? It might help to narrow down the problem. Also in a previous post I saw this link to your connection.json https://gist.github.com/VadimInshakov/c9086c962b66ca7911f6ed6f5a85834b and I noticed that at line 163 there seems to be an extra channel definition.
[ ](https://chat.hyperledger.org/channel/composer?msg=aZ5mDeit7wqjYsGWq) @rthatcher i c, so is it guaranteed that the invoiceId which is the instance identifier of the class, will always have the description stating ""The instance identifier for this type"? or can it vary according to user implementation?
Hi, when i execute *composer network upgrade* , it produces following error.```niaml@ubuntu:~$ composer network upgrade -c admin@testbusiness -n testbusiness -V 0.0.2-deploy.3
Upgrading business network testbusiness to version 0.0.2-deploy.3
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: instantiation policy violation: signature set did not satisfy policy)
Command failed
```
I am using composer v0.19.5 with Fabric v1.1
[ ](https://chat.hyperledger.org/channel/composer?msg=cxhC3wLmqxWwJpBKu) @saeedi - this looks like you are trying to upgrade with a _Network Admin_ card, but you need to use a card with channel admin rights - in Development Networks this will be the _PeerAdmin _card.
[ ](https://chat.hyperledger.org/channel/composer?msg=cxhC3wLmqxWwJpBKu) @saeedi - this looks like you are trying to upgrade with a _Network Admin_ card, but you need to use a card with channel admin rights - in Development Networks this will be the _PeerAdmin _card.
(In older versions of composer the Network Admin was used to upgrade networks.)
ameyaraje
Has joined the channel.
Clipboard - May 21, 2018 8:47 PM
Hello, I've built my fabric network with channel 'mychannel' and i tried to install the PeerAdmin with the archiveFile it produces this error, can anyone help me with this?
i follow this tutorial by the way: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@abityildiz may be ur behind proxy.Try from home network
Has joined the channel.
@tanaybhartia are you using a blockchain network on different machines? Did you install a later Composer version into an existing env? Issue seems to be that your admin cert is not recognised by the CA server on that VM (it doesn't know that cert) Not sure what tutorial you're following.
[ ](https://chat.hyperledger.org/channel/composer?msg=EwjrMMWs4hLhkzrKQ) @nntoan - are you using a standard BYFN Fabric network, or are you working with a custom Fabric? Did the `composer network install` work ok for Org1? If it worked OK for Org1, it suggests a problem with the connection.json file used to create the PeerAdmin card for Org2.
@rthatcher i modified the network already, the error appears also for org1. The ca-servers are fine since i can request identity for both org1 and org2
it only fail for the install business network for the composer card
i used the fabric version 1.1 also
[ ](https://chat.hyperledger.org/channel/composer?msg=JisehqGfgodiKQFXd) @mahoney1 I am not using the network on different machines, also I haven't installed a later version into an existing env. I have followed the tutorials in Composer Docs. What I did was, export the admin card using CLI and then import it and set it as default using REST Server APIs, as the participant cards didn't have the authority to issue card to other participants. But that error showed up when I tried to ping the system using admin card.
[ ](https://chat.hyperledger.org/channel/composer?msg=SZZAoJtei9ES44h5w) @nntoan - if you are working with a custom Fabric then I would think there is a mismatch in the configuraton somewhere. Possibly errors in the connection.json or in the docker-compose yaml files.
@tanaybhartia What version of composer are you using, which tutorial, and which step? The card you're importing is suggesting it is re-registering admin in your REST import endpoint (are you saying you did the ping in the REST API ?)
@tanaybhartia What version of composer are you using, which tutorial, and which step? The card you're importing is suggesting it is re-registering admin in your REST import (are you saying you did the ping in the REST API or CLI ?) What does composer network ping from CLI (using the existing admin card) do? - does it connect to the network, list stuff etc)
Has joined the channel.
Hi,
I have three participants
Is there any example to issue Identity, generate card and connect the identity to network programatically through API in hyperledger composer?
@rthatcher ill double check on that, in that byfn i just alter the name of example.com part and add scripts for starting ca container as well. If you have any idea please let me know, thank for the help btw.
[ ](https://chat.hyperledger.org/channel/composer?msg=bC8fAXuqWcWwbdw4Y) @SubhashiniSundaresan yes, see some resources here ->
https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc and here https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--node-js-application-development-questions-eg-build-real-time-apps-login-etc
@mahoney1 : SO posted : https://stackoverflow.com/questions/50453016/accessexception-participant
I have included my model and permissions and the exception stacktrace
stack
To start a BusinessNetwork, the composer network install needs the --networkAdminEnrollSecret flag. Where exactly do we define the password?
@ameyaraje suggest you read this -> https://hyperledger.github.io/composer/latest/business-network/bnd-deploy.html Its composer network start that needs the secret (its not a password btw) and not composer network install. The secret (eg as shown here in the [Developer tutorial](https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial) is something that the CA server would have issues. In our case the secret for the default Dev server setup is 'adminpw' for the 'admin' participant.
@ameyaraje suggest you read this -> https://hyperledger.github.io/composer/latest/business-network/bnd-deploy.html Its composer network start that needs the secret (its not a password btw) and not composer network install. The secret (eg as shown here in the [Developer tutorial](https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial) is something that the CA server would have issues. In our case the secret for the default Dev server setup is 'adminpw' for the 'admin' participant. Suggest to read the tutorial to see the sequence.
[ ](https://chat.hyperledger.org/channel/composer?msg=vyTSSzsz3EDEzeFGj) @SeetharamanNarayanan ok will look tomorrow.
Hello, I'm trying to issue a new identity in a business network with two orgs and get this error ```[INFO] POST /api/v1/register 500 0 "Registration of '08ac0292-cd8a-456c-b394-b4f8f4eea2ab' to validate: Failed getting affiliation 'org1': Affiliation not found"``` could anyone help me please?
@mahoney1 thanks
error.png
[ ](https://chat.hyperledger.org/channel/composer?msg=KtMWrcCDAMtwnB6KX) @mahoney1
My bad, you're right, its composer start. The issue is this error that I see
Has joined the channel.
I just published an article on generating mobile applications for Hyperledger Composer. Would love any feedback! - https://medium.com/@jakeeyturner/generating-mobile-applications-for-hyperledger-composer-714d7378aadc
@Jakeeyturner : Awesome! I am right now doing a node/express/hyperledger-composer based app. Once I am done with it, I will take a peek.
@mahoney1 : I solved the annoying permissions.acl problem by just shutting down the running fabric, killing all existing docker containers and recreating them and redeploying my banana file and voila! everything worked great. Looks like if you update an existing permissions file you need a restart of the fabric?
Has joined the channel.
@SubhashiniSundaresan Let me know how it goes!
@SeetharamanNarayanan Let me know how it goes!
@ameyaraje - have responded on your Stack Overflow msg. Looks like you're behind a firewall / proxy as it can't reach the npm registry to do the container build. See answer in https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer
@Jakeeyturner very nice Jake :thumbsup: well done..
@Jakeeyturner very nice !! :thumbsup: well done..
@mahoney1, I just saw that. I'll take a look
Hi, Does anyone know about this ? I want to debug on VScode or Playground with using breakpoint.
https://stackoverflow.com/questions/50440694/hyperledger-composer-debug-on-playground-and-vscode
Has joined the channel.
Hello, unable to install composer on Ubuntu Bionic. Will composer support it?
hi everyone, may I know if someone in here knows about composer queries specially about the CONTAINS condition in WHERE clause?
the idea is to search for a record in multiple fields using only the data provided in searchbox
not necessarily equal
@nekia you can use chrome debugging for your projects in vscode
Hi everyone, I am trying to write some composer queries using LIMIT and SKIP operators but it’s not working. It returns me the complete result always. Also, need the count of the data being returned by the query. I know that as of now fabric 1.1 doesn’t support this but still there would be a workaround for this…
@swati25 As far as I know there isn't a workaround for this at the moment. If I recall correctly this is planned for fabric 1.2.
[ ](https://chat.hyperledger.org/channel/composer?msg=x9vHeDJ2jDYdLxn7H) @aneb @mahoney1 @rthatcher is it true?
thats a huge drawback the way i see it
I actually wish I am wrong because it is something I really need as well. Currently build a whole caching system around in on my server because otherwise the performance problems are obviously huge.
I guess it is this one? https://jira.hyperledger.org/browse/FAB-2809
can a transaction return data?
i am thinking to invoke a query in tx and splice data accordingly to send it back... though it doesnt solves the problem but still data transfer will be minimized
@Varun2887 A Fabric transaction, if you write your own chaincode, can return data just like any normal function. However I am not entirely sure how composer transactions are build and what the final return value is. I actually would be interested in this as well. Is the return statement in composer transaction code also the actual return statement in the final converted chaincode or is extra code injected?
i checked it
it doesnt return data it returns the tx id and timestamp
:|
Hi, do you have any idea to what is the wildcard operator in Hyperledger Composer Query Language? same with LIKE operator in SQL>
[ ](https://chat.hyperledger.org/channel/composer?msg=zD6WBdJX6qFtGigzN) @rthatcher Yes i was using Network Admin. Thank you
Has anyone tried composer with multiple channels? I have *3 orgs with 2 channels *on my Fabric network. One of the org is part of both the channels. I am not sure *how to add it in the connection profile for the application* for that org as *it should have access to both the channels.* Basically, I don't want to replicate the data over 3rd org's peer if a transaction is just between Org1 and Org2. But, Org1's peers should have all the data for all transactions.
Hi, I want to know how the creating card and referencing the card to required rest end points will work through composer-rest-server. I am also interested in knowing that where should we store the card and recommended flow for that.
Hello,
I am getting following error while accessing rest end points. I have used rest server authentication and imported the card.
```
Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: getaddrinfo ENOTFOUND ca.org1.example.com ca.org1.example.com:7054]
```
@Varun2887 @aneb Not sure it is possible to return data from chaincode when it is invoked to perform an endorsement simulation. You can return data in chaincode if you perform a query request. When you submit a transaction in composer you are always invoking chaincode to perform an endorsement simulation. If you want to get some sort of result back when a transaction is successfully committed to the blockchain then you should use events.
@Varun2887 @aneb Not sure it is possible to return data from chaincode when it is invoked to perform an endorsement simulation. You can return data in chaincode if you perform a query invocation. When you submit a transaction in composer you are always invoking chaincode to perform an endorsement simulation. If you want to get some sort of result back when a transaction is successfully committed to the blockchain then you should use events.
@Varun2887 @aneb Not sure if it is possible to return data from chaincode when it is invoked to perform an endorsement simulation, need to look into that but if it can, composer currently doesn't do it. You can return data in chaincode if you perform a query invocation. When you submit a transaction in composer you are always invoking chaincode to perform an endorsement simulation. If you want to get some sort of result back when a transaction is successfully committed to the blockchain then you should use events.
events can be listened by anyone on network, it wont make sense to broadcast the data to all participants
:)
hello, Instead of using normal composer cli I wanted to use docker image of composer-cli and run composer commands through the container but composer-cli docker image is running just composer --help command and exiting what is the problem can anyone guide me?
[ ](https://chat.hyperledger.org/channel/composer?msg=fhr5ernvZiw4QNGZT) @Rave24th : If you look at those pre install scripts, you can actually make changes and download all the prerequisites. All you need to do is look at the scripts and either disable version checking or add your version into that array of versions. I did that and I am on Ubuntu 17+ and successfully deployed it and enjoying learning fascinating new stuff
I am on Ubuntu Artful and initially I thought I need to downgrade, but luckily I took courage to look at those scripts and modified accordingly
[ ](https://chat.hyperledger.org/channel/composer?msg=GmyqWNPszDRPySiHM) @mahoney1 Thank you!
# Array of supported versions
declare -a versions=('trusty' 'xenial' 'yakkety'); -> Just add your lsb release code name here first.... and then some further code pruning related to version checking in those setup scripts and you will be on your way downloading the base images for the Hyperledger Fabric. Basically if you have Docker, thats all you need to run the fabric. Then you can install hyperledger-composer on top of the fabric....
[ ](https://chat.hyperledger.org/channel/composer?msg=huJiNhK7j96Tybd69) @mahoney1 I am using Composer v0.19.4. I have followed this tutorial https://hyperledger.github.io/composer/latest/managing/identity-issue. I did the ping both from CLI and API. It shows the same error.
@mahoney1 : Is it true that if we update either the model or permissions we need a comple teardown of the fabric and taer and kill all existing docker containers?
Hi all, what is the best numbers that one has observed in multi org multi node (vm) setup in terms of latency and throughput? We are not able to go past 40-50 tps in a multi geo network of 6 org (12 peers) with composer where we are sending requests to composer-rest-server.
@JesonGodilo see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--queries-and-query-support--examples from item 9 onwards, it has plenty of examples of using CONTAINS against array fields.
[ ](https://chat.hyperledger.org/channel/composer?msg=JMjJusScy7eY94FFQ) @swati25 LIMIT/SKIP support is blocked by Fabric presently as described here -> https://github.com/hyperledger/composer/issues/1015 there is no outlook for this upstream so it is closed in Composer presently.
@tanaybhartia ok thanks, that's a command reference, not a tutorial...example of card import is shown in the Google OAUTH2 tutorial here (Step Nine onwards) https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest - it sets up a persistent store (survives after a REST server restart etc). I suggest to follow this or create a S/Overflow with your issue so we can try repeat etc
[ ](https://chat.hyperledger.org/channel/composer?msg=edfhtzFEgQx2dyL46) @SeetharamanNarayanan no, its not true. Your Fabric should remain as-is. As I mentioned, you need to deploy the changes to your network (having regenerated the archive) using the sequence (Step Three and Four) described in this tutorial https://hyperledger.github.io/composer/latest/tutorials/queries (if using a full Fabric environment, or you can deploy/test ACLs/model changes using web connector in playground etc)
@mahoney1 hi, is there a way to write a query using the "IN" operator semantics, over an array type parameter?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZAqpLXSjwFT7gywhB) @Jakeeyturner hi, I am following your tutorial. when I run `npm install -g generator-composer-ionic` I get this error:
```
npm ERR! code E503
npm ERR! 503 No healthy backends: generator-composer-ionic@latest
npm ERR! A complete log of this run can be found in:
```
[ ](https://chat.hyperledger.org/channel/composer?msg=ZAqpLXSjwFT7gywhB) @Jakeeyturner hi, I am following your tutorial. when I run `npm install -g generator-composer-ionic` I get this error:
```
npm ERR! code E503
npm ERR! 503 No healthy backends: generator-composer-ionic@latest
npm ERR! A complete log of this run can be found in:
```
my node version is 8.9.4
[ ](https://chat.hyperledger.org/channel/composer?msg=ZAqpLXSjwFT7gywhB) @Jakeeyturner hi, I am following your tutorial. when I run `npm install -g generator-composer-ionic` I get this error:
```
npm ERR! code E503
npm ERR! 503 No healthy backends: generator-composer-ionic@latest
npm ERR! A complete log of this run can be found in:
```
my node version is 8.9.4
Do I need another mirror for npm registry?
@uber.twin - the equivalent for SQL-like `WHERE column_name IN (value1, value2, ...)` would be `SELECT org.acme.sample.TestAsset WHERE (stringArrayValues CONTAINS ["pumpkin", "jello", "candycane"])` - plenty of CONTAINS examples (see item 9 onwards) [here](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--queries-and-query-support--examples)
@waleed I think the npm registry is currently having some issues - https://status.npmjs.org/
Might be worth trying to install it later, when npm have sorted it out :relaxed:
@mahoney1 Should we need to share card to end users to access authenticated rest points? If yes then can you please suggest me how to achieve this
@rthatcher @mahoney1 Should we need to share card to end users to access authenticated rest points? If yes then can you please suggest me how to achieve this
[ ](https://chat.hyperledger.org/channel/composer?msg=cQhPQY74DZx5ZTDgD) @mahoney well, I'd like to retrieve all updateAsset transactions which modiefied a certain Asset instance
probably something like below won't work
```
SELECT org.hyperledger.composer.system.UpdateAsset
WHERE (resources CONTAIN {id:'assetId'})
```
however, as I do keep track of the relevant transactions ids, how to I retrieve them all?
[ ](https://chat.hyperledger.org/channel/composer?msg=cQhPQY74DZx5ZTDgD) @mahoney well, I'd like to retrieve all updateAsset transactions which modified a certain Asset instance
probably something like below won't work
```
SELECT org.hyperledger.composer.system.UpdateAsset
WHERE (resources CONTAIN {id:'assetId'})
```
however, as I do keep track of the relevant transactions ids, how to I retrieve them all?
[ ](https://chat.hyperledger.org/channel/composer?msg=cQhPQY74DZx5ZTDgD) @mahoney well, I'd like to retrieve all updateAsset transactions which modified a certain Asset instance
probably something like below won't work
```
SELECT org.hyperledger.composer.system.UpdateAsset
WHERE (resources CONTAIN {id:'assetId'})
```
however, as I do keep track of the relevant transactions ids, how to I retrieve them all in one single query?
Hi All
I am getting the below error , while trying to deploy a business network , using the command ,composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
. I am following the steps mentioned in https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial. All the previous steps have completed succesfully .
Any help would be appreciated. Thanks in advance.
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
⠋ Installing business network. This may take a minute...(node:7084) ExperimentalWarning: The fs.promises API is experimental
⠙ Installing business network. This may take a minute...(node:7084) [DEP0079] DeprecationWarning: Custom inspection function on Objects via .inspect() is deprecated
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=HC5uNnfri6seDkrEu) @reshmamohiyiddin - The error "14 UNAVAILABLE: Connect Failed" usually means the Fabric containers are not available - is your fabric started ( try ` docker ps ` ) ? For those other warnings, what versions do you have for Composer (v0.19.6), Fabric (v1.1.0) and Node (v8.9)? (Correct versions in brackets)
Ok,let me check. Thank you.
can somebody share how to setup hyperledger fabric for multiple organisation?
[ ](https://chat.hyperledger.org/channel/composer?msg=3Zb8xQkJcwS2Jmdhw) @suva - there is some information and links in the Knowledge Wiki - https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#multiorg
mobile app
mobile app
mobile app
mobile app
@Jakeeyturner Thanks for your Tutorial, the mobile app works perfectly :)
Hello all, I split composer test file into multiple files, each for a different contract. And in each test file, I create a new test environment by `install`,`start`,`import` commands..., But when I tried to execute the `mocha` test by `npm run test`, I found all the test files use a shared composer context. For example, `peerAdmin` card imported in test file A, will be available in test file B. And such shared context always make TCs failed. So, did anybody ever face to such problem, how did you solve it? Or, does anybody can give me some suggestions? Thank you very much.
Hello all, I split composer test file into multiple files, each for a different contract. And in each test file, I create a new test environment by `install, start, import` commands..., But when I tried to execute the `mocha` test by `npm run test`, I found all the test files use a shared composer context. For example, `peerAdmin` card imported in test file A, will be available in test file B. And such shared context always make TCs failed. So, did anybody ever face to such problem, how did you solve it? Or, does anybody can give me some suggestions? Thank you very much.
BTW, I tried to `undeploy` the business network in each test file after all testcase executed, but I found `undeploy` current is not support~!
[ ](https://chat.hyperledger.org/channel/composer?msg=zks99uqJMdCtm8eZb) @rthatcher Thank you , it worked.
@waleed Awesome! Did you hit any other problems apart from the initial npm registry issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=ENHkMStQBDuMLjeWZ) @Jakeeyturner no, till now everything works. still exploring the generated code und modifying it. npm problem is solved
@Jakeeyturner I will let u know If I find any bugs :)
That's great to hear. Awesome, thank you! I know that there might be some issues with complex forms, just need to write up an issue regarding that :relaxed:
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
Hi, As I understand, composer-rest-server in multi-user mode stores identity cards in a wallet. Doesn't that create a centralized place with identity storage making it a potential entry point for hackers?
[ ](https://chat.hyperledger.org/channel/composer?msg=dQhwB8QDEn9Gv8XCN) @varuna82 Yes, unfortunately. it stores the data in mongo database. so u need to protect this database.
@waleed Thanks for the reply.
[ ](https://chat.hyperledger.org/channel/composer?msg=AGqYqy8zruYDb7Hn9) @rthatcher Thank you very much for your answer!
Now I deleted extra channel definition, extra orderers (now I have only one orderer) and my conection profiles looks like this:
https://gist.github.com/VadimInshakov/d457fef67555a5aae5d9c792a51c2c64
https://gist.github.com/VadimInshakov/9bed272ee516e7125284167bc7a4f449
config.tx:
https://gist.github.com/VadimInshakov/368e6b5483f93b279e7e0895fdad80b5
crypto-config.yaml:
https://gist.github.com/VadimInshakov/7c7f54f1a5b7354267419cb7ae64e98e
docker-compose-kafka.yaml:
https://gist.github.com/VadimInshakov/50e3ef0cee05e2b04dc5e3bdd3f04489
docker-compose-couch.yaml:
https://gist.github.com/VadimInshakov/d57d5ea14afdcfcdd10bbc520aa57ec0
And I don't see any mistakes in orderer's and peer's logs!
I really need your help.
[ ](https://chat.hyperledger.org/channel/composer?msg=AGqYqy8zruYDb7Hn9) @rthatcher Thank you very much for your answer!
Now I deleted extra channel definition, extra orderers (now I have only one orderer) and my conection profiles looks like this:
https://gist.github.com/VadimInshakov/d457fef67555a5aae5d9c792a51c2c64
https://gist.github.com/VadimInshakov/9bed272ee516e7125284167bc7a4f449
I see this error when I start business network:
https://imgur.com/a/ddDEKlI
```
Error: Error trying to start business network. Error: Error: 2 UNKNOWN: access denied: channel [innochannel] creator org [Org1MSP]
Command failed
```
config.tx:
https://gist.github.com/VadimInshakov/368e6b5483f93b279e7e0895fdad80b5
crypto-config.yaml:
https://gist.github.com/VadimInshakov/7c7f54f1a5b7354267419cb7ae64e98e
docker-compose-kafka.yaml:
https://gist.github.com/VadimInshakov/50e3ef0cee05e2b04dc5e3bdd3f04489
docker-compose-couch.yaml:
https://gist.github.com/VadimInshakov/d57d5ea14afdcfcdd10bbc520aa57ec0
And I don't see any mistakes in orderer's and peer's logs!
I really need your help.
hello, currently I am unable to start the business network but chaincode is getting installed I'm getting time out expired error. I have tried to increase the timeout but it is not starting. I'm running the fabric network in docker swam mode, if I run the network normally it works what could be the issue?
@uber.twin probably something like ```query UA {
description: "Select all JunkAssets"
statement:
SELECT org.hyperledger.composer.system.UpdateAsset
WHERE ( targetRegistry == 'resource:org.hyperledger.composer.system.AssetRegistry#org.acme.trading.JunkAsset' )
} ``` - you can check/compare the asset id in `resources` from your result set something like shown here `console.log('Resources for asset: ' + asset.resources[0].id )` and compare if it matches (the asset id could be passed separately to your function by the calling trxn..
@uber.twin probably something like ```query UA {
description: "Select all JunkAssets"
statement:
SELECT org.hyperledger.composer.system.UpdateAsset
WHERE ( targetRegistry == 'resource:org.hyperledger.composer.system.AssetRegistry#org.acme.trading.JunkAsset' )
} ``` - you can check/compare the asset id in `resources` from your result set something like shown here `console.log('Resources for asset: ' + asset.resources[0].id )` and compare if it matches (the asset id could be passed separately to your function by the calling trxn - you would do a match for the id in resources array - if true, grab trxn id etc - the CONTAINS query route, as you mentioned, won't work).
please let me know the syntax to run the query in CLI
[ ](https://chat.hyperledger.org/channel/composer?msg=SMp2iFjrqMtfdkEtQ) @ApoorvChandurkar see [here](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues) for assistance (item 9 onwards ) also this may also be of use -> https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer and check answer [here](https://stackoverflow.com/questions/48657671/hyperledger-fabric-not-working-with-docker-swarm) for swarm mode
[ ](https://chat.hyperledger.org/channel/composer?msg=E8JvAXcQh4a4FYkFF) @gurpreetsingh1193 use curl ? eg. `curl -X GET --header 'Accept:application/json' 'http://localhost:3000/api/queries/selectbyExchange?exchange=NYSE'` there isn't a CLI to run a query generally speaking.
[ ](https://chat.hyperledger.org/channel/composer?msg=E8JvAXcQh4a4FYkFF) @gurpreetsingh1193 use curl ? eg. `curl -X GET --header 'Accept:application/json' 'http://localhost:3000/api/queries/selectbyExchange?exchange=NYSE'` there isn't a CLI to run a query generally speaking, unless you use/define query-based transactions to do so
need to understand the endorsement.json file?
Clipboard - May 22, 2018 5:45 PM
what is signed-by mean here?
@VadimInshakov - there must be errors relating to this in a peer or CA log for this fabric error ? - similar issues seen [here](https://stackoverflow.com/questions/50009758/hyperledger-msp-error-the-supplied-identity-is-not-valid-x509-certificate-s)
[ ](https://chat.hyperledger.org/channel/composer?msg=ah9FxQ7dY3ka2DBPa) @mahoney1 Thanks the swarm solution worked!
Has joined the channel.
hi there, I have been reading through the documentation about setting up composer and peers but the network aspect of it has various info mentioned in different places. Does someone know about exactly which ports need to be open and how the setup works exactly (inbound/outbound). My system is a Ubuntu 16.04 VM container running on Azure. Haven't begun setting anything up yet.
[ ](https://chat.hyperledger.org/channel/composer?msg=947AjYtfYYhFQxuiL) @waleed - and just to expand on the answer - we use Mongo in the tutorials as an easy to use container with default username and password, but other persistent data stores are available building on Loopback https://loopback.io/doc/en/lb2/Database-connectors.html
[ ](https://chat.hyperledger.org/channel/composer?msg=MdjeGXpvYdMSNfBqt) @suva - endorsement files are from Fabric and described in the Fabric Docs:
https://hyperledger-fabric.readthedocs.io/en/latest/endorsement-policies.html?highlight=endorsement%20policy
https://fabric-sdk-node.github.io/global.html#ChaincodeInstantiateUpgradeRequest
[ ](https://chat.hyperledger.org/channel/composer?msg=EMm4pxzdWrSKMMPcj) @mahoney1 there is no errors in peer and CA logs. Thanks for S/O link. So, I need to copy certificates to /usr/local/share/ca-certificates/? I can't find .crt files as recommended on S/O. Where are the certificates that I need to place in this directory?
Has joined the channel.
Hi, I keep hitting an error while executing
composer network install --card PeerAdmin@xyz-org1 --archiveFile ../xyz@0.0.1.bna
Installing business network. This may take a minute...E0522 21:02:42.831173000 140736160699264 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
I've saw some post on stackoverflow. But seem no one know what's went wrong. Anyone encounter this before?
Has joined the channel.
Sorry to nag here as well, but perhaps if I am next to my computer and receiving help we will be able to solve this issue: See https://stackoverflow.com/questions/50350718/connection-profile-for-peer-in-separate-organization-and-separate-physical-machi/50370672?noredirect=1#comment87768469_50370672 How do I solve the ACTIVATION_REQUIRED error when trying to ping from a peer in a separate physical machine
[ ](https://chat.hyperledger.org/channel/composer?msg=ZiKxW7woNZFKrtvrK) @ryans3a - it is likely that the certificates you have specified for the Peer(s) in the docker-compose yaml files via volume mapping do not match what you have specified in the connection.json for the Composer Card. (Note that the certificaate in the connection.json file must be 1 long string with no line breaks, but including the *\n* characters and the BEGIN and END CERTIFICATE text.)
[ ](https://chat.hyperledger.org/channel/composer?msg=ehgAXeSJpKWSgJ5Br) @lsheks - just had a quick look at that Question again. I noticed in the Connection.json file that Peer0.org1 is specified on port 8051 `grpcs://20.20.20.23:8051` - is that correct? In the default BYFN example pee0.org1 is port 7051 and peer1.org1 is 8051.
Have you tried completely clearing down the environment and repeating the steps? It could be that after a few failures the environment is is a weird state. If you do decide to cleardown I would suggest starting the Peers on both machines on the standard ports of 7051, to make the config earier.
[ ](https://chat.hyperledger.org/channel/composer?msg=tiwa3GYdD3hz2DpLG) @rthatcher I am running over docker swarm. Using the same port numbers won't lead to conflicts as long as they are on different machines?
[ ](https://chat.hyperledger.org/channel/composer?msg=rSLucBTYddrGego5N) @rthatcher I have double check docker-compose volumn mapping and "pem" value in connection json. It is as what you've mentioned. But still no luck.
I din't found any suspicious info. in orderers, peers and ca docker logs
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=7Ef7GuZdYWGcbqBae) @ryans3a - have you used *ssl-target-name-override* for the Peers? and ` "httpOptions": { "verify": false } ` for the CA ?
Can my client application (on a separate machine from composer) receive the events from a business network?
[ ](https://chat.hyperledger.org/channel/composer?msg=xuvCbcuvw6hbw2xkn) So the ports don't seem to conflict, but I still get the same error that the identity must be activated in the peer logs and in the end the network ping times out.
@VadimInshakov It would appear you're instantiating against a non-exist Fabric channel, or that Org's (peer(s) is/are not a member of the channel (or joined the channel). You should check if there was a failure to join the channel (or query at a fabric level). If you can verify the Org has joined and can interact with the channel at a Fabric level, then you should be able to 'install' the business network onto the peer first then do a 'start'.
@VadimInshakov It would appear you're instantiating against a non-exist (or unavailable) Fabric channel, or that Org's (peer(s) is/are not a member of the channel (or joined the channel). You should check if there was a failure to join the channel (or query at a fabric level). If you can verify the Org has joined and can interact with the channel at a Fabric level, then you should be able to 'install' the business network onto the peer first then do a 'start'.
@VadimInshakov It would appear you're instantiating against a non-existing (or unavailable) Fabric channel, or that Org's (peer(s) is/are not a member of the channel (or joined the channel). You should check if there was a failure to join the channel (or query at a fabric level). If you can verify the Org has joined and can interact with the channel at a Fabric level, then you should be able to 'install' the business network onto the peer first then do a 'start'.
[ ](https://chat.hyperledger.org/channel/composer?msg=HeiAoainwTkMoYdAT) Could this be an issue with a connection to the orderer? Not sure why I have that hunch. What are other reasons that I would be able to ping the network from one peer but not from another?
Hello ! Is it possible to make a composer-cli container communicate with other container using tls (which env variable, which certificate... ) ! Just like it is done with cli container from build your first network from fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=J2MfbZ86YrxSwhoBJ) @mahoney1 I attached all the peers to the channel and as a result saw the reports that the command was successful. But for some reason here I do not see my channel (please take a look at the screenshot): https://imgur.com/a/Jhm9u90
[ ](https://chat.hyperledger.org/channel/composer?msg=dJSDTxpp3wYZDYXxK) @rthatcher Yes.. it is
[ ](https://chat.hyperledger.org/channel/composer?msg=EsZve4FzJXAZ8FmY3) @GrondinLaurent - the use of TLS to communicate with the Fabric containers is determined by how the Fabric is configured, and then if TLS is enabled on the Fabric, then the connection.json in the Composer Cards will specify the urls and certificates to use from the client perspective.
[ ](https://chat.hyperledger.org/channel/composer?msg=EsZve4FzJXAZ8FmY3) @GrondinLaurent - the use of TLS to communicate with the Fabric containers is determined by how the Fabric is configured, and then if TLS is enabled on the Fabric, then the connection.json in the Composer Cards will specify the urls and certificates to use from the client perspective. - so I guess no specific activity is required to make the cli container use TLS.
[ ](https://chat.hyperledger.org/channel/composer?msg=aYForaKAdfZKZHSK8) @lsheks - in a situation where there are questions about connectivity between the client and various server containers, AND between server containers - I would suggest testing connectivity between each component. There was a recent discussion here in this channel about doing this with the ` wget ` command https://chat.hyperledger.org/channel/composer?msg=yuWJD2qMQdKx6wBLm
How can I apply the loopback filters when calling composer-rest-server's API?
How can I apply the loopback filters when calling composer-rest-server's API? (if it is even possible)
Has joined the channel.
I arrive in a situation where i can install the bna on org1 and but on org2, it doesn't work. I don't see why there is a difference there.
Clipboard - 22 mai 2018 17:04
When using a loopback filter in the API queries, it always returns empty if I use the "=" operator, anybody had the same problem?
Ok, I think I got it: the example says to change "op" to whatever the operation is, but for the "=" operation, it doesn't work like that
[ ](https://chat.hyperledger.org/channel/composer?msg=xFG4bZJea7aqWqJoA) @GrondinLaurent - Error: 14 UNAVAILABLE: Connect Failed - the cli container can't connect to the peer specified for Org2 in the connection.json. Is the Peer running? Can the cli-container 'see' the peer on the address specified? or is there an error in the connection.json file?
@rthatcher Yes the peer is running. The connection is exactly the same i used for org1 except `"organization" : "Org2"`.
@rthatcher Yes the peer is running. The connection profile is exactly the same i used for org1 except `"organization" : "Org2"`. profile
@rthatcher Yes the peer is running. The connection profile is exactly the same i used for org1 except `"organization" : "Org2"`
Clipboard - 22 mai 2018 17:23
@rthatcher for connectivity i have this when using wget in the container
@rthatcher for connectivity i have this when using wget from the composer-cli container
@rthatcher for connectivity i have this when using wget from the composer-cli container
[ ](https://chat.hyperledger.org/channel/composer?msg=4cHKnyJHqeQ3hiwb5) Any points?
@rthatcher can we get all the participants and assets through any rest API endpoint rather going going for the native api(Custom API) etc.
Is it possible for the container to be read as API endpoints or have to be done only through the NATIVE API ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ddxvxzcBP72p6Yhtu) @ApurvTandon - yes, all participants and assets can be retrieved through the REST API.
@ApurvTandon you can get those, through the REST APIs. These are subject to ACLs (just like the native JS APIs). You interface as a REST client of the REST server, whether its running as a persistent docker container or otherwise configured as a server resource.
[ ](https://chat.hyperledger.org/channel/composer?msg=4nNnRhxxAQKZzpxMm) @absingh0 - I don't think the Hyperledger Foundation publishes performance figures. (With 6 Orgs and 12 Peers you are doing lots of replication and endorsement activities.)
[ ](https://chat.hyperledger.org/channel/composer?msg=9DKyKLyDoe6nob2G8) @SeetharamanNarayanan Thank you! I was reluctant that I might break some OS dependencies if I would force it. Somehow, it proceeded but it got stuck at the docker-ce cause docker does not support 18.04 yet. I'd just wait. But, thank you for the reply, I really appreciate it.
[ ](https://chat.hyperledger.org/channel/composer?msg=9DKyKLyDoe6nob2G8) @SeetharamanNarayanan Thank you! I was reluctant that I might break some OS dependencies if I would force it. Somehow, it proceeded but it got stuck at the docker-ce, says package not found even if I added the gpg stuff manually. I'd just wait. But, thank you for the reply, I really appreciate it.
[ ](https://chat.hyperledger.org/channel/composer?msg=9DKyKLyDoe6nob2G8) @SeetharamanNarayanan Thank you! I was reluctant that I might break some OS dependencies if I would force it. Somehow, it proceeded but it got stuck at the docker-ce, says package not found even if I added the repo manually. I'd just wait. But, thank you for the reply, I really appreciate it.
Has joined the channel.
@Rave24th see https://stackoverflow.com/questions/50408144/error-when-installing-hyperledger-composer-pre-requisites-on-ubuntu-bionic second answer, but basically you can install the dependencies yourself. However no testing has yet been done on bionic so there could be issues but would be great to here about them if there are
@Rave24th see https://stackoverflow.com/questions/50408144/error-when-installing-hyperledger-composer-pre-requisites-on-ubuntu-bionic second answer, but basically you can install the dependencies yourself. However no testing has yet been done on bionic so there could be issues but would be great to hear about them if there are
Hello, I am using passport-auth0 (Auth0 platform authentication strategy for Passport.js) to authenticate to my Composer REST server. I am using the following lines for starting the composer-rest-server.
export COMPOSER_NAMESPACES=always
export COMPOSER_AUTHENTICATION=true
export COMPOSER_TLS=true
export COMPOSER_WEBSOCKETS=true
export COMPOSER_PROVIDERS='{
"auth0": {
"provider": "auth0",
"module": "passport-auth0",
"domain": "smartapp.auth0.com",
"clientID": "KBVVrYYF9V19...zAFNe4Tj7NRs8Woq",
"clientSecret": "xNGbYZXdnQpqJQGw6...kJkTjnX-9W7OzQZn3mxsA2eC_ShPyAzzYd3nsT7Fj",
"authPath": "/auth/auth0",
"callbackURL": "/auth/auth0/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
``
Hello, I am using passport-auth0 (Auth0 platform authentication strategy for Passport.js) to authenticate to my Composer REST server.
I am using the following lines for starting the composer-rest-server.
``export COMPOSER_CARD=admin@smartapp-bna
``export COMPOSER_NAMESPACES=always
``export COMPOSER_AUTHENTICATION=true
``export COMPOSER_TLS=true
``export COMPOSER_WEBSOCKETS=true
``export COMPOSER_PROVIDERS='{
`` "auth0": {
`` "provider": "auth0",
`` "module": "passport-auth0",
`` "domain": "smartapp.auth0.com",
`` "clientID": "KBVVrYYF9V19...zAFNe4Tj7NRs8Woq",
`` "clientSecret": "xNGbYZXdnQpqJQGw6...kJkTjnX-9W7OzQZn3mxsA2eC_ShPyAzzYd3nsT7Fj",
`` "authPath": "/auth/auth0",
`` "callbackURL": "/auth/auth0/callback",
`` "successRedirect": "/",
`` "failureRedirect": "/"
`` }
``}'
``composer-rest-server
Authentication through Auth0 goes fine (logs at auth0 site shows login went through), but when the callback occurs the REST Server issues the following error.
It appears that what Auth0 provides needs to be properly mapped so that the REST server knows how to use it. Any help pointing me in the right direction will be appreciated.
"ValidationError: The `user` instance is not valid. Details: `email` is invalid (value: \"676f6f676c652d6f617574683...com\").\n at /home/hyperuser/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:1247:16\n at user.
Hello, I am using passport-auth0 (Auth0 platform authentication strategy for Passport.js) to authenticate to my Composer REST server.
I am using the following lines for starting the composer-rest-server.
export COMPOSER_CARD=admin@smartapp-bna
export COMPOSER_NAMESPACES=always
export COMPOSER_AUTHENTICATION=true
export COMPOSER_TLS=true
export COMPOSER_WEBSOCKETS=true
export COMPOSER_PROVIDERS='{
"auth0": {
"provider": "auth0",
"module": "passport-auth0",
"domain": "smartapp.auth0.com",
"clientID": "KBVVrYYF9V19...zAFNe4Tj7NRs8Woq",
"clientSecret": "xNGbYZXdnQpqJQGw6...kJkTjnX-9W7OzQZn3mxsA2eC_ShPyAzzYd3nsT7Fj",
"authPath": "/auth/auth0",
"callbackURL": "/auth/auth0/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
composer-rest-server
Authentication through Auth0 goes fine (logs at auth0 site shows login went through), but when the callback occurs the REST Server issues the following error.
It appears that what Auth0 provides needs to be properly mapped so that the REST server knows how to use it. Any help pointing me in the right direction will be appreciated.
"ValidationError: The `user` instance is not valid. Details: `email` is invalid (value: \"676f6f676c652d6f617574683...com\").\n at /home/hyperuser/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:1247:16\n at user.
Has joined the channel.
Hi There
I need help
I followed the exact steps outlined in https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html to have the prerequisites installed.
However when I run npm install -g composer-cli
I get the below error
> node-report@2.2.1 install /usr/local/lib/node_modules/composer-cli/node_modules/node-report
> node-gyp rebuild
/bin/sh: 1: node: not found
gyp: Call to 'node -e "require('nan')"' returned exit status 127 while in binding.gyp. while trying to load binding.gyp
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack at ChildProcess.onCpExit (/usr/share/node-gyp/lib/configure.js:354:16)
gyp ERR! stack at emitTwo (events.js:87:13)
gyp ERR! stack at ChildProcess.emit (events.js:172:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Linux 4.13.0-43-generic
gyp ERR! command "/usr/bin/nodejs" "/usr/bin/node-gyp" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/composer-cli/node_modules/node-report
gyp ERR! node -v v4.2.6
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok
/usr/local/lib
└── (empty)
npm WARN optional Skipping failed optional dependency /composer-cli/chokidar/fsevents:
npm WARN notsup Not compatible with your operating system or architecture: fsevents@1.2.4
npm ERR! Linux 4.13.0-43-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "-g" "composer-cli"
npm ERR! node v4.2.6
npm ERR! npm v3.5.2
npm ERR! code ELIFECYCLE
npm ERR! node-report@2.2.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-report@2.2.1 install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the node-report package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs node-report
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls node-report
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /home/devensuji/npm-debug.log
npm ERR! code 1
I've dismantled my Ubuntu Virtual machine twice and have loaded it with all the updates as well
Still getting the same error
Has joined the channel.
Has joined the channel.
Hi Everyone
I need help with an issue
I mange to install and run a business-network
but thats it:) getting stuck there
but thats it:) getting stuck there
composer network install -a ./dist/myBn.bna -c PeerAdmin@hlfv1
composer network start --networkName myBn --networkVersion 0.0.1 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw
composer network install -a ./dist/myBn.bna -c PeerAdmin@hlfv1
composer network start --networkName myBn --networkVersion 0.0.1 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw
composer network install -a ./dist/myBn.bna -c PeerAdmin@hlfv1
composer network start --networkName myBn --networkVersion 0.0.1 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw
composer network install -a ./dist/myBn.bna -c PeerAdmin@hlfv1
composer network start --networkName myBn --networkVersion 0.0.1 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw
$ composer card list
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --card
i cant get a connection to my running bn
appreciate any help
hat to import the newly generated card:) issue solved
thx anyway
good evening. this guy heads to bed
hi, do you have any idea how use wildcard filtering in .qry file?
@rthatcher @mahoney1 Is there any way out for creating our custom rest end points using composer tools?
Ultimately I want to achive following scenario.
- Once any participant created using the default generated rest api, I want to call other rest end point which would issue an identity. I was wondering if I am going in a good direction?
Hi
I have a question. If I upgrade my network, and I changed the model. When I try to access the data using the composer rest server api, I couldn't see any the history data anymore.
If I still need the old data, how can I access them?
[ ](https://chat.hyperledger.org/channel/composer?msg=2cxKixXRebGKnadby) @JesonGodilo
[ ](https://chat.hyperledger.org/channel/composer?msg=2cxKixXRebGKnadby) @JesonGodilo
Thank you for the response! Could you provide a little bit more detail about it ?
Hi.. Does anyone have created more that one REST server instances?
Hello,
Anybody knows how to create custom rest api for rest server?
Hello,
Anybody knows how to create custom rest api for rest server other than default?
Has joined the channel.
I am new to composer installation. After running script of prerequists
getting error in installation of composer-cli
what to do ?
any one help me
@MeiholJhaveri i think you didn't follow this tutorial after prerequists tutorial : https://hyperledger.github.io/composer/latest/installing/development-tools
@Poneey I have done same, but its not working
Has joined the channel.
@MeiholJhaveri what error do you have ?
I recreate instance and give me message for its completion as follows
Installation completed, versions installed are:
Node: v8.11.2
npm: 6.0.1
Docker: Docker version 18.03.1-ce, build 9ee9f40
Docker Compose: docker-compose version 1.13.0, build 1719ceb
Python: Python 2.7.12
as I will fire this command: npm install -g composer-cli it will not completed
so need someone's help
Clipboard - May 23, 2018 10:16 AM
[ ](https://chat.hyperledger.org/channel/composer?msg=rSLucBTYddrGego5N) @rthatcher hi i have the same error. i am using Composer version: v0.19.1 Fabric V1.1.0.
@Poneey I am getting error like this.........meihol@testing:~$ npm install -g composer-cli
/home/meihol/.nvm/versions/node/v8.11.2/bin/composer -> /home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/cli.js
> dtrace-provider@0.8.6 install /home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/dtrace-provider
> node-gyp rebuild || node suppress-error.js
make: Entering directory '/home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/dtrace-provider/build'
TOUCH Release/obj.target/DTraceProviderStub.stamp
make: Leaving directory '/home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/dtrace-provider/build'
> node-report@2.2.1 install /home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/node-report
> node-gyp rebuild
make: Entering directory '/home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/node-report/build'
CXX(target) Release/obj.target/api/src/node_report.o
CXX(target) Release/obj.target/api/src/module.o
CXX(target) Release/obj.target/api/src/utilities.o
SOLINK_MODULE(target) Release/obj.target/api.node
COPY Release/api.node
COPY /home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/node-report/api.node
TOUCH Release/obj.target/install.stamp
make: Leaving directory '/home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/node-report/build'
> pkcs11js@1.0.15 install /home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/pkcs11js
> node-gyp rebuild
make: Entering directory '/home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/pkcs11js/build'
CXX(target) Release/obj.target/pkcs11/src/main.o
CXX(target) Release/obj.target/pkcs11/src/dl.o
CXX(target) Release/obj.target/pkcs11/src/const.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/error.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/v8_convert.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/template.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/mech.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/param.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/param_aes.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/param_rsa.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/param_ecdh.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/pkcs11.o
CXX(target) Release/obj.target/pkcs11/src/async.o
CXX(target) Release/obj.target/pkcs11/src/node.o
SOLINK_MODULE(target) Release/obj.target/pkcs11.node
COPY Release/pkcs11.node
make: Leaving directory '/home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/pkcs11js/build'
> grpc@1.10.1 install /home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
[grpc] Success: "/home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node" is installed via remote
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules/composer-cli/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
+ composer-cli@0.19.5
added 546 packages from 471 contributors in 76.278s
meihol@testing:~$
I don't see any error ...
@MeiholJhaveri Warning about fsevents it's ok, it work only for mac because you don't need this for linux
I am installing on cloud with ubuntu
Ok, but i think it's working, you don't have any error
@Poneey yes working and going forward, will message in forum if any issue
[ ](https://chat.hyperledger.org/channel/composer?msg=dJSDTxpp3wYZDYXxK) @rthatcher i have the same error.i am using Composer version: v0.19.1 Fabric V1.1.0.
Has left the channel.
Clipboard - May 23, 2018 10:23 AM
Hi, I use rest api for hyperledger on mac ,when I use command curl for send transaction with largest data,but I got the message "error request entity to large".I tried to change my httpd.conf but its didnt work.Someone can help me .thanks you
@Poneey To restart the REST server using the same options, issue the following command:
composer-rest-server -c HKHLBS@HK -n always -w true
Discovering types from business network definition ...
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":19,"message":"CA 'BS' does not exist"}]]
It will be retried for the next request.
Exception: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":19,"message":"CA 'BS' does not exist"}]]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":19,"message":"CA 'BS' does not exist"}]]
at client.getUserContext.then.then.catch (/home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)
at
@MeiholJhaveri are you sure about business network card ?
@poney
@poneey .bna file ?
Run "composer card list", it will return all card in you projet
I have already uploaded from composer
@Poneey Connection Profile: HK
┌───────────┬────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├───────────┼────────┼──────────────────┤
│ HKHLBS@HK │ HKHLBS │ │
└───────────┴────────┴──────────────────┘
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Ok so it's ok
But for me, i have just "Connection Profile: hlfv1", i don't know how it work with "Connection Profile: HK" ...
Has joined the channel.
@Poneey let me change profile from hk to hlfv1 and try
@Poneey when I try to load bna file in my business and give username and password it gives me error to save.
@Poneey but I can save in browser
if I want to expose my api then it should be in my business. Am I correct ?
he following Business Network Cards are available:
Connection Profile: harikrishna
┌────────────────────┬────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├────────────────────┼────────┼──────────────────┤
│ meihol@harikrishna │ meihol │ │
└────────────────────┴────────┴──────────────────┘
when I start composer-rest-server, error comes like this .......... Discovering types from business network definition ...
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":19,"message":"CA 'ca-org1' does not exist"}]]
It will be retried for the next request.
Exception: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":19,"message":"CA 'ca-org1' does not exist"}]]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":19,"message":"CA 'ca-org1' does not exist"}]]
at client.getUserContext.then.then.catch (/home/meihol/.nvm/versions/node/v8.11.2/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=ByKdFuLixmZkhabkj) @abityildiz - it is difficult to tell from the screenshot because of the text wrap, but I think you have hard line breaks in the certificate in that file - it all needs to be on a single line.
can anyone help me
[ ](https://chat.hyperledger.org/channel/composer?msg=WjDTWaWh7r7KTBXmp) @MeiholJhaveri - in 2 of your posts I see the same message:
` "message":"CA 'BS' does not exist" ` and
` "message":"CA 'ca-org1' does not exist" `
Are you running a custom Fabric? How have you configured the CA? If you search the log of the CA for the string "CA:{Name:" I think you will find the CA name
hi ,when I write a chaincode project,how can i use peer command to invoke it?
[ ](https://chat.hyperledger.org/channel/composer?msg=G6i2guxkduNSbKdL7) @rthatcher I try, but it does not accept a single line.I do this by removing / n.
[ ](https://chat.hyperledger.org/channel/composer?msg=WryKEX9Zfj3yvmXvt) @rthatcher NO I have not done anything just created BNA file
hi ,when I write a chaincode project with yeoman plugin,how can i use peer command to invoke it?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=8NizAq5WdxF2sccG8) @xy250400 - if you are using Hyperledger Composer, you don't use Peer Commands - the Developer Tutorial shows how to generate and deploy a Business Network with Composer: https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
when i try to upgrade the bna after install it succeesed, i get the error many times:
ubuntu@ip-172-31-6-31:~$ composer network upgrade -c PeerAdmin@hlfv1 -n finances --networkVersion 0.0.2-deploy.30
Upgrading business network finances to version 0.0.2-deploy.30
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: premature execution - chaincode (finances:0.0.2-deploy.30) is being launched
Command failed
and the peer log show the same error info:
2018-05-23 08:27:26.805 UTC [ccprovider] NewCCContext -> DEBU 197c NewCCCC (chain=composerchannel,chaincode=finances,version=0.0.2-deploy.30,txid=2779a0fce46e22bdf034c4c1027d38484c1fe742752d2fc49ad3f63756906fb3,syscc=false,proposal=0xc4224b66e0,canname=finances:0.0.2-deploy.30
2018-05-23 08:27:26.805 UTC [endorser] callChaincode -> DEBU 197d [composerchannel][2779a0fc] Exit
2018-05-23 08:27:26.806 UTC [endorser] simulateProposal -> ERRO 197e [composerchannel][2779a0fc] failed to invoke chaincode name:"lscc" , error: premature execution - chaincode (finances:0.0.2-deploy.30) is being launched
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:667
github.com/hyperledger/fabric/core/chaincode.Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/exectransaction.go:45
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:83
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:164
github.com/hyperledger/fabric/core/endorser.(*Endorser).simulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:265
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:491
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:781
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2337
2018-05-23 08:27:26.806 UTC [endorser] simulateProposal -> DEBU 197f [composerchannel][2779a0fc] Exit
i had try it for 2 days. could anyone can help me? Thanks.
Has joined the channel.
meihol@testing:~/fabric-dev-servers$ composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Archive file tutorial-network@0.0.1.bna does not exist.
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=kk6FuE2qCxxN2d5Fb) @MeiholJhaveri - I would guess that you have Business Connection Cards with connection.json files that define a CA (certificate authority) - how were the connection.json and the cards created?
from the Hyperledger-composer from website
[ ](https://chat.hyperledger.org/channel/composer?msg=SQdZGSZ7GgXfibmar) @rthatcher thank you.but I think if i publish a composer project,it will be completed to a normal node chaincode,and i can call it by peer.Because in my coutry,the docker container can't pull npm plugins,because of my country limit the DNS.
another way,how can i complete a bna file to a nodejs file,such as the examples "fabcar"
[ ](https://chat.hyperledger.org/channel/composer?msg=2JAHG7bNfYyiSLDQ7) @xy250400 - if you have problems with npm when using `composer network start` - this section in the Knowledge Wiki describes how to use npmrc file to specify an alternate repository or proxy. https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
@rthatcher https://github.com/hyperledger/composer/issues/1731
[ ](https://chat.hyperledger.org/channel/composer?msg=EPDDa2z4dKP5oiRF2) @rthatcher thank you very much.
I am getting this error in composer version 0.16.6 [ ](https://chat.hyperledger.org/channel/composer?msg=kmbxZbwhdkbxeKg3w)
can anyone having idea how to solve this
Hi all, can someone explain me how to connect a mobile app to my hyperledger composer blockchain. A composer rest server is running on my laptop port 3000 and a backoffice is connected as admin. Many thanks !
Has joined the channel.
@wangrangli - that is an error not often seen. You could try the following to tidy up before retrying the command
` docker rm dev-peer0.org1.example.com-finances-0.0.2-deploy.30 ` - check exact name with _docker ps -a _
` docker rmi dev-peer0.org1.example.com-finances-0.0.2-deploy.30...longname!... ` - check exact name with *docker images*
' docker stop peer0.org1.example.com `
' docker start peer0.org1.example.com `
' composer network upgrade ...etc... `
@wangrangli - that is an error not often seen. You could try the following to tidy up before retrying the command
` docker rm dev-peer0.org1.example.com-finances-0.0.2-deploy.30 ` - check exact name with _docker ps -a _
` docker rmi dev-peer0.org1.example.com-finances-0.0.2-deploy.30...longname!... ` - check exact name with _docker images_
` docker stop peer0.org1.example.com `
` docker start peer0.org1.example.com `
` composer network upgrade ...etc... `
Hi, I start composer rest server(0.19.5) with this command *composer-rest-server -c admin@siphtor-network -a true -m true* and try to get access token from explorer at the top, but token doesn't displayed. Why?
Hi, I start composer rest server(0.19.5) with this command *composer-rest-server -c admin@siphtor-network -a true -m true* and try to get access token from explorer at the top of page, but token doesn't displayed. Why?
Hi, I have started composer rest server(0.19.5) with this command `composer-rest-server -c admin@siphtor-network -a true -m true` and have tried to get access token from explorer at the top of page, but token wasn't displayed. Why?
Hi, I have started composer rest server(0.19.5) with this command `composer-rest-server -c admin@siphtor-network -a true -m true` and have tried to get access token from explorer at the top of page, but token wasn't displayed.
Why?
Hi, I have started composer rest server(0.19.5) with this command `composer-rest-server -c admin@siphtor-network -a true -m true` and have tried to get access token from explorer at the top of page, but token wasn't displayed.
Why access token didn't display? How can I get access token?
[ ](https://chat.hyperledger.org/channel/composer?msg=iZ9pjjE5HCHseTMzF) @ArnaudCarrere - I would start with this tutorial written by @Jakeeyturner - https://medium.com/@jakeeyturner/generating-mobile-applications-for-hyperledger-composer-714d7378aadc
[ ](https://chat.hyperledger.org/channel/composer?msg=BzNFaKDdxNZSiEdb5) @VladimirBorozna Having authenticated to the REST server (are you using Github or similar provider?) , the REST API explorer at (say) http://localhost:3000/explorer/ should show the access token at the top of the page. By default the access token is hidden, but it can be displayed by clicking the Show button
Is a Concept similar to an associative array? I'm trying to find a good description for my tutorial but it's a bit vague in the documentation
[ ](https://chat.hyperledger.org/channel/composer?msg=JSPKqF6NsJEMHCTDS) Can anyone help me with this
[ ](https://chat.hyperledger.org/channel/composer?msg=EwAGB4hBew4kn8u5v) @ra_w - Identity not registered? What steps /commands / actions did you take to register/issue the identity? Have you tried the ` composer identity list ` command ?
@mahoney1 I try to authenticate user with passport-local
`export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
composer-rest-server -c admin@siphtor-network -n never -w true -a true -m true
`
@mahoney1 I try to authenticate user with passport-local
`export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
composer-rest-server -c admin@siphtor-network -n never -w true -a true -m true`
@mahoney1 I try to authenticate user with passport-local
```
`export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
}
}`
```
composer-rest-server -c admin@siphtor-network -n never -w true -a true -m true`
@mahoney1 I try to authenticate user with passport-local
```
`export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
}
}
```
composer-rest-server -c admin@siphtor-network -n never -w true -a true -m true
@mahoney1 I try to authenticate user with passport-local
```
export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
}
}
composer-rest-server -c admin@siphtor-network -n never -w true -a true -m true
```
@mahoney1 I try to authenticate user with passport-local.
I installed globally passport-localy and run script below.
```
export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
}
}
composer-rest-server -c admin@siphtor-network -n never -w true -a true -m true
```
@mahoney1 I try to authenticate user with passport-local.
I installed globally passport-local and run script below.
```
export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
}
}
composer-rest-server -c admin@siphtor-network -n never -w true -a true -m true
```
Hi team,
I need your advice. I want to demonstrate by submitting different transactions for different Identities by passing the Identity card in transaction from Client.
e.g. composer transaction submit --card supervisor@network -d '{""....
But, I am logically struck in the below
When I am running the Rest server with multiuser parameter as False all the transactions are recored by the Admin user(As expected)
But, when I am running the "composer-rest-server -c admin@land -n never -m true" I am unable to fetch the data on the client with "Authorization Required" error. Please suggest if we need to pass the card name on Get requests and How?
Has joined the channel.
a quick question on hyperledger fabric. I have defined peers in my docker-compose.yml file. What does users indicate there? how is a user different from a peer in real application sense. I know that peer holds the ledger and user does not, but how can i conceptually understand difference between peer and user?
[ ](https://chat.hyperledger.org/channel/composer?msg=vFjKC8wJECqGLDAsu) @Pranoti Use composer-rest-server ( because your question is inside composer channel I am assuming that you are using hyperledger composer ). you can have multiple rest-servers runnign with differnt card using differ port just use -p
[ ](https://chat.hyperledger.org/channel/composer?msg=G6i2guxkduNSbKdL7) @rthatcher i try ,it all be on a single line
Clipboard - May 23, 2018 12:49 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=hodXSKzwFNXZn33GF) @MeiholJhaveri write exact name of bna file instead of putting version behind it. if you bna file is abc.bna then just write abc.bna instead of abc@0.0.1.bna [ actully arciveFile is path of the file ]
i think you have your bna file in tutorial-network folder inside fabric-dev-servers
check the archive file path
[ ](https://chat.hyperledger.org/channel/composer?msg=BqMg8TTxedu8YRars) @abityildiz It shows that network has been already installed. So either uninstall that network or upgrade instead of install
@rthatcher Thank you.docker rmi could be worked. but it was not worked every time. I had delete the image of the dev-peer0.org1.example.com-finances every time before i want start or upgrade the network. mostly, composer network start is fine,but composer network upgrade maybe fine or not. I don't know why.
[ ](https://chat.hyperledger.org/channel/composer?msg=j52qArqJ4SnCHtyZv) and in composer app how do i make sure that a user invokes chaincode for his organisation only
[ ](https://chat.hyperledger.org/channel/composer?msg=MdzMtdpWwT6Ecd2WP) @hvandurme kind of similar in terms of access when you have an array of Concepts - but in their own right, Concepts are simply abstract classes but stored as part of a participant, asset or transaction class. Person (participant class) can have an 'address' that is of concept class Address (but which is only stored as part of the participant in this instance) - or could have an array of address (multiple addresses). Its a way of collectivising attributes or schema that define a class that's ultimately stored as part of a resource. There really is no such thing as an associative array in javascript btw.
How in composer to use passport-local strategy to authenticate a user?
How in composer to use passport-local strategy to authenticate a user?
I installed globally passport-local and run script below.
```
export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
}
}
composer-rest-server -c admin@siphtor-network -n never -w true -a true -m true
How in composer to use passport-local strategy to authenticate a user?
[ ](https://chat.hyperledger.org/channel/composer?msg=DzyvgA2ap4tBGxwe2)
Could you please suggest. I am trying to get the transactions for different Participant types and submit them with the cards(Presently hard coded in the transaction)
E.g. Invoke the SetupDemo transaction in https://www.ibm.com/developerworks/cloud/library/cl-deploy-interact-extend-local-blockchain-network-with-hyperledger-composer/index.html
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=nkiH3GKRGuCre6XFv) @prmdmshra https://ibm-blockchain.github.io/develop/integrating/enabling-multiuser
[ ](https://chat.hyperledger.org/channel/composer?msg=Wqj7HLvAht462DvTY) @VladimirBorozna see https://stackoverflow.com/questions/50349925/composer-rest-server-with-passport-local-strategy (incl links) and comments in here -> https://github.com/strongloop/loopback-component-passport/issues/57
Clipboard - May 23, 2018 1:24 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=amHDYCSBvAGK2oa4C) This is what I get. I believe Connection refused also means that there was a response from the peer? Note that I changed the network since my network has a different name. Also I can't seem to connect to bbc.co.uk and instead get a timeout but I think that is only because the proxies in the docker container as you sent it to me are not set and I wasn't sure how to set them
@mahoney1 thank you for the elaborate explanation!
[ ](https://chat.hyperledger.org/channel/composer?msg=CwjmGRfAScQcYdsHp) I should also note that I am able to install the network and even start it. I am only unable to ping from the org2 admin....
I have registered while deploying network as admin identity it will work fine for some time. Later it will show this error after so many request to rest server API [ ](https://chat.hyperledger.org/channel/composer?msg=PawJAgZLLF62tY4u3) ```
```
How can we create Card other than its default (.composer/cards) location?
Hello,
Suppose there is participant p1 and now I want to add another participant using p1 then how can I achieve this?
[ ](https://chat.hyperledger.org/channel/composer?msg=T4CsDKJehPRCZi2Xk) @GrondinLaurent
I am getting "Authorization Required" error message even when attempting to import the card and the Composer rest server is running in multi user mode. And the Wallet option is not displayed in the UI of rest server when I run without mutiuser option "composer-rest-server -c admin@land -n never"
[ ](https://chat.hyperledger.org/channel/composer?msg=mTpkrXMDb7BSZsN24) @prmdmshra The -m true argument automatically enables REST API authentication. You can alternatively supply both arguments, -a true -m true, if you wish to be explicit. Before continuing, you must authenticate to the REST API using the configured authentication mechanism. If you see a HTTP 401 Authorization Required error message, you have not authenticated correctly to the REST API.
[ ](https://chat.hyperledger.org/channel/composer?msg=ysDd7xhcDW7CnPWoN) @mahoney1 Yes, there is need for extra processing of the query results. But the end result needs be available at a REST endpoit, is that possible? As far as I know, the REST server conveys only results of plain queries and plain asset and transaction retrieval requests
@mahoney1 what I'm looking for is programmatic queries support in the composer runtime, based on the client API
[ ](https://chat.hyperledger.org/channel/composer?msg=3twok6ATYwqgXG4cn) @lsheks we need to get some logs to see why. I suggest to (as the org2 admin) do a composer network ping BUT FIRST in your current shell set up some diagnostics/trace logging. First, inside `$HOME/.composer.logs` specifically - remove old log files (copy elsewhere if for some reason you want a backup). Second, do an `export DEBUG=composer:*` to set up trace logging to 'all errors' (more info on Diagnostics [here](https://hyperledger.github.io/composer/latest/problems/diagnostics) - this will generate a tracexx* (or set of) files in the same `$HOME/.composer/logs` subdirectory - then provide them to me by DM (as a zip). Need to capture information from the client side first to see what's going on.
[ ](https://chat.hyperledger.org/channel/composer?msg=3twok6ATYwqgXG4cn) @lsheks we need to get some logs to see why. I suggest to (as the org2 admin) do a composer network ping BUT FIRST in your current shell set up some diagnostics/trace logging. First, inside `$HOME/.composer/logs` specifically - remove old log files (copy elsewhere if for some reason you want a backup). Second, do an `export DEBUG=composer:*` to set up trace logging to 'all errors' (more info on Diagnostics [here](https://hyperledger.github.io/composer/latest/problems/diagnostics) - this will generate a tracexx* (or set of) files in the same `$HOME/.composer/logs` subdirectory - then provide them to me by DM (as a zip). Need to capture information from the client side first to see what's going on.
I'm having some trouble in my queries, when I want to search by the relationship's ID or some other element of a relationship included in an asset. Example: ``` query selectShipmentByHolder {
description: "Select all shipments based on their Holder"
statement:
SELECT org.logistics.testnet.ShipmentBatch
WHERE (holder.gs1CompanyPrefix == _$holder)
} ``` Where holder is a relationship in the shipmentbatch and gs1CompanyPrefix is the ID of that relationship
It always returns empty; I also tried a filtered query, with the same result
@uber.twin so `UA` is a query endpoint so should be available eg as `curl -X GET --header 'Accept:application/json' 'http://localhost:3000/api/queries/UA` in your REST API. To run this programmatically in your runtime TP, you would call it ```return query('UA')
.then(function (results) { for (var n = 0; n < results.length; n++) { // do something } });
@uber.twin so `UA` (in my earlier example) IS a query endpoint so should be available eg as `curl -X GET --header 'Accept:application/json' 'http://localhost:3000/api/queries/UA` in your REST API. To run this programmatically in your runtime TP, you would call it ```return query('UA')
.then(function (results) { for (var n = 0; n < results.length; n++) { // do something } });``` not sure if this answers your Q
[ ](https://chat.hyperledger.org/channel/composer?msg=fagX4imQHRnCYSPvC) @HoneyShah s you can use `composer participant add` https://hyperledger.github.io/composer/latest/reference/composer.participant.add or Playground connect to your fabric or JS APIs. See also https://hyperledger.github.io/composer/latest/managing/participantsandidentities
[ ](https://chat.hyperledger.org/channel/composer?msg=Q3GKrGcPJZ3rqfoHb) @JayPandya - this document describes the Cloud Wallet capability https://hyperledger.github.io/composer/latest/business-network/cloud-wallets but there is a section in it "Configuring file system custom card stores" which explains how to use a different file system location.
[ ](https://chat.hyperledger.org/channel/composer?msg=XtXijBa6wmuCq2a86) @mahoney1 I thought a transaction processing function is always returning the transaction itself
[ ](https://chat.hyperledger.org/channel/composer?msg=fFuwLtdtscgozssiA) @mahoney1 I have added one participant using command line and issue identity for it with permission of issuing new identities but when I use card of added participant to add new participant I am not able to do that it says it has no CREATE access to add new participant though I have given permission to add new participant through ACL file
[ ](https://chat.hyperledger.org/channel/composer?msg=fFuwLtdtscgozssiA) @mahoney1 I have added one participant using command line and issue identity for it with permission of issuing new identities but when I use card of added participant to add new participant I am not able to do that it says it has no CREATE access to add new participant though I have given permission to add new participant through ACL file
```
Error: Error trying invoke business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: AccessException: Participant 'com.eprocure.participants.eProcureNetworkAdmin#p2' does not have 'CREATE' access to resource 'com.eprocure.participants.eProcureNetworkAdmin#p3'
```
@mahoney1 so a transaction processing function can return arbitrary results?
@mahoney1 I don't think I understand the context of your code sample. Is it a real TP function? If so, wouldn't the URL be something like 'http://localhost:3000/api/my.org.AuditRequestTran'
@mahoney1 I don't think I understand the context of your code sample. Is it a real TP function? If so, wouldn't the URL be something like 'http://localhost:3000/api/my.org.AuditRequestTran'?
@pedromlcosta as its written, won't work. So `WHERE (holder == _$holder)` would work where the latter is the FQ relationship name eg `resource:org.logistics.testnet.Holder#1`
@mahoney1 yeah, I tried it like that at first, but it wasnt working
@uber.twin - it can return the results of your query as an array of objects, what I showed is calling the query, called 'UA' from inside a TP function. So example ```function idfunc(idty) {
return query('UA')
.then(function (results) {
for (var n = 0; n < results.length; n++) {
var asset = results[n];
console.log('The transaction object ' + (n+1) + ', object is ' + asset + '\n');
console.log('A Transaction identifier is: ' + asset.getIdentifier()); // asset
console.log('Resources found are: ' + asset.resources); //concept
console.log('Resources array element is: ' + asset.resources[0]); //concept
console.log('Resources for asset: ' + asset.resources[0].id); //concept
console.log('Concept JSON obj element is: ' + asset.sharedOwnerShip[0]); // element
console.log('Concept values for first owner: ' + asset.sharedOwnerShip[0].owner.getIdentifier());
}
});
}
```
@uber.twin - yes, it can return the results of your query as an array of objects, what I showed is calling the query, called 'UA' from inside a TP function. So example ```function idfunc(idty) {
return query('UA')
.then(function (results) {
for (var n = 0; n < results.length; n++) {
var asset = results[n];
console.log('The transaction object ' + (n+1) + ', object is ' + asset + '\n');
console.log('A Transaction identifier is: ' + asset.getIdentifier()); // asset
console.log('Resources found are: ' + asset.resources); //concept
console.log('Resources array element is: ' + asset.resources[0]); //concept
console.log('Resources for asset: ' + asset.resources[0].id); //concept
console.log('Concept JSON obj element is: ' + asset.sharedOwnerShip[0]); // element
console.log('Concept values for first owner: ' + asset.sharedOwnerShip[0].owner.getIdentifier());
}
});
}
```
I'll check a second time, to make sure
@pedromlcosta eg `return query('selectCommoditiesByOwner', {owner: 'resource:org.acme.trading.Trader#2' } )`
@mahoney1 and how do I make this function -idfunc- available at a REST endpoint?
@HoneyShah - your issue is an ACLs permission issue, put simply. You need to allow your participants to have the ability to CREATE, READ (possibly UPDATE, DELETE too ??) in your permissions.acl - see https://hyperledger.github.io/composer/latest/reference/acl_language and tutorial https://hyperledger.github.io/composer/latest/tutorials/acl-trading
[ ](https://chat.hyperledger.org/channel/composer?msg=HQPPf4e6C4kpQvKP4) I arrive in a situation where i can install the bna on org1 and but on org2, it doesn't work. I don't see why there is a difference there. Some one has an idea ?
[ ](https://chat.hyperledger.org/channel/composer?msg=wsg3waKwkBj54g58C) @uber.twin queries as REST API endpointss return results, transactions (whether or not they're calling a query) return transaction status (like 200, and a transaction ID etc - not the query results - just to point that out).
[ ](https://chat.hyperledger.org/channel/composer?msg=wsg3waKwkBj54g58C) @uber.twin queries as REST API endpoints return results, transaction endpoints (whether or not they're calling a query) return transaction status (like 200, and a transaction ID etc - not the query results - just to point that out).
[ ](https://chat.hyperledger.org/channel/composer?msg=MNrCh3uqFJzAWBure) @mahoney1 so that is my point, such result can't be made available at a REST endpoit
[ ](https://chat.hyperledger.org/channel/composer?msg=MNrCh3uqFJzAWBure) @mahoney1 so that is my point, such result can't be made available at a REST endpoint
[ ](https://chat.hyperledger.org/channel/composer?msg=MNrCh3uqFJzAWBure) @mahoney1 so that is my point, such result can't be made available at a REST endpoint. If so, it seems like an arbitrary limitation to me.
[ ](https://chat.hyperledger.org/channel/composer?msg=MNrCh3uqFJzAWBure) @mahoney1 so that is my point, such result can't be made available at a REST endpoint. If so, it seems like an arbitrary limitation to me. Doesn't it make sense to have read-only transaction types, intended only for the purpose of retrieving data?
[ ](https://chat.hyperledger.org/channel/composer?msg=DX8yGzf2rrjxwzr8q) @GrondinLaurent
I have successfully enabled rest server authentication with http://localhost:3000/auth/github.
Could you please suggest me any tutorial or sample to use the token in Angular UI application for different wallets in the rest server
While I am able to access the Rest API, I am getting the following error on executing the commands curl -v http://localhost:3000/api/system/ping?access_token=xxxxx or curl -v -H 'X-Access-Token: xxxxx' http://localhost:3000/api/system/ping
* Connection #0 to host localhost left intact
{"error":{"statusCode":500,"name":"Error","message":"Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]","stack":"Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration.
@uber.twin yes possibly, or have the Query def send the results thru a function (if defined at the query level, for processing) but still be a Query, that returns results ..currently to do what you ask, you would need a custom REST API route / registered endpoint such as shown here https://dzone.com/articles/customization-of-rest-apis-in-loopback-application. Feel free to raise an issue.
[ ](https://chat.hyperledger.org/channel/composer?msg=bKsyDJMQBdHizYivq) @chandrakanthm Were you able to resolve this? I am running into the same issue and was wondering if you got it working. If so, can you kindly share how you resolved it please?
[ ](https://chat.hyperledger.org/channel/composer?msg=iDLpF8JKGLsMCxqot) @Arindam Were you able to resolve this? I am running into the same issue trying the passport-auth0 strategy and was wondering if you got it working. If so, can you kindly share how you resolved it please?
Hey guys, iam tying to delploy the .bna into a peer in the fabric network, but every time i try gives me this error : response for attempted peer comms was an error: 2 unkown : access denied :channel [name of channel] creator org [org name]. What cause this error and how can i solve it
@lipoplus What command fire this error ?
@lipoplus Which command fire this error ?
@GrondinLaurent composer network start
[ ](https://chat.hyperledger.org/channel/composer?msg=7RYivHDwdvAd2Ejvh) @lipoplus Trying looking at the logs of the fabric peer, to retrieve more information about this error
how can i do that? @GrondinLaurent
[ ](https://chat.hyperledger.org/channel/composer?msg=LQveW2sABkZdkz5yY) @lipoplus `docker logs peer_container_name`
Has joined the channel.
print1.JPG
print1.JPG
Hi.. I am new to this and wanted some help from the team..
I start command:
```
composer network start -c PeerAdmin@inno1 -n inno -V 0.0.1 -o endorsementPolicyFile=./endorsement-policy.json -A user1 -C user1/admin-pub.pem -A user2 -C user2/admin-pub.pem
```
And get error:
```
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
```
And I see in peer0.org1 log:
https://imgur.com/a/L0brMiN
@VadimInshakov are your peer containers up? check `docker ps`
In what file can we write custom queries in JS? Does it work in logic.js, ordo I need to run a custom server instead of composer-rest-server?
@pedromlcosta check this link
https://hyperledger.github.io/composer/v0.16/tutorials/queries
you can create a query file and let it be the part of your bna file
I already have a query .qry file :b
But some queries are nearly impossible to execute with just the query language by itself
[ ](https://chat.hyperledger.org/channel/composer?msg=XgSbL4p8fc66qLvph) @akhilaggarwal yes
https://imgur.com/a/9eXCi6P
@pedromlcosta i see a couple of things like order and limit type queries are yet not supported. for this, you can add a logical abstraction on the result at your application logic in logic.js
[ ](https://chat.hyperledger.org/channel/composer?msg=SagQAfTJcMucF8ND9) your channel says service unavailable. not sure if this is the MSP
@VadimInshakov The msgs would suggest (when logged) that the ordering service is SERVICE_UNAVAILABLE, peer disconnects with orderer nodes and continues the loop, retries/reconnects with available orderer nodes and still receives SERVICE_UNAVAILABLE.
[ ](https://chat.hyperledger.org/channel/composer?msg=3rThEad8kpFgPCGLS) @akhilaggarwal
WAIT!
Now I see this in peer0:
https://imgur.com/a/9fGaZl6
[ ](https://chat.hyperledger.org/channel/composer?msg=ZZeio6Mps7X7y54PX) @mahoney1 so, should I look for an error in the docker-compose.yaml?
@mahoney1 PLEASE, look at orderer logs:
https://imgur.com/a/VX2sjkP
Has joined the channel.
Hello all, I have an asset which has an _owner _ property. When creating this asset using a transaction in a multi-user setup, I am currently passing the participant id from the front-end. This is cumbersome. How can I get the participant id for the user executing the transaction and use that instead of having to pass the owner from the front-end? Any pointers will be appreciated.
Hello all, I have an asset which has an _owner _ property. When creating this asset using a transaction in a multi-user setup, I am currently passing the participant id from the front-end. This is cumbersome. How can I get the participant id for the user executing the transaction from within the transaction and use that instead of having to pass the owner from the front-end? Any pointers will be appreciated.
Hello all, I have an asset which has an _owner _ property. When creating this asset using a transaction in a multi-user setup, I am currently passing the participant id from the front-end. This is cumbersome. How can I get the participant id for the user executing the transaction from within the transaction and use that instead of having to pass the owner from the front-end? Any pointers will be appreciated. @sstone1
Is it possible to cluster Selects one inside another in the query composer language?
Is it possible to nest Selects one inside another in the query composer language?
I have the following structure: ```asset ShipmentBatch identified by shipmentId {
o String shipmentId
--> supplyChainMember owner
--> Commodity[] assetExchanged
}``` and I wanted to do the following 2 queries: give the owner and return a list of assets; give an asset and return the owner; but I'm not being able to write any of those 2 in the composer query language
@VadimInshakov orderer logs look fine, but your peer0.org2 has a certificate is signed by an unknown Authority ...
@VadimInshakov orderer logs look fine, but your peer0.org2 has a certificate is signed by an unknown Authority ... for resolution of those Fabric issues, it really is best to ask on the #fabric channel - it is beyond the remit of #composer to resolve these type of issues, cheers
@mahoney1 Can I write queries in JS (or use the results of a query to invoke others, effectively doing more complex operations), but still use the default composer-rest-server?
@pedromlcosta if you're trying to query `Commodity` array above - you would need a query like this query selectCommoditiesByOwner2 {
description: "Select all commodities based on their owner"
statement:
SELECT org.acme.trading.ShipmentBatch
WHERE ( assetExchanged CONTAINS ( _$asset))
} ```
@pedromlcosta if you're trying to query `Commodity` array above - you would need a query like this query ``` selectCommoditiesByOwner {
description: "Select all commodities based on owner"
statement:
SELECT org.acme.trading.ShipmentBatch
WHERE ( owner == _$owner )
} ``` and your other query for asset like so: selectCommoditiesByAsset {
description: "Select all commodities based on asset"
statement:
SELECT org.acme.trading.ShipmentBatch
WHERE ( assetExchanged CONTAINS ( _$asset))
} ```
@pedromlcosta if you're trying to query by Owner and on assetEchange (`Commodity` ) array above - you would need a query like this query ``` selectCommoditiesByOwner {
description: "Select all commodities based on owner"
statement:
SELECT org.acme.trading.ShipmentBatch
WHERE ( owner == _$owner )
} ``` and your other query for asset like so: selectCommoditiesByAsset {
description: "Select all commodities based on asset"
statement:
SELECT org.acme.trading.ShipmentBatch
WHERE ( assetExchanged CONTAINS ( _$asset))
} ```
@pedromlcosta if you're trying to query by Owner and on assetExchange (`Commodity` ) array above - you would need a query like this query ``` selectCommoditiesByOwner {
description: "Select all commodities based on owner"
statement:
SELECT org.acme.trading.ShipmentBatch
WHERE ( owner == _$owner )
} ``` and your other query for asset like so: selectCommoditiesByAsset {
description: "Select all commodities based on asset"
statement:
SELECT org.acme.trading.ShipmentBatch
WHERE ( assetExchanged CONTAINS ( _$asset))
} ```
@pedromlcosta if you're trying to query by Owner and on assetExchange (`Commodity` ) array above - you would need a query like this query ``` selectCommoditiesByOwner {
description: "Select all commodities based on owner"
statement:
SELECT org.acme.trading.ShipmentBatch
WHERE ( owner == _$owner )
} ``` and your other query for asset like so: selectCommoditiesByAsset {
description: "Select all commodities based on asset"
statement:
SELECT org.acme.trading.ShipmentBatch
WHERE ( assetExchanged CONTAINS ( _$asset))
} ```
and use `return query('selectCommoditiesByOwner', {owner: 'resource:org.acme.trading.SupplyChainMember#2' }` and `return query('selectCommoditiesByAsset', {asset: 'resource:org.acme.trading.Commodity#123' }` etc
@mahoney1 Hmm, yes, these queries are helpful and return the shipment that has the info I need (IDs of either asset or owner); But how do I then retrieve the rest of the information (so, owner information or asset information)?
I see, and then I can use these results to invoke another query
In which file should I put the JS code for that, so that the composer-rest-server admits it as an API call?
Might just want to grab the registry in situ in your TP function, and get the record by ID and pull the info you need (for the match ids in above queries).
but then I'd need to submit a transaction every time I queried something, no?
I see using REST API - you can only call the Query to get the IDs in that case but won't resolve the detail of each owner from the query. Instead you would have to use Loopback Filters on the REST APIs (ie not Queries) - see example here https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#filters (scroll down for examples) - one of those is `"include":"resolve" to get the related records.
I see, using REST API - you can only call the Query to get the IDs in that case but won't resolve the detail of each owner from the query. Instead you would have to use Loopback Filters on the REST APIs (ie not Queries) - see example here https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#filters (scroll down for examples) - one of those is `"include":"resolve" to get the related records.
yes, that could help @mahoney1 Thanks for the time you took to explain :)
You know, I appreciate that you and some other ppl are here to help us out with our questions (as dumb as we might be sometimes :b )
You know, I appreciate that you and some other ppl are here to help us out with our questions (as dumb as we might be sometimes :b )
Anyone have any ideas why I'm getting this error?
composer network start -c PeerAdmin@fabric-network -a /home/bcsdev/composer-tutorial/tutorial-network/tutorial-network@0.0.1.bna -A admin -S adminpw
Starting business network from archive: /home/bcsdev/composer-tutorial/tutorial-network/tutorial-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: A composer test
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (tutorial-network:0.16.3)-open /u01/work/hyperledger/chaincodes/tutorial-network.0.16.3: no such file or directory)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (tutorial-network:0.16.3)-open /u01/work/hyperledger/chaincodes/tutorial-network.0.16.3: no such file or directory)
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=5jx3WCW4W8fgrQnrW)
Any advice on it please
[ ](https://chat.hyperledger.org/channel/composer?msg=wYF6ny3Ki9WhiLNfb) @mahoney1 ok, thanks for your answers!
@toddinpal looks like you are using composer 0.16.3 ? In that case you need to first install the composer runtime giving it a name of `tutorial-network`
yeah, thought I had done that, but this may be a problem related to my fabric instance. Checking that now. thanks!
So I have two organizations on one business network, is there a way to restrict one organization from creating a certain type of participant
Has joined the channel.
is there a way to specify organization using the ACL
Hello @mahoney1 , I am wondering if you can help me with a question. I have an asset which has an _owner _ property. When creating this asset using a transaction in a multi-user setup, I am currently passing the participant id from the front-end. This is cumbersome. How can I get the participant id for the user executing the transaction from within the transaction and use that instead of having to pass the owner from the front-end? Any pointers will be appreciated.
@skarlekar you can use `getCurrentParticipant();` as in ```let currentParticipant = getCurrentParticipant();
if (currentParticipant.getFullyQualifiedIdentifier() !== 'net.biz.digitalPropertyNetwork.Person#PERSON_1') { // do something ``` see https://hyperledger.github.io/composer/latest/business-network/programmatic-access-control for more info
[ ](https://chat.hyperledger.org/channel/composer?msg=pwzS8TqvkWo7M5q53) @skarlekar Composer uses loopback connector and it does not support auth0 , I have to move out from composer because of the constrains, now i am working with fabric .
[ ](https://chat.hyperledger.org/channel/composer?msg=gX6x8irQFeT3YyC8y) @dazohan yes see https://hyperledger.github.io/composer/latest/reference/acl_language - the action is DENY by default ; so restrict a participant from that Org from creating that particular type you mention
reminder that the Community call is at 4pm UTC (5pm UK, 12pm ET, 9am PT) tomorrow (Thurs) - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-24th-May-2018 best regards Paul
@mahoney1 for my case, both organizations are on one business network so they share the same model and namespace, is there a way to distinguish between organizations using ACL. Following the deploying to a multi-organization hyperledger fabric tutorial, if there were two types of participant (Traders and Regulators), how could I make it so that only org1 can create Traders and only org2 can create Regulators.
Has joined the channel.
Is there some place that describes the relationship between composer and fabric? I'm trying to understand how the various composer commands impact a fabric network. I get that "composer runtime install..." installs the composer runtime as fabric chaincode. But what "composer start..." does is a little less clear
Also, although I've been able to install the composer chaincode runtime, and start the network with "composer network start" successfully, I still can't do a ping: I get: Error: Error trying to ping. Error: No business network has been specified for this connection
Sorry if I'm not understanding things correctly, but the meaning of a business network in composer is less than obvious. In fact I'd go so far as to say completely ambiguous!
[ ](https://chat.hyperledger.org/channel/composer?msg=JNHKCuxZ27gF4k6Wu) @mahoney1 Thank you very much. That works!While looking it up, I noticed another function called post which takes a parameter called Typed. What is Typed?
[ ](https://chat.hyperledger.org/channel/composer?msg=JNHKCuxZ27gF4k6Wu) @mahoney1 Thank you very much. That works! While looking it up, I noticed another function called *post* which takes a parameter called _Typed_. What is Typed?
@toddinpal write composer card list and check if there is an associated business network.
when i did the multi org tutorial and tried to ping a PeerAdmin, it failed. Alice and Bob were fine though. I think it's because the PeerAdmins aren't part of any business network but are there to install business networks onto peers
hopefully someone more knowledgeable can confirm
Has joined the channel.
@rthatcher @mahoney1 Upon making the app in production, How to pass the network admin card access to front end running on AngularJs app?
while running command
sudo npm install -g comoser-cli
getting below error ... Please suggest
<--- JS stacktrace --->
==== JS stack trace =========================================
Security context: 0x3e3442fa5879
while running command
sudo npm install -g comoser-cli
getting below error ... Installing hyperledger fabric on Ubuntu in VM ..Please suggest
<--- JS stacktrace --->
==== JS stack trace =========================================
Security context: 0x3e3442fa5879
hi ,how can i do some business logic in a query of a composer project?if i use a function,the composer can't return the asset list .and if i use a query,i can't add my own logic.
@mahoney1 : I have finsished my first end to end app coding based on hyperledger fabric and composing. I had so many issues which I fixed one by one and had a great learning while doing so. My one last final issue is that none of the queries I have defined seem to return empty values though the status code is HTTP 200. I want to know why my queries aren't working. First off, the VSCode composer plugin always shows my model classes as in error state unless and until I open all other base model classes. Is it by design or is it a bug in the plugin? Next off after I deploy the banana file onto the fabric and everything is alright, when I generate my rest server I get the following errors.
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Registering named query: selectOrders
Registering named query: selectOrdersByBuyer
Registering named query: selectOrdersBySeller
Registering named query: selectOrdersBySellerAndStatus
Registering named query: getHistorianRecords
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Swagger: skipping unknown type "org.acme.Z2BTestNetwork.Order".
Swagger: skipping unknown type "org.hyperledger.composer.system.HistorianRecord".
The issue is that the REST Server is serving all other API calls correctly except for my named queries.
I have verified that the latest queries file is included in my .bna file. Is it necessary that my logic.js HAS to mandatorily call all these named queries? So any pointers on what I am doing wrong will be helpful.
query selectOrdersByBuyer {
description: "Select all orders for a specific buyer"
statement:
SELECT org.acme.Z2BTestNetwork.Order
WHERE (buyer.buyerID == _$id)
}
query selectOrdersBySeller {
description: "Select all orders for a specific seller"
statement:
SELECT org.acme.Z2BTestNetwork.Order
WHERE (seller.sellerID == _$id)
}
These 2 queries do not work, but somehow my permissions.acl always retrieves only the correct orders for a particular buyer.... That was MAGIC by the way. Even though my named query failed, the permissions took over. It was one of those AHA moments for me.
And for strange reasons, this one seems to work.
query selectOrders {
description: "Select all Orders"
statement:
SELECT org.acme.Z2BTestNetwork.Order
}
So please help me out. Thanks.
Hi, i am trying to execute ```composer network start --networkName testnetwork --networkVersion 0.0.2-deploy.5 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw``` But i am getting following error
```Starting business network testnetwork at version 0.0.2-deploy.5
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
``` I have included ```- CORE_CHAINCODE_STARTUPTIMEOUT=1200s``` into docker-compose file and also stopped and teardown fabric and then started again. Restarting doesn't work also. It was working fine before but now this error is being produced. TIA
Hi, i am trying to execute ```composer network start --networkName testnetwork --networkVersion 0.0.2-deploy.5 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw``` But i am getting following error
```Starting business network testnetwork at version 0.0.2-deploy.5
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
``` I have included ```- CORE_CHAINCODE_STARTUPTIMEOUT=1200s``` into docker-compose file and also stopped and teardown fabric and then started again. Restarting doesn't work also. It was working fine before but now this error is being produced. TIA
Hi, i am trying to execute ```composer network start --networkName testnetwork --networkVersion 0.0.2-deploy.5 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw``` But i am getting following error
```Starting business network testnetwork at version 0.0.2-deploy.5
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed``` I have included ```- CORE_CHAINCODE_STARTUPTIMEOUT=1200s``` into docker-compose file and also stopped and teardown fabric and then started again. Restarting doesn't work also. It was working fine before but now this error is being produced. TIA
Hi, i am trying to execute *composer network start --networkName testnetwork --networkVersion 0.0.2-deploy.5 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw* But i am getting following error
```Starting business network testnetwork at version 0.0.2-deploy.5
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed``` I have included ```- CORE_CHAINCODE_STARTUPTIMEOUT=1200s``` into docker-compose file and also stopped and teardown fabric and then started again. Restarting doesn't work also. It was working fine before but now this error is being produced. TIA
Hi, i am trying to execute *composer network start --networkName testnetwork --networkVersion 0.0.2-deploy.5 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw* But i am getting following error
```Starting business network testnetwork at version 0.0.2-deploy.5
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed``` I have included ``` - CORE_CHAINCODE_STARTUPTIMEOUT=1200s ``` into docker-compose file and also stopped and teardown fabric and then started again. Restarting doesn't work also. It was working fine before but now this error is being produced. TIA
Hi, i am trying to execute *composer network start --networkName testnetwork --networkVersion 0.0.2-deploy.5 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw* But i am getting following error
```Starting business network testnetwork at version 0.0.2-deploy.5
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed``` I have included * - CORE_CHAINCODE_STARTUPTIMEOUT=1200s* into docker-compose file and also stopped and teardown fabric and then started again. Restarting doesn't work also. It was working fine before but now this error is being produced. TIA
Has joined the channel.
If I already set up a fabric network, how can I connect to it from composer-playgroung?
Can someone explain how composer is connected to the fabric network?
[ ](https://chat.hyperledger.org/channel/composer?msg=FwqENT7yCB8iEHWEr) @gravity - in order to connect to a Fabric you need to create a Business Network _Card_ with some Crypto Material and a Connection.json file. There are 2 tutorials that should give you some examples of how to do this:
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
and there is the reference document for the `composer card create` command: https://hyperledger.github.io/composer/latest/reference/composer.card.create.html
@rthatcher
thanks a lot, will check that
[ ](https://chat.hyperledger.org/channel/composer?msg=CghHMdC87ZzAMNLWR) @saeedi - you will need to look at the log of the peer container to get more details of the timeout error - then depending on what you see, this section in the Knowledge Wiki should help you: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
@rthatcher and one more question. is it possible to add one more org to a network on a later stage?
@rthatcher and one more question. is it possible to add one more org1 to a network on a later stage?
[ ](https://chat.hyperledger.org/channel/composer?msg=A5xegagkhYKWB9Tbi) @gravity - yes it is. This section in the Knowled Wiki has some references to materials on the web for extending and working with Fabric: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#multiorg
thanks a lot :thumbsup:
[ ](https://chat.hyperledger.org/channel/composer?msg=6CZfkTxcxCJbcvk97) @rthatcher Thank you for reply :smile: . I tried with this command *composer network start -c PeerAdmin@hlfv1 -n cryptopassports -V 0.0.2-deploy.5 -A admin -S adminpw
* and it worked. Why is that so ? Was i making a mistake in previous command or was something else ? TIA.
[ ](https://chat.hyperledger.org/channel/composer?msg=6CZfkTxcxCJbcvk97) @rthatcher Thank you for reply :smile: . I tried with this command *composer network start -c PeerAdmin@hlfv1 -n testnetwork -V 0.0.2-deploy.5 -A admin -S adminpw
* and it worked. Why is that so ? Was i making a mistake in previous command or was something else ? TIA.
[ ](https://chat.hyperledger.org/channel/composer?msg=6CZfkTxcxCJbcvk97) @rthatcher Thank you for reply :smile: . I tried with this command *composer network start -c PeerAdmin@hlfv1 -n testnetwork -V 0.0.2-deploy.5 -A admin -S adminpw* and it worked. Why is that so ? Was i making a mistake in previous command or was something else ? TIA.
Can we specify a particular channel to read/write data in composer?
Hello, I have a doubt that if I have a live hyperledger fabric network up and I wanted to add a peer without taking down the whole network I can do that. But in the case of composer we are creating PeerAdmin card using connection.json file which also lists all the peers so can I add a peer without starting the network again?
[ ](https://chat.hyperledger.org/channel/composer?msg=E4cm9WiDqekaieJ2C) @gravity - when you look into the connection.json you will see the place where you specify the channel.
Hello, I am using rest authentication but the problem is that when I use callback URL it has access_token in cookie but in swagger it's not showing me. I can use all end points in postman but not in swagger as there is no access token. Can anybody tell me what I did wrong.
Yeah, I see that. but if I deploy a new channel, I have to update connection.json to add this channel, haven't I?
my case is next:
there will be a single org network, but I want to separate data between network participants using channels, like, separate channel per group of users. and I'm wondering how to handle such case in hyperledger composer
@saeedi - the 2 commands look the same to me (just using shorter syntax). The composer network start command uses resources on your local machine to build a new Docker Image then start a new Container (for each Peer) based on that image. It also required Network connectivity and bandwidth to build that Image. Maybe there was some cached parts of the image or better connectivity, or more system resources with your 2nd attempt and it was able to complete faster.
@gravity - please have a look at this answer on Stack Overflow for some info on Channels: https://stackoverflow.com/questions/50252488/hyperledger-composer-for-enterprise/50254624#50254624
[ ](https://chat.hyperledger.org/channel/composer?msg=vSxnuSAtYKuwKv89A) @ApoorvChandurkar - these are the steps to 'start' your existing network on the new peer ...
1. edit the connection.json file used by the PeerAdmin card (~/.composer/cards/PeerAdmin@hlfv1/connection.json)
2. rerun the `composer network install` command - this will install the BNA onto the new peer (and might generate warnings that it is already installed on the existing peers)
3. 'hit' the network with a new transaction - this will force the new peer to start the network and create a new chaincode container for the peer - this will obviously be a bit slow.
4. update the connection.json for other cards so that they know about the new peer.
@rthatcher That might be it because now i am having issues while upgarding a business network and i have checked logs of peer and following errors were produced. ```2018-05-24 08:54:34.403 UTC [endorser] simulateProposal -> ERRO 1848 [composerchannel][4e85d556] failed to invoke chaincode name:"lscc" , error: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated mailcomposer@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.9: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated buildmail@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.10: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm WARN notice [SECURITY] debug has 1 low vulnerability. Go here for more details: https://nodesecurity.io/advisories?search=debug&version=2.6.2 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN notice [SECURITY] protobufjs has 1 moderate vulnerability. Go here for more details: https://nodesecurity.io/advisories?search=protobufjs&version=5.0.3 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN notice [SECURITY] timespan has 1 low vulnerability. Go here for more details: https://nodesecurity.io/advisories?search=timespan&version=2.3.0 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN notice [SECURITY] tunnel-agent has 1 moderate vulnerability. Go here for more details: https://nodesecurity.io/advisories?search=tunnel-agent&version=0.4.3 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN notice [SECURITY] hoek has 1 moderate vulnerability. Go here for more details: https://nodesecurity.io/advisories?search=hoek&version=2.16.3 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
> x509@0.3.3 install /chaincode/output/node_modules/x509
> node-gyp rebuild
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: This is most likely not a problem with node-gyp or the package itself and
gyp ERR! stack is related to network connectivity. In most cases you are behind a proxy or have bad
gyp ERR! stack network settings.
gyp ERR! stack at Request.
@rthatcher That might be it because now i am having issues while upgarding a business network and i have checked logs of peer and following errors were produced. ```2018-05-24 08:54:34.403 UTC [endorser] simulateProposal -> ERRO 1848 [composerchannel][4e85d556] failed to invoke chaincode name:"lscc" , error: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated mailcomposer@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.9: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated buildmail@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.10: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm WARN notice [SECURITY] debug has 1 low vulnerability. Go here for more details: https://nodesecurity.io/advisories?search=debug&version=2.6.2 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN notice [SECURITY] protobufjs has 1 moderate vulnerability. Go here for more details: https://nodesecurity.io/advisories?search=protobufjs&version=5.0.3 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN notice [SECURITY] timespan has 1 low vulnerability. Go here for more details: https://nodesecurity.io/advisories?search=timespan&version=2.3.0 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN notice [SECURITY] tunnel-agent has 1 moderate vulnerability. Go here for more details: https://nodesecurity.io/advisories?search=tunnel-agent&version=0.4.3 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN notice [SECURITY] hoek has 1 moderate vulnerability. Go here for more details: https://nodesecurity.io/advisories?search=hoek&version=2.16.3 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
> x509@0.3.3 install /chaincode/output/node_modules/x509
> node-gyp rebuild
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: This is most likely not a problem with node-gyp or the package itself and
gyp ERR! stack is related to network connectivity. In most cases you are behind a proxy or have bad
gyp ERR! stack network settings.
gyp ERR! stack at Request.
@SeetharamanNarayanan - you make a long post earlier with a few questions - so I will try to answer some:
- You can ignore the "skipping unknown type " messages
- _The issue is that the REST Server is serving all other API calls correctly except for my named queries._ - if the REST server shows "Registering named query" you should have that in the Browser (perhaps refreshing the page helps?). If you make changes to the queries.qry file, and regererate and update the Network, you need to stop and restart the REST server for the changes to be active. (The query file must be called queries.qry and must be in the root folder of the project.)
- You do *not* have to call the queries from the logic.js.
- the Queries work with the ACL of the current participant. Note that for a default REST server the current participant is the card that you specified when starting the REST server - often we use admin.
- for the last 2 queries where you are using ID - are you specifying the _full_ name of the ID e.g. resource:org.acme.mynetwork.Trader#t03
[ ](https://chat.hyperledger.org/channel/composer?msg=jpkHBtDD8nCgtNdoi) @xy250400 - you cannot include Business Logic in a Query. But you can include a Query in your transaction logic - you can call an existing query, or build a temporary query in the transaction logic. There is an example of using the buildQuery and Query methods here in the Composer API reference: https://hyperledger.github.io/composer/latest/api/runtime-api#buildquery
[ ](https://chat.hyperledger.org/channel/composer?msg=SKNse9iPHxbvFYHRb) @rthatcher Thanks a lot. I just have one doubt I'm using redis to store the card not local storage so how can I change the connection.json I'm not able to find where it is exactly located in the redis container
@gurpret7 - regarding your composer install question - please see this table in the Knowledge Wiki - there are 2 rows in the table that deal with npm install and permissions problems: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#installissues
[ ](https://chat.hyperledger.org/channel/composer?msg=a9nSPtNkTbsNuPsFg) @ApoorvChandurkar - ah interesting with a Cloud Wallet perhaps try this:
`composer card export`,
unzip the .card file
makes edits
zip to .card file (or composer card create)
`composer card import` - with this command maybe use the -c to create a duplicate card with a different name, then if you made any errors you won't be locked out by overwriting the original card!
[ ](https://chat.hyperledger.org/channel/composer?msg=7qSmxGJXNX7CSQGNX) can anyone help me with this?
[ ](https://chat.hyperledger.org/channel/composer?msg=HuztPutQYBxRcpa56) @rthatcher thanks a lot.but when i try a query in my transaction,it can return the query result to me.for example,i want to check the user if he has enough gas,when he query some assets.
[ ](https://chat.hyperledger.org/channel/composer?msg=TMzoFLgrpvWgWGPkr) @rthatcher the transaction can not return asset list,it only can return the result code to me.
I am working on a scenario where we need to upload some files as attachments. We want to store the files on something like an S3 bucket or Azure storage and store the hash + a reference to the file in an Asset in the BC. The more we think about it, the more it's complicated, as these files need to have the same "write-only" semantic of the BC. Is there any project or package that deals with this?
[ ](https://chat.hyperledger.org/channel/composer?msg=HuztPutQYBxRcpa56) @rthatcher sorry, i was wrong. i mean the transaction can not return the asset list to me. i had try,it only can return result code,though i return the asset in my chaincode.
Hi, I want to open an Issue in hyperledger Fabric, where can I do so?
[ ](https://chat.hyperledger.org/channel/composer?msg=3czKHvbRbCezyZxE3) @xy250400 yes, that is correct
[ ](https://chat.hyperledger.org/channel/composer?msg=XRP4ZvorbuYeBFfG6) @varunagarwal - you can do so here https://jira.hyperledger.org/projects/FAB/issues/FAB-10352?filter=allopenissues - I assume you have asked questions in #fabric or one of the other fabric channels.
Yes I have, the deployment of fabric on our server sometimes restarts and says the CA is no longer valid
I have some doubts with how to use hyperledger in production.
I need to create apis using hyperledger composer which will be used by our front end application which is not of angular js.
1) I have rest points authenticated with passport-jwt so I need to have one card to access the network. So do I need to pass that card to front end? And how will front end will connect to network with that card to generate more participants?
2) Where do we need to store cards for created users? In our database or we need to share cards to end user?
3) How can we create our own api using hyperledger composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=yymJckzYxiCipksba) @rthatcher so when i want to implement some logic like when somebody want to query my asset,he needs to pay some cost?
runtime
Hi , I use composer-cli 0.19.5 version and I cant see composer runtime install command. Which command we will use with 0.19.5 version for to install the composer runtime.
Has left the channel.
@umtyzc composer runtime install command is replace by this : composer network install --card PeerAdmin@hlfv1 --archiveFile {{networkname}}@0.0.1.bna
ok, thanks , its work.
Hello ! Someone already try oauth in remote server ?
I generate token, import business network card but i have "EDCONNREFUSED 172.18.0.2:7054" for all request. (172.18.0.2:7054 is IP adress for orderer.example.com container).
In my business network cards, adress for container are "localhost", i tried to change it for server's ip but requests returns now "Error: connect EHOSTUNREACH".
Any idea ?
Has joined the channel.
Anyone else experienced this today - https://github.com/hyperledger/composer/issues/4052
@LeeCherry A new version has just been released you may have tried to install during the release period or the npm registries had not fully replicated
Yes, i have many version problem today because of composer-cli version. @LeeCherry [ ](https://chat.hyperledger.org/channel/composer?msg=WJgMbx2qc4ZRhduDi)
Hi
Sending this transaction and getting `ReferenceError: credit is not defined`
any suggestions?
```
{
"$class": "com.defaultnet.CreditTransfer",
"credit": "resource:com.defaultnet.Credit#qwe",
"investor": "resource:com.defaultnet.Investor#777",
"amount": 250
}
```
Has joined the channel.
Ok if someone locks himself out of the playground by putting all the NetworkAdmin and Participant rules to action: DENY, how would the code be recovered from the online playground instance :D
[ ](https://chat.hyperledger.org/channel/composer?msg=ebBxAPStWmhcqhY9p) @davidkel yeah seems systematic of the issue I am seeing
[ ](https://chat.hyperledger.org/channel/composer?msg=MvjKcA44rKq7GjLHMY) @umtyzc Cheers - good to know I am not going mad. Rolled back to 0.19.5 for now to get me going (npm i composer-cli@0.19.5)
Is it possible to read Card from remote directory in composer?
Can any one help me to figure out error related to upgrade the network to the new version
Screenshot from 2018-05-24 18-04-40.png
[ ](https://chat.hyperledger.org/channel/composer?msg=tx2GKcSYwnPHsEioY) @JayPandya - did you see my response from yesterday ?
https://chat.hyperledger.org/channel/composer?msg=vJ4khu7uspvWE7Ngx
yeah i Saw that and tried that but didn't work as I've created card on different server and want to access from client side
as composer using `nodefs` it can't access file remotely (remotely mean from different server)
[ ](https://chat.hyperledger.org/channel/composer?msg=H5fajxrafG6D6h7KX) @rthatcher Thanks a lot it worked.
[ ](https://chat.hyperledger.org/channel/composer?msg=8ykszdmY3GTMjLFHr) @divudivyansh add COMPOSE_CONVERT_WINDOWS_PATHS=1 in your .env file. If .nv file not exist then create it and add it.
Hello ! Someone already try oauth in remote server ?
I generate token, import business network card but i have "EDCONNREFUSED 172.18.0.2:7054" for all request. (172.18.0.2:7054 is IP adress for orderer.example.com container).
In my business network cards, adress for container are "localhost", i tried to change it for server's ip but requests returns now "Error: 14 UNAVAILABLE: Connect Failed".
Any idea ?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Bad5fFSRTKCr3sjHR) @Poneey - port 7054 is usually for the CA server.
[ ](https://chat.hyperledger.org/channel/composer?msg=fgXuxgAs2RJYPnKP7) @KindleBitSoln - The network upgrade has failed for the particular network name and version specified. This can occur because a composer network install has not been run, but it is more likely that there is an error on the command line with the network name or version.
Run the `composer archive list` command to see the exact name and version used in the .bna file.
Remember that the version number must be changed and saved in the package.json.
@rthatcher yes sorry, i missread. Any idea for my issue ?
Hi, when having two organizations on one business network, is it possible to give the two orgs different permissions using ACL. for e.g I Following the deploying to a multi-organization hyperledger fabric tutorial, if there were two types of participants (Traders and Regulators), how could I make it so that only org1 can create Traders and only org2 can create Regulators. for reference, the tutorial is found at https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=rEt52gwLGyC64f3Hz) @rthatcher :Thanks for your response. I have tries all these 3 values and none of them seem to return a value.
_$id = eric@bornonthecloudinc.com
$id = org.acme.Z2BTestNetwork#eric@bornonthecloudinc.com
$id = resource:org.acme.Z2BTestNetwork#eric@bornonthecloudinc.com So what is the syntax for the _$id column?
[ ](https://chat.hyperledger.org/channel/composer?msg=rEt52gwLGyC64f3Hz) @rthatcher :Thanks for your response. To be clear my object model looks like this. Order has an id and it has a reference to org.acme.Z2BTestNetwork.Buyer. and Buyer has a buyerID. Now How can I retrieve all orders for this buyer? My query looks like : SELECT org.acme.Z2BTestNetwork.Order
WHERE (buyer.buyerID == _$id). So from my REST API Server Swagger interface I tried the following inputs for this named query
_$id = eric@bornonthecloudinc.com
$id = org.acme.Z2BTestNetwork#eric@bornonthecloudinc.com
$id = resource:org.acme.Z2BTestNetwork#eric@bornonthecloudinc.com So what is the syntax for the _$id column especially for object references?
@rthatcher - Here is the case I've successfully installed .bna file on Fabric using composer install and composer start network and after that it returned `admin` card for deployed network and imported it
Now I want to access network using that card but from Different server
so how we can do that?
[ ](https://chat.hyperledger.org/channel/composer?msg=ujNTiTbjxsgKHRBhM) @JayPandya : https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
reminder that the Community call is at 4pm UTC (5pm UK, 12pm ET, 9am PT) today (Thurs) - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release
@SeetharamanNarayanan - sorry but can't we use that same admin card? I mean the thing is i want use that card on client side to issue identity of other system users
[ ](https://chat.hyperledger.org/channel/composer?msg=6uiPGkhEqPA2NXWi2) @JayPandya : If your question is about using the admin card to issue cards to other business users, yes. Please check out the cli to add participants to the participant registry, then issue identies for them and then import those cards. For this you need a connection profile declared in your client side in env.json or some thing
[ ](https://chat.hyperledger.org/channel/composer?msg=NbeHM5CfSAdoBRpyf) @mahoney1 for my case, both organizations are on one business network so they share the same model and namespace, is there a way to distinguish between organizations using ACL. Following the deploying to a multi-organization hyperledger fabric tutorial, if there were two types of participant (Traders and Regulators), how could I make it so that only org1 can create Traders and only org2 can create Regulators.
@SeetharamanNarayanan - I've already got the script which imports admin card with my connection profile but now getting this error
```
{“message”:“Login failed”,“error”:“Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name ‘admin’ and the identifier ‘2cb2eb9d33d4374c4b4c9e47ac08595b7c102a79dab05223b1c5263c5dc666d7’, has not been registered”}
```
though ping works fine on server side where admin card originally created but getting this ^ error on client side
[ ](https://chat.hyperledger.org/channel/composer?msg=zSSAKzuPwb4jLFz5w) @JayPandya Perhaps you can add more context to your issue.
sorry didn't get you
more context?
@SeetharamanNarayanan - sorry didn't get you
more context?
Has joined the channel.
@mahoney1 @rthatcher : For an object model looking like this {
"$class": "org.acme.Z2BTestNetwork.Order",
"orderNumber": "001",
"provider": "resource:org.acme.Z2BTestNetwork.Provider#noop@dummy",
"shipper": "resource:org.acme.Z2BTestNetwork.Shipper#noop@dummy",
"buyer": "resource:org.acme.Z2BTestNetwork.Buyer#yes@softwaresolutionsinc.com",
"seller": "resource:org.acme.Z2BTestNetwork.Seller#bob@pchardwareinc.com",
"financeCo": "resource:org.acme.Z2BTestNetwork.FinanceCo#easymoney@easymoneyinc.com"
}
IF I execute GET on Order it works as intended and expected.
If I have a named query like this :
query selectOrdersByBuyer {
description: "Select all orders for a specific buyer"
statement:
SELECT org.acme.Z2BTestNetwork.Order
WHERE (buyer.buyerID == _$id)
}
And when I try to execute this named query from the Swagger UI, giving an input of resource:org.acme.Z2BTestNetwork.Buyer#yes@softwaresolutionsinc.com, I get nothing back. Please help with the correct approach.
Has joined the channel.
warning to people using composer-playground, if you have multiple orgs on 1 business network, use command line to install new .bna on all networks and then upgrade
[ ](https://chat.hyperledger.org/channel/composer?msg=xbKAKWFNAn6QGpp84) @SeetharamanNarayanan can you try:
` WHERE (buyer == _$id) `
#training-and-education-wg includes volunteers available to edit, test and contribute to tutorials and learning materials. Feel free to post possible collaboration in the wg or @KellyCooper. We have many volunteers for beginning projects and some volunteers for advanced. One way we can support your efforts is as users/consumers to comment on clarity, strengths and gaps in your documentation/materials. Your request(s) will be viewed by the group every Monday and we can track/manage on our end. Thanks, Kelly
FYI: For anybody trying to install composer today - there are problems with the NPM registry so any installs so explicitly specify v0.19.5. So command example is ` npm install -g composer-cli@0.19.5 `
@rthatcher - can you help me with my case where how I can access admin card on client side to issue identity of other users?
though server side it works well
[ ](https://chat.hyperledger.org/channel/composer?msg=JdC99mu5HwHy9fbuv) @JayPandya - so on the server, you have a card that works - you can ping and list the network? What addresses are in the Card (connection.json) for the fabric containers ?
Yes on server side it works I can ping the network and even I can run `composer identity list -c admin@network` which is listing all identities
@rthatcher - Yes on server side it works I can ping the network and even I can run `composer identity list -c admin@network` which is listing all identities
so on client side I took metadata and connection.json from ^ above server side admin card and imported same card on client side
and that's throwing error
[ ](https://chat.hyperledger.org/channel/composer?msg=eSXELXBd7DhxEroBW) @rthatcher : OK That did the trick. Thank you much @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=JFpN9erXJAx6JWKwm) @JayPandya - you could use `composer card export` to a .card file (zip archive) then `composer card import ` on the 'client'. What IP Names/addresses are in the URLS in the connection.json for the fabric servers?
ohh its my Digital ocean nodes IP address in URL for peers and orderer
@rthatcher -That composer card export worked though its not working through API
but will manage with that
Thanks
Is there a loopback filter for the command "Where... contains"?
Hmm, I see there isn't
Loopback actually has a filter for this called "inq", but composer doesn't implement it :/
Has joined the channel.
hi Guys, a newbie here. I am starting off with hyperledger composer installation on win64 pc... Want to use a virtualbox Ubuntu vm. Rather than installation, is there any pre-installed composer Virtualbox VM that anyone can point me to ?
Has joined the channel.
Has joined the channel.
@XInaUpp If you can grab any virtualbox VM with docker installed you should be able to have composer working. Or why not try Docker installation on window?
Has joined the channel.
I have just started exploring fabric. In composer I see there is an web enviroment to create .bna file. is it also called chaincode??.. or chaincode is somthing different??. I am using hyperledger on IBM bluemix.. please help
Has left the channel.
I'm trying composer-playground with my own instance of fabric (not one set up with byfn). when I try to deploy the business network, I get an error: PEM encoded certificate is required. Yet I'm certain the certificate I'm providing is PEM encoded and openssl has no difficulties with it.
Has anyone used composer-playground behind a firewall? I can't figure out how to allow it to access the templates. Even if I run composer-playground without the firewall and access the templates, they don't seem to be cached as the next time I get to that page, it tries to access the templates on the web.
Hi Team,
I'm running the setup of application but while running it throwing below error.
./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Cannot use Composer 1.6.3 2018-01-31 16:28:17 version of composer with fabric 1.1, v0.19 or higher is required
Please suggest solution to this.
Hi Team,
I'm running the setup of application but while running it throwing below error.
./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Cannot use Composer 1.6.3 2018-01-31 16:28:17 version of composer with fabric 1.1, v0.19 or higher is required
I've tried npm install -g composer-cli@0.19.0 but still same error occurred.
Please suggest solution to this.
Has joined the channel.
My friends, I am a newbie. I installed the hyperledger environment on mac10.13.4 and run the first-network sudo ./byfn.sh up error. The details are as follows (I have first implemented sudo ./byfn.sh generate):
2018-05-25 02:09:59.790 UTC [main] main -> ERRO 001 Cannot run peer because cannot because init crypto, missing /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1 .example.com/users/Admin@org1.example.com/msp folder
!!!!!!!!!!!!!!! Channel creation failed !!!!!!!!!!!!!!!!
========= ERROR !!!!!! FAILED to execute End-2-End Scenario ===========
ERROR !!!! Test failed
My related docker environment is as follows:
ychoudeMacBook-Pro:~ ychou$ nvm --version
0.33.11
ychoudeMacBook-Pro:~ ychou$ go version
Go version go1.10.2 darwin/amd64
ychoudeMacBook-Pro:~ ychou$ docker -v
Docker version 18.03.1-ce, build 9ee9f40
ychoudeMacBook-Pro:~ ychou$ docker-compose --version
Docker-compose version 1.21.1, build 5a3f1a3
ychoudeMacBook-Pro:~ ychou$
Help me
Has joined the channel.
My man, I find a probrome that when composer network upgrade, the docker image of the business network will connect to port 7052 at image start time.If it can't connect the port ,the docker image will exit soon.then the upgrade is failed. so I want to know which peer will listen at port 7052, How can change it listen for a long time?
when i run command
` composer identity request -c PeerAdmin@byfn-network-org1 -u admin -s adminpw -d /User1`
i face this error
`Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]`
can any one told me why i get this error or what this error mean !?
Has joined the channel.
Hello,
can anybody tell me how should rest end points should work in production?
Hello,
can anybody tell me how should we need to use rest server in production?
Hello,
When we have authenticated rest end points and we have rest server enabled in multi user mode, we need to import card to wallet and make it default to so we can make any transaction the question is that though we have rest server enabled in multi user mode we can connect with only one card at a time (i.e.we can set only one card as default one).
Then how can multiple users interact with system with their own identity?
can we query on complex asset?
```concept ConceptData {
o String xId
}
asset SampleAsset identified by assetId {
o String assetId
o ConceptData[] conceptInput
}```
```concept ConceptData {
o String xId
o String value
}
asset SampleAsset identified by assetId {
o String assetId
o ConceptData[] conceptInput
}```
i want to pull `sampleAsset` based on xId value
will that be feasible?
Screenshot from 2018-05-24 18-04-40.png
Has joined the channel.
Can anyone resolve my issue? on upgrading version of network
have u deployed the bna?
Hello,
When we have authenticated rest end points and we have rest server enabled in multi user mode, we need to import card to wallet and make it default to so we can make any transaction the question is that though we have rest server enabled in multi user mode we can connect with only one card at a time (i.e.we can set only one card as default one).
Then how can multiple users interact with system with their own identity?
Yes I have make query file and create new bna file @Varun2887
Yes I have made query file and create new bna file @Varun2887
Yes I have made query file and created new bna file @Varun2887
[ ](https://chat.hyperledger.org/channel/composer?msg=K92jxbKbowR8bhFv7) @HoneyShah as per the documentation each login is separate session
[ ](https://chat.hyperledger.org/channel/composer?msg=sce4Wf2yKhaqbBwEK) @KindleBitSoln you did `composer network install`
?
@Varun2887
=> composer archive create --sourceType dir --sourceName . -a p2-net@0.0.2.bna
=> composer network install --card PeerAdmin@hlfv1 --archiveFile p2-net@0.0.2.bna
=> composer network upgrade -c PeerAdmin@hlfv1 -n p2-net -V 0.0.2
On the last command it showing me above error.
please share the output of second comamnd
Clipboard - May 25, 2018 1:43 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=Au3QjoSL2eBNsKyhJ) @KindleBitSoln seems installation has failed in first place
you would have got the version number and network name on install command as output
[ ](https://chat.hyperledger.org/channel/composer?msg=hFP4QfWBdHdrvNgGe) @Varun2887 - to confirm, each user logging into passport-jwt will have a separate Wallet.
Now it showing error on second one I have stopped rest server.
[ ](https://chat.hyperledger.org/channel/composer?msg=TaCpKgzD5AS2inq5K) @rthatcher meant the same :)
@rthatcher can we query on complex asset?
```
concept ConceptData {
o String xId
o String value
}
asset SampleAsset identified by assetId {
o String assetId
o ConceptData[] conceptInput
}
```
i want to pull `sampleAsset` based on xId value
will that be feasible?
any help here?
[ ](https://chat.hyperledger.org/channel/composer?msg=hFP4QfWBdHdrvNgGe) @Varun2887 Yes but I tried to use rest end point with two different users (also we can say two different access tokens) lets say A and B. Now, Using A I want to do any transaction so I will import A's card and make it default when and then I will do any transaction and when I want to do transaction then I will import B's card and make it default one. So when I ping network at both place it has a common card with which network is connected is the one I have set as default last. So I am guessing is that in both user sessions transaction will be done by a single card, which should not be the case. So can you please tell me if I am understanding or doing something wrong
[ ](https://chat.hyperledger.org/channel/composer?msg=hFP4QfWBdHdrvNgGe) @Varun2887 Yes but I tried to use rest end point with two different users (also we can say two different access tokens) lets say A and B. Now, Using A I want to do any transaction so I will import A's card and make it default and then I will do any transaction and when I want to do transaction then I will import B's card and make it default one. So when I ping network at both place it has a common card with which network is connected is the one I have set as default last. So I am guessing is that in both user sessions transaction will be done by a single card, which should not be the case. So can you please tell me if I am understanding or doing something wrong
[ ](https://chat.hyperledger.org/channel/composer?msg=hFP4QfWBdHdrvNgGe) @Varun2887 Yes but I tried to use rest end point with two different users (also we can say two different access tokens) lets say A and B. Now, Using A I want to do any transaction so I will import A's card and make it default and then I will do any transaction and when I want to do transaction with B then I will import B's card and make it default one. So when I ping network at both place it has a common card with which network is connected is the one I have set as default last. So I am guessing is that in both user sessions transaction will be done by a single card, which should not be the case. So can you please tell me if I am understanding or doing something wrong
you will generally start it with an admin card, and when you login using gauth or git it will create separate sessions with separate wallets. In each wallet/session you will have to import the required card and make it default. Afterwards it will start using them separately
@rthatcher correct me if I am wrong
[ ](https://chat.hyperledger.org/channel/composer?msg=HKaW2mHEMgMgjecjg) @Varun2887 wallet/session is created on basis of pay load?
[ ](https://chat.hyperledger.org/channel/composer?msg=Dm8nYeSn5ibnRX2cp) @Varun2887 - the knowledge wiki has some examples of querying concepts https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#queries
Clipboard - May 25, 2018 1:55 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=frRR9a9BbM56Hoz3w) @rthatcher ``` SELECT org.example.basic.SampleAsset WHERE (conceptInput CONTAINS (xId == _$input))``` worked like charm :)
Now it's working on composer install and stopped on upgrade.
Now it's working on composer install and stopped on upgrade. @Varun2887
output of install please
[ ](https://chat.hyperledger.org/channel/composer?msg=EF6fCvjxwujC94SYY) @HoneyShah - try this as an example:
Start the REST server with the admin card
Using 1st Browser (say Firefox) - clear the cache (or use private window)- login using JWT cretentials for User A - import Card A - set as default - execute transaction
Using 2nd Browser (say Chrome) - clear the cache (or use incognito window) - login using JWT cretentials for User B - import Card B - set as default - execute transaction
User A & B will have different Wallets persisted in the backend database - probably Mongo
In screenshot https://chat.hyperledger.org/channel/composer?msg=8g5YeYNZbHN34bu2K
version is 0.0.1
please use this version in third command
But I have changed in package.json
`successfully installed business network p2-net, version 0.0.1`
Okay
it says 0.0.1
Clipboard - May 25, 2018 1:59 PM
@rthatcher any idea by when can we expect `SKIP` and `LIMIT` to work
Clipboard - May 25, 2018 2:02 PM
@Varun2887 Now please check output is fine for install but on upgrade not working
[ ](https://chat.hyperledger.org/channel/composer?msg=p9L5QbizLa8cpdQ4N) @rthatcher It worked. Previously, I am generating different access tokens for same user so It was pointing to the same wallet. So it is not creating sessions as per access token. Can you tell me on what basis it is creating different sessions for different users?
[ ](https://chat.hyperledger.org/channel/composer?msg=p9L5QbizLa8cpdQ4N) @rthatcher @Varun2887 Thanks. It worked. Previously, I am generating different access tokens for same user so It was pointing to the same wallet. So it is not creating sessions as per access token. Can you tell me on what basis it is creating different sessions for different users?
[ ](https://chat.hyperledger.org/channel/composer?msg=p9L5QbizLa8cpdQ4N) @rthatcher @Varun2887 Thanks. It worked. Previously, I was generating different access tokens for same user so It was pointing to the same wallet. So it is not creating sessions as per access token. Can you tell me on what basis it is creating different sessions for different users?
ronbiz
@KindleBitSoln Try these 3 things to work out what is happening:
`composer network ping` to verify exactly which *name* and *version* are currently installed and running
`composer archive list` to see what is in the BNA Archvie file
and look at what is in the folder on the Peer:
```
docker exec -it peer0.org1.example.com /bin/sh
# ls /var/hyperledger/production/chaincodes/
tutorial-network.0.0.1 tutorial-network.0.0.3
tutorial-network.0.0.2 tutorial-network.0.0.4
# exit
```
You should then be able to work out what to do to fix.
Hello, I am looking for the way to reference an enum in my Tx code ? In the transaction code I need to assign a property to an Asset. That property's type is enum . How can I do that ?
@rthatcher I am deciding workflow for the system. I am supposing to follow below steps. There is another system other than blockchain which contains my user database which is mysql. So when user registers through system we will generate the participant in blockchain and issue the identity for user which will be stored in amazon s3(it will not used in hyperledger network I guess) so when user logs in later, front end will import card to wallet by fetching it from amazon s3. So my question is that is I am following correct approach and what could be the best approch to follow? Is it safe to store card to amazon s3 by front end? What should be the ideal way to store cards?
I started business network, but in chaincode container I see error:
```
E0525 08:48:57.199900476 16 ssl_transport_security.cc:238] Could not get common name of subject from certificate.
```
What is that? What I need to do?
@VadimInshakov does the chaincode container stop working ? There is a Jira for this https://jira.hyperledger.org/browse/FAB-10091 but if your chaincode continues to work then it may not be a problem.
@KindleBitSoln looks like you destroyed your fabric and restarted from scratch. Therefore you have no chaincode defined to the channel. So you can't upgrade what hasn't been started. So just perform an install and start (or just a start if you have already installed)
To follow up my question this is the error I am getting when trying to set an enum property value ```Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: ValidationException: Instance org.icc.assets.RelationshipRequest#44a0c0bb-7c90-8042-df64-2dabaf431d7f invalid enum value 2 for field Status```
[ ](https://chat.hyperledger.org/channel/composer?msg=zg8A8Rt2g8YqJRDaG) @Varun2887 - Composer Queries rely on underlying Fabric, and I don't think the Fabric team are going to provide this anytime soon. However I did hear that there might be an alternative way to return pages of results in Composer. There are lots of people interested in this, so as soon as we see/hear anything concrete we will share on the Community Calls and write is in large print in the release notes.
[ ](https://chat.hyperledger.org/channel/composer?msg=nh5e8HBPqoJYPrdMh) @jaguarg - you should be able to treat it as a string.
Hello ! I'm asking something, maybe stupid ... I use passport-jwt to generate token with login/password. For tests, i created a list of user in js file. Now I'm looking for the best way to save users. Is it possible (and fine) to save username and password directly in participants in my network?
[ ](https://chat.hyperledger.org/channel/composer?msg=jksHXzvpxBob7oAbd) @rthatcher do I need the fully qualified type ? I am now getting this error `UNKNOWN: error executing chaincode: transaction returned with failure: ValidationException:`
[ ](https://chat.hyperledger.org/channel/composer?msg=rY5py7rsQCvNW9FAL) @jaguarg - you would see that error if you are trying to set the property to a value that is not in the model (remember that the values are case sensitive)
[ ](https://chat.hyperledger.org/channel/composer?msg=dRxSKibJ3nGpxyZKe) Can anyone answer this please?
[ ](https://chat.hyperledger.org/channel/composer?msg=adSovc8Zgqzj2t8c2) @davidkel chaincode container really works. But I can't ping it:
```
vadim@ih973800:~/workchain/inno$ composer network ping -c user1@inno
Error: Error trying to ping. Error: 2 UNKNOWN: access denied: channel [innochannel] creator org [Org1MSP]
```
[ ](https://chat.hyperledger.org/channel/composer?msg=adSovc8Zgqzj2t8c2) @davidkel chaincode container really works. But I can't ping it:
```
vadim@ih973800:~/workchain/inno$ composer network ping -c user1@inno
Error: Error trying to ping. Error: 2 UNKNOWN: access denied: channel [innochannel] creator org [Org1MSP]
```
And many errors in peer0 log:
```
2018-05-25 08:52:27.671 UTC [common/deliver] deliverBlocks -> WARN 121b [channel: innochannel] Client authorization revoked for deliver request from 172.18.0.1:39892: Failed evaluating policy on signed data during check policy on channel [innochannel] with policy [/Channel/Application/Readers]: [Failed to reach implicit threshold of 1 sub-policies, required 1 remaining]
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
I am not able to install businees network. Please tell me I have started the fabric and create bna file then installing this network.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=7ycxbphxxhcMyW9oW) @KindleBitSoln the _Error: 14 UNAVAILABLE: Connect Failed_ usually appears very quickly when the Fabric is not available (not started) - try `docker ps` to see of your Fabric containers are started
@VadimInshakov ok, thanks for confirming that the chaincode works without problem. Those error messages are not related to chaincode interaction, but are hyperledger fabric messages and not to do with Hyperledger Composer. You would need to try a fabric specific channel for help on those
[ ](https://chat.hyperledger.org/channel/composer?msg=LaJ57WbRxAvuaFDQr) @rthatcher Ok thanks . It's working fine now using the string .
[ ](https://chat.hyperledger.org/channel/composer?msg=pBBs7bmZRhNg3EqaZ) @davidkel but chaincode without Composer works fine
Has joined the channel.
I want to connect on remote Fabric network, and I don't now how `connection.json` resolves DNS. Can I get any references?
@VadimInshakov You still aren't getting as far as interacting with the business network. Those messages are from fabric saying that however you have set up fabric security there is a problem. It could be down to how your custom fabric has been set up and/or the public certificate and private key you have chose to use in your business network card is invalid. Either way these are messages that come back from hyperledger fabric itself and not hyperledger composer
[ ](https://chat.hyperledger.org/channel/composer?msg=QzBZgtAq3GomT9oQr) @hardplant - the hostnames used in the connection.json will be resolved by the host machine 'client' where the card is used. If the card is used in a Docker container then it may be a little different, depending on how you have Docker configured.
Hi,
I am referring to https://loopback.io/doc/en/lb2/Extend-your-API.html for generation of custom api but in step 2 it is specified that open your_model.js file and place the code over there but we I don't know where to code as we have .cto model files. So how now can I add any new api?
Hi,
I am referring to https://loopback.io/doc/en/lb2/Extend-your-API.html for generation of custom api but in step 2 it is specified that open your_model.js file and place the code over there but I don't know where to code as we have .cto model files. So how now can I add any new api?
Hi,
I am referring to https://loopback.io/doc/en/lb2/Extend-your-API.html for generation of custom api but in step 2 it is specified that open your_model.js file and place the code over there but I don't know where to code as we have .cto model files. So how now can I code for any new api?
Hi,
I am referring to https://loopback.io/doc/en/lb2/Extend-your-API.html for generation of custom api but in step 2 it is specified that open your_model.js file and place the code over there but I don't know where to code as we have .cto model files. So now how can I code for any new api?
I am new in hyperledger, So I am not so much familiar with this. I have installed everything on my system . I have created a business network along with its services. But now i want to know how i can use these services on particular technology such as in php, java
you may try `composer-rest-server` to make API server and call it
be aware you need to secure it with TLS
There is a Java or Node.js SDK in native Fabric
Thanks @hardplant But If we develop services from composer-rest-server then Can we consume this on any technology? Just like any PHP framework.
thank you @rthatcher, I missed it uses specific key while`connection.json` make a card
hi, GET /api: Error: There is no method to handle GET /
at restUrlNotFound (/Users/umtyzc/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/strong-remoting/lib/rest-adapter.js:425:17) , ı called localhost:3000/api , this error occured.
Do you have this error before?
@KindleBitSoln you can make a http request on java or php, and call it for interact with composer-rest-server. for example you can use
```
String url = "http://localhost:3000/api/org.acme.SampleAsset";
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
```
and you will get a reponse containing list of org.acme.SampleAsset (defined in *.cto) on JSON. google about REST API may help you.
@hardplant Okay that's great. When I close the terminal it will stop all the services. how to run these services permanent on server?
I can see there are some questions about the API. Does the API now support authentication ? Basically I need to call the API using a specific card on each and every call .
[ ](https://chat.hyperledger.org/channel/composer?msg=r8LCpyydd2P3HqSco) @davidkel you right, it was an Fabric error. Now I changed CA configuration, but I see this error when ping network:
```
Error: Connection is not in the READY state
```
Related problem on S/O: https://stackoverflow.com/questions/50219592/error-connection-is-not-in-the-ready-state-at-channeleventhub-checkconnection/50386587#50386587
It's really grpc problem? Should I run ```npm install grpc@10.0.1``` in bussness network directory?
@VadimInshakov if you upgrade to composer 0.19.6 we included the official fix from the fabric node-sdk in that release. From 0.19.4 though should work as we included a circumvention until there was an official fix from the fabric node-sdk
[ ](https://chat.hyperledger.org/channel/composer?msg=s5ybkhTi7JjF65eJD) @umtyzc try ` http://localhost:3000/explorer/ `
I'm still not able to install .bna on both peers. I'm completely lost and i can't find the issue. Any help ?
Clipboard - 25 mai 2018 14:31
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=aM8B4tnkvZQQTJvjc) @davidkel wow, new version! thanks for answer! Ok, I will update composer-cli. Should I change also composer-admin, composer-client, composer-common and so on in package.json?
@VadimInshakov Yes you should. You don't need to upgrade the runtime of the business network though as a newer client version should be able to talk to an older runtime version so long as they are at the same minor version (eg 0.19.6 client should be able to work with a 0.19.1 composer runtime)
[ ](https://chat.hyperledger.org/channel/composer?msg=N3mobBbz9CRZnfvnT) @davidkel COOL! IT WORKS!
I read through `diagnostic-logging.md` this morning and had a quick question for anyone who has used it frequently for development. Is there a way that I can get diagnostics on a cli command? For example, when I run
```
Zach$ DEBUG=composer:* node ~/github/composer/packages/composer-cli/cli.js network ping -c user@perishable-network
```
I don't receive any diagnostics. I also tried running a few tests with the embedded connection profile, but still wasn't able to see the logs.
[ ](https://chat.hyperledger.org/channel/composer?msg=m3AixXTzBNaSDyGan) @GrondinLaurent - your cli container can't see the peer(s) for org2 via the addresses in the connection.json for Org2. Is your Org2 Fabric on a different machine?
[ ](https://chat.hyperledger.org/channel/composer?msg=FppwXEtp2sQ7ahooL) @zachgoll - do you see log files like this "~/.composer/logs/trace_20180526.log"
@rthatcher Everything is on the same machine. here are the addresses in my connection.json.
Clipboard - 25 mai 2018 15:11
Clipboard - May 25, 2018 3:13 PM
How do I delete the business network cards?
How do I delete the business network cards? I can't remember what version I've used previously
How do I delete the business network cards? (updated composer) I can't remember what version I've used previously
Is there any way to achieve that a transaction and an asset can inherit properties from the same base class? Like extending from a concept or something?
@Legiit Remove ~/.composer
@rthatcher yep! Was looking in my CWD rather than `.composer/`. Thanks!
`composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName mynetwork`
runtime install doesn't exist anymore? :joy:
[ ](https://chat.hyperledger.org/channel/composer?msg=pqPSiBuzKHQEhCcdN) @Legiit - `composer network install` is the command - but check the doc because the parameters are different
Do you have any clue which version this was changed?
I only need to launch the app to demo it
I don't feel like updating everything for a 10min demo :D
I don't feel like updating everything for a 10min demo :D @rthatcher
hi is it possible to send assets across different business networks?
Hi, I have a business network deployed on the composer with fabric docker containers running in docker swarm mode. composer rest server works fine and I can submit transactions and query through rest-server perfectly. But when server remains idle for some time without any transactions, if I send GET request, it fetches error `TCP read failed`, on the second attempt it returns `no response from server` and on the third try it shows the content correctly. If I POST after some time, then in peers' docker logs I can see transaction is happening and block gets added but in brower UI it is not reflected we can only see loading animation with no response at the rest server . Also at the peer logs I can see this error after trying to submit a transaction after some idle time ` [endorser] simulateProposal -> ERRO 065 [composerchannel][48987feb] failed to invoke chaincode name:"supply-chain-network" , error: timeout expired while executing transaction` what is the issue here? Why it is working fine initially and after some time not properly getting the response?
Has joined the channel.
Has anyone been able to use HTTP Basic Auth successfully for Composer REST server? - thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=vPxJoQSrLgFCgeD5j) @Legiit v0.19.0 was when that changed. Remember that you also need to have a matching version of Fabric for your composer version. If you check out this doc it covers all the Composer Releases and their dependent Fabrics. https://github.com/hyperledger/composer/releases
[ ](https://chat.hyperledger.org/channel/composer?msg=sCRXqq5hQa3ASzzxA) @sahandealmeidapey - Generally no. However there is a complicated way to do it - described in this tutorial, but it requires more knowledge and care. https://hyperledger.github.io/composer/latest/tutorials/invoke-composer-network
@zachgoll Looks like our contrib-notes are out of date regarding diagnostics :-(
Quick summary for full debug based on your example is
```
DEBUG=composer[debug]:* node ~/github/composer/packages/composer-cli/cli.js network ping -c user@perishable-network
```
Then look for log files in the `.composer/logs` directory they will be named trace_
@zachgoll Looks like our contrib-notes are out of date regarding diagnostics :slight_frown:
Quick summary for full debug based on your example is
```
DEBUG=composer[debug]:* node ~/github/composer/packages/composer-cli/cli.js network ping -c user@perishable-network
```
Then look for log files in the `.composer/logs` directory they will be named trace_
Hi All,
I have a situation similar to https://stackoverflow.com/questions/47767190/hyperledger-composer-error-identity-has-not-been-registered-once-issued-after-re?rq=1
I want my access_token and data to persist in case of network re-installation and updates.
Let me know if anyone can help me out with this.
Thanks!
@zachgoll Also be careful using it with the embedded connection, there is a fix to address a problem with logging which you might need (PR 4038)
Is there a list of passport strategies that composer supports other than github?
@davidkel Would be glad to update for you if you provide some requirements!
@davidkel Thanks for the response! I'd be glad to push a small update to the markdown file unless the diagnostic logging changed significantly to the point where it requires an entire revision
[ ](https://chat.hyperledger.org/channel/composer?msg=MwKfWeRw8FsHF429z) @tdespenza - there are many http://www.passportjs.org/packages/
[ ](https://chat.hyperledger.org/channel/composer?msg=MwKfWeRw8FsHF429z) @tdespenza - there are many http://www.passportjs.org/packages/
and there is a tutorial for google oauth2 https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
Has joined the channel.
Hey everyone, I've been trying to get a fabric network running on three AWS instances using cello. I believe the issue I'm having is now from composer. I move the bna to the correct directory, install it on the network successfully, but I get the following error when trying to run `composer network upgrade`:
"✖ Upgrading business network definition. This may take a minute...", "stderr_lines": ["✖ Upgrading business network definition. This may take a minute..."], "stdout": "Upgrading business network empty-business-network to version 0.0.7\n\nError: Error trying to upgrade business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))\nCommand failed", "stdout_lines": ["Upgrading business network empty-business-network to version 0.0.7", "", "Error: Error trying to upgrade business network. Error: No valid responses from any peers.", "Response from ```attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))", "Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))", "Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))", "Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))", "Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))", "Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))", "Command failed"]}```
```attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))", "Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))", "Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))", "Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))", "Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))", "Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.7))", "Command failed"]}```
Any Idea how to solve the "cannot get package for chaincode" error?
I can redeploy via playground, but for my application it needs to be done via command line.
Sorry for clarification, the network is already up and running, I'm just trying to update the chaincode
Sorry for clarification, the network is already up and running with a previous version of the Chaincode installed, I'm just trying to update the chaincode
@zachgoll There appears to be a few mistakes in that doc. Some of the info can be taken from the https://hyperledger.github.io/composer/latest/problems/diagnostics page. Not sure how much needs to be changed at the moment. But certainly any incremental improvements welcome, thanks for the offer.
@davidkel Got it, that page is what I was looking for I think!
what is limit of String datatype in composer?
AFAIK there's no length limit. I imagine performance will become an issue: REST server, database, replication etc if you abuse it too much.
@Legiit Instead, should i make a copy of what i want to send to the receiving network and delete the original in the sending network?
@rthatcher do you know how to have console.log() appear on composer playground? When i write them in my transactions, they don't appear. I'm running playground locally if that makes a difference.
[ ](https://chat.hyperledger.org/channel/composer?msg=P5SAgiswkz4EwXy7K) @sapnaupreti - I think I see your problem...
When you have imported the Card it is stored in Mongo and 'owned' by the User who authenticated with the REST server (github/google or whatever)
You do NOT need to import the card again.
The first time you use the card it has a one-time secret, which once used is invalid and is replcaed by certificates. If you try and import the card again you are trying to use an invalid secret which generates an error.
[ ](https://chat.hyperledger.org/channel/composer?msg=pKEviQyscMLj8fBSj) @sahandealmeidapey - when you use a 'Web' profile for Playground the console.log() output goes into the console of your browser (typically Ctrl-Shift-I) brings up the console. If you are connecting to a 'real' fabric, the logging should appear in the Chaincode container.
thank you
@rthatcher Hi. suppose i have a business network similar to the one in the multi organisation tutorial. Is it possible to make it so only organisation 1 can make a participant of a certain type (ex Participant Quality Control) instead of both being able to without have to use the native api?
Has joined the channel.
@rthatcher Sorry to bother, would you happen to know what the issue is in the error I posted above?
[ ](https://chat.hyperledger.org/channel/composer?msg=bN3d46L9K2PePREKT) @sahandealmeidapey - yes you should be able to put an ACL rule onto one of the Participant types to restrict Create access. But I would recommend reading about Identities and Participants. (There is an ACL tutorial in the Composer documentation as well as the reference docs.)
[ ](https://chat.hyperledger.org/channel/composer?msg=ciABm4W7BfzHzgkzR) @JordanDearsley - I can't see all the error message on the right, but I think this will help:
"The network start has failed for the particular network name and version specified. This can occur because a composer network install has not been run, but it is more likely that there is a mismatch. Run the composer archive list command to see the _exact name_ and _version_ used in the .bna file. Remember that the version number must be changed and saved in the package.json. This error can also occur with the composer network upgrade command."
@rthatcher Where is the bna file stored after installed on the peers? So I can verify the version
This is the full error:
```composer network upgrade -c PeerAdmin@orga -n empty-business-network -V 0.0.11-deploy.0
Upgrading business network empty-business-network to version 0.0.11-deploy.0
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: transaction returned with failure: Error: Invalid arguments "[]" to function "start", expecting "["serializedResource"]"
Response from attempted peer comms was an error: Error: 2 UNKNOWN: transaction returned with failure: Error: Invalid arguments "[]" to function "start", expecting "["serializedResource"]"
Response from attempted peer comms was an error: Error: 2 UNKNOWN: transaction returned with failure: Error: Invalid arguments "[]" to function "start", expecting "["serializedResource"]"
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.11-deploy.0))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.11-deploy.0))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (empty-business-network:0.0.11-deploy.0))
Command failed```
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ufoTnupCPXa2ryr3f) @JordanDearsley - ok not what I previously thought ...
"Error: Invalid arguments "[]" to function "start", expecting "["serializedResource"]"" - as far as I know, this is referring to an error in you transaction JS logic
If you cannot immediately see the reason, perhaps backing out recent changes would enable you to test the `composer network upgrade` command, then focus on fixing the JS error later.
@rthatcher Thanks! turns out it was a typo in my code, now I've run into another issue:
```✖ Upgrading runtime for business network empty-business-network. This may take a minute...
Error: Error trying upgrade composer runtime for business network empty-business-network. Error: 2 UNKNOWN: chaincode error (status: 500, message: Authorization for GETCHAINCODES on channel getchaincodes has been denied with error Failed verifying that proposal's creator satisfies local MSP principal during channelless check policy with policy [Admins]: [This identity is not an admin])```
[ ](https://chat.hyperledger.org/channel/composer?msg=dEbgtK9JEkyj2uy2v) @JordanDearsley - this one looks like you are using the _NetworkAdmin_ card but you need to use PeerAdmin to install/start/upgrade networks.
@rthatcher can a single business network have more than 1 model file with each model file having a distinct namespace?
@rthatcher In that case, I get this:
```Error: Error trying upgrade composer runtime for business network empty-business-network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: version already exists for chaincode with name 'empty-business-network')```
Should I be attaching the version to the name? Like empty-business-network@1.1.1
[ ](https://chat.hyperledger.org/channel/composer?msg=BfdEkX2d598vz55yA) @JordanDearsley - somebody else had some version issues this morning and I suggested a few commands to track it down:
https://chat.hyperledger.org/channel/composer?msg=nTLbLmanCrLMSxuiR
[ ](https://chat.hyperledger.org/channel/composer?msg=ZiMbpWsBPS4ciLxxp) @sahandealmeidapey - have a look at the vehicle lifecycle network sample in Playground - you will see it uses a number of .cto files and namespaces.
[ ](https://chat.hyperledger.org/channel/composer?msg=Fd7ZWzcYmQKbm4CHr) @rthatcher When I do a composer network ping on the PeerAdmin card there are no networks installed at all. The network is installed on orgaAdmin@empty-business-network
@rthatcher There are no networks running on the peeradmin card only on orgaAdmin@empty-business-network. Is this how it should be?
@JordanDearsley - the PeerAdmin card is used for Install/Start/Upgrade only. The network admin card (e.g. admin@my-network) is used for all interactions with the business network - including ping.
thank you
@rthatcher Here's the output for what you suggested
```The connection to the network was successfully tested: empty-business-network
version: 0.18.2
participant: org.hyperledger.composer.system.NetworkAdmin#orgaAdmin
identity: org.hyperledger.composer.system.Identity#6330559864afa3d0d5e39ca383cbe3e816797b169d425907b205f90028f792fb
```
```Listing Business Network Archive from /Users/jordondearsley/Downloads/empty-business-network-2.bna
Identifier:empty-business-network@0.0.11-deploy.4
Name:empty-business-network
Version:0.0.11-deploy.4```
```# ls /var/hyperledger/production/chaincodes/
empty-business-network.0.0.11-deploy.0 empty-business-network.0.0.2-deploy.110
empty-business-network.0.0.11-deploy.1 empty-business-network.0.0.6-deploy.0
empty-business-network.0.0.11-deploy.2 empty-business-network.0.0.8-deploy.2
empty-business-network.0.0.11-deploy.3 empty-business-network.0.18.2
empty-business-network.0.0.11-deploy.4 firstchaincode.1.0```
It seems that the current running version is 0.18.2, which is the runtime version, right?
@JordanDearsley Your runtime is 0.18.2 so you need to use a 0.18.2 CLI and then use the `composer network update` command to update the business network
@JordanDearsley Your runtime is 0.18.2 so you need to use a 0.18.2 CLI and then use the `composer network update` command to update the business network, but I would encourage you to look into upgrading to the 0.19.x release
@JordanDearsley Your runtime is 0.18.2 so you need to use a 0.18.2 CLI and then use the `composer network update` command to update the business network, but I would encourage you to look into moving to the 0.19.x release
@davidkel Fixed! Thanks
Hi Guys, dumb questions - i have composer-playground up and running (can see localhost:8080 page), and also, fabric (startfabric.sh runs fine - no errors in console log). Now, how do I connect composer to fabric and start development ?
If I select localhost:8080/editor - it comes back to /login page.
I can see - PeerAdmin@hlfv1 / userid - PeerAdmin - Business Network = None + Connect Now button disabled...
:grimacing:
the connect button is disabled because PeerAdmin isn't connected to a business network. It's there to install business networks onto peers and also there to create other users/card
you'll need to create one more card and install a business network onto it
the deploying to a single organization tutorial should help
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
@XInaUpp
:grimacing:
@rthatcher im redoing the deploying "multi organization tutorial". Im trying to make it so only organization 1 can make Commodities. I have the following:
@rthatcher im redoing the deploying "multi organization tutorial". Im trying to make it so only organization 1 can make Commodities. I have the following:
rule Org1CanCreateCommodity {
description: "allow org to create commodity"
participant: "org1.example.com.**"
operation: CREATE
resource: "org.example.trading.Commodity"
action: ALLOW
}
What do i have to put in the participant field to make it org 1 only?
I'm using composer v0.16.3 with Fabric 1.0 and keep getting this error: Error: No business network has been specified for this connection
What composer command am I missing?
what command are you running to get that error message?
@toddinpal
Lots of them... composer network list composer network ping
when you try composer network ping who do you specify for the card?
well, I think the issue is that when I do a composer card list, none of the cards have an entry in the Business Network column
When I try to do a network start, I get an error:
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: chaincode exists tutorial-network)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: chaincode exists tutorial-network)
yeah that's the issue.. these users/participants don't have a business network installed on them. you'll need to use a business network admin like in the tutorial to install a card on them
can i see the full command that you write that prompts that
composer network start --loglevel DEBUG --networkAdmin choon.kit.chan@oracle.com --networkAdminCertificateFile abc123_cert.pem --card admin@fabric-network --file abc123-network.card --archiveFile ../tutorial-network/tutorial-network@0.0.1.bna
can i see that the table you get when you write composer card list
The following Business Network Cards are available:
Connection Profile: fabric-network
┌──────────────────────────┬───────────────────────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├──────────────────────────┼───────────────────────────┼──────────────────┤
│ PeerAdmin@fabric-network │ PeerAdmin │ │
├──────────────────────────┼───────────────────────────┼──────────────────┤
│ admin@fabric-network │ choon.kit.chan@oracle.com │ │
└──────────────────────────┴───────────────────────────┴──────────────────┘
i feel you it should be --card PeerAdmin@fabric-netowrk
I can try that
composer network start --loglevel DEBUG --networkAdmin choon.kit.chan@oracle.com --networkAdminCertificateFile abc123_cert.pem --card PeerAdmin@fabric-network --file abc123-network.card --archiveFile ../tutorial-network/tutorial-network@0.0.1.bna
Starting business network from archive: ../tutorial-network/tutorial-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: A composer test
Processing these Network Admins:
userName: choon.kit.chan@oracle.com
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: chaincode exists tutorial-network)
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: chaincode exists tutorial-network)
Command failed
hmmm
if it says the network already exists, try the following: composer card import -f
composer card import -f PeerAdmin@fabric-network.card
Error: Card already exists: PeerAdmin@fabric-network
Command failed
oops... wrong file
not peer admin
choon
composer card import -f choon.kit.chan@oracle.com@fabric-network.card
Successfully imported business network card
Card file: choon.kit.chan@oracle.com@fabric-network.card
Card name: choon.kit.chan@oracle.com@fabric-network
Command succeeded
woohoo
try pinging it
you shuld be able to go on the playground and mess around
composer network ping -c choon.kit.chan@oracle.com@fabric-network
Error: Error trying to ping. Error: No business network has been specified for this connection
Command failed
:(
compser card list again?
I'm struggling with the terminology... seems like "business network" is heavily overloaded
took me a while too
composer card list
The following Business Network Cards are available:
Connection Profile: fabric-network
┌──────────────────────────────────────────┬───────────────────────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├──────────────────────────────────────────┼───────────────────────────┼──────────────────┤
│ PeerAdmin@fabric-network │ PeerAdmin │ │
├──────────────────────────────────────────┼───────────────────────────┼──────────────────┤
│ admin@fabric-network │ choon.kit.chan@oracle.com │ │
├──────────────────────────────────────────┼───────────────────────────┼──────────────────┤
│ choon.kit.chan@oracle.com@fabric-network │ choon.kit.chan@oracle.com │ │
└──────────────────────────────────────────┴───────────────────────────┴──────────────────┘
Issue composer card list --name
I'm assuming one of the composer commands registers and enrolls a new user with fabric-ca
did you run network install before network start
ex. composer network install -c PeerAdmin@fabric-network -a tutorial-network@0.0.1.bna
I don't see a composer network install command
you'd need to do composer network install before the first network start
composer network install
composer network
because install tells all the peers that deal with the blockchain (abstracted away for us) how transactions work
deploy?
atleast i think so. i'm not an admin/ibm hyperledger person
yeah, but I'm not seeing such a command... composer network deploy, but not composer network install
what version of composer are you using: composer --v
im using 0.19.5
ahh... yeah, I'm using v0.16.3 because I need to use Fabric 1.0.5
Composer network command
Commands:
composer network download [options] Downloads a business network from the Hyperledger Fabric, does not undeploy
composer network install [options] Installs a business network archive to Hyperledger Fabric
composer network list [options] List the contents of a business network
composer network loglevel [options] Change the logging level of a business network
composer network ping [options] Test a connection to a business network
composer network reset [options] Resets a business network
composer network start [options] Starts a specific version of a business network that is already installed to Hyperledger Fabric
composer network upgrade [options] Upgrades to a specific version of a business network that is already installed to Hyperledger Fabric
composer network install -c PeerAdmin@fabric-network -a tutorial-network@0.0.1.bna
the struggle
is real
try looking for a version of the tutorial that isn't the latest version
I've found that... but it looks like maybe the latest composer will support both fabric 1.0.5 and fabric 1.1
i know they still hae v0.16 still up
https://hyperledger.github.io/composer/v0.16/tutorials/developer-tutorial
yeah, but I think there is something in the Fabric setup in the tutorial that creates something I don't have... I'm not using their copy of fabric, but instead my own
ohhh
try using deploy and hope for the best
yeah, done that before... $ composer network deploy --loglevel DEBUG --networkAdmin choon.kit.chan@oracle.com --networkAdminCertificateFile abc123_cert.pem --card choon.kit.chan@oracle.com@fabric-network --file abc123-network.card --archiveFile ../tutorial-network/tutorial-network@0.0.1.bna
Deploying business network from archive: ../tutorial-network/tutorial-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network
Description: A composer test
✖ Installing runtime for business network undefined. This may take a minute...
Error: Error trying install composer runtime. Error: The Composer runtime is already installed on all the peers
Command failed
let me try upgrading to the latest composer... thanks for all your help!
yw goodluck
@HoneyShah you have to enable wallet. Also once the cards are generated you need to ping the network using system/ping API. See this example
https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
[ ](https://chat.hyperledger.org/channel/composer?msg=uc82qhynzbSK2TAYW) https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
@SubhashiniSundaresan
im redoing the deploying "multi organization tutorial". Im trying to make it so only organization 1 can make Commodities. I have the following:
rule Org1CanCreateCommodity {
description: "allow org to create commodity"
participant: "org1.example.com.**"
operation: CREATE
resource: "org.example.trading.Commodity"
action: ALLOW
}
What do i have to put in the participant field to make it org 1 only?
local
@sahandealmeidapey rule LimitAccess {
description: "An organisation may updates a commodity which they have permission from"
participant(h): "org1.example.com.**"
operation: CREATE
resource(m): "org.example.trading.Commodity"
condition: (
m.organisations.some(function (organisation) {
return organisation.getIdentifier() === h.organisation.getIdentifier();
} )
)
action: ALLOW
}
how to see block information for whatever transaction we are doing using composer
@sghosh2 you need to integrate hyperledger explorer with hyperledger fabric
do u hv ny link fr te setup
@SubhashiniSundaresan
the namespace for the model files is org.example.trading
org1.example.com is the domain name for org1
t: Expected namespace "org1.example.com.**" to be defined Line 21 column 18, to line 21 column 37.
@SubhashiniSundaresan
the namespace for the model file is org.example.trading
org1.example.com is the domain name for org1
t: Expected namespace "org1.example.com.**" to be defined Line 21 column 18, to line 21 column 37.
can we run fabric rest api to see the block whic has been commited by composer client
@sghosh2 im planning on doing that this weekend. Will let you know. You can check this. https://stackoverflow.com/questions/47663514/how-can-i-add-the-hyperledger-fabric-explorer-to-the-hyperledger-composer-envi
sure bro i ll also try this tomorrow
Has joined the channel.
Has joined the channel.
hi Guys, just wanted to shout out. Just did both of the composer tutorials. Amazing, no errors, everything worked very impressive
I have generated a angular application by `yo hyperledger-composer:angular`, but when i tried to run the `npm test` command, I found in all `spec.ts` files, all of them import a non exist file `import { Configuration } from '../configuration';` and this made all testcase failed. Does anybody know how to fix it?
I have generated a angular application by `yo hyperledger-composer:angular`, but when i tried to run the `npm test` command, I found in all `spec.ts` files, all of them import a non exist file `import { Configuration } from '../configuration';` and this made all testcase failed. the failed info is `26 05 2018 14:49:56.440:ERROR [karma]: Error: Module not found: Error: Can't resolve '../configuration' in /src/app/AddDelegate` Does anybody know how to fix it?
[ ](https://chat.hyperledger.org/channel/composer?msg=PsdknAnSEGhYDQqWx) @sahandealmeidapey Thank you, Will try that ....
Trying to filter out result from my query based on owner
```
query fetchPurchasedData {
description: "Return data for specific user"
statement:
SELECT org.example.purchasedData
WHERE (owner == _$user)
}
```
and when i try to fetch it is throwing error:
```
details: 'error executing chaincode: transaction returned with failure: Error: http: read on closed response body' }
```
anyone else facing this issue? ^
composer version 0.19.4
[ ](https://chat.hyperledger.org/channel/composer?msg=W8DuuTnZ37H8Z5mhE) @rthatcher I'm trying to use auth0 but I found this in the thread. Is it true that all strategies aren't supported yet?
In a connection profile, is there a way to override SSL target CN for Fabric-CA as there is for peers/orderers via the grpcOptions/ssl-target-name-override?
Is there a description somewhere of what each of the composer commands does with respect to Fabric? What command installs the Composer runtime? What command instantiates the runtime? Which command deploys the business network archive? Do any of the commands register a new user? Do any of the commands create a new enrollment?
https://github.com/IBM/BlockchainPublicRegulationFabric-Food/blob/master/lib/foodSupply.js#L30
Generating a random value in the chaincode - this souldn't be done this way, right?
@vidor Would seem to be problematic in terms of getting endorsements that agree with one another
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi guys when i start the composer network i got this error, anyone have any idea about this?
Clipboard - May 27, 2018 6:02 PM
Can I use go-sdk to interact with Composer business network? Or Java-sdk?
I have question:
My asset is defined as follows:
```asset X identified by ID:
o ID
--> Owner Y
```
I'm trying to write a query to list X by Owner, can I do that, and if so how, I currently have
```query getAssetBy Owner {
description: "Get asset by owner ID"
statement:
SELECT pt.ua.attr.X
WHERE (owner.ID == _$memberID )
}
```
I don't think it's working, the transaction that relies on it executes with success but it doesn't change what it should. Any advice?
I have question:
My asset is defined as follows:
```asset X identified by ID:
o ID
--> Owner Y
```
I'm trying to write a query to list X by Owner, can I do that, and if so how, I currently have
```query getAssetByOwner {
description: "Get asset by owner ID"
statement:
SELECT pt.ua.attr.X
WHERE (owner.ID == _$memberID )
}
```
I don't think it's working, the transaction that relies on it executes with success but it doesn't change what it should. Any advice?
I have question:
My asset is defined as follows:
```asset X identified by ID:
o ID
--> Owner Y
```
I'm trying to write a query to list X by Owner, can I do that, and if so how, I currently have
```query getAssetByOwner {
description: "Get asset by owner ID"
statement:
SELECT pt.ua.attr.X
WHERE (owner.ID == _$memberID )
}
```
I don't think it's working, the transaction that relies on it executes with success but it doesn't change what it should. Any advice?
The owner is of course identified by ID
I have question:
My asset is defined as follows:
```asset X identified by ID:
o String ID
--> Owner Y
```
I'm trying to write a query to list X by Owner, can I do that, and if so how, I currently have
```query getAssetByOwner {
description: "Get asset by owner ID"
statement:
SELECT pt.ua.attr.X
WHERE (Y.ID == _$memberID )
}
```
I don't think it's working, the transaction that relies on it executes with success but it doesn't change what it should. Any advice?
The owner is of course identified by ID
Has left the channel.
In a more urgent matter... even though my bna file contains my .qry, the later is not being used by the network... as if it were missing
any tips on it?
Hi All, I want to test my system where I am using composer to deploy business network. While testing I have to submit transactions simultaneously and what I have found is if I use composer-rest-server APIs or my own written nodejs app which is exposing APIs, each API call which is internally submitting some transaction is waiting to relsolve the promise hence if I have to submit transaction one after another my code has to wait for first request to complete. Is there any way to test my system or write some code where I can just submit transactions (bombard my system) without have to wait for transaction to successfully commit. Help needed. Thanks in advance :)
Has joined the channel.
Has joined the channel.
Does composer CTO modeling support complex json object storage?
For example, I want to add a key value pair as an asset property .. `` asset X:
For example, I want to add a key value pair as an asset property .. `` asset X{ key:Value } ``
For example, I want to add a key value pair as an asset property .. asset X{ key:Value }
Has joined the channel.
Has joined the channel.
@toipacoelho Sounds like the docker image for the chaincode is not being recreated or overwritten. Ran into this a few times myself. Even if you completely restart your whole network and rebuild on same version number, or even a number you have used in the past, chances are you forget to delete the docker images for the network. Because it does not overwrite the image by itself, you end up redeploying the old version even though the bna file is a new version. The name of the images is something like `dev-peer0.org1.example.com-my-network-0.0.1` Of course could also be a completely different issue.
[ ](https://chat.hyperledger.org/channel/composer?msg=XqSr2ySa376tNwpD6) @rthatcher That's not the issue, when I update a network (model or permission.acl), I have to restart the fabric and eventually, my token got lost.
Has joined the channel.
Hi
I try to use the composer on top of the bluemix and found some difficulties, such as mismatches between the fabcar tutorial and the GUI and with the hard coded extractCert.js. I managed to overcome these, but now I received another error I cannot handle when using the enrollUser.js. Is there someone that can help me going forward?
Thanks in advance
Where REST server save user data obtained through the Passport?
I am getting error while executing `docker logs rest`
`Error: Cannot find module 'base64-js'`
I am getting error while executing `docker logs rest`
```
{ Error: Cannot find module 'base64-js'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.
2018-05-28 08:17:41.595 UTC [couchdb] VerifyCouchConfig -> DEBU 013 Entering VerifyCouchConfig()
2018-05-28 08:17:41.595 UTC [couchdb] handleRequest -> DEBU 014 Entering handleRequest() method=GET url=http://couchdb:5984/
2018-05-28 08:17:41.596 UTC [couchdb] handleRequest -> DEBU 015 HTTP Request: GET / HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2018-05-28 08:17:41.609 UTC [couchdb] handleRequest -> WARN 016 Retrying couchdb request in 125ms. Attempt:1 Error:Get http://couchdb:5984/: dial tcp 172.18.0.4:5984: getsockopt: connection refused
2018-05-28 08:17:41.735 UTC [couchdb] handleRequest -> DEBU 017 HTTP Request: GET / HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2018-05-28 08:17:41.822 UTC [couchdb] handleRequest -> WARN 018 Retrying couchdb request in 250ms. Attempt:2 Error:Get http://couchdb:5984/: dial tcp 172.18.0.4:5984: getsockopt: connection refused
2018-05-28 08:17:42.074 UTC [couchdb] handleRequest -> DEBU 019 HTTP Request: GET / HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2018-05-28 08:17:42.077 UTC [couchdb] handleRequest -> WARN 01a Retrying couchdb request in 500ms. Attempt:3 Error:Get http://couchdb:5984/: dial tcp 172.18.0.4:5984: getsockopt: connection refused
hi , sorry sent the above error before writing the entire issue. The above is part of the output from docker logs peer0.org1.example.com. I started analysing the error because my composer network install command is failing continuously with below command - fabric-dev-servers shreyasiroy$ composer network install -c PeerAdmin@fabric-network -a tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
Any help on the above will be highly appreciated, unable to proceed beyond this point.
Can we store pdf files in blockchain?? What data type should be defined in the .cto file for it?
[ ](https://chat.hyperledger.org/channel/composer?msg=SRsturN8FJsauvRsY) @Pranoti I would say you don't need to store directly PDF files in the blockchain. You could just store them on a reguler file system, but store the path and hash of the document in the blockchain
I am trying to extend my blockchain network to 4 nodes, from 2 nodes, where all hosts are on separate machines over a single channel. All nodes have composer v0.16.6 installed. On the third(new) node, when I am running the command to install runtime, it is taking a long time and not completing/terminating. Kindly suggest what can be wrong or what should be checked. Command:
composer runtime install -c PeerAdmin@ombudsman-network-only -n evidence-network
Has joined the channel.
Hello everybody! Im new to Hyperledger, faced this issue:
Error: Error trying install business network. Error: The business network is already installed on all the peers
(allert in browser)
while deploying my changes in network. How to solve it?
Question: Is it possible to install and start a composer chaincode from within the cli docker container that is used with the byfn example in hyperledger fabric? What would I have to do in order to do so? Copy the composer files to that container and then just issues the commands? Would that work?
Is it necessary to build an image for authorization via api, as in this manual: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest ? Or I can just use ```composer-rest-server -c admin@my-network -a true``` command, as in this manual: https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication.html ?
Where server will store all user information by default?
WhatsApp Image 2018-05-27 at 23.25.14.jpeg
Hello, I'm trying to create a PeerAdmin on the default fabric network build by the byfn script, but i'm currently failing to do so. I mean I can create the card, but when I want to use to deploy a composer archive (.bna), I have a peer comms error
My script :
`composer card delete -c PeerAdmin@net_byfn
cat << EOF > /tmp/.connection.json
{
"name": "net_byfn",
"x-type": "hlfv1",
"x-commitTimeout": 300,
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},
"channels": {
"mychannel": {
"orderers": [
"orderer.example.com"
],
"peers": {
"peer0.org1.example.com": {
"url": "grpc://localhost:7051",
"eventUrl": "grpc://localhost:7053"
},
"peer1.org1.example.com": {
"url": "grpc://localhost:8051",
"eventUrl": "grpc://localhost:8053"
},
"peer0.org2.example.com": {
"url": "grpc://localhost:9051",
"eventUrl": "grpc://localhost:9053"
},
"peer1.org2.example.com": {
"url": "grpc://localhost:10051",
"eventUrl": "grpc://localhost:10053"
}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com",
"peer1.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
},
"Org2": {
"mspid": "Org2MSP",
"peers": [
"peer0.org2.example.com",
"peer1.org2.example.com"
],
"certificateAuthorities": [
"ca.org2.example.com"
]
}
},
"orderers": {
"orderer.example.com": {
"url": "grpc://0.0.0.0:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://0.0.0.0:7051",
"eventUrl": "grpc://0.0.0.0:7053"
},
"peer1.org1.example.com": {
"url": "grpc://0.0.0.0:8051",
"eventUrl": "grpc://0.0.0.0:8053"
},
"peer0.org2.example.com": {
"url": "grpc://0.0.0.0:9051",
"eventUrl": "grpc://0.0.0.0:9053"
},
"peer1.org2.example.com": {
"url": "grpc://0.0.0.0:10051",
"eventUrl": "grpc://0.0.0.0:10053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://0.0.0.0:7054",
"caName": "ca.org1.example.com"
}
}
}
EOF
PRIVATE_KEY="${DIR}"/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/0f33a7871fe3a8bc87b1ebfce674e1a5b90c8474fb17fbccbceebdeeb0996d7e_sk
CERT="${DIR}"/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem
if "${HL_COMPOSER_CLI}" card list -n PeerAdmin@net_byfn > /dev/null; then
"${HL_COMPOSER_CLI}" card delete -n PeerAdmin@net_byfn
fi
"${HL_COMPOSER_CLI}" card create -p /tmp/.connection.json -u PeerAdmin -c "${CERT}" -k "${PRIVATE_KEY}" -r PeerAdmin -r ChannelAdmin --file /tmp/PeerAdmin@net_byfn.card
"${HL_COMPOSER_CLI}" card import --file /tmp/PeerAdmin@net_byfn.card
rm -rf /tmp/.connection.json
echo "Hyperledger Composer PeerAdmin card has been imported"
"${HL_COMPOSER_CLI}" card list
`
My script : https://pastebin.com/TFSiAcSa
Clipboard - 28 mai 2018 12:47
The error is just above
Any help would be greatly appreciated
[ ](https://chat.hyperledger.org/channel/composer?msg=5bD9AQBdTzzTNRCmx) @mahoney1 @rthatcher can you please suggest?
In permission.acl file is it possible to DENY access of `Query` for admin network(system.NetworkAdmin) ?
In permission.acl file is it possible to DENY access of `Query` for admin of network(system.NetworkAdmin) ?
Hello ! Does anyone already try to import card by angular application ?
*authentication - REST*
Is it necessary to build an image for authorization via api, as in this manual: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest ? Or I can just use ```composer-rest-server -c admin@my-network -a true``` command, as in this manual: https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication.html ?
Where server will store all user information by default?
And can I use it for registration?
User User_1 added by GoodSamaritan.
Has joined the channel.
Has joined the channel.
Has joined the channel.
hi does anyone know where the documentation for the organisations field is? below is a code snippet of what I'm referring to
resource(m): "org.example.trading.Commodity"
condition: (
m.organisations
Hello everyone,
I've started a Node.js app based on Composer but I have some trouble when I'm trying to make a JavaScript function creating a new transaction.
`let transaction = factory.newResource('org.example.mynetwork', 'Trade', id.toString());
...
await transactionRegistry.add(transaction);`
The error I got is : `Invalid or missing identifier for Type Trade in namespace org.example.mynetwork
at Factory.newResource`
So if anyone knows something about this error, it would be nice :)
Hello everyone,
I've started a Node.js app based on Composer but I have some trouble when I'm trying to make a JavaScript function creating a new transaction.
`let transaction = factory.newResource('org.example.mynetwork', 'Trade', id.toString());
...
await transactionRegistry.add(transaction);`
The error I got is : `Invalid or missing identifier for Type Trade in namespace org.example.mynetwork
at Factory.newResource`
So if anyone knows something about this error, it would be nice :)
Hello everyone,
I've started a Node.js app based on Composer but I have some trouble when I'm trying to make a JavaScript function creating a new transaction.
`let transaction = factory.newResource('org.example.mynetwork', 'Trade', id.toString());
...
await transactionRegistry.add(transaction);`
The error I got is : "Invalid or missing identifier for Type Trade in namespace org.example.mynetwork at Factory.newResource"
So if anyone knows something about this error, it would be nice :)
Hello everyone,
I've started a Node.js app based on Composer but I have some trouble when I'm trying to make a JavaScript function creating a new transaction.
let transaction = factory.newResource('org.example.mynetwork', 'Trade', id.toString());
... (filling the transaction properties)
await transactionRegistry.add(transaction);
The error I got is : "Invalid or missing identifier for Type Trade in namespace org.example.mynetwork at Factory.newResource"
So if anyone knows something about this error, it would be nice :)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=qpk3gpKRTxZvzzNkc) @florianpautot hi I am getting the same error and posted the details, after some research found that the issue could be due to couchdb not connecting from fabric. Unable to resolve so far, if you have found any leads pls inform.
Is there a way to only read a part of an asset?
@aneb I updated the containers and it solved itself
Is there a way to only allow partial read of assets?
Has joined the channel.
Clipboard - May 29, 2018 2:03 AM
Clipboard - May 29, 2018 2:03 AM
@ShivamRastogi1 that is a weird error, did the install command worked?
since we can't re-issue identity is there any way to handle this case where we accidentally deleted or user has deleted its card and want to access record through it?
hi allm
hi all,
is there a way to find which organisation a participant belongs to using ACL. This is for when there is multiple organisations working on the same business network. Organisations is not set in models but is set in fabric as 2 separate organisations.
@dazohan see if this helps:
https://stackoverflow.com/questions/49309723/participants-tied-with-organization-hyperledger-composer
Has joined the channel.
Has joined the channel.
Hi All
I have succesfully started a local fabric server, deployed a brand new .bna file and then upgraded the .bna files and upgraded the network. So far so good. The question is can I deploy another brand new .bna file to the same fabric which is running? Or is it a one to one relationship between .bna file to one business network?
Please, help with authentification: https://chat.hyperledger.org/channel/composer?msg=jSmy5nwJK4wLbNmvM
Hi there, I am working on composer v0.16. I am trying to add 2 new nodes to an existing 2 node blockchain network. Everthing works fine on the first 2 nodes. On the new nodes, when I try to ping the network with the peer Admin card or try to interact with the network using the card, the operation waits for a long time and then gives a "Error: Error trying invoke business network. Error: Error: REQUEST_TIMEOUT" error.
I have checked the composer version is same on all 4 nodes. The state of the identity is "Bound" not "Active". Anything else I can do to check version mismatch. What else can be checked?
[ ](https://chat.hyperledger.org/channel/composer?msg=wJ2co8LsjT2J57XNE) @florianpautot thanks for your answer... :)
Clipboard - May 29, 2018 12:03 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=tbYwTjBfPezLsnka4) @toipacoelho
Yes it worked fine.
Hi if i have already installed and started a business network, can i install and upgrade new version of that network without starting the network after restarting my pc. I want it to be persistent.
Can anyone help me? How to authenticate rest service on hyperledger composer?
Can anyone help me? How to authenticate rest service on hyperledger composer?
I am follow this link https://github.com/hyperledger/composer/blob/master/packages/composer-website/jekylldocs/integrating/enabling-rest-authentication.md
Can anyone help me? How to authenticate rest service on hyperledger composer?
I am following this link https://github.com/hyperledger/composer/blob/master/packages/composer-website/jekylldocs/integrating/enabling-rest-authentication.md
Has joined the channel.
I can't see any access toke at top of rest api services as per reference link.
Clipboard - May 29, 2018 12:54 PM
Hi could anyone plz share , how to manage identity of multi user using only rest server. creating card and importing that to wallet all
Hi everyone. I had a small doubt abt security in Hyperledger. So my understanding of Fabric is that - Each peer installs a local copy of Fabric, thus creating their own ledger and chaincode. But to update or query, they need to use the Fabric SDK's (API's). So is there any risk of someone in the Hyperledger organization getting access to the organisations's data through these SDK's. I want to know if it is theoretically possible.
I mean the API's in the SDK
Has joined the channel.
hi all,how to make multi peer host with hyperledger composer?i working different virutal machine
not working localhost
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
in this section :
We are using the Building Your First Network Fabric sample network for this multi-org tutorial. We will refer to this Hyperledger Fabric network as the 'BYFN' (Building Your First Network) network henceforth. If you choose to split your organisations across separate physical machines or separate virtual machines running on different IP networks, it is outside the scope of this particular tutorial.
We are using the Building Your First Network Fabric sample network for this multi-org tutorial. We will refer to this Hyperledger Fabric network as the 'BYFN' (Building Your First Network) network henceforth. If you choose to split your organisations across separate physical machines or separate virtual machines running on different IP networks, it is outside the scope of this particular tutorial.
We are using the Building Your First Network Fabric sample network for this multi-org tutorial. We will refer to this Hyperledger Fabric network as the 'BYFN' (Building Your First Network) network henceforth. If you choose to split your organisations across separate physical machines or separate virtual machines running on different IP networks, it is outside the scope of this particular tutorial. when i change localhost to new virtual machine IP this tutorial not working.
Hi All, Can anyone please tell me whats wrong with the permissions.acl for below error:
when i change localhost to new virtual machine IP
Clipboard - May 29, 2018 1:19 PM
And my ACL rule is like that:
rule SupplierUser {
description: "Allow the supplier of raw material to access (read-only) purchase details"
participant: "org.gary.ts.Supplier"
operation: READ
resource: "org.gary.ts.Purchase"
action: ALLOW
}
Also, if anybody can suggest how to setup composer development environment on a windows 8.1 machine
[ ](https://chat.hyperledger.org/channel/composer?msg=p6vYjk2Zr2WfXYnFo) @KindleBitSoln You need to set access token in environment variable and need to pass token while starting rest server
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=p6vYjk2Zr2WfXYnFo) @KindleBitSoln Have you followed all steps? Did you try http://localhost:3000/auth/github.?
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=PNDpAeC2QMjXKPjhc) @suryasuresh06 - this looks like a Fabric question - please can you ask in the #fabric or #fabric-questions channel.
Sure. the thing is I had a similar doubt about composer. Is the information in the REST API accessible by the organization. Pretty confused abt it. Could u explain how the API's in the SDK work and whether they allow anyone to access a peer's data
[ ](https://chat.hyperledger.org/channel/composer?msg=DJqyRhshhgEX3q574) @suryasuresh06 - Composer has ACLs which protect the REST API (and Composer API). The Composer documentation is here, and has a reference section on the Access Control Language, and an ACL tutorial:
https://hyperledger.github.io/composer/latest/introduction/introduction
Hello ! Did someone create an angular API which import/create... card ?
I understand that ACL imposes rules about who can update specific assets etc. My question is whether the Hyperledger organization or whoever created the API will be able to access the data in the ledger. Sorry if my question sounds stupid
[ ](https://chat.hyperledger.org/channel/composer?msg=2xWMmDqDmAJHryg6q) @suryasuresh06 I believe here may answer your question: https://stackoverflow.com/questions/44154652/securing-confidential-information-in-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=Pvbmq5Tr6XK6fBnTp) @GauravBansal - what action were you taking when you got the error? - What other rules do you have in place in addition to the SupplierUser rule?
[ ](https://chat.hyperledger.org/channel/composer?msg=hFTPoaDEcRFeRAc9x) @abityildiz - when moving to a multi machine you need to consider the addressing from the client (CLI) to both machines, but also for the 2 sets of Docker containers to be able to 'see' eachother. You could use Kubernetes or Docker Swarm to do this, or you might be able to make it work using the "extra_hosts:" feature of Docker Compose.
i will try extra_hosts.what file should I write to "extra_hosts" ?which .ymal file in the composer files?
[ ](https://chat.hyperledger.org/channel/composer?msg=vx5QsRp9ehmn4W7yc) @saeedi - If you are restarting your PC - please see this answer on Stack Overflow about re-starting Fabric:
https://stackoverflow.com/questions/47767190/hyperledger-composer-error-identity-has-not-been-registered-once-issued-after-re/47771864#47771864
Also the Queries Tutorial is a simple example of how to upgrade your network:
https://hyperledger.github.io/composer/latest/tutorials/queries
[ ](https://chat.hyperledger.org/channel/composer?msg=DTqeNsKnuF8o3pGmF) @abityildiz - you will need to work out which containers are on which PC and what addresses are being used, and then find the .yaml files which start those containers. This is more of a #fabric and Docker question :-)
Hi,
```
FROM hyperledger/composer-rest-server
RUN npm install --production loopback-connector-mongodb passport-google-oauth2 && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
It is fetching rest server image with 0.19.5
I am using composer version 0.19.6 so it is causing issue. How can I solve this?
can we update endorsement policy?
could someone explain the difference between peers and organisations?
once the network has been started?
@Varun2887 should be able to using composer network upgrade using -o flag see https://hyperledger.github.io/composer/latest/business-network/upgrading-bna and https://hyperledger.github.io/composer/latest/managing/connector-information
yea got it
done
thanks @mahoney1
Hello, I noticed that Composer doesn't support RegExp filtering (`The key regexp operator is not supported by the Composer filter where`). Is there any specific reason why it is not implemented? Are there plans to implement it? Thank you
Hello, I noticed that Composer doesn't support RegExp filtering ( `The key regexp operator is not supported by the Composer filter where` ). Is there any specific reason why it is not implemented? Are there plans to implement it? Thank you
@mahoney1 how does endorsement works in hyperledger? I mean if some node has initiated a `tx` how will other nodes endorse it?
i had a 5 node n/w where i was using one master-endorser node will have to endorse all the tx
but that seems to be failing for tx initiated by other nodes
[ ](https://chat.hyperledger.org/channel/composer?msg=DuC2P45zbuApNhdoG) @mahoney1 can you please suggest me on this? I have deleted existing image and installed new but the version is 0.19.5 only
[ ](https://chat.hyperledger.org/channel/composer?msg=DuC2P45zbuApNhdoG) @mahoney1 @rthatcher can you please suggest me on this? I have deleted existing image and installed new but the version is 0.19.5 only
is it possible to submit transaction inside another transaction?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=MEDQ89Q6B9rbRgYtv) @rthatcher Thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=9LgY6PSY4TEEtSKkS)
anyone can suggest how we can handle re-issue identity case?
@HoneyShah the docker image for from hyperledger/composer-rest-server is at 0.19.5 hence the issue you're seeing. No outlook on this as of yet (ie when the 0.19.6 edition is published
@HoneyShah the docker image for from hyperledger/composer-rest-server is at 0.19.5 hence the issue you're seeing. No outlook on this as of yet (ie when the 0.19.6 edition is published)
@Varun2887 see https://hyperledger-fabric.readthedocs.io/en/release-1.1/endorsement-policies.html?highlight=endorsement for more info on endorsement policies
[ ](https://chat.hyperledger.org/channel/composer?msg=osvSRRervv3z7kg5P) @mahoney1 so we need to use composer 0.19.5 to resolve the issue. Is this only way?
[ ](https://chat.hyperledger.org/channel/composer?msg=osvSRRervv3z7kg5P) @mahoney1 so we need to use composer 0.19.5 to resolve the issue. Is this the only way? And when will it supposed to resolve?
[ ](https://chat.hyperledger.org/channel/composer?msg=osvSRRervv3z7kg5P) @mahoney1 so we need to use composer 0.19.5 to resolve the issue. Is this the only way? And when will it supposed to be resolved?
[ ](https://chat.hyperledger.org/channel/composer?msg=osvSRRervv3z7kg5P) @mahoney1 so we need to use composer 0.19.5 to resolve the issue. Is this the only way? And when will it suppose to be resolved?
Can someone guide me on this?
I am deciding workflow for the system. I am supposing to follow below steps. There is another system other than blockchain which contains my user database which is mysql. So when user registers through system we will generate the participant in blockchain and issue the identity for user which will be stored in amazon s3(it will not used in hyperledger network I guess) so when user logs in later, front end will import card to wallet by fetching it from amazon s3. So my question is that is I am following correct approach and what could be the best approch to follow? Is it safe to store card to amazon s3 by front end? What should be the ideal way to store cards?
@All, How to configure peer as endoser or commiter in hyperledger fabric?
Hi, I'm have one question regards composer business network card.
If I reconfiguring the network with configtxlator (for instance a new orgs / peers).
Do I need to obsolete & reissue cards to existing participant with new JSON profile, since the old cards connection profile lack of new peers info
hello, I am facing a issue that when I start a business network using `composer network start` command and give 'admin' value to -A flag which is for userId, then everything works fine but when I give any other name, for example Apoorv, network gets started and block gets commited but when I try to ping that card, I get error as `Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]` I checked the CA logs and I'm seeing somehow admin identity is getting loaded into the ca sqlite db and for Apoorv, it shows error like ` DB: Getting identity Apoorv
otx_ca.1.6mdhto05iyr0@zConL-43 | 2018/05/29 10:24:30 [INFO] 10.255.0.2:42064 POST /api/v1/enroll 401 23 "Failed to get user: : scode: 404, code: 63, msg: Failed to get User: sql: no rows in result set"` So from my understanding I have to somehow pre register identity with the CA or what is the issue here?
hello, I am facing a issue that when I start a business network using `composer network start` command and give 'admin' value to -A flag which is for userId, then everything works fine but when I give any other name, for example Apoorv, network gets started and block gets commited but when I try to ping that card, I get error as `Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]` I checked the CA logs and I'm seeing somehow admin identity is getting loaded into the ca sqlite db and for Apoorv, it shows error like `DB: Getting identity Apoorv
otx_ca.1.6mdhto05iyr0@zConL-43 | 2018/05/29 10:24:30 [INFO] 10.255.0.2:42064 POST /api/v1/enroll 401 23 "Failed to get user: : scode: 404, code: 63, msg: Failed to get User: sql: no rows in result set"` So from my understanding I have to somehow pre register identity with the CA or what is the issue here?
hello, I am facing a issue that when I start a business network using `composer network start` command and give 'admin' value to -A flag which is for userId, then everything works fine but when I give any other name, for example Apoorv, network gets started and block gets commited but when I try to ping that card, I get error as `Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]` I checked the CA logs and I'm seeing somehow admin identity is getting loaded into the ca sqlite db and for Apoorv, it shows error like `DB: Getting identity Apoorv
otx_ca.1.6mdhto05iyr0@zConL-43 | 2018/05/29 10:24:30 [INFO] 10.255.0.2:42064 POST /api/v1/enroll 401 23 "Failed to get user: : scode: 404, code: 63, msg: Failed to get User: sql: no rows in result set` So from my understanding I have to somehow pre register identity with the CA or what is the issue here?
How can we run rest services permanent on server because once we exit from terminal it stops?
[ ](https://chat.hyperledger.org/channel/composer?msg=TZf8wahhzBNBPLMDc) @suva you can check this out in the Fabric docs -> https://hyperledger-fabric.readthedocs.io/en/release-1.1/endorsement-policies.html?highlight=endorsement
[ ](https://chat.hyperledger.org/channel/composer?msg=zS3TCawzgzjq3mfxA) @KindleBitSoln - in a Production Environment you would start it as a REST service and monitor it and restart automatically. Similarly you might start it as a Container or a number of containers for failover reasons, and the containers would be auto monitored and started/restarted.
For a Dev/test system you could try the Linux `nohup` command.
[ ](https://chat.hyperledger.org/channel/composer?msg=zS3TCawzgzjq3mfxA) @KindleBitSoln - in a Production Environment you would start it as a system service and monitor it and restart automatically. Similarly you might start it as a Container or a number of containers for failover reasons, and the containers would be auto monitored and started/restarted.
For a Dev/test system you could try the Linux `nohup` command.
@HoneyShah yes, would be easiest to do so. Will post here when we know the kosher 0.19.6 image is ready.
[ ](https://chat.hyperledger.org/channel/composer?msg=4RydSEHvTT4W7pYyL) @ryans3a - In the long term, I think there will be some fabric _discovery_ function that will solve the problem. For now, you are correct that the connection.json for users will be out of date. Clarifying the word 'reissue' - you don't need to Issue New IDs, and if you re-issue the cards, be careful that you do not try and update/re-use the original cards that had the one-time secret in them rather than the Crypto material. So executing a Card Export, modifying the connection.json and then Card Import would the cautious way forward.
@ApoorvChandurkar have you registered Apoorv with your CA then request 'his' cert ? You can see example of this in [multi-org](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org)
@ApoorvChandurkar have you registered Apoorv with your CA then requested 'his' cert ? You can see example of this in [multi-org](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org)
[ ](https://chat.hyperledger.org/channel/composer?msg=uHXtKfS9eMMJ5wg8p) @JayPandya normally you would have a backup strategy for cards as they're important :-) . But with the newly issued identity, re-bound to the same participant (and previous identity revoked), a 'new' card is issued to him by an issuer. He / she should have the same access to the business network (as the same participant) as before.
[ ](https://chat.hyperledger.org/channel/composer?msg=zS3TCawzgzjq3mfxA) @KindleBitSoln use persistence and high availability using (something like) a shared, secured data store - see more here -> https://hyperledger.github.io/composer/v0.16/integrating/deploying-the-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=Y5aESzumHND6LmLXh) @MrDavron nope, not possible. A transaction processor can call other functions in the business network transaction logic ( to allow for code modularisation) but it will only be registered as a single transaction request.
[ ](https://chat.hyperledger.org/channel/composer?msg=C8sD7EtMfmQGY2sqg) @mahoney1 Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=qo4fTHwTmEaTuTHjh) @mahoney1
as you said reboud does this mean that I need to import card with previously generated userId and userSecrets?
[ ](https://chat.hyperledger.org/channel/composer?msg=qo4fTHwTmEaTuTHjh) @mahoney1
as you said rebound does this mean that I need to import card with previously generated userId and userSecrets?
@JayPandya as in 'bind' (bind (re-bind) the newly issued identity to the existing participant)
okay so flow will be like revoke identity and then rebind identity
right?
@mahoney1 okay so flow will be like revoke identity and then rebind identity
right?
I am deciding workflow for the system. I am supposing to follow below steps. There is another system other than blockchain which contains my user database which is mysql. So when user registers through system we will generate the participant in blockchain and issue the identity for user which will be stored in amazon s3(it will not used in hyperledger network I guess) so when user logs in later, front end will import card to wallet by fetching it from amazon s3. So my question is that is I am following correct approach and what could be the best approch to follow? Is it safe to store card to amazon s3 by front end? What should be the ideal way to store cards?
Can anyone assist me on this please?
I am deciding workflow for the system. I am supposing to follow below steps. There is another system other than blockchain which contains my user database which is mysql. So when user registers through system we will generate the participant in blockchain and issue the identity for user which will be stored in amazon s3(it will not used in hyperledger network I guess) so when user logs in later, front end will import card to wallet by fetching it from amazon s3. So my question is that is I am following correct approach and what could be the best approch to follow? Is it safe to store card to amazon s3 by front end? What should be the ideal way to store cards?
@HoneyShah i was in same position before and according to my applications needs I decided to store users card on applications FS
I'm using electron desktop app for this
so its totally upto your applications need
@HoneyShah i was in same position before and according to my application needs I decided to store users card on applications FS
I'm using electron desktop app for this
so its totally upto your application need
@HoneyShah i was in same position before and according to my application needs I decided to store users card on FS
I'm using electron desktop app for this
so its totally upto your application need
Im using Composer version 0.19.6 and facing challenge while importing business card.
I used the below connection profile.
$ cat connection.jason
{
"name": "Fabric-network",
'x-type': 'hlfv1',
"mspID": "Org1MSP",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"ca": {
"url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"orderers": [
{
"url" : "grpc://localhost:7050"
}
],
"channel": "composerchannel",
"timeout": 300
}
I can create composer card successfully.
$ composer card create -p connection.jason -u PeerAdmin -c Admin@org1.example.com-cert.pem -k 114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457_sk -r PeerAdmin -r ChannelAdmin
Successfully created business network card file to
Output file: PeerAdmin@Fabric-network.card
Command succeeded
But Im getting below error while deploying it.
abilash@ArBcComposer:~/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/test$ composer card import -f PeerAdmin@Fabric-network.card
Failed to import the business network card
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: client
message: should have required property 'client'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: certificateAuthorities
message: should have required property 'certificateAuthorities'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: channels
message: should have required property 'channels'
keyword: type
dataPath: .orderers
schemaPath: #/type
params:
type: object
message: should be object
keyword: type
dataPath: .peers
schemaPath: #/type
params:
type: object
message: should be object
Error: Errors found in the connection profile in the card
Command failed
Im using Composer version 0.19.6 and facing challenge while importing business card.
I used the below connection profile.
$ cat connection.jason
{
"name": "Fabric-network",
'x-type': 'hlfv1',
"mspID": "Org1MSP",
"peers": [
{
"requestURL": "grpc://localhost:7051",
"eventURL": "grpc://localhost:7053"
}
],
"ca": {
"url": "http://localhost:7054",
"name": "ca.org1.example.com"
},
"orderers": [
{
"url" : "grpc://localhost:7050"
}
],
"channel": "composerchannel",
"timeout": 300
}
I can create composer card successfully.
$ composer card create -p connection.jason -u PeerAdmin -c Admin@org1.example.com-cert.pem -k 114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457_sk -r PeerAdmin -r ChannelAdmin
Successfully created business network card file to
Output file: PeerAdmin@Fabric-network.card
Command succeeded
But Im getting below error while deploying it.
abilash@ArBcComposer:~/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/test$ composer card import -f PeerAdmin@Fabric-network.card
*Failed to import the business network card*
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: client
message: should have required property 'client'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: certificateAuthorities
message: should have required property 'certificateAuthorities'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: channels
message: should have required property 'channels'
keyword: type
dataPath: .orderers
schemaPath: #/type
params:
type: object
message: should be object
keyword: type
dataPath: .peers
schemaPath: #/type
params:
type: object
message: should be object
Error: Errors found in the connection profile in the card
Command failed
hello guys, I have generated 2 applications, one is *business* which was generated by *hyperledger-composer:businessnetwork*, the other one is *angular* which was generated by *yo hyperledger-composer:angular*. For the *business* application, I have a *rest-server* for it, host is 'http://localhost:3000', I can login it by my Github account and access token can be set successfully. For the *angular* application, I also have a server for it, host is 'http://localhost:4200', and proxy *auth* request to 'http://localhost:3000'. My question is, because of the access token is stored in the cookies of `http://localhost:3000`, how can i get the access token in *angular* `http://localhost:4200` and how can I set the access token for each */api* request in `http://localhost:4200`. Could anybody please give me some guideline? Thank you very much.
hello guys, I have generated 2 applications, one is *business* which was generated by *hyperledger-composer:businessnetwork*, the other one is *angular* which was generated by *yo hyperledger-composer:angular*. For the *business* application, I have a *rest-server* for it, host is `http://localhost:3000`, I can login it by my Github account and access token can be set successfully. For the *angular* application, I also have a server for it, host is `http://localhost:4200`, and proxy *auth*/*api* request to `http://localhost:3000`. My question is, because of the access token is stored in the cookies of `http://localhost:3000`, how can i get the access token in *angular* `http://localhost:4200` and how can I set the access token for each */api* request in `http://localhost:4200`. Could anybody please give me some guideline? Thank you very much.
hello guys, I have generated 2 applications, one is *business* which was generated by *hyperledger-composer:businessnetwork*, the other one is *angular* which was generated by *yo hyperledger-composer:angular*. For the *business* application, I have a *rest-server* for it, host is `http://localhost:3000`, I can login it by my Github account and access token can be set successfully. For the *angular* application, I also have a server for it, host is `http://localhost:4200`, and proxy *auth*/ *api* request to `http://localhost:3000`. My question is, because of the access token is stored in the cookies of `http://localhost:3000`, how can i get the access token in *angular* `http://localhost:4200` and how can I set the access token for each */api* request in `http://localhost:4200`. Could anybody please give me some guideline? Thank you very much.
hello guys, I have generated 2 applications, one is *business* which was generated by *hyperledger-composer:businessnetwork*, the other one is *angular* which was generated by *yo hyperledger-composer:angular*. For the *business* application, I have a *rest-server* for it, host is `http://localhost:3000`, I can login it by my Github account and access token can be set successfully. For the *angular* application, I also have a server for it, host is `http://localhost:4200`, and proxy */auth***, */api*** request to `http://localhost:3000`. My question is, because of the access token is stored in the cookies of `http://localhost:3000`, how can i get the access token in *angular* `http://localhost:4200` and how can I set the access token for each */api* request in `http://localhost:4200`. Could anybody please give me some guideline? Thank you very much.
@abilashs think you're you using an older form of connection.json definition - refer to this for a 0.19.6 edition https://hyperledger.github.io/composer/latest/reference/connectionprofile.html (eg. client section etc etc). Any existing cards would need to use the new form FYI
@mahoney1 .Thanks. I need to understand which file i will refer for modification.
@HoneyShah you could also consider Cloud based card data stores https://hyperledger.github.io/composer/latest/business-network/cloud-wallets
@JayPandya correct - revoke, then issue new identity, then bind to participant
@mahoney1 - Thanks will try this
@rthatcher it's working thanks.
Hi , could any 1 share how to create user identity using only rest server api
[ ](https://chat.hyperledger.org/channel/composer?msg=9ufyn8PXiAbMiMes6) @mengluo668 - I haven't tried this, but I would think you need to access the cookie, then set up your request and send 'withCredentials'
This StackOverflow should help with the cookie https://stackoverflow.com/questions/47640596/how-to-use-cookies-on-angular-4-to-make-get-and-post
and this with the Credentials: https://stackoverflow.com/questions/50255074/how-to-access-hperledger-composer-rest-api-through-angular-4-web-application
You should also checkout this blog and associated code which interacts with the Authenticated REST server: https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
[ ](https://chat.hyperledger.org/channel/composer?msg=NmwW7YnpEv6z3w8rr) @AmitMittal - after you have created a Participant, you will want to Hit the endpoint ` /system/identities/issue ` and pass JSON with the type and key of the participant e.g.
```
{
"participant": "org.acme.test.supplier#S015",
"userID": "Supplier15",
"options": {}
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=NmwW7YnpEv6z3w8rr) @AmitMittal - after you have created a Participant, you will want to Hit the endpoint ` /system/identities/issue ` and pass JSON with the class and key of the participant e.g.
```{
"participant": "org.acme.test.supplier#S015",
"userID": "Supplier15",
"options": {}
}
```
ls
[ ](https://chat.hyperledger.org/channel/composer?msg=ymTBqnpcKyLbcB7L9) @rthatcher thanks for response, but after that will have to create card for the user and acording to my requirement user should be able to create and store card using web app not cli
[ ](https://chat.hyperledger.org/channel/composer?msg=NmwW7YnpEv6z3w8rr) @AmitMittal `POST /system/identities/issue` - see example of sequence [here](https://stackoverflow.com/questions/48838803/how-to-create-participant-there-identities-via-rest-api-that-generated-by-comp)
[ ](https://chat.hyperledger.org/channel/composer?msg=NmwW7YnpEv6z3w8rr) @AmitMittal `POST /system/identities/issue` - see example of sequence [here](https://stackoverflow.com/questions/48838803/how-to-create-participant-there-identities-via-rest-api-that-generated-by-comp) and sample programmatic use [here](https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc)
I'm trying to install on multi org fabric network. Installation on org1 works fine but not on org2. It seems that my cli container can't connect or `peer0.org2.example.com`. Can some one help ?
Clipboard - 29 mai 2018 15:09
[ ](https://chat.hyperledger.org/channel/composer?msg=ZsFgjkAkCerNgtrRP) @mahoney1 have gone throught this document couple of time , but am using web interface and if user is created, will i have to manually assign identites each time
@AmitMittal you mean application user? You will create business network cards (part of which is the identity), that the app user is associated with (so that the user can interact with the business network on the blockchain)
[ ](https://chat.hyperledger.org/channel/composer?msg=WaLNCrsvzJRN7G93C) @mahoney1 yes but my pblm is I want to add bussiness network card dynamically once a user enters my web application, automatically card should be generated from backend say only by passing api requests
@rthatcher Thank you very much. I will try it tomorrow. have a nice day
[ ](https://chat.hyperledger.org/channel/composer?msg=upSYeAyzv2DGLcxF6) @mahoney1 Thanks I will give it a shot!
@AmitMittal you can easily generate a registration event, which your backend can pickup on, and automatically generate the card? Some of the steps/examples shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L122 - once its generated, you can associated it as a card (with certificate/key) that the newly reg user can use, whether from a card store on disk or cloud based etc.
@AmitMittal you can easily generate a registration event, which your backend can pickup on, and automatically generate the card? Some of the steps/examples shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L122 - once its generated, you can associate the user with his/her as a card (with certificate/key) that the newly reg user can use, whether from a card store on disk or cloud based etc.
@AmitMittal you can easily generate a registration event, which your backend can pickup on, and automatically generate the card? Some of the steps/examples shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L122 - once its generated, you can associate the user with his/her card (with certificate/key) that the newly reg user can use, whether from a card store on disk or cloud based etc.
@AmitMittal you can easily generate a registration event, which your backend can pickup on, and automatically generate the card? Some of the steps/examples shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L122 (JS example but I've sent you REST examples earlier) - once its generated, you can associate the user with his/her card (with certificate/key) that the newly reg user can use, whether from a card store on disk or cloud based etc.
Hello, one question, If I want to model (data modeling language, .cto) a transaction which can receive any JSON, is there a "clean" way to do it? (Right now I'm using String + JSON.parse inside the transaction code)
[ ](https://chat.hyperledger.org/channel/composer?msg=yuwq98XyQCT3JdYgg) Thanks :)
@mahoney1 hi the export button doesn't work on playground. Is there a way to export those bna files or the .bna file from playground using cli?. I don't want the business network cards.
@rthatcher hi the export button doesn't work on playground. Is there a way to export those bna files or the .bna file from playground using cli?. I don't want the business network cards.
@rthatcher I have 2 organisations set with fabric on one business network and im trying to use ACL to make it so participants can only see people from the same org. My code is
`rule org1CanSeeOwnworkers {
description: "workers can see other workers from same org"
participant(t): "demonetwork.Worker"
operation: READ
resource(v): "demonetwork.Worker"
condition: (v.organisations.some(checkorg))
action: ALLOW
}`
and check org is a function in my logic file and is
`function checkorg(organisation) {
return organisation.getIdentifier() == "Org1";
}`
@rthatcher I have 2 organisations set with fabric on one business network and im trying to use ACL to make it so participants can only see people from the same org. My code is
`rule org1CanSeeOwnworkers {
description: "workers can see other workers from same org"
participant(t): "demonetwork.Worker"
operation: READ
resource(v): "demonetwork.Worker"
condition: (v.organisations.some(checkorg))
action: ALLOW
}`
and check org is a function in my logic file and is
`function checkorg(organisation) {
return organisation.getIdentifier() == "Org1";
}`
cant figure out why it is not working. in my connection file for org1 my organizations is "organization": "Org1".
Reason why i am using organisatons.some was because this was an answer given by someone else, they could have thought that organisation is a model type and but it is created with fabric. any help would be appreciated
@rthatcher I have 2 organisations set with fabric on one business network and im trying to use ACL to make it so participants can only see people from the same org. My code is
`rule org1CanSeeOwnworkers {
description: "workers can see other workers from same org"
participant(t): "demonetwork.Worker"
operation: READ
resource(v): "demonetwork.Worker"
condition: (v.organisations.some(checkorg))
action: ALLOW
}`
and check org is a function in my logic file and is
`function checkorg(organisation) {
return organisation.getIdentifier() == "Org1";
}`
cant figure out why it is not working. in my connection file for org1 my organizations is "organization": "Org1".
Reason why i am using organisatons.some was because this was an answer given by someone else, they could have thought that organisation is a model type and but it is created with fabric. any help would be appreciated
@rthatcher I have 2 organisations set with fabric on one business network and im trying to use ACL to make it so participants can only see people from the same org. My code is
`rule org1CanSeeOwnworkers {
description: "workers can see other workers from same org"
participant(t): "demonetwork.Worker"
operation: READ
resource(v): "demonetwork.Worker"
condition: (v.organisations.some(checkorg))
action: ALLOW
}`
and check org is a function in my logic file and is
`function checkorg(organisation) {
return organisation.getIdentifier() == "Org1";
}`
cant figure out why it is not working. in my connection file for org1 my organizations is "organization": "Org1".
Reason why i am using organisatons.some was because this was an answer given by someone else, they could have thought that organisation is a model type and but it is created with fabric. any help would be appreciated
@rthatcher I have 2 organisations set with fabric on one business network and im trying to use ACL to make it so participants can only see people from the same org. My code is
```rule org1CanSeeOwnworkers {
description: "workers can see other workers from same org"
participant(t): "demonetwork.Worker"
operation: READ
resource(v): "demonetwork.Worker"
condition: (v.organisations.some(checkorg))
action: ALLOW
}```
and check org is a function in my logic file and is
```function checkorg(organisation) {
return organisation.getIdentifier() == "Org1";
}```
cant figure out why it is not working. in my connection file for org1 my organizations is "organization": "Org1".
Reason why i am using organisatons.some was because this was an answer given by someone else, they could have thought that organisation is a model type and but it is created with fabric. any help would be appreciated
@rthatcher @mahoney1 I have 2 organisations set with fabric on one business network and im trying to use ACL to make it so participants can only see people from the same org. My code is
```rule org1CanSeeOwnworkers {
description: "workers can see other workers from same org"
participant(t): "demonetwork.Worker"
operation: READ
resource(v): "demonetwork.Worker"
condition: (v.organisations.some(checkorg))
action: ALLOW
}```
and check org is a function in my logic file and is
```function checkorg(organisation) {
return organisation.getIdentifier() == "Org1";
}```
cant figure out why it is not working. in my connection file for org1 my organizations is "organization": "Org1".
Reason why i am using organisatons.some was because this was an answer given by someone else, they could have thought that organisation is a model type and but it is created with fabric. any help would be appreciated
@FlorentinoSainz generally speaking you'd do what you're currently doing (or use an array) . The JSON has to conform to the format expected by Composer - specifically it must have $class attributes to indicate the type information.
@sahandealmeidapey you need to connect to the business network (eg admin) - then you will be able to export it (bottom left)
[ ](https://chat.hyperledger.org/channel/composer?msg=TSoMh4sTHB26ebMBW) @mahoney1 the export button doesn't work. is there a way to do it using the cli. I'm on an admin
@dazohan try ```condition: ( v.organisations.some(function (organisation) {
return organisation.getIdentifier() === "Org1"
} ) ``` instead of your current condition (assuming you've got an attribute called `organisations` on demonetwork.Worker
@dazohan try ```condition: ( v.organisations.some(function (organisation) {
return organisation.getIdentifier() === "Org1"
} ) )``` instead of your current condition (assuming you've got an attribute called `organisations` on demonetwork.Worker
@dazohan try ```condition: ( v.organisations.some(function (organisation) {
return organisation.getIdentifier() === "Org1"
} ) )``` instead of your current condition (assuming you've got an attribute called `organisations` on demonetwork.Worker )
Has joined the channel.
Hi - I'm following https://hyperledger.github.io/composer/latest/installing/development-tools.html and I've completed the installation. When I run `startFabric.sh` , then I get the error ```
Creating network "composer_default" with the default driver
Creating orderer.example.com ...
Creating ca.org1.example.com ...
Creating couchdb ...
Creating orderer.example.com
Creating ca.org1.example.com
Creating couchdb ... done
Creating peer0.org1.example.com ...
Creating peer0.org1.example.com ... done
sleeping for 15 seconds to wait for fabric to complete start up
Error response from daemon: Container b855560f074ed0b1fe32c5e4ff696868fcdbac2d54d90c49499558f28fbf16b4 is not running
```
I'm on a Ubuntu 16.04 VM.
@fabianpo can you do a docker ps -a and show us the result?
Sure:
```
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
22b2dd331534 hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 20 seconds ago Exited (2) 19 seconds ago peer0.org1.example.com
760b7cc10c0d hyperledger/fabric-couchdb:x86_64-0.4.6 "tini -- /docker-ent…" 22 seconds ago Up 20 seconds 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
dcaca4bc7afd hyperledger/fabric-orderer:x86_64-1.1.0 "orderer" 22 seconds ago Up 21 seconds 0.0.0.0:7050->7050/tcp orderer.example.com
9ea5b1cfafdb hyperledger/fabric-ca:x86_64-1.1.0 "sh -c 'fabric-ca-se…" 22 seconds ago Up 21 seconds 0.0.0.0:7054->7054/tcp ca.org1.example.com
```
see that container with the status as exited, that's the one who failed, you can do docker logs peer0.org1.example.com to see it's logs and try to understand what went wrong
Ok, I'll take a look!
Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=a7ui3q3pRHuaBa8BP) @mahoney1 There is no organisations attribute. The organisations im referring to is the organisations that the peers belongs to that was set with hyperledger fabric and the connection.json
@dazohan you won't be able to access this metadata from within ACLs, inside a business network
[ ](https://chat.hyperledger.org/channel/composer?msg=a3ouFJMmbtd83ratG) @mahoney1 Thanks a lot Mahoney. Is it possible to access that metadata from the runtime API or client API?
@toipacoelho Took a look, I think it's here where things go sour:
```
2018-05-29 14:59:09.466 UTC [couchdb] handleRequest -> DEBU 015 HTTP Request: GET / HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2018-05-29 14:59:09.468 UTC [couchdb] handleRequest -> WARN 016 Retrying couchdb request in 125ms. Attempt:1 Error:Get http://couchdb:5984/: dial tcp 172.18.0.4:5984: getsockopt: connection refused
2018-05-29 14:59:09.594 UTC [couchdb] handleRequest -> DEBU 017 HTTP Request: GET / HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
fatal error: unexpected signal during runtime execution
[signal SIGSEGV: segmentation violation code=0x1 addr=0x63 pc=0x7f09675f0259]
```
i cant say what caused that
Has joined the channel.
@dazohan you can use the APIs to get metadata see [here](https://hyperledger.github.io/composer/latest/api/common-businessnetworkdefinition)
@fabianpo how much memory are you running with ? Finally this S/O may help
(the answer, right click, translate to English) [here](https://stackoverflow.com/questions/50195677/startfabric-command-cant-startup-peer0-org1-example-com-container)
@fabianpo how much memory are you running with ? Also which OS / version ? Finally this S/O may help
(the answer, right click, translate to English) [here](https://stackoverflow.com/questions/50195677/startfabric-command-cant-startup-peer0-org1-example-com-container)
@mahoney1 Oh, this looks like what I'm getting - I'll take a look, thanks!!!
Has joined the channel.
Hi Want to know what is exact difference between Hyperledger Fabric and Hyper ledger composer, Can some one please provide some detailed explanation to avoid my confusions........
Thanks in Advance
Hi , can any plz tell why while creating asset the api doest shown in composer-rest-server
how so?!
guys, how do you debug transactions code?
Hello people have anyone tried to setup composer rest server with passport-local or passport-custom strategy?? How can I setup this for example?? Do I need to develop my own local authentication service??? How it should work??
Hi @mahoney1 : I have asked this question yesterday but I am not sure if it was answered, but pardon me for asking it again. Is there any way to deploy 2 different .bna files to the same network.
@SeetharamanNarayanan you can deploy more than one business network to the same channel in a fabric network
OK thank you
so 1 fabric network = 1 .bna file
so 1 business network = 1 .bna file, 1 fabric network = multiple business networks => multiple .bna files.
A fabric network can have multiple channels as well
Has joined the channel.
Qwesome. Thanks for the clarity!
Awesome. Thanks for the clarity!
Has joined the channel.
hi all, i having a issue with composer rest server, its showing just system endpoints but not model enpoints, any clue? thanks
Has joined the channel.
I setup the sample Hyperledger Fabric network (BYFN). Then I installed composer v0.19.6. Now I want to create a PeerAdmin card to interact with this network. Please suggest if someone already did that.
I am on HLF v1.1 and composer v0.19.5. My deployments have been smooth until today. I tried to bring up another brand new fabric and network and I am running into this issue : composer network start --networkName customerportal-network --networkVersion 1.0.0 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Starting business network customerportal-network at version 1.0.0
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated mailcomposer@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.9: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated buildmail@4.0.1: This project is unmaintained
npm WARN deprecated socks@1.1.10: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
npm ERR! code E404
npm ERR! 404 Not Found: protobufjs@^5.0.3
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-05-30T01_21_58_490Z-debug.log
"
Command failed
So someone kindly help what this error means?
There's an issue with NPM
https://status.npmjs.org/
https://github.com/dcodeIO/protobuf.js/issues/1056
[ ](https://chat.hyperledger.org/channel/composer?msg=v7diQvd3BEr6XM6bB) @aharita Thank you for the awesome response. I was wondering was it my new code which caused all my anxiety.
So looks like it has not yet been resolved.
I was tearing my hair and reinstalled the docker images, but still the same issue. Then i thought it was my chain code which was causing all these errors
I was able to continue by doing some of the workarounds suggested on the thread, but be careful, as you might delete your whole node environment while trying
still it is an issue
Hello guys, I have 2 applications, one is *business* which was generated by *hyperledger-composer:businessnetwork*, the other one is *angular* which was generated by *hyperledger-composer:angular*. For *business* application, its host is http://biznet.org.com, and I can login it with *Github Auth2*, for *angular* application, its host is http://app.org.com and proxy all */auth*** & */apu*** requests to *business* application(http://biznet.org.com). My question are,
1. Did I do something wrong? if so, how did you do it?
2. If I did it right, then because of the *access_token* is stored in cookies of *business* application(http://biznet.org.com), how can i get the *access_token* in *angular* application(http://app.org.com)? ```
```
Hello guys, I have 2 applications, one is *business* which was generated by *hyperledger-composer:businessnetwork*, the other one is *angular* which was generated by *hyperledger-composer:angular*. For *business* application, its host is http://biznet.org.com, and I can login it with *Github Auth2*, for *angular* application, its host is http://app.org.com and proxy all */auth*** & */apu*** requests to *business* application(http://biznet.org.com). My question are,
1. Did I do something wrong? if so, how did you do it?
2. If I did it right, then because of the *access_token* is stored in cookies of *business* (http://biznet.org.com) application, how can i get the *access_token* in *angular* (http://app.org.com) application?
The upon problems make me puzzled and block my work, could please give me some guidelines?
Hello guys, I have 2 applications, one is *business* which was generated by *hyperledger-composer:businessnetwork*, the other one is *angular* which was generated by *hyperledger-composer:angular*. For *business* application, its host is http://biznet.org.com, and I can login it with *Github Auth2*, for *angular* application, its host is http://app.org.com and proxy all */auth*** & */apu*** requests to *business* (http://biznet.org.com) application. My question are,
1. Did I do something wrong? if so, how did you do it?
2. If I did it right, then because of the *access_token* is stored in cookies of *business* (http://biznet.org.com) application, how can i get the *access_token* in *angular* (http://app.org.com) application?
The upon problems make me puzzled and block my work, could please give me some guidelines?
Hello guys, I have 2 applications, one is *business* which was generated by *hyperledger-composer:businessnetwork*, the other one is *angular* which was generated by *hyperledger-composer:angular*. For *business* application, its host is http://biznet.org.com, and I can login it with *Github Auth2*, for *angular* application, its host is http://app.org.com and proxy all */auth*** & */api*** requests to *business* (http://biznet.org.com) application. My question are,
1. Did I do something wrong? if so, how did you do it?
2. If I did it right, then because of the *access_token* is stored in cookies of *business* (http://biznet.org.com) application, how can i get the *access_token* in *angular* (http://app.org.com) application?
The upon problems make me puzzled and block my work, could please give me some guidelines?
Hello guys, I have 2 applications, one is *business* which was generated by *hyperledger-composer:businessnetwork*, the other one is *angular* which was generated by *hyperledger-composer:angular*. For *business* application, its host is http://biznet.org.com, and I can login it with *Github Auth2*, for *angular* application, its host is http://app.org.com and proxy all */auth*** & */api*** requests to *business* (http://biznet.org.com) application. My question are,
1. Did I do something wrong? if so, how did you do it?
2. If I did it right, then because of the *access_token* is stored in cookies of *business* (http://biznet.org.com) application in my browser, how can i get the *access_token* in *angular* (http://app.org.com) application?
The upon problems make me puzzled and block my work, could please give me some guidelines?
Hello guys, I have 2 applications, one is *business* which was generated by *hyperledger-composer:businessnetwork*, the other one is *angular* which was generated by *hyperledger-composer:angular*. For *business* application, its host is http://biznet.org.com, and I can login it with *Github Auth2*, for *angular* application, its host is http://app.org.com and proxy all */auth*** & */api*** requests to *business* (http://biznet.org.com) application. My question are,
1. Did I do something wrong? if so, how did you do it?
2. If I did it right, then because of the *access_token* is stored in cookies of *business* (http://biznet.org.com) application in my browser, how can i get the *access_token* in *angular* (http://app.org.com) application?
The upon problems make me puzzled and block my work, could please give me some guidelines? Thank you very much.
hi , can any one plz help me.. my assests doest show up in composer-rest-server api.. its working fine in playground
hi I want to give a *acmepersonnel* a create access to an asset. ```rule Rule1 {
description: "Description of the ACL rule"
participant: "org.example.participant.acmepersonnel"
operation: CREATE
resource: "org.example.book"
action: ALLOW
}``` But when I try to create asset via composer-rest-server. It produces error. ``` org.example.participant#testuser does not have 'CREATE' access to resource org.hyperledger.composer.system.AddAsset```
hi I want to give a *acmepersonnel* a create access to an asset. ```rule Rule1 {
description: "Description of the ACL rule"
participant: "org.example.participant.acmepersonnel"
operation: CREATE
resource: "org.example.book"
action: ALLOW
}``` But when I try to create asset via composer-rest-server. It produces error. ```org.example.participant#testuser does not have 'CREATE' access to resource org.hyperledger.composer.system.AddAsset```
hi I want to give a *acmepersonnel* a create access to an asset. ```rule Rule1 {
description: "Description of the ACL rule"
participant: "org.example.participant.acmepersonnel"
operation: CREATE
resource: "org.example.book"
action: ALLOW
}``` But when I try to create asset via composer-rest-server. It produces error. ````org.example.participant#testuser does not have 'CREATE' access to resource org.hyperledger.composer.system.AddAsset````
hi I want to give a *acmepersonnel* a create access to an asset. ```rule Rule1 {
description: "Description of the ACL rule"
participant: "org.example.participant.acmepersonnel"
operation: CREATE
resource: "org.example.book"
action: ALLOW
}``` But when I try to create asset via composer-rest-server. It produces error. *org.example.participant#testuser does not have 'CREATE' access to resource org.hyperledger.composer.system.AddAsset*
hi I want to give a *acmepersonnel* a create access to an asset. ```rule Rule1 {
description: "Description of the ACL rule"
participant: "org.example.participant.acmepersonnel"
operation: CREATE
resource: "org.example.book"
action: ALLOW
}``` But when I try to create asset via composer-rest-server. It produces error. *org.example.participant.acmepersonnel#testuser does not have 'CREATE' access to resource org.hyperledger.composer.system.AddAsset*
Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode abspool-network has been successfully instantiated and try again: could not find chaincode with name 'abspool-network'
This because docker loses the data ..
Please help me to resolve the issue
i have a little bit more general question:
when using Hyperledger Compose, do you use it only for quick prototyping or to build production level solutions
and is the script file in composer playground node chaincode?
Is there anyway to implement auto payment in composer?
Has joined the channel.
deploying business network to peer node using composer v0.19, using composer network install -a
deploying business network to peer node using composer v0.19, using composer network install -a
deploying business network to peer node using composer v0.19, using composer network install -a
fyi - reminder that the Community call is at 9am UTC (10am UK, 12pm ET, 9am PT) Wednesday this week - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-30th-May-2018 best regards Paul
@gharshr May be your behind proxy.Try connecting to ur home network and give 3-4 attempts
@karunesh10 I am running on GCP and I think there isn't a proxy set
@karunesh10 I am running on GCP and I think there isn't a proxy set
And I think the peers are not running on containers. i.e. When I run docker ps, it doesn't show any container. Vaguely, I think every peer should be deployed on a container. But it isn't shown in the documentation given in below link
https://hyperledger.github.io/composer/v0.16/tutorials/deploy-to-fabric-single-org
@karunesh10 I am running on GCP and I think there isn't a proxy set
And I think the peers are not running on containers. i.e. When I run docker ps, it doesn't show any container. Vaguely, I think every peer should be deployed on a container. But it isn't shown in the documentation given in below link
https://hyperledger.github.io/composer/v0.16/tutorials/deploy-to-fabric-single-org
@gharshr try that command for some more times
Hi all
how exactly the JS is used as chaincode in place of GoLang behind the scenes ?
[ ](https://chat.hyperledger.org/channel/composer?msg=qT4DNsf3z9sHgMqpn) @karunesh10
Has joined the channel.
@karunesh10 even though I Tried for some more time it gives the same error.
And what can we say about the following error?
```✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed```
Why does the REST-server stop working after some time? I just go to bed, and when I wake up, I see that the server is not available :) I have to start it again. What is it?
https://imgur.com/a/HmghgEv
I want to store the result of our query in one of the assets that we generated called "patientInsurances", here our query executes succesfully but does not stores the result anywhere.
So what is the technique to store the result of our query in an asset?
[ ](https://chat.hyperledger.org/channel/composer?msg=3N2YQC8646ydvp8fu) @abilashs Hi, here is a sample of connection json for Composer 0.19.6
[ ](https://chat.hyperledger.org/channel/composer?msg=3N2YQC8646ydvp8fu) @abilashs Hi, here is a sample of connection json for Composer 0.19.6: {
"name": "hlfv1",
"x-type": "hlfv1",
"x-commitTimeout": 300,
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},
"channels": {
"channel1": {
"orderers": [
"orderer"
],
"peers": {
"org1peer1": {
"endorsingPeer": true,
"chaincodeQuery": true,
"ledgerQuery": true,
"eventSource": true
}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"org1peer1"
],
"certificateAuthorities": [
"CA1"
]
}
},
"orderers": {
"orderer": {
"url": "grpc://blockchain-orderer:31010"
}
},
"peers": {
"org1peer1": {
"url": "grpc://blockchain-org1peer1:30110",
"eventUrl": "grpc://blockchain-org1peer1:30111"
}
},
"certificateAuthorities": {
"CA1": {
"url": "http://blockchain-ca:30054",
"caName": "CA1"
}
}
}
[ ](https://chat.hyperledger.org/channel/composer?msg=rHD2paZgynAJ73JWC) @Shubham-koli - you can invoke a Query from inside a Transaction - and so you could take the query result and and write it to a new Asset in that transaction.
You use the *query* and optionally *buildQuery* methods - see the API reference docs for the runtime api: https://hyperledger.github.io/composer/latest/api/runtime-api#buildquery
Hi. When I deploy an update to my composer network, the container running the new version spawns on my peer's host, but containers of all the older versions still keep on running. Is that how it is supposed to work? Is it safe to remove older containers using docker commands?
@rthatcher can you please help me out with this?
https://stackoverflow.com/questions/50588769/querying-an-array-of-participant-through-concepts
Hi all.
I am able to create and import a card in a network. But when I try to "log in" with this card, I have this error :family_mwgb:
`error getting chaincode
[ ](https://chat.hyperledger.org/channel/composer?msg=gBmzQ53RhZDER5RTN) @gharshr - the _Error: 14 UNAVAILABLE: Connect Failed_ comes back quickly and is a failure of the client (CLI in this case) to find the Fabric at the addresses specified in the connection.json file. So a good opening question is "Is the Fabric started and available?" - ` docker ps ` should show your running Fabric. I would suggest re-running the commands in Step One of the tutorial.
fyi - reminder that the Community call is in 20 mins at 9am UTC (10am UK, 12pm ET, 9am PT) Wednesday this week - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-30th-May-2018 best regards Paul
fyi - reminder that the Community call is in 20 mins at 9am UTC (10am UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-30th-May-2018 best regards Paul
@gharshr Look into this. https://stackoverflow.com/questions/49625575/hyperledger-composer-network-install
I have installed the Hyperledger Fabric 1.1.0 and Composer 0.19.5 in a Kubernetes cluster in IBM Cloud following the Simple install procedure https://ibm-blockchain.github.io/simple/ and adapting the yaml installation files from the installation scripts : https://github.com/IBM-Blockchain/ibm-container-service. My installation worked fine. Then I have installed a Composer client on my MacOS workstation and I have imported the PeedAdmin Card (download from my Composer Playground in my Kube cluster).
I have installed the Hyperledger Fabric 1.1.0 and Composer 0.19.5 in a Kubernetes cluster in IBM Cloud following the Simple install procedure https://ibm-blockchain.github.io/simple/ and adapting the yaml installation files from the installation scripts : https://github.com/IBM-Blockchain/ibm-container-service. My installation worked fine. Then I have installed a Composer client on my MacOS workstation and I have imported the PeedAdmin Card (download from my Composer Playground in my Kube cluster). Then I installed and started a Business Network Archive. Then I imported the Business Network card of my BN admin user. Now when I go in the Composer Playground, I don't see my new Business Network (while I can ping it from my Composer client). When I do the same with a local hlfv1 configuration (based on Myfn sample) I can see the new business network in my Composer Playground in my local environment. What can be wrong with my configuration?
[ ](https://chat.hyperledger.org/channel/composer?msg=yLQ7EMJ79QMtdrPx7) @SimonOberzan - yes this is how it is designed to work. Composer is working in the "standard Fabric" way, creating a new container for each version. Yes you can remove the 'old' versions of the Container, and also the old versions of the Image using standard docker commands.
@tahaf10 I don't know, but shouldnt you query the whole resource id?
@tahaf10 Something like "this": WHERE (schedule.availableDays.monday.AM00 CONTAINS('resource:org.acme.Doctor#' + idDoctor) )
(idk if that concat works or anything)
[ ](https://chat.hyperledger.org/channel/composer?msg=mqBju3oWnY6pkvKnW) @tahaf10 will take a look this morning and give a response on SO - the model will probably change to be 'cleaner' (at a glance), anyway will rsp.
@mahoney1 alright thanks for the help
@FlorentinoSainz I've been trying but it doesn't work
[ ](https://chat.hyperledger.org/channel/composer?msg=E83NidPxGe3jq8Ce2) @ovallod - the reason it works on the local setup is that your CLI and Playground share the same file system, so they both 'see' the same location for the cards e.g. ` ~/.composer/cards/... `. With your remote Kubernetes Cluster the Playground Container has some shared volumes for the cards, (can be shared with the REST server Container) but it can't see your local cards folder (wallet).
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=MP8JBX2JDutW5Snfo) @pathfinder2104 - NodeJS is now supported natively on Fabric in v1.1.0, so there is no GoLang involved when deploying Composer chaincode. (In earlier versions of Composer there was a more complex setup to allow for JS in GoLang.)
Has joined the channel.
https://stackoverflow.com/questions/50600511/hyperledger-composer-unexpected-response-code-500-from-android-volley-http-pos
@rthatcher Can some please help with this error.
https://stackoverflow.com/questions/50600511/hyperledger-composer-unexpected-response-code-500-from-android-volley-http-pos
Hi guys, Could You please help me with the REST API?
I've generated REST endpoint locally using composer-rest-server.
I have an asset which has relationship to another one:
{
"$class": "org.example.basic.SomeAsset",
"claimId": "1",
"owner": { },
}
the problem is that I can not post this asset via REST - i've tried to put owner object as full JSON, reference via "resource:org.example.basic.OwnerAsset#id" but no luck. How to post such objects properly?
thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=8uEn8ppHJTAExEE53) @adokce - YES you do use Composer for quick prototyping, and YES you do use it to build production level solutions. However, the Composer _Playground_ is not intended as a production tool. The whole of the BNA (script, model, acl, queries) is considered the Chaincode.
[ ](https://chat.hyperledger.org/channel/composer?msg=e8e0d56c-fd86-4c78-b10d-026dbb25150f) @knagware9 - have you restarted your computer, and executed the startFabric.sh script? Have a look at this Stackoverflow post: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
[ ](https://chat.hyperledger.org/channel/composer?msg=qrQWDqNPNsNHosBt8) @rthatcher
True man. I was suppose to start the fabric. I considered, I was suppose to start the container. But didn't knew, it should be done by starting the fabric.
Thanks @rthatcher @karunesh10
[ ](https://chat.hyperledger.org/channel/composer?msg=JRzr2AWdedKq94Cer) @karunesh10
Hmm got it. Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=4LnfdZdQYNuj9iPnQ) @ovallod
https://hyperledger.github.io/composer/latest/reference/connectionprofile
@DenisDoronin ```{
"$class": "org.example.basic.SomeAsset",
"claimId": "1",
"owner": "resource:org.example.mynetwork.SomeOwner#owner1"
} ``` should work
@DenisDoronin ```{
"$class": "org.example.basic.SomeAsset",
"claimId": "1",
"owner": "resource:org.example.basic.SomeOwner#owner1"
} ``` should work
[ ](https://chat.hyperledger.org/channel/composer?msg=jPQoj7HWwvQY8sCSQ) @saeedi - by using the REST server to POST an asset you are invoking a system transaction called *AddAsset* , and the error says that testuser does not have the permission. Try adding this Rule to your permissions.acl file:
```rule SystemACL {
description: "System ACL to permit all access"
participant: "ANY"
operation: READ
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
- if READ is not sufficient, replace with CREATE.
There is more detail about ACLs in the ACL Reference document, and more information about the System Namespace here:
https://hyperledger.github.io/composer/latest/systemns/systemns-index
Is there a way to check which chaincode is installed on hyperledger fabric?
I'm trying to update my network but it gives following error
Error: 2 UNKNOWN: chaincode error (status: 500, message: could not find chaincode with name 'infiniun-network')
[ ](https://chat.hyperledger.org/channel/composer?msg=2jXPcR7Ts6gsbmPoJ) @tahaf10 - ` composer network ping ` will show the version that is currently running. Though another version may be _installed_ but not running - you can look inside a Peer container to see what versions are _installed_. Also, looking at the docker chaincode containers names will show the name and version of the running chaincode.
These commands will show what is _installed_
```docker exec -it peer0.org1.example.com /bin/sh
# ls /var/hyperledger/production/chaincodes/
tutorial-network.0.0.1 tutorial-network.0.0.3
tutorial-network.0.0.2 tutorial-network.0.0.4
# exit
```
Hi @mahoney1, thanks. I've tried this - I always get "Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration" for "owner" property. so, service expects object, but I put string. Have I missed something?
@DenisDoronin need to see the model of SomeAsset and the 'offending' participant etc :-)
Screen Shot 2018-05-30 at 12.51.58 PM.png
@mahoney1 it's pretty simple - please take a look screnshot above
@mahoney1 it's pretty simple - please take a look screenshot above
How do i start rest-server compatible with TLS/SSL on my ibm cloud blockchain instance. Currently, i start my cloud rest-server through the ./create-rest-server.sh script in the ibm-container-service repo
[ ](https://chat.hyperledger.org/channel/composer?msg=4xFqo3wchgxiZNLfF) @rthatcher Thank you for your answer. Consequent issue: I want to import my admin network card in the remote composer playground. But I have only the user/pw and not the credentials certificates in this network card. Since I have already start my Business Network with this network card, the user has already been enrolled. But how do I retrieve the certificates in order to create another business card that I will import in my Playground UI? (If I import the business card as-is with the user/pwd, when I want to connect to the imported business network, I got an Authorization failure error because the user is already involved).
@mahoney1, I've forgot to change another relationships in my case. Your variant is working. thanks a lot :)
[ ](https://chat.hyperledger.org/channel/composer?msg=JCeg4ajhotQiDkdg7) @mahoney1 @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=xYtuAHpsJLsTyq8a7) @ovallod - when a card is first created it contains a one-time secret, and as you have found out it can't be used a second time :-) If you try the ` composer card export ` command you will get another .card file that includes the certificates. if you compare the sizes you will see that the new card is larger as it includes the certificates - you should be able to import this new card into Playground.
how to expose cloud composer rest server api using https.
[ ](https://chat.hyperledger.org/channel/composer?msg=jJZ6tLXryqFTd9Zai) @ZaheerUdDeen - this page in the Composer documentation has the details: https://hyperledger.github.io/composer/latest/integrating/securing-the-rest-server.html
Clipboard - May 30, 2018 4:02 PM
Hi anyone know about gihub-passport authentication "In firefox not showing access_token but in chrome it showing access_token show and logout button."
Clipboard - May 30, 2018 4:02 PM
And i can access api without authentication in firefox.
And i can access api without authentication
Hey guys, whe i try to import my bna to the network gives me this ssl error : E0530 01:48:14.930539645 12855 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
How can i solver this or what can cause this
https://stackoverflow.com/questions/50603800/how-would-hyperledger-composer-work
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
i created new single organaziton network.i crate two particitend card user1.card and user2.card
i genarete via composer-rest-server and i get the rest api.
i want to do like,
user1.card -> virtual-1
user2.card -> virtual-2
call.
how can i do?
*virtual machine
Hmm, if I have a participant object, what function do I call to get the participant type/class?
Ah, found it out, it is simply .getType() :)
Has joined the channel.
Hello Everyione
Hello Everyone
I am facing this issue Error trying to ping. Error: Composer runtime (0.19.6) is not compatible with client (0.19.5)
during creation of angular app
Please help me to resolve this issue
How to make both compatible
@professionaldeveloper update your composer-client to 0.19.6 :?
How to update it
[ ](https://chat.hyperledger.org/channel/composer?msg=CP8gWRPKvytmK8dYr) @rthatcher Thank you. I am trying with this. will let you know if it works.
[ ](https://chat.hyperledger.org/channel/composer?msg=ebxJk5WpvLkArAyuW) @abityildiz - if you look at the connection.json used in the tutorial you will see that all the URLs e.g. ` "url": "grpc://localhost:7051" ` use localhost as the address. The tutorial is written to work with a single machine, so localhost resolves OK and with Docker Compose Port forwarding is setup into the Containers of the Fabric. If you move your cards to a different machine you will have to change the URLs to match the hostname/address of the machine where the Fabric is running (and possibly manage firewalls.)
How to update my composer client 0.19.6 ? Can anybody help me in this?
@professionaldeveloper npm install composer-client@0.19.6
or something like that
should work
composer-client its just a nodejs/javascript library
Is it npm install -g composer-cli ?
which version does your composer-cli report?
composer-cli -version
or --version
"composer --version"
my composer version is 0.19.6
then its your angular app
how to get client version?
what's your client?
I mean, what are you using to communicate with the blockchain
[ ](https://chat.hyperledger.org/channel/composer?msg=mqBju3oWnY6pkvKnW) @tahaf10 answer posted on S/O
[ ](https://chat.hyperledger.org/channel/composer?msg=si8xYvgirtrpoXFsW) @rthatcher if i generate different port
[ ](https://chat.hyperledger.org/channel/composer?msg=xvwB67Biy6JCMn9sF) composer-rest-server -c user1@network -p 3001
composer-rest-server -c user1@network -p 3002
[ ](https://chat.hyperledger.org/channel/composer?msg=xvwB67Biy6JCMn9sF) composer-rest-server -c user1@network -p 3001
composer-rest-server -c user1@network -p 3002
I can do what I want
[ ](https://chat.hyperledger.org/channel/composer?msg=xvwB67Biy6JCMn9sF)
if i generate different port
composer-rest-server -c user1@network -p 3001
composer-rest-server -c user1@network -p 3002
I can do what I want
[ ](https://chat.hyperledger.org/channel/composer?msg=E8rLXBg4yLG9BL8Z3)do you think right that?
Hello ! Can Anyone help with this stack overflow thread ! Thanks in advance ! https://stackoverflow.com/questions/50586046/failed-to-install-bna-on-second-peer-from-a-fabric-multi-org-network
[ ](https://chat.hyperledger.org/channel/composer?msg=eMFBet4jQNpmQsbsP) @abityildiz - I don't know what your final design is, but yes you can start multiple rest servers on different ports using different cards with different access rights.
Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode tutorial-network has been successfully instantiated and try again: could not find chaincode with name 'tutorial-network'
Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode tutorial-network has been successfully instantiated and try again: could not find chaincode with name 'tutorial-network'
Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode tutorial-network has been successfully instantiated and try again: could not find chaincode with name 'tutorial-network'
Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode tutorial-network has been successfully instantiated and try again: could not find chaincode with name 'tutorial-network'
Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode tutorial-network has been successfully instantiated and try again: could not find chaincode with name 'tutorial-network'
Hi
@FlorentinoSainz It showing now after updating version Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode tutorial-network has been successfully instantiated and try again: could not find chaincode with name 'tutorial-network'
[ ](https://chat.hyperledger.org/channel/composer?msg=jjnMnjuQQEThxtsgP) @lipoplus - are you using Playground? What Card are you using for the import, and how did you create the card? Are you using a standard development fabric from fabric tools, or are you using a custom Fabric?
@professionaldeveloper no idea there, never tried that tutorial (I'm just a user), maybe try with npm install -g composer-cli@0.19.5 (which would make your runtime be 0.19.5)
(maybe you have to do npm uninstall -g composer-cli b4 that)
Has joined the channel.
When i try to import a card through the cli that i downloaded via the composer-rest-api i get `Error: Corrupted zip: missing 62766093 bytes.`
i used a hex viewer and the beginnings and ends of a valid card file matches with this one. Any ideas?
[ ](https://chat.hyperledger.org/channel/composer?msg=x6PgAkrq8TDpPttuE) @GrondinLaurent - just had a quick look at the question - a couple of suggestions ... have you run `composer card list -c PeerAdmin@byfn-network-org2` to see if the Credentials are set? Also have you looked at the "$(pwd)/.vld-card-store" folder on your host machine to verify that the 2 cards have the same files in place? (under the cards and client-data folders).
I think the issue is likely to be the connection.json file or some docker networking problem. Perhaps you could try using a linux `diff` command on the 2 connection.json files to see if it throws up anything unexpected. (Use the original files for the diff command as the ones in the cards folder have all the whitespace removed and are difficult to work with). Have you run these docker commands to check all containers are on the expected (and same) network bridge? ` docker network ls ` ` docker inspect composer_default `
It is partly the "connect failed" and partly the absence of any activity in the log of peer2 that makes me think it is the connection.json. (I guess you have checked the ca for org2 and the order logs - just in case)
[ ](https://chat.hyperledger.org/channel/composer?msg=2ngCrABN3qb3Nfg72) @rthatcher Hi, following your recommendation```
I have imported the PeerAdmin card, then install the Business network, then start the business network with user adminmrbl, then import the adminmrbl card, then export the adminmrbl card, then tried to ping the business network with the adminmrbl user. It fails:`oliviers-mbp:envbx ovallod$ composer card import -c PeerAdmin@hlfv1 -f PeerAdmin.card
Successfully imported business network card
Card file: PeerAdmin.card
Card name: PeerAdmin@hlfv1
Command succeeded
oliviers-mbp:envbx ovallod$ composer network install -a ../marbles-network.bna -c PeerAdmin@hlfv1
✔ Installing business network. This may take a minute...
Successfully installed business network marbles-network, version 0.2.4-deploy.0
Command succeeded
oliviers-mbp:envbx ovallod$ composer network start -c PeerAdmin@hlfv1 -n marbles-network -V 0.2.4-deploy.0 -A adminmrbl -S adminpw
Starting business network marbles-network at version 0.2.4-deploy.0
Processing these Network Admins:
userName: adminmrbl
✔ Starting business network definition. This may take a minute...
Successfully created business network card:
Filename: adminmrbl@marbles-network.card
Command succeeded
oliviers-mbp:envbx ovallod$ composer card import --file adminmrbl@marbles-network.card
Successfully imported business network card
Card file: adminmrbl@marbles-network.card
Card name: adminmrbl@marbles-network
Command succeeded
oliviers-mbp:envbx ovallod$ composer card export -c adminmrbl@marbles-network
Successfully exported business network card
Card file: adminmrbl@marbles-network.card
Card name: adminmrbl@marbles-network
Command succeeded
oliviers-mbp:envbx ovallod$ composer network ping -c adminmrbl@marbles-network
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed
oliviers-mbp:envbx ovallod$ composer card list
The following Business Network Cards are available:
Connection Profile: hlfv1
┌───────────────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├───────────────────────────┼───────────┼──────────────────┤
│ adminmrbl@marbles-network │ adminmrbl │ marbles-network │
├───────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└───────────────────────────┴───────────┴──────────────────┘
Issue composer card list --card
@rthatcher
```
< "organization": "Org1",
---
> "organization": "Org2",
```
My diff beween
Hi, could someone please take a look at this
https://stackoverflow.com/questions/50568413/hyperledger-fabric-node-stops-working
fabric_error.jpeg
@rthatcher Can you help me iwtht his error?
Hello, anyone can help? The deploy button is disabled when i started the composer-playground on my local dev env
Clipboard - May 30, 2018 10:10 PM
https://hyperledger.github.io/composer/latest/tutorials/playground-tutorial.html
Has joined the channel.
@ovallod - it looks like the error you now have is with this command:
`composer network start -c PeerAdmin@hlfv1 -n marbles-network -V 0.2.4-deploy.0 -A adminmrbl -S adminpw`
I think that those containers created on the cloud have a Certificate Authority setup with a default user called *admin* and a secret of *adminpw* - but you are supplying an id called *adminmrbl* - note that the user and secret used here must already exist, and it is the card that is created not a new admin identity. So if you start again with *admin* it should work. (BTW I previously said IDs in the CA have a one-time secret, but the admin/adminpw is a special case it can be used many times.)
@rthatcher Hi, could you please see the image I posted. We are running a node with our own application server, APIs and front end. Sometimes after a fwe days we suddenly get this error for every interaction with the blockchain.
@rthatcher
My diff between both connection profile
```
lgrondin@ING-OPS-009:/c/workspace/car_project/packages/vehicle-manufacture/composer-data-latest(multi_node)$ diff json/connection1.json json/connection2.json
7c7
< "organization": "Org1",
---
> "organization": "Org2",
```
Composer card list :
```
docker run \
--rm \
--network composer_default \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:latest \
card list
pwd
pwd
pwd
The following Business Network Cards are available:
Connection Profile: composer_default
┌─────────────────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@byfn-network-org1 │ PeerAdmin │ │
├─────────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@byfn-network-org2 │ PeerAdmin │ │
└─────────────────────────────┴───────────┴──────────────────┘
Issue composer card list --card
@RealDeanZhao you need to give the network a name that's why its greyed out.
Clipboard - May 30, 2018 10:30 PM
still disabled
after doing the "writing web applications" tutorial, how would i gain access to the
woops
Hi,
@GrondinLaurent - I just put a comment on the StackOverflow - asking for more info - too long to post here :-)
With an architecture like the following, can a server on VM2 target only peer2 ?
- VM1 : CA, Orderer, Peer1
- VM2 : Peer2
Hello,
With an architecture like the following, can a server on VM2 target only peer2 ?
- VM1 : CA, Orderer, Peer1
- VM2 : Peer2
@ovallod in your script - after the `composer card import --file adminmrbl@marbles-network.card ` you should then immediately follow with `composer network ping -c adminmrbl@marbles-network` to get the certs - THEN - do the export
[ ](https://chat.hyperledger.org/channel/composer?msg=vNiJwT59fouhAdMvn) @CorentinPacaud yes - an example is shown here -> https://medium.com/hyperlegendary/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-bfbe4e38b6c6
[ ](https://chat.hyperledger.org/channel/composer?msg=vNiJwT59fouhAdMvn) @CorentinPacaud - the docker networking bridge will only work on a single machine - so if you are on 2 separate machines you need to sort out networking between you cli container and the container on a different machine.
For now, when I try to login, only Peer1 react even if server is running on VM2.
[ ](https://chat.hyperledger.org/channel/composer?msg=vNiJwT59fouhAdMvn)
@rthatcher
after doing the "writing web applications" tutorial, how do i use the client API?
i tried importing composer client in src/app/app.component.ts to use BusinessNetworkConnection but my webapp on localhost:4200 fails to load with message "failed to compile"
the server (from npm start) gives the following errors
`
WARNING in ./~/composer-common/lib/connectionprofilemanager.js
134:57-69 Critical dependency: the request of a dependency is an expression
WARNING in ./~/composer-common/lib/log/logger.js
422:27-35 Critical dependency: the request of a dependency is an expression
WARNING in ./~/composer-common/lib/log/logger.js
618:23-39 Critical dependency: the request of a dependency is an expression
WARNING in ./~/composer-common/lib/config/configmediator.js
44:27-35 Critical dependency: the request of a dependency is an expression
WARNING in ./~/composer-common/lib/module/loadModule.js
71:25-43 Critical dependency: the request of a dependency is an expression
`
these are the lines i added to app.component.ts
`
import { BusinessNetworkConnection } from 'composer-client';
`
inside ngAfterViewInit()
`
let connection = new BusinessNetworkConnection();
`
@rthatcher
after doing the "writing web applications" tutorial, how do i use the client API?
i tried importing composer client in src/app/app.component.ts to use BusinessNetworkConnection but my webapp on localhost:4200 fails to load with message "failed to compile"
the server (from npm start) gives the following errors
```
WARNING in ./~/composer-common/lib/connectionprofilemanager.js
134:57-69 Critical dependency: the request of a dependency is an expression
WARNING in ./~/composer-common/lib/log/logger.js
422:27-35 Critical dependency: the request of a dependency is an expression
WARNING in ./~/composer-common/lib/log/logger.js
618:23-39 Critical dependency: the request of a dependency is an expression
WARNING in ./~/composer-common/lib/config/configmediator.js
44:27-35 Critical dependency: the request of a dependency is an expression
WARNING in ./~/composer-common/lib/module/loadModule.js
71:25-43 Critical dependency: the request of a dependency is an expression
```
these are the lines i added to app.component.ts
```
import { BusinessNetworkConnection } from 'composer-client';
```
inside ngAfterViewInit()
```
let connection = new BusinessNetworkConnection();
```
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=e5beBqjvdXoBzqE96) @rthatcher
I know this. It works for me. But I need to know is if a server can read data only on is peer. Say we have this :
- VM1 : CA, Orderer, Peer1, SERVER1
- VM 2 : Peer2, server2
What I would like is server2 log in with peer2 and read data on peer2.
And Server1 log in with peer1 and read data on peer1.
Is it possible ?
[ ](https://chat.hyperledger.org/channel/composer?msg=e5beBqjvdXoBzqE96) @rthatcher
I know this. It works for me. But I need to know is if a server can read data only on his peer. Say we have this :
- VM1 : CA, Orderer, Peer1, SERVER1
- VM 2 : Peer2, server2
What I would like is server2 log in with peer2 and read data on peer2.
And Server1 log in with peer1 and read data on peer1.
Is it possible ?
@sahandealmeidapey this is related to webpacks when building the app - suggest to read [here](https://stackoverflow.com/questions/42908116/webpack-critical-dependency-the-request-of-a-dependency-is-an-expression) or [here](https://github.com/angular/angular/issues/11580)
thank you ^
Hi all, here is a burning question. If an administrator administrating the different nodes where the fabric is installed, can he NOT simply go shutdown all the nodes, teardown the fabric, kill and remove all docker containers and possibly delete and remove the mounts as well, thereby ALL the data is lost? It sounds impossible, but it is NOT improbable. So what are the guidelines to foolproof the data loss?
I have created the model file and script file. With above two files, I can complete transaction in Playground. But the same files, Im getting below error in Business network, while running command:
I have created the model file and script file. With above two files, I can complete transaction in Playground. But the same files, Im getting below error in Business network, while running command: abilash@ArBcComposer:~/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/aruba/arubablockchain$ composer archive create -t dir -n .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /home/abilash/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/aruba/arubablockchain
TypeNotFoundException: Type SampleTransaction is not defined in namespace airport.arubablockchain.com
Command failed
abilash@ArBcComposer:~/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/aruba/arubablockchain$
abilash@ArBcComposer:~/fabric-tools/fabric-scripts/hlfv1/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/aruba/arubablockchain$
Has joined the channel.
@CorentinPacaud - have answered the Stack Overflow
Has joined the channel.
endorsement
I have a problem in my code: I have an async function where I use return someasyncfunctionhere.then(function(parameter){FUNCTION CONTENT HERE});
and in that FUNCTION CONTENT HERE is embedded a getAssetRegistry('org.logistics.testnet.OrderContract') function; but it always returns just [object Object], a promise; How do I make it return what I need?
Clipboard - 30 de Maio de 2018 17:54
I think it might be a problem with nesting async functions
Btw, why is it possible to create relationships to assets that do not exist? It's so cumbersome to make these integrity checks :(
Btw, why is it possible to create relationships to participants that do not exist? It's so cumbersome to make these integrity checks :( For assets, it seems composer always checks and gives a message, but not so much for participants
I wanted to share this code pattern: https://developer.ibm.com/code/patterns/customer-loyalty-program-with-blockchain/, with this repo: https://github.com/IBM/customer-loyalty-program
This is for developers looking to grow their Hyperledger Composer skills. Please let me know any feedback. Thanks
Has joined the channel.
Hi all!
I'm trying to execute composer-rest-server
and i'm getting Error: *** CLDR read error on linux
Clipboard - May 30, 2018 9:00 PM
I would really appreciate if you suggest how can I fix this CLDR error
i cannot generate API :(
Has joined the channel.
Hi everyone !
I am currently working with Hyperledger and Indy-sdk infrastructure for my MSc thesis project
I have some trouble to install and test the getting-started fellowing this tutorial : https://github.com/hyperledger/indy-sdk/blob/master/doc/getting-started/run-getting-started.md
however I got stuck with an unknown error
Capture d’écran 2018-05-30 à 20.42.26.png
I've install Rust and rustup (including cargo), I've also succesfully build Indy SDK fellowing tutorials on github
I am using Mac OS (High sierra)
where to find and how to use couchDB interface in IBM cloud, that is connected with with chaincode.
Can I listen to events in angularJs application without uisng node-sdk ?
I having trouble in installing hyperledger composer on my VM. In the prereqs-ubuntu.sh there is one error message that I don't understand.
composer prereqs error.png
For installing the CLI tools, is the command sudo npm install -g composer-cli --unsafe-perm okay?
should I ignore the warning messages which are shown while downloading the cli tools?
Untitled.png
[ ](https://chat.hyperledger.org/channel/composer?msg=S9szgKvgeZqhkc6Fu) Hi, found the problem. I was editing logic.js under test while i have to edit logic.js under lib. that solved the problem. May be we can add this info to https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html where we have 2 logic.js files, one under test and another under lib.
[ ](https://chat.hyperledger.org/channel/composer?msg=you5EiXC4AmCQLM4A) @raheelz Awesome!
[ ](https://chat.hyperledger.org/channel/composer?msg=FJrzFz7xovD9JixsP) @pedromlcosta `AssetRegistry.add( )` is an async function, seems like you call it synchronously. Try do it like:
```
return AssetRegistry.add(someAsset )
```
[ ](https://chat.hyperledger.org/channel/composer?msg=FJrzFz7xovD9JixsP) @pedromlcosta `AssetRegistry.add( )` is an async function, seems like you call it synchronously. Try do it like:
```
return AssetRegistry.add(someAsset )
.then(function(){
return getAssetRegistry(someAssetRegistry)
})
.then(function(ar){
console.log(ar)
})
```
[ ](https://chat.hyperledger.org/channel/composer?msg=you5EiXC4AmCQLM4A) Nice! I am trying to rebuild my project without composer-rest-server and this doc is exactly what I need!!:vulcan:
Hi,
Any one knows how to start multiple instances of rest server?
I found *Run multiple instances of the REST server Docker image. This is easy to do by changing the name of the Docker container using the --name argument, and updating or removing the host port mapping for subsequent REST server instances using the -p 3000:3000 argument.* in https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server but when I try to change -p 3001:3001 it still starts on 3000 only. can anybody tell me what am I doing wrong or missing?
Hi,
To make rest server highly available in production it is recommended to Configure a highly available instance of the persistent data store, for example a MongoDB replica set. So anyone guide me on how to do this?
I can't understand authentication of rest api.
I have enabled github authentication. But I need user identity authentication. Please help me.
[ ](https://chat.hyperledger.org/channel/composer?msg=HzZJN79JFXHRs5FAA) @KindleBitSoln What do you mean by user identity authentication? Can you please elaborate more?
When we use any rest service, we will authenticate user there or something like this. Is something like that in composer rest server?
When we use any secure rest service, we will authenticate user there or something like this. Is something like that in composer rest server?
You have enabled github rest api so you can't access rest api without authenticated by github. First you need to login to github by set url like http://localhost:3000/auth/github. Then it will generate access token and then only you can access rest api. If you want to authenticate user using username and password you can use anther passport strategy.
You have enabled github rest api so you can't access rest api without authenticated by github. First you need to login to github by set url like http://localhost:3000/auth/github. Then it will generate access token and then only you can access rest api. If you want to authenticate user using username and password you can use another passport strategy.
Yes I have enabled authenticate service by github oauth 2 but I need authenticate user by username.
Can you please tell me any reference of that.
Yes I have enabled authenticate service by github oauth 2 but I need authenticate user by username.
Can you please tell me any reference of that?
I am using passport-jwt for my application. There are many strategies available you can choose as per your requirement. This is a very good tutorial for passport-jwt https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
I am using passport-jwt for my application. There are many strategies available you can choose as per your requirement. This is a very good tutorial for passport-jwt https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn Your concern will be solved by this
I am using passport-jwt for my application. There are many strategies available you can choose as per your requirement. This is a very good tutorial for passport-jwt https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn Your concern will solve by this
Thanks @HoneyShah I"ll check this.
@HoneyShah How to create jwt file in docker container
@HoneyShah How to create jwt file in docker container?
Hi nivant here. I am planning to install hyperledger composer on a debian system that is not ubuntu. Has anybody tried this? Did it work well?
ModelFile expects a Composer model as a string as input --> Has any one seen this cryptic message before?
Has joined the channel.
hey guys, it's still unclear to me how exactly is .bna connected with Hyperledger Fabric. Is the .bna somehow translated to chaincode. And why isn't chaincode mentioned anywhere in composer's docs
@HoneyShah : while creating the .bna, I get this error. ``"ModelFile expects a Composer model as a string as input"`` Can you please tell me what this error means?
[ ](https://chat.hyperledger.org/channel/composer?msg=fhPjX6bvnGyAFnCze) @rthatcher
Any link ?
[ ](https://chat.hyperledger.org/channel/composer?msg=fhPjX6bvnGyAFnCze) @rthatcher
Any link ? Can I send you my connection.jsons' ?
[ ](https://chat.hyperledger.org/channel/composer?msg=e5beBqjvdXoBzqE96) @rthatcher
Technically, what do I have to do ?
Can I send you my connection.json ?
@KindleBitSoln `COPY custom-jwt.js node_modules/custom-jwt.js` will copy custom-jwt.js from your file system to docker image. Create custom-jwt.js file in a same folder as your Docker file.
```FROM hyperledger/composer-rest-server:0.19.5
RUN npm install --production loopback-connector-mongodb passport-jwt && \
npm cache clean --force && \
ln -s node_modules .node_modules
COPY custom-jwt.js node_modules/custom-jwt.js
COPY .composer /home/composer/.composer
```
[ ](https://chat.hyperledger.org/channel/composer?msg=eGq3CqKt8hD7Kk4FR) Please help me with this issue. Before creating the .bna, I tested all my models in the hyperledger playground and everything seemed to be alright.
@SeetharamanNarayanan You have a misspell in a model file, I think
@HoneyShah yes, the persisted data source should be H/A - only guidance on this in Composer docs is [here](https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server_
If anyone can look at this ?
https://stackoverflow.com/questions/50620642/error-trying-to-ping-error-2-unknown-could-not-find-chaincode-with-name-netw
Has joined the channel.
Has joined the channel.
@mahoney1 So we need to use multiple instances of mongo db instead of one?
[ ](https://chat.hyperledger.org/channel/composer?msg=Jxw9JGQFWRR5bPBxC) @CorentinPacaud I responded, need more info on SO basically.
Is it possible to deploy more than one application to a hyperledger fabric peer?
@mahoney1 I juste update my question ^^
@HoneyShah "FROM hyperledger/composer-rest-server:0.19.5" Where I can find this?
@KindleBitSoln That is tutorial I shared you
@KindleBitSoln That is in tutorial I shared you
He is saying that From this location 'hyperledger/composer-rest-server:0.19.5' RUN npm install --production loopback-connector-mongodb passport-jwt && \
npm cache clean --force && \
ln -s node_modules .node_modules
So I am confuse it's location or he saying run command from composer-cli
[ ](https://chat.hyperledger.org/channel/composer?msg=rh3Y9xeSA3Kk5KyLp) @naveedh27 - yes you can deploy more than one Composer Business Network to a Fabric.
[ ](https://chat.hyperledger.org/channel/composer?msg=eaf3tq3RAQcEZKqxd) @rthatcher Thanks
Peer Admin vs Business Network Admin . Can someone explain this in terms of traditional web application?
Has joined the channel.
hi. i tried to do `docker pull hyperledger/composer:0.19.6` but failed. why?
hi. i tried to do `docker pull hyperledger/composer-playground:0.19.6` but failed. why?
[ ](https://chat.hyperledger.org/channel/composer?msg=PMphY9g5h96J2xnSv) @bh4rtp It's not updated yet
@HoneyShah ok. i noticed 0.19.6 was release and tried to update.
Hello guys, I have a question about how to decode username from *access_token* or *userId* token. Currently, I can login my composer rest API with my *Github* account and I can see the *access_token* and *userId* token in cookies. My question is, can we decode the login user's username from these tokens? If not, how can we get the login user's name? Thank you very much!
ls
[ ](https://chat.hyperledger.org/channel/composer?msg=kLNScPMsYhC4BZDP9) @naveedh27 PeerAdmin is like the system administrator; the ID used to login to the Web/application server and deploy things. Business network admin is like the admin user within the Web application
[ ](https://chat.hyperledger.org/channel/composer?msg=kBNZ3GogFgZAfHA7y) @bh4rtp - there was a problem last week with the build process - npm modules were updates, but the Docker images were not. If you want to use the REST server in a container you will need to revert to v0.19.5 for the npm code and then pull a v0.19.5 container.
*OR*
wait till later today when we expect (but not guarantee) a v0.19.7 complete release.
@rthatcher ok, i would like to wait. :grinning:
@mengluo668 [this](https://developer.github.com/v3/users/) may help you - don't think you get it from the token but from the authenticated user itself (ie Github)
Hello, one question regarding composer future roadmap, when Side DB gets released, do you have any plans on adding support for it short-term or there will be a way to "use it" using nativeAPI?
[ ](https://chat.hyperledger.org/channel/composer?msg=zWz82MjFgaNK5fFBB) @bestbeforetoday :thumbsup: Thanks
Has joined the channel.
@FlorentinoSainz The private data api's are in the chaincode stub class so you would be able to invoke them through the nativeAPI in fabric 1.2 with the caveat that no ACL rules will be applied
Hello, how can i get current Participant(identity) from logic.js ? can you assist me please?
Hi,
I am following this https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/ but when I try to execute ```
cd "$(dirname "$0")"
cryptogen generate --config=./crypto-config.yaml
export FABRIC_CFG_PATH=$PWD
configtxgen -profile ComposerOrdererGenesis -outputBlock ./composer-genesis.block
configtxgen -profile ComposerChannel -outputCreateChannelTx ./composer-channel.tx -channelID composerchannel
```
It's saying me cryptogen not found
@mahoney1 I updated my question for this : https://stackoverflow.com/questions/50620642/error-trying-to-ping-error-2-unknown-could-not-find-chaincode-with-name-netw
[ ](https://chat.hyperledger.org/channel/composer?msg=KAM6pBwtti57fS5EE) @abityildiz - the getCurrentIdentity and getCurrentParticipant methods are described on the Runtime API documentation: https://hyperledger.github.io/composer/latest/api/runtime-api
[ ](https://chat.hyperledger.org/channel/composer?msg=ckMpDpgC7ubpuFNJy) @HoneyShah - cryptogen is part of the Fabric suite and is described in the Fabric docs: https://hyperledger-fabric.readthedocs.io/en/latest/install.html?highlight=cryptogen
[ ](https://chat.hyperledger.org/channel/composer?msg=6Tg6Wbszf36YuQRsq) @rthatcher thanks
Are that ensorsement-policy json is correct with 3 organization network
```
{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org3MSP"
}
}
],
"policy": {
"3-of": [
{
"signed-by": 0
},
{
"signed-by": 1
},
{
"signed-by": 2
}
]
}
}
```
@davidkel thanks, most of my ACLs use JS functions anyways, so it shud work fine :), do you know any place where I can find composer integration plans (for the long-future) with side DB?
(i mean, I can apply the ACLs using the function while reusing the rule)
@mahoney1 Thanks for you response. Actually, I have already tried to get the user from *Github* api by pass access_token. But it seems, the *access_token* in composer rest server is not a valid *Github* access_token, and I can't get any information from Github. So i guess if the access_token is changed by composer rest server and we can decode something form it.
how can I deploy/import network solely from .bna file. it looks like it needs network card
@GrondinLaurent - yes it looks ok.
[ ](https://chat.hyperledger.org/channel/composer?msg=55LazZn52MGmZZpwh) @adokce - to deploy a composer Business Network you need access to a fabric, and a 'card' is the composer method of supplying an Identity for access.
[ ](https://chat.hyperledger.org/channel/composer?msg=55LazZn52MGmZZpwh) @adokce - to deploy a composer Business Network you need access to a fabric, and a 'card' is the composer method of supplying an Identity for access. If you want to work through the process you can try the Developer Tutorial: https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
@rthatcher because i have on start :
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to locate an MSP instance matching the endorser identity's orgainization Org3MSP
Command failed
```
Never seen this before
[ ](https://chat.hyperledger.org/channel/composer?msg=bPG4ktnqkoZjNWHEp) @GrondinLaurent - I would start looking in the connection.json in the organizations section. Also look at container logs at the time you ran the command.
Clipboard - 31 mai 2018 14:53
@rthatcher it doesn't seems good here
[ ](https://chat.hyperledger.org/channel/composer?msg=sNkthzu5S5wGn4Tue) @GrondinLaurent - yes you have some Fabric problems - please follow this up in the #fabric or #fabric-questions channel.
@GrondinLaurent once you've verified (at a Fabric level) your 3rd Org's peers have joined the channel and you can prove to yourself that you can deploy sample Fabric chaincode there - you should look at your connection profile in the card that is doing the `composer network start` - while you can start it from one Org once, the card that starts it needs to have a connection.json that can talk to peers in all 3 Orgs (and the peers that are defined for Org3MSP in particular), specifically the `organizations` and `client` sections . One assumes you also did a composer network install to the 3rd Org's peers already. See https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org as a useful reference point
@mahoney1 Well i went to try if i can deploy a fabric chaincode. Turns out i can instantiate but no invoke the chaincode. I'll be fixing the fabric side then as rthatcher suggest. Thanks for responding :)
@mengluo668 it is a token provided by Github and I don't believe it is changed by REST server. This [link](https://gist.github.com/caspyin/2288960) may provide further insight (see OAuth) , sorry I can't help further on user info, you might want to ask on an appropriate forum on S/O or similar
Any update for this ? https://stackoverflow.com/questions/50620642/error-trying-to-ping-error-2-unknown-could-not-find-chaincode-with-name-netw
@mahoney1 how do i use a enum in my model/.cto file in my lib/logic file
@sahandealmeidapey see examples in sample-networks (model file and lib transaction logic [here](https://github.com/hyperledger/composer-sample-networks/tree/master/packages/animaltracking-network) and also [here](https://stackoverflow.com/questions/50588769/querying-an-array-of-participant-through-concepts) and the
@sahandealmeidapey see examples in sample-networks (model file and lib transaction logic [here](https://github.com/hyperledger/composer-sample-networks/tree/master/packages/animaltracking-network) and also [here](https://stackoverflow.com/questions/50588769/querying-an-array-of-participant-through-concepts)
thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=iBgAR65s3axfNek8Q) @labcoinpoc shouldnt the order be the opposite though? First the getAssetRegistry, then the registry.add ?
Has joined the channel.
@pedromlcosta yes eg ```const myAssetRegistry = await getAssetRegistry(namespace + '.MyAssetReg');
// populate myAsset instance then ..
// Add to asset registry
await myAssetRegistry.add(myAsset);```
yeah, I did that, in some functions it is working as intended, in others it is not
but I think it doesnt work when I try to update more than 1 asset registry
but I think it doesnt work when I try to update more than 1 asset registry @mahoney1
yeah, something acts up when I try to update 2 different assets and use await twice
Clipboard - 31 de Maio de 2018 17:51
This is a transaction im calling; at first, I commented the code to update commodity, all worked well, shipment updated; When i try to update both, like in the image, the following happens:
Clipboard - 31 de Maio de 2018 17:52
OK, so I'm stuck trying to start a busniess network on Fabric. I'm getting this error:
$ composer network start -c Admin@fabric-network -a ../tutorial-network/todd-network@0.0.1.bna -A admin -S adminpw
Starting business network from archive: ../tutorial-network/todd-network@0.0.1.bna
Business network definition:
Identifier: tutorial-network@0.0.1
Description: A composer test
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: cannot get package for the chaincode to be instantiated (tutorial-network:0.16.3)-open /u01/work/hyperledger/chaincodes/tutorial-network.0.16.3: no such file or directory)
Command failed
Can a transaction function return something to the front end app as well? I'm having a little trouble doing that
```
function getAvailableDoctors(sc) {
return query('availableDoctors', {"hour" : sc.availability.hour , "day" : sc.availability.day})
.then(function(results){
var availablDocs = [];
for (var n = 0; n < results.length; n++) {
var schedule_asset = results[n];
availableDocs[n] = schedule_asset.doctor.getIdentifier();
}
return availableDocs;
})
}
```
```
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: chaincode error (status: 500, message: ReferenceError: identifier 'availableDocs' undefined)\n",
"stack": "Error: Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: chaincode error (status: 500, message: ReferenceError: identifier 'availableDocs' undefined)\n\n at _initializeChannel.then.then.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:916:34)\n at
Has joined the channel.
So I'm running through the the Developer Tutorial and I get this error and I'm not sure how to fix it!
Ericks-MBP:tutorial-network erickochoa$ composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Card not found: PeerAdmin@hlfv1
Command failed
Can anyone help me! Is there any way to restore my card? I didn't know that while I was upgrading my network card also changed...
here is what I did:
1. I upgraded the network
2. Then failed to issue the identity for participant (
fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
), I thought something wrong with my card
3. I deleted the card from playground
4. Tried to import same card, which was created on step when I ran
composer network start
command
5. Card imported successfully, but when I try to connect through it, I get an error:
Error trying to ping.
Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier SOMENUMBERS has not been registered
[ ](https://chat.hyperledger.org/channel/composer?msg=nMZrqFFyqEgEjNKQr) @erickdochoa You should first runs the script createPeerAdminCard.sh
[ ](https://chat.hyperledger.org/channel/composer?msg=nMZrqFFyqEgEjNKQr) @erickdochoa You should first run the script createPeerAdminCard.sh
Alright, I'll try that.
Where is that file?
[ ](https://chat.hyperledger.org/channel/composer?msg=SqrW3sdsJgCjwFeZA) @erickdochoa Go through https://hyperledger.github.io/composer/latest/installing/development-tools
Ah. Thanks my dude!
[ ](https://chat.hyperledger.org/channel/composer?msg=eKxvsh6NDfCBjmg9A) Also if you start and stop your network the way that described in tutorial you will lose your ledger data, so for better practice you can also check this https://stackoverflow.com/questions/47767190/hyperledger-composer-error-identity-has-not-been-registered-once-issued-after-re/47771864#47771864
[ ](https://chat.hyperledger.org/channel/composer?msg=X74zRM6puM58AfFo8) Guys! I need your help!)
Hmm
Clipboard - 31 de Maio de 2018 21:17
Has left the channel.
whenever I access that "commoditiesToBeConsumed in the code, it gives me approximately the string in red; how do I make it give me only the part in green? (without having to change the string manually?)
whenever I access that "commoditiesToBeConsumed" in the code, it gives me approximately the string in red; how do I make it give me only the part in green? (without having to change the string manually?)
Has joined the channel.
hi gusy.i've just a question.Is it possibile in composer user private e public key of a user to encrypt data?
Hi, I have a participant type insured. When I compare the FullyQualifiedIdentifier it doesn't match, but Identifier matches. I'm sure the participant type matches. Does anyone know why this is happening?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Bug6eKx2TwWKSt3nf) @mahoney1 Could you please try it from your local, it is really does not work. Actually, the access_token(s) in *web page input box* and *browser cookie storage* are different. When I tried to get user from github api `https://api.github.com?access_token=${BROWSER_COOKIE_STORAGE_ACCESS_TOKEN}`, the github return me a *401* error. When I tried to get user from github api `https://api.github.com?access_token=${WEB_PAGE_INPUT_BOX_ACCESS_TOKEN}`, the github return me a *Bad credentials* error. Could you please try it from your local and give me some feedback? Thank you very much.
I am just playing around composer-playground.mybluemix.ne. Any suggestion, how to define a new method for a new transaction ? I have added my Transaction in the Model file. During Test, I have my transaction is listed in the drop down. But when I submit them, it throws an error saying cannot find Method for the transaction which is already in the script file.
hi all,
my virtual machine closed and my network is down.
how can i start again my network?
hello guys, could anybody please explain how to get user info by github access token? The access token is list in composer-rest-server page.
hello guys, could anybody please explain how to get user info by github access token? The access token is list in composer-rest-server page. I am working on it 2 days, but it seems no way to get user info by composer-rest-server access token
I have been struggling with this error while trying to generate a rest server for a couple of days, I guess I have a corrupt node module somewhere but have been unable to fix this...
Alans-MacBook-Pro-2:prosthesis-chain alanblyth$ composer-rest-server -c PeerAdminCard -n always -w true
Discovering types from business network definition ...
Connection fails: Error: Failed to load connector module "composer-connector-embedded" for connection type "embedded". Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManagerwith a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.
It will be retried for the next request.
Exception: Error: Failed to load connector module "composer-connector-embedded" for connection type "embedded". Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with aConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManagerwith a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.
Error: Failed to load connector module "composer-connector-embedded" for connection type "embedded". Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.-Must create ConnectionManager with a ConnectionProfileManager implementation.
at Promise.resolve.then (/Users/alanblyth/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/connectionprofilemanager.js:146:42)
at
Does anyone have any suggestion?
I find out the root cause. The the access token returned from composer-rest-server is not a valid Github access token!!!!
anyone have idea , how to get currentdate time in transaction processor
i am not able to get exact format
that composer datetime support
i dont want to do with string concat, directly i want to generate
[ ](https://chat.hyperledger.org/channel/composer?msg=2hcD7MrNcevTAWi5M) @sghosh2 - not directly answering the question - but I hope you are not going to write the current timedate onto the ledger? This will cause you problems when the transaction is endorsed (executed) on different peers, the time will be slightly different and your transaction will fail endorsement.
[ ](https://chat.hyperledger.org/channel/composer?msg=CvZwZp29epMgnY5b9) @abityildiz - I think the answer in Stack Overflow will help: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
Please help me too @rthatcher :)
@rthatcher i am going to insert datetime into ledger
[ ](https://chat.hyperledger.org/channel/composer?msg=noHd24Wgj335JjCBN) @alanblyth :slight_smile: - unfortunately I don't recognise your error! But I'm sure somebody will get to it soon !
[ ](https://chat.hyperledger.org/channel/composer?msg=8CRyszS3qWk7eqBom) @rthatcher dang, thanks @rthatcher ,
@alanblyth please edit ur startfabric.sh
#!/bin/bash
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Exit on first error, print all commands.
set -e
Usage() {
echo ""
echo "Usage: ./startFabric.sh [-d || --dev]"
echo ""
echo "Options:"
echo -e "\t-d or --dev: (Optional) enable fabric development mode"
echo ""
echo "Example: ./startFabric.sh"
echo ""
exit 1
}
Parse_Arguments() {
while [ $# -gt 0 ]; do
case $1 in
--help)
HELPINFO=true
;;
--dev | -d)
FABRIC_DEV_MODE=true
;;
esac
shift
done
}
Parse_Arguments $@
if [ "${HELPINFO}" == "true" ]; then
Usage
fi
#Detect architecture
ARCH=`uname -m`
# Grab the current directory
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
if [ "${FABRIC_DEV_MODE}" == "true" ]; then
DOCKER_FILE="${DIR}"/composer/docker-compose-dev.yml
else
DOCKER_FILE="${DIR}"/composer/docker-compose.yml
fi
ARCH=$ARCH docker-compose -f "${DOCKER_FILE}" stop
ARCH=$ARCH docker-compose -f "${DOCKER_FILE}" up -d
# wait for Hyperledger Fabric to start
# incase of errors when running later commands, issue export FABRIC_START_TIMEOUT=
first docker compose down to stop
then create channel code comment
join peer code comment
@alanblyth - couple of things to check -
1. Can you ping your business network with that card ? - if so then there is unlikely to be a problem with the Fabric
2. What versions of composer have you installed ` npm ls -g -depth=0 `
**Help!**
Iset access token for REST-server to "apikey". But I don't see encrypted token in SwaggerUI or in browser cookie. Ok, I tried to set just a header "X-Access-Token: apikey" in my requests to server, but I get responses "401 Unauthorized".
Also REST stop working after few hours without any requests.
**Help!**
I set access token for REST-server to "apikey". But I don't see encrypted token in SwaggerUI or in browser cookie. Ok, I tried to set just a header "X-Access-Token: apikey" in my requests to server, but I get responses "401 Unauthorized".
Also REST stop working after few hours without any requests.
[ ](https://chat.hyperledger.org/channel/composer?msg=RZAGgDKafyjpJbhTY) @VadimInshakov - I've tested the apikey on the REST server like this:
```composer-rest-server -c admin@trade-network -y QQ-apikey-WW -n never
curl -X GET --header 'x-api-key: QQ-apikey-WW' 'http://localhost:3000/api/Trader/t02'
```
( the last /Trader/t02 are specific to my environment )
I don't think cookies are used and afaik the explorer is unavailable when apitoken has been used.
[ ](https://chat.hyperledger.org/channel/composer?msg=wRL9y8av4edSLbYbm) @rthatcher Alans-MacBook-Pro-2:prosthesus-chain alanblyth$ npm ls -g -depth=0
/Users/alanblyth/.nvm/versions/node/v8.9.4/lib
├── composer-cli@0.19.7
├── composer-connector-embedded@0.19.7
├── composer-playground@0.19.7
├── composer-rest-server@0.19.7
└── generator-hyperledger-composer@0.19.7
I think you have pointed me in the right direction, I have deployed the .bna via playground because I am awaiting cloud deployment, I guess I need to deploy it 'properly' to local docker via the scripts that @sghosh2 mentioned for the rest server to be generated correctly?
@alanblyth - yes - and for clarity ... if you start playground without any 'real' fabric available, you use the "Connection: Web Browser" which is a simulated Fabric running in the Browser LocalStorage. If you have a 'Real Fabric' either on a cloud or a locally installed Fabric then you will be able to use Playground to connect to that real fabric. The Developers Tutorial takes you through the pre-reqs and creating a local fabric with startFabric.sh. (and v0.19.7 is the latest version)
https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html
[ ](https://chat.hyperledger.org/channel/composer?msg=WWN5qp6y2ag9mB7pn) @rthatcher brilliant, thanks,
@alanblyth rest servershould generate correctly
Hi, is there a clean way to resolve a relationship of a class which is inherited by others? I mean, I have a relationship to "Vehicle", but my Asset is a "Car", is there a way to resolve them without checking all the registries to all the "childs" of Vehicle? (using composer-client)
hi, i'm trying to define my network participants;
let's say there is an Individual Account and Shared Account controlled by a participant(s). each participant holds amount of something in their account. The question is, how would you map which participant holds how much in the 'Shared account
I treid making concept which holds participant and his share amount, and then making array of this concept in 'Shared Account' but it didn't work
`asset SharedAccount extends Account {
o Shareholder[] shareholders
}
concept Shareholder {
--> Holder shareholder
o Integer amountContributed
}`
[ ](https://chat.hyperledger.org/channel/composer?msg=KDX5P7ugJtiEu2Ehx) nevermind, self-answering, I'll just create the relationship using getNameSpace() and getType() instead of using the base class :)
[ ](https://chat.hyperledger.org/channel/composer?msg=CGxHndDZ3Yn2KaAbx) @rthatcher THANKS A LOT!
@rthatcher Thank you for your reply.
Hello,
I am getting following error in ca container
```
Error: Failed to find private key for certificate in '/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem': Could not find matching private key for SKI: Failed getting key for SKI [[150 118 202 175 58 128 158 236 185 14 70 96 117 119 139 87 96 61 220 194 127 166 78 220 176 194 155 54 250 143 252 219]]: Key with SKI 9676caaf3a809eecb90e466075778b57603ddcc27fa64edcb0c29b36fa8ffcdb not found in /etc/hyperledger/fabric-ca-server/msp/keystore
```
Hello,
I am getting following error in ca container
```
Error: Failed to find private key for certificate in '/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem': Could not find matching private key for SKI: Failed getting key for SKI [[150 118 202 175 58 128 158 236 185 14 70 96 117 119 139 87 96 61 220 194 127 166 78 220 176 194 155 54 250 143 252 219]]: Key with SKI 9676caaf3a809eecb90e466075778b57603ddcc27fa64edcb0c29b36fa8ffcdb not found in /etc/hyperledger/fabric-ca-server/msp/keystore
```
I have deleted crypto-config folder and generated new using cryptogen.
Hello,
I am getting following error in ca container
```
Error: Failed to find private key for certificate in '/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem': Could not find matching private key for SKI: Failed getting key for SKI [[150 118 202 175 58 128 158 236 185 14 70 96 117 119 139 87 96 61 220 194 127 166 78 220 176 194 155 54 250 143 252 219]]: Key with SKI 9676caaf3a809eecb90e466075778b57603ddcc27fa64edcb0c29b36fa8ffcdb not found in /etc/hyperledger/fabric-ca-server/msp/keystore
```
I have deleted crypto-config folder and generated new using cryptogen then I am getting above error.
@tahaf10 responded on S/O on array question - ps. your function `getAvailableDoctors` has a typo ie - `var availblDocs`
@adokce - might want to write a Stack Overflow question, to specify what result you want. ```{
"$class": "org.example.trading.SharedAccount",
"shareholders": [
{
"$class": "org.example.trading.Shareholder",
"shareholder": "resource:org.example.trading.Holder#1",
"amountContributed": 20
},
{
"$class": "org.example.trading.Shareholder",
"shareholder": "resource:org.example.trading.Holder#2",
"amountContributed": 30
}
],
"accountId": "1",
"owner": "resource:org.example.trading.Client#1",
"balance": 50
}``` would be an example
Hello!
When I try to issue identity using `:3000/api/system/identities/issue` I get card without `credentials`.
So, can I get card with `credentials` and how?
@argman - see answer here -> https://stackoverflow.com/questions/48318192/how-to-add-new-user-to-hyperledger-fabric-network-using-rest-api (the docs links should have `/latest/` after composer in the URL fyi)
@mahoney1 I understand this feature with *one time pass* code, but I want to get card using `/api` to login as another user. So, I need card *with* secrete code. Can I do it?
@mahoney1 I understand this feature with *one time pass* code, but I want to get card using `/api` to login as another user. So, I need card *with* secrete code. Can I get it?
If you use http://localhost:3000/api/wallet/import with that card file, and connect to an endpoint, it will exchange the secret for cert/key for the biz card in the wallet. You can then choose to export that to a file from REST if you wish. For another user, you use identity issue again (as an issuer id in the REST API - see example [here](https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc) andimport it, then use the /wallet/name/setDefault/ to switch to that wallet and again connect to an endpoint, will get its cert/key again etc in the wallet see also [here](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) - the google auth tutorial [here](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest), using REST for wallet import, setDefault etc
@argman If you use http://localhost:3000/api/wallet/import with that card file, and connect to an endpoint, it will exchange the secret for cert/key for the biz card in the wallet. You can then choose to export that to a file from REST if you wish. For another user, you use identity issue again (as an issuer id in the REST API - see example [here](https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc) andimport it, then use the /wallet/name/setDefault/ to switch to that wallet and again connect to an endpoint, will get its cert/key again etc in the wallet see also [here](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) - the google auth tutorial [here](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest), using REST for wallet import, setDefault etc
@argman If you use http://localhost:3000/api/wallet/import with that card file, and connect to an endpoint, it will exchange the secret for cert/key for the biz card in the wallet. You can then choose to export that to a file from REST if you wish. For another user, you use identity issue again (as an issuer id in the REST API - see example [here](https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc) andimport it, then use the /wallet/name/setDefault/ to switch to that wallet and again connect to an endpoint, will get its cert/key again etc in the wallet .. see also [here](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) - the google auth tutorial [here](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest), using REST for wallet import, setDefault etc
Hi everyone, newbie on hyperledger composer and had installed it on my mac using docker and playground image running on localhost, however since I did a docker update it has stopped working. I tried to reinstal image from CLI. docker run -- name composer-playground –publish 8080:8080 hyperledger/composer-playground . but now get docker invalid reference format? Any suggestions grealy apprecited. Thanks
@DigitalChangeGeek hi there, suggest to remove the old `docker stop composer-playground ; docker rm --force composer-playground` and re-run `docker run --name composer-playground --publish 8080:8080 --detach hyperledger/composer-playground` - or stand up a dev Fabric environment and install local composer-playground tool locally to connect to that more [here](https://hyperledger.github.io/composer/latest/installing/development-tools)
Hi,
Just a small question :
Composer command throw SSH says "Command not found". Any idea ?
PS : Works normally when connect directly to the machine.
Has joined the channel.
Hi there - Could someone help on Angular App for Hyperledger.. I am all set and my angular application is running fine & connected with RST-API. But transaction user interface is blank
Could some assist in workaround, I ensured that all packages are latest & i am running this in Latest Version V1.1(hyperledger)
[ ](https://chat.hyperledger.org/channel/composer?msg=GmztKLTZ4cXmWH2gs) @Logi - Transactions are not available through the generated application at the moment. If you scroll to the bottom of this issue in GitHub you will see the latest status: https://github.com/hyperledger/composer/issues/3136
[ ](https://chat.hyperledger.org/channel/composer?msg=rkWrRMNH9gqgwCuYy) @mahoney1 But when I try to use that card in `http://localhost:3000/api/wallet/import` I get next message:
```{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Corrupted zip: missing 280866524 bytes.",```
@argman hmm interesting. What version of Composer are you using ? Not tried this step lately but looks the download is application/json by default and then the card appears corrupt, if application/octet-stream is used then the card should be downloaded ok
@argman hmm interesting. What version of Composer are you using ? Not tried this step lately but looks the download is application/json by default and then the card appears corrupt, if application/octet-stream is used then the card should be downloaded ok (example shown [here](https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc)
@argman hmm interesting. What version of Composer are you using ? Not tried this step lately but looks the download is application/json by default and then the card appears corrupt, if application/octet-stream is used then the card should be downloaded ok (example shown [here](https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc) )
@argman hmm interesting. What version of Composer are you using ? Not tried this step lately but looks like the download is application/json by default and then the card appears corrupt, if application/octet-stream is used then the card should be downloaded ok (example shown [here](https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc) )
@mahoney1 It's 0.19.0 version. I'm creating test url to download file: `callback = (res) => { var $div = $(`test`).appendTo('body');console.log(res)}`
@mahoney1 It's 0.19.0 version. I'm creating test url to download file: `callback = (res) => { var $div = $('test').appendTo('body');console.log(res)}`
On composer playground, https://composer-playground.mybluemix.net/test, When i try to do an AssignWork transaction, I get following error
```
t: Instance better.awd.Work#4444 missing required field hash
```
It's getting the same error as the following ticket: #107
https://github.com/hyperledger/composer-sample-networks/issues/107
107's error was redirected to ticket 2540 but wasn't solved.
woops
On composer playground, https://composer-playground.mybluemix.net/test, When i try to do an AssignWork transaction, I get following error:
```
t: Instance better.awd.Work#4444 missing required field hash
```
However, the AssignWork transaction doesn't require a hash and the Work asset has a non empty has field
```
```
It's getting the same error as the following ticket: #107
https://github.com/hyperledger/composer-sample-networks/issues/107
107's error was redirected to ticket 2540 but wasn't solved.
On composer playground, https://composer-playground.mybluemix.net/test, When i try to do an AssignWork transaction, I get following error:
```
t: Instance better.awd.Work#4444 missing required field hash
```
However, the AssignWork transaction doesn't require a hash and the Work asset has a non empty has field
```
{
"$class": "better.awd.Work",
"id": "4444",
"hash": "5678",
"employee": "resource:better.awd.Employee#a",
"stage": "gotwork"
}
```
```
transaction AssignWork {
--> Employee employee
--> Work work
o String link optional
}
```
It's getting the same error as the following ticket: #107
https://github.com/hyperledger/composer-sample-networks/issues/107
107's error was redirected to ticket 2540 but wasn't solved.
@mahoney1 @rthatcher
On composer playground, https://composer-playground.mybluemix.net/test, When i try to do an AssignWork transaction, I get following error:
```
t: Instance better.awd.Work#4444 missing required field hash
```
However, the AssignWork transaction doesn't require a hash and the Work asset has a non empty has field
```
{
"$class": "better.awd.Work",
"id": "4444",
"hash": "5678",
"employee": "resource:better.awd.Employee#a",
"stage": "gotwork"
}
```
```
transaction AssignWork {
--> Employee employee
--> Work work
o String link optional
}
```
I think I'm getting the same error as the following ticket: #107
https://github.com/hyperledger/composer-sample-networks/issues/107
107's error was redirected to ticket 2540 but wasn't solved.
https://github.com/hyperledger/composer/issues/2540
relevant permissions code
```
rule EmployeesCanAssignWork {
description: "Allow all employee to use AssignWork Transaction"
participant(p): "better.awd.Employee"
operation: CREATE
resource(r): "better.awd.AssignWork"
condition: (r.work.employee.getIdentifier() == p.getIdentifier())
action: ALLOW
}
rule AllowChangingOwnerWithAssignWork {
description: "Allow all employees to assign work they own to someone else"
participant(p): "better.awd.Employee"
operation: READ, UPDATE
resource(r): "better.awd.Work"
transaction(tx): "better.awd.AssignWork"
condition: (tx.work.employee.getIdentifier() == p.getIdentifier())
action: ALLOW
}
```
relevant logic code
```
/*
get a work object
@param {better.awd.AssignWork} tx
@transaction
}*/
async function AssignWork(tx) {
//i commented everything out here to make sure it wasn't the transaction processor function
}
```
@mahoney1 @rthatcher
On composer playground, https://composer-playground.mybluemix.net/test, When i try to do an AssignWork transaction, I get following error:
```
t: Instance better.awd.Work#4444 missing required field hash
```
However, the AssignWork transaction doesn't require a hash and the Work asset has a non empty has field
```
{
"$class": "better.awd.Work",
"id": "4444",
"hash": "5678",
"employee": "resource:better.awd.Employee#a",
"stage": "gotwork"
}
```
```
transaction AssignWork {
--> Employee employee
--> Work work
o String link optional
}
```
I think I'm getting the same error as the following ticket: #107
https://github.com/hyperledger/composer-sample-networks/issues/107
107's error was redirected to ticket 2540 but wasn't solved.
https://github.com/hyperledger/composer/issues/2540
relevant permissions code
```
rule EmployeesCanAssignWork {
description: "Allow all employee to use AssignWork Transaction"
participant(p): "better.awd.Employee"
operation: CREATE
resource(r): "better.awd.AssignWork"
condition: (r.work.employee.getIdentifier() == p.getIdentifier())
action: ALLOW
}
rule AllowChangingOwnerWithAssignWork {
description: "Allow all employees to assign work they own to someone else"
participant(p): "better.awd.Employee"
operation: READ, UPDATE
resource(r): "better.awd.Work"
transaction(tx): "better.awd.AssignWork"
condition: (tx.work.employee.getIdentifier() == p.getIdentifier())
action: ALLOW
}
```
relevant logic code
```
/*
get a work object
@param {better.awd.AssignWork} tx
@transaction
}*/
async function AssignWork(tx) {
//i commented everything out here to make sure it wasn't the transaction processor function
}
```
i have two other transactions with a hash parameter but I checked that the $class was correct
```
transaction CreateWork {
o String workId
o String hash
--> Employee employee
}
transaction GetWork {
o String hash
--> Employee employee
}
```
edit: im an idiot. 2 transaction process functions has the same @argman
On composer playground, https://composer-playground.mybluemix.net/test, When i try to do an AssignWork transaction, I get following error:
```
t: Instance better.awd.Work#4444 missing required field hash
```
However, the AssignWork transaction doesn't require a hash and the Work asset has a non empty has field
```
{
"$class": "better.awd.Work",
"id": "4444",
"hash": "5678",
"employee": "resource:better.awd.Employee#a",
"stage": "gotwork"
}
```
```
transaction AssignWork {
--> Employee employee
--> Work work
o String link optional
}
```
I think I'm getting the same error as the following ticket: #107
https://github.com/hyperledger/composer-sample-networks/issues/107
107's error was redirected to ticket 2540 but wasn't solved.
https://github.com/hyperledger/composer/issues/2540
relevant permissions code
```
rule EmployeesCanAssignWork {
description: "Allow all employee to use AssignWork Transaction"
participant(p): "better.awd.Employee"
operation: CREATE
resource(r): "better.awd.AssignWork"
condition: (r.work.employee.getIdentifier() == p.getIdentifier())
action: ALLOW
}
rule AllowChangingOwnerWithAssignWork {
description: "Allow all employees to assign work they own to someone else"
participant(p): "better.awd.Employee"
operation: READ, UPDATE
resource(r): "better.awd.Work"
transaction(tx): "better.awd.AssignWork"
condition: (tx.work.employee.getIdentifier() == p.getIdentifier())
action: ALLOW
}
```
relevant logic code
```
/*
get a work object
@param {better.awd.AssignWork} tx
@transaction
}*/
async function AssignWork(tx) {
//i commented everything out here to make sure it wasn't the transaction processor function
}
```
i have two other transactions with a hash parameter but I checked that the $class was correct
```
transaction CreateWork {
o String workId
o String hash
--> Employee employee
}
transaction GetWork {
o String hash
--> Employee employee
}
```
edit: im an idiot. 2 transaction process functions has the same "@param"
On composer playground, https://composer-playground.mybluemix.net/test, When i try to do an AssignWork transaction, I get following error:
```
t: Instance better.awd.Work#4444 missing required field hash
```
However, the AssignWork transaction doesn't require a hash and the Work asset has a non empty has field
```
{
"$class": "better.awd.Work",
"id": "4444",
"hash": "5678",
"employee": "resource:better.awd.Employee#a",
"stage": "gotwork"
}
```
```
transaction AssignWork {
--> Employee employee
--> Work work
o String link optional
}
```
I think I'm getting the same error as the following ticket: #107
https://github.com/hyperledger/composer-sample-networks/issues/107
107's error was redirected to ticket 2540 but wasn't solved.
https://github.com/hyperledger/composer/issues/2540
relevant permissions code
```
rule EmployeesCanAssignWork {
description: "Allow all employee to use AssignWork Transaction"
participant(p): "better.awd.Employee"
operation: CREATE
resource(r): "better.awd.AssignWork"
condition: (r.work.employee.getIdentifier() == p.getIdentifier())
action: ALLOW
}
rule AllowChangingOwnerWithAssignWork {
description: "Allow all employees to assign work they own to someone else"
participant(p): "better.awd.Employee"
operation: READ, UPDATE
resource(r): "better.awd.Work"
transaction(tx): "better.awd.AssignWork"
condition: (tx.work.employee.getIdentifier() == p.getIdentifier())
action: ALLOW
}
```
relevant logic code
```
/*
get a work object
@param {better.awd.AssignWork} tx
@transaction
}*/
async function AssignWork(tx) {
//i commented everything out here to make sure it wasn't the transaction processor function
}
```
i have two other transactions with a hash parameter but I checked that the $class was correct
```
transaction CreateWork {
o String workId
o String hash
--> Employee employee
}
transaction GetWork {
o String hash
--> Employee employee
}
```
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=uXKvKfJZQAXfX4BvW) @HoneyShah @rthatcher Guys ```
Followed the exact same steps using multiple browsers. However i am unable to get individual wallet per user. It worked quite well with github. Am i messing up the jwt token payload ?```
payload looks like```
``` {username:"xyz",email:"xyz@abc.com"}```
{username:"def",email:"def@abc.com"}```
Any help with this is greatly appreciated!!
```
```
``` ```
[ ](https://chat.hyperledger.org/channel/composer?msg=TcKYTz6kxBGzrHWJJ) Figured it out!! Looks like the payload should contain "id" as one of the claims to create a unique wallet/session!!
I worked with this Loyalty Points Sample here: https://developer.ibm.com/code/patterns/customer-loyalty-program-with-blockchain/ Quick question: I add to add a delay between the time a participant is created in the registry and an identity is issued. If I did not, I would get an error caught saying the participant was not found. What is that? And doesn't an await in Node wait for statement to be completed? //add partner participant
const participantRegistry = await businessNetworkConnection.getParticipantRegistry(namespace + '.Partner');
await participantRegistry.add(partner);
//sleep
console.time('Sleeping');
await timeout(3000);
console.timeEnd('Sleeping'); // Sleeping: 1507.180ms
//issue identity
const identity = await businessNetworkConnection.issueIdentity(namespace + '.Partner#' + partnerId, cardId);
I worked with this Loyalty Points Sample here: https://developer.ibm.com/code/patterns/customer-loyalty-program-with-blockchain/ Quick question: I had to add a delay between the time a participant is created in the registry and an identity is issued. If I did not, I would get an error caught saying the participant was not found. Why is that? And doesn't an await in Node wait for statement to be completed? //add partner participant
const participantRegistry = await businessNetworkConnection.getParticipantRegistry(namespace + '.Partner');
await participantRegistry.add(partner);
//sleep
console.time('Sleeping');
await timeout(3000);
console.timeEnd('Sleeping'); // Sleeping: 1507.180ms
//issue identity
const identity = await businessNetworkConnection.issueIdentity(namespace + '.Partner#' + partnerId, cardId);
const timeout = ms => new Promise(res => setTimeout(res, ms));
@mahoney1 extreme thanks for the help man. But I'm afraid I'm gonna ask for some more
https://stackoverflow.com/questions/50651728/how-to-bring-an-app-developed-on-hyperledger-composer-to-production
Has joined the channel.
I see composer 0.19.7 was released on yesterday. Could anybody please explain what was changed in composer 0.19.7?
Has joined the channel.
If we are not able to connect composer playground to localhost:8080 despite port being open from ubuntu server hosted on VMware. What to do to make it connected to the windows localhost? ( I have server.iso file only on vm ) please help me out. Thanks
How to use Composer npm modules with Typescript?
I'm trying this:
```
import { IdCard } from 'composer-common';
const newIdCard: any = new IdCard(meta, pathToProfile);
let cardBytes: any = await newIdCard.toArchive();
console.log(cardBytes);
```
And when I transpile it, i get error:
```
node_modules/@types/jszip/index.d.ts(33,11): error TS2304: Cannot find name 'Blob'.
node_modules/@types/jszip/index.d.ts(44,11): error TS2304: Cannot find name 'Blob'.
```
ronbiz
While running the command "composer card "
It is saying
composer card create -f ca.card -p connection-profile.json -u admin -s 3c0418d798
[InvalidArgumentException]
Command "card" is not defined.
I have installed the composer-cli correctly, but card option is not coming
[ ](https://chat.hyperledger.org/channel/composer?msg=mDxdAZfoxF4uGZfAk) @Arindam check version of composer
```
[ ](https://chat.hyperledger.org/channel/composer?msg=mDxdAZfoxF4uGZfAk) @Arindam check version of composer
Composer version @package_branch_alias_version@ (1.0.0-beta2) 2016-03-27 16:00:34
How to get latest version of composer? I have followed the development environment steps
[ ](https://chat.hyperledger.org/channel/composer?msg=sb9KvoAxpJqt2QR74) @Arindam
```npm uninstall -g composer-cli
npm install -g composer-cli@0.19.6
```
Thanbks a lot, trying
I have installed it , but after that it is showing:
+ composer-cli@0.19.6
added 3 packages from 2 contributors and audited 14493 packages in 18.795s
found 158 vulnerabilities (119 low, 11 moderate, 28 high)
run `npm audit fix` to fix them, or `npm audit` for details
root@MyPC:~# composer card
The program 'composer' is currently not installed. You can install it by typing:
apt install composer
Can you please tell why it is saying composer is not installed
[ ](https://chat.hyperledger.org/channel/composer?msg=RoHRA9vLfGsvfduZ3) @Arindam Did you use exactly the same commands as the ones I showed? Did you use the ```sudo``` or not? What OS are you use?
[ ](https://chat.hyperledger.org/channel/composer?msg=RoHRA9vLfGsvfduZ3) @Arindam Did you use exactly the same commands as the ones I showed? Did you use the **sudo** or not? What OS are you use?
I am using os ubuntu 16.04
for using "-g" option it is giving permission denied for "node-gyp"
So, I have used without "-g"
I have not used sudo
so, you need -g
root@MyPC:~# npm install -g composer-cli
/root/.nvm/versions/node/v8.11.2/bin/composer -> /root/.nvm/versions/node/v8.11. 2/lib/node_modules/composer-cli/cli.js
> dtrace-provider@0.8.7 install /root/.nvm/versions/node/v8.11.2/lib/node_module s/composer-cli/node_modules/dtrace-provider
> node-gyp rebuild || node suppress-error.js
sh: 1: node-gyp: Permission denied
sh: 1: node: Permission denied
> node-report@2.2.1 install /root/.nvm/versions/node/v8.11.2/lib/node_modules/co mposer-cli/node_modules/node-report
> node-gyp rebuild
sh: 1: node-gyp: Permission denied
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules/com poser-cli/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@ 1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"} )
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: dtrace-provider@0.8.7 (node_modu les/composer-cli/node_modules/dtrace-provider):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: dtrace-provider@0.8.7 install: ` node-gyp rebuild || node suppress-error.js`
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: spawn ENOENT
sh: 1: node-gyp: Permission denied
sh: 1: node: Permission denied
ok
you need non-root user in Ubuntu
create it and try all installing again
Thanks trying
I am trying to connect hyperledger-explorer to a hyperledger-composer network, I followed the instructions in the github repo,both build and run : https://github.com/hyperledger/blockchain-explorer. I see no errors in console or log file, but when I navigate to localhost:8080, it tries to load the network and then I see a blank screen. In the web browser console. it says : WebSocket connection to 'ws://localhost:8080/' failed: WebSocket is closed before the connection is established. And then I get type -errors, because the HeaderView.js cannot read channels [probably cannot fetch from server since ws is closed]. This is my config.json file :
{
"network-config": {
"org1": {
"name": "peerOrg1",
"mspid": "Org1MSP",
"peer1": {
"requests": "grpc://127.0.0.1:7051",
"events": "grpc://127.0.0.1:7053",
"server-hostname": "peer0.org1.example.com"
},
"admin": {
"key": "/Users/Sumeet/fabric-dev-servers/fabric-scripts/hlfv11/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore",
"cert": "/Users/Sumeet/fabric-dev-servers/fabric-scripts/hlfv11/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts",
"tls_cacerts": "/Users/Sumeet/fabric-dev-servers/fabric-scripts/hlfv11/composer/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt"
}
}
},
"host": "localhost",
"port": "8080",
"channel": "composerchannel",
"keyValueStore": "/tmp/fabric-client-kvs",
"eventWaitTime": "30000",
"users": [{
"username": "admin",
"secret": "adminpw"
}],
"pg": {
"host": "127.0.0.1",
"port": "5432",
"database": "fabricexplorer",
"username": "postgres",
"passwd": "sumeet"
},
"license": "Apache-2.0"
}
What am I doing wrong? I have been trying to debug this for whole day with no success
Has joined the channel.
hyperledger composer business network definition(BND)
I cannot locate the logic.js file created when i formed the skeleton business network using Yeoman generator
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hey guys, facing an issue with composer network start.: `status: Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: chaincode exists trade-network)`
Hey guys, I am facing an issue while Starting the business network. I have run the command `composer identity request` with success. But getting an error while running `composer network start -c PeerAdmin@byfn-network-org1 -n trade-network -V 0.3.0 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem`. i cross checked that the version of the package.json of the bna file is same as the one mentioned here - 0.3.0.
Hey guys, I am facing an issue while starting the business network. I have run the command `composer identity request` with success but I am getting an error while running `composer network start -c PeerAdmin@byfn-network-org1 -n trade-network -V 0.3.0 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem`. I cross checked that the version of the package.json of the bna file is same as the one mentioned here - 0.3.0. Any help would be really appreciated.
here is the error that I ama getting: 'https://hastebin.com/howunevila'
here is the error that I am getting: 'https://hastebin.com/howunevila'
Here is the error that I am getting: `https://hastebin.com/howunevila` and the output of docker ps: `https://hastebin.com/ibabeqimeg`
Can someone help me with how to add assets on the command line. This is the command I used , composer transaction submit --card admin@tutorial-network -d '{"$class": "org.hyperledger.composer.system.AddAsset","registryType": "Asset","registryId": "org.example.mynetwork.Commodity", "targetRegistry" : "resource:org.hyperledger.composer.system.AssetRegistry#org.example.mynetwork.Commodity", "resources": [{"$class": "org.example.mynetwork.Commodity","tradingSymbol": "BAC","description": "Tomato","mainExchange": "Hello","Quantity": 2,"owner": "org.example.mynetwork.Trader#sur"}]}'
could someone tell me where I am going wrong - ValidationException: Unexpected properties for type org.hyperledger.composer.system.AddAsset: registryType, registryId. This is the error
Where are the certificates stored when I create the identity using api?
I do this:
```
await businessNetworkConnection.issueIdentity(participant, userName);
fs.readFile(profilePath, (err, data)=>{
let card = new IdCard(metadataForCard, JSON.parse(data));
let archive = card.toArchive();
```
I get zip archive, but it created without any certificates. How can I issue certificates and include them into card?
[ ](https://chat.hyperledger.org/channel/composer?msg=dYbhGkZKgSGcnqgTE) @goelmayank - the error shown in your first extract _chaincode exists trade-network_ is repeated for each of the peers and looking at the list of Container from the docker ps command, there are chaincode containers for v0.3.0 of your network for each of the peers. It looks like the command is being run for a second time, and hence the errors. Assuming you are following the Multi-org tutorial - I think you can continue with the next step.
[ ](https://chat.hyperledger.org/channel/composer?msg=aq8GenJpBXSqDk4LC) @suryasuresh06 - I don't know if this is causing the error, but for the final value you need to include *resource* e.g. ` "owner": "resource:org.example.mynetwork.Trader#sur" `
[ ](https://chat.hyperledger.org/channel/composer?msg=vSxmEaFBhhidQBPqP) @VadimInshakov - when an Identity is Issued, you get a name and one-time secret - you don't get the certificates until the first time the card is used to connect to the network.
Has joined the channel.
@rthatcher it didn't work after that change. It says there is an error in registry type and registry ID
hello ,I happen a problem ,how can I only use composer-playground link the network
Does anyone know?
I want to use composer-playground to link the remote network
what can i do ?
[ ](https://chat.hyperledger.org/channel/composer?msg=SLorAb5JoLwcK3i59) @suryasuresh06 - can you run a `composer network list` command to confirm the classes of your network
can I use composer-playground(in the composer-playground) to link network,
dose anyone know?
[ ](https://chat.hyperledger.org/channel/composer?msg=98CRWHF3EfnMDhSy7) @yulong12 yes, you can connect to it: you build the appropriate [business network cards](https://hyperledger.github.io/composer/latest/playground/id-cards-playground) , with the right [connection profiles](https://hyperledger.github.io/composer/latest/reference/connectionprofile.html) to connect to your remote Fabric environment from Playground.
Clipboard - June 4, 2018 5:21 PM
but how can i link to it
@rthatcher models:
- org.hyperledger.composer.system
- org.example.mynetwork
scripts:
- lib/logic.js
registries:
org.example.mynetwork.Commodity:
id: org.example.mynetwork.Commodity
name: Asset registry for org.example.mynetwork.Commodity
registryType: Asset
org.example.mynetwork.Trader:
id: org.example.mynetwork.Trader
name: Participant registry for org.example.mynetwork.Trader
registryType: Participant
assets:
sur:
$class: org.example.mynetwork.Trader
tradeId: sur
firstName: Surya
lastName: Suresh
These were the classes
@mahoney1 i create the card fished,but I don't know how to link
@suryasuresh06 - I have tested your command, and got the same error. Now I have removed the 2 properties _ registryType, and registryId_ (and their values) and the command completes OK.
oh ok. Thanks a ton
[ ](https://chat.hyperledger.org/channel/composer?msg=5XqhqWDfJkduHiexC) @suryasuresh06 - there is an error in the example command in the multi-org tutorial which I will fix - where did you get your command from - is there another error in the doc ?
no I couldn't find it in the documentation. I got it from another GitHub repository
https://gist.github.com/jt-nti/137a039eb21992136c3f3e54c5c50fa5#file-org-hyperledger-composer-system-addasset-txt
[ ](https://chat.hyperledger.org/channel/composer?msg=Ddnrp728QDMRTwAxx) @suryasuresh06 - great thanks for that reference - I can follow up.
[ ](https://chat.hyperledger.org/channel/composer?msg=gMcqvQGPAW74NZoPn) @rthatcher does this mean that my code for generating cards is valid?
@VadimInshakov - I would take the .card file and test it on the command line with `composer card import` and `composer network ping` then you will know for sure.
[ ](https://chat.hyperledger.org/channel/composer?msg=kg68qM5WoPkKteCj5) @rthatcher thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=Ddnrp728QDMRTwAxx) @suryasuresh06 Hi, sorry, I think this recent change has highlighted a couple of properties that should not have been there. I've updated the gist to remove them... https://gist.github.com/jt-nti/137a039eb21992136c3f3e54c5c50fa5
@jtonline great!! thanks
@jtonline great!! thanks
@rthatcher I went ahead with the tutorial and successfully ran the command: `composer card import -f alice@trade-network.card`
Looking at the error message: `https://hastebin.com/amozuqiwin`while running the command: `composer network ping -c alice@trade-network`, how do I create the missing identity?
Also this command `composer network start -c PeerAdmin@byfn-network-org1 -n trade-network -V 0.3.0 -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
` gave a similar error as the original one: `https://hastebin.com/bopudusare`. The docker ps output: `https://hastebin.com/tujoqepoho`
Also this command `composer network start -c PeerAdmin@byfn-network-org1 -n trade-network -V 0.3.0 -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem` gave a similar error as the original one: `https://hastebin.com/bopudusare`. The docker ps output: `https://hastebin.com/tujoqepoho`
Also this command `composer network start -c PeerAdmin@byfn-network-org1 -n trade-network -V 0.3.0 -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem` gave a similar error as the original one: https://hastebin.com/bopudusare. The docker ps output: https://hastebin.com/tujoqepoho
hello i made generation for transaction in angular generation and i want to pull request but how could i find the user story for angular generation ?
@rthatcher @mahoney1 @jtonline
I did the angular tutorial and noticed there are views made for transactions. They're clickable in the dropdown bar. When i click them, i expect to see the form fields that are in the html but i only get a paragrapgh
```
GetWork
When invoked, this transaction will have the following attributes:
hash
employee
transactionId
timestamp
```
[ ](https://chat.hyperledger.org/channel/composer?msg=kg68qM5WoPkKteCj5) @rthatcher I tried to import card and get this error:
```
Error: Unable to read card file: /home/vadim/workchain/inno/test10@inno.card
Command failed
```
My card is not properly created. Can you tell me what I did wrong?
```
await businessNetworkConnection.connect(meta.adminCard);
//issue identity
let result = await businessNetworkConnection.issueIdentity(`${meta.participantSignature}#${meta.participantId}`, meta.userName);
console.log(`userID = ${result.userID}`);
console.log(`userSecret = ${result.userSecret}`);
//create card
let metadataForCard = {version: 1, userName: result.userID, enrollmentSecret: result.userSecret, businessNetwork: businessNetwork};
fs.readFile(profilePath, (err: any, data: any)=>{
let card: any = new IdCard(metadataForCard, JSON.parse(data));
let archive: any = card.toArchive();
if (!fs.existsSync('./cards')){
fs.mkdirSync('./cards');
}
fs.writeFile('./cards/'+result.userID+'@'+businessNetwork, archive, (err: any)=>{
if (err) throw err
console.log('Archive created!');
});
})
```
I get zip archive [name]@[networkname].card, but it invalid. But I can't find any tutorial about card creating with composer API's.
@VadimInshakov I don't see your card import sequence above (eg `const idCardName = BusinessNetworkCardStore.getDefaultCardName(idCardData);
try{ const imported = await adminConnection.importCard(idCardName, idCardData); ` but an example (although using MemoryCardStore there, similar applies) is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L80 - if you use the card, it will exchange the secret for certificate/key downloaded to your wallet - then you can do the `toArchive etc` to create the card archive.
@VadimInshakov I don't see your card import sequence above (eg ```const idCardName = BusinessNetworkCardStore.getDefaultCardName(idCardData);
try{ const imported = await adminConnection.importCard(idCardName, idCardData); ``` but an example (although using MemoryCardStore there, similar applies) is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L80 - if you use the card, it will exchange the secret for certificate/key downloaded to your wallet - then you can do the `toArchive etc` to create the card archive.
@VadimInshakov I don't see your card import sequence above (eg ```const idCardName = BusinessNetworkCardStore.getDefaultCardName(idCardData);
try{ const imported = await adminConnection.importCard(idCardName, idCardData); } catch(error){ throw error; }``` but an example (although using MemoryCardStore there, similar applies) is here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L80 - if you use the card, it will exchange the secret for certificate/key downloaded to your wallet - then you can do the `toArchive etc` to create the card archive.
@nasserfci hi there, the user story is here -> https://github.com/hyperledger/composer/issues/3136 - also you can check the Contributing guidelines here -> https://github.com/hyperledger/composer/blob/master/CONTRIBUTING.md and pull request guidelines
[ ](https://chat.hyperledger.org/channel/composer?msg=9BELSredo6w7mzGoR) @mahoney1 great, I will try it.
@goelmayank one assumes you followed Step One through Seventeen of that tutorial - on the same running fabric - at which point - the card import / ping of Step Eighteen, per the tutorial, should work. The problem you have at the moment it seems may have old card data for `alice@trade-network` already there. You could delete `composer card delete -c alice@trade-network` and then check under $HOME/.composer that the card data (for that card) is no longer there ie no directory name exists under `card` or `client-data` - then do 'Step Eighteen' again (build the card, ping the network etc) - assuming your `alice` credentials are still in the same directory when you do the `composer card create` (and the identity for which you must have previously run the `composer identity request` cmd)
@goelmayank one assumes you followed Step One through Seventeen of that tutorial - on the same running fabric - at which point - the card import / ping of Step Eighteen, per the tutorial, should work. The problem you have at the moment it seems may have old card data for `alice@trade-network` already there. You could delete `composer card delete -c alice@trade-network` and then check under $HOME/.composer that the card data (for that card) is no longer there ie no `alice@trade-network` directory name exists under `cards` or `client-data` - then do 'Step Eighteen' again (build the card, ping the network etc) - assuming your `alice` credentials are still in the same directory when you do the `composer card create` (and the identity for which you must have previously run the `composer identity request` cmd)
We're using the IBM Starter plan and trying to look at the logs for the peer using Kibana and it was working, but now Kibana is not showing anything within the last 24 hours. Has anyone run in to this issue and have any idea how to resolve it?
Has joined the channel.
Hi, is there a way of getting all assets within an acl rule in a non asynchronous way? Instead of `getAssetRegistry`?
Has joined the channel.
Hey Guys
I'm trying to deploy my project in the IBM Blockchain platform
(Hyperledger Composer)
but getting unknown errors
is there anyone else encountered similar issues?
Has joined the channel.
Has joined the channel.
Hey all, I have an item with the following format:
asset Item identified by id {
o String id
--> Member creator
}
Member is of type participant. Is it possible to assign the caller of the transaction as the creator of this item? If so, how will that be coded in the js file for the transaction?
I am working on Hyperledger Composer
I cannot locate the logic.js file created when i formed the skeleton business network using Yeoman generator
Has joined the channel.
Hello ! I have a transaction linked on two assets. One asset have a property which list all transactions link on this asset. If i modify one or the other asset (made a put on it), all "transaction" in my list disepear and asset have an empty list.
Does someone know why ? Is it possible to change this ?
@SidEnigma it should be in ./
@mahoney1 Hello! So, can you help me?
https://chat.hyperledger.org/channel/composer?msg=w5h6bECby8GXREtxc
@mahoney1 Hello! So, can you help me?
Has joined the channel.
Hello everyone .
a
Hello everyone .
I have been trying to find a solution to this :
```abstract concept Location {
o Double lat
o Double lng
}
asset Ride identified by id{
o String id
o Location from
o Location to
--> Customer customer```
```abstract concept Location {
o Double lat
o Double lng
}
asset drive identified by id{
o String id
o Location from
o Location to
--> Customer customer```
```abstract concept Location {
o Double lat
o Double lng
}
asset drive identified by id{
o String id
o Location from
o Location to
--> Person person```
WHen I'm trying to send in values to this like ``` "from":{
"$class":"org.oc.Location",
"lat":12.12,
"lng":13.13
},
"to":{
"$class":"org.oc.Location",
"lat":12.12,
"lng":13.13
}``` I get Error: Cannot instantiate Abstract Type Location in namespace org.oc
please let me know what i've been doing wrong here .
@karthik.ir Location is just a concept, i don't think you can instantiate it like this. Personnaly, i "create" concept in a transaction... Maybe you can just test with deleted ""$class":"org.oc.Location" but i don't know if it will work
@Poneey no even without `$class` it does not work . Actually I'm trying it from the transaction itself.
@karthik.ir For me :
I have "Vaccin" as concept and i have asset "child" which have a property "o Vaccin[] vaccins"
So, in my transaction "vaccinate" (in logic.js) i just do :
var vaccin = factory.newConcept('vaccinspace', 'Vaccin', vaccinate.aboutvaccin.vaccinId);
vaccinate.inchild.addArrayValue("vaccins", vaccin)
I don't know if it clear and if it can help you ...
@Poneey hmmmm.how do you pass vaccin object to the transaction? Can you share the json format of the input ?
( @karthik.ir thanks, by helping you i found the cause of an error which i had not fixed yet)
@karthik.ir i will send you my code in private
[ ](https://chat.hyperledger.org/channel/composer?msg=Ekqn7FXcfFaTFnHPo) @karthik.ir - if you remove 'abstract' from the definition of Location it should work.
Works!!! Thanks a lot @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=Jqb7scvtYZp6cAkdn) @Poneey - I think this section in the knowledge wiki will help: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration
@rthatcher Thanks, i will check that
@rthatcher @mahoney1 Sorry for stupid question. I am configuring fabric for two machines. do we need to generate new crypto-config for second machine or we need to copy it from first?
[ ](https://chat.hyperledger.org/channel/composer?msg=Q5jimnTnTuu78KkFb) @HoneyShah - I have previously done a test like yours, and I copied the crypto material. I have not tested regenerating it.
[ ](https://chat.hyperledger.org/channel/composer?msg=BY7hLa9pQFfHDuSvG) @rishabh1102 - I think that `getCurrentParticipant()` if what you need in your Transaction function, and the property will be ` getFullyQualifiedIdentifier() ` to use in the reference.
[ ](https://chat.hyperledger.org/channel/composer?msg=5GNki5Surs7YtYjZL) @ThomasBereczky - I think you should raise a ticket with the IBM Cloud platform. If you are seeing errors with composer network start, it might help to restart your peer(s) and retry the command.
@rthatcher Okay I will try by copying
@rthatcher I looked at your link, it explain issue if i change model of my asset. But i don't change my model, i just change value of an attribut (just do a put)
Hi everyone, is this possible to force a node to invoke a transaction directly in the chaincode. My case: A delivery guy invokes the transaction 'deliver' through his company node. In my network I also have a simulated IoT (temperature sensor) node. I want the IoT node to automatically invoke a 'sendTemperature' transaction just after the 'deliver' has been invoked. Thanks !
Thanks @rthatcher! One more thing, I was using playground to create a participant. I created one, but as soon as I switched to that identity, I suddenly can't access any files anymore or switch back to admin either. I'm getting the following error: Participant 'org.xx.xx.xx#M1Rish' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#xx@0.0.2-deploy.11'
Is there any work around to this?
@rthatcher could you pls explain how to deploy to multiple computers. I realise that I need to modify the connection.json file but am not sure how to procee
composer network install -c PeerAdmin@fabric-network -a tutorial-network@0.0.1.bna
{
"name": "fabric-network",
"x-type": "hlfv1",
"version": "1.0.0",
"peers": {
"peer0.org1.example.com": {
"url": "grpc://localhost:7051",
"eventUrl": "grpc://localhost:7053"
},
"peer1.org1.example.com": {
"url": "grpc://localhost:8051",
"eventUrl": "grpc://localhost:8053"
},
"peer2.org1.example.com": {
"url": "grpc://localhost:9051",
"eventUrl": "grpc://localhost:9053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://localhost:7054",
"caName": "ca.org1.example.com"
}
},
"orderers": {
"orderer.example.com": {
"url": "grpc://localhost:7050"
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com",
"peer1.org1.example.com",
"peer2.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
}
},
"channels": {
"composerchannel": {
"orderers": [
"orderer.example.com"
],
"peers": {
"peer0.org1.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer1.org1.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer2.org1.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
}
}
}
},
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
}
}
This is my connection.json
Hi,
I am quite new to Hyperledger Composer and I really need your help guys!
I need to create an asset that would be defined dynamically with N amount of properties which aren't known at this moment and would be defined by the end user. I assume that this could be done by using decorators in the modeling language, but I didn't find any examples that fully explains how to use them including Front-End interaction.
To be more clear I need an advice on how is it possible to implement something like this as a result:
`asset $CustomNameFromFrontEnd {
o $TypeFromFrontEnd1 $PropertyNameFromFrontEnd1
o $TypeFromFrontEnd2 $PropertyNameFromFrontEnd2
…
o $TypeFromFrontEndN $PropertyNameFromFrontEndN
}`
I would really appreciate for help!
Hi,
I am quite new to Hyperledger Composer and I really need your help guys!
I need to create an asset that would be defined dynamically with N amount of properties which aren't known at this moment and would be defined by the end user. I assume that this could be done by using decorators in the modeling language, but I didn't find any examples that fully explains how to use them including Front-End interaction.
To be more clear I need an advice on how is it possible to implement something like this as a result:
```asset $CustomNameFromFrontEnd {
o $TypeFromFrontEnd1 $PropertyNameFromFrontEnd1
o $TypeFromFrontEnd2 $PropertyNameFromFrontEnd2
…
o $TypeFromFrontEndN $PropertyNameFromFrontEndN
}```
I would really appreciate for help!
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=g3BvXi6fi3oyg94Jk) @Elulup - have you seen the 'Events' feature in Composer? This StackOverflow question and the links in it should help: https://stackoverflow.com/questions/50663157/hyperledger-transaction-react-to-another-event-transaction/50679945#50679945
[ ](https://chat.hyperledger.org/channel/composer?msg=7ecWSwBjBSkTrhdzM) @rishabh1102 - you need to look at your ACL in you permissions.acl file - and write some permissive rules for testing, or some more sophisticated rules that allow the access you require. There are ACL reference docs in the Composer documentation, and a good ACL tutorial.
Thanks, I'll have a look !
Got it, but in my current situation, I can't access anything anymore (since I have already switched users), including the old .acl file. Is it possible to revert back to my original situation where I can at least access the files again?
[ ](https://chat.hyperledger.org/channel/composer?msg=MksoR6W84R3F8aezv) @suryasuresh06 - moving to mulytiple computers you need to plan your networking between the 2 machines, AND between the docker containers on both the machines. Specifically the URLS you have in your connection.json file have _localhost_ in them and that won't work across 2 machines. Also the containers in a single machine setup can 'see' eachother because they are all on the same Docker bridge network. Kubernetes or Docker Swarm are the 2 best solutions for that problem, though you might be able to get it to work using docker-compose and the extra_hosts feature.
[ ](https://chat.hyperledger.org/channel/composer?msg=9dFXvm5RiJQ4Y7jeD) @rishabh1102 - are you using Playground online, or locally ? and if running locally, are you connecting to a real Fabric, or using the "Web Browser" connection ?
Locally, using the web browser connection
@rthatcher while installing network I am getting following error:
```
✖ Installing business network. This may take a minute...
DuplicatePeer: Peer with URL grpc://localhost:8051 already exists
```
[ ](https://chat.hyperledger.org/channel/composer?msg=wXe5Lj3m7wvxxmYZS) @Poneey - do you have an ACL Rule in place that means you can no longer see the data ? - Can you try switching to the admin ID ?
[ ](https://chat.hyperledger.org/channel/composer?msg=jNnaiwtA6D9rRTPzL) @rishabh1102 can you click on the dropdown on the top right, and get to the ID Registry - then select admin ?
@rthatcher, I tried, but it isn't showing any ids there anymore and when I clock on IDResigtry, it opens a page with blank tables and gives the same error as before.
[ ](https://chat.hyperledger.org/channel/composer?msg=RnYhS3LDMhgZiLF22) @HoneyShah - I guess you are now using your custom Fabric on 2 machines? You will need to figure out your addressing and connectivity for your Fabric. See the answer for suryasuresh06 above ^^^
Has joined the channel.
Hey everyone
anyone here interested in colaborating to build a app?
@rthatcher yes I am using custom fabric. I will try to figure out
[ ](https://chat.hyperledger.org/channel/composer?msg=jE8R6t2qgFkcvjCtE) @rishabh1102 - you could try refreshing the browser page, or going to /login - but I suspect you will have to start again. Using the "Web Browser" profile in Playground is easy and fast, but there is no persisted store for your network (it is store in the localstorage of the browser). You could also try stopping and restarting playground to refresh and it may help. Going forward I would suggest regularly taking copies of the important files you are editing, or Exporting to a .BNA file on a periodic basis.
I'm able to successfully connect wallet with card and that card with identity, before that I do authentication use that token for creating card and wallet. But, when I try to access the other data, it use the same wallet for all the users and set the last wallet as default one. How can I resolve this issue. Using REST API
Also, I can see all the wallets created in get request using any of the user token
I had tried refreshing the docker container and the browser page. But going to the /login page worked. Luckily have my code again. I'll keep saving it now. Thanks @rthatcher. So I tried to put getCurrentParticipant().getFullyQualifiedIdentifier() in the reference object and I got the following error: Model violation in instance org.supplychain.clothes.Item#Item101 class org.supplychain.clothes.Manufacturer has value org.supplychain.clothes.Manufacturer#M1Rish expected a Relationship.
Any idea how to fix this?
Has joined the channel.
can anybody please tell me why skip/limit is not supported in fabric? thanks in advance
Got it, using just .getCurrentParticipant worked. Thanks
@rthatcher i don't think i have this rule .. And i did test with restadmin card (which is resource:org.hyperledger.composer.system.NetworkAdmin)
Hi
Can we perform this tutorial https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest on docker swarm too ?? Does it need some changes according to docker swarm configurations?
Hi, All!.
I've got error in executing transaction after update.
```Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Generated invalid JSON: ...
at _initializeChannel.then.then.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:980:34)
at
Hi, All!.
I've got error in executing transaction after update (0.19.0 -> 0.19.7). On playground works fine.
```Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Generated invalid JSON: ...
at _initializeChannel.then.then.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:980:34)
at
Hi, All!.
I've got error when executing transaction after update (0.19.0 -> 0.19.7). On playground works fine.
```Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Generated invalid JSON: ...
at _initializeChannel.then.then.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:980:34)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=EKfmTbX6RueKrEFKF) @xxg4813 - you could try asking this question in one of the #fabric channels. It is possible it will be introduced in Fabric 1.2 but I don't have more information - you could check the jira system fabric uses.
[ ](https://chat.hyperledger.org/channel/composer?msg=syBHoAKoas3JnzqWM) @Pranoti - I think that tutorial would be fine for Swarm, you would just need to look at the `sed` commands that are used to set addresses in the connection.json file.
[ ](https://chat.hyperledger.org/channel/composer?msg=Hvzz2kjQsBBfhjrDP) @rthatcher yeah actually im having error at that step only. we need to change the localhost with docker host names, right??
[ ](https://chat.hyperledger.org/channel/composer?msg=Hvzz2kjQsBBfhjrDP) @rthatcher yeah actually im having error at that step only. we need to change the localhost with docker host names, right??
[ ](https://chat.hyperledger.org/channel/composer?msg=Hvzz2kjQsBBfhjrDP) @rthatcher yeah actually im having error at that step only. we need to change the localhost with docker host names, right?? for docker swarm
[ ](https://chat.hyperledger.org/channel/composer?msg=dSn69yJ4Go93TkkWu) @zasamen - Where are you seeing this error? when starting the rest server? have you upgraded to the REST server to v0.19.7 ? and have you created a new version of your Business network (new BNA) and upgraded the network (which would upgrade the runtime on the Fabric)?
Hi,
I have an important question.
When we use a card to make a transaction, we don't need to know the password of the card ?
What is the usage of the userSecret return by `bizNetworkConnection.issueIdentity(...);` ?*
[ ](https://chat.hyperledger.org/channel/composer?msg=tPqQRrDDhJBieArJj) @Pranoti - I would think there is a specific network bridge for Docker Swarm but you will need to check your config.
Why my REST request not working?
In SwaggerUI I see this JSON example for post request:
```
{
"$class": "innodata.ru.Worker",
"id": "string",
"role": "string",
"wallets": [
{}
]
}
```
Ok, i try it. I send this:
```
{
"$class": "innodata.ru.Worker",
"id":"test",
"role":"admin",
"wallets": ["resource:innodata.ru.Wallet#WRKC"
]
}
```
And I get error:
```
"error": {
"statusCode": 404,
"name": "Error",
"message": "Cannot POST /innodata.ru.Worker",
"status": 404,
"stack": "Error: Cannot POST /innodata.ru.Worker\n at raiseUrlNotFoundError (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/server/middleware/url-not-found.js:21:17)\n at Layer.handle [as handle_request] (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at trim_prefix (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7\n at Function.process_params (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)\n at next (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)\n at app.use (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/server/server.js:106:17)\n at Layer.handle [as handle_request] (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at trim_prefix (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7\n at Function.process_params (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)\n at next (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:635:15\n at next (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:260:14)\n at Function.handle (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:174:3)\n at router (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:47:12)"
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=9C4uDKPtkLD6uPGCn) @Poneey - I don't know why your transaction or assets might 'disappear' - perhaps you can create a Question on StackOverflow with details of your model and transaction script - and an example of what happens?
[ ](https://chat.hyperledger.org/channel/composer?msg=RoTJ8KSdf5ABptYz8) @rthatcher
1) I see that error in logs of REST SERVER after submitting some transaction (not all at least one works)
2) It starts with no error
3) Yes. I've pulled image from hub.
4) Yes, i've recreated it, and restarted network (to confirm result).
[ ](https://chat.hyperledger.org/channel/composer?msg=RoTJ8KSdf5ABptYz8) @rthatcher
1) I see that error in logs of REST server after submitting some transaction (not all at least one works)
2) It starts with no error
3) Yes. I've pulled image from hub.
4) Yes, i've recreated it, and restarted network (to confirm result).
[ ](https://chat.hyperledger.org/channel/composer?msg=j8A7qK5Zbf7QJF7Gu) @CorentinPacaud - when an Identity is Issued the card that is created has a secret and password embedded. The first time that the card is used the secret is replaced with certificates.
```
ANNOUNCE: Accord Project (the Open Source, Open Standards foundation for Smart Legal Contracts)
has published a maintained set of Hyperledger Composer models at https://models.accordproject.org.
You can use these models from CTO files by using an "import ... from ..." declaration.
Example:
import org.accordproject.address.PostalAddress from https://models.accordproject.org/address.cto
Sample:
https://models.accordproject.org/organization.html
We encourage you to use these standard models in your business networks where possible, and to contribute
models (via a GitHub pull request) that may have general applicability.
Immutably yours,
Dan Selman
Maintainer, Hyperledger Composer
Chair of the Technology Working Group, Accord Project
```
https://models.accordproject.org
@VadimInshakov try this:
```{
"$class": "innodata.ru.Worker",
"id":"test",
"role":"admin",
"wallets": "resource:innodata.ru.Wallet#WRKC"
}```
If this doesn't work, please also post the model file for the classes Worker and Wallet.
There is a problem with the example JSON provided in the REST server.
[ ](https://chat.hyperledger.org/channel/composer?msg=RFQjJPMp8jXq2mSpX) @rthatcher But the user doesn't need to retype it ? It's automatic ?
@rthatcher ok i will try to create a Question ..
[ ](https://chat.hyperledger.org/channel/composer?msg=pfdbhr4vjDXALERnm) @CorentinPacaud - the secret should be in the .card file and the user should not need to re-type it.
oh ! Ok
[ ](https://chat.hyperledger.org/channel/composer?msg=G8su9LMx93zayNYjc) @rthatcher unfortunately, this not work. Here my models:
```
participant Worker identified by id {
o String id
o String role
--> Wallet[] wallets
}
asset Wallet identified by id {
o String id
o Double amount
--> Worker owner
--> Coin asset
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=XtPwafZ5Gds8sfQTh) @rthatcher So, anyone who has the file .card can act as the user in the card even if he doesn"t know the password ?
@VadimInshakov - looking at the model - your version of the JSON is OK - I think the problem is this error: "Cannot POST /innodata.ru.Worker" -perhaps this is not your namespace? or perhaps you have started the rest server with the option ` -n never `
[ ](https://chat.hyperledger.org/channel/composer?msg=WEQ7Wt5PyCywT6uK6) @rthatcher no :hushed:
[ ](https://chat.hyperledger.org/channel/composer?msg=WEQ7Wt5PyCywT6uK6) @rthatcher
```
namespace innodata.ru
```
```
composer-rest-server -m true -c user1@inno -y innokey
```
And yes, I set header 'x-api-key'
[ ](https://chat.hyperledger.org/channel/composer?msg=NjMYoHMnNAGTHfSd2) @rthatcher Okay.. I'll check.. Thank you.. :)
@rthatcher Should I create ticket in Jira?
[ ](https://chat.hyperledger.org/channel/composer?msg=wLP7HPch2HznGRrKF) @VadimInshakov - couple of things t o check ...
1. you are getting a 404 error which is resource not found - so I don't think this is the api key - that would give you unauthorised 401 error - but you could try removing the apikey for some more simple testing.
2. I would suggest using the /explorer with the browser (without apikey) to test and correctly format the JSON
3. following the work in the browser I would use the curl commands suggested in the /explorer to understand any headers, then re-introduce the apikey and test again with curl.
4. If you have problems after the above steps then you could put a question in StackOverflow (or raise an issue in Guthub) if no errors here then proceed to modify and test your code to make the calls to the rest server.
[ ](https://chat.hyperledger.org/channel/composer?msg=y2oCWtNA8LtbhAcw6) @CorentinPacaud - right, so you would want some workflow to safely pass the cards or manage the cards with your code.
[ ](https://chat.hyperledger.org/channel/composer?msg=oiNJT2rMrzMN9Rzc7) @rthatcher
Ok, I started server:
```composer-rest-server -m true -c user1@inno```
And entered into the field for request body in SwaggerUI:
```
{
"$class": "innodata.ru.Worker",
"id":"test",
"role":"admin",
"wallets": "resource:innodata.ru.Wallet#WRKC"
}
```
And I get error response:
```
{
"error": {
"statusCode": 401,
"name": "Error",
"message": "Authorization Required",
"code": "AUTHORIZATION_REQUIRED",
"stack": "Error: Authorization Required\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/lib/application.js:389:21\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/lib/model.js:353:7\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:464:16\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3888:9\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:473:16\n at iteratorCallback (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:1064:13)\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:969:16\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3885:13\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:449:17\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/role.js:331:21\n at _combinedTickCallback (internal/process/next_tick.js:131:7)\n at process._tickCallback (internal/process/next_tick.js:180:9)"
}
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=oiNJT2rMrzMN9Rzc7) @rthatcher
Ok, I started server:
```
composer-rest-server -m true -c user1@inno
```
And entered into the field for request body in SwaggerUI:
```
{
"$class": "innodata.ru.Worker",
"id":"test",
"role":"admin",
"wallets": "resource:innodata.ru.Wallet#WRKC"
}
```
And I get error response:
```
{
"error": {
"statusCode": 401,
"name": "Error",
"message": "Authorization Required",
"code": "AUTHORIZATION_REQUIRED",
"stack": "Error: Authorization Required\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/lib/application.js:389:21\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/lib/model.js:353:7\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:464:16\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3888:9\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:473:16\n at iteratorCallback (/home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:1064:13)\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:969:16\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3885:13\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:449:17\n at /home/vadim/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/role.js:331:21\n at _combinedTickCallback (internal/process/next_tick.js:131:7)\n at process._tickCallback (internal/process/next_tick.js:180:9)"
}
}
```
Hi all! Could You please guide me? I'm using "yo hyperledger-composer:angular" to generate app. My goal is to automate it via script, so I can deploy it.
is there a way to provide arguments to this command so i don't need to answer questions manually typing configuration? thanks
@VadimInshakov - I just noticed earlier that you were starting the rest server with ` -m ` and ` -y ` I don't think this makes sense - you would use ` -y ` for some limited security in testing, but `-m ` for a more serious production security.
On the last try you are using ` -m ` - this is expected to show 401 until you authenticate with your authentication Provider. If you haven't configured this yet I would check the following docs:
https://hyperledger.github.io/composer/latest/integrating/integrating-index - for authentication and multi-user
https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest - tutorial for authentication / multi-user with google auth
When you have multi-user working, - I think your json should be:
```{
"$class": "innodata.ru.Worker",
"id":"test",
"role":"admin",
"wallets": ["resource:innodata.ru.Wallet#WRKC"
]
}
```
@rthatcher When trying to issue an identity via command line, I get the following error:
```Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]```
Any idea what this may be?
the card I'm using shows up when doing composer card list
[ ](https://chat.hyperledger.org/channel/composer?msg=RMH6rGM4i9rkLwvYX) @rthatcher Thanks. I just need a multi-user mode without authentication, so that using api different users with different cards can make transactions. I don't need github or google authentication. If I remove **-m true**, all transactions will be made on behalf of one user?
[ ](https://chat.hyperledger.org/channel/composer?msg=RMH6rGM4i9rkLwvYX) @rthatcher Thanks. I just need a multi-user mode without authentication (simply using only cards), so that using api different users with different cards can make transactions. I don't need github or google authentication. If I remove **-m true**, all transactions will be made on behalf of one user?
How does Composer deal with the Endorsement policy from Fabric? Can it be defined?
@VadimInshakov - Multi-user mode always implies authentication too ` -a `. If you don't use multi-user mode, then all interaction is done with the ID/Card used to start the REST server.
[ ](https://chat.hyperledger.org/channel/composer?msg=q9vG5v7CGJ5AgNNmu) @pedromlcosta - you can define an endorsement policy in a json file and supply it on the command line with the `composer network start` command. The Fabric will enforce the endorsement policy.
Thanks @rthatcher :wink:
[ ](https://chat.hyperledger.org/channel/composer?msg=hPRYENRw25GdCQarD) @rthatcher thanks for answer! as I understood from previous discussions here, the local strategy does not work. So, how can I allow a lot of different users to interact with REST if they do not have a githab account or google +?
[ ](https://chat.hyperledger.org/channel/composer?msg=hPRYENRw25GdCQarD) @rthatcher thanks for answer! as I understood from previous discussions here, the ```local``` authentication strategy does not work. So, how can I allow a lot of different users to interact with REST if they do not have a githab account or google +?
[ ](https://chat.hyperledger.org/channel/composer?msg=hPRYENRw25GdCQarD) @rthatcher thanks for answer! as I understood from previous discussions here, the **local** authentication strategy does not work. So, how can I allow a lot of different users to interact with REST if they do not have a githab account or google +?
I have started and deployed network on Azure. How can I set up a new Virtual Machine and connect it to my already existing network?
[ ](https://chat.hyperledger.org/channel/composer?msg=FPGqdmkt7giqGeRQY) I too have been looking into how to have use the Assets within the ACL rules. Since the rules run synchronously this causes an issues. Is there a way to get assets within the ACL rules, or is this something that should be handled on the transaction level?
[ ](https://chat.hyperledger.org/channel/composer?msg=FPGqdmkt7giqGeRQY) I too have been looking into how to have use the Assets within the ACL rules for restricting what the user can read. Since the rules run synchronously this causes an issues. Is there a way to get assets within the ACL rules?
[ ](https://chat.hyperledger.org/channel/composer?msg=Yshz2KFMNrgHBBnKF) @VadimInshakov - I think that passport with the local strategy does work - but we don't have an example or tutorial. Our tutorials currently use google or github because they are easier to reproduce - but in reality most will want to use ldap, or kerberos or some custom strategy with local.
[ ](https://chat.hyperledger.org/channel/composer?msg=7u59sMngZhaA92Wef) @etrn - I have not done this but here are some thoughts ...
1. you will need to create a dev/test toolkit on your new VM - so look at the composer install and pre-req documents for those
2. you will need information on the crypto material/ user IDs set up on your Fabric network
3. you will need the fabric connection details to create a connection.json file
You could look at the single-org tutorial as a loose guide on how to approach the task - start at Step Three: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
@VadimInshakov you can check this https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn, to get some insights.
Hi. I've got a Composer query, my first with a variable in it, and I'm getting a 200 when I submit it to the REST server. However, nothing is returned. I've tested it on my REST Server
Hi. I've got a Composer query, my first with a variable in it, and I'm getting a 200 when I submit it to the REST server. However, nothing is returned. I've tested it on my REST Server explorer, and it works fine. Ever seen this before. I thought it might be the parameters needed encoding, but that's not it. Any help would be appreciated.
Hi. I've got a Composer query, my first with a variable in it, and I'm getting a 200 when I submit it to the REST server. However, nothing is returned. I've tested it on my REST Server explorer, and it works fine. Ever seen this before. I thought it might be the parameters needed encoding, but that's not it. Any help would be appreciated. I get an empty payload array back. Just empty []
Hi. I've got a Composer query, my first with a variable in it, and I'm getting a 200 when I submit it to the REST server. However, nothing is returned. I've tested it on my REST Server explorer, and it works fine. Ever seen this before. I thought it might be the parameters needed encoding, but that's not it. Any help would be appreciated. I get an empty payload array back. Just empty [] instead of the two items I'm expecting.
Hi. I've got a Composer query, my first with a variable in it, and I'm getting a 200 when I submit it to the REST server. However, nothing is returned. I've tested it on my REST Server explorer, and it works fine. Ever seen this before. I thought it might be the parameters needed encoding, but that's not it. Any help would be appreciated. I get an empty payload array back. Just empty [] instead of the two items I'm expecting. I have a number of other queries that work fine.
Hi. I've got a Composer query, my first with a variable in it, and I'm getting a 200 when I submit it to the REST server. However, nothing is returned.
I've tested it on my REST Server explorer, and it works fine. Ever seen this before. I thought it might be the parameters needed encoding, but that's not it. I get an empty payload array back. Just empty [] instead of the two items I'm expecting.
I have a number of other queries that work fine.
Any help would be appreciated.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ExWz3NYfBE84pFuTh) Anyone have any thoughts on this?
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=CLu9AShMKgBdM7unu) I figured it out. The interface isn't forgiving on escaped characters. The query parameter needed to be escaped, which I thought I had done. But I think I was passing it surrounded with a double quote.
[ ](https://chat.hyperledger.org/channel/composer?msg=CLu9AShMKgBdM7unu) I figured it out. The REST API (this was HyperLedger Composer) wasn't forgiving on escaped characters. The query parameter needed to be escaped, which I thought I had done. But I think I was passing it surrounded with a double quote.
Creating a wallet is taking more than a minute (timing out but later succeeding) and I'm trying to figure out if it's composer that is blocking or the fabric orderer or the peer. The orderer and the peer are set up on IBMs side but the setup is brand new so my guess is there's a misconfiguration. How can I find out what is going on?
Is there an easy way that I can bypass composer and send the request directly to fabric?
That would tell me whether it's the orderer/peer being slow or composer
Does anyone know if the eventsEmitted are no longer populated in the Historian? I tested locally, and it does emit an event, but I don't see it populated in Historian. I'm using 0.19.7
Has joined the channel.
Has joined the channel.
Does someone know if I use composer connect fabric network ,this fabric network must use couchdb as the state db?
what is the difference between the leveldb and couchdb
?
Has joined the channel.
composer-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=KRg7Eyke3LD44DCDQ) Could You please help here? I've searched the documentation but the only options available seems to be questions
Has anyone run into a timeout/inactivity issue with the composer-rest-server? When I first start the server all the requests work as expected, but then if I try like 20 minutes later I never get a response for POST requests even though the requests do actually succeed. It sort of seems like this issue https://github.com/hyperledger/composer/issues/1080, but I'm using Fabric v1.1.0 and I thought this should have been resolved.
Has anyone run into a timeout/inactivity issue with the composer-rest-server? When I first start the server all the requests work as expected, but then if I try like 20 minutes later I never get a response for POST requests even though the requests do actually succeed. It sort of seems like this issue https://github.com/hyperledger/composer/issues/1080, but I'm using Fabric v1.1.0 and I thought this should have been resolved.
https://chat.hyperledger.org/channel/composer?msg=YMHeBWjXjRv5Dt8FB
So does anyone have any idea? Where can i get any additional information?
So does anyone have any idea? Where can i get any additional information?
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
hi,i created 3000 rest api port.if i make crtl+c ,this port is closing.how can i opening all time this port?is it a possible or sensible?
hi,i created 3000 rest api port.if i make crtl+c ,this port is closing.how can i opening all time this port?is it a possible or sensible? example : https://github.com/foreverjs/forever
[ ](https://chat.hyperledger.org/channel/composer?msg=kdqXe58KKqFqXyprQ) @gurpret7 - it looks like you will need to configure an npmrc file to build the chaincode container. Please see this section in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
[ ](https://chat.hyperledger.org/channel/composer?msg=wAs3FubfyAjXDdGD9) @abityildiz - for production, you could create a system service or run the REST server in a Docker container as described in the [oauth2 tutorial](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest). Interestingly the composer rest server container uses [pm2](https://www.npmjs.com/package/pm2). For a dev/test environment you could try the linux `nohup` command .
Hello,
I have a bunch of assets that hold GPS data (lat,lng ).
I'm looking at querying list of assets that are near to a (lat,lng)
I just read that couchdb has something called GeoCouch for geo queries.
not sure how I would use with composer.
Some one help me please?
Hello,
I have a bunch of assets that hold GPS data (lat,lng ).
I'm looking at querying list of assets that are near to a (lat,lng)
I just read that couchdb has something called GeoCouch for geo queries.
not sure how I would use with composer.
Is my usecase valid to be executed successfully by composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=QQ7XHgvdfujDbrcco) @jsmithmap - following a question on Stackoverflow and a similar question here, I have run a longer test - I started a REST server and made a few calls, then left it for 48 hours and it responded OK. I had to start the Browser, and I think I did a GET first not a POST. Are you getting this problem hitting the REST server in a browser with the /explorer or hitting it with some other app? Can you repeat/reproduce the problem? If so I would suggest starting the REST server with debug turned on, then post the debug log to a stack overflow question. This command shows how to start with Debug:
`DEBUG=composer[debug]:* composer-rest-server -c PeerAdmin@hlfv1`
[ ](https://chat.hyperledger.org/channel/composer?msg=pmXrcaknnMey9kriN) @rthatcher Thank you for the response. I was getting the same result from an app, cURL, and the REST Server Web UI, and have repeated the results several times. I think I tried queries from the app and cURL always before the web UI and was always doing a POST request first. One thing I noticed in the logs on the peers which is suspicious was the following:
'''
2018-06-06 07:19:48.891 UTC [common/deliver] deliverBlocks -> DEBU f721 [channel: testchannel] Delivering block
for (0xc4213e9800) for
[ ](https://chat.hyperledger.org/channel/composer?msg=tEE9NMExJReR6pyAm) @zasamen - when I first saw this I assumed it was a 'version' problem - but with your answers there is a problem with the transaction being submitted. Interesting that it works in Playground - is this because you are using some JS code that works in a Browser, but does not work when run on a real Fabric? If you can't see the problem in the transaction, can you post the model and transaction to a Stack Overflow question?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=AJ7ns3vyZ8apYav3h) @yulong12 - Composer does not _require_ couchdb, but you can't use Queries with leveldb.
Is there any docker based installation to try the fabric composer?
@rthatcher ok thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=qg3GtCF9aRjWDJGDW) @rthatcher thanks
I have a problem ,when I `deploy a new business network ` in playground,there is something wrong with` Error: Error trying install business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP] Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]`
[ ](https://chat.hyperledger.org/channel/composer?msg=2PzJocBEXeFX2Rbtb) @rkrish82 - yes there are containers on docker hub :-) `hyperledger/composer-cli` `hyperledger/composer-rest-server` `hyperledger/composer-playground`
I have a problem ,when I `deploy a new business network ` in playground,there is something wrong with`` Error: Error trying install business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP] Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]` `
D oes anyone know?
Does anyone know?
[ ](https://chat.hyperledger.org/channel/composer?msg=7ozYadxsQtigfXK2K) @rthatcher thanks for help!
[ ](https://chat.hyperledger.org/channel/composer?msg=ebfCHutsMsZ9dNejY) @chrisg cool, thanks a lot
Has joined the channel.
Hello, I would like to know if it's possible to have a chaincode listening to events?
@rthatcher https://stackoverflow.com/questions/50717206/transaction-does-not-work-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=o7j9HPCWvP8io5hz4) @rthatcher https://stackoverflow.com/questions/50717206/transaction-does-not-work-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=fPnPTfSzQXYnub2XF) I repeated the test with the DEBUG flag you suggested. When I first start the REST Server everything is working properly and I receive responses to POST requests. After about 20 minutes I try again and in the logs everything in the appears to be working properly until the last step of receiving a commit notification.
[ ](https://chat.hyperledger.org/channel/composer?msg=C9LqKS76jxhQrCnHC)
'''
debug: [Hyperledger-Composer] :HLFConnectionManager :fabric-client() [Channel.js]: sendTransaction - start :: channel {"name":"testchannel","orderers":" Orderer : {url:grpc://
@jsmithmap - I can see this in your output "
Has joined the channel.
Hey guys, does anyone know how to set up composer using GoLevelDB as state DB instead of CouchDB?
[ ](https://chat.hyperledger.org/channel/composer?msg=bZB2uGdozHogt5FrE) @rthatcher No, the actual log has the correct domain name for that Peer
[ ](https://chat.hyperledger.org/channel/composer?msg=bZB2uGdozHogt5FrE) @rthatcher No, the actual log has the correct domain name for that Peer. Also, just to give some more context, I am running composer-rest-server using the docker image https://hub.docker.com/r/hyperledger/composer-rest-server/. I have tried 0.19.5 and the recent 0.19.7 versions. When I first start the REST server everything works as expected. After about 20 minutes I start to encounter this issue with no changes made.
[ ](https://chat.hyperledger.org/channel/composer?msg=pPnb42puu6w2KLkiW) @robotzaintlikeus its in the Fabric docs -> http://hyperledger-fabric.readthedocs.io/en/release-1.0/ledger.html - further Fabric config questions should be asked on #fabric really
@mahoney1 alright, thank you :)
[ ](https://chat.hyperledger.org/channel/composer?msg=CXdy4nyKSyH6f9jXg) @nherbaut not via a listener, but you can do a call-out to poll for a deterministic result (or event) eg -> https://hyperledger.github.io/composer/latest/integrating/call-out
[ ](https://chat.hyperledger.org/channel/composer?msg=R3shnYBSatuq66r2v) @nherbaut Chaincode is only run when a transaction has been submitted so it can't listen for events since it isn't always running. What you could do is have an external service that listens for an event and then submits a transaction to the network that will execute some chaincode to simulate the chaincode listening for an event.
@yulong12 - you have a Fabric config error -> after spinning up your single/multi-org network one/more of your peers are when the join command comes in. The join channel fails (eg `peer channel join`), and then the subsequent channel query (or Composer commands that try to use it) will of course fail since the channel is unknown on the peer. You should run the Marbles sample to test that chaincode is deployed/invoked/queried correctly (samples [here](https://github.com/IBM-Blockchain/marbles/tree/v4.0/chaincode/src/marbles) to your altered blockchain single/multi-org Fabric network, then you can address (if any) subsequent composer-related issues. Presently, you have a Fabric issue.
@yulong12 - you have a Fabric config error -> after spinning up your single/multi-org network one/more of your peers try to join the channel. The join channel fails (eg `peer channel join`) it would appear, and then the subsequent channel query (or Composer commands that try to use it) will of course fail since the channel is unknown on the peer. You should run the Marbles sample to test that chaincode is deployed/invoked/queried correctly (samples [here](https://github.com/IBM-Blockchain/marbles/tree/v4.0/chaincode/src/marbles) to your altered blockchain single/multi-org Fabric network, then you can address (if any) subsequent composer-related issues. Presently, you have a Fabric issue.
@karthik.ir probably best to see that native CouchDB discussion [here](https://stackoverflow.com/questions/32565505/couchdb-query-for-more-dynamic-values) - but for a Composer Query, you can specify a Query that uses a WHERE clause that finds lat/long values from those same assets, within certain tolerance ranges, of parameters passed to the query.
@mahoney1 so is it possible to write native couchdb query via composer ?
@mahoney1 is it possible to write native couchdb query via composer ?
because with tolerance range with the complexity of radius of say for example 5km is not a readable composer query with so many edge cases of lat and longs
@DenisDoronin use Mocha - as described in this [S/O](https://stackoverflow.com/questions/29916695/how-to-programmatically-call-yeoman-generator) and on the Yeoman (generator) web docs itself -> http://yeoman.io/authoring/testing.html
@DenisDoronin use Mocha - as described in this [S/O](https://stackoverflow.com/questions/29916695/how-to-programmatically-call-yeoman-generator) and on the Yeoman (generator) web docs itself -> http://yeoman.io/authoring/testing.html - there is in fact a 'cleaner' / smarter way to capture the Q / A that runs inside the Mocha test framework and that's an npm package called yeoman-test -> https://github.com/yeoman/yeoman-test
Can anyone help me to figure out this thing? Please check screeshot.
Clipboard - June 6, 2018 4:38 PM
Hello, I have added a third organization to the existed hyerledger fabric network using the reference link "http://hyperledger-fabric.readthedocs.io/en/release-1.1/channel_update_tutorial.html". And then I am trying deploy the .bna file to those 3 orgs by using the reference link "https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org", facing an issue while retrieving business network administrator certificates for Org3 using the command 'composer identity request -c PeerAdmin@byfn-network-org3 -u admin -s adminpw -d FDA' .
issue : Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:9054]
@mahoney1 thanks a lot, I'll try
@karthik.ir no not presently - its got to be transformed into CouchDB mango queries and the currently supported operations in Composer Query language are shown in our docs page -> https://hyperledger.github.io/composer/latest/reference/query-language - not all of CouchDB's mango query language are implemented, to some extent it depends on what the underlying Fabric supports too - per the docs. This S/O may help -> https://gis.stackexchange.com/questions/3936/test-case-for-geo-distance-implementation and slide 10/11 in particular. You have access to Math function in your TP function, which can process results. Alternatively, you could do a Call-out to your native CouchDB query (not sure if you're using client side?) and get the results that way https://hyperledger.github.io/composer/latest/integrating/call-out sorry I can't help more.
I have started rest server and when I try to issue identity from card which has no access to issue identity, the rest api is not giving me error and kept running and in logs I get following error. So what could be wrong here?
```
Unhandled error for request POST /api/system/identities/issue: Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
at IncomingMessage.
@MasthanbeeShaik sounds like your Org3 CA server is not available
Thank you @mahoney1 will check once.
@HoneyShah not sure if your question is asking, 'HOW' to (you would supply `"options": {"issuer" : true}` to your JSON string in the `system/identities/issue` sequence...but in answer to your Q: the REST server endpoint says exactly what I would expect - the identity you tried to issue an identity with, doesn't have authority at a Fabric CA authority level - and I would expect the REST API client to yield the message it provided above (and also expect that the REST server kept running ; the REST client is just a browser) ?
[ ](https://chat.hyperledger.org/channel/composer?msg=429ssMJfhYiKBZnWj) Anyone can help me to figure out.
after hit callback function and token is showing on rest page but after service call i am getting unauthorize response
[ ](https://chat.hyperledger.org/channel/composer?msg=429ssMJfhYiKBZnWj) Anyone can help me to figure out.
after hit callback function token is showing on rest page but after service call i am getting unauthorize response
{
"error": {
"statusCode": 401,
"name": "Error",
"message": "Authorization Required",
"code": "AUTHORIZATION_REQUIRED",
ss.png
I guess it should show me error here, too.
I guess it should show me error here, too. And in log it saying that it is unhandled error so may be it is keep running. So how can I handle it to generate proper message?
I guess it should show me error here, too. And in log it saying that it is unhandled error so may be it is keep running. So how can I handle it to generate proper message in browser?
@mahoney1 I guess it should show me error here, too. And in log it saying that it is unhandled error so may be it is keep running. So how can I handle it to generate proper message in browser?
@HoneyShah, if you wrote the chaincode by own and have access to it then please look at the return of the function you are calling here, It must find the solution where your returning the values
@HoneyShah, if you wrote the chaincode by own and have access to it then please look at the return of the function you are calling here, you'll find the solution where your returning the values
@RohitYadav2 issuing identity is default api. I don't have access to it
Hello! Can anybody help me?
https://chat.hyperledger.org/channel/composer?msg=6WusmeeDkjQiSoiM6
https://chat.hyperledger.org/channel/composer?msg=CurSkubymyjLJjoDo
Hello! Can anybody help me?
Trying to deploy a bna file via `composer network start -n retailer-supplier -A admin -S adminpw -V 0.0.2-deploy.6 -c PeerAdmin@supplier1` , however got hit with error
``` ? Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: failed to init chaincode: handler not found for chaincode retailer-supplier:
0.0.2-deploy.6 |
Response from attempted peer comms was an error: Error: 2 UNKNOWN: failed to init chaincode: handler not found for chaincode retailer-supplier:
0.0.2-deploy.6
Response from attempted peer comms was an error: Error: 2 UNKNOWN: failed to init chaincode: handler not found for chaincode retailer-supplier:
0.0.2-deploy.6
Command failed```
Trying to deploy a bna file via `composer network start -n retailer-supplier -A admin -S adminpw -V 0.0.2-deploy.6 -c PeerAdmin@supplier1` , however got hit with error
``` ? Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: failed to init chaincode: handler not found for chaincode retailer-supplier:
0.0.2-deploy.6 |
Response from attempted peer comms was an error: Error: 2 UNKNOWN: failed to init chaincode: handler not found for chaincode retailer-supplier:
0.0.2-deploy.6
Response from attempted peer comms was an error: Error: 2 UNKNOWN: failed to init chaincode: handler not found for chaincode retailer-supplier:
0.0.2-deploy.6
Command failed```
FWIW, the above is multi-org scenario. The same bna gets deployed on single-org scenario.
Trying to deploy a bna file via `composer network start -n retailer-supplier -A admin -S adminpw -V 0.0.2-deploy.6 -c PeerAdmin@supplier1` , however got hit with error
``` ? Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: failed to init chaincode: handler not found for chaincode retailer-supplier:
0.0.2-deploy.6 |
Response from attempted peer comms was an error: Error: 2 UNKNOWN: failed to init chaincode: handler not found for chaincode retailer-supplier:
0.0.2-deploy.6
Response from attempted peer comms was an error: Error: 2 UNKNOWN: failed to init chaincode: handler not found for chaincode retailer-supplier:
0.0.2-deploy.6
Command failed```
FWIW, the above is multi-org scenario. The same bna gets deployed/comes up just fine on single-org scenario.
how to setup composer on kubernet on IBM server
[ ](https://chat.hyperledger.org/channel/composer?msg=D9dm9vo5QBtnkJ9Ju) PS This is solved :)
[ ](https://chat.hyperledger.org/channel/composer?msg=HMnytXtNFB23hqYeK) @Varun2887 - not sure what you mean by 'IBM Server'?
There are some example scripts you could look at that are used to deploy containers in the 'Container Service' on IBM Bluemix. The Scripts are on github and can be cloned with this command ` git clone https://github.com/IBM-Blockchain/ibm-container-service `
(The documentation for using the Container service is [here](https://ibm-blockchain.github.io/setup/)
[ ](https://chat.hyperledger.org/channel/composer?msg=HMnytXtNFB23hqYeK) @Varun2887 - not sure what you mean by 'IBM Server'?
There are some example scripts you could look at that are used to deploy containers with Kubernetes in the 'Container Service' on IBM Bluemix. The Scripts are on github and can be cloned with this command ` git clone https://github.com/IBM-Blockchain/ibm-container-service `
(The documentation for using the Container service is [here](https://ibm-blockchain.github.io/setup/)
[ ](https://chat.hyperledger.org/channel/composer?msg=cD47Tv2RZnTdiCnAZ) @jsmithmap ok thans
@mahoney1 THank you. It was very helpful.
So another question I have now is does composer query language support math functions like Cos/SIn etc?
[ ](https://chat.hyperledger.org/channel/composer?msg=tnazigrwnmWkx4RL2) @KindleBitSoln - I would suggest trying a Firefox Private window (or Chrome Incognito window) and hit the authorisation URL - this will get a clean Browser Window with no old cookies/tokens etc - if this doesn't work I would look carefully at the COMPOSER_PROVIDERS environment variable. Do you get any different errors on the rest server log ?
@karthik.ir you can use the Math JS object which is a built-in object so you should be able to use a static method like `Math.round(4.7) ` or `Math.cos(0 * Math.PI / 180);` etc in a TP function etc etc - but you cannot include `requires` for libraries in your TP function - in your client you can do as you wish of course. And finally, as you know - you need your functions to return deterministic results
@argman - see example of card file creation here (and subsequent import) https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc (search for octet-stream)
@rthatcher No,
There is no error except this
[ ](https://chat.hyperledger.org/channel/composer?msg=F94ubevp8YxL5jMgX) @jsmithmap - I will run a test later today with a Docker container to see if I get any similar results. Couple of questions on your setup - are you running with the Development Fabric with 1 peer or do you have a custom Fabric? What parameters or (environment variables) are you using for the rest server?
Once I restarted the docker it showing me unauthorize.
@HoneyShah its `{ "participant": "resource:org.acme.trading.Trader#trader1", "userID": "jdoe", "options": {} }` then check downloads folder.
[ ](https://chat.hyperledger.org/channel/composer?msg=4dr34KYp7GT3tbGhW) @mahoney1 Org3 CA is running, but getting the same issue.
Has joined the channel.
If I need to create an asset resource instance, how to define it reference properties?
It will be like so or anything else?
```
var wallet = factory.newResource('org.namespace', 'Wallet', tx.from.asset.tokenName);
wallet.amount = 0;
wallet.owner = 'resource: org.namespace.User'; // must be reference
await assetRegistry.add(wallet);
```
If I need to create an asset resource instance, how to define it reference properties?
It will be like so or anything else?
```
var wallet = factory.newResource('org.namespace', 'Wallet', tx.from.asset.tokenName);
wallet.amount = 0;
wallet.owner = 'resource: org.namespace.User'; // must be reference
await assetRegistry.add(wallet);
```
If I need to create an asset resource instance, how to define it reference properties?
It will be like so or anything else?
```
var wallet = factory.newResource('org.namespace', 'Wallet', 'awesomeId');
wallet.amount = 0;
wallet.owner = 'resource: org.namespace.User#awesomeId'; // must be reference
await assetRegistry.add(wallet);
```
If I need to create an asset resource instance, how to define it reference properties?
It will be like so or anything else?
```
var wallet = factory.newResource('org.namespace', 'Wallet', 'awesomeId');
wallet.amount = 0;
wallet.owner = 'resource: org.namespace.User#anotherAwesomeId'; // must be reference
await assetRegistry.add(wallet);
```
@VadimInshakov probably `const owner = factory.newRelationship(namespace, 'User', owner.getIdentifier()) ; wallet.owner = owner;` etc for line 3 - samples [here](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/fund-clearing-network/lib/clearing.js#L31)
[ ](https://chat.hyperledger.org/channel/composer?msg=XMiKvzR7wTCsPWNet) @mahoney1 great! But what if I want to get back list of references, like so:
```
let array = user.wallets;
```
In .cto wallets is **--> Wallet[]**
I will get a string array? ["resource: namespace.type#id"] or just ["namespace.type#id"]?
you'll get an array of FQ rel identiifiers```
"$class": "org.example.acme.Users",
"id": "1",
"wallets": [
"resource:org.example.acme.Client#1",
"resource:org.example.acme.Client#2"
]
}```
@VadimInshakov you'll get an array of FQ rel identiifiers```
"$class": "org.example.acme.Users",
"id": "1",
"wallets": [
"resource:org.example.acme.Client#1",
"resource:org.example.acme.Client#2"
]
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=MQJRpbP36zFk2Xsm6) @mahoney1 awesome! But what is FQ? It's JSON, right?
@VadimInshakov sorry 'fully-qualified' ...identifier...
[ ](https://chat.hyperledger.org/channel/composer?msg=dFjtX9RYCfgfFy6hn) @mahoney1 ok, thanks, you helped me a lot
[ ](https://chat.hyperledger.org/channel/composer?msg=JNHKCuxZ27gF4k6Wu) @mahoney1 Thank you very much. That works! While looking it up, I noticed another function called post which takes a parameter called Typed. What is Typed?
Clipboard - June 6, 2018 12:39 PM
Assuming we're running a local Fabric dev instance (Docker instances for peer, orderer, CA and couchdb) in an Ubuntu VM, and the business network successfully deployed, will the composer-rest-server (localhost:3000) be available externally by default? Or does it only run on localhost?
i.e., I would like to hit the composer REST API from a different host. I can't tell whether it's a hostname and config issue, or a network config issue on the VM
Has joined the channel.
Has joined the channel.
Hello composer world, my name is Angelo and I have been trying to install composer on windows. I know the documentation says we cannot but I believe using the ubuntu bash from windows will be enough to install everything. My current issue is that I am getting an msbuild error when running npm install -g composer-cli : error MSB4019: The imported project "C:\Microsoft.Cpp.Default.props" was not found. Confirm that the path in the
or maybe is there a way to run scripts that require composer-cli inside the composer-cli docker container?
Hi everyone,
I am trying to use the composer-playground image on dockerhub to run composer on windows. I am actually trying to make a Dockerfile up from it to define my environment. So far, by following the instruction on Dockerhub, I can only get it to work as playground. Is there a way to make it interactive, mount a local directory, and make an image to use as dev env
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=25QWcqXM3gcmAbtso) @rthatcher Thank you again for the response. I have a custom Fabric where the Peers, Orderer, and REST Server are all running out of docker but on separate servers. Below are the environment variables I am using when launching the REST Server:
COMPOSER_CARD=networkadminp1@my-test-network
COMPOSER_NAMESPACES=never
COMPOSER_AUTHENTICATION=false
COMPOSER_MULTIUSER=false
COMPOSER_TLS=false
DEBUG=composer[debug]:*
COMPOSER_LOG_CONSOLE=debug
where can I found TLS related settings for Connection profile?
@rthatcher @mahoney1
hi i'm having difficulty finding how to issue identities from the back-end. I'm looking through the API but haven't found it yet. Do you know where it is?
@rthatcher @mahoney1
hi i'm having difficulty finding how to issue identities from the back-end. I'm looking through the API but haven't found it yet. Do you know where it is?
I want to be able to do this from the back-end:
```
composer identity issue -c alice@trade-network -f jo.card -u jdoe -a "resource:org.example.trading.Trader#trader1-org1"
```
@rthatcher @mahoney1 @sstone1
hi i'm having difficulty finding how to issue identities from the back-end. I'm looking through the API but haven't found it yet. Do you know where it is?
I want to be able to do this from the back-end:
```
composer identity issue -c alice@trade-network -f jo.card -u jdoe -a "resource:org.example.trading.Trader#trader1-org1"
```
@rthatcher @mahoney1 @sstone1
hi i'm having difficulty finding how to issue identities from the back-end. I'm looking through the API but haven't found it yet. Do you know where it is?
If it doesn't exist, why not?
I want to be able to do this from the back-end:
```
composer identity issue -c alice@trade-network -f jo.card -u jdoe -a "resource:org.example.trading.Trader#trader1-org1"
```
@rthatcher @mahoney1 @jsmithmap
hi i'm having difficulty finding how to issue identities from the back-end. I'm looking through the API but haven't found it yet. Do you know where it is?
If it doesn't exist, why not?
I want to be able to do this from the back-end:
```
composer identity issue -c alice@trade-network -f jo.card -u jdoe -a "resource:org.example.trading.Trader#trader1-org1"
```
How to configure composer-rest-server with couch db can any one help me out
For TLS connection profile what will be the path for peer tlsCerts?
[ ](https://chat.hyperledger.org/channel/composer?msg=d9MKRQEpDWKXPwQhb) @sureshtedla If you are just trying to use CouchDB as a queryable DB for the World State then when starting your Peer servers you can set the following environment variables:
CORE_LEDGER_STATE_STATEDATABASE=CouchDB
CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=mytestcouchdb.com:5984
[ ](https://chat.hyperledger.org/channel/composer?msg=d9MKRQEpDWKXPwQhb) @sureshtedla If you are just trying to use CouchDB as a queryable DB for the World State then when starting your Peer servers you can set the following environment variables:
CORE_LEDGER_STATE_STATEDATABASE=CouchDB
CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=mytestcouchdb.com:5984
After doing this the Peer will keep the CouchDB updated with the World State
[ ](https://chat.hyperledger.org/channel/composer?msg=gBP7N5d6BcN7SciDc) @jsmithmap Both querable and storing purpose what should i do?
[ ](https://chat.hyperledger.org/channel/composer?msg=CZ3P5Kscimow4Lhyq) @sureshtedla So yes, then you just need to connect the CouchDB to the Peer when you are starting the Peer. Use the environment variables from my last message when starting the Peer. How are you building your Fabric network? The fabric-dev-servers scripts, the byfn script, or are you building your own network from scratch?
[ ](https://chat.hyperledger.org/channel/composer?msg=hYJdEf4gfS7sMjSKY) @jsmithmap fabric-dev-servers
When trying to install .bna file on network its throwing error:
```
E0607 02:19:37.480675000 140736083424128 ssl_transport_security.cc:599] Could not load any root certificate.
E0607 02:19:37.480815000 140736083424128 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0607 02:19:37.480887000 140736083424128 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0607 02:19:37.480901000 140736083424128 secure_channel_create.cc:111] Failed to create secure subchannel for secure name '192.168.1.6:7051'
E0607 02:19:37.480910000 140736083424128 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0607 02:19:37.481886000 140736083424128 ssl_transport_security.cc:599] Could not load any root certificate.
E0607 02:19:37.481910000 140736083424128 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0607 02:19:37.481933000 140736083424128 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
```
When trying to install .bna file on network its throwing error:
```
E0607 02:19:37.480675000 140736083424128 ssl_transport_security.cc:599] Could not load any root certificate.
E0607 02:19:37.480815000 140736083424128 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0607 02:19:37.480887000 140736083424128 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0607 02:19:37.480901000 140736083424128 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'x.x.x.x:7051'
E0607 02:19:37.480910000 140736083424128 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0607 02:19:37.481886000 140736083424128 ssl_transport_security.cc:599] Could not load any root certificate.
E0607 02:19:37.481910000 140736083424128 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0607 02:19:37.481933000 140736083424128 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
```
any one aware of ^ this issue?
this is happening after integrating TLS
Has joined the channel.
@apaparazzi0329 did you figured out a way of installing it on windows?
@salimmj did you manage to use playground image as dev env?
Please help me. How would you create a transaction if you have an asset that is worth 1000 and three participants. And in a single transaction you want that asset to either split the value amongst one, two, three or more participants. How many relationships would you have to create in the asset model in order to be able to do this. thanks in advance
@mahoney1 @rthatcher
can i use subqueries or joins in my queries.qry?
can i use rename ex. Select h FROM org.hyperledger.composer.system.HistorianRecord h WHERE....
Is it possible to perform the same thing in javasdk ? answer for Nodes-skd is given to this question on stackoverflow.
https://stackoverflow.com/questions/50651728/how-to-bring-an-app-developed-on-hyperledger-composer-to-production
Has joined the channel.
Has joined the channel.
Please help me.I import a card into the playground,then I` deploy a new business network`,I select the trade-network sample and crreate ,then there is a error `Error: Failed to import identity. Error: privateKey not specified or not a string` ,what can I do to solve this error?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=uf4KvY7jiKTLGBr4j) @mahoney1 I tried but it's still not giving me error in browser and keeps loading.
Rest server log:
```
Treating unknown remoting type "issueidentityrequest" as "any"
Treating unknown remoting type "issueidentityrequest" as "any"
Unhandled error for request POST /api/system/identities/issue: Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
at IncomingMessage.
[ ](https://chat.hyperledger.org/channel/composer?msg=uf4KvY7jiKTLGBr4j) @mahoney1 I tried but it's still not giving me error in browser and keeps loading.
Rest server log:
```
Treating unknown remoting type "issueidentityrequest" as "any"
Treating unknown remoting type "issueidentityrequest" as "any"
Unhandled error for request POST /api/system/identities/issue: Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
at IncomingMessage.
ss.png
hello , I am facing issues with docker composer-rest-server. Platform is Windows 10. The container gets started , but unable to connect to peers on the network .
Is this right place for questions related to composer-rest-server?
my composer rest server is not responding to my yeoman generated app......so whenever i create a new participant on my web app, it shows internal server error...where is the problem???
Has joined the channel.
I have some questions about how to use hyperledger composer in production:
1) We are using mongo db as persistant database when we are starting rest server in multi user mode. So I am confuse about what will be stored in couch db and what will be in mongo db? Now I guess mongo db is just for multi user mode so only user data will be stored in it. All transactions data will be stored in couch db only.Is it true?
2) If I want to start rest server in multiple machine then do I need to start mongo db container in both machine? And how will be data sync if started in both servers? Do we need to use mongo db replica set? If so how can I set it as data store in composer?
i want some help in updating the composer network for rest server . Actually rest server is showing the old network and is not updating after i update the business network can u help me on this ?
hello,i created a single organization via this https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org tutorial.my network is running.how can i add new peer this network ?
hi, i faced a problem. everything is ok to start bna. but `composer network ping` and `composer-rest-server` doesn't work.
```$ composer network ping --card admin@decentralized-energy-network
Error: Error trying to ping. SyntaxError: Unexpected end of JSON input
$ composer-rest-server --namespaces required --card admin@decentralized-energy-network --port 3000
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. SyntaxError: Unexpected end of JSON input```
try checking your card with composer card list
then ping that network with the card listed
Has joined the channel.
Need to connect REST with mongo ? tried the process specified but hit this
[2018-06-07 07:41:38] PM2 log: App [composer-rest-server] with id [0] and pid [592], exited with code [1] via signal [SIGINT]
[2018-06-07 07:41:38] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-06-07 07:41:38] PM2 log: App name:composer-rest-server id:0 online
Usage: ProcessContainerFork.js [options]
Options:
"]-c, --card The name of the business network card to use [string] [default: "restadmin@onemed-chart
"]-n, --namespaces Use namespaces if conflicting types exist [string] [choices: "always", "required", "never"] [default: "required
-p, --port The port to serve the REST API on [number]
-y, --apikey The API key to get access to the REST API [string]
"]-a, --authentication Enable authentication for the REST API using Passport [boolean] [default: "true
"]-m, --multiuser Enable multiple user and identity management using wallets (implies -a) [boolean] [default: "true
-w, --websockets Enable event publication over WebSockets [boolean] [default: true]
-t, --tls Enable TLS security for the REST API [boolean] [default: false]
-e, --tlscert File containing the TLS certificate [string] [default: "/home/composer/.npm-global/lib/node_modules/composer-rest-server/cert.pem"]
-k, --tlskey File containing the TLS private key [string] [default: "/home/composer/.npm-global/lib/node_modules/composer-rest-server/key.pem"]
-h, --help Show help [boolean]
-v, --version Show version number [boolean]
Invalid values:
Argument: n, Given: "required\r", Choices: "always", "required", "never"
@Farhan1122 composer card list is ok.
Can mongo be connected at the peer level on the same lines as Couch ?.
Is anyone here successful applying *Passport Basic or Local* Auth to Composer Rest Server?
can some body guide how to update the network for composer rest server
[ ](https://chat.hyperledger.org/channel/composer?msg=tSfJG9x55ejDydsm8) @DineshPrabhu - CouchDB and LevelDB are the only options.
[ ](https://chat.hyperledger.org/channel/composer?msg=FYqdNHtQERKkTuKqk) @Mahesh-Raj - there is an example using passport-jwt here which might help: https://chat.hyperledger.org/channel/composer?msg=ebfCHutsMsZ9dNejY
and also a few more links in the knowledge wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--passport-strategy-info
[ ](https://chat.hyperledger.org/channel/composer?msg=yvgMFMDefCgyDm7P8) @rthatcher have gone through those links, nothing there talks about a successful Basic Auth. Thanks much
[ ](https://chat.hyperledger.org/channel/composer?msg=yvgMFMDefCgyDm7P8) @rthatcher have gone through those links already, nothing there talks about a successful Basic Auth. Thanks much
[ ](https://chat.hyperledger.org/channel/composer?msg=oZo6St8FvNpLJ2RxM) @bh4rtp - what version of node are you running? ( `node -v` ) You should have 8.9 or similar, 8.11 is the latest I think.
@rthatcher 8.10.0 is used.
[ ](https://chat.hyperledger.org/channel/composer?msg=6iB9KRtC4w48nQMCN) @bh4rtp - that seems OK. Couple more questions ... what version of Composer? What Fabric are you using - the standard development fabric, or a custom fabric? How was the card created? Is that the complete error message or is there some more output after the ping?
@rthatcher i am using composer 0.19.7 and the latest fabric master branch.
i just switched to fabric 1.1.0 release. it runs ok. maybe 0.19.7 doesn't support fabric 1.2.0 until now.
[ ](https://chat.hyperledger.org/channel/composer?msg=83yzsz4JyyQKek8CF) @bh4rtp - OK composer v0.19.7 is latest, and requires Fabric 1.1.0 . By development fabric - I mean are you using the 'fabric tools' and the startFabric.sh script from the Composer install pre-reqs?
How was the card created?
Is that the complete error message or is there some more output after the ping?
@rthatcher i wrote script to run the complete procedure including start fabric network, create card, import card, start bna, ping and start rest server and etc. card was created successfully. there are errors from chaincode container. just a minute to paste error log here.
@rthatcher i wrote a script file to run the complete procedure including start fabric network, start bna, create card, import card, ping and start rest server and etc. card was created successfully. there are errors from chaincode container. just a minute to paste error log here.
the following message is digested from the log the chanicode container.
```2018-06-07T09:28:53.011Z [3b8a047a] ERROR :Composer :Invoke() Error: The current identity, with the name 'admin' and the identifier '01899e04161a3a6d64670504fa122e55818295352929b6a616333a3739fde3f2', must be activated (ACTIVATION_REQUIRED)
2018-06-07T09:28:53.011Z ERROR [lib/handler.js] [composerchannel-3b8a047a]Calling chaincode Invoke() returned error response [Error: The current identity, with the name 'admin' and the identifier '01899e04161a3a6d64670504fa122e55818295352929b6a616333a3739fde3f2', must be activated (ACTIVATION_REQUIRED)]. Sending ERROR message back to peer```
both composer network ping and composer-rest-server print this error.
[ ](https://chat.hyperledger.org/channel/composer?msg=CQM9X7b5fNTBrTWA9) @bh4rtp how many peers and orgs do you have
[ ](https://chat.hyperledger.org/channel/composer?msg=CQM9X7b5fNTBrTWA9) @bh4rtp how many peers and orgs do you have?
@rthatcher i am using decentralized-energy-network. just 4 containers, one org and one peer.
Hi all while installing composer-playground I am unable to do access it, it's not throwing any errors still facing issue
Screenshot from 2018-06-07 06-35-32.png
Every time it is entering into directory and leaving directory, could you please help me to solve this issue
Entering directory *'/home/miracle/.npm-global/lib/node_modules/composer-playground/node_modules/dtrace-provider/build'*
TOUCH Release/obj.target/DTraceProviderStub.stamp
*make: Leaving directory '/home/miracle/.npm-global/lib/node_modules/composer-playground/node_modules/dtrace-provider/build'*
> pkcs11js@1.0.16 install /home/miracle/.npm-global/lib/node_modules/composer-playground/node_modules/pkcs11js
> node-gyp rebuild
*
make: Entering directory '/home/miracle/.npm-global/lib/node_modules/composer-playground/node_modules/pkcs11js/build'*
CXX(target) Release/obj.target/pkcs11/src/main.o
CXX(target) Release/obj.target/pkcs11/src/dl.o
CXX(target) Release/obj.target/pkcs11/src/const.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/error.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/v8_convert.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/template.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/mech.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/param.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/param_aes.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/param_rsa.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/param_ecdh.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/pkcs11.o
CXX(target) Release/obj.target/pkcs11/src/async.o
CXX(target) Release/obj.target/pkcs11/src/node.o
SOLINK_MODULE(target) Release/obj.target/pkcs11.node
COPY Release/pkcs11.node
make: Leaving directory '/home/miracle/.npm-global/lib/node_modules/composer-playground/node_modules/pkcs11js/build'
> grpc@1.10.1 install /home/miracle/.npm-global/lib/node_modules/composer-playground/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
[grpc] Success: "/home/miracle/.npm-global/lib/node_modules/composer-playground/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node" is installed via remote
nice :) composer v0.19.8 is released.
But the documentation is not updated right
How can I install then?
[ ](https://chat.hyperledger.org/channel/composer?msg=BLGQGb5giYDADPyAE) @Vanitha I don't think there will be a lot of changes in the Documentations. I installed it like old versions
[ ](https://chat.hyperledger.org/channel/composer?msg=BLGQGb5giYDADPyAE) @Vanitha I don't think there will be a lot of changes in the Documentation. I installed it like old versions
I used the the same commands which are in documentation and there are no errors while installing those still I was unable to run composer-playground
I was able to see something weird entering into directory and leaving from directory is that the issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=Ximtyi4L9rh2LSZH5) @Vanitha try to install composer-playground v0.19.8 (same version like composer)
@waleed would be helpful if you give some link to follow
[ ](https://chat.hyperledger.org/channel/composer?msg=kYqR9wXxWtZQCLWza) @Vanitha link to install composer-playground v0.19.8 ?
Yes
just run `npm install -g composer-playground@0.19.8`
[ ](https://chat.hyperledger.org/channel/composer?msg=eD8QgQFj3ZiSBirTF) @Farhan1122 IF you've updated the business network (did a `composer network install` and `composer network upgrade` having bumped up the version and having used the regenerated .bna archive file to do so etc) - you should stop REST server, relaunch, and rediscover - then relaunch your browser to get explorer with the new changes.
[ ](https://chat.hyperledger.org/channel/composer?msg=nxBcHvNR6KiBLjiZC) @abityildiz follow the links in this S/O answer - there's a tutorial to follow https://stackoverflow.com/questions/49924385/hyperledger-composer-add-a-new-peer
[ ](https://chat.hyperledger.org/channel/composer?msg=RusWAF7XS8MCQY8nA) @bh4rtp - thanks for all the background info. The problem with ACTIVATION_REQUIRED state is unusual and has been fixed in the past with version tweaks and restarts, and it has occurred in the past on more complex Fabrics. What you are doing with the [energy network](https://github.com/IBM/Decentralized-Energy-Composer) is very similar to the Developer tutorial, the difference I see is that the repo for the energy has a set of 'fabric tools' that are at least 2 months old - whereas the tools they are copied from (the Composer originals) are 1 month old. I would start by removing all your Docker Containers and images, and replacing your 'fabric-tools' with the Composer supplied tools and see if that helps. The Composer supplied tools are here:
https://hyperledger.github.io/composer/latest/installing/development-tools.html - follow from Step 4.
Also note that Composer v0.19.8 is in the process of being released so if you do re-installs today, make sure you have a consistent set of versions.
[ ](https://chat.hyperledger.org/channel/composer?msg=2LpyEk5xNA7zG755C) @mahoney1 I've investigated this article and sources from github. Here described issuing card from not authorized REST server and there no saving it to file system. I tried to repeat this way, but have the same error.
```{"error":{"statusCode":500,"name":"Error","message":"Corrupted zip: missing 280866528 bytes.","stack":"Error: Corrupted zip: missing 280866528 bytes.\n at ZipEntries.readEndOfCentral (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/jszip/lib/zipEntries.js:244:19)\n at ZipEntries.load (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/jszip/lib/zipEntries.js:256:14)\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/jszip/lib/load.js:49:20\n at
@argman, strange - is there an issue with encoding component used? Because the blog as shown, will download a usable card to import as shown in those steps -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
Thanks for asking @ramiglez30 no luck so far probably going to move to a vm
reminder that the Community call is at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release
(0.19.8, earlier today) and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-7th-June-2018 best regards Paul
I have a quick question, what is the purpose of the composer-cli docker image?
Hello, everyone, I have installed Fabric 1.0 and Composer 0.16.4 in a linux server. I followed the steps exactly how they are in the Composer documentation for installing everything, so I guess my network has only one peer and one channel. This server is gonna be restarted so I need to backup the information from the ledger and later restore it when my server is running again. Anyone knows how to backup the ledger?
Has anyone deployed the Composer REST Server to an IBM Hyperledger Starter Plan network instance?
may 10
@mahoney1
@mahoney1
can i use subqueries or joins in my queries.qry?
can i use rename ex. Select h FROM org.hyperledger.composer.system.HistorianRecord h WHERE....
[ ](https://chat.hyperledger.org/channel/composer?msg=gd3ohaHbmQp46gLqq) @mahoney1 Thank you. I'll try again.
hey all, I have some strange behavior when running composer & hlf v1.1 on a docker swarm.
I get this timeout issue but chaincode is successfully deployed:
```
fabric_composer.1.w10msb9hw6gq@swarm03 | error: [Hyperledger-Composer] :HLFConnectionManager :fabric-client() [client-utils.js]: sendPeersProposal - Promise is rejected: Error: 2 UNKNOWN: timeout expired while starting chaincode basic-sample-network:0.2.6-20180530153450(networkid:dev,peerid:peer0,tx:55cceb86789c958e72e8faa9b78903d92b4ebf6a6f90823e9597544a4193f0a5)
fabric_composer.1.w10msb9hw6gq@swarm03 | at new createStatusError (/home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/grpc/src/client.js:64:15)
fabric_composer.1.w10msb9hw6gq@swarm03 | at /home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/grpc/src/client.js:583:15
fabric_composer.1.w10msb9hw6gq@swarm03 | error: [Hyperledger-Composer] :HLFConnectionManager :fabric-client() [client-utils.js]: sendPeersProposal - Promise is rejected: Error: 2 UNKNOWN: timeout expired while starting chaincode basic-sample-network:0.2.6-20180530153450(networkid:dev,peerid:peer1,tx:55cceb86789c958e72e8faa9b78903d92b4ebf6a6f90823e9597544a4193f0a5)
fabric_composer.1.w10msb9hw6gq@swarm03 | at new createStatusError (/home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/grpc/src/client.js:64:15)
fabric_composer.1.w10msb9hw6gq@swarm03 | at /home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/grpc/src/client.js:583:15
fabric_composer.1.w10msb9hw6gq@swarm03 | warn: [Hyperledger-Composer] :HLFConnection :_validatePeerResponses() Response from attempted peer comms was an error: Error: 2 UNKNOWN: timeout expired while starting chaincode basic-sample-network:0.2.6-20180530153450(networkid:dev,peerid:peer0,tx:55cceb86789c958e72e8faa9b78903d92b4ebf6a6f90823e9597544a4193f0a5)
fabric_composer.1.w10msb9hw6gq@swarm03 | warn: [Hyperledger-Composer] :HLFConnection :_validatePeerResponses() Response from attempted peer comms was an error: Error: 2 UNKNOWN: timeout expired while starting chaincode basic-sample-network:0.2.6-20180530153450(networkid:dev,peerid:peer1,tx:55cceb86789c958e72e8faa9b78903d92b4ebf6a6f90823e9597544a4193f0a5)
fabric_composer.1.w10msb9hw6gq@swarm03 | error: [Hyperledger-Composer] :HLFConnection :start() Error: No valid responses from any peers.
fabric_composer.1.w10msb9hw6gq@swarm03 | Response from attempted peer comms was an error: Error: 2 UNKNOWN: timeout expired while starting chaincode basic-sample-network:0.2.6-20180530153450(networkid:dev,peerid:peer0,tx:55cceb86789c958e72e8faa9b78903d92b4ebf6a6f90823e9597544a4193f0a5)
fabric_composer.1.w10msb9hw6gq@swarm03 | Response from attempted peer comms was an error: Error: 2 UNKNOWN: timeout expired while starting chaincode basic-sample-network:0.2.6-20180530153450(networkid:dev,peerid:peer1,tx:55cceb86789c958e72e8faa9b78903d92b4ebf6a6f90823e9597544a4193f0a5)
fabric_composer.1.w10msb9hw6gq@swarm03 | at HLFConnection._validatePeerResponses (/home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:782:19)
fabric_composer.1.w10msb9hw6gq@swarm03 | at HLFConnection._sendTransaction (/home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:694:37)
fabric_composer.1.w10msb9hw6gq@swarm03 | at HLFConnection.start (/home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:672:24)
fabric_composer.1.w10msb9hw6gq@swarm03 | at
maybe someone has an idea?
I used this setup here: https://github.com/hounded/swarm-config
I used this setup here: https://github.com/hounded/swarm-config (just added composer service)
[ ](https://chat.hyperledger.org/channel/composer?msg=m8E2ywLstzznR633A) @apaparazzi0329 Composer CLI lets you deploy and manage business networks and easier to keep things in sync / self contained from a tools perspective etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=auFkQytq4nbfkZfGw) @sahandealmeidapey you can't use subqueries or shortened labels/tags presently - you just provide the field name (one registry is specified in the query statement - no JOIN mechanism).
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=vjQSJEE6GFEunbHmW) @jcwarfield have you see this tutorial -> https://www.ibm.com/developerworks/cloud/library/cl-deploy-blockchain-starter-plan-network/index.html
[ ](https://chat.hyperledger.org/channel/composer?msg=4nSWhYdSxpcRXAo72) @dklesev - I think the Playground has completed the first step of Deploying your network - it has installed the code on to the peers, but it has timedout for some reason when trying to *start* the network on the peers. The Start will be trying to create a new Chaincode Container for each peer, and that is failing for some reason. You can find out more by looking at the log of the Peer container(s) - we information in the knowledge Wiki for fixing errors with the `composer network start` command which is the equivalent of what Playground is trying when the errors are seen. Here is the link: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
[ ](https://chat.hyperledger.org/channel/composer?msg=4nSWhYdSxpcRXAo72) @dklesev - I think the Playground has completed the first step of Deploying your network - it has installed the code on to the peers, but it has timedout for some reason when trying to *start* the network on the peers. The Start will be trying to create a new Chaincode Container for each peer, and that is failing for some reason. You can find out more by looking at the log of the Peer container(s) - we have information in the knowledge Wiki for fixing errors with the `composer network start` command which is the equivalent of what Playground is trying when the errors are seen. Here is the link: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
fyi - Community call is at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 -> https://github.com/hyperledger/composer/wiki/Meeting-7th-June-2018 best regards Paul
Additional errors which I can see:
```
> empty-business-network@0.0.1 start /usr/local/src
> start-network "--peer.address" "peer_peer1:7052"
running start.js
2018-06-07T15:15:35.668Z ERROR [lib/handler.js] Chat stream with peer - on error: "Error: 14 UNAVAILABLE: Connect Failed\n at createStatusError (/usr/local/src/node_modules/grpc/src/client.js:64:15)\n at ClientDuplexStream._emitStatusIfDone (/usr/local/src/node_modules/grpc/src/client.js:270:19)\n at ClientDuplexStream._readsDone (/usr/local/src/node_modules/grpc/src/client.js:236:8)\n at readCallback (/usr/local/src/node_modules/grpc/src/client.js:296:12)"
```
in the chaincode container
[ ](https://chat.hyperledger.org/channel/composer?msg=2msmab2LCYGkBi4rK) @mahoney1 I have not seen this tutorial. I was using this one that stopped short of setting up the REST server: https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-network
[ ](https://chat.hyperledger.org/channel/composer?msg=2msmab2LCYGkBi4rK) @mahoney1 I have not seen this tutorial. I was using this one that stopped short of setting up the REST server: https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-network
Thanks so much for the link you provided. It looks like exactly what I was looking for.
[ ](https://chat.hyperledger.org/channel/composer?msg=2msmab2LCYGkBi4rK) @mahoney1 I have not seen this tutorial that you referenced. I was using this one that stopped short of setting up the REST server: https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-network
Thanks so much for the link you provided. It looks like exactly what I was looking for!
[ ](https://chat.hyperledger.org/channel/composer?msg=2msmab2LCYGkBi4rK) @mahoney1 I have not seen this tutorial that you referenced. I was used this other tutorial successfully, but it stopped short of setting up the REST server: https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-network
Thanks so much for the link you provided. It looks like exactly what I was looking for!
[ ](https://chat.hyperledger.org/channel/composer?msg=2msmab2LCYGkBi4rK) @mahoney1 I have not seen this tutorial that you referenced. I used this other tutorial successfully, but it stopped short of setting up the REST server: https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-network
Thanks so much for the link you provided. It looks like exactly what I was looking for!
and on from peer logs:
and on from peer logs:
```
2018-06-07 15:19:41.061 UTC [chaincode] Launch -> ERRO 03a launchAndWaitForRegister failed: timeout expired while starting chaincode empty-business-network:0.0.1(networkid:dev,peerid:peer0,tx:b7f08a3765dbcbb7161f243ffdfbc98e6d236c917f85e60cb7039a66cce16951)
```
and on from peer logs:
```
2018-06-07 15:19:41.061 UTC [chaincode] Launch -> ERRO 03a launchAndWaitForRegister failed: timeout expired while starting chaincode empty-business-network:0.0.1(networkid:dev,peerid:peer0,tx:b7f08a3765dbcbb7161f243ffdfbc98e6d236c917f85e60cb7039a66cce16951)
```
and
```
2018-06-07 15:19:41.062 UTC [endorser] simulateProposal -> ERRO 03b [composerchannel][b7f08a37] failed to invoke chaincode name:"lscc" , error: timeout expired while starting chaincode empty-business-network:0.0.1(networkid:dev,peerid:peer0,tx:b7f08a3765dbcbb7161f243ffdfbc98e6d236c917f85e60cb7039a66cce16951)
```
[ ](https://chat.hyperledger.org/channel/composer?msg=DwmFgwW877G69rdX9) @dklesev - the "Error: 14 UNAVAILABLE" is a basic networking failure with either the hostname not being able to be resolved, or the IP Address /port combination not being reachable. - so it looks like there is some error connecting to peer_peer1:7052. The last 2 errors don't tell me any more.
(P.S. I'm not familiar with that github resource hounded/swarm-config)
Hey! Is there a certain way to link a python module to the composer-rest-server using OAuth2?
I understand that @mahoney1 but wouldn't you normally want to install composer-cli locally so that you can work within your own file system. Since the composer-cli container is self contained I wouldn't be able to access any of my file systems from within it. Am I right?
[ ](https://chat.hyperledger.org/channel/composer?msg=J8FHujuT3k9LpaaH9) @rjbrock - The composer is a "standard" rest server so I would expect "normal" methods of connecting from Python to apply. You will need to pass your token as a Header in the HTTP request `X-Access-Token`.
There are a few examples of using Python to 'hit' a REST server here: https://stackoverflow.com/questions/17301938/making-a-request-to-a-restful-api-using-python
@rthatcher Is that it? I'm still a bit confused on how GET and POST works through it.
@rthatcher thank you for your help. I will try to investigate the issue.
Can you, or someone else, walk me through how I'd be able to have the rest-server use Bitbucket's OAuth? @rthatcher
@apaparazzi0329 the container is a self-contained, detachable, networkable or obviously can be a cloud based container so it can communicate with whatever dev/test Fabric environments you have configured. Its easy to script a container build (pre-reqs, changing versions, extra modules blah blah) or even just download the latest, so you don't have to do the gruntwork as versions (or their prereqs change over time). Docker also give you the ability to map volumes etc.
@apaparazzi0329 the container is a self-contained, detachable, networkable or obviously can be a cloud based container so it can communicate with whatever dev/test Fabric environments you have configured. Its easy to script a container build (pre-reqs, changing versions, extra modules blah blah) or even just download the latest, so you don't have to do the gruntwork as versions (or their prereqs) change over time. Docker also give you the ability to map volumes etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=qcgrbcZR5MGmzdBhk) @rjbrock - Our 2 examples are for Github, and Google-oauth2, we don't have any more examples/tutorials at the moment. Though a community member has provided a jwt example: https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
I assume you have seen our [tutorial](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) .
Yes I have seen the tutorial! Ill check out that link though. Thanks.
Where can I find the Github example, I have only ever seen the google one.
I think the github example got removed or broke https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html
I'm very sorry, but I do not know where else to ask, I can not find the answer in any way.
In this tutorial Composer REST uses jwt strategy. Ok. To receive an **access token**, we must send **bearer token**. Bearer, as I understand, is a real JWT token. But returned access token not looks like jwt. What is it? How bearer transformed to access token? And for what?
I'm very sorry, but I do not know where else to ask, I can not find the answer in any way.
In this tutorial (https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn) Composer REST uses jwt strategy. Ok. To receive an **access token**, we must send **bearer token**. Bearer, as I understand, is a real JWT token. But returned access token not looks like jwt. What is it? How bearer transformed to access token? And for what?
can some one tell how to stop composer rest server and restart it after updating business network ??? plz help
[ ](https://chat.hyperledger.org/channel/composer?msg=HNcwWQrCa8wRTA85J) @Farhan1122 control + c to stop. composer-rest-server with your business card. That card will house the updated business network
can someone explain me why composer (?) is trying to connect to port 7052?
[ ](https://chat.hyperledger.org/channel/composer?msg=d9HJMjaoYEQabDMQn) @VadimInshakov in the response (from the JWT token submission), one of the cookies is an access_token cookie - the access_token to send from the REST API / client app to the REST server is contained in that - in that doclink - it provides the [code block](https://github.com/hyperledger/composer/blob/2ca3137f258ed8de0584e5940ed187e588fa1aef/packages/composer-rest-server/public/index.html#L54-L98) that extracts that token from the cookie (to then use in the REST call to the the REST server)
@rjbrock try https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication.html
[ ](https://chat.hyperledger.org/channel/composer?msg=RuAXByrpEjbuzAEEr) @dklesev this comes from the Fabric configuration - the peer (Fabric) configured port is in essence the endpoint this peer uses to listen for inbound chaincode connections.
@mahoney1 ty, should any env var be set to avoid the timeout?
I can see from within the chaincode container that it fails to connect to 7053
I can see from within the chaincode container that it fails to connect to 7052
@dklesev see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues (item 6 in table - it describes the env var in the yaml file (`CORE_CHAINCODE_STARTUPTIMEOUT`)
@dklesev see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues (item 6 in table - it describes the env var in the yaml file ( `CORE_CHAINCODE_STARTUPTIMEOUT` )
ty, let me see
https://github.com/hyperledger/composer/issues/400
does anyone have idea about this issue https://github.com/hyperledger/composer/issues/400
i am facing similar issue, transaction UI is not showing
kindly assist
[ ](https://chat.hyperledger.org/channel/composer?msg=SYNb66LazemzSALZb) @mgcox yes, I am facing this issue!.. have you got any workaround?
yah i got the problem creating the angular app
have you tried including the name spaces ?
while generating app ???
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/blockchain4good?msg=KwHmoYaaExgHYrFXZ) @Farhan1122 yes I did
Have you got any solution. I am stuck for a week
Github Issue says, it is closed.
@mahoney1 @rthatcher
does writing queries in the queries.qry file create views under the hood in the couchdb?
Screenshot from 2018-06-07 13-41-26.png
Could someone please suggest me to fix this
`npm install -g composer-playground`
@Vanitha `npm install -g composer-playground`
[ ](https://chat.hyperledger.org/channel/composer?msg=SN7oSZKjNbHcWAWQi) @aharita I am seeing the same issue where the events are being pushed through the web socket but it is not showing up in Historian. I am using the latest/greatest version of Composer v0.19.8.
@diegoduncan21 Yeah I have installed it, and it executed without any errors
Do we need to fix any path, I mean it is not able to setup the path or anything else
Do we need to fix any path, I mean it is not able to setup the path I guess, if not is there anything else
@Vanitha i followed this tutorial(https://hyperledger.github.io/composer/unstable/installing/development-tools.html) and then, the command 'composer-playground' was already in my PATH
i use node version v8.11.2
and ~ npm -v 5.6.0
@diegoduncan21 I followed the same and installed everything
node -v
v8.11.2
npm -v
5.6.0
I too have same versions
[ ](https://chat.hyperledger.org/channel/composer?msg=bo2eQBrAwEWHoDxPv) @diegoduncan21 I haven't get any errors while running the commands
mmm,
```
~ whereis composer-playground
composer-playground: /home/d/.nvm/versions/node/v8.11.2/bin/composer-playground
```
[ ](https://chat.hyperledger.org/channel/composer?msg=A9aMHNwuaim25rQhE) @LogeswaranAudhikesavan u need to run the rest server and then create the angular app then u need to add the namespaces in the angular project models file. then u need to go into the angular app directory and run npm start .. hope this might help
[ ](https://chat.hyperledger.org/channel/composer?msg=KDu68gHd8GFthCS8T) @diegoduncan21 normally the path is* /.npm-global/lib/node_modules/composer-playground$* but if run where is composer-playground the path is empty
Do I need to set the path manually?
i have this in my path always: `/home/d/.nvm/versions/node/v8.11.2/bin`
i think that is because script in .zshrc from nvm:
```
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
```
Any suggestions on how to solve this and fix this?
Even when I run composer -v I was unable to see the version
It was just like this *Composer version @package_branch_alias_version@ (1.0.0-beta2) 2016-03-27 16:00:34*
someone had problems with queries in composer rest server?
im building a filter like this:
```
{
"where": {
"and": [
{
"origin": "web"
},
{
"affiliate": "resource:org.acme.affiliates.Affiliate#2"
},
{
"createdAt": {
"gte": "2018-01-01"
}
},
{
"createdAt": {
"lte": "2018-06-07"
}
}
]
}
}
```
but just work 2 of 4 conditions at the time
someone had problems with queries in composer rest server?
im building a filter like this:
```
{
"where": {
"and": [
{
"origin": "web"
},
{
"affiliate": "resource:org.acme.affiliates.Affiliate#2"
},
{
"createdAt": {
"gte": "2018-01-01"
}
},
{
"createdAt": {
"lte": "2018-06-07"
}
}
]
}
}
```
but just work 2 of 4 conditions at the time in that `and`
@rthatcher @mahoney1
is there a way to get asset history to see it's changes over time?
What is the link to the repository where someone installed composer on Windows I don't believe it was posted
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=8MLitjGjCcgAKSfcD) @mahoney1 ok, access token created by REST server by encryption the bearer token, sended by client. But how it encrypted? It's not the same as bearer: https://process.filestackapi.com/cache=expiry:max/A8XAgYE4QaSLt67vPDXB
(from this tutorial: https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn)
Has joined the channel.
Has joined the channel.
does the composer rest server use non-passport oauths?
or is that the only way for oauth verifaction?
Has joined the channel.
Has joined the channel.
hi. getting the below error. any idea?
Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
[ ](https://chat.hyperledger.org/channel/composer?msg=kGxjRokeuZJzZJ6C7) @krisava Your CA is missing or connection to CA is refused. Please check your connection profile and parameters for CA config
I'm having a hard time getting auth to work other than the what's provided in the online tutorials for Google and Github. Any help would be appreciated.
https://gist.github.com/tdespenza/0e61cb566d37bc42f9c73411faaf2447
Hi everyone, I am developing a tracking system based on hyperledger composer, contains Transporter as participant and Good as asset, the customer needs to know the route during transporting. So my question is what is the best practice to store the position data?
Now I have 2 plans :
PlanA :
Define model like
```
participant Transporter identified by transporterId {
o String transporterId
--> Good[] goods
o Double longitude
o Double latitude
}
asset Good identified by goodId {
o String goodId
o Double[][] route
}
```
The transporter reports its position every 10 minutes, then the business logic first refresh the position of transporter itself then do:
`goods.forEach(good => { good.route.push([transporter.longitude,transporter.latitude])});`
When customer inquires the route information, just render good.route in the map. This plan is easy to implement, but consider that there are hundreds of goods in a same transporter so they are at the same position, write the position to each good will be a waste of space.
PlanB :
Since we can fetch the history of specific asset, check [here](https://github.com/hyperledger/composer/issues/2458). So maybe we don't need to store the route in goods, the model will be:
```
participant Transporter identified by transporterId {
o String transporterId
o Double longitude
o Double latitude
}
asset Good identified by goodId {
o String goodId
--> Transporter transporter
}
```
When customer inquires the route information, first find the transporter then fetch the history of transporter.longitude and transporter.latitude, finally render them in the map. But actually it is much more complicated, the good might be unloaded en route, or reloaded to another transporter. How can we know which part of the route belongs to specific good?
Or is there any better way to achieve this? Please help me, thanks!
@rthatcher i replaced fabric-tools with latest version. the error remains. i think it may be caused by node.js chaincode differences between 1.1.0 release and 1.2.0 (master branch).
using fabric docker images of 1.1.0 release, it is ok.
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Lk4Jgj72BtXZf4G6z) @Farhan1122 thanks, were you able to see "Transactions" UI? in angular app @ localhost:4200?
[ ](https://chat.hyperledger.org/channel/composer?msg=KwHmoYaaExgHYrFXZ) @Farhan1122 yes, getting the angular app running fine, and it shows Assets, Particpants. But transaction is not working fine.
have u implemented the logic for transactions??
[ ](https://chat.hyperledger.org/channel/composer?msg=wcevL3cNM6ozWydNY) @Farhan1122 Nope, seems the issue is not migraeted to production yet. I raised one more issue. If you find something, please send me an email loks2cool@gmail.com
If I find something, will share the solution to this group
Has joined the channel.
how can i add 2 peers on composer
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=7FdAJb7zSt6zzaFkv) @tdespenza - there is another example from a community member here: https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
[ ](https://chat.hyperledger.org/channel/composer?msg=BGzpqfDmzFfzWWJhW) @hamza-kakar - there is a section in the Knowledge Wiki which should help you: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#multiorg
[ ](https://chat.hyperledger.org/channel/composer?msg=BGzpqfDmzFfzWWJhW) @hamza-kakar - Have you seen the Multi-Org tutorial in the Composer documentation? https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
and there is a section in the Knowledge Wiki which should help you: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#multiorg
@rthatcher @mahoney1 Can you please guide me on this?
https://chat.hyperledger.org/channel/composer?msg=HkTpe6ELcWievXahR
https://chat.hyperledger.org/channel/composer?msg=3kxvWk9krwyn9yAWp
I found one open issue similar to this https://github.com/hyperledger/composer/issues/3792
When a query is done, do the relationships also get returned?
@HoneyShah - if you need a Participant to be able to Issue Identities, they need to be created with that extra option, so when you Issue the Identity on the REST server use JSON like this:
`{ "participant": "resource:org.acme.trading.Trader#trader1", "userID": "jdoe", "options": {"issuer" : true} }`
Notice the *{"issuer" : true}* at the end.
@rthatcher I don't want to enable Participant to Issue Identities. I was testing the case if participant has no access to issue identity then what error will be thrown on attempt of issue identity. But it's not throwing any error on browser just keeps loading.
@varunagarwal the related / resolved objects don't get returned in Composer queries, no - just the relationship resource ids. Either would have to use loopback filters on a REST Endpoint (with same condition and resolve) or else use resolve on client side.
There was a `.resolve()` function before?
in composer client only - there is an issue raised, to also add it to the runtime for access in TP functions too -> https://github.com/hyperledger/composer/issues/3454 FYI
Yeah had seen that issue.
Yeah just saw the issue. Thanks.
@labcoinpoc in your use case I'd imagine something like ```asset Good identified by goodId {
o String goodId
o Transporter[] transporters
}
concept Route {
o Double lat
o Double long
}
participant Transporter identified by transporterId {
o String transporterId
o Route[] routes
--> Good good
}``` you can inquire of transporter and for your lat / long as you wrote. If the goods moved to another transporter you can check 'how many' transporters were resp for that good in transit (obviously I assume there's more to your model, to tie back the goods to some kind of tracking or transport id blah blah
@labcoinpoc in your use case I'd imagine something like ```asset Good identified by goodId {
o String goodId
o Transporter[] transporters
}
concept Route {
o Double lat
o Double long
}
participant Transporter identified by transporterId {
o String transporterId
o Route[] routes
--> Good good
}``` you can inquire of transporter and for your lat / long as you wrote. If the goods moved to another transporter you can check 'how many' transporters were resp for that good in transit (obviously I assume there's more to your model, to tie back the goods to some kind of tracking or transport id blah blah )
[ ](https://chat.hyperledger.org/channel/composer?msg=4yd8SNxJnoTDceL6v) @rthatcher https://ibm-blockchain.github.io/simple/ This will clone it to my local, not on the POD, i dont see any pod after doing steps from page1
seems some steps are missing from `Prepare & Setup` to `Simple Install`
understood it,... script has connect commands using kuberctl
but the config that it sets up is of 2 node only
what if i want to add more nodes?
[ ](https://chat.hyperledger.org/channel/composer?msg=vh8CqDq2EgDAcuFje) @Varun2887 - if you want more nodes I think you will need to extend the scripts and configurations yourself. But you might need to check that the 'Cluster' will allow more containers to be created - it might depend on the plan and billing you have with IBM Cloud.
[ ](https://chat.hyperledger.org/channel/composer?msg=4hmgpWcf5DcqoGvEQ) @HoneyShah - I have the same behaviour now - I will follow up.
[ ](https://chat.hyperledger.org/channel/composer?msg=jnWT8XsngEY4hhQ97) @rthatcher Thanks. I'll check it out.
[ ](https://chat.hyperledger.org/channel/composer?msg=wwvyytWxBvzqRzfda) @rthatcher Thanks for your response.
[ ](https://chat.hyperledger.org/channel/composer?msg=wwvyytWxBvzqRzfda) @rthatcher Okay. Thanks for your response.
after integrating TLS in fabric network I've updated `createPeerAdmin` script with TLS configurations but when I try to run composer network start command its throwing below error:
```
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to receive commit notification from x.x.x.:7051 for transaction 'c5f2a6546fc0cf7edfbb1031853dd234788097d59ceba569c54d3b1d123aa458' wi
thin the timeout period
```
anyone facing this ^ error with TLS configuration?
Why can not I get an access token? I started REST with jwt following this tutorial:
https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
I send **get** with bearer token (jwt token) and in resonse I not get access token in cookies.
Why can not I get an access token? I started REST with jwt following this tutorial:
https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
I send **get** with bearer token (jwt token) and in response I not get access token in cookies.
[ ](https://chat.hyperledger.org/channel/composer?msg=QhLSnxKvJAKpcL88W) @JayPandya - can you look in the log of the peer(s) - you should see more detail there, when the Chaincode container start is attempted.
Has joined the channel.
I just get not full webpage:
https://imgur.com/a/22MJwK8
Why can not I get an access token? I started REST with jwt following this tutorial:
https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
I send *get* with bearer token (jwt token) and in response I not get access token in cookies.
I just get not full webpage:
https://imgur.com/a/22MJwK8
And I don't set secret anywhere. Where I should set it?
my **custom-jwt.js**:
```
const passportJwt = require('passport-jwt');
const util = require('util');
function CustomJwtStrategy(options, verify) {
options.jwtFromRequest = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken();
passportJwt.Strategy.call(this, options, verify);
}
util.inherits(CustomJwtStrategy, passportJwt.Strategy);
module.exports = {
Strategy: CustomJwtStrategy
};
```
And I don't set secret anywhere. Where I should set it? I just created token for test here: http://jwtbuilder.jamiekurtz.com/
But how REST-server decode this token, if it don't know secret?
my **custom-jwt.js**:
```
const passportJwt = require('passport-jwt');
const util = require('util');
function CustomJwtStrategy(options, verify) {
options.jwtFromRequest = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken();
passportJwt.Strategy.call(this, options, verify);
}
util.inherits(CustomJwtStrategy, passportJwt.Strategy);
module.exports = {
Strategy: CustomJwtStrategy
};
```
And I don't set secret anywhere. Where I should set it?
my **custom-jwt.js**:
```
const passportJwt = require('passport-jwt');
const util = require('util');
function CustomJwtStrategy(options, verify) {
options.jwtFromRequest = passportJwt.ExtractJwt.fromAuthHeaderAsBearerToken();
passportJwt.Strategy.call(this, options, verify);
}
util.inherits(CustomJwtStrategy, passportJwt.Strategy);
module.exports = {
Strategy: CustomJwtStrategy
};
```
@rthatcher - yeah I got this error from Peer logs
```
endorser] ProcessProposal -> DEBU e82 Exit: request from%!(EXTRA string=
104.236.58.33:54420)
2018-06-08 12:33:08.246 UTC [ConnProducer] NewConnection -> ERRO e83 Failed connecting to 159.65.174.
154:7050 , error: x509: cannot validate certificate for 159.65.174.154 because it doesn't contain any
IP SANs
2018-06-08 12:33:08.246 UTC [deliveryClient] connect -> DEBU e84 Connected to
2018-06-08 12:33:08.246 UTC [deliveryClient] connect -> ERRO e85 Failed obtaining connection: Could n
ot connect to any of the endpoints: [159.65.174.154:7050]
```
@rthatcher - yeah I got this error from Peer logs
```
endorser] ProcessProposal -> DEBU e82 Exit: request from%!(EXTRA string=
104.236.58.33:54420)
2018-06-08 12:33:08.246 UTC [ConnProducer] NewConnection -> ERRO e83 Failed connecting to x.x.x.x.
154:7050 , error: x509: cannot validate certificate for x.x.x.x because it doesn't contain any
IP SANs
2018-06-08 12:33:08.246 UTC [deliveryClient] connect -> DEBU e84 Connected to
2018-06-08 12:33:08.246 UTC [deliveryClient] connect -> ERRO e85 Failed obtaining connection: Could n
ot connect to any of the endpoints: [x.x.x.x:7050]
```
I just created token for test here: http://jwtbuilder.jamiekurtz.com/
But how REST-server decode this token, if it don't know secret?
Has joined the channel.
How can I secure participant cards ?
@VadimInshakov as I understand it - however you generate the bearer token (the bearer token's properties include an access_token) you could try using postman and the demo token suggested in the tutorial - `GET request http://localhost:3000/auth/jwt/callback` passing with the header, passed as a bearer token. Based on the comments [here](https://github.com/hyperledger/composer/issues/2038#issuecomment-389460931) you can set the same secret in your config and also example/tip of using it from a client described [here](https://github.com/hyperledger/composer/issues/2038#issuecomment-395356607)
[ ](https://chat.hyperledger.org/channel/composer?msg=fR2ZDgngPCfqpuDaf) @HoneyShah - have tracked this down ... it is a known issue that only occurs with the Explorer running in the Browser. The issue only has a p3 priority because the function does provide the correct error - just not in the Explorer, and the Explorer is only a test tool, not for production use.
https://github.com/hyperledger/composer/issues/2647
@mahoney1
is there a convenient way to get history of an asset?
Hi all, can anyone help me with this? https://stackoverflow.com/questions/50752323/query-filter-in-composer-rest-server/
@mahoney1 @rthatcher - Is there any working connection profile with TLS configurations that i can take a look?
@mahoney1 Can you explain me How the card can be secure in server . I have check that one folder is created in system and all cards are store there . How an we prevent anybody to access those card ?
[ ](https://chat.hyperledger.org/channel/composer?msg=EovdJ2aHQmbwyqS2o) @JayPandya - the multiorg tutorial uses TLS and has an example connection.json - https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
anybody guide How can I implement HSM ?
A lot of user will be sign in and I need to secure their card ?
[ ](https://chat.hyperledger.org/channel/composer?msg=W5p8BxXTA8HsqNjFx) @PrashantKhatri21 - please try this ... https://github.com/hyperledger/composer/wiki/HSM-Support
[ ](https://chat.hyperledger.org/channel/composer?msg=uDZHheBkhc543KiWw) @mahoney1 as always, awesome answer, thanks. I needed "username" in jwt, it's required by composer rest. An now I understand where the secret is given (in options via an environment variable COMPOSER_PROVIDERS - in "secretOrKey" key)
Has joined the channel.
Hey Guys
I got a bit stuck
I am trying to deploy my app
using 3 peers, 3 orderers and 1 CA
I am having difficulties generating certificates
for the peers
this is my configtx.yaml file
# Copyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#
---
################################################################################
#
# Profile
#
# - Different configuration profiles may be encoded here to be specified
# as parameters to the configtxgen tool
#
################################################################################
Profiles:
ComposerOrdererGenesis:
Orderer:
<<: *OrdererDefaults
Organizations:
- *OrdererOrg
Consortiums:
ComposerConsortium:
Organizations:
- *birmp
ComposerChannel:
Consortium: ComposerConsortium
Application:
<<: *ApplicationDefaults
Organizations:
- *birmp
################################################################################
#
# Section: Organizations
#
# - This section defines the different organizational identities which will
# be referenced later in the configuration.
#
################################################################################
Organizations:
# SampleOrg defines an MSP using the sampleconfig. It should never be used
# in production but may be used as a template for other definitions
- &OrdererOrg
# DefaultOrg defines the organization which is used in the sampleconfig
# of the fabric.git development environment
Name: OrdererOrg
# ID to load the MSP definition as
ID: OrdererMSP
# MSPDir is the filesystem path which contains the MSP configuration
MSPDir: crypto-config/ordererOrganizations/blockknowhow.com/msp
# turn off security for the channel
AdminPrincipal: Role.MEMBER
- &birmp
# DefaultOrg defines the organization which is used in the sampleconfig
# of the fabric.git development environment
Name: birmp
# ID to load the MSP definition as
ID: birmpMSP
MSPDir: crypto-config/peerOrganizations/birmp.blockknowhow.com/msp
# turn off security for the peer
AdminPrincipal: Role.MEMBER
AnchorPeers:
# AnchorPeers defines the location of peers which can be used
# for cross org gossip communication. Note, this value is only
# encoded in the genesis block in the Application section context
- Host: peer2.birmp.blockknowhow.com
Port: 7051
- Host: peer1.birmp.blockknowhow.com
Port: 7051
- Host: peer0.birmp.blockknowhow.com
Port: 7051
################################################################################
#
# SECTION: Orderer
#
# - This section defines the values to encode into a config transaction or
# genesis block for orderer related parameters
#
################################################################################
Orderer: &OrdererDefaults
# Orderer Type: The orderer implementation to start
# Available types are "solo" and "kafka"
OrdererType: solo
Addresses:
- orderer.blockknowhow.com:7050
- orderer2.blockknowhow.com:7050
- orderer3.blockknowhow.com:7050
# Batch Timeout: The amount of time to wait before creating a batch
BatchTimeout: 2s
# Batch Size: Controls the number of messages batched into a block
BatchSize:
# Max Message Count: The maximum number of messages to permit in a batch
MaxMessageCount: 10
# Absolute Max Bytes: The absolute maximum number of bytes allowed for
# the serialized messages in a batch.
AbsoluteMaxBytes: 98 MB
# Preferred Max Bytes: The preferred maximum number of bytes allowed for
# the serialized messages in a batch. A message larger than the preferred
# max bytes will result in a batch larger than preferred max bytes.
PreferredMaxBytes: 512 KB
Kafka:
# Brokers: A list of Kafka brokers to which the orderer connects
# NOTE: Use IP:port notation
Brokers:
- 127.0.0.1:9092
# Organizations is the list of orgs which are defined as participants on
# the orderer side of the network
Organizations:
################################################################################
#
# SECTION: Application
#
# - This section defines the values to encode into a config transaction or
# genesis block for application related parameters
#
################################################################################
Application: &ApplicationDefaults
# Organizations is the list of orgs which are defined as participants on
# the application side of the network
Organizations:
https://pastebin.com/rJx4LnWm
what am I doing wrong?
it only generates cert for the first peer and first orderer and the ca
also do you know how Kafka works?
do I need fix ips there?
or can I just put domains?
[ ](https://chat.hyperledger.org/channel/composer?msg=XSSk45yfcBm5xQgsT) @ThomasBereczky - this looks like a Fabric question - please can you ask in one of the #fabric channels
okydoky
@rthatcher - I'm following the same but its throwing error
[ ](https://chat.hyperledger.org/channel/composer?msg=EQEssdPYC2baapwB3) @JayPandya - couple of things to check:
do you have `ssl-target-name-override` set for all the peers and orderer?
do you have `"httpOptions": {"verify": false}` set for the ca(s)
For the embedded certificates in the PEM field - do you have the certificates all in one long string with no hard line breaks? and including the \n 'breaks'? and including the the BEGIN and END CERTIFICATE markers?
@JayPandya don't know how you generated your certs - but SAN = Subject Alternate Name - your TLS certificate(s) don't contain IP SANs so its a resolution issue - see https://stackoverflow.com/questions/49024158/peers-not-joining-channel-and-error-with-tls-connection-ip-sans-error for more info or search S/O for answers to your TLS issue
Hello ! Someone can help me with this : https://stackoverflow.com/questions/50701409/informations-in-asset-disapear-after-a-put?noredirect=1#comment88418315_50701409
[ ](https://chat.hyperledger.org/channel/composer?msg=fSocuZxjPhowxJczm) @Poneey its been answered
@rthatcher @mahoney1 - I'm doing these both things you've suggested I've `ssl-target-name-override` set for all peers and orderer and also `"httpOptions": {"verify": false}`
plus when I perform
```
penssl x509 -noout -text -in
plus when I perform
```
openssl x509 -noout -text -in
```
X509v3 Subject Alternative Name:
DNS:orderer.example.com, DNS:orderer, DNS:x.x.x.x
```
@mahoney1 thanks a lot ! I can't try now, I will tell you if it work Monday !
i have an another question, more for understanding. Where asset's and participant's informations are stocked ? For what couchdb is used ?
Has joined the channel.
Hi folks! Can somebody briefly explain the structure of Composer chaincodes? Or point me where I can read it in the source code. In the CouchDB I see a lot of "system" entries besides of assets that I create. What is the purpose of all this stuff? Also when I create a new asset with Composer SDK, I see in CouchDB logs that chaincode or peer does about 15 HTTP request to the state. Why so many? Do you know that CouchDB is the bottleneck of the Fabric? We should think how to decrease the number of this requests.
Has joined the channel.
I am writing my unit tests, but require different files since the tests have gone above 1000 lines and want to split them up. Realized now I need to create the in memory admin and business network for each page, is there any way I can use participants across different unit test files?
I am writing my unit tests, but require different files since the tests have gone above 1000 lines and want to split them up. Realized now I need to create the in memory admin and business network for each page, is there any way I can use participants across different unit test files?
Has joined the channel.
**Composer REST**
After importing card to /wallets endpoint, I can't create any asset, I just see endless request and in logs of REST container I see error:
```
Treating unknown remoting type "file" as "any"
```
Has joined the channel.
**UPDATE:**
I can't import card becouse of this error ("Treating unknown remoting type "file" as "any""):
https://imgur.com/a/a0AR94M
**UPDATE:**
an error is reproduced if I pass an invalid key in the url query (access-token), but but when I set valid key (access_token), I get error:
```
"error": {
"statusCode": 401,
"name": "Error",
"message": "Authorization Required",
"code": "AUTHORIZATION_REQUIRED",
"stack": "Error: Authorization Required\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/lib/application.js:389:21\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/lib/model.js:353:7\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:464:16\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3888:9\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:473:16\n at iteratorCallback (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:1064:13)\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:969:16\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3885:13\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:449:17\n at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/role.js:324:21\n at _combinedTickCallback (internal/process/next_tick.js:131:7)\n at process._tickDomainCallback (internal/process/next_tick.js:218:9)"
}
```
"access-token" url param equals to value that I get from cookie.
can someone help me with this error while creating a REST API
Screenshot from 2018-06-09 08-31-07 (2).png
Screenshot from 2018-06-09 08-31-07 (2).png
Within the access control rules: is it possible in any way to implement organizations (fabric organizations) such that people from an organization can READ the other members of the same organization, but not from different ones?
Wondering if anyone can help out with this:
I was wondering if you could help me out a bit:
I am getting the following error when I Start Fabric and Create the PeerAdminCard. Here is the script I used: cd ~/fabric-dev-servers ./startFabric.sh ./createPeerAdminCard.sh
Terminal Result at the end:
Using composer-cli at v0.19.8
Successfully created business network card file to Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Deleted Business Network Card: PeerAdmin@hlfv1
Command succeeded
Successfully imported business network card Card file: /tmp/PeerAdmin@hlfv1.card Card name: PeerAdmin@hlfv1
Command succeeded
Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html Command failed
I am getting the following error when I Start Fabric and Create the PeerAdminCard. Here is the script I used: cd ~/fabric-dev-servers ./startFabric.sh ./createPeerAdminCard.sh
Terminal Result at the end:
Using composer-cli at v0.19.8
Successfully created business network card file to Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Deleted Business Network Card: PeerAdmin@hlfv1
Command succeeded
Successfully imported business network card Card file: /tmp/PeerAdmin@hlfv1.card Card name: PeerAdmin@hlfv1
Command succeeded
Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html Command failed
Why is it erroring out at the end: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html Command failed
I am also having another issue:
i have problem with installing business network and i have encountered following error:
Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
If anyone could help that would be great
Has joined the channel.
Hello,
Please could someone explain how I can add inside electron angular application generated automatically by composer?
Thanks you
[ ](https://chat.hyperledger.org/channel/composer?msg=hXonYKar6TcycHWEA) @VadimInshakov please specify auth method and syntax used
[ ](https://chat.hyperledger.org/channel/composer?msg=ZhxkvZYHKXs5CWEDT) @renaudadorlee jwt auth. I follow all steps, described here: https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
I use REST client Insomnia (like postman).
Sample of request:
GET http://194.67.195.227:3000/api/Worker?access_token=s%3AlAgS45KEj6l8Cb8ickOdb0gokbSJy41nBDjwY6WEWWJBGC6WMlrzRNGydlhO6cjX.jCLR5FLJVyrBuDbAOIA6lVrk6h2gvU6Ve8bCTdBlT1A
I get error "AUTHORIZATION_REQUIRED".
If I just send request without url-params (http://194.67.195.227:3000/api/Worker), becouse I already have access_token in cookies, I just wait endlessly for response.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZhxkvZYHKXs5CWEDT) @renaudadorlee jwt auth. I follow all steps, described here: https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
I use REST client Insomnia (like postman).
Sample of request:
GET http://194.67.195.227:3000/api/Worker?access_token=s%3AlAgS45KEj6l8Cb8ickOdb0gokbSJy41nBDjwY6WEWWJBGC6WMlrzRNGydlhO6cjX.jCLR5FLJVyrBuDbAOIA6lVrk6h2gvU6Ve8bCTdBlT1A
I get error "AUTHORIZATION_REQUIRED".
If I just send request without url-params (http://194.67.195.227:3000/api/Worker), becouse I already have access_token in cookies, I just wait endlessly for response.
my jwt payload:
```
{
"iss": "Online JWT Builder",
"iat": 1528623200,
"exp": 1560245600,
"aud": "www.innodata.ru",
"sub": "jrocket@innodata.ru",
"username": "vadim"
}
```
I genereted bearer token here: http://jwtbuilder.jamiekurtz.com
After working with tutorial-network in composer tutorials do we have to again download fresh docker images or what's the workaround?
is there anyway of using composer on windows. Without a virtual machine of linux
is the community working on this
is the community working on this
Has joined the channel.
Hello, I am unable to deploy a network with Composer Playground running real Fabric - it always fails with error 20. There are reports of this on various forums but I cannot see any solution. Does this problem sound familiar to anyone ?
composer-error-20.png
composer-error-20.png
composer-error-20.png
composer-error-20.png
Has joined the channel.
@PawelD this looks like Fabric CA issue.
I don't mean Fabric CA is bugged, but I mean, you are probably using bad enrollment credentials.
You fail to communicate with Fabric CA
Hello everyone, I am trying to use the new await functionality in the JS files of composer.
However, it fails when I use it as documented like this
let assetRegistry = await getAssetRegistry(...);
any idea why?
It gives unexpected token error
[ ](https://chat.hyperledger.org/channel/composer?msg=LDb8DnJGsu9cCjd45) @mahoney1 Thanks for reply. Store transporters in good is a better way than my planB, as well as the concept definition. but since some goods are loaded or unloaded en route so show the whole route of transporter is not a good idea, we need to know where is the loading point and the unloading point of the good in transporter's whole route. maybe we can do that by storing the time of loading and unloading in goods? An other problem is the transporter may always on the move, so there will be more and more data in transporter.routes, some pruning transaction may needed.
@labcoinpoc This model has no problem, first of all, you are keeping the data of the transporter in the Good (A snapshot of it to be more accurate when it was created / or a transaction made)
So Route array in the Partiticipant Transporter will always have the most updated routes; but for each good, it keeps a snap shot of the transporter with the route taken.
I have no idea of what is the use case, but that's what is your code is telling me :)
Hint: You are not keeping a realtionship, you are storing the data!
Using o not -->
[ ](https://chat.hyperledger.org/channel/composer?msg=n3P8mHoK3B4qTNqaK) @MuhammadSalah Here is my question in begining. My planA stores route data in goods, no matter if the goods is transported by multiple transporter or single, but it stores too much redundant data in the chain I think. So I came to planB, but neither my planB nor @mahoney1 's can not determine which part of route belongs to a specific good, for example, Transporter1 's route (positionA, position B,positionC) Transporter2 's route(positionB, positionC,positionD), Good1 is loaded in Transporter1 at positionA , unloaded at positionB and loaded in Transporter2 then unloaded at positionD . then if the customer wants to inquire the route of Good1 ,we can find that Good1 is transported by Transporter1 and Transporter2 ,then how can we know the specific route?
[ ](https://chat.hyperledger.org/channel/composer?msg=n3P8mHoK3B4qTNqaK) @MuhammadSalah Here is my question in begining. My planA stores route data in goods, no matter if the good is transported by multiple transporter or single, but it stores too much redundant data in the chain I think. So I came to planB, but neither my planB nor @mahoney1 's can not determine which part of route belongs to a specific good, for example, Transporter1 's route (positionA, position B,positionC) Transporter2 's route(positionB, positionC,positionD), Good1 is loaded in Transporter1 at positionA , unloaded at positionB and loaded in Transporter2 then unloaded at positionD . then if the customer wants to inquire the route of Good1 ,we can find that Good1 is transported by Transporter1 and Transporter2 ,then how can we know the specific route?
Okay, my piece of advice here, you don't report data over Blockchain; that's for IoT.
Blockchain is merely a system of record; so the points of interest are the pick up and drop points sir.
If any violations / uncompliance is reported through some quality assurance network per say (IoT), you can then record that over Blockchain.
You need to revisit the design of the solution; that's what I would say.
I don't understand your use case perfectly, but I am trying to serve you as a guidance.
Avoid using Blockchain as an integration hub, because it is not built for that.
What I may suggest to ease your solution is:
create a tuple for pick up and drop locations for the good as an array, it's good that you keep the transporter data with his full route; that's nice.
Now, you will have a verification that the transporter A was aheading on route point X --> Y --> Z, Good was deliver from Transporter A to Transporter B at Y, transporter A was aheading to X --> Y --> W, Transporter B was having a route of M --> Y --> Q.
You store the expected path of each transporter on every delivery (That's the update you issue on their profile) per delivery.
you monitor that via IoT.
IoT finds a deviation or so files your warnings or even creates a transaction on Blockchain that's fine.
On Good transition, in middle ways, you just append the new transporter.
and adding the tuple of the current location that it was switched from one transporter to another, and where it is expected to go if needed in your solution.
But bloating the Blockchain with data every 10 minutes, that's huge.
I hope I helped.
@MuhammadSalah Thanks! Your suggestion made me much more clear about it. I will try to define a concept contains transporter and the pick up/drop point of the good ,then store the informations in good, when inquiring use the up/drop points to cut the route of transporter, that may work. For the data quantity of position reporting ,I will do some test and if it is too much for blockchain, I think I will store it in somewhere else as you said, and maybe write some hash of the data into blockchain. For a tracking system I hope the immutable record of route information may do some help in guaranteeing transportation.
@MuhammadSalah Thanks! Your suggestion made me much more clear about it. I will try to define a concept contains transporter and the pick up/drop point of the good ,then store the informations in good, when inquiring use the pick up/drop points to cut the route of transporter, that may work. For the data quantity of position reporting ,I will do some test and if it is too much for blockchain, I think I will store it in somewhere else as you said, and maybe write some hash of the data into blockchain. For a tracking system I hope the immutable record of route information may do some help in guaranteeing transportation.
@labcoinpoc well, I still have a little concern. You are too concerned about trust over the taken route; but a question of reality here; can we really trust the reportings?
All, I am trying to say, is if you don't trust the whatever else helper solution; it doesn't matter if you also put it over blockchain.
The more primitive you think, the more clear answer you get.
Good luck.
@MuhammadSalah It is true that Blockchain cannot solve all problems, In my design the gps tracker may deployed in the vehicle like a blackbox, and this kind of system exists with a centralized structure currently. Rebuild it by blockchain may bring more advantages in my opinion.
I will be very excited to see that up and running. Good luck, I just wanted to give you the take away to think more primitive, and not to use convoluted solutions to achieve a simple target after all. @labcoinpoc
[ ](https://chat.hyperledger.org/channel/composer?msg=pmHKJ7nX9QPwTDYQX) @rthatcher Yes, it is showing issue in postman so it's fine. Thanks!!
Hi, I trying to install the business network archive, vehicle-manufacture-network in hyperledger/composer-sample-applications. So, I run cat installers/hlfv1/install.sh | bash from within the vehicle-manufacture package. But, in that command failed.
`docker run \
--rm \
--network composer_default \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:latest \
network install -c PeerAdmin@hlfv1 -a vehicle-manufacture-network.bna`
However, `composer network install -c PeerAdmin@hlfv1 -a vehicle-manufacture-network.bna` command is running normally.
I used TLS to encrypt communications.
How can I do?
Help me anyone, please T.T
Hi, I trying to install the business network archive, vehicle-manufacture-network in hyperledger/composer-sample-applications. So, I run cat installers/hlfv1/install.sh | bash from within the vehicle-manufacture package. But, in that command failed.
```
docker run \
--rm \
--network composer_default \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:latest \
network install -c PeerAdmin@hlfv1 -a vehicle-manufacture-network.bna
```
However, `composer network install -c PeerAdmin@hlfv1 -a vehicle-manufacture-network.bna` command is running normally.
I used TLS to encrypt communications.
How can I do?
Help me anyone, please T.T
Hi, I trying to install the business network archive, vehicle-manufacture-network in hyperledger/composer-sample-applications. So, I run cat installers/hlfv1/install.sh | bash from within the vehicle-manufacture package. But, in that command failed.
```docker run \
--rm \
--network composer_default \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:latest \
network install -c PeerAdmin@hlfv1 -a vehicle-manufacture-network.bna
```
However, `composer network install -c PeerAdmin@hlfv1 -a vehicle-manufacture-network.bna` command is running normally.
I used TLS to encrypt communications.
How can I do?
Help me anyone, please T.T
Hi, I trying to install the business network archive, vehicle-manufacture-network in hyperledger/composer-sample-applications. So, I run cat installers/hlfv1/install.sh | bash from within the vehicle-manufacture package. But, in that command failed.
```docker run \
--rm \
--network composer_default \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:latest \
network install -c PeerAdmin@hlfv1 -a vehicle-manufacture-network.bna
```
However, `composer network install -c PeerAdmin@hlfv1 -a vehicle-manufacture-network.bna` command is running normally.
I used TLS to encrypt communications.
How can I do?
Help me anyone, please T.T
Clipboard - June 11, 2018 2:28 PM
try this
composer network install --card PeerAdmin@hlfv1 --archiveFile vehicle-manufacture-network.bna
then after this command ping the network card
[ ](https://chat.hyperledger.org/channel/composer?msg=gzusPmHDyJXBmFpGy) @MuhammadSalah Thanks, I realise now also it is a CA issue - however, I am doing everything just as the tutorial says I should, a few simple steps. So perhaps there is some recent change in CA and the tutorial should be updated.. :thinking_face:
[ ](https://chat.hyperledger.org/channel/composer?msg=2kn7iH4o4auTpa9Qs) @rthatcher Unable to find msp files of `org3` and when i am trying to do
Clipboard - June 11, 2018 12:15 PM
Hello ! Someone already create an application in which id is created automatically ? How did you do this ?
@Poneey If you mean ParticipantID or AssetID etc. unless you have a function runs in each peer and can generate same id, you need to first generate id then write into blockchain
@rthatcher
@labcoinpoc Yes, i mean ParticipantID or AssetID. What is the best practice ?
Has joined the channel.
generate a unique id in client and pass it to blockchain is OK, any special condition in your use case?
@Farhan1122 You means, that command run in the composer-cli docker container?
It doesn't work, too..... Same error occurs.
I want to run that command in the hyperledger/composer-cli docker container.
have u install and started ur network ???
@Farhan1122 Network install and start is worked on composer npm module. But, It doesn't worked on hyperledger/composer-cli docker container. Network install has an error.
@Farhan1122 I want to run that command in hyperledger/composer-sample-applications/packages/vehicle-manufacture project.
```docker run \
--rm \
--network kisa_kisabw \
-v $(pwd)/vehicle-manufacture-network.bna:/home/composer/vehicle-manufacture-network.bna \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
hyperledger/composer-cli:{{COMPOSER-VERSION}} \
network install --card PeerAdmin@hlfv1 --archiveFile vehicle-manufacture-network.bna
```
[ ](https://chat.hyperledger.org/channel/composer?msg=gCQu8YH6cEW2Dfwdg) @miiiiiyoung - are you using a Custom Fabric, or the Development Fabric started with startFabric.sh? and how have you created/modified the PeerAdmin card?
@rthatcher I'm using custom fabric network and I modified card connection.json.
I created PeerAdmin card using that command
```docker run \
--rm \
--network kisa_kisabw \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
-v $(pwd)/vldstage:/home/composer/vldstage \
-v /opt/gopath/src/github.com/hyperledger/6host-env/network/artifacts/crypto-config/peerOrganizations/org1.ekape.com/users/Admin@org1.ekape.com/msp:/home/composer/PeerAdmin \
hyperledger/composer-cli:{{COMPOSER-VERSION}} \
card create -p vldstage/connection.json -u PeerAdmin -r PeerAdmin -r ChannelAdmin -f /home/composer/vldstage/PeerAdmin.card -c PeerAdmin/signcerts/Admin@org1.ekape.com-cert.pem -k PeerAdmin/keystore/
@miiiiiyoung - OK so I assume that you don't have _localhost_ in the connection.json. What errors do you have in the peer(s) log at the time of the `network install` ?
@rthatcher no any logs printed...
hello, I have one issue while running the rest server with google auth 2.0 as given in the tutorial docs, when I run the container, the rest server logs show error as `Exception: Error: namespaces has been set to never, but type names in business network are not unique` Can anyone help me understand what is the issue? I understand while setting the environmental variables we set `COMPOSER_NAMESPACES=never`
[ ](https://chat.hyperledger.org/channel/composer?msg=qXhye5KWgrjHhfZjz) @PawelD - my first guess is that when you are deploying the new network you are providing an ID and Secret and that you are supplying your own "new" ID and Secret - you need to use an existing ID from the CA - _admin_ and secret _adminpw_ .
If not this, then are you using a Custom Fabric or the standard development Fabric?
Regarding the PeerAdmin Card issue - if you don't create the PeerAdmin card - then you don't connect to a _Real_ fabric and your network just gets deployed in the Browser LocalStorage. This is pretty fast and good for quick testing, but you need to be careful not to lose work in this environment.
@rthatcher But, I added tlsCACert pem key and modified grpc -> grpcs, http -> https, container name -> localhost
@rthatcher But, I added tlsCACert pem key and modified grpc -> grpcs, http -> https, container name -> localhost in connection.json file
[ ](https://chat.hyperledger.org/channel/composer?msg=PLps67ZHieaWDCyLu) @rthatcher Right, basically I am having trouble running a network with the PeerAdmin card. Getting that error 20 when attempting to deploy the network..
[ ](https://chat.hyperledger.org/channel/composer?msg=PLps67ZHieaWDCyLu) @rthatcher My intention is to definitely deploy to real Fabric and it is running. I simply did this kind of install on an AWS instance:
https://gist.github.com/PawelDefee/b4c904bce6d56e031de463566e319c98
That should launch the CA automatically, right ?
I could recreate it from scratch and give you the address if you want to see for yourself :)
@PawelD - with that error in the Playground - you should be able to look in the log of the CA and see what error is there. Have you tried deploying a network with a different name using admin and adminpw ?
[ ](https://chat.hyperledger.org/channel/composer?msg=rjvmKYmAQaxoy6Kha) @ApoorvChandurkar what business network are you using - `trade-network` or something different? Is it possible you have an asset / participant class with the same name (eg using different included model files??)
[ ](https://chat.hyperledger.org/channel/composer?msg=m3murJKtpZtZuzead) @rthatcher What you can see in the picture is that I start with PeerAdmin@hlfv1 , create another network, give admin name and password and then it fails. Does the username/password have to be exactly admin/adminpw ?
[ ](https://chat.hyperledger.org/channel/composer?msg=EQxRzwLZBtoXaKAcc) @PawelD - the ID/Secret have to match an ID/secret already in the CA, and on the development fabric, there is an ID called admin with a secret adminpw already setup.
[ ](https://chat.hyperledger.org/channel/composer?msg=v2BBXTS6wmfje5Fzj) @rthatcher I see ok, I will check again later today. Thanks!
@pedromlcosta generally speaking the 'organization' are realms defined within / modeled / evaluated within the context of the runtime business network and its classes - see https://stackoverflow.com/questions/50680188/organization-based-restrictions-for-participant-identity-issuing-in-hyperledger/50681159#50681159 - not least, for every single ACL check, its more performant than checking metadata from a fabric network
@pedromlcosta generally speaking the 'organizations' are realms defined within / modeled / evaluated within the context of the runtime business network and its classes - see https://stackoverflow.com/questions/50680188/organization-based-restrictions-for-participant-identity-issuing-in-hyperledger/50681159#50681159 - not least, for every single ACL check, its more performant than checking metadata from a fabric network
@pedromlcosta generally speaking the 'organizations' are realms defined within / modeled / evaluated within the context of the runtime business network and its classes - see https://stackoverflow.com/questions/50680188/organization-based-restrictions-for-participant-identity-issuing-in-hyperledger/50681159#50681159 - not least, for every single ACL check, its more performant than checking metadata from a fabric network each time.
@mahoney1 @rthatcher - I've fabric setup with total 3 peers each on different machines and when I add assets on network through composer how I can make sure that those assets have been added to ledger and then we can use query to fetch it?
because right now when i use `await assetRegistry.add(order);` and then I'm putting my websocket in node application but its not working properly sometimes I get old data in query because that operation is still running on fabric side and new data get available after sometime?
how can I sync this process?
Hello everyone,
I'm looking to build a query using an array as parameter, something like this:
```
SELECT com.example.AnAsset
WHERE (_$arrayParam CONTAINS assetField)
```
Is that possible or I am missing something? Querying the endpoint I receive this error: `undefined is a required argument`, which apparently it’s the same error raised in this issue: https://github.com/hyperledger/composer/issues/2539
Do you have any suggestions?
Hello everyone,
I'm looking to build a query using an array as parameter, something like this:
```
SELECT com.example.AnAsset
WHERE (_$arrayParam CONTAINS assetField)
```
Is that possible or I am missing something? Querying the endpoint I receive this error: `undefined is a required argument`, which apparently it’s the same error raised (and solved) in this issue: https://github.com/hyperledger/composer/issues/2539
Do you have any suggestions?
Has joined the channel.
@nicolapaoli suggest to raise a Stack Overflow, with your model and query def (above) - at first glance, you're not supplying a value when you invoke the query (however you're invoking it - programmatically, REST APIs etc etc)
[ ](https://chat.hyperledger.org/channel/composer?msg=EaqeZvwD2gWENAskz) Thank you @mahoney1, yes actually I added the value, but he's asking for an `undefined` param as well, which is quite weird.
I did create a stackoverflow question here https://stackoverflow.com/questions/50795056/query-with-array-parameter-in-hyperledger-composer but I am writing a more detailed issue on GitHub as well. Thank you for now
@JayPandya so can't you emit an event which will occur after the 'add' has been committed (upon you can listen via Websockets and upon receipt the query can executed). See more [here](https://hyperledger.github.io/composer/latest/integrating/publishing-events)
@mahoney1 - Actually I'm not using composer-rest-server I'm using script with my Node application
@nicolapaoli your S/O doesn't have the model. I would hold off on creating a Github issue (thats for bug reports or enhancement requests)
@nicolapaoli your S/O doesn't have the model, can you pls add and describe how invoked etc) . I would hold off on creating a Github issue (thats for bug reports or enhancement requests)
[ ](https://chat.hyperledger.org/channel/composer?msg=vLQWLW5gmbmRpGDbu) @JayPandya thanks (I didn't say you were using REST?)
@mahoney1 though just want to make sure here that when i perform `await assetRegistry.add(order)` after finishing this job its sure that data has been written to all peers?
1, I modify the cto file ,add a new Attributes
2, deploy changes
3, the old data can not be display
[ ](https://chat.hyperledger.org/channel/composer?msg=qoLcyXEWFPER3qycJ) @mahoney1 Thank you
@JayPandya yes async/await waits for promise to complete (committed transaction) - then the next step is to emit etc
@zhulg if you have a previous business network deployed you need to build your archive then upgrade the BN. See 'Step Three - Regenerate' and 'Step Four' of this tutorial for exact steps ->. https://hyperledger.github.io/composer/latest/tutorials/queries
@mahoney1 - Okay thanks will try and update it
and I've got another question that let's say I've added new Peer in organisation in Fabric but how can I edit connection.json of already deployed network?
I mean how can I add that newly added peer in connection profile of composer?
@JayPanda - you should be able to find out from the multi-org tutorial (peers in different orgs) or the single-org... and info in the connection profiles [page](https://hyperledger.github.io/composer/latest/reference/connectionprofile.html)
@JayPanda - you should be able to find out from the [multi-org tutorial](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org) (peers in different orgs) or the single-org... and info in the connection profiles [page](https://hyperledger.github.io/composer/latest/reference/connectionprofile.html)
@mahoney1 - yeah I saw that before but that's not what I'm looking for
I've setup of 3 peers in Faric and deployed .bna file on that network and now I've added new Peer(peer4) in fabric network but now How can I update my connection profile?
because connection profile of deployed network has only IPS of those 3 first peers
@mahoney1 - yeah I saw that before but that's not what I'm looking for
I've setup of 3 peers in Faric and deployed .bna file on that network and now I've added new Peer(peer4) in fabric network but now How can I update my connection profile?
because connection profile of deployed network has only IPs of those 3 first peers
@mahoney1 - yeah I saw that before but that's not what I'm looking for
I've setup of 3 peers in Faric and deployed .bna file on that network and now I've added new Peer(peer4) in fabric network but now How can I update my connection profile? (this is happening in same organisation)
because connection profile of deployed network has only IPs of those 3 first peers
PeerCard and admin card also has info of those 3 peers so Is it possible to update that info runtime?
@mahoney1 I have do this, I add a new Attributes in assets , upgrade the BN . but previous data can not display from reset api
@JayPandya yes, you would change the connection.json file for the PeerAdmin card (and other cards in your single-org environment), to add the new peer and you would also have to do a one-time `composer network install` of the business network(s) to install the business network 'chaincode' onto the new peer and (assuming as you indicate that peer has joined the channel) - you should be able to carry on as normal (composer network ping using an admin card)
[ ](https://chat.hyperledger.org/channel/composer?msg=BGWoSM35F6ouQHtST) @zhulg stop your Composer REST (reset) server and then start with the same business network card - it will discover the new network (then go to your browser to see the changes in the REST Explorer)
[ ](https://chat.hyperledger.org/channel/composer?msg=FXktTDMroA3kLJeXW) @mahoney1 i had do this,the new api can display,but previous data can not display
After upgrading business network (new js, cto and bna-archive) REST server show old network model (endpoints). Why?
Hi team,
I am using the following document to enable Rest Authentication. I followed all the steps, but I am still getting 401 Authorisation Error on Querying the Rest APIs
curl -v http://localhost:3000/api/system/ping?
access_token=yU9U4edal4B6RncaEmWJEi3OEOK7yJhANYSOjb0HBwnQVnCoCukIpQG18nqken3e
curl -v -H 'X-Access-Token: yU9U4edal4B6RncaEmWJEi3OEOK7yJhANYSOjb0HBwnQVnCoCukIpQG18nqken3e' http://localhost:3000/api/system/ping
Hi team,
I am using the following document to enable Rest Authentication. I followed all the steps, but I am still getting 401 Authorisation Error on Querying the Rest APIs
curl -v http://localhost:3000/api/system/ping?
access_token=yU9U4edal4B6RncaEmWJEi3OEOK7yJhANYSOjb0HBwnQVnCoCukIpQG18nqken3e
curl -v -H 'X-Access-Token: yU9U4edal4B6RncaEmWJEi3OEOK7yJhANYSOjb0HBwnQVnCoCukIpQG18nqken3e' http://localhost:3000/api/system/ping
Link Used: https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication
I tried restart REST and mongo, but it not helps
@zhulg see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration for more info/explanation
@VadimInshakov did you stop and then restart your Composer REST server - it will re-discover the new schema etc
@VadimInshakov did you stop and then restart your Composer REST server - it will re-discover the new schema etc (then refresh your browser to see Explorer with new endpoints as appropriate)
@VadimInshakov did you stop and then restart your Composer REST server - it will re-discover the new schema etc (then refresh your browser to see Explorer with new endpoints as appropriate) - if persisted, stop and remove the container and do a `docker run` a la Step Seven [here](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest)
@VadimInshakov did you stop and then restart your Composer REST server - it will re-discover the new schema etc (then refresh your browser to see Explorer with new endpoints as appropriate) - if persisted REST container, stop and remove the container and do a `docker run` a la Step Seven [here](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest)
@mahoney1 @rthatcher can we access any other database from TP functions?
@HoneyShah you can do call-outs https://hyperledger.github.io/composer/latest/integrating/call-out (eg. to their REST endpoints etc)
@mahoney1 Thanks!!
[ ](https://chat.hyperledger.org/channel/composer?msg=Et6kArqArzK729T7x) @mahoney1 I already tried several times to rebuild the network, starting with the generation of cryptomaterials and to starting the REST-server. I have endpoints for very old bussiness network, files from which there is no longer on machine. What the hell...
Has joined the channel.
Also I tried to delete Mongodb container and to start again. All the same
Also I tried to delete Mongodb container and to start it again. All the same
What is the minimum requirements for production deployments of hyperledger composer/fabric ?
[ ](https://chat.hyperledger.org/channel/composer?msg=janJ9rukgBc8RdCST) @VadimInshakov - perhaps trying a private/incognito browser window would help determine if this is a Browser cache problem, or a Fabric problem ?
[ ](https://chat.hyperledger.org/channel/composer?msg=PFyArDWsEhEiGY2fL) @rthatcher yes, it's Fabric problem, I tried
Hello, when I am trying to start the network it shows an error as follows.
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-06-11T12_47_48_731Z-debug.log
"
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-06-11T12_47_48_726Z-debug.log
"
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (my-basic-sample:0.0.2-deploy.129))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (my-basic-sample:0.0.2-deploy.129))
Command failed
And now I can't upgrade network, just endless upgrading process
@MasthanbeeShaik - see answer at https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer?rq=1 The error `EAI_AGAIN` is a return code resulting from a DNS lookup timeout and is related to your network environment especially if using a VPN. Peers - as part of a network start - perform an NPM install to build the chaincode container image which is why you see the reference to registry.npmjs.org.
Can any one tell me why I am getting this error when i call users {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]",
"stack": "Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]\n at client.getUserContext.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)\n at
I have import wallet.
Clipboard - June 11, 2018 7:14 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=HwpZjm4zQQKzT9En4) @KindleBitSoln - are you running your rest server in a container?
What's the best front end technology that works best with composer! React | Angular ?
Is there a way to except some endpoints of composer rest server from requiring authentication in multi-user mode?
Hi I have some difficulty in adding the participants from a JSON file using the hyperledger composer JavaScript API. Can anyone please help me figure out what is the problem with my code?
My model files: `namespace composer.base
abstract participant Member {
o String companyName
}
concept Address {
o String contactName
o String addr1
o String addr2
o String city
o String state
o String zip
o String country default = "USA"
}`
My main invoice.cto file `/**
* Chained symphony Accounting/Finance multi party network
*/
namespace org.chainedsymphony.accounting.network
import composer.base.*
participant Company identified by id extends Member {
o String id
o Address address
}
participant Customer identified by id extends Member {
o String id
o String customerAccountNo
o String mainContact
o Address billingAddress
o Address shippingAddress
--> Company company
}
participant Auditor identified by id extends Member{
o String id
o Address contactAddress
--> Company company
}
participant CompanyAdminUser identified by id extends Member {
o String id
--> Company company
}
participant CompanyUser identified by id extends Member {
o String id
--> Company company
}
participant CustomerUser identified by id extends Member {
o String id
--> Customer customer
--> Company company
}
participant CompanyAuditorUser identified by id extends Member {
o String id
--> Auditor auditor
--> Company company
}
asset Invoice identified by invoiceNumber {
o String invoiceNumber
o DateTime invoiceDate
o String[] items
o String status
o DateTime created
o DateTime paid
o DateTime dueDate
o DateTime serviceFrom
o DateTime serviceTo
o String paymentTerms
o Double subTotal
o Double salesTax
o Double paymentsMade
o Double adjustmentsMade
o Double totalInvoiceAmount
--> Company company
--> Customer customer
}
transaction CreateInvoice {
--> Invoice invoice
}
transaction PayInvoice {
--> Invoice invoice
}
`
{ "members":
[
{
"$class": "Company",
"id": "ELLIE0002",
"address": {
"$class": "composer.base.Address",
"contactName": "Elli Goldwin",
"addr1": "5400 Rosewood Drive",
"addr2": "",
"city": "Pleasanton",
"state": "CA",
"zip": "94582",
"country": "USA"
},
"companyName": "Ellie Mae Inc."
},
{
"$class": "Customer",
"id": "PCH-9209",
"customerAccountNo": "9209-ac-123",
"mainContact": "Jorge Philips",
"billingAddress": {
"$class": "composer.base.Address",
"contactName": "Alwyn Kalicharan",
"addr1": "1400 Apple Street",
"addr2": "Quis ad et aliquip velit.",
"city": "San Ramon",
"state": "CA",
"zip": "94321",
"country": "USA"
},
"shippingAddress": {
"$class": "composer.base.Address",
"contactName": "Fugiat ullamco sint.",
"addr1": "Officia.",
"addr2": "Voluptate aliqua cupidatat incididunt.",
"city": "Irure fugiat pariatur do.",
"state": "Consequat quis tempor ipsum.",
"zip": "Ullamco eu consectetur excepteur duis.",
"country": "USA"
},
"company": "resource:org.chainedsymphony.accounting.network.Company#ELLIE0002",
"companyName": "PC Hardware, Inc."
},
{
"$class": "Customer",
"id": "INN-9210",
"customerAccountNo": "9210-xz-987",
"mainContact": "Austin Edwin",
"billingAddress": {
"$class": "composer.base.Address",
"contactName": "Alwyn Kalicharan",
"addr1": "1400 Apple Street",
"addr2": "Quis ad et aliquip velit.",
"city": "San Ramon",
"state": "CA",
"zip": "94321",
"country": "USA"
},
"shippingAddress": {
"$class": "composer.base.Address",
"contactName": "Fugiat ullamco sint.",
"addr1": "Officia.",
"addr2": "Voluptate aliqua cupidatat incididunt.",
"city": "Irure fugiat pariatur do.",
"state": "Consequat quis tempor ipsum.",
"zip": "Ullamco eu consectetur excepteur duis.",
"country": "USA"
},
"company": "resource:org.chainedsymphony.accounting.network.Company#ELLIE0002",
"companyName": "Inovative Solutions, Inc."
},
{
"$class": "Auditor",
"id": "GRNDTHTN-3524",
"contactAddress": {
"$class": "composer.base.Address",
"contactName": "Ea officia amet.",
"addr1": "Elit.",
"addr2": "Enim occaecat elit magna.",
"city": "Officia ad.",
"state": "Excepteur.",
"zip": "Sunt esse voluptate ipsum.",
"country": "USA"
},
"company": "resource:org.chainedsymphony.accounting.network.Company#ELLIE0002",
"companyName": "Grand Thornton Associates."
},
{
"$class": "CompanyAdminUser",
"id": "aravi.seetharaman@elliemae.com",
"company": "resource:org.chainedsymphony.accounting.network.Company#ELLIE0002"
},
{
"$class": "CompanyUser",
"id": "jae.lin@elliemae.com",
"company": "resource:org.chainedsymphony.accounting.network.Company#ELLIE0002"
},
{
"$class": "CompanyUser",
"id": "ari.oches@elliemae.com",
"company": "resource:org.chainedsymphony.accounting.network.Company#ELLIE0002"
},
{
"$class": "CustomerUser",
"id": "bob.charter@pchardwareinc.com",
"customer": "resource:org.chainedsymphony.accounting.network.Customer#PCH-9209"
},
{
"$class": "CustomerUser",
"id": "rob.jobber@innovativesolutionsinc.com",
"customer": "resource:org.chainedsymphony.accounting.network.Customer#INN-9210"
},
{
"$class": "CompanyAuditorUser",
"id": "rob.marshall@grandthornton.com",
"auditor": "resource:org.chainedsymphony.accounting.network.Auditor#GRNDTHTN-3524"
}
]
}
I am trying to add all these participants and I am getting an error : Ellie Mae Inc. add failed Model violation in instance org.chainedsymphony.accounting.network.Company#ELLIE0002 class composer.base.Address has value [object Object] expected a Resource or a Concept.
undefined add failed Model violation in instance org.chainedsymphony.accounting.network.CustomerUser#rob.jobber@innovativesolutionsinc.com class org.chainedsymphony.accounting.network.Customer has value resource:org.chainedsymphony.accounting.network.Customer#INN-9210 expected a Relationship.
undefined add failed Model violation in instance org.chainedsymphony.accounting.network.CompanyAdminUser#aravi.seetharaman@elliemae.com class org.chainedsymphony.accounting.network.Company has value resource:org.chainedsymphony.accounting.network.Company#ELLIE0002 expected a Relationship.
undefined add failed Model violation in instance org.chainedsymphony.accounting.network.CompanyUser#jae.lin@elliemae.com class org.chainedsymphony.accounting.network.Company has value resource:org.chainedsymphony.accounting.network.Company#ELLIE0002 expected a Relationship.
Grand Thornton Associates. add failed Model violation in instance org.chainedsymphony.accounting.network.Auditor#GRNDTHTN-3524 class composer.base.Address has value [object Object] expected a Resource or a Concept.
undefined add failed Model violation in instance org.chainedsymphony.accounting.network.CustomerUser#bob.charter@pchardwareinc.com class org.chainedsymphony.accounting.network.Customer has value resource:org.chainedsymphony.accounting.network.Customer#PCH-9209 expected a Relationship.
undefined add failed Model violation in instance org.chainedsymphony.accounting.network.CompanyAuditorUser#rob.marshall@grandthornton.com class org.chainedsymphony.accounting.network.Auditor has value resource:org.chainedsymphony.accounting.network.Auditor#GRNDTHTN-3524 expected a Relationship.
undefined add failed Model violation in instance org.chainedsymphony.accounting.network.CompanyUser#ari.oches@elliemae.com class org.chainedsymphony.accounting.network.Company has value resource:org.chainedsymphony.accounting.network.Company#ELLIE0002 expected a Relationship.
PC Hardware, Inc. add failed Model violation in instance org.chainedsymphony.accounting.network.Customer#PCH-9209 class composer.base.Address has value [object Object] expected a Resource or a Concept.
Inovative Solutions, Inc. add failed Model violation in instance org.chainedsymphony.accounting.network.Customer#INN-9210 class composer.base.Address has value [object Object] expected a Resource or a Concept.
But I am able to add the same serialized JSON objects individually using the Hyperledger Composer Playground.
So please do help. Thanks
hello I followed the steps to install hyperledger composer . after i run the npm test in my BlockchainNetwork-CompositeJourney , i get the following error .
hello I followed the steps to install hyperledger composer . after i run the npm test in my BlockchainNetwork-CompositeJourney , i get the following error . Commodity Trading
1) "before all" hook
0 passing (212ms)
1 failing
1) Commodity Trading
"before all" hook:
Error: Failed to save connection profile defaultProfile
at mkdirp.then.then.catch (node_modules\composer-common\lib\fsconnectionprofilestore.js:110:23)
at
hello I followed the steps to install hyperledger composer . after i run the npm test in my BlockchainNetwork-CompositeJourney , i get the following error . Commodity Trading
1) "before all" hook
0 passing (212ms)
1 failing
1) Commodity Trading
"before all" hook:
Error: Failed to save connection profile defaultProfile
at mkdirp.then.then.catch (node_modules\composer-common\lib\fsconnectionprofilestore.js:110:23)
at
adminpw
[ ](https://chat.hyperledger.org/channel/composer?msg=v2BBXTS6wmfje5Fzj) @rthatcher Thanks - that was the issue . I need to inspect that CA setup manually and see exactly how the admin/adminpw is connected to the card.
[ ](https://chat.hyperledger.org/channel/composer?msg=LjzMedgGhemydrZaP) @rsher60 I just installed it and it works for me.. are you sure you have correct versions etc ?
[ ](https://chat.hyperledger.org/channel/composer?msg=9AKv5TyTfvP2Y54o2) @PawelD yes all versions are ok except that I am using docker toolbox
@rsher60 do you know if composer makes any views for its assets under the hood?if so, under what conditions does it do that?
Hello everyone, can someone confirm using 0.19.8 composer-client, the following is working properly, if not can someone provide the correct command in NodeJS.
businessNetworkConnection.getBusinessNetwork.getFactory()
Hello.
Can some one please help with knowing "Does composer support Sawtooth at this momment?"
Hello. "Does composer support Sawtooth at this momment?"
Hello. anyone please help me know "Does composer support Sawtooth at this moment?"
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=f3DWo7sTu6xcpCG8r)
any suggestion please
is there a java client where I can subscribe to the composer events ? Just like the nodejs example in the documentation
[ ](https://chat.hyperledger.org/channel/composer?msg=Acpqs4KFAadQWAPqm) @rthatcher Yes
Has joined the channel.
hi ,I want to send a transaction with payload of 2mb. Example: composer transaction submit --card admin@my-basic-sample -d '{"$class": "org.example.basic.SampleTransaction", "asset": "resource:org.example.basic.SampleAsset#1","newValue":"'$test'" but I got this
error: ---- /c/Users/Dev/AppData/Roaming/npm/composer: line 12: /c/Program Files/nodejs/node: Argument list too long ----
I don't want to use composer-client for some reasons. Can you please help me,Thanks.
hi everyone ,when I run `docker run --name composer-playground --publish 8080:8080 --detach hyperledger/composer-playground`and use the composer-playground deploy a new business network ,appears this error:
屏幕快照 2018-06-12 下午1.33.09.png
does someone knows how to solve this problem?
@JordanDearsley Card by which you are trying to issue identity might not hab
@JordanDearsley Card by which you are trying to issue identity might not have permission to issue another identity. This can be the reason of error you got
i can any one help me in the issue my network card is not updating for the rest server .. but ev time i update my business network it succeeded but things are not updating in the network list and rest server
in bluemix while setting up the n/w on kubernetes it generates some virtual volume, where my local `crypto-config` is not getting picked
```---
kind: PersistentVolume
apiVersion: v1
metadata:
name: shared-pv
labels:
type: local
name: shared
spec:
capacity:
storage: 1Gi
accessModes:
- ReadWriteMany
hostPath:
path: "/network"
---
kind: PersistentVolume
apiVersion: v1
metadata:
name: composer-pv
labels:
type: local
name: composer
spec:
capacity:
storage: 1Gi
accessModes:
- ReadWriteMany
hostPath:
path: "/composer"
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: shared-pvc
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
selector:
matchLabels:
name: shared
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: composer-pvc
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
selector:
matchLabels:
name: composer
```
any idea how to do it?
"2 UNKNOWN: error executing chaincode: transaction returned with failure: AccessException: Participant 'org.kindlebit.com.Person#person1' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#property-auction@0.0.1
Can any one help me?
///////////////////////////////////////////////////////////////////// permission Acl
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule AllAccess {
description: "AllAccess - grant everything to everybody"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule R3 {
description: "regulators can perform all operations on Cars"
participant: "org.kindlebit.com.Person#person1"
operation: ALL
resource: "org.kindlebit.**"
action: ALLOW
}
[ ](https://chat.hyperledger.org/channel/composer?msg=fgYtCLvsbz5JPTZQR) @Varun2887 Need more details on how is your pod configured to consume the volume
@karthik.ir i am following https://ibm-blockchain.github.io/simple/ made some changes in the scripts to add 3rd organization
but while cryptos are getting setup its not taking the updated `crypto-config` file
Hello,
Anybody knows how can I get whole object instead of resource with fully qualified name and id?
```
{
"$class": "com.abc.participants.SubBuyer",
"department": "resource:com.abc.participants.Department#1",
"createdBy": "resource:com.abc.participants.Buyer#2",
"participantId": "3",
"email": "b@p.com",
"fullName": {
"$class": "com.abc.participants.FullName",
"firstName": "test",
"lastName": "test_last"
}
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=HdpcrQ9e5ZCpJSr7w) @HoneyShah - if you are on the REST server you could look at filters - specifically `{"include":"resolve"}` which should retrieve the resolved objects.
There are some details about filters in the Composer documentation: https://hyperledger.github.io/composer/latest/business-network/query
and more in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--filters-loopback
@KindleBitSoln - I don't think your second rule (NetworkAdminSystem) has any effect as the first rule (NetworkAdminUser) already grants access. The simple way to provide access that is currently failing is to change the participant in AllAccess to be "ANY" which should allow you to move forward.
[ ](https://chat.hyperledger.org/channel/composer?msg=hzqPcJjCobnEzxkhW) @Farhan1122 - the REST server does not automatically pick up changes to the network definition, it discovers the network and builds the REST endpoints once when it is started. So if you change the Business Network definition, then you need to stop and re-start the REST server.
[ ](https://chat.hyperledger.org/channel/composer?msg=uRXSnGDngXc7FvFD5) @KindleBitSoln - this problem is a networking problem - The Card you are using (and the connection.json) was created to connect to the Fabric on the host _localhost_ and Docker has port forwarding setup into the Containers. BUT when you use the same Card within a container the address localhost just loops back into that same container, and you can't connect to the Fabric. The [Google OAuth tutorial](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) shows how to create a special admin card, and uses the `sed` command to convert the localhost addresses to the names/addresses of the Fabric containers.
[ ](https://chat.hyperledger.org/channel/composer?msg=xvMFZZbW7fZi8rSw6) @yulong12 - I would suggest you look at the log of the Peer container to see if there are more detailed error messages. It looks like there is a mismatch between your Fabric (channel) configuration and the connection.json you have used to create the Card.
How can I specify rule in which buyer can create sub buyer but any other operation other than creation will allowed by only that buyer who has created the sub buyer?
How can I specify rule in which buyer can create sub buyer but any operation other than creation will allowed by only that buyer who has created the sub buyer?
ok thank you @rthatcher I have solved .
[ ](https://chat.hyperledger.org/channel/composer?msg=QpA3QdPq7KxbbaFq2) @karthik.ir - composer does not support Sawtooth at the moment. I am not aware of any plans to support it in the short term.
:+1_tone2:
I also have aproblem, I have fished deploying a new business network ,but it is wrong,`Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]
`
屏幕快照 2018-06-12 下午5.13.34.png
redeploy ur business card
help me :joy:
delete the recent one and delopy again
I try some times
but it appears the same error
[ ](https://chat.hyperledger.org/channel/composer?msg=oZrYqTmiYrgGps66z) @rthatcher how to stop the rest server can u plz guide ?
composer card list
check it in terminal
if ur card is showing in the composer network
?
[ ](https://chat.hyperledger.org/channel/composer?msg=tMHgEKi5SgwQ9efxW) @Farhan1122 - try ^C (Ctrl-C) - like stopping any Linux process.
[ ](https://chat.hyperledger.org/channel/composer?msg=DHyudo2v8a2po32Zn) Are following rules are correct and what should be the order?
```
rule BuyerHasAllAccessToSubBuyer {
description: "Buyer has all access to sub buyer if it is created by him"
participant(p): "com.abc.participants.Buyer"
operation: ALL
resource(r): "com.abc.participants.SubBuyer"
condition: (r.owner.getIdentifier() === p.getIdentifier())
action: ALLOW
}
rule BuyerCanAddSubBuyer{
description: "Only buyer can add sub buyer"
participant: "com.abc.participants.Buyer"
operation: CREATE
resource: "com.abc.participants.SubBuyer"
action: ALLOW
}
```
i have tried still not updating the network card
@Farhan1122 I delete the recent one and delopy again ,but it is also the save wrong
same wrong
kindly type comand "composer card list"
and check if ur card is showing ?
along with peer admin ?
@ronbiz the syntax is composer transaction submit --card admin@my-basic-sample -d '{"$class": "org.example.basic.SampleTransaction", "asset": "resource:org.example.basic.SampleAsset#1","newValue":"'$test'" }' ` or another example is `composer transaction submit -c admin.card -d '{ "$class": "org.acme.basic.SampleAsset", "assetId": "assetId:1", "owner": "resource:org.acme.sample.SampleParticipant#Toby", "value": "100" }'` - (notice you're using Windows which isn't a supported platform)
@ronbiz the syntax is `composer transaction submit --card admin@my-basic-sample -d '{"$class": "org.example.basic.SampleTransaction", "asset": "resource:org.example.basic.SampleAsset#1","newValue":"'$test'" }'` or another example is `composer transaction submit -c admin.card -d '{ "$class": "org.acme.basic.SampleAsset", "assetId": "assetId:1", "owner": "resource:org.acme.sample.SampleParticipant#Toby", "value": "100" }'` - (notice you're using Windows which isn't a supported platform)
@ronbiz the syntax is `composer transaction submit --card admin@my-basic-sample -d '{"$class": "org.example.basic.SampleTransaction", "asset": "resource:org.example.basic.SampleAsset#1","newValue":"$test" }'` or another example is `composer transaction submit -c admin.card -d '{ "$class": "org.acme.basic.SampleAsset", "assetId": "assetId:1", "owner": "resource:org.acme.sample.SampleParticipant#Toby", "value": "100" }'` - (notice you're using Windows which isn't a supported platform)
屏幕快照 2018-06-12 下午5.26.32.png
my card is showing
now check with composer network list -c "your card"
then if ur network shows all the things then u need to shop the composer playground and restart it again
it appears error
Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]
what should I do next? @Farhan1122
[ ](https://chat.hyperledger.org/channel/composer?msg=kSHFQFej2ceA8KoMM) @yulong12 - I would think you have the wrong certificate, or the wrong format of certificate in your connection.json. If you are including the PEM certificate in the file the certificate(s) need to be in one single long string with no hard line breaks (but include the \n soft line breaks). Also you need to include the "BEGIN CERTIFICATE and END certificate etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=kSHFQFej2ceA8KoMM) @yulong12 - I would think you have the wrong certificate, or the wrong format of certificate in your connection.json. If you are including the PEM certificate in the file the certificate(s) need to be in one single long string with no hard line breaks (but include the \n soft line breaks). Also you need to include the "BEGIN CERTIFICATE and END certificate etc. The [multiorg tutorial](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org) has some guidance on creating connection.json
I configure My connection configurations in playground ,first I click the create card button,and I select my certificate in local ducument,so I am sure is right,and I am also sure ,there are someting wrong in my connection file,because I use the commund line ,it succeeds,but now I want to use composer-playground
but I don't know where is the wrong
Can anyone please let me know?
1) What system configuration is required to handle large scale hyperledger?
2) Which Technology is suitable/best for hyperledger application? Which takes less resources?
@mahoney1 The syntax is good , the problem that I want to submit a transaction with data of 2mb . I got a error that argument list is too long.
Hello,
I have one question. When we are using rest server in multi user mode then every instance has different data. Now I have one case that admin user is adding data for both - suppliers and buyers. Buyers can add sub buyers so we will add sub buyer using any buyer card. But buyers also needs to see the listing of all suppliers but as we have added suppliers using admin card we can't read their data using buyer's card. So what can be solution for this problem?
Hello,
I have one question. When we are using rest server in multi user mode then every instance has different data. Now I have one case in which admin user is adding data for both - suppliers and buyers. Buyers can add sub buyers so we will add sub buyer using any buyer card. But buyers also needs to see the listing of all suppliers but as we have added suppliers using admin card we can't read their data using buyer's card. So what can be solution for this problem?
Hello,
I have one question. When we are using rest server in multi user mode then every instance has different data. Now I have one case in which admin user is adding data for both - suppliers and buyers. Buyers can add sub buyers so we will add sub buyer using any buyer card. But buyers also needs to see the listing of all suppliers but as we have added suppliers using admin card we can't read their data using buyer's card. So what could be solution for this problem?
Hello,
I have one question. When we are using rest server in multi user mode then every instance has different data. Now I have one case in which admin user is adding data for both - suppliers and buyers. Buyers can add sub buyers so we will add sub buyer using any buyer card. But buyers also needs to see the listing of all suppliers but as we have added suppliers using admin card we can't read their data using buyer's card. So what could be the solution for this problem?
Has joined the channel.
Hi guys,
I'm having an issue when deploying my business network on composer playground on mybluemix. Actually my code doesn't show any issue and it shows me the "Everything looks good!" message.
However, when I hit the Deploy button, this message shows up "t: Namespace is not defined for type org.allianz.agcs.SampleTransaction"
Can anyone give me a tip to solve this issue ?
Thanks a lot
[ ](https://chat.hyperledger.org/channel/composer?msg=88CRK3XY2Tnp2ZL72) @ronbiz the error is a Windows error ("argument list too long") - you can try another way or use redirection operator perhaps ? eg `< ` to get around your command line restriction.
[ ](https://chat.hyperledger.org/channel/composer?msg=96WSpEmL29yGzQT2K) @mahoney1 @rthatcher Can you please suggest me on this? As following is not working. I can't read sub users
@ndatebayo have you multiple .cto files ? See answer here https://stackoverflow.com/questions/45812534/hyperleger-composer-namespace-already-exists-error-on-composer-archive-create - or else you're addressing an Asset, Particpant etc from within your transaction logic, or query file or permissions acl file the wrong way (ie incorrect stem namespace definition)
@ndatebayo have you multiple .cto files ? See answer here https://stackoverflow.com/questions/45812534/hyperleger-composer-namespace-already-exists-error-on-composer-archive-create - or else you're addressing an Asset, Particpant etc from within your transaction logic, or query file or permissions acl file the wrong way (ie incorrect stem namespace definition / doesn't match what you've actually define it as)
@ndatebayo have you multiple .cto files ? See answer here https://stackoverflow.com/questions/45812534/hyperleger-composer-namespace-already-exists-error-on-composer-archive-create - or else you're addressing an Asset, Particpant etc from within your transaction logic, or query file or permissions acl file the wrong way (ie incorrect stem namespace definition / doesn't match what you've actually defined it as)
yes I have 2 cto files, thanks I'll check the link
@mahoney1 yes I have 2 cto files, thanks I'll check the link
**REST: old models in endpoints**
I deleted all the containers and started the network and REST from scratch. But endpoints do not match what is written in the model (a very old version of the network is displayed). This is definitely not a browser cache problem. I do not understand what's wrong, help me.
Where does REST take these old models? What do I need to update or delete?
[ ](https://chat.hyperledger.org/channel/composer?msg=JuGdPc7yMFwpSWxPA) @VadimInshakov - can I suggest you try a couple of things to be absolutely certain about which version of the Network is actively running:
` composer network ping ` - to get network name and version
` composer network download ` - to download the active network into a BNA file. - You can then unzip the BNA file and check the model definitions for Assets, Participants and Transactions and see if they match the REST server.
If there is still a mismatch - I would ask if the network has been upgraded on all Peers?
@mahoney1 I have the same problem on mac I can submit a transaction with smaller data but when I try with largest data that not working .Do you have a way to submit transaction with largest data?
[ ](https://chat.hyperledger.org/channel/composer?msg=64eyj2Qmjsz849xgL) @rthatcher
**composer network ping -c user1@inno**
```
The connection to the network was successfully tested: inno
Business network version: 0.0.1
Composer runtime version: 0.19.5
participant: org.hyperledger.composer.system.NetworkAdmin#user1
identity: org.hyperledger.composer.system.Identity#412d3fd43b80dee72e73ee3021d3831691147d1c017644803f61a0fa3bdfb354
```
>>composer network download ` - to download the active network into a BNA file. - You can then unzip the BNA file and check the model definitions for Assets, Participants and Transactions and see if they match the REST server.
I did so and there very old models in .cto.
>>I would ask if the network has been upgraded on all Peers?
Now I have fresh network, that only started (with 0.0.1 ver) and not upgraded.
hello @mahoney1 @rthatcher I Read the post from Caroline Church on Developing multi-user application using the Hyperledger Composer REST Server(https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc), however one of the things that brings concern is that rest-server to create a perticipants and issue the identifies can be access by anyone as mention here -> https://medium.com/@varuna/hi-caroline-church-87b54315fd7b. Carline says that the work around is to require authentication for the rest-server that issues the identities. so that means that my client using the app on his mobile app or web app would to authenticate twice? for the rest serve with multi-user to import identity and also for the one to create a participants and issue the identities? is that how you are thinking to approach this on a production app? please let me know your thoughts on this. is there any good article to address this authentication with multi-user or a sample app for this?
Question (may be super Lame/noob) so please bear.
Why should I need to write Transaction in `lib/script.js` of composer, when I can update/add assets from my composer-client code using `bizNetworkConnection.getAssetRegistry`?
I see that I cant use the feature of event emmission in that case, Is there any other reason why I should be using it?
Please help me know.
@ronbiz use a TP function / REST API endpoint that you can invoke using CURL redirection (file / stdin) ?? Not tried a string that large.
Has who used composer-playground create a business network card?
I want to know how to create
@karthik.ir see https://hyperledger.github.io/composer/latest/reference/js_scripts the logic is already part of the smart contract in the Fabric execution runtime (the business network is already installed to the peer(s) as chaincode ie where the smart contract evaluation/execution is performed). As opposed to a client connecting to the business network remotely deployed to the client
@karthik.ir see https://hyperledger.github.io/composer/latest/reference/js_scripts the logic is already part of the smart contract in the Fabric execution runtime (the business network is already installed to the peer(s) as chaincode ie where the smart contract evaluation/execution is performed). As opposed to a client connecting to the business network remote to the client
@karthik.ir see https://hyperledger.github.io/composer/latest/reference/js_scripts the logic is already part of the smart contract in the Fabric execution runtime (the business network is already installed to the peer(s) as chaincode ie where the smart contract evaluation/execution is performed). As opposed to a client connecting to the business network remote (in network latency context/terms) to the client
@Hefziben see https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server - the REST server (or instances of ) is/are a component of a secure network, like any component that performs an important application / infrastructural service is. Your client using the app registers/signs in (or 'authenticates', uses cookies/tokens) to access the app service. Any interactions with it and the ledger will (ie under the covers) use a business network card (part of which is his assigned / issued blockchain identity - securely delivered) to sign the transactions that he/she performs. Only the intended app user will have that identity. The authentication occurs at the application level and a token is passed to the REST server, to interact with the business network on the blockchain - so one authentication in that case. It all depends also of course on what authentication strategy is used, is it client authentication (per client app), user authentication (per user), the architecture an Org chooses to implement.
@Hefziben see https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server - the REST server (or instances of ) is/are a component of a secure network, like any component that performs an important application / infrastructural service is. Your client using the app registers/signs in (or 'authenticates', uses cookies/tokens) to access the app service. Any interactions with it and the ledger will (ie under the covers) use a business network card (part of which is his assigned / issued blockchain identity - securely delivered) to sign the transactions that he/she performs. Only the intended app user will have that identity. The authentication occurs at the application level and a token is passed to the protected REST server from the client (using API endpoints etc) , to interact with the business network (via the REST endpoints) on the blockchain - so one authentication in that case. It all depends also of course on what authentication strategy is used, is it client authentication (per client app), user authentication (per user), the architecture an Org chooses to implement.
@Hefziben see https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server - the REST server (or instances of ) is/are a component of a secure network, like any component that performs an important application / infrastructural service is. Your client using the app registers/signs in (or 'authenticates', uses cookies/tokens) to access the app service. Any interactions with it and the ledger will (ie under the covers) use a business network card (part of which is his assigned / issued blockchain identity - securely delivered) to sign the transactions that he/she performs. Only the intended app user will have that identity. The authentication occurs at the application level and a token is passed to the protected REST server from the client (using API endpoints etc) , to interact with the business network (via the REST endpoints) on the blockchain - so one authentication in that case. It all depends also of course on what authentication strategy is used, is it client authentication (per client app), user authentication (per user), the architecture an Org chooses to implement. See also resources posted to this [Stack Overflow](https://stackoverflow.com/questions/50651728/how-to-bring-an-app-developed-on-hyperledger-composer-to-production/50679601?noredirect=1#comment88469245_50679601)
@mahoney1 Hi. Could you please clarify? Is it necessary to use two REST API servers (in "authorized mode" and in "not authorized mode") to correctly issue identities? (as it described [Developing multi-user application using the Hyperledger Composer REST Server](https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc)
@mahoney1 Hi. Could you please clarify: Is it necessary to use two REST API servers (in "authorized mode" and in "not authorized mode") to correctly issue identities? (as it described [Developing multi-user application using the Hyperledger Composer REST Server](https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc)
In regards to Login: Has anyone already looked in to using Web Authentication API instead of storing the Cards on a server? Would that even make sense?
In regards to Login: Has anyone already looked in to using Web Authentication API instead of storing the cards on a server? Would that even make sense?
@zasamen its just an example of demarcation: having two REST servers perform different roles (one is administrative, isolated, for issuing identities and creating cards for import ; the second is 'elsewhere on the network' where your application users can interact with it in the 'normal way', having imported the cards to the REST Wallets for those application users. This is an example such that if you use the REST server you don’t need to learn all Composer JavaScript API’s, you can just make a HTTP call. You can also do it via the Javascript APIs / composer client, connect to the network and do it the same way programattically.
Has joined the channel.
Hi, I'm writing a transaction which creates new participant. in that new participant I have an array of another assets by reference (which i'm also creating in this transaction)
how do you add new assets to an array of assets which i'm just creating in that transaction
if my question is unclear to you, please tell me and I will post detailed StackOverflow question
if my question is unclear to you, please tell me and I will post detailed StackOverflow pos
if my question is unclear to you, please tell me and I will post detailed StackOverflow post
[ ](https://chat.hyperledger.org/channel/composer?msg=9T4LqoiSpGCvxfchv) @adokce yes this would help :thumbsup:
Has joined the channel.
@waleed
here it is :slight_smile:
https://stackoverflow.com/questions/50820526/creating-new-participant-and-adding-array-of-assets-by-reference-to-it
@waleed here it is :slight_smile:
https://stackoverflow.com/questions/50820526/creating-new-participant-and-adding-array-of-assets-by-reference-to-it
Hello. I am running my network on IBM Blockchain Starter Plan. Does anyone know of an example post that shows how to deploy my application on IBM Cloud Foundry and save my auth tokens on Cloudant.
@adokce its answered
**REST: old models**
I still can not solve the problem with the old models in REST API endpoints: https://chat.hyperledger.org/channel/composer?msg=JuGdPc7yMFwpSWxPA
Maybe this is due to the dockerfile of REST?
```
ROM hyperledger/composer-rest-server:latest
RUN npm install --production loopback-connector-mongodb passport-jwt && \
npm cache clean --force && \
ln -s node_modules .node_modules
COPY custom-jwt.js node_modules/custom-jwt.js
COPY .composer /home/composer/.composer
```
Has joined the channel.
Hi, I recently created a model in hyperledger composer and deployed it locally using composer rest server. I created an angular app using yo commands. Iam unable to view and create new assets and participants of the existing model, but there is no ui to invoke a transaction in the transactions panel. Can anyone please help
issue.png
fyi - reminder that the Community call is at 9am UTC (10am UK, 12pm ET, 9am PT) Wednesday this week - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-13th-June-2018 best regards Paul
I've been getting weird code coverage results in my tests since around Composer 16. I just cloned one of the sample projects, fund-clearing-network, and ran 'npm run test-cover'. The results were:
Statements : 21.05% ( 32/152 )
Branches : 23.33% ( 14/60 )
Functions : 57.14% ( 8/14 )
Lines : 19.05% ( 28/147 )
Is that really correct? I get similar results on my own networks as well, that I think should be 90%+ coverage.
@mahoney1 is composer network upgrade atomic?
@mahoney1 : Can you please help me with one issue I am having right now? I have a model like this. concept Address {
o String contactName
o String addr1
o String addr2
o String city
o String state
o String zip
o String country default = "USA"
}
participant Company identified by companyID {
o String companyID
o String companyName
o Address address
}
How can I insert a new Address to a new Company through JavaScript Hyperledger Composer API?
My JS code snippet looks something like this.
return businessNetworkConnection.getParticipantRegistry(_arr[_idx].$class)
.then(function(participantRegistry){
return participantRegistry.get(_arr[_idx].id)
.then((_res) => {
console.log('['+_idx+'] member with id: '+_arr[_idx].id+' already exists in Registry '+config.composer.NS+'.'+_arr[_idx].$class);
svc.m_connection.sendUTF('['+_idx+'] member with id: '+_arr[_idx].id+' already exists in Registry '+config.composer.NS+'.'+_arr[_idx].$class);
})
.catch((error) => {
console.log("ID : " + _arr[_idx].id);
participant = factory.newResource(config.composer.NS, _arr[_idx].$type, _arr[_idx].id);
participant.companyName = _arr[_idx].companyName;
if(_arr[_idx].$type === 'Company') {
console.log("Participant" + participant);
participant.address = factory.newResource(config.composer.NS, _arr[_idx].address.$type, _arr[_idx].address);
}
But I feel this is NOT the correct way to do this. Please provide me the correct way to do this. TIA.
My serialized JSON for the Company Model looks something like this.
{
"$type":"Company",
"$class": "org.chainedsymphony.accounting.network.Company",
"id": "ELLIE0001",
"companyName": "Ellie Mae Inc.",
"address": {
"$type": "Address",
"contactName": "Betran Mortan",
"addr1": "5438 Rosewood Blvd.",
"addr2": "",
"city": "Pleasanton",
"state": "CA",
"zip": "94582",
"country": "USA"
}
}
This serialized JSON succeeds via Hyperledger Playground Add PArticipant
Has joined the channel.
Hello All
Error: Object with ID 'undefined' in collection with ID 'chaincodes' does not exist
When i have executed composer playground
Iam getting below error , Could some one please help me
Error: Object with ID 'undefined' in collection with ID 'chaincodes' does not exist
Hello All, I am doing tutorial ofr multi org install,
I get error on step 11
composer network install --card PeerAdmin@byfn-network-org1 --archiveFile trade-network.bna
stall --card PeerAdmin@byfn-network-org1 --archiveFile trade-network.bna
⠸ Installing business network. This may take a minute...E0612 17:14:07.923595630 6267 ssl_transport_security.cc:599] Could not load any root certificate.
E0612 17:14:07.924120464 6267 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0612 17:14:07.924653902 6267 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0612 17:14:07.926130865 6267 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:8051'
E0612 17:14:07.927260229 6267 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0612 17:14:07.929001688 6267 ssl_transport_security.cc:599] Could not load any root certificate.
E0612 17:14:07.930848960 6267 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0612 17:14:07.931450855 6267 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0612 17:14:07.931487104 6267 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:8051'
E0612 17:14:07.931500646 6267 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0612 17:14:07.935105902 6267 ssl_transport_security.cc:599] Could not load any root certificate.
E0612 17:14:07.938782136 6267 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0612 17:14:07.938849953 6267 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0612 17:14:07.938867097 6267 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:9051'
E0612 17:14:07.938879497 6267 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0612 17:14:07.940102860 6267 ssl_transport_security.cc:599] Could not load any root certificate.
E0612 17:14:07.940154866 6267 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0612 17:14:07.940178902 6267 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0612 17:14:07.940192936 6267 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:9051'
E0612 17:14:07.940666827 6267 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0612 17:14:07.941892807 6267 ssl_transport_security.cc:599] Could not load any root certificate.
E0612 17:14:07.944429706 6267 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0612 17:14:07.944772014 6267 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0612 17:14:07.945075961 6267 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:10051'
E0612 17:14:07.945101808 6267 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0612 17:14:07.946754497 6267 ssl_transport_security.cc:599] Could not load any root certificate.
E0612 17:14:07.948284896 6267 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0612 17:14:07.948974724 6267 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0612 17:14:07.949027777 6267 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:10051'
E0612 17:14:07.949046352 6267 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0612 17:14:07.955083616 6267 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
[ ](https://chat.hyperledger.org/channel/composer?msg=wPW6skTTTm4xJvceP) Additional info on this: As soon as it tries to use getFactory(), it fails every line of code afterwards
Hello Could some one Please help to provide exact definition details for below
createComposerProfile.sh
createPeerAdminCard.sh
- DevServer_connection.json
downloadFabric.sh
fabric-dev-servers.tar.gz
fabric-scripts
_loader.sh
package.json
startFabric.sh
stopFabric.sh
teardownAllDocker.sh
teardownFabric.sh
can we send a email by writing node.js code in logic.js?
i want the OTP service from front end
Hi, is there a planned implementation for composer to use the feature to store private data (see https://jira.hyperledger.org/browse/FAB-1151)? As a composer developer I would like to decide which data is private and should only be stored on specific nodes and not on the blockchain, but only the hash.
Has joined the channel.
@mahoney1 , I try with composer-rest-server and using curl to store the largest data and I got this error , "Request entity too large"
I already started the network earlier. Now I follow the same steps, but the network does not start!
in peer logs:
```
start-could not find image
I already started the network earlier. Now I follow the same steps, but the network does not start!
in peer logs:
```
start-could not find image
What image it can't find? I downloaded all Fabric images. What's it mean?
What image it can't find? I downloaded all Fabric images. What does it mean?
What image it can't find? I downloaded all Fabric images. What does it mean?
**SOLVED** I just needed start business network again, now all the images have time to download.
Hello
venedara@venedara-VirtualBox:~/mynetwork01/tutorial-network$ composer archive create -t dir -n .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /home/venedara/mynetwork01/tutorial-network
TypeNotFoundException: Type SampleTransaction is not defined in namespace org.example.mynetwork
Command failed
venedara@venedara-VirtualBox:~/mynetwork01/tutorial-network$ composer archive create -t dir -n .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /home/venedara/mynetwork01/tutorial-network
TypeNotFoundException: Type SampleTransaction is not defined in namespace org.example.mynetwork
Command failed
Iam getting above error
Could some one please help
TypeNotFoundException: Type SampleTransaction is not defined in namespace org.example.mynetwork
Command failed
Hello,
I am frequently getting no response from server error. What could be the cause of it?
Hello,
I am frequently getting` no response from server` error. What could be the cause of it?
Hello,
I am frequently getting ` no response from server` error. What could be the cause of it?
Now in REST API I have endpoints of my model and of sample network. Why?
Please, see screenshot: https://imgur.com/a/mHD4sKI
fyi - reminder that the Community call is at 9am UTC (10am UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-13th-June-2018 best regards Paul
[ ](https://chat.hyperledger.org/channel/composer?msg=44qYXBGSTNd3gLi4w) @mahoney1
thanks
hi ,I have a problem. -1
down vote
favorite
I use the connections file to connect fabric network with command line ,and it success. now I want to use composer-playground to create card and deployed,I fished create card according to my connections file,and deploy a business network,but when I click this connection now button,it is wrong
create card according to "Creating a peer admin card using Playground" in: https://hyperledger.github.io/composer/latest/playground/id-cards-playground
when I click the connect now button ,there is something wrong with "Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose.
when I run composer network ping command,the log is 'Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]'
does someone know how to solve this problem?thanks
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=9op9RzpFAyafiAadF) @yulong12 - I tested this yesterday and it worked OK. Where are you getting the Certificates/Key for the ID that you are using? Have you bound that ID to a participant in the Business Network?
Saw this demo on reddit about supply chain, It looks Promising but how do I know if Fabric is really being used behind the scene? https://bit.ly/2sRYBAQ
Anyone?
[ ](https://chat.hyperledger.org/channel/composer?msg=2GmRAxK4BnxpueLHW) @VadimInshakov - do you have an extra .cto file in your models folder ?
[ ](https://chat.hyperledger.org/channel/composer?msg=NjySCdHe8pjxFGy3A) @christian-dev The have a link to Fabric Explorer there where you can see the blochchain etc http://avocado.thoughtchimps.com:8082/
My Certificates path is fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts, and my key path is fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore @rthatcher
the role is PeerAdmin and ChannelAdmin,
@rthatcher so I still don't know what's wrong
[ ](https://chat.hyperledger.org/channel/composer?msg=CzLMwZa4abMxB8Fho) @PawelD Ohh I see, are you one of the moderators here? or contributed to demo?
Can you help me with the code? I mean if I can have a look for reference
[ ](https://chat.hyperledger.org/channel/composer?msg=K4JLN7pwu6tTfJJYL) @christian-dev No, I am not part of the project, just checked it out yesterday
@PawelD thanks a lot for your help then.
I have seen many demos which don't really implement anything. they are just API based websites, I am wondering how can one check the authenticity here?
now that you have shared the Explorer link, it makes a bit of sense
Clipboard - June 13, 2018 9:46 AM
[ ](https://chat.hyperledger.org/channel/composer?msg=rw7PbKgdSyxjpsGJg) @yulong12 - are you creating a Participant Card or an Admin Card?
yes I create a Admin Card
I use the playground creating an Admin Card
[ ](https://chat.hyperledger.org/channel/composer?msg=i4wzRr7JdFXcibKp6) @yulong12 - I think that when you create an `Admin Card` the "connect now" link is disabled. - An Admin Card in Playground is used to Deploy Networks, but does not have access to the network itself - this is the difference between the 'PeerAdmin' and the 'NetworkAdmin'.
In the screenshot above, the "Admin Card" is a PeerAdmin card.
But when I use the import card which I use `composer card create` created,then I click "connection now",it works
I think creating card and importing card has the same function
reminder that the Community call is in a few mins 9am UTC (10am UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-13th-June-2018
[ ](https://chat.hyperledger.org/channel/composer?msg=sgSn3GvmQwqcoiQW7) @yulong12 - `composer card create` creates a file such as _myuser.card_ - to use this card (and make it visible) in Playground you also need to do `composer card import`
屏幕快照 2018-06-13 下午4.59.23.png
My requirement is not to use the command line, only the playground @rthatcher
I can use "Import Business Network Card" replace `composer card import`
now I want use "Create Business Network Card" to create a card
I use the connections file to connect fabric network with command line ,and it success. now I want to use composer-playground to create card and deployed,I fished create card according to my connections file,and deploy a business network,but when I click this connection now button,it is wrong
[ ](https://chat.hyperledger.org/channel/composer?msg=PWXFsaTQpKkk7M77Q) @yulong12 - Playground (if you installed it locally - not in a docker container) uses the same cards as the command line. So if you have success on the command line it will work in Playground.
If you have Deployed a network on the command line you should have a .card file - you can import this card on the command line or in Playground
[ ](https://chat.hyperledger.org/channel/composer?msg=PWXFsaTQpKkk7M77Q) @yulong12 Hey, what you create the very first time from `connection.json` file is PeerAdmin. Who only manages the network for that organisation. Installing and instantiating the chaincode and so on. To create more cards for the participants, I would recommend to deploy the network first.
Once that is done, you can easily create more participants and create cards for them from 'ID Registry'
I import this card on the command line or in Playground,it works,but my requirement is using the composer-playground to create the business card. @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=N92A79nQXL3s8bkPh) @yulong12 - OK, if you want to do it all in Playground - you need to Deploy the Network in Playground, and the Network Admin card will be created in Playground
Hello,
I am frequently getting ` no response from server` error. What could be the cause of it?
yes I use the trade-network sample and it sucess
but when I click the connect now ,the error appears
屏幕快照 2018-06-13 下午5.18.33.png
屏幕快照 2018-06-13 下午5.19.42.png
[ ](https://chat.hyperledger.org/channel/composer?msg=8BY4KCr2pgZHdoWek) @rthatcher no
屏幕快照 2018-06-13 下午5.21.02.png
I tried again
[ ](https://chat.hyperledger.org/channel/composer?msg=f333cnh6Gt7kMbHqp) @HoneyShah - what actions are you taking before the message - is there a longer message than this?
do you know my question now? @rthatcher
@ronbiz see https://stackoverflow.com/questions/47286977/limit-on-pdf-file-upload-size-in-hyperledger-composer for similar issues / suggestions (and links thereof)
ss1.png
@venedara for first issue (namespace issue) have you multiple .cto files ? See answer here https://stackoverflow.com/questions/45812534/hyperleger-composer-namespace-already-exists-error-on-composer-archive-create - or else you're addressing an Asset, Particpant etc from within your transaction logic, or query file or permissions acl file the wrong way (ie incorrect stem namespace definition / doesn't match what you've actually defined it as) on 2nd issue (Playground) - you have some old data - go and clear browser local storage...
@HoneyShah what happens if you try a curl command (same API endpoint) from CLI? Curious as the timeout (assuming the REST server is up and running) is a client thing (waiting for a response) normally. So call the same API from the CLI using curl and see if you get any response from your REST server
error_add_participant.PNG
[ ](https://chat.hyperledger.org/channel/composer?msg=mX2s299TE3LzSTbJW) @yulong12 - in your connection.json for your CA do you have ?
```"httpOptions": {
"verify": false
}
```
error_add_participant.PNG
[ ](https://chat.hyperledger.org/channel/composer?msg=3zMziYBMEd9Auc778) I followed this tutorial https://medium.com/@SDBC/multipeer-deployment-with-hyperledger-composer-v-0-19-1-e25eccf93efe
[ ](https://chat.hyperledger.org/channel/composer?msg=5F4rBaQke9QetNR8x) @mahoney1 Here is my error again !
@rthatcher yes I have
Has joined the channel.
@HoneyShah - is your Fabric running OK ?
Douchy26
I am sure there are something wrong with my admin card,because I use the import card which created by `composer card create`,it sucess,but I use the card which I create the card in playground ,it is wrong
@rthatcher
I create the card base my connection file
[ ](https://chat.hyperledger.org/channel/composer?msg=WZYiPMaaLeSEeLZ8B) @rthatcher Yes it is running ok. Till yesterday all was working fine.
[ ](https://chat.hyperledger.org/channel/composer?msg=WZYiPMaaLeSEeLZ8B) @rthatcher Yes it is running ok. Till yesterday all was working fine and I didn't changing anything
[ ](https://chat.hyperledger.org/channel/composer?msg=WZYiPMaaLeSEeLZ8B) @rthatcher Yes it is running ok. Till yesterday all was working fine and I didn't change anything
see readme -> https://github.com/hyperledger/composer-tools/blob/master/packages/fabric-dev-servers/README.md
@venedara see readme -> https://github.com/hyperledger/composer-tools/blob/master/packages/fabric-dev-servers/README.md
Hello,
I'm trying to launch 3 distincts composer-rest-server in 3 distinct container with but each time one is failling
```docker run \
-d \
--network composer_default \
--name restbuilder \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
-e COMPOSER_CARD=manufacturer@vehicle-manufacture-network \
-e COMPOSER_NAMESPACES=required \
-p 3000:3000 \
hyperledger/composer-rest-server:latest
```
Hello Iam getting error while creating business network
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
can some one please help
Hello, i'm trying to laucnh 3 distinct rest-sever from 3 distinct container with :
```docker run \
-d \
--network composer_default \
--name restmanufacturer \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
-e COMPOSER_CARD=private@vehicle-manufacture-network \
-e COMPOSER_NAMESPACES=required \
-p 3002:3000 \
hyperledger/composer-rest-server:latest
# Wait for the REST server to start and initialize.
sleep 15
# Start the REST server.
docker run \
-d \
--network composer_default \
--name restvda \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
-e COMPOSER_CARD=regulator@vehicle-manufacture-network \
-e COMPOSER_NAMESPACES=required \
-p 3001:3000 \
hyperledger/composer-rest-server:latest
# Wait for the REST server to start and initialize.
sleep 15
# Start the REST server.
docker run \
-d \
--network composer_default \
--name restbuilder \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
-e COMPOSER_CARD=manufacturer@vehicle-manufacture-network \
-e COMPOSER_NAMESPACES=required \
-p 3000:3000 \
hyperledger/composer-rest-server:latest
```
But for one of them i'm facing this error `Error: ENOENT: no such file or directory, open '/home/composer/.composer/logs/trace_20180613.log'`
It suggest that there is a problem volume sharing but i can't find the causse knowing the fact that the file is in `.vld-card-store`
Any ideas ?
@terrypst Your problem is you need to supply an npmrcFile for the business network container build (ie `composer network install`) - see [here](https://stackoverflow.com/questions/49652193/hyperledger-composer-v1-1unable-to-instantiate-chaincode/49653917#49653917) for explanation (can't get out to the NPM registry basically) - and the answer is provided here ->
https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer/49758354#49758354 - good way to test your npmrc file works is provided in this link [link answer](https://stackoverflow.com/questions/50392767/unable-to-start-composer-19-x-on-hyperledgfer-fabric-1-1) to test ...this is a custom environment/tutorial so maybe the author or others here have tried / can help beyond that.
@terrypst Your problem is you need to supply an npmrcFile for the business network container build (ie `composer network install`) - see [here](https://stackoverflow.com/questions/49652193/hyperledger-composer-v1-1unable-to-instantiate-chaincode/49653917#49653917) for explanation (can't get out to the NPM registry basically) - and the answer is provided here ->
https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer/49758354#49758354 - good way to test your npmrc file works is provided in this link [link answer](https://stackoverflow.com/questions/50392767/unable-to-start-composer-19-x-on-hyperledgfer-fabric-1-1) to test ...this is a custom environment/tutorial so maybe the author or others here have tried / can help beyond that. Ps. you don't use the `alice` business network card to deploy a network - you would use the PeerAdmin card as was instructed on that tutorial
Why when I run **npm install** in business network directory. I get this error?
```
Error: Namespace org.acme.sample specified in file /home/vadim/workchain/inno1/node_modules/composer-playground/e2e/data/sample-networks/import-network/models/sample.cto is already declared in file /home/vadim/workchain/inno1/node_modules/composer-playground/e2e/data/sample-networks/basic-sample-network/models/sample.cto
```
Why when I run **npm install** in business network directory. I get this error?
```
Error: Namespace org.acme.sample specified in file /home/vadim/workchain/inno1/node_modules/composer-playground/e2e/data/sample-networks/import-network/models/sample.cto is already declared in file /home/vadim/workchain/inno1/node_modules/composer-playground/e2e/data/sample-networks/basic-sample-network/models/sample.cto
```
It happens even if I delete *node_modules/composer-playground* and run *npm install* again
[ ](https://chat.hyperledger.org/channel/composer?msg=J4CncQcq4Q7WNYTvR) @yulong12 - just checking your screenshots again - looks like you are using the _byfn_ network - this is a multiorg network and needs careful management of IDs and cards. Have you seen the [Multi-org tutorial](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org)? I would suggest working through the multi-org tutorial to get an understanding of the cards and connection.json
If you are using a multi-org Fabric - I would expect you to have 2 PeerAdmin Cards - 1 for each org.
I'm creating an Issue on GitHiub for Composer about not being able to select which 'PeerAdmin' card to use when deploying a network on Playground.
If you are using multiorg, for the time being you will need to use the command line to initially deploy the network.
@venedara the "Error: 14 UNAVAILABLE" is either that certain Fabric nodes (ie peers) are not contactable (are you using single localhost dev environment?) (as defined in the connection.json file you're using) - you can check with `docker ps` - or it is a basic networking failure with either the hostname not being able to be resolved, or the IP Address /port combination not being reachable.
@venedara the "Error: 14 UNAVAILABLE" is either that certain Fabric nodes (ie peers) are not contactable (are you using single localhost dev environment? ie (as defined in the connection.json file you're using) - you can check with `docker ps` - or it is a basic networking failure with either the hostname not being able to be resolved, or the IP Address /port combination not being reachable.
@venedara the "Error: 14 UNAVAILABLE" is either that certain Fabric nodes (ie peers) are not contactable (are you using single localhost dev environment? ie as defined in the connection.json file you're using) - you can check with `docker ps` - or it is a basic networking failure with either the hostname not being able to be resolved, or the IP Address /port combination not being reachable.
It happens even if I delete **node_modules/composer-playground** and run **npm install** again
Help, please!
@GrondinLaurent - my guess is that this error `Error: ENOENT: no such file or directory` actually means that there is a some sort write-lock on the log file, and all three containers are trying to write log data to the same file in one mapped folder. I would suggest looking at the link below to investigate how to specify a different file location for the log - maybe inside the container, or a unique folder name in the shared volume. - the NODE_CONFIG environment variable can be used to specify the location, but the format of the JSON in the environment variable will need a little working out.
https://hyperledger.github.io/composer/latest/problems/diagnostics
[ ](https://chat.hyperledger.org/channel/composer?msg=dZoXmT65BC7ToawSc) @rthatcher So if i understand this right, i need to write a JSON file corresponding to each case with a special location for the log file. This JSON file is then pass to the NODE_CONFIG environment variable of the composer-rest-server container ?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=T9SdkrRbkWWjFArqP) @GrondinLaurent - you should be able to put the JSON directly into the environment variable. (or you could use a file but I think the env. variable will be easier in your case)
@VadimInshakov the 'already declared' error is usually because the exact same namespace definition is defined in the referenced .cto file (in the msg) Remove one or change it - see examples [here](https://github.com/hyperledger/composer-sample-models/blob/master/packages/composer.contract/models/contract.cto) of importing base classes
[ ](https://chat.hyperledger.org/channel/composer?msg=siR5e3wSK7tvzNN3d) @mahoney1 this is another error. My namespace is "innodata.ru", but in error "org.acme.sample". I have only one model file with once declared "innodata.ru" namespace.
[ ](https://chat.hyperledger.org/channel/composer?msg=NvEZXJJBLpsrfiuQs) Can this caused by any overhead to peers or something?
How can I put constraint that the field will not allow duplicate value ?
Screenshot_33.png
https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
docker run \
-d \
-e COMPOSER_CARD=$restadmin@imedicozfinal \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ~/.composer:/home/ubuntu/.composer \
--name rest \
--network composer_default \
-p 3000:3000 \
myorg/composer-rest-server
This is the command i am using to start docker container
do you know what might be causing this error?
@rthatcher
I did this for each rest-server command but it didn't change anything
```# Start the REST server.
docker run \
-d \
--network composer_default \
--name restmanufacturer \
-v $(pwd)/.vld-card-store:/home/composer/.composer \
-e COMPOSER_CARD=private@vehicle-manufacture-network \
-e COMPOSER_NAMESPACES=required \
-e NODE_CONFIG='{"composer": {"log": {"debug": "composer[debug]:*","console": {"maxLevel": "error"},"file": {"filename" : "./log_manu"}}}' \
-p 3002:3000 \
hyperledger/composer-rest-server:{{COMPOSER-VERSION}}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=nrkmwcaKDugLRDXoJ) @Shubham-koli u should mount the folder where the restadmin card is
Hi, I am stuck with this error: Expected a resource or concept in my createTrip function here: https://github.com/goelmayank/UrbanStack/blob/9eb7c1a82ec54810bc32d887d272da9da699aa87/urbanstack-network/lib/logic.js
Hi, I am stuck with this error: `Expected a resource or concept` in my createTrip function here: https://github.com/goelmayank/UrbanStack/blob/9eb7c1a82ec54810bc32d887d272da9da699aa87/urbanstack-network/lib/logic.js
Hi, I am stuck with this error: `Expected a resource or concept` in my createTrip function here: https://github.com/goelmayank/UrbanStack/blob/9eb7c1a82ec54810bc32d887d272da9da699aa87/urbanstack-network/lib/logic.js Can someone please help?
Hi, I am stuck with this error: `Expected a resource or concept` in my createTrip function here: https://github.com/goelmayank/UrbanStack/blob/master/urbanstack-network/lib/logic.js Can someone please help?
This is the model file: https://github.com/goelmayank/UrbanStack/blob/9eb7c1a82ec54810bc32d887d272da9da699aa87/urbanstack-network/models/org.urbanstack.cto
This is the model file: https://github.com/goelmayank/UrbanStack/blob/master/urbanstack-network/models/org.urbanstack.cto
-v ~/.composer:/home/ubuntu/.composer/cards but on the error it shows /home/composer/.composer/cards
[ ](https://chat.hyperledger.org/channel/composer?msg=JvBtWjDvzbZ3j8eb3) @waleed -v ~/.composer:/home/ubuntu/.composer/cards but on the error it shows /home/composer/.composer/cards
[ ](https://chat.hyperledger.org/channel/composer?msg=9YRbRxEnRRY9MQayz) @Shubham-koli u provide the card name:
`-e COMPOSER_CARD=$restadmin@imedicozfinal`
are sure that the variable `$restadmin@imedicozfinal` is defined?
[ ](https://chat.hyperledger.org/channel/composer?msg=KiRg7HisSe5YssGtH) @waleed NO that was a mistake I thought $ was adefault value
[ ](https://chat.hyperledger.org/channel/composer?msg=JsmNPck7fHHiT2eKB) @Shubham-koli yes, I expected that because the error doesn't show the complete name of the card.
[ ](https://chat.hyperledger.org/channel/composer?msg=QRmCf3fwqyb2Lu3rA) @goelmayank suggest to post it to Stack Overflow if persists - but I would guess, looking at your code and model - its because you are creating an event in your code `var event = factory.newEvent(NS, 'TripCreated' ` - that doesn't exist in the model you posted (you only have one for FlightCreated from what I can see).
[ ](https://chat.hyperledger.org/channel/composer?msg=QRmCf3fwqyb2Lu3rA) @goelmayank suggest to post it to Stack Overflow if persists - but I would guess, looking at your code and model - its because you are creating an event in your code `var event = factory.newEvent(NS, 'TripCreated')` - that doesn't exist in the model you posted (you only have one for FlightCreated from what I can see).
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=s9wMY3dEsBwWcQNDd) @mahoney1 Actually I have those events in the model.cto file. I just happened to give the link of some old commit. Sorry for the inconvenience. Have updated it, if you could please have a look again.
Has joined the channel.
Hey guys,
I'm currently trying out Hyperledger Fabric and Hyperledger Composer. I followed the tutorials and got the multi organization example working. Good stuff and good tutorials :)
Now I am trying to create a node client and let it run on a extra machine. It appears that clients in the tutorials are running on the same machine as the peers and use the previously imported business network cards. I searched online but did not find a tutorial for this. So if I have overlooked something, it would be nice if you could point it out to me. Otherwise my question is, what do I need to setup a node client on a machine that is not running a peer. Do I need Fabric or is it enough to use the npm packages for composer and use the composer-client?
[ ](https://chat.hyperledger.org/channel/composer?msg=TGmdKWtP6w9sqMJ6w) @Nestoteles - for simplicity of the infrastructure, and to allow the tutorials to focus on the Composer aspects the tutorials are written to work on a single machine. So the connection.json used to connect a client (or node app?) use *localhost* in the URL addresses for the Fabric containers. If you want to connect in from a 2nd machine you need to look at the connection.json and use addresses that can be resolved to the machine running the fabric containers. The default setup is for Docker to provide port forwarding from localhost into the containers. If you move to a 2nd machine you will might have to consider firewall configuration too.
@goelmayank your problem is this section of the code - it should look something like (eg `vPassenger` bit) ``` vPassenger.passenger = factory.newRelationship(NS, 'Passenger', vPassengerId); // added by me - missing data for asset
// add the vPassenger
const vPassengerRegistry = await getAssetRegistry(NS +'.vPassenger');
await vPassengerRegistry.add(vPassenger); // not tripData.vPassenger I believe ```
@goelmayank your problem is this section of the code - it should look something like (eg `vPassenger` bit) ``` vPassenger.passenger = factory.newRelationship(NS, 'Passenger', vPassengerId); // added by me - missing data for asset
// add the vPassenger
const vPassengerRegistry = await getAssetRegistry(NS +'.vPassenger');
await vPassengerRegistry.add(vPassenger); // not tripData.vPassenger I believe ``` - (note it then went into other missing data for fields that you probably haven't addressed yet)
@goelmayank your problem is this section of the code - it should look something like (eg `vPassenger` bit) ``` vPassenger.passenger = factory.newRelationship(NS, 'Passenger', vPassengerId); // added by me - missing data for asset
// add the vPassenger
const vPassengerRegistry = await getAssetRegistry(NS +'.vPassenger');
await vPassengerRegistry.add(vPassenger); // not tripData.vPassenger I believe ``` - (note it then went onto other missing data for fields in the CreateTrup trxn, that you probably haven't addressed yet) - but that fixed missing Resource or Concept
@rthatcher
thank you for your answer.
`"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},`
do you mean this part of the connection.js? If yes, how where would I enter an IP address?
Also what are requirements to run the node client on an extra machine? Is the assumption correct, that the client is a slim node application and only requires node 8.x and npm 5.x and the correct node packages?
The reason I'm asking is that I plan to have many clients that trigger transactions and send queries to the peers that will run on rather small hardware which uses a 32bit ARM processor and has only 1GB RAM. This was not enough to run a full peer, but it sounded enough to run a node-client.
@Nestoteles - further down in the connection.json you will have for example:
`"certificateAuthorities":{"ca.org1.example.com":{"url":"http://localhost:7054","caName":"ca.org1.example.com"}}}`
It is the URL field that needs updating for a 'remote fabric'.
It is a perfectly normal design pattern to have the Node.js app on separate machines to the Fabric - maybe a different firewall zone. Also quite normal to run the NodeJS app in a container which one would expect to have a small footprint - but interesting to be running on small 1GB hardware.
@rthatcher
Aah, yeah ok now I'm following. So I have to replace all occurences of localhost with IP addresses. One follow up question: How do the information here get to the client application? It it stored in a network business card?
Another question regarding the IdCards. For a client to connect to the network i need a idCard. How do I get this card to my node-client? Do i create one on an AdminPeer and then copy the .card file to the client machine and then load into the node-client?
[ ](https://chat.hyperledger.org/channel/composer?msg=j6HFM9k3zsiXLbj3b) @Nestoteles - Cards are created when Identities are issued. You would then import the card on the app machine and use the API Class `BusinessNetworkConnection`. There is more information on Cards in our knowledge Wiki here: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#bizcards
As you think about writing your application, I would point you to this doc: https://hyperledger.github.io/composer/latest/applications/applications-index and also to the Composer Sample applications: https://github.com/hyperledger/composer-sample-applications/tree/master/packages (The Letters of Credit is the newest sample)
if I want to pass the value of "use namespaces" parameter through the environment variable COMPOSER_NUMESPACE, what values can there be other than "never"? What word I can use as value, if I want use namespaces in endpoints only if conflicting?
if I want to pass the value of "use namespaces" parameter through the environment variable COMPOSER_NAMESPACE, what values can there be other than "never"? What word I can use as value, if I want use namespaces in endpoints only if conflicting?
[ ](https://chat.hyperledger.org/channel/composer?msg=bWaRSz8skF2jeJWpd) @VadimInshakov u can see all possibilities here: https://hyperledger.github.io/composer/latest/reference/rest-server
npmrcFile.png
npmrcFile.png
kudos @rthatcher for your quick help. I have a basic idea of how to get things started. :)
@rthatcher Hi, could I please get an opinion regarding the error below generated when trying to start a business network. The business network installation step went fine, using same card which is rejected at network start time.
```Error trying to start business network. Error: Error: 2 UNKNOWN: Failed to deserialize creator identity, err MSP
[ ](https://chat.hyperledger.org/channel/composer?msg=NtkikEwr7dXgRHkaL) @uber.twin - it looks like you are using a Custom Fabric, not the standard Development Fabric. Is this a single Org or MultiOrg configuration? Is `my msp` the name of your MSP, or just a placeholder in an example file? I would start by checking the connection.json for inconsistencies in the MSP definition, and if that doesn't help, I would look at the scripts, yaml files used to create the fabric.
Can I change the Type ("Participant User") of a participant to another Type, which expands the Type ("Participant Admin") ?
Has joined the channel.
Hi, everyone!
We have internally set up a Hyperledger network to run some tests. The version of Hyperledger Fabric being used is 1.1. We have a network of 5 machines, each representing an organization, and all of them have - running over Docker - two peers, a CA, as well as a Command-line Interface. We also have an Orderer node that is running on a standalone machine. We can install Golang chaincodes and make the organizations communicate just fine. The problem arises when we try to install business network logic via BNAs. We are using Hyperledger Composer 0.19.7. to do that and here is what happens:
1- I generate the BNA by using npm install.
2- I install it successfully on my local peers and start the network via the composer install and composer start commands.
3- I send the very same BNA file over to other members of the network, and they also successfully install it on their peers with the composer install command.
4- However, when they try to communicate with the network (composer network ping) with the appropriate admin card the following message is shown:
```
Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: could not get ChaincodeDeploymentSpec for todo-poc5-network:0.0.1: get ChaincodeDeploymentSpec for todo-poc5-network/default from LSCC error: chaincode fingerprint mismatch data mismatch Command failed
```
The really weird part is that if I - instead of the BNA - distribute the bin file that is installed on my peers (which is found in the /var/hyperledger/peer0/chaincodes folder) the ping command works perfectly and the organizations can communicate. But distributing bin files rather than the BNA itself does not seem like the ideal solution.
Hi, everyone!
We have internally set up a Hyperledger network to run some tests. The version of Hyperledger Fabric being used is 1.1. We have a network of 5 machines, each representing an organization, and all of them have - running over Docker - two peers, a CA, as well as a Command-line Interface. We also have an Orderer node that is running on a standalone machine. We can install Golang chaincodes and make the organizations communicate just fine. The problem arises when we try to install business network logic via BNAs. We are using Hyperledger Composer 0.19.7. to do that and here is what happens:
1- I generate the BNA by using npm install.
2- I install it successfully on my local peers and start the network via the composer install and composer start commands.
3- I send the very same BNA file over to other members of the network, and they also successfully install it on their peers with the composer install command.
4- However, when they try to communicate with the network (composer network ping) with the appropriate admin card the following message is shown:
```
Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: could not get ChaincodeDeploymentSpec for todo-poc5-network:0.0.1: get ChaincodeDeploymentSpec for todo-poc5-network/default from LSCC error: chaincode fingerprint mismatch data mismatch Command failed
```
The really weird part is that if I - instead of the BNA - distribute the bin file that is installed on my peers (which is found in the /var/hyperledger/peer0/chaincodes folder) the ping command works perfectly and the organizations can communicate. But distributing bin files rather than the BNA itself does not seem like the ideal solution.
Hi, everyone!
We have internally set up a Hyperledger network to run some tests. The version of Hyperledger Fabric being used is 1.1. We have a network of 5 machines, each representing an organization, and all of them have - running over Docker - two peers, a CA, as well as a Command-line Interface. We also have an Orderer node that is running on a standalone machine. We can install Golang chaincodes and make the organizations communicate just fine. The problem arises when we try to install business network logic via BNAs. We are using Hyperledger Composer 0.19.7. to do that and here is what happens:
1- I generate the BNA by using npm install.
2- I install it successfully on my local peers and start the network via the composer install and composer start commands.
3- I send the very same BNA file over to other members of the network, and they also successfully install it on their peers with the composer install command.
4- However, when they try to communicate with the network (composer network ping) with the appropriate admin card the following message is shown:
```
Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: could not get ChaincodeDeploymentSpec for todo-poc5-network:0.0.1: get ChaincodeDeploymentSpec for todo-poc5-network/default from LSCC error: chaincode fingerprint mismatch data mismatch Command failed
```
The really weird part is that if I - instead of the BNA - distribute the bin file that is installed on my peers (which is found in the /var/hyperledger/peer0/chaincodes folder) the ping command works. But distributing bin files rather than the BNA itself does not seem like the ideal solution.
@rthatcher is composer network upgrade atomic?
Has joined the channel.
Using the JS Composer Client, should BusinessNetworkConnection.issueIdentity create a card? I ran the command but did not see any evidence of a card being generated similarly to the CLI command 'composer identity issue'. If it does not create a card, is it possible to create an IdCard manually using the data returned from issueIdentity (user id and enrollment secret) using the JS client and not the cli? I understand that in either scenario this would be a temporary card that would need to be imported, pinged and exported to contain the complete information.
Hi there, I'm a student with Blockchain@UBC, trying to make the multi-org tutorial work for multiple servers: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org. I successfully get to step 17 but then face these SSL and timeout errors:
```
⠙ Starting business network definition. This may take a minute...E0613 18:28:27.562184622 12993 ssl_transport_security.cc:599] Could not load any root certificate.
E0613 18:28:27.562241888 12993 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0613 18:28:27.562259740 12993 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0613 18:28:27.562272748 12993 secure_channel_create.cc:111] Failed to create secure subchannel for secure name '34.219.141.188:7050'
E0613 18:28:27.562280779 12993 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
⠦ Starting business network definition. This may take a minute...(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.219.141.188:7051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:12993) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.219.141.188:8051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.223.203.209:9051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3)
(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.223.203.209:10051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 4)
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: REQUEST_TIMEOUT
Command failed
```
Hi there, I'm a student with Blockchain@UBC, trying to make the multi-org tutorial work for multiple servers: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org. I successfully get to step 17 but then face these SSL and timeout errors:
```
⠙ Starting business network definition. This may take a minute...E0613 18:28:27.562184622 12993 ssl_transport_security.cc:599] Could not load any root certificate.
E0613 18:28:27.562241888 12993 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0613 18:28:27.562259740 12993 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0613 18:28:27.562272748 12993 secure_channel_create.cc:111] Failed to create secure subchannel for secure name '34.219.141.188:7050'
E0613 18:28:27.562280779 12993 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
⠦ Starting business network definition. This may take a minute...(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.219.141.188:7051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:12993) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.219.141.188:8051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.223.203.209:9051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3)
(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.223.203.209:10051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 4)
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: REQUEST_TIMEOUT
Command failed
```
I copied over all the keys from one server to the other as if they were on the same machine.
I also have the hostnames mapped in /etc/hosts.
The servers still seem not to be communicating.
I could not find a reference online to E0613.
Hi there, I'm a student with Blockchain@UBC, trying to make the multi-org tutorial work for multiple servers: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org. I successfully get to step 17 but then face these SSL and timeout errors:
```
⠙ Starting business network definition. This may take a minute...E0613 18:28:27.562184622 12993 ssl_transport_security.cc:599] Could not load any root certificate.
E0613 18:28:27.562241888 12993 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0613 18:28:27.562259740 12993 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0613 18:28:27.562272748 12993 secure_channel_create.cc:111] Failed to create secure subchannel for secure name '34.219.141.188:7050'
E0613 18:28:27.562280779 12993 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
⠦ Starting business network definition. This may take a minute...(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.219.141.188:7051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:12993) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.219.141.188:8051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.223.203.209:9051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3)
(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.223.203.209:10051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 4)
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: REQUEST_TIMEOUT
Command failed
```
I copied over all the keys from one server to the other as if they were on the same machine.
I also have the hostnames mapped in /etc/hosts.
The servers still seem not to be communicating.
I could not find a reference online to E0613.
How do I get around this?
Thank you!
Hi there, I'm a student with Blockchain@UBC, trying to make the multi-org tutorial work for multiple servers: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org. I successfully get to step 17 but then face these SSL and timeout errors:
```
⠙ Starting business network definition. This may take a minute...E0613 18:28:27.562184622 12993 ssl_transport_security.cc:599] Could not load any root certificate.
E0613 18:28:27.562241888 12993 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0613 18:28:27.562259740 12993 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0613 18:28:27.562272748 12993 secure_channel_create.cc:111] Failed to create secure subchannel for secure name '34.219.141.188:7050'
E0613 18:28:27.562280779 12993 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
⠦ Starting business network definition. This may take a minute...(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.219.141.188:7051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:12993) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.219.141.188:8051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.223.203.209:9051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3)
(node:12993) UnhandledPromiseRejectionWarning: Error: Failed to receive commit notification from 34.223.203.209:10051 for transaction '502ff56c9bac99a3d8ace81494b4478c6b6d02ab23d2e8165f269eebdc187832' within the timeout period
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/.nvm/versions/node/v8.11.2/lib/node_modules/composer-cli/node_modules/composer-connector-hlfv1/lib/hlftxeventhandler.js:60:32)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
(node:12993) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 4)
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: REQUEST_TIMEOUT
Command failed
```
I copied over all the keys from one server to the other as if they were on the same machine.
I also have the hostnames mapped in /etc/hosts.
The servers still seem not to be communicating.
I could not find a reference online to E0613.
How do I get around this?
Thank you!
Have to say, the servers are not SSL secured. Could that be the issue?
I'm not hitting SSL issues anymore but come to this:
```Error: Error trying to start business network. Error: Failed to receive commit notification from 34.220.181.75:9051 for transaction '466f3d8214576380135ea3c1e051abf1e4efe802c7088be2bfc5fb63d971a62c' within the timeout period
Command failed```
when I run ```composer network start -c PeerAdmin@byfn-network-org1 -n hyper-vote -V 0.0.4 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem```
If I run the command again after that, I get ```Error: Error trying to start business network. Error: Peer 35.167.162.79:8051 has rejected transaction 'ea83ad6c6b600f3feef547cc221f3b16a3ba32c93445e3692011130cc6b34a63' with code ENDORSEMENT_POLICY_FAILURE
Command failed```
I'm not hitting SSL issues anymore but come to this:
```Error: Error trying to start business network. Error: Failed to receive commit notification from 34.220.181.75:9051 for transaction '466f3d8214576380135ea3c1e051abf1e4efe802c7088be2bfc5fb63d971a62c' within the timeout period
Command failed```
when I run
```composer network start -c PeerAdmin@byfn-network-org1 -n hyper-vote -V 0.0.4 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem```
If I run the command again after that, I get
```Error: Error trying to start business network. Error: Peer 35.167.162.79:8051 has rejected transaction 'ea83ad6c6b600f3feef547cc221f3b16a3ba32c93445e3692011130cc6b34a63' with code ENDORSEMENT_POLICY_FAILURE
Command failed```
I'm not hitting SSL issues anymore but come to this:
```Error: Error trying to start business network. Error: Failed to receive commit notification from 34.220.181.75:9051 for transaction '466f3d8214576380135ea3c1e051abf1e4efe802c7088be2bfc5fb63d971a62c' within the timeout period
Command failed
```
when I run
```composer network start -c PeerAdmin@byfn-network-org1 -n hyper-vote -V 0.0.4 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
```
If I run the command again after that, I get
```
Error: Error trying to start business network. Error: Peer 35.167.162.79:8051 has rejected transaction 'ea83ad6c6b600f3feef547cc221f3b16a3ba32c93445e3692011130cc6b34a63' with code ENDORSEMENT_POLICY_FAILURE
Command failed
```
I'm not hitting SSL issues anymore but come to this:
```Error: Error trying to start business network. Error: Failed to receive commit notification from 34.220.181.75:9051 for transaction '466f3d8214576380135ea3c1e051abf1e4efe802c7088be2bfc5fb63d971a62c' within the timeout period
Command failed
```
when I run
```composer network start -c PeerAdmin@byfn-network-org1 -n hyper-vote -V 0.0.4 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
```
If I run the command again after that, I get
```Error: Error trying to start business network. Error: Peer 35.167.162.79:8051 has rejected transaction 'ea83ad6c6b600f3feef547cc221f3b16a3ba32c93445e3692011130cc6b34a63' with code ENDORSEMENT_POLICY_FAILURE
Command failed
```
Has joined the channel.
Has joined the channel.
@hudhaifahz consider the path of file .pem alice/admin-pub.pem -A bob -C bob/admin-pub.pem when you run the code
Hello,
Has anyone integrated multiple orderers using kafka?
Hello,
Has anyone integrated multiple orderers using kafka? Can anybody guide me on how to do it?
@HoneyShah you got questions?
@ajmeraharsh which questions?
about multiple orderers and kafka!
about multiple orderers and kafka! or you need the entire process?
@ajmeraharsh I need entire process
Has joined the channel.
there isn't an official documentation on it. But the process is very similar as you have for `adding an organisation`.
So you have to -
#1 generate crypto for new orderer
#2 create channel config including the new orderer credentials
#3 get it endorsed by the existing orderer
#4 update and join the channel
#5 you now have two orderers
there isn't an official documentation on it. But the process is very similar as you have for `adding an organisation`.
So you have to -
#1 generate crypto for new orderer
#2 create channel config including the new orderer credentials
#3 get it endorsed by the existing orderer
#4 join the channel
#5 you now have two orderers
Okay. Thanks and what about kafka? What to do for that?
Good Morning
Input directory: /home/venedara/mynetwork01/tutorial-network
ParseException: Expected "namespace", comment, end of line or whitespace but "e" found. File /home/venedara/mynetwork01/tutorial-network/models/org.example.mynetwork.cto line 2 column 1
Command failed
iam getting this error while working on querry
https://hyperledger.github.io/composer/latest/tutorials/queries
Can anyone please help on this
iam getting above error
@HoneyShah
so in single orderer you had 'solo' connection, but you need 'kafka' in production so that all the orderers can communicate and sync themselves.
you would need kafka and zookeeper containers as well, and orderers would be dependent on them.
@HoneyShah
so in single orderer you had 'solo' connection, but not you need 'kafka' in production so that all the orderers can communicate and sync themselves.
you would need kafka and zookeeper containers as well, and orderers would be dependent on them.
Hi
Im trying to upgrade the network but im getting this error
`✖ Upgrading business network definition. This may take a minute...`
`Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: could not find chaincode with name 'healthcare-network')`
`Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: could not find chaincode with name 'healthcare-network') Command failed`
Hi
Im trying to upgrade the network but im getting this error
`✖ Upgrading business network definition. This may take a minute...`
`Error: Error trying to upgrade business network. Error: No valid responses from any peers.`
`Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: could not find chaincode with name 'healthcare-network')`
`Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: could not find chaincode with name 'healthcare-network') Command failed`
[ ](https://chat.hyperledger.org/channel/composer?msg=oKfDqGWyZ3FYx2dzK) @ajmeraharsh How can I do the same?
[ ](https://chat.hyperledger.org/channel/composer?msg=JC9MM4qjftYoq7KWk) @Pranoti - can you ping the Network with the Network Admin card (admin@healthcare-network?) ? - just a thought, have you re-run the startFabric.sh script recently?
hi. i'm trying to deploy my network to ibm starter plan and i'm following the tutorial from blumix 'Deploying a business network'
I'm on step 5, command 2 ` composer network start -c adminCard -n vehicle-manufacture-network -V 0.0.1 -A admin -C ./credentials/admin-pub.pem -f delete_me.card`
and when I change `vehicle-manufacture-network` to my networks name and run the code I get
```
Starting business network proof-of-concept at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: premature execution - chaincode (proof-of-concept:0.0.1) is being launched
Command failed
```
I have tried to wait a minute and run it again but no success
What is "double" in CTO? How it transpiled to go? I want to know exact standart of double
@VadimInshakov its not transpiled to go - the chaincode is ultimately interpreted as NodeJS native chaincode . Double is a modeling type in Composer. So an example of a Double value stored on the ledger could be `100.24` (eg. floatiing point). There is no differentiation of int, float and double in javascript in reality.
@venedara sounds like you're missing the 'namespace' in the model file when you made changes in the queries tutorial which relies on completion of the Developer tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - suggest to post your question on Stack Overflow including the detail of what you've done so far and exact step you're stuck at
@hudhaifahz sounds like your endorsement policy is not up to spec - as demonstrated in Step 13 of this tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=Bhj5eSfmvhFpKRiE7) @TimJohnson see https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L134 (FileCardStore would replace MemoryCardStore in this example, and the `ImportCardForIdentity` is a function defined further up. Also a useful example here in this blog posted on the community -> https://www.skcript.com/svr/how-to-build-nodejs-application-for-your-hyperledger-composer-networks/
[ ](https://chat.hyperledger.org/channel/composer?msg=4paGYGZpxjt2jXAz6) @adokce - it is _possible_ that restarting the peer will help. You should raise a support ticket with IBM Cloud.
ronbiz
@mahoney1 ,Its been several weeks since I try to submit a transaction with largest data and nothing work. I try to encode the string to base64 same error argument to long,I try with composer client
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Xqb2b7sBXjwX45uA2) @rthatcher my error got solved.. I deleted those dev images and then fired upgrade network command. It worked then.. Thank you for your reply!! :slight_smile:
@mahoney1 ,Its been several weeks since I try to submit a transaction with largest data and nothing work. I try to encode the string to base64 same error argument to long,I try with composer client I tested a payloads of 1.2mb its working without any errors but when I try with payloads of >1.5mb I got this error --------------------:Error: Error trying invoke business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT at _initializeChannel.then.then.then.then.catch (/Users/mac/ron/ibm/node_modules/composer-client/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:927:34).----------------. I tried to contact support of IBM and everythink they told me to do I had already done.There is no simple example that shows me how to do ???
Hey, I had a doubt. Are the business cards and wallets that we make on composer in any manner linked to the crypto-config that we make using cryptogen? If so, how? If not, how are these separate identities used in running the system. I'm trying to understand this from an architectural point of view.
The system being everything including fabric running on docker containers and fabric composer (with a client side application)
[ ](https://chat.hyperledger.org/channel/composer?msg=5jyZcdtrEKpMFgSRt) @rthatcher
I restared peers, and now there's different error :sob:
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
Hi
I have one participant and I have added one relationship with an asset in it.
`participant Receptionist identified by receptionistId {
o String firstName
o String lastName
o String mobileNumber
--> Object objectInfo }` like this. Object is an asset
Now im trying post api its not taking the object its accepting string.. so how to send json for post api for such type of model structure?
Hi
I have one participant and I have added one relationship with an asset in it.
`participant abc identified by abcId {
o String firstName
o String lastName
o String mobileNumber
--> Object objectInfo
}` Object is an asset
Now im trying post api its not taking the object its accepting string.. so how to send json for post api for such type of model structure?
Hi
I have one participant and I have added one relationship with an asset in it.
participant abc identified by abcId {
o String firstName
o String lastName
o String mobileNumber
--> Object objectInfo
}
*Object* is an asset
Now im trying post api its not taking the object its accepting string for objectinfo.. so how to send json for post api for such type of model structure?
Has joined the channel.
@pranoti something like ```{
"$class": "org.example.mynetwork.abc",
"abcId": "101",
"firstName": "Coco",
"lastName": "Cocoa",
"mobileNumber": "0770777777",
"objectInfo": "resource:org.example.mynetwork.Object#Obj1"
} ``` etc
@Pranoti ranoti something like ```{
"$class": "org.example.mynetwork.abc",
"abcId": "101",
"firstName": "Coco",
"lastName": "Cocoa",
"mobileNumber": "0770777777",
"objectInfo": "resource:org.example.mynetwork.Object#Obj1"
} ``` etc
@Pranoti something like ```{
"$class": "org.example.mynetwork.abc",
"abcId": "101",
"firstName": "Coco",
"lastName": "Cocoa",
"mobileNumber": "0770777777",
"objectInfo": "resource:org.example.mynetwork.Object#Obj1"
} ``` etc
@adokce - you can retry the command - but time for an IBM Cloud Ticket
[ ](https://chat.hyperledger.org/channel/composer?msg=wBhF6SfB3yNRnrEnx) @rthatcher no sure what it was but I'm getting a new error:
CLI log
```
[exec] Starting business network my-network at version 0.1.0
[exec] Processing these Network Admins:
[exec] userName: admin
[exec] Error: Error trying to start business network. Error: No valid responses from any peers.
[exec] Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)
````
peer log
```
2018-06-14T12:49:07.253450336Z [36m2018-06-14 12:49:07.241 UTC [shim] func1 -> DEBU 6f5[0m [2b0e0c76]send state message COMPLETED
2018-06-14T12:49:07.253456541Z [36m2018-06-14 12:49:07.241 UTC [chaincode] processStream -> DEBU 6f6[0m [2b0e0c76]Received message COMPLETED from shim
2018-06-14T12:49:07.253462900Z [36m2018-06-14 12:49:07.241 UTC [chaincode] HandleMessage -> DEBU 6f7[0m [2b0e0c76]Fabric side Handling ChaincodeMessage of type: COMPLETED in state ready
2018-06-14T12:49:07.253469432Z [36m2018-06-14 12:49:07.241 UTC [chaincode] HandleMessage -> DEBU 6f8[0m [2b0e0c76744196b7c0a2b2d2e926de878e0330dd9e2c7f526d84079f242b04a1]HandleMessage- COMPLETED. Notify
2018-06-14T12:49:07.253480229Z [36m2018-06-14 12:49:07.241 UTC [chaincode] notify -> DEBU 6f9[0m notifying Txid:2b0e0c76744196b7c0a2b2d2e926de878e0330dd9e2c7f526d84079f242b04a1
2018-06-14T12:49:07.253486937Z [36m2018-06-14 12:49:07.241 UTC [chaincode] Execute -> DEBU 6fa[0m Exit
2018-06-14T12:49:07.253493097Z [36m2018-06-14 12:49:07.241 UTC [endorser] callChaincode -> DEBU 6fb[0m Exit
2018-06-14T12:49:07.253499314Z [36m2018-06-14 12:49:07.242 UTC [lockbasedtxmgr] GetTxSimulationResults -> DEBU 6fc[0m Simulation completed, getting simulation results
2018-06-14T12:49:07.253505677Z [36m2018-06-14 12:49:07.242 UTC [lockbasedtxmgr] Done -> DEBU 6fd[0m Done with transaction simulation / query execution [b2ef03ce-139d-4108-878a-1143482429ec]
2018-06-14T12:49:07.253512093Z [36m2018-06-14 12:49:07.242 UTC [endorser] simulateProposal -> DEBU 6fe[0m Exit
2018-06-14T12:49:07.253625256Z [31m2018-06-14 12:49:07.242 UTC [endorser] ProcessProposal -> ERRO 6ff[0m simulateProposal() resulted in chaincode response status 500 for txid: 2b0e0c76744196b7c0a2b2d2e926de8
```
@uber.twin - *status: 500, message: Unknown chaincodeType: NODE)* This error is seen when using Composer v0.19 with Fabric v1.0.x. Composer v0.19 requires Fabric v1.1.
hi all, I get following warning (a lot of them) in composer-playground (running in docker):
```
fabric_composer.1.s5052ork5bzc@swarm03 | warn: [Hyperledger-Composer] :HLFConnection :_checkCCListener() could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events
```
which results in timeout/hangs when trying to connect to a business network. Any suggestions where to look?
Hello ! How do you manage id's asset when you create an asset on web application ?
I was using s3 for wallet store, again I wanted to move back to using local .composer file system. I downloaded all the cards to the folder but it is showing the error while i use command `composer card list` *Error: Corrupted zip: missing 6 bytes.
Command failed*
@rthatcher @mahoney1
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=DoLFqfjptNRNKdtoh) @mahoney1 Thanks a ton, the 'importCardForIdentity' method was exactly what I was looking for. I've already got the code working for once I have a valid card so this should do the trick.
Has joined the channel.
Has joined the channel.
rest0.png
rest0.png
rest0.png
I trying to create asset with this request:
and I get error:
```
"error": {
"statusCode": 500,
"name": "Error",
"message": "Invalid URI scheme: recource:innodata.ru.Worker#bob",
"stack": "Error: Invalid URI scheme: recource:innodata.ru.Worker#bob\n at Function.fromURI (/home/composer/.npm-global/lib/node_modules/composer-rest-
```
I trying to create asset with this request (please see above):
and I get error:
```
"error": {
"statusCode": 500,
"name": "Error",
"message": "Invalid URI scheme: recource:innodata.ru.Worker#bob",
"stack": "Error: Invalid URI scheme: recource:innodata.ru.Worker#bob\n at Function.fromURI (/home/composer/.npm-global/lib/node_modules/composer-rest-
```
here is swaggerUI wxample of request:
here is swaggerUI example of request:
rest1.png
What's mean error "Invalid URI scheme: recource:innodata.ru.Worker#bob"?
Has joined the channel.
@VadimInshakov you have a typo in your URI. it is *resource*, not *recource*
[ ](https://chat.hyperledger.org/channel/composer?msg=vXATLpuk4gEkiSCm9) @silliman oh, right. Thanks)
[ ](https://chat.hyperledger.org/channel/composer?msg=8NZJ3uv5tKovHLood) @Poneey you manage it from the client and pass the asset ids into the request to the business network, eg using REST APIs, JS APIs etc.
@ra_w generally speaking, you would export the cards from s3 - then zip them up and extract to disk on local storage. Once extracted, you would then import them - and not copy them into the wallet store directly. You'll also need to check if you need any different connection info if your local Fabric is configured differently.
Has joined the channel.
Has joined the channel.
Hello, does anyone know what can cause this error 2018-06-14 16:12:19.387 UTC [couchdb] CreateDatabaseIfNotExist -> INFO 040 Created state database composerchannel_testnet
2018-06-14 16:12:23.838 UTC [cceventmgmt] HandleStateUpdates -> INFO 041 Channel [composerchannel]: Handling LSCC state update for chaincode [testnet]
2018-06-14 16:12:24.407 UTC [kvledger] CommitWithPvtData -> INFO 042 Channel [composerchannel]: Committed block [1] with 1 transaction(s)
2018-06-14 16:12:24.571 UTC [common/deliver] deliverBlocks -> WARN 043 [channel: composerchannel] Error sending to 192.168.0.20:35212: rpc error: code = Unknown desc = the stream has been done
2018-06-14 16:12:24.571 UTC [common/deliver] deliverBlocks -> WARN 044 [channel: composerchannel] Error sending to 192.168.0.20:35038: rpc error: code = Unknown desc = the stream has been done
2018-06-14 16:12:24.571 UTC [common/deliver] deliverBlocks -> WARN 045 [channel: composerchannel] Error sending to 192.168.0.20:35304: rpc error: code = Unknown desc = the stream has been done
2018-06-14 16:12:24.572 UTC [common/deliver] deliverBlocks -> WARN 046 [channel: composerchannel] Error sending to 192.168.0.20:35340: rpc error: code = Unknown desc = the stream has been done
Has joined the channel.
@matheus_correia Could you raise your question about fingerprint mismatch on stackoverflow ? It would be good to get this specific problem on there as it's a problem that isn't sometimes obvious why it would happen.
Has joined the channel.
Hi everyone! I have a problem .when I run docker run `-v ~/.composer:/home/composer/.composer --name rest --network admin@trade-network -p 3000:3000 hyperledger/composer-rest-server`,there is an error with `docker: Error response from daemon: network admin@trade-network not found.`,does someone tell me way?
`docker run -v ~/.composer:/home/composer/.composer --name rest --network admin@trade-network -p 3000:3000 hyperledger/composer-rest-server`
But when I don't use docker container,it sucess
zhangyuongdeair:fabric-dev-servers zhangyulong$` composer-rest-server
? Enter the name of the business network card to use: admin@trade-network
? Specify if you want namespaces in the generated REST API: always use namespaces
? Specify if you want to use an API key to secure the REST API: No
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c admin@trade-network -n always -w true
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Registering named query: selectCommodities
Registering named query: selectCommoditiesByExchange
Registering named query: selectCommoditiesByOwner
Registering named query: selectCommoditiesWithHighQuantity
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Swagger: skipping unknown type "org.example.trading.Commodity".
Swagger: skipping unknown type "org.example.trading.Commodity".
Swagger: skipping unknown type "org.example.trading.Commodity".
Swagger: skipping unknown type "org.example.trading.Commodity".
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer`
Does someone tell me why?
@yulong12 In your `docker run` command, the `--network` option is referring to a Docker network which doesn't exist. *admin@trade-network* is referring to a Hyperledger Composer business network card, not to a Docker network. See https://stackoverflow.com/questions/50453704/how-to-run-hyperledger-composer-rest-server-docker-image?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa for an example of how to specify the business network card- look for the *COMPOSER_CARD* environment variable
` docker run -e COMPOSER_CARD="admin@trade-network" -e COMPOSER_NAMESPACES=never -e COMPOSER_AUTHENTICATION=true -e COMPOSER_MULTIUSER=true -v ~/.composer:/home/composer/.composer --name rest --network composer_default -p 3000:3000 hyperledger/composer-rest-server`
`[2018-06-15 06:14:23] PM2 log: Launching in no daemon mode
[2018-06-15 06:14:23] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-06-15 06:14:23] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ..`
but I have a new error
it stop here
and don't continue
@silliman
Has joined the channel.
hey guys for this i m using the reference from https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html#ubuntu . link while using command:-
./prereqs-ubuntu.sh
i m getting :-
Error: Ubuntu artful is not supported
what should i do i m using ubntu 17.04 lts
when I run `docker run -d -e COMPOSER_CARD="admin@trade-network" -e COMPOSER_NAMESPACES=never -v /Users/zhangyulong/.composer:/home/composer/.composer --name rest -p 3000:3000 hyperledger/composer-rest-server`,`appears ab2a6f3c4bf63a70242220f0fda9b200ece9fde9e81a02a90ef8555c686a90dc`,but when I brew` http://localhost:3000/explorer` ,appears this error `Server not found`,so I run` docker ps | grep rest `, and it has the container.then I run `docker logs rest`,the logs is `*zhangyuongdeair:fabric-dev-servers zhangyulong$ docker logs rest
[2018-06-15 06:40:28] PM2 log: Launching in no daemon mode
[2018-06-15 06:40:28] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-06-15 06:40:28] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
zhangyuongdeair:fabric-dev-servers zhangyulong$
*` who can tell me why?
when I run `docker run -d -e COMPOSER_CARD="admin@trade-network" -e COMPOSER_NAMESPACES=never -v /Users/zhangyulong/.composer:/home/composer/.composer --name rest -p 3000:3000 hyperledger/composer-rest-server`,appears `ab2a6f3c4bf63a70242220f0fda9b200ece9fde9e81a02a90ef8555c686a90dc`,but when I brew` http://localhost:3000/explorer` ,appears this error `Server not found`,so I run` docker ps | grep rest `, and it has the container.then I run `docker logs rest`,the logs is zhangyuongdeair:fabric-dev-servers zhangyulong$ docker logs rest
[2018-06-15 06:40:28] PM2 log: Launching in no daemon mode
[2018-06-15 06:40:28] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-06-15 06:40:28] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
zhangyuongdeair:fabric-dev-servers zhangyulong$
who can tell me why?
[ ](https://chat.hyperledger.org/channel/composer?msg=NvcoGYZNb9FqgcZiL) @mahoney1 :slight_smile: :thumbsup: Thank you!!
Has joined the channel.
While running the command "npm start" to run my angular 4 app in the developer tutorial step six I'm getting error like below:
> angular-app@0.0.1 start /home/rahul/fabric-dev-servers/tutorial-network/angular-app
> ng serve --proxy-config proxy.conf.js --host 0.0.0.0
** NG Live Development Server is running on http://0.0.0.0:4200 **
10% building modules 4/4 modules 0 active[HPM] Proxy created: [ '/auth', '/api' ] -> http://localhost:3000
[HPM] Proxy created: / -> http://localhost:3000
Hash: de101dfec13ed5d0892c
Time: 13616ms
chunk {0} polyfills.bundle.js, polyfills.bundle.js.map (polyfills) 270 kB {5} [initial] [rendered]
chunk {1} styles.bundle.js, styles.bundle.js.map (styles) 184 kB {5} [initial] [rendered]
chunk {2} main.bundle.js, main.bundle.js.map (main) 22.1 kB {4} [initial] [rendered]
chunk {3} scripts.bundle.js, scripts.bundle.js.map (scripts) 439 kB {5} [initial] [rendered]
chunk {4} vendor.bundle.js, vendor.bundle.js.map (vendor) 3.42 MB [initial] [rendered]
chunk {5} inline.bundle.js, inline.bundle.js.map (inline) 0 bytes [entry] [rendered]
ERROR in Error encountered resolving symbol values statically. Expression form not supported (position 30:19 in the original .ts file), resolving symbol AppModule in /home/rahul/fabric-dev-servers/tutorial-network/angular-app/src/app/app.module.ts
webpack: Failed to compile.
Anyone here knows if composer code can be used in channels?
"npm test" command also gives an error like this:
> angular-app@0.0.1 test /home/rahul/fabric-dev-servers/tutorial-network/angular-app
> ng test --watch false
15 06 2018 12:56:28.631:ERROR [karma]: Error: Error encountered resolving symbol values statically. Expression form not supported (position 30:19 in the original .ts file), resolving symbol AppModule in /home/rahul/fabric-dev-servers/tutorial-network/angular-app/src/app/app.module.ts
at Compiler.compiler.plugin (/home/rahul/fabric-dev-servers/tutorial-network/angular-app/node_modules/@angular/cli/plugins/karma-webpack-throw-error.js:10:23)
at Compiler.applyPlugins (/home/rahul/fabric-dev-servers/tutorial-network/angular-app/node_modules/tapable/lib/Tapable.js:61:14)
at Watching._done (/home/rahul/fabric-dev-servers/tutorial-network/angular-app/node_modules/webpack/lib/Compiler.js:91:17)
at onCompiled (/home/rahul/fabric-dev-servers/tutorial-network/angular-app/node_modules/webpack/lib/Compiler.js:50:17)
at /home/rahul/fabric-dev-servers/tutorial-network/angular-app/node_modules/webpack/lib/Compiler.js:480:13
at next (/home/rahul/fabric-dev-servers/tutorial-network/angular-app/node_modules/tapable/lib/Tapable.js:202:11)
at Compiler.
[ ](https://chat.hyperledger.org/channel/composer?msg=6ZD2B78AkS9wAZiEF) @mahoney1 ok, I thought about it and tried to find more information. This is a very important point. Please, tell me, can I read this in more detail somewhere? Just earlier, I heard that the dc is transpiled / interpreted in go.
[ ](https://chat.hyperledger.org/channel/composer?msg=6ZD2B78AkS9wAZiEF) @mahoney1 ok, I thought about it and tried to find more information. This is a very important point. Please, tell me, can I read this in more detail somewhere? Just earlier, I heard that the js is transpiled / interpreted in go.
[ ](https://chat.hyperledger.org/channel/composer?msg=wWnhDjSQToc7kQiFD) @kundansingh 1 The composer documentation says:
`The following are prerequisites for installing the required development tools:
Operating Systems: Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12`
Maybe @sstone1 or @mahoney1 know a workaround, but my recommendation would be to use Ubuntu 16.04
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=aKaCnczJqbxFchRPH) @mahoney1 Thank you but i don't understand how i can know what is the last id used to increment ..
Btw, someone know the ACL rule for "all can create participant" ? I'm trying to do "Sign Up" on my web application but i can't post new participant as long as i'm not connected ("Authorization Required"), and i can't connected me as long as i not created account ...
@VadimInshakov read more [here](https://jira.hyperledger.org/browse/FAB-2331) obviously 'chaincode' is deployed to Fabric which provides the execution. Support for native nodeJS code execution has been present in Composer from an [earlier release](https://github.com/hyperledger/composer/releases?after=v0.17.3) of Composer
@Poneey you would create / manage the increment just the same as if you weren't using a ledger. ACL rules: see tutorial https://hyperledger.github.io/composer/latest/tutorials/acl-trading - to have ability to create participants, probably need first 2 rules similar to shown [here](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/permissions.acl)
@mahoney1 Can you guide me on how to integrate multiple orderers with kafka?
@mahoney1 Thanks, i will look for ids.
For ACL rules, about which rules do you talk ?
屏幕快照 2018-06-15 下午4.56.53.png
@kundansingh 1 the script presently supports 'trusty' 'xenial' 'yakkety' (and hence the 'bounce') - however Hyperledger Composer has not been tested on that version/flavour yet - the script / version check is done here https://github.com/hyperledger/composer/blob/master/packages/composer-website/jekylldocs/prereqs-ubuntu.sh#L27 - probably best to use a supported Ubuntu version for now.
@kundansingh 1 the script presently supports 'trusty' 'xenial' 'yakkety' versions (and hence the 'bounce') - however Hyperledger Composer has not been tested on that version/flavour yet - the script / version check is done here https://github.com/hyperledger/composer/blob/master/packages/composer-website/jekylldocs/prereqs-ubuntu.sh#L27 - probably best to use a supported Ubuntu version for now.
@kundansingh 1 1 the script presently supports 'trusty' 'xenial' 'yakkety' versions (and hence the 'bounce') - however Hyperledger Composer has not been tested on that version/flavour yet - the script / version check is done here https://github.com/hyperledger/composer/blob/master/packages/composer-website/jekylldocs/prereqs-ubuntu.sh#L27 - probably best to use a supported Ubuntu version for now.
@kundansingh 1 the script presently supports 'trusty' 'xenial' 'yakkety' versions (and hence the 'bounce') - however Hyperledger Composer has not been tested on that version/flavour yet - the script / version check is done here https://github.com/hyperledger/composer/blob/master/packages/composer-website/jekylldocs/prereqs-ubuntu.sh#L27 - probably best to use a supported Ubuntu version for now.
@kundansingh 1 the script presently supports 'trusty' 'xenial' 'yakkety' versions (and hence the 'bounce') - however Hyperledger Composer has not been tested on that version/flavour yet - the script / version check is done here https://github.com/hyperledger/composer/blob/master/packages/composer-website/jekylldocs/prereqs-ubuntu.sh#L27 - probably best to use a supported Ubuntu version for now.
@kundansingh 1 @kundansingh1 the script presently supports 'trusty' 'xenial' 'yakkety' versions (and hence the 'bounce') - however Hyperledger Composer has not been tested on that version/flavour yet - the script / version check is done here https://github.com/hyperledger/composer/blob/master/packages/composer-website/jekylldocs/prereqs-ubuntu.sh#L27 - probably best to use a supported Ubuntu version for now.
@RahulSavsani you may be seeing the same issue as [here](https://github.com/hyperledger/composer/issues/4120).
[ ](https://chat.hyperledger.org/channel/composer?msg=MhnBDXkB7eoSwBQDn) @HoneyShah I can't - but you can ask on #fabric which is more suitable for such Fabric related questions
@mahoney1 Okay. Thanks!!
[ ](https://chat.hyperledger.org/channel/composer?msg=vriB3WzisZzr7Agai) @mahoney1 thanks! So, does this means that if I use the value of a "double", will it be written to the ledger exactly as IEEE 794 standard double?
@VadimInshakov It should be double-precision 64-bit binary format IEEE 754 value I believe
@mahoney1 I already have rules for "All can create participant" but for this i have to have access token... And i don't have this before created participant ...
[ ](https://chat.hyperledger.org/channel/composer?msg=q9TpakmHtbCStSjix) @mahoney1 I missed your comment. My problem was, rest server was emitting 'no response from server' . I got error of REQUEST_TIMEOUT in logs of rest server. But I didn't get the reason then I installed fabric again and things get proper
@yulong12 probably have the same issue (and require same resolution - see answer) as described [here](https://stackoverflow.com/questions/50739551/running-composer-playground-in-docker-container-doesnt-connect-to-fabric-networ/50745107#50745107) for your particular business network card (profile contained therein)
[ ](https://chat.hyperledger.org/channel/composer?msg=rkJRBCtGHDoMYgZdo) @mahoney1 great. And what javascript engine used? V8 or any custom implementation?
@VadimInshakov specifically, Node: 8.9 or higher (note version 9 is not supported presently)
[ ](https://chat.hyperledger.org/channel/composer?msg=4fJSjNnF4KXFXnpvr) @mahoney1 nice, thanks a lot!
@Poneey - authentication with a passport strategy and ACL rules aren't co-dependent. When you deploy your business network, you provide the requisite ACLs to enable a participant to be able to create other participants in the business network. Whether that's programmatically or otherwise. The rules were in the 'here' link (sample rules) I sent earlier https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/permissions.acl
[ ](https://chat.hyperledger.org/channel/composer?msg=BM4vhXWgqD6K84BLQ) @mahoney1
Yes i just realise that token and ACL aren't co-dependent.
To sign up user i can registry him with my passport strategy and create acess_token. I have a new issue now :
I create token for my new participant after that, i want add participant to my blockchain but it need card on my wallet. This is now that ACL rules is important, how specify that i can create user without card ? Like for the wallet part (i can get, post, ... on wallet without card). I didn't find this on your link
more detail :
Post on : http://
@Poneey You need an 'admin' type card (someone that can issue the identities you require and that's already a participant of your business network). Once a user is registered, you can have the 'card' creation process automated, such that they can then import to their wallet and connect to the business network. See https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L134 (FileCardStore (for storing cards on disk) would replace MemoryCardStore in this example, and the `ImportCardForIdentity` is a function defined further up FYI and 'alice' is the 'admin' card that is creating participants / issuing identities and then creating cards / importing them. This tutorial https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc shows how you can use the REST APIs to create your identities. Also a useful example here in this blog posted on the community using JS APIs -> https://www.skcript.com/svr/how-to-build-nodejs-application-for-your-hyperledger-composer-networks/ and finally, Google OAUTH2 tutorial shows how to import them https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
@Poneey You need an 'admin' type card (someone that can issue the identities you require and that's already a participant of your business network). Once a user is registered, you can have the 'card' creation process automated, such that they can then import to their wallet and connect to the business network. See https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L134 (FileCardStore (for storing cards on disk) would replace MemoryCardStore in this example, and the `ImportCardForIdentity` is a function defined further up FYI and 'alice' is the 'admin' card that is creating participants / issuing identities and then creating cards / importing them. This tutorial https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc shows how you can use the REST APIs to create your identities from a dedicated issuer REST server. As for JS API programmatic route, useful example here in this blog posted on the community -> https://www.skcript.com/svr/how-to-build-nodejs-application-for-your-hyperledger-composer-networks/ and finally, Google OAUTH2 tutorial shows how to import cards https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest on the REST API using the REST endpoints
Hi
I have created one asset (say a1). And in that asset i have created object of another asset(a2). a1 has object of a2.
And for participant i have given access right to use a1.
As per my thought procedure I thought it will give access for a2 too. But its not. And in the rules If I add another rule to use a2 too, due to ordered sequence it wont work properly.
Can't we add more than one resources to single participant? Is there any work around for this? Or any condition I can add to work it out?
[ ](https://chat.hyperledger.org/channel/composer?msg=8bcXok68HNHLTLYwo) @mahoney1 Okay
@Pranoti - I suggest to post your exact question on Stack Overflow - with your model and your rules and what you want to achieve (and/or what you don't want to occur). Thanks.
Can we expect stable release of composer in near time?
@HoneyShah 0.19.9 was released yesterday - see https://github.com/hyperledger/composer/releases for more info
@mahoney1 I mean 1.0 release
[ ](https://chat.hyperledger.org/channel/composer?msg=4fJSjNnF4KXFXnpvr) @mahoney1 Sorry, but I have one more question. How does the node communicate with a chaincode container? gRPC? Http? And how then chaincode container communicate with other Fabric nodes? It's gRPC?
@HoneyShah 0.19.x is a production-ready release; have no timeframe when it would be branded v1.0
@mahoney1 thank you for your answer. So i can't create participant withou admin ?
@mahoney1 thanks
@davidkel Thanks for the reply. I have actually done that already, but I haven't had much luck out there either. Here is the link.
https://stackoverflow.com/questions/50760160/hyperledger-chaincode-fingerprint-mismatch
@matheus_correia Thanks, I will try to get around to posting an answer today about why this occurs
@VadimInshakov generally speaking the nodes communicate with each other via grpc - also this [link](https://medium.com/kokster/understanding-hyperledger-fabric-chaincode-e7767d50f0b4) may be of interest. Suggest to read the [Fabric docs](http://hyperledger-fabric.readthedocs.io/en/release-1.1/peers/peers.html) for more details on Fabric
@matheus_correia but in summary I would guess the cause in your case would be differing versions of composer-cli being used to install the bna onto the peer.
[ ](https://chat.hyperledger.org/channel/composer?msg=bm5bxyHSxepYhRDqx) @Poneey someone in the business network (usually by default the network admin, but can delegate issuer authority to other participants too) MUST have the ability to create participants. Someone must have the ability to issue identities and then map an identity to a participant (that they have access to via ACLs).
@davidkel Oh, thanks a lot! I will look into the composer-cli versions.
@davidkel Oh, thanks a lot! I will look into the composer-cli versions again.
Has joined the channel.
@mahoney1 i hoped that we was able to create identity without card, as we can define manage wallet without imported card.. My bad.
And it is possible to manage access to one property of an asset ?
[ ](https://chat.hyperledger.org/channel/composer?msg=WBsFpHv2gE7AwGvrK) @Poneey - ACL Rules cannot go down to the level of individual Properties.
There is an open issue for this with Composer https://github.com/hyperledger/composer/issues/983 - if you feel strongly about the issue and have a good use case please add a comment to the issue.
Anybody has any idea how i can run a composer-rest-server from a remote machine, not from the one where fabric is running? I tried exporting cards from the original machine, changing hostnames and importing to the remote machine but doesn't work.
[ ](https://chat.hyperledger.org/channel/composer?msg=8WoSxpBFFcku7BhWz) @vidor - this should work OK. It is just a matter of networking and connectivity. Perhaps there is a firewall on the machine hosting the Fabric? You could test connectivity to the Fabric with something like telnet or wget before starting the REST server.
@rthatcher Probably just networking. I have created the peer admin card with ./createPeerAdminCard.sh --host my.public.ip.address then tried exporting that card and importing it to another machine and that didn't work
[ ](https://chat.hyperledger.org/channel/composer?msg=v5h7mHgHBXfK77u6y) @vidor - it is not the PeerAdmin Card that you should use for the REST server - you need to use the Network Admin card - e.g. admin@my-car-network. Suggest you try this:
Machine 1:
`composer card export -c admin@my-car-network -f spareadmin.card`
Machine 2:
`composer card import -f spareadmin.card`
`vi` or `gedit` `~/.composer/cards/admin@tutorial-network/connection.json`
replace the localhost with "machine1"
*Note* that the format of the connection.json has no white space and is difficult to read - you can use a JSON formatting tool such as the one at this site to make it easier to read, and you can leave whitespace in the modified file. https://jsonformatter.curiousconcept.com/
[ ](https://chat.hyperledger.org/channel/composer?msg=v5h7mHgHBXfK77u6y) @vidor - it is not the PeerAdmin Card that you should use for the REST server - you need to use the Network Admin card - e.g. admin@my-car-network. Suggest you try this:
Machine 1:
`composer card export -c admin@my-car-network -f spareadmin.card`
Machine 2:
`composer card import -f spareadmin.card`
`vi` or `gedit` `~/.composer/cards/admin@my-car-network/connection.json`
replace the localhost with "machine1"
*Note* that the format of the connection.json has no white space and is difficult to read - you can use a JSON formatting tool such as the one at this site to make it easier to read, and you can leave whitespace in the modified file. https://jsonformatter.curiousconcept.com/
@rthatcher Thank you very much for your time! I was doing the exact same thing and just said that I exported the PeerAdmin card for simplicity. Now everything works, the only problem was that I haven't pinged the Network Admin card from the original machine so it didn't have the chance to get the certificates from the CA which are also exported by the export command. Once again, thank you
Has joined the channel.
Has joined the channel.
Has joined the channel.
Anyone can help me on the step fourteen from this tutorial? https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Basically step 15 and 16 are failing... I wonder if I need to do something on the Step 14...
I am getting the error : Calling enrollment endpoint failed with error
[ ](https://chat.hyperledger.org/channel/composer?msg=zHPpnkBNYc8YLqcjC) @LuisCoelho - can you show the whole command and the whole error please
@rthatcher I am following https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
and did all the steps to the thirteen with success
I don't know if I need to do anything on the 14th!!! but it's failing for me on the 15th
is there any longer error message ?
is there any longer error message ? - perhaps look in the log of the CA container too for an error.
is there any longer error message ? - perhaps look in the log of the CA container too for an error. (both CA containers)
Can someone help with this issue.
https://github.com/IBM/customer-loyalty-program/issues/1
@hamza-kakar Can someone help with this issue.
https://github.com/IBM/customer-loyalty-program/issues/1
Is there a way to create a connection [BusinessNetwork.connect()] from a connection profile string rather than using the file based wallet? We’re using the Composer js sdk. From the docs connect() takes a cardname and additionalConnectionOptions but I haven’t been able to find an example or additional docs on how to use these to connect by passing the connection info rather than depending on the file based wallet.
@ZaheerUdDeen the .bna file is available in repo, just change it as per your usecase
@hamza-kakar :thumbsup: lets try.
@LuisCoelho no command line in Step 14. Step 15 requires Org1's CA server to be up and running - you can check your docker container is running and as suggested earlier, check the CA log to see what's happening (ca1 )
@robertbrown see this Stack Overflow (answer, in particular the links provided). `connect()` takes a card name not connection object.
@robertbrown see this Stack Overflow [here](https://stackoverflow.com/questions/50867930/where-to-add-javascript-code-of-issuing-identity-on-hyperledger-composer) (ie the answer, in particular the links/blogs provided). `connect()` takes a card name not connection object.
@robertbrown see this Stack Overflow [here](https://stackoverflow.com/questions/50867930/where-to-add-javascript-code-of-issuing-identity-on-hyperledger-composer) (ie the answer, in particular the links/blogs provided). `.connect()` takes a card name not connection object.
can I use fabric with cloudant(which is couchDB base data base) in IBM cloud ?
Has joined the channel.
While upgrading my business network on fabric I'm getting error like below:
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: could not find chaincode with name 'tutorial-network')
Help me fix this error.
Has joined the channel.
Hi All, I am trying HL composer demo( car Auction ) and by mistake has submitted a member with incorrect email address. Now I am not able to close the bid
Error: attempt to get property balance on an InvalidRelationship is not allowed. InvalidRelationship created due to Object with ID 'aliced@email.com' in collection with ID 'Participant:org.acme.vehicle.auction.Member' does not exist
Any Ideas how to resolve this ?
Has joined the channel.
Has joined the channel.
Is it true that Composer is meant to be used only with Fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=sjJ7CLqMuYwji7B7M) @srcmake
_Is it true that Composer is meant to be used only with Fabric?_ *No*
_Is it true that at present Hyperledger Composer is supported only by Hyperledger Fabric?_ *Yes*
@silliman Oh...Thanks for the clarification. I was going to make a Composer tutorial, but I guess I'll have to learn about Fabric first.
Has joined the channel.
I have a IBM blockchain starter plan. The network consists of 3 Members (Comapny A, Company B and CompanyC). My Requirement is to create two seperate channels ( 1) "pasnbank" which is between Company A and Company B and 2) "vehiclelife" between Company B and CompanyC ) and install bsuiness netwroks "pasanbank-network.bna" and "vehicle-lifecycle-network.bna" in to respective channels. Is this scenario supported on the starter paln? if so please provide the instructions. Currently i use https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-network as the reference. It doesn't have instructions on how to specifiy specific channel when installing the business network
I'm using "composer-cli"
I'm using "composer-cli" and attempting to test below described scenario using the composer. I have a IBM blockchain starter plan. The network consists of 3 Members (Comapny A, Company B and CompanyC). My Requirement is to create two seperate channels ( 1) "pasnbank" which is between Company A and Company B and 2) "vehiclelife" between Company B and CompanyC ) and install bsuiness netwroks "pasanbank-network.bna" and "vehicle-lifecycle-network.bna" in to respective channels. Is this scenario supported on the starter paln? if so please provide the instructions. Currently i use https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-network as the reference. It doesn't have instructions on how to specifiy specific channel when installing the business network
I'm using "composer-cli"
I'm using "composer-cli" and attempting to test below described scenario using the composer. I have a IBM blockchain starter plan. The network consists of 3 Members (Comapny A, Company B and CompanyC). My Requirement is to create two seperate channels ( 1) "pasnbank" which is between Company A and Company B and 2) "vehiclelife" between Company B and CompanyC ) and install bsuiness netwroks "pasanbank-network.bna" and "vehicle-lifecycle-network.bna" in to respective channels. Is this scenario supported on the starter paln? if so please provide the instructions. Currently i use https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-network as the reference. It doesn't have instructions on how to specifiy specific channel when installing the business network
I'm using "composer-cli"
I'm using "composer-cli" and attempting to test below described scenario using the composer. I use IBM blockchain starter plan as the blockchain. The network consists of 3 Members (Comapny A, Company B and CompanyC). My Requirement is to create two seperate channels ( 1) "pasnbank" which is between Company A and Company B and 2) "vehiclelife" between Company B and CompanyC ) and install bsuiness netwroks "pasanbank-network.bna" and "vehicle-lifecycle-network.bna" in to respective channels. Is this scenario supported on the starter paln? if so please provide the instructions. Currently i use https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-network as the reference. It doesn't have instructions on how to specifiy specific channel when installing the business network.
I'm using "composer-cli" and attempting to test below described scenario using the composer. I use IBM blockchain starter plan. The network consists of 3 Members (Comapny A, Company B and CompanyC). My Requirement is to create two seperate channels ( 1) "pasnbank" which is between Company A and Company B and 2) "vehiclelife" between Company B and CompanyC ) and install bsuiness netwroks "pasanbank-network.bna" and "vehicle-lifecycle-network.bna" in to respective channels. Is this scenario supported on the starter paln? if so please provide the instructions. Currently i use https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-network as the reference. It doesn't have instructions on how to specifiy specific channel when installing the business network.
I'm using "composer-cli" and attempting to test below described scenario using the composer
Has joined the channel.
Has joined the channel.
Has joined the channel.
Screenshot from 2018-06-17 21-12-53.png
@mmick Look for your error message here for a description and ways to resolve: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues
Has joined the channel.
Has joined the channel.
**Transaction processor functions not work via REST**
All endpoints works well except transaction endpoints. But in Composer Playground transactions works! I don't know why (
I get error, when I try to invoke transaction via REST API:
```
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Could not find any functions to execute for transaction innodata.ru.Transfer#970fc08f8de954a80ee89c857b0a545e3379526d1d79572c700756956058f04f\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned
...
```
and I don't see logic.js in generated .bna
Came across this terrific demo built on Hyperledger Fabric http://avocado.thoughtchimps.com, although I am a bit confused why they have created only One Organisation, ideally they should be 4 or more. @experts please help.
Has joined the channel.
Selection_043.png
Is there any solution for the above error?
Can we implement input validations for POST REST api's in hyperledger composer?? I guess we'll have to implement transaction for that? is it right?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=krjN8C56pYhMFyAXP) @Pranoti - yes in the Transaction, but some validation is possible through the model - with Enumerated types, Ranges and Regex.
[ ](https://chat.hyperledger.org/channel/composer?msg=PnnXKg4n3qdre2Frg) @hanumankumar - it looks like your playground cannot connect to the CA container - is the Fabric started OK. You could try ` docker ps ` to see what containers are started,
@hanumankumar - have you checked via `docker ps` that your CA server instance is up and running? Looking at your business network card, looks like you might be trying to connect to a custom Fabric network with custom addresses? Did you change your connection profile (if so) .
@hanumankumar - have you checked via `docker ps` that your CA server instance is up and running? Looking at your business network card, looks like you might be trying to connect to a custom Fabric network (albeit trying to connect to localhost address) are you trying to use custom addresses?
@mahoney1 I don't see where my problem is connected with the links you sent me
@khusiarora you can email them, but perfectly understandable, its a demo app simulating participants from 4 orgs.
[ ](https://chat.hyperledger.org/channel/composer?msg=hPiLrAX3xvLMcve9Q) @VadimInshakov - there is a question in the Generator that determines if the Sample is included in the generated app (including the logic.js). The question is "Do you want to generate an empty template network?" - Answer Yes for empty network, Answer NO to include the samples.
[ ](https://chat.hyperledger.org/channel/composer?msg=EAjZ3ZuAbyYyN7Cqz) @rthatcher Okay thank you! :thumbsup:
[ ](https://chat.hyperledger.org/channel/composer?msg=cwRFYMcmewAqDribW) @LuisCoelho last chat -> chat.hyperledger.org/channel/composer?msg=wZxTAFEfyKRv6x7PR was to check your CA's logs to find out what's not right, in your environment
[ ](https://chat.hyperledger.org/channel/composer?msg=krjN8C56pYhMFyAXP) @Pranoti in addition to what rthatcher wrote -> may also be useful at the input level -> [blog](https://medium.com/@betz.mark/validate-json-models-with-swagger-and-bravado-5fad6b21a825)
[ ](https://chat.hyperledger.org/channel/composer?msg=krjN8C56pYhMFyAXP) @Pranoti in addition to what rthatcher wrote this may also be useful at the input level -> [blog](https://medium.com/@betz.mark/validate-json-models-with-swagger-and-bravado-5fad6b21a825)
@mahoney I am following the tutorial Deploying to a multi-organization Hyperledger Fabric. As you may know there are steps in that tutorial. I executed all steps with success but the 15 fails! So my question is, Does 15 fails because I didn't do anything on the 14? It's not clear to me if there's anything I need to do on the step 14. Do you know what command to run on step 14???
[ ](https://chat.hyperledger.org/channel/composer?msg=yF53bMyQvaWKmbyi5) @LuisCoelho so there is no action, in step 14 - its merely descriptive/informative to the reader (to understand 'where they're at' in a long tutorial) . So, to be clear - step 15 fails for a different reason :-(
[ ](https://chat.hyperledger.org/channel/composer?msg=9Gnjcw2SjqSD3LvNW) @mahoney1 This is great!! :slight_smile::thumbsup: Thanks!!
@mahoney1 how did you say that I can look into the logs??
Hello! I've got next error when trying to install business network `Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [RegulatorMSP]`
Hello! I've got next error when trying to install business network `Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [RegulatorMSP]`
Can anybody help me?
[ ](https://chat.hyperledger.org/channel/composer?msg=FJ9qmXRpQSNqgYapD) @rthatcher but I generate REST in DOcker container with this Dockerfile:
```
FROM hyperledger/composer-rest-server:latest
COPY package.json /home/composer/
RUN npm install --production loopback-connector-mongodb passport-jwt && \
npm cache clean --force && \
ln -s node_modules .node_modules
COPY custom-jwt.js node_modules/custom-jwt.js
COPY .composer /home/composer/.composer
```
And I use environment variables:
```
COMPOSER_CARD=user1@inno
COMPOSER_NAMESPACES=required
COMPOSER_AUTHENTICATION=true
COMPOSER_MULTIUSER=true
COMPOSER_PROVIDERS='{
"jwt": {
"provider": "jwt",
"module": "/home/composer/node_modules/custom-jwt.js",
"secretOrKey": "secret",
"authScheme": "saml",
"successRedirect": "/",
"failureRedirect":"/"
}
}'
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
```
What I need to change here?
[ ](https://chat.hyperledger.org/channel/composer?msg=FJ9qmXRpQSNqgYapD) @rthatcher but I generate REST in Docker container with this Dockerfile:
```
FROM hyperledger/composer-rest-server:latest
COPY package.json /home/composer/
RUN npm install --production loopback-connector-mongodb passport-jwt && \
npm cache clean --force && \
ln -s node_modules .node_modules
COPY custom-jwt.js node_modules/custom-jwt.js
COPY .composer /home/composer/.composer
```
And I use environment variables:
```
COMPOSER_CARD=user1@inno
COMPOSER_NAMESPACES=required
COMPOSER_AUTHENTICATION=true
COMPOSER_MULTIUSER=true
COMPOSER_PROVIDERS='{
"jwt": {
"provider": "jwt",
"module": "/home/composer/node_modules/custom-jwt.js",
"secretOrKey": "secret",
"authScheme": "saml",
"successRedirect": "/",
"failureRedirect":"/"
}
}'
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
```
What I need to change here?
@LuisCoelho use `docker logs -f
@VadimInshakov - if your Business Network is installed and Started OK on the Fabric, and there are no errors in the REST container log, then I wonder if there is an ACL rule preventing `user1@inno` from seeing the Transactions? Might be worth testing with the Admin ID first ?
@VadimInshakov - if your Business Network is installed and Started OK on the Fabric, and there are no errors in the REST container log, then I wonder if there is an ACL rule preventing `user1@inno` from seeing the Transactions? Might be worth testing with the Network Admin ID first ? (not PeerAdmin)
@argman fundamentally, you have a Fabric config error -> after spinning up your single/multi-org network (delete as appropriate) one/more of your peers try to join the channel. The join channel fails (eg `peer channel join`) it would appear (check your logs?) , and then the subsequent channel query (or Composer commands that try to use it) will of course fail since the channel is unknown on the peer. You should run the Marbles sample (ie at a Fabric level) to test that chaincode is deployed/invoked/queried correctly (then you can address (if any) subsequent composer-related issues if any). Presently, you have a Fabric issue.
@argman fundamentally, you have a Fabric config issue -> after spinning up your single/multi-org network (delete as appropriate) one/more of your peers try to join the channel. The join channel fails (eg `peer channel join`) it would appear (check your logs?) , and then the subsequent channel query (or Composer commands that try to use it) will of course fail since the channel is unknown on the peer. You should run the Marbles sample (ie at a Fabric level) to test that chaincode is deployed/invoked/queried correctly (then you can address (if any) subsequent composer-related issues if any). Presently, you have a Fabric issue.
@mahoney1 Did you try yourself the tutorial?
@LuisCoelho yes, have tried / completed it - what problems are you having
@LuisCoelho yes, have I tried & completed it - what problems are you having?
I did reboot the virtual machine where I am testing.. it's a Ubuntu VM
@mahoney1 and now I get card not found when executing step 15
[ ](https://chat.hyperledger.org/channel/composer?msg=GfJ5CTTQ3xc8XCkLh) @rthatcher I have only PeerAdmin@inno1 (Channel admin) card and user1@inno card (issued via ```composer identity request -c PeerAdmin@inno1 -u admin -s adminpw -d user1```). What I should to choose?
[ ](https://chat.hyperledger.org/channel/composer?msg=X8CERSDaAyqqcr8tj) @mahoney1 So, I've tried to install sample `.bna` and have the same error. Then I check all my peers. Every peer was connected to my channel, that I described in connection profiles.
[ ](https://chat.hyperledger.org/channel/composer?msg=Av5F9Y9P5bBux4jer) @VadimInshakov - OK, so user1 is the "Network Admin"
[ ](https://chat.hyperledger.org/channel/composer?msg=g4LzAx2oekXAmocP3) @rthatcher this card is used by the generator:
```
COMPOSER_CARD=user1@inno
COMPOSER_NAMESPACES=required
COMPOSER_AUTHENTICATION=true
COMPOSER_MULTIUSER=true
COMPOSER_PROVIDERS='{
"jwt": {
"provider": "jwt",
"module": "/home/composer/node_modules/custom-jwt.js",
"secretOrKey": "qM14cyqSNmiatRrfNFukwnrMe8F5tLU0",
"authScheme": "saml",
"successRedirect": "/",
"failureRedirect":"/"
}
}'
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
```
@argman - ok, sure, but this Fabric message is complaining that either the peer, defined channel - or indeed the MSP metadata (you defined) is unknown. The peer logs should have the exact cause if you can review them using `docker logs1` - I suspect what you've defined for those elements in your connection profiles isn't matching what you've defined in your Fabric setup. Is this a custom Fabric you've built ?
@argman - ok, sure, but this Fabric message is complaining that either the peer, defined channel - or indeed the MSP metadata (you defined) is unknown. The peer logs should have the exact cause if you can review them using `docker logs` - I suspect what you've defined for those elements in your connection profiles isn't matching what you've defined in your Fabric setup. Is this a custom Fabric you've built ?
[ ](https://chat.hyperledger.org/channel/composer?msg=yj42cFrM3RdgXyAgH) @mahoney1 Yes, it's my custom network. I'll check it.
@LuisCoelho Luis - if you rebooted your VM - have you have spun up ('started') a new Fabric network? How did you restart the containers? using what script? 'Missing card' means a previous step to build then import it didn't occur, in particular `PeerAdmin@byfn-network-org1` in Step 15.
@rthatcher Please keep in mind that in the playground transactions work fine
@VadimInshakov - with the error "Could not find any functions to execute for transaction" - there might be a mismatch in the name of the function in the Model File and the name in the logic.js. Or perhaps the function does not have the correct declaration format in the 'comments' e.g.
```/**
* @param {org.acme.sample} CompraDoVinho
* @transaction
*/
```
[ ](https://chat.hyperledger.org/channel/composer?msg=7HhQMmRpow2HWQfat) @VadimInshakov - and the playground is connected to the same Fabric using the same card?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZCPRdzShSzdRA7nKW) @rthatcher it's not my case, sorry
[ ](https://chat.hyperledger.org/channel/composer?msg=T6YicGqKEic4pPqzv) @rthatcher yes
[ ](https://chat.hyperledger.org/channel/composer?msg=tutzKKyzz6bhutfMQ) @VadimInshakov - this is strange - I think you should create a Stack Overflow question with your Model, Script and ACL, and details of the versions of Composer, Fabric etc.
Has joined the channel.
Hi! I'm trying to set up an passport-ready Composer REST server with the github example in the documentation (https://ibm-blockchain.github.io/develop/integrating/enabling-rest-authentication.html). But i don't know where i have to put the export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "REPLACE_WITH_CLIENT_ID",
"clientSecret": "REPLACE_WITH_CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
Have i to put all of this in a file? Where?
You will have to export this as a environment variable and then start `composer-rest-server` and It will be read by that.
[ ](https://chat.hyperledger.org/channel/composer?msg=6woHji6oZDyuHwChf) @sergiosanchezalvarez You will have to export this as a environment variable and then start `composer-rest-server` and It will be read by that.
I'm a liitle lost in npm and node world, i'm come from php world where enviroment vars where stored in .env files... Is like PHP world? Or in npm world is in another kind of file? :(
[ ](https://chat.hyperledger.org/channel/composer?msg=noEjThXrfHDf7D7C7) @sergiosanchezalvarez - this is not npm specific - these environment variables are Linux environment variables
[ ](https://chat.hyperledger.org/channel/composer?msg=noEjThXrfHDf7D7C7) @sergiosanchezalvarez - this is not npm specific - these environment variables are Linux environment variables
you will need to type the `export` command just before the composer-rest-server command - and keep it all on a single line with no line breaks (or use `\` at the end of each line for continuation.
Ah! ok, so if i'm in windows i have to store it in Windows enviroment variables... Ok, i'll try, thanks!
Ah - unfortunately Composer is not supported on Windows
:(
Ok, thanks!
I'm able to run composer-rest-server without any kind of authentification and it works fine
- it is possible to run on Windows with some care (and specific instructions) but it is not supported
Most people choose to run in a Linux VM under VirtualBox or VMWare, or some cloud hosted Linux VM
- this is a link of how you might work it in Windows - https://davidkel.github.io/docs/Windows/Intro.html
Thanks :)
It works using cygwin :)
@davidkel When you answered my question regarding the fingerprint mismtach I was having, you said using different npmrc files could also potentially cause that problem. As it turns out, one of the users representing an organization in our internal network was using a different npmrc file when installing the chaincode, and once he changed it to the file that is being shared by all orgs the error was gone.
My question is: is this considered an expected behavior or could it be seen as a bug? Because, given different organizations will most likely have different proxies, the npmrc files will be different.
@davidkel When you answered my question regarding the fingerprint mismtach I was having, you said using different npmrc files could also potentially cause that problem. As it turns out, one of the users representing an organization in our internal network was receiving a fingerprint mismatch error even after we had solved the problem for other orgs thanks to your suggestion. We discovered he was using a different npmrc file when installing the chaincode, and once he changed it to the file that is being shared by all orgs the error was gone.
My question is: is this considered an expected behavior or could it be seen as a bug? Because, given different organizations will most likely have different proxies, the npmrc files will be different.
Hello
I have a problem when I run composer start network on a minikube environment (kubernetes)
If someone has docs to deploy composer with kubernetes, I'm a taker.
Also, what do you think of launching the chaincode container using the docker in docker concept?
Thank you
The following link is the first of 3 'pages' used to deploy Fabric and Composer in a Kubernetes Cluster on the IBM cloud.
https://ibm-blockchain.github.io/setup/
As part of the instructions you download scripts with this command `git clone https://github.com/IBM-Blockchain/ibm-container-service`
You might find them helpful to develop your own.
@nabilm - The following link is the first of 3 'pages' used to deploy Fabric and Composer in a Kubernetes Cluster on the IBM cloud.
https://ibm-blockchain.github.io/setup/
As part of the instructions you download scripts with this command `git clone https://github.com/IBM-Blockchain/ibm-container-service`
You might find them helpful to develop your own.
[ ](https://chat.hyperledger.org/channel/composer?msg=F4eQoeHpa7GRq9D3a) @rthatcher thank you
@rthatcher thank you
@matheus_correia That's interesting to know, I did some experiments with different npmrc files and didn't get that problem. I don't know how the fabric fingerprinting works on an installed package. I would be very interested to know the scenario. If indeed it doesn't work then this is a problem with hyperledger fabric that would need to be handled, it's not something composer could fix
@matheus_correia That's interesting to know, I did some experiments with different npmrc files and didn't get that problem. I don't know how the fabric fingerprinting works on an installed package. I would be very interested to know the scenario you had that caused it, for example when you instantiated were all orgs present or did an org join later ? did you perform a network update at somepoint, these sorts of things. If indeed it doesn't work then this is a problem with hyperledger fabric that would need to be handled, it's not something composer could fix
Hello ! For my project, i need to interrogate my network every week (for exemple), someone have an idea about how i can do this ? Or better, an example ?
@davidkel Ok, what happened was:
1- We updated the BNA so that the npm dependencies would have fixed versions (your suggested fix to the fingerprint mismatch problem).
2- I, with my org, installed the new version (1.0.5) and issued the upgrade command.
3- The other two orgs that were having fingerprint mistmatches installed that same BNA, and the error was gone.
4- A fourth org performed the installation later, and still got the error.
5- We figured out that person was using a different npmrc file, so we had him use our shared file.
6- He removed the chaincode from the var/hyperledger folder, executed the install command once more (with the right file), and the error was gone.
@matheus_correia Ok, thanks that's useful to know. I will do some more experiments to see what I can find out and raise the issue with fabric based on what I find.
Ok, thanks a lot for the support! And let me know if you need anything else.
@matheus_correia will do
To all the experts here :) ... after my 3rd attempt I managed to have the Deploying to a multi-organization Hyperledger Fabric working.
Now, how do I manage to build something upon the created network and organizations? I started the composer-playground to see the running network and all the cards created in the tutorial...
What if I want to create WebApplication on top of all of that?
abc123
Any help? Ideas??
[ ](https://chat.hyperledger.org/channel/composer?msg=ZzzfX9ckrGMhjmrho) @LuisCoelho - good news that you have the Multi-Org tutorial completed. To write a Web app you have some options introduced in this doc: https://hyperledger.github.io/composer/latest/applications/applications-index
You can also look at the Sample applications here: https://github.com/hyperledger/composer-sample-applications/tree/master/packages (the Letters of Credit is the newest sample)
and there is a *well organised sample here* too: https://github.com/ampretia/commercial-paper-starter-kit
@LuisCoelho - and further to my previous comment - there is a Yeoman (yo) Generator with Composer, so you can generate a skeleton app to get a fast start. So you would install yo and the generator-hyperledger-composer . Finally if you have not already seen it, the place to start is the Developers tutorial: https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
@rthatcher hi, could you please consider the error below observed when deploying a business network in Fabric 1.1 over a docker swarm.
```
2018-06-18T08:55:38.813472618Z 2018-06-18 08:55:38.813 UTC [sccapi] deploySysCC -> INFO 038[0m system chaincode qscc/my-channel(github.com/hyperledger/fabric/core/chaincode/qscc) deployed
2018-06-18T08:55:44.835930298Z 2018-06-18 08:55:44.835 UTC [kvledger] CommitWithPvtData -> INFO 039[0m Channel [my-channel]: Committed block [1] with 1 transaction(s)
2018-06-18T08:55:44.864207417Z 2018-06-18 08:55:44.864 UTC [kvledger] CommitWithPvtData -> INFO 03a[0m Channel [my-channel]: Committed block [2] with 1 transaction(s)
2018-06-18T08:55:44.891766821Z 2018-06-18 08:55:44.891 UTC [kvledger] CommitWithPvtData -> INFO 03b[0m Channel [my-channel]: Committed block [3] with 1 transaction(s)
2018-06-18T08:55:44.918221216Z 2018-06-18 08:55:44.918 UTC [kvledger] CommitWithPvtData -> INFO 03c[0m Channel [my-channel]: Committed block [4] with 1 transaction(s)
2018-06-18T09:43:55.743615944Z [31m2018-06-18 09:43:55.743 UTC [lscc] executeDeployOrUpgrade -> ERRO 03d[0m cannot get package for chaincode (my-core-network:0.1.0)-err:open /var/hyperledger/production/chaincodes/my-core-network.0.1.0: no such file or directory
2018-06-18T09:43:55.743919011Z [31m2018-06-18 09:43:55.743 UTC [endorser] ProcessProposal -> ERRO 03e[0m [my-channel][dc0f39ca] simulateProposal() resulted in chaincode name:"lscc" response status 500 for txid: dc0f39ca2585bead73f73615a6be34b121c88e4e3bbfd3a36faf12f475983c7c
2018-06-18T09:45:08.354168759Z 2018-06-18 09:45:08.353 UTC [couchdb] CreateDatabaseIfNotExist -> INFO 03f[0m Created state database my-channel_lscc
2018-06-18T09:45:08.358579225Z 2018-06-18 09:45:08.358 UTC [lscc] executeInstall -> INFO 040[0m Installed Chaincode [my-core-network] Version [0.1.0] to peer
2018-06-18T09:50:26.959754435Z [31m2018-06-18 09:50:26.958 UTC [chaincode] Launch -> ERRO 041[0m launchAndWaitForRegister failed: timeout expired while starting chaincode my-core-network:0.1.0(networkid:dev,peerid:peer0_frny_com,tx:2ebaf7ad06e386c8787c32d2aa4bda3e3c0dfa74cd51c9232c32c0742c14fac7)
2018-06-18T09:50:26.959920624Z github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
2018-06-18T09:50:26.959932823Z /opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
....
2018-06-18T09:50:26.960037087Z /opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
2018-06-18T09:50:26.960040097Z github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
2018-06-18T09:50:26.960043084Z /opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
2018-06-18T09:50:26.960046099Z github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
2018-06-18T09:50:26.960049110Z /opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:781
2018-06-18T09:50:26.960053349Z github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
2018-06-18T09:50:26.960056413Z /opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
2018-06-18T09:50:26.960059477Z github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
2018-06-18T09:50:26.960062485Z /opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
2018-06-18T09:50:26.960065519Z runtime.goexit
2018-06-18T09:50:26.960068488Z /opt/go/src/runtime/asm_amd64.s:2337```
@rthatcher hi, could you please consider the error below observed when deploying a business network in Fabric 1.1 over a docker swarm. Could it be npm_config options file issue? I use it the same npm_config settings as when deploying in a host based docker configuration(non swarm)
```
2018-06-18T08:55:38.813472618Z 2018-06-18 08:55:38.813 UTC [sccapi] deploySysCC -> INFO 038[0m system chaincode qscc/my-channel(github.com/hyperledger/fabric/core/chaincode/qscc) deployed
2018-06-18T08:55:44.835930298Z 2018-06-18 08:55:44.835 UTC [kvledger] CommitWithPvtData -> INFO 039[0m Channel [my-channel]: Committed block [1] with 1 transaction(s)
2018-06-18T08:55:44.864207417Z 2018-06-18 08:55:44.864 UTC [kvledger] CommitWithPvtData -> INFO 03a[0m Channel [my-channel]: Committed block [2] with 1 transaction(s)
2018-06-18T08:55:44.891766821Z 2018-06-18 08:55:44.891 UTC [kvledger] CommitWithPvtData -> INFO 03b[0m Channel [my-channel]: Committed block [3] with 1 transaction(s)
2018-06-18T08:55:44.918221216Z 2018-06-18 08:55:44.918 UTC [kvledger] CommitWithPvtData -> INFO 03c[0m Channel [my-channel]: Committed block [4] with 1 transaction(s)
2018-06-18T09:43:55.743615944Z [31m2018-06-18 09:43:55.743 UTC [lscc] executeDeployOrUpgrade -> ERRO 03d[0m cannot get package for chaincode (my-core-network:0.1.0)-err:open /var/hyperledger/production/chaincodes/my-core-network.0.1.0: no such file or directory
2018-06-18T09:43:55.743919011Z [31m2018-06-18 09:43:55.743 UTC [endorser] ProcessProposal -> ERRO 03e[0m [my-channel][dc0f39ca] simulateProposal() resulted in chaincode name:"lscc" response status 500 for txid: dc0f39ca2585bead73f73615a6be34b121c88e4e3bbfd3a36faf12f475983c7c
2018-06-18T09:45:08.354168759Z 2018-06-18 09:45:08.353 UTC [couchdb] CreateDatabaseIfNotExist -> INFO 03f[0m Created state database my-channel_lscc
2018-06-18T09:45:08.358579225Z 2018-06-18 09:45:08.358 UTC [lscc] executeInstall -> INFO 040[0m Installed Chaincode [my-core-network] Version [0.1.0] to peer
2018-06-18T09:50:26.959754435Z [31m2018-06-18 09:50:26.958 UTC [chaincode] Launch -> ERRO 041[0m launchAndWaitForRegister failed: timeout expired while starting chaincode my-core-network:0.1.0(networkid:dev,peerid:peer0_frny_com,tx:2ebaf7ad06e386c8787c32d2aa4bda3e3c0dfa74cd51c9232c32c0742c14fac7)
2018-06-18T09:50:26.959920624Z github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
2018-06-18T09:50:26.959932823Z /opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
....
2018-06-18T09:50:26.960037087Z /opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
2018-06-18T09:50:26.960040097Z github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
2018-06-18T09:50:26.960043084Z /opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
2018-06-18T09:50:26.960046099Z github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
2018-06-18T09:50:26.960049110Z /opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:781
2018-06-18T09:50:26.960053349Z github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
2018-06-18T09:50:26.960056413Z /opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
2018-06-18T09:50:26.960059477Z github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
2018-06-18T09:50:26.960062485Z /opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
2018-06-18T09:50:26.960065519Z runtime.goexit
2018-06-18T09:50:26.960068488Z /opt/go/src/runtime/asm_amd64.s:2337```
@uber.twin - so I'm guessing that you are trying a `composer network start` ?
This is the key message "*/var/hyperledger/production/chaincodes/my-core-network.0.1.0: no such file or directory*" - which suggests that the `composer network install` did not complete on all the peers of all the orgs. You could check that folder on the peer(s) and see what is there.
@uber.twin - so I'm guessing that you are trying a `composer network start` ?
This is the key message */var/hyperledger/production/chaincodes/my-core-network.0.1.0: no such file or directory* - which suggests that the `composer network install` did not complete on all the peers of all the orgs. You could check that folder (/var/hyperledger/production/chaincodes/) on the peer(s) and see what is there.
@rthatcher I noticed that also and I did check it, only in the current peer though i.e. peer where I took the log from, and the folder is there
@rthatcher just checked all my 4 peers and all of them have a valid /var/hyperledger/production/chaincodes/my-core-network.0.1.0 directory
@rthatcher and which should be the card network to use? I created so many for the tutorial... now when creating the angular app using Yeoman it asks for the Business Network Card.. which one should I use?
@LuisCoelho try `alice@trade-network`
@mahoney1 and what about bob@trade-network? will work too?
should do...
Has joined the channel.
@rthatcher here is my dev peer log ```-18T15:42:23.377938062Z
2018-06-18T15:42:23.378001443Z > my-core-network@0.1.0 start /usr/local/src
2018-06-18T15:42:23.378010114Z > start-network "--peer.address" "peer0_my_com:7052"
2018-06-18T15:42:23.378016033Z
2018-06-18T15:42:23.476130157Z running start.js
2018-06-18T15:42:25.426791361Z [31m[2018-06-18T15:42:25.425] [ERROR] lib/handler.js - [39mChat stream with peer - on error: "Error: 14 UNAVAILABLE: Connect Failed\n at Object.exports.createStatusError (/usr/local/src/node_modules/grpc/src/common.js:87:15)\n at ClientDuplexStream._emitStatusIfDone (/usr/local/src/node_modules/grpc/src/client.js:235:26)\n at ClientDuplexStream._readsDone (/usr/local/src/node_modules/grpc/src/client.js:201:8)\n at /usr/local/src/node_modules/grpc/src/client_interceptors.js:679:15"```
@rthatcher Here is my dev peer log. Was Composer v0.19.X tested on a swarm yet? ```-18T15:42:23.377938062Z
2018-06-18T15:42:23.378001443Z > my-core-network@0.1.0 start /usr/local/src
2018-06-18T15:42:23.378010114Z > start-network "--peer.address" "peer0_my_com:7052"
2018-06-18T15:42:23.378016033Z
2018-06-18T15:42:23.476130157Z running start.js
2018-06-18T15:42:25.426791361Z [31m[2018-06-18T15:42:25.425] [ERROR] lib/handler.js - [39mChat stream with peer - on error: "Error: 14 UNAVAILABLE: Connect Failed\n at Object.exports.createStatusError (/usr/local/src/node_modules/grpc/src/common.js:87:15)\n at ClientDuplexStream._emitStatusIfDone (/usr/local/src/node_modules/grpc/src/client.js:235:26)\n at ClientDuplexStream._readsDone (/usr/local/src/node_modules/grpc/src/client.js:201:8)\n at /usr/local/src/node_modules/grpc/src/client_interceptors.js:679:15"```
"Error: 14 UNAVAILABLE: Connect Failed" is a networking error - so I guess you have a container to container networking issue?
Has joined the channel.
How can I remove a bna from composer network?
[ ](https://chat.hyperledger.org/channel/composer?msg=JBQw3Tgv2EBNLCwo4) @mrudav.shukla see answer here -> https://stackoverflow.com/questions/49844849/undeploying-business-network concerning deployed smart contract / chaincode and the docker container perspective.
Thanks @mahoney1
Has joined the channel.
Hello.. I am learning hyperledger , trying to create a blockchain network. While creating transaction i am getting the following error : cannot read property 'push' of undefined Can someone help
Has joined the channel.
@JoyMaitra The most likely cause of this is that within your transaction processor function you are trying to push an element onto an array, but the array is undefined. A common cause is that in your model you have defined an array as an optional property of an asset or participant, did not specify a default value for the property, and then you defined an instance of this asset or participant without specifying a value for this optional property, so it is undefined. Then, while running a transaction, your transaction processor logic is trying to push a value onto this nonexistent array without first checking to see if it is defined.
Has joined the channel.
Has joined the channel.
Has joined the channel.
I am trying to take the Lab2 of Hyperledger Fabric training. The Hyperledger Composer pre-requisites can be installed on Ubuntu or MacOS. I am working on Windows machine. What do I do next to move further?
I am trying to take the Lab2 of Hyperledger Fabric training. The Hyperledger Composer pre-requisites can be installed on Ubuntu or MacOS. I am working on Windows machine. What do I do next to move further? I am stuck. Pls help.
Hi everyone,I have a problem ,when I run ```
docker run -e COMPOSER_CARD=restadmin@trade-network -e COMPOSER_NAMESPACES=never -v ~/.composer:/home/composer/.composer --name rest -p 3000:3000 hyperledger/composer-rest-server
``` there has an problem with ```
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Composer runtime (0.19.8) is not compatible with client (0.19.5)
Error: Error trying to ping. Error: Composer runtime (0.19.8) is not compatible with client (0.19.5)
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:790:34)
at
```
Exception: Error: Error trying to ping. Error: Composer runtime (0.19.8) is not compatible with client (0.19.5)
Error: Error trying to ping. Error: Composer runtime (0.19.8) is not compatible with client (0.19.5)
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:790:34)
at
my connection.json is
```
{
"name": "fabric-network",
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},
"orderers": {
"orderer.example.com": {
"url": "grpc://orderer.example.com:7050",
"grpcOptions": {}
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://peer0.org1.example.com:7051",
"eventUrl": "grpc://peer0.org1.example.com:7053",
"grpcOptions": {},
"endorsingPeer": true,
"chaincodeQuery": true,
"ledgerQuery": true,
"eventSource": true
}
},
"channels": {
"composerchannel": {
"orderers": [
"orderer.example.com"
],
"peers": {
"peer0.org1.example.com": {}
}
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://ca.org1.example.com:7054",
"caName": "ca.org1.example.com"
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
}
},
"x-type": "hlfv1",
"x-commitTimeout": 100
}
```
so who can help me?
Hi
Can we do something like this in logic.js file?
I want to retrieve the last added record just like we do in mysql queries..
Hi
Can we do something like this in logic.js file?
`let p = await getAssetRegistry('org.zcon.healthcare.Asset').orderby(id) AND limit=1`
I want to retrieve the last added record just like we do in mysql queries..
In queries.qry we can do this. So is there any way we can call that query in logic.js ? Or any other way you know?
Hi
Can we do something like this in logic.js file?
`let p = await getAssetRegistry('org.zcon.healthcare.Asset').orderby(id) AND limit=1`
I want to retrieve the last inserted record just like we do in mysql queries..
In queries.qry we can do this. So is there any way we can call that query in logic.js ? Or any other way you know?
Hi
Can we do something like this in logic.js file?
`let p = await getAssetRegistry('org.zcon.healthcare.Asset').orderby(id DESC) AND limit=1`
I want to retrieve the last inserted record just like we do in mysql queries..
In queries.qry we can do this. So is there any way we can call that query in logic.js ? Or any other way you know?
Hello ! For my project, i need to interrogate my network every week (for exemple), someone have an idea about how i can do this ? Or better, an example ?
I thought to use crontab but i don't know how connect it to my blockchain and i don't know if it is the best way to do that
[ ](https://chat.hyperledger.org/channel/composer?msg=S6wzkGZNnBh9AzEBC) @yulong12 Try this-
# get rid of existing Playground with `npm uninstall -g composer-rest-server`
# install the new one `npm install -g composer-rest-server@0.19.8`
# restart Fabric
# start rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=S6wzkGZNnBh9AzEBC) @yulong12 Try this-
# get rid of existing Playground with `npm uninstall -g composer-playground`
# install the new one `npm install -g composer-playground@0.19.8`
# restart Fabric
# start rest-server
@yulong12 The client application must be at a version that is equal or greater to the runtime being used inside the chaincode container for the business network. The client in your case is the composer rest server which is at version 0.19.5 and your runtime is at 0.19.8. To solve this all you need to do is uninstall you current version of the rest server and re-install it (you will by default get the latest version which is 0.19.9)
```
npm uninstall -g composer-rest-server
npm install -g composer-rest-server
```
ok. thank you. I will try it
@Pranoti you can invoke queries from business networks, an example can be seen here
https://github.com/hyperledger/composer-sample-networks/blob/fa1474a88f5c1bcb0b5b7b5dc3d6f66113071d6e/packages/vehicle-lifecycle-network/lib/vda.js#L78
note that `LIMIT` doesn't work due to hyperledger fabric 1.1 not supporting LIMIT or SKIP.
I run ```
npm uninstall -g composer-rest-server
npm install -g composer-rest-server
``` but it's version is also 0.19.5
@davidkel
@davidkel hi, is there any reference of Composer v0.19.x being tested in docker swarm mode?
@davidkel hi, is there any reference of Composer v0.19.x being tested in docker swarm mode? I gave it a try and the dev peer seems like it is not able to talk to the other containers
@yulong12 So when you did npm install -g composer-rest-server it explicitly stated it installed 0.19.5 ? I find that odd. More likely is that you have another version of the composer rest server installed taking precedence on your PATH
@uber.twin We've not done any work on swarm. Maybe other people in the community have
[ ](https://chat.hyperledger.org/channel/composer?msg=GjvwLhcfFSX4ri89H) @Poneey - this is really a Linux question, not a Composer question so I would suggest asking in a Linux Forum. But as well as crontab you might like to look at some node scheduling tool such as node-schedule or node-cron
Hello, I wanted to know instead of using npm package of cli composer-cli I want to execute composer commands using cli docker image. How should I run the container so I can exec into it and run the composer commands?
@rthatcher Ok thanks, i wanted know if there are a specific tools to do this on blockchain. I would look on linux
[ ](https://chat.hyperledger.org/channel/composer?msg=CdvSXZXAmsiA7LccX) @vbehere - many people on Windows create an Ubuntu VM with VMWare or virtualbox - this quite a good self contained test environment. You could try this GitHub repo for authmatically creating test environments: https://github.com/jt-nti/ibm-blockchain-platform-vagrant
However if you wish to use Windows, it can be done but it is not supported. There is more information here: https://davidkel.github.io/docs/Windows/Intro.html
Has joined the channel.
Has joined the channel.
Screen Shot 2018-06-19 at 2.26.37 pm.png
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Gp9mQYqL38ZLhR9vh) @davidkel Thanks for the reply.. one more question.. If LIMIT is not supported then, is there any relative alternative for this? Because only using ORDER BY it will retrieve all the records unnecessarily from the asset registry.. And I wanted only lastly inserted record..
[ ](https://chat.hyperledger.org/channel/composer?msg=CZSfW6j7aJfeKeLgz)
Can anyone help me about this issue?
I am getting error from composer rest server to my angular app Error occurred while trying to proxy request /sockjs-node/060/13jexxrr/websocket from localhost:4200 to http://localhost:3000 (ECONNRESET) (https://nodejs.org/api/errors.html#errors_common_system_errors)
[HPM] Upgrading to WebSocket
When I update a Participant or an asset in a transaction, I don't see the update record in `org.hyperledger.composer.system.UpdateParticipant` or `org.hyperledger.composer.system.UpdateAsset`.
doese anyone has an Idea why?
Hi to all. Mb anyone worked with user registration using email and password, to login user by this creds in composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=A43PqHKhoPHTEB4d5) @waleed but you are able to see the transaction name you have created right?
[ ](https://chat.hyperledger.org/channel/composer?msg=zSD296H7QERJSx9PA) @ajmeraharsh I can see the transaction in the HistorianRecord
@waleed exactly, `system.UpdateParticipant` gets overwritten by your custom Transaction name i guess
[ ](https://chat.hyperledger.org/channel/composer?msg=NMYEJcvYwqf6Hm7ek) @ajmeraharsh I can see the transaction, but I can't see that the participant was updated.
@waleed that's sad, and I am assuming transaction completes successfully
[ ](https://chat.hyperledger.org/channel/composer?msg=vRmXQHnZ9rPLAzffh) @ajmeraharsh Yes, it works. I just wanna get the history of a participant.
Hey, I have deployed the rest server here: http://13.126.30.199:3000/explorer/#!/ What is the end point of the rest api where I can send my request to? Also, I have planned to write firebase functions to access these api and develop my logic. Any suggestions for or against doing so.
Hey, I have deployed the rest server here: http://13.126.30.199:3000/explorer/#!/ What is the end point of the rest api where I can send my request to? Also, I have planned to write firebase functions to access these api and develop my logic. Any suggestions for or against doing so?
The online composer playground isn't responding and stays hanging on the Loading Hyperledger Composer screen. My internet is otherwise working. Is anyone else seeing this issue?
@waleed so the changes are that which are defined under `resources [ ]` when you view the record of `UpdateParticipant`, including the participant that was updated. It doesn't show 'side-by-side' field deltas, rather what the resource(s) have become. Now the 'history' of a participant (all the changes to it, since it was created) is a different question: there is currently have an outstanding issue for 'history of an asset' (same issue applies for a participant's history basically) https://github.com/hyperledger/composer/issues/2458 - you can't easily do that, at the moment - also some notes (scroll down) [here](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks)
@waleed so the changes are those which are defined under `resources [ ]` when you view the record of `UpdateParticipant`, including the participant that was updated. It doesn't show 'side-by-side' field deltas, rather what the resource(s) have become. Now the 'history' of a participant (all the changes to it, since it was created) is a different question: there is currently have an outstanding issue for 'history of an asset' (same issue applies for a participant's history basically) https://github.com/hyperledger/composer/issues/2458 - you can't easily do that, at the moment - also some notes (scroll down) [here](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks)
@apaparazzi0329 try incognito mode
i've no issues
Hello, I wanted to know instead of using npm package of cli composer-cli I want to execute composer commands using cli docker image. How should I run the container so I can exec into it and run the composer commands? @mahoney1
@ApoorvChandurkar overwrite the entrypoint to bash f.e.
@ApoorvChandurkar overwrite the entrypoint to sh f.e.
```
cli:
image: hyperledger/composer-cli:latest
entrypoint: /bin/sh
networks:
- net
deploy:
replicas: 1
restart_policy:
condition: on-failure
placement:
constraints: [node.role == manager]
tty: true
volumes:
- type: volume
source: composer
target: /home/composer/.composer
volume:
nocopy: true
```
snippet from my stack
@goelmayank if you mean command like or from JS API (not using curl :-) ) - something like `curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d _''{ your JSON string}'_ 'http://13.126.30.199:3000/api/SampleAsset' (create asset) or running a query eg `http://13.126.30.199:3000/api/queries/availableAppointments` blah blah - firebase - maybe [this link](https://itnext.io/working-with-firebase-functions-http-request-22fd1ab644d3) helps - standard http requests is the answer - samples here too -> https://hyperledger.github.io/composer/latest/integrating/call-out (scroll down for code snippets). HTH
@goelmayank if you mean command line (CLI) or from JS API (not using curl :-) ) - something like `curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d _''{ your JSON string}'_ 'http://13.126.30.199:3000/api/SampleAsset' (create asset) or running a query eg `http://13.126.30.199:3000/api/queries/availableAppointments` blah blah - firebase - maybe [this link](https://itnext.io/working-with-firebase-functions-http-request-22fd1ab644d3) helps - standard http requests is the answer - samples here too -> https://hyperledger.github.io/composer/latest/integrating/call-out (scroll down for code snippets). HTH
@goelmayank if you mean command line (CLI) or from JS API (not using curl :-) ) - something like `curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d _''{ your JSON string}'_ 'http://13.126.30.199:3000/api/SampleAsset' (create asset) or running a query eg `http://13.126.30.199:3000/api/queries/availableAppointments` or `await request.get($URL/api/queries/availableAppointments)` blah blah - firebase - maybe [this link](https://itnext.io/working-with-firebase-functions-http-request-22fd1ab644d3) helps - standard http requests is the answer - samples here too -> https://hyperledger.github.io/composer/latest/integrating/call-out (scroll down for code snippets). HTH
reminder that the Community call is at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-21st-June-2018 best regards Paul
Going incognito worked for some reason thank you @dklesev
Also, how to set optional parameters in fabric rest api to false? I am sending the required parameters but it is returning statusCode:500
[ ](https://chat.hyperledger.org/channel/composer?msg=RSkEZywR3y3amSutD) @mahoney1
@dklesev Thank you! But after logging into the container and entering any command I am getting permission error `Error: EACCES: permission denied, mkdir '/home/composer/.composer/logs'` any idea why such error is happening?
It turns out the online playground wasn't working because I needed to clear my cache. Incognito mode worked because it doesn't save any cache data
@goelmayank if you mean 'Composer REST APIs' (Fabric REST APIs are different) - if the field is optional - then you don't need to supply it in your JSON post 🙂 eg ```curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ \
"$class": "org.acme.mynetwork.Trade", \
"commodity": "resource:org.acme.mynetwork.Commodity#ABC", \
"newOwner": "resource:org.acme.mynetwork.Trader#TRADER2" \
}' 'http://localhost:3000/api/org.acme.mynetwork.Trade'
```
[ ](https://chat.hyperledger.org/channel/composer?msg=XEEyoNFKvtomrh2uq) @silliman Thanks Silliman for your reply..... you were right about the scenario..... Now I have created a Participant with a value for the array. Even after that I am getting the same error. Can u please suggest some solution for the scenario !
@JoyMaitra I believe exact replica of what has been suggested can be found in the Stack Overflow answer [here](https://stackoverflow.com/questions/50820526/creating-new-participant-and-adding-array-of-assets-by-reference-to-it/50823033#50823033) answered very recently.
@JoyMaitra I believe exact replica of what has been suggested can be found in the Stack Overflow answer [here](https://stackoverflow.com/questions/50820526/creating-new-participant-and-adding-array-of-assets-by-reference-to-it/50823033#50823033) , answered very recently.
Has joined the channel.
Hi Experts, I hv started working with hyperledger composer. I am trying to local setup of the dev tools. However, i've encountered the following error;
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py", line 1265, in XcodeVersion
version = re.match(r'(\d\.\d\.?\d*)', version).groups()[0]
AttributeError: 'NoneType' object has no attribute 'groups'
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack at ChildProcess.onCpExit (/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:336:16)
gyp ERR! stack at emitTwo (events.js:126:13)
gyp ERR! stack at ChildProcess.emit (events.js:214:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Darwin 17.6.0
gyp ERR! command "/Users/namigupt/.nvm/versions/node/v8.11.3/bin/node" "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/composer-cli/node_modules/node-report
gyp ERR! node -v v8.11.3
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-report@2.2.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-report@2.2.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/namigupt/.npm/_logs/2018-06-19T14_56_08_070Z-debug.log
namigupt-macOS-1:~ namigupt$
namigupt-macOS-1:~ namigupt$ npm install -g composer-cli
/Users/namigupt/.nvm/versions/node/v8.11.3/bin/composer -> /Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/composer-cli/cli.js
> dtrace-provider@0.8.7 install /Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/composer-cli/node_modules/dtrace-provider
> node-gyp rebuild || node suppress-error.js
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance
Traceback (most recent call last):
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py", line 16, in
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py", line 538, in main
return gyp_main(args)
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py", line 523, in gyp_main
generator.GenerateOutput(flat_list, targets, data, params)
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py", line 2170, in GenerateOutput
part_of_all=qualified_target in needed_targets)
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py", line 766, in Write
extra_mac_bundle_resources, part_of_all)
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py", line 872, in WriteActions
env = self.GetSortedXcodeEnv()
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py", line 1851, in GetSortedXcodeEnv
additional_settings)
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py", line 1584, in GetSortedXcodeEnv
additional_settings)
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py", line 1495, in _GetXcodeEnv
if XcodeVersion() >= '0500' and not env.get('SDKROOT'):
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py", line 1265, in XcodeVersion
version = re.match(r'(\d\.\d\.?\d*)', version).groups()[0]
AttributeError: 'NoneType' object has no attribute 'groups'
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack at ChildProcess.onCpExit (/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:336:16)
gyp ERR! stack at emitTwo (events.js:126:13)
gyp ERR! stack at ChildProcess.emit (events.js:214:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Darwin 17.6.0
gyp ERR! command "/Users/namigupt/.nvm/versions/node/v8.11.3/bin/node" "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/composer-cli/node_modules/dtrace-provider
gyp ERR! node -v v8.11.3
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
> fsevents@1.2.4 install /Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/composer-cli/node_modules/fsevents
> node install
[fsevents] Success: "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/composer-cli/node_modules/fsevents/lib/binding/Release/node-v57-darwin-x64/fse.node" already installed
Pass --update-binary to reinstall or --build-from-source to recompile
> node-report@2.2.1 install /Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/composer-cli/node_modules/node-report
> node-gyp rebuild
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance
Traceback (most recent call last):
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py", line 16, in
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py", line 538, in main
return gyp_main(args)
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py", line 523, in gyp_main
generator.GenerateOutput(flat_list, targets, data, params)
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py", line 2170, in GenerateOutput
part_of_all=qualified_target in needed_targets)
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py", line 795, in Write
self.Pchify))
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py", line 1190, in WriteSources
cflags = self.xcode_settings.GetCflags(configname)
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py", line 551, in GetCflags
archs = self.GetActiveArchs(self.configname)
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py", line 420, in GetActiveArchs
xcode_archs_default = GetXcodeArchsDefault()
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py", line 118, in GetXcodeArchsDefault
xcode_version, _ = XcodeVersion()
File "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py", line 1265, in XcodeVersion
version = re.match(r'(\d\.\d\.?\d*)', version).groups()[0]
AttributeError: 'NoneType' object has no attribute 'groups'
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack at ChildProcess.onCpExit (/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:336:16)
gyp ERR! stack at emitTwo (events.js:126:13)
gyp ERR! stack at ChildProcess.emit (events.js:214:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Darwin 17.6.0
gyp ERR! command "/Users/namigupt/.nvm/versions/node/v8.11.3/bin/node" "/Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/namigupt/.nvm/versions/node/v8.11.3/lib/node_modules/composer-cli/node_modules/node-report
gyp ERR! node -v v8.11.3
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-report@2.2.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-report@2.2.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/namigupt/.npm/_logs/2018-06-19T14_56_08_070Z-debug.log
any pointers on this issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=LHgfJcKpb4EhbwqL5) @mahoney1 Yes, I mean the composer rest API. Please checkthe rest server here: http://13.126.30.199:3000/explorer/#!/org95urbanstack95Passenger/org_urbanstack_Passenger_create
Hi guys, currently trying to run the `trade-network` business network with two organizations. I have no issue when create the peers, ca-servers ..., but when I start the network, I'm only able to ping and interact with the `alice` identity (identity issued by PeerAdmin from organization 1), but I can't make it work from `bob` !
I'm really reproducing the commands from the tutorial.
The only difference is this one:
Screen Shot 2018-06-19 at 18.38.08.png
Where state is `BOUND` while `alice` has a state `ACTIVATED`. Should I keep looking around this or is it normal ? Has anyone else got this issue before ?
(always getting : `Error: Error trying to ping. Error: 2 UNKNOWN: access denied: channel [mainchannel] creator org [Organization2MSP]` when trying to ping or do anything from `bob`)
Hey, I am getting a 401 error while trying to create a participant on the composer rest server. Can someone please help? Here is the error log: https://console.cloud.google.com/logs/viewer?project=urbanstack-45bc4&minLogLevel=0&expandAll=false×tamp=2018-06-19T16:40:56.795000000Z&interval=PT1H&resource=cloud_function%2Ffunction_name%2FcreatePassenger&scrollTimestamp=2018-06-19T16:31:37.445000000Z&dateRangeUnbound=forwardInTime&customFacets=&limitCustomFacetWidth=true&dateRangeStart=2018-06-19T15:40:56.792Z&advancedFilter=resource.type%3D%22cloud_function%22%0Aresource.labels.project_id%3D%22urbanstack-45bc4%22%0Aresource.labels.region%3D%22us-central1%22%0Aresource.labels.function_name%3D%22createPassenger%22%0Atimestamp%3D%222018-06-19T16:31:37.445242976Z%22%0AinsertId%3D%22000000-0a61990e-2b82-4f0e-b372-c939dce39c34%22
Hey, I am getting a 401 error while trying to create a participant on the composer rest server. The same json I send works perfectly on composer playground. Can someone please help? Here is the error log: https://console.cloud.google.com/logs/viewer?project=urbanstack-45bc4&minLogLevel=0&expandAll=false×tamp=2018-06-19T16:40:56.795000000Z&interval=PT1H&resource=cloud_function%2Ffunction_name%2FcreatePassenger&scrollTimestamp=2018-06-19T16:31:37.445000000Z&dateRangeUnbound=forwardInTime&customFacets=&limitCustomFacetWidth=true&dateRangeStart=2018-06-19T15:40:56.792Z&advancedFilter=resource.type%3D%22cloud_function%22%0Aresource.labels.project_id%3D%22urbanstack-45bc4%22%0Aresource.labels.region%3D%22us-central1%22%0Aresource.labels.function_name%3D%22createPassenger%22%0Atimestamp%3D%222018-06-19T16:31:37.445242976Z%22%0AinsertId%3D%22000000-0a61990e-2b82-4f0e-b372-c939dce39c34%22
Hey, I am getting a 401 error while trying to create a participant on the composer rest server. The same json I send works perfectly on composer playground. Can someone please help? Here is the error log: {
insertId: "000000-f389d237-39f6-4417-b12e-e204d8d8a6a7"
labels: {
execution_id: "dd8zmym86rmg"
}
logName: "projects/urbanstack-45bc4/logs/cloudfunctions.googleapis.com%2Fcloud-functions"
receiveTimestamp: "2018-06-20T06:27:29.387503162Z"
resource: {
labels: {
function_name: "createPassenger"
project_id: "urbanstack-45bc4"
region: "us-central1"
}
type: "cloud_function"
}
severity: "DEBUG"
textPayload: "Function execution took 490 ms, finished with status code: 401"
timestamp: "2018-06-20T06:27:23.460384934Z"
}
Here is the code: https://github.com/goelmayank/UrbanStack/blob/master/FirebaseFunctions/functions/index.js
Has joined the channel.
Hi everyone,I use golang language to write a chaincode,now I want to use mysql in chaincode.so what can I do ?
```
//args :name hashValue Owner
func (sc *SimpleChaincode) addMysql(stub shim.ChaincodeStubInterface, args []string) pb.Response {
if len(args) != 3 {
return shim.Error(getErrReason(CARGSNUMERR+strconv.Itoa(len(args)), "wrong"))
}
db, err := sql.Open("mysql", "root:123456789@tcp(localhost:3306)/test?charset=utf8")
checkErr(err)
insertData(db, args[0], args[1], args[2], "time")
```
but it can't connect mysql
401 UNAUTHORIZED
The request has not been applied because it lacks valid authentication credentials for the target resource.
What should I pass in headers to make it accessible
@goelmayank I think you have to pass "Authorization :
strategy *
Anyone know where the `chaincode` that `composer` runs on is located? I cant find it. Tried looking through https://github.com/hyperledger/composer/tree/master/packages , but no luck
How to construct relationship via Node Composer modules methods?
How to construct relationship via Node Composer APIs?
relation.png
https://stackoverflow.com/questions/50941601/hyperledger-composer-the-current-identity-has-not-been-registered
any help around this
I am using hyperleder v1 and composer v0.16, I create an application and create some cards using playground on bluemix(setup done using kubectl). The cards works fine for sometime in my client application but after an hour or so it starts giving me following error:
```Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: rsa)
(node:5911) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Error trying to ping. Error: Error trying to query business network. Error: chaincode error (status: 500, message: Error: The current identity has not been registered: rsa) ```
@VadimInshakov
`let foo = factory.newRelationship('org.something.name', 'bar', '123');`
This creates a relationship for an asset called `org.something.name.bar#123` and store it in `foo`
@VadimInshakov Refer to this https://hyperledger.github.io/composer/latest/api/common-factory#newrelationship
@varunagarwal thanks!
no problem
Hello,
I am getting following error while hitting callback URL in authentication:
```
TypeError: Cannot read property 'match' of undefined
at profileToUser (/home/composer/.npm-global/lib/node_modules/composer-rest-server/lib/util.js:164:26)
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-component-passport/lib/models/user-identity.js:126:61
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:2175:62
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:2111:9
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1012:9
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:359:16
at eachOfArrayLike (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:928:9)
at eachOf (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:990:5)
at _asyncMap (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1005:5)
at Object.map (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:995:16)
at allCb (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:2025:13)
at /home/composer/node_modules/loopback-connector-mongodb/lib/mongodb.js:1161:9
at result (/home/composer/node_modules/mongodb/lib/utils.js:414:17)
at executeCallback (/home/composer/node_modules/mongodb/lib/utils.js:406:9)
at handleCallback (/home/composer/node_modules/mongodb/lib/utils.js:128:55)
at self.close (/home/composer/node_modules/mongodb/lib/cursor.js:904:60)
at handleCallback (/home/composer/node_modules/mongodb/lib/utils.js:128:55)
at completeClose (/home/composer/node_modules/mongodb/lib/cursor.js:1043:14)
at Cursor.close (/home/composer/node_modules/mongodb/lib/cursor.js:1056:10)
at /home/composer/node_modules/mongodb/lib/cursor.js:904:21
at handleCallback (/home/composer/node_modules/mongodb-core/lib/cursor.js:199:5)
```
[ ](https://chat.hyperledger.org/channel/composer?msg=xo8DMpiygFnLWzgiZ) @yulong12 - This chat channel is for Composer - I suggest you ask this question in one of the #fabric channels.
[ ](https://chat.hyperledger.org/channel/composer?msg=AWkXgGjKLxxfAEeWT) @rthatcher @mahoney1 any idea on this issues?
[ ](https://chat.hyperledger.org/channel/composer?msg=AWkXgGjKLxxfAEeWT) @rthatcher @mahoney1 any idea on this issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=SZYNZC9y5PWh2juwe) @Varun2887 are u sure u use the compatible composer version with fabric?
yes
have used the same config before
its the default configuration i downloaded from ibm repo for setup on bluemix
[ ](https://chat.hyperledger.org/channel/composer?msg=hie34uxnmYXWzQga5) @Varun2887 did u tried with fabric v1.1 and composer v0.19.9?
[ ](https://chat.hyperledger.org/channel/composer?msg=SiRnHAY8xWRByxoXK) @waleed bluemix doesnt have that configuration available yet
Hi All, I have run into issues with the composer installation.
here are the error logs:
i see `maxEnrollments: -1` in cas.yaml can this be the issue?
error.log
can anyone give any debugging pointers?
[ ](https://chat.hyperledger.org/channel/composer?msg=pq6vF79tjDQQcr9hJ) @Varun2887 can u change this value and test it?
yea changing it to 0
the bluemix script is bit wierd it doesnt takes `sampleconfig` files from local
rather it pulls it from git repo hence have to make some settings to use local files
[ ](https://chat.hyperledger.org/channel/composer?msg=hPGb3rLcBMNwiLgBS) @NamitGupta try without sudo
@waleed Didn't work.....same issue
[ ](https://chat.hyperledger.org/channel/composer?msg=JbrDazDpimCPuFJKG) @Varun2887 I am not familiar with bluemix. But as I see, u don't have access to add your own config. right?
have a workaround
will try to add my config
[ ](https://chat.hyperledger.org/channel/composer?msg=QiN3S2uvusqKE3bY6) @NamitGupta u have permission problem with npm
try this: https://docs.npmjs.com/getting-started/fixing-npm-permissions
Hi
I have created one node js application which will create and issue identity for the participants. And im calling google authentication enabled REST API's from that node js application. The problem is its not asking for authentication token. The participants are getting added without having any authentication.. Is this how node js will work with composer-client npm package?? Or do i need to write any code for authentication in node js application too??
[ ](https://chat.hyperledger.org/channel/composer?msg=vKbWD7xLnYWvSYyM6) @Pranoti do u use composer-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=vKbWD7xLnYWvSYyM6) @Pranoti do u use composer-rest-server?
[ ](https://chat.hyperledger.org/channel/composer?msg=cZr5copsbA3gRDKHN) @waleed yes
[ ](https://chat.hyperledger.org/channel/composer?msg=TSA723yXY3bcGzgsE) @Pranoti did u run it in multi user mode and authentication mode?
[ ](https://chat.hyperledger.org/channel/composer?msg=qEtPhzhZ7BiZigP7j) @waleed Yes
[ ](https://chat.hyperledger.org/channel/composer?msg=9xGoRH5veEaLtcYya) didnt work with value `0`
@waleed
[ ](https://chat.hyperledger.org/channel/composer?msg=pq6vF79tjDQQcr9hJ) @Varun2887 - this value of -1 is used for the admin user, and means that the number of times that admin/adminpw can be used to create identities is unlimited. Setting it to 0 will I think disable the admin account and stop you deploying any Business Networks! Composer will Issue IDs with a max-enrollment of 1, so we talk about a "one-time" secret or "single use" secret.
[ ](https://chat.hyperledger.org/channel/composer?msg=HFn7DuhgJHBWrv5nJ) @rthatcher so what value should we keep in there?
[ ](https://chat.hyperledger.org/channel/composer?msg=HFn7DuhgJHBWrv5nJ) @rthatcher this is nice to know :)
[ ](https://chat.hyperledger.org/channel/composer?msg=BadYznYWScjyCZe7W) @Pranoti and does the authentication works directly without your application? I mean what happen, when u call `http://localhost:3000/auth/google` ?
keep `-1` in there. I think this is then the default value, but for each new entry added to the CA the default can be overruled and Composer specifically creates with "one time" secret.
I have google enabled authentication api in multiuser mode. When I run composer-rest-server it open in web browser on 3000 port. I need to access /auth/google page for authentication before accessing any api. Otherwise it gives me 401 error. When I access though angular app it gives me 401 error too. And this is how should work with authentication enabled api. But when im accessing these api's through node js its not giving me any error. It doesn't ask for authentication token. It gives me direst access to the api's, which is wrong..
[ ](https://chat.hyperledger.org/channel/composer?msg=zBkzTQsFkLAfT9Zg2) tried but no luck.....
@Varun2887 - error messages have changed between v0.16 and the current v0.19 partly through the change of Fabric from 1.0 to 1.1. It would be good to see if there is an error in the CA container at the time you see the error in the client application. Are you trying to use a Card that has a one-time secret in it, which has been used and invalidated, when you should be using the credentials (certificate/key)?
I assume you are using the Javascript API not the REST API?
yes js api
the card works fine for a while
then it stops working
error.log
@NamitGupta - see the answer in the following link -> https://stackoverflow.com/questions/47529441/i-am-not-able-to-install-hyperledger-composer-on-mac-os-x - you need Xcode - eg `npm install Xcode` (also see the comments in that post)
[ ](https://chat.hyperledger.org/channel/composer?msg=xfeBrXG3HnEXswQ4e) @Varun2887 - you are using Composer v0.16.1 on Fabric 1.0
With the Fabric CA v1.0 there was a bug whereby the Max Enrollments was set to -1 even though Composer was requesting 1 - this allowed Identities to be re-enrolled - generating new and different Credentials and then there can be a mismatch which is what you are seeing in your error I think. (this was certainly fixed for Fabric 1.1, and possibly in Fabric 1.0.5)
Newer version of Composer now provide better error diagnostics showing the IDentifier value that failed and this can be checked against a list from `composer identity list`
- But ultimately I _think_ that your Code is trying to re-enroll the same user, and the Fabric CA bug is allowing you to and this is causing the problem.
I will look into whether there are some modified Kubernetes scripts that will create a 1.1 Fabric for Composer v0.19.
[ ](https://chat.hyperledger.org/channel/composer?msg=xRPcZAsSxnxGCBat5) @Pranoti @mahoney1 & @rthatcher What do u think?
[ ](https://chat.hyperledger.org/channel/composer?msg=xRPcZAsSxnxGCBat5) @Pranoti - @mahoney1 & @rthatcher What do u think?
[ ](https://chat.hyperledger.org/channel/composer?msg=4K8QKW3Yar8k4wjQF) @mahoney1 Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=xRPcZAsSxnxGCBat5) @Pranoti hope you are accessing rest-server via nodeJs and not fabric SDK.
Has left the channel.
@Pranoti - strange - have you previously authenticated with your NodeJS app? Wondering if there's token caching. If you're going to http://xxxx:3000/auth/google from your NodeJS app (it doesn't matter really) then GOOGLE OAUTH2 provider should ringfence the REST server and prompt for client authentication (are these defined to your NodeJS app?) . You can try the same with curl direct, to see the response.
More people here that will attend the blockathon this weekend in Brussels?
I owe you guys a big big apology.. My rest server was up on 3000. And my node js developer was calling api from 8080 .. I verified again... :grimacing: Really sorry for that..
I owe you guys a big big apology.. My rest server was up on 3000. And my node js developer was calling api from 8080 .. I verified again... :grimacing: Really sorry for that.. and I take my words back..:no_mouth:
I owe you guys a big big apology.. My rest server was up on 3000. And my node js developer was calling api from 8080 .. I verified again... :grimacing: Really sorry for that.. and I take my words back..:no_mouth: Everything working perfectly fine..
Has joined the channel.
Hi, I have some newbie trouble on the [composer developper tutorial](https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial) is this the right place to ask for help ?
Hi, I have some newbie trouble on the [composer developper tutorial](https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial). Is this the right place to ask for help ?
Hi, I have some newbie trouble on the [composer developer tutorial](https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial). Is this the right place to ask for help ?
[ ](https://chat.hyperledger.org/channel/composer?msg=GnfK4fv7WJ7zZ8pnv) @rthatcher : nevermind, I did tear down all docker and downloaded images and restarted cleanly, and now it seems to work :) It id take a while though, I'm guessing the option `CORE_CHAINCODE_STARTUPTIMEOUT=1200s` was now really taking effect.
In any case, many thanks for the help!
[ ](https://chat.hyperledger.org/channel/composer?msg=cjRModYrszobSngCR) @OlivierBondu yes :)
I'm trying to deploy the business network, specifically trying to start it, as per instructions, but I end up with:
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-06-20T13_00_48_584Z-debug.log
"
Command failed
```
I'd like to mention I already stumbled upon [this stackoverflow question](https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer) and that I am not behind a firewall, and that adding `CORE_CHAINCODE_STARTUPTIMEOUT=1200s` to the peer (`peer0.org1.example.com`) definition didn't seem to help
[ ](https://chat.hyperledger.org/channel/composer?msg=EQEPnufqhjwN2iXE7) @OlivierBondu - This looks like a problem with npm trying to execute install commands within the container (rather than it being a timeout problem.) So it is the other part of that stackoverflow about the npmrc file that is relevant I think. There is a little more information and some diagnostic suggestions in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
Scroll down a couple of screens to find your error in the table.
I get this within the composer-playground container after waiting for a while:
```
composer_playground.1.v7ig13yly54m@swarm02 | warn: [Hyperledger-Composer] :HLFConnection :_checkCCListener() could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events
composer_playground.1.v7ig13yly54m@swarm02 | warn: [Hyperledger-Composer] :HLFConnection :_checkCCListener() could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events
composer_playground.1.v7ig13yly54m@swarm02 | warn: [Hyperledger-Composer] :HLFConnection :_checkCCListener() could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events
composer_playground.1.v7ig13yly54m@swarm02 | warn: [Hyperledger-Composer] :HLFConnection :_checkCCListener() could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events
composer_playground.1.v7ig13yly54m@swarm02 | warn: [Hyperledger-Composer] :HLFConnection :_checkCCListener() could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events
composer_playground.1.v7ig13yly54m@swarm02 | warn: [Hyperledger-Composer] :HLFConnection :_checkCCListener() could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events
```
however if I simply run the composer-cli I have no issues:
```
composer-cli network ping -c admin@basic-sample-network
The connection to the network was successfully tested: basic-sample-network
Business network version: 0.2.6-20180530153450
Composer runtime version: 0.19.8
participant: org.hyperledger.composer.system.NetworkAdmin#admin
identity: org.hyperledger.composer.system.Identity#00d386884e01babbe40cd41fe69844fe1f16c96e3a48924cd7230756e4eb297f
Command succeeded
```
I get this within the composer-playground container after waiting for a while:
```
...
composer_playground.1.v7ig13yly54m@swarm02 | warn: [Hyperledger-Composer] :HLFConnection :_checkCCListener() could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events
composer_playground.1.v7ig13yly54m@swarm02 | warn: [Hyperledger-Composer] :HLFConnection :_checkCCListener() could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events
composer_playground.1.v7ig13yly54m@swarm02 | warn: [Hyperledger-Composer] :HLFConnection :_checkCCListener() could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events
composer_playground.1.v7ig13yly54m@swarm02 | warn: [Hyperledger-Composer] :HLFConnection :_checkCCListener() could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events
...
```
however if I simply run the composer-cli I have no issues:
```
composer-cli network ping -c admin@basic-sample-network
The connection to the network was successfully tested: basic-sample-network
Business network version: 0.2.6-20180530153450
Composer runtime version: 0.19.8
participant: org.hyperledger.composer.system.NetworkAdmin#admin
identity: org.hyperledger.composer.system.Identity#00d386884e01babbe40cd41fe69844fe1f16c96e3a48924cd7230756e4eb297f
Command succeeded
```
anyone an idea?
[ ](https://chat.hyperledger.org/channel/composer?msg=eMAaZY58KG5cizPaa) @rthatcher Thanks! it seems the test container runs fine, I'm not sure from what is written on the knowledge wiki if I'm supposed to test anything further ?
[ ](https://chat.hyperledger.org/channel/composer?msg=eMAaZY58KG5cizPaa) @rthatcher Thanks! it seems the test container runs fine, I'm not sure from what is written on the knowledge wiki if I'm supposed to test anything further ?
Has joined the channel.
@OlivierBondu - this part of the error "reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443" is suggestive of a problem in the new chaincode container when trying npm install. You may find more information in the log of the peer container.
We don't explicitly say so, but in your test container you should be trying some npm install commands - it doesn't really matter what you install.
Simple question. Am I able to model a negative decimal number? From what I see the numeric types are Double (not signed), Integer (whole), and Long (whole).
Simple question. Am I able to model a negative decimal number? From what I see the primitive numeric types are Double (not signed), Integer (whole), and Long (whole).
Hey guys! Sorry if this is a silly question. Is there any relationship between chaincode running on a Fabric network and Composer Business Network Archive? I was watching a tutorial and got a bit confused when the presenter created a brand new bna, exported the file and just boot it up in a container on an existing Fabric network.
Hey guys! Sorry if this is a silly question. Is there any relationship between chaincode running on a Fabric network and Composer Business Network Archive? I was watching a tutorial and got a bit confused when the presenter created a brand new bna, exported the file and just boot it up in a container on an existing Fabric network.
Edit: Found an answer =) (by Dan Selman in his blog https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/)
Has joined the channel.
Hey guys, hope you might be able to help.
When i do
```
await businessNetworkConnection.connect('admin@my-network');
await businessNetworkConnection.ping();
await businessNetworkConnection.disconnect();
```
And after when i do
```
let updatedAdminConnection = new AdminConnection();
let cards = await updatedAdminConnection.getAllCards();
adminCard = cards.get('admin@my-network');
console.log(adminCard);
```
The resulting `IdCard` doesn't have any credentials. How should i export the card with all credentials (certificates)?
@vidor you should use
```
adminCard = updatedAdminConnection.exportCard('admin@my-network');
```
@davidkel Thank you! That worked.
Hi Folks! Is there a way to automatically crank up a bna version to avoid specifying it in the command line? What is the best practice ? Any shell script available ?
What do you mean by "crank up"?
You can do `npm version patch` and read the new version from `package.json` and use that when packaging the new bna. But when you do `composer network start` you must specify the version that you are starting @DmitryK4
@dselman i mean the increase of the version number to be able to install an update. It won't install on top of the same version number
@vidor, thanks a lot!
is there a faster way to re-deploy (upgrade network changes)? if it's done via the command like it takes ~3min on mac book pro. It seems much faster if code updates are made in playground directly but I'd like to avoid modification outside of the git code repo. Any best practice on this ?
[ ](https://chat.hyperledger.org/channel/composer?msg=GnfK4fv7WJ7zZ8pnv) @rthatcher
(edit: grm, I don't like this rocket chat window)
Thanks! I did tear down all docker and delete images to restart cleanly and now it seems to work. I'm guessing it's the `CORE_CHAINCODE_STARTUPTIMEOUT=1200s` option that was now taking effect because it did run for a while...
In any case thanks much for the help!
All - I'm having trouble getting composer to execute... ( followed prereq's and instructions ), npm seems successful - $ npm install -g composer-cli
/usr/local/bin/composer -> /usr/local/lib/node_modules/composer-cli/cli.js
+ composer-cli@0.19.9
updated 1 package in 38.393s.
Follow on - but when I attempt to execute, I get the following error - $ composer --version
module.js:549
throw err;
^
Error: Cannot find module './api'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.
Hello all,
Can I create any transaction or any custom api for rest server such that first, it will add participant then issue identity for it and import created card to wallet? I don't know it is achievable or not. Can anyone help me for this?
Has joined the channel.
I'm trying to get card name, but get error ```TypeError: BusinessNetworkCardStore.getDefaultCardName is not a function```
Here is how I do this:
```
var BusinessNetworkCardStore = require('composer-common');
...
const idCardData: any = await new IdCard(metadataForCard, data);
const idCardName = await BusinessNetworkCardStore.getDefaultCardName(idCardData);
```
And if I try to create instance of BusinessNetworkCardStore, I get error that it's not constructor. So, what syntax should I use in the current Composer version to find out the name of the card?
I'm trying to get card name, but get error
```TypeError: BusinessNetworkCardStore.getDefaultCardName is not a function
```
Here is how I do this:
```
var BusinessNetworkCardStore = require('composer-common');
...
const idCardData: any = await new IdCard(metadataForCard, data);
const idCardName = await BusinessNetworkCardStore.getDefaultCardName(idCardData);
```
And if I try to create instance of BusinessNetworkCardStore, I get error that it's not constructor. So, what syntax should I use in the current Composer version to find out the name of the card?
I'm trying to get card name, but get error
```TypeError: BusNetworkCardStore.getDefaultCardName is not a function
```
Here is how I do this:
```
var BusinessNetworkCardStore = require('composer-common').BusinessNetworkCardStore;
...
let BusNetworkCardStore = new BusinessNetworkCardStore();
...
const idCardData: any = await new IdCard(metadataForCard, data);
const idCardName = await BusNetworkCardStore.getDefaultCardName(idCardData);
```
And if I try to create instance of BusinessNetworkCardStore, I get error that it's not constructor. So, what syntax should I use in the current Composer version to find out the name of the card?
I'm trying to get card name, but get error
```TypeError: BusNetworkCardStore.getDefaultCardName is not a function
```
Here is how I do this:
```
var BusinessNetworkCardStore = require('composer-common').BusinessNetworkCardStore;
...
let BusNetworkCardStore = new BusinessNetworkCardStore();
...
const idCardData: any = await new IdCard(metadataForCard, data);
const idCardName = await BusNetworkCardStore.getDefaultCardName(idCardData);
```
So, what syntax should I use in the current Composer version to find out the name of the card?
@VadimInshakov `getDefaultCardName` is a static non asynchronous method so needs to be invoked at the class level ie
```
const idCardName = BusinessNetworkCardStore.getDefaultCardName(idCardData);
```
@HoneyShah you can customize the REST server and add new APIs using a new feature in 0.19.9, see details here: https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=9hvhA8azrLyEMJL9f) @davidkel great, thanks!
Can you help me also to resolve issue ```adminConnection.importCard is not a function```?
I'm trying to import card so:
```
createCard(meta: Metadata, businessNetwork: string, profilePath: string){
let BusNetworkConnection = new BusinessNetworkConnection();
let adminConnection = new AdminConnection();
try {
(async function createIdentity(meta, busnetwork, profilePath: string){
let adminConnection: any = await BusNetworkConnection.connect(meta.adminCard);
//issue identity
const result = await BusNetworkConnection.issueIdentity(`${meta.participantSignature}#${meta.participantId}`, meta.userName);
console.log(`userID = ${result.userID}`);
console.log(`userSecret = ${result.userSecret}`);
//create card
const metadataForCard = {version: 1, userName: result.userID, enrollmentSecret: result.userSecret, businessNetwork: businessNetwork};
let data: string = fs.readFileSync("../"+profilePath, 'UTF-8');
data = JSON.parse(data);
const idCardData: any = await new IdCard(metadataForCard, data);
const idCardName = await BusinessNetworkCardStore.getDefaultCardName(idCardData);
try{
const imported = await adminConnection.importCard(idCardName, idCardData);
} catch(error){
throw error;
}
/**
let archive: any = card.toArchive();
if (!fs.existsSync('./cards')){
fs.mkdirSync('./cards');
}
fs.writeFile('./cards/'+result.userID+'@'+businessNetwork, archive, (err: any)=>{
if (err) throw err
console.log('Archive created!');
});
*/
BusNetworkConnection.disconnect();
})(meta, businessNetwork, profilePath)
} catch(error) {
console.log(error);
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=9hvhA8azrLyEMJL9f) @davidkel great, thanks!
Can you help me also to resolve issue **adminConnection.importCard is not a function**?
I'm trying to import card so:
```
createCard(meta: Metadata, businessNetwork: string, profilePath: string){
let BusNetworkConnection = new BusinessNetworkConnection();
let adminConnection = new AdminConnection();
try {
(async function createIdentity(meta, busnetwork, profilePath: string){
let adminConnection: any = await BusNetworkConnection.connect(meta.adminCard);
//issue identity
const result = await BusNetworkConnection.issueIdentity(`${meta.participantSignature}#${meta.participantId}`, meta.userName);
console.log(`userID = ${result.userID}`);
console.log(`userSecret = ${result.userSecret}`);
//create card
const metadataForCard = {version: 1, userName: result.userID, enrollmentSecret: result.userSecret, businessNetwork: businessNetwork};
let data: string = fs.readFileSync("../"+profilePath, 'UTF-8');
data = JSON.parse(data);
const idCardData: any = await new IdCard(metadataForCard, data);
const idCardName = await BusinessNetworkCardStore.getDefaultCardName(idCardData);
try{
const imported = await adminConnection.importCard(idCardName, idCardData);
} catch(error){
throw error;
}
/**
let archive: any = card.toArchive();
if (!fs.existsSync('./cards')){
fs.mkdirSync('./cards');
}
fs.writeFile('./cards/'+result.userID+'@'+businessNetwork, archive, (err: any)=>{
if (err) throw err
console.log('Archive created!');
});
*/
BusNetworkConnection.disconnect();
})(meta, businessNetwork, profilePath)
} catch(error) {
console.log(error);
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=9hvhA8azrLyEMJL9f) @davidkel great, thanks!
Can you help me also to resolve issue **adminConnection.importCard is not a function**?
I'm trying to import card so:
```
createCard(meta: Metadata, businessNetwork: string, profilePath: string){
let BusNetworkConnection = new BusinessNetworkConnection();
let adminConnection = new AdminConnection();
try {
(async function createIdentity(meta, busnetwork, profilePath: string){
let adminConnection: any = await BusNetworkConnection.connect(meta.adminCard);
//issue identity
const result = await BusNetworkConnection.issueIdentity(`${meta.participantSignature}#${meta.participantId}`, meta.userName);
console.log(`userID = ${result.userID}`);
console.log(`userSecret = ${result.userSecret}`);
//create card
const metadataForCard = {version: 1, userName: result.userID, enrollmentSecret: result.userSecret, businessNetwork: businessNetwork};
let data: string = fs.readFileSync("../"+profilePath, 'UTF-8');
data = JSON.parse(data);
const idCardData: any = await new IdCard(metadataForCard, data);
const idCardName = await BusinessNetworkCardStore.getDefaultCardName(idCardData);
try{
const imported = await adminConnection.importCard(idCardName, idCardData);
} catch(error){
throw error;
}
BusNetworkConnection.disconnect();
})(meta, businessNetwork, profilePath)
} catch(error) {
console.log(error);
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=9hvhA8azrLyEMJL9f) @davidkel great, thanks!
Can you help me also to resolve issue **adminConnection.importCard is not a function**?
I'm trying to import card so:
```
createCard(meta: Metadata, businessNetwork: string, profilePath: string){
let BusNetworkConnection = new BusinessNetworkConnection();
let adminConnection = new AdminConnection();
try {
(async function createIdentity(meta, busnetwork, profilePath: string){
let adminConnection: any = await BusNetworkConnection.connect(meta.adminCard);
const result = await BusNetworkConnection.issueIdentity(`${meta.participantSignature}#${meta.participantId}`, meta.userName);
const metadataForCard = {version: 1, userName: result.userID, enrollmentSecret: result.userSecret, businessNetwork: businessNetwork};
let data: string = fs.readFileSync("../"+profilePath, 'UTF-8');
data = JSON.parse(data);
const idCardData: any = await new IdCard(metadataForCard, data);
const idCardName = await BusinessNetworkCardStore.getDefaultCardName(idCardData);
try{
const imported = await adminConnection.importCard(idCardName, idCardData);
} catch(error){
throw error;
}
BusNetworkConnection.disconnect();
})(meta, businessNetwork, profilePath)
} catch(error) {
console.log(error);
}
```
@sstone1 Yes,thanks. And another question is how can I start those api's using composer-rest-server command? Currently I am running them using `node .` from root folder.
you don't start them using the `composer-rest-server` command, as per the documentation you start them using `npm start` which in turn runs `node .`
@sstone1 Okay. So, what should I need to do for starting it in multi user mode? Do I need to provide something in `datasource.json`?
ah, the customize option doesn't support multi user mode yet
Will it be supported in near time as without multi user mode we can't use it in production?
Will it be supported in near time? as without multi user mode we can't use it in production.
@sstone1 Will it be supported in near time? as without multi user mode we can't use it in production.
@VadimInshakov you assigned something the `adminConnection` twice, the second assignment means it isn't an AdminConnection Instance
@VadimInshakov you assigned something to `adminConnection` twice, the second assignment means it isn't an AdminConnection Instance
[ ](https://chat.hyperledger.org/channel/composer?msg=RkgTbtvFKchuQDRNq) @jtwalker2000 - it looks like you maye have used sudo/su/root for some part of the install. This section in the Knowledge Wiki has information on installing and the various errors that can occur: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#installissues
[ ](https://chat.hyperledger.org/channel/composer?msg=L2SfiCuLd9gmSJANg) Is it possible using Transaction?
Hello, I am trying to do something but I don't know how! :smiley:
I have the following simplified model:
`asset Order identified by orderID {
o String orderID
}
abstract asset Part {
--> Company producer
--> Order order optional
}
asset Hood identified by hoodID extends Part {
o String hoodID
}
asset Door identified by doorID extends Part {
o String doorID
}
asset Car identified by carID {
o String carID
o Part[] parts
--> Order order
}`
Now, the process:
A part can be created at any time. Once there is an order, a part can be assigned to an order (create a relationship). There is the need for multiple parts to create a car. Once all necessary parts have been assigned to the order the car will be manufactured.
What I want to do but don’t know how:
Now when I create the car I want to have an array of parts that reflect the components of this car.
But how can I get all the parts that point to an order? I looked in the Docs and thought `resolve` might be the right angle of attack but it says that this is only for visualization purposes.
Somebody has an idea how I can solve this?
Hello, I am trying to do something but I don't know how! :smiley:
I have the following simplified model:
`asset Order identified by orderID {
o String orderID
}
abstract asset Part {
--> Company producer
--> Order order optional
}
asset Hood identified by hoodID extends Part {
o String hoodID
}
asset Door identified by doorID extends Part {
o String doorID
}
asset Car identified by carID {
o String carID
o Part[] parts
--> Order order
}`
Now, the process:
A part can be created at any time. Once there is an order, a part can be assigned to an order (create a relationship). There is the need for multiple parts to create a car. Once all necessary parts have been assigned to the order the car will be manufactured.
What I want to do but don’t know how:
Now when I create the car I want to have an array of parts that reflect the components of this car.
But how can I get all the parts that point to an order? I looked in the Docs and thought `resolve` might be the right angle of attack but it says that this is only for visualization purposes.
Somebody has an idea how I can solve this?
Hello, I am trying to do something but I don't know how! :smiley:
I have the following simplified model:
```
asset Order identified by orderID {
o String orderID
}
abstract asset Part {
--> Company producer
--> Order order optional
}
asset Hood identified by hoodID extends Part {
o String hoodID
}
asset Door identified by doorID extends Part {
o String doorID
}
asset Car identified by carID {
o String carID
o Part[] parts
--> Order order
}
```
Now, the process:
A part can be created at any time. Once there is an order, a part can be assigned to an order (create a relationship). There is the need for multiple parts to create a car. Once all necessary parts have been assigned to the order the car will be manufactured.
What I want to do but don’t know how:
Now when I create the car I want to have an array of parts that reflect the components of this car.
But how can I get all the parts that point to an order? I looked in the Docs and thought `resolve` might be the right angle of attack but it says that this is only for visualization purposes.
Somebody has an idea how I can solve this
Hello, I am trying to do something but I don't know how! :smiley:
I have the following simplified model:
```
asset Order identified by orderID {
o String orderID
}
abstract asset Part {
--> Company producer
--> Order order optional
}
asset Hood identified by hoodID extends Part {
o String hoodID
}
asset Door identified by doorID extends Part {
o String doorID
}
asset Car identified by carID {
o String carID
--> Part[] parts
--> Order order
}
```
Now, the process:
A part can be created at any time. Once there is an order, a part can be assigned to an order (create a relationship). There is the need for multiple parts to create a car. Once all necessary parts have been assigned to the order the car will be manufactured.
What I want to do but don’t know how:
Now when I create the car I want to have an array of parts that reflect the components of this car.
But how can I get all the parts that point to an order? I looked in the Docs and thought `resolve` might be the right angle of attack but it says that this is only for visualization purposes.
Somebody has an idea how I can solve this
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=dfXDyET8fLamEmtwp) @davidkel thanks, it works!
Hi guys. Seems like there is an issue with the REST server, particularly with configuring data sources using `COMPOSER_DATASOURCES` environment variable. I'm currently going through this tutorial: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest. On step 3 we export an environment variable with a config for a Mongo database:
```COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'```
The issue is that the database which is being created doesn't have the name which is set in config - for some reason it's always named as `test`. Is it a bug or maybe I'm missing something? Thanks in advance.
Hi guys. Seems like there is an issue with the REST server, particularly with configuring data sources using `COMPOSER_DATASOURCES` environment variable. I'm currently going through this tutorial: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest. On step 3 we export an environment variable with a config for a Mongo database:
```COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'```
The issue is that the database which is being created doesn't have the name which is set in config - for some reason it's always named as `test`. Is it a bug or maybe I'm missing something? Thanks in advance.
Hi guys. Seems like there is an issue with the REST server, particularly with configuring data sources using `COMPOSER_DATASOURCES` environment variable. I'm currently going through this tutorial: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest. On step 3 we export an environment variable with a config for a Mongo database:
```COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'```
The issue is that the database which is being created doesn't have the name which is set in config - for some reason it's always named as `test`. I checked it in Mongo console.
Is it a bug or maybe I'm missing something? Thanks in advance.
Hi guys. Seems like there is an issue with the REST server, particularly with configuring data sources using `COMPOSER_DATASOURCES` environment variable. I'm currently going through this tutorial: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest. On step 3 we export an environment variable with a config for a Mongo database:
```COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'```
The issue is that the database which is being created doesn't have the name which is set in config - for some reason it's always named as `test`. I checked it in the Mongo console.
Is it a bug or maybe I'm missing something? Thanks in advance.
[ ](https://chat.hyperledger.org/channel/composer?msg=aADJCLZ9kvNTeGLGh) @poohitan I have the same problem. I tried to change the name of the database, but still the same `testr`
[ ](https://chat.hyperledger.org/channel/composer?msg=aADJCLZ9kvNTeGLGh) @poohitan I have the same problem. I tried to change the name of the database, but still the same `test`
@waleed same for me. I guess it's either a bug in Composer or somewhere in Loopback.
@waleed same situation. I guess it's either a bug in Composer or somewhere in Loopback.
How I can to pack created card credentials and metadata to .card file?
[ ](https://chat.hyperledger.org/channel/composer?msg=7fhYcD5vdT9e6DTD4) @poohitan I would like to find the solution to this issue
@waleed I have raised an issue on Github: https://github.com/hyperledger/composer/issues/4176. You can follow it too to check for updates on this issue.
Hi Everyone. I was wondering about a scenario where I have a fabric network with multiple organizations with different MSPs and CAs. What if I want to create a scenario where one organization can query and read the state of assets, but is not able to do any writes to the assets. If they are independent organizations with their own Peer Admins and CAs then they would be able to create any of the Participants defined in composer chaincode .bna and the .acl file rules would not help me right? Is it possible to install different .bna files on peers in the different organizations which use the same namespaces/names for Assets that both organizations need to access or is there a better way to handle this scenario? If this is possible then I assume I would limit the endorsement policies when starting the different .bna networks to only include Peers from the organization where I installed the specific chaincode .bna since Peers in the other organization would not have that .bna installed right? Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=dfXDyET8fLamEmtwp) @davidkel for some reason, the files are created in the **~/.composer** directory are: **metadata.json**, **connection.json**, but the **credentials** directory is empty. Can you tell me why?
Hi,
Is there any support for transient fields in Hyperledger Composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=jhX9eWBZmzTqWsX3o) @FlorentinoSainz - what do you mean by transient fields? the model file is part of the *agreed* 'smart contract' so you would not expect one of the parties to be able to add additional fields to the model without the agreement of a new model.
@rthatcher I mean, the transient part of the data available in Fabric (mostly used for encryption)
a way to specify it on a transaction or something like that
(hackish-way is also OK)
[ ](https://chat.hyperledger.org/channel/composer?msg=v5RuTiYWAPTrwX4im) @jsmithmap - the BNA has to be the same for all the orgs, otherwise it is not a shared/agreed Contract. This Stackoverflow answers the ACL question about Organisations: https://stackoverflow.com/questions/50680188/organization-based-restrictions-for-participant-identity-issuing-in-hyperledger/50681159
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=fWf9tN4cC4gawkSRJ) @FlorentinoSainz - ah OK - assuming you are talking about transient map (not the Private data feature in Fabric 1.2) then it is not supported in Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=fWf9tN4cC4gawkSRJ) @FlorentinoSainz - ah OK - assuming you are talking about transient map (not the Private data feature in Fabric 1.2) then it is not supported in Composer.
Should also mention (though not necessarily recommend) that there is a getNativeAPI function available to the transaction processor functions so it is possible you could use that. It is described at the bottom of this doc: https://hyperledger.github.io/composer/latest/reference/js_scripts
@rthatcher Will customisation of rest server with multi user mode be supported in near time? as without multi user mode we can't use it in production.
I have sucessfully setup oauth (github) on composer rest. SO now I will not be able to make any api calls without logging in and getting the auth token.
With this my next step was to provide permission to the users in the application.
I understand that this can be done at `.acl` file creating permissions for the assets that card can access.
I understand that we will need to import the card to wallet and set it as default. I see one can import more than one card to wallet and run the apis.
But I'm confused is how can I implement a realtime authentication where would like the user to login using oauth and perform the next set of rest apis with that permissions provided for them .
I'm looking for some help. Can some one please help me understand this feature in detail? I have gone through the online resources but still havedoubts on how this is working.
I have sucessfully setup oauth (github) on composer rest. SO now I will not be able to make any api calls without logging in and getting the auth token.
With this my next step was to provide permission to the users in the application.
I understand that this can be done at `.acl` file creating permissions for the assets that card can access.
I understand that we will need to import the card to wallet and set it as default. I see one can import more than one card to wallet and run the apis.
But I'm confused is how can I implement a realtime authentication where would like the user to login using oauth and perform the next set of rest apis with that permissions provided for them .
I'm looking for some help. Can some one please help me understand this feature in detail? I have gone through the online resources but still havedoubts on how this is working.
please help.
for some reason, the files are created in the *~/.composer* directory are: *metadata.json*, *connection.json*, but the *credentials* directory is empty. Can anybody tell me why?
```
let BusNetworkConnection = new BusinessNetworkConnection();
let adminConnection = new AdminConnection();
try {
(async function createIdentity(meta, busnetwork, profilePath: string){
await BusNetworkConnection.connect(meta.adminCard);
//issue identity
const result = await BusNetworkConnection.issueIdentity(`${meta.participantSignature}#${meta.participantId}`, meta.userName);
console.log(`userID = ${result.userID}`);
console.log(`userSecret = ${result.userSecret}`);
//import card
const metadataForCard = {version: 1, userName: result.userID, enrollmentSecret: result.userSecret, businessNetwork: businessNetwork};
let data: string = fs.readFileSync(path.join('/home/vadim/middleware/', profilePath), 'UTF-8');
data = JSON.parse(data);
const idCardData: any = await new IdCard(metadataForCard, data);
const idCardName = await BusinessNetworkCardStore.getDefaultCardName(idCardData);
const imported = await adminConnection.importCard(idCardName, idCardData);
...
```
@karthik.ir https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc it may help you
[ ](https://chat.hyperledger.org/channel/composer?msg=vFGWAKscdTyaxMLXe) @karthik.ir - A single logged in (authenticated) user CAN have multiple cards in their wallet, it is likely that most logged in users will have just one (default) card, and your UI application will hide the complexity of the wallets from the user. The process of issuing an identity and creating a card for a user will behind the scenes bind the ID to a Participant in the Business Network. The acl rules are then written against the Participant or the Participant Type (class). You will have to devise a process and write some code to manage the initial loading of the card into the wallet for a user.
When you get to looking at ACLs, there is a good tutorial to get started with: https://hyperledger.github.io/composer/latest/tutorials/acl-trading
@rthatcher Thanks! (I was having lunch), getNativeAPI works for inside the chaincode, but how do I send the transaction with this transient data? Is there a way to add it to composer transactions?
or to do that I have to fallback to fabric APIs and try to mimic how transactions are created for composer
Why when I try to import a newly created card
```
const imported = await adminConnection.importCard(idCardName, idCardData);
```
I get an error?
```
Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: AccessException: Participant 'innodata.ru.Worker#eve' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#inno@0.0.2'
```
Why so? I use standart universal acl:
```
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
Has left the channel.
@VadimInshakov - your rules specify `participant: "org.hyperledger.composer.system.NetworkAdmin"` wheras you are now using a different ID bound to a different participant. Try adding a rule including this: `participant: "ANY"`
[ ](https://chat.hyperledger.org/channel/composer?msg=aqhnMPsijy6BfSBzE) @rthatcher thanks, it's works! But still **credentials** directory is empty. And I don't see anywhere file with .card extension. Please help me figure it out.
@rthatcher I sended source to privates messages.
@rthatcher I sended source to private messages.
[ ](https://chat.hyperledger.org/channel/composer?msg=RfirBFRbLu22JrJdp) @VadimInshakov - you can see the credentials in a folder such as: `~/.composer/client-data/
[ ](https://chat.hyperledger.org/channel/composer?msg=fzzTCTEhfC2LeBoYa) @rthatcher oh wow... but how I can create .card file?
reminder that the Community call is at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-21st-June-2018 best regards Paul
@rthatcher should I copy priv key and certificate from `~/.composer/client-data/` and then just to achive it to zip? Or is there a more appropriate way to create `.card`?
@rthatcher should I copy priv key and certificate from `~/.composer/client-data/` to `credentials` sub-directory of directory `~/.composer/cards/
[ ](https://chat.hyperledger.org/channel/composer?msg=imbRiuRDZkDvQwAYG) @FlorentinoSainz have you seen the examples in the docs ? https://hyperledger.github.io/composer/latest/reference/js_scripts (in particular it retrieved an array of results which you can incorporate in your txn processor function)
@VadimInshakov see example here -> https://github.com/hyperledger/composer/blob/master/packages/composer-cli/lib/cmds/identity/lib/issue.js#L59 - further resources to reference are here -> see https://github.com/hyperledger/composer-sample-networks/blob/master/packages/pii-network/test/pii.js#L134 (FileCardStore would replace MemoryCardStore obviously in this example, and the `ImportCardForIdentity` is a function defined further up FYI. Also a useful example here in this blog posted on the community -> https://www.skcript.com/svr/how-to-build-nodejs-application-for-your-hyperledger-composer-networks/
[ ](https://chat.hyperledger.org/channel/composer?msg=cZ9NiKkseZbWtZpmi) @mahoney1 thanks, I will study it
Community call is at in a few mins fyi 4pm UTC (5pm UK, 12pm ET, 9am PT) - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community
Community call is in a few mins fyi 4pm UTC (5pm UK, 12pm ET, 9am PT) - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community
[ ](https://chat.hyperledger.org/channel/composer?msg=D5tDFmMXGA34Qkf4H) @rthatcher Thank you! Very helpful
Has joined the channel.
Is anyone aware of Hyperledger projects on the IBM iSeries?
Has joined the channel.
With factory.newResource() how would I auto-generate IDs for the third parameter?
Hello, I want to query only last record inserted in blockchain because it is needed to maintain ID for my application. But as LIMIT is not supported for fabric 1.1 is there any other way to achieve this?
Hi guys.
Is it possible to avoid using external database such as MongoDB for storing business network cards (and other users data) and store everything inside of a ledger instead? I wanna know is it possible to simplify the architecture and use only one datasource (CouchDB, the ledger itself) to store everything. How can I achieve this?
Hi guys.
Is it possible to avoid using external database such as MongoDB for storing business network cards (and other users data) and store everything in the ledger instead? I wanna know is it possible to simplify the architecture and use only one datasource (CouchDB, the ledger itself) to store everything. How can I achieve this?
Hi guys.
Is it possible to avoid using external database such as MongoDB for storing business network cards (and other users data) and store everything in the ledger instead? I wanna know is it possible to simplify the architecture and use only one datasource (CouchDB, the ledger itself) to store everything. Can I achieve this?C
Hi guys.
Is it possible to avoid using external database such as MongoDB for storing business network cards (and other users data) and store everything in the ledger instead? I wanna know is it possible to simplify the architecture and use only one datasource (CouchDB, the ledger itself) to store everything. Can I achieve this?
Hi guys ,
I want to integrated system/identities/issue api and /wallet/import api , how can i do it ?
@ronaldlong46 see response here -> https://stackoverflow.com/questions/47628303/auto-increment-field-in-composer/47634115#47634115 - best captures what you should be doing - its really a client-side thing, that's passed in deterministically (so all endorsing peers will get the same results, especially in a multi-organisational blockchain network etc etc).
@ApoorvChandurkar as transactions submitted return promises, wouldn't you maintain it at the client side in a record lock (unit of work) as it seems the client needs to know it 'locally' to carry out the next step(s) ?
@ApoorvChandurkar as transactions submitted return promises, wouldn't you maintain it at the client side in a record lock (unit of work) as it seems the client needs to know it 'locally' first, to carry out the next step(s) ?
@poohitan you can use CouchDB instead of MongoDB as a persistent store (using the appropriate loopback connector / configured datasource), however, not sure why you would want to store the cards in the ledger, when you would need them to access the ledger. But you'll know your use case best and wherever you persist them (usually independent of the ledger itself) you would use the appropriate connector.
@zhulg see examples from a client angular application here -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc or this S/Overflow thread answer -> https://stackoverflow.com/questions/48838803/how-to-create-participant-there-identities-via-rest-api-that-generated-by-comp shows the flow of how to do it from the REST APIs using a browser client.
Has joined the channel.
@mahoney1 i want issue api and import api Integrate into one api,
[ ](https://chat.hyperledger.org/channel/composer?msg=32EbieqXQCh3jmiaL) @zhulg see this Chat thread -> https://chat.hyperledger.org/channel/composer?msg=cZ9NiKkseZbWtZpmi for links using JS APIs (incl examples).
@mahoney1 Thank you !
Hi guys, I am new to the compose. How I can connect compose to my locally running fabric network. Or how to generate a card from an existing network so that this can be connected via a composer ?
Has joined the channel.
Hii team.I am working on History of a specific asset #2458.Is there any update??
@javapriyan hi there, welcome ! Usually you can set up a Dev env Fabric (See Step Four here -> https://hyperledger.github.io/composer/latest/installing/development-tools ) ...but if (as you mention) you have an existing Fabric and admin card (for example) for your deployed business network (have you deployed one?), you can install / use local Playground to issue other identities, for that business network, and connect to the same Fabric in playground (see https://hyperledger.github.io/composer/v0.16/playground/id-cards-playground) and download their cards from the Wallet (see panel in the link I provided)
Has joined the channel.
@mahoney1 Thanks for the response. That makes sense. By client side they are talking about on Node.js or literal client side (browser?)
Hello, I want to deploy protection rules on country's data according to country. So, how can I deal with acl for this and what agenda should i choose for different country (means different organisation represent different country or different channel for different country) ? Please help me
Trying to deploy my business network. I am getting "Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (animaltracking-network:0.0.1))
[ ](https://chat.hyperledger.org/channel/composer?msg=7H6bw6Jeg48ph68Kj) @ronaldlong46 yeah
[ ](https://chat.hyperledger.org/channel/composer?msg=WqhFeon4J3tG2Wuec) @devbinu see this S/O answer and thread for discussion https://stackoverflow.com/questions/50680188/organization-based-restrictions-for-participant-identity-issuing-in-hyperledger and my answer here -> https://stackoverflow.com/questions/50537312/can-two-seperate-organizations-on-the-same-business-network-be-distinguished for different examples of how you would distinguish / grant / deny / restrict according to the Org they belong in the business network (running on the blockchain)
@ronaldlong46 see answer here -> https://stackoverflow.com/questions/50322908/hyperledger-composer-v0-19-2-network-start-fails-with-error-lscc-executedeploy - its likely you've got a mismatch (with what you've actually defined in your package.json, vis-a-vis what you submit in your command line sequence)
Hello everyone! Anybody was able to upload a document (.txt or pdf, or any format) to the ledger database using composer playground on bluemix? Is that possible at all? I need to demonstrate that is possible, and I think it is.. but would it be possible on composer playground with just a few commands? or it's too advanced?
@LuisCoelho I wouldn't upload the document itself on Fabric, rather use an IPFS and save hash in Fabric
@ajmeraharsh Thanks for quick response. Is that something I install as a plugin? How that integrates with hyperledger composer?
@LuisCoelho this answer and thread may help you (converting/storing it as a string on an Asset in the ledger) https://stackoverflow.com/questions/47155690/is-there-any-size-limit-for-pdf-in-hyperledger-fabric
@mahoney1 @rthatcher (I sended you full sources in private messages, please see it for details.)
After studying the sources of Composer-cli (https://chat.hyperledger.org/channel/composer?msg=cZ9NiKkseZbWtZpmi)
I created identity and card file. Before creating the card, I copied the certificate and the key from the `~/.composer/client-data/
As Composer acts as a interpreter between simple modeling language to the go chaincode, Where does composer ACL map or has control in hyperledger fabric scope?
@mahoney1 Do you think that composer-playground have access to the filesystem where I have the file I want to upload???
@mahoney1 @ajmeraharsh Is there any FileReader() that I can use in composer-playground to read a file in my computer?
[ ](https://chat.hyperledger.org/channel/composer?msg=jJu79Fm6cGQcSTgmp) @LuisCoelho - the Transaction Processing functions you write in Playground are running in a Docker Container (specifically a 'chaincode' container) so your logic won't be able to access the 'local' client computer. If you want to get some external resource whilst running the logic of a transaction, you can use the Request module and make a 'call out' as described in this doc: https://hyperledger.github.io/composer/latest/integrating/call-out
@rthatcher Thanks! I'll take a look on that!
@rthatcher @mahoney1 guys, no one except you will not help me, all the hope for you
[ ](https://chat.hyperledger.org/channel/composer?msg=4gjRPpszxFDQ6ZFRu) @VadimInshakov - you should not create a card by copying and moving the files around. As a test, you can create a card using the `composer card create` command, and then that card can be imported to the rest server with a POST on http://localhost:3000/api/wallet/import
[ ](https://chat.hyperledger.org/channel/composer?msg=4gjRPpszxFDQ6ZFRu) @VadimInshakov - you should not create a card by copying and moving the files around. As a test, you can create a card using the `composer card export` command, and then that card can be imported to the rest server with a POST on http://localhost:3000/api/wallet/import
[ ](https://chat.hyperledger.org/channel/composer?msg=Pkj2jwdAFWYRgYuPa) @rthatcher yes, sure, but I need to automate this process
[ ](https://chat.hyperledger.org/channel/composer?msg=E5kQXFxbd3HQmpbzT) @mmick Composer now takes advantage of the native NodeJS chaincode since Fabric 1.1. The ACLs run within the Composer business network runtime so it controls access to elements (system, network, business model resources) all from within the business network, whether accessed from transactions, queries, client APIs, REST APIs etc etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=E5kQXFxbd3HQmpbzT) @mmick Composer now takes advantage of the native NodeJS chaincode since Fabric 1.1. The ACLs run within the Composer business network runtime so it controls access to elements (system, network, business model resources) all from within the business network (ie the runtime Composer business network, smart contract + native JS chaincode), whether accessed from transactions, queries, client APIs, REST APIs etc etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=jJu79Fm6cGQcSTgmp) @LuisCoelho We run composer-playground inside docker so local files can be easily passed
[ ](https://chat.hyperledger.org/channel/composer?msg=rwMaem6gWFebBKL2m) @VadimInshakov - this api call I think https://hyperledger.github.io/composer/latest/api/admin-adminconnection#exportcard
[ ](https://chat.hyperledger.org/channel/composer?msg=qhWcqGzW893zHoFkt) @mahoney1 I have a network. Not the admin card. How to generate a one for an existing network ? say, we have an already existing network provisioned and want composer to be attached so that new channels can be maintained from here, rather than going on CLI mode. Is there a way for it ?
@VadimInshakov the general sequence is ```businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user); .... var userCard = new IdCard({...}); userCard.setCredentials(credentials); ... adminConnection.importCard(userCardName, userCard); .... .then(() => { // Connect to the business network using the network admin identity ... businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore }); businessNetworkConnection.connect(userCardName); } ... ``` then you export it using `adminConnection.exportCard( String cardname ) - should the card not actually contain the certificates in the card, an `exportIdentity` will be performed to get the details of the cards - it returns a promise - resolved with an instance of the card, populated
@VadimInshakov the general sequence is ```businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user); .... var userCard = new IdCard({...}); userCard.setCredentials(credentials); ... adminConnection.importCard(userCardName, userCard); .... .then(() => { // Connect to the business network using the network admin identity ... businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore }); businessNetworkConnection.connect(userCardName); } ... ``` then you export it using `adminConnection.exportCard( String cardname )` - should the card not actually contain the certificates in the card, an `exportIdentity` will be performed to get the details of the cards - it returns a promise - resolved with an instance of the card, populated
@VadimInshakov the general sequence is ```businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user); .... var userCard = new IdCard({...}); userCard.setCredentials(credentials); ... adminConnection.importCard(userCardName, userCard); .... .then(() => { // Connect to the business network ... businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore }); businessNetworkConnection.connect(userCardName); } ... ``` then you export it using `adminConnection.exportCard( String cardname )` - should the card not actually contain the certificates in the card, an `exportIdentity` will be performed to get the details of the cards - it returns a promise - resolved with an instance of the card, populated
@VadimInshakov the general sequence is ```businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user); .... var userCard = new IdCard({...}); userCard.setCredentials(credentials); ... adminConnection.importCard(userCardName, userCard); .... .then(() => { // Connect to the business network ... businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore }); businessNetworkConnection.connect(userCardName); } ... ``` then you export it using `adminConnection.exportCard( String cardname )` - should the card not actually contain the certificates in the card, an `exportIdentity` will be performed to get the details of the cards (it does an `card.setCredentials` in this instance) - it returns a promise - resolved with an instance of the card, populated
@VadimInshakov the general sequence is ```businessNetworkConnection.issueIdentity(NS + '#' + userData.id, userData.user); .... var userCard = new IdCard({...}); userCard.setCredentials(credentials); ... adminConnection.importCard(userCardName, userCard); .... .then(() => { // Connect to the business network ... businessNetworkConnection = new BusinessNetworkConnection({ cardStore: cardStore }); businessNetworkConnection.connect(userCardName); } ... ``` then you export it using `adminConnection.exportCard( String cardname )` - should the card not actually contain the certificates in the card, an `exportIdentity` will be performed to get the details of the cards (it does a `card.setCredentials` in this instance) - it returns a promise - resolved with an instance of the card, populated
@rthatcher @mahoney1 great, I try it right now!
@javapriyan yes, so examples are here -> if you've built a single-org - check out 'Step Three' onwards in this tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org - if you've built multi-org Fabric (different peers, in each org) - then try this tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org (you build a different common connection profile - which is used in any of the cards you use to consume the business network on the blockchain). Your Fabric CA will issue the admin identity eg. `composer identity request -c PeerAdmin@my-network -u admin -s adminpw -d admin` and (as shown in the tutorials) you create the card from there (with the new connection profile that you created for your custom Fabric environment).
@javapriyan yes, so examples are here -> if you've built a single-org - check out 'Step Three' onwards in this tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org - if you've built multi-org Fabric (different peers, in each org) - then try this tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org (you build a different common connection profile - which is used in any of the cards you use to consume the business network on the blockchain). Your Fabric CA will issue the admin identity eg. `composer identity request -c PeerAdmin@my-network -u admin -s adminpw -d admin` and (as shown in the tutorials) you create the card from there (with the new connection profile that you created for your custom Fabric environment) with the key/certificate combo.
@rthatcher @mahoney1 it works, thank you guys, you awesome!
[ ](https://chat.hyperledger.org/channel/composer?msg=toyf7N7rK53fYErBY) @asmitapatil not presently, apart from what's captured in comments there.
How to see how many peers exist in a demo network? for instance, if someone creates a perishable-network, how do I see the peers involved?
Has joined the channel.
@LuisCoelho easiest way would be to examine a `connection.json` from a business network card of that network - its the wallet for that card on disk.Can grep the peers defined.
@mahoney1 awesome that work. My version was something weird like 0.0.2-deploy160 Thanks!
@channel Thought will share this, the clients always ask for some a visual representation of the models we develop in composer and found this cool plugins and wanted to try out. https://medium.com/@vkrishnan.ny/creating-an-uml-diagram-from-hyperledger-composer-model-e2ce42ad257 , appreciate feedbacks.
@vkblue That's awesome!
[ ](https://chat.hyperledger.org/channel/composer?msg=YDb6EowTiouAjHFh7) @ronaldlong46 Thanks
Can anyone point me in the right direction for having a user system with composer? What I'n trying to create is where user accounts are connected to a specific participant.
I've used Passport.js with the composer-rest-server but unfortunately it appears to just be raw access to the API and not able to connect to certain participants.
Has joined the channel.
@mahoney1 Thanks for the help. Appreciating the help. Will try them
@mahoney1 Appreciating your help. Will try them
Anyone knows how can we start fabric using two orderers? And how can we check if both are working or not?
Anyone knows how can we start fabric using two orderers? How can second orderer will join the channel? And how can we check if both are working or not?
[ ](https://chat.hyperledger.org/channel/composer?msg=G7ijdMPWGEitRTaDk) @vkblue nice one! thanks for sharing mate.
Has joined the channel.
Hi all, just started looking into Hyperledger Fabric & Composer ... great stuff so far :-) Managed to get dev networks up and looked and played around with the samples. I noticed something in the examples model & logic coding which I found a bit 'weird' though ... In the model files some ENUM are defined .... but in the logic methods those values are hard-coded ... which seems a recipe for unwanted typo errors etc ... Isn't there a way to reference those defined enum in the logic code ?
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=D52XokqaMdDtbTBeL) @mahoney1 Are fabric Node SDK is different from native nodejs chaincode? Would you please link me to nodejs chaincode documentation?
Has joined the channel.
Hi, I am new to this chat and Hyperledger.
Are there any coders and UI Developers interested to collaborate on an exciting project?
I have entire business logic but need help with coding and making a functional UI, as first step. Any suggestions are most welcome. Thanks.
Has joined the channel.
Hii, how to create own Peer node. What I find is the peeradmin is provided with the dev installation.
Has joined the channel.
Has joined the channel.
Hello, I have been working on a project on Hyperledger Fabric application development with composer which I have to submit to my college. I completed the development of application. So, now I need to present it as a fully functional real application. What I mean by that is, running the same application on two or more PC as organizations and participants, and showing the interaction. I am unable to find dependable solution on how to do so. Looking at my need, is starter plan the service that I need to take or is it not the exact service that will address my issue . If yes then how can I do so? What are the tools that the organizations and participants need to have? If no how can I achieve my goal with any other tool or method?
[ ](https://chat.hyperledger.org/channel/composer?msg=tJu9KQB7JYAadFbz5) @kaushalandpoudel What do you mean by 'dependable solution'? Under your project, what have you developed so far?
@Event how do i create my own peer node???
@sine99 have you checked on youtube? Not kidding you could find remarkable answers sometimes, and for free.
I am a newbie.... got confused completely after watching lots of videos. On ethereum things were very straightforward. Here I got confused with different kinds of nodes.
@Event I am a newbie.... got confused completely after watching lots of videos. On ethereum things were very straightforward. Here I got confused with different kinds of nodes.
Besides, I wanted to know how IBM charges for connecting to their main net?
@sine99, I am a newbie same as you, my friend.
@Event , What I meant by dependable solution is that, I could only find some solution on the internet but I couldn't find people who have used that method to assure whether it works or not. Regarding my project, I have completed the coding part including logic for my application, model files, and permission file.
@rthatcher could u please point me to the admin/main dev of the hyperledger #fabric channel ? i am currently unable to discern the person to whom i am to address my question to.. Thanks in advance :grinning:
unabletoLaunchplaygroundlocally.png
Any one have encountered this before ?
Screenshot from 2018-06-25 11-22-49.png
Removing ./compose helped me
Removing ~/.composer helped me
[ ](https://chat.hyperledger.org/channel/composer?msg=3rrj5Q5BssBGHH2ph) @ApurvTandon - sorry, I don't know the name. But there are #fabric channels, so maybe you want a specific channel.
@rthatcher Can you please tell me that how can I check whether my both orderers are working or not?
[ ](https://chat.hyperledger.org/channel/composer?msg=XSX5pXjuNMJENdymq) @HoneyShah - this sounds like a question for one of the #fabric channels. But I guess I would check the logs of the Docker containers, and as far as I know if you are using more than one Orderer you use Kafka, and you should have an odd number of Orderers, not 2.
Hey, are there any best practices on working with big decimal numbers (up to 18 decimal places). I saw that it isn't possible to include a javascript library like BigNumber, any workarounds?
Has joined the channel.
@rthatcher *Odd* numbers? And does it make any difference?
does it help in some kind of leader voting?
Has joined the channel.
@rthatcher Thanks for your response. Previously I have integrated system with 2 orderers but the problem was when I stop the orderer container which runs on 7050 port, I can't make any transaction. It says me that "service unavailable" but when I stop other container (which is running on port other than 7050) all works fine. Now I have made 3 oderers but I am facing same as with 2 orderers. What should be the reason behind this? I have checked logs of peer and orderes but there is nothing like error.
@rthatcher Thanks for your response. Previously I have integrated system with 2 orderers but the problem was when I stop the orderer container which runs on 7050 port, I can't make any transaction. It says me that "service unavailable" but when I stop other container (which is running on port other than 7050) all works fine. Now I have made 3 oderers but I am facing same as with 2 orderers. What should be the reason behind this? I have checked logs of peer and orderes but there is nothing like error. Can you please guide me on this?
@rthatcher Thanks for your response. Previously I have integrated system with 2 orderers but the problem was when I stop the orderer container which runs on 7050 port, I can't make any transaction. It says me that "service unavailable" but when I stop other container (which is running on port other than 7050) all works fine. Now I have 3 oderers but I am facing same as with 2 orderers. What should be the reason behind this? I have checked logs of peer and orderes but there is nothing like error. Can you please guide me on this?
@rthatcher Thanks for your response. Previously I have integrated system with 2 orderers but the problem was when I stop the orderer container which runs on 7050 port, I can't make any transaction (I was testing it using rest server ). It says me that "service unavailable" but when I stop other container (which is running on port other than 7050) all works fine. Now I have 3 oderers but I am facing same as with 2 orderers. What should be the reason behind this? I have checked logs of peer and orderes but there is nothing like error. Can you please guide me on this?
I have 3 zookeepers and 4 kafka borkers.
I have 3 zookeepers and 4 kafka borkers. I can share you the code if you can look into
I have 3 zookeepers and 4 kafka borkers. I can share you the code if you can look into it.
[ ](https://chat.hyperledger.org/channel/composer?msg=Jp5DCadYsrocCgTiF) @HoneyShah - this is definately a #Fabric channel problem, not a Composer problem :-)
Hello all,
I have fabric with 3 orderers but the problem is when I stop the orderer container which runs on 7050 port, I can't make any transaction. It says me that "service unavailable" but when I stop other container (which is running on port other than 7050) all works fine. What should be the reason behind this? I have checked logs of peer and orderes but there is nothing like error. Can anyone please help me on this?
I have 3 zookeepers and 4 kafka borkers.
logs when I start the fabric:
1. peer logs : https://pastebin.com/hPhKu3QB
2. orderer0 logs: https://pastebin.com/57aYAeW2
3. orderer1 logs: https://pastebin.com/PzLKurE2
2. orderer2 logs: https://pastebin.com/5D4shcJN
Note: I am testing it using composer tool
Hello all,
I have fabric with 3 orderers but the problem is when I stop the orderer container which runs on 7050 port, I can't make any transaction. It says me that "service unavailable" but when I stop other container (which is running on port other than 7050) all works fine. What should be the reason behind this? I have checked logs of peer and orderes but there is nothing like error. Can anyone please help me on this?
My network is with 1 peer, 1 CA and 3 orderers
I have 3 zookeepers and 4 kafka borkers.
logs when I start the fabric:
1. peer logs : https://pastebin.com/hPhKu3QB
2. orderer0 logs: https://pastebin.com/57aYAeW2
3. orderer1 logs: https://pastebin.com/PzLKurE2
2. orderer2 logs: https://pastebin.com/5D4shcJN
Note: I am testing it using composer tool
Has joined the channel.
Guys I have a composer question. When using
```
Query()
```
how do I specify parameters for a query?
Guys I have a composer question. When using ```Query()``` how do I specify parameters for a query?
When trying to start a business network, the composer often(not always) show a error```
``` `Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT`.```
``` When I check the `peer` logs, the error is `Attempting build with image hyperledger/fabric-ccenv:x86_64-1.1.0. stopping due to error while launching: timeout expired while starting chaincode...`. ```
``` I use the fabric-dev servers. Could anybody please tell me the root cause? Thank you very much.
When trying to start a business network, the composer often(not always) show a error```
``` Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT.```
``` When I check the `peer` logs, the error is `Attempting build with image hyperledger/fabric-ccenv:x86_64-1.1.0. stopping due to error while launching: timeout expired while starting chaincode...`. ```
``` I use the fabric-dev servers. Could anybody please tell me the root cause? Thank you very much.
When trying to start a business network, the composer often(not always) show a error```
Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT.
``` ```
``` When I check the `peer` logs, the error is `Attempting build with image hyperledger/fabric-ccenv:x86_64-1.1.0. stopping due to error while launching: timeout expired while starting chaincode.... ```
``` I use the fabric-dev servers. Could anybody please tell me the root cause? Thank you very much.
When trying to start a business network, the composer often(not always) show a error```
Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT.
``` ```
When I check the `peer` logs, the error is `Attempting build with image hyperledger/fabric-ccenv:x86_64-1.1.0. stopping due to error while launching: timeout expired while starting chaincode....**
```
``` I use the fabric-dev servers. Could anybody please tell me the root cause? Thank you very much.
When trying to start a business network, the composer often(not always) show a error```
Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT.
``` ```
When I check the `peer` logs, the error is `Attempting build with image hyperledger/fabric-ccenv:x86_64-1.1.0. stopping due to error while launching: timeout expired while starting chaincode....**
```
``` I use the fabric-dev servers. Could anybody please tell me the root cause? Thank you very much.
When trying to start a business network, the composer often(not always) show a error```
Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT.
```
When I check the `peer` logs, the error is `Attempting build with image hyperledger/fabric-ccenv:x86_64-1.1.0. stopping due to error while launching: timeout expired while starting chaincode....**
```
``` I use the fabric-dev servers. Could anybody please tell me the root cause? Thank you very much.
When trying to start a business network, the composer often(not always) show a error```
Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT.
```
When I check the peer logs, the error is ````Attempting build with image hyperledger/fabric-ccenv:x86_64-1.1.0. stopping due to error while launching: timeout expired while starting chaincode....
```
I use the fabric-dev servers. Could anybody please tell me the root cause? Thank you very much.
When trying to start a business network, the composer often(not always) show a error```
Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT.
```
When I check the peer logs, the error is ```Attempting build with image hyperledger/fabric-ccenv:x86_64-1.1.0. stopping due to error while launching: timeout expired while starting chaincode....
```
I use the fabric-dev servers. Could anybody please tell me the root cause? Thank you very much.
When trying to start a business network, the composer often(not always) show a error```Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT.
```
When I check the peer logs, the error is ```Attempting build with image hyperledger/fabric-ccenv:x86_64-1.1.0. stopping due to error while launching: timeout expired while starting chaincode....
```
I use the fabric-dev servers. Could anybody please tell me the root cause? Thank you very much.
When trying to start a business network, the composer often(not always) show me a error```Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT.
```
When I check the peer logs, the error is ```Attempting build with image hyperledger/fabric-ccenv:x86_64-1.1.0. stopping due to error while launching: timeout expired while starting chaincode....
```
I use the fabric-dev servers. Could anybody please tell me the root cause? Thank you very much.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=zwe5KBoQs7XxeAiwn) @cal97g - have you seen the API Reference Documents in the Composer Documentation? The buildQuery and Query() methods are covered with examples at the bottom of this doc: https://hyperledger.github.io/composer/latest/api/runtime-api
But the short answer is: ` return query('Q1', { inputValue: 'blue' }) `
@mahoney1 I can't seem to find connection.json file
[ ](https://chat.hyperledger.org/channel/composer?msg=bfbfREysfwYvj37xo) @mengluo668 - the fact that this happens only sometimes suggests that your configuration is OK, but that due to performance or network reasons the process just can't complete in time. A few ideas:
1. I would ask if you have removed all your old test Docker Container and Docker Images from previous testing, see this Stack Overflow Q/A
https://stackoverflow.com/questions/50966397/composer-error-8-resource-exhausted-network-overload
2. Do you have enough memory and cpu for your environment.
3. Please look at this section in the Knowledge Wiki which goes through Composer Network Start issues, especially the paragraph about *CORE_CHAINCODE_STARTUPTIMEOUT=1200s*
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
4. In the connection.json for your PeerAdmin card you will see 4 timeouts (3 for the Peer and 1 for the Order) that are set for 300 seconds - I would increate those to 1200 seconds too.
[ ](https://chat.hyperledger.org/channel/composer?msg=mqW5ffC7c3LFdfXzh) @LuisCoelho - the connection.json for the cards in your wallet on the file system will usually be found in a location such as:
`~/.composer/cards/admin@tutorial-network/connection.json`
Does that answer the question?
@mahoney1 Yes, thank you :thumbsup:
@rthatcher thanks. Awarded answer on Stackoverflow too.
Whenever I create a network on http://composer-playground.mybluemix.net , where can I get the associated API?
Is it possible at all?
@rthatcher @ajmeraharsh @mahoney1 Can I access the API associated with a network generated on http://composer-playground.mybluemix.net
@LuisCoelho I'm not completely sure, but as far as I know, to get the API, you need to have a local installation of Composer, and then run the composer-rest-server tool.
@LuisCoelho no. You have to generate a binary and then generate the API yourself.
@LuisCoelho see https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
@pedromlcosta Obrigado!
De nada :)
@cal97g so the idea is to export the .bna archive to my local dev environment and then get access to teh API from there?
@LuisCoelho yep!
Is composer 19.x is compatible with recently launched hyperledger fabirc 1.2.0-rc1 ?
:shrug_tone2:
[ ](https://chat.hyperledger.org/channel/composer?msg=rT4hiBGyHMk9YPZzE) @LuisCoelho - Composer Playground on Bluemix is a standalone environment with a simulated Hyperledger Fabric running in the localstorage of your browser - so there is no API access to it, just the access you have through your browser. If you install playground locally you have the option to carry on with the 'Web Profile' (simulated Fabric) or the option to connect to a "Real Fabric". If you want to access an API to your Business Network, you need to deploy it to a Real Fabric, and then you can access it with a Javascript API, or you can generate and use a REST api using the npm module `composer-rest-server` .
[ ](https://chat.hyperledger.org/channel/composer?msg=rT4hiBGyHMk9YPZzE) @LuisCoelho - Composer Playground on Bluemix is a standalone environment with a simulated Hyperledger Fabric running in the localstorage of your browser - so there is no API access to it, just the access you have through your browser. If you install playground locally you have the option to carry on with the 'Web Profile' (simulated Fabric) or the option to connect to a "Real Fabric". If you want to access an API to your Business Network, you need to deploy it to a Real Fabric, and then you can access it with a Javascript API, or you can generate and use a REST api using the npm module `composer-rest-server` .
BTW - if you are doing any serious work in Playground I recommend that you periodically export your BNA as a backup, or copy/paste the contents of your model, logic etc to filesystem files.
[ ](https://chat.hyperledger.org/channel/composer?msg=Hj5GLSkwh2p3ASTgJ) @HoneyShah - no Composer 0.19.x supports Fabric 1.1.0 only.
I have a query where I need to find all the children of a parent. This is query I have written but it returns no results.
```
query selectServersByOrder {
description: "Selects servers by parent order."
statement:
SELECT org.gtt.consensus.Server
WHERE(order.order_id == _$this_order)
}
```
I have a query where I need to find all the children of a parent. This is query I have written but it returns no results.
```
query selectServersByOrder {
description: "Selects servers by parent order."
statement:
SELECT org.bus.consensus.Server
WHERE(order.order_id == _$this_order)
}
```
server has
```
--> Order order
```
order has
```
o String order_id
```
[ ](https://chat.hyperledger.org/channel/composer?msg=Ac4DLyw4jSrasMDrg) @cal97g - queries do not resolve the relationships to the "child" objects, so you can only query the relationship field itself. So your query would be something like this:
` SELECT org.bus.consensus.Server WHERE (order == _$this_order) `
and the parameter you enter or pass to the Query would be something like this:
`resource:org.bus.consensus.Order#PO123` where PO123 is an example of the order_id
thanks man
[ ](https://chat.hyperledger.org/channel/composer?msg=jS4RxaKLLGvgQcR5v) @rthatcher So basically queries are simplest as possible.. You query an entity at a time.. and then it's up to the developer to compose the results and make more queries with extracted values from previous queries...?
[ ](https://chat.hyperledger.org/channel/composer?msg=piu65v5gFEExM4MLP) @LuisCoelho - yes, you query one registry at a time. The State Database used on the Fabric is CouchDB so there are no Joins such as you might see in a relational database.
@rthatcher thanks very much, the options are very useful, especially option 4. Thank you very much.
3d
How we can refresh expired tokens with JWT REST?
All steps of creation REST with JWT described fine here: https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
But there is nothing said about refresh tokens
[ ](https://chat.hyperledger.org/channel/composer?msg=qzDNQ6c6E73X64A77) @kaushalandpoudel I see. so what does your application do?
Has joined the channel.
Does anyone know the environment variable configuration ( export COMPOSER_PROVIDERS {} ) for using passport-http-bearer as the authentication scheme?
Does anyone know the environment variable configuration (export COMPOSER_PROVIDERS {}) for using passport-http-bearer as the authentication scheme?
Has joined the channel.
Following composer Dev tutorial, “npm start” not working when launching Angular app. Start script not there, just wondering why? Every other step of the way is correct.
!Fixed: I was in the wrong directory :face_palm: --> Following composer Dev tutorial, “npm start” not working when launching Angular app. Start script not there, just wondering why? Every other step of the way is correct.
when I call "composer network start --networkName mynetwork --networkVersion 0.0.1 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw && composer card import --file ./admin@mynetwork.card && composer network list --card admin@mynetwork" after I installed the network successfully, I receive "✖ List business network from card admin@mynetwork
Error trying to ping. SyntaxError: Unexpected end of JSON input
Error: Error trying to ping. SyntaxError: Unexpected end of JSON input
". I also receive the same result when I try following command: composer network ping -c admin@mynetwork
Error: Error trying to ping. SyntaxError: Unexpected end of JSON input
Command failed
I'm currently running a network on two different computers. When I used a sample network which was running only on one computer, I didn't have this issue.
also I adjusted the createPeerAdminCard.sh to the instances of my network and their ports.
Unfortunately it doesn't tell me which JSON file, so this error message is a little confusing.
composer -v
v0.19.8
I'm using docker images with TAG latest. Aren
Are they compatible with composer v0.19.8?
Has joined the channel.
Has joined the channel.
Has joined the channel.
hello, I have a question about `composer-rest-server`. that is how to get current identities after participant upload a card? Now, I can login composer rest server by `github` account, i can upload my card as well. but I don't know how to get the identity bind to the participant. It seems there is no such API in composer rest server. When i tried to get identities by `/system/identities`, it returned me all the identities. so does anybody know how to get the current identity or current participant information after user upload their cards? BTW, is there any guidelines about how to extend composer-rest-server APIs
hello, I have a question about `composer-rest-server`. that is how to get current identities after participant upload a card? Now, I can login composer rest server by `github` account, i can upload my card as well. but I don't know how to get the identity bind to the participant. It seems there is no such API in composer rest server. When i tried to get identities by `/system/identities`, it returned me all the identities. so does anybody know how to get the current identity or current participant information after user upload their cards? *BTW*, is there any guidelines about how to extend composer-rest-server APIs? Thank you very much.
Has joined the channel.
Hi , I am facing this issue .. could you please help .. its urgent and needs to be resolved as soon as possible ..
rk@ip-xxxxxxx:~/tutorial-network$ composer archive create -t dir -n .
internal/modules/cjs/loader.js:596
throw err;
^
Error: Cannot find module './api'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:594:15)
at Function.Module._load (internal/modules/cjs/loader.js:520:25)
at Module.require (internal/modules/cjs/loader.js:650:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object.
Has joined the channel.
Composer Network start not working in V0.19✖ Starting business network definition. This may take a minute... Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN npm ERR! errno EAI_AGAIN npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443 npm ERR! A complete log of this run can be found in: npm ERR! /root/.npm/_logs/2018-06-26T06_59_58_122Z-debug.log " Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN npm ERR! errno EAI_AGAIN npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443 npm ERR! A complete log of this run can be found in: npm ERR! /root/.npm/_logs/2018-06-26T06_59_58_843Z-debug.log " Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN npm ERR! errno EAI_AGAIN npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443 npm ERR! A complete log of this run can be found in: npm ERR! /root/.npm/_logs/2018-06-26T06_59_57_793Z-debug.log " Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN npm ERR! errno EAI_AGAIN npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443 npm ERR! A complete log of this run can be found in: npm ERR! /root/.npm/_logs/2018-06-26T06_59_58_597Z-debug.log
Has joined the channel.
@dannychen see https://stackoverflow.com/questions/49652193/hyperledger-composer-v1-1unable-to-instantiate-chaincode
@RakeshKumarzs looks like you have installed node as root user. Best option is to re-install, but use `nvm` to manage your node installations which makes it easy to use node without installing as root.
@RakeshKumarzs looks like you have installed node as root user. Best option is to re-install, but use `nvm` to manage your node installations which makes it easy to use node without installing as root. refer to https://github.com/creationix/nvm for how to install and use nvm. Also make sure you uninstall the root installed version of node first
is there a way to prune/archive the data on the ledger in case my data is increasing tremendously? Also will need some artifacts that how much data load has been tested on Hyperledger
@Varun2887 I would suggest asking this on one of the other hyperledger fabric channels. I believe that there has been discussion on providing the ability to be able to archive data but I don't know any more than that
@christian3042 are you using hyperledger fabric images tagged as latest ? If so it looks like they are pointing to fabric 1.2rc1. Composer doesn't support this version of fabric. Composer 0.19 only supports fabric 1.1
[ ](https://chat.hyperledger.org/channel/composer?msg=kGcpnrtZzGBEjfMyk) @davidkel okay , could you please help me with the commands to remove the root installed node
[ ](https://chat.hyperledger.org/channel/composer?msg=C49Zf9rqanJpXHGhr) @mengluo668 - the short answer is to try `http://localhost:3000/api/system/ping` - which will show the Partitipant and the Identity
@rthatcher thank you very much. Tell the truth, I don't believe the composer-rest-server is good enough, i am really want to extend it. :grinning: actually, i am already start to extend now. Do you have any suggestion?
Has joined the channel.
@mengluo668 Cool! Make it better
[ ](https://chat.hyperledger.org/channel/composer?msg=ZsKQQqYxmXFW6dagc) @davidkel Thank you so much! Unfortunately, it is still out of work. When I change the **NPMRC location**, it still report the same problem. I am checking my firewall setting now. :)
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=S5g2rqmHyvoN3PqZS) @mengluo668 - we have a new feature for allowing the REST server to be customised, BUT at the moment it does not have authentication/multi-user. The doc should be interesting for you though: https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server
I would also suggest searching this channel and Stack Overflow as other community members have been 'chatting' about extending the rest server.
Has joined the channel.
**JWT REST**
Why I can get access token in cookies via Postman, but when I do it via Nodejs Request module I can't get cookies?
I send this:
```
let response: any = request({
method: 'GET',
url: NETWORK_API_ADDRESS+'/auth/jwt/callback',
headers: {'Authorization': 'Bearer '+bearer}
})
console.log(response.headers)
```
In logs I see only `host:
**JWT REST**
Why I can get access token in cookies via Postman, but when I do it via Nodejs Request module I can't get cookies?
I send this:
```
let response: any = request.get(NETWORK_API_ADDRESS+'/auth/jwt/callback', {
'auth': {
'bearer': bearer
}
})
console.log(response.headers)
```
In logs I see only
```
{ host: '
what all are possible data types in cto? `String`, `Double`? others?
`Integer` and?
I updated my question. @rthatcher help me, please
I updated my question. @rthatcher help me, please: https://chat.hyperledger.org/channel/composer?msg=CPHHpgaz7H9Fvu3Tp
hey guys, what are the files linked to orderer?
[ ](https://chat.hyperledger.org/channel/composer?msg=6Bd7MTFJHZmLm4Rfn) @Varun2887 It mapped to js data types
My peers are trying to connect to orderer.example, but my orderer is orderer.college
[ ](https://chat.hyperledger.org/channel/composer?msg=MKhWDs2MtBMrtERXD) @lipoplus see configtx.yaml and your docker compose files
I have already see, and all parameters are with the right name
@VadimInshakov
share it
The error or the files ?
your configtx and docker compose file
[ ](https://chat.hyperledger.org/channel/composer?msg=rEC2699PwFmWMune2) @lipoplus - is your network based on the byfn network? - you will also have to edit the script.sh file
Has joined the channel.
Hello, I'm trying to contribute a sample network to the composer-sample-networks repository. I forked/cloned the repo, added my sample network, but I'm having an error when I run `lerna bootstrap`. Someone could help me?
Has joined the channel.
Hi all,
I am using this hyperledger composer tutorial : https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
when i try to execute './byfn.sh -m generate', getting an error Failed to generate orderer genesis block...
Clipboard - June 26, 2018 5:45 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=HJJ5jT4cxbfaTewWo) How to solve this??
[ ](https://chat.hyperledger.org/channel/composer?msg=88fzjNuBS8RT6pkYw) @AMIL_SAJEEV can u show your configtx.yaml
[ ](https://chat.hyperledger.org/channel/composer?msg=88fzjNuBS8RT6pkYw) @AMIL_SAJEEV can u show your configtx.yaml?
[ ](https://chat.hyperledger.org/channel/composer?msg=uTiZxsr2f2SPoxbzw) @waleed how can i show that........ i didnt see an option for uploading text file............ which portion of config.tx you want to see? i will upload the screen shot
[ ](https://chat.hyperledger.org/channel/composer?msg=uTiZxsr2f2SPoxbzw) @waleed how can i show that........ i didnt see an option for uploading text file............ which portion of config.tx you want to see? i will upload the screen shot.
[ ](https://chat.hyperledger.org/channel/composer?msg=aX4sZ4XNiivBAAWQM) @AMIL_SAJEEV copy & pase ?
[ ](https://chat.hyperledger.org/channel/composer?msg=aX4sZ4XNiivBAAWQM) @AMIL_SAJEEV copy & paste ?
[ ](https://chat.hyperledger.org/channel/composer?msg=TGfLvKKhhGcPu8pNs) @waleed I tried...... but msg is too long
[ ](https://chat.hyperledger.org/channel/composer?msg=mn2FLXBcZq9ra3rRL) @AMIL_SAJEEV put it here then, save it and send the url
[ ](https://chat.hyperledger.org/channel/composer?msg=mn2FLXBcZq9ra3rRL) @AMIL_SAJEEV put it here then, save it and send the url https://hastebin.com/
[ ](https://chat.hyperledger.org/channel/composer?msg=mn2FLXBcZq9ra3rRL) @AMIL_SAJEEV put it here then, save it and send the url: https://hastebin.com/
[ ](https://chat.hyperledger.org/channel/composer?msg=WSbdtLDbb4y6cMdAY) @waleed https://hastebin.com/efogocenir.coffeescript
HELP!
https://chat.hyperledger.org/channel/composer?msg=CPHHpgaz7H9Fvu3Tp
[ ](https://chat.hyperledger.org/channel/composer?msg=Q6t6FjTLWG5D6x6Ks) @AMIL_SAJEEV your config looks good.
[ ](https://chat.hyperledger.org/channel/composer?msg=qQDpgfy9bFrG4Qj2R) @waleed Okey. from where this error getting, any idea??
[ ](https://chat.hyperledger.org/channel/composer?msg=SmeQwYveKuJP7oFnh) @AMIL_SAJEEV the error happens when
`configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/genesis.block` is executed
[ ](https://chat.hyperledger.org/channel/composer?msg=SmeQwYveKuJP7oFnh) if I work with this : https://hyperledger-fabric.readthedocs.io/en/latest/build_network.html# . then all artifacts wil generate.
I need to follow this : https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Any idea to solve this error?
I have configured my Rest API according to the below tutorial with Google
https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
I am able to POST/GET requests using the default identity defined in Wallet>
Could you please suggest how would I allow or pass the token(Gmail account) to authenticate from my Web application build on Angular (localhost:4200)
[ ](https://chat.hyperledger.org/channel/composer?msg=vRzXrSSCBK4D6osgi) @prmdmshra follow this: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
[ ](https://chat.hyperledger.org/channel/composer?msg=sJriPhcuSzr9N4MEm) @waleed when this command executed, channelId is not required, right?
the dafault one will be taken. right?
[ ](https://chat.hyperledger.org/channel/composer?msg=BsEjDQcfMYth5rzqF) @AMIL_SAJEEV right
[ ](https://chat.hyperledger.org/channel/composer?msg=FWdLWSTSAN4bXnioS) @waleed okey. all are seems right. then what is the issue?:disappointed:
[ ](https://chat.hyperledger.org/channel/composer?msg=bFE43EzNcYxePZWRd) @AMIL_SAJEEV which fabric version do u use? and do u use the right binaries for this version?
[ ](https://chat.hyperledger.org/channel/composer?msg=GwQcX6dAsd3GRBgLx) @waleed i think right versios are used. i just follow the tutorial : https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
download platform binaries by , 'curl -sSL https://goo.gl/6wtTN5 | bash -s 1.1.0'
request
[ ](https://chat.hyperledger.org/channel/composer?msg=GQvyZnqF8wfMzdCiP) @AMIL_SAJEEV - we are working on a fix for the Tutorial Doc - will post here later today
[ ](https://chat.hyperledger.org/channel/composer?msg=LCbPZFmsyDvauExaP) @rthatcher Okey. ThankYou:relaxed:
If u don't mind, can you just notify me when it fixed.
[ ](https://chat.hyperledger.org/channel/composer?msg=LCbPZFmsyDvauExaP) @rthatcher Okey. ThankYou:relaxed:
If you don't mind, can you just notify me when it fixed.
[ ](https://chat.hyperledger.org/channel/composer?msg=GwQcX6dAsd3GRBgLx) @waleed Thankyou:slight_smile:
Clipboard - June 26, 2018 9:12 AM
https://chat.hyperledger.org/channel/composer?msg=CPHHpgaz7H9Fvu3Tp
Code and error message
./byfn.sh -m generate
Failed to generate orderer genesis block..
anyone having same issue?
@rthatcher help! https://chat.hyperledger.org/channel/composer?msg=CPHHpgaz7H9Fvu3Tp
hi people, i seem to have very interesting issue;
I just installed `composer-cli` but my ubuntu machine can not find it,
instead it finds `composer`
when i try `composer-cli --version`, I get `composer-cli: command not found`
but when i try `composer --version`, I get `v0.19.10`
this is a problem because I cant start Fabric now
sorry if this seems trivial to you, should i somehow rename `composer` to `composer-cli` or change `.sh` files for starting fabric
@skarlekar - sounds like an interesting project. We do not have a tutorial for passport-local - but this post in Stack Overflow may help https://stackoverflow.com/questions/50349925/composer-rest-server-with-passport-local-strategy/50354914
- please post a solution when you get it working :-)
FYI a Community member has also posted this for Passport JWT: https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
@VadimInshakov - sorry I don't know JWT or have a test setup. Like you I use Postman or Poster for testing.
[ ](https://chat.hyperledger.org/channel/composer?msg=jRmTRToA6KBnTwyHD) @adokce what is wrong with that? composer-cli is the node package and composer is just the command :)
It looks like this wasn't a problem. I was using Google Cloud's platform micro instance and commands wouldn't execute. Npm didn't want to install composer-cli properly or any other composer's tool. I launched bigger instance and everything works now.
Sorry for distraction.
@rthatcher ok, but maybe you know anyone who can answer this question?
Has joined the channel.
Has joined the channel.
@LuisCoelho @AMIL_SAJEEV @waleed - a script has been changed by the Fabric team to change the default version of the Binaries of Cryptogen and ConfixTx, and it turns out that there is a bug in the script.
In the *Multi-Org Turorial - At Step One - Bullet Point 2* replace the curl comand with these instructions:
The workaround from a Composer perspective is to download the script from the URL below, and change the default version on Line 9:
`export VERSION=1.1.0`
https://github.com/hyperledger/fabric/blob/master/scripts/bootstrap.sh
- make sure this scipt has eXecute priv set, and then run the script without any parameters. e.g. `./bootstrap.sh`
Resume the Multi-Org tutorial
Hey guys , how can i chande the orderer in my channel
*change
i'am working with the peer binaries and gives this erro: Fatal error when initializing core config : error when reading core config file: Unsupported Config Type ""
how can i solve this ?
[ ](https://chat.hyperledger.org/channel/composer?msg=wnoJS8cS8iLqgtpxW) @lipoplus - this sounds like a Fabric question rather than a Composer question - I would suggest asking in one of the #fabric channels
Hello. I have a question regarding connection profile json. Does the order the peers appear for a channel matter? We would like organisations to use their own peers, where possible, before attempting to use other organistions peers.
@julian under what circumstances are you thinking you would want an organisation to use it's own peers ?
@julian under what circumstances are you thinking you would want an organisation to use it's own peers first ?
Has joined the channel.
Did endpoints break in the newest update?
Any information beside the general article below regarding the private transaction usage or support of it on Composer?
https://www.ibm.com/developerworks/cloud/library/cl-blockchain-private-confidential-transactions-hyperledger-fabric-zero-knowledge-proof/index.html
I'm trying to figure out how to host the Composer REST server externally from the fabric server, i've noticed the business cards have the server address in them, but they are always localhost. How does one change what is written out in the business cards so I can connect to my fabric instance remotely?
@ScottMorris Whoever owns the fabric server needs to create an appropriate connection profile to describe it, for example they need to provide the urls for the peers and orderer etc. You then take that connection profile and create network cards from that
@ScottMorris Whoever owns the fabric server needs to create an appropriate connection profile to describe it, for example they need to provide the urls for the peers and orderer etc. You then take that connection profile (add the appropriate client section to it for their organisation)and create network cards from that
@ScottMorris Whoever owns the fabric server needs to create an appropriate connection profile to describe it, for example they need to provide the urls for the peers and orderer etc. You then take that connection profile (add the appropriate client section to it for your organisation) and create network cards from that
For example the tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org provides details of creating that connection profile, but you would need to replace localhost with the appropriate hostnames for the fabric network
I'm getting this error on the newest update ` "Maximum call stack size exceeded",`
Any ideas as to why?
For reference I'm trying to POST something to the composer rest server
This happens in every post after updated to Composer-CLI@0.19.10 and composer-rest-server@0.19.10
[ ](https://chat.hyperledger.org/channel/composer?msg=vpneDMHtB3BTKuzFH) @davidkel I'm running the Fabric server based on the [composer configurations](https://hyperledger.github.io/composer/latest/installing/development-tools.html#step-4-install-hyperledger-fabric). Is this single node configuration convertible?
@ScottMorris if you are running the fabric-dev-servers package then it is really only meant for local development use
[ ](https://chat.hyperledger.org/channel/composer?msg=52KrsFkysEhsHzjwc) @rjbrock
Is it in every single post or does the request size matter?
Yes it is every post @JohnR
From what I can see, it looks like a recursive function call that doesnt have a break
I've just updated my install, let me check :)
Thanks!
I can't reproduce it here, which node version are you running?
@davidkel I was hoping to retrofit it so I don't have to build a custom Fabric network as I want to test out something. Would you suggest going the more custom route then to retrofit the local def instance?
@JohnR v8.11.2
@ScottMorris createPeerAdminCard.sh (for fabric 1.1) can take a `-h` `--host` which replaces the hostname of localhost which may help
@ScottMorris createPeerAdminCard.sh (for fabric 1.1) can take a `-h` or `--host` which replaces the hostname of localhost which may help
@rjbrock and do you have some kind of "strange" recursion in your model? I can remember running into a similar issue once, but in that case I had managed to define an array of the asset in the asset I was creating like
asset Orders identified by orderNumber {
o String orderNumber
o Orders [] orderBook
}
Thats what I thought at first, however when I used a previous composer version everything worked again.
@rjbrock what previous version worked ?
0.19.7
Thanks @davidkel, I'll give this a shot!
@rjbrock have you tried 0.19.8 or 0.19.9 ? or did you go from 0.19.7 to 0.19.10 ?
19.8 has compatibility issues for me, so only 19.7 and 19.10 initiated smoothly
@rjbrock might be worth raising a stack overflow with details of ACLs, model etc. I could be that a fix has introduced something that was not properly handled before
Ideally knowing a micro version change of 1 would help narrow it down, if 0.19.7 - 0.19.8 rather than 0.19.7 - 0.19.10 but I guess that's not so easy for you
[ ](https://chat.hyperledger.org/channel/composer?msg=GkAagR3uainjZf7br) @davidkel
Or a previous fix was undone again, https://github.com/hyperledger/composer/issues/2193
@JohnR might not be, something else could have been introduced.
true
but it sounds like a strange recursion issue somewhere
It does, it might help if you can identity any possible cyclic references in your model
[ ](https://chat.hyperledger.org/channel/composer?msg=b7ADGSnPuzbfS9krR) @davidkel We have been debating if an organisations peers should be close (to reduce network latency) to said organisations clients that would query the channels that it's peers have joined. Also if the order of the peers within the connection profile matters. Potentially we could look to order peers specifically for each organisation, so their clients attempt to access peers (both their own, and other organisations) closest to them. Alternatively if all organisations were a member of a single channel, and we provided one single connection profile, would we place more load on those available peers higher up the list?
@davidkel Hi, I'm working with @rjbrock, the issue only occurs via the rest api, explorer and external. Adding and making transactions via playground works as expected
@julian queries are only ever sent to peers of the organisation you belong to.
while I'm trying to start network without internet connection I face below issue https://medium.com/@anujsaxena_4265/i-have-an-issue-given-below-when-i-am-starting-network-by-command-composer-network-start-90ebd1c84436 , I used verdaccio to host dependencies any advise ?
Has joined the channel.
Has joined the channel.
Can I use a hyperledger composer in a swing?
I have been developing angular using hyperledger composer. But is it possible to develop in swing?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=wXFvZFmyqYiEwYxCD) @waleed
As recommended, I have followed https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest and its working fine.
Now, I want to pass the token(Google) /use to to authenticate from my front end Web Application build on Angular using Yoman (http://localhost:4200)
[ ](https://chat.hyperledger.org/channel/composer?msg=GfEaXYKnJLL4qbnjC) @waleed
I want users to login using their Google account into the Web Application (_which is calling the APIs_) which wouldhave a Default user in wallet.
I want people of different roles to login into the Web Application which can be mapped to business cards in my role based system build on Hyperledger Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=GfEaXYKnJLL4qbnjC) @waleed
I want users to login using their Google account into the Web Application (_which is calling the APIs_) which wouldhave a Default user in wallet.
I want people of different roles to login into the Web Application which can be mapped to business cards in my role based system build on Hyperledger Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=GfEaXYKnJLL4qbnjC) @waleed
I want users to login using their Google account into the Web Application (_which is calling the APIs_) which wouldhave a Default user in wallet.
I want people of different roles to login into the Web Application which can be mapped to business cards in my role based system build on Hyperledger Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=GfEaXYKnJLL4qbnjC) @waleed
I want users to login using their Google account into the Web Application (_which is calling the APIs_) which wouldhave a Default user in wallet.
I want people of different roles to login into the Web Application which can be mapped to business cards in my role based system build on Hyperledger Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=GfEaXYKnJLL4qbnjC) @waleed
I want users to login using their Google account into the Web Application (_which is calling the APIs_) which wouldhave a Default user in wallet.
I want people of different roles to login into the Web Application which can be mapped to business cards in my role based system build on Hyperledger Composer.
Hi all. I just started playing around with Fabric and Composer. When I updated the Model without setting the new parameter to optional or a default value, after deploying the changes I lost all the objects I had before. Is this the expected behavior? In other words, if I want to update the Model without losing data, I need to set the new parameters as optional or set a default value to them. Is that correct?
Can I use a hyperledger composer in a swing?
I have been developing angular using hyperledger composer. But is it possible to develop in swing?
@fabiomolinar https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration
Has joined the channel.
I am stuck up in step 3 (Generate business network archive) of Deveoper tutorial. When I try to run 'composer archive create -t dir -n.' in the tutorial-network' directory, I get the '_[RuntimeException] The "-t" option doesn not exist'. Please help me out with this._
hey i need help i have installed old version of business network .bna now i want to update the new version on that network but it is not allowing
can some one help to delete the old business network and install new one i have tried to update but unable to do so need help
[ ](https://chat.hyperledger.org/channel/composer?msg=Zve9d6Mv8b9Gkm7te) @Farhan1122
The way I do it is
1) build a bna with updated version number
2) install the new bna
3) upgrade the network
okey but i had already followed the way u told but it is not updating in the rest server
Did you restart the rest-server?
how to restart it i
?
I killed it and started it again using the standard way
okey i have upgraded the bna file but it says chain code error
then i have again tried then it says chain code already exist
Did you increase the version number in package.json?
Hello everyone! I am getting an error while running `composer network start` => `Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT` Any idea what might cause this?
Hello everyone! I am getting an error while running `composer network start` => `Error: Error trying to start business network. Error: No valid responses from any peers.`
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT` Any idea what might cause this?
yes i have updated in package.json
Has joined the channel.
hi !!
nice to meet u guys !!
@DamienCosset ur fabric is running kindly check ?
Has joined the channel.
im having some issues with composer... im deploying in real blockchain hyperledger network
i think u have to start fabric first
but in step 5 when i have to create an admin card
said to me that conecction.json is missed
i have hyperledger running
createPeerAdminCard.sh after starting fabric
then install the card
after installing start ur network
then import ur card
then u have to ping ur card
follow these steps @VictorReolid
i have it moving private key , admin.pem and conecction to the directory
coping and paste :3
thanks man !!
Some questions.... is my first time with hyperledger composer
with composer we can deploy our network in playground app (local o web) , and we can deploy in real blockchain like im doing right?
[ ](https://chat.hyperledger.org/channel/composer?msg=jcxizqSgYY9J48ACs) @Farhan1122 Yes, my Fabric is indeed running :)
is not hardcoded right?
and ... can i deploy more than one businees network ??
and at the same time?
thanks for your time... :)
yes u can deploy more then one
at the same time?
@DamienCosset check ur card first by: composer card list then check ur network : composer network list -c "ur card name"
show the output
Hi, While executing transaction function I get. *Reference Error: getFactory() is not recognised*
Hi, While executing transaction function I get. *Reference Error: getFactory() is not recognised* .... how to do away with this error??
[ ](https://chat.hyperledger.org/channel/composer?msg=qYRzH2CJcsHCzY6Xv) @davidkel :thumbsup: thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=94SeXoQG9KrHjRcyi) @fabiomolinar - yes that is expected behaviour - a few more details are available in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration
@rthatcher @davidkel @Farhan1122 ....why do I get this error while executing transaction function on playground - Reference Error: getFactory() is not recognised*
[ ](https://chat.hyperledger.org/channel/composer?msg=Y9SBeaftdRN2yRMrF) @Farhan1122 omposer card list
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --card
[ ](https://chat.hyperledger.org/channel/composer?msg=Y9SBeaftdRN2yRMrF) @Farhan1122 composer network list -c PeerAdmin@hlfv1
✖ List business network from card PeerAdmin@hlfv1
Error trying to ping. Error: No business network has been specified for this connection
Error: Error trying to ping. Error: No business network has been specified for this connection
Command failed
why i have folder hlfv1 and hlfv11 ???
**Bug?**
I'm try to check existance of asset instance with this code:
```
let BizNetworkConnection = new BusNetworkConnection();
let businessNetworkDefinition = await BizNetworkConnection.connect(admincard);
let assetRegistry = await BizNetworkConnection.getParticipantRegistry(namespace+"."+assetname);
console.log(assetid)
let exist = await assetRegistry.exists(assetid);
console.log(exist)
return exist;
```
And I see in logs:
```
WRKC
false
```
So, now I check it via REST API, I'm doing request `GET http://
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=xDyemRHcsdFTKTvst) @DamienCosset u only have peer admin card first import ur network card and then start ur network with that card
[ ](https://chat.hyperledger.org/channel/composer?msg=9axdKuueJ6YCSreYf) @sine99 kindly check ur resource i think it was unable to locate ur resource
[ ](https://chat.hyperledger.org/channel/composer?msg=EPodJoYs9G7K4hmud) @DamienCosset - the Composer Network Start command is starting a new "Chaincode" docker container for each Peer. That process needs good network access and good performance of your computer otherwise it times out. If that is the only error you have, you can increase the timeouts - The knowledge Wiki has a section on network start issues, and you should for the "CORE_CHAINCODE_STARTUPTIMEOUT=1200s"
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
Also for timeouts you could look at the 4 timeouts specified in the connection.json file for the PeerAdmin card ( ~/.composer/cards/PeerAdmin@hlfv1/connection.json )
[ ](https://chat.hyperledger.org/channel/composer?msg=MY6e3DLfxy3ohfuqD) @prmdmshra why do u need to do this?
Community call is in a approx 20 mins fyi 9am UTC (10am UK) - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community
[ ](https://chat.hyperledger.org/channel/composer?msg=GfEaXYKnJLL4qbnjC) @waleed
I want users to login using their Google account into the Web Application (_which is calling the APIs_) which wouldhave a Default user in wallet.
I want people of different roles to login into the Web Application which can be mapped to business cards in my role based system build on Hyperledger Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=GfEaXYKnJLL4qbnjC) @waleed
I want users to login using their Google account into the Web Application (_which is calling the APIs_) which wouldhave a Default user in wallet.
I want people of different roles to login into the Web Application which can be mapped to business cards in my role based system build on Hyperledger Composer.
Please suggest how shall I proceed so that different users login into the system based on their roles(Business Cards) for a production based system
Hi all,
I have a question regarding composer application architecture.
A typical composer application consists of three parts:
-blockchain network
-central web server (e.g. composer-rest-server)
-web client (e.g. Angular)
Is the central web server absolutely necessary?
It looks like a user has to trust this central web server with his ID card.
This is fine if the user is part of an organisation which runs its own server.
But what happens if the user is not part of such an organisation?
Would it be possible to omit the central server and let the web client work with the blockchain directly? This would be similar to how dApps work in Ethereum.
[ ](https://chat.hyperledger.org/channel/composer?msg=R9d9cunAgQqspe4x7) it was my mistake, I needed getAssetRegistry()
hi
i have done the tutorial
but i have one question
can i have .bna tutorial-network and .bna (animal-tracking for example) running at the same time in my network with 1 peers???
thank you
Has joined the channel.
Hi All I have just started working on Hyperledger composer and I am getting an error while doing the developers tutorial
I have installed composer cli fabric and all hte prequesites
Has joined the channel.
but when i try to do the network install for the bna file i am getting an error
x Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any
peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect
Failed
Command failed
my developement environment is windows 7
and i am running the fabric om docker container
I cannot use ubuntu in our organization
can someone please help me with this
@Jyotirmoy Windows isn't a supported environment and I guess if you are running Windows 7 then you are using Docker Toolbox rather than Docker for Windows and I seem to remember that Docker Toolbox has limitations compared to Docker for Windows. You could try the approach described here https://davidkel.github.io/docs/Windows/Intro.html
[ ](https://chat.hyperledger.org/channel/composer?msg=s4oLgsXWHidjDBegt) @davidkel Thanks for the quick response unfortunately my organization wont support ubuntu for a long time and I have to get it working on windows. Will try your link thanks again
Gentlemens, anybody knows how to refresh tokens in REST API Composer with JWT?
Gentlemens, anybody knows how to refresh tokens in REST API Composer server with JWT?
can someone ask my question pls :(
Clipboard - June 27, 2018 12:02 PM
i have this , but i have error when start the network
chaincode error (status: 500, message: cannot get package for chaincode (carauction-network:0.0.1))
chaincode error (status: 500, message: cannot get package for chaincode (carauction-network:0.0.1))
chaincode error (status: 500, message: cannot get package for chaincode (carauction-network:0.0.1))
i got this...
Has joined the channel.
can i have more than 1 business network in the same peer ?? (docker)
Hi everyone, is there a way to track down transactionId in a composer to the transactionId in fabric?
Hi everyone, is there a way to track down transactionId in composer to the transactionId in fabric?
I am using blockchain explorer to see what is happening behind the scenes at the blockchain level, but the transactionId generated by composer does not match the ones on fabric. I would like to have traceability of every tnx down to fabric level
is that possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=JwTFsvJLCidx7tmqS) @VictorReolid - yes, you can have more than one Business Network running on your Fabric.
The process is `composer network install`, and then `composer network start` - the error you are seeing suggests that either you have not run the install command, or that you have the wrong name or version specified on the start command. You can check the name and version by running `composer archive list -a
What is the difference between installing via
- https://hyperledger.github.io/composer/latest/installing/development-tools
- http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html
@rthatcher yes but i cant start the network carauction for example
type me error chaincode
i take tutorial network and did it succesfull
then i export from playground carauction.bna and i take the card
i have installed
but i cant start it
cause is tutorial working?
[ ](https://chat.hyperledger.org/channel/composer?msg=rFMy6MkrbHbhQmqeg) @AlexanderWilts - A central Web Server is not required ...
Each participating organisation in the Fabric Network can run their own REST server, and they can use a different authentication method too so the Wallets can be separate for each organisation.
And if you don't want to use the REST api to interact with the Business Network, you can use the Javascript API with your Web Client application.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZRHoEhXvpWPP2Dkbd) @varunagarwal The first one is for installing composer project tools while the second is for hyperledger fabric (blockchain network). Composer runs on top of fabric
So which one do I follow? I am shifting from Fabric 1.0 to 1.1
and using composer 0.19.9
[ ](https://chat.hyperledger.org/channel/composer?msg=2SErJm4trMRgsg2cx) @varunagarwal depending on what you want to do. If you want to work with blockchain network then go for fabric (2nd), if you are working with composer (1st) you need to have fabric installed before.
i got it guys np
thanks !!
@mvillalobos I have a working project using Fabric 1.0 and composer 0.16.6 . Now looking to upgrade both of them and run multiple nodes. right now we just running a single node in dev environment
[ ](https://chat.hyperledger.org/channel/composer?msg=z5fnioFZXhavZwZRh) @varunagarwal in that case upgrade fabric first and composer then composer. You should be able to deploy the bna on the new fabric infra
http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html I completed this and have it runing on a server
But now im stuck
@varunagarwal you have updated fabric... now you can upgrade composer tools to use the latest version
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
then over here, its mentioned a different way to create new MSP and orderes and peers
@mvillalobos
[ ](https://chat.hyperledger.org/channel/composer?msg=rdHTtkai7YXhdEgaH) @mvillalobos - I'm seeing the same Transaction ID in Composer and in Blockchain Explorer. What I have seen is that the Blockchain explorer displays the Block being added on the Dashboard, but there is a delay with it refreshing the list of transactions in the Transactions display.
[ ](https://chat.hyperledger.org/channel/composer?msg=ve7cNPHCBh75gm8uE) @varunagarwal - The Composer MultiOrg tutorial uses the Fabric BYFN "tools", and then shows how to use Composer on top of that Fabric. BUT there is a slightly different flavour of BYFN used for Composer, so I would suggest using the Composer tutorial.
You should also be aware of some breaking news from yesterday that a change to a Fabric script has "broken" the Composer MultiOrg tutorial - see this chat link from yesterday with the fix:
https://chat.hyperledger.org/channel/composer?msg=9iNWMWfXTXygXPCes
@rthatcher Yeah there is a link saying to use a different github link by sstone. So I simply want to run Fabric 1.1, composer 0.19.9 with my own certificates and keep as much static so in case the servers go down, I will have the certificates to resume work, and the old cards stored in the wallet including admin card will still be valid
[ ](https://chat.hyperledger.org/channel/composer?msg=F5cBkpfDjMRpAQsyH) @rthatcher wondering if it is the composer version I am using, v0.19.9? Or need to use master version?
[ ](https://chat.hyperledger.org/channel/composer?msg=KxFPTRAvXvQLgQjXL) @mvillalobos - I'm using v0.19.9 and my transaction IDs match up. Where are you getting your Transaction IDs from in Composer ?
[ ](https://chat.hyperledger.org/channel/composer?msg=umKTMcDr3G4EtPiqP) @varunagarwal - not sure how you setup you old Fabric, but you might be able to just change the .yaml files you use to start your Fabric, and just change the Docker Image name. Although you might be OK to re-use the crypto material you will have to recreate your cards as the format of the cards (particularly the connection.json) has changed between 0.16 and 0.19.
I don't minding deleting and restarting all over. We got a working 1.0 and 0.16.6 demo running, so got time to migrate the *proper* way
[ ](https://chat.hyperledger.org/channel/composer?msg=79Z3SeBtDX69xKyk3) @rthatcher Thanks for your reply!
I see that each participating organisation can run their own REST server. But I am thinking of an application where some end users act independently.
They are not part of an organisation and do not want to trust a foreign REST server with their digital identity. Such a user might store his ID card on a smartphone or PC.
He would then use the JavaScript API to communicate with the Business Network.
Do you think such an application would be feasible without REST servers run by participating organisations?
@AlexanderWilts - yes, the JavaScript API has all the functionality to manage cards, and connect to the Business network. (The REST server and the Angular generated app are just a way to a faster start)
@rthatcher as you answered in https://stackoverflow.com/questions/51040108/verify-and-test-multiple-orderer-using-kafka-cluster that first orderer of connection profile is used then what is the significance of other orderers? If first is down then it will become single point of failure
Hi, How to configure CouchDB to store asset in composer for BNA?
@rthatcher
The gripe I have with such a system is the handing out of new business network cards.
Suppose a new independent user registers with the business network.
How can he get a new BN card?
There needs to be some administrative authority creating these cards, right?
So it is not enough to just have web clients and the business network. There also needs to be some authority in between.
Is this correct?
I want to setup a network with 4 nodes, I have 4 VM available and want to host 1node 1MSP on each VM and add orderer on one of the VM, is there a documentation around it how to do it?
[ ](https://chat.hyperledger.org/channel/composer?msg=xGoastXnRv6pYyeHy) @AlexanderWilts - there is an interesting Blog here about how you could setup 2 REST servers to allow for "self signup" - and you could do some work with the model and ACLs to lock down some access and permissions. https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
Thanks, I will have a look at that.
[ ](https://chat.hyperledger.org/channel/composer?msg=DK7ZmKkrbch92dP3r) @HoneyShah - you expectation is that multiple orders would offer failover and that seems reasonable! But I'm not sure that the Fabric Node SDK allows/exploits that yet - but you need to check this with the #fabric channels - I'm not certain of this.
[ ](https://chat.hyperledger.org/channel/composer?msg=GpsoCZr9ftmsx7GvP) @Miruthan - Hyperledger Fabric has a "State Dababase" (sometimes called World State) which keeps the current state of objects on the Blockchain. The default is LevelDB, but CouchDB is an option that can run for Peers in a separate container. The Composer development Fabric sets up a CouchDB container by default, but there is no setup required to use it - it is specified when the Peer starts. So if you use the default Development Fabric provided with Composer, then CouchDB will be active.
[ ](https://chat.hyperledger.org/channel/composer?msg=JatKwYB8XR5ptQJTE) @AlexanderWilts - FYI I have answered the Stack Overflow question with a summary of the same information.
Thank you :)
@rthatcher Thank you for the information. How to deploy BNA to production? We have 5 organisation as a stakeholder and multiple users from each organisation and want to configure secret channel between some parties? , Not able to connect this dots, Your suggestion/guidance is most welcome.
Has joined the channel.
Just joined, hopefully this is not a repeat question. I have an existing fabric network, been running for at least 6 months. My devs are now wanting to use composer, how can I add composer to my existing network?
[ ](https://chat.hyperledger.org/channel/composer?msg=rAoNf4p9HRkdm4FrY) @StevenP 4 - Welcome to the channel :-)
A few things ... If you have a Fabric that has been running for 6 months, it may be a Fabric v1.0 network. The latest supported version Composer which your developers will want is v0.19.10 and works only with Fabric v1.1.0 (also be aware that Fabric have released v1.2RC1 and that is not supported by Composer)
Composer sits on top of Fabric and does not require anything specific apart for the versions mentioned above - although some features (queries?) require CouchDB to be used as the State Database.
In order to deploy Composer Business Networks (Chaincode) to the Fabric, your developers will require credentials (certificates) and a connection profile (connection.json).
For background information, I would suggest looking at the Install material for Composer Developers, and at the Developer Tutorial:
https://hyperledger.github.io/composer/latest/installing/installing-index
https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
composer network install command is giving peer not responding error, my composer cli is 0.19 and since then i cannot install my network card on the fabric, the environment is ubuntu 16.04
[ ](https://chat.hyperledger.org/channel/composer?msg=QcjdDYq5eX2gQd93o) @Jyotirmoy - what is the exact error ?
[ ](https://chat.hyperledger.org/channel/composer?msg=KwgYeL5Kt8Wd8HgAs) @rthatcher Thanks for the warning on the versions. I did an update on fabric a week or so ago, so that I would be on version 1.1, just to make sure I had the ability to still use composer. But its still good you give warning. I have done the setup and followed the tutorial before, and I can get that to work on its own, but the Peeradmin connection.json still produces the generic Org1.example.com content. Can I modify that connection.json to use my org settings?
[ ](https://chat.hyperledger.org/channel/composer?msg=3TEMqSXMQxvGLLX6C) @Miruthan - I would suggest looking at the Developers tutorial to get some background, and to Deploy a BNA to a simple 1 Peer Fabric. https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
Following that I would suggest the MultiOrg tutorial - which simulates a 2 Organisation Fabric running on a single computer. This introduces the Composer Aspects of working on a Multi Org Fabric: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
The MultiOrg tutorial shows Composer working with a single channel shared by all the Organisations (in this case 2!). Composer uses connection profiles to define it's connections to the Fabric, and each connection profile specifies a single channel, so if you want to set up multichannel you will need multiple cards.
You can check various stack overflow Q&As for Channels with this link:https://stackoverflow.com/search?tab=newest&q=%5bhyperledger-composer%5d%20channel
and also see a recent Github issue on the subject: https://github.com/hyperledger/composer/issues/2103
[ ](https://chat.hyperledger.org/channel/composer?msg=k84Q9Skwy7tGRyx8u) @rthatcher x Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=JsDxSKJGaaif22nL8) @Jyotirmoy - the error "*Error: 14 UNAVAILABLE: Connect Failed*" means that the client can't find the Fabric on the addresses specified for the URLs in the connection.json file. So I would ask first if your Fabric is started? and then ask if the Addresses specified in the connection.json are resolvable and accessible?
[ ](https://chat.hyperledger.org/channel/composer?msg=JsDxSKJGaaif22nL8) @Jyotirmoy - the error *Error: 14 UNAVAILABLE: Connect Failed* means that the client can't find the Fabric on the addresses specified for the URLs in the connection.json file. So I would ask first if your Fabric is started? and then ask if the Addresses specified in the connection.json are resolvable and accessible?
[ ](https://chat.hyperledger.org/channel/composer?msg=hG2yPdrurrW8ARNvs) @rthatcher Thanks for the response i have done docker ps command and the dockers are up and running, but how can i check that the urls are accessible
[ ](https://chat.hyperledger.org/channel/composer?msg=YXPBMYQe5Yeu9qwpu) This is what i get for docker ps command ```
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4207456ab9f0 hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 24 minutes ago Up 24 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
a1d900b19040 hyperledger/fabric-ca:x86_64-1.1.0 "sh -c 'fabric-ca-se" 24 minutes ago Up 24 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
3da5a7d05d0f hyperledger/fabric-couchdb:x86_64-0.4.6 "tini -- /docker-ent" 24 minutes ago Up 24 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
05aecdceb107 hyperledger/fabric-orderer:x86_64-1.1.0 "orderer" 24 minutes ago Up 24 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
```
[ ](https://chat.hyperledger.org/channel/composer?msg=YXPBMYQe5Yeu9qwpu) ```
This is what i get for docker ps command
```
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4207456ab9f0 hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 24 minutes ago Up 24 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
a1d900b19040 hyperledger/fabric-ca:x86_64-1.1.0 "sh -c 'fabric-ca-se" 24 minutes ago Up 24 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
3da5a7d05d0f hyperledger/fabric-couchdb:x86_64-0.4.6 "tini -- /docker-ent" 24 minutes ago Up 24 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
05aecdceb107 hyperledger/fabric-orderer:x86_64-1.1.0 "orderer" 24 minutes ago Up 24 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
```
[ ](https://chat.hyperledger.org/channel/composer?msg=hG2yPdrurrW8ARNvs) @rthatcher ```
This is the docker ps response ```
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4207456ab9f0 hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 24 minutes ago Up 24 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
a1d900b19040 hyperledger/fabric-ca:x86_64-1.1.0 "sh -c 'fabric-ca-se" 24 minutes ago Up 24 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
3da5a7d05d0f hyperledger/fabric-couchdb:x86_64-0.4.6 "tini -- /docker-ent" 24 minutes ago Up 24 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
05aecdceb107 hyperledger/fabric-orderer:x86_64-1.1.0 "orderer" 24 minutes ago Up 24 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
```
```
[ ](https://chat.hyperledger.org/channel/composer?msg=hG2yPdrurrW8ARNvs) @rthatcher ```
This is the docker ps response ```
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4207456ab9f0 hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 24 minutes ago Up 24 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
a1d900b19040 hyperledger/fabric-ca:x86_64-1.1.0 "sh -c 'fabric-ca-se" 24 minutes ago Up 24 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
3da5a7d05d0f hyperledger/fabric-couchdb:x86_64-0.4.6 "tini -- /docker-ent" 24 minutes ago Up 24 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
05aecdceb107 hyperledger/fabric-orderer:x86_64-1.1.0 "orderer" 24 minutes ago Up 24 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
```
``` ```This is the connection.json``````
{
"name": "hlfv1",
"x-type": "hlfv1",
"x-commitTimeout": 300,
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},
"channels": {
"composerchannel": {
"orderers": [
"orderer.example.com"
],
"peers": {
"peer0.org1.example.com": {}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
}
},
"orderers": {
"orderer.example.com": {
"url": "grpc://localhost:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://localhost:7051",
"eventUrl": "grpc://localhost:7053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://localhost:7054",
"caName": "ca.org1.example.com"
}
}
}
```
```
```
Hello! Can anyone tell me if the script.js file is a smartcontract? script.js is javascript code... but then the documentation says the chain code is only written i GO or Node. What is then the script.js that we create in hyperledger-playground?
[ ](https://chat.hyperledger.org/channel/composer?msg=PRzrZtt7ZnnrRNT7C) @LuisCoelho - Your script is javascript, but it is Node.JS server-side javascript (if you use any client-side features it might work in Playground, but will fail when deployed to the Fabric). In Composer terms your Smart Contract is your model, transaction logic script, acl and queries - your BNA.
[ ](https://chat.hyperledger.org/channel/composer?msg=LYetKEbN4Bh2Kd6FY) @rthatcher So that script.js it is the chaincode (smartcontract) indeed.
```composer network install -c PeerAdmin@mycompany-sample-demo -a /path/to/file/mycompany-sample-demo.bna``` throws the following error. Any idea ?
```✖ Installing business network. This may take a minute...
Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode mycompany-sample-demo has been successfully instantiated and try again: could not find chaincode with name 'mycompany-sample-demo'```
``` composer network install -c PeerAdmin@mycompany-sample-demo -a /path/to/file/mycompany-sample-demo.bna ``` throws the following error. Any idea ?
``` ✖ Installing business network. This may take a minute...
Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode mycompany-sample-demo has been successfully instantiated and try again: could not find chaincode with name 'mycompany-sample-demo' ```
``` composer network install -c PeerAdmin@mycompany-sample-demo -a /path/to/file/mycompany-sample-demo.bna
```
throws the following error.
``` ✖ Installing business network. This may take a minute...
Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode mycompany-sample-demo has been successfully instantiated and try again: could not find chaincode with name 'mycompany-sample-demo' ```
@LuisCoelho Any help ?
[ ](https://chat.hyperledger.org/channel/composer?msg=YKyxdp3tC5T52249n) @javapriyan What version of composer you have?
[ ](https://chat.hyperledger.org/channel/composer?msg=gP4o9hRyjdTRwBeq2) @LuisCoelho v0.19.10
create a card using
```composer card create -p connection.json -u PeerAdmin -c fabric-scripts/hlfv11/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem -k fabric-scripts/hlfv11/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457_sk -r PeerAdmin -r ChannelAdmin -n mycompany-sample-demo```
Imported them using composer cli and tried to install the bna in locally running fabric.
Imported it using composer cli and tried to install the bna in locally running fabric.
[ ](https://chat.hyperledger.org/channel/composer?msg=m2EWiDtC9T3C5pbzb) @javapriyan you made changes to the chaincode namespaces?
[ ](https://chat.hyperledger.org/channel/composer?msg=oDLTCjpBFcW57siya) @LuisCoelho Where should I check ? I think I did
[ ](https://chat.hyperledger.org/channel/composer?msg=FFnCAL58NirKnjica) @javapriyan ~/fabric-dev-servers/stopFabric.sh && ~/fabric-dev-servers/teardownFabric.sh
@javapriyan try ~/fabric-dev-servers/stopFabric.sh and then ~/fabric-dev-servers/teardownFabric.sh
`~/fabric-dev-servers/teardownFabric.sh`
`~/fabric-dev-servers/stopFabric.sh`
[ ](https://chat.hyperledger.org/channel/composer?msg=aXT8juSpDowy7XQon) @LuisCoelho Tried. Still No luch
[ ](https://chat.hyperledger.org/channel/composer?msg=aXT8juSpDowy7XQon) @LuisCoelho Tried. Still No luck
@javapriyan The problem is in the card you have created. When performing fabric level activities such as install/start/upgrade you need to use a "special" network card. A special network card must not declare the business network otherwise you will get the error you are getting. Recreate your card file as follows
```
composer card create -p connection.json -u PeerAdmin -c fabric-scripts/hlfv11/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem -k fabric-scripts/hlfv11/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457_sk -r PeerAdmin -r ChannelAdmin
```
(ie don't add the -n option)
delete the existing card from the card store using `composer card delete` and import the newly created card and only use that card for install/start/upgrade operations
stop then tearDown right ?
@javapriyan might be related with your docker conatiners. do a `docker ps` and bring up the docker container again
[ ](https://chat.hyperledger.org/channel/composer?msg=scFXD9B7qkDeJBsv4) @davidkel It worked. Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=Gs2QGNG4mHWcS9pcD) Now How I can test this via playgroud ?
[ ](https://chat.hyperledger.org/channel/composer?msg=Gs2QGNG4mHWcS9pcD) Now How I can test this via playgroud ? @davidkel
[ ](https://chat.hyperledger.org/channel/composer?msg=Gs2QGNG4mHWcS9pcD) Now How I can test this via playgroud ? @davidkel
@davidkel Now How I can test this via playgroud ?
hello guys is Fabric 1.2 compatible with Composer please ?
[ ](https://chat.hyperledger.org/channel/composer?msg=m6kHcXjveLoyBpBPG) @JonathanC - afaik Composer v0.19.10 does not work with Fabric 1.2rc1. Composer is currently tested only with Fabric v1.1.0
[ ](https://chat.hyperledger.org/channel/composer?msg=7J98hMKqcrLY2YQ5s) @rthatcher Thnak you
[ ](https://chat.hyperledger.org/channel/composer?msg=7J98hMKqcrLY2YQ5s) @rthatcher Thank you
We have been using composer 0.16.3 on Fabric 1.0.5. We have 5 orgs: orgA, orgB, orgC, orgD, orgE.
We have the following channels, the letters correspond to the organisations, and the org membership to the channels:
AandD channel with business network z-network
BandD channel with business network z-network
CandD channel with business network z-network
DandE channel with business network y-network
AandBandCandDandE channel with business network x-network
We reuse BNA files (business network z-network) across some channels. We had to create many connection-profiles and cards because each connection profile referenced a single channel.
We are in the middle of moving to fabric 1.1.0 and composer 0.19.10. We have the luxury of a fresh install. We are in the middle creating the new connection profiles, and notice we can provide all channels in one connection profile, and thus we are proposing to create a single connection profile per organisation, and cards created and imported from those connection profiles. However I wonder how composer will know which channel I’m referring to when we run queries against the network, against those peers that are utilising the same business network across multiple channesl. In this case orgD and the z-network business network.
e.g. composer network list -c admin-orgD@z-network All the peers for orgD are a members of channels AandD, BandD, CandD which all run the z-network business network.
How will composer know which channel I'm referring to? Will we have to create separate connection profiles and cards to cater for orgD channel membership?
@julian I would check out https://hyperledger.github.io/composer/latest/reference/connectionprofile especially the channel section
@julian suggest you check out https://hyperledger.github.io/composer/latest/reference/connectionprofile especially the channel section
Has joined the channel.
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=nQ83MHBGX2Ca6dkpH) @davidkel Any pointer please? Any more elaboration on this? Thanks!
How chaincode and transaction processor script file ?
How chaincode and transaction processor script file differ ?
[ ](https://chat.hyperledger.org/channel/composer?msg=LmbtMwDDChgQ953Ko) @rthatcher Thank you so much for your help. I was stuck here from several days, thinking that some issue with my configuration. I found that issue is resolved in https://jira.hyperledger.org/browse/FAB-10627 . So can you please let us know when composer will support node skd 1.2 as this is an important update for production.
hi guys, How to use start a multi users rest-server using local-passport
Has joined the channel.
Hi guyz any one know below Question
1)
Can I use JavaScript libs with require on transaction processor in Hyperledger Composer
can we invoke a `transaction` from another `transaction`?
[ ](https://chat.hyperledger.org/channel/composer?msg=MY6e3DLfxy3ohfuqD) @prmdmshra did u see this -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc ?
[ ](https://chat.hyperledger.org/channel/composer?msg=MY6e3DLfxy3ohfuqD) @prmdmshra did u see this -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc ?
and this for the permissions -> https://hyperledger.github.io/composer/latest/reference/acl_language
Has joined the channel.
hi, I am having some issues while deploying composer application over fabric network. Getting error when using composer network install, Response from peers was an error. Error 14 unavailable EOF
[ ](https://chat.hyperledger.org/channel/composer?msg=YRGPfoCeqmwvzrLkC) @HoneyShah - ah that is good news it is fixed thanks for following it up. There is no date for Composer working against, but the work is being assessed and it is on the radar.
[ ](https://chat.hyperledger.org/channel/composer?msg=uyKWeeYgrX4EndkWa) @SarathKumar155 - no you cannot use require or import in the transaction logic script.
[ ](https://chat.hyperledger.org/channel/composer?msg=o5EA9TrWe3wAkCN7M) @Varun2887 - no, you can't nest transactions. It is to do with the atomic nature of a transaction - if a "child-transaction" succeeded, but the parent failed there would be an inconsistency.
[ ](https://chat.hyperledger.org/channel/composer?msg=iRposEvyiHWu9oW4P) @rajanashutosh - the error *Error: 14 UNAVAILABLE: * usually means that the client can't find the Fabric on the addresses specified for the URLs in the connection.json file. So I would ask first if your Fabric is started? and then ask if the Addresses specified in the connection.json are resolvable and accessible?
how can we implement a cryptocurrency using composer.?
[ ](https://chat.hyperledger.org/channel/composer?msg=uRNGdNJrQog85P7Fg) @zhulg - we don't have examples of this in the documentation, but this Stack Overflow may help https://stackoverflow.com/questions/50349925/composer-rest-server-with-passport-local-strategy/50585736
@rthatcher .. Yes, fabric is up and running. Would check connection.json
Thanks
Has joined the channel.
I wanna interact with 2 different network in composer. my reference is https://hyperledger.github.io/composer/latest/tutorials/invoke-composer-network
but I want to submitTransaction not getResourceInRegistry
is there any refererence for submitTransaction using nativeAPI?
Has joined the channel.
hi every one i have a question : to update the business network on rest server we need to kill the process and restart the rest server..... but in production environment killing process can not be done .... any solution for this ???
[ ](https://chat.hyperledger.org/channel/composer?msg=sokhkGybmKNP3ud5n) @hamza-kakar ...
platform supports of composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=3A23ofQmKGcSqtoqh) @Farhan1122 hi :) if u have your rest server running in docker container & mongoDB in another docker container, so there is no problem at all. because u can mount the data of the containers. so if you destroy it and recreate it, u will not lose any thing. and in a production environment u should have more than one rest api
@Farhan1122 Upgrading a business network in a production environment is not a trivial activity, requiring co-ordination across organisations, planning, contigency and backout plans. stopping and restarting the rest server is a trivial part of that exercise
Has joined the channel.
Has joined the channel.
Hi every one, i have a question. When I use compose-playground, everything works fine. But, when I use the angular application, when I invoke the transaction I get a 'null' return for transactionId and timestamp. Do you have any idea where the mistake might come from?
Hi every one, i have a question. When I use composer-playground, everything works fine. But, when I use the angular application, when I invoke the transaction I get a 'null' return for transactionId and timestamp. Do you have any idea where the mistake might come from?
[ ](https://chat.hyperledger.org/channel/composer?msg=S4SPZ6nRnMPpcoNTT) @VictorReolid - do you mean what Operating Systems for the development tools? Or what version of Fabric is supported for deployment?
operating systems @rthatcher
version is 0.19.10 ? correct?
[ ](https://chat.hyperledger.org/channel/composer?msg=hvhiMfBNQL6Hpek9k) @VictorReolid - yes v0.19.10 is current (but .11 is being released today)
The pre-reqs including Operating System are here: https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
oh nice , thank you
Hi everyone. Anyone knows how to access to an OAuth2 secured external endpoint from a Hyperledger Composer transaction? I am using a Keycloak server for the authentication.
Hello,
If we add extra peer and orderer to existing network then how can we work with old card files? Are they still valid? Is anybody has any idea about this?
[ ](https://chat.hyperledger.org/channel/composer?msg=syZedqivnBhyQDyvn) @HoneyShah I think it still valid.
[ ](https://chat.hyperledger.org/channel/composer?msg=syZedqivnBhyQDyvn) @HoneyShah I think it still valid. the old peers still there, so you still connected to the network using old card files
[ ](https://chat.hyperledger.org/channel/composer?msg=syZedqivnBhyQDyvn) @HoneyShah - the cards contain the connection.json which describe/define the Fabric - including the URLs for accessing the Peers, Orderer and CA. So existing cards should work to connect to the existing Peers etc, but the connection.json is 'static' so new peers details will not be added. Is the new Peer in the same Org as existing Peers or are you creating a new Org for the New Peer?
(We are writing a new tutorial for Adding a 3rd Org to the existing 2 Org Multi Org tutorial - but it isn't ready yet.)
[ ](https://chat.hyperledger.org/channel/composer?msg=6JHf7SPGcAXeJFpbh) @Juanan_Tejero - not sure if I have understood the question, but if you want to "call out" from a Transaction Logic script then you can use the NodeJS *request* module included in the runtime api.
[ ](https://chat.hyperledger.org/channel/composer?msg=PtSZssYQuRRcBWvQs) @rthatcher Thanks! That's the idea, get info from an external data source. But I am not able to execute the request because the endpoint is secured with OAuth2... If anyone have some info about it I would appreciate.
Hello ! Someone can say me what is save on couchdb ?
[ ](https://chat.hyperledger.org/channel/composer?msg=XDg7dFhn2J8R8NYt8) @Poneey read this :) https://hyperledger-fabric.readthedocs.io/en/release-1.1/couchdb_as_state_database.html
thanks
How can we connect composer-rest-server with fabric network i am following the this tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
Hi, could someone provide me some inputs or thoughts on whether composer can be used for production grade applications ?
@rajanashutosh Yes it can. IBM uses it on their bluemix setup. I have been working on getting it set for mine as well.
@StevenP 4 Thanks Steve. But since releases and bug fixes on composer coming up more frequently is it suggestible ?
[ ](https://chat.hyperledger.org/channel/composer?msg=fSL5YfJnYmf3jChYZ) @sureshtedla - Step 5 of the Tutorial covers this - are you seeing an error ?
@rajanashutosh I always tend to stay a version behind the release just to make sure it is functioning the way I want. I only advance if the features are good enough and usable. But I think it is worth it.
@StevenP 4 Thanks for your views
[ ](https://chat.hyperledger.org/channel/composer?msg=2kM8zgTqHzQsYq6Pu) @rthatcher I am getting any error
[ ](https://chat.hyperledger.org/channel/composer?msg=2kM8zgTqHzQsYq6Pu) @rthatcher I am not getting any error
Has joined the channel.
Hi guys, could anyone help with a silly question about how users can interact with a business network through REST Calls?
My network is running, using CLI I created participants, issued identities and bound them to the participants. I have a webApp that uses calls to interact with the network but it always does as the administrator. How can I do these calls as a different participant?
Your Rest API should work in multi user mode and u will have to generate a card for every participant u have. Then u will need a login service to be authenticated. This tutorials will help u: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server @JuanCamilo_0314 [ ](https://chat.hyperledger.org/channel/composer?msg=uJHPtPPejNRbRkrqM)
Thanks @waleed !!
Has joined the channel.
hii iam stuck in between instralling composer-cli can somebody help me
i instrall hyperledger composer-cli but when iam checking composer -v it was showing command not found
pls help me
[ ](https://chat.hyperledger.org/channel/composer?msg=jQD4mZP3e3QEJRJSg) @SwapneshNaik issue the command `npm config get prefix` and then look inside the `bin` directory underneath that and see if `composer` is in there and if it is it's probably a simple matter of ensuring that that directory is in your *PATH*
Has joined the channel.
User User_1 added by jwagantall.
how to write transaction to get list of all participant Lets Say participant is "Trader".
invokeChainCodeFromOtherNetwork.PNG
I want to call transaction from other network
I don't know what to do on doSomething
I need your help~
submitTransactionParsing.PNG
submitTransactionFixed.PNG
but I got error message
Error: Error trying invoke business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: SyntaxError: Unexpected token in JSON at position 0
submitTransactionWorks.PNG
hi, i had install hyperledger composer in a vps serverHello, everyone. I has a question. How can I deploy the chaincode which write by composer to a peer that don't install the composer? Thanks.
Has joined the channel.
@rthatcher hi, is there some sort of independence between the Rest Server version and the Composer Runtime version? Or the Rest Server needs be updated whenever the Composer Runtime version changes?
[ ](https://chat.hyperledger.org/channel/composer?msg=Pd848gH5HCqjZcJic) @rthatcher I want to add new peer in the same organisation. So I can connect to network with old cards. If I want to update all the cards then do I need revoke existing identities and issue new identities for same participant once again or there is any other way?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZWwW4q6RABcDaR8Yx) @HoneyShah - adding a new peer to the same organisation should be OK, the existing cards (and identities) will work but they will only ever connect to the 'original Peers' because those were the only ones listed in the connection.json when they were created. So you should just be able to edit the connection.json for each card to include details for the new peer (or create new cards based on a new single connection.json)
In any event I would suggest backing up the ~/.composer folder and using composer card export to back up all of the working cards before you begin :-) (All of this assumes that the new peer has successfully joined the channel.)
[ ](https://chat.hyperledger.org/channel/composer?msg=baZDWKK5jD5bwqYkA) @uber.twin - just to recap, the composer runtime version on the peers is the version of the client when the network was deployed (unless you specified a different version in the package.json in the .bna file). The version of the composer-rest-server (and composer-cli) must be same as the runtime version, or greater at the micro version level. E.g. if you deployed a BNA last week with composer-cli v0.19.10, and this week you upgraded composer-cli and composer-rest-server to v0.19.11 you should be ok to carry on. But the runtime version cannot be ahead of the composer-rest-server.
@rthatcher ok, thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=pEskxiXDYT8j94B8a) @wangrangli - as part of the process of deploying a Composer Business Network to the Fabric, the Composer Runtime is installed on to the Fabric as part of the chaincode.
@rthatcher Thank you.And where could I find the document about the Composer runtime?
[ ](https://chat.hyperledger.org/channel/composer?msg=LWT78XEHL5fMNmhJ4) @ZaheerUdDeen - I think you should investigate Queries - please see this tutorial - https://hyperledger.github.io/composer/latest/tutorials/queries
[ ](https://chat.hyperledger.org/channel/composer?msg=iFJJdt9FWqBNvEWny) @wangrangli - I would suggest looking at the Developer Tutorial which works through creating a Composer Business Network, and then deploying it to Fabric: https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - after that you can check out the reference section in the Composer Docs.
Hi guys , I am trying to implement my project without composer-rest-server, like https://github.com/IBM/customer-loyalty-program. Now I can issue new Identity and create card with API, but I want use composer-wallet-file instead of composer-wallet-inmemory, is there any sample code about this?
@rthatcher Thank you.
@rthatcher Thanks!!
how to fetch data from ledger using like operator
[ ](https://chat.hyperledger.org/channel/composer?msg=kjABbeRNxiMbtZiwT) @karunesh10 - the "like" operator is not supported in Composer queries
ok thank u @rthatcher
Hello everyone! I have added a `queries.qry` file with a named query. After updating my business network, I can't see it in the Explorer. Is there anything I am missing?
[ ](https://chat.hyperledger.org/channel/composer?msg=sL76dbhzBYazMXYox) @DamienCosset - most likely reason is that you need to restart the REST server after upgrading the network - the REST server _discovers_ the Business Network when started and to see changes it needs to be re-started to discover the new endpoints.
[ ](https://chat.hyperledger.org/channel/composer?msg=jvZoskq3ghGWsYtDt) @rthatcher I did restart it. Is the `queries.qry` file the only thing required to see the queries?
Has joined the channel.
Hi
Does anyone faced a problem with enabling multiusers after generating custom loopback app using this tutorial https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server ?
The problem is that there is no System\historian System\historian /system/identities /system/identities/bind endpoints. That's why there is no possibility to import CARD for using multiuser mode.
[ ](https://chat.hyperledger.org/channel/composer?msg=AFKA6RF5bbaovdbop) @etrn - I haven't tested it, but I heard that the Customized rest server does not support multi-user
Hi. I am trying to issue an identity through playground, but I get an error because the identity that the playground is trying to create is of org1, which doesn't exsist in my network. How can I specify the affiliation of the identity that is to be created?
Hi. I am trying to issue an identity through playground, but I get an error because the identity that the playground is trying to create is of org1, which doesn't exsist in my network. How can I specify the affiliation of the identity that iI am trying to issue?
Hi.
I am trying to issue an identity through playground, but I get an error because the identity that the playground is trying to create is of org1, which doesn't exsist in my network. How can I specify the affiliation of the identity that iI am trying to issue?
Hi,
Hi,
How do I revert a transaction while executing a transaction function in the playground. For eg: in ethereum we have transaction unsuccessful when we dont pay the required amount or gas fee from wallet. How can I do the same thing in the logic.js file ...writing condition which causes the transaction to be unsuccessful or show the error message thus stopping the transaction.
Hi,
How do I revert a transaction while executing a transaction function in the playground. For eg: in ethereum we have transaction unsuccessful when we dont pay the required amount or gas fee from wallet. How can I do the same thing in the logic.js file ...writing condition which causes the transaction to be unsuccessful or show the error message thus stopping the transaction.
@rthatcher... if u could help in this regard
Hi,
How do I revert a transaction while executing a transaction function in the playground. For eg: in ethereum we have transaction unsuccessful when we dont pay the required amount or gas fee from wallet. How can I do the same thing in the logic.js file ...writing condition which causes the transaction to be unsuccessful or show the error message thus stopping the transaction.
@rthatcher ... if u could help in this regard
@sine99 with throw new Error() ?
throw new Error('blablal');
not sure if that's what u mean
similar to the throw in solidity afaik
@SimonOberzan you can't from playground. You need to use the cli `composer identity issue` and pass the following `-o affiliation=xyz`
@davidkel Oh, ok. Thanks.
@FlorentinoSainz thank u
@FlorentinoSainz thank u ...that works
composer-network-ping-error.png
@ziqbalbh - is your CA Container started OK, and still running? Assuming it is and the address is correct ...
@ziqbalbh - is your CA Container started OK, and still running? Assuming it is and the address is correct ...
Are there any errors in the CA log of the docker container?
Is there an error in the specification of the certificates in your .yaml file for starting the CA ?
@ziqbalbh have u used the default admin password i.e. *adminpw* ?
[ ](https://chat.hyperledger.org/channel/composer?msg=kyG6vfsSZyN4teMYt) @sine99 - using the wrong secret generates a different message "Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]" - this problem is not getting that far :-)
@rthatcher @FlorentinoSainz .... is there a way to sign a transaction on hyperledger as we do for ethereum using "web3.eth.sign"?
Is there a way to sign a transaction on hyperledger as we do for ethereum using "web3.eth.sign"?
Hey guys
Are you using Couchdb or leveldb?
I saw that couchdb have performance issues while leveldb dont have complex queries
Hi all, I am following the steps on this tutorial - https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - to be able to run the _composer-rest-server_ with a previously generated card. I am on v0.19.8.
*I tested the card importing it on the playground and then connecting to my deployed network and the connection goes perfectly.*
Nevertheless, when I run the rest server trying to connect with the same user, I get:
```
composer-rest-server | Exception: Error: Card not found: admin@supplyme-network
composer-rest-server | { Error: Card not found: admin@supplyme-network
composer-rest-server | at store.get.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/cardstore/walletbackedcardstore.js:74:27)
composer-rest-server | at
Hi all, I am following the steps on this tutorial - https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - to be able to run the _composer-rest-server_ with a previously generated card. I am on v0.19.8.
*I tested the card importing it on the playground and then connecting to my deployed network and the connection goes perfectly.*
Nevertheless, when I run the rest server trying to connect with the same user, I get:
```
composer-rest-server | Exception: Error: Card not found: admin@supplyme-network
composer-rest-server | { Error: Card not found: admin@supplyme-network
composer-rest-server | at store.get.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/cardstore/walletbackedcardstore.js:74:27)
composer-rest-server | at
[ ](https://chat.hyperledger.org/channel/composer?msg=jGpMwyiJr28Ch4QBh) @czar0 It looks like you're running the Composer REST Server in a docker container, is this correct? If so, does this card live on your host OS, e.g. in your $HOME/.composer? If so, try mounting your $HOME/.composer directory from your host OS to /home/composer/.composer within your Composer REST Server container. (You say you are following the steps in a tutorial but in the link you provided it looks like it discusses running composer-rest-server on the host OS so it sounds like you're modifying things a bit)
[ ](https://chat.hyperledger.org/channel/composer?msg=5yXHMhKGMk7y89ERm) @silliman true, I running everything (that means also the cli) on docker containers and a share the volumes where the cards are stored.
Now, my point is, that card (filename) is obviously not there, because I stored it with a different name (as by the tutorial) and with the `.card` extension.
```
docker exec -it composer-rest-server sh
~ $ ls -la /home/composer/.composer/cards
total 20
drwxr-xr-x 6 composer composer 192 Jun 29 14:47 .
drwxrwxrwx 7 composer composer 224 Jun 29 14:43 ..
-rw-r--r-- 1 composer composer 8196 Jun 29 14:21 .DS_Store
-rw-r--r-- 1 composer composer 0 Jun 28 05:59 .gitkeep
-rw-r--r-- 1 composer composer 2508 Jun 29 14:46 PeerAdmin@hlfv1.card
-rw-r--r-- 1 composer composer 1160 Jun 29 14:47 networkadmin@hlfv1.card
```
I wanted to give a try extracting the metadata of that card and moving it into the folder `admin@supplyme-network` with the following results:
```
Connection fails: Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '5d0ab0778c448612a889187ee9a59f8e4133497de52e4d334ae77cd5b67c270c', has not been registered
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '5d0ab0778c448612a889187ee9a59f8e4133497de52e4d334ae77cd5b67c270c', has not been registered
Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '5d0ab0778c448612a889187ee9a59f8e4133497de52e4d334ae77cd5b67c270c', has not been registered
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:813:34)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=5yXHMhKGMk7y89ERm) @silliman true, I am running everything (that means also the cli) on docker containers and I share the volumes where the cards are stored.
Now, my point is, that card (filename) is obviously not there, because I stored it with a different name (as by the tutorial) and with the `.card` extension.
```
docker exec -it composer-rest-server sh
~ $ ls -la /home/composer/.composer/cards
total 20
drwxr-xr-x 6 composer composer 192 Jun 29 14:47 .
drwxrwxrwx 7 composer composer 224 Jun 29 14:43 ..
-rw-r--r-- 1 composer composer 8196 Jun 29 14:21 .DS_Store
-rw-r--r-- 1 composer composer 0 Jun 28 05:59 .gitkeep
-rw-r--r-- 1 composer composer 2508 Jun 29 14:46 PeerAdmin@hlfv1.card
-rw-r--r-- 1 composer composer 1160 Jun 29 14:47 networkadmin@hlfv1.card
```
I wanted to give a try extracting the metadata of that card and moving it into the folder `admin@supplyme-network` with the following results:
```
Connection fails: Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '5d0ab0778c448612a889187ee9a59f8e4133497de52e4d334ae77cd5b67c270c', has not been registered
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '5d0ab0778c448612a889187ee9a59f8e4133497de52e4d334ae77cd5b67c270c', has not been registered
Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '5d0ab0778c448612a889187ee9a59f8e4133497de52e4d334ae77cd5b67c270c', has not been registered
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:813:34)
at
Hi all, I have a business network architecture conceptual question: I am wonder what is the correct approach. Suppose I have an asset made up of 10000 units. The asset moves through a supply chain and pieces are broken off and set to different people. What is the best way to do this in Hyperledger composer ?
Should I start with 10,000 assets and move them together. Or start with 10000 as a property of a single object and split the child objects off as needed?
Which is easier to query later on to track the entire supply chain of one of these objects?
@czar0 A .card file is an exported card into a card file providing the ability to share cards. Composer will use cards imported/held in a card store. So playground, the rest server (for discovery only), the CLI will use a card store. The default card store is a file based card store which I hasten to add isn't just a directory containing .card files. The rest server needs access to a card store and the card name you provide is used for discovery and needs to be in that card store. The complication comes when trying to give the rest server running in the docker container a card store with the card required for discovery already in
@czar0 The tutorial you are following doesn't show trying to use the rest-server in a docker container so if you want to follow that tutorial I suggest you don't try to run the rest server in a docker container
seems complicated to trace back the supply chain using the second approach? You have a child object, do you have to recursively query its parentage? Maybe it is easier to start off with all the "Atoms" of the object and divide them up as needed, then you can just query the ownership of each "atom" through the supply chain?
[ ](https://chat.hyperledger.org/channel/composer?msg=kyG6vfsSZyN4teMYt) @sine99 yes I am using default password
[ ](https://chat.hyperledger.org/channel/composer?msg=Y6jPfE2GHojG4m3wH) @rthatcher Yes CA is running OK, I will checkout what is being logged at that end. Thanks for your input
Hey guys, is there a way to somehow order assets by their creation date through queries? What would a best practice be?
Including an identifier in every asset that is maintained by another Global asset doesn't seem like a good idea.
Not necessarily date, creation order would be just fine
[ ](https://chat.hyperledger.org/channel/composer?msg=TrSzmehxAWsaEMXB7) @ruairih - "do you have to recursively query its parentage?" - Assets can be linked through "relationship" and you would have to follow the relationships yourself in your code in a queries. The REST server does allow GET requests to Assets to add a filter to resolve relationships. The development environment allows you to quickly prototype different Business Networks, so I would suggest trying a couple of models to investigate the differences and consequences.
thanks for your reply @rthatcher . Seems like an inefficient process? You would end up making a query for every link in the supply chain? Or perhaps the asset itself needs to keep track of each parent, grandparent, greatgrandparent by carry the relationship with them in an array?
These seems like a fundamental hyperledger use case so I think I am misunderstanding something
[ ](https://chat.hyperledger.org/channel/composer?msg=DMWfTbwtPDKR3kgoD) @ruairih - you can use arrays of relationships, but I would think you would have the child linking to parent then parent to grandParent and so on, not all the generations linked directly from the child.
yes, although if you wanted the entire family tree, you have to query parent then query grandparent, then ... etc Seems very inefficient. I would have though there is a more natural way
There doesn't appear to be too much documentation on how to use the access control file to limit specific organization functions considering all orgs must use the same bna file. Could someone shed some light on this by giving an example of what an acl file would look like that would prevent one org from submitting a specific transaction type
composer network start --networkName perishable-network --networkVersion 0.2.6 -A admin -S adminpw -c PeerAdmin@hlfv
Starting business network perishable-network at version 0.2.6
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Card not found: PeerAdmin@hlfv
Command failed
can anybody help me with this error
[ ](https://chat.hyperledger.org/channel/composer?msg=muQ7qDJxiYSfAgLHm) @SwapneshNaik Try starting with `composer card list` to see what cards you have available. The admin card that gets set up for deploying business networks is typically called `PeerAdmin@hlfv1` (note the `1` on the end)
@bestbeforetoday i get again error
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: premature execution - chaincode (perishable-network:0.2.6) is being launched
Command failed
@SwapneshNaik That looks like the business network is already starting OK; just taking a little time. The start does a bunch of work, like building and starting new Docker containers to host the business network chaincode so can take a little time depending on the system, and peer timeouts waiting for the start to complete can give misleading errors
@bestbeforetoday i run the command again and it works for me thanks
Excellent! :thumbsup:
Screen Shot 2018-06-29 at 10.46.18 PM.png
can body say why iam not getting response
in response body
can anybody*
Screen Shot 2018-06-29 at 11.04.40 PM.png
Hello guys, some weeks ago, I announce I am working on a new wallet based on MongoDB, now it is done.
You can find it here: https://www.npmjs.com/package/composer-wallet-mongodb
If it can help someone, I will be happy ;-)
It works fine, I have only one issue:
```
# composer card list
Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html
Command failed
```
I have no idea why...
[ ](https://chat.hyperledger.org/channel/composer?msg=r76oydLcdQMX3brpx) @apaparazzi0329 - you are right, the doc is not too helpful on the subject. This Stack Overflow Q&A is quite good :-) https://stackoverflow.com/questions/50680188/organization-based-restrictions-for-participant-identity-issuing-in-hyperledger/50681159
[ ](https://chat.hyperledger.org/channel/composer?msg=C7oaSsAzkFzZP6Gz7) @SwapneshNaik - I would guess that you have no data - so yourr GET succeeds with a 200 response, but you get an empty array returned "[]"
You could try a POST to create data, and then retry the GET
@ppcm A wallet holds more than cards, you need to distinguish between what is a card (ie the type is a buffer) vs something else
@ppcm A wallet holds more than cards, and will be used as such. I'm guessing but the listNames api probably should only list what the names of the stored cards are and not everything stored by the wallet.
@davidkel Surely, I agree with you, but I don't know what I missed. All functions are implemented and return something coherent
The only I found this documentation https://hyperledger.github.io/composer/latest/business-network/cloud-wallets and developed wallets.
Is there somewhere a documentation where to find all needed functions?
@ppcm I don't know of any specific documentation, the various implementations provide the examples. If your implementation assumes everything that is stored in the wallet is a card then that's likely to be the problem. The wallet will be used to store more than just the cards so if listnames return the name of something that isn't a card then I think it would give that error you see
Has joined the channel.
hi, I am learning fabric/composer, and I can't find exactly what "--networkAdminEnrollSecret" mean from "composer network start ". Any ref?
@davidkel I will take a look on it
@ppcm looking at the method in the redis impl
https://github.com/hyperledger/composer-tools/blob/222d10a4a290e07e5d038f40d84be7a2701efdbc/packages/composer-wallet-redis/lib/wallet.js#L213
I would think that a buffer was a card and the string is not a card
@rthatcher Thank you for the link, however; I was more wondering how I could limit transactions per organization. For instance, I am making a business network with two orgs; the participant types are employee and manager. I want org1 to only be able to submit tx1 transactions and org2 to only be able to submit tx2 transactions. How would I do this in the acl file?
Has joined the channel.
Has joined the channel.
Is there any way to execute private Data functionality via Composer as of now?
Has joined the channel.
Hi all. I followed all of the steps to setup composer and after running npm test I'm getting the following error:
at Promise.all.then.arr (/home/devuser/github/composer/node_modules/execa/index.js:210:11)
at process._tickCallback (internal/process/next_tick.js:68:7)
(node:28634) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3)
(node:28634) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
npm ERR! Test failed. See above for more details.
I've got the Critical dependency error in Angular App connecting to composer-client through BussinessNetworkConnection API, details on https://stackoverflow.com/questions/51110468/composer-client-library-not-accesible-at-angular-app-for-subscribing-to-events Would you consider taking a look and help? regards,
Has joined the channel.
Has joined the channel.
Hi Everyone .. I am trying to do "Deploying to a multi-organization Hyperledger"
but getting the error while deploying the network
⠙ Installing business network. This may take a minute...E0629 20:38:03.291697000 140736263144320 ssl_transport_security.cc:599] Could not load any root certificate.
E0629 20:38:03.291740000 140736263144320 ssl_transport_security.cc:1400] Cannot load server root certificates.
Can someone help me know why am I getting this error
How can i remove the business cards installed on peers
how to remove a composer network which has been installed on peer ??
Clipboard - June 30, 2018 11:30 AM
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hello guys, I wanted to know if I can deploy my composer app with two peers , in my two of local machines, instead of ibm cloud, I just want to keep the ledger data with me not ibm, is that possible?
Clipboard - June 30, 2018 2:11 PM
Clipboard - June 30, 2018 2:11 PM
Has joined the channel.
Clipboard - June 30, 2018 5:39 PM
@mmomeu Hi, are you doing this on Angular? How you manage to instantiate BusinessNetworkConnection? I can't find a way to do it
also, if you tried the firing the event and then caching it with wscat, it appears only once or more times?
@sine99 Have you checked to make sure your peers are running?
Check your list of running docker containers
Can you please share article or tutorial on difference between chaincode and script file ?
Hm.. Why when I start REST server, I see in docker logs of server this error: `Error: Cannot find module 'babel-runtime/helpers/extends`?
@robvic
1. Tested wscat with `composer-rest-server -c admin@mynetwork -w` and submitted the transaction which emits the event => the event is triggered only once
2. Tested with composer playground using the same bna and submitted the same transaction => the event is triggered only once
3. Tested with my REST API (the index.js can be seen in the next pic) which uses express and the `composer-client` SDK to connect to my business network: the event is triggered 2-3 times
Clipboard - June 30, 2018 8:14 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=xbdoysFsSHTjmPcNq) @Miruthan A script file is basically just a bunch of commands that are put in a file and run in the terminal when executed. Chaincode, if I'm not mistaken, is the hyperledger fabric term for "smart contract" which basically encodes the rules for transactions.
https://hyperledger-fabric.readthedocs.io/en/release-1.1/smartcontract.html?highlight=chaincode
Clipboard - July 1, 2018 12:36 AM
Clipboard - July 1, 2018 12:36 AM
@apaparazzi0329
@apaparazzi0329 ... i hv been able to start the tutorial network....but this error still continues for my other network which gets installed but i cant start it.
Has joined the channel.
Does anyone know if you can get the latest version of composer playground on bluemix? I have been following this tutorial and reset my instances hoping to get the latest version as I have reworked my code to use async / await syntax and tested using the web playground, but can't use it when I go through the install steps and end up with Plaground v0.16.2 instead of Playground v0.19.11.
Does anyone know if you can get the latest version of composer playground on bluemix? I have been following this tutorial (https://ibm-blockchain.github.io/setup/) and reset my instances hoping to get the latest version as I have reworked my code to use async / await syntax and tested using the web playground, but can't use it when I go through the install steps and end up with Plaground v0.16.2 instead of Playground v0.19.11.
Hello guys, I wanted to know if I can deploy my composer app with two peers , in my two of local machines, instead of ibm cloud, I just want to keep the ledger data with me not ibm, is that possible?
Starting business network events at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: premature execution - chaincode (events:0.0.1) is being launched
Command failed
can any body know how to solve
Has joined the channel.
Hello there, I am trying to install composer-playground but at end of installation it fails saying below message: please adivce
verb linkBins [ { jsesc: 'bin/jsesc' },
npm verb linkBins '/home/manojsingh/.nvm/versions/node/v8.11.3/lib/node_modules/composer-playground/node_modules/.bin',
npm verb linkBins false ]
npm timing action:build Completed in 1299ms
npm verb unlock done using /home/manojsingh/.npm/_locks/staging-5cc4ad1d681e8e6b.lock for /home/manojsingh/.nvm/versions/node/v8.11.3/lib/node_modules/.staging
npm timing stage:rollbackFailedOptional Completed in 3677ms
npm timing stage:runTopLevelLifecycles Completed in 119414ms
npm verb stack Error: ENOENT: no such file or directory, chmod '/home/manojsingh/.nvm/versions/node/v8.11.3/lib/node_modules/composer-playground/node_modules/jsesc/bin/jsesc'
npm verb cwd /home/manojsingh
npm verb Linux 4.10.0-28-generic
npm verb argv "/home/manojsingh/.nvm/versions/node/v8.11.3/bin/node" "/home/manojsingh/.nvm/versions/node/v8.11.3/bin/npm" "install" "-g" "-ddd" "composer-playground"
npm verb node v8.11.3
npm verb npm v6.1.0
npm ERR! path /home/manojsingh/.nvm/versions/node/v8.11.3/lib/node_modules/composer-playground/node_modules/jsesc/bin/jsesc
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall chmod
npm ERR! enoent ENOENT: no such file or directory, chmod '/home/manojsingh/.nvm/versions/node/v8.11.3/lib/node_modules/composer-playground/node_modules/jsesc/bin/jsesc'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent
npm verb exit [ -2, true ]
Has joined the channel.
Hello guys, I wanted to know if I can deploy my composer app with two peers , in my two of local machines, instead of ibm cloud, I just want to keep the ledger data with me not ibm, is that possible?
Screenshot from 2018-07-02 00-03-16.png
Installing business network. This may take a minute...Error: Error trying install business network. Error: No valid responses from any peers.Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect FailedResponse from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect FailedCommad
anyone faced the same issue ??
am using composer v 0.19
Screenshot from 2018-07-02 01-24-22.png
needed help
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=yBLHHcDhRDtcnWhgF) @handaanmol I am also interested in this feature in v1.2. This feature: https://hyperledger-fabric.readthedocs.io/en/release-1.2/private-data/private-data.html
[ ](https://chat.hyperledger.org/channel/composer?msg=bF3e6FpTfPNPtsQNP) @dwong If you
[ ](https://chat.hyperledger.org/channel/composer?msg=bF3e6FpTfPNPtsQNP) @dwong If that IBM overview is referring to this [1] feature, then I am also looking for this feature in Composer
[1] https://hyperledger-fabric.readthedocs.io/en/release-1.2/private-data/private-data.html
@sine99 Are you following the "Developing a single organization hyperledger fabric" tutorial
Make sure you run the stopFabric and teardownFabric scripts and follow the tutorial again before trying to install and start a new network
@mmomeu It seems like a bug, I looked into https://github.com/hyperledger/composer/issues but couldn't find it, I suggest you to log your question there
Has joined the channel.
hello, anyone knows how to define an optional property in model?
string name optional @davidhu
@Farhan1122 thank you
welcome
Hello guys, I wanted to know if I can deploy my composer app with two peers , in my two of local machines, instead of ibm cloud, I just want to keep the ledger data with me not ibm, is that possible?
@prtk418 you can deploy a business network to any type of fabric network. All you need to do is create a connection profile that describes your fabric network setup. both the https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org (for the simple development fabric composer provides) and https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org (the first network example provided by fabric) take you through that process
@prtk418 you can deploy a business network to any type of fabric network. All you need to do is create a connection profile that describes your fabric network setup. both the https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org (for the simple development fabric composer provides) and https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org (the first network example provided by fabric) take you through that process of creating a connection profile that represents the fabric you will be using
Has joined the channel.
Hello, can anyone explain me what is the two difference between in network types in hyperledger composer playground, *hlfv1 and *Web Browser.
Hello, can anyone explain me what is the difference between in network types in hyperledger composer playground. *hlfv1 and *Web Browser.
Hello dear fellow, As a programming newbie I am facing a fatal error trying to install Hyperledger Composer on a macOS High Sierra version 10.13.5. This stops me from getting ahead in my IBM Blockchain foundation developer course. In file included from ../deps/grpc/src/core/lib/channel/channel_stack_builder.cc:19:
In file included from ../deps/grpc/src/core/lib/channel/channel_stack_builder.h:24:
../deps/grpc/src/core/lib/channel/channel_args.h:22:10: fatal error:
'grpc/compression.h' file not found
#include
Hello dear fellow, As a programming newbie I am facing a fatal error trying to install Hyperledger Composer on a macOS High Sierra version 10.13.5. This stops me from getting ahead in my IBM Blockchain foundation developer course.
In file included from ../deps/grpc/src/core/lib/channel/channel_stack_builder.cc:19:
In file included from ../deps/grpc/src/core/lib/channel/channel_stack_builder.h:24:
../deps/grpc/src/core/lib/channel/channel_args.h:22:10: fatal error:
'grpc/compression.h' file not found
#include
^~~~~~~~~~~~~~~~~~~~
1 error generated.░⸩ ⠸ install: info lifecycle grpc@1.10.1~install: Failed to e
make: *** [Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_stack_builder.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/Users/Filat/.nvm/versions/node/v10.5.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack at ChildProcess.emit (events.js:182:13)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:237:12)
gyp ERR! System Darwin 17.6.0
gyp ERR! command "/Users/Filat/.nvm/versions/node/v10.5.0/bin/node" "/Users/Filat/.nvm/versions/node/v10.5.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--library=static_library" "--module=/Users/Filat/.nvm/versions/node/v10.5.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v64-darwin-x64-unknown/grpc_node.node" "--module_name=grpc_node" "--module_path=/Users/Filat/.nvm/versions/node/v10.5.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v64-darwin-x64-unknown"
gyp ERR! cwd /Users/Filat/.nvm/versions/node/v10.5.0/lib/node_modules/composer-cli/node_modules/grpc
gyp ERR! node -v v10.5.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! grpc@1.10.1 install: `node-pre-gyp install --fallback-to-build --library=static_library`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the grpc@1.10.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/Filat/.npm/_logs/2018-07-01T20_20_42_749Z-debug.log
[ ](https://chat.hyperledger.org/channel/composer?msg=9Fp6XCrmCSLKJfELK) @arunwij The hlfv1 networks are the models that are running over Hyperledger Fabric and the Web Browser models haven't been deployed yet, but can be tested via web browser using Playground.
@arunwij Web browser connections are simulations of the composer runtime inside the browser itself. That is the best way to rapidly develop and test your business networks. Any other type of connection is a connection to a real fabric. When you see `hlfv1`, that is just a name defined in the connection profile. The connection profile itself describes the hyperledger fabric network it is connecting to, for example for urls of the various server nodes. You could have other connections such as `fabric-network` to connect to a different fabric network. `hlfv1` for historic reasons is the name we used for the simple fabric development server we provide.
@arunwij Web browser connections are simulations of the composer runtime inside the browser itself. That is the best way to rapidly develop and test your business networks. Any other type of connection is a connection to a real fabric. When you see `hlfv1`, that is just a name defined in the connection profile. The connection profile itself describes the hyperledger fabric network it is connecting to, for example the urls of the various server nodes. You could have other connections such as `fabric-network` to connect to a different fabric network. `hlfv1` for historic reasons is the name we used for the simple fabric development server we provide.
@arunwij Web browser connections are simulations of the composer runtime inside the browser itself. That is the best way to rapidly develop and test your business networks. Any other type of connection is a connection to a real fabric. When you see `hlfv1`, that is just a name defined in the connection profile. The connection profile itself describes the hyperledger fabric network it is connecting to, for example the urls of the various server nodes. You could have other connections to connect to a different fabric network, eg fabric-network, byfn etc. `hlfv1` for historic reasons is the name we used for the simple fabric development server we provide.
Now i can understand. Thank you both @Juanan_Tejero and @davidkel.
Has joined the channel.
Hey everyone!
Can someone explain me how consensus or the transaction workflow works in Composer? I understand that Composer is over Fabric but I cannot see the process of accepting a transaction. And how it work in a distributed system? Does every peer needs to install Composer and deploy the bna file?
Hey everyone!
Can someone explain me how consensus or the transaction workflow works in Composer? I understand that Composer is over Fabric but I cannot see the process of accepting a transaction. And how it works in a distributed system? Does every peer needs to install Composer and deploy the bna file?
Hello, someone know where i can find my rest server ? It is possible to change some function ?
Has joined the channel.
Has joined the channel.
can anyone help me installing composer in windows?
@Holtwerth Hyperledger Composer pluggable blockchain consensus and the transaction workflow / mechanics (using a sample trxn flow) are described here -> http://hyperledger-fabric.readthedocs.io/en/latest/txflow.html - generally the multi-org / multi-member blockchain main partners are 'distributed' by nature and implement their own Fabric infrastructure to participate in the blockchain network. The business network archive 'smart contract' needs to be installed on all endorsing peers that are required to support the business network runtime (executing the business network smart contract) so that they can endorse trxns etc etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=Nwskzdemm4SwwdhGo) @Poneey you can generate your own and customise functions as you wish -> https://hyperledger.github.io/composer/unstable/integrating/customizing-the-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=yjBJGJWebKgY9BMsZ) @harsha0826 officially not supported, but this resourcecan help you find a solution to get going https://davidkel.github.io/docs/Windows/Intro.html
[ ](https://chat.hyperledger.org/channel/composer?msg=sHcTTZ7AxS3zLqz2R) @mahoney1
So can I imagine a participant in Composer as peer in Fabric?
@Ukrainsky - https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html - getting grpc install errors - suggest to try with using node 8.9.x (use NVM to install different node versions) and have a min 4Gb memory.
@Holtwerth participant is someone (an 'actor') in the business network (ie mapped to a real blockchain identity, so that it is traceable from a transactional viewpoint) - see https://hyperledger.github.io/composer/latest/managing/participantsandidentities
Hi all! Could You please guide me?
I've exported *.bna from the composer
Launched it on local fabric using composer network install / composer network start command
How to connect hyperledger explorer to the existing running network? I've followed guide on the github page but it requires editing config file which I don't have in my case.
Thanks in advance
[ ](https://chat.hyperledger.org/channel/composer?msg=D5LE9dK6SoJW2oj8u)
i met this before, just restart all dockers , it works again
@DenisDoronin suggest asking about hyperledger explorer on their channel #hyperledger-explorer
@davidkel , thanks
Hey I am currently experimenting with Hyperledger Fabric and Hyperledger Composer. I did your tutorials and now I m trying to deploy a BNA on a Hyperledger Fabric network that runs on multiple hosts. Is this already supported? Because I had errors during installation.
Hi !! im currently doing the deploy in multi-organizational .... But i have this problem when im going to start the network ... Is step 17 in the Tutorial...
Clipboard - 2 de julio de 2018 12:45
im waiting but im not getting the OK or success result
i change permissions on endersementPolicy
Clipboard - 2 de julio de 2018 12:48
TimeOut ....
Hello, i already asked for this but i still don't understand ... How do you manage incrementation of asset id on your project ? I know that i have to do this on my client side but i don't understand how.. I can't search for the last id used because participant don't have access to all asset ..
And i don't understand how manage the fact that many people can create asset in the same time.
Someone can explain me ? Or better, can share an example ?
Thanks a lot !
Has joined the channel.
Hello! I am stuck here and would appreciate some help :) I have created a network using composer and followed the developer tutorial. I have managed to create a REST server(http://localhost:3000/explorer/#/) as well as the http client(http://localhost:4200/Trader). However, when I try to create a participant, I get the Error - 401: Unauthorized . Some research shows that this might be because cookies are not being passed between the REST and http client. A solution suggests to add credential flag to the client js file but I have no idea on how to go about doing this :(
Hello guys, i started an angular app using generator, and it is communicating perfectly with the rest-server , but when i switched to transactions tab, there wes only an invoke buttn, but how are the parameters to the transactions getting passed, m bit confused about this
and the rest server communication is done in firefox browser, in chrome i am having some issue, which can be found in detail here https://github.com/hyperledger/composer/issues/3949
[ ](https://chat.hyperledger.org/channel/composer?msg=QMvk4kfHrK7Ez8xJW) @Nestoteles yes it is. You need to ensure your Fabric works first, then come to Composer to configure the connection profile (part of the business network card setup) to interact with your custom multi-host environment. Someone has done a tutorial on this -> https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f - at the end, they deploy Fabric chaincode samples - to test that the FABRIC network is configured ok. You could do something similar. The errors you're seeing (if you've tested your Fabric network by deploying and interacting with some fabric chaincode samples) is likely because you've not configured your Composer environment correctly - an idea of the configuration is shown here https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org (albeit on the same machine - ) - also the info here may help you (see answer here) -> https://stackoverflow.com/questions/50100056/multi-org-setup-using-hyperledger-composer-in-multiple-machines
[ ](https://chat.hyperledger.org/channel/composer?msg=QMvk4kfHrK7Ez8xJW) @Nestoteles yes it is. The errors you're seeing (if you've tested your Fabric network by deploying and interacting with some fabric chaincode samples) is likely because you've not configured your Composer environment correctly - an idea of the configuration is shown here https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org (albeit on the same machine - ) - also the info here may help you (see answer here) -> https://stackoverflow.com/questions/50100056/multi-org-setup-using-hyperledger-composer-in-multiple-machines. So, ensure your Fabric setup (across m/cs) works first, then come to Composer to configure the connection profile (part of the business network card setup) to interact with your custom multi-host environment. Someone has done a tutorial on this -> https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f - at the end, they deploy Fabric chaincode samples - to test that the FABRIC network is configured ok. You could do something similar.
[ ](https://chat.hyperledger.org/channel/composer?msg=PKBg2sYDnPpD9DCTz) @prtk418 the first item - transactions aren't implemented in the generated skeleton app, but a solution posted here > https://github.com/hyperledger/composer/issues/4121#issuecomment-399076889 - the latter isn't a Composer issue - this may help? https://kaazing.com/inspecting-websocket-traffic-with-chrome-developer-tools/
@MariaMoreno98 are you following a tutorial? Are you (presumably) using authentication for your REST server ?
@mahoney1 oh, got it, thanks
@Poneey see response here -> https://stackoverflow.com/questions/47628303/auto-increment-field-in-composer/47634115#47634115 - best captures what you should be doing - its really a client-side thing, that's passed in deterministically (so all endorsing peers will get the same results, especially in a multi-organisational blockchain network etc etc).
@mahoney1 one more question, the current generated app is for admin, now hte another app for customers ( participants )?
@VictorReolid suggest to see answers here - seems you may have not configured your connection.json file(s) correctly - per the tutorial -> https://stackoverflow.com/questions/49667690/ssl-transport-security-cc599-could-not-load-any-root-certificate and here https://stackoverflow.com/questions/48789554/root-certificate-error-when-installing-runtime
@VictorReolid suggest to see answers here - seems you may have not configured your connection.json file(s) correctly - per the tutorial -> https://stackoverflow.com/questions/49667690/ssl-transport-security-cc599-could-not-load-any-root-certificate and here https://stackoverflow.com/questions/48789554/root-certificate-error-when-installing-runtime (the multi-org tutorial has been completed by many users at this point)
Thanks @mahoney1 !! I'm going to take a look... i saw that CA_CERT fails because i dont put the certificate... but i edit... have i did the deploy again?
[ ](https://chat.hyperledger.org/channel/composer?msg=Qnbkug3ouzsrjCPzN) @mahoney1 Thanks, i will look at this !
[ ](https://chat.hyperledger.org/channel/composer?msg=zwDAXArLXcJLFv3GS) @VictorReolid did the `composer network install` work?
y
composer network install works , but when im trying to start... takes me the issue i printed
im with 0.19.10 , im started with this last Tuesday xD
and one question.... Can i create my tmp/composer files inside fabric-dev-servers/fabric-samples/first-network?
[ ](https://chat.hyperledger.org/channel/composer?msg=Qnbkug3ouzsrjCPzN) @mahoney1 In fact i have already seen it. But it's "the best practice is to generate IDs client side" that i don't understand. How can i generate IDs if i don't know which are already use ?
Has joined the channel.
Hello Guys, in composer, the application means chaincode in Fabric?
@VictorReolid you can adapt to whatever 'tmp' area you wish to create
the problem is that i went to do it from 0
and cant install like @AnithaReddy
we have the same issue
@Poneey - it means in your client app, not inside a smart contract deployed on a peer.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=J3CyEdDJGZCwZi6MZ) @mahoney1 Yes i know, i understood. But how do you this on your client ? You can't know which ids are used or not ...
[ ](https://chat.hyperledger.org/channel/composer?msg=dGWaBgR7a5LopvEuc) @kdnmih the business network is the NodeJS chaincode and yes, its installed on Fabric's endorsing peers for native execution ; as well as providing the runtime there, Hyperledger Composer provides a higher-level model-driven language for developing smart contracts in the first place eg written in Node.js javascript. (Go chaincode is available too at a Fabric level). Obviously Composer also provides client-side APIs and tools/generators and integration tools to integrate with existing systems / applications that need to write to blockchain client-side etc.
@mahoney1 Thank you for your kind explanation :thumbup_tone2:
@mahoney1 Thank you for your detailed explanation :thumbup_tone2:
@mahoney1 I just found the solution : i will generate id with a hash of data. Thanks for your help
[ ](https://chat.hyperledger.org/channel/composer?msg=kCbLBnySm6NvdQtEh) @Poneey yes you do - you control the counter in your client app and pass in, in your transaction to the business network. Transaction processor functions (which are atomic) returns a Promise that can be resolved to a Boolean -> see https://stackoverflow.com/questions/50361936/return-a-value-in-transaction-method-in-hyperledger-composer
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=xcpuu7Ptqbf4NnZeT) @Poneey ok cool, so it doesn't need to be incremental then.
Yes, in fact my issue was with the unicity of id ...
I wonder how can i connect with external fabric network?
[ ](https://chat.hyperledger.org/channel/composer?msg=trsbNsEJQq67GrHCE) @wangdong have you already built your own custom Fabric? Or as new? You could read the multi-org tutorial -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org for guidance (albeit it all local) and understand the principles of the config elements from a Composer standpoint (connection profiles, cards, certificates, keys etc) - obviously, you'll need all the native networking / IP / DNS / host resolution / docker resolution config done so your Fabric nodes can talk to each other etc
@mahoney1 thanks for the info. I have read the doc, but fail to find it. I am farmiliar with fabric and node sdk. I just want some test on composer.
Has joined the channel.
@wangdong Composer's Development environment setup, quickly stands up a local Fabric for you for testing - (in answer to part 2 of your question) - does that help you ? https://hyperledger.github.io/composer/latest/installing/development-tools.html
Actually I need an external network, like running on some cloud.
@mahoney1
just use composer as something like client.
But your previous link helps
I need modify something to deploy it.
[ ](https://chat.hyperledger.org/channel/composer?msg=sENpeip3c344vAnac) @wangdong see last answer here -> https://stackoverflow.com/questions/46658977/how-do-i-deploy-hyperledger-fabric-composer-in-the-cloud for a headstart
[ ](https://chat.hyperledger.org/channel/composer?msg=sENpeip3c344vAnac) @wangdong with ref. to cloud - see last answer here -> https://stackoverflow.com/questions/46658977/how-do-i-deploy-hyperledger-fabric-composer-in-the-cloud for a headstart
Ah, great. thanks very much @mahoney1
I wonder how I can import the business network card to any network I am deploying. I have created the default PeerAdmin@hlfv1. However I can not manage to connect it to a new business network. Instead of "Composer Deploy" command I am running the "Composer network install" and "Composer network start". However in the latter, it does not recognize the NetworkName parameter. I wonder if anyone went through it and found a solution? Find the teminal output below:
$ composer network start –-networkName iot-perishable-network -V 0.1.12-deploy.1 -c PeerAdmin@hlfv1 -A admin –S adminpw –a dist/iot-perishable-network.bna –f networkadmin.card
composer network start [options]
Starts a specific version of a business network that is already installed to Hyperledger Fabric
Options:
--help Show help [boolean]
-v, --version Show version number [boolean]
--card, -c The cardname to use to start the network [string] [required]
--networkName, -n Name of the business network to start [required]
--networkVersion, -V Version of the business network to start [required]
--loglevel, -l The initial loglevel to set [choices: "INFO", "WARNING", "ERROR", "DEBUG"]
--option, -o Options that are specific to connection. Multiple options are specified by repeating this option [string]
--optionsFile, -O A file containing options that are specific to connection [string]
--networkAdmin, -A The identity name of the business network administrator [string] [required]
--networkAdminCertificateFile, -C The certificate of the business network administrator [string]
--networkAdminPrivateKeyFile, -K The private key of the business network administrator [string]
--networkAdminEnrollSecret, -S The enrollment secret for the business network administrator [string]
--file, -f File name of the card to be created [string]
Missing required argument: networkName
@fedez try `composer network start –-networkName iot-perishable-network -V 0.1.12-deploy.1 -c PeerAdmin@hlfv1 -A admin –S adminpw –f networkadmin.card` (you've already done the install of the bna) - see similar example in this tutorial -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
Thank you it works now!
[ ](https://chat.hyperledger.org/channel/composer?msg=GzPkTgHWwBqjHinCb) @sean Yeah, I also came across that article but they haven't mentioned any support for Composer yet.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=XjTJwhrmGyc4WG6P7) @rthatcher do you know whether this would be changed in future version?
Has joined the channel.
good morning
i have the next issue and i dont know why... some can explain me? Thanks a lot
Clipboard - 3 de julio de 2018 9:10
Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 4 Peers. Last error was Error: Error: 14 UNAVAILABLE: Connect Failed
Has joined the channel.
Hello,
I am trying to add participant in registry but getting some error below
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
deploying .bna file on to fabric network is like installation of chaincode ?? or something different ??
hello~ I wonder how to use GoLevelDB in fabric-composer.
Composer can only be used with CouchDB @yunukim in order to support the query operations
@mbwhite Thank you! should I have to use pure fabric for GoLevelDB?
Hyperledger with nodejs API
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
Why im getting an error when i tried to use ./byfn.sh -m up -s couchdb -a ?????
FAILED to execute End-2-End Escenario
@AnithaReddy A bna is chaincode. It is installed and instantiated like any other fabric chaincode, however although it is relatively easy to install a bna via other fabric capabilities such as using the peer command (if you know how), it is not trivial to instantiate that chaincode using facilities like the peer command.
@yunukim You can use configure your fabric network to not use couchdb if you so wish and you can use composer with that fabric setup, but as @mbwhite says if you don't use couchdb then you cannot use composer query support as couchdb is a pre-requisite.
@VictorReolid where did you clone the byfn sample from ? if you got it directly from the hyperledger/fabric-samples repo then the command won't work. In the multi-org tutorial you will have been directed to download a slightly different version of the fabric-samples that contains a modified version of byfn.
i take it from hyperledger composer
tuto
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz
tar -xvf fabric-dev-servers.tar.gz
with that command
@davidkel thank you for your answer!
@VictorReolid that is a simple fabric setup to add in local development of composer applications, it isn't the byfn network
@davidkel where is trade-network v .1.14???
i install v 0.1.14
but bna file in Playground is v.0.2.6-deploy.0
may i change it? may i launch again netowrk start with correct version?
or doesnt mind?
@davidkel If I can't use query how can I make getter interface? just using client sdk & access model directly?
[ ](https://chat.hyperledger.org/channel/composer?msg=RMkPH24BCmwpn49bw) @davidkel then chaincode in golang is installed in byfn network ?? when we execute ./byfn.sh -m up
@davidkel that's my error
Clipboard - 3 de julio de 2018 11:34
@VictorReolid has your fabric started correctly (`docker ps` will show you the current fabric containers running) ? did the install command work for both organisations ?
Clipboard - 3 de julio de 2018 11:36
is running @davidkel
the commando work , i have in other terminal the big E N D
hello, anyone konws where those files are after running 'composer-rest-server' ? i'd like to modify those REST services
@VictorReolid Did you manage to perform the network install for both organisations successfully ?
@davidkel i didn't saw the peers docker containers... so im trying from 0 again...
where can i get TRADE-NETWORK.bna file with version 0.1.14 like tutorial? or it doesnt matter?
@VictorReolid The version of trade-network doesn't matter. Just ensure you make a note of the name and version output when you install it as this is the name and version you need to use when you start it.
Composer business networks are node chaincode, not golang if that's what you were asking ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ydRweLhQGmkoYbXhe)
@AnithaReddy Composer business networks are node chaincode, not golang if that's what you were asking ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ydRweLhQGmkoYbXhe)
ok @davidkel but im still with erros and dont know why...
with the start
some dockers containers with peers stop..
Hi, how do i assign a string value of an asset to a variable in logic.js. I am trying ``` const assetRegistry = await getAssetRegistry('org.example.Cheque'); var chequestate = assetRegistry.chequestatus;``` but when i print value of *chequestate* it produces following output *undefined*
Has joined the channel.
How can I create authentication to my Hyperledger rest server?
Has joined the channel.
How can we know exactly our composer's business card name?
Has joined the channel.
I am not able to connect to busiess network while add participants in hyperledger using Node API...getting following error
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: getaddrinfo ENOTFOUND node_ca node_ca:7054]
does any know what is the issue
Hi all,
I tried to Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations) (https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org).
Hi all,
I tried to Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations) (https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org).
When i reached the Step Seventeen: Starting the business network. get an error : tarting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Parameter must be a ProposalResponse Object
How to solve this??
Hi all,
I tried to Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations) (https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org).
When i reached the Step Seventeen: Starting the business network. get an error : starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Parameter must be a ProposalResponse Object
How to solve this??
Hi all,
I tried to Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations) (https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org).
When i execute the Step Seventeen: Starting the business network. get an error : starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Parameter must be a ProposalResponse Object
How to solve this??
what the meaning of that :
Hyperledger Composer can only interact with a single channel so only one channel should be defined.
and what happen if i have more than 1 channel ?
@VictorReolid you will need to look at the peer logs to see what the problem is. Maybe your environment doesn't have enough memory ? For byfn I would think you need at least 4Gb.
@VictorReolid you will need to look at the peer logs to see what the problem is. Maybe your environment doesn't have enough memory ? For byfn I would think you need at least 4Gb of memory.
Has joined the channel.
@Shubham-koli Business networks are deployed to a single channel, business network cards that are used to interact with that business network will thus only interact with a single channel. You can have multiple channels and business networks on different channels but you would need business network cards to reflect this.
@sadasiba You may find this tutorial helpful https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest as well as these section in the docs https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication, https://hyperledger.github.io/composer/latest/integrating/enabling-multiuser
@saeedi in your code you have obtained an asset registry, not a specific asset. An asset registry contains assets, it won't have a property called `chequestatus`, I assume that is a property of your asset called `org.example.Cheque`
@mayurgujrathi looks like you have defined a connection profile and specified a url for a fabric ca with a hostname:port of `node_ca:7054`. But that hostname doesn't exist in your network.
@davidkel i will look it... i have space
@AMIL_SAJEEV impossible to say what the problem is, but I would check that you satisfy all the pre-req versions, eg node v8.11.x, fabric 1.1, compiser 0.19.x, linux or mac operating system at a supported level.
@VictorReolid see https://stackoverflow.com/questions/49652193/hyperledger-composer-v1-1unable-to-instantiate-chaincode
OK , thanks @davidkel !!
Hey I think I'm running into issues because I submit a transaction, but it is not published in a block yet. So when another client tries to check if a value has changed he doesn't see any changes. If he waits a couple of seconds the changed are there. Is there an option to speed this up?
I am following the tutorial
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
to deploy the bna file to e2e network
after create and import 2 business network cards, run composer install --card PeerAdmin@e2e-network-org1 --archiveFile financing@0.0.2-deploy.1.bna
I get the error:
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
Command failed
But I have success run the command in yesterday in same environment. Today is just repeat it, and change the ca pem file and private key.
Where is wrong?
@wangrangli did you delete the old business network cards using composer card delete?
Hello, i created this rule :
rule DoctorCreateIdentity {
description: "Doctor can create new identity issue"
participant: "vaccinspace.Doctor"
operation: CREATE
resource: "org.hyperledger.composer.system.IssueIdentity"
action: ALLOW
}
But i still have "fabric-ca request register failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]" when i do post on "/api/system/identities/issue", someone know why ?
@Nestoteles Yes, i delete all the old business network cards, and rm -fr $HOME/.composer .
Has joined the channel.
@Nestoteles And I find a question, when composer network install is running, there was not any connect to the peer port 7051 by netstat -ctanp | grep 7051 . It's so strange.
Hello, I am currently trying to set up a multi-machine fabric network and am not sure how to properly configure the connection.json file to create the peer admin card. Should the connection.json file include the entire fabric network (ie. the orderer, all peers, all orgs) or just what exists in the respective node (in practice, having a different connection.json file for each node) for a setup with one peer per node?
@csengor this maybe help; https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@csengor I'm doing the same work now,:)
[ ](https://chat.hyperledger.org/channel/composer?msg=43QENDdRA6DmprMWz) @wangrangli Thank you, but I am already familiar with this tutorial. It works on a single node. I want to work with multiple nodes to test the network
@csengor I think just change the ip address and port in url, maybe it will work.
@wangrangli While it could very well be the way to go, having one connection.json per org instead of one connection.json per peer doesn't really make sense to me. Also having to update connection.json files (and peer admin cards) on each peer everytime a node/peer/org is added to the fabric network, does not seem very practical either
@wangrangli but as you said, I'll just have to give it a go :)
Hello, I had a question about the possibility of iterating through a enum (is located in the model file) in the logic.js
is it possible or am I knocking on a wrong door??
How do i connect two hyperledger composers on two machines assigned as peer0 and peer1 respectively, both running on windows environment
Hello guys, since I am facing lots of trouble in implementing my app in generated angular, I am switching to PHP codeigniter for the UI, do you think I will face any kind of problem somewhere with doing it in php? I really need to know this, maybe if someone has done, please do reply
Has joined the channel.
@davidkel Yes *chequestatus* is the property of my asset named *org.example.Cheque*. How can i obtain a specific property of an asset ?
async function Received(tx) {
tx.clientasset.quantity = tx.quantity
async function Received(tx) {
const assetRegistry = await getAssetRegistry('org.example.basic.ClientAsset');
// Update the asset with the new values.
if(tx.clientasset.quantity != tx.quantity){
alert("Warning: Quantity received does not equal quantity shipped! Setting quantity to reported amount received")
}
tx.clientasset.quantity = tx.quantity
async function Received(tx) {
tx.clientasset.quantity = tx.quantity
}
Accessing a property from one of your assets can be as simple as this
You just have to make sure in your transaction model you pass in an asset such as: --> ClientAsset clientasset
In this function I am simply accessing the asset's current quantity property and setting it to the quantity set in the transaction parameters
I am having a weird issue with composer network install where even though I am passing in new-network.bna as an argument it seems to be installing the network based on saved-network.bna which is an older bna file I made but have now deleted. This seems to be a very strange issue, does anyone know something that could help solve this?
Clipboard - July 3, 2018 1:24 PM
@apaparazzi0329 I was way over my head.:sweat_smile: Thanks i got it to work. But i am receiving an error ```Error: attempt to get property chequestatus on an InvalidRelationship is not allowed. InvalidRelationship created due to Object with ID '7526' in collection with ID 'Asset:org.example.cheque' does not exist```. To my understanding it is because object doesn't exists. But i don't understand the *InvalidRelationship* part
@apaparazzi0329 I was way over my head.:sweat_smile : Thanks i got it to work. But i am receiving an error ```Error: attempt to get property chequestatus on an InvalidRelationship is not allowed. InvalidRelationship created due to Object with ID '7526' in collection with ID 'Asset:org.example.cheque' does not exist```. To my understanding it is because object doesn't exists. But i don't understand the *InvalidRelationship* part
@apaparazzi0329 I was way over my head. :sweat_smile : Thanks i got it to work. But i am receiving an error ```Error: attempt to get property chequestatus on an InvalidRelationship is not allowed. InvalidRelationship created due to Object with ID '7526' in collection with ID 'Asset:org.example.cheque' does not exist```. To my understanding it is because object doesn't exists. But i don't understand the *InvalidRelationship* part
@apaparazzi0329 I was way over my head .:sweat_smile : Thanks i got it to work. But i am receiving an error ```Error: attempt to get property chequestatus on an InvalidRelationship is not allowed. InvalidRelationship created due to Object with ID '7526' in collection with ID 'Asset:org.example.cheque' does not exist```. To my understanding it is because object doesn't exists. But i don't understand the *InvalidRelationship* part
@apaparazzi0329 I was way over my head .:sweat_smile: Thanks i got it to work. But i am receiving an error ```Error: attempt to get property chequestatus on an InvalidRelationship is not allowed. InvalidRelationship created due to Object with ID '7526' in collection with ID 'Asset:org.example.cheque' does not exist```. To my understanding it is because object doesn't exists. But i don't understand the *InvalidRelationship* part
I think its just saying you are trying to get a property from a relationship with an asset that doesn't exist thus it is invalid
@apaparazzi0329 That is strange, never came across this type of error. Try switching up arguments like this *composer network install --archiveFile new-network.bna --card PeerAdmin@byfn-network-org1*
@apaparazzi0329 Oh okay. Thanks
As I expected composer seems to be referencing an old package.json file from who knows where that I created a while ago; however, I have no idea how to change it
Clipboard - July 3, 2018 2:00 PM
I tracked down the problem to this function in the composer network install cli javascript file
After console logging "definition" as seen above I find this:
Clipboard - July 3, 2018 2:02 PM
As you can see even though I passed in new-network as the name of my network it seems that an old package.json file retains 'saved-network' as the name
I would appreciate if any of the developers could shed some light on this issue because at this point solving this issue is likely beyond me
@apaparazzi0329 the package.json file is going to be in your bna file, you can confirm this by taking a copy of your bna file, renaming it to zip, then unpacking it.
@davidkel Oh that makes alot of sense since I downloaded the bna file from the online playground under the name saved-network. Thank you!
@davidkel. Thanks. I am able to do authentication using passport-github. But I need authentication using passport-jwt. Getting some issue. Need help on it.
@davidkel Thanks. I am able to do authentication using passport-github. But I need authentication using passport-jwt. Getting some issue. Need help on it.
When I generate an angular app with the command "yo hyperledger-composer" everything works fine, but the README.md says "generated with version 1.0.1". But "ng -v" shows me "Angular CLI: 6.0.8". I'm confused because I saw a project which was generated with version 1.7.1, following the README.md of this project. How can I use the latest version to generate my project?
@Nestoteles I find the where is wrong. I had old _sk file in the /tmp/composer/org1 folder. And so the business network card will have 2 _sk file. After i clear it, composer network install work good. Thanke you!
Hello guys, since I am facing lots of trouble in implementing my app in generated angular, I am switching to PHP codeigniter for the UI, do you think I will face any kind of problem somewhere with doing it in php? I really need to know this, maybe if someone has done, please do reply
When we use rest server authentication we get access_token in cookie. Can anyone tell me how to get access_token cookie?
When we use rest server authentication we get `access_token` in cookie. Can anyone tell me how to get `access_token` cookie?
Has joined the channel.
can any one clarify his:https://stackoverflow.com/questions/51166686/who-intercepts-restapi-call-of-hyperledger-composer
can any one clarify this:https://stackoverflow.com/questions/51166686/who-intercepts-restapi-call-of-hyperledger-composer
So now we have two *PoCs* open for public reference.
Hyperledger *Fabric*: https://bit.ly/2sRYBAQ
Hyperledger *Sawtooth*: https://bit.ly/2MJDIPU
Do share your feedback
How do I run composer-rest-server with something like pm2? On my VPS, I have the composer-rest-server running but if I exit my session in Putty the composer-rest-server immediately shuts off.
[ ](https://chat.hyperledger.org/channel/composer?msg=NqcpAdk5qBREoa7vZ) @ronaldlong46 install pm2 and copy the server start command inside the script and run the script using pm2 .run the following command pm2 start yourscript.sh and to stop the server pm2 stop yourscript.sh
It is really that simple? Awesome
@chandan2409
I m getting an error while running composer multi org tutorial byfn network.
When i run byfn.sh -m -up -s couchdb -a
i got error :- channel creation failed
Failed to execute end to end scenarios
please help
channel with same name might be already created himanshuchawla009
channel with same name might be already created @himanshuchawla009
./byfn.sh -m down and then try it again @himanshuchawla009
Thanks it helped :) @AnithaReddy
@chandan2409 Thank you again man. It worked. You made my day so much easier otherwise I would have spent hours looking it up haha
Has joined the channel.
Hello, I'm new w/setting up blockchain sys w/fabric. I've inheritated a block chain system and having the following issue. Need to add a remote peer/unit to the block chain sys. All is good and am able to query and invoke transactions. My issue is that composer-rest-server on the remote peer/unit is NOT working for me, it errors saying that business network ID is not registered with the token/id number. Q: What is the process to make this composer-rest-server to be able to communite with my blockr sys? Thanks in advance.
Has joined the channel.
Has joined the channel.
Hello! What does the error `Response from attempted peer comms was an error: Error: 2 UNKNOWN: premature execution - chaincode (queries-test-network:0.0.1) launched and waiting for registration` means after I run `composer network start` ?
Has joined the channel.
Hello. Am getting this weird error when accessing Playground - Error: Corrupted zip: missing 4 bytes.
Docker logs composer-playground are saying - error: [Hyperledger-Composer] :ConnectorServer :businessNetworkCardStoreG Error: Corrupted zip: missing 4 bytes.
at ZipEntries.readEndOfCentral (/home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/jszip/lib/zipEntries.js:244:19)
at ZipEntries.load (/home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/jszip/lib/zipEntries.js:256:14)
at /home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/jszip/lib/load.js:49:20
error: [Hyperledger-Composer] :ConnectorServer :businessNetworkCardStoreG Error: Corrupted zip: missing 4 bytes.
at ZipEntries.readEndOfCentral (/home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/jszip/lib/zipEntries.js:244:19)
at ZipEntries.load (/home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/jszip/lib/zipEntries.js:256:14)
at /home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/jszip/lib/load.js:49:20
error: [Hyperledger-Composer] :ConnectorServer :businessNetworkCardStoreG Error: Corrupted zip: missing 4 bytes.
at ZipEntries.readEndOfCentral (/home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/jszip/lib/zipEntries.js:244:19)
at ZipEntries.load (/home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/jszip/lib/zipEntries.js:256:14)
at /home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/jszip/lib/load.js:49:20
error: [Hyperledger-Composer] :ConnectorServer :businessNetworkCardStoreG Error: Corrupted zip: missing 4 bytes.
at ZipEntries.readEndOfCentral (/home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/jszip/lib/zipEntries.js:244:19)
at ZipEntries.load (/home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/jszip/lib/zipEntries.js:256:14)
at /home/composer/.npm-global/lib/node_modules/composer-playground/node_modules/jszip/lib/load.js:49:20
am using the composer-cli and playground dockers tagged latest
all wisdom will be very gratefully received :)
Has joined the channel.
anyone seen this error in composer, it seems it doesn't like multiple promises against assetregistry (get then update, then get, then update in a chain) - Error: TypeError: Cannot read property 'getIdentifier' of null
anyone seen this error in composer, it seems it doesn't like multiple promises against assetregistry (get then update, then get, then update in a chain) - Error: TypeError: Cannot read property 'getIdentifier' of null
anyone seen this error in composer, it seems it doesn't like multiple promises against assetregistry (get then update, then get, then update in a chain) - Error: TypeError: Cannot read property 'getIdentifier' of null
anyone seen this error in composer, it seems it doesn't like multiple promises against assetregistry (get then update, then get, then update in a chain) - Error: TypeError: Cannot read property 'getIdentifier' of null
Hello, everyone.
I use the composer-rest-server to do data access from fabric for 2 months.
Now, I deploy the chaincode that write by composer to the e2e-network in real production enviroment. I think there was a fabric-rest-server to replace the composer-rest-server. But I find there was only a project named fabric-sdk-rest.It just privode data about fabric chains, not user data.
Is there a project named fabric-rest-server which like the composer-rest-server? Or should I use the composer-rest-server in a real production enviroment?
Can anybody please answer this?https://stackoverflow.com/questions/51169793/accessing-secured-rest-api-at-server-side-generated-by-hyperledger-composer-rest
[ ](https://chat.hyperledger.org/channel/composer?msg=2QfS8GhXxFgC5GPCu) @DamienCosset Its likely the business network on `composer network start` stated OK. The start does a quite a bit of initial work, like building and starting new Docker containers to host the business network chaincode you're instantiating, so can take a little time depending on the system, and Fabric peer timeouts waiting for the start to complete can give misleading errors.
[ ](https://chat.hyperledger.org/channel/composer?msg=zS6AMSRoa7SNsNSFG) @mahoney1 What should I do? Just wait a few minutes and try again? Restart everything?
@mahoney1 Is that error show in you run composer network start command 2nd times?
@DamienCosset just wait a few mins and try again, it should show as worked ok. The messages indicate that the chaincode could not run due to a timeout. The parameter that controls this timeout is the peer property CORE_CHAINCODE_EXECUTETIMEOUT. Building a chaincode image plus starting the chaincode can sometimes take longer so perhaps increase to 1200s, (that property) AND ALSO the timeouts in the connection.json to the same value, for the card doing the start (details as described in the REQUEST_TIMEOUT section (scroll down) here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues )
[ ](https://chat.hyperledger.org/channel/composer?msg=wt34vAAyB93M5c2hB) @wangrangli the error shows the business network isn't ready for execution, the 2nd time it should have caught up.
[ ](https://chat.hyperledger.org/channel/composer?msg=F4ewQeRJdwdJZ8jLL) anyone seen this error in composer, it seems it doesn't like multiple promises against assetregistry (get then update, then get, then update in a chain) - Error: TypeError: Cannot read property 'getIdentifier' of null seems to be due to getAll() function.
Has joined the channel.
Hi, I was just wondering if anyone has ever tried to run composer on openshift. Is it possible ?
I saw a github project but it's quite old (https://github.com/rflorenc/hyperledger-composer-ocp)
Screen Shot 2018-07-04 at 4.20.37 pm.png
composer v0.19.8
how can we access secured rest api from server side? Anyone has done this? please help
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=JokAEzg3imA3pvhZH) @HoneyShah @AnithaReddy see REQUEST_TIMEOUT section (table row 8) of the knowledge wiki -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues best to increase timeouts as suggested...
@AnithaReddy see REQUEST_TIMEOUT section (table row 8) of the knowledge wiki -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues best to increase timeouts as suggested...
@algojw you're calling a method that's not available from the object you're using. Suggest to post your model / code on [Stack Overflow](https://stackoverflow.com/questions/tagged/hyperledger-composer) so it can be viewed/answered
Hi guys,
could you please guide me where composer-rest-server places generated REST service?
i want to deploy my application using docker, for fabric there is an image, how to do same for composer-rest?
or if it's not a preferable way to deploy, what is the best practice for combination of fabric network + rest service?
thanks in advance
[ ](https://chat.hyperledger.org/channel/composer?msg=muSzxriCxT69najbT) @mahoney1 solved :)
[ ](https://chat.hyperledger.org/channel/composer?msg=XSZGeyGinnWWyxbRb) bt another error :(
Screen Shot 2018-07-04 at 5.43.13 pm.png
@DenisDoronin there's a tutorial with an example of consuming the composer-rest-server image 'FROM hyperledger/composer-rest-server' -> https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
@mahoney1, cool, thanks!
@AnithaReddy assuming you did a `composer network install` correctly then `composer network start` of the same business network, what does `composer archive list -a trade-network.bna` show (ie relative to the directory your bna file is stored) ?
[ ](https://chat.hyperledger.org/channel/composer?msg=hEdhgngeCHSKChCZb) @mahoney1 var/hyperledger/production/chaincodes created automatically ?? if yes where does it
@Anitha - 1) `docker exec -it peer0.org1.example.com /bin/bash` 2) `cd /var/hyperledger/production/chaincodes ; ls` -
@Anitha - 1) `docker exec -it peer0.org1.example.com /bin/bash` 2) `cd /var/hyperledger/production/chaincodes ; ls` -
[ ](https://chat.hyperledger.org/channel/composer?msg=YpnYFXpCPgjB2BRCW) @mahoney1 cd /var/hyperledger/production/chaincodes ; ls ----> gives trade-network.0.2.6-deploy.0
[ ](https://chat.hyperledger.org/channel/composer?msg=iWgBF9GT98Eew7zdb) bt whereas composer archive list gives --> Identifier:trade-network@0.2.6-deploy.0
Name:trade-network
Version:0.2.6-deploy.0
Screen Shot 2018-07-04 at 7.03.09 pm.png
@AnithaReddy would need this from ALL peers for each org (org1, org2) - it sounds to me like you've only installed the business network using `composer network install` etc on org1's set of peers and not on org2's ? - so - you would have to check the list of chaincodes deployed, on all peers, for both org1 - and - org2 (ie all orgs' peers). You have the commands to do that.
Has joined the channel.
Has joined the channel.
@mahoney1 do you have an example code where you run a getall then an update to an asset? It seems composer doesn't like to fire anything after a getall
Has joined the channel.
@algojw any reason why you aren't using the `await` keyword rather than doing promise chains ?
Hello guys, since I am facing lots of trouble in implementing my app in generated angular, I am switching to PHP codeigniter for the UI, do you think I will face any kind of problem somewhere with doing it in php? I really need to know this, maybe if someone has done, please do reply
how to code web ui for your composer logic
can any bdy help me
thanks in advance
Hello guys, since I am facing lots of trouble in implementing my app in generated angular, I am switching to PHP codeigniter for the UI, do you think I will face any kind of problem somewhere with doing it in php? I really need to know this, maybe if someone has done, please do reply
Has joined the channel.
hi all,
i have a single vm with 5nodes on it, the queries are taking quite lot of time
can anything be done to increase the performance of queries?
Has joined the channel.
Hi guys, Is there a way to migrate our hyperledger composer poject to hyperledger Fabric?
how to code web ui for your composer logic
can any bdy help me
thanks in advance
Has joined the channel.
Hi, is there any way to get endorser's signing time for a valid transaction ?
hello guys
I am facing this error while starting business network through composer in HL fabric
"Error trying invoke business network. Error: The event hub has not been connected to the event source",
my chaincode is getting hosted on all peers ,,,,, (one peer is down in the network)
can anybody suggest in it something
/
?
Hi @Varun2887 did you tried using docker swarm ?
[ ](https://chat.hyperledger.org/channel/composer?msg=xMyK5TFrbmRhCs9M8) anybody?
[ ](https://chat.hyperledger.org/channel/composer?msg=DucTgKJS2JFv3FjSC) @OviiyaDominic not sure of what it is?
is there any documentation around indexing the couchdb data?
@raj_shekhar Check if you can connect to EventHub specified in the card used to connect to peer(s).
```cat ~/.composer/cards/*/connection.json`
Search for 'eventUrl', then try curl
@raj_shekhar Check if you can connect to EventHub specified in the card used to connect to peer(s).
```cat ~/.composer/cards/*/connection.json```
Search for 'eventUrl', then try curl
[ ](https://chat.hyperledger.org/channel/composer?msg=7XtDnonMZkFvP7FcB) @Varun2887 i dont have any idea about indexing couchdb data.
@OviiyaDominic any idea on swarm if it will improve performance?
Hi Guys,
Can anybody tell me how to handle big files with Hyperledger Composer, as in images of digital handsigns?
Has joined the channel.
the default composer setup comes with `kafka` or `solo`
[ ](https://chat.hyperledger.org/channel/composer?msg=qYvrER8BYhYnm4T7M) @Varun2887 iam currently working in multi orgs running in docker swarm, it does not take much time to process
[ ](https://chat.hyperledger.org/channel/composer?msg=9Z6exJekFtMSvmQgm) @benjamin.verhaegen it's not a good idea store big file in blockchain.Maybe you shuld store files's sign in blockchain .
[ ](https://chat.hyperledger.org/channel/composer?msg=9Z6exJekFtMSvmQgm) @benjamin.verhaegen it's not a good idea store big file in blockchain.Maybe you should store files's sign in blockchain .
[ ](https://chat.hyperledger.org/channel/composer?msg=9Z6exJekFtMSvmQgm) @benjamin.verhaegen use IPFS for big files
@maestrus I'm trying the Base64 encoding right now, but encoded it's still 96 KB's
What's the size limit?
@ajmeraharsh how to link IPFS with Hyperledger composeR?
Is there anyway in composer to handle `MVCC_READ_CONFLICT` error?
I'm trying to write 2 transactions at the same time on 2 different peers and getting `MVCC_READ_CONFLICT` in fabric peer logs
if you want to store base64 you should split file into chunk.But it's not good idea
if you want to store base64 you should split file into chunk.But it's not good idea.
store file in external device e put only the hash for example into blockchain
[ ](https://chat.hyperledger.org/channel/composer?msg=YzBTsjfWzKd4rXCzC) @OviiyaDominic can you please share some details on it
i too have multiple orgs
@maestrus Thanks, do you have any tutorials/documentation on the hashing?
because i need to keep the img or hash within my asset
[ ](https://chat.hyperledger.org/channel/composer?msg=XFaBn2XgDazeedtPA) @benjamin.verhaegen you could calculate md5 and store into blockchain.Yoi can do in java for example and pass the value as transaction parameter
Thanks, will try this. But then you'll need the client to do these hashing for you? It's probably not a functionality which i can implement on the blockchain sidE?
[ ](https://chat.hyperledger.org/channel/composer?msg=ErKPw39t3SSxNbsCL) @benjamin.verhaegen In node.js.var data = "do shash'owania";
var crypto = require('crypto');
crypto.createHash('md5').update(data).digest("hex");
[ ](https://chat.hyperledger.org/channel/composer?msg=ErKPw39t3SSxNbsCL) @benjamin.verhaegen In node.js.var data = "do shash'owania";
var crypto = require('crypto');
crypto.createHash('md5').update(data).digest("hex");
@benjamin.verhaegen how can you send file to blockchain?you have the file in your local laptop or in a server.you could create a rest endpoint (in your custom app) that serve file as stream of bytes.And you can call this service from your js file into composer.take a look at this.https://hyperledger.github.io/composer/v0.16/integrating/call-out
thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=229Yuovzxbxf6aXrC) @OviiyaDominic probably best to ask on #fabric for that.
[ ](https://chat.hyperledger.org/channel/composer?msg=QRLa3GN6uRwxS3vpn) @SwapneshNaik there are some resources / links here for some guidance and pointers -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--node-js-application-development-questions-eg-build-real-time-apps-login-etc
@Varun2887 more info on CouchDB indexes here -> http://docs.couchdb.org/en/2.0.0/api/database/find.html CouchDB indexes are automatically generated for queries as discussed/implemented here -> https://github.com/hyperledger/composer/issues/3152 and more discussion [here](https://github.com/hyperledger/composer/issues/2190#issuecomment-335213220)
Hi,
I'm trying to issue identity but it always fails:
Issue identity and create Network Card for: restadmin
(node:99780) ExperimentalWarning: The fs.promises API is experimental
(node:99780) [DEP0079] DeprecationWarning: Custom inspection function on Objects via .inspect() is deprecated
✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed
How to solve this? I've deployed new network and started it via composer network install/ composer network start
Thanks in advance/
Hi,
I'm trying to issue identity but it always fails:
`Issue identity and create Network Card for: restadmin
(node:99780) ExperimentalWarning: The fs.promises API is experimental
(node:99780) [DEP0079] DeprecationWarning: Custom inspection function on Objects via .inspect() is deprecated
✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed`
How to solve this? I've deployed new network and started it via composer network install/ composer network start
Thanks in advance.
Hi everyone, what is the best way to build an API with composer SDK which can accept a filter just like composer rest server? Cause neither AssetRegistry.getAll() nor AssetRegistry.get(id) accepts filter as parameter.
@DenisDoronin can you post what version of Node you are running? Are you following a tutorial at this point?
[ ](https://chat.hyperledger.org/channel/composer?msg=9XZsBjDMz6bNkezY2) @labcoinpoc Filters are loopback functionality (and use Filter syntax) and as such, can only be sent using the Hyperledger Composer REST API - might be best to use a query with parameters (that you can fulfill/submit from JS APIs etc) -> https://hyperledger.github.io/composer/latest/business-network/query - also see tutorial for example of queries -> https://hyperledger.github.io/composer/latest/tutorials/queries
We've released Hyperledger Composer v0.19.12, with some sweet new TP function enhancements for returning data and having read-only/query functions, some decent serializer performance gains, and the latest CongaComic! https://github.com/hyperledger/composer/releases/tag/v0.19.12
how can i query an asset directly on couchdb? any sample code will be appreciated
this might be useful https://medium.com/wearetheledger/hyperledger-fabric-couchdb-fantastic-queries-and-where-to-find-them-f8a3aecef767 it has some sample code and links
Hi @mahoney1, node version: v10.1.0. I'm following this https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest tutorial using my own bna. I can create participant with my card but can not issue it
Hello guys, since I am facing lots of trouble in implementing my app in generated angular, I am switching to PHP codeigniter for the UI, do you think I will face any kind of problem somewhere with doing it in php? I really need to know this, maybe if someone has done, please do reply
Is there a way to issue new identities using PHP webapp, I created UI for crud using PHP , and the rest server generated by composer, but now I am not able to find a way to issue new identities, plz help anyone
One option I can think of is customizing the rest server generated by composer, please suggest if anyone has any other method
@DenisDoronin apart from the fact you are using an unsupported version of node (composer only supports the current LTS version of node which is node v8 and is ucrrently I think 8.11.3) Did the command
```
composer card import -f networkadmin.card
```
complete successfully ?
Hi @davidkel, yes, import was successful. the funny thing is I've deleted .composer, restart fabric and clear all containers and it finally worked. Should I downgrade my node to omit issues?
@DenisDoronin I would recommend doing that
Has joined the channel.
Hi everyone!! I'm quite new to hyperledger and I'm using composer in a nodeJS project, but I'm having this problem when I try to submit a transaction using the SDK... ```async recordPickLeaves(user) {
// this.assetRegistry = await this.bizNetworkConnection.getAssetRegistry('org.mobgen.mintplanteco.Ecosystem');
// const ecosystem = await this.assetRegistry.get('1');
// console.log(ecosystem)
// const factory = this.businessNetworkDefinition.getFactory();
// var transaction = factory.newTransaction('org.mobgen.mintplanteco', 'PickLeaves');
// const ecosystemRel = factory.newRelationship('org.mobgen.mintplanteco', 'Ecosystem', `1`);
// const walletRel = factory.newRelationship('org.mobgen.mintplanteco', 'MintCoin', `${user.email}`);
// transaction.ecosystem = ecosystemRel;
// transaction.wallet = walletRel;
let resource = this.serializer.fromJSON({
'$class': 'org.mobgen.mintplanteco.PickLeaves',
'ecosystem': '1',
'wallet': `${user.email}`
});
return await this.bizNetworkConnection.submitTransaction(resource);
}``` and the error I get is ```Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: org.mobgen.mintplanteco.PickLeaves is not an event```
Hi everyone!! I'm quite new to hyperledger and I'm using composer in a nodeJS project, but I'm having this problem when I try to submit a transaction using the SDK... ```async recordPickLeaves(user) {
// this.assetRegistry = await this.bizNetworkConnection.getAssetRegistry('org.planteco.Ecosystem');
// const ecosystem = await this.assetRegistry.get('1');
// console.log(ecosystem)
// const factory = this.businessNetworkDefinition.getFactory();
// var transaction = factory.newTransaction('org.planteco', 'PickLeaves');
// const ecosystemRel = factory.newRelationship('org.planteco', 'Ecosystem', `1`);
// const walletRel = factory.newRelationship('org.planteco', 'Coin', `${user.email}`);
// transaction.ecosystem = ecosystemRel;
// transaction.wallet = walletRel;
let resource = this.serializer.fromJSON({
'$class': 'org.planteco.PickLeaves',
'ecosystem': '1',
'wallet': `${user.email}`
});
return await this.bizNetworkConnection.submitTransaction(resource);
}``` and the error I get is ```Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: org.planteco.PickLeaves is not an event```
Hi everyone!! I'm quite new to hyperledger and I'm using composer in a nodeJS project, but I'm having this problem when I try to submit a transaction using the SDK... ```async recordPickLeaves(user) {
// this.assetRegistry = await this.bizNetworkConnection.getAssetRegistry('org.planteco.Ecosystem');
// const ecosystem = await this.assetRegistry.get('1');
// console.log(ecosystem)
// const factory = this.businessNetworkDefinition.getFactory();
// var transaction = factory.newTransaction('org.planteco', 'PickLeaves');
// const ecosystemRel = factory.newRelationship('org.planteco', 'Ecosystem', `1`);
// const walletRel = factory.newRelationship('org.planteco', 'Coin', `${user.email}`);
// transaction.ecosystem = ecosystemRel;
// transaction.wallet = walletRel;
let resource = this.serializer.fromJSON({
'$class': 'org.planteco.PickLeaves',
'ecosystem': '1',
'wallet': `${user.email}`
});
return await this.bizNetworkConnection.submitTransaction(resource);
}``` and the error I get is ```Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: org.planteco.PickLeaves is not an event```
Hi everyone!! I'm quite new to hyperledger and I'm using composer in a nodeJS project, but I'm having this problem when I try to submit a transaction using the SDK... ```async recordPickLeaves(user) {
// this.assetRegistry = await this.bizNetworkConnection.getAssetRegistry('org.planteco.Ecosystem');
// const ecosystem = await this.assetRegistry.get('1');
// console.log(ecosystem)
// const factory = this.businessNetworkDefinition.getFactory();
// var transaction = factory.newTransaction('org.planteco', 'PickLeaves');
// const ecosystemRel = factory.newRelationship('org.planteco', 'Ecosystem', `1`);
// const walletRel = factory.newRelationship('org.planteco', 'Coin', `${user.email}`);
// transaction.ecosystem = ecosystemRel;
// transaction.wallet = walletRel;
let resource = this.serializer.fromJSON({
'$class': 'org.planteco.PickLeaves',
'ecosystem': '1',
'wallet': `${user.email}`
});
return await this.bizNetworkConnection.submitTransaction(resource);
}```
and the error I get is ```Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: org.planteco.PickLeaves is not an event```
can anyone help please??
@yupikaiei This will be an issue with your transaction implementation. You need to emit and event instance when you do
```
emit(someObject);
```
in your business network
@yupikaiei This will be an issue with your transaction implementation. You need to emit an event instance when you do
```
emit(someObject);
```
in your business network
@yupikaiei This will be an issue with your transaction implementation. You need to emit an event instance when you do
```
emit(someObject);
```
in your business network. ie someObject should be an instance of an Event type
@yupikaiei This will be an issue with your transaction implementation. You need to emit an event instance when you do
```
emit(someObject);
```
in your business network. ie someObject should be an instance of an Event type defined in your model file
[ ](https://chat.hyperledger.org/channel/composer?msg=EJugqowKj59D3e54s) @davidkel Thanks @davidkel !! It's working now... :D
hi all, reminder that the Community call is at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community : dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 - would be great to hear from you and hear your Composer stories, and use cases on the call with lead Composer Developers - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-5th-July-2018 best regards Paul
@prtk418 see https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc for an example of using REST APIs to do something similar
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=DGJB7ACkMLofimoHX) Thank you very much for the reference, now I need to understand, suppose I have one organization,and two participants, so for client side ,do I have to use three servers each for organization/netadmin, participant 1 and participant2?
Hello, someone already try to post card on wallet by angular ? I have an internal server error but i don't know why ..
Has joined the channel.
Hello,
I would like to create a query (in the query file), on Hyperledger composer.
I would like to do a keyword search (using for example the SQL operators "like" or "regexp"), except that these operators are not supported at the moment, do you have a workaround I could use please ?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=f952b5cb-ffcf-4e3d-8daf-021a4bff6501) @prtk418 @prtk418 no - one REST server in single-user mode, one in multi-user mode (so you can interact as each participant - an identity is mapped to each participant), ie one organisation, one admin, two participants (ordinary participants of the business network)
@SteveFournier - see Stack overflow answer here -> https://stackoverflow.com/questions/50433254/how-to-query-to-include-specific-words-in-hyperledger-composer-query/50452582#50452582 - Composer doesn't support LIKE or regex, CouchDB is not an SQL database ..)
reminder that the Community call is at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community : dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 - would be great to hear from you and hear your Composer stories, and use cases on the call with lead Composer Developers - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-5th-July-2018 best regards Paul
[ ](https://chat.hyperledger.org/channel/composer?msg=M46TLAuvMJFe3XprS) To complete, i have this error on rest logs : Unhandled error for request POST /api/wallet/import: Error: MultipartParser.end(): stream ended unexpectedly: state = START_BOUNDARY
Has joined the channel.
FYI - Community call is in 10 mins approx 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community
everything was working fine on localhost on my laptop but when i deployed on server i am getting this error when i try a POST via curl to php. i am using php to access composer rest api.
string(1390) "{"error":{"statusCode":500,"name":"ValidationException","message":"Unexpected properties for type org.acme.vehicle.auction.Member: ","stack":"ValidationException: Unexpected properties for type org.acme.vehicle.auction.Member: \n at validateProperties (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:60:15)\n at JSONPopulator.visitClassDeclaration (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:118:9)\n at JSONPopulator.visit (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer/jsonpopulator.js:96:25)\n at ParticipantDeclaration.accept (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/introspect/decorated.js:54:24)\n at Serializer.fromJSON (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/serializer.js:189:26)\n at ensureConnected.then (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:634:43)\n at \n at process._tickCallback (internal/process/next_tick.js:188:7)"}}"
can anyone help me out.?
@hamza did you update a field name your model ? Sounds like you're getting the same as this ? https://github.com/hyperledger/composer/issues/4189
@hamza did you update a field name in your model ? Sounds like you're getting the same as this ? https://github.com/hyperledger/composer/issues/4189
**Queries**
Сan we make quiries that contain a relation? In documentation we can see only queries loke so:
```
SELECT org.example.Person WHERE (id > 1)
```
But what if we want to filter results by Person companies budget, where company is relation in Person model:
```
asset Person identified by id {
o String id
--> Company company
}
asset Company identified by id{
o String id
o Integer budget
}
```
Can we make this query or not?
```
SELECT org.example.Person
WHERE (company.budget > 1000)
```
It's possible to do so? I getting errors.
**Queries**
Сan we make queries that contain a relation? In documentation we can see only queries loke so:
```
SELECT org.example.Person WHERE (id > 1)
```
But what if we want to filter results by Person companies budget, where company is relation in Person model:
```
asset Person identified by id {
o String id
--> Company company
}
asset Company identified by id{
o String id
o Integer budget
}
```
Can we make this query or not?
```
SELECT org.example.Person
WHERE (company.budget > 1000)
```
It's possible to do so? I getting errors.
I able to create JWT access token. It is fine for me with cookie. But while I am trying to access using POSTMAN getting error.
Composer swagger.png
error.png
Please help me on it.
Has joined the channel.
Hi, i'm pretty newby in this world and i'm trying to build a knowledge. I have seen the read the docs documentation and the composer docs on github. But it's not clear how the composer and “shim” APIs are related. How I build the chiancode and, even more important, how i can define the data model i have to work with? It's easy to make if I use the composer, it's not explained in the tutorials that uses shim API's. Thaks!
Hi, i'm pretty newby in this world and i'm trying to build a knowledge. I have seen the read the docs documentation and the composer docs on github. But it's not clear how the composer and “shim” APIs are related. How I build the chiancode and, even more important, how i can define the data model i have to work with? It's easy to make if I use the composer, it's not explained in the tutorials that uses shim API's. Thaks! PS. I'm focusing on Fabric.
Has joined the channel.
@VadimInshakov no, can't do that Composer query language presently - query works on fields for the modeled registry defined . You could use loopback REST filters with include resolve (to resolve related Company assets) - see examples here ->https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#filters (scroll down to the 'include resolve' examples)
Clipboard - July 5, 2018 6:41 PM
@sadasiba need to set your headers most likely? You can check resources on Stack Overflow on how to do that.
how can we contribute to the project
and which programming language it is based upon
@nico.ventrella see docs here - original user story -> https://github.com/hyperledger/composer/issues/3120 - the Fabric SHIM docs that it exposes https://fabric-shim.github.io/ChaincodeStub.html The Composer docs on calling the Fabric SHIM APIs -> https://hyperledger.github.io/composer/latest/reference/js_scripts#calling-hyperledger-fabric-apis-in-transaction-processor-functions also see Stack Overflow here -> https://stackoverflow.com/questions/49535602/how-to-use-hyperledger-getnative-api?noredirect=1&lq=1
@Saurabh1402 hi there, and thanks for your question -> https://github.com/hyperledger/composer/blob/master/CONTRIBUTING.md and here -> https://github.com/hyperledger/composer/blob/master/contrib-notes/getting-started.md generally using NodeJS - we also have a contributors channel here -> https://chat.hyperledger.org/channel/composer-contributors
@mahoney1 Thanks for your quick reply. Still I am facing same issue. Please find the attached screenshot.
Screen Shot 2018-07-05 at 11.36.42 PM.png
Has joined the channel.
Hello. I have a question regarding the {"include":"resolve"} loopback filter.``` It doesent resolve relations that are in an array``` Is there a way to resolve an array of relations? I have the following asset```
``` `asset Trial identified by idTrial{
o String idTrial
o String studyName
o String description
o TodoElement[] tasks optional
o TrialStatus status optional
--> ResearchSite organiser
--> Patient[] participants optional
--> Researcher[] responsibles optional
}`
```
```
```
```
get.png
this is the response for the get request with include resolve filter. I was wondering if it would be possible for the 'responsibles' element entries to also be resolved
Has joined the channel.
ok sorry for spamming the chat. Found the problem. I somehow managed to build a relation string to a participant that doesent exist. Of course it wasnt able to resolve that relation.So problem solved. Really sry if i bothered you with the spam.
[ ](https://chat.hyperledger.org/channel/composer?msg=L5yxJ2btJoyCkgzRJ) @mahoney1 @mahoney1 Many thanks for the prompt reply. In my project I need a query with some dynamic parameters, the query file may not solve this by determining if some parameter exists, I am trying to build a dynamic query by composer SDK, I think that may work.
[ ](https://chat.hyperledger.org/channel/composer?msg=L5yxJ2btJoyCkgzRJ) @mahoney1 Many thanks for the prompt reply. In my project I need a query with some dynamic parameters, the query file may not solve this by determining if some parameter exists, I am trying to build a dynamic query by composer SDK, I think that may work.
[ ](https://chat.hyperledger.org/channel/composer?msg=L5yxJ2btJoyCkgzRJ) @mahoney1 Many thanks for the prompt reply. In my project I need a query with some dynamic parameters, the query file may not solve this by determining if any parameter exists, I am trying to build a dynamic query by composer SDK, I think that may work.
[ ](https://chat.hyperledger.org/channel/composer?msg=L5yxJ2btJoyCkgzRJ) @mahoney1 Many thanks for the prompt reply. In my project I need a query with some dynamic parameters, the query file may not solve this by determining if any parameter exists, I am trying to build a dynamic query by composer SDK. Thanks again.
Hello, I am using composer 0.19.5 , but the "limit" and "skip parameters in query do not work. I know its blocked by Fabric. Is there a way around to implement pagination or process large data in composer? Any help will be appreciated.
@ra_w 'LIMIT' and 'SKIP' are blocked by fabric. Supposed to be solved in fabric 1.3
@ra_w 'LIMIT' and 'SKIP' are blocked by fabric
Thanks for your contribution,
Has joined the channel.
Recently, i had been involve in hyperledger fabric and getting issue that is every time i restart the OS the network doesn't get start and pops the error while trying to ping the network Error trying to ping . Error no peers available to query . while i had followed all procedure composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
Hello ! I'm trying to make post on /api/wallet/import with angular but have this error on rest server : "Unhandled error for request POST /api/wallet/import: Error: MultipartParser.end(): stream ended unexpectedly: state = START_BOUNDARY", someone have an idea?
Has joined the channel.
Dear all,
I am trying to test my contract using Jenkins but I have an error that I do not know how to solve.
Error:
ReferenceError: require is not defined
at __generator (eval at
anyone knows how to remove IDs in composer-playground?
Clipboard - July 6, 2018 4:20 PM
I want to clear the revoked IDs
Has joined the channel.
In my POC we have a single VM(AWS m4.xlarge) where we have hosted 5 nodes,
• In case of single user interaction – transactions are taking 5-14 sec
• In case we are adding load of 5-6 users on blockchain simultaneously the transactions starts taking over 1 min and fails sometime.
Can something be done to reduce the transaction time and something to avoid transactions failures.?
@Varun2887 Do you have a URL i can check this?
[ ](https://chat.hyperledger.org/channel/composer?msg=n8SmKFoJbxvWiTs9Y) @SunilMaharjan see the ANSWER https://stackoverflow.com/questions/47767190/hyperledger-composer-error-identity-has-not-been-registered-once-issued-after-re/47771864#47771864 - you need to understand Docker a little more. This answer, should allow you to quiesce your environment and restart your Fabric, after you restart your OS.
@Poneey Probably need to add a header to the request to set the content type to be multipart/form-data - see import example in this https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
[ ](https://chat.hyperledger.org/channel/composer?msg=9xvLizKFDboYo9GtR) @ajmeraharsh its private url
not exposed over internet
@richzhao IDs you remove from the top section under 'My IDs' (eg as an admin removing the user you want to remove), not bottom section (your screenshot) -
[ ](https://chat.hyperledger.org/channel/composer?msg=89YBj68bbh93ZvJoS) @mahoney1 Thanks but i already added this header and i saw this tutorial
@sadasiba see examples here -> https://stackoverflow.com/questions/24709944/jwt-token-in-postman-header (ps from your screenshot, your token expiry date - is in the past!)
@mahoney1 thanks, I have removed, but it is still on the page, but marked revoked
and I cannot create a new one with the same ID
@Gerard9494 currently using Travis CI - see more here https://hyperledger.github.io/composer/latest/business-network/testing and more info here https://github.com/hyperledger/composer/wiki/Builds incl links. Its possible your test error is because you are running into something similar to this ? https://stackoverflow.com/questions/31931614/require-is-not-defined-node-js/31931649
Any one any idea on how to improve `transaction` performance
how can we increase the performance of composer network?
- Multiple node?
- Multiple peer?
- Increase CPU?
- Install nodes on different machines?
- multiple orderer?
What shall be done?
Hi, can anyone give me a link to a tutorial on how to write js chaincode ? The tutorials on the official website aren't really comprehensive...
[ ](https://chat.hyperledger.org/channel/composer?msg=cuzZbxXgsnRgCPvNS) I think it's an error on my header .. But if i put "Content-type : multipart/form-data" like said this tutorial, i have "Error: bad content-type header, no multipart boundary" .. Any idea ?
[ ](https://chat.hyperledger.org/channel/composer?msg=mu3M7RyM55gxSh8km) @ndatebayo You're in the _composer_ channel so maybe you want this tutorial for creating a Composer business network in JavaScript: https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html
If you want to write raw (Fabric) chaincode then this tutorial might be the best starting point: http://hyperledger-fabric.readthedocs.io/en/latest/chaincode4ade.html. The examples are all in Go but there are links to the Node SDK and the API they provide is very similar. Alternatively you might find more help on Fabric chaincode on the #fabric or #fabric-chaincode-dev channels
Has joined the channel.
@Varun2887 this paper on Fabric performance may help you -> https://blockchain-fabric.blogspot.com/2018/05/hyperledger-fabric-performance.html (the factors you should consider addressing) and the paper https://arxiv.org/pdf/1805.11390 plus some tips here -> https://stackoverflow.com/questions/49933422/hyperledger-fabric-scalability?rq=1 as well usual things like network, processor, disk and CPU speeds. and perhaps considering hardware crypto acceleration to yield the optimal performance?
@Poneey, from angular, not sure how you're calling it (seems the reason for boundary error is it seems its needs to be provided, if the content-type is set in your situ ) - there are some answers on Stack Overflow as shown [here](https://stackoverflow.com/questions/44725549/how-to-use-angularjs-http-to-send-multipart-form-data)) for example
Hello guys, new developer here trying to do a composer network install on a bna (made from composer playground online) onto a local fabric instance on AWS EC2, and I'm getting REQUEST_TIMEOUT error constantly. I've opened up a github issue here if anyone could look at it: https://github.com/hyperledger/composer/issues/4237
[ ](https://chat.hyperledger.org/channel/composer?msg=Bh5akkNsgtowp6wi9) @Johnnyhoboy I'd start by looking at the peer logs to see what went wrong during install. The install should be very fast (unless you're uploading a huge BNA) so usually when the client side sits around a then times out waiting for confirmation of the install, something failed at the peer
I am not sure where to post this but has anyone tried running hyperledger composer in multi-host with docker swarm?
i am currently facing the following issue: https://stackoverflow.com/questions/51211417/hyperledger-composer-cli-on-multi-host
I have been trying to solve this issue for the past 3 days, but haven't gotten very far
[ ](https://chat.hyperledger.org/channel/composer?msg=h2nNu9YPygsXdvhYS) @KushagraTiwary We have it running on Docker Swarm. Checkout the following on troubleshooting composer issues: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md You error is on this page.
[ ](https://chat.hyperledger.org/channel/composer?msg=h2nNu9YPygsXdvhYS) @KushagraTiwary We have it running on Docker Swarm. Checkout the following on troubleshooting composer issues: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md Your error is on this page.
[ ](https://chat.hyperledger.org/channel/composer?msg=3HwSbShrXcB9Jjj8W) @julian Okay great I will look at that. Did you configure the CLI by using the connection.json file or did you use something else?
yes you need to create connection profiles. These are used by client side applications to access the fabric. e.g. composer
[ ](https://chat.hyperledger.org/channel/composer?msg=JqHq9ekPLgMZkjQGA) @KushagraTiwary yes you need to create connection profiles. These are used by client side applications to access the fabric. e.g. composer
[ ](https://chat.hyperledger.org/channel/composer?msg=4GctLRv8LP76sfqJD) @julian sorry for the annoyance, but i am not able to find the error on this page. Within which subsection will it be?
Has joined the channel.
hello,everyone.
When I write the client program with fabric Java SDK, how do we directly invoke the transaction function defined in composer code?
Is the transaction functions defined in composer will change their function names after they are deployed to the chain?
[ ](https://chat.hyperledger.org/channel/composer?msg=MCvB9AtxxunLaJseD) @mahoney1 will an endorsement policy `1-of` 5 nodes be better against `5-of` 5 nodes better for performance?
also when we have multiple peers for an organization how does other peers of organization comes into picture for better performance?
they needs to be clustered separately? basically would like to understand how does composer cards uses multiple peers of an organization?
also can we configure `transaction` timeout? and number of parallel connection that can be created with a node?
@Varun2887 How many organisations do you have ?
@Varun2887 How many organisations do you have ? surely its the decision of the architecture to determine which organisations should endorse the chaincode proposals, not a factor for performance
Has joined the channel.
I have developed the bna file using the hyperledger composer, composer makes use of the hyperledger fabric. I have deployed the hyperledger fabric and composer on my local machine. Question about where can i see the world state and blockchain records?
[ ](https://chat.hyperledger.org/channel/composer?msg=J7rKhqf7RTYmeLGub) @richzhao I think u can't. u can just deactivate it
Now that Composer is getting closer to GA, is there a better sense of when it will be required/appropriate? I can definitely see the value for initial modeling and piloting of a network, but I'm curious as to whether there are any current metrics related to performance/stability comparing Fabric standalone to Fabric+Composer. Any other criteria that should be included as a basis for comparison, such as maintainability, ease of System of Record integration, etc.?
[ ](https://chat.hyperledger.org/channel/composer?msg=b8kA8WQSrxjMXexgu) @davidkel have 5 organizations
Has joined the channel.
Hey, everyone. I was having some trouble installing composer. When I run `npm install -g composer-cli` with the global flag it fails saying it doesn't have access to my `node_modules` dir. However, `echo $PATH | grep node_modules` returns `:/usr/lib/node_modules`. Running with sudo (against the tutorials advice) just gets stuck in a loop.
Clipboard - July 8, 2018 1:08 PM
hello, everyone. Is there any way to create a new administrator by name and password like the admin/adminpw in composer? I use composer identity to bind the admin user to a id. And then i use it again bind it to another channel user id. composer network ping the card is failed like upon picture.
hi, has anyone tried to deploy a multi org business network to hyperledger fabric according to https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org AND ended up with a ACTIVATION_REQUIRED when pinging the newly create network admin? The error:
`[0m [my-channel][6440e133] failed to invoke chaincode name:"my-network" , error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '79498a0861ccc6a5d1e93abe23d79b1c935c87c46f268398af741e2336d37c84', must be activated (ACTIVATION_REQUIRED)`
hi, has anyone tried to deploy a multi org business network to hyperledger fabric according to https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org AND ended up with a ACTIVATION_REQUIRED when pinging the newly create network admin? The error:
`[0m [mychannel][6440e133] failed to invoke chaincode name:"mynetwork" , error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '79498a0861ccc6a5d1e93abe23d79b1c935c87c46f268398af741e2336d37c84', must be activated (ACTIVATION_REQUIRED)`
@mmomeu do you have success call composer identity command? I think your question has some relationship as my question upon.
[ ](https://chat.hyperledger.org/channel/composer?msg=iJEkrJiWA7CiF6YH8) @wangrangli To go a bit further, I configure the business network as follows:
`
#install the network; PeerAdmin@* cards are already imported
composer network install --card PeerAdmin@Org1 --archiveFile mynetwork.bna
composer network install --card PeerAdmin@Org2 --archiveFile mynetwork.bna
composer network install --card PeerAdmin@Org3 --archiveFile mynetwork.bna
#create additional administrative users for each oganization
composer identity request -c PeerAdmin@Org1 -u adminorg1 -s adminpw -d adminorg1
composer identity request -c PeerAdmin@Org2 -u adminorg2 -s adminpw -d adminorg2
composer identity request -c PeerAdmin@Org3 -u adminorg3 -s adminpw -d adminorg3
#start the network
composer network start -c PeerAdmin@Org1 -n mynetwork -V 0.0.1 -o endorsementPolicyFile=./endorsement-policy.json -A adminorg1 -C adminorg1/adminorg1-pub.pem -A adminorg2 -C adminorg2/adminorg2-pub.pem -A adminorg3 -C adminorg3/adminorg3-pub.pem
#create/import cards for the network admins
composer card create -p ./myconnectionprofile-org1.json -u adminorg1 -n mynetwork -c adminorg1/adminorg1-pub.pem -k adminorg1/adminorg1-priv.pem -f ./cards/adminorg1@$mynetwork.card
composer card import -f ./cards/adminorg1@$mynetwork.card
composer card create -p ./myconnectionprofile-org2.json -u adminorg2 -n mynetwork -c adminorg2/adminorg2-pub.pem -k adminorg2/adminorg2-priv.pem -f ./cards/adminorg2@$mynetwork.card
composer card import -f ./cards/adminorg2@$mynetwork.card
composer card create -p ./myconnectionprofile-org3.json -u adminorg3 -n mynetwork -c adminorg3/adminorg3-pub.pem -k adminorg3/adminorg3-priv.pem -f ./cards/adminorg3@$mynetwork.card
composer card import -f ./cards/adminorg3@$mynetwork.card
`
All commands succeed, but when I execute for example `composer network ping -c adminorg2@$mynetwork` I get the error posted above. I mention that I create my custom PeerAdmin@* with new crypto material using `cryptogen` and my custom channel using `configtxgen`
[ ](https://chat.hyperledger.org/channel/composer?msg=iJEkrJiWA7CiF6YH8) @wangrangli To go a bit further, I configure the business network as follows:
`#install the network; PeerAdmin@* cards are already imported`
`composer network install --card PeerAdmin@Org1 --archiveFile mynetwork.bna`
`composer network install --card PeerAdmin@Org2 --archiveFile mynetwork.bna`
`composer network install --card PeerAdmin@Org3 --archiveFile mynetwork.bna`
`
`#create additional administrative users for each oganization`
`composer identity request -c PeerAdmin@Org1 -u adminorg1 -s adminpw -d adminorg1`
`composer identity request -c PeerAdmin@Org2 -u adminorg2 -s adminpw -d adminorg2`
`composer identity request -c PeerAdmin@Org3 -u adminorg3 -s adminpw -d adminorg3`
`
`#start the network`
`composer network start -c PeerAdmin@Org1 -n mynetwork -V 0.0.1 -o endorsementPolicyFile=./endorsement-policy.json -A adminorg1 -C adminorg1/adminorg1-pub.pem -A adminorg2 -C adminorg2/adminorg2-pub.pem -A adminorg3 -C adminorg3/adminorg3-pub.pem`
`#create/import cards for the network admins`
`composer card create -p ./myconnectionprofile-org1.json -u adminorg1 -n mynetwork -c adminorg1/adminorg1-pub.pem -k adminorg1/adminorg1-priv.pem -f ./cards/adminorg1@$mynetwork.card`
`composer card import -f ./cards/adminorg1@$mynetwork.card`
`composer card create -p ./myconnectionprofile-org2.json -u adminorg2 -n mynetwork -c adminorg2/adminorg2-pub.pem -k adminorg2/adminorg2-priv.pem -f ./cards/adminorg2@$mynetwork.card`
`composer card import -f ./cards/adminorg2@$mynetwork.card`
`composer card create -p ./myconnectionprofile-org3.json -u adminorg3 -n mynetwork -c adminorg3/adminorg3-pub.pem -k adminorg3/adminorg3-priv.pem -f ./cards/adminorg3@$mynetwork.card`
`composer card import -f ./cards/adminorg3@$mynetwork.card`
All commands succeed, but when I execute for example `composer network ping -c adminorg2@$mynetwork` I get the error posted above. I mention that I create my custom PeerAdmin@* with new crypto material using `cryptogen` and my custom channel using `configtxgen`
[ ](https://chat.hyperledger.org/channel/composer?msg=iJEkrJiWA7CiF6YH8) @wangrangli To go a bit further, I configure the business network as follows:
`#install the network; PeerAdmin@* cards are already imported`
`composer network install --card PeerAdmin@Org1 --archiveFile mynetwork.bna`
`composer network install --card PeerAdmin@Org2 --archiveFile mynetwork.bna`
`composer network install --card PeerAdmin@Org3 --archiveFile mynetwork.bna`
`
`#create additional administrative users for each oganization`
`composer identity request -c PeerAdmin@Org1 -u adminorg1 -s adminpw -d adminorg1`
`composer identity request -c PeerAdmin@Org2 -u adminorg2 -s adminpw -d adminorg2`
`composer identity request -c PeerAdmin@Org3 -u adminorg3 -s adminpw -d adminorg3`
`
`#start the network`
`composer network start -c PeerAdmin@Org1 -n mynetwork -V 0.0.1 -o endorsementPolicyFile=./endorsement-policy.json -A adminorg1 -C adminorg1/adminorg1-pub.pem -A adminorg2 -C adminorg2/adminorg2-pub.pem -A adminorg3 -C adminorg3/adminorg3-pub.pem`
`#create/import cards for the network admins`
`composer card create -p ./myconnectionprofile-org1.json -u adminorg1 -n mynetwork -c adminorg1/adminorg1-pub.pem -k adminorg1/adminorg1-priv.pem -f ./cards/adminorg1@$mynetwork.card`
`composer card import -f ./cards/adminorg1@$mynetwork.card`
`composer card create -p ./myconnectionprofile-org2.json -u adminorg2 -n mynetwork -c adminorg2/adminorg2-pub.pem -k adminorg2/adminorg2-priv.pem -f ./cards/adminorg2@$mynetwork.card`
`composer card import -f ./cards/adminorg2@$mynetwork.card`
`composer card create -p ./myconnectionprofile-org3.json -u adminorg3 -n mynetwork -c adminorg3/adminorg3-pub.pem -k adminorg3/adminorg3-priv.pem -f ./cards/adminorg3@$mynetwork.card`
`composer card import -f ./cards/adminorg3@$mynetwork.card`
All commands succeed, but when I execute for example `composer network ping -c adminorg2@mynetwork` I get the error posted above. I mention that I create my custom PeerAdmin@* with new crypto material using `cryptogen` and my custom channel using `configtxgen`
[ ](https://chat.hyperledger.org/channel/composer?msg=iJEkrJiWA7CiF6YH8) @wangrangli To go a bit further, I configure the business network as follows:
`#install the network; PeerAdmin@* cards are already imported`
`composer network install --card PeerAdmin@Org1 --archiveFile mynetwork.bna`
`composer network install --card PeerAdmin@Org2 --archiveFile mynetwork.bna`
`composer network install --card PeerAdmin@Org3 --archiveFile mynetwork.bna`
`#create additional administrative users for each oganization`
`composer identity request -c PeerAdmin@Org1 -u adminorg1 -s adminpw -d adminorg1`
`composer identity request -c PeerAdmin@Org2 -u adminorg2 -s adminpw -d adminorg2`
`composer identity request -c PeerAdmin@Org3 -u adminorg3 -s adminpw -d adminorg3`
`#start the network`
`composer network start -c PeerAdmin@Org1 -n mynetwork -V 0.0.1 -o endorsementPolicyFile=./endorsement-policy.json -A adminorg1 -C adminorg1/adminorg1-pub.pem -A adminorg2 -C adminorg2/adminorg2-pub.pem -A adminorg3 -C adminorg3/adminorg3-pub.pem`
`#create/import cards for the network admins`
`composer card create -p ./myconnectionprofile-org1.json -u adminorg1 -n mynetwork -c adminorg1/adminorg1-pub.pem -k adminorg1/adminorg1-priv.pem -f ./cards/adminorg1@$mynetwork.card`
`composer card import -f ./cards/adminorg1@$mynetwork.card`
`composer card create -p ./myconnectionprofile-org2.json -u adminorg2 -n mynetwork -c adminorg2/adminorg2-pub.pem -k adminorg2/adminorg2-priv.pem -f ./cards/adminorg2@$mynetwork.card`
`composer card import -f ./cards/adminorg2@$mynetwork.card`
`composer card create -p ./myconnectionprofile-org3.json -u adminorg3 -n mynetwork -c adminorg3/adminorg3-pub.pem -k adminorg3/adminorg3-priv.pem -f ./cards/adminorg3@$mynetwork.card`
`composer card import -f ./cards/adminorg3@$mynetwork.card`
All commands succeed, but when I execute for example `composer network ping -c adminorg2@mynetwork` I get the error posted above. I mention that I create my custom PeerAdmin@* with new crypto material using `cryptogen` and my custom channel using `configtxgen`
@wangrangli All identities have to be bound to a participant. The act of binding will register the identity to the runtime. To bind an identity to a participant take a look at the `composer identity bind` command
I can't find my transactions in CouchDB (via Futon or Couch REST API): there are only documents with transactions id, but these documents doesn't have other fields defined in the transaction model (amount, who sended and who received). So, does CouchDB store full transactions anywhere?
[ ](https://chat.hyperledger.org/channel/composer?msg=6jkxPwiAGAwXadzNi) @davidkel it's actually me who raised the issue :) you suggest to bind the card to a participant, but how can I bind the card if there is NO participant in the network, AND how can I add a participant in the network if I can't use my admin cards since they fail at ping?
@mmomeu so looking at your composer network start command that should have bound those 3 public certificates to participants. Do any of those identities work ?
Hi guys, How do i check the owner of a transaction using javascript in logic.js file in Hyperledger Composer
[ ](https://chat.hyperledger.org/channel/composer?msg=gjqPgdpufywXvyjNG) @davidkel I have 3 peers belonging to three different Orgs with 3 different CAs. Therefore, I have a docker-compose.yaml where I define the CA containers, and Org1 for example starts the CA using `fabric-ca-server start .... -b adminorg1:adminpw`. That's why I use them `composer network start -A adminorg1 -C adminorg1/adminorg1-pub.pem ...` command, because they are registered as default identities in the CAs. What else do I need to bind them to?
[ ](https://chat.hyperledger.org/channel/composer?msg=gjqPgdpufywXvyjNG) @davidkel I have 3 peers belonging to three different Orgs with 3 different CAs. Therefore, I have a docker-compose.yaml where I define the CA containers, and Org1 for example starts the CA using `fabric-ca-server start .... -b adminorg1:adminpw`. That's why I use them in `composer network start -A adminorg1 -C adminorg1/adminorg1-pub.pem ...` command, because they are registered as default identities in the CAs. What else do I need to bind them to?
@mmomeu The identity has not been registered implies that the certificate being used hasn't been bound to a participant and thus isn't registered into the runtime. The start command should have bound those 3 certs to participants. The cards (based on the sequence of commands presented) should have included those certs. I am assuming you are using the file system to store cards (rather than a cloud based wallet) so you could try deleting the `${HOME}/.composer` directory and trying again. If that works then have you been using `composer card delete` to clear out old cards ? If so then I may know what the cause is
@davidkel yes, using the local fs for the cards. Removed the `${HOME}/.composer` and retried: still the same issue. And yes, been using `composer card delete` to remove cards so far. What could be the cause then?
@mmomeu Deleting the .composer directory and it working would have suggested that old certs were being left behind on a delete and not being overwritten when a new card was imported, but as that didn't fix the problem then it wasn't that.
@davidkel thank you. Maybe the question is I don't have admin user in the new channel. Because in the first channel named mychannel, All the command run ok.
@wangrangli let me get this straight: you have 2 channels, each with multiple peers and one channel works bu the other doesn't?
@wangrangli let me get this straight: you have 2 channels, each with multiple peers and one channel works bu the other doesn't? If so, how did you configure the network peers in the first channel and does pinging them work?
Has joined the channel.
@davidkel maybe you could guide me a bit more on my issue. In addition, I mention that I define my own CAs for each org and start them up with a docker-compose.yaml which contains commands similar to: `command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.network.org-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/0055363bc297dc8f8269c5faca03bf1b47e7e6a73d737132252ac572d6f99b71_sk -b adminorg1:adminpw -d'`. Do I need additional fabric-ca-server/client commands to activate the adminorg1 identity?
Has joined the channel.
@mmomeu if your issue was getting the ACTIVATION_REQUIRED message, then what is likely happening is that there is a problem with your fabric setup such that composer is not able to connect to the peer event hubs. Normally this error is never seen and the client sdk handles the activation for you. But I believe that although you get this message the identity will have been activated and you shouldn't get it again
@mmomeu My current situation is that 2 organizations, each organization has 2 peers, these 4 peers have joined the 3 channel. I completed a chain code deploy through composer in the first channel. Then, I cleared all the composer information, rewritten the JSON for connecting second channel on second channel, and had completed the "composer network start" command. However, when the "composer network ping" command is executed, it prompts that "The current identity, with name 'admin' and the identifier '71f1a2a....38d4f4d', has not been registered.
hank you.
https://stackoverflow.com/questions/51221642/hyperledger-composer-performance
Has joined the channel.
howdi whore!
howdi ho!
@wangrangli Each channel has it's own ledger and business networks are scoped to a channel. That means participants that exist on 1 business network in a channel do not exist in the same deployed business network in a different channel. You need to create participants for each business network you have deployed onto each channel and bind identities to those participants. When you perform a start of each business network part of the start is to create initial participants and bind identities to that participant (through the specification of the -A/-S or -A/-C parameters).
Hey guys
I am trying to run composer-rest-server in docker for persistence data storage using mongodb as described in the Composer documentation https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server.html. When i run this I am not able to access rest server by using the URL http://localhost:3000/explorer ( I am getting "The Connection was reset" message in the browser). The docker logs are showing following messages, any pointers in resolving this issue is much appreciated:umamaheswarv@umamaheswarv-VirtualBox:~$ docker logs -f rest s
[2018-07-09T06:43:17.939Z] PM2 log: Launching in no daemon mode connection.json digital-health@0.0.4.bna models
[2018-07-09T06:43:18.016Z] PM2 log: Starting execution sequence in -fork mo digital-health enrollAdmin.js package.json
de- for app name:composer-rest-server id:0 digital-health@0.0.1.bna features permissions.acl
[2018-07-09T06:43:18.027Z] PM2 log: App name:composer-rest-server id:0 onli digital-health@0.0.2.bna hfc-key-store README.md
ne digital-health@0.0.3.bna lib registerUser.js
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config f umamaheswarv@umamaheswarv-VirtualBox:~/workspace/composer/digital-health$ c
ile names. d
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode umamaheswarv@umamaheswarv-VirtualBox:~$ source envvars.txt
Discovering types from business network definition ... umamaheswarv@umamaheswarv-VirtualBox:~$ cd
(node:16) DeprecationWarning: current URL string parser is deprecated, and umamaheswarv@umamaheswarv-VirtualBox:~$ cd /home
will be removed in a future version. To use the new parser, pass option { u umamaheswarv@umamaheswarv-VirtualBox:/home$ ls
seNewUrlParser: true } to MongoClient.connect.
Has joined the channel.
Has joined the channel.
I am trying *composer-rest-server* in docker mode to have persistent data storage using mongo db. I followed the steps described in the composer page https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server.html. But i am not able to access REST server using the URL http://localhost:3000/explorer and am getting error message "The connection was reset" in the browser. Following messages are logged by the docker rest sever, appreciate if you can provide pointers to resolve this issue: umamaheswarv@umamaheswarv-VirtualBox:~$ docker logs -f rest
[2018-07-09T06:43:17.939Z] PM2 log: Launching in no daemon mode
[2018-07-09T06:43:18.016Z] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-07-09T06:43:18.027Z] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...(node:16) DeprecationWarning: current URL string parser is deprecated, and
will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Hi, I'm running a composer network and I'm trying to code a new transaction where I update an asset. I used "assetRegistry.update(tx.contrat);" to do so but I get this error "Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: TypeError: assetRegistry.update is not a function".
Can anyone help me please ?
[ ](https://chat.hyperledger.org/channel/composer?msg=Zt7MmsCQG9MbqoZe7) @ndatebayo take a look here: https://hyperledger.github.io/composer/latest/api/runtime-assetregistry ;)
Does composer have support for `private data` released in Fabric 1.2?
[ ](https://chat.hyperledger.org/channel/composer?msg=GdxTCifnv7CkskSEF) @umamaheswarv how does your `COMPOSER_DATASOURCES` looks like?
[ ](https://chat.hyperledger.org/channel/composer?msg=Wedjo47npjsdastok) @waleed Thanks I'll try this :)
@waleed I used same as described in the composer page : COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
[ ](https://chat.hyperledger.org/channel/composer?msg=eo2wExTaGQuh4ya67) @waleed @waleed I used same as described in the composer page : COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
[ ](https://chat.hyperledger.org/channel/composer?msg=eo2wExTaGQuh4ya67) @waleed I used same as described in the composer page : COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
[ ](https://chat.hyperledger.org/channel/composer?msg=2zjh92jwouPQwYyF4) @umamaheswarv try this. I am not sure if it works
```
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo",
"useNewUrlParser": true
}
}'
```
If I have zookeeper and kafka nodes are on different machines how can I make them communicate with eachother?
[ ](https://chat.hyperledger.org/channel/composer?msg=Wedjo47npjsdastok) @waleed I used the exact same code structure, I don't have any error but the asset is not updated, do you have any idea of the problem ?
[ ](https://chat.hyperledger.org/channel/composer?msg=7L53YpdbqySW3x8vC) @HoneyShah take a look here. https://docs.docker.com/v17.09/engine/userguide/networking/default_network/container-communication/
[ ](https://chat.hyperledger.org/channel/composer?msg=z9wbuEyut4cmmcAoe) @ndatebayo can you show me your code and the transaction in cto file?
[ ](https://chat.hyperledger.org/channel/composer?msg=fHMgo5r9uSumWcQnM) @waleed the cto :
`transaction VersementRemboursement {
o String versementRemboursementId
o DateTime date
o Double montantRemboursement
--> ContratAsset contrat
}`
the .js :
`/**
* Create a new contract
* @param {org.allianz.agcs.versements.VersementRemboursement} tx - the contract transaction
* @transaction
*/
async function verserRemboursement(tx){
var contrat;
return getAssetRegistry('org.allianz.agcs.contrat.ContratAsset')
.then(function(contratAssetRegistry){
var factory = getFactory();
contrat.test = true;
return contratAssetRegistry.update(contrat);
})
.catch(function (error) {
});
}
`
[ ](https://chat.hyperledger.org/channel/composer?msg=7L53YpdbqySW3x8vC) @HoneyShah something like this may help https://gist.github.com/mkanchwala/fbfdd5ef866a58a77f6e or generally, ask on #fabric
@ndatebayo probably need something like `tx.contrat.test = true; return contratAssetRegistry.update(tx.contrat);`
@ndatebayo probably need something like `tx.contrat.test = true; return contratAssetRegistry.update(tx.contrat);` ps much easier to use async/await these days - for [reference](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js)
[ ](https://chat.hyperledger.org/channel/composer?msg=jwtZwxLY7mAhuE3JR) @waleed @waleed - Thanks for the suggestion. I tried it but it is not resolving the issue. Still REST server is not reachable. If i try normal "composer-rest-server" i am getting error "port 3000 already in use". It appears docker rest-server is running on 3000 port but for some reason it is not responding to client.
[ ](https://chat.hyperledger.org/channel/composer?msg=G5RtpEiJ6W9bMJdf5) @umamaheswarv the problem you have is not because of the port. the rest container wasn't ready to be called in the browser because of the DeprecationWarning
[ ](https://chat.hyperledger.org/channel/composer?msg=ETzfobtg5ervnPFQD) @mahoney1 It works thanks a lot!
[ ](https://chat.hyperledger.org/channel/composer?msg=EkmnBig6wHT5X4qEY) @waleed Oh... Is this a bug or the fix is/will be present in next release
[ ](https://chat.hyperledger.org/channel/composer?msg=6DtiCBpsqZxz5BSow) @umamaheswarv I am not sure if this is a bug. it works on my machine. @mahoney1 do you have an Idea?
[ ](https://chat.hyperledger.org/channel/composer?msg=CbpkkxQuKejqyMzSq) @varunagarwal not yet, but we're working on it this week, will keep you updated.
[ ](https://chat.hyperledger.org/channel/composer?msg=CbpkkxQuKejqyMzSq) @varunagarwal not yet, but we're working on it in the coming weeks, will keep you updated.
Hello ! I'm trying do a post request on api/wallet/import but it returns this error ""message": "MultipartParser.end(): stream ended unexpectedly: state = START_BOUNDARY",", someone have an idea ?
@umamaheswarv @waleed hi there, the problem iwth the PM2 errors is a resolution (from inside the dockerized REST server) issue - it can't resolve 'localhost' in the connection.json for the business network card when it was launched (in the container) via docker run or similar. See the answer here -> https://stackoverflow.com/questions/50312488/hyperledger-composer-rest-server-error-trying-to-ping-error-no-peers-availab about container resolution. There is a `sed` sequence that does it as a 'one-liner' in the Google Auth tutorial [here](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) - just search for the text `sed -e` and copy the sequence to replace with the docker container names (obviously if you're not using `localhost` then you will have to customise it :-) ) - then stop any running instance(s) of the REST server and re-run via docker cmd line with the business network card (that has a changed connection.json).
@umamaheswarv @waleed hi there, the problem with the PM2 errors is a resolution (from inside the dockerized REST server) issue - it can't resolve 'localhost' in the connection.json for the business network card when it was launched (in the container) via docker run or similar. See the answer here -> https://stackoverflow.com/questions/50312488/hyperledger-composer-rest-server-error-trying-to-ping-error-no-peers-availab about container resolution. There is a `sed` sequence that does it as a 'one-liner' in the Google Auth tutorial [here](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) - just search for the text `sed -e` and copy the sequence to replace with the docker container names (obviously if you're not using `localhost` then you will have to customise it :-) ) - then stop any running instance(s) of the REST server and re-run via docker cmd line with the business network card (that has a changed connection.json).
@umamaheswarv @waleed hi there, the problem with the PM2 errors is a resolution issue (from inside the dockerized REST server) - it can't resolve 'localhost' in the connection.json for the business network card when it was launched (in the container) via docker run or similar. See the answer here -> https://stackoverflow.com/questions/50312488/hyperledger-composer-rest-server-error-trying-to-ping-error-no-peers-availab about container resolution. There is a `sed` sequence that does it as a 'one-liner' in the Google Auth tutorial [here](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) - just search for the text `sed -e` and copy the sequence to replace with the docker container names (obviously if you're not using `localhost` then you will have to customise it :-) ) - then stop any running instance(s) of the REST server and re-run via docker cmd line with the business network card (that has a changed connection.json).
hi, I am trying to create two-organization network using composer with both org having two peers. First organization channel is getting created properly but second org channel is not getting created
Getting error like /Channel/application/ at version 0 but got version 1
docker exec peer0.org1.example.com peer channel create -o orderer.example.com:7050 -c composerchannel -f /etc/hyperledger/configtx/composer-channel.tx
docker exec peer0.org2.example.com peer channel create -o orderer.example.com:7050 -c composerchannel -f /etc/hyperledger/configtx/composer-channel.tx
What is the difference between identity bind and wallet setDefault?
Great to know. The feature is quite interesting
@rajanashutosh I believe that Fabric error is because the channel already exists, did you do a proper cleardown from a previous attempt? What tutorial are you following?
@prtk418 one binds an identity (from Fabric CA) to a participant (in the composer business network ; the other is assigning (in the REST API's /Wallet) the default business network card (ie an identity already bound to a participant at that point), such that future B N interactions / transactions are using this identity (when posted from the REST client).
@prtk418 one binds an identity (issued by an Org's Fabric CA) to a participant (in that org, present in the composer business network ; the other is assigning (in the REST API's /Wallet) the default business network card (ie an identity already bound to a participant at that point), such that future B N interactions / transactions are using this identity (when posted from the REST client).
@prtk418 one binds an identity (issued by an Org's Fabric CA) to a participant (in that org, present in the composer business network) ; the other is assigning (in the REST API's /Wallet) the default business network card (ie an identity already bound to a participant at that point), such that future B N interactions / transactions are using this identity (when posted from the REST client).
[ ](https://chat.hyperledger.org/channel/composer?msg=LekReKhL74MnWsBCZ) So when a user sign's up we have to execute both of these? And we can execute them in any order right?
Has joined the channel.
@davidkel thanks!
@mahoney1 Thanks!!, I am following https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org.html
Hi, this is with respect to composer rest server. Documents mentions that we can enable multiple authentication mechainsm's. I have tried githunb and jwt authentication mechanism individually. How do we enable both of the for the same rest server?
Has joined the channel.
**CouchDB data structure**
I can't find my transactions in CouchDB (via Futon or Couch REST API): there are only documents with transactions id, but these documents doesn't have other fields defined in the transaction model (amount, who sended and who received). So, does CouchDB store full transactions anywhere?
@mahoney1 @waleed
Hi, is it possible to get the ID of the current transaction in the javascript function ? I can't find the right syntax on internet
Thanks
Hi, how do I find the history of all the changes made to an asset form its creation ? I'm trying to prove the traceability in my PoC.
What is historian data? Is it the same as the block in Fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=eC425MyyZovf4992E) @ndatebayo you can find it in transaction registry after transaction submited
@Nestoteles depends on your setup / configuration etc - this may also help -> https://arxiv.org/pdf/1805.11390.pdf
[ ](https://chat.hyperledger.org/channel/composer?msg=eC425MyyZovf4992E) @ndatebayo its called `tx.transactionId` (where tx is passed in)
[ ](https://chat.hyperledger.org/channel/composer?msg=6CahJufzkEPvpMc6c) @VadimInshakov See here for interacting with CouchDB -> https://stackoverflow.com/questions/49872747/query-a-from-ledger-in-hyperledger-fabric and example code - the transaction model is modeled in Composer
@josiebhai see item 6 in table here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks - Historian is a business network registry containing historical records (actions such as adds, updates, deletes,etc etc) in the business network https://hyperledger.github.io/composer/latest/reference/historian.html
[ ](https://chat.hyperledger.org/channel/composer?msg=5FDm5LdEcxBXs5b6H) @koineramitranjan you would define multiple strategies see example here -> https://stackoverflow.com/questions/51157254/accessing-the-oauth-scope-information-with-composer-rest-server
@prtk418 when a user signs up, you can bind their issued identity to an issued participant, create their BN card, make it available to the user, so that he/she can interact with the business network card. The order is important: you would have to issue/bind first ; create the BN card ; then do the Wallet import that via REST (/Wallet etc - see example here -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
[ ](https://chat.hyperledger.org/channel/composer?msg=Bcd3XcSdEZQyHy6Fm) @mahoney1 Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=mXj7wodSi9whhJejj) So when the user re logs in , we don't have to do anything?all the binding and wallet importing should be done at first signup right?
@mahoney1 thanks, but I just want to know, is the transaction history stored in the database or not (not historian records, but list of all transactions with all properties defined in model)? Or it stored in ledger only?
Hello, I am working on enabling multiple user mode for the REST server. Created a participant in the single rest server and issue the identity to that participant using composer identity command, import that card to the multi user rest server. When I am trying to do a transaction in the multi user rest server getting an issue like participant *does not have 'READ' access to resource*. Is it possible to provide the access to the participant using composer cli. Please help me out. Thank you.
@prtk418 - I don't know who 'we' refers to - you would have to programmatically request an identity be issued for the signed-up participant and a business network card (contains cert/key) is issued for the signed-up user to interact with the business network (if that's what you want to do etc etc)
@VadimInshakov the transaction history is stored on the ledger and accessed via its transaction class registry which you can query (eg. with the fields available for the txn type as appopriate) - see https://stackoverflow.com/questions/46036099/how-to-show-transaction-input-data-in-a-hyperledger-composer-query
@MasthanbeeShaik you imported the card to the wallet of the REST API client (eg. browser) - you need to add the appropriate ACLs to allow that participant to access the business network - see ACL tutorial for example https://hyperledger.github.io/composer/latest/tutorials/acl-trading
@MasthanbeeShaik you imported the card to the wallet of the REST API client (eg. browser) - you need to add (and therefore update your biz etwork) the appropriate ACLs to allow that participant to access the business network - see ACL tutorial for example https://hyperledger.github.io/composer/latest/tutorials/acl-trading
Hi
I am updating and adding one asset through transaction. The transaction is executing successfully. But in the asset registry its not showing any records. And also the asset is not getting updated.. What could be wrong? Its not even throwing any error...
@Pranoti, strange - are you connecting to a real Fabric or using Playground (ie validating results in two different windows) - or else you have ACLs that don't allow you to see the created Asset (yet)
@Pranoti, strange - are you connecting to a real Fabric or using Playground (ie validating results in two different windows and connections) - or else you have ACLs that don't allow you to see the created Asset (yet)
@mahoney1 thanks! it's exactly what I wanted to know
[ ](https://chat.hyperledger.org/channel/composer?msg=5rb68vkhifdXuwgn6) @mahoney1 I have checked on both actually. On playground blumix and locally installed hyperledger composer. On both its showing the same results. And I have imported admin card which has all the access rights..
[ ](https://chat.hyperledger.org/channel/composer?msg=oqh99aeYNbxv8XT9v) @mahoney1 Thank you so much for the response. So I need to add the permissions to the participant in the ACL file in composer playground only or is there any way to give permissions to the particpant.
Can anyone plz tell when to use composer native js sdk over rest server? I m searching what is the best practice in a particular scenario.
[ ](https://chat.hyperledger.org/channel/composer?msg=bBLWtJQ2mc9s8J6bC) @MasthanbeeShaik you're adding the rules (to the permissions.acl file) for the business network, which is then created as a business archive file .bna file (that's installed in a Fabric environment or would need upgrading there at least if previously installed). If just using playground (with web connection only,) you can just add it for use in playground, click deploy and test (interacting as the different identities you need to - to ensure its working etc)
@Pranoti not sure, you could post your model and transaction logic to Stack overflow so we can take a look.
@himanshuchawla009 see https://hyperledger.github.io/composer/latest/applications/applications-index and also useful example here -> https://www.skcript.com/svr/how-to-build-nodejs-application-for-your-hyperledger-composer-networks/
@himanshuchawla009 see https://hyperledger.github.io/composer/latest/applications/applications-index and also useful resources here -> https://www.skcript.com/svr/how-to-build-nodejs-application-for-your-hyperledger-composer-networks/ and [here](https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc) for REST bits
i already followed these tutorials but not getting the exact benefit of using js sdk.
[ ](https://chat.hyperledger.org/channel/composer?msg=6cwaBWu223skMzeXC) @mahoney1 Thank you We are trying to use that in real time environment. Can I add the users and permissions dynamically.
[ ](https://chat.hyperledger.org/channel/composer?msg=6cwaBWu223skMzeXC) @mahoney1 Thank you for the respnse. We are trying to use that in real time environment. Can I add the users and permissions dynamically?
[ ](https://chat.hyperledger.org/channel/composer?msg=YKBzHz6SWWHoXgqm5) I meant, is it required to issue identity and generate bn card every time a user/client logs in, or it is a one time process (only during first signup)
@himanshuchawla009 it can depend on architectural preferences - specific examples where (like any client SDK) where the JS SDK is preferred to interact with a business network vs whether a REST Server may be deployed or not - or not desired. On the other side, REST allows more flexibility/scalability and standardizes the interactions with the business network such as briefly articulated by the diagram here -> https://stackoverflow.com/questions/44382503/overhead-to-using-composer-rest-server-over-javascript-node-sdk anyway you get the drift.
@prtk418 sure - see links, resources and an example here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#cardapis
[ ](https://chat.hyperledger.org/channel/composer?msg=2Xtp3ZZKQztuYteBr) Ok thanks
Does anyone know if there is a way to implement into the composer architecture the ability to have participants authenticate with public/private keys... like most public chains do?
ive noticed you use the keys for generating cards, so is it just as simple as that?
@mgcox fabric identities are mapped to participants by the composer runtime. In order to interact with fabric you need a valid identity which means a private key to sign the transaction and associated public certificate which is sent in with the transaction
ahhh thanks @davidkel so it sounds like it ends up being the same thing
I have started to learn Hyperledger Fabric and Composer. I am able to create a simple Business Network using Composer and deploy it on Fabric, but I have a question. Let's say I have 2 BNA (instantiated on single channel `mychannel`) files both having same namespace (`org.example`) and having same participant name as well, as Customer (identifier will be `org.example.Customer`). Is there any way that I can access the participants created by first Business Network App in another Business Network App? Logically what I can think of is since both have been instantiated in the same channel with different chaincode and same model file, data should be cross accessible. But it isn't.
Has joined the channel.
is hyperledger composer the correct way to create and test an application?
in the hello world example I can create a SampleAsset that belongs to a partecipan that doesn't exist
apparently there is no check in the demo for that, and also the transactions works on such an asset
how would you fix this for example?
I know CTO files are the model but what kind of files are they? I never heard of that extension
are organizations a way to group the partecipants or peers of the network? for example buyers and sellers?
are all peers/partecipants by default in the same channel? If so is that channel the only existing by default? Who can create channels? The admin only?
hello, have u tried customizing restAPI which generated by composer-rest-server? does query.qry support join? how to implement paging?
[ ](https://chat.hyperledger.org/channel/composer?msg=NHKWkrQyJwgZPom3k) @mahoney1 Replacing localhost with IP address in connection.json resolved the issue. Thank you @mahoney1 and @waleed for your quick response.
my transactions are failing when i hit them in parallel though the docker logs are not showing any error
i checked on all the peers and orderer no error logs :(
I am following the steps mentioned in the documentation https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org and was able to create the fabric network along with network cards. But while importing card
composer card import -f PeerAdmin@byfn-network-org1.card --card PeerAdmin@byfn-network-org1
I am getting following error
Failed to import the business network card
keyword : required
dataPath: .orderers['grpcOPtions']
schemaPath: #/required
can MVCC be avoided by Kafka?
Has joined the channel.
I have rectified the above issue and was able to successfully import the network card. But now I am stuck with another issue
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
All the docker containers are running
When you create a network card and import it, how exactly things works in background
I got this error when deploy new bna file.
Clipboard - July 10, 2018 3:18 PM
I am practice https://github.com/IBM/BlockchainNetwork-CompositeJourney?cm_sp=IBMCodeCN-_-build-a-blockchain-network-_-Get-the-Code , this is second time run
any one can give me suggestion to fix it?
。。
@davidkel I found the solution for my problem with the wallet for MongoDB
The problem was not encryption of data, but Composer use multiple instances of the wallet with different prefix (not documented)
Now composer-wallet-mongodb is fully operational for those who want to use it
https://www.npmjs.com/package/composer-wallet-mongodb
Any suggestion is welcome
should i consider bigchaindb for storing authtentication data or centralised mongodb is enough?
hey hi !!! i have created a fabric network having two organisations and two peers each and deployed a node js chaincode on all the 4 peers having two transaction functions addAsset() and viewAsset() now my requirement is organisation 1 has to add the asset and organisation 2 has to view the added asset how can i differentiate this and execte the viewAsset transaction on peers of oraganisation 2
[ ](https://chat.hyperledger.org/channel/composer?msg=Zu3NcS8ijmBHPvN4P) @davidhu no, the underlying CouchDB does not support JOINS nor does the queries.qry file. Others here can comment on REST - on paging, this guide (in the answer) may help with CouchDB paging especially #2nd answer
@richzhao you could always trying upgrading your existing BN with your new bna (with new version in package.json) as shown in Step Three and Step Four in this tutorial -> https://hyperledger.github.io/composer/latest/tutorials/queries
Removed all the existing cards, re-generated the crypto and configtx elements still facing same issues.
Error trying to install business network. No valid responses from any peers
Checked all the docker containers, they are up and running
@himanshuchawla009 we recommend that you use a LoopBack connector for a NoSQL database. For example, MongoDB (as shown in the examples) or Apache CouchDB.
@AnithaReddy if you use Composer, you can implement ACLs for the add / view (read) operational restrictions (each participant defined by each Org's admins). TYou can invoke a query chaincode on your peer of choice (ie not Composer) to read/view that org's peer to query the current values
@AnithaReddy if you had used Composer, you would implement ACLs for the add / view (read) operational restrictions (each participant defined by each Org's admins). TYou can invoke a query chaincode on your peer of choice (ie not Composer) to read/view that org's peer to query the current values
eventEMIT
[ ](https://chat.hyperledger.org/channel/composer?msg=drj3nRvmbcM53wWoC) @mahoney1 yes i have used composer how can i invoke chaincode on particular peer using composer ??
[ ](https://chat.hyperledger.org/channel/composer?msg=zBD8ZqhMskba63ZgM) and also whats the code in test/logic.js file ??
When multiple user mode is enabled on REST server, is it necessary for the REST clients to share their clientID and clientSecret with the REST server admin so that the admin can configure these values in COMPOSER_PROVIDERS environment variable while starting the REST server.
When multiple user mode is enabled on REST server, is it necessary for the REST clients to share their clientID and clientSecret with the REST server admin so that the admin can configure these values in COMPOSER_PROVIDERS environment variable while starting the REST server? Reason for asking this question is suppose my application/product allows huge number of users to participate in the network, it is going to be a challenge for the administrator and the participant may or may not willing to share these details
I will check and try thx @mahoney1 [ ](https://chat.hyperledger.org/channel/composer?msg=4eaY25QK4jYBGGLt2)
Has joined the channel.
Hi
i have problem with installing business network and i have encountered following error:
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
Has joined the channel.
Hey,
Hey, I keep getting this error when trying to run the script: ./createPeerAdminCard.sh "No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher". I have checked and I have installed composer-cli at that version, running on node 8.0.0
I have tried on node 8.9.0 as well but I get the same error
[ ](https://chat.hyperledger.org/channel/composer?msg=GPZNd4cbNQNoaW5ws) @blob Hi, did you install it as root or non-root?
[ ](https://chat.hyperledger.org/channel/composer?msg=tkqiFqW7c6JSwBC6P) @Krait82 install which?
[ ](https://chat.hyperledger.org/channel/composer?msg=vmzqzTueq3oaPBhK5) @blob For npm install commands you should not run them as root
Hi All, On installing the business network archive file, I am getting following error "Error trying install business network. Error: No valid response from any peers"
Response from attempted peer was an error: Error: REquest_timeout.
Network Arch: One orderer, with 4 organisations and each org with 2 peers. 4 CA one for each org
[ ](https://chat.hyperledger.org/channel/composer?msg=ymtaLsDdZ3P2dZxrK) @Krait82 should I uninstall it all, and then reinstall as non-root then?
[ ](https://chat.hyperledger.org/channel/composer?msg=rYEuyWjEC6Fjiq3wN) @GhazanfarAli try with updating connection profiles and install it again
[ ](https://chat.hyperledger.org/channel/composer?msg=cm2FTRr4r7TXW8rzK) @blob yes, with npm install -g composer-cli
Docker containers verified, each CA up and running along with other containers. Request your help
[ ](https://chat.hyperledger.org/channel/composer?msg=ok8pKG9v2yDEb7qax) @Krait82 Thank you for the help, especially for such a dumb question hahaha
@blob you shouldn't install with root
[ ](https://chat.hyperledger.org/channel/composer?msg=xHdDEdiewzu3hD627) @rajanashutosh check your network coonectivity and try to start it multiple times
@AnithaReddy , Thanks for response. but have tried multiple times re-generating cryto and genesis block, cards. But it always comes and gets stuck here. Again I am going to drop entire network and do it once again
[ ](https://chat.hyperledger.org/channel/composer?msg=8JGsKHK4cvKJNCBkf) @rajanashutosh https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org once have a look at this
@AnithaReddy, I am following same tutorial and performing the steps. composer network install --card PeerAdmin@byfn-network-org1 --archiveFile trade-network.bna this step creates the issue and peers are not communicated. I verified the logs but seems like request itself is not getting communicated to clients/peers
[ ](https://chat.hyperledger.org/channel/composer?msg=3dyfLqBesf2QrLQd6) @richzhao I get this error when trying to install without root: checkPermissions Missing write access to /usr/local/lib/node_modules
npm ERR! path /usr/local/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR! { Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/usr/local/lib/node_modules' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
[ ](https://chat.hyperledger.org/channel/composer?msg=PALifqvkrfYhybRdd) @rajanashutosh make sure you clear out your old cards in $HOME/.composer after doing your teardown of Fabric before restarting tutorial. Also you can increase any network start timeouts as shown here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues (ie row 8 onwards in the table, starting with 'REQUEST_TIMEOUT')
you can install node at your own home folder or grant access to '/usr/local/lib/' to your owne id
@blob
Has joined the channel.
any one knows how to completely remove asset/participants/id/cards from composer-playground?
@AnithaReddy effectively you would run a query using a specific query biz network card containing the peer in question
@mahoney1 can you help me to remove everything with composer
I re-installed composer-cli, rest-server, composer-playground, but IDs are still there
@mahoney1 , I would try this and update yu
Thanks
I've redone everything as non-root and I still get this error message: ~/fabric-tools$ ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher
any ideas?
try to uninstall composer-cli and install version 0.19.5
@blob
@blob suggest you uninstall node. Then use `nvm` to manage installs of node for you which will also manage putting the correct version of node on your $PATH to ensure it can be picked up by other applications
@blob suggest you uninstall node. Then use `nvm` to manage installs of node for you which will also manage putting the correct version of node on your $PATH to ensure it can be picked up by other applications. Install nvm as a normal user (do not install it as root)
@davidkel which version should I be using at this point? I've heard that 8.0.0 should work fine but I've tried with that and 8.10
@blob once you have `nvm` installed, just type `nvm install --lts`. That will give you the most appropriate version of node to use
[ ](https://chat.hyperledger.org/channel/composer?msg=TfjYxchWxDLA4oWfa) @monolith hi, did you figure out what the issue is? running into the same problem.
@Tetiana It's because you have installed node as root. We don't recommend this as of the extra knowledge around how node and npm works in this environment to get it to work. I suggest you uninstall node, then install `nvm` under your regular userid (ie don't install as root) then use this to install a version of node. best options is to do `nvm install --lts`
[ ](https://chat.hyperledger.org/channel/composer?msg=ZsL6wQGG2ki6PDmn6) @davidkel thank you. I will try that. appreciate quick response.
@richzhao - do `composer card delete -c
@richzhao - do `composer card delete -c
thank you very much
@richzhao @davidkel Thanks a lot guys, finally got it working :)
removed .composer and ran teardownFabric.sh
but got new error when deploying
Clipboard - July 10, 2018 8:47 PM
Hello guys, I am setting up my own authorization for rest server, as I can use passport for my usecase, so I did set the access_token and the userId in cookie but , when calling any api it still says unauthorized, do I have to make any more changes somewhere? And for info I am using PHP oauth2
[ ](https://chat.hyperledger.org/channel/composer?msg=aX4bDWJ5chhazsG7R) @mahoney1 i didnt get this can u please find some time?
[ ](https://chat.hyperledger.org/channel/composer?msg=cff9d41f-9550-4167-9922-aa5035a392b5) @prtk418 did you check out https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest OAUTH2 tutorial ? It should be similar in terms of all the steps you need to do.
@AnithaReddy answered on Stack overflow [here](https://stackoverflow.com/questions/51261682/to-access-ledger-data-from-different-peers)
@richzhao -did you already deploy in same environment? If not, maybe some docker caching thing going on? - try running teardownAlFabric.sh choose option 1) - then remove cards from $HOME/.composer ; then ./startFabric.sh followed by ./createPeerAdminCard.sh
Has joined the channel.
Hi All, I am having issue Composer, can you please look at the issue and recommend a possible solution https://stackoverflow.com/questions/51236829/hyperledger-composer-unhandled-error
I am kind of stuck
[ ](https://chat.hyperledger.org/channel/composer?msg=kuxcsJEikq8evp5Ma) @mahoney1 thanks
Hello, did someone already try to post card on /wallet/import with javascript ? I can't achieve this request ...
For hyperledger composer to run I understand that we need to create a channel since the connection.json file is specific to that channel. But do we have to make the peer join that channel or just creation should work.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=e4Pd8CND2RnLCmHct) @Poneey I did this through my Angular App
[ ](https://chat.hyperledger.org/channel/composer?msg=t3vkaaduEfSn7WAAz) @KushagraTiwary If u don't join the peer to channel, u won't have access to the ledger data. this is fabric concept. it has nothing to do with composer
[ ](https://chat.hyperledger.org/channel/composer?msg=JmmzFSqXNP3KjHAeF) @SriSris I need more Info to help. the error shows that `/bootstrap.min.css.map` not found!
@waleed that is exactly what is thrown on console
I dont see any other errors thrown on console of Composer or Anuglar
[ ](https://chat.hyperledger.org/channel/composer?msg=RcjvkRyh5jSMcPao3) @SriSris oke, just for test: go to http://localhost:3000/explorer and try to add an Asset or execute any transaction or get all assets. just do any request to make sure that the rest API works.
@waleed I get that error only when I execute adding a participant using angular front end. I dont have issues when I use Swagger tool.
I was able to execute my Rest API's successfully without issues using Swagger
Through Front End I am having issues
@SriSris this great! that we know where the problem is :)
@SriSris this is great! that we know where the problem is :)
@SriSris can u show me how do you send the requests from your frontend to the rest api?
Does any one know about any product built in blockchain w.r.t KYC and identity management?
fyi - reminder that the Community call is at 9am UTC (10am UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-11th-July-2018 best regards Paul
Has joined the channel.
Has joined the channel.
Hi, in the documents it says abt Peers, Orderer and consensus. I saw few samples and also executed them on Composer. How do I co relate these terms-Peers,Orderer,Consensus with the sample. Who is playing what role in that? Can someone please explain
there is no teardownAIFabric.sh do you mean teardownDocker.sh @mahoney1 [ ](https://chat.hyperledger.org/channel/composer?msg=ECuBJHbENNmea3Tgk)
Has joined the channel.
Hi, Is the composer chaincode same as the NodeJS chaincode which Fabric has started supporting recently.?
when we deploy golang chaincodes, we see the container coming up which are the sandbox for the chaincode. In case of composer, also same thing happens? And this container would be a NodeJS container?
If I want to use the putState and getState from the composer, I got to know that there is a nativeAPI invoker available from the composer. But does this bring up any additional containers?
Has joined the channel.
how would I go about creating and testing identities other than admin on my network
Hello, in my use case I'd like to have users be able to sign transactions that will be reflected on the blockchain, but do not participate or direct connect to the blockchain itself. My first thought was to have the users sign their requests with a unique private key and then verify the signature inside the chaincode, but this proves difficult as no crypto libs can be imported. My second approach was to have users be "participants" and generating certs for them, but then it proves difficult to have them sign a transaction it advance without directly connecting to the blockchain. In addition I think this would require users to send their certs at least temporarily to the server which will be connecting to the blockchain on their behalf. Is there some way of having users sign requests that I am missing here?
Hi all , I got an error while ping
Command : `composer network ping -c admin@hmr`
Hi all , I got an error while ping
Command : `composer network ping -c admin@hmr`
error : ` unexpected end of json`
I installed fabric in two machines , composer chaincode is installed and instantiated ,but not able to ping the network .
i found that my orderer version is 1.2.0 ,is this the error ?
Hi all , I got an error while ping
Command : `composer network ping -c admin@hmr`
error : ` unexpected end of json`
I installed fabric in two machines , composer chaincode is installed and instantiated ,but not able to ping the network .
i found that my orderer version is 1.2.0 , Does this matters ? , and all my fabric images are 1.1.0 ,
composer version 0.19.7 , node v8.10.0
Hi all , I got an error while ping
Command : `composer network ping -c admin@hmr`
error : ` unexpected end of json`
I installed fabric in two machines , composer chaincode is installed and instantiated ,but not able to ping the network .
my fabric images are 1.1.0 ,
composer version 0.19.10 , node v8.11.3
@christian3042 seems you got the same error . Did you resolved It ?
Hello all. I'm calling a transaction that is set to return an array of Accounts. I'm using the composer rest server to call that transaction. The transaction executes well but I do not see the array returned in the response body or anywhere else. Can I get return values from functions through the REST server?
Here is the function decl:
`/**
* function to load accounts associated with a consumer, optionally filtered by
* AccountApprovalStatus or AccountStatus
* @param {org.scsvault.history.LoadConsumerAccountsTx} loadConsumerAccountsTx
* @returns {org.scsvault.history.Account[]} The resulting array of accounts
* @transaction
*/`
and the data model decl:
@commit(false)
@returns(Account[])
transaction LoadConsumerAccountsTx {
@bjrnt - try using a javascript crypto lib like http://bitwiseshiftleft.github.io/sjcl/. I'm using it in a Composer project and it works well.
HI all,
When i tried to install chain code using NodeSdk getting an error : TypeError: Path must be a string. Received undefined
I tried by running the file : https://jsfiddle.net/0dj3wcxt/
can any one help me to solve this.??
I really blocked at this step 😟 😟
[ ](https://chat.hyperledger.org/channel/composer?msg=MvvrvwAFjMAGuWBLP) @ashvinnihalani this may help -> https://hyperledger.github.io/composer/latest/reference/composer.card.create.html
[ ](https://chat.hyperledger.org/channel/composer?msg=8FqLXsnBZeidcF74G) @jaswanth I think there is syntax error in your json file (connection profile), but I would make sure that all fabric images have the same version (1.1.0) because u have composer 0.19.7, then try again.
[ ](https://chat.hyperledger.org/channel/composer?msg=57bJ7RWMDWqyY9iWc) @gewing can u post your code? maybe in stackoverflow?
[ ](https://chat.hyperledger.org/channel/composer?msg=gawypnaBM6N322scg) @AMIL_SAJEEV I think I saw this issue before. do u have something like this: https://github.com/hyperledger/composer/issues/2671
I am running composer on dev machine, but failed with error
Error: business network with name my-network already exists
Clipboard - July 11, 2018 2:50 PM
I want to clean my dev environment to start over, any one can help. Have tried to teardownFabric, teardownAlldocker and rm ~/.composer but still got this error.
[ ](https://chat.hyperledger.org/channel/composer?msg=wJhgpM9ek93dwvp4w) @richzhao did u try to clean your browser cache ?
yes, I run localstorage.clear() and cleaned firfox cookie. I thing something left somewhere, but not sure what it is nor don't know how to clean it
I am following this tutorial https://github.com/IBM/BlockchainNetwork-CompositeJourney?cm_sp=IBMCodeCN-_-build-a-blockchain-network-_-Get-the-Code
no problem at first run, but failed with second time
[ ](https://chat.hyperledger.org/channel/composer?msg=edejgpM9rMmGeqhf7) @waleed yes. something like this.but i didn't get how to solve this:worried:
can u suggest a solution?
Is this problems from fabric-client npm package?
[ ](https://chat.hyperledger.org/channel/composer?msg=BzEZfpqzsngzChMKv) @richzhao hmmm! strange! restart your machine! :relieved:
[ ](https://chat.hyperledger.org/channel/composer?msg=Q8rLWFu32bYvhGBaF) @AMIL_SAJEEV I assume u don't use composer, right?
[ ](https://chat.hyperledger.org/channel/composer?msg=FJruSYrXQMbrAkNpM) @waleed install chaincode by consuming fabric sdk, what is the role of composer there?
I didn't getu properly:slight_frown:
[ ](https://chat.hyperledger.org/channel/composer?msg=FJruSYrXQMbrAkNpM) @waleed install chaincode by consuming fabric sdk, what is the role of composer there?
I didn't get u properly:slight_frown:
[ ](https://chat.hyperledger.org/channel/composer?msg=kvsSt4Teojpn22hut) @waleed Oh perfect ! Can you show me how you did this ?
@gewing Are you using sjcl inside your transaction processing code? I'll give that a shot. Thanks! :)
reminder that the Community call is at 9am UTC (10am UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 would be great to hear from you and hear your Composer stories and use cases on the call - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-11th-July-2018 best regards Paul
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=yW9yZKqNbiw2AhFSG) @AMIL_SAJEEV "Hyperledger Composer is a set of collaboration tools for building blockchain business networks that make it simple and fast for business owners and developers to create smart contracts and blockchain applications to solve business problems. Built with JavaScript, leveraging modern tools including node.js, npm, CLI and popular editors, Composer offers business-centric abstractions as well as sample apps with easy to test devops processes to create robust blockchain solutions that drive alignment across business requirements with technical development."
may be u can ask in #fabric-sdk or #fabric-sdk-node
[ ](https://chat.hyperledger.org/channel/composer?msg=ddf75r2MZBGCZ6D2i) @waleed @waleed Thank you for the reply , my json is here ( https://pastebin.com/6KZbMsWP ) can please look at it .
i changed orderer to 1.1.0 , composer 0.19.10, node 8.11.3
[ ](https://chat.hyperledger.org/channel/composer?msg=ddf75r2MZBGCZ6D2i) @waleed Thank you for the reply , my json is here ( https://pastebin.com/6KZbMsWP ) can please look at it .
i changed orderer to 1.1.0 , composer 0.19.10, node 8.11.3
[ ](https://chat.hyperledger.org/channel/composer?msg=ZEiXgoSXKnaADL2CX) @Poneey my application is very complex. there is another one which is very easy to understand.
I will send u a blog post where u can clone the repo and see how the identity through the rest
https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
this will help u
u just need to git little pit deeper into the code
take a look here (`signUp(data)`) -> https://github.com/caroline-church/collectable-penguin-app/blob/master/src/services/rest.service.ts#L19
line 35 is the most important one ;)
[ ](https://chat.hyperledger.org/channel/composer?msg=tE6MhrapzgqDCMTvn) @jaswanth looks ok for me. did u tried it again after changing the versions?
@waleed yes , i'm implementing it in multi-host fabric setup
Hi all, composer network install --card PeerAdmin@byfn-network-org1 --archiveFile abc@1.0.1.bna -o npmrcFile=npmConfig.txt as per the documentation https://github.com/hyperledger/composer/issues/3731#issuecomment-387600862
but still I am facing the issue Error trying install business network. No valid responses from peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Fabric Architecture: Single Orderer, 4 organizations, with 2 peers each, along with 4 CA servers one per org. All docker containers are up and running, docker logs for each peer is perfect with no error as such.
[ ](https://chat.hyperledger.org/channel/composer?msg=MFHAtG9advZFQdT42) @waleed Yes i followed this tutorial but i have an error .. I will look the code on github, i will tell you if it works
[ ](https://chat.hyperledger.org/channel/composer?msg=PBgRjkWP52BdsistF) @jaswanth which tutorial do u follow?
@waleed https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
but my fabric network is on two different vms ,( Its working fine with the go chaincodes )
[ ](https://chat.hyperledger.org/channel/composer?msg=kGek5PeZtHqmDtYsk) @jaswanth strang! @mahoney1 do have any suggestions?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Qsmgm5fRLE9yWQ7FD) @rajanashutosh Are you getting this error with `composer network install` or `composer network start`? Is this the only error you see?
[ ](https://chat.hyperledger.org/channel/composer?msg=fd5TD4aWJBtaRZbJb) @waleed okey. Thank u:slight_smile:
[ ](https://chat.hyperledger.org/channel/composer?msg=MvvrvwAFjMAGuWBLP) @ashvinnihalani You would
1. first Create a Participant,
2. then Issue an Identity (and create a Business Connection Card),
3. and finally switch to using that Card (and Identity).
You can do this with Composer Playground, the CLI, Composer Rest Server or with the Composer javascript API.
Has joined the channel.
Hi guys!
I have a few questions about Hyperlegder system. I am a newbie with blockchain and Hyperledger particular, so do not judge strictly. There is the list of my purposes below.
1. I want to try to create a simple network with 3 nodes: admin and two clients, and two tunnels: admin-client1 and admin-client2 without the possibility for client1 to see client2 transactions and vise versa. Sure, admin can see all transactions.
2. For start, I want to use the Hyperledger Composer for the getting my goals.
3. I want to use Iroha to create the same.
Currently, I installed development environment following that instruction https://hyperledger.github.io/composer/unstable/installing/development-tools.html.
My questions are:
1. What need I to do for the getting my goals?
2. What resources for the learning can you recommend to me following my goals?
I'll be grateful for any information.
Hi Team,
How do the participants in the composer network map to the users created during network bootstrap (using the cryptoconfig.yaml file) and are tied to a particular organization.
@AndreyAndreyev you can follow the tutorials here. https://hyperledger.github.io/composer/unstable/tutorials/tutorials
Playground is an online web app that can help you create the business network definition and test it in the browser. without the need for any installation. Once the BNA (Business network archive) is created you can deploy it on the fabric network, for which tutorials are also present in the same link.
Thanks!
Community call is in a few minutes - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community FYI
finally I know where the problem is
I use IBM customized firefox, something cannot be removed from firefox. there is no problem with chrome
@rthatcher I am getting this issue when i am doing the network install. Yes I am able to see only this error and nothing else.
@AndreyAndreyev - as suggested by @josiebhai the tutorials are the place. However I would suggested keeping the the *latest* documentation rather than the unstable: https://hyperledger.github.io/composer/latest/tutorials/tutorials
In your question you refer to "tunnels" - I assume you mean "Channels" :-) As you work through the tutorials you will see that Composer uses a single channel "composerchannel" by default, and only connects to one channel at a time.
Composer currently supports Hyperledger Fabric, not Iroha.
[ ](https://chat.hyperledger.org/channel/composer?msg=aszCmCoRLcpaqw7BC) @josiebhai Typically, only the initial admin user from cryptoconfig.yaml is used - after that Participants are added to the Business Network, and Identities (and Business Network Cards) are issued to the Participants.
You can add more users to the CA as part of cryptoconfig, or by using the the FabricCA client, but it is 'normal' to create participants and issue identities within Composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=bfrFPxbTqGXhDYi5A) @rajanashutosh - it is unusual to see a timeout from the network install. Have you checked the logs of the docker containers for errors at the same time stamp as you did the network install?
(the issue you refer to is for network start not install)
@rthatcher Thanks for the answers!
[ ](https://chat.hyperledger.org/channel/composer?msg=8FqLXsnBZeidcF74G) @rthatcher can you please look into this error .
[ ](https://chat.hyperledger.org/channel/composer?msg=8FqLXsnBZeidcF74G) @rthatcher can you please look into this error . my fabric setup is in 2 vms
[ ](https://chat.hyperledger.org/channel/composer?msg=8FqLXsnBZeidcF74G) @rthatcher can you please look into this error . my fabric setup is in 2 vms . my json is here ( https://pastebin.com/6KZbMsWP )
[ ](https://chat.hyperledger.org/channel/composer?msg=JCmwHsfmzNNw4B3S3) @rthatcher @rthatcher , Thanks for your response, but I'm still not clarified on this. This is just a part of the big puzzle that I'm having. Im trying to orate it to my best.
[ ](https://chat.hyperledger.org/channel/composer?msg=JCmwHsfmzNNw4B3S3) @rthatcher @rthatcher , Thanks for your response, but I'm still not clarified on this. This is just a part of the big puzzle that I'm having. Im trying to orate it to my best. Im trying to map the different components of Fabric with the Composer network.
[ ](https://chat.hyperledger.org/channel/composer?msg=JCmwHsfmzNNw4B3S3) @rthatcher @rthatcher , Thanks for your response, but I'm still not clarified on this. This is just a part of the big puzzle that I'm having. Im trying to orate it to my best. Im trying to map the different components of Fabric with the Composer network. ```
1. Is there any relation between the organizations from cryptoconfig file and namespaces in bna file.
``` 2. Is there any relation between the users from crypto config file and participants in bna```
3. If I wanted to used my own CA(LDAP) how do I use it so that I bind the participant to the user of a particular
```
``` organisation
```
[ ](https://chat.hyperledger.org/channel/composer?msg=XtEEcabDrDz8ncLaZ) Im trying to map the different components of Fabric with the Composer network.
Im trying to map the different components of Fabric with the Composer network.
Im trying to map the different components of Fabric with the Composer network.
sdf
[ ](https://chat.hyperledger.org/channel/composer?msg=eJfWqs4BgfPLPEnu8) @jaswanth I think I have seen this error with Composer v0.19 and Fabric v1.2 - are you sure you have Fabric 1.1? You can check by looking at the docker container details ` docker ps `
[ ](https://chat.hyperledger.org/channel/composer?msg=XtEEcabDrDz8ncLaZ) @josiebhai There is no relationship between the names used in the cryptoconfig file and the namespace used in the Model file.
If you want to integrate your LDAP with the CA - I would suggest asking in one of the #fabric chat channels - this channel coves Composer only :-)
creating participants in hyperledger composer is specific to network or to organisation??? how to create a participant of particular oraganisation??
@josiebhai adding to @rthatcher answer: you can (from your stored LDAP certificate) extract the appropriate .pem file to then do the bind (CLI) or programmatically such as using the JS APIs (as shown at the bottom of [here](https://hyperledger.github.io/composer/latest//reference/composer.identity.bind)
@josiebhai adding to @rthatcher answer: you can (from your stored LDAP certificate) extract the appropriate .pem file to then do the bind (CLI) or programmatically such as using the JS APIs (as shown at the bottom of [here](https://hyperledger.github.io/composer/latest//reference/composer.identity.bind) )
Isn't there able to use more than one channel in Hyperledger Composer for one network?
[ ](https://chat.hyperledger.org/channel/composer?msg=b35s5uKTbqpBbyFHB) @mahoney1 Thanks for your response. This clarifies a lot.
@rthatcher I have checked all the containers, but no signs of any logs getting updated in any, which I suppose makes it clear that either the network card created is not able to contact fabric netowrk peers
[ ](https://chat.hyperledger.org/channel/composer?msg=ezRsfsgGEtCCawpcA) @AndreyAndreyev You can have multiple channels on the Fabric network. You need to create multiple channels and then deploy the ban on each channel as required.
@AnithaReddy typically, participants are mapped to identities, issued by the individual member organisations. See more [here](https://hyperledger.github.io/composer/latest/managing/participantsandidentities) and see this Stack Overflow for one example (at an ACL level) [here](https://stackoverflow.com/questions/50680188/organization-based-restrictions-for-participant-identity-issuing-in-hyperledger/50681159#50681159)
@josiebhai Thanks! I understood.
[ ](https://chat.hyperledger.org/channel/composer?msg=RAoR88RAzChAzw2qH) @mahoney1 so participant registry has participants based on admin of organisation issued the identity??
[ ](https://chat.hyperledger.org/channel/composer?msg=djsbjPoTCp2FvtrMz) then in composer how should i create participants for organistion two ? becoz i started the fabric network with the composer network start -c PeerAdmin@byfn-network-org1 -n ncd -V 0.0.1 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
@AnithaReddy participant registries contain participants - its up to you to define which participants are stored in 'which participant registry' (the link I sent : that's just one example of an attribute on a participant class, that's all)
@AnithaReddy participant registries contain participants - its up to you to define which participants are stored in 'which participant registry' (the link I sent : that's just one example of an `organisation` attribute on a participant class, that's all)
[ ](https://chat.hyperledger.org/channel/composer?msg=k4e28bKPkQ8QsYjoW) @rajanashutosh It looks like there is some problem with the connection.json file, OR perhaps more likely some networking issue - proxy/firewall that is eventually timing out.
(although the npmrc file is specified on the network install command, it is not actively used until the network start command)
Are you following the Multi-org tutorial? Or are you working with a custom fabric on more than one machine? Or is the Fabric remote from the composer client?
@rthatcher I am working on Ubuntu installation (VM). Yes I am following Multi-Org tutorial. Its on a single machine and I have customized the fabric network using the composer project hlfv11
[ ](https://chat.hyperledger.org/channel/composer?msg=5iXNE23QF2PuNkMBB) @rajanashutosh Have you run the tutorial before? I would maybe suggest trying the tutorial exactly as it is written, then try customising after when you have seen a fully working example.
@bjrnt yes, I'm using sjcl inside the transaction processing. just drop the sjcl.js file in the same directory as your transaction processing code. (I'm using node.js for my transaction processing)
Is it possible to use the .get function to pull information from somewhere not on the chain but on a database somewhere else? Using a websocket?
@rthatcher I have figured out the issue, for grpc communication URL i had put container names which we used to configure which created this issue
thanks for your help
Has joined the channel.
Hey guys, I've got a colleague who keeps telling me that Composer is only meant for PoCs, can one of the devs confirm that Composer is fine to run in a production environment?
[ ](https://chat.hyperledger.org/channel/composer?msg=MFHAtG9advZFQdT42) @waleed So i tried to do exactly the same thing but i still have "Unhandled error for request POST /api/wallet/import?name=oura: Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html" error on my rest server... Any idea ?
Has joined the channel.
Hi, Is the composer chaincode same as the NodeJS chaincode which Fabric has started supporting recently.?
when we deploy golang chaincodes, we see the container coming up which are the sandbox for the chaincode. In case of composer, also same thing happens? And this container would be a NodeJS container?
If I want to use the putState and getState from the composer, I got to know that there is a nativeAPI invoker available from the composer. But does this bring up any additional containers?
@Poneey - wondering if (in your code pattern) you're running into this NodeJS issue described in this [thread](https://stackoverflow.com/questions/50084707/about-hyperledger-fabric-composer-error-when-execute-cmd-composer-card-list) - just a thought - can you post the exact piece of code that's failing for you?
@nemo 8 yes Composer v0.19.x (current being 0.19.12) is for running in production, that's why it has its own native Composer runtime for managing business networks deployed to a production Fabric environment.
Hi All I am trying to create a multi peer network on Composer below is the modification to createPeerAdminCard.sh is this correct.```
{
"name": "hlfv1",
"x-type": "hlfv1",
"x-commitTimeout": 300,
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},
"channels": {
"composerchannel": {
"orderers": [
"orderer.example.com"
],
"peers": {
"peer0.org1.example.com": {},
"peer1.org1.example.com": {}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com",
"peer1.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
}
},
"orderers": {
"orderer.example.com": {
"url": "grpc://${HOST}:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://${HOST}:7051",
"eventUrl": "grpc://${HOST}:7053"
},
"peer1.org1.example.com": {
"url": "grpc://${HOST}:8051",
"eventUrl": "grpc://${HOST}:8053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://${HOST}:7054",
"caName": "ca.org1.example.com"
}
}
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=XuQu4TCvaEdnceFyS) @Poneey Can you pls respond?
[ ](https://chat.hyperledger.org/channel/composer?msg=E57ReosdD3JSqH5dT) @mahoney1 Is this "native Composer runtime" has to be run Per Node?
@Ashish yes its native NodeJS chaincode and runs in its own NodeJS based container which came in since Hyperledger Fabric v1.1 was shipped with that support. And no, should bring up any additional containers, its calling the underlying Hyperledger Fabric API to do the methods you mentioned
@Ashish yes its native NodeJS chaincode and runs in its own NodeJS based container which came in since Hyperledger Fabric v1.1 was shipped with that support. And no, should bring up any additional containers, its calling the underlying Hyperledger Fabric shim API to do the methods you mentioned
[ ](https://chat.hyperledger.org/channel/composer?msg=6TDvNExyJAgzg8q6k) @mahoney1 Hum i don't know, i create entierly my user with code so i don't know how test this.
For information, i tried to export card created with "composer card export -f ...." and imported it on composer rest api and it works fine ..
@mahoney1 thanks for your response
[ ](https://chat.hyperledger.org/channel/composer?msg=Zn63MKPnvSqvJ3MHQ) @waleed What do you need me to share. Anything specific?
@Ashish yes, the chaincode is installed on peers in your blockchain network
@Ashish yes, and the chaincode is installed on peers in your blockchain network
@blob you can use something like `await request.get()` call - examples shown here -> https://hyperledger.github.io/composer/latest/integrating/call-out and (for example) return results as a JSON structure, which you can process in your Transaction Processor Function
@Jyotirmoy - I haven't checked every character in the file but it looks OK for a 2 Peer Fabric with 1 organisation.
The script you refer to (and the connection.json) assumes that the Fabric will not be using TLS so when you start your fabric make sure you do the same.
[ ](https://chat.hyperledger.org/channel/composer?msg=576qaxXaJZBDAXXTG) @SriSris how does your frontend interact with rest api?
Has joined the channel.
Heya,
I wonder whether there is a bug in this tutorial:
https://www.ibm.com/developerworks/cloud/library/cl-model-test-your-blockchain-network-with-hyperledger-composer-playground/index.html
specifically it seems like the online interpreter is looking for other namespace
thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=FyTfkgT2vMHt4SCNN) @waleed function getTarget() {
if (process.env.REST_SERVER_URLS) {
const restServerURLs = JSON.parse(process.env.REST_SERVER_URLS);
const restServerURL = restServerURLs['ra-network'];
if (restServerURL) {
return restServerURL;
}
}
if (process.env.REST_SERVER_URL) {
const restServerURL = process.env.REST_SERVER_URL;
return restServerURL;
}
return 'http://localhost:3000';
}
const target = getTarget();
module.exports = [{
context: ['/auth', '/api'],
target,
secure: false,
changeOrigin: true
}, {
context: '/',
target,
secure: false,
changeOrigin: true,
ws: false,
bypass: function (req, res, proxyOptions) {
const accept = req.headers.accept || '';
if (accept.indexOf('html') !== -1) {
return '/index.html';
}
}
}];
This is my proxy.conf.js file
This is my Trader Service.ts. I am creating a new Trader through the front end
@Injectable()
export class TraderService {
private NAMESPACE = 'io.srisris.ranetwork.Trader';
constructor(private dataService: DataService
DataService.ts
@Injectable()
export class DataService
Has joined the channel.
Hi everyone. I'm trying to build a multi-user frontend application using Hyperledger Composer, with a variation of the Vehicle Auction Network sample. I was wondering if anybody knows how I could set up the frontend for multiple user types? I used the generated Angular App from Yeoman, but that only seems to give an admin view. I want two different types of client views as well.
we can only emit one event from the chaincode? for some reason when I emit two events, I see from the client's side only one websocket message
we can emit only one event from the chaincode? for some reason when I emit two events, I see from the client's side only one websocket message
Can we emit more than one event from the chaincode? for some reason when I emit two events, I see from the client's side only one websocket message
[ ](https://chat.hyperledger.org/channel/composer?msg=Qzdf4MCvyiQ6FcvRc) @mdimovich You should run your rest api in multi user mode and with authentication.
then you need to specify the permissions in your .acl file (what can the user see and what can the admin see). after that you create participants (admins & users) and create a card for each of them. after that u will use this tutorial for example to see how to be authenticated -> https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
then u can specify what the permissions in your frontend according to the authenticated participant
[ ](https://chat.hyperledger.org/channel/composer?msg=WKsZmZiRKXQYgPa88) @SriSris did u tried to debug your code?
[ ](https://chat.hyperledger.org/channel/composer?msg=WKsZmZiRKXQYgPa88) @SriSris did u try to debug your code?
Angular application calls the rest API
as mentioned in the above pieces of code
@SriSris useful reference point [here]((https://github.com/Kimaitn/BlockchainMedicineTracker/blob/master/angular-app/src/app/data.service.ts#L54 )
[ ](https://chat.hyperledger.org/channel/composer?msg=Pk3zFKowv5oLjfS5y) @mahoney1 I tried updating line 54. I still have the same issue
@waleed I just posted the code on stackoverflow. https://stackoverflow.com/questions/51292914/hyperledger-composer-returns-not-working
@waleed Trying to get the @returns decorator to work but it isn't working through the composer REST API.
Has joined the channel.
Hi everyone, i have this error on composer-rest-server: `cannot add transactions to a transaction registry` can anyone help me?
it work good in the composer-playground
im using hlf version 1.1 and composer 0.19.5
this is the traceback:
```
"stack": "Error: cannot add transactions to a transaction registry\n at TransactionRegistry.add (/home/d/.nvm/versions/node/v8.11.2/lib/node_modules/composer-rest-server/node_modules/composer-client/lib/transactionregistry.js:173:15)\n at getRegistryForModel.then (/home/d/.nvm/versions/node/v8.11.2/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:656:41)\n at
it is working with another transactions
nevermind, i was passing the "$class" param wrong and is no required :upside_down:
nevermind, i was passing the "$class" param wrong and is not required :upside_down:
Has joined the channel.
Hi all, I have a question about composer API `AdminConnection. importCard()` now my application has customized cardStore, so when I start my app, I need to export the network admin card from default cardStore(in ~/.composer) and then import it into my customized cardStore, it works fine and my app can access blockchain with no problem, but I noticed that after importing the identity of the admin card is changed and if I ping the network with admin card in default cardStore , it shows error like:```
```
Hi all, I have a question about composer API `AdminConnection. importCard()` now my application has customized cardStore, so when I start my app, I need to export the network admin card from default cardStore(in ~/.composer) and then import it into my customized cardStore, it works fine and my app can access blockchain with no problem, but I noticed that after importing the identity of the admin card is changed and if I ping the network with admin card in default cardStore , it shows error like:
```
Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier 'cdfdc77a455f63c4e2ec360569ddf861ddde617d61d64b9f21abb11aec738d2a', has not been registered
Command failed
```
and my code:
```
let cardStore = require('composer-common').NetworkCardStoreManager.getCardStore({
type: 'composer-wallet-filesystem',
storePath: path.join(__dirname, '../cardStore')
});
let adminConnection = new AdminConnection({
cardStore: cardStore
});
let card = await IdCard.fromArchive(cardBuffer);
await adminConnection.importCard(cardName, card)
```
I did not invoke `AdminConnection.connect()` so I think the importing is local process and should do no effect to the identity in blockchain, am I right?
And what is the best practice to copy a card from default cardStore to customized cardStore with no change of the identity?
Has joined the channel.
In composer-connector-hlfv1/lib/hlfconnectionmanager.js line 105, I found this code:
```
static getStoreLocation(ccp) {
const method = 'getStoreLocation';
LOG.entry(method, ccp);
let pathToUse;
if (ccp.cardName) {
pathToUse = path.join(composerUtil.homeDirectory(), '.composer', 'client-data', ccp.cardName);
} else {
pathToUse = path.join(composerUtil.homeDirectory(), '.composer', 'temp', 'transient');
}
LOG.exit(method, pathToUse);
return pathToUse;
}
```
seems like the connection profile path is hard coded to .composer , so when the AdminConnection.importCard() is called although the path of cardStore is set to other place, the default cardStore is changed by the API?
Has joined the channel.
Clipboard - July 12, 2018 9:25 AM
hi,how can i learn block details without hyperledger explorer?i can see with the hyperledger explorer.is there any API ?
Clipboard - July 12, 2018 9:26 AM
Clipboard - July 12, 2018 9:27 AM
Has joined the channel.
@labcoinpoc `getStoreLocation` would only get invoked if no wallet had been provided to the connection manager. A wallet is always provided when working with a card store so won't get invoked
Can we emit more than one event from the chaincode? for some reason when I emit two events, I see from the client's side only one websocket message. In playground I can listen all events. In real network I try to losten events from node client application and from wscat, but I see only one event there
Can we emit more than one event from the chaincode? for some reason when I emit two events, I see from the client's side only one websocket message. In playground I can listen all events. In real network I try to listen events from node client application and from wscat, but I see only one event there
@labcoinpoc I would say the problem is that the card you have in your card store only has a secret in it. Then you export it and put that into another card store. You use the card in the new store which enrolls that user and registers the certificate with the participant. Later you then try to use the original card with just a secret in which enrolls a completely new identity called `admin` who is not the same `admin` as the one in the new card store. The runtime doesn't recognise this identity and that is the error message you see
i have fabric network with composer working on top of it. I am able to add participants, how to add and asset into the business network
Installation is local and network and app is customized
To elaborate, i have multiple participants who can place orders for commodities, for me commodities are my assets which I want to sell. Transactions would involve each commodity buyer and seller
@davidkel thanks for the prompt reply, before I imported the card to my application I started composer-rest-server with the network admin card, it works fine and I can see identity of admin in GET /system/identities. And after importing the admin card in default cardStore is broken... did I miss something before exporting?
@davidkel thanks for the prompt reply, before I imported the card to my application I started composer-rest-server with the network admin card, it works fine and I can see identity of admin in GET /system/identities. And after importing the admin card in default cardStore is broken... did I miss something before exporting? If I then reimport the card file to default cardStore with cli, the card works fine again.
@davidkel thanks for the prompt reply, before I imported the card to my application I started composer-rest-server with the network admin card, it works fine and I can see identity of admin in GET /system/identities. And after importing the admin card in default cardStore is broken... did I miss something before exporting? If I then reimport the card file to default cardStore with cli, the card works fine again. the difference of cardStore before and after importing is in the client-data folder , the card folder keeps the same.
Howdy Ho!
Hello !
We can see transaction register with get on https://192.168.170.11:3000/api/
umm @Poneey I think these links will help https://hyperledger.github.io/composer/latest/business-network/historian
and this https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks
Hey there you good people,
I have a question about `participants` in Composer!
Say, I have `marbles network` and I'd like to associate marbles with `merchant` indicating who sold the marbles for historical data purposes so that I can track who sold the marbles to who!
In this context, I believe, merchants don't really play anything in the business network but exists as data field for marbles.
[ ](https://chat.hyperledger.org/channel/composer?msg=PWaNaxN5iKEJ3DdNF) @howdyeyey Ok thanks, so there are no url link on rest server to do this ?
@Poneey
```
Using the client and REST APIs with historian
HistorianRecord assets can be returned using the system/historian and system/historian/{id} calls using the REST API.
When using the REST API, a GET call of system/historian will return ALL historian data. This call should be used with care, the return is not limited and may result in large volumes of data being returned.
A GET call of system/historian/{id} using the REST API will return the HistorianRecord asset specified.
```
So to continue my question about the merchant participant, should they be defined as a participant in the networkk??
or should they just be a simple field?
* And possibly merchants might join the network. but not for the current scope.
Thank you very much you good people!
@labcoinpoc There is a basic guideline to follow, never copy cards that only have a secret defined, only copy cards that have credentials set. You can see if a card only has a 1-time secret or has credentials set by invoking the `composer card list
@howdyeyey For your question, on my network i created "participant" for poeple we will use network and "asset" for the rest.
I work on management of vaccine so i created Doctor and Parents as participants but children as asset .
So, for your project, i think i would create merchant as asset
Or you maybe can look for concept too
@davidkel thanks, I will check that
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=fdPNhnXNorgNXHALP) @gewing I will take a look :)
[ ](https://chat.hyperledger.org/channel/composer?msg=xG8sb6BQLv4wrER5K) @diegoduncan21 can u post your code?
**Websocket events**
Can we emit more than one event from the chaincode? for some reason when I emit two events, I see from the client's side only one websocket message. In playground I can listen all events. In real network I try to listen events from node client application and from wscat, but I see only one event there
[ ](https://chat.hyperledger.org/channel/composer?msg=PDfHRYHoWvborxpDf) @VadimInshakov strange!
can u post your issue with the code in stackoverflow?
@davidkel I did more test about the card , seems like the AdminConnection.importCard() API delete the client-data folder in default cardStore.
Information of network admin card(composer card list -c
@davidkel I did more test about the card , seems like the AdminConnection.importCard() API delete the client-data folder in default cardStore.
Information of network admin card(composer card list -c admin@digital-receipt):
Before importing:
```
userName: admin
description:
businessNetworkName: digital-receipt
identityId: e65e4a39274d9699c576c4712fa08977e4c7bda2e7110996d7db100b2cd9a388
roles: none
connectionProfile:
name: hlfv1
x-type: hlfv1
credentials: Credentials set
```
After importing card to customized card store:
```
userName: admin
description:
businessNetworkName: digital-receipt
identityId:
roles: none
connectionProfile:
name: hlfv1
x-type: hlfv1
credentials: One time use only secret set
```
and after importing `~/.composer/client-data/admin@digital-receipt` folder is deleted
then if I run composer `network ping -c admin@digital-receipt` it will make a new `~/.composer/client-data/admin@digital-receipt` folder and write new `priv pub admin` file into it
then card information become:
```userName: admin
description:
businessNetworkName: digital-receipt
identityId: 44116968cd50a5a64cf5daa20b467f716cf5be1c3cd6036c417c5620dece44e8
roles: none
connectionProfile:
name: hlfv1
x-type: hlfv1
credentials: Credentials set
```
Same name but different identityId. delete this card and import the card file again will fix this.
@davidkel I did more test about the card , seems like the AdminConnection.importCard() API delete the client-data folder in default cardStore.
Information of network admin card(composer card list -c admin@digital-receipt):
Before importing:
```
userName: admin
description:
businessNetworkName: digital-receipt
identityId: e65e4a39274d9699c576c4712fa08977e4c7bda2e7110996d7db100b2cd9a388
roles: none
connectionProfile:
name: hlfv1
x-type: hlfv1
credentials: Credentials set
```
After importing card to customized card store:
```
userName: admin
description:
businessNetworkName: digital-receipt
identityId:
roles: none
connectionProfile:
name: hlfv1
x-type: hlfv1
credentials: One time use only secret set
```
and after importing `~/.composer/client-data/admin@digital-receipt` folder has been deleted
then if I run composer `network ping -c admin@digital-receipt` it will make a new `~/.composer/client-data/admin@digital-receipt` folder and write new `priv pub admin` file into it
then card information become:
```userName: admin
description:
businessNetworkName: digital-receipt
identityId: 44116968cd50a5a64cf5daa20b467f716cf5be1c3cd6036c417c5620dece44e8
roles: none
connectionProfile:
name: hlfv1
x-type: hlfv1
credentials: Credentials set
```
Same name but different identityId. delete this card and import the card file again will fix this.
[ ](https://chat.hyperledger.org/channel/composer?msg=d6wtGSHRGwztzc5oJ) @waleed Ok, I posted it here: https://stackoverflow.com/questions/51300357/hyperledger-composer-not-all-websocket-events-delivered-to-client
@howdyeyey the participant is usually an individual user (mapped to a blockchain identity issued to him/her) that is transacting on the network. I'm not sure whether 'merchants' represent 'organisations' in your scenario - but whoever is transferring ownership, you would have modeled as a participant, engaging in the business network (and then you can track the activity you mention)
@howdyeyey the participant is usually an individual user (mapped to a blockchain identity issued to him/her) that is transacting on the network. I'm not sure whether 'merchants' represent 'organisation's in your scenario - but whoever is transferring ownership, you would have modeled as a participant, engaging in the business network (and then you can track the activity you mention)
@mahoney1 My fabric network with composer on top is now up and running. I am able to add participants and view them. I would like to know how can we add assets which can be used to transact. Like participants or transactions can we directly add them ?
Hello,
Do you know if the "like and regexp" arguments will be supported by hyperledger?
If yes, would you have a date please ?
[ ](https://chat.hyperledger.org/channel/composer?msg=PDfHRYHoWvborxpDf) @VadimInshakov yes, you should be able to - presume you checked in your code it is actually emitting two using debug msgs). You should be able to test using something like ```var factory = getFactory();
const applicationEvent = factory.newEvent('innodata.ru', 'Debug');
debugEvent.message = 'test message';
emit(applicationEvent);``` independent of putting it into a separate function to see if it emits like the first.
[ ](https://chat.hyperledger.org/channel/composer?msg=cLGZacEoMXfmaLHDs) @rajanashutosh if you've deployed a business network, with modeled assets - you can add them through Playground once you connect to the Fabric with a business network card - or add them via REST API endpoints (/POST) etc if you stand up a Composer REST server? Not sure if you mean for test purposes or programmatically etc.
@SteveFournier not presently - see Stack overflow answer here for possible alternatives -> https://stackoverflow.com/questions/50433254/how-to-query-to-include-specific-words-in-hyperledger-composer-query/50452582#50452582 - Composer Query language (which is translated into CouchDB queries) doesn't support LIKE or regex, as CouchDB doesn't support them
@davidkel Maybe I found the reason in `/node_modules/composer-admin/lib/adminconnection.js` line 87
```
const exists = this.cardStore.has(name);
if (exists) {
await connectionManager.removeIdentity(connectionProfileData.name, connectionProfileData, card.getUserName());
}
```
cardStore.has() is an async function so here should be `await this.cardStore.has(name)`
@labcoinpoc you've basically copied a card with only a secret in it. There is a distinction between a card and a card file. If you import the same card file into 2 different card stores, you are creating 2 copies of that card. The card file only has a secret in it. Card files with secrets should only ever be imported once, and then deleted. You should then ping that card. You are then safe to export that card and use it elsewhere
@davidkel yes, before I export the card, I tried to ping with it and succeed.
@labcoinpoc But in your example the one you imported into your customized card store only had a secret, it didn't have any credentials and that is a problem. It will enroll a new identity with the same name and that identity won't be registered with the runtime
[ ](https://chat.hyperledger.org/channel/composer?msg=m7whxEyzc2zsbtxce) @mahoney1 Ok thanks
@davidkel
```
```
userName: admin
description:
businessNetworkName: digital-receipt
identityId:
roles: none
connectionProfile:
name: hlfv1
x-type: hlfv1
credentials: One time use only secret set
```
this info is after I imported card to customized cardStore, The import api delete client-data folder of admin card so it become One time use only secret set
```
@davidkel
```
userName: admin
description:
businessNetworkName: digital-receipt
identityId:
roles: none
connectionProfile:
name: hlfv1
x-type: hlfv1
credentials: One time use only secret set
```
this info is after I imported card to customized cardStore, The import api delete client-data folder of admin card so it become One time use only secret set
```
@davidkel
```
userName: admin
description:
businessNetworkName: digital-receipt
identityId:
roles: none
connectionProfile:
name: hlfv1
x-type: hlfv1
credentials: One time use only secret set
```
this info is after I imported card to customized cardStore, The import api delete client-data folder of admin card so it become One time use only secret set
@labcoinpoc you can check the contents of your card file by renaming it to a zip file and opening it up. If there isn't a credential directory with a certificate and privatekey file, then the card doesn't have any credentials in it
@labcoinpoc you can check the contents of your card file by renaming it to a zip file and opening it up. If there isn't a credentials directory with a certificate and privatekey file, then the card doesn't have any credentials in it
@labcoinpoc you can check the contents of your card file by renaming it to a zip file and opening it up. If there isn't a credentials directory with a certificate and privatekey file, then the card file doesn't have any credentials in it
I think the problem is `this.cardStore.has(name);` returns a promise so `if (exists) ` is true then `connectionManager.removeIdentity` delete the identity of the card. but why is the default cardStore but not customized one?
@davidkel I checked the card many times, before importing the card is fine and can do anything like ping, issue identity, startup rest server and do any operation in restserver
@mahoney1 I meant whether there is a command which i could use to add the contents, I have brought up composer rest and could add the contents using rest end points but is der any other way apart from rest apis or hard coding in code ?
@labcoinpoc could you just confirm that the card does or doesn't have the credentials directory with 2 files in it, if it does, then I think it would be good to raise a stackoverflow with all the details in a single place explaining what you are doing with code examples
@labcoinpoc could you just confirm that the card file does or doesn't have the credentials directory with 2 files in it, if it does, then I think it would be good to raise a stackoverflow with all the details in a single place explaining what you are doing with code examples
@davidkel I will restart my project and check it now
Has joined the channel.
Hello everyone I am trying to install and start business network over hyperledger fabric running on kubernetes with composer and getting error Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
Clipboard - July 12, 2018 6:09 PM
@davidkel I exported admin card before importing and renamed it to zip and unzip it
@rajanashutosh yes - composer transaction submit - see an example in this doc https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org (for AddAsset)
@labcoinpoc ok, then I think the thing to do would be to create a stack overflow describing your 2 stores. Starting with a completely clean file system, import this card into both stores and describe the state of the 2 card store directories after each import
Hi everyone, I am trying to *bind* a identity using *Hyperledger composer rest api server*. I am unable to understand that how should i generate *.pem* or *certificate* file for this new user. TIA
hello, everyone. I find url https://hyperledger.github.io/composer/latest/jsdoc/module-composer-runtime.html#getFactory is not exist, Please give me url about Composer API documentation. Thanks!
@davidkel and I tried to add await to adminConnection.import() It never delete the client-data again,but I think there sill is some issue in `connectionManager.removeIdentity` cause it should not delete identity in default cardstore if customized cardstore is configured
[ ](https://chat.hyperledger.org/channel/composer?msg=qhoXZLjHcRhTH3HDS) @wangrangli maybe this? -> https://hyperledger.github.io/composer/latest/api/runtime-api
@sudhir.kumawat you need to set up an npmrcFile to pass to your `composer network install` command (specifically the -o flag) - see answer here -> https://stackoverflow.com/questions/50455770/hyperledger-error-when-starting-a-business-network and more on `composer network install` here -> https://hyperledger.github.io/composer/latest/reference/composer.network.install.html
@labcoinpoc Yes it shouldn't do that, the client-data directory should be associated only with the card store it is configured to use.
@waleed Thank you!
@labcoinpoc but even if it does remove it, it would then import the credentials from the card again into the client-data section
Has joined the channel.
@davidkel yes but in my project it delete identity in default cardstore and add again in customized cardstore:sweat_smile:
@davidkel Should I report it in stackoverflow or rise an issue in github?
@labcoinpoc github, it's a bug...
this line in `importCard`
```
connectionProfileData.wallet = await this.cardStore.getWallet(name);
```
is in the wrong place, it needs to be higher up, plus as you correctly say
```
const exists = this.cardStore.has(name);
```
Should actually be
```
const exists = await this.cardStore.has(name);
```
@davidkel OK I will do it, thanks
@saeedi if you've issued the identity in Composer you mention you can do an identity request as shown in this tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org to get the .pem file (this uses Fabric's cryptogen FYI)
[ ](https://chat.hyperledger.org/channel/composer?msg=n36qbyJNLZ8SiGNsA) @mahoney1 I needed just to define log() function not inside transaction processor function and this function had unnecessary arguments
@mahoney1 Thank you. I have followed that link you mentioned and i was able to generate certificates for that identity, do i need to pass path or copy the actual certificate from pub.pem file ? When i copy contents and try to pass it gives *JSON unexpected token error*
'''{
"participant": "string",
"certificate": "string"
}'''
'''{
"participant": "string",
"certificate": "string"
}'''
''' {
"participant": "saeedi",
"certificate": "string"
} '''
{
"participant": "saeedi",
"certificate": "string"
}
Hello every one ! Some one can help me with this : https://stackoverflow.com/questions/51302570/hyperledger-composer-post-on-wallet-api-return-error-cant-find-end-of-centra
@saeedi I sent you the sequence for identity bind
Has joined the channel.
Hi Gyus
Guys
I am struggling to build the default hypereldger composer dev enviroment on a server behind a corporate proxy, I can install npm packages but get errors on starting networks and downloading networks
I posted already here
https://lists.hyperledger.org/g/composer/topic/hyperledger_composer_does_not/23211555?p=,,,20,0,0,0::recentpostdate%2Fsticky,,,20,2,0,23211555
Could someone please help me to start this under a proxy
it is typical one organization setup for testing
or am I in the wrong chat ?
@Zeljko Milinovic I did respond with some npm suggestions about 45 mins ago - did you get that?
@Zeljko Milinovic - right chat - and I did respond with some npm suggestions about 45 mins ago (your topic post) - did you get that?
yes and I tried them
but still no luck
http request GET https://registry.npmjs.org/-/v1/search?text=keywords%3Acomposer-network%20maintainer%3Ahyperledger-ci
error: [Hyperledger-Composer] :NPM :getSampleNames() Error: tunneling socket could not be established, cause=write EPROTO 140360515303232:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:../deps/openssl/openssl/ssl/s23_clnt.c:827
this is what I get when I start composer-playground and want to create a new network
I mailed you back also
cat /root/.npmrc
http_proxy=http://xxx.xxx.xxx.xxx:8080/
https-proxy=http://xxx.xxx.xxx.xxx:8080/
user=0
unsafe-perm=true
npm config set registry http://registry.npmjs.org/
npm set strict-ssl false
cat /root/.npmrc
http_proxy=http://xxx.xxx.xxx.xxx:8080/
https-proxy=http://xxx.xxx.xxx.xxx:8080/
user=0
unsafe-perm=true
npm config set registry http://registry.npmjs.org/
npm set strict-ssl falsecat /root/.npmrc
http_proxy=http://xxx.xxx.xxx.xxx:8080/
https-proxy=http://xxx.xxx.xxx.xxx:8080/
user=0
unsafe-perm=true
npm config set registry http://registry.npmjs.org/
npm set strict-ssl false
composer network install --card PeerAdmin@hlfv1 --archiveFile /root/carauction-network.bna -o npmrcFile=/root/.npmrc
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
but I cann install a package with npm
and my proxy has no password
# npm install lodash
npm WARN saveError ENOENT: no such file or directory, open '/root/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/root/package.json'
npm WARN root No description
npm WARN root No repository field.
npm WARN root No README data
npm WARN root No license field.
+ lodash@4.17.10
added 1 package from 2 contributors in 0.604s
root@server01:~# npm install -g jshint
/root/.nvm/versions/node/v8.11.3/bin/jshint -> /root/.nvm/versions/node/v8.11.3/lib/node_modules/jshint/bin/jshint
+ jshint@2.9.5
added 31 packages from 18 contributors in 1.176s
I did this all under root also on another server
that is not behind proxy and it works
but I am trying for days to make it working with no luck
do I have to change something in the yaml docker file or to put somethign in my Ubuntu hosts files since they are all at default configured as localhost
I am getting the error ```
Error: got unexpected status: SERVICE_UNAVAILABLE -- will not enqueue, consenter for this channel hasn't started yet
``` while executing```
docker exec peer0.eprocure.org.com peer channel create -o orderer0.org.com:7050 -c eprocurecomposerchannel -f /etc/hyperledger/configtx/eprocure-composer-channel.tx
```
I am getting the error ```
Error: got unexpected status: SERVICE_UNAVAILABLE -- will not enqueue, consenter for this channel hasn't started yet
``` while executing
```docker exec peer0.eprocure.org.com peer channel create -o orderer0.org.com:7050 -c eprocurecomposerchannel -f /etc/hyperledger/configtx/eprocure-composer-channel.tx```
[ ](https://chat.hyperledger.org/channel/composer?msg=C3KKSZBApZtGQM2Gz) @HoneyShah This looks like a Fabric question not composer - please can you ask in one of the #fabric channels :-)
@Zeljko Milinovic your error is because playground is trying to download the npm samples. But I wonder why you are trying to install playground on a server ? Unless you configure it exactly as the hosted one that we provide (and thus won't be able to connect to a real fabric) , it shouldn't be used as a shared environment for multiple users
@davidkel - We want to test the REST Server, and also for a couple of users to use it as a shared development test enviroment. Can I use it differently? Where should the playground reside? on the Windows clients and than pointing to the fabric server ?
@davidkel - this setup with a server without Proxy is working ok, we want to model a couple of test networks on one server and test API Calls on the REst
@davidkel - but Proxy is killing me here, does not allow me furhter actions
@davidkel - and I also get the error Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed - when I want to start a network on the ubuntu server behind the proxy
@davidkel - as I understood I cannot start a REST server without plaground
[ ](https://chat.hyperledger.org/channel/composer?msg=AERQpmWp8SYr8iWRL) @Zeljko Milinovic u don't need the playground to start the rest server. this are 2 different components :)
[ ](https://chat.hyperledger.org/channel/composer?msg=AERQpmWp8SYr8iWRL) @Zeljko Milinovic u don't need the playground to start the rest server. this are 2 different tools :)
@Zeljko Milinovic locally installed playground when interacting with a real fabric is best suited where both a development fabric and playground reside on the developers machine
@Zeljko Milinovic locally installed playground when interacting with a real fabric is best suited where both a development fabric and playground reside on the developers machine
+ what @waleed said
@Zeljko Milinovic Just for clarification, the error regarding installing of a business network won't be related to the npmrc file. Whereever you are trying to install the business network from cannot contact the fabric server, you will need to check the connection profile you have used in the card which you have specified on the `composer network install` command.
we are trying to integrate our web client with the composer rest server ( with google authentication configured ). how do we configure the passport to pass jwt token to our web client post authentication from google. or to pass google auth token to passport
@davidkel could you help please
we seem to be stuck at the last stage of Google auth integration
[ ](https://chat.hyperledger.org/channel/composer?msg=gRqHLP6By5pBDGyGk) @koineramitranjan did u follow this tutorial -> https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
HI @waleed yes we did.....and afer authentication its redirecting us explorer which shows the token. However , what we are trying is following:
1. Web application calling composer rest server for authentication 2. receiving the authentication token from composer rest server 3.
or to reiterate - the current flow as shown in the tutorial redirects us to explorer where the jwt token is displayed at the top of the page. But I essentially need it as part of the server response so I can store it and use it in subsequent requests
@koineramitranjan how does your `COMPOSER_PROVIDERS ` looks like?
"google": {
"provider": "google",
"module": "passport-google-oauth2",
"clientID": "******",
"clientSecret": "*****",
"authPath": "/auth/google",
"callbackURL": "/auth/google/callback",
"scope": "https://www.googleapis.com/auth/plus.login",
"successRedirect": "/",
"failureRedirect": "/"
}
thanks a lot for taking the time @waleed the config is above ^^
[ ](https://chat.hyperledger.org/channel/composer?msg=n4agE56FGCQkPjNNJ) @koineramitranjan oke, the problem is that u dont provide url to `successRedirect`
I will show example of my application:
```
"google": {
"provider": "google",
"module": "passport-google-oauth2",
"clientID": "
what does the successRedirect actually do?
i assumed it was the path the user was redirected to on successful auth
[ ](https://chat.hyperledger.org/channel/composer?msg=5zFk3K3R4KpvYzYQ3) @koineramitranjan in your case when u successfully authenticated u will be redirected to the rest server interface but when u provide another url (lets say your application) u will be redirected there
aaah
I see what you mean
let me try and get back to you
is your rest API also running on localhost?
rest API = Composer_rest_server
@koineramitranjan well for development yes but for production no :)
trying your idea now. I hope I dont run into CORS issues. My dev fabric and Composer_rest_server are also running remotely
[ ](https://chat.hyperledger.org/channel/composer?msg=crGuQckuQXKkotdL3) @koineramitranjan hahaha, dont worry! it should work :)
u can profide facebook.com to successRedirect :joy:
[ ](https://chat.hyperledger.org/channel/composer?msg=crGuQckuQXKkotdL3) @koineramitranjan hahaha, dont worry! it should work :)
u can provide facebook.com to successRedirect :joy:
[ ](https://chat.hyperledger.org/channel/composer?msg=crGuQckuQXKkotdL3) @koineramitranjan hahaha, dont worry! it should work :)
u can provide facebook.com to successRedirect and it will also work :joy:
WOW IT WORKED
so cool
many many thanks man
just did not think of this
@koineramitranjan I told you! :)
@koineramitranjan I told you! ;)
Has joined the channel.
Hello, anyone else having issues downloading hyperledger-composer from NPM?
Here says it can't download GRPC from google's storage
`node-pre-gyp ERR! Tried to download(403): https://storage.googleapis.com/grpc-precompiled-binaries/node/grpc/v1.10.1/node-v64-linux-x64-glibc.tar.gz `
I'm on Debian running ttkernel 4.16
I'm on Debian running kernel 4.16
No firewalls or whatsoever
No firewalls whatsoever
Has joined the channel.
@vtfr this is 403 error. so this can be a problem from npm it self
@vtfr this is 403 error. so this can be a problem from npm it self oder firewall (but u don't have firewall)
[ ](https://chat.hyperledger.org/channel/composer?msg=Rgy5XceXcbvrWEfQ5) @waleed Reverted note back to 9.11.2 and it worked
After some searching I've found there is no GRPC precompiled binary for my previous node version (v1.10.1) and since there were some ABI changes from node 9 to 10 (as I found out) building it from source wasn't working
Thanks!
@vtfr note that these are the current Node / OS levels supported by Hyperledger Composer FYI -> https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
[ ](https://chat.hyperledger.org/channel/composer?msg=WooeJWusTB2mcaJdw) @mahoney1 Thanks! I will share this with my group
Has joined the channel.
Has joined the channel.
hi, in composer-rest-server if i do {"include": "resolve"} this show me the related attributes on that model, it is posible revert attributes? for example get all phones of a user(a list of related models)? sorry for my English
@diegoduncan21 yes - the related instances for the assets/participants you searched/filtered on (via REST API) - see examples in the answer here -> https://stackoverflow.com/questions/51118126/hyperledger-composer-rest-api-for-get and here -> https://stackoverflow.com/questions/50413710/retrieving-properties-of-relationship-through-query/50426346#50426346
@mahoney1 thanks, but i want is, if i request a list of users, include all phones per user, not viceversa(get phones per one user)
@diegoduncan21 yes, just include resolve in the filter to get all users (and all related phones) - otherwise narrow it with 'where'
@mahoney1 oh, i dont have in the model User like this `--> Phone[] phones` i have `--> User user` in Phone model. :thinking:
thats the problem
that's the problem
Has joined the channel.
Has joined the channel.
hi, composer team, good day. Cello has been deploying composer playground using the composer-cli:next and composerplayground:next images when deploy fabric network. It has worked fine against fabric 1.1
however, recently when I tried to use composer-cli:next, request identity failed.
there were some sql errors. I wonder if composer-cli:next will be continuously developed? can someone from composer team update a bit of development direction? where is composer-cli:next is going, when will it become the composer-cli: latest?
@mahoney1 can you please help a bit about the questions that I have above? ^^^
@tongli the `next` tag has not been used in a while, it was last at composer 0.18, composer is now at 0.19 and is on the latest tag
@davidkel does that mean the work on :next will be abandoned ?
since the commands are bit different. cello has been using the next commands doing things.
What was in next became latest.
Next is not having anything new published at this time. All updates have been to latest
hmm. actually no, when I used next, it has runtime install, when I used latest, it has no runtime install. that is when I saw errors as well.
next should not be used, it is quite an old codebase now
ok. thanks David. so I should remove the use of commands only appear in next? such as runtime install?
Yes, I think Cello should only be using latest
when we added composer playground , I thought that using the next was a the right thing, but now it seems that was a bad decision.
Bear in mind that latest tends to only be able to support a specific version of fabric. So current latest points to 0.19.12 which only supports fabric 1.1
right. that seems to be the case. when I move on to 1.2, it breaks.
For example It may be that a version of composer that only supports 1.2 may become latest
ok, I will try the latest then . thanks.
one last question, is there any differences in terms of the connection profile?
I mean between using next and latest?
I don't think so
ok, that is good to know. thanks again.
is there a composer working group meeting now ? I have it on the calendar but no one is in the room
If I add a peer to the hyperledger network using cryptogen extend, and make it join the channel, is there any way to use composer on that new peer as well? I am trying to use upgrading the network feature in hyperledger composer, to create a new connection.json file and add that peer's IP and port so that the composer also communicates with that peer. Currently it's failiing, but I want to know if this is even possible to do with the current version of composer?
@jmason900 no there isn't one now, there was a community call yesterday. The next one is published here
https://github.com/hyperledger/composer/wiki/NextCommunityCall
[ ](https://chat.hyperledger.org/channel/composer?msg=Gg2bemfeZiJzJuktc) @jmason900 hi not for Composer (schedule alternates between Wednesday (yesterday's call) and Thursday (next week's call) https://github.com/hyperledger/composer/wiki/NextCommunityCall
[ ](https://chat.hyperledger.org/channel/composer?msg=Gg2bemfeZiJzJuktc) @jmason900 Composer call schedule alternates between Wednesday (yesterday's call) and Thursday (next week's call) https://github.com/hyperledger/composer/wiki/NextCommunityCall
[ ](https://chat.hyperledger.org/channel/composer?msg=XPGnn28syCRFEd6gX) @mahoney1 Thanks. Looking at JIRA I see issues listed for composer but not epics or stories. Where do we track work on the current release? https://jira.hyperledger.org/browse/COM-1?jql=project%20%3D%20Composer%20%20order%20by%20key
@jmason900 All Composer issues are here -> https://github.com/hyperledger/composer/issues and you can track epics / stories using the Labels on that page eg https://github.com/hyperledger/composer/labels/epic
@jmason900 All Composer work is tracked by issues here -> https://github.com/hyperledger/composer/issues and you can track epics / stories using the Labels on that page eg https://github.com/hyperledger/composer/labels/epic
got error like this when identity request . can someone help please?
following this doc. https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
this is the error ```api/v1/enroll handler failed to initialize DB: Failed to update schema: sql: no rows in result set```
[ ](https://chat.hyperledger.org/channel/composer?msg=E57ReosdD3JSqH5dT) @mahoney1 A belated thank you. Are there any estimate on when compatibility with fabric 1.2 will be released?
Hi everyone, I'm building a Composer application with an Angular frontend following this tutorial (https://medium.com/coinmonks/building-a-blockchain-application-using-hyperledger-fabric-with-angular-frontend-part-2-22ef7c77f53) and I managed to get the app up and running. Now I'm trying to add multiple users and authentication to it following this (https://hyperledger.github.io/composer/v0.16/integrating/enabling-multiuser), but when I added authentication I now can no longer start the composer-rest-server. I get an error that says the admin has not been registered. Does anybody know why this is happening?
unaltered error pic composer rest .png
Can u post your issue on stackoverflow? and I will take a look :) @mdimovich [ ](https://chat.hyperledger.org/channel/composer?msg=PoQuyQHtPdHfjx46t)
Has joined the channel.
Yep I will post there I'll link here when I do
Has joined the channel.
https://stackoverflow.com/questions/51313561/admin-not-registered-error-when-trying-to-run-composer-rest-server
There's the link to the post
Hi, I have created a .bna file on the composer playground. Wanted to deploy it, however, I receive this error: `$ composer network install --card PeerAdmin@hlfv1 --archiveFile chaincerts.bna
× Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
`
./startFabric ?
Get this - Error: channel create configuration tx file not found open C:/Program Files/Git/etc/hyperledger/configtx/composer-channel.tx: no such file or directory
Though the file is there under fabric-scripts/hlfv1/composer
Should I change the file path in the startFabric command?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=sg8C45oE9jfrnqFRc) @pnarang_a_s I'm only just getting started with fabric myself so unfortunetly I've not a clue and I don't use Windows. If you're totally stuck likely look in that directory for the file specified. If its not there, perhaps you have missed one of the generator scripts?
Best I can do for you :smiley: I just happened to have that same issue earlier.
Thanks @nemo 8 ! and no worries :) I was able to get ./startFabric to work (I think?) It finished with
```
2018-07-12 21:14:24.083 UTC [channelCmd] executeJoin -> INFO 006 Successfully submitted proposal to join channel
2018-07-12 21:14:24.083 UTC [main] main -> INFO 007 Exiting.....
```
and then ran `$ ./createPeerAdminCard.sh`
However, still get this error:
```
$ composer network install --card PeerAdmin@hlfv1 --archiveFile chaincerts@0.0.1.bna
× Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
```
Could it be a windows issue? I've read a lot about having dev issues on windows. Maybe I need to try on Ubuntu?
Someone had the same issue on Ubuntu. No solution identified though - https://github.com/hyperledger/composer/issues/4215
Has joined the channel.
HI everyone, I am pretty new to hyperledger composer and I am trying to create a query which takes in an asset id as a parameter and returns a list of transactions that asset was apart of. I've looked around the internet and have not found a working solution yet. Can someone give me a basic query definition for what I want to accomplish? If it turns out you cannot query data from the historian, can you give me some alternatives? Thanks!
@Poneey @mahoney1 thank you guys!!
@Poneey @mahoney1 thank you guys!
@mahoney1 can I ask a few more questions...
you've said participants are individual users in the network. what if they only need `read` access and do not transactions in the network? are they still participants?
@mahoney1 can I ask a few more questions...
you've said participants are individual users in the network. what if they only need `read` access and do not transactions in the network? are they still participants?
And do all participants need to have their own Fabric infrastructure? and why can't they just use composer REST API :cry:
@mahoney1 can I ask a few more questions...
you've said participants are individual users in the network. what if they only need `read` access and do not transactions in the network? are they still participants?
And do participants need to have their own Fabric infrastructure?
@mahoney1 can I ask a few more questions...
you've said participants are individual users in the network. what if they only need `read` access and do not transactions in the network? are they still participants?
And do all participants need to have their own Fabric infrastructure?
In order to read any data you would have to be a participant with an administered id
@howdyeyey Participants don't need their own peers of that is what you are asking
if*
aha!
so, if there is a web app communicating with composer REST API and users use the web app to view the data, they are just users not participants?
No they would have to be participants to see any data
The participants are users
I am having an issue updating my composer rest server. For some reason even after starting a completely new composer network with an updated bna file, the composer rest server keeps using an outdated network
For instance in this model file: asset ClientAsset identified by serialId {
o String serialId
o String productId
o String warehouseId
o Integer quantity
o Status status
--> Owner owner
}
@apaparazzi0329 thanks, I'm still confused with the concept of participants tho..
I can remove the o String productId property yet when starting the rest server again it will still be there as a required field when POSTing
have you updated the version number
have you updated the version number of the BNA
It is a little confusing any questions I could answer to enlighten the situation
I have
thanks paparazzi, not sure if you know the sample network `marbles` in the official composer docs,
The network has 1 participant (player), 1 asset (marble), 1 transaction.
In this model, there is no organisation involved (unless participant === organisation?).
If later the network decided to record `merchant` with merchant id that indicates who sold marbles to whom. Merchants don't really do anything with trading marbles between players. But they would like to see which players they sold their marbles to. so now they are a part of network. which means they are participants.
I sort of answered myself describing it?
But let's say, there is an app that displays what's happening in the network. just like the marbles-network app. and this app reads data from the marbles network via composer REST API.
From what I understood, this app sounds like a participant too, because it needs access to the networks data
what's the component type of the web app in this network? is it a part of the network? or participant? or something else? because merchants (and players) will use the app to access data.
The app would not be a participant it would only be a way for someone to access the data. They would have to input credentials and sign in as an authorized participant I believe
right. I guess I was confused because I saw no authentication example in the sample apps..
Yeah the authentication steps is outlined through the composer rest server documentation
@apaparazzi0329 thanks a lot man :) may the force be with ya..
ls
[ ](https://chat.hyperledger.org/channel/composer?msg=2TPPk66HwbYd9JTJC) @waleed Yeh! Thanks a lot @waleed
is there a way to identify in transaction was successfull, it shows unsucessfull tx in historian as well
on v1.1
Has joined the channel.
Hello
Which peer in an organization does the Composer REST API uses to send it's transactions?
@Varun2887 I'm assuming it would be to query the id of the transaction from historian, but I myself am having trouble with that, hence my question further in this chat.
how to create data model that to be stored in ledger using NODE JS SDK like we create assests and transactions in hyperledger composer
[ ](https://chat.hyperledger.org/channel/composer?msg=6k8ayvfDYQopoa9TJ) @patrick8289 but based on which field
hi, can someone tell me the different of those API Common API
Client API
Admin API
Runtime API
where is the overview introductioin
[ ](https://chat.hyperledger.org/channel/composer?msg=7xTWCggGgC842RzYB) @davidhu https://hyperledger.github.io/composer/latest/api/api-doc-index
please refer this
[ ](https://chat.hyperledger.org/channel/composer?msg=Rf4XPTqSv55XRgP3g) @mdimovich I will take a lot :)
[ ](https://chat.hyperledger.org/channel/composer?msg=De9G25cJ6i4jpkNSf) @howdyeyey [this tutorial](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) is an example of multi-user blockchain interaction, with different user participants interacting with the ledger (eg. queries etc). Merchants would be issued (or have access to) the ledger through business network cards - their application users would be able to check the records on the marbles network
If my server goes down and network stops then what about all existing identities? I tried by mounting volume of couch db on local machine but when I try to start network again then it says `authorization failure`
If my server goes down and network stops then what about all existing identities? I tried by mounting volume of couch db on local machine but when I try to start network again then it says `authorization failure`. So what could be the solution to this?
[ ](https://chat.hyperledger.org/channel/composer?msg=bNdDvEjtZktqgFjWP) @HoneyShah - If your server fails, can you restart the docker containers ?
Have you persisted the data volumes for the other containers?
[ ](https://chat.hyperledger.org/channel/composer?msg=bNdDvEjtZktqgFjWP) @HoneyShah - If your server fails, can you restart the docker containers ?
Have you persisted the data volumes for the other containers?
You should not need to (re)start the Network - the chaincode containers for the Peers will be automatically started (and created if necessary) when the Business Network is first accessed.
Has joined the channel.
Has joined the channel.
@AnithaReddy you would create the .cto in the normal fashion and then use this API https://hyperledger.github.io/composer/latest/api/common-modelmanager.html to validate or update it etc etc.
Hi everybody, i have a problem. At this moment, I deploy my network (all peers, the orderer, ...) and I create my business network card thanks to the composer-playground. Now I would like install the rest-APi but when I try to launch this thanks to the business network card that I download to the composer-playground i have this error : Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: the current identity, with the name 'xxx' and the identifier 'xxx' has not been registered
[ ](https://chat.hyperledger.org/channel/composer?msg=6fSK9SkFrpq3XLzBy) @rthatcher Yes, I have persisted the data volumes. I can restart containers but what if somehow my containers got killed?
@patrick8289 hi there, see more info in this link -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks (item 6 relating to asset history) for tips. REST (loopback) filters may be your best bet to resolve the detail on the transaction class(es)
@nemo 8 should know more on when support is added in Composer next week.
[ ](https://chat.hyperledger.org/channel/composer?msg=i8YuJaJaqH29XvBpg) @Varun2887 More info in the answer here -> https://stackoverflow.com/questions/49129098/return-values-from-chaincode-in-hyperledger-fabric and useful example (section 3) in this external [tutorial](https://www.skcript.com/svr/setting-up-restful-api-server-for-hyperledger-fabric-with-nodejs-sdk/) - In the REST API a transaction that was successfully committed returns a 200
Has joined the channel.
Hi Guys
I still did not manage to make it work behind proxy
I tried the /etc/cntlm.conf file and also to exclude the Docker Bridge network
but still no luck
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
[ ](https://chat.hyperledger.org/channel/composer?msg=s7t5Qcx3WnXcJ3RyS) @Drest - Does the Business Network Card work in Playground to connect to the network?
Are you using the standard Development Fabric, or a Custom Fabric? and Does the Fabric have a single or multiple Organisations?
@rthatcher My business network card work in the composer-playground without any problem. In my fabric I have 3 differents organisations and 2 peers by organisation. I usefabric-ca (I don't know if we can that it's a personalise fabric). I have verified my certificate and my enrollmentSecret and no problem at this.
@rthatcher hi, is there a way to display a card's connection profile content?
@rthatcher hi, is there a way to display a card's connection profile content?("card list" shows only the profile name)
[ ](https://chat.hyperledger.org/channel/composer?msg=Pwm6uKdzvdQH9Yqin) @Drest - the error does not look like a normal error when starting the rest server with `composer-rest-server -c user@test-network` - what are the steps you are following?
[ ](https://chat.hyperledger.org/channel/composer?msg=dNJ8zc72QujLdFQJb) @uber.twin you would need to look at the connection.json file on the file system. (or possibly look at the business connection object in the javascript API)
Where is sources of chaincode in chaincode container?
Where is sources of chaincode in chaincode container? @rthatcher
@rthatcher 1) I download my .card (business card) and I unzip this to create a repertory admin@myNetwork
2) I use docker for all my network so I launch the mongoBD thanks to the tutorial that you can see here : https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server.html
3) I follow all instructions, so I create my docker composer-rest-server
4) I create my environnement file
5) I launch the composer-rest-server thanks to this command :
docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ~/.composer:/home/composer/.composer \
--name rest2 \
--network net_fabric-ca \
-p 3000:3000 \
myorggithub/my-composer-rest-server
Juste to be more precise, I suceeded before to launch all of this with the same method but we need to redeploy all of this and this time i have this error
@rthatcher 1) I download my .card (business card) and I unzip this to create a repertory admin@myNetwork
2) I use docker for all my network so I launch the mongoBD thanks to the tutorial that you can see here : https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server.html
3) I follow all instructions, so I create my docker composer-rest-server
4) I create my environnement file
5) I launch the composer-rest-server thanks to this command :
docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ~/.composer:/home/composer/.composer \
--name rest2 \
--network net_fabric-ca \
-p 3000:3000 \
myorggithub/my-composer-rest-server
Just to be more precise, I suceeded before to launch all of this with the same method but we need to redeploy all of this and this time i have this error
@VadimInshakov as you know, the source is installed on the peers that need to have it. As for the packaging inside the chaincode container - suggest to read this SO answer -> https://stackoverflow.com/questions/48455268/where-is-hyperledger-fabric-chaincode-store-location
@Drest - thanks for the details :-)
Are you seeing that error in the docker log of the rest container when you first start, or when a user has authenticated with the REST server and is trying to access the Business network? (So is this a card that you are using to discover Network and start the server, or a card that is imported into a wallet?)
I'm wondering if this is an 'old' card and you have started a new network ?
Has joined the channel.
Has joined the channel.
hi . I have been trying to import file perishable-network.bna file to my composer playground but i am getting the following error .perishable-network.bna has an unsupported file type
I am new to composer and was trying to run some samples. can anyone please help me out with this
I cloned the comoser-sample-networks from git
[ ](https://chat.hyperledger.org/channel/composer?msg=ri7zww4MMkbJMFc7n) @pawanjois local playground? - sounds like your bna file is corrupt - you can get a sample to download from [online playground](https://composer-playground.mybluemix.net) (deploy it, connect to it, then export and save it locally) - playground is using 0.19.12 fyi
ok that you. i'll look into it.
*thank
Hi everyone,
I am new to composer. I have gone through the documentation many times still I have some basic doubts regarding composer-rest-server.
1. Does all organisations in the business network have their own instances of rest-server for user authentication and interaction with business network?
2. What is the relationship between peer and rest-server? If an organisation has multiple peers, then rest-server would be interacting with which peer?
@rthatcher Thank you for you answer :)
First of all, I see this error when I see the logs of the docker container thanks to the command docker logs -f rest2 (so, I can't go to the localhost:3000).
For your second question, I create a new card, I juste import a old bna and after to create this, I download the new card that the composer playground have created and I do the differents steps that I explained to you.
Has joined the channel.
Hi , I am new to the hyper ledger and hyperledger composer , while install the hyperledger in local system and follow this steps https://hyperledger.github.io/composer/latest/installing/installing-index but i faced this issue in this steps * ./createPeerAdminCard*.sh likeNo version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher , please anyone can help to solve this problem , thanks in advance
[ ](https://chat.hyperledger.org/channel/composer?msg=BNxhoEPpXRLcDaJGc) @mahoney1 `When you instantiate, the peer will unmarshal the package and then use the code_bytes to compile the chaincode which is then deployed in a Docker container`
So, in chaincode container we have deserialized code, wich executed when we invoke chaincode. In which format these deserialized data are stored? How chaincode container really works: it's v8 engine that interpret js code, golang binary, java bytecode in jwm?
[ ](https://chat.hyperledger.org/channel/composer?msg=BNxhoEPpXRLcDaJGc) @mahoney1
```When you instantiate, the peer will unmarshal the package and then use the code_bytes to compile the chaincode which is then deployed in a Docker container```
So, in chaincode container we have deserialized code, wich executed when we invoke chaincode. In which format these deserialized data are stored? How chaincode container really works: it's v8 engine that interpret js code, golang binary, java bytecode in jwm?
@Anshulmittal hi ! 1). Organisations would spin up their own multi-user REST server instances (Highly available etc), so their users can interact. Authentication comes from an auth provider (passport strategy that REST server redirects to). 2) A peer is a Fabric infrastructure node in an Orgs blockchain setup (that's part of a blockchain network usually); Composer REST server discovers / enables interaction with the business network (or networks) through a standard set of REST API endpoints, common to all orgs (in your scenario). The REST server will interact with the available peer(s) in the order defined (in the connection profile of the business network card of the user)
Hi guys
does anyone have a working HL Composer behind a company Proxy ?
@VadimInshakov you will have to read the appropriate FABRIC answers - many of the answers/mechanics for which are provided in the links off this [JIRA](https://jira.hyperledger.org/browse/FAB-2331)
@Mahadream hi there - you first need to ensure you've installed the prereqs (and all the levels specified there are met/satisfied) -> https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html and 2) your error is because you haven't installed Composer modules - so you need to follow the instructions in the docs - in sequence https://hyperledger.github.io/composer/latest/installing/development-tools.html - I guess you might already have installed a Fabric, but not yet installed Composer. Also ensure you don't installed as sudo or root (ie no elevated privileges) - once you do the global module installed, composer CLI will be available to the Dev script you specified in your post.
@Mahadream hi there - you first need to ensure you've installed the Hyperledger Composer prereqs (and all the levels specified there are met/satisfied) -> https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html and 2) your error is because you haven't installed Composer modules - so you need to follow the instructions in the docs - in sequence https://hyperledger.github.io/composer/latest/installing/development-tools.html - I guess you might already have installed a Fabric, but not yet installed Composer. Also ensure you don't installed as sudo or root (ie no elevated privileges) - once you do the global module installed, composer CLI will be available to the Dev script you specified in your post.
thanks @mahoney1 for the answer. This helps :)
[ ](https://chat.hyperledger.org/channel/composer?msg=YZf7Hma8kWWajSd9A) @rthatcher sure. then, the cards have only a reference on the filesystem for the profile information or they package the whole information?
[ ](https://chat.hyperledger.org/channel/composer?msg=YZf7Hma8kWWajSd9A) @rthatcher sure. then, the cards have only a reference on the filesystem for the profile information or they package the whole content?
@mahoney1 - I have still no luck with the proxy :D
[ ](https://chat.hyperledger.org/channel/composer?msg=oRL7GHKEGyfR72Hyd) @mahoney1 Cheers mate, thanks for the help.
[ ](https://chat.hyperledger.org/channel/composer?msg=GadYkCkdKeqdq4i4m) @Drest - First, I would advise that for anything other than a simple Dev Fabric, I would not use Playground to create/import/export cards - I would use the command line. The MultiOrg tutorial we have is a good guide to creating Cards in a Multi-Org environment.
- Secondly I would always test a Card on the command line with `composer network ping` and `composer network list` before trying with the REST server.
- I assume that you are aware that when a card is created it contains a 'one time secret', and that on first use the certificates are downloaded. After that first use the 'secret' is invalid and the certificates are used. (You can use the command `composer card list -c T1@test-network` to see if the secret or certificates are being used on a card.
[ ](https://chat.hyperledger.org/channel/composer?msg=AEbwdMidBuJgYifmd) @uber.twin The card (including the connection.json) exists in a Wallet usually the File System, or in a persisted data store of a REST server. You can package/unpackage them for moving between systems using the `composer card export/import` command that creates an archive .card file.
@rthatcher Just for confirmation :
In my old configuration, all work bug when I tried to ping the business card, i never succeeded and I think that it's because all my network is on docker container. It's good or the command line composer network ping -c card must work even if I use docker fort my network ?
@rthatcher I solved my problem, Exactly like you said, in my business card a certificate is present so if I use a new business that that I just create, all work, thank you very much for all :)
[ ](https://chat.hyperledger.org/channel/composer?msg=LFba5Xgs2JoFfjKW7) @Drest the ping should work - assuming the Network Addressing and connectivity works - if you are using docker-compose for example, then the network bridge created for you allows the Containers to see eachother by Name on the private bridge but from your Host machine you wouldn't see those fully qualified names resolved.
Hi
root@serer1013:~# docker pull hello-world
Using default tag: latest
latest: Pulling from library/hello-world
Digest: sha256:4b8ff392a12ed9ea17784bd3c9a8b1fa3299cac44aca35a85c90c5e3c7afacdc
Status: Image is up to date for hello-world:latest
but I cannot start the network
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
my corporate proxy is inside the .nprmc file and also in docker service file
http_proxy=http://10.11.111.13:8080/
https-proxy=http://10.11.111.13:8080/
user=0
unsafe-perm=true
npm config set registry http://registry.npmjs.org/
npm set strict-ssl false
no_proxy=172.18.0.*, localhost, 172.18.0.*
this is the /root/.npmrc file
but I think the docker images do not know about the the proxy settings
Hi all,
when i tried to instantiate the chain code get an error : sendPeersProposal - Promise is rejected: Error: 2 UNKNOWN: access denied: channel [carlanerootchannel] creator org [Org1MSP]
how can i solve this??
[ ](https://chat.hyperledger.org/channel/composer?msg=DTzsgkYSg8nPzNJFP) @AMIL_SAJEEV - Are you using Composer? If not, I would suggest asking the question in one of the #fabric channels.
@Zeljko Milinovic as mentioned, the .npmrc file you're using here, contains 'npm config set' statements that won't be interpreted when passed to `composer network install` -o flag.. The issue with your network install is still related to an inability to resolve a route (using your PeerAdmin card's connection.json file) to communicate with your Fabric nodes (eg. peers etc)
[ ](https://chat.hyperledger.org/channel/composer?msg=BvFAds569e56tATmy) @rthatcher okey. I tried by using fabric node sdk. i think this issue due to some mistake in configuration of channel at the time of network creation. so I post here:neutral_face:
[ ](https://chat.hyperledger.org/channel/composer?msg=qEh9oQF3Dmz6YTQHE) @AMIL_SAJEEV Okay - the composer commands assume that the Fabric and Channel are already setup. Are you following a particular tutorial? If not, I would suggest trying the Composer Developers Tutorial to begin with as it sets up a simple developer fabric for you in the pre-req installs. https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
Hi, is it possible to dynamically modify permissions of participants of a business network?
@Varun2887 Try this line: SELECT org.hyperledger.composer.system.HistorianRecord WHERE (transactionId==_$trxID)
Has joined the channel.
Hi guys, is there a way to generate a Business Network Card for an issued identity though the org.hyperledger.composer.system.IssueIdentity transaction?
I am not sure how I can get the userSecret unless I use the issueIdentity method from the BusinessNetworkConnection class
@rthatcher @patrick8289 got an error when composer network start. here is the command.
``` composer network start -c PeerAdmin@carauction-network-orga -n carauction-network -V v0.19.12 -o endorsementPolicyFi
le=/fabriccerts/keyfiles/policy.json -A orgaNetworkAdmin -C /home/composer/.composer/orgaNetworkAdmin/admin-pub.pem -A o
rgbNetworkAdmin -C /home/composer/.composer/orgbNetworkAdmin/admin-pub.pem```
this the error.
```Starting business network carauction-network at version v0.19.12
Processing these Network Admins:
userName: orgaNetworkAdmin
userName: orgbNetworkAdmin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Parameter must be a ProposalResponse Object
Command failed```
network show -v give me the following
```~ $ composer network show -v
v0.19.12```
that is why I used -V v0.19.12 in the network start command. but it failed with the error which I have no idea what that means.
can any one help please?
tongli
looks like you are giving the version of composer rather than the version of your network. Try `composer archive list` to get the version number and name of your bna.
```~ $ composer archive list -v
v0.19.12```
composer archive list -a mynetwork.bna
```composer archive list -a carauction-network.bna
Listing Business Network Archive from carauction-network.bna
Identifier:carauction-network@0.2.3-20180314171154
Name:carauction-network
Version:0.2.3-20180314171154
Command succeeded```
@rthatcher let me try that.
so the version should be ```0.2.3-20180314171154```
@rthatcher that worked. Thanks so much.
```composer network start -c PeerAdmin@carauction-network-orga -n carauction-network -V 0.2.3-20180314171154 -o endors
ementPolicyFile=/fabriccerts/keyfiles/policy.json -A orgaNetworkAdmin -C /home/composer/.composer/orgaNetworkAdmin/admin
-pub.pem -A orgbNetworkAdmin -C /home/composer/.composer/orgbNetworkAdmin/admin-pub.pem
Starting business network carauction-network at version 0.2.3-20180314171154
Processing these Network Admins:
userName: orgaNetworkAdmin
userName: orgbNetworkAdmin
✔ Starting business network definition. This may take a minute...
Successfully created business network cards:
Filename: orgaNetworkAdmin@carauction-network.card
Filename: orgbNetworkAdmin@carauction-network.card
Command succeeded```
Hi any one have uploaded business network card using xmlhttp request
?
[ ](https://chat.hyperledger.org/channel/composer?msg=qpk29FsPrJfqWAWFw) @rthatcher okey, Thank you:slight_smile:
@rthatcher @patrick8289
Clarifying my question, how is the identity.userSecret defined when issuing the identity from a org.hyperledger.composer.system.IssueIdentity transaction?
Has joined the channel.
Hi Everyone! For asking composer questions i just send them here? or there is another composer-questions channel?
I'm having trouble with creating valid user cards after successfully starting the network with `composer network start ...`
@vanclief - see code sample in this link https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#card-api-errors--resolutions the one-time enrolment secret is generated by the Fabric CA
@GonzalezAnguita yes it is - generally its best to write a Stack Overflow for detailed problems, especially capturing outputs, steps taken so far, or if there is background and detail per this instruction https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#issue
@GonzalezAnguita yes it is - generally its best to write a Stack Overflow for detailed problems, especially capturing outputs, steps taken so far, or if there is background and detail to be added, per this instruction https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#issue
[ ](https://chat.hyperledger.org/channel/composer?msg=Z8SnLLoCAcHcPFf2r) @mahoney1 @mahoney1 - Will post there then. Thanks!
Has joined the channel.
Has joined the channel.
@rthatcher I moved a bit farther after started the network. however, when I tried to do a network ping like this.
```composer network ping -c orgaNetworkAdmin@carauction-network
Error: Error trying to ping. SyntaxError: Unexpected end of JSON input
Command failed```
I got a syntax error. complaining about json.
but that command does not pass in any json.
seems to me that the output was json and could not be parsed.
I wonder how I can fix that.
this is using fabric 1.2 and latest composer-cli container
do not know if that is the issue.
Is there a way to make an attribute "final" in modeling language? For example in the asset "vehicle", I want the "o String vin" to be final, so that nobody, even the administrators can ever update/change it after it is first time assigned. While I still want participants to be able to change other properties of "Vehicle". Is there a way to define that either in the modeling or in the Permission files?
@tongli composer 0.19.x doesn't work with fabric 1.2
@tongli composer 0.19.x doesn't work with fabric 1.2 only 1.1
@tongli Composer doesn't support this version of fabric yet. Composer 0.19.x only supports fabric 1.1, Current Composer 'latest' points to 0.19.12 which only supports fabric 1.1 (as mentioned by davidkel yesterday)
@davidkel @mahoney1 thanks a lot for the confirmation.
@mahoney1 @davidkel any idea when it will be supporting fabric 1.2
?
Hi, I have a question. I have created a business network and card, and deployed it to the fabric runtime - > compose install, compose start, import card and ping. Everything went well. After that, I stopped the fabric (not teardown), and started the fabric again. Then I can't make the compose start to may network, even if the card is present, with the following error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode.
do I have to make the install every time I stop the fabric? or is there some configuration I'm missing related to this chain code?
@mahoney1 Thank you! I solved my issue, turns out you can use a simple query and specify a transaction as the return value
@patrick8289 yes, you can use [query processor functions](https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions) that came in with 0.19.12
@tongli we'll post here as soon as we know
I posted my question here (https://stackoverflow.com/questions/51329602/hyperledger-composer-getting-access-denied-when-pinging-network-admin-card) if anyone could take a look
@guilhermesimoes see ANSWER 2 in this [Stack Overflow](https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data) - you should not use the stop/start using Fabric scripts - instead use the method described (using docker-compose) in the answer (to save the ledger state) - the problem you have now is you've started a new peer (doesn't know about the chaincode anymore) as well as other nodes like the CA server
@guilhermesimoes see ANSWER 2 in this [Stack Overflow](https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data) - you should not use the stop/start using Fabric scripts, if you want to stop your Fabric env and restart it later to use it again - instead use the method described (using docker-compose) in the answer (to save the ledger state) - the problem you have now is you've started a new peer (doesn't know about the chaincode anymore) as well as other nodes like the CA server
@guilhermesimoes see ANSWER 2 in this [Stack Overflow](https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data) - you should not use the stop/start using Fabric scripts, if you want to stop your Fabric docker env and restart it later to use it again (and still have data on the ledger) - instead use the method described (using docker-compose) in the answer (to save the ledger state) - the problem you have now is you've started a new peer (doesn't know about the chaincode anymore) as well as other nodes like the CA server
Thanks!
@mahoney1 thanks for the answer x) I'll look into it
Has joined the channel.
hay guys..
have you got any helping materiel with you?, to get a good headstart in composer playground.
hey guys have you got any problem with Burrow?
Hi, getting this error from the image bellow when executing the command `composer network ping -c alice@trade-network` after deploying the multi-org business network according to the tutorial from `https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org`. Followed the tutorial accordingly and changed absolutely nothing in the configuration/crypto stuff
Clipboard - July 14, 2018 11:22 AM
also, when doing `./byfn.sh -m up -s couchdb -a`, the PEER0 query fails, even though the result of the query is 100 which equals the expected value. the weird thing is that the query succeeds after deploying it for the first time after downloading fabric-samples. see the error in the image below
Clipboard - July 14, 2018 11:26 AM
Has joined the channel.
Has joined the channel.
I have too many assets and participants in composer. Whenever i am querying the composer and playground as well shows fabric timout error. How can I Limit the data as LIMIT/SKIP dont work with fabric. What are the alternatives to increase the performance of queries. How to use pagination?
can we fetch only certain fields while fetching data?
Hey so in composer 0.19+ , to create a new card, we need to provide a connectionProfile.json. Now the profile depends on the setup as shown here `https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org` . But if an additional organization as added, the connection profile will change to include the new CAs and orderers. So will the old composer cards still be valid? or all identities need a new card with the latest connection profile ?
Is there a way to ensure a field of an asset is "final", therefore it can not be updated after it is created, still allowing updates for other fields of the same asset. For example in the asset "Vehicle", I want to forbid everyone updates of the "o String vin", yet allowing updates to other fields of the Vehicle asset such as color or price. Is there a way to define that property, either in the Modeling or in the Permission language?
@fedez The best way to do that, would be to first prevent any updates to the asset from being done without submitting a transaction. Then in the update transaction, throw an error if someone tries to update `vin`
The first part is done in the `permissions.acl` file, the second part is done in the `.js` file for the composer transaction functions
Hello everyone, when i trying to start business network over hyperledger running on k8s , i am getting error to connect my local npm registry from chaincode container, may be network connectivity issue in chaincode container, when i am not able to ping npm registry or any host(google.com). How to start n/w connectivity in chaincode container
hi Guys
I reinstalled one new Ubuntu 16.04 LTS and did the composer setup as a non root user behind proxy
still get the same error
frogman@dev01:~/fabric-dev-servers$ composer network install --card PeerAdmin@hlfv1 --archiveFile /home/frogman/carauction-network.bna -o npmrcFile=/home/frogman/.npmrc
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
composer network install --card PeerAdmin@hlfv1 --archiveFile /home/frogman/carauction-network.bna -o npmrcFile=/home/frogman/.npmrc
frogman@dev01:~/fabric-dev-servers$ cat /home/frogman/.npmrc
http_proxy=http://10.12.100.13:8080/
https-proxy=http://10.12.100.13:8080/
user=0
unsafe-perm=true
registry=http://registry.npmjs.org/
strict-ssl=false
no_proxy=172.18.0.2,172.18.0.3,172.18.0.4,172.18.0.5,172.18.0.1,localhost
I think I have an issue that the docker images cannot talk to each other and get blocked/filtered trough proxy , although should not
any help apprecaited
What Programming language do i need to learn for Hyperledger Fabric other tan javascript
[ ](https://chat.hyperledger.org/channel/composer?msg=qe9QaJQyq9yBGHAwf) @mahoney1 Thanks a lot! Now the picture is clear.
So I need to generate X amount of assets depending on certain conditions. I have tried doing it by building the logic into the .bna, but discovered that assets cannot only be generated with hard-coded IDs, otherwise the IDs would mismatch among other channels. So I was told I needed to do this on the client level. For our client we are using the composer-rest-server. Am I able to put this asset generation functionality into the composer-rest-server or do I need to run another client just for this?
Hi guys, again me with my Proxy issues, I added the variables for proxy and no_proxy in docker-composer.yml file but still getting the Error: 14 Unavailable
Hi everyone. anyone using the node-red-contrib-composer? is this the correct channel to talk about it?
Has joined the channel.
Has joined the channel.
Hi everyone, I am newest of writing Blockchain code using with Composer
and I am fallowing steps in instructions
however when I try to deploy my test network using with "composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna"
I am getting this error : Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
what should I do because in the instruction page it should be work because of the peer admin created as part of development environment installation.
Has joined the channel.
@cagdasozt try running "./startFabric.sh"
Has joined the channel.
Hey, who are the authors of the docs @ https://hyperledger.github.io/composer/latest/introduction/introduction.html ?
so that I can cite them in my thesis
Has joined the channel.
@cagdasozt Not sure if this helps, but I am came across a similar problem, I issue the follwoing command and it worked
composer network install -c PeerAdmin@hlfv1 -a dist/iot-perishable-network-advanced.bna
Discovering types from business network definition ...
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
It will be retried for the next request.
Exception: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
at client.getUserContext.then.then.catch (/home/jalal/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)
at
Im getting the error above when trying to use the rest server
Please any help would be much appreciated
What is your thesis? @pedromlcosta [ ](https://chat.hyperledger.org/channel/composer?msg=4Fi53sFJMhrh3CGQG)
Big Shout out to @ronaldlong46 for helping me solve the problem....
Not a problem. Was getRandomId() deprecated?
Has joined the channel.
Hi. Can anyone please let me know how to use the docker image for https://hub.docker.com/r/hyperledger/composer-rest-server/. How to supply the card and other details to bootstrap this image to a running REST server?
Hi. Can anyone please let me know how to use the docker image for https://hub.docker.com/r/hyperledger/composer-rest-server/. How to supply the card and other details to bootstrap this image to a running container for composer REST server?
Has joined the channel.
Hi all , any one please help to solve this issue Error: Error trying to ping. Error: No peers available to query. last error was Error: 14 UNAVAILABLE: Connect Failed?
Hello everyone, I would really appreciate if anyone could tell me is composer can support multi-channel and if not which could? I want to build an application which has multi-channel and later the user can decide if he wants to join a new channel
[ ](https://chat.hyperledger.org/channel/composer?msg=uoJi5pQkKx9ZtppAf) @gauravgiri follow this -> https://hyperledger.github.io/composer/v0.16/integrating/deploying-the-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=uoJi5pQkKx9ZtppAf) @gauravgiri follow this -> https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=rEeXJSzMGRTb9PeFd) @mahoney1 two doudts:
1. these are for `fabric`, is something similar available for `composer`?
2. this is in real time what if I have to query the historian and check if the record was successful or a failure
@Varun2887 It is now possible to return data from invoking a transaction see
https://hyperledger.github.io/composer/latest/reference/js_scripts.html#returning-data-from-transaction-processor-functions
Note that this capability is only available to the composer client sdk, and isn't exposed via the composer rest server
From a fabric point of view all transactions are committed to the blockchain (successful or otherwise) and marked as such, however from a composer point of view it would only ever retrieve successful transactions
Hello, do someone can help me with this : https://stackoverflow.com/questions/51302570/hyperledger-composer-post-on-wallet-api-return-error-cant-find-end-of-centra
Hi guys, I am following this tutorial to deploy fabric with multiple peers and on different physical machines, https://medium.com/hyperlegendary/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-bfbe4e38b6c6
Hi guys, I am following this tutorial to deploy fabric with multiple peers and on different physical machines, https://medium.com/hyperlegendary/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-bfbe4e38b6c6 , but when i deploy the business network archive using composer, I get the following error:
Hi guys, I am following this tutorial to deploy fabric with multiple peers and on different physical machines, https://medium.com/hyperlegendary/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-bfbe4e38b6c6 , but when i deploy the business network archive using composer, I get the following error: ✖ Starting business network definition. This may take a minute...
✖ Installing runtime for business network undefined. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=rbd7q8DCACtCD42wn) @choco_coder I don't really know that tutorial, but we have information in the Knowledge Wiki about problems with `composer network start` which I assume is the command you are using:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
@rthatcher composer network start doesn't exist with the composer version i am using. I am using composer network deploy. composer version: 0.16.6 and fabric version: 1.0. Could composer be used for a network with more than one peers?
[ ](https://chat.hyperledger.org/channel/composer?msg=d2RnC9rrajtgExwt4) @Mahadream - the "UNAVAILABLE" error is a failure of the client (CLI) to "see" the Fabric on the addresses specified in the connection.json file of card you are using. Sometimes this means that your Fabric just isn't started, and other times it is a more complex networking issue. You can use `docker ps` to see f the Fabric is started.
[ ](https://chat.hyperledger.org/channel/composer?msg=eLwtChepuL7m8WH3A) @choco_coder Is there any particular reason you are still with v0.16.6? There are many fixes and new features since then.
(The `composer network deploy` is not recommended even in 0.16 - using `composer runtime install` and `composer network start` is the recommended way.)
I would check the Peer logs for errors to get more detail.
Could you please suggest How would we use Numbers in Enums in CTO File..
I found a issue but it seems to be closed https://github.com/hyperledger/composer/issues/1205
Has joined the channel.
Hi everybode, I have this error when I try to exucte my query with the composer-rest-server : "error : ExecuteQuery not supported for leveldb". My query is just a select and I sure that is good. Have you any idea to solve this problem ?
Hi everybode, I have this error when I try to exucte my query with the composer-rest-server : "error : ExecuteQuery not supported for leveldb". My query is just a select and I sure that is good. Have you any idea to solve this problem ? To be more precise, other queries work (the default request)
Hi everybody, I have this error when I try to execute my query with the composer-rest-server : "error : ExecuteQuery not supported for leveldb". My query is just a select and I sure that is good. Have you any idea to solve this problem ? To be more precise, other queries work (the default request)
Hi everybody, I have this error when I try to execute my query with the composer-rest-server : "error : ExecuteQuery not supported for leveldb". My query is just a select and I sure that is good. Have you any idea to solve this problem ? To be more precise, other queries work (the default request) and i use the docker-container composer-rest-server with mongoDB
Hi everybody, I have this error when I try to execute my query with the composer-rest-server : "error : ExecuteQuery not supported for leveldb". My query is just a select and I sure that is good. Have you any idea to solve this problem ? To be more precise, other queries work (the default request) and i use the docker-container composer-rest-server with mongoDB.
@rthatcher I checked the peer logs, I could see the chaincode is running, But i got this chat error, Is this error why the peers aren't able to communicate with eachother.
@rthatcher I checked the peer logs, I could see the chaincode is running, But i got this chat error, Is this error why the peers aren't able to communicate with eachother. 2018-07-16 08:32:51.252 UTC [endorser] ProcessProposal -> ERRO 3ea simulateProposal() resulted in chaincode response status 500 for txid: 9d85152ddc5a4c62edc8b0de5755141296cfd6b9b3eff700631e5805f0cd3d28
2018-07-16 08:32:51.275 UTC [endorser] ProcessProposal -> DEBU 3eb Exit
2018-07-16 08:32:51.291 UTC [eventhub_producer] validateEventMessage -> DEBU 3ec ValidateEventMessage starts for signed event 0xc421021aa0
2018-07-16 08:32:51.292 UTC [eventhub_producer] deRegisterHandler -> DEBU 3ed deregistering event type: BLOCK
2018-07-16 08:32:51.305 UTC [eventhub_producer] Chat -> ERRO 3ee error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
@rthatcher I checked the peer logs, I could see the chaincode is running, But i got this chat error, Is this error why the peers aren't able to communicate with eachother. 2018-07-16 08:32:51.252 UTC [endorser] ProcessProposal -> ERRO 3ea simulateProposal() resulted in chaincode response status 500 for txid: 9d85152ddc5a4c62edc8b0de5755141296cfd6b9b3eff700631e5805f0cd3d28
2018-07-16 08:32:51.275 UTC [endorser] ProcessProposal -> DEBU 3eb Exit
2018-07-16 08:32:51.291 UTC [eventhub_producer] validateEventMessage -> DEBU 3ec ValidateEventMessage starts for signed event 0xc421021aa0
2018-07-16 08:32:51.292 UTC [eventhub_producer] deRegisterHandler -> DEBU 3ed deregistering event type: BLOCK
2018-07-16 08:32:51.305 UTC [eventhub_producer] Chat -> ERRO 3ee error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled
I am using composer v0.16.6 because I wanted to use fabricv1.0, which required 0.16.*
[ ](https://chat.hyperledger.org/channel/composer?msg=pzfuo8aWiHm8pjRDW) @mahoney1 @rthatcher Is there any option for pagination or how to narrow down the number of assets/participants while querying based on number or size. As it is showing timeout error for queries.
[ ](https://chat.hyperledger.org/channel/composer?msg=9r3HWAPCsCoGxAX8N) @ra_w I have not seen any recent change that would help with the pagination problem. As a matter of interest, how large is your result set expected to be?
I think that for the time being you will have to find some criteria to reduce your result set size and make a number of queries.
[ ](https://chat.hyperledger.org/channel/composer?msg=4aannRT988iQ3sLrx) @Dauphinous Your Fabric is using Leveldb as the "State Database" for your peer(s) and it does not support queries, you need to set up your Fabric to use CouchDB as the State database.
(The use of MongoDB as the persistence store for the REST server is not related to the query problem.)
Ok, thank you for your answer
[ ](https://chat.hyperledger.org/channel/composer?msg=au3hroqpryTyvDhtL) @choco_coder I don't recognise that error. Is there any particular reason why you want Fabric 1.0 - as you say Fabric 1.1 supports the latest Composer v0.19.12
I found these errors after using composer runtime. 2018-07-16 09:24:17.379 UTC [chaincode] Launch -> ERRO 42b launchAndWaitForRegister failed Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
2018-07-16 09:24:17.379 UTC [endorser] callChaincode -> DEBU 42c Exit
2018-07-16 09:24:17.379 UTC [endorser] simulateProposal -> ERRO 42d failed to invoke chaincode name:"lscc" on transaction bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db, error: Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
I am using fabric 1.0, because the tutorial uses v1.0
I found these errors after using composer runtime. 2018-07-16 09:24:17.379 UTC [chaincode] Launch -> ERRO 42b launchAndWaitForRegister failed Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
2018-07-16 09:24:17.379 UTC [endorser] callChaincode -> DEBU 42c Exit
2018-07-16 09:24:17.379 UTC [endorser] simulateProposal -> ERRO 42d failed to invoke chaincode name:"lscc" on transaction bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db, error: Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
[[I am using fabric 1.0, because the tutorial uses v1.0]]
After using composer runtime and composer start. I checked the logs of one peer. I got the following 2018-07-16 09:24:17.379 UTC [chaincode] Launch -> ERRO 42b launchAndWaitForRegister failed Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
2018-07-16 09:24:17.379 UTC [endorser] callChaincode -> DEBU 42c Exit
2018-07-16 09:24:17.379 UTC [endorser] simulateProposal -> ERRO 42d failed to invoke chaincode name:"lscc" on transaction bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db, error: Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
[[I am using fabric 1.0, because the tutorial uses v1.0]]
After using composer runtime and composer start. I checked the logs of one peer. I got the following: 2018-07-16 09:24:17.379 UTC [chaincode] Launch -> ERRO 42b launchAndWaitForRegister failed Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
2018-07-16 09:24:17.379 UTC [endorser] callChaincode -> DEBU 42c Exit
2018-07-16 09:24:17.379 UTC [endorser] simulateProposal -> ERRO 42d failed to invoke chaincode name:"lscc" on transaction bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db, error: Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
[[I am using fabric 1.0, because the tutorial uses v1.0]]
After using composer runtime and composer start. I checked the logs of one peer. I got the following: 2018-07-16 09:24:17.379 UTC [chaincode] Launch -> ERRO 42b launchAndWaitForRegister failed Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
2018-07-16 09:24:17.379 UTC [endorser] callChaincode -> DEBU 42c Exit
2018-07-16 09:24:17.379 UTC [endorser] simulateProposal -> ERRO 42d failed to invoke chaincode name:"lscc" on transaction bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db, error: Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
[[I am using fabric 1.0, because the tutorial uses v1.0]]
After using composer runtime and composer start. I checked the logs of one peer. I got the following: ```
2018-07-16 09:24:17.379 UTC [chaincode] Launch -> ERRO 42b launchAndWaitForRegister failed Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
2018-07-16 09:24:17.379 UTC [endorser] callChaincode -> DEBU 42c Exit
2018-07-16 09:24:17.379 UTC [endorser] simulateProposal -> ERRO 42d failed to invoke chaincode name:"lscc" on transaction bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db, error: Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
```
[[I am using fabric 1.0, because the tutorial uses v1.0]]
After using composer runtime and composer start. I checked the logs of one peer. I got the following: ```
2018-07-16 09:24:17.379 UTC [chaincode] Launch -> ERRO 42b launchAndWaitForRegister failed Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
2018-07-16 09:24:17.379 UTC [endorser] callChaincode -> DEBU 42c Exit
2018-07-16 09:24:17.379 UTC [endorser] simulateProposal -> ERRO 42d failed to invoke chaincode name:"lscc" on transaction bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db, error: Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
```
[[I am using fabric 1.0, because the tutorial uses v1.0:sweat_smile:]]
After using composer runtime and composer start. I checked the logs of one peer. I got the following: ```
2018-07-16 09:24:17.379 UTC [chaincode] Launch -> ERRO 42b launchAndWaitForRegister failed Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
2018-07-16 09:24:17.379 UTC [endorser] callChaincode -> DEBU 42c Exit
2018-07-16 09:24:17.379 UTC [endorser] simulateProposal -> ERRO 42d failed to invoke chaincode name:"lscc" on transaction bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db, error: Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
```
[[I am using fabric 1.0, because the tutorial uses v1.0]]
After using composer runtime and composer start. I checked the logs of one peer. I got the following: ```
2018-07-16 09:24:17.379 UTC [chaincode] Launch -> ERRO 42b launchAndWaitForRegister failed Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
2018-07-16 09:24:17.379 UTC [endorser] callChaincode -> DEBU 42c Exit
2018-07-16 09:24:17.379 UTC [endorser] simulateProposal -> ERRO 42d failed to invoke chaincode name:"lscc" on transaction bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db, error: Timeout expired while starting chaincode tutorial-network:0.16.6(networkid:dev,peerid:peer0.org1.example.com,tx:bbe612eeb4233992484b0017cc29da88086a326d91adb064104508431e3cc3db)
```
[[I am using fabric 1.0, because the tutorial uses v1.0]]
Has joined the channel.
@prmdmshra you could [possibly] use Enums with onechar prefix followed by numeric appends? Not sure of your use case. That issue is currently closed.
Has joined the channel.
Hello everyone. Can anyone point me to an example app that creates a Composer network using typescript? I am having trouble getting an app compiled with typescript to run in the composer-playground.
Hello everyone. Can anyone point me to an example app that creates a Composer network using typescript? I am having trouble getting an app compiled with typescript to run in the composer-playground.
Hello everyone. Can anyone point me to an example app that creates a Composer network using typescript? I am having trouble getting an app compiled with typescript to run in the composer-playground.
token
I'd appreciate some help with the access_token: I'm using composer rest server in multi user mode. After authenticating in the server using twitter I redirect the user to a client app. The problem is that after succesful authentication I cannot see the access token from my client app so I can't store it to use it in future calls. How do I get it? Thanks!!!
I followed and executed all the steps from https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine for running a peer in different host, but when i start the composer network i get the below error
Processing these Network Admins:
userName: admin
:heavy_multiplication_x: Starting business network definition. This may take a minute…
Error: Error trying to start business network. Error: “orderer” request parameter is missing and there are no orderers defined on this channel in the network configuration
Command failed
my orderer.log: https://gist.github.com/prtk418/5fb4788a6afa340f17a9eecfa865a92d#file-orderer-log
my orderer.log: https://gist.github.com/prtk418/5fb4788a6afa340f17a9eecfa865a92d#file-orderer-log
my orderer.log: https://gist.github.com/prtk418/5fb4788a6afa340f17a9eecfa865a92d#file-orderer-log ```
couchdb log: https://gist.github.com/prtk418/bd22e3c5b6bb371c67d6176c53592a42#file-couchdb-log
```
my orderer.log: https://gist.github.com/prtk418/5fb4788a6afa340f17a9eecfa865a92d#file-orderer-logcouchdb log: https://gist.github.com/prtk418/bd22e3c5b6bb371c67d6176c53592a42#file-couchdb-log
my orderer.log: https://gist.github.com/prtk418/5fb4788a6afa340f17a9eecfa865a92d#file-orderer-log couchdb log: https://gist.github.com/prtk418/bd22e3c5b6bb371c67d6176c53592a42#file-couchdb-log
so i am using this `https://hyperledger.github.io/composer/latest/api/admin-adminconnection#exportcard` but the card that gets exported does not have credetials in it. it shows like
```
{ userName: 'varun',
version: 1,
enrollmentSecret: 'fd364bfe',
businessNetwork: 'tata-test-env' },
connectionProfile: { name: 'embedded', 'x-type': 'embedded' },
credentials: {} }
```
@varunagarwal I like that strategy. Thank you.
@TyroneWilson does something like [this](https://github.com/opiepj/fabric-composer-sample/blob/master/composer-client-app/src/app/net.biz.digitalAccentureNetwork.ts) help
Has joined the channel.
Does anyone know how I could access a registered participant's connection profile to find its organization and use that as participant metadata. I would like to do this in order to put restrictions in the access control file that would prevent a participant from submitting a transaction unless it was created by a specific organization
Hi all, when I run composer-rest-server, and update an asset it shows something like "id property (campaign_id) cannot be updated from 1 to 1" when i remove the campaign_id in the body data. it shows "Cannot read property 'campaign_id' of undefined". can anyone help with this??
@apaparazzi0329 would suggest to control it (within the business network ) with an organisational attribute or similar or you could derive using `currentParticipant.getFullyQualifiedIdentifier()` if your participant classes are defined accordingly
Hey guys, when I try installing local playground with this command: bash: line 1: syntax error near unexpected token `newline'
bash: line 1: `' I get this error: bash: line 1: syntax error near unexpected token `newline'
bash: line 1: `'
Hey guys, when I try installing local playground with this command:curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash
bash: line 1: `' I get this error: bash: line 1: syntax error near unexpected token `newline'
bash: line 1: `'
Hey guys, when I try installing local playground with this command:curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash
bash: line 1: `' I get this error: bash: line 1: syntax error near unexpected token `newline'
bash: line 1: `'
Hey guys, when I try installing local playground with this command:curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash
I get the error:
bash: line 1: `' I get this error: bash: line 1: syntax error near unexpected token `newline'
bash: line 1: `'
Hey guys, when I try installing local playground with this command:curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash
I get the error:
bash: line 1: `' I get this error: bash: line 1: syntax error near unexpected token `newline'
bash: line 1: `'
Hey guys, when I try installing local playground with this command:
curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash
I get the error:
bash: line 1: `' I get this error: bash: line 1: syntax error near unexpected token `newline'
bash: line 1: `'
@jonhebrews if you want to update an existing asset, just find the `PUT` REST API for the asset, enter the Identifier (1) then in the JSON section, update your remaining fields (on the asset, as you want to) in the usual JSON way
@patrick8289 are you following a tutorial? The error `` line is a DOCTYPE declaration for HTML documents, so it looks like you are fetching a web page instead of the script. Or you tried to download it from a web browser etc.
Yea I just copied and pasted the command from the tutorial, what should I do instead? @mahoney1
@patrick8289 see the docs -> https://hyperledger.github.io/composer/latest/installing/development-tools.html you can install composer playground locally as instructed.
That link is for setting up the workspace, not installing the local playground. I am following this doc: https://hyperledger.github.io/composer/v0.16/installing/using-playground-locally @mahoney1
Hello, I was wondering. If I already finished with the development of a local blockchain and want to deploy it to multiple users, how many nodes should I have or are recommended. What are the next steps I should take?
thanks in advance
Im having a rough time with the architecture of the solution when I have to deploy it as a real world solution.
I wouldn't worry about the number of nodes because hyperledger fabric randomly selects a few nodes to run its decentralized network on. The proof-of-work algorithm also wouldn't change much. I would model the number of nodes you have based on your business requirements. @cuevrob
[ ](https://chat.hyperledger.org/channel/composer?msg=bwKpyDEr5bMNGmqxL) @patrick8289 the link I sent is for installing playground too (scroll down) using npm, as well in the current release of Composer (0.19.12 for Fabric v1.1) - the link you sent is a v0.16.x link that's deprecated as indicated there (link takes you to alternative page for that older release, that's only used with Hyperledger Fabric 1.0)
[ ](https://chat.hyperledger.org/channel/composer?msg=bwKpyDEr5bMNGmqxL) @patrick8289 the link I sent is for installing playground too (scroll down) using npm, as well - in the current release of Composer (0.19.12 for Fabric v1.1) - the link you sent is a v0.16.x link that's deprecated as indicated there (link takes you to alternative page for that older release, that's only used with Hyperledger Fabric 1.0)
I see, thank you @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=Ah8eFww6xCRdNapYw) @mahoney1 i tried it @mahoney1 . I used *PUT* method. It is finely updating in composer-playground. but didnt work in composer-rest-server. I cant able to update any assets. it always throws 'id property (campaign_id) cannot be updated from 1 to 1(or anyother number) . when i googled it . I found this github issue https://github.com/hyperledger/composer/issues/1785 - This exact error is happening to me.
[ ](https://chat.hyperledger.org/channel/composer?msg=Ah8eFww6xCRdNapYw) @mahoney1 i tried it @mahoney1 . I used *PUT* method. It is finely updating in composer-playground. but didnt work in composer-rest-server. I can able to update participants and other types. only assets updation throws me this kind of error. 'id property (campaign_id) cannot be updated from 1 to 1(or anyother number) . when i googled it . I found this github issue https://github.com/hyperledger/composer/issues/1785 - This exact error is happening to me.
Has joined the channel.
Has joined the channel.
@patrick8289 https://chaincodedevs.com/showthread.php?tid=3 For installing Composer Playground on Linux.
When running the composer-rest-server in multi user mode, is every time a user authenticated a new participant made? How would I specify which type of participant is created?
I've done the collectable-penguin-demo setup but the issue is that it requires one composer-rest-server to be running in single user mode, so only one user is able to log in and create users.
@mahoney1
I have the composer-rest-server running in multi user mode. After authenticating and trying to make a request from the API, I get "Error: A business network card has not been specified" have googled but it seems no one else has ran into this error.
Has joined the channel.
@ronaldlong46 , the issued participant card has to be imported into wallet endpoint, then perform an action on other services
@pravn1729 Does the participant card get issued when they are authenticated with Google OAuth (in this example)?
No. Generally this authentication we do is for user onboarding and they are tied to the cards only when we import them
@pravn1729 Is there a way to automatically create the participant card when a user is authenticated? I tried using the collectable-penguin-demo multi user example but it still requires user participants to be manually created.
I am basically trying to create a user system with this. Or would it be easier to just create a separate node server with Passport.js and integrate it with the composer-rest-server API?
We should do it manually if we are using composer-rest-server or we should write a wrapper for composer-rest-server where after authenticating, composer API's can be used to create participant cards and then the wallet import can be called
We should do it manually if we are using composer-rest-server or we should write a wrapper for composer-rest-server where after authenticating, composer API's can be used to create participant cards and then the wallet import can be called
Hmm... do you know of any example where someone has successfully done this?
Like on github or what not?
No. but you can have a look at this reference https://hyperledger.github.io/composer/latest/reference/composer.identity.issue.html
@pravn1729 Awesome, I'll read more into that link. Thanks!
Or with system endpoint we could issue an identity and download the code
download the card* . https://github.com/hyperledger/composer/wiki/REST-Server
*Now issue a new Identity (POST /System/identities/issue) using the participant we just created* in the link forwarded above
I have {"include": "resolve"} in query on composer-rest-server, that show me every relation, can i decide what relation show?
i try without luck:
```
{
"include": {
"relation": "user",
"scope": {
"fields": [
"firstName",
"lastName"
]
}
}
}
```
@pravn1729 I'm trying to do a GET request on the wallet to ensure there aren't any cards. But it gives me a 401 authorization error. But I've already went through the google auth step.
Has joined the channel.
I've on my 6th hour but I recently "upgraded" from the Beta to the Enterprise edition and am trying to redeploy my networks. I can deploy the network fine, and I can interact with the network but when ever I try to make a new identity through Composer or Playground I get the following error
Error: fabric-ca request register failed with errors [[{"code":0,"message":"Registration of 'NewUser' failed in affiliation validation: : scode: 401, local code: 44, local msg: Caller does not have authority to act on affiliation 'org1', remote code: 20, remote msg: Authorization failure"}]]
Has joined the channel.
hello guys
I want to know how to get the size of transaction
to adjust block size
Hai
I create the Business network and Angular project folder successfully by using yo hyperledger-composer cmd after the commend execution the list show the four options in that option list what is the use of the Loopback and Model
Hi.. I'm just a beginner in bapp development . I was being followed this official tutorial : https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial . Its working well. In this tutorial i got to see a new image is being created in docker container with a name similar to dev-peer0.org1.example.com-tutorial-network-0.0.1-6695b9314667cc296171c0da511644e9011aa9a3ba0f6e759aca9e32e458803c. But after reboot i'm not able to use the image for further development. How can i use that image for further develpement. I would really thankful if i get help in it.
npm link @angular/cli
trying not to break composer angular install but cannot run ng generator commands - will npm link do the trick?
@BabuPallam , For having the same network further, when you stop the fabric network do a *docker-compose stop* and when restarting the current network start all the dangling containers *docker ps -q -a | xargs docker start*.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi all, I am new to fabric. I would like to know what are the major impact doing project with `composer` and `without composer'?
Can we put a whole file on blockchain using composer ?
@steynsawan hello
hello guys ....plz help me as i m new to hyperledger composer .... i need to send a pdf from one participant to another .
Guys I am integrating JWT authentication. First execute export COMPOSER_PROVIDERS='{
"jwt": {
"provider": "jwt",
"module": "passport-empty",
"secretOrKey": "tasmanianDevil",
"authScheme": "saml",
"successRedirect": "/",
"failureRedirect": "/"
}
}' while trying to access http://localhost:3000/auth/jwt/callback getting below error.
{"error":{"statusCode":404,"name":"Error","message":"Cannot GET /auth/jwt/callback","status":404,"stack":"Error: Cannot GET /auth/jwt/callback\n at raiseUrlNotFoundError (/usr/local/lib/node_modules/composer-rest-server/node_modules/loopback/server/middleware/url-not-found.js:21:17)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at trim_prefix (/usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7\n at Function.process_params (/usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)\n at next (/usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:635:15\n at next (/usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:260:14)\n at Function.handle (/usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:174:3)\n at router (/usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:47:12)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at trim_prefix (/usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)\n at /usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7\n at Function.process_params (/usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)\n at next (/usr/local/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)\n at urlencodedParser (/usr/local/lib/node_modules/composer-rest-server/node_modules/body-parser/lib/types/urlencoded.js:91:7)"}}
Please tell what is I am missing
Please tell what I am missing?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZMnA9QvWcAQymHpyZ) @pravn1729 Thank you . command is working:thumbsup:
[ ](https://chat.hyperledger.org/channel/composer?msg=asdDQ57E783wE6kf3) @w4721x With basic functions we can even send a image among nodes. I think its possible by adding IPFS or similar kind of APIs in your application. but sorry if it is wrong.
hi Guys
I reinstalled one new Ubuntu 16.04 LTS and did the composer setup as a non root user behind proxy
still get the same error
frogman@dev01:~/fabric-dev-servers$ composer network install --card PeerAdmin@hlfv1 --archiveFile /home/frogman/carauction-network.bna -o npmrcFile=/home/frogman/.npmrc
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
composer network install --card PeerAdmin@hlfv1 --archiveFile /home/frogman/carauction-network.bna -o npmrcFile=/home/frogman/.npmrc
frogman@dev01:~/fabric-dev-servers$ cat /home/frogman/.npmrc
http_proxy=http://10.12.100.13:8080/
https-proxy=http://10.12.100.13:8080/
user=0
unsafe-perm=true
registry=http://registry.npmjs.org/
strict-ssl=false
no_proxy=172.18.0.2,172.18.0.3,172.18.0.4,172.18.0.5,172.18.0.1,localhost
I think I have an issue that the docker images cannot talk to each other and get blocked/filtered trough proxy , although should not
any help apprecaited
Could you please suggest how would I query in Queries file for a attribute value which is within a Concept of Asset properties (I tried with dot but it does'nt work)
query sampleQuery {
description: "Select all Applications based on form"
statement:
SELECT org.testing.form
WHERE ((entryType==$entryType) AND (Details.Area==$actionArea)
}
Has joined the channel.
help.. I am following this tutorial and trying to make on composer
my .cto file is
namespace test
asset Account identified by accountId {
o String accountId
--> Customer owner
o Double balance
}
participant Customer identified by customerId {
o String customerId
o String firstName
o String lastName
}
transaction AccountTransfer {
--> Account from
--> Account to
o Double amount
}
my script.js is
/**
* Sample transaction
* @param {test.AccountTransfer} accountTransfer
* @transaction
*/
function accountTransfer(accountTransfer) {
if (accountTransfer.from.balance < accountTransfer.to.balance) {
throw new Error ("Insufficient funds");
}
accountTransfer.from.balance -= accountTransfer.amount;
accountTransfer.to.balance += accountTransfer.amount;
return getAssetRegistry('test.Account')
.then (function (assetRegistry) {
return assetRegistry.update(accountTransfer.from);
})
.then (function () {
return getAssetRegistry('test.Account');
})
.then(function (assetRegistry) {
return assetRegistry.update(accountTransfer.to);
});
}
when I am trying to make a transaction it's giving me:
Error: attempt to get property balance on an InvalidRelationship is not allowed.
my .cto file is
```namespace test
asset Account identified by accountId {
o String accountId
--> Customer owner
o Double balance
}
participant Customer identified by customerId {
o String customerId
o String firstName
o String lastName
}
transaction AccountTransfer {
--> Account from
--> Account to
o Double amount
}```
my script.js is
```/**
* Sample transaction
* @param {test.AccountTransfer} accountTransfer
* @transaction
*/
function accountTransfer(accountTransfer) {
if (accountTransfer.from.balance < accountTransfer.to.balance) {
throw new Error ("Insufficient funds");
}
accountTransfer.from.balance -= accountTransfer.amount;
accountTransfer.to.balance += accountTransfer.amount;
return getAssetRegistry('test.Account')
.then (function (assetRegistry) {
return assetRegistry.update(accountTransfer.from);
})
.then (function () {
return getAssetRegistry('test.Account');
})
.then(function (assetRegistry) {
return assetRegistry.update(accountTransfer.to);
});
}```
when I am trying to make a transaction it's giving me:
`Error: attempt to get property balance on an InvalidRelationship is not allowed. `
How to move asset between participants ?
@steynsawan - You have to start a transaction to move the assets between participatns
okay I solved it .. I was trying to transfer between users like from user_1 to user_2. But it will be from user_1_acc to user_2_acc
sorry my bad
[ ](https://chat.hyperledger.org/channel/composer?msg=wd7MCzAhbHFK9ycWy) @Zeljko Milinovic Can you please write a small script to help me with that.
[ ](https://chat.hyperledger.org/channel/composer?msg=de48c985-6d35-4820-80fc-1999759067d9) I need to transfer information from one company to other.
Hello ! I don't really understand the difference between peers and organizations. So, i don't know if i have to deploy my network on multi-org or multi-peers.. Someone can explain me ?
Has joined the channel.
multi org multi peer
@Pooney
Good Morning
Depends if you want to have more then one organization in your blockchain
and if you want to have redundancy
@ThomasBereczky Hello. Precisely i don't know if i need several organization or just several peer...
The goal of my network is to manage children vaccines. Parent will look vaccines done or to do for their children, doctor will declare new vaccination for their patients. What do you think ?
[ ](https://chat.hyperledger.org/channel/composer?msg=zQErypD49MAj4tFHo) @Poneey First of all, you need to define your use case, and then, find if Hyperledger kind of nets can help you. A network is composed by several organizations that communicate with each other. Then, peers belong to rganizations.
well several peers
for starters
each peer will have its own machine
I guess
I think you only need one org but I am not entirely sure
You have different kind of peers, but for now, the only thing you need to know about them is stated here "A network entity that maintains a ledger and runs chaincode containers in order to perform read/write operations to the ledger. Peers are owned and maintained by members." (https://bmos299-fabric.readthedocs.io/en/readthedocs/glossary.html?highlight=peer#peer)
depends on what you need
Organization is just a group of peer ? Is it peers who valid (or not) a transaction ?
@Poneey Composer is a bit particular (at least nowadays), and looking at your use case, you should define Participants (children and doctors), who are actually like users. And that's agnostic from peers and organizations (from my point of view)
[ ](https://chat.hyperledger.org/channel/composer?msg=oHcvDFZLnhhvJt3t2) @Poneey Let's imagine an example
Imagine that you have a carrot distributor, and you have some supermarkets you do deals with.
you, and the supermarkets are organizations. And those will maintain at least one peer each.
if you need to add security and redundancy to the network, you will have more peers, as peers are in charge to maintain the ledger and execute the transactions
so each supermarkets will have several peers to garantie security ?
If you have more specific questions you can start from the [readthedocs](https://hyperledger-fabric.readthedocs.io/en/release-1.2/) or in the #fabric-questions channel
[ ](https://chat.hyperledger.org/channel/composer?msg=wvtPaFHvC9xDwNu2K) @Poneey yes
@gut @ThomasBereczky , thanks for your answers. Just a last question : in all texts about blockchain, it talks about mineur, in this case who are mineurs ? Peers, that's right?
Hi, I have created a composer application and installed it on to fabric network. I am able to create assets and participants whereas when i am trying to execute a transaction I am getting error saying unable to execute chain code. Could not find function to execute. Composer application which i created is a custom one. I am follwng this tutorial https://hyperledger.github.io/composer/v0.16/tutorials/developer-tutorial.html
Custom local bna has been created which actually doesnt contains the js for logics and i added a new file. Which i moved under lib folder. But while packaging using composer archive create -t dir -n .
that tutorial seems outdated judging by the link
Hey @rajanashutosh
@ThomasBereczky okie. So has there a change in packaging ? coz i feel its issue with packaging due to which JS file with logic is not being identifiied
did you edit your chaincode or using a sample one?
i created a new one and not editing
I am unsure I started using it on 0.19
yo hyperledger-composer:businessnetwork this command generates the skeleton but it doesn't generate logic.js or chaincode js file
so i have added it manually
yeahhh
hmm
let me generate one on my end
and send it to you
okie, Is there any change which we might need to do in package.json ?
firstbna.zip
it does generate all js for me
lib/logic.js
okie
Thomass-MacBook-Air:tesst thomas$ composer --version
v0.19.12
yes its 0.19.10
@rajanashutosh it will generate if you select no generate a populated sample network
ok
when its asks for "Do you want to generate an empty template network? "
i created an empty project
empty project doesnt contain logic.js file, so if in case i need to add it manually how to make composer identify that this is my logic file ?
Screen Shot 2018-07-17 at 10.56.10.png
if you select no, then it will contain some sample code
yes, thanks for this. but how to do same with empty template
What i found is while packaging, logic js file is not considered for bna file creation if logic.js file is not in folder lib. It just excludes
@steynsawan see sample 'trade' transaction in
@steynsawan see sample 'trade' transaction in Composer sample networks -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js - shows the transfer of ownership of a commodity (asset) from one Trader participant to another
[ ](https://chat.hyperledger.org/channel/composer?msg=nPCAPSp43A2g7MWZr) @rajanashutosh just put the .js filel (doesn't have to be called `logic.js` fyi) in `/lib` subdirectory of your project folder
[ ](https://chat.hyperledger.org/channel/composer?msg=nPCAPSp43A2g7MWZr) @rajanashutosh just put the .js file (doesn't have to be called `logic.js` fyi) in `/lib` subdirectory of your project folder
[ ](https://chat.hyperledger.org/channel/composer?msg=wvtPaFHvC9xDwNu2K) @Poneey supermarkets are member organisations in the blockchain network (in your example) - see Fabric docs for more info -> https://hyperledger-fabric.readthedocs.io/en/release-1.2/whatis.html and concepts here -> https://hyperledger-fabric.readthedocs.io/en/release-1.2/key_concepts.html?highlight=concepts and architecture reference info here -> https://hyperledger-fabric.readthedocs.io/en/release-1.2/architecture.html
we are using fabric 1.1 and composer v 0.19.5.. We are writing an web socket client which listens to incoming events from bna. We have enabled authentication and authorisation for the composer rest server ( we get Authorization required error when we try any of the rest endpoints). However, in case of web socket, no authorisation is enforced.
all events seem to be visible to anyone with the URL
is this a bug??
@dhruvrana your real problem is probably 'how' you're specifying *one* of the Accounts (from or to) in your transaction submission - eg. should be ```{
"$class": "org.acme.trading.AccountTransfer",
"from": "resource:org.acme.trading.Account#1",
"to": "resource:org.acme.trading.Account#2",
"amount": 10
}``` (that section of code works for me)
@dhruvrana fyi you can also do an updateAll - eg ```/**
* Sample transaction
* @param {org.acme.trading.AccountTransfer} accountTransfer
* @transaction
*/
function accountTransfer(accountTransfer) {
if (accountTransfer.from.balance < accountTransfer.to.balance) {
throw new Error ("Insufficient funds");
}
accountTransfer.from.balance -= accountTransfer.amount;
accountTransfer.to.balance += accountTransfer.amount;
return getAssetRegistry('org.acme.trading.Account')
.then (function (assetRegistry) {
return assetRegistry.updateAll([accountTransfer.from, accountTransfer.to]);
});
}```
@mahoney1 do you have any insights into the problem I asked above?
@koineramitranjan use wss instead of ws - see more on answers 2 and 3 here -> https://stackoverflow.com/questions/31564432/websocket-security
error: [Channel.js]: Failed Instantiated Chaincodes Query. Error: Error: Failed to connect before the deadline
at checkState (/home/sudheer/Desktop/bcexplorer/backend_blockchainexplorerfabric/node_modules/grpc/src/client.js:838:16)
error: [Remote.js]: Error: Failed to connect before the deadline
[ ](https://chat.hyperledger.org/channel/composer?msg=nKhMtKa9p8tJiNsEk) I am using node modules to run fabric-node-sdk and I am getting the error
I recently "upgraded" from the Beta to the Enterprise edition on the IBM platform and am trying to redeploy my networks. I can deploy the network fine, and I can interact with the network but when ever I try to make a new identity through Composer or Playground I get the following error
Error: fabric-ca request register failed with errors [[{"code":0,"message":"Registration of 'NewUser' failed in affiliation validation: : scode: 401, local code: 44, local msg: Caller does not have authority to act on affiliation 'org1', remote code: 20, remote msg: Authorization failure"}]]
This is with the Admin identity created on deployment
querying multiple assets in a single query function.
example:
I have two different assets . I have a common attribute in both. can i query and return these two assets based on this common attribute ( in a single query ).
@vudathasaiomkar 90% sure if their two assets that share nothing but one attribute that is a no. If their the same class then yes.
hey can anyone help me with ACL ?
I created users, they cannot submit transactions other admin nobody can submit transactions
this is my ACL
```
```
```
rule Issuer {
description: "Allow full access to the issuer of a bond"
participant(i): "org.whatsloan.file.User"
operation: ALL
resource(a): "org.whatsloan.file.File"
transaction(tx): "org.whatsloan.file.shareFile"
condition: (a.owner.getIdentifier() == i.getIdentifier())
action: ALLOW
}
rule ParticipantSeesOwnHistoryOnly {
description: "See history of their own transactions only"
participant(t): "org.whatsloan.file.User"
operation: READ
resource(v): "org.hyperledger.composer.system.HistorianRecord"
condition: (v.participantInvoking.getIdentifier() != t.getIdentifier())
action: DENY
}
rule UserCanSeeHisAssets {
description: "Description of the ACL rule"
participant(m): "org.whatsloan.file.User"
operation: ALL
resource(v): "org.whatsloan.file.File"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}
rule UserCanSeeHisAccount {
description: "Description of the ACL rule"
participant(m): "org.whatsloan.file.User"
operation: ALL
resource(v): "org.whatsloan.file.User"
condition: (v.getIdentifier() == m.getIdentifier())
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
@vudathasaiomkar I believe this is not supported in the query language and is partly why they recently introduced readonly transactions that return data. see here: https://hyperledger.github.io/composer/latest/reference/js_scripts
@SudheerKaspa that's an Explorer issue - this may help -> https://stackoverflow.com/questions/47378943/blockchain-explorer-fails-to-query-installed-chaincodes-hyperledger-fabric or ask on #hyperledger-explorer
@dhruvrana You have not given anyone permission to perform the transaction. What transaction function are you running
@dhruvrana Once you provide the name of the function I can write a rule to help
My CTO File. I'm running shareFile
```
namespace org.whatsloan.file
participant User identified by userId {
o String userId
o String name
o String publicKey
}
asset File identified by fileHash {
o String fileHash
o String description optional
o String fileUrl
o String decryptionKey optional
--> User owner
o Double balance
}
transaction shareFile {
--> File from
--> File to
o Double amount
}
```
@Ladar
@vudathasaiomkar two different asset registries each having common attribute? you would query both registries - there is no JOIN facility (like SQL etc)
rule UserCanRunTrans {
description: "Allow users to Run Transactions"
participant: "org.whatsloan.file.User"
operation: ALL
resource: "**"
transaction: "org.whatsloan.file.shareFile"
action: ALLOW
}
I think
@dhruvrana
okay running
@Ladar Thanks alot. It worked
I was stuck for way too much time on this.
Thanks for your time ^_^
@dhruvrana No problem
[ ](https://chat.hyperledger.org/channel/composer?msg=rxSAxYixJFETebuMP) @mahoney1 Thanks buddy , how you started with hyperledger ?
@steynsawan working thru the docs, samples etc
Has joined the channel.
how to pass array of objects in a transaction function??
@callmeashok It sound like you want to pass a relationship Are you doing this in ChainCode or are you sending the data as a transaction to the Blockchain
i have created a .cto transaction like `transaction(){product[] item}`
```
```
i need to access it in script.js
Hi everyone. I can’t get nyc / istanbul to show any test coverage. I always get 0%, even if i run the tests from the sample generated by ```yo hyperledger-composer:businessnetwork```
Does anyone know how to fix this ? am i the only one experiencing this issue ?
I have found that if i run the tests from ibm's developerworks samples ( composer v. 14 ) it does create a coverage report with actual percentages. https://github.com/makotogo/developerWorks/
Hi everyone. I can’t get nyc / istanbul to show any test coverage. I always get 0%, even if i run the tests from the sample generated by ```yo hyperledger-composer:businessnetwork``` .
Does anyone know how to fix this ? am i the only one experiencing this issue ?
I have found that if i run the tests from ibm's developerworks samples ( composer v. 14 ) it does create a coverage report with actual percentages. https://github.com/makotogo/developerWorks/
how do i do it
asset Object identified by ID {
o String ID
}
transaction SendMultipleObjects {
-> Object [] objects
}
@callmeashok
@callmeashok Were you just asking about the CTO or would you like more help.
Has joined the channel.
no @Ladar thanks for the help.
hi
guys
i am facing issue while running this command
composer network start --networkName tutorial-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
am facing this error
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 1 Peers. Last error was Error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
@mahoney1 I tried with your suggestion, I moved the logics to lib folder and repackaged it, but still error comes in saying error executing chaincode, could not find the functions
execute
can anyone help me
@maniyas What is your development enviroment. Are you hosting it on your own system, in a cloud provider, etc
my own system @Ladar
Checking against my code fragments... one moment.
@Ladar okay
Okay just to confirm that simple stuff you have already installed he BNA file @maniyas
i just follow this tutorial
https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html
can you check this one correct
Checking now
@Ladar ok thanks
@maniyas Okay if you can go back through your terminal did the line "composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna" work
If you run it again it should give you an error that it's already installed
yes
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
i need to re-install again??
Maybe...
Right now it say it can't connect to the Node
So I have to ask is your development enviroment working properly.
development environment means...asking about?
New network is generated at which path in our local system ?
am working in local environment
@maniyas Basically at the point you might have to make sure this tutorial is working (https://hyperledger.github.io/composer/latest/installing/development-tools.html)
Cause it sound like your development enviroment isn't being connected to for the error messages.
@w4721x Need more information
@Ladar : will check and come back to you
If i create a new business network in Hyperledger composer then (Project folder or directory) where is it generated if i am running composer locally at localhost:8080/login ?
@Ladar
Bcoz i like to use VS Code as my default editor
@w4721x If you create it on the Node (I.E. connection to either a development enviroment or external node) it will be stored in the directory of the running instance, if you store it in memory, I believe it will be stored in your browser memory.
@w4721x If you want to use an external editor I suggest using Yo to generate the skeleton of the project, edit it in VS Code, create an archive and then upload the archive using composer-playground
ok sure ...Thank You @Ladar .
@w4721x yo hyperledger-composer should give you a skeleton to work with.
yo hyperledger-composer:businessnetwork will give you a scratch on to play with
@Ladar its shows error only
@maniyas you sure docker is running?
@Ladar composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
@lassejarlstrom yes its running
Hi , why composer-rest-server through this error while running time - throw er; // Unhandled 'error' event
Error: invalid status code: 63100
Hello ! I'm trying to deploy my network on two peers. I followed this tutorial : https://medium.com/hyperlegendary/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-bfbe4e38b6c6
Fabric works fine. But when i try to run "composer network start --card ..." i have this error :
Error: Error trying to start business network. Error: Error: 2 UNKNOWN: Failed to deserialize creator identity, err MSP Org1MSP is unknown
Someone already have this error ? (Org1MSP is defined on docker-compose.yml, on startFabric.sh, ...)
Has joined the channel.
Hi everyone when i start business network my chaincode container is running on bridge network while peer is running on host network. How can i switch chaincode container on same n/w as peer using. I have use CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE setting on peer but it's not working. Can anyone help out
Has joined the channel.
I am having trouble accessing the property of a participant after getting it from the participantRegistry.
const participantRegistry = await getParticipantRegistry('org.example.sampleParticipant')
const currentParticipant = participantRegistry.get(participantId)
console.log(currentParticipant)
console.log(currentParticipant.property)
The first console log shows me the currentParticipant object and its "property" property however the currentParticipant.property log shows me "undefined"
Is there any reason for this?
[ ](https://chat.hyperledger.org/channel/composer?msg=BA2NxQqCTAvTpo6qG) @rajanashutosh suggest to post your question on Stack overflow - with your model, logic file(s) etc and what steps you took along with the message (sounds like your transactions don't map correctly to your TP functions - hard to tell)
MANVENDRAWAGADRE 7:38 PM
Test@ubuntu:~$ sudo curl -O https://ibm-blockchain.github.io/develop//develop/prereqs-ubuntu.sh
[sudo] password for test:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 4372 100 4372 0 0 3656 0 0:00:01 0:00:01 -::- 3658
Test@ubuntu:~$ ls
Desktop Downloads Music prereqs-ubuntu.sh Templates
Documents examples.desktop Pictures Public Videos
Test@ubuntu:~$ chmod 777 prereqs-ubuntu.sh
Test@ubuntu:~$ sudo ./prereqs-ubuntu.sh
./prereqs-ubuntu.sh: 1: ./prereqs-ubuntu.sh: cannot open !--: No such file
./prereqs-ubuntu.sh: 2: ./prereqs-ubuntu.sh: Syntax error: "(" unexpected
hi any suggestions Test@ubuntu:~$ sudo curl -O https://ibm-blockchain.github.io/develop//develop/prereqs-ubuntu.sh
[sudo] password for mits:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 4372 100 4372 0 0 3656 0 0:00:01 0:00:01 -::- 3658
Test@ubuntu:~$ ls
Desktop Downloads Music prereqs-ubuntu.sh Templates
Documents examples.desktop Pictures Public Videos
Test@ubuntu:~$ chmod 777 prereqs-ubuntu.sh
Test@ubuntu:~$ sudo ./prereqs-ubuntu.sh
./prereqs-ubuntu.sh: 1: ./prereqs-ubuntu.sh: cannot open !--: No such file
./prereqs-ubuntu.sh: 2: ./prereqs-ubuntu.sh: Syntax error: "(" unexpected
any suggeations plz unable to instal prereq
[ ](https://chat.hyperledger.org/channel/composer?msg=TPKqwmbx2zxvERLfK) @sudhir.kumawat If you use Kitematic you can change what network your containers are on with a nice gui. Don't know if that will help in this situation but worth a try I suppose
@MANVENDRAWAGADRE this is the #composer channel - but can suggest to go to https://www.ibm.com/blockchain/getting-started and get started there (the script you're pulling gives a 404 and hence it's give you web page content and not the curl-ed script etc)
@MANVENDRAWAGADRE this is the #composer channel - but can suggest to go to https://www.ibm.com/blockchain/getting-started and get started there (the script you're pulling gives a 404 and hence it's give you web page content and not the `curl-ed` prereqs script etc)
[ ](https://chat.hyperledger.org/channel/composer?msg=cADYek9brDm6JqEcW) @mahoney1 Thanks. i am nt getting proper link to install hyperledger some or the other giving some errors.
@apaparazzi0329 suggest to try something like ```return currentParticipant = participantRegistry.get(participantId)
.then(function(x) {
console.log("current participant is " + currentParticipant)
console.log("current participant property is " + x.firstName)
}) ``` where `firstName` is a property of that Participant type etc FYI IF - its the current participant in the TP function - you can get it like shown here -> https://hyperledger.github.io/composer/latest/business-network/programmatic-access-control instead
@apaparazzi0329 suggest to try something like ```return currentParticipant = participantRegistry.get(participantId)
.then(function(x) {
console.log("current participant is " + x)
console.log("current participant property is " + x.firstName)
}) ``` where `firstName` is a property of that Participant type etc FYI IF - its the current participant in the TP function - you can get it like shown here -> https://hyperledger.github.io/composer/latest/business-network/programmatic-access-control instead
Wow thank you @mahoney1 I didn't realize there was a getCurrentParticipant function that's exactly what I was looking for
can anybody suggets some final year projects based on hyperledger composer
@mahoney1 sure i will do that. Thanks
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=enDzGBCnSmNdmjMWw) @MANVENDRAWAGADRE This link is broken. You are getting the broken link html back. If you edit the prereqs-ubuntu.sh file you will see it is actually an html file. The documentation has been updated: https://hyperledger.github.io/composer/latest/installing/installing-prereqs with the correct command to download the script.
@mahoney1 , Did just a network list and could see that scripts section always shows up empty array
Has joined the channel.
hey guys I been having an hard time deploying an network application natively on fabric
specifically, Installing the network application to fabric
After succefully launching my fabric-network, and creating the peer admin card, I typed in the command "composer network install -a /dist/BNAFILE.bna -c PeerAdmin@hlfv1"
I get the error "
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
Redirect to Fabric channel @KoushKilla
@KoushKilla run ./startFabric.sh first
I did
1. Launch your Fabric network
> ./startFabric.sh
2.) Create the peer admin card
> ./createPeerAdminCard.sh
3.) Install the network application to fabric
> composer network install -a dist/bna.bna -c PeerAdmin@hlfv1
**This step is where I get the error**
the third steps is where the error comes into play
**Details of my env**
Node Version: v8.11.3
Docker version: 18.03
Composer version: v0.19.12
@ronaldlong46 any thoughts?
@KoushKilla check your connection.json file whether its configured properly
I had same issue and the connection.json configuration was not proper.
@mahoney1 - Its told in docs n all that Orderer is a single point of failure. So we need to have multiple orderers in our fabric network. But Composer at ths point in time supports single orderer node alone. So with this point in view how much composer applications are ready to be deployed in production ?
Hooooooooowdy ho!
hope everybody's powering through the hump day
I just have a quick question,
say, I am building a business network for storing sales records. there are only simple transactions. one of them is `insertSaleRecord` which inserts a captured sale record into HL's ledger.
Also I'd like to provide a monthly report that represents all merchants' sales within the last month and resets the value when the next month starts.
I'm thinking `state database` is the place to have the indexed data. But how should it be generated? should it have a new transaction `calculateMonthlySalesRecord` that indexes all the records within the month? but I wonder how should the transaction be fired?
I just have a quick question,
say, I am building a business network for storing sales transactions. there are only simple transactions. one of them is `insertSaleRecord` which inserts a captured sale record into HL's ledger.
Also I'd like to provide a monthly report that represents all merchants' sales within the last month and resets the value when the next month starts.
I'm thinking `state database` is the place to have the indexed data. But how should it be generated? should it have a new transaction `calculateMonthlySalesRecord` that indexes all the records within the month? but I wonder how should the transaction be fired?
One more question, if I have IoT Devices that I want to push data to Hyperledger, should it be considered as `participant`? or should I use some sort of proxy that pushes data into ledger?
We are using JavaScript or typescript in composer ?
hi,
which one do you prefer authentication Hyperledger Composer Multiple user mode for REST? JWT,githup,google? i am development on localhost machine.
Has joined the channel.
If we are writing a typescript in .js file then why can't the extension of logic file be .ts?
am facing error on hyperledger composer installation
can anyone assit me
can anyone assist me
@maniyas what's your error message?
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
while running this cmd
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
mmm..
i correct it @howdyeyey ...thanks for your response
good work @maniyas ...
do you mind sharing the fix?
sure @howdyeyey
Has joined the channel.
Just destroy the previous setup by using this commands
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
then start the peer admin card by using following cmd:
cd ~/fabric-dev-servers
./startFabric.sh
./createPeerAdminCard.sh
its works fine
thanks @lassejarlstrom too:thumbsup:
Hi everyone, I want to install fabric v1.2, Which version of composer is compatible with it?
Has joined the channel.
Has joined the channel.
anyone else getting `Error: could not get any sample networks.` on bluemix hyperledger composer ?
Hello ! I have this error when i try to start network : Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)
Any idea ?
Anyone ? [ ](https://chat.hyperledger.org/channel/composer?msg=3QBR44aDz9cTbXgmr)
Anyone getting test coverage from the sample code that hyperledger-composer creates? [ ](https://chat.hyperledger.org/channel/composer?msg=3QBR44aDz9cTbXgmr)
ubuntu@ip-10-0-0-246:~/work$ composer network ping -c admin@funds-network
Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: premature execution - chaincode (funds-network:0.0.4) is being launched
Command failed
anyone has some clue on this error?
[ ](https://chat.hyperledger.org/channel/composer?msg=9rJeTwc2L6pKxo9Jv) @wangdong Did you do a `composer network start` immediately prior to that? Can be seen when the business network is being starte for first time. The start does a quite a bit of initial work, like: building and starting new Docker containers to host the business network chaincode you're instantiating, so can take a little time depending on the system - longer explanation here (accepted answer on this page) -> https://developer.ibm.com/answers/questions/441724/unable-to-add-new-participants-to-a-deployed-busin.html
[ ](https://chat.hyperledger.org/channel/composer?msg=2DbCxj5S2M5XnwLdc) @choco_coder Composer (current 0.19.12) supports 1.1 presently, support for 1.2 is not released yet, will let you know here.
[ ](https://chat.hyperledger.org/channel/composer?msg=2DbCxj5S2M5XnwLdc) @choco_coder Composer (current 0.19.12) supports 1.1 presently, support for 1.2 is not released yet, will let you know here / on [release notes](https://github.com/hyperledger/composer/releases) page
@mahoney1 great. THanks. I will read this first.
@lassejarlstrom - see 'Creating Unit Tests' on this page -> https://hyperledger.github.io/composer/latest/business-network/testing the link there (to sample networks) may help you
@mahoney1 thanks
@Poneey - suggest to raise Stack Overflow (with Fabric / Composer versions used) - including the info outlined [here](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#issue) and the steps you took to reach that point: have you installed/started any previous BNAs to the same Fabric network ; Unknown chaincodeType is unusual . you could also check the peer logs using docker logs
Hey Hyperledgers!
I have started fabric network with 1 organization having 7 peers
All transactions are happening just fine
But when i had a look at hyperledger explorer to visualize, i see only 1 node
I am not sure whats the reason!
Has joined the channel.
@mahoney1 I just change config to start my network on two peers. And i deleted all containers, images ... to be sure not have old network
On peer logs i just have "2018-07-18 09:12:27.508 UTC [endorser] ProcessProposal -> ERRO 3ba simulateProposal() resulted in chaincode response status 500 for txid: a701......."
Clipboard - July 18, 2018 5:31 PM
peers.jpg
Hi All, I would like to have some opinion on this one. For a production grade application which would have millions of request per day which option should be opted. Going with chaincode installation directly into fabric network as it allows multiple orderers or composer which under current circumstances allows only one orderer.
@mahoney1 in fact, if I change startFabric.sh I have have this error :
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Error: 2 UNKNOWN: Failed to deserialize creator identity, err MSP Org1MSP is unknown
Command failed
I don't know which error is "the best" (which version of startFabric to keep)
@Poneey check the file configtx.yaml
@Poneey I don't know how your custom Fabric is set up, but I assume you've done a network install on ALL peers firdt and updated any relevant endorsement policy (if applied) and configured your business network cards accordingly etc.
@Poneey I don't know how your custom Fabric is set up, but I assume you've done a network install on ALL peers first, and updated any relevant endorsement policy (if applied) and configured your business network cards accordingly etc.
@mahoney1 i followed this tutorial https://medium.com/hyperlegendary/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-bfbe4e38b6c6 (with only one organization and 2 peers) and then i tried to launch network like i did before
@MariaMoreno98 yes but check what ?
Has joined the channel.
@MariaMoreno98 best to ask on #explorer for an answer :-)
@Poneey that tutorial looks like its using old connection (0.16.x) profiles not the current (0.19.x) ones and as shown here -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org but obviously multiple peers etc in your case. Also you need to first ensure that sample chaincode can be deployed/invoked/ in your fabric network spanning physical machines to prove its all configured ok. - he also choose to adapt the Dev scripts (eg startFabric, createPeerAdmin scripts which was originally intended for the single peer Dev environment)
@Poneey that tutorial looks like its using an old connection (0.16.x) profiles not the current (0.19.x) ones and as shown here -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org but obviously multiple peers etc in your case. Also you need to first ensure that sample chaincode can be deployed/invoked/ in your fabric network spanning physical machines to prove its all configured ok. - he also choose to adapt the Dev scripts (eg startFabric, createPeerAdmin scripts which was originally intended for the single peer Dev environment)
I am getting following error:
```Error: Error trying invoke business network. Error: Peer 72.33.20.68:11051 has rejected transaction 'e6e85ee9cc5fcd814d6ed01532034d3ef271ee7d2fac01658241b4206596ae53' with code PHANTOM_READ_CONFLICT
at _initializeChannel.then.then.then.then.catch (/var/www/test/backend/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:967:34)
at
hi everyone i want to change network mode from bridge(default) to host in chaincode containers spin up through composer network start command.Anyone can help out. This is the specific case where mode is not changing. however i am able to change network mode of those chaincode containers which are instantiate with peer chaincode instantiate command
Has joined the channel.
@Varun2887 clearly a transaction validation error (Fabric) -> what activities did you perform to encounter this: a query or something while other updates in progress or something like that?
Hi everyone, i have deployed composer on multiple host and installed and started business network on it. It is working fine. But i have a question regarding *composer-rest-server*. If i start it on one pc or machine, how can i prevent another machine from accessing it via its ip address. Do i need to enable authentication or multi user mode or both for this. I want each machine to use locally deployed composer-rest-server and not access composer-rest-server deployed on other machines. TIA.
hi everyone , i want to list the transaction done by current user only. how to config the acl. It show all transactions.
https://hyperledger.github.io/composer/latest/tutorials/acl-trading , scroll down to rule 3, maybe that will help ?
@callmeashok https://hyperledger.github.io/composer/latest/tutorials/acl-trading , scroll down to rule 3, maybe that will help ?
@mahoney1 oh ok, i didn't find tutorials for the current version ...
@saeedi you could have a uniform hostname for the REST server name that resolves to a 'local' IP - the users will only know/see the resolved hostname's / local IP address and not know the IPs of other REST servers (if they did discover, you could use network rules for URLs to prevent access)
@callmeashok see the ACL tutorial https://hyperledger.github.io/composer/latest/tutorials/acl-trading in particular Rule 3 in that tutorial for an example
@callmeashok see the ACL tutorial https://hyperledger.github.io/composer/latest/tutorials/acl-trading as an example - in particular Rule 3 in that tutorial for an example
thank you @lassejarlstrom
is it possible to see the ledger database for application that is developed in composer
Hello EveryOne, I am trying to implement permissions in multi-user mode on composer and for that my ACL file looks like:
`rule R1 {
description: "..."
participant(p): "org.example.SampleParticipantOne"
operation: ALL
resource(d): "org.example.SampleParticipantThree" // resource is of participant type
condition: (p.sampleRelation.getIdentifier() === d.sampleRelation.getIdentifier())
action: ALLOW
}
rule R2 {
description: "..."
participant(p): "org.example.SampleParticipantOne"
operation: ALL
resource(d): "org.example.SampleParticipantThree"
condition: (!(p.sampleRelation.getIdentifier() === d.sampleRelation.getIdentifier()))
action: DENY
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule AllowAll {
description: "..."
participant: "org.example.**"
operation: ALL
resource: "org.example.**"
action: ALLOW
}`
and underlying models look like:
`namespace org.example
participant SampleParticipantOne identified by id {
o String id
--> SampleParticipantTwo sampleRelation
o string someMoreFields
}
participant SampleParticipantTwo identified by id {
o String id
o string someMoreFields
}
participant SampleParticipantThree identified by id {
o String id
--> SampleParticipantTwo sampleRelation
o string someMoreFields
}`
but when I try to get SampleParticipantThree while i carry SampleParticipantOne card, it returns me empty array and docker logs of peer show error something like:
`ERROR :AccessController :checkRule() Error: Cyclic ACL Rule detected, rule condition is invoking the same rule`
can somebody help me with this?
Hi guys , in my local hyper-ledger composer deploy changes not visible ,please help me to resovel this
Hi guys , in my local hyper-ledger composer deploy changes not visible ,please help me to reslove
@amritsharma did you try without rule "AllowAll" ? I don't really understand why you add this rule
@Mahadream What did you mean ? You change some information on your network definition but it didn't change when you have deployed your network again ?
@Poneey : Nope, in my local composer-playground tool not have the deploy changes options , its not visible
@Poneey I added that rule so that rest of the participants have permission to all resources to perform any operation but as this rule is at bottom so, while executing above rule will be matched and subsequent rules will be ignored. so I think this won't cause a problem in any case but surely I'll try that. thanks for the solution
@Mahadream Ah, you can't click on the button, it's unabled ? I think it's because you have an error on your code
@amritsharma this is very strange :
`rule R1 {
description: "..."
participant(p): "org.example.SampleParticipantOne"
operation: ALL
resource(d): "org.example.SampleParticipantThree" // resource is of participant type
condition: (p.sampleRelation.getIdentifier() === d.sampleRelation.getIdentifier())
action: ALLOW
}
rule R2 {
description: "..."
participant(p): "org.example.SampleParticipantOne"
operation: ALL
resource(d): "org.example.SampleParticipantThree"
condition: (!(p.sampleRelation.getIdentifier() === d.sampleRelation.getIdentifier()))
action: DENY
}
You define exactly the contrary ...
By default, all is "deny" so you don't need to specify the rules 2
hi all , iam trying to deploy the composer chaincode through `composer network start ` command , but i got error as ` REsponse from attempted peer comms was an error: Error: REQUEST_TIMEOUT`
docker images for the chaincode is created , and in chaincode logs i got ```>start-network "--peer.address" "peer0.org2.example.com:7052"
running start.js
syntaxError:unexpected token :```
hi all , iam trying to deploy the composer chaincode through `composer network start ` command , but i got error as ` REsponse from attempted peer comms was an error: Error: REQUEST_TIMEOUT`
docker images for the chaincode is created , and in chaincode logs i got ```>start-network "--peer.address" "peer0.org2.example.com:7052"
running start.js
syntaxError:unexpected token :```
itried increasing `CORE_CHAINCODE_STARTUPTIMEOUT=1200S`
@Poneey : ok thanks, will check the code
Has joined the channel.
can anyone share with me a working link for passport-local strategy with composer-rest-server?
I am stuck
@ajay560 how did you try to deploy?
I tried passport-github, it worked..
but now I want to setup passport-local
So,
I set the Composer_providers for local strategy
started the composer rest server with authentication.
Now I have no clue how to move forward
@ajay560 these links can help you :
https://jonathanmh.com/express-passport-json-web-token-jwt-authentication-beginners/
https://medium.com/front-end-hacking/learn-using-jwt-with-passport-authentication-9761539c4314
here are steps that you can try
1. create bna file (composer archive create)
2. composer network install with PeerAdmin@hlfv1 card
3. composer network start with your network and PeerAdmin@hlfv1 card
4. composer card import --file networkadmin.card
5. docker run -d --name mongo --network composer_default -p 27017:27017 mongo
6. sed -e 's/peer0.org1.example.com:7051/localhost:7051/' -e 's/peer0.org1.example.com:7053/localhost:7053/' -e 's/ca.org1.example.com:7054/localhost:7054/' -e 's/orderer.example.com:7050/localhost:7050/' < home_dir/.composer/cards/admin@$BNA/connection.json > ./tmp/connection.json && cp -p ./tmp/connection.json home_dir/.composer/cards/admin@$BNA/
7. BNA="your bna name"
8. RESTADMIN="your rest user name"
7. composer participant add -c admin@$BNA -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"'$RESTADMIN'"}'
8. composer identity issue -c admin@$BNA -f $RESTADMIN.card -u $RESTADMIN -a "resource:org.hyperledger.composer.system.NetworkAdmin#$RESTADMIN"
9. composer card import -f $RESTADMIN.card
10. sed -e 's/localhost:7051/peer0.org1.example.com:7051/' -e 's/localhost:7053/peer0.org1.example.com:7053/' -e 's/localhost:7054/ca.org1.example.com:7054/' -e 's/localhost:7050/orderer.example.com:7050/' < home_dir/.composer/cards/$RESTADMIN@$BNA/connection.json > ./tmp/connection.json && cp -p ./tmp/connection.json $HOME/.composer/cards/$RESTADMIN@$BNA/
11. sed -e 's/localhost:7051/peer0.org1.example.com:7051/' -e 's/localhost:7053/peer0.org1.example.com:7053/' -e 's/localhost:7054/ca.org1.example.com:7054/' -e 's/localhost:7050/orderer.example.com:7050/' < $HOME/.composer/cards/admin@$BNA/connection.json > ./tmp/connection.json && cp -p ./tmp/connection.json $HOME/.composer/cards/admin@$BNA/
12. docker stop $BNA-rest
13. docker rm $BNA-rest
14. docker run \
-d \
-e COMPOSER_CARD=$RESTADMIN@$BNA \
-e COMPOSER_NAMESPACES=never \
-e COMPOSER_AUTHENTICATION=true \
-e COMPOSER_MULTIUSER=true \
-e COMPOSER_PROVIDERS='{
"jwt": {
"provider": "jwt",
"module": "/home/composer/node_modules/custom-jwt.js",
"secretOrKey": "your secret key",
"authScheme": "saml",
"successRedirect": "/",
"failureRedirect":"/"
}
}' \
-e COMPOSER_DATASOURCES='{
"db": {
"name": "your db name",
"connector": "mongodb",
"host": "mongo"
}
}' \
-v ~/.composer:/home/composer/.composer \
--name $BNA-rest \
--network composer_default \
-p 8080:8080 \
dir/composer-rest-server
15.docker run \
-d \
-e COMPOSER_CARD=admin@$BNA \
-e COMPOSER_NAMESPACES=never \
-e COMPOSER_APIKEY=your key \
-v ~/.composer:/home/composer/.composer \
--name $BNA-admin-rest \
--network composer_default \
-p 8081:8080 \
dir/composer-rest-server
@ajay560 this runs passport local in docker containers but it assumes that you have built docker image of composer rest server
@Poneey : In my composer-playground return this issue while start the connect now option - Business network tutorial-network cannot be updated
@Poneey both approaches didn't work
Hi I wanted to know how can i get the history information of a asset as to what it originally belonged to and its current owner now, from the composer rest server interface
@Mahadream you don't have more informations ? I don't use playground ..
@Jyotirmoy my rest server is currently stop so i can't look more precisely. But you can look with /system/historian
I know you have an historian of all actions did on your network, you can maybe filtre for on specific asset
Has joined the channel.
Hi
@amritsharma ```rule R1 {
description: "..."
participant(p): "org.acme.trading.SampleParticipantOne"
operation: ALL
resource(d): "org.acme.trading.SampleParticipantThree" // resource is of participant type
condition: (p.sampleRelation.getIdentifier() === d.sampleRelation.getIdentifier())
action: ALLOW
}
rule R2 {
description: "..."
participant(p): "org.acme.trading.SampleParticipantOne"
operation: ALL
resource(d): "org.acme.trading.SampleParticipantThree"
condition: (!(p.sampleRelation.getIdentifier() === d.sampleRelation.getIdentifier()))
action: DENY
}``` (allowing for the fact you may have additional ALLOWs in your acl definition to warant R2 denial) - definitely works in Playground (ie P1 can only see one P3 record, ie the one he owns) - so would be interested to know if you've tested in Playground.
@amritsharma ```rule R1 {
description: "..."
participant(p): "org.acme.trading.SampleParticipantOne"
operation: ALL
resource(d): "org.acme.trading.SampleParticipantThree" // resource is of participant type
condition: (p.sampleRelation.getIdentifier() === d.sampleRelation.getIdentifier())
action: ALLOW
}
rule R2 {
description: "..."
participant(p): "org.acme.trading.SampleParticipantOne"
operation: ALL
resource(d): "org.acme.trading.SampleParticipantThree"
condition: (!(p.sampleRelation.getIdentifier() === d.sampleRelation.getIdentifier()))
action: DENY
}``` (allowing for the fact you may have additional ALLOWs in your acl definition to warrant R2 denial) - definitely works in Playground (ie P1 can only see one P3 record, ie the one he owns) - so would be interested to know if you've tested in Playground.
Can i create working blockchain application using composer only?
or i need to go detail into fabric ,chaincode etc?
@mahoney1 yes I have tested it in localhost playground but not in bluemix one
[ ](https://chat.hyperledger.org/channel/composer?msg=CJX7FGmb7MdsGEzoK) @Ishan you use Composer to develop your smart contracts to deploy as chaincode - see tutorials for a head start https://hyperledger.github.io/composer/latest/tutorials/tutorials
[ ](https://chat.hyperledger.org/channel/composer?msg=PfnMx6774eazLidMB) @mahoney1 Yes , i have gone thru the tutorials
then what https://hyperledger-fabric.readthedocs.io/en/release-1.2/build_network.html
these tutorials are for?
what sthe difference?
@mahoney1 hi, could I please get an advice on this issue: apparently after bringing my composer version up to date, I get an error as below when trying to connect to a newly deployed business network, using the card generated at network start time.
```
2018-07-18T12:44:43.823077560Z [31m2018-07-18 12:44:43.822 UTC [chaincode] processStream -> ERRO 06a[0m Got error: Error: The current identity, with the name 'admin' and the identifier 'bce5724b6d116c192f6b4aa70821b0135bce50ca0216e57aa1a712779514a014', must be activated (ACTIVATION_REQUIRED)
2018-07-18T12:44:43.823339212Z [31m2018-07-18 12:44:43.823 UTC [chaincode] ExecuteChaincode -> ERRO 06b[0m transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier 'bce5724b6d116c192f6b4aa70821b0135bce50ca0216e57aa1a712779514a014', must be activated (ACTIVATION_REQUIRED)
```
[ ](https://chat.hyperledger.org/channel/composer?msg=fA9KDLmh6h2MvzYHd) @Poneey Hi Thanks for the reply, I can access the historian fine but cannot understand how to get the history of the asset
@lshan - they're two different ways to develop blockchain applications/smart contracts (the link you posted is about building a 2 Org, 4 peer blockchain network (into which chaincode is deployed ) - see this S/Overflow for more info and links for side-by-side comparison https://stackoverflow.com/questions/48977403/chaincode-in-hyperledger-composer-vs-chaincode-in-hyperleger-fabric and also top 2 answers on this question here -> https://stackoverflow.com/questions/45505333/difference-between-hyperledger-composer-and-hyperledger-fabric for more description
@Jyotirmoy see item 6 (onwards) in this table -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks for more info/discussion on history of an asset (there is an open issue for this) - you might wish to use REST / loopback filters to resolve detail on a transaction class giving it an asset id in the filter etc. Example of a filter provided there.
@uber.twin after card creation, you would have to import that card, then use it (something like composer network ping -c
Someone can help me with this : https://stackoverflow.com/questions/51302570/hyperledger-composer-post-on-wallet-api-return-error-cant-find-end-of-centra
Hi all,
Could You please help me?
I've configured oauth2.0 using this: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
everything works like a charm till I try to integrate the same for mobile app (iOS, particular)
the problem is - I can not fetch the auth token when authentification is completed.
after login web browser just redirects me to the main page where I can see the token ( I guess it's configured by "successRedirect": "/" key pair)
Should I change envvars to provide extra scheme? Does anyone have an idea how to handle it properly?
I definitely missing something essential here
thanks in advance
Simulator Screen Shot - iPhone X - 2018-07-18 at 17.44.09.png
Has joined the channel.
Hi all,
I'm following lesson https://developer.ibm.com/courses/all/blockchain-essentials and i wanted to use carauction template nework on http://composer-playground.mybluemix.net/, but no template can be loaded, i have error "Error: could not get any sample networks." when i want to create a new business network
Is there anything I'm missing?
thanks
can anyone specify the versions of composer-cli and composer-common, composer-admin , composer-client to be used ??
and also the node versions
am using fabric 1.1 images
any dependency of composer-cli versions and composer-common, composer-admin , composer-client ??
Hi all. Does Composer work with fabric 1.2, or is it restricted to the v1.1 version from the tutorials?
I'm getting a weird chaincode error when trying to submit a transaction. For some reason the transaction will work on the online composer playground but not in the local composer playground which I have used successfully before to test networks.
This is the error I get: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: object type or attribute not a non-zero length string
My business network has three transaction types and only one of them gives this error. Again this error doesn't show in the online playground and everything works fine there
For some context here is the model for the transaction:
transaction Received {
o Integer quantity
--> ClientAsset clientasset
}
Through testing I have determined that the transaction logic in the js file is not causing this error as its not even going into the function to execute anything
I'm sure this seems a bit convoluted but any help would be greatly appreciated I have been stuck on this for quite a while
@DenisDoronin programatically, you should be able to get it from the cookie after authenticating eg using HTTPInterceptor eg. var token=$cookies.get['token']; or
if you're using Angular JS API there's an ngCookie module available etc etc. - then you can pass that (after validating) to the REST APIS as shown here https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication (scroll down to last section)
@DenisDoronin programatically, you should be able to get it from the cookie after authenticating eg using HTTPInterceptor eg. var token=$cookies.get['token']; or
if you're using Angular JS API there's an ngCookie module available etc etc. - then you can pass the (after validating it) to the REST APIS as shown here https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication (scroll down to last section)
@Fredtoul hmmm.... seems to be some issue with the main npm registry servers and its search capabilities at the moment - which is causing the problem, as playground makes a search request to the npm registry on www for available samples
@AnithaReddy 0.19.12 is the uniform version (for those modules) ie the current / latest - and works with Fabric 1.1
@guilhermesimoes 0.19.12 (latest) currently supports 1.1 only. Will announce here when 1.2 support is available in Composer
@apaparazzi0329 difficult to know - maybe post full info (your bna) on Stack Overflow. Not sure why What happens if you remove the transaction....have you got duplicate function names in your script file(s)
Thank you I will try and do that @mahoney1 and no I don't have duplicate function names. It really is a strange issue
Hi all. Say Im running hyperledger composer and decide to add another node to the network using cryptogen extend command. Now the node is running and has joined the channel. How can I update the current network that is running and change its connection.json file to include the information about that particular peer?
Any help will be really appreciated
hey all
I have a small question
what is asset ? should say it like a variable ?
for example, we can define integer or string parameter in java
can we say same thing for hyperledger composer
?
is there anybody there
?
Hello everyone;
I have created one attempt to create a mongo db wallet implementation
I have implemented the interface, however; it needs to be reworked to ensure everything is working correctly; I have two questions because I lack all the necessary experience;
I want to implement hashing for card names and encryption for credentials to be stored on DB is this the right layer and approach?
Second, what should I do to make this plugin available?
https://github.com/muhammadsalah/composer-wallet-mongodb
my question very simple
can someone please define asset or participant
we can say asset is our variable ?
@rajanashutosh This is the connection.json could you tell me how to look for errors. `{
"name": "hlfv1",
"x-type": "hlfv1",
"x-commitTimeout": 300,
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},
"channels": {
"composerchannel": {
"orderers": [
"orderer.example.com"
],
"peers": {
"peer0.org1.example.com": {}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
}
},
"orderers": {
"orderer.example.com": {
"url": "grpc://localhost:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://localhost:7051",
"eventUrl": "grpc://localhost:7053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://localhost:7054",
"caName": "ca.org1.example.com"
}
}
}`
@cagdasozt they are both predefined types; both are entries in the ledger; participant is a type that can be granted an identity (binded with it) so it can invoke the network and execute actions.
where as asset is merely a record; you maintain on the ledger; and of course you can update it etc.
@MuhammadSalah thanks for clarification
@mahoney1 Thanks. I was thinking about adding a rule with the use of firewall that would stop other peers to access that specific port. I will try with that and see what happens. Thanks
hey guys can anyone help me out with an BNA creation error
?
https://stackoverflow.com/questions/51390670/bna-creation-in-fabric-error
anybody have trouble with the PUT REST API to modify objects. I have it working fine locally, but when I run it on a remote server I get error messages - for the same versions of everything, same business network files etc
{
"error": {
"statusCode": 500,
"name": "TypeError",
"message": "Cannot read property 'uId' of undefined",
"stack": "TypeError: Cannot read property 'uId' of undefined\n at /home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:3106:25\n at doNotify (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:155:49)\n at doNotify (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:155:49)\n at doNotify (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:155:49)\n at doNotify (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:155:49)\n at Function.ObserverMixin._notifyBaseObservers (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:178:5)\n at Function.ObserverMixin.notifyObserversOf (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:153:8)\n at Function.ObserverMixin._notifyBaseObservers (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:176:15)\n at Function.ObserverMixin.notifyObserversOf (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:153:8)\n at Function.ObserverMixin._notifyBaseObservers (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:176:15)\n at Function.ObserverMixin.notifyObserversOf (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:153:8)\n at Function.ObserverMixin._notifyBaseObservers (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:176:15)\n at Function.ObserverMixin.notifyObserversOf (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:153:8)\n at replaceCallback (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:3103:17)\n at ensureConnected.then.then.then (/home/graind/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:596:17)\n at
Hey everyone! So I have been trying to successfully add authentication to my Composer project for some time, and have ran into a lot of trouble. Right now, I'm using this (https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) tutorial to set everything up. I got the composer-rest-server up and running, and I was able to import a card. However, when trying to do any other requests, I get an error that says "Error trying login and get user Context. Error: trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]". Does anybody know what might be causing this? I've ran through the tutorial multiple times to make sure I'm doing everything correctly
Has joined the channel.
Does anyone know why I keep getting: " Please Wait: Your new business network is being upgraded
Uprading business network using PeerAdmin@hlfv1 (2/2)", seemingly indefinitely, with no error message.
It says the following in the terminal: "info: [Hyperledger-Composer] :ConnectionProfileManager :getConnectionManagerByTyp Looking up a connection manager for type 0=hlfv1"
eventually it just timed out
Hi everyone. I can’t get nyc / istanbul to show any test coverage. I always get 0%, even if i run the tests from the sample generated by ```yo hyperledger-composer:businessnetwork```
Does anyone know how to fix this ? am i the only one experiencing this issue ?
I have found that if i run the tests from ibm's developerworks samples ( composer v. 14 ) it does create a coverage report with actual percentages. https://github.com/makotogo/developerWorks/
Has joined the channel.
Has joined the channel.
can someone guide me in determing if an connction.json file has the right values
I am getting the error, "Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed"
All the sample templates in http://composer-playground.mybluemix.net/ are missing,
[ ](https://chat.hyperledger.org/channel/composer?msg=3DbDh9niWZhPo8Cn2) @csengor were you able to get this to work? I am looking to do the same thing.
Has joined the channel.
Has joined the channel.
Hey all, I wanted to ask, is it possible to query from a transaction in hyperledger composer?
For example, if I want to transfer an item from one member to another in composer, but I want to check if the second member exists, how would I do that?
@rishabh1102 you can check it with ParticipantRegistry.exists(id) API https://hyperledger.github.io/composer/latest/api/client-participantregistry#exists
Hello EveryOne, I am trying to implement permissions in multi-user mode on composer and for that my ACL file looks like:
`rule R1 {
description: "..."
participant(p): "org.example.SampleParticipantOne"
operation: ALL
resource(d): "org.example.SampleParticipantThree" // resource is of participant type
condition: (p.sampleRelation.getIdentifier() === d.sampleRelation.getIdentifier())
action: ALLOW
}
rule R2 {
description: "..."
participant(p): "org.example.SampleParticipantOne"
operation: ALL
resource(d): "org.example.SampleParticipantThree"
condition: (!(p.sampleRelation.getIdentifier() === d.sampleRelation.getIdentifier()))
action: DENY
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule AllowAll {
description: "..."
participant: "org.example.**"
operation: ALL
resource: "org.example.**"
action: ALLOW
}`
and underlying models look like:
`namespace org.example
participant SampleParticipantOne identified by id {
o String id
--> SampleParticipantTwo sampleRelation
o string someMoreFields
}
participant SampleParticipantTwo identified by id {
o String id
o string someMoreFields
}
participant SampleParticipantThree identified by id {
o String id
--> SampleParticipantTwo sampleRelation
o string someMoreFields
}`
but when I try to get SampleParticipantThree while i carry SampleParticipantOne card, it returns me empty array and docker logs of peer show error something like:
`ERROR :AccessController :checkRule() Error: Cyclic ACL Rule detected, rule condition is invoking the same rule`
can somebody help me with this?
posted this yesterday also but still not able to resolve it.
[ ](https://chat.hyperledger.org/channel/composer?msg=EMMHixmG7wypRbDG9) @mahoney1 composer-cli, composer-admin, composer-client,composer-common should be 0.19.12????
Has joined the channel.
is anyone using fabric 1.2 yet ? does it work with composer 0.19.12 ?
@ParthPatil yes. i am using the latest master branch and composer 0.19.12. everything is ok except import card after bna deployed. the error message is ```Error: Error trying to ping. SyntaxError: Unexpected end of JSON input```
@mahoney1 you recommended to me to read the sources of composer to understand how the chaincode is really works (serialization to binary format and deserialization on deploy, install and chaincode invoke steps). It is very difficult for me to find the answer in the source code. Could you tell if this is reflected in any one source file? I really want to understand how this works.
I have 2 members Defined as:
Member 1: Id - Mem1
Member 2: Id - Mem2
In my transaction, when I call ParticipantRegistry.exists("Mem2") from Member1 as the caller of the transaction, I'm getting False as the result. Any reason as to why this might be happening?
i want network of chaincode container and peers should be same like host network spin up with composer start network. In my case n/w of chaincode container is bridge and n/w of peer is host. i want shift bridge to host n/w in chaincode containers.
hi
@webzingers and all : about issue with sample in http://composer-playground.mybluemix.net, there is on issue ongoing in github
https://github.com/hyperledger/composer/issues/4261
Has joined the channel.
Hi, can you help me with this : https://stackoverflow.com/questions/51302570/hyperledger-composer-post-on-wallet-api-return-error-cant-find-end-of-centra ?
Has joined the channel.
@ParthPatil @bh4rtp Composer 0.19.x doesn't work properly with fabric 1.2. in fabric 1.2 the way errors are returned from chaincode (TP functions) has changed and this isn't correctly handled on the client side which results in `Unexpected end of JSON input`.
Has joined the channel.
Hi, how can I get the key of asset stored in hyperledger fabric? I want to use `getNativeAPI().getHistoryForKey(key)` to query the history of asset, but I don't know the key .
@labcoinpoc the history is a set of changes where the same key has been used to store an asset. It is the key on the key/value database storage. So the key should be the ID of your asset
Someone is facing an issue where the chaincode container's RAM usage on a deployed network is infinitely increasing? It seems that the container is never freeing the used memory, and it rapidly starts to swap (kswap0 service) until VM collapses. I googled for issues and FAQ at Composer page, but no clue. Of course, "give more RAM to it" or "increase the % when the machine starts swapping" are not solutions :P
Should I try on a more specific channel like #composer-contributors, #composer-quality, or #composer-ci?
@gut Thanks! But may the ID includes namespace or something? cause create a participant with same id as asset is possible. And I found this code https://hyperledger.github.io/composer/latest/reference/js_scripts
```
async function simpleNativeHistoryTransaction (transaction) {
const id = transaction.assetId;
const nativeSupport = transaction.nativeSupport;
const nativeKey = getNativeAPI().createCompositeKey('Asset:systest.transactions.SimpleStringAsset', [id]);
const iterator = await getNativeAPI().getHistoryForKey(nativeKey);
let results = [];
let res = {done : false};
while (!res.done) {
res = await iterator.next();
if (res && res.value && res.value.value) {
let val = res.value.value.toString('utf8');
if (val.length > 0) {
results.push(JSON.parse(val));
}
}
if (res && res.done) {
try {
iterator.close();
}
catch (err) {
}
}
}
}
```
is `createCompositeKey` necessary ? If yes, why need to create a compositeKey first?
Hi Everyone. For the usecase of a market place where users buy and sell stocks, which kind of nodejs architecture should be adopted
for hyperledger where users dont trust the system. I read many blogs where they said to maintain the cards of user in their
local system. Could you please suggest how the design of application must be ?
[ ](https://chat.hyperledger.org/channel/composer?msg=N85Cs5NBjvBodbcFL) @sudhir.kumawat The short answer is that you can specify the Docker network to use by setting this environment variable in your yaml files for starting your fabric:
`CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=host`
The longer answer is that the many possible environment variables for setting for Fabric are described in yaml files in the fabric-samples repo. In my case I was looking at fabric-samples/config/core.yaml
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=jcdKJfcfn4fCg2txB) @gut This the right channel to ask such questions. We have not seen other reports of that problem recently. Can you raise a Stack Overflow question with details of your Composer version, Node version, Fabric version OS level, docker version etc, and also include your model and Transaction scripts. Also an indication of how much data you are adding, how long it takes to 'blow up'.
[ ](https://chat.hyperledger.org/channel/composer?msg=jcdKJfcfn4fCg2txB) @gut This the right channel to ask such questions. We have not seen other reports of that problem recently. Can you raise a Stack Overflow question with details of your Composer version, Node version, Fabric version OS level etc, and also include your model and Transaction scripts. Also an indication of how much data you are adding, how long it takes to 'blow up'.
HI Guys
once more I am here with my Proxy issue
Does anyone have a working Composer with Proxy
@Zeljko Milinovic Yes i use composer behind proxy
@Poneey - where did you configure it all I am using the latest Fabric on Ubuntu 16.06, my corporate proxy does not have a passwort but I am getting always the error when starting the network
Has joined the channel.
@labcoinpoc - its created so that its searchable in the subsequent call - see more on `createCompositeKey` here -> https://fabric-shim.github.io/ChaincodeStub.html
@labcoinpoc - its created so that its searchable in the subsequent call - see more on `createCompositeKey` here -> https://fabric-shim.github.io/ChaincodeStub.html - the id should just be the id of the asset stored in that registry class)
*HOW CHAINCODE WORKS?*
In chaincode container we have deserialized code, wich executed when we invoke chaincode. In which format these deserialized data are stored? It's deserialized into js sources again? How chaincode container really works: it's v8 engine that interpret js code, golang binary, java bytecode in jwm?
[ ](https://chat.hyperledger.org/channel/composer?msg=psScv5NaSxN6RvQTt) @rthatcher I'll do it and back again. Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=uayjFMxmZGSJc6jSg) @mahoney1 Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=uayjFMxmZGSJc6jSg) @mahoney1 Thanks, now I can read history value by the code above, one more question is how could I get the timestamp? The Page of HistoryQueryIterator https://fabric-shim.github.io/HistoryQueryIterator.html is almost empty... Sorry I changed my account... I switched to another device
[ ](https://chat.hyperledger.org/channel/composer?msg=uayjFMxmZGSJc6jSg) @mahoney1 Thanks, now I can read history value by the code above, one more question is how could I get the timestamp?
[ ](https://chat.hyperledger.org/channel/composer?msg=uayjFMxmZGSJc6jSg) @mahoney1 Thanks, now I can read history value by the code above, one more question is how could I get the timestamp? The Page of HistoryQueryIterator https://fabric-shim.github.io/HistoryQueryIterator.html is almost empty...
[ ](https://chat.hyperledger.org/channel/composer?msg=uayjFMxmZGSJc6jSg) @mahoney1 Thanks, now I can read history value by the code above, one more question is how could I get the timestamp? The Page of HistoryQueryIterator https://fabric-shim.github.io/HistoryQueryIterator.html is almost empty... Sorry I changed my account... I am using my phone now.
@RocMax getHistoryForKey `getTxTimestamp()` returns when the transaction was created.
@RocMax You need to look at the protobufs to see the structure of what is returned for the getHistoryForKey call. Specifically the protobuf looks like this
```
message KeyModification {
string tx_id = 1;
bytes value = 2;
google.protobuf.Timestamp timestamp = 3;
bool is_delete = 4;
}
```
this will define the structure of each object returned from the getHistoryForKey iterator
Has joined the channel.
hi @mahoney1, thanks, I'll try
@mahoney1 @davidkel Thanks!
Hi, is it possible to call a transaction periodically through the logic.js file? (On a daily basis for example)
And also, is it possible to call a transaction inside another one ?
@VadimInshakov it is interpreted by NodeJs yes - nodejs chaincode support (the chaincode layer) is something delivered by Fabric and which Composer interfaces to. See more here -> https://hyperledger-fabric.readthedocs.io/en/release-1.1/chaincode4ade.html?highlight=chaincode
@VadimInshakov it is interpreted by Nodejs yes - nodejs chaincode support (the chaincode layer) is something delivered by Fabric and which Composer interfaces to. See more here -> https://hyperledger-fabric.readthedocs.io/en/release-1.1/chaincode4ade.html?highlight=chaincode
@ndatebayo . more likely to manage the schedule 'outside' of the transaction : eg crontab or you might like to look at some node scheduling tool such as node-schedule or node-cron - one transaction can't call another - but a transaction processor can call other functions to allow for code modularisation but it will only be registered as a single transaction request in the transaction registry
So when I run the composer it runs a container on each of the peers with the network i am running. Peer0.example.com has peer0.org1.example.com-peer0.org1.example.com-ent-network... If a peer doesn't have this running, does this mean that the chaincode is not running on that peer? I am confused as to how exactly the composer works inside all the abstraction.
reminder that the Community call is today t 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 - would be great to hear from you and hear your Composer stories, and use cases on the call with lead Composer Developers - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-18th-July-2018 best regards Paul
reminder that the Community call is today 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 - would be great to hear from you and hear your Composer stories, and use cases on the call with lead Composer Developers - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-18th-July-2018 best regards Paul
[ ](https://chat.hyperledger.org/channel/composer?msg=yAmBWHbkNTvAvWMWQ) @mahoney1 very happy to present my Blockchain-based Application written using Composer - “Snack Shop Application”
[ ](https://chat.hyperledger.org/channel/composer?msg=7rH84s4WHYG5xbbcq) @waleed cool. look forward to you sharing your demo :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=JRMYcKRygezWuSFAF) @KushagraTiwary The chaincode containers (e.g. dev-peer0.org2.example.com-tutorial-network-0.0.7) get created/started with the `composer network start` command. (assuming that your peers are correctly defined in the connection.json file for the card that you are using to start the business network). If a Peer is stopped for some reason the chaincode container also gets stopped, when the Peer is started the chaincode container does not get started until it is first needed - in which case it is automatically started. If the chaincode container gets removed, it gets automatically created before being started.
Has joined the channel.
I am unable to access the composer tool
[ ](https://chat.hyperledger.org/channel/composer?msg=9GzqDzJHNrRbuuYFc) @Joshua.Katowitz unable to install locally on your computer? unable to access the online playground ?
I am unable to create assets via transaction. When some of the asset's fields must conform to a Regular Expression defined in CTO file. This is probably caused by the composer automatically generating random values for fields, prior to submitting the transaction. Can I disable this composer automatic value generation? Or alternatively, Can I define REGULAR EXPRESSIONS in Logic.js rather than in Model.cto? Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=oknMrRtYyXpKtKe5f) @fedez @fedez you can make it `optional` in your model file?
[ ](https://chat.hyperledger.org/channel/composer?msg=oknMrRtYyXpKtKe5f) @fedez you can make it `optional` in your model file?
[ ](https://chat.hyperledger.org/channel/composer?msg=ytGeN2onxzjSSWsQF) @rthatcher So say I run the composer network start command from one VM where two peers are running. Another VM has another VM running but that VM doesn't have the chaincode container running on it. Does this mean that the chaincode isn't installed on that peer? When I try to do composer network start from the other VM it tells me that all the VMs have the chaincode up and running.
@mahoney1, do You know where to get list of all possible keys for COMPOSER_PROVIDERS dictionary?
I want to set response_type for oauth, but I don't know proper key for this, if it possible of course. thanks
@mahoney1 not really. It is a mandatory field. Like the 'VIN' to create a new Vehicle. The problem is with the auto generation of field values by composer. Even if I make it optional, I am not able to modify it since the check for REGEX is done before I press the "submit transaction" button. As soon as I tick "show optional fields" I get the following system error: "Error: Validator error for field org.garage.firstHand.vehicle#0841 org.garage.firstHand.vehicle.ref: Value + '' failed to match validation regex: /((0)[1-3](ST|PL|GO))/"
Has joined the channel.
I am unable to find the sample business networks on playground. Is anybody having the same issue?
@mahoney1 the system error for the REGEX is thrown by the system even before displaying the filed "VIN" for example. Therefore, I can never get to the point to match the REGEX with my input text.
@DenisDoronin COMPOSER_PROVIDER attributes come from Loopback's provider.json - see the reference doc here -> https://loopback.io/doc/en/lb2/Configuring-providers.json.html
@DenisDoronin COMPOSER_PROVIDERS attributes come from Loopback's provider.json - see the reference doc here -> https://loopback.io/doc/en/lb2/Configuring-providers.json.html
[ ](https://chat.hyperledger.org/channel/composer?msg=NiePDkKGnMz6Gzb7m) @mahoney1 Thanks, O'Mahoney, but why than I can't find js logic, .cto and other files in chancode container? How chancode executed without sources?
[ ](https://chat.hyperledger.org/channel/composer?msg=NiePDkKGnMz6Gzb7m) @mahoney1 Thanks, O'Mahoney, but why than I can't find js logic, .cto and other files in chaincode container? How chancode executed without sources?
[ ](https://chat.hyperledger.org/channel/composer?msg=NiePDkKGnMz6Gzb7m) @mahoney1 Thanks, O'Mahoney, but why than I can't find js logic, .cto and other files in chaincode container? How chaincode executed without sources?
@fedez - Are you trying this (your transactions that create an asset, as you wrote) out in Playground or elsewhere? You can use standard regex in javascript (if you want to control if a field conforms) yourself in a function if you wish
[ ](https://chat.hyperledger.org/channel/composer?msg=YCvkJo5QwRLezJDkN) @gbibeaulaviolette - you are not alone :-) There is an npm problem that is preventing the samples from loading: https://github.com/hyperledger/composer/issues/4261
@rthatcher thanks that clears up 2 hours of frustration!
Clipboard - July 19, 2018 4:23 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=HYGxACHce8peXDATr) @KushagraTiwary Are you running with all the peers in a single Org, or do you have Multi-Org? Have you seen our MultiOrg tutorial which covers the composer aspects of a 2 Org network, but all running on a single vm. https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
You need to run the `composer network install` once for each Org (it will install on all the peers in the org if the connection.json describes/defines them correctly),
and then the `composer network start` *once for the Network* (it will start a chaincode container on all the peers in the Network if the connection.json describes/defines them correctly)
@VadimInshakov yes is is on the cc container ->
@VadimInshakov yes it is on the cc container ->
Clipboard - July 19, 2018 4:23 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=dDDBgQ6xB9pSsTYs5) @rthatcher I don't have multi-org. I have mult-host. All the VMs are configured to be in the same org but they are running on different hosts. The peers running in the host from where I deploy the network have these dev chaincode containers running, but the other VM's peer doesn't. However, all the peers are able to communicate with each other and able to run the chaincode and approve/disapprove transactions.
[ ](https://chat.hyperledger.org/channel/composer?msg=bbH4vKQZACk6EcyAm) @KushagraTiwary How many peers per VM? and how are you managing the networking / addressing between the remote peers, and in the connection.json?
reminder that the Community call is in 30mins at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 - would be great to hear from you and hear your Composer stories, and use cases on the call with lead Composer Developers - we'll also discuss the latest release and what's upcoming -> https://github.com/hyperledger/composer/wiki/Meeting-18th-July-2018 best regards Paul
performance
[ ](https://chat.hyperledger.org/channel/composer?msg=HmaE55CwS6maXydyt) @rthatcher Currently, for testing I have one peer per VM. I have the IPs of the peer in connection.json so they are able to communicate with each other. The docker containers are running in swarm and using overlay networks.
Hi, Is there a way in composer to have a child class which redefines the value of the master ? (for example, Participant: Company with an attribute "id", then having "ClientCompany" with id=1
Hi, Is there a way in composer to have a child class which redefines the value of a value in the parent? (for example, Participant: Company with an attribute "id", then having "ClientCompany" with id=1
Hi, Is there a way in composer to have a child class which redefines the value of a value in the parent? (for example, Participant: Company with an attribute "id", then having "ClientCompany" with id=1 , "LegalCompany" with id=2....
Hi, Is there a way in composer to have a child asset/class which redefines the value of a variable in the Parent? (for example, Participant: Company with an attribute "id", then having "ClientCompany" with id=1 , "LegalCompany" with id=2....
Hi, Is there a way in composer to have a child asset/class/participant which redefines the value of a variable in the Parent? (for example, Participant: Company with an attribute "id", then having "ClientCompany" with id=1 , "LegalCompany" with id=2....
hi in composer playground in my model file one of my assets points (-->) to a participant object which itself has an attribute say name
hi in composer playground in my model file one of my assets points (-->) to a participant object which itself has an attribute say name . but in my query file when i put WHERE participant.name =="targetname" the query runs empty on API
hi in composer playground in my model file one of my assets points (-->) to a participant object which itself has an attribute say name . but in my query file when i put WHERE participant.name =="targetname" the query runs empty on API. However it runs fine when i put WHERE participant but this requires me to put the enitre identifier of the participant including its class. It seems there is a problem when referring to new tables ?
(not asking about the real id ofc, just a secondary attribute)
[ ](https://chat.hyperledger.org/channel/composer?msg=Sb3fbghB2kk4BrCXC) @KushagraTiwary thanks for the extra information. The connection.json is only used for the client to server. I would guess that there is some communication issue between the peers, so I would suggest looking in the logs of the peers to see if there are any errors. Where there are fabric problems we usually suggest that people try to 'prove' the fabric by setting up the marbles (or similar) sample from the Fabric tutorials/samples.
[ ](https://chat.hyperledger.org/channel/composer?msg=o9aYyd7P5jyLKoTqr) @mahoney1 Thanks!! Do you have any ideas why after changing the code right inside the container this didn't affect the transactions results?
[ ](https://chat.hyperledger.org/channel/composer?msg=8jGEwhjRbF8ErxL8Y) @rthatcher I have checked the fabric peer/orderer logs. The network is deployed through the first VM. It starts the chaincode container there so when I submit a transaction through the rest server, peer0 simulates and validates it and submits the transaction. Peer 1 running on the other VM cannot validate the transaction because it cannot find any chaincode running on that particular VM. But it still receives the transaction because of the peers are able to communicate with each other. So it gives me an error in the logs saying no chaincode found. It still adds it to the database because there is currently no consensus running on the peers. Every transaction will get approved, so the logs tell me that this block was added successfully. But since there's no chaincode running on that peer, the peer isn't able to simulate and validate the transaction. So my issue is how if I run composer network start from one VM, it installs the chaincode on the peers in that VM where I issue the command from, but the peer in the other VM doesn't run its own chaincode as of yet. So how can composer install a chaincode on peers running on different hosts?
Hi guys :)
Here are my slides of today's call about our fabric/composer project used on a daily basis:
https://drive.google.com/file/d/1KmRyJ0CAvKA5gC78EtHSqXyk6YkeO85w/view?usp=sharing
You'll find all the information in there, as well as all links to github, blog etc.
Let me know if you have any questions or feedback :)
@waleed thanks for sharing your demo today, and providing the links for everyone here
@waleed , Thanks for the slides, They are very good. I have few questions regarding the slides. In the diagram Is the blockchain integrated with rest-server ? If so, is the rest-server centralised . I would like to understand how trust is provided to users,Could you please elaborate "Making the Blockchain Visible" part.
[ ](https://chat.hyperledger.org/channel/composer?msg=eAkYLDRGnJaWMDmSz) @pravn1729 thanks :) the rest server is a seperate docker container and All information regarding authenticated users and their wallets (containing that users business network cards when multiple user mode is enabled) is persisted in a LoopBack data source by using a LoopBack connector. By default, the REST server uses the LoopBack "memory" connector to persist user information, which is lost when the REST server is terminated. The REST server should be configured with a LoopBack connector that stores data in a highly available data source, for example a database.
You should be able to use any LoopBack connector, but composer recommends that you use a LoopBack connector for a NoSQL database. For example, MongoDB or Apache CouchDB.
I use MongoDB in separate docker container.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=uek9cNKoHTYKTyZbc) @mahoney1 please correct me if not right :)
Hello guys, I would like to know if its ok to use the composer-rest-api for production environments, or if its a shortcut to test the BNA instead of developing my own node.js back-end using the composer SDK
Does anyone know Exactly what this warning means: [channel: mychannel] Error sending to 10.128.0.13:54636: rpc error: code = Unknown desc = the stream has been done
Hello, does someone have info or documentation on how to deploy a blockchain based on composer to azure?
Happy Friday everybody!
I have some questions about designing a business network.
say, I am building a business network for storing sales records. there are only simple transactions. one of them is `insertSaleRecord` which inserts a captured sale record into HL's ledger.
Also I'd like to provide a monthly report that represents all merchants' sales within the last month and resets the value when the next month starts.
I'm thinking `state database` is the place to have the indexed data. But how should it be generated? should it have a new transaction `calculateMonthlySalesRecord` that indexes all the records within the month? but I wonder how should the transaction be fired?
Has joined the channel.
Question: So I am a little bit confused about how the REST server multuser authentication works? I get the concept where the client( i.e the User from a web application) authenticates using then they are the allowed to import identities and sign transaction. A couple of questions:
Question: So I am a little bit confused about how the REST server multuser authentication works? I get the concept where the client( i.e the User from a web application) authenticates using then they are the allowed to import identities and sign transaction. A couple of questions:
1) What happens if the identity has not been tied to a participant? Like if a client/user tries to fake an entry into a system where they have not been authorized.
2) This setup requires that Clients/Users trust the REST server. Is there not a way, maybe using some public key/private key stuff for the clients not to trust the REST server. Maybe an generate a public key/private key pair, ensure that the correct public key is sent over then use that to sign transactions and prove that they are who they say they are
[ ](https://chat.hyperledger.org/channel/composer?msg=He5dBY4yzYtg4jo3Q) @mahoney1 Yes, the transaction queries the data and updates it based on business requirement. Also in any realtime system you are expected to do the same right?
Has joined the channel.
Hello, I have enabled multiple user mode for the REST server and followed the steps described in the URL https://hyperledger.github.io/composer/latest/integrating/enabling-multiuser and it works well. I have created test1, test2, test3 and test4 users/identities/cards using composer command line using admin card. I have imported test1 card as described in the URL, tested(http://localhost:3000/explorer) and it works fine. Now i opened second browser(http://localhost:3000/explorer) , authenticated to github and when i fire GET request for Wallet I am seeing response having test1. card. So this browser REST client already have test1.card. I want to test another user e.g. test2 in the second browser REST client but i am observing always having first browser REST client card. Appreciate if some one provides some help with the procedure to test the multiple users. Thanks in advance.
[ ](https://chat.hyperledger.org/channel/composer?msg=BJBR5umBaQ3gtgmH8) @davidkel Thanks for the heads up. I have read some docs about google protobuf, and I still have a question about it. Now I can read `KeyModification` data with the `getHistoryForKey` function, or get `google.protobuf.Timestamp` data with the `getTimestamp` function, but all these data are protobuf and need to be deserialized. I can get byte[] data with `res.value.getValue()` or `res.value.value` then convert it to string then return. But the timestamp is protobuf binary data, I need to either deserialize it in chaincode or return the binary data and deserialize out of Fabric. So my question is:
1. How to import module like `protobuf.js` in chaincode?
2. Composer cannot define `ArrayBuffer` type as a return value, then how to return protobuf binary data?
[ ](https://chat.hyperledger.org/channel/composer?msg=BJBR5umBaQ3gtgmH8) @davidkel Thanks for the heads up. I have read some docs about google protobuf, and I still have a question about it. Now I can read `KeyModification` data with the `getHistoryForKey` function, or get `google.protobuf.Timestamp` data with the `getTimestamp` function, but all these data are protobuf and need to be deserialized. I can get byte[] data of Participant or Asset with `res.value.getValue()` or `res.value.value` then convert it to string then return. But the timestamp is protobuf binary data, I need to either deserialize it in chaincode or return the binary data and deserialize out of Fabric. So my question is:
1. How to import module like `protobuf.js` in chaincode?
2. Composer cannot define `ArrayBuffer` type as a return value, then how to return protobuf binary data?
[ ](https://chat.hyperledger.org/channel/composer?msg=BJBR5umBaQ3gtgmH8) @davidkel Thanks for the heads up. I have read some docs about google protobuf, and I still have a question about it. Now I can read `KeyModification` data with the `getHistoryForKey` function, or get `google.protobuf.Timestamp` data with the `getTimestamp` function, but all these data are protobuf and need to be deserialized. I can get byte[] data of Participant or Asset with `res.value.getValue()` or `res.value.value` then convert it to string then return. But the timestamp is protobuf binary data, I need to either deserialize it in chaincode or return the binary data and deserialize out of Fabric. So my question is:
1. How to import module like `protobuf.js` in chaincode?
2. Composer cannot define `ArrayBuffer` type as a return value, then how to return protobuf binary data?
I figured out that maybe I should compile the proto file of `google.protobuf.Timestamp` and make a reader by js, then I can deserialize it in chaincode.
[ ](https://chat.hyperledger.org/channel/composer?msg=BJBR5umBaQ3gtgmH8) @davidkel Thanks for the heads up. I have read some docs about google protobuf, and I still have a question about it. Now I can read `KeyModification` data with the `getHistoryForKey` function, or get `google.protobuf.Timestamp` data with the `getTimestamp` function, but all these data are protobuf and need to be deserialized. I can get byte[] data of Participant or Asset with `res.value.getValue()` or `res.value.value` then convert it to string then return.~ But the timestamp is protobuf binary data, I need to either deserialize it in chaincode or return the binary data and deserialize out of Fabric. So my question is:
1. How to import module like `protobuf.js` in chaincode?
2. Composer cannot define `ArrayBuffer` type as a return value, then how to return protobuf binary data?~
I found that there is a function `GetSeconds ()`of timestamp so problem solved.
[ ](https://chat.hyperledger.org/channel/composer?msg=BJBR5umBaQ3gtgmH8) @davidkel Thanks for the heads up. I have read some docs about google protobuf, and I still have a question about it. Now I can read `KeyModification` data with the `getHistoryForKey` function, or get `google.protobuf.Timestamp` data with the `getTimestamp` function, but all these data are protobuf and need to be deserialized. I can get byte[] data of Participant or Asset with `res.value.getValue()` or `res.value.value` then convert it to string then return. ~ But the timestamp is protobuf binary data, I need to either deserialize it in chaincode or return the binary data and deserialize out of Fabric. So my question is:
1. How to import module like `protobuf.js` in chaincode?
~2. Composer cannot define `ArrayBuffer` type as a return value, then how to return protobuf binary data?~
I found that there is a function `GetSeconds ()`of timestamp so problem solved.
[ ](https://chat.hyperledger.org/channel/composer?msg=BJBR5umBaQ3gtgmH8) @davidkel Thanks for the heads up. I have read some docs about google protobuf, and I still have a question about it. Now I can read `KeyModification` data with the `getHistoryForKey` function, or get `google.protobuf.Timestamp` data with the `getTimestamp` function, but all these data are protobuf and need to be deserialized. I can get byte[] data of Participant or Asset with `res.value.getValue()` or `res.value.value` then convert it to string then return. ~But the timestamp is ~~protobuf binary data, I need to either deserialize it in chaincode or return the binary data and deserialize out of Fabric. So my question is:~
~1. How to import module like `protobuf.js` in chaincode?~
~2. Composer cannot define `ArrayBuffer` type as a return value, then how to return protobuf binary data?~
I found that there is a function `GetSeconds ()`of timestamp so problem solved.
[ ](https://chat.hyperledger.org/channel/composer?msg=BJBR5umBaQ3gtgmH8) @davidkel Thanks for the heads up. I have read some docs about google protobuf, and I still have a question about it. Now I can read `KeyModification` data with the `getHistoryForKey` function, or get `google.protobuf.Timestamp` data with the `getTimestamp` function, but all these data are protobuf and need to be deserialized. I can get byte[] data of Participant or Asset with `res.value.getValue()` or `res.value.value` then convert it to string then return.
~ But the timestamp is protobuf binary data, I need to either deserialize it in chaincode or return the binary data and deserialize out of Fabric. So my question is:~
~1. How to import module like `protobuf.js` in chaincode?~
~2. Composer cannot define `ArrayBuffer` type as a return value, then how to return protobuf binary data?~
I found that there is a function `GetSeconds ()`of timestamp so problem solved.
[ ](https://chat.hyperledger.org/channel/composer?msg=2F2Ltrhc223asAP7M) @rthatcher Even with 2.5 mb to 3mb payload it is showing fabric timeout.
Clipboard - July 20, 2018 12:10 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=u5Nf4hSrSuHp3QPQs) @Fredtoul I too am getting the same message whether i deploy my own playground or use the one available on bluemix. Is there any update or anything that I have missed? FYI I have been using composer right from v0.6 and never had issues like this. Quick solution will be appreciated.
[ ](https://chat.hyperledger.org/channel/composer?msg=Q8mFcXHDsAXvfD7xv) @SanketPanchamia I am also getting the same error message today
Clipboard - July 20, 2018 12:31 PM
Seems like some issue with composer. Even the sample blank network is hanging
can latest composer support fabric v1.0 network?
[ ](https://chat.hyperledger.org/channel/composer?msg=8fZAieZZ2vb4j4A9Q) @huxiangdong It was supporting 1.0. I havent tried composer after that to see if it supports 1.1 and 1.2
Hi
Can we create a query with optional parameters? Or if not then in transaction how can I get an asset with particular parameters passed to it? Because currently we have an api which get the asset by Id only.. Is there any other solution?
[ ](https://chat.hyperledger.org/channel/composer?msg=AtMjvma5TcgsLdEGb) @Pranoti In my project I build a query dynamically with API, my code is like:
```
module.exports.queryReceipts = async function (cardId, options) {
let businessNetworkConnection = new BusinessNetworkConnection();
let queryString = `SELECT ${namespace}.Receipt WHERE(`;
let conditions = [];
if (options.startTime) {
conditions.push(`(timeStamp>=${options.startTime})`)
};
if (options.endTime) {
conditions.push(`(timeStamp<=${options.endTime})`)
};
if (options.buyer) {
conditions.push(`(buyer=="resource:${namespace}.User#${options.buyer}")`)
};
if (options.seller) {
conditions.push(`(seller=="resource:${namespace}.Shop#${options.seller}")`)
};
queryString += conditions.join(' AND ') + ')';
await businessNetworkConnection.connect(cardId);
let query = businessNetworkConnection.buildQuery(queryString);
let result = await businessNetworkConnection.query(query);
console.log(`Get ${result.length} receipts`)
return result;
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=AtMjvma5TcgsLdEGb) @Pranoti In my project I build a query dynamically with API, my code is like:
```
module.exports.queryReceipts = async function (cardId, options) {
let businessNetworkConnection = new BusinessNetworkConnection();
let queryString = `SELECT ${namespace}.Receipt WHERE(`;
let conditions = [];
if (options.startTime) {
conditions.push(`(timeStamp>=${options.startTime})`)
};
if (options.endTime) {
conditions.push(`(timeStamp<=${options.endTime})`)
};
if (options.buyer) {
conditions.push(`(buyer=="resource:${namespace}.User#${options.buyer}")`)
};
if (options.seller) {
conditions.push(`(seller=="resource:${namespace}.Shop#${options.seller}")`)
};
queryString += conditions.join(' AND ') + ')';
await businessNetworkConnection.connect(cardId);
let query = businessNetworkConnection.buildQuery(queryString);
let result = await businessNetworkConnection.query(query);
console.log(`Get ${result.length} receipts`)
await businessNetworkConnection.disconnect();
return result;
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=ZSo4SL785JxkPm2p2) @labcoinpoc Thanks! That's great! :smile: :thumbsup:
[ ](https://chat.hyperledger.org/channel/composer?msg=aYqmgW9ibTobRMQjm) @SanketPanchamia The current version of Composer (v0.19.x) supports Fabric v1.1.0 only. (not 1.0 or 1.2)
[ ](https://chat.hyperledger.org/channel/composer?msg=w9B8dGMdQymTwisrd) @umamaheswarv @SanketPanchamia - unfortunately there is a problem with NPM at the moment which is where the samples are pulled from: https://github.com/hyperledger/composer/issues/4261
[ ](https://chat.hyperledger.org/channel/composer?msg=w9B8dGMdQymTwisrd) @umamaheswarv @SanketPanchamia - unfortunately there is a problem with NPM at the moment which is where the samples are pulled from: https://github.com/hyperledger/composer/issues/4261
But as an interim, you could create an Empty Business network, and then Paste in the contents of a Model from the git hub source: https://github.com/hyperledger/composer-sample-models/tree/master/packages
[ ](https://chat.hyperledger.org/channel/composer?msg=w9B8dGMdQymTwisrd) @umamaheswarv @SanketPanchamia - unfortunately there is a problem with NPM at the moment which is where the samples are pulled from: https://github.com/hyperledger/composer/issues/4261
But as an interim, you could create an Empty Business network, and then Paste in the contents of a Model from the git hub source: https://github.com/hyperledger/composer-sample-models/tree/master/packages and the JS logic for the samples can be found here: https://github.com/hyperledger/composer-sample-networks/tree/master/packages
[ ](https://chat.hyperledger.org/channel/composer?msg=w9B8dGMdQymTwisrd) @umamaheswarv @SanketPanchamia @Fredtoul - unfortunately there is a problem with NPM at the moment which is where the samples are pulled from: https://github.com/hyperledger/composer/issues/4261
But as an interim, you could create an Empty Business network, and then Paste in the contents of a Model from the git hub source: https://github.com/hyperledger/composer-sample-models/tree/master/packages and the JS logic for the samples can be found here: https://github.com/hyperledger/composer-sample-networks/tree/master/packages
[ ](https://chat.hyperledger.org/channel/composer?msg=BTr56HNf4rvpg7QC7) @umamaheswarv - good news that you have the REST serve running in MultiUser mode. When you start the 2nd Browser, you need to login with a *different Github User*, then you will have an empty Wallet and you can import a different card.
[ ](https://chat.hyperledger.org/channel/composer?msg=iberaJGQAwY4Xd4Py) @ashvinnihalani 1) The identity is always _bound_ to a Participant. This is done either when an Identity is Issued to a participant, or if the Identity already exists in the CA it is Bound to the participant.
2) Access to the Fabric from Composer is achieved via a Business Network Card, usually when the card is created it has a one-time secret but on first connection to the Fabric the secret is de-activated and Certificates/Keys are downloaded into the Card, and these crypto materials are used for all further connections.
Hi I am using Hyperledger composer to define model, query , script files ect and then testing my queries usuing the rest API. My problem lies when providing a WHERE condition for selecting an asset that is based on an attribute of another object that is pointed to within the asset.
Specifically
In the model file
namespace something
asset Toy identified by something {
--> Person Owner
lots of other stuff
}
participant Person identified by name {
o String name
other stuff
}
but the following query:
query selectbyOwner’sname {
description: "Select all directory numbers from a CP "
statement:
SELECT something.Toy
WHERE ( “Bob”== Owner.name)
}
this query returns an empty array even thoigh I have created the asset and participant .
The query works thouh when I replace Owner.name with Owner but then I have to provide th entire object name – class#name
does anyone have any idea why this happens? Thanks a lot
Hi I am using Hyperledger composer to define model, query , script files ect and then testing my queries usuing the rest API. My problem lies when providing a WHERE condition for selecting an asset that is based on an attribute of another object that is pointed to within the asset.
Specifically
In the model file
namespace something
asset Toy identified by something {
--> Person Owner
lots of other stuff
}
participant Person identified by name {
o String name
other stuff
}
but the following query:
query selectbyOwner’sname {
description: "select toys owned by a person "
statement:
SELECT something.Toy
WHERE ( “Bob”== Owner.name)
}
this query returns an empty array even thoigh I have created the asset and participant .
The query works thouh when I replace Owner.name with Owner but then I have to provide th entire object name – class#name
does anyone have any idea why this happens? Thanks a lot
[ ](https://chat.hyperledger.org/channel/composer?msg=DtSDKJE4Dk83f2GMF) @rthatcher Thank you for your quick reply. If i understood correctly each participant need to login(authenticate) with their own id. If so while starting the REST server we have to populate COMPOSER_PROVIDERS for each participant client id and client secret?
[ ](https://chat.hyperledger.org/channel/composer?msg=xwb47Zodgc28LhNrt) @howdyeyey With HyperLedger Composer, the Asset and Participant Registries are in the State Database. You could create your MonthlySales Record as a new Asset, and you could use a Query to select the data and populate it. You could fire the Transaction to generate the Monthly summary from a Calling API program triggered by some scheduling tool from the calling program or perhaps an OS tool like cron. Your calling API program could hit the Composer REST Server to fire the Transaction, or it could use the Javascript API. Can I suggest you start with our Developer and Query Tutorials to get a feel for the system? https://hyperledger.github.io/composer/latest/tutorials/tutorials
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=4ZMBepzCksfFQH2hg) @umamaheswarv No :-) - The Client and Secret provided in COMPOSER_PROVIDERS is just a hook into the Github authentication tool (or other authentication tool like Google etc). With that hook into Github you can authenticate with the REST server using any valid GitHub user. Try it out :-) BTW when testing I usually use a new Private or Incognito window in each different Browser to make sure nothing is cached up.
[ ](https://chat.hyperledger.org/channel/composer?msg=DpNv8DP3YpKWdXwHf) @rthatcher Ok thanks. Is there a timeline for the resolving the issue?
Hi guys , i have one doubt , yesteday i deployed one network in my local then i will check with using this commands *composer network ping -c tutorial-network* but itr return this issue Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode employee-network has been successfully instantiated and try again: could not find chaincode with name 'employee-network'
So again i need to redeploy my network ?
Hi guys , i have one doubt , yesteday i deployed one network in my local then i will check with using this commands *composer network ping -c tutorial-network* but itr return this issue Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode employee-network has been successfully instantiated and try again: could not find chaincode with name 'employee-network'
So again i need to redeploy my network ?
My backup of existing network data ?
Hi everyone,
My backup of existing network data ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZSo4SL785JxkPm2p2) @labcoinpoc can we have this kind of logic in transaction (logic.js file)?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZSo4SL785JxkPm2p2) @labcoinpoc can we implment this kind of logic in transaction (logic.js file)?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZSo4SL785JxkPm2p2) @labcoinpoc can we implement this kind of logic in transaction (logic.js file)?
@Drest - you need to specify the relationship value in your criteria to select from 'Toy' eg. ```query selectbyOwnersname {
description: "select toys owned by a person "
statement:
SELECT something.Toy
WHERE (Owner == "resource:something.Person#Bob")
}``` - CouchDB is not an RDBMS where JOINs can be performed
I am trying to access to an external service secured wiht Keycloak from inside a composer transaction, but I always get a 403 error forbiden. How can I give permissions to the Hyperledger Composer service to access this resources? Executing the same code from an external NodeJS console returns me the correct data
I provide the access token in the qs.access_token parameter from the request.post function
can we perform parallel transactions in hyperledger, which may or may not update the same asset? If Yes How? Can kafka play any role in parallel processing
@rthatcher hi, I am gettig this client API error when trying to connect to the local card store
```
Unexpected token return
```
Could this be related to the node version which I am using?
@rthatcher hi, I am gettig this client API error when trying to connect to the local card store
```
Unexpected token return
```
Could this be related to the node version which I am using, i.e. not being able to evaluate the 'await' directive or something similar?
@rthatcher hi, I am gettig this client API error when trying to connect to the local card store
```
Unexpected token return
```
Could this be related to the node version which I am using(v7.10.1), i.e. not being able to evaluate the 'await' directive or something similar?
[ ](https://chat.hyperledger.org/channel/composer?msg=znTP4rW2ogiBWBNjz) @Pranoti `BusinessNetworkConnection.buildQuery` is client API in transaction processor function you need runtime API, you may try this: https://hyperledger.github.io/composer/latest/api/runtime-api#query
@Pranoti, yes you can build a dynamic query in the TP function (obviously labcoinpoc's sample is more client based)
[ ](https://chat.hyperledger.org/channel/composer?msg=ZRjMErRXKxcuWg75A) @mahoney1 Thank you!
[ ](https://chat.hyperledger.org/channel/composer?msg=ZRjMErRXKxcuWg75A) @mahoney1 Thank you! I'll try this.
[ ](https://chat.hyperledger.org/channel/composer?msg=R3vmYHSGz4sj6Fq3b) @uber.twin yes, it async/await came in with Node 8
[ ](https://chat.hyperledger.org/channel/composer?msg=R3vmYHSGz4sj6Fq3b) @uber.twin yes, it (async/await) came in with Node 8
[ ](https://chat.hyperledger.org/channel/composer?msg=yFRuWYSoP2XRJowaS) @Mahadream have you restarted your computer and re-run the startFabric.sh script ? Check out this answer on Stack Overflow
@rthatcher : yes i restart the startFabric.sh but still i face this isse
@Juanan_Tejero are you calling Keycloak via REST APIs (eg. something like [this example](https://stackoverflow.com/questions/44794201/keycloak-rest-api-403-forbidden) ) - the forbidden error obviously means something isn't quite right with the request you submitted. Examples of calling out from a Composer transaction (in a TP function) is shown here -> https://hyperledger.github.io/composer/latest/integrating/call-out - sounds like the participant you're using (Composer participant in the case of a TP function) doesn't have authority in the realm you're trying to access. Are you providing the right security context etc
@Juanan_Tejero are you calling Keycloak via REST APIs (eg. something like [this example](https://stackoverflow.com/questions/44794201/keycloak-rest-api-403-forbidden) ) - the forbidden error obviously means something isn't quite right with the request you submitted (didn't get authority in security context requested). Examples of calling out from a Composer transaction (in a TP function) is shown here -> https://hyperledger.github.io/composer/latest/integrating/call-out - sounds like the participant you're using (Composer participant in the case of a TP function) doesn't have authority in the realm you're trying to access. Are you providing the right security context etc
[ ](https://chat.hyperledger.org/channel/composer?msg=R7dTPExrD3oxREox9) @rthatcher - Thank you, it is working now. In addition to multiple participant REST server access, I tried github and google authentications by including them one at a time and it is working fine. But when i included both passport strategies in environment variable(COMPOSER_PROVIDERS) and by building docker image by including both the strategies in "Dockerfile"( RUN npm install --production loopback-connector-mongodb passport-github passport-google-oauth2) REST sever seems to be not finding passport-github npm module hence it is not coming up. Appreciate your help!
[ ](https://chat.hyperledger.org/channel/composer?msg=PTpGyBqDon6jTRdLC) @Mahadream Sorry I forgot to post the link !! https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
[ ](https://chat.hyperledger.org/channel/composer?msg=PTpGyBqDon6jTRdLC) @Mahadream Sorry I forgot to post the link !! https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
So you have lost your network fro yesterday. You should delete the card(s) used for the network yesterday (but leave the PeerAdmin card you need that) Delete the old cards with `composer card delete`.
Asuming you are using the CLI, you should then be able to redeploy the network to the 'new' Fabric with `composer network install` and `composer network start`. But aftr today with the information in that link you shouldn't lose any more work.
[ ](https://chat.hyperledger.org/channel/composer?msg=PTpGyBqDon6jTRdLC) @Mahadream Sorry I forgot to post the link !! https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
So you have lost your network from yesterday. You should delete the card(s) used for the network yesterday (but leave the PeerAdmin card you need that) Delete the old cards with `composer card delete`.
Asuming you are using the CLI, you should then be able to redeploy the network to the 'new' Fabric with `composer network install` and `composer network start`. But aftr today with the information in that link you shouldn't lose any more work.
@rthatcher : Thanks , i will check and let me know
@SanketPanchamia the workaround is to grab them from Github repo - ie `git clone https://github.com/hyperledger/composer-sample-networks.git` etc etc - use composer archive create if you wish to create a .bna file
[ ](https://chat.hyperledger.org/channel/composer?msg=4KW5F9QhqBCHiGAbY) @Varun2887 correct
[ ](https://chat.hyperledger.org/channel/composer?msg=r6mYeeDSLYm7Hs9gp) @mahoney1 but what is not correct is that transactions are failing when we are trying to replicate a real life scenario... will need some help here
hi , i'm trying to issue and identity to for the participient created using admin card of the network and i'm running below errror. ✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
hi , i'm trying to issue and identity to for the participient created using admin card of the network and i'm running below errror. ✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
looks like the networkadmin card created using createPeerAdminCard.sh file doesnt have issue identity permission. any idea how do i fix this?
[ ](https://chat.hyperledger.org/channel/composer?msg=CH5z4Hp2tSueAvi8E) @NareshPai You should use the networkAdmin card created when you install the bna file
After I install the chaincode properly I get this error when running `network start`
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: transaction returned with failure: ReferenceError: $ is not defined
Command failed
This was working last week for me. Did something drastically change in composer?
@varunagarwal not really... I would check your transaction code, are you referencing a variable wrongly?
[ ](https://chat.hyperledger.org/channel/composer?msg=Q95sysGZzbfBuNZgo) @varunagarwal I have seen this error when there is a problem with the Transaction Logic JS - so perhaps that '$' ?
Hello, I had a doubt, once my business network application is deployed. I created a few new participants. How can I create business cards for them? Do I need to generate new crypto as well or can I use some existing certificates for them?
That is what I thought, but the .bna file is running absolutely fine on composer playground.
```
⠹ Starting business network definition. This may take a minute...E0720 16:53:36.558858313 24987 channel_args.cc:341] grpc.keepalive_timeout_ms ignored: it must be an integer
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: transaction returned with failure: ReferenceError: $ is not defined
Command failed
```
T
docker ps shows the docker containers running
@rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=egxBNWgz72YTs9MPx) @rishabh1102 you can do either (generate if new identities required for those participants, or if existing identity crypto already created by your Certificate of Authority issuer, then you can use existing and create card using those certificates) - see 'Gaining access to a business network' [here](https://hyperledger.github.io/composer/latest/playground/id-cards-playground) for more info. See an example of requesting certificates from CA issue via CLI in a multi-org example here -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=sFTpMzKFbZA4KJPk3) @mahoney1 I went to the last node version(v8.11.3) and I still get the same error when trying to retrieve a card from the local wallet. This is only happening within a Client API application. The composer-cli tools work fine
is @returns feature in transaction function not released yet?
Hi Guys
can any one explain how to issue identities through composer-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=7uorZXWfmA5HFvcfw) @Pranoti It was part of the v0.19.12 release https://github.com/hyperledger/composer/releases
okay
[ ](https://chat.hyperledger.org/channel/composer?msg=Hqa3bWfXeFTg8cWCo) @sureshtedla You should be able to make a POST request to /system/identities/issue with data in this format:
```
{
"participant": "org.acme.mynetwork.Trader#TRADER3",
"userID": "thatcher",
"options": {}
}
```
okk
[ ](https://chat.hyperledger.org/channel/composer?msg=f9etc3YrTnAqbFFhq) @rthatcher for example in one network admin will be there right, only admin will be able to issue identites how to do this?
[ ](https://chat.hyperledger.org/channel/composer?msg=DrDbiE5uJWTmkN4da) @mahoney1 Hi thanks for your reply. Sorry - my comment wasnt clear but yes this is the solution I am currently using as a workaround. However , the problem is I WAS able to use the desired format as recently as yesterday so I'm not sure about JOINS not being possible . I was able to simply reference the parameter and check if it was "Bob"
[ ](https://chat.hyperledger.org/channel/composer?msg=DrDbiE5uJWTmkN4da) @mahoney1 Hi thanks for your reply. Sorry - my comment wasnt clear but yes this is the solution I am currently using as a workaround. However , the problem is I WAS able to use the desired format as recently as yesterday so I'm not sure about JOINS not being possible . I was able to simply reference the parameter and check if it was "Bob"
[ ](https://chat.hyperledger.org/channel/composer?msg=DrDbiE5uJWTmkN4da) @mahoney1 Hi thanks for your reply. Sorry - my comment wasnt clear but yes this is the solution I am currently using as a workaround. However , the problem is I WAS able to use the desired format as recently as yesterday so I'm not sure about JOINS not being possible . I was able to simply reference the parameter and check if it was "Bob" query selectbyOwnersname {
description: "select toys owned by a person "
statement:
SELECT something.Toy
WHERE (_$userparameter== Person.name)
} and i would input "Bob" say
[ ](https://chat.hyperledger.org/channel/composer?msg=DrDbiE5uJWTmkN4da) @mahoney1 Hi thanks for your reply. Sorry - my comment wasnt clear but yes this is the solution I am currently using as a workaround. However , the problem is I WAS able to use the desired format as recently as yesterday so I'm not sure about JOINS not being possible . I was able to simply reference the parameter and check if it was "Bob"```
query selectbyOwnersname {
description: "select toys owned by a person "
statement:
SELECT something.Toy
WHERE (_$userparameter== Person.name)
} and i would input "Bob" say
```
[ ](https://chat.hyperledger.org/channel/composer?msg=u3EZQfnfnQvLbyhPe) @sureshtedla - the Network Admin can Issue new Identities - if you need another user to issue Identities, you need to add it as an option when you create their identity, so the example now includes the option :-)
```
{
"participant": "org.acme.mynetwork.Trader#TRADER3",
"userID": "thatcher",
"options": { "issuer" : true }
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=n436SZmTfpvgWFhbh) @rthatcher Thanks @rthatcher can you explain how create cards and issue identities through rest?
[ ](https://chat.hyperledger.org/channel/composer?msg=n436SZmTfpvgWFhbh) @rthatcher Thanks @rthatcher can you explain how admin create cards and issue identities through rest?
@uber.twin is your application using an old (16.6) client (Fabric 1.0) ? Similar errors seen in this S/O relating to playground -> https://stackoverflow.com/questions/51298238/facing-issue-with-hyperledger-playground-tutorial - like you say, current, 0.19.x (Fabric 1.1) works fine.
[ ](https://chat.hyperledger.org/channel/composer?msg=L5uaG3ZrEXqme3NDy) and how to generate certificates for new participants?
[ ](https://chat.hyperledger.org/channel/composer?msg=cAuJS2KYacBgDaP4T) @sureshtedla When you Issue the Identity a Card is created and that card contains a one-time secret. You import that card (either on the CLI or on the REST server into a wallet) and the first time the card is used the Certificates are downloaded into the Wallet and the one-time secret becomes invalid. (You should then delete the .card file as it contains only the expired secret. If you need to 'move' or backup or transfer the new card with the certificates you should export it to a new .card file)
hi all - if you're still getting 'Error: could not get any sample networks" you can use an alternative URL for Playground that avoids this -> try https://composer-playground-unstable.mybluemix.net/ - for local installs - use ``npm install --global composer-playground@unstable` to install playground that will be able to pull the samples - cheers
HI team. I am trying to deploy a .bna into fabric 1.1 but I am getting a timout after execute the composer network install command. Do you know how to fix it ?
[ ](https://chat.hyperledger.org/channel/composer?msg=NpKBGnuaqbBa2hNLm) @MarioHF try again
[ ](https://chat.hyperledger.org/channel/composer?msg=4yKG7PAR4wiJhsq6H) again enter the same command
What is the message from the `composer network install` ? or do you mean a TIMEOUT on a `network start`? do you see a REQUEST_TIMEOUT ? If so - see the 'REQUEST_TIMEOUT' section (scroll down) of https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues also see item 2 of the ANSWER here -> https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer/49758354#49758354
Is it a local install or in a cloud environment? Are you following a tutorial? What is the message from the `composer network install` ? or do you mean a TIMEOUT on a `network start`? do you see a REQUEST_TIMEOUT ? If so - see the 'REQUEST_TIMEOUT' section (scroll down) of https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues also see item 2 of the ANSWER here -> https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer/49758354#49758354
@MarioHF Is it a local install or in a cloud environment? Are you following a tutorial? What is the message from the `composer network install` ? or do you mean a TIMEOUT on a `network start`? do you see a REQUEST_TIMEOUT ? If so - see the 'REQUEST_TIMEOUT' section (scroll down) of https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues also see item 2 of the ANSWER here -> https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer/49758354#49758354
[ ](https://chat.hyperledger.org/channel/composer?msg=zbd3LvtnFRNh6jiMc) @mahoney1 HI @mahoney1 It is local install. I followed the tutorial but I am using my own network. I am getting the REQUEST_TIMOUT.
Hi I get the following error when I try to connect from `admin` card to my network .... Error is `Error: Error trying to ping. SyntaxError: Unexpected end of JSON input`
Could anyone help me what I am missing up
?
I try to deploy `.bna` in `latest` image of fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=tjuGN7r6v82XktL4R) @hyper-sunder HI , Check your connection profile file. Probably the JSON was not well constructed.
should I check the `connection.json` file which is create in `.composer` folder?
@MarioHF
`~/.composer`
Am in need of another help too....... When I try to connect my fabric network via `fabric-explorer` i get the following error
```
default database: `/var/db/locate.database' or $LOCATE_PATH
postgres://hppoc:password@127.0.0.1:5432/fabricexplorer
E0720 22:26:44.463950000 140736295437120 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number.
error: [client-utils.js]: sendPeersProposal - Promise is rejected: Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/Users/sunder/BLOCK-CHAIN/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/sunder/BLOCK-CHAIN/blockchain-explorer/node_modules/grpc/src/client.js:583:15
error: [Client.js]: Failed Channels Query. Error: Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/Users/sunder/BLOCK-CHAIN/blockchain-explorer/node_modules/grpc/src/client.js:64:15)
at /Users/sunder/BLOCK-CHAIN/blockchain-explorer/node_modules/grpc/src/client.js:583:15
(node:7542) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'forEach' of undefined
at Platform.setChannels (/Users/sunder/BLOCK-CHAIN/blockchain-explorer/app/platform/fabric/Platform.js:188:26)
at
`fabric-network` mean the network which I brought up for `composer`
want to connect `composer` and `explorer`
any help please??????
[ ](https://chat.hyperledger.org/channel/composer?msg=3SjugyhgPFiQFC38D) @hyper-sunder Yes
@MarioHF thanks . i shall check it
@hyper-sunder see this SO answer for integrating the two -> https://stackoverflow.com/questions/51020162/how-to-integrate-hyperledger-composer-business-network-with-hyperledger-explorer
@mahoney1 thanks . I followed the same.
However, let me go through once again.
@MarioHF Could you please help me on the following ???? Here do paste content from `connection.json`
```
{"name":"hlfv1","x-type":"hlfv1","x-commitTimeout":300,"version":"1.0.0","client":{"organization":"Org1","connection":{"timeout":{"peer":{"endorser":"300","eventHub":"300","eventReg":"300"},"orderer":"300"}}},"channels":{"composerchannel":{"orderers":["orderer.example.com"],"peers":{"peer0.org1.example.com":{}}}},"organizations":{"Org1":{"mspid":"Org1MSP","peers":["peer0.org1.example.com"],"certificateAuthorities":["ca.org1.example.com"]}},"orderers":{"orderer.example.com":{"url":"grpc://localhost:7050"}},"peers":{"peer0.org1.example.com":{"url":"grpc://localhost:7051","eventUrl":"grpc://localhost:7053"}},"certificateAuthorities":{"ca.org1.example.com":{"url":"http://localhost:7054","caName":"ca.org1.example.com"}}
```
but I dont find any files inside `credentials`
[ ](https://chat.hyperledger.org/channel/composer?msg=HWmrHorGSnEb7z4kF) @hyper-sunder } is missing in the end of your JSON
anything else apart from `}`, so that I can correct it at once and try :)
@MarioHF I tried after adding `}`. Still I get the same error when I do the following command `composer network ping --card admin@tutorial-network` or ` try to connect via playgroud`
You need create your card again
@hyper-sunder Composer 0.19.x only works with fabric 1.1. Looks to me like you are trying to use fabric 1.2
Hello, can I deploy composer on azure?
hey guys
I am having an hard time deploying my .bna locally on playground. I can do it successully
through the browser
Screen Shot 2018-07-20 at 9.48.58 AM.png
Has joined the channel.
Has joined the channel.
hi there, I am trying to write some tests for my code following examples here: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js. The test in the example is connecting using admin. How can I connect to the network with another identity? for example, if I want to test a Issuer is submitting the transaction.
hi there, I am trying to write some tests for my code following examples here: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js. The test in the example is connecting using admin. How can I connect to the network with another identity? for example, if I want to test a Issuer is submitting the transaction.
I can create a participant and issue identity for the participant, but not sure how to create an IdCard for this identity and how to connect to network with it. Can anyone help please?
hi there, I am trying to write some tests for my code following examples here: https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/test/Bond.js. The test in the example is connecting to network using admin. How can I connect to the network with another identity? for example, if I want to test a Issuer submitting a transaction.
I can successfully create a participant and issue identity for the participant, but don't know how to create an IdCard for this identity and how to connect to network with it. Can anyone help please?
[ ](https://chat.hyperledger.org/channel/composer?msg=XYncwyCKYayFXAbYf) @davidkel Thanks a lot. Let me use `1.1` version
I have creted a fabric hyperledger network over the aws using the yaml files given in the build you r first network tutorial of Hyperledger fabric and then installled composer rest server on top of it to create ledgers.. can this be used as is for production environment or something more needs to be done? I mean do i need something different for CA server or orderer or peer networks or can the default setup that comes from the hyperledger fabric be used directly.
`composer network ping -c departmentTwo`
This command results in
```
Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: AccessException: Participant 'com.algorythmix.base.Department#Department Two' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#chips@0.2.0'
Command failed
```
Even though i got this in my permissions file
```
rule Default {
description: "Allow all participants access to all resources"
participant: "com.algorythmix.base.Department"
operation: ALL
resource: "**"
action: ALLOW
}
```
Has joined the channel.
any solution
any solution
Has joined the channel.
Hi guys, had a question. I followed the basic tutorial on Fabric 1.1, composer 0.19.11.
Once I do `composer network ping -c admin@my-network` and go to the `.composer` directory and access the card folder for `admin@my-network`, I noticed the credentials folder is actually empty. Shouldn't certiifcates be generated and shown there?
Hi guys, Error: could not get any sample networks on web composer playground.
@eaazumah see https://stackoverflow.com/questions/51453870/hyperledger-composer-sample-networks-not-available
[ ](https://chat.hyperledger.org/channel/composer?msg=iEZb8EAt7JELjLzkQ) @davidkel Thanks a lot @davidkel
```
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
After the first ACL is defined, why is the 2nd one needed? Wont the first grant complete access as it is
Has joined the channel.
Hi, I am trying to create a poc for a business network for a client. As always it involves creating assets participant and doing transactions which effect those assets. I need to know how I can find the data and the blocks details? I need to get the previous and current hash of blocks if that concept exists in Hyperledger?
@SangeetAgarwal https://github.com/hyperledger/blockchain-explorer and https://hyperledger.github.io/composer/latest/api/client-historian will be enough to show all the details :)
Has joined the channel.
Hi when will composer be available for windows?
Or how can i get composer working on a windows 7 pc? - do I download ubuntu desktop?
@Denisscott no plan to officially support windows, you you have a choice of using a hypervisor such as virtualbox, hyper-v, vmware and installing ubuntu into it, or you could take a look at https://davidkel.github.io/docs/Windows/Intro.html and see what approach works best for you. As it's not supported there's no guarantee it will continue to work
Has joined the channel.
Hey all, had a question, what are the trade-offs of writing the smart contract in Golang vs In Javascript? Is there any advantage of either of them? I can see that Composer has a higher level language which is easier to understand, but then why write smart contracts in Golang at all?
On running `composer archive create -t dir -n .` , the `jquery.min.js` is being included in the chaincode `.bna` file. Anyone faced similar issue?
@rishabh1102 It was originally only written in `Go`. Javascript support came very recently.
so for a long time (think almost a year) javascript features were very limited compared to `Go`. But now that is not the case at all. Although it is interesting to note, when a new feature is added, such as private data in Fabric 1.2. It is first supported in `Go` and then after a bit in `composer` and `javascript`
```
(node:24624) UnhandledPromiseRejectionWarning: Error: Error trying invoke business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 8 RESOURCE_EXHAUSTED: received trailing metadata size exceeds limit
at HLFConnection.invokeChainCode (/home/varun/Algorythmix/Core-Projects/chips-data-exchange-framework/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:999:30)
at
Has joined the channel.
Has joined the channel.
Anyone here worked on "Banana Man" exercise of "Global Citizen Challenge" on IBM Coders website?
Hi, does composer support multichannel support? I need transactions to be posted to specific channel and we are using composer rest api to post transactions currently
hyperledger/composer-playground doesn't have a port for s390x, right?
[ ](https://chat.hyperledger.org/channel/composer?msg=DEDH3nEPA5pnQHuPn) @RocMax Thanks @RocMax . I did follow the same, but not sure if i'm missing anything. i followed the as in the developer tutorial for installing and starting the network. any one has any idea?
Has joined the channel.
hi All, Curious to know how does Endorser, Peer and orderer node work when using “composer”? do we have any configuration for these in composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=ShLRWaibWBRGdM64J) @NareshPai We need to configure this in connection profile file
"peers": {
"peer0.org1.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
Hello, can you help me with this : https://stackoverflow.com/questions/51302570/hyperledger-composer-post-on-wallet-api-return-error-cant-find-end-of-centra
@Jerry123 have you ran ./startFabric.sh
@Jerry123 nvm.
[ ](https://chat.hyperledger.org/channel/composer?msg=tdCKnCzu3mWekxhmQ) @NareshPai How did you create the Network Admin Card? Are you using the development fabric provided by fabric-dev-servers, or a custom Fabric? Does that same card work to execute a `composer network list` or `composer network ping` ?
Hey guys. I am working on PoC with Hyperledger Composer. I have seen that some guys when they restart the REST Server loose the data. And also when we develop a new version of a .bna FIle and import it, how can the data in the blockchain stay? When the farbic is restarted or the Virtual Machine crashes-restarts how can the data stay? Thanks in advance!
[ ](https://chat.hyperledger.org/channel/composer?msg=qfwi3STTPyjG9EgLw) @arunmitteam Composer connects to Fabric using a connection profile (a connection.json file) which specifies a single channel.
Each Business Network runs on a single channel (if installed to a 2nd channel it is a separate network.)
So composer can Post to *any* channel (access permitting), but each card (connection profile) can only connect to a *single channel*.
It is possible to connect to a different Business Network (on a different channel) but it is a little complicated and does have some restrictions - but there is a tutorial for it:
https://hyperledger.github.io/composer/latest/tutorials/invoke-composer-network
Hi guys, I am trying to authenticate my `composer-reset-server` with `jwt`. I followed the following blog to enable it (https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn). But I getting the following error when try to run it
```
[2018-07-23 08:30:16] PM2 log: Launching in no daemon mode
[2018-07-23 08:30:16] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-07-23 08:30:16] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
(node:15) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Connection fails: Error: Error trying to ping. Error: REQUEST_TIMEOUT
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: REQUEST_TIMEOUT
Error: Error trying to ping. Error: REQUEST_TIMEOUT
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:790:34)
at
Can anyone help me please???
[ ](https://chat.hyperledger.org/channel/composer?msg=vQ4j6c9ixRkrPxdA3) @Zeljko Milinovic - I think there are 3 issues for you here:
1. startFabric.sh - this script not only starts Fabric, but it destroys your existing Fabric - see this stack overflow Q/A for more information: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
2. 'losing data' when modifying the BNA - if you change the definition of an Asset or Participant with an extra field you lose visibility of the data for that Asset or Participant unless you set the new field as Optional - see this link in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration
3. Persisting data outside Fabric Containers - by default the Ledger and State database are stored within Docker Containers. Hoiwever you can use Docker Volume mapping to have the data stored outside the containers. There is a reference to it here for the CouchDB containers and I would think other references in the Fabric documentation: http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html?highlight=persist%20volume#a-note-on-data-persistence
[ ](https://chat.hyperledger.org/channel/composer?msg=pj9cPNNeryxyJodWh) @hyper-sunder It looks like you are running the Composer-rest-server in a container, and it looks like the Card you are using can't connect to the Fabric - is the Fabric running? What addresses do you have for the URLs for the Fabric in the connection.json for the card? and can they be seen from inside the rest server container?
@rthatcher thanks for response. Here the connection.json
```
{
"name": "hlfv1",
"x-type": "hlfv1",
"x-commitTimeout": 300,
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},
"channels": {
"composerchannel": {
"orderers": [
"orderer.example.com"
],
"peers": {
"peer0.org1.example.com": {}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
}
},
"orderers": {
"orderer.example.com": {
"url": "grpc://${HOST}:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://${HOST}:7051",
"eventUrl": "grpc://${HOST}:7053"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://${HOST}:7054",
"caName": "ca.org1.example.com"
}
}
}
```
Yes. Fabric is running in docker container
@hyper-sunder - I assume that the address name/number you are using for `${HOST}` are accessible from within the REST container?
A couple of suggestions for trouble shooting
- using the same card can you start the REST server successfully (without jwt) on the host machine (not a container).
- since your rest server container is running (although the rest server process is failing) you could use `docker exec` to attach to the container and use `wget` within the container to test some connectivity.
@rthatcher thanks for your suggestions. Let me follow it up. Regarding with 2#, I would like to add authentication for all rest endpoints (dont want to use github oAuth). So that I am trying to integrate with `jwt`
[ ](https://chat.hyperledger.org/channel/composer?msg=yu8L9vD76cX5cqmH8) @hyper-sunder regarding the #2 suggestion - I wasn't clear - I suggest using wget to hit the the other Fabric containers to prove connectivity from the REST container - a url similar to this might help http://${MY-CA-HOST}:7054/api/v1/cainfo
@rthatcher Extremely sorry I talked about #1.
let me try whether fabric network is reachable in my rest server container
Has joined the channel.
Hello, I have enabled multiple user mode for the REST server and followed the steps described in the URL https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn and it works well. I have created two participants ( using network admin card and issued ids ) using composer-rest-server api. I have imported test1 card which is generated after issuing ID and it works fine. Now i opened second browser(http://localhost:3000/explorer) , authenticated by jwt and called /wallet/import/ with card2, but i am getting data for test1 participant according to ACL definitions. The problem is, when i import wallet using new user, the card gets added to the 1st user's wallet, instead of creating new wallet, can anyone help??
Hello, I have enabled multiple user mode for the REST server and followed the steps described in the URL https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn and it works well. I have created two participants ( using network admin card and issued ids ) using composer-rest-server api. I have imported test1 card which is generated after issuing ID and it works fine. Now i opened second browser(http://localhost:3000/explorer) , authenticated by jwt and called /wallet/import/ with card2, but i am getting data for test1 participant according to ACL definitions. The problem is, when i import wallet using new user, the card gets added to the 1st user's wallet, instead of creating new wallet, can anyone help?? [MY NETWORK ADMIN CARD IS SERVED ON PORT 3000(SINGLE_USER), WHICH I AM USING TO ISSUE IDs, AND LOGIN/IMPORTING_CARD IS BEING DONE FROM PORT 3001(MULTI_USER) ]
@rthatcher able to start my rest server. the problem was `${HOST}` take the localhost instead of actual fabric network. thanks
hi all
can we able to create token using hyperledger
pls assist
me on this
@rthatcher which is the best perf tool for composer? While using calliper it has to find network.json which i cant relate to which should i point it is it bna or config..
@prtk418 could you please help me how do you authenticate your restendpoint? I have followed the same blog. I was success in running server. But dont know how to login. Could you please help me?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=DF6TdH9RmbNkQK7nL) @prtk418 - Not quite sure of your workflow here, but to confirm the way it works, to get a new Wallet for a new user (to import a different card) - you need to login to jwt with a different ID - the 'key value' for the storage of wallets is the UserID that is Authenticated with passport (jwt), and this 'key value' and the wallets are stored on Mongo DB typically. (When testing I use a different browser for each Passport (jwt) user, and I always use private/incognito windows so that there are no cached values.)
hello, i have created bussiness network admin card and then imported it
and now i have deleted it and after that i have again imported it in the wallet store successfully .But now if i try to ping the network it throws error
error is "error": "Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier 'f9e695e420da2863929cf8eae7f94e74a83425ac0878e5da35a57558b2c1ecf7', has not been registered"
Hi @rthatcher i need to run some benchmark tests on my hyperledger instance. I am trying to use hyperledger Caliper but am facing some difficulties (Failed at the caliper@0.1.0 nyc script.) ... Would u happen to any other tool i could use for performance testing/benchmaring on hyperledger ?
@rthatcher actually i just found out that, for every login i do, userId key in the cookie has always the same value, can you help me with that?
@rthatcher actually i just found out that, for every login i do( even with different user names ), userId key in the cookie has always the same value, can you help me with that?
[ ](https://chat.hyperledger.org/channel/composer?msg=Jh4N6qjMAHyZyKSJY) @HimanshuQuillhash I think the issue here is to do with the One-time secret ... when a card is first created it has a One-time secret, and the first time the card is used the keys/certificates are downloaded and the One-time secret is invalidated. So if you try to re-import a card that has an expired/invalidated secret it won't work.
(The trick is to Export the card to a new file after it has been used for the first time - thus including the certificates)
[ ](https://chat.hyperledger.org/channel/composer?msg=iXWhGdjnE57GNQYvd) @prtk418 Different Browsers - with Private/Incognito window should help with that.
[ ](https://chat.hyperledger.org/channel/composer?msg=azn8GXXc6ifqj4kr3) @ApurvTandon Caliper is the only tool I have heard about, but I have not tested it myself.
@rthatcher but i did try with different browser/incognito , i even tried with different machine on my network, but userId generated is still same
Hi,
I want organisation to have some other master data like bank account etc which are not participant specific rather these are organisation specific. Do I need to create concept for the organisation to be able to add properties in organisation?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=DF6TdH9RmbNkQK7nL) Issue solved, passport-jwt expects "id" claim to generate userId, which i was unaware of, its working fine now :muscle_tone1:
Hi Folks, I am trying to connect a local Composer to a remote Fabric using swarm and when I try to start my network I am receiving:
composer network start --networkName perishable-network --networkVersion 0.2.6-deploy.0 -A admin -S adminpw -c PeerAdmin@fabric-network
Starting business network perishable-network at version 0.2.6-deploy.0
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Post http://unix.sock/containers/create?name=dev-peer0.org1.example.com-perishable-network-0.2.6-deploy.0: dial unix /host/var/run/docker.sock: connect: permission denied
Command failed
Do I need to point my local docker to my remote manager?
Is there any live project built up on Hyperledger fabric/composer (production level), I would like to explore a bit, it will be helpful, kindly share , if anyone knows
[ ](https://chat.hyperledger.org/channel/composer?msg=u6sXekKTNDB2tQ4Ko) @titog I would start by looking in the Docker log of the pee0.org1.example.com container to see if there are more detailed messages
Hi, my ACL condition somehow gets validated twice - once before the transaction and once after my transaction.
Since my transaction is only allowed once, it fails the second time it tries to validate, and the hole transaction is aborted. Any ideas?
@titog - the creation of that new "chaincode container" is partly determined by environment variables defined in the dockercompose.yaml file for the Peers e.g.
CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=composer_default
These env variables should be in the Fabric documentation
[ ](https://chat.hyperledger.org/channel/composer?msg=wnsijTMwLP3vEecwd) @rasmusmilz suggest to post model, ACLs on stack overflow https://stackoverflow.com/questions/tagged/hyperledger-composer. Sounds like after the first update has committed, a condition in your ACL rules prevents a subsequent transaction doing what it previously had authority to do (without seeing any ACLs etc)
Hi guys
In composer-rest-server as a admin how to add ,issue and bind participants through REST
In command line i have seen cmds like add participant , issue identity and bind identity how to do this activities through composer-rest-server?
@cbf @dselman
@waleed
[ ](https://chat.hyperledger.org/channel/composer?msg=u4JQJY8kEzwHWrPQo) @rthatcher Yeah, seems that is related to Docker swarm... trying to figure out why the container creation has been denied
Hey everyone! So I'm working on a Composer project with a generated Angular frontend, and I'm trying to figure out how I can get two instances of the application running simultaneously with different user credentials. I used this tutorial (https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) to set up authentication, and I have it working to where I can import cards on the composer-rest-server, allowing for multiple users. Now I need to figure out how can I have 2 different user credentials with 2 instances of the frontend running simultaneously? Does anybody know how to do this? I need it to implement a request-response type application, where one user creates an asset, and then the other user is notified of the asset creation via some popup/modal.
@rthatcher my variables are there...
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
volumes:
- /var/run/:/host/var/run/
but I am still receiving permission denied.. I think that it is related to swarm
can someone tell me why data disapear after rebooting fabric-dev and bna?
and I can't issue identity , lastday it works well ...... fabric-ca request register failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]
let identity = await businessNetworkConnection.issueIdentity(namespace + '.User#' + userName, userName);
//Import card for identity
await importCardForIdentity(userName, identity);
G'day everybody
Has joined the channel.
hi everyone! I was wondering if anyone knows how to authenticate with both the composer REST server and a client application? Currently I can only get authentication for one or the other (composer environment variables for the server seem to stop my google strategy coded in my app from taking place, however I get logged in to the server & if I just use my client app without the server it works but that defeats the point).
Has joined the channel.
Figured it out I think! Had my redirect url for my COMPOSER_PROVIDERS go to my app's /auth/google which allowed that logic to be run
[ ](https://chat.hyperledger.org/channel/composer?msg=obTAWqL37ty4Yezst) @rthatcher Thanks @rthatcher i deleted the ~/.composer in my local and it started working fine. i had initially followed the same steps in composer documentation. the same card was used for both of them though. not sure if the .composer file got corrupted.
As a followup though, does anyone know how to logout of both a client application and the composer rest server? There is a logout button on the composer rest server page but I don't know how to access it from my app. req.logout() in my app logs out of my app, but not the server. If I manually type in localhost:3000/auth/logout that works but I don't want to have my app redirect to that page as I don't want the user to see the server, any suggestions? My composer rest server is running in a docker container.
[ ](https://chat.hyperledger.org/channel/composer?msg=HEnwJDyJWgjNsB8LC) @mdimovich Hi mdimovich, I have the same question. Are you importing the cards manually through CLI?
Hi, Can please let us know how to use/develop queries using GROUP BY, LIKE constructs in Hyperledger Composer. We are doing development on composer, but see these clauses not supported at https://hyperledger.github.io/composer/latest/reference/query-language. Any pointers, anyone used them with composer?
Hi, Can anyone please let know on how to use/develop queries using GROUP BY, LIKE constructs in Hyperledger Composer. We are doing development on composer, but see these clauses not supported at https://hyperledger.github.io/composer/latest/reference/query-language. Any pointers, anyone used them with composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=QbY2LMx7NM4hjakKB) Any idea on this?
Is there any live project built up on Hyperledger fabric/composer (production level), I would like to explore a bit, it will be helpful, kindly share , if anyone knows
Has joined the channel.
hi
need some help to connect to a business network from node js
using a business network card created and imported to network __
Hi
Is there any solution to search some asset which start with or ends with specific letter? Means just like we do in SQL using 'LIKE' keyword?
Hi guys. Has anyone a solution on how to integrate Active Directory authentification with the REST Server together with the CA Docker Container ?
[ ](https://chat.hyperledger.org/channel/composer?msg=zKMBsMqgdBGkAcam7) @AnithaReddy - Have you seen the composer-sample-applications? https://github.com/hyperledger/composer-sample-applications
- The simplest is the Digital Property App and this particular file in that app shows connections: https://github.com/hyperledger/composer-sample-applications/blob/master/packages/digitalproperty-app/lib/landRegistry.js
[ ](https://chat.hyperledger.org/channel/composer?msg=5o6ec3T3Fp66rqRe7) @Pranoti Unfortunately there is no LIKE operator for the Queries in Composer. I think you will have to retrieve a larger result set and post process in your code.
[ ](https://chat.hyperledger.org/channel/composer?msg=dzLZe5sdiu2SJMg43) @Anshulmittal If you create a concept and then add this to your Participant, you will still have to populate the values in the concept for all the participants, so this might not be what you want. You could create a Participant Class for an Organisation, and then create a Relationship field in the Participant to point to the Organisation. (Assume you have seen the modelling language doc: https://hyperledger.github.io/composer/latest/reference/cto_language.html and the sample models: https://github.com/hyperledger/composer-sample-models/tree/master/packages )
[ ](https://chat.hyperledger.org/channel/composer?msg=tsp8LsD9Zs5uyf9qD) @davidhu Are you running the startFabric.sh script? If so, please see this Q/A on Stack Overflow: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
@rthatcher when we do `ID Registry` in playground for participant, it create `cards` in `.composer` folder. The `metadata.json` contain few information about the user for instance `{"version":1,"userName":"two","enrollmentSecret":"DdxsmeIqFhpM","businessNetwork":"mynetwork"}`. I wonder where does entrollmentSecret` is used in composer-rest endpoint? Any idea?
[ ](https://chat.hyperledger.org/channel/composer?msg=Tv2cShEQfSct2BbwM) @hyper-sunder The enrollmentSecret is a One-Time secret created for the card when the identity is issued and the card created. When the card is used for the first time, certificates and keys are downloaded, and the One-Time secret is invalidated (although it is not removed from the metadata file.) You can experiment with the CLI tool `composer card list -c
@rthatcher thanks a lot for making me to understand
Hi, I have an asset with 6 attributes. I create 6000 assets and when I use the rest-API to have all assets, the rest-API put 10 secondes to send me the result. It's normal or not ? And if it's not normal, how can i optimize this ? Because, in my projet, I need to have 20 millions assets so I can't wait 5 or 10 hours to get all assets.
[ ](https://chat.hyperledger.org/channel/composer?msg=BgP3ELetDq5FTr98J) @rthatcher yea thanks @rthatcher can i even do it with exposed api's by composer-rest-sever whats the difference
[ ](https://chat.hyperledger.org/channel/composer?msg=rpYwwXzD3GLizuimK) @rthatcher Sorry.... Last question on this. I created a initial PeerAdmin using the sample given in the composer documentation. So card is created in the name of `PeerAdmin@hlfv1`. In the folder I could see folder called `credentials` where `crets` and `key` are found. When I create another card. I dont see `crets` and `key` under `credentials` folder. Why? I had executed `composer card list -c
@rthatcher yes, and i found two ways to solve it, i'll check your post, thank you all the same
Hi, I'm facing an issue when I'm trying to save a relationship, that is identifier of my one participant contains a special character ' > ' and while creating another asset when I'm trying to save a relationship to this participant, it automatically changes this character(>) to it's encoded URI component(%3E).
Can anybody give me a possible solution apart from changing the id of participant?
Hello guys, i did set up multi user composer rest server with jwt as authentication method, my login/registration flow is somthing like this => NetworkAdmin creates participants and issues ID from his dashboard and the generated card file is then sent to participant , now the participant inputs new username & password [ which are used to generate jwt token ] and then after generation of access_token [ by hitting successCallback URL ] , the participant uploads the card file, and hence new user wallet is created.
Hello guys, i did set up multi user composer rest server with jwt as authentication method, my login/registration flow is somthing like this => NetworkAdmin creates participants and issues ID from his dashboard and the generated card file is then sent to participant , now the participant inputs new username & password [ which are used to generate jwt token ] and then after generation of access_token [ by hitting successCallback URL ] , the participant uploads the card file, and hence new user wallet is created.
Now my questions:
when i try to input same username & password, it doesn't require card again, so can i abstract this part, like when a user tries to login again, he don't have to upload the card again?
next question is that , when i try to use different username/password and upload same card, again the last created wallet is accessed, but i want it be accessed by only first created username, so how to achieve it?
Hello guys, i did set up multi user composer rest server with jwt as authentication method, my login/registration flow is somthing like this => NetworkAdmin creates participants and issues ID from his dashboard and the generated card file is then sent to participant , now the participant inputs new username & password [ which are used to generate jwt token ] and then after generation of access_token [ by hitting successCallback URL ] , the participant uploads the card file, and hence new user wallet is created.
Now my questions:
when i try to input same username & password, it doesn't require card again, so can i abstract this part, like when a user tries to login again, he don't have to upload the card again?
next question is that , when i try to use different username/password and upload same card, again the last created wallet is accessed, but i want it to be accessed by only first created username, so how to achieve it?
Hello guys, i did set up multi user composer rest server with jwt as authentication method, my login/registration flow is somthing like this => NetworkAdmin creates participants and issues ID from his dashboard and the generated card file is then sent to participant , now the participant inputs new username & password [ which are used to generate jwt token ] and then after generation of access_token [ by hitting successCallback URL ] , the participant uploads the card file, and hence new user wallet is created.
Now my questions:
when i try to input same username & password, it doesn't require card again, so can i abstract this part, like when a user tries to login again, he don't have to upload the card again?
next question is that , when i try to use different username/password and upload same card, again the last created wallet is accessed, but i want it to be accessed by only first created username, so how to achieve it?
final ques, will my flow be ok to be used in production?
@hyper-sunder - try this folder ` ~/.composer/client-data/two@mynetwork/ `
[ ](https://chat.hyperledger.org/channel/composer?msg=A29GcRYzrMdqKzGFk) @AnithaReddy Yes you can use the REST API or the Javascript API - you will ultimately get the same results. It is really a choice for you - the REST API calls are probably easier to use, but maybe more flexibility in the Javascript API.
@rthatcher Got it. Superb :) thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=an5Kf7w478SZSeNPw) @Dauphinous there are no published performance figures. You could try using Hyperledger Caliper to do some load testing.
@rthatcher Thank you
@prtk418 on upload of the card (presumably from your client app, eg angular or simlar) - why can't you check the user's card (for the presence of the card) in the wallet ? Surely this answers 1 and 2 (which can also be solved by chronological sort if there are multiple wallets stored) - maybe better to post on Stack Overflow to articulate what you're trying to achieve.
[ ](https://chat.hyperledger.org/channel/composer?msg=KrEt3X9M8jth6XPFC) @Zeljko Milinovic there are passport stragegies for ActiveDirectory and for LDAP so you should be able to use one of those for authenticating the REST server. With regard to the CA server I think you can use an 'external' LDAP server to store the Certificates, but that is a question for the #fabric-ca channel :-)
@mahoney1 oh yeah 1 and 2 solved, thanks, just tell me is this flow ok to be used in production?
I have created composer rest server for the perishable-network example with OAuth. I have also imported the network admin card through cli and tried ping the network and its working fine. But as soon as i import the card from the api to authenticate it says ERROR: The current identity, with the name 'admin' and the identifier 'XXXXXX'', has not been registered . Can you please help me to solve this issue.
And now if I ping the network from cli , It says The current identity, with the name 'admin' and the identifier 'XXXXXX'', has not been registered . in the CLI to
[ ](https://chat.hyperledger.org/channel/composer?msg=DdSEAW4NFkiBkncnM) @rthatcher can you please look into this?
Has joined the channel.
user@ubuntu:~/perishable-network/dist$ composer identity list -c admin@perishable-network
✖ List all identities in the business network
Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '82256c01a52fae9d37089b63bcdbc0b7da1e59bead4747a6332b581e3658cd7b', has not been registered
I had that admin card imported before
$class: org.hyperledger.composer.system.Identity
identityId: d3d59b19dea989d84089c5f4fc352873557b29d394aaa8153d0d5c1111864bdb
name: admin
issuer: ac3dbcbe135ba48b29f97665bb103f8260c38d3872473e584314392797c595f3
certificate:
"""
-----BEGIN CERTIFICATE-----
MIICATCCAaigAwIBAgIUP4TmZBGJnYgcGCr6p0zA9SXIHyowCgYIKoZIzj0EAwIw
czELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNh
biBGcmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMT
E2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTgwNzI0MDk0MzAwWhcNMTkwNzI0MDk0
ODAwWjAhMQ8wDQYDVQQLEwZjbGllbnQxDjAMBgNVBAMTBWFkbWluMFkwEwYHKoZI
zj0CAQYIKoZIzj0DAQcDQgAEe+sVXQtmRpu3GdfZjUhx6z3KH0BrXDnVhSyXEvZw
r+NDjhjs+GyX+xyQvF1lHag2G0ynpaoGhupeyzDukgl5m6NsMGowDgYDVR0PAQH/
BAQDAgeAMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFBjERtrs6dflsdE1ICVXAFLB
jpEjMCsGA1UdIwQkMCKAIBmrZau7BIB9rRLkwKmqpmSecIaOOr0CF6Mi2J5H4aau
MAoGCCqGSM49BAMCA0cAMEQCIEBhR4MhcjPCSv3h9s5NdE5TsBKRML6gprSXlRF5
vUMGAiBe+2v5TG0inx4m0dvgI2BxhfWAw1BCoumhxBxgOnRWjg==
-----END CERTIFICATE-----
"""
state: ACTIVATED
participant: resource:org.hyperledger.composer.system.NetworkAdmin#admin
$class: org.hyperledger.composer.system.Identity
identityId: d3d59b19dea989d84089c5f4fc352873557b29d394aaa8153d0d5c1111864bdb
name: admin
issuer: ac3dbcbe135ba48b29f97665bb103f8260c38d3872473e584314392797c595f3
certificate:
"""
-----BEGIN CERTIFICATE-----
XXXXX
-----END CERTIFICATE-----
"""
state: ACTIVATED
participant: resource:org.hyperledger.composer.system.NetworkAdmin#admin
@pawanjois They may have the same name, but they aren't the same identity. One has an identifier of
`d3d59b19dea989d84089c5f4fc352873557b29d394aaa8153d0d5c1111864bdb`, while the other has an identifier of `82256c01a52fae9d37089b63bcdbc0b7da1e59bead4747a6332b581e3658cd7b`.
So how do i enroll the users
through api(wallet)
Or how do i import the network cards of the admin users who are registered to my ca
Or how do i import the network cards of the admin users who are registered to my ca through CLI
Or how do i import the network cards through API(Wallet(POST)) of the admin users who are registered to my Fabric CA through CLI
@pawanjois Your business network defines who can perform certain admin capabilities I assume and when you started it you would have bound an identity to that participant. If you have new users in a fabric-ca-server, you can enroll those users yourself to get their identity (ie cert and private key) you then would bind that public cert to a participant using the identity bind api and build a card file from those credentials and import that card into the card store
@pawanjois Your business network defines who can perform certain admin capabilities I assume and when you started it you would have bound an identity to that participant. If you have new users in a fabric-ca-server, you can enroll those users yourself (perhaps by using the fabric-ca-client CLI or by invoking the node-sdk api from the getNativeApi call on the composer sdk to get their identity (ie cert and private key) you then would bind that public cert to a participant using the identity bind api and build a card file from those credentials and import that card into the card store
@pawanjois if you imported the card from the CLI, and used it (which you've done) then you should export THAT card (to disk) and import that to the Wallet, in your REST API - it contains the cert/key etc. The other card (.card file) that you tried to import (above) probably only has an enrolment secret so it would seem you're trying to register a new 'admin'
@pawanjois if you imported the card from the CLI, and used it (which you've done) then you should export THAT card (to disk) and import that to the Wallet, in your REST API - it contains the cert/key etc. The other card (.card file) that you tried to import (above) probably only has an enrolment secret so it would seem you're trying to register a new 'admin' (again)
@pawanjois Composer does do automatic enrollment if a card only contains a userid and secret as well, however a lot of problems occur if you try to share exported cards that only have secrets in them and haven't been enrolled (ie no cert or key). If you have a card file like this that has never been used before, import it into a card store and delete the card file and ensure you use the card once to get automatic enrollment to occur. Personally I would try to not use the automatic enrollment of composer and manage the enrollment process myself
Thanks for the response @mahoney1 , @davidkel . Will look into it
hi all, my participant is BOUND PARTICIPANT NOT FOUND in the network.what shell i do now?
[ ](https://chat.hyperledger.org/channel/composer?msg=g6G84paoeP3FRYTH5) ok.i solved myself
Hello, can you help me with this issue : https://stackoverflow.com/questions/51302570/hyperledger-composer-post-on-wallet-api-return-error-cant-find-end-of-centra ?
hey People i was following this tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html
after following all the steps to the rest server. I thought of making a Node sdk app but npm install gives " found 153 vulnerabilities (88 low, 48 moderate, 17 high) "
how to solve it?
Hello, I am getting an issue while running the commands using composer like *401 unauthorized*. Please help me out on this
What is the best way to make an application?
1- Node SDK
2- Rest Services
3- Yeoman Angular app Generator.
Thanks for your time!
Has joined the channel.
fyi all hi all - just to advise that the next Composer Community call will be on Thursday 2nd August (UTC 4pm (5pm UK, ET 12noon)), an agenda will be posted nearer the time on the [Wiki page](https://github.com/hyperledger/composer/wiki/NextCommunityCall)
@mmick a lot would depend on your application architecture, but others here (and indeed they have via blogs etc) can contribute - but [this page](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#node-app) may help https://hyperledger.github.io/composer/latest/applications/applications-index
@mmick a lot would depend on your application architecture, but others here (and indeed they have [via blogs](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#node-app) etc) can contribute - but this page may help https://hyperledger.github.io/composer/latest/applications/applications-index
Hello, I am following the link * https://www.ibm.com/developerworks/cloud/library/cl-deploy-blockchain-starter-plan-network/index.html* as a reference for deploying the .bna file into the IBM cloud blockchain service. When I am trying to get the rest server by pushing the app into bluemix it shows like as follows.
Getting app info...
Creating app with these attributes...
+ name: my-blockchain-sample
+ docker image: ibmblockchain/composer-rest-server:0.19.5
+ command: composer-rest-server -c admin@my-basic-sample -n never -w true
+ instances: 1
+ memory: 512M
routes:
+ my-blockchain-sample.eu-gb.mybluemix.net
Creating app my-blockchain-sample...
Mapping routes...
name: my-blockchain-sample
requested state: stopped
instances: 0/1
usage: 512M x 1 instances
routes: my-blockchain-sample.eu-gb.mybluemix.net
last uploaded: Tue 24 Jul 21:01:01 IST 2018
stack: cflinuxfs2
docker image: ibmblockchain/composer-rest-server:0.19.5
start command: composer-rest-server -c admin@my-basic-sample -n never -w true
There are no running instances of this app.
Please help me out on this.
Has joined the channel.
@MasthanbeeShaik - couple of things to check ...
Can you look at the Docker Log for the container of the REST server? and share any errors here.
Can you see the Business Network cards you have created? ` composer card list `
Can you successfully ping the Business Network with the card you are going to use for the REST server? ` composer network ping -c admin@my-basic-sample `
Did you have the NODE_CONFIG environment variable correctly set before you created the container?
[ ](https://chat.hyperledger.org/channel/composer?msg=YhbRiNgfzBB3wCo9h) @kathunsinger @kathunsinger I'm importing the cards through the composer-rest-server using import wallet
I am running composer-rest-server in Authentication and multi user mode I know how to add , issue and bind identities to new participants with help of terminal window but i don't know how to do this through composer-rest-server? can any one know how to do this?
[ ](https://chat.hyperledger.org/channel/composer?msg=oBM3pcEnd7JucNpQ4) @rthatcher @rthatcher I have checked the list of cards and able to ping the business network and configured the NODE_CONFIG environment. Here is the logs that shows that card not found. Here I am attaching the screenshots. Please have a look. Thank you.
e1.png
e2.png
e3.png
Has joined the channel.
Hi, I want to write a script to listen to events on the blockchain from a remote machine. Can please help? I already did the composer tutorial and know how to publish an event. I just don't know how to listen to the event from a remote machine.
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=PZsKStgvvSkEw3KDv) @sureshtedla https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc this might help to get you started
Hi folks I am trying to start a composer network on a TLS fabric environment and I am receiving:
⠋ Starting business network definition. This may take a minute...E0724 17:02:38.185649000 140735882027904 ssl_transport_security.cc:599] Could not load any root certificate.
E0724 17:02:38.185702000 140735882027904 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0724 17:02:38.185723000 140735882027904 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0724 17:02:38.185731000 140735882027904 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'orderer0.example.com:7050'
E0724 17:02:38.185738000 140735882027904 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
to create my connection.json I have used:
crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt
and
crypto-config/ordererOrganizations/example.com/orderers/orderer0.example.com/tls/ca.crt
Are these the right files to use?
@quangle Have a look here - https://hyperledger.github.io/composer/latest/applications/subscribing-to-events - Basically you set up your application to connect to the business network (using the card with the connection details to your Hyperledger Fabric setup), then you will receive all published events.
TypeError: Cannot read property of undefined
composer playground TypeError: Cannot read property of undefined
Has joined the channel.
Hello everyone. I'm Brock and I"m working to implement Fabric and Composer at my work (Trucking Company)
Has joined the channel.
Has joined the channel.
Hi, I need your help. I want to know how to access hyperledger composer with a different machine, can you help me?
[ ](https://chat.hyperledger.org/channel/composer?msg=MKGc748trAbnj4y6c) @quangle Hi quangle, you can listen for events using a websocket. Have a websocket.onmessage function listening and then when you parse the message you can handle the events based on what class they are. Example in the websocket.onmessage function: if (message.$class == 'org.example.network.ExampleTransaction') { doStuff()}. This is an example https://github.com/hyperledger/composer-sample-applications/blob/master/packages/vehicle-manufacture-manufacturing/client/app/views/dashboard/dashboard.controller.js
Howdy people
hi, How do i set the endorsing policy in Composer something similiar to one we have in Fabric SDK ?
I have a question about integrating IoT devices into composer business network. Say, I am building a business network that's collecting sales records from POS machines. can a POS machine directly request a transaction via composer REST server? in this case, is the POS machine considered as `participant`?
how can we add a new node in already existing network? it will require scripts for both `fabric` as well as `composer`? I got to know about `first-network` example that covers adding new node to fabric network... but what after that?
[ ](https://chat.hyperledger.org/channel/composer?msg=79Rgre6GN3jEKWrJZ) @Jakeeyturner can we emit events for specific listeners?
[ ](https://chat.hyperledger.org/channel/composer?msg=7PbFyv6nk8YyZhRSc) @NareshPai when you deploy the network you have the option of adding endorsement policy
[ ](https://chat.hyperledger.org/channel/composer?msg=yGxzPem3vBwoPpbk9) @Varun2887 Thanks Varun. Can you please let me know how can i do that. i have not seen it in documentation?
`composer network start -c PeerAdmin@network-n network -V 0.0.3-deploy.32 -o endorsementPolicyFile=/var/usr/endorsement-policy.json `
something like this
Thanks a lot :-)
Hey there,
a conceptual question concerning the REST server: If I use -multiuser=true do you see any use in supplying an authentication through -authentication=true? What actually is the use of supplying just any identity. E.g. what does it help to know some GitHub identity? Is it only to prevent spamming? In this case multiuser would have the same effect, because it requires prviding a BNC, right?
hii ,i am getting timeout error while upgrading the bna file in network
any solution to this
Has joined the channel.
how can i deploy my .bna file to local hyperledger fabric network..?
i tried step 1: composer network install -a dist/airlinev8.bna -c PeerAdmin@hlfv1
step 2 : composer network start -A admin -S adminpw -c PeerAdmin@hlfv1 -f networkadmin.card -n airlinev8 -V 0.0.1
still it gives me this error:
composer-rest-server -c PeerAdmin@hlfv1 -n always -w true
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: No business network has been specified for this connection
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: No business network has been specified for this connection
Error: Error trying to ping. Error: No business network has been specified for this connection
at _checkRuntimeVersions.then.catch (/usr/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:813:34)
at
Error: No business network has been specified for this connection
The current identity, with the name 'admin' and the identifier 'd117c61e8d73871fba2ef3dc081fe8b5e8c2c99e22c408ea800438ffd666a691', is bound to a participant 'resource:org.hyperledger.composer.system.NetworkAdmin#admin' that does not exist
i got this error.
any clue for this or document
thanks in advance.
Has joined the channel.
Hi, I have a multiuser rest server up and running. I have participients created and identity has been assigned to the participient. I have client app which is using the rest server to submit transaction. any user using client app say uses github as auth provider, how i link that authenticated user to the exisitng identity in composer? so that i can do transaction as that particular participient.
Hi, I have a multiuser rest server up and running. I have participients created and identity has been assigned to the participient. I have client app which is using the rest server to submit transaction. any user using client app say uses github as auth provider, how can i link that authenticated user to the exisitng identity in composer? so that i can do transaction as that particular participient.
https://stackoverflow.com/questions/51514297/hyperledger-composer-network-upgrade-timout-error please answer it on stack overflow
[ ](https://chat.hyperledger.org/channel/composer?msg=Q9WHWgeNhfSfnX7vy) @howdyeyey yes, it can be a participant, issued with an identity that represents that PoS m/c posting transactions via REST
Hi everyone.
I have some troubles trying to get data from an external secured API from a Composer transaction. The API is secured through a Keycloak server. The access_token step is done, but I cannot accomplish the request using this key and I get this error:
{"originalStack":"g@http://localhost:8080/polyfills.eb7a9fefe827db0c2516.bundle.js:1:144464\nd.prototype._onFinish/p.onerror@http://localhost:8080/main.1d28ad001464306011bd.bundle.js:1:3799461\nn@http://localhost:8080/polyfills.eb7a9fefe827db0c2516.bundle.js:1:132877\n867/ Function:3:32\ngetPatientData@http://localhost:8080/main.1d28ad001464306011bd.bundle.js line 1 > Function line 3 > eval:691:2\n","zoneAwareStack":"g@http://localhost:8080/polyfills.eb7a9fefe827db0c2516.bundle.js:1:144464\nd.prototype._onFinish/p.onerror@http://localhost:8080/main.1d28ad001464306011bd.bundle.js:1:3799461\nn@http://localhost:8080/polyfills.eb7a9fefe827db0c2516.bundle.js:1:132877\n867/ Function:3:32\ngetPatientData@http://localhost:8080/main.1d28ad001464306011bd.bundle.js line 1 > Function line 3 > eval:691:2\n","stack":"g@http://localhost:8080/polyfills.eb7a9fefe827db0c2516.bundle.js:1:144464\nd.prototype._onFinish/p.onerror@http://localhost:8080/main.1d28ad001464306011bd.bundle.js:1:3799461\nn@http://localhost:8080/polyfills.eb7a9fefe827db0c2516.bundle.js:1:132877\n867/ Function:3:32\ngetPatientData@http://localhost:8080/main.1d28ad001464306011bd.bundle.js line 1 > Function line 3 > eval:691:2\n"}
This is the chunk of code that I used.
var options = { method: 'GET',
url: uri,
headers:
{
Authorization: 'Bearer ' + access_token,
//Accept: 'application/json'//,
'Content-Type' : 'application/json'
}
};
alert(JSON.stringify(options))
request(options, function (error, response, body) {
if (error){
qry=error
alert(error)
throw new Error(error);
}
alert(body);
qry = body
});
It works for me using the javascript console, curl and postman, but not from Composer Playground. Any ideas?
[ ](https://chat.hyperledger.org/channel/composer?msg=rbgWdSRGP8gfFuB62) @wangdong is this happening in Playground? What steps did you take leading up to this error? May be better to post on [Stack Overflow](https://stackoverflow.com/questions/tagged/hyperledger-composer) with full details of what you did with version info etc -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#issue
@mahoney1 I will after some more investigation. thanks.
@eaazumah difficult to know from basic info - are you trying to read something outside of a promise chain in your code? Might be best to provide full details on Stack overflow.
@eaazumah difficult to know from basic info - are you trying to read something outside of a promise chain in your code (something like shown here https://stackoverflow.com/questions/46461518/hyperledger-composer-tranaction-error-typeerror-getassetregistry-get-is-n?rq=1 ) ? Might be best to provide full details on Stack overflow.
[ ](https://chat.hyperledger.org/channel/composer?msg=eiBH3cC5LQayGuS9H) @NareshPai you would do so through his/her associated business network card - see this blog for an example -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc - the card names can follow the same regime as the app user ids if you wish to do that.
@satyajitdeshmukh you start your REST server with a card associated with the business network (not PeerAdmin in your example) - eg. the admin card. You should have done 1) composer card import -f networkadmin.card 2) composer network ping -c admin@airline8 4) composer-rest-server -c admin@airline8 -n always -w true (also assuming you've got the required ACLs in your permissions.acl in your BN to allow the admin to connect to the business network) - example shown in sample networks eg https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network
@satyajitdeshmukh you start your REST server with a card associated with the business network (not PeerAdmin in your example) - eg. the admin card. You should already have done 1) composer card import -f networkadmin.card 2) composer network ping -c admin@airline8 ...then 3) composer-rest-server -c admin@airline8 -n always -w true (also assuming you've got the required ACLs in your permissions.acl in your BN to allow the admin to connect to the business network) - example shown in sample networks eg https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network
[ ](https://chat.hyperledger.org/channel/composer?msg=u54CW9ztmj3E4MCTe) @mahoney1 can you please help me to solve this.
fyi all, reminder that there is no Community call today, next call is Thurs 2nd Aug https://github.com/hyperledger/composer/wiki/NextCommunityCall
thx
@HimanshuQuillhash commented on the SO question - there is not enough detail (as indicated there).
@Varun2887 You can emit events when you submit transactions, as shown here - https://hyperledger.github.io/composer/latest/business-network/publishing-events If you look above to @kathunsinger previous message, you can see an example on how to lookout for specific emitted events
@Juanan_Tejero see examples of using `request` module inside TP functions here -> https://hyperledger.github.io/composer/latest/integrating/call-out - it returns a promise - I can only suggest to try another browser and see examples as shown.
[ ](https://chat.hyperledger.org/channel/composer?msg=78NTP428Ks48zNydk) @mahoney1 I have tried with Chrome and Firefox and I get the same result. I have also checked all the examples from the docs and I have no problem because they don't require openid auth. Moreover, I tested composer transactions calling data from APIs secured with Basic and ApiKey auth and I had no problem, so maybe there is a bug calling Keycloak-secured APIs (or am I missing something :s )
Has joined the channel.
@Juanan_Tejero given your post and what you say you tested (and works), yes, it does sound something like that - sorry, not familiar with Keycloak, others may well be here.
@Juanan_Tejero given your post and what you say you tested (and works), yes, it does sound something like that - sorry, not familiar with Keycloak, or how you form the request, but shouldn't be too dissmilar if you've used other tools and tested successfully) - others may well be able to help here.
@Juanan_Tejero given your post and what you say you tested (and works), yes, it does sound something like that (sorry, not familiar with Keycloak, or how you form the request, but shouldn't be too dissmilar if you've used other tools and tested successfully) - others may well be able to help here.
@Juanan_Tejero given your post and what you say you tested (and works), yes, it does sound something like that (sorry, not familiar with Keycloak, or how you form the request, but shouldn't be too dissimilar if you've used other tools and tested successfully) - others may well be able to help here.
hope everyone is well, I was just wondering about the following : I want to query all transactions pertaining to a specific asset . I know I can use historian to retreive all transactions but no metadata realating to the asset itself is present to filter by - does anyone know of any solution to this ? thanks a lol
hope everyone is well, I was just wondering about the following : I want to query all transactions pertaining to a specific asset . I know I can use historian to retreive all transactions but no metadata realating to the asset itself is present to filter by - does anyone know of any solution to this ? thanks a lot in advance
[ ](https://chat.hyperledger.org/channel/composer?msg=aB5cJBEkANoKq4G8i) @mahoney1 Anyway, thanks for your time :)
[ ](https://chat.hyperledger.org/channel/composer?msg=hwQN63C6SzhZe8YBX) @Jakeeyturner but there can be scenario where an event is meant for only one of the participant node and its corresponding application only... can the same be controlled.. I do know about handling different events but what if it needs to be handled different users or say permission based events?
So, events will get emitted to all of the peers connected to the specific Hyperledger Fabric channel
emit is fine but can there be restriction while subscribing to it
so that an unintended participant doesnt read it
it may have some sensitive data
so, all peers connected to a channel will receive an emitted event (on that channel)
something similar to ACL in events?
in which case, you might want to use multiple channels, which Hyperledger Composer doesn't currently support. Although you can track the progress and discussion on multi-channel support here - https://github.com/hyperledger/composer/issues/2103
yea that is another issue as of now it is 1 channel 1 profile per node
I'm not sure if you can apply ACLs to events (I don't think so), but @mahoney1 should know the answer (and might be able to help with some kind of workaround if possible)
I just believe that events get emitted to the entire channel, and all peers connected to that channel can receive the events
@Varun2887 You cannot restrict access to chaincode events using composer. It uses the underlying ChannelEventHub implementation, so if you are using an identity that can register for events then it can receive any events. I don't know if you can define a fabric policy that controls who can register for fabric events
Hi,
Please, what's the best way to automate transactions (for example, I need a transaction to be executed on a daily basis, and when it is executed, it should execute another transaction if the result exceeds a given amount)
I tried to do it directly on the Angular webapp generated by yo, but I'm struggling. I've heard of CA Automic One Automation Platform and IBM Operational Decision Manager.
There's loads of ways of doing it. If you wanted to do it directly from your machine, you could set up a cron job to run a `composer transaction submit` command. I also bet there's a Node.js package which you could use to execute commands daily
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=48KxNjnBJGGXu7FkA) @Drest see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks for more info (item 6 onwards in the table) - we have an open issue https://github.com/hyperledger/composer/issues/2458 (and comments there) - might be best to use REST API (loopback) filters using `include, resolve` as shown in the examples there (see last entry in table) on the transaction classes (transactions with relationships to the asset id in question)
hi..can anyone help for creating hyperledger composer api
how to interact with API?
which all SDKs are available for hyperledger?
[ ](https://chat.hyperledger.org/channel/composer?msg=8t6cF2p32L6rxqHHD) @maniyas easiest/quickest way is to follow the tutorials - they show you how to generate the REST APIs -> https://hyperledger.github.io/composer/latest/tutorials/ - if you mean JS APIs -> the documentation should be able to assist you https://hyperledger.github.io/composer/latest/applications/node
Expected Resource or concept error.
Please help
hi All
i have created an created an asset having four properties FirstName,LastName, Age, DOB this asset is added by org1 now how to give access permisssion to have org2 users to have only read properties??
IMG_20180725_173047.jpg
IMG_20180725_173228.jpg
IMG_20180725_173250.jpg
IMG_20180725_173255.jpg
Please look at the above files and help us out in solving the above mentioned error
@steynsawan your transaction code is assigning from `newOwner` - but you don't have a `newOwner` field in your model !
@steynsawan your `Trade` transaction code is assigning from `newOwner` - but you don't have a `newOwner` field in your model !
[ ](https://chat.hyperledger.org/channel/composer?msg=dJWAmgQyL6TrGqzqK) @AnithaReddy might suggest to raise on Stack Overflow with your model, goals - all depends on how you differentiate participants from each Org (eg is it through participant classes in the modeled network ; are they the same participant class in the model, but have an organisation attribute/field, which can be used in the ACL condition to ensure 'org2' users can only READ the asset (as you intend) - and/or where as 'org1' participants can have UPDATE (or whatever))
[ ](https://chat.hyperledger.org/channel/composer?msg=dJWAmgQyL6TrGqzqK) @AnithaReddy might suggest to raise on Stack Overflow with your model, goals - all depends on how you differentiate participants from each Org (eg is it through participant classes in the modeled network ; are they the same participant class in the model, but have an organisation attribute/field, which can be used in the ACL condition to ensure 'org2' users can only READ the asset (as you intend) - and/or where potentially 'org1' participants can have ADD/UPDATE (or whatever))
[ ](https://chat.hyperledger.org/channel/composer?msg=oBM3pcEnd7JucNpQ4) @rthatcher Thanks for the response. I checked all these things. Logs shows the *card not found*. But when I run the command *composer card list*, it shows the card.
Persistent storage
Composer seems to have a persistent storage that I cannot find in the wiki. Can somebody help?
Background is: I deployed a BNA file some time ago of version 1.0.0 (because I though it was finished). Then we found some bugs, created a new version 1.0.0 and wanted to deploy that. Since this is not an upgrade, Composer did not like that. What we did instead is kill the underlying Fabric blockchain (in Docker containers), delete all volumes/containers and restarted everything. Then we deployed the new v1.0.0 to the network. But for some reason it is still the old, faulty BNA. Where does Composer takes this from and how can I prevent it/delete the old version once and for all?
[ ](https://chat.hyperledger.org/channel/composer?msg=a99qHojycAfKjrBH6) @MasthanbeeShaik It looks like the Container can't see the Card. I think the intention of the tutorial you were following was to have the Card stored in Cloudant on IBM Cloud, but there is some mismatch ... so I would guess that there is some mismatch. You would need to check that the card is stored in the Cloud Wallet (not on the OS of the local machine), and then make sure that the Env Var for NODE_CONFIG is properly set before starting the container. (Perhaps you need to remove existing REST containers and start new)
Has joined the channel.
Hello
I followed the documentation to add github authentication on composer REST service
https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication.html
How is my rest client supposed to recuperate the token that is on the page http://localhost:3000/explorer ?
Capture d’écran 2018-07-25 à 17.08.18.png
@LevKowalski https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc The withCredentials option is set in order to create a cookie, to pass the authentication token to the REST server. Sample code here too -> https://github.com/hyperledger/composer/blob/2ca3137f258ed8de0584e5940ed187e588fa1aef/packages/composer-rest-server/public/index.html#L54-L98
@iDix its possible you had some lingering [docker] volumes, which can be cleared with `docker volume rm $(docker volume ls -qf dangling=true)` - not sure why you're seeing an old bna. Would recommend to update your package.json then ("version" becomes "0.0.2" say) - then re-create the bna archive and do a `composer network install` followed by `composer network upgrade`` as shown in Step Three / Four in this tutorial https://hyperledger.github.io/composer/latest/tutorials/queries - you can then do a `composer network ping -c
@iDix its possible you had some lingering [docker] volumes, which can be cleared with `docker volume rm $(docker volume ls -qf dangling=true)` - not sure why you're seeing an old bna (unless your'e looking at it through playground, using web connector in localstorage which is not ) . Would suggest to update your package.json ("version" becomes "0.0.2" say) - then re-create the bna archive and do a `composer network install` followed by `composer network upgrade`` as shown in Step Three / Four in this tutorial https://hyperledger.github.io/composer/latest/tutorials/queries - you can then do a `composer network ping -c
HI everyone, I am currently getting this error:
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":0,"message":"open /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem: no such file or directory"}]]
When trying to connect to my network through a participant card. Not really sure how to resolve it, couldn't find any answers online.
Has joined the channel.
hey guys are there any good online tutorials for unit testing in composer.
I looked at the official composer documentation and I feel like I need another document
Has joined the channel.
@mahoney1 I love you. thank you
+ Composer seems to let me POST a transaction request with an invalid (not existing) participant field.
E.g.,
```
transaction InsertSaleRecord {
o String saleId
o SaleType saleType
o String saleData
--> Merchant merchant
}
```
and the request is
```
{
saleId: '001',
saleType: 'POS',
saleData: 'some data',
merchant: 'resource:org.acme.sales_network.Merchant#0000000002',
}
```
and the 'resource:org.acme.sales_network.Merchant#0000000002' participant doesn't exist in composer. But when I try it, the transaction still returns `200` and puts data into the ledger.
shouldn't this be prohibited by composer? or should I handle this within the chaincode?
Has joined the channel.
@mahoney1 still same error buddy , expected resource or concept
@davidkel I saw your issue about the high-throughput network https://github.com/hyperledger/composer/issues/3238 , and I have built a network stored deltas with assets . Now composer supports the `getNativeAPI() ` function and `Read-only transaction processor functions` . I think it is possible to implement a high-throughput network based on composer as same as https://github.com/hyperledger/fabric-samples/tree/master/high-throughput . So I built a new sample https://github.com/RocMax/composer-high-throughput/tree/master/composer-high-throughput , store deltas in `CompositeKey` and query realtime balance with `Read-only transaction`. Would you please look into it ? Thanks!
@davidkel I saw your issue about the high-throughput network https://github.com/hyperledger/composer/issues/3238 , and I built a network stored deltas with assets . Now composer supports the `getNativeAPI() ` function and `Read-only transaction processor functions` . I think it is possible to implement a high-throughput network based on composer as same as https://github.com/hyperledger/fabric-samples/tree/master/high-throughput . So I built a new sample https://github.com/RocMax/composer-high-throughput/tree/master/composer-high-throughput , store deltas in `CompositeKey` and query realtime balance with `Read-only transaction`. Would you please look into it ? Thanks!
@davidkel I saw your issue about the high-throughput network https://github.com/hyperledger/composer/issues/3238 , and I built a network stored deltas with assets . Now composer supports the `getNativeAPI() ` function and `Read-only transaction processor functions` . I think it is possible to implement a high-throughput network based on composer as same as https://github.com/hyperledger/fabric-samples/tree/master/high-throughput . So I built a new sample https://github.com/RocMax/composer-high-throughput/tree/master/composer-high-throughput , store deltas in `CompositeKey` and query realtime balance with `Read-only transaction`. Would you please take a look at my code and see what I am doing wrong and any advise for it? Thanks!
@davidkel I saw your issue about the high-throughput network https://github.com/hyperledger/composer/issues/3238 , and I built a network stored deltas with assets . Now composer supports the `getNativeAPI() ` function and `Read-only transaction processor functions` . I think it is possible to implement a high-throughput network based on composer as same as https://github.com/hyperledger/fabric-samples/tree/master/high-throughput . So I built a new sample https://github.com/RocMax/composer-high-throughput/tree/master/composer-high-throughput , store deltas in `CompositeKey` and query realtime balance with `Read-only transaction`. Would you please take a look at my code and see if there are any issues and any advise for it? Thanks!
@davidkel I saw your issue about the high-throughput network https://github.com/hyperledger/composer/issues/3238 , and I built a network stored deltas with assets before. Now composer supports the `getNativeAPI() ` function and `Read-only transaction processor functions` . I think it is possible to implement a high-throughput network based on composer as same as https://github.com/hyperledger/fabric-samples/tree/master/high-throughput . So I built a new sample https://github.com/RocMax/composer-high-throughput/tree/master/composer-high-throughput , store deltas in `CompositeKey` and query realtime balance with `Read-only transaction`. Would you please take a look at my code and see if there are any issues and any advise for it? Thanks!
hi tried installing composer on windows but its showing lot of errors, but i successfully installed composer dependencies
hi does anyone know how to log out of the composer-rest-server from a client application? I used passport google oauth
IMG_20180726_100104.jpg
IMG_20180726_100051.jpg
IMG_20180726_100034.jpg
IMG_20180726_100020.jpg
IMG_20180726_095942.jpg
Error says "can't access lexical declaration 'assetRegistry' before initialization."
I also tried initializing explicitly
IMG-20180726-WA0008.jpeg
Then the error is
IMG_20180726_110915.jpg
The API should be `getAssetRegistry`
@ all can anyone tell to how authendicate user in composer
@ all can anyone tell to how authendicate user in hyperledger composer
[ ](https://chat.hyperledger.org/channel/composer?msg=ENSbzhhg3hAKuY2ok) @mahoney1 thanks :) bt how to create a organisation attribute/field for an asset and how to differentiate the participants that one belongs to particular organisation
Has joined the channel.
@mahoney1 thanks it works for me but still i get this error when i ping network
composer network ping -c PeerAdmin@airlinev81
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
Hello Guys
what is the solution when I add a new property inside an asset, all asset data are deleted?
Hello Guys
what is the solution when I add a new property inside an asset, all asset data are deleted in the ledger?
Thanks in advance
[ ](https://chat.hyperledger.org/channel/composer?msg=H7nCfPy8BSyrowHAN) @AnithaReddy @AnithaReddy You can get hold of the invoking users identity using getCurrentIdentity and get details of the issuer from which you can probably derive the org the user belongs to. This check can be done in your chaincode logic or you can create a permissionsHelper which you use in the permissions ACL file when defining the permissions.
[ ](https://chat.hyperledger.org/channel/composer?msg=H7nCfPy8BSyrowHAN) @AnithaReddy You can get hold of the invoking users identity using getCurrentIdentity and get details of the issuer from which you can probably derive the org the user belongs to. This check can be done in your chaincode logic or you can create a permissionsHelper which you use in the permissions ACL file when defining the permissions.
[ ](https://chat.hyperledger.org/channel/composer?msg=inm7RiqEK3mcmvb6c) @Muffi i get this error when i ping network
composer network ping -c PeerAdmin@airlinev81
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
i get this error when i ping network
composer network ping -c PeerAdmin@airlinev81
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
when writing a transaction. Should we create a new asset in the logic.js file or create new resource from factory in node.js and pass it to transaction? Please reply soon! Thanks for the time.
Hi, someone can help me with this : https://stackoverflow.com/questions/51302570/hyperledger-composer-post-on-wallet-api-return-error-cant-find-end-of-centra ? Any idea will be welcome
@Poneey I did not quite get step4 , is it making a card file from data?
I try to create file (object file, not physical file) from data
@Poneey OK , I suggest that you could first get card form cardStore with cardStore.get(cardName) then use idCard. toArchive() to turn it to ArrayBuffer, then you can what ever save it to file or upload by a http request
@labcoinpoc I don't want download it, just post it on my wallet. I will try what you suggest, thanks !
@Poneey You can create the idCard object from data too ,with `new IdCard()` API, then turn it to ArrayBuffer, You said that you can post the card successfully by postman so I think the problem is the file format of your card
Has joined the channel.
can hyperledger composer playgroud run build-blockchain-insurance-app?
@labcoinpoc "cardStore.get(cardName)" seems to not working ..
[ ](https://chat.hyperledger.org/channel/composer?msg=7x4kchnggJGQCAoTr) @howdyeyey Your observation is correct - Composer does not check the for the existence of the resources in a relationship field.
[ ](https://chat.hyperledger.org/channel/composer?msg=iJeey9cggoXNeYo4P) @harsha0826 Composer is not currently supported on Windows (and the install docs do say Mac and Linux are the supported platforms.) Many people choose to run Ubuntu in a VM under Windows.
Although it is not supported, Composer can be made to run under Windows but you won't get too much help doing so. See this document: https://davidkel.github.io/docs/Windows/Intro.html
[ ](https://chat.hyperledger.org/channel/composer?msg=2D5kCNZpRgGWDcFtY) @maniyas Access to the Business Network is via Business Network Cards. Briefly this is the flow:
Create a Participant in the Business Network
Issue an Identity which creates a Card. (and creates an Identity in the CA and Binds the Identity to the Participant)
Access the network with the Card.
These steps can be done with the CLI, the Javascript API or the REST API
[ ](https://chat.hyperledger.org/channel/composer?msg=THDmiEuhDYxezcx6Y) @mostafa.elsayyad Good news - the data is not actually deleted. Please see this section in the Knowledge Wiki which explains the problem: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration
@rthatcher thankyou..can you please give any referral links?
[ ](https://chat.hyperledger.org/channel/composer?msg=NAEES5EYdrYND8RDM) @satyajitdeshmukh I don't know how you have set up your Fabric and created the Cards, but generally, the PeerAdmin card has the rights to Install/Start the Business network, but does not have any rights to access (in this case Ping) the network - you should be using the Network Admin card.
[ ](https://chat.hyperledger.org/channel/composer?msg=NAEES5EYdrYND8RDM) @satyajitdeshmukh I don't know how you have set up your Fabric and created the Cards, but generally, the PeerAdmin card has the rights to Install/Start the Business network, but does not have any rights to access (in this case Ping) the network - you should be using the Network Admin card.
Though the error you are getting is not the one I would expect for a 'PeerAdmin' card. Perhaps you are using a Card with an 'expired' one-time secret?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=vq97FnH9Zu2AybGAY) @maniyas The ACL tutorial in the Composer Docs covers creating Participants and Identities, and covers ACLs too :-) But if you have not already done it I would suggest starting with the Developer Tutorial: https://hyperledger.github.io/composer/latest/tutorials/tutorials
@rthatcher thankyou
[ ](https://chat.hyperledger.org/channel/composer?msg=5We6ecuKiJ6hobMXM) @wlantakumi Composer (and Composer Playground) runs Business Networks on top of Hyperledger Fabric. If you insurance app is a .bna (Business Network Archive) file then you can import and run it. If it is Go or Javascript chaincode then you need to run it directly on Fabric.
[ ](https://chat.hyperledger.org/channel/composer?msg=hF3oPAnGYnyuKtNYZ) @mahoney1 thanks.
I still stuck though. because I want my callback url to redirect to my fornt end App
I still stuck though. because I want my callback url to redirect to my front end App
Can anyone help me in deploying .bna file?
Installing a network card is successful but cannot start it.
Installing business card succedd but cannot start it... Throws error.
IMG_20180726_145514.jpg
[ ](https://chat.hyperledger.org/channel/composer?msg=vhkeK7czfkYEz7ija) @mmick You would typically use factory within the Transaction Logic to create a new Asset (or Participant). However if you are invoking the transaction from node.js you will have to use factory to create a Transaction object, and possibly for creating a relationship object if that is one of your parameters.
I'm referring https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html
Plz help anyone
[ ](https://chat.hyperledger.org/channel/composer?msg=02893b76-a9b1-4040-a027-db81d49d5c63) @AZ0ZYW0U5 It looks like you have installed the network OK, and the response says your version is 0.0.2-deploy.14, but on the start command you are trying to start --networkVersion 0.0.1 . so if you use `--networkVersion 0.0.2-deploy.14` you should be OK.
[ ](https://chat.hyperledger.org/channel/composer?msg=Ad3xjKaex6kv7ueLW) @rthatcher
IMG_20180726_150545.jpg
@AZ0ZYW0U5 - this is a very similar problem - you have installed `report-sharing`, but you start command says tutorial-network. The start command cannot find the tutorial-network. Try `--networkName report-sharing`
Hi everybody, 7 times (during 3 weeks) my docker container "peer1" where is my network crash without any explication. My last log is : ""request cancelled (Client.Timeout exceeded while reading body)". I really don't know if it's the last logs before crash or if it's the reason of the crash. To give more context, yesterday this crash even if me and all colleagues are in their home (so we don't touch anything of the smart contract or anything else). So, have you got any idea to fix that or explain me why this do that ?
hi all
when i was trying issue new id ...in composer playground
am facing below error
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
can anyone assist for the same
can anyone pls assist for the same
[ ](https://chat.hyperledger.org/channel/composer?msg=n4PNQdqLZgbyY6CwT) @maniyas are you trying to Issue an ID with a Card (ID) that doesn't have the rights? Have you tried with the "Network Admin" card?
[ ](https://chat.hyperledger.org/channel/composer?msg=b8ciGXzb9ZExqErHv) @rthatcher problem solved .. actually i create other user called peerAdmin which dont have admin access so it gave me an error.. if any one then please guide me for relation between use , business network , business network card and how i assign then authorisation
@rthatcher ok will check
[ ](https://chat.hyperledger.org/channel/composer?msg=NgdQi5vqyFs4nCKKG) @Dauphinous would suggest to raise a Stack Overflow with the full details of the steps(if known) leading up to this crash and the peer logs - Client.Timeout exceeded could mean a lot of things eg. failing to build a chaincode container for example, or grpcs error, or even proxy issues getting out to npm registry etc
@rthatcher am using admin only
The following Business Network Cards are available:
Connection Profile: hlfv1
┌────────────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├────────────────────────┼───────────┼──────────────────┤
│ admin@tutorial-network │ admin │ tutorial-network │
├────────────────────────┼───────────┼──────────────────┤
│ admin@asset-management │ admin │ asset-management │
├────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
├────────────────────────┼───────────┼──────────────────┤
│ luka │ djax01 │ djaxasset │
above is my card info
hello guys, i need info about the below error, this occurs when a participant tries to relogin:
Login failure: The identity 111111 has already enrolled 1 times, it has reached its maximum enrollment allowance
hello guys, i need info about the below error, this occurs when a participant tries to relogin:
TAKEN FROM CA LOG
Login failure: The identity 111111 has already enrolled 1 times, it has reached its maximum enrollment allowance
@maniyas - I would suggest trying `composer card list -c
[ ](https://chat.hyperledger.org/channel/composer?msg=ZBpAPhyXf9QFxQD62) @prtk418 When an Identity (and Card) are created by composer a 'one-time' secret is generated by the CA. When the card is first used, the one-time secret is used and certificates/keys are downloaded to the card in the wallet as the user is 'enrolled' - after this first use the one-time secret is invalid. (This can happen if use re-use or re-import an old .card file. You can avoid this by exporting a card into a .card file AFTER the first use, then the .card file contains the certificates.)
@rthatcher is there any alternative way to prevent this? and by exporting you mean to export from the cli? i tried exporting the rest server , and the exported card file was exactly same as the imported one
@rthatcher is there any alternative way to prevent this? and by exporting you mean to export from the cli? i tried exporting from the rest server , and the exported card file was exactly same as the imported one
@rthatcher is there any alternative way to prevent this? and by exporting you mean to export from the cli? i tried exporting from the rest server , and the exported card file was exactly same as the imported one
and please can you explain me about identity/bind, as i am not using this feature, is it mandory to bind identity, if yes at what point of time, like after issuing or what?
Has joined the channel.
hello. I followed this tutorial. https://hyperledger.github.io/composer/latest/integrating/call-out
Once I authenticate with Github I get a cookie that has a key called "userId". Can that key be used as the Id of a participant ?
hello. I followed this tutorial. https://hyperledger.github.io/composer/latest/integrating/call-out
Once I authenticate with Github I get a cookie that has a key called "userId". Is it a good practice to use that key as the Id of a participant ?
hello. I followed this tutorial. https://hyperledger.github.io/composer/latest/integrating/call-out
Once I authenticate with Github I get a cookie that has a key called "userId". Is it a good practice to use that key as the Id of a participant ? That way I can sign up new participants easily via Github
hello. I followed this tutorial. https://hyperledger.github.io/composer/latest/integrating/call-out
Once I authenticate with Github I get a cookie that has a key called "userId". Is it a good practice to use that key as the Id of a participant ? That way I can sign up new participants in my business network easily via Github
[ ](https://chat.hyperledger.org/channel/composer?msg=Hc8QYTRdpWMN7t54d) @prtk418 the bind is done automatically for you, but you can do some of the steps manually. The card should contain the certificates when exported IF you have used the card to connect to the network.
There is some more information about Cards in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#bizcards
@rthatcher does it make sense to use the userId in the token generated by oAuth authentication as id of a participant ?
[ ](https://chat.hyperledger.org/channel/composer?msg=LMazKe7QjFxRbjdx6) @LevKowalski I wonder if that userid in the cookie from Github stays the same over time? I would also question if that ID provides access it might be a security risk it the Participants are visible to other users.
@rthatcher thanks. So how would it be possible to map a participant to a Github account ?
@LevKowalski see example here -> https://hyperledger.github.io/composer/latest/managing/identity-issue - the identity (in the business network) and is mapped to a participant (in a participant class and with a participant name of your choosing)
@LevKowalski see example here -> https://hyperledger.github.io/composer/latest/managing/identity-issue - the identity (in the business network) and is mapped to a participant (in a participant class and with a participant name of your choosing) - also updated your Stack Overflow with response -> https://stackoverflow.com/questions/51542214/using-userid-in-cookie-generated-by-oauth-dance-as-the-id-for-users-of-my-applic
@LevKowalski see example here -> https://hyperledger.github.io/composer/latest/managing/identity-issue - the identity (in the business network) is mapped to a participant (in a participant class and with a participant name of your choosing) - also updated your Stack Overflow with response -> https://stackoverflow.com/questions/51542214/using-userid-in-cookie-generated-by-oauth-dance-as-the-id-for-users-of-my-applic
@mahoney1 many thanks.
Still complete mystery to me where that userId comes from
Has joined the channel.
Hi @mahoney1 when is the next meeting on composer status ? Thanks
join query
Howdy everybody
Happy Friday!
event
Hi all , how to Hyperledeger composer tool will interact with real time like money transaction between two accounts in realtime , anyone please share the example for that
one more doubt how to invoke in transaction tab action in angular app ,please explain briefly
Has joined the channel.
@Mahadream mudiyathu
Hi guys, am also having same doubt in transaction invoke in angular application , if am click invoke button in trasaction tab nothing should happen , can anyone explain this regarding
I searched online for error but didn't got solution...
IMG_20180727_113041.jpg
@rthatcher
@thiyagucse01 transactions are not implemented in the generated angular app , but for some insights you can check out https://medium.com/coinmonks/fixing-transaction-issue-in-angular-for-hyperledger-fabric-blockchain-application-fe7e28a7bb6e
@thiyagucse01 transactions are not implemented in the generated angular app you need to implement it as per requirement, but for some insights you can check out https://medium.com/coinmonks/fixing-transaction-issue-in-angular-for-hyperledger-fabric-blockchain-application-fe7e28a7bb6e
@AZ0ZYW0U5 can you share the output of composer network install command
@AZ0ZYW0U5 can you share the output of composer network install command ,it seems you are trying to start the network with different network name/version from the name/version which was used to install the network
[ ](https://chat.hyperledger.org/channel/composer?msg=CTXn9yZzCrETY8ySv) @prtk418 It succeeded
2018-07-27-11-55-06.jpg
why are you running the commands as *su*
why are you running the commands as *su* maybe that can be the problem
@prtk418 Thanks for ur solution , its solved my problem
Hi , I have done sample asset management application , in that participant can add their asset and exchange them with other partipant, participant have manually entered the account balance for their account and buy asset and pay money ,during real time asset exchange between participant how they pay money for asset ? need to create token or they can able to exchange fiat currency ? is it possible for fiat currency? can anyone suggest solution for the same
[ ](https://chat.hyperledger.org/channel/composer?msg=6MSKL4ZWAy7DvPj5Z) @prtk418 Actually while setting up my machine I was getting a permission error so I created whole environment as root user.
@AZ0ZYW0U5 i guess that was when you were trying to install composer-cli, you should not use root as a user for module installation, check out this link for proper way to install https://hyperledger.github.io/composer/latest/installing/development-tools.html
Hi, I'm facing this error since yesterday and I can't solve it : https://github.com/hyperledger/composer/issues/3949
And no one seem to have the answer in the tread, any help would be great
@ndatebayo Delete the line /*# sourceMappingURL=bootstrap.css.map */ from bootstrap.css
Has joined the channel.
Hi wha is the error composer-connector-undefined?
[ ](https://chat.hyperledger.org/channel/composer?msg=kJrLgQTmume4YrjkC) @thiyagucse01 It seems to work, thanks a lot !
Has joined the channel.
@AZ0ZYW0U5 see solution for your permission error: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues (item 7 in table 'npm install errors' section) - its recommended not to use root or su / sudo (as per our [install guide](https://hyperledger.github.io/composer/latest/installing/development-tools.html) to get around an npm permissions problem, its easily fixed as shown
[ ](https://chat.hyperledger.org/channel/composer?msg=wboTACC2FsKzM5LZ4) @jmason900 hi @jmason900 its 4pm UTC Thursday 2nd Aug
Hi, I have 3 transactions. In the first transaction I add an asset 'Document' identified by name 'DL'. In the second transaction, I update this asset, change the name to 'Passport'. While running the transaction , I give the ID in composer as 'DL'. It works fine.
Now , in the third transaction, again I am trying to update the asset. What ID should I give while running the transaction in composer?
First transaction I add this asset : document.docname = 'Pa60.jpg';
document.doctype = 'DrivingLicense';
document.hash = '12345';
document.from ='Bank_1';
document.to = 'User_1';
First transaction I add this asset : document.docname = 'DL';
document.doctype = 'DrivingLicense';
document.hash = '12345';
document.from ='Bank_1';
document.to = 'User_1';
My asset identified by 'docname'. First transaction I add this asset : document.docname = 'DL';
document.doctype = 'DrivingLicense';
document.hash = '12345';
document.from ='Bank_1';
document.to = 'User_1';
My asset is identified by 'docname'. First transaction I add this asset : document.docname = 'DL';
document.doctype = 'DrivingLicense';
document.hash = '12345';
document.from ='Bank_1';
document.to = 'User_1';
In the second transaction uploadDoc.document.docname = 'Passport';
uploadDoc.document.doctype = 'BC';
uploadDoc.document.hash = '123456';
uploadDoc.document.from = 'Bank_1';
uploadDoc.document.to = 'User_1';
In the third transaction , I want to update the asset as : shareDoc.document.hash = '12346';
shareDoc.document.from = 'User_1';
shareDoc.document.to = 'Bank_2';
shareDoc.document.docname='Passport'
shareDoc.document.doctype ='BC'
To run the third transaction in composer , if I give the ID as 'Passport', it gives an error 'Object with ID does not exist'. Please help me out with this.
@Mahadream these examples may help (Account transfer logic) -> https://medium.com/coinmonks/hyperledger-from-scratch-50a2535e26b6 funds settlement (could https://github.com/hyperledger/composer-sample-networks/tree/master/packages/fund-clearing-network - transactions are active at the moment - captured [here](https://github.com/hyperledger/composer/issues/4121) but there is a workaround documented here -> https://github.com/hyperledger/composer/issues/4121#issuecomment-398881100 (and a link to a blog)
[ ](https://chat.hyperledger.org/channel/composer?msg=kJrLgQTmume4YrjkC) @thiyagucse01 actually when I change something in the website code source, the problem remains. Do you have any other solution please ?
@deep123 the reason is because docname is the identifier on the asset (the change won't happen) - hence the error trying to update a separate asset 'Passport' (the asset does not exist by that identifier, to update and hence the 'does not exist' msg)
@ndatebayo use ng serve for website code source change after your UI changes use npm start for API connection, otherwise issue will remains
[ ](https://chat.hyperledger.org/channel/composer?msg=TMTSz3Cc4ipFpLJqb) @mahoney1 Then what is the ID I should give while running the third transaction?
[ ](https://chat.hyperledger.org/channel/composer?msg=TMTSz3Cc4ipFpLJqb) @mahoney1 Then what is the ID I should give in composer while running the third transaction? IF I give'DL' also, I get error
[ ](https://chat.hyperledger.org/channel/composer?msg=TMTSz3Cc4ipFpLJqb) @mahoney1 Then what is the ID I should give in composer while running the third transaction? IF I give'DL' also, I get error.
@deep123 suggest to post your model, script and issue on Stack Overflow https://stackoverflow.com/questions/tagged/hyperledger-composer - will be answered there (am away in a meeting, back later FYI)
[ ](https://chat.hyperledger.org/channel/composer?msg=Ca6MLCQjdmhd9ojsS) @mahoney1 Posted on stack overflow. Please do help.
Has joined the channel.
hi everyone
i want to store tokens in hyper ledger network. and only i can retrieve this token. how can i do it by hyperledger composer.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=KukBuqEB4663HTQ6L) @malviyamukul - you would create the Tokens as Assets, and in the model for the Token have a Relationship field to a Participant, and then set an ACL rule so that only the specified Participant can read. I would suggest working through the ACL Tutorial before working on your own model/ACL
https://hyperledger.github.io/composer/latest/tutorials/acl-trading
[ ](https://chat.hyperledger.org/channel/composer?msg=rGAEQBx9LdXg8BCeN) @deep123 responded on SO, might want to report it as a bug under Composer i[issues](https://github.com/hyperledger/composer/issues))
[ ](https://chat.hyperledger.org/channel/composer?msg=rGAEQBx9LdXg8BCeN) @deep123 responded on SO, might want to report it as a bug under Composer [issues](https://github.com/hyperledger/composer/issues))
Hello all, I'm trying to query data through loopback queries of composer rest server but only "where" filter seems to working there. please can somebody help me out here? am I missing something because explorer says "Filter defining fields, where, include, order, offset, and limit - must be a JSON-encoded string ({"something":"value"})" in their description but when I try to run "?filter[limit]=5" that gives me all the data.
@amritsharma - unfortunately limit and skip are not supported in Composer Queries
can anybody know the chat forum for blockchain and bitcoins
where i can clear my doubts ?
@SwapneshNaik discourse.skript.com
Hello, anybody that are working with REST server using Yoeman can help me? I have two questions:
1- Can I add the other system queries? At this moment only the ping query appears
2 -Can I use the wallet method to import cards, like as we do using `composer-rest-server`?
Hello, anybody that are working with REST server using Yoeman can help me? I have two questions:
1- Can I add the other system queries? At this moment only the ping query appears
2 -Can I use the wallet method to import cards, like as we do using `composer-rest-server`?
I'm using the REST server with Yoeman because I want to get the return of a transaction (that is supported in composer 0.19.12)
Has joined the channel.
nyone seeing sourcemap reference breaking composer playground while uploading the bna file?
I get an error Syntax error : when the code is generated in playground
I get an error Syntax error : when the code is generated in playground. However if I take out sourcemap comment from my .js file it works fine :(
It seems that there is no newline in the generator code and so when the last line is commented out, the return statement also gets commented !!
function __generator(__globals, __api) {
var assert = __globals.assert;
var request = __globals.request;
var getFactory = __api.getFactory.bind(__api);
var getSerializer = __api.getSerializer.bind(__api);
var getAssetRegistry = __api.getAssetRegistry.bind(__api);
var getParticipantRegistry = __api.getParticipantRegistry.bind(__api);
var getCurrentParticipant = __api.getCurrentParticipant.bind(__api);
var getCurrentIdentity = __api.getCurrentIdentity.bind(__api);
var post = __api.post.bind(__api);
var emit = __api.emit.bind(__api);
var buildQuery = __api.buildQuery.bind(__api);
var query = __api.query.bind(__api);
var getNativeAPI = __api.getNativeAPI.bind(__api);
__globals = __api = null;
"use strict";
function helloWorld() {
// DEMO
}
//# sourceMappingURL=index.js.map return {
'helloWorld': helloWorld,
};}
__generator;
Created PR: https://github.com/hyperledger/composer/pull/4286
@rthatcher I was trying to implement access control rules also but that is making response for calls very slow, any suggestion that fetching data can work in a efficient way? anybody please?
can someone please provide guide to upgrade fabric version 1.1.0 to 1.2.0
Hi , during composer network start am facing below error
Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 1 Peers. Last error was Error: Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP]
what the issue? am already fabric network but also issue persistant
Hi,
I would like to know if there is any plan for this year regarding improvment proposal #3169 : As a composer developer, I want to access third-party packages from my Transaction Processor functions (https://github.com/hyperledger/composer/issues/3169) ?
Thank you !
Has joined the channel.
Has joined the channel.
what is best as a data member either to put a relationship to an asset or a string to store ID of the asset?
what is best as a data member either to put an array of relationship to an asset or a string array to store ID of the asset?
[ ](https://chat.hyperledger.org/channel/composer?msg=svAy6c5waYfAzMwY6) @rthatcher If i can create and update objects through registry then what is the purpose of transactions?
My Network was working fine i restarted my machine and now its container is exited? how to restart it?
Has joined the channel.
There is a command to create bna from composer code files. But I want is other way. generating composer project files from bna. is it possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=5aso4Ri5JbpemYivA) @KeerthiJ A .bna file is just a zip file. Rename it and extract the information or you can upload an existing bna here: https://composer-playground.mybluemix.net/
Hello guys, i was wondering is there a point of creating an application using only one org in hyperledger composer, i am looking for pros and cons, suppose in my case if orgs needs to be added dynamically, so to get rid of that i am just creating participants and there is only one org, is there any flaw here?
Hi Everyone, Is there any support yet to run chaincode in kubernetes pod rather than docker container in any version of hyperledger. I want to run chaincode in pod for clustering of chaincode to achieve run fabric network in fault tolerance manner??
Or there is any process to run chaincode container in all peers of an organisation running on different machine . Because it run by peer on same machine as peers running in docker container.
Is there any support to run chaincode in kubernetes pod to achive HA and faulttolerance. Please let me know if anyone finds solution.
What is the easiest way to implement a real time app (participant enrollment just like authorized apps, and then they can communicate ) backed by fabric. Either to expose the rest API to an angular app. or make custom node back end with custom front end. Please comment. Thanks!
How to create Card through javascript API ? or any Guidance!! Thanks!
How to create Card through javascript API in a real-time authorized application? or any Guidance!! Thanks!
excuse me can somebody help me?
how can i update two participants in the Transaction Processor Function? The first is gtting updated, the second one is not, it says the following error
No ledger context for GetState. Sending ERROR
I guess it doesnt reach the world state yet so then it cannot update the second participant
Has joined the channel.
Facing following problems after creation of a business card network card
Clipboard - July 30, 2018 12:47 AM
Able to create a business card network but when trying to ping the network throwing Unauthorized
Clipboard - July 30, 2018 12:48 AM
Clipboard - July 30, 2018 12:48 AM
Has anyone been able to use transaction logic using typescript?
How do you obtain / define global function defintions such as getFactory() ??
Anyone??
Is it possible to have nested concepts in your model? Like having an instance of a concept as an attribute in another concept?
sure why not
Hi , am new to hyperledger composer, recently I have done basic asset management system, the main concept is admin able to add asset and user able to buy from admin, I have done this basic one using composer playground and later I export the package and generate Rest api and angular skeleton app for that and run localhost:4200 is showing my app and working properly and my doubt is how to I make login and register page for this skeleton app? can anyone help me for the same
Has joined the channel.
@thiyagucse01 https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server
hope this will do some help[
@rthatcher I know it's a bit late but thanks for your answer!
Has joined the channel.
Has joined the channel.
Hello guy's
anyone know how to run composer-rest-server on background process?
thanks
@mbahfauz Start with`nohup composer-rest-server -c admin@example-network -n never -w true >/dev/null 2>&1 &` , but if you want to stop it you need to search the process with `ps` then kill it
@mbahfauz Start with `nohup composer-rest-server -c admin@example-network -n never -w true >/dev/null 2>&1 &` , but if you want to stop it you need to search the process with `ps` then kill it
Thanks LabCoinPoc
can we give access permission to an asset at organisation level
??
without creating the participants
Hi, while running a transaction , I get an error ' Participant cannot be assigned to asset'. I have created a relationship in participant to the asset. Can you help me?
Hi, while running a transaction , I get an error ' Participant cannot be assigned to asset'. I have created a relationship in participant to the asset. Can you help me? async function shareDoc(shareDoc) {...shareDoc.document.to = shareDoc.bank.name;...}
Hi, while running a transaction , I get an error ' Participant cannot be assigned to asset'. I have created a relationship in participant to the asset. Can you help me? async function shareDoc(shareDoc) {...shareDoc.document.to = shareDoc.bank.name;...} Document is an asset and Bank is participant. transaction ShareDoc {
--> Document document
--> Bank bank
}
Hi, while running a transaction , I get an error ' Participant cannot be assigned to asset'. I have created a relationship in participant to the asset. Can you help me? async function shareDoc(shareDoc) {...shareDoc.document.to = shareDoc.bank.name;...} Document is an asset and Bank is participant. transaction ShareDoc {--> Document document
--> Bank bank}
[ ](https://chat.hyperledger.org/channel/composer?msg=4fbcD4HCDeR25dBq2) @AnithaReddy ACL Rules are based on Participants, however you could include an "Org" field in a Participant definition, and then write a rule that is dependent on the value of that field. This Q&A in stack overflow has a similar question about Orgs and Access ... https://stackoverflow.com/questions/50680188/organization-based-restrictions-for-participant-identity-issuing-in-hyperledger/50681159#50681159
@rthatcher thanks for previous reply. can please share model file for it. i'm beginner
[ ](https://chat.hyperledger.org/channel/composer?msg=vydsKQGMrqePJh6kj) @malviyamukul no problem :-) . The model is in the Developer tutorial, and the ACL rule examples are in the ACL tutorial.
[ ](https://chat.hyperledger.org/channel/composer?msg=nSbmJBzhPvAuNbpPo) @deep123 this is a bit difficult to read, perhaps you could share your whole model and transaction logic in a Stock Overflow post?
[ ](https://chat.hyperledger.org/channel/composer?msg=LCtayxww4JW84YGCY) @rthatcher Thanks for the reply. I got the error. I was updating the wrong registry!
@rthatcher How to create Card through javascript API in a real-time authorized application? or any Guidance or lead!! Thanks!
@mmick see resources / blogs and code sample here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#cardapis
Hi hope everyone is well - just a quick question - not urgent i have a solution but just checking if there is a quicker way - i want to make a transaction processor function for the default create transaction that already appears on the api automatically when a transaction is defined in the model. However i'm not sure if i can . Of course i can make my own bespoke transaction that does the same thing as the default create transaction but just wondeirng if there is a quicker way
I am trying these tutorial
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org and i am getting following error
I am trying these tutorial
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org and i am getting following error when trying card create plese help me omposer card create -p /tmp/composer/org1/byfn-network-org1.json -u PeerAdmin -c /tmp/composer/org1/Admin@org1.example.com-cert.pem -k /tmp/composer/org1/*_sk -r PeerAdmin -f PeerAdmin@byfn-network-org1.card
SyntaxError: Unexpected token , in JSON at position 7767
I am trying these tutorial
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org and i am getting following error when trying card create plese help me
composer card create -p /tmp/composer/org1/byfn-network-org1.json -u PeerAdmin -c /tmp/composer/org1/Admin@org1.example.com-cert.pem -k /tmp/composer/org1/*_sk -r PeerAdmin -f PeerAdmin@byfn-network-org1.card
SyntaxError: Unexpected token , in JSON at position 7767
[ ](https://chat.hyperledger.org/channel/composer?msg=b72P3q6CkRykqsLSF) @rthatcher what can be the rule if i want only org1 should be able to create / update the asset whereas org2 should only able to read the assets
[ ](https://chat.hyperledger.org/channel/composer?msg=cwCFF3PinAuMo7ngq) rule accesstoAssetsORG1{
description: "Only the org1 has access to create"
participant(p) : "test.SampleParticipant"
operation: ALL
resource(r): "test.SampleAsset"
condition: (p.organisation == ????)
action: ALLOW
}rule accesstoAssetsORG2{
description: "Everyone can read the resources in the test"
participant: "ANY"
operation: READ
resource: "test.SampleAsset"
action: ALLOW
}
```========= Getting Org3 on to your first network =========
Fetching channel config block from orderer...
+ res=1
+ set +x
2018-07-30 09:31:10.625 UTC [channelCmd] InitCmdFactory -> INFO 001 Endorser and orderer connections initialized
2018-07-30 09:31:10.627 UTC [cli/common] readBlock -> INFO 002 Got status: &{FORBIDDEN}
Error: can't read the block: &{FORBIDDEN}
!!!!!!!!!!!!!!! Fetching config block from orderer has Failed !!!!!!!!!!!!!!!!
========= ERROR !!! FAILED to execute End-2-End Scenario ===========
```
what can be done?
command --> ```+ peer channel fetch 0 composerchannel.block -o orderer.localhost:7050 -c composerchannel --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/localhost/orderers/orderer.localhost/msp/tlscacerts/tlsca.localhost-cert.pem
```
[ ](https://chat.hyperledger.org/channel/composer?msg=JtN7dEgMfFLXYgeFw) @mdvenkatesh This looks like you have got a 'typo' in your connection.json file. Perhaps this is an error where you have pasted in the certificates? If you can't see the error at the position indicated, you could try pasting the whole file contents into an online JSON formatter which should help you find the error. The online formatter I've used is : https://jsonformatter.curiousconcept.com/
[ ](https://chat.hyperledger.org/channel/composer?msg=95J2L2tmSLAD4Qckv) @Varun2887 This looks like a Fabric problem, not a Composer problem, I suggest you ask in the #Fabric channels
[ ](https://chat.hyperledger.org/channel/composer?msg=ZRBSot2snNJSxNfcr) @rthatcher Thanks
i found the error i am working on it
Hi guys!
Could You please guide me how to build custom composer-rest-server image?
I've made some changes for my prototype inside node app and need to rebuild it.
Should I just run docker build inside directory with Dockerfile?
I'm asking because I don't see any copy file phase inside, so I'm not sure who it can be built.
thanks
@DenisDoronin Here is the dockerfile used to build the standard rest server
https://github.com/hyperledger/composer/blob/master/packages/composer-rest-server/docker/Dockerfile
We just pull the latest version from npm.
But if you have customized the rest server yourself or built a custom rest server, then you would need to find the most appropriate way to inject your code into the image. COPY being one way.
hi guys i am following the following tutorial in deploying multiorg setup
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
got the following error when installing bussiness network for org2
composer network install --card PeerAdmin@byfn-network-org2 --archiveFile trade-network.bna
⠸ Installing business network. This may take a minute...E0730 17:45:02.761554740 18888 ssl_transport_security.cc:599] Could not load any root certificate.
E0730 17:45:02.761598128 18888 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0730 17:45:02.761622077 18888 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0730 17:45:02.761637302 18888 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:9051'
E0730 17:45:02.761647122 18888 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0730 17:45:02.762833479 18888 ssl_transport_security.cc:599] Could not load any root certificate.
E0730 17:45:02.762850109 18888 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0730 17:45:02.762870079 18888 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0730 17:45:02.762882355 18888 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:10051'
E0730 17:45:02.762891922 18888 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
⠴ Installing business network. This may take a minute...E0730 17:45:02.980148814 18888 ssl_transport_security.cc:599] Could not load any root certificate.
E0730 17:45:02.980190952 18888 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0730 17:45:02.980211693 18888 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0730 17:45:02.980223506 18888 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:9051'
E0730 17:45:02.980232858 18888 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0730 17:45:02.981421486 18888 ssl_transport_security.cc:599] Could not load any root certificate.
E0730 17:45:02.981448334 18888 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0730 17:45:02.981466312 18888 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0730 17:45:02.981476832 18888 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:10051'
E0730 17:45:02.981486083 18888 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
hi guys i am following the following tutorial in deploying multiorg setup
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
got the following error when installing bussiness network for org2
composer network install --card PeerAdmin@byfn-network-org2 --archiveFile trade-network.bna
⠸ Installing business network. This may take a minute...E0730 17:45:02.761554740 18888 ssl_transport_security.cc:599] Could not load any root certificate.
E0730 17:45:02.761598128 18888 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0730 17:45:02.761622077 18888 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0730 17:45:02.761637302 18888 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:9051'
E0730 17:45:02.761647122 18888 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0730 17:45:02.762833479 18888 ssl_transport_security.cc:599] Could not load any root certificate.
E0730 17:45:02.762850109 18888 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0730 17:45:02.762870079 18888 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0730 17:45:02.762882355 18888 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:10051'
E0730 17:45:02.762891922 18888 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
⠴ Installing business network. This may take a minute...E0730 17:45:02.980148814 18888 ssl_transport_security.cc:599] Could not load any root certificate.
E0730 17:45:02.980190952 18888 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0730 17:45:02.980211693 18888 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0730 17:45:02.980223506 18888 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:9051'
E0730 17:45:02.980232858 18888 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0730 17:45:02.981421486 18888 ssl_transport_security.cc:599] Could not load any root certificate.
E0730 17:45:02.981448334 18888 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0730 17:45:02.981466312 18888 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0730 17:45:02.981476832 18888 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:10051'
E0730 17:45:02.981486083 18888 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
Everything went fine when deploying the bussiness network to org1 when doing the same step to org2 got the following error
Hi @davidkel , thanks, I've got it. I guess I need COPY + node init / build commands. I'll try this
chain code not found error
@AnithaReddy - don't know your model but something like below - eg. assuming you can get the owner of an asset resource, and therefore 'his/her' org ? ```rule accesstoAssetsORG1 {
description: "Only the org1 has access to create/update"
participant(p) : "test.SampleParticipant"
operation: ALL
resource(r): "test.SampleAsset"
condition: (p.organisation == r.owner.organisation)
action: ALLOW
}
or
rule accesstoAssetsORG1_txn{
description: "Only the org1 has access to create/update marshalled via txn"
participant(p) : "test.SampleParticipant"
operation: ALL
resource(r): "test.SampleAsset"
transaction(tx):"test.SampleTxn"
condition: (p.organisation == r.owner.organisation)
action: ALLOW
}```
namespace test
// The simplest asset possible
participant SampleParticipant identified by id {
o String id
o String name
}
asset SampleAsset identified by assetId {
o String assetId
--> SampleParticipant owner
}
transaction viewAsset{
o String assetId
}
[ ](https://chat.hyperledger.org/channel/composer?msg=cT7zn5i3wR6E69Hgq) @mahoney1 namespace test
// The simplest asset possible
participant SampleParticipant identified by id {
o String id
o String name
}
asset SampleAsset identified by assetId {
o String assetId
--> SampleParticipant owner
}
transaction viewAsset{
o String assetId
}
[ ](https://chat.hyperledger.org/channel/composer?msg=cT7zn5i3wR6E69Hgq) @mahoney1 And my requirement is only participants of ORG1 should be able to create(ADD) assets bt whereas ORG2 should only be able view all the assets created
[ ](https://chat.hyperledger.org/channel/composer?msg=5GzTYixcRuuGaES2E) and how can we get the owner of the resource when it is not created (p.organisation == r.owner.organisation) in the condition ??
[ ](https://chat.hyperledger.org/channel/composer?msg=hakWBWAFprNtQrkSJ) @satyajitdeshmukh When you restarted your laptop - did you re-run the `startFabric.sh` script ? If so please see this Stack Overflow Q/A: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
Hello all,
How could I customize the REST API generated by `composer-api-server` ? I need to add a custom fonction that does more than thoses CRUD and Queries generated fonctions.
Cheers.
antonio
[ ](https://chat.hyperledger.org/channel/composer?msg=57qCTEnTbv6fhFNEt) @aparolini Have you seen this document? https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=7WZfcpooroRJXP2R3) @rthatcher Thanks for this. This is what I was looking for.
Clipboard - July 30, 2018 3:57 PM
Hello all,
I have the following problem: I've created and submitted some transaction with the composer-client API , after I've added one more property to the transaction in the model.cto I tried to submit it again. There comes the trouble. I've got an error saying the 'variable' is not defined. I constructed the transaction with the serializer.fromJSON method. On the other hand when I skip that variable I got an error saying missing required field 'variable'. What should I do to fix this?
Hello ! I have an issue with permissions.
I want that doctor (participant) can create a vaccinate (transaction) if my child (asset) have this doctor in "hasdoctor".
So i added this rule :
rule DoctorVaccinate {
description: "Doctor can create, update and read vaccinate for their children"
participant(d): "vaccinspace.Doctor"
operation: ALL
resource(c): "vaccinspace.Child"
transaction(tx): "vaccinspace.Vaccinate"
condition: (c.hasdoctor.getIdentifier() == d.getIdentifier())
action: ALLOW
}
But when i try to create this transaction with doctor user on one of these child i have :
error executing chaincode: transaction returned with failure: AccessException: Participant 'vaccinspace.Doctor#130056c0b02f8ec3336b1507ff830f529e00202be2a26c02c6e39f24a04992de' does not have 'CREATE' access to resource 'vaccinspace.Vaccinate#d87a0f252d6ba7c13cb2746e76c3a5fca29e25afc2b8bfbe2103f53155af7880'
What am I doing wrong ?
@AnithaReddy something like ```rule accesstoAssetsORG1 {
description: "Only org1 owners can create"
participant(p) : "test.SampleParticipant"
operation: CREATE, READ
resource(r): "test.SampleAsset"
condition: (orgCheck(r))
action: ALLOW
}
rule accesstoAssetsORGother {
description: "Other orgs can only view"
participant(p) : "test.SampleParticipant"
operation: READ
resource(r): "test.SampleAsset"
condition: (! orgCheck(r) )
action: ALLOW
}
where (in lib/script.js):
function orgCheck(asset) {
return asset.owner.organisation === "org1"
}```
@Poneey stick a rule up top of ```rule accessVaccinateTxn {
description: "Doctor has access to txn itself as resource"
participant: "vaccinspace.Doctor"
operation: ALL
resource: "vaccinspace.Vaccinate"
action: ALLOW
}``` to access the transaction resource itself
hello guys, I have 2 transactions : offcialrequest and offcialaccept - within the transaction processi ng function for offical accept i want top reference the id for officialrequest to perform validation - i understand that for assets i can use getAssetregistry but is there an equivalent for gettransactionregistry - i tried and i got an error
[ ](https://chat.hyperledger.org/channel/composer?msg=yJ9Bgqzt5jovqMGDB) @rthatcher @rthatcher yesi run startFabric.sh command again... i create peer admin card again.. still same error..
@mahoney1 Thanks, so i can't restrict rule to specific assets?
composer card list
composer card list
composer card list
@Levilk suggest to post it to Stack Overflow with full details of what you're trying to do.
[ ](https://chat.hyperledger.org/channel/composer?msg=BTZkxYZiLyCZcFPfT) @Poneey you can, all depends what you mean in your use case - might suggest to write your question on S/O with what you want to achieve. cheers.
[ ](https://chat.hyperledger.org/channel/composer?msg=7WZfcpooroRJXP2R3) @rthatcher This documentation show how to generate the 'composer-api-server' basic app, wich is a start. But what would help now is an real exemple, like where do I put my custom javascript code that will access hyperledger, consolidate some data, and return the result.
@davidkel , Have You ever faced such error?
`npm ERR! path /home/composer/.npmrc
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall open
npm ERR! Error: EACCES: permission denied, open '/home/composer/.npmrc'
npm ERR! { Error: EACCES: permission denied, open '/home/composer/.npmrc'
npm ERR! stack: 'Error: EACCES: permission denied, open \'/home/composer/.npmrc\'',
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'open',
npm ERR! path: '/home/composer/.npmrc' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.`
I've changed docker file (simply add COPY . /home/composer/ and su -c "npm install" - composer to build from working dir
Do You know how to proper configure permissions here? thanks
Has joined the channel.
Hello all\
@satyajitdeshmukh - the startFabric.sh script completely deletes your Fabric, and creates a new empty Fabric. So all your business networks are deleted, and all your cards are useless except the PeerAdmin card. So you have to start again...
Please delete all cards except PeerAdmin. Then use `composer network install` and `composer network start` again.
If you want to keep you Business Network when you stop/start your computer, please follow the instructions in the Stack Overflow post.
I am writing my first network using IBM blockchain foundation developer as guide. But I am having issues with this line: `transaction AccountTransfer identified by transferId{
o String transferId
--> Account from
--> Account to
o Double amount
}`
I am writing my first network using IBM blockchain foundation developer as guide. But I am having issues with this line: `transaction AccountTransfer identified by transferId{
o String transferId
--> Account from
--> Account to
o Double amount
}`
Which keeps flagging an error "Error: t: Transaction should not specify an identifying field. Line 29 column 1, to line 34 column 2."
Please can I get help resolving this
[ ](https://chat.hyperledger.org/channel/composer?msg=3nW5iQXGDntJKaFaP) @aparolini I'm sorry, I haven't added additional code myself. I would hope there is sufficient information on the LoopBack site: https://loopback.io/doc/en/lb3/
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=RpnaeL2Pja8ASf9ha) @Korede The error message is correct. A Transaction definition does not include an 'identified by' field . (this is different to Assets and Participants)
When you run a transaction, a TransactionID is created and stored in the Fabric, but you don't define it:
```
transaction AccountTransfer {
--> Account from
--> Account to
o Double amount
}
```
Has joined the channel.
Thanks for the help @rthatcher
I have a question. Is the hyperledger composer network data (like participants and assets) stored locally on your machine when you create a local business network? If it is stored locally then at which location it is stored? And if it not then where exactly it is stored?
hi, on compose-rest-server, can i select what relation include? or join any field of relations? {"include": "resolve"} include all relations and don't work for me.
MVCC
Hello all, I'm receiving a MVCC_READ_CONFLICT when loading data through node into an otherwise working HL composer setup. It seems to only be when adding one asset type (Account) through the POST method on compose-rest-server. Each account has a unique ID by which it is identified (a hash of a unique combination of properties of the account). If I run the load a second time, the accounts will load. I've read stack overflow and the suggestion to look at Batch Timeout (tried setting that to 0.1s and it just froze the platform). I've also seen the suggestion to queue the inserts or to retry them. It seems though that HL should be able to handle receiving a large volume (only talking 100-150) POST requests in a few seconds. I also tried reducing down to one peer to make sure there wasn't some conflict there. Any thoughts on how best to handle volume or what I might be missing?
[ ](https://chat.hyperledger.org/channel/composer?msg=faAfS3kdWdaPBZoxv) @BhushanNewalkar @BhushanNewalkar the data is typically stored locally to the validating peer at /var/hyperledger/production/db.
Hi, I want to create GET methods for my frontend to get certain data like seller's name or the cost of the product for every sellers for a particular product from the blockchain, I have created assets for the product, and participants for the sellers, which has those information, How could I make an api method in composer-rest-server, Create an asset nor, creating a transaction wont be possible because I am not posting any content right, Querying using composer cli will also not help me in making calls to frontend, is there any way to solve this? thanks in advance
Has joined the channel.
@choco_coder composer-rest server has an API, you simply do `localhost:3000/Sellers/` or whatever your model file, the response will have all the information on sellers
I am having trouble with the setup of Hyperledger Composer on Docker, and was wondering if someone can help me. I spun up a Docker and followed the "Installing pre-requisites" and "Setup your development environment" instructions:
```
Installation completed, versions installed are:
Node: v8.11.3
npm: 6.2.0
Docker: Docker version 18.06.0-ce, build 0ffa825
Docker Compose: docker-compose version 1.13.0, build 1719ceb
Python: Python 2.7.12
```
So I've successfully installed the prerequisites on Ubuntu. Then I also successfully `npm install`'ed all the composer files as well. However, when it comes time to start the fabric instance, I ran `./downloadFabric.sh` with the following error:
```
Running 'downloadFabric.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Warning: failed to get default registry endpoint from daemon (Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?). Using system default: https://index.docker.io/v1/
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
```
I have tried lots of different commands like `sudo service docker restart` but to no avail; `sudo service docker status ` gives `Docker is not running`.
Is this a problem with Docker-in-Docker? What have I missed? I was able to get the entire system set up on my Mac no problem.
@lieu 3 have you followed the POST Installation steps mentioned in docker ?? Similar error occurred to me when I had not followed the POST Installation steps of the docker.
Hi , after restart my laptop fabric peers are showing exited status, how do I make it restart , am using `docker run CONTAINER_ID`, `docker start CONTAINER_ID` but always shows exited status , anyone help me to solve the same
Has joined the channel.
Hello everyone, Is there any language supported on HyperLedger Composer other than JavaScript?
i created a asset and got transaction id. The easiest way to check details is check in transaction tab. but is there any to fetch details via API.
correct me if i am wrong here. i am beginner
[ ](https://chat.hyperledger.org/channel/composer?msg=eoWpZESjqu2ZnrCSq) @lieu 3 clear all docker images (sudo docker rmi "imageid") and then try ` sudo service docker stop ` then ` sudo service docker start ` maybe it will work
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Fi27h3CJRHZs2qPtW) @mahoney1 thanks @mahoney1 :) i will look on to this
[ ](https://chat.hyperledger.org/channel/composer?msg=W6Ha8TZNgWZBRW5WF) bt how can a asset have owner when it is not created yet ? return asset.owner.organisation === "org1" ??
I'm looking for someone with composer experience to help me build a POC in Composer, if you are interested please let me know.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZcBdFF9nxaFQMK9mJ) @rthatcher thanks @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=ZcBdFF9nxaFQMK9mJ) @rthatcher thanks
@malviyamukul ```
composer@9d527d83ffb3:~/fabric-dev-servers$ sudo service docker stop
[sudo] password for composer:
* Stopping Docker: docker start-stop-daemon: warning: failed to kill 2634: No such process
No process in pidfile '/var/run/docker-ssd.pid' found running; none killed.
composer@9d527d83ffb3:~/fabric-dev-servers$ sudo service docker start
* Starting Docker: docker [ OK ]
composer@9d527d83ffb3:~/fabric-dev-servers$ docker images
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
composer@9d527d83ffb3:~/fabric-dev-servers$ sudo service docker restart
* Starting Docker: docker [ OK ]
composer@9d527d83ffb3:~/fabric-dev-servers$ sudo service docker stop
* Stopping Docker: docker start-stop-daemon: warning: failed to kill 3002: No such process
No process in pidfile '/var/run/docker-ssd.pid' found running; none killed.
```
@malviyamukul
```
composer@9d527d83ffb3:~/fabric-dev-servers$ sudo service docker stop
[sudo] password for composer:
* Stopping Docker: docker start-stop-daemon: warning: failed to kill 2634: No such process
No process in pidfile '/var/run/docker-ssd.pid' found running; none killed.
composer@9d527d83ffb3:~/fabric-dev-servers$ sudo service docker start
* Starting Docker: docker [ OK ]
composer@9d527d83ffb3:~/fabric-dev-servers$ docker images
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
```
I can start docker but it doesn't seem to actually start
```
```
composer@9d527d83ffb3:~/fabric-dev-servers$ sudo service docker stop
* Stopping Docker: docker start-stop-daemon: warning: failed to kill 3002: No such process
No process in pidfile '/var/run/docker-ssd.pid' found running; none killed.
```
```
composer@9d527d83ffb3:~/fabric-dev-servers$ sudo service docker stop
[sudo] password for composer:
* Stopping Docker: docker start-stop-daemon: warning: failed to kill 2634: No such process
No process in pidfile '/var/run/docker-ssd.pid' found running; none killed.
composer@9d527d83ffb3:~/fabric-dev-servers$ sudo service docker start
* Starting Docker: docker [ OK ]
composer@9d527d83ffb3:~/fabric-dev-servers$ docker images
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
composer@9d527d83ffb3:~/fabric-dev-servers$ sudo service docker restart
* Starting Docker: docker [ OK ]
composer@9d527d83ffb3:~/fabric-dev-servers$ sudo service docker stop
* Stopping Docker: docker start-stop-daemon: warning: failed to kill 3002: No such process
No process in pidfile '/var/run/docker-ssd.pid' found running; none killed.
```
It seems like docker is not able to start properly
Does anyone have a working Dockerfile/Docker image that is able to run Fabric and Composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=9SRpwpumENro27Asn) are you using aws instance. i had same problem. i just removed docker and again installed it `apt-get install docker.io ` and docker composer too
@lieu 3 Running docker inside of docker requires extra work to make it work correctly, but it is not a recommended practice see https://stackoverflow.com/questions/27879713/is-it-ok-to-run-docker-from-inside-docker
@malviyamukul I am using a Docker container. Were you able to run it on AWS ? Did you not install Docker through the prerequisites file?
Thanks for the link @davidkel . What do you recommend I should host it on?
@malviyamukul
```
curl -O https://hyperledger.github.io/composer/latest/prereqs-ubuntu.sh
chmod u+x prereqs-ubuntu.sh
```
@lieu 3 bare metal or a linux image running in a hypervisor (xen, virtualbox, esxi, vmware etc)
@lieu 3 for development I use virtualbox + vagrant, for testing a kubenetes type enviroment I use minikube. If doing cloud deployment there are lots of options from service providers.
@davidkel I'll spin up a heroku dyno then
What have you used?
ohh i forget you're running docker inside docker
@lieu 3 for development I use virtualbox + vagrant, for testing a kubenetes type enviroment I use minikube. If doing cloud deployment there are lots of options from service providers.
i've never used kubenetes before unfortunately so I'll just try to deploy on bare metal ubuntu. thanks for the help @davidkel and @malviyamukul !
@malviyamukul Would you recommend deploying on AWS?
Hello! I have a new error on my network : when i try to modify (do a PUT) on asset or participant, it return this error "Unhandled error for request PUT /api/Tuteur/23abd0c4867b74fd17d14efff01e3cc905874022fcba41dde3b91111efceb829: TypeError: Cannot read property 'idTuteur' of undefined"
But change happenned..
Any idea ?
[ ](https://chat.hyperledger.org/channel/composer?msg=vD3Y5vWd8MgfpW5tX) No buddy. you will get lots of no space error
your model contain property 'idTuteur' ? maybe js error
@davidkel hi, seems the releases frequency has attenuated, the Composer initiative is still in vigor, right:)?
[ ](https://chat.hyperledger.org/channel/composer?msg=k33fmhjBmRoCkKZbB) @agile01 Composer does support Javascript only - the Transaction Processing script must be written in Javascript. There is also the Javascript API, but if you want to use something different you could write a client program using a different language and use that to call the REST server API endpoints.
[ ](https://chat.hyperledger.org/channel/composer?msg=zh9YvWxKSJ7bNP7GN) @malviyamukul You can use the REST API to retrieve transactions via the Historian, and also write Queries against it. You can also use the Javascript API - see this link for some more detail: https://hyperledger.github.io/composer/latest/api/client-historian
Hi , I have this query file query selectCommoditiesWithHighQuantity {
description: "Select bank details"
statement:
SELECT com.biz.Bank WHERE (name == _$name)
}
In node js : getParticipantRegistry('com.biz.Bank')
.then(function (participantregistry) {
query('selectCommoditiesWithHighQuantity')
.then(function (results){console.log(results);})
})
I want to pass parameter name from node js . How do I do that?
[ ](https://chat.hyperledger.org/channel/composer?msg=FPoFMKEhuXNBv2Z2W) @uber.twin yes, still active - we're working on 1.2 Fabric support in Composer, will announce when that release is ready to ship
@deep123 - there is an example posted here -> https://stackoverflow.com/questions/51585100/hyperledger-composer-not-able-to-access-attributes-of-object-returned-from-quer/51587918#51587918
@deep123 - there is an example posted here (similar to what you're trying to achieve)-> https://stackoverflow.com/questions/51585100/hyperledger-composer-not-able-to-access-attributes-of-object-returned-from-quer/51587918#51587918
Hi , I am using Hyperledger composer for chain code and getting below error .
8998937854481343504.jpg
"PHANTOM_READ_CONFLICT"
basically the issue is that u are updating same asset with multiple transactions
in parallel
2 possible solutions:
1) Update the chaincode in such a way that only one `transaction` updates the data at a time
2) resubmit the transaction on failure
3) ( not a preferred one) implement your own transaction queue
Thanku , @Varun2887 Can you tell me what is difference b/w "MVCC_READ_CONFLICT" and "PHANTOM_READ_CONFLICT"
I am getiing this error also
How can I do Update the chaincode in such a way that only one `transaction` updates the data at a time in Composer
Hi, I am following the https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org tutorial. Everything works fine till I install business network. I get request_timeout_error. The log of error is
Screen Shot 2018-07-31 at 3.59.51 PM.png
Any help would be much appreciated!
Has joined the channel.
Hi , i am trying to install the business network , but am getting below error .. Please me on this
fabric11@adc1:~/.composer$ composer network install --card PeerAdmin@hlfv1 --archiveFile ./workspace-nw/tutorial-network/tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Archive file ./workspace-nw/tutorial-network/tutorial-network@0.0.1.bna does not exist.
Command failed
fabric11@adc1:~/.composer$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3fa3df2ee92d hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 10 minutes ago Up 10 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
01fa4037cd48 hyperledger/fabric-ca:x86_64-1.1.0 "sh -c 'fabric-ca-se…" 10 minutes ago Up 10 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
00e1d307d4d4 hyperledger/fabric-couchdb:x86_64-0.4.6 "tini -- /docker-ent…" 10 minutes ago Up 10 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
63c792b24162 hyperledger/fabric-orderer:x86_64-1.1.0 "orderer" 10 minutes ago Up 10 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
fabric11@adc1:~/.composer$ composer network install --card PeerAdmin@hlfv1 --archiveFile ./workspace-nw/tutorial-network/tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Archive file ./workspace-nw/tutorial-network/tutorial-network@0.0.1.bna does not exist.
Command failed
fabric11@adc1:~/.composer$
Sorry ignore the above
fabric11@adc1:~/fabric-dev-servers$ composer network install --card PeerAdmin@hlfv1 --archiveFile ./workspace-nw/tutorial-network/tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
fabric11@adc1:~/fabric-dev-servers$
Please help me on the above issue
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=sGLxxwKY9ipEBo2hZ) @SilambarasanMadhappan the "14 UNAVAILABLE" error means that the command `composer network install` can't find the Fabric at the addresses and ports specified in the connection.json of the Card being used. Normally I would ask if the Fabric is started.
[ ](https://chat.hyperledger.org/channel/composer?msg=dL2s2C6KX5TTKSYfW) @Anshulmittal looking at screenshot - sounds like your 2nd org definitions - eg "peer0.org2.example.com": section onwards - isn't quite right? Has it got the right tlsCACerts pem certificate, in the correct format (like should already be the case for Org1 peers) ? Is the profile defined to use grpcs for org2's peers? I would compare your connection.json for the Org2 admin, with the tutorial (obviously, you're going to have a real cert pasted in to your connection profile). Also see this for ref https://stackoverflow.com/questions/49667690/ssl-transport-security-cc599-could-not-load-any-root-certificate
Hello! I have a new error on my network : when i try to modify (do a PUT) on asset or participant, it return this error "Unhandled error for request PUT /api/Tuteur/23abd0c4867b74fd17d14efff01e3cc905874022fcba41dde3b91111efceb829: TypeError: Cannot read property 'idTuteur' of undefined"
But change happenned..
Any idea ?
[ ](https://chat.hyperledger.org/channel/composer?msg=5sTWcPG5NbdQ2Kp37) @rthatcher yeah i have checked with docker ps command.. please find my execution steps .. please correct me if i am wrong
fabric11@adc1:~/fabric-dev-servers$ ./startFabric.sh
Development only script for Hyperledger Fabric control
Running 'startFabric.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Removing network composer_default
WARNING: Network composer_default not found.
Creating network "composer_default" with the default driver
Creating couchdb ... done
Creating orderer.example.com ... done
Creating ca.org1.example.com ... done
Creating peer0.org1.example.com ... done
sleeping for 15 seconds to wait for fabric to complete start up
2018-07-31 11:52:14.077 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
.
.
..
2018-07-31 11:52:14.661 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2018-07-31 11:52:14.662 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2018-07-31 11:52:14.663 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized
2018-07-31 11:52:14.664 UTC [msp/identity] Sign -> DEBU 004 Sign: plaintext: 0AA0070A5C08011A0C08EE9A81DB0510...61CDC43BC87D1A080A000A000A000A00
2018-07-31 11:52:14.664 UTC [msp/identity] Sign -> DEBU 005 Sign: digest: 673F330750815BE5154BD590872F6E4BB5497689A0D30E07E636E57ED5B05918
2018-07-31 11:52:15.018 UTC [channelCmd] executeJoin -> INFO 006 Successfully submitted proposal to join channel
2018-07-31 11:52:15.018 UTC [main] main -> INFO 007 Exiting.....
fabric11@adc1:~/fabric-dev-servers$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1046da644836 hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" 25 seconds ago Up 23 seconds 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
72395c2a0879 hyperledger/fabric-orderer:x86_64-1.1.0 "orderer" 26 seconds ago Up 24 seconds 0.0.0.0:7050->7050/tcp orderer.example.com
fadc7460b7c4 hyperledger/fabric-ca:x86_64-1.1.0 "sh -c 'fabric-ca-se…" 26 seconds ago Up 24 seconds 0.0.0.0:7054->7054/tcp ca.org1.example.com
f62f2273ce70 hyperledger/fabric-couchdb:x86_64-0.4.6 "tini -- /docker-ent…" 26 seconds ago Up 24 seconds 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
fabric11@adc1:~/fabric-dev-servers$
fabric11@adc1:~/fabric-dev-servers$ ./createPeerAdminCard.sh
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.19.11
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Successfully imported business network card
Card file: /tmp/PeerAdmin@hlfv1.card
Card name: PeerAdmin@hlfv1
Command succeeded
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --card
Hello,
Hello,
Follow the doc for enabling multiusers in the rest server for my use case.
After running the rest server in multiuser mode 'composer-rest-server -n never -c admin@rinku -m true' , the doc says:
Hello,
Follow the doc for enabling multiusers in the rest server for my use case.
After running the rest server in multiuser mode 'composer-rest-server -n never -c admin@rinku -m true' , the doc says:
```
Check that the wallet does not contain any business network cards by calling the GET /wallet operation. The response from the operation should be: []
```
But I keep receiving the 401 Authorization Required error when I call this /wallet URL
Anybody know what I am missing ?
Thank you
Hello,
Follow the doc for enabling multiusers in the rest server for my use case: https://hyperledger.github.io/composer/v0.16/integrating/enabling-multiuser
After running the rest server in multiuser mode `composer-rest-server -n never -c admin@rinku -m true` , the doc says:
```
Check that the wallet does not contain any business network cards by calling the GET /wallet operation. The response from the operation should be: []
```
But I keep receiving the 401 Authorization Required error when I call this /wallet URL
Anybody know what I am missing ?
Thank you
Hello,
Following the doc for enabling multiusers in the rest server for my use case: https://hyperledger.github.io/composer/v0.16/integrating/enabling-multiuser
After running the rest server in multiuser mode `composer-rest-server -n never -c admin@rinku -m true` , the doc says:
```
Check that the wallet does not contain any business network cards by calling the GET /wallet operation. The response from the operation should be: []
```
But I keep receiving the 401 Authorization Required error when I call this /wallet URL
Anybody know what I am missing ?
Thank you
Hello,
Following the doc for enabling multiusers in the rest server for my use case: https://hyperledger.github.io/composer/v0.16/integrating/enabling-multiuser
After running the rest server in multiuser mode `composer-rest-server -n never -c admin@rinku -m true` , the doc says:
```
Check that the wallet does not contain any business network cards by calling the GET /wallet operation. The response from the operation should be: []
```
But I keep receiving the `401 Authorization Required` error when I call this /wallet URL
Anybody know what I am missing ?
Thank you
hi ..did you created the card?
[ ](https://chat.hyperledger.org/channel/composer?msg=5MF67mz7PDecZczJC) @maniyas Yes. If I run my server without the multi-user mode, it works well.
[ ](https://chat.hyperledger.org/channel/composer?msg=5MF67mz7PDecZczJC) @maniyas Yes. If I run my REST server without the multi-user mode, it works well.
[ ](https://chat.hyperledger.org/channel/composer?msg=5MF67mz7PDecZczJC) @maniyas Yes. If I run my REST server without the multi-user mode, the other methods work well.
Why when I try to install prerequisites, npm not installed? I run this commands:
```
curl -O https://hyperledger.github.io/composer/latest/prereqs-ubuntu.sh
chmod u+x prereqs-ubuntu.sh
./prereqs-ubuntu.sh
```
is it possoble to create/edit existing transaction processor functions for the rest API POST transaction - the rest API allows you to create a transaction but i want to implement some logic when this happens
is it possoble to create/edit existing transaction processor functions for the rest API POST asset - the rest API allows you to create a transaction but i want to implement some logic when this happens
Alternatively is there a way to disable the standard API POST functions - I can create my own equivalent bespoke transactions to create assets but need to avoid duplication
[ ](https://chat.hyperledger.org/channel/composer?msg=s4tqEmByaQKuTF2pn) @aparolini When you use Multiuser mode you are forced to also use Authentication, so you need to hit the REST server with the URL ending something like /auth/github (depending on what you specified in COMPOSER_PROVIDERS environment variable. Once you authenticate (login using github credentials) the 401 message should not be seen.
[ ](https://chat.hyperledger.org/channel/composer?msg=sdFneM54fXMnZbiu9) @marksta Thanks a lot. It really worked.
[ ](https://chat.hyperledger.org/channel/composer?msg=QEF8ErNdwrtEJvjhk) @Drest I think there are 2 ways to achieve what you are looking for:
1. Customize the REST server - there is a document available for this: https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server
2. Implement an ACL rule as described in this Stack Overflow Q/A: https://stackoverflow.com/questions/50643232/hyperledger-composer-access-control-allow-create-in-transaction
[ ](https://chat.hyperledger.org/channel/composer?msg=s6rwoSuwM3xLbYAAq) UPD: I run it as user with sudo priviledges.
[ ](https://chat.hyperledger.org/channel/composer?msg=3wLaxW5SNyhLZqn39) @Poneey strange - are you using a custom REST server?
@labcoinpoc hello bro, how are you? when I starting to run Composer on background process it's work, but when I start the angular apps they say 502 gate time out.
Localhost:3000 it's work find, Show I recreate the angular apps again?
Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=tAkp6E92TwdSZ6QXx) @mahoney1 No i use REST server generated with "composer-rest-server" it works fine before, i don't remember if i change something ...
[ ](https://chat.hyperledger.org/channel/composer?msg=A5d7pjuP4bfCPDL4z) @Poneey I have not see that particular error with the REST server.
Have you changed the model without restarting the REST server?
How are you calling the REST API? - through an application or via the Explorer or curl? Perhaps you can test in the explorer to isolate the problem?
Has joined the channel.
@Poneey this error "TypeError: Cannot read property 'idTuteur' of undefined" " usually means that the object from which you are trying to read the idTuteur property was not found or is otherwise not defined. I would search for idTuteur and look at all references and double check that they are being set correctly.
Has joined the channel.
Has joined the channel.
I am running composer against enterprise plan. My composer version is 0.19.12. I try to install a new version of network (previous had 0.0.1 install/instantiated) successfully. But when I issued "install" command, it failed : composer network install -c stonepaper5 -a stonepaper-builder\@0.0.5.bna
:heavy_multiplication_x: Installing business network. This may take a minute...
Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode stonepaper-builder@0.0.5.bna has been successfully instantiated and try again: could not find chaincode with name ‘stonepaper-builder@0.0.5.bna’
Command failed
from my understanding, start/upgrade command will instantiate the chaincode, but I have to run install first then run start/upgrade. This is chicken/egg problem. Could some one help me on this? Which step I made wrong?
Has joined the channel.
@SandySun2000 Fabric interaction such as install/start/upgrade should be done with a fabric network card (ie cards that we used to perform the initial install or start). You are using a business network card for the install. You can tell the difference by doing a `composer card list -c
@SandySun2000 Fabric interaction such as install/start/upgrade should be done with a fabric network card (ie cards that were used to perform the initial install or start). You are using a business network card for the install. You can tell the difference by doing a `composer card list -c
@davidkel Thanks.
┌───────────┬────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├───────────┼────────┼──────────────────┤
│ ca │ admin │ │
├───────────┼────────┼──────────────────┤
│ stone │ admin │ stone@0.0.1.bna │
└───────────┴────────┴──────────────────┘
@davidkel you mean I need to use ca to run install?
If that's a card you had used to perform an install or start, then yes
composer card create -p connection.json -f stone.card -u admin -s F0XXXXX-r PeerAdmin -r ChannelAdmin
Successfully created business network card file to
Output file: stone.card
Command succeeded
sandysuns-mbp:stone sandysun$ composer card import -f stone.card -c ca
Successfully imported business network card
Card file: stone.card
Card name: ca
Command succeeded
I did those steps for ca card
can I use it to run install? I haven't create it by specifying the public key and private keys under credential folder
do you have the document for me to reference which card I need to use to install/start the network?
sandysuns-mbp:stone sandysun$ composer card create -p connection.json -f stone.card -u admin -s F0XXXXX-r PeerAdmin -r ChannelAdmin
Successfully created business network card file to
Output file: stone.card
Command succeeded
sandysuns-mbp:stone sandysun$ composer card import -f stone.card -c ca
Successfully imported business network card
Card file: stone.card
Card name: ca
Command succeeded
sandysuns-mbp:stone sandysun$ composer identity request --card ca --path ./credentials
‘admin’ was successfully requested and the certificates stored in ‘/usr/local/goprog/src/github.com/hyperledger/issue27/stone/credentials’
Command succeeded
sandysuns-mbp:stone sandysun$ pwd
/usr/local/goprog/src/github.com/hyperledger/issue27/stone
sandysuns-mbp:stone sandysun$ cd credentials/
sandysuns-mbp:credentials sandysun$ ls
PeerOrg1CA-root.pem admin-priv.pem admin-pub.pem
sandysuns-mbp:stone sandysun$ composer card list
The following Business Network Cards are available:
Connection Profile: stonepaper
┌───────────┬────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├───────────┼────────┼──────────────────┤
│ ca │ admin │ │
└───────────┴────────┴──────────────────┘
Issue composer card list --card
That's steps that I made
@SandySun2000 You need to use a fabric network card that has the authority to install chaincode onto a peer. That card will have an identity associated with it (public cert, private key) that is known to the Peer as an identity that has admin authority. You need to build a card with that identity and use that card. I have assumed you already had this card as you suggested you had already installed chaincode onto the peers in the past
@davidkel I am working on the customer's problem. they have the different problem as run into timeout. I am stuck on the install step for 2 days. Could you please let me know where to obtain fabric network card? not by issuing any of the commands that I posted here?
@SandySun2000 You create the fabric network card (using composer card create) from
1. An identity defined by a certificate and private key (this identity comes from whoever provides the fabric network or provides a way for you to update the network with an appropriate certificate to specify the identity who can perform peer admin activities)
2. A connection profile which describes the fabric network which should come from the network provider or who built the network you are using
@davidkel composer card create -f stone.card -n stone@0.0.1.bna -p connection.json -u admin -c ./credentials/admin-pub.pem -k ./credentials//admin-priv.pem
you mean this command without -n specify right?
@SandySun2000 yep, don't specify -n
got you. Let me try again
Has joined the channel.
hello, is it possible to dynamically change rules beyond what they were defined to be in permissions.acl? for example if in my model i have participant with one of their fields as an array of other participants, how do i make it so those participants are allowed to read while others are not?
also how would i loop through that array?
Has joined the channel.
Hello, I've been trying to figure out Composer used with Docker Swarm. Without swarm, I was able to have two VM's running with 1 CA, 2 peers, 1 orderer on one machine and 1 peer on the other machine. I installed the bna locally by editing the PeerAdmin connection.json to match the VM's IP. However now that I switched to swarm, I'm not sure how to change the connection.json file to connect to the peers. I tried changing the names in the connection file to the container names that swarm generates but i got a "no response from peer" error. Any advice would be appreciated.
[ ](https://chat.hyperledger.org/channel/composer?msg=vBDorwCvsfribmM5z) @mbahfauz I suggest that first testing your rest server with postman or curl to see that if the server is actually working, if the server is fine, then check the code of Angular app. If the server didn't start, run it again in front and check the log, or run it background but write the log into a file other than >/dev/null
Has joined the channel.
HI I am facing understand the architecture of composer.
I know about how to build a BNA but how client app interact with it to mantain that authenticity. I am not able to understand despite of going throught so many blogs.
Hey guys how can I see return value of a transaction via the REST server?
I have marked my transaction with @returns directive and am returning Promise
When I execute the function via the REST server, even though I get HTTP 200, I see no return value anywhere
Seems like this issue is going to be fixed soon: https://github.com/hyperledger/composer/issues/4245
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi, I am not getting the updated result when I do query, whereas in the Test tab , I can clearly see that the asset is updated. How do I get the updated results from query?
Hello Mates, It seems quite a long time since newer version of composer published? I'm specifically interested when can we expect compatibility for fabric 1.2 version?
@BhaveshPatadiya it's being worked on at the moment... probably next week
@rthatcher No i restart the Rest server everytimes. I tested through an application and with the Rest API (localhost:3000/explorer) and i have the same error
Has joined the channel.
i am following composer multi org setup
i am getting the following error when trying to ping my network card i created any help
sudo composer network ping -c alice@trade-network
E0801 12:51:39.621281611 11507 ssl_transport_security.cc:599] Could not load any root certificate.
E0801 12:51:39.621382494 11507 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0801 12:51:39.621423459 11507 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0801 12:51:39.621495684 11507 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:7051'
E0801 12:51:39.621512262 11507 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0801 12:51:39.622603701 11507 ssl_transport_security.cc:599] Could not load any root certificate.
E0801 12:51:39.622668868 11507 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0801 12:51:39.622705564 11507 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0801 12:51:39.622722399 11507 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:8051'
E0801 12:51:39.622737299 11507 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0801 12:51:39.626812264 11507 ssl_transport_security.cc:599] Could not load any root certificate.
E0801 12:51:39.626841051 11507 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0801 12:51:39.626877747 11507 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0801 12:51:39.626893403 11507 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:7051'
E0801 12:51:39.626908075 11507 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E0801 12:51:39.628414949 11507 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0801 12:51:39.629179755 11507 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
any help to rectify my error
i checked with all the docker containers everyone is up
any help to rectify my error
i checked with the docker containers all are up
Has joined the channel.
Hello. Is it a good practice to have the front end interogate directly composer-rest-server ? Or is it a better practice to have another server in the middle ?
Hi there, I am kinda new to Composer. I have setup a network consisting of multiple orgs with multiple peers. All docker containers are running successfully. I installed the network for all orgs, but when I want to start the network (using composer network start --networkName test-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@super-inova --file networkadmin.card), the dev-peer containers are starting, but I get the following error message returned from composer: "Error: Error trying to start business network. Error: Parameter must be a ProposalResponse Object". I tried googling for this error, but couldn't find anything. I am using composer v0.19.12. Can anyone please steer me in the right direction regarding this error message? What does it mean?
[ ](https://chat.hyperledger.org/channel/composer?msg=jYncQ5hnrPmz6xqxu) @MarcelvandeKerkhof what version of Fabric are you using? - it should be V1.1.0
If your Fabric has Multiple Orgs, you should probably be specifying administrators from Both Orgs when doing the Start, and also specifying an endorsement policy.
Our MultiOrg tutorial takes you through the steps to do this. https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@mahoney1 : Hi, while submitting transactions in Playground, is it possible to give a local file path and then work with file in script.js?
@mahoney1 : Hi, while submitting transactions in Playground, is it possible to give a local file path and then work with that file contents in script.js?
Has joined the channel.
@VenkateshMuthyala - did the `composer network install`, and `composer network start` work OK ? (do you have chaincode containers running - names starting `dev-peer...`)
If the chaincode containers are running then the Fabric is OK and the connection.json you used for the PeerAdmin card should be OK too. Did you use the exact same connection.json to create the alice card?
@rthatcher mdvenkatesh@mdvenkatesh-HP-ProBook-4445s:~/Desktop/composer$ composer network start -c PeerAdmin@byfn-network-org1 -n trade-network -V 0.1.14-deploy.3 -o endorsementPolicyFile=/home/mdvenkatesh/Desktop/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
Starting business network trade-network at version 0.1.14-deploy.3
Processing these Network Admins:
userName: alice
userName: bob
✔ Starting business network definition. This may take a minute...
Successfully created business network cards:
Filename: alice@trade-network.card
Filename: bob@trade-network.card
Command succeeded
mdvenkatesh@mdvenkatesh-HP-ProBook-4445s:~/Desktop/composer$ composer card create -p /home/mdvenkatesh/Desktop/composer/org1/byfn-network-org1.json -u alice -n trade-network -c alice/admin-pub.pem -k alice/admin-priv.pem
Successfully created business network card file to
Output file: alice@trade-network.card
Command succeeded
[ ](https://chat.hyperledger.org/channel/composer?msg=bip8oYHxcAaFCPQuK) @deep123 The script running in the transaction processing is running on the Chaincode Container, not locally on your computer, so it is not practical to access the file system.
both commands ran wothout any errors @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=cXeCxydM6tw2cCMfQ) @rthatcher Thanks for the reply. I have a requirement to upload a file and then access its contents. Is there any way to achieve this?
[ ](https://chat.hyperledger.org/channel/composer?msg=MLEANfr8gx2oxE9AA) @deep123 you would need to access the file in your 'calling' program and then pass as parameters to the Transaction. Or you could explore the request module within the composer runtime as a way of getting external data. https://hyperledger.github.io/composer/latest/integrating/call-out
Hi. I'm working on deploying a business network to a multi organization Fabric tutorial. On step 18, I applied the command "composer network ping -c alice@trade-network" but it returned the error: Error trying invoke business network. Error: Peer localhost:9051 has rejected transaction 'e15f99645754c735382b6e0d779708eda6ea13f949cc448d6f551cfb8d1b7d7c' with code ENDORSEMENT_POLICY_FAILURE. How can I solve this problem?
[ ](https://chat.hyperledger.org/channel/composer?msg=nptGX5zfSQCnCdnti) @VenkateshMuthyala this is a little strange - the errors point to a problem with the certificates in the various "pem" fields in the connection.json file for the alice card. - I assume you are following the tutorial exactly, all on a single machine?
I would suggest that you rename the file `alice@trade-network.card` to something like `oldAlice.card` then delete the alice card from the wallet with `composer card delete` then carefully repeat the commands under Step 18.
You could also try the first few commands under Step 19 for Bob to see if it is an Org1 specific issue.
@LevKowalski it all depends on your org's app architecture and who the pages are serving - generally the REST APIs would be ringfenced by some Auth strategy and if external facing UI, then wouldn't be good practice to expose the APIs direct. API gateways / API keys may also be considered. These resources may help provide insights -> https://stackoverflow.com/questions/47841937/best-way-to-handle-api-calls-from-frontend and https://launchany.com/resolving-the-frontendbackend-api-design-conflict/ and https://stackoverflow.com/questions/13895679/how-do-i-secure-rest-api-calls
@rthatcher i have delated the card from wallet and redone the 17 and 18 steps
@rthatcher i have delated the card from wallet and redone the 17 and 18 steps but from tutoraial i changed the location to my Desktok do you think it is causing any error
@rthatcher i have delated the card from wallet and redone the 17 and 18 steps but from tutoraial i changed the location to my Desktok do you think it is causing any error ?
@rthatcher i have delated the card from wallet and redone the 17 and 18 steps but from tutoraial i changed the location to my Desktop do you think it is causing any error ?
Thanks everybody
@Pooney merci, et je vous souhaite bonne chance / thanks and best wishes !
@Pooney merci, et je vous souhaite bonne chance de tout / thanks from all and best wishes !
[ ](https://chat.hyperledger.org/channel/composer?msg=d3Ec7hPt6tMQcf7RD) @rthatcher @rthatcher That did the trick! I followed the MultiOrg tutorial and now it works! Thanks a lot!
[ ](https://chat.hyperledger.org/channel/composer?msg=fzddSCw6xt3FDRaGg) @mahoney1 @mahoney1 thanks for your response. I incorporated your suggestion from stakeoverflow link. I am not able to install composer even on org1. composer network install --card PeerAdmin@byfn-network-org1 --archiveFile trade-network.bna
⠋ Installing business network. This may take a minute...(node:94484) ExperimentalWarning: The fs.promises API is experimental
⠙ Installing business network. This may take a minute...(node:94484) [DEP0079] DeprecationWarning: Custom inspection function on Objects via .inspect() is deprecated
⠸ Installing business network. This may take a minute...E0801 15:25:04.279824000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.280955000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.281559000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.282017000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.303789000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.309251000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.311070000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.313760000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
⠼ Installing business network. This may take a minute...E0801 15:25:04.419928000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.421110000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
⠴ Installing business network. This may take a minute...E0801 15:25:04.447575000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.451670000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=fzddSCw6xt3FDRaGg) @mahoney1 thanks for your response. I incorporated your suggestion from stakeoverflow link. I am not able to install composer even on org1. Now I am getting following error on running the command composer network install --card PeerAdmin@byfn-network-org1 --archiveFile trade-network.bna
⠋ Installing business network. This may take a minute...(node:94484) ExperimentalWarning: The fs.promises API is experimental
⠙ Installing business network. This may take a minute...(node:94484) [DEP0079] DeprecationWarning: Custom inspection function on Objects via .inspect() is deprecated
⠸ Installing business network. This may take a minute...E0801 15:25:04.279824000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.280955000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.281559000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.282017000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.303789000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.309251000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.311070000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.313760000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
⠼ Installing business network. This may take a minute...E0801 15:25:04.419928000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.421110000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
⠴ Installing business network. This may take a minute...E0801 15:25:04.447575000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
E0801 15:25:04.451670000 140736208425856 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed.
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=WH8TEMn99eDkjt6m3) @Anshulmittal Try this link i got same error
https://stackoverflow.com/questions/51594427/getting-following-error-when-deploying-your-bussiness-network-using-card-in-hypp
Has joined the channel.
hi , how i copy and paste automatically acces_token in composer-rest-server multi user mode?
hi , how i copy and paste automatically acces_token in composer-rest-server multi user mode?
[ ](https://chat.hyperledger.org/channel/composer?msg=iWpjEWCEHsbHd95jW) @VenkateshMuthyala thanks @VenkateshMuthyala, that worked!!
Hello Guys
I have quite important question
can we use hyperledger composer in production?
Some people says it hides nodes and peers...its not good to use it in production when the system needs number of nodes
please suggest.
hi all, when i update BNA file,I'm losing my previous data.how can i do when i update BNA file,don't to lose previous data?
Has joined the channel.
Hi guys.. I do get the following error when I try to enroll admin user `Calling enrollment endpoint failed with error [Error: getaddrinfo ENOTFOUND`
any help? do I miss anything?
@mariacampos go to http://localhost:3000/explorer/ (following authentication) - it will show the access token at the top of the page, but by default the access token is hidden, however it can be displayed by clicking the Show button. The access token is a long alphanumeric string, for example: e9M3CLDEEj8SDq0Bx1tkYAZucOTWbgdiWQGLnOxCe7K9GhTruqlet1h5jsw10YjJ
@abityildiz your model structure has changed - see wiki for info on what's happened / how to see previous data https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--data-migration-eg-from-playground-the-ledger---for-future-use-etc
@d8bhatta Composer's role isn't to 'hide [Fabric] nodes and peers' - its a development framework and set of tools/generators, based on the running Fabric infrastructure (eg your production network with multiple parties, however you deployed etc). Composer is a layer above so can be used for use cases, building PoCs/PoVs etc and it can be used to build solutions - obviously Composer is a 0.19.x release currently (so it is not a GA release).
when i send to new asset ,i get this message :
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Failed to add object with ID '0015051215' in collection with ID 'Asset:org.example.test02.ORDER' as the object already exists\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Failed to add object with ID '0015051215' in collection with ID 'Asset:org.example.test02.ORDER' as the object already exists\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: cannot retrieve package for chaincode test02/0.0.7, error open /var/hyperledger/production/chaincodes/test02.0.0.7: no such file or directory\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: cannot retrieve package for chaincode test02/0.0.7, error open /var/hyperledger/production/chaincodes/test02.0.0.7: no such file or directory",
"stack": "Error: Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Failed to add object with ID '0015051215' in collection with ID 'Asset:org.example.test02.ORDER' as the object already exists\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Failed to add object with ID '0015051215' in collection with ID 'Asset:org.example.test02.ORDER' as the object already exists\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: cannot retrieve package for chaincode test02/0.0.7, error open /var/hyperledger/production/chaincodes/test02.0.0.7: no such file or directory\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: cannot retrieve package for chaincode test02/0.0.7, error open /var/hyperledger/production/chaincodes/test02.0.0.7: no such file or directory\n at HLFConnection.invokeChainCode (/home/abit/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:999:30)\n at
when i send to new asset ,i get this message :
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Failed to add object with ID '0015051215' in collection with ID 'Asset:org.example.test02.ORDER' as the object already exists\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Failed to add object with ID '0015051215' in collection with ID 'Asset:org.example.test02.ORDER' as the object already exists\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: cannot retrieve package for chaincode test02/0.0.7, error open /var/hyperledger/production/chaincodes/test02.0.0.7: no such file or directory\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: cannot retrieve package for chaincode test02/0.0.7, error open /var/hyperledger/production/chaincodes/test02.0.0.7: no such file or directory",
"stack": "Error: Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Failed to add object with ID '0015051215' in collection with ID 'Asset:org.example.test02.ORDER' as the object already exists\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Failed to add object with ID '0015051215' in collection with ID 'Asset:org.example.test02.ORDER' as the object already exists\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: cannot retrieve package for chaincode test02/0.0.7, error open /var/hyperledger/production/chaincodes/test02.0.0.7: no such file or directory\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: cannot retrieve package for chaincode test02/0.0.7, error open /var/hyperledger/production/chaincodes/test02.0.0.7: no such file or directory\n at HLFConnection.invokeChainCode (/home/abit/.nvm/versions/node/v8.9.4/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:999:30)\n at
[ ](https://chat.hyperledger.org/channel/composer?msg=T7ov7A2F6wvyzSQQH) the 0015051215 asset is not exists.i did not found 0015051215 asset in the assets list
@abityildiz - I'm seeing 2 errors in the output you sent:
1: Failed to add object ...
2. Error: 2 UNKNOWN: cannot retrieve package for chaincode test02/0.0.7
The combination of errors is a bit odd - so a few of questions:
1. Can you do a GET to retrieve the assets?
2. Can you ping the network? what version and network name is shown with the ping command?
3. Have you restarted your computer and run the startFabric.sh script recently?
[ ](https://chat.hyperledger.org/channel/composer?msg=sWSudpgxu9EEkrk8W) @rthatcher
1-i can GET method and i am get the assets
2-i ping to network and i get the verison 0.0.7
3-i just start the docker this morning.but not recently start startFabric.sh
now i am update to new bna files .but not post this assets.i get the same error
@abityildiz - are you using the REST server? - do you know you need to stop and re-start the REST server after you upgrade the network?
[ ](https://chat.hyperledger.org/channel/composer?msg=HCKrvZ4e9HKNgRFgb) @rthatcher yes,i did to re-start.
when you start Docker this morning - how did you start? and did you start all the containers ?
when you start Docker this morning - how did you start? and did you start all the containers ?
when you start Docker this morning - how did you start? and did you start all the containers ?
Are you using the standard Development Fabric?
Can you run `docker ps` and share the output
i restarted to all container.
Clipboard - August 1, 2018 4:26 PM
@abityildiz - looking at the containers you have running, you have a MultiOrg Fabric started, (Org1 and Org2) but the chaincode is only started on Peers for Org1.
(The standard Development Fabric I referred to one the single Org, single Peer Fabric proivided by the FabricDevelopmentServes tools - startFabric.sh. But you have a MultiOrg Fabric)
I wonder if you have failed to Install/Start the Business Network on Org2, and perhaps you are using an Org2 card when you see the error? Perhaps trying with Card from Org1 would help?
Unless you are absolutely sure what you are doing with the MultiOrg Fabric, it might be better to destroy this Fabric and start a simple Development Fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=LcNcvWRR3kqfP88ES) @rthatcher thanks rthatcher.i just startted Org1 chaincode.The problem might be this.i will be destroy and setup the single Org.
Has joined the channel.
@mahoney1 thank you for your response. How can configure fabric (add peers, nodes...) and use same fabric in composer
[ ](https://chat.hyperledger.org/channel/composer?msg=Kgc6LscSTgG6RKQ3k) @d8bhatta The best place to start is the Composer Developer Tutorial which helps you set up Development Tools and a small Fabric for dev/test. https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
@rthatcher thank you, I have already developed a demo web based app long using composer so I am aware with those links. I can remember I have first started the fabric and later run the composer-rest-client. So here if we want, we can create any numbers of peers/channels and use it in composer, right?
reminder that the Community call is tomorrow (Thurs) 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 - would be great to hear from you and hear your Composer stories, and use cases on the call - we'll also discuss the latest release and what's upcoming - agenda -> https://github.com/hyperledger/composer/wiki/Meeting-2nd-Aug-2018 best regards Paul
@d8bhatta yes you can configure multiple nodes/channels and deploy your composer networks on your channels as you've configured them, and defined them to Composer for the participants that will interact with the ledger (ie on the channel) where a business network is deployed. The Composer multi-org [tutorial](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org) uses Fabric's Build your first network sample, which has multiple orgs/nodes - to give an example of how to configure Composer to initially install the business network on those orgs, then configure the relevant elements (connection metadata, business network cards to connect to it) so that participants from each org can transact on the Fabric-based blockchain network. There are other resources on the web where others have spanned multiple machines or added orgs/peers some of which are captured here https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#multiorg
@d8bhatta yes you can configure multiple nodes/channels in Fabric and later deploy your composer networks on your channel ( as you've configured them, and define them to Composer for the participants that will interact with the ledger (ie on the channel) where a business network is deployed. The Composer multi-org [tutorial](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org) uses Fabric's Build your first network sample, which has multiple orgs/nodes - to give an example of how to configure Composer to initially install the business network on those orgs, then configure the relevant elements (connection metadata, business network cards to connect to it) so that participants from each org can transact on the Fabric-based blockchain network. There are other resources on the web where others have spanned multiple machines or added orgs/peers some of which are captured here https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#multiorg
@d8bhatta yes you can configure multiple nodes/channels in Fabric and later deploy your relevant composer business network on your channel ( as you've configured them, and define them to Composer for the participants that will interact with the ledger (ie on the channel) where a business network is deployed. The Composer multi-org [tutorial](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org) uses Fabric's Build your first network sample, which has multiple orgs/nodes - to give an example of how to configure Composer to initially install the business network on those orgs, then configure the relevant elements (connection metadata, business network cards to connect to it) so that participants from each org can transact on the Fabric-based blockchain network. There are other resources on the web where others have spanned multiple machines or added orgs/peers some of which are captured here https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#multiorg
@mahoney1 good answer. I will go through it. A guy who wanted to use blockchain in his system said to me that he needs to add 10,000 ( ten thousands nodes) which cannot be done using composer. This made me thought whether fabric with composer is better or fabric with nodejs sdk, although the person has caught his way leaving lots of curiosity on me, I am trying understand fabric in big network in both composer and nodejsdk
is it possible to make a transaction hang until some variables are set to true by another transaction?
Hi Team, Is there a recommended approach using Composer to encrypt specific fields that get recorded on chain. For example if we call the FAB-830 functionality for Fabric, is there a recommended approach on how best to share a symmetric key, so the endorsing peers are able to decrypt the input fields and then encrypt them before they are stored on the chain and in the world state? We could call the native fabric code as per https://stackoverflow.com/questions/49535602/how-to-use-hyperledger-getnative-api?noredirect=1&lq=1. I assume we could make a call to a key mgmt service from chain code running in the cloud. Thanks for any suggestions.
@tennenjl The shim crypto library isn't exposed from the getNativeAPI invocation within a TP function unfortunately, so there is no inbuilt crypto library available for use.
@davidkel Thanks, we'll check and see what our other options are. Appreciate the help as always.
If i change the chaincode in hyperledger-composer while the network is deployed to impose some new conditions on chaincode logic will this be deployed on the same channel and will it render all the older transactions useless in the blockchain?
Has joined the channel.
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
what does this mean?
THere is nothing in the docker logs on the peer
It didn't event try to connect
This is on a local mac
Is there verbose output from the composer cli?
Can Hyperledger Composer transactions support third-party javascript libraries/node.js packages like require('fs')?
@davidkel need your help sir ... Can Hyperledger Composer transactions support third-party javascript libraries/node.js packages like require('fs')?
Hello guys, suppose I know the basics of fabric and composer , developed some small project also, now I want to be a contributor to the Hyperledger codebase,for that I want to understand the whole codebase and how it works, so for that which codebase should I choose to look at first fabric/composer and which module/package?
Has joined the channel.
@rthatcher Facing the following problem when I use `abstract concept`. Here the error I get
```
t: Model violation in instance org.fabric.sample.Person#Bob class org.fabric.Sample.Address has value [object Object] expected a Resource or a Concept.
```
My concept below
```
participant Student identified by participantId {
o String participantId
o String Name
o Address address
}
abstract concept Address{
o String doorNo
o String street
}
concept FullAddress extends Address {
o String zip
}
```
And trying to create Address as
```
let address = {doorNo: "23", street: "St. Anne 4th Cross St", zip: "2341"}
```
then assigning the value with student
Could you please help me out on this?
I created a Composer network, and realized i had a flaw in my cto. I changed the name of a cto object property, then I deleted the network folder and re-ran all the steps, but the composer-rest-server command generated an api with the old cto schema. Do I need to stop the rest server first? how do I generate a new rest server with the most current .cto?
@hyper-sunder maybe you need your Student to have --> Address address instead of o Address address
@coveloper `-->` can be used against `Asset or Participants` hope not for `concept`
i actually don't know what "concept" is
I just thought --> was a way to note an object graph relationship
isn't concept an abstract implementation of Address? why can't you use `-->` with it?
or is your point that you specifically don't want `Address` to be constructed?
ERROR :IdentityManager :getParticipant() Error: The current identity, with the name 'admin' and the identifier 'd117c61e8d73871fba2ef3dc081fe8b5e8c2c99e22c408ea800438ffd666a691', is bound to a participant 'resource:org.hyperledger.composer.system.NetworkAdmin#admin' that does not exist
any clue on this error?
[ ](https://chat.hyperledger.org/channel/composer?msg=LBocxT57uSEyXKNBq) @coveloper In my opinion the `concept` is like a schema of an object, it helps you to define complex objects by dividing into simple parts, so you are right that we shouldn't use `-->` with `concept`. And an `abstract concept` is like a `abstract class` so that it is used to be extended to a new concept, and we should always use the `abstract concept` in a `concept` definition
@labcoinpoc @hyper-sunder should `Student` have `--> concept concept` then?
`concept` is not a keyword right? that's the programmer's choice of name?
or does it need to be `Concept`? Sorry, I have more experience with Solidity than CTO
[ ](https://chat.hyperledger.org/channel/composer?msg=4mNgj2RgZE3GYwAAq) @coveloper In your cto file , student should be
```
participant Student identified by participantId {
o String participantId
o String Name
o FullAddress address
}
```
FullAddress is a `concept`, Address is an `abstract concept` which should not be used directly
@hyper-sunder ^^ (it was @hyper-sunder 's question)
@labcoinpoc that make sense
Sorry :P
No need to be sorry, I'm learning too!
I have a question: I'm writing a biz network that will show historical changes to certain properties of an asset. originally I had an `asset` and a `MyTransaction` transaction, and thought I would just be updating the values of `MyTransaction`
but it seems like i should put those properties `on the asset` and just track the value changes in the transaction
i got up to the `logic.js` and realized I probably set it up wrong
so i probably should add all the properties to the `asset` and then just set the values in `logic.js` and the transaction will automatically show me what was changed each time on the `asset` ?
so my previous question still applies. If i make changes to the `.cto`, how to i force a new `rest server`?
before when i updated the `.cto` and ran `composer-rest-server` it just started up the rest server with the previous `.cto`
if i'm tracking changes to certain properties of the `asset` do I add all the properties I want to track in the `transaction` declratation?
@coveloper Well, it is a good choice to store properties in asset they related to. And there are some ways to solve the history problem as far as I know, 1. use `Historian` of composer and make some filter 2. if the asset is only changed by a few kinds of transaction, use history of these transactions is fine. 3. use `getNativeAPI().getHistoryForKey(nativeKey)` https://hyperledger.github.io/composer/latest/reference/js_scripts
@labcoinpoc ooo, thank you, that's very helpful
@coveloper and the restart problem, if you make a new cto file ,you should first compile it into bna file and install it into fabric network, the business logic is running in fabric not the rest-server. If you just want to restart all system and install new bna, just break all containers down and restart fabric then install ban then restart rest server, if you want to update business logic of a deployed business network check here https://hyperledger.github.io/composer/latest/business-network/upgrading-bna
@coveloper and the restart problem, if you make a new cto file ,you should first compile it into bna file and install it into fabric network, then restart rest server. the business logic is running in fabric not the rest-server. If you just want to restart all system and install new bna, just break all containers down and restart fabric then install ban then restart rest server, if you want to update business logic of a deployed business network check here https://hyperledger.github.io/composer/latest/business-network/upgrading-bna
@coveloper and the restart problem, if you make a new cto file ,you should first compile it to bna file and install it into fabric network, then restart rest server. the business logic is running in fabric not the rest-server. If you just want to restart all system and install new bna, just break all containers down and restart fabric then install ban then restart rest server, if you want to update business logic of a deployed business network check here https://hyperledger.github.io/composer/latest/business-network/upgrading-bna
@labcoinpoc thank you
everytime I re-gen angular i have to run these fixes: https://medium.com/coinmonks/fixing-transaction-issue-in-angular-for-hyperledger-fabric-blockchain-application-fe7e28a7bb6e
i dont know why evertime we try same tutorials we get diffrent errors yesterday i completed multiorg setup using composer now i am trying to replicate for showing got a diffrent error
composer network install --card PeerAdmin@byfn-network-org1 --archiveFile trade-network@0.0.1.bna
⠸ Installing business network. This may take a minute...E0802 13:50:33.450930501 24076 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0802 13:50:33.456078857 24076 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0802 13:50:33.457047569 24076 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0802 13:50:33.463474806 24076 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0802 13:50:33.464178347 24076 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
any one help me rectify these error
i dont know why evertime we try same tutorials we get diffrent errors yesterday i completed multiorg setup using composer now i am trying to replicate for showing got a diffrent error
composer network install --card PeerAdmin@byfn-network-org1 --archiveFile trade-network@0.0.1.bna
⠸ Installing business network. This may take a minute...E0802 13:50:33.450930501 24076 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0802 13:50:33.456078857 24076 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0802 13:50:33.457047569 24076 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0802 13:50:33.463474806 24076 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0802 13:50:33.464178347 24076 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
any one help me rectify these error
all the dockers are up in runnung
i created card using two methods both failed
did you run `./startFabric.sh` ?
[ ](https://chat.hyperledger.org/channel/composer?msg=kc56ASWHvpRvcAgqP) @coveloper all the dockers are up in runnuing no one is exited or down \
[ ](https://chat.hyperledger.org/channel/composer?msg=58d43aa5-e24b-4773-865c-1ac92836995b) @prtk418 from a Composer perspective, there is a separate channel for contributors - #composer-contributors - so I would suggest heading over there to get more involved. The code for composer is here: https://github.com/hyperledger/composer
There is also some additional Composer Information in the Wiki: https://github.com/hyperledger/composer/wiki/Composer-Education
@VenkateshMuthyala and your network is named `trade-network`?
no i created bna using the developer tutorial using yo generator my bna name is trade-network@0.0.1.bna
@coveloper
here is my ls
mdvenkatesh@mdvenkatesh-HP-ProBook-4445s:/tmp/composer$ ls
ca-orderer.txt md.bna org1 org2 PeerAdmin@byfn-network-org1.card PeerAdmin@byfn-network-org2.card trade-network trade-network@0.0.1.bna
@coveloper
seems like you should match `trade-network` to the name of your network
(I'm a noob though so I could be wrong)
`PeerAdmin@byfn-network.org2.card MY_NETWORK_NAME my-bna@0.0.1.bna`
sorry have to go now, good luck!
just see these command from first network composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
i have given all the permissions also 777 to folder
[ ](https://chat.hyperledger.org/channel/composer?msg=9HRh5NZwj4Sdb3LtC) @VenkateshMuthyala Not sure quite what is going on with your Network, but a few observations that might help:
1. `startFabric.sh` is for starting the Simple one-org, one-peer developer network. The BYFN network used for the MultiOrg tutorial is completely separate and is started differently. The Business Network Cards for the 2 different Fabrics are separate.
2. The first errors about SSL indicate that there are errors in the connection.json file used to create the cards - either the wrong certificates, or "syntax" errors specifying the certificates.
3. The other errors you are showing "Error: 14 UNAVAILABLE: Connect Failed" indicate that the CLI command can't find 2 of the Peers at the addresses specified in the connection.json - assuming the addresses in the URLs say localhost - it probably means that 2 of the peers are not started.
So now some questions:
a.) How far did you get with the Multi-org tutorial yesterday?
b.) How did you restart the Fabric containers today?
can anyone tell me how to iterate array in composer???
[ ](https://chat.hyperledger.org/channel/composer?msg=FnwR9hjxhpoPZN296) @callmeashok you can see examples in this script file https://github.com/hyperledger/composer-sample-networks/blob/master/packages/fund-clearing-network/lib/clearing.js#L96
[ ](https://chat.hyperledger.org/channel/composer?msg=FnwR9hjxhpoPZN296) @callmeashok you can see examples in this script file https://github.com/hyperledger/composer-sample-networks/blob/master/packages/fund-clearing-network/lib/clearing.js#L96 - ps model file for ref is [here](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/fund-clearing-network/models/org.clearing.cto)
thank you @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=9YeM2t32xLibrR8my) @GhazanfarAli no you cannot use require or import in the transaction logic script.
{
"name": "byfn-network",
"x-type": "hlfv1",
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},
"channels": {
"mychannel": {
"orderers": [
"orderer.example.com"
],
"peers": {
"peer0.org1.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer1.org1.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer0.org2.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer1.org2.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com",
"peer1.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
},
"Org2": {
"mspid": "Org2MSP",
"peers": [
"peer0.org2.example.com",
"peer1.org2.example.com"
],
"certificateAuthorities": [
"ca.org2.example.com"
]
}
},
"orderers": {
"orderer.example.com": {
"url": "grpcs://localhost:7050",
"grpcOptions": {
"ssl-target-name-override": "orderer.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\nMIICNDCCAdugAwIBAgIQW59Ng9YI9ciTY95JubD6WzAKBggqhkjOPQQDAjBsMQsw\nCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy\nYW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4\nYW1wbGUuY29tMB4XDTE4MDgwMjA3MDI0M1oXDTI4MDczMDA3MDI0M1owbDELMAkG\nA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu\nY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt\ncGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABFPZ/F7LPSR2JFgNazuF\nCVt1Y3eBzSnB8nEqpc04LDd6MRxk0z61j8xcva9rXGekaZTq9kU+RUCo9F8c9Juu\nUKOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB\n/wQFMAMBAf8wKQYDVR0OBCIEII9OzkO0WZCD6xccxfAchus7zUFIyC3doVVVhOYb\nmXk1MAoGCCqGSM49BAMCA0cAMEQCIBORc2kDo0dG8BiIQFZQ5cyXESQJrZAZNO19\nezYXlPe5AiBtcrQkz58OdhxCiXntOzi9kEvZmMZ+XMarDEjJ7DTDmw==\n-----END CERTIFICATE-----\n"
}
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpcs://localhost:7051",
"eventUrl": "grpcs://localhost:7053",
"grpcOptions": {
"ssl-target-name-override": "peer0.org1.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\nMIICSTCCAe+gAwIBAgIQU8cJsvERWr5K0QRbD/HwTzAKBggqhkjOPQQDAjB2MQsw\nCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy\nYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz\nY2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xODA4MDIwNzAyNDNaFw0yODA3MzAwNzAy\nNDNaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH\nEw1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMR8wHQYD\nVQQDExZ0bHNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D\nAQcDQgAEUKI5sJCSrqgSVV5fEifCluWDxPW6dy8aKQS4DnX9WGFb/69jiNFYk5HI\nngLGiLWLru5DrRW2LJCst8RnLuf3xaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud\nJQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgf+3vRQxdnhpx\nFhdqbADJlEQZTbKqVPZoUfY6+6to2UswCgYIKoZIzj0EAwIDSAAwRQIhALoi8JiY\nteyX9ljW7L+5ACZ7k/SecTHmEib/YIIPOz2nAiARl5XZsRBhbPG/wW5I/Vih5BUi\nU9Tg2gQ9CMKCvx7tXA==\n-----END CERTIFICATE-----\n"
}
},
"peer1.org1.example.com": {
"url": "grpcs://localhost:8051",
"eventUrl": "grpcs://localhost:8053",
"grpcOptions": {
"ssl-target-name-override": "peer1.org1.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\nMIICSTCCAe+gAwIBAgIQU8cJsvERWr5K0QRbD/HwTzAKBggqhkjOPQQDAjB2MQsw\nCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy\nYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz\nY2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xODA4MDIwNzAyNDNaFw0yODA3MzAwNzAy\nNDNaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH\nEw1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMR8wHQYD\nVQQDExZ0bHNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D\nAQcDQgAEUKI5sJCSrqgSVV5fEifCluWDxPW6dy8aKQS4DnX9WGFb/69jiNFYk5HI\nngLGiLWLru5DrRW2LJCst8RnLuf3xaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud\nJQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgf+3vRQxdnhpx\nFhdqbADJlEQZTbKqVPZoUfY6+6to2UswCgYIKoZIzj0EAwIDSAAwRQIhALoi8JiY\nteyX9ljW7L+5ACZ7k/SecTHmEib/YIIPOz2nAiARl5XZsRBhbPG/wW5I/Vih5BUi\nU9Tg2gQ9CMKCvx7tXA==\n-----END CERTIFICATE-----\n"
}
},
"peer0.org2.example.com": {
"url": "grpcs://localhost:9051",
"eventUrl": "grpcs://localhost:9053",
"grpcOptions": {
"ssl-target-name-override": "peer0.org2.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\nMIICSTCCAfCgAwIBAgIRAMdcpzopIkXMdK3hV3UiH/owCgYIKoZIzj0EAwIwdjEL\nMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG\ncmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs\nc2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTgwODAyMDcwMjQzWhcNMjgwNzMwMDcw\nMjQzWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE\nBxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G\nA1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49\nAwEHA0IABLE4WfKqpEEFbsB5+vgK38jEHM3vjL0/K6GHyA6O03A6Moyikz1L5vVi\nTed7zzqlN6SK5yFX9Pap2P9lMMDrD5GjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV\nHSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMjDwwpBl6Ns\n61cQ8xSXOwVrQhIGc00ewsCVQB6pKCl9MAoGCCqGSM49BAMCA0cAMEQCIBalJiKs\n/CRpwcJYEs/cv34x1utMQeaxOdCk+jc/U9k5AiB2xHOiyPwFfQe5aQM419qlSzcY\nUrEF2YCXikZ/qyAzvg==\n-----END CERTIFICATE---"
}
},
"peer1.org2.example.com": {
"url": "grpcs://localhost:10051",
"eventUrl": "grpcs://localhost:10053",
"grpcOptions": {
"ssl-target-name-override": "peer1.org2.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\nMIICSTCCAfCgAwIBAgIRAMdcpzopIkXMdK3hV3UiH/owCgYIKoZIzj0EAwIwdjEL\nMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG\ncmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs\nc2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTgwODAyMDcwMjQzWhcNMjgwNzMwMDcw\nMjQzWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE\nBxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G\nA1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49\nAwEHA0IABLE4WfKqpEEFbsB5+vgK38jEHM3vjL0/K6GHyA6O03A6Moyikz1L5vVi\nTed7zzqlN6SK5yFX9Pap2P9lMMDrD5GjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV\nHSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMjDwwpBl6Ns\n61cQ8xSXOwVrQhIGc00ewsCVQB6pKCl9MAoGCCqGSM49BAMCA0cAMEQCIBalJiKs\n/CRpwcJYEs/cv34x1utMQeaxOdCk+jc/U9k5AiB2xHOiyPwFfQe5aQM419qlSzcY\nUrEF2YCXikZ/qyAzvg==\n-----END CERTIFICATE---"
}
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "https://localhost:7054",
"caName": "ca-org1",
"httpOptions": {
"verify": false
}
},
"ca.org2.example.com": {
"url": "https://localhost:8054",
"caName": "ca-org2",
"httpOptions": {
"verify": false
}
}
}
}
these is my connection json file
i am attaching dockers ps list
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d86213651090 hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 hours ago Up 2 hours 0.0.0.0:7054->7054/tcp ca_peerOrg1
81d4ae95cf25 hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 hours ago Up 2 hours 0.0.0.0:8054->7054/tcp ca_peerOrg2
dfdb1a48bf82 dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab "chaincode -peer.add…" 3 hours ago Up 3 hours dev-peer1.org2.example.com-mycc-1.0
94d216bc23d6 dev-peer0.org1.example.com-mycc-1.0-384f11f484b9302df90b453200cfb25174305fce8f53f4e94d45ee3b6cab0ce9 "chaincode -peer.add…" 3 hours ago Up 3 hours dev-peer0.org1.example.com-mycc-1.0
986b3782ad25 dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b "chaincode -peer.add…" 3 hours ago Up 3 hours dev-peer0.org2.example.com-mycc-1.0
7a161f8c3152 hyperledger/fabric-peer "peer node start" 3 hours ago Up 3 hours 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
46a28263175f hyperledger/fabric-peer "peer node start" 3 hours ago Up 3 hours 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
eafe30644e0f hyperledger/fabric-peer "peer node start" 3 hours ago Up 3 hours 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
6d45018428b6 hyperledger/fabric-peer "peer node start" 3 hours ago Up 3 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
0f04d05baf37 hyperledger/fabric-orderer "orderer" 3 hours ago Up 3 hours 0.0.0.0:7050->7050/tcp orderer.example.com
f7eb45d60e75 hyperledger/fabric-couchdb "tini -- /docker-ent…" 3 hours ago Up 3 hours 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
321f15c1994a hyperledger/fabric-couchdb "tini -- /docker-ent…" 3 hours ago Up 3 hours 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
2c58138f9e99 hyperledger/fabric-couchdb "tini -- /docker-ent…" 3 hours ago Up 3 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
df577dc38cee hyperledger/fabric-couchdb "tini -- /docker-ent…" 3 hours ago Up 3 hours 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
plese help me @rthatcher
@rthatcher : i face this issue while add the customer {"error":"fabric-ca request register failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]"}
@VenkateshMuthyala - so your connection.json format looks good. With regard to the certificates, they look to be the right format.
Looking at the container list it looks like you started a new Fabric today. Did you run these 2 commands?
`./byfn.sh -m generate`
`./byfn.sh -m up -s couchdb -a`
The `generate` creates new crypto material - which would explain the SSL errors
[ ](https://chat.hyperledger.org/channel/composer?msg=cZJyjYsfnm7HqiJps) @Mahadream What commands / actions are you running when you see the error ?
@rthatcher - I've extended my fabric network by adding new peer and now I want to edit connection profile for issued users card and also for admin
So how we can edit connection profile in composer for already issued cards?
@rthatcher : I add the issue identity in hyperledger composer its return this error - {"error":"fabric-ca request register failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]"}
[ ](https://chat.hyperledger.org/channel/composer?msg=a6BkPiLXmAYmexSkN) @JayPandya @JayPandya you would review the Connection profile documentation - and address the relevant sections you need to add info about your new peer info https://hyperledger.github.io/composer/latest/reference/connectionprofile.html - generally you would export your card somewhere and extract, make the changes, then rebuild it using `composer card create`, delete the old card in the wallet using `composer card delete` and import the new using `composer card import`
[ ](https://chat.hyperledger.org/channel/composer?msg=a6BkPiLXmAYmexSkN) @JayPandya you would review the Connection profile documentation - and address the relevant sections you need to add info about your new peer info https://hyperledger.github.io/composer/latest/reference/connectionprofile.html - generally you would export your card somewhere and extract, make the changes, then rebuild it using `composer card create`, delete the old card in the wallet using `composer card delete` and import the new using `composer card import`
Screen Shot 2018-08-02 at 3.55.07 pm.png
@mahoney1 - Ohhh so we have to delete and re-create existing cards every time we make modification on fabric side
[ ](https://chat.hyperledger.org/channel/composer?msg=Z4GjSDwHxzvXESskG) @JayPandya if you're adding a peer and you want it to endorse transactions etc / play an active role in your Fabric network, then yes, you will need to update your connection profile and the method I gave you (which can be scripted anyway) is a 'best practice' - you can find out more about peer roles in the docs -> https://hyperledger.github.io/composer/latest/reference/connectionprofile
[ ](https://chat.hyperledger.org/channel/composer?msg=XBqfJMRHEDcv26NkY) @rthatcher yes i have tun these command s i followed the same documentaion
https://hyperledger.github.io/composer/v0.16/tutorials/deploy-to-fabric-multi-org @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=XBqfJMRHEDcv26NkY) @rthatcher yes i have run these command s i followed the same documentaion and gave new creditonals in the connection.json file
https://hyperledger.github.io/composer/v0.16/tutorials/deploy-to-fabric-multi-org @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=3xHMEudukxstg8Sy3) @mahoney1 Got it Thanks :+1:
[ ](https://chat.hyperledger.org/channel/composer?msg=827JxqHLGdwgyKZyL) @Mahadream So to confirm - you are seeing the error with the `composer identity issue` command?
I wonder if you are trying to issue an identity using a card that does not have the rights to do that. Perhaps you are using a card other than the Network Admin? If you want to create an Identity with the rights to create other identities you need to include the `--issuer` on the command.
https://stackoverflow.com/questions/51652050/hyperledger-composer-add-new-node
@AnithaReddy are you building a custom Fabric network based on BYFN (from Fabric) - what does `docker ps` show?
[ ](https://chat.hyperledger.org/channel/composer?msg=6wx5CNFm83eti6Bzo) @davidkel Hi David, one more quick question regarding the crypto library limitation, do you know if there is *anything on the road map *which would provide some sort of FAB-830 functional parity, or that would provide a recommended approach for digitized asset attribute encryption/decryption for specific peers? Right now, I'm looking at encryption at the API tier and then calling a key service from within the chain code. Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=kQcFvbThuGWYySYnX) @Varun2887 I have commented on the Github issue you posted on https://github.com/hyperledger/composer/issues/3858#issuecomment-409898978
[ ](https://chat.hyperledger.org/channel/composer?msg=mYZzHNBdWckSr7K4t) @rthatcher Yes, it's true thanks.
I tried the github strategy, but t is not working for me has I am behind a compagny firewall. Even setting up http_proxy variables did do it.
```
{"error":{"statusCode":500,"name":"InternalOAuthError","message":"Failed to obtain access token","oauthError":{"code":"ECONNRESET","errno":"ECONNRESET","syscall":"read"},"stack":"InternalOAuthError: Failed to obtain access token
```
Anyway, I dont want to use github, but a simple user and password, like described in https://stackoverflow.com/questions/49409675/hyperledger-composer-rest-server-local-passport-strategy
But as a node.js newbee, I dont understand much of what I am doing. I guess setting COMPOSER_PROVIDERS is not enough and I need to write some javascript code to show the FORM, and to validate the user/passpord as described here : http://www.passportjs.org/docs/username-password/. Do you know where shoud I write this code ?
Thanks for your time.
@tennenjl Sorry I'm not aware of anything at the moment.
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
what does this mean?
THere is nothing in the docker logs on the peer
It didn't event try to connect
This is on a local mac
Is there verbose output from the composer cli?
If I could see what was trying to connect and where it was trying to connect (target ip, source process, env vars, network adapter), I could try to debug the network issue
[ ](https://chat.hyperledger.org/channel/composer?msg=HW9JFcK2oh78e5W5M) ok thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=vWgdf2Mpp8sCDTNfn) @davidkel No worries, thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=KASsKaA5XFMyrk9Rs) @theshane Error 14 UNAVAILABLE means that the CLI command you are running cannot find the Fabric servers at the URLs/Addresses specified in the Card you are using (specifically the connection.json file).
Often for developers this means that the Fabric is not running you can try `docker ps` to verify this. This is usually the case if you restart your development computer.
Is there a way to include relationships in custom query written in `queries.qry` file while fetching?
I'm trying to implement the TLS layer over fabric. I have successfully done that. Now, I have created a JS application that runs on many machines. And those are not the Peers.
Now to ping the network from those machines, I imported the admin card of the network. But at the time of ping, it crashes with the following error.
Error: Failed to create client from connection profile. Error: ENOENT: no such file or directory, open '/Users/sculptech/hyperledger-testnet/fabric-scripts/hlfv11/composer/crypto-config/peerOrganizations/org1.timi.com/peers/peer0.org1.timi.com/tls/ca.crt'
When applying TLS, I gave cert paths of all the peers in the commands. But now not every machine will be the peer and they will not have the cert files. So how do we connect those composer clients (client only) to the network?
I'm trying to implement the TLS layer over fabric. I have successfully done that. Now, I have created a JS application that runs on many machines. And those are not the Peers.
Now to ping the network from those machines, I imported the admin card of the network. But at the time of ping, it crashes with the following error.
Error: Failed to create client from connection profile. Error: ENOENT: no such file or directory, open '/Users/user/hyperledger-testnet/fabric-scripts/hlfv11/composer/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt'
When applying TLS, I gave cert paths of all the peers in the commands. But now not every machine will be the peer and they will not have the cert files. So how do we connect those composer clients (client only) to the network?
reminder that the Community call is today at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 - would be great to hear from you and hear your Composer stories, and use cases on the call with lead Composer Developers - we'll also discuss the latest release and what's upcoming - agenda -> https://github.com/hyperledger/composer/wiki/Meeting-2nd-Aug-2018 best regards Paul
All examples I have seen with composer end up creating a network of peers within the same OS. My question is, is it possible to use to composer to create real distributed networks? Something like composer outputting multiple docker containers that I would then be able to spin in other computers.
[ ](https://chat.hyperledger.org/channel/composer?msg=GnWpiDMed6BfPH4Fw) @hardik047 Does the Connection.json that you used to create the Admin card have the PATH to the certificates? If so then that is likely the problem. You can specify the certificates themselves using the "pem" field rather than Path - the MultiOrg tutorial has examples of doing this: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=jTpBnDFLWom6TMGd4) @fabiomolinar Composer simply connects to an existing Fabric defined in a connection profile (connection.json file). That Fabric can be local, remote, distributed across many platforms. Fabric is nearly always run in Docker containers so whatever host OS or cloud you choose should be running some Docker technology.
The Composer docs do point developers to create a simple one-peer one-org fabric on a local machine - this enables the developer to focus on writing the Model, Logic and App rather than focus on the Fabric.
The multi-org tutorial takes things a stage further illustrating a Multi-org Fabric, but still on a single local machine.
So if you want to work with a "Big Distributed Fabric" - Composer supports this but you will need to setup and configure that Fabric before connecting Composer to it :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=QTcH5KeBSTM69GnCR) @rohitkhatri hi there - responded on Stack overflow https://stackoverflow.com/questions/51655153/how-to-include-relationship-in-custom-query-in-hyperledger-composer
reminder that the Community call is in 20m - 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 - would be great to hear from you and hear your Composer stories, and use cases on the call with lead Composer Developers - we'll also discuss the latest release and what's upcoming - agenda -> https://github.com/hyperledger/composer/wiki/Meeting-2nd-Aug-2018 best regards Paul
Has joined the channel.
Any one from academia/industry who could propose some topic for MS thesis on blockhain? Any links to open programs?
hi there - please use the following Zoom -> https://zoom.us/my/hyperledger.community.backup for today's community call
Hyperledger explorer, how to use it. I followed the procedures and made it up bt still nothing is viewable
@rajanashutosh suggest you try #hyperledger-explorer channel
Has joined the channel.
ok thanks
Has joined the channel.
@rthatcher : I have been trying to run the `composer network start' command but it is giving error `✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
`
I have added `CORE_CHAINCODE_STARTUPTIMEOUT=1200s` environment variable in docker-compose.yaml file and have also updated the time in connection.json file. None helped. Could you advice as to what could help resolve it? I am using hyperledger fabric v1.1 and hyperledger composer v0.19.12
@rthatcher : I have been trying to run the composer network start command but it is giving error `✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT`
I have added `CORE_CHAINCODE_STARTUPTIMEOUT=1200s` environment variable in docker-compose.yaml file and have also updated the time in connection.json file. None helped. Could you advice as to what could help resolve it? I am using hyperledger fabric v1.1 and hyperledger composer v0.19.12
@rthatcher : I have been trying to run the composer network start command but it is giving error ` ✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT `
I have added `CORE_CHAINCODE_STARTUPTIMEOUT=1200s` environment variable in docker-compose.yaml file and have also updated the time in connection.json file. None helped. Could you advice as to what could help resolve it? I am using hyperledger fabric v1.1 and hyperledger composer v0.19.12
@rthatcher : I have been trying to run the composer network start command but it is giving error ```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
```
I have added `CORE_CHAINCODE_STARTUPTIMEOUT=1200s` environment variable in docker-compose.yaml file and have also updated the time in connection.json file. None helped. Could you advice as to what could help resolve it? I am using hyperledger fabric v1.1 and hyperledger composer v0.19.12
I’m trying to wrap my head around network cards for multiuser support. So I added the network admin card via the rest server and issue a new identity when a new user has logged in.
I’m wondering if I need to create a new card for every new user login or can I just bind that a new identity that I issue with the network admin?
Right the new user identity says issued but the admin identity says activated.
What’s the significance of the different states?
Does the new identity need to be activated before it can be used?
If a new network card is needed for every user, is there a way to dynamically create them this via the rest server?
[ ](https://chat.hyperledger.org/channel/composer?msg=eBr6r7y5EcG5BAGdp) @rupa12 HI..Is fabric instance running on the peer? I had a similar issue while installing my business network, but the fabric wasn't running so I started it.
Has joined the channel.
Hi Everyone just a question in mind if I need to do an registery.addAll(ARRAY) this array of object compose of let says 99,999,999 ,, can the Hyperledger Fabric or the Hyperledger Composer able to handle such one (1) time processing? I know it may really big impact on the performance issue but just asking in detail those impact may occur :) thanks a lot guys
[ ](https://chat.hyperledger.org/channel/composer?msg=a9p9m6tRY9ADWpzbJ) @rthatcher That's good to hear! So, it would be nice to have an example/documentation on how to create such configuration with composer. What do you think?
@labcoinpoc thanks for pointing me to `getHIstoryForKey`, that sounds like what I need, however I'm a little confused by the example in https://hyperledger.github.io/composer/latest/reference/js_scripts in `createCompositeKey('Asset:systest.transactions.SimpleStringAsset'`, what is `systest`?
I'm trying to get a Historian list of transactions on ```transaction RightsTransaction {
--> Release release
o String commercialModels
o String validRelease
}```
for a given `Release.releaseId`
do I just replace `systest.` with my network address?
@rthatcher Got it. I set the pem keys and it works now. Thanks a lot :metal:
[ ](https://chat.hyperledger.org/channel/composer?msg=T4CkHJGKeAdep9nJN) @coveloper the `systest.transactions` should be name space of your network, for example the name space of my project is `org.example.mynetwork` and I have an Participant called `SampleParticipant` then the code should be `getNativeAPI().createCompositeKey('Participant:org.example.mynetwork.SampleParticipant', [id]);` and pass the `id` of Participant in
by the way in your example maybe you should get the history of `Release` rather than `RightsTransaction`, cause the composer-rest-server already has API to fetch all transactions
@labcoinpoc thanks! trying
@labcoinpoc the `id` param should be the full resource string (in the REST GUI)? like `resource:com.mynetwork.anothernetwork.Release#EndsId` ?
`EndsId` is the String Id of the `Release` i want to get the history of. Doesn't find it if i just add `EndsId` or the full resource url
tried `asset:` too
comes back as `404`, not a `400` so i guess that's good
```async function simpleNativeHistoryTransaction (release) {
const id = release.releaseId;
const nativeSupport = release.nativeSupport;
const nativeKey = getNativeAPI().createCompositeKey('Asset:com.mynetwork.anothernetwork.Release', [id]);
const iterator = await getNativeAPI().getHistoryForKey(nativeKey);```
@coveloper should be only the `EndsId`
@labcoinpoc doesn't find it. weird. I can use `EndsId` as the id for the `Release` endpoint, and that works fine
Log shows error: ```Unhandled error for request GET /api/SimpleNativeHistoryTransaction/EndsId: Error: Unknown "SimpleNativeHistoryTransaction" id "EndsId".```
I'm using the `GET /SimpleNativeHistoryTransaction/{id}` endpoint
I'll try using the AssetRegistry to find it inside the function
I had this in my CTO ```transaction SimpleNativeHistoryTransaction {
}```
maybe I need this? ```
transaction SimpleNativeHistoryTransaction {
--> Release release
}```
I changed my B.N. model with adding Participant,Asset and transaction,but I can't see the new items in Playground ,also them are not shown in RESTAPIs after installed the new bna file to the business network
I have tried "composer network reset",but it has no effect. it seems that the docker image also keeps the old bna informations through the playground view.
Is there any way to clear the informaiton about the bna in the docker images? maybe some commands in fabric?
Is the absolutely necessary to use "composer network upgrade",when adding new Participant,Asset and transaction?
I changed my B.N. model with adding Participant,Asset and transaction without change the version info,but I can't see the new items in Playground ,also them are not shown in RESTAPIs after installed the new bna file to the business network
I have tried "composer network reset",but it has no effect. it seems that the docker image also keeps the old bna informations through the playground view.
Is there any way to clear the informaiton about the bna in the docker images? maybe some commands in fabric?
Is the absolutely necessary to use "composer network upgrade",when adding new Participant,Asset and transaction?
I changed my B.N. model with adding Participant,Asset and transaction without change the version info,but I can't see the new items in Playground ,also them are not shown in RESTAPIs after installed the new bna file to the business network
I have tried "composer network reset",but it has no effect. it seems that the docker image also keeps the old bna informations through the playground view.
Is there any way to clear the informaiton about the bna in the docker images? maybe some commands in fabric?
Is that absolutely necessary to use "composer network upgrade",when adding new Participant,Asset and transaction?
@touchingsoil i believe it is required. and you need to increment your version number and make sure you increment that in all your CLI calls
you won't lose your data
@coveloper you want to get history of transaction or property of asset?
@labcoinpoc I want to get the history of a property of an asset (or any updates to an asset)
Hello,
I am trying to secure the REST server using Passport Local strategy using the en variable `COMPOSER_PROVIDERS` like this:
```
export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"callbackURL":"/auth/local/callback",
"successRedirect": "/",
"failureRedirect": "/",
"setAccessToken": true,
"callbackHTTPMethod": "post"
}
}
```
Then run my REST Server with `composer-rest-server -n never -c admin@rinku -m true -a true`, but when I go to `http://localhost:3000/auth/local/` I get a "Cannot GET /auth/local/","status":404".
Do you know what do I miss ?
Thank you.
Antonio
Hello,
I am trying to secure the REST server using Passport Local strategy using the en variable `COMPOSER_PROVIDERS` like this:
```
export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"callbackURL":"/auth/local/callback",
"successRedirect": "/",
"failureRedirect": "/",
"setAccessToken": true,
"callbackHTTPMethod": "post"
}
}
```
Then run my REST Server with `composer-rest-server -n never -c admin@rinku -m true -a true`, but when I go to `http://localhost:3000/auth/local/` I get a
"Cannot GET /auth/local/","status":404".
Do you know what do I miss ?
Thank you.
Antonio
@coveloper how did you define the asset in cto? the history of asset has no relation to transaction, it just stores all old values of the asset
```participant NetworkParticipant identified by participantId {
o String participantId
o String firstName
o String lastName
o String companyName
}
asset Release identified by releaseId {
o String releaseId
--> NetworkParticipant owner
o String title
o String commercialModels
o String validRelease
}
transaction RightsTransaction {
--> Release release
o String commercialModels
o String validRelease
}```
i'm able to create transactions on `Release`. But I'd like to display a log of them to their owner
Oh I see.... my fault, yes you do need a transaction to return the result
i have this right now ```transaction SimpleNativeHistoryTransaction {
--> Release release
}```
i tried it with an empty closure too
The definition in cto is not very important, all you need is the id of that asset, so either the ref or the id is OK
current version: ```async function simpleNativeHistoryTransaction (transaction) {
const id = transaction.release.releaseId;
const nativeSupport = transaction.nativeSupport;
const nativeKey = getNativeAPI().createCompositeKey('Asset:com.mynetwork.anothernetwork.Release', "EndsId");
const iterator = await getNativeAPI().getHistoryForKey(nativeKey);
let results = [];
let res = {done : false};```
tried with releaseId as the param as well
i could be wrong but it seems like the error is telling me that it can't find the `releaseId` of `simpleNativeHistoryTransaction`
```Unhandled error for request GET /api/SimpleNativeHistoryTransaction/EndsId: Error: Unknown "SimpleNativeHistoryTransaction" id "EndsId".```
`const nativeKey = getNativeAPI().createCompositeKey('Asset:com.mynetwork.anothernetwork.Release', "EndsId");` the `EndsId` should be passed as an array, like `[id]`
ah yes, i had it that way before too
have just been trying everything i could, ha
should the parameter be `transaction`? or `release`?
@coveloper if you just change `EndsId` to `[id] then what is the error msg?
same error, i'll rebuild just to make sure
did you delete the dev-peer docker image before you redeploying the bna?
[ ](https://chat.hyperledger.org/channel/composer?msg=uckyJxm7Ja4M8jjS9) @touchingsoil `composer network reset` runs a transaction to remove all the data (assets and participants).
Yes - you absolutely need to run the `composer network install` with a new version in the bna, and you need to run the `composer network upgrade` specifying the new version number. After that you will need to restart the REST server.
@labcoinpoc REST GUI gives me a `404`, and CLI shows this```Unhandled error for request GET /api/SimpleNativeHistoryTransaction/EndsId: Error: Unknown "SimpleNativeHistoryTransaction" id "EndsId".```
i'm using `GET /SimpleNativeHistoryTransaction/{id}`
where did the "EndsId" come from? there is no string "EndsId" in your code right?
not anymore. current code looks like ```async function simpleNativeHistoryTransaction (transaction) {
const id = transaction.release.releaseId;
const nativeSupport = transaction.nativeSupport;
const nativeKey = getNativeAPI().createCompositeKey('Asset:com.pandora.anothernetwork.Release', [id]);
const iterator = await getNativeAPI().getHistoryForKey(nativeKey);
let results = [];```
```async function simpleNativeHistoryTransaction (transaction) {
const id = transaction.release.releaseId;
const nativeSupport = transaction.nativeSupport;
const nativeKey = getNativeAPI().createCompositeKey('Asset:com.mynetwork.anothernetwork.Release', [id]);
const iterator = await getNativeAPI().getHistoryForKey(nativeKey);
let results = [];```
I'm using the REST GUI and entering "EndsId" in the `id` field
[ ](https://chat.hyperledger.org/channel/composer?msg=CJfMyGceHiDmcsiud) @fabiomolinar There are tutorials and documentation in the Fabric docs for creating Fabrics and we don't want to duplicate them. There are also lots of independent tutorials and blogs on the web too. The Fabric Docs are here: https://hyperledger-fabric.readthedocs.io/en/latest/ . FYI at the moment Composer supports Fabric 1.1, but the latest default download for Fabric is v1.2. We expect Composer to support Fabric 1.2 soon.
EndsId is the Release.releaseId of an entry in `Release`
am I using the wrong endpoint?
@coveloper Actually you need to create a transaction rather than get one, so not the GET method
ah, the `POST` just seems to accept a `transactionId`
[ ](https://chat.hyperledger.org/channel/composer?msg=p97ToGFhesgTHtMjv) @JeffGutierrez that is a lot of data! Is this a one-time data load or a regular requirement? I haven't seen any official performance tests, so I would suggest you perform some scaling tests to begin with.
@labcoinpoc oh wait, that might have worked
if i pass this to the `POST`: ```{
"$class": "com.mynetwork.anothernetwork.SimpleNativeHistoryTransaction",
"release": "EndsId",
"transactionId": "",
"timestamp": "2018-08-03T08:11:46.213Z"
}```
well, it returns a transaction
retuns a single transaction. basically what i passed to it, but with a transactionId
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=TgadeXTWbSdK2K26M) @parikn @rupa12 - if the Fabric is not started you would see something like "Error: 14 UNAVAILABLE" rather than the timeout.
I would suggest looking in the logs of the peer containers to see what is happening there. Quite often the timeout problem is caused by npm errors trying to build the chaincode container.
Is the Fabric a standard development fabric, or a custom fabric? Do you have enough system resources to create more containers (memory and diskspace)?
there have been several updates to that `Release`. FWIW, `/system/historian` does return all the transactions on `Release` and other entities
In your cto file you defined release to a ref ,that means you should pass a relationship , not just id, and also you have 2 other parameters `commercialModels` `validRelease`
Hi there, I currently playing around with the letter of credit example on Hyperledger Composer Playground. It appears that the transaction "InitialApplication" creates this error message: "Error: attempt to get property bank on an InvalidRelationship is not allowed. InvalidRelationship created due to Object with ID '1560' in collection with ID 'Participant:org.example.loc.Customer' does not exist". The same error message I've got as I tried to replicate the syntax behind "Approve" in a personal project. Is there anyone here who could help me out on this? Thanks a lot! Best, K
[ ](https://chat.hyperledger.org/channel/composer?msg=uckyJxm7Ja4M8jjS9) @touchingsoil yes, you will need to upgrade - see Step Three and Step Four here -> https://hyperledger.github.io/composer/latest/tutorials/queries - then re-launch your REST server to discover the upgraded network (still the same business network card / network name as before) - and you will see the new items
And, in this page https://hyperledger.github.io/composer/latest/reference/js_scripts there is a section `Returning data from transaction processor functions` can help you get the return value from chaincode. but unfortunately this feature is just add in rest server at https://github.com/hyperledger/composer/commit/d3d77940c8504f39e3e7a2e40ddab8faf6a6c9eb so may be you can only solve it by composer SDK for now
@coveloper in this page https://hyperledger.github.io/composer/latest/reference/js_scripts there is a section `Returning data from transaction processor functions` can help you get the return value from chaincode. but unfortunately this feature is just add in rest server at https://github.com/hyperledger/composer/commit/d3d77940c8504f39e3e7a2e40ddab8faf6a6c9eb so may be you can only solve it by composer SDK for now
@coveloper in this page https://hyperledger.github.io/composer/latest/reference/js_scripts there is a section `Returning data from transaction processor functions` can help you get the return value from chaincode. but unfortunately this feature is just added in rest server at https://github.com/hyperledger/composer/commit/d3d77940c8504f39e3e7a2e40ddab8faf6a6c9eb so may be you can only solve it by composer SDK for now
[ ](https://chat.hyperledger.org/channel/composer?msg=cDMuSdXXvTHdZL9So) @tdespenza The Identity is a set of credentials (crypto material) and is intended for each individual user. Most use cases would have a Participant for each identity, so using the Issue Identity process is fine. You can automate this by making calls to the REST server, or by calls to the Javascript API. There are also use cases for binding more than 1 ID to a single participant, with the participant being more of a 'role' than an individual.
[ ](https://chat.hyperledger.org/channel/composer?msg=YjRgcf3ETvTLTEbd4) @rthatcher Thank you @rthatcher I'm getting such error and I'm trying to see if there is a walk around on it like the below code
allDocs.forEach(async function(doc){
let tmp = await assetReg.add(doc)
})
instead of using assetReg.addAll(allDocs) I'm using the above code somehow it work on the online playground-composer yet on the offline connected on a deployed BNA file still getting such error
Error: Error trying invoke business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: failed to execute transaction: timeout expired while executing transaction
[ ](https://chat.hyperledger.org/channel/composer?msg=LB73DBRzKGe5NhQTf) @KLE 34 can you paste what your transaction input was - it should be something like this ```{
"$class": "org.example.loc.InitialApplication",
"letterId": "L1",
"applicant": "resource:org.example.loc.Customer#6101",
"beneficiary": "resource:org.example.loc.Customer#3215",
"rules": [
{
"$class": "org.example.loc.Rule",
"ruleId": ".",
"ruleText": "Dolor."
}
],
"productDetails": {
"$class": "org.example.loc.ProductDetails",
"productType": "containers",
"quantity": 34185,
"pricePerUnit": 220.544
}
}```
@KLE 34 have you got a Customer with id 1560 (or 6316, whichever) - because that seems to be what it can't create the relationship to (in the transaction code for InitialApplication)
[ ](https://chat.hyperledger.org/channel/composer?msg=3WvuWeQxsbaLj6o2m) @mahoney1 The transaction input has been as follows:
```
```
{
"$class": "org.example.loc.InitialApplication",
"letterId": "Voluptate.",
"applicant": "resource:org.example.loc.Customer#6316",
"beneficiary": "resource:org.example.loc.Customer#9409",
"rules": [
{
"$class": "org.example.loc.Rule",
"ruleId": "Dolor aliquip.",
"ruleText": "Est fugiat."
}
],
"productDetails": {
"$class": "org.example.loc.ProductDetails",
"productType": "Eiusmod.",
"quantity": 32835,
"pricePerUnit": 77.748
}
}
@coveloper another way is create a new element like asset and write the history data into it, then get the data through rest server ,but the problem is there will be more and more data in blockchain generated by query . For now the best way for this is using a `Read-only transaction processor functions (query processor functions)` to query history and get the data with SDK
@labcoinpoc yes that makes sense, I just wish I could get the history back. I must be missing something still
@labcoinpoc are you saying just do a normal query?
a `Read-only transaction processor functions (query processor functions)` with return value defines like:
```
@commit(false)
@returns(String[])
transaction QueryHistory {
o String id
}
```
hrm ok
@KLE 34 have you got a Customer with id 1560 (or 6316, whichever) - because that seems to be what it can't create the relationship to (in the transaction code for InitialApplication)
@coveloper For now the composer SDK is the only way to get the return data from chaincode, but this commit https://github.com/hyperledger/composer/commit/d3d77940c8504f39e3e7a2e40ddab8faf6a6c9eb already add the feature to composer rest server , so maybe it is possible to get return from rest server in next version
@coveloper as per @labcoinpoc -> see https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions
ok thank you everybody. I will try again after some sleep. Appreciate your help!!!!
@mahoney1 I used the files from github to double check (https://github.com/hyperledger/composer-sample-networks/commits/master/packages/letters-of-credit-network). The transaction createDemoParticipants works smoothly. However as soon as you wish to initiate the application for a letter of credit (it's literally the first transaction in the network chain), it returns this message. This is consistently observed both on the pre-installed network version on Hyperledger Composer Playground and by setting up manually on the Playground.
@rupa12 did you change 4 timeout values in the connection profile for the card (eg, PeerAdmin etc) supplied to the network start ? - see item 6 (in the table relating to REQUEST_TIMEOUT) onwards for further instructions https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues
[ ](https://chat.hyperledger.org/channel/composer?msg=yQko8RSv6RE5miy8n) @mahoney1 Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=yQko8RSv6RE5miy8n) @mahoney1 @coveloper @rthatcher Thanks!
@KLE 34 I can replicate the error you get - purely by using random data in playground (because the Customer id doesn't exist - nor do any of the other relationships that are attempted to be built in the function for that transaction) - but if I supply a transaction, with a Customer / beneficiary that exist (because that's what you would expect to be the case at the time of trxn submission for a LoC InitialApplication) - then it works fine - tested just now in playground. I suggest to create a 'Customer' #1 and 'Beneficiary #2 (both are 'Customer participants) and then try the transaction again - it should work. cheers
@KLE 34 I can replicate the error you get - purely by using random data in playground (because the Customer id doesn't exist - nor do any of the other relationships that are attempted to be built in the function for that transaction) - but if I supply a transaction, with a Customer / beneficiary that exist (because that's what you would expect to be the case at the time of trxn submission for a LoC InitialApplication) - then it works fine - tested just now in playground. I suggest to create a 'Customer' #1 and 'Beneficiary #2 (both are 'Customer participants) and then try the transaction again - it should work. OR any of the demo participants too - of course. cheers
@mahoney1 thanks a lot for this guidance! :)
[ ](https://chat.hyperledger.org/channel/composer?msg=RzmqJtDZs3juLcYJH) @KLE 34 you're welcome - let me know if you still have issues.
@rohitkhatri - I've responded on https://stackoverflow.com/questions/51655153/how-to-include-relationship-in-custom-query-in-hyperledger-composer/51657322#51657322
Hello,
Can anyone tell me if I am using docker swarm, what should we need to provide for ```
"peers": {
"peer0.org1.example.com": {
"url": "grpc://${HOST}:7051",
"eventUrl": "grpc://${HOST}:7053"
}
}
``` HOST in code? Currently, there is localhost for "HOST".
I trying to call Fetch API inside chaincode like so:
```
async function getid() {
return await fetch(PROXY_API_ADDRESS, {
method: 'GET'
});
}
```
And I get error:
```
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: ReferenceError: fetch is not defined
```
Why? I can't do any request inside chaincode?
I trying to call Fetch API inside chaincode like so:
```
async function getid() {
return await fetch(PROXY_API_ADDRESS, {
method: 'GET'
});
}
```
And I get error:
```
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: ReferenceError: fetch is not defined
```
Why? I can't do any request to external world inside chaincode?
[ ](https://chat.hyperledger.org/channel/composer?msg=oBzqrYMGcBisQcyZA) This is a blocker issue for us, as we cannot setup a secure the REST API. Any hints ? Thanks in advance.
[ ](https://chat.hyperledger.org/channel/composer?msg=DuT5bBhuyAbLFZSA4) @HoneyShah This will depend how Docker Swarm is configured - if you can't find from your local configuration, I would try a Docker Swarm forum.
[ ](https://chat.hyperledger.org/channel/composer?msg=k37TxJL7ZfjnET9wA) @VadimInshakov The Composer Runtime API (used by transaction logic) now contains the Request Module: https://hyperledger.github.io/composer/latest/integrating/call-out
@aparolini - there is some composer specific information here: https://stackoverflow.com/questions/31594949/where-to-put-passportjs-local-strategy-in-an-express-application . and a tutorial on passport-local with good reviews here: https://scotch.io/tutorials/easy-node-authentication-setup-and-local
Hello everyone, putting access control rules is making data fetching calls very slow it is giving timeout error on data size of only 500. can anyone please suggest some good practices to use acl rules? a general composer api call is taking around 20 seconds for me.
[ ](https://chat.hyperledger.org/channel/composer?msg=ewdQjCor7ZPK2y5gK) @rthatcher @rthatcher so I don't need to create a card for each user? Issuing a new identity for each user will suffice?
[ ](https://chat.hyperledger.org/channel/composer?msg=ewdQjCor7ZPK2y5gK) @rthatcher so I don't need to create a card for each user? Issuing a new identity for each user will suffice?
Hi @rthatcher i want to create two banks in each bank i want create multiple customers is it possible in composer?
model file
[ ](https://chat.hyperledger.org/channel/composer?msg=KiRWrfogaCDmTbvm7) @tdespenza - You do need a card for each user. The card is the way that you use the identity that you issue. Using the REST api or the CLI when you issue an Identity a Card is created for you. There is some additional information on cards and identities in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#bizcards
[ ](https://chat.hyperledger.org/channel/composer?msg=hySvesmgEm3RLcJhZ) @sureshtedla - yes it is possible. You could create different Participant types for the 2 banks, or you could add a field which you use to identify which Bank the participant belongs. Or you could add a Relationship field to the participant definition which points to a Bank (Participant or Asset).
If you end up setting up the Fabric with 2 Organisations (and 2 CAs) you could create Identities for the different Banks based on the Different CAs.
There is more information on Cards and Identities in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#bizcards
@rthatcher can you please share the sample code for creating different banks and customers? i am generating the composer-rest server
[ ](https://chat.hyperledger.org/channel/composer?msg=Cxuv4wFfjGbrrZQwW) @sureshtedla If you are new to Composer I would suggest looking at the samples provided with the online playground where there are examples of multiple participant types: http://composer-playground.mybluemix.net/login
[ ](https://chat.hyperledger.org/channel/composer?msg=4HWyxymoq6rwRXcXv) @rthatcher Ok so to be sure I undestood: setting `COMPOSER_PROVIDERS` is not enough to use `passpword-local`. One need to write some passport javascript code to handle the login process. Correct?
The question is: Where to put this code ? We cannot modify `composer-rest-server` tools I guess. Do I need to generate a custom API using yeoman `yo hyperledger-composer` ,then choose Loopback ? Correct again ?
[ ](https://chat.hyperledger.org/channel/composer?msg=4HWyxymoq6rwRXcXv) @rthatcher Ok so to be sure I undestood: setting `COMPOSER_PROVIDERS` is not enough to use `password-local`. One need to write some passport javascript code to handle the login process. Correct?
The question is: Where to put this code ? We cannot modify `composer-rest-server` tools I guess. Do I need to generate a custom API using yeoman `yo hyperledger-composer` ,then choose Loopback ? Correct again ?
[ ](https://chat.hyperledger.org/channel/composer?msg=4HWyxymoq6rwRXcXv) @rthatcher Ok so to be sure I undestood: setting `COMPOSER_PROVIDERS` is not enough to use `password-local`. One need to write some passport javascript code to handle the login process. Correct?
The question is: Where to put this code ? We cannot modify `composer-rest-server` tools I guess. Do I need to generate a custom API using yeoman `yo hyperledger-composer` ,then choose Loopback , then modify the code. Correct again ?
[ ](https://chat.hyperledger.org/channel/composer?msg=Ty6Xnqf79H3RBiddK) @rthatcher Oh I see now. I just need to pass in the options.
Hello, All. Can you please help me to retrieve user information from auth service.
I've run REST server with `gitlab-passport`.
In client i retrieve `access_token` but when i try to use gitlab API, it returns me `401 Unauthorized`.
How could i solve it?
@zasamen did you send this token in {header: {Cookie: access_token}} in consecutive calls?
`fetch('https://gitlab.com/api/v4/users',{method:'GET',headers:{'Authorization':'TOKEN'}})` . To get data from REST i use it like
```
const url = 'localhost:3000/api/ping';
const options = { method, headers: { 'X-Access-Token': token } };
if (data) {
options.headers['Accept'] = 'application/json';
options.body = data;
}
await fetch(url, options)
```
`fetch('https://gitlab.com/api/v4/users',{method:'GET',headers:{'Authorization':'TOKEN'}})` . To get data from REST i use it like
```
const url = 'localhost:3000/api/ping';
const options = { method, headers: { 'X-Access-Token': token } };
if (data) {
options.headers['Accept'] = 'application/json';
options.body = data;
}
await fetch(url, options)
```
requests to rest are performed correctly
[ ](https://chat.hyperledger.org/channel/composer?msg=j6HEM3oHieoab9boW) @zasamen not sure about the token details, but it should be `/api/system/ping` and you need to import a card before you can access the network with a ping.
If you are looking for an immediate test after an authentication I would try a GET on the wallet.
[ ](https://chat.hyperledger.org/channel/composer?msg=NpZvrBW6PeR4fD3wy) @rthatcher Connection to REST API SERVER working correctly (it was typo in url). I want to get some user-data from Auth Service. Such as email, id ....
@aparolini correct - and you can customise your own REST server ->https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server not tested passport-local but seems someone else has tried (see answer_ - see https://stackoverflow.com/questions/50349925/composer-rest-server-with-passport-local-strategy and local login strategy here -> https://stackoverflow.com/questions/31594949/where-to-put-passportjs-local-strategy-in-an-express-application
@aparolini correct - and you can customise your own REST server ->https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server not tested passport-local but seems someone else has tried (see answer) -> https://stackoverflow.com/questions/50349925/composer-rest-server-with-passport-local-strategy and local login strategy here -> https://stackoverflow.com/questions/31594949/where-to-put-passportjs-local-strategy-in-an-express-application
[ ](https://chat.hyperledger.org/channel/composer?msg=ziRQEL2a33CJmrrDg) @mahoney1 After one afternoon of work, my custom generated Yeoman node.js REST API can now do authentification using `passport-local` Passport strategy ( mainly inspired by https://github.com/passport/express-4.x-local-example ).
But now how do I link my UserPrincipal to an hyperledger participant ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ziRQEL2a33CJmrrDg) @mahoney1 After one afternoon of work, my custom generated Yeoman node.js REST API can now do authentification using `passport-local` Passport strategy ( mainly inspired by https://github.com/passport/express-4.x-local-example ).
But now how do I link my UserPrincipal to an hyperledger participant ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ziRQEL2a33CJmrrDg) @mahoney1 After one afternoon of work, my custom generated Yeoman node.js REST API can now do authentification using `passport-local` Passport strategy ( mainly inspired by https://github.com/passport/express-4.x-local-example ).
But now how do I link my UserPrincipal to an hyperledger participant ?
Has joined the channel.
@parikn Yeah my fabric is running on the peer.
@rthatcher I was also thinking it could be a npm issue. I am behind a firewall and I do not have access to https://registry.npmjs.org/. The peer container logs shows this : ```
```
@parikn Yeah my fabric is running on the peer.
@rthatcher I was also thinking it could be a npm issue. I am behind a firewall and I do not have access to https://registry.npmjs.org/. The peer container logs shows this :
```
[chaincode] Launch -> ERRO 03e launchAndWaitForRegister failed: timeout expired while starting chaincode tharthar-business-network:0.0.1(networkid:dev,peerid:peer3.tharthar,tx:bb9f7e339782453139eb2b758ae94a904c8ad4a335620911fb658f797eb360c6)
[endorser] simulateProposal -> ERRO 03f [thartharchannel][bb9f7e33] failed to invoke chaincode name:"lscc" , error: timeout expired while starting chaincode tharthar-business-network:0.0.1(networkid:dev,peerid:peer3.tharthar,tx:bb9f7e339782453139eb2b758ae94a904c8ad4a335620911fb658f797eb360c6)
```
Ours is a custom fabric and yeah we have enough space to create containers.
@mahoney1 I have updated the 4 times in the connection.json file as has been mentioned in that github link
@parikn Yeah my fabric is running on the peer.
@rthatcher I was also thinking it could be a npm issue. I am behind a firewall and I do not have access to https://registry.npmjs.org/. The peer container logs shows this :
```
[chaincode] Launch -> ERRO 03e launchAndWaitForRegister failed: timeout expired while starting chaincode tharthar-business-network:0.0.1(networkid:dev,peerid:peer3.tharthar,tx:bb9f7e339782453139eb2b758ae94a904c8ad4a335620911fb658f797eb360c6)
[endorser] simulateProposal -> ERRO 03f [thartharchannel][bb9f7e33] failed to invoke chaincode name:"lscc" , error: timeout expired while starting chaincode tharthar-business-network:0.0.1(networkid:dev,peerid:peer3.tharthar,tx:bb9f7e339782453139eb2b758ae94a904c8ad4a335620911fb658f797eb360c6)
```
Ours is a custom fabric and yeah we have enough space to create containers.
@mahoney1 I have updated the 4 times in the connection.json file as has been mentioned in that github link
@rupa12 Fabric will need to be able to connect to the npm registry. You need to provide an npmrc file when you `install` the business network to define how to access the npm registry. see
https://hyperledger.github.io/composer/latest/managing/connector-information
It's not possible to install node.js chaincode without access to some sort of npm registry. You may have to consider setting up an internal one using something like verdaccio, nexus repository manager or artifactory for example
@rupa12 Fabric will need to be able to connect to the npm registry. You need to provide an npmrc file when you `install` the business network to define how to access the npm registry. see
https://hyperledger.github.io/composer/latest/managing/connector-information
It's not possible to install node.js chaincode without access to some sort of npm registry. You may have to consider setting up an internal one using something like verdaccio, nexus repository manager or artifactory for example if it isn't allowed to contact the external one
@davidkel I have a .npmrc file and the content of that file is `prefix=${HOME}/.npm-packages` .. I have used the following command to install the business network:
```
composer network install -c PeerAdmin@tharthar-network -a tharthar-business-network\@0.0.1.bna -o npmrcFile=/home/blockchain/node-v8.11.3-linux-x64/etc/.npmrc
```
Let me go ahead and install a internal one.
Hey there.
I'm getting this everytime I try composer network start command.
[grpc] Printf -> DEBU 812 grpc: Server.Serve failed to complete security handshake from "167.9
9.204.13:48422": EOF
This is from orderer logs.
From the composer error I get this
Starting business network definition. This may take a minute...E0803 19:15:46.897709864 2718 ssl_transport_security.c
c:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificat
e verify failed.
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: SERVICE_UNAVAILABLE
Anyone has any idea what can be the resolution?
I've enabled TLS btw.
Does business network card signs every transaction data or it just authenticates that this user is valid? is card uploaded to the server every time a person connects?
Is there a way to create asset automatically when creating a participant ?
Has joined the channel.
Hiii
I'm using hyper-ledger to insert records from CSV to assets. But for each record insertion to insertion In Hyper-ledger through POST query it takes 3 seconds approx.
Can I, reduce the time?
Has joined the channel.
Hi All
Do we have multi channel support on hyperledger composer
?
[ ](https://chat.hyperledger.org/channel/composer?msg=SZtpHgdkjAdFKGuBy) @trex70 This is probably the max-time per block you've configured for your fabric-network. As the block is not full by then, it commits anyway. You can either change your network configuration and reduce this time or you can create multiple transactions at once and not wait for the block to be commited.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=7Huf9crFmmY7hn5CB) @Ishan Does not look like this is implemented yet: https://github.com/hyperledger/composer/issues/2103
@Ishan @marksta depends what you mean by multi-channel support.
[ ](https://chat.hyperledger.org/channel/composer?msg=NorEnkM66YQohcCZf) @davidkel if i have one peer joined two different channel ,is it possible to deploy BNA on these channels? do i need to create two json files?
[ ](https://chat.hyperledger.org/channel/composer?msg=NorEnkM66YQohcCZf) @davidkel if i have one peer joined two different channel ,is it possible to deploy BNA on these channels? do i need to create two different connection.json files?
[ ](https://chat.hyperledger.org/channel/composer?msg=NorEnkM66YQohcCZf) @davidkel Interesting. Can you elaborate? I figure from the comments in the ticket and a gut-feeling that you may be able to deploy your composer application within different channels, but the possibilities of a single application than can deal with multiple channels are very limited, right?
@marksta So it all depends on the use case. For example it is perfectly feasible to write a client application that can interact with multiple channels and as such multiple business networks. But when people ask about multi-channel support they need to quantify what they mean and why they need that approach.
@Ishan yes you will need to create 2 different connection profiles, one for each channel
do we need to set CORE_PEER_CHAINCODELISTENADRESS in docker-compose.yaml file??
Does business network card issued to a user signs every transaction data sent by it or it just authenticates that user is authenticated? Secondly Is card uploaded to the server every time a person connects to a network using his card?
@davidkel each channel has one connection profile, does channel number relate with orgs? and does each channel have one genesis block file?
Has joined the channel.
```composer network ping -c admin@tutorial-network
Error: Card not found: admin@tutorial-network
Command failed```
Hey all, having a problem with this command in composer
Anyone run into this issue? was using composer-cli 0.19.13, now using composer-cli 0.19.5, both don't work
Everything works in playground for the tutorial network
Just trying to set up the RESTful API
Has joined the channel.
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ur38a6htEhqzdouiT) @vanderbannond card is imported into the wallet?
Has joined the channel.
Dear All, composer network install --archiveFile tutorial-network@1.0.0.bna --card PeerAdmin@fabric-network
Dear All, when I run composer archive create command, tp to create a business network archive file, as written in the instructions https://hyperledger.github.io/composer/latest/business-network/bnd-deploy composer archive create -t dir -n I got the following mistake: Missing argument value: sourceName I would be grateful for your help
Dear All, when I run composer archive create command, tp to create a business network archive file, as written in the instructions https://hyperledger.github.io/composer/latest/business-network/bnd-deploy composer archive create -t dir -n I got the following mistake: Missing argument value: sourceName I would be grateful for your help
The command composer archive create -t dir -n does not work for me
It says "Missing argument value: sourceName"
As a result I can not create business network archive file
Clipboard - August 5, 2018 6:51 PM
Has joined the channel.
Does business network card issued to a user signs every transaction data sent by it or it just authenticates that user is authenticated? Secondly Is card uploaded to the server every time a person connects to a network using his card?
@mmick A card contains an identity (private key, public cert) all interactions with fabric will be signed by the private key. Not clear to me what you mean by server.
how to set bna start timeout for composer? when instantiating chaincode, it takes about 5 minutes.
```Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT```
another question, does composer 0.19.13 support fabric release 1.2.0?
Hi, I'm trying to install my business network into my fabric network from composer-cli (0.19.13) container. But I had an error as follow:
`~ $ composer network install --archiveFile mybn.bna --card PeerAdmin@hlfv1
✖ Installing business network. This may take a minute...
Error: EISDIR: illegal operation on a directory, read
Command failed`
Hi, I'm trying to install my business network into my fabric network from composer-cli (0.19.13) container. But I had an error as follow:
```
~ $ composer network install --archiveFile mybn.bna --card PeerAdmin@hlfv1
✖ Installing business network. This may take a minute...
Error: EISDIR: illegal operation on a directory, read
Command failed
```
Does anyone know about this error ?
Hi, I'm trying to install my business network into my fabric network from composer-cli (0.19.13) container. But I had an error as follow:
```
~ $ composer network install --archiveFile mybn.bna --card PeerAdmin@hlfv1
✖ Installing business network. This may take a minute...
Error: EISDIR: illegal operation on a directory, read
Command failed
```
Does anyone know about this error ?
Hi, I'm trying to install my business network into my fabric network from composer-cli (0.19.13) container. But I had an error as follow:
```
~ $ sh ./createPeerAdminCard.sh
( Succeeded to create PeerAdmin card )
~ $ composer network install --archiveFile mybn.bna --card PeerAdmin@hlfv1
✖ Installing business network. This may take a minute...
Error: EISDIR: illegal operation on a directory, read
Command failed
```
Does anyone know about this error ?
Has joined the channel.
@marksta , Can you please help me sources for configuration?
@bh4rtp Maybe you are in China as same as me. Maybe that error is not about timeout, the peer have to visit some google website when call "composer network start".
@wangrangli it is for timeout. the default timeout is 300 seconds in connection.json. i have changed all the four timeout values to be 1200. now it is ok.
[ ](https://chat.hyperledger.org/channel/composer?msg=eHEAFjswcmyzMTqyw) Resolved. I also needed to re-create bna file at the composer-cli container. Thanks
Screen Shot 2018-08-06 at 1.09.23 pm.png
@AnithaReddy see https://stackoverflow.com/questions/51693339/unable-to-import-card-in-hyperledger-composer
Hello,
Trying to securise my composer-rest-server with something simpler thant github auth.
`local-authentification` and http basic are not working.
https://stackoverflow.com/questions/50349925/composer-rest-server-with-passport-local-strategy
Hello,
Trying to securise my composer-rest-server with something simpler thant github auth.
When I Run `composer-rest-server -n never -c admin@rinku -m true -a true`,
`local-authentification` and http basic are not working out of the box by setting the `COMPOSER_PROVIDERS `.
Any other option that may work ?
Hello,
Trying to securise my composer-rest-server with something simpler thant github auth.
When I Run `composer-rest-server -n never -c admin@rinku -m true -a true`,
`local-authentification` and http basic are not working out of the box by setting the `COMPOSER_PROVIDERS `.
Any other option that may work ? Thank you.
[ ](https://chat.hyperledger.org/channel/composer?msg=g22GdXDAAsbdeuumv) @rthatcher I have two nodes in docker swarm. One is worker node and other is manager. My connection.json is as following.```
{
"name": "hlfv1",
"x-type": "hlfv1",
"x-commitTimeout": 300,
"version": "1.0.0",
"client": {
"organization": "eProcure",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},
"channels": {
"eprocurecomposerchannel": {
"orderers": [
"orderer0.org.com",
"orderer1.org.com",
"orderer2.org.com",
"orderer3.org.com"
],
"peers": {
"peer0.eprocure.org.com": {},
"peer1.eprocure.org.com": {},
"peer2.eprocure.org.com": {}
}
}
},
"organizations": {
"eProcure": {
"mspid": "eProcureMSP",
"peers": [
"peer0.eprocure.org.com",
"peer1.eprocure.org.com",
"peer2.eprocure.org.com"
],
"certificateAuthorities": [
"ca.eprocure.org.com"
]
}
},
"orderers": {
"orderer0.org.com": {
"url": "grpc://orderer0.org.com:7050"
},
"orderer1.org.com": {
"url": "grpc://orderer1.org.com:7050"
},
"orderer2.org.com": {
"url": "grpc://orderer2.org.com:7050"
},
"orderer3.org.com": {
"url": "grpc://orderer3.org.com:7050"
}
},
"peers": {
"peer0.eprocure.org.com": {
"url": "grpc://peer0.eprocure.org.com:7051",
"eventUrl": "grpc://peer0.eprocure.org.com:7053"
},
"peer1.eprocure.org.com": {
"url": "grpc://peer1.eprocure.org.com:7051",
"eventUrl": "grpc://peer1.eprocure.org.com:7053"
},
"peer2.eprocure.org.com": {
"url": "grpc://peer2.eprocure.org.com:7051",
"eventUrl": "grpc://peer2.eprocure.org.com:7053"
}
},
"certificateAuthorities": {
"ca.eprocure.org.com": {
"url": "http://ca.eprocure.org.com:7054",
"caName": "ca.eprocure.org.com"
}
}
}
```
But when I install my network it gives me error:```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
```
I have checked my docker containers and they are up.
@HoneyShah Have you checked that those URLs in your connection profile are valid for your application that uses the business network card that contains that connection profile ?
@HoneyShah Have you checked that those URLs in your connection profile are valid for your application that uses the business network card that contains that connection profile, and by valid I mean things like can you resolve the hostname to an ip address ? If something listening on that port ?
@HoneyShah Have you checked that those URLs in your connection profile are valid for your application that uses the business network card that contains that connection profile, and by valid I mean things like can you resolve the hostname to an ip address ? Is something listening on the specific port as seen by your client ?
[ ](https://chat.hyperledger.org/channel/composer?msg=mrLmTG8BjWzFob5Mn) @davidkel there is a test url for the CA container - `http://ca.eprocure.org.com:7054/api/v1/cainfo` you can use this as an example hostname to verify and test your addressing and routing. If you can't hit that then you need to investigate your networking configuration.
[ ](https://chat.hyperledger.org/channel/composer?msg=mrLmTG8BjWzFob5Mn) @davidkel there is a test url for the CA container - `http://ca.eprocure.org.com:7054/api/v1/cainfo` you can use this as an example hostname to verify and test your addressing and routing. If you can't hit that then you need to investigate your networking configuration. @HoneyShah
@rthatcher [ ](https://chat.hyperledger.org/channel/composer?msg=eNb38kmnjCmP9hBN5)
Could you please provide me with information about `access_token`: is it suitable to interact with OAuth service?
[ ](https://chat.hyperledger.org/channel/composer?msg=232tXL6qbrDZeWrRT) @bh4rtp Composer does not support Fabric 1.2 yet - work is underway for 1.2 support, and there might be a version this week (v0.20.0) - keep an eye out here for announcements, and for the release notes https://github.com/hyperledger/composer/releases
@davidkel I build a high-throughput network sample with composer which is as same as https://github.com/hyperledger/fabric-samples/tree/master/high-throughput , but I still have some questions about it:
1. the delta value is stored in the `key` of CompositeKey but not the `value`, is it the best way? Though get value from `key` (string type) is easier then get it from the value (byte type). but store value in key also make the key too long, will this cause other problem?
2. when pruning all deltas In the chain code , is it save to use Promise.all()? In nodejs If there are too many promises , there will be a `MaxListenersExceededWarning: Possible EventEmitter memory leak detected.` warning, what about chain code env ?
my code is here : https://github.com/RocMax/composer-high-throughput/tree/master/composer-high-throughput
@davidkel I build a high-throughput network sample with composer which is as same as https://github.com/hyperledger/fabric-samples/tree/master/high-throughput , but I still have some questions about it:
1. the delta value is stored in the `key` of CompositeKey but not the `value`, is it the best way? Though get value from `key` (string type) is easier then get it from the value (byte type). but store value in key also make the key too long, will this cause other problem?
2. when pruning all deltas In the chain code , is it save to use Promise.all()? In nodejs If there are too many promises , there will be a `MaxListenersExceededWarning: Possible EventEmitter memory leak detected.` warning, what about chain code env ?
my code is here : https://github.com/RocMax/composer-high-throughput/tree/master/composer-high-throughput
@davidkel I build a high-throughput network sample with composer which is as same as https://github.com/hyperledger/fabric-samples/tree/master/high-throughput , but I still have some questions about it:
1. the delta value is stored in the `key` of CompositeKey but not the `value`, is it the best way? Though get value from `key` (string type) is easier then get it from the value (byte type). but store value in key also make the key too long, will this cause other problem?
2. when pruning all deltas In the chain code , is it safe to use Promise.all()? In nodejs If there are too many promises , there will be a `MaxListenersExceededWarning: Possible EventEmitter memory leak detected.` warning, what about chain code env ?
my code is here : https://github.com/RocMax/composer-high-throughput/tree/master/composer-high-throughput
please help me
@davidkel I am using host name of containers as URLs. I have tried to check using this https://stackoverflow.com/a/50067199. And here are the logs. ```
wget peer0.eprocure.org.com:7051
--2018-08-06 06:58:22-- http://peer0.eprocure.org.com:7051/
Resolving peer0.eprocure.org.com (peer0.eprocure.org.com)... 10.0.0.214
Connecting to peer0.eprocure.org.com (peer0.eprocure.org.com)|10.0.0.214|:7051... connected.
HTTP request sent, awaiting response... 200 No headers, assuming HTTP/0.9
Length: unspecified
Saving to: 'index.html'
index.html [ <=> ] 9 --.-KB/s in 0s
2018-08-06 06:58:22 (1.98 MB/s) - Read error at byte 9 (Connection reset by peer).Retrying.
```
@rthatcher I checked by replacing of CA container's URL to http://ca.eprocure.org.com:7054/api/v1/cainfo. But it also gives the same error.
Can you guide me on how to check my network configuration?
@davidkel @rthatcher I am using host name of containers as URLs. I have tried to check using this https://stackoverflow.com/a/50067199. And here are the logs. ```
wget peer0.eprocure.org.com:7051
--2018-08-06 06:58:22-- http://peer0.eprocure.org.com:7051/
Resolving peer0.eprocure.org.com (peer0.eprocure.org.com)... 10.0.0.214
Connecting to peer0.eprocure.org.com (peer0.eprocure.org.com)|10.0.0.214|:7051... connected.
HTTP request sent, awaiting response... 200 No headers, assuming HTTP/0.9
Length: unspecified
Saving to: 'index.html'
index.html [ <=> ] 9 --.-KB/s in 0s
2018-08-06 06:58:22 (1.98 MB/s) - Read error at byte 9 (Connection reset by peer).Retrying.
```
@rthatcher I checked by replacing of CA container's URL to http://ca.eprocure.org.com:7054/api/v1/cainfo. But it also gives the same error.
Can you guide me on how to check my network configuration?
[ ](https://chat.hyperledger.org/channel/composer?msg=x2j4pPBC9Tx4uTkcn) @zasamen I have tested this using the explorer, and then by using the access token on a `curl` cli - e.g.
curl -X GET --header 'X-Access-Token: htnNqL0zD9NGwtl30y6uBt6uKws6nnWjxDzYbYUyloqAm4pmjW1x4x0f0vknd0z2' 'http://localhost:3000/api/Trader/
[ ](https://chat.hyperledger.org/channel/composer?msg=JJkGdjkQSiMYT22Xb) @davidkel i was able to import the card last week but now am not my composer version is 0.19.8
I am using the composer -rest server in multi user way, my question is , when two different sessions are trying to activate the cards to execute the transactions which card is activated first and how is concurrency controlled in this case.
```I am using composer playground to test my code. However, I have this line in my code `var pluralize = require('pluralize');`, but when I try to run the transaction inside playground, it throws the error: `ReferenceError: require is not defined`
```
I am using composer playground to test my code. However, I have this line in my code `var pluralize = require('pluralize');`, but when I try to run the transaction inside playground, it throws the error: `ReferenceError: require is not defined`
I am using composer playground to test my code. However, I have this line in my code `var pluralize = require('pluralize');`, but when I try to run the transaction inside playground, it throws the error: `ReferenceError: require is not defined`. What do I need to do to fix this error in Playground?
[ ](https://chat.hyperledger.org/channel/composer?msg=Nb8HRDiTm7ndsd2ZY) @MarcelvandeKerkhof Require and import are not supported in the Transaction Logic scripts.
@vanderbannond I think you've yet to import the card that was created for `admin` using `composer card import -f
[ ](https://chat.hyperledger.org/channel/composer?msg=ohFBqPHNng7WhLZqg) @rthatcher Thanks for the quick reply! How would I be able to imiport external module? Is it not possible at all?
@Jyotirmoy probably best explained by an example showing multi-user interaction using Google OAUTh2 (tutorial) - https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest - not sure what you mean by 'activate the card' but normally you would 'activate' a participant's card it so that you have the key/cert pulled to the wallet (then export that for use in the REST server - for example) - that identity will be bound to the participant
@Jyotirmoy probably best explained by an example showing multi-user interaction using Google OAUTh2 (tutorial) - https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest (See 'Step Nine' onwards) - not sure what you mean by 'activate the card' but normally you would 'activate' a participant's card it so that you have the key/cert pulled to the wallet (then export that for use in the REST server - for example) - that identity will be bound to the participant
[ ](https://chat.hyperledger.org/channel/composer?msg=FqXLP3D2HTtHLcrjs) @mahoney1 Thanks for the response, I have gone through link and performed all the steps but my question is what if i have to access the rest server from two different browsers with two different identity cards, at the same time, which card would be set as default first.
stone
@Jyotirmoy two different browsers, and two different business network cards = two different default Identities (via their cards) set as default in their respective REST client wallets - they are independently accessing the business network through the REST API clients
@rthatcher Hi I have generated rest-server, added github authentication and multi user mode for rest server
in the wallet i have uploaded the card
i got enroll a user error
Hi, the `composer-rest-server` provides endpoint called `wallet/import` which accepts `.card` formart. I have created few identity using `playground` and cards are created under `~/.composer`. Can any one tell me how to create `.card` file from cards created by `playgroud`?
@sureshtedla how did you create `.card` ?
could you please help me on that?
[ ](https://chat.hyperledger.org/channel/composer?msg=xinRcZn9Ny65h6TqG) @rthatcher Perhaps you don't understand the problem. `access_token` perfectly works with REST. But i ask 'Is it possible to interact with *OAuth2 * Server after authentication?'. (Usually (in other applications) it is possible. to access email, user_name, some personal information, and so on... depending on permissions of AUTH server).
@rthatcher I was able to import `.card` successfully. When I hit `/wallet` endpoint, get response with the information of the imported card. When I try to hit any other endpoint, I get the following error
```
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]",
"stack": "Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]\n at client.getUserContext.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)\n at
Hi guys ! I'm trying to use Google OAuth through my front-end application, but I'm facing a problem. When I retrieve my token from the default Front-End of Composer REST Server, I don't get the same access-token format as the one I retrieve through my own Front-end application.
Here is the one from the Front-end of Composer REST Server : idkQMyb1Gwl0b9EMbdeBi21MvE2LRHBl3Ssm4OBlCeFaFAsDrjAyePg4FD9FJ4DI
And here is the one I retrieve through my own front-end after sign-in the Google OAuth : ya29.GlwPBg_klsgfxLH2cHp8oSLNopaROoTYx8uPNtydybC8tN3Sy2W5koW_Fg73e9liNkgaMMtnhPd0yiHGn1rxZxtoD_AbsBrWT5A1fTc8-WorOSUzmav-4CJ3cNO6pw
And the second one doesn't work when i use it in the headers requests.
How can i deal with it ?
Thanks in advance !
@zasamen although not a Composer question, I believe you can https://stackoverflow.com/questions/24442668/google-oauth-api-to-get-users-email-address (see last answer and bullet 5 of that link)
[ ](https://chat.hyperledger.org/channel/composer?msg=QkXbCM4JHJPG8qzAT) @hyper-sunder i am also getting same error
@terrypst not sure if the issue is that you set up an account for OAuth 2.0 Web Server Authentication'rather than OAuth 2.0 Service Account Authentication,' (which the Google Auth tutorial uses and generated via Google + API library I believe) - as I've seen that 'ya29' prefix some time back (you can 'google' resources) but a similar discussion [here](https://github.com/asimlqt/php-google-spreadsheet-client/issues/20#issuecomment-67008622) may help you
[ ](https://chat.hyperledger.org/channel/composer?msg=xXnCQtmp7hCbzoQAj) Please help
Hi anyone
why do I get the following error when i create peer admin ?
```
Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html
Command failed
```
???
@rthatcher How to issue identities through rest-server?
I am not able to load playground too??? Help me please
@hyper-sunder how are you creating peer admin - using the Composer development setup? Did you stand up a fresh Fabric enviroment or something?
@mahoney1 followed Composer development steps
when running command `composer card list`... I do get the above error @mahoney1
I dont know what went wrong
[ ](https://chat.hyperledger.org/channel/composer?msg=46Rfmn6YxJJaPGPZK) @sureshtedla see ANSWER in this thread https://stackoverflow.com/questions/48838803/how-to-create-participant-there-identities-via-rest-api-that-generated-by-comp
@hyper-sunder - strange can you do a `cd` and do `composer card list`
same @mahoney1
@hyper-sunder something seems corrupt with your `.composer` wallet directory in $HOME - not sure how your wallet has become corrupted - have you switched user (installed Composer with elevated privileges etc) - so suggest to 1) `rm -rf .composer and 2) cd `$HOME/fabric-tools` - I assume you've downloaded this (per the docs, using the curl command) quite recently - so that the tools are up to date and assuming you're using Composer 0.19.x 3) run `./createPeerAdminCard.sh (should run OK, with normal output this time) - finally - I assume you've installed Composer without using 'sudo' or 'root' privleges
@hyper-sunder something seems corrupt with your `.composer` wallet directory in $HOME - not sure how your wallet has become corrupted - have you switched user (installed Composer with elevated privileges etc)? - suggest to 1) `rm -rf .composer and 2) cd `$HOME/fabric-tools` - I assume you've downloaded this (per the docs, using the curl command) quite recently - so that the tools are up to date and assuming you're using Composer 0.19.x 3) run `./createPeerAdminCard.sh (should run OK, with normal output this time) - finally - I assume you've installed Composer without using 'sudo' or 'root' privleges
@hyper-sunder something seems corrupt with your `.composer` wallet directory in $HOME - not sure how your wallet has become corrupted - have you switched user (installed Composer with elevated privileges etc)? - suggest to 1) `rm -rf .composer and 2) `cd $HOME/fabric-tools` (or whatever directory you created - eg `fabric-dev-servers`) - I assume you've downloaded this (per the docs, using the curl command) quite recently - so that the tools are up to date and assuming you're using Composer 0.19.x 3) run `./createPeerAdminCard.sh (should run OK, with normal output this time) - finally - I assume you've installed Composer without using 'sudo' or 'root' privleges
@hyper-sunder something seems corrupt with your `.composer` wallet directory in $HOME - not sure how your wallet has become corrupted - have you switched user (installed Composer with elevated privileges etc)? - suggest to 1) `rm -rf .composer and 2) `cd $HOME/fabric-tools` (or whatever directory you created - eg `fabric-dev-servers`) - I assume you've downloaded this tools zip (ie per the docs, using the curl command) quite recently? - so that the tools are up to date and also - assuming you're using Composer 0.19.x 3) run `./createPeerAdminCard.sh (should run OK, with normal output this time) - finally - I assume you've installed Composer without using 'sudo' or 'root' privleges
@mahoney1 thanks for your input. let me remove `.composer` and try. I have followed the as per the developement instruction
@mahoney1 Superb :)
its working... thanks a lot.
[ ](https://chat.hyperledger.org/channel/composer?msg=ENxrZXXn2f37uuuQz) @mahoney1 The question is not "how to get info via API", but is that `access_token` of REST SERVER usable to get info from Auth Service (according to OAuth2 protocol).
@mahoney1 I have started fabric network by entrering the command fabric-dev-servers>./startFabric.sh and after that I have generated rest-server by following the developer tutorial in the composer website my question is txns that we done through rest server where it is going to store exact location
@mahoney1
@rthatcher I was able to import `.card` successfully. When I hit `/wallet` endpoint, get response with the information of the imported card. When I try to hit any other endpoint, I get the following error
```
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]",
"stack": "Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]\n at client.getUserContext.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)\n at
@mahoney1 I was able to import `.card` successfully. When I hit `/wallet` endpoint, get response with the information of the imported card. When I try to hit any other endpoint, I get the following error
```
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]",
"stack": "Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]\n at client.getUserContext.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)\n at
I followed the stackoverflow that you shared https://stackoverflow.com/questions/48838803/how-to-create-participant-there-identities-via-rest-api-that-generated-by-comp too. I get no response
@zasamen I see - you should be able to - as I understand it, that's the whole point of integrating with a 3rd party provider - eg. use the access token generated by the provider to retrieve a user’s Facebook profile, if using that strategy for example - should be the same for Google etc see more here -> https://strongloop.com/strongblog/authenticate-loopback-google-facebook-github/
[ ](https://chat.hyperledger.org/channel/composer?msg=onAdousrMWXtGTbvZ) @sureshtedla they're stored on your local Dev server's blockchain ledger (the business network you created/installed is a 'window' into the ledger in effect) - and that is what the REST server is interacting with
@hyper-sunder so you've now set up a multi-user REST server ? (Previously you had just set up the dev server local environment) - if yes, then you still need to import your business network card (that you want to use in the REST APIs) into your REST API wallet, to then be able to interact (from the REST API in the browser) with the business network, as that identity/participant in question - is that the case?
Has joined the channel.
Hello, I'm looking for an advice on how to handle the storage of file like pdf, doc etc. I have read some stackoverflow questions that suggest to encode in base64 and upload so tecnically basically is possible,but... It is bad to store on Fabric? Are there any limitation or disadvantages?
@renaudadorlee depends on who's accessing it - usually you would store a hash of it as described here -> https://stackoverflow.com/questions/49464591/what-is-the-best-way-of-image-storage-on-hyperledger-composer/49489574#49489574 - there's also a link to an IPFS storage example on github in the link at the bottom
Hey everyone! So I'm making a frontend application using the Angular Yeoman generator. I keep getting an error for my transactions when I invoke the transactions, I get a "cyclic object" error. This seems to happen everytime I run the transaction, but sometimes the transaction is actually going through, and other times it isn't. Has anybody encountered this problem?
composer - cyclic object value error.png
@mdimovich someone had already commented on the Invoke issue https://github.com/hyperledger/composer/issues/3136#issuecomment-399675487 - and created a blog (to enable it in the Transaction form) - and reasons why you might see the error you posted
@mahoney1 Yes I saw this blog post and was able to fix the Invoke button itself, but now when I actually invoke something, I'm getting that error
I have generated a card through
I have generated a card through
const IdentityIssue = require('composer-cli').Identity.Issue;
let options = {
card: 'admin@tutorial-network',
file: 'DanSelman',
newUserId: 'Dan',
participantId: 'resource:net.biz.tutorial-network.Person#DanSelman@biznet.org'
};
IdentityIssue.handler(options);
can't find any cert or x509 material?
Some info?
[ ](https://chat.hyperledger.org/channel/composer?msg=sgj7vFXPbjtBjwScQ) @mahoney1 Yeah, previously I had issue in setup dev environment in local and had fixed it wit you help. I have created participant identities using `playgroud` and started REST server too with `composer-rest-server -c admin@mynetwork -n always -m true -w true -a true`. I am able to get `access-token` with `passport-github` and able to import participant card using `/wallet/import` by selecting a `.card`. Getting valid response when calling `/wallet/`. But when I call other REST API call with the user, I get the following error
```
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]",
"stack": "Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]\n at client.getUserContext.then.then.catch (/usr/local/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)\n at
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=59MHF5YDqJBNCqhTB) @mmick Thank you! The card just authenticates that user authentificated.
Has joined the channel.
When spinning up a Composer REST server with TLS enabled, I am getting a CORS error in all browsers:
`Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://54.244.11.188:3000/api/Customer. (Reason: CORS request did not succeed).`
With TLS disabled, everything works fine in Chrome, but I still receive CORS errors in Firefox/Safari.
I'm running Composer v0.19.10, multi-user=true, auth=true (jwt authentication)
When spinning up a Composer REST server with TLS enabled, I am getting a CORS error in all browsers:
`Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://xxx.xxx.x.xx/api/Customer. (Reason: CORS request did not succeed).`
With TLS disabled, everything works fine in Chrome, but I still receive CORS errors in Firefox/Safari.
I'm running Composer v0.19.10, multi-user=true, auth=true (jwt authentication)
Additionally, is it possible to enable CORS within the composer-rest-server Docker image or container? I notice in the hyperledger/composer/packages/composer/composer-rest-server/server/config.json file, the "cors" option is set to false. Is there any way to modify the docker image or container and set this value to true?
Additionally, is it possible to enable CORS within the composer-rest-server Docker image or container? I notice in the github repo: hyperledger/composer/packages/composer/composer-rest-server/server/config.json file, the "cors" option is set to false. Is there any way to modify the docker image or container and set this value to true?
I have received a 'high severity' security alert from GitHub for hyperledger/composer repo (lodash < 4.17.5). The references are from several 'package.json' files, mostly to 4.17.4. I assume ldash is a runtime library/utility.
Hey guys I am trying to enable users of my website create hyperledger composer based identities that map to their participant entity. I do not see such an API in composer-client package. Anyonw knows how to achieve the same?
Has joined the channel.
Hi i would like to know which kind of calls(synchronous or asynchronous) does the composer rest server to the hyperledger fabric network ? How to handle the network delayed responses ? How can we effectively use events ?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Nb4TkZZSN9RLhA7BE) @mahoney1 that helped, thanks alot for the information
how to check for consensus algorithm used in my blockchain ?
[ ](https://chat.hyperledger.org/channel/composer?msg=8rfKi9je4kP7BnxKC) @HoneyShah I executed every steps which are required to start business network on composer-cli container. I think that is one option to avoid from annoying with a network problem between native and swarm network.
https://stackoverflow.com/questions/50926131/how-to-run-hyperedger-composer-cli-docker-image-to-execute-composer-commands/50929612#50929612
hi guys did anyone used composer-rest-server to generate rest api and use it
I am trying to change my backend code but everytime i am seeing the same rest api same get ,post,restapi
hi guys did anyone used composer-rest-server to generate rest api and use it
I am trying to change my backend code but everytime i am seeing the same rest api same get ,post,restapi ,trade same thing my backend code is not showing any change on front end
hi guys did anyone used composer-rest-server to generate rest api and use it
I am trying to change my backend code but everytime i am seeing the same rest api same get ,post,restapi ,trade same thing my backend code is not showing any change on front end
plese help meeeeeeeeeeeee
hi guys did anyone used composer-rest-server to generate rest api and use it
I am trying to change my backend code but everytime i am seeing the same rest api same get ,post,restapi ,trade , my backend code is not showing any change on front end and i am having no errors in my cto file
plese help meeeeeeeeeeeee
@VenkateshMuthyala Hi. Try to delete container with old chaincode or change version of your new chaincode.
yeha i have deleted because i got an error that bussiness network is alredy installed i used ./stoffabric.sh and ./startfabric.sh @argman
Is there any guidance for deploying Hyperledger composer and fabric on Centos? Will Hyperledger composer work well on Centos?
@VenkateshMuthyala try deleting the dev-peer image too.
i have tear down all the images also @labcoinpoc
https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html
i am following these tutorial
in that i am at the step composer-rest-server plese correct me
if any thing i am doing wrong
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Mg3hAiH6n8yjAcEA6) @AshishKaila There is an issueIdentity method for BusinessNetworkConnection in the API - https://hyperledger.github.io/composer/latest/api/client-businessnetworkconnection#issueidentity
@nekia Thanks. Can you explain in some more detail? I can't get you perfectly.
[ ](https://chat.hyperledger.org/channel/composer?msg=xXnCQtmp7hCbzoQAj) @rthatcher Can you please help? I couldn't able to find any solution
[ ](https://chat.hyperledger.org/channel/composer?msg=oQ7Y6KhuGcssu5Efv) @touchingsoil its not officially supported (others had asked about it in this discussion [here](https://github.com/hyperledger/composer/issues/4030) )
@mahoney1 I was able to fix the error which posted last time. The problem is when I create `.card` using the following commad `composer card create --file conga.card --businessNetworkName penguin-network --connectionProfileFile connection.json --user conga --enrollSecret supersecret` gives the already mentioned problem. Could you please what would be the correct command to create `.card` from `connection.json`? So I have downloaded card from playground and use it. It working. Now facing an issue :cry: after importing a `.card` via `/wallet/import` endpoint, the imported `.card` is treated as default participant. So all the request made in the REST server uses the singing identity. The problem is if whatever the card I import using `/wallet/import` endpoint, I am not able to use those card in `playground` to sign in. Dont why??????
[ ](https://chat.hyperledger.org/channel/composer?msg=eHjddqZkqxYpdeE7Z) @AnithaReddy Composer uses the Consensus method chosen when the Fabric was configured. This can be defined in the configtx.yaml file which is used to generate the Genesis block. You can look at that file to find what is used. You can also look at the log of the orderer(s) and see what they are using when they start, or you can connect to the orderer container and type the `orderer` command which will display its configuration.
@mahoney1 And another doubt is.... for instance I have two participant in my fabric-network. When I import a `.card` into REST server that is being treated as `default=true`. So should I call `/wallet/{name}/Default` before I use different participant identity?????????? Or is there any other method?
HI guys i want my rest api to expose to network and acess openly to every one i don't want to give any traders in my network
so I taught of leaving the network.js empty it is complaining me
Looking for package.json of Business Network Definition
Input directory: /home/mdvenkatesh/fabric-dev-servers/md
Error: Empty script contents
Command failed
any help guys
@HoneyShah - I can't help you with your specific local networking issues. You need to investigate and understand your local network and docker/swarm configurations. Perhaps you could create some simple test HTTP Server containers and work with these before moving to Fabric and Composer.
@hyper-sunder if you want to mimic 'multi-user' in the same browser (using REST API) you can import another exported card (as you've done) and use the `setDefault` endpoint to make that the default for making requests. An example of this is shown in the Google OAUTH2 / REST multiuser tutorial - see 'Step Twelve' onwards for an example of how to do that -> https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
@hyper-sunder if you want to mimic 'multi-user' in the same browser (using REST API) you can import another exported card (as you've done) and use the `setDefault` endpoint (`POST /wallet/name/setDefault/` method) to make that the default for making requests. An example of this is shown in the Google OAUTH2 / REST multiuser tutorial - see 'Step Twelve' onwards for an example of how to do that -> https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
@hyper-sunder if you want to mimic 'multi-user' in the same browser (using REST API) you can import another exported card (as you've done) and use the `setDefault` endpoint ( `POST /wallet/name/setDefault/` method) to make that the default for making requests. An example of this is shown in the Google OAUTH2 / REST multiuser tutorial - see 'Step Twelve' onwards for an example of how to do that -> https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
thanks @mahoney1 let me look into the tutorial.
`yo hyperledger-composer` command allow us to generate `loopback` application which we can customise REST api. How do I include `wallet` to enable in it? @mahoney1
@VenkateshMuthyala _any traders in my network_ - not sure what you mean - removing your script file doesn't seem to be the right answer (hence the error you need a script file). What are you trying to achieve? Restrict certain participants (traders) ? Would you use multi-user REST server?
[ ](https://chat.hyperledger.org/channel/composer?msg=XnT4uGqrwDWcz7dQG) Any idea about this scenario?????
@hyper-sunder that is the correct CLI based syntax (obviously replace as appropriate with your own biz network name, etc etc). (If you exported your card, you obviously won't need this but that would be the equivalent from the CLI ). The 2nd part I already answered. As for Angular generated app - you would start your REST server in multi-user mode AND configure authentication (this is required for multi-user mode - then you will see the walllet endpoint / methods) https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication.html
@hyper-sunder that is the correct CLI based syntax (obviously replace as appropriate with your own biz network name, etc etc). (If you exported your card, you obviously won't need this but that would be the equivalent from the CLI ). The 2nd part I already answered. As for Angular generated app - you would start your REST server in multi-user mode AND configure authentication (this is required for multi-user mode (eg `composer-rest-server -c admin@my-network -m true` (multi-user, with authentication) - then you will see the walllet endpoint / methods) https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication.html
@mahoney1 Yes that's right if I start `composer-rest-server -c admin@my-network -m true` to enable multiuser mode. My last question was how to enable it when generate `loopback` application for my network definition? i.e when i follow this https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server
can any one explain what is the meaning of --> Commodity commodity (the symbol behind the Commodity ) and asset Commodity identified by tradingSymbol
can any one explain what is the meaning of * --> Commodity commodity *(the symbol behind the Commodity ) and *asset Commodity identified by tradingSymb*ol what is asset commodity what is the use of it
any help for syntax in modelinglanguage
@VenkateshMuthyala , --> is given to refer the User defined types like concepts or for asset types in another entities. *asset Commodity identified by tradingSymbol* Here Commodity is an Asset and its uniquely identified by variable tradingSymbol . Please go through https://hyperledger.github.io/composer/v0.16/reference/cto_language link for understanding the Business Network Modelling language.
I have setup a fabric network with 3 organisations. All the 3 organisations are on the same channel. I'm using business network admin card of one of the organisation to setup the composer REST server. Requests from participants of all the organisations are routed through this server. What will be the best way to manage the cards of different participants sighting that the request are coming from the single REST server?
@mrudav.shukla you could use/configure Cloud-based wallets given that your orgs have access to the REST server see https://hyperledger.github.io/composer/latest/business-network/cloud-wallets#configuring-cloud-based-custom-card-stores (including the README link) - once you've created the cards for the org participants, you would import them into the cloud wallet and they could access then from there
@mrudav.shukla you could use/configure Cloud-based wallets given that your orgs have access to the REST server see https://hyperledger.github.io/composer/latest/business-network/cloud-wallets#configuring-cloud-based-custom-card-stores (including the README link) - once you've created the cards for the org participants, you would import them into the cloud wallet and they could access them from there
@VenkateshMuthyala see https://hyperledger.github.io/composer/latest/reference/cto_language.html as mentioned `-->` defines a relationship to another resource (asset, participant class etc) so you can reference related resources etc
Hi guys
i am trying to understand modelling language i got some doubts
/**
* My commodity trading network
*/
namespace org.example.mynetwork
asset Commodity identified by tradingSymbol {
o String tradingSymbol
o String description
o String mainExchange
o Double quantity
--> Trader owner
}
participant Trader identified by tradeId {
o String tradeId
o String firstName
o String lastName
}
transaction Trade {
--> Commodity commodity
--> Trader newOwner
}
In app.js we are calling
*async function tradeCommodity(trade) {
trade.commodity.owner = trade.newOwner*;
when we are calling trade.commodity.owner in the same way i think we should call *trade.transcation.newOwner* but why are we calling
* trade.owner * from doucumention* i am thinking asset transcation are same as class * ??
plese help me
Hi guys
i am trying to understand modelling language i got some doubts
/**
* My commodity trading network
*/
namespace org.example.mynetwork
asset Commodity identified by tradingSymbol {
o String tradingSymbol
o String description
o String mainExchange
o Double quantity
--> Trader owner
}
participant Trader identified by tradeId {
o String tradeId
o String firstName
o String lastName
}
transaction Trade {
--> Commodity commodity
--> Trader newOwner
}
In app.js we are calling
*async function tradeCommodity(trade) {
trade.commodity.owner = trade.newOwner*;
when we are calling trade.commodity.owner in the same way i think we should call *trade.transcation.newOwner* but why are we calling
* trade.newowner * from doucumention* i am thinking asset transcation are same as class * ??
plese help me
[ ](https://chat.hyperledger.org/channel/composer?msg=HNrht3KW5uaXxcQ4o) @VenkateshMuthyala @VenkateshMuthyala if I understood you question correctly, you are asking why the functions used `trade.newOwner` instead of `trade.transcation.newOwner`. The reason is that when you created the transaction structure "Trade" there are only two attributes attached to it which are "commodity" and "newOwner". If you look at those two attributes and the structure that they belong in, "newOwner' is a participant that only has three string attributes where as "commodity" is under the asset structure and it has 5 attributes and one of them is a *pointer to another structure "-->"*. This should explain why `trade.commodity.owner` is valid but not `trade.transcation.newOwner`
[ ](https://chat.hyperledger.org/channel/composer?msg=z7RbfPpciNuni2oZm) @mahoney1 Thanks a lot for your answer ! I think my problem comes from the fact that my API REST is running on localhost:3000 and my front-end on localhost:4200. So when i retrieve my token from the Sign-in of Google OAuth, I got a token for my front-end application (and with a different format).
Capture_Google_OAuth.PNG
@mahoney1 Do you have any idea how i can retrieve the token for my API Rest through my front-end running on another port ?
@mahoney1 Do you have any idea how i can retrieve the token for my API Rest through my front-end running on another port ?
@mahoney1 Hi, I'm trying to generate/ run the angular application corresponding to my business network.
The generation process seems to have concluded successfully but the "npm start" displays a long list of error messages related to my network model as following
```
ERROR in /home/pg/workspace/..angular-app/src/app/com.acme.ts (7,38): Cannot extend an interface 'MyModelAssetType1'. Did you mean 'implements'?
ERROR in /home/pg/workspace/..angular-app/src/app/com.acme.ts (12,46): Cannot find name 'MyModelAssetType2'.
ERROR in /home/pg/workspace/..angular-app/src/app/MyModelAssetType/MyModelAssetType.component.ts (264,18): Property 'number' does not exist on type 'MyModelAssetType1'.
```
Has joined the channel.
Has joined the channel.
@rthatcher hi, is there any initiative to enhance the REST Server with capabilities for certificates based client authentication?
Hi, Does anyone know how to enable multi-user by generating loopback application?
help me please.......
@hyper-sunder you can refer to this website https://hyperledger.github.io/composer/v0.16/integrating/enabling-multiuser
@hypere i have done with help of the above website. If you refer this page https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server, tells we can customise REST api. Here only I want to enable `multiple-user` which should provide `wallet` related endpoints
Hi folks,
@hypere any idea?
I am trying to add an ACL to car auction network sample that avoid the owner to create an offer for his own listing:
rule DenyOfferFromOwner {
description: "Deny the owner to create an offer"
participant(m): "org.acme.vehicle.auction.Member"
operation: CREATE, UPDATE
resource(v): "org.acme.vehicle.auction.VehicleListing"
transaction(tx): "org.acme.vehicle.auction.Offer"
condition: (v.vehicle.owner.getIdentifier() == m.getIdentifier())
action: DENY
}
Is it correct?
seems that it is denying all tempts to create an offer
@titog ACL rules default to DENY - so you would have (for your scenario) still need a rule (below the one above) that read ```rule GrantOthers {
description: "grant others"
participant(m): "org.acme.vehicle.auction.Member"
operation: CREATE, UPDATE
resource(v): "org.acme.vehicle.auction.VehicleListing"
transaction(tx): "org.acme.vehicle.auction.Offer"
action: ALLOW
}```
@titog ACL rules default to DENY - so you would (for your scenario) still need a rule (below the one above) that read ```rule GrantOthers {
description: "grant others"
participant(m): "org.acme.vehicle.auction.Member"
operation: CREATE, UPDATE
resource(v): "org.acme.vehicle.auction.VehicleListing"
transaction(tx): "org.acme.vehicle.auction.Offer"
action: ALLOW
}```
thanks @mahoney1 !
@hyper-sunder https://www.youtube.com/watch?v=TbPsou9ok7Y&t=2181s this video should help you enable the multi-user function using Oauth via github. If you prefer any other services simply pass in different end-points. You might want to skip the first 20 to 30 mins if you have the business cards set up
@hyper-sunder https://www.youtube.com/watch?v=TbPsou9ok7Y&t=2181s this video should help you enable the multi-user function using Oauth via github. If you prefer any other services simply pass in different end-points
I have created an API using composer-rest-service, when I run the server - node server.js - why is it looking for the admin card under composer
@hyper-sunder try `export COMPOSER_MULTIUSER=true` before starting it?
please elaborate?
@avagarwal did you import your admin card into the rest server?
@terrypst from where are you running the `npm start` ? An example of connecting to a running B/N is shown here -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial#generating-an-application - note the directory
@hypere yes I did and the api is working. My question is if I now want to mount the same to a server, do we need to load composer etc on the server?
Has joined the channel.
Hello
I am getting the following error when I try to execute the commands for business network deployment. Can somebody help me with a solution for this. I am using ubuntu 16.04 ver.
Error :
dev1@localhost:~/land-registry$ composer archive create -t dir -n .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /home/dev1/land-registry
ParseException: Expected "namespace", comment, end of line or whitespace but "*" found. File /home/dev1/land-registry/models/org.acme.landregistry.cto line 19 column 1
Command failed
composer archive create -t dir -n .
that was the command I have used to create .bcn file
[ ](https://chat.hyperledger.org/channel/composer?msg=3unns22p2QjsfHNHz) @mahoney1 @mahoney1 even using only this rule, I have received: t: Participant 'org.acme.vehicle.auction.Member#alice@email.com' does not have 'CREATE' access to resource 'org.acme.vehicle.auction.Offer#ef128583-75fb-4079-b95c-0c69f540876a'
@prasadraavi this seems like a model file syntax error have you tried to compile or check the file using the online playground?https://composer-playground.mybluemix.net/
@titog the order of your rules matter. Do you have any rules after GrantOthers that will possibly overwrite this rule?
I am new to linux environment not so familiar. I was following the guidelines given in dev.to. I have not compiled anything.
I am suppose to execute these statements but got stuck there.
First, we need to create a Business Network Archive that the Fabric can use. To do this, in the land-registry folder, run this:
composer archive create -t dir -n .
This will create a .bna file.
Next, we'll install the composer runtime with:
composer network install --card PeerAdmin@hlfv1 --archiveFile land-registry@0.0.1.bna
@hypere the other rules are the default from the system... rule SystemACL, rule NetworkAdminUser, rule NetworkAdminSystem
Hi Eric, thanks for coming into help, i am actually stuck there.
@hypere can you point me to any documentation / diagram detailing the data flow between the api and blockchain, and how authentication is implemented
[ ](https://chat.hyperledger.org/channel/composer?msg=8sY4Merdw6GbtdYZb) @titog which business card were you using when you received this error? were you using the alie@email.com card
[ ](https://chat.hyperledger.org/channel/composer?msg=jQcJA2DYmHzvF5kQq) @avagarwal here is the link to the integration process along with the authentication process ```
https://hyperledger.github.io/composer/latest/integrating/integrating-index https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication.html
```
[ ](https://chat.hyperledger.org/channel/composer?msg=jQcJA2DYmHzvF5kQq) @avagarwal here is the link to the integration process along with the authentication process https://hyperledger.github.io/composer/latest/integrating/integrating-index
[ ](https://chat.hyperledger.org/channel/composer?msg=jQcJA2DYmHzvF5kQq) @avagarwal here is the link to the integration process along with the authentication process https://hyperledger.github.io/composer/latest/integrating/integrating-index
auth0
[ ](https://chat.hyperledger.org/channel/composer?msg=htbMyhM4araWgP2s8) @hypere Yes, alice's card
[ ](https://chat.hyperledger.org/channel/composer?msg=koNGdyiaw2BQz3Q5y) @titog in that case the rule will be applying to this trans which will deny the call since the owner is trying to create an offer if i understood your schema correctly```
ule DenyOfferFromOwner {
description: "Deny the owner to create an offer"
participant(m): "org.acme.vehicle.auction.Member"
operation: CREATE, UPDATE
resource(v): "org.acme.vehicle.auction.VehicleListing"
transaction(tx): "org.acme.vehicle.auction.Offer"
condition: (v.vehicle.owner.getIdentifier() == m.getIdentifier())
action: DENY
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=koNGdyiaw2BQz3Q5y) @titog in that case the rule will be applying to this trans```
ule DenyOfferFromOwner {
description: "Deny the owner to create an offer"
participant(m): "org.acme.vehicle.auction.Member"
operation: CREATE, UPDATE
resource(v): "org.acme.vehicle.auction.VehicleListing"
transaction(tx): "org.acme.vehicle.auction.Offer"
condition: (v.vehicle.owner.getIdentifier() == m.getIdentifier())
action: DENY
}
```
@hypere thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=3ECGG8BYb3gxZoGgL) @hypere I have removed it. Now I am using just the car auction default + that allow rule for members
@prasadraavi suggest to follow this tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - the other link you sent is not from Composer docs so you would otherwise have to contact the author (not tried the link FYI)
@titog that's because you need an acl rule for the transaction resource itself (at the top of the ruleset) -> eg ```rule GrantOthers {
description: "grant others"
participant: "org.acme.vehicle.auction.Member"
operation: CREATE, UPDATE
resource: "org.acme.vehicle.auction.Offer"
action: ALLOW
} ```
@titog that's because you need an acl rule for the transaction resource itself (at the top of the ruleset) -> eg ```rule GrantOthers {
description: "grant others"
participant: "org.acme.vehicle.auction.Member"
operation: CREATE
resource: "org.acme.vehicle.auction.Offer"
action: ALLOW
} ```
@titog that's because you need an acl rule for the transaction resource itself (at the top of the ruleset) -> eg ```rule GrantOthers {
description: "grant access to Transaction Offer"
participant: "org.acme.vehicle.auction.Member"
operation: CREATE
resource: "org.acme.vehicle.auction.Offer"
action: ALLOW
} ```
I have generated a card through
const IdentityIssue = require('composer-cli').Identity.Issue;
let options = {
card: 'admin@tutorial-network',
file: 'DanSelman',
newUserId: 'Dan',
participantId: 'resource:net.biz.tutorial-network.Person#DanSelman@biznet.org'
};
IdentityIssue.handler(options);
can't find any cert or x509 material?
Some info?
Can't find it even in networkadmin.card
I have generated a card through
const IdentityIssue = require('composer-cli').Identity.Issue;
let options = {
card: 'admin@tutorial-network',
file: 'DanSelman',
newUserId: 'Dan',
participantId: 'resource:net.biz.tutorial-network.Person#DanSelman@biznet.org'
};
IdentityIssue.handler(options);
Card was generated successfully but can't find any cert or x509 material?
Some info?
Can't find it even in networkadmin.card
@mmick as you're using the JS APIs to do it programattically- there is an example of issue (as you've done), import (to wallet) and export (to disk eg networkadmin.card) here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#card-api-errors--resolutions
FYI - the next Composer community call will be next Thursday 16th Aug
FYI - just to let you know in advance - the next Composer community call will be next Thursday 16th Aug
@mahoney1 Thanks for reply. Trasanction and access is working fine with the card but has only
{"userName":"ABC","version":1,"enrollmentSecret":"ZTrmVLGoFaOu","businessNetwork":"tutorial-network"}
in metadata.json!
@mahoney1 Thanks for reply. Trasanction and access is working fine with the card but has only
{"userName":"ABC","version":1,"enrollmentSecret":"ZTrmVLGoFaOu","businessNetwork":"tutorial-network"}
in metadata.json!
Was wondering where is cert stored that was generated by CA?
@mahoney1 Thanks for reply. Transactions and access is working fine with the card but has only
{"userName":"ABC","version":1,"enrollmentSecret":"ZTrmVLGoFaOu","businessNetwork":"tutorial-network"}
in metadata.json!
Was wondering where is cert stored that was generated by CA?
Come on guys have to answer it to my Supervisor! Help!
Thank you so much mahoney. I will go through that.
[ ](https://chat.hyperledger.org/channel/composer?msg=4G8SyBNv8MvgfQutg) @mahoney1 Putting as the first rule I have received:
Error: attempt to get property owner on an InvalidRelationship is not allowed. InvalidRelationship created due to Object with ID 'alice@email.com' in collection with ID 'Asset:org.acme.vehicle.auction.Vehicle' does not exist
I guess it is easier to add a rule inside function than the ACL :)
[ ](https://chat.hyperledger.org/channel/composer?msg=33dTpDGzoegFY2SeE) @mahoney1 No luck :cry:
[ ](https://chat.hyperledger.org/channel/composer?msg=RK8qtRbnTss3MmQkP) @hyper-sunder Multiple user mode requires that REST API authentication is enabled, and will automatically enable REST API authentication if it is not explicitly specified. follow this page here https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication.html
@hypere thanks for reply. I dont want to start my server using `composer-rest-server -c admin@my-network -a true`. I was successful when I do so. My primary aim to customise REST server by generator tool `yo hyperldeder-composer` and select `loopback` option. Which will give you loopback application. I want to enable it here. The above command give endpoints other than `Wallet` i.e. multi-user endpoints
Hope I make you to understand my need here
any help please?
Has joined the channel.
dear HL composer contributors, does any of you know about fabric DB model, i'm looking to know about defined table/column data types
@nfrunza do you mean a `.cto` ?
@nfrunza https://hyperledger.github.io/composer/latest/reference/cto_language
@hyper-sunder are you looking to "disable" certain REST commands?
Am facing below issue .. any idea
fabric11@adc1:~/fabric-dev-servers/MARBLE-24Ju$ composer network start --networkName tutorial-network --networkVersion 0.0.1 -A admin -S adminpw -c PeerAdmin@fabric-network
Starting business network tutorial-network at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
fabric11@adc1:~/fabric-dev-servers/MARBLE-24Ju$
I am trying to Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric for a single organization
by following the below link
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
but when i am invoking the below command i hit an issue ..
composer network start --networkName tutorial-network --networkVersion 0.0.1 -A admin -S adminpw -c PeerAdmin@fabric-network
adc1:~/fabric-dev-servers/MARBLE-24Ju$ composer network start --networkName tutorial-network --networkVersion 0.0.1 -A admin -S adminpw -c PeerAdmin@fabric-network
Starting business network tutorial-network at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
adc1:~/fabric-dev-servers/MARBLE-24Ju$ ls
when i tried with proxy and invoke the same command again ..
export http_proxy=http://
adc1:~/fabric-dev-servers/MARBLE-24Ju$ composer network start --networkName tutorial-network --networkVersion 0.0.1 -A admin -S adminpw -c PeerAdmin@fabric-network
Starting business network tutorial-network at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 1 Peers. Last error was Error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
adc1:~/fabric-dev-servers/MARBLE-24Ju$
Please help me on this if anyone encountered the same or any suggestions ..
@SilambarasanMadhappan you could try increasing timeouts in the docker-compose yaml file (as shown in item 7 of this link https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues) and do the stop/start as instructed - but also you would need to change the timeouts (change to 1200, from 300) in the PeerAdmin card's connection profile (also as instructed in the wiki)
@SilambarasanMadhappan you could try increasing timeouts in the docker-compose yaml file (as shown in item 7 (in the table) of this link https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues) and do the stop/start as instructed - but also you would need to change the timeouts (change to 1200, from 300) in the PeerAdmin card's connection profile (also as instructed in the wiki)
@SilambarasanMadhappan you could try increasing timeouts in the docker-compose yaml file (as shown in item 7 (in the table) of this link https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues) and do the stop/start as instructed - but also you would need to change the timeouts (change to 1200, from 300) in the PeerAdmin card's connection profile (also as instructed in the wiki) - suffice to say, if you're setting proxy settings (because you're behind a corporate proxy - although I've not see the full set of errors) you'll need to add an npmrcFile on the `composer network install` command as instructed [here](https://stackoverflow.com/questions/50392767/unable-to-start-composer-19-x-on-hyperledgfer-fabric-1-1) and [here](https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer/49758354#49758354)
can anyone guide me that how can we integrate https://github.com/marmelab/ng-admin this to our angular js on top of rest server.?
@TomWeiss - are you following any particular instruction/tutorial? - The issue is a Fabric one, and to some extent it depends on what preceded it (eg. which curl command, did you download the latest curl binary as instructed in Fabric docs etc etc)
@hamza-kakar you can check out this sample app to understand how its mapped to the generated APIs https://developer.ibm.com/code/patterns/decentralized-energy-hyperledger-composer/ or examine the generated Angular [app](https://hyperledger.github.io/composer/latest/applications/web) once you connect to an existing REST server and business network.
@titog - the error you posted isn't an ACL error - its a data error - something similar was posted on [Stack/Ovflw yesterday](https://stackoverflow.com/questions/51726549/referenceerror-offer-is-not-defined-hyperledger-composer-ibm-blockchain) (it may have been yours) where the F/Q relationship ID didn't exactly match the object (asset, participant) to which it is referring.
Has joined the channel.
@TomWeiss ok ..the curl command you need (from the first link you posted) is `curl -sSL https://goo.gl/6wtTN5 | bash -s 1.1.0 1.1.0 0.4.6` for Hyperledger Fabric 1.1 - if you followed that tutorial from the start, it would actually get you to cleardown the development Fabric, in preparation for the multi-org Fabric (two-org) Fabric, as its different. You would then proceed to run curl to get images/binaries leading up to the byfn.sh command you entered -
@TomWeiss ok ..the curl command you need (from the first link you posted) is `curl -sSL https://goo.gl/6wtTN5 | bash -s 1.1.0 1.1.0 0.4.6` for Hyperledger Fabric 1.1 based multi-org environment - if you followed that tutorial from the start, it would actually get you to cleardown the development Fabric, in preparation for the multi-org Fabric (two-org) Fabric, as its different. You would then proceed to run curl to get images/binaries leading up to the byfn.sh command you entered -
[ ](https://chat.hyperledger.org/channel/composer?msg=CaXrXxjo34yXpdjBx) @mahoney1 My problem is not to contact the REST Api through my front-end, my front-end works completely with the REST Api without authentication. But I can't retrieve a token
[ ](https://chat.hyperledger.org/channel/composer?msg=CaXrXxjo34yXpdjBx) @mahoney1 My problem is not to contact the REST Api through my front-end, my front-end works completely with the REST Api without authentication. But when I want to enable the authentication, it only works through the basic front-end of the Composer REST Server. I can't retrieve a token for the REST Api through my custom front-end running on port 4200.
[ ](https://chat.hyperledger.org/channel/composer?msg=CaXrXxjo34yXpdjBx) @mahoney1 My problem is not to contact the REST Api through my front-end, my front-end works completely with the REST Api without authentication. But when I want to enable the authentication, it only works through the basic front-end of the Composer REST Server running on port 3000. I can't retrieve a token for the REST Api through my custom front-end running on port 4200. The localhost:4200 will be unrecognized by the Google OAuth, and if I specify the port 4200 too, i will retrieve a token only working for my front-end application. I don't know if it's clear...
[ ](https://chat.hyperledger.org/channel/composer?msg=JaC9DLiSNessHCu5F) @hypere Thanks a lot
But if there is a* pointer in the --> Trader* trade.transcation.newOwner is it valid ?
from my understanding i am thinking that asset is a class to acess any thing inside it we have to use it class name and acess .*and remaining are free to acess?*
Am i correct
Hi guys
How to see the ledger state of database by using composer is it possible ? world state we can see in the port no 5984 couch db
@terrypst right, then you need to tell Google Auth (see info in appendix A4 of the [tutorial](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) where to redirect (ie after auth) - this Stack Overflow has a link with an example (in the answer) that may help you -
@terrypst right, then you need to tell Google Auth (see info in appendix A4 of the [tutorial](https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) where to redirect (ie after auth) - this Stack Overflow has a link with an example (in the answer) that may help you [here](https://stackoverflow.com/questions/45315014/get-user-to-front-end-after-oauth-redirect-mean-stack-w-angular-2)
@VenkateshMuthyala no, not valid notation - `trade` is the object (see @param bit) described in the TP decorator / metadata for the function in your script js file (in your example)
Hi I follow the deploy on two orgs network and I can't install my bna on my network
I get the following error
composer.PNG
How to activate created network card for a participant?
How to activate created network card for a participant?
identityId = 6d23afadfea54a51ff43018d5f071b56394ccad0b8cc44f831d7395950731334, name = member, state = ISSUED
how to change this state from "ISSUED" to "ACTIVATED"?
Hello,
My fabric is running on docker swarm. When I provide IP names in connection.json , all works fine. But I can't give IPs in production. I tried service name instead of IP but it is not working. So what I supposed to pass to connect composer with fabric?
```
"peers": {
"peer0.eprocure.org.com": {
"url": "grpc://192.168.0.147:7051",
"eventUrl": "grpc://192.168.0.147:7053"
},
"peer1.eprocure.org.com": {
"url": "grpc://192.168.0.147:8051",
"eventUrl": "grpc://192.168.0.147:8053"
},
"peer2.eprocure.org.com": {
"url": "grpc://192.168.0.147:9051",
"eventUrl": "grpc://192.168.0.147:9053"
}
},
```
Hello,
My fabric is running on docker swarm. When I provide IP names in connection.json , all works fine. But I can't give IPs in production. I tried service name instead of IP but it is not working. So what I supposed to pass to connect composer with fabric instead of IP ?
```
"peers": {
"peer0.eprocure.org.com": {
"url": "grpc://192.168.0.147:7051",
"eventUrl": "grpc://192.168.0.147:7053"
},
"peer1.eprocure.org.com": {
"url": "grpc://192.168.0.147:8051",
"eventUrl": "grpc://192.168.0.147:8053"
},
"peer2.eprocure.org.com": {
"url": "grpc://192.168.0.147:9051",
"eventUrl": "grpc://192.168.0.147:9053"
}
},
```
hi Guys i have written modeling language code and logic .js i have deployed succefully i am gettng the folllowing error
erroryi.png
logic.png
modeling.png
my asset is movie i want to transfer from one owner to another
my asset is movie i want to transfer from one owner to another any one plese help me to change the code
@HoneyShah you have a service name -> hostname in docker swarm resolution issue - this is something I can't help you with on this forum -suggest to try find an answer on Stack overflow.
@geourjoa looking at your screenshot, something isn't quite right with your org1 certificates defined in your connection profile (as per the tutorial) or you've misconfigured - this may also help you -> https://stackoverflow.com/questions/51594427/getting-following-error-when-deploying-your-bussiness-network-using-card-in-hypp
@mmick simple - just do `composer network ping -c
@VenkateshMuthyala your first screenshot (REST API) has invalid JSON in your POST (you can see what it should be like in PLayground under 'Test' then copy that? ) - to transfer, you obviously would run your trade transaction, but you probably would want `--> Movie movie` as well (in `Trade`) for it to work according to your transaction code
@VenkateshMuthyala your first screenshot (REST API) has invalid JSON in your POST (you can see what it should be like in PLayground under 'Test' then copy that? ) - to transfer, you obviously would run your trade transaction, but you probably would want `--> Movie movie` as well (in `Trade`) for it to work according to your transaction code - and lastly you would need 2 owners (Traders) already set up for transfer from a to b
[ ](https://chat.hyperledger.org/channel/composer?msg=HJieSm2S27BFYxTWh) @mahoney1 Thank you .. i will check and get back .. thanks a lot for pointers ..
[ ](https://chat.hyperledger.org/channel/composer?msg=qYnLMu5EwkY34wLjZ) @mahoney1 Okay. Thanks for you reply.
[ ](https://chat.hyperledger.org/channel/composer?msg=FWxt5QRftXNRRTvXX) @coveloper thank you for the reply, i need to know the DDL of the tables, what are the column types defined, and lengths. in HLExplorer we are storing fabric data in postgres and we got couple of times the size of the column is less than the value to be inserted.
@mahoney1 @rthatcher I found this in https://hyperledger.github.io/composer/latest/reference/connectionprofile```
"peers": {
"peer0.org1.example.com": {
"url": "grpc://peer0.org1.example.com:7051"
},
"peer1.org1.example.com": {
"url": "grpc://peer1.org1.example.com:7051"
},
"peer0.org2.example.com": {
"url": "grpc://peer0.org2.example.com:7051"
},
},
```
How will peer0.org2.example.com resolve to IP in normal docker configuration? Can you please brief me on this?
@mahoney1 @rthatcher I found this in https://hyperledger.github.io/composer/latest/reference/connectionprofile
```"peers": {
"peer0.org1.example.com": {
"url": "grpc://peer0.org1.example.com:7051"
},
"peer1.org1.example.com": {
"url": "grpc://peer1.org1.example.com:7051"
},
"peer0.org2.example.com": {
"url": "grpc://peer0.org2.example.com:7051"
},
},
```
How will peer0.org2.example.com resolve to IP in normal docker configuration? Can you please brief me on this?
We are seeing following behaviour
If a card is used first through rest server, then its not usable through composer playground
If a card is used first through composer playground, then its not usable through rest api
Is it expected?
Identity has been issued to participant through composer
we are getting following error : Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
@HoneyShah its because the containers can resolve those container names (on the same docker network). In your case, with docker swarm, your containers are in different services - you probably need container discovery - see more in the answer section here -> https://superuser.com/questions/1218363/how-do-i-properly-resolve-the-ip-of-another-container-in-a-docker-swarm-dns
@koineramitranjan yes, expected. That's why you would use an exported card usually (it has cert/key) in REST API, not a first-time card which only contains the enrol secret (so it starts another enrolment process and registers a different ID) - example shown in this tutorial (Google OAUTH2 ,authentication for REST Server)
@koineramitranjan yes, expected. That's why you would use an exported card usually (it has cert/key) in REST API, not a first-time card which only contains the enrol secret (so it starts another enrolment process and registers a different ID) - example shown in this tutorial (Google OAUTH2 ,authentication for REST Server) - https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
Hi @mahoney1 it was my mistake, when I added the VehicleListing I did it wrong:
{
"$class": "org.acme.vehicle.auction.VehicleListing",
"listingId": "1",
"reservePrice": 8000,
"description": "Carro de Alice",
"state": "FOR_SALE",
"vehicle": "resource:org.acme.vehicle.auction.Vehicle#alice@email.com"
}
As you can see the "Vehicle" id is wrong. I have added another listing using the correct id and it worked.
thank you!
Hi, Does anyone installed composer by root? I have meet a error: gyp WARN EACCES user "root" does not have permission to access the dev dir "/usr/local/lib/node_modules/composer-cli/node_modules/dtrace-provider/.node-gyp/8.11.3"
[ ](https://chat.hyperledger.org/channel/composer?msg=5FdsqeJuzuS2SuAXW) @nfrunza ( Which type of field are you getting that error? An `Integer` or `Double` ? Are you trying to find out what size each number type is?
[ ](https://chat.hyperledger.org/channel/composer?msg=JNApZxNsqLdGJtxRN) @coveloper it was a string, i think MSP ID
[ ](https://chat.hyperledger.org/channel/composer?msg=JNApZxNsqLdGJtxRN) @coveloper it was a string, i think MSP ID, yes i need to know, and apply to postgres DDL
@nfrunza Are you having problems with hyperledger explorer ? if you are then you should ask on the #hyperledger-explorer channel. Hyperledger Composer doesn't make use of any SQL database and neither does fabric so you won't find any DDLs for either
[ ](https://chat.hyperledger.org/channel/composer?msg=YqYfgZtD8GSKC3HKJ) @davidkel thank you, this makes sense, i wasn't aware of that
[ ](https://chat.hyperledger.org/channel/composer?msg=aGRzstZGxt29TS6cy) @wangrangli the docs https://hyperledger.github.io/composer/latest/installing/development-tools.html state not to use sudo or root for installing Composer modules. There is an easy way to fix your issue - please see here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues and scroll down to 'npm install errors' in the table (row 7)
@wangrangli before installing again, I would `npm uninstall -g
@wangrangli before installing again, I would `npm uninstall -g
Has left the channel.
Has joined the channel.
I was wondering if someone would be able to explain to me what the fix was for the issue linked attached. I'm still getting an error when I try to run the code. All the best! https://github.com/hyperledger/composer/issues/2973
@wangrangli I did sudo npm install --unsafe-perm -g composer-cli@0.19 and that fixed it. I found the answer in this link https://github.com/nodejs/node-gyp/issues/454
[ ](https://chat.hyperledger.org/channel/composer?msg=QdcQz53KzLKgxxRFq) @bstolman you have two problems in your model
transactionId is already reserved (you don't need to model/define it - a transaction Id is returned when a transaction is submitted - Or call the field something else if you are using it for your own transaction purposes) - the Docs do mention this about transactionId https://hyperledger.github.io/composer/latest/reference/cto_language
you do not use 'identified by' in your definition of the transaction - unlike Participants and Assets
@hypere I changed transaction AccountTransfer identified by transactionId {
o String transactionId
--> Account from
--> Account to
transaction AccountTransfer identified by transactionId {
o String transactionId
--> Account from
--> Account to
o Double amount
transaction AccountTransfer identified by transactionId {
o String transactionId
--> Account from
--> Account to
o Double amount
I changedtransaction AccountTransfer identified by transactionId {
o String transactionId
--> Account from
--> Account to
o Double amount
} to transaction AccountTransfer {
--> Account from
--> Account to
o Double amount
}
That seemed to work
@hypere
Is this the intended fix?
[ ](https://chat.hyperledger.org/channel/composer?msg=GAMeRKdfiHNjAsi25) @bstolman yes transaction automatically generates a transactionid so you dont have to worry about it
Thank you for your help @hypere ! I am trying to get through the IBM hyperledger developer course and they haven't updated their videos, so the code is wrong :/
I am but a noob
[ ](https://chat.hyperledger.org/channel/composer?msg=vwu9cpYui5qbxor6o) @bstolman yea the IBM courses havent been updated since 2016 or 17 but I think they are pushing a new one soon
Sweet! Good to hear!
I'm trying to become a blockchain consultant of sorts at IBM and figured I should learn how use composer
[ ](https://chat.hyperledger.org/channel/composer?msg=wAH7uHYSnLsDf2gug) @bstolman that's good to hear if you are an IBMer you should try and get the blockchain consultant badge. It gives you a better picture of the whole hyperledger ecosystem and how to integrate them into different industries.
I saw that you had to be an employee and I was disappointed! It's hard to apply for a job when the resources are only for IBMers.
@hypere
Has joined the channel.
I'm doing something that may not be supported or well advised. I'm trying to run composer in it's own docker container, in the same docker network as the fabric containers.
I've got composer installed in there as per the installation instructions, but when I try to deploy a network, I get the error: Error: Error trying deploy. Error: Error trying install chaincode. Error: Target peer is not a valid peer object instance
@mahoney1 Thank you. I had install the node and npm by root at this time. In this case, I can't install composer correctly. After I chown the dir of /usr/local/bin/node_modules and /usr/local/lib to ubuntu user, and su ubuntu, it works good. Then i exit to root, the composer command is also run ok.
@bstolman Thank you. I had install the node and npm by root at this time. In this case, I can't install composer correctly. After I chown the dir of /usr/local/bin/node_modules and /usr/local/lib to ubuntu user, and su ubuntu, it works good. Then i swtich to root, the composer command is also run ok.
Has joined the channel.
I met a error: Peer peer0.org1.example.com:7051 has rejected transaction '8ca0ae16afba7cdb4553bbd859d48ded0bd74e88733f435801949e5f3b085405' with code ENDORSEMENT_POLICY_FAILURE
How to add 2 participants in a transaction seprately from sample given in a composer "TRADE NETWORK"?
[ ](https://chat.hyperledger.org/channel/composer?msg=bShfqpqcjvfk3uf2H) @mahoney1 @mahoney1 thanks a lot !
[ ](https://chat.hyperledger.org/channel/composer?msg=ZQoWchZL4qM2z32Z7) @mahoney1 @mahoney1 can use key and value types in your code i think i am getting json stringfy object plese give me some example how to do that
[ ](https://chat.hyperledger.org/channel/composer?msg=tgPyQdHneQnHwnWNT) @mahoney1 Thanks you!!
Hi, when I run ./createPeerAdminCard.sh, I get the error No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher. Whereas , I have installed composer-cli with the command : npm install -g composer-cli. Also, I have run npm config set /Users/
Hi, when I run ./createPeerAdminCard.sh, I get the error No version of composer-cli has been detected, you need to install composer-cli at v0.19 or higher. Whereas , I have installed composer-cli with the command : npm install -g composer-cli. Also, I have run npm config set prefix /Users/
i have a network configuration containing three Organisations (ORG1 & ORG2 & ORG 3 ) having two peers each , Now only ORG1 has to add the assets to ledger ( this is achieved ) and org2 has to only view the assets added by ORG1 ( this is achieved ) Now the third condition is ORG3 has to check the data added by org1 and if approved the asset should be added else it shouldn't how to achieve this
explorererror.png
explorererror.png
and getting the following error i tried with composer and first network also but i am getting same error any help
explorercommandprompt.png
[ ](https://chat.hyperledger.org/channel/composer?msg=rkoEpkSv8CeW4zxYb) @AnithaReddy this sounds interesting and quite involved. I would suggest posting as a Stack Overflow Question, and include your Model, ACL, and Logic.
[ ](https://chat.hyperledger.org/channel/composer?msg=zFanrMNamhDuAsss4) @deep123 - can you try `composer -v` to check the composer version, and `which composer` to confirm the location. - I assume you are not using sudo or su to run the createPeerAdminCard script.
[ ](https://chat.hyperledger.org/channel/composer?msg=0bfa6c3a-bf62-426c-9be4-874658f51c4b) @AZ0ZYW0U5 If you look at the AnimalTracking sample network, in the there is a transaction called `setupDemo` which creates several animals - I think they are Assets not participants but the code will be similar.
[ ](https://chat.hyperledger.org/channel/composer?msg=KQB6Amq58GdmwGdkc) @eloff This Stackoverflow post should help you . There is a specific composer-cli docker container you can use. https://stackoverflow.com/questions/50926131/how-to-run-hyperedger-composer-cli-docker-image-to-execute-composer-commands
[ ](https://chat.hyperledger.org/channel/composer?msg=JGtYmzyZTjgwjPoN3) some bodey plese help
[ ](https://chat.hyperledger.org/channel/composer?msg=Fuo2QiEg8coCxjNvN) @VenkateshMuthyala is this Blockchain Explorer? Doesn't look like Composer to me. Try the #hyperledger-explorer channel
[ ](https://chat.hyperledger.org/channel/composer?msg=KvxMhS4C9BsAzikSi) @rthatcher Thank you @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=iHo6K4qnZ2Dkeg82u) @rthatcher out of couriosity than how we show ledger database without explorer
@rthatcher is there any documentation around setting up hyperledger across multiple machines
[ ](https://chat.hyperledger.org/channel/composer?msg=KkRWBKHjtokobHaD3) @rthatcher yeah ok @rthatcher I need a clarity regarding the participants of network if i created a participant using the command ( composer participant add -c anitha@sample-network -d '{"$class":"test.participant","name":"Anitha-org1","id":"1"}' ) and issued the identity using the command ( composer identity issue -c anitha@sample-network -f user.card -u user -a "resource:test.participant#1") Now my question is this user is the participant of network belonging to ORG1 or not specific about ORG1. How can we know that he is participant of org1 in the permisssion.acl file so that i can have seperate access permissions to participants of different orgs
I am unable to run the Cucumber unit testing. I get the following errors:
✖ Before # node_modules/composer-cucumber-steps/lib/hooks.js:21
TypeError: Cannot read property 'uri' of undefined
I am unable to run the Cucumber unit testing. I get the following errors:
✖ After # node_modules/composer-cucumber-steps/lib/hooks.js:30
TypeError: Cannot read property 'destroy' of undefined
Is it a problem with node modules, with my code or with Cucumber version?
I also get a deprecation warning: (node:1407) DeprecationWarning: cucumber: defineSupportCode is deprecated. Please require/import the individual methods instead.
F---------UF
[ ](https://chat.hyperledger.org/channel/composer?msg=bnFoHvzzHgY4o7LY7) @VenkateshMuthyala Blockchain explorer is a useful tool for graphically looking at the Fabric, and it should work fine for Fabrics on which Composer runs. (I have had it working with Composer in the past but have also had versions where it doesn't work.) We don't support it here in this channel - hence the link to the other channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=CbZYsxnunhndCoBtq) @rthatcher Thanks
I need a clarity regarding the participants of network if i created a participant using the command ( composer participant add -c anitha@sample-network -d '{"$class":"test.participant","name":"Anitha-org1","id":"1"}' ) and issued the identity using the command ( composer identity issue -c anitha@sample-network -f user.card -u user -a "resource:test.participant#1") Now my question is this user is the participant of network belonging to ORG1 or not specific about ORG1. How can we know that he is participant of org1 in the permisssion.acl file so that i can have seperate access permissions to participants of different orgs
[ ](https://chat.hyperledger.org/channel/composer?msg=Ku6ZpfRsczuJwQGE7) @Varun2887 we don't have any specific tutorials for this as everybody has a different network. There are tutorials and Blogs on the web about setting up Fabric in different configurations. The MultiOrg tutorial is a good place to star thinking about it. The trick to making this work on Multiple machines is to think about the addressing and IP routing between the client and all the fabric components, AND between the Fabric containers.
[ ](https://chat.hyperledger.org/channel/composer?msg=SWcwTgrnZ26Brma39) @rthatcher does each node know the address of other nodes?
ideally they are communicating via orderer, am I right?
or will it be required for endorsing
tradingnetwork.png
tradingnetwork.png
[ ](https://chat.hyperledger.org/channel/composer?msg=244yvcuJkvzva3qG6) @AnithaReddy As you have guessed, the Participants do not belong to an Organisation, it is the Identity (and certificate/keys) that belong to an organisation. So it is difficult to write an ACL for the same Participant type in different organisations! Please see this Stack Overflow Q/A which explains about adding an extra field to the Participant class to identify the organisation, and then has a rule based on this value. https://stackoverflow.com/questions/50680188/organization-based-restrictions-for-participant-identity-issuing-in-hyperledger/50681159#50681159
[ ](https://chat.hyperledger.org/channel/composer?msg=M6vGxEQwzYQLjpbA7) @VenkateshMuthyala I use JSON like this for adding Commodities to the example Trading Network
```
{
"$class": "org.acme.mynetwork.Commodity",
"tradingSymbol": "CC",
"description": "Cocoa",
"mainExchange": "ICE",
"quantity": 80,
"owner": "resource:org.acme.mynetwork.Trader#TRADER2"
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=M6vGxEQwzYQLjpbA7) @VenkateshMuthyala I use JSON like this for adding Commodities to the example Trading Network
```
{
"$class": "org.acme.mynetwork.Commodity",
"tradingSymbol": "CC",
"description": "Cocoa",
"mainExchange": "ICE",
"quantity": 80,
"owner": "resource:org.acme.mynetwork.Trader#TRADER2"
}
```
The example with `{}` is not right.
[ ](https://chat.hyperledger.org/channel/composer?msg=L4jWveaciLQ6sfWno) @rthatcher @rthatcher that means i need to manually specify to which org he belogs to while adding him is that so ??? Like ( composer participant add -c anitha@sample-network -d '{"$class":"test.participant","name":"Anitha-org1","id":"1","organisation": "org1"}' ) so that i can access p.organisation is this the correct interpretation ?
@AnithaReddy - correct :relaxed:
[ ](https://chat.hyperledger.org/channel/composer?msg=z75g9ynWEjbHMunoB) @rthatcher no other alternative ??
retrying.png
retrying.png
code.png
@rthatcher
@fedez did they work before? If yes, then sounds like a Cucumber version issue
[ ](https://chat.hyperledger.org/channel/composer?msg=coZqXZQgHjjqYPFAn) @AnithaReddy you can have participants in separate org-based participant classes (without need for attribute-based indicator, if you so choose for your use case / acceptable/valid in your business network)
[ ](https://chat.hyperledger.org/channel/composer?msg=Wf5oiDDMqNS7yr5G3) @mahoney1 org-based participant classes bt how
[ ](https://chat.hyperledger.org/channel/composer?msg=TZfRyNSbBKCe28eEi) @rthatcher this version requires 57.which composer returns : /usr/local/bin/composer. composer -v returns: The module was compiled against a different Node.js version using 48.
[ ](https://chat.hyperledger.org/channel/composer?msg=TZfRyNSbBKCe28eEi) @rthatcher which composer returns : /usr/local/bin/composer. composer -v returns: The module was compiled against a different Node.js version using 48. This version requires 57.
[ ](https://chat.hyperledger.org/channel/composer?msg=TZfRyNSbBKCe28eEi) @rthatcher which composer returns : /usr/local/bin/composer. composer -v returns: The module was compiled against a different Node.js version using 48. This version requires 57. I am not using sudo while running the script.
[ ](https://chat.hyperledger.org/channel/composer?msg=TZfRyNSbBKCe28eEi) @rthatcher which composer returns : /usr/local/bin/composer. composer -v returns: The module was compiled against a different Node.js version using 48. This version requires 57. I am not using sudo while running the createPeerAdminCard script.
@VenkateshMuthyala hmmm strange - what was the exact JSON posting you made - (pls post using 3 backticks to post as code etc)
@deep123 - probably best to install nvm and have that manage your node versions - this [Stack Overflow](https://stackoverflow.com/questions/50072298/composer-version-error-this-version-of-node-js-requires-node-module-version-5) - ie the comments - probably best captures what you're seeing -> https://stackoverflow.com/questions/50072298/composer-version-error-this-version-of-node-js-requires-node-module-version-5 - I would suggest
@mahoney1 i first added trader using first name,lastname ,and id i showed response 200
now i want to give asset ownership to added trader how do i add because i am having three values firstname.,lastname,and id
trader.png
[ ](https://chat.hyperledger.org/channel/composer?msg=XMv6PiEC28MkGzZJs) @mahoney1 "nvm install will this command help?
[ ](https://chat.hyperledger.org/channel/composer?msg=XMv6PiEC28MkGzZJs) @mahoney1 "nvm install" will this command help?
@VenkateshMuthyala ok cool - the REST `post` screenshot (2nd but last screenshot) was for Create Commodity - which the `trade` transaction will address (in answer to "now i want to give asset ownership to added trader" - the change of ownership will be shown IN the asset (Commodity) which you seemed to be having an issue with?)
@VenkateshMuthyala ok cool - the REST `post` screenshot (2nd but last screenshot) was for Create Commodity - which the `trade` transaction will reference once that Commodity is created (in answer to "now i want to give asset ownership to added trader" - the change of ownership will be shown IN the asset (Commodity) which you seemed to be having an issue with?)
Has joined the channel.
@deep123 yes eg `nvm install v8.11.1 2) nvm use 8.11.1 ` - but you also need to make sure your npm version is at the correct level (along with everything else specified (in terms of levels) here -> https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html ) - then embark on re-installing composer (after you've `npm uninstall -g` the existing modules)
@deep123 yes eg `1) nvm install v8.11.1 2) nvm use 8.11.1 ` - but you also need to make sure your npm version is at the correct level (along with everything else specified (in terms of levels) here -> https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html ) - then embark on re-installing composer (after you've `npm uninstall -g` the existing modules)
@VenkateshMuthyala , as mentioned yesterday - your transaction is failing because your model for `Trade` does not match what you're trying to do in the `trade` function transaction logic - so that's why you're failing in your REST API post -> your transaction should be (in your model)
```
transaction Trade {
--> Trader newOwner
--> movie movie
}
```
@VenkateshMuthyala - then save and upgrade your business network as shown here (Step Three and Four) -> https://hyperledger.github.io/composer/latest/tutorials/queries#step-three-regenerate-your-business-network-archive (or deploy in Playground if you're using that to connect to your local Fabric) You will need to create a `movie` asset (first) - with all your fields that you defined. Then you can run a trade transaction say :
```
{
"$class": "org.example.mynetwork.Trade",
"newOwner": "resource:org.example.mynetwork.Trader#T1",
"movie": "resource:org.example.mynetwork.movie#123"
}
``` in the `Trade` REST API POST
@AnithaReddy TradersOrg1, TradersOrg2, TradersOrg3 - your ACL rules can allow access to resources as you define them
[ ](https://chat.hyperledger.org/channel/composer?msg=3w8xLJh7kFQR2AHqv) @rthatcher Profiles:
TwoOrgsOrdererGenesis:
Orderer:
<<: *OrdererDefaults
Organizations:
- *OrdererOrg
Consortiums:
SampleConsortium:
Organizations:
- *Org1
- *Org2
TwoOrgsChannel:
Consortium: SampleConsortium
Application:
<<: *ApplicationDefaults
Organizations:
- *Org1
- *Org2
Organizations:
- &OrdererOrg
Name: OrdererOrg
ID: OrdererMSP
MSPDir: crypto-config/ordererOrganizations/example.com/msp
- &Org1
Name: Org1MSP
ID: Org1MSP
MSPDir: crypto-config/peerOrganizations/org1.example.com/msp
AnchorPeers:
- Host: peer0.org1.example.com
Port: 7051
- &Org2
Name: Org2MSP
ID: Org2MSP
MSPDir: crypto-config/peerOrganizations/org2.example.com/msp
AnchorPeers:
- Host: peer0.org2.example.com
Port: 7051
Orderer: &OrdererDefaults
OrdererType: solo
Addresses:
- orderer.example.com:7050
BatchTimeout: 2s
BatchSize:
MaxMessageCount: 10
AbsoluteMaxBytes: 99 MB
PreferredMaxBytes: 512 KB
Kafka:
Brokers:
- 127.0.0.1:9092
Organizations:
Application: &ApplicationDefaults
Organizations:
[ ](https://chat.hyperledger.org/channel/composer?msg=vkyZ8ngD4QgDSbdxk) i haven't defined anything regarding consensus methods please do help me regarding this
Hello! How can I check transaction history of asset or participant?
Hello, I have a very simple definition :
```
enum RequestStatus {
o OPEN
o CLOSED
o ERROR
}
abstract participant Person identified by login {
o String login
o String firstName
o String lastName
}
participant Admin extends Person {
}
participant Applicant extends Person {
}
participant Manager extends Person {
}
asset Request identified by requestId {
o String requestId
--> Applicant applicant
--> Manager manager
--> Admin admin
o RequestStatus status
o DateTime dateTime
}
transaction ChangeStatus {
--> Request asset
o RequestStatus newStatus
}
```
I test by creating participants and following asset :
```
{
"$class": "ch.myorg.Request",
"requestId": "1111",
"applicant": "resource:ch.myorg.Applicant#applicant1",
"manager": "resource:ch.myorg.Manager#manager1",
"admin": "resource:ch.myorg.Admin#admin1",
"status": "OPEN",
"dateTime": "2018-08-09T09:31:30.796Z"
}
```
When I try to submit the following transaction :
```
{
"$class": "ch.myorg.ChangeStatus",
"asset": "resource:ch.myorg.Request#1111",
"newStatus": "CLOSED"
}
```
I get the following error, I don't understand why :
`t: Instance 1111 has a property named value which is not declared in ch.myorg.Request`
[ ](https://chat.hyperledger.org/channel/composer?msg=BDxj8wSdEnrTFe3wY) @argman const query = businessNetworkConnection.buildQuery('SELECT org.hyperledger.composer.system.HistorianRecord');
let result = await businessNetworkConnection.query(query);
This is using the composer client SDK
[ ](https://chat.hyperledger.org/channel/composer?msg=aqbN3eAjgX3RDkDYw) @nippleDonkey Much thanks!
@RockyRacer - can you share your transaction function with us?
[ ](https://chat.hyperledger.org/channel/composer?msg=BXSGCHwvYf8f3pfyT) @rthatcher what an idiot, I was convinced it was a model file issue, but of course I had tx.asset.value instead of tx.asset.status in the transaction function... Thanks for putting me on the way!
[ ](https://chat.hyperledger.org/channel/composer?msg=N4YTPJ3yRaFXdgdqN) [ ](https://chat.hyperledger.org/channel/composer?msg=BXSGCHwvYf8f3pfyT) @rthatcher what an idiot, I was convinced it was a model file issue, but of course I had tx.asset.value instead of tx.asset.status in the transaction function... Thanks for putting me on the way!
what an idiot, I was convinced it was a model file issue, but of course I had tx.asset.value instead of tx.asset.status in the transaction function... Thanks for putting me on the way!
what an idiot, I was convinced it was a model file issue, but of course I had tx.asset.value instead of tx.asset.status in the transaction function... Thanks for putting me on the way!
what an idiot, I was convinced it was a model file issue, but of course I had `tx.asset.value` instead of `tx.asset.status` in the transaction function... Thanks for putting me on the way!
what an idiot, I was convinced it was a model file issue, but of course I had `tx.asset.value` instead of `tx.asset.status.value` in the transaction function... Thanks for putting me on the way!
Hi guys i am working on blockchain little project i have created my business model and setup it on rest server and created multi user mode on rest server . So i need the identity management solution to login with the participant that will be decentralized . Can any one share some good method or link to implement it ? Would be thankfull.
[ ](https://chat.hyperledger.org/channel/composer?msg=gkAQvZpa2FTPQQnux) @Farhan1122 you might find this interesting if you haven't already seen it: https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
Has joined the channel.
how can i bind an identity for account created using the angular app with the participant in the network >?
1,After deploying a business network to the fabric network, i have add a peer to the fabric network using
configtxlator cmd, is there any actions in need for the composer business network?
2,Further more,i can't finger out the corresponding relationship between the concepts of the composer business network and the fabric concepts
--Is fabric channel 1to1 with business network?
But it mentioned "Each channel can have more than one deployed business network on that channel" at https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#biznet
--The composer transaction is 1to1 with the chaincode on fabric ?
Hai,i has questions as follow1,After deploying a business network to the fabric network, i have add a peer to the fabric network using
configtxlator cmd, is there any actions in need for the composer business network?
2,Further more,i can't finger out the corresponding relationship between the concepts of the composer business network and the fabric concepts
--Is fabric channel 1to1 with business network?
But it mentioned "Each channel can have more than one deployed business network on that channel" at https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#biznet
--The composer transaction is 1to1 with the chaincode on fabric ?
Hai,i has questions as follows:
1,After deploying a business network to the fabric network, i have add a peer to the fabric network using
configtxlator cmd, is there any actions in need for the composer business network?
2,Further more,i can't finger out the corresponding relationship between the concepts of the composer business network and the fabric concepts
--Is fabric channel 1to1 with business network?
But it mentioned "Each channel can have more than one deployed business network on that channel" at https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#biznet
--The composer transaction is 1to1 with the chaincode on fabric ?
Hai,i have questions as follows:
1,After deploying a business network to the fabric network, i have add a peer to the fabric network using
configtxlator cmd, is there any actions in need for the composer business network?
2,Further more,i can't finger out the corresponding relationship between the concepts of the composer business network and the fabric concepts
--Is fabric channel 1to1 with business network?
But it mentioned "Each channel can have more than one deployed business network on that channel" at https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#biznet
--The composer transaction is 1to1 with the chaincode on fabric ?
Hi, when I try to start the business network using the command : composer network start --networkName clp-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card , I get the error : "Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 1 Peers. Last error was Error: Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP] Command failed". Card has been created successfully and successfully installed business network. Can you please help.
Hi, when I try to start the business network using the command : composer network start --networkName clp-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card , I get the error : "Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 1 Peers. Last error was Error: Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP] Command failed". Card has been created successfully and successfully installed business network. I have tried increasing the timeout in docker.yml file and connection.json, but I still get the same error. Can you please help.
[ ](https://chat.hyperledger.org/channel/composer?msg=HJieSm2S27BFYxTWh) @mahoney1 After i modified the timeout to 1200 seconds , am able to install the .bna
but i am finding below issue while i am trying to start business network. i have added the proxy details in npmConfig.txt as mentioned below
proxy="http://
i am finding below issue while i am trying to start business network. i have added the proxy details in npmConfig.txt as mentioned below
proxy="http://
@SilambarasanMadhappan you need to specify the npmrcFile on the install command rather than the start command.
[ ](https://chat.hyperledger.org/channel/composer?msg=vWrtkNEQ6ymj5gD4G) @davidkel Ok David .. thanks i will check .. So no need to specifiy during start command ?
[ ](https://chat.hyperledger.org/channel/composer?msg=vWrtkNEQ6ymj5gD4G) @davidkel Thanks a lot david .. now i am able to start. i have mentioned the npmrcFile on the install command and i dint mentioned on start command.
[ ](https://chat.hyperledger.org/channel/composer?msg=HJieSm2S27BFYxTWh) @mahoney1 Thank you .. now i am able to start the business network with below steps.
1. I changed timeout from 300 to 1200 in connection.json at 4 places.
2. In ~/fabric-dev-servers/fabric-scripts/hlfv11/composer/docker-compose.yml at peer config , i have added - CORE_CHAINCODE_STARTUPTIMEOUT=1200s
3. I have followed the instruction mentioned in https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org from the step1. but i have used npmrcFile on install command, not on business start command..
Hi Guys. I would like to build an asp.net Server to the Composer, that authentificates the user with Active Directory certificates from Microsoft AD. The ASP.NET server and IIS will use the integrated security , and the idea is to make the User mapping to the Hyperledger composer network and authentificate the users.
Did someone do something similar to integrate the Users from MS Active Directory with certificates. Must the MSP Docker Container also be integrated or can use their own certificates for participants, or they need to have the wallets.
Any pointers, links would be appreciated
Thanks in advance.
[ ](https://chat.hyperledger.org/channel/composer?msg=fNmZFisDFqF8WoA7D) @Zeljko Milinovic There are 2 areas for you to investigate:
1. Use the Composer REST Server and configure it to use Multi-user mode using the passport strategy for AD or LDAP. The docs for the REST server are here: https://hyperledger.github.io/composer/latest/integrating/integrating-index and a tutorial on setting up the REST server for OAuth2 authentication here, this will obviously be different for AD but the principles are the same: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
2. Look at integrating your AD Certificates into the Fabric CA. http://hyperledger-fabric-ca.readthedocs.io/en/latest/index.html
In this #composer channel we can give you some help with the REST server, but you will need to hop over to the #fabric-ca channel for help on that subject.
[ ](https://chat.hyperledger.org/channel/composer?msg=3W582fd4uMtzrZmx6) @deep123 Are you using the standard Development fabric provided with "fabric-dev-servers" or a custom or hosted Fabric? I would suggest looking at the Peer log of that docker container to see what errors are in it. Was the composer network install successful? Have you restarted your computer or the Fabric since then?
@SilambarasanMadhappan correct - just the `install` command
@touchingsoil - yes, your connection profiles (part of the business network cards) will need to know about it - see https://stackoverflow.com/questions/44779648/create-one-more-peer-node-using-hyperledger-composer and links thereof including single-org tutorial link 2. channel = ledger ; biz network is deployed on the channel, but there can in theory be multiple biz networks on the same channel 3. Composer biz network (part of which includes the transaction logic, as multiple script files potentially, but also includes ACL rules, model definition, queries, biz network metadata etc) ie whole unit - is installed to peers as chaincode
[ ](https://chat.hyperledger.org/channel/composer?msg=uBYCcvozBtfL4pnry) @rthatcher I am using the one provided with fabric-sev-servers. Composer network install was successful. I have stopped and started the fabric many times, but computer I have not restarted. I am behind a corporate firewall.
[ ](https://chat.hyperledger.org/channel/composer?msg=uBYCcvozBtfL4pnry) @rthatcher I am using the one provided with fabric-sev-servers. Composer network install was successful. I have stopped and started the fabric many times, but computer I have not restarted. I am behind a corporate firewall. In the peer logs , I noticed this was there: "channel [composerchannel]: MSP error: channel doesn't exist"
@Haddadmj the closest I can provide is in this sample angular app ( the angular app issues identities via a REST call). It may be a good place to start looking anyway -> https://github.com/caroline-church/collectable-penguin-app/blob/master/src/services/rest.service.ts#L19 - there is a tutorial that goes with it https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
[ ](https://chat.hyperledger.org/channel/composer?msg=2fB5imAsQXmEYnS5F) @mahoney1 yeah .. Thank yo.. now i am trying to create a restFull api from the command line as below...
fabric11@adc1:~/fabric-dev-servers$ composer-rest-server
? Enter the name of the business network card to use: admin@tutorial-network
? Specify if you want namespaces in the generated REST API: always use namespaces
? Specify if you want to use an API key to secure the REST API: No
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c admin@tutorial-network -n always -w true
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
but i couldn't able to access the rest api at http://
@SilambarasanMadhappan 1. Would start it again and select 'never use namespaces' and 2. Access it via http://localhost:3000/explorer as indicated.
[ ](https://chat.hyperledger.org/channel/composer?msg=uhStpB9H55h25NTZD) @mahoney1 Thanks i will try as per ur suggestion. but i am doing everything from putty... its remote machine .. is it not possible to access from windows by mentioning the hostmachine IP ?
[ ](https://chat.hyperledger.org/channel/composer?msg=7yY6LoptAyJ4Hc9PQ) @deep123 Thanks for the extra information. I'm surprised to see that error in this context. Can you confirm your composer version `composer -v` and your Fabric version `docker images`.
@rthatcher - Thanks for the input. What do you think about my design idea. I do not want the Rest Server to talk to LDAP or AD, I want to programm an IIS ASP.NET server that will authentificate the users and get the certificates from the Active directory. And than this ISS ASP.NET Server (window server 2012) will talk to the REST Server and use APIs to add an participant with a name as same as the authentificated user from AD. The certificate will not be imported inside fabric-ca and composer network. Do you see something bad in this design?
I had another question with the WEB SOCKETS and REST Server. I have started the REST server but I would like to publish the events over WEB Sockets to the Clients. How can this be done?
Can I use WEB Sockets in Mutli User Mode of REST Server for more users ?
with wscript or something other ?
[ ](https://chat.hyperledger.org/channel/composer?msg=q5R4PbvGJQ6uvgCXk) @rthatcher v0.19.13 is the composer version and in docker images, fabric peer it is mentioned as x86_64-1.1.0. Is this the info that you were looking for?
Hi ..
i am trying to create a restFull api from the command line as below...
fabric11@adc1:~/fabric-dev-servers$ composer-rest-server
? Enter the name of the business network card to use: admin@tutorial-network
? Specify if you want namespaces in the generated REST API: never use namespaces
? Specify if you want to use an API key to secure the REST API: No
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c admin@tutorial-network -n always -w true
Discovering types from business network definition ...
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
but i couldn't able to access the rest api at http://
@SilambarasanMadhappan REST server is not bound to any particular IP on your machine in theory, so you should be able to hit it on the IP of the machine. But you may also have security groups that need to enable port 3000 to be connected via external ip
@SilambarasanMadhappan REST server is not bound to any particular IP on your machine in theory, so you should be able to hit it on the IP of the machine. But you may also have security groups that need to enable port 3000 to be connected via external ip (as shown in [interacting](https://medium.com/@david.richard.holtz/blockchain-application-demo-b98321ec318c#interacting-outside-of-UI) section of this tutorial )
Clipboard - August 10, 2018 10:53 AM
@deep123 - yes v0.19.13 is fine and should be good with Fabric 1.1.0
Strange that the Fabric should fail to create the channel.
I would say run the startFabric.sh script again and look for errors in the output.
I would expect to see messages like this at the end of the output. Also check that all the containers are running with `docker ps`
Clipboard - August 10, 2018 10:54 AM
I am using the composer rest server with oauth2 authentication. If am using the same token and two different systems and make two different participant cards as default which one will be used when both try to do transaction on the rest server
every time u make the participant card default it will be set to the current
no matter from which system after u do it...
[ ](https://chat.hyperledger.org/channel/composer?msg=vH67QxFp9AXqMCx9P) @Farhan1122 what if transactions are occuring concurrently by two different participants after they have logged in
one transaction will be done by one logged participant at a time from single user login . if other participant wants to create a transaction it needs to set the card default
[ ](https://chat.hyperledger.org/channel/composer?msg=JD8HbweGKZHh3rBoE) @Farhan1122 What I am trying to tell is suppose the Application has two participants A and B and they both login to the application from two different systems. Now A makes his card defautland does the transaction and B makes his card default and does the transaction now what if by the time A makes his card default B makes another transaction which card would be default then. Is there a way to create wallets on tokens
i think they both need different access tokens to executes transactions from different systems at same time
yes how do we do that
that is my question
redirect to auth/google after successfull login redirect back to composer-rest-server
@Jyotirmoy participant A and B have separate browser clients (and therefore wallets) - they are independent of each other. So they make transactions independent of each other. Not sure if that answers your question. Each is using Google Auth is to get a token, as the REST client, to access the protected REST APIs.
@Jyotirmoy participant A and B have separate browser clients (and therefore wallets) - they are independent of each other. So they make transactions independent of each other. Not sure if that answers your question. Each is using Google Auth is to get a token, as the REST client, to access the protected REST server
[ ](https://chat.hyperledger.org/channel/composer?msg=3C2F2YnrX3QzcCwyp) @mahoney1 Isnt the token already set once when you run the composer rest server
@Jyotirmoy the access token is generated and assigned to the authenticated user. When the user authenticates using a web browser, the access token is stored in a cookie in the local storage of the user's web browser. When the authenticated user makes a subsequent request, the access token is retrieved from the cookie, and the access token is validated instead of reauthenticating the user. The access token is effectively used to authenticate any HTTP or REST request sent to the REST server
When we add authentication to the composer rest server we enable a client secret this secret is used to generate a token. This otken will remain static everytime we atuhenticate so isnt the same token is being used to use the composer rest server.
[ ](https://chat.hyperledger.org/channel/composer?msg=zpqYG5gD46F9YNoQ9) @Jyotirmoy see this answer on Stack Overflow: https://stackoverflow.com/questions/51778110/hyperledger-using-google-oauth2-0-with-a-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=bt75EP5z6HGrmAFYg) @mahoney1 Thank you :) . i will check ..
i get this error when i followed this tutorial... https://hyperledger.github.io/composer/v0.16/integrating/enabling-rest-authentication
Error: Cannot find module 'passport-github'
[ ](https://chat.hyperledger.org/channel/composer?msg=6wZwWezNg2zHh4LFK) @Haddadmj Did you run this command `npm install -g passport-github` (with the -g) and did it complete OK?
(Incidentally, are you using v0.16 and looking at that specific version of the doc? Otherwise I would suggest putting /latest/ in the URL instead.)
Clipboard - August 10, 2018 4:29 PM
Clipboard - August 10, 2018 4:29 PM
This is what I get when I run startFabric
@rthatcher This is what I get when I run startFabric
@rthatcher This is what I get when I run startFabric. Returning existing local MSP I get multiple number of times and then exiting..
How can i enable s%3AezCoKtIzKNzNmYTd8G01F9KbG0l796ZynmlHt1MpNCmUE61oLXFhic0rn8EYg59L.OJKwMzlfATf8OjgyU1HifPUgd596wl62KGV9j%2FfWTrU
How can i enable composer-wallet-inmemory
@Jyotirmoy yes the access token is generated as a result of client authentication. The token has a number of uses (configurable I believe, you can check for yourself) after which consent would be required (and generate a new token) or you can force it, don't know your scenario.
[ ](https://chat.hyperledger.org/channel/composer?msg=49MzQ5HB3NeAWGKuM) @Jyotirmoy see https://hyperledger.github.io/composer/latest/business-network/cloud-wallets
[ ](https://chat.hyperledger.org/channel/composer?msg=5dbZDL4X4Bvrga5mA) @deep123 OK - I would delete the folder containing the cards `rm -rf ~/.composer` then re-run the `createPeerAdminCard.sh` script and then try the install and start commands again.
@rthatcher yeah ... i did that...
hello,
Is there any documentation or proper explanation about how ```
composer network install
``` command working internally?
hello,
Is there any documentation or proper explanation about how `
composer network install
` command working internally?
hello,
Is there any documentation or proper explanation about how
`composer network install` command working internally?
@HoneyShah Have you looked at the Hyperledger Fabric docs? It might give you a better idea of what's happening:
https://hyperledger-fabric.readthedocs.io/en/release-1.2/build_network.html
Hi all,
I can't submit a transaction from an other transaction processor function (submitTransaction is not defined in the runtimeapi) Is there a way to do it ?
Should I call the name of the function directly ?
ANNOUNCEMENT: Composer 0.20 has been released today and is now marked as latest in both npm and docker (see release notes https://github.com/hyperledger/composer/releases/tag/v0.20.0). This version is compatible with Fabric 1.2 but not with Fabric 1.1. Composer 0.19.x is still available to use with Fabric 1.1 but you need to be explicit on the version now.
[ ](https://chat.hyperledger.org/channel/composer?msg=cM2tHfB2wM8L6k23X) @Rmannn no you can't do this (especially to invoke it, so as to read the writeset being created in that other transaction - it (and the changes it makes to the assets etc - needs to be committed by the peers in the blockchain network) - you are allowed to call another function (ie code modularisation purposes) but the transaction is the complete unit of work. See more detail from this comment onwards https://github.com/hyperledger/composer/issues/3425#issuecomment-368004573
[ ](https://chat.hyperledger.org/channel/composer?msg=cM2tHfB2wM8L6k23X) @Rmannn no you can't do this (especially to invoke it from a calling trxn, so as to read the writeset being created in that other transaction - it (and the changes it makes to the assets etc - needs to be committed by the peers in the blockchain network) - you are allowed to call another function (ie code modularisation purposes) but the transaction is the complete unit of work. See more detail from this comment onwards https://github.com/hyperledger/composer/issues/3425#issuecomment-368004573
[ ](https://chat.hyperledger.org/channel/composer?msg=cM2tHfB2wM8L6k23X) @Rmannn no you can't do this (especially to invoke it from a calling trxn, so as to read the writeset being created in that first transaction - it (and the changes it makes to the assets etc - needs to be committed by the peers in the blockchain network) - you are allowed to call another function (ie code modularisation purposes) but the transaction is the complete unit of work. See more detail from this comment onwards https://github.com/hyperledger/composer/issues/3425#issuecomment-368004573
[ ](https://chat.hyperledger.org/channel/composer?msg=cM2tHfB2wM8L6k23X) @Rmannn no you can't do this (especially to invoke it from a calling trxn, so as to read the writeset being created in that first 'transaction' - it (and the changes it makes to the assets etc - needs to be committed by the peers in the blockchain network) - you are allowed to call another function (ie code modularisation purposes) but the transaction is the complete unit of work. See more detail from this comment onwards https://github.com/hyperledger/composer/issues/3425#issuecomment-368004573
[ ](https://chat.hyperledger.org/channel/composer?msg=cM2tHfB2wM8L6k23X) @Rmannn no you can't do this (especially to invoke it from a calling trxn, so as to read the writeset being created in that first 'transaction' - it (and the changes it makes to the assets etc) - needs to be committed by the peers in the blockchain network) - you are allowed to call another function (ie code modularisation purposes) but the transaction is the complete unit of work. See more detail from this comment onwards https://github.com/hyperledger/composer/issues/3425#issuecomment-368004573
[ ](https://chat.hyperledger.org/channel/composer?msg=xz6AQuW8ioTcaeoww) @mahoney1 Thank you. I realize that I can create a lib function that does the job, and create a transaction with return values that invokes this function. This way, I have a transaction that use the lib function, and the other one that simply calls it and return values.
to update i just do the commands again ... ? right ??
[ ](https://chat.hyperledger.org/channel/composer?msg=QvAamyNx5c3jJaRik) @Haddadmj yes. (Are you working with deep123 or just seeing the same problem?)
Hello guys!
I am working on an app where the server side is implemented in nodeJS . Handlers for the operations are in seperate files. For instance: listTransactions.js or submitTransaction.js. To do any kind of operation on the blockhain a connection is required with the composer API.
My problem is that I have to use the code snippet for the connection all the time at the beggining of my handlers. This just creates some wierd problem, for example if (frontend in react) two action come one after another they can create some read/write lock error and generate non registered or not active identites for the connection.
Is it possible somehow to write this code to a single file and export it then connect to the network once and just use the same instance concurently? like an async singleton or sth...
Clipboard - August 10, 2018 4:15 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=tEf3tsfLejDL7Jk5d) @Levilk I'd be interested to hear other peoples thoughts on this. I wrote a similar application with NodeJs API and react frontend and ran into the same problems you did. My use case does not call for a high amount of API calls so i resorted to connecting and disconnecting per request.
Have you given much thought to using sessions to store the connection?
Hi guys. I am looking for a solution to upload files (.txt and other similar file) to the blockchain composer fabric, and associate the data (maybe as string) to an Asset
I have seen there are some talks on stackoverflow to use the nodejs function and the fs.readFileSync(‘yourFile).toString(‘base64’);
I will not have actual clients, I will be talking to the rest server
The workflow is: when an user in a certain step wants to upload a file to an asset, he needs to choose from his local PC location (I will be using maybe an ASP.NET server to communicate with the REST server)
What is the best way to achieve this goal, to upload files to the hyperledger composer and associate the file with an Asset
?
Thanks in advance
@rthatcher @davidkel I have taken a slightly different route here .. I am now trying to use composer palygroung web UI to connect a card to the business network. However I am getting an error saying :
```
Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode tharthar-business-network has been successfully instantiated
and try again: could not find chaincode with name 'tharthar-business-network'
``` made a local repo for npm registry but I am still getting the REQUEST_TIMEOUT error. The error message says this :
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
The logs from the peer :
```
2018-08-08 22:56:13.946 UTC [lscc] executeInstall -> INFO 035 Installed Chaincode [tharthar-business-network] Version [0.0.1] to peer
2018-08-08 23:17:13.062 UTC [chaincode] Launch -> ERRO 036 launchAndWaitForRegister failed: timeout expired while starting chaincode tharthar-business-network:0.0.1(networkid:dev,peerid:peer3.tharthar,tx:6d3f12c29bb97d4cd932f72d6dd5220839b12c110b90ca3d8ee7b6665d85a432)
```
@rthatcher @davidkel I have taken a slightly different route here .. I am now trying to use composer palygroung web UI to connect a card to the business network. However I am getting an error saying :
```
Error: Error trying to ping. Error: 2 UNKNOWN: make sure the chaincode tharthar-business-network has been successfully instantiated
and try again: could not find chaincode with name 'tharthar-business-network'
```
My question here is : Can I install/start the business network from playgrounf UI instead of doing it in the cli?
Like I had mentioned before I am getting the following error while starting the business network:
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
The logs from the peer where I am installing the business network :
```
2018-08-08 22:56:13.946 UTC [lscc] executeInstall -> INFO 035 Installed Chaincode [tharthar-business-network] Version [0.0.1] to peer
2018-08-08 23:17:13.062 UTC [chaincode] Launch -> ERRO 036 launchAndWaitForRegister failed: timeout expired while starting chaincode tharthar-business-network:0.0.1(networkid:dev,peerid:peer3.tharthar,tx:6d3f12c29bb97d4cd932f72d6dd5220839b12c110b90ca3d8ee7b6665d85a432)
```
I have a local npm registry and I pointed my npmrc file to that but still no luck.
Has joined the channel.
Hello,
i'm trying to setup an multihost multipeer fabric environment. At present I have three peers setup. Two peers on PC1 and one peer on PC2. When i try to install the .bna file using composer tool, I'm getting below error.
Error: Error trying install business network. Error: The business network failed to install on 1 or more peers: Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
@rprasanakumar : Are those peers up and running?
@rupa12 yes they are. I was able to install the .bna but problem only with starting the application
Did your peers join the channel using : 'peer channel join -b $CHANNEL.block' command?
Has joined the channel.
yes
@rthatcher composer 0.20.0 can run with fabric 1.2.0 now. :thumbsup:
Hello I'm trying to setup composer playground on my local machine. Got the below error when trying load the playground "Error: Failed to load connector module "composer-connector-web" for connection type "web". Invalid Adapter: undefined" what could be the reason for getting this error. I used the docker image hyperledger/composure-playground to setup.
How does a client collect endorsement signatures when using REST server? Basically, if we use the SDK, we can have this function: https://github.com/hyperledger/fabric-samples/blob/release-1.2/balance-transfer/app/invoke-transaction.js#L52
How do we implement the same while using composer REST server?
[ ](https://chat.hyperledger.org/channel/composer?msg=LdipNPTZANuqq6EiM) @mrudav.shukla i dont believe you can using the rest server, but a way around it will be to implement a function within the smart contract, which enables all the endorsement nodes to see the submitted transaction and do something about it. It is not the perfect way to do it but I found it to work pretty well.
@hypere So is some sort of abstraction that composer provides?
@mrudav.shukla @hypere see response in https://stackoverflow.com/questions/51796260/validating-and-handling-transaction-proposal-requests-in-hyperledger-composer
@rthatcher i'm working alone.
same problem i have with passport-github
Error: Cannot find module 'passport-github'
Screen Shot 2018-08-11 at 1.14.51 PM.png
Hi when I use `businessNetConnection` to call a transaction processor function, how do I get the `identifier()` of the person who submitted the call?
[ ](https://chat.hyperledger.org/channel/composer?msg=mGar2Hie2XHoNEtvy) @Haddadmj did you run "npm install passport-github"? and if you did are you using a cluster to host your project?
Question, after installing `0.20.0` I noticed Fabric is now set to `hlfv12` , does this mean that my PeerAdmin name should now be `PeerAdmin@hlfv2` ? Or is this just a string?
my PeerAdmin and the tutorials still suggest to `composer network install --card PeerAdmin@hlfv1` does the `@hlfv1` part of the name matter? or is it purely for readability?
`./createPeerAdminCard.sh` still creates a `/tmp/PeerAdmin@hlfv1.card` , is this safe to use with `hlfv12` ?
When using the default Angular CRUD, and creating an `asset` that has a `Boolean`, it won't let me leave the checkbox blank, even though the `cto` sets the `default=false`
Does the Composer Playground allow for downloading projects to work on locally?
Does the Composer Playground allow for downloading projects to work on locally? I do see an export option, maybe that's it
Has joined the channel.
Any work being done to fix the `Invoke` button bug with generated Angular projects? I have to go in and hack the button element every time.
[ ](https://chat.hyperledger.org/channel/composer?msg=WTbeJEDTBz5ra2Gq9) nvm, found it: https://github.com/hyperledger/composer/issues/4121
@hypere i did...
now i have another problem...
i have business network on version 0.19.2 ... and i have composer latest version (0.2.0) is there a way to upgrade
Anyone deecent with writing queries? Am trying to pull all assets connected to a specified user but it's not pulling up anything.
query sharesByOwner {
description: "Retrieves list of users shares"
statement:
SELECT org.reitium.land.Share
WHERE (Owner == _$Owner)
}
And this is the model: {
"$class": "org.reitium.land.Share",
"ShareID": "Ah0Fk4byeY3kzpi0UWjNNmkfa8KBfT32pmJvvBbc",
"Owner": "resource:org.reitium.land.User#jshmoe@gmail.com",
"Property": "resource:org.reitium.land.SPVTitleRegistry#6ilxGF8e10vseXWBveV3jLfbEMozI9d6I7zsgvUC",
"Authorized": false,
"Quantity": 5
}
Has joined the channel.
Ended up figuring it out. Had the put the resource in the query as well.
Hi
I installed the composer on Ubuntu 16.04 using the following document: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
When running the ./byfn.sh -m up -s couchdb -a command, I recived the following error:
./byfn.sh -m up -s couchdb -a
./byfn.sh: illegal option -- a
Usage:
byfn.sh up|down|restart|generate|upgrade [-c
HI Guys
Did anyone of you upload/serialize .txt files inside the Composer Fabric ?
@RaSa 6 could you see if changing to a different branch helps ? in the `fabric-samples` directory type `git checkout multi-org` and then try again to see if the byfn command now works ?
and associate it with an asset ?
Has joined the channel.
I was going through the Multi-org tutorial here: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org. How can we make specific org1 to create only buyers and other org2 to only create sellers? I am not talking about this! https://stackoverflow.com/questions/51718445/hyperledger-composer-creating-participants-in-a-multi-org-fabric
Hopefully question is clear! thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=fQis78FDWP3gHjj3c) @mahoney1 Thanks for your detailed reply!For your answer, i hava further quesions:
1.Does that mean we need update all the connection files in all the cards to including the new peer info?
It may be a little difficult for diffrent orgs to synchronize the changes. Is there any suggestions?
2.If the new peer is a new org, we can deploy the biz network with composer network install cmd for a new org,
but if the new peer is just a peer under existed org, how can we install the biz network to the new peer?
[ ](https://chat.hyperledger.org/channel/composer?msg=fQis78FDWP3gHjj3c) @mahoney1 Thanks for your detailed reply!For your answer, i hava further quesions:
1.Does that mean we need update all the connection files in all the cards to include the new peer info?
It may be a little difficult for diffrent orgs to synchronize the changes. Is there any suggestions?
2.If the new peer is a new org, we can deploy the biz network with composer network install cmd for a new org,
but if the new peer is just a peer under existed org, how can we install the biz network to the new peer?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=6bxtXDsHS4WTbHqeA) @rthatcher Hi, I tried as suggested, also tried tearing down the network and starting again. Tried restarting the system as well. I get the same response as in the screenshot above while running startFabric.sh
[ ](https://chat.hyperledger.org/channel/composer?msg=6bxtXDsHS4WTbHqeA) @rthatcher Hi, I tried as suggested, also tried tearing down the network and starting again. Tried restarting the system as well. I get the same response as in the screenshot below while running startFabric.sh
[ ](https://chat.hyperledger.org/channel/composer?msg=6bxtXDsHS4WTbHqeA) @rthatcher Hi, I tried as suggested, also tried tearing down the network and starting again. Tried restarting the system as well. I get the same response as in the screenshot below while running startFabric.sh composer network start command says "Unable to initialize channel. Access Denied". Does it have anything to do with me being behing a corporate firewall?
[ ](https://chat.hyperledger.org/channel/composer?msg=6bxtXDsHS4WTbHqeA) @rthatcher Hi, I tried as suggested, also tried tearing down the network and starting again. Tried restarting the system as well. I get the same response as in the screenshot below while running startFabric.sh . composer network start command says "Unable to initialize channel. Access Denied". Does it have anything to do with me being behind a corporate firewall?
Clipboard - August 13, 2018 11:35 AM
Has joined the channel.
Hi, I want to have following model for my business network. The acls are not working.
participant User identified by userId {
o String userId
o String firstName
o String lastName
o String username
--> Company company
}
participant Company identified by companyId {
o String companyId
o String name
o CompanyRoleType[] roles // company can have multiple roles
}
enum CompanyRoleType {
o SUPPLIER
o BUYER
o LENDER
o PROVIDER
}
asset Invoice identified by invoiceId {
o String invoiceId
--> Company buyer
--> Company supplier
--> Company providedBy
o Long acceptedAmount
}
rule AllowAccessToInvoiceToRelavantRelavantParties{
description: "Allow access to invoice for supplier, buyer and invoice uploader if uploader is third party provider"
participant: "com.example.User"
operation: ALL
resource: "com.example.Invoice"
condition: ((r.supplier.getIdentifier() == p.company.getIdentifier()) || ((r.buyer.getIdentifier() === p.company.getIdentifier())) ||(r.providedBy.roles.indexof['PROVIDER'] > -1) )
action: ALLOW
}
Is there a way I can access sub field of participant in acl file. Any help would be greatly appreciated!
Hi, I want to have following model for my business network. The acls are not working.
participant User identified by userId {
o String userId
o String firstName
o String lastName
o String username
--> Company company
}
participant Company identified by companyId {
o String companyId
o String name
o CompanyRoleType[] roles // company can have multiple roles
}
enum CompanyRoleType {
o SUPPLIER
o BUYER
o LENDER
o PROVIDER
}
asset Invoice identified by invoiceId {
o String invoiceId
--> Company buyer
--> Company supplier
--> Company providedBy
o Long acceptedAmount
}
rule AllowAccessToInvoiceToRelavantRelavantParties{
description: "Allow access to invoice for supplier, buyer and invoice uploader if uploader is third party provider"
participant(p): "com.example.User"
operation: ALL
resource(r): "com.example.Invoice"
condition: ((r.supplier.getIdentifier() == p.company.getIdentifier()) || ((r.buyer.getIdentifier() === p.company.getIdentifier())) ||(r.providedBy.roles.indexof['PROVIDER'] > -1) )
action: ALLOW
}
Is there a way I can access sub field of participant in acl file. Any help would be greatly appreciated!
Hi Guys
Can anyone point me to the right channel, or am I writting here ok, when I am asking how can I upload files (convert them to hash but how?) to Hyperledger Composer and associate them with an Asset ?
Thanks in advance
[ ](https://chat.hyperledger.org/channel/composer?msg=SfDz8x279kaCedecJ) @Zeljko Milinovic As far as i have understood your question. Have a look at this.
https://stackoverflow.com/questions/49464591/what-is-the-best-way-of-image-storage-on-hyperledger-composer
@Anshulmittal - the first problem I can see with the ACL is that you are referring to *p.company* and *r.buyer* without defining *p* and* r*.
So to begin with you need to modify these lines in the acl:
participant*(p)*: "com.example.User"
resource*(r)*: "com.example.Invoice"
BTW - have you seen the ACL Tutorial? https://hyperledger.github.io/composer/latest/tutorials/acl-trading
@Anshulmittal - the first problem I can see with the ACL is that you are referring to *p.company* and *r.buyer* without defining *p* and *r*.
So to begin with you need to modify these lines in the acl:
` participant(p): "com.example.User" `
` resource(r): "com.example.Invoice" `
BTW - have you seen the ACL Tutorial? https://hyperledger.github.io/composer/latest/tutorials/acl-trading
[ ](https://chat.hyperledger.org/channel/composer?msg=gxssMcw8a3vjxaAaY) @rthatcher I was using p and r in playgroung, sorry for confusion, I have read the tutorial also. The issue I guess I am facing is that I can't access other properties of participant apart from identifier. All the examples in the playground also have p.identifier() for participant.
Hi Guys need some input, Creating a Cryptocurrency using Hyperledger Fabric and Hyperledger Composer, any idea's why its good and why its not? Thank you inadvance , cheers 🙂
@mmick - Did you maybe did somewhere the conversion of the file to base64 and associated as an asset
@mmick - is there something special to be taken in care of, has anyone did it in composer maybe to send some code snippets ?
Thanks in advance
@bestbeforetoday Huzzah for Composer 0.20. No protesting yet from the political correctness police regarding the "Christmas tree" reference?
[ ](https://chat.hyperledger.org/channel/composer?msg=YPNr2aMaojrnEkfoj) @davidkel Hi David
I downloaded the multi-org but now I have another problem:
2018-08-13 09:05:18.181 UTC [channelCmd] InitCmdFactory -> INFO 001 Endorser and orderer connections initialized
Error: proposal failed (err: rpc error: code = Unavailable desc = transport is closing)
Usage:
peer channel join [flags]
Flags:
-b, --blockpath string Path to file containing genesis block
Any ideas how to handle it?
@touchingsoil 1. yes, this is simple automation (using a common connection profile) 2. yes, you can install the chaincode onto the additional org's peers as defined in the conx profile for the peer admin doing that task (of course the biz network is already started on the channel - this [tutorial](https://github.com/mahoney1/test/blob/master/extend_multi_org_3_orgs-amended.md) will be in the docs later this week (just need to test it for 1.2 Fabric) but 'Step Five' / 'Step Six' should give you an indication of what should happen (For Composer to consume your new 3 Org Fabric network). If in existing network, you still need to change the conx profile for the peer admin and do a composer network install onto the additional peer
[ ](https://chat.hyperledger.org/channel/composer?msg=bSz57mLrkz4tQjDT3) @mmick @mmick how will you differentiate org1 and org2 participants (its participants that you will be restricting, in the business network) - maybe then we can answer..
[ ](https://chat.hyperledger.org/channel/composer?msg=bSz57mLrkz4tQjDT3) @mmick how will you differentiate org1 and org2 participants (its participants that you will be restricting, in the business network) - maybe then we can answer..
@RaSa 6 At what point in the tutorial are you seeing this ?
@RaSa 6 At what point in the tutorial are you seeing this (what step did you perform, and in what directory were you when you executed that step) ?
@RaSa 6 At what point in the tutorial are you seeing this (what step did you perform, and in what directory were you when you executed that step) ? Also - I did a check - the 'upgrade' syntax error you're getting above shows a 1.0.x -> 1.1 message. This means you didn't do a git clone from the right repo -> in the tutorial it asks you to explicitly clone `https://github.com/mahoney1/fabric-samples.git` from the Github repository mentioned - per https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org (then follow the steps after that to use run the byfn.sh script as described there)
@RaSa 6 At what point in the tutorial are you seeing this (what step did you perform, and in what directory were you when you executed that step) ? Also - I did a check - the 'upgrade' syntax error you're getting above shows a 1.0.x -> 1.1 message. This means you didn't do a git clone from the right repo -> in the tutorial it asks you to explicitly clone `https://github.com/mahoney1/fabric-samples.git` from the Github repository mentioned - per https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org (then follow the steps after that to use run the byfn.sh script as described there) - (might be better to do a teardown, remove the fabric-samples directory and start clean per the tutorial)
@RaSa 6 At what point in the tutorial are you seeing this (what step did you perform, and in what directory were you when you executed that step) ? Also - I did a check - the 'upgrade' syntax error you're getting above shows a 1.0.x -> 1.1 message. This means you didn't do a git clone from the right repo -> in the tutorial it asks you to explicitly clone `https://github.com/mahoney1/fabric-samples.git` from the Github repository mentioned - per https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org (then follow the steps after that to use run the byfn.sh script as described there) - (might be better to do a teardown, remove the fabric-samples directory and start clean per the tutorial)
[ ](https://chat.hyperledger.org/channel/composer?msg=Lv9EPJ27rgq7KpMqR) @Anshulmittal Yes you can access properties other than the Identifier :-)
I have just tested a simplified version of your ACL, using *()* instead of [] for the *indexof()*
` condition: (r.providedBy.roles.indexof('PROVIDER') > -1) `
any one know how to connect from login in the app with blockchain network ?
i want to give identity for the user
like when i login with Mohammad@Email.com --> it knows that account with participant importerMohammad
like when i login with Mohammad@Email.com --> it knows that account with participant importerMohammad is connected
[ ](https://chat.hyperledger.org/channel/composer?msg=dbdHKkCv6ta5hneD5) @mahoney1 Hi David
@Haddadmj see resources here - https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#node-app and here -> https://stackoverflow.com/questions/50651728/how-to-bring-an-app-developed-on-hyperledger-composer-to-production plus coding example here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#cardapis
cool .. i will look into it
[ ](https://chat.hyperledger.org/channel/composer?msg=qtpiTu2KAZbTSR7px) Hi Mahoney
Thanks a lot, however, I done the git clone using 'git clone https://github.com/mahoney1/fabric-samples.git' as in the tutorial: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org, the differnce is: if I'm not doing the git checkout then the -a is not working and if I do the checkout then I received the error: I downloaded the multi-org but now I have another problem:
2018-08-13 09:05:18.181 UTC [channelCmd] InitCmdFactory -> INFO 001 Endorser and orderer connections initialized
Error: proposal failed (err: rpc error: code = Unavailable desc = transport is closing)
Usage:
peer channel join [flags]
So I'm stack in the middle :)
By the way, is there an easy way to run the CA (to workaround the -a problem)
Clipboard - August 13, 2018 12:47 PM
Clipboard - August 13, 2018 12:47 PM
@RaSa 6 just went off and tried it and the tutorial is working for me ? I suggest to download the latest tools, do a ./teardownAllDocker.sh (assuming its a dev environment and you can clear out your containers), choose option 2.
@RaSa 6 just went off and tried it and the tutorial is working for me ? I suggest to download the latest tools, do a ./teardownAllDocker.sh (assuming its a dev environment and you can clear out your containers), choose option 2. Then follow the tutorial exactly as instructed to step 6 (the second byfn script sequence and see if you get what I've pasted above).
then follow the tutorial example to step 6 (the second byfn script sequence and see if you get what I've pasted above).
then follow the tutorial exactly as instructed to step 6 (the second byfn script sequence and see if you get what I've pasted above).
Has joined the channel.
Hello guys
I have been stuck on this issue for 2 days now. Kindly check this if someone can answer this.
https://stackoverflow.com/questions/51821837/hyperledger-composer-unit-testing-using-cucumber-typeerror-cannot-read-propert
[ ](https://chat.hyperledger.org/channel/composer?msg=rrcGXJh5NsRosto9k) @mahoney1 Hi Mahoney
OK the difference was in the curl, I used: curl -sSL https://goo.gl/6wtTN5 | bash -s 1.1.0 1.1.0 0.4.6 instead of
curl -sSL http://bit.ly/2ysbOFE | bash -s 1.2.0 1.2.0 0.4.10
Hi
When running the most updated Hyperledger composer, I received the following error: Error: Failed to import identity. Error: Client.createUser parameter 'opts mspid' is required.
Any idea (the command is: composer card import -f ./PeerAdmin@byfn-network-org1.card --card PeerAdmin@byfn-network-org1
[ ](https://chat.hyperledger.org/channel/composer?msg=fsB5rfBs3ep9ahNbS) @rthatcher it works! It was a typo :)
[ ](https://chat.hyperledger.org/channel/composer?msg=tAZpiqPDxNTdKmReB) @Zeljko Milinovic https://github.com/Preetam007/hyperledger_composer_file_storage here have a deep look into this repo. I guess it has your answer!
@Haddadmj may be you are looking for this! This is the most advanced usage of card api's implemented in a project!
https://github.com/IBM/customer-loyalty-program
here is the app demo: https://youtu.be/nLHBmPQa_FY
[ ](https://chat.hyperledger.org/channel/composer?msg=xynGEan9kcrmZYGXt) @RaSa 6 I wonder if you have a typo in the connection.json file you used to create the card? Perhaps searching for `mspid` will help find it.
[ ](https://chat.hyperledger.org/channel/composer?msg=x7n4e3YWZqg75KwrA) @JeffGutierrez IMO, there are other platforms that are better suited for currency deployment. AFAIK, that's not a core focus on Hyperledger and the use case is not baked in like with other platforms
Is it possible to update a single property of a participant without having to include all other data? Currently trying to do it through a PUT request on the composer-rest-server but am being told all other fields must be included as well
[ ](https://chat.hyperledger.org/channel/composer?msg=3jRmDTexWYYtW6kiK) @ronaldlong46 you have to write a transaction specific for the property to modify it.
@mmick Okay awesome! Thanks!
I have a local composer-playground. I also have a private npm registry ( as I am behind a corporate firewall). Can someone tell how to direct composer-playground to the private npm registry? Right now while trying to deploy the business network, I am getting the following error:
```
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to
generate platform-specific docker build: Error returned from build: 1
"npm ERR! code EAI_AGAIN npm ERR! errno EAI_AGAIN npm ERR!
request to https://registry.npmjs.org/composer-common failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443 npm ERR!
A complete log of this run can be found in: npm ERR! /root/.npm/_logs/2018-08-13T19_28_19_846Z-debug.log "
```
Also I see that I am able to curl https://registry.npmjs.org/composer-common, so that means my firewall is not blockchain this npm site. But not sure why I am getting the above error.
Has joined the channel.
Hello,
I'm creating a fabric network with 5 peers.
2 peers, CA and orderer running on machine 1, 1 peer and couch instance on machine 2, 1 peer and couch instance on machine 3, 1 peer and couch instance on machine 4.
They all are on the same channel. I was able to install the .bna into the network. But when I tried starting the application using composer tool, using the below command
"composer network start -c PeerAdmin@hlfv1 -n blockv6 -V 0.0.1 -A admin -S adminpw"
I'm getting no valid response error
✖ Starting business network definition. This may take a minute... Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an
error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode) Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode
error (status: 500, message: Unknown chaincodeType: NODE) Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=b5RscLDEHb6EhKYr5) @coveloper Yes I understand that part but we have a requirement that would be needing a hyperledger for this instance, because the cryptocurrency they want doesn't require to be public and no Mining involved so I was thinking all those part will be hyperledger instead of doing both ethereum and hyperledger :slight_smile:
[ ](https://chat.hyperledger.org/channel/composer?msg=ufFTSbhReve9YARpY) @JeffGutierrez I'm not an expert in crypto, but I assume you could use a token asset as a currency. I suppose you could reimplement the idea of ERC20, but afaik you'd have to completely reinvent it for HL
[ ](https://chat.hyperledger.org/channel/composer?msg=NRg54CzEPZA9C86qZ) @coveloper Thank you for your input :slight_smile: I was thinking that as well my only concern is should I create or Issue a Card for the Customer in accessing the Hyperledger or just 1 card for example "customer.card" for those thousands of users will be using it :slight_smile:
[ ](https://chat.hyperledger.org/channel/composer?msg=NRg54CzEPZA9C86qZ) you could have an `account` property on a Participant and update it with transactions. you'll just have to make it up as you go, and there will be no support for it outside of HL, but if you just need a "token credit" system, it would be the same as building it for a website. Not really crypto, just an ecommerce type solution
[ ](https://chat.hyperledger.org/channel/composer?msg=xSaZmmfabnEdhDenw) @JeffGutierrez I don't know the best answer for that question, but it sounds like a more general question others could answer. "How to handle thousands of Participants?"
[ ](https://chat.hyperledger.org/channel/composer?msg=KLaHFnF7KKDzjr4Ws) @coveloper Yes that would be great probably I would be needing some help to those people already got involve in Crypto Exchange on how I would handle the Asset in Hyperledger like the API's needed for the exchange needed or something like that
[ ](https://chat.hyperledger.org/channel/composer?msg=vBtyucaAMqFKptNJK) @JeffGutierrez I don't think you can have a currency on HL that Exchanges will use. They will only support BTC or ETH coins. Anything that implements ERC20 is expected to be Ethereum
[ ](https://chat.hyperledger.org/channel/composer?msg=iGz66Wq3GRJ7pcGpa) From what you said about it being private currency, you'll just have to make it up. "1 Jeff = $1"
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=BdijT6zPC55SFbR4c) Would just be internal business logic. I don't think you'd be able to interface with an outside crypto entity, unless you really are referring to existing crypto like BTC or ETH somewhere
[ ](https://chat.hyperledger.org/channel/composer?msg=jJX8AnMr9dwpW3Tex) @coveloper Thank you I might continue working on both Ethereum and Hyperledger, I already have the POC it's just only taking time to process the transaction specially in Ethereum, for example I transfer of 1 jeff = $1 after it processed I have to do some transaction in hyperledger like recording that transaction, that 1 Jeff have a equivalent asset on hyperledger so I would process those transaction having a provenance as well
[ ](https://chat.hyperledger.org/channel/composer?msg=bt75EP5z6HGrmAFYg) @mahoney1 Is there any way where we can change the port number ? From which file its taking port number as 3000 ?
@SilambarasanMadhappan `-p` option allows you to specify the port number when starting the rest server
[ ](https://chat.hyperledger.org/channel/composer?msg=sDiM7mAwpcHGnzuDy) @mahoney1
hai,i am a litte confused about your reply:
1,Is "conx profile" the context profile or connection profile?
2,The link docs you given is ok with 1.1 fabric? Is that also based on Fabric "Adding an Org to a Channel"? You mentioned "Note: we have incorporated the necessary steps for you in this tutorial - so no need to jump off to the Fabric docs :-).", but i can't find any info about the necessary setps.
In this doc,After the bna file installed on org3 peers,no "composer network start" cmd is need for org3 to perform a transaction?
3,For this sentence "If in existing network, you still need to change the conx profile for the peer admin and do a composer network install onto the additional peer".
Can i have more detailed info about adding a new peer to existing org? Can the biz network reinstall on the old peers? After installation,network start or update is in need to finish the deployment?
[ ](https://chat.hyperledger.org/channel/composer?msg=sDiM7mAwpcHGnzuDy) @mahoney1
hai,i am a litte confused about your reply:
1,Is "conx profile" the context profile or connection profile?
2,The link docs you given is ok with 1.1 fabric? Is that also based on Fabric "Adding an Org to a Channel"? You mentioned "Note: we have incorporated the necessary steps for you in this tutorial - so no need to jump off to the Fabric docs :-).", but i can't find any info about the necessary setps.
In this doc,After the bna file installed on org3 peers,no "composer network start" cmd is need for org3 to perform a transaction?
3,For this sentence "If in existing network, you still need to change the conx profile for the peer admin and do a composer network install onto the additional peer".
Can i have more detailed info about adding a new peer to existing org? Can the biz network reinstall on the old peers of the existing org at the same time? After installation,network start or update is in need to finish the deployment?
[ ](https://chat.hyperledger.org/channel/composer?msg=CRS4GcnFJyNby6AS5) @davidkel Thank you , Davidkel
Hi
I'm using the latest composer version for multi org, after generating the cards for org1 and org2, I'm running the command:
composer card import -f PeerAdmin@byfn-network-org1.card --card PeerAdmin@byfn-network-org1
And receive the following error:
Error: Failed to import identity. Error: Client.createUser parameter 'opts mspid' is required.
I restart the system, rerun all the installation again but still receiving the same error
Any one can help me with?
Thanks in advance
[ ](https://chat.hyperledger.org/channel/composer?msg=CmBkhvn323P9EFbNo) Hi Mahoney
Now I have another issue (I hope the last one :)
I created the cards successfully, but when I'm running the command:
composer card import -f PeerAdmin@byfn-network-org1.card --card PeerAdmin@byfn-network-org1
I receive the following error:
Error: Failed to import identity. Error: Client.createUser parameter 'opts mspid' is required.
I restart the system, rerun all the installation again but still receiving the same error
Do you have any idea what I'm missing?
Thanks in advance
Hi
I'm using the latest composer version for multi org, after generating the cards for org1 and org2, I'm running the command:
composer card import -f PeerAdmin@byfn-network-org1.card --card PeerAdmin@byfn-network-org1
And receive the following error:
Error: Failed to import identity. Error: Client.createUser parameter 'opts mspid' is required.
I restart the system, rerun all the installation again but still receiving the same error
Any one can help me with?
Thanks in advance
@RaSa 6 check you have correctly added the client section into your connection profiles as described in steps 3 and 4 of the multi-org tutorial. The error suggestions that the `organization` property in the client section is missing
@RaSa 6 check you have correctly added the client section into your connection profiles as described in steps 3 and 4 of the multi-org tutorial. The error suggests that the `organization` property in the client section is missing
[ ](https://chat.hyperledger.org/channel/composer?msg=NHw3YLeSAKENbZbA7) @davidkel Hi David
Thanks a lot, I have a typo (org1 instead of Org1)
[ ](https://chat.hyperledger.org/channel/composer?msg=T25onqfGcAHjqwsCN) @rprasanakumar This looks like you have a mis-match of supported versions of Composer and Fabric. The Release Notes for Composer detail the latest supported versions - https://github.com/hyperledger/composer/releases
But for quick information Composer v0.19.* = Fabric 1.1.0 and Composer v0.20.0 = Fabric 1.2.0
[ ](https://chat.hyperledger.org/channel/composer?msg=8gkhjdpPAaEWRGA8X) @rupa12 You can look at the log of the docker container for the peer for the complete error.
I think you will need to use the Composer CLI to solve the problem, and use the `composer network install` and `composer network start` commands.
There are 2 sections in the Knowledge Wiki that deal with those 2 commands and npm issues:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#cinstallissues
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
Hi , could we check the element of resource other than getIdentifier() in ACL rules, such as a `token`.
If a participant(p) can't access an asset (a) , but there is a token saved in `a` and `p` has the same token, `p` wants to update `a`, does the ACL rule below work?
```
rule ParticipantEditAsset{
description: "Allow Participant edit asset with token"
participant(p): "org.sample.network.User"
operation: READ,UPDATE
resource(a): "org.sample.network.SampleAsset"
transaction(tx): "org.sample.network.SampleTransaction"
condition: (a.token!==undefined&&r.ctoken===tx.token)
action: ALLOW
}
```
Hi , could we check the element of resource other than getIdentifier() in ACL rules, such as a `token`.
If a participant(p) can't access an asset (a) , but there is a token saved in `a` and `p` has the same token, `p` wants to update `a`, does the ACL rule below work?
```
rule ParticipantEditAsset{
description: "Allow Participant edit asset with token"
participant(p): "org.sample.network.User"
operation: READ,UPDATE
resource(a): "org.sample.network.SampleAsset"
transaction(tx): "org.sample.network.SampleTransaction"
condition: (a.token!==undefined&&r.token===tx.token)
action: ALLOW
}
```
Hi , could we check the element of resource other than getIdentifier() in ACL rules, such as a `token`.
If a participant(p) can't access an asset (a) , but there is a token saved in `a` , `p` wants to update `a` with a transaction contains the token, does the ACL rule below work?
```
rule ParticipantEditAsset{
description: "Allow Participant edit asset with token"
participant(p): "org.sample.network.User"
operation: READ,UPDATE
resource(a): "org.sample.network.SampleAsset"
transaction(tx): "org.sample.network.SampleTransaction"
condition: (a.token!==undefined&&r.token===tx.token)
action: ALLOW
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=PckabRh8uCxDw88tC) Hi David
I hope this is the last one: I run:
composer network install --card PeerAdmin@byfn-network-org1 --archiveFile tireports@0.0.97.bna
⠹ Installing business network. This may take a minute...E0814 11:37:09.374627498 7121 ssl_transport_security.cc:599] Could not load any root certificate.
E0814 11:37:09.374669694 7121 ssl_transport_security.cc:1400] Cannot load server root certificates.
E0814 11:37:09.374685855 7121 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
[ ](https://chat.hyperledger.org/channel/composer?msg=L4k3kzkRLDZueuZdk) The following Business Network Cards are available:
Connection Profile: byfn-network
┌─────────────────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@byfn-network-org1 │ PeerAdmin │ │
└─────────────────────────────┴───────────┴──────────────────┘
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Hi , I started learning hyperledger-fabric for creating my own business application but, I still have a question
In practice, there is only one machine with docker and whole bna, or every member must have his own docker with bna?
If only one, then it turns out to be a centralized application. Am I right?
Hi , I started learning hyperledger-fabric for creating my own business application but, I still have a question
In practice, there is only one machine with docker and whole bna, or every member must have his own docker with bna?
If only one, then it turns out to be a centralized application. Am I right?
How can we set unique key ?
How can we set unique key and composite key?
@labcoinpoc yes, you can access other fields of a resource (via the transaction shown) such as you've listed or could use alternative condition (I think you mean `r.token` btw - eg `: (a.token && a.token===tx.token)`
[ ](https://chat.hyperledger.org/channel/composer?msg=Kct6GLYepg479XMQa) @labcoinpoc yes, you can access other fields of a resource (via the transaction shown) such as you've listed or could use alternative condition (I think you mean `r.token` btw - eg `: (a.token && a.token===tx.token)
[ ](https://chat.hyperledger.org/channel/composer?msg=Kct6GLYepg479XMQa) @labcoinpoc yes, you can access other fields of a resource (via the transaction shown) such as you've listed or could use alternative condition (I think you mean `r.token` btw - eg `: (a.token && a.token===tx.token)`
[ ](https://chat.hyperledger.org/channel/composer?msg=oB63MGKRq8ygpAwbw) @HoneyShah if you mean in models, you can only use a singular field - not composite key a la relational DBs
[ ](https://chat.hyperledger.org/channel/composer?msg=gsQhfcSQMgWfdpK79) @mahoney1 Is there any other way than model through which I can do same?
[ ](https://chat.hyperledger.org/channel/composer?msg=HxbJYbN3jHwpRu5DF) @thiyagucse01 For starting out and learning/developing, you will probably have a single machine running the Fabric locally in Docker containers. (The Composer installation documents show you how to set up this developer Fabric. https://hyperledger.github.io/composer/latest/installing/installing-index)
One of the features of Hyperledger Fabric is the _Distributed Ledger_, so in a live scenario you are likely to have separate Organisations controlling their own Peers and CA.
[ ](https://chat.hyperledger.org/channel/composer?msg=RmcpA5T2xvcTjnRtm) @mahoney1 Many thanks for the prompt reply, I am testing this on my network. In my network there are two kinds of participants `Buyer` and `Seller`, first the `Seller` creates an `Asset` which contains a `token`. then `Seller` pass the token to `Buyer`, the `Buyer` needs to submit a `Transaction` contains the `token`, and the `Transaction` should update the `Asset` 's owner to `Buyer`. I made ACL rules like above, but when I trigger the transaction, I get error like: asset does not exist. I think the problem is user doesn't allow to read the asset which does not belong to it. but I can't add read permission to all asset since the user could get the token from other's assets. then how can I solve this problem?
@labcoinpoc right, and participant above is `User` - is something else denoting a Buyer or Seller? Can you post the model?
@labcoinpoc right, and participant above is `User` or are you using a supertype - is something else denoting a Buyer or Seller? Can you post the model?
The User is buyer, ok ,let me do some clean and post it
```
namespace org.example.network
participant User identified by userId {
o String userId
o String name
}
participant Shop identified by shopId {
o String shopId
o String name
}
asset Receipt identified by receiptId {
o String receiptId
--> User buyer optional
--> Shop seller
o String confirmToken optional
}
transaction ConfirmTransaction {
--> User buyer
--> Receipt receipt
o String confirmToken
}
```
and this is the first ACL rule,
```
rule UserConfirmReceipt{
description: "Allow User to confirm receipt with token"
participant(p): "org.example.network.User"
operation: READ,UPDATE
resource(r): "org.example.network.Receipt"
transaction(tx): "org.example.network.ConfirmTransaction"
condition: (r.confirmToken&&r.confirmToken==tx.confirmToken)
action: ALLOW
}
```
just dumb question . i define participants in model and create a participant. i will have a transaction id. but i want to retrieve block where this information is stored. To be precise where block is formed?
@labcoinpoc so the message 'does not exist' is because at the time you issue the transaction, the target resource (r) does not have a token set ? so would fail the condition you wrote above and hence evaluation wouldn't be able to READ the asset. But can't you have an ACL (above) the above rule that is something like
```rule ReadAsset{
description: "Read asset"
participant(p): "org.example.network.User"
operation: READ
resource(r): "org.example.network.Receipt"
transaction(tx): "org.example.network.ConfirmTransaction"
action: ALLOW
}``` the issue comes when the buyer tries to update the resource (r) won't have the token set I am assuming?)
the token is set when seller creating the receipt, may be the problem is when issuing the transaction the receipt didn't have a buyer, and the user is only allowed to access to the receipt which the receipt.buyer is itself
I also have ACL rule like:
```
rule UserReadOwnReceipts {
description: "Allow User to read their own receipts"
participant(p): "org.example.network.User"
operation: READ
resource(r): "org.example.network.Receipt"
condition: (r.buyer.getIdentifier() == p.getIdentifier())
action: ALLOW
}
```
@labcoinpoc yes, so the condition would only evaluate to true if buyer participant has access to Receipt instance AND access to the User Participant to which it refers as well (ie need rule for that too, default is DENY), or as you say, if 'the receipt didn't have a buyer' - I think if you post the question, problem statement/what you want to achieve, post the model etc on Stack overflow - we can post an answer, difficult to resolve in a chat.
@labcoinpoc yes, so the condition would only evaluate to true if buyer participant has access to [his related] Receipt instance AND access to the User Participant to which it refers as well (ie need rule for that too, default is DENY), or as you say, if 'the receipt didn't have a buyer' - I think if you post the question, problem statement/what you want to achieve, post the model etc on Stack overflow - we can post an answer, difficult to resolve in a chat.
@labcoinpoc yes, so the condition would only evaluate to true if buyer participant has access to [his related] Receipt instance AND access to the User Participant to which it refers as well (ie need rule for that too, default is DENY), or as you say, if 'the receipt didn't have a buyer' - I think if you post the question, problem statement/what you want to achieve, post the model and existing rules etc on Stack overflow - we can post an answer, difficult to resolve in a chat.
OK thanks! I will do more tests, clean my ACL rule and test them one by one, if I still have the problem , I will post it to Stack overflow with more details .
@labcoinpoc ok remember you will need a rule that allows the buyer to access (part of the transaction rule) his participant record ```rule UserReadOwnRec {
description: "Allow User to reference his own resource"
participant(p): "org.example.network.User"
operation: READ
resource(r): "org.example.network.User"
condition: (r.getIdentifier() == p.getIdentifier())
action: ALLOW ``` etc
}
[ ](https://chat.hyperledger.org/channel/composer?msg=hdEYoNzubL24FCyvq) @mmick Hi. Thanks I have checked the link. The code uses IPFS and I would like to use the Base64 String conversion for my .TXT Files. Are there any Base64 Examples of conversions, code etc. Thanks in advance
Has joined the channel.
Has joined the channel.
hi how can i call hyperledger composer api from AJAX ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZeaBioDfGYYcbjgyA) @Zeljko Milinovic Great . Here is the link from same repo that utilizes base64 method.https://github.com/Preetam007/hyperledger_composer_file_storage/blob/e993322bde4fe42203e66a14b868985f0354afc6/modules/v0/users/users-crud.js#L19
[ ](https://chat.hyperledger.org/channel/composer?msg=ZeaBioDfGYYcbjgyA) @Zeljko Milinovic Great . Here is the link from same repo that utilizes base64 method.
https://github.com/Preetam007/hyperledger_composer_file_storage/blob/e993322bde4fe42203e66a14b868985f0354afc6/modules/v0/users/users-crud.js#L19
@Zeljko Milinovic as far as i know. it uses base 64 string method to create user and IPFS to create asset.
Hi all, I am facing problem in accessing REST api for updating an asset. When I try to update via REST api, says ` id property (name) cant be updated from 90 to 90`. Could anyone help me
[ ](https://chat.hyperledger.org/channel/composer?msg=aQnmFpn5hA6kbwFT3) @hyper-sunder You can't change the _id_ property of any Asset or Participant. Your output looks like 90 stays the same, but perhaps there is a space or unprintable character somewhere?
@rthatcher I am trying to update an asset by put method. It asks for Id of asset and data to be changed.
let me share screenshot
Screenshot from 2018-08-14 18-01-47.png
I have posted my question https://stackoverflow.com/questions/51763578/how-to-resolve-service-name-to-in-docker-swarm-mode-for-hyperledger-composer and tried as mentioned in comment but I am not able to solve the issue. May I was misunderstood something or missing something. So now I am trying with default composer network to know how it works.
I have used curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz
tar -xvf fabric-dev-servers.tar.gz this for setup fabric.
I tried to change connection.json as mentioned in https://hyperledger.github.io/composer/latest/reference/connectionprofile.
```
"peers": {
"peer0.org1.example.com": {
"url": "grpc://peer0.org1.example.com:7051"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://ca.org1.example.com:7054",
"caName": "ca.org1.example.com"
}
}
``` But it is not resolving this also. For this to be working do I need to change something?
I have posted my question https://stackoverflow.com/questions/51763578/how-to-resolve-service-name-to-in-docker-swarm-mode-for-hyperledger-composer and tried as mentioned in comment but I am not able to solve the issue. I might have misunderstood something or missed something. So now I am trying with default composer network to know how it works.
I have used curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz
tar -xvf fabric-dev-servers.tar.gz this for setup fabric.
I tried to change connection.json as mentioned in https://hyperledger.github.io/composer/latest/reference/connectionprofile.
```
"peers": {
"peer0.org1.example.com": {
"url": "grpc://peer0.org1.example.com:7051"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://ca.org1.example.com:7054",
"caName": "ca.org1.example.com"
}
}
``` But it is not resolving this also. For this to be working do I need to change something?
@rthatcher sending you screen shot VVVV
Screenshot from 2018-08-14 18-04-40.png
Has joined the channel.
how can i have 2 identifiers in my models as i define theme?
I was able to authenticate my composer rest server using passport-jwt strategy but I am unable to use the composer rest server from my front end application as I am unable to get the access token given by the JWT from the front end application, can someone help me with this
@hyper-sunder - The easiest way to do this is to do a GET first - then you can just copy the JSON from the response body into the data field, and just change the fields you wish to modify with the PUT.
Judging by the error you showed earlier, I wonder if your Model file has the Product asset with `identified by name` or `identified by assetId` ?
i have testing@0.0.1.bna file how to update the composer network
@rthatcher
I have done some modifications in code how to update the composer network? @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=oga9uTxRCZbKzn4cq) @sureshtedla The Queries tutorial (from Step 3) shows how to update a network: https://hyperledger.github.io/composer/latest/tutorials/queries
[ ](https://chat.hyperledger.org/channel/composer?msg=2rCpogiqSYwn9ftoe) @rthatcher Thank you @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=DRrQvYRqxMc26rn3f) @Jyotirmoy hi - if you look at this tutorial (link follows) - it gives you an indication of how you can get it from the Cookie via a [link to sample code](https://github.com/hyperledger/composer/blob/2ca3137f258ed8de0584e5940ed187e588fa1aef/packages/composer-rest-server/public/index.html#L54-L98) -> https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
[ ](https://chat.hyperledger.org/channel/composer?msg=DRrQvYRqxMc26rn3f) @Jyotirmoy hi - if you look at this tutorial (link follows) - it gives you an indication of how you can get it from the Cookie via a [link to sample code](https://github.com/hyperledger/composer/blob/2ca3137f258ed8de0584e5940ed187e588fa1aef/packages/composer-rest-server/public/index.html#L54-L98) -> https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn - another example here -> https://medium.com/@amcdnl/authentication-in-angular-jwt-c1067495c5e0
@rthatcher `identified by assetId`
Let me try as you said also.
Got following error when trying to import card to wallet, if anyone knows what it means:
```
Error: Failed to import identity. Error: Client.createUser parameter 'opts mspid' is required.
Command failed
```
It says you are missing mspid
What command you have excited?
@rthatcher i get the same error even if I follow your method
I'm just following tutorial : https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
I run `composer card import -f PeerAdmin@my-network-org1.card --card PeerAdmin@my-network-org1`
_mspid_ is defined in the json file under each organization
OK sorry got it, had a typo in the json file...
[ ](https://chat.hyperledger.org/channel/composer?msg=3rix5rZr5XbuNr5zt) @hyper-sunder Can you send me your model file and the example JSON you are using, in a Direct Message
Has joined the channel.
my app connected with firebase so when i signed up.. data goes to the firebaseDB. now i want to connected with identity.
i could do that manually ... is there any way to do it automatically ?
my app connected with firebase so when i signed up.. data goes to the firebaseDB. now i want to connect it with identity.
i could do that manually ... is there any way to do it automatically ?
[ ](https://chat.hyperledger.org/channel/composer?msg=mZxsCm2XTzYMQnpp7) @JeffGutierrez very cool! If you get it working, it would be great content for a blog post if you're able to share your experience! I know I would be interested to read it! Good Luck!
[ ](https://chat.hyperledger.org/channel/composer?msg=e3233wanbqZwfm3Xa) @mahoney1 I am able to replicate gangachris method of JWT but when I am using an app developed to interact with the composer rest server I am able to hit the jwt call back but I am not able to find the cookie response the jwt sends back.
login
I have a question regarding the inheritance.
Let says that I have this model
```
`participant User identified by userId {
o String userId
o String field1
o String field2
}
participant BigUser extends User {
o String field3
}
participant SmallUser extends User {
o String field4
}
// all users can do it
transaction CanDo {
--> User user
}`
```
And this logic
```
`async function doable (canDo) {
Is there a way to know the subtype of "canDo.user" in this function? so that if it is SmallUser we can update field4 ?
}`
```
endorsement policy
Does composer support endorsement policy. I looked for documentation on endorsement policy on this page but did not find it.
Network deploy used to support it but looks like the CLI command has changed... https://github.com/hyperledger/composer/issues/1251
let serializer = this.businessNetworkDefinition.getSerializer();
let resource = serializer.fromJSON({
'$class': 'net.biz.digitalPropertyNetwork.RegisterPropertyForSale',
'title': 'LID:1148'
});
Let say we are using the composer node.js SDK from the web application to submit the transaction, does the code automatically submit the transaction to both peers.
let serializer = this.businessNetworkDefinition.getSerializer();
let resource = serializer.fromJSON({
'$class': 'net.biz.digitalPropertyNetwork.RegisterPropertyForSale',
'title': 'LID:1148'
});
await this.bizNetworkConnection.submitTransaction(resource);
[ ](https://chat.hyperledger.org/channel/composer?msg=9a9Ts7Nwcn8hGq3Gw) @nippleDonkey @nippleDonkey I am sorry for the late reply... after some research I've managed to solve the problem. If someone would like to prepare it's network for high amount of API calls they should check this: https://github.com/hyperledger/fabric-samples/tree/release-1.2/high-throughput.
The main problem in my project was that two handler in the backend simultaneously tried to connect to the blockhain (await connection.connect(cardname)). We can use that nodeJS is single threaded. Just place the connection part to a new file as a an exportable function. Variables which gone be used have to global so place them outside the function (for example: connection and networkdefintion) then determine if the connection is running or not. For instance: use a variable like 'let run = false (global)' then if(!run) {connection = ..., ... = await ... }. After that just return the appropriate variables for use. It will work like a singleton object. I suggest placing the connection call in the server.js before listening to make sure it will connect to the blockchain before anything operation could happen. Hope it will help:)
[ ](https://chat.hyperledger.org/channel/composer?msg=9a9Ts7Nwcn8hGq3Gw) @nippleDonkey I am sorry for the late reply... after some research I've managed to solve the problem. If someone would like to prepare it's network for high amount of API calls they should check this: https://github.com/hyperledger/fabric-samples/tree/release-1.2/high-throughput.
The main problem in my project was that two handler in the backend simultaneously tried to connect to the blockhain (await connection.connect(cardname)). We can use that nodeJS is single threaded. Just place the connection part to a new file as a an exportable function. Variables which gone be used have to global so place them outside the function (for example: connection and networkdefintion) then determine if the connection is running or not. For instance: use a variable like 'let run = false (global)' then if(!run) {connection = ..., ... = await ... }. After that just return the appropriate variables for use. It will work like a singleton object. I suggest placing the connection call in the server.js before listening to make sure it will connect to the blockchain before anything operation could happen. Hope it will help:)
[ ](https://chat.hyperledger.org/channel/composer?msg=9a9Ts7Nwcn8hGq3Gw) @nippleDonkey I am sorry for the late reply... after some research I've managed to solve the problem. If someone would like to prepare it's network for high amount of API calls they should check this: https://github.com/hyperledger/fabric-samples/tree/release-1.2/high-throughput.
The main problem in my project was that two handler in the backend simultaneously tried to connect to the blockhain (await connection.connect(cardname)). We can use that nodeJS is single threaded. Just place the connection part to a new file as a an exportable function. Variables which gone be used have to global so place them outside the function (for example: connection and networkdefintion) then determine if the connection is running or not. For instance: use a variable like 'let run = false (global)' then if(!run) {run = true , connection = ... , ... = await ... }. After that just return the appropriate variables for use. It will work like a singleton object. I suggest placing the connection call in the server.js before listening to make sure it will connect to the blockchain before anything operation could happen. Hope it will help:)
[ ](https://chat.hyperledger.org/channel/composer?msg=9a9Ts7Nwcn8hGq3Gw) @nippleDonkey I am sorry for the late reply... after some research I've managed to solve the problem. If someone would like to prepare it's network for high amount of API calls they should check this: https://github.com/hyperledger/fabric-samples/tree/release-1.2/high-throughput.
The main problem in my project was that two handler in the backend simultaneously tried to connect to the blockhain (await connection.connect(cardname)). We can use that nodeJS is single threaded. Just place the connection part to a new file as a an exportable function. Variables which gone be used have to global so place them outside the function (for example: connection and networkdefintion) then determine if the connection is running or not. For instance: use a variable like 'let run = false (global)' then if(!run) {connection = ..., ... = await ... }. After that just return the appropriate variables for use. It will work like a singleton object. I suggest placing the connection call in the server.js before listening to make sure it will connect to the blockchain before anything operation could happen. Hope it will help:)
Hi guys. I accidentally deleted my network card with `composer card delete -c admin@my-network` what is the best procedure for recovering from this?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=tw9ykPvK8q673inEQ) @Levilk I think your issue has no relationship with the high-throughput problem (which is caused by the read-write conflict of same key-value in ledger in one block). I have met the same problem like yours. In my project I put all the blockchain operation function in one file called `network.js` , in an old version, I put
```
const adminConnection = new AdminConnection( );
```
at top of network.js, and in each function do:
```
await businessNetworkConnection.connect(cardId);
// do something....
await businessNetworkConnection.disconnect();
```
And I met the same issue as yours, if I triggered 2 function in short duration , some error occurred. I figured that they actually used the same `businessNetworkConnection` instance, so the first function invoked the `disconnect()` method when the second function was running. So I changed every function to:
```
let businessNetworkConnection = new BusinessNetworkConnection();
await businessNetworkConnection.connect(cardId);
await businessNetworkConnection.disconnect();
```
[ ](https://chat.hyperledger.org/channel/composer?msg=tw9ykPvK8q673inEQ) @Levilk I think your issue has no relationship with the high-throughput problem (which is caused by the read-write conflict of same key-value in ledger in one block). I have met the same problem like yours. In my project I put all the blockchain operation function in one file called `network.js` , in an old version, I put
```
const adminConnection = new AdminConnection( );
```
at top of network.js, and in each function do:
```
await businessNetworkConnection.connect(cardId);
// do something....
await businessNetworkConnection.disconnect();
```
And I met the same issue as yours, if I triggered 2 function in short duration , some error occurred. I figured that they actually used the same `businessNetworkConnection` instance, so the first function invoked the `disconnect()` method when the second function was running. So I changed every function to:
```
let businessNetworkConnection = new BusinessNetworkConnection();
await businessNetworkConnection.connect(cardId);
//do something
await businessNetworkConnection.disconnect();
```
so that each function has its own instance of `businessNetworkConnection` and problem solved.
@gauthampamu yes, if it targets both peers in your connection profile (from the submitter's biz network card) - see more info on peer definition here -> https://hyperledger.github.io/composer/latest/reference/connectionprofile.html
[ ](https://chat.hyperledger.org/channel/composer?msg=DAjf3MBjeDmeMKy8G) @soryboums You are passing a User type, so you would expect that be be a 'Pure' user.
The value of the relationship parameter passed to the Transaction is checked that it is a valid type
[ ](https://chat.hyperledger.org/channel/composer?msg=DAjf3MBjeDmeMKy8G) @soryboums You are passing a User type, so you would expect that be be a 'Pure' user.
The parameter will be something like: "Resource {org.acme.mynetwork.User#Amy}"
The value of the relationship parameter passed to the Transaction is checked that it is a valid type and I think you can treat it as a string.
You might be interested in the getCurrentParticipant method which works against the ID/Participant submitting the Transaction:
```
var me=getCurrentParticipant();
var meType=me.getFullyQualifiedType();
```
[ ](https://chat.hyperledger.org/channel/composer?msg=EHtkxknp593Gunzy7) @musemby If you have deleted the admin card for the network, there is probably no way to recover it - so you will likely have to start a clean Fabric and redeploy your BNA and start again -unless:
1. You exported the admin card sometime after you first used it?
2. You created other Participants and Issued them with Ids with the full access to the network via ACL AND the other Id has the rights to issue identities.
@Jyotirmoy these two blogs may help you https://jonathanmh.com/express-passport-json-web-token-jwt-authentication-beginners/ and http://jonathanmh.com/example-json-web-tokens-vanilla-javascript/
[ ](https://chat.hyperledger.org/channel/composer?msg=u4nzoFcG35vWStSnf) @Haddadmj these are the supported Cloud stores, but you can see the docs for a link to writing new cloud implementations here https://hyperledger.github.io/composer/latest/business-network/cloud-wallets
@rthatcher when i updating the composer network testing@0.0.2.bna i am getting error
@rthatcher
Error.PNG
[ ](https://chat.hyperledger.org/channel/composer?msg=MhGMwruBpa8QGmyYz) @sureshtedla Try `composer archive list` to determine the version number and network name in the bna file.
Then you could try these commands to see what versions are already installed (copied) to the Peer:
```
docker exec -it peer0.org1.example.com /bin/sh
# ls /var/hyperledger/production/chaincodes/
tutorial-network.0.0.1 tutorial-network.0.0.3
tutorial-network.0.0.2 tutorial-network.0.0.4
# exit
```
That should help you work out what is going on with the versions.
@rthatcher it is showing testing@0.0.1 installed on peer
when i try to install testing@0.0.2.bna it is showing the same error
shall i stopFabric inorder to update the composer network? @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=5TJ26i3E8sKz25GFG) @sureshtedla what is the result of `composer archive list -a testing@0.0.2.bna` ?
error2.PNG
error2.PNG
@rthatcher
error3.PNG
error3.PNG
name chain@0.0.2.bna
previuos name chain@0.0.1.bna
@rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=ojNx9ZhTCwrSukmNS) @sureshtedla the Queries Tutorial I sent the link for yesterday has the instructions to change the version number in the package.json file. That should do the trick.
i followed the same procedure it is not working
@rthatcher
@rthatcher composer network upgrade -c PeerAdmin@hlfv1 -n tutorial-network -V 0.0.2
getting error
err4.PNG
[ ](https://chat.hyperledger.org/channel/composer?msg=RMtP4xaJfxxphbpN2) @rthatcher
I am following https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org. Till step 8, i have created cards for both org1 and org2 but as i am trying to import them in step 9, i am encountered with this error.
Screenshot from 2018-08-15 15-32-47.png
@sureshtedla - you need to re-do the steps to update the version in the package.json file - until the `composer archive list ...` shows version 0.0.2 the you can't do the other steps. After you see 0.0.2 for the archive list command you can then do the `install` and `update` commands.
okk
@mmick what version of Composer are you using? eventUrl was removed in connection profiles since Composer v0.19.13 -> https://github.com/hyperledger/composer/releases
@mmick what version of Composer are you using? eventUrl was removed in connection profiles (and the docs) since Composer v0.19.13 -> https://github.com/hyperledger/composer/releases - I could see this happening if using 'present' docs and older Composer.
how to check?
composer -v
composer archive list.PNG
[ ](https://chat.hyperledger.org/channel/composer?msg=7pzACGBj7xTYXWxAc) @rthatcher
when i enter composer archive list getting above missing argument
@sureshtedla like before, you need to provide a parameter eg `composer archive list -a testing@0.0.2.bna` as @rthatcher suggests
@rthatcher {
"$class": "org.acme.Block.OrderResponse",
"BuyerName": "string",
"SellerName": "string",
"orderNumber": "string",
"AckNo": "string",
"orderSellerStatus": "string",
"order": {},
"buyer": {},
"Seller": {},
"transactionId": "string",
"timestamp": "2018-08-15T11:02:37.602Z"
}
when i sending data through rest server it is saying transactionId cannot set
@rthatcher what to do?
while using the app... from the console in the browser
GET http://localhost:3000/api/Supplier 404 (Not Found)
[ ](https://chat.hyperledger.org/channel/composer?msg=tSzRDDLSNfbv5buT2) @sureshtedla The example includes the transactionId and timestamp, but they get created automatically - you should remove them from your JSON.
Also note that with your relationship fields e.g. ` "order":{} ` you need to specify them like this ` "order":"PO-06" ` or ` "order":"resource:org.acme.mynetwork.Order#PO-06" `
okk
Thanks @rthatcher
i want to see the txns details mean like what are the products i have purchased how can i see that details? @rthatcher
@rthatcher Hi i want to make reference as optional is it possible asset Order identified by orderNumber {
o String orderNumber
o String[] items
o String status
o String dispute
o String resolve
o String backorder
o String refund
o Integer amount
o String created
o String bought
o String cancelled
o String ordered
o String dateBackordered
o String requestShipment
o String delivered
o String delivering
o String disputeOpened
o String disputeResolved
o String paymentRequested
o String orderRefunded
o String approved
o String paid
--> Provider provider
--> Shipper shipper
--> Buyer buyer
--> Seller seller
--> FinanceCo financeCo
}
@sureshtedla you can use loopback filters on the REST API to resolve any related assets in your model eg `{"where":{"order":"resource:org.acme.Block.OrderResponse#buyer1"}, "include":"resolve"} see more here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#filters (ie if orders have purchase detail)
@sureshtedla you can use loopback filters on the REST API to resolve any related assets in your modeled transaction eg `{"where":{"order":"resource:org.acme.Block.OrderResponse#buyer1"}, "include":"resolve"} see more here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#filters (ie if orders have purchase detail)
fyi all - reminder that the Community call is tomorrow (Thurs) at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 - would be great to hear from you and hear your Composer stories, and use cases on the call, current agenda -> https://github.com/hyperledger/composer/wiki/Meeting-16th-Aug-2018 best regards Paul
fyi all - reminder that the Community call is tomorrow (Thurs) at 4pm UTC (5pm UK, 12pm ET, 9am PT) - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 - would be great to hear from you and hear your Composer stories, and use cases on the call, current agenda -> https://github.com/hyperledger/composer/wiki/Meeting-16th-Aug-2018 best regards Paul
[ ](https://chat.hyperledger.org/channel/composer?msg=PF5M62f6293WNhqZw) @rthatcher Thank you @rthatcher this is exactly what I wanted
Is it possible to connect the docker hub image of composer to my existing fabric POC
[ ](https://chat.hyperledger.org/channel/composer?msg=auntPjTevB36XHeWJ) @rthatcher Okay thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=65Xkx3YRShP4ShAWJ) @rthatcher I am trying to recreate but when I get to ./createPeerAdminCard I get this error
```bash
Failed to import the business network card
keyword: required
dataPath: .peers['peer0.org1.example.com']
schemaPath: #/required
params:
missingProperty: eventUrl
message: should have required property 'eventUrl'
Error: Errors found in the connection profile in the card
Command failed
```
I can't seem to get the solution on the internet
@musemby upgrade to composer 0.19.13/0.19.14 if using fabric 1.1, 0.20.0 if using fabric 1.2
Has left the channel.
Has joined the channel.
Hello
Can I user composer in production
?
Hi , How can I achieve file upload and retrive in hyperledger composer?
Hi : I cant able to create the issue new ID i faced this issue *Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]* how to resolve this one ?
@mhs22 I don't see any reason not to use it in production but as with any toolset / framework you need to remember that you are limited to how quickly Composer release a new version that takes advantage of the latest features from Hyperledger Fabric. For example, Fabric 1.2 has been out for a while and composer 0.20 has only just been released.
[ ](https://chat.hyperledger.org/channel/composer?msg=8TYuNWvo28uYFTme3) @mmick Hey Mmick - thanks for the info. I see that this is the IPFS style. I was wondering if there was some example with normal typical String conversion to JSON using Hyperledger APIs or NODEJS APIs over REST or similar. I do not want to use IPFS
[ ](https://chat.hyperledger.org/channel/composer?msg=mcsCQeDxxdcnf8yXC) @Mahadream - what steps/actions/commands did you use to get the error? Are you using the development Fabric from fabric-dev-servers or a Custom Fabric?
@rthatcher - Using the development Fabric from fabric-dev-servers with hyperledger-composer
@Zeljko Milinovic the link also has info about base64 conversion - this can help you https://stackoverflow.com/questions/28834835/readfile-in-base64-nodejs and for string to JSON conversion, you just use standard `JSON.x` functions as shown in answer 2 here -> https://stackoverflow.com/questions/32843732/convert-string-which-is-read-from-a-file-to-json-object-in-nodejs
@thiyagucse01 see this [stack overflow](https://stackoverflow.com/questions/28834835/readfile-in-base64-nodejs) link for both ways
[ ](https://chat.hyperledger.org/channel/composer?msg=RkbJNHEdv3NXWTYjo) @Mahadream thanks - and what steps/actions/commands did you use leading up to the error? Can you show the context?
Clipboard - August 16, 2018 2:54 PM
Clipboard - August 16, 2018 2:54 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=YCbtw58ZQEaFx6iDm) @mahoney1 Thanks for ur reply , we can upload and retrive images only using node base64 in hyperledger ?
[ ](https://chat.hyperledger.org/channel/composer?msg=T73cXvW5xXYcmNzLT) @Mahadream I would guess that when you created the ID for 'Manu01' you did not _check the box_ for *Allow this ID to issue new IDs* - so Manu01 does not have the rights, to create new IDs.
@rthatcher - Thanks for quick reply , i will check on that
@mahoney1 using node base64 we can achieve desired result, but in ethereum we have IPFS concept for file upload and retrieve , as like that in hyperledger having any concept ?
@mahoney1 using node base64 we can achieve desired result, but in ethereum we have IPFS concept for file upload and retrieve , as like that in hyperledger having any concept ?
@rthatcher in order asset can i make reference as optional asset Order identified by orderNumber {
o String orderNumber
o String[] items
o String status
o String dispute
o String resolve
o String backorder
o String refund
o Integer amount
o String created
o String bought
o String cancelled
o String ordered
o String dateBackordered
o String requestShipment
o String delivered
o String delivering
o String disputeOpened
o String disputeResolved
o String paymentRequested
o String orderRefunded
o String approved
o String paid
--> Provider provider
--> Shipper shipper
--> Buyer buyer
--> Seller seller
--> FinanceCo financeCo
}
@rthatcher like bottom of file like Provider, Shipper etc..
Has joined the channel.
Hello every one
can any one help me to start hyperledger fabric, hyperledger composer
with node.js
@thiyagucse01 you might be best ask about the protocol / native support on #fabric (Composer is about developing apps/chaincode) but these links may help understand Fabric's approach (architectural approach) -> https://lists.hyperledger.org/g/fabric/topic/17549762 , https://lists.hyperledger.org/g/hyperledger-technical-discuss/topic/17551603 and finally -> https://stackoverflow.com/questions/51325483/suggestion-needed-for-distributed-storage-for-hyperledger-fabric (doc link provided there as well)
@sureshtedla - yes you can make relationship fields optional e.g. ` --> Shipper shipper optional `
@sonukumar18 hi, sure - see this link -> https://hyperledger.github.io/composer/latest/applications/applications-index
@sonukumar18 hi, sure - see this link -> https://hyperledger.github.io/composer/latest/applications/applications-index - also the knowledge wiki has some resources you can read
@sonukumar18 hi, sure - see this link -> https://hyperledger.github.io/composer/latest/applications/applications-index - also the knowledge wiki has some resources you can read -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#node-app
i am asking some useful resources(reference to start ) for hyperledger composer with node.js application.
[ ](https://chat.hyperledger.org/channel/composer?msg=BQrYE4Ctk6Rcyno3M) @rthatcher @mahoney1 Please help. I can not find anything to solve this
Has joined the channel.
@mahoney using node base64 for file upload and retrive in hyperledger is good way or not?
@mahoney1 using node base64 for file upload and retrive in hyperledger is good way or not?
refrence field as optional.PNG
[ ](https://chat.hyperledger.org/channel/composer?msg=t7qamb3XzQFEoijsJ) @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=pBWzXaiNT557p46fM) If i gave reference filed as optional i got this error
Have any one an article or tutorials to start node.js with hyperledger application
Thanks
i am beginner want to develop an application using hyperledger composer with node.js.
can any provide some resources or stuff to learn?
Thanks
@rthatcher can you help me why i am getting this error when i gave optional to reference filed?
refrence field as optional.PNG
refrence field as optional.PNG
refrence field as optional.PNG
@waleed
@sureshtedla the error says you're missing the id field - check what's required (on the right or in your model) and check what JSON you're posting.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=mmoxXkRT4Gm9JJGHS) @mahoney1 String orderNumber
o String[] items
o String status
o String dispute
o String resolve
o String backorder
o String refund
o Integer amount
o String created
o String bought
o String cancelled
o String ordered
o String dateBackordered
o String requestShipment
o String delivered
o String delivering
o String disputeOpened
o String disputeResolved
o String paymentRequested
o String orderRefunded
o String approved
o String paid
--> Provider provider
--> Shipper shipper
--> Buyer buyer
--> Seller seller
--> FinanceCo financeCo
i gave optional to provider shipper buyer
and seler Financeco
Hey there! Are there any tutorials how the communication between two (or more) different organizations in composer works? something like autorize access from specific members from org2 to read transactions in org1
Hey there! Are there any tutorials how the communication between two (or more) different organizations in composer works? something like authorizeaccess from specific members from org2 to read transactions in org1
Hey there! Are there any tutorials how the communication between two (or more) different organizations in composer works? something like authorize access from specific members from org2 to read transactions in org1
Has joined the channel.
how do i deploy composer bna file to Oracle Blockchain
@sureshtedla easiest thing is to connect to your business network in Playground .. go to'Test' tab, hit create ...for the asset in question - then click 'generate random data' at the bottom - that is the minimum fields / example of the JSON data you need to post in your REST API /POST -
Has joined the channel.
Can I change transaction property after transaction invoke?
For example, I have this transaction:
```
transaction Transfer {
o Double amount
}
```
I invoke it from sdk with "amount" argument equals 0 and in transaction processor funtion i change it like so:
```
...
tx.amount += 1
...
```
But when I get this transaction from registry, I see amout equals 0. Can I fix it?
[ ](https://chat.hyperledger.org/channel/composer?msg=22a69pyLyqpYhkQkF) @sonukumar18 You could try this: https://blog.4eyes.ch/
[ ](https://chat.hyperledger.org/channel/composer?msg=MSfv38DQCrEAp4jvd) Please help. can you please try this at your side for simple fabric implementation?
[ ](https://chat.hyperledger.org/channel/composer?msg=MSfv38DQCrEAp4jvd) @rthatcher @mahoney1 Please help. can you please try this at your side for simple fabric implementation?
[ ](https://chat.hyperledger.org/channel/composer?msg=2y4id3ZurNJHvDzhe) @lennertr there are a couple of things that may help you ...
There is the MultiOrg tutorial which covers the *Composer Aspects* of setting up a multiorg Fabric:
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
There is also a Stack Overflow Q/A on the subject of Organisation ACLs:
https://stackoverflow.com/questions/50680188/organization-based-restrictions-for-participant-identity-issuing-in-hyperledger/50681159#50681159
(You might want to review ACLs in general first, or the ACL tutorial in the Composer Docs.)
@rthatcher @mahoney1 please help https://chat.hyperledger.org/channel/composer?msg=EvKDLH6g4oN8vx27E
@rthatcher i order asset i want to add invoice filed in that invoice fields i want to add multiple fields how to add like that? can you help me out
@rthatcher i order asset i want to add invoice filed in that invoice fields i want to add multiple fields how to add like that? can you help me out @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=MuijyvznLrYTHGXPz) @VadimInshakov you can change the value of passed parameters. Perhaps there is some other issue with your code?
@VadimInshakov as @rthatcher wrote, sounds like you may be referencing the wrong var in your code; works as follows (eg) ```tx.quantity += 1;
tx.commodity.quantity = tx.quantity;
const assetRegistry = await getAssetRegistry('org.example.trading.Commodity'); blah blah ```
@VadimInshakov as @rthatcher wrote, sounds like you may be referencing the wrong var in your code; works as follows (eg) ``` tx.quantity += 1;
tx.commodity.quantity = tx.quantity;
const assetRegistry = await getAssetRegistry('org.example.trading.Commodity'); blah blah ```
@VadimInshakov as @rthatcher wrote, sounds like you may be referencing the wrong var in your code; works as follows (eg) ``` tx.quantity += 1;
tx.commodity.quantity = tx.quantity;
const assetRegistry = await getAssetRegistry('org.example.trading.Commodity'); blah blah ```
A question regarding permissions.acl: is it possible to allow a participant to see an asset but not one specific variable part of the asset?
[ ](https://chat.hyperledger.org/channel/composer?msg=wA9JPTQhhcjLtP5Rn) @lennertr no - the ACLs do not go down to the field level. Depending on your model requirements, you could possibly have a separate asset with the sensitive data and then use a relationship to it from the original asset.
Thanks for answering my questions @rthatcher :)
When writing relationships in acl is there something like
--> Or(Investor, Bank) owner
or should i use
--> Participant owner
@rthatcher @mahoney1 we can same state of assets in chaincode like so:
```
tx.from += 1;
await assetRegistry.updateAll([tx.from, tx.to]);
```
@rthatcher @mahoney1 we can same state of assets in chaincode like so:
```
tx.from += 1;
await assetRegistry.updateAll([tx.from, tx.to]);
```
But how to update *transaction registry*?
@rthatcher @mahoney1 we can same state of assets in chaincode like so:
```
tx.from += 1;
tx.to += 1;
await assetRegistry.updateAll([tx.from, tx.to]);
```
But how to update *transaction registry*?
@rthatcher @mahoney1 yes, we can update `from` and `to`, if they are assets. But how to update any transaction instance property?
@rthatcher @mahoney1 yes, we can update `from` and `to`, if they are `relationships` to assets. But how to update any transaction instance property?
[ ](https://chat.hyperledger.org/channel/composer?msg=3S5mwdiB8kSfJvHtu) @VadimInshakov No you can't edit a submitted transaction on the ledger
[ ](https://chat.hyperledger.org/channel/composer?msg=3S5mwdiB8kSfJvHtu) @VadimInshakov No you can't edit a submitted transaction
@lennertr its more like ` (myasset.investor.getIdentifier() == p.getIdentifier()` - see ACL tutorial for more examples https://hyperledger.github.io/composer/latest/tutorials/acl-trading
@lennertr its more like ` (myasset.investor.getIdentifier() == p.getIdentifier()` - see ACL tutorial for more examples https://hyperledger.github.io/composer/latest/tutorials/acl-trading - see also the [docs](https://hyperledger.github.io/composer/latest/reference/acl_language)
fyi all - reminder that the Community call is today at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3 - would be great to hear from you and hear your Composer stories, and use cases - etc agenda -> https://github.com/hyperledger/composer/wiki/Meeting-16th-Aug-2018 best regards Paul
Has joined the channel.
Hello everyone,
I've two participants eg: Owner & Buyer. And I've following questions.
1. How do I apply rules for this two participants.
2. Do I want to create two rules of same with different Participants with different names?
Eg: Rule1 -> Owner
Rule2 -> Buyer
Here both will have same set of rules.
Can this will be possible...
This I'm trying in it hyperledger composer
@PraneshGajendran should be able to extend both from an extended class (like BusinessParticipant) and use one set of rules
FYI Community call is in 17 minutes - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community
Are there any limitations at the rate at which Hyperledger-composer compared to Hyperledger fabric
Are there any limitations at the rate at which Hyperledger-composer compared to Hyperledger fabric in performing transactions
Has joined the channel.
Has joined the channel.
are you still supporting fabric 2.0?
Has joined the channel.
hello, has anyone successfully tried deploying fabric/composer to Heroku? I've deployed to AWS and Digital Ocean but was curious about Heroku, but I haven't seen much info on that anywhere
Hi , I have created a file npm.yaml . These are my file contents:
version: '2'
services:
npmregistry:
container_name: npmregistry
image: verdaccio/verdaccio
volumes:
- /home/repo:/verdaccio/storage/
ports:
- 4873:4873
When I run the command docker-compose -f npm.yaml up -d, I get the below error : ERROR: yaml.scanner.ScannerError: mapping values are not allowed here
in "./npm.yaml", line 8, column 11
hey guys, which tutorials are you using to learn mode in depth the programming of smart contracts and transactional functions in logic.js of composer ?
Has joined the channel.
hi how to run composer-playground in background?
@rthatcher asset order I have status field and I am doing one transaction order cancel is it possible to change the status of asset order with out giving asset reference
In transaction
[ ](https://chat.hyperledger.org/channel/composer?msg=6Mtwp9KToHFQtBT8F) @mahoney1 sorry I meant relationships in the .cto models file
[ ](https://chat.hyperledger.org/channel/composer?msg=6Mtwp9KToHFQtBT8F) @mahoney1 sorry I meant relationships in the .cto models file. Is there something like "--> Or(Bank, Investor) user" or "--> Participant user"
[ ](https://chat.hyperledger.org/channel/composer?msg=vxtdZjY3WjJe5y5ay) @angieology the supported versions of Composer and Fabric and covered in the GitHub Wiki, and Release notes:
https://github.com/hyperledger/composer/wiki
https://github.com/hyperledger/composer/releases
[ ](https://chat.hyperledger.org/channel/composer?msg=qyTNTrhcz8EEzJHi9) @deep123 - I don't know what that particular error is, but I have seen that yaml files are particular about formatting and spaces. You could try a Docker forum with this problem as it is not Composer specific.
If an asset is created without an optional value used can the optional value be added later on via a simple assetRegistry.update() call or is it necessary to remove the old asset and issue a new one with the missing value?
[ ](https://chat.hyperledger.org/channel/composer?msg=6edKRSWhuDPb7GA7a) @sureshtedla if you don't pass the reference, how will your Transaction logic know which order to cancel?
If you are passing other variables that uniquely identify the the Order you could run a Query to return the Order Id.
[ ](https://chat.hyperledger.org/channel/composer?msg=PsYBEFSyLinr6HDmH) @lennertr you are correct - you can update the optional field in a separate Transaction (and you can update other fields too - except the Id)
Has joined the channel.
`assetRegistry = await getAssetRegistry('org.acme.default.AuditedLoan');
for (var j=0;j
`assetRegistry = await getAssetRegistry('org.acme.default.AuditedLoan');
for (var j=0;j
```
assetRegistry = await getAssetRegistry('org.acme.default.AuditedLoan');
for (var j=0;j
```
assetRegistry = await getAssetRegistry('org.acme.default.AuditedLoan');
for (var j=0;j
```
async function createPool(tx) {
//check if loans are all unassigned
for (var i=0;i
```
async function createPool(tx) {
//check if loans are all unassigned
for (var i=0;i
@lennertr - without seeing the model I'm not sure - but maybe at the bottom this would help?
tx.loans*[j]*.associatedPool = newPool;
[ ](https://chat.hyperledger.org/channel/composer?msg=CP43crpWTK5EAnfK2) @rthatcher It worked , npm.yaml was not formatted correctly. Now, when I run the command docker-compose -f npm.yaml up -d, it pulls and downloads the images. When it creates npmregistry, I get this error: ERROR: for npmregistry Cannot start service npmregistry: b'Mounts denied: \r\nThe path /home/repo\r\nis not shared from OS X and is not known to Docker.\r\nYou can configure shared paths from Docker -> Preferences... -> File Sharing.\r\nSee https://docs.docker.com/docker-for-mac/osxfs/#namespaces for more info.\r\n.' I added /home path in Docker -> Preferences -> File Sharing. Then , I get : ERROR: for npmregistry Cannot start service npmregistry: b"error while creating mount source path '/home/repo': mkdir /home/repo: operation not supported"
ERROR: Encountered errors while bringing up the project.
ohhh what a rookie mistake :disappointed: thanks @rthatcher !!
[ ](https://chat.hyperledger.org/channel/composer?msg=MNTgTxCppA4uY2xia) @rthatcher @rthatcher Hi Thanks for quick reply consider in order asset i am having status and invoice filed In invoice transaction i have given order reference in order to update the status of order asset
[ ](https://chat.hyperledger.org/channel/composer?msg=MNTgTxCppA4uY2xia) @rthatcher @rthatcher Hi Thanks for quick reply consider in order asset i am having status and invoice filed In invoice transaction i have given order reference in order to update the status of order asset
[ ](https://chat.hyperledger.org/channel/composer?msg=MNTgTxCppA4uY2xia) @rthatcher @rthatcher Hi Thanks for quick reply consider in order asset i am having status and invoice filed In invoice transaction i have given order reference in order to update the status of order asset but in payment transaction i have given invoice i dont have order reference how to update order status by using invoice filed because invoice have order field?
[ ](https://chat.hyperledger.org/channel/composer?msg=MNTgTxCppA4uY2xia) @rthatcher @rthatcher Hi Thanks for quick reply consider in order asset i am having status and invoice filed In invoice transaction i have given order reference in order to update the status of order asset but in payment transaction i have given invoice i dont have order reference how to update order status by using invoice filed because invoice have order reference?
@rthatcher hi, is there a way to modify an existing user defined transaction entity?
@sureshtedla I think its best to post your question to [Stack Overflow](https://stackoverflow.com/questions/tagged/hyperledger-composer) ; with your model, your JSON and what you've tried/what you want to achieve
[ ](https://chat.hyperledger.org/channel/composer?msg=3wNCcLux3EuKMCqMG) @mahoney1 asset Order identified by orderNumber {
o String orderNumber
o String[] items
o String status
o String dispute
o String resolve
o String backorder
o String refund
o Integer amount
o String created
o String bought
o String cancelled
o String ordered
o String dateBackordered
o String requestShipment
o String delivered
o String delivering
o String disputeOpened
o String disputeResolved
o String paymentRequested
o String orderRefunded
o String approved
o String paid
--> Provider provider
--> Shipper shipper
--> Buyer buyer
--> Seller seller
--> FinanceCo financeCo
}
transaction Invoice {
o Integer Invoice number
--> Seller seller
--> Warehouse warehouse
}
@lennertr relationships are described here -> https://hyperledger.github.io/composer/latest/reference/cto_language eg `--> Bank bank` where `bank` is a means to refer to the related Bank account (etc)
@lennertr relationships are described here -> https://hyperledger.github.io/composer/latest/reference/cto_language eg `--> Bank bank` where `bank` is a means to refer to the related Bank account (etc), from the current resource
I have read composer runtime-api post (https://hyperledger.github.io/composer/latest/api/runtime-api)
but how can i send a request in a soap format, the following code is ok in node.js,
so what i need do to make it work well with composer js code?
var request = require('request');
let xml =
`
[ ](https://chat.hyperledger.org/channel/composer?msg=JMWyGahjgQMRyLsBM) @uber.twin do you mean the modeled transaction definition?
[ ](https://chat.hyperledger.org/channel/composer?msg=BbS3CkeSEijmovtJ2) @mahoney1 Could you give some further reply , thanks a lot !!
@touchingsoil 1. yes connection profile 2. current 'latest' Fabric supported by current Composer version (0.20.0) is Fabric 1.2 FYI. This [tutorial](https://github.com/mahoney1/test/blob/master/extend_multi_org_3_orgs-amended.md) shows how to add - it follows the multi-org (BYFN based) shown [here](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org) 3. as described in 2 above - you don't need to install (again) on existing peers, unless you have an upgraded bna
@touchingsoil on request - you can see more on call-outs (I assume this is from within your transaction logic) - with examples - here -> https://hyperledger.github.io/composer/latest/integrating/call-out
@mahoney1 https://hyperledger.github.io/composer/latest/integrating/call-out I have read this doc, but i still have difficult about how to custom the http head .
async function sample(commi)
{
let xml =
`
Hi , how to use IPFS in hyperledger composer , can anyone share usefull links regarding this ?
[ ](https://chat.hyperledger.org/channel/composer?msg=Woa2ri3jAtPeryQZJ) @mahoney1 no, just have another transaction perform an update operation over a previously stored transaction content
@uber.twin no, can't update a transaction already committed, only a transaction to 'correct' what was previously stored - on the ledger ..
@uber.twin no, can't update a transaction already committed, only a subsequent transaction to 'correct' what was previously stored - on the ledger ..
@mahoney1 thank you; other than that, is there a near prospect of being able to query from multiple registries and navigate relationships in a query?
@mahoney1 So the focus is still the actions about adding a new peer to existed org.
In my opinion, network install cmd acts on an org, so for a new peer under an existed org which have been already performed network install & start cmds.
But there is no cc on this peer,how can i install the cc (bna file in composer) ,because using network install cmd(again) on this existed org will receive error .
[ ](https://chat.hyperledger.org/channel/composer?msg=kXRrxfwK236DEHt8D) @touchingsoil I see, in which case its an easier task - from a Fabric perspective, this link should help https://stackoverflow.com/questions/46371470/how-to-add-a-new-peer-to-an-existing-hyperledger-fabric-network - then from a Composer perspective, this tutorial should help (Step Three onwards). With the newly modified connection profile (for your PeerAdmin),you can do a `composer network install` to have it install on the additional peer, then try pinging the business network (ie given that it is running on the channel, from previous).
[ ](https://chat.hyperledger.org/channel/composer?msg=kXRrxfwK236DEHt8D) @touchingsoil I see, in which case its an easier task - from a Fabric perspective, this link should help https://stackoverflow.com/questions/46371470/how-to-add-a-new-peer-to-an-existing-hyperledger-fabric-network - then from a Composer perspective, this [tutorial](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org.html) should help (Step Three onwards). With the newly modified connection profile (for your PeerAdmin),you can do a `composer network install` to have it install on the additional peer, then try pinging the business network (ie given that it is running on the channel, from previous).
[ ](https://chat.hyperledger.org/channel/composer?msg=kXRrxfwK236DEHt8D) @touchingsoil I see, in which case its an easier task - from a Fabric perspective, this link should help https://stackoverflow.com/questions/46371470/how-to-add-a-new-peer-to-an-existing-hyperledger-fabric-network - then from a Composer perspective, this [tutorial](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org.html) should help (Step Three onwards). With the newly modified connection profile (for your PeerAdmin),you can do a `composer network install` to have it install the business network / chaincode onto the additional peer, then try pinging the business network (ie given that it is running on the channel, from previous).
[ ](https://chat.hyperledger.org/channel/composer?msg=kXRrxfwK236DEHt8D) @touchingsoil I see, in which case its an easier task - from a Fabric perspective, this link should help https://stackoverflow.com/questions/46371470/how-to-add-a-new-peer-to-an-existing-hyperledger-fabric-network - then from a Composer perspective, this [tutorial](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org.html) should help (Step Three onwards). With the newly modified connection profile (for your PeerAdmin),you can do a `composer network install` to have it install the business network / chaincode onto the additional peer, wait a few seconds, then try pinging the business network (ie given that it is running on the channel, from previous).
Hi, I am trying to a piece of code to work on composer-playground.mybluemix.net. Here is a snippet of my code which is located at the top of my script file: ```
'use strict'
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
const connection = new BusinessNetworkConnection();
``` Problem is, when I try to run a test in playground (bluemix) on a transaction which is located within this script file, I get the error `ReferenceError: require is not defined`. What am I doing wrong here?
[ ](https://chat.hyperledger.org/channel/composer?msg=CP43crpWTK5EAnfK2) @rthatcher It worked , npm.yaml was not formatted correctly. Now, when I run the command docker-compose -f npm.yaml up -d, it pulls and downloads the images. When it creates npmregistry, I get this error: ERROR: for npmregistry Cannot start service npmregistry: b'Mounts denied: \r\nThe path /home/repo\r\nis not shared from OS X and is not known to Docker.\r\nYou can configure shared paths from Docker -> Preferences... -> File Sharing.\r\nSee https://docs.docker.com/docker-for-mac/osxfs/#namespaces for more info.\r\n.' I added /home path in Docker -> Preferences -> File Sharing. Then , I get : ERROR: for npmregistry Cannot start service npmregistry: b"error while creating mount source path '/home/repo': mkdir /home/repo: operation not supported"
ERROR: Encountered errors while bringing up the project.
[ ](https://chat.hyperledger.org/channel/composer?msg=CP43crpWTK5EAnfK2) @rthatcher Hi, I am not able to create the repo dir in home folder. In npm.yaml file, can I give the path as /Users/
[ ](https://chat.hyperledger.org/channel/composer?msg=CP43crpWTK5EAnfK2) @rthatcher Hi, I am not able to create the repo dir in home folder. In npm.yaml file, can I give the path as /Users/
[ ](https://chat.hyperledger.org/channel/composer?msg=CP43crpWTK5EAnfK2) @rthatcher Hi, I am not able to create the repo dir in home folder. In npm.yaml file, can I give the path as /Users/
[ ](https://chat.hyperledger.org/channel/composer?msg=CP43crpWTK5EAnfK2) @rthatcher Hi, I am not able to create the repo dir in home folder. In npm.yaml file, can I give the path as /Users/
[ ](https://chat.hyperledger.org/channel/composer?msg=CP43crpWTK5EAnfK2) @rthatcher Hi, I am not able to create the repo dir in home folder. In npm.yaml file, can I give the path as /Users/
@uber.twin You can have a read-only transaction (ie doesn't commit) that builds queries (or uses existing, named queries) for multiple registries and returns the results (eg. if calling from a client) - an example of something similar (for the latter) is shown here -> https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions -> you can use a `request` call to run a filter and resolve relationships (after executing the filter request)
[ ](https://chat.hyperledger.org/channel/composer?msg=6ueu86eokiNkhQHDe) @MarcelvandeKerkhof you can't use `requires` in a Transaction Processor function - and remove the `const` statements from your TP code, because that is only used when developing a client app using the JS APIs (in the TP, you're already connected to the runtime - ie don't need them)
[ ](https://chat.hyperledger.org/channel/composer?msg=n89oDb2v6JZbMT6jE) @mahoney1 Now, I get it. This is my first project, so not everything is very clear to me just yet. Thanks for your quick reply!
Has joined the channel.
can anyone tell me good resource to learn business modeling in hyperledger composer
@mahoney1 i want to create two banks and in each bank we will create different customers how to do this in composer hyperledger?
[ ](https://chat.hyperledger.org/channel/composer?msg=dFfA7eirfkKjWYduu) @mahoney1 sure, but I meant the possibility to specify more than one source registry in a named query. A projection made of specific fields can't be specified in a query either, the result set it's always made of full objects, isn't it?
Do you know any alternatives to the IBM Starter Plan in terms of application hosting?
@mahoney1 my last curiosity for now: is it possible to define an asset type agregating an array made of other asset type relationships?
@mahoney1 my last curiosity for now: is it possible to define an asset type aggregating an array made of other asset type relationships?
@mahoney1 my last curiosity for now: is it possible to define an asset type aggregating an array made of other asset type relationships? meaning is an array of relationships a valid field of an asset?
[ ](https://chat.hyperledger.org/channel/composer?msg=b9XA8ut43GgEPcuDg) @uber.twin yes, perfectly valid - I posted an example of this, in the ANSWER on this Stack Overflow -> https://stackoverflow.com/questions/51654316/how-to-make-component-item-change-owner-automatically-with-its-parent/51671631#51671631
[ ](https://chat.hyperledger.org/channel/composer?msg=b9XA8ut43GgEPcuDg) @uber.twin yes, perfectly valid - I posted an example of this, in the ANSWER on this Stack Overflow -> https://stackoverflow.com/questions/51654316/how-to-make-component-item-change-owner-automatically-with-its-parent/51671631#51671631 (check out the model in the question)
@uber.twin can only specify one named registry using named query, and yes.
@sureshtedla something like ```participant Bank identified by bankId {
o String bankId
o Bank name
o String code
}
participant Customer identified by custId {
o String custId
o String panId
o String firstName
o String lastName
o String contactNo
o String residence
--> Bank bank
--> Account account // or --> Account[] accounts
}
asset Account identified by accountNum {
o String accountNum
--> Customer accountholder
o AccountType accountType
o DateTime creationdate
}
Bank and AccountType are enums for a fixed set of choices etc ```
[ ](https://chat.hyperledger.org/channel/composer?msg=ggDoSgiEf6Gx3GKt4) @mahoney1 Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=cDou9fmrAub3KGRpp) @mahoney1 Thanks
@rizwan92 in the docs https://hyperledger.github.io/composer/latest/reference/cto_language and also resources here https://www.youtube.com/watch?v=S2S5cEcmx7Q or https://www.youtube.com/watch?v=m34wOG5yjyE
@MarcelvandeKerkhof good luck, happy learning :-)
@mahoney1 I have small doubt asset order identified by orderNumber{ orderNumber , invoice status,statusfield....etc}, transaction Invoice { orderNumber, invoicenumber,statusfield -->Order order}, transaction payment {invoicenumber,statusfield], seller send invoice to buyer by using transaction invoice, after that buyer do the payment by using the transaction payment but the thing is in transaction transaction payment dont have order reference to update the status what to do?
Has joined the channel.
when buyer do the payment status of order should change but payment dont know the order but it knows invoice number? what to do help me out@mahoney1
@mahoney1 @rthatcher
@sureshtedla `transaction payment {
--> Order order
}` or so you can reference it. Would have thought Invoice status (not Order) would be updated for payment of an Invoice.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZCbi66WWQh5FAwJjZ) @mahoney1 for that also we need order reference right
[ ](https://chat.hyperledger.org/channel/composer?msg=ZCbi66WWQh5FAwJjZ) @mahoney1 for that also we need order reference in transaction payment right because invoice is the field of order asset?
Hi,
I tried to start a composer network under a corporate proxy but I had some issues. I went on internet to have some answers (set npm proxy in the npmrc file etc...) but nothing seems to work.
I have this error message :
`Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-08-17T15_37_29_403Z-debug.log
"
Command failed
`
Any help would be great, thank you.
Hi,
I tried to start a composer network under a corporate proxy but I had some issues. I went on internet to have some answers (set npm proxy in the npmrc file etc...) but nothing seems to work.
I have this error message :
```
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-08-17T15_37_29_403Z-debug.log
"
Command failed
```
Any help would be great, thank you.
Hi,
How could I upgrade (0.19 -> 0.20) my composer runtime on Docker?
I upgraded my composer tools on my computer and now when I try to do any operation e.g. composer network ping --card admin@tutorial-network I get:
Error: Composer runtime (0.19.0) is not compatible with client (0.20.0)
@ndatebayo this is the explanation of why it goes out to npm registry https://stackoverflow.com/questions/49652193/hyperledger-composer-v1-1unable-to-instantiate-chaincode and this is normal solution https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer?rq=1 (you need to create an npmrcFile and use settings like https-proxy = "http://yourproxy:port"
proxy = "http://yourproxy:port" in your config file, to get out through your proxy etc) - then supply the npmrcFile to the `composer network install` (not start) command - also [this guide](https://jjasonclark.com/how-to-setup-node-behind-web-proxy/) for setting up NPM behind corporate proxies
@JackMalinowski see the answer in this Stack OVerflow https://stackoverflow.com/questions/51875604/deploying-a-hyperledger-composer-blockchain-business-network-to-hyperledger-fabr/51875874#51875874
@sureshtedla yup, correct
[ ](https://chat.hyperledger.org/channel/composer?msg=c8EHJTu4d5HgonS4v) @mahoney1 composer network install went OK.
but upgrade returns an error:
composer network upgrade -c PeerAdmin@hlfv1 -n carauction -V 0.0.12
Upgrading business network carauction to version 0.0.12
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=c8EHJTu4d5HgonS4v) @mahoney1 composer network install went OK.
but upgrade returns an error:
[code]composer network upgrade -c PeerAdmin@hlfv1 -n carauction -V 0.0.12
Upgrading business network carauction to version 0.0.12
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Command failed[/code]
[ ](https://chat.hyperledger.org/channel/composer?msg=c8EHJTu4d5HgonS4v) @mahoney1 composer network install went OK.
but upgrade returns an error:
composer network upgrade -c PeerAdmin@hlfv1 -n carauction -V 0.0.12
Upgrading business network carauction to version 0.0.12
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Command failed
Has joined the channel.
How could I manually install composer in the Azure environment?
I have used the "Hyperledger Fabric Consortium" template to set up the network. Unfortunately, this template doesn't include Composer out of the box.
Has joined the channel.
@rthatcher @mahoney1 when i stop the fabric network my txns data and chain code installed on peers is getting lost what should I do? How to restore them
Has left the channel.
Has joined the channel.
Hi,
I am new to HyperLedger technologies and I'm trying to install a business network using `composer network install` on a fabric network composed of a root CA (a fabric-ca image), an orderer and a peer.
This fabric network is setup with mutual TLS activated on both the orderer and the peer. The `network install` command gives me this result:
```
Installing business network. This may take a minute...E0819 14:11:04.530282900 10288 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
```
I checked the orderer's log, and it says:
```
2018-08-19 12:10:47.190 UTC [grpc] Printf -> DEBU 511 grpc: Server.Serve failed to complete security handshake from "149.202.218.181:38498": EOF
```
I'm using `composer v0.20.0` and `fabric 1.1`.
In order to activate the TLS on `network install`, I did the following:
in `connection.yaml` (relevant sections):
```yaml
certificateAuthorities:
rca-appi:
url: https://149.202.218.181:7054
caName: rca-appi
httpOptions:
verify: false
tlsCACerts:
path: rca-tls-cert.pem
orderers:
orderer0-appi:
url: grpcs://149.202.218.181:7050
grpcOptions:
ssl-target-name-override: orderer0 # this name must matches the certificate's CN ?
tlsCACerts:
#path: orderer-tls-cert.pem
pem: "-----BEGIN CERTIFICATE-----\nMIICVzCCAf6gAwIBAgIUbMElH1so3Xu4kWMMkbS5lWDUH/swCgYIKoZIzj0EAwIw\nYDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMREwDwYDVQQDEwhyY2EtYXBw\naTAeFw0xODA4MTkxMTQyMDBaFw0xOTA4MTkxMTQyMDBaMGQxCzAJBgNVBAYTAlVT\nMRcwFQYDVQQIEw5Ob3J0aCBDYXJvbGluYTEUMBIGA1UEChMLSHlwZXJsZWRnZXIx\nDzANBgNVBAsTBkZhYnJpYzEVMBMGA1UEAxMMNjFhZWU5M2ZlZWFmMFkwEwYHKoZI\nzj0CAQYIKoZIzj0DAQcDQgAET7xgKHMSyu0j+YK13fZ+e3WFPPTmMSL10Q4XMzzE\n/KE5VbiZDu4pDKG86umue/VOQpHKw0Sm97Yu/I/1y6MARaOBkTCBjjAOBgNVHQ8B\nAf8EBAMCA6gwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB\n/wQCMAAwHQYDVR0OBBYEFBkYqUm6BOxHW0CeI9JA8knEVvPxMB8GA1UdIwQYMBaA\nFPBVIxQBrqOcVZuXtbhMWY+t+mgCMA8GA1UdEQQIMAaHBJXK2rUwCgYIKoZIzj0E\nAwIDRwAwRAIgYH4OFmgVSCCXAMQpiWC4qaPZpeBVh4haY1AvIhPxY8gCIHRJpCXu\nAtCTK/6hXeggu2aEMhB4H1LxaRlfCLbJUYv5\n-----END CERTIFICATE-----\n"
peers:
peer0-appi:
url: grpcs://149.202.218.181:7050
eventUrl: grpcs://149.202.218.181:7053
grpcOptions:
ssl-target-name-override: peer0
tlsCACerts:
path: peer-tls-cert.pem
```
What bugs me is the logs from the orderer. I expected something like a `bad certificate` error but i got this mysterious `EOF`. Did I miss something ? thank you
@jesro Composer doesn't support fabrics with Mutual TLS enabled (ie where the client has to present a certificate to the server for validation as opposed to only the client verifying the server cert for TLS) . You can still have TLS, just no verifying of a client side certificate on the server for TLS connectivity
@davidkel Thank you very much for your answer
Has joined the channel.
Hi. I am trying to install hyperledger composer . I cannot solve the problem. startFabric.sh
docker logs peer0.org1.example.com
2018-08-19 12:49:52.056 UTC [viperutil] getKeysRecursively -> DEBU 001 Found map[string]interface{} value for peer.BCCSP
2018-08-19 12:49:52.057 UTC [viperutil] getKeysRecursively -> DEBU 002 Found map[string]interface{} value for peer.BCCSP.SW
2018-08-19 12:49:52.057 UTC [viperutil] unmarshalJSON -> DEBU 003 Unmarshal JSON: value cannot be unmarshalled: invalid character 'S' looking for beginning of value
2018-08-19 12:49:52.057 UTC [viperutil] getKeysRecursively -> DEBU 004 Found real value for peer.BCCSP.SW.Hash setting to string SHA2
2018-08-19 12:49:52.057 UTC [viperutil] unmarshalJSON -> DEBU 005 Unmarshal JSON: value is not a string: 256
2018-08-19 12:49:52.057 UTC [viperutil] getKeysRecursively -> DEBU 006 Found real value for peer.BCCSP.SW.Security setting to int 256
2018-08-19 12:49:52.057 UTC [viperutil] getKeysRecursively -> DEBU 007 Found map[string]interface{} value for peer.BCCSP.SW.FileKeyStore
2018-08-19 12:49:52.057 UTC [viperutil] unmarshalJSON -> DEBU 008 Unmarshal JSON: value cannot be unmarshalled: unexpected end of JSON input
2018-08-19 12:49:52.057 UTC [viperutil] getKeysRecursively -> DEBU 009 Found real value for peer.BCCSP.SW.FileKeyStore.KeyStore setting to string
2018-08-19 12:49:52.057 UTC [viperutil] getKeysRecursively -> DEBU 00a Found map[string]interface{} value for peer.BCCSP.PKCS11
2018-08-19 12:49:52.057 UTC [viperutil] unmarshalJSON -> DEBU 00b Unmarshal JSON: value is not a string:
@jesro Also, Composer 0.20.x requires Fabric 1.2
@jesro Also, Composer 0.20.x requires Fabric 1.2, as noted here: https://github.com/hyperledger/composer/releases
Hey in the transaction processor function, how do I get the `identifier` of the participant who sent the transaction? In `permissions.acl` I can simple do `p.getIdentifier()` but cant find a similar command for the trasnactions. Any idea?
[ ](https://chat.hyperledger.org/channel/composer?msg=eSXSxMagCX64AKnio) @varunagarwal you might find something useful here: https://hyperledger.github.io/composer/latest/api/runtime-api
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=eSXSxMagCX64AKnio) @varunagarwal getCurrentParticipant() - see -> https://hyperledger.github.io/composer/latest/business-network/programmatic-access-control
[ ](https://chat.hyperledger.org/channel/composer?msg=oEmFnDJjHQNbZ9Fc2) @sureshtedla see answer 2 on Stack Overflow -> https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
[ ](https://chat.hyperledger.org/channel/composer?msg=8t8JkiLCg3k26aN2s) @mahoney1 Thank you
Has joined the channel.
Hello! I am trying to build an application using Hyperledger Composer - I am a newbie but I quickly learnt that the js chaincode cannot take imports. ie: I am able to write my transaction processor functions (logic.js) and able to invoke it from the composer rest server, but I am not able to add any imports. I am aware that older versions are not supported, but it is possible to do require( now?
https://github.com/hyperledger/composer/issues/3960 - Similar issue
[ ](https://chat.hyperledger.org/channel/composer?msg=DqyeH3XuRu3dqcJWg) @rosh08 No, it is not possible to use _require_ in a transaction processor function
Can binary data be stored and is it advisable
Has joined the channel.
Has joined the channel.
Hi I am checking performance for adding asset as I am checking this can be applied to production line or not.
I am suing following code:
addEntities: async function() {
var start = 15000;
var dataNumber = 1200;
var loopNumber = 400;
var end = start + dataNumber;
var sd = new Date();
console.log(sd.getHours()+':'+sd.getMinutes()+':'+sd.getSeconds()+'.'+sd.getMilliseconds());
var tasks = [];
for(var i = start; i
Hi I am checking performance for adding asset as I am checking this can be applied to production line or not.
I am suing following code:
`addEntities: async function() {
var start = 15000;
var dataNumber = 1200;
var loopNumber = 400;
var end = start + dataNumber;
var sd = new Date();
console.log(sd.getHours()+':'+sd.getMinutes()+':'+sd.getSeconds()+'.'+sd.getMilliseconds());
var tasks = [];
for(var i = start; i
createAsset function calles http post request. And it shows about 8 TPS. Is it normal?
I believe the performance is too low. I am using default startFabric network(hlfv11) and composer 0.19.12.
Could you give some advice to improve the performance? It takes about 150secs to add 1200 entities.
@harryc Actually you run `createAsset` sequencely in your logic,
@harryc Actually you run `createAsset` sequencely in your logic, each loop will wait `await this.createAsset('/Entity', 'model.Entity', entityData);` to complete , and this operation costs at least a block duration which is 2s by default in fabric-dev-server, you should use `Prominse.all()' instead
@harryc Actually you run `createAsset` sequencely in your logic, each loop will wait `await this.createAsset('/Entity', 'model.Entity', entityData);` to complete , and this operation costs at least a block duration which is 2s by default in fabric-dev-server, you should use `Promise.all()' instead
@harryc Actually you run `createAsset` sequencely in your logic, each loop will wait `await this.createAsset('/Entity', 'model.Entity', entityData);` to complete , and this operation costs at least a block duration which is 2s by default in fabric-dev-server, you should use `Promise.all()` instead
@harryc Actually you run `createAsset` sequentially in your logic, each loop will wait `await this.createAsset('/Entity', 'model.Entity', entityData);` to complete , and this operation costs at least a block duration which is 2s by default in fabric-dev-server, you should use `Promise.all()` instead
Hi, I am trying to create a npm.yaml file. In npm.yaml file, can I give the path as /Users/
Hi, I am trying to create a npm.yaml file. In npm.yaml file, can I give the path as /Users/
@labcoinpoc I tried to use Promise, but it caused some errors due to to many requests. And that await line will be called if((i-start)%loopNumber === loopNumber - 1) is true. That is my alternative for error from using Promise.
When I tried to wait for all createAsset, it took 2-3secs per asset. It was terrible. After using async like above, it shows about 8 TPS (1200 transaction with 151seconds
@harryc yes create too many promises will cause `Max Event Emitter` warning, https://nodejs.org/docs/latest/api/events.html#events_emitter_setmaxlisteners_n emitter.setMaxListeners() may solve this
```
By default EventEmitters will print a warning if more than 10 listeners are added for a particular event. This is a useful default that helps finding memory leaks. Obviously, not all events should be limited to just 10 listeners. The emitter.setMaxListeners() method allows the limit to be modified for this specific EventEmitter instance. The value can be set to Infinity (or 0) to indicate an unlimited number of listeners.
```
In my project in EC2 the tps is about 70tx/s
@labcoinpoc Thanks, let me try to use this. but it seems I need to change sever side code. which instance model do you use for the project?
my own logic
@labcoinpoc sorry for ambiguous questoin :) which aws instance model are you using for example t2.large ...
it's `t2.large` I have 4 peers and order,couchDB, web server etc. run in one EC2 instance
so 70tx/s may not be a good performance of hyperledger
@labcoinpoc thanks for sharing your information. I am trying to find the point to add your recommendation. Where should I add the configuration of EventEmitters? I am not good at node.js :(
Hi, I have included the npm.yaml file and npmConfig.txt file. Now, when I start the network, I get the following error : Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Command failed
@deep123 sounds like you are trying to use composer 0.19.x with a fabric 1.2 network
@deep123 sounds like you are trying to use composer 0.20.x with a fabric 1.1 network
@deep123 sounds like you are trying to use composer 0.20.x with a fabric 1.1 network. That won't work. 0.20 only works with fabric 1.2
[ ](https://chat.hyperledger.org/channel/composer?msg=pFcSmxiBXggLXJZJi) @davidkel Thanks for the reply. I am following the example from here https://github.com/IBM/customer-loyalty-program. I am using the downloadFabric.sh script from fabric-dev-sers folder. Should I update the fabric version in downloadFabric.sh to 1.2?
[ ](https://chat.hyperledger.org/channel/composer?msg=pFcSmxiBXggLXJZJi) @davidkel Thanks for the reply. I am following the example from here https://github.com/IBM/customer-loyalty-program. I am using the downloadFabric.sh script from fabric-dev-servers folder. Should I update the fabric version in downloadFabric.sh to 1.2?
[ ](https://chat.hyperledger.org/channel/composer?msg=pFcSmxiBXggLXJZJi) @davidkel Thanks for the reply. I am following the example from here https://github.com/IBM/customer-loyalty-program. Where can I make the changes so that Fabric 1.2 gets downloaded?
[ ](https://chat.hyperledger.org/channel/composer?msg=pFcSmxiBXggLXJZJi) @davidkel Thanks for the reply. I am following the example from here https://github.com/IBM/customer-loyalty-program. Should I update the script in path fabric-dev-servers/fabric-scripts/hlfv11/downloadFabric.sh ?
[ ](https://chat.hyperledger.org/channel/composer?msg=pFcSmxiBXggLXJZJi) @davidkel Thanks for the reply. I am following the example from here https://github.com/IBM/customer-loyalty-program. Should I update the script in path fabric-dev-servers/fabric-scripts/hlfv11/downloadFabric.sh to download version 1.2?
Hi, I have included npm.yaml file and npmConfig.txt file. When I start the business network, I get the following error: Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
npm.yaml file : version: '2'
services:
npmregistry:
container_name: npmregistry
image: verdaccio/verdaccio
volumes:
- /Users/
Hey there! I have a question regarding the permissions.acl. If I want that a participant can use a defined transaction function to update an asset is it possible to restrict the participant from updating it directly? So updating is just possible through the transaction function?
@lennertr Yes it is possible https://hyperledger.github.io/composer/latest/reference/acl_language has a example:
```
rule SampleConditionalRuleWithTransaction {
description: "Description of the ACL rule"
participant(m): "org.example.SampleParticipant"
operation: READ, CREATE, UPDATE
resource(v): "org.example.SampleAsset"
transaction(tx): "org.example.SampleTransaction"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}
```
@lennertr Yes it is possible https://hyperledger.github.io/composer/latest/reference/acl_language has an example:
```
rule SampleConditionalRuleWithTransaction {
description: "Description of the ACL rule"
participant(m): "org.example.SampleParticipant"
operation: READ, CREATE, UPDATE
resource(v): "org.example.SampleAsset"
transaction(tx): "org.example.SampleTransaction"
condition: (v.owner.getIdentifier() == m.getIdentifier())
action: ALLOW
}
```
Ah thank you!!
Has joined the channel.
Hi, I need to retrieve and print DateTime value from getassetRegistry , where i get [Object, Object ] for field which has DateTime as datatype , how can i parse that Object to get my date value ? Thanks in advance .
@deep123 the latest version of fabric-dev-servers will create a fabric 1.2 network by default
@deep123 the latest version of fabric-dev-servers will create a fabric 1.2 network by default, but it's upto you whether you want/need to move to fabric 1.2 or go back to composer 0.19 with a fabric 1.1 network
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Esw64vxufa78GZwi8) @mahoney1 Hi, the problem is that I've already set up npm before running composer. I also used this command to set up Docker :
```
printf "[Service]\nEnvironment=HTTP_PROXY=proxy:port\nEnvironment=HTTPS_PROXY=http://proxy:port" > /etc/systemd/system/docker.service.d/10_docker_proxy.conf
```
I really don't know where the problem comes from
hey guys, I have an issue with the new composer v.20 and fabric 1.2.0 that I cannot install a network - I get the following errors when doing composer network install of a new .BNA file
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
composer network install --card PeerAdmin@hlfv1 --a /home/user/newnetwork.bna
Has joined the channel.
and when I start the 1.2.0 Fabric I get this error repetated in the console: Unmarshal JSON: value cannot be unmarshalled: invalid character 'S' looking for beginning of value
Hi guys , install not working
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
composer network
@Mahadream can you post what your version is (`composer -v`) and output of `docker ps` too thanks
@Mahadream can you post what your version is ( `composer -v` ) and output of `docker ps` too thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=opT2QtcHA5v3sM5ui) @Mahadream what version of composer are you running? ( ` composer -v ` ) The format of the command you are using looks like v0.19 or v0.20 , but you r terminal output suggests an older version - maybe v0.16 ?
Has joined the channel.
@rthatcher @mahoney1 - v0.16.3
@rthatcher - i need to upgrade my composer version v0.16 to 0.19 or 0.20
?
If a dev environment, suggest to `npm uninstall -g
@Mahadream If a dev environment, suggest to `npm uninstall -g
@Mahadream - recommend going to 0.20.0 - has latest fixes/enhancements - requires Fabric 1.2 (default Fabric for this version)
user@server:~$ composer network
composer network
[ ](https://chat.hyperledger.org/channel/composer?msg=opT2QtcHA5v3sM5ui) @Mahadream Hi Mahadream there is no deploy in the new version
@Zeljko Milinovic you need one 'dash `-a` not two `--a` (which is reserved for long name option)
Thanks Mahoney
I think I can try the latest dev enviroment
should I deinstall all of the packages and install npm install -g composer-cli@0.20
althpough I have already the version 0.20
@Zeljko Milinovic if you are already at 0.20.0 , don't see the need to re-install ? You'll need to upgrade any business networks (eg 0.19.x) - see query tutorial Step Three and Four for steps to upgrade - fyi creates new BN container - and lastly you need Fabric 1.2 for 0.20.0 (which I'm guessing you have, just saying)
[ ](https://chat.hyperledger.org/channel/composer?msg=qLg86xgBJQcepaXxe) @HarshiChandraSekar there's an example, of taking the input transaction timestamp (datetime) and setting it on the asset --> https://stackoverflow.com/questions/43656164/getting-timestamps-in-deterministic-way-in-hyperledger-composer-transactions
[ ](https://chat.hyperledger.org/channel/composer?msg=qLg86xgBJQcepaXxe) @HarshiChandraSekar there's an example (see answer from 'Nikolay' in the link) , of taking the input transaction timestamp (datetime) and setting it on the asset --> https://stackoverflow.com/questions/43656164/getting-timestamps-in-deterministic-way-in-hyperledger-composer-transactions
@mahoney1 - Yes I have Fabric 1.20 - but I am also having some strange issues also on v.1 fabric when starting an empty business network created with yo generator, also having an issue with This identity is not an admin over composer
a sample network works ok
on composer v.19 and fabric 1.11
but an empty network gets this : ✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Hi, I have created npm.yaml file and npmConfig.txt file. When I start the business network, I get the following error: Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
Hi, I have created npm.yaml file and npmConfig.txt file. When I start the business network, I get the following error: Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed . Can you please help me with this.
npm.yaml file : version: '2'
services:
npmregistry:
container_name: npmregistry
image: verdaccio/verdaccio
volumes:
- /Users/
Hi, I have included npm.yaml file and npmConfig.txt file. When I start the business network, I get the following error: Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
Hi, I have included npm.yaml file and npmConfig.txt file. When I start the business network, I get the following error: Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed npm.yaml file : version: '2'
npm.yaml file : version: '2'
services:
npmregistry:
container_name: npmregistry
image: verdaccio/verdaccio
volumes:
- /Users/
Hi, I have included npm.yaml file and npmConfig.txt file. When I start the business network, I get the following error: Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed npm.yaml file : version: '2'
npm.yaml file : version: '2'
services:
npmregistry:
container_name: npmregistry
image: verdaccio/verdaccio
volumes:
- /Users/
Hi, I have included npm.yaml file and npmConfig.txt file. When I start the business network, I get the following error: Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
npm.yaml file : version: '2'
services:
npmregistry:
container_name: npmregistry
image: verdaccio/verdaccio
volumes:
- /Users/
Hi, I have included npm.yaml file and npmConfig.txt file. When I start the business network, I get the following error: Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
npm.yaml file : version: '2'
services:
npmregistry:
container_name: npmregistry
image: verdaccio/verdaccio
volumes:
- /Users/
@Zeljko Milinovic the admins are not the same in both environments (1.1, 1.2) - generating an app should be straightfwd, as shown here -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial#generating-an-application - good luck!
Hey I have a problem using the participantRegistry:
```
var currentParticipant = getCurrentParticipant();
if (currentParticipant.getFullyQualifiedType() !== 'org.acme.abc.Investor') {
throw new Error('Transaction can only be submitted by a Investor');
}
var participantRegistry = await getParticipantRegistry(currentParticipant.getFullyQualifiedType());
var investor = participantRegistry.get(currentParticipant.getIdentifier());
```
The obtained investor object is empty. Neither the variables (investor.name) nor the relationships (investor.money.quantity) are available through the investor obejct. Can someone help me?
[ ](https://chat.hyperledger.org/channel/composer?msg=8tsaJ9nYE8gjcASHx) @mahoney1 My CTO file is asset Instrument identified by instrumentId {o String instrumentId o DateTime insduedate} In a nested asset creation case i.e I create a asset and while creating another asset i have to retrieve the asset and it's properties Viz instrumentid and insduedate, I am able to retrieve instrumentId and other properties but DateTime properties are unable resulting in Object,I am using getAssetRegistry() to retrieve the asset, any Hints on how to handle DateTime datatype of composer in nodejs will be helpful.
[ ](https://chat.hyperledger.org/channel/composer?msg=7LaSWQcRpopJTKS9i) @mahoney1 Sorry mahoney1 earlier quoted a diff one, for the same question,My CTO file is asset Instrument identified by instrumentId {o String instrumentId o DateTime insduedate} In a nested asset creation case i.e I create a asset and while creating another asset i have to retrieve the asset and it's properties Viz instrumentid and insduedate, I am able to retrieve instrumentId and other properties but DateTime properties are unable resulting in Object,I am using getAssetRegistry() to retrieve the asset, any Hints on how to handle DateTime datatype of composer in nodejs will be helpful.
I am using the JWT inorder to authenticate the composer rest server, I am using two different tokens to access the composer rest server wallet but I see the same card set to default for both the tokens. Please help
@mahoney1 Hi, considering there is a need for a Transaction type and an Asset type to have common fields. Wouldn't it make sense to have an abstract type (like the Concept) which can be inherited both by a Transaction and an Asset? Actually it could be a valid possible abstract supertype of any CTO stereotype(Participant, Transaction, Asset, ...). I know the Concept can be aggregated by any type definition, but an inheritance alternative could handy too.
@mahoney1 Hi, consider there is a need for a Transaction type and an Asset type to have common fields. Wouldn't it make sense to have an abstract type (like the Concept) which can be inherited both by a Transaction and an Asset? Actually it could be a valid possible abstract supertype of any CTO stereotype(Participant, Transaction, Asset, ...). I know the Concept can be aggregated by any type definition, but an inheritance alternative could handy too.
@mahoney1 Hi, consider there is a need for a Transaction type and an Asset type to have common fields. Wouldn't it make sense to have an abstract type (like the Concept) which can be inherited both by a Transaction and an Asset? Actually it could be a valid possible abstract supertype of any CTO stereotype(Participant, Transaction, Asset, ...). I know the Concept can be aggregated by any type definition, but an inheritance alternative could be handy too.
Is the composer version from the online playground up2date?
Calling:
```
var currentParticipant = getCurrentParticipant();
var participantRegistry = await getParticipantRegistry(currentParticipant.getFullyQualifiedType());
var investor = await participantRegistry.resolve(currentParticipant.getIdentifier());
```
Results in:
TypeError: participantRegistry.resolve is not a function
@lennertr `resolve, resolveAll` are not available in TP functions (they are from composer-client FYI) - see https://github.com/hyperledger/composer/issues/3454
@mahoney1 - how can I debug the composer network start, I have added the --loglevel DEBUG but wanted to see, because I cannot start new networks get always No valid responses from any peers
@Zeljko Milinovic docker logs
@uber.twin yes, you could conceivably have an abstract type of common fields, then inherit in whatver classes you choose in your example.
@HarshiChandraSekar not sure why you can't retrieve the other DateTime properties from `Instrument` like the other fields - if you're setting it, you can see an example here -in the sample networks on handling it -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L145
@HarshiChandraSekar not sure why you can't retrieve the other DateTime property (ies) from `Instrument` like the other fields - if you're setting it, you can see an example here -in the sample networks on handling it -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L145
@mahoney1 - It starts but it just hangs on an empty network
2018-08-20 12:20:54.586 UTC [couchdb] encodePathElement -> DEBU d7b Entering encodePathElement() string=empty-business-network
2018-08-20 12:20:54.586 UTC [couchdb] encodePathElement -> DEBU d7c Exiting encodePathElement() encodedStr=empty-business-network
2018-08-20 12:20:54.586 UTC [couchdb] handleRequest -> DEBU d7d Entering handleRequest() method=GET url=http://couchdb:5984/composerchannel_lscc/empty-business-network?attachments=true
2018-08-20 12:20:54.587 UTC [couchdb] handleRequest -> DEBU d7e HTTP Request: GET /composerchannel_lscc/empty-business-network?attachments=true HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2018-08-20 12:20:54.588 UTC [couchdb] handleRequest -> DEBU d7f Couch DB Error:not_found, Status Code:404, Reason:missing
2018-08-20 12:20:54.588 UTC [couchdb] ReadDoc -> DEBU d80 Document not found (404), returning nil value instead of 404 error
2018-08-20 12:20:54.588 UTC [chaincode] HandleGetState -> DEBU d81 [473362e8] No state associated with key:
empty-business-network. Sending RESPONSE with an empty payload
2018-08-20 12:20:54.588 UTC [chaincode] HandleTransaction -> DEBU d82 [473362e8] Completed GET_STATE. Sending RESPONSE
2018-08-20 12:20:54.588 UTC [shim] func1 -> DEBU d83 [473362e8]Received message RESPONSE from peer
2018-08-20 12:20:54.588 UTC [shim] handleMessage -> DEBU d84 [473362e8] Handling ChaincodeMessage of type: RESPONSE(state:ready)
2018-08-20 12:20:54.588 UTC [shim] sendChannel -> DEBU d85 [473362e8] before send
2018-08-20 12:20:54.588 UTC [shim] sendChannel -> DEBU d86 [473362e8] after send
2018-08-20 12:20:54.588 UTC [shim] handleReady -> DEBU d87 [473362e8] Received RESPONSE, communicated (state:ready)
2018-08-20 12:20:54.588 UTC [shim] handleGetState -> DEBU d88 [473362e8] GetState received payload RESPONSE
2018-08-20 12:20:54.588 UTC [shim] handlePutState -> DEBU d89 [473362e8] Sending PUT_STATE
2018-08-20 12:20:54.588 UTC [chaincode] handleMessage -> DEBU d8a [473362e8] Fabric side handling ChaincodeMessage of type: PUT_STATE in state ready
2018-08-20 12:20:54.588 UTC [chaincode] HandleTransaction -> DEBU d8b [473362e8] handling PUT_STATE from chaincode
2018-08-20 12:20:54.588 UTC [chaincode] HandleTransaction -> DEBU d8c [473362e8] Completed PUT_STATE. Sending RESPONSE
2018-08-20 12:20:54.588 UTC [shim] func1 -> DEBU d8d [473362e8]Received message RESPONSE from peer
2018-08-20 12:20:54.588 UTC [shim] handleMessage -> DEBU d8e [473362e8] Handling ChaincodeMessage of type: RESPONSE(state:ready)
2018-08-20 12:20:54.588 UTC [shim] sendChannel -> DEBU d8f [473362e8] before send
2018-08-20 12:20:54.588 UTC [shim] sendChannel -> DEBU d90 [473362e8] after send
2018-08-20 12:20:54.588 UTC [shim] handleReady -> DEBU d91 [473362e8] Received RESPONSE, communicated (state:ready)
2018-08-20 12:20:54.588 UTC [shim] handlePutState -> DEBU d92 [473362e8] Received RESPONSE. Successfully updated state
2018-08-20 12:20:54.588 UTC [lscc] putChaincodeCollectionData -> DEBU d93 No collection configuration specified
2018-08-20 12:20:54.588 UTC [shim] func1 -> DEBU d94 [473362e8] Transaction completed. Sending COMPLETED
2018-08-20 12:20:54.588 UTC [shim] triggerNextState -> DEBU d95 [473362e8] send state message COMPLETED
2018-08-20 12:20:54.588 UTC [chaincode] handleMessage -> DEBU d96 [473362e8] Fabric side handling ChaincodeMessage of type: COMPLETED in state ready
2018-08-20 12:20:54.588 UTC [chaincode] Notify -> DEBU d97 [473362e8] notifying Txid:473362e8ecb8e32f395855831427bf87146fb494fd7f2911492050dbe33d0624, channelID:composerchannel
2018-08-20 12:20:54.588 UTC [chaincode] Execute -> DEBU d98 Exit
2018-08-20 12:20:54.589 UTC [ccprovider] NewCCContext -> DEBU d99 NewCCCC(chain=composerchannel,chaincode=empty-business-network,version=0.0.1,txid=473362e8ecb8e32f395855831427bf87146fb494fd7f2911492050dbe33d0624,syscc=false,proposal=0xc421d79180,canname=empty-business-network:0.0.1)
2018-08-20 12:20:54.589 UTC [chaincode] func1 -> DEBU d9a chaincode empty-business-network:0.0.1 is being launched
2018-08-20 12:20:54.589 UTC [chaincode] LaunchConfig -> DEBU d9b launchConfig: executable:"/bin/sh",Args:[/bin/sh,-c,cd /usr/local/src; npm start -- --peer.address peer0.org1.example.com:7052],Envs:[CORE_CHAINCODE_LOGGING_LEVEL=DEBUG,CORE_CHAINCODE_LOGGING_SHIM=warning,CORE_CHAINCODE_LOGGING_FORMAT=%{color}%{time:2006-01-02 15:04:05.000 MST} [%{module}] %{shortfunc} -> %{level:.4s} %{id:03x}%{color:reset} %{message},CORE_CHAINCODE_ID_NAME=empty-business-network:0.0.1,CORE_PEER_TLS_ENABLED=false],Files:[]
2018-08-20 12:20:54.589 UTC [chaincode] Start -> DEBU d9c start container: empty-business-network:0.0.1
2018-08-20 12:20:54.589 UTC [chaincode] Start -> DEBU d9d start container with args: /bin/sh -c cd /usr/local/src; npm start -- --peer.address peer0.org1.example.com:7052
2018-08-20 12:20:54.589 UTC [chaincode] Start -> DEBU d9e start container with env:
CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
CORE_CHAINCODE_LOGGING_SHIM=warning
CORE_CHAINCODE_LOGGING_FORMAT=%{color}%{time:2006-01-02 15:04:05.000 MST} [%{module}] %{shortfunc} -> %{level:.4s} %{id:03x}%{color:reset} %{message}
CORE_CHAINCODE_ID_NAME=empty-business-network:0.0.1
CORE_PEER_TLS_ENABLED=false
2018-08-20 12:20:54.589 UTC [container] lockContainer -> DEBU d9f waiting for container(empty-business-network-0.0.1) lock
2018-08-20 12:20:54.589 UTC [container] lockContainer -> DEBU da0 got container (empty-business-network-0.0.1) lock
2018-08-20 12:20:54.589 UTC [dockercontroller] Start -> DEBU da1 Cleanup container dev-peer0.org1.example.com-empty-business-network-0.0.1
2018-08-20 12:20:54.590 UTC [dockercontroller] stopInternal -> DEBU da2 Stop container dev-peer0.org1.example.com-empty-business-network-0.0.1(No such container: dev-peer0.org1.example.com-empty-business-network-0.0.1)
2018-08-20 12:20:54.591 UTC [dockercontroller] stopInternal -> DEBU da3 Kill container dev-peer0.org1.example.com-empty-business-network-0.0.1 (No such container: dev-peer0.org1.example.com-empty-business-network-0.0.1)
2018-08-20 12:20:54.591 UTC [dockercontroller] stopInternal -> DEBU da4 Remove container dev-peer0.org1.example.com-empty-business-network-0.0.1 (No such container: dev-peer0.org1.example.com-empty-business-network-0.0.1)
2018-08-20 12:20:54.591 UTC [dockercontroller] Start -> DEBU da5 Start container dev-peer0.org1.example.com-empty-business-network-0.0.1
2018-08-20 12:20:54.591 UTC [dockercontroller] createContainer -> DEBU da6 Create container: dev-peer0.org1.example.com-empty-business-network-0.0.1
2018-08-20 12:20:54.594 UTC [dockercontroller] Start -> DEBU da7 start-could not find image
Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
@Zeljko Milinovic see https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues and find the section REQUEST_TIMEOUT (and instructions there)
When I get some asset returned like ```
{
```
@mahoney1 did you mean: CORE_CHAINCODE_STARTUPTIMEOUT=1200s in the file ~/fabric-tools/fabric-scripts/hlfv11/composer/docker-compose.yml
When I get some Asset returned like: ```
{
"$class": "org.acme.Person",
"email": "me@home.com",
...
}
``` How would I be able to get the value of the `$class` property in Node Chaincode?
@MarcelvandeKerkhof using getFullyQualifiedType()
[ ](https://chat.hyperledger.org/channel/composer?msg=GiuASrJPkPcTPLLpM) @mahoney1 I do not seet the CORE_CHAINCODE_STARTUPTIMEOUT=1200s in the /fabric-dev-servers/fabric-scripts/hlfv12/composer/docker-compose.yml - should I input a Value ?
[ ](https://chat.hyperledger.org/channel/composer?msg=GDY5LoEZYJ8suvTHv) @lennertr Would it be possible for you to give me a small example? I am fairly new to HL composer...
@mahoney1 - I have added Core_Chaincode_startuptimeout=2400s to both .yml file in composer but still get an error
2018-08-20 12:51:10.371 UTC [dockercontroller] Start -> DEBU 2c7 Start container dev-peer0.org1.example.com-empty-business-network-0.0.1
2018-08-20 12:51:10.371 UTC [dockercontroller] getDockerHostConfig -> DEBU 2c8 docker container hostconfig NetworkMode: composer_default
2018-08-20 12:51:10.372 UTC [dockercontroller] createContainer -> DEBU 2c9 Create container: dev-peer0.org1.example.com-empty-business-network-0.0.1
2018-08-20 12:51:10.374 UTC [dockercontroller] Start -> DEBU 2ca start-could not find image
it just wont work
[ ](https://chat.hyperledger.org/channel/composer?msg=iHFWQTaC955BcQxh4) @MarcelvandeKerkhof I'm using getFullyQualifiedType() to get the type of a participant, but it should work the same way for assets:
```
var currentParticipant = getCurrentParticipant();
if (currentParticipant.getFullyQualifiedType() !== 'org.acme.abc.Investor') {
throw new Error('Transaction can only be submitted by a Investor');
}
var participantRegistry = await getParticipantRegistry(currentParticipant.getFullyQualifiedType());
var investor = await participantRegistry.get(currentParticipant.getIdentifier());
```
[ ](https://chat.hyperledger.org/channel/composer?msg=HxJQEBybBYRi6LQnW) @lennertr Tnx a lot! This was really helpful!
Has joined the channel.
@Zeljko Milinovic its CORE_CHAINCODE_STARTUPTIMEOUT , yes in docker-compose-yml, as described [here](https://stackoverflow.com/questions/51040616/error-while-trying-to-start-another-composer-business-network/51041509#51041509)
@Zeljko Milinovic its CORE_CHAINCODE_STARTUPTIMEOUT , yes in docker-compose.yml, as described [here](https://stackoverflow.com/questions/51040616/error-while-trying-to-start-another-composer-business-network/51041509#51041509)
Thanks Mahoney, but it did not help me
I am seraching further what could it be
hi guys , i have a small problem with the script file in hyperledger composer. I would like to define a global function to minimise repeated code - but when I reference them - they are not recognised - does anyone know how to create global functions in this case ?Any help would be greatly appreciated - thanks a lot
@Drest you can create other functions for code alignment etc - an example of using of helper functions (which can return values or perform checks etc to your transaction functions) i is shown in this sample network https://github.com/hyperledger/composer-sample-networks/tree/master/packages/fund-clearing-network/lib
@Drest you can create other functions for code alignment etc - an example of using of helper functions (which can return values or perform checks etc to your transaction functions) is shown in this sample network https://github.com/hyperledger/composer-sample-networks/tree/master/packages/fund-clearing-network/lib
Is there anyway to get composer to query against a couchdb view?
CouchDB views are not supported even in base Fabric - see https://jira.hyperledger.org/browse/FAB-5528
To do more complicated aggregate queries, most people listen for block events and build a queryable data store most aligned with their query requirements
Yeah that's what I've been doing. Thanks. Wondering if there was any other way of connecting a search index to a view via couchdb perhaps?
Or via any other method.
If people need full text search, they often build a separate Elasticsearch store
Yup makes sense.
I'm finding that my named query search using CONTAINS isn't triggering a good search index
and is taking a long time to query (I have a lot of assets in my db)
might be worthwhile asking on the couchdb forums if there is a way
[ ](https://chat.hyperledger.org/channel/composer?msg=Xjm7LDwQMR6erhfH7) @bsteinfeld With Composer, if you create pre-built queries in a queries.qry file, then indexes are pre-built - this was a v0.19.0 feature.
he specifically asked about a 'view'... the couchdb queries are limited to _find queries currently.
he specifically asked about a 'view'... the couchdb queries are limited to _find queries and corresponding indexes currently.
[ ](https://chat.hyperledger.org/channel/composer?msg=yB7FsmryeowHEJZR2) @dave.enyeart right - just making sure people were aware of the queries.qry feature.
@rthatcher I know, unfortunately the index thats created is not good for the query I am doing I find.
I'm searching an array of objects that meet a certain criteria.
hey what is the default password for creating admin account with composer start in Fabric 1.2
I have a view that returns instantely, however the search index that was created via named query takes multiple seconds to respond (and will scale as I add more data into my ledger)
this is the error that I get from docker logs when starting a new empty network .bna with admin and adminpw
2018-08-20 16:29:50.227 UTC [chaincode] start -> DEBU 4bd stopping due to error while launching: timeout expired while starting chaincode testbna:0.0.1 for transaction a380fca1ebdee6cb2a0aad85b87b314e7fd63170161ff3ef1661188911e1e06c
github.com/hyperledger/fabric/core/chaincode.(*RuntimeLauncher).start
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/runtime_launcher.go:106
github.com/hyperledger/fabric/core/chaincode.(*RuntimeLauncher).Launch
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/runtime_launcher.go:58
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:117
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Invoke
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:227
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:179
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:131
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:173
github.com/hyperledger/fabric/core/endorser.(*Endorser).SimulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:287
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:501
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:923
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
2018-08-20 16:29:50.227 UTC [container] lockContainer -> DEBU 4be refcount 2 (testbna-0.0.1)
2018-08-20 16:29:50.227 UTC [container] lockContainer -> DEBU 4c0 waiting for container(testbna-0.0.1) lock
2018-08-20 16:29:50.227 UTC [common/deliver] deliverBlocks -> DEBU 4bf Context canceled, aborting wait for next block
2018-08-20 16:29:50.227 UTC [common/deliverevents] func1 -> DEBU 4c1 Closing Deliver stream
2018-08-20 16:29:50.228 UTC [fsblkstorage] waitForBlock -> DEBU 4c2 Came out of wait. maxAvailaBlockNumber=[0]
I have some problems with queries that use CONTAINS to check array of assets, only the first one is checked successfuly, and the rest won't match. Is this a known bug or am i doing something wrong?
The WHERE looks like: "WHERE array CONTAINS (user == _$user)", so basicly it should check each object (asset) in array for user.
@silliman makes sense. I wrote my own nodejs application and not using composer rest server. Now I am able to do a simple POST and GET, however my ACLs are not getting applied. Am I Missing something? ACLs will still work the same way without using the composer rest server right?
I suppose its got something to do with correctly applying the card when using the composer-client - when using the businessnetworkconnection, I did give the write cardName, but it seems to not work. Is that it?
I suppose its got something to do with correctly applying the card when using the composer-client - when using the businessnetworkconnection, I did give the right cardName, but it seems to not work. Is that it?
[ ](https://chat.hyperledger.org/channel/composer?msg=ixMTEsW42rpodSNtm) @rosh08 ACLs should work without the Rest Server. I haven't done a lot with them and don't have time to help you debug so you'll have to rely on the whole community here....some tips:
1. The first matching rule in your permissions.acl file will be applied, keep that in mind when you modify your rules
2. I think you have to update your network if you make changes to permissions.acl
good luck!
Perfect. Yes, I am aware of the points and thanks for it. I believe there is a lot more in terms of giving the right card at the composer-client level
@silliman
I will look into it. thanks a lot
Has joined the channel.
Hi, I have created my BND and now i want to install it on the fabric network (2 peers on a machine and 1 on another machine), but when I run I created my business network (BND) but when I try to install it:
composer network install -c PeerAdmin@hlfv1 -a fabric-dev-servers@0.0.13.bna
I receive the following error:
✖ Installing business network. This may take a minute…
Error: PEM encoded certificate is required.
Command failed
Shouldn’t the certificate be in the card? Have anyone had the same issue?
I try to find performance related test results for Hyperledger composer, but couldn't find any official/unofficial performance result. Does someone have performance results for hyperledger composer tx(create, update or delete)? Even it's related to logic, I would like to get performance data for simple CUD cases. Even it is your own test results, it would be really appreciate sharing it to me.
How to manually install Composer to an existing Hyperledger Fabric Blockchain network?
Has joined the channel.
Has joined the channel.
Hi, I have included npm.yaml file and npmConfig.txt file. When I start the business network, I get the following error: Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
npm.yaml file : version: '2'
services:
npmregistry:
container_name: npmregistry
image: verdaccio/verdaccio
volumes:
- /Users/
Hi , I deploy my package in hlfv1 and try to connect that package in composer playground shows this error "Error: No connection type provided, probably because the connection profile has no 'x-type' property defined." what the issue , how rectify this issue ?
@thiyagucse01 you probably have a version problem in which your card does not have an x-type property defined. Try updating fabric, composer and generating a new card.
I am wondering what are the best practices for relationships. Trying to grasp all the implications between having a Participant having accounts, and an account being owned by a participant. Since relationships are unidirectional and it is required to retrieve the instance of the relationship, I am guessing the latest is the best approach.
Would like to hear some thoughts about this. Relevant link: https://stackoverflow.com/questions/49691292/hyperledger-composer-how-to-define-relationships
What do you guys think about this? Relevant link: https://stackoverflow.com/questions/49691292/hyperledger-composer-how-to-define-relationships
@vanclief am updated composer and fabric , during composer network start "✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: cannot get package for chaincode (asset-management-luka:0.0.2-deploy)
" this error facing..!
@vanclief am updated composer and fabric , during composer network start "✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: cannot get package for chaincode (example:0.0.2-deploy)
" this error facing..!
Hi guys
I also get an error still during network start
Did an issue on Github: https://github.com/hyperledger/composer/issues/4346
I tried it on a couple of servers: timeout expired while starting chaincode trade-network:0.2.6 for transaction
I have a proxy but pulling images and installing them is working, and i had a network before that worked on v.11 fabric
the docker container will just not start and I cannot see the logs inside the newly created
I just got at the end the CONNECTION TIMEOUT
I am using the JWT inorder to authenticate the composer rest server, I am using two different tokens to access the composer rest server wallet but I see the same card set to default for both the tokens. Please help
Hmm.. this was working in Composer 0.19.x but not in 0.20.x. I'm not getting any sort of error messages but the WalletBalance and currentlyFunded amounts are not changing: async function buyShare(contract){
// Set variables
const user = contract.User;
const property = contract.Property;
const quantity = contract.Quantity;
const total = quantity;
// Deduct from user wallet
user.WalletBalance -= total;
// Add to current invested amount
property.currentlyFunded += total;
// Update buyers WalletBalance on the blockchain
const userRegistry = await getParticipantRegistry('org.reitium.land.User');
await userRegistry.update(user);
// Update buyers WalletBalance on the blockchain
const propertyRegistry = await getAssetRegistry('org.reitium.land.SPVTitleRegistry');
await propertyRegistry.update(property);
}
[ ](https://chat.hyperledger.org/channel/composer?msg=NPbtdmHsRg5M3nmjy) Hi, I just wanted to inform you that I did the dev tutorial on a Server without Proxy and this did worked , I could start the network, but Proxy does not allow me. Are there some new proxy settings for the Fabric 1.2 that I need to install , maybe in docker-composer.yaml
Hmm, so an update on my issue. I ran the same transaction on my own hosted Composer Playground and it's working fine. Mind blowing!
Hi, I have included npm.yaml file and npmConfig.txt file. When I start the business network, I get the following error: Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: timeout expired while starting chaincode clp-network:0.0.1(networkid:dev,peerid:peer0.org1.example.com,tx:68ea618568a4d6d395e65724c9ea313119b67dc2b45fc4cfd6ab737e1792e895)
Command failed
npm.yaml file : version: '2'
services:
npmregistry:
container_name: npmregistry
image: verdaccio/verdaccio
volumes:
- /Users/
I need a clarity regarding the participants of network if i created a participant using the command ( composer participant add -c anitha@sample-network -d '{"$class":"test.participant","name":"Anitha","id":"1"}' ) and issued the identity using the command ( composer identity issue -c anitha@sample-network -f user.card -u user -a "resource:test.participant#1") Now my question is this user is the participant of network belonging to ORG1 or not specific about ORG1. How can we know that he is participant of org1 in the permisssion.acl file so that i can have seperate access permissions to participants of different orgs
[ ](https://chat.hyperledger.org/channel/composer?msg=qE9Go4Hmtk5GxXtMu) @deep123 Hi deep123, I have the similar issues. Are you also behind a corporate proxy ?
Hey I have a question concerning acl rules:
```
rule B5_SeeOwnHistoryOnly {
description: "Banks should be able to see the history of their own transactions only"
participant(t): "org.acme.abc.Bank"
operation: READ
resource(v): "org.hyperledger.composer.system.HistorianRecord"
condition: (v.participantInvoking.getIdentifier() != t.getIdentifier())
action: DENY
}
```
In the condition the identifier of the participantInvoking is compared to the identifier of the Bank participant. What if the participantInvoking is not a Bank participant and identifiers are not unique across different participant registries? e.g.: participantInvoking is "org.acme.abc.Investor#0001" and the current Bank participant is "org.acme.abc.Bank#0001". Now the Bank user could read historianrecords of the investor and vice versa, right?
hi everone. can you please guide how to access block formed after creating transaction
Hello,
If our fabric goes down or we need to change architecture in that case we need to tear down the network. So how can we use existing cards later on? I mean it is not feasible if all data is lost. So what could be the solution to this?
[ ](https://chat.hyperledger.org/channel/composer?msg=baBjqZNMZwuw6ai7g) @Zeljko Milinovic Hi. Yes, I am behind a corporate proxy.
[ ](https://chat.hyperledger.org/channel/composer?msg=XEKT9mrS9xodyuz9K) @AnithaReddy There is some background information about Cards, Identities and Participants in the Knowledge Wiki. https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#bizcards
When an Identity is issued to a Participant, the Organisation is determined by the Identity of the Card being used to run the command. So if your "anitha@sample-network" is in Org1 and has the right access to the CA then identities will be issued for Org1.
The Participant does not belong to an Org- the Identity Bound to the Participant belongs to the Org. You could have different participant Types for the different Orgs which would be easy to write ACLs against. If your business case does not work well with different types, please see this Stack Overflow Q/A on how to solve the problem.
https://stackoverflow.com/questions/50680188/organization-based-restrictions-for-participant-identity-issuing-in-hyperledger/50681159
[ ](https://chat.hyperledger.org/channel/composer?msg=XhmsAjuBhYQQp79Am) @malviyamukul Through Composer, you may be able to get access to that information through the ` getNativeAPI ` function in a transaction as described in this document: https://hyperledger.github.io/composer/latest/reference/js_scripts
Depending on how /why you want the Block Information, you might want to look at the Hyperledger Blockchain-Explorer: https://github.com/hyperledger/blockchain-explorer
[ ](https://chat.hyperledger.org/channel/composer?msg=e88SpZtkFS6Qa9dHm) @rthatcher actually my business use case is there will not be multiple participant my requirement is org1 should be able to add the assets whereas org2 should be able to just view the assets added ( should not be able to create assests or modify assets ) how can i achieve this
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=49597bC2gGmzEwAW5) @HoneyShah No you can't re-use these cards. The CA will be replaces when you generate your new Fabric so the identities will be lost.
Even if you kept the CA, the mapping between the identities and the participants would be lost so the cards would not be usable.
@AnithaReddy - follow this link to Stack Overflow - it shows how to do it: https://stackoverflow.com/questions/50680188/organization-based-restrictions-for-participant-identity-issuing-in-hyperledger/50681159
[ ](https://chat.hyperledger.org/channel/composer?msg=CMe6NS9GY4ADwqRRn) @rthatcher So, if anyhow our network goes down our whole system will collapse even if we have done data persistence. Is it true?
How can we update resource using rest end point?
[ ](https://chat.hyperledger.org/channel/composer?msg=56kwgYony4Cs68hxz) @rthatcher thanks @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=o6baMsrKSkBp8dmdj) @HoneyShah It is an _odd scenario_ that you are posing where you have retained your cards, and retained the CA, but lost other elements of the Fabric. It is _possible_ to find a way to reuse the crypto material and the cards, but it would require too much effort to be practical in most scenarios. If you follow this up, please write a blog for the benefit of the community!
@lennertr while the 'identifier' is not unique in isolation, it is an identifier (for a resource) in a different registry and that's what the ACL condition will qualify (ie comparing identifiers of resources in the respective resource registries - in this scenario then evaluating to true or false). ACLs already work with DENY as implicit, unless ALLOWed. In your rule, it means if the current participant is a Bank participant, then 'it' would be denied READ access to any historian records 'it' didn't submit - in your rule (note: you would have still required a ALLOWed for 'it' to see its own history eg `(v.participantInvoking.getIdentifier() == t.getIdentifier())`
@lennertr while the 'identifier' is not unique in isolation, it is an identifier (for a resource) in a different registry and that's what the ACL condition will qualify (ie comparing identifiers of resources in the respective resource registries - in this scenario, then evaluating to true or false). ACLs already work with DENY as implicit, unless ALLOWed. In your rule, it means if the current participant is a Bank participant, then 'it' would be denied READ access to any historian records 'it' didn't submit - in your rule (note: you would have still required a ALLOWed for 'it' to see its own history eg `(v.participantInvoking.getIdentifier() == t.getIdentifier())`
Good day, I am getting the following error when I run composer start network -> Starting a business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to receive commit notification from 192.168.0.100:9051 for transaction '966c4123f4c7dd404bdd6388042cd59b5dd36db98692876c24e6ec09539dbe73' within the timeout period Command failed. ```
Composer version 0.19. ```
Running in swarm mode able to install go chaincode on all peers... ```
Any ideas>? I know it has to do with the connection.json file... Just dno what I am doing wrong.
```
```
```
Good day, I am getting the following error when I run composer start network -> Starting a business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to receive commit notification from 192.168.0.100:9051 for transaction '966c4123f4c7dd404bdd6388042cd59b5dd36db98692876c24e6ec09539dbe73' within the timeout period Command failed. ```
Composer version 0.19. ```
Running in swarm mode able to install go chaincode on all peers... ```
Any ideas>? I know it has to do with the connection.json file... Just dno what I am doing wrong.
```
>4 peer 1org 1orderer 1Ca. Two physical servers 1 running two peers and CA and orderer. and the other one running only two peers.
Good day, I am getting the following error when I run composer start network -> Starting a business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to receive commit notification from 192.168.0.100:9051 for transaction '966c4123f4c7dd404bdd6388042cd59b5dd36db98692876c24e6ec09539dbe73' within the timeout period Command failed. ``` ```
``` 4 peer 1org 1orderer 1Ca. Two physical servers 1 running two peers and CA and orderer. and the other one running only two peers.
Composer version 0.19. ```
Running in swarm mode able to install go chaincode on all peers... ```
Any ideas>? I know it has to do with the connection.json file... Just dno what I am doing wrong.
Good day, I am getting the following error when I run composer start network -> Starting a business network definition. This may take a minute...
``` Error: Error trying to start business network. Error: Failed to receive commit notification from 192.168.0.100:9051 for transaction '966c4123f4c7dd404bdd6388042cd59b5dd36db98692876c24e6ec09539dbe73' within the timeout period Command failed. ```
``` 4 peer 1org 1orderer 1Ca. Two physical servers 1 running two peers and CA and orderer. and the other one running only two peers.
Composer version 0.19. ```
Running in swarm mode able to install go chaincode on all peers... ```
Any ideas>? I know it has to do with the connection.json file... Just dno what I am doing wrong.
Good day, I am getting the following error when I run composer start network -> Starting a business network definition. This may take a minute...
```Error: Error trying to start business network. Error: Failed to receive commit notification from 192.168.0.100:9051 for transaction '966c4123f4c7dd404bdd6388042cd59b5dd36db98692876c24e6ec09539dbe73' within the timeout period Command failed. ```
``` 4 peer 1org 1orderer 1Ca. Two physical servers 1 running two peers and CA and orderer. and the other one running only two peers.
Composer version 0.19. ```
Running in swarm mode able to install go chaincode on all peers... ```
Any ideas>? I know it has to do with the connection.json file... Just dno what I am doing wrong.
Good day, I am getting the following error when I run composer start network -> Starting a business network definition. This may take a minute...```
``` Error: Error trying to start business network. Error: Failed to receive commit notification from 192.168.0.100:9051 for transaction '966c4123f4c7dd404bdd6388042cd59b5dd36db98692876c24e6ec09539dbe73' within the timeout period Command failed. ```
``` 4 peer 1org 1orderer 1Ca. Two physical servers 1 running two peers and CA and orderer. and the other one running only two peers.
Composer version 0.19. ```
Running in swarm mode able to install go chaincode on all peers... ```
Any ideas>? I know it has to do with the connection.json file... Just dno what I am doing wrong.
Has joined the channel.
@rthatcher how can I see ledger data on hyperledger fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=jTpKe3a5tNiWqgzM7) @deep123 Did you configure Proxy in docker-composer.yml and also in other places? can you show me your start command
[ ](https://chat.hyperledger.org/channel/composer?msg=MNypWAmyTuagdtmZP) @sureshtedla in a dev/test scenario - you might want to look at the Hyperledger Blockchain-Explorer: https://github.com/hyperledger/blockchain-explorer - or use Fabric SDK (as you asked about H/L Fabric)
[ ](https://chat.hyperledger.org/channel/composer?msg=MNypWAmyTuagdtmZP) @sureshtedla in a dev/test scenario - you might want to look at the Hyperledger Blockchain-Explorer: https://github.com/hyperledger/blockchain-explorer - or use Fabric SDK (as you asked about H/L Fabric) - example here -> https://stackoverflow.com/questions/49872747/query-from-ledger-in-hyperledger-fabric
put.png
put.png
[ ](https://chat.hyperledger.org/channel/composer?msg=8CoFtj3E9GNaG7ZCx) @Switch2Logic You should look at the container log for the peer in the error message you see. When you have the log, we have information about 'composer network start' and 'composer network install' commands in the knowledge wiki:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#cinstallissues
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
@rthatcher Those errors are not useful to me... It installs fine... When I start it starts the chaincode on the two peers on the local node but the remote node drops connection to peers as soon as the Composer start comand runs
@rthatcher hi, is there a way to discriminate an asset's actual type and check if its inheritance is based on a certain archetype? as in "myaAsset instance of AbstractAsset"?
@rthatcher hi, is there a way to discriminate an asset's actual type and check if its inheritance is based on a certain archetype? as in "myAsset instance of AbstractAsset"?
@rthatcher hi, is there a way to discriminate an asset's actual type and check if its inheritance is based on a certain archetype in the Composer runtime? as in "myAsset instance of AbstractAsset"?
[ ](https://chat.hyperledger.org/channel/composer?msg=zcNCHRLGiTvAmKL7F) @rthatcher Hi rthathcer, iI am also having these issues and the links with timeout did not help me or the WIKI links, do you have maybe another Idea, I already did 9000s and will post my docker log of peer01, now it is saying that it cannot find couchdb
2018-08-21 10:17:32.201 UTC [chaincode] Start -> DEBU 3ab start container with args: /bin/sh -c cd /usr/local/src; npm start -- --peer.address peer0.org1.example.com:7052
2018-08-21 10:17:32.201 UTC [chaincode] Start -> DEBU 3ac start container with env:
CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
CORE_CHAINCODE_LOGGING_SHIM=warning
CORE_CHAINCODE_LOGGING_FORMAT=%{color}%{time:2006-01-02 15:04:05.000 MST} [%{module}] %{shortfunc} -> %{level:.4s} %{id:03x}%{color:reset} %{message}
CORE_CHAINCODE_ID_NAME=basic-sample-network:0.2.6
CORE_PEER_TLS_ENABLED=false
2018-08-21 10:17:32.201 UTC [container] lockContainer -> DEBU 3ad waiting for container(basic-sample-network-0.2.6) lock
2018-08-21 10:17:32.201 UTC [container] lockContainer -> DEBU 3ae got container (basic-sample-network-0.2.6) lock
2018-08-21 10:17:32.201 UTC [dockercontroller] Start -> DEBU 3af Cleanup container dev-peer0.org1.example.com-basic-sample-network-0.2.6
2018-08-21 10:17:32.202 UTC [dockercontroller] stopInternal -> DEBU 3b0 Stop container dev-peer0.org1.example.com-basic-sample-network-0.2.6(No such container: dev-peer0.org1.example.com-basic-sample-network-0.2.6)
2018-08-21 10:17:32.203 UTC [dockercontroller] stopInternal -> DEBU 3b1 Kill container dev-peer0.org1.example.com-basic-sample-network-0.2.6 (No such container: dev-peer0.org1.example.com-basic-sample-network-0.2.6)
2018-08-21 10:17:32.204 UTC [dockercontroller] stopInternal -> DEBU 3b2 Remove container dev-peer0.org1.example.com-basic-sample-network-0.2.6 (No such container: dev-peer0.org1.example.com-basic-sample-network-0.2.6)
2018-08-21 10:17:32.204 UTC [dockercontroller] Start -> DEBU 3b3 Start container dev-peer0.org1.example.com-basic-sample-network-0.2.6
2018-08-21 10:17:32.204 UTC [dockercontroller] getDockerHostConfig -> DEBU 3b4 docker container hostconfig NetworkMode: composer_default
2018-08-21 10:17:32.204 UTC [dockercontroller] createContainer -> DEBU 3b5 Create container: dev-peer0.org1.example.com-basic-sample-network-0.2.6
2018-08-21 10:17:32.207 UTC [dockercontroller] Start -> DEBU 3b6 start-could not find image
CONNECTION TIMEOU
When I have this model ```
transaction ShipmentRegistration {
o String shipmentId
o DateTime createdDT
--> Actor owner
--> Actor holder
--> Package[] packages
}
``` Why can't I pass the following JSON ```
{
"$class": "ShipmentRegistration",
"shipmentId": "SHIP0030",
"createdDT":"2018-08-21T08:02:09.768Z",
"owner":"Manufacturer#alex@inovamedia.nl",
"packages": [
{
"$class": "Package",
"name":"Package 1",
"packageId":"packageId001"
},
{
"$class": "Package",
"name":"Package 2",
"packageId":"packageId002"
}
]
}
``` I get the following error in Composer Playground `Error: Invalid JSON data. Found a value that is not a string: [object Object],[object Object] for relationship RelationshipDeclaration {name=packages, type=Package, array=true, optional=false}`. Is it not possible to pass in a JSON object as a relationship?
When I have this model ```
asset Package identified by packageId {
o String packageId
o String name
}
transaction ShipmentRegistration {
o String shipmentId
o DateTime createdDT
--> Actor owner
--> Actor holder
--> Package[] packages
}
``` Why can't I pass the following JSON ```
{
"$class": "ShipmentRegistration",
"shipmentId": "SHIP0030",
"createdDT":"2018-08-21T08:02:09.768Z",
"owner":"Manufacturer#alex@inovamedia.nl",
"packages": [
{
"$class": "Package",
"name":"Package 1",
"packageId":"packageId001"
},
{
"$class": "Package",
"name":"Package 2",
"packageId":"packageId002"
}
]
}
``` I get the following error in Composer Playground `Error: Invalid JSON data. Found a value that is not a string: [object Object],[object Object] for relationship RelationshipDeclaration {name=packages, type=Package, array=true, optional=false}`. Is it not possible to pass in a JSON object as a relationship?
When I have this model ```
asset Package identified by packageId {
o String packageId
o String name
}
transaction ShipmentRegistration {
o String shipmentId
o DateTime createdDT
--> Actor owner
--> Package[] packages
}
``` Why can't I pass the following JSON ```
{
"$class": "ShipmentRegistration",
"shipmentId": "SHIP0030",
"createdDT":"2018-08-21T08:02:09.768Z",
"owner":"Manufacturer#alex@inovamedia.nl",
"packages": [
{
"$class": "Package",
"name":"Package 1",
"packageId":"packageId001"
},
{
"$class": "Package",
"name":"Package 2",
"packageId":"packageId002"
}
]
}
``` I get the following error in Composer Playground `Error: Invalid JSON data. Found a value that is not a string: [object Object],[object Object] for relationship RelationshipDeclaration {name=packages, type=Package, array=true, optional=false}`. Is it not possible to pass in a JSON object as a relationship?
When I have this model ```
asset Package identified by packageId {
o String packageId
o String name
}
transaction ShipmentRegistration {
o String shipmentId
o DateTime createdDT
--> Actor owner
--> Package[] packages
}
``` Why can't I pass the following JSON ```
{
"$class": "ShipmentRegistration",
"shipmentId": "SHIP0030",
"createdDT":"2018-08-21T08:02:09.768Z",
"owner":"Manufacturer#me@home.com",
"packages": [
{
"$class": "Package",
"name":"Package 1",
"packageId":"packageId001"
},
{
"$class": "Package",
"name":"Package 2",
"packageId":"packageId002"
}
]
}
``` I get the following error in Composer Playground `Error: Invalid JSON data. Found a value that is not a string: [object Object],[object Object] for relationship RelationshipDeclaration {name=packages, type=Package, array=true, optional=false}`. Is it not possible to pass in a JSON object as a relationship?
When I have this model ```
asset Package identified by packageId {
o String packageId
o String name
}
transaction ShipmentRegistration {
o String shipmentId
o DateTime createdDT
--> Actor owner
--> Package[] packages
}
``` Why can't I pass the following JSON ```
{
"$class": "ShipmentRegistration",
"shipmentId": "SHIP0030",
"createdDT":"2018-08-21T08:02:09.768Z",
"owner":"Manufacturer#me@home.com",
"packages": [
{
"$class": "Package",
"name":"Package 1",
"packageId":"packageId001"
},
{
"$class": "Package",
"name":"Package 2",
"packageId":"packageId002"
}
]
}
``` I get the following error in Composer Playground `Error: Invalid JSON data. Found a value that is not a string: [object Object],[object Object] for relationship RelationshipDeclaration {name=packages, type=Package, array=true, optional=false}`. Is it not possible to pass in a JSON object as a relationship? I want to pass this into a transaction processor function so I can create all the packages and a shipment in a single transaction.
@MarcelvandeKerkhof your JSON doesn't match your model - `packages` should be something like `"packages": [
"resource:org.example.empty.Package#packageId001", "resource:org.example.empty.Package#packageId002"
]` - the data you've posted is for an array of Concepts (not an array of relationships, per your model)
@MarcelvandeKerkhof your JSON doesn't match your model - `packages` should be something like ` "packages": [
"resource:org.example.empty.Package#packageId001", "resource:org.example.empty.Package#packageId002"
] ` - the data you've posted is for an array of Concepts (not an array of relationships, per your model)
@MarcelvandeKerkhof your JSON doesn't match your model - `packages` should be something like ``` "packages": [
"resource:org.example.empty.Package#packageId001", "resource:org.example.empty.Package#packageId002"
] ``` - the data you've posted is for an array of Concepts (not an array of relationships, per your model)
@MarcelvandeKerkhof your JSON doesn't match your model - `packages` should be something like ``` "packages": [
"resource:org.example.empty.Package#packageId001", "resource:org.example.empty.Package#packageId002"
] ``` - the data you've posted is for an array of Concepts, (not an array of relationships, per your model, Package is an asset)
[ ](https://chat.hyperledger.org/channel/composer?msg=xMYor94PZBfsBqJWi) @mahoney1 So it is not possible to pass in a JSON structure as a new Asset, so the transaction processor function can create the new package assets together with the shipment asset in a single transaction?
@HoneyShah - the minimum `required` attributes (as you've defined your model) for your 'PUT' data (click the example on the right).
@MarcelvandeKerkhof yes, perfectly possible - there's an example of a transaction do exactly that here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L119 (sample Composer network, adding Assets and Participants as one atomic transaction
@MarcelvandeKerkhof yes, perfectly possible - there's an example of a transaction doing exactly that here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L119 (sample Composer network, adding Assets and Participants as one atomic transaction
@MarcelvandeKerkhof yes, perfectly possible - there's an example of a transaction doing exactly that here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L119 (sample Composer network, adding Assets and Participants as one atomic transaction)
[ ](https://chat.hyperledger.org/channel/composer?msg=uGiKZZL97rhxwWqQ8) @mahoney1 Thanks for your answer. In my scenario seeing the historian is allowed in general, when not explicitly denied. In the playground I noticed that different participants (bank, investor, ..) with the same identifier see the transactions from other participants with the same identifier. So in my case the ACL rule is not comparing the identifiers within there respective resource registries. Do you know why?
[ ](https://chat.hyperledger.org/channel/composer?msg=f68rbMfGNTHtjmhmF) @mahoney1 Sorry @mahoney1, but I don't see how this is the same. The setupDemo transaction has no model defined. It's empty. All assets created in this function are generated within the function and are not taken from the setupDemo model.
[ ](https://chat.hyperledger.org/channel/composer?msg=KQb55rXunkDnCyw9o) @vanclief @vanclief am using fabric version hlfv12 and composer 0.20 , package successfully deployed, but if am ping card name (composer network ping -c admin@example) means its show "Error: Error trying to ping. Error: Composer runtime (0.19.12) is not compatible with client (0.20.0)" error , can u pls help to rectify this ...!
[ ](https://chat.hyperledger.org/channel/composer?msg=KQb55rXunkDnCyw9o) @vanclief am using fabric version hlfv12 and composer 0.20 , package successfully deployed, but if am ping card name (composer network ping -c admin@example) means its show "Error: Error trying to ping. Error: Composer runtime (0.19.12) is not compatible with client (0.20.0)" error , can u pls help to rectify this ...!
@thiyagucse01 see the answer in this Stack Overflow -> https://stackoverflow.com/questions/51875604/deploying-a-hyperledger-composer-blockchain-business-network-to-hyperledger-fabr/51875874#51875874 - your 0.19.x business network needs upgrading etc.
@MarcelvandeKerkhof it does have a model defined - its [this one](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/models/perishable.cto) - the business network is a 'perishables-network' and the function is creating assets (in your case, I assume, you will be passing in the asset details (as JSON) to the transaction, and you will create your assets in a similar fashion - per your statement `I can create all the packages and a shipment in a single transaction` - that's just one example of course - a more simple example is shown in the Bond (sample) network -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/lib/logic.js and the model for that is under `bond-network/model` if you want to refer to that
@MarcelvandeKerkhof it does have a model defined - its [this one](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/models/perishable.cto) - the business network is a 'perishables-network' and the function is creating assets (in your case, I assume, you will be passing in the asset details (as JSON) to the transaction, and you will create your assets in a similar fashion - per your statement `I can create all the packages and a shipment in a single transaction` - that's just one example of course - a more simple example is shown in the Bond (sample) network -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/lib/logic.js and the model for that is under `bond-network/model` if you want to refer to that where the transaction passes in a JSON structure as follows ```transaction PublishBond {
o String ISINCode
o Bond bond
}
```
@MarcelvandeKerkhof it does have a model defined - its [this one](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/models/perishable.cto) - the business network is a 'perishables-network' and the function is creating assets (in your case, I assume, you will be passing in the asset details (as JSON) to the transaction, and you will create your assets in a similar fashion - per your statement `I can create all the packages and a shipment in a single transaction` - that's just one example of course - a more simple example is shown in the Bond (sample) network -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/lib/logic.js and the model for that is under `bond-network/model` if you want to refer to that - where the transaction passes in a JSON structure as follows ```transaction PublishBond {
o String ISINCode
o Bond bond
}
```
@mahoney1 thanks for the solution
hi. can i show data from 2 different assets in one query
@lennertr of course - possibly because you wrote 'seeing the historian is allowed in general' :-) - the comparison is between the current participant identifier (if you're logged in as that participant in playground in the first place, that is..) and 'whatever target resource' (identifer) you're comparing against in a rule - it also depends on what the rules precedence is (which rule follows which)- as soon as a match is reached (is evaluated to true), it will not read the subsequent rules in the ruleset - so bear that in mind. If you've got any further issues, suggest to post on Stack Overflow (your ruleset, what you're trying to achieve, and any relevant code or data) - structure of a S/O question is shown here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#issue
[ ](https://chat.hyperledger.org/channel/composer?msg=XBfguPW2WYWMTC2zL) @mahoney1 I think I now know how to handle this. I have to create a new Concept with all the fields for a Package and include this concept in the Package asset and also create an array of this concept within the Shipment asset. I will give that a go and see if that solves my issue. Thanks a lot for your help!
https://stackoverflow.com/questions/51948131/display-data-from-2-assets-using-single-query-in-hyperledger-faric
https://stackoverflow.com/questions/51948131/display-data-from-2-assets-using-single-query-in-hyperledger-faric
[ ](https://chat.hyperledger.org/channel/composer?msg=wxKAZAFqT24gYsegZ) @mahoney1 If I put prodcutId which is unique key for that, then it is showing error of it can not have same value as before and if I don't pass it then it throwing the error that id not found.
```
{
"error": {
"statusCode": 400,
"name": "Error",
"message": "id property (departmentId) cannot be updated from 75 to 75"
}
}
```
How to manually install Composer to an existing Hyperledger Fabric Blockchain network?
@MarcelvandeKerkhof cool - the bond network I sent is a classic example of that (and you can supply the asset details in your transaction)
[ ](https://chat.hyperledger.org/channel/composer?msg=aDnz5Xgo5G7aWZHxL) @JackMalinowski install the required/correct level of Composer modules (ie that support the version of Fabric that you are using - see this [summary table](https://github.com/hyperledger/composer/wiki) - and then build your [connection profile](https://hyperledger.github.io/composer/latest/reference/connectionprofile.html) to then create a PeerAdmin business network card (you should already have this info) so you can go on to install business networks in your Fabric network - example of similar, from Step Three in this [tutorial](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org)
[ ](https://chat.hyperledger.org/channel/composer?msg=pHrnKgGpcQLWKhrJ9) @satyajitdeshmukh I have responded to your question on Stack Overflow - but the tag Hyperledger-composer has been removed.
how to load js script in specific component in the angular app ?
someone mention this for problem i said before....
https://github.com/IBM/customer-loyalty-program
i want to apply it to my angular app... but i couldn't figure how to load js scripts
@mahoney1 , thanks for the answer.
I am guessing I have to install Composer modules on: ca, orderer and all peers, right?
[ ](https://chat.hyperledger.org/channel/composer?msg=eEbmJi2Asqbr5feo7) @JackMalinowski np - I assume you meant 'connect' to existing H/L Fabric ? - you would install the Composer modules in your dev/test environment, then 'connect' to your Fabric, as explained earlier.
Has joined the channel.
Is it too much to ask? I am just trying to create a Login page with the autogenerated Angular app from my bna file. All I want to do is to input card name in the login page, then grab the card from the wallet and use it to submit transactions. Any advice will be greatly appreciated.
Hi, is there a way to elevate chaincodes permission in transaction to allow access to multiple participants resources? E.g. lets say two traders have common item "marbles" with different quantity of them. Is it possible to have a transaction function 'Trade' that is executed buy on of the trader to deduce a certain amount for his 'marbles' and add to the other trader's wallet?
Hi, is there a way to elevate chaincodes permission in transaction to allow access to multiple participants resources? E.g. lets say two traders have common item "marbles" with different quantity of them. Is it possible to have a transaction function 'Trade' that is executed buy one of the traders to deduce a certain amount for his 'marbles' and add them to the other trader's wallet?
Hi, is there a way to elevate chaincodes permission in transaction to allow access to multiple participants resources? E.g. lets say two traders have common item "marbles" with different quantity of them. Is it possible to have a transaction function 'Trade' that is executed by one of the traders to deduce a certain amount for his 'marbles' and add them to the other trader's wallet?
Hi, is there a way to elevate chaincodes permission in transaction to allow access to multiple participants resources? E.g. lets say two traders have common item "marbles" with different quantity of them. Is it possible to have a transaction function 'Trade' that is executed by one of the traders to deduce a certain amount from his 'marbles' and add them to the other trader's wallet?
Hi, is there a way to elevate chaincodes permission in transaction to allow access to multiple participants' resources? E.g. lets say two traders have common item "marbles" with different quantity of them. Is it possible to have a transaction function 'Trade' that is executed by one of the traders to deduce a certain amount from his 'marbles' and add them to the other trader's wallet?
[ ](https://chat.hyperledger.org/channel/composer?msg=p4Mr6dmemKwWZxqCb) @Ethos 1 The ACL Tutorial https://hyperledger.github.io/composer/latest/tutorials/acl-trading show how to use a relationship field to control access. The tutorial builds on the developer tutorial using the Trade sample.
There is a good Stack Overflow Q/A where an array of relationships are used to allow access to a list (array) of participants.
https://stackoverflow.com/questions/51815370/hyperledger-composer-permission-for-array-of-participants
[ ](https://chat.hyperledger.org/channel/composer?msg=SHX3bLgWFw8Xpgdwu) @rthatcher These two articles are different from what I'm trying to achieve. The acl-trading just changes it's commodity ownership, and the array of participants just allow the bank teller to see (read-only) participants' account. In my case, I do not want Trader1 to see Trader2 wallet, so without READ access in ACL, you could not do anything with Trader2's wallet.
[ ](https://chat.hyperledger.org/channel/composer?msg=SHX3bLgWFw8Xpgdwu) @rthatcher These two articles are different from what I'm trying to achieve. The acl-trading just changes it's commodity ownership, and the array of participants just allow the bank teller to see (read-only) participants' account. In my case, I do not want Trader1 to see Trader2 asset, so without READ access in ACL, you could not do anything with Trader2's asset.
[ ](https://chat.hyperledger.org/channel/composer?msg=SHX3bLgWFw8Xpgdwu) @rthatcher These two articles are different from what I'm trying to achieve. The acl-trading just changes it's commodity ownership, and the array of participants just allow the bank teller to see (read-only) participants' account. In my case, I do not want Trader1 to see Trader2's asset, so without READ access in ACL, you could not do anything with Trader2's asset.
[ ](https://chat.hyperledger.org/channel/composer?msg=SHX3bLgWFw8Xpgdwu) @rthatcher These two articles are different from what I'm trying to achieve. The acl-trading just changes it's commodity ownership, and the array of participants just allow the bank teller to see (read-only) participants' account. In my case, I do not want Trader1 to see Trader2's asset, so without READ access in ACL, you could not do anything with Trader2's asset. Is it possible to set ACL rule base on transaction function instead of participant?
[ ](https://chat.hyperledger.org/channel/composer?msg=KMN2F5KyYjkRdrJoD) @ErickCaro I think this link will solve your issue - https://github.com/caroline-church/collectable-penguin-app/blob/master/src/services/rest.service.ts#L19
Hi, i have some problems with queries that use CONTAINS to check array of assets, only the first one is checked successfuly, and the rest won't match. Is this a known bug or am i doing something wrong?
The WHERE looks like: "WHERE array CONTAINS (user == _$user)", so basicly it should check each object (asset) in array for user match.
I created fabric network in one VM and its working fine. Now i installed composer playground and access the composure playground at 8080 port getting below error. Help me if anyone has some information about this.error: [Hyperledger-Composer] :ConnectorServer :businessNetworkCardStoreG Error: Unable to read required file: metadata.json
at newErrorWithCause (/home/venkat/.nvm/versions/node/v8.11.3/lib/node_modules/composer-playground/node_modules/composer-common/lib/idcard.js:38:19)
at fs.readFile.catch.cause (/home/venkat/.nvm/versions/node/v8.11.3/lib/node_modules/composer-playground/node_modules/composer-common/lib/idcard.js:334:23)
at
@Ethos 1 yes. You're talking about an ACL dynamically allowing an update between two participants, the source/target participants of a transaction - an example of that is [shown here](https://github.com/mahoney1/test/blob/master/acl_dynamic.md) ->
[ ](https://chat.hyperledger.org/channel/composer?msg=MbugDaSaygmgrtmgP) @mahoney1 Cool, thanks a lot! I was actually looking for that!
@mahoney1 How to deploy fabric to multiple orgs on different physical machines
[ ](https://chat.hyperledger.org/channel/composer?msg=sWt8sZQEaomAKep6R) @umamaheswarv Marbles asset thanks, I have seen it before but will look again at it. Anyways, I will need to implement loopback authentication in order to use the rest server right?
Has joined the channel.
how to update a network in multiorganizations
hi how to update a multi organization network in hyperledger composer
Has joined the channel.
yo hyperledger-composer: angular - the dreaded "Error: 404 - Could not find API route. Please check your available APIs."
This is a question about the yo angular template generation with REST server in the tutorials
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
composer-rest-server runs fine on localhost: 3000 (I can do GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today...```
The dreaded Error: 404 - Could not find API route. Please check your available APIs.
Mike · 7 hours ago
This is a question about the yo angular template generation with REST server.
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
Rest server runs fine on localhost: 3000 (I can go GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today.
Composer: The dreaded Error: 404 - Could not find API route. Please check your available APIs.
Mike · 7 hours ago
This is a question about the yo angular template generation with REST server.
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
Rest server runs fine on localhost: 3000 (I can go GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today
Composer: The dreaded Error: 404 - Could not find API route. Please check your available APIs.
This is a question about the yo angular template generation with REST server.
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
Rest server runs fine on localhost: 3000 (I can go GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today
yo hyperledger-composer: angular - the dreaded Error: 404 - Could not find API route. Please check your available APIs.
This is a question about the yo angular template generation with REST server in the tutorials
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
Rest server runs fine on localhost: 3000 (I can go GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today
yo hyperledger-composer: angular - the dreaded Error: 404 - Could not find API route. Please check your available APIs.
This is a question about the yo angular template generation with REST server in the tutorials
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
composer-rest-server runs fine on localhost: 3000 (I can go GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today
yo hyperledger-composer: angular - the dreaded "Error: 404 - Could not find API route. Please check your available APIs."
This is a question about the yo angular template generation with REST server in the tutorials
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
composer-rest-server runs fine on localhost: 3000 (I can go GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today
yo hyperledger-composer: angular - the dreaded "Error: 404 - Could not find API route. Please check your available APIs."
This is a question about the yo angular template generation with REST server in the tutorials
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
composer-rest-server runs fine on localhost: 3000 (I can do GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today
yo hyperledger-composer: angular - the dreaded "Error: 404 - Could not find API route. Please check your available APIs."
This is a question about the yo angular template generation with REST server in the tutorials
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
composer-rest-server runs fine on localhost: 3000 (I can do GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today
yo hyperledger-composer: angular - the dreaded "Error: 404 - Could not find API route. Please check your available APIs."
This is a question about the yo angular template generation with REST server in the tutorials
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
composer-rest-server runs fine on localhost: 3000 (I can do GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today...anyone got any ideas as to how to fix this?
yo hyperledger-composer: angular - the dreaded "Error: 404 - Could not find API route. Please check your available APIs."
This is a question about the yo angular template generation with REST server in the tutorials
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
composer-rest-server runs fine on localhost: 3000 (I can do GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today...anyone got any ideas as to how to fix this?
yo hyperledger-composer: angular - the dreaded "Error: 404 - Could not find API route. Please check your available APIs."
This is a question about the yo angular template generation with REST server in the tutorials
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
composer-rest-server runs fine on localhost: 3000 (I can do GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today...```
``` anyone got any ideas as to how to fix this?
yo hyperledger-composer: angular - the dreaded "Error: 404 - Could not find API route. Please check your available APIs."
This is a question about the yo angular template generation with REST server in the tutorials
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
composer-rest-server runs fine on localhost: 3000 (I can do GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today...```
anyone got any ideas as to how to fix this?
Newbie question.. In my docker running hyperledger image Orderer, I am trying to make sense of the storage my transactions are taking. Can someone explain to me how to convert blockbytes length [7730] into gb ? Is blockbytes number of block or bytes ?
Anyone got any idea how to fix this?
Anyone got any suggestions as to how to fix this?
yo hyperledger-composer: angular - the dreaded "Error: 404 - Could not find API route. Please check your available APIs."
This is a question about the yo angular template generation with REST server in the tutorials
I know many people have seen this error; and many people trying out the angular template elsewhere on google, this is a very common problem; but I have tried every suggestion
composer-rest-server runs fine on localhost: 3000 (I can do GET and POST operations etc)
Namespaces are the same; I have tried with and without namespaces
I have tried connecting to existing REST server and creating new REST API
I have tried ng serve and npm start;
I have tried changing my --host to localhost in package.json
Nothing works and so I am now at a standstill having spent two days with this problem
All tools are the latest as I reinstalled everything with a new user on my PC today...Has anyone got any idea how to fix this?
@rthatcher @mahoney1 How to run fabric on docker swarm mode?
@sureshtedla questions about fabric should be asked on the fabric channels as this channel is about composer. Suggest you try #fabric-questions
[ ](https://chat.hyperledger.org/channel/composer?msg=5P8P6TnEpoJ9z7Lto) @rthatcher @rthatcher : Thank you for your reply. I actually had to add a dns file /etc/docker/daemon.json file and put the following line to it:
{ "dns": ["your dns", "8.8.8.8"] }
This resolved the REQUEST_TIMEOUT issue.
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=8LnZ4EW363wqssx8J) @ErickCaro This is not Marbles asset, it is "collectable-penguin-app" where the author imported the card based on the login entry and used the card for subsequent transactions. Here is the complete Angular App code from git hub - https://github.com/caroline-church/collectable-penguin-app
[ ](https://chat.hyperledger.org/channel/composer?msg=8LnZ4EW363wqssx8J) @ErickCaro This is not Marbles asset, it is "collectable-penguin-app" where the author imported the card based on the login entry and used the card for subsequent transactions. Here is the complete Angular App code from git hub - https://github.com/caroline-church/collectable-penguin-app
[ ](https://chat.hyperledger.org/channel/composer?msg=8LnZ4EW363wqssx8J) @ErickCaro This is not Marbles asset, it is "collectable-penguin-app" where the author imported the card based on the login entry and used the card for subsequent transactions. Here is the complete Angular App code from git hub - https://github.com/caroline-church/collectable-penguin-app . Here is the medium link where the author explained the details of the same - https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
hey guys, when you do an composer network upgrade, like from the site tutorial, we get then two Docker containers, v0.0.1 and v0.0.2 container - the question is, what do you do with the old 0.0.1 container, do you kill it ?
Good Morning! I have a question regarding a multi org composer setup. I read the tutorial and what I understood was that every org gets a network admin identity in the business network and every network admin can issue new identities. I also understood, that a business network is the same across all orgs in one channel, so everybody can see the participants from every org in that channel. My question now is how can I restrict a network admin in one org to only be able to issue identities for specific participants? so one org should only be able to create bank participants, another should only be able to create investor participants. Otherwise any network admin could just create a regulator participant and is able to see all data
Has joined the channel.
@lennertr Composer sits on top of a fabric network, so it's best to start looking at your fabric setup first to work out the identities that will various permissions. At the simplest level (and fabric has the capability for more fine level access control) is you setup the identities that have authority to install chaincode onto your orgs peers, and then you create a channel and define which identities can instantiate chaincode on that channel. They could for example be identities from all or some of your orgs. Each org will probably have it's own CA that can issue identities specific for that organisation. Depending on how you set up your fabric ca (and you don't have to use the fabric ca, you can use other official CA's to create identities for you) you will have 1 or more pre-defined identities that have issuer authority (ie they have the authority to issue new identities).
There is no built in concept of a `network admin` in a business network as such. There is a built in Participant in the composer system model called `NetworkAdmin` but it is just a participant type (like any you might define in your model) and has no special capabilities. It gets `admin` rights because the sample ACLs we provide for all our sample business networks give the `NetworkAdmin` participant type full authority to do perform actions. So when you start a business network you provide an identity which is bound to a participant of type `NetworkAdmin` and because you have also provided ACLs in your business network to grant any NetworkAdmin participant type to be able to do anything, this is how (at the simplest level) composer provides the concept of a network admin for a business network.
@davidkel Thanks for your answer! What I still don't understand: Is the namespace used within composer different and the same across all orgs? so if my composer namespace is org.acme.abc.Bank how does a user from org1 or org2 access the business network? with their own (org1.manager e.g.) identity and namespace or is it necessary to issue identities within the org.acme.abc namespace and users need to use those?
@davidkel Thanks for your answer! What I still don't understand: Is the namespace used within composer different to those of the individual orgs and the same across all orgs? so if my composer namespace is org.acme.abc.Bank how does a user from org1 or org2 access the business network? with their own (org1.manager e.g.) identity and namespace or is it necessary to issue identities within the org.acme.abc namespace and users need to use those?
@davidkel Thanks for your answer! What I still don't understand: Is the namespace used within composer different to those of the individual orgs and the same across all orgs? so if my composer namespace is org.acme.abc.Bank how does a user from org1 or org2 access the business network? with their own (org1.example.com e.g.) identity and namespace or is it necessary to issue identities within the org.acme.abc namespace and users need to use those?
@davidkel Thanks for your answer! What I still don't understand: Is the namespace used within composer different to those of the individual orgs and the same across all orgs? so if my composer namespace is org.acme.abc.Bank how does a user from org1 or org2 access the business network? with their own (org1.example.com e.g.) identity and namespace or is it necessary to issue identities within the org.acme.abc namespace and users need to use those? or should the namespace used within the composer setup be the one from the existing orgs?
@lennertr namespaces are a programming concept to avoid clashes in class names or to be more descriptive, you can choose what you want them to be and how you want them to map to the business problem. Composer controls access to the business network based on the Participant being used. Whenever someone submits a transaction/query they use an identity. That identity must be bound to a participant in order for the composer runtime to determine the participant being used. If the identity is not mapped, then composer will reject that request. Identities are X509 certs, but the request is signed by the private key. Fabric checks that the signature is valid before even allowing it to access to the fabric network in the first place
@davidkel Thanks again. But who is issuing these identities in a production grade network? The CA's of every org?
@lennertr The CA's issue the identities and will need to sign them appropriately for your organisation
@davidkel So is there a possibility to restrict the ability of a CA, so it can't issue identities for a specific business network participant?
@lennertr CA's have no concept of a business network participant. All it does is issue identities for your organisation. In order for an identity to be able to interact on a business network it MUST be bound to a participant
@davidkel and who bounds the identities to a participant?
@davidkel and who bindsthe identities to a participant?
@davidkel and who binds the identities to a participant?
It's a composer capability. It's the identity who has been bound to a participant that has appropriate ACLs defined in the acl file to be able to bind identities to participants (`composer identity bind`)
That was really helpful!!
All the Samples provided by composer define the NetworkAdmin participant as having that authority (ie in the ACL file) and when you start a business network you provide identities that will be bound to participants of that type. So the upshot of this is it will be the identities you provide when you started the business network.
Hi,
I tried to start a composer network under a corporate proxy but I had some issues. I went on internet to have some answers (set npm proxy in the npmrc file etc...) but nothing seems to work.
I have this error message :
```
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-08-17T15_37_29_403Z-debug.log
"
Command failed
```
Any help would be great, thank you.
Hi,
I tried to start a composer network under a corporate proxy but I had some issues. I went on internet to have some answers (set npm proxy in the npmrc file etc...) but nothing seems to work.
I have this error message :
```
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-08-17T15_37_29_403Z-debug.log
"
Command failed
```
I managed to set up the proxy through a npmrc file but it doesn't work...
Any help would be great, thank you.
I am getting the following error while executing transaction createOrder:
```
"message": "Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Cyclic ACL Rule detected, rule condition is invoking the same rule"
```
ACL rules:
```
rule SampleConditionalRuleWithTransaction {
description: "Description of the ACL rule"
participant: "com.eprocure.participants.Buyer"
operation: ALL
resource: "com.eprocure.order.CreateOrderTransaction"
action: ALLOW
}
rule AdminCanReadEverything {
description: "Allow all participants read access to all resources"
participant: "com.eprocure.participants.Admin"
operation: READ
resource: "com.eprocure.**"
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule NetworkAdminCanAdmin {
description: "Network admin have all access to eprocure admin"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "com.eprocure.participants.Admin"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
model file:
```
asset Order identified by orderId {
// It would be uniue in the pattern of EPROC-ORD-(TIMESTAMP)
o String orderId
// Order Details
// o String orderDesc optional
--> SubBuyer subBuyer optional
--> Buyer buyer optional
//procut Details
--> OrderProductDetails[] orderProductDetails
// Status of the order
o Status orderStatus default="PENDING"
// Type of the order
o OrderType orderType default="DIRECT"
}
transaction CreateOrderTransaction {
o String orderId
--> SubBuyer subBuyer optional
--> Buyer buyer optional
o OrderProductDetails[] products
o Status orderStatus default="PENDING"
o OrderType orderType default="DIRECT"
}
asset OrderProductDetails identified by orderProductId{
o String orderProductId
--> Product product
o Integer quantity
}
```
logic.js:
```
async function createOrderTransaction(tx) {
var productsToAdd = [];
var factory = getFactory();
tx.products.forEach(function (productDetails) {
var orderProductDetails = factory.newResource('com.eprocure.order', 'OrderProductDetails', productDetails.orderProductId)
orderProductDetails.product = productDetails.product;
orderProductDetails.quantity = productDetails.quantity;
return getAssetRegistry('com.eprocure.order.OrderProductDetails')
.then(function (registry) {
registry.add(orderProductDetails)
})
console.log("push the productDetails to products");
console.log("resource:com.eprocure.order.OrderProductDetails#" + productDetails.orderProductId);
productsToAdd.push("resource:com.eprocure.order.OrderProductDetails#" + productDetails.orderProductId);
});
console.log("define new order resource");
var order = factory.newResource('com.eprocure.order', 'Order', tx.orderId);
order.orderProductDetails = productsToAdd;
console.log("attach buyer or supplier")
if (tx.buyer != null)
order.buyer = tx.buyer;
else
order.subBuyer = tx.subBuyer;
console.log("attached buyer or supplier")
order.orderStatus = tx.orderStatus;
order.orderType = tx.orderType;
console.log("all data set")
return getAssetRegistry('com.eprocure.order.Order')
.then(function (registry) {
registry.add(order)
})
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=dpLZHBGEgE9mAavCz) @ndatebayo We have some additional information in the Knowledge Wiki on `composer network install` and `composer network start`. I would point out that the npmrc file is specified on the *install* command not the start - even though the *start* is where you see the problems. I would also point put that in the Wiki we show how to build a test container to help diagnose problems with npm.
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#cinstallissues
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues
@HoneyShah based on the ACLs you provided, the participant in the business network performing the transaction, doesn't have the ability to UPDATE/CREATE in OrderProductDetails nor Order resource registries.
[ ](https://chat.hyperledger.org/channel/composer?msg=wFi6DFhHfbw5RgkwZ) @mahoney1 I have added both that rules before but there was same error. If I remove the code of either of asset adding and keep only one (Order or OrderProdcutDetails) then it is working with this also.
[ ](https://chat.hyperledger.org/channel/composer?msg=Ckzvcz9mcwtmNFwad) @Zeljko Milinovic Recent version of Composer follow the Fabric model of creating a new "Chaincode container" for each different version. Yes you can stop and remove the old versions of the container, and also remove the image of the container.
@rthatcher - Thanks I have deleted the old one and the data was still there in the new network after deploy, which is cool
I had another question about PArent/Child relationships in Assets
Do you use something special or you just create a Reflexive Relationship like in Datbases
I did for example
asset SampleAsset identified by assetId {
o String assetId
--> SampleParticipant owner
o String value
--> SampleAsset parrentasset
}
and the parrentasset I leave for the first time empty and every other asset has a parrentasset value of the assetId from the First instanciated parrent asset
Can this be solved any other way ?
Because the idea is to create the Tree
of Steps in one asset , there hast to be the first step and then derriving child sub-steps for my PoC
thanks in advnace
[ ](https://chat.hyperledger.org/channel/composer?msg=nLim6ur77iMrtGnKp) @Zeljko Milinovic There is no automated function to populate the Relationship fields. But you can pass relationships to a Transaction as parameters and process them in the logic.
[ ](https://chat.hyperledger.org/channel/composer?msg=EGePaajEzXmx9qbxk) I got the issue
how to specify array of relationship in TP functions?
@MikeRichardson you can find the answer [in this Stack Overflow thread](https://stackoverflow.com/questions/50339832/hyperledger-angular-app-error-message-could-not-find-api-route/50810262#50810262) or depending on your setup [this](https://stackoverflow.com/questions/47262477/deploying-an-angular-application-in-hyperledger-composer/47262761#47262761) may help ..
[ ](https://chat.hyperledger.org/channel/composer?msg=n7nWFdHyyvJffuca8) @rthatcher Hi rthatcher, maybe I did not express my question ok. I did not want to automatically populate the Fields. I would like to model the relationships in a PARENT/CHILD way
@Zeljko Milinovic yes, you can do as you modeled. You can derive the parent and grandparent (or children and grandchildren the other way, of the asset id in question)
What would be a good example of a production rdy StandardUser acl? Something like:
```
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
would be way to much while
```
rule StandardUserMinimal {
description: "Allow standard users to be able to connect to the business network as this requires read access"
participant: "org.hyperledger.composer.system.Participant"
operation: READ
resource: "org.hyperledger.composer.system.Network"
action: ALLOW
}
```
would be not enough to interact with the network, assuming that users should be able to create transactions, new assets through transactions and update other participants through transactions
What would be a good example of a production rdy StandardUser system acl? Something like:
```
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
would be way to much while
```
rule StandardUserMinimal {
description: "Allow standard users to be able to connect to the business network as this requires read access"
participant: "org.hyperledger.composer.system.Participant"
operation: READ
resource: "org.hyperledger.composer.system.Network"
action: ALLOW
}
```
would be not enough to interact with the network, assuming that users should be able to create transactions, new assets through transactions and update other participants through transactions
What would be a good example of a production rdy StandardUser system acl? Something like:
```
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
would be way to much while
```
rule StandardUserMinimal {
description: "Allow standard users to be able to connect to the business network as this requires read access"
participant: "org.hyperledger.composer.system.Participant"
operation: READ
resource: "org.hyperledger.composer.system.Network"
action: ALLOW
}
```
would be not enough to interact with the network, assuming that users should be able to create transactions, new assets through transactions and update other participants through transactions
Also is there a good overview about the org.hyperledger.composer.system.** namespace? I found https://hyperledger.github.io/composer/latest/systemns/01_summary which is missing org.hyperledger.composer.Network e.g. and https://github.com/hyperledger/composer/tree/master/packages/composer-common/lib/system is poorly documented
What would be a good example of a production rdy StandardUser system acl? Something like:
```
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
would be way to much while
```
rule StandardUserMinimal {
description: "Allow standard users to be able to connect to the business network as this requires read access"
participant: "org.hyperledger.composer.system.Participant"
operation: READ
resource: "org.hyperledger.composer.system.Network"
action: ALLOW
}
```
would be not enough to interact with the network, assuming that users should be able to create transactions, new assets through transactions and update other participants through transactions
Also is there a good overview about the org.hyperledger.composer.system.** namespace? I found https://hyperledger.github.io/composer/latest/systemns/01_summary which is missing org.hyperledger.composer.system.Network e.g. and https://github.com/hyperledger/composer/tree/master/packages/composer-common/lib/system is poorly documented
What would be a good example of a production rdy StandardUser system acl? Something like:
```
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
would be way to much while
```
rule StandardUserMinimal {
description: "Allow standard users to be able to connect to the business network as this requires read access"
participant: "org.hyperledger.composer.system.Participant"
operation: READ
resource: "org.hyperledger.composer.system.Network"
action: ALLOW
}
```
would be not enough to interact with the network, assuming that users should be able to create transactions, new assets through transactions and update other participants through transactions
[ ](https://chat.hyperledger.org/channel/composer?msg=uDiZiYCekkgXc4gsn) @rthatcher @rthatcher thanks brother it works for me
[ ](https://chat.hyperledger.org/channel/composer?msg=uDiZiYCekkgXc4gsn) @rthatcher it works for me thanks brother @rthatcher
hey guys could anyone recommend any sorce where i could find information about exposing hyperledger composer rest server on cloud? Preferably step by step tutorial. I would be very thankful !
Hi, I still face the REQUEST_TIMEOUT error. I have increased the timeout to 1200s. Also, included the npm.yaml file and npmConfig.txt file as suggested here: https://github.com/hyperledger/composer/issues/3731#issuecomment-387600862. One more info: When I access the url http://registry.npmjs.org/ through browser, Ido get a set of json values: db_name,doc_count,etc. Please do help me with this issue.
Hi, I still face the REQUEST_TIMEOUT error. I have increased the timeout to 1200s. Also, included the npm.yaml file and npmConfig.txt file as suggested here: https://github.com/hyperledger/composer/issues/3731#issuecomment-387600862. One more info: When I access the url http://registry.npmjs.org/ through browser, I get a set of json values: db_name,doc_count,etc. Please do help me with this issue.
[ ](https://chat.hyperledger.org/channel/composer?msg=25TKhFe8jvhRqu5ey) @bryq3 there's a [tutorial here](https://medium.com/@ongkhaiwei/deploy-composer-rest-server-as-cloud-foundry-application-in-ibm-cloud-platform-a32eeadc2a28)
Has joined the channel.
how to call composer-rest-api with reactjs?
Okay I really don't get the org.hyperledger.composer.system.** acl rules. When using https://pastebin.com/BX2wFkV5 , which should be every single system rule, it just ignores all other permissions. How is it different to:
```
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
```
which makes use of all the other permissions?
Hi Guys, I do get following error when I try to start my network
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Command failed
```
any help please
anybody????
[ ](https://chat.hyperledger.org/channel/composer?msg=76PoGG7d9FyxZueXQ) @hyper-sunder This looks like you have upgraded to Composer v0.20 but you are still connecting to a V1.1 Fabric. Composer v0.20 only supports Fabric v1.2. How did you build/create your Fabric?
oh.. great
understood well. which is best one upgrade fabric to v1.2 or downgrade composer 0.19?
both are supported, but it is usually better to move forward - bugs will be fixed faster in later versions.
@lennertr it isn't different than writing rules individually (ie pastebin) - the '**' means all operations (however many levels) under system. Your ruleset should still allow for a business network participant to connect to the runtime business network itself such as [recently discussed](https://stackoverflow.com/questions/51938369/hyperledger-composer-restrict-permissions-of-participants-to-pinging-the-networ/51947786#51947786) on Stack Overflow.
@lennertr it isn't different than writing rules individually (ie pastebin) - the '**' means all operations (however many levels) under system namespace. Your ruleset should still allow for a business network participant to connect to the runtime business network itself such as [recently discussed](https://stackoverflow.com/questions/51938369/hyperledger-composer-restrict-permissions-of-participants-to-pinging-the-networ/51947786#51947786) on Stack Overflow.
Where can we see the logs of TP functions?
[ ](https://chat.hyperledger.org/channel/composer?msg=GuLcy3zSN4YXT9ziB) @Messi-Q there are examples (using axios) in the Letter of Credit sample application -> https://github.com/hyperledger/composer-sample-applications/blob/master/packages/letters-of-credit/src/components/LetterOfCredit/LetterOfCredit.js#L186
[ ](https://chat.hyperledger.org/channel/composer?msg=ZjJP3yQuQCL4R2qo3) @HoneyShah see info here -> https://stackoverflow.com/questions/48890545/hyperledger-composer-on-fabric-console-log-doesnt-work
[ ](https://chat.hyperledger.org/channel/composer?msg=3Qd4mZaxBdJ9PLu2a) @mahoney1 There was a difference when using them individually in playground online. it just ignored every other rule despite the system level rules. But I think it was an issue with the online playground.
Is it correct behaviour that a participant doesn't need access to "org.hyperledger.composer.system.AddAsset" or "org.hyperledger.composer.system.AssetTransaction" for a asset transfer when the transfer is handeld within a custom transaction function invoked by the participant?
[ ](https://chat.hyperledger.org/channel/composer?msg=3Qd4mZaxBdJ9PLu2a) @mahoney1 There was a difference when using them individually in playground online. it just ignored every other rule despite the system level rules. But I think it was an issue with the online playground.
Is it correct behaviour that a participant doesn't need access to "org.hyperledger.composer.system.AddAsset" or "org.hyperledger.composer.system.AssetTransaction" for a asset transfer or creating new assets when the transfer or the creation is handled within a custom transaction function invoked by the participant?
@mahoney1 Thank you for sharing, I am referring to this case.I tried to connect successfully, I will continue to try to request api with axios.
@lennertr the opposite - for creating new assets, the BN participant will need mininally CREATE access to the AddAsset registry (whereas AssetTransaction is an abstract class, that's extended from at a system level (no resources are created here) eg its possible to have a ``` rule TraderAddAsset {
description: "Allow traders in trade network to add assets to AddAsset system registry"
participant: "org.acme.mynetwork.Trader"
operation: CREATE
resource: "org.hyperledger.composer.system.AddAsset"
action: ALLOW ``` and of course, near the top of your ACLs, rules for your user-defined asset registry(ies) (ie in your business network) - you would have an ACL to allow CREATE/READ/UPDATE etc to relevant participants in that (same applies to transactions here, which are resources themselves)
} ```
```
@lennertr the opposite - for creating new assets, the BN participant will need mininally CREATE access to the AddAsset registry (whereas AssetTransaction is an abstract class, that's extended from at a system level (no resources are created here) eg its possible to have a ``` rule TraderAddAsset {
description: "Allow traders in trade network to add assets - registered to AddAsset system registry"
participant: "org.acme.mynetwork.Trader"
operation: CREATE
resource: "org.hyperledger.composer.system.AddAsset"
action: ALLOW ``` and of course, near the top of your ACLs, rules for your user-defined asset registry(ies) (ie in your business network) - you would have an ACL to allow CREATE/READ/UPDATE etc to relevant participants in that (same applies to transactions here, which are resources themselves)
} ```
```
@lennertr the opposite - for creating new assets, the BN participant will need mininally CREATE access to the AddAsset registry (whereas AssetTransaction is an abstract class, that's extended from at a system level (no resources are created here) eg its possible to have a ``` rule TraderAddAsset {
description: "Allow traders in trade network to add assets - registered to AddAsset system registry"
participant: "org.acme.mynetwork.Trader" // or org.acme.mynetwork.* for all participants in the BN
operation: CREATE
resource: "org.hyperledger.composer.system.AddAsset"
action: ALLOW ``` and of course, near the top of your ACLs, rules for your user-defined asset registry(ies) (ie in your business network) - you would have an ACL to allow CREATE/READ/UPDATE etc to relevant participants in that (same applies to transactions here, which are resources themselves) -
the class ... IssueIdentity in org.hyperledger.composer.system.ts ... how to use it ?
or i can't use it ?
@rthatcher I have generated composer-rest-server when i do some txns i will get transaction id right from txn id how can i get the details about transaction?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ynAiG6KSC4raf6S2G) @Haddadmj - yes you can use the BusinessNetworkConnection class with the issueIdentity method.
This example does exactly that: https://developer.ibm.com/code/patterns/customer-loyalty-program-with-blockchain/ with the code in this specific file
[ ](https://chat.hyperledger.org/channel/composer?msg=ynAiG6KSC4raf6S2G) @Haddadmj - yes you can use the BusinessNetworkConnection class with the issueIdentity method.
This example does exactly that: https://developer.ibm.com/code/patterns/customer-loyalty-program-with-blockchain/
with the code in this specific file https://github.com/IBM/customer-loyalty-program/blob/master/web-app/network/network.js
that written in JS ... where i'm in TS
@rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=zLBDqfHWYKF8v8rje) @mahoney1 I copied the relevant rules for an example: https://pastebin.com/y3QTTDnz
With this permissions the "org.acme.abc.Bank" participant is able to create CreateUnauditedLoan Transactions and within the Transaction logic an asset named UnauditedLoan is created. Is this a bug?
Has joined the channel.
@Haddadmj see here -> https://github.com/hyperledger/composer/blob/master/packages/composer-playground/src/app/identity/issue-identity/issue-identity.component.ts#L72
[ ](https://chat.hyperledger.org/channel/composer?msg=ApkohcekRDKg5E5wh) @sureshtedla If you have the transaction ID - you can use it with a GET against the endpoint for your Transaction, or you can use it with the Historian.
The Knowledge Wiki has more information on the Historian: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#historian
@lennertr the rules you posted allows a Bank participant to have CREATE access on the target UnauditedLoan asset registry (via named transaction, assuming your code, which I've not seen,updates the right registry) - as long as the CURRENT participant identifier matches the resource owner identifier - ie if you switch to DENY and test, you should see the opposite (and in that scenario - other participants of Bank would be implicitly denied too)..
@lennertr the rules you posted allows a Bank participant to have CREATE access on the target UnauditedLoan asset registry (via named transaction, assuming your code, which I've not seen,updates the right registry) - as long as the CURRENT participant identifier matches the resource owner identifier - ie if you switch to DENY and test, you should see the opposite (and in that scenario - other participants of Bank would already be implicitly denied too)..
@rthatcher this part in register.js ... how it connect with network.js ?
https://imgur.com/a/2wH2P8R
@Haddadmj you should be able to figure it out from here https://github.com/IBM/customer-loyalty-program/blob/master/web-app/network/network.js#L68 - the first is just a member registration page then it maps to its business network identity: (FYI for any questions on that example, you can ask the author)
[ ](https://chat.hyperledger.org/channel/composer?msg=Za9mufMxsWa4bGd7W) @rthatcher Thank you
Has joined the channel.
Hi guys, im getting this error when trying to install my buisiness network, i have followed the install prerequisits and the playground tutorial with local installation, everything fine, i generated my yeoman app and created my models, until i had to install the bna and this error came
i don't think i missed something
Clipboard - August 22, 2018 11:37 AM
it had a type "---card" but still the same result
it had a typo "---card" but still the same result
Clipboard - August 22, 2018 11:50 AM
Found the issue, it was due to "Fabric" not running, but i don't remember shooting it down, could it be cause i suspended Ubuntu?
[ ](https://chat.hyperledger.org/channel/composer?msg=a8srECq6ZyF7376Ej) @juan.gzz.salz cool, that's what I was going to suggest - if you suspended the VM, it should resume. If you shutdown, then no. You can always quiesce your Fabric - by reading here (and restarting from where you left off) - see ANSWER 2 (and not answer 1) from [this Stack Overflow](https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data) - the directory it refers to if using Composer 0.20.0 / Fabric v1.2 - is `hlfv12` where discussed in the answer.
Hey All. I am using composer playground, and i'd like to disable certain participants from being able to view certain assets in the playground. I have READ access disabled using my ACL file, but when I sign in as the participant, the disabled assets can still be viewed in the registry. Am I misunderstanding what READ access means, or is there an extra trick?
[ ](https://chat.hyperledger.org/channel/composer?msg=inHB59Csz573ckPYQ) @mahoney1 Thx, yeah thats strange, but now i know what does that error mean, now im facing another problem but i want to research a little more before asking
Has left the channel.
Clipboard - August 22, 2018 2:29 PM
Well, could not find an answer to my 2nd problem
It says that my card does not have the required permissions, and everything its fine, i changed the access rules, so i game him persmissions and try to run everythinng again, i shutted down fabric since there is no uninstall business network command, that was a 3rd problem i had
i start "Fabric" again and tried again in the step where you isntall the network
then i start the network business
and try to create the card, the card was already created so i delete it and create it again just in case there are parameters that should be updated
imported the card
and then tried to ping... and that error happened
but it came to me that maybe i had to deploy the bna again, so i did so and recreate the steps since the
`composer archive create -t dir -n .
`
command
and did the same but with the new bna with the required permissions and got the same error again
here is my access rules file
`/*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* Sample access control list.
*/
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
`
I end up creating another application with yeoman and this time everything worked fine including the ping, but this leads me to a question, why when i changed the rules to give permission to everyone to everything, didn't work?, i have everything the same as the last one and the problem i think Im facing its that how do i update my business network with the new changes in my files?, i did generated a new bna, deleted cards also and did not work, also restarted fabric but none of them recognized my new rules, only createing a new app did.
Hi , am using node NPM to get the particular participant datas from hyperledger , I tried below code
businessNetworkConnection = new BusinessNetworkConnection();
await businessNetworkConnection.connect(CardName);
const assetRegistry = await businessNetworkConnection.getParticipantRegistry(namespace + '.Member');
const member = await assetRegistry.get(id);
await businessNetworkConnection.disconnect(CardName);
return member
The id the unique identifier of the participant and is working fine, how Can I get partipant by multiple value match ? like get by id and get by name like below
const member = await assetRegistry.get(id);
const member = await assetRegistry.get(name);
Hi , am using node NPM to get the particular participant datas from hyperledger , I tried below code
businessNetworkConnection = new BusinessNetworkConnection();
await businessNetworkConnection.connect(CardName);
const assetRegistry = await businessNetworkConnection.getParticipantRegistry(namespace + '.Member');
const member = await assetRegistry.get(id);
await businessNetworkConnection.disconnect(CardName);
return member
The id the unique identifier of the participant and is working fine, how Can I get partipant by multiple value match ? like get by id and get by name like below
const member = await assetRegistry.get(id);
const member = await assetRegistry.get(name);
Hi , am using node NPM to get the particular participant datas from hyperledger , I tried below code
businessNetworkConnection = new BusinessNetworkConnection();
await businessNetworkConnection.connect(CardName);
const assetRegistry = await businessNetworkConnection.getParticipantRegistry(namespace + '.Member');
const member = await assetRegistry.get(id);
await businessNetworkConnection.disconnect(CardName);
return member
The id the unique identifier of the participant and is working fine, how Can I get partipant by multiple value match ? like get by id and get by name like below
const member = await assetRegistry.get(id);
const member = await assetRegistry.get(name);
Hi , am using node NPM to get the particular participant datas from hyperledger , I tried below code
businessNetworkConnection = new BusinessNetworkConnection();
await businessNetworkConnection.connect(CardName);
const assetRegistry = await businessNetworkConnection.getParticipantRegistry(namespace + '.Member');
const member = await assetRegistry.get(id);
await businessNetworkConnection.disconnect(CardName);
return member
The id the unique identifier of the participant and is working fine, how Can I get partipant by multiple value match ? like get by id and get by name like below
const member = await assetRegistry.get(id); // Unique identifier
const member = await assetRegistry.get(name); //second param
and also How Can I get participant by without unique id , like get participant only by name match(second param only)
Hi , am using node NPM to get the particular participant datas from hyperledger , I tried below code
businessNetworkConnection = new BusinessNetworkConnection();
await businessNetworkConnection.connect(CardName);
const assetRegistry = await businessNetworkConnection.getParticipantRegistry(namespace + '.Member');
const member = await assetRegistry.get(id);
await businessNetworkConnection.disconnect(CardName);
return member
The id the unique identifier of the participant and is working fine, how Can I get partipant by multiple value match ? like get by id and get by name like below
const member = await assetRegistry.get(id); // Unique identifier
const member = await assetRegistry.get(name); //second param
and also How Can I get participant by name , like get participant only by name match(second param only)
Has joined the channel.
can anybody suggest me paid hyperledger course
hi, you can find good course on Udemy.com.
[ ](https://chat.hyperledger.org/channel/composer?msg=pn6sdoKzhF7Aa7FNz) @thiyagucse01 You can use Queries to retrieve Assets or Participants by any property. The Queries tutorial provides examples based on the Trade Network example and mainly uses the REST server, but queries can be called from the API using query class to run pre-built queries, or the buildQuery class to define new queries.
https://hyperledger.github.io/composer/latest/tutorials/queries.html
https://hyperledger.github.io/composer/latest/api/client-businessnetworkconnection#buildquery
Has joined the channel.
Hey guys, I'm trying to deploy a business network to multiple machines. What I'm having trouble with is the organisation certificate and key (public and private key?). Does anyone know how to generate a cert and a key for a peer?
hi, follow this link instruction https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
@Mozer18 Ok, thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=n96iturCrEetAW6Rv) @juan.gzz.salz hi Juan, to update your ACL rules (or any business network changes for that matter) for a business network previously deployed, you use `composer network upgrade` - you did some of the sequence, but the exact sequence is shown in 'Step Three' and 'Step Four' of [this tutorial](https://hyperledger.github.io/composer/latest/tutorials/queries) - then you should be able to ping using the same card as before.
[ ](https://chat.hyperledger.org/channel/composer?msg=n96iturCrEetAW6Rv) @juan.gzz.salz hi Juan, to update your ACL rules (or any business network changes for that matter) for a business network previously deployed, you use `composer network upgrade` - you did some of the sequence, but the exact sequence is shown in 'Step Three' and 'Step Four' of [this tutorial](https://hyperledger.github.io/composer/latest/tutorials/queries) - then you should be able to ping using the same card as before. Have added a response to this on [Stack Overflow](https://stackoverflow.com/questions/51975866/hyperledger-composer-cli-ping-to-a-business-network-returns-accessexception/51983081#51983081)
Hi guys. I am getting the REQUEST_TIMEOUT error while starting the business network. When I check the peer logs, there are no npm errors. "Couch DB Error:not_found, Status Code:404, Reason:Database does not exist." is the error I noticed in the logs. Could any of you help me resolve this.
[ ](https://chat.hyperledger.org/channel/composer?msg=amGM2kkFDBgHDobpi) @deep123 - That is an HTTP 404 Not Found error - so either you docker container for CouchDB is not started, or your peer can find it due to addressing/networking issues.
[ ](https://chat.hyperledger.org/channel/composer?msg=sS7W8MdQkphuddm66) @rthatcher Thanks for the reply. How do I address this issue. I have followed the steps from wiki and it didnt help.
[ ](https://chat.hyperledger.org/channel/composer?msg=sS7W8MdQkphuddm66) @rthatcher Thanks for the reply. How do I address this issue. I have followed the steps from wiki and it didnt help. I confirmed from my admin that there is no proxy.
@CollinSanborn it could be due to the order of your ACL rules (once a condition is matched, subsequent rules aren't evaluated) - suggest to raise a (Stack Overflow)[https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#issue} with your rules/model file and what you are trying to achieve (a sample JSON would be useful too)
@mahoney1 Hi thanks for your help ! I forgot to thank you for helping me on my last qeustion/
[ ](https://chat.hyperledger.org/channel/composer?msg=sS7W8MdQkphuddm66) @rthatcher The CouchDB container is up, I checked by using the docker ps command. How can I resolve the networking issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=sS7W8MdQkphuddm66) @rthatcher Thanks for the reply. The CouchDB container is up, I checked by using the docker ps command. How can I resolve the networking issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=sS7W8MdQkphuddm66) @rthatcher Thanks for the reply. The CouchDB container is up, I checked by using the docker ps command. How can I resolve the networking issue? Please do help me with this. I have tried all the solutions provided in the wiki.
[ ](https://chat.hyperledger.org/channel/composer?msg=sS7W8MdQkphuddm66) @rthatcher Thanks for the reply. The CouchDB container is up, I checked by using the docker ps command. How can I resolve the networking issue? Please do help me with this. I have tried the solutions provided in the wiki.
[ ](https://chat.hyperledger.org/channel/composer?msg=RWATorPQKWm79eQjg) @deep123 can i see your docker container configuration?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=kRkjJxMqn94uPDZJh) @Mozer18 I use docker version 18.06 and docker-compose version 1.22
i mean peers and couchDB containers configurations
Hi,
I'm running a composer network on a VM behind a corporate proxy. I managed to start the network, but when I execute a transaction that needs to request something from internet, I get this error :
```
{"error":{"statusCode":500,"name":"Error","message":"Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: failed to execute transaction: timeout expired while executing transaction","stack":"Error: Error trying invoke business network. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: failed to execute transaction: timeout expired while executing transaction\n at HLFConnection.invokeChainCode (/home/user/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:999:30)\n at
[ ](https://chat.hyperledger.org/channel/composer?msg=Ajqp46Qrj2EHofdhd) @ndatebayo Maybe you need to increase your timeout number
[ ](https://chat.hyperledger.org/channel/composer?msg=YmXWBWk6FJSY2MDGm) @Mozer18 No it doesn't work, but thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=iTjPRLTm4xWqyauQq) In my transaction I'm using a post request (in the logic.js file), maybe I should use a parameter to use it with a proxy ? I tried to find a way to do this but I didn't find anything. Can anyone give me an advice please ?
hi guys , is there a way to specify access controls for particular attributes of assets - for example making some attributes private allowing only restricted access?
[ ](https://chat.hyperledger.org/channel/composer?msg=5KCpAiLkTpog7v2zf) @rthatcher Thanks for your response , my query is look like below ,
query selectCommodities {
description: "Select all commodities"
statement:
SELECT org.example.mynetwork.Commodity WHERE (email == 'DYNAMIC ID FROM JS')
}
and am use that in js like below ,
ID = 'aaa@gmail.com';
businessNetworkConnection = new BusinessNetworkConnection();
await businessNetworkConnection.connect(CardName);
const UserKyc = await businessNetworkConnection.query('selectCommodities');
await businessNetworkConnection.disconnect(CardName);
return UserKyc;
Here How can I access this Dynamic ID in query selector ?
@ndatebayo its sounds like your VM's interface needs to route to the web address hosted at 95.85.63.65 where you're trying to POST ? You can always test your POST more locally (maybe you have) then work out what routing is required to allow your POST to the web address?
[ ](https://chat.hyperledger.org/channel/composer?msg=uKhfbHxTCm3LL5m6c) @Drest Composer doesn't do access controls at an attribute level currently its at a resource level
[ ](https://chat.hyperledger.org/channel/composer?msg=JiQFDEqavPdQecy5E) @mahoney1 Oh I see thanks for your response.
[ ](https://chat.hyperledger.org/channel/composer?msg=tNFknXAtDSMzyBGSw) @mahoney1 I tried that command after i changed my rules as in the tutorial, it was the las attempt i did, i had a version 0.0.2 of my application, followed the steps and the same error happened, i will totally play around with the rules and deploy to see if i missed a step and replicate my problem. Thank You!
@thiyagucse01 - in the Query definition you would have something like ` ... WHERE (email == _$targetEmail) ` and then in the transaction something like
```
ID = 'aaa@gmail.com';
...
const UserKyc = await businessNetworkConnection.query('selectCommodities',{ targetEmail: ID });
```
Clipboard - August 23, 2018 9:49 PM
@mahoney1,hello, When I deployed chain code(BNA file) to a 3-organization , the first “composer network install” command was successful, but 2th and 3rd both failed. The error message is as picture. What might be the problem? Please give some advice.
I used to deployed chain codes for 2 organizations which all docker run in one server. But this time, the six peer nodes of the three organizations are distributed across six servers, and zookeeper and Kafka nodes are enabled.
Thank you.
@wangrangli sounds like your peers haven't joined the channel - you can check your peer logs `docker logs
@wangrangli sounds like your peers haven't joined the channel - you can check your peer logs `docker logs
@mahoney1 Thank you. Strangely enough, when I looked at the container's log after the installation failed, I didn't see any log output from the peer node, perhaps because my loglevel was set to error.
Clipboard - August 23, 2018 6:09 PM
@wangrangli also - you need to ensure your additional peer admins have peer admin role (authority) in Fabric and that role is specified (see the multi-org tutorial) in the card create, as shown here eg `composer card create -p /tmp/composer/org1/byfn-network-org1.json -u PeerAdmin -c /tmp/composer/org1/Admin@org1.example.com-cert.pem -k /tmp/composer/org1/*_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@byfn-network-org1.card`
@wangrangli also - you need to ensure your additional admins (used for the 2nd/3rd org) have peer admin role (authority) in Fabric (to install the business networks on the peers) and that role is specified (see the multi-org tutorial) in the card create, as shown here eg `composer card create -p /tmp/composer/org1/byfn-network-org1.json -u PeerAdmin -c /tmp/composer/org1/Admin@org1.example.com-cert.pem -k /tmp/composer/org1/*_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@byfn-network-org1.card`
@abityildiz suggest to ask on #fabric
What should be done in order to avoid "Unexpected properties" error in a query, when i changed the model of my asset?, it was working fine until i did that and I think it has something to do with the old data
Any official documentation on Multi VM deployment of Fabric and Composer?
Any official documentation on Multi org & Multi VM deployment of Fabric and Composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=BuamRGbbkxBGKuun8) @abilashs same doubt
Hey guys. I am facing an issue when trying to deploy a composer app in the fabric 1.1. I already created my connection card with the private and public keys but when I try to install my BNA I got the following message : PEM encode certificate is required. Do you how to solve it ? I am wondering what can be happening because the certificates are present in the card. Thanks in advance.
Has joined the channel.
@mahoney1 thank you very much. I fixed the problem by your advise.
how to use block explorer on my existing fabric network
@abilashs you may find these blog posts useful: https://www.skcript.com/team/varun-raj/
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Rvk3LWTTKr6tdZ7C7) @malviyamukul If you want to use Hyperledger Explorer with the standard development Fabric provided with the fabric-development-servers scripts, then you could look at this Q/A in Stack Overflow.
If you want to use Hyperledger Explorer with your own custom Fabric, please ask in the #hyperledger-explorer channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=EhDo8SqCgy6kFrmuh) @juan.gzz.salz correct, its the data - > there is an open issue on this https://github.com/hyperledger/composer/issues/4189 - the [last comment](https://github.com/hyperledger/composer/issues/4189#issuecomment-400376542) is the current resolution
[ ](https://chat.hyperledger.org/channel/composer?msg=BuamRGbbkxBGKuun8) @abilashs @abilashs for Composer, there is a [multi-org tutorial](https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org) based on Fabric's Build your First Network (BYFN)-> . The following link provides for [multi-org](https://www.skcript.com/svr/simple-steps-to-run-hyperledger-fabric-composer-network-with-multiple-organization/) across machines and this for [multi-host](https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f) across machines.
[ ](https://chat.hyperledger.org/channel/composer?msg=BuamRGbbkxBGKuun8) @abilashs for Composer, there is a [multi-org tutorial](https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org) based on Fabric's Build your First Network (BYFN)-> . The following link provides for [multi-org](https://www.skcript.com/svr/simple-steps-to-run-hyperledger-fabric-composer-network-with-multiple-organization/) across machines and this for [multi-host](https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f) across machines.
For the REQUEST_TIMEOUT error on network start command, I have checked the peer logs and the errors that I found are :
1.Error:not_found, Status Code:404, Reason:Database does not exist.
2.Error:Get http://couchdb:5984/: dial tcp :5984: getsockopt: connection refused
3.stopping due to error while launching: timeout expired while starting chaincode clp-network:0.0.1(networkid:dev,peerid:peer0.org1.example.com
I did not find any npm errors in the log. Please do help.
For the REQUEST_TIMEOUT error on network start command, I have checked the peer logs and the errors that I found are :
1.Error:not_found, Status Code:404, Reason:Database does not exist.
2.Error:Get http://couchdb:5984/: dial tcp :5984: getsockopt: connection refused
3.stopping due to error while launching: timeout expired while starting chaincode clp-network:0.0.1(networkid:dev,peerid:peer0.org1.example.com
I did not find any npm errors in the log. Please do help. I am not able to move forward as I am stuck with this step.
[ ](https://chat.hyperledger.org/channel/composer?msg=jw5waJkNQyNRbj3Sb) @rthatcher Thanks , It working good
Hi , In my project I need to verify user KYC , users from different country have different identity like In India every one have unique Aadhaar id , for that same other country people have different identity , how Can I verify that identity ? Is there any api exist ?
Hi , In my project I need to verify user KYC , users from different country have different identity like In India every one have unique Aadhaar id , for that same other country people have different identity , how Can I verify that identity ? Is there any api ? or Is there any trusted 3rd exist ?
@MarioHF how did you build it - It requires a private key and a public certificate associated with that private key. They both need to be in .pem format. The public certificate will have text that starts with -----BEGIN CERTIFICATE----- whilst the private key will have text that starts with -----BEGIN PRIVATE KEY----- - see example [here](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org)
Has joined the channel.
How to use passport-local with composer rest server
@deep123 don't know your setup: is the CouchDB on the same server as the peer? How much memory allocated? Have you tried the dns_search option as described [here](https://github.com/hyperledger/composer/issues/2218#issuecomment-331759596) - a setting in the Yaml file. Sounds also like you've got a resolution issue for 'couchdb' , also is there a firewall enabled preventing access on the port. Sorry, this is a Fabric issue, might be best to ask for the answer there (providing them with details)
For which case this error occurs?
```
request POST /api/system/identities/issue: Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
```
For which cases this error can occur?
```
request POST /api/system/identities/issue: Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
```
For which cases this error can occur?
```
request POST /api/system/identities/issue: Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
```
My ca logs saying:
```
Registration of '416' failed: : scode: 401, local code: 42, local msg: '412' is not a registrar, remote code: 20, remote msg: Authorization failure
```
[ ](https://chat.hyperledger.org/channel/composer?msg=rEsZCurvH2TAnmgQb) @mahoney1 I get this error while starting the composer business network. Yes, CouchDB is on the same server as the peer. I am on a mac system. Can you let me know how can I check the memory allocated.
[ ](https://chat.hyperledger.org/channel/composer?msg=rEsZCurvH2TAnmgQb) @mahoney1 I get this error while starting the composer business network. Hence, I thought this would be the right platform .Yes, CouchDB is on the same server as the peer. I am on a mac system. Can you let me know how can I check the memory allocated.
@thiyagucse01 you can use getCurrentIdentity in the APIs https://hyperledger.github.io/composer/latest/api/runtime-api#getcurrentidentity
[ ](https://chat.hyperledger.org/channel/composer?msg=GMD6at2YGS2NxED7z) @HoneyShah The 'current' ID you are using does not have the authority to create other IDs. By default the Network Admin has that authority, and if you want another ID to have that authority you need to specify it.
You can specify that a new ID has the authority on the command line with ` composer identity issue ... --issuer ` or you can specify it with the REST server by including this JSON
`{ "participant": "resource:org.acme.mynetwork.BizAdmin#org1admin", "userID": "jdoe", "options": {"issuer" : true} }`
@rthatcher I have already passed that
```
{
"participant": "resource:com.eprocure.participants.Buyer#417",
"userID": "417",
"options": {
"issuer": true
}
}
```
@rthatcher I had already passed that still I got that issue
```
{
"participant": "resource:com.eprocure.participants.Buyer#417",
"userID": "417",
"options": {
"issuer": true
}
}
```
@rthatcher I had already passed that still I got that issue. Please help
```
{
"participant": "resource:com.eprocure.participants.Buyer#417",
"userID": "417",
"options": {
"issuer": true
}
}
```
@mahoney1 am asking about user KYC verification , In every country each citizen have unique Id proof , I need to verify their people identity , Like if Indian people means every people have aadhaar card that unique identity for indian citizen, for that every country people have unique Id proof , based on country I need to verify user identity proof , is there any api or third party exist for same?
@rthatcher @mahoney1 I have one asset called order asset order identified by orderNumber {o string orderNumber o String status o String invoiceNumber} how to write query that i want to know the status of perticular order
name space org.acme.Chain.Order
buyer called amazon
[ ](https://chat.hyperledger.org/channel/composer?msg=GMD6at2YGS2NxED7z) @HoneyShah check if this identity is registered in your C.A
[ ](https://chat.hyperledger.org/channel/composer?msg=Cqrg8TTQS6NbHAag6) @Mozer18 I checked using composer identity list. it is showing me that.
How can we check the role of user? Any command or api for that?
In rest api, for post request if we don’t pass id filed in data then it is updating the object but throwing 500 and if we pass id field then it says: it can not be updated. Is that a bug??
@sureshtedla there are examples in the docs -> https://hyperledger.github.io/composer/latest/reference/query-language and sample-networks https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/queries.qry
[ ](https://chat.hyperledger.org/channel/composer?msg=XhhyYq7LAfzY87Ssq) @rthatcher @mahoney1 Please help
In a transaction how can I set an array of resources - my assess is defined as follows -
asset Order identified by orderId {
o String orderId
o String orderRefNo
o DateTime orderDate
o OrderItem [] orderItems
--> Company fromCompany
--> Company toCompany
} and I want set the orderItems
asset Order identified by orderId {
o String orderId
o String orderRefNo
o DateTime orderDate
--> OrderItem [] orderItems
--> Company fromCompany
--> Company toCompany
} and I want set the orderItems
i think you should make o Order [] orders or --> Order [] orders instead of OrderItem
By the way guys, could you recommend some node.js tutorial for writing chaincode?
@avagarwal see this [Stack Overflow](https://stackoverflow.com/questions/50820526/creating-new-participant-and-adding-array-of-assets-by-reference-to-it) or this [Stack Overflow](https://stackoverflow.com/questions/51654316/how-to-make-component-item-change-owner-automatically-with-its-parent) - should end up with something like e something like `"orderItems": [
"resource:org.acme.track.Orderitem#I1",
"resource:org.acme.track.OrderItem#I2"
]`-in your array
@avagarwal see this [Stack Overflow](https://stackoverflow.com/questions/50820526/creating-new-participant-and-adding-array-of-assets-by-reference-to-it) or this [Stack Overflow](https://stackoverflow.com/questions/51654316/how-to-make-component-item-change-owner-automatically-with-its-parent) - should end up with something like e something like ` "orderItems": [
"resource:org.acme.track.Orderitem#I1",
"resource:org.acme.track.OrderItem#I2"
] `-in your array
@avagarwal see this [Stack Overflow](https://stackoverflow.com/questions/50820526/creating-new-participant-and-adding-array-of-assets-by-reference-to-it) or this [Stack Overflow](https://stackoverflow.com/questions/51654316/how-to-make-component-item-change-owner-automatically-with-its-parent) - should end up with something like e something like ``` "orderItems": [
"resource:org.acme.track.Orderitem#I1",
"resource:org.acme.track.OrderItem#I2"
] ```-in your array
@bryq3 [this](https://medium.com/wearetheledger/how-to-start-writing-your-hyperledger-fabric-nodejs-chaincode-4052393933ab) may be useful
@bryq3 [this link](https://medium.com/wearetheledger/how-to-start-writing-your-hyperledger-fabric-nodejs-chaincode-4052393933ab) may be useful
[ ](https://chat.hyperledger.org/channel/composer?msg=jp7JuDSvcEHBkuj4J) @mahoney1 if i want to take product and price in one is it possible ? example "Apple":"$10" like this
[ ](https://chat.hyperledger.org/channel/composer?msg=CiNHuCxohG88tY4ra) or first productname next line product price
@sureshtedla thanks, got it
@mahoney1 thanks, got it
Has joined the channel.
Hi Team, I need assistance to deploy my business network on the IBP starter plan and generate the composer rest APIs out of that .
I also used that , but it gives me issue on step 5.2 while importing cards .
@kapila123 there's a tutorial https://www.ibm.com/developerworks/cloud/library/cl-deploy-blockchain-starter-plan-network/index.html that does what you need?
with error 404 object not found.
Clipboard - August 24, 2018 9:02 PM
@kapila123 I see you've asked the author for clarification, suggest to wait for his response (noticed others have not encountered this, have you verified you too the correct steps preceding that?) - the steps you would need (from reading the tutorial is captured here -> https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-network
@kapila123 I see you've asked the author for clarification, suggest to wait for his response (noticed others have not encountered this, have you verified you took the correct steps preceding that?) - the steps you would need (from reading the tutorial is captured here -> https://console.bluemix.net/docs/services/blockchain/develop_starter.html#deploying-a-business-network
@mahoney1 , Hi. The Log of REQUEST_TIMEOUT peer(in the picture) show it has a lscc error internal, And the chaincode file is in the continer's floder. So, what can I do by composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=c5HwAnkZwQ7PfBqy4) @mahoney1 looks to me yes , even my NODE_CONFIG also created same as they suggest but looks cars are not getting imported in the cloudant composer wallets .
@wangrangli looking at the screenshot, it would seem you need to upgrade your package.json and version to enable the upgrade to succeed (and not get the 'already exists' message).
@wangrangli the lscc is the system chaincode that handles events (like chaincode install etc) - not sure why you're seeing the Fabric errors, but you could remove it [per the instructions here](https://stackoverflow.com/questions/51015655/hyperledger-fabric-how-to-remove-a-chaincode-on-peer)including from the peer (is it a dev environment?) and install the business network afresh.
@mahoney1 , Thanke you. Yes, it is an old version. But the 5th response is main problem. That peer has a lscc error when i run that command, So i can't do composer network install new version chaincode in the peer. And can't upgrade business network.
@HoneyShah - this error `Registration of '416' failed: : scode: 401, local code: 42, local msg: '412' is not a registrar, remote code: 20, remote msg: Authorization failure` is the error you get when trying to issue an identity when the 'current' identity does not have the authorisation. You will need to use the Admin ID to create an ID with "issuer":"true"
Unfortunately Composer can't tell you if an ID has that Authorisation - you would have to use the fabric-ca client. If you want to use the fabric-ca client, the user guide is here: https://hyperledger-fabric-ca.readthedocs.io/en/latest/users-guide.html and there is a specific channel #fabric-ca if you have questions.
@wangrangli the lscc is the system chaincode that handles events (like chaincode install etc) - not sure why you're seeing the Fabric errors, but you could remove it [per the instructions here](https://stackoverflow.com/questions/51015655/hyperledger-fabric-how-to-remove-a-chaincode-on-peer)including from the peer (is it a dev environment?) and install the business network afresh.
@wangrangli the lscc is the system chaincode that handles specific system requests (like chaincode install etc) - not sure why you're seeing the Fabric errors, but you could remove it [per the instructions here](https://stackoverflow.com/questions/51015655/hyperledger-fabric-how-to-remove-a-chaincode-on-peer)including from the peer (is it a dev environment?) and install the business network afresh.
@wangrangli the lscc is the system chaincode that handles specific system requests (like chaincode install etc) - not sure why you're seeing the Fabric errors, but you could remove it [per the instructions here](https://stackoverflow.com/questions/51015655/hyperledger-fabric-how-to-remove-a-chaincode-on-peer) including from the peer (is it a dev environment?) and install the business network afresh.
@mahoney1 Thank you. I get the error info from the log of the peer after i run the command. My problem is I can install new version bna file except that peer, So I can't upgrade the bna for all peers.
Does the latest version of composer support SideDB Collection feature in Fabric v1.2 ? https://github.com/hyperledger/composer/releases/tag/v0.20.0
Hi,
I'm trying to run a hyperledger composer network (with the playground) on openshift, but I didn't find any documentation. Can anyone give me some advices in order to do that ?
Hi,
I'm trying to run a hyperledger composer network (with the playground) on openshift, but I didn't find any documentation. Can anyone give me some advices in order to do that ?
The only thing that I found is this : https://github.com/rflorenc/hyperledger-composer-ocp but it doesn't help me much...
[ ](https://chat.hyperledger.org/channel/composer?msg=adjMoohL5mfHkK9HJ) @gauthampamu - No, Composer does not exploit that feature. Composer v0.20 was intended to 'tolerate' Fabric 1.2, rather than to exploit the new features.
@mahoney1 thank you. Delete the chaincode from the file system of the peer under /var/hyperledger/production/chaincodes can't fixed the problem. I delete the chaincode file in all peers. But the problem is still. I restart the chain as a new one,it go.
@waleed and I hold a Fabric/Composer workshop on September 11th in Zurich (Switzerland): https://bitly.com/2NhcHEg
@ndatebayo this may help -> https://blog.openshift.com/istio-traffic-management-diving-deeper/ - it has an example of a yaml for playground in that env - obviously its a platform not supported by Composer presently.
[ ](https://chat.hyperledger.org/channel/composer?msg=7rGvNepufhdFkAmHZ) @mahoney1 Hi @mahoney1 , if i have a production environment, what would be an option in case they ask me for a change in the model assets, what happen if i have no option to delete that data. In the issue he had to delete the data but i don't think that would be an option for an already working Blockchain Thanks in Advance
Clipboard - August 24, 2018 9:32 PM
Has joined the channel.
I'm trying to install hyperledger composer for the first time. when i go to download it I get the error, curl: (51) SSL: no alternative certificate subject name matches target host name 'hyperledger.gethub.io'
when i put -k in for unsecure the preregs.ubmutu.sh file is empty, -rw-r--r-- 1 rlockard rlockard 0 Aug 24 14:58 preregs-ubuntu.sh
If I manually put the url https://hyperledger.gethub.io/composer/latest/preregs-ubuntu.sh in my browser, it does not appear to be a github site. I got the url from the hyperledger composer turtortal
bleay my last, the url i put in was everything up to but not including preregs-umuntus.sh
the command I used was rlockard@owi-blockchain-dev:~$ curl -O https://hyperledger.gethub.io/composer/latest/preregs-ubuntu.sh
Hi All, Any recommendations on tools for security scans on composer smart contract code? Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=CTBNMK4bJB2L8ECAp) @abityildiz Have you re-run the startFabric.sh script? If so, please see the second answer to this Stack Overflow post https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
You will need to delete the existing card and start again with a new Business Network.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=3uQpGajebZFf9Hew4) @rthatcher the peer node was exited.I tried it a lot start to again,but peer node images not start.i have re-setup fabric.i did'not solve this problem.
How can I add a common peer for multiple organisations in a Hyperledger Network ?
[ ](https://chat.hyperledger.org/channel/composer?msg=Dntvonykv7qivJPop) @mahoney1 Thanks a lot I'll have a look
How to view all deployed networks/list of deployed network on my current fabric instance? as i can list all the cards in available with "composer card list".
Is there any workaround for requiring Node APIs or node modules inside a Transaction Processor function?
Hey guys. I am getting the following error when try to ping the admin@
Hey guys. I am getting the following error when try to ping the admin@
Hey guys. I am getting the following error when try to ping the admin@
@MarioHF you can activate identity by using command composer identity list -c
When i am trying to connect to my Hyperledger business network, I am getting ssl handshake failure, Error : Handshake failed with fatal error SSL_ERROR_SSL: error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure.....
There is no problem with cards as i am able to invoke transactions from composer command line and composer playground...spent couple of days researching on this and it seems like issue with grpc, fabric-ca-client and fabric-client versions packaged in composer 0.20.0.
Wondering if any successful attempt for any one so far
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=CSFjoNT2QWoLkbNmz) @Bhanu HI Bhanu. I tried this command but I got the same message error. Seems like any activity with the network card will result in the same error.
@rthatcher - How to connect the multiple peer in hyperleder-fabric or composer
Hi
I'm trying to run the last Hyperledger (I reinstalled the composer from scratch and the first network), everything is OK, but when I'm starting the RestApi server I received the following error:
+ composer-rest-server -c bob@tireports -w
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: Composer runtime (0.19.6) is not compatible with client (0.20.0)
Any idea?
Thanks in advance
In rest api, for post request if we don’t pass `id` filed in data then it is updating the object but throwing 500 and if we pass ` id ` field then it says: it can not be updated. Is that a bug??
In rest api (multiuser mode), for post request if we don’t pass `id` filed in data then it is updating the object but throwing 500 and if we pass ` id ` field then it says: it can not be updated. Same is working fine without multiuser mode. So it is a bug of composer
@rthatcher @mahoney1 In rest api (multiuser mode), for post request if we don’t pass `id` filed in data then it is updating the object but throwing 500 and if we pass ` id ` field then it says: it can not be updated. Same is working fine without multiuser mode. So it is a bug of composer. Can you please check?
Has joined the channel.
@rthatcher @mahoney1 @marksta in asset how to add multiple items that comes multiple times for example product name and product price these fileds come mutilple times how to do this?
@rthatcher hi, what is the value for an uninitialized field (of type String or )of an asset instance?
@rthatcher hi, what is the value for an uninitialized field (of type String)of an asset instance?
@rthatcher hi, what is the value for an uninitialized field (of type String)of an asset instance? I am particularly interested how to query for assets instances with such fields.
[ ](https://chat.hyperledger.org/channel/composer?msg=dtqrinMED5fgBtSMo) @RaSa 6 The versions of composer-rest-server and composer runtime is not compatible. Update the runtime to 0.20 or downgrade the rest sever to 0.19.6.
[ ](https://chat.hyperledger.org/channel/composer?msg=gZ6e42gZrsJuaJTDh) @MarioHF Hi Mario
Thanks a lot,
I try to do that: both upgrade and downgrade: but than I got a different error: + composer network ping -c bob@tireports
Error: Error trying to ping. SyntaxError: Unexpected end of JSON input
Command failed
BTW: is the downgrade is by uninstall and than install the following: omposer-cli@0.19.13
npm install -g composer-rest-server@0.19.13
npm install -g generator-hyperledger-composer@0.19.13
npm install -g yo
npm install -g composer-playground@0.19.13
Can you point me to a working version?
Thanks in advance
In asset order string items[] filed
In asset order string items[] filed @mahoney1
In asset order string items[] filed @mahoney1 @rthatcher
i want to send data like "itemno":"1"."price":"30","quantity":"30kg" is it possible?
i want to send data like "itemno":"1","price":"30","quantity":"30kg" is it possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=vY2u7wwQdobPWXj3g) these fields come multitple times
Hey guys, I want to customize composer rest server and enable the multi users mode. I have noticed that when I use the command `yo hyperledger-composer` it is not asking me about authentication (enabling auth for REST api using passport, wallet management ...). Those questions are asked when we use `composer-rest-server`. Hence when I generate the loopback application, I dont have end points for wallet and system/identities management. The ping endpoint is the only one present in the system model.
So my questions: Is it normal? How can I do to generate wallet and identities management endpoints? or Should I create them myself? Thanks in advance
Hi, I'm trying to clean up the structure of my working directory for production. I've got my BNAs and Credentials segregated by whether they are for a local default deployment for development or for production. I'm wondering what the rule is for the location of the package.json. I'd like to stick it with the BNAs, because the version numbers could get out of sync if the package.json was the same for production and development. I'm not sure what the requirement is for the package.json location.
[ ](https://chat.hyperledger.org/channel/composer?msg=z3yCzXFTiLfEnBEvi) @RaSa 6 You should uninstall composer first, before you install. Have you done that? If you uninstall do it once with -g and once without -g. Sometimes if you have a local version installed you can get this kind of error.
trying to follow this https://hyperledger.github.io/composer/latest/installing/development-tools.html i get this: No version of composer-cli has been detected, you need to install composer-cli at v0.20 or higher and it seems like without sudo it can hardly be done in ubuntu
[ ](https://chat.hyperledger.org/channel/composer?msg=GJbK6fX3HfwSAoJGC) @greg2git Try this https://github.com/sindresorhus/guides/blob/master/npm-global-without-sudo.md
Has joined the channel.
Hi , whats the main difference between hyperledger composer and hyperledger fabric ?
In myunderstand hyperledger composer provides network cards,composer-playground, skeleton angular app and rest api for easy development and interact with blockchain
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=TDdDskDcPYfdPHMK3) @thiyagucse01 Fabric is framework and composer is tool to create easy blokchain applications
@knagware9 thanks for your response, I buy a server space from goDaddy, is it possible to create and run my one of peer in goDaddy ?
[ ](https://chat.hyperledger.org/channel/composer?msg=RNNxepHAsK5CbsZEQ) @thiyagucse01 yes ,,it can be run on any cloud or any OS
Yeah ok Fine
Hi guys, is it possible to enable multiuser mode for rest server deployed on cluster with ibm container service scripts?
Has joined the channel.
Hi, could it be that the playground is offline?
nevermind
Has joined the channel.
Hii,
I created hyperledger composer network locally
and I deployed model and script file now I am getting the output on composer rest-api-server
but if I added one more participant in model file then it is not reflecting on Rest-Api-Server so how new participant of model file will reflect on Rest-API-server
??????
If anyone know the solution of this then please let me know?
[ ](https://chat.hyperledger.org/channel/composer?msg=NNmXjpddqZQmtaXoz) @bryq3 It should be possible to achieve this by modifying the .yaml file for the REST container, and adding some additional environment variables. The REST container is built using this file `composer-rest-server.yaml.base` in this folder `ibm-container-service/cs-offerings/kube-configs`
I haven't tried it myself.
[ ](https://chat.hyperledger.org/channel/composer?msg=FL7ioTXDpEENo5iHv) @gauri When you change the Model (adding a participant type) you need to stop and restart the REST server.
When the REST server starts, the first thing it does is to "Discover" the Business Network and build the end points - it does not change them dynamically.
[ ](https://chat.hyperledger.org/channel/composer?msg=YM5oEaXBPHYudLeEu) @sureshtedla You could create a _concept_ that I have called Stock, and then you can add an array of Stock to your Asset, something like this:
```
concept Stock {
o String itemno
o String price
o String quantity
}
...
o Stock[] items
...
```
The modelling language is described here: https://hyperledger.github.io/composer/latest/reference/cto_language
[ ](https://chat.hyperledger.org/channel/composer?msg=AfrMSJXnKzFpP97f6) @rthatcher I restart Network many times and again hit the commands of deploy but still it is not reflecting on rest-sever then I run the project on another port also but it is not reflecting ....how to build the end points???????
[ ](https://chat.hyperledger.org/channel/composer?msg=AfrMSJXnKzFpP97f6) @rthatcher I restart Network many times and again hit the commands of deploy but still it is not reflecting on rest-sever then I run the project on another port also but it is not reflecting????????????????
[ ](https://chat.hyperledger.org/channel/composer?msg=AfrMSJXnKzFpP97f6) @rthatcher I restart Network many times and again hit the commands of deploy but still it is not reflecting on rest-sever then I run the project on another port also but it is not reflecting???
[ ](https://chat.hyperledger.org/channel/composer?msg=JZWoCfmH2GiXhC32r) @gauri hi, you need to generate a new .bna file and deploy it on your network. make sure to delete the old one before generate a new .bna
Has joined the channel.
Hello everyone....I am trying to create an application using composer playground. I am having trouble in writing javascript code with runtime apis like `"Typerror : getAssetRegistry is not a function"`. Is there any good examples links u know that can helpp me start writing the logic for the transactions ? Any small hints ??
[ ](https://chat.hyperledger.org/channel/composer?msg=yKpFs48Rj6zGwScYL) @rthatcher Do you have an idea please?
how can i use the mspid defined in the business network card in the permission.acl file so that i can have different access permissions to participants of different organisations ?? please help
[ ](https://chat.hyperledger.org/channel/composer?msg=y39dyKpWQxEsaYBEF) @Mozer18 yes i am doing this only but how many times i will create new network because for small changes i have to create new network so is there any command to deploy changes of model file or update the changes..because I am just adding the one attribute for the participant or creating new participant but it is not reflecting??
Hi,
I have up and running Hyperledger Fabric 1.2 network from the tutorial https://hyperledger-fabric.readthedocs.io/en/release-1.2/write_first_app.html
How could I connect Composer and composer-playground v0.20 to the network?
[ ](https://chat.hyperledger.org/channel/composer?msg=sck9osHjPsW4SqFnM) and I am solving this issue since last 5 days ... I follow many links but i didnt get any command to deploy my changes in existing model file
[ ](https://chat.hyperledger.org/channel/composer?msg=3w8xLJh7kFQR2AHqv) @rthatcher hi @rthatcher here is my configtx.yaml
[ ](https://chat.hyperledger.org/channel/composer?msg=WYW6pzXwpD36hgFqv) @gauri you have "composer network update" which allows you to update your business network
[ ](https://chat.hyperledger.org/channel/composer?msg=7sjTCwsY9LDntpvaS) Profiles:
TwoOrgsOrdererGenesis:
Orderer:
<<: *OrdererDefaults
Organizations:
- *OrdererOrg
Consortiums:
SampleConsortium:
Organizations:
- *Org1
- *Org2
TwoOrgsChannel:
Consortium: SampleConsortium
Application:
<<: *ApplicationDefaults
Organizations:
- *Org1
- *Org2
- &OrdererOrg
Name: OrdererOrg
ID: OrdererMSP
MSPDir: crypto-config/ordererOrganizations/example.com/msp
- &Org1
Name: Org1MSP
# ID to load the MSP definition as
ID: Org1MSP
MSPDir: crypto-config/peerOrganizations/org1.example.com/msp
AnchorPeers:
- Host: peer0.org1.example.com
Port: 7051
- &Org2
Name: Org2MSP
ID: Org2MSP
MSPDir: crypto-config/peerOrganizations/org2.example.com/msp
AnchorPeers:
- Host: peer0.org2.example.com
Port: 7051
Orderer: &OrdererDefaults
# Orderer Type: The orderer implementation to start
# Available types are "solo" and "kafka"
OrdererType: solo
Addresses:
- orderer.example.com:7050
# Batch Timeout: The amount of time to wait before creating a batch
BatchTimeout: 2s
# Batch Size: Controls the number of messages batched into a block
BatchSize:
# Max Message Count: The maximum number of messages to permit in a batch
MaxMessageCount: 10
AbsoluteMaxBytes: 99 MB
PreferredMaxBytes: 512 KB
Kafka:
# Brokers: A list of Kafka brokers to which the orderer connects
# NOTE: Use IP:port notation
Brokers:
- 127.0.0.1:9092
# Organizations is the list of orgs which are defined as participants on
# the orderer side of the network
Organizations:
Application: &ApplicationDefaults
# Organizations is the list of orgs which are defined as participants on
# the application side of the network
Organizations:
[ ](https://chat.hyperledger.org/channel/composer?msg=Wz8aYfdsoLkFpHWjL) *composer network update * is a command to update your business network
[ ](https://chat.hyperledger.org/channel/composer?msg=ZP397M2WfmhZMtvqK) @Mozer18 can you send me the command because I followed update commands but it is not working ...If you know the commands then please send me
[ ](https://chat.hyperledger.org/channel/composer?msg=L2jhaGpG63heoBN49) @gauri *composer network update --archiveFile path_to_your_archive_file --card the_admin_network_card*
[ ](https://chat.hyperledger.org/channel/composer?msg=tYwNr6njSiomXGfGg) @Mozer18 okk thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=KJA2eLiKXnwfMY6JM) what will come at --archiveFile path_to__your_archive_file ???
[ ](https://chat.hyperledger.org/channel/composer?msg=PaKN9qx86R4ZpwXvF) @gauri something like *--archiveFile ./project/dist/archive.bna*
[ ](https://chat.hyperledger.org/channel/composer?msg=uFQh5Ah8Jsmu9tdX3) @Mozer18 composer network update /home/gaurig/composer/trading1/trading1@0.0.1.bna --card admin@trading1
[ ](https://chat.hyperledger.org/channel/composer?msg=gcfQZCgPyk9zgxynh) i used this by editing and given my card name but it is falied
what's the error?
[ ](https://chat.hyperledger.org/channel/composer?msg=EFQ4eGAz2oTtTfgBJ) @gauri show me error output
Hello,
Anyone has tried put request with multi user mode in rest server?
[ ](https://chat.hyperledger.org/channel/composer?msg=Pc7B4E5Bvgn4H7YDT) @Mozer18 gaurig@rpqbsrv001:~/composer/trading1$ composer network update /home/gaurig/composer/trading1/trading1@0.0.1.bna --card admin@trading1
composer network
[ ](https://chat.hyperledger.org/channel/composer?msg=DemLSXXzjua9LuNrC) I want the command because when we building the project then we will definately changes in our coding then how many times I will create new network for small changes
[ ](https://chat.hyperledger.org/channel/composer?msg=DemLSXXzjua9LuNrC) @gauri oh i see, your're using composer 0.19.x. I'm still using composer 0.16.x. The right one is the *upgrade* with your version
but if I will use that version then that command will it work??
yes, but there is nothing wrong with 0.19.x version. Just use the *upgrade* command. before upgrading the network, you just need to install the new version of .bna file using *composer network install*
means for small changes I have to do install new version of .bna file
Hey guys. I want to ask that is there any kind of concept for Indexing in hyperledger. For quick searching lets suppose among 10 Million transactions submitted lets.
How does hyperledger handles this amount of Search ?
[ ](https://chat.hyperledger.org/channel/composer?msg=AATYpXce6Z55jPLSR) @Mozer18 okay thnks, I will upgrade version then i will check it will work or not??
[ ](https://chat.hyperledger.org/channel/composer?msg=oh3XekDLMX5XD42zJ) @gauri hi there, yes, upgrade your version in package.json and then follow steps ('Step Three and Step Four') as shown here -> https://hyperledger.github.io/composer/latest/tutorials/queries and you're sorted.
[ ](https://chat.hyperledger.org/channel/composer?msg=oh3XekDLMX5XD42zJ) @gauri hi there, yes, upgrade your version in package.json and then follow steps ('Step Three and Step Four') - (eg using 0.19.x / 0.20.x of Composer) as shown here -> https://hyperledger.github.io/composer/latest/tutorials/queries and you're sorted.
[ ](https://chat.hyperledger.org/channel/composer?msg=cte7ZYRCrP2Xp6CD9) @mahoney1 yes i saw this link but how to upgarde the version of package.json
@JackMalinowski - if you look at the [multi-org](https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org) tutorial - which uses the same BYFN network as the link you posted - it will show you how to build your business network cards, install the network, interact with it, issue other cards, and then interact as a non-admin user (via a business network card) and the same cards, can be used to connect to your BYFN network (and do the same interaction)
@JackMalinowski - if you look at the [multi-org](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org) tutorial - which uses the same BYFN network as the link you posted - it will show you how to build your business network cards, install the network, interact with it, issue other cards, and then interact as a non-admin user (via a business network card) and the same cards, can be used to connect to your BYFN network (and do the same interaction)
[ ](https://chat.hyperledger.org/channel/composer?msg=e6LfTESvaPxHhbvSt) gaurig@rpqbsrv001:~/composer/trading1$ composer archive create --sourceType dir --sourceName . -a trading1@0.0.2.bna
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /home/gaurig/composer/trading1
Error: Namespace org.acme.trading1 specified in file /home/gaurig/composer/trading1/trading1/models/org.acme.trading1.cto is already declared in file /home/gaurig/composer/trading1/models/org.acme.trading1.cto
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=rhB9tvJJY9kcQb92r) it is showing this error
@gauri your model is the problem (from the error above - you're redefining a namespace already declared - thus won't create a BNA file til its fixed). To change the package.json, in your business network archive that you've got in a folder - change the file 'package.json' and update the "version" field - as shown in the instructions https://hyperledger.github.io/composer/latest/tutorials/queries ("Step Three")
[ ](https://chat.hyperledger.org/channel/composer?msg=NxWTorCWykvmkoLgs) @mahoney1 okay thanks ...I am following all commands of mentioned link
[ ](https://chat.hyperledger.org/channel/composer?msg=oMEc9N4yFzA8yzmCd) Please help
[ ](https://chat.hyperledger.org/channel/composer?msg=oMEc9N4yFzA8yzmCd) @mahoney1 @rthatcher Please help
@rthatcher thank you for advice!
@HoneyShah that is unusual. I would suggest to create a Stack Overflow -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#issue -with all the details it asks for including versions - and including a screenshot of the output of the command `composer card list -c
@HoneyShah that is unusual. I would suggest to create a Stack Overflow -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#issue -with all the details it asks for including versions - and including a screenshot of the output of the command `composer card list -c
how much transaction stored in one block of hyperledger fabric .
[ ](https://chat.hyperledger.org/channel/composer?msg=iSSCRyhBQvtQBeqq6) @mahoney1 Okay. I will create stackoverflow question. Yes, it is working fine with single user mode, problem is only there in multi user mode. I am using composer version 0.19.12
[ ](https://chat.hyperledger.org/channel/composer?msg=iSSCRyhBQvtQBeqq6) @mahoney1 I exactly don't understand what is `
@rthatcher In o string items[] array i want to pass data like [{"itemno" :"1","quantity":"20kg","price":"20","itemno" :"2","quantity":"30kg","price":"30","itemno" :"3","quantity":"40kg","price":"40"}]
is it possible ?
itemno,quantity and price comes multiple times in items array.can you help me how to do
@rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=TBQqYpX9sJ4J8C5Yu) @sureshtedla https://chat.hyperledger.org/channel/composer?msg=oTKrBJpxnTGYudSHS
@HoneyShah - the business network card you used that created the asset on the 2nd attempt
[ ](https://chat.hyperledger.org/channel/composer?msg=iF8Xc29vdrmqgA5mL) @rthatcher @rthatcher I want to pass multiple itemno,quantity and price to concept stock at a time is it posible ex: [{"itemno":"1","quantity":"10","price":"10", "itemno":"2","quantity":"20","price":"20", "itemno":"3","quantity":"30","price":"30",}] is it possible
@rthatcher
items array composer.PNG
items array composer.PNG
items array composer.PNG
@rthatcher
intemno* N N means number of times
can you help me regarding this @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=mN5jpmGoyZzEKycD6) @sureshtedla You could try a model like this with Integer and Double where appropriate
```
namespace org.acme.Main
asset Order identified by orderNumber {
o String orderNumber
o Items[] items
o String status
}
concept Items {
o String itemId
o Integer itemno
o Double price
o Integer quantity
}
```
And JSON data such as
```
{
"$class": "org.acme.Main.Order",
"orderNumber": "O-123",
"items": [
{
"$class": "org.acme.Main.Items",
"itemId": "I01-1",
"itemno": 1,
"price": 7.5,
"quantity": 12
},
{
"$class": "org.acme.Main.Items",
"itemId": "I01-1",
"itemno": 2,
"price": 8.5,
"quantity": 14
}
],
"status": ""
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=mN5jpmGoyZzEKycD6) @sureshtedla You could try a model like this with Integer and Double where appropriate
```
namespace org.acme.Main
asset Order identified by orderNumber {
o String orderNumber
o Items[] items
o String status
}
concept Items {
o String itemId
o Integer itemno
o Double price
o Integer quantity
}
```
And JSON data such as
```
{
"$class": "org.acme.Main.Order",
"orderNumber": "O-123",
"items": [
{
"$class": "org.acme.Main.Items",
"itemId": "I01-1",
"itemno": 1,
"price": 7.5,
"quantity": 12
},
{
"$class": "org.acme.Main.Items",
"itemId": "I01-2",
"itemno": 2,
"price": 8.5,
"quantity": 14
}
],
"status": ""
}
```
Has joined the channel.
is composer used to create blockchain models for Sawthoot, Fabric, both or what?
"items": [
{
"$class": "org.acme.Main.Items",
"itemno": "1",
"price": "10",
"quantity": "10",
"itemno": "2",
"price": "20",
"quantity": "20",
"itemno": "3",
"price": "30",
"quantity": "30"
}
]
@rthatcher is it possible
"items": [
{
"$class": "org.acme.Main.Items",
"itemno": "1",
"price": "10",
"quantity": "10",
"itemno": "2",
"price": "20",
"quantity": "20",
"itemno": "3",
"price": "30",
"quantity": "30"
}
]
@rthatcher is it possible
@rthatcher
if I need the data contained in my transactions to be validated by a group of validating peers in order to reach consesus how can I do that?
Has joined the channel.
when running multi-user rest .. is authentication needed ?
Has joined the channel.
@sureshtedla "items": [
{
"$class": "org.acme.Main.Items",
"itemno": "1",
"price": "10",
"quantity": "10",
"itemno": "2",
"price": "20",
"quantity": "20",
"itemno": "3",
"price": "30",
"quantity": "30"
},
]
multiple items in your array? eg. [ {
"$class": "org.acme.Main.Items",
"itemno": "1",
"price": "10",
"quantity": "10",
"itemno": "2",
"price": "20",
"quantity": "20",
"itemno": "3",
"price": "30",
"quantity": "30"
},{
"$class": "org.acme.Main.Items",
"itemno": "2",
"price": "10",
"quantity": "10",
"itemno": "2",
"price": "20",
"quantity": "20",
"itemno": "3",
"price": "30",
"quantity": "30"
},{
"$class": "org.acme.Main.Items",
"itemno": "3",
"price": "10",
"quantity": "10",
"itemno": "2",
"price": "20",
"quantity": "20",
"itemno": "3",
"price": "30",
"quantity": "30"
} ]
@sureshtedla multiple items in your array? eg. [ {
"$class": "org.acme.Main.Items",
"itemno": "1",
"price": "10",
"quantity": "10",
"itemno": "2",
"price": "20",
"quantity": "20",
"itemno": "3",
"price": "30",
"quantity": "30"
},{
"$class": "org.acme.Main.Items",
"itemno": "2",
"price": "10",
"quantity": "10",
"itemno": "2",
"price": "20",
"quantity": "20",
"itemno": "3",
"price": "30",
"quantity": "30"
},{
"$class": "org.acme.Main.Items",
"itemno": "3",
"price": "10",
"quantity": "10",
"itemno": "2",
"price": "20",
"quantity": "20",
"itemno": "3",
"price": "30",
"quantity": "30"
} ]
[ ](https://chat.hyperledger.org/channel/composer?msg=JwZoDyrx9XLYuse52) @Haddadmj yes, required
[ ](https://chat.hyperledger.org/channel/composer?msg=5fEnQBm68bJvG6vbb) @mahoney1 yes
"items": [
{
"$class": "org.acme.Main.Items",
"itemno": "1",
"price": "10",
"quantity": "10",
"itemno": "2",
"price": "20",
"quantity": "20",
"itemno": "3",
"price": "30",
"quantity": "30"
}
]
@mahoney1 "items": [
{
"$class": "org.acme.Main.Items",
"itemno": "1",
"price": "10",
"quantity": "10",
"itemno": "2",
"price": "20",
"quantity": "20",
"itemno": "3",
"price": "30",
"quantity": "30"
...
....
..
}
]
itemno comes mutilple times as shown above
aaa.PNG
[ ](https://chat.hyperledger.org/channel/composer?msg=en56KnCRvbcPv3YtA) in this way i want to pass data is it possible? @mahoney1
Hey all, any reason why i can add a participant but when I try to issue an identity it says the participant does not exist?
Composer - v0.20.0
[ ](https://chat.hyperledger.org/channel/composer?msg=dQjDtzDoQe8nbAPu9) @formlesscloud they are validated as transaction proposals by endorsin peers. You would create an endorsement policy to achieve that - there is an example of this in the Multi-Org (peers from two organisations in a blockchain network) tutorial here (see Step Thirteen) -> https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org . For more info on validating peers and their responsibiliities and the other kinds of activities (eg endorsement) see the Fabric docs for a better understanding - see https://hyperledger-fabric.readthedocs.io/en/release-1.2/peers/peers.html#phase-3-validation
[ ](https://chat.hyperledger.org/channel/composer?msg=dQjDtzDoQe8nbAPu9) @formlesscloud they are 'validated' (checked they are valid) as transaction proposals by endorsing peers. You would create an endorsement policy to achieve that - there is an example of this in the Multi-Org (peers from two organisations in a blockchain network) tutorial here (see Step Thirteen) -> https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org . For more info on validating peers and their responsibiliities and the other kinds of activities (eg endorsement) see the Fabric docs for a better understanding - see https://hyperledger-fabric.readthedocs.io/en/release-1.2/peers/peers.html#phase-3-validation
[ ](https://chat.hyperledger.org/channel/composer?msg=dQjDtzDoQe8nbAPu9) @formlesscloud they are 'validated' (checked they are valid) as transaction proposals by endorsing peers. You would create an endorsement policy to achieve that - there is an example of this in the Multi-Org (peers from two organisations in a blockchain network) tutorial here (see Step Thirteen) -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org . For more info on validating peers and their responsibiliities and the other kinds of activities (eg endorsement) see the Fabric docs for a better understanding - see https://hyperledger-fabric.readthedocs.io/en/release-1.2/peers/peers.html#phase-3-validation
@mahoney1 wow thank you so much
[ ](https://chat.hyperledger.org/channel/composer?msg=nekqAhCJH6DBFNNWM) @nippleDonkey are you searching for it right? Did you add the participant from the CLI or is everything in the same session (eg in Playground)? Shouldn't be ACLs if you've just added to the same registry - you should be able to search (unless you have a specific ACL that says allow CREATE only on that Participant registry)
[ ](https://chat.hyperledger.org/channel/composer?msg=nekqAhCJH6DBFNNWM) @nippleDonkey are you searching for it right? Did you add the participant from the CLI or is everything in the same session (eg in Playground)? Shouldn't be ACLs if you've just added to the same registry - you should be able to search ie to issue identity for participant (unless you have a specific ACL that says allow CREATE only on that Participant registry)
do you also know about this?
is composer used to create blockchain models for Sawthoot, Fabric, both or what?
[ ](https://chat.hyperledger.org/channel/composer?msg=xYKN7efF9TbuLf5La) @mahoney1 Thanks, I've tried both CLI and composer-client with the same result. Below is a copy of the CLI commands and output:
```
composer participant add -c admin@network -d '{"$class":"org.example.Operator","organisationId":"P1", "name":"Jack", "adminFirstName":"Daniels", "adminLastName":"dave","adminEmail":"dave@admin.com"}'
Participant was added to participant registry.
Command succeeded
composer identity issue -u Jack -a org.example.Operator#P1 -c admin@network
Issue identity and create Network Card for: Jack
✖ Issuing identity. This may take a few seconds...
Error: Participant 'org.example.Operator#P1' does not exist
Command failed
```
I do have some specific ACL rules. I thought I had given network admin complete access for dev. I will revise and let you know.
@formlesscloud easiest way to position these Hyperledger projects is to look at the diagram here (see 'Tools') -> https://www.hyperledger.org/ and more on Composer in the intro here -> https://hyperledger.github.io/composer/latest/introduction/introduction
I have even read an entire paper that helps choosing the right blockchain
but still not very clear
@nippleDonkey it requires the full resource URI eg ` composer identity issue -c admin@network -f jackd.card -u Jack -a "resource:org.example.Operator#P1" `
Hyperledger Composer supports the existing Hyperledger Fabric blockchain infrastructure and runtime, which supports pluggable blockchain consensus protocols to ensure that transactions are validated according to policy by the designated business network participants.
this piece at least clarify that I can only use composer if I use sawthoot
this piece at least clarify that I can only use composer if I use sawthoot
this piece at least clarify that I can only use composer if I use sawtooth
this piece at least clarify that I can only use composer if I use fabric
@formlesscloud Composer doesn't depend on Sawtooth, just to clarify. It is a model-driven framework and suite of tools and generators for developing blockchain apps / smart contracts, that run on Hyperledger Fabric currently. This [blog]( https://medium.com/swlh/hyperledger-chapter-2-hyperledger-frameworks-modules-cabf50e12105 ) might be useful
@formlesscloud Composer is a model-driven framework and suite of tools and generators for developing blockchain apps / smart contracts, that run on Hyperledger Fabric currently. This [blog]( https://medium.com/swlh/hyperledger-chapter-2-hyperledger-frameworks-modules-cabf50e12105 ) might be useful
I meant fabric
since it says
"supports the existing Hyperledger Fabric blockchain"
sorry
Hey guys if someone with some experience in deploying custom api on ibm cloud could help me : https://github.com/hyperledger/composer/issues/4358
is there a ready to use code or example that creates a cryptocurrency?
`dwd`
I mean, should be a common request
Hello!
Could you help me? I've stuck with the following problem:
I would like to query a group of asset in a chaincode.
**The query.qry:**
`query selectTasksFromProcess {
description: "Select all task from a process"
statement:
SELECT org.example.composer.Task
WHERE (ownerProcess==_$ownerProcess)
}`
**The model.cto:**
`asset Process identified by Id {
o String Id
}
asset Task identified by Id {
@mahoney1
aaa.PNG
aaa.PNG
aaa.PNG
aaa.PNG
@rthatcher
Hello!
Could you help me? I've stuck with the following problem:
I would like to query a group of asset in a chaincode.
*The query.qry:*
query selectTasksFromProcess {
description: "Select all task from a process"
statement:
SELECT org.example.composer.Task
WHERE (ownerProcess==_$ownerProcess)
}
*The model.cto:*
asset Process identified by Id {
o String Id
}
asset Task identified by Id {
o String Id
-->Process ownerProcess
}
*The logic.js:*
function foo(transaction) {
return query('selectTasksFromProcess', { ownerProcess: transaction.ownerProcess }).then....
}
The problem is that I don't know what parameter should I have to pass to the querry. At server side the ownerProcess relationship (nodeJS) just simply the identifier as a String. I've tried with the identifier and with the actual relationship object. Non of them worked. Is is possible to query where the WHERE condition contains a relationship?
Thanks for the answers!
Ps.: how can I highlight a block `like this`
[ ](https://chat.hyperledger.org/channel/composer?msg=zAbjpaMHziNKZj55q) @Levilk So you tried ``` WHERE (ownerProcess.id==_$ownerProcessId)``` ?
PS. To do the code blocks use 3x ` to open block and 3x ` to close block
[ ](https://chat.hyperledger.org/channel/composer?msg=zAbjpaMHziNKZj55q) @Levilk So you tried ``` WHERE (ownerProcess.id==_$ownerProcessId)``` ?
PS. To do the code blocks use 3x "`" to open block and 3x "`" to close block
[ ](https://chat.hyperledger.org/channel/composer?msg=zAbjpaMHziNKZj55q) @Levilk So you tried ``` WHERE (ownerProcess.id==_$ownerProcessId)``` ?
PS. To do the code blocks use 3x "`" to open block and 3x "`" to close block. Just noticed 1x works too ... mind blown.
[ ](https://chat.hyperledger.org/channel/composer?msg=zAbjpaMHziNKZj55q) @Levilk So you tried ``` WHERE (ownerProcess.id==_$ownerProcessId)``` ?
PS. To do the code blocks use 3x "`" to open block and 3x "`" to close block. Edit: Just noticed 1x works too ... mind blown.
@sureshtedla that format won't work for your model. An example of the JSON data (to go with your model) was posted to you earlier, suggest to follow that?
@Levilk the parameter to your query would be the relationship id format eg. `resource:org.example.composer.ownerProcess#P1" given your model
@mahoney1 I've still got issues with participants not being found. I've reverted the ACL back to the default. I've tried fully qualified URI. Is there anything else that controls adding participants? What makes this really strange is that if I spin up a new network and add a participant and issue identity it works for the first one. Anything after that fails.
@nippleDonkey can I suggest you post to Stack Overflow with the model and I'll see if I can repeat it. Its very strange (without ACLs) that you would not be able to issue further identities in the standard dev environment. Also give info for your env, Fabric version, composer version, docker ps output etc. Thanks
@nippleDonkey can I suggest you post to Stack Overflow with the model and I'll see if I can repeat it. Its very strange (with standard ACLs) that you would not be able to issue further identities in the standard dev environment. Also give info for your env, Fabric version, composer version, docker ps output etc. Thanks
Sure i will do, thanks for the help.
FYI Just found this in the peer logs:
````
2018-08-28 15:22:55.856 UTC [couchdb] handleRequest -> DEBU 153ed HTTP Request: GET /composerchannel_imo-2020/%00Transaction:org.hyperledger.composer.system.AddParticipant%00dbbb901b7cce0e092c4666912ffb87671ca866ea8909e2040fcb04cc0cceff2d%00?attachments=true HTTP/1.1 | Host: couchdb:5984 | User-Agent: Go-http-client/1.1 | Accept: multipart/related | Accept-Encoding: gzip | |
2018-08-28 15:22:55.863 UTC [couchdb] handleRequest -> DEBU 153ee Couch DB Error:not_found, Status Code:404, Reason:missing
2018-08-28 15:22:55.863 UTC [couchdb] ReadDoc -> DEBU 153ef Document not found (404), returning nil value instead of 404 error
2018-08-28 15:22:55.863 UTC [chaincode] HandleGetState -> DEBU 153f0 [dbbb901b] No state associated with key:
}Transaction:org.hyperledger.composer.system.AddParticipantdbbb901b7cce0e092c4666912ffb87671ca866ea8909e2040fcb04cc0cceff2d. Sending RESPONSE with an empty payload
```
FML, restarted the peer container and it's working.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZnjfCzMick6st26yo) @nippleDonkey I've already tried at server side and in the chaincode both of the followings:
At server side it's a bit tricky because the default behaviour is that the relatsionship object is just the identitifer....
`WHERE (ownerProcess==_$ownerProcess)` - actual relationship object.
`WHERE (ownerProcess.Id==_$ownerProcessId)` - just the Id as a String
The result is always an empty array.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZnjfCzMick6st26yo) @nippleDonkey @mahoney1 I've already tried at server side and in the chaincode both of the followings:
At server side it's a bit tricky because the default behaviour is that the relatsionship object is just the identitifer....
`WHERE (ownerProcess==_$ownerProcess)` - actual relationship object.
`WHERE (ownerProcess.Id==_$ownerProcessId)` - just the Id as a String
The result is always an empty array.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZnjfCzMick6st26yo) @nippleDonkey @mahoney1 I've already tried at server side and in the chaincode both of the followings:
At server side it's a bit tricky because the default behaviour is that the relatsionship object is just the identitifer....
`WHERE (ownerProcess==_$ownerProcess)` - actual relationship object.
`WHERE (ownerProcess.Id==_$ownerProcessId)` - just the Id as a String
The result is always an empty array.
I forget to mention that the model.cto have a transaction where the ownerProcess is set by the backend and passed to the blockchain during submit accross the transaction argument.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZnjfCzMick6st26yo) @nippleDonkey @mahoney1 I've already tried at server side and in the chaincode both of the followings:
At server side it's a bit tricky because the default behaviour is that the relatsionship object is just the identitifer....
`WHERE (ownerProcess==_$ownerProcess)` - actual relationship object.
`WHERE (ownerProcess.Id==_$ownerProcessId)` - just the Id as a String
The result is always an empty array.
I forget to mention that the model.cto have a transaction where the ownerProcess is set by the backend and passed to the blockchain during submit accross the argument named transaction.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZnjfCzMick6st26yo) @nippleDonkey @mahoney1 I've already tried at server side and in the chaincode both of the followings:
At server side it's a bit tricky because the default behaviour is that the relatsionship object is just the identitifer....
`WHERE (ownerProcess==_$ownerProcess)` - actual relationship object.
`WHERE (ownerProcess.Id==_$ownerProcessId)` - just the Id as a String
The result is always an empty array.
I forget to mention that the model.cto have a transaction where the ownerProcess is set by the backend and passed to the blockchain during submit accross the argument named transaction.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZnjfCzMick6st26yo) @nippleDonkey @mahoney1 I've already tried at server side and in the chaincode both of the followings:
At server side it's a bit tricky because the default behaviour is that the relatsionship object is just the identitifer....
`WHERE (ownerProcess==_$ownerProcess)` - actual relationship object.
`WHERE (ownerProcess.Id==_$ownerProcessId)` - just the Id as a String
**Update:** tried the query param like this `return query('selectTasksFromProcess', { ownerProcess: "resource:org.example.composer.ownerProcess#99" })` where 99 is the process Id. Still no luck:(
The result is always an empty array.
I forget to mention that the model.cto have a transaction where the ownerProcess is set by the backend and passed to the blockchain during submit accross the argument named transaction.
hi people! I'm really stuck into this Composer error: ```[2018-08-28T17:27:20.492Z] PM2 log: Launching in no daemon mode
[2018-08-28T17:27:20.673Z] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-08-28T17:27:20.688Z] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
(node:15) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Connection fails: Error: Error trying to ping. Error: Failed to connect before the deadline
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Failed to connect before the deadline
Error: Error trying to ping. Error: Failed to connect before the deadline
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:806:34)
at
any idea??
I'm using composer-rest server `v0.20.0` and fabric `v1.2.0`
Clipboard - August 28, 2018 11:05 PM
Clipboard - August 28, 2018 11:05 PM
@mahoney1 for this changes what i need to do?
Has joined the channel.
I solved my problem reinstalling all cards...
gyp ERR! cwd /home/ubuntu/lib/node_modules/generator-hyperledger-composer/node_modules/grpc
gyp ERR! node -v v10.9.0
gyp ERR! node-gyp -v v3.7.0
npm install -g generator-hyperledger-composer@0.20 is consistently failing with this output:
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! grpc@1.10.1 install: `node-pre-gyp install --fallback-to-build --library=static_library`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the grpc@1.10.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
gyp ERR! cwd /home/ubuntu/lib/node_modules/generator-hyperledger-composer/node_modules/grpc
gyp ERR! node -v v10.9.0
gyp ERR! node-gyp -v v3.7.0
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! grpc@1.10.1 install: `node-pre-gyp install --fallback-to-build --library=static_library`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the grpc@1.10.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
*npm install -g generator-hyperledger-composer@0.20* is consistently failing with this output:
gyp ERR! cwd /home/ubuntu/lib/node_modules/generator-hyperledger-composer/node_modules/grpc
gyp ERR! node -v v10.9.0
gyp ERR! node-gyp -v v3.7.0
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! grpc@1.10.1 install: `node-pre-gyp install --fallback-to-build --library=static_library`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the grpc@1.10.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
@greg2git did you have an existing composer install already?
yes
did you uninstall composer before upgrading to `0.20`?
no this is supposed to be a fresh install of 0.20
in a different directory
you may need to uninstall composer, delete `node_modules` and reinstall fabric 1.2
i had grpc problems until i wiped everything and re-installed
k, back to where i started this morning, thx for the tip
Has joined the channel.
Has joined the channel.
Hi Good Morning All.
When I restart my composer by following command composer-rest-server I faced following error :mohinir@rpqbsrv001:~/fabric-tools/landregistry$ composer-rest-server
? Enter the name of the business network card to use: admin@landregistry
? Specify if you want namespaces in the generated REST API: never use namespaces
? Specify if you want to use an API key to secure the REST API: No
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c admin@landregistry -n never -w true
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: make sure the chaincode landregistry has been successfully instantiated and try again: getccdata composerchannel/landregistry responded with error: could not find chaincode with name 'landregistry'
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: make sure the chaincode landregistry has been successfully instantiated and try again: getccdata composerchannel/landregistry responded with error: could not find chaincode with name 'landregistry'
Error: Error trying to ping. Error: make sure the chaincode landregistry has been successfully instantiated and try again: getccdata composerchannel/landregistry responded with error: could not find chaincode with name 'landregistry'
at _checkRuntimeVersions.then.catch (/home/mohinir/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:806:34)
at
Please let me know what can I do.
Hi guys I really stuck in this error please help me
has anyone been able to run composer on a peer running the first network and not via startFabric?
I keep getting the following:
~/Developer/JeevNetwork/coin> composer network install --card PeerAdmin@hlfv1 --archiveFile ./dist/mic-network.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Command failed
@AshishKaila You can't use a card that is meant for a one fabric network and try to use it on another fabric network. A card contains a connection profile that describes the fabric network as well as the organisation for the user. It also contains crypto material from an MSPid specific to that fabric network and may also be known to that specific fabric as an admin Identity. The tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org.html takes the hyperledger fabric BYFN network as an example of a custom network and explains how to build the composer artifacts required to be able to interact with that specific network
@greg2git I see you are trying to use node v10.9.0. Or documentation explicitly states that we only support v8 of node (latest being v8.11.4). No testing has been done on V10. We would recommend using V8
@Mohini75 Have you restarted your fabric ? If you have then your fabric has now not got any business networks deployed anymore as our development fabric server and the fabric sample BYFN do not persist their data outside of the docker containers.
thanks @davidkel i will try that out
Also do you have a link of a blog that talks about installing fabric and composer in production environment on AWS etc?
I did this: mohinir@rpqbsrv001:~/fabric-tools/fabric-scripts/hlfv1$ ls
composer createComposerProfile.sh createPeerAdminCard.sh downloadFabric.sh startFabric.sh stopFabric.sh teardownFabric.sh
mohinir@rpqbsrv001:~/fabric-tools/fabric-scripts/hlfv1$ cd composer/
mohinir@rpqbsrv001:~/fabric-tools/fabric-scripts/hlfv1/composer$ sudo docker-compose start
WARNING: The ARCH variable is not set. Defaulting to a blank string.
Starting ca.org1.example.com ... done
Starting couchdb ... done
Starting orderer.example.com ... done
Starting peer0.org1.example.com ... done
then also connection error faced
No, I gave command only composer-rest-server
@Mohini75 So you have started the fabric, then tried to run the rest server, so you are trying to connect to a fabric that has no business network deployed on it which is why you get the message you are seeing
No I started docker
and trying to connected rest server then connection error faced
```
Starting ca.org1.example.com ... done
Starting couchdb ... done
Starting orderer.example.com ... done
Starting peer0.org1.example.com ... done
```
You started a fresh fabric
mohinir@rpqbsrv001:~/fabric-tools/fabric-scripts/hlfv1/composer$ sudo docker-compose start
I gave this command
Then what can I do?
Has joined the channel.
@Mohini75 you can use the docker commands to suspend and resume a fabric using docker-compose stop and docker-compose start, but that only works will the docker containers remain and are not removed for other reasons. Once the containers are removed, using any command to start a fabric will create a new fabric and all the information from the previous fabric will have been lost. Which is why your rest server cannot find the business network, so you need to start again from scratch.
@Mohini75 you can use the docker commands to suspend and resume a fabric using docker-compose stop and docker-compose start, but that only works while the docker containers remain and are not removed for other reasons. Once the containers are removed, using any command to start a fabric will create a new fabric and all the information from the previous fabric will have been lost. Which is why your rest server cannot find the business network, so you need to start again from scratch.
Fabric provide some info about how to get a container to persist it's data onto the host filesystem so that the containers persist the information beyond it's own file system, here https://hyperledger-fabric.readthedocs.io/en/latest/build_network.html?highlight=persistence#a-note-on-data-persistence but annoyingly they don't provide the same information for the fabric-ca-server and without persisting the fabric-ca-server data as well can cause problems.
@davidkel I tried the link you suggested for multi org setup and when I try starting the network I keep getting: error starting container: error starting container: API error (404): network _byfn not found.... ANy ideas?
Solved it
Hello,
How can we reduce response time for any action using rest api? Currently it is taking 3-4 seconds which too much
Hey guys is this the right Channel for discussions on PoC
I was wondering if Hyperledger was doing something on the use case with the Vaccines problem
Where and with who can I chat about PoC topics
Multo Org as here : https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Example has 2 organizations with traders trading. Org1 trader john doe. Org2 Trader Dave.
Admins: Alice for org1 responsible for identites for org1.
Multi Org as here : https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Example has 2 organizations with traders trading. Org1 trader john doe. Org2 Trader Dave.
Admins:
Alice for org1 responsible for identites for Org1.
Bob for org2 responsible for identites for Org2.
My question is:
Can we limit Org1 to only have goods providers and Org2 to only have consumers?
Screenshot from 2018-08-29 14-27-07.png
Has joined the channel.
Has anyone deployed composer block-chain network on fabric multi-org setup running in multiple hosts
@mmick - see this [Stack Overflow answer](https://stackoverflow.com/questions/51938369/hyperledger-composer-restrict-permissions-of-participants-to-pinging-the-networ/51947786#51947786) for the ACL that should fix your issue (in particular the 2nd ACL)
[ ](https://chat.hyperledger.org/channel/composer?msg=GonXDZ9GaBRqsNZcD) @kariyappals this [web page](https://discourse.skcript.com/t/running-hyperledger-composer-with-multiple-organization-on-different-host-machines/635) may be of assistance to you (across different m/cs, on different subnets etc)
How could I upgrade an HLF network to v1.2?
I can lose ledger data if needed. My current version of peers:
```
peer:
Version: 1.0.1
Go version: go1.7.5
OS/Arch: linux/amd64
Chaincode:
Base Image Version: 0.3.1
Base Docker Namespace: hyperledger
Base Docker Label: org.hyperledger.fabric
Docker Namespace: hyperledger
```
@JackMalinowski in a Composer dev context, you can pull down (after tearing down your old env and images/containers - if you retain your business network containers, they will need to be upgraded) using the Composer dev tools -> https://hyperledger.github.io/composer/latest/installing/development-tools.html - it will pull down the 1.2 images (for which you need to use Composer 0.20 - see [this table](https://github.com/hyperledger/composer/wiki) - if you're asking purely about Fabric, you should ask on #fabric or read the Fabric docs -> https://hyperledger-fabric.readthedocs.io/en/release-1.2/upgrade_to_newest_version.html
@JackMalinowski in a Composer dev context, you can pull down the latest Composer dev Fabric 1.2 images (after tearing down your old env and images/containers - if you retain your business network containers, they will need to be upgraded) using the Composer dev tools -> https://hyperledger.github.io/composer/latest/installing/development-tools.html - it will pull down the 1.2 images (for which you need to use Composer 0.20 - see [this table](https://github.com/hyperledger/composer/wiki) - if you're asking purely about Fabric, you should ask on #fabric or read the Fabric docs -> https://hyperledger-fabric.readthedocs.io/en/release-1.2/upgrade_to_newest_version.html
@JackMalinowski in a Composer dev context, you can pull down the latest Composer dev Fabric 1.2 images (after tearing down your old env and images/containers - if you retain your business network containers, they will need to be upgraded) using the Composer dev tools -> https://hyperledger.github.io/composer/latest/installing/development-tools.html - as mentioned, it will pull down the 1.2 images (for which you need to use Composer 0.20 - see [this table](https://github.com/hyperledger/composer/wiki) - if you're asking purely about Fabric, you should ask on #fabric or read the Fabric docs -> https://hyperledger-fabric.readthedocs.io/en/release-1.2/upgrade_to_newest_version.html
@JackMalinowski in a Composer dev context, you can pull down the latest Composer dev Fabric 1.2 images (after tearing down your old env and images/containers - if you retain your business network containers, they will need to be upgraded) using the Composer dev tools -> https://hyperledger.github.io/composer/latest/installing/development-tools.html - as mentioned, it will pull down the 1.2 images (for which you need to use Composer 0.20) - see [this table](https://github.com/hyperledger/composer/wiki) - if you're asking purely about Fabric, you should ask on #fabric or read the Fabric docs -> https://hyperledger-fabric.readthedocs.io/en/release-1.2/upgrade_to_newest_version.html
@mmick yes you can limit/restrict Org1 participants to only have access one Participant type (providers) and Org 2 to another type (consumers) etc
@mmick yes you can limit/restrict Org1 participants to only have access one Participant type (providers) and Org 2 to another type (consumers) using Composer's ACLs etc
@Zeljko Milinovic someone has posted this useful use case on Immuno / Vaccine records that may be of interest
https://github.com/silliman/BlockchainImmersion/blob/master/Day1/1030_WebPlaygroundImmunichainLab.rst
Has joined the channel.
Clipboard - August 29, 2018 1:18 PM
Dear Colleagues, I am trying to create Angular Front End Application, but getting the following mistake.
I tried everything, but can not solve it
Also, I can not run yo with Hyperledger Composer
Clipboard - August 29, 2018 1:22 PM
@adedic hi, I suggest to follow this tutorial -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - it provides an end-to-end example to try out - the command is actually `yo hyperledger-composer:angular` - but suggest to follow the tutorial (it deploys a sample network) - to see how it works.
How can we reduce response time for any action using rest api? Currently it is taking 3-4 seconds which is too much
Hi there, I have a simple question ; can the Composer do Register and Enroll call to the CA ? Are these operations open to use ? Thanks !
Hi there, I have a simple question ; can the Composer enroll and register users through the CA ? Are these operations open to use ? Thanks !
I am following https://github.com/Pop-Code/composer-wallet-s3
After following all steps when I try to install network it gives me following error
```
composer network install -a test-bna@0.0.4.bna -c PeerAdmin@hlfv1
Writing Node.js report to file: node-report.20180829.145338.19376.001.txt
Node.js report completed
/home/honey/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/yargs/yargs.js:1100
else throw err
^
Error: Cannot find module 'jsrsasign'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.
[ ](https://chat.hyperledger.org/channel/composer?msg=YujQXmNv4WrMEooKJ) @HoneyShah I would contact the Author, or put an issue on GitHub, but I just had a quick look and there is a dependency for Composer 0.18.0 which may cause a problem.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=oTKf9exERstL8tPKJ) up ?
how to issue identity on the blockchain network from the app ?
Has joined the channel.
i tried to post but i need authorization :) "is there another way to connect as admin then issue identity then disconnect"
using typescript
[ ](https://chat.hyperledger.org/channel/composer?msg=q2C3JMqSi8Wye3aoj) @rthatcher Okay. Thanks for the response. So need to wait till the issue gets resolved. Right?
Is there something like
```
mapping(address => uint256) balances;
```
in composer?
Has joined the channel.
Hello, we have an IoT sensor that send message to MQTT Mosquitto, this message is a value of an asset in our business network on Hyperledger composer. Our idea is to use NodeRed to create a JSON from MQTT and use it to update asset's value. Is there an example? Have you a better integration model?
Hi All, Is there any way to log fabric components like(Peer,orderer,ca) onto a path rather than console logs. I need to mount those logs(running in container at console logs) in host location for analysis. How can we specify Log location path for peer configuration.
Guys I need easy, step by step tutorial on how to put my business network and REST API to the cloud. I'm wondering if someone have ever used aws blockchain template for hyperledger? I would like to try it but i cannot find any step by step tutorial how to run it on aws (except the 2 parts article on medium - i cannot get through it). Has anyone any useful tutorials or well explained articles on this topic? It doesn't have to be for aws. I know how to expose Rest API with IBM cluster service but unfortunately i cannot enable multiuser mode and authentication for this cluster.
@rthatcher i have bank and customer participants , in bank have 100 $ and customer have balance of 2 $ if customer do money transfer of 2$ customer account balance equals to 0$ in the same how to update bank balance to 98$ @mahoney1
Has joined the channel.
Hi, how to prohibit unauthorized use of HL network card.
Can we generate a card for a specific machine?
Can the card be encrypted with a password?
Can we only allow certain nodes to access the network?
I would know, what are the best practices
Hi - I am following the [Playground tutorial](https://hyperledger.github.io/composer/latest/tutorials/playground-tutorial.html) and I can't find the 'Trader' tab in Step Nine. Is this the right chat to ask about debugging techniques?
check the model file @dcorking
@Haddadmj what to look for? I replaced sample.cto with the exact code from Step 4 and redeployed. Still no new tabs. Am I looking in the right place for the Trader tab?
@Haddadmj what to look for? I replaced models/sample.cto with the exact code from Step 4 and redeployed. Still no new tabs. Am I looking in the right place for the Trader tab?
weird ... can u post the image for it ?
@Haddadmj I refreshed the browser. It lost all my code, so I pasted the model code into the new network that appeared, and got a Trader tab. Thanks!
cool
Hello, all! How can I **query for substrings in a `String` attribute**? Suppose I have an asset:
```asset MyAsset identified by id {
o Integer id
o String searchField
}
```
and `searchField` contains `This is an hyperledger composer`, is it possible to query from `hyperledger` and have this asset returned?
I don't know where my wallet has gone, but I won't worry about that for now.
[ ](https://chat.hyperledger.org/channel/composer?msg=mBYumS9Z3AZea9EmX) @joaquimpedrooliveira Hey, you can use CONTAINS keyword in your query:
https://hyperledger.github.io/composer/latest/reference/query-language
@Haddadmj tutorial all completed now , thanks. I don't know how the code in my browser ended up so badly out of sync with the network I intended to create. Therefore I look forward to learning scirptable (non-browser) means of deploying code.
[ ](https://chat.hyperledger.org/channel/composer?msg=rN8qpY22tRL2WuDfL) @brunillopu.75 see the NPM page -> https://www.npmjs.com/package/node-red-contrib-composer and [this page](https://hyperledger.github.io/composer/v0.16/tutorials/nodered-tutorial) for examples
@mahoney1 Really Thanks. I've read the doc. About your opinion on the choice? Have you better idea?
@sudhir.kumawat see https://openblockchain.readthedocs.io/en/latest/Setup/logging-control/ for Fabric nodes.
In playground it shows transaction has been submitted but asset does not get changed. After that i even can not add/edit assets from playground also.
@brunillopu.75 try option 2 as its more detailed?
[ ](https://chat.hyperledger.org/channel/composer?msg=SWZzz85fpPYTjxyLd) @sureshtedla The Animal Tracking sample on Composer Playground has example transactions where 2 different assets/participants are updated - I would suggest experimenting with that to understand how transactions update different registries.
[ ](https://chat.hyperledger.org/channel/composer?msg=jjJsS9o4B9v8SKYFQ) @arnabsutar Do you have an ACL in place that stops you seeing some of the data?
Have you changed the model? This can lead to a problem seeing the data (https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration)
Clipboard - August 29, 2018 11:01 AM
Hi guys, i created a Blockchain Buisness Definition (My Code & Models) and it worked,now i pass that code to another computer and i had issues with the Admin Card for my Blockchain, not the Peer Admin, the Admin one of the network says that is not found, but it really is in my wallet
Clipboard - August 29, 2018 11:01 AM
@rthatcher In my network i have order asset in that i have { o string orderNumber, o string invoiceNumber and orderStatus etc when payment is done by customer orderStatus should change to payment is done but in real time scenario in Payment we dont have orderNumber we will have only invoiceNumber from invoiceNumber how can we get orderNumber by using this orderNumber how to change the status i am sharing the screen shot can you please help me @rthatcher
CTO File.PNG
CTO File.PNG
@rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=BdzahkYPt2EWRj2Nx) @sureshtedla You can write a Query to retrieve the order by invoiceNumber, then use the result of the query to get the Asset you need to update.
[ ](https://chat.hyperledger.org/channel/composer?msg=22RK2AKqH9nRzzWXQ) @rthatcher when i invoke payment it should update orderStatus how it is possible order reference is not included in payment? can you explain
[ ](https://chat.hyperledger.org/channel/composer?msg=9RrDYQqQtKZFi4vXB) @sureshtedla I would suggest you go through the Query tutorial, then look at query and buildQuery in the runtime API:
https://hyperledger.github.io/composer/latest/tutorials/queries
https://hyperledger.github.io/composer/latest/api/allData#runtime-api
Has joined the channel.
Are there any features in Hyperledger Fabric that cannot be implemented using Composer? Is there any reason to be coding directly in Golang and modeling the data in terms of the world state/transaction log paradigm without using Composer?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=mBYumS9Z3AZea9EmX) @joaquimpedrooliveira Not too elegant but possible solution can be if you store the sentence word by word in a String array then your asset and query should look like something this:
```asset MyAsset identified by id {
o Integer id
o String[] searchField
}```
Where you have to slice the original sentence to an array.
```query substringQuery {
description: "Select a specific substring from a string"
statement:
SELECT org.example.Myasset
WHERE (searchField CONTAINS ['hyperledger'])
}```
source: [like this](https://hyperledger.github.io/composer/latest/reference/query-language "official API Documentation")
I've not found too much about your concrete question, I am not sure if there is solution for that.
[ ](https://chat.hyperledger.org/channel/composer?msg=mBYumS9Z3AZea9EmX) @joaquimpedrooliveira Not too elegant but possible solution can be if you store the sentence word by word in a String array then your asset and query should look like something this:
```asset MyAsset identified by id {
o Integer id
o String[] searchField
}```
Where you have to slice the original sentence to an array.
```query substringQuery {
description: "Select a specific substring from a string"
statement:
SELECT org.example.Myasset
WHERE (searchField CONTAINS ['hyperledger'])
}```
source: [query APi](https://hyperledger.github.io/composer/latest/reference/query-language "official API Documentation")
I've not found too much about your concrete question, I am not sure if there is solution for that.
[ ](https://chat.hyperledger.org/channel/composer?msg=mBYumS9Z3AZea9EmX) @joaquimpedrooliveira Not too elegant but possible solution can be if you store the sentence word by word in a String array then your asset and query should look like something this:
```asset MyAsset identified by id {
o Integer id
o String[] searchField
}```
Where you have to slice the original sentence to an array.
```query substringQuery {
description: "Select a specific substring from a string"
statement:
SELECT org.example.Myasset
WHERE (searchField CONTAINS ['hyperledger'])
}```
source: [https://hyperledger.github.io/composer/latest/reference/query-language]
I've not found too much about your concrete question, I am not sure if there is solution for that.
[ ](https://chat.hyperledger.org/channel/composer?msg=mBYumS9Z3AZea9EmX) @joaquimpedrooliveira Not too elegant but possible solution can be if you store the sentence word by word in a String array then your asset and query should look like something this:
```asset MyAsset identified by id {
o Integer id
o String[] searchField
}```
Where you have to slice the original sentence to an array.
```query substringQuery {
description: "Select a specific substring from a string"
statement:
SELECT org.example.Myasset
WHERE (searchField CONTAINS ['hyperledger'])
}```
source: https://hyperledger.github.io/composer/latest/reference/query-language
I've not found too much about your concrete question, I am not sure if there is solution for that.
[ ](https://chat.hyperledger.org/channel/composer?msg=mBYumS9Z3AZea9EmX) @joaquimpedrooliveira Not too elegant but possible solution can be if you store the sentence word by word in a String array then your asset and query should look like something this:
```asset MyAsset identified by id {
o Integer id
o String[] searchField
}```
Where you have to slice the original sentence to an array.
```query substringQuery {
description: "Select a Myasset which contains a specific word"
statement:
SELECT org.example.Myasset
WHERE (searchField CONTAINS ['hyperledger'])
}```
source: https://hyperledger.github.io/composer/latest/reference/query-language
I've not found too much about your concrete question, I am not sure if there is solution for that.
[ ](https://chat.hyperledger.org/channel/composer?msg=mBYumS9Z3AZea9EmX) @joaquimpedrooliveira Not too elegant but possible solution can be if you store the sentence word by word in a String array then your asset and query should look like something this:
```asset MyAsset identified by id {
o Integer id
o String[] searchField
}```
Where you have to slice the original sentence to an array.
```query substringQuery {
description: "Select a Myasset which contains a specific word"
statement:
SELECT org.example.Myasset
WHERE (searchField CONTAINS ['hyperledger'])
}```
source: https://hyperledger.github.io/composer/latest/reference/query-language
I've not found too much about your concrete question, I am not sure if there is a proper solution for that.
Good Morning! A question regarding the privacy in HLF with Composer: When no seperated channel is used but only rules specified in the permissions.acl file, who is able to see the encrypted data from the ledger?
@lennertr permissions.acl is a composer construct and is thus handled at the composer level. Access to the ledger is a fabric controlled capability so you would need to look at how fabric manages that access. For example hyperledger fabric has access control lists to control access to resources. I'm not sure if this capability came in 1.2 or was in 1.1 but didn't get documented until 1.2. I suggest you ask on one of the other fabric channels, maybe #fabric-questions. I'm not aware of the ledger being automatically encrypted.
thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=MWH2uv5pAwjYTHBpY) @mahoney1 Hi, thank you for you help. I am doing exactly to the tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial , but still can not start npm it says missing script: start
Clipboard - August 30, 2018 11:06 AM
I tried different versions of npm, but it still does not work. I would be very grateful for an advice.
When will be multi user mode supported by customisation of rest server?
[ ](https://chat.hyperledger.org/channel/composer?msg=EF3gyJXpESntjsxnf) @HoneyShah its a starter loopback application to create/customise your own REST server, you would take that generated application and add the functionality you require such as multi-user mode.
@adedic - Did you see it generate the application (install / build messages etc etc). To run the application, navigate INTO your angular project directory (you gave it a name in the Q & A dialog) and then run npm start from there
@rthatcher @mahoney1 How to issue identities through rest server can please help me out?
@sureshtedla see https://stackoverflow.com/questions/48838803/how-to-create-participant-there-identities-via-rest-api-that-generated-by-comp
[ ](https://chat.hyperledger.org/channel/composer?msg=APzhZ6Kb8tmsXDmSP) @mahoney1 Do we need to integrate multi user mode by ourselves?
https://chat.hyperledger.org/channel/composer?msg=qmxchHT2xPvpZ5Mie
@HoneyShah yes, that's correct, per the sstone post appended above.
is there a way to implement the private data collection from fabric into composer?
I have followed https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest, but when I start my docker container for the REST server it starts as expected, but there is nothing available on `http://localhost:3000/explorer`. When I look at the logs of the container, it keeps throwing errors every few seconds:
```
[2018-08-30T09:23:05.416Z] PM2 log: App [composer-rest-server] with id [0] and pid [199], exited with code [1] via signal [SIGINT]
[2018-08-30T09:23:05.418Z] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-08-30T09:23:05.422Z] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: Failed to connect before the deadline
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: Failed to connect before the deadline
Error: Error trying to ping. Error: Failed to connect before the deadline
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:806:34)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=Eukaw7YHAtkubp5Hq) @mahoney1 Okay. Can you please suggest steps or any guide for for set up multi user mode?
[ ](https://chat.hyperledger.org/channel/composer?msg=Eukaw7YHAtkubp5Hq) @mahoney1 Okay. Can you please suggest steps or any guide for set up multi user mode?
@lennertr unfortunately composer doesn't support private data collections
I've posted an update to the mailing lists on behalf of the IBM contributing team which I will also bring up at the TSC call later on today: https://lists.hyperledger.org/g/composer/message/125
How to create and import card in node js
@MarcelvandeKerkhof - yes, this is a networking problem, with the rest server container not being able to see the Fabric. You can confirm this by connecting to the REST container and trying to hit the CA container with wget:
`docker exec -it rest /bin/sh`
`wget http://ca.org1.example.com:7054/api/v1/cainfo` - I guess you want myorg somewhere in the url!
`exit`
If you are using docker-compose, I would ask if you are using the same network bridge for the rest container as the other Fabric containers? You can use `docker inspect` to investigate.
@MarcelvandeKerkhof - yes, this is a networking problem, with the rest server container not being able to see the Fabric. You can confirm this by connecting to the REST container and trying to hit the CA container with wget:
`docker exec -it rest /bin/sh`
`wget http://ca.org1.example.com:7054/api/v1/cainfo` - I guess you want myorg somewhere in the url!
(you will see either connection refused or the cainfo page downloaded.)
`exit`
If you are using docker-compose, I would ask if you are using the same network bridge for the rest container as the other Fabric containers? You can use `docker inspect` to investigate.
[ ](https://chat.hyperledger.org/channel/composer?msg=dkqbxeiZBZqDH2Jrw) @rthatcher When I do the wget, I see the `Connection refused` message
POST http://localhost:3000/api/Importer 401 (Unauthorized) ----> how to get authorized automatically ?
i'm using only one rest in multi-user mode.... or i have to run two rest server ?
hi guys , in the script file in composer playground, is there a way to reference a specific asset with a given ID directly without for example making a query - for example if (namespace.sampletransaction#mysampleID fulfils some condition) then do whatever
[ ](https://chat.hyperledger.org/channel/composer?msg=LsG3ioZdwo8eJ87CW) When I do `docker inspect rest`, I notice that the `Bridge` is not set, or am I looking in the wrong place? here is a snippet from the output:```
"NetworkSettings": {
"Bridge": "",
"SandboxID": "1be21916a256f367efb4dbc625497440bd3b3058f7022a3977891d5bab6186b1",
....
``` But when I run this command for any other node, the Bridge is empty for all of them...
[ ](https://chat.hyperledger.org/channel/composer?msg=LsG3ioZdwo8eJ87CW) @MarcelvandeKerkhof OK - so it is a network problem. You can try that url from your host machine, using *localhost* either with a browser or wget and it will confirm that the ca is running.
[ ](https://chat.hyperledger.org/channel/composer?msg=BAPgvLFA5KamRws4g) @rthatcher When I try to connect to `http://localhost:7054/api/v1/cainfo` in my webbrowser, I do get a JSON result
@MarcelvandeKerkhof - try `docker inspect `
[ ](https://chat.hyperledger.org/channel/composer?msg=xKf6bSPTicqYwXExT) @rthatcher I have just checked the Bridge for all the containers in my Fabric and it is empty everywhere: `"Bridge": ""`
[ ](https://chat.hyperledger.org/channel/composer?msg=xKf6bSPTicqYwXExT) @rthatcher btw, `docker inspect `
try `docker inspect composer_default`
[ ](https://chat.hyperledger.org/channel/composer?msg=Z44E6hekYnMtogFvd) @rthatcher ```
$ docker inspect composer_default
[]
Error: No such object: composer_default
```
@rthatcher Perhaps it is my mistake, but in my docker-compose.yml file, I have defined a network named "super", which creates the network named "net_super". Here is the outcome of `docker network ls`:```
$ docker network ls
NETWORK ID NAME DRIVER SCOPE
7ec8eb670892 bridge bridge local
4c9e58486727 host host local
354544fee87f net_super bridge local
5d7d934698e6 none null local
``` All of my containers seem to be present in the `net_super` network. Not sure if this is exactly the same as a Bridge?
is your REST container on the list for net-super with the others? If not then you need to use this parameter when you run it `--network net_super `
is your REST container on the list for net-super with the others? If not then you need to use this parameter when you run it `--network net_super `
(I assume you have done `docker inspect net_super` )
is your REST container on the list for net-super with the others? If not then you need to use this parameter when you run it `--network net_super `
(I assume you have done `docker inspect net_super` and yes net_super is a docker bridge network)
hai, i have a question: what's the usage of ca info in item "certificateAuthorities" in connection profile ? for the exist org already has the ca files, is that for new org or sth else?
@Jyotirmoy - see this Wiki link - it has an example of what you require https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#cardapis
[ ](https://chat.hyperledger.org/channel/composer?msg=qNtu6E5yAX9XJ7pLp) @touchingsoil refers to the Fabric CA server that's responsible for managing identities that may be issued through Composer.
Has joined the channel.
Any support to connect hyperledger composer with kubernetes
Any support to connect hyperledger composer with kubernetes?
@Ibraxos see this Stack https://stackoverflow.com/questions/52005240/hyperledger-composer-on-kubernetes and link [here](https://ibm-blockchain.github.io/paid/interacting/)
Thanks I'll look into it
@Drest yes, use `getIdentifier()` method - examples of that in use is this sample network -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/letters-of-credit-network/lib/logic.js#L29 and the model file is [here](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/letters-of-credit-network/models/org.example.loc.cto)
hi, good afternoon , does anyone know if access controls are possible on queries thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=JnYbZRRHBn8aRrYxE) @rthatcher Yes, it is in the list of the net_super network
[ ](https://chat.hyperledger.org/channel/composer?msg=JnYbZRRHBn8aRrYxE) @rthatcher Yes, it is in the list of the net_super network, but it is still not working
Error: Participant 'com.Mohammad.Importer#Majed' does not exist eventhough when i check the playground the participant is there ...
i'm trying to issue identity using the rest api
[ ](https://chat.hyperledger.org/channel/composer?msg=iftwetajmc6PNqL9A) @mahoney1 ah thanks a lot
[ ](https://chat.hyperledger.org/channel/composer?msg=Ryf4Qf87ZMouoXqHT) @Drest not as a part of the query language syntax ; but the results of a query you invoke, are subject to the ACLs defined in your permissions.acl
Has joined the channel.
@Haddadmj - there are documented examples here (answer section) -> https://stackoverflow.com/questions/48838803/how-to-create-participant-there-identities-via-rest-api-that-generated-by-compan - also - an example of invoking it from curl would be `curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ \ "participant": "com.Mohammad.Importer#Majed", \ "userID": "majed" \ }' 'http://localhost:3000/api/system/issueIdentity'
@Haddadmj - is it ACLs (ie issuing as a participant subject to ACLs ??) - note there are documented examples here (answer section) -> https://stackoverflow.com/questions/48838803/how-to-create-participant-there-identities-via-rest-api-that-generated-by-compan - also - an example of invoking it from curl would be `curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ \ "participant": "com.Mohammad.Importer#Majed", \ "userID": "majed" \ }' 'http://localhost:3000/api/system/issueIdentity'
Clipboard - August 30, 2018 6:57 PM
Clipboard - August 30, 2018 6:57 PM
Clipboard - August 30, 2018 6:57 PM
@rthatcher @mahoney1
i asset order i have given ItemsDetails[] Items, in CreateOrder transaction i have given ItemDetils[] Items still i am getting this error
i asset order i have given ItemsDetails[] Items, in CreateOrder transaction i have given ItemsDetils[] Items still i am getting this error
Clipboard - August 30, 2018 7:00 PM
Clipboard - August 30, 2018 7:00 PM
in asset order i have given ItemsDetails[] Items, in CreateOrder transaction i have given ItemsDetils[] Items still i am getting this error i sharing the screen shots can you help me
Clipboard - August 30, 2018 7:37 PM
Clipboard - August 30, 2018 7:37 PM
Clipboard - August 30, 2018 7:37 PM
Clipboard - August 30, 2018 7:37 PM
ItemsDetails !== ItemDetails
Looks like you may have a typo.
means
i gave ItemsDetails in all places
[ ](https://chat.hyperledger.org/channel/composer?msg=87da7NgRZvz4mmbPe) @dselman I have ItemsDetails in all Places
Screen Shot 2018-08-30 at 15.32.28.png
Clipboard - August 30, 2018 8:05 PM
Clipboard - August 30, 2018 8:05 PM
Clipboard - August 30, 2018 8:06 PM
Clipboard - August 30, 2018 8:06 PM
Clipboard - August 30, 2018 8:07 PM
Clipboard - August 30, 2018 8:07 PM
@dselman i declared the Items in order asset still i am getting the Items not declared in Order asset
reminder that the Community call is today at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community dial-in numbers available if travelling: https://zoom.us/zoomconference?m=4IcjK7Q6jLj-wtjpwsMaXd0BSN_OFJW3
from todays RC call: example of an angular app https://github.com/caroline-church/collectable-penguin-app creating participant, issuing identity -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
@mahoney1 - Hi Paul - my contact info: Jim Mason - jemason1@yahoo.com .. Opening up the "Composer" solution strategy to a broader market is critical. I'm actually working at TokenFest in Boston in the Hyperledger booth on sept 13, 14. Will be promoting Composer and Fabric. We need a "Composer" centric group that remains active ( eg a rocketchat channel etc ). I can host Zoom meetings on a monthly basis if needed. IBM's continued participation in support is critical but I agree this focus needs more community-driven effort.
[ ](https://chat.hyperledger.org/channel/composer?msg=caka84ni5z2FNFfzE) @mahoney1 How long do the calls usually last? I saw the message late and tried to join but I guess it's over already
what's the actual advantage of using composer?
the UI?
It simplifies the process of building a Hyperledger blockchain app compared to configuring everything by hand for your network definition and developing your application logic. Big Productivity boost. Works well as a starting for many blockchain scenarios but not all. There are tutorials here - https://hyperledger.github.io/composer/latest/tutorials/tutorials.html
[ ](https://chat.hyperledger.org/channel/composer?msg=7ik8dRT2tzbGhNcDR) @formlesscloud also certain developers are more comfortable in certain skillsets. Composer gives you the ability to do everything with a JavaScript workflow and you don't have to touch Golang. If you're a Golang developer, you might not see the advantage. But Composer is higher level and great for prototyping and building complex business networks without the lowlevel gruntwork.
@jmason900 I believe you were on the fabric design calls where we presented our first improvements to fabric. These improvements are just the start and I'm sure you will recognise the inspiration for these :-)
@jmason900 @coveloper thank you so much guys, you've been very kind and helpful
do you also know how can I choose between Fabric or Sawtooth?
is there a comparison table with recommandations when to use one over the other?
Has joined the channel.
I know i already posted this on #fabric but i just realised i should have been on this channel so i am resending this here.
Hi everyone, i am a developer from Qubec city, Canada. I am building an app using Hyperledger Composer and i was wondering what OO langage hyperledger supports best. I already have an alpha built in NodeJS but I am considering switching to another language as JS isn't really optimal for my needs. I am in the field of cyber security so i am looking for something robust and fast as i have a lot of file reading and the app is supposed to run for long periods, so it needs to not be heavy on CPU and memory usage.
thanks in advance
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=zgFviRBNjbhXxAJdq) @formlesscloud I don't know much about Sawtooth, but here's the Whitepaper if that helps: https://www.hyperledger.org/wp-content/uploads/2018/01/Hyperledger_Sawtooth_WhitePaper.pdf
@mahoney1 Actually, I could not see generated application as hyperledger composer command does not work: yo hyperledger-composer
@adedic what do you mean doesn't work? what happens?
@adedic make sure you're in the right folder when you run that command
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=QETakwJibJkEesc9N) @gewing could you find an answer to MVCC conflict? Please help me out I kind of have the same problem
[ ](https://chat.hyperledger.org/channel/composer?msg=tcSz8xZwyWmpghnAj) @ykcai Have you had any updates? I am having the same problem trying updating the same participant
Hi, In hyperledger query , is that possibility to use aggregation function like SUM,MIN,MAX ? below is my query
SELECT org.asset.Member WHERE (createdDate >= _$date), this one fetch all users but I need to users count groupby month
Hi, In hyperledger query , is that possibility to use aggregation function like SUM,MIN,MAX ? below is my query
SELECT org.asset.Member WHERE (createdDate >= _$date), this one fetch all users but I need users count groupby month
@thiyagucse01 No sorry, there are no aggregation capabilities in query.
hy guys.did you read this?https://lists.hyperledger.org/g/composer/message/125
so what happens now?
One Question , We need to update the Buisness network on the Kubernetes cluster that is using Composer image of version 0.16.5 ..we are using the below commands to update the network composer network update -a
Clipboard - August 31, 2018 1:16 PM
Please suggest , what we are missing with this update command with composer version 0.16
[ ](https://chat.hyperledger.org/channel/composer?msg=4vkuLjmCXEiwS9o3j) @kapila123 with v0.16.x you need to use the _Network_ admin card not the Peer Admin card, so something like admin@fsa-network.
The specific docs for v0.16 are here: https://hyperledger.github.io/composer/v0.16/introduction/introduction.html
(the process and commands change a little with later versions of Composer)
@coveloper depending on content, 30-60 mins FYI.
@jmason900 thanks for the info, will be in touch
@adedic have you got `yo` installed ? It may be that you've not installed yo -> https://www.npmjs.com/package/generator-hyperledger-composer
@maestrus - this Composer channel remains active for support by the greater community/contributors - if you're interested in being a contributor, let us know on the contributors' channel https://chat.hyperledger.org/channel/composer-contributors
[ ](https://chat.hyperledger.org/channel/composer?msg=GnazWYPxeeHEmCAi3) @mahoney1 @mahoney1 the question is if IBM keep on coding or stop it.
@maestrus the 3rd and 4th paragraphs (from the bottom) in the mail, address IBM team's planned activity -> https://lists.hyperledger.org/g/composer/message/125
@maestrus the 3rd and 4th last paragraphs (from the bottom) in the mail, address IBM team's planned activity -> https://lists.hyperledger.org/g/composer/message/125
@maestrus the 3rd and 4th last paragraphs (from the bottom) in the mail, address the IBM team's planned activity -> https://lists.hyperledger.org/g/composer/message/125
docker-images.png
If I upgrade a bna, the old docker has to be removed manually right? Just wanted to confirm. I upgraded to 1.0.3 from 1.0.2 using
`composer network upgrade --networkName supply-sense --networkVersion 1.0.3 -c PeerAdmin@fabric-network`
[ ](https://chat.hyperledger.org/channel/composer?msg=qYnJqmsuaYJByBjS2) @varunagarwal Yes - Compose is in line with the way Fabric works, with a new container for each new version. You can stop and remove the container, and also remove the image.
[ ](https://chat.hyperledger.org/channel/composer?msg=qYnJqmsuaYJByBjS2) @varunagarwal Yes - Composer is in line with the way Fabric works, with a new container for each new version. You can stop and remove the container, and also remove the image.
[ ](https://chat.hyperledger.org/channel/composer?msg=BP3ZqBeK5nmJuRq8b) @mahoney1 "At this time, IBM has decided to reduce the investment it makes towards developing Composer,"
@rthatcher Got it, so I simple used `docker rmi IMAGE_ID`. To safely resume I put `docker-compose stop` and then `docker-compose start` but the .bna image did not start automatically as it always does. Is it safe for me to start the image manually?
@rthatcher @mahoney1 I am getting Items not declared in Order but i have declared the Items in Order i am sharing the screen shots can you please help me
Clipboard - August 31, 2018 2:13 PM
Clipboard - August 31, 2018 2:13 PM
Clipboard - August 31, 2018 2:14 PM
Clipboard - August 31, 2018 2:14 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=eqpieXW8i3jTKiDfL) @varunagarwal There s no need to stop/start the whole Fabric. There is no need to start the Container for the chaincode (BNA) - it will start the version it needs automatically. (but there is no harm starting it after starting the Fabric)
[ ](https://chat.hyperledger.org/channel/composer?msg=aiynLmzgNM55yo9wz) @sureshtedla I suspect you have changed the model, and that you have existing data that does not match the model.
It might be worth starting with a new Fabric and generating some new test data.
See also the information about migration and changing the model in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration
@rthatcher But if I restart my laptop, then I do need to stop/ start it right?
[ ](https://chat.hyperledger.org/channel/composer?msg=mLixRJnEDoh8DEy88) @varunagarwal - The specific chaincode container should start automatically - the first time a client tries to connect to it :-) . Try it out with a ping after restarting the fabric.
yup just did that
[ ](https://chat.hyperledger.org/channel/composer?msg=ewwG5FupitMoNBmKe) @rthatcher Thank you @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=BwXHFvN4ewRKrWc35) @davidkel Ok @davidkel
@rthatcher Remember my issue from yesterday that I wasn't able to ping any peers from a REST Server within a Docker container? It is still not working and I am still not sure what I am doing wrong. When I start the composer-rest-server from GitBash directly, it start immediately. However, I need to start the REST Server from a docker container... Hope you still want to help me with this?
[ ](https://chat.hyperledger.org/channel/composer?msg=xBupgpEDdrhmzmrN7) I think I have found the issue! With the `docker run` command, I passed in the volume `-v c:\\Users\\
[ ](https://chat.hyperledger.org/channel/composer?msg=Zo77j32qPGWtLAacz) I have started with new Fabric and generated new test data still i am getting the same error I dont know what to do?
[ ](https://chat.hyperledger.org/channel/composer?msg=Zo77j32qPGWtLAacz) I have started with new Fabric and generated new test data still i am getting the same error I dont know what to do? @rthatcher
Any way to manually delete chains from cello dashboard
@Ibraxos suggest you ask on the #cello channel
@davidkel ok
@davidkel while not all that trivial downgrading the nodejs has cleared the way, so thx for the tip
Has joined the channel.
In composer, how do we force a signature from a specific peer?
Like when X transaction gets initiated, these parties have to sign first
hi guys i am working on deploying composer on fabric with multiple peer organisation but i keep getting error in the connection profile. can anyone help me```~/fabric-dev-servers/fabric-samples/first-network$ composer card import -f PeerAdmin@byfn-network-org1.card --card PeerAdmin@byfn-network-org1
Failed to import the business network card
keyword: required
dataPath: .peers['peer0.org1.example.com']
schemaPath: #/required
params:
missingProperty: eventUrl
message: should have required property 'eventUrl'
keyword: required
dataPath: .peers['peer1.org1.example.com']
schemaPath: #/required
params:
missingProperty: eventUrl
message: should have required property 'eventUrl'
keyword: required
dataPath: .peers['peer0.org2.example.com']
schemaPath: #/required
params:
missingProperty: eventUrl
message: should have required property 'eventUrl'
keyword: required
dataPath: .peers['peer1.org2.example.com']
schemaPath: #/required
params:
missingProperty: eventUrl
message: should have required property 'eventUrl'
Error: Errors found in the connection profile in the card
Command failed
```
hi guys i am working on deploying composer on fabric with multiple peer organisation but i keep getting error in the connection profile while importing the card. can anyone help me```~/fabric-dev-servers/fabric-samples/first-network$ composer card import -f PeerAdmin@byfn-network-org1.card --card PeerAdmin@byfn-network-org1
Failed to import the business network card
keyword: required
dataPath: .peers['peer0.org1.example.com']
schemaPath: #/required
params:
missingProperty: eventUrl
message: should have required property 'eventUrl'
keyword: required
dataPath: .peers['peer1.org1.example.com']
schemaPath: #/required
params:
missingProperty: eventUrl
message: should have required property 'eventUrl'
keyword: required
dataPath: .peers['peer0.org2.example.com']
schemaPath: #/required
params:
missingProperty: eventUrl
message: should have required property 'eventUrl'
keyword: required
dataPath: .peers['peer1.org2.example.com']
schemaPath: #/required
params:
missingProperty: eventUrl
message: should have required property 'eventUrl'
Error: Errors found in the connection profile in the card
Command failed
```
@callmeashok see https://stackoverflow.com/questions/51693339/unable-to-import-card-in-hyperledger-composer
ok thanks man @davidkel
Hi, I'm trying to install development environment on mac OS, by following steps mentioned at link https://hyperledger.github.io/composer/latest/installing/development-tools.html . I'm getting an checkPermissions Missing write access to /usr/local/lib/node_modules
I'm running it as administrator . Can someone please suggest what I should be looking into
I'm getting another error now :request to https://registry.npmjs.org/acorn/-/acorn-5.1.2.tgz failed, reason: Hostname/IP doesn't match certificate's altnames: "Host: registry.npmjs.org. is not in the cert's altnames: DNS:a.sni.fastly.net, DNS:a.sni.global-ssl.fastly.net"
Can someone please suggest what I should be looking into
what's the best way to make user card interact with the deployed network through an app?
Uploading the file everytime the user signs in? or any other pattern? thanks
While installing I'm getting "Internal Server Error: negotiator@https://registry.npmjs.org/negotiator/-/negotiator-0.4.5.tgz" Can someone please help
[ ](https://chat.hyperledger.org/channel/composer?msg=sqy44NJdCLqh9ELij) @amitkshukla I dont think that your issue is related to composer. There is currently a global issue with npm https://status.npmjs.org/incidents/v22ffls5cd6h
Thanks @soryboums !
Is it possible to create/recover a card from the existing network?
I lost my previous composer settings and cards but the network is still up and running.
I have a PeerAdmin card based on the same connection.json
```composer card create -p connection.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k cd96d5260ad4757551ed4a5a991e62130f8008a0bf996e4e4b84cd097a747fec_sk -r PeerAdmin -r ChannelAdmin
composer card import -f PeerAdmin@pharma.card```
I have tried to uninstall and re-installed updated version of composer . But still i am getting this error .
composer network ping -c admin@tutorial-network
Error: Error trying to ping. Error: Composer runtime (0.19.12) is not compatible with client (0.20.0)
Command failed
While checking composer runtime version it is 0.20.0 in my system
[ ](https://chat.hyperledger.org/channel/composer?msg=5RbiJDfsi4unTfBDr) @Ashish_ydv check package.json file and see its composer version. The Network was created using composer 0.19.12 (old )version and its trying to run with the new 0.20.0 version.
just edit package.json file to latest version of dependencies or make a new project using yo and copy your project to the newly created folders as described here => (https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html)
[ ](https://chat.hyperledger.org/channel/composer?msg=LnMQGEQgTKmPQdb8i) @mahoney1 You are right! After installation it worked. Thank you. Now I have the following problem: Composer start network command give an error
Clipboard - September 2, 2018 11:53 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=KcGrHoEZqroM8fv8B) @coveloper I mean it gives the following error:
Clipboard - September 2, 2018 11:55 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=KcGrHoEZqroM8fv8B) @coveloper Thank you for help. I mean it gives the following error:
Clipboard - September 2, 2018 11:56 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=KcGrHoEZqroM8fv8B) @coveloper Thank you for your help. I mean it gives the following error:
Clipboard - September 2, 2018 11:58 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=tzbTo56hbuP2zZPbk) @mahoney1 Thank you. The next error I have:
Clipboard - September 3, 2018 12:00 AM
Clipboard - September 3, 2018 12:01 AM
Sorry. Somehow I sent too many messages.
Hey, does anyone know how to deploy a Business Network with Fabric v1.2 and Composer v0.20 on multiple machines?
Hi Team,
Hi Team, I am using IBP starter Plan , where i have deployed my network with two org setup. With Network , I am suppose to use the composer Rest server on the IBM Cloud using the docker-image of ibmblockchain/composer-rest-server@0.19.5 . Problem i am facing , is that i am not able to enable it for multimode option with authentication. It gives me issue , when we start the cloud application use the docker image to start the composer rest server . It says npm installl passport-github....Error.....cannot find modules"passport-github"
How to connect the multiple host in hyperledger composer?
is there something i am missing ?
@kapila123 I think you need to install passport-github globally. https://www.npmjs.com/package/passport-github
hi,i want to change fabric composer network name and channel name.i have changed to network name and channel name in the connection.json file.is that enough?
[ ](https://chat.hyperledger.org/channel/composer?msg=e5yqPTY3w6A4Hnfad) @tlee38 please suggest , what are the steps involve to install this package globally
@kapila123 Normally to install a package globally you would just do npm install -g passport-github
Any specific docker image on the cloud , that can be used for composer rest server with multimode option of ibmblockchain or hyperledger with composer version 0.19.5
Has joined the channel.
composer network start --networkName student-business-
network.bna --networkVersion 0.0.2-deploy.4 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpworkName student-businStarting business network student-business-network.bna at version 0.0.2-deploy.4
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: invalid chaincode name 'student-business-network.bna'. Names can only consist of alphanumerics, '_', and '-'
Command failed
composer network start --networkName student-business-
network.bna --networkVersion 0.0.2-deploy.4 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpworkName student-businStarting business network student-business-network.bna at version 0.0.2-deploy.4
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: invalid chaincode name 'student-business-network.bna'. Names can only consist of alphanumerics, '_', and '-'
Command failed
please any one help me
@bhemeswararaoankireddy --networkName is the name of the network you did the install with preceding this attempted 'start' - see the developer tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial and take note of the use of business network name - you use the .bna on the `install` command, but not on the start command
@kapila123 check the list of available docker images for 0.19.x here -> https://hub.docker.com/r/hyperledger/composer-rest-server/tags/
Has joined the channel.
Hey guys is it possible to deploy bna file created in composer on a network created in cello?
Hey Can anyone help me answering this https://stackoverflow.com/questions/52145825/using-sql-in-transaction-function-in-hyperledger-composer
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: cannot get package for chaincode (student-network:0.0.2)
Command failed
please help me
[ ](https://chat.hyperledger.org/channel/composer?msg=bugErXDWFgtokGu3m) @RahulSingh 6 its been answered
[ ](https://chat.hyperledger.org/channel/composer?msg=e53WLK5iznDCCto4H) @bhemeswararaoankireddy as mentioned, see the tutorial - you're not specifying the right network name / version combo on your `start` sequence? - assuming you've done a `composer network install` with a network name (in your package.json) and version (in your package.json) that matches what you're trying to do in the `start`.
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: cannot get package for chaincode (student-network:0.0.1)
Command failed
@bryq3 you use Composer tools (CLI, APIs etc) to deploy business networks. Cello is for more for provisioning/deploying for blockchain networks, BaaS etc - see answer here for best positioning
i need solution bro
@adedic - sounds like the Fabric version you've installed is not compatible with the version of Composer you've got installed currently as shown [here](https://github.com/hyperledger/composer/issues/4305) - you can check the required Fabric version on the table in the [wiki home page](https://github.com/hyperledger/composer/wiki)
@mahoney1 Thank you for answer, however it is conusing for me. Could you advise me then what to do if i want to build from scratch a custom network (don't know how to create it yet) and then deploy there bna file (model file, logic.js, acl file etc). I can create default business network with fabric scripts. Would be even better if you would suggest me a way to deploy it to the cloud. I'm capable of putting it to ibm/kubernetes cluster but it is automated with scripts as well. I would like to know how to do it step by step. I thought cello is a tool that helps to create network easily and in a fast way.
@bryq3 sure - a business network is equivalent to a smart contract ; that gets to deployed to blockchain network (thin: multi-parties, orgs etc). To deploy a sample business network, to a local Dev environment based Fabric - you can follow the E2E tutorial here ->https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - you should then get familiar with the concepts of a business network. For Cloud, as you say, its more involved (you need to set your cloud instances / container service, depending on which you use - there is a tutorial that you can follow for that -> https://ibm-blockchain.github.io/setup/ - and then deploy your business network (.bna) - it has a sample network in that tutorial, that it asks you to deploy - to that running blockchain network
@bryq3 sure - a business network is equivalent to a smart contract ; that gets deployed to blockchain network (thin: multi-parties, orgs etc). To deploy a sample business network, to a local Dev environment based Fabric - you can follow the E2E tutorial here ->https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - you should then get familiar with the concepts of a business network. For Cloud, as you say, its more involved (you need to set your cloud instances / container service, depending on which you use - there is a tutorial that you can follow for that -> https://ibm-blockchain.github.io/setup/ - and then deploy your business network (.bna) - it has a sample network in that tutorial, that it asks you to deploy - to that running blockchain network
@bryq3 sure - a business network is equivalent to a smart contract ; that gets deployed to a blockchain network (think: multi-parties, orgs etc). To deploy a sample business network, to a local Dev environment based Fabric - you can follow the E2E tutorial here ->https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - you should then get familiar with the concepts of a business network. For Cloud, as you say, its more involved (you need to set your cloud instances / container service, depending on which you use - there is a tutorial that you can follow for that -> https://ibm-blockchain.github.io/setup/ - and then deploy your business network (.bna) - it has a sample network in that tutorial, that it asks you to deploy - to that running blockchain network
@bryq3 sure - a business network is equivalent to a smart contract ; that gets deployed to a blockchain network (think: multi-parties, orgs etc). To deploy a sample business network, to a local Dev environment based Fabric - you can follow the E2E Hyperledger Composer Developer tutorial here ->https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - you should then get familiar with the concepts of a business network. For Cloud, as you say, its more involved (you need to set your cloud instances / container service, depending on which you use - there is a tutorial that you can follow for that -> https://ibm-blockchain.github.io/setup/ - and then deploy your business network (.bna) - it has a sample network in that tutorial, that it asks you to deploy - to that running blockchain network
@bryq3 sure - a business network is equivalent to a smart contract ; that gets deployed to a blockchain network (think: multi-parties, orgs etc). To deploy a sample business network, to a local Dev environment based Fabric - you can follow the E2E Hyperledger Composer Developer tutorial here -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - you should then get familiar with the concepts of a business network. For Cloud, as you say, its more involved (you need to set your cloud instances / container service, depending on which you use - there is a tutorial that you can follow for that -> https://ibm-blockchain.github.io/setup/ - and then deploy your business network (.bna) - it has a sample network in that tutorial, that it asks you to deploy - to that running blockchain network
@bryq3 sure - a business network is equivalent to a smart contract ; that gets deployed to a blockchain network (think: multi-parties, orgs etc). To deploy a sample business network, to a local Dev environment based Fabric - you can follow the E2E Hyperledger Composer Developer tutorial here -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - you should then get familiar with the concepts of a business network. For Cloud, as you say, its more involved (you need to set your cloud instances / container service, depending on which you use) - there is a tutorial that you can follow for that -> https://ibm-blockchain.github.io/setup/ - and then deploy your business network (.bna) - it has a sample network in that tutorial, that it asks you to deploy - to that running blockchain network
@bryq3 sure - a business network is equivalent to a smart contract ; that gets deployed to a blockchain network (think: multi-parties, orgs etc). To deploy a sample business network, to a local Dev environment based Fabric - you can follow the E2E Hyperledger Composer Developer tutorial here -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - you should then get familiar with the concepts of a business network. For Cloud, as you say, its more involved (you need to set your cloud instances / container service, depending on which you use) - there is a tutorial that you can follow for that -> https://ibm-blockchain.github.io/setup/ - and then deploy your business network (.bna) - it has a sample network in that tutorial, that it asks you to deploy - to that running blockchain network - there are a host of [sample networks](https://github.com/hyperledger/composer-sample-networks/tree/master/packages) for you to peruse too.
how to get the identity of the participant (issued by org1 or org2 ) in permission.acl file
hii i have one sample business network bna file please provide how to deploy on composer step by step procedure i am using ubuntu 16.04 system
and i getting full errors soo confusion
ethereum is better than hyperledger
i am only facing errors on (composer and fabric versions set up )
please provide step by step procedure
composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName student-network && composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile student-business-network.bna --file networkadmin.card && composer card import --file networkadmin.card
this is right or wrong
i am followed all tutorial fully getting error
Hi everyone,I am currently uploading the document to blockchain,but the limit is 1mb.If i try to upload more than that i am getting error.Can anyone tell me what is the reason
@AnithaReddy the participant resource, not the identity, is available in the ACL rules. You can check for current Identity in a [TP function](https://hyperledger.github.io/composer/latest/business-network/programmatic-access-control) programmatically
@bhemeswararaoankireddy what tutorial are you following? The command you're using is for a much, much older Composer version (or just plain wrong, if you're using the current Composer version (0.20.0)). Its quite easy actually - you just need to follow the Composer tutorial -https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - the instructions are very clear and it gives you a link on how to get set up https://hyperledger.github.io/composer/latest/installing/development-tools.html - if need be, `npm uninstall -g` your old Composer modules and teardown the older Fabric images you must have installed - plus remove the old business network cards `rm -rf $HOME/.composer` - ie if you want to work with a later version of Composer - you may be on an older version for a reason.
@bhemeswararaoankireddy what tutorial are you following? The command you're using is for a much, much older Composer version (or just plain wrong, if you're using the current Composer version (0.20.0)). Its quite easy actually - you just need to follow the Composer tutorial -https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - from the official Composer [docs site](https://hyperledger.github.io/composer/latest/introduction/introduction.html) the instructions are very clear and it gives you a link on how to get set up https://hyperledger.github.io/composer/latest/installing/development-tools.html - if need be, `npm uninstall -g` your old Composer modules and teardown the older Fabric images you must have installed - plus remove the old business network cards `rm -rf $HOME/.composer` - ie if you want to work with a later version of Composer - you may be on an older version for a reason.
@bhemeswararaoankireddy what tutorial are you following? The command you're using is for a much, much older Composer version (or just plain wrong, if you're using the current Composer version (0.20.0)). Its quite easy actually - you just need to follow the Composer tutorial -https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - from the official Composer [Docs Site](https://hyperledger.github.io/composer/latest/introduction/introduction.html) . The instructions are very clear and it gives you a link on how to get set up https://hyperledger.github.io/composer/latest/installing/development-tools.html - if need be, `npm uninstall -g` your old Composer modules and teardown the older Fabric images you must have installed - plus remove the old business network cards `rm -rf $HOME/.composer` - ie if you want to work with a later version of Composer - you may be on an older version for a reason.
[ ](https://chat.hyperledger.org/channel/composer?msg=TNcDwDGtDDYYwCDRy) @mahoney1 bt how can i restrict the asset creation (only participants of org1 should create assets org2 participants should just view it) without defining any attributes in participant resource please do help :(
[ ](https://chat.hyperledger.org/channel/composer?msg=KBQi3XdbrXybwq23e) @karunesh10 ? as base64 encoded string or ? Have you checked Stack Overflow (not sure its a Composer question) - [this nodejs discussion](https://github.com/nodejs/node/issues/9489) may help
@mahoney1 i converted the file to base64 string and then put it in ledger
@AnithaReddy if you won't use attributes, you can use different participant classes for each org. If you don't want to use different classes, you can use different org metadata suffix as part of the participant id - then you can use `getIdentifier()` and `indexOf()` to check if the invoking participant, is allowed to CREATE, or not. 3 choices.
[ ](https://chat.hyperledger.org/channel/composer?msg=bGaWmbxF8qeRT5RmW) @mahoney1 participant classes ??? really no idea about this
@AnithaReddy - in a BLOCKCHAIN Network (ie can have 1 or more business networks potentially, between parties of that Network), you can have many different classes representing who's participating in a business network -eg 3 such participant types (classes) shown here -> https://stackoverflow.com/questions/49309723/participants-tied-with-organization-hyperledger-composer/49325360#49325360 An example of organisation based ACL here -> https://stackoverflow.com/questions/50680188/organization-based-restrictions-for-participant-identity-issuing-in-hyperledger/50681159#50681159 . Another example can be found here -> https://stackoverflow.com/questions/44459155/includes-function-in-acl-condition/44461476#44461476 - The ACL language is here -> https://hyperledger.github.io/composer/latest/reference/acl_language -
[ ](https://chat.hyperledger.org/channel/composer?msg=vBgDKeY8ZRuu7Lp4W) @mahoney1 thanks :)
[ ](https://chat.hyperledger.org/channel/composer?msg=hHxb6ytrbyTsuad8X) i vil jus have a look at it
@mahoney1 Thank you
Has joined the channel.
Is it possible for an *Organization* to have different departments in a Business Network?, or do i have to create a different Org for each department? I was thinking of creating a set of users who belong to certain department and those departments belong to a whole Org
[ ](https://chat.hyperledger.org/channel/composer?msg=p2cvm6TKdTEoPaSNb) @Levilk Thanks for your feedback. That's what we end up doing, but we think it's something that should be very useful in query language!
Is it possible to create/recover a card from the existing network?
I lost my previous composer settings and cards but the network is still up and running.
I have a PeerAdmin card based on the same connection.json
```composer card create -p connection.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k cd96d5260ad4757551ed4a5a991e62130f8008a0bf996e4e4b84cd097a747fec_sk -r PeerAdmin -r ChannelAdmin
composer card import -f PeerAdmin@pharma.card```
Does anyone have experience launching composer and fabric on multi host environment in production? I would love to have some tips on how to do that and changes required in docker compose to achieve the same.
Hai, when i use composer network install command , but it returns:
"Installing business network. This may take a minute...
Error: Network configuration is missing this client's organization and certificate authority".
Could someone tell me what may result to this error. I have check every step, but have no clues.
Hai, when i use composer network install command , but it returns:
"Installing business network. This may take a minute...
Error: Network configuration is missing this client's organization and certificate authority".
Could someone tell me what may result to this error. I have check every step, but have no clues. by the way, the fabric network is ok.
Hai, when i use composer network install command , but it returns:
"Installing business network. This may take a minute...
Error: Network configuration is missing this client's organization and certificate authority".
Could someone tell me what may result to this error. I have check every step, but have no clues. by the way, the fabric network is ok. Further i try to search the error message in composer & fabric source code , but no result, where is the source of error message?
Has joined the channel.
@touchingsoil it will come from the fabric-sdk-node code. Have you defined the `client` section in your connection profile correctly ?
Hi guys, I need someone who will explain me step by step how to deploy business network (created in composer) to the cloud? Of course not for free. If you are interested, please contact me via email bryq1992@gmail.com
@davidkel Thank you very much. I will check it carefully. Meanwhile is there still links available to composer v1.1 docs instead of the latest version "https://hyperledger.github.io/composer/latest"
@touchingsoil https://hyperledger.github.io/composer/v0.19 However there is very little difference between this and latest, mainly around the tutorials and install when driving which versions of fabric and composer to install.
@davidkel You are so kind!!
Hello. On my infra, during the Network install command (deployment of a bna on the network ) a new docker container ( which is apparently a dev-peer ) is created. If this node is stopped manually via the Rancher console it’s not possible to restart it manually. This dev-peer is starting (if necessary) when Hyperledger-Composer starts but stay on when Hyperledger-Composer is shutdown. What is the role of this dev-peer ? Why is the chaincode not directly deployed on the existing peer ? Thnaks
@TBigjohn Hyperledger Fabric isolates the chaincode execution from the peer. This is expected behaviour. the Hyperledger fabric peer manages the lifecycle of the chaincode container
@JackMalinowski If you have deleted the admin card for the business network, there is probably no way to recover it - so you will likely have to start a clean Fabric and redeploy your BNA and start again -unless:
1. You exported the admin card sometime after you first used it?
2. You created other Participants and Issued them with Ids with the full access to the network via ACL AND the other Id has the rights to issue identities.
@juan.gzz.salz you could handle this dept structure in your cto file if you wish - example of a similar structure [here](https://github.com/hyperledger/composer-sample-models/tree/master/packages/vehicle-lifecycle-model/models) (eg. manufacturer) - that is, if you don't see dept as a field (or concept field) of the participant class (ie User)
@davidkel when i install network , the new error info is "Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF", Could you give some advice?
@davidkel when i install network , the new error info is "Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF", Could you give some advice?
@davidkel when i install network , the new error info is "Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF", Could you give some advice? i hava read the doc https://stackoverflow.com/questions/50412765/hyperledger-composer-install-error-error-error-trying-to-start-business-netwo , but get no points.
@touchingsoil Error: 14 UNAVAILABLE: EOF error is a failure of Composer to connect to the Fabric, - its likely something isn't defined correctly in your connection.json. Also - have you got TLS enabled? Have you got the correct resolution for host names used? - similar issues were reported here in the past https://stackoverflow.com/questions/50256241/hyperledger-composer-business-network-installation-error and https://stackoverflow.com/questions/50412765/hyperledger-composer-install-error-error-error-trying-to-start-business-netwo
@touchingsoil Error: 14 UNAVAILABLE: EOF error is a failure of Composer to connect to the Fabric, - its likely something isn't defined correctly in your connection.json. Also - have you got TLS enabled? Have you got the correct resolution for host names used? - similar issue reported here in the past https://stackoverflow.com/questions/50256241/hyperledger-composer-business-network-installation-error
@mahoney1 The fabric network is ok, in connection.json localhost is used
The fabric network is fine ,and localhost is used in connection file ... would you help me check it. I will appreciate your help .the file below the pem info is removed for too long : {
"name": "xfb-chain",
"x-type": "hlfv1",
"version": "1.0.0",
"peers": {
"peer0.admin-xfb.xfb-chain.com": {
"url": "grpc://localhost:7051",
"eventUrl": "grpc://localhost:7053",
"grpcOptions": {
"ssl-target-name-override": "peer0.admin-xfb.xfb-chain.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE----------END CERTIFICATE-----\n"
}
},
"peer0.college-scut.xfb-chain.com": {
"url": "grpc://localhost:9051",
"eventUrl": "grpc://localhost:9053",
"grpcOptions": {
"ssl-target-name-override": "peer0.college-scut.xfb-chain.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE----------END CERTIFICATE-----\n"
}
}
},
"certificateAuthorities": {
"ca.admin-xfb.xfb-chain.com": {
"url": "http://localhost:7054",
"caName": "ca.admin-xfb.xfb-chain.com"
},
"ca.college-scut.xfb-chain.com": {
"url": "http://localhost:8054",
"caName": "ca.college-scut.xfb-chain.com"
}
},
"orderers": {
"orderer.xfb-chain.com": {
"url": "grpc://localhost:7050",
"grpcOptions": {
"ssl-target-name-override": "orderer.xfb-chain.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE---------END CERTIFICATE-----\n"
}
}
},
"organizations": {
"admin-xfb": {
"mspid": "admin-xfbMSP",
"peers": [
"peer0.admin-xfb.xfb-chain.com"
],
"certificateAuthorities": [
"ca.admin-xfb.xfb-chain.com"
]
},
"college-scut": {
"mspid": "college-scutMSP",
"peers": [
"peer0.college-scut.xfb-chain.com"
],
"certificateAuthorities": [
"ca.college-scut.xfb-chain.com"
]
}
},
"channels": {
"ip-trading": {
"orderers": [
"orderer.xfb-chain.com"
],
"peers": {
"peer0.admin-xfb.xfb-chain.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer0.college-scut.xfb-chain.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
}
}
}
},
"client": {
"organization": "admin-xfb",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
}
}
@mahoney1 The fabric network is fine ,and localhost is used in connection file ... would you help me check it. I will appreciate your help .the file below the pem info is removed for too long : {
"name": "xfb-chain",
"x-type": "hlfv1",
"version": "1.0.0",
"peers": {
"peer0.admin-xfb.xfb-chain.com": {
"url": "grpc://localhost:7051",
"eventUrl": "grpc://localhost:7053",
"grpcOptions": {
"ssl-target-name-override": "peer0.admin-xfb.xfb-chain.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE----------END CERTIFICATE-----\n"
}
},
"peer0.college-scut.xfb-chain.com": {
"url": "grpc://localhost:9051",
"eventUrl": "grpc://localhost:9053",
"grpcOptions": {
"ssl-target-name-override": "peer0.college-scut.xfb-chain.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE----------END CERTIFICATE-----\n"
}
}
},
"certificateAuthorities": {
"ca.admin-xfb.xfb-chain.com": {
"url": "http://localhost:7054",
"caName": "ca.admin-xfb.xfb-chain.com"
},
"ca.college-scut.xfb-chain.com": {
"url": "http://localhost:8054",
"caName": "ca.college-scut.xfb-chain.com"
}
},
"orderers": {
"orderer.xfb-chain.com": {
"url": "grpc://localhost:7050",
"grpcOptions": {
"ssl-target-name-override": "orderer.xfb-chain.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE---------END CERTIFICATE-----\n"
}
}
},
"organizations": {
"admin-xfb": {
"mspid": "admin-xfbMSP",
"peers": [
"peer0.admin-xfb.xfb-chain.com"
],
"certificateAuthorities": [
"ca.admin-xfb.xfb-chain.com"
]
},
"college-scut": {
"mspid": "college-scutMSP",
"peers": [
"peer0.college-scut.xfb-chain.com"
],
"certificateAuthorities": [
"ca.college-scut.xfb-chain.com"
]
}
},
"channels": {
"ip-trading": {
"orderers": [
"orderer.xfb-chain.com"
],
"peers": {
"peer0.admin-xfb.xfb-chain.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer0.college-scut.xfb-chain.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
}
}
}
},
"client": {
"organization": "admin-xfb",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
}
}
@mahoney1 The fabric network is fine ,and localhost is used in connection file ... would you help me check it. I will appreciate your help .the file below the pem info is removed for too long : {
@touchingsoil can you confirm your Composer version presently? And are you using Fabric 1.1 ?
@mahoney1 yes, i am using fabric 1.1
Hi all
Hi @rthatcher
While i following the https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org this steps
I got this issue , cant able to deloy the business card
Installing business network. This may take a minute...E0904 15:32:50.824046217 8900 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0904 15:32:50.824559477 8900 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0904 15:32:50.824917549 8900 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0904 15:32:50.829533462 8900 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
⠸ Installing business network. This may take a minute...E0904 15:32:51.033591511 8900 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0904 15:32:51.033953460 8900 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
⠴ Installing business network. This may take a minute...E0904 15:32:52.033938016 8900 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0904 15:32:52.034457383 8900
Can i get some ideas to resolve this problem?
Has joined the channel.
@touchsoil I suggest (assuming you're on Composer v0.19.x) to see the correct form of a TLS enabled connection profile here -> https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org - similar to yours (you have grpc not grpcs for starters, and there are other errors in the connection.json you posted )
@touchsoil I suggest (assuming you're on Composer v0.19.x) to see the correct form of a TLS enabled v0.19.x connection profile here -> https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org - similar to yours (you have grpc not grpcs for starters, and there are other errors in the connection.json you posted )
@touchsoil I suggest (assuming you're on Composer v0.19.x) to see and use, the correct form of a TLS enabled v0.19.x connection profile here -> https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org - similar to yours (you have grpc not grpcs for starters, and there are other errors in the connection.json you posted )
I am using IBP starter Plan and i need to build composer rest server with multimode and authentication . As i understand , IBP starter Plan just give me privilege to install the network with composer 0.19.x . But i need to expose the apis for my network so i need the composer rest server with authentication and multimode. I was refering one of the article from developerwork , that talked about hosting composer rest server without authentication. and it was using ibmblockchain@composer rest server image to do that . But That image doesn't support the authentication of rest server .
I am using IBP starter Plan and i need to build composer rest server with multimode and authentication . As i understand , IBP starter Plan just give me privilege to install the network with composer 0.19.x . But i need to expose the apis for my network so i need the composer rest server with authentication and multimode. I was refering one of the article from developerwork , that talked about hosting composer rest server without authentication. and it was using ibmblockchain@composer rest server image to do that . But That image doesn't support the authentication of rest server .
I am using IBP starter Plan and i need to build composer rest server with multimode and authentication . As i understand , IBP starter Plan just give me privilege to install the network with composer 0.19.x . But i need to expose the apis for my network so i need the composer rest server with authentication and multimode. I was refering one of the article from developerwork , that talked about hosting composer rest server without authentication. and it was using ibmblockchain@composer rest server image to do that . But That image doesn't support the authentication of rest server . This composer rest server they suggested to host as cloud foundry application where all my cards will be imported in the cloudant and used by image . Please suggest how to go with IBP starter plan or enterprise plan to enable my composer rest server with authentication and multimode.
@Mahadream see https://discourse.skcript.com/t/running-hyperledger-composer-with-multiple-organization-on-different-host-machines/635 and check your yaml file
Actually we need the composer rest servers on the cloud to be used and composed. please suggest .
@kapila123 see https://developer.ibm.com/answers/questions/454397/how-to-make-ibm-composer-rest-server-a-multi-user/ and https://developer.ibm.com/answers/questions/436027/setup-github-passport-authentication-for-blockchai/ - it gives an example for github authentication
Has left the channel.
I have installed 3 org fabric network with one orderer on 3 different hosts and now i am trying to install composer network install for org1 and org2 it installing but when i do " composer network install --card PeerAdmin@byfn-network-org3 --archiveFile trade-network.bna" it is giving following error
I have installed 3 org fabric network with one orderer on 3 different hosts and now i am trying to install composer network install for org1 and org2 it installing but when i do " composer network install --card PeerAdmin@byfn-network-org3 --archiveFile trade-network.bna" it is giving following error "✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org3MSP]
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org3MSP]
Command failed
"
Has joined the channel.
@kariyappals - You need to check your peer (org 3) logs to see exactly why access is being denied with the identity (PeerAdmin) you are trying to use? But the other thing is that you're trying to use a PeerAdmin identity issued by org 3's CA, to install the business network chaincode, onto the peers of org1 and org2 (according to your command) which won't be recognised (they're different CAs one assumes for those orgs)
@kariyappals - You need to check your peer logs to see exactly why access is being denied with the identity (PeerAdmin) you are trying to use? But the other thing is that you're trying to use a PeerAdmin identity issued by org 3's CA, to install the business network chaincode, onto the peers of org1 and org2 (according to your command) which won't be recognised (they're different CAs one assumes for those orgs)
I have created my Fabric Network on Azure and created a channel where i joined with my 2 peers
now... i don't know whats next, i think i should install my blockchain code (wich i already tested and have in my local env), but i don't know how to connect to my remote fabric through my local composer to install my code and deploy it, i can not find any tutorial that explains how to do this with azure
@juan.gzz.salz do you have documentation of your setup? It will help me getting my prod environment ready as well. Thanks
Actually the whole hyperledger project falls lull on its face in the lack of documentation around production setup
I have asked around enough but got 0 advise on this
Has joined the channel.
Has joined the channel.
Hyperledger Composer can only work with 1 channel, so you need to ensure that only a single channel is defined in this section even though the document can support multiple channel definitions.
source: https://hyperledger.github.io/composer/latest/reference/connectionprofile
Does it mean that I cannot ever create multiple channels in composer?
Has joined the channel.
Hello, Using the following command : composer identity issue -c admin@network -f maeid1.card -u maeid1 -a "resource:net.biz.digitalPropertyNetwork.Person#mae@biznet.org" The add participant has been done successfully on the playground side but i have some issues to find the info that has to replace "mae@biznet.org" for my application. My class name is apparently correct. Thanks
Good morning everyone. Does anyone know how to refer to the current datetime for use in the queries file? For example I want a query to pick out all transactions where tx.expiry date > current date
[ ](https://chat.hyperledger.org/channel/composer?msg=JztDcMpja4xQwsWH5) @TBigjohn TBigjohn `mae@biznet.org` is the identifier of the Participant class Person (you created an instance here) in your sample network (you can check out the model file here -> https://github.com/hyperledger/composer-sample-models/blob/master/packages/digitalproperty-model/models/DigitalLandTitle.cto - the identity you issue, will map to the participant you choose to map to (via the `-a` sequence above)
@Drest you can build a query in your query file with the current date (you supply) as a parameter (and transaction.timestamp is the field for the transaction class) - or you can do so in your read-only [transaction processor function](https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions) - there's an example in this page -> https://hyperledger.github.io/composer/latest/business-network/historian - and again, supply the current date as a parameter. See also the warning from this thread (the answer that is) https://stackoverflow.com/questions/50291956/hyperledger-composer-query-datetime-parameters/50294212#50294212
@mahoney1 How to remove the data from asset registry I have order number 123 i want to remove that from asset registry
[ ](https://chat.hyperledger.org/channel/composer?msg=3ABKsz2SPxaHXr3PJ) ?
@mahoney1 Thank you, after i modified the connection file ,it works!!
Has joined the channel.
when i try to start network,the errors return as below:
composer network start -c PeerAdmin@xfb-chain-network-admin-xfb -n xfb -V 0.0.2 -o endorsementPolicyFile=endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
Starting business network xfb at version 0.0.2
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: 2 UNKNOWN: premature execution - chaincode (xfb:0.0.2) is being launched
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (xfb:0.0.2))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (xfb:0.0.2))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (xfb:0.0.2))
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (xfb:0.0.2))
Command failed
Before i start the network, i had change the details as mentioned suggestion from net
1,change timeout in connetion profile 300 to 1200
2,add peer 's - CORE_CHAINCODE_STARTUPTIMEOUT=1200s
i found the image is build:
IMAGE ID CREATED SIZE
dev-peer0.admin-xfb.xfb-chain.com-xfb-0.0.2-23856643be63fb185ab8c2d68b59e093262dc0d6633f0ac874974fd7208f8736 latest 01b44331f88d 45 minutes ago 1.56GB
but image is not running from the docker ps command.
Is the network connection speed the only reason? or any other suggestion?
logs from docker:
2018-09-05 08:41:28.976 UTC [lscc] executeInstall -> INFO 053 Installed Chaincode [xfb] Version [0.0.2] to peer
2018-09-05 09:02:36.626 UTC [chaincode] Launch -> ERRO 054 launchAndWaitForRegister failed: timeout expired while starting chaincode xfb:0.0.2(networkid:dev,peerid:peer0.admin-xfb.xfb-chain.com,tx:8c271729b433248ba1cf5f634fdb9a66b9e2e6bcfd8cd529ab6a72bba0b0a43d)
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:731
github.com/hyperledger/fabric/core/chaincode.Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/exectransaction.go:45
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:83
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
........
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2337
2018-09-05 09:02:36.627 UTC [endorser] simulateProposal -> ERRO 055 [ip-trading][8c271729] failed to invoke chaincode name:"lscc" , error: timeout expired while starting chaincode xfb:0.0.2(networkid:dev,peerid:peer0.admin-xfb.xfb-chain.com,tx:8c271729b433248ba1cf5f634fdb9a66b9e2e6bcfd8cd529ab6a72bba0b0a43d)
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch
....... the same as above........
Hey, I wanted to ask what's the difference between using
return getAssetRegistry('...') .then(function(r) { return r.add(...); });
and
var r = await getAssetRegistry('...')
r.add(...)
in a transaction function
@chosenPlaintext they're both promises, async/await came in with Node 8 - this blog is very useful at explaining both -> https://medium.com/@bluepnume/learn-about-promises-before-you-start-using-async-await-eb148164a9c8
@chosenPlaintext they're both promises, async/await came in with Node 8 (or 7.6 technically I guess) - this blog is very useful at explaining both -> https://medium.com/@bluepnume/learn-about-promises-before-you-start-using-async-await-eb148164a9c8 - also useful insight [here](https://hackernoon.com/6-reasons-why-javascripts-async-await-blows-promises-away-tutorial-c7ec10518dd9)
@mahoney1 very nice, thank you!
I'm from a c++HPC background so the async/await feels much more familiar anyways
@touchingsoil the error (cannot get package for chaincode) suggests that you haven't installed (and subsequently upgraded) to v0.0.2 of your business network (ie you had installed v0.0.1 earlier I assume and now you've changed your network, - is that the case?). You can follow Step Three 'Regenerate' and Step Four 'Deploy' of [this guide](https://hyperledger.github.io/composer/latest/tutorials/queries) to get your network installed to the level, where you can network start it per the command you ran earlier
@sureshtedla see example of removing item in the sample-networks -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L42 - a good place to check out for examples !
@mahoney1 Maybe the v0.0.1 version is installed before, i cant remember it very clearly, is there any method to get the installed network version, also is there some way to clear the version v0.0.1,then i can install v0.0.2, avoiding using upgrading to v0.0.2. ?
@mahoney1 Maybe the v0.0.1 version is installed before, i cant remember it very clearly, is there any method to get the installed network version, also is there some way to clear the version v0.0.1,then i can install v0.0.2, avoiding using upgrading to v0.0.2. ? by the way i try to start v0.0.1, the same error occured.
[ ](https://chat.hyperledger.org/channel/composer?msg=PwZcAeotHd3vtACSi) @mahoney1 Ok
Has left the channel.
@touchingsoil composer network ping should show? Composer is in line with the way Fabric works, with a new container for each new version. You can stop and remove the older container, and also remove the old image for that.
@mahoney1 now, i remove the older image and container . the new error is :Response from attempted peer comms was an error: Error: 8 RESOURCE_EXHAUSTED: received trailing metadata size exceeds limit
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (xfb:0.0.1))
@mahoney1 now, i remove the older image and container . the new error is :Response from attempted peer comms was an error: Error: 8 RESOURCE_EXHAUSTED: received trailing metadata size exceeds limit
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (xfb:0.0.1))
and the docker logs :ry/node-v57-linux-x64-glibc --napi_version=1 --node_abi_napi=napi' (1)
node-pre-gyp ERR! stack at ChildProcess.
@mahoney1 now, i remove the older image and container . the new error is :Response from attempted peer comms was an error: Error: 8 RESOURCE_EXHAUSTED: received trailing metadata size exceeds limit
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (xfb:0.0.1))
and the docker logs :ry/node-v57-linux-x64-glibc --napi_version=1 --node_abi_napi=napi' (1)
node-pre-gyp ERR! stack at ChildProcess.
Anybody have any idea how I can add a CORS header to my get request in Composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=4XP93EeTWgRzFhHTb) @mahoney1 Hi, it's clear for me that it's identifier. My participant is identified by a 4 digit id. But what should I use 1234@biznet.org ? 1234@org.domain.com what else ??? Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=PqznGcNDDAsxAryRw) really, I just need to enable cross origin with my _chaincode_
Hi, I have to set some optional fields in an asset based on some logic in addAsset transaction. I have created a separate tx for the same using transactionProcessorFunction. When composer-rest-server generates rest apis, I get two apis to add the asset, one is through POST asset api and another one is tx that I have created. Is there a way to customise POST asset api itself?
@TBigjohn in your case, the string '234' - the email id is the identifier on CLI example for Person you posted - ie just another string.
@TBigjohn in your case, the string '1234' - the email id is the identifier on CLI example for Person you posted - ie just another string.
@TBigjohn in your case, the string '1234' - the email id is the identifier in the CLI example for `Person` you posted - ie just another string.
@nemo 8 see something [like this](https://stackoverflow.com/questions/11181546/how-to-enable-cross-origin-resource-sharing-cors-in-the-express-js-framework-o)
@Anshulmittal see https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server possibly
[ ](https://chat.hyperledger.org/channel/composer?msg=rSZPYCYqkwYRutxHe) @mahoney1 Thanks it's fixed now.
We are using composer for the solution and would like to understand whether the composer team will provide guidance on migration consideration or best practices for migration to Fabric. Also are there any design consideration in the composer implementation we have to make in the solution that we can extract the data from the current network. Is it just a migration just program that would need to extract the data from the current ledger using the composer SDK API (Asset Registry and get all Assets) and the submit transactions to the new network running on fabric and chaincode. Assuming the migration tool does the mapping of the data from composer data model to the fabric data model.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=YJj6GQtvmKwscqAam) @AshishKaila Hi, yeah, i did this tutorial which explains how to create your Fabric Network using a Template that Azure provides called Hyperledger Fabric Consortium
https://docs.microsoft.com/en-us/azure/blockchain-workbench/hyperledger-fabric-single-member-blockchain
After this step, tried to found what was the next step, because at the end of that tutorial it saids i should only care about installing and deploying my chaincode, but looks like that wasn't true at all, that template lacks the creation of a channel, at least i found this tutorial wich explains that
https://github.com/mnoncloud/fabriconAzure/blob/master/Creating%20Channel%20and%20adding%20Peers
If you go a folder back in that repository you will find how to create a VM and intall composer to connect it to Fabric, but that means i will have composer remotely installed in Azure where all my network is, and i want to know how to do the same but with composer in my local computer and connect through a socket.
Thats all the material i have found for prod env.
[ ](https://chat.hyperledger.org/channel/composer?msg=YJj6GQtvmKwscqAam) @AshishKaila Hi, yeah, i did this tutorial which explains how to create your Fabric Network using a Template that Azure provides called Hyperledger Fabric Consortium
https://docs.microsoft.com/en-us/azure/blockchain-workbench/hyperledger-fabric-single-member-blockchain
After this step, tried to found what was the next step, because at the end of that tutorial it saiys i should only care about installing and deploying my chaincode, but looks like that wasn't true at all, that template lacks the creation of a channel, at least i found this tutorial wich explains that
https://github.com/mnoncloud/fabriconAzure/blob/master/Creating%20Channel%20and%20adding%20Peers
If you go a folder back in that repository you will find how to create a VM and intall composer to connect it to Fabric, but that means i will have composer remotely installed in Azure where all my network is, and i want to know how to do the same but with composer in my local computer and connect through a socket.
Thats all the material i have found for prod env.
Another question, is there a log for composer commands?, im trying to connect with my PeerAdmin card wich i created with a connection profile to my remote servers, i changed localhost domain for the public ip adress, trying to see if it works that way, i also allowed the ports for ca, peero0 and orderer, in my azure vm, but when i run
juan@JuanDeDios:~/proyectos/inovacion/local-composer-remote-fabric$ composer network install -c PeerAdmin@fabric-network -a ~/proyectos/inovacion/a3-microservices-policy/a3-microservices-policy@0.0.4.bna
it shows this error
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
I want to see if there is more specific info in some log that says for exampleo, unable to connect to IP FF.FF.FF.FF through port XX, for example
Has joined the channel.
Hello everybody:
I find the separation of projects between frameworks and tools a little confusing. For example Hyperledger Composer is a tool but when looking at its documentation it tells me that besides a tool is a framework: "Hyperledger Composer is an extensive, open development toolset and framework to make developing blockchain applications easier". Hyperledger Quilt also seems more than a tool.
I consider that a framework is a software that facilitates the development and integration of several components of a great software project. Tool is a computer program use to create, debug, maintain, or support other programs and applications.
It is quite possible that you are not very clear about the difference between framework and tool. I hope someone will clear these mental clouds for me.
Thank you
Team , I have created composer rest server new docker image to enable authentication and multiuser on tope of hypledger /composer rest server . I used this image on my kubernetes cluster to create composer rest server pod but this pod is below error in the logs and this rest server is not getting coming app on browser due the below error. <<
[2018-09-05T03:43:50.546Z] PM2 log: App [composer-rest-server] with id [0] and pid [7366], exited with code [1] via signal [SIGINT]
[2018-09-05T03:43:50.550Z] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-09-05T03:43:50.559Z] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
(node:7387) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Connection fails: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
It will be retried for the next request.
Exception: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
at client.getUserContext.then.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)
at
Please suggest how can i resolve this error . I have used composer 0.19.5 and fabric 1.1
Has left the channel.
hello,
using https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org i'm running into the following error Error: error getting endorser client for channel: endorser client failed to connect to peer0.org1.example.com:7051: failed to create new connection: context deadline exceeded
!!!!!!!!!!!!!!! After 5 attempts, peer0.org1 has failed to join channel 'mychannel' !!!!!!!!!!!!!!!!
========= ERROR !!! FAILED to execute End-2-End Scenario ===========
ERROR !!!! Test failed.....any suggestions on how to get around this? I've removed all images/containers, uninstalled/re-installed composer components to @0.20
Hai, when I try to start the network, the return info is ok:
✔ Starting business network definition. This may take a minute...
Successfully created business network cards:
Filename: alice@my-basic-sample.card
Filename: bob@my-basic-sample.card
Filename: dp@my-basic-sample.card
Filename: xfb@my-basic-sample.card
Filename: dx@my-basic-sample.card
Filename: sipo@my-basic-sample.card
Command succeeded
and the ping test is ok too.
But when i check the docker logs , i get error info about timeout on all peers, it doesnt matter?:
2018-09-06 02:11:55.875 UTC [lscc] executeInstall -> INFO 04f Installed Chaincode [my-basic-sample] Version [0.2.6-deploy.1] to peer
2018-09-06 02:32:42.802 UTC [cceventmgmt] HandleStateUpdates -> INFO 050 Channel [ip-trading]: Handling LSCC state update for chaincode [my-basic-sample]
2018-09-06 02:32:43.159 UTC [kvledger] CommitWithPvtData -> INFO 051 Channel [ip-trading]: Committed block [9] with 1 transaction(s)
2018-09-06 02:35:51.518 UTC [chaincode] Launch -> ERRO 052 launchAndWaitForRegister failed: timeout expired while starting chaincode my-basic-sample:0.2.6-deploy.1(networkid:dev,peerid:peer0.admin-xfb.xfb-chain.com,tx:2c46146668dba35df2beafbe4690101d5a6a5f76ed19296c680c7c2c564e0d08)
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:731
github.com/hyperledger/fabric/core/chaincode.Execute
......
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2337
2018-09-06 02:35:51.521 UTC [endorser] simulateProposal -> ERRO 053 [ip-trading][2c461466] failed to invoke chaincode name:"lscc" , error: timeout expired while starting chaincode my-basic-sample:0.2.6-deploy.1(networkid:dev,peerid:peer0.admin-xfb.xfb-chain.com,tx:2c46146668dba35df2beafbe4690101d5a6a5f76ed19296c680c7c2c564e0d08)
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch
...same as above...
/opt/go/src/runtime/asm_amd64.s:2337
2018-09-06 02:35:51.575 UTC [common/deliver] deliverBlocks -> WARN 054 [channel: ip-trading] Error sending to 172.21.0.1:57908: rpc error: code = Unknown desc = the stream has been done
does any one know how to apply hyperledger explorer on existing hyper ledger fabric network
or is there any api to get block hashes of fabric.
I am facing this issue can you guide me how to solve this issue.
Clipboard - September 6, 2018 11:07 AM
Error, trying to invoke business network. No valid response from any peer. (But all my container are up and running)
Has joined the channel.
Anyone knows whether Composer can support "selecting which Peer to send transaction proposal" and "selecting which Orderer to send transaction"? That is, even in connection profile, there are multiple Peers/Orderers, can I use Composer API to choose which Peer to send transaction proposal? (e.g. I may want to load balance among multiple Peers)
Anyone knows whether Composer can support "selecting which Peer to send transaction proposal" and "selecting which Orderer to send transaction"? That is, even in connection profile, there are 3 Peers/Orderers, can I use Composer API choose which Peer to send transaction proposal? (e.g. I may want to load balance among multiple Peers)
Has joined the channel.
HI all,
In our dummy composer network we have 5 participants which work as a different independent organization.
SO my question is if we want to deploy it on fabric what all thing i need to do with fabric and consider for composer.
@NoLimitHoldem Composer uses the default behaviour of the node-sdk which is to send all proposal requests to all endorsing peers in the channel. You could control this by using different business network cards that have different connection profiles listing which peers in the channel are endorsing peers. The default 1.1 node-sdk behaviour (and so composer 0.19) is to send to the first orderer only in the connection profile. In node-sdk 1.2 (and composer 0.20) it now has a new mechanism where it sends transactions to be ordered to the first orderer in the list, but if that fails it tries the 2nd, then the 3rd etc. ie a failover capability. The node-sdk defines this `commit handler` as a pluggable system so you could plug your own implementation in
@NoLimitHoldem Composer uses the default behaviour of the node-sdk which is to send all proposal requests to all endorsing peers in the channel. You could control this by using different business network cards that have different connection profiles listing which peers in the channel are endorsing peers. The default 1.1 node-sdk behaviour (and so composer 0.19) is to send to the first orderer only in the connection profile. In node-sdk 1.2 it now has a new mechanism where it sends transactions to be ordered to the first orderer in the list, but if that fails it tries the 2nd, then the 3rd etc. ie a failover capability. The node-sdk defines this `commit handler` as a pluggable system so you could plug your own implementation in
hi, after installing business network onto peer nodes I should see it in the card list right ?
```
$ composer card list
The following Business Network Cards are available:
Connection Profile: website-requests-network
┌───────────────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├───────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@my-network-org1 │ PeerAdmin │ │
├───────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@my-network-org2 │ PeerAdmin │ │
└───────────────────────────┴───────────┴──────────────────┘
```
```
$ composer card list
The following Business Network Cards are available:
Connection Profile: my-network
┌───────────────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├───────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@my-network-org1 │ PeerAdmin │ │
├───────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@my-network-org2 │ PeerAdmin │ │
└───────────────────────────┴───────────┴──────────────────┘
``` my
```
$ composer card list
The following Business Network Cards are available:
Connection Profile: my-network
┌───────────────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├───────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@my-network-org1 │ PeerAdmin │ │
├───────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@my-network-org2 │ PeerAdmin │ │
└───────────────────────────┴───────────┴──────────────────┘
```
It's not here
It's not there
Even if install succeeded
@RockyRacer Those a `fabric network cards` which are used for fabric level activities only. They will not have a business network entry.
Hmm ok thanks, I'm a bit confused, have to read more about it
[ ](https://chat.hyperledger.org/channel/composer?msg=wGRKoRyaWWL9jBmKE) @davidkel Thanks for clear answer!!
[ ](https://chat.hyperledger.org/channel/composer?msg=wGRKoRyaWWL9jBmKE) @davidkel @davidkel Thanks for clear answer!!
What is the "caName" in the connection profile file ? I remember having defined a "name" somewhere for my CAs
What is the "caName" in the connection profile file ? I don't remember having defined a "name" somewhere for my CAs
@RockyRacer only definition appears to be here
https://github.com/hyperledger/fabric-ca/blob/release-1.2/lib/caconfig.go
It's not explicitly documented in the CA documentation
Has joined the channel.
Hello, I'm currently having this issue https://github.com/hyperledger/composer/issues/3438
Anybody have idea ?
[ ](https://chat.hyperledger.org/channel/composer?msg=vWoAHCwFqnkA2cksJ) @davidkel OK thanks, I started my CA servers natively but actually I can define a name in CA configuration file fabric-ca-server-config.yaml, default is empty...
[ ](https://chat.hyperledger.org/channel/composer?msg=3PSzyTmzegWCKvvaH) @mahoney1 This is the logs, can you tell me whats is the problem
2018-09-06 08:39:43.772 UTC [msp] setupSigningIdentity -> DEBU 035 Signing identity expires at 2028-09-01 09:48:29 +0000 UTC
2018-09-06 08:39:43.772 UTC [msp] Validate -> DEBU 036 MSP Org3MSP validating identity
2018-09-06 08:39:43.773 UTC [grpc] Printf -> DEBU 037 parsed scheme: ""
2018-09-06 08:39:43.773 UTC [grpc] Printf -> DEBU 038 scheme "" not registered, fallback to default scheme
2018-09-06 08:39:43.773 UTC [grpc] Printf -> DEBU 039 ccResolverWrapper: sending new addresses to cc: [{0.0.0.0:7051 0
@kariyappals I believe this Fabric config related issue is because you're trying to use IP addresses and TLS together, ie if you generated the keys/certs etc with cryptogen (as used in Fabric samples), since it only uses DNS names in the SAN field of the certificates.
@basarcan still an active issue I believe, just use optional as a workaround
@basarcan still an active issue I believe, just use optional (as suggested) as a workaround
@juan.gzz.salz would check your peer container's logs, as accessible via your Cloud provider. For Composer diagnostics (debugging your node.js applications, smart contracts running in a chaincode container etc) see here -> https://hyperledger.github.io/composer/latest/problems/diagnostics
@touchingsoil, think you can ignore, if your containers are up and you can ping the business network
@mahoney1 hi, I am trying to generate the Angular app for my business network. The generation step went fine but I am getting the error below, when running 'npm start'
```
ERROR in .../angular/angular-client/src/app/my.namespace.ts (7,38): Cannot extend an interface '
@mahoney1 hi, I am trying to generate the Angular app for my business network. The generation step went fine but I am getting the error below, when running 'npm start', could I please get an advice on the matter
```
ERROR in .../angular/angular-client/src/app/my.namespace.ts (7,38): Cannot extend an interface '
,Hi , ,I have created composer rest server new docker image to enable authentication and multiuser on tope of hypledger /composer rest server . I used this image on my kubernetes cluster to create composer rest server pod but this pod is below error in the logs and this rest server is not getting coming app on browser due the below error. <<
Hello
My remote server suddenly restarted , I have to restart docker as well
to resume composer, is composer-rest-server command enough to start the service?
NOte: I am user hyperledger v1.1
Please suggest
Hi, i have followed this: https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/ to create a multi hosts network with 3 peers on two different VM. After Correctly creating Fabric Network, the Peer Admin Card and imported it, now I'm trying to installate my BND network on it but I receive the following error: ✖ Installing business network. This may take a minute...
Error: PEM encoded certificate is required.
Command failed.
Hi, i have followed this: https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/ to create a multi hosts network with 3 peers on two different VM. After Correctly creating Fabric Network, the Peer Admin Card and imported it, now I'm trying to installate my BND network on it but I receive the following error: ✖ Installing business network. This may take a minute...
Error: PEM encoded certificate is required.
Command failed. Does anyone has tried the same? I don't understand what the issue can be related to. Shouldn't the peer admin card contain the certificate?
@uber.twin have you checked your model (eg last msg)? Generically its a typescript error as [reported elsewhere](https://github.com/jaredhanson/passport-facebook/issues/247) but not a lot of info available on this.
Screen Shot 2018-09-06 at 5.32.11 PM.png
When I run this command :: composer network upgrade -c PeerAdmin@hlfv1 -n escrow -V 0.0.21, I am getting error as it is attached above
can somebody please tell me why i am getting this error?
[ ](https://chat.hyperledger.org/channel/composer?msg=mPRzvk6Ln7mLFZkFk) @mahoney1 It's like the compiler can't locate the base types of my model which is defined in multiple cto files, spread across a directory structure.
@mahoney1 or it can't handle hierarchies which make use of abstract types?
@uber.twin The generator isn't able to handle everything as there are improvement issues outstanding for the generator. The generator creates a starting point for you and you will now have to go in and complete the changes required
@uber.twin The generator isn't able to handle everything as there are improvement issues outstanding for the generator. The generator creates a starting point for you and you will now have to go into the generated code and complete the changes required
@uber.twin The generator isn't able to handle everything as there are improvement issues outstanding for the generator. The generator creates a starting point for you and you will now have to go into the generated code and complete the changes required yourself
@davidkel alright, thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=Rvc5hehnJ6Ks6hcn9) @d8bhatta you need to install it (having changed your package.json to that version) first. See Step Three and Four of this tutorial for sequence https://hyperledger.github.io/composer/latest/tutorials/queries
[ ](https://chat.hyperledger.org/channel/composer?msg=Rvc5hehnJ6Ks6hcn9) @d8bhatta you need to `composer network install` it first (having changed your package.json to that version). See Step Three and Four of this tutorial for sequence https://hyperledger.github.io/composer/latest/tutorials/queries
[ ](https://chat.hyperledger.org/channel/composer?msg=Rvc5hehnJ6Ks6hcn9) @d8bhatta you need to run `composer network install` it first (having changed your package.json to that version). See Step Three and Four of this tutorial for sequence https://hyperledger.github.io/composer/latest/tutorials/queries
[ ](https://chat.hyperledger.org/channel/composer?msg=Tg66tkZjm9yKy3Yta) @nicoventrella yes it should. Suggest to read multi-org tutorial https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org (or single org tutorial if single org) for guidance, and item 2 and 3 of this [knowledge wiki ](ttps://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#multiorg )
[ ](https://chat.hyperledger.org/channel/composer?msg=Tg66tkZjm9yKy3Yta) @nicoventrella yes it should. Suggest to read multi-org tutorial https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org (or single org tutorial if single org) for guidance, and item 2 and 3 of this [knowledge wiki](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#multiorg )
@mahoney1 Of course I ran the install command and then upgrade command. I have noted down the upgrade script . I have stoped, teardown and start fabric and eventually my data is lost from my system. Is it just because I ran teardown command?
Can I use composer generated chaincode with fabric java sdk ?
@ZaheerUdDeen see https://stackoverflow.com/questions/51557258/how-to-call-hyperledger-composer-written-chaincode-from-hyperledger-fabric-java - for options involving REST APIs
@d8bhatta yes correct
@mahoney1 How to update bank participant and its customer participant balance in composer?
I am able to update customer balance but not bank participant
COMPOSER DISCONTINUED: what do people make of this?
COMPOSER DISCONTINUED: what do people make of this
https://lists.hyperledger.org/g/composer/message/125
@sureshtedla you can check out the many examples in sample-networks transaction logic for an answer -> https://github.com/hyperledger/composer-sample-networks/tree/master/packages
[ ](https://chat.hyperledger.org/channel/composer?msg=JDuqLkv3H6xnRvZFD) @mahoney1 I can able to update one at a time how to update two participant balances?
[ ](https://chat.hyperledger.org/channel/composer?msg=id9vFcmpEqkuCnkKn) namespace org.acme.sample
participant Customer identified by customerId{
o String customerId
o String firstName
o String lastName
o String panId
o Currency workingCurrency default ='USD'
o String balance
o String aadharNumber
o Address address
--> Bank bank
--> Account account
}
participant Bank identified by bankId{
o String bankId
o String bankName
o String description
o Address address
o Currency workingCurrency default ='USD'
o String balance
--> Account account
}
concept Address{
o String stateName
o String districtName
o String villageName
o String pincode
o String email
o String phoneno
}
enum Currency{
o EURO
o STERLING
o USD
o YEN
o CHF
o CAD
}
asset Account identified by accountNumber{
o String accountNumber
o Double balance
-->Customer owner
}
transaction TransferAmount {
o Double amount
--> Account sourceAccount
-->
--> Account targetAccount
}
Has joined the channel.
Has joined the channel.
Hello, can someone help me. How can i change a fabric/composer world state to use couchdb.
@MikeRichardson Thanks for the information! As I understand they will still continue to update Composer to maintain compatibility with latest Fabric releases but will not develop any new features. Composer features and more will be included in future Fabric releases. So it should not be a big deal.
Has joined the channel.
True but it was previously being promoted as this super cool way to develop production blockchain solutions without needing all the technical expertise of Fabric. This seems like a U-Turn to me. It's not that big a deal that is true.
Or is it IBM want to make more consultancy fees by not making it too easy to develop systems??
Has joined the channel.
Hello , I user queries to get some assets and I want to txid of these assets , how can i do it ?
Hey everyone, starting mid morning I've been unable to deploy composer bna files to a kubernetes pod using the composer playground. It seems the playground is reliant on external scripts or services that may have been depreciated or even taken offline
This is the error I am receiving: Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN npm ERR! errno EAI_AGAIN npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443 npm ERR! A complete log of this run can be found in: npm ERR! /root/.npm/_logs/2018-09-06T17_07_07_778Z-debug.log "
Has anyone else experienced this issue? Does anyone know what has changed in the past day for composer?
Has joined the channel.
@mahoney1 Thanks, now i undrestand that every VM i have does not have a Public IP, the only acces i have its trough a Public IP Address Resource that the Azure Template created, and then specifiy wich node with the ports, i can access those peers and nodes (like the ca and orderer) through ports 3000, 3001, 3002, 3003 through ssh azureuser@ip -p port
But, how i tell this to my profile connection.js?
example
"peers": {
"peer0.org1.example.com": {
"url": "grpc://40.231.35.5:7051"
}
},
does not work, neither using the DNS
nor the 3002 port wich is my peer0
@mahoney1 Thanks, now i understand that every VM i have does not have a Public IP, the only acces i have its trough a Public IP Address Resource that the Azure Template created, and then specifiy wich node with the ports, i can access those peers and nodes (like the ca and orderer) through ports 3000, 3001, 3002, 3003 through ssh azureuser@ip -p port
But, how i tell this to my profile connection.js?
example
"peers": {
"peer0.org1.example.com": {
"url": "grpc://40.231.35.5:7051"
}
},
does not work, neither using the DNS
nor the 3002 port wich is my peer0
using the 3002 also gives a different error
Response from attempted peer comms was an error: Error: 2 UNKNOWN: Stream removed
Has joined the channel.
Hello,
I would like you to help me with this questions, please
1.which encryption function is used, and which hashing is used in Ffabric and composer?
2.How can I test the cryptography of the data?
3.How can I change and test the access control of participant?
Hello.
Following the annoucment last week (https://lists.hyperledger.org/g/composer/message/125) from Simon Stone that says roughly: We give up Composer to focus on Fabric, we decided to rewrite our POC directly using Farbic. So what are now the recommended tools to build a fabric REST API ?A Node-JS server call Fabric APIs ?
Thanks in advance.
Hello.
Following the annoucment last week (https://lists.hyperledger.org/g/composer/message/125) from Simon Stone that says roughly: We give up Composer to focus on Fabric, we decided to rewrite our POC directly using Farbic. So what are now the recommended tools to build a fabric REST API ?A Node-JS server calling directly Fabric APIs ?
Thanks in advance.
Hello,
Has joined the channel.
in connectionprofile.json default is "x-type": "hlfv1", "version": "1.0.0" as i am using fabric 1.2 i think i need to change it to "x-type": "hlfv12",
"version": "1.2.0" is it right assumption.
@VenkataY No you should leave `x-type` as `hlfv1` and version as `1.0.0`
@VenkataY No you should leave `x-type` as `hlfv1` and `version` as `1.0.0`
@davidkel Thanks, Can you brief what is the significance of these particular values.
@VenkataY `version` defines the version of the fabric connection profile (the connection profile is owned by core fabric, not by composer) `x-type` is a special entry specifically for composer to indicate the connector plugin to be loaded.
@davidkel Thanks for the clarification
Hi,
Currently running a 3 Org Fabric network on 3 different hosts (VMs). After installing composer, I tried to run the following command to install the bna file into the orgs in the network.
Command:
composer network install --card --archiveFile
The command works successfully in Org 1 and Org 2 (present different VMs). But, it fails for Org 3 with the following error message:
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied : channel [] creator org [Org3MSP]
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied : channel [] creator org [Org3MSP]
Command failed
how to view the complete ledger in a hyperledger fabric
using couchbd
@AnithaReddy This is not really a composer question, I would suggest asking on one of the other fabric channels
@k.ramankishore check your peer logs for more info about what the problem is
Please someone How to unpack the .bna file ..
@SilambarasanMadhappan use `unzip`
@davidkel : Thank you :)
How do we check peer logs, if i use command 'docker logs peercontainename' it gives stream of data which does not stop, also there is no errors in it
@kariyappals It depends on your environment for running fabric, if you are using docker and docker-compose then `docker logs peercontainer` is the correct way
@aparolini this [Stack Overflow](https://stackoverflow.com/questions/50662159/hyperledger-how-to-set-up-rest-api-for-invoking-chaincode) captures the current status for Fabric REST API tools - this [article](https://hackernoon.com/setting-up-restful-api-server-for-hyperledger-fabric-with-nodejs-sdk-a4642edaf98e) gives a simple tutorial for building your own.
@aparolini this [Stack Overflow](https://stackoverflow.com/questions/50662159/hyperledger-how-to-set-up-rest-api-for-invoking-chaincode) captures the current status for Fabric's REST API tools - this [article](https://hackernoon.com/setting-up-restful-api-server-for-hyperledger-fabric-with-nodejs-sdk-a4642edaf98e) gives a simple tutorial for building your own.
[ ](https://chat.hyperledger.org/channel/composer?msg=vpzsdKYc2gchXmyzg) @mahoney1 thanks
@juan.gzz.salz its whatever public IPs / ports your cloud provider exposes, so that your local dev environment can connect remotely ie equivalent to [this tutorial] for IBM Cloud as an example.
[ ](https://chat.hyperledger.org/channel/composer?msg=xHQvJysd6TGbf4LTP) @davidkel oh ok !
Has joined the channel.
Has joined the channel.
Please any one provide the sample example for how to define nested asset in CTO file..
Like ...
Vehicle (Vehicle ID, Car ID)
-Car(Car - ID, Components-ID)
-components (Component ID, Component Type) (Can be diff. It can be part of another vehicle or independent)
@SilambarasanMadhappan Many examples can be found at https://github.com/hyperledger/composer-sample-networks which may help
Clipboard - September 7, 2018 5:13 PM
Clipboard - September 7, 2018 5:13 PM
@mahoney1
When I update my business network, I:
1. regenerate `.bna` file
2. reinstall it on peer nodes of the organizations
3. retrieve new business network admin certificates
4. start the business network
I get `Error: chaincode with name 'my-business-network' already exists`.
Can't I not just update the version ?
Is there any guideline for using passport-local for authentication in rest-server multi user mode? I have exported the COMPOSER_PROVIDERS variable but get a 404 error page at the auth page. Any help on this?
[ ](https://chat.hyperledger.org/channel/composer?msg=74cE7QufZv9NatTW2) @RockyRacer instead of starting you can use composer network upgrade -c PeerAdmin@hlfv1 -n yournetworkname -V newVersionOfYourChaincode
@RockyRacer yes you can.
1. Increment the version of your business network package.json (eg 0.0.1 --> 0.0.2)
2. regenerate the bna
3. Install it on the peer nodes
4. `composer network upgrade -c
@RockyRacer yes you can.
1. Increment the version of your business network package.json (eg 0.0.1 --> 0.0.2)
2. regenerate the bna
3. Install it on the peer nodes
4. `composer network upgrade -c
Ah yes of course sry, thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=3FrmCweCv4kdjWMi4) @davidkel any input on this?
Clipboard - September 7, 2018 5:26 PM
Clipboard - September 7, 2018 5:26 PM
@davidkel
@tahaf10 I know that passport-local probably doesn't work out of the box. Someone may have written up how to make it work but you would have to search stackoverflow or try google.
[ ](https://chat.hyperledger.org/channel/composer?msg=SXasHKHbeQH8irmMP) @sureshtedla try deleting your admin card and importing it again. Make sure that the card you use is the latest one which was generated during the composer network start command
okk
[ ](https://chat.hyperledger.org/channel/composer?msg=ZZCxdzEMkv63652TY) @tahaf10 ok
[ ](https://chat.hyperledger.org/channel/composer?msg=Pg88fnJQK9MWYr7wW) @davidkel Have searched a lot on both google and stackoverflow but no answer. I'm stuck on the authentication proccess for my application. One option is to set up a complete node server myself and deal with authentication there. But I dont want to do that, I want to use rest-server in multi user mode.
Hyperledger composer can not be used in any production environment unless you bring in strong and documented authentication procedures. The 2 procedures that the composer docs talk about, one is completely useless. Github is almost never going to be used in any production app. Google makes sense. But a local username password strategy should be discussed in detail as well.
[ ](https://chat.hyperledger.org/channel/composer?msg=hYyeBp9n6DMy2WqWC) @davidkel Thank you, david.
@tahaf10 The passport strategies are designed to be integrated using code rather than standalone packages. Some work without any code required eg github, others require unique code in order to drive them. So you have some choices here to be able to create something for your environment
1. look at passport-local, implement the required unique code and wrapper it as your own passport package and get the composer rest server to use that. I believe that is how others have integrated the passport jwt module (should find examples of that using google)
2. use the custom rest server and add your own authentication mechanisms that satisfy your security requirements
3. Write you own rest server from scratch
@tahaf10 The passport strategies are designed to be integrated using code rather than standalone packages. Some work without any code required eg github, others require unique code in order to drive them. So you have some choices here to be able to create something for your environment
1. look at passport-local, implement the required unique code and wrapper it as your own passport package and get the composer rest server to use that. I believe that is how others have integrated the passport jwt module (should find examples of that using google)
2. use the custom rest server and add your own authentication mechanisms that satisfy your security requirements
3. Write you own rest server from scratch
The point here is that the composer does not dictate how you want to authenticate, the choice is yours
@tahaf10 The passport strategies are designed to be integrated using code rather than standalone packages. Some work without any code required eg github, others require unique code in order to drive them. So you have some choices here to be able to create something for your environment
1. look at passport-local, implement the required unique code and wrapper it as your own passport package and get the composer rest server to use that. I believe that is how others have integrated the passport jwt module (should find examples of that using google)
2. use the custom rest server and add your own authentication mechanisms that satisfy your security requirements
3. Write you own rest server from scratch
The point here is that the composer does not dictate how you want to authenticate, the choice is yours. If you do work on making passport-local work then that would be a great thing to share with the community
Alright, I'll start working on that. Any hints on how to possibly make it work? I have seen the example of JWT auth you're talking about. That solution made a new container for rest-server. Is that required?
Is any change or interaction with the docker containers required to make authentication work?
@tahaf10 I would only start worrying about that if you want to build a unique rest server image. It's a lot easier to just develop and use the rest server as a standalone program rather than running it inside a container. Once you have it working then it's upto you whether you need to have a prebuilt image for docker or want to deploy the rest server in other ways
@tahaf10 I would only start worrying about that if you want to build a unique rest server image. It's a lot easier to just develop and use the rest server as a standalone program rather than running it inside a container. Once you have it working then it's upto you whether you need to have a prebuilt image for docker or want to deploy the rest server in other ways than through docker environments
I think it would be better to use rest-server as a stand-alone programme right now rather than having it as a docker container. The JWT passport guide had that bit about rest-server as a docker image so I got a little confused. Anyhow, thanks for the help. I'll be trying to get this done. If I have more issues I'll mention them here again
Whether the below declaration is proper in .cto file?
asset Vehicle identified by VehicleID {
o String VehicleID
}
asset Vehicle extends Car {
o String CarID
}
asset Car extends Component {
o String ComponentID
o String ComponentType
}
its like .. with instance of vehicle = Vehicle id + Car info + component info
Correct me if i am wrong..
Has joined the channel.
When I try to execute a SELECT query from swagger UI, it runs like a charm. However, when I try to execute it via transaction processor function, I get "Error: http: read on closed response body". Link: https://stackoverflow.com/questions/52223280/getting-error-http-read-on-closed-response-body-from-transaction-processor-fun
@SilambarasanMadhappan you probably meant (with your definition you would get an error) ```asset Vehicle identified by VehicleID {
o String VehicleID
}
asset Car extends Vehicle {
o String CarID
}
asset Component extends Car {
o String ComponentID
o String ComponentType
}
to end up with an entry like:
{
"$class": "org.acme.example.Component",
"ComponentID": "123",
"ComponentType": "Bolt",
"CarID": "100",
"VehicleID": "7916"
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=3FrmCweCv4kdjWMi4) @mahoney1 any input from your side on this?
[ ](https://chat.hyperledger.org/channel/composer?msg=AmLBjEdrrA5H9PP7t) This is a simple WHERE clause query.
[ ](https://chat.hyperledger.org/channel/composer?msg=AmLBjEdrrA5H9PP7t) @mrudav.shukla its been answered on S/O
[ ](https://chat.hyperledger.org/channel/composer?msg=GFqajB7cfnQPTKrK8) @mahoney1 Yup. Trying that out. Thanks. :)
@tahaf10 no more than davidkel commented earlier - useful resources https://stackoverflow.com/questions/50349925/composer-rest-server-with-passport-local-strategy and https://stackoverflow.com/questions/49409675/hyperledger-composer-rest-server-local-passport-strategy - this discussion (using it [with tokens](https://github.com/strongloop/loopback-component-passport/issues/57#issuecomment-140929082)) and useful gist https://gist.github.com/michaelfreund/edc147f1abefb39753496856306aa076
@tahaf10 no more than davidkel commented earlier - useful resources https://stackoverflow.com/questions/50349925/composer-rest-server-with-passport-local-strategy and https://stackoverflow.com/questions/49409675/hyperledger-composer-rest-server-local-passport-strategy - this discussion (using it [with tokens](https://github.com/strongloop/loopback-component-passport/issues/57#issuecomment-140929082)) and useful gist https://gist.github.com/michaelfreund/edc147f1abefb39753496856306aa076 may be useful
[ ](https://chat.hyperledger.org/channel/composer?msg=wzMr7jTNZBaqmwHbG) @mahoney1 Thank you . I will check
[ ](https://chat.hyperledger.org/channel/composer?msg=4AnDzhuwys9NyZpXJ) @mahoney1 I think there is a missing link in [this tutorial] part, thanks, i have used my public ip/port as you mention but it gives the error Stream Removed, i found on google the same error related to firebase, but i don't know what it has to do with hyperledger and how to solve it, its hard to know what is causing that error.
@juan.gzz.salz sounds like you should contact your cloud service provider to help you
[ ](https://chat.hyperledger.org/channel/composer?msg=2hksYZLJ5fyGWtE6w) @davidkel thank you, Ill see what can I do with the free trial, support its very limited with this subscription otherwise Ill upgrade, I just want to make sure everything will work before buying a sub
Hi All, This article says Hyperledger composer will no longer be supported. is it true? Do we need to move from composer to native fabric development using go or node.js Chaincode?
https://hackernoon.com/hyperledger-composer-has-been-put-on-pause-what-are-your-options-now-dfc3a97a6308
A more accurate statement can be found here https://lists.hyperledger.org/g/composer/message/125
[ ](https://chat.hyperledger.org/channel/composer?msg=BRm8JkiGp5ZQSLfK2) @davidkel Thanks for pointing me to this
i think this pretty much sums it up: "a lot less contributions from non-IBMers than we originally hoped for"
Has joined the channel.
Has joined the channel.
So, the final conclusion is to move on with core fabric sdk's without further depending on composer? or any other alternative?
i have seen other commercial enterprises develop their own explorer GUIs, so they have never relied on composer in hiding the complexity of fabric
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=xKEpS2AadsJL5JFNo) @greg2git Thanks greg, if you encounter any links of the composer type guis, kindly share..
[ ](https://chat.hyperledger.org/channel/composer?msg=wzMr7jTNZBaqmwHbG) @mahoney1 Could you please tell me the right approach on how to declare and define
have heard composer is no longer continued
is it true?
Has left the channel.
What does the composer team recommend for us developers who were using composer? Should we shift completely to Fabric?
@Varun2887 https://lists.hyperledger.org/g/composer/message/125
Is it possible for a org to expand its peers? For example,add a peer to an existed org. What steps will be need in fabric and composer?
Hai, is it possible for a org to expand its peers? For example,add a peer to an existed org. What steps will be need in fabric and composer?
@touchingsoil it is, afaik its just creating the new peer-admin certificate and joining the channel
not sure if channels have some kind of protection, but I never enabled that
@rthatcher Hi I heard news that composer is not not more supported is it true?
@FlorentinoSainz It will be ok at the fabric level, but how it woks at hyperledger composer level?
@touchingsoil afaik u just have to create new cards pointing to the new peer if you want to use it
[ ](https://chat.hyperledger.org/channel/composer?msg=SQ7u4A3AovC4Jqtf5) @touchingsoil If you have added the new peer, and joined it to the channel then Fabric should be OK. From a Composer perspective you need to edit the connection.json file (in the cards) to include the new peer.
how can ID be autogenerated in composer? any idea?
@NareshPai use transaction id (or generate it outside)
btw, before going going back into native-Fabric :( , is there a way to configure "composer upgrade" command ACLs?
@FlorentinoSainz In my opinion, the card is only related to an org, am i wrong? @rthatcher Without stopping the composer , the peer could be taken into the composer network? I think , the command install ,start will return errors.
[ ](https://chat.hyperledger.org/channel/composer?msg=HZEXSsiGn9Gg2ThvJ) @sureshtedla - Well, Composer is still supported and will have some maintenance updates, but the major contributor (the IBM team) will not be adding any significant new features. This link covers more details: https://lists.hyperledger.org/g/composer/message/125
@SilambarasanMadhappan the syntax and modeling language is here -> https://hyperledger.github.io/composer/latest/reference/cto_language - you can also check out the sample networks as as an aide/reference point https://github.com/hyperledger/composer-sample-networks
[ ](https://chat.hyperledger.org/channel/composer?msg=HZEXSsiGn9Gg2ThvJ) @sureshtedla A more accurate statement can be found here https://lists.hyperledger.org/g/composer/message/125
[ ](https://chat.hyperledger.org/channel/composer?msg=xzy67Yze3gTrqYAbf) @touchingsoil Sorry, I should have said ...You will need to install the network on the new peer, but it should start automatically when it is first 'hit'.
[ ](https://chat.hyperledger.org/channel/composer?msg=ePYy7CjKPYpCJWoEc) @rthatcher Ok Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=BBRDeztzm8pZjGogw) @mahoney1 Thanks
@rthatcher I doubt this: how to install the network bna file to the new peer, for the network install cmd via connection profile acts on an org.
[ ](https://chat.hyperledger.org/channel/composer?msg=TpeMSx79sr6MtsFa7) @touchingsoil - OK - the definitive answer will be to check the peer when it has joined the channel, and see if the bna is installed. You could try these commands:
```
docker exec -it peer0.org1.example.com /bin/sh
ls /var/hyperledger/production/chaincodes/
exit
```
[ ](https://chat.hyperledger.org/channel/composer?msg=TpeMSx79sr6MtsFa7) @touchingsoil - OK - the definitive answer will be to check the peer when it has joined the channel, and see if the bna is installed. You could try these commands with the correct peer container name:
```
docker exec -it peer2.org1.example.com /bin/sh
ls /var/hyperledger/production/chaincodes/
exit
```
[ ](https://chat.hyperledger.org/channel/composer?msg=TpeMSx79sr6MtsFa7) @touchingsoil - OK - the definitive answer will be to check the peer when it has joined the channel, and see if the bna is installed. You could try these commands with the correct peer container name:
```
docker exec -it peer2.org1.example.com /bin/sh
ls /var/hyperledger/production/chaincodes/
exit
```
I think you will need to run the composer network install command after you have updated the connection.json - you may see warning/errors that it is already installed on the 'old' peers, but it should install to the new peer.
@rthatcher It sounds OK for the installation of bna file. Next step ,is the network start cmd in need to instantiate the chaincode and will it return ok?
`2018-09-10 12:32:30.311 UTC [orderer/common/server] initializeServerConfig -> INFO 003 Starting orderer with TLS enabled
2018-09-10 12:32:30.319 UTC [orderer/common/server] initializeMultichannelRegistrar -> INFO 004 Not bootstrapping because of existing chains
2018-09-10 12:32:30.324 UTC [orderer/commmon/multichannel] newLedgerResources -> CRIT 005 Error creating channelconfig bundle: initializing channelconfig failed: could not create channel Orderer sub-group config: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.indirasoft.com")
panic: Error creating channelconfig bundle: initializing channelconfig failed: could not create channel Orderer sub-group config: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.indirasoft.com")`
```
`2018-09-10 12:32:30.311 UTC [orderer/common/server] initializeServerConfig -> INFO 003 Starting orderer with TLS enabled
2018-09-10 12:32:30.319 UTC [orderer/common/server] initializeMultichannelRegistrar -> INFO 004 Not bootstrapping because of existing chains
2018-09-10 12:32:30.324 UTC [orderer/commmon/multichannel] newLedgerResources -> CRIT 005 Error creating channelconfig bundle: initializing channelconfig failed: could not create channel Orderer sub-group config: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.indirasoft.com")
panic: Error creating channelconfig bundle: initializing channelconfig failed: could not create channel Orderer sub-group config: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.indirasoft.com")`
```
```
`2018-09-10 12:32:30.311 UTC [orderer/common/server] initializeServerConfig -> INFO 003 Starting orderer with TLS enabled
2018-09-10 12:32:30.319 UTC [orderer/common/server] initializeMultichannelRegistrar -> INFO 004 Not bootstrapping because of existing chains
2018-09-10 12:32:30.324 UTC [orderer/commmon/multichannel] newLedgerResources -> CRIT 005 Error creating channelconfig bundle: initializing channelconfig failed: could not create channel Orderer sub-group config: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.indirasoft.com")
panic: Error creating channelconfig bundle: initializing channelconfig failed: could not create channel Orderer sub-group config: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.indirasoft.com")`
```
```
`2018-09-10 12:32:30.311 UTC [orderer/common/server] initializeServerConfig -> INFO 003 Starting orderer with TLS enabled
2018-09-10 12:32:30.319 UTC [orderer/common/server] initializeMultichannelRegistrar -> INFO 004 Not bootstrapping because of existing chains
2018-09-10 12:32:30.324 UTC [orderer/commmon/multichannel] newLedgerResources -> CRIT 005 Error creating channelconfig bundle: initializing channelconfig failed: could not create channel Orderer sub-group config: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.indirasoft.com")
panic: Error creating channelconfig bundle: initializing channelconfig failed: could not create channel Orderer sub-group config: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.indirasoft.com")`
``` Can any one tell me about this issue ?
```
`2018-09-10 12:32:30.311 UTC [orderer/common/server] initializeServerConfig -> INFO 003 Starting orderer with TLS enabled
2018-09-10 12:32:30.319 UTC [orderer/common/server] initializeMultichannelRegistrar -> INFO 004 Not bootstrapping because of existing chains
2018-09-10 12:32:30.324 UTC [orderer/commmon/multichannel] newLedgerResources -> CRIT 005 Error creating channelconfig bundle: initializing channelconfig failed: could not create channel Orderer sub-group config: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.indirasoft.com")
panic: Error creating channelconfig bundle: initializing channelconfig failed: could not create channel Orderer sub-group config: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.indirasoft.com")`
``` Can any one tell me about this issue ?
```
`2018-09-10 12:32:30.311 UTC [orderer/common/server] initializeServerConfig -> INFO 003 Starting orderer with TLS enabled
2018-09-10 12:32:30.319 UTC [orderer/common/server] initializeMultichannelRegistrar -> INFO 004 Not bootstrapping because of existing chains
2018-09-10 12:32:30.324 UTC [orderer/commmon/multichannel] newLedgerResources -> CRIT 005 Error creating channelconfig bundle: initializing channelconfig failed: could not create channel Orderer sub-group config: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.indirasoft.com")
panic: Error creating channelconfig bundle: initializing channelconfig failed: could not create channel Orderer sub-group config: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.indirasoft.com")`
``` Can any one tell me about this issue ?Beacuase of this my conatiner goes to excited state
@Ashish_ydv This is a fabric setup issue, would suggest asking on one of the other fabric channels where the fabric community hang out as it's not a composer issue
@davidkel ok thanks, i will ask there
hey all.. I have a generic question on "Hyperledger Composer" future!..
https://hackernoon.com/hyperledger-composer-has-been-put-on-pause-what-are-your-options-now-dfc3a97a6308
pls share your thoughts
In mid of setting up hyperledger project using composer..
@Logi A more accurate statement can be found here https://lists.hyperledger.org/g/composer/message/125
Does anyone have a work around for hyperledger composer where at the startup it finds PHP Composer instead of HyperLedger Composer
@davidkel - thank you for that details!!..
I heard, Convector is filling this role, but I find it bit complex than "Composer". :(
Does anyone know if the SKIP/LIMIT bug was ever solved? https://github.com/hyperledger/composer/issues/1015
Has joined the channel.
@ronaldlong46 No, fabric won't ever support the limit/skip type values
@ronaldlong46 No, fabric won't ever support the limit/skip direct setting of the limit and skip options
@ronaldlong46 No, fabric won't ever support the direct setting of limit/skip.
@davidkel We are trying to bring up an instance of marbles using this URL - https://github.com/IBM-Blockchain/marbles on an instance that we setup on MS Azure cloud using Linux VM. The rest server is coming up on localhost:3001 and it is healthy [curl can prove this fact]. We have opened a publicly visible IP address on this instance and we want to bind the rest server endpoint to this publicly visible ip address and to port 443 - this the URL looks like - http://xx.yy.zz.mm:443/. It looks like only port is configurable in a json config file and host is not. Host value is not parameterized in app.js or index.js or other source files and appears to be hard coded as localhost. Is there a reason for this? How can we configure this host value to bind to an ip address without changing hostname or dns resolver or at IP layer. Should we be changing the hard coded value to something configurable and if so - would this change be supported? Are any of these approaches recommended? How do we bind the endpoint of rest server in a configurable manner? THANK YOU for any answer you may provide. Regards
@pvrbharg you can find options for the rest server here https://hyperledger.github.io/composer/latest/integrating/getting-started-rest-api.html (see -p option)
@pvrbharg you can find options for the rest server here https://hyperledger.github.io/composer/latest/integrating/getting-started-rest-api.html (see -p option), also the host is not hardcoded to anything it will listen on an appropriate network interface
@pvrbharg you can find options for the rest server here https://hyperledger.github.io/composer/latest/integrating/getting-started-rest-api.html (see -p option), also the host is not hardcoded to anything it will listen on an appropriate network interface and accept requests from external endpoints
@pvrbharg you can find options for the rest server here https://hyperledger.github.io/composer/latest/integrating/getting-started-rest-api.html (see -p option), also the host is not hardcoded to anything the rest server will listen on an appropriate network interface and accept requests from external endpoints
Hello, I have the following infra : one orderer, one peer and one channel. My composer can connect to this infra, I can test and I can deploy new version of my chaincode on my peer. Now I just added a new peer to my channel. Question : will this new peer automaticaly get the chaincode when joining the channel or do I have to deploy it manually (on the new peer) ?
@TBigjohn you need to install the business network onto this new peer
[ ](https://chat.hyperledger.org/channel/composer?msg=x6FLbqqsCEvHRRgun) @davidkel Thanks, so to install my bna on the new peer I need to : update my connection profile, generate a new NetworkAdmin card, export my bna from composer, install this bna on the new network using composer commands and when I will start the new version ( using "composer network start") a new admin card will be created. Is that correct ? Is there a simpliest way ?
@TBigjohn Is the peer in the same org or different org to your other peer ?
[ ](https://chat.hyperledger.org/channel/composer?msg=Xt5TEeSqiP3hNe3eo) @davidkel Yes same org.
@TBigjohn Ok, well assuming that you have set it up so the admin identity for it is the same as your other org
1. Update your connection profile to include the new peer
2. rebuild your all your business network cards to include the new connection profile (no easy way to do this I'm afraid)
3. use your fabric network card to perform a `composer network install`. (your fabric network card is the card you used to install your business network previously)
It should say it failed to install on 1 peer as already installed but will install to your new peer
That's it. You don't do a composer network start as you don't instantiate chaincode on a peer basis, instantiation is on a channel basis. Your business network is already started
@TBigjohn Ok, well assuming that you have set it up so the admin identity for it is the same as your other peer
1. Update your connection profile to include the new peer
2. rebuild your all your business network cards to include the new connection profile (no easy way to do this I'm afraid)
3. use your fabric network card to perform a `composer network install`. (your fabric network card is the card you used to install your business network previously)
It should say it failed to install on 1 peer as already installed but will install to your new peer
That's it. You don't do a composer network start as you don't instantiate chaincode on a peer basis, instantiation is on a channel basis. Your business network is already started
@TBigjohn Ok, well assuming that you have set it up so the admin identity for it is the same as your other peer
1. Update your connection profile to include the new peer
2. rebuild all your business network cards to include the new connection profile (no easy way to do this I'm afraid)
3. use your fabric network card to perform a `composer network install`. (your fabric network card is the card you used to install your business network previously)
It should say it failed to install on 1 peer as already installed but will install to your new peer
That's it. You don't do a composer network start as you don't instantiate chaincode on a peer basis, instantiation is on a channel basis. Your business network is already started
[ ](https://chat.hyperledger.org/channel/composer?msg=hgKhdjGkzFdacXPjE) @davidkel Thanks !
[ ](https://chat.hyperledger.org/channel/composer?msg=hgKhdjGkzFdacXPjE) @davidkel Thanks ! for the detailled reply.
1 Done
2 ok but what do you mean by rebuild ? I cannot found any buid or rebuild option in "composer card " command ..
3 sould be ok ... waith and see
@TBigjohn For option 2, all of your business network cards in your cardstore have an outdated connection profile. You need to find the most appropriate way for you to update all of your business network cards
@TBigjohn For point 2, all of your business network cards in your cardstore have an outdated connection profile. You need to find the most appropriate way for you to update all of your business network cards
Remember that once you have imported your card files into your card store, you should delete all the one time use only card files and ensure you have pinged those cards once
Remember that once you have imported your card files into your card store, you should delete all the one time use only card files and ensure you have pinged those cards once, ie don't be tempted to update any one time use only card files you might still have around
@Grendel61 see this Stack overflow https://stackoverflow.com/questions/50328871/composer-playground-command-not-found-on-ubuntu-16-04
@Grendel61 see this Stack overflow https://stackoverflow.com/questions/50328871/composer-playground-command-not-found-on-ubuntu-16-04 - then review the real install doc pages https://hyperledger.github.io/composer/latest/installing/development-tools.html
[ ](https://chat.hyperledger.org/channel/composer?msg=QLhRnvWd4MDXmPC5A) @davidkel Can I open the card folder ( which is a zip file ) an update manually the included connection json file ?
@TBigjohn if you are referring to a card file (ie a file that ends with a .card extension) then I don't recommend that approach especially if that file is a single use only card file that you should have deleted once imported into the card store and pinged
@TBigjohn if you are referring to a card file (ie a file that ends with a .card extension) then I don't recommend that approach as a single action especially if that file is a single use only card file that you should have deleted once imported into the card store and pinged.
Has joined the channel.
We are facing a problem in deploying .bna to the multi host network on network established in swarm , my bna gets rejected when I install it and a link below have my connectionProfile.json file .
https://stackoverflow.com/questions/52099821/deploy-a-bna-on-a-multi-node-network-which-is-running-in-swarm-overlay
[ ](https://chat.hyperledger.org/channel/composer?msg=KBuNMvKjtDG7YnsGo) @davidkel I have 3 cards at the moment NetworkAdmin, admin of the bna and one user. All have been imported ( composer card import ). So if it's not recommended to do it manually ( I can understand that ! ) no rebuild option available within "composer card" command, how is it possible to modify existing cards ?
@TBigjohn Unfortunately there is no easy way to do it. If you are using a file system card store (which is the default) and the card store is on your local file system (usually $HOME/.composer) then you could go into the $HOME/.composer/cards directory and you will see a directory for each card in each directory there is a file called connection.json. You can just replace that file with your new connection.json. Obviously this is a hacky and unsupported way to update your connection profiles and only applies to local card stores. But it might be the quickest way for you
Hai, in pre-requisites steps, the npm version is limite to v5.x, is this absolutely necessary? will npm v6.4.1 cause some problem?
Hai, in pre-requisites steps, the npm version is limite to v5.x, is this absolutely necessary? will npm with above version, eg v6.4.1 , cause some problem?
[ ](https://chat.hyperledger.org/channel/composer?msg=jRN8WXB5adZgASvCF) @anuj_27 Have you checked the log of the container at 192.168.11.62:7051 for errors ?
hello everyone, can somebody please tell me that how can i check my current fabric version?
''' peer version ''' is not working on my machine
@amritsharma suggest you ask on #fabric-questions or another fabric channel as this question isn't relevant to composer
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=yPbmfG4TPoEPqPAve) @davidkel @davidkel Thank you and I would review the content you pointed to me. Regards.
*What have I done so far?*
I have successfully implemented Google OAuth2 on the REST Server following these links: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest (for implementing Google OAuth2) and https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc (for enabling multi-user mode on the REST Server. From my Angular Web app, I can sign in using Google and Google redirects to my Web App after a successful signin (redirects to http://localhost:4200/Login?isLoggedIn=true), so far so good!
*What do I want to accomplish?*
I want to create a Participant, Issue an Identity and add a Wallet for the user's Google (or Github or Facebook accounts for that matter). But I am not sure how to accomplish this. The REST Server returns an `access token` specifically for the REST Server itself.
*My question?*
How can I get User Info from Google, Github or Facebook in my web app so I can create the Participant, Identity and Wallet for the user? Is there anyone out there that tried to accomplish the same? Please help! I am stuck...
[ ](https://chat.hyperledger.org/channel/composer?msg=9hv8mpcvkNbe2EsjW) @amritsharma What do you mean by not working ? error msg ?
[ ](https://chat.hyperledger.org/channel/composer?msg=fAh7STATR6mYENaZ5) @MarcelvandeKerkhof The Blog and the sample app from Caroline do cover some of the things you ask - Creating a Participant, Issuing an ID, and importing into the wallet of the Authenticated Google user. The flow of the sample app may not work exactly the way you want, but it should contain the core functions that you need.
@rthatcher I Have generated Angular UI for my network i have order asset {o Items[] Items, etc } ,,,concept Items { o String itemNumber, o String Quantity , o String Price} through through rest server i push the data like Items:[{"$class":"org.acme.chain.Items","itemNumber":"1","Quantity":"1","Price":"100$"},{"$class":"org.acme.chain.Items","itemNumber":"2","Quantity":"2","Price":"200$"},{"$class":"org.acme.chain.Items","itemNumber":"3","Quantity":"3","Price":"300$"}] but in angular ui when i go to order asset Items field i am getting [object][object] like this can help me why i am getting like this?
@rthatcher I Have generated Angular UI for my network i have order asset {o Items[] Items, etc } ,,,concept Items { o String itemNumber, o String Quantity , o String Price} through through rest server i push the data like Items:[{"$class":"org.acme.chain.Items","itemNumber":"1","Quantity":"1","Price":"100$"},{"$class":"org.acme.chain.Items","itemNumber":"2","Quantity":"2","Price":"200$"},{"$class":"org.acme.chain.Items","itemNumber":"3","Quantity":"3","Price":"300$"}] but in angular ui when i go to order asset Items field i am getting [object][object] like this can help me why i am getting like this?
I recently upgrade `composer` to `0.19.14` from `0.19.11`. The script I used to import a composer card now throws this error
`Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed`
Any idea what to do? Im using Fabric 1.1
[ ](https://chat.hyperledger.org/channel/composer?msg=7eo37FDnrDPDwoaPE) @rthatcher Thanks for the reply! I understand what Caroline does in her sample app, but instead of asking the user for details, I want to get these details from Google (or Github or Facebook) and create an identity with those details. However, when I log in my web app with Google using http://localhost:3000/auth/google (on the REST Server), how can I retrieve the user details from Google? How I understand it, the Web App doesn't communicate with Google, but the REST Server does. So, does that mean that if I want to get the User Details from Google, I have to make adjustments to the REST Server sources? Caroline creates the identity using Angular, but if I want to use the Google User Information, I just don't see how to do that?
I am trying to create channel, but it is giving error : ```
2018-09-11 13:57:37.378 UTC [channelCmd] InitCmdFactory -> INFO 001 Endorser and orderer connections initialized
Error: got unexpected status: BAD_REQUEST -- error authorizing update: error validating DeltaSet: policy for [Group] /Channel/Application not satisfied: Failed to reach implicit threshold of 1 sub-policies, required 1 remaining
``` Can you please tell me what it is?
@Ashish_ydv Sorry this is not related to composer it is related to fabric, suggest you try a fabric channel
@Ashish_ydv Sorry this is not related to composer it is related to fabric, suggest you try a fabric channel where the people with fabric knowledge hang out
Clipboard - September 11, 2018 7:36 PM
Clipboard - September 11, 2018 7:36 PM
@rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=h76xbeDWyG7RDWJFo) @sureshtedla I think this is a known issue with concepts: https://github.com/hyperledger/composer/issues/3927
Are you using concepts in your model ?
[ ](https://chat.hyperledger.org/channel/composer?msg=boWk2h8Pyo2zBvqwX) @rthatcher Yes @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=6SMndTg9hNTnz77pk) @MarcelvandeKerkhof Having logged into google, you might have some cookies you could interrogate, or otherwise you might be able to call some google api to retrieve 'current user' information.
@rthatcher Hey any idea about this?
I recently upgrade `composer` to `0.19.14` from `0.19.11`. I use a script that issues a new identity to a participant and them imports a card. It uses the network admin card for this and worked for almost a month.
```
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed
```
Any idea what to do? Im using Fabric 1.1
[ ](https://chat.hyperledger.org/channel/composer?msg=wtBSsGgdewdS4cFZs) @sureshtedla You could look at this issue, and possibly add a comment about your experience. https://github.com/hyperledger/composer/issues/4328
In the light of this announcement, I would think that it is unlikely that the issue will be fixed: https://lists.hyperledger.org/g/composer/message/125
Depending on where you are with your project you might want to re-work the model so that it does not use concepts.
[ ](https://chat.hyperledger.org/channel/composer?msg=m8hnYox3KNTEh4MDL) @rthatcher by 192.168.11.62:7051 I presume you are talking about Peer0. Here is the situation, we are able to connect our docker containers to swarm network, we are able to create channel on Peer0 and join peer0(vm1) and peer1(vm2) to the network, but when we install our .bna to the network it gives us this error "ProcessProposal -> ERRO 435 [][e8b135a8] simulateProposal() resulted in chaincode name:"lscc" response status 500 for txid: e8b135a869566624826bb9e1ae97aa83d6f920fc01677b741d6bc10632ccc451". Secondly we manually installed go example app on each of Peers and we were able to do the transactions successfully. It looks like we are not able to configure our connection_profile.json which is required to deploy a .bna on a fabric network. As already said you can look at this stack Overflow question for detailed information > https://stackoverflow.com/questions/52099821/deploy-a-bna-on-a-multi-node-network-which-is-running-in-swarm-overlay
[ ](https://chat.hyperledger.org/channel/composer?msg=m8hnYox3KNTEh4MDL) @rthatcher by 192.168.11.62:7051 I presume you are talking about Peer0. Here is the situation, we are able to connect our docker containers to swarm network, we are able to create channel on Peer0 and join peer0(vm1) and peer1(vm2) to the network, but when we install our .bna to the network it gives us this error `"ProcessProposal -> ERRO 435 [][e8b135a8] simulateProposal() resulted in chaincode name:"lscc" response status 500 for txid: e8b135a869566624826bb9e1ae97aa83d6f920fc01677b741d6bc10632ccc451"`. Secondly we manually installed go example app on each of Peers and we were able to do the transactions successfully. It looks like we are not able to configure our connection_profile.json which is required to deploy a .bna on a fabric network. As already said you can look at this stack Overflow question for detailed information > https://stackoverflow.com/questions/52099821/deploy-a-bna-on-a-multi-node-network-which-is-running-in-swarm-overlay
[ ](https://chat.hyperledger.org/channel/composer?msg=ui8iKJ95vx4obLtES) @varunagarwal Are you trying to import or use an 'old' .card file that has a one time secret that has already be used? Or have you run the startFabric.sh script?
I ran ./startFabric.sh script
I always clear my composer cards when restarting the network. So its definitely a new card made
@rthatcher the composer card is also being made, but when I call `composer network ping` for that card, or try to connect it to the `businessNetworkConnect.connect(CARD_NAME)` then I get thrown the error.
identity registry shows the card as `ISSUED` and not `ACTIVATED`
Screenshot from 2018-09-11.png
Screenshot from 2018-09-11.png
Screenshot from 2018-09-11.png
you have a spelling mistake thee Vigneshvam
@anuj_27 - sorry - I was in a hurry and got mixed up between Stack Overflow posts - I was looking at this one by mistake! https://stackoverflow.com/questions/52272253/using-hyperledger-composer-to-interact-with-hyperledger-fabricdistributed-fail
@anuj_27 - this error `Error: 14 UNAVAILABLE: Connect Failed` usually comes back straight away with no significant delay, and it means that the client (presumably the `composer network install`) can't find the fabric servers (peers) at the addresses specified in the connection.json file - so this looks like a network resolution/routing error.
[ ](https://chat.hyperledger.org/channel/composer?msg=9NNGFKPtTjvQRMpBM) @rthatcher Well, that's my problem. Google serves me 1 cookie named "connect.sid" (guessing this is some kind of session id), and the REST Server is only giving me 2 cookies named "userId" (not entirely sure what this is, but I don't think it can be used to query the Google APIs) and "access_token" (guessing this is the access token to query the REST Server, not Google APIs). So, this means that the REST Server is giving me nothing to work with for the Google APIs. Which in turn means that I have to ask the user to login again, but then directly from the Angular Web app to Google (without the REST Server in the middle). Please let me know if I am wrong here...
@rthatcher there is no alternative for concepts?
[ ](https://chat.hyperledger.org/channel/composer?msg=G87GmyZFfNHY9T4Ge) @rthatcher We already know that, but our concern is if we are able to find peers when we connect through docker bridge, why we are not able to access them when we create the same network using swarm. What IP combination do we need to follow to actually access the peers ? If you go through our stackoverflow link, you can see we are providing the IPs of seperate VMs, is that wrong in the case of *swarm* network. Can you provide us an example *connection.json* which supports swarm network connecting two peers deployed at separate vms. Another question, can't we deploy *Kafka* on bridge network, if Yes how ?
[ ](https://chat.hyperledger.org/channel/composer?msg=G87GmyZFfNHY9T4Ge) @rthatcher We already know that, but our concern is if we are able to find peers when we connect through docker bridge, why we are not able to access them when we create the same network using swarm. What IP combination do we need to follow to actually access the peers ? If you go through our stackoverflow link, you can see we are providing the IPs of seperate VMs, is that wrong in the case of *swarm* network. Can you provide us an example *connection.json* which supports swarm network connecting two peers deployed at separate vms.
@sureshtedla So you should continue to use concepts if that is right way to solve your business requirements. As for the Angular App. It's intention is to provide a starting point for your application, but isn't a complete application out of the box. You will need to implement/update the generated application to suite your needs. The generator itself can't handle everything and one of the things it can't handle are concepts correctly.
[ ](https://chat.hyperledger.org/channel/composer?msg=yXFxJtnJxiuaXrKEZ) @davidkel Ok
@varunagarwal - If you are able to list the identity registry to see `ISSUED` - you must have have at least one existing and working card :-) So I guess you are getting the enrollment error with a different card. You could check the CA container log for errors at the time of the failed ping.
hi guys, i just used the getHistoryForKey function, and im able to get an asset different versions through each transaction done to that asset, but the data it returns, does not have the timestamp nor the transaction id, just the object, why is this behavior?, and how can i get those values? transactionType, transactionId, timestamp, ty
hi guys, i managed tou use getHistoryForKey function, and im able to get the version of an asset through each transaction donde with that asset, but the data it returns, does not have the timestamp nor the transaction id, just the object, why is this behavior?, and how can i get those values? transactionType, transactionId, timestamp, but including the object, (getHistorian only shows the transaction info but not the asset info, and getHistoryForKey, just return an asset info through time, but not the transaction info...)
@juan.gzz.salz getHistoryForKey returns data in this format
```
message KeyModification {
string tx_id = 1;
bytes value = 2;
google.protobuf.Timestamp timestamp = 3;
bool is_delete = 4;
}
```
which includes the txid and timestamp
hey, thx, that the data that comes from value right?... because it has response.value.value
my asset data comes in value.value, but the transaction looks like it is on response.value
`response.value` contains the above structure. The typescript definition for it is this
```
interface KeyModification {
is_delete: boolean;
value: Buffer;
timestamp: Timestamp;
tx_id: string;
getIsDelete(): boolean;
getValue(): Buffer;
getTimestamp(): Timestamp;
getTxId(): string;
}
```
I’m using hyperledger composer in a multi user mode along with jwt authentication. There are two participants viz. A and B. First, I generated and exchanged the jwt token for participant A and then did the same for participant B. So now, I have two tokens JWT-A and JWT-B. Next, I issued identity for participant A using JWT-A, imported the card in the wallet and set that card as default. Further, repeated the same steps for B.
So my assumption was when I check the “wallet” using JWT-A, the result should show A’s card as default and when I use JWT-B, the result should show B’s card as default. But it isn’t the case. After using JWT-B and setting B’s card as default, I tried using JWT-A and check the wallet, it still shows B’s card as default. How will the composer-rest-server differentiate between the client then?
Has joined the channel.
Has joined the channel.
Hello everyone, I am new to hyperledger and I have a query regarding DayeTime format on composer modelling language. Could anyone please let me know how to update the value?
Hello, I am getting this error while trying to start the composer network using 'composer network start -c ....' command.
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Peer peer2.tharthar:7051 has rejected transaction '0e099dbbd5eb6f8ef2eb8ca04ee076133084b7655760097251868071bff4d694' with code ENDORSEMENT_POLICY_FAILURE
Command failed
```
Hello, I am getting this error while trying to start the composer network using 'composer network start -c ....' command.
```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Peer peer2.tharthar:7051 has rejected transaction '0e099dbbd5eb6f8ef2eb8ca04ee076133084b7655760097251868071bff4d694' with code ENDORSEMENT_POLICY_FAILURE
Command failed
```
I am following the multi org tutorial : https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org. I have seen some responses in this group about it earlier where we need to change localhost to their corresponding IP address. I did that but it still throwing the same error. My question is after I update my connection.json file for both the orgs, should I recreate the cards, install the business network and then start the composer network again?
Just a bit more information : I am using the same endorsement policy as it is in the tutorial. Please advice.
[ ](https://chat.hyperledger.org/channel/composer?msg=HwGddBZBAQaTjREDq) @rupa12 Can you please check if your Peer2 is functioning properly and chaincode container is up for peer 2 as well?
Has joined the channel.
Hello,how can I generate unique ID for a new asset in composer
[ ](https://chat.hyperledger.org/channel/composer?msg=RohjBtv35Z6iGu25z) @nulee100 So you want IDs to be autogenerated?
@mrudav.shukla yes
or ues the transaction id ,but I dont
know how can I get the transaction id in the transaction function
[ ](https://chat.hyperledger.org/channel/composer?msg=aGMjCK36REE9jfenQ) @nulee100 So basically, you can create a transaction processor function that accepts the details of the asset except for the asset ID. Next, inside this function you can have your custom logic to generate unique ID and set it to the asset's id property.
[ ](https://chat.hyperledger.org/channel/composer?msg=iwrnR3iPWNt3T4TPu) @rahul703 Composer modelling language uses an ISO-8601 compatible time instance, with optional time zone and UTZ offset. Similar details could be found here: https://hyperledger.github.io/composer/latest/reference/cto_language
@mrudav.shukla thanks ,now the problem is inside the function how generate unique ID.
I try to use MD5 ,but it can not guarantee unique
Has joined the channel.
Hello, I'm new in `hyperledger-composer`, when I try to retrieve certificate for organization `composer identity request -c PeerAdmin\@hivelocitynetwork-agent -u admin -s adminpw -d agent`, I got this error `Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 140736418640832:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:../deps/openssl/openssl/ssl/s23_clnt.c:797:`, does anyone know how to solve that?
Hello, I'm new in `hyperledger-composer`, when I try to retrieve certificate for organization `composer identity request -c PeerAdmin\@mynetwork-agent -u admin -s adminpw -d agent`, I got this error `Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: write EPROTO 140736418640832:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:../deps/openssl/openssl/ssl/s23_clnt.c:797:`, does anyone know how to solve that?
[ ](https://chat.hyperledger.org/channel/composer?msg=oRu6KxgC42JwdSXbj) @nulee100 Ok. However, auto generating IDs using this way is not recommended. These IDs should be generated on the client side and then passed on to the composer. Reason: Different peers will execute this transaction processor function during the endorsement phase and there are least chances where all the peers calculates and reaches the same unique id. You might want to check out these threads on SO: https://stackoverflow.com/questions/47628303/auto-increment-field-in-composer and https://stackoverflow.com/questions/49144067/how-to-generate-new-id-in-hyperledger-composer-chaincode.
@mrudav.shukla :thumbsup:
thank you
composerDeployment
hi,i have generate 3000 port with admin card.i have 2 participent.how can i call each participent on the port 3000?shell i use where filter example where owner = participent1 ? or i can generate new port each participent(3001,3002) ? can you help me please?
hi,i have generate 3000 port with admin card.i have 2 participent.how can i call each participent on the port 3000?shell i use where filter example where owner = participent1 ? or i can generate new port each participent(3001,3002) ? can you help me please? other way, i can generate with api key : composer-rest-server -c admin@test -n never -y APIKEY -w true
[ ](https://chat.hyperledger.org/channel/composer?msg=siuitAkpPS2HuyyES) @Vigneshavm It is mandatory to pass sourceType and sourceName when creating the archive. Your sourceType would be _dir_ and sourceName would be the working directory containing package.json file. Go to the working directory and try: composer archive create --sourceType dir --sourceName .
[ ](https://chat.hyperledger.org/channel/composer?msg=dQekfnJQrWCyrKnkE) @abityildiz For this, you'll have to start your composer rest server in a multi-user mode. Reference: https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
How to reinstall the .bna without start the network from the beginning "composer network install -c PeerAdmin@fabric-network -a ./scm-network/scm-network@0.0.1.bna " ..
is this correct composer network upgrade -c peeradmin@hlfv1 -n NETWORK-NAME -V NETWORK-VERSION ?
[ ](https://chat.hyperledger.org/channel/composer?msg=zK5Ja2dfMyLSa4aES) @SilambarasanMadhappan Yes
fabric11@adc1:~/fabric-dev-servers/SCM_POC$ composer network upgrade -c PeerAdmin@fabric-network -n scm-network -V 0.0.2
Upgrading business network scm-network to version 0.0.2
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode (scm-network:0.0.2))
Command failed
fabric11@adc1:~/fabric-dev-servers/SCM_POC$
Am getting the above issue while i am upgrading ..
Could you please let me know where i am wrong ?
[ ](https://chat.hyperledger.org/channel/composer?msg=uid2t3uNkkpLgEABE) @SilambarasanMadhappan Can you check if your first chaincode container started successfully? I mean when you used composer network start ... initially, did your chaincode container spinup? You can check it using: docker ps -a.
@SilambarasanMadhappan before you can perform an upgrade, you need to install the new business network you plan to upgrade to onto the peers first. That error is telling you the peers cannot find the business network package to upgrade to
@SilambarasanMadhappan before you can perform an upgrade, you need to install the new business network you plan to upgrade to onto the peers first. That error is telling you the peers cannot find the business network package to upgrade to
see https://hyperledger.github.io/composer/latest/business-network/upgrading-bna
Has joined the channel.
ttps://github.com/hyperledger/composer/issues/4376
"Command succeeded" in CLI but actually not updated the blockchain
Have anyone encountered this problem?
Thanks in advance.
[ ](https://chat.hyperledger.org/channel/composer?msg=GaHGiHx7FfSsfzgmh) @jonlee300 From what you have described in the issue - I wonder if you have implemented ACLs that are preventing you seeing the data, and the historian records. Perhaps repeating your tests with a more permissive ACL would be a useful test.
[ ](https://chat.hyperledger.org/channel/composer?msg=KcC73eoFxYg5DLsTQ) @rthatcher I believe it's not related to ACLs issue since I tested the network using the same ACLs can function properly. I'll remove all ACL and upgrade the network and share the result.
[ ](https://chat.hyperledger.org/channel/composer?msg=5ETdvPzojMmYLrLCR) Please help us out
[ ](https://chat.hyperledger.org/channel/composer?msg=iwq26u9gGSx6hoH3v) @davidkel Thank you .
@jonlee300 it sounds like you're connecting via the web connector in playground - which won't reflect what you purportedly posted via the command line, at a guess. The best way to confirm this is to just use command line to add a participant / do a transaction ; then do a `composer network list` - or - use the REST explorer to connect (assuming its just a local dev environment?). Aown example of the command syntax (some of which you already know) is shown in 'Step Eighteen' (by way of example)
@jonlee300 it sounds like you're connecting via the web connector in playground - which won't reflect what you purportedly posted via the command line, at a guess. The best way to confirm this is to just use command line to add a participant / do a transaction ; then do a `composer network list` - or - use the REST explorer to connect (assuming its just a local dev environment?). Aown example of the command syntax (some of which you already know) is shown in 'Step Eighteen' (by way of example) -> https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org
@jonlee300 it sounds like you're connecting via the web connector in playground - which won't reflect what you purportedly posted via the command line, at a guess. The best way to confirm this is to just use command line to add a participant / do a transaction ; then do a `composer network list` - or - use the REST explorer to connect (assuming its just a local dev environment?). An example of the command syntax (some of which you already know) is shown in 'Step Eighteen' (by way of example) -> https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=9SS6CaK5xWofs22QP) @mahoney1 As indicated, I tried 4 methods. CLI, localhost:3000, playground and curl (from another server) to test the transaction.
`composer participant add --card admin@ebl -d '{ "$class": "tech.threehundredcubits.eBL.Shipper", "entityId": "LF", "entityName": "LF", "email": "lf@hingjlee.net", "address": { "$class": "tech.threehundredcubits.eBL.Address", "country": "HK" }}'
Participant was added to participant registry.
Command succeeded`
[ ](https://chat.hyperledger.org/channel/composer?msg=9SS6CaK5xWofs22QP) @mahoney1 As indicated, I tried 4 methods. CLI, localhost:3000, playground and curl (from another server) to test the transaction.
for example, I just perform adding participant and it returned "command succeeded" but actually it is not added.
`$ composer participant add --card admin@ebl -d '{ "$class": "tech.threehundredcubits.eBL.Shipper", "entityId": "LF", "entityName": "LF", "email": "lf@hingjlee.net", "address": { "$class": "tech.threehundredcubits.eBL.Address", "country": "HK" }}'
Participant was added to participant registry.
Command succeeded
$ composer identity issue -c admin@ebl -f alex@LF.card -u alex@LF -a "resource:tech.threehundredcubits.eBL.Shipper#LF"
Issue identity and create Network Card for: alex@LF
✖ Issuing identity. This may take a few seconds...
Error: Participant 'tech.threehundredcubits.eBL.Shipper#LF' does not exist
Command failed`
[ ](https://chat.hyperledger.org/channel/composer?msg=9SS6CaK5xWofs22QP) @mahoney1 As indicated, I tried 4 methods. CLI, localhost:3000, playground and curl (from another server) to test the transaction.
for example, I just perform adding participant and it returned "command succeeded" but actually it is not added.
`$ composer participant add --card admin@ebl -d '{ "$class": "tech.threehundredcubits.eBL.Shipper", "entityId": "LF", "entityName": "LF", "email": "lf@hingjlee.net", "address": { "$class": "tech.threehundredcubits.eBL.Address", "country": "HK" }}'
Participant was added to participant registry.
Command succeeded
$ composer identity issue -c admin@ebl -f alex@LF.card -u alex@LF -a "resource:tech.threehundredcubits.eBL.Shipper#LF"
Issue identity and create Network Card for: alex@LF
✖ Issuing identity. This may take a few seconds...
Error: Participant 'tech.threehundredcubits.eBL.Shipper#LF' does not exist
Command failed
`
[ ](https://chat.hyperledger.org/channel/composer?msg=XEtWysHgs6K274zkG) @anuj_27 Sorry for pointing out something you were already aware of :-) . This is more of a networking issue than a Composer issue, so I would suggest looking for a Docker Swarm forum.
card
@jonlee300 what does `composer network list -c admin@ebl` show - can you create a Stack Overflow, with the model - and - the ACLs you've implemented - also you can post what's contained in the connection.json for `admin@ebl` - have you got just the 'one' Fabric network, or working with multiple.
@jonlee300 I think the peer logs are going to be needed here
@jonlee300 I think the peer logs are going to be needed here to see if there is a failure for event delivery registration as well as whether the business network threw an error because of ACL processing or the Peer rejected the transaction when asked to commit
[ ](https://chat.hyperledger.org/channel/composer?msg=6AXDyFqg9p3MWFuy6) @rthatcher Thanks again, I do understand one thing though, that somehow we are not providing correct IPs to access the docker containers on other VMs. If you have accomplished something like that (ie. done a deployment around multiple Nodes with multiple peers ), and can provide us with an example it would be very helpful.
[ ](https://chat.hyperledger.org/channel/composer?msg=aBJdtGPHXrfJygp3A) @mahoney1 `$ composer card list -c admin@ebl
userName: admin
description:
businessNetworkName: ebl
identityId: e0a9fa8e2f812cb2e9401bb9af4befba7dfe36131260b9dc3d040008951b86cd
roles: none
connectionProfile:
name: hlfv1
x-type: hlfv1
credentials: Credentials set
Command succeeded
`
Has joined the channel.
composer-reset-server existing with Error: invalid status code: 19409 , any idea?
[ ](https://chat.hyperledger.org/channel/composer?msg=oQi4zSRf9mteg2KvQ) i used ./startFabric.sh from Composer fabric-dev-server script to create the fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=Kd96zghY5MTGe2dDJ) @davidkel Thank you. What exactly the error or keyword that I should look for since the log is over 40K lines long?
[ ](https://chat.hyperledger.org/channel/composer?msg=y2jJYB2dzFHgaj4Qe) I started the network using CLI command to create the admin card
composer network start --networkName ebl --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file admin@ebl.card
@jonlee300 I would suggest trying to tie the timestamp of the log entries that get generated for your request first, can't remember what the errors would be now, but it would be really useful to see what the peer thinks of a single complete request. The final entries would also show if the peer rejected any commit
[ ](https://chat.hyperledger.org/channel/composer?msg=mbjGaA3G9Nm3ochqr) @davidkel will follow your guidiance. thanks.
@mahoney1 @rthatcher when i try to deploy the bna file to a fabric network with six orgs(each org has one peer,one ca), the hardware is 4cpu and 16G memory
the networks start cmd failed with timeout error in most time.
i have tried to
1.modify timeout to 1200s
2,use the npmrcFile
but all dont change anything
i got some info about the dev-* images from the docker images\ps cmds:
1,sometimes four images are build and four docker ps is runing, sometimes there are five
only one time it is ok with six ps running and the network start cmd returns successfully.
2,sometimes the first two or four images build in two minutes, maybe the next one or two images build in almost 15 minutes
but the last one or two never build, the name is still random letters, and images is hyperledger/fabric-ccenv
What reason of this? only related to network speed? the cpu and the memory is already enough!!
what is difference between the dev-* images? why some ok,some failed?
can anybody say why composer-rest-server is existing with different error codes whenever i run npm start
@MuhammedHafil - please share more inputs on error code, that should help us to debug & provide solutions
@touchingsoil - Are you running all 6 Orgs on a single Machine? I assume that you are.
The network start command builds a new Docker Image for each Peer, which includes running npm install in each new Image. You said that on one occasion all 6 were built - so it does seem like a resource issue.
You can check the failures(and success!) of building the new containers by looking at the Peer logs for each of the containers and see where they fail.
You say that you are are using an npmrcFile - are you using this to work through a proxy or to connect to a local npm registry? If you are not using a local npm registry you could consider implementing something like verdaccio locally in a container that would reduce your network dependency, but it would likely increase local disk activity which might not help!
I assume that you are 'housekeeping' to remove old images and container from various tests.
Just for context, it is an unusual scenario running 6 Organisations on a single machine, possibly with a single disk (?), and possibly using Docker Community Edition (?), and also note that in production scenario, deploying or updating the Business Network definition (Smart Contract) is an infrequent activity.
@rthatcher Thanks for your reply: 1,i cant find error info from the peer log and the dev*_ log with docker logs cmd, there no error output, is there any hint? ccenv log seems like not ended without no error . the failed peer's log is almost the same as the okpeer's log
eg, the ruturn error is :
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to receive commit notification from localhost:9051 for transaction '3300742cf4ac0b268e4ed30b3209c89b539048379d3cd71ade932fcb2ff68994' within the timeout period
Command failed
2,i using npmrcFile with local verdaccio image, i surely see the cache of npm, but it doesnt promote the generation of images, so i leave it alone.
3,I assume that you are 'housekeeping' to remove old images and container from various tests.---a little confused about this sentence.
4,yes, 6 Ors on a single machine, possibly with a single disk . It is a server. docker Version: 18.06.1-ce ,it is installed by prereqs-ubuntu.sh
@rthatcher Thanks for your reply: 1,i cant find error info from the peer log and the dev*_ log with docker logs cmd, there no error output, is there any hint? ccenv log seems like not ended ,but without error . the failed peer's log is almost the same as the ok peer's log
eg, the ruturn error is :
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to receive commit notification from localhost:9051 for transaction '3300742cf4ac0b268e4ed30b3209c89b539048379d3cd71ade932fcb2ff68994' within the timeout period
Command failed
2,i using npmrcFile with local verdaccio image, i surely see the cache of npm, but it doesnt promote the generation of images, so i leave it alone.
3,I assume that you are 'housekeeping' to remove old images and container from various tests.---a little confused about this sentence.
4,yes, 6 Ors on a single machine, possibly with a single disk . It is a server. docker Version: 18.06.1-ce ,it is installed by prereqs-ubuntu.sh
@rthatcher Thanks for your reply: 1,i cant find error info from the peer log and the dev*_ log with docker logs cmd, there no error output, is there any hint? ccenv log seems like not ended ,but without error . the failed peer's log is almost the same as the ok peer's log
eg, the ruturn error is :
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to receive commit notification from localhost:9051 for transaction '3300742cf4ac0b268e4ed30b3209c89b539048379d3cd71ade932fcb2ff68994' within the timeout period
Command failed
2,i used npmrcFile with local verdaccio image, i surely see the cache of npm, but it doesnt promote the generation of images, so i leave it alone.
3,I assume that you are 'housekeeping' to remove old images and container from various tests.---a little confused about this sentence.
4,yes, 6 Ors on a single machine, possibly with a single disk . It is a server. docker Version: 18.06.1-ce ,it is installed by prereqs-ubuntu.sh
@rthatcher Thanks for your reply: 1,i cant find error info from the peer log and the dev*_ log with docker logs cmd, there no error output, is there any hint? ccenv log seems like not ended ,but without error . the failed peer's log is almost the same as the ok peer's log
eg, the ruturn error is :
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to receive commit notification from localhost:9051 for transaction '3300742cf4ac0b268e4ed30b3209c89b539048379d3cd71ade932fcb2ff68994' within the timeout period
Command failed
2,i used npmrcFile with local verdaccio image, i surely see the cache of npm, but it doesnt promote the generation of images, so i leave it alone.
3,I assume that you are 'housekeeping' to remove old images and container from various tests.---a little confused about this sentence.
4,yes, 6 Orgs on a single machine, with a single disk . It is a server. docker Version: 18.06.1-ce ,it is installed by prereqs-ubuntu.sh
log.txt
@jonlee300 I can't see a time skew issue in the log, but also I can't see in the log the peer receiving a block to commit.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=s778oSzkjd2Qnyr3E) @davidkel let me try again
I'm gonna be brave and ask a couple of silly questions here:
1- How can I run a market simulation using the composer. For example, let's say I want to use the Car Auction example and run it for 10000 iterations with random generated output and do some analytic work on the performance of the fabric etc. Where should I start from?
2- I’m currently using the playground (online and local). The terminology is a bit confusing for me. When we create participants in the composer, are we creating new organisations? peers? In general how can I have a better view of the underlaying Fabric and the roles, endorser etc. using the playground?
I'm gonna be brave and ask a couple of silly questions here:
1- How can I run a market simulation using the composer. For example, let's say I want to use the Car Auction example and run it for 10000 iterations with random generated input and do some analytic work on the performance of the fabric etc. Where should I start from?
2- I’m currently using the playground (online and local). The terminology is a bit confusing for me. When we create participants in the composer, are we creating new organisations? peers? In general how can I have a better view of the underlaying Fabric and the roles, endorser etc. using the playground?
[ ](https://chat.hyperledger.org/channel/composer?msg=XDC3yaLcLco7KAsCp) @nimaafraz 1- Have you seen Hyperledger Caliper for simulations?
2- Each Participant is just a Data Item - until you issue an Identity for that Participant. The Identity is issued from a CA that belongs to an Organisation, by an Existing Identity that has the rights to issue new identities.
Composer is built on top of Fabric as an abstraction level to simplify the Programming Model. You can find a introduction to Fabric and its terminology here: https://hyperledger-fabric.readthedocs.io/en/latest/key_concepts.html and a glossary of Composer terms here: https://hyperledger.github.io/composer/latest/reference/glossary.html
[ ](https://chat.hyperledger.org/channel/composer?msg=XDC3yaLcLco7KAsCp) @nimaafraz 1- Have you seen Hyperledger Caliper for simulations? https://github.com/hyperledger/caliper
2- Each Participant is just a Data Item - until you issue an Identity for that Participant. The Identity is issued from a CA that belongs to an Organisation, by an Existing Identity that has the rights to issue new identities.
Composer is built on top of Fabric as an abstraction level to simplify the Programming Model. You can find a introduction to Fabric and its terminology here: https://hyperledger-fabric.readthedocs.io/en/latest/key_concepts.html and a glossary of Composer terms here: https://hyperledger.github.io/composer/latest/reference/glossary.html
hi guys, do you know how to return an array of json? in my transaction processor i have @returns { String[] }, in the docs it only says that accept primitive types and resource types but no Json objects or undefined objects
i know that i can send an stringify version, but i have seen in the rest api returning objects, not the string
@juan.gzz.salz its as per the docs https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions, use stringify when returning results
@juan.gzz.salz its as per the docs on types: https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions, use stringify when returning results
Has joined the channel.
Hi guys, I'm using hyperledger to develop some blockchain POC's in my work, I did all the basics tutorials, but i'm still a bit confuses about the best practices to deploy a multi host network using composer, I already did it using only Fabric, but i couldn't find any thing about it using composer, can somebody just me point the right way? Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=2tpiBFyG4ysp4LmJc) @jfobrien29 Did you solve this problem? I'm stucked in this issue too. :-/
[ ](https://chat.hyperledger.org/channel/composer?msg=8gkhjdpPAaEWRGA8X) @rupa12 Did you solve this issue? I'm also stuck at this error. :-(
@joaquimpedrooliveira "it's supported by the community but no longer developed by IBM" and some of the issues on github are open since at least May
[ ](https://chat.hyperledger.org/channel/composer?msg=xrYSNuJjCWJfC7tNj) @greg2git By "did you solve this issue" I meant "did you find a solution for this problem"? Not related to issues being closed :)
Because I found in chat history that some folks suggested some actions, but I didn't see any return after that
no, i stopped trying to solve if there's no support
were you also being affected by this error? (`getaddrinfo EAI_AGAIN registry.npmjs.org:443`)
were you also being affected by this error? ( `getaddrinfo EAI_AGAIN registry.npmjs.org:443` )
@greg2git were you also being affected by this error? ( `getaddrinfo EAI_AGAIN registry.npmjs.org:443` )
@joaquimpedrooliveira no, you are further along, so i will probably never get to it
@joaquimpedrooliveira you can find loads of Q&A stuff here https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md including info about EAI_AGAIN (which means a DNS failure)
@mrudav.shukla : Yeah the chaincode is running on peer2 ... When I checked the logs for peer2 I see this :
```
Principal deserialization failure (the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "fabric-ca-server")) for identity
```
@joaquimpedrooliveira : Not yet .. still stuck .. I tried twisting the endorsement policy a bit but that didnt help either ...
i have seen that there is a TransactionRegistry,but is only accesible through client api, and in the transaction process there is a assetRegistry
@joaquimpedrooliveira O sorry .. I thought you are facing the same error as I am facing right now : `ENDORSEMENT_POLICY_FAILURE` .. I did solve the `EAI_AGAIN npm ERR!` ... All you need to do is create a dns file /etc/docker/daemon.json and put the following line to it:
```
{ "dns": ["your dns", "8.8.8.8"] }
```
Also check that the network mode for all the containers are the same.
Has joined the channel.
i am trying to build a blockchain using the tutorial guide. but when i try to copy & paste as instructed, i get an error about json. please advise.
i dont have coding experience. is there a support person that can walk me thru hyperledger composer for lending platform?
[ ](https://chat.hyperledger.org/channel/composer?msg=s778oSzkjd2Qnyr3E) @davidkel the full log is over 100M in size. and about 500k lines. I first found out the first transaction which might break the network. what keyword shall I focus on about the time skew issue you mentioned?
[ ](https://chat.hyperledger.org/channel/composer?msg=MKbmdMF8dwo3S2c8y) the most likely error word is "Noun does not match" and "Verb does not match"
`2018-09-12T11:18:40.871Z [1acb9e5f] DEBUG :AccessController :matchRule() Noun does not match
....
2018-09-12T11:18:40.874Z [1acb9e5f] DEBUG :AccessController :matchRule() Verb does not match
`
Let's assume there is some errors in the CTO, logic.js and permission.acl. Is it possible to crack down the whole fabric and making it showing "Command succeeded"?
Has joined the channel.
Hi everybody , I'm new in fabric composer,and I met problem in composer deployment. please check the problem.
https://stackoverflow.com/questions/52272253/using-hyperledger-composer-to-interact-with-hyperledger-fabricdistributed-fail/52305663#52305663
hai, how to find the cli logs, using docker logs cli cmd, but there is no output.. In th yaml, the cli env is set to - CORE_LOGGING_LEVEL=INFO, so where i can find the cli logs?
[ ](https://chat.hyperledger.org/channel/composer?msg=nNwaXdeqPH6qvNmm3) @touchingsoil @touchingsoil use the command 'docker logs -f cli'
Has joined the channel.
@tyhtao1990 yes, i used the same cmd as you give, but there is no output...
@tyhtao1990 yes, i used the same cmd as you give, but there is no output... cli:
container_name: cli
image: hyperledger/fabric-tools:$IMAGE_TAG
tty: true
stdin_open: true
environment:
- GOPATH=/opt/gopath
- GODEBUG=netdns=go
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
#- CORE_LOGGING_LEVEL=DEBUG
- CORE_LOGGING_LEVEL=INFO
- CORE_PEER_ID=cli
- CORE_PEER_ADDRESS=peer0.admin-xfb.xfb-chain.com:7051
- CORE_PEER_LOCALMSPID=admin-xfbMSP
- CORE_PEER_TLS_ENABLED=true
- CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/admin-xfb.xfb-chain.com/peers/peer0.admin-xfb.xfb-chain.com/tls/server.crt
- CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/admin-xfb.xfb-chain.com/peers/peer0.admin-xfb.xfb-chain.com/tls/server.key
- CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/admin-xfb.xfb-chain.com/peers/peer0.admin-xfb.xfb-chain.com/tls/ca.crt
- CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/admin-xfb.xfb-chain.com/users/Admin@admin-xfb.xfb-chain.com/msp
working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer
command: /bin/bash
volumes:
- /var/run/:/host/var/run/
- ./chaincode:/opt/gopath/src/github.com/chaincode/
- ./crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/
- ./scripts:/opt/gopath/src/github.com/hyperledger/fabric/peer/scripts/
- ./channel-artifacts:/opt/gopath/src/github.com/hyperledger/fabric/peer/channel-artifacts
depends_on:
Has joined the channel.
@touchingsoil the configuration tells container to output INFO logs, have change the configuration to DEBUG?
@touchingsoil the configuration tells container to output INFO logs, have you changed the configuration to DEBUG?
@tyhtao1990 I didn't change it to DEBUG, so it is the reason? In my option, set to INFO, DEBUG and INFO logs are both outputted.
@touchingsoil You can change to DEBUG mode, the logs you need may be can't output in INFO mode
Could anyone tel me, who calls the function define in transaction script (javascript) and how does it work? thanks in advance.
@jonlee300 you can filter the peer logs based on the short transaction id `1acb9e5f` to focus ob just that request. From your previous log I saw I didn't see a time skew problem so could be something else
@jonlee300 you can filter the peer logs based on the short transaction id `1acb9e5f` to focus on just that request. From your previous log I saw I didn't see a time skew problem so could be something else
@tyhtao1990 i change it to DEBUG, and enter the cli docker ps to ensure CORE_LOGGING_LEVEL is DEBUG., but still no output logs .... another question is where is the log about network start cmd executing?@davidkel
@davidkel when i start the network with error returns, where should i find the error logs except the console output?
I have a Composer REST Server running and issued the identity restadmin@mynetwork with the "-x true" option (which means that the restadmin@mynetwork identity is allowed to issue new identities himself). Here is the command to issue the identity for the restadmin user: ```composer participant add -c admin@mysuper-network -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"restadmin"}'
composer identity issue -c admin@mysuper-network -f ./fabric-scripts/hlfv12/composer/cards/REST/restadmin.card -u restadmin -a "resource:org.hyperledger.composer.system.NetworkAdmin#restadmin" -x true
``` However, when I try to issue a new identity using restadmin@mynetwork, I get the following error output ```$ composer identity issue -c restadmin@mynetwork -f fabric-scripts/hlfv12/composer/cards/user01.card -u user01 -a "resource:nl.mysuper.network.common.Users#user01"
Issue identity and create Network Card for: user01
× Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed
``` It looks to me that the `restadmin` identity is not able to issue new identities. How can I check if the `restadmin` identity actually has the permissions for issuing new identities?
I have a Composer REST Server running and issued the identity restadmin@mynetwork with the "-x true" option (which means that the restadmin@mynetwork identity is allowed to issue new identities himself). Here is the command to issue the identity for the restadmin user: ```composer participant add -c admin@mysuper-network -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"restadmin"}'
composer identity issue -c admin@mysuper-network -f ./fabric-scripts/hlfv12/composer/cards/REST/restadmin.card -u restadmin -a "resource:org.hyperledger.composer.system.NetworkAdmin#restadmin" -x true
``` However, when I try to issue a new identity using restadmin@mynetwork, I get the following error output ```$ composer identity issue -c restadmin@mynetwork -f fabric-scripts/hlfv12/composer/cards/user01.card -u user01 -a "resource:nl.mysuper.network.common.Users#user01"
Issue identity and create Network Card for: user01
× Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed``` It looks to me that the `restadmin` identity is not able to issue new identities. How can I check if the `restadmin` identity actually has the permissions for issuing new identities?
I have a Composer REST Server running and issued the identity restadmin@mynetwork with the "-x true" option (which means that the restadmin@mynetwork identity is allowed to issue new identities himself). Here is the command to issue the identity for the restadmin user: ```composer participant add -c admin@mysuper-network -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"restadmin"}'
composer identity issue -c admin@mysuper-network -f ./fabric-scripts/hlfv12/composer/cards/REST/restadmin.card -u restadmin -a "resource:org.hyperledger.composer.system.NetworkAdmin#restadmin" -x true
``` However, when I try to issue a new identity using restadmin@mynetwork, I get the following error output ``` $ composer identity issue -c restadmin@mynetwork -f fabric-scripts/hlfv12/composer/cards/user01.card -u user01 -a "resource:nl.mysuper.network.common.Users#user01"
Issue identity and create Network Card for: user01
× Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed``` It looks to me that the `restadmin` identity is not able to issue new identities. How can I check if the `restadmin` identity actually has the permissions for issuing new identities?
I have a Composer REST Server running and issued the identity restadmin@mynetwork with the "-x true" option (which means that the restadmin@mynetwork identity is allowed to issue new identities himself). Here is the command to issue the identity for the restadmin user: ```composer participant add -c admin@mysuper-network -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"restadmin"}'
composer identity issue -c admin@mysuper-network -f ./fabric-scripts/hlfv12/composer/cards/REST/restadmin.card -u restadmin -a "resource:org.hyperledger.composer.system.NetworkAdmin#restadmin" -x true
``` However, when I try to issue a new identity using restadmin@mynetwork, I get the following error output ```composer identity issue -c restadmin@mynetwork -f fabric-scripts/hlfv12/composer/cards/user01.card -u user01 -a "resource:nl.mysuper.network.common.Users#user01"
Issue identity and create Network Card for: user01
Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed``` It looks to me that the `restadmin` identity is not able to issue new identities. How can I check if the `restadmin` identity actually has the permissions for issuing new identities?
I have a Composer REST Server running and issued the identity restadmin@mynetwork with the "-x true" option (which means that the restadmin@mynetwork identity is allowed to issue new identities himself). Here is the command to issue the identity for the restadmin user: ```composer participant add -c admin@mysuper-network -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"restadmin"}'
composer identity issue -c admin@mysuper-network -f ./fabric-scripts/hlfv12/composer/cards/REST/restadmin.card -u restadmin -a "resource:org.hyperledger.composer.system.NetworkAdmin#restadmin" -x true
``` However, when I try to issue a new identity using restadmin@mynetwork, I get the following error output: ```composer identity issue -c restadmin@mynetwork -f fabric-scripts/hlfv12/composer/cards/user01.card -u user01 -a "resource:nl.mysuper.network.common.Users#user01"
Issue identity and create Network Card for: user01
Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed``` It looks to me that the `restadmin` identity is not able to issue new identities. How can I check if the `restadmin` identity actually has the permissions for issuing new identities?
I have a Composer REST Server running and issued the identity restadmin@mynetwork with the "-x true" option (which means that the restadmin@mynetwork identity is allowed to issue new identities himself). Here is the command to issue the identity for the restadmin user: ```composer participant add -c admin@mysuper-network -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"restadmin"}'
composer identity issue -c admin@mysuper-network -f ./fabric-scripts/hlfv12/composer/cards/REST/restadmin.card -u restadmin -a "resource:org.hyperledger.composer.system.NetworkAdmin#restadmin" -x true
``` However, when I try to issue a new identity using restadmin@mynetwork, I get the following error output: ```composer identity issue -c restadmin@mynetwork -f fabric-scripts/hlfv12/composer/cards/user01.card -u user01 -a "resource:nl.mysuper.network.common.Users#user01"
Issue identity and create Network Card for: user01
Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed
``` It looks to me that the `restadmin` identity is not able to issue new identities. How can I check if the `restadmin` identity actually has the permissions for issuing new identities?
I have a Composer REST Server running and issued the identity restadmin@mynetwork with the "-x true" option (which means that the restadmin@mynetwork identity is allowed to issue new identities himself). Here is the command to issue the identity for the restadmin user: ```composer participant add -c admin@mysuper-network -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"restadmin"}'
composer identity issue -c admin@mysuper-network -f ./fabric-scripts/hlfv12/composer/cards/REST/restadmin.card -u restadmin -a "resource:org.hyperledger.composer.system.NetworkAdmin#restadmin" -x true
``` However, when I try to issue a new identity using restadmin@mynetwork, I get the following error output:
```composer identity issue -c restadmin@mynetwork -f fabric-scripts/hlfv12/composer/cards/user01.card -u user01 -a "resource:nl.mysuper.network.common.Users#user01"
Issue identity and create Network Card for: user01
Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed
``` It looks to me that the `restadmin` identity is not able to issue new identities. How can I check if the `restadmin` identity actually has the permissions for issuing new identities?
I have a Composer REST Server running and issued the identity restadmin@mynetwork with the "-x true" option (which means that the restadmin@mynetwork identity is allowed to issue new identities himself). Here is the command to issue the identity for the restadmin user: ```composer participant add -c admin@mysuper-network -d '{"$class":"org.hyperledger.composer.system.NetworkAdmin", "participantId":"restadmin"}'
composer identity issue -c admin@mysuper-network -f ./fabric-scripts/hlfv12/composer/cards/REST/restadmin.card -u restadmin -a "resource:org.hyperledger.composer.system.NetworkAdmin#restadmin" -x true
``` However, when I try to issue a new identity using restadmin@mynetwork, I get the following error output:
```$ composer identity issue -c restadmin@mynetwork -f fabric-scripts/hlfv12/composer/cards/user01.card -u user01 -a "resource:nl.mysuper.network.common.Users#user01"
Issue identity and create Network Card for: user01
Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed
``` It looks to me that the `restadmin` identity is not able to issue new identities. How can I check if the `restadmin` identity actually has the permissions for issuing new identities?
@MarcelvandeKerkhof the difference is the top line has admin@mysuper-network ; the bottom is using a different network `restadmin@mynetwork` (one assumes you imported the restadmin.card and pinged the network / enroled the identity etc
@MarcelvandeKerkhof the difference is the top line has admin@mysuper-network ; the bottom is using a different network `restadmin@mynetwork` (..and...one assumes you imported the restadmin.card and pinged the network / enroled the identity etc etc)
@touchingsoil get the logs from the peer to see what's going on.
@lapdin_de_blockchain hi there, the docs explain the use of Transaction Processor functions -> https://hyperledger.github.io/composer/latest/reference/js_scripts - you can try out the sample networks https://github.com/hyperledger/composer-sample-networks/tree/master/packages (each of which have transaction functions you can try out) - you can even try these out in the online Composer playground https://composer-playground.mybluemix.net (you simply deploy a sample network) - or you can download (git clone) locally and play with them there.
@mahoney1 Apologies! For some reason (not even sure why exactly), I adjusted the network names in my message above. The admin user I am using is not admin@mysuper-network, but admin@mynetwork. So, the network names are the same.
@mahoney1 I did ping the network with the restadmin@mynetwork identity.
[ ](https://chat.hyperledger.org/channel/composer?msg=7ddCyZhw8K67di7Qb) @tyhtao1990 have responded on SO
@mahoney1 When I look at the logs of the CAs, I notice the following. When I use the admin@mynetwork identity to issue a new identity, I see the following lines appear in the logs: ```
2018/09/13 09:02:50 [DEBUG] Received request for /api/v1/register
2018/09/13 09:02:50 [DEBUG] Checking for revocation/expiration of certificate owned by 'admin'
2018/09/13 09:02:50 [DEBUG] DB: Get certificate by serial (28f69aa787b85efed4ab778f4809690b43210ca3) and aki (27a29d7532f57b23b0ab91cc6d71a1cd441e6042971005d1ef81449bef8959de)
2018/09/13 09:02:50 [DEBUG] DB: Getting identity admin
2018/09/13 09:02:50 [DEBUG] Successful token authentication of 'admin'
2018/09/13 09:02:50 [DEBUG] Received registration request from admin: { Name:user03 Type:client Secret:**** MaxEnrollments:1 Affiliation:org1 Attributes:[] CAName:ca.mynetwork.nl }
2018/09/13 09:02:50 [DEBUG] canRegister - Check to see if user 'admin' can register
2018/09/13 09:02:50 [DEBUG] Checking to see if caller 'admin' can act on type 'client'
2018/09/13 09:02:50 [DEBUG] Checking to see if caller 'admin' is a registrar
2018/09/13 09:02:50 [DEBUG] Validating affiliation: org1
2018/09/13 09:02:50 [DEBUG] Checking to see if affiliation 'org1' contains caller's affiliation ''
2018/09/13 09:02:50 [DEBUG] Caller has root affiliation
2018/09/13 09:02:50 [DEBUG] DB: Get affiliation org1
2018/09/13 09:02:50 [DEBUG] Registering user id: user03
2018/09/13 09:02:50 [DEBUG] Max enrollment value verification - User specified max enrollment: 1, CA max enrollment: -1
2018/09/13 09:02:50 [DEBUG] DB: Getting identity user03
2018/09/13 09:02:50 [DEBUG] DB: Add identity user03
2018/09/13 09:02:50 [DEBUG] Successfully added identity user03 to the database
2018/09/13 09:02:50 [INFO] 172.22.0.1:37844 POST /api/v1/register 201 0 "OK"
``` But when I use the restadmin@mynetwork identity, I see the following: ```
2018/09/13 09:05:09 [DEBUG] Received request for /api/v1/register
2018/09/13 09:05:09 [DEBUG] Received registration request from : { Name:user05 Type:client Secret:**** MaxEnrollments:1 Affiliation:org1 Attributes:[] CAName:ca.mynetwork.nl }
2018/09/13 09:05:09 [INFO] 172.22.0.1:37904 POST /api/v1/register 401 26 "Untrusted certificate: Failed to verify certificate: x509: certificate signed by unknown authority"
``` Notice that there is no name in the line `2018/09/13 09:05:09 [DEBUG] Received registration request from : { Name:user05 Type:client Secret:**** MaxEnrollments:1 Affiliation:org1 Attributes:[] CAName:ca.mynetwork.nl }` when using the restadmin@mynetwork identity? With the admin@mynetwork identity, there is the `admin` name... Why is that? When I look at the Identities in the REST Server UI, the restadmin identity has the name `restadmin` and the admin@mynetwork identity has the name `admin`...
@mahoney1 When I look at the logs of the CAs, I notice the following. When I use the admin@mynetwork identity to issue a new identity, I see the following lines appear in the logs: ```
2018/09/13 09:02:50 [DEBUG] Received request for /api/v1/register
2018/09/13 09:02:50 [DEBUG] Checking for revocation/expiration of certificate owned by 'admin'
2018/09/13 09:02:50 [DEBUG] DB: Get certificate by serial (28f69aa787b85efed4ab778f4809690b43210ca3) and aki (27a29d7532f57b23b0ab91cc6d71a1cd441e6042971005d1ef81449bef8959de)
2018/09/13 09:02:50 [DEBUG] DB: Getting identity admin
2018/09/13 09:02:50 [DEBUG] Successful token authentication of 'admin'
2018/09/13 09:02:50 [DEBUG] Received registration request from admin: { Name:user03 Type:client Secret:**** MaxEnrollments:1 Affiliation:org1 Attributes:[] CAName:ca.mynetwork.nl }
2018/09/13 09:02:50 [DEBUG] canRegister - Check to see if user 'admin' can register
2018/09/13 09:02:50 [DEBUG] Checking to see if caller 'admin' can act on type 'client'
2018/09/13 09:02:50 [DEBUG] Checking to see if caller 'admin' is a registrar
2018/09/13 09:02:50 [DEBUG] Validating affiliation: org1
2018/09/13 09:02:50 [DEBUG] Checking to see if affiliation 'org1' contains caller's affiliation ''
2018/09/13 09:02:50 [DEBUG] Caller has root affiliation
2018/09/13 09:02:50 [DEBUG] DB: Get affiliation org1
2018/09/13 09:02:50 [DEBUG] Registering user id: user03
2018/09/13 09:02:50 [DEBUG] Max enrollment value verification - User specified max enrollment: 1, CA max enrollment: -1
2018/09/13 09:02:50 [DEBUG] DB: Getting identity user03
2018/09/13 09:02:50 [DEBUG] DB: Add identity user03
2018/09/13 09:02:50 [DEBUG] Successfully added identity user03 to the database
2018/09/13 09:02:50 [INFO] 172.22.0.1:37844 POST /api/v1/register 201 0 "OK"
``` But when I use the restadmin@mynetwork identity, I see the following: ```
2018/09/13 09:05:09 [DEBUG] Received request for /api/v1/register
2018/09/13 09:05:09 [DEBUG] Received registration request from : { Name:user05 Type:client Secret:**** MaxEnrollments:1 Affiliation:org1 Attributes:[] CAName:ca.mynetwork.nl }
2018/09/13 09:05:09 [INFO] 172.22.0.1:37904 POST /api/v1/register 401 26 "Untrusted certificate: Failed to verify certificate: x509: certificate signed by unknown authority"
```
Notice that there is no name in the line `2018/09/13 09:05:09 [DEBUG] Received registration request from : { Name:user05 Type:client Secret:**** MaxEnrollments:1 Affiliation:org1 Attributes:[] CAName:ca.mynetwork.nl }` when using the restadmin@mynetwork identity? With the admin@mynetwork identity, there is the `admin` name... Why is that? When I look at the Identities in the REST Server UI, the restadmin identity has the name `restadmin` and the admin@mynetwork identity has the name `admin`...
@mahoney1 When I look at the logs of the CAs, I notice the following. When I use the admin@mynetwork identity to issue a new identity, I see the following lines appear in the logs: ```
2018/09/13 09:02:50 [DEBUG] Received request for /api/v1/register
2018/09/13 09:02:50 [DEBUG] Checking for revocation/expiration of certificate owned by 'admin'
2018/09/13 09:02:50 [DEBUG] DB: Get certificate by serial (28f69aa787b85efed4ab778f4809690b43210ca3) and aki (27a29d7532f57b23b0ab91cc6d71a1cd441e6042971005d1ef81449bef8959de)
2018/09/13 09:02:50 [DEBUG] DB: Getting identity admin
2018/09/13 09:02:50 [DEBUG] Successful token authentication of 'admin'
2018/09/13 09:02:50 [DEBUG] Received registration request from admin: { Name:user03 Type:client Secret:**** MaxEnrollments:1 Affiliation:org1 Attributes:[] CAName:ca.mynetwork.nl }
2018/09/13 09:02:50 [DEBUG] canRegister - Check to see if user 'admin' can register
2018/09/13 09:02:50 [DEBUG] Checking to see if caller 'admin' can act on type 'client'
2018/09/13 09:02:50 [DEBUG] Checking to see if caller 'admin' is a registrar
2018/09/13 09:02:50 [DEBUG] Validating affiliation: org1
2018/09/13 09:02:50 [DEBUG] Checking to see if affiliation 'org1' contains caller's affiliation ''
2018/09/13 09:02:50 [DEBUG] Caller has root affiliation
2018/09/13 09:02:50 [DEBUG] DB: Get affiliation org1
2018/09/13 09:02:50 [DEBUG] Registering user id: user03
2018/09/13 09:02:50 [DEBUG] Max enrollment value verification - User specified max enrollment: 1, CA max enrollment: -1
2018/09/13 09:02:50 [DEBUG] DB: Getting identity user03
2018/09/13 09:02:50 [DEBUG] DB: Add identity user03
2018/09/13 09:02:50 [DEBUG] Successfully added identity user03 to the database
2018/09/13 09:02:50 [INFO] 172.22.0.1:37844 POST /api/v1/register 201 0 "OK"
``` But when I use the restadmin@mynetwork identity, I see the following:
```
2018/09/13 09:05:09 [DEBUG] Received request for /api/v1/register
2018/09/13 09:05:09 [DEBUG] Received registration request from : { Name:user05 Type:client Secret:**** MaxEnrollments:1 Affiliation:org1 Attributes:[] CAName:ca.mynetwork.nl }
2018/09/13 09:05:09 [INFO] 172.22.0.1:37904 POST /api/v1/register 401 26 "Untrusted certificate: Failed to verify certificate: x509: certificate signed by unknown authority"
```
Notice that there is no name in the line `2018/09/13 09:05:09 [DEBUG] Received registration request from : { Name:user05 Type:client Secret:**** MaxEnrollments:1 Affiliation:org1 Attributes:[] CAName:ca.mynetwork.nl }` when using the restadmin@mynetwork identity? With the admin@mynetwork identity, there is the `admin` name... Why is that? When I look at the Identities in the REST Server UI, the restadmin identity has the name `restadmin` and the admin@mynetwork identity has the name `admin`...
@MarcelvandeKerkhof no indication whether you imported the restadmin .card, then ping the network using -c restadmin@mynetwork, (ie after the first issue)? Until you do, the second sequence would not work
@MarcelvandeKerkhof no indication whether you imported the restadmin .card, then ping the network using -c restadmin@mynetwork, (ie after the first issue)? Until you do, the second sequence would not work. Also not sure if you're following this tutorial https://hyperledger.github.io/composer/v0.19/tutorials/google_oauth2_rest where a persistent REST server docker instance is instantiated, and requires some changes to the connection.json to connect to it (if containerized)
[ ](https://chat.hyperledger.org/channel/composer?msg=3M75RNPj2bkNe87sh) @mahoney1 I did import the restadmin.card right after I issue the identity. It is in a script file. No issue there. I just checked the output of the import for the restadmin.card and it looks perfect.
@mahoney1 Yes, I followed the google_oauth2_rest tutorial and the rest server is running in a docker container. I also changed the connection.json file, so the `localhost` is replaced with the domainnames for all nodes.
@mahoney1 Looking in the REST Server UI, the `state` for both admin and restadmin is set to `ACTIVATED` and `participant` is set to resp. `resource:org.hyperledger.composer.system.NetworkAdmin#admin` and `resource:org.hyperledger.composer.system.NetworkAdmin#restadmin`
@MarcelvandeKerkhof the last message in your logfile is telling: 'signed by unknown authority' - would suggest to see the 3rd comment in this Stack Overflow (similar issue) -> https://stackoverflow.com/questions/48186336/getting-an-error-certificate-signed-by-unknown-authority and similar comments [here](https://github.com/onechain/fabric-explorer/issues/14#issuecomment-379555306)
@mahoney1 I am looking into the links you sent me. Tnx for that! But I am a bit confused. Why would it be working for the admin@mynetwork identity?
@mahoney1 hai,,i noticed the reason why sometime the dev* image cant be build.
i trace the ccenv log about building the dev* images
1, sometime, it is blocked as below, with no end
.......
> grpc@1.10.1 install /chaincode/output/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
2, sometime, it is with error, but finally return ok with costing a long time
.......
> grpc@1.10.1 install /chaincode/output/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
node-pre-gyp ERR! Pre-built binaries not installable for grpc@1.10.1 and node@8.9.4 (node-v57 ABI, glibc) (falling back to source compile with node-gyp)
node-pre-gyp ERR! Hit error connect ECONNREFUSED 172.217.160.112:443
make: Entering directory '/chaincode/output/node_modules/grpc/build'
.....
make: Leaving directory '/chaincode/output/node_modules/grpc/build'
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN xfbipchaintest@0.0.1 No repository field.
npm WARN The package composer-common is included as both a dev and production dependency.
added 293 packages in 614.433s
so how can i make it faster without compile the source code?
or anything can be done to reach 172.217.160.112:443?
@mahoney1 hai,,i noticed the reason why sometime the dev* image cant be build.
i trace the ccenv log about building the dev* images
1, sometime, it is blocked as below, with no end
.......
> grpc@1.10.1 install /chaincode/output/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
2, sometime, it is with error, but finally return ok with costing a long time
.......
> grpc@1.10.1 install /chaincode/output/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
node-pre-gyp ERR! Pre-built binaries not installable for grpc@1.10.1 and node@8.9.4 (node-v57 ABI, glibc) (falling back to source compile with node-gyp)
node-pre-gyp ERR! Hit error connect ECONNREFUSED 172.217.160.112:443
make: Entering directory '/chaincode/output/node_modules/grpc/build'
.....
make: Leaving directory '/chaincode/output/node_modules/grpc/build'
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN xfbipchaintest@0.0.1 No repository field.
npm WARN The package composer-common is included as both a dev and production dependency.
added 293 packages in 614.433s
so how can i make it faster without compile the source code?
or anything can be done to reach 172.217.160.112:443? or one image is build, other image can reuse its part of grpc?
@mahoney1 @davidkel hai,,i noticed the reason why sometime the dev* image cant be build.
i trace the ccenv log about building the dev* images
1, sometime, it is blocked as below, with no end
.......
> grpc@1.10.1 install /chaincode/output/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
2, sometime, it is with error, but finally return ok with costing a long time
.......
> grpc@1.10.1 install /chaincode/output/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
node-pre-gyp ERR! Pre-built binaries not installable for grpc@1.10.1 and node@8.9.4 (node-v57 ABI, glibc) (falling back to source compile with node-gyp)
node-pre-gyp ERR! Hit error connect ECONNREFUSED 172.217.160.112:443
make: Entering directory '/chaincode/output/node_modules/grpc/build'
.....
make: Leaving directory '/chaincode/output/node_modules/grpc/build'
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN xfbipchaintest@0.0.1 No repository field.
npm WARN The package composer-common is included as both a dev and production dependency.
added 293 packages in 614.433s
so how can i make it faster without compile the source code?
or anything can be done to reach 172.217.160.112:443? or one image is build, other image can reuse its part of grpc?
Whats the meaning of this error ```
Error: object type or attribute not a non-zero length string
```
@touchingsoil if you are looking to get logging from composer cli applications then take a look at
https://hyperledger.github.io/composer/latest/problems/diagnostics
All the composer commands are composer client apps so the principles described on this page are the same
FYI the Composer Community call is today at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community
@tahaf10 can you post your code, where you got the error? Means something is expecting a non-zero length string
```
/**
* @param {org.adverce.Publisher_Website_Add} tx
* @transaction
* This transaction is used to add Publisher Websites to the registry
*/
async function Publisher_Website_Add(tx) {
// Get the Clicks Registry
const websiteRegistry = await getAssetRegistry('org.adverce.Publisher_Website');
// Update the registry.
await websiteRegistry.add(tx.website);
}
```
```
asset Publisher_Website identified by websiteID {
o String websiteID
o String website_name
o String website_description
o String website_URL
--> Publisher publisher
}
```
```
transaction Publisher_Website_Add {
o Publisher_Website website
}
```
When creating asset without using transaction, directly from playground. it gets added.
But when through this Transaction, it gives this error ```
Error: Error trying invoke business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: transaction returned with failure: Error: object type or attribute not a non-zero length string
```
@tahaf10 the third line must contain the @transaction tag, so try ``` /**
* This transaction is used to add Publisher Websites to the registry
* @param {org.adverce.Publisher_Website_Add} tx
* @transaction
*/``` redeploy your network and try again - works for me
I'm using this format for all of my transactions and it's working fine. It's only this transaction that's making an issue.```
/**
* @param {org.adverce.Network_Add} tx
* @transaction
* This transaction is used to add new Networks
*/
```
Restarted fabric and redeployed the network, sent the following to transaction. Still same error
```
{
"$class": "org.adverce.Publisher_Website_Add",
"website": {
"$class": "org.adverce.Publisher_Website",
"websiteID": "2084",
"website_name": "Lorem exercitation consequat culpa aliquip.",
"website_description": "Id esse.",
"website_URL": "Eiusmod irure dolor culpa.",
"publisher": "resource:org.adverce.Publisher#2800"
}
}
```
Solved it
after deploying a network i had to change some chaincode logic. so i updated the chaincode removed composer folder , run stopfabric.sh and teardownfabric.sh ,started fabric,and created and deployed new network with latest changes. but the changes are not visible in api explorer?
what is the process if i want to update changes?
[ ](https://chat.hyperledger.org/channel/composer?msg=xdbmiuwdBdiFXGP27) @MuhammedHafil did you restart your api explorer?
yes
[ ](https://chat.hyperledger.org/channel/composer?msg=cMKvwM6MhZshP3WHe) @MuhammedHafil but what I understood is that you didn't update your chaincode. u changed the logic and then you removed the fabric network then you created a new one. if this right then your changes should be visible
[ ](https://chat.hyperledger.org/channel/composer?msg=xdbmiuwdBdiFXGP27) @MuhammedHafil The queries tutorial from "Step Three" shows how to do this without replacing the whole fabric: https://hyperledger.github.io/composer/latest/tutorials/queries
Is there any way we can use composer to deploy chaincodes for a chain on cello?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=zQY9iverQ9iZxxuGP) Any one can explain me, the easy way to add a new host to my network using composer? Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=fit3fNWEjj3YXYTad) @WilianSantos Have you seen the MultiOrg tutorial? It covers using Composer against a MultiOrg Fabric running on a single machine, so it may not be an exact match for what you want but should provide some useful information. https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
There is also a blog page other community members have found useful - but I think it does use an older version of Composer, so some care is required. https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
[ ](https://chat.hyperledger.org/channel/composer?msg=WzhYkWto4YTZ62aSd) @Ibraxos If you have developed your Business Network with Composer then it is the correct tool to deploy to the Fabric, if you have a chaincode that you have written using a Fabric SDK, then Composer can't help.
I first followed https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest and after that I followed Caroline Church's blog https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc. So, now I have an authenticated REST Server running on port 3000 and an unauthenticated REST Server running on port 3001 with the `restadmin` card. Everything is running as expected. In order to create a new participant, I make the following call from Git Bash (I am running on Windows 10): `composer participant add -c restadmin@mysuper-network -d '{"$class":"nl.mysuper.network.common.User","userName":"user01","firstName":"myFirstname","lastName":"myLastname"}'`. As you can see I am using the restadmin card (connection.json contains domainnames instead of localhost), but I get the following error `Error: Error trying to ping. Error: Failed to connect before the deadline`. When I change the domainnames in the connection.json file back to `localhost`, I am able to add the participant. I understand why we have to change the connection file to contain domainnames instead of localhost, but it is only working when starting up the REST Server (and I understand that too, because it is running within it's own network). Can somebody please shed some light on this for me? Should I keep changing the connection file or what?
I first followed https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest and after that I followed Caroline Church's blog https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc. So, now I have an authenticated REST Server running on port 3000 and an unauthenticated REST Server running on port 3001 with the `restadmin` card. Everything is running as expected. In order to create a new participant, I make the following call from Git Bash (I am running on Windows 10): `composer participant add -c restadmin@mysuper-network -d '{"$class":"nl.mysuper.network.common.User","userName":"user01","firstName":"myFirstname","lastName":"myLastname"}'`. As you can see I am using the restadmin card (connection.json contains domainnames instead of localhost), but I get the following error `Error: Error trying to ping. Error: Failed to connect before the deadline`. When I change the domainnames in the connection.json file back to `localhost`, I am able to add the participant. I understand why we have to change the connection file to contain domainnames instead of localhost, but it is only working when starting up the REST Server (and I understand that too, because it is running within it's own network). Can somebody please shed some light on this for me?
I first followed https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest and after that I followed Caroline Church's blog https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc. So, now I have an authenticated REST Server running on port 3000 and an unauthenticated REST Server running on port 3001 with the `restadmin` card. Everything is running as expected. In order to create a new participant, I make the following call from Git Bash (I am running on Windows 10): `composer participant add -c restadmin@mysuper-network -d '{"$class":"nl.mysuper.network.common.User","userName":"user01","firstName":"myFirstname","lastName":"myLastname"}'`. As you can see I am using the restadmin card (connection.json contains domainnames instead of localhost), but I get the following error `Error: Error trying to ping. Error: Failed to connect before the deadline`. Funny thing is that when I change the domainnames in the connection.json file back to `localhost`, I am able to add the participant from Git Bash. I understand why we have to change the connection file to contain domainnames instead of localhost, but it is only working when starting up the REST Server (and I understand that too, because it is running within it's own network). Can somebody please shed some light on this for me?
[ ](https://chat.hyperledger.org/channel/composer?msg=fwfPy2JCBftpYHQZW) @rthatcher Thanks for the answer, I already did the MultOrg tutorial, and read the https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/, but i was in doubt if this is the right way of do it, so if it is i will follow on this way! Thanks!!
Has joined the channel.
FYI the Composer Community call is in 25mins at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community
[ ](https://chat.hyperledger.org/channel/composer?msg=YLhKCpLRmq745DrTA) @davidkel I couldn't figure out anything from the log.
however, I tried further deploying an extra network but the following error appeared.
`
Error: Error trying to ping. Error: make sure the chaincode basic-sample-network has been successfully instantiated and try again: getccdata composerchannel/basic-sample-network responded with error: could not find chaincode with name 'basic-sample-network'
`
i can still access my network but of course the behavior is the same that nothing can be updated. it looks like the fabric network has been crashed due to certain function I triggered in between.
Hi. I read the OAUTH2.0 tutorial (https://hyperledger.github.io/composer/v0.19/tutorials/google_oauth2_rest) and I am confused.
During the process we create two Traders participants and use Google for authentication. After login as a random Google user we import the BNC (business network card) of one Trader and a BNC of another Trader. There is no link between a Google user and any of those traders. In addition as an authenticated user I can interact with the network on a behalf of any of the participants. I would imagine there should be a link between a Google user and a participants and for me an authenticated user should only be able to act on behalf of one participant.
Am I missing something?
Hello. I am trying to import card in composer - const importCard = adminConnection.importCard(cardName, cardData); But it returns false. What might be the issue. I am providing proper 'metadata' and 'connection profile' in cardData. Thanks in advance
@jonlee300 I went back through your original log and cannot see anything coming from the orderer to commit to the blockchain. So I don't know what is going on there. You could try running client trace to see what the client thinks is going on, but it could be a problem with the orderer. To get client trace you need to export a couple of env vars then run the cli command again and capture the output
```
export DEBUG=composer[debug]:HLFConnectionManager
export COMPOSER_LOG_CONSOLE=debug
```
@marosoft its client authentication (as opposed to user authentication, using a different auth strategy than Google OAUTH2) - The resource owner is the Google+ API user account you set up in the tutorial (described in the appendix) - its role is to grant consent (or otherwise) to the client application, so users of that client application don't have to auth each time. The idea is that, when a web application user (consuming REST APIs (via the client, to access a business network) comes along, he/she doesn't have to pre-register anything ; the application user is granted consent by virtue of the configured client application. An alternative might be LDAP user authentication, JWT auth etc.
@rahul703 has it already been imported / does it already exist in the wallet? Is it the first time you've tried the import? FYI there are code examples here as a reference point -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#cardapis and [also here](https://medium.com/@aniketengg/hyperledger-composer-issue-identity-import-card-7e07af378447)
It was imported already, i deleted the card in .composer/cards and then tried to import again. It get imported too in card folder, but importCard.then resolves to false
if we dont use - const idCardName: string = await BusinessNetworkCardStore.getDefaultCardName(idCardData); Can we choose a card name(string)?
[ ](https://chat.hyperledger.org/channel/composer?msg=wz5rAY2bLb7wPFQBQ) @mahoney1 I would imagine this. By using Google AUTH2 we delegate the authentication service to Google which means we do not have to create our own.
When you log in the first time by using your Google account you can link the Google account with the Participant by importing it into the wallet (the Participant could be created during the first login or linked when the user data match). So the next time you come back you can interact with the network as that Participant.
When another user comes they should use their own Google account and link it with their own Participant resource and import the card to the wallet (or dynamically created). The next time they come along they can interact with the network as that Participant.
@mahoney1 thanks. I got it
[ ](https://chat.hyperledger.org/channel/composer?msg=tmGf62kzJXuChkYLh) After checking the GitHub issue describing the original feature I can see that my assumptions are correct: https://github.com/hyperledger/composer/issues/142
One thing that looked odd to me in the tutorial was that one Google ID was linked with multiple identities on the Hyperledger Fabric side.
I presume when you are logged in using your Google ID and you have a linked identity in HF you will only be able to retrieve the wallet(s) associated with that account.
Hi I'm current doing a multi user rest-api.
I wan't to automate the process of: creating a participant + creating a card for that participant + added that card to the wallet of any new users connecting to the system.
I know how to create the participant + creating a card for that participant - but is it possible to "admin add" the card to the newly connected users wallet ?
Hi I'm current doing a multi user rest-api.
I wan't to automate the process of: creating a participant + creating a card for that participant + add that card to the wallet of any new users connecting to the system.
I know how to create the participant + creating a card for that participant - but is it possible to "admin add" the card to the newly connected users wallet ?
[ ](https://chat.hyperledger.org/channel/composer?msg=R7N5RdnP9yXE7o6RA) @marosoft I assume this might be related to your question as well - My situation is: I can login via a third party auth, but where do i generate my participant for this user after he is logged in? My users should not by themself create participants + create card + uploade this card, since they are end-users with no idea of the system underneath. I want to automate this process.
Hello. I am facing an error - ""Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]] "".
I have :
1. Created a new participant.
2. Issued identity and got userID and enrollment secret.
3. Imported ID card for the same identity, connected and pinged the network using the card name.```
I am getting the ping result for the first time, right after I have imported the card. But when I tried to connect the network using the same ID card name. I get the above error. Any help would be appreciated. thanks.
```
Hello. I am facing an error - ""Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]] "".
I have :
1. Created a new participant.
2. Issued identity and got userID and enrollment secret.
3. Imported ID card for the same identity, connected and pinged the network using the card name.```
I am getting the ping result for the first time, right after I have imported the card. But when I tried to connect the network second time using the same ID card name. I get the above error. Any help would be appreciated. thanks.
```
@mahoney1 I found the Official explanation. the link is https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues
@mahoney1 I found the Official explanation. the link is https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues. But after I followed the suggestion, the TIMEOUT_REQUEST problem still can show up sometimes
@mahoney1 @davidkel hai,,Please give some advice -------- i noticed the reason why sometime the dev* image cant be build.
i trace the ccenv log about building the dev* images
1, sometime, it is blocked as below, with no end
.......
> grpc@1.10.1 install /chaincode/output/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
2, sometime, it is with error, but finally return ok with costing a long time
.......
> grpc@1.10.1 install /chaincode/output/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
node-pre-gyp ERR! Pre-built binaries not installable for grpc@1.10.1 and node@8.9.4 (node-v57 ABI, glibc) (falling back to source compile with node-gyp)
node-pre-gyp ERR! Hit error connect ECONNREFUSED 172.217.160.112:443
make: Entering directory '/chaincode/output/node_modules/grpc/build'
.....
make: Leaving directory '/chaincode/output/node_modules/grpc/build'
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN xfbipchaintest@0.0.1 No repository field.
npm WARN The package composer-common is included as both a dev and production dependency.
added 293 packages in 614.433s
so how can i make it faster without compile the source code?
or anything can be done to reach 172.217.160.112:443? or one image is build, other image can reuse its part of grpc?may i change the path from which ccenv try to get grpc Pre-built binaries with some customized para?
why it is blocked? can i change its timeout time?
@rahul703 I have the same problem before, Can you delete the card and import again and check the logs in peers? there might be something important infomation
Can someone explain what the following error means when starting rest-server with never use namespaces ```
Error: Found multiple type definitions for Network, must fully qualify type name
at ensureConnected.then (/root/.nvm/versions/node/v8.11.4/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:1364:31)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=y7BBteXLY2Ebt4GtR) The issue I have is that the whole fabric meltdown and even I tried to upgrade the network to a version without "permissions.acl" to narrow down the possibility of the issue from ACL. I therefore built another instance from scratch and try to recreate the scene. In building the new instance, I deployed in addition to the original network, I also deployed 1 very basic network without ACL and the original network without ACL control. I then did transactions in basic network and it worked out fine. After that, I did transactions in original network (without ACL) and it still crashed whole fabric. I haven't even tried to do transaction in the original network with ACL in place to recreate the scene.
From a theoretical perspective, I move from Ethereum to Hyperledger recently. One thing Ethereum has incorporated is that each smart contract is isolated and can never bring down the network no matter how messy the code is. The introduction of GAS will limit one user to bring down the whole network. It is very good that Hyperledger Composer let users to use Javascript (instead of using Solidity) to create smart contract. However, if a poorly written code can bring down a whole network, that is a topic needed to be thought-through.
I am still struggling on why can I bring down the whole network.
@jonlee300 It's highly unlikely the business network brought down fabric. More likely it was a resource or environment problem in your environment. Business networks run in an isolated environment
[ ](https://chat.hyperledger.org/channel/composer?msg=ozCfLBxwCvcD4XTCo) @tahaf10 I would think that you have more than one .cto model file in your BNA with more than one namespace, and that there is a duplicate Participant or Asset between the files, so you need to include the namespace in the rest server to uniquely identify them.
I have implemented Google Authentication in my Angular Web app and I am trying to issue a new identity after the Google Signin, but keep getting the error `fabric-ca request register failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]`. Which card is being used to issue the identity? And how can I use a different card, for instance a Network Admin card?
[ ](https://chat.hyperledger.org/channel/composer?msg=dWxyWquXMdARMFmr8) @rahul703 This enrollment error is usually seen when a .card file is re-imported, or imported into a different environment or into the REST server.
When an Identity is issued (and the card created) a one-time secret is included in the card. When the card is first used to connect to the Network the one-time secret is used to Enrol the Identity and retrieve the credentials (keys/certificates). After that the secret is invalid and the credentials must be used - so the error can arise if the original .card file is is used again. The trick is to export the card to a new.card file after the first use, which creates a new .card file including the credentials.
There are more details on cards in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#bizcards
FYI - @tyhtao1990
[ ](https://chat.hyperledger.org/channel/composer?msg=nuQMFjEoieocyuzrK) @MarcelvandeKerkhof The initial Network Admin card has the rights to create other identities. The default for new identities is not to have this right - but you can specify it.
On the command line `composer identity issue --issuer true` https://hyperledger.github.io/composer/latest/reference/composer.identity.issue.html
On the Rest Server by including it in the JSON of the POST request:
`{"participant":"...", "myIDfield":"...",options{"issuer":true}}`
[ ](https://chat.hyperledger.org/channel/composer?msg=nuQMFjEoieocyuzrK) @MarcelvandeKerkhof The initial Network Admin card has the rights to create other identities. The default for new identities is not to have this right - but you can specify it.
On the command line `composer identity issue --issuer true ...` https://hyperledger.github.io/composer/latest/reference/composer.identity.issue.html
On the Rest Server by including it in the JSON of the POST request:
`{"participant":"...", "myIDfield":"...",options{"issuer":true}}`
[ ](https://chat.hyperledger.org/channel/composer?msg=pqZcJzGfSPaxyNoXD) @rasmusmilz This article describes the process of creating the participant dynamically:
https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
[ ](https://chat.hyperledger.org/channel/composer?msg=KgTCYJLqqvQtmCFRP) @rthatcher Thanks for the explanation.
Has joined the channel.
Hi everyone. Anyone can explain me how can I change the ownership of an asset between to participants??. In my case, I have two "Wine_producer "s and one "Regulator" in my hyperledger composer and I want that the Regulator, that is the owner of a certificate can give the ownership of this certificate to one of the members but when I try to make it I get an error like "t: Instance com.biz.Certificate#8640 has property owner with type com.biz.Wine_producer that is not derived from com.biz.Regulator"
@rthatcher I think I have not explained my issue very well, but your reply is helpful in other situations. Thanks for that. Here is (hopefully) a better explanation of my issue: I have created a restadmin@mysuper-network identity and used the `-x true` flag during the `composer identity issue` command for the restadmin identity. In the docker-compose.yml file, I have stated `COMPOSER_CARD=restadmin@mysuper-network`. My questions are:
1. In my Angular web app (which was generated using `yo`), how do I know which card is being used to handle requests to the REST Server? Is that the card which was defined in the `COMPOSER_CARD` parameter while starting the REST Server?
2. When I use the restadmin card in the command line, I can create a participant, but get the error I described earlier when I run the `composer identity issue` command. I get the same error when I try to issue an identity from the Angular Web App.
3. Is it possible in the Angular Web App to use a specific card (e.g. a Network Admin card that CAN issue identities) to perform an action against the REST Server? Can I pass a card in the request header or something like that?
@rthatcher I think I have not explained my issue very well, but your reply is helpful in other situations. Thanks for that. Here is (hopefully) a better explanation of my issue: I have created a restadmin@mysuper-network identity and used the `-x true` flag during the `composer identity issue` command for this identity. In the docker-compose.yml file, I have stated `COMPOSER_CARD=restadmin@mysuper-network` to pass into my REST Server. My questions are:
1. In my Angular web app (which was generated using `yo`), how do I know which card is being used to handle requests to the REST Server? Is that the card which was defined in the `COMPOSER_CARD` parameter while starting the REST Server?
2. When I use the restadmin card in the command line, I can create a participant, but get the error I described earlier when I run the `composer identity issue` command. I get the same error when I try to issue an identity from the Angular Web App.
3. Is it possible in the Angular Web App to use a specific card (e.g. a Network Admin card that CAN issue identities) to perform an action against the REST Server? Can I pass a card in the request header or something like that?
@MarcelvandeKerkhof - When you start the REST server in Single User mode (which is the default) then all the activity on the REST server is through the Card (Identity) that started the REST server. If you use Multi-user it also enforces Authentication, and in this case the Card that is imported into the Wallet for the authenticated user is used.
I think the App in this Blog post uses Angular and the REST server: https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
@touchingsoil are you behind a corporate proxy? Is it a localhost environment or using docker swarm or other networking.
@Jonan 1 suggest to create a [Stack Overflow](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#issue) for your coding issue - the [trade-network sample network](https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network/lib) has an example of ownership transfer (of a commodity) in the JS file from that link.
@Jonan 1 suggest to create a [Stack Overflow](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#issue) for your coding issue - the [trade-network sample network](https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network/lib) has an example of ownership transfer (of a commodity) in the JS file from that link.
@rthatcher I have indeed followed this exact Blog from Caroline Church. It's a good blog! To create a new participant and issue a new identity (using the restadmin identity which should have the Issuer role) I am connecting to the Single User REST Server. So, IMHO I have done everything right, but still cannot issue an identity using the restadmin identity... I am trying to get this going for a few days now and I am starting to question my sanity... ;-) So, my question remains, why do I get this `fabric-ca request register failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]` error?
@rthatcher Is it somehow possible to check if the restadmin identity has the Issuer role? Just to be sure...
@mahoney1 In a corporate network, but there is no proxy,as i know, i also tried a cloud server, it has the same question. All i use is localhost environment. btw, i am in china..
@mahoney1 In a corporate network, but there is no proxy,as i know, i also tried a cloud server, it has the same question. All i use is localhost environment. btw, i am in china.. My question is:
1,Why it is blocked? Just reason for network?
2,If the network question cant be resolved, is there methods for: A, blocked for a certain time at most B, leading the ccenv to get the binary file from other url or local place,eg using npmrcfile?
@mahoney1 In a corporate network, but there is no proxy,as i know, i also tried a cloud server, it has the same question. All i use is localhost environment. btw, i am in china.. My question is:
1,Why it is blocked? Just reason for network?
2,If the network question cant be resolved, is there methods for: A, blocked for a certain time at most B, leading the ccenv to get the binary file from other url or local place,eg using npmrcfile?
the successful message should be:
> grpc@1.10.1 install /chaincode/output/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
[grpc] Success: "/chaincode/output/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node" is installed via remote
[ ](https://chat.hyperledger.org/channel/composer?msg=6ge3CJ527kjLzmp7g) @MarcelvandeKerkhof I think that to check the Issuer right you would have to use the fabric-ca client - which is not difficult, but not simple either.
Some easy things to try - look at the logs of the docker container for the CA which might give more detail of the error - confirming the lack of the rights. You could also try creating a new ID (restadmin2 ?) with the original Network Admin making sure to include the `--issuer true` ( !! ) and see if that one works?
[ ](https://chat.hyperledger.org/channel/composer?msg=X3Je9D67fwjeW8WCy) @davidkel my environment is established from here without any modificiation.
/home/ubuntu/.nvm/versions/node/v8.11.4/lib
├── composer-cli@0.20.0
├── composer-playground@0.20.0
├── composer-rest-server@0.20.0
├── generator-hyperledger-composer@0.20.0
├── npm@6.4.0
├── passport-google-oauth2@0.1.6
└── yo@2.0.5
https://hyperledger.github.io/composer/latest/installing/installing-index
[ ](https://chat.hyperledger.org/channel/composer?msg=X3Je9D67fwjeW8WCy) @davidkel my environment is established from here without any modificiation.
https://hyperledger.github.io/composer/latest/installing/installing-index
/home/ubuntu/.nvm/versions/node/v8.11.4/lib
├── composer-cli@0.20.0
├── composer-playground@0.20.0
├── composer-rest-server@0.20.0
├── generator-hyperledger-composer@0.20.0
├── npm@6.4.0
├── passport-google-oauth2@0.1.6
└── yo@2.0.5
@jonlee300 Composer isn't the Ledger implementation, Composer utilises hyperledger fabric as the ledger technology. The hyperledger fabric in our tutorials (fabric-dev-servers) are simple setups for development and testing but still require system resources to run. Fabric runs chaincode (and thus the business network) in a separate isolated container. The running of the business network would not have caused problems for the whole fabric. More likely it is a problem due to your environment (maybe lack of system resources) that is causing the fabric network issues.
@touchingsoil yes, npmrcFile to route an npm registry, define http proxy if need be, to route through to the npm registry or indeed the internet etc. In this case, the issue seems to be gprc related (getting the binaries from Google). For chaincode container build timeout, yes, see REQUEST_TIMEOUT section (scroll down) of the knowledge wiki -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues - and more [info here](https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer) you could increase the value.
@mahoney1, i have read the two links , and changed the settings, but it is a little unrelated to the grpc issue. I tried to usedthe npmrc for registry, but i dont know how to redirect the internet in the npmrc file to get the binary file from other url or local place.
@mahoney1, i have read the two links , and changed the settings, but it is a little unrelated to the grpc issue. I tried to use the npmrc for registry, but i dont know how to redirect the internet in the npmrc file to get the binary file from other url or local place.
Hello - Has anyone any resources for off chain storage options for Hyperledger Fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=QtZR9Y7NccmMmfEa9) @marosoft Thank you, that answers my question very well.
Do you know if there is a way to get the userId (collectorId), to create the participant with ? I want to do this behind the scenes in the frontend, and it would be nice if i could use the "wallet-id" (the id used to mapping wallet to a authenticated user), as the participant-id or part of it to avoid collisions of frontend generated id's.
A way would be to make a request to the mongo db with the current token and find the id created for this user, but I could imaging there would be a simpler solution.
@rthatcher After your tip to create a second restadmin identity and test that one, it worked. After some investigation, I noticed that the `client->organization` setting in the connection.json file for the restadmin identity was set to the wrong organization (I have a multi org network). After changing this setting and restarting the network, I can issue a new identity using the restadmin identity in the command line, but I still cannot issue a new identity using the Angular Web App... :-( Not sure what is wrong. Btw, when I am using the restadmin identity over the command line, I need to change the connection.json file to use `localhost` again instead of the domainnames. Is that normal? And what connection should I use from the Angular Web App? localhost or domainnames?
@rthatcher After your tip to create a second restadmin identity and test that one, it worked. After some investigation, I noticed that the `client->organization` setting in the connection.json file for the restadmin identity was set to the wrong organization (I have a multi org network). After changing this setting and restarting the network, I can issue a new identity using the restadmin identity in the command line, but I still cannot issue a new identity using the Angular Web App. Still get the same error as before... :-( Not sure what is wrong. Btw, when I am using the restadmin identity over the command line, I need to change the connection.json file to use `localhost` again instead of the domainnames. Is that normal? And what connection should I use from the Angular Web App? localhost or domainnames?
what is the post data which i should pass to Earnpoints transaction as described here https://github.com/IBM/customer-loyalty-program/blob/master/lib/logic.js https://github.com/IBM/customer-loyalty-program/blob/master/models/org.clp.biznet.cto
what is the post data which i should pass to Earnpoints transaction for described here https://github.com/IBM/customer-loyalty-program/blob/master/lib/logic.js https://github.com/IBM/customer-loyalty-program/blob/master/models/org.clp.biznet.cto
In https://github.com/IBM/customer-loyalty-program/blob/master/web-app/public/scripts/member.js they are senting
` var inputData = '{' + '"accountnumber" : "' + formAccountNum + '", ' + '"cardid" : "' + formCardId + '"}';
`
which does not make any sense to me, also in composer api explorer i'am not able to make successful transaction after sending data in any format
`{
"$class" : "org.lpm.biznet.EarnPoints",
"member" : {"$class": "org.lpm.biznet.Member","accountNumber": "1", "firstName": "1", "lastName": "test", "phoneNumber": "1", "email": "1@test.com", "points": 0, "status": "active"},
"partner" : { "$class": "org.lpm.biznet.Partner", "id": "1", "name": "Kula", "totalPointsSupply": 100000 },
"points" : 10
}`
I tried this load
anybody?
iam getting this error
"message": "Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration {name=partner, type=org.lpm.biznet.Partner, array=false, optional=false}",
[ ](https://chat.hyperledger.org/channel/composer?msg=pA7KAe25PgpAp2Qgk) @MuhammedHafil I just created a Member `1234` and a Partner `p01` . and I was able to submit the transaction with this JSON:
```
{
"$class": "org.clp.biznet.EarnPoints",
"points": 20,
"partner": "resource:org.clp.biznet.Partner#p01",
"member": "resource:org.clp.biznet.Member#1234"
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=pA7KAe25PgpAp2Qgk) @MuhammedHafil I just created a Member `1234` and a Partner `p01` and then I was able to submit the transaction with this JSON:
```
{
"$class": "org.clp.biznet.EarnPoints",
"points": 20,
"partner": "resource:org.clp.biznet.Partner#p01",
"member": "resource:org.clp.biznet.Member#1234"
}
```
Thank you
@touchingsoil for npmrc see https://stackoverflow.com/questions/35775058/node-js-econnrefused-when-trying-to-install-packages and for grpc binaries location see [this link](https://www.npmjs.com/package/grpc) for more info. Otherwise raise a Stack overflow and explain the background, adding the tag grpc
Hello, Please have a look at the snippet below:```
let assetOwner = await factory.newResource('network.org.assetManagementAndValuation', 'assetOwner', ownerEmail); //ownerEmail will be provided as ownerID
assetOwner.name = ownerName;
assetOwner.location = ownerLocation
assetOwner.email = ownerEmail
let ownerRegistry = await bizNetworkConnection.getParticipantRegistry('network.org.assetManagementAndValuation.assetOwner');
await ownerRegistry.add(assetOwner).then(function(res){
console.log("res",res)
})
```
Hello, Please have a look at the snippet below:```
let assetOwner = await factory.newResource('network.org.assetManagement', 'assetOwner', ownerEmail); //ownerEmail will be provided as ownerID
assetOwner.name = ownerName;
assetOwner.location = ownerLocation
assetOwner.email = ownerEmail
let ownerRegistry = await bizNetworkConnection.getParticipantRegistry('network.org.assetManagement.assetOwner');
await ownerRegistry.add(assetOwner).then(function(res){
console.log("res",res)
})
```
The owner participant is not getting added to the participant registry.
The owner participant is not getting added to the participant registry. What can be the issue, as it was running fine previously.
@rahul703 just use `let assetOwner = factory.newResource('xxx'); See also notes at the bottom [in this link](https://javascript.info/async-await) on using async/await.
@rahul703 just use `let assetOwner = factory.newResource('xxx');` example [network here](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L139) See also notes at the bottom [in this link](https://javascript.info/async-await) on using async/await.
@rahul703 just use `let assetOwner = factory.newResource('xxx');` example [transaction here](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L139) See also notes at the bottom [in this link](https://javascript.info/async-await) on using async/await.
@rahul703 just use `let assetOwner = factory.newResource('xxx');` example [code here](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/fund-clearing-network/test/clearing_fv.js#L45) See also notes at the bottom [in this link](https://javascript.info/async-await) on using async/await.
thanks @mahoney1
@mahoney1 Hi Paul, Referring to https://github.com/hyperledger/composer/issues/3055#issuecomment-421301796. So with that solution, there will be no tight has-a relationship between the employee and the corporate, right? Though, while creating employee, I'll be using getIdentifier() on corporate to see if it exists. And I actually need to keep Corporate as a participant in the network. But still, I believe, it will work for my scenario.
Hello @mahoney1 , Please have a look at the code below ```
let businessNetworkDefinition = bizNetworkConnection.connect('admin@*******');
businessNetworkDefinition.then(function(businessNetworkDefinitionRes){
let factory = businessNetworkDefinitionRes.getFactory();
let ownerRegistry = bizNetworkConnection.getParticipantRegistry('network.org.**********.assetOwner');
ownerRegistry.then(function(ownerRegistryRes){
let assetOwner = factory.newResource('****************', 'assetOwner', ownerEmail); //ownerEmail will be provided as ownerID
assetOwner.name = ownerName;
ownerRegistryRes.add(assetOwner).then(function(res){
console.log("res",assetOwner)
})
})
})
})
```
The owner participant addition is still not working. Please suggest where is might have gone wrong. Thanks
Hello @mahoney1 , Please have a look at the code below ```
let businessNetworkDefinition = bizNetworkConnection.connect('admin@*******');
businessNetworkDefinition.then(function(businessNetworkDefinitionRes){
let factory = businessNetworkDefinitionRes.getFactory();
let ownerRegistry = bizNetworkConnection.getParticipantRegistry('network.org.**********.assetOwner');
ownerRegistry.then(function(ownerRegistryRes){
let assetOwner = factory.newResource('****************', 'assetOwner', ownerEmail); //ownerEmail will be provided as ownerID
assetOwner.name = ownerName;
ownerRegistryRes.add(assetOwner).then(function(res){
console.log("res",assetOwner)
})
})
})
})
```
The owner participant addition is still not working. Please suggest where this might have gone wrong. Thanks
Hello,
I have been able to resolve the ENDORSEMENT_POLICY_FAILURE error. There was some issue with the certificates. However, I am getting the following error while trying to 'composer network ping....' :
```
Error: Error trying to ping. Error: No peers have been provided that can be queried
Command failed
```
Also when I looked in the logs from another peer , its showing this:
```
failed to invoke chaincode name:"new-business-network" , error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier 'b9175e626aada3a9cffa01811dc88e0b139a70e0559696d32a22d856b1d2b4ef', has not been registered
```
Please advice.
[ ](https://chat.hyperledger.org/channel/composer?msg=dMFKRwxByQntMgh7W) @mahoney1 I rinstalled and restarted fabric. It started working. Any suggestions.?
[ ](https://chat.hyperledger.org/channel/composer?msg=6B3HuzLzS6BYfhYWt) @mahoney1 @mahoney1, ManyThanks!!I will post it on Stack overflow.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=keDh8tHNAziYffLfx) @davidkel thanks David and I understand that composer is a framework on hyperledger fabric.
let's assume each business network is independent.
if it's resources issue, the network shall not respond at all but it does.
if it's independent and the network is responding, I can at least deploy a basic sample network from playground. The result is that I can deploy but cannot further connect. I tried to upgrade the network, playground does not upgrade the network version but the docker has installed the new version of network. Still nothing can be transacted.
if it is independent, other simple network not be affected. Now, all network responded like the same. They post a successful transaction but nothing really updated in the ledger.
You can try every scenario in this path.
http://hyperledger.300cubits.tech:8080
I also created additional VM from Google Cloud and previously from AWS. The VM should have sufficient resources.
Instead of using the network composer setting, I'll try using other hyperledger setting.
May I understand if I need to use hlfv11, what should be the corresponding composer version please?
Has joined the channel.
Hi guys, I am trying to install composer-cli on my mac, the install goes successful, but somehow I can't find the command:
Peeyushs-MacBook-Pro:fabric-dev-servers peeyush$ npm install -g composer-cli@0.20 --python=python2.7
/usr/local/bin/composer -> /usr/local/lib/node_modules/composer-cli/cli.js
/usr/local/lib
└── composer-cli@0.20.0
Peeyushs-MacBook-Pro:fabric-dev-servers peeyush$ composer-cli
-bash: composer-cli: command not found
Can anyone please help me figure out what am I missing here?
@jonlee300 From my perspective the error you encountered was very unique, no one else had come across it before. I was only going on the information provided. The log showed that the peer was no receiving a block from the orderer and the composer-cli was reporting success which was very odd because under normal circumstances it would not say success unless it heard back from all the peers that the transaction had been committed. I would like to have got to the bottom of what the cause was because business networks (chaincode) are independent and cannot bring down the network but I need more information. The client side logs as asked for earlier would help with that.
As for using composer with hlf 1.1, you need to use composer 0.19
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=e9ixFvxHhzqPf68TS) @pensu use `composer` instead of `composer-cli` and as long as `/usr/local/bin` is in your $PATH, you should find it
Does the composer 0.20 support private data facility of Fabric 1.2 yet?
@silliman Thanks! I was able to follow the guide with composer itself. :)
Has joined the channel.
@mrudav.shukla Sorry, composer 0.20 doesn't support private data (SideDB)
[ ](https://chat.hyperledger.org/channel/composer?msg=cq3LvmfuvMqSMRHoC) @davidkel Ok. So are there any plans to support it in the futurer?
[ ](https://chat.hyperledger.org/channel/composer?msg=cq3LvmfuvMqSMRHoC) @davidkel Ok. So are there any plans to support it in the future?
@mrudav.shukla No sorry there are no plans to support it
Has joined the channel.
Hi,
in my processor code, I added a helper function. Meaning a function that is not called as a standalone transaction, but rather a piece of reusable code that transactions can use.
If I don't put JSDoc comments, the linter complains.
If I put a jscode comment, then I can't compile it as I get an error:
`Cannot read property 'name' of null`
I am not doing anything named `name` but all I can say is as soon as I put a JSDoc it fails with this error...
Hi,
in my processor code, I added a helper function. Meaning a function that is not called as a standalone transaction, but rather a piece of reusable code that transactions can use.
If I don't put JSDoc comments, the linter complains.
If I put a jsdoc comment, then I can't compile it as I get an error:
`Cannot read property 'name' of null`
I am not doing anything named `name` but all I can say is as soon as I put a JSDoc it fails with this error...
[ ](https://chat.hyperledger.org/channel/composer?msg=386ZitWw42SA6NJhK) @davidkel Ok. :)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=oYJdKdqoBHwHfGPfd) @davidkel Hi David, I can bring down the Fabric (not network) using the followings. After creating the Fabric from a new server and installing the business network, I fire a series of adding participants and submitting transactions in the network. The network will be down.
composer participant add --card admin@bank-network -d '{ "$class": "bank.Customer", "customerId": "1", "firstName": "F", "lastName": "L"}'
...
composer participant add --card admin@bank-network -d '{ "$class": "bank.Customer", "customerId": "999", "firstName": "F", "lastName": "L"}'
export FABRIC_VERSION=hlfv12
./startFabric.sh
./createPeerAdminCard.sh
composer archive create -t dir -n .
composer network install --card PeerAdmin@hlfv1 --archiveFile bank-network@0.0.1.bna
composer network start --networkName bank-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file admin@bank-network.card
composer card import -f admin@bank-network.card
composer network ping -c admin@bank-network
--- model ---
namespace bank
asset Account identified by accountId {
o String accountId
--> Customer owner
o Double balance
}
participant Customer identified by customerId {
o String customerId
o String firstName
o String lastName
}
--- logic.js ---
transaction AccountTransfer {
--> Account from
--> Account to
o Double amount
}
/**
* Sample transaction
* @param {bank.AccountTransfer} accountTransfer
* @transaction
*/
function accountTransfer(accountTransfer) {
if (accountTransfer.from.balance < accountTransfer.amount) {
throw new Error ("Insufficient funds");
}
accountTransfer.from.balance -= accountTransfer.amount;
accountTransfer.to.balance += accountTransfer.amount;
return getAssetRegistry('bank.Account')
.then (function (assetRegistry) {
return assetRegistry.update(accountTransfer.from);
})
.then (function () {
return getAssetRegistry('bank.Account');
})
.then(function (assetRegistry) {
return assetRegistry.update(accountTransfer.to);
});
}
@jonlee300 I think you need to create a stack overflow question with complete details of what you are doing and the exact steps to reproduce. Sorry I don't know what you mean when you say `the network is down`. All I can say really is that I think your issues are either configuration or environmental. Also it would be really helpful to capture the logs from the peer, orderer and client code running to see what the behaviours are
@jonlee300 I think you need to create a stack overflow question with complete details of what you are doing and the exact steps to reproduce. Sorry I don't know what you mean when you say `the network is down`. All I can say really is that I think your issues are either configuration or environmental. Also it would be really helpful to capture the logs from the peer, orderer and client code running to see what the behaviours are.
The order you gave is confusing as for example ./startFabric.sh (unless you have changed something) will tear down the fabric docker containers and start new ones from scratch effectively giving you a fresh fabric.
@jonlee300 I think you need to create a stack overflow question with complete details of what you are doing and the exact steps to reproduce. Sorry I don't know what you mean when you say `the network is down`. All I can say really is that I think your issues are either configuration or environmental. Also it would be really helpful to capture the logs from the peer, orderer and client code running to see what the behaviours are.
@jonlee300 I think you need to create a stack overflow question with complete details of what you are doing and the exact steps to reproduce. Sorry I don't know what you mean when you say `the network is down`. All I can say really is that I think your issues are either configuration or environmental. Also it would be really helpful to capture the logs from the peer, orderer and client code/composer commands running to see what the behaviours are.
@jonlee300 I think you need to create a stack overflow question with complete details of what you are doing and the exact steps to reproduce. Sorry I don't know what you mean when you say `the network is down`. All I can say really is that I think your issues are either configuration or environmental. Also it would be really helpful to capture the logs from the peer, orderer and client code/composer commands running to see what the behaviours are (especially the client invocations logs as previously requested)
@jonlee300 I have updated https://github.com/hyperledger/composer/issues/4376 with some more detail. This is unlikely to be an issue with composer but more a problem with fabric or the environment that fabric is running in. So I recommend you pursue on #fabric-peer-endorser-committer channel or try raising a JIRA with appropriate Peer and Orderer logs
Has joined the channel.
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=mhwzYsfR5WCyaEJN2) Did anyone face this issue? And if yes, how did you resolve it ? Have been struggling with this for a week. Have tried changing the connection.json file for the peer to all different combinations of their IP address. localhost, FQDN but it still throws the same error while I try to ping. Please advice
ca_n_couchdb_log.txt
orderer_log.txt
peer_log.zip
composer log file too large.
uploaded to here instead:
http://300cubits.tech/pdf/composer_log.zip
This instance I used the yo generator default network and it broke down the same issuing less than 40 participants.
This instance I used the yo generator default network and it broke down after issuing about 40 participants.
Has joined the channel.
I tried to use hlfv11 to v0.19.4 to create the network and see if the same error occurs but I got this error no matter I create the network from CLI or from playground.
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Steps to bring up the fabric:
export FABRIC_VERSION=hlfv11
./startFabric.sh
./createPeerAdminCard.sh
Thanks.
I tried to use hlfv11 to v0.19.4 to create the network and see if the same error occurs but I got this error when I try to issue Identity (no matter I created the network from CLI or from playground).
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Steps to bring up the fabric:
export FABRIC_VERSION=hlfv11
./startFabric.sh
./createPeerAdminCard.sh
Thanks.
I tried to use hlfv11 to v0.19.4 to create the network and see if the same error occurs. The network works but I got this error when I try to issue Identity. I tried to build the network from CLI or from playground (but both failed to issue ID).
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Steps to bring up the fabric:
export FABRIC_VERSION=hlfv11
./startFabric.sh
./createPeerAdminCard.sh
Thanks.
I tried to use hlfv11 to v0.19.4 to create the network and see if the same error occurs. The network works but I got this error when I try to issue Identity. I tried to build the network from CLI or from playground (but both failed to issue ID).
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Steps to bring up the fabric:
export FABRIC_VERSION=hlfv11
./startFabric.sh
./createPeerAdminCard.sh
/home/dicky/.nvm/versions/node/v8.12.0/lib
├── composer-cli@0.19.14
├── composer-playground@0.19.14
├── composer-rest-server@0.19.14
├── generator-hyperledger-composer@0.19.14
├── npm@6.4.1
├── passport-google-oauth2@0.1.6
└── yo@2.0.5
Thanks.
I tried to use hlfv11 to v0.19.4 to create the network and see if the same error occurs. The network works but I got this error when I try to issue Identity. I tried to build the network from CLI or from playground (but both failed to issue ID).
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Steps to bring up the fabric:
export FABRIC_VERSION=hlfv11
./startFabric.sh
./createPeerAdminCard.sh
/home/dicky/.nvm/versions/node/v8.12.0/lib
├── composer-cli@0.19.14
├── composer-playground@0.19.14
├── composer-rest-server@0.19.14
├── generator-hyperledger-composer@0.19.14
├── npm@6.4.1
├── passport-google-oauth2@0.1.6
└── yo@2.0.5
Thanks.
I tried to use hlfv11 to v0.19.4 to create the network and see if the same error occurs. The network works but I got this error when I try to issue Identity. I tried to build the network from CLI.
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Steps to bring up the fabric:
export FABRIC_VERSION=hlfv11
./startFabric.sh
./createPeerAdminCard.sh
/home/dicky/.nvm/versions/node/v8.12.0/lib
├── composer-cli@0.19.14
├── composer-playground@0.19.14
├── composer-rest-server@0.19.14
├── generator-hyperledger-composer@0.19.14
├── npm@6.4.1
├── passport-google-oauth2@0.1.6
└── yo@2.0.5
I further tried using playground to deploy the network. The issue is gone. Is it due to the package.json file in new format?
Thanks.
How can I create relationships between assets when using Cucumber? I tried:
```
And I have added the following assets
| id | rel |
| a | org.example.OtherAsset#id |
```
but that didn't work, and prefixing it with `resource:` didn't work either. It works fine when creating assets with JSON, but I feel like this should be possible using the "table" interface too.
Stumbled upon the answer by mistake while writing test code.
```
| id | rel |
| a | id |
```
would be the correct way of changing the above code.
hi, every body , i am using composer test model 'embedded' to test my network, but when I run ‘npm test’, it cames error like :`ReferenceError: require is not defined`. I cloned the 'composer-sample-networks' and test the sample network in packages, it runs fine.I checked the configuration and couldn't find the reason, I am confused , does anyone can help me?
hi, every body , i am using composer test model 'embedded' to test my network, but when I run ‘npm test’, it cames error like :mountain_bicyclist_tone3: `ReferenceError: require is not defined`. I cloned the 'composer-sample-networks' and test the sample network in packages, it runs fine.I checked the configuration and couldn't find the reason, I am confused , does anyone can help me?
hi, every body , i am using *composer test model 'embedded' t*o test my network, but when I run ‘npm test’, it cames error like :mountain_bicyclist_tone3: `ReferenceError: require is not defined`. I cloned the 'composer-sample-networks' and test the sample network in packages, it runs fine.I checked the configuration and couldn't find the reason, I am confused , does anyone can help me?
Has joined the channel.
I run the test js step by step and find the problem came up in ` const adminCards = await adminConnection.start(businessNetworkDefinition.getName(), businessNetworkDefinition.getVersion(), startOptions);
`, when execute in this line, the error `ReferenceError: require is not defined` came up.
the detail is :`ReferenceError: require is not defined
at __generator (eval at
I run the test js step by step and find the problem came up in ` const adminCards = await adminConnection.start(businessNetworkDefinition.getName(), businessNetworkDefinition.getVersion(), startOptions);
`, when execute in this line, the error `ReferenceError: require is not defined` came up.
the detail is :`ReferenceError: require is not defined
at __generator (eval at
I run the test js step by step and find the problem came up in ` const adminCards = await adminConnection.start(businessNetworkDefinition.getName(), businessNetworkDefinition.getVersion(), startOptions);
`, when execute in this line, the error `ReferenceError: require is not defined` came up.
the detail is :`ReferenceError: require is not defined
at __generator (eval at
I run the test js step by step and find the problem came up in ` const adminCards = await adminConnection.start(businessNetworkDefinition.getName(), businessNetworkDefinition.getVersion(), startOptions);
`, when execute in this line, the error `ReferenceError: require is not defined` came up.
the detail is :
`ReferenceError: require is not defined
at __generator (eval at
I run the test js step by step and find the problem came up in const adminCards = await adminConnection.start(businessNetworkDefinition.getName(), businessNetworkDefinition.getVersion(), startOptions);
, when execute in this line, the error `ReferenceError: require is not defined` came up.
the detail is :
~ReferenceError: require is not defined
at __generator (eval at
I run the test js step by step and find the problem came up in
*const adminCards = await adminConnection.start(businessNetworkDefinition.getName(), businessNetworkDefinition.getVersion(), startOptions);*
, when execute in this line, the error `ReferenceError: require is not defined` came up.
the detail is :
*ReferenceError: require is not defined
at __generator (eval at
Has joined the channel.
Has joined the channel.
I was not able to find a tutorial on deploying fabric to production. can anybody help? thanks
@MuhammedHafil did you start docker-compose? the production dir may be in /etc/hyperledger/ folder
I have only deployed local network
that is under the cmd's folder which is "orderer" or "peer" @MuhammedHafil
Has joined the channel.
I found my problem, the *ReferenceError: require is not defined* is in occured in logic.js, I defined *var requsest = require('request')* to let network request some http url, but when I remove this command, the log tells that *error 'request' is not defined no-undef* , How can I use request fucntion in composer? Can anyboby help? thanks
Hi, can I make a login page for composer-playground?
@UnaiUrk No you can't. But remember that playground is a web based tool to get you started quickly using composer and is not meant to be used as a multi-user application (development or operational activities) connected to real fabrics
@davidkel thanks!
So, how can I control the access to composer-playground? can I make a middleware or something like that?
@UnaiUrk Sounds like you are trying to turn it into a multi-user system which is not something I would recommend doing
@tyhtao1990 what version of composer are you using ?
[ ](https://chat.hyperledger.org/channel/composer?msg=s49pkM6ad6qTcBSff) @tyhtao1990 You can use `require` in the transaction processing logic. But Composer does include the request module so it is available to you. Please se this page: https://hyperledger.github.io/composer/latest/integrating/call-out
[ ](https://chat.hyperledger.org/channel/composer?msg=s49pkM6ad6qTcBSff) @tyhtao1990 You can't use `require` in the transaction processing logic. But Composer does include the request module so it is available to you. Please se this page: https://hyperledger.github.io/composer/latest/integrating/call-out
I understand that I cant make a multi-user system with composer-playground, but I want to have a minimum information about the user actions
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=MzJMkQpGqCAAd29MG) @MuhammedHafil - this channel is for Composer specific questions and discussions - If you want to install a Production Fabric, I would suggest asking in the #fabric channel :-)
@rthatcher I have followed the tutorial, but when I remove the line "var request = require('request')", it will came up an error: ` 23:26 error 'request' is not defined no-undef
48:26 error 'request' is not defined no-undef`
@rthatcher I have followed the tutorial, but when I remove the line "var request = require('request')", it will came up an error:
` 23:26 error 'request' is not defined no-undef
48:26 error 'request' is not defined no-undef`
@UnaiUrk Ok, not sure I understand your intentions here (I am assuming you will run a unique instance for each user and it will connected to a real fabric). I cannot suggest a way to achieve what you want. You may end up having to take the playground and playground-api source code and modify it yourself to achieve what you require
[ ](https://chat.hyperledger.org/channel/composer?msg=mzN84YYAfMvtk4AXf) @tyhtao1990 Can you show which tutorial you are using? And also which version of Composer? ( `composer -v`)
Composer included the request module from v0.18.1 onwards
@davidkel thanks, ues I will run a unique instance for each user and it will be connected to real fabric.
@davidkel thanks, yes I will run a unique instance for each user and it will be connected to real fabric.
I am following the tutorial:`https://hyperledger.github.io/composer/latest/tutorials/invoke-composer-network`
and my composer version is :`*v0.20.0*`
I am following the tutorial:`https://hyperledger.github.io/composer/latest/tutorials/invoke-composer-network`
and my composer version is :`*v0.20.0*` @rthatcher
@rupa12 suggest you post your connection profile that you are using
Hello everyone, if I develop a real world app that is used on a client application. Do I need to create a .card file for each user of my app?
[ ](https://chat.hyperledger.org/channel/composer?msg=rCQ2P9gk2wkyTxQyh) @cuevrob yes, if every user must be authenticated in your app
thank you man, just to have things a little bit more clear. I develop an app for airline miles of a bank, and I will have different establishments. There will be a portal where each establishment, normal everyday users and also the bank will be able to log in to use the portal. What I want to know is if the accounts they create will be tied to a .card such as the ones that are stored under .composer folder
thanks man youre helping me tons
Has joined the channel.
Good afternoon,
I am currently developing an application with composer. On the one hand I have the bna deployed in a channel with two organizations but I am using an intermediate nodejs that I have created for the part of authentication and creation of new participants. The communication of the nodejs and the BC is through the SDK for node. Now the question arises as to how I should store the cards ?. Until a week ago I had only one organization and I was able to create participants for it but now that I have extended it to two organizations, I have doubts about how to store the cards. Do I understand that each organization should have its own cardStore in such a way that the participants of one organization can not share the cards with those of another?
Or on the other hand it should be the nodejs that should store the cards of all users independently of the organization.
Thank you very much
[ ](https://chat.hyperledger.org/channel/composer?msg=bEmzWhZf8DR63Pzdu) @cuevrob they will if they need to interact with the ledger from the portal. So: posting transactions, or, even, querying the ledger to get information from the blockchain.
@mahoney1 thank you man! :ok_hand:
@garaujo wouldn't each Org manage/issue their own identities / chain of trust? Normally they would and issue their own blockchain identities/certs and then create business network cards, that contain those and info on how to connect to the business network / smart contract on the 2-org blockchain network. As for authentication, again, normally each org is resp for authenticating their own users, then once authenticated, will redirect accordingly in the app, then the app user consumes the business network card issued to them, so that he/she will interact with the ledger as appropriate. The cards, could be stored in an objectstore in the cloud, or being sensitive, held in secure storage etc.
@garaujo wouldn't each Org manage/issue their own identities / chain of trust in your situation? Normally they would and each Org might issue / manage their own blockchain identities/certs (all depends of course) and then create business network cards that contain those, as well as the usual info on how to connect to the business network / smart contract deployed (on a channel) on the 2-org blockchain network. As for authentication, again, normally each org is resp for authenticating their own users, then once authenticated, will redirect accordingly in the app, then the app user consumes the business network card issued to them, so that he/she will interact with the ledger as appropriate. The cards, could be stored in an objectstore in the cloud, or being sensitive, held in secure storage etc.
@garaujo wouldn't each Org manage/issue their own identities / chain of trust in your situation? Normally they would and each Org might issue / manage their own blockchain identities/certs (all depends of course) and then create business network cards that contain those, as well as the usual info on how to connect to the business network / smart contract deployed (on a channel) on the 2-org blockchain network. As for authentication, again, normally each org is resp for authenticating their own users (depends on strategy used etc), then once authenticated, will redirect accordingly in the app, then the app user consumes the business network card issued to them, so that he/she will interact with the ledger as appropriate. The cards, could be stored in an objectstore in the cloud, or being sensitive, held in secure storage etc.
@mahoney1 First of all thanks for the response.
Currently what I have implemented is a backoffice in which administrators (each organization has one) can create participants for their own organization. When an administrator registers a participant what is really done is to store this user in a mond bbdd and create a card for him. This card is never returned to the user.
Then, when a user authenticates by username / password, it is checked in bbdd if it exists and if so, I connect to the BC with the card of that user (username = name of the card).
Now I doubt that my architecture is bad and has security flaws.
What I would like in the next step, is that different administrators could register different participants for their organizations and then these participants could authenticate themselves through username / password and obtain their cards from different cardStores.
I do not know if I explained myself?
Thanks in advance.
@davidkel : Here is my connection profile:
`=!=vX4FSykFexAsKSFi9=!= `
@davidkel : Here is my connection profile:
```
{
"name": "fabric-network",
"x-type": "hlfv1",
"version": "1.0.0",
"peers": {
"peer3.fabric": {
"url": "grpc://peer3.fabric:7051",
"eventUrl": "grpc://peer3.fabric:7053"
},
"peer2.fabric": {
"url": "grpc://peer2.fabric:7051",
"eventUrl": "grpc://peer2.fabric:7053"
}
},
"certificateAuthorities": {
"fabric-ca-server": {
"url": "http://localhost:7054",
"caName": "fabric-ca-server"
},
"fabric-ca-server2": {
"url": "http://fabric-ca-server2:7054",
"caName": "fabric-ca-server2"
}
},
"orderers": {
"orderer.fabric": {
"url": "grpc://orderer.fabric:7050"
}
},
"organizations": {
"Org1": {
"mspid": "thartharMSP",
"peers": [
"peer3.fabric:7051"
],
"certificateAuthorities": [
"fabric-ca-server"
]
},
"Org2": {
"mspid": "thartharMSP2",
"peers": [
"peer2.fabric:7051"
],
"certificateAuthorities": [
"fabric-ca-server2"
]
}
},
"channels": {
"thartharchannel": {
"orderers": [
"orderer.fabric"
],
"peers": {
"peer3.fabric": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer2.fabric": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
}
}
}
},
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "1200",
"eventHub": "1200",
"eventReg": "1200"
},
"orderer": "1200"
}
}
}
}
```
@rupa12 some of your references to peers are not correct, for example
```
"organizations": {
"Org1": {
"mspid": "thartharMSP",
"peers": [
"peer3.fabric:7051"
],
"certificateAuthorities": [
"fabric-ca-server"
]
},
"Org2": {
"mspid": "thartharMSP2",
"peers": [
"peer2.fabric:7051"
],
"certificateAuthorities": [
"fabric-ca-server2"
]
}
```
don't refer to any defined peers as there are no peers called `peer3.fabric:7051` for example.
your peers are called `peer2.fabric` and `~~peer3.fabric`
your peers are called `peer2.fabric` and `peer3.fabric`
@davidkel : wow!! Great! That worked! Thank you so much.
Clipboard - September 17, 2018 10:37 PM
Has joined the channel.
@garaujo that's fine, makes sense that each Org manages its own cards (that their respective user identities use) and its own cardStores . Info on custom card store choices can be found here -> https://hyperledger.github.io/composer/latest/business-network/cloud-wallets and more on on business network cards here -> https://hyperledger.github.io/composer/latest/managing/id-cards-playground
@abityildiz looks like you've not imported (composer card import) your admin card admin@test02 (then, `composer network ping` the network, to ensure it connects ok). After that, he imports a card later at the REST API to test authentication.
[ ](https://chat.hyperledger.org/channel/composer?msg=yCxj2BJg9C3psDf3D) Deployed v0.19.14 and the issue on complete meltdown of the Fabric is gone. Is it an issue of v0.20.0?
Clipboard - September 18, 2018 9:26 AM
hey every one. i created business network on composer. Now i want to to connect it to hyper ledger explorer. so i cloned hyperledger explorer github repo. but i dont understand what configuration should make to config.json ... Here is `docker ps` command results .
here is DevServer_connection.json `{
"name": "hlfv1",
"x-type": "hlfv1",
"x-commitTimeout": 300,
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},
"channels": {
"composerchannel": {
"orderers": [
"orderer.example.com"
],
"peers": {
"peer0.org1.example.com": {}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
}
},
"orderers": {
"orderer.example.com": {
"url": "grpc://localhost:7050"
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpc://localhost:7051"
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "http://localhost:7054",
"caName": "ca.org1.example.com"
}
}
}`
now in which way should i edit config.json\]
Has joined the channel.
Hi, according to https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org, When I am trying to run "composer identity reequest" command, It's throwing me an error like Error: failed to request identity. Error trying to enroll user and return certificates. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:1111]
Can any one help me to figure it out?
Clipboard - September 18, 2018 11:29 AM
according to my understanding I interpret that SKIP and LIMIT are now supported in new fabric version. I've upgraded fabric to 1.2 and composer rest server to 0.20.0 and I'm running a query like this
query exampleQuery {
description: "example query"
statement:
SELECT com.aob.exmp.Example
LIMIT _$limitParam
SKIP _$skipParam
}
but still can't get limit and skip working, it is still giving whole data. can someone please tell what I'm doing wrong?
@amritsharma SKIP and LIMIT will never be supported now. Fabric didn't release the ability to support it in 1.2 and are never going to support being able to set these values
@malviyamukul I suggest you ask questions about hyperledger explorer on their channel #hyperledger-explorer
@VaibhavChotaliya ECONNREFUSED means the TCP connection was refused, that means nothing is listening on the url and port it is trying to connect to.
@jonlee300 The Composer code base between 0.19.4 and 0.20.0 is almost identical. The difference is using a different version of the fabric-node-sdk which is required in order to work with fabric 1.2. The problem you are experiencing must be an issue with fabric 1.2, not composer
Can I create a specific cardStore for organization?
If so, as I indicated to the BusinessNetworkConnection and the BusinessNetworkCardStore the options regarding the cardStore.
For example, I would like to tell Org1 that I want to use the fileSystem for their cards, whereas for Org2 I would like to use a Custom card store in the clout.
Thank you very much
@garaujo It's easy if each organisation are running the client side code on their own machines.
@garaujo It's easy if each organisation are running the client side code on their own machines. Do you plan to host a client application to serve both organisations ? Or are you planning on hosting a single rest server for multiple organisations ?
[ ](https://chat.hyperledger.org/channel/composer?msg=aA2ZC7zRBTDPZroGv) @davidkel It seems that I have to raise the question in fabric channel instead of composer.
@davidkel We have a nodejs application that works as mid-tier. The idea is to have a single angular application with a single Login. When a user authenticates, it is verified to which organization he belongs. And depending on the organization you should use a cardStore or another to connect to the network.
How can I do so from the Nodejs can register and store the cards of new users in a cardStore or another depending on the organization to which they belong?
Thank you very much
@garaujo When you construct either an AdminConnection (for card management) or BusinessNetworkConnection (for connection to a business network) you can specify the card store implementation to use. So it should be feasible to control the card stores to use at that point. However I've not tried to do this myself and not sure if these api has been well tested for that type of scenario
Has left the channel.
How can i pass parameters to query when calling like this, Thanks
let results = await query('selectCommoditiesWithHighQuantity');
@MuhammedHafil there are examples in composer sample networks eg. https://github.com/hyperledger/composer-sample-networks/blob/master/packages/fund-clearing-network/lib/clearing.js#L112 and in the question on S/O here https://stackoverflow.com/questions/51145333/hyperledger-composer-query-access-returned-resource-id
@MuhammedHafil there are examples in composer sample networks eg. https://github.com/hyperledger/composer-sample-networks/blob/master/packages/fund-clearing-network/lib/clearing.js#L112 and in the question on S/O here https://stackoverflow.com/questions/51145333/hyperledger-composer-query-access-returned-resource-id (using named queries from the .qry file in this case)
I am getting the following error:
```
Failed to create user registry for MySQL: Failed to connect toMySQL database: dial tcp 127.0.0.1:3306: getsockopt: connection refused
```
Here is config file changes:
```
type: mysql
datasource: root:rootpw@tcp(localhost:3306)/fabric_ca?parseTime=true
tls:
enabled: false
certfiles:
client:
certfile:
keyfile:
```
while configuring mysql with ca I am getting the following error:
```
Failed to create user registry for MySQL: Failed to connect toMySQL database: dial tcp 127.0.0.1:3306: getsockopt: connection refused
```
Here is config file changes:
```
type: mysql
datasource: root:rootpw@tcp(localhost:3306)/fabric_ca?parseTime=true
tls:
enabled: false
certfiles:
client:
certfile:
keyfile:
```
while configuring mysql with ca I am getting the following error:
```
Failed to create user registry for MySQL: Failed to connect toMySQL database: dial tcp 127.0.0.1:3306: getsockopt: connection refused
```
Here is config file changes:
```
type: mysql
datasource: root:rootpw@tcp(localhost:3306)/fabric_ca?parseTime=true
tls:
enabled: false
certfiles:
client:
certfile:
keyfile:
```
Can anyone help please?
@HoneyShah this is a fabric question not a composer question suggest you try #fabric-ca
[ ](https://chat.hyperledger.org/channel/composer?msg=JbT57nJNzAdRK8K4k) @mahoney1 i have imported admin card and i have get the ping result success.is it related with the permission?
what do these errors in the container logs mean?
example:
```
Error: Object with ID 'org.hyperledger.composer.system.NetworkAdmin' in collection with ID 'Asset:org.hyperledger.composer.system.ParticipantRegistry' does not exist
```
Screenshot: https://ibb.co/fZeHwe
what do these errors in the chaincode container logs mean?
example:
```
Error: Object with ID 'org.hyperledger.composer.system.NetworkAdmin' in collection with ID 'Asset:org.hyperledger.composer.system.ParticipantRegistry' does not exist
```
Screenshot: https://ibb.co/fZeHwe
*[channel: composerchannel] Rejecting broadcast of message from 172.19.0.9:34106 with SERVICE_UNAVAILABLE: rejected by Consenter: will not enqueue, consenter for this channel hasn't started yet*
I have created a channel *my-net* over bridge where two VM's are connected . VM1 have : 2 zookeeper, 2 kafka and 1 CA , 1 orderer , 1 couchDB and one peer , and second VM have : 1 zookeeper , 2 kafka , 1 couch DB and 1 peer , when I have run the command to create the channel on VM 1 then I have an error >>>>>*[channel: composerchannel] Rejecting broadcast of message from 172.x.x.x:3xxx6 with SERVICE_UNAVAILABLE: rejected by Consenter: will not enqueue, consenter for this channel hasn't started yet*
@HoneyShah suggest to read the Fabric CA user guide https://fabric-ca.readthedocs.io/en/latest/users-guide.html or ask/search on channel #fabric-ca - possibly may also have a [privileges issue](https://azure.microsoft.com/en-us/blog/create-your-own-dedicated-mysql-server-for-your-azure-websites/)
@anuj_27 best to ask on #fabric - you likely have a config error - see also the docs https://hyperledger-fabric.readthedocs.io/en/release-1.1/ordering-service-faq.html (under Kafka)
@VadimInshakov it likely means your ACLs prevent you accessing the registry mentioned.
@VadimInshakov it likely means your ACL rules prevent you accessing the registry mentioned.
@abityildiz 'not found' means you hadn't imported. After resolving that, you should try to resume the tutorial from where you left off).
[ ](https://chat.hyperledger.org/channel/composer?msg=BsgLCwNfzDzKs8fHt) @mahoney1 ok.i will be try again.thanks.
@mahoney1 but I haven't ACL's.
IBM Blockchain Starter plan - how can I generate APIs for my chaincode so that other web/android UI applications can access it?
@anaswar If you are using composer, then there is a Rest Server that will do that
@anaswar If you are using composer (and I guess you are as you asked here :-) ), then there is a Rest Server that will do that, see https://hyperledger.github.io/composer/latest/integrating/integrating-index
Hi, we have build a node.js app using omposer-client sdk. Now we are performing concurrency tests on it, however we recieve the errors : (node:5072) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 exit listeners added. Use emitter.setMaxListeners() to increase limit. Any clue what needs to be done?
Hi, we have build a node.js app using composer-client sdk. Now we are performing concurrency tests on it, however we recieve the errors : (node:5072) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 exit listeners added. Use emitter.setMaxListeners() to increase limit. Any possible solution to this issue for node.js express app using composer-client sdk?
Hi, we have build a node.js app using composer-client sdk. Now we are performing concurrency tests on it, however we recieve the errors : *(node:5072) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 exit listeners added*. Use emitter.setMaxListeners() to increase limit. Any possible solution to this issue for node.js express app using composer-client sdk?
@gauravgiri how many connections are you creating concurrently ? Do you disconnect them once you have finished with them ?
Now I reinstalled composer modules (0.19.4 version for fabric 1.1 version) and upgraded business network. But REST server not working and I see in chaincode container logs this error:
```
running start.js
(node:19) DeprecationWarning: grpc.load: Use the @grpc/proto-loader module with grpc.loadPackageDefinition instead
```
[ ](https://chat.hyperledger.org/channel/composer?msg=jYTGgWeEoodq42kyS) @davidkel Hi @davidkel, ours is a highly concurrent app. we get this error when we increase concurrency to more than 10(around 15). Yes we are disconnecting as well.
@gauravgiri ok, then so it's fine to do as it recommends and set the MaxListeners to higher. Each connection you create registers an exit listener. When you disconnect it removes that exit listener
[ ](https://chat.hyperledger.org/channel/composer?msg=DHADiTQgjRyKKSGGW) @davidkel Hi @davidkel, how do we set the maxlisteners to a higher limit for composer connect/disconnect. any samples?
@gauravgiri As the node.js message says `Use emitter.setMaxListeners() to increase limit`
@gauravgiri As the node.js message says `Use emitter.setMaxListeners() to increase limit`, ok not so simple I thought it would be a static method
[ ](https://chat.hyperledger.org/channel/composer?msg=7vvmDBKbuKpd86kay) @davidkel yes david, how do we set it in a simple node app using express, and using bizNetworkConnection.connect/disconnect
@davidkel please, help
@gauravgiri try
```
process.setMaxListeners(20);
```
But in any case, this isn't a problem its node trying to be helpful and warn you just in case
[ ](https://chat.hyperledger.org/channel/composer?msg=PuWgiqnkuKpQSpm3y) @davidkel Thank you David, it helps. I think it was an issue for some concurrent requests which encountered this max limit, for others it was OK. Now with more listeners possible, it should be Ok for all concurrent requests to network.
what do these errors in the chaincode container logs mean?
example:
```
Error: Object with ID 'org.hyperledger.composer.system.NetworkAdmin' in collection with ID 'Asset:org.hyperledger.composer.system.ParticipantRegistry' does not exist
```
Screenshot: https://ibb.co/fZeHwe
@mahoney1 @rthatcher @davidkel any help, please
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=SDWMh9pcBHPWuRTK2) @davidkel @davidkel actually I am installing the chaincode using .go files and not .bna files. Therefore I guess we have to configure the APIs ourselves. Is there a way to do it?
[ ](https://chat.hyperledger.org/channel/composer?msg=SDWMh9pcBHPWuRTK2) @davidkel actually I am installing the chaincode using .go files and not .bna files. Therefore I guess we have to configure the APIs ourselves. Is there a way to do it?
@anaswar Sorry I don't know. I think you would have to craft your own Rest server to match your chaincode capabilities
@davidkel Ok. Thank you.
[ ](https://chat.hyperledger.org/channel/composer?msg=cNNoupN3GczbXDgGj) @VadimInshakov the issue is your network admin object ('user1' instance in this case) does not have access to `ParticipantRegistry` which is a registry under `org.hyperledger.composer.system.*` - I would imagine its because your ACLs are not present, to allow that to happen ('object does not exist' means it is has no authority to retrieve it)
[ ](https://chat.hyperledger.org/channel/composer?msg=cNNoupN3GczbXDgGj) @VadimInshakov the issue is your network admin object ('user1' instance in this case) does not have access to `ParticipantRegistry` which is a registry under `org.hyperledger.composer.system.*` - I would imagine its because your ACLs are not present, to allow that to happen ('object does not exist' means it is has no authority to retrieve it) - suggest to post your issue on Stack Overflow if required, with your model, ACLs and what you want to achieve
[ ](https://chat.hyperledger.org/channel/composer?msg=cNNoupN3GczbXDgGj) @VadimInshakov the issue is your network admin object ('user1' instance in this case) does not have access to `ParticipantRegistry` which is a registry under `org.hyperledger.composer.system.*` - I would imagine its because your ACLs are not present, to allow that to happen ('object does not exist' means it is has no authority to retrieve it and there are other issues as well) - suggest to post your issue on Stack Overflow if required, with your model, ACLs and what you want to achieve
[ ](https://chat.hyperledger.org/channel/composer?msg=BsgLCwNfzDzKs8fHt) @mahoney1 hi,i fixed my problem.but now,i have meet his error.can you help me plase
[ ](https://chat.hyperledger.org/channel/composer?msg=BsgLCwNfzDzKs8fHt) @mahoney1 hi,i fixed my problem.but now,i have meet his error.can you help me plase
Clipboard - September 18, 2018 11:41 PM
Clipboard - September 18, 2018 11:41 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=BsgLCwNfzDzKs8fHt) @mahoney1 hi,i fixed my problem.but now,i have meet his error.can you help me plase
Clipboard - September 18, 2018 11:44 PM
hi, which code would you use between these?
`asset OwnedAsset identified by assetId {
o String assetId
--> Creator creator
}
participant Creator identified by creatorId {
o String creatorId
}
participant User identified by userId {
o String userId
o Creator creator
}`
`asset OwnedAsset identified by assetId {
o String assetId
}
asset OwningProperty identified by propId {
o String propId
--> OwnedAsset asset
--> User user
}
participant User identified by userId {
o String userId
}`
hi, which code would you use between these?
```
asset OwnedAsset identified by assetId {
o String assetId
--> Creator creator
}
participant Creator identified by creatorId {
o String creatorId
}
participant User identified by userId {
o String userId
o Creator creator
}
```
```
asset OwnedAsset identified by assetId {
o String assetId
}
asset OwningProperty identified by propId {
o String propId
--> OwnedAsset asset
--> User user
}
participant User identified by userId {
o String userId
}
```
hi, which code would you use between these?
```
asset CreatedAsset identified by assetId {
o String assetId
--> Creator creator
}
participant Creator identified by creatorId {
o String creatorId
}
participant User identified by userId {
o String userId
o Creator creator
}
```
```
asset CreatedAsset identified by assetId {
o String assetId
}
asset CreatingProperty identified by propId {
o String propId
--> CreatedAsset asset
--> User user
}
participant User identified by userId {
o String userId
}
```
hi, which code would you use between these to define some access controls over the asset?
```
asset CreatedAsset identified by assetId {
o String assetId
--> Creator creator
}
participant Creator identified by creatorId {
o String creatorId
}
participant User identified by userId {
o String userId
o Creator creator
}
```
```
asset CreatedAsset identified by assetId {
o String assetId
}
asset CreatingProperty identified by propId {
o String propId
--> CreatedAsset asset
--> User user
}
participant User identified by userId {
o String userId
}
```
Hi Everyone just a question which is the best practice for example in Creating an Asset, is it the Logic inside the BNA File which I need to create a transaction inorder to work or Outside the BNA file? just wondering in this part :) I was thinking not to expose to much code in the Node.JS part on the Server instead its inside the BNA File (chaincode)
Hi everyone, can i install or deploy another chaincode developed in hypeledger fabric on a network that has been deployed using hyperledger composer connection profile etc ?
Has joined the channel.
Could anyone save me ? I got a "bus error(core dumped)" when ran command "composer-rest-server"
Has joined the channel.
composer network ping -c admin@med-net
Error: Error trying to ping. SyntaxError: Unexpected end of JSON input
Command failed
composer version 0.19.4 and node version 8.11.2
[ ](https://chat.hyperledger.org/channel/composer?msg=uc2K2FEhG7Crqp7j4) hi every one can any one guide me about this issue
hi, i have tried the authentication using github for the rest-server and works perfectly fine. I'm trying to authenticate using ping federate and this is not working for me. export COMPOSER_PROVIDERS='{
"ping-oauth2": {
"provider": "ping",
"authorizationURL" : "XXXX",
"tokenURL" : "XXX",
"module": "passport-ping-oauth2",
"clientID": "XXXX",
"clientSecret": "XXXXX",
"authPath": "/auth/pingid",
"callbackURL": "/auth/ping/callback",
"successRedirect": "http://localhost:3001/explorer",
"failureRedirect": "/"
}
}' this is how my composer provider look like. Appreciate your guidance here.
@youngsunglee you need composer 0.20 as you are using fabric 1.2
@saeedi Yes you can, please note that the connection profile is not defined by composer. Fabric defines the format of the connection profile, composer just utilises that capability
Good Morning,
Is there a command or some way to quickly eliminate all participants and identities in order to develop faster?
Thank you very much
@NareshPai if its local, have you tried using callbackPath ? Examples here (COMPOSER_PROVIDERS for configuring the REST server is similar to providers.json is because its loopback based) -> https://loopback.io/doc/en/lb2/Configuring-providers.json.html
[ ](https://chat.hyperledger.org/channel/composer?msg=xg9Nf3jFiEGGodimK) @JeffGutierrez yes, you can define the logic/conditions to create an asset in your transaction function (in the BNA), then submitTransaction from your NodeJS app or use the REST APIs to invoke the transaction endpoints defined in the biz network.
@giacomo.minighin suggest to see examples in the ACL tutorial https://hyperledger.github.io/composer/latest/tutorials/acl-trading or the sample networks, such as here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/letters-of-credit-network/permissions.acl
@davidkel Thank you. One more question, can i have two different channels, one with bna and other one with simple chaincode, running at the same time on same set of peers ? Or i can interact with only one at a time ?
@saeedi yes you can, but this is about base fabric and not specific to composer. a composer bna is essentially fabric chaincode
@davidkel Thanks a lot. :smile:
Hi can someone help me with this question
https://stackoverflow.com/questions/52401143/transaction-function-return-type-in-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=ZsFCRtHPEeKJnZPid) @mahoney1 Thank you for answering and just added question which one is much better to use?
An asset in my model has a created_at DateTime field. I want to query it to get all assets between 2 dates. How to do that?
[ ](https://chat.hyperledger.org/channel/composer?msg=QMghgBpFRkC87ix7T) @RahulSingh 6 has been answered on S/O
[ ](https://chat.hyperledger.org/channel/composer?msg=NCQktHPtRth885s6q) @mahoney1 any hints on this?
Hai, i has question about endorsement-policy.json. for example ,it looks like this:
{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
}
1,so, where i can find the rule of the file?
2,may i use this below to express the policy of "only Org1MSP is need for sign"?
"policy": {
"1-of": [
{
"signed-by": 0
}
]
}
Hai, i has question about endorsement-policy.json. for example ,it looks like this:
{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
}
1,so, where i can find the rule of the file?
2,may i use this below to express the policy of "only Org1MSP is need for sign"?
"policy": {
"1-of": [
{
"signed-by": 0
}
]
}
3, when i exec composer network install ,is the endorsement-policy.json in need?
@rthatcher I want to retrive orders by particular buyer i am following queries query selectOrders {
description: "Select all Orders"
statement:
SELECT org.acme.Z2BTestNetwork.Order
}
query selectOrdersByBuyer {
description: "Select all orders for a specific buyer"
statement:
SELECT org.acme.Z2BTestNetwork.Order
WHERE (seller.sellerID == _$id)
}
query selectOrdersBySeller {
description: "Select all orders for a specific seller"
statement:
SELECT org.acme.Z2BTestNetwork.Order
WHERE (seller.sellerID == _$id)
}
query selectOrdersBySellerAndStatus {
description: "Select all orders for a specific seller with a specific status"
statement:
SELECT org.acme.Z2BTestNetwork.Order
WHERE (seller.sellerID == _$id AND status == _$status)
}
query getHistorianRecords {
description: "get all Historian records"
statement: SELECT org.hyperledger.composer.system.HistorianRecord
}
@rthatcher I want to retrive orders by particular buyer i am following queries query selectOrders {
description: "Select all Orders"
statement:
SELECT org.acme.Z2BTestNetwork.Order
}
query selectOrdersByBuyer {
description: "Select all orders for a specific buyer"
statement:
SELECT org.acme.Z2BTestNetwork.Order
WHERE (seller.sellerID == _$id)
}
query selectOrdersBySeller {
description: "Select all orders for a specific seller"
statement:
SELECT org.acme.Z2BTestNetwork.Order
WHERE (seller.sellerID == _$id)
}
query selectOrdersBySellerAndStatus {
description: "Select all orders for a specific seller with a specific status"
statement:
SELECT org.acme.Z2BTestNetwork.Order
WHERE (seller.sellerID == _$id AND status == _$status)
}
query getHistorianRecords {
description: "get all Historian records"
statement: SELECT org.hyperledger.composer.system.HistorianRecord
} but i am unable to retriev data can you please help me regarding this? @rthatcher
i am getting empty array when i invoking the selectOrdersByBuyer @rthatcher
@touchingsoil The format of the endorsement policy is defined by the fabric-sdk-node. The only place it is documented is here https://fabric-sdk-node.github.io/global.html#ChaincodeInstantiateUpgradeRequest I would suggest asking any further questions on #fabric-sdk-node
[ ](https://chat.hyperledger.org/channel/composer?msg=oAg3bc443fjhSHYz5) @tahaf10 This answer on Stackoverflow shows using an example Query with a DateTime - in your case you will just have to extend it with an `AND` in the `WHERE` clause.
https://stackoverflow.com/questions/45839711/how-to-get-current-date-in-hyperledger-composer-query-language/46042501#46042501
@davidkel Thanks!,but,when i exec composer network install ,is the endorsement-policy.json in need?
@touchingsoil it's specified on composer network start and you only need it if you want an endorsement policy for that business network.
@touchingsoil it's specified on composer network start (or upgrade) and you only need it if you want an endorsement policy for that business network.
[ ](https://chat.hyperledger.org/channel/composer?msg=xAkgDc2pkd2xGNjEC) @mahoney1 I have tried with github, works fine for me. Was trying with Ping federate and thats when i'm getting this issue i.e. {"error":{"statusCode":404,"name":"Error","message":"Cannot GET /auth/oauth2/callback?code=...
[ ](https://chat.hyperledger.org/channel/composer?msg=wLxE4Ktu9HfeEvHJw) @sureshtedla - Without seeing the model as well the Query I can't tell why it is failing - but a couple of observations:
1. You have the same `WHERE (seller.sellerID == _$id)` . for both the `selectOrdersByBuyer` and `selectOrdersBySeller queries`
2. Do you need seller.sellerID or just seller.ID? (or for the Buyer buyerID? )
[ ](https://chat.hyperledger.org/channel/composer?msg=pAGPNkAzEKyJdLycc) @rthatcher namespace org.acme.Block
import composer.events.*
participant Buyer identified by buyerID {
o String buyerID
}
participant Seller identified by sellerID {
o String sellerID
}
participant Warehouse identified by warehouseID {
o String warehouseID
}
asset Order identified by orderNumber {
o String orderNumber
o String status optional
o Items[] Items optional
o Payments[] Payments optional
o String BuyerName optional
o String SellerName optional
o String WarehouseName optional
o String WarehouseID optional
o String invoiceNumber optional
o String orderDate optional
o String BillToAddr optional
o String ShipToAddr optional
o String TotalItems optional
o String totalAmount optional
o String paymentEffectiveDate optional
o String dueDate optional
o String invoice optional
o String payment optional
o String ShipmentStatusByWarehouse optional
o String requestShipment optional
o String AckNo optional
o String OrderResponseBySeller optional
o String OverDue optional
o String PaymentCompleted optional
o String ReqDeliveryDate optional
o String OrderShipmentStatusByWarehouse optional
o String ReqShiporPickupDate optional
o String TotQuantityOrdered optional
o String ShipmentDoneDate optional
o String UnitsShipped optional
o String traceNumber optional
o String payeeName optional
o String payerName optional
--> Buyer buyer
--> Seller seller
--> Warehouse warehouse optional
}
concept Items {
o String itemNumber
o String Quantity
o String Price
}
concept Payments {
o String invoiceNumber
o String amountPaid
}
transaction OrderResponse {
o String BuyerName
o String SellerName
o String orderNumber
o String AckNo
o String orderSellerStatus
--> Order order
--> Buyer buyer
--> Seller seller
}
transaction WarehouseShipmentOrder {
o String SellerName
o String WarehouseName
o String WarehouseID
o String orderNumber
o String ReqDeliveryDate
o String ReqShiporPickupDate
o String TotQuantityOrdered
--> Order order
--> Seller seller
--> Warehouse warehouse
}
transaction WarehouseShipmentAdvice {
o String SellerName
o String WarehouseName
o String WarehouseID
o String orderNumber
o String ShipmentDoneDate
o String UnitsShipped
o String ShipmentStatusByWarehouse
--> Order order
--> Seller seller
--> Warehouse warehouse
}
transaction Invoice {
o String SellerName
o String BuyerName
o String orderNumber
o String invoiceNumber
o Items[] Items
o String dueDate
--> Order order
--> Buyer buyer
--> Seller seller
}
transaction Payment {
o String BuyerName
o String SellerName
o String totalAmount
o String traceNumber
o String payeeName
o String payerName
o Payments[] Payments
o String paymentEffectiveDate
--> Order order
--> Buyer buyer
--> Seller seller
}
[ ](https://chat.hyperledger.org/channel/composer?msg=pAGPNkAzEKyJdLycc) @rthatcher namespace org.acme.Block
import composer.events.*
participant Buyer identified by buyerID {
o String buyerID
}
participant Seller identified by sellerID {
o String sellerID
}
participant Warehouse identified by warehouseID {
o String warehouseID
}
asset Order identified by orderNumber {
o String orderNumber
o String status optional
o Items[] Items optional
o Payments[] Payments optional
o String BuyerName optional
o String SellerName optional
o String WarehouseName optional
o String WarehouseID optional
o String invoiceNumber optional
o String orderDate optional
o String BillToAddr optional
o String ShipToAddr optional
o String TotalItems optional
o String totalAmount optional
o String paymentEffectiveDate optional
o String dueDate optional
o String invoice optional
o String payment optional
o String ShipmentStatusByWarehouse optional
o String requestShipment optional
o String AckNo optional
o String OrderResponseBySeller optional
o String OverDue optional
o String PaymentCompleted optional
o String ReqDeliveryDate optional
o String OrderShipmentStatusByWarehouse optional
o String ReqShiporPickupDate optional
o String TotQuantityOrdered optional
o String ShipmentDoneDate optional
o String UnitsShipped optional
o String traceNumber optional
o String payeeName optional
o String payerName optional
--> Buyer buyer
--> Seller seller
--> Warehouse warehouse optional
}
concept Items {
o String itemNumber
o String Quantity
o String Price
}
concept Payments {
o String invoiceNumber
o String amountPaid
}
transaction OrderResponse {
o String BuyerName
o String SellerName
o String orderNumber
o String AckNo
o String orderSellerStatus
--> Order order
--> Buyer buyer
--> Seller seller
}
transaction WarehouseShipmentOrder {
o String SellerName
o String WarehouseName
o String WarehouseID
o String orderNumber
o String ReqDeliveryDate
o String ReqShiporPickupDate
o String TotQuantityOrdered
--> Order order
--> Seller seller
--> Warehouse warehouse
}
transaction WarehouseShipmentAdvice {
o String SellerName
o String WarehouseName
o String WarehouseID
o String orderNumber
o String ShipmentDoneDate
o String UnitsShipped
o String ShipmentStatusByWarehouse
--> Order order
--> Seller seller
--> Warehouse warehouse
}
transaction Invoice {
o String SellerName
o String BuyerName
o String orderNumber
o String invoiceNumber
o Items[] Items
o String dueDate
--> Order order
--> Buyer buyer
--> Seller seller
}
transaction Payment {
o String BuyerName
o String SellerName
o String totalAmount
o String traceNumber
o String payeeName
o String payerName
o Payments[] Payments
o String paymentEffectiveDate
--> Order order
--> Buyer buyer
--> Seller seller
}
query selectOrders {
description: "Select all Orders"
statement:
SELECT org.acme.Z2BTestNetwork.Order
}
query selectOrdersByBuyer {
description: "Select all orders for a specific buyer"
statement:
SELECT org.acme.Z2BTestNetwork.Order
WHERE (seller.sellerID == _$id)
}
query selectOrdersBySeller {
description: "Select all orders for a specific seller"
statement:
SELECT org.acme.Z2BTestNetwork.Order
WHERE (seller.sellerID == _$id)
}
query selectOrdersBySellerAndStatus {
description: "Select all orders for a specific seller with a specific status"
statement:
SELECT org.acme.Z2BTestNetwork.Order
WHERE (seller.sellerID == _$id AND status == _$status)
}
query getHistorianRecords {
description: "get all Historian records"
statement: SELECT org.hyperledger.composer.system.HistorianRecord
}
@sureshtedla - if you run your query `selectOrders` you will see in the results that `buyer` (a Relationship field) has a value such as `resource:org.acme.Z2BTestNetwork.Buyer#B01`
So your query for Buyers will look something like this:
```
query selectOrdersByBuyer {
description: "Select all orders for a specific buyer"
statement:
SELECT org.acme.Z2BTestNetwork.Order
WHERE (buyer == _$theBuyerID)
}
```
The parameter you then supply for `theBuyerID` will be something like `resource:org.acme.Z2BTestNetwork.Buyer#B01`
hi...recently we faced a problem where all the imported cards in composer rest server stopped working...is there a card expiry limit? if yes then , how do we set it?
Is there a command or some way to quickly eliminate all participants and identities in order to develop faster?
Thank you very much
[ ](https://chat.hyperledger.org/channel/composer?msg=C84ukn9cWoNFkLCLt) @koineramitranjan I have not seen any expiry of certificates in the cards - How old were your cards? What errors did you see that made you suspect expiry? (If you started the REST server - then at least one card has not expired.)
[ ](https://chat.hyperledger.org/channel/composer?msg=7YGhdFcZQ4wco6Hke) @garaujo Are you wishing to remove test data?
Yes
hai, when i try these three cmds:
composer card create -p chain-college.json -u bob -n chain -c bob/admin-pub.pem -k bob/admin-priv.pem
composer card import -f bob@chain.card
composer network ping -c bob@chain
they all return ok!
but when i check the log, found that error while network ping,
but when i use composer identity list,the result shows the admin is ACTIVATED. Then I ping again, there no more errors.
It doesnt matter? or is there some way to avoid the error?
....
2018-09-19 09:18:25.800 UTC [chaincode] processStream -> ERRO 04d Got error: Error: The current identity, with the name 'admin' and the identifier '2ec3d7888291dd169ac3c1e0c0d12d579c6c7a47197fc79dd18ca71ebc11010c', must be activated (ACTIVATION_REQUIRED)
2018-09-19 09:18:25.800 UTC [chaincode] ExecuteChaincode -> ERRO 04e transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '2ec3d7888291dd169ac3c1e0c0d12d579c6c7a47197fc79dd18ca71ebc11010c', must be activated (ACTIVATION_REQUIRED)
github.com/hyperledger/fabric/core/chaincode.Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/exectransaction.go:83
github.com/hyperledger/fabric/core/chaincode.ExecuteChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincodeexec.go:85
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:93
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:132
github.com/hyperledger/fabric/core/endorser.(*Endorser).simulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:265
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:491
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:781
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2337
error executing chaincode
2018-09-19 09:18:25.800 UTC [endorser] simulateProposal -> ERRO 04f [ip-trading][a5a40e87] failed to invoke chaincode name:"xfbipchain" , error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '2ec3d7888291dd169ac3c1e0c0d12d579c6c7a47197fc79dd18ca71ebc11010c', must be activated (ACTIVATION_REQUIRED)
github.com/hyperledger/fabric/core/chaincode.Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/exectransaction.go:83
......
/opt/go/src/runtime/asm_amd64.s:2337
error executing chaincode
[ ](https://chat.hyperledger.org/channel/composer?msg=hM4v7mzwtrSFxTmn5) @garaujo Try looking at this command `composer network reset` https://hyperledger.github.io/composer/latest/reference/composer.network.reset.html
The Business Network remains and the admin@myNetwork card continues to work. But you would need to delete other cards with `composer card delete`
Alternatively if you are running the development fabric, you could re-run `startFabric.sh`, remove the `~/.composer` folder, re-run `createPeerAdminCard.sh` and start again re-installing the Business Network.
Clipboard - September 19, 2018 2:35 PM
I am getting this error while updating my network. I have tried to deploy network from playground and command line as well.
`Error: Error trying to upgrade business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN notice [SECURITY] debug has the following vulnerability: 1 low. Go here for more details: https://nodesecurity.io/advisories?search=debug&version=2.6.2 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info. npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/ npm WARN deprecated hoek@2.16.3: The major version is no longer supported. Please update to 4.x or newer npm WARN deprecated socks@1.1.9: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0 npm WARN deprecated mailcomposer@4.0.1: This project is unmaintained npm WARN deprecated node-uuid@1.4.8: Use uuid module instead npm WARN deprecated buildmail@4.0.1: This project is unmaintained npm ERR! code EINTEGRITY npm ERR! sha512-BfJ6BpFE93xQW69oYfgVQDxSb7LqdQbnddvhFq4tUsj7s0NAIRrrN3fmN2Bi3qpGFRemsKsWPIchw3YNNq2Xjg== integrity checksum failed when using sha512: wanted sha512-BfJ6BpFE93xQW69oYfgVQDxSb7LqdQbnddvhFq4tUsj7s0NAIRrrN3fmN2Bi3qpGFRemsKsWPIchw3YNNq2Xjg== but got sha512-iHxLC40KSd9/fsnYetE5ParWYkiQ6aHoVm/mWwh4LFcT8BpdQ4opv2BmyC5qkNoi8oCzikOp0E92h2xRNtHcPQ==. (154363 bytes) npm ERR! A complete log of this run can be found in: npm ERR! /root/.npm/_logs/2018-09-19T11_25_45_621Z-debug.log "`
Does anyone know where the issue can be?
Playground and composer version - 0.19.14
Thanks in advance
[ ](https://chat.hyperledger.org/channel/composer?msg=X7iz8spaGHgHgtytK) @rthatcher 1- Thanks for the information. I can understand the concept of CA's issuing identities for participants. But let's say in the Car Auction example I want each seller/buyer to be a separate organization, each with their own endorser peers etc. And then after creating that architecture how do I define the endorsement policy?
2- I still cannot understand where does the app comes in? In my mind I have 10 seller/buyers constantly submitting bids/asks and trading cars. I cannot see the app in my confused imagination.
[ ](https://chat.hyperledger.org/channel/composer?msg=taWWAEhk8EFjDmaQf) @abityildiz I have not worked with this tutorial.
I'm not seeing any Errors in that screenshot - just warnings. But the last warning is about mongo, so I check that first:
Is the mongo container running? Is the mongo container running on the same network bridge as the rest server?
Is the package loopback-connector-mongodb properly installed in the rest container?
[ ](https://chat.hyperledger.org/channel/composer?msg=gnreWSb9JF2z7pMGq) @ra_w I have not seen this error before. But reading of similar problems on Stack Overflow suggests it might be a network connectivity problem, so retrying later may help.
If you are upgrading, I assume that you were able to "deploy" an earlier version of the network which suggests nothing fundamental is wrong. Has anything changed on your environment - have you installed/upgraded/removed any components?
[ ](https://chat.hyperledger.org/channel/composer?msg=BiMDBdWMAsivaJayZ) @rthatcher Thanks It was the network error, I was getting different npm package error everytime I upgrade the network. Got it resolved now.
[ ](https://chat.hyperledger.org/channel/composer?msg=BiMDBdWMAsivaJayZ) @rthatcher Thanks @rthatcher It was the network error, I was getting different npm package error everytime I upgrade the network. Got it resolved now.
@tahaf10 there's an example in the docs (Historian) https://hyperledger.github.io/composer/latest/business-network/historian - scroll down, you'll see a query for date range between 'now' and a particular transactionTimestamp (Datetime)
thanks @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=WuSKh6dEBzocSjAhz) @mahoney1 I posted it on S/O: https://stackoverflow.com/questions/52407083/hyperledger-composer-object-with-id-x-in-collection-with-id-y-does-not-exist
please take a look at this post when you have time
Clipboard - September 19, 2018 4:48 PM
Clipboard - September 19, 2018 4:49 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=LB767pNTg745JRG6g) @rthatcher my problem like this : https://stackoverflow.com/questions/50312488/hyperledger-composer-rest-server-error-trying-to-ping-error-no-peers-availab
Has joined the channel.
Has joined the channel.
@mahoney1 @rthatcher https://stackoverflow.com/questions/52407083/hyperledger-composer-object-with-id-x-in-collection-with-id-y-does-not-exist
@abityildiz - where does the address 192.168.70.205 come from ? And why is it in the connection.json?
any plans on implementing matrix for modeling language?
[ ](https://chat.hyperledger.org/channel/composer?msg=zFnveo6puqrTXwZjK) @VadimInshakov I think you need to add an ACL rule for your BusinessNetwork namespace `data.ru`. The default if a permissions.acl file is present is to deny access.
```
rule Default {
description: "Allow all participants access to all resources"
participant: "ANY"
operation: ALL
resource: "data.ru.*"
action: ALLOW
}
```
Or as a test you could completely remove the permissions.acl file - which then has the default of complete access for all.
@giacomo.minighin Sorry, no plans
From a nodejs application I am creating participants and then making an issueIdentity with those participants but for some reason the identities are in the Issue state and not in the Activated state. Does anyone know why this is the case or how can I solve it?
[ ](https://chat.hyperledger.org/channel/composer?msg=AXmcinDAhqyey6C5t) @garaujo Identities are in ISSUED state until first used then they are ACTIVATED - you don't need to do anything except use the card. When the card is first used the one-time secret is used and the Credentials are stored in the Wallet.
Team, On Ibm blockchain plateform , is it possible to get access of couchdb (state database )for each organization peer ?
@kapila123 You would have to ask IBM that question I'm afraid
Has joined the channel.
Clipboard - September 20, 2018 9:36 AM
Hello, is it possible to uninstall and reinstall a business network on a fabric network without tearing fabric down ? I tried the solution given [here](https://github.com/hyperledger/composer/issues/3235), but it does not seem to work for me. I can reinstall the business network all right, but I cannot start it (because the 'chaincode already exists'). Are you guys able to do it ? just to know if there is something wrong with my setup. Thx
@abityildiz you have a networking/resolution issue - the answers in these S/Os should help explain https://stackoverflow.com/questions/50312488/hyperledger-composer-rest-server-error-trying-to-ping-error-no-peers-availab or https://stackoverflow.com/questions/50872000/use-docker-container-composer-rest-server-to-generate-rest-api-appearsrequest-t
[ ](https://chat.hyperledger.org/channel/composer?msg=FjBpWbGYm7BrEfwuG) @jesro The first time you 'deploy' a Business Network, you *Install then Start* it. If you make changes and want to apply them you *Install and Upgrade*. The Queries tutorial has an example of the steps needed to Upgrade. https://hyperledger.github.io/composer/latest/tutorials/queries
If you want to remove your test data - you could investigate the `composer network reset` command.
[ ](https://chat.hyperledger.org/channel/composer?msg=FjBpWbGYm7BrEfwuG) @jesro The first time you 'deploy' a Business Network, you *Install then Start* it. If you make changes and want to apply them you *Install and Upgrade*. The Queries tutorial has an example of the steps needed to Upgrade. https://hyperledger.github.io/composer/latest/tutorials/queries
If you want to remove your test data - you could investigate the `composer network reset` command.
(BTW the issue you referred to has some information relating to an earlier version of composer which no longer applies - "undeploy")
Clipboard - September 20, 2018 11:23 AM
@rthatcher Ok the correct workflow is to upgrade. Thank you
Please pay attention to this question: https://stackoverflow.com/questions/52407083/hyperledger-composer-object-with-id-x-in-collection-with-id-y-does-not-exist/52409029#52409029
Very strange bag, I'm not the only one who has this problem
Please pay attention to this question: https://stackoverflow.com/questions/52407083/hyperledger-composer-object-with-id-x-in-collection-with-id-y-does-not-exist/52409029#52409029
Very strange bag, I'm not the only one who has this problem (it was described earlier here: https://jira.hyperledger.org/browse/FAB-10091)
Hai, When i use composer-rest-server to start an api server at a remote server
like: composer-rest-server -c alice@chain -n never -w true -p 3000
it is ok at beginning, but after a while(maybe an hour), i try to connect to it, i found the port closed and the composer-rest-serve process quit.but the cmd output is still show it working like:
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
Is there any timeout setting for this or any other reason about network?
Hi, I am facing some issues in using composer with multi-user setup. I am not able to ping the network with the issued identities. Can anyone please help me out here: https://stackoverflow.com/questions/52422806/hyperledger-composer-multi-user-mode-econnrefused-for-issued-identities
@touchingsoil There certainly isn't any timeout that would close the listening socket as far as I know. Have you tried accessing the remote server via a terminal session and checking the server is still listening on port 3000 ?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=dSg4obzNwNNNHcce2) @rthatcher @rthatcher Exactly. That was I understand. But what is use for first time the card, connect to the bussiness network with the card for example?
@garaujo - on the command line I would do something simple like `composer network ping` or `composer network list`
[ ](https://chat.hyperledger.org/channel/composer?msg=n6HzCEBazyjnRLxy6) @rthatcher And with the nodejs SDK. Im didn't found how with the sdk.
@garaujo `await BusNetworkConnection.connect(idCardName);` - see example here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#cardapis
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=izegLk5pnMAkQQbat) @mahoney1 @I will try. Thank you very much
What happens if I define a rule that allows an operation over an asset and then I define another rule that in some conditions denies it?
[ ](https://chat.hyperledger.org/channel/composer?msg=Mpmv3QmZzdhZLrsvo) @giacomo.minighin from the doc ...
"Access control for a business network is defined by an ordered set of ACL rules. The rules are evaluated in order, and the *first rule whose condition matches determines whether access is granted or denied*. If no rule match then access is denied. "
https://hyperledger.github.io/composer/latest/reference/acl_language
@mahoney1 @rthatcher we need your help! https://stackoverflow.com/questions/52407083/hyperledger-composer-object-with-id-x-in-collection-with-id-y-does-not-exist
@rthatcher so there is no way to revoke access from an asset only in a specific condition?
Hello, I am using composer tutorial to deploy bna to single org fabric network. I have deployed and successfully created PeerAdmin and Network Admin card. I am using network admin card connection to add Participants and issue identities. However, after some time the participants are not getting added. I used composer-ping to check the network admin card connection, it works fine. I also checked the docker logs, couldn't find anything. Please suggest.
Hello, I am using composer tutorial to deploy bna to single org fabric network. I have deployed and successfully created PeerAdmin and Network Admin card. I am using network admin card connection to add Participants and issue identities. However, after some time the participants are not getting added. I used composer-ping to check the network admin card connection, it works fine. I also checked the docker logs, couldn't find anything. Please suggest.```
I have restarted the network 2-3 times, but the issue remains. Any help would be appreciated, thanks.
Hello, I am using composer tutorial to deploy bna to single org fabric network. I have deployed and successfully created PeerAdmin and Network Admin card. I am using network admin card connection to add Participants and issue identities. However, after some time the participants are not getting added. I used composer-ping to check the network admin card connection, it works fine. I also checked the docker logs, couldn't find anything. Please suggest.
I have restarted the network 2-3 times, but the issue remains. Any help would be appreciated, thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=NBtJNoLfxXmLHuq5a) @giacomo.minighin you can define a rule that evaluates a condition, true or false - so access can be denied if circumstances deny an operation on an asset, where previously it was allowed
thanks :)
@rahul703 restarting a new network (fabric?) means you may have created new containers, but still got old cards in the credentials directory. Suggest to do https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial (having made sure you cleared up correctly) and see that you can add multiple participants OK (connect to your biz network on the Fabric with playground) ?
@mahoney1 I removed/deleted all the cards(.composer/cards) before restarting the fabric network containers. I am using javascript/npm modules to connect in nodejs. When I am adding participants its getting added for some time, then it stops after some time. Doesn't even throw any error, like - already exists or Authorization failure.
@mahoney1 I removed/deleted all the cards(.composer/cards) before restarting the fabric network containers. I am using javascript/npm modules to connect in nodejs. When I am adding participants its getting added for some time, then it stops after some time. Doesn't even throw any error, like - already exists or Authorization failure. Here's the code- ```
await bizNetworkConnection.connect('admin@asset-network');
let factory = bizNetworkConnection.getBusinessNetwork().getFactory();
let ownerRegistry = bizNetworkConnection.getParticipantRegistry('network.org.asset.assetOwner');
ownerRegistry.then(async function(ownerRegistryRes){
var assetOwner = await factory.newResource('network.org.assetManagementAndValuation', 'assetOwner', ownerEmail); //ownerEmail will be provided as ownerID
assetOwner.name = ownerName;
assetOwner.location = ownerLocation;
assetOwner.email = ownerEmail;
await ownerRegistryRes.add(assetOwner) })
```
@mahoney1 I removed/deleted all the cards(.composer/cards) before restarting the fabric network containers. I am using javascript/npm modules to connect in nodejs. When I am adding participants its getting added for some time, then it stops after some time. Doesn't even throw any error, like - already exists or Authorization failure. Here's the code- ```
await bizNetworkConnection.connect('admin@asset-network');
let factory = bizNetworkConnection.getBusinessNetwork().getFactory();
let ownerRegistry = bizNetworkConnection.getParticipantRegistry('network.org.asset.assetOwner');
ownerRegistry.then(async function(ownerRegistryRes){
var assetOwner = await factory.newResource('network.org.asset', 'assetOwner', ownerEmail); //ownerEmail will be provided as ownerID
assetOwner.name = ownerName;
assetOwner.location = ownerLocation;
assetOwner.email = ownerEmail;
await ownerRegistryRes.add(assetOwner) })
```
Clipboard - September 20, 2018 5:08 PM
Clipboard - September 20, 2018 5:09 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=DvTpCv2wyboGFZRjn) @mahoney1 i have get this error.
[ ](https://chat.hyperledger.org/channel/composer?msg=CRR32tpMcm6Tj5c5Y) @rthatcher @rthatcher Thanks Its working
@rthatcher in order asset i am having status field i want to know status of particular order status by using orderNumber?
Clipboard - September 20, 2018 8:01 PM
Clipboard - September 20, 2018 8:01 PM
@rthatcher
@rthatcher Can you please help me
anybody please help: https://stackoverflow.com/questions/52407083/hyperledger-composer-object-with-id-x-in-collection-with-id-y-does-not-exist
[ ](https://chat.hyperledger.org/channel/composer?msg=YevfLf2Mpgai9B9Gp) @sureshtedla You will have seen from your other Queries that the returned result is an Object or an Array of Objects, not an individual property - so you will have to write code to extract the property you want.
What are you using the property "status" for? - you might want to consider using an Enumerated Type for this field if it has a discrete list of possible values.
[ ](https://chat.hyperledger.org/channel/composer?msg=RjCjNxG9Pimzh3Lh8) @rthatcher i am not using Enumerated Type for status
@rthatcher status may be accepted , rejected etc
@rthatcher How to retrive individual property?
Hi All,
I have update composer cli as well as composer-rest-server version. My versions for the packages are as below:
+-- composer-cli@0.20.1
+-- composer-rest-server@0.20.1
+-- generator-hyperledger-composer@0.20.1
+-- passport-github@1.1.0
+-- typings@2.1.1
`-- yo@2.0.5
But when I am trying to ping the network it comes up with below error:
Error trying to ping. Error: Composer runtime (0.19.14) is not compatible with client (0.20.1)
I have cross checked the versions and restarted the machine again and it seems this error is persisting and refuse to go. Can anyone suggest me how to resolve this?
@ManishKhobragade Did you also import the peer and network admin card after restarting the machine, or are you using older one?
@ManishKhobragade Did you also import the peer and network admin card after updating the versions/restarting the machine, or are you using older one?
@rahul703 i created the new cards and imported new one
@ManishKhobragade I would suggest you to reboot fabric(stopFabric.sh, teardownFabric.sh and startFabric.sh) and deploy the bna again and check.
@ManishKhobragade I would suggest you to reboot fabric(stopFabric.sh, teardownFabric.sh and startFabric.sh) and deploy the bna again and check. Also check out this link - https://github.com/hyperledger/composer/issues/4336
@rahul703 Already tried with that. still it wont works.
@rahul703 Already tried with that. still it wont work.
@ManishKhobragade you have deployed a business network using 0.19.14 of composer, so your business network is running with the 0.19.14 of the composer runtime. However you have upgraded your client version to 0.20.1. 0.20.1 cannot be used
a) with a runtime at a lower minor version level (ie 19 runtime and 20 client)
b) 0.20 can only work with a fabric 1.2 environment anyway and you would have to be running fabric 1.1 if you are using a composer runtime of 0.19
So uninstall composer-cli, rest server etc and re-install with the `@19` version tag
In case of multi user mode, I understand that the cards of the user are stored in wallets on the REST server. And access to these wallets are secured via authentication. However, where can I find these cards? When I'm using docker exec command to get into the rest server container, I do not see the cards that I imported using rest service.
@mrudav.shukla The rest server only uses the composer card store mechanism for the discovery card (ie the one you start the rest server using the -c option with). For multi-user store it stores them in a different store (depending on what you have configured the rest server to use. The default is an in memory store. See https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server.html for information about configuring a persistent data store
Hello, I am using "composer participant add -c ........." cli command to add participant in network. The command gets succeeded, but i am not able to view the participant after that. I am using network admin connection to do so, which has all the permissions defined in ACLs. What can be the possible issue. Please help.
@rahul703 are you using composer 0.20 and fabric 1.2 ?
@rahul703 are you using composer 0.20 and fabric 1.2 and you did use composer 0.20 to install and start the business network ?
[ ](https://chat.hyperledger.org/channel/composer?msg=enc68TGupc9F5FJwq) @davidkel I use SecureCRT to connect to the remote server, the cmd is executed from this terminal, at last i find the port is closed and the composer-rest-server process quit when the terminal connection session timeout or the terminal window closed. So, is there any method to solve this problem. making the process not depend on the terminal?
[ ](https://chat.hyperledger.org/channel/composer?msg=enc68TGupc9F5FJwq) @davidkel I use SecureCRT to connect to the remote server, the cmd is executed from this terminal, at last i find the port is closed and the composer-rest-server process quit when the terminal connection session timeout or the terminal window closed. So, is there any method to solve this problem. making the process not depend on the terminal? i try to add & at the end of the cmd, it doesnt work.
Has joined the channel.
How to excute one hyperledger composer transaction in two hours timeInterval
Hi all I am rebuilding an old system with hyperledger composer, and the data format in old system is quite complicated
Hi all I am rebuilding an old system with hyperledger composer, and the data format in old system is quite complicated, for example an asset is defined by a json object with 7 layers (one object has child object which has its child object ... ) . I wrote a same model with composer modeling language, used concept to write the definition of child object and then combined all child objects into one object. but I found that when I test this model the tps is very low, at about 5tx/s. I have tested simple simple chaincode in the same network and the tps is about 50 tx/s. So is this mean that building complex json object is a bad idea in composer?
Hi all I am rebuilding an old system with hyperledger composer, and the data format in old system is quite complicated, for example an asset is defined by a json object with 7 layers (one object has child object which has its child object ... ) . I wrote a same model with composer modeling language, used concept to write the definition of child object and then combined all child objects into one object. but I found that when I test this model the tps is very low, at about 5tx/s. I have tested simple chaincode in the same network and the tps is about 50 tx/s. So is this mean that building complex json object is a bad idea in composer?
composer-rest-server won't generate api endpoints for concepts right?is that means concepts are only meant to be added with participants or assets?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=yMhzsmQHPffHtrgLs) @MuhammedHafil yes!
Has joined the channel.
Hello Everybody
I am facing below error when i started service on 2nd machine.
Error: Error connecting due to rpc error: code = Unavailable desc = grpc: the connection is unavailable
For resolving above error, I had changed orderer.example.com:7050 to my local IP address (192.168.5.199:7050) in startFabric-Peer2.sh file . But when i am running this on 2nd machine it again showing me errors as
docker exec -e “CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp/users/Admin@org1.example.com/msp” peer2.org1.example.com peer channel fetch config -o 192.168.5.199:7050 -c composerchannel
2018-09-17 13:58:18.608 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2018-09-17 13:58:18.608 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2018-09-17 13:58:18.610 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized
2018-09-17 13:58:18.610 UTC [msp] GetLocalMSP -> DEBU 004 Returning existing local MSP
2018-09-17 13:58:18.610 UTC [msp] GetDefaultSigningIdentity -> DEBU 005 Obtaining default signing identity
2018-09-17 13:58:18.611 UTC [msp] GetLocalMSP -> DEBU 006 Returning existing local MSP
2018-09-17 13:58:18.611 UTC [msp] GetDefaultSigningIdentity -> DEBU 007 Obtaining default signing identity
2018-09-17 13:58:18.611 UTC [msp/identity] Sign -> DEBU 008 Sign: plaintext: 0AC9060A1B08021A0608FAE5FEDC0522…94607C4A684C12080A020A0012020A00
2018-09-17 13:58:18.611 UTC [msp/identity] Sign -> DEBU 009 Sign: digest: 41C793427C7C30635AD44D9E308E395109E2D4630D49DA40D1F2C98BF1F441BD
2018-09-17 13:58:18.613 UTC [channelCmd] readBlock -> DEBU 00a Got status: &{NOT_FOUND}
Error: can’t read the block: &{NOT_FOUND}
I am totally unable to understand it where the issue is and how to resolve it. Can anybody please help me in resolving this? `
One more question: Is composer 0.19 version is compatible with Fabric 1.0.4 version?
[ ](https://chat.hyperledger.org/channel/composer?msg=zAoBdsSqtXb5b6A5P) @davidkel @davidkel I just setup new fabric on my machine with "hlfv12" scripts. So it is fabric 1.2 that is running on my machine. I created new BNA file out of my network and deployed the new BNA on the fabric 1.2.
Is there any other way I can fix this without downgrading my composer versions?
I really want to use fabric 1.2 and new composer versions.
I can't use https://composer-playground.mybluemix.net/ because I have this error on console: Uncaught SyntaxError: Unexpected identifier
[ ](https://chat.hyperledger.org/channel/composer?msg=aaPuG7nkzSQAsgqkJ) @touchingsoil You could create a Linux system service, or for testing you could investigate the `nohup` command.
[ ](https://chat.hyperledger.org/channel/composer?msg=tyosg3MoidS5B4WXC) @KindleBitSoln - no Composer v0.19 is for Fabric 1.1 only. The list of compatibility between Composer and Fabric is in the Release Notes : https://github.com/hyperledger/composer/releases
[ ](https://chat.hyperledger.org/channel/composer?msg=kfgxfuF5PjY9Guxfq) @KindleBitSoln - if you have problems/errors setting up the Fabric, I would suggest asking your question in the #fabric channel.
我用hyperledger composer 定义了一个transaction,我想在里面每隔两小时调用另外一个transaction,怎么办?
@rthatcher Too Many Thanks!!
[ ](https://chat.hyperledger.org/channel/composer?msg=Ek6C5auGvaxqYcw6P) @giacomo.minighin Is this an error with a Transaction, or a problem starting composer-playground in the browser?
it's a problem starting the app
[ ](https://chat.hyperledger.org/channel/composer?msg=tSNbjYD2izvReFNtP) @giacomo.minighin Oh - I just tested it in Firefox and Chrome and it worked OK. What Browser are you using?
Have you tried using a Private or Incognito window? I would also suggest clearing the local storage in the browser.
On windows I have this error on chrome, on firefox it works. On ubuntu I don't have any problem on chrome and on firefox
@ManishKhobragade If you definitely used 0.20 to install and start the bna, then I guess you have used playground to download the deployed bna from a 1.1 system. So this bna will have references to the 0.19 composer runtime. You should either go to your local source of the business network and using the cli to recreate the bna or you need to take your bna and unzip it. In both cases check your package.json file and remove any dependencies that say `composer-runtime-hlfv1` and `composer-common`.
I've tried to clear site data but nothing changed
@giacomo.minighin It works for me on chrome and windows, does it still fail if you close any incognito windows you might have open, open a new incognito window and load the url again ?
[ ](https://chat.hyperledger.org/channel/composer?msg=synAb3j5mDw9ar3dF) @davidkel yes
I've tried with incognito and worked
@rahul703 Where did you get your fabric 1.2 from ?
@giacomo.minighin your clearing of site data wasn't enough I'm afraid. What needs to be cleared is local storage. One way to explicitly clear local storage is to go into chrome developer tools and select the console tab. then type in `localstorage.clear()` and the should clear localstorage
[ ](https://chat.hyperledger.org/channel/composer?msg=dzjnEp4CnHPa9HfvP) @davidkel here - https://github.com/hyperledger/composer-tools/tree/master/packages/fabric-dev-servers/fabric-scripts
Ho to deploy Hyperledger fabric in production environment any links for that
[ ](https://chat.hyperledger.org/channel/composer?msg=ew9qsN33fmveKM8Pk) When I'm using composer npm modules, is there any specific node version I should use?
@rahul703 ok, thanks just wanted to confirm. So if there isn't a problem with the implementation of your ACLs (and a quick way to check is to upgrade the bna without an ACL file, no ACL file means all participants have full access) then it's one of 2 things
1. A problem with the way that fabric is configured
2. A bug in fabric itself
Fabric themselves have other sample fabric setups for 1.2 you can try (https://github.com/hyperledger/fabric-samples) but you would need to build a connection profile yourself to match whichever fabric you choose to use.
Alternatively you can drop back to fabric 1.1 and composer 0.19
[ ](https://chat.hyperledger.org/channel/composer?msg=pdQjT3d2nATymqJy4) @Jyotirmoy - this channel is fr Composer questions :-) I would suggest asking in the #fabric channel
@rahul703 At the moment the most likely possibility is that it is a bug in fabric 1.2 (but trying official fabrics from their samples would confirm it and it could be a config problem with the simple dev server we provide). Unfortunately it looks like fabric 1.2.1 which may contain a fix has no confirmed release date. I believe it is possible to get hold of pre-release builds of 1.2.1
```
in the meantime, people can pull latest binaries and images that will comprise v1.2.1 by using this script:
https://github.com/hyperledger/fabric/blob/master/scripts/pull_build_artifacts.sh
replace 1.3.0 with 1.2.1
```
https://github.com/hyperledger/fabric-ca Anyone know any github sample code for this?
[ ](https://chat.hyperledger.org/channel/composer?msg=wqBSd6G6fDgLCytXr) @varunagarwal there is a specific #fabric-ca channel where this question could be answered ;-)
[ ](https://chat.hyperledger.org/channel/composer?msg=9vDck7KLufGQyziDP) @davidkel will try. thanks
@rahul703 If you do try different 1.2 fabrics (or 1.2.1) I would be interested to know how you get on
anybody please help: https://stackoverflow.com/questions/52407083/hyperledger-composer-object-with-id-x-in-collection-with-id-y-does-not-exist
earlier everything worked with the same sequence of steps
@VadimInshakov The posted answer did not work?
[ ](https://chat.hyperledger.org/channel/composer?msg=KDMrsEp59SSin4xiz) @davidkel sure
[ ](https://chat.hyperledger.org/channel/composer?msg=cziJCkzfQ2MCveCSw) @varunagarwal no, I commented that error remain the same
how did you install your code?
Your permissions.acl file is exactly the same as mine, so that is clearly not the issue, which leaves a possible problem in installing and starting the docker images itself
@VadimInshakov Lets rule out some problems? Generate the bna file using `composer archive create -t dir -n .` and upload it to https://composer-playground-unstable.mybluemix.net/login and run it. Submit the transaction and see if it works, if it does then the issue is in the installing and we can see that
if not, I can help you debug the chaincode files
ahhhh your logic.js file. `let` does not work, you have to use `var` last I checked.
first compile the bna and deploy, lets see if the chaincode runs properly
@varunagarwal thank you, now I will do it
ok, ping me accordingly, I will be online for long time.
@varunagarwal I can't download .bna, coz `Error: Error trying to ping. Error: Failed to connect before the deadline`, but I can post sources to playground manually
ok try that
Has joined the channel.
@varunagarwal yes, it works!
I submited transaction successfully
ok so now your local installation is causing the issue.
in your command line, start by typing `composer --v` and tell me what comes
@varunagarwal 0.20.1
fabric 1.2
can you use 1.1?
I think 1.2 has some bugs in it, though it has more features
@varunagarwal I tried it, all the same
wait
mind doing a clean install again?
@varunagarwal ok, I can
Can anybody tell me which composer version will be compatible with fabric 1.0.4?
This is not clear here on ref link
There are multiple support splits across differing Fabric levels, so please be careful with what versions are being used:
v0.20.0 and above are compatible with the Fabric 1.2.0 driver only
v0.18.2, v0.19.0 and above are compatible with the Fabric 1.1.0 driver only
v0.18.0 -> v0.18.1 are compatible with the Fabric RC1 driver only
v0.17.3 -> v0.17.6 are compatible with Fabric alpha driver only
v0.17.0 -> v0.17.2 are compatible with Fabric preview driver only
This is not clear here on ref link
There are multiple support splits across differing Fabric levels, so please be careful with what versions are being used:
"v0.20.0 and above are compatible with the Fabric 1.2.0 driver only
v0.18.2, v0.19.0 and above are compatible with the Fabric 1.1.0 driver only
v0.18.0 -> v0.18.1 are compatible with the Fabric RC1 driver only
v0.17.3 -> v0.17.6 are compatible with Fabric alpha driver only
v0.17.0 -> v0.17.2 are compatible with Fabric preview driver only"
Last three not specified with which version they will be fit
@KindleBitSoln 0.16.6 but no further fixes will be provided for that release and it really was a preview version only as we needed node.js support in 1.1 to make it more ready for non development use
Okay
And what about command for that version?
Will composer commands will be different as i am using in 0.19 version of it?
Will composer commands in 0.16 will be different as i am using in 0.19 version of it?
yes they are different @KindleBitSoln
@varunagarwal okay
@varunagarwal Can you send any ref link where all commands are available for 0.16?
@KindleBitSoln https://hyperledger.github.io/composer/v0.16/
@davidkel Thanks
Hi, i want to add a participant and use the newly added participant's identifier to be used later in transaction, how will i achieve that . my models looks like this
Hi, i want to add a participant and use the newly added participant's identifier to be used later in transaction, how will i achieve that . my models looks like this
thanks
Screenshot from 2018-09-21 16-10-37.png
Screenshot from 2018-09-21 16-11-13.png
`getFullyIdentifierQualifier()` should work
identified*
correctly i am getting error found object instead of string. because i did not sent namespace and identifier.
Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration {name=cutomer, type=org.isn.customer.Customer, array=false, optional=false}
What is the difference between connecting to the adminConnection and importing the card with the imporCard method? Or on the other hand, connect to the BussinessNetworkConnection with the admin card and use the put method of the cardStore?
Thank you
@garaujo you should not be interacting with the cardstore apis directly. putting a card just into a card store doesn't guarantee that card will be usable
[ ](https://chat.hyperledger.org/channel/composer?msg=mPXkMnBFCyu6MuLqK) do i need to set that as not a relationship?
[ ](https://chat.hyperledger.org/channel/composer?msg=mPXkMnBFCyu6MuLqK) do i need to set that as not a relationship? and direct set as type customer instead to not get this error
Invalid JSON data. Found a value that is not a string: [object Object] for relationship RelationshipDeclaration {name=cutomer, type=org.isn.customer.Customer, array=false, optional=false}
@MuhammedHafil It has to be `factory.newRelation()` and not `newResource()`
newRelation or newRelationship?
newRelationship
:)
[ ](https://chat.hyperledger.org/channel/composer?msg=ACQFNz4gBq8d5g8yw) @rthatcher Is there any couchDB version compatibility with Fabric 1.1?
I meant to say what couch DB version will used with 1.1 version
?
Fabric v1.1 and up has been tested against CouchDB 2.1.1
It is possible to select the directory where the cards are stored. By default they are being saved in ~ / .composer but I would like to know if from the script.sh that I launched to launch my fabric I can select where to store the admins cards.
@garaujo see https://hyperledger.github.io/composer/latest/business-network/cloud-wallets
Pero no entiendo como podría desde el comando
composer card create -p /tmp/composer/org1/byfn-network-org1.json -u PeerAdmin -c /tmp/composer/org1/Admin@org1.example.com-cert.pem -k /tmp/composer/org1/*_sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@byfn-network-org1.card
indicarle que quiero almacenar la card de PeerAdmin@byfn-network-org1 en un directorio como puede ser /tmp/cards/org1
He intentado seteando antes del script la variable de entorno:
export NODE_CONFIG={"composer":{"wallet":{"type":"composer-wallet-filesystem","options":{ storePath: '/tmp/cards/org1'}}}}
Pero sigue almacenandolo en ~/.composer
But I do not understand how I could from the command
composer card create -p /tmp/composer/org1/byfn-network-org1.json -u PeerAdmin -c /tmp/composer/org1/Admin@org1.example.com-cert.pem -k / tmp / composer / org1 / * _ sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@byfn-network-org1.card
tell you that I want to store the PeerAdmin card @ byfn-network-org1 in a directory such as / tmp / cards / org1
I tried setting the environment variable before the script:
export NODE_CONFIG = {"composer": {"wallet": {"type": "composer-wallet-filesystem", "options": {storePath: '/ tmp / cards / org1'}}}}
But keep storing it in ~ / .composer
[ ](https://chat.hyperledger.org/channel/composer?msg=MpZbXopDo3iWjCtW5) @dave.enyeart - @KindleBitSoln and the fabric-couchdb container version will be v0.4.6
can anybody tell why this code does not create customer participant and order asset ? it only creates placeOrder transaction
Screenshot from 2018-09-21 18-28-13.png
Screenshot from 2018-09-21 18-27-50.png
@MuhammedHafil You need do add the customer to the customerRegistry
Screenshot from 2018-09-21 18-47-32.png
@MuhammedHafil read the documentation here: https://hyperledger.github.io/composer/v0.19/api/api-doc-index
@MuhammedHafil sorry, here: https://hyperledger.github.io/composer/v0.19/reference/js_scripts
@MuhammedHafil your code is wrong, your `customer` variable is not in scope when you try to access it.
Has joined the channel.
Is there a way to retrieve the access_token from the REST server easily when I use the github passport auth?
@BernardoAlves see https://stackoverflow.com/questions/51689378/accessing-hyperledger-composer-rest-server-access-token-from-frontend-client - there's also a programmatic method in the answer of this [Stack Overflow](https://stackoverflow.com/questions/51946208/not-able-to-do-a-post-request-to-an-authenticated-hyperledger-composer-rest-serv) fyi
Yes, this way I could accomplish... actually I'm using PHP. Should have an endpoint or a easy way to fetch the access_token from the REST server. I did this workaround and is working:
$ch = curl_init('http://localhost:3001/auth/github/callback?code=' . $request->query->get('code'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
$result = curl_exec($ch);
preg_match_all('/^Set-Cookie:\s*([^;]*)/mi', $result, $matches);
$cookies = array();
foreach($matches[1] as $item) {
parse_str($item, $cookie);
$cookies = array_merge($cookies, $cookie);
}
$ret = explode('s:',$cookies['access_token']);
$access_token = explode('.', $ret[1]);
$access_token = $access_token[0];
Hello!
Is it possible to define a query something like this:
```
query selectTasksFromProcess {
description: "Select all task from a process"
statement:
SELECT org.quanopt.composer.Task
WHERE ( ownerProcessId==_$pId) AND (choiceId CONTAINS [ _$cId ]) )
}
```
Hello!
Is it possible to define a query something like this:
```
query selectTasksFromProcess {
description: "Select all task from a process"
statement:
SELECT org.quanopt.composer.Task
WHERE ( ownerProcessId==_$pId) AND (choiceId CONTAINS [ _$cId ]) )
}
```
Where choiceId is a string array, I would like to use a variable as a search option.
Hello!
Is it possible to define a query something like this?
```
query selectTasksFromProcess {
description: "Select all task from a process"
statement:
SELECT org.quanopt.composer.Task
WHERE ( ownerProcessId==_$pId) AND (choiceId CONTAINS [ _$cId ]) )
}
```
Where choiceId is a string array, I would like to use a variable as a search option.
Hello!
Is it possible to define a query something like this?
```
query selectTasksFromProcess {
description: "Select all task from a process"
statement:
SELECT org.quanopt.composer.Task
WHERE ( ownerProcessId==_$pId) AND (choiceId CONTAINS [ _$cId ]) )
}
```
Where choiceId is a string array, I would like to use a variable as a search option.
[ ](https://chat.hyperledger.org/channel/composer?msg=QgmakXJpdrdt94DF6) @Levilk that Query should work OK, but you don't want the [] so it would look like this `AND (choiceId CONTAINS _$cId ) `
There are good examples of Queries in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#queries
is it possible to let a partecipant access only some variables of an asset?
[ ](https://chat.hyperledger.org/channel/composer?msg=wKRKahr2rAA7fTTRk) @giacomo.minighin No, the ACLs don't go down to the field level.
@rthatcher if I extend the asset with private variables and then I use a transaction to return the base asset?
Hi guys, i got an strange behavior, i installed my multiorg blockchain and tested with playground, everything was fine, i created my 3 participants through playground, add them to my wallet, i locked my computer and went home, now i came back to proceed with the access rules tutorial and when i wanted to switch the participant i find that my IDs say BOUND PARTICIPANT NOT FOUND, and i go to the participants registry and there is none, what happened?, i did not reset anything, i did not shut down any hyperledger image etc
[ ](https://chat.hyperledger.org/channel/composer?msg=u9BAFyvFNxEZNxSxM) @giacomo.minighin Composer does not support the Fabric 1.2 feature of 'Private Data'
[ ](https://chat.hyperledger.org/channel/composer?msg=z258LQq4M6e2bnnpD) @juan.gzz.salz Have you created an ACL Rule that prevents you seeing the participant registry?
You could do some checking on the command line with `composer card list` and `composer identity list -c
Ooooh right, you are totally right, thank you!
@rthatcher
Ooooh right, you are totally right, thank you!
Has joined the channel.
iam using windows mechine many of the bash commands will not works on my mechine and my ibm cloud shows the plan is lite but i can't able to update
@rthatcher I don't think I need private data.
One participant has an asset that has a value and some other values that I want to keep secret, another one has an asset with a value that has to update when the value of the other participant's asset changes
Hello guys .. I am new to Hyperledger Composer
Just started 10days before..
I am following installation and other steps from official HL site..
Can you please help me and guide me ... from where to start and know all the terms and infra and their interaction ?
Has joined the channel.
How can I return custom response from transaction processor function instead of just throwing error? I want to do something like return new Response().status(500).send();.
Clipboard - September 22, 2018 8:35 PM
Can I use array instead of a string for the resource value in the .acl file
to add more then one resource in a rule?
For example:
rule R1 {
description: "Fred can DELETE the car ABC123"
participant: "org.example.Driver#Fred"
operation: DELETE
resource: ["org.example.Car#ABC123", "org.example.Car#AnotherResource123"]
action: ALLOW
}
Can I use array instead of a string for the resource value in the .acl file
to add more then one resource in a rule?
For example:
rule R1 {
description: "Fred can DELETE the car ABC123 and AnotherResource123"
participant: "org.example.Driver#Fred"
operation: DELETE
resource: ["org.example.Car#ABC123", "org.example.Car#AnotherResource123"]
action: ALLOW
}
Kindly tell me where I can find the details of all the classes in org.hyperledger.composer.system
Has joined the channel.
Any experts of composer-cucumber component
hello guys.
I'm going to introduce kafka into composer by making reference to "Hyperledger-fabricdocs mastar documentation -- Bringing up a Kafka-based Ordering Service".
https://hyperledger-fabric.readthedocs.io/en/release-1.1/kafka.html
6. When the process which is so is even finished and startFabric.sh in composer is carried out, I fail in "Endorser and orderer connections initialized.", and it's "Error timeout waiting for channel creation".
Exactly, it's the same situation as this interrogator.
https://github.com/hyperledger/composer/issues/3329
Could you help?
Composing: Hyperledger - fabric is 1.1, and composer is 0.19.4.
Thank you.
@kztg_s Sorry that's a question about Fabric, not composer. I would suggest you don't try to modify the simple fabric dev server that we provide to try to add a kafka based orderer in but look at building your own fabric using the resources provided by hyperledger fabric.
@kztg_s Sorry that's a question about Fabric, not composer (composer doesn't need to know about what type of ordering implementation is being used). I would suggest you don't try to modify the simple fabric dev server that we provide to try to add a kafka based orderer in but look at building your own fabric using the resources provided by hyperledger fabric.
I see.
Thank you very much for answering.
Has left the channel.
anyone who can tell me how to form peer network using 5 nodes in hyperledger composer?
@anant706 You need to build your hyperledger fabric network yourself so you need to read the hyperledger fabric docs and look at the fabric-samples github repo for examples of different fabrics. Once you have done that you then need to create a common connection profile that represents the fabric network you have created. The connection profile definition is also a hyperledger fabric concept but we provide some detail about it here
https://hyperledger.github.io/composer/latest/reference/connectionprofile
As well as provide examples of creating these in both the single org and multi-org tutorials
@anant706 You need to build your hyperledger fabric network yourself so you need to read the hyperledger fabric docs and look at the fabric-samples github repo for examples of different fabrics. For help on this you will need to ask on one of the fabric channels. Once you have done that you then need to create a common connection profile that represents the fabric network you have created. The connection profile definition is also a hyperledger fabric concept but we provide some detail about it here
https://hyperledger.github.io/composer/latest/reference/connectionprofile
As well as provide examples of creating these in both the single org and multi-org tutorials
thank you @davidkel
@davidkel
I am new to blockchain.
Can you please help me and guide me ... from where to start and know all the terms and infra and their interaction ?
@anant706 for fabric I suggest you start with the fabric docs here https://hyperledger-fabric.readthedocs.io/en/release-1.2/
I have developed a simple busineess network and exposed apis through composer-rest-server. But the engineer I'm developing this for is complaining that insertion (POST method for apis) speed is very slow. Is there any way to improve the performance of composer-rest-server?
https://stackoverflow.com/questions/52473299/hyperledger-fabric-composer-transaction-not-working
[ ](https://chat.hyperledger.org/channel/composer?msg=m8GcZDAfRjEZx4n7H) Is it even possible to do so? The new transaction that gets posted through rest-server when goes down to fabric, first changes the state of peers and then goes towards the orderer for approval and then finalizes and updates the changed state of peers. This whole process should take a while in my opinion, and is taking around 2600-2700 milliseconds on average.
[ ](https://chat.hyperledger.org/channel/composer?msg=m8GcZDAfRjEZx4n7H) @tahaf10 I think it is better to listen for events rather than waiting for transaction to complete
[ ](https://chat.hyperledger.org/channel/composer?msg=x8Y3xYrpf2frRuz4G) @MuhammedHafil Thanks for the suggestion bro. Can you explain a little how that would be better?
I'm using the fabric settings from the fabric-dev-servers package. Should a custom fabric network be setup to improve this performance?
But I do not understand how I could from the command
composer card create -p /tmp/composer/org1/byfn-network-org1.json -u PeerAdmin -c /tmp/composer/org1/Admin@org1.example.com-cert.pem -k / tmp / composer / org1 / * _ sk -r PeerAdmin -r ChannelAdmin -f PeerAdmin@byfn-network-org1.card
tell you that I want to store the PeerAdmin card @ byfn-network-org1 in a directory such as / tmp / cards / org1
I tried setting the environment variable before the script:
export NODE_CONFIG = {"composer": {"wallet": {"type": "composer-wallet-filesystem", "options": {storePath: '/ tmp / cards / org1'}}}}
But keep storing it in ~ / .composer
[ ](https://chat.hyperledger.org/channel/composer?msg=9eYa7T7huRdNBps5t) @garaujo this may help https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@garaujo this may help https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=Att9YwHKk5LGJzWdA) @MuhammedHafil Thanks! But in this example they only use ~/.composer
If I change the directory where the cards are stored by default, how can I launch the composer-playground to use the new directory?
Hello, I have a query regarding the functionality of composer cards. If a participant is created, an identity is issued to it by the admin and the participant then uses its one time secret to get the certificate and private key from the fabric CA. I suppose the credentials (pk and cert) are supposed to be part of the participant card while making a connection. But I am able to use the card to establish a connection even without placing credentials in the participant card, i.e. it just contains the metadata and connection.json. Can someone please explain what i am missing ? Thanks
Clipboard - September 24, 2018 11:38 AM
Clipboard - September 24, 2018 11:38 AM
Clipboard - September 24, 2018 11:38 AM
Clipboard - September 24, 2018 11:38 AM
[ ](https://chat.hyperledger.org/channel/composer?msg=fYQdQxc36xrN6FLfs) xhttp.open("GET", "http://{IP}:3000/auth/jwt/callback");
xhttp.withCredentials = true;
xhttp.setRequestHeader("Authorization", "Bearer " + token);
xhttp.send();
[ ](https://chat.hyperledger.org/channel/composer?msg=fYQdQxc36xrN6FLfs) xhttp.open("GET", "http://{IP}:3000/auth/jwt/callback");
xhttp.withCredentials = true;
xhttp.setRequestHeader("Authorization", "Bearer " + token);
xhttp.send();
[ ](https://chat.hyperledger.org/channel/composer?msg=zskwzNoFYqhN2py7P) @garaujo you can try setting NODE_CONFIG - for card filesystem store - as shown in the docs -> https://hyperledger.github.io/composer/latest/business-network/cloud-wallets (under 'Configuring filesystem custom card store')
[ ](https://chat.hyperledger.org/channel/composer?msg=hYtEAALvijJMKyM3C) @mahoney1 Yes, I used that environment variable NODE_CONFIG to use different cardStores but I do not know how I can do to launch the composer-playground and retrieve the cards from a different directory.
[ ](https://chat.hyperledger.org/channel/composer?msg=m8GcZDAfRjEZx4n7H) @mahoney1 any input on this?
I'm trying to use composer on ubuntu on windows but when I use ./startFabric.sh only starts couchbd docker
this is what i get from .startFabric.sh
```
Development only script for Hyperledger Fabric control
Running 'startFabric.sh'
FABRIC_VERSION is set to 'hlfv12'
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Removing network composer_default
WARNING: Network composer_default not found.
Creating network "composer_default" with the default driver
Creating couchdb ...
Creating ca.org1.example.com ...
Creating orderer.example.com ...
Creating ca.org1.example.com
Creating couchdb
Creating couchdb ... done
Creating peer0.org1.example.com ...
Creating peer0.org1.example.com ... done
sleeping for 15 seconds to wait for fabric to complete start up
Error response from daemon: Container a37a15d76bc7fd94779bb3397bdfba4c1df63a90315f5f57a85c1b5212954d88 is not running
```
Has joined the channel.
Hi all, I have a question regarding hyperledger-fabric. The emitted event due to a transaction how can I handle it (subscribe to it), is it the only way through REST APIs from node.js client mode? Can't I handle it from the same logic.js file from another transaction?
Why this errors in CouchDB?
https://ibb.co/f24G49
it causes another error when I click any document in CouchDB visual interface:
https://ibb.co/joihcU
and it causes this error in Composer chaincode container:
https://ibb.co/c8hprp
@giacomo.minighin ubuntu on windows is using the `Windows Subsystem for Linux` which is clever microsoft technology that translates system calls to windows calls however it does not have a linux kernel present.Because of this it's not feasible to try to run the docker daemon and docker containers in that environment. Fabric relies on docker for chaincode container management and the fabric-dev-servers package uses the hyperledger fabric linux docker images controlled by docker compose. So you won't be able to run our simple dev server package in this Windows Linux environment as it isn't a true linux system.
More info about trying out composer on windows systems can be found here
https://davidkel.github.io/docs/Windows/Intro.html but I haven't updated it for a while
thanks, I've resolved using hyper-v
Has joined the channel.
Hello
Capture.PNG
Error: Cyclic ACL Rule detected, rule condition is invoking the same rule
Capturek.PNG
Error: Cyclic ACL Rule detected, rule condition is invoking the same rule
i have a array of asset
i loop the array to update every asset within
only the first asset is update
the rest asset will not be update
and i receive this error
[ ](https://chat.hyperledger.org/channel/composer?msg=9S9pojtHYpxjeTpaT) @Senapi You are correct - the 2 methods to subscribe to an event are through a node.js app using the client runtime, or a WebSocket from the REST server.
It does not makes sense to 'listen' for events within a Transaction function as the Transaction is intended to be a single atomic Transaction and a dependency like this may cause delays and failures.
Has joined the channel.
I'm trying out Composer playground and different app designs. I have one general question: If i create transaction input with some params is it possible to omit some of them (like sensitive ones) in transaction log result?
Has joined the channel.
Hi all, good day. Which file i need to edit to configure org.hyperledger.fabric.sdk.orderer.ordererwaittimemillisecs?
[ ](https://chat.hyperledger.org/channel/composer?msg=9S9pojtHYpxjeTpaT) @Senapi https://hyperledger.github.io/composer/latest/applications/subscribing-to-events
Is there any way to increase the performance of the POST method in composer-rest-server?
If I make any changes to composer settings like configtx.yaml in fabric-dev-servers/fabric-scripts/hlfv12/composer , then how do I save and restart my network according to those settings?
@tahaf10 fabric-dev-servers exists only to provide a simple environment for composer users to get started with a real fabric. It isn't there as an example on building a fabric or something that is meant to be customised. If you need to build you own custom fabric and channels then you need to use the resources provided by hyperledger fabric such as https://github.com/hyperledger/fabric-samples, https://hyperledger-fabric.readthedocs.io/ for documentation and other fabric channels
Hello! I wonder how identity-participant relation is implemented in Composer? When a client signs a transaction, in chaincode we identify him by the certificate. But assets belong to participants (right?). So how does Composer match an identity and a participant? Also, how is access-control stuff implemented? Not via attributes in a certificate?
[ ](https://chat.hyperledger.org/channel/composer?msg=exG2iQbwpTYbjBJti) @krabradosty In Composer, a Participant is just an item of data until an Identity is Issued for the Participant. The Identity has the same certificates issued by the CA as native Fabric, but Composer handles and manages the credentials with a metaphor of Cards and Wallet. ACLs are then written against the Participant.
There is a glossary of terms in the Composer Documentation which might help, and some more information about Business Network Cards in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#bizcards
[ ](https://chat.hyperledger.org/channel/composer?msg=b4s3GsJeqLch2zSG6) @davidkel So you mean for fabric-dev-servers there is no way to change the batch size and batch timeout. It will stay the default as it is ?
@deenario fabric-dev-servers is a simple fabric, so it would be possible to alter the batch size and batch timeout, the point is if you need to have a fabric tailored to your needs you should go and start from the resources that hyperledger fabric provide. And this isn't something composer will help you with. Also fabric-dev-servers is not in any way an example of creating a fabric suitable for production use or our intention to provide guidance on how to build a fabric setup.
[ ](https://chat.hyperledger.org/channel/composer?msg=fSbS5REQCq7fPJbNp) nobody can help me please
[ ](https://chat.hyperledger.org/channel/composer?msg=aBNdsvgbzyfCYA8Gm) @davidkel I am doing this for testing the transaction speed of fabric-dev-servers. Currently my Max message are 10 per batch. I want to try 500 message and burst them with a 1s batch time out. Do you have any idea that how will i modify fabric-dev-serves.
@deenario Not sure why you would want to use fabric-dev-servers for this kind of testing. It's purpose was just as single fabric for composer developers to get started with. I highly recommend you investigate learning how to create a fabric that is applicable to your needs
@deenario Not sure why you would want to use fabric-dev-servers for this kind of testing. It's purpose was just as single fabric for composer developers to get started with. I highly recommend you investigate learning how to create a fabric that is applicable to your needsmple
@deenario Not sure why you would want to use fabric-dev-servers for this kind of testing. It's purpose was just as simple fabric for composer developers to get started with. I highly recommend you investigate learning how to create a fabric that is applicable to your needsmple
@deenario Not sure why you would want to use fabric-dev-servers for this kind of testing. It's purpose was just as simple fabric for composer developers to get started with. I highly recommend you investigate learning how to create a fabric that is applicable to your needs
Hmmm
@Manasse228 suggest to post your question on Stack Overflow, with the information requested below, ie including your model https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#issue
@Manasse228 why are you calling getAssetRegistry inside a loop? you have to do it once and then loop through your items and update the registry
@Manasse228 I would do it like this:
```
const assetRegistry = await getAssetRegistry('org.rolex.asset.Watch');
pptx.packWatches.watches.foreach(watch => {
```
@Manasse228 I would do it like this:
```
const assetRegistry = await getAssetRegistry('org.rolex.asset.Watch');
pptx.packWatches.watches.foreach(watch => {
}
```
@Manasse228 I would do it like this:
```
const assetRegistry = await getAssetRegistry('org.rolex.asset.Watch');
pptx.packWatches.watches.foreach(watch => {
watch.retailer = pptx.buyer;
await assetRegistry.update(watch);
})
```
Please, help: https://chat.hyperledger.org/channel/composer?msg=gASsu3HjJQkmzWEAa
[ ](https://chat.hyperledger.org/channel/composer?msg=6xErGNmYTbwSFW5nZ) @giacomo.minighin thanks , i use updateall function
@VadimInshakov listener died - sounds like your CouchDB is not configured correctly - similar errors to yours here -> https://github.com/apache/couchdb-docker/issues/54
[ ](https://chat.hyperledger.org/channel/composer?msg=vCJC8bdj32XQ7ZsvR) @mahoney1 Thanks a lot for answer! I have seen that issue, and I have `_users` db in couchdb. What's wrong with my CouchDB configuration?
```
prod.couchdb0:
container_name: prod.couchdb0
image: hyperledger/fabric-couchdb
# Populate the COUCHDB_USER and COUCHDB_PASSWORD to set an admin user and password
# for CouchDB. This will prevent CouchDB from operating in an "Admin Party" mode.
environment:
- COUCHDB_USER=couch
- COUCHDB_PASSWORD=couchpass
# Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service,
# for example map it to utilize Fauxton User Interface in prod environments.
ports:
- 20391:5984
networks:
- mynet
peer0.prod.org1.ex.ru:
environment:
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
- CORE_LEDGER_STATE_STATEDATABASE=CouchDB
- CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=prod.couchdb0:5984
# The CORE_LEDGER_STATE_COUCHDBCONFIG_USERNAME and CORE_LEDGER_STATE_COUCHDBCONFIG_PASSWORD
# provide the credentials for ledger to connect to CouchDB. The username and password must
# match the username and password set for the associated CouchDB.
- CORE_LEDGER_STATE_COUCHDBCONFIG_USERNAME=couch
- CORE_LEDGER_STATE_COUCHDBCONFIG_PASSWORD=couchpass
networks:
- mynet
depends_on:
- prod.couchdb0
```
@VadimInshakov can't really tell on the resolution of hosts or ports - probably best to ask in #fabric if that's 'resolved' - but what I did see was you have `peer0.prod.org1.ex.ru` in your yaml for one peer - but in your screenshot you're using a different subdomain (I know its a diff peer #) eg `x.prod.org1.innodata.ru` - maybe that's intended ? also maybe you need to check you're using the right ports/ fully resolved docker container names first, incl `prod.couchdb0` - also that the user `couch` exists, if you're setting it like you are, in the OS (think it needs to set permissions, not a couchdb expert) and port mapping is correct and any required volume mapping in couchDB - suggest to find some examples via google to compare or ask on #fabric
Clipboard - September 25, 2018 3:14 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=kfgxfuF5PjY9Guxfq) @KindleBitSoln hi, you need add the ip address of the second machine in the configtx.yaml file and the docker-compose.yaml file.
[ ](https://chat.hyperledger.org/channel/composer?msg=tyosg3MoidS5B4WXC) @KindleBitSoln composer 0.19 is compatible with fabric 1.1
@Mozer18
```
# Copyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#
---
################################################################################
#
# Profile
#
# - Different configuration profiles may be encoded here to be specified
# as parameters to the configtxgen tool
#
################################################################################
Profiles:
ComposerOrdererGenesis:
Orderer:
<<: *OrdererDefaults
Organizations:
- *OrdererOrg
Consortiums:
ComposerConsortium:
Organizations:
- *Org1
ComposerChannel:
Consortium: ComposerConsortium
Application:
<<: *ApplicationDefaults
Organizations:
- *Org1
################################################################################
#
# Section: Organizations
#
# - This section defines the different organizational identities which will
# be referenced later in the configuration.
#
################################################################################
Organizations:
# SampleOrg defines an MSP using the sampleconfig. It should never be used
# in production but may be used as a template for other definitions
- &OrdererOrg
# DefaultOrg defines the organization which is used in the sampleconfig
# of the fabric.git development environment
Name: OrdererOrg
# ID to load the MSP definition as
ID: OrdererMSP
# MSPDir is the filesystem path which contains the MSP configuration
MSPDir: crypto-config/ordererOrganizations/example.com/msp
# turn off security for the channel
AdminPrincipal: Role.MEMBER
- &Org1
# DefaultOrg defines the organization which is used in the sampleconfig
# of the fabric.git development environment
Name: Org1
# ID to load the MSP definition as
ID: Org1MSP
MSPDir: crypto-config/peerOrganizations/org1.example.com/msp
# turn off security for the peer
AdminPrincipal: Role.MEMBER
AnchorPeers:
# AnchorPeers defines the location of peers which can be used
# for cross org gossip communication. Note, this value is only
# encoded in the genesis block in the Application section context
- Host: peer0.org1.example.com
Port: 7051
################################################################################
#
# SECTION: Orderer
#
# - This section defines the values to encode into a config transaction or
# genesis block for orderer related parameters
#
################################################################################
Orderer: &OrdererDefaults
# Orderer Type: The orderer implementation to start
# Available types are "solo" and "kafka"
OrdererType: solo
Addresses:
- orderer.example.com:7050
# Batch Timeout: The amount of time to wait before creating a batch
BatchTimeout: 2s
# Batch Size: Controls the number of messages batched into a block
BatchSize:
# Max Message Count: The maximum number of messages to permit in a batch
MaxMessageCount: 10
# Absolute Max Bytes: The absolute maximum number of bytes allowed for
# the serialized messages in a batch.
AbsoluteMaxBytes: 98 MB
# Preferred Max Bytes: The preferred maximum number of bytes allowed for
# the serialized messages in a batch. A message larger than the preferred
# max bytes will result in a batch larger than preferred max bytes.
PreferredMaxBytes: 512 KB
Kafka:
# Brokers: A list of Kafka brokers to which the orderer connects
# NOTE: Use IP:port notation
Brokers:
- 127.0.0.1:9092
# Organizations is the list of orgs which are defined as participants on
# the orderer side of the network
Organizations:
################################################################################
#
# SECTION: Application
#
# - This section defines the values to encode into a config transaction or
# genesis block for application related parameters
#
################################################################################
Application: &ApplicationDefaults
# Organizations is the list of orgs which are defined as participants on
# the application side of the network
Organizations:
```
@Mozer18 Can you plz tell me where i need to add
@Mozer18 Can you plz tell me where i need to add ?
You mean orderer.example.com will be change to 2nd machine IP ?
[ ](https://chat.hyperledger.org/channel/composer?msg=on5Pj6xa6yoPK3NyG) @mahoney1 oh, no, here different domains are just in order not to disclose the company in which I work)
[ ](https://chat.hyperledger.org/channel/composer?msg=jAocxetpvfaYT32Dc) @abityildiz When a `.card` file is created it is usually created with a 'one-time' secret. When the card is imported, the first time it connects to the Business Network the secret is exchanged for Credentials (certificates/keys). At this point the one-time secret in the original .card file is invalid and you can't import that card.
I'm guessing that you have imported a .card file that you have already imported and used on a command line?
The trick is to export a working card from a wallet into a new .card file and then import the new .card file which includes the credentials. You could try a command similar to this to export into the new .card file:
`composer card export -c admin@my-network -f my-network-admin-withCreds.card`
[ ](https://chat.hyperledger.org/channel/composer?msg=nzdcRTQJZZKtketBD) @KindleBitSoln something like that. what i'm saying is that the second machine doesn't know the address orderer.example.com:7050. check the ip address of the machine holding orderer container. it would have something like 192.168.X.X:7050
[ ](https://chat.hyperledger.org/channel/composer?msg=M9wwQdDoa2MmjiwKp) @rthatcher thanks.I understand
[ ](https://chat.hyperledger.org/channel/composer?msg=5wedgvsToLR5Xuqkt) @Mozer18 I have used same in my startFabricPeer.sh file for accessing order which is running in different machine
But still facing same issue
[ ](https://chat.hyperledger.org/channel/composer?msg=9FrLp7GEK4p2p5tmN) how can i export via export wallet api?wallet export api not working?
[ ](https://chat.hyperledger.org/channel/composer?msg=9FrLp7GEK4p2p5tmN) how can i export via export wallet api?wallet export api not working? it is error message : Unhandled error for request GET /api/wallet/admin@test02/export: Error: The business network card "admin@test02" does not exist
@abityildiz - if you execute a `GET` request on `/wallet` it should list you all the cards you have in the wallet.
[ ](https://chat.hyperledger.org/channel/composer?msg=R92QfzzSFEyM2KfWS) @rthatcher ok.i will try.as if I solved.
Hey Guys
what do you know about the upcoming HLF 1.3 update?
how does it affect composer?
will it be integrated?
@ThomasBereczky I know that HLF 1.3 is coming. We have not tested composer with it yet, and we may have to release a new version of composer to tolerate HLF 1.3
I heard that composer will be removed
in future releases
I'm kinda worried
and some parts of it will be integrated into 1.3
@ThomasBereczky I think the post sums up exactly what is happening with composer and the future
https://lists.hyperledger.org/g/composer/message/125
thank you
This issue not resolved and I have similar problems: https://jira.hyperledger.org/browse/FAB-10091
and more details here: https://jira.hyperledger.org/browse/FAB-10091
please pay attention to it
Has joined the channel.
Hi All, I'm currently searching for a experienced Hyperledger Sawtooth Developer for a Remote Contracted position. Learn more http://smrtr.io/LJGD
Does anyone know how to get a count of assets via composer queries? I have been all over the composer query docs and have not a found a way. Are simple counts of assets supported?
@jcwarfield If you are looking for aggregate query capabilities such as COUNT, then no these are not available in the composer query language
hai, i have a question about composer-rest-server multi-users mode.
If multi-users mode enabled by "-m true";
can i use two web browser to access the same composer-rest-server, and set different user card by /wallet/{name}/setDefault , will it be ok?
shortly ,it would be multi threads, and i can use different user cards at the same time; or i need to change the card for another card , only one card at a time?
hi,my fabric 1.2 is running.how can i understand fabric using kafka or solo orderers?
hai, i have a question about composer-rest-server multi-users mode.
If multi-users mode enabled by -m true;
can i use two web browser to access the same composer-rest-server, and set different user card by /wallet/{name}/setDefault , will it be ok?
shortly ,it would be multi threads, and i can use different user cards at the same time; or i need to change the card, only one card at a time?
hai, i have questions about composer-rest-server multi-users mode.
1,If multi-users mode enabled by -m true;
can i use two web browser to access the same composer-rest-server, and set different user card by /wallet/{name}/setDefault , will it be ok?
shortly ,it would be multi threads, and i can use different user cards at the same time; or i need to change the card, only one card at a time?
2,If multi-users mode enabled, the first step is to import card, is it ok to follow these steps:
A,import the network admin card(which is used by running composer-rest-server)
B,new participant,and issue card to this participant via rest api
C,import the new paricipant's card, and set this card default
D, exec other cmds
except this method, we must use cmd line to generate the card file of new participant which is a little inconvenient to intergrate into the whole web system.
While running a GET call on composer-rest-server I get the following error```
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "transaction returned with failure: RangeError: Invalid time value",
"stack": "Error: transaction returned with failure: RangeError: Invalid time value\n at /home/trs-laptop-20/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/Peer.js:114:16\n at /home/trs-laptop-20/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/grpc/src/client.js:586:7"
}
}
```
anyone has tried installing BNA in muti-host env?
Has joined the channel.
I have created a Hyperledger Fabric using Hyperledger compose. Then i can want to create a client based on the Android smartphone to connect the Fabric server. I have no idea about it, who would like to give me some advices?
hi, how to configure the connection.json if the fabric network has multiple orgs and channels?
[ ](https://chat.hyperledger.org/channel/composer?msg=4JmFpxnMiNmzXgSxC) @abityildiz This channel is for Composer specific questions - you will have to read the Fabric Docs: https://hyperledger-fabric.readthedocs.io/en/latest/whatis.html and ask questions in the #fabric channel
[ ](https://chat.hyperledger.org/channel/composer?msg=pr4pFLCBgWmhD6ALR) @touchingsoil 1. What you suggest for the 2 browsers should be OK, BUT you might be better logging into each Browser with a different Authenticated user (githyn, google or whatever you have set up for authentication) - this way you will have 2 different private Wallets.
2. When you issue an Identity through the REST server, a .card file is created - so you should not need to use the command line.
[ ](https://chat.hyperledger.org/channel/composer?msg=m5GepHy9ix2Znn7Yh) @davidhu There is a Composer tutorial for working with a Multi Org Fabric: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
and there is a blog that other community members have found useful for Multi-Host (single org?): https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/ - be careful wuth the 2nd link as it uses an older version of Fabric and Composer.
@tahaf10 your transaction is trying to create an invalid time as indicated by examples [here](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Invalid_date) (javascript error) in your chosen browser
[ ](https://chat.hyperledger.org/channel/composer?msg=xh7MioFnZL4FvNKsW) @ZL.HYPERLEDGER The Composer Sample Application "Vehicle Manufacture" has an element that works on a Mobile device which connects to the Composer REST server. It is the Car Builder part of the sample application. The sample can be found here: https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-manufacture
The sample uses the Ionic Framework for the mobile app: https://ionicframework.com/docs/intro/deploying/
[ ](https://chat.hyperledger.org/channel/composer?msg=hStxSAdGrw6X52rFP) @bh4rtp The best resource for this is the Composer Multi-Org Tutorial which builds connection.json in steps 2,3,4.
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
You mention "channel*s*" in your question - be aware that composer Cards (and connection.json) are for a Single Business Network on a Single Channel. You will need separate cards for different channels.
[ ](https://chat.hyperledger.org/channel/composer?msg=hStxSAdGrw6X52rFP) @bh4rtp The best resource for this is the Composer Multi-Org Tutorial which builds connection.json in steps 2,3,4.
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
You mention _channels_ in your question - be aware that composer Cards (and connection.json) are for a Single Business Network on a Single Channel. You will need separate cards for different channels.
@rthatcher Thanks, from your answer, i try to understand composer-rest-server under multi-user mode:
for example cmd "composer-rest-server -c alice@chain -m true ..."
the card alice@chain is just used to run the cmd, not bound with certain org in the network. laterly, the imported different cards will access different orgs.
but for none multi-user mode, the rest-server will be bound with certain org through the card alice@chain.
for question2, i try to mean the networkadmin card must be generated by cmd,
or if i dont use the networkadmin card , the participant card is also generated by cmd.
and i doubt that is appropriate here to import the networkadmin card firstly for the specality of networkadmin card, will it be abused by the api user?
@rthatcher Thanks, from your answer, i try to understand composer-rest-server under multi-user mode:
for example cmd "composer-rest-server -c alice@chain -m true ..."
the card alice@chain is just used to run the cmd, not bound with certain org in the network. laterly, the imported different cards will access different orgs.
but for none multi-user mode, the rest-server will be bound with certain org through the card alice@chain.
Is that right?
for question2, i try to mean the networkadmin card must be generated by cmd,
or if i dont use the networkadmin card , the participant card is also generated by cmd.
and i doubt that is appropriate here to import the networkadmin card firstly for the specality of networkadmin card, will it be abused by the api user?
Hello, I'm facing a problem that when I'm submitting some transactions, it is giving me 200 OK response and there is transaction id also in response. but corresponding work is not being done of that transaction(like if I'm trying to create an asset through a transaction, transaction successes but that asset is not created). also, if i try to check historian record using that transaction id, historian record is also not found. If anybody has any idea about this, please let me know the reasons and solution.
and this is not happening for all transactions. randomly some transactions show this kind of behavior and they go off after upgrading the network.
[ ](https://chat.hyperledger.org/channel/composer?msg=fxJNWpgtFWNCvmr9D) @touchingsoil The card used to start the REST server is only used to Discover the network - but each card does belong to an Organisation.
After cards are imported, the REST server will use the connection.json in the card to make connection to the Fabric for each user.
[ ](https://chat.hyperledger.org/channel/composer?msg=nidpyqEGZSLABFgBf) @amritsharma what version of Composer, Fabric are you using?
composer 0.20.1 fabric 0.1.2
@rthatcher For none multi-user mode, the rest-server will use which card ?
If i import the networkadmin card , will it be abused by the api user?
@amritsharma suggest you use fabric 1.1 and composer 0.19. There is a major bug in fabric 1.2 which is probably what you are hitting that won't be fixed until fabric 1.2.1 is released
@rthatcher thanks, i'll have a look
thanks @davidkel for the answer. is there some known cause of this bug?
@amritsharma I believe so, but it isn't easy to reproduce it really depends on what you are doing
[ ](https://chat.hyperledger.org/channel/composer?msg=XB2yfn2RrbHDEJPNC) @touchingsoil If you are in Single User mode the the only card used will be the card specified on the command line when the REST server is started.
When in Single User mode there is no /wallet endpoint so you can't imnport any other card.
[ ](https://chat.hyperledger.org/channel/composer?msg=XB2yfn2RrbHDEJPNC) @touchingsoil If you are in Single User mode the the only card used will be the card specified on the command line when the REST server is started.
When in Single User mode there is no /wallet endpoint so you can't imnport any other card.
[ ](https://chat.hyperledger.org/channel/composer?msg=XB2yfn2RrbHDEJPNC) @touchingsoil If you are in Single User mode the the only card used will be the card specified on the command line when the REST server is started.
When in Single User mode there is no /wallet endpoint so you can't import any other card.
@rthatcher "If i import the networkadmin card , will it be abused by the api user?"---i mean it in multi-user mode.
[ ](https://chat.hyperledger.org/channel/composer?msg=Z8QvwywLW8S6zosYb) @touchingsoil When you import a card it is imported into a Wallet 'owned' by the current Authenticated User. Each Authenticated User (github, google, or ldap) has a separate Wallet so assuming you don't share the username/password of the Authenticated User then the Imported Card should be protected in the Wallet.
@rthatcher In these steps below, the current Authenticated User will has two cards including the networkadmin card:
A,import the network admin card(which is used by running composer-rest-server)
B,new participant,and issue card to this participant via rest api
C,import the new paricipant's card, and set this card default
Is this scene normal?
@rthatcher In these steps below, the current Authenticated User will has two cards including the networkadmin card:
--A,import the network admin card(which is used by running composer-rest-server)
--B,new participant,and issue card to this participant via rest api
--C,import the new paricipant's card, and set this card default
Is this scene normal?
My intent is new a participant,and issue card to it, then use this card to submit transactions,
but i cant find how to import the card in single-user mode, is there any method in single-user mode to use a new card?
@rthatcher In these steps below, the current Authenticated User will has two cards including the networkadmin card:
--A,import the network admin card(which is used by running composer-rest-server)
--B,new participant,and issue card to this participant via rest api
--C,import the new paricipant's card, and set this card default
Is this scene normal?
My intent is to new a participant,and issue card to it, then use this card to submit transactions,
but i cant find how to import the card in single-user mode, is there any method in single-user mode to use a new card?
Has joined the channel.
is IBM stopping composer development?
I have a 2 host HLC network setup, by following the composer's multi-organisation tutorial. My question is: when I create a card for the first organisation and "network install" the .bna archive; will it install on all of the peers, even those from the second physical host? If so, why do I need to "network install" again with the second card created for the second organisation on the second host?
@touchingsoil if using REST APIs as a network admin participant, then yes, he/she might do that sequence (A, B, C then ping the network to download credentials, plus --D, wallet/export so that the card can be shared, imported by the intended user participant (in his own REST client) to submit transactions, independently. Need to be multi-user mode for wallets. This is an application example -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
@MuhammedHafil here is a more detailed summary of IBM's plans (see link) and its intentions on delivering improvements in Fabric -> https://lists.hyperledger.org/g/composer/message/125
[ ](https://chat.hyperledger.org/channel/composer?msg=4QHnEmL4TEKtAw6zo) @AndreiLovin no, will install on 1st org's peers (this is normal - different admins will have jurisdiction for their own orgs - hence why there's two installs, in that tutorial / example)
[ ](https://chat.hyperledger.org/channel/composer?msg=4QHnEmL4TEKtAw6zo) @AndreiLovin no, will install on 1st org's peers (this is normal - different admins will have jurisdiction for their own orgs - hence why there's two installs, in that 2-org tutorial / example)
[ ](https://chat.hyperledger.org/channel/composer?msg=4QHnEmL4TEKtAw6zo) @AndreiLovin no, will install on 1st org's peers (this is normal - different admins will have jurisdiction for their own orgs - hence why there's two installs, in that 2-org tutorial / configuration)
@mahoney1 does this means that in the connectionProfile.json for host 1, only the peers on host 1 should appear? Right now I have only one connectionProfile.json with all the peers - on host 1 being localhost as the ip; and for the peers on hosts 2 with the physical address of the docker peers.
@mahoney1 @rthatcher Too many Thanks!!
@AndreiLovin while your connection profile describes the fabric network setup, all the peers, orderers and certificate authorities etc - each peer Admin business network card (ie and a connection profile a constituent part of that) - will have different `client` organisation info. Suggest to have a look at the tutorial Step Three onwards -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org - each org's profile contains client info relating to their Orgs in their own connection profiles, used to build the peer Admin cards (in the tutorial: PeerAdmin@orgx), to then do the `composer network installs` using those PeerAdmin cards, containing those independent connection profiles.
@AndreiLovin while your connection profile describes the fabric network setup, all the peers, orderers and certificate authorities etc - each peer Admin business network card (ie a connection profile a constituent part of that) - will have different `client` organisation info. Suggest to have a look at the tutorial Step Three onwards -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org - each org's profile contains client info relating to their Orgs in their own connection profiles, used to build the peer Admin cards (in the tutorial: PeerAdmin@orgx), to then do the `composer network installs` using those PeerAdmin cards, containing those independent connection profiles.
@AndreiLovin while your connection profile describes the fabric network setup, all the peers, orderers and certificate authorities etc - each peer Admin business network card (ie a connection profile is a constituent part of that) - will have different `client` organisation info. Suggest to have a look at the tutorial Step Three onwards -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org - each org's profile contains client info relating to their Orgs in their own connection profiles, used to build the peer Admin cards (in the tutorial: PeerAdmin@orgx), to then do the `composer network installs` using those PeerAdmin cards, containing those independent connection profiles.
hi,i want to connect via javascript to composer rest api.i am using JWT passort strategy.I need to get token,ping to system,import to card composer.Can you share a document that will reference me?
Has joined the channel.
@mahoney1 I did look very careful at your suggested tutorial; in fact that's the base of my current project, but I don't really understand how things come together when it comes to different physical machines. ex: I've successfully installed the .bna files on both hosts, with each set of commands running on each host; Should I start the network on only one host? If so, I can't really add both requested identities to the network start command because it tells me that in doesn't find the /admin-pub.pem that's on host 2.
[ ](https://chat.hyperledger.org/channel/composer?msg=E7eu3QAq7nnm7hQvv) @davidkel Thanks for response! I figured that was the case.
Why the word "Entry" is highlighted in visual studio code cto files?
Has joined the channel.
Hi.. I am new to composer.. learning the basics..
Hi, all. Please explain me. Is it possible to install multiple business networks on one fabric channel?
could anyone help with multi user login in composer..
[ ](https://chat.hyperledger.org/channel/composer?msg=F3RQSFWTGs2XbsizZ) @Renick As I understand this guide will help you.
https://hyperledger.github.io/composer/latest/integrating/enabling-multiuser
thanks @argman I tried this, but when I tried using the explorer I am always getting 401 authentication required..
1. I am not sure how to set the accesstoken
2. What is business card file?
Whether I need to generate the businesscard file separately..
[ ](https://chat.hyperledger.org/channel/composer?msg=ezf4ikaNxahaNp8AH) @argman - Yes, you can install multiple networks on a single channel. The channel is specified in the connection.json of the card being used, and the default channel for composer is "composerchannel".
[ ](https://chat.hyperledger.org/channel/composer?msg=dr8j6rSgKW3SaE8RE) @Renick - Have you configured Authentication? This is required and automatically enabled by multiuser mode.
[ ](https://chat.hyperledger.org/channel/composer?msg=32GA9mdtuXE6oc5QX) @giacomo.minighin 'Entry' does not have any specific meaning in the Modelling Language. You could use Entry as an Asset/Participant name, or the name of Field.
What message do you see when you hover over the highlighted word Entry?
Regarding the commands to deploy Composer over a multi-host network: Should I separate the card create/import, install of the .bna commands on each separate host? The network start command should be done on only one host?
The network start command should be done on only one host?
Entry.png
no messages on hover
[ ](https://chat.hyperledger.org/channel/composer?msg=NhWH778t8MQ7Mb5nH) @AndreiLovin correct - if you mean multi-org - ie one peerAdmin card for each to install the business network chaincode on each Org's peers ; and yes network start is done by one - as shown in [the docs](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org)
Is Hyperledger Composer development stopped?
[ ](https://chat.hyperledger.org/channel/composer?msg=hbS45bWrPgiucNf62) @akshay.sood The IBM team which has contributed most of the Composer development won't be developing any new features, but will be providing support for a while. Other contributors may decide to add new features. Here is the announcement which explains the details: https://lists.hyperledger.org/g/composer/message/125
[ ](https://chat.hyperledger.org/channel/composer?msg=Jv4aN76BS4BDMfQ3F) @giacomo.minighin - I checked and I have the same as you - Entry is shown differently - I don't know why. :-)
If there are errors they are "highlighted" with red underline and you can hover over them.
The editor in Composer Playground does not show Entry different to other Assets.
Has joined the channel.
Has joined the channel.
I have concluded with most of the tutorials in Hyperledger Composer, now my next approach its to encrypt the Blockchain data, as i need the data no to be visible to any org that includes we developers, i know that i could use a third api for client side using public encryption, but my fear about this its that we should provide private keys for each org, and if they lose its private key, data will be locked forever and there is no way to retrieve that info for him, its there a better approach?, also in fabric docs says that there are 5 ways to secure the data, but there is no examples, its just a mention what you can do.
https://hyperledger-fabric.readthedocs.io/en/release-1.1/Fabric-FAQ.html#security-access-control
[ ](https://chat.hyperledger.org/channel/composer?msg=6qRCsRu7YJSHc3JkL) @rthatcher yes I have created the authentication and also I have the access code in the explorer
Has left the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=D9qSLKuiBkXZZe2qt) @mahoney1 I mean on multiple hosts. I have 2 ubuntu virtual images and I want to deploy composer. Should I separate the card create/import, install of the .bna commands on each separate host? The network start command should be done on only one host?
Hi,
can anybody please explain me what is EVENTS and what is the use of it and when to use it
Has joined the channel.
when trying to submit transaction in play ground i am getting this error : Error: Object with ID 'ac1' in collection with ID 'Asset:org.testing.network.AmountTransfer' does not exist
but asset object with id ac1 exist: {
"$class": "org.testing.network.StudentAccount",
"acId": "ac1",
"totalamount": 0,
"student": "resource:org.testing.network.Student#1"
}
this is the transaction i am trying to submit:{
"$class": "org.testing.network.AmountTransfer",
"donor": "resource:org.testing.network.Donor#1283",
"studentaccount": "resource:org.testing.network.StudentAccount#ac1",
"amount": 500
}
please help
@jituji What I am seeing here is the Identifier for student is "1" and not ac1
@ManishKhobragade yes but class StudentAccount which is asset is having instance with id ac1.
student is participant class which is not participating in this transaction .
@rthatcher Thanks a lot, i will read it. But i just learn how to use the Android studio to make a app not the Ionic. I will try it.
[ ](https://chat.hyperledger.org/channel/composer?msg=Lp7GLMKG8KE37RnkG) @jituji the sample data you show has the object with the class `org.testing.network.StudentAccount` but the Error shows you are searching for `org.testing.network.AmountTransfer` - maybe this is the problem.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZjcW5WfXmgw7gLxa3) @VarunVerma In a multi-org environment, one party might want to know when a transaction has been processed so that another Business Process (inside or outside the scope of the blockchain app) can be triggered. Events can be triggered by transactions and listened for by other applications. - If a transaction changed the owner of a Vehicle, the Manufacturer might 'listen' for the event and want to send an email/letter offering a Service Package, or an Insurer might listen and want to offer to insure the Vehicle.
[ ](https://chat.hyperledger.org/channel/composer?msg=jcA53wn6twz4WpTu5) @AndreiLovin - It is not a question of Installing on Hosts - you Install once for each Organisation, then Start once for the whole network.
(in your case maybe you have one Host per Organisation so the difference doesn't matter :-) )
Hello All, Can someone please comment on the enrollment secret issued in identity. After exporting the credentials(cret. and private key) from fabric CA, does it become useless? Can we then remove it from metadata.json?
Hello All, Can someone please comment on the enrollment secret issued in identity. After exporting the credentials(cret. and private key) from fabric CA for a composer card, does it become useless? Can we then remove it from metadata.json?
[ ](https://chat.hyperledger.org/channel/composer?msg=oxdWckfbrvHWPeXz3) @rthatcher Yes, I have each organisation on different hosts. The installation works on host 1, but on host 2 I'm getting "No valid responses from any peers." My connectionProfile.json setup is: on host 1 - I'm putting localhost on the local peers and the ip for the other peers; on host 2 the same way - localhost for local peers and ip address for the peers on host 1.
@rahul703 yes, correct - its one time secret, can't be used again
@rahul703 yes, correct - its a one time secret, can't be used again
Hello again, I'm still trying to figure out how to install Composer on a fabric with multiple hosts. I did understand that I need a peer admin card and install for every organisation in my network; and to start the network only on one of the hosts. But I need some help configuring the connectionProfile.json... I tried with a single connectionProfile.json with all of the organisations, tried splitting the peers in 2 connectionProfiles, but every time I get a different error. Has someone successfully installed Composer on multiple machines, and how do you setup the connectionProfile.json?
Hi guys, i just realised that Fabric 1.2 is now supporting Private Data Collections. Is this already implemented in Composer ?
@erNail see https://stackoverflow.com/questions/52458520/how-to-use-fabric-v-1-2s-private-data-in-hyperledger-composer/
Thank you David. Is it planned to implement the feature in composer ?
@davidkel
@erNail I guess you haven't seen this
https://lists.hyperledger.org/g/composer/message/125
@davidkel I've seen it, but i didn't realise it would go that fast. But okay, thanks for the information.
@davidkel Forget, i read something different. Thanks for the link.
I've found this on github: https://github.com/Genxas/hyperledger-composer-coin-network
do you think that is a good implementation or it could have double spending or other problems?
Has joined the channel.
Hello everyone, I was wondering if it's still viable to use composer after the recent announcement. Do you recommend moving towards the native SDK solution? Or should I just continue on with composer?
**REST server with JWT**
I'm trying to authorize on REST, send `get` to http://localhost:3000/auth/jwt/callback with bearer token, but I do not receive a access_token in cookies after the response.
cookie screenshot: https://ibb.co/bNWWcU
I use Composer 0.20.1, maybe this tutorial become obsolete? Do I have to change something in the jwt REST configuration?
https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
@chrisg
@chrisg
**REST server with JWT**
I'm trying to authorize on REST, send `get` to http://localhost:3000/auth/jwt/callback with bearer token, but I do not receive a access_token in cookies after the response.
cookie screenshot: https://ibb.co/bNWWcU
I use Composer 0.20.1, maybe this tutorial become obsolete? Do I have to change something in the jwt REST configuration?
https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
@chrisg, @mahoney1, @rthatcher
**REST server with JWT**
I'm trying to authorize on REST, send `get` to http://localhost:3000/auth/jwt/callback with bearer token, but I do not receive a access_token in cookies after the response.
cookie screenshot: https://ibb.co/bNWWcU
I use Composer 0.20.1, maybe this tutorial become obsolete? Do I have to change something in the jwt REST configuration?
https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
@chrisg , @mahoney1, @rthatcher
**REST server with JWT**
I'm trying to authorize on REST, send `get` to http://localhost:3000/auth/jwt/callback with bearer token, but I do not receive a access_token in cookies after the response.
cookie screenshot: https://ibb.co/bNWWcU
I use Composer 0.20.1, maybe this tutorial become obsolete? Do I have to change something in the jwt REST configuration?
https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
@chrisg, @mahoney1, @rthatcher
**REST server with JWT**
I'm trying to authorize on REST, send `get` to http://localhost:3000/auth/jwt/callback with bearer token, but I do not receive a access_token in cookies after the response.
cookie screenshot: https://ibb.co/bNWWcU
I use Composer 0.20.1, maybe this tutorial become obsolete? Do I have to change something in the jwt REST configuration?
https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
Is it possible to use JWT authorization for the Composer v.0.20.1?
@VadimInshakov see the answer in https://stackoverflow.com/questions/50285186/authenticate-rest-api-generated-by-hypperledger-composer-using-passport-jwt/50291279?noredirect=1#comment92002275_50291279
Composer community call is on Zoom in 5 https://zoom.us/my/hyperledger.community
[ ](https://chat.hyperledger.org/channel/composer?msg=dNRcrTm7G5EjGsH43) @HoumamHatahet - What is your situation and timescale?
Committing to use Composer for a Production Application would be short sighted. However Composer is still a good tool to quickly produce a Prototype, PoC or even a Pilot. Using the native SDK solution is currently quite complex, it is being simplified but those simplifications are not available yet.
Now I can't ping REST server. I authorized and sended card to /api/wallet/import, but when I send GET to /api/system/ping, I see error:
```
Unhandled error for request GET /api/system/ping: Error: Error trying to ping. Error: Failed to connect before the deadline
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:798:34)
at
Has joined the channel.
i need to change the logging driver for the docker containers to go to syslog ( so that i can grab them in splunk ) i can do that for everything in the docker-compose.yml by editing the /etc/docker/daemon.json file and restarting docker ( and npm restarting the containers ) but the chaincode containers still stay as default. ive even tried to upgrade the chaincode
@VadimInshakov if ... you're using a containerized, persistent REST server - probably means your card's connection profile doesn't know how to connect to the business network - see https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest Step Nine for example
@JuanSuero This is a question for fabric, suggest you ask on another channel such as #fabric-questions (not sure if there is a more appropriate channel)
Has joined the channel.
I'm running into this issue: https://github.com/hyperledger/composer/issues/3438 still, but the issue claims to be resolved. Any help?
I have an asset which contains a list of relationships to participants, and that list needs to start empty when the asset is created. I can do this directly in the files, but when trying through the REST api it refuses empty lists with an error.
Is it possible to store documents, files, pdf etc in a Ledger?, and if it is possible is it recommended? or should i store them in a directory that only the chaincode has access?
In the ways of authentication of REST API, which is more convenient?
Is there a guidance to intergrate LDAP or SAML into composer rest server?
In the ways of authentication of REST API, which is more convenient to intergrate into a web client?
Is there a guidance to intergrate LDAP or SAML into composer rest server?
Can anyone tell me about composer-dev channel..
Is it removed?
@rthatcher thank you for your reply.
I was planning on use it for a production application, but as I feared, it seems that it would be indeed shortsighted to use composer.
If it isn't much of a bother, can you inform me of any alternatives or good resources for working on the native SDK? Thank you in advance
Has joined the channel.
Has anyone deployed Composer with multiple organisations each on separate hosts?
[ ](https://chat.hyperledger.org/channel/composer?msg=7XrPsY6e37uy89mXu) @AndreiLovin I did a test with 2 hosts a while back, and quite a few members of the Community have done so too. They key to success is understanding the network addressing and connectivity between the 2 hosts AND between the containers on both hosts. Before worrying about Composer, you should 'prove' the Fabric perhaps by deploying a native chaincode sample like marbles. After that, getting the details right in the connection.json will be important. As a test, it might be easier to set up the Fabric without SSL certificates - then repeat afterwards with the certificates. If you have trouble with the Fabric setup you can ask questions in the #fabric channel.
(I assume you have see the Multi-Org tutorial - https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org)
[ ](https://chat.hyperledger.org/channel/composer?msg=qJyHChnLebk8Ed3Ah) @HoumamHatahet There are tutorials provide in the main Hyperledger Fabric docs (https://hyperledger-fabric.readthedocs.io/en/latest/getting_started.html) and there are various blogs aorund on getting started with Fabric.
Keep an eye open for the improvements to the Programming Model that are on their way which will make writing Smart Contracts (chaincode) a little simpler, and also other changes that make invoking the chaincode transactions much more straightforward.
[ ](https://chat.hyperledger.org/channel/composer?msg=EYzjLXq5cp7ivKheb) @rthatcher I did install the example chaincode from the multi-org tutorial on my 2 host network and it works. I'm able to instantiate, query the peers, etc. My issues are regarding Composer, I don't really know how the profile.json should be setup...
[ ](https://chat.hyperledger.org/channel/composer?msg=EK3iY5j6PkF3f2iRS) @manishgupta33366 I can't remember a specific composer-dev channel - but you can ask questions here about developing applications with Composer.
@davidkel how to change the log level for composer network? I tried following commands, but still log level stays at DEBUG: gauravgiris-mbp:disc-composer-sdk-rest-server gaurav.giri$ composer network loglevel --newlevel ERROR -c admin@disc-business-network
The logging level was successfully processed and changed to: composer[debug]:*
Command succeeded
you could try
```
composer network loglevel --newlevel composer[error]:* -c admin@disc-business-network
```
@gauravgiri you could try
```
composer network loglevel --newlevel composer[error]:* -c admin@disc-business-network
```
@davidkel still no luck: gauravgiris-mbp:disc-composer-sdk-rest-server gaurav.giri$ composer network loglevel --newlevel composer[error]:* -c admin@disc-business-network
The logging level was successfully processed and changed to: composer[debug]:*
Command succeeded
@gauravgiri what version of composer ? I will try to find some time to recreate
@davidkel 0.20.0, however we also need to do it with 0.19.20 also.
@gauravgiri Have you built your own fabric setup then ?
As composer runtime honours the value for chaincode logging as part of your fabric definition
0.20.0 is our own local machine, fabric setup. however 0.19.20 is the IBP runtime on IBM cloud
@gauravgiri I would assume that the cloud version doesn't set debug up by default
on the cloud level level is "verbose"
think it is worse than "debug"
that is why need a way to change it
@gauravgiri Hmm, someone thought that chaincode log level of debug should equate to verbose (sigh). I believe it sits between info and debug, so should be equivalent to info level
@gauravgiri Hmm, someone thought that chaincode log level of info should equate to verbose (sigh). I believe it sits between info and debug, so should be equivalent to info level
@gauravgiri Hmm, someone thought that chaincode log level of info should equate to verbose (sigh). I believe it sits between info and debug, so should be equivalent to info level as the composer code never uses berbose
@gauravgiri Hmm, someone thought that chaincode log level of info should equate to verbose (sigh). I believe it sits between info and debug, so should be equivalent to info level as the composer code never uses verbose
i'm face this error while trying to start my network Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Failed to pull hyperledger/fabric-ccenv:x86_64-1.1.0
i'm face this error while trying to start my network Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Failed to pull hyperledger/fabric-ccenv:x86_64-1.1.0
i have tried many ways on many business networks, but none has worked yet
@davidkel however i do see all DEBUG logs being logged in peer container even after this level of verbose. Hence want to reduce it to lower for INFO/WARN/ERROR. please let me know if you find a way. Thank YOu
[ ](https://chat.hyperledger.org/channel/composer?msg=F6AJR9cdsZwqPZd2Z) @parsa Have you tried to just use the docker command to pull the image before starting the network? `docker pull hyperledger/fabric-ccenv:x86_64-1.1.0`
This looks more like a docker or network connection problem than a composer problem.
Has joined the channel.
I have an asset which contains a list of relationships to participants, and that list needs to start empty when the asset is created. I can do this directly in the files, but when trying through the REST api it refuses empty lists with an error. Any help?
@gauravgiri I've got a 0.20.1 system up again and I have no trouble using the cli to change the logging level. I can specify `error`, `ERROR` and `composer[error]:*` and they all work. So not sure why it isn't working for you. Do you have any ACLs that might stop that identity from being able to change the log level
[ ](https://chat.hyperledger.org/channel/composer?msg=wsCBj4ixHnsMLkTu2) @ColeBoudreau What do you mean "I can do this directly in the files" ?
@gauravgiri The command I tried was
```
composer network loglevel -c admin@trade-network -l error
```
@rthatcher I can create a transaction such as 'setup_demo' which when ran creates some default assets with empty lists in them. But when I try to create the asset through the REST api I get the error that I cannot query with an empty list.
@rthatcher It seems to be this issue or related: https://github.com/hyperledger/composer/issues/3438
[ ](https://chat.hyperledger.org/channel/composer?msg=bKX2KProtNhXrEpD7) @ColeBoudreau Interesting - I just tested this, and I CAN create an empty array of String using the REST API, but I CAN'T create an empty array of Relationships using the REST API.
Using Composer Playground I can leave the both types of Arrays empty.
(I was testing with Composer v0.19.15 - and will try to test with v0.20 later)
Please feel free to create a new issue with an exact description - but the easy work around is to set the field as Optional so I would think that the issue won 't be fixed. Have you seen this announcement? https://lists.hyperledger.org/g/composer/message/125
@rthatcher Okay, I'm on 0.20 and I see the same results as you. I can make the field optional, however what happens when the optional field is not created with the asset, yet that field is required for later transactions?
[ ](https://chat.hyperledger.org/channel/composer?msg=kXwDrzfjbXgmNbsoH) @ColeBoudreau I guess the other transactions will have to check for the presence of the field and create if necessary.
@rthatcher I didn't know transactions could add fields to an asset, how do you do this?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=LtXeHSXpnKqDgxxFQ) @ColeBoudreau This partial Model and Transaction script show how it can be done:
```
asset LegalPaper1 identified by lpID {
o String lpID
o String description
o String[] optReference optional
}
transaction ExtendLP1 {
--> LegalPaper1 origLP
o String[] reference
}
/**
* Add the optional reference field to a Legal Paper
* @param {org.acme.mynetwork.ExtendLP1} tx
* @transaction
*/
async function extendlp1(tx) {
// set the new field
tx.origLP.optReference = tx.reference;
let assetRegistry = await getAssetRegistry('org.acme.mynetwork.LegalPaper1');
// persist the state of the commodity
await assetRegistry.update(tx.origLP);
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=LtXeHSXpnKqDgxxFQ) @ColeBoudreau This partial Model and Transaction script show how it can be done:
```
asset LegalPaper identified by lpID {
o String lpID
o String description
o String[] optReference optional
}
transaction ExtendLP {
--> LegalPaper origLP
o String[] reference
}
/**
* Add the optional reference field to a Legal Paper
* @param {org.acme.mynetwork.ExtendLP} tx
* @transaction
*/
async function extendlp(tx) {
// set the new field
tx.origLP.optReference = tx.reference;
let assetRegistry = await getAssetRegistry('org.acme.mynetwork.LegalPaper');
// persist the state of the commodity
await assetRegistry.update(tx.origLP);
}
```
@rthatcher Thanks so much! I'll try this soon!
[ ](https://chat.hyperledger.org/channel/composer?msg=swR4ruYamphA2KLWo) @davidkel Thanks
@gauravgiri As I can't recreate it, then its possible you have hit the fabric 1.2 bug where changes to a blockchain are not being committed. Until fabric releases 1.2.1 I recommend using fabric 1.1 and composer 0.19
Has joined the channel.
Is there a default length for a `String` datatype in CTO language?
Is there the concept of a "Join" between model objects in a .qry ?
Select Stuff where otherObject.param = Stuff.param ?
[ ](https://chat.hyperledger.org/channel/composer?msg=4azuMHP3Swu9f7wej) @coveloper There is no concept of relational Join.
[ ](https://chat.hyperledger.org/channel/composer?msg=wj2CfTbnKDssCWoCY) @rthatcher thanks. So it's better to use a NoSQL type of approach that would not require a relational join?
Hey all, has anyone configured their hyperledger composer to explorer? Would you mind sharing your configs by any chance?
@danny_lee are you looking to launch explorer and the rest server?
yeah, i have a composer rest server up with some really basic networks
I'm actually unclear what the difference is between the REST server interface and `explorer` there is a #hyperledger-explorer channel if that helps
Ah gotcha. I left a message there as well. Explorer is good for viewing transactions and blocks, whereas the rest server is an useful gui for the api end points for your hyperledger composer. A good example of the explorer is Etherscan for Ethereum
ah right. I guess I thought the REST GUI *was* "Explorer" whoops. thanks for the clarification
cheers. thanks for the reponse though
Has joined the channel.
hello everyledger experience nice to meet in this place
Has joined the channel.
Hey guys, I am looking for prerequisites to install Composer. Is it possible to install it on Windows (I know you can install everything up to Fabric on Windows), but for Composer there are no instructions. Are they just missing? Thx.
@OlgaLarsen Even Fabric is not simple to get running on windows, and in the end it really still all runs inside a virtual machine running linux. Composer can work on windows but it's not a straight forward so not considered for formal support. If you want to have a look there is some info here. But I haven't updated it for a while so may not be upto date with fabric and composer versions.
https://davidkel.github.io/docs/Windows/Intro.html
@davidkel Thx so much. This is great info. I kind of suspected that since you have to install Docker anyway - it should run.
Has joined the channel.
Hi all
I have problems when run the command "composer network start" from the https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
Is there anybody here can help me?
`✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 8df252e5550a91a6b47a6ff87f2aaa3f575db92ac60553dc45d7fbc12d723580: error starting container: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-09-28T22_55_41_952Z-debug.log
"
Command failed
`
This is my environement `m1@ubuntu:~/Test/tutorial-network$ docker --version
Docker version 18.06.1-ce, build e68fc7a
m1@ubuntu:~/Test/tutorial-network$ docker-compose --version
docker-compose version 1.13.0, build 1719ceb
m1@ubuntu:~/Test/tutorial-network$ composer -v
v0.20.1
m1@ubuntu:~/Test/tutorial-network$ node -v
v8.12.0
m1@ubuntu:~/Test/tutorial-network$ npm -v
6.4.1
`
Fabric is version 1.2
I read the logs from peer0, I saw this
~NewCCCC(chain=composerchannel,chaincode=tutorial-network,version=0.0.1,txid=9a25d1e0f33931c99ac825c9b2aaafa35addb090e23d1264de558717d87a61ed,syscc=false,proposal=0xc42253f8b0,canname=tutorial-network:0.0.1)
2018-09-28 22:27:22.848 UTC [chaincode] func1 -> DEBU 58a chaincode tutorial-network:0.0.1 is being launched
2018-09-28 22:27:22.848 UTC [chaincode] LaunchConfig -> DEBU 58b launchConfig: executable:"/bin/sh",Args:[/bin/sh,-c,cd /usr/local/src; npm start -- --peer.address peer0.org1.example.com:7052],Envs:[CORE_CHAINCODE_LOGGING_LEVEL=DEBUG,CORE_CHAINCODE_LOGGING_SHIM=warning,CORE_CHAINCODE_LOGGING_FORMAT=%{color}%{time:2006-01-02 15:04:05.000 MST} [%{module}] %{shortfunc} -> %{level:.4s} %{id:03x}%{color:reset} %{message},CORE_CHAINCODE_ID_NAME=tutorial-network:0.0.1,CORE_PEER_TLS_ENABLED=false],Files:[]
2018-09-28 22:27:22.848 UTC [chaincode] Start -> DEBU 58c start container: tutorial-network:0.0.1
2018-09-28 22:27:22.848 UTC [chaincode] Start -> DEBU 58d start container with args: /bin/sh -c cd /usr/local/src; npm start -- --peer.address peer0.org1.example.com:7052
2018-09-28 22:27:22.848 UTC [chaincode] Start -> DEBU 58e start container with env:
CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
CORE_CHAINCODE_LOGGING_SHIM=warning
CORE_CHAINCODE_LOGGING_FORMAT=%{color}%{time:2006-01-02 15:04:05.000 MST} [%{module}] %{shortfunc} -> %{level:.4s} %{id:03x}%{color:reset} %{message}
CORE_CHAINCODE_ID_NAME=tutorial-network:0.0.1
CORE_PEER_TLS_ENABLED=false
2018-09-28 22:27:22.848 UTC [container] lockContainer -> DEBU 58f waiting for container(tutorial-network-0.0.1) lock
2018-09-28 22:27:22.848 UTC [container] lockContainer -> DEBU 590 got container (tutorial-network-0.0.1) lock
2018-09-28 22:27:22.848 UTC [dockercontroller] Start -> DEBU 591 Cleanup container dev-peer0.org1.example.com-tutorial-network-0.0.1
2018-09-28 22:27:22.849 UTC [dockercontroller] stopInternal -> DEBU 592 Stop container dev-peer0.org1.example.com-tutorial-network-0.0.1(No such container: dev-peer0.org1.example.com-tutorial-network-0.0.1)
2018-09-28 22:27:22.849 UTC [dockercontroller] stopInternal -> DEBU 593 Kill container dev-peer0.org1.example.com-tutorial-network-0.0.1 (No such container: dev-peer0.org1.example.com-tutorial-network-0.0.1)
2018-09-28 22:27:22.850 UTC [dockercontroller] stopInternal -> DEBU 594 Remove container dev-peer0.org1.example.com-tutorial-network-0.0.1 (No such container: dev-peer0.org1.example.com-tutorial-network-0.0.1)
2018-09-28 22:27:22.850 UTC [dockercontroller] Start -> DEBU 595 Start container dev-peer0.org1.example.com-tutorial-network-0.0.1
2018-09-28 22:27:22.850 UTC [dockercontroller] createContainer -> DEBU 596 Create container: dev-peer0.org1.example.com-tutorial-network-0.0.1
2018-09-28 22:27:22.853 UTC [dockercontroller] Start -> DEBU 597 start-could not find image
................ and this
~2018-09-28 22:28:42.437 UTC [gossip/discovery] periodicalSendAlive -> DEBU 5dc Sleeping 5s
2018-09-28 22:28:44.620 UTC [chaincode-platform] func1 -> ERRO 5dd Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-09-28T22_28_44_252Z-debug.log
"
2018-09-28 22:28:44.621 UTC [dockercontroller] deployImage -> ERRO 5de Error building images: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-09-28T22_28_44_252Z-debug.log
"
2018-09-28 22:28:44.621 UTC [dockercontroller] deployImage -> ERRO 5df Image Output:
********************
********************
2018-09-28 22:28:44.621 UTC [container] unlockContainer -> DEBU 5e0 container lock deleted(tutorial-network-0.0.1)
2018-09-28 22:28:44.621 UTC [chaincode] start -> DEBU 5e1 stopping due to error while launching: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-09-28T22_28_44_252Z-debug.log
"
error starting container
error starting container
~
and fail......................................
~2018-09-28 22:28:44.621 UTC [container] lockContainer -> DEBU 5e2 waiting for container(tutorial-network-0.0.1) lock
2018-09-28 22:28:44.621 UTC [container] lockContainer -> DEBU 5e3 got container (tutorial-network-0.0.1) lock
2018-09-28 22:28:44.624 UTC [dockercontroller] stopInternal -> DEBU 5e4 Stop container dev-peer0.org1.example.com-tutorial-network-0.0.1(No such container: dev-peer0.org1.example.com-tutorial-network-0.0.1)
2018-09-28 22:28:44.625 UTC [dockercontroller] stopInternal -> DEBU 5e5 Kill container dev-peer0.org1.example.com-tutorial-network-0.0.1 (No such container: dev-peer0.org1.example.com-tutorial-network-0.0.1)
2018-09-28 22:28:44.625 UTC [dockercontroller] stopInternal -> DEBU 5e6 Remove container dev-peer0.org1.example.com-tutorial-network-0.0.1 (No such container: dev-peer0.org1.example.com-tutorial-network-0.0.1)
2018-09-28 22:28:44.625 UTC [container] unlockContainer -> DEBU 5e7 container lock deleted(tutorial-network-0.0.1)
2018-09-28 22:28:44.625 UTC [chaincode] start -> DEBU 5e8 stop failed: No such container: dev-peer0.org1.example.com-tutorial-network-0.0.1
error stopping container
2018-09-28 22:28:44.626 UTC [chaincode] Deregister -> DEBU 5e9 deregister handler: tutorial-network:0.0.1
2018-09-28 22:28:44.626 UTC [chaincode] Launch -> ERRO 5ea start failed: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-09-28T22_28_44_252Z-debug.log
"
error starting container
error starting container
2018-09-28 22:28:44.626 UTC [endorser] callChaincode -> DEBU 5eb [composerchannel][9a25d1e0f33931c99ac825c9b2aaafa35addb090e23d1264de558717d87a61ed] Exit
2018-09-28 22:28:44.626 UTC [endorser] SimulateProposal -> ERRO 5ec [composerchannel][9a25d1e0] failed to invoke chaincode name:"lscc" , error: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-09-28T22_28_44_252Z-debug.log
"
error starting container
error starting container
failed to execute transaction 9a25d1e0f33931c99ac825c9b2aaafa35addb090e23d1264de558717d87a61ed
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:181
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:131
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:173
github.com/hyperledger/fabric/core/endorser.(*Endorser).SimulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:287
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:501
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:923
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:1148
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:637
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2361
2018-09-28 22:28:44.626 UTC [endorser] SimulateProposal -> DEBU 5ed [composerchannel][9a25d1e0] Exit
2018-09-28 22:28:44.626 UTC [lockbasedtxmgr] Done -> DEBU 5ee Done with transaction simulation / query execution [9a25d1e0f33931c99ac825c9b2aaafa35addb090e23d1264de558717d87a61ed]
2018-09-28 22:28:44.626 UTC [endorser] ProcessProposal -> DEBU 5ef Exit: request from 172.20.0.1:53334
2018-09-28 22:28:44.633 UTC [common/deliver] deliverBlocks -> DEBU 5f0 Context canceled, aborting wait for next block~
When the command was run, I verified that there was a docker container was create, in the subnet of Docker0, not in the subnet of the peer0
I use no proxy
I went to create a environement with composer 0.19, fabric 1.1, the result was still the same
I went to use my fabric network rather than using fabric network provided by example of composer, the result was the same
All I success is install the business network, and got error when started it (instantiate the chaincode)
Has joined the channel.
Hello all, I am a newbie to Hyperledger composer. I have succeeded my business network with about 4 participants and 3 assets which can perform a number of transaction, I have also deployed a multiuser REST API for my business network. But I don't how to go about creating a nodejs application through which new users can sign up and sign in to the business network to carry out transaction.
I have checked up a few documentation but they aren't clear enough for me to learn.
I need a step by step guide on how to create an application through which a participant can do the following:
1. Sign up
2. Sign in
Has joined the channel.
Has joined the channel.
Has joined the channel.
I used "nohup composer-rest-server -c alice@chain -n never -w true -p 3000 &", trying to avoid the process quit with the securecrt terminal exit
but sometimes it works, sometime the process still quit with the network connection broken between the terminal ,or for some reason i am not certain.
Can i set the log level of composer-rest-server? or can i find some clue about the reason from the system log of ubuntu?
Has joined the channel.
hi there , i am facing issues with deploying the business network to local hyperledger fabric , the composer deploy command is no longer acccepted as a valid command
Hi there, any document regarding filter function in rest server?
Filter defining fields, where, include, order, offset, and limit - must be a JSON-encoded string ({"something":"value"})
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=i4oRjCDzAzCMbRku9) @rthatcher @rthatcher Thanks..
*I am getting reference error: *require not defined..
While I am trying to import a composer-client in my transaction..
Any solution for this..?
@manishgupta33366 you can't use `require` in a your business network logic.
@davidkel Thanks for the quick reply..
I was trying to issue new identity to a participant, as described here
https://hyperledger.github.io/composer/v0.19/managing/identity-issue
@davidkel Thanks for the quick reply..
I was trying to issue a new identity to a participant, as described here
https://hyperledger.github.io/composer/v0.19/managing/identity-issue
But it's giving me require not defined error
@manishgupta33366 There are 2 parts to a composer application. There is the business network which you deploy into fabric and there is client side that interacts with your business network. What you want to do has to be done client side. You need to write a node.js application, or set up a rest-server and interact with that to perform identity management
@manishgupta33366 There are 2 parts to a composer application. There is the business network which you deploy into fabric and there is client side that interacts with your business network and other capabilities. What you want to do has to be done client side. You need to write a node.js application, or set up a rest-server and interact with that to perform identity management
Is it possible to combine logic for queries ? Example: rather than WHERE (Owner == _$Owner)
rather than WHERE (ROI == _$ROI)
mistyped
@davidkel Got it..Thanks for the explanation.. :)
Basically am trying to query as a range. So example, querying cars. I could query and get a list of cars with the price between X and Y?
Okay, so figured out you can use AND in a query. Does this look okay? WHERE (ROI == _$ROIMin AND _$ROIMax)
Or like this: WHERE (ROI > _$ROIMin AND ROI <_$ROIMax)
@ronaldlong46 not tried it, but I think it should be something like `WHERE (asset.ROI > _$ROIMin) AND (asset.ROI < _$ROIMax)`
Has joined the channel.
Okay awesome. Just couldn't find an example for it. Will try that out tomrrow.
Has left the channel.
Has joined the channel.
I was going through multi-org tutorial of Composer and came across this line ```This connection profile now describes the fabric network setup, all the peers, orderers and certificate authorities that are part of the network, it defines all the organizations that are participating in the network and also defines the channel's on this network. Hyperledger Composer can only interact with a single channel so only one channel should be defined.``` Does composer supports only one channel per network?
I was going through multi-org tutorial of Composer and came across this line ```This connection profile now describes the fabric network setup, all the peers, orderers and certificate authorities that are part of the network, it defines all the organizations that are participating in the network and also defines the channel's on this network. Hyperledger Composer can only interact with a single channel so only one channel should be defined.``` Does composer supports only one channel per network? What if our requirement is to have more than one channel?
Does Composer supports V1.3 or its better to build using native fabric SDK for a real world application?
Better to use native fabric sdk
Hi Everyone
I am getting this error while installing bna file of network
kindle@kindle-V520-15IKL:~/pr-auction$ composer network install --card PeerAdmin@hlfv1 --archiveFile pr-auction@1.0.8.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
Can anybody help me in this?
[ ](https://chat.hyperledger.org/channel/composer?msg=5nNfPDdKohwfisNh9) @KindleBitSoln If you're sure that all of your peers are up and running and can communicate in the network, you should check the connection profile again; somewhere in there there's a mistake...
@AndreiLovin I have checked log one of peer and found one error in that
2018-10-01 05:31:13.700 UTC [common/deliver] Handle -> WARN 3a2 Error reading from 192.168.5.199:42350: rpc error: code = Canceled desc = context canceled
I don't know where is the issue.
Everything is perfact as per my understanding
[ ](https://chat.hyperledger.org/channel/composer?msg=AkTBcvwim5HBp3AMn) @KindleBitSoln Are all the containers running?
Yes
[ ](https://chat.hyperledger.org/channel/composer?msg=dDjYkHh55FrgZnDgW) @KindleBitSoln Let's chat maybe there is something I can help you with
Hi all
I have problems when run the command "composer network start" from the https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
Is there anybody here can help me?
`✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 8df252e5550a91a6b47a6ff87f2aaa3f575db92ac60553dc45d7fbc12d723580: error starting container: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-09-28T22_55_41_952Z-debug.log
"
Command failed
Composer does not support Fabric 1.3 yet - though it is likely to soon. Fabric 1.3 support will be like Fabric 1.2 support - Composer runs on the Fabric, but does not exploit the new features. If you want to quickly get a PoC or Demo or even prototype going Composer is still a good option, but for longer term production you would look to one of the SDKs.
Composer does not support Fabric 1.3. The current version of Composer v0.20.1 Supports Fabric 1.2. If you want to quickly get a PoC or Demo or even prototype going Composer is still a good option, but for longer term production you would look to one of the SDKs.
[ ](https://chat.hyperledger.org/channel/composer?msg=RHagc6r26EYFRDBoY) @umbala - Weh you issue the composer network start command, you are asking composer(and Fabric) to create and start a new Docker container for the Chaincode (smart contract/BNA). Yours looks like that create is failing because the container can't find the npm registry, so you will probably need to set up an npmrc file and re-do the `composer network install`. Please see the description of how to do this in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-install-issues
[ ](https://chat.hyperledger.org/channel/composer?msg=33WyT4HPPRQL5FaR7) @archit90 A Composer Business Network starts on a single channel. (Similarly a native Fabric Chaincode (smart contract) starts on a single channel). It is a feature of Fabric. Ypu can start another copy of a Business Network (or Fabric Chaincode) on a 2nd channel but it will be separate.
Each Composer business connection Card connects to a single channel.
This tutorial describes how to connect to a 2nd Network - but be careful to read the 'small print' about the restrictions. https://hyperledger.github.io/composer/latest/tutorials/invoke-composer-network
[ ](https://chat.hyperledger.org/channel/composer?msg=fbww6Z5MutNL3iZkM) @jonlee300 - there are some good examples of Filters in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#filters
[ ](https://chat.hyperledger.org/channel/composer?msg=LRKqHMtuCkdtMJ6zP) @yashk011 - `deploy` is an old command for older versions of composer (v0.16.* and below). Idfeally you will be using the latest version of Composer v0.20.1 and will be using the latest version of the documentation - https://hyperledger.github.io/composer/latest/introduction/introduction
The replacement commands for deploy are 'composer network install` and `composer network start`
[ ](https://chat.hyperledger.org/channel/composer?msg=YB9DwE4PpgYPsW8u4) @rthatcher Thanks @rthatcher . I read and try to follow their vague instructions and I was fail.
This is some steps I tried: I checked that the proxy in my unbuntu: no proxy running. Then I started Fabric, everything worked well. I checked all the container in the same network rather then docker0. I go to peer0 to check with the command:"wget https://registry.npmjs.org:443", it worked. So I followed the instruction: create PeerAdmin Card and so on. And when I run "Composer network start...", I noticed that a docker container was create use image ccenv with the name like a person name in the subnet of docker0, not in the subnet of the fabric network. I read the logs of peer0, everything was ok except they told that they didn't see ccenv container. I know this cause come from the configuration of my network, docker, npm or something like that, not come from Composer. I used the default configuration, and I try did it again with npmrcFile with some configure inside but is wasn't good and Ihad no idea what info i need to put inside: pointed to docker0, proxy but what proxy herer. Could you precise a little more deeper in detail, please!
Question, how reliable is Composer Playground as a mechanism to upgrade a business network? Yesterday, I went trough several iterations of expanding a model / script for a business network, but Playground insisted on deploying an earlier version of the model / script files, despite my changes being visible in the Playground editor. I should add to this that I first entered my changes in Visual Studio Code, then copied/pasted them into Playground and then used Playground to perform the network upgrade. Is it possible that some older version of the model / script can get 'stuck' or cached in Playground? I have now switch to the Composer CLI commands to perform the network upgrade.
@umbala - I have just seen your Stack Overflow question.
(Yes I agree the formatting in the Knowledge Wiki is not the best.)
Are you using the 'standard development fabric` - fabric-dev-servers `startFabric.sh` ?
The standard dev fabric should be running on a docker bridge called `composer_default` - and you can check this using the command `docker inspect composer_default`
The error "getaddrinfo EAI_AGAIN registry.npmjs.org:443" suggests that the new container can't connect to the npm registry.
Can I suggest that you look at the Knowledge Wiki at the part that shows creating a test container:
- Create a test container: `docker run -it --name npmtest --network composer_default --entrypoint "/bin/sh" hyperledger/composer-cli`
- then go into the container and try some `npm instrall` commands.
hi , gud afternoon
all
@mrjdomingus Composer Playground is meant to only be used as a getting started with Composer tool. It certainly should not be used as a tool for managing BNAs on your fabric network. You should use the CLI for that.
[ ](https://chat.hyperledger.org/channel/composer?msg=kLQ65aWvro6B6XiA4) @rthatcher @rthatcher : I checked it before, and tried with the method from https://stackoverflow.com/questions/49872981/instantiating-chaincode-in-hyperledger-composer-with-local-npm-registry, (verdaccio)
m1@ubuntu:~/fabric-dev-servers/tutorial-network$ docker network ls
NETWORK ID NAME DRIVER SCOPE
b46faa5ed030 bridge bridge local
051b81e8fc06 composer_default bridge local
e5feed4278b8 host host local
e880a12d5c01 none null local
m1@ubuntu:~/fabric-dev-servers/tutorial-network$ docker inspect composer_default
[
{
"Name": "composer_default",
"Id": "051b81e8fc06e5a161214d816c8658bfedc7418122dcadc1f9ef0ffc1b0e7600",
"Created": "2018-09-29T17:15:02.499979552-07:00",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": [
{
"Subnet": "172.18.0.0/16",
"Gateway": "172.18.0.1"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {
"397a60481667cca7f4e36c885d49e74d2df8b58643d2cd73409fed41a887f5be": {
"Name": "ca.org1.example.com",
"EndpointID": "bea9e61d6ae2d2e809edb5872a4d47234e71edf3429a6d03af995dda6b7fbfbf",
"MacAddress": "02:42:ac:12:00:04",
"IPv4Address": "172.18.0.4/16",
"IPv6Address": ""
},
"b7cc95d5dc94510e4f07a4db8a328cab4fe49d9d17a1eb8992ca590fd9261022": {
"Name": "couchdb",
"EndpointID": "37893df99375fbcdac010752fe6ce474f50238ebc4d1cd985307d93ea7351a8e",
"MacAddress": "02:42:ac:12:00:03",
"IPv4Address": "172.18.0.3/16",
"IPv6Address": ""
},
"d86751b290031645f1d57dd5d82a99d21d36c14108a7b598f919a9a58e028a6d": {
"Name": "peer0.org1.example.com",
"EndpointID": "0bfb551313d95c8cdce055f1f8f0223b12afd83882dc4cefa9859682425ce485",
"MacAddress": "02:42:ac:12:00:05",
"IPv4Address": "172.18.0.5/16",
"IPv6Address": ""
},
"fa23dc188e1a5ba69a93d6eac3be6d66eb57fc738ba2833dfe15d288735aa9af": {
"Name": "orderer.example.com",
"EndpointID": "78cc8a47fe1444d77d9140be1d325dfc162ef328632c9b5de0bebc251a9e4075",
"MacAddress": "02:42:ac:12:00:02",
"IPv4Address": "172.18.0.2/16",
"IPv6Address": ""
}
},
"Options": {},
"Labels": {}
}
]
m1@ubuntu:~/fabric-dev-servers/tutorial-network$ docker pull hyperledger/fabric-ccenv
Using default tag: latest
latest: Pulling from hyperledger/fabric-ccenv
Digest: sha256:647dda88f551939640d9c280bd0ea4ad34748ea72f102bc6b3a8029e329b4499
Status: Image is up to date for hyperledger/fabric-ccenv:latest
[ ](https://chat.hyperledger.org/channel/composer?msg=kLQ65aWvro6B6XiA4) @rthatcher m1@ubuntu:~/fabric-dev-servers/tutorial-network$ docker run -it --name npmtest --network composer_default --entrypoint "/bin/sh" hyperledger/composer-cli
Unable to find image 'hyperledger/composer-cli:latest' locally
latest: Pulling from hyperledger/composer-cli
4fe2ade4980c: Pull complete
eeb7d76f44e7: Pull complete
e35f88fcc259: Pull complete
4da718b36cad: Pull complete
Digest: sha256:d3e547ff09d966eb1159cc17468c78cbdb3a7eda9610f50474b490e8c7eff252
Status: Downloaded newer image for hyperledger/composer-cli:latest
~ $ npm install
npm WARN saveError ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/home/composer/package.json'
npm WARN composer No description
npm WARN composer No repository field.
npm WARN composer No README data
npm WARN composer No license field.
up to date in 0.979s
found 0 vulnerabilities
~ $ composer card create
[ ](https://chat.hyperledger.org/channel/composer?msg=kLQ65aWvro6B6XiA4) @rthatcher ~ $ npm install -g composer-cli
/home/composer/.npm-global/bin/composer -> /home/composer/.npm-global/lib/node_modules/composer-cli/cli.js
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules/composer-cli/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
+ composer-cli@0.20.1
updated 3 packages in 155.488s
~ $ exit
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Jek7h9SxCh49eu8Go) @davidkel Thanks, @davidkel, I am just starting with Hyperledger and Composer, so am still exploring the development process and the limits of the tooling. Should you be able to point me to any best practices in this field, than that would be most appreciated.
Hello everyone, for a fabric setup of 2 organisation on 2 different machines, how should I structure the connection profiles json? For the "local" peers on which I'm trying to install the .bna I'm using localhost as url, but for the peers that are on the second machine if I write the machine's IP I'm getting a ssl error:
5098 ssl_transport_security.cc:599] Could not load any root certificate.
E1001 12:48:13.096425270 5098 ssl_transport_security.cc:1400] Cannot load server root certificates.
E1001 12:48:13.096434486 5098 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E1001 12:48:13.096438990 5098 secure_channel_create.cc:111] Failed to create secure subchannel for secure name '10.0.0.8:7051'
E1001 12:48:13.096441364 5098 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
E1001 12:48:13.096740728 5098 ssl_transport_security.cc:599] Could not load any root certificate.
E1001 12:48:13.096749621 5098 ssl_transport_security.cc:1400] Cannot load server root certificates.
E1001 12:48:13.096754448 5098 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E1001 12:48:13.096756852 5098 secure_channel_create.cc:111] Failed to create secure subchannel for secure name '10.0.0.7:7051'
E1001 12:48:13.096758880 5098 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
The installation works, at least it says it does, but I'm getting these errors before the installation ends.
after executing this command "yo hyperledger-composer:angular" when i executed "npm start" i am getting this error: ERROR in Error encountered resolving symbol values statically. Expression form not supported (position 30:19 in the original .ts file), resolving symbol AppModule in /home/jrs/fabric-dev-servers/tutorial-network/tutorial-network/src/app/app.module.ts
webpack: Failed to compile.
somebody please help
@AndreiLovin - have you seen the multi-Org tutorial? It is the best place to start for working with Composer and a Multi-Org Fabric
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
A couple of checks to make:
1. If you are using localhost or IP numbers in the connection.json, do you have `"grpcOptions": {"ssl-target-name-override" ...` in Peer definitions?
2. Have you Started the peers on both machines with the correct Crypto material?
3. Have you included the certificates in the connection.json with the correct format ? with no hard line breaks?
For initial testing of the Fabric, have you considered starting your Fabric without SSL? to prove other aspects of communication?
Have you tested the Fabric with something like the marbles test chaincode to prove the Fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=tB5yCKXkFuripyzYS) @jituji What version of Composer (and Fabric) are you running? Are you using the tutorial-network directly from the Developer Tutorial?
@rthatcher fabric v 1.2. composer version not sure how to find out. even though name is tutorial-network, i have my own model file and transaction
@jituji - `composer -v` should give the version of Composer.
After that can you try `npm ls -g --depth=0` and check that the other composer modules have the same version.
@rthatcher I have followed instructions from tutorial: https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html
composer version v0.20.0
+-- composer-cli@0.20.0
+-- composer-playground@0.20.0
+-- composer-rest-server@0.20.0
+-- generator-hyperledger-composer@0.20.0
+-- npm@6.4.1
`-- yo@2.0.5
@jituji - thanks for the version info. I have just tested an 'extended' Tutorial-Network with Composer v0.20.1 (and it worked as expected)
Looking at the release notes - there are some changes for REST and the Generator - so I would suggest upgrading to v0.20.1 and retry in a new folder.
https://github.com/hyperledger/composer/releases
If you still get the error I would suggest Posting a question on Stack Overflow together with your model, logic etc.
But be aware that Composer is not being actively developed with new features now: https://lists.hyperledger.org/g/composer/message/125
@rthatcher thanks a lot. i will try your suggestions
Has anyone been able to use a PUT operation with composer?
if so, what's the proper syntax for the url parameter?
Hi @rthatcher How to run composer rest api and Angular app separately? I am using YO generator for angular app
@mahoney1
Has joined the channel.
Hi all of you good people
I have read that the IBM Folks and Hyperledger devs will not invest to much more in the future in composer
I found this in the TSC Article - https://lists.hyperledger.org/g/composer/message/125
What are your thaughts about it ?
Can we still use only Javascript for everything or we need to switch to Go language ? How can we model the networks
How to define the Assets and Participants
What to use in future for the Product enviroment ?
Any help is appreciated
@Zeljko Milinovic a window of opportunity has opened for partners and go is not perfect but is more native than js
[ ](https://chat.hyperledger.org/channel/composer?msg=vJvTxv4BxM3fHdAwT) @greg2git HI. This is great mindset changer for me. I know that Go is more native for the Fabric, but I was thinking that it will be possible to use the Composer for productive apps in the future
Which partners
What should I focus myself now
If I invest now time in Composer and build some apps and production network
it will be no longer supported
and not so easy to be maintained
what are you thoughts ? to be done ?
my thoughts exactly, so i stopped soon after they made it official
In worldsibu we have developed Convector as an alternative to Composer
as well is open source
hmmm
[ ](https://chat.hyperledger.org/channel/composer?msg=c98sEiZagaKWAMpZ5) @greg2git tell me which tools you use the for the PoCs , how do you build the network, yo need to code the Chaincode in Go, and User Aps with NodeJS SDK
are there any new guides
I really like the modelling language and .cto
it is really simple
what is the strategy now ?
i switched to Hyperledger-Explorer and couchDB, but that's just for strawman, nothing production ready but less complex
Explorer is just so see what is happening
but for development
in the Future we need the Go language ? Think ?
@rthatcher - How are you? Any thoughts from your side on these questions:
@rthatcher : I have read that the IBM Folks and Hyperledger devs will not invest to much more in the future in composer
I found this in the TSC Article - https://lists.hyperledger.org/g/composer/message/125
What are your thaughts about it ?
Can we still use only Javascript for everything or we need to switch to Go language ? How can we model the networks
How to define the Assets and Participants
What to use in future for the Product enviroment ?
Any help is appreciated
@Zeljko Milinovic Fabric supports GO, Node.js and soon to include Java as the platform for chaincode. From a client side (ie client SDK) you have Node.js, Go and there is a Go SDK (but it still appears to be in non official released state).
@Zeljko Milinovic Fabric supports GO, Node.js and soon to include Java, as the platform for chaincode. From a client side (ie client SDK) you have Node.js, Go and there is a Go SDK (but it still appears to be in non official released state).
@Zeljko Milinovic Fabric supports GO, Node.js and soon to include Java, as the platform for chaincode. From a client side (ie client SDK) you have Node.js, Go and there is a Java SDK (but it still appears to be in non official released state).
Hmmm
@davidkel - I am confused here. I see in the guide that the NodeJS SDKs are supported
https://hyperledger-fabric.readthedocs.io/en/release-1.2/getting_started.html
Does this mean that I do not need at any point Go Lang ?
I can do everything with NodeJS
Or the SDKs are there only to connect to Chaincode ?
To communicate with apps
Can I use NODEJS SDKs to write Chaincode?
Smart Contracts
how can I model the networks and assets and participants ?
@Zeljko Milinovic node.js for chaincode is part of core fabric, node.js for client side applications is also part of core fabric.
The Hyperledger Fabric Client SDK makes it easy to use APIs to interact with a Hyperledger Fabric blockchain.
ok and also for CORE Fabric and building Chaincode I can still use NodeJS?
Do you have a link or Documentation for this maybe ?
https://fabric-shim.github.io should provide reference material for for the low level shim interaction. However there is work going on to providing a higher level API for both client side and chaincode side which composer users may be more familiar with. It's not coming on the 1.3 release but very soon.
https://fabric-shim.github.io should provide reference material for for the low level shim interaction. However there is work going on to providing a higher level API for both client side and chaincode side which composer users may be more familiar with. It's not coming in the 1.3 release but very soon.
HI
https://fabric-shim.github.io/
Cannot open this page
sorry for so many questions, but I am a littlbe bit confused now and do not know how to switch now back thinking in productive Fabric only with Javascript and NodeJS
sigh, it used to be there. Something has gone wrong with the docs publish.
ok thanks for your help
I am going away from the keyboard now, will be back tomorrow
I hope I get some cool tips on how te get started with Fabric for Chaincode and Apps , thanks a lot in advance
@Zeljko Milinovic you would need to ask on the fabric channels. Not something that can be addressed in this channel
https://github.com/hyperledger/fabric-samples (for examples)
@Zeljko Milinovic once you decide, please let us know whether you end up going with Go or with js #minisurvey
I would like to go with NodeJS
[ ](https://chat.hyperledger.org/channel/composer?msg=fY6vaJbFdXmbFxDup) @rthatcher 1. I am using grpcOptions in peer definitions.
2. I have included the certificates.
3. I have tested the network with the marbles chaincode and it works.
4. I have tested the network with all of the orgs on only one host.
For networks that have multiple hosts and on each host an organisation
[ ](https://chat.hyperledger.org/channel/composer?msg=fY6vaJbFdXmbFxDup) @rthatcher 1. I am using grpcOptions in peer definitions.
2. I have included the certificates.
3. I have tested the network with the marbles chaincode and it works.
4. I have tested the network with all of the orgs on only one host.
For networks that have multiple hosts and on each host an organisation
[ ](https://chat.hyperledger.org/channel/composer?msg=fY6vaJbFdXmbFxDup) @rthatcher 1. I am using grpcOptions in peer definitions.
2. I have included the certificates.
3. I have tested the network with the marbles chaincode and it works.
4. I have tested the network with all of the orgs on only one host.
For networks that have multiple hosts and on each host an organisation, the connection profile json must have all the peers declared? or there must be one connection profile for each org/host. If there must be one connection profile, what do I actually write for the peers URL, because what I've tried doesn't really work.
[ ](https://chat.hyperledger.org/channel/composer?msg=fY6vaJbFdXmbFxDup) @rthatcher 1. I am using grpcOptions in peer definitions.
2. I have included the certificates.
3. I have tested the network with the marbles chaincode and it works.
4. I have tested the network with all of the orgs on only one host.
For networks that have multiple hosts and on each host an organisation, the connection profile json must have all the peers declared? or there must be one connection profile for each org/host. If there must be one connection profile, what do I actually write for the peers URL, because what I've tried doesn't really work.
On host 1: I've written localhost for the local peers and the ip for the remote peers; then installed the bna and started the network. On host 2: I did the same thing, localhost for local peers and ip for remote peers; then installed the bna. The installations finish successfully, but before that I'm receiving the ssl errors.
Hi guys. I was thinking because of security, NodeJS and also because of support , will be hard to continue. I think Go is the way to go.
Has joined the channel.
I have asked in the #fabric group how to switch the mindset from Composer to Go when it goes from modelling to development of Use Cases and productive Enviroments
If anyone has some good links for starting the switch I would be much appreciated
Thanks in advance
Hi @rthatcher , I solved my problem. The cause come from the the OS, or there structure, kenel inside. I used Ubuntu 16.04, run by VMware in Windows 10 and whatever I did, I got failure to instantiate the chaincode. I tried on MacOS, or Ubuntu 14, everything went well. So thanks for your help, you're so kind, and I have this experience, show it to you in order to help someone else has the same problem as me.
@Zeljko Milinovic could you elaborate more about why you think chose Go over Node.js ? Do you think Go is more secure for example and if so why ?
@Zeljko Milinovic could you elaborate more about why you think chose Go over Node.js ? Do you think Go is more secure for example as you mentioned that
@Zeljko Milinovic could you elaborate more about why you chose Go over Node.js ? Do you think Go is more secure for example as you mentioned that
@AndreiLovin - when I did not use any IP numbers in my config. I used host *names* in my `configtx` and `crypto-config` files, and also names in all my `docker-compose` yaml files, and finally names only in my connection.json files. I then made entries in my '/etc/hosts' files for the numeric addresses on both my host computers, and also used the Docker Compose feature of `extra_hosts:`.
I only used 1 peer per host computer for simplicity. You need to remember that both the client computers need to be able to resolve and address the peers on both the host computers, and also that the Containers need to be able to resolve and address each other.
I used Docker Compose with extra hosts, but other members of the community have had success using Docker Swarm or Kubernetes.
Announcement: There have been problems reported using composer 0.20 and fabric 1.2 where CLI commands return succeeded but nothing has been added to the world state or blockchain. This was the result of a bug in fabric 1.2. Today fabric-dev-servers has been updated to fabric 1.2.1 which addresses this issue
Announcement: There have been problems reported using composer 0.20 and fabric 1.2 where CLI commands return succeeded but nothing has been added to the world state or blockchain. This was the result of a bug in fabric 1.2. Today fabric-dev-servers has been updated to fabric 1.2.1 which addresses this issue. You need to ensure that if you are using composer 0.20 that you are using fabric 1.2.1 and not fabric 1.2.0 if you are using BYFN or your own custom fabric setup
@rthatcher I want to run composer-rest-server and angular app separatly how to do this? I am following developer tutorial on hyperledger composer website https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial @rthatcher
@sureshtedla they are separate, however the yo generated angular application must use the rest server to interact with a business network
Clipboard - October 2, 2018 3:56 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=g5wP5NvCAsskdCt2N) @davidkel getting this error?
[ ](https://chat.hyperledger.org/channel/composer?msg=eWFHSTYjHweNzhziu) getting this error? @davidkel
[ ](https://chat.hyperledger.org/channel/composer?msg=eWFHSTYjHweNzhziu) getting this error? @davidkel @waleed
@sureshtedla Looks like you don't have a rest server running on your local machine on port 3000
[ ](https://chat.hyperledger.org/channel/composer?msg=sQufASGKCRkveu3z2) @davidkel when i am doing changes in angular app it is getting error like this
rest server getting terminated in middle
@sureshtedla sorry no idea why your `rest server getting terminated in middle`
why does creating/updating a new business network take ~2 minutes . I see this log message in composer-playground when using dockerized fabric `info: [Hyperledger-Composer] :ConnectionProfileManager :getConnectionManagerByTyp Looking up a connection manager for type 0=hlfv1`
why does creating/updating a new business network take ~2 minutes . I see this log message in composer-playground when using dockerized fabric `info: [Hyperledger-Composer] :ConnectionProfileManager :getConnectionManagerByTyp Looking up a connection manager for type 0=hlfv1` After this is takes time. Can we reduce timeouts if any for development purposes?
@archit90 fabric goes through a process of building a chaincode image of the business network which includes performing an npm install to download all the pre-reqs needed for the business network to run (ie the composer runtime). Once done it then starts that chaincode container and invokes `init` where it runs some composer code. This simulation from all peers in the network is returned to the client where it gathers those responses and sends them to the orderer. It then waits for the orderer to batch them into a block, send the block to the peers and then the peers to notify that the block has been committed. This is the reason start/upgrade takes as long as it does
@archit90 Is there a way to make development quicker & easier ? Technically there is, but the only documented way is to use playground using the web browser connection (which emulates a fabric network)
@archit90 Is there a way to make development quicker & easier ? Technically there is, but the only 2 documented waya is to
1. use playground using the web browser connection (which emulates a fabric network)
2. write unit tests that are driven using the embedded connector
Thanks @davidkel So i which means if we have more nodes in network, once the code gets downloaded on all nodes and responses reach client, til then deploy will block?
Also can we use `console.log` ? If yes which container can we check the logs from.?
[ ](https://chat.hyperledger.org/channel/composer?msg=uMNmspoTKW5zogx2G) @davidkel Thanks .. will look into 2 some time later. Probably will just go with 1 for now. :)
Has joined the channel.
@archit90 console.log in the business network logic will write out to the chaincode container log (usually a container with the name starting `dev-` is a chaincode container).
Has joined the channel.
@davidkel thanks, just realized that new deployments happen in a separate container, so had to check logs for newer container.
Hi experts, Getting the following error [[{"code":20,"message":"Authorization failure"}]] whe trying to composer identity issue
what does code 20 means
knowing that i do composer network ping successfully
with the same card
if transaction has optional reference `-->` to partcipant, can we distinguish between not passing that value vs the value passed but that reference is non existent?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZNZ33RJsmm69XTRcX) @rrishmawi This error means that the Identity (card) you are using for the `composer identity issue` command does not have the 'rights' to issue new identities.
The original Network Admin card (? admin@my-network ?) has the rights, and if you want a second card to be able to issue, you need to use the ` --issuer ` option.
https://hyperledger.github.io/composer/latest/reference/composer.identity.issue.html
[ ](https://chat.hyperledger.org/channel/composer?msg=ZNZ33RJsmm69XTRcX) @rrishmawi This error means that the Identity (card) you are using for the `composer identity issue` command does not have the 'rights' to issue new identities.
(You might be able to see a fuller error message in the CA container log)
The original Network Admin card (? admin@my-network ?) has the rights, and if you want a second card to be able to issue, you need to use the ` --issuer ` option.
https://hyperledger.github.io/composer/latest/reference/composer.identity.issue.html
[ ](https://chat.hyperledger.org/channel/composer?msg=Q5TTWCbvx3eBheTJC) @rthatcher I am actually trying to issue an identity with --issuer flag.
@rrishmawi - can you try the original Network Admin card ?
the same issue
[ ](https://chat.hyperledger.org/channel/composer?msg=Rd3Lwa8HtkyhFng83) @rthatcher facing the same error
@rrishmawi - what errors are you seeing in the log of the ca container?
Are you using the standard development Fabric (./startFabric.sh from fabric-dev-servers) or a custom Fabric?
What version of Fabric and what version of Composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=68kEEHyiyRCq4ShCj) @rthatcher y es i am using ./startfabric with hlfv11, composer 0.19.4. how toget the fabric ca logs?
Has joined the channel.
Hi,
Is it possible to get count of all assets?
[ ](https://chat.hyperledger.org/channel/composer?msg=WtRwWzskiAZZN9Edy) @rthatcher I created 2 connection profiles for both hosts that have either localhost or remote IP, depending on which host their used and everything goes through, the .bna installation, the cards creation, the network start on host 1. But when it comes to ping the network both hosts give error:
This is what I'm receiving for host 1:
Error: Error trying invoke business network. Error: Peer localhost:7051 has rejected transaction '92a332f3c48fa4f1f3e1b858d9f21cf49d191205f1e5da7c3a4724e193ed8974' with code ENDORSEMENT_POLICY_FAILURE
This is when I ping on host 2:
Error: Error trying to ping. Error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier 'ca847f358ae8007968e02b194ed034fe82d55595ec2f7961a570de0c89fdd481', has not been registered
One other thing: After the composer installation on host 1 two new containers have appeared (dev-peer0... and dev-peer1) but on host 1 only one container has appeared (dev-peer0). A container should have appeared for peer1 on host 2.
[ ](https://chat.hyperledger.org/channel/composer?msg=qEY52gEFFJMi2TSx9) @OlegLukasonok create query:
```
query selectAssets {
description: "Select all assets"
statement:
SELECT org.example.basic.SampleAsset
}
```
then execute it:
```
let results = await query('selectAssets');
let count = results.length;
```
[ ](https://chat.hyperledger.org/channel/composer?msg=aatJKvMQjGarSEnfC) @rrishmawi ` docker logs ca.org1.example.com ` to get the CA log
Are you really on 0.19.4 or 0.19.14 ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ri9zux8hxPGy68W92) @rthatcher Thanks. i am at 0.19.15 it was a typo. i deployed the application again from scratch and created the participants and the identities again and all went good.
I have a another question, does really restarting the fabric, resets the identities? i
[ ](https://chat.hyperledger.org/channel/composer?msg=2cPbYB8p9Caq9F7vX) @rrishmawi Yes - if you re-run startFabric.sh then all your identities are deleted, and you need to delete all the cards (except PeerAdmin)
This Stack Overflow Q/A explains a little more: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
[ ](https://chat.hyperledger.org/channel/composer?msg=cqP45vqE3Yot9u3xs) @rthatcher Thanks, you are the best :)
Has joined the channel.
Good!
I wanted to know how you can do to update a chaincode when you add a new organization to a channel
Has joined the channel.
Hi composer community, i would like to ask a question about the composer, specially the playground. There are add, edit and remove buttons at default.. They are not implemented as transactions from my side, where are they implemented?
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=SHqGopzLtbNmxARmr) @networkboss99 these are system transaction which are implemented in composer
[ ](https://chat.hyperledger.org/channel/composer?msg=SHqGopzLtbNmxARmr) @networkboss99 these are system transactions which are implemented in composer
[ ](https://chat.hyperledger.org/channel/composer?msg=SHqGopzLtbNmxARmr) @networkboss99 these are system transactions which are implemented in composer/fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=erDCYj3oNLTjpzhjE) @waleed Thx for you answer @waleed, can i somehow get the events from them? Like if something is created -> emit event
[ ](https://chat.hyperledger.org/channel/composer?msg=Jy7L24DvJRtmmzKNh) @networkboss99 this ist
[ ](https://chat.hyperledger.org/channel/composer?msg=Jy7L24DvJRtmmzKNh) @networkboss99 this is a good question
[ ](https://chat.hyperledger.org/channel/composer?msg=Jy7L24DvJRtmmzKNh) @networkboss99 this is a good question!
[ ](https://chat.hyperledger.org/channel/composer?msg=Jy7L24DvJRtmmzKNh) @networkboss99 you can do this through a normal transaction which you impelement by your self
[ ](https://chat.hyperledger.org/channel/composer?msg=KTf7wsomscuzaQJQg) @Zeljko Milinovic that was a quick decision - i will have you classified as a Go devop now and will see you in #fabric-sdk-go :red_car:
I wanted to know how can we check if a relationship defined within Transaction object exists or not? i tried isRelationship() function but it returns true or an non existent relationship entity is added?
I wanted to know how can we check if a relationship within Transaction object exists or not? i tried isRelationship() function but it returns true or an non existent relationship entity is added?
[ ](https://chat.hyperledger.org/channel/composer?msg=zYs3LppagczrHxne2) Got my answer, `getAssetRegister("asset").exists(assetId)` works. But i do not understand why asset.isRelatationship() returns true even if target object is non existent
[ ](https://chat.hyperledger.org/channel/composer?msg=zYs3LppagczrHxne2) Got my answer, `getAssetRegistery("asset").exists(assetId)` works. But i do not understand why asset.isRelatationship() returns true even if target object is non existent
[ ](https://chat.hyperledger.org/channel/composer?msg=zYs3LppagczrHxne2) @archit90 I think you could get the Registry for the object of the Relationship and then use `exists()`
https://hyperledger.github.io/composer/latest/api/client-assetregistry#exists
@rthatcher thanks, that worked, do you what isRelationship() is to be used for?
[ ](https://chat.hyperledger.org/channel/composer?msg=chgjezyNhpqAaQZNK) @archit90 haven't tested it recently but assume it is really _isValidRealtionshipType()_ rather than instance.
@rthatcher thanks, i think your explanation is also plausible.
Please help me with a few more questions
1. is the relationship between transaction and its (chaincode) logic defined in `lib/logic.js` file dependent on `@transaction` and `@param` annotations ?
2. What APIs are available to be used within `lib/logic.js` file, as getAssetRegistry() function available directly.I guess all the functions in BusinessNetworkConnection are available.
Please help me with a few more questions
1. is the relationship between transaction and its (chaincode) logic defined in `lib/logic.js` file dependent on `@transaction` and `@param` annotations ?
2. What APIs are available to be used within `lib/logic.js` file, as `getAssetRegistry()` function available directly.I guess all the functions in BusinessNetworkConnection are available.
Please help me with a few more questions
1. is the relationship between transaction and its (chaincode) logic defined in `lib/logic.js` file dependent on `@transaction` and `@param` annotations ?
2. What APIs are available to be used within `lib/logic.js` file, as `getAssetRegistry()` function available directly.I guess all the functions in `BusinessNetworkConnection` are available.
Please help me with a few more questions
1. is the relationship between transaction and its (chaincode) logic defined in `lib/logic.js` file dependent on `@transaction` and `@param` annotations ?
2. What APIs are available to be used within `lib/logic.js` file, as `getAssetRegistry()` function available directly.I guess all the functions in `BusinessNetworkConnection` are available.. Perhaps all client APIs are available
please excuse me if these are basic questions, i am new to HL composer
@archit90 for TP functions (ie running inside of fabric) you might want to take a look at
https://hyperledger.github.io/composer/latest/reference/js_scripts.html
BusinessNetworkConnection is client side only (in fact anything from composer-client and composer-admin is client side only), so not available in TP functions. Not sure we havea definitive list, but this provides a lot of the runtime side apis
https://hyperledger.github.io/composer/v0.19-unstable/api/runtime-api
(it's missing `request` which is also available)
@archit90 for TP functions (ie running inside of fabric) you might want to take a look at
https://hyperledger.github.io/composer/latest/reference/js_scripts.html
BusinessNetworkConnection is client side only (in fact anything from composer-client and composer-admin is client side only), so not available in TP functions. Not sure we have a definitive list, but this provides a lot of the runtime side apis
https://hyperledger.github.io/composer/v0.19-unstable/api/runtime-api
(it's missing `request` which is also available)
The @transaction and @param annotations are used to declare that that function is a TP function that can be invoked from a client application
Has joined the channel.
Heya, was wondering if a future roadmap for Composer is published anywhere?
@JoshFodale Statement of direction is here https://lists.hyperledger.org/g/composer/message/125
:wave: hello! I have a network with lots and lots of assets that are relatively similar. I created an abstract asset and extended the other assets (with slight additions). Now I'm creating transactions...do I need to create the transaction on every single asset? I'd like to abstract the transaction but cannot find any examples and it's not working.
any help would be greatly appreciated!!
if there is a noobie channel where my question fits better, please let me know!
@micklynch Composer has system transactions that can be used to create any concrete defined asset or participant (You can see this for example if you use playground to test your bna, or run the rest-server to generate a rest api for your business network). You would code your own TP functions to perform more complex types of interaction
thanks @davidkel ! Yes, I am testing using the composer-playground and also running cucumber tests. If no examples exist, then I'll keep pushing forward...just thought that it might be a common enough problem in networks with lots of assets.
Hello Team, I need help with authentication for the rest api. II went through this post https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc. this one use github passport and uses the token stored a the cookie; however, I am using the native google plus login with needs to pass the access token to gain access to the rest api. is the any example that I refer to that passes the access token over http?
Hi Everyone
I was trying to install business network bna file but it being failed
```
kindle@kindle-V520-15IKL:~/pr-auction$ composer network install --card PeerAdmin@hlfv1 --archiveFile pr-auction@1.0.8.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
```
Can anybody help me in this
?
hi anyone ...help me how to access API with composer
[ ](https://chat.hyperledger.org/channel/composer?msg=SDDjYdWakRRnRJFLF) @davidkel thank you @davidkel it works for the cloud network now.
@gauravgiri as for your problem locally I see you are running composer 0.20 which means fabric 1.2 I suspect you are hitting the fabric bug where the blockchain isn't being updated, I highly recommend you move to fabric 1.2.1 which fixes this bug
[ ](https://chat.hyperledger.org/channel/composer?msg=7ApZAk8zSAeJCFzgm) @davidkel right @davidkel, thank you for this information. will update locally as you suggested. thank you.
Good!
I wanted to know how you can do to update a chaincode when you add a new organization to a channel
[ ](https://chat.hyperledger.org/channel/composer?msg=ixpTy4QqANxHcnozM) @waleed @waleed - This query will require to load all assets into runtime memory. Is there a way/operator of getting this count without loading all assets into memory ?
[ ](https://chat.hyperledger.org/channel/composer?msg=JrdhYSzk3sAhbpTS9) @OlegLukasonok I don't think so
@garaujo You need to install the business network onto the peers of the new organisation. The Peers will build and run that chaincode when they receive the first request.
@OlegLukasonok just to confirm what @waleed said, there are no summation operators like COUNT in the composer query language
[ ](https://chat.hyperledger.org/channel/composer?msg=WWoPQxjEwDTz7erz9) @waleed So basically -> there is no way of having nice pagination on assets in Client side?
Unless query -> returns some kind of cursor and not exact data.
@OlegLukasonok There is no support for pagination at all on queries in composer. Although currently documented, LIMIT and SKIP don't do anything because fabric don't allow chaincode to modify the limit and skip values. LIMIT and SKIP are in the process of being removed from the documentation
:( that is not very helpful
I thought it should be common sense of having basics querying operators.
[ ](https://chat.hyperledger.org/channel/composer?msg=Ei63gWfFmj85dzaA2) @davidkel And for install the business network onto the peers of the new organisation I need the PeerAdmin for this new org right? How can I get the PeerAdmin if the organization has added with Hyperledger Fabric scripts?
@OlegLukasonok Composer query language isn't SQL, but by making it look like SQL does confuse the issue. It depends on what capabilities are available in the mango query language (which is the language used by couchdb) and what fabric allows chaincode to do.
@garaujo yes you will need the identity that has admin authority to install chaincode and you will need to build a new card file using that identity and import the identity into the card store. Whoever sets up that peer should be able to provide that identity
@garaujo yes you will need the identity that has admin authority to install chaincode and you will need to build a new card file using that identity and import the card file into the card store. Whoever sets up that peer should be able to provide that identity
[ ](https://chat.hyperledger.org/channel/composer?msg=Fg6RSJ6TY8nDSZzL4) @davidkel Then my qustion would be how can I pass aggregate query same as to MongoDB into hyperledger? And expose results ?
[ ](https://chat.hyperledger.org/channel/composer?msg=pShLMyY4Ge8rmorsL) @davidkel What I have done so far is to install a third organization following the Hyperledger Fabric tutorial. For this I added the organization to the channel obtaining the block genesis and adding the org3. All this let's say I've done it with scripts and environment variables that attack hyperledger Fabric. But the last step would be to update the channel with the new version of the chaincode, the problem is that my chaincode has been written using Composer and not directly with fabric. I do not understand then how I could obtain now the PeerAdmin of the org3 to be able to update the version of the chaincode (.bna de composer) in the channel.
Thank you
@OlegLukasonok if couchDB and the mango query language supports what you want then you can use use the low level fabric chaincode api (https://fabric-shim.github.io if it was actually up which it appears not to be at the moment :-( ) To access the stub you need to obtain it using the getNativeAPI() call in a TP function. That calls returns the stub for qhich you can the do pure chaincode calls
@garaujo upgrading chaincode on the channel you would use the `composer network upgrade` command. This requires an identity with channel admin authority. So if you have started the business network you would use the same card to perform the upgrade
[ ](https://chat.hyperledger.org/channel/composer?msg=LDDCAFeXfozHj624p) @davidkel fabric-shim.github.io -> gives 404 network error.
@OlegLukasonok I know its seems to be down at the moment :-(
Only alternative I can offer is look at the source in the read only github repo https://github.com/hyperledger/fabric-chaincode-node
Hello, One question, is there a way to set the docker where the actual smart contract runs log level?
I have way too much cpu usage and I think its caused by the AccessController logs
(my network admin doesn't have the permissions to execute setloglevel)
@FlorentinoSainz composer runtime honours the peer configuration for chaincode logging so if you have this set to DEBUG for example then composer is going to run with debug logging. If you are using a docker-compose file then you should look at
the peer setting for `CORE_CHAINCODE_LOGGING_LEVEL`
@davidkel thanks, but, is there a way to do it on the fly?
`composer network loglevel`
no permission :( (its a pseudo-pr network)
Hi experts, when we call wallet import REST API, how does the consequent calls get authentication (for example when adding the withcredentials=true)? how the token is handled using cookies.
@FlorentinoSainz That's the only way to do it dynamically, sorry
i'll try messing with the docker, thanks anyways :)
can any one explain to me the exact flow?
[ ](https://chat.hyperledger.org/channel/composer?msg=fFSS28FxRJbgLAtrh) @maniyas There are some resources that will help:
This guide in the Composer Docs: https://hyperledger.github.io/composer/latest/applications/node.html
The Composer Sample Applications: https://github.com/hyperledger/composer-sample-applications/tree/master/packages
- The letter of Credit sample is the newest, but the Digital Property app might be the simplest as there is no GUI element.
The API documentation: https://hyperledger.github.io/composer/latest/api/api-doc-index
@garaujo I would suggest also going through the mult-org tutorial. It provides details about how to set things up for 2 orgs and should provide you with the knowledge to extend this to more organisations
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@garaujo I would suggest also going through the mult-org tutorial. It provides details about how to set things up for 2 orgs and should provide you with the knowledge to extend this to more organisations
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
There is also some detail about upgrading here
https://hyperledger.github.io/composer/latest/business-network/upgrading-bna
from the multi-org you should be able to install the bna onto all peer organisations then perform an upgrade
[ ](https://chat.hyperledger.org/channel/composer?msg=ZcrtfkRgsbnvxLWz6) @rrishmawi - I don't know the detailed exact flow, but this might help - the access token is available in a cookie which is called ` access_cookie ` or something very similar - but I think it contains more than just the characters that are shown on the RESt Server Explorer, so you may have to 'extract' the token from that cookie. Then you can supply it in subsequent calls as a HTTP Request Header `X-Access-Token`
@davidkel do you know if there's a way to force re-deployment of the code in my peer? (the same thing that happens when you do network upgrade)
but without actually changing the version of the code
(my peer or all the peers)
@FlorentinoSainz no sorry, the version number has to change
@FlorentinoSainz You can just change the version number of your bna, install and upgrade.
[ ](https://chat.hyperledger.org/channel/composer?msg=yzfqQMLKxuWTiM3Ei) @davidkel Exact. That is what I have done. The problem is that for the composer network install and composer network upgrade command I need the peerAdmin for each organization. The one from org1 and the one from org2 I have the one that I do not have is from org3 and I do not understand how I can get it.
Thank you very much.
@davidkel We would need other participants to install the bna on their side :). I'll leave that as last option, thanks again
@garaujo you need to create an admin card for your org3, but the multi-org tutorial shows you how to do that for the other orgs so you just follow the same steps. Whatever card you used to start the business network can upgrade the business network (note that to upgrade you have to have installed the bna you are going to upgrade to) so use the card you used to start the business network to perform the upgrade
[ ](https://chat.hyperledger.org/channel/composer?msg=sJbcNRa6RseYqmFWG) @KindleBitSoln You should look in the logs of the Peer containers for more details of the error. There will probably be a mismatch between MSP names or Certificates between the Peer configuration and your connection.json, but the 'Error: 14 Unavailable' shows a network addressing/connectivity problem for one of the peers.
(BTW what version of Composer and Fabric are you running?)
[ ](https://chat.hyperledger.org/channel/composer?msg=F4xfxkATmWH7Xh5sb) @waleed I want to react to that event. For example if on blockchain someone creates an asset. I will catch that event and add that asset to a list. Or can i overwrite the default Create Transaction?
[ ](https://chat.hyperledger.org/channel/composer?msg=Mm6TdpTwqgwsrdJag) @networkboss99 you cane "override" it by creating your own transaction
[ ](https://chat.hyperledger.org/channel/composer?msg=GKn4c5wDKvZNQJmwS) @davidkel The main difference that I see, is that in the multi-organization tutorial the network with these organizations is initialized from the beginning. In my case, there is already a network of two organizations and we add a third organization on the existing network. Should I then generate another connectionProfile to be able to create the Admin of organization 3? And if so, in this new connectionProfile should be the data of the other two organizations.
Thank you very much
how to connect ethereum with hyperledger anyone have idea on that?
how to connect ethereum with hyperledger anyone have idea on that plz reply?
@maniyas suggest you try a different channel, this channel is for composer questions
okay fine
@garaujo The multi-org tutorial shows you how to build a connection profile for each org based on a 2 org setup (ie most of it is identical except the client section which is specific to each org). So should be easy to work out how to build a connection profile that represents your 3 org fabric and then create org specific connection profiles from that each with their own unique client section. It also shows how to create cards for each org that can install a bna onto that orgs peers, so should be easy to take the steps used for org1 and org2 to do the same for org3.Once the bna is installed onto the org3 peers then org3 can endorse.
The pain point is that all your cards (for org1 and org2) have an old connection profile now (doesn't include org3 peers) so all your cards will need to be updated. There is no simple process for this in composer unfortunately. You could delete all the cards in the card store and follow the steps to recreate the cards for org1 and org2, or go into the card store on the file system and replace the connection.json files for the cards with the new connection profile (if you are using the file system card store).
Hello, as I understood so far, Composer is a tool on top of Fabric, which helps you as a developer to create business networks much easier.
Hello, as I understood so far, Composer is a tool on top of Fabric, which helps you as a developer to create business networks much easier. Am I right?
[ ](https://chat.hyperledger.org/channel/composer?msg=rPJSdKF3oRxpwchJs) @kiknaio yes
Nice, thanks :thumbsup_tone4:
One more question about the peers. Where can I find the documentation about how to connect multiple peers on this BN, which Docker swarm. Thanks in advance.
[ ](https://chat.hyperledger.org/channel/composer?msg=MkXk4MrBN9pxP3Rq7) @kiknaio maybe this can help: https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f
[ ](https://chat.hyperledger.org/channel/composer?msg=RhEkR2uJzCQshp3ZP) @waleed Awesome! thanks a lot
@OlegLukasonok the fabric-shim docs are in a bit of flux at the moment. There are the docs for 1.1 here which should be enough to get you started
https://fabric-shim.github.io/release-1.1/
ANNOUNCEMENT: As a reminder please ensure if you are using composer 0.20 to upgrade your fabric-dev-servers to the latest version that is available now or for custom fabrics to use fabric 1.2.1 images as there is a big problem in fabric 1.2.0 which can stop transactions being committed to the blockchain
[ ](https://chat.hyperledger.org/channel/composer?msg=99yj8fwinYtXDCrRR) @davidkel When you say that one option may be to erase the cards. You mean to erase all the cards that organization 1 has and all the cards that organization 2 has ?. If I delete them and reconstruct them, I will not lose information that is in the Chaincode or anything like that. And in the case that you have to delete all PeerAdmin, admin and the possible identities of different participants, how could you do to recover the cards of each of the participants.
@garaujo cards are an amalgamation of a connection profile, some metadata and the identity. So long as you have kept the public certificate and private key for each identity then you can easily rebuild the cards. If you have build card files with secrets and imported those into the store, then you ping them and export the cards into card files. You can then unzip those card files to retrieve the identities
@garaujo cards are an amalgamation of a connection profile, some metadata and the identity. So long as you have kept the public certificate and private key for each identity then you can easily rebuild the cards. If you have built card files with secrets and imported those into the store, then you ping them and export the cards into card files. You can then unzip those card files to retrieve the identities
Has joined the channel.
Hello All ,
I got stuck in Docker swarm . I'm able to intialize the Docker swarm on master PC-1 , But when I join the Token with worker PC-2
Then getting issue in executing command
docker swarm join --token SWMTKN-1-3jzpk95eqnhuuiahpw3yicuahl421xjufypnjv054r6
omzuwy1-59z4w452o0tsykjtscai2nag5 23.239.3.48:2377 --advertise-addr 192.168.5.174:2377
Error response from daemon: rpc error: code = Unavailable desc = grpc: the connection is unavailable
can anyone help me in fixing out this .. As I'm unable to understand what's wrong in this ..
Any help would be highly appreciated ..
I'm back again with the multi-host setup for Composer (one organisation per host). I've reached the point at which I'm able to install the .bna on both hosts without any errors. I have 2 connection.json for each host, meaning that I have 2 PeerAdmin cards for the bna installation. I have 2 questions:
Q1. I know that I should start the network with all of the admins, but because the admins are on 2 different hosts I'm starting only with the admin on host 1. Does this present an issue with correctly running the network on host 2?
composer network start -c PeerAdmin@exManager -n ex-network -V 0.0.1 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A andreim -C andreim/admin-pub.pem "here I should have the admin from host 2"
I'm back again with the multi-host setup for Composer (one organisation per host). I've reached the point at which I'm able to install the .bna on both hosts without any errors. I have 2 connection.json for each host, meaning that I have 2 PeerAdmin cards for the bna installation. I have 2 questions:
Q1. I know that I should start the network with all of the admins, but because the admins are on 2 different hosts I'm starting only with the admin on host 1. Does this present an issue with correctly running the network on host 2?
composer network start -c PeerAdmin@exManager -n ex-network -V 0.0.1 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A andreim -C andreim/admin-pub.pem "here I should have the admin from host 2"
Q2. The network start without any errors, but when it comes to ping on both hosts I'm getting errors:
When I ping the network on host 1:
Error: Error trying invoke business network. Error: Peer localhost:8051 has rejected transaction '1ff21ebc89a5d19c2c377f13b10b934168c1dd23d723446b6f51c0bfd79ff346' with code ENDORSEMENT_POLICY_FAILURE
When I ping the network on host 2:
Error: Error trying to ping. Error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '74d166962b282e9f04b17f6d7a8856a1565a257b310aceed5845831b15a710a4', has not been registered
I'm back again with the multi-host setup for Composer (one organisation per host). I've reached the point at which I'm able to install the .bna on both hosts without any errors. I have 2 connection.json for each host, meaning that I have 2 PeerAdmin cards for the bna installation. I have 2 questions:
Q1. I know that I should start the network with all of the admins, but because the admins are on 2 different hosts I'm starting only with the admin on host 1. Does this present an issue with correctly running the network on host 2?
composer network start -c PeerAdmin@exManager -n ex-network -V 0.0.1 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A andreim -C andreim/admin-pub.pem "here I should have the admin from host 2"
Q2. The network starts without any errors, but when it comes to ping both hosts I'm getting the following:
When I ping the network on host 1:
Error: Error trying invoke business network. Error: Peer localhost:8051 has rejected transaction '1ff21ebc89a5d19c2c377f13b10b934168c1dd23d723446b6f51c0bfd79ff346' with code ENDORSEMENT_POLICY_FAILURE
When I ping the network on host 2:
Error: Error trying to ping. Error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '74d166962b282e9f04b17f6d7a8856a1565a257b310aceed5845831b15a710a4', has not been registered
I'm back again with the multi-host setup for Composer (one organisation per host). I've reached the point at which I'm able to install the .bna on both hosts without any errors. I have 2 connection.json for each host, meaning that I have 2 PeerAdmin cards for the bna installation. I have 2 questions:
Q1. I know that I should start the network with all of the admins, but because the admins are on 2 different hosts I'm starting only with the admin on host 1. Does this present an issue with correctly running the network on host 2?
composer network start -c PeerAdmin@exManager -n ex-network -V 0.0.1 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A andreim -C andreim/admin-pub.pem "here I should have the admin from host 2"
Q2. The network starts without any errors, but when it comes to ping both hosts I'm getting the following:
When I ping the network on host 1:
Error: Error trying invoke business network. Error: Peer localhost:8051 has rejected transaction '1ff21ebc89a5d19c2c377f13b10b934168c1dd23d723446b6f51c0bfd79ff346' with code ENDORSEMENT_POLICY_FAILURE
When I ping the network on host 2:
Error: Error trying to ping. Error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '74d166962b282e9f04b17f6d7a8856a1565a257b310aceed5845831b15a710a4', has not been registered
Another note I would like to make is that after the network starts, 2 containers (probably for chaincode) appear on host 1, but none appear on host 2. (with a one time exception in which a container for peer0 appeared on host 2).
Hi, will a BNA created for composer 0.19 work on one 0.20 (fabric 1.2)
@AndreiLovin - You need to `start` the network once for the whole channel across all peers for all organisations. (But you `install` once per organisation.) . Your single start command need to include the credentials for all your Admins for all the organisations. I would guess that your failure to do this causes the Endorsement problem.
(A consequence of this is that you need to be able to properly address all the peers from your hosts.)
[ ](https://chat.hyperledger.org/channel/composer?msg=eAWSeS6wMJeztYrkG) @rrishmawi How did you create the BNA? If you exported it from Playground I think the package.json in the BNA will contain lots of dependencies on the version of Playground that you were using and it will fail when you try and connect to it with v0.20. If you created it on the command line it should be OK.
To be safe you could extract all the files you need from the BNA excluding the package.json and create a new BNA file from the command line.
[ ](https://chat.hyperledger.org/channel/composer?msg=X64HGSsogYcu2RLEr) @rthatcher Ok, Thanks.
@davidkel just in case you find the "problem" again, I managed to restart it by stopping my docker daemon, editing my peer config.v2.json at /var/lib/docker/containers/ (so core logging is INFO), and then restarting everything
Has joined the channel.
Hi guys again, i need to understand the passport-local strategy and how it works in case of composer rest server. in the COMPOSER_PROVIDERS i set the following: ```
export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"callbackURL":"/auth/local/callback",
"successRedirect": "/",
"failureRedirect": "/",
"setAccessToken": true,
"callbackHTTPMethod": "post"
}
}'
```
where the username and password are persisted? how to seed them?
Hi, can anyone tell me how long it takes for the access token that is issued by the Composer REST server after successful passport authentication to expire?
Has joined the channel.
Hi Team,
There is an illustration of model .bna using Participants (traders), Assets (commodities) and transactions in Hyperledger Fabric session. You might have several Traders & commodities and their transactions.
My query is mentioned below. when Trader1 logs into the the application using thin client (web interface),
- how do you authenticate him as Trader1
- how does the signing of transaction by Trader1 happens using his private_key
[ ](https://chat.hyperledger.org/channel/composer?msg=Tbgum7TgBhszHpCbP) @subhanshu.kumar - A very similar question was asked (and answered) in Stack Overflow yesterday :-)
https://stackoverflow.com/questions/52600223/how-is-a-user-registered-in-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=yQFwRizjtZf5PiLF3) @mrjdomingus - I would check on the Loopback and Passport websites which is what Composer uses for the REST server
hello everyone! does someone know how to remove the namespace from the resources I load on my front end angular app? please help! thanks in advance!
resource:com.test.participantes.Propietario#181811561 i just want the 181811561 to be returne to my front page
[ ](https://chat.hyperledger.org/channel/composer?msg=47GQn8NCAR5jgjHF2) @cuevrob the name space should be returned because this is the reference
[ ](https://chat.hyperledger.org/channel/composer?msg=vEQxtZE9tyaze2vEo) @rthatcher Thanks for the tip @rthatcher , I wasn't aware of the fact that LoopBack is an actual protocol / API.
[ ](https://chat.hyperledger.org/channel/composer?msg=m2TgyFsybZjuCQu5j) @waleed yes I get that my friend, I just dont want the namespace to appear on my front end but dont get it where to change that. There is no reason for the customers to know the namespace, they should be able to see just the id.
@cuevrob why don't you just remove the namespaces yourself in your angular app ?
@cuevrob why don't you just remove the namespaces yourself in your angular app ? you control what your app presents to the user
[ ](https://chat.hyperledger.org/channel/composer?msg=5QNSHYJySQe4X6ZRX) @cuevrob so you mean you want to do this on the application (frontend) layer?
@cuevrob if yes, then take a look above at @davidkel answer :)
composer network install --card PeerAdmin@hlfv1 --archiveFile samplenetwork@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Card not found: PeerAdmin@hlfv1
Command failed
please help in debugging
[ ](https://chat.hyperledger.org/channel/composer?msg=zFq67qWSPdFakuHBA) @yashk011 make sure you generated PeerAdmin@hlfv1 card
@yashk011 like: composer card create -p connection.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k 114aab0e76bf0c78308f89efc4b8c9423e31568da0c340ca187a9b17aa9a4457_sk -r PeerAdmin -r ChannelAdmin
Has joined the channel.
help me.
when i try composer network start --networkName sangmin --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction f6d0aff901b23da5b10f36aa1aac272c7c8aab2b4fe3d5fe2059e459b83b30ae: e
this error occured. what issue?
pull error
``` Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction f6d0aff901b23da5b10f36aa1aac272c7c8aab2b4fe3d5fe2059e459b83b30ae: error starting container: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated hoek@2.16.3: The major version is no longer supported. Please update to 4.x or newer
WARN notice [SECURITY] hoek has the following vulnerability: 1 moderate. Go here for more details: https://nodesecurity.io/advisories?search=hoek&version=2.16.3 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
> x509@0.3.3 install /chaincode/output/node_modules/x509
> node-gyp rebuild
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack at PythonFinder.failNoPython (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:483:19)
gyp ERR! stack at PythonFinder.
Hey waled , Can you guide me through as to how to create business card for individual peers , i didnt find any source while going through the hyperledger docs
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Deleted Business Network Card: PeerAdmin@hlfv1
Command succeeded
Successfully imported business network card
Card file: /tmp/PeerAdmin@hlfv1.card
Card name: PeerAdmin@hlfv1
Command succeeded
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --card
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Deleted Business Network Card: PeerAdmin@hlfv1
Command succeeded
Successfully imported business network card
Card file: /tmp/PeerAdmin@hlfv1.card
Card name: PeerAdmin@hlfv1
Command succeeded
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --card
Has joined the channel.
I had a few queries.
1. For dev fabric servers, if we start docker again (typically after reboot), the older dev-* images exist, how to restart them (on all nodes)
2. Whenever new version of chaincode gets deployed, new container gets created. is there a relationship between the old and new and can the older be safely purged?
My 1st question was regarding preserving data across docker restarts which is already answered at https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data Thanks.
@archit90 can be pruned
Has joined the channel.
How to retrieve list of transactions applied on a asset. getAssetRegistry giving only one asset record with updated values,its not returing the list of transactions applied on a asset
Hi @davidkel, We ran long running tests(soak tests) on composer based hyperledger network, concurrent transactions included for a period of about 1 hour +. During this time around 2000 - 3000 + transactions run/commits on the network.
However after some time during these tests, we see the following errors in Peer and Chaincode logs, and both these container crashed.
Any pointers to the same?
Peer Logs:
[composerchannel][a23291f8] failed to invoke chaincode name:"disc-business-network" , error: timeout expired while executing transaction
Chaincode Logs:
2018-10-04T06:35:43.241Z ERROR [lib/handler.js] Chat stream with peer - on error: "Error: 14 UNAVAILABLE: EOF\n at createStatusError (/usr/local/src/node_modules/grpc/src/client.js:64:15)\n at ClientDuplexStream._emitStatusIfDone (/usr/local/src/node_modules/grpc/src/client.js:270:19)\n at ClientDuplexStream._receiveStatus (/usr/local/src/node_modules/grpc/src/client.js:248:8)\n at /usr/local/src/node_modules/grpc/src/client.js:804:12"
Hi @davidkel, We ran long running tests(soak tests) on composer based hyperledger network, concurrent transactions included for a period of about 1 hour +. During this time around 2000 + transactions run/commits on the network.
However after some time during these tests, we see the following errors in Peer and Chaincode logs, and both these container crashed.
Any pointers to the same?
Peer Logs:
[composerchannel][a23291f8] failed to invoke chaincode name:"disc-business-network" , error: timeout expired while executing transaction
Chaincode Logs:
2018-10-04T06:35:43.241Z ERROR [lib/handler.js] Chat stream with peer - on error: "Error: 14 UNAVAILABLE: EOF\n at createStatusError (/usr/local/src/node_modules/grpc/src/client.js:64:15)\n at ClientDuplexStream._emitStatusIfDone (/usr/local/src/node_modules/grpc/src/client.js:270:19)\n at ClientDuplexStream._receiveStatus (/usr/local/src/node_modules/grpc/src/client.js:248:8)\n at /usr/local/src/node_modules/grpc/src/client.js:804:12"
[ ](https://chat.hyperledger.org/channel/composer?msg=WPhtLBTwwCM7doseq) @archit90 Composer creates a new `dev-*` Image and Container for each version of the BNA you start/upgrade. Older version of the Container and the Image can be deleted. (A dev- container is created for each Peer that is running the BNA)
If the Container is not started on a Host machine, don't worry - it will be automatically started when the first time a connection is made to the Business Network.
[ ](https://chat.hyperledger.org/channel/composer?msg=WPhtLBTwwCM7doseq) @archit90 Composer creates a new `dev-*` Image and Container for each version of the BNA you start/upgrade. Older version of the Container and the Image can be deleted. (A dev- container is created for each Peer that is running the BNA)
If the Container is not started on a Host machine, don't worry - it will be automatically started when the first time a connection is made to the Business Network. (and if the container was accidentally removed, a new one will be created!)
[ ](https://chat.hyperledger.org/channel/composer?msg=KJN2mKzJNFXqgsDgg) @ShaikSharuk The bottom of this section in the Knowledge Wiki answers this exact question :-)
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks
Hi, is it possible to use some features of hyperledger composer in a fabric applications?
[ ](https://chat.hyperledger.org/channel/composer?msg=g5F9FgTqFadfknXzH) @giacomo.minighin can you explain more?
[ ](https://chat.hyperledger.org/channel/composer?msg=XutrxyTsmwneJBSkR) @rthatcher @rthatcher the solution in link is for getting one particular type of transactions applied on a asset, but my criteria is to get list of all applied transactions on a asset.
@gauravgiri It's difficult from that to determine whether the chaincode container had a problem with the socket or whether the peer had some sort of problem and closed the socket which would then kill the chaincode container as it has lost connectivity to the peer. The peer should restart the chaincode container on the next request. This will be a fabric problem and I am not overly familiar with the internals of fabric, but I do have an interest in this problem. If possible to may require more logging on the peer side. I would think the interesting one would be grpc logging.
I also have another query about data persistence in composer. Pls explain how to persist the data in Hyperledger composer
@ShaikSharuk composer will use hyperledger fabric as the blockchain for storing information. If you are using the fabric-dev-servers package we provide, then it is just a simple development fabric for composer users to get started with a real fabric. Information about how to ensure a fabric persists data back to the host machine from a docker environment can be found here http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html and the section called "A Note on Data Persistence" provides more info
is it bad practice to pass the getFullyQualifiedType as a string to a transaction? I would then resolve the asset within the transaction using the getAssetRegistry for the string inside the transaction to perform actions on it.
is it bad practice to pass the getFullyQualifiedType as a string to a transaction? I would then resolve the asset within the transaction using the getAssetRegistry for the string to perform actions on it.
Hi all, I am strugling to configure composer-rest-server and use it with passport-local strategy. I understand the authentication and how it is done. but, Where the username and password will be stored and how the registration will happen. is it the mangodb that we configure in COMPOSER_DATASOURCES that will hold the username and password? if so, how to do registration (should I create a form that registers users and connect to the same mangodb database to add a new username and password authentication?
@rrishmawi The examples on the website show using mongodb as a data source used by the rest server to persist cards as defined in COMPOSER_DATASOURCES. The passport strategies won't use COMPOSER_DATASOURCES.
@rrishmawi The examples on the website show using mongodb as a data source used by the rest server to persist cards when in multi-user mode and that is defined in COMPOSER_DATASOURCES. The passport strategies won't use COMPOSER_DATASOURCES.
[ ](https://chat.hyperledger.org/channel/composer?msg=sc9gGCYXTyfJLpZx4) @davidkel Thanks. let say we have the following configuration:```
export COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"callbackURL":"/auth/local/callback",
"successRedirect": "/",
"failureRedirect": "/",
"setAccessToken": true,
"callbackHTTPMethod": "post"
}
}'
```
And i create a form to post to /auth/local, then how it should validate with the identity server?
@rrishmawi you can't make passport local work just by trying to configure COMPOSER_PROVIDERS. There is some helpful links about it here, but never looked any further into those links
https://github.com/hyperledger/composer/issues/4297
Hey guys - Just looking for some advice.
We have our PoC built using composer and the IBM blockchain platform. I'm just worried about the longevity of this however after Simon's recent message that IBM are reducing their efforts in composer (https://lists.hyperledger.org/g/composer/topic/composer_tsc_update/25106848?p=,,,20,0,0,0::recentpostdate%2Fsticky,,,20,2,0,25106848)
Following this, I just want to see what people think is the best option for us. Is there any way we can translate our .bna into chaincode or will we have to rebuild the whole blockchain network using go/nodejs chaincode?
@simonmullaney I'm in the same boat and we'll probably reuse the code but change the things that are done by composer to our own methods
(mostly creating new assets and similar)
also permissions of course
@FlorentinoSainz Do you plan to now re-write the code in go/ javascript?
most of the code is already javascript in composer, so.... we'll reuse that and just change things like factory.newResource(...) to our own "createResource"
because I couldn't a good tutorial for javascript, that is as good and detailed
but you would need to use the nodejs shim api
ye, also changing the assets update/add etc...
but encapsulating them, at the end it's what composer does
not sure if we'll migrate tho, waiting for 1.3 privacy, maybe we can survive with getNativeAPI()
yes so basically it would be writing your own wrapper on top of the fabric-sdk-node th uses ship
ye, that's mostly my idea (our poc is quite big alrdy)
btw what is the most effetive way of getting the identity tat is being used by a participant? Only way I found was to get the entire identity registry and run a loop to find the id that references it
you guys doing multiple nodes/organizations in your poc? I havn't been able to get it to work properly, using Fabric 1.1 for now
me too, i'm looping around it (then caching)
:D
@varunagarwal yes, multiple orgs and nodes
was quite a pain to setup the scripts but its working fine
im looping and storing in mongoDB but thought there might be a better way
any hints or guides you followd? Cause iv been trying and trying
and failing mostly
tried to use swarm as well to manage it, but didnt really pan out
we are not using swarm, just docker-compose then connecting thru host networks
so the connection.json profile has the info for both orgs right?
hardest thing was to create all ssl certificates etc (we don't want to use cryptogen)
has info of all the network yeah
some ppl here were saying when they add TLS to the profile, it crashes
for us its working fine
1.1 and composer 0.19.2
im on 1.1 and 0.19.14 as of now
shud work too, we had to freeze because of transferring it to other companies
can you give me any tips/ hints on how you achieved it. Ofc you cant reveal all the info, but any amount
we just setup docker-compose, the scripts... then generate the genesis block, and then just boot everything together making sure all files are ok
try to mimic all the certificates that cryptogen (the "dev" tool from fabric) generates
ya so that part of handling the path for the certificates and then the connection.json file is causing me big issues
Thanks @FlorentinoSainz - Do you know of any good resources/tool for nodejs chaincode development?
Also the identity issue requires the connection.json file to be passed through, while creating the composer card and then importing it. So mid way if you guys decide to add a new company to it, wont you need to update the profile?
@simonmullaney nope, we'll try to stick with composer if we can, we'll see what getNativeAPI() can make for us :)
@simonmullaney Best I found is https://www.youtube.com/watch?v=dzwR0dwzXNs
Saw this which is interesting - https://github.com/wearetheledger/fabric-node-chaincode-utils
@varunagarwal our companies are there from the beginning, but AFAIK, connection profile is just a file which can be updated :) look into $HOME/.composer/cards/
thanks @varunagarwal
ya I saw that part, tried to manually change the values inside that
all jsons are the same for each org
so you can just copy-paste after fixing one
ya I saw that part in a tutorial as well. But i tried to follow this https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org didnt work out
we started with that one, it did work
then extended
really?
doesnt work for me !
well i don't remember if we had to do some fixes
we used is as a point on how to extend, we started in single node network, then began extending manually (without TLS)
last thing we enabled TLS
thing is, i know nothing about bash scripts so this whole docker and setting up is very confusing
oh that's a problem then :/
i'm a developer myself
ya big problem xD
but i do mostly everything
I built a single org poc on supply chain. Now we trying to get two companies on it. So im stuck on this badly
sadly im the solo dev, dont have resources to get another reliable one
me too at the beginning, then money started flowing :P
well no money here. From India, ppl still a bit nervous
but at the end, its just about hitting your head against the wall, most of my deployment was like that :P
so have to build something before the cash flows
ye, here too
my head is bleeding
:D
do you have any links you referred to while building your scripts?
nope, manually crafted mostly
I got some medium articles but they require docker-swam information
you know bash coding from before?
yep
ahh iv never worked with docker either, so just reading through those ./start.sh files
Has joined the channel.
Can some one help me with Hyperledger Explorer Integration with Composer
[ ](https://chat.hyperledger.org/channel/composer?msg=wHNKpCMix6JMhAZ8g) @nishanthkp This might help: https://stackoverflow.com/questions/51857102/error-while-starting-hyperledger-explorer-with-hyperledger-composer/51859483#51859483
[ ](https://chat.hyperledger.org/channel/composer?msg=ZZmDgPdN74a4JypJ5) @waleed qry and acl file are really simple, I want to use it but I also want to use normal chaincode
[ ](https://chat.hyperledger.org/channel/composer?msg=tRZchec7CPWRuxbCL) @giacomo.minighin I think IBM will not develop Hyperledger Composer any further. There will be something similar in the fabric core.
Hi Everyone
I have setup block chain network on two different machine using composer. Following by this ref
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
I have used TLS system in my docker composer file for CA,Order and Peers
When i start fabric it shows me logs likes this:
```
kindle@kindle-V520-15IKL:~/network-peers3$ ./startFabric.sh
Removing network composer_default
WARNING: Network composer_default not found.
Creating network "composer_default" with the default driver
Creating couchdb1 ...
Creating couchdb ...
Creating ca.org1.example.com ...
Creating orderer.example.com ...
Creating couchdb1
Creating ca.org1.example.com
Creating couchdb
Creating orderer.example.com ... done
Creating peer1.org1.example.com ...
Creating peer0.org1.example.com ...
Creating peer1.org1.example.com
Creating peer0.org1.example.com ... done
sleeping for seconds to wait for fabric to complete start up
2018-10-04 08:20:17.484 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2018-10-04 08:20:17.484 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2018-10-04 08:20:17.485 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized
2018-10-04 08:20:17.485 UTC [grpc] Printf -> DEBU 004 transport: http2Client.notifyError got notified that the client transport was broken read tcp 172.20.0.7:52930->172.20.0.5:7050: read: connection reset by peer.
2018-10-04 08:20:17.485 UTC [msp] GetLocalMSP -> DEBU 005 Returning existing local MSP
2018-10-04 08:20:17.485 UTC [msp] GetDefaultSigningIdentity -> DEBU 006 Obtaining default signing identity
2018-10-04 08:20:17.485 UTC [msp] GetLocalMSP -> DEBU 007 Returning existing local MSP
2018-10-04 08:20:17.485 UTC [msp] GetDefaultSigningIdentity -> DEBU 008 Obtaining default signing identity
2018-10-04 08:20:17.486 UTC [msp/identity] Sign -> DEBU 009 Sign: plaintext: 0A9E060A074F7267314D53501292062D...6D706F736572436F6E736F727469756D
2018-10-04 08:20:17.486 UTC [msp/identity] Sign -> DEBU 00a Sign: digest: F34285A7C61D70FE4B4F1AE206AC72DB8EE886263417E6D716850984199DB825
2018-10-04 08:20:17.486 UTC [grpc] Printf -> DEBU 00b transport: http2Client.notifyError got notified that the client transport was broken read tcp 172.20.0.7:52932->172.20.0.5:7050: read: connection reset by peer.
2018-10-04 08:20:17.486 UTC [msp] GetLocalMSP -> DEBU 00c Returning existing local MSP
2018-10-04 08:20:17.486 UTC [msp] GetDefaultSigningIdentity -> DEBU 00d Obtaining default signing identity
2018-10-04 08:20:17.486 UTC [grpc] Printf -> DEBU 00e transport: http2Client.notifyError got notified that the client transport was broken read tcp 172.20.0.7:52934->172.20.0.5:7050: read: connection reset by peer.
2018-10-04 08:20:17.486 UTC [msp] GetLocalMSP -> DEBU 00f Returning existing local MSP
2018-10-04 08:20:17.486 UTC [msp] GetDefaultSigningIdentity -> DEBU 010 Obtaining default signing identity
2018-10-04 08:20:17.486 UTC [msp/identity] Sign -> DEBU 011 Sign: plaintext: 0ADB060A1B08021A0608C19AD7DD0522...9A78A3530F9AB934A33716B44061ABB4
2018-10-04 08:20:17.486 UTC [msp/identity] Sign -> DEBU 012 Sign: digest: E37DA0FFEE40381835C959DC7256A18975220BE40FA6DB0BC3CADA5FB043C471
2018-10-04 08:20:17.487 UTC [grpc] Printf -> DEBU 013 transport: http2Client.notifyError got notified that the client transport was broken read tcp 172.20.0.7:52936->172.20.0.5:7050: read: connection reset by peer.
2018-10-04 08:20:17.487 UTC [grpc] Printf -> DEBU 014 transport: http2Client.notifyError got notified that the client transport was broken read tcp 172.20.0.7:52938->172.20.0.5:7050: read: connection reset by peer.
2018-10-04 08:20:17.487 UTC [grpc] Printf -> DEBU 015 transport: http2Client.notifyError got notified that the client transport was broken read tcp 172.20.0.7:52940->172.20.0.5:7050: read: connection reset by peer.
Error: rpc error: code = Unavailable desc = transport is closing
2018-10-04 08:20:17.487 UTC [grpc] Printf -> DEBU 016 transport: http2Client.notifyError got notified that the client transport was broken unexpected EOF.
```
It showing Like "http2Client.notifyError got notified that the client transport was broken unexpected EOF."
Can anybody tell me is that issue?
But all containers working fine
plz confirm
Hi Everyone
I have setup block chain network on two different machine using composer. Following by this ref
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
I have used TLS system in my docker composer file for CA,Order and Peers
When i start fabric it shows me logs likes this:
```
kindle@kindle-V520-15IKL:~/network-peers3$ ./startFabric.sh
Removing network composer_default
WARNING: Network composer_default not found.
Creating network "composer_default" with the default driver
Creating couchdb1 ...
Creating couchdb ...
Creating ca.org1.example.com ...
Creating orderer.example.com ...
Creating couchdb1
Creating ca.org1.example.com
Creating couchdb
Creating orderer.example.com ... done
Creating peer1.org1.example.com ...
Creating peer0.org1.example.com ...
Creating peer1.org1.example.com
Creating peer0.org1.example.com ... done
sleeping for seconds to wait for fabric to complete start up
2018-10-04 08:20:17.484 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP
2018-10-04 08:20:17.484 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity
2018-10-04 08:20:17.485 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized
2018-10-04 08:20:17.485 UTC [grpc] Printf -> DEBU 004 transport: http2Client.notifyError got notified that the client transport was broken read tcp 172.20.0.7:52930->172.20.0.5:7050: read: connection reset by peer.
2018-10-04 08:20:17.485 UTC [msp] GetLocalMSP -> DEBU 005 Returning existing local MSP
2018-10-04 08:20:17.485 UTC [msp] GetDefaultSigningIdentity -> DEBU 006 Obtaining default signing identity
2018-10-04 08:20:17.485 UTC [msp] GetLocalMSP -> DEBU 007 Returning existing local MSP
2018-10-04 08:20:17.485 UTC [msp] GetDefaultSigningIdentity -> DEBU 008 Obtaining default signing identity
2018-10-04 08:20:17.486 UTC [msp/identity] Sign -> DEBU 009 Sign: plaintext: 0A9E060A074F7267314D53501292062D...6D706F736572436F6E736F727469756D
2018-10-04 08:20:17.486 UTC [msp/identity] Sign -> DEBU 00a Sign: digest: F34285A7C61D70FE4B4F1AE206AC72DB8EE886263417E6D716850984199DB825
2018-10-04 08:20:17.486 UTC [grpc] Printf -> DEBU 00b transport: http2Client.notifyError got notified that the client transport was broken read tcp 172.20.0.7:52932->172.20.0.5:7050: read: connection reset by peer.
2018-10-04 08:20:17.486 UTC [msp] GetLocalMSP -> DEBU 00c Returning existing local MSP
2018-10-04 08:20:17.486 UTC [msp] GetDefaultSigningIdentity -> DEBU 00d Obtaining default signing identity
2018-10-04 08:20:17.486 UTC [grpc] Printf -> DEBU 00e transport: http2Client.notifyError got notified that the client transport was broken read tcp 172.20.0.7:52934->172.20.0.5:7050: read: connection reset by peer.
2018-10-04 08:20:17.486 UTC [msp] GetLocalMSP -> DEBU 00f Returning existing local MSP
2018-10-04 08:20:17.486 UTC [msp] GetDefaultSigningIdentity -> DEBU 010 Obtaining default signing identity
2018-10-04 08:20:17.486 UTC [msp/identity] Sign -> DEBU 011 Sign: plaintext: 0ADB060A1B08021A0608C19AD7DD0522...9A78A3530F9AB934A33716B44061ABB4
2018-10-04 08:20:17.486 UTC [msp/identity] Sign -> DEBU 012 Sign: digest: E37DA0FFEE40381835C959DC7256A18975220BE40FA6DB0BC3CADA5FB043C471
2018-10-04 08:20:17.487 UTC [grpc] Printf -> DEBU 013 transport: http2Client.notifyError got notified that the client transport was broken read tcp 172.20.0.7:52936->172.20.0.5:7050: read: connection reset by peer.
2018-10-04 08:20:17.487 UTC [grpc] Printf -> DEBU 014 transport: http2Client.notifyError got notified that the client transport was broken read tcp 172.20.0.7:52938->172.20.0.5:7050: read: connection reset by peer.
2018-10-04 08:20:17.487 UTC [grpc] Printf -> DEBU 015 transport: http2Client.notifyError got notified that the client transport was broken read tcp 172.20.0.7:52940->172.20.0.5:7050: read: connection reset by peer.
Error: rpc error: code = Unavailable desc = transport is closing
2018-10-04 08:20:17.487 UTC [grpc] Printf -> DEBU 016 transport: http2Client.notifyError got notified that the client transport was broken unexpected EOF.
```
It showing Like "http2Client.notifyError got notified that the client transport was broken unexpected EOF."
Can anybody tell me is that issue?
But all containers working fine
Can anybody confirm this
Hello,
I'm trying to upgrade a multi-organization with endorsement policy set to all 3 ors signing
but i'm getting signature set did not satisfy policy
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: instantiation policy violation: signature set did not satisfy policy)
how do I upgrade the network? :S I'm trying with this:
composer network upgrade -c admin@xxxxx -n xxxxxx -V 1.0.3-pr
@KindleBitSoln I think you would be better off asking questions about fabric on one of the fabric channels as there will be more fabric experts there
Has joined the channel.
Hi there,
I am trying the the multi org tutorials on v1.2 https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org. But I got the below errors: Build your first network (BYFN) end-to-end test
Channel name : mychannel
Creating channel...
+ peer channel create -o orderer.example.com:7050 -c mychannel -f ./channel-artifacts/channel.tx --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
+ res=1
+ set +x
2018-10-04 20:51:48.650 UTC [channelCmd] InitCmdFactory -> INFO 001 Endorser and orderer connections initialized
Error: got unexpected status: FORBIDDEN -- Failed to reach implicit threshold of 1 sub-policies, required 1 remaining: permission denied
!!!!!!!!!!!!!!! Channel creation failed !!!!!!!!!!!!!!!!
========= ERROR !!! FAILED to execute End-2-End Scenario ===========
ERROR !!!! Test failed
could anyone help point out what might be the issue?
The single org tutorial for v1.2 is working perfectly fine.
the above errors are at step executig ./byfn.sh -m up -s couchdb -a
in the previous step executing ./byfn.sh -m generate, I saw some warning:
##########################################################
######### Generating Orderer Genesis block ##############
##########################################################
+ configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/genesis.block
2018-10-04 20:50:57.707 UTC [common/tools/configtxgen] main -> WARN 001 Omitting the channel ID for configtxgen is deprecated. Explicitly passing the channel ID will be required in the future, defaulting to 'testchainid'.
2018-10-04 20:50:57.707 UTC [common/tools/configtxgen] main -> INFO 002 Loading configuration
2018-10-04 20:50:57.720 UTC [common/tools/configtxgen/encoder] NewChannelGroup -> WARN 003 Default policy emission is deprecated, please include policy specificiations for the channel group in configtx.yaml
2018-10-04 20:50:57.721 UTC [common/tools/configtxgen/encoder] NewOrdererGroup -> WARN 004 Default policy emission is deprecated, please include policy specificiations for the orderer group in configtx.yaml
2018-10-04 20:50:57.721 UTC [common/tools/configtxgen/encoder] NewOrdererOrgGroup -> WARN 005 Default policy emission is deprecated, please include policy specificiations for the orderer org group OrdererOrg in configtx.yaml
2018-10-04 20:50:57.722 UTC [msp] getMspConfig -> INFO 006 Loading NodeOUs
2018-10-04 20:50:57.723 UTC [common/tools/configtxgen/encoder] NewOrdererOrgGroup -> WARN 007 Default policy emission is deprecated, please include policy specificiations for the orderer org group Org1MSP in configtx.yaml
2018-10-04 20:50:57.723 UTC [msp] getMspConfig -> INFO 008 Loading NodeOUs
2018-10-04 20:50:57.724 UTC [common/tools/configtxgen/encoder] NewOrdererOrgGroup -> WARN 009 Default policy emission is deprecated, please include policy specificiations for the orderer org group Org2MSP in configtx.yaml
2018-10-04 20:50:57.724 UTC [common/tools/configtxgen] doOutputBlock -> INFO 00a Generating genesis block
2018-10-04 20:50:57.725 UTC [common/tools/configtxgen] doOutputBlock -> INFO 00b Writing genesis block
#################################################################
### Generating channel configuration transaction 'channel.tx' ###
#################################################################
+ configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID mychannel
2018-10-04 20:50:57.767 UTC [common/tools/configtxgen] main -> INFO 001 Loading configuration
2018-10-04 20:50:57.781 UTC [common/tools/configtxgen] doOutputChannelCreateTx -> INFO 002 Generating new channel configtx
2018-10-04 20:50:57.781 UTC [common/tools/configtxgen/encoder] NewApplicationGroup -> WARN 003 Default policy emission is deprecated, please include policy specificiations for the application group in configtx.yaml
2018-10-04 20:50:57.782 UTC [msp] getMspConfig -> INFO 004 Loading NodeOUs
2018-10-04 20:50:57.783 UTC [common/tools/configtxgen/encoder] NewApplicationOrgGroup -> WARN 005 Default policy emission is deprecated, please include policy specificiations for the application org group Org1MSP in configtx.yaml
2018-10-04 20:50:57.783 UTC [msp] getMspConfig -> INFO 006 Loading NodeOUs
2018-10-04 20:50:57.784 UTC [common/tools/configtxgen/encoder] NewApplicationOrgGroup -> WARN 007 Default policy emission is deprecated, please include policy specificiations for the application org group Org2MSP in configtx.yaml
2018-10-04 20:50:57.785 UTC [common/tools/configtxgen] doOutputChannelCreateTx -> INFO 008 Writing new channel tx
#################################################################
### Generating channel configuration transaction 'channel.tx' ###
#################################################################
+ configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID mychannel
2018-10-04 20:50:57.767 UTC [common/tools/configtxgen] main -> INFO 001 Loading configuration
2018-10-04 20:50:57.781 UTC [common/tools/configtxgen] doOutputChannelCreateTx -> INFO 002 Generating new channel configtx
2018-10-04 20:50:57.781 UTC [common/tools/configtxgen/encoder] NewApplicationGroup -> WARN 003 Default policy emission is deprecated, please include policy specificiations for the application group in configtx.yaml
2018-10-04 20:50:57.782 UTC [msp] getMspConfig -> INFO 004 Loading NodeOUs
2018-10-04 20:50:57.783 UTC [common/tools/configtxgen/encoder] NewApplicationOrgGroup -> WARN 005 Default policy emission is deprecated, please include policy specificiations for the application org group Org1MSP in configtx.yaml
2018-10-04 20:50:57.783 UTC [msp] getMspConfig -> INFO 006 Loading NodeOUs
2018-10-04 20:50:57.784 UTC [common/tools/configtxgen/encoder] NewApplicationOrgGroup -> WARN 007 Default policy emission is deprecated, please include policy specificiations for the application org group Org2MSP in configtx.yaml
2018-10-04 20:50:57.785 UTC [common/tools/configtxgen] doOutputChannelCreateTx -> INFO 008 Writing new channel tx
Hi everyone,
Can anyone give me a idea on how to build a custom application using hyperledger sawtooth.
I already developement after doing some r and d on it, yet I'm not sure where and how to begin
I already started developement after doing some r and d on it, yet I'm not sure where and how to begin
Got some issues with the TP and Validator, Hope I can find some one to help me in.
Thank you :)
Has joined the channel.
Hi, is it possible to extract a .bna file?
Has joined the channel.
@trex70 Sorry this is the composer channel, suggest you try the #sawtooth channel
@kcampion It's just a zip file yo you can use unzip to extract the files
@kcampion It's just a zip file yo you can use unzip to extract the files
@kcampion It's just a zip file so you can use unzip to extract the files
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=MwcYa4xanzdPbwd6t) @FlorentinoSainz Which card are you using to Upgrade the network? This should be the same one that you originally used to Install and Start the network, NOT the admin of the Business Network.
Has joined the channel.
I am doing code changes in composer playground and deploying updated code from playground itself, but whenever i am restarting fabric my updated code is lost. can anyone help me to solve this isssue.
After deploying updated code from playground, where the updated code is stored
does playground unfift for deploying the updated code
Has joined the channel.
can someone tell how to do composer setup for hyperledger fabric network deployment for multiple orgs on *multiple physical machines*
Hi
Is there any way to get the count of assets in HyerLedger Composer.
I don't want to fetch all the records to get count due to large amount of data
@sushmitha I read article few days back..
https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f
Please see if this meets your needs
@sushmitha How have you deployd your network ? Docker Swarm ? Kubernetes ?
@ajay560 I think it is, atm, impossible. You will need to get all assets and count by yourself
[ ](https://chat.hyperledger.org/channel/composer?msg=6nxvXmQwrvh4pEGjv) @Nihcep I used docker
[ ](https://chat.hyperledger.org/channel/composer?msg=tQyzs63nGMBTokbud) @sushmitha Ok and your multi-host network is already deployed ?
[ ](https://chat.hyperledger.org/channel/composer?msg=DE4fv5Znzn5PcwG3B) @Nihcep Yes, but on the same machine
@sushmitha And you want to deploy it on different machine then setup composer that is ?
[ ](https://chat.hyperledger.org/channel/composer?msg=k4pXXddPHYqzAoFeb) @ShaikSharuk This Q/A in Stack Overflow might explain what you are seeing: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
[ ](https://chat.hyperledger.org/channel/composer?msg=5W698xps7XARA9TNo) @rthatcher @rthatcher the above link describes about data stored , but my question is regarding the chaincode
[ ](https://chat.hyperledger.org/channel/composer?msg=HXSk7ipTuDFAyrfTE) @ShaikSharuk If you are using the `startFabric.sh` all installed/started chaincode is also lost. (Maybe playground is keeping a copy in localstorage)
[ ](https://chat.hyperledger.org/channel/composer?msg=o8z6DfzemJ5XbLPJA) @ajay560 From this channel yesterday:
https://chat.hyperledger.org/channel/composer?msg=JrdhYSzk3sAhbpTS9
Sometimes, when I try to deploy from composer-playground, everything stop working and the output from playground is:
warn: [Hyperledger-Composer] :HLFConnection :_checkCCListener() could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events
and I have to restart fabric to work again
@BernardoAlves are you running Fabric 1.2.0 ?
Yes
@BernardoAlves you should upgrade to fabric 1.2.1 due to a bug in fabric 1.2.0
Thanks, do you have a command to upgrade?
Depends where you got your fabric from. If it is fabric-dev-servers then you need to download the latest version and restart your fabric
Yes, I have the fabric-dev-servers... gonna download the new version, thanks
@rthatcher I have Hyperledger composer business network i want to deploy this on multiple organization on different machines can you help me regarding this issue?
@sureshtedla
You must first deploy a fabric network on different machines then just install your business network following this link :
https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org
The fact that your network is deployed on different machines don't change the way you install your business network
@Nihcep okk
@Nihcep Thanks
I'm getting an error trying to install composer-rest-server on an ec2 instance, can anyone help? I don't want to directly post the error logs as they're quite long
[ ](https://chat.hyperledger.org/channel/composer?msg=Gu5AskFncQFxazsgj) @ColeBoudreau - thanks for not putting lots of logs details straight away :-)
What is the OS for your ec2 instance?
Composer is supported on Ubuntu - but I'm sure it is running on other platforms too.
@rthatcher ubuntu 16.04
- OK that should work fine - are you following the Install guide? and not using sudo, su or root to install the rest server ?
https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
@ColeBoudreau - OK that should work fine - are you following the Install guide? and not using sudo, su or root to install the rest server ?
https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
@ColeBoudreau - there is some troubleshooting info in the Knowledge Wiki too: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#installissues
@rthatcher I've looked here: https://www.npmjs.com/package/composer-rest-server and it suggest running under sudo to get proper permissions, is that not correct? I have node-gyp installed which may be causing the issues. I was following a different installation guide, so i'll try yours.
@rthatcher new installation worked, thanks so much!
@ColeBoudreau thanks for pointing out the reference to sudo as well, I will remove that
@Nihcep the v0.19 multi-org(https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org) is working for me. Have you tried the latest multi org tutorial? The latest version of multi org tutorial is not working: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Does permission.acl file works for both query and business Network Connection . get ParticipantRegistry() ?
Has joined the channel.
I have installed and started bna with 3 endorsing peers. I want to add another endorsing peer. How do I upgrade bna to add new endorsing peer?
Has joined the channel.
when issuing identity, the SDK returns identity name and secret. how do we use "Secret"?
Has joined the channel.
Have you developed production BN with composer ? what serious problems did you have? It's really interesting topic and would be nice if you share your experiance.
@kiknaio , I'm also interested in your question. What are the biggest steps in moving from Composer and messing around in Playground to deploying a hardened prod env?
[ ](https://chat.hyperledger.org/channel/composer?msg=AHWuq2LKXr2mnCTv2) @micklynch Interesting to hear the production experience.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi,
I want to enable multi user Composer-rest-server...Aim is to use the end points from a mobile app...anyone tried it so far? Any examples?
https://composer-playground.mybluemix.net/
Online playground is down
404 Not Found: Requested route ('composer-playground.mybluemix.net') does not exist.
working fine for me --> https://composer-playground.mybluemix.net/editor
Has joined the channel.
Working now. Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=vyFnFQNQgpEHPRFhb) @ajay560 In the step - Generate Network Artifacts (Crypto Material) — PC1 ; I have an issue: cryptogen tool not found. exiting
Can anyone help?
[ ](https://chat.hyperledger.org/channel/composer?msg=RCeuqv6JKDrgHs2Gj) @sushmitha You must have "cryptogen" binary on your folder
[ ](https://chat.hyperledger.org/channel/composer?msg=RCeuqv6JKDrgHs2Gj) @sushmitha You must have "cryptogen" binary from fabric installation on your folder
[ ](https://chat.hyperledger.org/channel/composer?msg=k8CFjhCtD8YhRuWnN) @kiknaio @micklynch - as you think of production, please be aware of this information about Composer: https://lists.hyperledger.org/g/composer/message/125
@rthatcher About that, is there any official alternative ? A new project ? I found "convector" ( https://medium.com/worldsibu/announcing-convector-a-javascript-framework-for-smart-contract-systems-1053ee972a6d ) but it is not from the official team.
@Nihcep - The IBM team is still maintaining Composer at the moment, but new features are not being added. It is still _possible_ that other Community members will step in and continue to develop Composer. So if you want to develop a quick prototype, poc or demo - then Composer is still a viable and fast route. For the longer term and for Production, the 'official' route is to mode to developing Chaincode directly in Fabric, and use the Fabric APIs to call it.
The Composer team is working to make the process of writing chaincode simpler and invoking it from the APIs. I think this is planned for Beta with Fabric 1.4.
Has joined the channel.
I got struck with the following error:
Error: got unexpected status: BAD_REQUEST -- error authorizing update: error validating DeltaSet: invalid mod_policy for element [Policy] /Channel/Application/Admins: mod_policy not set
!!!!!!!!!!!!!!! Channel creation failed !!!!!!!!!!!!!!!!
========= ERROR !!! FAILED to execute End-2-End Scenario ===========
Can someone help... I`m doing Hyperledger Fabric setup on Multiple Hosts
Bluemix playground online seems to be down
[ ](https://chat.hyperledger.org/channel/composer?msg=Ysn9BXYWY8ETkZGSz) @sushmitha I think there are problems with the tutorial with Composer v0.20 and Fabric 1.2 - they are being investigated and should be fixed soon. You could wait for the fix, or clear your environment and work with Composer v0.19 and Fabric 1.1 - Here is a link to the v0.19 tutorial if you want to follow that: https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org.html
[ ](https://chat.hyperledger.org/channel/composer?msg=3NLZaQnwfd5aHi4qe) @rthatcher Thanks, it's really useful information. I hope to see Fabric to be more documented, with more features and add-ons. Nowadays it's really complicated to use Fabric and that's why I decided to use Composer instead of it.
@kiknaio can you provide some more detail about where you feel fabric is more complicated ? Is it the programming model where composer helps or is it more setup and operational ?
[ ](https://chat.hyperledger.org/channel/composer?msg=wWGLnQ9vDsuXwDBxH) @rthatcher I`m following https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f as, my requirement is to have multiple hosts on multiple machines
[ ](https://chat.hyperledger.org/channel/composer?msg=aajSYZMnH8xEKLBEt) @davidkel I would say, the documentation is not really good and that's why set up of the network and understanding the whole Fabric picture is pretty hard. I've got quite a lot of experience in software development, but still it's complicated for me to understand the Fabric documentation.
@kiknaio As composer uses fabric under the covers, that isn't something that composer really helps with
[ ](https://chat.hyperledger.org/channel/composer?msg=nzWKWRvq9YowrGpbK) @davidkel Totally agree, but still when you start learning how to use this kind of framework, Composer is much better way. I would say Composer helped me to understand Fabric main concepts.
Yes I understand that Composer is just a small helper library on top of a Fabric, but still I think it's a really useful tool, especially for beginners.
@kiknaio That's useful to know, thanks for the feedback
[ ](https://chat.hyperledger.org/channel/composer?msg=rfSAEvodAFCXcRTaq) @davidkel You're welcome. Are you one of the contributors of Fabric?
@kiknaio Both fabric and Composer
im getting followign error when trying to ping a network using composer network ping command
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
Command failed
any idea how to tackle it?
[ ](https://chat.hyperledger.org/channel/composer?msg=AxQSgu3WD4SMS6G8A) @davidkel Awesome
Has joined the channel.
Hi guys, Hyperledger composer page says that project is in Incubation state , Is that mean its not production ready at ? Can some one help me to understand this.
Hi guys, Hyperledger composer page says that project is in Incubation state , does that mean its not production ready at ? Can some one help me to understand this.
[ ](https://chat.hyperledger.org/channel/composer?msg=RLANvwfMSYvBnpk8G) @anand.balagopalan have you checked your fabric-ca docker container is up and running ? (docker ps -a) - you could try seeing the messages in the CA server (docker logs
[ ](https://chat.hyperledger.org/channel/composer?msg=RLANvwfMSYvBnpk8G) @anand.balagopalan have you checked your fabric-ca docker container is up and running ? (docker ps -a) - you could try seeing the messages in the CA server (docker logs
[ ](https://chat.hyperledger.org/channel/composer?msg=9LKk4EKYBNpxzSq2b) @shashank-poojary You should see this announcement first: https://lists.hyperledger.org/g/composer/message/125
Then note that the IBM team is still maintaining Composer at the moment, but new features are not being added. It is still _possible_ that other Community members will step in and continue to develop Composer. So if you want to develop a quick prototype, poc or demo - then Composer is still a viable and fast route. For the longer term and for Production, the 'official' route is to mode to developing Chaincode directly in Fabric, and use the Fabric APIs to call it.
The Composer team is working to make the process of writing chaincode simpler and invoking it from the APIs. I think this is planned for Beta with Fabric 1.4.
[ ](https://chat.hyperledger.org/channel/composer?msg=6Qg7JYazDyx4y7bSf) @rthatcher Thank you @rthatcher
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=6Qg7JYazDyx4y7bSf) @rthatcher Can you help me in finding this documentation, which will definitely help on migrating my Business network code to chain code at that point. I am curious and really want to be an early adopter
Has joined the channel.
@pradeeppadmarajaiah https://hackernoon.com/migrating-from-hyperledger-composer-to-convector-framework-marbles-example-13a24a74faad If you want to use convector
@pradeeppadmarajaiah - Fabric 1.3 is due soon - when Fabric 1.3 has been delivered, then the 1.4 Beta will be available soon afterwards - you will see news in this channel when it is available.
Has joined the channel.
Thanks @rthatcher for the news about composers future. I'm initially disappointed to hear as I'm still new to hyperledger and was delighted to find a well documented and straight-forward tools for implementing. However, I understand the issue. I'll continue to use Composer for POCs etc. and if I land a big project, will 'convert' to Fabric chaincode for longevity. Cheers!
Has joined the channel.
Hello everyone. Is there any way to invoke a transaction after a participant or asset is added?
Yes Transactions can be invoked. Are you using Playground? The REST server? or Node API? Are you following any particular guide or tutorial?
I am using REST server with Node.js and Angular
I followed the instructions in the Hyperledger Tutorial for learning and now I am developing my own application
Is it possible to import a card to a composer-client application from the card file?
I can't find any class on the composer-cli that allows me to do this.
How can I use the IdCard class from the composer-common module to import a card in .card format?
@vanclief you can't, you have to use the AdminConnection class from client-admin module
@vanclief you can't from just the IdCard, you have to use the AdminConnection class from composer-admin module
just a suggestion, but it would be really helpful if someone were to write a short article on migrating from Composer to Fabric.
Thanks @davidkel, so taking I look at the documentation the only relevant method from the AdminConnection class I see is importCard, but it takes as params ( String name, IdCard card ). Should I just pass the .card path in the card param>
Thanks @davidkel, so taking I look at the documentation the only relevant method from the *AdminConnection* class I see is *importCard*, but it takes as params ( String *name*, IdCard *card* ). Should I just pass the .card path in the *card* param?
@vanclief You need to create an instance of the IdCard and then pass it to AdminConnection.importCard(). To create an IdCard you use the IdCard.fromArchive(Buffer) to create an IdCard from a Buffer (eg created from reading a card file). See
https://github.com/hyperledger/composer/blob/f635247c32ee6480539788ffc720fe6d15499ba2/packages/composer-cli/lib/cmds/card/lib/import.js#L38
For an example of the code to help you
@vanclief You need to create an instance of the IdCard and then pass it to AdminConnection.importCard(). To create an IdCard you use the IdCard.fromArchive(Buffer) to create an IdCard from a Buffer (eg created from reading a card file). See
https://github.com/hyperledger/composer/blob/f635247c32ee6480539788ffc720fe6d15499ba2/packages/composer-cli/lib/cmds/card/lib/import.js#L38
For an example of code to help you
Has left the channel.
hi guys, in Transaction Processor i have some assets, if i want to check an assets property value, for example
asset.color = red, i will do something
but what happens or how does hyperledger prevent the fact that maybe, another peer updated the color of the same asset?, for example
to obtain the asset registry i use
let assets = getAssetRegistry("org.example.com.MyAsset");
let asset = assets.get("1");
if(asset.color == "RED"){
//Do Something
}.
Isn't there a chance that the ledger was being updated and the color of the asset was changed to green, and after i got the asset data since it is async?
, this will mean the asset in the ledger is now asset.color = green
but in my variable isnt updated because it is local yo my instance and it is still asset.color = red
the example may be symbolic and does not presents a threat but i have a more complex code where i need to know the exact state of a document, and happens to my mind, that maybe a user has canceled a document almost at the same time someone was approving the document, meaning that the guy1 got the registry to his local variable and got the document in a STANDBY state where it can be approved, and the owner (guy2) of the document cancels the document since it hasnt been update still as APPROVED (still), then the document is APPROVED by the other guy1, and CANCELED but the owner, since everyone got an state of the document where it could be APPROVED and CANCELED at the same time
@davidkel thank you!
[ ](https://chat.hyperledger.org/channel/composer?msg=fibJd5AShJt6jBQLP) @rthatcher @rthatcher you are saying that if we execute startFabric.sh then entire chaincode is lost?? If this is the scenario , how data is persisted in case of data model changes due to updated code which is lost due to executing startFabric.sh script. Please explain the scenario.
I got the following error when I ran network start command,"Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 1 Peers. Last error was Error: Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP]". It worked previously for me, but today I got the above, what can be the possible reason for the above error. I have searched over net, they are suggesting to recreate the channel, let me know if any other way is available.
Hi Everyone
How to check ports are enabled for docker or not?
[ ](https://chat.hyperledger.org/channel/composer?msg=m4MnkiiTh83pxz2qJ) @ShaikSharuk This Q/A in Stack Overflow explains about `startFabric.sh` and how to stop/start your development Fabric in a more 'gentle' manner.
If you are changing the model you should also see the section in the Knowledge Wiki which covers the issue of adding and removing field definitions: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration
[ ](https://chat.hyperledger.org/channel/composer?msg=gBnT9pjfpFyqJq7i7) @KindlebitPhp I would suggest using the same tools you use for debugging other non-composer related connection questions.
The following commands might help `netstat` `nc` `wget`.
Has joined the channel.
i would like to ask about generating a document in Composer
>>composer generator docs
i generated a document, but i would like to add my own description by using meta commands like @author, @description, ....
But they do not work at transaction definition
Hello Everyone
When i am trying to join network of PC1 from another PC2 then it showing me following error
safeuser@localhost:~$ docker swarm join --token SWMTKN-1-4swd5y4r5b18vfe4k1bzqbqk28gdee5854t0t4gzxzfb3pc6ym-f2vkfbd4ru81h0zt0u03b2uin 192.168.5.174:2377
Error response from daemon: Timeout was reached before node joined. The attempt to join the swarm will continue in the background. Use the "docker info" command to see the current swarm status of your node.
Can anybody tell me how to increase the time for this?
If execute above command one more time then it shows me as
Error response from daemon: This node is already part of a swarm. Use "docker swarm leave" to leave this swarm and join another one.
Please help me to figure out this
@umlspec the composer documentation generator doesn't look for decorators on the transaction definition, only on asset and participant
@KindlebitPhp You might want to consider asking this question elsewhere, perhaps a swarm forum somewhere as this question is not about Composer
[ ](https://chat.hyperledger.org/channel/composer?msg=gBnT9pjfpFyqJq7i7) @KindlebitPhp docker port, docker inspect I should imagine.
thanks, how do we describe description about a transaction ? a higher manager wants to see what this transaction is for ?
In the generated document, there exists only the name of transaction. is it useful ?
if adding our own description is possible on asset and participant, how can we add it ? please let me know meta command and example
[ ](https://chat.hyperledger.org/channel/composer?msg=e6mcCvxqYfgG5ALyF) @davidkel Any options to setup hyperledger- multi organisation on multiple machines without using docker swarm
@sushmitha I would suggest asking on one of the fabric forums where more fabric people hang out. This channel is really only for composer specific questions.
@sushmitha I would suggest asking on one of the fabric channels where more fabric people hang out. This channel is really only for composer specific questions.
@umlspec I've not tried it, but looking at the generator code it suggests it looks at decorators in comments for asset and participant, so maybe
```
/**
* @param {Double} balance the users balance
* @author Frank Blogs
*/
participant Member extends User {
o Double balance
}
```
thanks, it works
good for explaining each attribute consisting of asset and participant
but, what we really need is that on the summary page, we have to explain brief description about asset, participant and transaction
is it impossible now ?
@umlspec The summary page I assume is driven by this
```
# Summary
## Asset Definition
| Namespace | Name | Description |
| -------- | ---- | ----------- |
{% for id,assets in types.asset %}
{% for asset in assets %}| {{asset.fqn}} | {{asset.name}} | {{asset.description}} |
{% endfor %}{% endfor %}
## Transaction Definition
| Namespace | Name | Description |
| -------- | ---- | ----------- |
{% for id,transactions in types.transaction %}{% for tx in transactions %}| {{tx.fqn}} | {{tx.name}} | {{tx.description}} |
{% endfor %}{% endfor %}
## Participant Definition
| Namespace | Name | Description |
| -------- | ---- | ----------- |
{% for id,participants in types.participant %}{% for pt in participants %}| {{pt.fqn}} | {{pt.name}} | {{pt.description}} |
{% endfor %}{% endfor %}
```
So it looks like it should be possible to add a description
Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html
can someone help me..plz
i'm using mac OS
@w4721x There is probably a `.DS_Store` directory somewhere within your file system card store at `~/.composer/cards`.
@w4721x There is probably a `.DS_Store` file somewhere within your file system card store at `~/.composer/cards`.
Screenshot 2018-10-09 at 3.42.09 PM.png
Screenshot 2018-10-09 at 3.43.01 PM.png
@umlspec digging into the code more, decorators should also work for transaction definitions
@davidkel Cannot find DS_Store file inside this location.
Thanks for your continuous kind messages. Yes, we can do it definitely. But HOW ?? please let me know. I just tried with @description, @dev ...... but not worked
@w4721x as it has a `.` in front of it, it's hidden by default
@umlspec did the `@author` work on transaction ? does `@description` work on asset ?
command + shift + . gives u all hidden files...I did it.
@w4721x That's the usual problem with the card store on a Mac. So there could be other foreign files in the card store causing the problem.
which file can be that ?
@w4721x Impossible to say, one solution would be to wipe your card store and start again (so long as you haven't imported any one time use only card files and pinged them. To wipe your card store delete the `~/.composer` folder
@davidkel PeerAdmin@hlfv1 directory is present
ok let me try @davidkel
Hi Can anybody tell me the direct command of of checking docker environment where all files and directories take place like /etc , /var
Not for single container
which OS @KindlebitPhp
Linux Ubuntu
got o home
select HDD other Disk in optionand go to disk where linux is installed
@KindlebitPhp
Other Location in Files then go -> Computer
@rthatcher I could not realize how can I invoke transactions after add a participant or asset. I am using REST server with Node.js and angular and I would like to update the value of a participant's array with some data after the adding operation is performed. Could you help please?
@w4721x for single container id i can check it using docker exec container -it /bin/bash
I don't want to check those of my system sytem
I don't want to check those of my system
I don't want to check those of my system but want to check inside docker virtual machine
only "@param {Double} balance" works at the above your example
@author, @description do not work
type cd /var/lib/
do ls
then you will see docker
cd docker
then cd containers
docker volume ls
@KindlebitPhp docker container ls
@w4721x Okay.
I will check
Hi,
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
git checkout multi-org
error: pathspec 'multi-org' did not match any file(s) known to git
@jonlee300 you need to clone the repo as specified in the tutorial - then from the `fabric-samples` directory ; then do the checkout from the directory specified under 'Step One' of that tutorial
@jonlee300 you need to clone the repo as specified in the tutorial - then from the `fabric-samples` directory ; then do the checkout from that directory as described in 'Step One' of that tutorial
[ ](https://chat.hyperledger.org/channel/composer?msg=AguddAKASjfuTpTvi) @danilojodas Have you written your Transactions? If you have, I would suggest you test them through the REST Server Explorer to start with.
@umlspec I can't see that the code is actually parsing much out of the comment blocks of the cto file. So it doesn't look like at the moment it does parse annotations
@rthatcher My Transactions are written and working perfectly. Now I have to call them after the adding operations. Do I have to do something in the REST server?
@rthatcher pls tell me how to update chaincode bna without losing the data?
@umlspec It is possible to attach predefined docs using the @docs and @docsuri decorator for the model file. Example of this can be shown in the system model here
https://github.com/hyperledger/composer/blob/master/packages/composer-common/lib/system/org.hyperledger.composer.system.cto
[ ](https://chat.hyperledger.org/channel/composer?msg=ud2E3x8g2hhCRzr2Q) @ShaikSharuk This section in the Knowledge Wiki should help you: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration
[ ](https://chat.hyperledger.org/channel/composer?msg=WKnZM7GJSY6SeehqT) @danilojodas If your REST server is running you should be able to use the explorer to test them: http://
[ ](https://chat.hyperledger.org/channel/composer?msg=2Yp3oqMJ9dgpkELTN) @mahoney1 thanks. i started from the fabric-samples dir at home and thus not worked. it works now.
@rthatcher I know that. What I would like to know is how I call a transaction after adding a participant and asset. What file should I modify? Is there any way to write a transaction that detect if a CRUD operation is performed?
@juan.gzz.salz suggest to read this Fabric doc -> https://stackoverflow.com/questions/45347439/mvcc-read-conflict-when-submitting-multiple-transactions-concurrently to understand underlying principles and also answer [here](https://stackoverflow.com/questions/45347439/mvcc-read-conflict-when-submitting-multiple-transactions-concurrently) - what you describe in your use case, is most likely an application flow, around multi-stage approval or potentially managed that way - either way, you're dealing with a distributed ledger here (especially if multi parties can perform that update), not a centralized database
Has joined the channel.
Step 18 failed:
Starting business network definition. This may take a minute...E1009 12:42:54.002625271 15256 ssl_transport_security.cc:599] Could not load any root certificate.
E1009 12:42:54.002807823 15256 ssl_transport_security.cc:1400] Cannot load server root certificates.
E1009 12:42:54.002880363 15256 security_connector.cc:1025] Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E1009 12:42:54.002930956 15256 secure_channel_create.cc:111] Failed to create secure subchannel for secure name 'localhost:7050'
E1009 12:42:54.002978587 15256 secure_channel_create.cc:142] Failed to create subchannel arguments during subchannel creation.
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to connect before the deadline
strange that I can install business network and request identity so it means that the certs in connection profile / PeerAdmin card should be correct. how come I cannot start the business network.
certs are properly modified as a single line with \n (without \n) as line break.
certs are properly modified as a single line with \n (without \r) as line break
composer v0.20.1
hlfv12
Hi guys, I have a question. Are permission.acl in composer and acl definition in fabric the same? I cannot figure out how hyperledger composer handles access control, does it convert permission.acl file to chaincode and embed it?
@halilkalkan permission.acl, the content of this file and it's meaning are a pure composer concept, managed by the composer runtime in the business network
@jonlee300 it sounds like one of your replaced certificates isn't formed (on one line) or terminated correctly for the orderer entry (as opposed to other entries in the connection.json) at the time of transactions in Step Eighteen (following Step Seventeen, which is the network start sequence) - would check your entries
[ ](https://chat.hyperledger.org/channel/composer?msg=SaQCiR5Ac2QGupPfL) @mahoney1 thanks and will check again.
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
Step one: showing hlfv12
rest of the document using hlfv11
`cd ~/fabric-dev-servers
export FABRIC_VERSION=hlfv12
./stopFabric.sh
./teardownFabric.sh
./downloadFabric.sh
./startFabric.sh`
`~/fabric-dev-servers/fabric-scripts/hlfv11/composer/crypto-config.yaml`
... and etc
Hi Should we use a parent - child relationship for assets like say shipment and shipment details, or should this be flattened to a single assets? What would be best route to follow?
Thanks again. Partly it is useful. But if we can write our own explanation at "Description" column on Summary page , it should be really useful
Has joined the channel.
@avagarwal generally you would model from your conceptual model of how distinct data items relate to each other and implement this in your model file, defining the asset classes such as you've modeled, and how these resource classes are accessed (eg. via transactions) and queried (eg. via queries) from your application etc.
Has joined the channel.
I am trying to get history of a participant using getNativeAPI().createCompositeKey as described here: https://stackoverflow.com/questions/51783822/historian-for-a-particular-participant/51820465 . When I run it I get following error in docker container: chaincode Invoke() returned error response [Error: object type or attribute not a non-
I am trying to get history of a participant using getNativeAPI().createCompositeKey as described here: https://stackoverflow.com/questions/51783822/historian-for-a-particular-participant/51820465 . When I run it I get following error in docker container: 2018-10-09T17:33:09.009Z ERROR [lib/handler.js] [composerchannel-eb95820b]Calling chaincode Invoke() returned error response [Error: object type or attribute not a non-zero length string]. Sending ERROR message back to peer
Any idea what am I doing wrong or is there a sample code to retrieve Participant history using getNativeAPI().createCompositeKey
@MohitJuneja createCompositeKey is documented here
https://fabric-shim.github.io/release-1.2/ChaincodeStub.html#createCompositeKey__anchor
And you should find more documentation about how to use getHistoryForKey which is what you will want to use to get the history of a world state key
[ ](https://chat.hyperledger.org/channel/composer?msg=b42dHk5otYMb6zW8a) I can do all the steps in the tutorial. However, when I tried to do a transaction, following error occurred.
Error: Error trying invoke business network. Error: Peer localhost:8051 has rejected transaction 'ce2da08881ce267e3b523242b2770be174421a6466a57ece6034acfa6b9151a9' with code ENDORSEMENT_POLICY_FAILURE
{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
}
Could you please what could be the problem?
[ ](https://chat.hyperledger.org/channel/composer?msg=b42dHk5otYMb6zW8a) I can do all the steps in the tutorial. However, when I tried to do a transaction, following error occurred.
Error: Error trying invoke business network. Error: Peer localhost:8051 has rejected transaction 'ce2da08881ce267e3b523242b2770be174421a6466a57ece6034acfa6b9151a9' with code ENDORSEMENT_POLICY_FAILURE
{
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
}
],
"policy": {
"2-of": [
{
"signed-by": 0
},
{
"signed-by": 1
}
]
}
}
Could you please advise what could be the problem?
Has joined the channel.
Hi everyone I've set up a 1.3.0 (rc-1) hyperledger fabric network on kubernetes (with the appropriate crypto) I have an express server running the nodejs sdk, I can write on the ledger / worldstate via the sdk but when I attempt to read I don't get an error but it returns an empty result. if I invoke the same chaincode function via the CLI I get the expected result from the world state. (one row previously written from sdk)
if you need any information / logs I can provide them (I'm running single orderer, single org, single MSP)
also relevant information, I don't get any logs on the orderer (I get logs on the peer, no errors) when invoking my "read" function from the chaincode from the sdk, while when invoking the chaincode function from cli I get logs in the orderer.
also relevant information, I don't get any logs on the orderer (I get logs on the peer, no errors) when invoking my "read" function from the chaincode from the sdk, while when invoking the chaincode function from cli I get logs in the orderer (and logs on peer).
@jonlee300 the endorsement policy requires, that a peer from each organization says OK to the transaction proposal. Possibly one (or both) of the target peers rejected the transaction (for some reason, check the peer or chaincode/transaction processor logs)
thanks will check
hey guys i have been working with composer for quite some time. I wanted to know if there are any limitations or bounds that we face developing with composer framework that we not have to face while using go-lang. in short is the level of power given by composer and go-lang SDK or Node SDK is same or what? Thanks!
Has joined the channel.
Hi..._m getting the following error:--
Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Calling enrollment endpoint failed with error [Error: unsupported certificate purpose]
any idea? Its coming when i try to ping a network with admin card
Hi Composer Team , We have used the IBP starter Plan on IBM Cloud and composer version @ 0.19.5 to deploy blockchain network. Now we need to upgrade composer version from old version to Latest composer version 0.19.16.I and also deploy our blockchain network using latest composer 0.19.16.1 version. Please provide the guidance for same.
[ ](https://chat.hyperledger.org/channel/composer?msg=BjcjfcuTZj6oGxiLz) @Nihcep Thank you. Is it a Open source, approved by Hyperledger commmunity ??
[ ](https://chat.hyperledger.org/channel/composer?msg=ErJLFTJo6ScfDKs4W) @rthatcher Thank you. Hoping, there provide a guideline and mechanism to migrate from composer to 1.4 API
[ ](https://chat.hyperledger.org/channel/composer?msg=ErJLFTJo6ScfDKs4W) @rthatcher Thank you. Hoping, they provide a guideline and mechanism to migrate from composer to 1.4 API
404 Not Found: Requested route ('composer-playground.mybluemix.net') does not exist.
Again playground is down
??
http://composer-playground.mybluemix.net/
??
[ ](https://chat.hyperledger.org/channel/composer?msg=wc6T4388ykYzayesN) @davidkel Okey, so how can I implement permissions in Hyperledger Fabric like Composer, because now I need to work with private data or other pure fabric features. Thank you,
[ ](https://chat.hyperledger.org/channel/composer?msg=kRmSXixz5MZMvdLKi) 2018-10-10 05:51:09.720 UTC [vscc] Validate -> WARN 149 Endorsement policy failure for transaction txid=a4d310fd703e6bbbae35a91e8c8aaa67894fbab218e82700071da436cb235c02, err: signature set did not satisfy policy
2018-10-10 05:51:09.720 UTC [committer/txvalidator] validateTx -> ERRO 14a VSCCValidateTx for transaction txId = a4d310fd703e6bbbae35a91e8c8aaa67894fbab218e82700071da436cb235c02 returned error: VSCC error: endorsement policy failure, err: signature set did not satisfy policy
2018-10-10 05:51:09.722 UTC [valimpl] preprocessProtoBlock -> WARN 14b Channel [mychannel]: Block [115] Transaction index [0] TxId [a4d310fd703e6bbbae35a91e8c8aaa67894fbab218e82700071da436cb235c02] marked as invalid by committer. Reason code [ENDORSEMENT_POLICY_FAILURE]
2018-10-10 05:51:09.745 UTC [kvledger] CommitWithPvtData -> INFO 14c Channel [mychannel]: Committed block [115] with 1 transaction(s)
[ ](https://chat.hyperledger.org/channel/composer?msg=wZQWRDZtokoTLPdKq) Maintainers please check :)
Has joined the channel.
@kapila123 Uninstall composer-cli and composer-rest-server, then re-install at 0.19.16. Then you upgrade your runtime. You need to change the version number in package.json of your bna (check that there are no `composer-*` entries in the dependencies section of your bna package.json. Recreate you bna archive and then using version 0.19.16 of the composer cli perform a `composer network upgrade`
@halilkalkan I would suggest asking on a fabric channel about that but I believe fabric offers attribute based access control capability as 1 option, or you can do your own by performing checks on the creator of the request
[ ](https://chat.hyperledger.org/channel/composer?msg=jyHpbhXHRzbGbdkYH) @davidkel Thank you so much David, your suggestion is logical maybe I should check attributes in chaincode functions then execute them.
[ ](https://chat.hyperledger.org/channel/composer?msg=KDN7kgnL4TAKcMDQi) @davidkel Thanks Dave for the instructions !!! all the cards generated on composer old version will work with composer latest version , am i correct or do i need to recreate my cards as well ?
@kapila123 No you don't need to recreate your cards.
are there composer version 0.19.16.1 available as i heard there are some problems with composer version 0.19.16 ?
[ ](https://chat.hyperledger.org/channel/composer?msg=wyuEuwWT8gbBjhCPz) @davidkel thanks for confirmation
@kapila123 What problems have you heard ? 0.19.16 is the latest version of composer for fabric 1.1
[ ](https://chat.hyperledger.org/channel/composer?msg=CihsnfHMBCvYDq7F4) @davidkel Hi Dave , I am not sure if this is typo issue . But as you confirmed that Conposer version 0.19.16 is the latest version with Fabric 1.1
[ ](https://chat.hyperledger.org/channel/composer?msg=CihsnfHMBCvYDq7F4) @davidkel Hi Dave , I am not sure if this is typo issue . But as you confirmed that Conposer version 0.19.16 is the latest version with Fabric 1.1 , Let me cross check again
[ ](https://chat.hyperledger.org/channel/composer?msg=CihsnfHMBCvYDq7F4) @davidkel Somehow , This was typo error related to composer version 0.19.16.1
Hi Dave , I have another question related to composer rest server image with latest composer version 0.19.16. do we have ibmblockchain/composer rest server for composer version 0.19.16 using composer wallets for card storage ? there was image ibmblockchain/composer rest server 0.19.5 with composer wallets ?
Hi Dave , I have another question related to composer rest server image with latest composer version 0.19.16. do we have ibmblockchain/composer rest server for composer version 0.19.16 using composer wallets for card storage ? there was image ibmblockchain/composer rest server 0.19.5 with composer wallets .
[ ](https://chat.hyperledger.org/channel/composer?msg=AR3eXJdgkkqr9KXHm) @anand.balagopalan How was the card created? What Fabric are you connecting to (custom, development, hosted)? What versions of Composer and Fabric are you using? Are you following any particular guide or tutorial document?
Has joined the channel.
Hi,everyone
Has joined the channel.
is the playground website down for the meanwhile ?
how can I connect composer to my Fabric Network? ( "first-network" from Building Your First Network Tutorial)
[ ](https://chat.hyperledger.org/channel/composer?msg=YjJS6Z6FpobFmPB75) @GyoonKi The online Playground is unavailable at the moment.
[ ](https://chat.hyperledger.org/channel/composer?msg=YjJS6Z6FpobFmPB75) @GyoonKi The online Playground is unavailable at the moment. (I think it is due to some temporary problem on the IBM cloud.)
@kapila123 you can check out the publlshed images here -> https://hub.docker.com/r/ibmblockchain/composer-rest-server/tags/
@GyoonKi its down at the moment, will keep you posted
[ ](https://chat.hyperledger.org/channel/composer?msg=hL2hAzcNS8BcNxLLh) @B0uMe There is a tutorial in the Composer Docs for doing this - it is the MultiOrg Tutorial for connecting to the 2 Org BYFN Fabric. However, be aware that the tutorial uses a particular flavour of the BYFN network, so you need to follow the instructions exactly to get the correct BYFN network setup.
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
https://composer-playground.mybluemix.net/
[ ](https://chat.hyperledger.org/channel/composer?msg=Kt4dwLJ6duHdi8LJ9) @mahoney1 Thanks Paul
[ ](https://chat.hyperledger.org/channel/composer?msg=fjpxHBGou76Z5xYg2) Hi Paul , As i understood that ibmblockchain images for composer rest server used to look for cards to be available in composer wallets in cloudant. So we were able to host the composer rest server as cloud foundry application in IBM Cloud. I saw that hyperledger composer rest server images available with all latest versions .But these images look for the business network cards to be available in the kubernetes cluster persistant volume as per understanding. is there a way , if i need to host the hyperledger composer rest server image to IBM cloud , how we can make available required cards for this image and host this docker image as cloud foundry application ?
@kapila123 Please could you DM me directly to discuss
[ ](https://chat.hyperledger.org/channel/composer?msg=wdSyxdP6o3wWJ2haX) Is it because of invalid crypto setting during setup or upon issuing cards? Thanks.
How to update Angular application generated from Yoman to connect to secure REST server ?
@jonlee300 sounds like the card you're using to do the invoke (assume your did an earlier `composer network start` successfully with the endorsement policy file specified per the multi-org tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org - its possible the connection profile for your participant hasn't specified the peers from both orgs correctly - if you follow the tutorial, it works correctly from that standpoint....
@LabibFarag the angular application is merely a sample, skeleton app FYI - but this Stack Overflow ANSWER discusses a Google OAUTH2 multi-user auth example -> https://stackoverflow.com/questions/50255074/how-to-access-hperledger-composer-rest-api-through-angular-4-web-application
Playground is back online...
[ ](https://chat.hyperledger.org/channel/composer?msg=YjzpKxYkan6HhHxDF) @mahoney1 thanks and will examine them.
Hello,
I am adding an asset in my chaincode using the assetRegistry.add method. this returns me the error No ledger context for GetState
Anybody know what this means and how I can fix it ?
Has left the channel.
The resource is built using the factory.newResource method
[ ](https://chat.hyperledger.org/channel/composer?msg=hfyFHuTEX4xq7NKqe) @omarqr I have not seen this error, but have you used the same namespace in `factory.newResource` and `bnc.getAssetRegistry` ?
If this doesn't help, I can you post a code snippet here or full details of your model and code in a Stack Overflow post.
Yep it's the same namespace
Thanks anyway, I'll keep investigating, and will let you know if I post more info on stackoverflow
[ ](https://chat.hyperledger.org/channel/composer?msg=YjzpKxYkan6HhHxDF) @mahoney1 bob can start the business network and issue identity
I then used bob's card to issue a new participant viola, import it into wallet and ping it. I further check the status the card is valid with "Credentials Set" under credential
I then compare the connection.json under ~/.composer/cards/bob@network and ~/.composer/cards/viola@network and they are identical.
It seems that the connection profile are the same.
what could be other area that i should examine please?
[ ](https://chat.hyperledger.org/channel/composer?msg=YjzpKxYkan6HhHxDF) @mahoney1 bob can start the business network and issue identity
I then used bob's card to issue a new participant viola, import it into wallet and ping it. I further check the status the card is valid with "Credentials Set" under credential
I then compare the connection.json under /.composer/cards/bob@network and /.composer/cards/viola@network and they are identical.
It seems that the connection profile are the same.
what could be other area that i should examine please?
[ ](https://chat.hyperledger.org/channel/composer?msg=YjzpKxYkan6HhHxDF) @mahoney1 bob can start the business network and issue identity
I then used bob's card to issue a new participant viola, import it into wallet and ping it. I further check the status the card is valid with "Credentials Set" under credential
I then compared the connection.json under /.composer/cards/bob@network and /.composer/cards/viola@network and they are identical.
It seems that the connection profile are the same.
what could be other area that i should examine please?
[ ](https://chat.hyperledger.org/channel/composer?msg=YjzpKxYkan6HhHxDF) @mahoney1 bob can start the business network and issue identity
I then used bob's card to issue a new participant viola, import it into wallet and ping it. I further check the status the card is valid with "Credentials Set" under credential
I then compared the connection.json under /.composer/cards/bob@network and /.composer/cards/viola@network and they are identical.
It seems that the connection profiles are the same.
what could be other area that i should examine please?
Has joined the channel.
i have an asset that is owned by a participantA.
I want to allow to participantB to view the data in my asset. I am storing reference of participantB as part of participantA that can viewn this asset.
How can implement this is permission.acl file?
participant PersonA {
--> PersonB[] myPersonB optional
--> Records records optional
}
participant PersonB {
o String PersonId
}
asset Records identified by recordID {
o String recordID
o String[] data1 optional
o String[] data2
--> PersonA owner
}
What functions are availble in permission.acl file? Thanks!
I am adding personB reference in personA all the reference can view and read the asset! the logic.js part is quite simple but but how restrict this in permission.acl file!
[ ](https://chat.hyperledger.org/channel/composer?msg=qPsQMoh3Wvc5R7yoZ) @omarqr It may be that you have 'lost' your context through a timeout - it is possible to increase execute timeouts, but perhaps you are using some Timer/setTimeout in your code that is causing the problem. But Stack Overflow is probably the best place for a detailed Q/A.
I saw some answers mentioning the timeout issue but I haven't set any. Is there a way to configure the default timeout ?
[ ](https://chat.hyperledger.org/channel/composer?msg=SCNBYRwePJ6GrP6F7) @mmick Have you seen the ACL Tutorial? It has a very similar scenario to yours - using the Commodity Trading sample Traders can only see Commodities that they own.
https://hyperledger.github.io/composer/latest/tutorials/acl-trading
[ ](https://chat.hyperledger.org/channel/composer?msg=fQxSSWszHJNhtfMF4) @omarqr There is a configuration somewhere, but I think the default is 30s so I wonder why your transaction might be exceeding this?
@jonlee300 - you should check if any transactions work in either org (eg asset update) - again, you need to check from the logs (eg peer) why you're getting endorsement failures.
@mmick further to @rthatcher's good suggestion - you can check [Stack Overflow example - answer 1](https://stackoverflow.com/questions/51815370/hyperledger-composer-permission-for-array-of-participants/51821095#51821095) for something very similar
[ ](https://chat.hyperledger.org/channel/composer?msg=gA4Gx6stsZ34wHG2f) @mahoney1 2018-10-10 05:51:09.720 UTC [vscc] Validate -> WARN 149 Endorsement policy failure for transaction txid=a4d310fd703e6bbbae35a91e8c8aaa67894fbab218e82700071da436cb235c02, err: signature set did not satisfy policy
2018-10-10 05:51:09.720 UTC [committer/txvalidator] validateTx -> ERRO 14a VSCCValidateTx for transaction txId = a4d310fd703e6bbbae35a91e8c8aaa67894fbab218e82700071da436cb235c02 returned error: VSCC error: endorsement policy failure, err: signature set did not satisfy policy
2018-10-10 05:51:09.722 UTC [valimpl] preprocessProtoBlock -> WARN 14b Channel [mychannel]: Block [115] Transaction index [0] TxId [a4d310fd703e6bbbae35a91e8c8aaa67894fbab218e82700071da436cb235c02] marked as invalid by committer. Reason code [ENDORSEMENT_POLICY_FAILURE]
2018-10-10 05:51:09.745 UTC [kvledger] CommitWithPvtData -> INFO 14c Channel [mychannel]: Committed block [115] with 1 transaction(s)
the logs are the same for all peers
peer0.org1 peer1.org1 peer0.org2 peer1.org2
[ ](https://chat.hyperledger.org/channel/composer?msg=zqiEhJ8bFjLDw6fy5) It adds a list of assets to the registry using the addAll method, then it creates a new Asset and adds it to the registry, it shouldn't take that long, and I don't think it does. It must be something else
```
ao.js:2117:9
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1140:9
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:473:16
at eachOfArrayLike (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1057:9)
at eachOf (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1117:5)
at _asyncMap (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1133:5)
at Object.map (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1122:16)
at allCb (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:2031:13)
at /home/composer/node_modules/loopback-connector-mongodb/lib/mongodb.js:1318:9
at result (/home/composer/node_modules/mongodb/lib/utils.js:414:17)
at executeCallback (/home/composer/node_modules/mongodb/lib/utils.js:406:9)
at handleCallback (/home/composer/node_modules/mongodb/lib/utils.js:128:55)
at cursor.close (/home/composer/node_modules/mongodb/lib/operations/cursor_ops.js:211:62)
at handleCallback (/home/composer/node_modules/mongodb/lib/utils.js:128:55)
at completeClose (/home/composer/node_modules/mongodb/lib/cursor.js:893:14)
at Cursor.close (/home/composer/node_modules/mongodb/lib/cursor.js:912:10)
at cursor._next (/home/composer/node_modules/mongodb/lib/operations/cursor_ops.js:211:23)
at handleCallback (/home/composer/node_modules/mongodb-core/lib/cursor.js:203:5)
at _setCursorNotifiedImpl (/home/composer/node_modules/mongodb-core/lib/cursor.js:561:38)
```
TypeError: Cannot read property 'match' of undefined
at profileToUser (/home/composer/.npm-global/lib/node_modules/composer-rest-server/lib/util.js:175:26)
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-component-passport/lib/models/user-identity.js:126:61
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:2181:62
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:2117:9
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1140:9
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:473:16
at eachOfArrayLike (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1057:9)
at eachOf (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1117:5)
at _asyncMap (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1133:5)
at Object.map (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1122:16)
at allCb (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:2031:13)
at /home/composer/node_modules/loopback-connector-mongodb/lib/mongodb.js:1318:9
at result (/home/composer/node_modules/mongodb/lib/utils.js:414:17)
at executeCallback (/home/composer/node_modules/mongodb/lib/utils.js:406:9)
at handleCallback (/home/composer/node_modules/mongodb/lib/utils.js:128:55)
at cursor.close (/home/composer/node_modules/mongodb/lib/operations/cursor_ops.js:211:62)
at handleCallback (/home/composer/node_modules/mongodb/lib/utils.js:128:55)
at completeClose (/home/composer/node_modules/mongodb/lib/cursor.js:893:14)
at Cursor.close (/home/composer/node_modules/mongodb/lib/cursor.js:912:10)
at cursor._next (/home/composer/node_modules/mongodb/lib/operations/cursor_ops.js:211:23)
at handleCallback (/home/composer/node_modules/mongodb-core/lib/cursor.js:203:5)
at _setCursorNotifiedImpl (/home/composer/node_modules/mongodb-core/lib/cursor.js:561:38)
i am getting the above error when configureing rest server with password jwt
how to solve it.
[ ](https://chat.hyperledger.org/channel/composer?msg=CgdefaY8NAEe2JnYX) It only took 47ms, it is not due to timeout then
When running composer-rest-server, what container does it run in? The peer container?
It runs as a process on you host
not in any container
Oh I gotcha
thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=NxWLCKdmbuTxwend7) @ColeBoudreau if you have installed `composer-rest-server` using npm, then it will run 'locally' as a node app. There is a docker container version available on docker hub.
@rthatcher Could I get a link to where on docker hub? thanks
try hub.docker.com and search for composer-rest-server
I have another question, why is it that even when my transaction throws an error, I need to go through the logs to find out it threw an error ? Is there a way to dispatch this error to the REST server ?
[ ](https://chat.hyperledger.org/channel/composer?msg=vC95eaoNHysLXT59d) @mahoney1
one extra finding is that I can successfully add to a registry directly.
but if i trigger transaction written in javascript, it return this error.
the transaction in javascript has been running for few months using ./startFrabic version of hyperledger
what could be the potential issue please?
[ ](https://chat.hyperledger.org/channel/composer?msg=vC95eaoNHysLXT59d) @mahoney1
one extra finding is that I can successfully add to a registry directly, i.e., an asset registry that the user has access right.
but if i trigger transaction written in javascript, it return this error.
the transaction in javascript has been running for few months using ./startFrabic version of hyperledger
what could be the potential issue please?
[ ](https://chat.hyperledger.org/channel/composer?msg=vC95eaoNHysLXT59d) @mahoney1
one extra finding is that I can successfully add to a registry directly, i.e., an asset registry that the user has access right.
but if i trigger transaction written in javascript, it will return this error.
the transaction in javascript has been running for few months using ./startFrabic version of hyperledger
what could be the potential issue please?
Has joined the channel.
I was trying out the "developer tutorial", and on Step 3: Generate a business network archive, when I enter "composer archive create -t dir -n" in the command line, I got "no such file or directory", so my question is, how do I change the directory? I have follow along with the instruction, and got stuck here, someone help, please..
I was trying out the "developer tutorial", and on Step 3: Generate a business network archive, when I enter "composer archive create -t dir -n" in the command line, I got "no such file or directory", so my question is, how do I change the directory? I have follow along with the instruction, and got stuck here, someone help, please.. or I should say, how do I configure the command line so it will look for the specified directory?
The directory is specified avec the -t option
@rthatcher I've just posted a question on stackoverflow with code snippets of my model and logic, if you had the time to take a look it would be great ! https://stackoverflow.com/questions/52743473/hyperledger-composer-returns-error-no-ledger-context-for-getstate
[ ](https://chat.hyperledger.org/channel/composer?msg=K826hSxBwfXM9NW6i) @moomoochen hi - the command is `composer archive create -t dir -n . ` - ie it includes the 'dot' (meaning: current directory)
@jonlee300 erh yes, you could look at ensuring you have a valid Fabric version (see table here -> https://github.com/hyperledger/composer/wiki) , appropriate to the Composer version you are using and reading the release notes https://github.com/hyperledger/composer/releases ? If you follow this tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org with H/L fabric 1.2.1 and repo mentioned, it works (has been tested).
p
\
\]'
Has joined the channel.
Is it just me or https://composer-playground.mybluemix.net/ is down?
Getting this: 404 Not Found: Requested route ('composer-playground.mybluemix.net') does not exist.
Same for me, using https://blockchaindevelop.mybluemix.net for now
@GonzalezAnguita do you know if there is a v0.20.x version of the hosted playground?
@mahoney1 I have tried themulti-org tutorial(https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org) a few times, but always failed with below error: / ___| |_ _| / \ | _ \ |_ _|
\___ \ | | / _ \ | |_) | | |
___) | | | / ___ \ | _ < | |
|____/ |_| /_/ \_\ |_| \_\ |_|
Build your first network (BYFN) end-to-end test
Channel name : mychannel
Creating channel...
+ peer channel create -o orderer.example.com:7050 -c mychannel -f ./channel-artifacts/channel.tx --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
+ res=1
+ set +x
2018-10-10 22:56:24.698 UTC [channelCmd] InitCmdFactory -> INFO 001 Endorser and orderer connections initialized
Error: got unexpected status: FORBIDDEN -- Failed to reach implicit threshold of 1 sub-policies, required 1 remaining: permission denied
!!!!!!!!!!!!!!! Channel creation failed !!!!!!!!!!!!!!!!
========= ERROR !!! FAILED to execute End-2-End Scenario ===========
Could you advise what may be the problem?
Has joined the channel.
Has joined the channel.
#composer-dev
[ ](https://chat.hyperledger.org/channel/composer?msg=PMK4E35SgjEt4zWdY) @GonzalezAnguita Its down again... I think it s based in the us timing, then are shutting down for maintenance of some kind.
Yeah . its down again, This seems to be a concern. Going down frequently from 3 days
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=bddmAdARMThLb8NQB) @rthatcher I think some old fabric was left in the instance...when i tried with a fresh EC2 instance, its working...The network is a custom setup one and all cards were created using cli
I made an error in connection profile(mis-typed the CA name), but created cards and deployed the network. Can i manually edit the ca name in thew card file?will it work?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=faggnR5ZNojYfFMAP) @mahoney1 when I run the script, it pulled the latest version of Fabric instead of using 1.21
[ ](https://chat.hyperledger.org/channel/composer?msg=faggnR5ZNojYfFMAP) @mahoney1 when I run the script, it pulled the latest version of Fabric instead of using 1.2.1
Clipboard - October 11, 2018 11:55 AM
Hi could anyone confirm that composer playground is ok? I am trying to connect to playground and I am getting 404
@Renick composer-playground.mybluemix.net is currently down
@davidkel Thanks for confirming..
Clipboard - October 11, 2018 11:36 AM
[ ](https://chat.hyperledger.org/channel/composer?msg=Tiptmrgd6Q783Tm5B) @anand.balagopalan - Yes you should be able to edit the connection.json file for the cards in the 'file system wallet'. But if you have the certificates and a new connection.json, then you can just delete the old cards and re-create them with the new connection.json.
If you edit the connection.json for the cards in the file-system-wallet be aware that they have the white space removed and are quite difficult to edit.
When will the playground be online again?
@WenXingWang sounds like you need to tear down your old network first before each attempt you perform, using `./byfn.sh -m down` from appropriate dir, ensuring all containers are cleared, then remove the cards per the instructions multi-org tutorial - could also post your composer version
[ ](https://chat.hyperledger.org/channel/composer?msg=gcKf4j942yZ3JDA4q) @benjamin.verhaegen its available -> https://composer-playground.mybluemix.net/
Has joined the channel.
i think the best way is to setup local version of composer playground
Playground is down again?
Unfortunately our hosted playground is unavailable, we don't know when it will be back
Hi, I have 2 participants "Company" and "Employee". "Employee" has a relationship to "Company". If I add a participant with a non-existant "Company" id, is it possible to avoid the new record?
(maybe I'm not on the right channel)
Hi, I have 2 participants "Company" and "Employee". "Employee" has a relationship to "Company". If I add a participant with a non-existant "Company" id, is it possible to avoid the new record?
What are your solutions to prevent the breaking relationships?
[ ](https://chat.hyperledger.org/channel/composer?msg=Zznyv57vvrDvy972v) @rthatcher Thnax...As u said, its pretty difficult to edit...i Re-deployed th network with new cad
Im trying to use the REST api from a mobile to interact with the network. I have 3 participants, and have manually Issued cards for them... If im running REST server in multi user mode, how can i achieve this?
@davidkel, I am using my local playground now , but while testing console.log is not printing. Could you please help with this.
where to study hyperledger composer
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ye72JZRtdLBrCYyCq) @Anu 226 you could start with the docs -> https://hyperledger.github.io/composer/latest/
[ ](https://chat.hyperledger.org/channel/composer?msg=682YWaRCuMab2DBRB) @Renick you need to check your business network/ chaincode docker container logs for logged messages - see https://stackoverflow.com/questions/48890545/hyperledger-composer-on-fabric-console-log-doesnt-work for more info
[ ](https://chat.hyperledger.org/channel/composer?msg=682YWaRCuMab2DBRB) @Renick you need to check your business network/ chaincode docker container logs for logged messages - see https://stackoverflow.com/questions/48890545/hyperledger-composer-on-fabric-console-log-doesnt-work for more info of also [here](https://stackoverflow.com/questions/49987916/hyperledger-composer-not-getting-console-log-messages)
[ ](https://chat.hyperledger.org/channel/composer?msg=682YWaRCuMab2DBRB) @Renick you need to check your business network/ chaincode docker container logs for logged messages - see https://stackoverflow.com/questions/48890545/hyperledger-composer-on-fabric-console-log-doesnt-work for more info or also [here](https://stackoverflow.com/questions/49987916/hyperledger-composer-not-getting-console-log-messages)
Has joined the channel.
When modifying docker-compose-base.yaml for my project I get an invalid reference format error from docker on the image specification line. What's the cause of this? Thanks!
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=faggnR5ZNojYfFMAP) @mahoney1 I had rebuilt the whole network with correction fabric 1.2.1 and composer v0.20.1 and "ENDORSEMENT_POLICY_FAILURE" error still persists.
Let me elaborate the finding more:
Using a participant card (issued by business network admin):
Edit self data in Participant, OK
Add/Edit asset directly, OK
Add/Edit participant through javascript, OK.
Add/Edit asset through javascript, "ENDORSEMENT_POLICY_FAILURE" occurs.
So, I can go thru every steps in the https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org but this tutorial does not contain last test ( Add/Edit asset thru js).
Is it a good idea to use transaction to add participants if they have some relationships ? The transaction will test the different relationships before creating the participant.
A separate question about how to upgrade the business network:
I tried below command since in real world, there are chances that third org will join the network and thus the endorsementPolicyFile has to be changed plus add adding certs.
`composer network upgrade -c PeerAdmin@network-org1 -n bank-network -V 0.0.3 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem`
above command failed as there is no -A and -C Options.
I then tried below command without the certs
`composer network upgrade -c PeerAdmin@network-org1 -n bank-network -V 0.0.3 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json`
The command worked but how could we address adding an Org?
A separate question about how to upgrade the business network under multi-org structure:
I tried below command since in real world, there are chances that third org will join the network and thus the endorsementPolicyFile has to be changed plus add adding certs.
`composer network upgrade -c PeerAdmin@network-org1 -n bank-network -V 0.0.3 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem`
above command failed as there is no -A and -C Options.
I then tried below command without the certs
`composer network upgrade -c PeerAdmin@network-org1 -n bank-network -V 0.0.3 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json`
The command worked but how could we address adding an Org?
A separate question about how to upgrade the business network under multi-org structure:
I tried below command since in real world, there are chances that third org will join the network and thus the endorsementPolicyFile has to be changed plus adding new certs.
`composer network upgrade -c PeerAdmin@network-org1 -n bank-network -V 0.0.3 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem`
above command failed as there is no -A and -C Options.
I then tried below command without the certs
`composer network upgrade -c PeerAdmin@network-org1 -n bank-network -V 0.0.3 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json`
The command worked but how could we address adding an Org?
[ ](https://chat.hyperledger.org/channel/composer?msg=rSoDb2DsbfsoEAbwH) I found the reason why.
It is due to the programming code in js contains timestamp and execution of proposal in 4 nodes have time difference. As a result, all nodes cannot agree on a consistent response set and thus result in endorsement policy failure. That explains why all other situations can go through since those direct update does not involve timestamp from JS code.
[ ](https://chat.hyperledger.org/channel/composer?msg=34fzDgrZtoMkidyb2) @kcampion - relationship fields are not 'resolved' or tested when an Asset or Participant is created. (You can add relationships for a nonexistent resource)
Yes I know @rthatcher but with a transaction I can create a javascript condition to check if a relationship can be joined
@jonlee300 ah yes, non-deterministic code..cool. On upgrade - check out the Appendix of this Medium article -> https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82 - it describes the process for upgrading the policy etc.
@jonlee300 ah yes, non-deterministic code..thought it might be something like that. On upgrade - check out the Appendix of this Medium article -> https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82 - it describes the process for upgrading the policy etc. In the case where a 3rd org was added
[ ](https://chat.hyperledger.org/channel/composer?msg=7QJTxQizLrNbq5dLj) @edoardo_bdf ..an invalid specification of the image methinks :-) :rolling_eyes: an example of the reference format for the Composer dev environment (and fabric images thereof) is shown [here](https://github.com/hyperledger/composer-tools/blob/master/packages/fabric-dev-servers/fabric-scripts/hlfv12/composer/docker-compose.yml) for reference
[ ](https://chat.hyperledger.org/channel/composer?msg=7QJTxQizLrNbq5dLj) @edoardo_bdf ..an invalid specification of the image methinks :-) :rolling_eyes:
.... an example of the reference format for the Composer dev environment (and fabric images thereof) is shown [here](https://github.com/hyperledger/composer-tools/blob/master/packages/fabric-dev-servers/fabric-scripts/hlfv12/composer/docker-compose.yml) for reference
Has joined the channel.
@mahoney1 Thanks, it was really an idiotic thing
@kcampion sure, like `.exists(id)` etc. Its fine (as transactions are used to add participants in any case) - the thing to bear in mind is that you would get the same deterministic result when the transaction is being endorsed (if you're testing they exist in your contract logic, then seems you have it in hand).
ok, thank you @mahoney1
Hi I am facing issues in JWT implementation for composer rest server. Can anyone please guide me out in this? https://stackoverflow.com/questions/52763154/jwt-authentication-fails-in-hyperledger-composer
hi there, the Composer community call is in 15m approx, at 4pm UTC today https://zoom.us/my/hyperledger.community FYI
[ ](https://chat.hyperledger.org/channel/composer?msg=tkpEswDBDQXAX7xPk) @mahoney1 thanks. will follow the medium article.
Has joined the channel.
@mahoney1 Many thanks! You are right. After deleting all the cards first, it work for me now.
@mahoney1 When I go into CA container ca_peerOrg1, trying to run "fabric-ca-client enroll -u http://admin:adminpw@localhost:7054", I got error:
2018/10/11 20:44:35 [INFO] Created a default configuration file at /etc/hyperledger/fabric-ca-server/fabric-ca-client-config.yaml
2018/10/11 20:44:35 [INFO] generating key: &{A:ecdsa S:256}
2018/10/11 20:44:35 [INFO] encoded CSR
Error: POST failure of request: POST http://localhost:7054/enroll
{"hosts":["8f2497971736"],"certificate_request":"-----BEGIN CERTIFICATE REQUEST-----\nMIIBQjCB6QIBADBdMQswCQYDVQQGEwJVUzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xp\nbmExFDASBgNVBAoTC0h5cGVybGVkZ2VyMQ8wDQYDVQQLEwZGYWJyaWMxDjAMBgNV\nBAMTBWFkbWluMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7relywylvzaOwXE3\nrXRcxiNbU0r62Z5x25h5wUrz5nMqxG44SHvB8RVlSckVO153mMxqDIbx/RjmjkVN\nozBfjqAqMCgGCSqGSIb3DQEJDjEbMBkwFwYDVR0RBBAwDoIMOGYyNDk3OTcxNzM2\nMAoGCCqGSM49BAMCA0gAMEUCIQCnBNfkqqluhbAGRzOfpGun0r/4zUj+g41yfBur\nEiaJ2QIgcPEhBcBD6YnvGVqUHeB9M4EX08LHL/UJqx9ro5jqrkI=\n-----END CERTIFICATE REQUEST-----\n","profile":"","crl_override":"","label":"","NotBefore":"0001-01-01T00:00:00Z","NotAfter":"0001-01-01T00:00:00Z","CAName":""}: Post http://localhost:7054/enroll: net/http: HTTP/1.x transport connection broken: malformed HTTP response "\x15\x03\x01\x00\x02\x02\x16"
But when I ran the same command in CA container created in the single org tutorial. I have no issue. I compared the version of both fabric-ca-client, they are the same:
fabric-ca-client:
Version: 1.2.1
Go version: go1.10
OS/Arch: linux/amd64
open the online playground through Chrome,it tips invalid version,after click clear clear strorage the composer does not work.
Has anyone encountered this problem?
:joy: After clear all browsing data,it works
[ ](https://chat.hyperledger.org/channel/composer?msg=tkpEswDBDQXAX7xPk) @mahoney1 Any other tutorial on using different IPs tutorial? Thanks.
Has joined the channel.
Has joined the channel.
is required different Identities for more than one business network in single node? If yes, where is it stored, how it is stored in ledger through fabric? Is it possible to create more than one participant in a single node , how is it?
[ ](https://chat.hyperledger.org/channel/composer?msg=cJ5gbNxASE7fGexnm) Update 1: Generally, when we exchange the JWT for the first time using auth bearer, a db named "test" is created in mongo. This db contains three collections: accessToken, user and userIdentity. However, in my case when I exchange the token, no db is created in mongo. Any suggestions on how I can debug this?
[ ](https://chat.hyperledger.org/channel/composer?msg=Qf5QXAFupiT2MojgC) @jonlee300 If you have not already seen them, there are 2 other tutorials from Community members that may help:
https://medium.com/hyperlegendary/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-bfbe4e38b6c6
https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f
[ ](https://chat.hyperledger.org/channel/composer?msg=Qp7vTag9trMpEFdAk) @adnanabbasktt This is a lot of questions :-)
Can I suggest you look at the Introduction and Key Concepts to start with:
https://hyperledger.github.io/composer/latest/introduction/introduction
https://hyperledger.github.io/composer/latest/introduction/key-concepts.html
Then work through the developer tutorial and the ACL tutorial - I think that will answer all your questions
https://hyperledger.github.io/composer/latest/tutorials/tutorials
When using Multi user mode in rest server I have the following understanging...kindly correct me if im wrong:
1. Authenticate the app using Github
2. Get the access token
3. Load participant card in the wallet
4. Call API with access token (I believe access token is same for a network, but different participants are distinguished by their cards...SO when i need to change the participant, i have to load the corresponding card to the wallet?)
1.3
Has left the channel.
@anand.balagopalan correct, 'import' the card into the wallet and call the API with access token, with headers etc... see examples of multi-user auth at https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc (Github) and https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest (Google OAUTH2 client auth)
[ ](https://chat.hyperledger.org/channel/composer?msg=GJKk927g9dJ4L37JA) @anand.balagopalan Almost correct :-)
1. Authenticate the *Person* (user) with GitHub
4 Although you can add more than one Card to a Wallet, you would normally have the other Person on a different Computer and they would authenticate with a Different Github account, and they would have a separate Wallet.
@rthatcher I am using mobile app as the end point...so I can only call a REST api with an access toke... My confusion is,
1. How i change a participant based on the mobile login
2. How to use API calls with a participant ID.. Its much easier if i use a computer, but i have limitations on the project :(
so i guess there is a mechanism to LOAD a specific card from wallet, based on my user, even though i have multiple card loaded?
Maybe using
post /wallet/{name}/setDefault API?
[ ](https://chat.hyperledger.org/channel/composer?msg=qhqRmL3zPKCkJy6dx) @rthatcher Much appreciated, all.
@jonlee300 you might want to ask on one of the #fabric-xx channels for help with that
@jonlee300 you might want to ask on one of the #fabric-xx channels for help with that (CA enrol issue)
Has joined the channel.
Hi, i'm using the javascript api to issue an identity and create a card when a new participant is created via a transaction. I am able to do both thigns and i can see the card is being created in my /.composer/cards directory. However when i try to open my playground i get the error "Error: Unable to read required file: metadata.json" and the page loads forever and doesnt list any cards. The metadata.json file for these cards created via the javascript api looks fine when compared to other cards created via composer-cli. Does anyone know what can be causing this error?
Someone has already used composer-rest-server with passport-local? I can't make it work
to clarify, the error only occurs after a new card is created via the javascript api. if i delete the card from /.composer/cards the playground works fine and lists all the cards created by other means.
I'm sure something is missing in my .js file, i just can't figure out what since i ahve sucessfully passed the metadata and connectionprofile required to create the card
[ ](https://chat.hyperledger.org/channel/composer?msg=AzhHGAo9FSqdq2ZqA) @JSilva Have you tried to use the Card on the command line (perhaps composer network ping) - it might isolate the problem as a card problem or a playground problem.
[ ](https://chat.hyperledger.org/channel/composer?msg=8AptzyvptC35S8cLN) @kcampion see this [comments and links](https://github.com/hyperledger/composer/issues/4297#issuecomment-419662297) in this issue for guidance on configuring
@rthatcher it seems to be working as intended, i dont get any errors when pinging with these cards
and after the ping does Playground still fail ?
yes
and I assume that creating new identities (cards) in Playground is OK?
i haven't quite grasped how whole cards/identities differentiate from each other but i the identity issuing is ok. i'm using
businessNetworkConnection.issueIdentity('my.network.IndividualUser#'.concat(userID), userID).
After i do this i can see that a new identity appears in my playground as "ISSUED"
so you can see the ISSUED card OK on the "ID Registry" Page but when you go to the "My Business Networks" page it fails ?
at the moment i can't navigate in the playground because i'm getting the error, but if i remove the card that was created from /.composer/cards i can access the playground again and see that new identity was created in the ID Registry with the status "ISSUED"
What version of Composer and Fabric are you using ?
fabric 1.1 and composer v0.19.15
when I exec ./startFabric.sh found this error: sleeping for 15 seconds to wait for fabric to complete start up
Error response from daemon: Container 06ce7cc8bebb1852bc41c4f231822693a9d43ed39528cbb2a31915e9c663268e is not running
@jack21 what Operating System / version? Are you running inside a virtual machine?
[ ](https://chat.hyperledger.org/channel/composer?msg=orf9kD6hg48X8LbNL) @JSilva - I've just tested this with v0.20.2 and I don't see the problem that you have - i.e. I can Issue Identities via the Javascript API and then Start Playground without a problem. (Using Ubuntu and Chrome). So maybe there is a change/fix in v0.20.2 or perhaps we are using the API differently.
(I do see that my new cards are created in a 'different group' / different line on the 'My Business Networks' page even though they both say hlfv1 - but this is an old issue that won't be fixed)
I suggest you try with Composer v0.20.2 and see if the problem goes away (and BTW you will need to use Fabric 1.2.1 with Composer v0.20.2)
If you still get the problem with 0.20.2 I would suggest creating a Post in Stack Overflow with your code and I can compare it to mine.
HOWEVER - I would ask if you have seen this announcement: https://lists.hyperledger.org/g/composer/message/125
If there is a bug I would think it unlikely that it will be fixed because there is an easy workaround to create Issue the Identities within Playground itself, and anyway Playground is a simple Developer Test/Demo environment and the scenario you have is unusual.
[ ](https://chat.hyperledger.org/channel/composer?msg=orf9kD6hg48X8LbNL) @JSilva - I've just tested this with v0.20.2 and I don't see the problem that you have - i.e. I can Issue Identities via the Javascript API and then Start Playground without a problem. (Using Ubuntu and Chrome). So maybe there is a change/fix in v0.20.2 or perhaps we are using the API differently.
(I do see that my new cards are created in a 'different group' / different line on the 'My Business Networks' page even though they both say hlfv1 - but this is an old issue that won't be fixed)
I suggest you try with Composer v0.20.2 and see if the problem goes away (and BTW you will need to use Fabric 1.2.1 with Composer v0.20.2)
If you still get the problem with v0.20.2 I would suggest creating a Post in Stack Overflow with your code and I can compare it to mine.
HOWEVER - I would ask if you have seen this announcement: https://lists.hyperledger.org/g/composer/message/125
If there is a bug I would think it unlikely that it will be fixed because there is an easy workaround to Issue the Identities within Playground itself, and anyway Playground is a simple Developer Test/Demo environment and the scenario you have is unusual and more involved than Playground was intended for.
[ ](https://chat.hyperledger.org/channel/composer?msg=oX3QtQqDAhcboF9Jp) Update 2: I have total of 8 composer rest servers. These 8 servers are connected to 8 different orgs. All these 8 rest servers has the same JWT auth method as well secret of all of them is same. However, only 2 of them are working correctly. Rest of them are not.
How to query all the transactions happened/performed on an asset?
@rthatcher I can also issue identities and start playground without problems. The problem arises when, after that, i try to create a new business network card (also via javascript api by doing let newIdCard = new idCardClass(metadata, connectionprofile);
and then using "newIdCard.toDirectory" to move the created card into the " /.composer/cards " directory.
I think i may be missing a step because i'm quite confused about the difference between identities/idcards/business network cards. The docs i have read about this made me a little more confused.
I think i'll try to figure that out first and then try updating fabric and composer if i can't do it this way. Thanks for your help and for taking the time to test my problem
[ ](https://chat.hyperledger.org/channel/composer?msg=bSQDsak9o5SQ7M9aB) @Renick see this stack overflow -> https://stackoverflow.com/questions/52148421/how-historianrecord-work-i-want-to-save-history-for-all-transactions-based-on/52148952#52148952
@JSilva see programmatic example here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#card-api-errors--resolutions using the `IdCard` class
[ ](https://chat.hyperledger.org/channel/composer?msg=HJRhotdFa5Mhtefhv) @JSilva - OK we are doing this differently - I am creating the card then I'm using the `.importCard` method from the AdminConnection (NOT toDirectory) : https://hyperledger.github.io/composer/latest/api/admin-adminconnection
@JSilva you can't use the idClass to put cards into the card store on it's own, you have to use AdminConnection.importCard
@JSilva you can't use the IdCard class to put cards into the card store on it's own, you have to use AdminConnection.importCard
@rthatcher can we define composite primary key for asset in composer modelling language??
@rthatcher pls respond?
[ ](https://chat.hyperledger.org/channel/composer?msg=ivYzxQRZ2ZyusXHfj) @ShaikSharuk Composer does not give you access to the Composite Keys of native Fabric.
You would have to build a key yourself, but might find some difficulties with Queries of parts of the Key. Before you finally decide on how to create your keys, you might want to investigate the Composer Queries. There is a simple queries tutorial, and more information in the Documentation and Knowledge Wiki https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#queries
[ ](https://chat.hyperledger.org/channel/composer?msg=FWeowLMBWPmW83xdQ) @mahoney1 @mahoney1 nothing works :thumbsup:
[ ](https://chat.hyperledger.org/channel/composer?msg=FWeowLMBWPmW83xdQ) @mahoney1 @mahoney1 nothing works :(
@mahoney1 @davidkel could you please share details on running composer-rest-server on background
[ ](https://chat.hyperledger.org/channel/composer?msg=s9DqiYjeJ3R2dDFp3) @Renick You can run the REST Server as a Docker Container (though you may have to modify your connection.json)
You can run as a system service, or if you are just running a demo, testing you could investigate the nohup command.
If you just want to do other things in the terminal you could use the '&' at the end of the command line.
But this is not really a Composer question :-) . More of a linux question.
[ ](https://chat.hyperledger.org/channel/composer?msg=LxLT4jJxTiM6jJb4P) @rthatcher thanks @rthatcher.. will try the option.. trying to find if someone have a solution so can use straight away..
[ ](https://chat.hyperledger.org/channel/composer?msg=B6zGMQ7GuXsXZwjTW) @Renick You can refer to this link: https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server. Here, there are steps to deploy the composer rest server in a docker container.
when I just deployed my changes of var names it keep the old assets and participants and added the new. Is this a current bug where things don't update but add?
[ ](https://chat.hyperledger.org/channel/composer?msg=XFYE6rbHEq8dsQ2fP) Solved: The issue here was I was using the same name for mongodb container across all the hosts. And since all the containers connect to the swarm network, there were 8 mongodb containers with the same name which is quite a silly mistake. It caused an issue when the docker container of composer-rest-server tried to connect to the mongodb container. This connection is defined in COMPOSER_DATASOURCES variable. Using the different name for each of the mongo containers across all the hosts solved this issue.
[ ](https://chat.hyperledger.org/channel/composer?msg=XFYE6rbHEq8dsQ2fP) Solved: The issue here was I was using the same name for mongodb container across all the hosts. And since all the containers connect to the swarm network, there were 8 mongodb containers with the same name which is quite a silly mistake. It caused an issue when the docker container of composer-rest-server tried to connect to the mongodb container. This connection is defined in COMPOSER_DATASOURCES variable. Using the different name for each of the mongo containers across all the hosts solved this issue.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=TXwYKnRfeTX29NywH) I changed all the non-deterministic codes and tried to upgrade the network to new version but I got the following error.
blockchainadmin@hyperledger-fabric-ebl-d1-vm:~/eBL-v4$ composer network upgrade -c PeerAdmin@network-org1 -n ebl -V 0. 0.5 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json
Upgrading business network ebl to version 0.0.5
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
Attached pls find the err log:
upgrade_err_log.txt
fabric v1.2.1 composer v0.20.1
Has joined the channel.
the first upgrade was successful and this set of code has been upgraded to 1 node fabric and working well.
I retried the same command in third attempt and it worked.
Has joined the channel.
Hello good composer people. I am experiencing some problems with overlapping ACL rules
I want that Customer Participants are only allowed to read their own accounts
```
rule C6 {
description: "Customers can READ their own accounts"
participant(p): "org.cacao.participant.Customer"
operation: READ
resource(r): "org.cacao.bank.account.Account"
condition: (r.wallet.owner.owner.getIdentifier() == p.getIdentifier())
action: ALLOW
}
```
But during a transferFromAccount transaction, I want the submitting Customer participant to be able to read the recipient Account, even if it does not belong to him. (This is in order to add to the balance of the recipient account, and then update it)
```
rule CTX_TFA2 {
description: "Customers can READ Accounts in TransferFromAccountTx"
participant: "org.cacao.participant.Customer"
operation: READ
resource: "org.cacao.bank.account.Account"
transaction: "org.cacao.bank.account.TransferFromAccount"
action: ALLOW
}
```
I expected adding both rules would be sufficient, but it seems the rule C6 is taking precedence over CTX_TFA2, so unless I remove the rule C6 I can not successfully emit a TransferFromAccount transaction.
I tried by inverting the C6 logic, but that did not help. Is there any way I can have this two rules?
Hi I am getting the below error, and composer-rest-serever stops events.js:183
throw er; // Unhandled 'error' event
^
Error: invalid status code: 16974
at Receiver.controlMessage (/home/renick/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/ws/lib/Receiver.js:414:22)
Has joined the channel.
Has joined the channel.
concerto
Hi Everyone,
I am trying to install my business network on my BC network but i am getting below error:
kindle@kindle-V520-15IKL:~/pr-auction$ composer network install --card PeerAdmin@hlfv1 --archiveFile pr-auction@1.0.8.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
Command failed
Can anybody help me to resolve this?
hi,how can i storage files likes this pdf,doc,x-ray,mp3,image etc. in the fabric ?Is this possible?what is recommended for this?
Has joined the channel.
Has joined the channel.
hi
i am typing this command "composer network install --archiveFile cards-trading-network@0.0.1.bna --card PeerAdmin@hlfv1
" and the following error occur ..
Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
can anybody help me???
Has joined the channel.
Hi, can anyone tell me if HL Composer is required to learn to make apps in fabric? Initially I wanted to, but then I read that the support for that is going down and its features would be integrated into Fabric natively. Is this true? And can anyone point to Composer (fabric too if the tutorial talks about direct implementation using fabric) tutorials for a basic stage developer?
@AsifJaved make sure you have fabric running
Especially any solution that takes care of networking between the many docker containers would be really useful. I'm facing some issue about my orderer container and peer container not being able to talk to one another. (If any guidance on this-would be useful).
I have questions as below:
1,There is a new org added to the fabric/composer business network, the ledger data will be synchronized to the new peer of this new org,
so how can i determine if the synchronization is finished? will synchronization the emit messages? if it will, the message is ralated to every transaction or every block?
or just the finish of synchronization?
2,about the event of composer, except the emitted message from transaction ,will the message from fabric be emitted through the websocket of composer?
I have questions as below:
1,There is a new org added to the fabric/composer business network, the ledger data will be synchronized to the new peer of this new org,
so how can i determine if the synchronization is finished? will synchronization the emit messages? if it will, the message is ralated to every transaction or every block? or just the finish of synchronization?
2,about the event of composer, except the emitted message from transaction ,will the message from fabric be emitted through the websocket of composer?
I have questions as below:
1,There is a new org added to the fabric/composer business network, the ledger data will be synchronized to the new peer of this new org,
so how can i determine if the synchronization is finished? will synchronization the emit messages? if it will, the message is ralated to every transaction or every block? or just the finish of synchronization?
2,about the event of composer, except the emitted message from transaction ,will the message from fabric be emitted through the websocket of composer?
3,If composer is installed on the different computer with the fabric peer,then is Composer Runtime need to be installed on the computer running fabric peer or on the computer running composer?
via which command?
hi
i am typing this commnd " composer network start --networkName cards-trading-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file cards-trading-admin.card "
but the following error occur
🇽Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 1 Peers. Last error was Error: Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP]
Command failed
hi
i am typing this commnd " composer network start --networkName cards-trading-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file cards-trading-admin.card "
but the following error occur
🇽Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 1 Peers. Last error was Error: Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP]
Command failed
how can i resolve this issue ??
hi
i am typing this commnd " composer network start --networkName cards-trading-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file cards-trading-admin.card "
but the following error occur
🇽Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 1 Peers. Last error was Error: Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP]
Command failed
how can i resolve this issue ??
[ ](https://chat.hyperledger.org/channel/composer?msg=eJX2hqbjm9wWsTqxq) @KindleBitSoln It looks like you have some mismatch between the setup of the Fabric, and the crypto material being used by the Card (connection.json).
Ae you using a custom Fabric? Or following a particular guide/tutorial?
[ ](https://chat.hyperledger.org/channel/composer?msg=SaBCH3eb84WpqcxRb) @abityildiz There are a few Q&A Posts on Stack Overflow about this. The latest one should be able to help you: https://stackoverflow.com/questions/49464591/what-is-the-best-way-of-image-storage-on-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=s5ZzkGARYfweqh56m) @DeepakMP Composer works on top of Fabric and won't solve your Fabric problems.
Composer does provide scripts to create a development Fabric to get you started.
The Composer Tutorials are here: https://hyperledger.github.io/composer/latest/tutorials/tutorials and the install information is here: https://hyperledger.github.io/composer/latest/installing/installing-index
If you want to work directly with Fabric, the tutorials are here: https://hyperledger-fabric.readthedocs.io/en/latest/tutorials.html
@rthatcher I have setup a network using 1.1.0 fabric using ref https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
But i am unable to install our business network
@AsifJaved can you post `docker ps -a` and your composer version (composer -v)
[ ](https://chat.hyperledger.org/channel/composer?msg=fSiYQnHTjpZ39Efk9) @rthatcher and any idea if Composer is being phased out or not? I read it in one of these forums that its features would be natively be integrated in fabric.
@touchingsoil 1. see for more info 2. if you subscribe through websockets, or - as shown in this example (not websockets) -> https://hyperledger-fabric.readthedocs.io/en/release-1.3/gossip.html 3. yes, you need to install the business network package (as Nodejs chaincode) onto the peer using `composer network install` command using a business network card that can talk to that peer (ie its defined in the connection profile)
@touchingsoil 1. see for more info -> https://hyperledger-fabric.readthedocs.io/en/release-1.3/gossip.html 2. if you subscribe through websockets, or - as shown in this example (not websockets) 3. yes, you need to install the business network package (as Nodejs chaincode) onto the peer using `composer network install` command using a business network card that can talk to that peer (ie its defined in the connection profile)
@touchingsoil 1. see for more info -> https://hyperledger-fabric.readthedocs.io/en/release-1.3/gossip.html 2. if you subscribe through websockets, or - as shown in this example (not using websockets) https://stackoverflow.com/questions/44224833/how-listen-for-events-in-hyperledger-fabric-composer 3. yes, you need to install the business network package (as Nodejs chaincode) onto the peer using `composer network install` command using a business network card that can talk to that peer (ie its defined in the connection profile)
[ ](https://chat.hyperledger.org/channel/composer?msg=SmpmmfLacggonkCWA) @mahoney1 when i type this "docker ps -a" command nothing show
composer version = v0.20.2
[ ](https://chat.hyperledger.org/channel/composer?msg=SmpmmfLacggonkCWA) @mahoney1 when i type this "docker ps -a" command nothing show &&
composer version = v0.20.2
@AsifJaved well, I guess you know now why `composer network start` won't instantiate the business network on the channel - no running Fabric. If you've shutdown your VM / machine since your previous (and mandatory) `composer network install` - as per tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - then you might want to understand how `docker-compose` can resume your network (see answer 2 of this S/Overflow https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data)
@AsifJaved well, I guess you know now why `composer network start` won't instantiate the business network on the channel - no running Fabric (which should be v1.2.1). If you've shutdown your VM / machine since your previous (and mandatory) `composer network install` - as per tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial - then you might want to understand how `docker-compose` can resume your network (see answer 2 of this S/Overflow https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data)
@vanclief see this tutorial for an example of dynamic transaction-based ACLs -> https://github.com/mahoney1/test/blob/master/acl_dynamic.md
Clipboard - October 15, 2018 6:01 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=Gwy3eCZjZ7vFz2uy2) @mahoney1 1,does it mean i don't need care about the synchronization duo to a state reconciliation process synchronizes world state across peers on each channel?
2,this example is a little complex, i concern about that the origin fabric message will be emited through the composer websocker?
3,i got this graph, so does `composer network install` command will install the "Composer Runtime (JS)"
in my opinion,this cmd only install the bna file to the fabric peers.In this graph, which parts are installed by `composer network install` command?
the Composer Chaincode(Go),Composer Runtime (JS) and End-UserCode(JS)?
the composer runtime is coresponding to which directory in the source code (composer-runtime ,composer-runtime-hlfv1 or composer-runtime-embedded)
[ ](https://chat.hyperledger.org/channel/composer?msg=Gwy3eCZjZ7vFz2uy2) @mahoney1 1,does it mean i don't need care about the synchronization duo to a state reconciliation process synchronizes world state across peers on each channel?
2,this example is a little complex, i concern about that the origin fabric message will be emited through the composer websocker?
3,i got this graph as above, so does `composer network install` command will install the "Composer Runtime (JS)"
in my opinion,this cmd only install the bna file to the fabric peers.In this graph, which parts are installed by `composer network install` command?
the Composer Chaincode(Go),Composer Runtime (JS) and End-UserCode(JS)?
the composer runtime is coresponding to which directory in the source code (composer-runtime ,composer-runtime-hlfv1 or composer-runtime-embedded)
[ ](https://chat.hyperledger.org/channel/composer?msg=Gwy3eCZjZ7vFz2uy2) @mahoney1 1,does it mean i don't need care about the synchronization duo to a state reconciliation process synchronizes world state across peers on each channel?
2,this example is a little complex, i concern about that the origin fabric message will be emited through the composer websocker?
3,i got this graph as above, so does `composer network install` command will install the "Composer Runtime (JS)"?
in my opinion,this cmd only install the bna file to the fabric peers.
In this graph, which parts are installed by `composer network install` command?
the Composer Chaincode(Go),Composer Runtime (JS) and End-UserCode(JS)?
the composer runtime is coresponding to which directory in the source code (composer-runtime ,composer-runtime-hlfv1 or composer-runtime-embedded)
Hi guys! I am a big fan of composer and I am using it since months now.
Is anyone aware of a way to use multiple ACL files?
I have around 50 rules and now it looks messy
Hi guys! I am a big fan of composer and I am using it since months now.
Is anyone aware of a way to use multiple ACL files?
I have around 50 rules and now it looks messy
I found this pool request https://github.com/hyperledger/composer/issues/3168 , but it seems that nothing has been done yet
@Ambros 3 sorry there is no way to use multiple ACL files no plans to provide that capability
@Ambros 3 sorry there is no way to use multiple ACL files and no plans to provide that capability
[ ](https://chat.hyperledger.org/channel/composer?msg=BY6uPzcvEkYTR7zMp) @Ambros 3 - I assume you have seen this announcement? https://lists.hyperledger.org/g/composer/message/125
Hi has anyone user Amazon cognito for reset server authentication? If yes the can you share the configuration.
Hi has anyone used Amazon cognito for reset server authentication? If yes the can you share the configuration.
@davidkel @rthatcher Thank you. I will try to add comments to clarify everything even though is a single file.
I had seen that announcement, but I did though that "reduced" effort was not that of a big deal. Is it?
[ ](https://chat.hyperledger.org/channel/composer?msg=YAAMnqpJ7yf7aX4rt) @Ambros 3 - good that you have seen the announcement already. For the time being, Composer is still a good and easy tool for creating prototypes, demos or even Pocs, but developers looking for a medium term production solution will need to move away from Composer.
@touchingsoil Hyperledger 1. normally you wouldn't need to Fabric uses gossip between peers as a fault-tolerant and scalable mechanism for keeping all copies of the blockchain ledger in sync. That said, there is a block event that can be registered, to notify you every time a block is processed by a peer. See more [here](https://hyperledger-fabric.readthedocs.io/en/release-1.3/peer_event_services.html). There may well be a synchronization message in the log (you'll have to check). As this is the Composer channel, I can only really give info about Composer events (eg. through Websockets - these tend to be for business networks). 2. any events from Fabric (ie not Composer) have to be 'listened' for via the Fabric SDK client see https://fabric-sdk-node.github.io/tutorial-channel-events.html 3. The diagram you posted is for an older, much earlier edition of Hyperledger Composer (Duktape no longer used) - it uses native NodeJS chaincode and the chaincode package is installed on the peer(s) by `composer network install`
@touchingsoil Hyperledger 1. normally you wouldn't need to - Fabric uses gossip between peers as a fault-tolerant and scalable mechanism for keeping all copies of the blockchain ledger in sync. That said, there is a block event that can be registered, to notify you every time a block is processed by a peer. See more [here](https://hyperledger-fabric.readthedocs.io/en/release-1.3/peer_event_services.html). There may well be a synchronization message in the log (you'll have to check). As this is the Composer channel, I can only really give info about Composer events (eg. through Websockets - these tend to be for business networks). 2. any events from Fabric (ie not Composer) have to be 'listened' for via the Fabric SDK client see https://fabric-sdk-node.github.io/tutorial-channel-events.html 3. The diagram you posted is for an older, much earlier edition of Hyperledger Composer (Duktape no longer used) - it uses native NodeJS chaincode and the chaincode package is installed on the peer(s) by `composer network install`
Hello maybe somebody knows where problem can be ?
docker exec composer-cli composer network ping -c admin@workshop-network
Writing Node.js report to file: node-report.20181015.111333.317.001.txt
Node.js report completed
events.js:183
throw er; // Unhandled 'error' event
^
Error: EACCES: permission denied, open '/home/composer/.composer/logs/trace_20181015.log'
?
@mahoney1 Thank you very much!
@mahoney1 Thank you very much! but for the first question, if there are huge data existed for the old orgs, the new added org may need long time to synchronize the data, so is there a way to mention the composer user it is synchronizing or synchronized?
BusinessNetworkConnection.getParticipantRegistry(namespace + '.Partner').get(id);
'VS'
query to retrieve a participant why are the usecases of both? Slightly confused!!
BusinessNetworkConnection.getParticipantRegistry(namespace + '.Partner').get(id);
'VS'
query to retrieve a participant what are the usecases of both? Slightly confused!!
BusinessNetworkConnection.getParticipantRegistry(namespace + '.Partner').get(id);
'VS'
query to retrieve a participant what are the usecases for both? Slightly confused!!
@rthatcher can we authenticate the composer rest server apis with the credentials stored in local database, if it is possible please let me know the process, In documentation I can only see the authentication using github credentials but I want to configure with local credentials stored in database.
[ ](https://chat.hyperledger.org/channel/composer?msg=y6p3aLT7E5jPeR6eS) @ShaikSharuk the composer rest server will allow authentication to any authentication method that is supported by a 'Passport Strategy' - you can find the passport strategies here: http://www.passportjs.org/packages/
The Composer docs cover an example of Github, and a tutorial for Google OAuth, but there are some Q&As in Stack overflow for other 'strategies'.
[ ](https://chat.hyperledger.org/channel/composer?msg=tukNjoMib6n9S4MqR) @rthatcher can you please suggest the relevant passport strategy for the above requirement
Has joined the channel.
I am facing this issue during installation of bna file
kindle@kindle-V520-15IKL:~/pr-auction$ composer card create -p connection.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k c8b01c95afdf5f22d1764312650fac41958438caf2d015125bac03de2aa97c40_sk -r PeerAdmin -r ChannelAdmin
Error: Unable to read file: /home/kindle/pr-auction/connection.json
Command failed
I am facing this issue during creation of cardkindle@kindle-V520-15IKL:~/pr-auction$ composer card create -p connection.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k c8b01c95afdf5f22d1764312650fac41958438caf2d015125bac03de2aa97c40_sk -r PeerAdmin -r ChannelAdmin
Error: Unable to read file: /home/kindle/pr-auction/connection.json
Command failed
I am facing this issue during creation of card
kindle@kindle-V520-15IKL:~/pr-auction$ composer card create -p connection.json -u PeerAdmin -c Admin@org1.example.com-cert.pem -k c8b01c95afdf5f22d1764312650fac41958438caf2d015125bac03de2aa97c40_sk -r PeerAdmin -r ChannelAdmin
Error: Unable to read file: /home/kindle/pr-auction/connection.json
Command failed
Can anybody tell me how to fix this
?
[ ](https://chat.hyperledger.org/channel/composer?msg=r5YNc7pk6xTBL3rQT) @mmick Both methods will return you an object of type '...Partner', but the Query will return an Array as the Query engine might return more than one result depending on the Query.
The Query might be slower if you are building the Query with 'buildQuery' - but should be faster if you have pre-built the query in your queries.qry file.
If you know the ID (key) I would use the .get - it seems more direct.
[ ](https://chat.hyperledger.org/channel/composer?msg=CBwcEBbHr8ez47rbu) @KindleBitSoln I have not seen that problem, but I would guess that either you don't have permissions on that file, or it is not there.
@rthatcher connection.json is inside createPeerAdminCard.sh. and pr-auction is my business network directory. So how to set to fix it . I am following this https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-single-org
There is no connection.json file separately on pr-auction and fabric directory
@rthatcher : will connection.json file be separate in fabric directory?
@rthatcher if i use this command then face this issue
kindle@kindle-V520-15IKL:~/pr-auction$ composer network install --card PeerAdmin@hlfv1 --archiveFile pr-auction@1.0.8.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network failed to install on 1 or more peers: Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
Command failed
Hi all, how to configure the lifetime of the access token when using passport-jwt? and what is the default one? Thank you in advance
[ ](https://chat.hyperledger.org/channel/composer?msg=pJiSNhGbKMqpJ3nKz) @KindleBitSoln When you follow that Single Org tutorial, *Step Three* tells you to create a connection.json and then gives you the information you need to create it, so if you are following the tutorial you should have that file.
BTW you are looking at a specific v0.19 doc - are you using Composer v0.19 too ?
[ ](https://chat.hyperledger.org/channel/composer?msg=PDqftRGPhSvDQDY8c) @rthatcher yes. i am using composer 0.19
I am repeating my question, please if anyone knows how to do that i would appreciate it, how to configure the lifetime of the access token when using passport-jwt? and what is the default one? Thank you in advance.
[ ](https://chat.hyperledger.org/channel/composer?msg=PDqftRGPhSvDQDY8c) @rthatcher I have put connection.json in createpeeradmincard.sh. Should it be created as separate file?
if we add a new peer to the network, should we re issue all identity to include the new peer location?
Has joined the channel.
I am getting error There is no method to handle GET /Commodity when hitting url: http://localhost:4200/Commodity
Anybody with a solution??
Hello Everyone
I am facing this error when installing bna file
kindle@kindle-V520-15IKL:~/pr-auction$ composer network install -c PeerAdmin@hlfv1.card -a pr-auction@1.0.8.bna
✖ Installing business network. This may take a minute...
Error: Card not found: PeerAdmin@hlfv1.card
Command failed
It showing card is not available But it is there in that directory
Can anybody help me in this?
[ ](https://chat.hyperledger.org/channel/composer?msg=cEny3bG2kasdrTBtg) @KindleBitSoln *Step Six* of the tutorial you are following shows the `composer card import` command
[ ](https://chat.hyperledger.org/channel/composer?msg=u7DSxLeqAJsjeRnhv) @rrishmawi see answer 2 of https://stackoverflow.com/questions/30523238/best-practices-for-server-side-handling-of-jwt-tokens
[ ](https://chat.hyperledger.org/channel/composer?msg=afgx64yuaG7zdZa4a) @rrishmawi generally yes, can be easily automated..
[ ](https://chat.hyperledger.org/channel/composer?msg=t5LanPSQmjQbxGu5n) @Manticore start it with option to connect to REST server or see https://stackoverflow.com/questions/50339832/hyperledger-angular-app-error-message-could-not-find-api-route/50810262#50810262 for options
Has joined the channel.
Can any one explain the different between participants (Composer) and peers (Fabric node I guess)??
@rthatcher i have followed the step 6 already and successfully imported card. i have been stuck in step 7
@mahoney1 In multi-user mode of rest server, the websockets has been enabled to publish event, so do i need some certificate authority to ensure that only the certain client can receive the message? eg, tls ca file, is there any example?
@touchingsoil It's not possible to restrict access to chaincode events.
@touchingsoil It's not possible to restrict access to chaincode events via the api or rest server. The client application (using the composer client-sdk or interacting with the rest server) will need to decide what the do with the event
Has joined the channel.
404 Not Found: Requested route ('composer-playground.mybluemix.net') does not exist.
404 Not Found: Requested route ('composer-playground.mybluemix.net') does not exist.
404 Not Found: Requested route ('composer-playground.mybluemix.net') does not exist.
https://composer-playground.mybluemix.net/
404 Not Found: Requested route ('composer-playground.mybluemix.net') does not exist.
https://composer-playground.mybluemix.net/
@davidkel OK, thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=Ze4tvBtMqiAjHc2Wj) @mahoney1 Thanks for your answers. how do we automate that, if the identity (the BNC) is already in the hand of the users then should we issue new ones and pass them to the users again? is this solved by Service Discovery feature in the 12.0 release (composer 0.2x)? or am i not making sense?
@Sasadara Participants, assets, and transactions are data structure declared by the network definition. You can think of them as a container of data. Peers are physical or virtual machines that participate in the network. You can think of them as machines. User have to sign up to be a participant and then apply for identification before using the blockchain. Data are stored in all peers. A user may own a peer or interact with a peer. Peers are defined in the config of the network structure.
@david-kim-tpe That make sense. Thanks for the clarification. So if I wanted to add new peer do I need to re-config and install everything from the beginning?
Hi Everyone,
Hi Everyone,
These error are coming when i am trying to install bna file
Hi Everyone,
These errors is coming in peers when i try to install bna file
```
2018-10-16 06:55:33.837 UTC [qscc] Init -> INFO 032 Init QSCC
2018-10-16 06:55:33.837 UTC [sccapi] deploySysCC -> INFO 033 system chaincode qscc/composerchannel(github.com/hyperledger/fabric/core/chaincode/qscc) deployed
2018-10-16 08:17:46.684 UTC [cauthdsl] deduplicate -> ERRO 034 Principal deserialization failure (the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")) for identity 0a074f7267314d53501292062d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949434744434341622b674177494241674951464130505549536b6572594861453874716476306f54414b42676771686b6a4f50515144416a427a4d5173770a435159445651514745774a56557a45544d4245474131554543424d4b5132467361575a76636d3570595445574d4251474131554542784d4e5532467549455a790a5957356a61584e6a627a455a4d4263474131554543684d5162334a6e4d53356c654746746347786c4c6d4e76625445634d426f474131554541784d54593245750a62334a6e4d53356c654746746347786c4c6d4e7662544165467730784f4445774d5455784d5451794d6a4e61467730794f4445774d5449784d5451794d6a4e610a4d467378437a414a42674e5642415954416c56544d524d77455159445651514945777044595778705a6d3979626d6c684d5259774641594456515148457731540a59573467526e4a68626d4e7063324e764d523877485159445651514444425a425a473170626b4276636d63784c6d56345957317762475575593239744d466b770a457759484b6f5a497a6a3043415159494b6f5a497a6a30444151634451674145437156476f50776f7438546e34714c6c326d426943634b3257394c746f624f690a3062416e39334a6e2b385a7a543953453477686679746a743275374879652b7272672f75777441785530527865322b395152366369714e4e4d457377446759440a565230504151482f42415144416765414d41774741315564457745422f7751434d4141774b7759445652306a42435177496f416762326b314778696d4c3047560a526853343961327a6430336d484244496b56644769766f38616b4e4e50694977436759494b6f5a497a6a30454177494452774177524149674f72436163476a6c0a386873517876424e643731653364416463354f333552704f4b4a6778695050547977304349446c45724e6978632f4f6a50574539647349744630334c453439460a524462454f4447434c75437a3458326b0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a
2018-10-16 08:17:46.684 UTC [common/deliver] deliverBlocks -> WARN 035 [channel: composerchannel] Client authorization revoked for deliver request from 192.168.5.199:39868: Failed evaluating policy on signed data during check policy on channel [composerchannel] with policy [/Channel/Application/Readers]: [Failed to reach implicit threshold of 1 sub-policies, required 1 remaining]
2018-10-16 08:17:46.736 UTC [common/deliver] Handle -> WARN 036 Error reading from 192.168.5.199:39868: rpc error: code = Canceled desc = context canceled
2018-10-16 08:17:46.757 UTC [protoutils] ValidateProposalMessage -> WARN 037 channel []: MSP error: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")
Before executing this below command every peer log was clear
composer network install -c PeerAdmin@hlfv1 -a pr-auction@1.0.8.bna
[ ](https://chat.hyperledger.org/channel/composer?msg=Pk26GvgmJhHEjvea7) @Sasadara You don't _need_ to re-build - if you imagine a live production Fabric network with a live business application, you would expect to grow your network to include extra Peers for existing Organisations, and extra Organisations with new Peers. But if you are just investigating and prototyping, it might be easier to rebuild the Fabric and start again :-)
@KindleBitSoln - that error looks like Crypto material you are using for the Card is not recognised by the Peer.
If you are using a custom network you need to create the 'peer admin' with crypto material from the same crypto-config folder tree that the Fabric is using.
[ ](https://chat.hyperledger.org/channel/composer?msg=Pk26GvgmJhHEjvea7) @Sasadara @Saradra The answer is "no", you don't have to install everything from the beginning. The network definition is intact, so that only the config files need to be updated. There're commands you can use to publish that change. Reference to:
https://medium.com/@wahabjawed/extending-hyperledger-fabric-network-adding-a-new-peer-4f52f70a7217
[ ](https://chat.hyperledger.org/channel/composer?msg=Pk26GvgmJhHEjvea7) @Sasadara The answer is "no", you don't have to install everything from the beginning. The network definition is intact, so that only the config files need to be updated. There're commands you can use to publish that change. Reference to:
https://medium.com/@wahabjawed/extending-hyperledger-fabric-network-adding-a-new-peer-4f52f70a7217
[ ](https://chat.hyperledger.org/channel/composer?msg=Pk26GvgmJhHEjvea7) @Sasadara The answer is "no", you don't have to install everything from the beginning. The network definition is intact, so that only the config files need to be updated. There're commands you can use to publish the changes. Reference to:
https://medium.com/@wahabjawed/extending-hyperledger-fabric-network-adding-a-new-peer-4f52f70a7217
@rthatcher I have generated certificates and used CA and priviate key with this command
composer card create -p connection.json -u PeerAdmin -r PeerAdmin -r ChannelAdmin --file PeerAdmin@hlfv1.card -c ../network-peers3/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k ../network-peers3/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/a3be4b6bc7053bec6b756de0684e91a1511002b6ccc23b0f44d0a75b4417cd4e_sk
But when try to install bna it shows me those error. I didn't get what is not recognised by the peers
@rthatcher Can you plz guide me for this properly?
[ ](https://chat.hyperledger.org/channel/composer?msg=gAqLD4mKnWSLz23Qk) @KindleBitSoln OK - so you have built the Card based on _network-peers3_ crypto material, so you should now look at the `.yaml` files for you docker containers and make sure that *all* the environment variables AND the volume mounts all refer to the _network-peers3_ material. (note that you may have 'nested' or 'included' yaml files that you need to edit too.)
If this doesn't help you might want to go back to your crypto-config.yaml and configtx.yaml files and check for errors/inconsistencies.
@david-kim-tpe Thank you. I will follow up the link and try it. Thanks again
@rthatcher I am getting this for only 1 peer now
I have restarted my fabric on both machine
And found 2nd peer on same machine is getting this error in its log
```
2018-10-16 13:00:33.524 UTC [common/deliver] Handle -> DEBU 3a6 Attempting to read seek info message from 172.30.0.1:36344
2018-10-16 13:00:33.524 UTC [cauthdsl] deduplicate -> ERRO 3a7 Principal deserialization failure (the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")) for identity 0a074f7267314d53501296062d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d494943476a4343416343674177494241674952414e754f6e564e2b79642f4247796f5837696f456b6c5177436759494b6f5a497a6a304541774977637a454c0a4d416b474131554542684d4356564d78457a415242674e5642416754436b4e6862476c6d62334a7561574578466a415542674e564241635444564e68626942470a636d467559326c7a593238784754415842674e5642416f54454739795a7a45755a586868625842735a53356a623230784844416142674e5642414d5445324e680a4c6d39795a7a45755a586868625842735a53356a623230774868634e4d5463774e6a49324d5449304f5449325768634e4d6a63774e6a49304d5449304f5449320a576a42624d517377435159445651514745774a56557a45544d4245474131554543424d4b5132467361575a76636d3570595445574d4251474131554542784d4e0a5532467549455a795957356a61584e6a627a45664d4230474131554541777757515752746157354162334a6e4d53356c654746746347786c4c6d4e766254425a0a4d424d4742797147534d34394167454743437147534d34394177454841304941424775384b78425131476b7853544d566f4c76374e5869594b576a35743644680a5752544a42486e4c6b5756376c52556659614b414b466164536969354d375a375a707744384e533749734d645052365a3445794767774b6a5454424c4d4134470a41315564447745422f775145417749486744414d42674e5648524d4241663845416a41414d437347413155644977516b4d434b4149426d725a617537424942390a72524c6b774b6d71706d53656349614f4f72304346364d69324a3548346161754d416f4743437147534d343942414d43413067414d45554349514334734b51360a43456771625459653438617a393557392f686e5a2b3744493565536e57557756397643642f67496753354b366f6d4e4a79646f466f4570614549774d393775530a58564d4850613069794334393776644e5552413d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a
2018-10-16 13:00:33.524 UTC [common/deliver] deliverBlocks -> WARN 3a8 [channel: composerchannel] Client authorization revoked for deliver request from 172.30.0.1:36344: Failed evaluating policy on signed data during check policy on channel [composerchannel] with policy [/Channel/Application/Readers]: [Failed to reach implicit threshold of 1 sub-policies, required 1 remaining]
2018-10-16 13:00:33.524 UTC [common/deliver] Handle -> DEBU 3a9 Waiting for new SeekInfo from 172.30.0.1:36344
2018-10-16 13:00:33.524 UTC [common/deliver] Handle -> DEBU 3aa Attempting to read seek info message from 172.30.0.1:36344
2018-10-16 13:00:33.526 UTC [common/deliver] Handle -> WARN 3ab Error reading from 172.30.0.1:36344: rpc error: code = Canceled desc = context canceled
2018-10-16 13:00:33.526 UTC [common/deliverevents] func1 -> DEBU 3ac Closing Deliver stream
2018-10-16 13:00:33.610 UTC [endorser] ProcessProposal -> DEBU 3ad Entering: Got request from 172.30.0.1:36348
2018-10-16 13:00:33.610 UTC [protoutils] ValidateProposalMessage -> DEBU 3ae ValidateProposalMessage starts for signed proposal 0xc421aa40f0
2018-10-16 13:00:33.610 UTC [protoutils] validateChannelHeader -> DEBU 3af validateChannelHeader info: header type 3
2018-10-16 13:00:33.610 UTC [protoutils] checkSignatureFromCreator -> DEBU 3b0 begin
2018-10-16 13:00:33.610 UTC [protoutils] ValidateProposalMessage -> WARN 3b1 channel []: MSP error: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")
2018-10-16 13:00:33.611 UTC [endorser] ProcessProposal -> DEBU 3b2 Exit: request from%!(EXTRA string=172.30.0.1:36348)
```
Hi experts, How do you get the Composer Rest Server to use a user specific card for each user. Right now if I authenticate with User1 and import their card, and then later authenticate with User2 and import their card, User1’s card is still in the wallet and being used as the default.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZsQ3zTBm6cfWRPRyw) @rrishmawi In multiuser mode the intent is that each Person authenticates with the authentication scheme (JWT, ldap, google etc) and imports the Card issued to them. When a 2nd Person comes along they should authenticate separately, then they will have an empty Wallet and can import their card. When I'm testing I use 2 different browsers (firefox and chrome) and authenticate with different users so that I have separate wallets.
[ ](https://chat.hyperledger.org/channel/composer?msg=nCQ43snvN6SGYYDwn) @rthatcher THank you, this is actually what i did. we are using JWT authentication. but when i authenticate with User1 and import his card, i can see his card in mongodb as default and correlated correctly to the jwt identity. and when i authenticate with different User2 using deferent JWT, and wiouthout importing any new card (using different browser) i can see that in monogdb the identiy been updated to the new user and uses the same card of the User1!!!!!
@rrishmawi - OK thanks for the extra details. I have not used JWT, but it worked as expected with Google when I tested a little while ago. (i.e. separate private wallets)
@rrishmawi - OK thanks for the extra details. I have not used JWT, but it worked as expected with Google when I tested a little while ago. (i.e. separate private wallets) - I will test again later this week.
[ ](https://chat.hyperledger.org/channel/composer?msg=muzaFbHTZP3sCHtNT) @rthatcher THank you, i used the following tutorial https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn, with composer version 0.19.6
Has joined the channel.
In my .acl file, I need to check an array so see if _any_ of the elements meet a condition. Is this possible? Right now I have: (r.thisDenies[0].owner.getIdentifier() === p.getIdentifier()) for the condition, where thisDenies is an array of assets. It's hard coded to check the first element, but ideally this would be able to check the condition to be true against any of the assets. Is this possible, or not without loops?
[ ](https://chat.hyperledger.org/channel/composer?msg=GBrXRobY2SEJp5DkT) @ColeBoudreau I haven't tried this but I think you can specify a function in the condition so you could write your own function to make this check and have it return a boolean
Hello everyone! I have tried to use passport-local with the composer-rest-server to provide a username and password strategy to my angular application. I followed the OAuth tutorial in the Hyperledger documentation page, but I replaced the google authentication strategy by the passport-local. The Docker container with the MongoDB is working fine, but I get a 404 error when trying to acess the http://localhost:3000/auth/local. It is seems like the page doesn't exists. Anyone know where this error is coming from? How can I fix it?
[ ](https://chat.hyperledger.org/channel/composer?msg=GBrXRobY2SEJp5DkT) @ColeBoudreau @silliman is correct, there is a way to call a function to do complex logic for an ACL - there is an example here on Stack Overflow: https://stackoverflow.com/questions/52584222/datetime-check-in-permissions-hyperledger-fabric/52608137#52608137
[ ](https://chat.hyperledger.org/channel/composer?msg=GBrXRobY2SEJp5DkT) @ColeBoudreau @silliman is correct, there is a way to call a function to do complex logic for an ACL - there is an example here on Stack Overflow: https://stackoverflow.com/questions/52584222/datetime-check-in-permissions-hyperledger-fabric/52608137#52608137
BUT I think there is also an example to do just what you want without a function: https://stackoverflow.com/questions/52170395/hyperledger-composer-acl-rules-with-condition-of-type-r-somearray-indexofp-ge
@silliman @rthatcher I didn't know this, just implemented it and it works great, thanks so much!
Has anyone successfully run the yo generated angular app with the multi-user, OAuth enabled REST Server? How would this function? How does the Angular app handle the required authentication token that needs to be sent in the payload header?
@annumberhocker The Yo generator can only work with a simple models and a rest server that isn't multi-user or authentication enabled. You will need to modify the generated application to work for anything more complicated
Has joined the channel.
Hi Everyone
These errors is coming in peers when i try to install bna file
```
2018-10-16 06:55:33.837 UTC [qscc] Init -> INFO 032 Init QSCC
2018-10-16 06:55:33.837 UTC [sccapi] deploySysCC -> INFO 033 system chaincode qscc/composerchannel(github.com/hyperledger/fabric/core/chaincode/qscc) deployed
2018-10-16 08:17:46.684 UTC [cauthdsl] deduplicate -> ERRO 034 Principal deserialization failure (the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")) for identity 0a074f7267314d53501292062d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949434744434341622b674177494241674951464130505549536b6572594861453874716476306f54414b42676771686b6a4f50515144416a427a4d5173770a435159445651514745774a56557a45544d4245474131554543424d4b5132467361575a76636d3570595445574d4251474131554542784d4e5532467549455a790a5957356a61584e6a627a455a4d4263474131554543684d5162334a6e4d53356c654746746347786c4c6d4e76625445634d426f474131554541784d54593245750a62334a6e4d53356c654746746347786c4c6d4e7662544165467730784f4445774d5455784d5451794d6a4e61467730794f4445774d5449784d5451794d6a4e610a4d467378437a414a42674e5642415954416c56544d524d77455159445651514945777044595778705a6d3979626d6c684d5259774641594456515148457731540a59573467526e4a68626d4e7063324e764d523877485159445651514444425a425a473170626b4276636d63784c6d56345957317762475575593239744d466b770a457759484b6f5a497a6a3043415159494b6f5a497a6a30444151634451674145437156476f50776f7438546e34714c6c326d426943634b3257394c746f624f690a3062416e39334a6e2b385a7a543953453477686679746a743275374879652b7272672f75777441785530527865322b395152366369714e4e4d457377446759440a565230504151482f42415144416765414d41774741315564457745422f7751434d4141774b7759445652306a42435177496f416762326b314778696d4c3047560a526853343961327a6430336d484244496b56644769766f38616b4e4e50694977436759494b6f5a497a6a30454177494452774177524149674f72436163476a6c0a386873517876424e643731653364416463354f333552704f4b4a6778695050547977304349446c45724e6978632f4f6a50574539647349744630334c453439460a524462454f4447434c75437a3458326b0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a
2018-10-16 08:17:46.684 UTC [common/deliver] deliverBlocks -> WARN 035 [channel: composerchannel] Client authorization revoked for deliver request from 192.168.5.199:39868: Failed evaluating policy on signed data during check policy on channel [composerchannel] with policy [/Channel/Application/Readers]: [Failed to reach implicit threshold of 1 sub-policies, required 1 remaining]
2018-10-16 08:17:46.736 UTC [common/deliver] Handle -> WARN 036 Error reading from 192.168.5.199:39868: rpc error: code = Canceled desc = context canceled
2018-10-16 08:17:46.757 UTC [protoutils] ValidateProposalMessage -> WARN 037 channel []: MSP error: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")
```
I hit this cmd
kindle@kindle-V520-15IKL:~/pr-auction$ composer network install -c PeerAdmin@hlfv1 -a pr-auction@1.0.8.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: access denied: channel [] creator org [Org1MSP]
Command failed
After hitting i am watching above error in one of peer
Can anybody help me in this
I am getting the below error when trying to expose the REST server from IBM cloud
---------> ERR Error: Error trying to ping. Error: Composer runtime (0.20.2) is not compatible with client (0.19.5)
Versions used
I am getting the below error when trying to expose the REST server from IBM cloud
---------> ERR Error: Error trying to ping. Error: Composer runtime (0.20.2) is not compatible with client (0.19.5)
Versions used
-----------------
composer-cli : v0.20.2
composer-rest-server: v0.20.2
generator-hyperledger-composer : v0.20.2
I am getting the below error when trying to expose the REST server from IBM cloud
---------> ERR Error: Error trying to ping. Error: Composer runtime (0.20.2) is not compatible with client (0.19.5)
Versions used
-----------------
composer-cli : v0.20.2
composer-rest-server: v0.20.2
generator-hyperledger-composer : v0.20.2
Any help is much appreciated. Also which one is the client and which one is Composer runtime?
@anaswar Composer runtime is the runtime being used by the business network, client is referring to the version of the rest server you are using
@davidkel I am using rest-server v0.20.2 , but why does the error state "not compatible with client (0.19.5)"
@anaswar You won't be using rest-server v0.20.2, you must be using rest server 0.19.5 if that is the message the rest server outputs to the console
~$ npm list -g --depth=0
gives the output as,
/home/ubuntu/.nvm/versions/node/v8.11.3/lib
├── @ampretia/composer-wallet-cloudant@0.2.1
├── composer-cli@0.20.2
├── composer-rest-server@0.20.2
├── generator-hyperledger-composer@0.20.2
└── npm@5.6.0
@anaswar how are you running the rest server ?
using the cf push command on IBM cloud
$ cf push car-auction --docker-image ibmblockchain/composer-rest-server
-c "composer-rest-server -c admin@carauction-network -n never -w true"
-i 1 -m 256M --no-start --no-manifest
it is based on this tutorial https://developer.ibm.com/tutorials/cl-deploy-blockchain-starter-plan-network
@anaswar So in this case you are not running the npm module `composer-rest-server` you are pushing a docker image stored on dockerhub called `ibmblockchain/composer-rest-server`. And that is at version 0.19.5
i think i find what's causing the problem... the output of the above command shows
----> docker image: ibmblockchain/composer-rest-server:0.19.5
i think rest server version is 0.19.5 on the cloud
You need to change `ibmblockchain/composer-rest-server` to `hyperledger/composer-rest-server:0.20.2` (as 0.20.2 is the latest version for fabric 1.2 and that version satisfies the client side requirement that the client version >= runtime version)
hi , if i want to employ this tutorial (https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org) but on different (separate machines) what changes should i do it achieve this ?
[ ](https://chat.hyperledger.org/channel/composer?msg=jrWDdjJJCb5DQHmML) @davidkel I changed to `hyperledger/composer-rest-server:0.20.2` in the command but still the output gives `docker image: ibmblockchain/composer-rest-server:0.19.5`
@anaswar maybe you need to remove the application on the cloud and start again from scratch ?
[ ](https://chat.hyperledger.org/channel/composer?msg=3a5gYQoobAnukdmT8) @davidkel @davidkel i will give it a try :) thank you!
[ ](https://chat.hyperledger.org/channel/composer?msg=3a5gYQoobAnukdmT8) @davidkel i will give it a try :) thank you!
[ ](https://chat.hyperledger.org/channel/composer?msg=fkhAiJvY6zYNZvDYk) @GyoonKi There is no particular guide for working on separate machines. A couple of pointers though ...
- it is all about the networking - addressing and routing - making sure that both the host machines can address containers on both machines, and also that Containers on one machine can see containers on the other.
- community members have used both kubernetes and docker swarm to manage the networking aspects.
- ensure that the Fabric is up and running correctly and that you can install and invoke sample chaincode like Marbles before trying Composer on top of Fabric
- some community members have found these blogs useful:
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f
BTW I noticed the URL you are using is for a v0.19 version of the tutorial - there are differences in the tutorial for v0.20 (the latest version)
[ ](https://chat.hyperledger.org/channel/composer?msg=KbsAY9a3CJqfTSbxj) @KindlebitPhp I still think that you have a mismatch between the crypto material that you have started the Fabric with, and the crypto material you have used to create the card.
Hi @davidkel, using any of the composer network commands, is it possible to get details of the network, like network peer url, network id, or any other details to confirm it is the right network(out of the many networks you may be connecting to like dev, test, uat, prod)? I know this information is there in the connection profile for the card, but still a way to double check this through any of the "composer network" commands will be of great help if available.
[ ](https://chat.hyperledger.org/channel/composer?msg=YLGk9MMESoBHeuwwL) @gauravgiri Composer CLI commands do not have this functionality, the details of a blockchain network that your business network/smart contract is running on, is in the connection profile - so to get the info you need (per above), from a participant card, wherever that's stored - you would need to script
[ ](https://chat.hyperledger.org/channel/composer?msg=YLGk9MMESoBHeuwwL) @gauravgiri Composer CLI commands do not have this functionality, the details of a blockchain network that your business network/smart contract is running on, is in the connection profile - so to get the info you need (per above), from a participant card, wherever that's stored - you would need to script. That said, it also depends on whether you're using a cloud provider etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=YLGk9MMESoBHeuwwL) @gauravgiri Composer CLI commands do not have this functionality, the details of a blockchain network that your business network/smart contract is running on, is in the connection profile - so to get the info you need (per above), from a participant card, wherever that's stored - you would need to script. That said, it also depends on whether you're using a cloud provider etc., they may have their own UI/Dashboard/Tooling
@rthatcher I have checked logs of my 2nd peer which is running on different machine and found error
2018-10-17 09:36:39.283 UTC [sccapi] deploySysCC -> INFO 038 system chaincode qscc/composerchannel(github.com/hyperledger/fabric/core/chaincode/qscc) deployed
2018-10-17 09:36:48.283 UTC [ConnProducer] NewConnection -> ERRO 039 Failed connecting to orderer.example.com:7050 , error: context deadline exceeded
2018-10-17 09:36:48.284 UTC [deliveryClient] connect -> ERRO 03a Failed obtaining connection: Could not connect to any of the endpoints: [orderer.example.com:7050]
2018-10-17 09:36:48.284 UTC [deliveryClient] try -> WARN 03b Got error: Could not connect to any of the endpoints: [orderer.example.com:7050] , at 1 attempt. Retrying in 1s
2018-10-17 09:36:52.285 UTC [ConnProducer] NewConnection -> ERRO 03c Failed connecting to orderer.example.com:7050 , error: context deadline exceeded
2018-10-17 09:36:52.285 UTC [deliveryClient] connect -> ERRO 03d Failed obtaining connection: Could not connect to any of the endpoints: [orderer.example.com:7050]
2018-10-17 09:36:52.286 UTC [deliveryClient] try -> WARN 03e Got error: Could not connect to any of the endpoints: [orderer.example.com:7050] , at 2 attempt. Retrying in 2s
2018-10-17 09:36:57.287 UTC [ConnProducer] NewConnection -> ERRO 03f Failed connecting to orderer.example.com:7050 , error: context deadline exceeded
2018-10-17 09:36:57.287 UTC [deliveryClient] connect -> ERRO 040 Failed obtaining connection: Could not connect to any of the endpoints: [orderer.example.com:7050]
2018-10-17 09:36:57.288 UTC [deliveryClient] try -> WARN 041 Got error: Could not connect to any of the endpoints: [orderer.example.com:7050] , at 3 attempt. Retrying in 4s
2018-10-17 09:37:04.289 UTC [ConnProducer] NewConnection -> ERRO 042 Failed connecting to orderer.example.com:7050 , error: context deadline exceeded
2018-10-17 09:37:04.289 UTC [deliveryClient] connect -> ERRO 043 Failed obtaining connection: Could not connect to any of the endpoints: [orderer.example.com:7050]
2018-10-17 09:37:04.289 UTC [deliveryClient] try -> WARN 044 Got error: Could not connect to any of the endpoints: [orderer.example.com:7050] , at 4 attempt. Retrying in 8s
2018-10-17 09:37:15.291 UTC [ConnProducer] NewConnection -> ERRO 045 Failed connecting to orderer.example.com:7050 , error: context deadline exceeded
2018-10-17 09:37:15.291 UTC [deliveryClient] connect -> ERRO 046 Failed obtaining connection: Could not connect to any of the endpoints: [orderer.example.com:7050]
2018-10-17 09:37:15.291 UTC [deliveryClient] try -> WARN 047 Got error: Could not connect to any of the endpoints: [orderer.example.com:7050] , at 5 attempt. Retrying in 16s
2018-10-17 09:37:34.292 UTC [ConnProducer] NewConnection -> ERRO 048 Failed connecting to orderer.example.com:7050 , error: context deadline exceeded
2018-10-17 09:37:34.292 UTC [deliveryClient] connect -> ERRO 049 Failed obtaining connection: Could not connect to any of the endpoints: [orderer.example.com:7050]
2018-10-17 09:37:34.293 UTC [deliveryClient] try -> WARN 04a Got error: Could not connect to any of the endpoints: [orderer.example.com:7050] , at 6 attempt. Retrying in 32s
2018-10-17 09:38:09.294 UTC [ConnProducer] NewConnection -> ERRO 04b Failed connecting to orderer.example.com:7050 , error: context deadline exceeded
2018-10-17 09:38:09.294 UTC [deliveryClient] connect -> ERRO 04c Failed obtaining connection: Could not connect to any of the endpoints: [orderer.example.com:7050]
2018-10-17 09:38:09.294 UTC [deliveryClient] try -> WARN 04d Got error: Could not connect to any of the endpoints: [orderer.example.com:7050] , at 7 attempt. Retrying in 1m4s
2018-10-17 09:39:16.296 UTC [ConnProducer] NewConnection -> ERRO 04e Failed connecting to orderer.example.com:7050 , error: context deadline exceeded
2018-10-17 09:39:16.296 UTC [deliveryClient] connect -> ERRO 04f Failed obtaining connection: Could not connect to any of the endpoints: [orderer.example.com:7050]
2018-10-17 09:39:16.297 UTC [deliveryClient] try -> WARN 050 Got error: Could not connect to any of the endpoints: [orderer.example.com:7050] , at 8 attempt. Retrying in 2m8s
Can you tell what error is related to orderer system which running on different machine?
Should i give IP of that machine as order host in configtx.ymal file?
Has joined the channel.
@KindlebitPhp - I would suggest that you try working with a standard Fabric sample chaincode and 'prove' your Fabric before introducing Composer into the mix. This looks like a Fabric problem - so I would suggest asking in the #fabric channel for advice.
Hi, Im trying to add an organisation to a channel by following https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org and https://hyperledger-fabric.readthedocs.io/en/latest/channel_update_tutorial.html. I manage to join org3 to the channel as the fabric tutorial but now I'm trying to create admin cards for org3 to access the network. I have created a bfyn-network-org3.json, update it according to include org3. (no idea on the ca though so im using ca2 for the time being). updated the endorsement policy to include org3. I manage to create and import a PeerAdmin card though but when i ran composer network install -c..... it responded with Error: Error trying install business network. Error: No valid responses from any peers.
I then proceeded to follow https://github.com/hyperledger/composer/issues/3858#issuecomment-409898978. and try to ping the network using my newly created card but it returns me with Error: Error trying to ping. Error: Failed to connect before the deadline instead.
And so im wondering if im missing anything which is causing my peer to not repond? thank you
Hi again! When deploying chaincode to a fabric network through composer runtime install can I define which chaincode goes to which nodes? Thanks!
@edoardo_bdf chaincode is installed to all peers in the same mspid (organisation) as the requester doing the install. In theory you should be able to restrict that further by explicitly defining which peers in your organisation are endorsing peers in the common connection profile that is part of your fabric network card you use to install but it looks like the fabric-node-sdk doesn't check that as part of the install process
@davidkel So lets say I have to separate chaincode between to orgs that have to do different operations, I have to have different bnas for each one and install from a requester within that org?
@edoardo_bdf A business network is channel wide, whichever peers you plan to be endorsing peers on that channel have to have that business network installed. As an administrator in a specific organisation only you should be allowed to administer your peers thus only you have the authority to install onto them.
Administrators from other orgs will need to do the same thing
[ ](https://chat.hyperledger.org/channel/composer?msg=4ErHjnyFiA7K64jsG) @CheeChyuan check out this tutorial https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82 it adds a 3rd org too (including its own CA), and has the steps to interact with the existing business network, as a participant of the 3rd org. It may help you.
[ ](https://chat.hyperledger.org/channel/composer?msg=6ySFfkGxNrHroSTna) @mahoney1 @mahoney1 thank you. i will give it a shot
Hi experts, i would like to ask if it is possible to make an integer identifier in the business model to increment automatically. what is the best practice in this regards?
[ ](https://chat.hyperledger.org/channel/composer?msg=3a5gYQoobAnukdmT8) @davidkel @davidkel I restarted from scratch and now getting a different error..
ERR Error: Cannot initialize connector undefined: Unable to load requested module @ampretia/composer-wallet-cloudant
[ ](https://chat.hyperledger.org/channel/composer?msg=3a5gYQoobAnukdmT8) @davidke I restarted from scratch and now getting a different error..
ERR Error: Cannot initialize connector undefined: Unable to load requested module @ampretia/composer-wallet-cloudant
[ ](https://chat.hyperledger.org/channel/composer?msg=3a5gYQoobAnukdmT8) @davidkel I restarted from scratch and now getting a different error..
ERR Error: Cannot initialize connector undefined: Unable to load requested module @ampretia/composer-wallet-cloudant
[ ](https://chat.hyperledger.org/channel/composer?msg=3a5gYQoobAnukdmT8) @davidkel I restarted from scratch and now getting a different error..
ERR Error: Cannot initialize connector undefined: Unable to load requested module @ampretia/composer-wallet-cloudant
[ ](https://chat.hyperledger.org/channel/composer?msg=3a5gYQoobAnukdmT8) @davidkel I restarted from scratch and now getting a different error..
ERR Error: Cannot initialize connector undefined: Unable to load requested module @ampretia/composer-wallet-cloudant
[ ](https://chat.hyperledger.org/channel/composer?msg=3a5gYQoobAnukdmT8) @davidkel I restarted from scratch and now getting a different error..
ERR Error: Cannot initialize connector undefined: Unable to load requested module @ampretia/composer-wallet-cloudant
.
@anaswar for the hyperledger images you need to use NODE_CONFIG being set to
```
{
"composer": {
"wallet": {
"type": "composer-wallet-cloudant",
"options": {
"database": "composer-wallets",
}
}
}
}
```
ie the type needs to be changed
@anaswar for the hyperledger images you need to start with a NODE_CONFIG of
```
{
"composer": {
"wallet": {
"type": "composer-wallet-cloudant",
"options": {
"database": "composer-wallets",
}
}
}
}
```
ie the type needs to be changed
I heard some rumors today from an IBM employee that Composer development would be stopped and eventually deprecated. This is not what I have heard at all from other sources, and to me Composer is a community that is not only very active but also thriving. So this statement really worries me. Does anyone have insights on this?
[ ](https://chat.hyperledger.org/channel/composer?msg=s4Jsm7vdhYaS3FJo4) @vanclief Your IBM Contact will probably be referring to this: https://lists.hyperledger.org/g/composer/message/125
So the 'rumor' is broadly correct - BUT:
For the time being Composer is a good tool for a fast Prototype or Demo, or even possibly a PoC - but looking at a medium term production rollout Composer is not advisable.
@rthatcher thanks for the clarification, sad to hear but understandable. It is a cause of concern since we are rolling out next month a product that relies heavily on composer. What would be the implications of a Composer production roll-out?
I am guessing we would be stuck at the current Hyperledger Composer and Hyperledger Fabric versions with no possibility of upgrade.
Which is not ideal, but we could live with that while we transition to Fabric. Is there anything else we should take into consideration?
[ ](https://chat.hyperledger.org/channel/composer?msg=92ut9iYHoGtdY688u) @vanclief There is some ongoing support and fixes for Composer but it won't continue for ever. If you have a Fabric hosted by a cloud provider then I would think you are in better shape for contracted support and migration advice. I haven't seen any published migration advice yet.
Ok, so it is not that Composer is unstable but that it will no longer be maintained in the future and its role will be exclusively for Prototyping and PoCs.
@vanclief @rthatcher regarding the topic being disucssed, I am new so excuse me if the question is not valid.. Is it possible to migrate the contracts and data we have designed in composer to fabric
@Renick I believe it is not possible to migrate existing data, unless you use the Fabric SDK to query your composer network and create the assets. For your contracts (known as chaincode in fabric) to you would need to rewrite your BNA for Fabric https://hyperledger-fabric.readthedocs.io/en/release-1.2/chaincode4ade.html
@Renick I believe it is not possible to migrate existing data, unless you use the Fabric SDK to query your composer network and create the assets. For your contracts (known as chaincode in fabric you would need to rewrite your BNA for Fabric https://hyperledger-fabric.readthedocs.io/en/release-1.2/chaincode4ade.html
@Renick I believe it is not possible to migrate existing data, unless you use the Fabric SDK to query your composer network and create the assets. For your contracts (known as chaincode in fabric) you would need to rewrite your BNA for Fabric https://hyperledger-fabric.readthedocs.io/en/release-1.2/chaincode4ade.html
Thanks @vanclief seems a bit of work... :)
Hi all, I'm trying to setup ACL rules so that participant executing transaction can have update permissions on other participant involved in transaction for the time of the transaction. There is "transaction" condition mentioned in the documentation but it doesn't work in my case at least not in cucumber tests. Is there any working example using this kind of acl rule?
Hi, I have successfully installed the v1.3 fabric-samples network (per standard instructions), and subsequently installed and successfully tested the "fabcar" application. What I want to do - where to install Composer into this environment ( ~/fabric-samples/ ...?) and to connect / configure / extend the existing crypto materials - (not override with the composer tutorial configs) and deploy bna's onto it. I am missing the configuration from documentation and examples on how to do this. Help / direction appreciated.
Hi Everyone, I am trying to create business network card. I have given absolute path of card but it still showing error
```
safeuser@localhost:~/pr-auction$ composer card create -p connection.json -u PeerAdmin -r PeerAdmin -r ChannelAdmin --file PeerAdmin@hlfv1.card -c /home/safeuser/network-peers3/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k /home/safeuser/network-peers3/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/dd2e7e1952be5f9d6458439307df998858163595fa1da403eb95589eb0cd5337_sk
Error: Unable to read file: /home/safeuser/network-peers3/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/dd2e7e1952be5f9d6458439307df998858163595fa1da403eb95589eb0cd5337_sk
Command failed
```
Please let me know what wrong with path
Can anybody help me in this?
[ ](https://chat.hyperledger.org/channel/composer?msg=FTyu4kR3QXh5xRxjC) @jtwalker2000 Composer does not currently support Fabric 1.3, it supports Fabric 1.2.1 - so you would need to remove and recreate your Fabcar environment under Fabric 1.2.1.
Assuming you do that, then you you need to create a `connection.json` file describing your Fabric, and the create a Business Network Card for composer to be able to deploy BNAs.
The Single Org Tutorial in the Composer Docs does a good job of explaining these steps, and you should be able to roughly follow it adjusting for filenames/file paths and Ignoring Step One. https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
The next logical step after that is to at least understand the contents of the multi-org tutorial even if you don't actually follow it: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Finally there are quite a few blogs and articles on the Web about extending a Fabric, and there is one that also covers the Composer aspects - https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82
The trick with all these tutorials is to understand and test the Fabric first before adding the Composer layer on top.
[ ](https://chat.hyperledger.org/channel/composer?msg=FTyu4kR3QXh5xRxjC) @jtwalker2000 Composer does not currently support Fabric 1.3, it supports Fabric 1.2.1 - so you would need to remove and recreate your Fabcar environment under Fabric 1.2.1.
Assuming you do that, then you need to create a `connection.json` file describing your Fabric, and the create a Business Network Card for composer to be able to deploy BNAs.
The Single Org Tutorial in the Composer Docs does a good job of explaining these steps, and you should be able to roughly follow it adjusting for filenames/file paths and Ignoring Step One. https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
The next logical step after that is to at least understand the contents of the multi-org tutorial even if you don't actually follow it: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Finally there are quite a few blogs and articles on the Web about extending a Fabric, and there is one that also covers the Composer aspects - https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82
The trick with all these tutorials is to understand and test the Fabric first before adding the Composer layer on top.
[ ](https://chat.hyperledger.org/channel/composer?msg=mbieAaxuZthBXACFw) @KindlebitPhp I would suggest you try the command `ls -l` and step down through the folder structure to make sure that the file exists and that you have access to it. But this is more of a Linux question than a Composer question :-)
@rthatcher : I have checked everything . Now it showing me
```
safeuser@localhost:~/pr-auction$ composer card create -p connection.json -u PeerAdmin -r PeerAdmin -r ChannelAdmin --file PeerAdmin@hlfv1.card -c /home/safeuser/network-peers3/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k /home/safeuser/network-peers3/composer/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/dd2e7e1952be5f9d6458439307df998858163595fa1da403eb95589eb0cd5337_sk
Error: Unable to read file: /home/safeuser/pr-auction/connection.json
Command failed
```
Everything is good from end . I have checked every path of key many time
Don't know where is the issue
[ ](https://chat.hyperledger.org/channel/composer?msg=gs59XHfwzm33AiiPX) Hi @rthatcher, can you look into this issue please.
[ ](https://chat.hyperledger.org/channel/composer?msg=g7BsqKoA7DNLEGaP9) @dparadiz there is a tutorial example of that shown here -> https://github.com/mahoney1/test/blob/master/acl_dynamic.md (rule 3 onwards).
Hi all, I have tried Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations) -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org . But to split the organisations across separate physical machines it is outside the scope of that particular tutorial. *Can someone help me out - to deploy hyperledger fabric with composer on multiple physical machines?*
[ ](https://chat.hyperledger.org/channel/composer?msg=2Ggj2etfWdietXMPm) @sushmitha There is a blog that some members of the community have found useful - it uses 2 computers, but only a single org (and be aware that it uses an older version of Fabric and Composer):
https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
and I think this second blog has multiorg, but is for Fabric only, not Composer.
https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f
The trick to making this work is to think about the networking. You need to remember that both the client computers need to be able to resolve and address the peers on both the host computers, and also that the Containers need to be able to resolve and address each other.
I would suggest proving the Fabric with a simple chaincode before introducing the Composer layer.
Hello again. Im trying to fetch the channel config but without using cli. I heard from somewhere that cli is not for production. How do I fetch the channel config? and why is cli not for production? tq
i also realize many commands rely on cli. how may we achieve them without it?
[ ](https://chat.hyperledger.org/channel/composer?msg=66h4JuThPDhQZ7fsu) @CheeChyuan might want to ask on #fabric not #composer but something like `peer channel fetch config`
[ ](https://chat.hyperledger.org/channel/composer?msg=Gh4eaGs4EKkNTBcua) @mahoney1 noted tq. i will redirect my question
I'm having an issue where a function is supposed to add a new participant to the registry, but it doesn't. The transaction seems to complete successfully, but the registry isn't updated.
In the explorer, I can even submit the transaction successfully, but it doesn't not get added to the transaction history or update the registries. When I try the same transaction through the REST server directly, I get an error unexpected token } at the end of the json.
@ColeBoudreau what exact version of fabric are you using ?
@davidkel 1.2
@davidkel I'm also using multiuser mode and authentication.
@ColeBoudreau 1.2.0 or 1.2.1 ?
1.2.0
@davidkel Do I need 1.2.1?
@ColeBoudreau Yes you are probably hitting the bug in fabric where it doesn't commit to the blockchain
@davidkel gotcha, okay.
@davidkel I was using the composer tools here: https://github.com/hyperledger/composer-tools/tree/master/packages/fabric-dev-servers. From this, what is the process for upgrading to 1.2.1?
@ColeBoudreau you can always download the newest version which is set to 1.2.1 or change the docker-compose* files in the hlfv12 directory to use 1.2.1 instead of 1.2.0
@davidkel Okay thanks again, ill try that.
@davidkel Worked like a charm! thanks!
renick
What is the proper way of updating a BNA without losing all data?
Currently, I am doing ./stopFabric.sh, -> ./teardownFabric.sh and then redeploying the new BNA but I am losing all the data every time.
I am getting "Cannot read property 'state' of undefined" error when I trying to access "ID registry". Even though it has two ID sections called "My IDs for
Hello, I am going through this nightmare of installing composer on Windows
Hello, I am going through this nightmare of installing composer on Windows. Can someone send me a good resource on it, I am using WSL and I am struggling to install docker on it.
@MabelOza Windows is not a supported environment and WSL is not a true linux environment (ie doesn't run the linux kernel) so the docker environment won't run as expected. It is technically possible to get it working on windows see https://davidkel.github.io/docs/Windows/Intro.html (but I haven't updated everything here for a while) or you should run a full linux distribution in a hypervisor such as hyperV or VirtualBox
@ronaldlong46 to upgrade a BNA see https://hyperledger.github.io/composer/latest/business-network/upgrading-bna
@ronaldlong46 - some additional references - the Queries tutorial shows the process of modifying a model file, creating a new BNA and upgrading the Network: https://hyperledger.github.io/composer/latest/tutorials/queries
You might also find this Q&A on Stack Overflow interesting as it describes the way startFabric.sh works: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
[ ](https://chat.hyperledger.org/channel/composer?msg=9PCTacqP6huTzPjhn) @Sasadara There is not enough information here :-( - what command are you using or what task are are you executing? Are you following any particular tutorial or guide?
@rthatcher I'm sorry, I couldn't mention. This is actually composer-playground -> then ID registry
@rthatcher I'm sorry, I couldn't mention. This is actually composer-playground ->logged with admin card -> then click ID registry
@rthatcher I'm sorry, I couldn't mention. This is actually composer-playground ->logged with admin card -> then click ID registry. This is the place I am getting this error
I met a question like that:
1, i new a participant and issue a card to it, and test via web to rest server is ok, but i send the card to my co-worker, he use another webbrowser , import the card
and ping test return the error: "Login failure: The identity AgencyID1 has already enrolled 1 times, it has reached the maxrollments ".
2, i check the ca db, got the max_rollments value is 1, so i add para "options": {"maxEnrollments":-1} when issue the identity to a new participant
but my co-worker test the new card with new error "The current identity, with the name 'Agency' and the identifier '72a14c2e429e09daf2411915d7334aff9a5322ce7837419473ae18653f7a66cf', has not been registered".
also, in the ca db, i got max_rollments value is -1,but the state column will increase after everytime of import the card, when the state is above 1, the error will be returned
so what i can do to make the card can be used for umlimited times of import?
```
this is the ca log:
2018/10/19 08:36:27 [DEBUG] ca.Config: &{Version:1.2.0-stable Cfg:{Identities:{AllowRemove:false} Affiliations:{AllowRemove:false}} CA:{Name:ca-xfb-chain Keyfile:/etc/hyperledger/fabric-ca-server-config/c10ef5b10a903fa44ab4ee481885a170cf23f179eecb54d3ff9f6a5ac9e7395f_sk Certfile:/etc/hyperledger/fabric-ca-server-config/ca.admin-xfb.xfb-chain.com-cert.pem Chainfile:/etc/hyperledger/fabric-ca-server/ca-chain.pem} Signing:0xc420262fb0 CSR:{CN:ca.admin-xfb.xfb-chain.com Names:[{C:US ST:North Carolina L: O:Hyperledger OU:Fabric SerialNumber:}] Hosts:[d891951dc8dc localhost] KeyRequest:
I met a question like that:
1, i new a participant and issue a card to it, and test via web to rest server is ok, but i send the card to my co-worker, he use another webbrowser , import the card
and ping test return the error: `Login failure: The identity AgencyID1 has already enrolled 1 times, it has reached the maxrollments `.
2, i check the ca db, got the max_rollments value is 1, so i add para "options": {"maxEnrollments":-1} when issue a new identity to this participant,but my co-worker test the new card with new error `The current identity, with the name 'Agency' and the identifier '72a14c2e429e09daf2411915d7334aff9a5322ce7837419473ae18653f7a66cf, has not been registered`.
also, in the ca db, i got max_rollments value is -1,but the state column will increase after everytime of import the card, when the state is above 1, the error will be returned
so what i can do to make the card can be used for umlimited times of import?
this is the ca log: ```
2018/10/19 08:36:27 [DEBUG] ca.Config: &{Version:1.2.0-stable Cfg:{Identities:{AllowRemove:false} Affiliations:{AllowRemove:false}} CA:{Name:ca-xfb-chain Keyfile:/etc/hyperledger/fabric-ca-server-config/c10ef5b10a903fa44ab4ee481885a170cf23f179eecb54d3ff9f6a5ac9e7395f_sk Certfile:/etc/hyperledger/fabric-ca-server-config/ca.admin-xfb.xfb-chain.com-cert.pem Chainfile:/etc/hyperledger/fabric-ca-server/ca-chain.pem} Signing:0xc420262fb0 CSR:{CN:ca.admin-xfb.xfb-chain.com Names:[{C:US ST:North Carolina L: O:Hyperledger OU:Fabric SerialNumber:}] Hosts:[d891951dc8dc localhost] KeyRequest:
I met a question like that:
1, i new a participant and issue a card to it, and test via web to rest server is ok, but i send the card to my co-worker, he use another webbrowser , import the card
and ping test return the error: `Login failure: The identity AgencyID1 has already enrolled 1 times, it has reached the maxrollments `.
2, i check the ca db, got the max_rollments value is 1, so i add para "options": {"maxEnrollments":-1} when issue a new identity to this participant,but my co-worker test the new card with new error `The current identity, with the name 'Agency' and the identifier '72a14c2e429e09daf2411915d7334aff9a5322ce7837419473ae18653f7a66cf, has not been registered`.
also, in the ca db, i got max_rollments value is -1,but the state column will increase after everytime of import the card, when the state is above 1, the error will be returned
so what i can do to make the card can be used for umlimited times of import?
this is the ca log: ```
2018/10/19 08:36:27 [DEBUG] ca.Config: &{Version:1.2.0-stable Cfg:{Identities:{AllowRemove:false} Affiliations:{AllowRemove:false}} CA:{Name:ca-chain Keyfile:/etc/hyperledger/fabric-ca-server-config/c10ef5b10a903fa44ab4ee481885a170cf23f179eecb54d3ff9f6a5ac9e7395f_sk Certfile:/etc/hyperledger/fabric-ca-server-config/ca.admin-xfb.xfb-chain.com-cert.pem Chainfile:/etc/hyperledger/fabric-ca-server/ca-chain.pem} Signing:0xc420262fb0 CSR:{CN:ca.admin-xfb.xfb-chain.com Names:[{C:US ST:North Carolina L: O:Hyperledger OU:Fabric SerialNumber:}] Hosts:[d891951dc8dc localhost] KeyRequest:
I met a question like that:
1, i new a participant and issue a card to it, and test via web to rest server is ok, but i send the card to my co-worker, he use another webbrowser , import the card
and ping test return the error: `Login failure: The identity AgencyID1 has already enrolled 1 times, it has reached the maxrollments `.
2, i check the ca db, got the max_rollments value is 1, so i add para "options": {"maxEnrollments":-1} when issue a new identity to this participant,but my co-worker test the new card with new error `The current identity, with the name 'Agency' and the identifier '72a14c2e429e09daf2411915d7334aff9a5322ce7837419473ae18653f7a66cf, has not been registered`.
also, in the ca db, i got max_rollments value is -1,but the state column will increase after everytime of import the card, when the state is above 1, the error will be returned
so what i can do to make the card can be used for umlimited times of import?
this is the ca log:
@touchingsoil A card file that only contains a secret is a One-time use only card file, ie you can only import it once. A card file that contains the enrolled identity (which consists of the private key and public certificate) can be imported, shared, reused etc. To convert a card file that only contains a secret (ie the identity has not been enrolled yet)
```
1. Import the card file
2. delete the card file
3. ping the newly imported card (this causes the identity to be enrolled)
4. export that card to a card file
```
The newly exported card file can now be re-used
Has joined the channel.
Is there any way to integrate hyperledger indy with composer?
Screenshot from 2018-10-19 16-27-07.png
@adnanabbasktt - that error usually means that Fabric is not running. (or it is not accessible on the Ports and Addresses specified in the Card)
[ ](https://chat.hyperledger.org/channel/composer?msg=RdvTAYhJWenBecT5J) @rthatcher thanks, It's worked after restarting fabric.
[ ](https://chat.hyperledger.org/channel/composer?msg=a4fbxKbxpksyh4KGt) @Sasadara thanks for the extra details. I have not seen that error with the ID Registry. So I would just have a couple of ideas to check - Do you have any ACLs in place thast may be preventing access to the ID Registry (part of the system namespace)? Have you made changes to the model that 'hide' the data of the participants?
[ ](https://chat.hyperledger.org/channel/composer?msg=ymQvKf9iCAP2tfneY) @davidkel Too many thanks!
Can someone explain how I expose the composer rest server to the outside world? At this moment I don't care about user authentication; I just want to be able to fire up the rest server in a remote browser rather than localhost. I understand I would need to use
Can someone explain how I expose the composer rest server to the outside world? At this moment I don't care about user authentication; I just want to be able to see the rest server explorer screen in a remote browser like I can using localhost:3000/explorer. I understand I would need to use
Can someone explain how I expose the composer rest server to the outside world? At this moment I don't care about user authentication; I just want to be able to fire up the rest server screen in a remote browser like I can using localhost:3000/explorer. I understand I would need to use
Can someone explain how I expose the composer rest server to the outside world? At this moment I don't care about user authentication; I just want to be able to fire up the rest server explorer screen in a remote browser like I can using localhost:3000/explorer. I understand I would need to use
Hi experts, how hyperledger composer supports multi languages
@rrishmawi can you be a bit more specific, what are you expecting regarding multi-language support
@MikeRichardson The rest server listens on 0.0.0.0 and this allows other machines as well as the machine running the rest server to access the rest apis
Has joined the channel.
composer network start --networkName tutorial-network --networkVersion 0.0.1 -A admin -S adminpw -c PeerAdmin@hlfv1
Starting business network tutorial-network at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 1 Peers. Last error was Error: Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP]
how to solve this ?
i am new to hyperledger
[ ](https://chat.hyperledger.org/channel/composer?msg=hPyMcj3ZHgReirzoh) @davidkel That may be true but I can't access it from a remote machine, I just get *This site can’t be reached*
*x.x.x.x took too long to respond*.
[ ](https://chat.hyperledger.org/channel/composer?msg=hPyMcj3ZHgReirzoh) @davidkel That may be true but I can't access it from a remote machine, I just get *This site can’t be reached*
*x.x.x.x took too long to respond* in the browser. Is there any other configuration that must be done to allow the public to access my rest server (which is running on ubuntu)?
[ ](https://chat.hyperledger.org/channel/composer?msg=hPyMcj3ZHgReirzoh) @davidkel That may be true but I can't access it from a remote machine, I just get *This site can’t be reached*
*x.x.x.x took too long to respond*. Is there any other configuration that must be done to allow the public to access my rest server (which is running on ubuntu)?
@MikeRichardson no, it will depend on your network infrastructure as to whether access is allowed. Things like your machine firewall setup for example or router configurations and port exposure
@varunajmera can you provide the output of `docker ps` - possibility your Fabric is not running.
ya sure wait
Screen Shot 2018-10-19 at 8.05.30 PM.png
@mahoney1 :point_up:
[ ](https://chat.hyperledger.org/channel/composer?msg=LHstMaDA8DhYCRxyH) @davidkel Yes sure, what i am expecting is to store data as strings different than English (like bahasa lanaguage)
@rrishmawi node supports unicode so it shouldn't be a problem
[ ](https://chat.hyperledger.org/channel/composer?msg=tQhvZhA2myLsGhqH9) @davidkel I see, thank you.
@varunajmera are you following a tutorial? Did you do the `composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna` prior to the above cmd ? What does `composer card list` show, did you create the PeerAdmin card earlier? - tutorial is here -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
@varunajmera are you following a tutorial? Did you do the `composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna` prior to the above cmd ? What does `composer card list` show, did you create the PeerAdmin card earlier? - tutorial is here -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial . Finally, suggest to review the [console] msgs when you 'spun' up your Fabric network initially (ie if still available) - and check if you do (or don't) see a message confirming the 'peer joined the channel' successfully
@varunajmera are you following a tutorial? Did you do the `composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna` prior to the above cmd ? What does `composer card list` show, did you create the PeerAdmin card earlier? - tutorial is here -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial . Finally, suggest to review the [console] msgs when you 'spun' up your Fabric network initially (ie if still available) - and check if you do (or don't) see a message confirming the 'peer joined the channel' successfully (could be your machine is 'slow' etc)
[ ](https://chat.hyperledger.org/channel/composer?msg=xoGJJQgsT39ZwvFbn) @davidkel You are quite correct. I had to configure my router for port forwarding to forward requests on port 3000 to the local server. Works fine now.
Screen Shot 2018-10-19 at 10.14.14 PM.png
@mahoney1 yes, I installed install that bna file. It installed successfully but when you run start command it give me that error
@varunajmera The message suggests the peer hasn't joined the channel. When you did startFabric, what was the output after the 15 second delay ?
@davidkel peer hasn't joined the channel means what. i am not getting. SHould i start docker?
@varunajmera run ran startFabric.sh correct ? it outputs information to the console. At one point it will sleep for 15 seconds waiting for fabric to start then output some more information. What was that information ?
@varunajmera you ran startFabric.sh correct ? it outputs information to the console. At one point it will sleep for 15 seconds waiting for fabric to start then output some more information. What was that information ?
APPLEs-MacBook-Air-2:hlfv12 apple$ ./startFabric.sh
Stopping peer0.org1.example.com ... done
Stopping ca.org1.example.com ... done
Stopping couchdb ... done
Stopping orderer.example.com ... done
Removing peer0.org1.example.com ... done
Removing ca.org1.example.com ... done
Removing couchdb ... done
Removing orderer.example.com ... done
Removing network composer_default
Creating network "composer_default" with the default driver
Creating ca.org1.example.com ... done
Creating orderer.example.com ... done
Creating couchdb ... done
Creating peer0.org1.example.com ... done
sleeping for seconds to wait for fabric to complete start up
usage: sleep seconds
this
den how the network will start i dont know
i m getting confused.
@davidkel
@varunajmera ok, that explains it, you ran start fabric from the wrong directory.
i am sending directory
you don't run `startFabric` in the hlfv12 directory. you need to go back to the `fabric-dev-servers` directory and run startFabric.sh from there ie `./startFabric.sh`
Screen Shot 2018-10-19 at 10.33.21 PM.png
see i give you @davidkel
go to your `age` directory and there should be a `startFabric.sh` executable there
@davidkel its not there bro it is inside hlvfsss folders
and i follow this link and i just renamed my main folder
https://hyperledger.github.io/composer/latest/installing/development-tools.html
hlfv1,11,12 it creates
automatically
seriously i dont know how to solve
If it's not there then I suggest you erase everything and start again. You should not be running `startFabric.sh` in the hlf directories and the tutorials won't tell you do do so
you are saying that whenever I start network before that startFabric.sh should run
@davidkel
composer network start
The installation guide tells you to download a simple development fabric as follows
```
mkdir ~/fabric-dev-servers && cd ~/fabric-dev-servers
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz
tar -xvf fabric-dev-servers.tar.gz
```
I suggest you do that. Once done you will find a script in the ~/fabric-dev-servers called `startFabric.sh` this is the script you should run to start up a simple development fabric
ok let me try @davidkel
sleeping for 15 seconds to wait for fabric to complete start up @davidkel whats this?
2018-10-19 17:15:08.689 UTC [msp] setupSigningIdentity -> DEBU 035 Signing identity expires at 2027-06-24 12:49:26 +0000 UTC
2018-10-19 17:15:08.690 UTC [msp] Validate -> DEBU 036 MSP Org1MSP validating identity
2018-10-19 17:15:08.691 UTC [msp] GetDefaultSigningIdentity -> DEBU 037 Obtaining default signing identity
2018-10-19 17:15:08.692 UTC [grpc] Printf -> DEBU 038 parsed scheme: ""
2018-10-19 17:15:08.692 UTC [grpc] Printf -> DEBU 039 scheme "" not registered, fallback to default scheme
2018-10-19 17:15:08.693 UTC [grpc] Printf -> DEBU 03a ccResolverWrapper: sending new addresses to cc: [{peer0.org1.example.com:7051 0
@davidkel
[ ](https://chat.hyperledger.org/channel/composer?msg=4rq9CGv976twxyTuM) @varunajmera the sleep just ensures the Fabric nodes start up in sync ; that's all.
@varunajmera now that you have a running Fabric - I suggest 1) `rm -rf $HOME/.composer` 2) from the same directory you ran `./startFabric.sh` run `./createPeerAdminCard.sh` to create the PeerAdmin card then 3) go to the directory where you built your `tutorial-network.bna` file (assuming it was built elsewhere and you still have it and start the tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html from Step Four (assuming you have the .bna file already built and you successfully (already) completed 'Steps One' to 'Step Three' in that tutorial - ie resume from `composer network install`
@varunajmera now that you have a running Fabric - I suggest 1) `rm -rf $HOME/.composer` 2) from the same directory you ran `./startFabric.sh` run `./createPeerAdminCard.sh` to create the PeerAdmin card then 3) go to the directory where you built your `tutorial-network.bna` file (assuming it was built elsewhere and you still have it) and start the tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html from Step Four (assuming you have the .bna file already built and you successfully (already) completed 'Steps One' to 'Step Three' in that tutorial - ie resume from `composer network install`
@varunajmera now that you have a running Fabric - I suggest 1) `rm -rf $HOME/.composer` 2) from the same directory you ran `./startFabric.sh` run `./createPeerAdminCard.sh` to create the PeerAdmin card then 3) go to the directory where you built your `tutorial-network.bna` file (assuming it was built elsewhere and you still have it) and resume the tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html from Step Four (assuming you have the .bna file already built and you successfully (already) completed 'Steps One' to 'Step Three' in that tutorial - ie resume from `composer network install`
APPLEs-MacBook-Air-2:tutorial-network apple$ composer network start --networkName tutorial-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Starting business network tutorial-network at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 1 Peers. Last error was Error: Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP]
Command failed
@mahoney1 @davidkel
i did same whatever tutorial is saying
i started ./startFabric.sh this file also
but after 15 secs i stopped automatically
hi everyone i'm getting an error using FileSystemCardStore.
I'm doing this:
const FileSystemCardStore= require('composer-common').FileSystemCardStore;
const cardStore = new FileSystemCardStore();
and i get an error on the second line that says FileSystemCardStore is not a constructor. am i doing something wrong?
@mahoney1 i am doing what u said let see
Screen Shot 2018-10-19 at 11.04.56 PM.png
nevermind i figured it out
composer network start --networkName tutorial-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
docker log
peer0.org1.example.com | 2018-10-19 17:50:58.718 UTC [gossip/election] waitForInterrupt -> DEBU 4fd [8 232 50 27 195 225 158 235 197 32 33 37 63139 187 201 86 121 111 179 22 171 186 238 179 5 93 49 22 225 239 152] : Entering
peer0.org1.example.com | 2018-10-19 17:51:02.210 UTC [gossip/discovery] periodicalSendAlive -> DEBU 4fe Sleeping 5s
peer0.org1.example.com | 2018-10-19 17:51:03.718 UTC [gossip/election] waitForInterrupt -> DEBU 4ff [8 232 50 27 195 225 158 235 197 32 33 37 63139 187 201 86 121 111 179 22 171 186 238 179 5 93 49 22 225 239 152] : Exiting
peer0.org1.example.com | 2018-10-19 17:51:03.719 UTC [gossip/election] IsLeader -> DEBU 500 [8 232 50 27 195 225 158 235 197 32 33 37 63 139 187201 86 121 111 179 22 171 186 238 179 5 93 49 22 225 239 152] : Returning true
peer0.org1.example.com | 2018-10-19 17:51:03.719 UTC [gossip/election] waitForInterrupt -> DEBU 501 [8 232 50 27 195 225 158 235 197 32 33 37 63139 187 201 86 121 111 179 22 171 186 238 179 5 93 49 22 225 239 152] : Entering
peer0.org1.example.com | 2018-10-19 17:51:07.212 UTC [gossip/discovery] periodicalSendAlive -> DEBU 502 Sleeping 5s
peer0.org1.example.com | 2018-10-19 17:51:08.722 UTC [gossip/election] waitForInterrupt -> DEBU 503 [8 232 50 27 195 225 158 235 197 32 33 37 63139 187 201 86 121 111 179 22 171 186 238 179 5 93 49 22 225 239 152] : Exiting
peer0.org1.example.com | 2018-10-19 17:51:08.722 UTC [gossip/election] IsLeader -> DEBU 504 [8 232 50 27 195 225 158 235 197 32 33 37 63 139 187201 86 121 111 179 22 171 186 238 179 5 93 49 22 225 239 152] : Returning true
peer0.org1.example.com | 2018-10-19 17:51:08.765 UTC [gossip/election] waitForInterrupt -> DEBU 505 [8 232 50 27 195 225 158 235 197 32 33 37 63139 187 201 86 121 111 179 22 171 186 238 179 5 93 49 22 225 239 152] : Entering
peer0.org1.example.com | 2018-10-19 17:51:11.248 UTC [gossip/discovery] periodicalReconnectToDead -> DEBU 506 Sleeping 25s
peer0.org1.example.com | 2018-10-19 17:51:12.213 UTC [gossip/discovery] periodicalSendAlive -> DEBU 507 Sleeping 5s
peer0.org1.example.com | 2018-10-19 17:51:13.766 UTC [gossip/election] waitForInterrupt -> DEBU 508 [8 232 50 27 195 225 158 235 197 32 33 37 63139 187 201 86 121 111 179 22 171 186 238 179 5 93 49 22 225 239 152] : Exiting
peer0.org1.example.com | 2018-10-19 17:51:13.767 UTC [gossip/election] IsLeader -> DEBU 509 [8 232 50 27 195 225 158 235 197 32 33 37 63 139 187201 86 121 111 179 22 171 186 238 179 5 93 49 22 225 239 152] : Returning true
peer0.org1.example.com | 2018-10-19 17:51:13.767 UTC [gossip/election] waitForInterrupt -> DEBU 50a [8 232 50 27 195 225 158 235 197 32 33 37 63139 187 201 86 121 111 179 22 171 186 238 179 5 93 49 22 225 239 152] : Entering
nothing is happening
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 1 Peers. Last error was Error: Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP]
Has joined the channel.
hi everyone,
how we can access API without using Hyperledger composer ??
and how we can Use this for developing an application ???
Has joined the channel.
Has joined the channel.
hi guys, how can I use passport-local to authenticate the generated REST server?
Hi, when i tried to start a channel using the command : configtxgen -profile ComposerChannel -outputCreateChannelTx ./composer-channel.tx -channelID composerchannel
Hi all.
when I tried to create certificate by using command : configtxgen -profile ComposerChannel -outputCreateChannelTx ./composer-channel.tx -channelID composerchannel
which was given in https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
I got below error, can anyone help with this , thank you in advance.
CRIT 003 Error on outputChannelCreateTx: config update generation failure: could not parse application to application group: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority
hi everyone,
how can i deploy our transactions on a web interface without using composer playground ??
hi everyone,
how can i deploy our transactions on a web interface without using hyperledger composer playground ??
Has joined the channel.
Hi @mahoney1 , I followed your article to add org3 to existing multi-org network and it went well, many thanks! I have a question regarding the paragrapgh below:
If you add the endorsement policy, as per above - then you would need to provide the 3-org connection profile in each of their cards (ie delete the REMAINING 2-org business network cards (eg `kcoe@trade-network`, `jdoe@trade-network` from first tutorial etc) from the credentials wallet and recreate them - to reflect the 3-Org setup, using the new connection profile.
I have updated the endorsement policy with 3 orgs. But the old business card for jdoe@trade-network(with 2 orgs connection profile) is still working, still can submit transaction after I upgraded the endorsement policy with 3 orgs. Is this correct behavior?
Has joined the channel.
i created the fabric network by using composer cli tools and rest server api to connect to that network with my webapp i want to access that network without using rest server
Has joined the channel.
Has joined the channel.
hello everyone i need some help i m new to hyperledger can anyone suggest me the best framework for python language and tool
Has joined the channel.
Has joined the channel.
I have a network setup and composer rest server is working in multi user mode... But day by day im facing storage overrun problem... Any log file or something that i shou,ld keep on cleaning or any suggestion on settings to avoid this?
hello. Im trying to add a new organisation to an existing channel from a different host (say Org3). I have managed to join peer from org3 into the channel. I have CA for org3 running. However when i ran composer identity request, I got the error message Error: failed to request identity. Error trying to enroll user and return certificates. Error: Enrollment failed with errors [[{"code":19,"message":"CA 'ca.org1.example.com' does not exist"}]]. Note that the port that runs my ca for org1 is open.
I then tried to obtain the logs from my ca in org3 only to find that (POST /api/v1/enroll 404 19 "CA 'ca.org1.example.com' does not exist). why does my ca from org3 need to communicate with ca from org1? also why does it say that my ca from org1 does not exist when it is in fact up and running? Any help is much appreciated
[ ](https://chat.hyperledger.org/channel/composer?msg=ieAGx26fE5smkEfhW) @davidkel This did the trick! Network is up now, thank you !
[ ](https://chat.hyperledger.org/channel/composer?msg=j7uDSSFHMNKSsd2Cd) @CheeChyuan I assume that you have created a new connection.json for org3, and built a new admin card for org3 using that connection?
I would think that there is some small error in your connection.json, or in your yaml files for the 3rd Org which refer to the wrong CA.
Maybe you have already seen this document, but if not, it should help: https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82
Hi Everyone
I have installed and deployed business network using this link https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-single-org
This network is running on two machines where 2 peers are running on one machine and one is running on 2nd machine. My query is how peer on 2nd machine will interact with peers on machine one. For example, if peer on 2nd machine create a property (asset) then it will be visible to the peers which are running on machine one. How the further process will be go?
[ ](https://chat.hyperledger.org/channel/composer?msg=XJHtKeLscsQbhghYA) @rthatcher hello, yes. I have created a new connection profile for org3. and it is as such https://stackoverflow.com/questions/52923885/composer-request-identity-from-different-host-machine
[ ](https://chat.hyperledger.org/channel/composer?msg=kX9o2NZxRgbefoGrD) @anand.balagopalan It is the nature of the Blockchain to use ever increasing space :-)
Are you making changes to your model and upgrading? If so, then are you removing the old versions of the 'chaincode container'? - both the Containers and the images?
These old versioinbs can take up quite a bit of space.
[ ](https://chat.hyperledger.org/channel/composer?msg=kNPbpnkLbDw4DNFzZ) @Ammar8573 You could write applications using the Node.js Javascript API which is described here: https://hyperledger.github.io/composer/latest/applications/node
There is detailed API Documentation here: https://hyperledger.github.io/composer/latest/api/api-doc-index
and there are examples of it being used in the Composer Sample Applications: https://github.com/hyperledger/composer-sample-applications
[ ](https://chat.hyperledger.org/channel/composer?msg=ZR5sgFHnCR6RcL296) @rthatcher i have updated the model ...but dint remove the images/containers
in fat im unaware how to properly do it...
@anand.balagopalan - each time you upgrade you Business Network, Composer creates a new chaincode Container and Image with a name starting "dev" (This is why it can take a couple of minutes for the upgrade command to finish.)
You can see the Containers by using the command `docker ps -a` and you can see the images with `docker images dev*`.
In order to remove the old ones, you should investigate these docker commands: docker stop, docker rm, docker rmi, and you could also look at docker volume prune.
@CheeChyuan the S/O has been answered FYI -> https://stackoverflow.com/questions/52923885/composer-request-identity-from-different-host-machine/52925931#52925931
[ ](https://chat.hyperledger.org/channel/composer?msg=syByGo5oSCQ9hFh8q) @mahoney1 omy thank you^^
@KindlebitPhp suggest to read/see https://hyperledger-fabric.readthedocs.io/en/release-1.3/txflow.html The blocks of transactions are “delivered” to all peers on the channel. Each peer appends the block to the channel’s chain - ordinarily, each will have a copy of the ledger (the asset will appear in each copy, once committed to the ledger and viewed through the business network runtime eg. in the form of a query, REST API, SDK etc etc
@KindlebitPhp suggest to read/see https://hyperledger-fabric.readthedocs.io/en/release-1.3/txflow.html The blocks of transactions are “delivered” to all peers on the channel. Each peer appends the block to the channel’s chain - ordinarily, each will have a copy of the ledger (the asset will appear in each copy, once committed to the ledger and viewed through the business network runtime eg. in the form of a query, REST API, SDK etc etc)
@mahoney1 I have checked each logs of each peers. I saw and transaction id with value at last of each log. It looks like
```
2018-10-22T07:18:17.039Z [0a797726] VERBOSE :Composer :@PERF Invoke() Total (ms) duration for txnID [0a79772618496d1a13e15d3284c1253c363cadcfd8c953cd54cc3e1bb444d734]: 92.00
```
Whom transaction id it is and What is value 92 with it?
It showing different txn id with different value of each peer
[ ](https://chat.hyperledger.org/channel/composer?msg=fLAXfZjDSG6Bq9aCJ) @mahoney1 How to check in composer?
Hi,how to change(upgrade) the code installed in 2 organizations using composer?
@sushmitha assuming you're just upgrading the business network code, follow steps Three and Four (for each Org, using a peer Admin card for each org) of https://hyperledger.github.io/composer/latest/tutorials/queries
Hi Everyone
I am facing these issue when running Composer-Rest-API on network
Web server listening at: http://localhost:3000
Unhandled error for request GET /explorer/: Error: Cannot GET /explorer/
at raiseUrlNotFoundError (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/loopback/server/middleware/url-not-found.js:21:17)
at Layer.handle [as handle_request] (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)
at trim_prefix (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)
at /home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7
at Function.process_params (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)
at next (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)
at /home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:635:15
at next (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:260:14)
at Function.handle (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:174:3)
at router (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:47:12)
at Layer.handle [as handle_request] (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)
at trim_prefix (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)
at /home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7
at Function.process_params (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)
at next (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)
at urlencodedParser (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/body-parser/lib/types/urlencoded.js:91:7)
Please help
Hi Everyone
I am facing these issue when running Composer-Rest-API on network
Web server listening at: http://localhost:3000
Unhandled error for request GET /explorer/: Error: Cannot GET /explorer/
at raiseUrlNotFoundError (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/loopback/server/middleware/url-not-found.js:21:17)
at Layer.handle [as handle_request] (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)
at trim_prefix (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)
at /home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7
at Function.process_params (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)
at next (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)
at /home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:635:15
at next (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:260:14)
at Function.handle (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:174:3)
at router (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:47:12)
at Layer.handle [as handle_request] (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)
at trim_prefix (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)
at /home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7
at Function.process_params (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)
at next (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)
at urlencodedParser (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/body-parser/lib/types/urlencoded.js:91:7)
Please help me where is the issue?
Hi Everyone
I am facing these issue when running Composer-Rest-API on network
Web server listening at: http://localhost:3000
Unhandled error for request GET /explorer/: Error: Cannot GET /explorer/
at raiseUrlNotFoundError (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/loopback/server/middleware/url-not-found.js:21:17)
at Layer.handle [as handle_request] (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)
at trim_prefix (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)
at /home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7
at Function.process_params (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)
at next (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)
at /home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:635:15
at next (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:260:14)
at Function.handle (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:174:3)
at router (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:47:12)
at Layer.handle [as handle_request] (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)
at trim_prefix (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)
at /home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7
at Function.process_params (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)
at next (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)
at urlencodedParser (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/body-parser/lib/types/urlencoded.js:91:7)
I am using composer verion 0.19 for fabric 1.1
Please help me where is the issue?
Hi, when creating bna file using command "composer archive create -t dir -n ." in 2 different machines, even exactly the same codes, the digest of the produced bna files are different. Is it purposely designed like this? Thanks.
@KindlebitPhp - on *v0.20* of Composer the Explorer should display unless you use ` -u false ` when you start the REST server.
For v0.19 I think it is the same, though it is also possible that using ` y
Hi @mahoney1 , related to my previous question, do we need to update all the BN cards with latest connection profile if a new org join the business network and endorsement policy has been upgraded to include the new org?
Hi @mahoney1 , I followed your article to add org3 to existing multi-org network and it went well, many thanks! I have a question regarding the paragrapgh below:
If you add the endorsement policy, as per above - then you would need to provide the 3-org connection profile in each of their cards (ie delete the REMAINING 2-org business network cards (eg `kcoe@trade-network`, `jdoe@trade-network` from first tutorial etc) from the credentials wallet and recreate them - to reflect the 3-Org setup, using the new connection profile.
I have updated the endorsement policy with 3 orgs. But the old business card for jdoe@trade-network(with 2 orgs connection profile) is still working, still can submit transaction after I upgraded the endorsement policy with 3 orgs. Is this correct behavior?
Sample that shows how to use the Concerto schema language and runtime inside @Hyperledger Fabric v1.3 https://github.com/clauseHQ/fabric-samples/tree/master/concerto
Has joined the channel.
How do we directly sync hyperledger composer with hyperledger explorer?
Hi there,
I deployed a network in 2 machines.
machine 1: orderrer, 2 peers of org1
docker_compose_base.yaml:
peer0.org1:
ports:
- 7051:7051
peer1.org1:
ports:
- 8051:7051
machine 2: 2 peers of org2
docker_compose_base.yaml:
peer0.org2:
ports:
- 9051:7051
extra_host:
- orderer.example.com:10.148.0.7
peer1.org2:
ports:
- 10051:7051
extra_host:
- orderer.example.com:10.148.0.7
The network runs properly with every transactions gone through and block populates with all the nodes. However, I get this warning message from all 4 peers.
*2018-10-22 11:53:41.891 UTC [gossip/discovery] func1 -> WARN 132 Could not connect to {peer0.org2.example.com:7051 [] [] peer0.org2.example.com:7051
[ ](https://chat.hyperledger.org/channel/composer?msg=5tbZiCXA4pdNYxyyR) Additional context, when I deployed the bna file, the system prompted different finger prints. I md5sum two bna files and found the checksum is different. I can successfully deploy the business network by pass the bna file to other machine. Hope to share this knowledge to the group. Thanks.
Hi, all. Is it possible to query CouchDB directly from Composer chaincode, similar to what is described in https://hyperledger-fabric.readthedocs.io/en/release-1.1/couchdb_as_state_database.html#using-couchdb-from-chaincode?
Basically composer helps you to manage the model and curd
[ ](https://chat.hyperledger.org/channel/composer?msg=ZvCiQDEvQRpLkJPn6) @joaquimpedrooliveira Basically composer helps you to manage the model and do curd to the key-value stored in DB(and ledger). But you can do it in fabric way by using `getNativeAPI` in your js file https://hyperledger.github.io/composer/latest/reference/js_scripts
Hi.. regarding the implementation of the for loop there seems to the problem where in hyper-ledger wont allow to read you own writes. So only the first entry of the for loop will be modified without any error being shown during run-time. Is there any way to update all the elements using for loop ?
A typical scenario being a list of person whose marks have to be updated based on a condition. When the condition is passed, the each candidate will be selected using for loop and marks will be updated and finally the updation will be saved. This will yield only the first entry to be updated. Rest remains as such. Please help
@labcoinpoc @mahoney1 @rthatcher
Has joined the channel.
hi, how to use composer network upgrade command to upgrade chaincode in multi-org Hyperledger fabric
Im having trouble pinging the network from my newly added organization from a different host machine. Any advise? tq https://stackoverflow.com/questions/52941431/error-2-unknown-access-denied-channel-composerchannel-creator-org
[ ](https://chat.hyperledger.org/channel/composer?msg=xk5bamMQAWzHEWBsg) @sooraj-citta Are you trying to modify multiple keys or modify same key multiple times with for loop ?
@Techie It's almost exactly the same as starting a business network, you must install the new chaincode in each of the orgs peers using the `composer network install` command (as you did for the starting of a business network) and then instead of doing the single start command you do a single `composer network upgrade` command. see https://hyperledger.github.io/composer/latest/business-network/upgrading-bna
Has joined the channel.
After upgrading, I have an issue in connecting to the network-- Error: Error trying to ping. Error: cannot retrieve package for chaincode
[ ](https://chat.hyperledger.org/channel/composer?msg=AKFQ9iHJ8vi3bJdad) @davidkel No Business network is installed in both the peers of different orgs, but how to upgrade that business network on both the peers
@Techie that means you haven't installed the business network on the peers for that organisation
No.. there is a business network on both the peers (each of different orgs``` Now how to
``` )
No.. there is a business network on both the peers (each of different orgs ) Now how to upgrade that code in both the peers? Iam using composer-playground for changing the code and upgrading in one peer
@Techie don't use playground. It's not designed for that. You should use the command line
[ ](https://chat.hyperledger.org/channel/composer?msg=GzDukufqJkBma2vYS) @davidkel where do I write the code?
@Techie Playground is a tool to get you started. At best it will work with a simple single org fabric, but it was never designed as an operational tool to work with any fabric setup. For that you must use the command line. I suggest you follow the multi-org tutorial to provide the necessary guidance.
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@Techie As for writing the code, you can use visual studio code, there is an extension hyperledger-composer you can install in VSCode to help.
[ ](https://chat.hyperledger.org/channel/composer?msg=xk5bamMQAWzHEWBsg) @sooraj-citta correct, you can't read your own writes, as they're not committed at that point in time to the ledger. There is an example of using a for loop to update all elements using a loop in the sample networks -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/fund-clearing-network/lib/clearing.js#L156 where `transferRequest` is an asset in the modeled network.
Hi Everyone, I have deployed business network(BN). Both BN containers were running when i started it
Now, I am seeing after an hour the Business container of peer has exit by itself which was running on different host. How to start that one again or should i restart the BN a?
Hi Everyone, I have deployed business network(BN). All BN containers were running when i started it
Now, I am seeing after an hour the Business container of peer has exit by itself which was running on different host. How to start that one again or should i restart the BN a?
@KindlebitPhp It will be restarted as required by the peer, however I think it prudent you find out why it exited by itself. Check the logs of the business network container as well as the peer logs
Has left the channel.
@davidkel Okay. but how to restart that particular
Has joined the channel.
@KindlebitPhp the peer will do it automatically
@davidkel but it didn't do this. It has beenn 3 hours when he had exit from network
@davidkel but it didn't do this. It has been 3 hours when he had exit from network
But have you sent in a request the requires the peer to restart the container ?
How to do that?
I had try docker restart command for that container id but it diddn't work for me
So now i have reststarted entire network gain
So now i have reststarted entire network again
@KindlebitPhp The peer will start/restart a chaincode container when it needs to run a transaction simulation in the chaincode, so for composer that will be when you invoke a transaction for example
@davidkel Okay.. Now i am again restarted and getting error in rest server
```
safeuser@localhost:~/pr-auction$ composer-rest-server
? Enter the name of the business network card to use: admin@pr-auction
? Specify if you want namespaces in the generated REST API: never use namespaces
? Specify if you want to use an API key to secure the REST API: No
? Specify if you want to enable authentication for the REST API using Passport:
No
? Specify if you want to enable the explorer test interface: Yes
? Specify a key if you want to enable dynamic logging:
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No
To restart the REST server using the same options, issue the following command:
composer-rest-server -c admin@pr-auction -n never -u true -w true
Discovering types from business network definition ...
Discovering the Returning Transactions..
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Registering named query: selectUserWithBuyerGroup
Registering named query: selectUserByUserType
Registering named query: selectUser
Registering named query: selectUserForLogin
Registering named query: selectAgent
Registering named query: selectPropertyByUserId
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Swagger: skipping unknown type "Users".
Swagger: skipping unknown type "Offer".
Swagger: skipping unknown type "Users".
Swagger: skipping unknown type "Offer".
Swagger: skipping unknown type "Users".
Swagger: skipping unknown type "Offer".
Swagger: skipping unknown type "Users".
Swagger: skipping unknown type "Offer".
Swagger: skipping unknown type "Users".
Swagger: skipping unknown type "Offer".
Swagger: skipping unknown type "Users".
Swagger: skipping unknown type "Offer".
Swagger: skipping unknown type "Users".
Swagger: skipping unknown type "Offer".
Swagger: skipping unknown type "Users".
Swagger: skipping unknown type "Offer".
Swagger: skipping unknown type "Users".
Swagger: skipping unknown type "Offer".
Swagger: skipping unknown type "Offer".
Swagger: skipping unknown type "Offer".
Added schemas for all types to Loopback
events.js:183
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE :::3000
at Server.setupListenHandle [as _listen2] (net.js:1360:14)
at listenInCluster (net.js:1401:12)
at Server.listen (net.js:1485:7)
at module.exports.promise.then.then (/home/safeuser/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/cli.js:143:19)
at
Why it showing me this?
Hi. Can somebody tell how to restrict users to my composer-rest-server. i'm using passport-github now, but everybody with a Github account can access my composer-rest-server??
I only want the members of my organization to be able te access
@KindlebitPhp its because something else (eg. possibly another older REST Server instance was started in another terminal window?) is already using port:3000 `Error: listen EADDRINUSE :::3000`
@mahoney1 I had got this and restarted it. Thanks
@benjamin.verhaegen Github is client authentication (acting on the user's behalf and the application that uses Github OAUTH authentication uses a uniquely private client id and client secret) - if you want user authentication specifically, choose an appropriate, supported strategy from http://www.passportjs.org/ - there is an example of using `passport-jwt` authentication strategy here -> https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=3xb8KcKEjjyzdxQ38) @labcoinpoc Thank you very much for your help! I'll take a look at the `getNativeAPI` alternative.
If the upgrade is absolutely in need?
For example_v1.bna running and its upgraded example_v2.bna installed, may i start the example_v2.bna directly not via the upgrading ?
Hi Everyone, After making a transaction It showing me that in each peer logs such as
```
2018-10-23T12:56:35.686Z [9d04045e] VERBOSE :Composer :@PERF Invoke() Total (ms) duration for txnID [9d04045e3f5c914e8e49f6e641a275c9499c24bd73907a1947f3ab6c47b9aafe]: 264.00
```
But what is 264 value her with transaction ID. I found it different with same transaction ID in each peer log.
And What it means "Total (ms) duration for txnID **"
?
@touchingsoil - yes it is necessary to do the install/upgrade in Composer given that the earlier version was already installed. You should read (for the bigger picture) the chaincode lifecycle for operators docs (in particular about the chaincode name) from Fabric (which Composer observes) https://hyperledger-fabric.readthedocs.io/en/release-1.3/chaincode4noah.html
Has joined the channel.
Thanks - I'm following through the links suggested!:sunglasses:
Hi, I am stuck in the step of starting the business network. I keep getting this message:
`Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode`
I have tried every possible fix to overcome this error , but no luck : I tried even tearing down the network and start all over again.
Any help or suggestion
Hi, I am stuck in the step of starting the business network. I keep getting this message:
``Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: cannot get package for chaincode`
`
I am following the tutorial on the link: https://hyperledger.github.io/composer/v0.19/tutorials/developer-tutorial.html.
I am stuck in " Deploying the business network" step 2.
I have tried every possible fix to overcome this error , but no luck : I tried even tearing down the network and start all over again.
Any help or suggestion
I got an issue. All the operation are good except this upgrading when update the BNA file.
`Error trying to upgrade business network. Error: No valid responses from any peers`
And timeout errors
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
version 0.19.15
fabric 1.1
Can someone share some clue on this?
Hi there,
I deployed a network in 2 machines.
machine 1: orderrer, 2 peers of org1
docker_compose_base.yaml:
peer0.org1:
ports:
- 7051:7051
peer1.org1:
ports:
- 8051:7051
machine 2: 2 peers of org2
docker_compose_base.yaml:
peer0.org2:
ports:
- 9051:7051
extra_host:
- orderer.example.com:10.148.0.7
peer1.org2:
ports:
- 10051:7051
extra_host:
- orderer.example.com:10.148.0.7
The network runs properly with every transactions gone through and block populates with all the nodes. However, I get this warning message from all 4 peers.
*2018-10-22 11:53:41.891 UTC [gossip/discovery] func1 -> WARN 132 Could not connect to {peer0.org2.example.com:7051 [] [] peer0.org2.example.com:7051
Has joined the channel.
Hi i faced a issue on LoopBack API with multiuser. Could anyone suggest me the right way to do this.
Hi @davidkel, Encountering a weird issue where "new BusinessNetworkConnection()" in client application
just seems to return empty error. It was working earlier with composer 0.19.16, and fabric 1.1, until i tried and switch to latest, go mixed up with versions 0.20.0, and 0.20.2, finally cleaned my environment with all consistent versions for composer version 0.20.2 and fabric 1.2.1. But now "new BusinessNetworkConnection()" just returns empty error.
I enabled composer logs for the client application, and I see the following, does it point to any issues for my system?
Logs:
——————
debug: [Hyperledger-Composer] :BusinessNetworkConnection:constructor() >
debug: [Hyperledger-Composer] :LoadModule :loadModule() composer-wallet-filesystem -- /Users/gaurav.giri/Documents/Gaurav/node_modules,/usr/lib/node_modules,/Users/gaurav.giri/Documents/Gaurav/IBM/workspace/DISC_UK/source/dataart/node_modules,/Users/gaurav.giri/Documents/Gaurav/IBM/workspace/DISC_UK/source/node_modules,/Users/gaurav.giri/Documents/Gaurav/IBM/workspace/DISC_UK/node_modules,/Users/gaurav.giri/Documents/Gaurav/IBM/workspace/node_modules,/Users/gaurav.giri/Documents/Gaurav/IBM/node_modules,/Users/gaurav.giri/Documents/Gaurav/IBM/workspace/DISC_UK/source/dataart/hyperledger-migration/node_modules,/Users/gaurav.giri/Documents/node_modules,/Users/gaurav.giri/node_modules,/Users/gaurav.giri/.nvm/versions/node/v8.11.3/lib/node_modules,/Users/gaurav.giri/Documents/Gaurav/IBM/workspace/DISC_UK/source/dataart/hyperledger-migration/disc-composer-sdk-rest-server/node_modules,/Users/node_modules,/node_modules,/Users/gaurav.giri/Documents/Gaurav/IBM/workspace/DISC_UK/source/dataart/hyperledger-migration/disc-composer-sdk-rest-server/node_modules -- /Users/gaurav.giri/Documents/Gaurav/IBM/workspace/DISC_UK/source/dataart/hyperledger-migration/disc-composer-sdk-rest-server/node_modules
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /Users/gaurav.giri/Documents/Gaurav/node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /usr/lib/node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /Users/gaurav.giri/Documents/Gaurav/IBM/workspace/DISC_UK/source/dataart/node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /Users/gaurav.giri/Documents/Gaurav/IBM/workspace/DISC_UK/source/node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /Users/gaurav.giri/Documents/Gaurav/IBM/workspace/DISC_UK/node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /Users/gaurav.giri/Documents/Gaurav/IBM/workspace/node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /Users/gaurav.giri/Documents/Gaurav/IBM/node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /Users/gaurav.giri/Documents/Gaurav/IBM/workspace/DISC_UK/source/dataart/hyperledger-migration/node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /Users/gaurav.giri/Documents/node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /Users/gaurav.giri/node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /Users/gaurav.giri/.nvm/versions/node/v8.11.3/lib/node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /Users/gaurav.giri/Documents/Gaurav/IBM/workspace/DISC_UK/source/dataart/hyperledger-migration/disc-composer-sdk-rest-server/node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /Users/node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /node_modules/composer-wallet-filesystem
debug: [Hyperledger-Composer] :LoadModule :loadModule() checking path /Users/gaurav.giri/Documents/Gaurav/IBM/workspace/DISC_UK/source/dataart/hyperledger-migration/disc-composer-sdk-rest-server/node_modules/composer-wallet-filesystem
info: [Hyperledger-Composer] :LoadModule :Unable to load composer-w
@wangdong you need to have a look at the peer log to see if there is anything helpful there. Also look at https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md for suggestions about REQUEST_TIMEOUT around performing a start or upgrade
@jonlee300 This is a fabric setup question and not related to composer so would suggest trying one of the fabric channels as you are more likely to get help from people more knowledgable on fabric. But as an initial step I would say you haven't set up any anchor peers in your custom fabric.
@davidkel sure. Thanks for the advice.
@gauravgiri It looks like there is a problem with your install of composer-client. composer-client has a dependency on `composer-wallet-filesystem` which is the package that handles the storing and retrieving of cards (and node-sdk cryptosuite storage) from the file system. The message is saying that it is trying to find the npm module composer-wallet-filesystem but cannot find it anywhere in your node path.
[ ](https://chat.hyperledger.org/channel/composer?msg=Ysqvquz4hMo3etGgJ) @davidkel thank you very much david. I've set up anchor peer in `configtx.yaml` using `configtxgen `and `channel update -f` the anchor.
[ ](https://chat.hyperledger.org/channel/composer?msg=Ysqvquz4hMo3etGgJ) @davidkel thank you very much david. I've set up anchor peer in `configtx.yaml` using `configtxgen `and `channel update -f` the anchor. Is there a chance of port mapping? in machine 2, 9051:7051. However, at least machine should be able to find peer1.machine as both internal and external port is 7051.
[ ](https://chat.hyperledger.org/channel/composer?msg=5TM7gA8qSE87CxeXf) @mahoney1 Thanks!
I got it, so when the old version is started, trying to start a new version directly will result with errors for there is no stop cmd.
And an further consulting:
For there will be no any major new features into Composer and many features of Composer will be merged to fabric.
How can a project based on Composer be upgraded to further fabric version smoothly?Could you give some advise?
May the further fabric support rest api, card file and so on?
[ ](https://chat.hyperledger.org/channel/composer?msg=5TM7gA8qSE87CxeXf) @mahoney1 Thanks!
I got it, so when the old version is started, trying to start a new version directly will result with errors for there is no stop cmd.
And an further consulting:
For there will be no any major new features put into Composer and many features of Composer will be merged to fabric.
How can a project based on Composer be upgraded to further fabric version smoothly?Could you give some advise?
May the further fabric support rest api, card file and so on?
[ ](https://chat.hyperledger.org/channel/composer?msg=5TM7gA8qSE87CxeXf) @mahoney1 Thanks!
I got it, so when the old version is started, trying to start a new version directly will result with errors for there is no stop cmd yet.
And an further consulting:
For there will be no any major new features put into Composer and many features of Composer will be merged to fabric.
How can a project based on Composer be upgraded to further fabric version smoothly?Could you give some advise?
May the further fabric support rest api, card file and so on?
[ ](https://chat.hyperledger.org/channel/composer?msg=5TM7gA8qSE87CxeXf) @mahoney1 Thanks!
I got it, so when the old version is started, trying to start a new version directly will result with errors for there is no stop cmd yet.
And a further consulting:
For there will be no any major new features put into Composer and many features of Composer will be merged to fabric.
How can a project based on Composer be upgraded to further fabric version smoothly?Could you give some advise?
May the further fabric support rest api, card file and so on?
Has joined the channel.
Hi experts. when using composer rest server in multi user mode, is it ok to upload the same card multiple times? what is the default life time of an access token? in production what is the best practice for the flow and when to upload the card? i am asking this because i know the a card must be imported only once when using the composer cli. correct?
[ ](https://chat.hyperledger.org/channel/composer?msg=LFnxnRWFnTjJRxhrh) @JP Have you seen this tutorial? https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
and this document? https://hyperledger.github.io/composer/latest/integrating/enabling-multiuser.html
What is your issue?
[ ](https://chat.hyperledger.org/channel/composer?msg=Z8Mpdc97yJFwpTyD4) @rthatcher yeah tried. it was working fine but how can i get the token dynamically using postman while doing oauth
[ ](https://chat.hyperledger.org/channel/composer?msg=vNo4DBoKWy72qAAio) @rrishmawi When you import a card on the CLI, it is imported into the File System Wallet for the user who is logged into the computer, so it would not make sense to import it more than once. If you logged into the Computer as a different user you would need to import any cards you need as you would have a different File System Wallet.
It is the same with the REST server, if you login with different Google (Github or whatever) IDs you have a different Wallet in the REST server - so you can import a card more than once.
@rthatcher When i tried with Google OAuth. I get the token only when by browser itself. can you suggest how can i get the token by using postman or any other ways without browser
Oauth Token
[ ](https://chat.hyperledger.org/channel/composer?msg=duQGvY7DcaoTJBhWb) @rthatcher THanks @rthatcher , i see what you mean. So if we have the same Google IDs (in my case JWT token) then we cannot upload the card again (with the same access token), could that cause corruption?
[ ](https://chat.hyperledger.org/channel/composer?msg=igq49aRA39gXAM6HC) @aakzubaidi Did the `composer network install` complete OK? Did you specify the correct Network Name and Version number on the `composer network start` command?
Have you looked at the log for the Peer Docker container to see if there are more error details?
[ ](https://chat.hyperledger.org/channel/composer?msg=hcqxaYDkSKnzZaNr2) Because of the issue only i used to go for LoopBack API, Even there is no issues for getting token and posting the data. but in LoopBack API doesn't allow multiuser mode like wallet.
[ ](https://chat.hyperledger.org/channel/composer?msg=3SBQr8EbBn5WWajWd) @davidkel Thank you @davidkel, you are right, it has a dependency on composer-wallet-filesystem, and that was missing, i installed it and then it worked.
[ ](https://chat.hyperledger.org/channel/composer?msg=hcqxaYDkSKnzZaNr2) @JP The token is available in a Cookie - though I think the Cookie contains more than just the token so you will have to extract it.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZQsaAg7KhBg2GGfW2) @rrishmawi If the card is in the Wallet already then why would you want to import it a second time?
If the Wallet is empty - then yes you can import the card again. But make sure that the card you import contains the Credentials (Certificate and Keys) NOT just the one-time secret.
[ ](https://chat.hyperledger.org/channel/composer?msg=D5FRbK8iprD72NHMA) @rthatcher Can you elaborate more on this "But make sure that the card you import contains the Credentials (Certificate and Keys) NOT just the one-time secret". what the one time secret?
[ ](https://chat.hyperledger.org/channel/composer?msg=vNo4DBoKWy72qAAio) @rrishmawi 1. you're importing to the wallet, normally you'd do it once per card (for the blockchain identity connecting to the business network) 2. Seems its doesn't expire - see https://stackoverflow.com/questions/46521712/sliding-expiration-for-access-token-with-loopback for one solution or read loopback issue (loopback controls the expiration) here https://github.com/strongloop/loopback/issues/257#issuecomment-329796343 (someone did a config/metadata based solution but don't think a PR went in for it). 3. Production rollout with Composer [is not advisable](https://lists.hyperledger.org/g/composer/message/125) - on your Q, see section 2 (concerning persistent store) of https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server.html
[ ](https://chat.hyperledger.org/channel/composer?msg=sWYntoZav65H5Gmyg) @rrishmawi When an Identity is Issued (and the card created) it contains a One-time secret. The first time the card is used, the secret is exchanged for Credentials (Certificate and Keys) and the secret is invalidated. SO an 'old' version of a .card file cannot be imported if it contains an invalid secret. Try this workflow (it might be faster to use the CLI):
1. Issue an ID (and create a .card file) - make a note of the size of the file
2. Import the card - DO NOT USE the card yet ...
3. Use the command `composer card list -c
[ ](https://chat.hyperledger.org/channel/composer?msg=sWYntoZav65H5Gmyg) @rrishmawi When an Identity is Issued (and the card created) it contains a One-time secret. The first time the card is used, the secret is exchanged for Credentials (Certificate and Keys) and the secret is invalidated. SO an 'old' version of a .card file cannot be imported if it contains an invalid secret. Try this workflow (it might be faster to use the CLI):
1. Issue an ID (and create a .card file) - make a note of the size of the file
2. Import the card - DO NOT USE the card yet ...
3. Use the command `composer card list -c
[ ](https://chat.hyperledger.org/channel/composer?msg=sWYntoZav65H5Gmyg) @rrishmawi When an Identity is Issued (and the card created) it contains a One-time secret. The first time the card is used, the secret is exchanged for Credentials (Certificate and Keys) and the secret is invalidated. SO an 'old' version of a .card file cannot be imported if it contains an invalid secret. Try this workflow (it might be faster to use the CLI):
1. Issue an ID (and create a .card file) - make a note of the size of the file
2. Import the card - DO NOT USE the card yet ...
3. Use the command `composer card list -c
[ ](https://chat.hyperledger.org/channel/composer?msg=WsrfHHQvznYXYMpHe) @JP parse the cookie header and get it from there eg. ```var cookieObject = JSON.stringify(res.socket.parser.incoming.headers.cookie);
var accessToken = '"access_token';
var access_token_value = methods.getCookie(accessToken,cookieObject);
console.log("access token generated======"+access_token_value);``` and possibly eval it [as a script in Postman](https://stackoverflow.com/questions/47580353/how-do-i-incorporate-my-node-js-file-into-a-postman-request) if need be
[ ](https://chat.hyperledger.org/channel/composer?msg=Ynw86PPXSHuEMe6bw) @mahoney1 Thanks for the suggestion, I will test and let you know the result :)
[ ](https://chat.hyperledger.org/channel/composer?msg=vv9NEmdrnvfLKLKKH) @rthatcher Thank you for such a valuable information, i knew that the card can be used once, but i did know about the mechanism behind that. but still i am confused about the way we should handle JWT and access tokens from a web application like angular. this is how i implmented it:```
```
[ ](https://chat.hyperledger.org/channel/composer?msg=vv9NEmdrnvfLKLKKH) @rthatcher Thank you for such a valuable information, i knew that the card can be used once, but i did know about the mechanism behind that. but still i am confused about the way we should handle JWT and access tokens from a web application like angular. this is how i implmented it:
1. i call the callback api using the bearer taken i got from an identity provider.
2. i call the card wallet import using the access token cookie return fro the first step
3. i call the other rest server apis
this is wokring for me, but if the first JWT expired after lets say two weeks, then i need to login to my identity provider again getting a new JWT. and i need to call the call back again. but in this case shoult i import the card again or will it be detected based on the claims in the JWT?
@rrishmawi I have not tested with JWT, but there is a blog post that other community members have found useful: https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
There are also quite a few Stack Overflow Q&As for JWT on Composer REST server.
[ ](https://chat.hyperledger.org/channel/composer?msg=ghoKhAhbvxcLkSver) @rthatcher I edit my post above if you can read it again, sorry for that.
Hello. I am looking for a way to represent a big decimal like ethereum, 18 decimal places. Is it possible in Composer ?
@umlspec - should be . Javascript has only one kind of number, and javascript numbers are always 64-bit Floating Point. In the model, you can define a field as `Double` and store it there eg. `var y = 123e18; myasset.dblfield = y ; myassetReg.update(myasset)` blah
@rthatcher I am getting the following error when trying to start the network, I have 3 peers two on one machine and one peer on different machine. error is
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to receive commit notification from 192.168.1.55:9051 for transaction '8c56bac90a9f6ef76a3f204df10bd17f4eba40cfc2bb12b5faeca9c95a1ae19d' within the timeout period
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=i6JRjkncaYeuaK7fz) @rthatcher pls explain the reason for getting the above error
@ShaikSharuk The likely issue is the peer containers hosted on different machine doesn't know how to communicate with each other, sounds like your Fabric isn't configured correctly - you should check the docker logs for more info
@ShaikSharuk The likely issue is the peer containers hosted on different machine doesn't know how to communicate with each other, sounds like your Fabric isn't configured correctly - you should check the docker logs for more info - see also [this blog](https://medium.com/hyperlegendary/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-bfbe4e38b6c6) for more info
[ ](https://chat.hyperledger.org/channel/composer?msg=okqii7L2Ptc6Hp8BE) @mahoney1 I have followed the above article to create multiple peers on multiple machines, but I was struck with the above error, can you please explain in detail about the error
@ShaikSharuk - see item 8 (in relation to REQUEST_TIMEOUT issue) of https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues for explanation if the timeout needs increasing (assuming your Fabric is configured correctly) and what files needs to change/actions to perform, to take effect
@ShaikSharuk - see item 8 in this table (in relation to REQUEST_TIMEOUT issue) of knowledge wiki -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues for explanation if the timeout needs increasing (assuming your Fabric is configured correctly) and what files needs to change/actions to perform, to take effect
Has joined the channel.
Hi I am trying to use composer-explorer to create a peerAdmin card so I can install / start a business network. So far I try: Create Business Network Card -> Choose HLFv12 ->Fill in Create A BN Card (adding peer and order certs) -> Fill in and add PeerAdmin cert and key (got from byfn) -> choose admin card -> choose Peer Admin role and Channel Admin role. After I get to here the 'Create' button is grayed out and there's nothing I can do to continue. Help?
[ ](https://chat.hyperledger.org/channel/composer?msg=rxHF4gXsTaBDtrpne) Hello, i came by a couple of weeks ago because i was having trouble importing cards through the javascript api. After i imported the card with "adminConnection.importCard(idCardName, idCardData)" i couldn't open playground and got the error described below.
Since i finally figured out the problem, i'm explaining it on the off chance that someone else has the same problem.
In my case (in ubuntu), after importing the card, for some reason the card's folder in "/.composer" and the files inside it were not being created with the right permissions to be read by anyone other than my user. So i had to use "chmod 777" for the card folder and the files inside it and the problem was fixed. Now i just have to figure out how to make it so that the files are created with the right permissions after importing the card lol
Hey chat, some tips on how to run a multi host network? Is swarm the only way?
Hi @davidkel, as an improvement/best practice we should use connection pools for managing connections for BusinessNetworkConnection to the HL Fabric. Any node library already developed by composer community for this? And does "composer-rest-server" use this pooling mechanism?
Will Hyperledger Composer be updated to Fabric 1.3?
Will Hyperledger Composer be updated to be compatible with Fabric 1.3?
[ ](https://chat.hyperledger.org/channel/composer?msg=3xb8KcKEjjyzdxQ38) @labcoinpoc I was able to store objects using the `getNativeAPI`. However, to query them properly I need to create an `index` in CouchDB, because `getQueryResult` generates a query using `limit`. How can I include my `index.json` in my composer project?
I tried to create a `META-INF/statedb/couchdb/indexes/myindex.json` in the project, but it's not package by `composer archive create`. The BNA does not include this dir.
I believe if you write your queries using the Composer Query Language then indexes are created automatically. Why do you want to write the queries using the couch db syntax? Are there features missing in CQL?
@gauravgiri I'm not aware of one, sorry. I don't know what the composer rest server does exactly I would have to go through the code. Ideally you would have 1 connection per card and reuse the same connection for that specific card (as it represents the fabric it connects to and the identity to connect with). connections that are idle for a period of time would be worth disconnecting if your application was going to maintain multiple simultaneous connections to a fabric on behalf of different users. In your case I think it's worth just starting with having a single business network connection and sharing it across requests
@joaquimpedrooliveira If you plan to use the getNativeAPI and getQueryResult approach then one way to get indexes would be to create a dummy query file (.qry) which will be used by composer to generate indexes. Unfortunately there is no way to provide your own indexes via composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=uT7N9wSdJ9JTGtMfC) @davidkel Thank you, however, i think we should not be using a single businessnetworkconnection for concurrent/parallel requests for a business application with high throughput requirements, as they could interfere with one another, or would they not interfere? If they can interfere, some sort of connection pool needs to be established. For this earlier, issue https://github.com/hyperledger/composer/issues/1953 was opened, but closed for no action. Also, with composer-rest-server, I was referring to the https://www.npmjs.com/package/composer-rest-server, think it is from composer community itself, which is a loopback application providing REST API on composer model.
[ ](https://chat.hyperledger.org/channel/composer?msg=cd355myBpGcmhFywP) @dselman Does composer query support aggregate queries like count?
Has joined the channel.
Hi all. I'm doing the basic tutorial (https://hyperledger.github.io/composer/v0.16/tutorials/developer-tutorial.html) and everything is fine until I get to running this command: `composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network`
Which comes back with *Unknown arguments: card, businessNetworkName, runtime, install*
Any ideas of what could be going on here? Thank you so much!
@mahoney1 @rthatcher How can i make cards been encrypted when used with a multi-user REST server environment?
[ ](https://chat.hyperledger.org/channel/composer?msg=KMth7dK79e44BShpQ) @mahoney1 I have checked the docker container logs of peer 2 on the second machine then I found out the following error " 18 chttp2_transport.cc:1098] Received a GOAWAY with error code ENHANCE_YOUR_CALM and debug data equal to "too_many_pings"
2018-10-25T06:12:42.169Z ERROR [lib/handler.js] Chat stream with peer - on error: "Error: 14 UNAVAILABLE: EOF\n at createStatusError (/usr/local/src/node_modules/grpc/src/client.js:64:15)\n at ClientDuplexStream._emitStatusIfDone (/usr/local/src/node_modules/grpc/src/client.js:270:19)\n at ClientDuplexStream._receiveStatus (/usr/local/src/node_modules/grpc/src/client.js:248:8)\n at /usr/local/src/node_modules/grpc/src/client.js:804:12"
" . can you please explain what the error is??
Hi, is it possible to create participant dynamically through transaction and also access rules ?
@gauravgiri I am not aware that requests on the same connection would interfere with each other, but they will use the same tcp sockets when communicating with fabric, so a connection pool for the same identity may be necessary if you only ever plan to have a single identity interacting with the fabric, but that is something you need to do performance testing on to establish.
Issue https://github.com/hyperledger/composer/issues/1953 was raised to highlight that it was not a good pattern to be create a connection, use once, then disconnect for long running applications such as servers and as such I believe we were hoping to get community support to provide experiences in differing environments to help put together examples based on feedback. It probably got closed because we never got much community support around this.
I was aware you were talking about the composer-rest-server but I am not familiar with it's implementation (not something I did any development on) so in order to understand what it does I would need to review the source code.
@gauravgiri I am not aware that requests on the same connection would interfere with each other, but they will use the same tcp sockets when communicating with fabric, so a connection pool for the same identity may be necessary if you only ever plan to have a single identity interacting with the fabric, but that is something you need to do performance testing on to establish.
Issue https://github.com/hyperledger/composer/issues/1953 was raised to highlight that it was not a good pattern to be create a connection, use once, then disconnect for long running applications such as servers and as such I believe we were hoping to get community support to provide experiences in differing environments to help put together examples based on feedback. It probably got closed because we never got much community support around this.
I was aware you were talking about the composer-rest-server but I am not familiar with it's implementation (not something I did any development on) so in order to understand what it does I would need to review the source code.
Composer query language doesn't support aggregation such as `count`
@davidkel can you help me convert this composer query into a couchdb query `query clicksBetweenCreatedDates {
description: "Retrives Clicks according to the date they were created"
statement:
SELECT org.adverce.Clicks
WHERE (( createdAt >= _$val ) AND ( createdAt <= _$val2))
}
`
@davidkel can you help me convert this composer query into a couchdb query ```
query clicksBetweenCreatedDates {
description: "Retrives Clicks according to the date they were created"
statement:
SELECT org.adverce.Clicks
WHERE (( createdAt >= _$val ) AND ( createdAt <= _$val2))
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=a4AugeduvMmhaZcNC) @davidkel pls respond
@ShaikSharuk This is a known issue with fabric, the peer should restart the chaincode container when the next request comes in, and the chaincode container only terminates if it has been idle for a period of time, so the fabric should recover
[ ](https://chat.hyperledger.org/channel/composer?msg=LrmXp7SxKRtkrsBEh) @tahaf10 The Apache CouchDB doc is a good reference with plenty of examples: http://docs.couchdb.org/en/stable/api/database/find.html
[ ](https://chat.hyperledger.org/channel/composer?msg=pRv4Xhs2Liv9bG7nN) @aphoniko It looks like you are using the *v0.16* version of the tutorial, with v0.19 or v0.20 version of Composer. Try the latest version of the tutorial for v0.20 of Composer: https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
[ ](https://chat.hyperledger.org/channel/composer?msg=qaHGv7tznTcmiNbbb) @rubi_1432 Participants can be created in Transactions in the same way as Assets.
ACL rules cannot be created in Transactions, but you can create a Rule that runs code to dynamically evaluate access.
Hi everyone.
I have two questions :
1) when a transaction is wubmitted, can we see the data in the logs of a peer ?
2) Is it possible to decode the couchDB without a card ?
This is for security/confidentiality reason.
@rthatcher Thanks :relaxed:
@rthatcher I have one more question about running multiple user mode for the REST server. If i am using one machine then how can i export environmental variables for each user ? for example ```export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "REPLACE_WITH_CLIENT_ID",
"clientSecret": "REPLACE_WITH_CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}' ``` or is it enough to use cards for credentials verification, i am confused. TIA
[ ](https://chat.hyperledger.org/channel/composer?msg=6pCNENSb9MwHsnZw9) @CorentinPacaud 1) I don't think you see the Transaction details in the Peer log, but you will see them in the ChainCode container (the container with the long name starting "dev"). Maybe they are visible in the ChainCode container with just the default DEBUG setting enabled. I would suggest you check your own logs aft3r submitting test transactions :-)
2) CouchDB does not require a Card to access it directly - and therefore the ACLs can be bypassed by connecting directly to CouchDB. As a minimum you would want to Password protect the CouchDB, and block the port to all connections except the Peer using it.
log hyperledger.PNG
@rthatcher this is the log of the peer. We can see the data.
[ ](https://chat.hyperledger.org/channel/composer?msg=oydtFLguEtZaqjaFc) @rthatcher can you help me with this issue, I am not able to fix it
[ ](https://chat.hyperledger.org/channel/composer?msg=FNfMNWb9BgNgck8YC) @rubi_1432 the clientID and clientSecret are only used to 'allow' your application (composer rest server) to work with GitHub - they are not authenticating that user.
When you set up Multi-user REST server, and hit the login URL users will be redirected to Github to login.
Can I suggest that you try the Google oauth Multi User tutorial - making sure at the end that you use 2 or 3 different Google IDs in Different Browsers as this is the best simulation of real multi user mode. https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
(I suggest Google because the tutorial is complete and well tested, and it is easier to follow than the Github 'example' in the main documentation.)
@rthatcher So, can we ensure confidentiality without using channel ? Can org1 see in its peer the transactions data (or data in the couchdb) of org2 if they are in the same channel.
@rthatcher So, can we ensure confidentiality without using channel ? Can org1 see in its peer the transactions data (or data in the couchdb) of org2 if they are in the same channel ?
@rthatcher Thanks a lot i definitely will. :)
[ ](https://chat.hyperledger.org/channel/composer?msg=FnxDfTFFpEkxNoZmv) @CorentinPacaud The data in the channel will appear in the CouchDB (state database) for all organisations sharing the channel.
Depending on your Endorsement policy and your connection.json for the ID submitting the transaction, the transaction data may or may not appear in the peer log. Debug settings are likely to influence what transaction data is seen in the logs.
@CorentinPacaud see also the Fabric docs https://hyperledger-fabric.readthedocs.io/en/release-1.3/whatis.html#privacy-and-confidentiality and this article for more info https://developer.ibm.com/tutorials/cl-blockchain-private-confidential-transactions-hyperledger-fabric-zero-knowledge-proof/
@CorentinPacaud - you have been quiet in the channel recently, have you seen this news? https://lists.hyperledger.org/g/composer/message/125
Yes, I was quiet since June because, I was working on a project using other tech (Etherum/parity) but one of our potential customer need clear answer about confidentiality as it will be financial data between shareholders, bank, etc.
@rthatcher I'll read the doc.
Hi everyone, the tutorial for deploy composer across multiple org (https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org) is obsolete isn't it ?
Composer find many error, as "x-type" not declared (it is "type") ...
@Nihcep no, not obsolete - its for multi-org tutorial based on Fabric 1.1 environments (if that older runtime version is still needed, for whatever prevailing reason) - so you should first check your Fabric matches that tutorial (if you're doing the tutorial) - the connection profile format for a 1.1 environment is shown in the tutorial and also here -> https://hyperledger.github.io/composer/v0.19/reference/connectionprofile
@rthatcher @davidkel where we mention the network admin information, bcoz this is the information we pass to composer network start command. pls help to find the credentials of network admin
Hey, still me.
An other question ;
The endorsment policy is defined in the network level or the org level ?
thx
[ ](https://chat.hyperledger.org/channel/composer?msg=aNCPzM6pixueR59qA) @CorentinPacaud Endorsement Policy is set for the Business Network.
[ ](https://chat.hyperledger.org/channel/composer?msg=aNCPzM6pixueR59qA) @CorentinPacaud Endorsement Policy is set for the Business Network. (When the network is started or upgraded)
ok thx.
Has joined the channel.
what's the difference between an identity being "ISSUED" vs "ACTIVATED"?
@JSilva ACTIVATED is when a participant **uses** an identity eg to submit a transaction (or connecting to the business network with issued his/her business network card) to the deployed business network for the first time ; ISSUED means its not yet used - see https://hyperledger.github.io/composer/latest/managing/participantsandidentities for more info
fyi here: Composer Community call in 5 mins - Join from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community
Hi @mahoney1 , I followed your article to add org3 to existing multi-org network and it went well, many thanks! I have a question regarding the paragrapgh below:
If you add the endorsement policy, as per above - then you would need to provide the 3-org connection profile in each of their cards (ie delete the REMAINING 2-org business network cards (eg `kcoe@trade-network`, `jdoe@trade-network` from first tutorial etc) from the credentials wallet and recreate them - to reflect the 3-Org setup, using the new connection profile.
I have updated the endorsement policy with 3 orgs. But the old business card for jdoe@trade-network(with 2 orgs connection profile) is still working, still can submit transaction after I upgraded the endorsement policy with 3 orgs. Is this correct behavior?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=tQRMGKoRMnP778pMq) @rthatcher Thank you so much @rthatcher, that makes sense, I'll try it out later today.
[ ](https://chat.hyperledger.org/channel/composer?msg=tQRMGKoRMnP778pMq) @rthatcher Thank you so much, that makes sense, I'll try it out later today.
@WenXingWang shouldn't be the case if the endorsement policy (which is Fabric config metadata) was upgraded properly - Q: was the submitted transaction a query transaction (in which case it would work as-is) - or did you submit a 'create asset' or 'update asset' (say) which should require 3 orgs to endorse??
@WenXingWang shouldn't be the case if the endorsement policy (which is Fabric config metadata) was upgraded properly following the composer network install (of the new bna version) and composer network upgrade (with the new endorsement policy) - Q: was the submitted transaction a query transaction (in which case it would work as-is) - or did you submit a 'create asset' or 'update asset' (say) which should require 3 orgs to endorse?? Also you could issue an identity / create a single 3-org card - and see if that works or fails
@mahoney1 I submitted a `create asset` transaction. How can I now check again to confirm that the policy was upgraded successfully? The upgrade command ran successfully and returned successful message.
If all the existing BN cards need to be updated when new organization join and become the endorsing member, that will be an issue if we have massive participants, right?
[ ](https://chat.hyperledger.org/channel/composer?msg=vXKggwq7FLKGAcypA) @WenXingWang check your peer logs but you can check your network version with `composer network ping` (has the 'upgraded' version in your output, a la https://hyperledger.github.io/composer/latest/reference/composer.network.ping.html )
[ ](https://chat.hyperledger.org/channel/composer?msg=vXKggwq7FLKGAcypA) @WenXingWang check your peer for upgraded chaincodes (ie new version) but you can check your network version with `composer network ping` (check that it has the 'upgraded' version in your output, a la https://hyperledger.github.io/composer/latest/reference/composer.network.ping.html )
Has joined the channel.
I'm currently running through the Composer Part 3 tutorial: https://www.ibm.com/developerworks/cloud/library/cl-deploy-interact-extend-local-blockchain-network-with-hyperledger-composer/index.html
I'm currently running through the Composer Part 3 tutorial: https://www.ibm.com/developerworks/cloud/library/cl-deploy-interact-extend-local-blockchain-network-with-hyperledger-composer/index.html and am getting a Card Not Found error. Anyone have any links to the appropriate resource to help get this sorted? I am able to create a PeerAdmin@h1fv1 card, but in the cli it won't recognize it. Guessing has to do with v0.15 and my working in v0.20?
Has joined the channel.
@rthatcher Can we have multiple channels for different machines or nodes in our network, which we have already defined in connection file, in hyperledger composer ? Is there any documentation or any kind of tutorial for that ? TIA
@rthatcher And i cannot seem to start *composer-rest-server* after restarting machines ```docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ~/.composer:/home/composer/.composer \
--name rest \
--network composer_default \
-p 3000:3000 \
myorg/composer-rest-server
``` It gives following error ```docker: Error response from daemon: Conflict. The container name "/rest" is already in use by container "1662e7d0525472d0173d033e79910c5ae024eb571532ecc940da10bcb627fb38". You have to remove (or rename) that container to be able to reuse that name.
``` These are the logs from *docker logs rest* ```
2018-10-26T06:40:53: PM2 log: Launching in no daemon mode
2018-10-26T06:40:53: PM2 log: App [composer-rest-server:0] starting in -fork mode-
2018-10-26T06:40:53: PM2 log: App [composer-rest-server:0] online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
(node:17) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Discovering the Returning Transactions..
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Registering named query: selectCommodities
Registering named query: selectCommoditiesByExchange
Registering named query: selectCommoditiesByOwner
Registering named query: selectCommoditiesWithHighQuantity
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
Treating unknown remoting type "file" as "any"
Treating unknown remoting type "file" as "any"
Unhandled error for request GET /api/system/identities: Error: Authorization Required
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/lib/application.js:389:21
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/lib/model.js:353:7
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:464:16
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3888:9
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:473:16
at iteratorCallback (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:1064:13)
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:969:16
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3885:13
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:449:17
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/role.js:331:21
at args.(anonymous function) (/home/composer/.npm-global/lib/node_modules/pm2/node_modules/event-loop-inspector/index.js:138:29)
at _combinedTickCallback (internal/process/next_tick.js:132:7)
at process._tickCallback (internal/process/next_tick.js:181:9)
2018-10-26T06:57:53: PM2 log: Stopping app:composer-rest-server id:0
2018-10-26T06:57:53: PM2 log: 0 application online, retry = 3
2018-10-26T06:57:53: PM2 log: App [composer-rest-server:0] exited with code [0] via signal [SIGINT]
2018-10-26T06:57:53: PM2 log: pid=17 msg=process killed
2018-10-26T06:57:54: PM2 log: PM2 successfully stopped
```
@rthatcher And i cannot seem to start *composer-rest-server* after restarting machines ```docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ~/.composer:/home/composer/.composer \
--name rest \
--network composer_default \
-p 3000:3000 \
myorg/composer-rest-server
docker: Error response from daemon: Conflict. The container name "/rest" is already in use by container "1662e7d0525472d0173d033e79910c5ae024eb571532ecc940da10bcb627fb38". You have to remove (or rename) that container to be able to reuse that name.``` These are the logs from *docker logs rest* ```
2018-10-26T06:40:53: PM2 log: Launching in no daemon mode
2018-10-26T06:40:53: PM2 log: App [composer-rest-server:0] starting in -fork mode-
2018-10-26T06:40:53: PM2 log: App [composer-rest-server:0] online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
(node:17) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Discovering the Returning Transactions..
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Registering named query: selectCommodities
Registering named query: selectCommoditiesByExchange
Registering named query: selectCommoditiesByOwner
Registering named query: selectCommoditiesWithHighQuantity
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
Treating unknown remoting type "file" as "any"
Treating unknown remoting type "file" as "any"
Unhandled error for request GET /api/system/identities: Error: Authorization Required
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/lib/application.js:389:21
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/lib/model.js:353:7
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:464:16
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3888:9
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:473:16
at iteratorCallback (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:1064:13)
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:969:16
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3885:13
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:449:17
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/role.js:331:21
at args.(anonymous function) (/home/composer/.npm-global/lib/node_modules/pm2/node_modules/event-loop-inspector/index.js:138:29)
at _combinedTickCallback (internal/process/next_tick.js:132:7)
at process._tickCallback (internal/process/next_tick.js:181:9)
2018-10-26T06:57:53: PM2 log: Stopping app:composer-rest-server id:0
2018-10-26T06:57:53: PM2 log: 0 application online, retry = 3
2018-10-26T06:57:53: PM2 log: App [composer-rest-server:0] exited with code [0] via signal [SIGINT]
2018-10-26T06:57:53: PM2 log: pid=17 msg=process killed
2018-10-26T06:57:54: PM2 log: PM2 successfully stopped
```
@rthatcher And i cannot seem to start *composer-rest-server* after restarting machines ```docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ~/.composer:/home/composer/.composer \
--name rest \
--network composer_default \
-p 3000:3000 \
myorg/composer-rest-server
docker: Error response from daemon: Conflict. The container name "/rest" is already in use by container "1662e7d0525472d0173d033e79910c5ae024eb571532ecc940da10bcb627fb38". You have to remove (or rename) that container to be able to reuse that name.``` These are the logs from *docker logs rest* ```
2018-10-26T06:40:53: PM2 log: Launching in no daemon mode
2018-10-26T06:40:53: PM2 log: App [composer-rest-server:0] starting in -fork mode-
2018-10-26T06:40:53: PM2 log: App [composer-rest-server:0] online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
(node:17) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Discovering the Returning Transactions..
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Registering named query: selectCommodities
Registering named query: selectCommoditiesByExchange
Registering named query: selectCommoditiesByOwner
Registering named query: selectCommoditiesWithHighQuantity
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
Treating unknown remoting type "file" as "any"
Treating unknown remoting type "file" as "any"
Unhandled error for request GET /api/system/identities: Error: Authorization Required
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/lib/application.js:389:21
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/lib/model.js:353:7
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:464:16
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3888:9
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:473:16
at iteratorCallback (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:1064:13)
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:969:16
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3885:13
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:449:17
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/role.js:331:21
at args.(anonymous function) (/home/composer/.npm-global/lib/node_modules/pm2/node_modules/event-loop-inspector/index.js:138:29)
at _combinedTickCallback (internal/process/next_tick.js:132:7)
at process._tickCallback (internal/process/next_tick.js:181:9)
2018-10-26T06:57:53: PM2 log: Stopping app:composer-rest-server id:0
2018-10-26T06:57:53: PM2 log: 0 application online, retry = 3
2018-10-26T06:57:53: PM2 log: App [composer-rest-server:0] exited with code [0] via signal [SIGINT]
2018-10-26T06:57:53: PM2 log: pid=17 msg=process killed
2018-10-26T06:57:54: PM2 log: PM2 successfully stopped```
@rthatcher And i cannot seem to start *composer-rest-server* after restarting machines ```docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ~/.composer:/home/composer/.composer \
--name rest \
--network composer_default \
-p 3000:3000 \
myorg/composer-rest-server
docker: Error response from daemon: Conflict. The container name "/rest" is already in use by container "1662e7d0525472d0173d033e79910c5ae024eb571532ecc940da10bcb627fb38". You have to remove (or rename) that container to be able to reuse that name.``` These are the logs from *docker logs rest*
```2018-10-26T06:40:53: PM2 log: Launching in no daemon mode
2018-10-26T06:40:53: PM2 log: App [composer-rest-server:0] starting in -fork mode-
2018-10-26T06:40:53: PM2 log: App [composer-rest-server:0] online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
(node:17) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Discovering the Returning Transactions..
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Registering named query: selectCommodities
Registering named query: selectCommoditiesByExchange
Registering named query: selectCommoditiesByOwner
Registering named query: selectCommoditiesWithHighQuantity
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
Treating unknown remoting type "file" as "any"
Treating unknown remoting type "file" as "any"
Unhandled error for request GET /api/system/identities: Error: Authorization Required
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/lib/application.js:389:21
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/lib/model.js:353:7
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:464:16
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3888:9
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:473:16
at iteratorCallback (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:1064:13)
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:969:16
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/node_modules/async/dist/async.js:3885:13
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/acl.js:449:17
at /home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback/common/models/role.js:331:21
at args.(anonymous function) (/home/composer/.npm-global/lib/node_modules/pm2/node_modules/event-loop-inspector/index.js:138:29)
at _combinedTickCallback (internal/process/next_tick.js:132:7)
at process._tickCallback (internal/process/next_tick.js:181:9)
2018-10-26T06:57:53: PM2 log: Stopping app:composer-rest-server id:0
2018-10-26T06:57:53: PM2 log: 0 application online, retry = 3
2018-10-26T06:57:53: PM2 log: App [composer-rest-server:0] exited with code [0] via signal [SIGINT]
2018-10-26T06:57:53: PM2 log: pid=17 msg=process killed
2018-10-26T06:57:54: PM2 log: PM2 successfully stopped
Hi experts, I've a 2-org network following the setup of multi-org tutorial but hosting in 2 machines. I tried to upgrade the network. I installed bna files in each org using its respective PeerAdmin card. I then upgraded the network by one of the Admin card with the same endorsement policy.
I got below error after upgrading.
`Error: Peer 10.148.0.7:8051 has rejected transaction '689bb60ee3db2ce204c3efca727bb9ec95259fbcd4abfa1027edea4d073dce08' with code ENDORSEMENT_POLICY_FAILURE
Command failed`
Hi experts, I've a 2-org network following the setup of multi-org tutorial but hosting in 2 machines. I tried to upgrade the network. I installed bna files in each org using its respective PeerAdmin card. I then upgraded the network by one of the Admin card with the same endorsement policy.
I got below error after upgrading.
`Error: Peer 10.148.0.7:8051 has rejected transaction '689bb60ee3db2ce204c3efca727bb9ec95259fbcd4abfa1027edea4d073dce08' with code ENDORSEMENT_POLICY_FAILURE
Command failed`
I look forward to your advice. Thanks.
Org2:
2018-10-26 07:37:51.501 UTC [endorser] callChaincode -> INFO 6c0b [][0e912591] Entry chaincode: name:"lscc"
2018-10-26 07:37:51.529 UTC [lscc] executeInstall -> INFO 6c0c Installed Chaincode [ebl] Version [0.1.9] to peer
2018-10-26 07:37:51.529 UTC [endorser] callChaincode -> INFO 6c0d [][0e912591] Exit chaincode: name:"lscc" (28ms)
2018-10-26 07:40:37.529 UTC [endorser] callChaincode -> INFO 6c0e [composerchannel][fbdfb5d5] Entry chaincode: name:"lscc"
2018-10-26 07:41:33.240 UTC [endorser] callChaincode -> INFO 6c0f [composerchannel][fbdfb5d5] Exit chaincode: name:"lscc" (55711ms)
2018-10-26 07:41:36.353 UTC [gossip/privdata] StoreBlock -> INFO 6c10 [composerchannel] Received block [1685] from buffer
2018-10-26 07:41:36.361 UTC [committer/txvalidator] Validate -> INFO 6c11 [composerchannel] Validated block [1685] in 7ms
2018-10-26 07:41:36.438 UTC [cceventmgmt] HandleStateUpdates -> INFO 6c12 Channel [composerchannel]: Handling LSCC state update for chaincode [ebl]
2
Org1:
2018-10-26 07:37:31.674 UTC [endorser] callChaincode -> INFO 8412 [][de0a05bd] Entry chaincode: name:"lscc"
2018-10-26 07:37:31.699 UTC [lscc] executeInstall -> INFO 8413 Installed Chaincode [ebl] Version [0.1.9] to peer
2018-10-26 07:37:31.700 UTC [endorser] callChaincode -> INFO 8414 [][de0a05bd] Exit chaincode: name:"lscc" (25ms)
2018-10-26 07:37:41.690 UTC [endorser] callChaincode -> INFO 8415 [][e91cbfa2] Entry chaincode: name:"lscc"
2018-10-26 07:37:41.700 UTC [endorser] callChaincode -> INFO 8416 [][e91cbfa2] Exit chaincode: name:"lscc" (10ms)
*2018-10-26 07:37:41.701 UTC [endorser] ProcessProposal -> ERRO 8417 [][e91cbfa2] simulateProposal() resulted in chaincode name:"lscc" response status 500 for txid: e91cbfa24bc732baf9835e29a81ae174c1d2c5c1c9496b46c36b0dc65fc55fe3*
2018-10-26 07:37:58.126 UTC [endorser] callChaincode -> INFO 8418 [composerchannel][33c6cdb5] Entry chaincode: name:"cscc"
2018-10-26 07:37:58.126 UTC [endorser] callChaincode -> INFO 8419 [composerchannel][33c6cdb5] Exit chaincode: name:"cscc" (1ms)
2018-10-26 07:38:24.242 UTC [endorser] callChaincode -> INFO 841a [composerchannel][52309931] Entry chaincode: name:"cscc"
2018-10-26 07:38:24.242 UTC [endorser] callChaincode -> INFO 841b [composerchannel][52309931] Exit chaincode: name:"cscc" (0ms)
2018-10-26 07:39:57.669 UTC [endorser] callChaincode -> INFO 841c [composerchannel][a38c769b] Entry chaincode: name:"cscc"
2018-10-26 07:39:57.669 UTC [endorser] callChaincode -> INFO 841d [composerchannel][a38c769b] Exit chaincode: name:"cscc" (0ms)
2018-10-26 07:40:37.481 UTC [endorser] callChaincode -> INFO 841e [composerchannel][3861ba60] Entry chaincode: name:"cscc"
2018-10-26 07:40:37.482 UTC [endorser] callChaincode -> INFO 841f [composerchannel][3861ba60] Exit chaincode: name:"cscc" (0ms)
2018-10-26 07:40:37.515 UTC [endorser] callChaincode -> INFO 8420 [composerchannel][fbdfb5d5] Entry chaincode: name:"lscc"
2018-10-26 07:40:42.164 UTC [endorser] callChaincode -> INFO 8421 [composerchannel][fbdfb5d5] Exit chaincode: name:"lscc" (4648ms)
2018-10-26 07:41:36.347 UTC [gossip/privdata] StoreBlock -> INFO 8422 [composerchannel] Received block [1685] from buffer
2018-10-26 07:41:36.362 UTC [committer/txvalidator] Validate -> INFO 8423 [composerchannel] Validated block [1685] in 13ms
2018-10-26 07:41:36.435 UTC [cceventmgmt] HandleStateUpdates -> INFO 8424 Channel [composerchannel]: Handling LSCC state update for chaincode [ebl]
2
I want to show the block hashes on my web app. Using the system/historian API, I can see only the transactionId
can you help on how I can retrieve the block hashes
@ArchanGanguly you might want to ask on #fabric (Composer's Historian doesn't have APIs for Fabric Block data) - this may also help -> https://stackoverflow.com/questions/52045794/get-block-info-using-hyperledger-fabric-java-sdk FYI
Hi everyone, got a problem installing my business network, when running the `composer network start`, got `REQUEST_TIMEOUT` then if i re-run it, got ` 2 UNKNOWN: premature execution - chaincode (my-basic-sample:0.2.6-deploy.0) launched and waiting for registration` I think the problem come because composer do not wait enought time ? If i'm right, is there any way to define composer timeout ?
@rubi_1432 the last bit of the message 'The container name "/rest" is already in use by container "1662e7d0525472d0173d033e79910c5ae024eb571532ecc940da10bcb627fb38". You have to remove (or rename) that container to be able to reuse that name.' explains your error I would say
[ ](https://chat.hyperledger.org/channel/composer?msg=WDW2BWhTWokHgNyQj) @rubi_1432 Business networks are deployed to a **single** channel, business network **cards** that are used to interact with that business network will thus only interact with a single channel. You can however have multiple channels (ie a Fabric concept) - and business networks on different channels - but you would need the correct business network cards (with appropriate connection profiles) to reflect this.
@jonlee300 - with the same endorsement policy? Can you post 1) the output of `docker ps` and 2) your composer version (`composer -v`)
@jonlee300 - with the **same** endorsement policy? Or updated one? Can you post 1) the output of `docker ps` and 2) your composer version (`composer -v`)
@jonlee300 - with the **same** endorsement policy? Or updated one? Can you post 1) the output of `docker ps` and 2) your composer version `composer -v`
Ps : I'm using fabric v1.1.0 and Composer v0.19.16 (same result with v0.18)
[ ](https://chat.hyperledger.org/channel/composer?msg=AQ3dZxyJpaAeoiSiS) @mahoney1 2) v0.20.2
@adrianbberg I'd imagine (but you didn't say which card or which step) its because you didn't import the appropriate business network card (?? `admin@iot-perishable-network` of `shipper@iot-perishable-network` ?? ) and then tried to use that card in one of the tutorial's steps. Suggest to retrace your steps (you can review your cmdline history too?) and see what's missing
@adrianbberg I'd imagine (but you didn't say which card or which step) its because you didn't import the appropriate business network card (?? `admin@iot-perishable-network` of `shipper@iot-perishable-network` etc ?? ) and then tried to use that card in one of the tutorial's steps. Suggest to retrace your steps (you can review your cmdline history too?) and see what's missing
@jonlee300 I'd imagine (but you didn't say which card or which step) its because you didn't import the appropriate business network card (?? `admin@iot-perishable-network` of `shipper@iot-perishable-network` etc ?? ) - probably the admin card created from the `composer network start` command at a guess - and then tried to use that card in one of the tutorial's steps. Suggest to retrace your steps (you can review your cmdline history too?) and see what's missing - I also notice that tutorial uses `composer network deploy` - which is obsolete (its using Composer v0.15 - so you may want to look at the [Developer tutorial](https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial) for guidance on correct commands (eg `composer network install` instead of `deploy` etc etc)
@jonlee300 I'd imagine (but you didn't say which card or which step) its because you didn't import the appropriate business network card (?? `admin@iot-perishable-network` of `shipper@iot-perishable-network` etc ?? ) - probably the admin card I suspect, created from the `composer network start` command at a guess (see comments below) - and then tried to use that card in one of the tutorial's steps. Suggest to retrace your steps (you can review your cmdline history too?) and see what's missing - I also notice that tutorial uses `composer network deploy` - which is obsolete (its using Composer v0.15 - so you may want to look at the [Developer tutorial](https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial) for guidance on correct commands (eg `composer network install` instead of `deploy` then `composer card import` of admin card then `composer network ping` then `composer network start` etc etc) -
machine 1 "docker ps"
machine 2 "docker ps"
ok - so the problem is you're using Fabric 1.3 but the current Composer version 0.20.2 uses Fabric 1.2.1 (so you need that) - see https://github.com/hyperledger/composer/releases - also, the tutorial has the script which pulls 1.2.1
images in its tutorial sequence (obviously you've built your own custom multi-machine network) https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@jonlee300 ok - so the problem is you're using Fabric 1.3 but the current Composer version 0.20.2 uses Fabric 1.2.1 (so you need that) - see https://github.com/hyperledger/composer/releases - also, the tutorial has the script which pulls 1.2.1
images in its tutorial sequence (obviously you've built your own custom multi-machine network) https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@Nihcep - yes see https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer (answer section on variables to be set, which required a docker-compose stop and start (not up and down pls note) to take effect. The full description is item 8 in this table here https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues
[ ](https://chat.hyperledger.org/channel/composer?msg=SXmfJgv7BHXmk8WFy) @mahoney1 thank you.
the reason why I used 1.3 is because I had bad experience in v1.2.0 and thus I try 1.3 instead.
the reason why I customise the network is because 2 organizations will have their own server and thus cannot deploy in same VM.
@mahoney1 Thank, will try it :)
@jonlee300 ok cool - use Fabric 1.2.1
[ ](https://chat.hyperledger.org/channel/composer?msg=JSakFnFeAFy4RCTAN) @mahoney1 thank you very much and I'll try it and revert to the group.
Paul, just just confirm that your adding 3 org medium article, the command to upgrade is using PeerAdmin.
composer network upgrade -n trade-network -V 0.1.15 -o /tmp/composer/endorsement-policy.json --card PeerAdmin@byfn-network-org1
While in starting the network, the command with additional `"-A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem"`
@rthatcher Thanks i understand that but do i have to remove it again and go through the procedure again for creating it ? What i am confused is, how i can resume the network/environment after crash or accidental shutdown etc? We can start/resume images without restarting the network using *docker-compose start*. So what would be the approach in this case? I am using the right command for or it would be different in case of resuming services like *docker start* etc. TIA.
@rthatcher Thanks i understand that but do i have to remove it again and go through the procedure again for creating it ? What i am confused is, how i can resume the network/environment after crash or accidental shutdown etc? We can start/resume images without restarting the network using *docker-compose start*. So what would be the approach in this case? I am using the right command for it or it would be different in case of resuming services like *docker start* etc?. TIA.
```8312436687d0 dev-peer0.org1.example.com-trade-network-0.2.6-deploy.0-d3b352d19bf5c8ef9b891573276c2e72400361f249eca74373dc74b70261d9ba "/bin/sh -c 'cd /usr…" 3 hours ago Exited (0) 3 hours ago dev-peer0.org1.example.com-trade-network-0.2.6-deploy.0
36be708f16d3 ce15867eca63 "/bin/sh -c 'npm ins…" 3 hours ago Exited (1) 3 hours ago peaceful_tereshkova
d621be0b68b6 ce15867eca63 "/bin/sh -c 'npm ins…" 3 hours ago Exited (1) 3 hours ago lucid_bell
7f208dbf1235 mongo "docker-entrypoint.s…" 3 hours ago Exited (0) 3 hours ago ```
Above container are exited so how a user should resume/start ?
Running images/container ```CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1662e7d05254 myorg/composer-rest-server "pm2-docker composer…" 3 hours ago Up 8 minutes 0.0.0.0:3000->3000/tcp rest
9a16bfd8b444 hyperledger/fabric-peer:1.2.1 "peer node start" 3 hours ago Up 9 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
31f96ce45657 hyperledger/fabric-ca:1.2.1 "sh -c 'fabric-ca-se…" 3 hours ago Up 9 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
9ec5e055ee3f hyperledger/fabric-orderer:1.2.1 "orderer" 3 hours ago Up 9 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
588af08df448 hyperledger/fabric-couchdb:0.4.10 "tini -- /docker-ent…" 3 hours ago Up 9 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
```
@mahoney1 Ok, I tried with timeout set at 10min, don't work better... Any idea about the origin of the problem ?
`docker logs peer` display `container locked` and the nothing more until if failed
composer.png
(I'm now using compose v0.20.2 and Fabric 1.2)
@rubi_1432 as you can see from the REST server container logs, it does a discovery of the business network. If you've changed that, it should be stopped, removed and a new instance spun up, it can then go and discover the business network again (and without running into a conflict, assuming no other instances are running) - prior to that, I would suggest to do a composer network ping of your business network by name (see dev tutorial) with your admin card and then a composer network list to see its up and running correctly. Then you can spin up your REST server again.
[ ](https://chat.hyperledger.org/channel/composer?msg=9xxQtHWkmqumwETfp) @Nihcep do you mean Fabric 1.2.1 ? Because if not, you will need 1.2.1 specifically -> there is a bug in Fabric 1.2.0 FYI
[ ](https://chat.hyperledger.org/channel/composer?msg=9xxQtHWkmqumwETfp) @Nihcep do you mean Fabric 1.2.1 ? Because if not, you will need 1.2.1 specifically -> there is a bug in Fabric 1.2.0 FYI - would suggest to tear down your 1.2 environment, implement the appropriate TIMEOUTs as instructed, then when you start the network using the scripts, it should take effect
@mahoney1 Ok will try with 1.2.1
@mahoney1 If i try with *admin@trade-network* ```composer network ping -c admin@trade-network
The connection to the network was successfully tested: trade-network
Business network version: 0.2.6-deploy.0
Composer runtime version: 0.20.2
participant: org.hyperledger.composer.system.NetworkAdmin#admin
identity: org.hyperledger.composer.system.Identity#23d26586f937cf1fcd497b306b79285e8fa1a5d93cf5ce85d7fad3c448ae97b9
Command succeeded
```
But if i try it with restadmin@trade-network ```composer network ping -c restadmin@trade-network
Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
Command failed
```
What would be the cause of this ? Exited containers or else ? I haven't changed anything i have done everything according to tutorial but when i restarted my machine, i started my docker images as i used to do before but i am stuck with containers
What would be the cause of this ? Exited containers or else ? I haven't changed anything i have done everything according to tutorial but when i restarted my machine, i started my docker images as i used to do before but i am stuck with previous mentioned errors.
Removing all images and containers would work but in real environment that would not be optimal solution and
Removing all images and containers would work but in real environment that would not be optimal solution and data might get lost as it happens if we use *./stopFabric.sh*
@mahoney1 It's not better, It it may help, once the `composer network start` fail, `docker logs peer` display theses errors :
composer.png
@rubi_1432 you don't need to ping with restadmin card (it won't work) -the first ping is sufficient. You can use persistence to keep your cards/wallets persisted if you recycle the REST server container instance - see https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server.html
@Nihcep right, the timeout expired (again), so you may need to increase the value even more - I'm not sure why - are you behind a proxy?
@mahoney1 I'm not sure it is the problem, i'm connected with SSH on a remote server and the connection is maybe not the fastest but not the worst. I will anyway relaunch the process with 25min timeout, in the same time, I will try to install composer on the byfn network. Thank you :)
@mahoney1 Thank you. I think the problem is with mongodB, if anything different i have done in my machine is to not install it using ```npm install -g loopback-connector-mongodb
``` as it was not mentioned in this tutorial https://hyperledger.github.io/composer/v0.19/tutorials/google_oauth2_rest and i am receiving following errors so that might be the issue. ```o MongoClient.connect.
Connection fails: MongoNetworkError: failed to connect to server [mongo:27017] on first connect [MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017]
It will be retried for the next request.
MongoNetworkError: failed to connect to server [mongo:27017] on first connect [MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017]
```
@mahoney1 Thank you. I think the problem is with mongodB, if anything different i have done in my machine is to not install it using ```npm install -g loopback-connector-mongodb
``` as it was not mentioned in this tutorial https://hyperledger.github.io/composer/v0.19/tutorials/google_oauth2_rest and i am receiving following errors so that might be the issue. ``` o MongoClient.connect.
Connection fails: MongoNetworkError: failed to connect to server [mongo:27017] on first connect [MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017]
It will be retried for the next request.
MongoNetworkError: failed to connect to server [mongo:27017] on first connect [MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017]
```
@mahoney1 Thank you. I think the problem is with mongodB, if anything different i have done in my machine is to not install it using ```npm install -g loopback-connector-mongodb``` as it was not mentioned in this tutorial https://hyperledger.github.io/composer/v0.19/tutorials/google_oauth2_rest and i am receiving following errors so that might be the issue. ``` o MongoClient.connect.
Connection fails: MongoNetworkError: failed to connect to server [mongo:27017] on first connect [MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017]
It will be retried for the next request.
MongoNetworkError: failed to connect to server [mongo:27017] on first connect [MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017]
```
@mahoney1 Thank you. I think the problem is with mongodB, if anything different i have done in my machine is to not install it using ``` npm install -g loopback-connector-mongodb``` as it was not mentioned in this tutorial https://hyperledger.github.io/composer/v0.19/tutorials/google_oauth2_rest and i am receiving following errors so that might be the issue. ``` o MongoClient.connect.
Connection fails: MongoNetworkError: failed to connect to server [mongo:27017] on first connect [MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017]
It will be retried for the next request.
MongoNetworkError: failed to connect to server [mongo:27017] on first connect [MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017]
```
@mahoney1 Thank you. I think the problem is with mongodB, if anything different i have done in my machine is to not install it using *npm install -g loopback-connector-mongodb* as it was not mentioned in this tutorial https://hyperledger.github.io/composer/v0.19/tutorials/google_oauth2_rest and i am receiving following errors so that might be the issue. ``` o MongoClient.connect.
Connection fails: MongoNetworkError: failed to connect to server [mongo:27017] on first connect [MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017]
It will be retried for the next request.
MongoNetworkError: failed to connect to server [mongo:27017] on first connect [MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017]
```
I have followed tutorial https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server.html and now i am receiving following errors on *docker log -f rest* ```Connection fails: Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:803:34)
```
Is there a way to generate the .cto, .js, and .acl files from a .bna file, rather than the other way around?
@ColeBoudreau an existing bna, can simple be extracted - its a zip really - does that answer?
@ColeBoudreau an existing bna, can simply be extracted - its a zip really - does that answer?
Hey guys, is there any way to listen to an event emitted by composer on another machine?
yes, use Websockets for example - then just consume it from your application client (app or ws client or whatever) on the other machine. See more examples here -> https://stackoverflow.com/questions/52987236/how-to-get-notifications-in-user-applications/52987696#52987696more info https://www.kevinhoyt.com/2017/09/29/event-notifications-from-blockchain/ (example) and here (simpler) -> https://stackoverflow.com/questions/50848492/how-to-use-web-sockets-for-communication-between-angular-app-and-composer-rest-s or
**Chaincode update bug**
Sometimes when I trying to update chaincode, some containers have time to upgrade, while others do not. And then I have, for example, three containers with one version, and one with the other. Either one container that did not have time to upgrade, dies.
I have to re-install the Fabric network. How can I fix this?
Hi everyone, i'm using google oauth2.0 with my rest server. If i import a card and alter it's connection.json file using the "sed" command (as described here -> https://hyperledger.github.io/composer/v0.19/tutorials/google_oauth2_rest), then the only way to actually connect to my business network would be importing the card into a user's wallet (that has authenticated to the rest server using is google account). Is this correct? If so, does that mean that when using google oauth2.0 with rest i have to send the cards to the user while they still contain the enrollment secret and have not yet exchanged it for a certificate and key?
*importing the card into the user's wallet *and then connect to the business network from there*
**importing the card into the user's wallet *and then connect to the business network from there*
_importing the card into the user's wallet_ *and then connect to the business network from there*
cool, thank you @mahoney1, that saves a big headache :D
Was gonna have to use lambda *shudder*
**Chaincode update bug**
Sometimes when I trying to update chaincode, some containers have time to upgrade, while others do not. And then I have, for example, three containers with one version, and one with the other. Either one container that did not have time to upgrade, dies.
In this case, I have to install the Fabric network and business network again. It's not good. How can I fix this?
@JSilva correct given the REST server is containerized in the tutorial. Ordinarily you would build a card so that the nodes (eg in the tutorial its using the `sed so the docker containers can contact each other) can communicate - then export the card (ie with credentials rather than secret) - then that card can be imported into the user's REST API wallet, wherever the user intends to use it (once authenticated to the REST server) and they don't re-enroll with secret.
@VadimInshakov have you increased the timeouts (item 8 in the table see REQUEST_TIMEOUT) as shown https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues - ie both the docker-compose files and connection profile - they should be sync and the values should be correct (eg `CORE_CHAINCODE_STARTUPTIMEOUT=2400` with trailing 's' etc etc but no 's' in connection profiles - there may be some contention that consumes cycles so it doesn't complete the build of the containers in some circumstances etc.
@VadimInshakov have you increased the timeouts (item 8 in the table see REQUEST_TIMEOUT) as shown https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues - ie both the docker-compose files and connection profile - they should be sync and the values should be correct (eg `CORE_CHAINCODE_STARTUPTIMEOUT=2400s` with trailing 's' etc etc but no 's' in connection profiles - there may be some contention that consumes cycles so it doesn't complete the build of the containers in some circumstances etc.
@mahoney1
shouldn't there be a letter "s" here?
```
- CORE_CHAINCODE_STARTUPTIMEOUT=16000s
- CORE_CHAINCODE_EXECUTETIMEOUT=16000s
```
yes correct there should, so you're good :-)
Hey guys. When running composer rest server with `COMPOSER_APIKEY` to restrict access and `COMPOSER_WEBSOCKETS` to true, how does one authenticate to receive web socket events?
@vidor not sure that the apikey would restrict access the the event websocket of the rest server
@vidor not sure that the apikey would restrict access to the event websocket of the rest server
Has joined the channel.
Hi, when I "Deploy changes" from playground, all the participants disappear, but if I try to create them again (with the same participanId), a message says that they already exist. What can I do to display them again?
I create a business network architecture and deployed using composer channel; and developed angular front-end. After restarting my system fabric goes off, then after starting fabric the network is gone completely only the card is present. A connection using the card showing error """ Error: Error trying to ping. Error: make sure the chaincode first-network has been successfully instantiated and try again: getccdata composerchannel/first-network responded with error: could not find chaincode with name 'first-network' """. Please help for the problem to get a stable network.
[ ](https://chat.hyperledger.org/channel/composer?msg=JSakFnFeAFy4RCTAN) @mahoney1 Hi Paul, it works on 1.2.1. Thank you very much.
@labcoinpoc i was able to clear all the updating problem. It was through asyn await commands.
I am trying to make a post request via R using the httr package. I have written a code and then created the composer rest server from it. These are my details
Request URL : http://localhost:3000/api/nl.amis.registry.fruits
Body : {
"$class": "nl.amis.registry.fruits",
"Id": "9",
"name": "orange",
"description": "string",
"count": ""
}
First i have tried with the composer rest server. For my purpose, i needed the count to be blank and the value will be appended by another api call. I was able to make the transaction sucessfully with the count : "". This i was able to check in the test section of the composer playground. The remaining code works fine which appends the count variable later on. Now i am writing an R code to make similar transaction transaction through POST request. Here i am facing an error that "count cannot be blank" and returns with errror 422 Unprocessible entity. The content type i was used was "application/json". While using the "count":{} , the post request process fine and i am getting "count":[object Object] in the response. But the later on code which does the appending will do something like count:"[object Object],1" wherein I am expecting "count":"1". Everything works fine while using the test in composer playground but while trying to acess external via rest api is creating problem. Please help.
@labcoinpoc @mahoney1
I am trying to make a post request via R using the httr package. I have written a code and then created the composer rest server from it. These are my details
Request URL : http://localhost:3000/api/nl.amis.registry.fruits
`
Body: {
"$class": "nl.amis.registry.fruits",
"Id": "9",
"name": "orange",
"description": "string",
"count": ""
}
`
First, I have tried with the composer rest server. For my purpose, I needed the count to be blank and the value will be appended by another API call. I was able to make the transaction successfully with the *_count: ""_*. This I was able to check in the test section of the composer playground. The remaining code works fine which appends the count variable later on. Now I am writing an R code to make a similar transaction through POST request. Here I am facing an error that *"count cannot be blank"* and returns with error *422 Unprocessable entity*. The content type I was used was *"application/json"*. While using the *_"count":{}_* , the post request process fine and i am getting *_"count":[object Object] _*in the response. But the later on code which does the appending will do something like *_count:"[object Object],1"_* wherein I am expecting *_"count":"1"_*. Everything works fine while using the test in composer playground but while trying to access externally via rest API is creating the problem. Please help.
@labcoinpoc @mahoney1
Has joined the channel.
Hi Everyone,
Data is not showing in REST server API. It was showing before and showing errors this error to me
```
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "No peers available to query. last error was Error: 14 UNAVAILABLE: Connect Failed",
"stack": "Error: No peers available to query. last error was Error: 14 UNAVAILABLE: Connect Failed\n at HLFQueryHandler.queryChaincode (/home/kindle/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfqueryhandler.js:108:30)\n at
Fabric has stopped by itself
It was running from last 4 days.
It can be stopped by itself.
Is it possible?
Error: error getting endorser client for channel: endorser client failed to connect to peer0.org1.example.com:7051: failed to create new connection: context deadline exceeded
I had tried $ export FABRIC_START_TIMEOUT=180
But i coudnt resolve the error
Also tried
- CORE_CHAINCODE_STARTUPTIMEOUT=16000s - CORE_CHAINCODE_EXECUTETIMEOUT=16000s
Got error when i run $ ./startFabric.sh
Error: error getting endorser client for channel: endorser client failed to connect to peer0.org1.example.com:7051: failed to create new connection: context deadline exceeded
I had tried $ export FABRIC_START_TIMEOUT=180
But i coudnt resolve the error
Also tried
- CORE_CHAINCODE_STARTUPTIMEOUT=16000s
- CORE_CHAINCODE_EXECUTETIMEOUT=16000s
But problem still continues
Any solution pls
```
Hello everyone I am new to blockchain technology and am currently trying to learn using the hyperledger composer tutorials.
```
Hello everyone I am new to blockchain technology and am currently trying to learn using the hyperledger composer tutorials.
I am getting error while running the command.
composer network install --card PeerAdmin@hlfv1 --archiveFile sample.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
Please help me to resolve this.
Hi, friends, does Composer support private data in Fabric please?
@jonlee300 Sorry no it doesn't support private data
unanswered.png
[ ](https://chat.hyperledger.org/channel/composer?msg=TFXbvACEzDNPnL8bX) 1. What is 1. and 8. , and why they are using the same Connection name? Why it is required or what does it convey?
2. What are these two cards i.e. 2,3 and why they are required? Can't we have single of these?
3. What and why are these two UserId i.e. 4,5? When are are going to use them? Can't we have single of these?
4. Again Business network i.e. 6,7. What and why first is NONE and Second is tutorial-network?
5. Why 13. is not enabled and 14. is enabled.
6. What is the use of redundant network with same application deployed on two Organisation?
Source:
Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations)
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@anant706 The best advice I can give you is to not use composer playground with the byfn network. composer playground is not designed to connect and work with multi-organisational networks. You should use it only to get started and as a testing tool working either with the browser connection or connecting to a simple fabric with a single org such as fabric-dev-servers.
Hi, we have added a npmrc file and also set the starup time out to 2400 seconds with composer v0.19 and fabric 1.1.0 however we still have a request timeout issue. Any suggests how to fix or debug this?
we are doing a multi-org on a multi-machine setup
on google cloud
any help appreciated
[ ](https://chat.hyperledger.org/channel/composer?msg=wALuEMjo7PvqrBWeA) @davidkel i got your point ..... but can you clear my doubts.
@sooraj-citta The communications between app and composer rest server are just http requests, if your app sends exactly same request as the web interface of rest server does, it should work.
Another way is adding `optional` to the `count` property in cto file. `optional` property will not be checked during initialization.
The Swagger does not show the queries of the business network. I am able to execute queries from within the transaction processor function.
@anant706 I've provided detail in your stackoverflow question
[ ](https://chat.hyperledger.org/channel/composer?msg=KN5ALwdpjmrdJaFQW) @ruairih Are you seeing errors with the `composer network start` command? What errors do you see in the peer container logs?
[ ](https://chat.hyperledger.org/channel/composer?msg=5JAcDQ2HLgD98zzBP) @mrudav.shukla Queries should appear in the swagger.json. (I have just tested in Composer v0.20.2) Can you see them in the Explorer?
What version of Composer do you have?
[ ](https://chat.hyperledger.org/channel/composer?msg=DgTrJDtWRXPDAC8FW) @Techievena hi there, it sounds like you've not started your Fabric environment so can't install the business network package on your peer - you can check with `docker ps` and the environment is started up - see Step Four of https://hyperledger.github.io/composer/latest/installing/development-tools
[ ](https://chat.hyperledger.org/channel/composer?msg=4EFLSEJZFnNounzbq) @anant706 the 'name' is a connection profile name and in that tutorial is a connection profile common to both b/n participants (playground tries to reflect this). The Peer Admin card is a special role for installing one or more business networks (but the peer admin card is not participating IN the business network, hence its blank). You can read more about a peer admin (it doesn't have to be the card name 'PeerAdmin' that's just for dev tutorials) in the Fabric docs (its a fabric role) or its covered here -> https://hyperledger.github.io/composer/latest/business-network/bnd-deploy As. davidkel, Playground is not designed for using witih multi-org, but giving you some answers nonetheless.
[ ](https://chat.hyperledger.org/channel/composer?msg=4EFLSEJZFnNounzbq) @anant706 the 'name' is a connection profile name and in that tutorial is a connection profile common to both b/n participants (playground tries to reflect this). The Peer Admin card is a special role for installing one or more business networks (but the peer admin card is not participating IN the business network, hence its blank). You can read more about a peer admin (it doesn't have to be the card name 'PeerAdmin' that's just for dev tutorials) in the Fabric docs (its a fabric role) or its covered here -> https://hyperledger.github.io/composer/latest/business-network/bnd-deploy As. davidkel, Playground is not designed for using witih multi-org, but giving you some answers nonetheless - I see you raised a Stack Overflow, which FYI has also been answered https://stackoverflow.com/questions/53033634/answer-to-the-hyperledger-components
[ ](https://chat.hyperledger.org/channel/composer?msg=5u5ugKYH8DrBxPjjG) @rthatcher I am using 0.19.13 as I am using Fabric 1.1.
how does composer save identities in fabric? as states in the blockchain or as files in filesystem?
@rthatcher @davidkel how to see the no of blocks and block height in hyperledger composer
Has joined the channel.
What is the correct way to use channels in composer? iḿ trying to create a channel with 2 organisations(orgA,orgB), orgA should be able to transfer assets to orgB and orgB should be able to see the history of the asset. The problem is i cannot get the transfering of the asset working how do you go about this in composer>
[ ](https://chat.hyperledger.org/channel/composer?msg=bgd7BuSJZSQernwxL) @rthatcher @davidkel pls respond
@ShaikSharuk you can use the block explorer.
but you will need to install it first
Hi, in playground, after I set permission.acl, the participants has no response in clicking "view record" under "All transactions" tab. However, when I use REST server, they can get access the whole Historian Records. Is below code appropriate to make sure only invokingParticipant can view its respective Historian records?
/**
* Rules for Historian record
*/
rule ParticipantReadHistorianThemselvesOnly {
description: "Only invoking can read"
participant(t): "org.hyperledger.composer.system.Participant"
operation: READ
resource(v): "org.hyperledger.composer.system.HistorianRecord"
condition: (v.participantInvoking.getFullyQualifiedIdentifier() == t.getFullyQualifiedIdentifier())
action: ALLOW
}
Thank you, Experts.
.@jonlee300 that seems to be because you aren't starting the REST server in multi user mode. If you start it in single user mode the permissions won't work
@jonlee300 that seems to be because you aren't starting the REST server in multi user mode. If you start it in single user mode the permissions won't work
see https://hyperledger.github.io/composer/v0.16/integrating/enabling-multiuser
@rthatcher Thanks for the reply, no, there doesnt appear to be any errors, just timesout after 40 min
[ ](https://chat.hyperledger.org/channel/composer?msg=szANyy2gxMnY3orjo) @Rochendiil I use github OAuth and enable mutli-user mode. All other rules work fine (for those self-defined) but only Historian not working properly.
[ ](https://chat.hyperledger.org/channel/composer?msg=HhwqDsZNqRK968iZK) @Rochendiil have one channel (one ledger) where the business network is started on. The 2-org multi-org tutorial does exactly what you're requesting: (change an asset owner - and you can see this in Historian (can query via REST APIs etc). participants from org A, B interact and transfer ownership as 'ordinary' blockchain application users . https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=HhwqDsZNqRK968iZK) @Rochendiil have one channel (one ledger) where the business network is started on. The 2-org multi-org tutorial does exactly what you're requesting: (change an asset owner - and you can see this in Historian (can query via REST APIs etc). participants from org A, B interact and transfer ownership as 'ordinary' blockchain application users ). https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=Ymkg6inArEwBLRj9n) @Rochendiil other than block explorer is there any other option available. are there any api available from system chaincode to get the block height??
A follow-up question, the HistorianRecord I retrieved in REST server is different from what I have seen in playground.
Playground contains the input JSON plus tranactionID.
Rest server returns more info like participantInvoking and identityInvoking but lack of the input JSON. How can I get the same data in REST server please?
[ ](https://chat.hyperledger.org/channel/composer?msg=ueHu7ZHZfpR6c8c35) @ShaikSharuk you can ask on #fabric (these are fabric terms). You can use Fabric SDK, this can be of assistance https://stackoverflow.com/questions/48728806/hyperledger-fabric-get-block-info-fabric-go-sdk
[ ](https://chat.hyperledger.org/channel/composer?msg=C3HWZ9YDJSwgWYeye) @giacomo.minighin in wallets usually - see more here -> https://hyperledger.github.io/composer/latest/business-network/cloud-wallets and read the docs for architectural elements such as where you can store, how to persist, high availability etc etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=C3HWZ9YDJSwgWYeye) @giacomo.minighin in wallets usually - see more here on options -> https://hyperledger.github.io/composer/latest/business-network/cloud-wallets and read the docs for architectural elements such as where you can store, how to persist, high availability etc etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=8Nxf4BPfFyiTEhGmL) Resolved. Found out that I've to use the transaction ID to enquire the respective transaction to get the input JSON. Thanks.
@mahoney1 Thank you I will try that.
[ ](https://chat.hyperledger.org/channel/composer?msg=ssFX3i7CZgEpJDine) I further found a starting ACL rule exists:
/**
* System and Network Admin access rules
*/
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
If I remove this rule, the user cannot access the system at all.
Has joined the channel.
@mahoney1 Is there any clear documentation on this tutorial? I can't seem to understand how all the scripts interact with eachother.
[ ](https://chat.hyperledger.org/channel/composer?msg=eP35q5RuejHgwyHnC) @mahoney1 Thank you.
@Rochendiil the **Composer** steps in the tutorial use colour-coded sections and the tutorial describes the Composer elements and config metadata reasonably well IMO. As for the **Fabric** BYFN ("build your first network") 2-org network and Fabric elements, that is a sample described in the Hyperledger Fabric docs (ie the 2-org fabric blockchain network sample that the Composer tutorial is based on, albeit you use the specific byfn clone as described in the multi-org tutorial itself). That BYFN network is described here -> https://hyperledger-fabric.readthedocs.io/en/release-1.2/build_network.html (eg it describes the tools, scripts and crypto config elements for the underlying fabric itself).
[ ](https://chat.hyperledger.org/channel/composer?msg=PzPm3468XzvS59ZDE) @rthatcher @rthatcher Sorry I couldn't reply earlier. No I haven't added something like that. I used same network .bna file for default startfabric.sh. I worked without problem. I'm getting this problem only when I using the multiple computers blockchain network.
Hi all, I have developed a client app which connects to the rest server. I have enabled multiuser, and now want to set up the client app to be be able to use this. I am using github as my passport authorization, but how do I get the access token from the cookie and into the client app so I can send it with my service requests?
Hey all. I am having an issue where the api generated with composer-rest-server does not reflect changes made to the cto files. I am tearing down fabric network between builds. Any artifacts I should be removing other than bna file?
[ ](https://chat.hyperledger.org/channel/composer?msg=9xNNMuhomper5Fhr2) @snowy13 you should not need to teardown the fabric after a model change.
Are you using `composer network upgrade` to upgrade the running Network?
After the composer network upgrade, you need to restart the Composer REST server so that it can discover the upgraded network details.
[ ](https://chat.hyperledger.org/channel/composer?msg=xi7merYPB37SaLztv) @ColeBoudreau there should be a cookie returned called something like 'access token'. The value of the cookie is longer than the actual token shown on the explorer view, so you will need to extract the token from the cookie.
[ ](https://chat.hyperledger.org/channel/composer?msg=trmu3PRed3kDkpQmu) @rthatcher Agreed. I am using older workflow. If I teardown and restart, shouldn't any changes be reflected?
[ ](https://chat.hyperledger.org/channel/composer?msg=qWxosejTadjTKF54e) @snowy13 can I suggewst you have a look through the Queries tutorial, which covers the steps to upgrade a Business Network from Step Three: https://hyperledger.github.io/composer/latest/tutorials/queries
Thanks @rthatcher, I will and adapt to new workflow . But I still don't understand why deploying to a supposed "fresh" environment generates an API that does not reflect what is currently in CTO files. That's why I'd like to know if new artifacts have been introduced recently in composer, as I didn't have this issue with earlier version.
@snowy13 do you delete your chaincode images when you create your fresh environment ?
@snowy13 do you delete your chaincode dockewr images when you create your fresh environment ?
@snowy13 do you delete your chaincode docker images when you create your fresh environment ?
[ ](https://chat.hyperledger.org/channel/composer?msg=QAombQBSKhS2G32HM) @davidkel I stop them and remove them, but I don't delete the actual images.
@snowy13 Then that could be the reason that you don't see business network changes. Fabric tries to optimise and only build a chaincode container image when it thinks a new one is required, so if you use the same version number and business network name, fabric could decide to re-use an existing image rather than building a new one
[ ](https://chat.hyperledger.org/channel/composer?msg=x8WqmJSrwoAD2YBdT) @davidkel That explains it thanks. Even though the new workflow makes sense, changing a line of code should not mean changing the version number in package.json.
@ColeBoudreau there is a tutorial here -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc that describes what you need to do
@snowy13 Unfortunately the upgrade procedure is meant for production, system test type environments and not for doing day to day development type work.
The developer experience of Composer focused around the embedded runtime through unit tests and cucumber rather than direct interaction with a real fabric.
Has joined the channel.
Folks, we have loaded about 20,000 transactions into HL Fabric, and when I use the playground now to look at "All Transaction" I get a crash..Looks like we are out of JS Heap in node.js. ANybody seen this ?
[ ](https://chat.hyperledger.org/channel/composer?msg=FevzBwnWy8rrTyjmF) Folks, we have loaded about 20,000 transactions into HL Fabric, and when I use the playground now to look at "All Transaction" I get a crash..Looks like we are out of JS Heap in node.js. ANybody seen this ?
Security context: 0xcbea0a5ee1
```
```
Can we change the response body of rest API? or can we code in script file (js) to generate customize response from rest API (Loop-back)
I'm experiencing problem with asserting relationships in my cucumber tests.
In the transaction processor function when creating a new asset with an 'owner' relationship...
```js
const factory = getFactory();
const example = factory.newResource('com.example.model', 'Example', tx.exampleId);
var currentParticipant = getCurrentParticipant();
example.owner = factory.newRelationship('com.example.model', 'Owner', currentParticipant.id);
await exampleRegistry.addAll([example]);
```
Asserting with this cucumber step:
```
Then I should have the following assets of type com.example.model.Example
| id | owner |
| 1 | com.example.model.Owner#TEST |
```
I'm getting the following `AssertionError`:
```diff
+ expected - actual
"$class": "com.example.model.Example"
"id": "1"
- "owner": "resource:com.example.model.Owner#TEST"
+ "owner": "resource:com.example.model.Owner#com.example.model.Owner#TEST"
```
Any pointers to see where I'm going wrong would be greatly appreciated! Cheers.
Has joined the channel.
Has joined the channel.
Hi all, I have a general questions about the roadmap. Are there any estimates with regards to the production-ready release?
@zetiksce I would suggest you read this post
https://lists.hyperledger.org/g/composer/message/125
while run the command "./createPeerAdminCard.sh", there was an error: /home/fabric/fabric-dev-servers/fabric-scripts/hlfv12/createPeerAdminCard.sh: line 159: 7470 Bus error "${HL_COMPOSER_CLI}" card import --file /tmp/PeerAdmin@hlfv1.card
There are no Business Network Cards available.
How to solve the problem. Thanks in advance.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ygmoWRynccyxkaGMW) :confused:
How would I write a query that only returns results that are between two specific dates?
Can we change the response body of rest API? or can we code in script file (js) to generate customize response from rest API (Loop-back)
Something like this? Ex: query propertiesByDate {
description: "Returns only properties between two specific dates"
statement:
SELECT org.example.posts
WHERE (Date.now() > _$StartDate AND Date.now() < _$EndDate)
}
Has joined the channel.
How can I create multiple channels and access and differentiate ledger per channel?
can you please suggest which ordering service can be used in between kafka or solo for higher throughput and performance ?
[ ](https://chat.hyperledger.org/channel/composer?msg=rdLp8SNWRLwhQSAs5) @adnanabbasktt This Q&A from Stack Overflow should explain the problem for you: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
So you will need to delete the card (`composer card delete`) then start again - but after that you should know how to stop/start.
[ ](https://chat.hyperledger.org/channel/composer?msg=rkKQaYnnL6vqM44Bt) @rthatcher pls help
[ ](https://chat.hyperledger.org/channel/composer?msg=MurDADGMcSYFaDW4f) @ronaldlong46 In your WHERE clause you need to specify something like `_$SearchStartValue` for the value of the first parameter you supply, and compare it with a field/property from your `org.example.posts` asset.
Have you seen the Queries tutorial which covers these aspects of parameters and properties? : https://hyperledger.github.io/composer/latest/tutorials/queries
[ ](https://chat.hyperledger.org/channel/composer?msg=MurDADGMcSYFaDW4f) @ronaldlong46 In your WHERE clause you need to specify something like `_$SearchStartValue` for the value of the first parameter you supply, and compare it with a field/property from your `org.example.posts` asset, and then similar for the second parameter.
Have you seen the Queries tutorial which covers these aspects of parameters and properties? : https://hyperledger.github.io/composer/latest/tutorials/queries
[ ](https://chat.hyperledger.org/channel/composer?msg=XcE55kaMDjonsbTbB) @Mounikak Creating a Fabric with Multi channels is really a question for the #fabric channel and Fabric documentation.
Composer connects to one channel at a time via the Business Network cards - so from a Composer perspective, when the Fabric is running correctly with all the channels established and the peers joined to them, then you create a connection profile and a Business Network card to connect with Composer.
@rthatcher can you please tell me how to access ledger data instead of writing query file to access history in composer. Is there any other way to access ledger and differentiate each peer ledger with an identity?
[ ](https://chat.hyperledger.org/channel/composer?msg=rkKQaYnnL6vqM44Bt) @ShaikSharuk Higher throughput and performance suggests plans for a production deployment - Composer is not suitable for a production platform going forward.
Please see this announcement: https://lists.hyperledger.org/g/composer/message/125
For performance issues about Fabric I would ask in the #fabric channel, I would suggest asking in the #fabric-orderer for specific orderer questions.
[ ](https://chat.hyperledger.org/channel/composer?msg=PaXGSDuDaN7As3hj5) @rthatcher @rthatcher can you please tell me how to access ledger data instead of writing query file to access history in composer. Is there any other way to access ledger and differentiate each peer ledger with an identity?
[ ](https://chat.hyperledger.org/channel/composer?msg=PaXGSDuDaN7As3hj5) @rthatcher can you please tell me how to access ledger data instead of writing query file to access history in composer. Is there any other way to access ledger and differentiate each peer ledger with an identity?
[ ](https://chat.hyperledger.org/channel/composer?msg=FevzBwnWy8rrTyjmF) @MaheshBalan_Pravici may be a memory leak, may want to raise an issue attaching logs and full description. But the salient point is Playground is a dev/test playround tool, not really for looking at production level loads. Suggest to look at using the REST APIs (for example) for that.
[ ](https://chat.hyperledger.org/channel/composer?msg=CknQgnyfYs5CEwp9J) @kingpasan yes, see https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions and examples there for annotating your functions to return the type of data you require from a request/post etc
@fmjbs see ready made example in the Composer sample networks here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/fund-clearing-network/features/2.CreateBatch.feature#L63 for an asset with relationship (asset in this case)
Hi How to build block explorer
I got the following error:
TypeError: Cannot read property 'size' of undefined
at Platform.initialize (/volume2/geth1/blockchain-explorer/app/platform/fabric/Platform.js:54:48)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=keioefxrTBWm6s4Yy) @Techie This sounds like a question for the #hyperledger-explorer channel
I have scenario , where one asset needs to be updated twice in a single transaction method call. Say asset1 is sending 2$ to asset3 and asset2 is sending 2$ to asset3. I wrote a for loop and called update method . But asset3 updates as 2$ instead of 4$
how to handle it
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=rDsJCH7KfjCiZkjJv) @pradeeppadmarajaiah within a Transaction, you can't read updated data that is written within the transaction, so I would think you need to update objects in memory, and then just write once at the end of your transaction.
I have a chaincode installed and bunsiness network running, for which I specified endorsement policy.
Is there a way I can find out what is endorsement policy for the network if I lose the endorsement json somehow.
Has left the channel.
@mahoney1
**Update bug**
I already wrote earlier that sometimes not all containers have time to be updated (chaincode upgrade). Sometimes the chaincode container just dies. I wanted to find a way to solve this problem. I tried to restart a dead container, install chaincode on it, run the `upgrade` for one peer only. But I only get dying containers again, and then an `access denied` error. Is it possible to somehow restart a died chaincode container?
@mahoney1
**Chaincode upgrade bug**
I already wrote earlier that sometimes not all containers have time to be updated (chaincode upgrade). Sometimes the chaincode container just dies. I wanted to find a way to solve this problem. I tried to restart a dead container, install chaincode on it, run the `upgrade` for one peer only. But I only get dying containers again, and then an `access denied` error. Is it possible to somehow restart a died chaincode container?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZRcmsdeoWLnTu83w8) @Techie you might want to ask on #fabric as its a fabric question
@VadimInshakov you can `composer network ping` a previously running business network container (periodically) and it should resume as a running container, all things equal etc ?
@VadimInshakov you can `composer network ping` (periodically) a previously running business network container and it should resume as a running container, all things equal etc ?
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=9xQe2nBdya7uDDNp6) @mahoney1 when I ping first organization, all things are ok. But when I ping second organization, which have one died chaincode container and one running, I get error:
```
Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: error starting container: Error processing tar file(exit status 1): write /usr/local/src/node_modules/pug-code-gen/README.md: no space left on device
Command failed
```
Sorry if I misunderstood you.
[ ](https://chat.hyperledger.org/channel/composer?msg=3k6XdnkNT7K5YL9T6) @VadimInshakov @VadimInshakov `no space left on device` - might be the reason for continual death !
[ ](https://chat.hyperledger.org/channel/composer?msg=3k6XdnkNT7K5YL9T6) @VadimInshakov `no space left on device` - might be the reason for continual death !
[ ](https://chat.hyperledger.org/channel/composer?msg=BiKqoBi7gYra7fEAv) @mahoney1 oh, really, you right!
@mahoney1 now, after ping, I have error: `REQUEST TIMEOUT`
anyone can help with this simple problem i am facing https://stackoverflow.com/questions/53067366/how-to-get-participant-from-registry-by-email-id-when-identifier-is-userid
[ ](https://chat.hyperledger.org/channel/composer?msg=G96fhwAyeMLdoxyKF) @davidkel Thanks. I went straight to API testing. Serves me right to have issues :P
@davidkel plz answer : https://stackoverflow.com/questions/53033634/answer-to-the-hyperledger-components#comment93032335_53040731
@anant706 The business network deployed in the tutorial was not designed to provide organisational separation, it's a simple sample business network. The purpose of the multi-org tutorial is to demonstrate the operational requirements of composer on a multi-org fabric setup.
ok..
@davidkel
1. when we say two Peer nodes in Org1, what does it mean?
2. Does two peer have identical code and central one Database... i.e. a particular type of Distributed model
3. If answer of 2 is YES, how they are communicating and operating behind. Any link or ref?
Has joined the channel.
@anant706 An organisation can own as many peers as they need/require. A peer participates in a channel and a channel has it's own unique ledger and world state. The peer will maintain an exact copy of the ledger and world state, an organisation can have more than 1 peer participate in a channel for redundancy reasons for example. Other orgs peers will also participate in a channel as this is a shared ledger between organisations. I would suggest you read the hyperledger fabric docs at https://hyperledger-fabric.readthedocs.io/en/release-1.3/ and would suggest asking questions about fabric on one of the fabric channels as you will find the fabric experts there and this channel is only for composer specific questions.
I am on Ubuntu 18.04 LTS Bionic
node v8.12.0
npm 5.6.0
curl -O https://hyperledger.github.io/composer/latest/prereqs-ubuntu.sh
threw the error that bionic is not supported
I edited the file and added 'bionic' to bypass
Then tried to do npm install -g composer-cli
Errored out at
node-pre-gyp ERR! Tried to download(403): https://storage.googleapis.com/grpc-precompiled-binaries/node/grpc/v1.10.1/node-v64-linux-x64-glibc.tar.gz
what am i doing wrong...
[ ](https://chat.hyperledger.org/channel/composer?msg=rYnf2fgq8fK68Wwxr) @mahoney1 @mahoney1 Thanks for your reply. We are finding the same issue with the REST API's also. Same crash signature.
@MaheshBalan_Pravici and how much memory in Gb is available in your setup? what does the output of `top` screenshot particular in terms of `free` memory ? Wouldn't you As a temporary measure you might use something like `NODE_OPTIONS=--max-old-space-size=8192` before starting the apps etc
@humbleprogammer these are the supported platforms -> https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html and also note in particular the python version. The last error is a failure to find the appropriate pre-compiled binaries
Hello everyone!
I have a business network running with the composer rest server and a front-end based on the agular framework. I want to limit the access of a given participant based on his credentials and the rules defined in the ACL file. However, I don't know how can I restrict the menu options for the authorized participant. For example, a patient can't access the prescription form of a doctor. The angular app was generated before the rules of the ACL. Is there any way to use the ACL file to generate the options of a given participant. Or should I customize the angular app code to restrict the menu options?
Has joined the channel.
what is happening to the cli-composer 0.20? impossible to install
Has joined the channel.
@danilojodas you would almost certainly implement this menu authorization / routing in your Angular app and devise what your security goals are there. The business network is running on the blockchain network. Your users will use a business network card (appropriate to the logged in user as you allude to) to access the B/Network and be subject to the runtime access control rules in the runtime business network (so your application user participant is restricted per the rules etc). It would be architecturally more prudent to define your authorization/access control strategy (for your application and its menus), at the application level, however you derive it or the attributes/roles that govern what is available to whom.
@danilojodas you would almost certainly implement this menu authorization / routing in your Angular app and devise what your security goals are there. The business network is running on the blockchain network. Your users will use a business network card (appropriate to the logged in user as you allude to) to access the B/Network and be subject to the runtime access control rules in the runtime business network (so your application user participant is restricted per the ACL rules in the business network itself etc). It would be architecturally more prudent to define your authorization/access control strategy (for your application and its menus), at the application level, however you derive it or the attributes/roles that govern what is available to whom.
@AlexanderCollins are you getting install failures ? The install guide is here -> https://hyperledger.github.io/composer/latest/installing/development-tools.html `npm install -g composer-cli` will get you the current version `v0.20.3` assuming you have internet access (ie to get to the npm registry) and not blocked by proxy etc.
Has joined the channel.
Has joined the channel.
hi all, dumb question, how do people normally code collaborate on a hyperledger project when using composer/composer playground?
i want to check in the project directory into a git repo for example
and ask devs to use the playground
but it looks like playground doesn't use project directories, it just uses an bna to import and doesn't write anything back to disk
maybe another way of asking, is playground a good environment to develop the code? are people just copying the code they develop back to disk through copy and paste?
[ ](https://chat.hyperledger.org/channel/composer?msg=uteNCP3STMCzoFX7Q) Yes I have gone through the docs, but didn't see a way of filtering by date or if that is possible with the query language. I was doing Date.now() as an example. So I guess my question is, does the query language allow you to filter by date/time? @rthatcher
@m_hari Playground is not an ide and isn't something you would use to perform development of a business network. It exists to get started with learning how to write a business network and to experiment with it using the test tab to understand the behaviour. I would recommend using VSCode and the hyperledger composer extension for doing what you require.
thanks!
Thank you @mahoney1 !
@ronaldlong46 - should be able to do something like this in your [read-only transaction processor function](https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions) eg ```var now = new Date();
var dateString = "2018-01-01T10:00Z"; //DateTime
var mydate = new Date(dateString);
var q1 = businessNetworkConnection.buildQuery('SELECT org.hyperledger.composer.system.HistorianRecord ' + 'WHERE (transactionTimestamp < _$justnow)' AND (transactionTimestamp > _$fromdate));
return businessNetworkConnection.query(q1,{justnow:now, fromdate:mydate});``` building a dynamic query in the transaction itself, but you could equally build it in your query file (.qry)
@ronaldlong46 - should be able to do something like this in your [read-only transaction processor function](https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions) eg a historian query ```var now = new Date();
var dateString = "2018-01-01T10:00Z"; //DateTime
var mydate = new Date(dateString);
var q1 = businessNetworkConnection.buildQuery('SELECT org.hyperledger.composer.system.HistorianRecord ' + 'WHERE (transactionTimestamp < _$justnow)' AND (transactionTimestamp > _$fromdate));
return businessNetworkConnection.query(q1,{justnow:now, fromdate:mydate});``` building a dynamic query in the transaction itself, but you could equally build it similarly in your query file (.qry)
@ronaldlong46 - should be able to do something like this in your [read-only transaction processor function](https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions) eg a historian query ```var now = new Date();
var dateString = "2018-01-01T10:00Z"; //DateTime
var mydate = new Date(dateString);
var q1 = buildQuery('SELECT org.hyperledger.composer.system.HistorianRecord ' + 'WHERE (transactionTimestamp < _$justnow)' AND (transactionTimestamp > _$fromdate));
return businessNetworkConnection.query(q1,{justnow:now, fromdate:mydate});``` building a dynamic query in the transaction itself, but you could equally build it similarly in your query file (.qry)
@ronaldlong46 - should be able to do something like this in your [read-only transaction processor function](https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions) eg a historian query ```var now = new Date();
var dateString = "2018-01-01T10:00Z"; //DateTime
var mydate = new Date(dateString);
var q1 = buildQuery('SELECT org.hyperledger.composer.system.HistorianRecord ' + 'WHERE (transactionTimestamp < _$justnow)' AND (transactionTimestamp > _$fromdate));
return businessNetworkConnection.query(q1,{justnow:now, fromdate:mydate});``` building a dynamic query in the transaction itself, but you could equally build it similarly in your query file (.qry) ps. new Date() is non-deterministic code if you're committing transactions (as opposed to just query, read-only TPs)
Thanks @mahoney1 , was able to resolve the issue by changing to ubuntu 16.04 LTS & downgrading node to v6.x
@humbleprogammer np - do note that Composer is only supported on node >=v8.9.x AND < 9.x
@humbleprogammer np - do note that Composer is only supported on node versions >=v8.9.x AND < 9.x
yes but now if you install prereqs
it auto installs 10.3
so have to downgrade
[ ](https://chat.hyperledger.org/channel/composer?msg=ynLWjStKPaiWvzfnA) @mahoney1 @mahoney1 we have about 64 GB in the box. I am trying to figure out how the chaincode container inherits the container properties. For example, the chaincode container comes up always with a memory limit of 2 GB. For now, I am able to change it by doing a docker update -m command on the container. Also, how do I pass on environment variables (NODE_OPTIONS) to the chaincode container ?. I dont know where the container is picking up all the options from. Any pointers you may have is appreciated. I set the NODE_OPTIONS param for the userid which fires up all the hl components, but when I attach to the chaincode docker container and check its environment variable I dont see it inherited there.
@MaheshBalan_Pravici There isn't any way you can influence the amount of memory the node process running inside the chaincode container uses (ie you can't pass the NODE_OPTIONS env var to it)
@mahoney1 Thank you! That is exactly what I needed.
Another question. I have Hyperledger Fabric and Composer running on my server. I have the composer-rest-server running via a shell script and PM2. The problem: sometimes the server will reboot and when it does, PM2 will automatically start the shell script to turn the composer-rest-server back on. But it appears that Hyperledger Fabric and Composer don't automatically restart when the server boots back up. Anyway to get around this?
[ ](https://chat.hyperledger.org/channel/composer?msg=e7XBG7wWuETimW6Ce) @davidkel @davidkel Thanks for the reply. Do you know where the container picks up the docker memory limit of 2 GB ?. Its a bummer with not being able to pass NODE_OPTIONS since it is hitting the 1.7 GB limit and blowing up when I try to get all transactions (about 20000). THis happens when I do it via REST server or even thru playground "ALL Transactions"
@MaheshBalan_Pravici It's defined in the peer configuration, which if you have the default core.yaml for your peer setup, then it's in the bm section, for example
```
vm:
# Endpoint of the vm management system. For docker can be one of the following in general
# unix:///var/run/docker.sock
# http://localhost:2375
# https://localhost:2376
endpoint: unix:///var/run/docker.sock
# settings for docker vms
docker:
tls:
enabled: false
ca:
file: docker/ca.crt
cert:
file: docker/tls.crt
key:
file: docker/tls.key
# Enables/disables the standard out/err from chaincode containers for
# debugging purposes
attachStdout: false
# Parameters on creating docker container.
# Container may be efficiently created using ipam & dns-server for cluster
# NetworkMode - sets the networking mode for the container. Supported
# standard values are: `host`(default),`bridge`,`ipvlan`,`none`.
# Dns - a list of DNS servers for the container to use.
# Note: `Privileged` `Binds` `Links` and `PortBindings` properties of
# Docker Host Config are not supported and will not be used if set.
# LogConfig - sets the logging driver (Type) and related options
# (Config) for Docker. For more info,
# https://docs.docker.com/engine/admin/logging/overview/
# Note: Set LogConfig using Environment Variables is not supported.
hostConfig:
NetworkMode: host
Dns:
# - 192.168.0.1
LogConfig:
Type: json-file
Config:
max-size: "50m"
max-file: "5"
Memory: 2147483648
```
@MaheshBalan_Pravici It's defined in the peer configuration, which if you have the default core.yaml for your peer setup, then it's in the vm section, for example
```
vm:
# Endpoint of the vm management system. For docker can be one of the following in general
# unix:///var/run/docker.sock
# http://localhost:2375
# https://localhost:2376
endpoint: unix:///var/run/docker.sock
# settings for docker vms
docker:
tls:
enabled: false
ca:
file: docker/ca.crt
cert:
file: docker/tls.crt
key:
file: docker/tls.key
# Enables/disables the standard out/err from chaincode containers for
# debugging purposes
attachStdout: false
# Parameters on creating docker container.
# Container may be efficiently created using ipam & dns-server for cluster
# NetworkMode - sets the networking mode for the container. Supported
# standard values are: `host`(default),`bridge`,`ipvlan`,`none`.
# Dns - a list of DNS servers for the container to use.
# Note: `Privileged` `Binds` `Links` and `PortBindings` properties of
# Docker Host Config are not supported and will not be used if set.
# LogConfig - sets the logging driver (Type) and related options
# (Config) for Docker. For more info,
# https://docs.docker.com/engine/admin/logging/overview/
# Note: Set LogConfig using Environment Variables is not supported.
hostConfig:
NetworkMode: host
Dns:
# - 192.168.0.1
LogConfig:
Type: json-file
Config:
max-size: "50m"
max-file: "5"
Memory: 2147483648
```
you could try setting the environment variable `CORE_VM_DOCKER_HOSTCONFIG_MEMORY` to see if you can change it
@davidkel I am in fabric 1.1 is this in docker-compose.yml ? I have the following for my peer:
peer0.org1.example.com:
container_name: peer0.org1.example.com
image: hyperledger/fabric-peer:$ARCH-1.1.0
environment:
- CORE_CHAINCODE_EXECUTETIMEOUT=2700000
- CORE_LOGGING_LEVEL=debug
- CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
- CORE_CHAINCODE_STARTUPTIMEOUT=1200s
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
- CORE_PEER_ID=peer0.org1.example.com
- CORE_PEER_ADDRESS=peer0.org1.example.com:7051
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=composer_default
- CORE_PEER_LOCALMSPID=Org1MSP
- CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/peer/msp
- CORE_LEDGER_STATE_STATEDATABASE=CouchDB
- CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb:5984
working_dir: /opt/gopath/src/github.com/hyperledger/fabric
command: peer node start
ports:
- 7051:7051
- 7053:7053
volumes:
- /var/run/:/host/var/run/
- ./:/etc/hyperledger/configtx
- ./crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/peer/msp
- ./crypto-config/peerOrganizations/org1.example.com/users:/etc/hyperledger/msp/users
- /data/hl/peer0:/var/hyperledger/production
depends_on:
- orderer.example.com
- couchdb
@davidkel The larger question is chaincode blowing up when I try to pull in a lot of transactions (even about 10,000 records will blow itup). I wrote a simple query in composer:
query TransferPoints {
description: "Select all TransferPoints transactions"
statement:
SELECT com.test.TransferPoints
}
@davidkel @mahoney1 The larger question is, chaincode blowing up. When I try to even access 10,000 transactions via Hyperledger "All Transactions" the chaincode container blows past the 1.7 GB limit and crashes.
Same with a query in Composer exposed via REST end point (See code below). What I want to do is to retrieve from the Chain, the transactions of a particular participant.
Quick Background on what I am trying to model:
A Participant (Account) can have multiple assets called wallets, and a transaction called TransferPoints can transfer points from one of a customer's wallets to another customer's wallet.
Query should retrieve all transactions of a participant (Account) which were involved in either receiving or sending points. Really wanted to do it from the chain; I guess were
could create an asset, emit the transaction and store it in the asset as couchdb queries can be more efficient, but really, we want transactions to come from the chain. Should I explore Historian ?
Looking for some ideas as to how to approach efficiently querying Transactions in HL Fabric.
Following is the composer code
/* CTO Definition */
abstract transaction PointsTransaction {
--> PointsWallet from
--> PointsWallet to
o Attribute[] attributes optional
o String tag optional
}
transaction TransferPoints extends PointsTransaction {
o Integer points
}
/* Here is the Query file in composer */
query TransferPoints {
description: "Select all TransferPoints transactions"
statement:
SELECT com.example.TransferPoints
}
/* and some code here in javascript. Basically check the wallets */
const filterTransferPoints = (walletIds, tag) => transferPoints =>
(walletIds.length === 0 ||
(walletIds.includes(transferPoints.from.getIdentifier()) ||
walletIds.includes(transferPoints.to.getIdentifier()))) &&
(!tag || transferPoints.tag === tag);
/**
* Query transfer points transactions.
*
*/
async function queryTransferPoints(tx) {
const {account, tag} = tx;
const walletIds =
account && Array.isArray(account.wallets)
? account.wallets.map(wallet => wallet.walletId)
: [];
const transactions = await query('TransferPoints');
return transactions.filter(filterTransferPoints(walletIds, tag));
}
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=CDMpQotTvsdbHj7Rn) @rthatcher Yeah. Thanks for the response. Let me change it accordingly
I am setting up the dev environment on AWS. It fails
now
when i install : composer-cli itself
gyp ERR! node -v v10.13.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
node-pre-gyp ERR! build error
node-pre-gyp ERR! stack Error: Failed to execute '/home/ubuntu/.nvm/versions/node/v10.13.0/bin/node /home/ubuntu/.nvm/versions/node/v10.13.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --library=static_library --module=/home/ubuntu/.nvm/versions/node/v10.13.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v64-linux-x64-glibc/grpc_node.node --module_name=grpc_node --module_path=/home/ubuntu/.nvm/versions/node/v10.13.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v64-linux-x64-glibc' (1)
node-pre-gyp ERR! stack at ChildProcess.
But the document says different version
Operating Systems: Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12
Docker Engine: Version 17.03 or higher
Docker-Compose: Version 1.8 or higher
Node: 8.9 or higher (note version 9 is not supported)
npm: v5.x
git: 2.9.x or higher
Python: 2.7.x
A code editor of your choice, we recommend VSCode.
But the document says different version
Operating Systems: Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12
*Docker Engine: Version 17.03 or higher
Docker-Compose: Version 1.8 or higher
Node: 8.9 or higher (note version 9 is not supported)
npm: v5.x
git: 2.9.x or higher
Python: 2.7.x
A code editor of your choice, we recommend VSCode.*
@pradeeppadmarajaiah It's because node have made node 10 lts now and the prereqs-ubuntu.sh script installs the lts version. The script will be changed at some point soon. you can easily fix it by just typing `nvm use 8` before installing composer.
@pradeeppadmarajaiah It's because node have made node 10 lts now and the prereqs-ubuntu.sh script installs the lts version. The script will be changed at some point soon. you can easily fix it by just typing `nvm install 8` followed by `nvm use 8` before installing composer.
@MaheshBalan_Pravici Unfortunately there isn't a simple solution to your problem. The query will return upto 10,000 entries (fabric has a limit of 10000 unless you reconfigure your fabric) in 1 go back to the chaincode as there is no pagination capabilities. So if you have 10,000 or more entries, then you will get the full 10,000 being returned into the node process and is likely causing the OOM issue. Also the chaincode can serve multiple concurrent requests so you could also have that query being requested concurrently which will just compound the problem.
[ ](https://chat.hyperledger.org/channel/composer?msg=hybsjFsSygYvZyjLH) @davidkel Thanks a lot. I changed in the sh file
[ ](https://chat.hyperledger.org/channel/composer?msg=sGLmmXefzLcpw4gzt) @ronaldlong46 you can use dates as parameters in Queries, and compare them with DateTime property of an Asset. You can't use Date.now() in the Composer Query language, you would have to pass the current date to your query.
[ ](https://chat.hyperledger.org/channel/composer?msg=AHJ6sdxeZnvCX2u8h) @ronaldlong46 if you're manually controlling it, you might want a runlevel script at the runlevel for shutdown (eg. 0 I believe if Linux) to automatically quiesce your Fabric environment (`docker-compose -f yourdockercomposefilename.yml stop` etc) to save its state (ie, if you need to do that). On reboot, you would do a docker-compose -f xxx.yml start` to bring Fabric back up first, followed by a composer network ping (for the biz network name), before the rest server start in your script
hi,i have setup to solo concensus fabric.now,i want to setup kafka consensus.can you give me referee document for hyperledger composer?
@abityildiz I believe its captured in the Fabric operations guide -> https://hyperledger-fabric.readthedocs.io/en/release-1.2/ops_guide.html?highlight=kafka also this blog may be of use -> https://codeburst.io/the-abcs-of-kafka-in-hyperledger-fabric-81e6dc18da56
@abityildiz I believe its captured in the Fabric operations guide -> https://hyperledger-fabric.readthedocs.io/en/release-1.2/ops_guide.html?highlight=kafka also this blog may be of use -> https://codeburst.io/the-abcs-of-kafka-in-hyperledger-fabric-81e6dc18da56 or ask on #fabric
Has joined the channel.
i am having an issue like i can go and change the values/state of couchdb which should not be permissible and if anyone could do that then the application should notify that instead of working properlt
any help would be appreciated. I am currently working with hyperledger composer
@ZOHAIBSohail I would suggest you ask on #fabric-questions channel as its a question about fabric rather than composer
@ZOHAIBSohail You can see an explanation at https://lists.hyperledger.org/g/fabric/message/4896
Hello All, I want to upgrade my network on IBM Blockchain starter plan but I don't know how to go about it. Can anyone help?
@Korvictech Have you tried following the steps here ?
https://hyperledger.github.io/composer/latest/business-network/upgrading-bna
[ ](https://chat.hyperledger.org/channel/composer?msg=CTrYjkpztgg9RZSnS) @davidkel I already this procedure but keep have a funny error log.
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 177274321f3bd3f6490ab9fd268bb3dbf41ccb6725b0f8a84fa5888108fd54b5: error starting container: error starting container: Post http://localhost:2375/build?t=n98665ff1f88142d2a6382b9d106b1331-org1-peer1-hammock-watson-0.0.7-6a76255b8d8f84c21491324551532d3050acdd71bcf2130cda0fcd71212905fc: Failed to generate platform-specific docker build: Error returned from build: 1 "can't load package: package ibm-bcs-n98665ff1f88142d2a6382b9d106b1331-hammock-watson-0.0.7: cannot find package "ibm-bcs-n98665ff1f88142d2a6382b9d106b1331-#############" in any of:
/opt/go/src/ibm-bcs-n98665ff1f88142d2a6382b9d106b1331-############# (from $GOROOT)
/chaincode/input/src/ibm-bcs-n98665ff1f88142d2a6382b9d106b1331-###########-0.0.7 (from $GOPATH)
/opt/gopath/src/ibm-bcs-n98665ff1f88142d2a6382b9d106b1331-##############
[ ](https://chat.hyperledger.org/channel/composer?msg=CTrYjkpztgg9RZSnS) @davidkel I already this procedure but keep have a funny error log.
✖ Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error:
@Korvictech I would suggest you contact IBM Support to provide help. No idea what the problem might be, sorry
[ ](https://chat.hyperledger.org/channel/composer?msg=gvd7NNdQdaK498uT7) @davidkel Thanks for your help
@Korvictech I assume you did use `composer network install` to install the package onto the peers right ?
[ ](https://chat.hyperledger.org/channel/composer?msg=TzAC5dDwYvzvd9NGP) @davidkel No, I didn't
@Korvictech Then that's probably the issue. you have to use `composer network install`
[ ](https://chat.hyperledger.org/channel/composer?msg=nEYqrkfhT8FFHFwHc) @davidkel I just did that and the error still persist
I suggest you change the version number of your package.json, install this new version then upgrade to that new version
I suggest you change the version number of your package.json of your bna, repackage your bna, install this new version then upgrade to that new version
I suggest you change the version number of your package.json in your bna, repackage your bna, install this new version then upgrade to that new version
[ ](https://chat.hyperledger.org/channel/composer?msg=JEXWugJSPeEyFG3Xb) @davidkel Let me try that.
Thanks, It worked
@davidkel :relaxed: Thanks for your assistance.
I also have challenges with changing my Card store directory to the cloud
[ ](https://chat.hyperledger.org/channel/composer?msg=A4shzoAYv32zTrcwC) I want to use a IBM Cloud Object storage bucket has my file store instead of the default home/username/.composer/card. Can anyone help me with this?
@Korvictech see the docs https://hyperledger.github.io/composer/latest/business-network/cloud-wallets for more info. Also this tutorial should help you https://developer.ibm.com/tutorials/cl-deploy-blockchain-starter-plan-network/
Has joined the channel.
ronbiz
Has joined the channel.
edX course : In Chapter 6. Introduction to Hyperledger Composer > Writing and Deploying a Business Network > Deploying onto Hyperledger Fabric
I get the following error when I try to initialize chaincode on hyperledger fabric peers:
"bhanu@bhanu-VirtualBox:~/tuna-network$ composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --networkName tuna-network --networkVersion 0.0.1 Starting business network tuna-network at version 0.0.1
Processing these Network Admins: userName: admin
✖ Starting business network definition. This may take a minute... Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: failed to execute transaction 5bcc275bedeb542ce91afecb1bb131290781eb14f12114b2d72435b58a5271a0: failed to register tuna-network:0.0.1 as launching: chaincode tuna-network:0.0.1 has already been launched Command failed"
I'm unable to resolve the issue even after tearing the fabric and starting afresh. Please help!
In Chapter 6. Introduction to Hyperledger Composer > Writing and Deploying a Business Network > Deploying onto Hyperledger Fabric
I get the following error when I try to initialize chaincode on hyperledger fabric peers:
"bhanu@bhanu-VirtualBox:~/tuna-network$ composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --networkName tuna-network --networkVersion 0.0.1 Starting business network tuna-network at version 0.0.1
Processing these Network Admins: userName: admin
✖ Starting business network definition. This may take a minute... Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: failed to execute transaction 5bcc275bedeb542ce91afecb1bb131290781eb14f12114b2d72435b58a5271a0: failed to register tuna-network:0.0.1 as launching: chaincode tuna-network:0.0.1 has already been launched Command failed"
I'm unable to resolve the issue even after tearing the fabric and starting afresh. Please help!
Thanks in advance,
Thanks in advance,
@mahoney1 now I figured out problem with space on disk. So, I trying to upgrade network. After the third attempt I see that only two containers updated (instead of four). I trying to ping network, as you advised, but I get error:
```
E1031 16:27:25.837632507 24261 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E1031 16:27:25.841027742 24261 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E1031 16:27:25.841440471 24261 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E1031 16:27:25.841847571 24261 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E1031 16:27:25.842224690 24261 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E1031 16:27:25.856588564 24261 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
Error: Error trying to ping. Error: No peers available to query. last error was Error: 14 UNAVAILABLE: Connect Failed
```
@mahoney1 now I figured out problem with space on disk. So, I'm trying to upgrade network. After the third attempt I see that only two containers updated (instead of four). I trying to ping network, as you advised, but I get error:
```
E1031 16:27:25.837632507 24261 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E1031 16:27:25.841027742 24261 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E1031 16:27:25.841440471 24261 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E1031 16:27:25.841847571 24261 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E1031 16:27:25.842224690 24261 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E1031 16:27:25.856588564 24261 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
Error: Error trying to ping. Error: No peers available to query. last error was Error: 14 UNAVAILABLE: Connect Failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=B5f4RtZ6ZD2zwus6z) @davidkel @davidkel Thanks for the reply...So maybe for now I will create an "Asset" record and store the Participant and pointer to transaction id whenever a participant is an initiator or receiver of the transferpoint transaction., This way we can limit the queries and it is all in couchdb with indexes etc. Quick question, within the confines of transaction logic, can I get the id of the transaction so that as a last step in the transaction I can create an asset record with the pointer to the transaction?
[ ](https://chat.hyperledger.org/channel/composer?msg=3KHFwRctccyiWYhn4) @mahoney1 Thanks
@sbtmentor can you post the output of `docker ps -a`
I wrote a code to transfer asset between two party, but it comes back with an error "Missing id". What could be responsible for this?
[ ](https://chat.hyperledger.org/channel/composer?msg=GBzZaCG7Khvhu7vsM) @MaheshBalan_Pravici yes its the attribute `transactionId` which is part of every tranaction: so `var mTxnId = tx.transactionId` blah blah
[ ](https://chat.hyperledger.org/channel/composer?msg=GBzZaCG7Khvhu7vsM) @MaheshBalan_Pravici yes its the attribute `transactionId` which is part of every transaction: so `var mTxnId = tx.transactionId` blah blah
@mahoney1 super. Thank you!
@Korvictech This sounds more like an issue vis-a-vis the model - you are trying to create/update a resource which has a required field called `id` and you are not supplying a value for that field? A simple example of a transfer (in this case, ownership of an asset) is shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L30 as an example
@Korvictech This sounds more like an issue vis-a-vis the model - are you trying to create/update a resource which has a required field called `id` and you are not supplying a value for that field? A simple example of a transfer (in this case, ownership of an asset) is shown here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/trade-network/lib/logic.js#L30 as an example
@VadimInshakov that error is similar to that shown [here](https://stackoverflow.com/questions/50006049/handshake-failed-with-fatal-error-ssl-error-ssl) - are you using the right cert even ? I mean why would it fail for two out of four, (using the card you used for the ping - presumably not a PeerAdmin card btw). Except for a configuration error perhaps ? Would check your profile(s) also. Have you checked the CA logs? Are you using Fabric 1.2 / Composer 0.20.x ?
@VadimInshakov that error is similar to that shown [here](https://stackoverflow.com/questions/50006049/handshake-failed-with-fatal-error-ssl-error-ssl) - are you using the right cert even ? I mean why would it fail for two out of four, (using the card you used for the ping - presumably not a PeerAdmin card btw). Except for a configuration error perhaps ? Would check your profile(s) also. Have you checked the CA logs? Are you using Fabric 1.2 / Composer 0.20.x ? And finally your node version ?
I am trying to update a resource as given below:
participant Government identified by govId {
o String govId
o String name
o Double govRate
o Double balance default = 0.0
}
asset realEstate identified by propertyId {
o String propertyId
o String[] address
o Double squareMeters
o Double price
o String description
o String dateOfRegistration
o Double[] coordinates
o String certificateno
--> User owner
--> Government government
}
transaction BuyingRealEstate {
--> User buyer
--> User seller
--> Government government
--> realEstate realEstate
}
async function buyingRealEstate(trade){
var transferCharges = (trade.government.govRate/100) * trade.realEstate.price
var totalCost = transferCharges + trade.realEstate.price
// Check if the buyer has enough to pay the notary, real estate agent and insurance
if( trade.buyer.balance < totalCost ){
throw new Error('Not enough funds to buy this!')
}
//deducated price of property from the buyer
trade.buyer.balance -= totalCost
const buyerRegistry = await getParticipantRegistry('org.hammock.network.User')
await buyerRegistry.update(trade.buyer);
//set the owner of the property to buyer
trade.realEstate.owner = trade.buyer
const assetRegistry = await getAssetRegistry('org.hammock.network.realEstate')
await assetRegistry.update(trade.realEstate);
//pay Government fee
trade.government.balance += transferCharges
const governmentRegistry = await getParticipantRegistry('org.hammock.network.Government')
const govpay =await governmentRegistry.update(trade.government);
//console.log(govpay);
// Updates the seller's balance
trade.seller.balance += trade.realEstate.price
const sellerRegistry = await getParticipantRegistry('org.hammock.network.User')
await sellerRegistry.update(trade.seller);
}
[ ](https://chat.hyperledger.org/channel/composer?msg=D6jdDvPGCCb3vqkbQ) this logic.js
It already worked. The buyerId was the problem. Thanks @mahoney1
[ ](https://chat.hyperledger.org/channel/composer?msg=oJMWzzr2Wxefv8uuG) This is a part of the .cto file
@mahoney1 , I have gone through it severally to no avail
[ ](https://chat.hyperledger.org/channel/composer?msg=GBzZaCG7Khvhu7vsM) @davidkel @mahoney1 Is it a good idea to request the ability to pass the NODE_OPTIONS env variable to the chaincode container ?. Even with pagination etc, surely we might have complex enough queries which might blow the 1.7 GB limit, so we should be able to bump that up to a reasonable level 4096 or 8192. Just like how vars like CORE_CHAINCODE_LOGGING_LEVEL get passed in...
@MaheshBalan_Pravici I've already raised a jira about that based on your post :-)
https://jira.hyperledger.org/browse/FAB-12661
@MaheshBalan_Pravici I've already raised a jira about that because on your post :relaxed:
https://jira.hyperledger.org/browse/FAB-12661
[ ](https://chat.hyperledger.org/channel/composer?msg=tpxirgn2ZMMa5Zdst) @davidkel @davidkel Thanks! This will help.
Hey, any devs about? I'm going production with a composer system and need to ask if there are any recommendations for back-ups.
Has joined the channel.
Hello, I'm trying to install composer-cli on my local environment and getting following errors.
```
```
Hello, I'm trying to install composer-cli on my local environment and getting following errors.
```
npm install -g composer-cli
/Users/sang/.nvm/versions/node/v8.12.0/bin/composer -> /Users/sang/.nvm/versions/node/v8.12.0/lib/node_modules/composer-cli/cli.js
> dtrace-provider@0.8.7 install /Users/sang/.nvm/versions/node/v8.12.0/lib/node_modules/composer-cli/node_modules/dtrace-provider
> node-gyp rebuild || node suppress-error.js
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
No receipt for 'com.apple.pkg.CLTools_Executables' found at '/'.
No receipt for 'com.apple.pkg.DeveloperToolsCLILeo' found at '/'.
No receipt for 'com.apple.pkg.DeveloperToolsCLI' found at '/'.
gyp: No Xcode or CLT version detected!
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack at ChildProcess.onCpExit (/Users/sang/.nvm/versions/node/v8.12.0/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:345:16)
gyp ERR! stack at emitTwo (events.js:126:13)
gyp ERR! stack at ChildProcess.emit (events.js:214:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Darwin 18.0.0
gyp ERR! command "/Users/sang/.nvm/versions/node/v8.12.0/bin/node" "/Users/sang/.nvm/versions/node/v8.12.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/sang/.nvm/versions/node/v8.12.0/lib/node_modules/composer-cli/node_modules/dtrace-provider
gyp ERR! node -v v8.12.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
> fsevents@1.2.4 install /Users/sang/.nvm/versions/node/v8.12.0/lib/node_modules/composer-cli/node_modules/fsevents
> node install
[fsevents] Success: "/Users/sang/.nvm/versions/node/v8.12.0/lib/node_modules/composer-cli/node_modules/fsevents/lib/binding/Release/node-v57-darwin-x64/fse.node" already installed
Pass --update-binary to reinstall or --build-from-source to recompile
> node-report@2.2.1 install /Users/sang/.nvm/versions/node/v8.12.0/lib/node_modules/composer-cli/node_modules/node-report
> node-gyp rebuild
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
No receipt for 'com.apple.pkg.CLTools_Executables' found at '/'.
No receipt for 'com.apple.pkg.DeveloperToolsCLILeo' found at '/'.
No receipt for 'com.apple.pkg.DeveloperToolsCLI' found at '/'.
gyp: No Xcode or CLT version detected!
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack at ChildProcess.onCpExit (/Users/sang/.nvm/versions/node/v8.12.0/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:345:16)
gyp ERR! stack at emitTwo (events.js:126:13)
gyp ERR! stack at ChildProcess.emit (events.js:214:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Darwin 18.0.0
gyp ERR! command "/Users/sang/.nvm/versions/node/v8.12.0/bin/node" "/Users/sang/.nvm/versions/node/v8.12.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/sang/.nvm/versions/node/v8.12.0/lib/node_modules/composer-cli/node_modules/node-report
gyp ERR! node -v v8.12.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-report@2.2.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-report@2.2.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/sang/.npm/_logs/2018-10-31T19_08_38_159Z-debug.log
```
@sang-bae on a mac, you need to install XCode to compile native npm modules. Looks like you might not have xcode installed
@davidkel I have xcode installed and updated to latest version from app store. I'm on macOS Mojave if that's the issue
@davidkel Issue fixed, there was an issue with Command Line Tools in macOs Mojave, is anyone has this issue reach out to https://developer.apple.com/download/more/ and download the command line tools for mojave
[ ](https://chat.hyperledger.org/channel/composer?msg=tYYNxMv5fmj8vreic) I know that LOL! It was an example as I said in my other post.
[ ](https://chat.hyperledger.org/channel/composer?msg=CoBaoCT8EKf4NoSXb) @mahoney1 bhanu@bhanu-VirtualBox:~$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b1307c8b4cc4 hyperledger/fabric-peer:1.2.1 "peer node start" 22 hours ago Exited (255) 3 minutes ago 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
d4d7bc4cfd42 hyperledger/fabric-ca:1.2.1 "sh -c 'fabric-ca-se…" 22 hours ago Exited (255) 3 minutes ago 0.0.0.0:7054->7054/tcp ca.org1.example.com
f5ae0cf999a8 hyperledger/fabric-orderer:1.2.1 "orderer" 22 hours ago Exited (255) 3 minutes ago 0.0.0.0:7050->7050/tcp orderer.example.com
acda41859f2d hyperledger/fabric-couchdb:0.4.10 "tini -- /docker-ent…" 22 hours ago Exited (255) 3 minutes ago 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
Has joined the channel.
Hi all, I am new to hyperledger-composer. I have tried to create a multi peer network but failed. Can someone suggest me proper documentation for the same.
Clipboard - November 1, 2018 10:03 AM
@singh_0 The multi-org tutorial uses hyperledger fabric's BYFN which is a multi-peer network
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Hello
I am confused about what happens when the business network archive (.bna) file is deployed to a real network
I know it is deployed as a chaincode,
and Fabric would map it into go language etc...
however,
what does actually happen to the fabric network from then on?
do we need to deploy .bna file on every node of the network ?
would be grateful if you can help
[ ](https://chat.hyperledger.org/channel/composer?msg=85DBEpmKRFpWtpfCd) @Dima you don't need to deploy your .bna file on every node. composer does this for you :)
bbecause there is a connection profile which you define and composer need it to deploy the .bna file. in the connection profile: you add your nodes and composer deploy the chaincode for you on every node you added to your connection profile.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=RctuPF8za75kKdRiQ) @waleed anh interesting.
thank you @waleed for your detailed answer !
[ ](https://chat.hyperledger.org/channel/composer?msg=fyt6uqS2ixt2DMLjN) @Dima take a look here to see how a connection profile loooks like -> https://hyperledger.github.io/composer/latest/reference/connectionprofile
so the connection profile is different than the package.json?
[ ](https://chat.hyperledger.org/channel/composer?msg=voiHsEXjkiCXa6reE) @Dima yes.
and the connection profile has all the CA of all the peers in the Fabric network?
[ ](https://chat.hyperledger.org/channel/composer?msg=psmWmMebzcMvXRY84) @abityildiz Are you using Composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=yWqHbLkGDfcb7ubRc) @Dima if you took a look here: https://hyperledger.github.io/composer/latest/reference/connectionprofile
you can see that you add all the peers, orderes, CAs of your network
@sbtmentor your docker containers are down (exited). That's one reason why its failing. And each time you start up a new Fabric, it will lose the previously installed chaincode FYI. The 'Controlling your environment' section of https://hyperledger.github.io/composer/latest/installing/development-tools.html shows how to teardown, then start up (having grabbed the fabric-dev-servers scripts prior to that). The dev tutorial from Step Three onwards describes the equivalent sequence for installing / starting (I've not seen the tuna-network sequence FYI).
[ ](https://chat.hyperledger.org/channel/composer?msg=s6JtvrpvuiBW7q2s8) @rthatcher yes,i am using composer
@Korvictech didn't see `User` in your model (but did see in your code), but suggest to try see which of the two updates are failing first (comment out one update at a time)
[ ](https://chat.hyperledger.org/channel/composer?msg=RZxatSmqJYdCWyLAB) @abityildiz OK thanks - so 2 observations ...
1. The fact that you are using kafka makes me think you are working on a serious (production?) deployment with Composer - Have you seen this announcement? https://lists.hyperledger.org/g/composer/message/125
2. With the SSL errors I would think you have some error in your connection.json where you specify the certificates and options - I would suggest using the multi-org tutorial as a reference for how to set up a connection.json with TLS.
[ ](https://chat.hyperledger.org/channel/composer?msg=RZxatSmqJYdCWyLAB) @abityildiz OK thanks - so 2 observations ...
1. The fact that you are using kafka makes me think you are working on a serious (production?) deployment with Composer - Have you seen this announcement? https://lists.hyperledger.org/g/composer/message/125
2. With the SSL errors I would think you have some error in your connection.json where you specify the certificates and options - I would suggest using the multi-org tutorial as a reference for how to set up a connection.json with TLS. ( .https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org )
@mahoney1 Hi, How could i create an index for a field doc in couchdb in composer? In the marbles02/go, there is a json to create index at chaincode init like this {"index":{"fields":["docType","owner"]},"ddoc":"indexOwnerDoc", "name":"indexOwner","type":"json"}. I use this json to create index manually,but when I build query include order by, There was error info like:Error running query. Reason: (no_usable_index) No index exists for this sort, try indexing by the sort fields.
[ ](https://chat.hyperledger.org/channel/composer?msg=WxqtE5XXJxLSqw5KC) @rthatcher i am getting reference multi-org tutorial'(2).i will be change and try on the connection.json files.thanks
@wangrangli since Composer v0.19.x there is automatic Couch DB index generation for queries - that is: Composer automatically indexes Couch DB for any queries present within your business network definition (your .qry file(s)) - during the install of your business network. You should be able to access CouchDB using _explain to see them in use - as described in [this comment - a few paragraphs down for example](https://github.com/hyperledger/composer/issues/2190#issuecomment-335213220)
@mahoney1 Thank you!
Hello Everyone, I had completed with my application on my desktop. But Now I am trying to move my card storage to the cloud to know avail. My BNA is currently hosted on IBM Blockchain have following this tutorials newly created business card is still saved in my .composer/card folder on my desktop.
Hello Everyone, I had completed with my application on my desktop. But Now I am trying to move my card storage to the cloud to know avail. My BNA is currently hosted on IBM Blockchain after following this https://developer.ibm.com/tutorials/cl-deploy-blockchain-starter-plan-network/ newly created business card is still saved in my .composer/card folder on my desktop.
[ ](https://chat.hyperledger.org/channel/composer?msg=oYMPs5bwXYwXPwZdj) Please How can I fix this?
composer network ping is working for only one org and the second org is not giving any response
[ ](https://chat.hyperledger.org/channel/composer?msg=X9CBnT92x8GKbHakc) @mahoney1 I am use the index to do "order by" operation. If the field doesn't be create as an index, it can't do "order by" in composer query or "sort" in couchdb fauxton. Thank you!
Is it possible to rollback transactions in composer?
I mean in transaction processor function?
@mrudav.shukla Transaction processor functions that fail or which you error with will roll back any changes. The whole transaction fails, not just one of the updates/adds in your function, and anything changed by the transaction processor function before the error occurred will be rolled back. Changes made by transactions are atomic, either the transaction is successful and all changes are applied, or the transaction fails and no changes are applied.
[ ](https://chat.hyperledger.org/channel/composer?msg=kqxdkqQLuTLvx9X2a) @mahoney1 Say if in a single transaction processor function, we update three registry in sequence of A, B and C. Registries A and B got updated successfully, however update of registry C threw an exception. I understand that the "transaction" will be rolled back, but will the updates to the registries too be rolled back?
@Korvictech https://developer.ibm.com/tutorials/cl-deploy-blockchain-starter-plan-network/ describes in detail how to use cloud based wallets ?
@mrudav.shukla yes - rolled back - it is the same unit of work.
@mrudav.shukla yes - rolled back, the whole transaction failed (ie - it is the same unit of work).
[ ](https://chat.hyperledger.org/channel/composer?msg=8ozBW4zpQFZsrPegK) @mahoney1 Actually I have a transaction processor function that is adding assets to different asset registries in the sequence. However, if the last addition fails, it does not remove the assets that are already added till that time. Just tried it.
I have this variable cardDir: '/home/username/.composer/cards' that I used in directing newly created cards to the card directory as seen here:
let userCardDir = `${hyperConfig.cardDir}/${metadata.userName}@${metadata.businessNetwork}`;
console.log(userCardDir);
await idCardData.toDirectory(userCardDir, fs);
I have this variable cardDir: '/home/username/.composer/cards' that I used in directing newly created cards to the card directory as seen here:
let userCardDir = `${hyperConfig.cardDir}/${metadata.userName}@${metadata.businessNetwork}`;
console.log(userCardDir);
await idCardData.toDirectory(userCardDir, fs);
@mahoney1 , what is going to be my new value for cardDir since I have succeeded in changing the card directory to the cloud based directory
I have this variable cardDir: '/home/username/.composer/cards' that I used in directing newly created cards to the card directory as seen here:
let userCardDir = `${hyperConfig.cardDir}/${metadata.userName}@${metadata.businessNetwork}`;
console.log(userCardDir);
await idCardData.toDirectory(userCardDir, fs);
@mahoney1 , what is going to be my new value for cardDir since I have succeeded in changing the card directory to the cloud based directory
Clipboard - November 1, 2018 4:22 PM
Clipboard - November 1, 2018 4:24 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=QRPTYmaRNmb2RqaHR) @Korvictech see the README here -> https://github.com/hyperledger/composer-tools/tree/master/packages/composer-wallet-ibmcos for config (eg your cardstore is `composer-wallet-ibmcos` etc) and or indeed rthe scripts there or see the docs https://hyperledger.github.io/composer/latest/business-network/cloud-wallets
[ ](https://chat.hyperledger.org/channel/composer?msg=Q97xneixfNkpyjFox) @abityildiz The error "... Failed to connect ..." is a networking problem as you guessed. I would say that the client (where you are running the install command) can't find the Fabric on the addresses supplied in the connection.json, and this is likely to be the 2 peers for org 1.
Are you using 1 computer or multiple computers for the Fabric?
If you are using multiple computers (or VMs), then docker swarm or kubernetes is the best way forward for networking.
[ ](https://chat.hyperledger.org/channel/composer?msg=4poHjYBW5rBgivHNp) @rthatcher now i am testing my local VM.i get this error my local VM.Also,i need to setup swarm?
Has joined the channel.
Hi @davidkel I have a similar problem on ubuntu. Would you know what might help fix the issue?
@Korvictech Card management should be done through the `composer-admin` npm module. I'm not sure what you are doing but the likelyhood is that you shouldn't be using the idcard api.
[ ](https://chat.hyperledger.org/channel/composer?msg=RE4RkzSLhbcKTYhfd) @abityildiz If *everything* is running on a single computer (single VM) then you should be able to address the fabric containers on `localhost` - assuming that the Fabric is running, and that the portforwarding is setup ok.
[ ](https://chat.hyperledger.org/channel/composer?msg=JkH3go9ugYDkkZ8b9) @davidkel Thanks for your reply. What I mean to do is to save direct the Idcard to a directory after the card has being issued.
@Korvictech You should use the AdminConnection.importCard api for this
I have another issue since I transfer the card store to the cloud. Can you fix this?
This is the error message
home/korede/.nvm/versions/node/v8.12.0/lib/node_modules/@ampretia/composer-wallet-cloudant/node_modules/@cloudant/cloudant/cloudant.js:42
throw err;
^
Error: Invalid URL
at Cloudant (/home/korede/.nvm/versions/node/v8.12.0/lib/node_modules/@ampretia/composer-wallet-cloudant/node_modules/@cloudant/cloudant/cloudant.js:38:15)
at new CloudantWallet (/home/korede/.nvm/versions/node/v8.12.0/lib/node_modules/@ampretia/composer-wallet-cloudant/lib/cloudantwallet.js:64:25)
at Object.module.exports.getStore (/home/korede/.nvm/versions/node/v8.12.0/lib/node_modules/@ampretia/composer-wallet-cloudant/index.js:24:12)
Here is the code
const connectionOptions = {
wallet : {
type: "@ampretia/composer-wallet-cloudant",
options : {
storePath :"https://58a68326-9591-496f-8f1c-6751552cbb5b-bluemix:1db168d1c774bf0f1c02e3d92f905c71997d8f7827c023fa14f3159fe376736e@58a68326-9591-496f-8f1c-6751552cbb5b-bluemix.cloudant.com",
}
}
};
let businessNetworkConnection = new BusinessNetworkConnection(connectionOptions);
[ ](https://chat.hyperledger.org/channel/composer?msg=PeFbbAEKaPjEoidDn) @davidkel , Please at this and share your view
@Korvictech the cloudant wallet and information can be found here
https://github.com/hyperledger/composer-tools/tree/master/packages/composer-wallet-cloudant
The @ ampretia version is not the version you should use now
Thanks @davidkel . Can you give a complete example of any github project that used this dependency?
@Korvictech I'm not aware of a github project but that doesn't mean to say there is one. Suffice to say that if you use AdminConnection for card management, then you can easily switch the cloud wallet you use as described in the instructions in the above URL.
I will also iterate that from what you have told me, using the IdCard API is definitely NOT what you should be using.
I saw in hyperledger composer documentation. What used be the correct storePath for a Cloudant cloud wallet?
const connectionOptions = {
wallet : {
type: 'composer-wallet-filesystem',
options : {
storePath :'/my/network/location'
}
}
};
adminConnection = new AdminConnection(connectionOptions);
@davidkel I saw in hyperledger composer documentation. What used be the correct storePath for a Cloudant cloud wallet?
const connectionOptions = {
wallet : {
type: 'composer-wallet-filesystem',
options : {
storePath :'/my/network/location'
}
}
};
adminConnection = new AdminConnection(connectionOptions);
@Korvictech storePath is not an appropriate option for the cloudant wallet.
The appropriate config is documented in the url I posted earlier
which url?
@davidkel , Please which url?
[ ](https://chat.hyperledger.org/channel/composer?msg=7wPTCdcpwdchsTZ8k) @davidkel
Hi @tkuhrt do we have a Composer project meeting now on zoom ???
@jmason900 not sure if you mean Community call? If so, next scheduled one is https://github.com/hyperledger/composer/wiki/NextCommunityCall Nov 8th, if not, ignore.
thank you !!
@Korvictech https://github.com/hyperledger/composer-tools/tree/master/packages/composer-wallet-cloudant
@mahoney1 thanks for help, `ping` solved problem of diyng chaincode containers!
@davidkel , I have tried this but its still not work
@davidkel , I have tried this but its still not working. Printing the admin connection, I still had this result:
AdminConnection {
cardStore:
WalletBackedCardStore {
storeOptions:
{ type: 'composer-wallet-filesystem',
StoreModule: [Object],
namePrefix: 'cards' },
store:
FileSystemWallet {
storePath: '/home/korede/.composer/cards',
fs: [Object],
rimrafOptions: [Object] } },
connectionProfileManager: ConnectionProfileManager {},
connection: null,
securityContext: null }
Hey, any devs about? I'm going production with a composer system and need to ask if there are any recommendations for back-ups.
Or other general advice.
@nemo 8 Just in case you haven't seen this https://lists.hyperledger.org/g/composer/message/125
But it you need advice about hyperledger fabric such as backup recommendations I suggest you try one of the fabric channels.
But if you need advice about hyperledger fabric such as backup recommendations I suggest you try one of the fabric channels.
[ ](https://chat.hyperledger.org/channel/composer?msg=YgZaJqxPesnk3rp3M) Thank you very much! I had try it. It work fine after I write a query and deploy the bna to chain. I find the index at couchdb which created by Composer. Thanks again!
@davidkel ,
Please I keep getting this error. What can be the cause?
Error: Calling register endpoint failed, CONNECTION Timeout
at TLSSocket.socket.on (/home/korede/hyperProjects/hammock-watson/node_modules/fabric-ca-client/lib/FabricCAClientImpl.js:773:13)
at emitNone (events.js:111:20)
at TLSSocket.emit (events.js:208:7)
at TLSSocket.Socket._onTimeout (net.js:422:8)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)
hello, im setting up a multinode network. I have successfully installed invoke and query the chaincode in fabric. However when it comes to composer, im failing to install my bna. I'm getting:
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline.
Since my chaincode was successfully test on fabric, what could cause the above error when it comes to composer?
hello, im setting up a multinode network. I have successfully installed invoke and query the chaincode in fabric. However when it comes to composer, im failing to install my bna. I'm getting:
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline.
Since my chaincode was successfully test on fabric, what could cause the above error when it comes to composer? Currenty using docker swarm for my multinode
[ ](https://chat.hyperledger.org/channel/composer?msg=AEtQKSAsmZ334y67s) @CheeChyuan May be you should check the connection profiles for the organisation. Basically, a connection profile contains the urls of different peers on the network.
The filters for loopback connector used in composer does not support querying based on relationships, right?
Hi Everyone, have you encounter this error "Cannot read property 'getModelManager' of null" ?
HI, interesting issue that I got:
`
Unhandled error for request POST /api/Demo: Error: Error trying invoke business network with transaction id 9981beafc778ee6a89cfdc8e3bd04ecc57a131539d5fb0e4b91fb896394c5060. Error: No valid responses from any peers.
[1] Response from attempted peer comms was an error: Error: transaction returned with failure: Error: Invalid continuation byte
[1] at HLFConnection.invokeChainCode (/home/xenial/projects/archive-network/angular-app/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)
[1] at
HI, interesting issue that I got:
`
Unhandled error for request POST /api/Demo: Error: Error trying invoke business network with transaction id 9981beafc778ee6a89cfdc8e3bd04ecc57a131539d5fb0e4b91fb896394c5060. Error: No valid responses from any peers.
[1] Response from attempted peer comms was an error: Error: transaction returned with failure: Error: Invalid continuation byte
[1] at HLFConnection.invokeChainCode (/home/xenial/projects/archive-network/angular-app/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)
[1] at
HI, interesting issue that I got:
`
Unhandled error for request POST /api/Demo: Error: Error trying invoke business network with transaction id 9981beafc778ee6a89cfdc8e3bd04ecc57a131539d5fb0e4b91fb896394c5060. Error: No valid responses from any peers.
[1] Response from attempted peer comms was an error: Error: transaction returned with failure: Error: Invalid continuation byte
[1] at HLFConnection.invokeChainCode (/home/xenial/projects/archive-network/angular-app/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)
[1] at
HI, interesting issue that I got:
`
Unhandled error for request POST /api/Demo: Error: Error trying invoke business network with transaction id 9981beafc778ee6a89cfdc8e3bd04ecc57a131539d5fb0e4b91fb896394c5060. Error: No valid responses from any peers.
[1] Response from attempted peer comms was an error: Error: transaction returned with failure: Error: Invalid continuation byte
[1] at HLFConnection.invokeChainCode (/home/xenial/projects/archive-network/angular-app/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)
[1] at
HI, interesting issue that I got:
`
Unhandled error for request POST /api/Demo: Error: Error trying invoke business network with transaction id 9981beafc778ee6a89cfdc8e3bd04ecc57a131539d5fb0e4b91fb896394c5060. Error: No valid responses from any peers.
[1] Response from attempted peer comms was an error: Error: transaction returned with failure: Error: Invalid continuation byte
[1] at HLFConnection.invokeChainCode (/home/xenial/projects/archive-network/angular-app/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)
[1] at
HI, interesting issue that I got:
`
Unhandled error for request POST /api/Demo: Error: Error trying invoke business network with transaction id 9981beafc778ee6a89cfdc8e3bd04ecc57a131539d5fb0e4b91fb896394c5060. Error: No valid responses from any peers.
[1] Response from attempted peer comms was an error: Error: transaction returned with failure: Error: Invalid continuation byte
[1] at HLFConnection.invokeChainCode (/home/xenial/projects/archive-network/angular-app/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)
[1] at
@JeffGutierrez Looks like your code use statement like this.getModelManager() and "this" happens to be null.
@CheeChyuan I don't know much about fabric, however, I have this error message all the time. It usually happens when I did not properly start my fabric network, that is by running the "./startFabric.sh" command in the "fabric-dev-servers" folder. If your docker images are up and running, make sure you have fabric installed on them and your connection profile is correctly configured.
Has joined the channel.
Hello, I am creating a massive (compute intensive) transaction with composer and I was wondering what would be the best way, if any, to distribute its execution.
In more details, I have a transaction that will need to do some monthly operation for every participant in my network. The number of participants will hopefully grow, making it impossible to perform in a single transaction (I assume). What would be the best way to handle that ? would starting a transaction per participant overload the orderer ?
Thanks
@mrudav.shukla @david-kim-tpe thanks guys. I will try it out
[ ](https://chat.hyperledger.org/channel/composer?msg=iGmr234nZeyxmkNui) @david-kim-tpe i'm currently using version composer-client@0.20.2, i'm not sure because this not always happening.. and i didn't code to include "this.getModelManager()" it seem inside the composer-client library
Hi Everyone
Docker images stopped after some time(5-7 days) . Can we not run them permanently?
@KindleBitSoln Depends why they stopped, check the logs to determine a cause
[ ](https://chat.hyperledger.org/channel/composer?msg=7SJYxEwduZ8HvKxSk) @tanguyracinet from a Composer perspective, you could perhaps target a range of participants (that are the subject of the operation) at a time, does it all need to occur on the same date or can be staggered etc ? Obviously use hi-spec machines for the intense operation(s) helps. Also, all depends on who/which orgs need to endorse/commit the txns too etc. What kind of transaction is it?
[ ](https://chat.hyperledger.org/channel/composer?msg=7SJYxEwduZ8HvKxSk) @tanguyracinet from a Composer perspective, you could perhaps target a range of participants (that are the subject of the operation) at a time, does it all need to occur on the same date or can be staggered etc ? Obviously use hi-spec machines for the intense operation(s) helps. Also, all depends on who/which orgs need to endorse/commit the txns too etc. What kind of transaction is it? Also, as per below, you'll have [seen this announcement?](https://lists.hyperledger.org/g/composer/message/125)
[ ](https://chat.hyperledger.org/channel/composer?msg=7SJYxEwduZ8HvKxSk) @tanguyracinet - A couple of observations, firstly you are correct that running a single 'massive' transaction in multi-node (multi-org?) network is quite likely to cause you a problem. Secondly you should be careful if you are looking at Composer for a production solution - have you seen this announcement? https://lists.hyperledger.org/g/composer/message/125
@rthatcher @mahoney1 Thank you for pointing that announcement. I indeed had hoped to use composer to ease development of a blockchain solution with quick prototyping but I now realise it will only be that. A quick prototype. I'll have to move to a solution such as Fabric for a real production environment. Again, thanks for pointing that out
I have a question about connection profiles in cards. I currently have 2 organisations: orgA and orgB. orgA can install my bna file fine. When i do OrgB it fails with the error: "Error: Error trying install business network. Error: Missing peer objects in install chaincode request" which to me seems like a problem with the connection profile but it's the same for orgA as orgB only orgB has a different client field
I have a question about connection profiles in cards. I currently have 2 organisations: orgA and orgB. orgA can install my bna file fine. When i do OrgB it fails with the error: "Error: Error trying install business network. Error: Missing peer objects in install chaincode request" which to me seems like a problem with the connection profile but it's the same for orgA as orgB only orgB has a different client field. I think the problem lies in the fact that the connection.json has 2 channels and it doesn't know what to pick. has anyone else run into this issue or has any ideas on how to solve it?
@Rochendiil you might want to see the 2-org, multi-org tutorial as a reference point -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org . Your connection profile will need the definition for both sets of (org1, org2) peers too (assuming multiple peers in each?) is that the case?, eg. peer0 from org0, peer1.org0, peer0.org1, peer1.org1 etc etc. Hyperledger Composer can only work with 1 channel, so you need to ensure that only a single channel is defined in the channel section (even though the document can support multiple channel definitions).
for now every channel only has 1 peer. so it looks like peer0.org1 and peer0.org2 ah okay i see i'll try that. The reason i got confused was indeed because of the channels field which seems like it supports 2 channels. I'll report back after lunch if i get it working.
i got it working now thank you!
[ ](https://chat.hyperledger.org/channel/composer?msg=cNsLKSzxvHP9DBySw) @Rochendiil cool!
Please, How can I create and import a user card with Admin API?
[ ](https://chat.hyperledger.org/channel/composer?msg=FbhdxhQ6gJ6fxGZJg) @Korvictech if you mean FileSystemCardStore based card - there is a programmatic example in the [knowledge-wiki](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#card-api-errors--resolutions) - and other links below that.
Thank you very much @mahoney1. I have being able to perfect that. I still have fabric-ca-client Connection Timeout issues from time to time. How can I resolve that?
[ ](https://chat.hyperledger.org/channel/composer?msg=W5z3St5mJXAsRCMkZ) @Korvictech have you checked the fabric-ca-client docs -> https://readthedocs.org/projects/hyperledger-fabric-ca/downloads/pdf/release-1.2/ users guide, https://hyperledger-fabric-ca.readthedocs.io/en/latest/users-guide.html#fabric-ca-client and https://fabric-sdk-node.github.io/FabricCAClient.html
[ ](https://chat.hyperledger.org/channel/composer?msg=W5z3St5mJXAsRCMkZ) @Korvictech have you checked the fabric-ca-client docs -> https://readthedocs.org/projects/hyperledger-fabric-ca/downloads/pdf/release-1.2/ users guide, https://hyperledger-fabric-ca.readthedocs.io/en/latest/users-guide.html#fabric-ca-client and https://fabric-sdk-node.github.io/FabricCAClient.html or you might want to ask on the #fabric channel
[ ](https://chat.hyperledger.org/channel/composer?msg=GhhW8mWpXMdurKgfD) @davidkel Oh don't worry I know :upside_down:
News came halfway through development. Very unfortunately timed but it still fits the project pretty well.
News came halfway through development. Very unfortunately timed but it still fits the project pretty damn well
@david-kim-tpe You might want to either raise a github issue or a stackoverflow providing details and recreation code. It's possible something is not handling the data conversion correctly. It may not be composer but something that composer depends on. Also include the chaincode logs as well will help.
@JeffGutierrez unfortunately without any context, it's not possible to help. Suggest you create a stackoverflow with details of your code and actions you are perfoming to demonstrate the problem
Has joined the channel.
Has joined the channel.
Hi there! I'm playing a bit with Composer. I would like to know how to:
- Split my script files into different modules: are there naming conventions? What are namespacing best practices? etc.
- Regarding `.cto` files, I am already able to split them - but again what are the best practices, domain driven design etc for these?
- Same question for permissions - the `permissions.acl` file quickly becomes a huge blob, and I'd like to know if I can split it OotB?
Or do I have to make myself some tooling?
Another question, related to the first one - as far as I can see with online examples, Composer is great for some projects. But as such material is quite rare, I was wondering how it goes for bigger scale projects. Are there any examples showing best practices as project grows?
Last but not least - I noticed that Composer will not get the same effort as it did from IBM, and I was wondering whether any other framework existed with permissions, and query language?
Thanks for helping!
@Doodloo 1. you can split and have helper functions but all must be in `/lib` folder of your project 2. Namespaces represent domains for orgs / or even depts within orgs and resources thereof (within a given namespace) ie related to the assets, participants and transactions |(and/or abstractions thereof eg Address is a concept with the same fields every time, so can abstract to a Concept etc)) - also abstraction to the point where separation of resources (as explained) may be subject to succinct ACL permissions (authorizations applied to a business network). See https://stackoverflow.com/questions/45812534/hyperleger-composer-namespace-already-exists-error-on-composer-archive-create and for an example see this business network sample model files in the same models directory https://github.com/hyperledger/composer-sample-models/tree/master/packages/vehicle-lifecycle-model/models - you can see the sample networks too for examples https://github.com/hyperledger/composer-sample-networks/tree/master/packages or read [the modeling page in the docs](https://hyperledger.github.io/composer/latest/reference/cto_language) . Permissions - just one file - called `permissions.acl` - also would read [this announcement](https://lists.hyperledger.org/g/composer/message/125) too fyi. Composer is not suitable for a production platform going forward, fine for PoCs etc. Last question: you would have to go to Fabric itself, for application of its own access controls (nothing to do with a business network) and CouchDB querys (Composer translates queries defined in its language to CouchDB queries in effect)
@Doodloo 1. you can split and have helper functions but all must be in `/lib` folder of your project 2. Namespaces represent domains for orgs / or even depts within orgs and resources thereof (within a given namespace) ie related to the assets, participants and transactions |(and/or abstractions thereof eg Address is a concept with the same fields every time, so can abstract to a Concept etc)) - also abstraction to the point where separation of resources (as explained) may be subject to succinct ACL permissions (authorizations applied to a business network). See https://stackoverflow.com/questions/45812534/hyperleger-composer-namespace-already-exists-error-on-composer-archive-create and for an example see this business network sample model files in the same models directory https://github.com/hyperledger/composer-sample-models/tree/master/packages/vehicle-lifecycle-model/models - you can see the sample networks too for examples https://github.com/hyperledger/composer-sample-networks/tree/master/packages or read [the modeling page in the docs](https://hyperledger.github.io/composer/latest/reference/cto_language) . Permissions - just one file - called `permissions.acl` - also would read [this announcement](https://lists.hyperledger.org/g/composer/message/125) too fyi. Composer is not suitable for a production platform going forward, fine for PoCs etc. Last question: you would have to go to Fabric itself, for application of its own access controls (nothing to do with a business network) and CouchDB queries (Composer translates its Query language defined queries(predicated on CouchDB) to CouchDB queries in effect)
@Doodloo 1. you can split and have helper functions but all must be in `/lib` folder of your project 2. Namespaces represent domains for orgs / or even depts within orgs and resources thereof (within a given namespace) ie related to the assets, participants and transactions |(and/or abstractions thereof eg Address is a concept with the same fields every time, so can abstract to a Concept etc)) - also abstraction to the point where separation of resources (as explained) may be subject to succinct ACL permissions (authorizations applied to a business network). See https://stackoverflow.com/questions/45812534/hyperleger-composer-namespace-already-exists-error-on-composer-archive-create and for an example see this business network sample model files in the same models directory https://github.com/hyperledger/composer-sample-models/tree/master/packages/vehicle-lifecycle-model/models - you can see the sample networks too for examples https://github.com/hyperledger/composer-sample-networks/tree/master/packages or read [the modeling page in the docs](https://hyperledger.github.io/composer/latest/reference/cto_language) . Permissions - just one file - called `permissions.acl` - also would read [this announcement](https://lists.hyperledger.org/g/composer/message/125) too fyi. Composer is not suitable for a production platform going forward, fine for PoCs etc. Last question: you would have to go to Fabric itself, for application of its own access controls and writing CouchDB queries (fyi Composer translates its Query language defined queries(predicated on CouchDB) to CouchDB queries in effect)
@Doodloo 1. you can split and have helper functions but all must be in `/lib` folder of your project 2. Namespaces represent domains for orgs / or even depts within orgs and resources thereof (within a given namespace) ie related to the assets, participants and transactions |(and/or abstractions thereof eg Address is a concept with the same fields every time, so can abstract to a Concept etc)) - also abstraction to the point where separation of resources (as explained) may be subject to succinct ACL permissions (authorizations applied to a business network). See https://stackoverflow.com/questions/45812534/hyperleger-composer-namespace-already-exists-error-on-composer-archive-create and for an example see this business network sample model files in the same models directory https://github.com/hyperledger/composer-sample-models/tree/master/packages/vehicle-lifecycle-model/models - you can see the sample networks too for examples https://github.com/hyperledger/composer-sample-networks/tree/master/packages or read [the modeling page in the docs](https://hyperledger.github.io/composer/latest/reference/cto_language) . Permissions - just one file - called `permissions.acl` - also would read [this announcement](https://lists.hyperledger.org/g/composer/message/125) too fyi. Composer is not suitable for a production platform going forward, fine for PoCs etc. Last question: you would have to go to Fabric itself, for application of its own access controls and writing CouchDB queries (fyi Composer translates its Query language-defined queries (predicated on CouchDB) to CouchDB queries)
@Doodloo 1. you can split and have helper functions but all must be in `/lib` folder of your project 2. Namespaces represent domains for orgs / or even depts within orgs and resources thereof (within a given namespace) ie related to the assets, participants and transactions |(and/or abstractions thereof eg Address is a concept with the same fields every time, so can abstract to a Concept etc)) - also abstraction to the point where separation of resources (as explained) may be subject to succinct ACL permissions (authorizations applied to a business network). See https://stackoverflow.com/questions/45812534/hyperleger-composer-namespace-already-exists-error-on-composer-archive-create and for an example see this business network sample model files in the same models directory https://github.com/hyperledger/composer-sample-models/tree/master/packages/vehicle-lifecycle-model/models - you can see the sample networks too for examples https://github.com/hyperledger/composer-sample-networks/tree/master/packages or read [the modeling page in the docs](https://hyperledger.github.io/composer/latest/reference/cto_language) . Permissions - just one file - called `permissions.acl` - also would read [this announcement](https://lists.hyperledger.org/g/composer/message/125) too fyi. Composer is not suitable for a production platform going forward, ok for PoCs etc. Last question: you would have to go to Fabric itself, for application of its own access controls and writing CouchDB queries (fyi Composer translates its Query language-defined queries (predicated on CouchDB) to CouchDB queries)
how does hyperledger composer handle storing a list of derived objects? is it possible?
for example, in my model i have a --> Entity[] previousOwners
then i have participants that extend Entity
participant Seller extends Entity, participant Buyer extends Entity
can I push both an instance of Seller and Buyer into previousOwners?
actually, how do i initialize previousOwners?
`assetName.previousOwners = [factory.newRelationship(namespace, 'Seller', 'SampleSeller'), factory.newRelationship(namespace, 'Buyer', 'SampleBuyer')]`?
if anyone was wondering, the answers to my questions above are yes, and yes :)
Folks, I am trying to upgrade a network with composer network upgrade command and even giving the -o npmrcFile=
[ ](https://chat.hyperledger.org/channel/composer?msg=kNHM2X374na48pXK9) Sorry, the error I get is "FetchError: request to https://registry.npmjs.org/composer-runtime-hlfv1 failed, reason: connect ECONNREFUSED 104.16.17.35:443"
@MaheshBalan_Pravici you have to set the npmrcFile when you install the business network you want to upgrade to, not when you request the upgrade. ie `composer network install ... -o npmrcFile=...`
Has joined the channel.
Has joined the channel.
In the composer GitHub the /codegen directory within composer-common, there is what looks like a CTO-to-Java convertor, which apparently converts the contents of a BusinessNetworkDefinition to Java code.
Does this mean that it will (a) produce cross-compiled code that can run directly on Fabric without a Composer runtime? Or (b) produce a Java domain model that mirrors that CTO and Java-client stub that can be used to connect to the REST server?
[ ](https://chat.hyperledger.org/channel/composer?msg=BidwNZBC5PSpTmMF7) @mahoney1 @mahoney1 upon running `docker ps` I am getting this:```
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
941f960aab15 hyperledger/fabric-peer:1.2.0 "peer node start" About a minute ago Up About a minute 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
01e0a0da8934 hyperledger/fabric-couchdb:0.4.10 "tini -- /docker-ent…" About a minute ago Up About a minute 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
9947e3655619 hyperledger/fabric-ca:1.2.0 "sh -c 'fabric-ca-se…" About a minute ago Up About a minute 0.0.0.0:7054->7054/tcp ca.org1.example.com
101c6b547cbc hyperledger/fabric-orderer:1.2.0 "orderer" About a minute ago Up About a minute 0.0.0.0:7050->7050/tcp orderer.example.com
```
And upon running `composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial_network@0.0.1.bna ` I am getting: ```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
```
The output is the same even when I used `npmrcFile` option and specified the proxy variables in the npmrc file.
I really want to learn using and to develop on the hyperledger framework, but with all these issues, I can't proceed any further. Please help me here.
Has joined the channel.
hello, im creating a multi org network. As i try to ping the network i got:
hello, im creating a multi org network. As i try to ping the network on an org i got:
Error: Unable to initalize channel. Attempted to contact 2 Peers. Last error was Error: Error: Failed to connect before the deadline
hello, im creating a multi org network. As i try to ping the network on an org i got:
Error: Unable to initalize channel. Attempted to contact 2 Peers. Last error was Error: Error: Failed to connect before the deadline
The other org is able to ping just fine though. Im wondering what may be the cause of this
upon closer inspection on my logs for the chaincode i got this
Calling chaincode Invoke() returned error response [Error: The current identity, with the name 'admin' and the identifier '4845f00996f8acea8b1d3ce3f48d5023ce7c852f7aac0a5f4a04dc1c4025be2b', must be activated (ACTIVATION_REQUIRED)]. Sending ERROR message back to peer
Has joined the channel.
Hello, how can I add composer to my existing hyperledger network? I am using basic network from the fabric samples
Has joined the channel.
hello, when I startFabric.sh,one WARNING occurred.
I want to know how to solve it.And the warning’s reason.
Could you help me?
MrGreeddeMacBook-Pro:~ mr.greed$ ~/fabric-dev-servers/startFabric.sh
Development only script for Hyperledger Fabric control
Running 'startFabric.sh'
FABRIC_VERSION is unset, assuming hlfv12
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Removing network composer_default
WARNING: Network composer_default not found.
Creating network "composer_default" with the default driver
Creating ca.org1.example.com ... done
Creating orderer.example.com ... done
Creating couchdb ... done
Creating peer0.org1.example.com ... done
[ ](https://chat.hyperledger.org/channel/composer?msg=jAxGLvyHTdkT74cgW) @PhilipAndrew hello, check this out https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82
[ ](https://chat.hyperledger.org/channel/composer?msg=4kPL7Rpo3eQREY2Q7) @zhuhwen it only means that before running the script you have yet to select your fabric version. hence, the script will automatically apply version 1.2 (in your case)
[ ](https://chat.hyperledger.org/channel/composer?msg=nFwT9genhRcPcJTiz) the warnings can be ignored. they are docker related
[ ](https://chat.hyperledger.org/channel/composer?msg=5mKxHYmSpWwix7qmR) @CheeChyuan Thankyou I will take a look
Hello I have an issue to add 3rd organisation using composer. github link is https://github.com/hyperledger/composer/issues/4370. I am using fabric 1.2.1 and composer 0.20.2. Does anyone have same problem?
[ ](https://chat.hyperledger.org/channel/composer?msg=5mKxHYmSpWwix7qmR) @CheeChyuan okay!Thank you!@CheeChyuan
while doing 'npm install -g composer-cli@0.20 composer-rest-server@0.20 generator-hyperledger-composer@0.20'
while doing 'npm install -g composer-cli@0.20 composer-rest-server@0.20 generator-hyperledger-composer@0.20'
Screenshot from 2018-11-05 05-10-54.png
[ ](https://chat.hyperledger.org/channel/composer?msg=5QuirYQQAxG7WnYQT) help me
Screenshot from 2018-11-05 05-36-23.png
[ ](https://chat.hyperledger.org/channel/composer?msg=9pTW2PDDfwwhfoqhq) @adnanabbasktt it seems you have an orderer container from your previous installation. remove it using docker rm $(docker ls -aq) and try again
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=8ah94c9r3AKnXcfEP) @harryc same here i had that problem. still figuring out the solution
Clipboard - November 4, 2018 9:22 PM
@CheeChyuan It is so strange. I am also trying to fix and find clue. If you find something, please let me know. I will also share my thing.
[ ](https://chat.hyperledger.org/channel/composer?msg=yfyTEJiBd3zPp36hK) @harryc i actually created a s/o for this with no success. https://stackoverflow.com/questions/52941431/error-2-unknown-access-denied-channel-composerchannel-creator-org
Hi I have created a S/O for my issue. https://stackoverflow.com/questions/53139457/unable-to-ping-network-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=mgAoFF4CYyvaa63hF) @CheeChyuan docker rm $(docker ls -aq) output an message unknown flag.
[ ](https://chat.hyperledger.org/channel/composer?msg=mgAoFF4CYyvaa63hF) @CheeChyuan docker rm $(docker ls -aq) output a message unknown flag.
Hi Everybody
Docker connection is being broken after 3-4 days when i start it
It show message as "packets_write_wait: Connection to 18.33.445.244 porta 22:broken pipe"
I don't know reason
Can anybody please help me in this why this is happening
[ ](https://chat.hyperledger.org/channel/composer?msg=KzdzKLZ39F9HLLRni) @adnanabbasktt can you show me the outputs?
Hi i have doubt regarding decentralised storage. Any resources about decentralised storage in hyperledger. The current things which i read and understood are :
Hi i have doubt regarding decentralised storage. Any resources about * decentralized storage using hyperledger.* I want to know such a thing is possible or not. The current things which I read and understood are :
* Encrypting the file in some server and then storing the crypto has within the blockchain for immutability.
* Using the IPFS integration for storing the files via etherum.
The one thing which I read was its possible to store the image within the hyper ledger through a transaction using base64 string and then finally displaying through the browser. What about other types of file storage within the hyper ledger fabric?
@mahoney1 @labcoinpoc
Can anyone please suggest how to add organisation to a new channel
[ ](https://chat.hyperledger.org/channel/composer?msg=PaQui8pTrWtAELo66) @Mounikak this can help: https://developer.ibm.com/tutorials/cl-add-an-organization-to-your-hyperledger-fabric-blockchain/
if you need more information, you can ask in #fabric / #fabric-questions channels :)
[ ](https://chat.hyperledger.org/channel/composer?msg=PaQui8pTrWtAELo66) @Mounikak this my help: https://developer.ibm.com/tutorials/cl-add-an-organization-to-your-hyperledger-fabric-blockchain/
if you need more information, you can ask in #fabric / #fabric-questions channels :)
[ ](https://chat.hyperledger.org/channel/composer?msg=PaQui8pTrWtAELo66) @Mounikak this may help: https://developer.ibm.com/tutorials/cl-add-an-organization-to-your-hyperledger-fabric-blockchain/
if you need more information, you can ask in #fabric / #fabric-questions channels :)
Has joined the channel.
How do I integrate HyperLedger Composer files with HyperLedger Python SDK ?
HyperLedger Composer provides high-level definitions in the model file and programming details in the javascript file. However HyperLedger Python SDK provides low-level programming API's. How can one access composer javascript functions from the python files?
[ ](https://chat.hyperledger.org/channel/composer?msg=7wbzQDLKBwQmvv6Cb) @CheeChyuan docker rm $(docker *ps* -aq)
Hi experts, how to model a lookup data such as list of administrative districts or list of countries, knowing that i need be able to update the list using rest server api? an enum is not updatable, should we use concept or an asset in this case?
[ ](https://chat.hyperledger.org/channel/composer?msg=EvFHDZTs5sAbv9DhS) @rrishmawi you can use an asset in my openion
[ ](https://chat.hyperledger.org/channel/composer?msg=EvFHDZTs5sAbv9DhS) @rrishmawi you can use an asset or concept in my openion
[ ](https://chat.hyperledger.org/channel/composer?msg=HHxzrzea64734SM5a) @waleed Thanks waleed, i am confused about when to use a concept, is it exposed by the rest server api?
[ ](https://chat.hyperledger.org/channel/composer?msg=pRd8ETckro5uDZuEr) @haow85 There is no interface between the Python SDK and Composer. If you want to invoke the Composer Transactions, you will need to use the Composer Javascript API - https://hyperledger.github.io/composer/latest/applications/node.html
[ ](https://chat.hyperledger.org/channel/composer?msg=e9hciWGndLyewDfvJ) @rrishmawi "concepts are abstract classes. They are typically contained by an asset, participant or transaction."
so you can see it is not exposed by the rest server api. because if yiu define a concept, you will need it for an asset, participant or transaction.
[ ](https://chat.hyperledger.org/channel/composer?msg=7EJoa3LyRmyRPdaKf) @waleed Thanks waleed, then a concept does not work in my case, since i need a dynamic list of districts for example.correct?
[ ](https://chat.hyperledger.org/channel/composer?msg=FdpqDxPBQEfbLzbPe) @rrishmawi yes
[ ](https://chat.hyperledger.org/channel/composer?msg=FdpqDxPBQEfbLzbPe) @rrishmawi yes, unless some one can correct me if I am wrong :)
[ ](https://chat.hyperledger.org/channel/composer?msg=FdpqDxPBQEfbLzbPe) @rrishmawi yes, unless someone can correct me if I am wrong :)
[ ](https://chat.hyperledger.org/channel/composer?msg=MKXyyaCAzog935yyw) @sooraj-citta Hyperledger Fabric is not designed for File Storage. These links from Stack Overflow cover the storage of files using base64:
https://stackoverflow.com/questions/51743406/how-to-store-large-file-in-hyperledger-fabric-using-hyperledger-composer
https://stackoverflow.com/questions/49715487/how-to-store-file-into-hyperledger-fabric-using-hyperledger-composer
@rthatcher : Thanks for the detailed reply. So file storage doesnot work in hyperledger. Just as i read, file have to be stored somewhere externally, encrypted and the hash have to be stored within the ledger. One doubt though, how does this IPFS, Storj etc work underneath those are blockchains too right ??
[ ](https://chat.hyperledger.org/channel/composer?msg=eL63x4f64eS24tjCc) @haow85 you can call the transaction processor functions as transaction endpoints, exposed as business network APIs. You can use an appropriate module in your APIs like `request-promises`, `axios` (whatever) to call the transaction (which can be a committing txn, or a read-only non-committing txn) to return something to your calling API - an example is shown here (answer) -> https://stackoverflow.com/questions/51783822/historian-for-a-particular-participant/51820465#51820465
[ ](https://chat.hyperledger.org/channel/composer?msg=eL63x4f64eS24tjCc) @haow85 you can call the transaction processor functions as transaction endpoints, exposed as business network REST APIs. You can use an appropriate module in your APIs like `request-promises`, `axios` (whatever) to call the transaction (which can be a committing txn, or a read-only non-committing txn) to return something to your calling API - an example is shown here (answer) -> https://stackoverflow.com/questions/51783822/historian-for-a-particular-participant/51820465#51820465
[ ](https://chat.hyperledger.org/channel/composer?msg=eL63x4f64eS24tjCc) @haow85 you can call the transaction processor functions as transaction endpoints, exposed as business network REST APIs. You can use an appropriate module in your APIs like python `requests`, `axios` (whatever) to call the transaction (which can be a committing txn, or a read-only non-committing txn) to return something to your calling API - an example is shown here (answer) -> https://stackoverflow.com/questions/51783822/historian-for-a-particular-participant/51820465#51820465
[ ](https://chat.hyperledger.org/channel/composer?msg=gNtyLuKbDmgRHSgsX) @sooraj-citta Where are you reading that Hyperledger Fabric or Composer are using IPFS ?
@rrishmawi just use an asset eg. `DistrictListing` and you can lookup and access control the districts at the same time
@rrishmawi just use an asset eg. `DistrictListing` and you can lookup and use access controls (authorization) on the districts at the same time
@rthatcher : This is the link i am reading https://medium.com/@mycoralhealth/learn-to-securely-share-files-on-the-blockchain-with-ipfs-219ee47df54c
I am just confused. So as of now i understood :
* Hyperledger can be used to store files or sort. Only string formats
* Only accepted method will be store the files in other decentralised service like IPFS and use the hash within the block chain.
Just wondering how IPFS which is decentralised was able to do it while hyperledger couldn't.
@rthatcher : This is the link i am reading https://medium.com/@mycoralhealth/learn-to-securely-share-files-on-the-blockchain-with-ipfs-219ee47df54c
I am just confused. So as of now i understood :
* Hyperledger can't be used to store files or sort. Only string formats
* Only accepted method will be store the files in other decentralised service like IPFS and use the hash within the block chain.
Just wondering how IPFS which is decentralised was able to do it while hyperledger couldn't.
Hello Everybody,
Network connection is being broken after 3-4 days since i start the network
It showing message like "packet_write_wait: Connection to 18.203.241.185 port 22: Broken pipe"
When i check peer log then it seems all clear
I am sharing same here too
https://hastebin.com/igasefohok.md
https://hastebin.com/ubomofetub.cs
https://hastebin.com/acawocuyos.cs
https://hastebin.com/xadituwopi.md
https://hastebin.com/uvulesolir.cs
https://hastebin.com/udevivasas.md
Can anybody please look into and tell me where is the issue?
@sooraj-citta generally you would not store files on the blockchain. Usually a hash of the file, and URI reference. IPFS is able to do the search/lookup/organisation because its designed to manage storage of objects/files and has the means (CLI, APIs) to integrate it and you can reference it from the appropriate asset or participant etc etc.
Thanks you @mahoney1 @rthatcher . With these concept you have mentioend so far, i will do further reading.
Has joined the channel.
Hello guys, I'm new to Hyperledger and composer. I would like to know is there a way to override composer's auto-generated transactionId? Thanks.
@prasanths96 - you can't really override, it is part of the transaction (and a reserved word in the model), the same ID that comes from the Fabric blockchain.
@mahoney1 Thanks for reply. I was trying to invoke a transaction of BusinessNetwork B from BusinessNetwork A. But, BusinessNetwork B's function is written in such a way, it will invoke BusinessNetowrk A's another transaction function to send response.
@return function is not working in this type of scenerio, where B should return value to A. Is there a workaround for this? I just want to return a value from one business network to other, without using events.
I use const somevariable = getNativeAPI().invokeChaincode('chaincode-name','Arguments'); to invoke other network's transaction function. When i set @return in that function, "somevariable" is showing protos.Response. Will it contain the returned value? If yes, how can i take it out?
I use " const somevariable = getNativeAPI().invokeChaincode('chaincode-name','Arguments'); " to invoke other network's transaction function. When i set @return in that function, "somevariable" is showing "protos.Response". Will it contain the returned value? If yes, how can i take it out?
is it ok for a concept to have an asset as a parameter
i know the other way around is ok
[ ](https://chat.hyperledger.org/channel/composer?msg=g9MdLyCdHYmtEDg3J) @prasanths96 see https://hyperledger.github.io/composer/latest/tutorials/invoke-composer-network for example. Use std javascript methods to parse the response. Not sure why you want to call B (from A) to invoke transaction A when you could call from within same B/N.
A is like a generic network which is connected to other networks B,C,D etc.. doing their own things. A have to call B or C or D, get things processed and needs result to be sent back to A. I tried @return annotation to do that first, then made B to call A with its result to store the result on A.
A is like a generic network which is connected to other networks B,C,D etc.. doing their own things. A have to call B or C or D, get things processed and needs result to be sent back to A. I tried @return annotation to do that first, then made B to call A with its result to store the result on A. (B has to call A here because, the result is calculated by B)
A is like a generic network which is connected to other networks B,C,D etc.. doing their own things. A have to call B or C or D, get things processed and needs result to be sent back to A. I tried @return annotation to do that first, then made B to call A with its result to store the result on A. (B has to call A here because, the result is calculated by B
A is like a generic network which is connected to other networks B,C,D etc.. doing their own things. A have to call B or C or D, get things processed and needs result to be sent back to A. I tried @return annotation to do that first, then made B to call A with its result to store the result on A. (B has to call A here because, the result is calculated by B )
I have no idea how to parse the result (is it even possible?) . Any example codes very much appreciated :)
I have no idea how to parse the result (is it even possible?) . Any example codes very much appreciated :) (The link you have given doesn't have what I need)
Hi all, i have a question about modeling the relationship between assets. if i have an asset A and an asset B, asset A lets say a Person and asset B is Country. should i create a "owns" relationship using "-->" or a composition relationship with "o" notation? what is the deference between both?
[ ](https://chat.hyperledger.org/channel/composer?msg=LvCbe5yckqg9s8LjL) @mahoney1 Thanks for your time. I will tryout something using the link.
[ ](https://chat.hyperledger.org/channel/composer?msg=XjBxDtjaCL6oSEs5N) @rrishmawi Hi @rrishmawi if you are going to include one of your assets in another asset, (say Person has a field of Country) then, you have to use --> relation for Country field inside Person. If there is no relation between other assets and the fields (eg: Identity Number), then you can use 'o'
@prasanths96 might be simpler to use REST APIs and call-outs eg -> https://hyperledger.github.io/composer/latest/integrating/call-out (with examples of parsing results). An example of exposing a read-only transaction query function (that can return results, whether to a client or to another business network - per the above link) and parsing the results is shown in the answer here -> https://stackoverflow.com/questions/51783822/historian-for-a-particular-participant/51820465#51820465
@prasanths96 fyi might be simpler to use REST APIs and call-outs to biz/networks B, C, D - eg -> https://hyperledger.github.io/composer/latest/integrating/call-out (with examples of parsing results). An example of exposing a read-only transaction query function (that can return results, whether to a client or to another business network - per the above link) and parsing the results is shown in the answer here -> https://stackoverflow.com/questions/51783822/historian-for-a-particular-participant/51820465#51820465
[ ](https://chat.hyperledger.org/channel/composer?msg=bkaNzY76Nwkwqe5KE) @mahoney1 Thank you so much. I will check those out and post here if i need anything else :)
@rthatcher How to run composer-rest-server on different machines?
[ ](https://chat.hyperledger.org/channel/composer?msg=xuvvdZkJC7vTx5XFa) @sureshtedla That should be fine. You will need to think about the Business Network card you will use so that the Fabric can be 'seen' on the 'new' machine. If you are using the development fabric, the cards will list 'localhost' as the address for the fabric end points and that won't work from a separate machine.
hello, when I input composer-playground in terminal, it can’t start up.This is the message,I want to know the problem’s reason.
MrGreeddeMacBook-Pro:fabric-dev-servers mr.greed$ composer-playground
-bash: composer-playground: command not found
Hyperledger Composer PeerAdmin card has been imported, host of fabric specified as 'localhost'
MrGreeddeMacBook-Pro:fabric-dev-servers mr.greed$ composer-playground
-bash: composer-playground: command not found
MrGreeddeMacBook-Pro:fabric-dev-servers mr.greed$
Hi all! I'm developing a Loopback Application that uses loopback-connector-composer. It takes more than 15s to open a new connection to HLF. I analyzed the logs and a lot of time is lost when the ACL loaded:
`2018-11-05T12:59:54.407Z DEBUG :BusinessNetworkDefinition:fromArchive() Adding ACL files to ACL manager {}$
2018-11-05T13:00:09.185Z DEBUG :BusinessNetworkDefinition:fromArchive() Added ACL files to ACL manager {}$`
Hi all! I'm developing a Loopback Application that uses loopback-connector-composer. It takes more than 15s to open a new connection to HLF. I analyzed the logs and a lot of time is lost when the ACL loaded:
`2018-11-05T12:59:54.407Z DEBUG :BusinessNetworkDefinition:fromArchive() Adding ACL files to ACL manager {}$
2018-11-05T13:00:09.185Z DEBUG :BusinessNetworkDefinition:fromArchive() Added ACL files to ACL manager {}$````
The Loopback Application doesn't need the ACL rules. These are only needed by the chaincode.```
```
```
Hi all! I'm developing a Loopback Application that uses loopback-connector-composer. It takes more than 15s to open a new connection to HLF. I analyzed the logs and a lot of time is lost when the ACLs are loaded:
`2018-11-05T12:59:54.407Z DEBUG :BusinessNetworkDefinition:fromArchive() Adding ACL files to ACL manager {}$
2018-11-05T13:00:09.185Z DEBUG :BusinessNetworkDefinition:fromArchive() Added ACL files to ACL manager {}$`
The Loopback Application doesn't need the ACL rules. These are needed only by the chaincode. Do you know if there is a way to skip the loading of ACLs on the client, some kind of configuration option? Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=xtnDYt7txhCmoKqQ2) @zhuhwen When you installed composer-playground, did you remember the *-g* option ?
Hi Everyone ,
docker manifest and images not found for fabric-ca, fabric-couchdb, fabric-kafka, and fabric-zookeeper
I just run the below commond
'curl -sSL https://goo.gl/6wtTN5 | bash -s 1.1.0'
and geeting the below error
Error response from daemon: manifest for hyperledger/fabric-ca:x86_64-1.3.0-rc1 not found
Error response from daemon: No such image: hyperledger/fabric-ca:x86_64-1.3.0-rc1
===> Pulling thirdparty docker images
==> THIRDPARTY DOCKER IMAGE: couchdb
Error response from daemon: manifest for hyperledger/fabric-couchdb:x86_64-0.4.12 not found
Error response from daemon: No such image: hyperledger/fabric-couchdb:x86_64-0.4.12
==> THIRDPARTY DOCKER IMAGE: kafka
Error response from daemon: manifest for hyperledger/fabric-kafka:x86_64-0.4.12 not found
Error response from daemon: No such image: hyperledger/fabric-kafka:x86_64-0.4.12
==> THIRDPARTY DOCKER IMAGE: zookeeper
Error response from daemon: manifest for hyperledger/fabric-zookeeper:x86_64-0.4.12 not found
Error response from daemon: No such image: hyperledger/fabric-zookeeper:x86_64-0.4.12
Error response from daemon: manifest for hyperledger/fabric-ca:x86_64-1.3.0-rc1 not found
Error response from daemon: No such image: hyperledger/fabric-ca:x86_64-1.3.0-rc1
===> Pulling thirdparty docker images
==> THIRDPARTY DOCKER IMAGE: couchdb
Error response from daemon: manifest for hyperledger/fabric-couchdb:x86_64-0.4.12 not found
Error response from daemon: No such image: hyperledger/fabric-couchdb:x86_64-0.4.12
==> THIRDPARTY DOCKER IMAGE: kafka
Error response from daemon: manifest for hyperledger/fabric-kafka:x86_64-0.4.12 not found
Error response from daemon: No such image: hyperledger/fabric-kafka:x86_64-0.4.12
==> THIRDPARTY DOCKER IMAGE: zookeeper
Error response from daemon: manifest for hyperledger/fabric-zookeeper:x86_64-0.4.12 not found
Error response from daemon: No such image: hyperledger/fabric-zookeeper:x86_64-0.4.12
I found the post same as my issue
https://jira.hyperledger.org/browse/FAB-12317
[ ](https://chat.hyperledger.org/channel/composer?msg=JKExbzxz5sicZwqie) @rthatcher Yes,When I installed composer-playground,I write the -g option.
Has joined the channel.
Hello, I don't know in which chat to post this question :
With the NodeJS api, is it possible to choose on which channel I submit my tx ?
For ex, I make a tx about BankA and B, I don't want BankC to be notified about it, so I created a channel between A and B. How can I do this ? Is it possible ?
Hello Everyone, I tried using my admin business card and I keep getting this response `=!=zSqNWKS3FaZLqAGRx=!= `
"
Hello Everyone, I tried connecting to my business network using my admin card and I got this:
`=!=b3Rer8epQHCXMdxqt=!=`
Please what this mean and how can it be resolved?
Hello Everyone, I tried connecting to my business network using my admin card and I got this:
`Error: Error trying to ping. Error: No identity has been assigned to this client
at _checkRuntimeVersions.then.catch (/home/korede/hyperProjects/hammock-watson/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:803:34)
at
@venkat_nagaraj Use `curl -sSL https://goo.gl/6wtTN5 | bash -s 1.1.1 1.1.0 0.4.6`. The same change is submitted to update the docs.
Has joined the channel.
Hi, I'm attempting to start the network but am getting this error: ```$ composer network start -c PeerAdmin@a1b1channel-network-orga1 -n a1b1-byfn -V 0.0.1 -o endorsementPolicyFile=../client/config/endorse/endorsement-policy-a1b1.json -A orgA1user -C orgA1user/admin-pub.pem-A orgB1user -C orgB1user/admin-pub.pem -A reguser -C reguser/admin-pub.pem
Starting business network a1b1-byfn at version 0.0.1
Processing these Network Admins:
userName: orgA1user
userName: orgB1user
userName: reguser
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to connect to any peer event hubs. It is required that at least 1 event hub has been connected to receive the commit event
Command failed```
Hi, I'm attempting to start the network but am getting the following error: ```$ composer network start -c PeerAdmin@a1b1channel-network-orga1 -n a1b1-byfn -V 0.0.1 -o endorsementPolicyFile=../client/config/endorse/endorsement-policy-a1b1.json -A orgA1user -C orgA1user/admin-pub.pem -A orgB1user -C orgB1user/admin-pub.pem -A reguser -C reguser/admin-pub.pem
Starting business network a1b1-byfn at version 0.0.1
Processing these Network Admins:
userName: orgA1user
userName: orgB1user
userName: reguser
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to connect to any peer event hubs. It is required that at least 1 event hub has been connectedto receive the commit event
Command failed```
Hi, if I need to track when an asset changes owner by noting the past owners and the time of ownership changes, is it advisable to include a "History[] history" in the asset itself and keep adding onto that data? I tried reverse engineering the answer from the historian records, but it looks like I would need to make 3 api calls to get the same information
hmm, i wanted to be smart of have a "--> Transaction[] transactions" so I can keep pushing transactions that have effected the asset, but there is an error saying relationships "must be to an asset or participant"
hmm, i wanted to be smart and have a "--> Transaction[] transactions" so I can keep pushing transactions that have effected the asset, but there is an error saying relationships "must be to an asset or participant"
anyone know how submit another Transaction within a current Transaction? I want to have a setupDemo transaction that invokes other transactions
[ ](https://chat.hyperledger.org/channel/composer?msg=yT5ZiLkAF9KpDFFnp) @davidkel That worked thank you! BTW, using an asset to store the transactionid and the participant allowed me to not query all the transactions and avoid the chaincode container node.js from blowing up! In that regard, as of composer .19, for every composer query with a where clause, there is an automatic index being created right when we use couchdb?. How do we verify if the index got created by attaching to the couchdb container ?.
How does Composer view/user channels? Does Composer assume that all participants are in one channel? Is it possible to create a channel between two Participants in Composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=7wbzQDLKBwQmvv6Cb) @CheeChyuan adnan@adnan-Precision-T1600:~$ docker rm $(docker ls -aq)
unknown shorthand flag: 'a' in -aq
See 'docker --help'.
Usage: docker [OPTIONS] COMMAND
A self-sufficient runtime for containers
Has joined the channel.
is `hyperledger composer` going to be deprecated in favor of `fabric`
is `hyperledger composer` going to be deprecated in favor of `fabric`?
Hello, Hope you all are doing good.
I'm facing a problem for a particular type of participant interaction with composer (this error occurs on first interaction and persists for later interaction also) which is *“The current identity, with the name 'some_identifier' and the identifier '57e1bd6da04f49b1703d4813d4950c4c5cd6641fce3f805fae2545023fb2f16b' has not been registered”*. card is being created successfully and also it has been imported to wallet successfully.
can anyone please suggest that why is it happening and what could be possible fix for this?
Screenshot from 2018-11-07 06-37-09.png
Screenshot from 2018-11-07 06-37-09.png
Has joined the channel.
@adnanabbasktt - I think that you have Node v10 installed, but Composer supports only Node V8.
There are now 2 LTS (long term support) versions of Node and the Composer prerequisite install script was installing v10 by mistake. The script has now been fixed, but the quickest way to install composer is to use these commands to force node v8 - `nvm install 8` followed by `nvm use 8`
Before running these 2 command I would try to uninstall composer first `npm uninstall -g composer-cli`
[ ](https://chat.hyperledger.org/channel/composer?msg=E9E5Xg6rEPm5bD9SG) @adnanabbasktt apologize for my mistake. docker ps instead of ls. a mistake which i often make myself
[ ](https://chat.hyperledger.org/channel/composer?msg=PJ5E3zWDuQkZEHj4c) @amritsharma Have you restarted your Fabric? or is this an 'old' card?
Could you show the sequence of commands (or code) prior to the error ?
[ ](https://chat.hyperledger.org/channel/composer?msg=D2fwidzPECFx7e9oy) @ChebuRakshu Composer is a layer on top of Fabric designed to simplify the process of developing application for Fabric.
Going forward the best parts of Composer will be incorporated more directly into Fabric as explained by this announcement: https://lists.hyperledger.org/g/composer/message/125
Composer is still good for a quick demo or prototype, but is not advisable as a way forward for a production application.
[ ](https://chat.hyperledger.org/channel/composer?msg=Jh9RL4Y2HEPto5Mk9) @coveloper A Composer Business Network is deployed to a single channel, and Composer uses Business Network cards to connect to a single channel.
You can create extra channels and deploy additional versions of the same Business Network, but they will remain separate.
There is some more information in this Stack Overflow Q/A: https://stackoverflow.com/questions/53058390/can-we-add-multiple-channels-for-each-participants-and-identify-in-hyperledger-f/53062236#53062236
[ ](https://chat.hyperledger.org/channel/composer?msg=BMK9x2zz6yc8Y58us) @rthatcher Thanks. It's worked.
[ ](https://chat.hyperledger.org/channel/composer?msg=Nqx6BaAC6p8b5yHDd) @CheeChyuan it's also helped me, thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=RvxZ7xog8nRji93QQ) @dave.enyeart @dave.enyeart Thank you for your response I have the above command i am getting below error
`ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254d620703c75e03c1ad273c11a7552a7c1b". You have to remove (or rename) that container to be able to reuse that name.`
[ ](https://chat.hyperledger.org/channel/composer?msg=RvxZ7xog8nRji93QQ) @dave.enyeart @dave.enyeart Thank you for your response I have the above command i am getting below error
`~_*ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254d620703c75e03c1ad273c11a7552a7c1b". You have to remove (or rename) that container to be able to reuse that name.*_~`
[ ](https://chat.hyperledger.org/channel/composer?msg=RvxZ7xog8nRji93QQ) @dave.enyeart @dave.enyeart Thank you for your response I have the above command i am getting below error
_ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254d620703c75e03c1ad273c11a7552a7c1b". You have to remove (or rename) that container to be able to reuse that name._
[ ](https://chat.hyperledger.org/channel/composer?msg=RvxZ7xog8nRji93QQ) @dave.enyeart @dave.enyeart
Thank you for your response I have the above command but getting below error
_ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254d620703c75e03c1ad273c11a7552a7c1b". You have to remove (or rename) that container to be able to reuse that name._
[ ](https://chat.hyperledger.org/channel/composer?msg=RvxZ7xog8nRji93QQ) @dave.enyeart
Thank you for your response I have the above command but getting below error
_ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254d620703c75e03c1ad273c11a7552a7c1b". You have to remove (or rename) that container to be able to reuse that name._
[ ](https://chat.hyperledger.org/channel/composer?msg=RvxZ7xog8nRji93QQ) @dave.enyeart
Thank you for your response I have run the `curl -sSL https://goo.gl/6wtTN5 | bash -s 1.1.1 1.1.0 0.4.6` command but getting below error
```
nagaraja@nagaraja-VirtualBox:~/fabric-samples/first-network$ ./byfn.sh -m up
Starting with channel 'mychannel' and CLI timeout of '10' seconds and CLI delay of '3' seconds
Continue? [Y/n] Y
proceeding ...
2018-11-06 10:37:37.194 UTC [main] main -> INFO 001 Exiting.....
LOCAL_VERSION=1.1.1
DOCKER_IMAGE_VERSION=1.1.1
Starting peer1.org2.example.com ...
Starting peer1.org2.example.com
Creating orderer.example.com ...
Starting peer0.org2.example.com ...
Starting peer0.org2.example.com
Starting peer1.org1.example.com ...
Creating peer0.org1.example.com ...
Starting peer1.org1.example.com
Creating orderer.example.com
Creating peer0.org1.example.com ... error
ERROR: for peer0.org1.example.com Cannot create container for service peer0.org1.example.com: Conflict. The container name "/peer0.org1.example.com" is already in use by container "b250e81ab2c56f0e2d272eCreating orderer.example.com ... error
ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254Starting peer1.org1.example.com ... done
ERROR: for peer0.org1.example.com Cannot create container for service peer0.org1.example.com: Conflict. The container name "/peer0.org1.example.com" is already in use by container "b250e81ab2c56f0e2d272e3bce0f4c6ab6acb2856ec660702bf84d905e6e2d92". You have to remove (or rename) that container to be able to reuse that name.
ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254d620703c75e03c1ad273c11a7552a7c1b". You have to remove (or rename) that container to be able to reuse that name.
ERROR: Encountered errors while bringing up the project.
ERROR !!!! Unable to start network
```
[ ](https://chat.hyperledger.org/channel/composer?msg=RvxZ7xog8nRji93QQ) @dave.enyeart
Thank you for your response I have the above command but getting below error
proceeding ...
2018-11-06 10:37:37.194 UTC [main] main -> INFO 001 Exiting.....
LOCAL_VERSION=1.1.1
DOCKER_IMAGE_VERSION=1.1.1
Starting peer1.org2.example.com ...
Starting peer1.org2.example.com
Creating orderer.example.com ...
Starting peer0.org2.example.com ...
Starting peer0.org2.example.com
Starting peer1.org1.example.com ...
Creating peer0.org1.example.com ...
Starting peer1.org1.example.com
Creating orderer.example.com
Creating peer0.org1.example.com ... error
ERROR: for peer0.org1.example.com Cannot create container for service peer0.org1.example.com: Conflict. The container name "/peer0.org1.example.com" is already in use by container "b250e81ab2c56f0e2d272eCreating orderer.example.com ... error
ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254Starting peer1.org1.example.com ... done
ERROR: for peer0.org1.example.com Cannot create container for service peer0.org1.example.com: Conflict. The container name "/peer0.org1.example.com" is already in use by container "b250e81ab2c56f0e2d272e3bce0f4c6ab6acb2856ec660702bf84d905e6e2d92". You have to remove (or rename) that container to be able to reuse that name.
ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254d620703c75e03c1ad273c11a7552a7c1b". You have to remove (or rename) that container to be able to reuse that name.
ERROR: Encountered errors while bringing up the project.
ERROR !!!! Unable to start network
[ ](https://chat.hyperledger.org/channel/composer?msg=RvxZ7xog8nRji93QQ) @dave.enyeart
Thank you for your response I have the above command but getting below error
nagaraja@nagaraja-VirtualBox:~/fabric-samples/first-network$ ./byfn.sh -m up
Starting with channel 'mychannel' and CLI timeout of '10' seconds and CLI delay of '3' seconds
Continue? [Y/n] Y
proceeding ...
2018-11-06 10:37:37.194 UTC [main] main -> INFO 001 Exiting.....
LOCAL_VERSION=1.1.1
DOCKER_IMAGE_VERSION=1.1.1
Starting peer1.org2.example.com ...
Starting peer1.org2.example.com
Creating orderer.example.com ...
Starting peer0.org2.example.com ...
Starting peer0.org2.example.com
Starting peer1.org1.example.com ...
Creating peer0.org1.example.com ...
Starting peer1.org1.example.com
Creating orderer.example.com
Creating peer0.org1.example.com ... error
ERROR: for peer0.org1.example.com Cannot create container for service peer0.org1.example.com: Conflict. The container name "/peer0.org1.example.com" is already in use by container "b250e81ab2c56f0e2d272eCreating orderer.example.com ... error
ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254Starting peer1.org1.example.com ... done
ERROR: for peer0.org1.example.com Cannot create container for service peer0.org1.example.com: Conflict. The container name "/peer0.org1.example.com" is already in use by container "b250e81ab2c56f0e2d272e3bce0f4c6ab6acb2856ec660702bf84d905e6e2d92". You have to remove (or rename) that container to be able to reuse that name.
ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254d620703c75e03c1ad273c11a7552a7c1b". You have to remove (or rename) that container to be able to reuse that name.
ERROR: Encountered errors while bringing up the project.
ERROR !!!! Unable to start network
[ ](https://chat.hyperledger.org/channel/composer?msg=RvxZ7xog8nRji93QQ) @dave.enyeart
Thank you for your response I have the above command but getting below error
```
nagaraja@nagaraja-VirtualBox:~/fabric-samples/first-network$ ./byfn.sh -m up
Starting with channel 'mychannel' and CLI timeout of '10' seconds and CLI delay of '3' seconds
Continue? [Y/n] Y
proceeding ...
2018-11-06 10:37:37.194 UTC [main] main -> INFO 001 Exiting.....
LOCAL_VERSION=1.1.1
DOCKER_IMAGE_VERSION=1.1.1
Starting peer1.org2.example.com ...
Starting peer1.org2.example.com
Creating orderer.example.com ...
Starting peer0.org2.example.com ...
Starting peer0.org2.example.com
Starting peer1.org1.example.com ...
Creating peer0.org1.example.com ...
Starting peer1.org1.example.com
Creating orderer.example.com
Creating peer0.org1.example.com ... error
ERROR: for peer0.org1.example.com Cannot create container for service peer0.org1.example.com: Conflict. The container name "/peer0.org1.example.com" is already in use by container "b250e81ab2c56f0e2d272eCreating orderer.example.com ... error
ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254Starting peer1.org1.example.com ... done
ERROR: for peer0.org1.example.com Cannot create container for service peer0.org1.example.com: Conflict. The container name "/peer0.org1.example.com" is already in use by container "b250e81ab2c56f0e2d272e3bce0f4c6ab6acb2856ec660702bf84d905e6e2d92". You have to remove (or rename) that container to be able to reuse that name.
ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254d620703c75e03c1ad273c11a7552a7c1b". You have to remove (or rename) that container to be able to reuse that name.
ERROR: Encountered errors while bringing up the project.
ERROR !!!! Unable to start network
```
[ ](https://chat.hyperledger.org/channel/composer?msg=RvxZ7xog8nRji93QQ) @dave.enyeart
Thank you for your response I have run the above command but getting below error
```
nagaraja@nagaraja-VirtualBox:~/fabric-samples/first-network$ ./byfn.sh -m up
Starting with channel 'mychannel' and CLI timeout of '10' seconds and CLI delay of '3' seconds
Continue? [Y/n] Y
proceeding ...
2018-11-06 10:37:37.194 UTC [main] main -> INFO 001 Exiting.....
LOCAL_VERSION=1.1.1
DOCKER_IMAGE_VERSION=1.1.1
Starting peer1.org2.example.com ...
Starting peer1.org2.example.com
Creating orderer.example.com ...
Starting peer0.org2.example.com ...
Starting peer0.org2.example.com
Starting peer1.org1.example.com ...
Creating peer0.org1.example.com ...
Starting peer1.org1.example.com
Creating orderer.example.com
Creating peer0.org1.example.com ... error
ERROR: for peer0.org1.example.com Cannot create container for service peer0.org1.example.com: Conflict. The container name "/peer0.org1.example.com" is already in use by container "b250e81ab2c56f0e2d272eCreating orderer.example.com ... error
ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254Starting peer1.org1.example.com ... done
ERROR: for peer0.org1.example.com Cannot create container for service peer0.org1.example.com: Conflict. The container name "/peer0.org1.example.com" is already in use by container "b250e81ab2c56f0e2d272e3bce0f4c6ab6acb2856ec660702bf84d905e6e2d92". You have to remove (or rename) that container to be able to reuse that name.
ERROR: for orderer.example.com Cannot create container for service orderer.example.com: Conflict. The container name "/orderer.example.com" is already in use by container "2565bbc845ca7c9774a6dd289bcd254d620703c75e03c1ad273c11a7552a7c1b". You have to remove (or rename) that container to be able to reuse that name.
ERROR: Encountered errors while bringing up the project.
ERROR !!!! Unable to start network
```
**Chaincode containers restart**
After reboot my chaincode containers stopped. I restarted one container with `docker start
Hi Everyone.
Hi Everyone,
While runnibg the commnd .`/byfn.sh -m generate` getting* proceeding ...
cryptogen tool not found. exiting*
Hi Everyone,
While runnibg the commnd .`/byfn.sh -m generate` getting* proceeding ...
cryptogen tool not found. exiting
Hi Everyone,
While runnibg the commnd .`/byfn.sh -m generate` getting* proceeding ...
cryptogen tool not found. exiting
Hi Everyone,
While runnibg the commnd .`/byfn.sh -m generate` getting* proceeding ...
cryptogen tool not found. exiting
Hi Everyone,
While runnibg the commnd ./byfn.sh -m generate getting proceeding ...
cryptogen tool not found. exiting
@rthatcher I guess I got the problem. I teared down network but I was mounting mongo database outside also and old cards got persisted when network was up again. thanks for narrowing down the problem.
@rthatcher @mahoney1 Hai,
Can i set the log level of composer-rest-server?
and how can i make cards been encrypted when used with a multi-user REST server environment?
Clipboard - November 6, 2018 3:09 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=Yfy64bNC4uEBdj8WN) @prasannakumarchebrolu Are you running the Composer Multi-Org tutorial?
There is a step a little earlier in the tutorial `curl -sSL http://bit.ly/2ysbOFE | bash -s 1.2.1 1.2.1 0.4.10` which installs cryptogen - did you run this step, and did you run it from the correct folder?
[ ](https://chat.hyperledger.org/channel/composer?msg=xJ57fEKHBX3KwNw4m) @touchingsoil There is a feature on the REST server for dynamic logging. It is described on this page: https://hyperledger.github.io/composer/latest/integrating/getting-started-rest-api and you need to start the REST server with the ` -d ` option. You will have an extra end point `/admin/loglevel/`
dfghj
i have very simple question. should is user transaction methods to entry my participants or asset or simply create participant or asset
i have very simple question. should i use transaction methods to entry my participants or asset or simply create participant or asset
Has joined the channel.
really lost trying to learn ...tried typing in npm install -g composer-cli@0.20 on command line of terminal and got "Failed at the grpc@1.10.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above." advise?
@kelleclark can you check your node version? node -v
it needs to be between node 8 and node 8.12.0
@rizwan92 you can do both but i prefer it with a transaction so you can verify what you put in your blockchain. Invalid characters etc.
what is best for very large distributed system. is it gonna effect my performance or something if i do it with transaction
I can imagine it does have some impact but that should be rather small. Directly putting it in the registry is the faster way. But doing just a few checks on the data shoudn't impact the speed alot, even in large systems.
this is my asset details `
{
"$class": "org.atithi.app.user.Email",
"email": "rizwan@gmail.com",
"verify": false,
"status": true,
"token": "84ddbd1d-8cf8-6595-2c7a-640693c438ae",
"institute": "resource:org.atithi.app.institute.Institute#84ddbd1d-8cf8-6595-2c7a-640693c438ae"
}`
this is my asset details `
{
"$class": "org.atithi.app.user.Email",
"email": "rizwan@gmail.com",
"verify": false,
"status": true,
"token": "84ddbd1d-8cf8-6595-2c7a-640693c438ae",
"institute": "resource:org.atithi.app.institute.Institute#84ddbd1d-8cf8-6595-2c7a-640693c438ae"
}` when i get
this is my asset details `
{
"$class": "org.atithi.app.user.Email",
"email": "rizwan@gmail.com",
"verify": false,
"status": true,
"token": "84ddbd1d-8cf8-6595-2c7a-640693c438ae",
"institute": "resource:org.atithi.app.institute.Institute#84ddbd1d-8cf8-6595-2c7a-640693c438ae"
}` when i get my resource like this ` const emailResource = getFactory().newResource(model+'.user','Email',tx.email)
console.log(emailResource.token)
console.log(tx.token)`
this is my asset details `
{
"$class": "org.atithi.app.user.Email",
"email": "rizwan@gmail.com",
"verify": false,
"status": true,
"token": "84ddbd1d-8cf8-6595-2c7a-640693c438ae",
"institute": "resource:org.atithi.app.institute.Institute#84ddbd1d-8cf8-6595-2c7a-640693c438ae"
}`
when i get my resource like this ` const emailResource = getFactory().newResource(model+'.user','Email',tx.email)
console.log(emailResource.token)
console.log(tx.token)`
this is my asset details `
{
"$class": "org.atithi.app.user.Email",
"email": "rizwan@gmail.com",
"verify": false,
"status": true,
"token": "84ddbd1d-8cf8-6595-2c7a-640693c438ae",
"institute": "resource:org.atithi.app.institute.Institute#84ddbd1d-8cf8-6595-2c7a-640693c438ae"
}`
when i get my resource like this ` const emailResource = getFactory().newResource(model+'.user','Email',tx.email)
console.log(emailResource.token)
then my emailResource.token is undefined
this is my asset details ```
{
"$class": "org.atithi.app.user.Email",
"email": "rizwan@gmail.com",
"verify": false,
"status": true,
"token": "84ddbd1d-8cf8-6595-2c7a-640693c438ae",
"institute": "resource:org.atithi.app.institute.Institute#84ddbd1d-8cf8-6595-2c7a-640693c438ae"
}```
when i get my resource like this ` const emailResource = getFactory().newResource(model+'.user','Email',tx.email)
console.log(emailResource.token)
then my emailResource.token is undefined
this is my asset details ```
{
"$class": "org.atithi.app.user.Email",
"email": "rizwan@gmail.com",
"verify": false,
"status": true,
"token": "84ddbd1d-8cf8-6595-2c7a-640693c438ae",
"institute": "resource:org.atithi.app.institute.Institute#84ddbd1d-8cf8-6595-2c7a-640693c438ae"
}```
when i get my resource like this ` ``const emailResource = getFactory().newResource(model+'.user','Email',tx.email)
console.log(emailResource.token)```
then my emailResource.token is undefined
this is my asset details ```
{
"$class": "org.atithi.app.user.Email",
"email": "rizwan@gmail.com",
"verify": false,
"status": true,
"token": "84ddbd1d-8cf8-6595-2c7a-640693c438ae",
"institute": "resource:org.atithi.app.institute.Institute#84ddbd1d-8cf8-6595-2c7a-640693c438ae"
}```
when i get my resource like this ```const emailResource = getFactory().newResource(model+'.user','Email',tx.email)
console.log(emailResource.token)
then my emailResource.token is undefined
[ ](https://chat.hyperledger.org/channel/composer?msg=rkSDGopTmurSiSBQS) @kelleclark I wonder if you have the same problem that we saw earlier today? You could try `node -v` to see if you have Node 8 or Node 10
https://chat.hyperledger.org/channel/composer?msg=BMK9x2zz6yc8Y58us
[ ](https://chat.hyperledger.org/channel/composer?msg=Zwqk5EfdpsW9JmaPA) @rizwan92 Are you thinking of using Composer for "a very large distributed system" as a production deployment?
Have you seen this announcement: https://lists.hyperledger.org/g/composer/message/125
Composer is still good for a quick demo or prototype, but is not advisable as a way forward for a production application.
@rizwan92 hmmm might want to check your code - just tried ```const certificate = factory.newResource(NS, 'Certificate', certificateId);
certificate.certdate = args.timestamp ; await assetRegistry.add(certificate) ; ``` blah and it works fine. Further examples here -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/bond-network/lib/logic.js#L28
[ ](https://chat.hyperledger.org/channel/composer?msg=pPbPmDoMrGPv7PtKH) thanks for the information, is fabric ready for large distibuted system , is there any example network available or anyc ompany using hyperledger fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=QSgQ2k9Ywn4foqnNx) do you mind testing my bna file i am facing this problem there is two transaction ```1. createInstitute () name email and password 2. is verifyEmail token and email ```
[ ](https://chat.hyperledger.org/channel/composer?msg=QSgQ2k9Ywn4foqnNx) do you mind testing my bna file i am facing this problem there is two transaction ```1. createInstitute () name email and password 2. is verifyEmail token and email ``` drive link to my bna file ```https://drive.google.com/open?id=1movV_F3OVRL2Ak-RhFIhXf61z-7dT5VI```
[ ](https://chat.hyperledger.org/channel/composer?msg=QSgQ2k9Ywn4foqnNx) do you mind testing my bna file i am facing this problem there is two transaction ```1. createInstitute () name email and password 2. is verifyEmail token and email drive link to my bna file ```https://drive.google.com/open?id=1movV_F3OVRL2Ak-RhFIhXf61z-7dT5VI
[ ](https://chat.hyperledger.org/channel/composer?msg=QSgQ2k9Ywn4foqnNx) do you mind testing my bna file i am facing this problem there is two transaction ```1. createInstitute () name email and password 2. is verifyEmail token and email drive link to my bna file https://drive.google.com/open?id=1movV_F3OVRL2Ak-RhFIhXf61z-7dT5VI
[ ](https://chat.hyperledger.org/channel/composer?msg=QSgQ2k9Ywn4foqnNx) do you mind testing my bna file i am facing this problem there is two transaction ```1. createInstitute () name email and password 2. is verifyEmail token and email ``` drive link to my bna file https://drive.google.com/open?id=1movV_F3OVRL2Ak-RhFIhXf61z-7dT5VI
[ ](https://chat.hyperledger.org/channel/composer?msg=vhyTAQfNF2kbQSYnD) @rthatcher The announcement says that _"The IBM team will continue to update Composer to maintain compatibility with the latest Fabric v1.x releases"_. Does anyone know when composer will be compatible with *Fabric 1.3*?
They do have jira so you can probably look in there. But for some reason it's currently not working for me
[ ](https://chat.hyperledger.org/channel/composer?msg=gy24NmWZxMmQZBFai) @rthatcher Thank You, that helps a lot!
[ ](https://chat.hyperledger.org/channel/composer?msg=reJJJ83mJwvoNhefX) @Rochendiil Composer JIRA looks abandoned. It has only 8 issues. In a comment from [COM-4](https://jira.hyperledger.org/browse/COM-4) someone said: _All composer issues should be raised at https://github.com/hyperledger/composer/issues_
And I couldn't find anything related to Fabric 1.3 on github issues.
[ ](https://chat.hyperledger.org/channel/composer?msg=jcJDymyvkfH9xYdBB) @joaquimpedrooliveira yes, that is the 'live' location for Composer Issues (not JIRA) - I have not seen any plans for 1.3 support yet. If/when it is supported, it is unlikely to use any of the new features of Fabric 1.3 - Composer would just 'tolerate' v1.3. - keep a watch on the issues and pull requests for any news of 1.3 support.
[ ](https://chat.hyperledger.org/channel/composer?msg=bDt2bwq7AY8EM3yid) @rthatcher Thanks for your help!
Just for information, I've just deployed a composer business network using `composer-cli@0.20.1` to a `Fabric 1.3` network and everything seems to be working fine.
It's a very simple example, but look like there's some degree of compatibility.
It's a very simple example, but looks like there's some degree of compatibility.
Has joined the channel.
hi all, i've been following this code example to get the history of an asset here: https://stackoverflow.com/questions/51783822/historian-for-a-particular-participant/51820465#51820465
but im noticing that it doesn't return the transaction id, is there some improvement that can be done in code?
If you are running Composer with a deployed network and the server restarts. What would be the process for re-deploying the network with data loss/resetting the network?
[ ](https://chat.hyperledger.org/channel/composer?msg=eZX4BnFfR2BPxrjqw) @rthatcher Thanks for your reply!! Would you be kind to give some advise about the encryption about cards when used with a multi-user REST server environment, or should i not concern about this issue?
Has joined the channel.
Hi! I'm very new to Hyperledger. I was wondering if it is possible to create several blockchains (a person will have their own blockchain so there will always be new ones if more people register) and inside would only be the transaction between the institution and a certain record in that institution. Instead of querying data directly from the blockchain, it will return an .xml file for example. o clarify, in my scenario, one channel would have the institution and the another will have all the users? The idea is that users can access their information regardless of the institution they go to.
Hi! I'm very new to Hyperledger. I was wondering if it is possible to create several blockchains (a person will have their own blockchain so there will always be new ones if more people register) and inside would only be the transaction between the institution and a certain record in that institution. Instead of querying data directly from the blockchain, it will return an .xml file for example. To clarify, in my scenario, one channel would have the institution and the another will have all the users? The idea is that users can access their information regardless of the institution they go to.
[ ](https://chat.hyperledger.org/channel/composer?msg=HzkNZWggRSqoKefQx) @brianpesy @brianpesy I think you are slightly confused with the concept of channels. My perception of your problem is that, Students need to access their records no matter what institution they go. So, Students and Institutions will be participants in the blockchain, and only Institutions are allowed to create records (asset) of students (academic), but student should be able to read that asset. You cannot directly create .xml file. Instead, the client side application has to use the Student's identity to retrieve all the records (or necessary records) and convert them to XML and store them locally.
A person will not have their own blockchain (Its not efficient), instead, they are all participants of a certain blockchain and they will have access only with their data using Access Control List (In the case of composer).
A person will not have their own blockchain (Its not efficient), instead, they are all participants of a certain blockchain and they will have access only with their data using Access Control List (In the case of composer). Participants can be added, anytime new ones register.
Thank you very much! Is my understanding correct when I say that a channel is like giving all of those students a single blockchain to add on to and register on? And then another channel would be used for the institutions?
Also, would it be possible to create that multi-channel project in composer?
Reading this ( https://github.com/hyperledger/composer/issues/2103 ) I'm understanding that it isn't possible?
Has joined the channel.
@brianpesy Channel is like a communication line between participants. Each channel will only have a single Blockchain ledger (Let's say our ledger stores student records). If one need to access this channel's ledger data, they have to be in this channel. So, Students as well as Institutions will be in the same channel to access same data. Although there are methods to access data from other blockchain ledger from one blockchain, it is not suggested for your use case. And yes, we can create multi-channel project in composer. Refer this link to learn how to access other chain's data from one chain : https://hyperledger.github.io/composer/v0.19/tutorials/invoke-composer-network .
Note: You can only read the data from blockchain which is present in different channel to the current channel.
Hi. I am running composer developer tutorial and after successfully running launching the skeleton angular application, I get "Error: 401 - Unauthorized" when I try to click any of the items like creating an asset. Anyone know what the problem is?
@PaulaBanks I remember that there was some kind of mistake in default angular code created by yeoman generator. You might have to change the code in the angular project, try googling your specific error. To just test the blockchain, i suggest you to use composer-playground.
Thanks @prasanths96 I had already run the playground and everything was working. Let me try looking online
Thank you! I'll try this out
Would it be possible to create this a multi-channel and multi-org as well through this?
Assuming I need 2 hospitals for example and 2 patients where the hospitals have the data of the patients while the patients can go to any of these places with their data still accessible
Has joined the channel.
Yes, refer this to create multi-org network : https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org
Great! Thank you. I've been researching a lot, and I was wondering if storing the pointer of a file (a combination of a record and institution) or the hash of the file itself is safe? Also, how will one access data from outside the blockchain? Would it better to use IPFS or Storj instead? I've been reading around that you need to create some other appllciation that can read and return this data, but how does one integrate it?
@brianpesy Anything that gets stored is blockchain, is secured by Public key cryptography and only the hash of the blocks will be displayed to those who doesn't belong to the channel and/ or doesn't have valid certificates. So, data in blockchain is just as safe as other technologies that we use currently (in terms of access) and it is safer than current technology (in terms of authenticity of stored data and no single point of failure). It is practically impossible to crack the HASH code to get the actual data. Moreover, only Merkle root (which is hash of hashes to a multiple level in a tree structure) is the HASH that is displayed to a person without valid certificate. For using data outside the chain using HTTP services or REST API, refer this : https://hyperledger.github.io/composer/v0.19/integrating/call-out
@rthatcher @davidkel is there any limit to addAll() method of assetregistry .can we put more than 10k assets at a time??
[ ](https://chat.hyperledger.org/channel/composer?msg=C8FnrvGDm8orN8tGt) @ronaldlong46 If you are running the standard development Fabric, you can just bring the containers back up. The "chaincode container" actually running your BNA will be started automatically the first time you connect to it. This information in Stack Overflow should help for the development Fabric: https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
[ ](https://chat.hyperledger.org/channel/composer?msg=tRWdspQGCtAeDuqAh) @ShaikSharuk Higher throughput and performance suggests plans for a production deployment - Composer is not suitable for a production platform going forward.
Please see this announcement: https://lists.hyperledger.org/g/composer/message/125
For performance issues about Fabric I would ask in the #fabric channel. Also you may wish to read this thread (from this msg onwards for more insight, a similar question asked recently -> chat.hyperledger.org/channel/composer?msg=e9dDFxqoY6azCvHXX
[ ](https://chat.hyperledger.org/channel/composer?msg=tRWdspQGCtAeDuqAh) @ShaikSharuk Higher throughput and performance suggests plans for a production deployment - Composer is not suitable for a production platform going forward. As for the add transaction, it depends on the size of the payload per asset too, could be a very large unit of work as rthatcher pointed out below etc etc
Please see this announcement: https://lists.hyperledger.org/g/composer/message/125
For performance issues about Fabric I would ask in the #fabric channel. Also you may wish to read this thread (from this msg onwards for more insight, a similar question asked recently -> chat.hyperledger.org/channel/composer?msg=e9dDFxqoY6azCvHXX
[ ](https://chat.hyperledger.org/channel/composer?msg=tRWdspQGCtAeDuqAh) @ShaikSharuk Large transactions naturally take longer and the longer a transaction takes, the more likely that it will fail validation because some other change has happened during the 'long' transaction. Fabric is a distributed ledger not a transaction processing system and 10k updates in a single transaction seems like a lot.
This also looks like a serious deployment, have you seen this announcement? https://lists.hyperledger.org/g/composer/message/125
Composer is still good for demos and prototypes, but not advisable for production deployments going forward.
its been a week i'm dealing with this and finally I admit I need help! I have followed this tutorial: https://medium.com/1950labs/setup-hyperledger-fabric-in-multiple-physical-machines-d8f3710ed9b4 to set up my network and certificates. On the last step I receive the following error: "Retrying couchdb request in 125ms. Attempt:1 Error:Get http://couchdb1:5984/: dial tcp " but I can access it even from the browser since I have opened all ports. Curl is responding as well.
any suggestion?
it makes 5 attempts and 2 seconds
Is the couchdb that you try to connect using the peer is in same machine or different machine? If different machine, i believe docker must be configured.
Ok, I read through your link and couchdb is in the same machine as peer. Can you check if you have one couchdb running in both the machines?. In the link they haven't posted the full docker-composer.yml file. Can you share?
[ ](https://chat.hyperledger.org/channel/composer?msg=jYnoAdKbJkJRmHv75) @AlexanderCollins you might want to check your .yml file has the correct port mapping and couchdb1 is resolvable - and indeed you can check via `docker ps -a` concerning the state of your couchdb container (or review both its' logs and the peer logs) - or indeed, you can ask the author himself in comments section, he seems responsive.
Has joined the channel.
sure here we are
Hi guys, i have a deployed hyperledger fabric on docker swarm with kafka. How can i deploy composer on that network ? How and what necessary changes should i make ? TIA.
Hi guys, i have a deployed hyperledger fabric on docker swarm with kafka. How can i deploy composer on that network ? How and what necessary changes should i make in *connection.json*? TIA.
docker-composer.yml
#
# Copyright IBM Corp All Rights Reserved
#
# SPDX-License-Identifier: Apache-2.0
#
version: '2'
networks:
basic:
services:
ca.example.com:
image: hyperledger/fabric-ca
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca.example.com
- FABRIC_CA_SERVER_CA_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem
- FABRIC_CA_SERVER_CA_KEYFILE=/etc/hyperledger/fabric-ca-server-config/ca4fc98ffad643b319cee6804c0b35988f4d8f051c310f0c95bff4609c337497_sk
ports:
- "7054:7054"
command: sh -c 'fabric-ca-server start -b admin:adminpw -d'
volumes:
- ./crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config
extra_hosts:
- "peer1.org1.example.com:FIRST IP ADDRESS"
container_name: ca.example.com
networks:
- basic
orderer.example.com:
container_name: orderer.example.com
image: hyperledger/fabric-orderer
environment:
- ORDERER_GENERAL_LOGLEVEL=info
- ORDERER_GENERAL_LISTENADDRESS=0.0.0.0
- ORDERER_GENERAL_GENESISMETHOD=file
- ORDERER_GENERAL_GENESISFILE=/etc/hyperledger/configtx/genesis.block
- ORDERER_GENERAL_LOCALMSPID=OrdererMSP
- ORDERER_GENERAL_LOCALMSPDIR=/etc/hyperledger/msp/orderer/msp
working_dir: /opt/gopath/src/github.com/hyperledger/fabric/orderer
command: orderer
ports:
- 7050:7050
volumes:
- ./config/:/etc/hyperledger/configtx
- ./crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/:/etc/hyperledger/msp/orderer
- ./crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/:/etc/hyperledger/msp/peerOrg1
extra_hosts:
- "peer1.org1.example.com:FIRST IP ADDRESS"
networks:
- basic
peer0.org1.example.com:
container_name: peer0.org1.example.com
image: hyperledger/fabric-peer
dns_search: .
environment:
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
- CORE_PEER_ID=peer0.org1.example.com
- CORE_LOGGING_PEER=info
- CORE_CHAINCODE_LOGGING_LEVEL=info
- CORE_PEER_LOCALMSPID=Org1MSP
- CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp/peer/
- CORE_PEER_ADDRESS=peer0.org1.example.com:7051
# # the following setting starts chaincode containers on the same
# # bridge network as the peers
# # https://docs.docker.com/compose/networking/
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=${COMPOSE_PROJECT_NAME}_basic
- CORE_LEDGER_STATE_STATEDATABASE=CouchDB
- CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb:5984
# The CORE_LEDGER_STATE_COUCHDBCONFIG_USERNAME and CORE_LEDGER_STATE_COUCHDBCONFIG_PASSWORD
# provide the credentials for ledger to connect to CouchDB. The username and password must
# match the username and password set for the associated CouchDB.
- CORE_LEDGER_STATE_COUCHDBCONFIG_USERNAME=
- CORE_LEDGER_STATE_COUCHDBCONFIG_PASSWORD=
working_dir: /opt/gopath/src/github.com/hyperledger/fabric
command: peer node start
# command: peer node start --peer-chaincodedev=true
ports:
- 7051:7051
- 7053:7053
volumes:
- /var/run/:/host/var/run/
- ./crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/msp/peer
- ./crypto-config/peerOrganizations/org1.example.com/users:/etc/hyperledger/msp/users
- ./config:/etc/hyperledger/configtx
extra_hosts:
- "peer1.org1.example.com:FIRST IP ADDRESS"
depends_on:
- orderer.example.com
- couchdb
networks:
- basic
couchdb:
container_name: couchdb
image: hyperledger/fabric-couchdb
# Populate the COUCHDB_USER and COUCHDB_PASSWORD to set an admin user and password
# for CouchDB. This will prevent CouchDB from operating in an "Admin Party" mode.
environment:
- COUCHDB_USER=
- COUCHDB_PASSWORD=
ports:
- 5984:5984
networks:
- basic
cli:
container_name: cli
image: hyperledger/fabric-tools
tty: true
environment:
- GOPATH=/opt/gopath
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
- CORE_LOGGING_LEVEL=info
- CORE_PEER_ID=cli
- CORE_PEER_ADDRESS=peer0.org1.example.com:7051
- CORE_PEER_LOCALMSPID=Org1MSP
- CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp
- CORE_CHAINCODE_KEEPALIVE=10
working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer
command: /bin/bash
volumes:
- /var/run/:/host/var/run/
- ./../chaincode/:/opt/gopath/src/github.com/
- ./crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/
networks:
- basic
#depends_on:
# - orderer.example.com
# - peer0.org1.example.com
# - couchdb
of course FIRST IP ADDRESS is configured...
*sorry its the second machine one IP of course
*sorry its not FIRST machine but the second one of course
[ ](https://chat.hyperledger.org/channel/composer?msg=v2xDg3ScAJao9sTZu) @theprodigy You just basically need to follow this procedure : https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org
You will only be providing the orderers list in the connection.json, and those orderers must know about all the kafka brokers through .yml file.
[ ](https://chat.hyperledger.org/channel/composer?msg=v2xDg3ScAJao9sTZu) @theprodigy You just basically need to follow this procedure : https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org
You will only be providing the orderers list in the connection.json (in the sense, kafka details are not provided there), and those orderers must know about all the kafka brokers through .yml file.
[ ](https://chat.hyperledger.org/channel/composer?msg=QvhibkZr3BdeCZGJP) @AlexanderCollins Looking good. I assume you have problem with ./start-peer2.sh. Like @mahoney1 said, check if couchdb1 container is active by using "docker ps" and can you share the .yml file from the second machine?
Hi guys, i want to query a product ipNum already exist and productState != 'REVOKE' and != 'SOLD'.when i query only productState != 'REVOKE' it does work ,but when i query productState != 'REVOKE' and != 'SOLD' it does not work
const q = buildQuery("SELECT org.xfb.ipchain.Product WHERE ((intellectualProperty.ipNum == _$inputValue ) AND (productState != 'REVOKE') AND (productState != 'SOLD') )");
[ ](https://chat.hyperledger.org/channel/composer?msg=eqfwefxZ3fwcyFvJX) @prasanths96 correct - in fact @AlexanderCollins your yml file has no reference to couchdb1
[ ](https://chat.hyperledger.org/channel/composer?msg=eqfwefxZ3fwcyFvJX) @prasanths96 correct [ check which couchdb is alive ] - in fact @AlexanderCollins your yml file has no reference to couchdb1
Has joined the channel.
sure
version: '2'
networks:
basic:
services:
peer1.org1.example.com:
container_name: peer1.org1.example.com
image: hyperledger/fabric-peer
dns_search: .
environment:
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
- CORE_PEER_ID=peer1.org1.example.com
- CORE_LOGGING_PEER=debug
- CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
- CORE_PEER_LOCALMSPID=Org1MSP
- CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp/peer/
- CORE_PEER_ADDRESS=peer1.org1.example.com:7051
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=${COMPOSE_PROJECT_NAME}_basic
- CORE_LEDGER_STATE_STATEDATABASE=CouchDB
- CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb1:5984
- CORE_LEDGER_STATE_COUCHDBCONFIG_USERNAME=
- CORE_LEDGER_STATE_COUCHDBCONFIG_PASSWORD=
working_dir: /opt/gopath/src/github.com/hyperledger/fabric
command: peer node start
ports:
- 8051:7051
- 8053:7053
volumes:
- /var/run/:/host/var/run/
- ./crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp:/etc/hyperledger/msp/peer
- ./crypto-config/peerOrganizations/org1.example.com/users:/etc/hyperledger/msp/users
- ./config:/etc/hyperledger/configtx
extra_hosts:
- "orderer.example.com:FIRST IP ADDRESS"
- "peer0.org1.example.com:FIRST IP ADDRESS"
- "ca.example.com:FIRST IP ADDRESS"
depends_on:
- couchdb1
networks:
- basic
couchdb1:
container_name: couchdb1
image: hyperledger/fabric-couchdb
dns_search: .
environment:
- COUCHDB_USER=
- COUCHDB_PASSWORD=
ports:
- 6984:5984
networks:
- basic
consider that I am using docker 17.12.1-ce which is compatible with that structure
everything is fine at the end is just that couchdb1 which is providing error
Screenshot (19).png
I nottice that it is trying to connect 172.20.0.2 with couchdb, but it says auto detected peer's ip is 172.20.0.3. Which is the ip of second machine? and I assume this is the result of running ./start-peer2.sh. Is that correct?
I notice that it is trying to connect 172.20.0.2 with couchdb, but it says auto detected peer's ip is 172.20.0.3. Which is the ip of second machine? and I assume this is the result of running ./start-peer2.sh. Is that correct?
I notice that it is trying to connect 172.20.0.2 with couchdb, but it says auto detected peer's ip is 172.20.0.3. Which is the ip of second machine? (which you are currently on) and I assume this is the result of running ./start-peer2.sh. Is that correct?
I notice that it is trying to connect 172.20.0.2 with couchdb, but it says auto detected peer's ip is 172.20.0.3. Which is the ip of second machine? (which you are currently on) and I assume this is the result of running ./start-peer2.sh. Is that correct?
I notice that it is trying to connect 172.20.0.2 with couchdb, but it says auto detected peer's ip is 172.20.0.3. Which is the ip of second machine? (which you are currently on) and I assume this is the result of running ./start-peer2.sh. Is that correct?
P.S. I am almost sure that it should try to connect using 172.20.0.3 and that's where the problem is. Instead it is now trying to connect to the couch db of other machine, hence connection is refusing.
[ ](https://chat.hyperledger.org/channel/composer?msg=naiTMBZdaikSs4Qps) @nulee100 your problem is likely to be the `intellectualProperty.ipNum` comparison - it is not a field of the Product asset, nor can you use a 'stepped reference' - eg suggest to cross-check a different way in your query processor function?
[ ](https://chat.hyperledger.org/channel/composer?msg=naiTMBZdaikSs4Qps) @nulee100 your problem is likely to be the `intellectualProperty.ipNum` comparison - it is not a field of the Product asset, nor can you use a 'stepped reference' - eg suggest to cross-check a different way in your query processor function, or use an if comparison with the inputValue, before invoking the query for checking `Product` fields
[ ](https://chat.hyperledger.org/channel/composer?msg=naiTMBZdaikSs4Qps) @nulee100 your problem is likely to be the `intellectualProperty.ipNum` comparison - it is not a field of the Product asset, nor can you use a 'stepped reference' - eg suggest to cross-check a different way in your query processor function, or use an if comparison with the inputValue, [in your code], before invoking the query for checking `Product` fields
[ ](https://chat.hyperledger.org/channel/composer?msg=naiTMBZdaikSs4Qps) @nulee100 your problem is likely to be the `intellectualProperty.ipNum` comparison - it is not a field of the Product asset, nor can you use a 'stepped reference' - eg suggest to cross-check a different way in your query processor function, or use an if comparison with the inputValue, [in your code], before invoking the query for checking `Product` status
@prasanths96 Okay Thanks will look into it :)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=J7jrhPPue4Dujb2vN) @theprodigy No problem :) Does swarm means it will automatically create orderer/ kafka containers on demand? If so, i believe there must be complexity to make that work, since we need to provide orderer details (even newly created by swarm) to every peer container which follows that orderer and all the orderer needs to know kafka brokers (newly created by swarm).
Does anybody how to speed up the composer-rest-server? executing a POST request takes about 2,5 seconds to complete, this is not possible for the app i'm writing
Hi
I am getting the below error while running command `node registerUser.js`
Any Suggestions
_Error_
```
nagaraja@nagaraja-VirtualBox:~/education/LFS171x/fabric-material/tuna-app$ node registerUser.js
Store path:/home/nagaraja/.hfc-key-store
(node:18599) DeprecationWarning: grpc.load: Use the @grpc/proto-loader module with grpc.loadPackageDefinition instead
Failed to register: Error: Failed to get admin.... run registerAdmin.js
```
[ ](https://chat.hyperledger.org/channel/composer?msg=KpG5SFwu4kbbhnM8a) @venkat_nagaraj I think the "registerUser.js" script uses the Admincard which is created by "registerAdmin.js". So you need to probably run registerAdmin.js first
[ ](https://chat.hyperledger.org/channel/composer?msg=qGrA3fxxPiMCL6Eyn) @prasanths96 I have done the same thing initially..but it didn't worked
Now it is working Thanks :relaxed:
[ ](https://chat.hyperledger.org/channel/composer?msg=qGrA3fxxPiMCL6Eyn) @prasanths96 I have done the same thing initially..but it didn't worked
[ ](https://chat.hyperledger.org/channel/composer?msg=3Fmnr4XdaT5MyKAr4) @prasanths96 absolutely correct. How can I change couchDB1 address? I suppose in the CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb1:5984 ??Thank you for your support
First machine 46.101.129.85 ... Second Machine 159.89.17.122
Oh wait, 172 series ips are docker container ips .. Then it is not trying to connect the other machine. There's something else wrong.
Does anybody how to speed up the composer-rest-server? executing a POST request takes about 2,5 seconds to complete, this is not possible for the app i'm writing
ports are open that's why I dont understand
try restring the port to single in yaml file : - 5984:5984 instead of - 6984:5984
try changing the port to single in yaml file : - 5984:5984 instead of - 6984:5984
unfortunately not :(
ERROR: for couchdb1 Cannot start service couchdb1: driver failed programming external connectivity on endpoint couchdb1 (9d4bb7cf7428b72b8016b0727ea73af97a82bbbb793ce693c2a6fa59091e31f8): Error starting userland proxy: listen tcp 0.0.0.0:5984: bind: address already in use
change to 6984:6984 and change in - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb1:6984
ok thank you once again you are my angel
ill try that
[ ](https://chat.hyperledger.org/channel/composer?msg=8nkoEYubjmXd2mZih) @benjamin.verhaegen There is no magic button or switch here, how complex is your transaction? How big is your fabric? What hardware is your fabric running on? What is your endorsement policy? All of these things will affect the performance.
I hope you have seen the discussion earlier today about not using Composer for a production application deployment going forward.
[ ](https://chat.hyperledger.org/channel/composer?msg=5ZFA6QdcRyD5ppEHN) @rthatcher I'm making a POC, so not for production. I'm using the stander docker setup supplied by Hyperledger Composer. This is running on a ubuntu server. The transaction is not complex, it's just adding an asset
[ ](https://chat.hyperledger.org/channel/composer?msg=5ZFA6QdcRyD5ppEHN) @rthatcher I'm making a POC, so not for production. I'm using the standard docker setup supplied by Hyperledger Composer. This is running on a ubuntu server. The transaction is not complex, it's just adding an asset
[ ](https://chat.hyperledger.org/channel/composer?msg=Ae3S8qojkWkPadmwz) @prasanths96 unfortunately not.. Error: error getting endorser client for channel: endorser client failed to connect to peer1.org1.example.com:7051: failed to create new connection: context deadline exceeded
and the same connection error
again bind: already in use error? then try changing the port to a different one, probably within the range 5984 to 6984
again bind: already in use error? then try changing the port to a different one, probably within the range 5984 to 6984, until that error is not there
does anyone know what this error represents: "failed to create new connection: context deadline exceeded"? would increasing the memory, shutting and recreating the containers help with it?
It is probably connection problem. Slow connection or they cant find each other. First step to rectify would be to check if the container is active. If it is active, then go with further investigation.
[ ](https://chat.hyperledger.org/channel/composer?msg=MJbv8P6xNBzYp2845) @benjamin.verhaegen thanks for extra details. My simple test network runs a little faster than that on a laptop (with SSD disk) in a VM.
You can check the log of the Chaincode container which in recent versions of composer shows a transaction duration - so you can see that component of the total time. That might help narrow down where the time is being taken.
I guess you would want to look at the resources available on your Ubuntu server too.
Does the REST server run on the same server as the Fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=MJbv8P6xNBzYp2845) @benjamin.verhaegen thanks for extra details. My simple test network runs at a similar speed on a laptop (with SSD disk) in a VM.
You can check the log of the Chaincode container which in recent versions of composer shows a transaction duration - so you can see that component of the total time. That might help narrow down where the time is being taken.
I guess you would want to look at the resources available on your Ubuntu server too.
Does the REST server run on the same server as the Fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=uPP8KaAmySQA9RZSm) @rthatcher I think the problem lays with the couchdb container. Everything is standard setup, so all is on the same server
[ ](https://chat.hyperledger.org/channel/composer?msg=Xa5Wra54omgwZ2E6E) @greg2git doing what? If you mean in starting the Fabric (ie using the Dev server script `./startFabric.sh` from the Composer docs), context deadline exceeded is usually due to not waiting long enough for all the various HL/Fabric processes to start. You can increase it using `export FABRIC_START_TIMEOUT=30` (example) before running the startFabric.sh script again.
[ ](https://chat.hyperledger.org/channel/composer?msg=wie7zznSHpBNHe6uq) Found the couchdb commands. I attach to couchdb container and then curl -X GET http://127.0.0.1:5984/composerchannel_
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=cCPTc2b58oCagHWoK) @davidkel Thank you :)
Has joined the channel.
@mahoney1 thank you , intellectualProperty is a concept referenced in product .the intellectualProperty.ipNum does not the The cause of the error。
Has joined the channel.
Hello everyone I am trying to install hyperledger composer on ubuntu 18.04. i have already install prereqs and development environment .but when i am trying execute ./createPeerAdminCard.sh file i found bellow error
"No version of composer-cli has been detected, you need to install composer-cli at v0.20 or higher "
i have already install comoser-cli 0.20.4
anyone can help me to resolve this error
Has joined the channel.
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=88fLoTobYrFqvcHkK) @rashansamith88 you will need a Ubuntu 16.04 machine to do the installation. Check the prereqs page: https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
[ ](https://chat.hyperledger.org/channel/composer?msg=w6XRjcLF4kNLXmgy2) @benjamin.verhaegen no we can do this on ubuntu 18.04 .we have to change prereqs-ubuntu.sh file from declare -a versions=('trusty' 'xenial' 'yakkety') to declare -a versions=('trusty' 'xenial' 'yakkety', 'bionic');
@rashansamith88 - did you specify ` -g ` when you installed composer-cli ?
[ ](https://chat.hyperledger.org/channel/composer?msg=WK7GSL323NL3hcjdz) @rthatcher yes
[ ](https://chat.hyperledger.org/channel/composer?msg=CtyeGH55GZCygsH4s) @rashansamith88 can you try these commands and show the output please: `composer -v` `which composer` `npm ls -g -depth=0`
[ ](https://chat.hyperledger.org/channel/composer?msg=8zFA6uJCvjvKA94Sk) @rthatcher ok ill tey @rthatcher
@rthatcher when i am trying To deploy the business network using bellow command " composer network start --networkName cards-trading-network --networkVersion 0.0.14 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file cards-trading-admin.card
" this error is comming ->"Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: cannot get package for chaincode (cards-trading-network:0.0.14)
" please
Has joined the channel.
Hello, for some reason the 'composer-playground' command is not found in my terminal. Any ideas how I can solve that? :)
[ ](https://chat.hyperledger.org/channel/composer?msg=NSSfEx63dWABg9ZKM) @AlyDabbous use this command udo rm -fr ~/.composer
[ ](https://chat.hyperledger.org/channel/composer?msg=NSSfEx63dWABg9ZKM) @AlyDabbous use this command sudo rm -fr ~/.composer
```
Hi guys! I'm trying to intercept the system transaction of type UpdateAsset. I wrote the following transaction function. If the function finishes with success the default code of UpdateAsset is run and the Asset is updated. If I throw an error the update on the Asset is not performed. I didn't found anywhere in the documentation if this works as designed, if this approach is OK. My fear is that with future releases this "trick" would stop working. Does anybody know it this works as designed? Is safe to use it?
``` `/**
* Sample transaction
* @param {org.hyperledger.composer.system.UpdateAsset} sampleTransaction
* @transaction
*/
async function updateAsset(tx){
console.log('Updating Asset of type: ' +tx.targetRegistry.registryId);
if (tx.targetRegistry.registryId != 'org.nemo.cim.hlc.BusinessPartner') {
return;
}
throw new Error('Reject all updates');
} `
when i am trying To deploy the business network using bellow command " composer network start --networkName cards-trading-network --networkVersion 0.0.14 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file cards-trading-admin.card
" this error is comming ->"Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: cannot get package for chaincode (cards-trading-network:0.0.14)
" please
[ ](https://chat.hyperledger.org/channel/composer?msg=Zigsjq3i2qieyTGSZ) @rashansamith88 Still not working @rashansamith88
[ ](https://chat.hyperledger.org/channel/composer?msg=x6u3sP2XaFhhA7puf) @AlyDabbous did u romove composer
[ ](https://chat.hyperledger.org/channel/composer?msg=KgefwoxTB5REzHyFe) @rashansamith88 yes @rashansamith88
[ ](https://chat.hyperledger.org/channel/composer?msg=vQGT56D5YvfW3op24) @AlyDabbous re install using npm install -g composer-playground
Hi Experts, i have the folloing situation, i am using cucumber to test things. the background section i create an AdministrativeDistrict with id 111 and it passed, then i create the youth participant which is defined as folloing with the json next to it. i am recieving an error "Invalid or missing identifier for Type AdministrativeDistrict in namespace ..." when i run npm test, what wrong i am doing.
participant Youth extends User {
--> AdministrativeDistrict administrativeDistrict
}
{
"$class":...
"administrativeDistrict":"org.sample.AdministrativeDistrict#111"
}
}
Any help would be appriciated
Has joined the channel.
Hello, I am trying multi user mode and followed the https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest for the REST server. When i run the "docker run" and check the logs the REST server starting is failing with the following error:
Hello, I am trying multi user mode and followed the https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest for the REST server. When i run the "docker run" and check the logs the REST server starting is failing with the following error: Exception: Error: Error trying to ping. Error: Composer runtime (0.19.13) is not compatible with client (0.19.12)
Error: Error trying to ping. Error: Composer runtime (0.19.13) is not compatible with client (0.19.12)
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:813:34)
at
Hello, I am trying multi user mode and followed the https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest for the REST server. When i run the "docker run" and check the logs the REST server starting is failing with the following error: Exception: Error: Error trying to ping. Error: Composer runtime (0.19.13) is not compatible with client (0.19.12)
Error: Error trying to ping. Error: Composer runtime (0.19.13) is not compatible with client (0.19.12)
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:813:34)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=KPfw6TfdujpRumXgS) @rashansamith88 - I assume that your `composer network install` command completed successfully before attempting the `start` ?
The output from the `install` command shows the exact name and version of the network that you need to use in the `start` command.
If the output of the `install` command has disappeared, you can try `composer archive list` to list the details from the .bna file.
(If you have run the startFabric.sh script inbetween the `install` and `start` commands then you will need to start again.)
How can we get user email from composer rest server API with google authentication?
Has joined the channel.
how can i find logic.js file in my project's folders
there is no that kind of named file.is that should defined by me or auto genarate
[ ](https://chat.hyperledger.org/channel/composer?msg=8PixSofum3X9mM58L) @umamaheswarv - It looks like you have installed and started your Business Network using the v0.19.13 composer-cli client, and that in turn has created a chaincode container with the Composer v0.19.13 runtime - all good so far!
The "client" error in your case is the composer-rest-server that is running in the Docker Container. You could remove your container and the docker image it is built from and then pull the v0.19.13 composer rest server container from Docker Hub and then you would have compatible versions. Here is a link to the tags (versions) of the rest server image: https://hub.docker.com/r/hyperledger/composer-rest-server/tags/
Your alternative is to start again with the latest versions of everything - Composer v0.20.4 and FAbric 1.2.1.
how can i find logic.js file in my project's folders
there is no that kind of named file.is that should defined by me or auto genarate
[ ](https://chat.hyperledger.org/channel/composer?msg=2KNC8s32ToPZAFbLM) @rashansamith88 it should be under the lib folder
[ ](https://chat.hyperledger.org/channel/composer?msg=6ueYyK69uPxA45xk9) @srikanthanthargam you mean the authenticated ID ? You would use Google+ APIs for that -> see https://developers.google.com/+/web/people/#retrieve-an-authenticated-users-email-address
[ ](https://chat.hyperledger.org/channel/composer?msg=ThDMPELxXX7sn6WdS) @rthatcher there is no lib folder bro
[ ](https://chat.hyperledger.org/channel/composer?msg=du7fgeTgtaaNfXrWc) @rashansamith88 - you seem to have a few issues today :-( I would suggest carefully working through the Developer tutorial - it is well tested so there should be no problems.
https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
[ ](https://chat.hyperledger.org/channel/composer?msg=Kt8sCZi8Lue5McLEs) @rrishmawi there are sample cucumber tests in the sample-networks repo eg -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/basic-sample-network/features/sample.feature#L23
[ ](https://chat.hyperledger.org/channel/composer?msg=j3bqaeLDtHymX39x3) @rthatcher i am following developer tutorials.but in my project there is no lib folder
[ ](https://chat.hyperledger.org/channel/composer?msg=zhxN2H7eqvtJo6DLj) @mahoney1 I have tired this It did not worked.
Clipboard - November 8, 2018 3:12 PM
@octavians 1 Transaction processor functions will fail and roll back any changes already made, if an error is thrown in that transaction function - btw transactions return a promise (and is always a Promise, its up to the developer to resolve the type based on his knowledge or the type it is returning eg boolean true or false). The whole transaction fails, not just the transaction processing, and anything changed by the transaction processor function before the error occurred will be rolled back. see https://hyperledger.github.io/composer/latest/reference/js_scripts - not sure why you would want to intercept the system transaction (as opposed to have a standard function that performs the updates and which your application calls). Also fyi see this statement regarding Hyperledger Composer's current project status -> https://lists.hyperledger.org/g/composer/message/125
when i am trying to install business network i run this command composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna but then got this error "Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline"
@mahoney1 please help
@rashansamith88 you need a running Fabric per Step 4 in this link? https://hyperledger.github.io/composer/latest/installing/development-tools.html - you can check your docker containers to see what's running using `docker ps`
it is done @mahoney1 but got error
@mahoney1 bro it was worked.thanks brother
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=m8TcK5fD7ywdNw2Ln) @rthatcher Thank you! I am able to successfully start the rest server after pulling the 0.19.13 image from the Docker hub.
[ ](https://chat.hyperledger.org/channel/composer?msg=cFhybkTygN6SevmLL) @mahoney1 Hi @mahoney1! Thank you for your answer! I have developed a Loopback Application which uses the loopback-connector-composer to connect to HL. We don't have any explicit transaction declared in our .cto. The default system transactions were all we needed until we started to implement the ACLs. During connect to HL (the connect is handled by the loopback connector) the definition of the network, the bna, is downloaded and interpreted. The AclManager which interprets the acl file needs 15 seconds to load 50+ rules. We want to move some of the ACL logic to transactions without creating transactions in the .cto. The rules are not even used or needed on the client, they are only used by the chaincode. ```
`2018-11-05T12:59:54.407Z DEBUG :BusinessNetworkDefinition:fromArchive() Adding ACL files to ACL manager {}$
2018-11-05T13:00:09.185Z DEBUG :BusinessNetworkDefinition:fromArchive() Added ACL files to ACL manager {}$`
```
Hi all, i do not understand relationships in composer. is it an "owns" relationship? for example if i have a Person participant, and an asset Certification, how to relate both, should i add an array in the Person difnition or should i add an owner in Certification?
hello :) I have a question concerning Business Network Cards... Basically I have created an administrator node from which I would like to generate participants cards and provide them in order to connect to my network
but if I generate a participant card then I can see that IP addresses and orderer and other peers certificates are provided
in that way they can generate a network admin and manage the network.. is there something I am missing?
reminder that the Community call is today at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community.3 best regards Paul
@rrishmawi you should add an owner (as having a relationship to the certificate he/she (Person) owns) - in this case one-to-one relationship ie `` --> Person` .... for one asset owned by (relationship to) several owners, relationship would be something like ` --> Person[]` in your asset etc
Hi, Im using bluemix blockchain. But yesterday I got one stranger error here ... I losed my admin credentials
```
$ composer network ping -c admin@huru-network
Error: Error trying to ping. Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier 'xxxxxxxxxxxxxx', has not been registered
```
Somebody could help me, pls
other question... If I reconfigure my network in IBM Bluemix, the database will be cleaned too ??
Is it possible for a transaction processor function to create a transaction if a certain condition matches? How do you do that?
Hi,
Any details about the adding a new peer into the existing network ? I have a hyperleder network i have created using composer playground and created an app and now hosted it. How to add new peers into this created network? I have checked some documentation, where they including the ip address of the machine to be connected in docker.yaml file and then start the network. But in a running application how is it possible ? We cannot edit the yaml file each time, tear-down and start the fabric again. Any documentation regarding this ?
Hello All, one of my use case require to generate a PDF file(agreement between two participants) either through call an external API from transaction processor function and pass signature of both participants hash (private/public key) to the API which will print on PDF. I really don't know how to get signature hash of participants?? Please help me or refer any document. Thanx! in advance
[ ](https://chat.hyperledger.org/channel/composer?msg=dJY6PGivA2Ph3GqJQ) @mahoney1 Thanks i understand now.
[ ](https://chat.hyperledger.org/channel/composer?msg=yCo54Cd6qceLDk6AA) @biksen you can use `getCurrentIdentity()` in your TP function to get Certificate and use a call-out to your API? eg ```async function onPrivilegedTransaction(privilegedTransaction) {
let currentIdentity = getCurrentIdentity();
// Get the PEM encoded certificate from the current identity.
let certificate = currentIdentity.certificate;
```
@ValderGallo probably best to get support thru your official IBM channels. If you teardown you Fabric (not your Composer business network) in BX it should clear down yeah. Your 1st problem sounds like you've still got an old `admin` card issued by a CA from a previous environment in your local card/credentials directory (where you did the ping)
Has joined the channel.
hi
any one had a experience on hyper ledger composer on production env?
@ak97m yes, depends on your use case obviously - in that you can choose to do an add/delete (ie create an asset say) depending on conditions or do nothing at all (logic dictates no updates/adds following a query which indicates no action required). Both will still be recorded in the history, but the 2nd is in effect a query or logic path at most.
i want to test multi machine with multi organization with multi user mode
any help on this?
@Vasanth Have you seen this announcement: https://lists.hyperledger.org/g/composer/message/125
Composer is still good for a quick demo or prototype, but is not advisable as a way forward for a production deployment. We do have a multi-org tutoril
@Vasanth Have you seen this announcement: https://lists.hyperledger.org/g/composer/message/125
Composer is still good for a quick demo or prototype, but is not advisable as a way forward for a production deployment. We do have a multi-org tutorial -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
ya i already ..
@mahoney1 Is there any way to add peer to remote network?
any docs?
then how can i move production with composer chain codes?
hi
should i rewrite to match node js chaincodes to use fabric?
Hi mahoney1 if we deploy a multi network as in the tutorial by installing the same network ...does each participant have a copy of the data?
[ ](https://chat.hyperledger.org/channel/composer?msg=Jvs4NQqXGr7P7RCdM) @sooraj-citta You are correct - you should not need to teardown and rebuild your Fabric to add a new Peer - and you don't need to :-) But be prepared that the task is quite involved the first time you do it!
You will need to be familiar with Docker and Docker Compose in order to extend the docker-compose.yaml file and start extra containers - but it is more complex than that.
(You may already know this, but if you are using the 'standard' Development Fabric that was provided when you installed Composer then you are using the same default certificate structure as all other downloaders of that Fabric so you are not secure - no problem for isolated developers testing, but not good for hosting.)
The Broad steps for extending your simple Fabric:
1. Generate new Crypto material for the new Peer(s) - and for the new organisation if the Peer will belong to a different organisation. (You can use `cryptogen` or your own choice of certification tool.)
2. If you are adding a new organisation you will need to use `configtxlator` to change the definition of the Fabric.
3. Reconfigure you existing Fabric to use the changes made with configtxlator
4. Modify docker yaml files (or create additional files)
5. Start additional containers and join to Fabric
6. Modify connection.json in Composer Business Network cards to use extended Fabric.
This Q/A in Stack overflow explains some of the process, https://stackoverflow.com/questions/46371470/how-to-add-a-new-peer-to-an-existing-hyperledger-fabric-network and there are quite a few blogs and tutorials on the web with examples of extending a Fabric. The Fabric documentation has various documents on building Fabrics and the BYFN Tutorial is a good read for understanding the components (Build Your First Network) https://hyperledger-fabric.readthedocs.io/en/release-1.2/build_network.html
[ ](https://chat.hyperledger.org/channel/composer?msg=yeqHKue2wWoRzus9p) @Vasanth moving fwd, yes - you can see a very good example to try out of the latest programming model changes going into Fabric master at https://hyperledger-fabric.readthedocs.io/en/latest/developapps/scenario.html (its a node js sample).
[ ](https://chat.hyperledger.org/channel/composer?msg=yeqHKue2wWoRzus9p) @Vasanth moving fwd, yes - you can see a very good example to try out of the latest programming model changes going into Fabric master at https://hyperledger-fabric.readthedocs.io/en/latest/developapps/scenario.html (its a node js sample). Obviously watch out for announcements of when this ongoing dev release is GA - but that sample is WIP fyi.
thank you so much for your support @mahoney1
Has joined the channel.
Hi. Currently I am working on hyperledger composer. I will need to know how can a multi-user access my rest-server at the same time? because currently when i ping a host, I get only one user. but that way, I will need to have port for every participant???
[ ](https://chat.hyperledger.org/channel/composer?msg=amdh53Kw9ZDmS4rDk) me too having the same doubt? how can i tell the rest server to use specific user from client side/web app?
[ ](https://chat.hyperledger.org/channel/composer?msg=amdh53Kw9ZDmS4rDk) me too having the same doubt? how can i tell the rest server to use specific participant from client side/web app?
[ ](https://chat.hyperledger.org/channel/composer?msg=azpzT6CZXHsXuXC3T) @mahoney1 Thank you very much @mahoney1 . Is there any way to get certificate PEM of any other participant?
[ ](https://chat.hyperledger.org/channel/composer?msg=HrsHFH5cgeJWwRr7r) Thank you @mahoney1 . actually I have another participant who are not logged in. I have the Participant object. But how to get Identity object from this participant object?
[ ](https://chat.hyperledger.org/channel/composer?msg=2AqZH2fMf28aSnQZT) @mahoney1 i couldn't find the source for papernet node js app
@Vasanth @Smit95shah with multi-user REST server, comes (ie requires) an authentication strategy so that each user can be authenticated to the REST server and then that user (for which a business network card and therein blockchain identity exists) can interact with the ringfenced REST server using their REST API wallet (in which his/her individual business network card is imported). See https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication for Authentication and link to (posted this earlier but chat channel is intermittent today)
@Vasanth its [here](https://github.com/hyperledger/fabric-samples/tree/master/commercial-paper)
Has joined the channel.
hi I have instilling problems of development environment tools
1 error generated.
make: *** [Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_stack.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:262:23)
gyp ERR! stack at ChildProcess.emit (events.js:182:13)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:240:12)
gyp ERR! System Darwin 18.0.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--library=static_library" "--module=/Users/faten.q/.npm-global/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v64-darwin-x64-unknown/grpc_node.node" "--module_name=grpc_node" "--module_path=/Users/faten.q/.npm-global/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v64-darwin-x64-unknown"
gyp ERR! cwd /Users/faten.q/.npm-global/lib/node_modules/composer-cli/node_modules/grpc
gyp ERR! node -v v10.12.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! grpc@1.10.1 install: `node-pre-gyp install --fallback-to-build --library=static_library`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the grpc@1.10.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
Please can you help me and let me know what should i do
@FatenFq - the problem looks like you have Node v10 installed, but Composer requires Node v8. I think the Composer pre-requisite scripts have now been updated to fix the problem, but these 2 commands may give you a quick fix:
`nvm install 8` followed by `nvm use 8`
@biksen not as an API method in the runtime no - but you can (if you have the authority that is, eg an admin) to list the identity / cert of another card, if you have access to it as captured https://github.com/hyperledger/composer/issues/2666
@biksen not as an API method in the runtime no - but you can (if you have the authority that is, eg an admin) list the identity / cert of another card, if you have access to it as captured https://github.com/hyperledger/composer/issues/2666
@biksen not as a runtime API method in the runtime no - but you can (if you have the authority that is, eg an admin) list the identity / cert of another card, if you have access to it as captured https://github.com/hyperledger/composer/issues/2666
[ ](https://chat.hyperledger.org/channel/composer?msg=F6BN27XjKGqhmsfvt) @mahoney1 Thanks for the prompt reply. I have enabled github authentication. However I am struggling to understand the fact that there can be only one participant active at a given point of time. Because when I do github authentication, it only authenticates one of the default cards under the given wallet.
Most of the thinking has derived from here: https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
In the above example I have port `3000` used to authenticate by the github and `3001` is run without authentication. So whenever I add a new participant under 3000, I can only have one card under `setDefault`. Does that mean that under host `3000` only one end-user(participant) can perform transaction at a given point of time.
@Smit95shah that is client authentication, using a client id and secret. If you want user authentication on a per user basis (as opposed to client authentication) choose the appropriate strategy - suggest to read the google oauth2 tutorial for explanation. There is a sample user auth (JWT) written by a community member as a tutorial here -> https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
@Smit95shah that is client authentication, and is using a client id and secret. If you want user authentication on a per user basis (as opposed to client authentication) choose the appropriate strategy - suggest to read the google oauth2 tutorial for explanation. There is a sample user auth (JWT) written by a community member as a tutorial here -> https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
@Smit95shah that is client authentication, and is using a client id and secret. If you want user authentication on a per user basis (as opposed to client authentication) choose the appropriate strategy - suggest to read the google oauth2 tutorial (which is client authentication too) for brief explanation. There is a sample user auth (JWT) written by a community member as a tutorial here -> https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
@Smit95shah that is client authentication, and is using a client id and secret. Its trusting the app, then the app users making REST API calls will provide a token to interact with the REST server (as the imported business card in their local wallet) etc etc. If you want user authentication on a per user basis (as opposed to client authentication) choose the appropriate strategy - suggest to read the google oauth2 tutorial (which is client authentication too) for brief explanation. There is a sample user auth (JWT) written by a community member as a tutorial here -> https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
[ ](https://chat.hyperledger.org/channel/composer?msg=7gNq48YieqZuDJvkb) @mahoney1 Thank you for the resource. Will take a read.
[ ](https://chat.hyperledger.org/channel/composer?msg=7gNq48YieqZuDJvkb) @mahoney1 Can I ask a quick questions, when do we need multiple-business-networks? is there any scenerio that you could quickly share?
@Smit95shah multiple use cases, different parties? And/or where you want separation of business networks on separate channels (=ledger, = privacy) for different parties (eg similar business network with variations etc).
@Smit95shah multiple use cases, different parties? And/or where you want separation of business networks on separate channels (=ledger, = privacy) for different parties (eg similar business network, with variations+- etc).
[ ](https://chat.hyperledger.org/channel/composer?msg=EXadHDFYy6j47BG9s) @mahoney1 Thank you so much @mahoney1 for your help.
@mahoney1 Thank you for the info. In the URL that you shared. There seem to be a question in the comments of the document.
```
How do you get the Composer Rest Server to use a user specific card for each user. Right now if I authenticate with User1 and import their card, and then later authenticate with User2 and import their card, User1’s card is still in the wallet and being used as the default.
I originally thought that something in the Access-Token would let the rest server know which card it should be using, but that doesn’t seem to be the case unless I’ve missed some step.
```
That is exactly what i am confused with.
It would be great if you could provide me with some explaination to this. Thanks you so much.
@mahoney1 Thank you for the info. In the URL that you shared. There seem to be a question in the comments of the document.
"How do you get the Composer Rest Server to use a user specific card for each user. Right now if I authenticate with User1 and import their card, and then later authenticate with User2 and import their card, User1’s card is still in the wallet and being used as the default.
I originally thought that something in the Access-Token would let the rest server know which card it should be using, but that doesn’t seem to be the case unless I’ve missed some step."
That is exactly what i am confused with.
It would be great if you could provide me with some explaination to this. Thanks you so much.
@mahoney1 Thank you for the info. In the URL that you shared. There seem to be a question in the comments of the document.
"How do you get the Composer Rest Server to use a user specific card for each user. Right now if I authenticate with User1 and import their card, and then later authenticate with User2 and import their card, User1’s card is still in the wallet and being used as the default.
I originally thought that something in the Access-Token would let the rest server know which card it should be using, but that doesn’t seem to be the case unless I’ve missed some step."
That is exactly what i am confused with.
It would be great if you could provide me with some explanation to this. Thanks you so much.
The comments in-lining with the comment does not seem to resolve the issue. Because if I `setDefault` everytime a user logs-in into my account, it will definitely not work for concurrently.
[ ](https://chat.hyperledger.org/channel/composer?msg=DmfqgaBuT5y5Rnv5K) @Smit95shah Each separate GitHub user should have a separate Wallet. If you are able to test with 2 different Browsers and maybe use Private/Incognito windows you should be able to see it working OK.
Thanks @rthatcher
However when I get this error:
Screen Shot 65.png
Because earlier when once instance i was able to add `?access_token=
is there a way to retreive `access_token`
@Smit95shah if you use 2 diff browser, you should see the access_token in the Cookie on each.
@Smit95shah if you use 2 diff browsers, you should see the access_token in the Cookie on each.
Has joined the channel.
hey guys in the multi.org tutorial ... does the two orgs have a copy of the Blockchain data???
I mean..is it sufficient to install the same network on both machines to have 2 nodes?
and what if I add an Org3 identity?
Hi, i'm trying deploy a Composer blockchain business network to hyperledger fabric inside a docker image for demontration purposes. But I keep getting an error when I try to start fabric from my docker image: "ERROR: Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running?". Is my approach right? Or should I try to create a docker swarm to do this?
ls
[ ](https://chat.hyperledger.org/channel/composer?msg=P9X2xXTHogcPp7Dni) @mahoney1 Thanks found it.
[ ](https://chat.hyperledger.org/channel/composer?msg=4fbnmKdJDnshytqHd) @AlexanderCollins Yes, this is a multi-org Fabric for 2 example organisations working together with a shared ledger.
You `install` the Business Network in both Organisations, but then you only have to issue the `start` once for the whole network, and all peers will start the network.
There is a suplementary tutorial showing how to add a 3rd Org: https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82
[ ](https://chat.hyperledger.org/channel/composer?msg=P9X2xXTHogcPp7Dni) @mahoney1 Just curious, may I know why there are extra characters at the end of the access token such as
`s%3Ax8WgYTXEEoDEQk3EbLFeDrhiuli65DE2NESl9axM5zScxHgpo5WkwWyoP7QMfkPP.ihdps2GI7OW5BuCTH0uzBcJOqGXVSpO6%2F2TZAMRrH6o`
than `s%3A` and `.ihdps2GI7OW5BuCTH0uzBcJOqGXVSpO6%2F2TZAMRrH6o` are extra.
sorry last question..do I have to make a copy of the crypto-config folder on both machines? because if I generate different certificates I don't think its going to work
I mean when I install the second network with the byfn-network-org2.json file on the second pc... If I have generated different certs with the generate.sh it cannot work right?
[ ](https://chat.hyperledger.org/channel/composer?msg=8b4WHh4cZznxRTfxJ) @SergioCardona When you issue the `composer network start` command the Fabric is attempting to start a new docker "chaincode container" - so it looks like there is some problem getting access to your Docker Daemon to create the new container. You could check your peer log to see if there are more detailed error messages.
It could be a permissions problem, or that your config doesn't have the docker deamon running where it is expected - I _think_ there is an environment variable used in the Peer config of the docker yaml files that specifies the location of the docker daemon - here is what I have seen:
` - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock ` . maybe your docker environment is set up differently.
If you are running a simple development fabric on a single machine you do not need Docker Swarm.
@SergioCardona would not recommend that approach, you could use swarm for your Fabric env - someone has already created [a blog](https://medium.com/@malliksarvepalli/hyperledger-fabric-on-multiple-hosts-using-docker-swarm-and-compose-f4b70c64fa7d)
@SergioCardona would not recommend that approach, you could use swarm for your Fabric env - someone has already created [a blog](https://medium.com/@malliksarvepalli/hyperledger-fabric-on-multiple-hosts-using-docker-swarm-and-compose-f4b70c64fa7d) with the steps
*thank you for your help
@Smit95shah probably HTML character encoding for `:`
@Smit95shah %3A might probably HTML character encoding for `:` - if that's what you copied, then its access token
@Smit95shah %3A might probably HTML character encoding for `:` - if that's what you copied, then its the access token
@AlexanderCollins - you are right - you need to share the same crypto material across the 2 machines, otherwise there will be a mismatch between the 2 separate generat commands.
You will also have to take care over the addressing and connectivity between the containers running on the separate machines.
Most people who attempt this multi machine exercise end up using kubernetes or docker swarm to manage the addressing/connectivity.
ok thank you for your help really :)
of course If I only provide Business Card the new joiner wont have a copy of the data I guess
have to install the network
@AlexanderCollins - if you have not already done so, can I suggest that you first try the Multi-Org tutorial as written - for a single machine. That way you will have confidence in the process, and have seen what results to expect.
no I did it the only thing that struggles me is that if all the nodes have a copy of the crypto material
everyone can be administrator and manage / deploy the netowork
@AlexanderCollins in a multi org blockchain network, each Org is responsible for their own certificates and crypto material? The nodes in each org won't 'have a copy' from the other org?
thank you mahoney.. :) well yes but they will have a copy of the the other participant's certificates as well not only their own one
sorry for asking.. just want to understand
So I can't have like an Administrator - ORG1
cool, have a nice weekend
and then the other ORGS --- lets say normal peers
oh ok sorry
thank you anyway
:D
have a nice weekend too
@mahoney1 and @rthatcher another quick question: why do we have to use `npm start` for angular project instead of `ng serve` isnt that `start` is `ng serve` in `package.json`
Has joined the channel.
I want to create a Blockchain that stores invoices entered by an employee at company A and also another employee from company B can view it so where should i start ?
[ ](https://chat.hyperledger.org/channel/composer?msg=P9MF7FRCE4dnrfEo6) @mahoney1 @mahoney1 Thank you!! I'll try those!
I tried to restart composer-rest-server again.but gives this error ->"{ Error: Card not found: admin@tutorial-network
at store.get.then.catch (/home/samith/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/cardstore/walletbackedcardstore.js:74:27)
at
how to resolve this error
Error: make sure the chaincode tutorial-network has been successfully instantiated and try again: getccdata composerchannel/tutorial-network responded with error: could not find chaincode with name 'tutorial-network'
Has joined the channel.
Hello All, I'm trying to install cli composer on MacOS Mojave, and I can't. the error is
``` gyp ERR! node -v v10.13.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
node-pre-gyp ERR! build err
```
what to do? Please help
Use node version `v8.12.0`
[ ](https://chat.hyperledger.org/channel/composer?msg=qv7zRuWZNTZFs2bTJ) @NursultanMakhanov Use node version `v8.12.0`
Any version above `8` i.e. `10` will not work. It is atleast not working for me.
Has joined the channel.
@Smit95shah I get the exact same issue. Would be kind enough to tell me how to switch to an older version please?
Has joined the channel.
Hello - I'm following a fabric course and am trying to get some composer-admin and composer-client API functions to work on a Ubuntu 16 x64 VM using composer 0.20.2 and node 9.11.1. Everything is working fine with the rest server. I am unable to install either of those API modules, always getting the error "cannot find module composer-admin" when running a script that requires one of them. They are dependencies listed in the package.json but are not installed when I hit npm install. I have also tried installing them into my workspace and globally no to avail. Here is the log when I try to install composer-admin:
vagrant@vagrant:~/workspace/HLF-Fabric-API-master$ npm install composer-admin
npm WARN rollback Rolling back grpc@1.10.1 failed (this is probably harmless): EPERM: operation not permitted, scandir '
/home/vagrant/workspace/HLF-Fabric-API-master/node_modules/fabric-client/node_modules'
npm WARN hlf-course-api@1.0.0 No repository field.
npm ERR! path /home/vagrant/workspace/HLF-Fabric-API-master/node_modules/fabric-client/node_modules/grpc/node_modules/mk
dirp/node_modules/minimist/package.json.1672937024
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall open
npm ERR! enoent ENOENT: no such file or directory, open '/home/vagrant/workspace/HLF-Fabric-API-master/node_modules/fabr
ic-client/node_modules/grpc/node_modules/mkdirp/node_modules/minimist/package.json.1672937024'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent
npm ERR! A complete log of this run can be found in:
npm ERR! /home/vagrant/.npm/_logs/2018-11-10T23_54_08_447Z-debug.log
vagrant@vagrant:~/workspace/HLF-Fabric-API-master$
[ ](https://chat.hyperledger.org/channel/composer?msg=HbdapfAyCpkBHzSbq) @parthask Hi @parthask I usually use `nvm` (node version manager) to manage all the node versions. Because I usually work on other projects that requires me to work on higher version of node. Such that `nvm` is best use case for me. Such that i can switch between node versions.
Install: https://github.com/creationix/nvm
However, if you would need to uninstall node completely and reinstall the lower version or so the below resource might help:
https://stackoverflow.com/questions/11177954/how-do-i-completely-uninstall-node-js-and-reinstall-from-beginning-mac-os-x
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=cBDZjyxSAdZw3RqJ5) @Smit95shah Thank you! It worked! Btw if you don't know how to switch node versions, use nvm.
Good morning
does anyone know how to allow blank inputs in the composer Rest API?
Hi, does any one know how can I generate API in java (`composer-rest-server`)
have you ensured your docker was properly installed? @parthask
Has joined the channel.
Much thanks @Smit95shah!
Also, anybody faced this (following) issue while running the downloadFabric.sh ?
/fabric-scripts/hlfv12/downloadFabric.sh: line 24: docker: command not found
Has joined the channel.
Hello all, I am new to Blockchain and it's technologies and would like to learn about it. Please tell me where can I find the docs, which are simple to understand and sample tutorials. It would be great if any links are provided.
Thank yu
[ ](https://chat.hyperledger.org/channel/composer?msg=X3jSWqdN7ssrtxciF) @pulagala88 This should help you for learning about fabric : https://hyperledger-fabric.readthedocs.io/en/release-1.3/
This for composer : https://hyperledger.github.io/composer/latest/introduction/introduction.html
@RawanAlmousa Try this tutorial: https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org Share with me how you find it being useful or not.
@pulagala88 I think you came to the right place. You may get familiar with composer first. https://hyperledger.github.io/composer/v0.19/index.html
[ ](https://chat.hyperledger.org/channel/composer?msg=FoewexuzQiueyPqRh) guys anyone knows?
@AlexanderCollins Set parameters to be optional might do it.
[ ](https://chat.hyperledger.org/channel/composer?msg=PCFXJjynFAavMKCS9) @AlexanderCollins set the fields in the modeled asset/participant/transaction to optional. There is a validation issue on blank fields FYI (see https://github.com/hyperledger/composer/issues/4312 ie in loopback, that the REST server is based on) - so upgrade your business network then restart your REST server to discover newly modified business network
Has joined the channel.
Hi, I am following the developer tutorial at https://hyperledger.github.io/composer/unstable/tutorials/developer-tutorial.html, and I have just created the composer-rest server, however in the REST-UI e.g localhost:3000/explorer, I only see "system general business network methods", should I not be seeing Trader, Commodity and Trade methods too? I ask because in the next steps, when I create the skeleton Angular App, the module.ts is clearly missing Trader, Commodity and Trade NgModule imports from app.module.ts.
It seems the tutorial is broken, I recreated the server and kept the default "example" Asset, Participant and Transaction models and everything works as expected. So its the Trader example changes instructed by the tutorial which are incorrect.
[ ](https://chat.hyperledger.org/channel/composer?msg=K39Z7eKummkN6rREE) @marzubus Is it possible you have an ACL that is preventing the Card from seeing the Trader, Commodity etc?
Hello, I have a problem. I have an Angular application and i am trying to use composer-client. However i get the following error: ERROR in ./node_modules/composer-common/lib/util.js
Module not found: Error: Can't resolve 'os' in '/home/rene/Documents/Testprojecten/testComposer/node_modules/composer-common/lib'
ERROR in ./node_modules/homedir-polyfill/index.js
Module not found: Error: Can't resolve 'os' in '/home/rene/Documents/Testprojecten/testComposer/node_modules/homedir-polyfill'
ERROR in ./node_modules/lorem-ipsum/lib/generator.js
Module not found: Error: Can't resolve 'os' in '/home/rene/Documents/Testprojecten/testComposer/node_modules/lorem-ipsum/lib'
ERROR in ./node_modules/composer-common/node_modules/jszip/lib/readable-stream-browser.js
Module not found: Error: Can't resolve 'stream' in '/home/rene/Documents/Testprojecten/testComposer/node_modules/composer-common/node_modules/jszip/lib'
I am using Ubuntu 18.04 and angular cli
and npm 8.9.0
@Tiruyasha can you try to delete your node-modules folder and do npm install?
@Rochendiil The same errors except the last one
okay i think the problem is ubuntu 18.04. Composer support: Operating Systems: Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12. But i think you can "hack" it.
How can you "hack" it?
https://github.com/contentful/contentful.js/issues/243
This looks like the same issue you have
it's a problem with angular instead of composer
let me know if that works, If it doesn't i'll try to help you further
Has joined the channel.
Hi, everybody! I'm a beginner in blockchain and Hyperledger. Can i create a multi machine network with only 1 Org?
[ ](https://chat.hyperledger.org/channel/composer?msg=HZC8bBdAMjwPPDs7g) @blockchain.abaco Yes - that can be done, and the secret to success is to understand the IP Addressing and Connectivity.
There is a blog here that some community members have found useful, which uses Docker Swarm for the networking: https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f
[ ](https://chat.hyperledger.org/channel/composer?msg=syWKPNwv8nrRxDeSg) @rthatcher That tutorial its for only 1 org?
@blockchain.abaco - sorry, I think this one is for a Single Org :-) This was written in January, so you might have to be wary of some changes in versions since then: https://www.skcript.com/svr/setting-up-a-blockchain-business-network-with-hyperledger-fabric-and-composer-running-in-multiple-physical-machine/
Makes sense create a network where only one node submit transactions and the others nodes are just used for consensus mechanism?
@Smit95shah or anyone else, For earlier query, I installed Docker and it's running on the background. I get the following error now when I run ./downloadFabric.sh. Error "response from daemon: Get https://registry-1.docker.io/v2/hyperledger/fabric-peer/manifests/1.2.1: unauthorized: incorrect username or password"
Please advice. Thank you
Hello, I have basic network running, how can I then login to it with composer-cli ? https://github.com/hyperledger/fabric-samples/tree/master/basic-network
Hi guys, I'm trying to write a client application in node js, this error bothers me : TypeError : FileSystemCardStore is not a constructor.
I'm trying out from this : https://medium.com/hyperlegendary/how-to-build-nodejs-application-for-your-hyperledger-composer-networks-2b08ff25665f
Hello Everyone, We would like to move from Composer to Fabric. Meaning to say our project is already running over Hyperledger Composer but now we are in process to move over fabric. In that case how the data back up can been done? would the already processed data get lost when migrate from composer to fabric? In Composer we have used CouchDB and Fabric we would use the same.
@rthatcher : Hi i have followed the steps that you have mentioned about extending the fabric to accommodate new peers. This is have mentioned in https://stackoverflow.com/questions/53223444/implement-the-distributed-decentralised-ledger-for-a-hyperleder-network
Is this the recommended way to add peers to out channel. Suppose i made a login page of say users in the hyperledger compose. Then each user who registers gets added as peer to the channel and then world states get synced, there by making the ledger distributed and decentralised. So for achieving that i need to follow the same step what you have mentioned ? If tats the only way means i will try out automating for each peer addition (which as of now we have to do manually by changing in crypto-config files, logging into docker containers etc..)
@rthatcher is any way to impose authentication on composer-playground??like keeping some username and password to open playground
[ ](https://chat.hyperledger.org/channel/composer?msg=pJrDn44RzJKghMHr8) @PhilipAndrew If you are not using the Development Fabric with the Composer 'fabric-dev-servers' tools, then you need to start by creating your own Business Network cards to access the Fabric. The best resource to start this is to follow the 'Single Org' tutorial making adjustments as you go for the different folder/file names. You probably want to start at Step Two "Step Two: Exploring the Hyperledger Fabric network".
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
@Rochendiil Thanks for the help! The suggested link didn't work so i downgraded to angular 5.
I now have a different problem tho... I get the following error when i try to initialize a BusinessNetworkConnection: TypeError: isWindows is not a function
[ ](https://chat.hyperledger.org/channel/composer?msg=848YNaG8dXu2RTRG4) @DattaPatil - You have a choice to make for your migration
1. Try and understand the Data Structures used by Composer on the Fabric, and continue to model the data in the same way using native Fabric tools
2. Export the data, and import to new Data Structures
3. Hybrid - Retain the existing data in its current format and 'write lock' it, and commit new data and transactions into new a new channel.
Option 1 would offer the best fidelity of existing data, but is the most *complex* and *risky*.
Option 2 is the simplest, but may risk losing the fidelity and immutability of the data
Option 3 might keeps things simple from a Fabric perspective, but might complicate your applications accessing the Fabric.
You are correct that Composer uses the same underlying Fabric, but in making Composer simple as an abstracted layer, the Data Structures are more complex.
You can extract Current State of the data using Composer, and also extract the history of the data using Historian Queries.
[ ](https://chat.hyperledger.org/channel/composer?msg=yd3ky6q9cBmHo3ho4) @rthatcher I am trying to connect with composer here https://github.com/contractpendev/hyperledger-basic-network/tree/master/cli and my full project is contained in this git repo
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=3SwoRF2K8xYN2DGc3) @PhilipAndrew A brief look makes me think that you are missing `composer network install` and `composer network start` which should fit in between the creaton of the card and the pinging of the network.
[ ](https://chat.hyperledger.org/channel/composer?msg=3SwoRF2K8xYN2DGc3) Is there any chance you could help me ?
@prasanths96 see code examples [here](https://medium.com/@aniketengg/hyperledger-composer-issue-identity-import-card-7e07af378447) or [here](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#card-api-errors--resolutions)
[ ](https://chat.hyperledger.org/channel/composer?msg=CGzRJM8tg3EHGPgqx) @ShaikSharuk There is no feature in the Playground to lock it. Playground was intended as a Developers introduction for simple demos/prototypes rather than a multiuser tool.
@sooraj-citta after adding the peer, and it getting sync'ed as you mention - the business network (that's initially installed on the added peer) is the 'vehicle' for managing your application users requiring a business network card (and blockchain identity) to interact with the existing business network / ledger. The user would have a participant and identity issued via Composer (say) - then you create a business network card, so the application user can add, update or query the ledger via the business network, as appropriate. See also [here](https://stackoverflow.com/questions/44779648/create-one-more-peer-node-using-hyperledger-composer) for more info
Hi experts, i have question; i have a participant called Person, i created several participants using composer and gave them identities. and all looks fine i was able to do all operations. later, i modified the business network model and some changes applied to Person participant. when i deployed the new updates new container for the new upgrade showed up in the docker container list. in addition all the previous identities where dissociated with the participants. is this normal? if i am in production and i did an upgrade to the model will that remove all previous participants? what is the best practice here.
I am confused. I have a running buisness network(similar to auction network example) in my computer. The fabric is hosted in my system using the fabric-dev-server with all default values. The network is created using hyperledger composer playground. The network have 3 participants, 4 assets and 2 transactions. Only one business card is issued which is "admin". All the ledger transactions is in my system only.
What i need
-------------------
To add a peer to an existing network. I want to add another system to this network so that the ledger gets updated in the new couchdb and the ledger gets distributed. So even if my system gets off or docker dies, the details will be viewable in another system because the ledger gets synced.
Where i have done
------------------------------
I read the following links :
https://medium.com/@wahabjawed/extending-hyperledger-fabric-network-adding-a-new-peer-4f52f70a7217
The links explains about the peer addition steps. Overall what happens there is :
* downloaded the fabric sample 1.1.0 alpha version as the fabric extension is only possible through the cryptogen version present within the that version.
* Currently contains order, org1 & org2 (with 2 peers each).
* To add a new peer along with its couchdb, changed the template count in the crypto-config.yaml and created crypto material for the new peer using the extend command.
* Then using the docker composer file to spawn a new peer and its couchdb. This will create new containers.
* Finally the created peers should be joined to the existing channel for the couch db to get sync. The adding to existing channel is via logging into the docker container and typing some cli commands and adding the peer to channel via channel join command.
My doubts
------------------
* The steps that i have explained above : Is this recommend way to add peers to the channel ? Suppose i am creating a network and wanted to add peers to the channel based on a condition. Like a user/users can add themselves to the network through a login via composer playground and act as a peer. So i have to follow the same steps to do it ? Is this the recommended way ?
* As rrishmawi asked, How to preserve the existing data when some updation has made to the .cto file and updated ?
* In the case of the composer playground for issuing new ids, What is the enrolment secret in case of ID issual for a participant and how to know the enrollment secret of an existing ID.
please help out !
@mahoney1 @rthatcher @labcoinpoc
[ ](https://chat.hyperledger.org/channel/composer?msg=TmN9Zcqiy8GzukGcu) @rrishmawi - If you make changes to the definition of a Participant(or an Asset) the data may be hidden from you - please see this section in the Knowledge Wiki which explains your situation: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration
[ ](https://chat.hyperledger.org/channel/composer?msg=GLCn6mJwzi8Z86iZJ) @rthatcher THank you @rthatcher , but i do not think the problem is with playground. even using rest-server calls ia m not able to use the old identities with the participants.
@sooraj-citta that is a development environment set up, and I've sent links to add peers - but it doesn't escape that (if you want to change that environment that is) that you need to understand Fabric to know what you need to do - and that comes from Fabric's documentation https://hyperledger-fabric.readthedocs.io/en/release-1.2/key_concepts.html . Your alternative is to follow one of the Composer tutorials I sent (show how to use/interact iwth Composer business networks on an underlying multi-org Fabric network), or use multi-org (two-orgs, more reflective of a real blockchain network, and with multiple peers in each Org) -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@sooraj-citta that is a development environment set up, and I've sent links to add peers - but it doesn't escape that (if you want to change that environment that is) that you need to understand Fabric to know what you need to do - and that comes from Fabric's documentation https://hyperledger-fabric.readthedocs.io/en/release-1.2/key_concepts.html . Your alternative is to follow one of the Composer tutorials I sent or deploy the BYFN network (and show how to use/interact with Composer business networks on an underlying multi-org Fabric network), or use multi-org (two-orgs, more reflective of a real blockchain network, and with multiple peers in each Org) -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@sooraj-citta that is a development environment set up, and I've sent links to add peers - but it doesn't escape that (if you want to change that environment that is) that you need to understand Fabric to know what you need to do - and that comes from Fabric's documentation https://hyperledger-fabric.readthedocs.io/en/release-1.2/key_concepts.html . Your alternative is to follow one of the Composer tutorials I sent or deploy the BYFN network (and show how to use/interact with Composer business networks on an underlying multi-org Fabric network- two-orgs, more reflective of a real blockchain network, and with multiple peers in each Org) -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=iRhWSnLi8gEbxbAAJ) @rrishmawi You are right - it is not a Playground problem - it is a 'mismatch' between the new definition of Person and the existing data. Composer (playground or REST) will not display the data if it does not match the model, and I would think that it fails to match the ID to the participant. If you revert the model, or make your additional fields Optional it should work again.
Some extra Information:
1. Remember to stop and re-start the REST server after you make any changes to the model.
2. If you have re-run the startFabric.sh script - that does completed rebuild the Fabric and your data is lost and existing cards are useless.
Hi, I have the following problem:
When I run composer-rest-server, randomly one of my transaction return
Error: Error trying invoke business network. Error: Failed to receive commit notification from localhost:7051 for transaction '54ae68abeb611335e1dee7a37961e9236fbff1b788c2c700f87fe87e19bc10c1' within the timeout period
after that I cannot do any post transaction
I found the same problem here: https://chaincodedevs.com/showthread.php?tid=146
All transactions looks like that (composer transaction submit --card admin@network --data '{"$class": "org.acme.shipping.perishable.SetupDemo"}')
I run it from the bash script.
The problem occur only when composer-rest-server is running, after error I can login to composer-playground and read all assets but I can't update. I cannot update network as well. Composer-playground returning in loop warn: [Hyperledger-Composer] :HLFConnection :_checkCCListener() could not find any connected event hubs out of 1 defined hubs to listen on for chaincode events
The problem does not occur when composer-rest-server is off.
My setup:
Hyperledger Fabric v1.2
Hyperledger Composer 0.20.1
composer-rest-server 0.20.1 and 0.20.4 (tried both)
Ubuntu 16.04
Has joined the channel.
i need help with hyperledget composer.. im started with hyperledger 3 weeks ago, and i have rightnow an issue with http_proxy
when i entered "composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --networkName tuna-network --networkVersion 0.0.1", then i got this: Starting business network definition. This may take a minute...E1113 08:54:50.737284119 20887 uri_parser.cc:45] bad uri.scheme: ''
and then: Starting business network definition. This may take a minute...E1113 08:54:50.737284119 20887 uri_parser.cc:45] bad uri.scheme: ''
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: cannot get package for chaincode (tuna-network:0.0.1)
Command failed
The thig is, whe i try to initialize the chaincode on the Hyperledger Fabric peers i got the previous log i mentioned...so, HELP!!!!
@MichalRybarczyk did you mean Fabric 1.2 or Fabric 1.2.1 and Composer 0.20.4 - because that would be a useful start (there is a bug in Fabric 1.2.0 with commit notifications - fixed in 1.2.1). See the release notes . You could rebuild your business network cards to use a connection profile that increases the timeout values, in particular peer timeouts and also the `grpc.keepalive_time_ms: 600000` (eg 10 mins)
- see https://hyperledger.github.io/composer/latest/reference/connectionprofile - restart your REST server with the new card too and obviously the card used to execute the setupDemo is the one that will reflect the timeout changes etc.
@MichalRybarczyk did you mean Fabric 1.2 or Fabric 1.2.1 and Composer 0.20.4 - because that would be a useful start - is use Fabric 1.2.1 (there is a bug in Fabric 1.2.0 with commit notifications - fixed in 1.2.1). See the release notes . You could rebuild your business network cards to use a connection profile that increases the timeout values, in particular peer timeouts and also the `grpc.keepalive_time_ms: 600000` (eg 10 mins)
- see https://hyperledger.github.io/composer/latest/reference/connectionprofile - restart your REST server with the new card too and obviously the card used to execute the setupDemo is the one that will reflect the timeout changes etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=8doQgn2mN34rNfsox) @rthatcher Thank you @rthatcher, your response is much appreciated. I know about the second point by the way, it happened with me once :slight_smile:
@mahoney1 I use fabric 1.2, I will check 1.2.1 and come back to you.
[ ](https://chat.hyperledger.org/channel/composer?msg=r98pSwNTguMtwf32J) @rthatcher Hi @rthatcher , a little question: is a possible deploy two docker container (with hyperledger blockchain) in a same machine ??? or every container need an unique mahine?
*machine
Hello,
Anyone knows the difference between composer v0.19 and 0.20 ?
And does 0.20 support Fabric 1.3 ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ieMXBqcXKaFHxMvLj) @omarqr v0.19 supports Fabric 1.1, and v0.20 supports Fabric 1.2.1
At the moment there is no support in Composer for Fabric 1.3 (though one person in this channel says v0.20 works on Fabric 1.3)
Oh, do you know when a newer version supporting 1.3 will be available ?
Anyone else tried using Composer v0.20 with Fabric 1.3 and can confirm that there is no compatibility issue ?
[ ](https://chat.hyperledger.org/channel/composer?msg=MJrTqSjF5DmA8f2oY) @JesusAndresCabrera A Hyperledger Fabric network will be made up of a number of components e.g. An Orderer, some Peers, maybe a CA and maybe CouchDb - all of these components will be separate Docker Containers. For developers the network of components will be started by a docker-compose.yml file which defines the containers and their properties, and the networking of the containers.
[ ](https://chat.hyperledger.org/channel/composer?msg=MJrTqSjF5DmA8f2oY) @JesusAndresCabrera A Hyperledger Fabric network will be made up of a number of components e.g. An Orderer, some Peers, maybe a CA and maybe CouchDb - all of these components will be separate Docker Containers. For developers the network of components will be started by a docker-compose.yml file which defines the containers and their properties, and the networking of the containers.
For the developer, all the containers would run on a single machine.
[ ](https://chat.hyperledger.org/channel/composer?msg=GvHC8f5Soq3A2zd4T) @rthatcher thanks bro! i started in hyperledger 3 weeks ago, and i'm currently learning and doing some tutos!!!!
issue-jacs.png
how can i do set the corrects admin rights??? i am following tuna-network tutorial and i cant connect in right way.. any friendly expert?
how can i do to set the corrects admin rights??? i am following tuna-network tutorial and i cant connect in right way.. any friendly expert?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=P3xzWF9YKBRp2oKkb) @JesusAndresCabrera - I'm not familiar with the Tuna Network Tutorial.
It looks like you are trying to Update the Business Network using the "Network Admin" card which has Admin rights on the data and processes of the Business Network, but does NOT have rights on the Fabric itself. You need to upgrade the network using the "Peer" admin card that you used when you installed and started the network.
@JesusAndresCabrera did you import the admin card as instructed in that tutorial and ping it to see it connected ok?
[ ](https://chat.hyperledger.org/channel/composer?msg=cLqv9ftFyE7Kzgxy2) @mahoney1 yes bro
what does `composer card list` (output) and what does `docker ps` show (output)
ping.png
card-list.png
seems you are using a proxy (corporate) - or set variables for same ?
and `docker ps` ?
[ ](https://chat.hyperledger.org/channel/composer?msg=q7TKskC4wke5JbsR9) @mahoney1 mmmm, well, my enviroment is ubuntu 16.04 and http_proxy env var is empty
dockerps.png
[ ](https://chat.hyperledger.org/channel/composer?msg=2AtMnEoskQTCuQhge) @rthatcher i'll try what you are saying bro. Thanks...
Has joined the channel.
@rthatcher ,hi how can we access the genesis block in composer? Can you provide some information on the same it would be a great help
[ ](https://chat.hyperledger.org/channel/composer?msg=9RM8nuWxfCz2zKWR4) @ApurvTandon you wouldn't access via Composer - you would access this via Fabric - see -> https://hyperledger-fabric.readthedocs.io/en/release-1.2/commands/configtxgen.html
@mahoney1 thanks a lot
when im running composer rest server in multi user mode, can different participants make transaction at the same time? if so, how will i use the identity card different for each client? Because when i change the default ID card of a client, it is getting affected directly on the server.i.e, other clients also get that default card....
Has joined the channel.
I have an app for supply-track on top of fabric. How to I send a payment order(pdf/file) to the receiver automatically?
If I have someone who wants a file, what can I use to return this? In my case, it's an xml file that I would like to return from a facility's computer
@anand.balagopalan Yes, multiple participants can make transactions at the same time. The identity card that you issued to each participant will be stored in the wallet, which is kept in the browser. What identity card you choose to use as default will not affect the setting on the server. Different browsers will keep wallet information differently. You can use different identities on the same machine at the same time on different browsers, say chrome, firefox, safari, and brave.
@anand.balagopalan Yes, multiple participants can make transactions at the same time. The identity card that you issued to each participant will be stored in the wallet, which is kept in the browser. Which identity card you choose to use as default will not affect the setting on the server. Different browsers will keep wallet information differently. You can use different identities on the same machine at the same time on different browsers, say chrome, firefox, safari, and brave. You will certainly be able to perform multiple transactions with different identities on different machines simultaneously.
@anand.balagopalan Yes, multiple participants can make transactions at the same time. The identity card that you issued to each participant will be stored in the wallet, which is kept in the browser of the client. Which identity card you choose to use as default will not affect the setting on the server. Different browsers will keep wallet information differently. You can use different identities on the same machine at the same time on different browsers, say chrome, firefox, safari, and brave. You will certainly be able to perform multiple transactions with different identities on different machines simultaneously.
@anand.balagopalan Yes, multiple participants can make transactions at the same time. The identity card that you issued to each participant will be stored in the wallet, which is kept in the browser of the client. Which identity card you choose to use as default will not affect the setting on the server. Different browsers will keep wallet information differently. You can use different identities on the same machine at the same time on different browsers, say chrome, firefox, safari, and brave. You will certainly be able to perform multiple transactions with different identities on different machines simultaneously. In the beginning, always try to launch composer-rest-server with admin card, which simplifies things a lot. You may find that the card you choose to host the server is not necessarily the card your clients are allowed to be using.
@anand.balagopalan Yes, multiple participants can make transactions at the same time. The identity card that you issued to each participant will be stored in the wallet, which is kept in the browser of the client. Which identity card you choose to use as default will not affect the setting on the server. Different browsers will keep wallet information differently. You can use different identities on the same machine at the same time on different browsers, say chrome, firefox, safari, and brave. You will certainly be able to perform multiple transactions with different identities on different machines simultaneously. In the beginning, always try to launch composer-rest-server with admin card, which simplifies things a lot. You may find that the card you choose to host the server is not necessarily the card your clients are allowed to be using in their wallets.
@anand.balagopalan Yes, multiple participants can make transactions at the same time. The identity card that you issued to each participant will be stored in the wallet, which is kept in the browser of the client. Which identity card your client choose to use as default will not affect the setting on the server. Different browsers will keep wallet information differently. You can use different identities on the same machine at the same time on different browsers, say chrome, firefox, safari, and brave. You will certainly be able to perform multiple transactions with different identities on different machines simultaneously. In the beginning, always try to launch composer-rest-server with admin card, which simplifies things a lot. You may find that the card you choose to host the server is not necessarily the card your clients are allowed to be using in their wallets.
@anand.balagopalan Yes, multiple participants can make transactions at the same time. The identity card that you issued to each participant will be stored in the wallet, which is kept in the browser of the client. Which identity card your client choose to use as default will not affect the settings on the server. Different browsers will keep wallet information differently. You can use different identities on the same machine at the same time on different browsers, say chrome, firefox, safari, and brave. You will certainly be able to perform multiple transactions with different identities on different machines simultaneously. In the beginning, always try to launch composer-rest-server with admin card, which simplifies things a lot. You may find that the card you choose to host the server is not necessarily the card your clients are allowed to be using in their wallets.
@anand.balagopalan Yes, multiple participants can make transactions at the same time. The identity card that you issued to each participant will be stored in the wallet, which is kept in the browser of the client. Which identity card your client choose to use as default will not affect the settings on the server. Different browsers will keep wallet information differently. One can use different identities on the same machine at the same time on different browsers, say chrome, firefox, safari, and brave. You will certainly be able to perform multiple transactions with different identities on different machines simultaneously. In the beginning, always try to launch composer-rest-server with admin card, which simplifies things a lot. You may find that the card you choose to host the server is not necessarily the card your clients are allowed to be using in their wallets.
@anand.balagopalan Yes, multiple participants can make transactions at the same time. The identity card that you issued to each participant will be stored in the wallet, which is kept in the browser of the client. Which identity card your client choose to use as default will not affect the settings on the server. Different browsers will keep wallet information differently. One can use different identities on the same machine at the same time on different browsers, say chrome, firefox, safari, and brave. It is certianly viable to perform multiple transactions with different identities on different machines simultaneously. In the beginning, always try to launch composer-rest-server with admin card, which simplifies things a lot. You may find that the card you choose to host the server is not necessarily the card your clients are allowed to be using in their wallets.
[ ](https://chat.hyperledger.org/channel/composer?msg=steWp9QniFawykciM) @anand.balagopalan In a 'live' situation, each user would have a separate Google (or GitHub or LDAP) login and a separate card. Each separate Google ID will have a separate wallet with their own default card. When testing it is good to have 2 Google IDs and 2 separate Browsers.
[ ](https://chat.hyperledger.org/channel/composer?msg=cqrM2R2DjgLiPTGGK) @KaushalKedilaya best to look at options/discussion described in the answer of this [Stack Overflow](https://stackoverflow.com/questions/50401957/best-practice-to-save-files-in-blockchain) - [IPFS](https://medium.com/@mycoralhealth/learn-to-securely-share-files-on-the-blockchain-with-ipfs-219ee47df54c) may be one such option.
[ ](https://chat.hyperledger.org/channel/composer?msg=9GdWNTGiTMa8vEYwg) Any help appreciated. Some reference links?
I already know this reference: https://hyperledger.github.io/composer/v0.19/applications/node.html
@prasanths96 the article you're using is old (v0.17). You can't use FileSystemCardStore class now (no longer used) to instantiate. Use BusinessNetworkCardStore - default is filesystem card store - see this code sample (item 3 in the table) -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#card-api-errors--resolutions
@davidkel This is regarding logging in composer chaincode. I tried to use a logging library like log4js, and then tried to introduce its dependency in the composer .js transaction function implementations. But it gives error on instantiating (composer network start): Response from attempted peer comms was an error: Error: transaction returned with failure: ReferenceError: *require is not defined*
can we not introduce dependency of other npm/node libraries in composer chaincode?
@gauravgiri - logging is via Winston - see the docs -> https://hyperledger.github.io/composer/latest/problems/diagnostics - in particular the chaincode container section - for options of what level to set. You can't use requires in transaction functions.
[ ](https://chat.hyperledger.org/channel/composer?msg=mytJZCeQFazJCGPFR) @mahoney1 so does it imply we can't use logging library winston or log4js in transaction functions, as we can't use require? then do we use only console.log in transaction functions?
@gauravgiri Composer uses the Winston logging module by default (internally, Hyperledger Composer uses the Winston node.js logging package) - so you direct the logger via the config settings in Composer as described, as to what you want to log (via logger) . Not tried using `logger` direct myself.
@gauravgiri Composer uses the Winston logging module by default (internally, Hyperledger Composer uses the Winston node.js logging package) - so you direct the logger via the config settings in Composer as described, as to what you want to log (via logger) - you would do the same if you were using/setting config settings with Winston direct. Not tried using `logger` directly inside the TP myself.
i am testing a simple project over composer-playground on mybluemix.net, everithing is cool, so, is there any way to test through rest api on mybluemix.net?? 'case my setup have some troubles right now, so, i'm testing with online tool *composer-playground.mybluemix.net* , and i'm searching a suitable way to test using restful api online
i am testing a simple project over composer-playground on mybluemix.net, everithing is cool, so, is there any way to test through rest api on mybluemix.net?? 'cause my setup have some troubles right now, so, i'm testing with online tool *composer-playground.mybluemix.net* , and i'm searching a suitable way to test using restful api online
wher i can see block list created in composer
where i can see block list created in composer ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ycG6BHcPYYNrE7iMW) @JesusAndresCabrera There is no online REST API test facility - just 'local' installs.
[ ](https://chat.hyperledger.org/channel/composer?msg=wEg6NM9GSRNJzoCDa) @satyajitdeshmukh There is no direct facility in Composer to see the Blocks on the Fabric. You can use the Blockchain Explorer to view the Blocks on the Fabric in a friendly Browser interface: https://github.com/hyperledger/blockchain-explorer
[ ](https://chat.hyperledger.org/channel/composer?msg=zxGRg6XeyAoSx6Fyq) @rthatcher i was thinking about it, so, rightnow i'm preparing a virtual machine to test in a clean setup
[ ](https://chat.hyperledger.org/channel/composer?msg=aaprEYeBuea589Koy) @rthatcher its for postgress DB .. i am using default couch DB :(
[ ](https://chat.hyperledger.org/channel/composer?msg=MtWNteNbE2Wi6WfZ3) @satyajitdeshmukh - It should be OK. I assume that you are using CouchDB as the State database for Fabric. Blockchain Explorer uses postgres to store some data it needs quite separately from the Fabric.
A bit off-topic, but the docs at https://hyperledger.github.io/composer/latest/ aren't much friendly with chrome. The scrollbar for the topics at the left isn't present, which makes it difficult to navigate. Works great on firefox though
Has joined the channel.
Hello, I'm using yeoman Hyperledger Composer with Loopback. At the beginning models are autodiscovered from my business network. How I can launch model discover after changes in my network, when Loopback app is already set up (I don't want to generate it once again from scratch to discover models)?
Has joined the channel.
Hello, i am trying to configure 2 channels in one network. but i am facing with many errors, can somebody share me the method to do a communication between 2 channels using hyperledger composer?
Has joined the channel.
@david-kim-tpe @rthatcher Thanks a lot guys... I understand the concept better now...
[ ](https://chat.hyperledger.org/channel/composer?msg=AjPFbfMKhWZRkLsjN) @rthatcher ok i will try blockchain-explorer and see if it works for me or not...thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=47k9SxPtMSGrRCQJS) @mahoney1 Oh. Thanks for clarifying :). It's hard to identify / find samples with latest version.
Has joined the channel.
Hai,
How does composer support multi channels in fabric?
If there are multi channels, these channels should be configered in connection profiles.
But in which step, the business network is related to certain channel?
[ ](https://chat.hyperledger.org/channel/composer?msg=94LvceYhDuAatYRqh) @mahoney1 Instead of using yo command to generate frontend what else can I do? How to I create UI and connect with DB? I'm not getting the connection flow
[ ](https://chat.hyperledger.org/channel/composer?msg=94LvceYhDuAatYRqh) @mahoney1 Thank you
I have an app developed in composer playground. How do I create my own customized UI and connect it with the app and blockchain?
[ ](https://chat.hyperledger.org/channel/composer?msg=9F2MuxQjBvziYDWYp) @KaushalKedilaya https://hyperledger.github.io/composer/latest/applications/web.html
[ ](https://chat.hyperledger.org/channel/composer?msg=ezCmsqcvoQKHrHfRF) @waleed ok thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=T3GSzbExj4Xw5dj2P) @darapich92 I don't think I understand your scenario completely, but from " _2 channels in one network._ " - let me try ...
A Composer Business Network runs on a single channel. You can run the same network in 2 channels, but they remain separate.
A Composer Business Network Card connects to only one channel.
It is possible to connect to a 2nd Business Network (in the same channel, or a different channel) from a transaction processing function, using the *getNativeAPI* function, and there is a tutorial on how to achieve this: https://hyperledger.github.io/composer/latest/tutorials/invoke-composer-network.html
[ ](https://chat.hyperledger.org/channel/composer?msg=z7pKTdZ5XZHPBb4h4) @KubaW The REST server does not dynamically discover changes to the Business network, it needs to be restarted to re-discover the network including the changes.
hi All, i am following this tutorial for multi-org setup: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
in step 17 (composer network start ....) i am getting the below error
```
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 4 Peers. Last error was Error: Error: Failed to connect before the deadline
Command failed
```
what am i doing wrong here?
hi All, i am following this tutorial for multi-org setup: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
in step 17 (composer network start ....) i am getting the below error
```
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 4 Peers. Last error was Error: Error: Failed to connect before the deadline
Command failed
```
how can i fix this?
[ ](https://chat.hyperledger.org/channel/composer?msg=YhC7tZwTEWYFLjcdL) i also got this error once
[ ](https://chat.hyperledger.org/channel/composer?msg=YhC7tZwTEWYFLjcdL) i also got this error once
```
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Response from attempted peer comms was an error: Error: failed to execute transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e: timeout expired while starting chaincode p2p-process-network:0.0.2-deploy.718 for transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e
Response from attempted peer comms was an error: Error: failed to execute transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e: timeout expired while starting chaincode p2p-process-network:0.0.2-deploy.718 for transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e
Response from attempted peer comms was an error: Error: failed to execute transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e: timeout expired while starting chaincode p2p-process-network:0.0.2-deploy.718 for transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=YhC7tZwTEWYFLjcdL) i also got this error once
```
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Response from attempted peer comms was an error: Error: failed to execute transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e: timeout expired while starting chaincode for transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e
Response from attempted peer comms was an error: Error: failed to execute transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e: timeout expired while starting chaincode for transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e
Response from attempted peer comms was an error: Error: failed to execute transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e: timeout expired while starting chaincode for transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=YhC7tZwTEWYFLjcdL) i also got this error once
```
Processing these Network Admins:
userName: alice
userName: bob
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Response from attempted peer comms was an error: Error: failed to execute transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e: timeout expired while starting chaincode for transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e
Response from attempted peer comms was an error: Error: failed to execute transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e: timeout expired while starting chaincode for transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e
Response from attempted peer comms was an error: Error: failed to execute transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e: timeout expired while starting chaincode for transaction 2dbcdc3e5315196995e9dd0d49745a5b277bf09796bb42296a387d38ca03692e
Command failed
```
@anaswar can you post the output of `docker ps` and `composer -v` ? These errors occur for (at least) 2 reasons: 1. The build of the chaincode container did not complete before the timeout expired 2. There was a problem building the container due to a network connection error - usually a failure to install an npm module. You can check the output. Both these problems are discussed with solutions on Stack Overflow, and documented in the Composer Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#startissues & https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#cinstallissues - did you check that the BYFN sequence completed successfully too?
@mahoney1 yes the BYFN sequence was success.
```
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ba47622477a1 dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab "chaincode -peer.add…" 2 hours ago Up 2 hours dev-peer1.org2.example.com-mycc-1.0
e57c46ab31ff dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b "chaincode -peer.add…" 2 hours ago Up 2 hours dev-peer0.org2.example.com-mycc-1.0
da21af1ee026 hyperledger/fabric-tools:latest "/bin/bash" 2 hours ago Up 2 hours cli
0f18122283df hyperledger/fabric-peer:latest "peer node start" 2 hours ago Up 2 hours 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
1d7b817da51d hyperledger/fabric-peer:latest "peer node start" 2 hours ago Up 2 hours 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
cf5b7916a0a1 hyperledger/fabric-peer:latest "peer node start" 2 hours ago Up 2 hours 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
6069ce4e1f45 hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
91a6d29a9f1c hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
97575215541e hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 hours ago Up 2 hours 0.0.0.0:7054->7054/tcp ca_peerOrg1
fe0e9afb59ff hyperledger/fabric-orderer:latest "orderer" 2 hours ago Up 2 hours 0.0.0.0:7050->7050/tcp orderer.example.com
a79c96bfa199 hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
d8c11b7ece76 hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 hours ago Up 2 hours 0.0.0.0:8054->7054/tcp ca_peerOrg2
34464b584e8a hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
```
```
$ composer -v
*v0.20.1*
```
@mahoney1 yes the BYFN sequence was success.
```
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ba47622477a1 dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab "chaincode -peer.add…" 2 hours ago Up 2 hours dev-peer1.org2.example.com-mycc-1.0
e57c46ab31ff dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b "chaincode -peer.add…" 2 hours ago Up 2 hours dev-peer0.org2.example.com-mycc-1.0
da21af1ee026 hyperledger/fabric-tools:latest "/bin/bash" 2 hours ago Up 2 hours cli
0f18122283df hyperledger/fabric-peer:latest "peer node start" 2 hours ago Up 2 hours 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
1d7b817da51d hyperledger/fabric-peer:latest "peer node start" 2 hours ago Up 2 hours 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
cf5b7916a0a1 hyperledger/fabric-peer:latest "peer node start" 2 hours ago Up 2 hours 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
6069ce4e1f45 hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
91a6d29a9f1c hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
97575215541e hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 hours ago Up 2 hours 0.0.0.0:7054->7054/tcp ca_peerOrg1
fe0e9afb59ff hyperledger/fabric-orderer:latest "orderer" 2 hours ago Up 2 hours 0.0.0.0:7050->7050/tcp orderer.example.com
a79c96bfa199 hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
d8c11b7ece76 hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 hours ago Up 2 hours 0.0.0.0:8054->7054/tcp ca_peerOrg2
34464b584e8a hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
```
```
$ composer -v
v0.20.1
```
@anaswar did you do the required `composer network install` steps, with the actual correct card for Org 2 ? Eg `PeerAdmin@byfn-network-org2` 's card. I suspect you've got a config error somewhere along the way - the missing `dev-peer_*x*_-org1.example.com-mycc` containers show the latter containers failed to start and the EOF errors point to some kind of config error. Also - the multi-org tutorial is meant to run with Fabric 1.2.1 (latest is 1.3 - albeit it should in theory work ok too).
@anaswar did you do the required `composer network install` steps, with the actual correct card for Org 1 ? Eg `PeerAdmin@byfn-network-org1` 's card. I suspect you've got a config error somewhere along the way - the missing `dev-peer_*x*_-org1.example.com-mycc` containers show the latter Org1's containers failed to start and the EOF errors point to some kind of config error. Also - the multi-org tutorial is meant to run with Fabric 1.2.1 (latest is 1.3 - albeit it should in theory work ok too).
i cleaned up everything and started again from teh beginning... re-ran the BYFN script and now docker ps gives,
```
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1c401cc46885 dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab "chaincode -peer.add…" About a minute ago Up About a minute dev-peer1.org2.example.com-mycc-1.0
907dadb10562 dev-peer0.org1.example.com-mycc-1.0-384f11f484b9302df90b453200cfb25174305fce8f53f4e94d45ee3b6cab0ce9 "chaincode -peer.add…" About a minute ago Up About a minute dev-peer0.org1.example.com-mycc-1.0
6bf6617cf8e9 dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b "chaincode -peer.add…" About a minute ago Up About a minute dev-peer0.org2.example.com-mycc-1.0
5ba438f95110 hyperledger/fabric-tools:latest "/bin/bash" 2 minutes ago Up 2 minutes cli
3c56d70e66aa hyperledger/fabric-peer:latest "peer node start" 2 minutes ago Up 2 minutes 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
a011ebe3f5f9 hyperledger/fabric-peer:latest "peer node start" 2 minutes ago Up 2 minutes 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
79c0b5fd9b3e hyperledger/fabric-peer:latest "peer node start" 2 minutes ago Up 2 minutes 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
058ca9b3bad2 hyperledger/fabric-peer:latest "peer node start" 2 minutes ago Up 2 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
f1e54e588762 hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 minutes ago Up 2 minutes 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
fcec66358513 hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 minutes ago Up 2 minutes 0.0.0.0:8054->7054/tcp ca_peerOrg2
cf6bf1073fc9 hyperledger/fabric-orderer:latest "orderer" 2 minutes ago Up 2 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
18cb836a320a hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 minutes ago Up 2 minutes 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
cccdb1c06f05 hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 minutes ago Up 2 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
498db73ea05b hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 minutes ago Up 2 minutes 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
ad2cc1df7d00 hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 minutes ago Up 2 minutes 0.0.0.0:7054->7054/tcp ca_peerOrg1
```
shouldn't there be a `dev-peer1.org1.example.com-mycc` container which seems to be missing??
@mahoney1 I cleaned up everything and started again from the beginning... re-ran the BYFN script and now docker ps gives,
```
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1c401cc46885 dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab "chaincode -peer.add…" About a minute ago Up About a minute dev-peer1.org2.example.com-mycc-1.0
907dadb10562 dev-peer0.org1.example.com-mycc-1.0-384f11f484b9302df90b453200cfb25174305fce8f53f4e94d45ee3b6cab0ce9 "chaincode -peer.add…" About a minute ago Up About a minute dev-peer0.org1.example.com-mycc-1.0
6bf6617cf8e9 dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b "chaincode -peer.add…" About a minute ago Up About a minute dev-peer0.org2.example.com-mycc-1.0
5ba438f95110 hyperledger/fabric-tools:latest "/bin/bash" 2 minutes ago Up 2 minutes cli
3c56d70e66aa hyperledger/fabric-peer:latest "peer node start" 2 minutes ago Up 2 minutes 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com
a011ebe3f5f9 hyperledger/fabric-peer:latest "peer node start" 2 minutes ago Up 2 minutes 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com
79c0b5fd9b3e hyperledger/fabric-peer:latest "peer node start" 2 minutes ago Up 2 minutes 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com
058ca9b3bad2 hyperledger/fabric-peer:latest "peer node start" 2 minutes ago Up 2 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
f1e54e588762 hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 minutes ago Up 2 minutes 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
fcec66358513 hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 minutes ago Up 2 minutes 0.0.0.0:8054->7054/tcp ca_peerOrg2
cf6bf1073fc9 hyperledger/fabric-orderer:latest "orderer" 2 minutes ago Up 2 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
18cb836a320a hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 minutes ago Up 2 minutes 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
cccdb1c06f05 hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 minutes ago Up 2 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
498db73ea05b hyperledger/fabric-couchdb "tini -- /docker-ent…" 2 minutes ago Up 2 minutes 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
ad2cc1df7d00 hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 2 minutes ago Up 2 minutes 0.0.0.0:7054->7054/tcp ca_peerOrg1
```
shouldn't there be a `dev-peer1.org1.example.com-mycc` container which seems to be missing??
[ ](https://chat.hyperledger.org/channel/composer?msg=2dJjvRn2A7TGcm3GE) @rthatcher @rthatcher thank you very much for your answer. i understand what you explained. i have a question related to tutorial of hyperledger composer. i am trying to find the chaincode that installed on peer because i want to see the process of endorsement. could you correct me if i am wrong, that chaincode is store in docker container?
Hi all, is there a way to auto generate an API library from hyperledger rest server in lets say JAVA?
Has joined the channel.
@anaswar yes. you might try pinging the business network and rechecking `docker ps` to see if it comes up
I will ask again to be more precise. I have implemented and deployed a Business network model using composer. its working perfectly. i have created an angular client and everything is fine. i want to implement an android client with the least effort. is there a way to auto generate a java api library from composer rest server automatically? thank you for you help.
@rthatcher Hi I am following this tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial and now i want to create login page to restrict the access to Network can you please help me how to do this?
@rthatcher Hi I am following this tutorial https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial and now i want to create login page to restrict the access to Network can you please help me how to do this? @waleed
[ ](https://chat.hyperledger.org/channel/composer?msg=hr8A5uTnioaxHMydH) @sureshtedla take a look here https://github.com/4eyes/hyperledger-fabric-composer-snack-shop
this a web shop based on fabric / composer and it works with authentication.
Clipboard - November 15, 2018 4:12 PM
Clipboard - November 15, 2018 4:12 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=hr8A5uTnioaxHMydH) @sureshtedla and this is how login works
[ ](https://chat.hyperledger.org/channel/composer?msg=3hB4FujgE8ZsYL55j) @waleed Thank you waleed @waleed i will check out that code
[ ](https://chat.hyperledger.org/channel/composer?msg=bXocHPnmy6vXQYjLB) @rrishmawi perhaps from Swagger, as you mention the REST server? This may help (indeed you may already have seen) -> https://stackoverflow.com/questions/33354557/how-to-generate-java-client-code-for-swagger-rest-api-documentation
Has joined the channel.
Clipboard - November 16, 2018 3:19 AM
Good day team, Glad to be in this forum, relatively green wth hyperledger, getting acquainted well though, I am habing abit of a challenge whilst setting up tutorial network .0.0.2.bna. I keep receiving the above error: would some assist me identify where i could be missing something...thanks.
Hai, for example, org A has two peers,then can composer recognize one peer is down, and then perform the query on another peer in stead?
Hai, for example, org A has two peers,then can composer recognize one peer is down, and then perform the query on another peer in stead? in v0.19
[ ](https://chat.hyperledger.org/channel/composer?msg=h5uisHowq4u3HY3WZ) @Awesam Hi, can you get inside the container and check if the chaincode is available?
Find the name of the cli container : docker ps
Get inside container by : docker exec -it name_of_cli_container bash
Go to this location inside container : /var/hyperledger/production/chaincodes and check for your installed chaincode, something similar to "nameOfTheChaincode.version"
If theres no such chaincode, then you have to try to install it again. Else, it could be a problem with composer version. Try upgrading the cli to 0.20.
Send me a private message if you need more help.
[ ](https://chat.hyperledger.org/channel/composer?msg=Y9WYEwBBfuPEdvQRZ) @touchingsoil Hi, in composer, for querying, you will only specify the business-network details and registry details (fundamentally) for querying. We wont give any peer details. So, yes, I think composer will take care of such incidents.
@mahoney1 Please correct me if I am wrong. :)
[ ](https://chat.hyperledger.org/channel/composer?msg=Y9WYEwBBfuPEdvQRZ) @touchingsoil Hi, in composer, for querying, you will only specify the business-network details and registry details (fundamentally) for querying. We wont give any peer details. So, yes, I think composer will take care of such incidents. In fact, the business-network card will have connection profile, which will have all the peer details.
@mahoney1 Please correct me if I am wrong. :)
Has joined the channel.
Good day all. Got a question around the future of composer. Is it recommended to on-board enterprise solutions using composer given that the future state support is unclear at the moment. Referring to the Simon Stone's post https://lists.hyperledger.org/g/composer/topic/25106848#125. It appears that some people are already affected, especially around the REST API generation. Is it recommended to continue with composer or rather move over to the SDKs
Has joined the channel.
vb:~/fabric-dev-servers/tutorial-network$ *composer network install --card PeerAdmin@byfn-network-org1 --archiveFile tutorial-network@0.0.1.bna*
⠙ Installing business network. This may take a minute...E1116 14:14:40.402748442 7890 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E1116 14:14:40.403564288 7890 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E1116 14:14:40.404429948 7890 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
⠸ Installing business network. This may take a minute...E1116 14:14:40.521786255 7890 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
any suggestions please??
[ ](https://chat.hyperledger.org/channel/composer?msg=h5uisHowq4u3HY3WZ) @Awesam - Have you restarted your computer and re-run the startFabric.sh script? This script deletes and re-creates a new 'empty' Fabric.
https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
will try that out
[ ](https://chat.hyperledger.org/channel/composer?msg=E5W9EAvvXmmidQA3Z) @BernardDK Composer is the fastest way to getting a Demo/Prototype or even a PoC in place, so it has some value for the enterprise customer. However it is not recommended for any new production deployments, or long term projects.
Hi, I'm caught with the following error today: "Http failure response for http://localhost:4200/api/wallet: 404 Not Found"
I generated a angular application by using generator-hyperledger-composer -v6.4.1. Launched it using "npm start" command "ng serve --proxy-config proxy.conf.js --host 0.0.0.0" The proxy had been set to return http://localhost:3000 for "/auth" and "/api". I'm wondering why this proxy setting is not working while it seems to be a default setting.
Hi, I'm caught with the following error today: "Http failure response for http://localhost:4200/api/wallet: 404 Not Found"
I generated an angular application by using generator-hyperledger-composer v6.4.1. Launched the web app using "npm start" command "ng serve --proxy-config proxy.conf.js --host 0.0.0.0" The proxy had been set to return http://localhost:3000 for "/auth" and "/api". I'm wondering why this proxy setting is not working while it seems to be a default setting.
@mahoney1 Thanks for the quick response, but may I ask why? I didn't use namespaces and it was doing fine before.
Hi, I'm caught with the following error today: "Http failure response for http://localhost:4200/api/wallet: 404 Not Found"
I generated an angular application by using generator-hyperledger-composer v6.4.1. Launched the web app using "npm start" command "ng serve --proxy-config proxy.conf.js --host 0.0.0.0" The proxy had been set to return http://localhost:3000 for "/auth" and "/api". I'm wondering why this proxy setting is not working while it seems to be a default setting.
@david-kim-tpe think you might need to use 'Namespaces are used" when you generate the APIs / start the rest server.
Hi, I'm caught with the following error today: "Http failure response for http://localhost:4200/api/wallet: 404 Not Found"
I generated an angular application by using generator-hyperledger-composer v6.4.1. Launched the web app using "npm start" command "ng serve --proxy-config proxy.conf.js --host 0.0.0.0" The proxy had been set to return http://localhost:3000 for "/auth" and "/api". I'm wondering why this proxy setting is not working while it seems to be a default setting.
@mahoney1 Thanks for the quick response, but may I ask why? I didn't use namespaces and it was doing fine before.
@david-kim-tpe because it had a routing issue to the resource (api/wallet), though it can work (depending on choices) without too. I notice you're trying (I assume) to use multi-user in the app - the angular generator AFAIK only works with a rest server, that doesn't use authentication or multi-user mode. Also see the answers give here -> https://stackoverflow.com/questions/50339832/hyperledger-angular-app-error-message-could-not-find-api-route/50810262#50810262 - without knowing your custom setup, environment etc.
@david-kim-tpe because it had a routing issue to the resource (api/wallet), though it can work (depending on choices) without too. I notice you're trying (I assume) to use multi-user in the app - the angular generator AFAIK only works with a rest server, that doesn't use authentication or multi-user mode. Also see the answers given here -> https://stackoverflow.com/questions/50339832/hyperledger-angular-app-error-message-could-not-find-api-route/50810262#50810262 - without knowing your custom setup, environment etc.
@vanipolnedi sounds like either: The certificate you use for the CA configuration is not actually the correct certificate to use. If you used `cryptogen` to generate your certificates then there will be `tls` folders for your organisation(s) which will contain the public certificate you need to put into the connection profile (for the Peer Admin trying to do the install). Also you can check if its http / https in the URL for the CA server, but more likely to be the former.
@touchingsoil yes, your query definition is querying a registry resource, with/without criteria etc. The business network card, used by the querying participant, is what determines which peer (because the card contains a connection profile and therein, peer definitions)
@mahoney1 after replacing https with http ,
@mahoney1 after replacing https with http ...error is : -vb:~/fabric-dev-servers/tutorial-network$ composer network install --card PeerAdmin@byfn-network-org1 --archiveFile tutorial-network@0.0.2.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Command failed
@vanipolnedi can you post the output of `docker ps`
@mahoney1 : vb:~/fabric-dev-servers/tutorial-network$ docker ps
CONTAINER ID IMAGE COMMAN D CREATED STATUS PORTS NAMES
4f8bd2cbc8e6 dev-peer1.org2.example.com-mycc-1.0-26c2ef32838554aac4f7ad6f100aca865e87959c9a126e86d764c8d01f8346ab "chain code -peer.add…" 5 minutes ago Up 5 minutes dev-peer1.org2.exam ple.com-mycc-1.0
d8cef76889c8 dev-peer0.org1.example.com-mycc-1.0-384f11f484b9302df90b453200cfb25174305fce8f53f4e94d45ee3b6cab0ce9 "chain code -peer.add…" 6 minutes ago Up 6 minutes dev-peer0.org1.exam ple.com-mycc-1.0
6382cd8c6e52 dev-peer0.org2.example.com-mycc-1.0-15b571b3ce849066b7ec74497da3b27e54e0df1345daff3951b94245ce09c42b "chain code -peer.add…" 6 minutes ago Up 6 minutes dev-peer0.org2.exam ple.com-mycc-1.0
2033c9a40c0b hyperledger/fabric-tools "/bin/ bash -c './scr…" 7 minutes ago Up 7 minutes cli
9fcc701b2a1e hyperledger/fabric-peer "peer node start" 7 minutes ago Up 7 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example. com
5688bd0131c5 hyperledger/fabric-peer "peer node start" 7 minutes ago Up 7 minutes 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example. com
9950756fc32f hyperledger/fabric-peer "peer node start" 7 minutes ago Up 7 minutes 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example. com
df72bd9d2fb0 hyperledger/fabric-peer "peer node start" 7 minutes ago Up 7 minutes 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example. com
18d77cc419db hyperledger/fabric-couchdb "tini -- /docker-ent…" 7 minutes ago Up 7 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb0
36a73141b81a hyperledger/fabric-couchdb "tini -- /docker-ent…" 7 minutes ago Up 7 minutes 4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp couchdb2
174a37baf169 hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 7 minutes ago Up 7 minutes 0.0.0.0:8054->7054/tcp ca_peerOrg2
513c68724457 hyperledger/fabric-orderer "order er" 7 minutes ago Up 7 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
d596995b212b hyperledger/fabric-couchdb "tini -- /docker-ent…" 7 minutes ago Up 7 minutes 4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp couchdb1
c1696523ef3e hyperledger/fabric-ca "sh -c 'fabric-ca-se…" 7 minutes ago Up 7 minutes 0.0.0.0:7054->7054/tcp ca_peerOrg1
da63bb3b2a3f hyperledger/fabric-couchdb "tini -- /docker-ent…" 7 minutes ago Up 7 minutes 4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp couchdb3
docker.png
Has joined the channel.
@mahoney1 and the error is : -vb:~/fabric-dev-servers/tutorial-network$ composer network install --card PeerAdmin@byfn-network-org1 --archiveFile t utorial-network@0.0.2.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Command failed
what is your composer version `composer -v`
you should follow this tutorial -> https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org carefully, as it works if followed carefully. The error suggests there is a configuration error in your connection profile either http/https or grpc / grpcs is misconfigured -> https://stackoverflow.com/questions/51401274/composer-network-install-command-gives-error-as-error-14-unavailable-eof?rq=1
@mahoney1 composer version : v0.19.18
Has joined the channel.
@vanipolnedi - that's the problem, mismatch of Composer <-> Fabric versions - the current tutorial will pull Fabric 1.2.1 (at least it should) and you would need Composer 0.20.4 for that - you need read the release notes https://github.com/hyperledger/composer/releases and see the wiki table https://github.com/hyperledger/composer/wiki (for which version is compatible with which)
@vanipolnedi - that's the problem, mismatch of Composer <-> Fabric versions - the current tutorial will pull Fabric 1.2.1 (at least it should) and you would need Composer 0.20.4 for that - you need to read the release notes https://github.com/hyperledger/composer/releases and see the wiki table https://github.com/hyperledger/composer/wiki (for which version is compatible with which)
Hi,
I am working on hyperledger composer. I had written a query file and it is working fine while I am using composer-rest-server.
Now, I want to write a Query in such a way that the either of the input fields should be optional.
If there are two fields TraderID and TRaderAddress. either of the inputs should be optional such a way that I can able to get response either with one input or two inputs.
Please help me in writing the query.
@saikumar3349 use `buildQuery` in your read-only transaction function - to build the Query (and use standard javascript to test if a value was supplied to either or both input fields -> example of buildQuery (in the runtime API) is ```const q = buildQuery("SELECT org.acme.Product WHERE ( TraderID ==
_$TraderID)");
const results = await query(q);
console.log("results are " + results); // returns all status
results.forEach(function(res){
console.log("result instance is " + res.id + " " + res.status);
}); // blah blah ```
@saikumar3349 use `buildQuery` in your read-only transaction function - to build the Query (and use standard javascript to test if a value was supplied to either or both input fields , which are optional in the transaction model) -> example of buildQuery (in the runtime API) is ```const q = buildQuery("SELECT org.acme.Product WHERE ( TraderID ==
_$TraderID)");
const results = await query(q);
console.log("results are " + results); // returns all status
results.forEach(function(res){
console.log("result instance is " + res.id + " " + res.status);
}); // blah blah ```
@saikumar3349 use `buildQuery` in your read-only transaction function - to build the Query (and use standard javascript to test if a value was supplied to either or both input fields , which are optional in the transaction model) -> example of buildQuery (in the runtime API) is ```const q = buildQuery("SELECT org.acme.Trader WHERE ( TraderID ==
_$TraderID)");
const results = await query(q);
console.log("results are " + results); // returns all status
results.forEach(function(res){
console.log("result instance is " + res.id + " " + res.status);
}); // blah blah ```
@saikumar3349 use `buildQuery` in your read-only transaction function - to build the Query (and use standard javascript to test if a value was supplied to either or both input fields , which are optional in the transaction model) -> example of buildQuery (in the Transaction fn ) is ```const q = buildQuery("SELECT org.acme.Trader WHERE ( TraderID ==
_$TraderID)");
const results = await query(q);
console.log("results are " + results); // returns all status
results.forEach(function(res){
console.log("result instance is " + res.id + " " + res.status);
}); // blah blah ```
@mahoney1 tq for the fast response
Hi all, I’m working Wirex Hyperledger on a Raspberry, no problem for Fabric setup but I don’t know if i can install Composer, any idea about that ? Thanks you
-Wirex +with
[ ](https://chat.hyperledger.org/channel/composer?msg=CbkiFmTCw7MXdBeDK) @mahoney1 @mahoney1 i'm also having same issue in querying but i have to write in queries.qry file
[ ](https://chat.hyperledger.org/channel/composer?msg=DWwqJgTf85xdtycLq) @mahoney1 i upgraded composer version to 0.20.4 but the same i'm getting same error
[ ](https://chat.hyperledger.org/channel/composer?msg=DWwqJgTf85xdtycLq) @mahoney1 i upgraded composer version to 0.20.4 but i'm getting same error
I'm using fabric 1.0.2 (and i'm forced to use this version), someone know witch composer version have I to use ? Thank you
Has joined the channel.
Hi Team, I'm trying to install the composer. Meanwhile I'm trying to install CLI tools in MAC.
"npm install -g composer-cli@0.20"
Stuck with below errors
node-pre-gyp ERR! Tried to download(403): https://storage.googleapis.com/grpc-precompiled-binaries/node/grpc/v1.10.1/node-v67-darwin-x64-unknown.tar.gz
node-pre-gyp ERR! Pre-built binaries not found for grpc@1.10.1 and node@11.1.0 (node-v67 ABI, unknown) (falling back to source compile with node-gyp)
node-pre-gyp ERR! Pre-built binaries not installable for grpc@1.10.1 and node@11.1.0 (node-v67 ABI, unknown) (falling back to source compile with node-gyp)
May I how why the access is denied to me to access.
[ ](https://chat.hyperledger.org/channel/composer?msg=nQWAnT6JZDDjkZqyt) @AkashNakka It looks like you are using Nove v11, but Composer supports Node v8.
These 2 commands should help before installing composer ...
`nvm install 8` followed by `nvm use 8`
[ ](https://chat.hyperledger.org/channel/composer?msg=D4dqP2LdnHt5Jz5XL) @Nihcep - This doc shows that you should try v0.16 - https://github.com/hyperledger/composer/wiki
and you will need to use this specific version of the documentation: https://hyperledger.github.io/composer/v0.16/introduction/introduction.html
@rthatcher Thanks you will have a look :)
@rthatcher @Nihcep Thanks for the information :)
Clipboard - November 17, 2018 3:03 AM
Hello Guys am still having a challenge around upgrading my business network to version 0.0.2. could anyone assist establish any missteps that could be resulting in the error? thanks in advance.
Hi. When running `composer card list` I get this error:
`Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html`
whilst following this error https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
whilst following this https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
And where can i find `etc/hosts/` ?
Has joined the channel.
Hi Guys, I have a question related to composer query (.qry)
In the documentation, It said that query is used a bespoke SQL query
while in another part, It said that Hyperledger Fabric runtime V1.1 uses couchDB for world state (Which is noSQL)
now deploying composer application into fabric runtime V1.1
how the query works if It is SQL and the couchdB is noSQL?
how the query works if It is SQL language and the couchdB is noSQL?
I do not have really experience in SQL, so sorry if the question seems unrealistic
......
when performing GET, POST ...etc in the generated RESTAPI, where the data is stored? in CouchDB in fabric runtime?
Has joined the channel.
hi everyone, i have a question
how can i install composer i windows?
surfing on internet tell that i can use ubuntu instruction, is that possible and cause any problem?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=CbkiFmTCw7MXdBeDK) @mahoney1 i'm also having same issue in querying but i have to write in queries.qry file and I want to get the values from the rest-server
Hi! I was wondering if it was possible to use ipfs and composer? I have to retreive a few files. On my blockchain, I have a hash and my goal is to return the files that the hash pertains to
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ttHfwPST45Y85J86B) @rthatcher Thanks mate, agree 100%. What would you recommend around API generation? Loopback?
Has joined the channel.
I'm gettting the following error while running `composer-playground`
```/usr/lib/node_modules/composer-playground/cli.js:47
(async function main() {
^^^^^^^^
SyntaxError: Unexpected token function
at createScript (vm.js:56:10)
at Object.runInThisContext (vm.js:97:10)
at Module._compile (module.js:549:28)
at Object.Module._extensions..js (module.js:586:10)
at Module.load (module.js:494:32)
at tryModuleLoad (module.js:453:12)
at Function.Module._load (module.js:445:3)
at Module.runMain (module.js:611:10)
at run (bootstrap_node.js:394:7)
at startup (bootstrap_node.js:160:9)
/usr/lib/node_modules/composer-playground/cli.js:47
(async function main() {
^^^^^^^^
SyntaxError: Unexpected token function
at createScript (vm.js:56:10)
at Object.runInThisContext (vm.js:97:10)
at Module._compile (module.js:549:28)
at Object.Module._extensions..js (module.js:586:10)
at Module.load (module.js:494:32)
at tryModuleLoad (module.js:453:12)
at Function.Module._load (module.js:445:3)
at Module.runMain (module.js:611:10)
at run (bootstrap_node.js:394:7)
at startup (bootstrap_node.js:160:9)
/usr/lib/node_modules/composer-playground/cli.js:47
(async function main() {
^^^^^^^^
SyntaxError: Unexpected token function
at createScript (vm.js:56:10)
at Object.runInThisContext (vm.js:97:10)
at Module._compile (module.js:549:28)
at Object.Module._extensions..js (module.js:586:10)
at Module.load (module.js:494:32)
at tryModuleLoad (module.js:453:12)
at Function.Module._load (module.js:445:3)
at Module.runMain (module.js:611:10)
at run (bootstrap_node.js:394:7)
at startup (bootstrap_node.js:160:9)
/usr/lib/node_modules/composer-playground/cli.js:47
(async function main() {
^^^^^^^^
SyntaxError: Unexpected token function
at createScript (vm.js:56:10)
at Object.runInThisContext (vm.js:97:10)
at Module._compile (module.js:549:28)
at Object.Module._extensions..js (module.js:586:10)
at Module.load (module.js:494:32)
at tryModuleLoad (module.js:453:12)
at Function.Module._load (module.js:445:3)
at Module.runMain (module.js:611:10)
at run (bootstrap_node.js:394:7)
at startup (bootstrap_node.js:160:9)
```
$ composer-playground
/usr/lib/node_modules/composer-playground/cli.js:47
(async function main() {
^^^^^^^^
SyntaxError: Unexpected token function
at createScript (vm.js:56:10)
at Object.runInThisContext (vm.js:97:10)
at Module._compile (module.js:549:28)
at Object.Module._extensions..js (module.js:586:10)
at Module.load (module.js:494:32)
at tryModuleLoad (module.js:453:12)
at Function.Module._load (module.js:445:3)
at Module.runMain (module.js:611:10)
at run (bootstrap_node.js:394:7)
at startup (bootstrap_node.js:160:9)
Im running Ubuntu 14.04 and have started the other two commands (ref. the edx courseware)
Inside the fabric-tools folder, start the Docker images that comprise the Hyperledger Fabric network:
./startFabric.sh
Create a Hyperledger Fabric peer administrator identity for your networks:
./createPeerAdminCard.sh
[ ](https://chat.hyperledger.org/channel/composer?msg=aLxuhE2T45HnygnqB) @balamg I am not sure about exact fix..I think recommended version is Ubuntu 16.04
Hi, get a problem while installing composer (v0.16) on a low capacity harware (raspberry pi3). `composer network start` faill with msg `Minimum memory limit allowed is 4mb`. Any idea ? Thanks you
[ ](https://chat.hyperledger.org/channel/composer?msg=PsXNC6yPNQPwaYiMF) @balamg looks like you need to check your node version ? minimum is 8.9.x see https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html - you can manage it with `nvm` fyi.
Hello guys
how can I sign a transaction with an identity's private key?
so I want to know how to retrieve the key from Cards storage in my disk and then sign the transaction with this private key
I have a hard time to find an efficient method
Is their any way to sign it in the client side?
@Nihcep see prereqs and memory requirements -> https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html
[ ](https://chat.hyperledger.org/channel/composer?msg=zeCKGSRjSBfNhrCeh) @brianpesy yes - see storage options -> https://stackoverflow.com/questions/50401957/best-practice-to-save-files-in-blockchain - eg. storing a hash as a string on an asset in your model etc etc and you can retrieve via IPFS client search etc - lastly see this [announce](https://lists.hyperledger.org/g/composer/message/125) for current status of Composer FYI
[ ](https://chat.hyperledger.org/channel/composer?msg=bBDBqJHAuhvDR9J8d) @mahoney1 Thank you that worked with me. using restlet studio.
Is it possible to write optional parameter queries in query.qry file and get the result from rest-server
@saikumar3349 no, not for a query endpoint, but you could call a read-only transaction that builds a query, based on optional inputs see https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions and as demonstrated [here previously](https://chat.hyperledger.org/channel/composer?msg=CbkiFmTCw7MXdBeDK)
@saikumar3349 no, not for a query endpoint, but you could call a read-only transaction that builds a query, based on optional inputs see https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions and as demonstrated [here previously](chat.hyperledger.org/channel/composer?msg=CbkiFmTCw7MXdBeDK)
@saikumar3349 no, not for a query endpoint, but you could call a read-only transaction that builds a query, based on optional inputs see https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions and as demonstrated here previously --> chat.hyperledger.org/channel/composer?msg=CbkiFmTCw7MXdBeDK
@saikumar3349 no, not for a query endpoint based on a named query in `queries,qry` etc, but you could call a read-only transaction that builds a query, based on optional inputs see https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions and as demonstrated here previously --> chat.hyperledger.org/channel/composer?msg=CbkiFmTCw7MXdBeDK
@saikumar3349 no, not for a query endpoint based on a named query in `queries.qry` etc, but you could call a read-only transaction that builds a query, based on optional inputs see https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions and as demonstrated here previously --> chat.hyperledger.org/channel/composer?msg=CbkiFmTCw7MXdBeDK
can i modify the concept Items {
o String itemNumber
o String Quantity
o String Price
o String Status default="NULL"
}
can i modify the concept Items {
o String itemNumber
o String Quantity
o String Price
o String Status default="NULL"
} once the valuse pushed to Items concept can i modify the values ? @rthatcher
can i modify the concept Items {
o String itemNumber
o String Quantity
o String Price
o String Status default="NULL"
} once the values pushed to Items concept is it possible to modify the values ? @rthatcher
can i modify the concept Items {
o String itemNumber
o String Quantity
o String Price
o String Status default="NULL"
} once the values pushed to Items concept is it possible to modify the values ? @rthatcher @waleed
[ ](https://chat.hyperledger.org/channel/composer?msg=YcLtt5yJtJ4X6Caoz) @sureshtedla yes, for a concept instance in an Asset or Participant, you can write Transactions to modify the values.
The 'Letter of Credit' and 'Bond' network samples both use concepts is you are looking for examples.
hi everyone, how can i solve this issue, please help!
`✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
`
hi everyone, how can i solve this issue, please help!
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
```
@toanhd it's usually an error in the logic.js file
@toanhd check if your Fabric is up `docker ps` - else you need to start one - see Step Four at https://hyperledger.github.io/composer/latest/installing/development-tools.html
@mahoney1 thanks
is this look good
Clipboard - November 19, 2018 10:36 PM
Has joined the channel.
hy guys
i'm having some issues working on Blockchain for Business - An Introduction to Hyperledger Technologies course in edx.org.
i always get this error: development only scrypt for hyperledger fabric control running 'createpeeradmincard.sh'
FABRIC_VERSION is unset, assuming hlfv12 FABRIC_STAT_TIMEOUT is unset assuming 15 seconds
No version of composer-cli has been detected, you need to install composer-cli at v0.20 or higher
but i did installit before so i really dont get what am i doing wrong
Clipboard - November 19, 2018 4:45 PM
you need you install composer-cli, you should've installed pre-requisites before running blockchain.
https://hyperledger.github.io/composer/latest/installing/development-tools.html
Clipboard - November 19, 2018 4:46 PM
here you go
i did it, but it's still not working
ok, then you installed it improperly
tried and tried again
how do i install it properly?
what error you get when you install composer-cli?
see the first immage
you should use node 8 version
i use node v8.12
are there another errors?
just the ones you see in the immages
when installing i only see some warnings ( the 2 you see in immages)
but wheni run ./createPeerAdminCard.sh
it sais there isn't any installation of composer-cli
i tryied almost every version of composer-cli but it always gives me this error
try this commands first
curl -O https://hyperledger.github.io/composer/latest/prereqs-ubuntu.sh
chmod u+x prereqs-ubuntu.sh
./prereqs-ubuntu.sh
then try to install composer-cli
so first uninstall?
no just run the commands on your terminal
after all run this command
npm install -g composer-cli@0.20
if you get errors then there is a problem with your ubuntu
it has to work
[ ](https://chat.hyperledger.org/channel/composer?msg=d9jieDNjKHEcqTPTA) @pol8y Please try these commands and show the results:
```
npm ls -g --depth=0
composer -v
which composer
composer card list
```
Clipboard - November 19, 2018 5:00 PM
Clipboard - November 19, 2018 5:02 PM
@toanhd looks ok. would check your business network by pinging using `composer network ping` - if your 4th container is down, could be you had a misconfig in your profile for that peer definition (peer1org1)
@toanhd looks ok. would check your business network by pinging using `composer network ping` - but your 4th business network container is down, could be you had a misconfig in your profile for that peer definition (peer1org1)
Clipboard - November 19, 2018 5:14 PM
@NursultanMakhanov that's what i get again
always the same warnings
[ ](https://chat.hyperledger.org/channel/composer?msg=XSgMKZN6cwPjrJCsX) @pol8y what is the ubuntu version?
16.04
@pol8y - I think there are a few problems with your environment:
1. The `Permission denied` error in the first screen shot suggests you do not have permissions to create a file in your own home folder which is a concern.
2. You have composer-rest-server, composer-playground and yo installed in a different location to composer-cli
3. The error with composer -v has a problem with 'async' which suggests that you have an older version of Node set as the default.
I would suggest you try the following:
a:) Run these commands
`npm uninstall -g composer-cli`
`npm uninstall composer-rest-server`
`npm uninstall composer-playground`
b:) Investigate whether you have access to your home folder, and then re-run the curl command and the 'prereqs-ubuntu' script
c:) Check your node version with `node -v` and `npm ls`
it says v6.14.4
with node -v
fabric-dev-servers@0.0.14 /home/paolo
└── (empty)
and this with npm ls command
so probably i have v6 as default
how do i force v8 as default?
@rthatcher
2. You have composer-rest-server, composer-playground and yo installed in a different location to composer-cli
yes, that's something i noticed before, but i'm not able to change it
i have to say that's one of my very first approach to ubuntu, so i'm a bit confused and disoriented
:(
[ ](https://chat.hyperledger.org/channel/composer?msg=MpnzzjcJkswicqnf3) @pol8y ` nvm use 8 `
Clipboard - November 19, 2018 5:59 PM
@rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=nzYXrf5PezoEHpBdv) @pol8y I think that `nvm` in installed by the `prereqs-ubuntu.sh` script - so you will have to fix that :-)
Would you know how to get the output of the rest server in composer and then pass on the result of a query to a shell script file?
when i tried to re connect to my network this error is occur --------->>>>>>Error: Error trying to ping. Error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '5ef6615e1ff1b60f8499a5710545ae5535dc63ee8e9b02f2f57d36da4ebc56ce', has not been registered please help me
Dear All, I am using composer v 0.19.1. I am getting the following error when I am trying to import card using Hyperledger Composer rest server. >>>> {
"error": {
"statusCode": 500,
"name": "TypeError",
"message": "First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.",
"stack": "TypeError: First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.\n at Function.Buffer.from (buffer.js:183:11)\n at LoopBackCardStore.get (/usr/lib/node_modules/composer-rest-server/lib/loopbackcardstore.js:56:33)\n at
My composer rest server showing following error message >>>> Treating unknown remoting type "file" as "any"
Potential security alert: hidden/protected properties ["userId"] are used in query.
Potential security alert: hidden/protected properties ["userId"] are used in query.
Potential security alert: hidden/protected properties ["base64","data","id","userId"] are used in query.
Potential security alert: hidden/protected properties ["userId"] are used in query.
Unhandled error for request POST /api/wallet/import?name=dp721: TypeError: First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.
at Function.Buffer.from (buffer.js:183:11)
at LoopBackCardStore.get (/usr/lib/node_modules/composer-rest-server/lib/loopbackcardstore.js:56:33)
at
Please help me to resolve the issue. I am using Fabric version 1.1.0
Thank you in advance
I am getting this to every API calls
@biksen Anyone using the composer-rest-server is advised to move to 0.19.17 or higher. A change to a third party dependency breaks all versions of the composer rest server prior to 0.19.17
@davidkel thanx! a lot. what are the composer needs to uninstall and install new version?
composer components?
cli and composer-rest-server npm will work?
@rashansamith88 you've enrolled a new identity called `admin` probably because you have used a single use only business network card file more than once. Identities can have the same common name eg `admin` or `fred` but that doesn't make it the same identity. You can search on stackoverflow for this error to see which answer is appropriate for you. Also https://github.com/hyperledger/composer-knowledge-wiki has lots of information around single use only business network card files.
I have already deployed my business network definition on v0.19.9
@biksen depends how you are using the composer-rest-server (eg CLI or Docker) but I would suggest
```
npm uninstall -g composer-cli
npm uninstall -g composer-rest-server
npm install -g composer-cli
npm install -g composer-rest-server
```
So long as the client version number (and a client includes the rest-server and the cli) is greater than or equal to the runtime version you have associated with your business network then it will still be able to work with that deployed business network
@davidkel Thanx a lot for your kind help :)
Hi guys...I really appreciate some help please
I have a question regarding the hyperledger composer
the first question: I am trying to define a rule in permission.acl in which the participant can only read his asset or perform his transaction
but the problem is that when I am trying to connect this participant to the network and allow multi REST server use
It gives me error ( Does not have a READ access right permission)
which is right because there is no access for him to the network resources at the first place
so when I also add an access for him to the network resources..It works but accessing the rest server
reveal all data of other participants
eventhough cannot do anything with it
but still can read everything which is not allowable in real life application
do you have any suggestion for this problem?
Hi experts, is there a specific way to create model a multi party transaction (the same way as in bitcoin multi-signature transactions)? any example would be appreciated?
[ ](https://chat.hyperledger.org/channel/composer?msg=2gRoe6FBzsE6vCsSG) @MaherBouidani add this in your permission file rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
@rashansamith88 but this is gonna give access to all participants to all resouces in the network
I am gonna be more precise, I want the participant to have access into network (to connect the identity to business network at first place) and to see only his asset or perform his transaction in this network
but the problem is that giving access into network is not restricted when I write another rule of accessing his asset or transaction
you have to restrict first all things
rule UserSeeUpdateThemselvesOnly {
description: "User can see and update their own record only"
participant(t): "org.enfection.enfectionnetwork.User"
operation: READ, UPDATE
resource(v): "org.enfection.enfectionnetwork.User"
condition: (v.getIdentifier() == t.getIdentifier())
action: ALLOW
}
rule UserSeeTheirCommodities {
description: "User can see/work with their own Commodities"
participant(t): "org.enfection.enfectionnetwork.User"
operation: ALL
resource(c): "org.enfection.enfectionnetwork.Gem"
condition: (c.owner.getIdentifier() == t.getIdentifier())
action: ALLOW
}
rule EnableSellGemsTransaction {
description: "Enable Traders to submit transactions"
participant: "org.enfection.enfectionnetwork.User"
operation: ALL
resource: "org.enfection.enfectionnetwork.SellGems"
action: ALLOW
}
rule serUsSeeOwnHistoryOnly {
description: "Traders should be able to see history of their own transactions only"
participant(t): "org.enfection.enfectionnetwork.User"
operation: READ
resource(v): "org.hyperledger.composer.system.HistorianRecord"
condition: (v.participantInvoking.getIdentifier() != t.getIdentifier())
action: DENY
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
add those thing it will works
Great
so firat restricting everything and then give this one
yes
rule SystemACL {
description: "System ACL to permit all access"
participant: "org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
Thank you so much for help
I am gonna try it now
enforme me if it is work or not
informe
It works
Great !!!
Thank you so much
i allso have problem
what is your problem?
i already created peeradmin card and network card. then i restarted my pc.then again i tried connect my network. there is an error
if i want to shut down my pc what should i do without destroy my network access
Hi All, I am getting error Failed to receive commit notification from peer while try to start business network with fabric version 1.3
Hi everyone,
In hyperledger composer 1.2,
I am getting this error. Any idea ?
```
Argument requis manquant: file
```
Hi everyone,
In hyperledger composer 1.2,
I am getting this error. Any idea ?
```
composer card import --file admin.card -c admin
Failed to import the business network card
Connection profile has no `x-type` property defined. It is not valid for this version of composer
Error: Errors found in the connection profile in the card
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=CLzBRykQfsKXRmxzK) @rashansamith88 you use a developer einvironment, which is not really stable. u can use my Repository. the fabric network is stable and can be shutt down and started without destroying anything :)
https://github.com/4eyes/workshoptage2018
[ ](https://chat.hyperledger.org/channel/composer?msg=xE7NJf3JaWdH8L5x5) @CorentinPacaud I think you miss the x-type in your connection profile. if yo use hyperledger fabric 1.2, then you should have `"x-type": hlfv12`
Example: https://github.com/4eyes/workshoptage2018/blob/master/composer/composer.sh#L48
[ ](https://chat.hyperledger.org/channel/composer?msg=xE7NJf3JaWdH8L5x5) @CorentinPacaud I think you miss the x-type in your connection profile. if yo use hyperledger fabric 1.2, then you should have
`"x-type": "hlfv12"`
Example: https://github.com/4eyes/workshoptage2018/blob/master/composer/composer.sh#L48
@waleed I use the basic network (when you do a ```./startFabric.sh``` and then a ```createPeerAdmin.sh```) where is this file ?
@waleed found it. I will try
[ ](https://chat.hyperledger.org/channel/composer?msg=zFY6Sv6xmuGAPW9s8) @CorentinPacaud which toturial do you follow?
@waleed doesn't work. I use this tuto : https://hyperledger.github.io/composer/v0.19/installing/development-tools
@CorentinPacaud you are using a card that isn't designed for composer 0.19 as it will contain a connection profile meant for composer 0.16. Composer 0.19 requires a completely new connection profile format.
@CorentinPacaud you are using a card that isn't designed for composer 0.19 as it will contain a connection profile meant for composer 0.16. Composer 0.19 requires a completely new connection profile format. As part of that new format it will have a property called `x-type` and this must be set to `hlfv1` (irrespective of your fabric 1.1 or 1.2). The format is totally different so you can't just change `type` to `x-type`
[ ](https://chat.hyperledger.org/channel/composer?msg=GBwZRLKwvukfAhmpp) @CorentinPacaud I think you need to teardown your network and start from the beginnig. and make sure to run `export FABRIC_VERSION=hlfv11` before starting the network. make sure you have the right fabric version which in your case 1.1
I am using hlfv12
[ ](https://chat.hyperledger.org/channel/composer?msg=3rDetDnpLKjXfCe3L) @CorentinPacaud then you should follow this: https://hyperledger.github.io/composer/latest/installing/development-tools
thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=xE7NJf3JaWdH8L5x5) @CorentinPacaud If you are using Fabric 1.2.1 then you should be using the lastest version of Composer v0.20 (you should use Fabric 1.2.1 not 1.2)
The error you are seeing importing the card means that you are trying to import a card that contains a connection.json file in an old format (prior to Composer v0.17). You will need to re-create the card using the updated connection.json format.
ok, I followed the tutorial in the link but still the same error :
```composer card import --file admin.card
Failed to import the business network card
Connection profile has no `x-type` property defined. It is not valid for this version of composer
Error: Errors found in the connection profile in the card
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=yRFJryoibAuZfwQ3M) @CorentinPacaud did you read the answer from @davidkel
[ ](https://chat.hyperledger.org/channel/composer?msg=yRFJryoibAuZfwQ3M) @CorentinPacaud did you read the answer from @davidkel ?
@waleed yes, in the connection-profile.json , I change x-type from hlfv1 to hlfv12.
[ ](https://chat.hyperledger.org/channel/composer?msg=Pd9R4xK5njpmZ5gtd) @CorentinPacaud run `composer -v` & `docker images`
to see which versions do you use?
[ ](https://chat.hyperledger.org/channel/composer?msg=Pd9R4xK5njpmZ5gtd) @CorentinPacaud run `composer -v` & `docker images`
to see which versions do you use
```
$composer --version
v0.20.4
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hyperledger/fabric-ccenv 1.2.1 8651e7160d88 7 weeks ago 1.43GB
hyperledger/fabric-orderer 1.2.1 b1a1dd788841 7 weeks ago 152MB
hyperledger/fabric-peer 1.2.1 ef0e7788ead0 7 weeks ago 159MB
hyperledger/fabric-ca 1.2.1 be8400395e15 7 weeks ago 251MB
hyperledger/fabric-couchdb 0.4.10 3092eca241fc 4 months ago 1.61GB
```
@waleed I think it's good
@CorentinPacaud under: fabric-dev-servers/fabric-scripts/hlfv12/createPeerAdminCard.sh
line 81. which x-type do you have
@CorentinPacaud under: fabric-dev-servers/fabric-scripts/hlfv12/createPeerAdminCard.sh
line 81. which x-type do you have?
I think it's here
```
"x-type": "hlfv1",
```
I changed it for "hlfv12" but I got this error when executing the script :
```Failed to import the business network card
keyword: enum
dataPath: ['x-type']
schemaPath: #/properties/x-type/enum
params:
allowedValues:
- hlfv1
message: should be equal to one of the allowed values
Error: Errors found in the connection profile in the card
Command failed
There are no Business Network Cards available.
```
@CorentinPacaud `x-type` can only be a value of `hlfv1`.
So don't change the script
so , what's the pb ?
[ ](https://chat.hyperledger.org/channel/composer?msg=Wt9epzoJwJGKiGjF2) @CorentinPacaud `x-type` defines the version of Hyperledger Fabric (1.x) that you will connect to. To connect to Hyperledger Fabric v1.2, x-type must be `hlfv1`.
[ ](https://chat.hyperledger.org/channel/composer?msg=Wt9epzoJwJGKiGjF2) @CorentinPacaud `x-type` defines the version of Hyperledger Fabric (1.x) that you will connect to. To connect to Hyperledger Fabric v1.2.1, x-type must be `hlfv1`.
[ ](https://chat.hyperledger.org/channel/composer?msg=9hsY6TPNHiYWEJEzq) @rashansamith88 see the SECOND answer here for retaining state after reboot -> https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
@mahoney1 I don't touche anything, I just followed the tutorial for 1.2 and it gave me this error.
what should I do ?
@CorentinPacaud You said you changed the script, you should change it back as it's because you changed it that you got the error
Yes, but the first error ?
That would be you probably using a business network card file that was created to work with composer 0.16 and you tried to use it with composer 0.19 or 0.20. The card file contains a connection profile and they are fundamentally different between 0.16 and 0.19/0.20
That would be you probably using a business network card file that was created to work with composer 0.16 and you tried to use it with composer 0.19 or 0.20. The card file contains a connection profile and they are fundamentally different between 0.16 and 0.19/0.20 assuming you mean the error `no x-type defined`
here is my script :
```
composer network install --card PeerAdmin@hlfv1 -a dist/odm-network.bna
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw -n odm-poc-network -v 0.0.8 --file admin.card
composer card import --file admin.card
composer network ping --card admin@odm-poc-network
composer-rest-server --card admin@odm-poc-network -N never -w true```
yes, I see no reference to x-type or hypeledger versuin on the code ?
yes, I see no reference to x-type or hypeledger versuin on the code
So where did you get the PeerAdmin@hlfv1 card from ?
the createPeerAdmin.sh from the tuto
the createPeerAdmin.sh from the tuto (come back in 1hour, meal time)
@CorentinPacaud I suggest you delete your card store and start again (ie rm -fr $HOME/.composer)
hi, how to get the transaction id from composer-rest-server
hi, how to get the transaction id of a particular block using composer-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=LqtqE6zLjyuenynJW) @saikumar3349 `transactionId` is available when you submit (you'll see it in the output, or available to your app) or when you query a transaction class. The Composer REST server doesn't deal with 'blocks' that's Fabric's domain and you would query Fabric for that - if you mean 'which block is it in', see this thread https://stackoverflow.com/questions/50654637/get-transactions-block-number-in-hyperledger-composer
[ ](https://chat.hyperledger.org/channel/composer?msg=LqtqE6zLjyuenynJW) @saikumar3349 `transactionId` is available when you submit (you'll see it in the output, or available to your app) or when you query a transaction class. The Composer REST server doesn't deal with 'blocks' - that's Fabric's domain and you would query Fabric for that - if you mean 'which block is it in', see this thread https://stackoverflow.com/questions/50654637/get-transactions-block-number-in-hyperledger-composer
Hi experts, is it possible to turn off composer rest server explorer (which is on 3000 for example) and still the rest server still running?
@rrishmawi firewall, iptables ? Composer REST server is a loopback-based application - you can see what loopback says on disabling here (not tried it) -> https://loopback.io/doc/en/lb2/Environment-specific-configuration.html#disabling-api-explorer
@mahoney1 Is it possible to get the transaction id of a latest commit block.
I have to write a logic in logic.js to get the transaction id
[ ](https://chat.hyperledger.org/channel/composer?msg=3YyA4BTHgbSLrHEwr) @rrishmawi you can't do it dynamically, but when you start the rest server use the ` --explorer false ` option
`composer-rest-server -h` shows all the options
[ ](https://chat.hyperledger.org/channel/composer?msg=JYHBakvydmztwH65x) @rthatcher Thank you both, what do you mean by i cannot do it dynamically?
@davidkel here is my resetAll.sh script :
```./stopFabric.sh
rm -rf ~/.composer/*
rm -rf ~/.composer-credentials/*
```
and it doesn't work
Hi ,how to get block data from composer-rest-server ?
@CorentinPacaud your resetAll.sh script has a problem, suggest you try
@CorentinPacaud your resetAll.sh script might be better if you did
```
rm -fr ~/.composer
```
To ensure you completely remove the `.composer` directory. Then follow the instructions in the online documentation for setting up a development fabric network
@rthatcher thank you for yesterday, at the end i reinstalled ubuntu from scratch and everything went good
@saikumar3349 you can't get blocks using the composer rest server
@davidkel @mahoney1 Hi, I want to return transaction id when we create an asset using REST API. how to write a business logic.
@davidkel same error with the new "rm -fr ~/.composer
```Failed to import the business network card
Connection profile has no `x-type` property defined. It is not valid for this version of composer
```
@CorentinPacaud So how have you created the card file you are tring to import ?
[ ](https://chat.hyperledger.org/channel/composer?msg=WrcdJCBCHyk739bwD) @davidkel Yes, here is my deplpyBna.sh :
```composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName voting-network
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --archiveFile --networkName odm-poc-network --version 0.0.8 --file admin.card
composer card import --file admin.card
composer network ping --card admin@voting-network
composer-rest-server --card admin@voting-network -N never -w true```
[ ](https://chat.hyperledger.org/channel/composer?msg=WrcdJCBCHyk739bwD) @davidkel Yes, here is my deplpyBna.sh :
```composer network install --card PeerAdmin@hlfv1 -a dist/odm-network.bna
composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw -n odm-poc-network -v 0.0.8 --file admin.card
composer card import --file admin.card
composer network ping --card admin@odm-poc-network
composer-rest-server --card admin@odm-poc-network -N never -w true```
If you have deleted the `~/.composer` directory then it should not find any cards, the fact that it is means you haven't deleted the card store or you have imported an old card file
It appears to be finding a PeerAdmin@hlfv1 card in your cardstore
I rerun ./startFabric.sh and createPeerAdmin.sh yes
and after resetAll.sh, docker ps and composer card list return no result
is createPeerAdmin.sh your own script ? As the one that comes with the dev server package is createPeerAdminCard.sh ? If it is the one from the dev-servers package, what output does it display when you run it
yes it is the one from dev-server package, here is the result :
```
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is set to 'hlfv12'
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.20.4
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Successfully imported business network card
Card file: /tmp/PeerAdmin@hlfv1.card
Card name: PeerAdmin@hlfv1
Command succeeded
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --card
nothing wrong I think
Can you run the commands individually that you list above rather than running as a script ? I'm guessing then the problem is the attempt to import the admin.card file so make sure any old ones are deleted first
the deploy script ?
ok, last modified date of admin.card was 5/11/2018. Maybe it is the soluiton
I think this command has a strange output :
```composer network start --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw -n odm-poc-network -v 0.0.8 --file admin.card
v0.20.4
```
and the card is not created ....
Ok, I see the problem now, the `composer network start` command is not correct. You need to use `-V` not `-v`
FU***** !
@davidkel ok that 's sound better but I have this now when composer start network :
``` ✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=RQJwtQyfvi2qphriw) @CorentinPacaud make sure your containers (peers) are running
`docker ps`
@CorentinPacaud Also check out https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md and look for REQUEST_TIMEOUT for some suggestions
yes `docker ps`returns good result
I think I need to do something with npm proxy
@CorentinPacaud ensure (if necessary) any npmrcFile to route through proxy is supplied to `composer network install` (not `start`) command FYI - see also [here](https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer) ...connection information including options file info -> https://hyperledger.github.io/composer/latest/managing/connector-information and also -> https://stackoverflow.com/questions/49751259/error-in-starting-hyperledger-fabric-network-with-hyperledger-composer in addition to the reference above. Eg ./npmrc is like this.
```registry=http://registry.npmjs.org
proxy=http://10.91.0.1:8080/
https-proxy=https://10.91.0.1:8080/
```
is the proxy url right ? or you put some generic ?
[ ](https://chat.hyperledger.org/channel/composer?msg=56CjZM8baQJkfCAMR) @CorentinPacaud generic
Screenshot from 2018-11-21 00-15-58.png
Could someone please suggest me to resolve this error
Has joined the channel.
Can any one advice from which path i should run the command
awk 'NF {sub(/\r/, ""); printf "%s\\n",$0;}' crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt > /tmp/composer/org1/ca-org1.txt
i am getting error /tmp/composer/org1/ca-org1.txt - No such file or directory
even though i have created empty file
@Vanitha Just check out of whether same containers are running . If they are then remove the containers and restart the procedure
@Vanitha If above condition is failed then run ./stopFabric.sh and ./teardownFabric.sh and again start the application.
Hi Everyone just want to get some of your thoughts here, Is the Hyperledger Composer Production Ready? even though i'm confident it is production ready because I was able to implement it in the IBM Cloud but others opinion matters as well :) let me know guys... thanks a lot
Has joined the channel.
Has joined the channel.
Hi when I use "composer network start" command to start a network which is installed I am getting an error saying Reference error: window is not defined. Can somebody help? Urgent!!
[ ](https://chat.hyperledger.org/channel/composer?msg=5JCHJDdLfBxjmBwfW) I have used window variable generation of pdf. Is there any alternative?
@KaushalKedilaya I'm guessing you have tried to use browser javascript capabilities in your chaincode (eg the window object) ? You can't use any browser specific capabilities in node.js chaincode. The other problem you will face is that you cannot use require to try to include any 3rd party libraries in composer TP functions either.
[ ](https://chat.hyperledger.org/channel/composer?msg=6aQ2oMKvdkhznJGqw) @davidkel Ok I got it Thank you!
how can i get the transaction id from rest api??
[ ](https://chat.hyperledger.org/channel/composer?msg=QRA69e5foXHtRt8vq) @Vanitha The `composer identity request` command is trying to access the CA for Org1 - I would suggest looking at the log for that container to see if there was an error either when it started, or when you ran the command.
[ ](https://chat.hyperledger.org/channel/composer?msg=EicD2dcijzDfFtvwC) @JeffGutierrez Have you seen this announcement: https://lists.hyperledger.org/g/composer/message/125
Composer is still good for a demo/prototype or even poc, but not for a production deployment going forward. Many of the good things in Composer are being added to the native Fabric tools now.
[ ](https://chat.hyperledger.org/channel/composer?msg=aXtNdMxCQwnL8FHnr) @raky35 I would think from the `fabric-samples/first-network` folder
[ ](https://chat.hyperledger.org/channel/composer?msg=qqaWMg8Po7gnBM6jZ) @vanipolnedi `transactionId` is available in the response of a transaction `/POST` - see answer [here](https://stackoverflow.com/questions/48610773/hyperledger-composer-rest-api-does-not-return-transaction-id)
I have Dapps developed using composer. Built frontend using yo command and then while performing transaction it is showing Error: 500 - Internal Server Error. But transaction is successful in local composer-playground
Hai, i have a question as below:
In connection profile, why should all peers info be listed for the issued identity(to some participants)?
For the PeerAdmin or networkadmin,all peers info may be need for network discovery or other reason.
But the issued identity is related with certain org, so would it be ok to have the certain org's peers info in its connection profile?
While executing Curl command I am facing this issue *curl: (56) Recv failure: Connection reset by peer*
Could someone please suggest y this error is coming?
[ ](https://chat.hyperledger.org/channel/composer?msg=7dnmcfyWadtuvNmXp) @touchingsoil see explanation of when peers (and roles and role settings and structure) in the common connection profile described [here](https://fabric-sdk-node.github.io/tutorial-network-config.html) - which is linked off [Composer's connection profile page](https://hyperledger.github.io/composer/latest/reference/connectionprofile.html) . If you want to control what peers are used (eg.) for query, events, endorsement etc for example you should do this by setting the peer roles to true/false as required.) - obviously appropriate B/N cards would need to be built in Composer to match.
[ ](https://chat.hyperledger.org/channel/composer?msg=7dnmcfyWadtuvNmXp) @touchingsoil see explanation of when peers (and roles and role settings and structure) in the common connection profile described [here](https://fabric-sdk-node.github.io/tutorial-network-config.html) - which is linked off [Composers connection profile page](https://hyperledger.github.io/composer/latest/reference/connectionprofile.html) . If you want to control what peers are used (eg.) for query, events, endorsement etc for example you should do this by setting the peer roles to true/false as required.) - obviously appropriate B/N cards would need to be built in Composer to match.
[ ](https://chat.hyperledger.org/channel/composer?msg=Hu4PmNbHGNnDcs98W) @KaushalKedilaya most likely because of your model definition, as consumed by the app - are you using concepts ? See https://stackoverflow.com/questions/51790484/hyperledger-composer-generated-angular-app-cant-instantiate-concepts-while-invo
[ ](https://chat.hyperledger.org/channel/composer?msg=p9LyFhZDjrLrnC3fb) @Vanitha network/internet access, port access
@mahoney1 using this link https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org , i can connect to multi org on single host .... how to connect multi org using multiple hosts?
hi while making transaction I am getting following error. Please help me to solve it
hi while making transaction I am getting following error. Please help me to solve it{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 9bfc8cfc29ca1cbaf088bdd237bcc007434dc74dba862b88597dacdb82a04ebe. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ValidationException: Instance 158878985 has a property named preference which is not declared in org.tanla.cpm.Preferences",
"stack": "Error: Error trying invoke business network with transaction id 9bfc8cfc29ca1cbaf088bdd237bcc007434dc74dba862b88597dacdb82a04ebe. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ValidationException: Instance 158878985 has a property named preference which is not declared in org.tanla.cpm.Preferences\n at HLFConnection.invokeChainCode (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 9bfc8cfc29ca1cbaf088bdd237bcc007434dc74dba862b88597dacdb82a04ebe. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ValidationException: Instance 158878985 has a property named preference which is not declared in org.tanla.cpm.Preferences",
"stack": "Error: Error trying invoke business network with transaction id 9bfc8cfc29ca1cbaf088bdd237bcc007434dc74dba862b88597dacdb82a04ebe. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ValidationException: Instance 158878985 has a property named preference which is not declared in org.tanla.cpm.Preferences\n at HLFConnection.invokeChainCode (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
@mahoney1 So the key point is the role of peers defined in the connection profile, is that right?
[ ](https://chat.hyperledger.org/channel/composer?msg=8FenmJKEbeC8RwLbN) @rthatcher Thank you @rthatcher :slight_smile:
Does composer loop back connector supports nested json filters?
Something like: http://localhost:3001/api/Person?filter[where][address.pincode]=370201
Or http://localhost:3001/api/Person?filter[where][address][pincode]=370201
[ ](https://chat.hyperledger.org/channel/composer?msg=4FZJrAREksPDzj6Hc) @vanipolnedi see suggestions [here](https://stackoverflow.com/questions/52364155/connecting-2-existing-org-in-separate-machines-hyperledger-fabric) and [here](https://stackoverflow.com/questions/50100056/multi-org-setup-using-hyperledger-composer-in-multiple-machines) - ie answer sections. You need to ensure correct resolution between nodes in each org on each machine etc.
[ ](https://chat.hyperledger.org/channel/composer?msg=SFimP6Ap3x4tys2fA) @mrudav.shukla you would have to check the loopback filters docs https://loopback.io/doc/en/lb2/Include-filter.html - not tried - some examples in the [wiki](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#filters)
[ ](https://chat.hyperledger.org/channel/composer?msg=WA8fbGaecDFT6Mnvk) @mahoney1 Was going through this thread: https://github.com/strongloop/loopback/issues/517. I don't see nested filters from REST server. I'll refer your link as well.
[ ](https://chat.hyperledger.org/channel/composer?msg=G5mWKZrJbxbJvDH6N) @touchingsoil yes, control is in the connection profile of what they're doing in an org - the key point is what your application users need to do, when interacting with the business network
hi all, i have a basic question, If i have the following:
User abstract participant
Member extends User
Admin extends User
i have the following transaction:
transaction SomeTransaction {
--> User initiator
o String someValue
}
initiator could be Admin or Member. when calling the transaction how to get the actual sub class of the initiator? Another question, how to do the casting to get the actual instance from and call its methods?
@saikumar3349 sounds like you made a change to your model, possibly deployed it - but your REST server is not aware of the change, so the REST API call with the new field failed with the error shown (not declared), at a guess. You might need to rediscover your business network (restart REST Server) - or check your transaction input
Has joined the channel.
@rrishmawi you can get the class of the currentParticipant invoking using participant.getType() participant.getFullyQualifiedType() etc. See https://hyperledger.github.io/composer/v0.16//business-network/programmatic-access-control for programmatic examples
@rrishmawi you can get the class of the currentParticipant invoking using participant.getType() or participant.getFullyQualifiedType() etc. See https://hyperledger.github.io/composer/v0.16//business-network/programmatic-access-control for programmatic examples
Hi everybody, I have a question regarding the use of script files to implement complex acl rules within javascript files. How can i export a file inside the permissions.acl file ? suppose i have the following script file. ```
`//logicacl.js````
```
```
Hi everybody, I have a question regarding the use of script files to implement complex acl rules within javascript files. How can i export a file inside the permissions.acl file ? suppose i have the following script file. ```
``````
Hi everybody, I am currently working on a project and I'd like to know how I can use acl rule side by side with script files to control complex acl rules implementations. What I've been doing on the playground is this, I have a logicacl file and i can use its functions within the permissions.acl file.
`=!=jBCha434auYGcWczj=!=`
On the playground this works. However, i would like to understand how i can do it in a local environement ? Do i need to require some special modules or composer will figure it out ?
Thanks in advance for your contributions.
Hi everybody, I am currently working on a project and I'd like to know how I can use acl rule side by side with script files to control complex acl rules implementations. What I've been doing on the playground is this, I have a logicacl file and i can use its functions within the permissions.acl file.
```
//logicacl.js
async function participantExists(participant) {
return await participant.exists(paticipant.getIdentifier());
}
//permissions.acl
rule readAccess {
description: "a participant cannot create ressources x if he does not exist"
participant(p): "org.somenamespace.someParticipantType"
action: READ, UPDATE
resource: "org.somenamespace.someResourceType"
condition: (participantExists(p))
action: ALL
}
```
On the playground this works. However, i would like to understand how i can do it in a local environement ? Do i need to require some special modules or composer will figure it out ?
Thanks in advance for your contributions.
Hi everybody, I am currently working on a project and I'd like to know how I can use acl rule side by side with script files to control complex acl rules implementations. What I've been doing on the playground is this, I have a logicacl file and i can use its functions within the permissions.acl file.
```
//logicacl.js
async function participantExists(participant) {
return await participant.exists(paticipant.getIdentifier());
}
//permissions.acl
rule readAccess {
description: "a participant cannot create ressources x if he does not exist"
participant(p): "org.somenamespace.someParticipantType"
action: READ, UPDATE
resource: "org.somenamespace.someResourceType"
condition: (participantExists(p))
action: ALL
}
```
On the playground this works. However, i would like to understand how i can do it in a local environment ? Do I need to require some special modules or composer will figure it out ?
Thanks in advance for your contributions.
SELECT org.example.hiring.examScore
WHERE (owner == _$owner )
SELECT org.example.hiring.examScore
WHERE (owner == _$owner ) this is my query want to pass the variable owner from transaction logic how is it?
[ ](https://chat.hyperledger.org/channel/composer?msg=uToTQQyYqCeNMYr3D) @brahmsMnzo If the file `logicacl.js` exists in the lib folder of the project (and the .BNA file) then the acl processing will be able to find your function in the same way it does for Playground.
[ ](https://chat.hyperledger.org/channel/composer?msg=uToTQQyYqCeNMYr3D) @brahmsMnzo If the file `logicacl.js` exists in the lib folder of the project, and the .BNA file you deploy then the acl processing will be able to find your function in the same way it does for Playground.
@rthatcher Thank you for your answer. I went back to playground and noticed when creating the logicacl that the file was put inside the lib directory. Do you know how it works under the hood.? For instance, how does composer know what file to export to the acl file ?
let results = await query('selectPassedCandidate',{ "mark" : cutoff }); is it correct? Where mark is parameter to pass and cutoff is it's value.
Has joined the channel.
Hi all, I'm starting to explore a little more Hyperledger Composer and its limitations.
I'm trying to see if it's possible to have some sort of interface/polymorphism
I have the following structure:
I have the following models:
```
abstract concept BaseConcept {
o String name
}
concept ConceptOne extends BaseConcept {
o String nameOne
}
concept ConceptTwo extends BaseConcept {
o String nameTwo
}
asset MyAsset identified by myAssetId {
o String myAssetId
o BaseConcept anyConcept // This can be either ConceptOne or ConceptTwo
}
```
As you can see, I'm trying to use `BaseConcept` as an Interface for the two implementations `ConceptOne` and `ConceptTwo`. This way I can pass either of the two when I create a new instance of MyAsset
I know this sounds a lot like OOP, but is it actually possible? Or maybe there's a better way to achieve this in Composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=WoioKZyADjiPXZ6f7) @adnanabbasktt The reference doc: https://hyperledger.github.io/composer/latest/api/runtime-api#query
shows it differently. (Note that the example is using 'old style' promises - you are fine using await!)
[ ](https://chat.hyperledger.org/channel/composer?msg=oNYCxZGN5Q9MakdPr) @brahmsMnzo - afaik all the files in the lib folder are included when the BNA is deployed, and I think you can have only 1 acl file called permissions.acl, and 1 query file called queries.qry
@iMacTia your model should be possible with the Concepts you've defined, and creating the end resource `myAsset` with either/or. Another example (specific use case, for transaction) - is captured in the answer on [Stack Overflow](https://stackoverflow.com/questions/52401143/transaction-function-return-type-in-hyperledger-composer/52402136#52402136)
@iMacTia your model should be possible with the Concepts you've defined, and creating the end resource `myAsset` with either/or. Another example (specific use case, for transaction) - is captured in the answer in this [Stack Overflow](https://stackoverflow.com/questions/52401143/transaction-function-return-type-in-hyperledger-composer/52402136#52402136)
{
"error": {
"statusCode": 400,
"name": "SyntaxError",
"message": "Unexpected token { in JSON at position 76",
"body": "{\n \"$class\": \"org.example.hiring.examScore\",\n \"assetId\": \"1\",\n \"owner\": {{\n \"$class\": \"org.example.hiring.Candidate\",\n \"participantId\": \"2\",\n \"fullName\": \"second candidate\"\n }},\n \"detail\": \"first test\",\n \"examId\": \"1\",\n \"mark\": 20,\n \"selected\": false\n}",
"status": 400,
"stack": "SyntaxError: Unexpected token { in JSON at position 76\n at JSON.parse (
Thanks a lot @mahoney1 !
[ ](https://chat.hyperledger.org/channel/composer?msg=XodvDaQ2CnoXeJZdH) {
"$class": "org.example.hiring.examScore",
"assetId": "string",
"owner": {},
"detail": "string",
"examId": "string",
"mark": 0,
"selected": true
} how assign value to parameter owner that is participant in the network.
[ ](https://chat.hyperledger.org/channel/composer?msg=XodvDaQ2CnoXeJZdH) {
"$class": "org.example.hiring.examScore",
"assetId": "string",
"owner": {},
"detail": "string",
"examId": "string",
"mark": 0,
"selected": true
} how assign value to parameter owner that is participant in the network. {
"$class": "org.example.hiring.Candidate",
"participantId": "string",
"fullName": "string"
}
[ ](https://chat.hyperledger.org/channel/composer?msg=8mdQSXjPyuJJ6KhHu) @rthatcher Thanks.
@adnanabbasktt there's an extra set of `{}` on the owner property in your first example
you're writing `owner: {{ ... }}`
but it should be `owner: { ... }`
[ ](https://chat.hyperledger.org/channel/composer?msg=wokpoMd4QdaXFEsFe) @rthatcher I noticed that the use of async/await will make the condition fail. Also, there are some methods from composer-client API that cannot be used. The only method working for now it the getIdentifier(). Have you ever tried other methods ? Earlier i received an error saying `TypeError: exists(param) is not a function`
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=G3bzwkuHBDy3stjbd) @brahmsMnzo Within the Transaction, you do not have access to the Client API, only the Runtime API: https://hyperledger.github.io/composer/latest/api/allData#runtime-api
@brahmsMnzo the `param` error is likely because you've got a typo in : `return await participant.exists(paticipant.getIdentifier());` (participant not paticipant)
@adnanabbasktt something like `""owner":"org.example.hiring.Candidate#123"` in JSON ? (looks like owner is a relationship) - you can easily review in playground (if you've got it installed - under 'Test' and click 'generate random data' upon attempting to create an `examScore` asset there, for a quick format FYI).
Has joined the channel.
Hi everyone, simple question.
Everytime I run "composer archive create" it will generate a file using the version set at package.json (I'm using nodejs, btw) and it only let's me install once.
Is there a way to set a version when creating the archive ?
Thanks
When I run : composer network upgrade -c peeradmin@hlfv1 -n fractional-ownership -V 0.0.2-deploy.170
I get: Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: Illegal value for Message.Field .protos.ChaincodeID.name of type string: object (no array expected)
Command failed
[ ](https://chat.hyperledger.org/channel/composer?msg=yjQea9DtWiGr5XyEW) @mahoney1 Thanks!!
Has joined the channel.
Private data storage path is : /var/hyperledger/production/ledgersData/chains/chains/mychannel . is it possible to change this private block data storage path ?? if yes, where i had to change ??
Private data storage path is : /var/hyperledger/production/ledgersData/chains/chains/mychannel ( in docker ) . is it possible to change this private block data storage path ?? if yes, where i had to change ??
Hello Team, my event notification are listening on 7053 over grpcs. I am getting handshake error while trying to connect to web socket. Can anyone please suggest how to connect to web socket over grpcs?
hello all, I want to get a specific parameter from a block . can anyone help how to get this ?
[ ](https://chat.hyperledger.org/channel/composer?msg=YHk2iYvdG7Ljc8ASo) @vanipolnedi You can override CORE_PEER_FILESYSTEMPATH. The default is /var/hyperledger/production. You can't change a single subdirectory though.
hi.. how to write sub-queries in composer-query-language ?As mt requirement is to get details of certain asset in particular time (transaction time)
Error: Error trying invoke business network with transaction id 34b1d54460810c7d89888f59766d1f115760038ec7dde0eea1506cfacb9c1bfe. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: transaction returned with failure: Error: Use Serializer.toJSON to convert resource instances to JSON objects.
[ ](https://chat.hyperledger.org/channel/composer?msg=5NsMZM7f35edcYC9e) async function selectedForInterview(tx) {
let examScoreRegistry = await getAssetRegistry('org.example.hiring.examScore');
let allcutoff = await query('getCutoff');
let cutoff = allcutoff[allcutoff.length-1].exam;
let results = await query('selectPassedExamScore',{ "mark" : cutoff });
for (let n = 0; n < results.length; n++) {
let examScore = results[n];
// emit a notification that a Candidate was shorlisted
let candidateSelectedToInterview = getFactory().newEvent('org.example.hiring','candidateSelectedToInterview');
let candidate = await query('selectCandidateProfile',{'owner' : examScore.owner});
candidateSelectedToInterview.sortListed =candidate[0].owner ;
emit(candidateSelectedToInterview);
examScore.selected = true ;
await examScoreRegistry.update(examScore);
}
}
[ ](https://chat.hyperledger.org/channel/composer?msg=5NsMZM7f35edcYC9e) async function selectedForInterview(tx) {
let examScoreRegistry = await getAssetRegistry('org.example.hiring.examScore');
let allcutoff = await query('getCutoff');
let cutoff = allcutoff[allcutoff.length-1].exam;
let results = await query('selectPassedExamScore',{ "mark" : cutoff });
for (let n = 0; n < results.length; n++) {
let examScore = results[n];
// emit a notification that a Candidate was shorlisted
let candidateSelectedToInterview = getFactory().newEvent('org.example.hiring','candidateSelectedToInterview');
let candidate = await query('selectCandidateProfile',{'owner' : examScore.owner});
candidateSelectedToInterview.sortListed =candidate[0].owner ;
emit(candidateSelectedToInterview);
examScore.selected = true ;
await examScoreRegistry.update(examScore);
}
}
[ ](https://chat.hyperledger.org/channel/composer?msg=awcbfiZ8Jj4HQpuGX) @dave.enyeart is it possible to give path in docker or can we give Ubuntu path
[ ](https://chat.hyperledger.org/channel/composer?msg=awcbfiZ8Jj4HQpuGX) @dave.enyeart is it possible to give path in docker or can we give Ubuntu path . In which file we can override CORE_PEER_FILESYSTEMPATH ???
@padmaja9 I suggest you look at Build Your First Network tutorial especially https://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#a-note-on-data-persistence and https://github.com/hyperledger/fabric-samples/blob/release-1.3/first-network/base/peer-base.yaml#L11
@biksen If you are referring to eventURL and the old fabric event mechanism which was on port 7053, then composer 0.19/0.20 doesn't use this and so you can remove it from your connection profile.
@saikumar3349 This isn't a question for composer, I would suggest asking on one of the fabric channels, depending on how you want to approach the problem (either via writing code or some other means)
@davidkel Thanx a lot. I have changed to composer rest server port 3000 and now working fine.
Hi guys, I have two assets..one is CarOrder and the other is cars (from supplier). what I try to do is the (approved order transaction) is only proceeding if the CarOrder.order == cars.car...which means the car requested is already available in stock of supplier
how can I do it?
this is my code
function RequestShipping(tx) {
return getAssetRegistry('org.example.empty.Cars')
assetRegistry.get('vu')
.then(function(cars) {
if (cars.car == CarOrder.order)
{
tx.CarOrder.shipper = tx.shipper;
return getAssetRegistry('org.example.empty.CarOrder')
.then(function (assetRegistry) {
return assetRegistry.update(tx.CarOrder);
});
}
});
}
It invoked by nothing change on the asset
eventhough when I put different cars type in both asset
Clipboard - November 22, 2018 4:28 PM
hi everyone, please help me on this, idk what is the cause of this err
[ ](https://chat.hyperledger.org/channel/composer?msg=78gQDZTeJx9xxiGTw) @toanhd I would think that you have an error with the certificates pasted into the connection.json. The certificates in the `pem` fields in the connection.json must be in one long string with no hard line breaks, and they must contain the BEGIN and END CERTIFICATE syntax too.
@rthatcher thanks you, i'll double check
Morning everyone, Do you have a explanation of the use of the different composer apis : COMMON API, CLIENT API, ADMIN API, RUNTIME API. Thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=dMgTzMy3frPMMtBCW) @Techie - The State database used in Fabric is a Document orientated database, not a Relational database and the query language for composer does not support subqueries.
Hello Team, I am running composer-rest-server v19.17 natively through Linux "screen". I am facing an issue as composer-rest-server getting stopped while there is an invalid transaction request. I am not sure why. Please suggest.
Hello team, How to add multiple assets at a time(batch processing) in hyperledger.
@brahmsMnzo
- Common are api's that are used by many of the composer packages and not specific to a single package such as Client or Admin. Some of these apis are documented for the use of client side applications
- Client are client side apis to interact with a business network
- Admin are client side apis to perform admin level type activity such as card management or performing install/start/upgrade of business networks
- Runtime is the api available to business networks (ie the transaction processor functions.
@MaherBouidani probably easiest if to check if the car is available using something like `.exists` as shown [here](https://stackoverflow.com/questions/52223280/getting-error-http-read-on-closed-response-body-from-transaction-processor-fun/52223764#52223764) or you can check the sample-networks (lib folder) for code examples https://github.com/hyperledger/composer-sample-networks/tree/master/packages
@MaherBouidani probably easiest to check if the car is available using something like `.exists` as shown [here](https://stackoverflow.com/questions/52223280/getting-error-http-read-on-closed-response-body-from-transaction-processor-fun/52223764#52223764) or you can check the sample-networks (lib folder) for code examples https://github.com/hyperledger/composer-sample-networks/tree/master/packages
[ ](https://chat.hyperledger.org/channel/composer?msg=iobM6z9ZMvkTmefQ6) @davidkel thanks @davidkel
@saikumar3349 see this answer in [Stack](https://stackoverflow.com/questions/51515888/hyperledger-composer-creating-multiple-assets-in-a-for-loop) for some pointers/observations, also there's a function in this [redbook](http://www.redbooks.ibm.com/redpapers/pdfs/redp5492.pdf) - createBatch that may be of use. `addAll()` is usually the method to add a batch of (say) assets etc in a transaction eg [sample networks](https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L167)
[ ](https://chat.hyperledger.org/channel/composer?msg=oa8mwiCyzvamgBF7G) @MaherBouidani following @mahoney1 's comment I would also suggest moving to ` async / await ` style of coding instead of chained promises as it will make your code easier to read and maintain.
You could also create a Stack Overflow question where there would be more room for you to include your model as well as the transaction functions.
Hello Team, I am running composer-rest-server v19.17 natively through Linux "screen". I am facing an issue as composer-rest-server getting stopped while there is an invalid transaction request. There is also a web socket client listing on port 3000 (default port). rest server showing "Error: read ECONNRESET at TCP.onread (net.js:62
ECONNRESET at TCP.onread (net.js:622:25)" and then terminate.
I am not sure why. Please suggest.
Hi experts, I have two questions regarding the implementation of transaction processors.
1. if I have an enum, how can I use that in transaction processor without writing it as a string. for example, I have the enum org.example.app.Status, I want to assign Status.CLOSED. not using 'CLOSED'. should I use JSON.stringify?
2. can I use private functions to reuse the code? I have two transaction implementations, share the same logic, and I want to reuse the code in both. can you give me an example of that?
Hello, I am using angular 5 with the cli, and i get the following error when i want to extend the BusinessnetworkCardstore: ERROR TypeError: Class constructor BusinessNetworkCardStore cannot be invoked without 'new'
This happens at super();
@rrishmawi you can assign a value direct using standard JS -> see the animaltracking sample network and model under 'models' one level up (a good place to see examples) https://github.com/hyperledger/composer-sample-networks/tree/master/packages/animaltracking-network
[ ](https://chat.hyperledger.org/channel/composer?msg=eqeNcR52Xd7znsZPq) @Tiruyasha something like ```const BusinessNetworkConnection =
require('composer-client').BusinessNetworkConnection;
module.exports = class Network {
constructor(cardName) {
this.cardName = cardName;
this.connection = **new** BusinessNetworkConnection();
this.definition;
this.namespace = 'org.acme.vehicle';
}``` ??? See [docs](https://hyperledger.github.io/composer/v0.16/applications/node.html)
[ ](https://chat.hyperledger.org/channel/composer?msg=eqeNcR52Xd7znsZPq) @Tiruyasha something like ```const BusinessNetworkConnection =
require('composer-client').BusinessNetworkConnection;
module.exports = class Network {
constructor(cardName) {
this.cardName = cardName;
this.connection = *new* BusinessNetworkConnection();
this.definition;
this.namespace = 'org.acme.vehicle';
}``` ??? See [docs](https://hyperledger.github.io/composer/v0.16/applications/node.html)
[ ](https://chat.hyperledger.org/channel/composer?msg=eqeNcR52Xd7znsZPq) @Tiruyasha something like ```const BusinessNetworkConnection =
require('composer-client').BusinessNetworkConnection;
module.exports = class Network {
constructor(cardName) {
this.cardName = cardName;
this.connection = *new* BusinessNetworkConnection();
this.definition;
this.namespace = 'org.acme.vehicle';
}``` ??? See [docs](https://hyperledger.github.io/composer/latest/applications/node.html)
@biksen are you in a cloud/hosted environment? ECONNRESET" means the other side of the TCP conversation abruptly closed its end of the connection. This is most probably due to one or more application protocol errors. Or something there has overloaded, and reset it forcibly. What version of Fabric, Node are you using? Have you checked your REST server / chaincode container logs, for pointers to explain the invalid transaction?
@biksen are you in a cloud/hosted environment? ECONNRESET" means the other side of the TCP conversation abruptly closed its end of the connection. This is most probably due to one or more network protocol errors. Or something there has overloaded, and reset it forcibly. What version of Fabric, Node are you using? Have you checked your REST server / chaincode container logs, for pointers to explain the invalid transaction?
@mahoney1 I am using Fabric v1.1.0. Actually a Java application get connected to composer rest server web socket. Once they are closing the web socket connection, our composer rest server gets terminated. I am running rest server natively. I am not sure why rest server gets terminated.
Yes I am using AWS cloud
@biksen the REST server itself isn't terminating itself, rather, something environmental or operational - its your call (other others to share their experiences maybe) to understand how to run processes (eg. nohup, services) in your setup - but to me the clue is what happens when the java app disconnects from the listening websockets server (the question also is whether the REST server is getting a signal to terminate).
[ ](https://chat.hyperledger.org/channel/composer?msg=hqFHCJ3MMK3kB7xNi) @mahoney1 thank you for your reply, but the animaltracking-network example does not have a models folder. secondly, i can see they use movementArrival.animal.movementStatus = 'IN_FIELD'; top assign enums, thats the opposite to my intention.
Is it possible to store the output of two transactions into two ledgers. For example, I had two transactions named addData(tx) and updateData(tx). I want the transaction output of addData into one ledger and transaction output of updateData into another ledger.
Is it possible to store the output of two transactions into two ledgers. For example, I had two transactions named addData(tx) and updateData(tx). I want the transaction output of addData into one ledger and transaction output of updateData into another ledger. If possible, How to make it happen?
[ ](https://chat.hyperledger.org/channel/composer?msg=7Auph8LikCG8Nnney) @saikumar3349 Composer was designed for a Single Business Network on a single channel, but functionality was added with the getNativeAPI
[ ](https://chat.hyperledger.org/channel/composer?msg=7Auph8LikCG8Nnney) @saikumar3349 Composer was designed for a Single Business Network on a single channel, but functionality was added with getNativeAPI() . There is some reference doc for it and a tutorial: https://hyperledger.github.io/composer/latest/tutorials/invoke-composer-network
I am wondering about this about updating the business network. Suppose that you have deployed a business network and it is a production environement. Now we want to modify ACLs Rules or add some assets, ressources and transactions to your network. What happens during the redeploy action. Is the network going to be down? What are you thoughts on this ? Thanks
@rrishmawi fyi the model file is [here](https://github.com/hyperledger/composer-sample-models/tree/master/packages/animaltracking-model) - in sample-models.
@rrishmawi fyi the model file is [here](https://github.com/hyperledger/composer-sample-models/tree/master/packages/animaltracking-model) - in sample-models. ps you can always set up your own enum style object to assign the states that you want / as you wish
[ ](https://chat.hyperledger.org/channel/composer?msg=8kZspD3QyZSsYCmCE) Sorry to be asking the same again
@brahmsMnzo 1. You'll have seen presumably that Composer is not production-ready from [this thread](https://lists.hyperledger.org/g/composer/message/125) ? If you mean, to modify [rule | model ] definitions, then it would be an operational decision: ie when would be suitable to upgrade the business network, on all of the peers in your blockchain network so that the newly modified business network is active on the channel.
@brahmsMnzo 1. You'll have seen presumably that Composer is not production-ready from [this thread](https://lists.hyperledger.org/g/composer/message/125) ? If you mean, to modify [rule | model ] definitions, requiring an upgrade - then it would be an operational decision: ie when would be suitable to upgrade the business network, on all of the peers in your blockchain network so that the newly modified business network is active on the channel.
Thanks @mahoney1 . I don't quiet understand this part : "on all of the peers in your blockchain network so that the newly modified business network is active on the channel." ?
Thanks @mahoney1 . I don't quiet understand this part : "*on all of the peers in your blockchain network so that the newly modified business network is active on the channel.*" ?
Thanks @mahoney1 . I don't quiet understand this part : *on all of the peers in your blockchain network so that the newly modified business network is active on the channel.* ?
Thanks @mahoney1 . I don't quiet understand this part : *on all of the peers in your blockchain network so that the newly modified business network is active on the channel.* ? Do you mean that modifications governs peers that are subject to an upgrade ?
Thanks @mahoney1 . I don't quiet understand this part : *on all of the peers in your blockchain network so that the newly modified business network is active on the channel.* ? Do you mean that modifications govern peers that are subject to an upgrade ?
Thanks @mahoney1 . I don't quiet understand this part : *on all of the peers in your blockchain network so that the newly modified business network is active on the channel.* ? Do you mean that modifications govern peers that are subject to an upgrade ?
@brahmsMnzo I mean, changes (you make) to the business network (smart contract/chaincode) get deployed as a new chaincode package, to the peers in question. The peers need to have that latest version so they can evaluate the smart contract/commit transactions as per the logic laid down - the contract includes model files, ACL rules, transaction logic, queries, if defined. The new chaincode package takes effect, once that upgrade transaction has completed successfully.
@brahmsMnzo I mean, changes (you make) to the business network (smart contract/chaincode) get deployed as a new chaincode package, to the peers in question. The peers need to have that latest version so they can evaluate the smart contract/commit transactions as per the logic laid down - the contract includes model files, ACL rules, transaction logic, queries, if defined. The new chaincode package (of that name)
takes effect, once that upgrade transaction has completed successfully.
@brahmsMnzo I mean, changes (you make) to the business network (smart contract/chaincode) get deployed as a new chaincode package, to the peers in question. The peers need to have that latest version so they can evaluate the smart contract/commit transactions as per the logic laid down - the contract includes model files, ACL rules, transaction logic, queries, if defined. The new chaincode package (of that name)
takes effect, once that upgrade transaction has completed successfully. There could be many different business networks running on the peers FYI
@brahmsMnzo I mean, changes (you make) to the business network (smart contract/chaincode) get deployed as a new chaincode package, to the peers in question. The peers need to have that latest version so they can evaluate the smart contract/commit transactions as per the logic laid down - the contract includes model files, ACL rules, transaction logic, queries, if defined. The new chaincode package (of that name)
takes effect, once that upgrade transaction has completed successfully. There could be many different business networks running on the blockchain network FYI
@obernardovieira Any reason why you don't just update the version in your package.json file and then create a new archive ?
@mahoney1 thanks for the explanation.
@mahoney1 thanks for the explanation. I'll make sure to document it somewhere.
Has joined the channel.
Hi, is it possible to use the Math library in hyperledger composer ? Or is there any alternative ?
Thanks you
Nevermind, I found my response
FYI Composer community call https://zoom.us/my/hyperledger.community in 10 minutes FYI
FYI Composer community call https://zoom.us/my/hyperledger.community.3 in 10 minutes FYI
Has joined the channel.
Hi Guys , I'm currently involved in a research about an implementation of a blockchain using hyperledger composer. I've managed to generate a .bna file and I've managed to deploy in a new instance too. I code the chaincode on playground and there everything is Ok, the interaction with the transactions works as expected, but when I want to use the deployed network (from the .bna file generated), I'm getting an error (only for transactions, creating participant works well)
Selection_016.png
Anyone could help me with that? I'm stuck here and I can understand what's wrong with the process
can't understarnd*
Has joined the channel.
@ehuarotop you are trying to use facilities available only to a browser implementation of javascript (eg window) in you implementation. When running chaincode in fabric its node.js so doesn't have browser javascript capabilities such as window. It works in playground because playground provides a simulation of the composer runtime running inside the browser environment (When using the Web browser connection) and this unfortunately means you can use browser specific capabilities in TP functions. The answer for you is you should not use browser specific capabilities in your TP functions for example window, alert etc.
by any change is there a nodejs or GO lang equivalent for any of the sample codes given in composer playground? Migrating with a side-by-side example would be perfect, if not, can I start a github repo for the same?
@varunagarwal for Composer, there are only the nodejs based samples in the sample-networks repo -> https://github.com/hyperledger/composer-sample-networks/tree/master/packages
hi, currently I was working on batch processing. Is it possible to insert 20 assets at a time with different id's.
hi, currently I was working on batch processing. Is it possible to insert 20 assets at a time with different id's. If possible how to query the assets with those unique id's?
@saikumar3349 yes - using `addAll()` - see https://hyperledger.github.io/composer/latest/api/runtime-assetregistry#addall - example of query https://github.com/hyperledger/composer-sample-networks/blob/master/packages/fund-clearing-network/lib/clearing.js (after the 20 assets have been committed, so not in the same transaction as the query)
Thanks @mahoney1 . I was unable to create an asset using factory.newResource() where type of the resource is my transaction and the identifier is of the concept list.
Has joined the channel.
@saikumar3349 an example of everything you're trying to do, is in this sample network (see code link) -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L124 - and the API reference is here -> https://hyperledger.github.io/composer/v0.19/api/runtime-factory#newresource
[ ](https://chat.hyperledger.org/channel/composer?msg=coZK88hGsBKfHB9ds) @davidkel @davidkel well, I might want to do change and depoy it over and over and just when I'm going to commit on the end I will change de version. Also, because my code doesn't always work at the first time, so I meight want to deploy a code with just one line changed. And I know, I will forget to change de version on package.json
[ ](https://chat.hyperledger.org/channel/composer?msg=coZK88hGsBKfHB9ds) @davidkel well, I might want to do change and depoy it over and over and just when I'm going to commit on the end I will change de version. Also, because my code doesn't always work at the first time, so I meight want to deploy a code with just one line changed. And I know, I will forget to change de version on package.json
[ ](https://chat.hyperledger.org/channel/composer?msg=coZK88hGsBKfHB9ds) @davidkel well, I might want to do changes and deploy it over and over and just when I'm going to commit in the end, I change de version. Also, because my code doesn't always work at the first time, so I might want to deploy code with just one line changed. And I know, I will forget to change de version on package.json
@obernardovieira In order to deploy to a real fabric you have to change the version number.
@obernardovieira In order to deploy (upgrade) to a real fabric you have to change the version number.
So, what would be the best option to try my code withput actually deploy it ?
@obernardovieira drive it through unit tests using the embedded connector to simulate a fabric. https://github.com/hyperledger/composer-sample-networks provides starter examples with unit tests. If you want to do more behavioural testing composer also has a cucumber module
hmm ok, I see. I've seen those cucumber modules before. Ok thanks
Has joined the channel.
hi guys, here is my model code namespace org.ta.ba
participant SampleParticipant identified by participantId {
o String participantId
}
concept ML{
o String s1
o String s2
o String s3
o String s4
}
/*
concept MInput{
o String s5
o ML[] message
}
*/
asset Message identified by MSGId {
o String s6
o ML[] ml
}
transaction messageTransaction {
o ML[] message
}
I was unable to write the logic.js to insert multiple assets into the list.can anyone help me how to insert batch insertions
hi guys, here is my model code namespace org.ta.ba
participant SampleParticipant identified by participantId {
o String participantId
}
concept ML{
o String s1
o String s2
o String s3
o String s4
}
asset Message identified by MSGId {
o String s6
o ML[] ml
}
transaction messageTransaction {
o ML[] message
}
I was unable to write the logic.js to insert multiple assets into the list.can anyone help me how to insert batch insertions
Has joined the channel.
Hi! I am trying to deploy fabric using composer (composer, docker, docker -composer). I have been able install most of the items using composer documentation and some online tutorials. However, when I try to start my network using the following command, I get error messages that follow the commandlines. May be someone can help with this: composer network start --networkName block-track --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Hi! I am trying to deploy fabric using composer (composer, docker, docker -composer). I have been able install most of the items using composer documentation and some online tutorials. However, when I try to start my network using the following command, I get error messages that follow the commandlines. May be someone can help with this: composer network start --networkName block-track --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
ComError: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
mand failed
Has joined the channel.
Hi, Is there any reference for querying the data using composite key
I heard a rumour about Linux foundation dropping composer project. Is it any true or just a lame joke?
@rahul703 Composer has always been in incubation phase, it has never been able to graduate for various reasons. I've not heard anything about it being "dropped" though. Maybe you are referring to this ?
https://lists.hyperledger.org/g/composer/message/125
Composer is still good for a demo/prototype or even poc, but not for a production deployment going forward. Many of the good things in Composer are being added to the native Fabric tools now.
Hi, how to check if the currently connected identity is an instance of a certain participant? How to actually check details of currently connected identity?
Hi Team,
please help me out on below,
Akashs-MacBook-Pro:test-bank akashnakka$ composer network start --networkName test-bank-network --networkVersion 1.0.0 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin.card
Starting business network test-bank-network at version 1.0.0
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: cannot get package for chaincode (test-bank-network:1.0.0)
Command failed
Hey guys, question please
are events a part of blockchain ledger or not?
I mean does it recorded in blockchain ledger? If so, where?
is*
[ ](https://chat.hyperledger.org/channel/composer?msg=FxYvDqa68Z3FhWXEr) I found the answer! The API functions "getCurrentParticipant()" and "getCurrentIdentity()" can be used.
https://hyperledger.github.io/composer/v0.19/api/runtime-api#getcurrentparticipant
Has joined the channel.
Hello, i have built my first network and trying to connect it to composer to try developing a simple application with the rest api. Struggling a bit to figure out how to do this and connect composer to my own channel. Could someone possibly point me in the right direction please?
[ ](https://chat.hyperledger.org/channel/composer?msg=knMq43zsbMzFXMmSK) @MaherBouidani You can check if an event has emitted by checking the Historian registry, but it actually emits the event to the subscribed external applications.
@MaherBouidani as outlined by @prasanths96 see Historian https://hyperledger.github.io/composer/latest/reference/historian.html also see [more info in the answers here ](https://stackoverflow.com/questions/51311895/what-are-the-purposes-and-use-cases-of-events-in-hyperledger-fabric)
@prasanths96 see examples here -> https://hyperledger.github.io/composer/latest/business-network/programmatic-access-control
@prasanths96 see `getcurrentIdentity()` examples etc here -> https://hyperledger.github.io/composer/latest/business-network/programmatic-access-control
@prasanths96 see `getCurrentIdentity()` examples etc here -> https://hyperledger.github.io/composer/latest/business-network/programmatic-access-control
[ ](https://chat.hyperledger.org/channel/composer?msg=XehkTrvofwhAuMmes) @mahoney1 Thanks :) . I got what I was looking for.
@mahoney1 @prasanths96 Do I have to define the historian in my code or is gonna be automatically generated in REST API as a System service?
If so, how I can define it in Query instead of code.
If so, how I can define it in Query.qry instead of code.
@MaherBouidani Events are recorded in the ledger. Historian is an integral and unique capability of composer which records all composer transactions.
@MaherBouidani Events are recorded in the ledger. Historian is an integral and unique capability of composer which records all composer transactions and events emitted. This actually means the events are recorded twice in the ledger. Once by the fact that a chaincode event is emitted and the second is the fact that it also gets recorded by historian which is also stored in the ledger
@davidkel when you say ledger, do you mean Blockchain world state?
@davidkel when you say "recorded in ledger", do you mean Blockchain world state?
or sort of In memory Blockchain?
in first place, where the historian is recorded, I know it is the ledger, but what part of the ledger? is it Blockchain world state or another container?
@MaherBouidani The world state is a current view of the latest known state of the ledger it isn't a ledger in it's own right
Clipboard - November 26, 2018 10:44 AM
hi everyone, how can i solve this problem?
i think root course is trade-network.bna file
Has joined the channel.
@toanhd can u please check version in package.json file in trade-network??
Hello Team, I am struggling a lot to resolve one of my composer rest server issue. Let me explain the scenario, I am using Fabric v1.1.0 (BYFN sample) and Composer client v0.19.17 (composer-cli and composer-rest-server) and composer runtime v0.19.04. We are using AWS cloud (Ubuntu v18.04). We deployed our BNA file and published API through composer-rest-server on port 3000 (running natively without Docker). We also published web socket event on the same port (3000). Everything working fine but when web socket client program written in Java running on different machine and when closing the Java program, surprisingly our composer-rest-server getting terminated with error "events.js:183 throw er; // Unhandled 'error' event Error: read ECONNRESET at TCP.onread (net.js:622:25)". I tested it multiple times and getting the same issue. Without web socket event, composer-rest-server working fine. Please help me. I am stuck :(
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id bb54a1c933f026090c6d53238bee026a02d75bc86acca2f8c8eb89aa3d5b904f. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction bb54a1c933f026090c6d53238bee026a02d75bc86acca2f8c8eb89aa3d5b904f: error sending: timeout expired while executing transaction",
"stack": "Error: Error trying invoke business network with transaction id bb54a1c933f026090c6d53238bee026a02d75bc86acca2f8c8eb89aa3d5b904f. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction bb54a1c933f026090c6d53238bee026a02d75bc86acca2f8c8eb89aa3d5b904f: error sending: timeout expired while executing transaction\n at HLFConnection.invokeChainCode (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
I get these error while making a large amount of transaction . {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id bb54a1c933f026090c6d53238bee026a02d75bc86acca2f8c8eb89aa3d5b904f. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction bb54a1c933f026090c6d53238bee026a02d75bc86acca2f8c8eb89aa3d5b904f: error sending: timeout expired while executing transaction",
"stack": "Error: Error trying invoke business network with transaction id bb54a1c933f026090c6d53238bee026a02d75bc86acca2f8c8eb89aa3d5b904f. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction bb54a1c933f026090c6d53238bee026a02d75bc86acca2f8c8eb89aa3d5b904f: error sending: timeout expired while executing transaction\n at HLFConnection.invokeChainCode (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
I get these error while making a large amount of transaction . {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id bb54a1c933f026090c6d53238bee026a02d75bc86acca2f8c8eb89aa3d5b904f. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction bb54a1c933f026090c6d53238bee026a02d75bc86acca2f8c8eb89aa3d5b904f: error sending: timeout expired while executing transaction",
"stack": "Error: Error trying invoke business network with transaction id bb54a1c933f026090c6d53238bee026a02d75bc86acca2f8c8eb89aa3d5b904f. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction bb54a1c933f026090c6d53238bee026a02d75bc86acca2f8c8eb89aa3d5b904f: error sending: timeout expired while executing transaction\n at HLFConnection.invokeChainCode (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
Hi anyone knows answer for this question please help me. https://stackoverflow.com/questions/53475159/bna-network-start-failure
Hi guys, please help me to resolve the below issue {
"error": {
"statusCode": 413,
"name": "Error",
"message": "request entity too large",
"expected": 440583,
"length": 440583,
"limit": 102400,
"status": 413,
"type": "entity.too.large",
"stack": "Error: request entity too large\n at readStream (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/raw-body/index.js:196:17)\n at getRawBody (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/raw-body/index.js:106:12)\n at read (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/body-parser/lib/read.js:76:3)\n at jsonParser (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/body-parser/lib/types/json.js:127:5)\n at Layer.handle [as handle_request] (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at trim_prefix (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)\n at /home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7\n at Function.process_params (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)\n at next (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)\n at nosniff (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/dont-sniff-mimetype/index.js:4:5)\n at Layer.handle [as handle_request] (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at trim_prefix (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)\n at /home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7\n at Function.process_params (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)\n at next (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)\n at ienoopen (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/ienoopen/index.js:4:5)"
}
}
Hi all had a basic question.. I am using cognito as oauth authentication. login logout is happening fine...however one issue that I am seeing is for all the users userId in the cookie is same, access_token is different though...my question is where i the composer rest server cookies are being set
Clipboard - November 26, 2018 9:05 AM
[ ](https://chat.hyperledger.org/channel/composer?msg=AeC4u6PfgvSyZbGzH) @rthatcher Is there any way to call the query written in queries.qry file from the logic file and send the param to the query?
@toanhd That message is telling you that the trade-network bna at version 0.1.14 has not been installed on any peer in the channel. So either you did not perform the steps to install the bna onto each or the organisations peers or you have specified the wrong name and/or version of the business network you are trying to start. The name and version is output when you install the bna using `composer network install`
@saikumar3349 The composer-rest-server has a request size limit of 100Kb. You are trying to send a request that is much larger than this limit. I've not tried but you might be able to increase the limit. You could try to modify `server/config.json` in your composer-rest-server installation to see if you can increase the limit.
@koineramitranjan I'm not sure, but I suspect that the cookie is created by passport rather than the composer rest server itself
@davidkel please tell me how to solve this, what should i do now
@toanhd you need to perform the `composer network install` steps as described in the tutorial you are following, and make a note of the name and version that get's installed and use that information in the `composer network start`
@davidkel plz check inbox
@biksen It's likely that the composer-rest-server doesn't handle the java program terminating and not cleanly closing the web socket. I would look to see if you can get the java program to close the web socket cleanly. If not then the only other thing I can suggest is to use something like PM2 to restart the rest server if it terminates
@biksen It's likely that the composer-rest-server doesn't handle the java program terminating not cleanly closing the web socket. I would look to see if you can get the java program to close the web socket cleanly. If not then the only other thing I can suggest is to use something like PM2 to restart the rest server if it terminates
i finish step 11 in this tut https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@davidkel i finish step 11 in this tut https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
but problem still occur
@davidkel Thats understandable, my question is when you invoke multiple smart contracts and then do GET in REST API. My question where are those data stored?
cuz query the world state ledger gives you the latest state
but when you do GET for multiple smart contracts, still you have a data results
....
Can I call it (In memory Blockchain or In memory chaincode), do you have any suggestion? or basically it is stored in browser cash?
Can I call it (In memory Blockchain or In memory chaincode), do you have any suggestion? or basically it is stored in browser cache?
@MaherBouidani I'm not sure I understand the question. A GET through the composer-rest-server invokes chaincode (in this case chaincode implemented by the composer runtime) to get the results and passes that information to the requester. It's up to the requester of the GET to decide where to store those results
@davidkel basically POST is gonna submitting the transaction?
[ ](https://chat.hyperledger.org/channel/composer?msg=YRgcbYvcrc4xAEQiC) @abityildiz I think someone else also had this error. He solved it by activating TLS on the nodes. Try adding the following to your Certificate Authority service inside docker-compose yml file and restart:
FABRIC_SERVER_TLS_ENABLED=TRUE
GET is gonna get the results of the previous POST
It is up to requester, but where? is there any suggestions? cuz It is impossible that It is gonna stored in World State Ledger
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}
@toanhd when you did the install, what version of the tutorial network did you install ? It will have told you and the tutorial tells you to make note of the version. You need to ensure you use the correct name and version for the start command. You can find out the version by doing `composer archive list -a trade-network.bna` to get the correct name and version. So if the name was `trade-network` and the version was `0.2.3` then you would invoke the command
```
composer network start -c PeerAdmin@byfn-network-org1 -n trade-network -V 0.2.3 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
```
(ie set the values for `-n` and `-V` appropriately
The Docker image for the REST server is configured using environment variables rather than command line options. Create a new file named envvars.txt to store the environment variables for our REST server, with the following contents:
Copy
COMPOSER_CARD=admin@my-network
COMPOSER_NAMESPACES=never
COMPOSER_AUTHENTICATION=true
COMPOSER_MULTIUSER=true
COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "REPLACE_WITH_CLIENT_ID",
"clientSecret": "REPLACE_WITH_CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
[ ](https://chat.hyperledger.org/channel/composer?msg=G9uWMsWJGW8ob6PSY) @prasanths96 ok.i will try again.
@MaherBouidani The requester is the application that makes a GET request to the rest-server, it's an application decision to decide what to do with the results passed back from the GET request.
I understand...So basically what I am thinking is not quite accurate. I though when you do POST and invoke the smart contract, the Asset is gonna stored somewhere.....GET is gonna get it
but now (and correct me if I am wrong) the GET is gonna invoke the chaincode to generate the result back to me
as a requester
so now, do you know how I can make these data stored in mongoDB?
POST will result in a that request being included in a block on the blockchain (successful or otherwise). If the transaction is successful, then the worldstate is updated to reflect the changes due to that POST request.
@MaherBouidani mongoDB in the rest server is used to store composer business network cards only, it isn't used to cache or record any blockchain data
Thank you so much @davidkel for these information. Do you have any suggestion where can I store this data (LevelDB) and what the configuration should I do?
I really appreciate
I want to send this data into external database
@MaherBouidani If you want to take the results and store then in an external database, that's entirely up to you and controlled by your application, The composer-rest-server will not do this for you.
@MaherBouidani If you want to take the results and store them in an external database, that's entirely up to you and controlled by your application, The composer-rest-server will not do this for you.
the problem is that I cannot modify the composer-rest-server. If so, what I am thinking that I can modify the get.endpoint to have a call back into external database (Firebase as example)
I know what do you mean, but I do not know where to start to do it !
@davidkel I think this is the solution?
Configuring the REST server with a persistent data store
All information regarding authenticated users and their wallets (containing that users business network cards when multiple user mode is enabled) is persisted in a LoopBack data source by using a LoopBack connector. By default, the REST server uses the LoopBack "memory" connector to persist user information, which is lost when the REST server is terminated. The REST server should be configured with a LoopBack connector that stores data in a highly available data source, for example a database.
You should be able to use any LoopBack connector, but we recommend that you use a LoopBack connector for a NoSQL database. For example, MongoDB or Apache CouchDB.
The LoopBack connector needs to be installed in order for the REST server to locate and use it. You can install additional LoopBack connectors by using npm, for example:
Copy
npm install -g loopback-connector-mongodb
Finally, you need to supply the REST server with the connection information required by the LoopBack connector. This connection information should be supplied by using the COMPOSER_DATASOURCES environment variable. For more information on the environment variables that can be used to configure the REST server, see the reference documentation: Hyperledger Composer REST Server
@davidkel I had increased the limit and tried again but now it is throwing another error. *error sending: timeout expired while executing transaction*
@MaherBouidani The persistent data store in the rest-server is purely for storing composer business network cards, nothing more.
@saikumar3349 Check your peer logs to see if you request is taking longer that the configured chaincode execution timeout. To increase that try changing the `CORE_CHAINCODE_EXECUTETIMEOUT` value in your peer setup, for example `CORE_CHAINCODE_EXECUTETIMEOUT=1600s`
@davidkel look like everything still stay the same
Clipboard - November 26, 2018 3:52 PM
@toanhd which version of composer do you use?
how do i check that?
nvm list -g --depth=0
post me a screenshot as well
well
it shown "Unsupported option "--depth=0"."
@toanhd perform the steps to install the trade-network again for each of the organisations and post the output here
give me minutes
try this
npm list -g --depth=0
here is the output
```
├── composer-cli@0.20.4
├── composer-playground@0.20.4
├── composer-rest-server@0.20.4
├── generator-hyperledger-composer@0.20.4
├── npm@6.4.1
└── yo@2.0.5
```
install node-gyp@3.8.0
node-gyp is used by the composer
and also check if you export the hlv1
after you did downloadfabric
but yeah, first clean everything
and start fresh
@davidkel I was unable to find the peer setup file. could you please tell me the file name
@saikumar3349 depends how you have setup your fabric, if you use docker-compose then it will be a docker-compose.yml file for example
@toanhd You don't have a problem with your environment as you are able to communicate with the fabric ok
hmm i think i found mistake already, my BNA name is not correct
i fixed it and it's running now
Clipboard - November 26, 2018 4:07 PM
hope that no err occur
Clipboard - November 26, 2018 4:09 PM
new err, omz
new err, omg
@toanhd have a look at https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md and search for REQUEST_TIMEOUT
@davidkel well, look like my err is not listing there
@davidkel even after changing the docker-compose.yml file same error persists. The error is{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 319eb0d8395030ca107d0abf620a7c35d749ffce9af0a16b3e2d94b12020e2ad. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction 319eb0d8395030ca107d0abf620a7c35d749ffce9af0a16b3e2d94b12020e2ad: error sending: timeout expired while executing transaction",
"stack": "Error: Error trying invoke business network with transaction id 319eb0d8395030ca107d0abf620a7c35d749ffce9af0a16b3e2d94b12020e2ad. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction 319eb0d8395030ca107d0abf620a7c35d749ffce9af0a16b3e2d94b12020e2ad: error sending: timeout expired while executing transaction\n at HLFConnection.invokeChainCode (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
oh i found the way to solve it
how to override custom errors in composer-rest-server (logic.js)?
@saikumar3349 Look at the peer logs to see if there are any more errors. Also did it wait a much longer time before responding ? Is this a custom transaction or are using the standard CRUD capabilities of assets ?
[ ](https://chat.hyperledger.org/channel/composer?msg=QcEqHhgm6HqB37xw6) @Techie Yes, in your logic file you can use the Query function to use an existing Query, or even create one using BuildQuery https://hyperledger.github.io/composer/latest/api/runtime-api#buildquery
Clipboard - November 26, 2018 2:56 PM
Clipboard - November 26, 2018 2:56 PM
@davidkel Hereis my error attachments after posting the data
Has joined the channel.
Clipboard - November 26, 2018 3:01 PM
how do i view the list of network card?
[ ](https://chat.hyperledger.org/channel/composer?msg=gkJoGBpuAiRMaAhJ6) @davidkel Thank you @davidkel. We are using the following Java web socket client code:
import java.net.URI;
import javax.websocket.*;
@ClientEndpoint
public class WSConnection {
private static Object waitLock = new Object();
@OnMessage
public void onMessage(String message) {
//the new USD rate arrives from the websocket server side.
System.out.println("Received msg: "+message);
}
private static void wait4TerminateSignal() {
synchronized (waitLock) {
try {
waitLock.wait();
} catch (InterruptedException e) {
}
}
}
@OnError
public void OnError(Throwable error){
System.out.println("ERROR - "+error);
}
@OnClose
public void onClose(Session message, CloseReason closeReason){
System.out.println("CLOSE - "+closeReason);
}
@OnOpen
public void onOpen(){
System.out.println("OPEN - ");
}
public static void main(String[] args) {
WebSocketContainer container=null;//
Session session=null;
try{
//Tyrus is plugged via ServiceLoader API. See notes above
container = ContainerProvider.getWebSocketContainer();
//WS1 is the context-root of my web.app
session=container.connectToServer(WSConnection.class, URI.create("ws://18.191.46.248:3000"));
System.out.println("SESSION - "+session.getId());
wait4TerminateSignal();
} catch (Exception e) {
System.out.println("ERROR - "+e);
e.printStackTrace();
}
finally{
if(session!=null){
try {
//session.close();
System.out.println("FINALLY CALLED");
} catch (Exception e) {
System.out.println("ERROR IN FINALLY - "+e);
e.printStackTrace();
}
}
}
}
}
Please help me. Please provide me a sample web socket client code if you have one.
@biksen you should put code
```
like this
```
[ ](https://chat.hyperledger.org/channel/composer?msg=TDPRrsR8FgwydSHnm) @garunkumar450 I would think that the specific name and version of your network are already installed. You could try changing the version number manually and then re-deploying.
[ ](https://chat.hyperledger.org/channel/composer?msg=3mwuZ28rNsqxF9thH) @toanhd `composer card list` ?
[ ](https://chat.hyperledger.org/channel/composer?msg=uKt4qpS68Mnm7jwce) @toanhd Thanx! @toanhd
Hello all, I'm facing a challenge of understanding real world involvement of Hyperledger Fabric into existing systems. I know that Hyperledger Composer is a good tool to present a demo, but how about the future? What should I use in order to make projects without using Composer (not demo, real enterprise project)?
Clipboard - November 26, 2018 3:16 PM
Clipboard - November 26, 2018 3:16 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=X8fJeGjwA6ZtYPLmp) @NursultanMakhanov - you are correct, Composer is not for production.
You will need to use the native Fabric tools. There is a relatively new document on Developing Applications in the Fabric Documentation:
https://hyperledger-fabric.readthedocs.io/en/latest/developapps/developing_applications.html
and then there is a tutorial:
https://hyperledger-fabric.readthedocs.io/en/latest/tutorial/commercial_paper.html
Both of these docs refer to features available in the Fabric 1.4 beta.
You should also check out the VSCode extension from IBM:
https://marketplace.visualstudio.com/items?itemName=IBMBlockchain.ibm-blockchain-platform
[ ](https://chat.hyperledger.org/channel/composer?msg=D5jwvyeRwcWvJMYfe) @rthatcher Thanks for help, appreciate a lot!
output of my transaction is : {
"$class": "org.test.cpm.addPreference",
"preferenceObject": {
"$class": "org.test.cpm.PreferenceTransactionObject",
"MobileNum": "1234567890",
"preference": [
{
"$class": "org.test.cpm.PreferenceObject_input",
"preference": 1,
"dayOfWeek": 1,
"startTime": 1,
"endTime": 1,
"Mode": 1,
"BlockMode": 1
}
]
},
"transactionId": "f5aa32372c53080495532356a57b74476c37614b277e4d1dfe04c23c7fb0eec5"
} but i want to only transactionId to be returned as transaction output . any suggestions please??
[ ](https://chat.hyperledger.org/channel/composer?msg=vzNvGYdRQTDFXmXik) @garunkumar450 I assume you are using Playground installed locally, not the hosted cloud playground?
What version of Composer are you using, and what version of Fabric?
Are you using the 'standard' development Fabric, or a custom Fabric?
Is this the first Business Network you are deploying, or have you successfully deployed to this Fabric before?
@rthatcher composer version is 0.20.4 and fabric v1.2 I am getting this issue while updating the changes
[ ](https://chat.hyperledger.org/channel/composer?msg=yM3grwGaab4jHCScM) @garunkumar450 Is the Fabric running? Have you recently restarted your machine and restarted the Fabric?
@rthatcher how to check whether fabric is running or not
Screenshot from 2018-11-21 13-19-16.png
@rthatcher i am developing my business network using this link https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html
@Vanitha it says client is 0.19 and runtime is 0.20 , which is not same version. Try "npm install -g composer-cli@latest"
@Vanitha it says client is 0.19 and runtime is 0.20 , which is not same version. Try "npm install -g composer-client@latest"
@Vanitha - I wonder if the `package.json` in your `.bna` file has an explicit version of composer as a dependency?
(Maybe your BNA was exported from a v0.20 version of Composer - or Composer Playground?)
@Vanitha - I wonder if the `package.json` in your `.bna` file has an explicit version of composer as a dependency?
(Maybe your BNA was exported from a v0.20 version of Composer - or Composer Playground?)
- if your package.json refers to :latest - then that is v0.20
[ ](https://chat.hyperledger.org/channel/composer?msg=YZgts6Ag4KQdciguh) is it possible using node js??
@rthatcher Hi, Is there any checklist to follow when moving from developement to production??
@vanipolnedi if you're using REST APIs - you can @return a string ? ```@returns(String)
transaction MyTransaction {
} ........ async function myTransaction(tx) {
return tx.transactionId';
}
```
@vanipolnedi if you're using REST APIs or Node JS client - you can @return a string ? ```@returns(String)
transaction MyTransaction {
} ........ async function myTransaction(tx) {
return tx.transactionId';
}
```
@vanipolnedi if you're using REST APIs or Node JS client - you can @return a string ? ```@returns(String)
transaction MyTransaction {
} ........ async function myTransaction(tx) {
return tx.transactionId';
}
``` see "Returning data from transaction processor functions" for example https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions
[ ](https://chat.hyperledger.org/channel/composer?msg=XxLtzCs9qzKDBAxkd) @ShaikSharuk I'm not aware of a particular checklist - so just use the same as you would for moving any Application into Production.
And you already know that Composer is not suitable for production use:
https://chat.hyperledger.org/channel/composer?msg=bKrLrBcMLc9LsfC24
[ ](https://chat.hyperledger.org/channel/composer?msg=m5krhWRmkXrFGYDgR) @rthatcher No it's from the same version
I resolved this issue, I have restarted the network and now it's working fine
Thank you
Hi guys, when I deploy my bna into 2 Org with 1 peer each, instead of 1 Org with 1 peer each
what does actually happen?
does the bna replicated through the 2 Orgs?
as far as I understand from the documentation, that each org has a set of members (through MSP) and set of peers
so does my bna replicate in both Org?
replicate or deploy, maybe deploy is more accurate
@MaherBouidani yes, the business network is installed as chaincode package, by someone with peer admin authority from each of the respective Organisations - the business network is instantiated on the channel
@MaherBouidani yes, the business network is installed as a chaincode package on the peer node(s), by someone with peer admin authority from each of the respective Organisations - the business network is instantiated on the Fabric channel
[ ](https://chat.hyperledger.org/channel/composer?msg=ee6SjkDF7CGDDQWzJ) @mahoney1 tq @mahoney1 . it is working
Ok guys, I'm installing Ibm extension on vscode, I installed it then it started to activate extension and it failed. Started like this Rebuilding native node modules
> grpc@1.14.2 install
then it went to:
gyp ERR! node -v v8.12.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
tried with the lts of node
Could not rebuild native dependencies Failed to execute command "npm" with arguments "rebuild, grpc, --target=2.0.0, --runtime=electron, --dist-url=https://atom.io/download/electron" return code 1. Please ensure that you have node and npm installed
please help help help
@NursultanMakhanov Not sure if they have a chat channel anywhere (and they won't have on chat.hyperledger.org as it's not part of hyperledger) all I can suggest is you raise a github issue here https://github.com/IBM-Blockchain/blockchain-vscode-extension
Has joined the channel.
Failed to get submitter user1 TypeError: Channel options must be an object with string keys and integer or string values while invoking chaincode in hyperledger fabric
if anybody facing this type of issues
how to write custom errors for rest api . for example : if tx already exists error msg is: {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 4b97293d0ac58a5f982f5ed38aa29fb21c14869713d631cc9c6804c5c973c0fa. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: Error: Failed to add object with ID '7036544469' in collection with ID 'Asset:org.tanla.cpm.Preferences' as the object already exists",
"stack": "Error: Error trying invoke business network with transaction id 4b97293d0ac58a5f982f5ed38aa29fb21c14869713d631cc9c6804c5c973c0fa. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: Error: Failed to add object with ID '7036544469' in collection with ID 'Asset:org.tanla.cpm.Preferences' as the object already exists\n at HLFConnection.invokeChainCode (/home/tanla/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
@vanipolnedi Your application that uses the rest server can present whatever message you want. This response you get from the rest server actually comes from the composer runtime running in fabric. You can't change these messages.
Hello everyone. I am trying to connect a single organisation network to composer. When trying to install the business network i am getting the following error
Error: Error trying install business network. Error: Missing peer objects in install chaincode request
Does anyone know what the problem is please?
Has left the channel.
Hi all, How to return a query result in logic.js to rest-server?
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 220adc1afa80193efbd3c410c99e5ab181d3cc186183412d367da7c0efea3d45. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ReferenceError: response is not defined",
"stack": "Error: Error trying invoke business network with transaction id 220adc1afa80193efbd3c410c99e5ab181d3cc186183412d367da7c0efea3d45. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ReferenceError: response is not defined\n at HLFConnection.invokeChainCode (/home/group/.nvm/versions/node/v8.13.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
If an error occured ,the output will be : {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 220adc1afa80193efbd3c410c99e5ab181d3cc186183412d367da7c0efea3d45. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ReferenceError: response is not defined",
"stack": "Error: Error trying invoke business network with transaction id 220adc1afa80193efbd3c410c99e5ab181d3cc186183412d367da7c0efea3d45. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ReferenceError: response is not defined\n at HLFConnection.invokeChainCode (/home/tanla/.nvm/versions/node/v8.13.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
@padmaja9 Your application that uses the rest server can decide exactly what to display.
Hi experts, is it possible to specify more than one participant type in an acl rule (in permisions.acl file)?
Hi, Is it possible to query the data based on the timestamps?
[ ](https://chat.hyperledger.org/channel/composer?msg=t9Tz2X67oPEFaSuKD) @saikumar3349 yes, see the Historian docs page for examples of queries using timestamp examples https://hyperledger.github.io/composer/latest/business-network/historian
[ ](https://chat.hyperledger.org/channel/composer?msg=2t3B5cqEtxKRTTuQP) @rrishmawi - you can only specify one participant in the Rule, so you could duplicate your rule, or allow "ANY" for the participant and then write a function to use in a 'condition' that you could check against participant types.
This Q/A on Stack Overflow shows some ACL examples but 'item' 3 shows the use of a function in an ACL.
@mahoney1 I have 3 different transactions in my logic.js. I want to findout any of the transaction with transactionId using single query. for example I have three transaction functions(add,update,addupdate). I have done three transactions in three different methods. Now I want to search for a particular transaction using its transactionId. Is it possible to do with a single query? If possible, Please help me out.
[ ](https://chat.hyperledger.org/channel/composer?msg=Kchhg6DhwtaHoropd) @mahoney1 Thanks @mahoney1. It works me well
find by transaction class? eg `query selectTransaction{ description: "choose a specific commodity " statement: SELECT org.acme.biznet.Trade WHERE (transactionId == _$transaction_id ) }` finds the id in the transaction class `Trade`
find by transaction class? eg `query selectTransaction{ description: "choose a specific transaction ID " statement: SELECT org.acme.biznet.Trade WHERE (transactionId == _$transaction_id ) }` finds the id in the transaction class `Trade`
[ ](https://chat.hyperledger.org/channel/composer?msg=mhm5ZimdHM7r9DtPQ) @rthatcher Thanks.
@mahoney1 But I Have three different classes. How to find the transaction amongst three class?
@mahoney1 But I Have three different classes(ADD,UPDATE,ADDUPDATE). How to find the transaction amongst three class?
@mahoney1 But I Have three different classes(ADD,UPDATE,ADDUPDATE). How to find the transaction amongst three classes at a time?
@saikumar3349 3 separate transaction invocations = 3 different transaction IDs
@mahoney1 Yes But I don't Know which transactionId belongs to which class
@mahoney1 Yes But I don't Know which transactionId belongs to which class. I had requirement of searching any class transaction using transactonId with single query.
Hello, I'm facing an issue on composer network ping after deploying new business network.
Error: Error trying to ping. SyntaxError: Unexpected end of JSON input
Can anyone please suggest where to look for the issue.
Has joined the channel.
can anyone guide me as I'm getting error while installing .bna file in Hyperledger Fabric multipeer setup
Error: Error trying install business network. Error: The business network failed to install on 1 or more peers: Response from attempted peer comms was an error: Error: Failed to connect before the deadline
[ ](https://chat.hyperledger.org/channel/composer?msg=7bAvRxm3FRdDPmpM3) @Mehak Try cleaning your docker containers/images.
- Do ./byfn down script first (If you are using byfn network)
- then "docker rm $(docker ps -aq)" (Removes all the currently active/paused containers)
- then "docker rmi
[ ](https://chat.hyperledger.org/channel/composer?msg=rvyrHyktiBExZniMQ) [ ](https://chat.hyperledger.org/channel/composer?msg=7bAvRxm3FRdDPmpM3) @Mehak Try cleaning your docker containers/images.
- Do ./byfn down script first (If you are using byfn network)
- then "docker rm $(docker ps -aq)" (Removes all the currently active/paused containers)
- then "docker rmi
- Do ./byfn down script first (If you are using byfn network)
- then "docker rm $(docker ps -aq)" (Removes all the currently active/paused containers)
- then "docker rmi
- Do ./byfn down script first (If you are using byfn network)
- then "docker rm $(docker ps -aq)" (Removes all the currently active/paused containers)
- then "docker rmi
- Do ./byfn down script first (If you are using byfn network)
- then "docker rm $(docker ps -aq)" (Removes all the currently active/paused containers)
- then "docker rmi
- Do ./byfn down script first (If you are using byfn network)
- then "docker rm $(docker ps -aq)" (Removes all the currently active/paused containers)
- then "docker rmi
@Mehak Try cleaning your docker containers/images.
- Do ./byfn down script first (If you are using byfn network)
- then "docker rm $(docker ps -aq)" (Removes all the currently active/paused containers)
- then "docker rmi
[ ](https://chat.hyperledger.org/channel/composer?msg=opC75eFuo64xKKAaf) @rahul703 Probably your connection profile has problems. Might be syntax error. Check with your connection profile.
[ ](https://chat.hyperledger.org/channel/composer?msg=L75crJmYhKP9tvgiB) @padmaja9 If you have used whole "error" in printing statement, try printing "error.stack" or "error.statusCode" etc. If it doesn't work, you have to parse json to object and display the specific property of the object in print statement.
@mahoney1
```
@returns(String)
transaction MyTransaction {
} ........ async function myTransaction(tx) {
return tx.transactionId';
}
```
Is there a way to return the error that is producing by the function instead of this?
I am calling a 2nd tx processor function from 1st tx function, if 2nd function throws error, it only gets logged in console and 1st tx function completes without throwing error.
@mahoney1
```
@returns(String)
transaction MyTransaction {
} ........ async function myTransaction(tx) {
return tx.transactionId';
}
```
Is there a way to return the error that is producing by the function instead of this?
I am calling a 2nd tx processor function from 1st tx function.When calling the 1st tx functn, if 2nd function throws error, it only gets logged in console and 1st tx function completes without throwing error.
@rahul703 you are trying to use composer 0.19.x against a fabric 1.2 setup. You will either need to switch to fabric 1.1 or move to composer 0.20.x
I'm now using composer 0.19.0 and fabric hlfv1
While importing peer card (following the single org deployment tutorial), I'm getting an error - Failed to import the business network card
keyword: required
dataPath: .peers['peer0.org1.example.com']
schemaPath: #/required
params:
missingProperty: eventUrl
message: should have required property 'eventUrl'
Error: Errors found in the connection profile in the card
Command failed
While importing peer card (following the single org deployment tutorial), I'm getting an error - Failed to import the business network card
keyword: required
dataPath: .peers['peer0.org1.example.com']
schemaPath: #/required
params:
missingProperty: eventUrl
message: should have required property 'eventUrl'
Error: Errors found in the connection profile in the card
Command failed
@rahul703 suggest you move to composer 0.19.18 which is the latest version
[ ](https://chat.hyperledger.org/channel/composer?msg=2DLtfTSkwurCFRmYr) @prasanths96 it worked thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=2DLtfTSkwurCFRmYr) @prasanths96 it worked thanks
Hello all. When trying composer network install i get the following error
"Error: Failed to create Channel. channel name should match Regex /^[a-z][a-z0-9.-]*$/, but got "Channel1"
Command failed"
Channel1 is thecorrect name of my channel. Any ideas where i may be going wrong please?
Hello all. When trying composer network install i get the following error
"Error: Failed to create Channel. channel name should match Regex /^[a-z][a-z0-9.-]*$/, but got "Channel1"
Command failed"
Channel1 is the correct name of my channel. Any ideas where i may be going wrong please?
@ajbill `Channel1` can't be the name of your channel as channel names can only be lower case and you are trying to use a name that starts with a capital C
[ ](https://chat.hyperledger.org/channel/composer?msg=KbsxR9aHL8smYqQos) @rthatcher Thank you for this information, I have a month to put it on just fabric instead of composer, since its clear for me now the direction of composer :) i have a high hope of this tool due to rapid development
Has joined the channel.
in an asset transfer network , how can i submit a transaction for asset visibility to all participants
Hi, I had deployed a business network using yo:hyperledger-composer
I want to access the network on Hyperledger explorer. Can anyone help me to deploy explorer with the composer-network.
Hi, How to add authentication for local rest server
Hi guys, is there any source available on how we can use composer for traceability of an asset. I am looking at Animal Tracking Network but i fail to understand how regulator will be able to track animal or history of movement ?
Hi experts, i am seeing this logged warning "MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 exit listeners added. Use emitter.setMaxListeners() to increase limit", when doing "docker logs rest", where rest is the docker container of the composer rest server. Any one knows about it? i have seen it reported as a bug in github but it is fixed. i am not sure why it happens with me, should i ignore?
[ ](https://chat.hyperledger.org/channel/composer?msg=jjbcGJSJjSmRzst2d) @Techie look at https://hyperledger.github.io/composer/v0.19/integrating/enabling-rest-authentication
[ ](https://chat.hyperledger.org/channel/composer?msg=bWzS9uQoXb5ga2kfN) @saeedi Look at https://hyperledger.github.io/composer/unstable/reference/historian.html, it is a reocrd of every transaction happened for the specific business network
[ ](https://chat.hyperledger.org/channel/composer?msg=Y9Jn6gSRJypavqJWu) @ArwaKanani I would suggest you look at the Access Control tutorial: https://hyperledger.github.io/composer/latest/tutorials/acl-trading
and the ACL reference Doc: https://hyperledger.github.io/composer/latest/reference/acl_language.html
[ ](https://chat.hyperledger.org/channel/composer?msg=bWzS9uQoXb5ga2kfN) @saeedi There is also some good information on Historian and Historian Queries in the Knowledge Wiki:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#historian
That link shows the workaround for the problem of tracking the history of an Asset in Composer.
As you look into the detail of Composer, please be aware of this announcement over the future development and support of Composer:
https://lists.hyperledger.org/g/composer/message/125
@rrishmawi Thanks. What i am trying to do is, suppose there is a car and we have registered that car on blockchain and it returns the transaction id. We will be using that to verify whether it has been recorded on blockchain or not?. So at this point we will be able to achieve that goal. But if segregation happens, like car is about to be scarped but its useful parts are extracted and then those parts are also recorded on blockchain. So how can we track which part belong to which car or if a user want to see the authenticity of part that he did buy.
[ ](https://chat.hyperledger.org/channel/composer?msg=DBGBXCW2GCubjsLxr) @rrishmawi without github, I need it with my local passwords
[ ](https://chat.hyperledger.org/channel/composer?msg=XtyfQkMpS9a6Nmsyh) @saikumar3349 there is a separate chat channel for #hyperledger-explorer :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=zftq4xqvroS7daAGC) @Techie You need to setup your own identity provider. look at this link https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn , the example customize rest server to use JWT. However, you need an identity provider to get that JWT token somehow. i personally used ASP.NET Core identity with JWT authentication with username and password.
[ ](https://chat.hyperledger.org/channel/composer?msg=zKucNyKjrmoLn3sXd) @saeedi My initial thoughts can be that this is something that you can do in your business model, you can create Part asset and associated with the Car asset throw a property or a relationship. you can use the car part number as the identifier of the Part asset, and the chassis number for the Car asset.
[ ](https://chat.hyperledger.org/channel/composer?msg=zKucNyKjrmoLn3sXd) @saeedi My initial thoughts can be that this is something that you can do in your business model, you can create Part asset and associated with the Car asset through a property or a relationship. you can use the car part number as the identifier of the Part asset, and the chassis number for the Car asset.
what is the range of Integer in data types ?? is there any data type of Big Integer??
what is the range of Integer in data types ( in model file ) ?? is there any data type of Big Integer??
in model file, i want asset to be identified by integer . is it possible to identify the asset other than string??
@rrishmawi oh okay. Thanks i will look into it. Is there a tutorial for relationships? other than this https://hyperledger.github.io/composer/unstable/api/common-relationship ? Like implemented into sample etc ?
[ ](https://chat.hyperledger.org/channel/composer?msg=vsJpPCeeSGyBRwKQN) i want store 20 digit number . which datatype is preferable?
[ ](https://chat.hyperledger.org/channel/composer?msg=eDzKAFMm4HFTWxwGh) @saeedi you can find plenty of samples in https://github.com/hyperledger/composer-sample-networks/tree/master/packages
Hi, we are trying to store the value 9223372036854775807 in long data type. While we query for the value it is rounding off and returning 9223372036854776.
Hi, we are trying to store the value 9223372036854775807 in long data type. While we query for the value it is rounding off and returning 9223372036854776. Please Help to resolve
Can we apply ACL on transactions? not resources?
[ ](https://chat.hyperledger.org/channel/composer?msg=jBDuDKXygT7HRsQRN) @rrishmawi Yes you can :-) . A Transaction *is* a resource in the namespace so can be used in an ACL. For example - from the Access Control Tutorial we see this rule for the Trade transaction:
```
rule R2_EnableTradeTxn {
description: "Enable Traders to submit transactions"
participant: "org.example.trading.Trader"
operation: ALL
resource: "org.example.trading.Trade"
action: ALLOW
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=jBDuDKXygT7HRsQRN) @rrishmawi Yes you can :-) . A Transaction *is* a resource in the namespace so can be used in an ACL. For example - from the Access Control Tutorial we see this rule for the Trade transaction:
```
rule R2_EnableTradeTxn {
description: "Enable Traders to submit transactions"
participant: "org.example.trading.Trader"
operation: ALL
resource: "org.example.trading.Trade"
action: ALLOW
}
```
https://hyperledger.github.io/composer/latest/tutorials/acl-trading
[ ](https://chat.hyperledger.org/channel/composer?msg=5qBvpJTF6TuNJLnjA) @saikumar3349 see https://stackoverflow.com/questions/1379934/large-numbers-erroneously-rounded-in-javascript
[ ](https://chat.hyperledger.org/channel/composer?msg=GzcLaZNnM4HqL42N2) @rthatcher Thanks.
Has joined the channel.
Is there a way to generate a REST API as an independent Node application like the command composer-rest-server does?
https://www.hyperledger.org/blog/2018/11/28/conducting-data-with-concerto-and-hyperledger-fabric
New blog post on how to use Concerto (the modelling language for Composer) with Node.js Fabric chaincode.
[ ](https://chat.hyperledger.org/channel/composer?msg=ugZjCRDH2wS6L3nHe) @dselman Is concerto sort of the replacement for Composer? It looks similar. @dselman
Concerto is the modelling part of Composer broken out into its own module
This allows you to use those models in Node.js chaincode, on the web or in Node.js
Has joined the channel.
If I want to start my own repository for a sample code using fabric-sdk-node, how do I share it? Will need 1-2 more collaborators to join me. Since `composer` won't be updated for the latest Fabric version, I thought writing a nodejs chaincode for one of the starter code in https://github.com/hyperledger/composer-sample-networks/tree/master/packages would help people migrate (relatively) easily.
datetime in model file is storing UTC time. but i want IST time to be stored.. any suggestions please?
```tutorial-network composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName tutorial-network
composer
I have followed the docs exaclty
`Unknown arguments: card, businessNetworkName, runtime, install`
what!!!!
thgis worked fine a few days ago
this worked fine a few days ago
```➜ tutorial-network node -v
v8.12.0
➜ tutorial-network npm -v
6.4.1
➜ tutorial-network composer -v
v0.20.4
➜ tutorial-network```
```composer card list --card
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
```
do I not have access to runtime install anymore?
Hi guys, can anyone please explain what does each one of Create, Update, Read, and Delete operations refer to in access control list?
and when I need to restrict a participant on asset, do I type the resource:, participant: as my name space.{particpant/asset}
or org.hyperledger.composer.system ?
.........
the idea is still not clear in my mind...since does create (as example) refer to creating other participants card or create resources?...I did make create out of the rule, but still I can create other participants cards
@MaherBouidani docs for acl are right here https://hyperledger.github.io/composer/v0.16/reference/acl_language.html
Thank you patrick @PatrickOrtell...I know it
It is not useful
not clear at all
I have 5 participants in my network, I want to restrict each one of them to create a participant (not identity card) in the network
sorry @MaherBouidani I guess I am not much help, I am having a hard time wit the docs too right now :P
Yeah, It is not clear and a little bit confusing
good luck
:D
Thanks
For example, you need to restrict the participants first and then write a rule to all everything
you cannot just restrict without allowing everything after these restrictions
This takes me 1 week to realize that !!
the order is important in acl
the order of your rules !
frustrating
As the docs state...
```
Rules are evaluated from top (most specific) to bottom (least specific). As soon as the Participant, Operation and Resource match for a rule then subsequent rules are not evaluated.
This ordering makes the decision table faster to scan for both humans and computers. If no ACL rule fires then the access control decision is DENY.
```
In model file, DateTime filed is storing time in UTC format. Is it possible to change to IST format ?
Has joined the channel.
@PatrickOrtell you are following the docs for composer 0.16.x but you are using composer 0.20.x. You should use the latest documentation for composer 0.20 https://hyperledger.github.io/composer/latest
If however you are trying to use fabric 1.0 then you would need to be using composer 0.16.x
Has joined the channel.
can you please help to find what exactly this error is "
2018-11-29 09:36:22.164 UTC [common/deliver] deliverBlocks -> WARN 057 [channel: mychannel] Client authorization revoked for deliver request from 172.22.0.1:56933: Failed evaluating policy on signed data during check policy on channel [mychannel] with policy [/Channel/Application/Readers]: [Failed to reach implicit threshold of 1 sub-policies, required 1 remaining]
2018-11-29 09:36:22.166 UTC [common/deliver] Handle -> WARN 058 Error reading from 172.22.0.1:56933: rpc error: code = Canceled desc = context canceled
2018-11-29 09:36:22.290 UTC [protoutils] ValidateProposalMessage -> WARN 059 channel []: creator's signature over the proposal is not valid: The signature is invalid"
Has joined the channel.
Where can i find best tutorial for hyper ledger composer development and network setup?
I'm trying to capture events emitted at the end of the transaction, but unable to catch them. for example
Composer version : 0.20.4
Fabric version: 1.2.1
I'm launching composer-rest-server with localhost:3000, multi-user: true, and event publication over WebSockets set to true.
I'm listening for events using "wscat -c ws://localhost:3000" in separate terminal window.
Authentication is with Github (successful). Wallet upload of business card is fine and I'm able to perform transactions without any errors. transactions are even committing properly. However, no matter what I try, I'm unable to capture the events which are supposed to have been emitted after successful transaction.
Note: I'm also unable to see console log in Chrome Console, even though I'm doing a console.log() call in the transaction code.
Any pointers as to what I could be missing here? I'm at my wit's end trying to understand why I'm unable to capture the event!
model file (.cto)
--------------
asset TrialAsset identified by name {
o String name
}
transaction TrialTX {
o String message
}
event TXEvent {
o String message
}
logic.js
---------
/**
* Sample transaction processor function.
* @param {com.bharatontech.pocong.TrialTX} tx
* @transaction
*/
async function trialtx(tx)
{
var message = tx.message;
var NS = 'com.bharatontech.pocong';
const factory = getFactory();
var tmp = factory.newResource(NS,'TrialAsset', "trialass1");
//save the trial asset to the registry
const trialRegistry = await getAssetRegistry(NS+'.TrialAsset');
await trialRegistry.add(tmp);
const txEvent = factory.newEvent(NS, 'TXEvent');
txEvent.message = message;
console.log(message);
emit(txEvent);
}
I'm trying to capture events emitted at the end of the transaction, but unable to catch them.
Details about build setup:
Composer version : 0.20.4
Fabric version: 1.2.1
I'm launching composer-rest-server with localhost:3000, multi-user: true, and event publication over WebSockets set to true.
I'm listening for events using "wscat -c ws://localhost:3000" in separate terminal window.
Authentication is with Github (successful). Wallet upload of business card is fine and I'm able to perform transactions without any errors. transactions are even committing properly. *However, no matter what I try, I'm unable to capture the events which are supposed to have been emitted after successful transaction.
*
Note: I'm also unable to see console log in Chrome Console, even though I'm doing a console.log() call in the transaction code.
Any pointers as to what I could be missing here? I'm at my wit's end trying to understand why I'm unable to capture the event!
model file (.cto)
--------------
asset TrialAsset identified by name {
o String name
}
transaction TrialTX {
o String message
}
event TXEvent {
o String message
}
logic.js
---------
/**
* Sample transaction processor function.
* @param {com.bharatontech.pocong.TrialTX} tx
* @transaction
*/
async function trialtx(tx)
{
var message = tx.message;
var NS = 'com.bharatontech.pocong';
const factory = getFactory();
var tmp = factory.newResource(NS,'TrialAsset', "trialass1");
//save the trial asset to the registry
const trialRegistry = await getAssetRegistry(NS+'.TrialAsset');
await trialRegistry.add(tmp);
const txEvent = factory.newEvent(NS, 'TXEvent');
txEvent.message = message;
console.log(message);
emit(txEvent);
}
I'm trying to capture events emitted at the end of the transaction, but unable to catch them. for example
Composer version : 0.20.4
Fabric version: 1.2.1
I'm launching composer-rest-server with localhost:3000, multi-user: true, and event publication over WebSockets set to true.
I'm listening for events using "wscat -c ws://localhost:3000" in separate terminal window.
Authentication is with Github (successful). Wallet upload of business card is fine and I'm able to perform transactions without any errors. transactions are even committing properly. However, no matter what I try, I'm unable to capture the events which are supposed to have been emitted after successful transaction.
Note: I'm also unable to see console log in Chrome Console, even though I'm doing a console.log() call in the transaction code.
Any pointers as to what I could be missing here? I'm at my wit's end trying to understand why I'm unable to capture the event!
model file (.cto)
--------------
asset TrialAsset identified by name {
o String name
}
transaction TrialTX {
o String message
}
event TXEvent {
o String message
}
logic.js
---------
/**
* Sample transaction processor function.
* @param {com.bharatontech.pocong.TrialTX} tx
* @transaction
*/
async function trialtx(tx)
{
var message = tx.message;
var NS = 'com.bharatontech.pocong';
const factory = getFactory();
var tmp = factory.newResource(NS,'TrialAsset', "trialass1");
//save the trial asset to the registry
const trialRegistry = await getAssetRegistry(NS+'.TrialAsset');
await trialRegistry.add(tmp);
const txEvent = factory.newEvent(NS, 'TXEvent');
txEvent.message = message;
console.log(message);
emit(txEvent);
}
I'm trying to capture events emitted at the end of the transaction, but unable to catch them.
Details about build setup:
Composer version : 0.20.4
Fabric version: 1.2.1
I'm launching composer-rest-server with localhost:3000, multi-user: true, and event publication over WebSockets set to true.
I'm listening for events using "wscat -c ws://localhost:3000" in separate terminal window.
Authentication is with Github (successful). Wallet upload of business card is fine and I'm able to perform transactions without any errors. transactions are even committing properly. However, no matter what I try, I'm unable to capture the events which are supposed to have been emitted after successful transaction.
Note: I'm also unable to see console log in Chrome Console, even though I'm doing a console.log() call in the transaction code.
Any pointers as to what I could be missing here? I'm at my wit's end trying to understand why I'm unable to capture the event!
model file (.cto)
--------------
asset TrialAsset identified by name {
o String name
}
transaction TrialTX {
o String message
}
event TXEvent {
o String message
}
logic.js
---------
/**
* Sample transaction processor function.
* @param {com.bharatontech.pocong.TrialTX} tx
* @transaction
*/
async function trialtx(tx)
{
var message = tx.message;
var NS = 'com.bharatontech.pocong';
const factory = getFactory();
var tmp = factory.newResource(NS,'TrialAsset', "trialass1");
//save the trial asset to the registry
const trialRegistry = await getAssetRegistry(NS+'.TrialAsset');
await trialRegistry.add(tmp);
const txEvent = factory.newEvent(NS, 'TXEvent');
txEvent.message = message;
console.log(message);
emit(txEvent);
}
@rthatcher Hi I am getting the following error {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]",
"stack": "Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]\n at client.getUserContext.then.then.catch (/home/angular/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)\n at
@rthatcher Hi I am getting the following error {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]",
"stack": "Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]\n at client.getUserContext.then.then.catch (/home/angular/.nvm/versions/node/v8.12.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:395:34)\n at
@rthatcher In console i got this message Treating unknown remoting type "file" as "any"
Treating unknown remoting type "file" as "any"
Unhandled error for request GET /api/system/ping: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
[ ](https://chat.hyperledger.org/channel/composer?msg=e6HFeF97wzi5wkfPe) @medipal The place to start with Developing for Composer is the Developer Tutorial: https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
For Fabric Network Setup, then the Fabric Docs are the place. For an introduction to using Composer with a Multi Org Fabric you could look at the Multi-Org tutorial: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
[ ](https://chat.hyperledger.org/channel/composer?msg=oSmEqeZ96reu2xiN5) @sureshtedla _Have you enabled Authentication (with Github/Google)? The token sometimes doesn't get stored properly. Best to use an "Incognito Window" in your browser, this way old tokens (which show up but aren't valid don't confuse you.
If it is during business card upload, make sure that the business card is not invalid (already imported once before if it is not an exported card).
To check, build your composer solution once more, and re-launch rest-server. Use the business card which has been newly generated (and also ensure that it is built from the same machine as where the network is running)If you still face the issue (even with incognito window and valid business card), let me know.
@zorrothefox - the console.log() output for a Transaction will be shown in the Docker Log of the Chaincode container (the container with the long name starting dev...)
[ ](https://chat.hyperledger.org/channel/composer?msg=2KygPpYX6bntujMPD) @rthatcher thanks, will check that... any idea why event doesn't get captured by wscat?
[ ](https://chat.hyperledger.org/channel/composer?msg=Xy4mXoq4cKgZz8ESq) @zorrothefox @zorrothefox Thanks I will try this
@sureshtedla - I would think that the error you are seeing with *enrollment* is because you have imported a Card that contains a 'one-time' secret that has already been used.
When an identity is issued (and a card created), the card contains a Name and a One-time secret. The first time that the card is used to connect to the network the Crypto Credentials are downloaded and the Secret is invalidated. The 'trick' is to export the card to a new .card file immediately after first use - then you have a version that you can re-use and re-import for testing.
can you please help to find what exactly this error is "
2018-11-29 09:36:22.164 UTC [common/deliver] deliverBlocks -> WARN 057 [channel: mychannel] Client authorization revoked for deliver request from 172.22.0.1:56933: Failed evaluating policy on signed data during check policy on channel [mychannel] with policy [/Channel/Application/Readers]: [Failed to reach implicit threshold of 1 sub-policies, required 1 remaining]
2018-11-29 09:36:22.166 UTC [common/deliver] Handle -> WARN 058 Error reading from 172.22.0.1:56933: rpc error: code = Canceled desc = context canceled
2018-11-29 09:36:22.290 UTC [protoutils] ValidateProposalMessage -> WARN 059 channel []: creator's signature over the proposal is not valid: The signature is invalid" @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=iFTRdBj2eCGwkEqCa) @ShaikSharuk I don't recognise that error message. What version of Composer and Fabric are you using? - are you following any particular tutorial or guide? What task/command were you running to generate that error?
@zorrothefox a few things (I tried it in Playground and I can see the emitted event, and console.log message FYI) 1. Can you check in Playground....All Transactions under 'Test' ....'View Record' whether an event was emitted for the `TrialTX` transaction ? Then we can see why your `wscat` doesn't catch it (separate matter)
yes, in composer playground, it is emitted
yes, in composer playground, it is emitted
`{
"$class": "com.bharatontech.pocong.TXEvent",
"message": "hi there",
"eventId": "99ab2cc6-7edb-4cfb-870f-e93b0a2f2bae#0",
"timestamp": "2018-11-29T12:28:33.131Z"
}`
console log : `hi there`
yes, in composer playground, it is emitted
{
"$class": "com.bharatontech.pocong.TXEvent",
"message": "hi there",
"eventId": "99ab2cc6-7edb-4cfb-870f-e93b0a2f2bae#0",
"timestamp": "2018-11-29T12:28:33.131Z"
}
console log : hi there
I forgot to mention that I'd tested it in composer playground already.
Funny thing is that I tried another sample (developerworks/iot-perishable-network ) and the *event fires and is caught in wscat with same setup of fabric, composer etc.*.
I even "Diff"ed all the files (of course source code was different, but only to check whether env settings were same) to see whether some stuff had got messed up in my own project.
Funny thing is that I tried another sample (developerworks/iot-perishable-network ) and the *event fires and is caught in wscat with same setup*.
I even "Diff"ed all the files (of course source code was different, but whether env settings were same) to see whether some stuff had got messed up in my own project.
Funny thing is that I tried another sample (developerworks/iot-perishable-network ) and the *event fires and is caught in wscat with same setup of fabric, composer etc.*.
I even "Diff"ed all the files (of course source code was different, but whether env settings were same) to see whether some stuff had got messed up in my own project.
Hyperledger composer rest server not responding after some idle time
Does latest version of composer support Fabric 1.3 features?
[ ](https://chat.hyperledger.org/channel/composer?msg=YkwrKwLKEFTRdwQSk) @purandam Is this a local instance of composer rest server (or on some remote server - say aws ec2 instance)?
[ ](https://chat.hyperledger.org/channel/composer?msg=ptoM89XTpNPBxbudD) @zorrothefox Remote Server. Using the card I am connecting the server.
[ ](https://chat.hyperledger.org/channel/composer?msg=xAJaDbmHh78MxMYNE) @purandam I've faced this issue when I ssh into the remote server, and then launch the rest server. After some idle time, my session times out, and the rest-server hangs because of that. best way is to ssh into the remote server, run tmux and start the rest-server within the tmux session. then hit "ctrl+b followed by d'. you'll get back to your ssh session. now you can log out and the rest-server will run without any issues. Try this
https://askubuntu.com/questions/8653/how-to-keep-processes-running-after-ending-ssh-session
and let me know if it helps you!
[ ](https://chat.hyperledger.org/channel/composer?msg=xAJaDbmHh78MxMYNE) @purandam I've faced this issue when I ssh into the remote server, and then launch the rest server. After some idle time, my session times out, and the rest-server hangs because of that. best way is to ssh into the remote server, run tmux and start the rest-server within the tmux session. then hit "ctrl+b followed by d'. you'll get back to your ssh session. now you can log out and the rest-server will run without any issues. Try this and let me know if it helps you!
[ ](https://chat.hyperledger.org/channel/composer?msg=qyRceMEiqsjiKBCJ2) @zorrothefox I am using Screen but problem is remain same.
[ ](https://chat.hyperledger.org/channel/composer?msg=B6x542bQWYici7wDs) @purandam ok... Does the server hang after submitting a transaction?
Unhandled error for request GET /api/product: Error: REQUEST_TIMEOUT
at Timeout._onTimeout (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/Peer.js:94:20)
at ontimeout (timers.js:475:11)
at tryOnTimeout (timers.js:310:5)
at Timer.listOnTimeout (timers.js:270:5
[ ](https://chat.hyperledger.org/channel/composer?msg=adKYbN5HmAB3PG5jC) @zorrothefox Unhandled error for request GET /api/Bank: Error: REQUEST_TIMEOUT
at Timeout._onTimeout (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/Peer.js:94:20)
at ontimeout (timers.js:475:11)
at tryOnTimeout (timers.js:310:5)
at Timer.listOnTimeout (timers.js:270:5
[ ](https://chat.hyperledger.org/channel/composer?msg=GSnTAM5hvvBvXZjHf) Is there any probable solution.
[ ](https://chat.hyperledger.org/channel/composer?msg=6JD8v7tjJhb5XCRuP) @abilashs No it only tolerates working with Fabric 1.3, it doesn't exploit any features of 1.3
[ ](https://chat.hyperledger.org/channel/composer?msg=nHsuqSwnoLACjy5as) @davidkel Thanks. Any thoughts on when we can use composer to build Zk proof solutions like Identity Mixer on composer?
@abilashs Composer is highly unlikely to get any new features.
https://lists.hyperledger.org/g/composer/message/125
Composer is still good for a demo/prototype or even poc, but not for a production deployment going forward. Many of the good things in Composer are being added to the native Fabric tools now.
@abilashs Composer is highly unlikely to get any new features. See
https://lists.hyperledger.org/g/composer/message/125
Composer is still good for a demo/prototype or even poc, but not for a production deployment going forward. Many of the good things in Composer are being added to the native Fabric tools now.
@zorrothefox hmm unusual , did you follow the environmental setup as written up here so the REST server will publish over Websockets - assume it is all local, so easy to restart your REST server? -> https://hyperledger.github.io/composer/latest/integrating/publishing-events
[ ](https://chat.hyperledger.org/channel/composer?msg=QyQXsyo5wnLiLqtPX) @davidkel Thanks for sharing. Composer was really handy..
[ ](https://chat.hyperledger.org/channel/composer?msg=e7B8j4SDgFcL4XDrW) @mahoney1 Yes, that's exactly the document I followed. But still not getting the event (and yes, I'm testing this out on my local machine)
[ ](https://chat.hyperledger.org/channel/composer?msg=ci7LsxMzSjpjrX9yt) in model file ????
[ ](https://chat.hyperledger.org/channel/composer?msg=359anKzz4Rugj6x3D) @vanipolnedi @dselman @rthatcher
@rthatcher is there any way to retrieve the transactionid for a submitted transaction??
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=WomJ7X2B5nmvkCoyx) @ShaikSharuk I think if you emit an event at the end of the transaction, the event id is the same as the transaction id. So you can retrieve it in this way.
[ ](https://chat.hyperledger.org/channel/composer?msg=WomJ7X2B5nmvkCoyx) @ShaikSharuk I think if you emit an event at the end of the transaction, the event id is the same as the transaction id. So you can retrieve it in this way. Refer https://hyperledger.github.io/composer/latest/applications/subscribing-to-events
[ ](https://chat.hyperledger.org/channel/composer?msg=DdQmBXq8KivHtan48) @davidkel Thanks!! duh... I feel like an idiot, Ill give it shot later tonight!! Thanks!!
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=BWHDkh23b9FH5iZ8G) @mahoney1 Your question made me think "What if the problem is only on my local machine?", So I tested on my localhost... no event firing. Then I launched my rest-server on my aws ec2 instance and tested the event with wscat. Sure enough, it worked there without any issues!
[ ](https://chat.hyperledger.org/channel/composer?msg=BWHDkh23b9FH5iZ8G) @mahoney1 Your question made me think "What if the problem is only on my local machine?", So I tested on my localhost... no event firing.
Then I launched my rest-server on _my aws ec2 instance and tested the event with wscat_.* Sure enough, it worked there without any issues!*
In summary, My project works fine on a remote server, but not on my localhost. Seeing this, I'd think that there is a problem in my local environment. But then I'm able to run other samples with events firing as expected on my localhost!!!!
So what could be the issue here? I'm at a loss!
[ ](https://chat.hyperledger.org/channel/composer?msg=BWHDkh23b9FH5iZ8G) @mahoney1 Your question started me thinking...
"What if the problem is only on my local machine?", So I tested on my localhost... no event firing. no surprise there. :expressionless:
Then I launched my rest-server on _my aws ec2 instance and tested the event with wscat_.
*Surprise Surprise, it worked there without any issues!* :astonished:
In summary, My project works fine on a remote server, but not on my localhost. Seeing this, I'd think that there is a problem in my local environment. But then I'm able to run other samples with events firing as expected on my localhost!!!!
So what could be the issue here? I'm at a loss! :weary:
[ ](https://chat.hyperledger.org/channel/composer?msg=BWHDkh23b9FH5iZ8G) @mahoney1 Your question started me thinking...
"What if the problem is only on my local machine?", So I tested on my localhost... no event firing. no surprise there.:expressionless:
Then I launched my rest-server on _my aws ec2 instance and tested the event with wscat_.
*Surprise Surprise, it worked there without any issues!* :astonished:
In summary, My project works fine on a remote server, but not on my localhost. Seeing this, I'd think that there is a problem in my local environment. But then I'm able to run other samples with events firing as expected on my localhost!!!!
So what could be the issue here? I'm at a loss! :weary:
@mahoney1 Thanks for all the support! I could finally solve this issue with your assistance! :thumbsup:
Has joined the channel.
Has joined the channel.
hi, when getting an asset from the rest server explorer, is there a way to add the `resolve=true` querystring parameter to the URL?
oh, I guess `?resolve=true` doesn't actually work. I found that in the generated angular app and thought that it would work the same as calling the asset register's `.resolve` method in the composer client code
so my next question, is there a way to resolve relationships through the rest server?
Has joined the channel.
Hi.
I followed the developer tutorial on this page: https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
and tgen issued an identity for a participant following this page: https://hyperledger.github.io/composer/latest/managing/identity-issue
How can I start angular using the new identity card ?
should I generate a new angular project for every card? using this command yo hyperledger-composer:angular
is there a way to start one angular project for several cards?
Im not sure where to ask, but I am making a public repo for https://github.com/IBM/Decentralized-Energy-Composer using the `fabric-sdk-node` and `nodejs-shim` API to demonstrate a way to migrate from `composer` and looking for 1-2 more people to contribute with me, since I am facing some challenges myself. Anyone interested please message me.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZJuyhwkDGkTfqMCcx) Anyone got any idea?
Has joined the channel.
may i know the difference between connecting multiple hosts( each peer on different host ) in single organization and connecting multiple hosts on multi organizations ( like one peer in one org ) ?? i'm new to hyperledger . please help me
@rthatcher @mahoney1 @zorrothefox I am storing array of concepts in array, to find if any value is existing in the array , then I have to traverse the entire object, is there any way to store in form key value pairs, so that I can retreive them based on key.??
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=FRHjws3wB83EbCanE) @prasanths96 I'm surprised that the first TP function completes without error. I thought that both TP functions would be running in the context of a single transaction, and that any error thrown in the second function would also cause the entire transaction to get rolled back.
so the code you posted is in your client app right? Which platform are you using?
I have 12 years of experience in C++, and C#
so not a web developer unfortunately!
[ ](https://chat.hyperledger.org/channel/composer?msg=TgmiC4EjchfnNWjGM) @doowb Have you tried using a "filter" ?
They are described in the Composer docs towards the end of this page: https://hyperledger.github.io/composer/latest/business-network/query
And there are more examples and explanations in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#filters
?filter={"where":{"include":"resolve"}
?filter[include]=resolve
[ ](https://chat.hyperledger.org/channel/composer?msg=yckranD55L2rLzaWc) @flyaked I think you will find this Blog and the example code useful: https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
[ ](https://chat.hyperledger.org/channel/composer?msg=9CNsKBDcReNuQg3LA) @composer - If you are new to Hyperledger and Composer you should be aware of the future of Composer. See
https://lists.hyperledger.org/g/composer/message/125
Composer is still good for a demo/prototype or even poc, but not for a production deployment going forward. Many of the good things in Composer are being added to the native Fabric tools now.
To answer your questions, running Fabric nodes (peers, orderers etc) on *multiple hosts* is a matter of understanding the connection profile (connection.json) and understanding basic Network Addressing and Conectivity.
To work with multiple Organisations you will need more background in Fabric including certificates.
This page in the Fabric documentation should help with understanding the Multi Org scenario: https://hyperledger-fabric.readthedocs.io/en/latest/network/network.html
There is an example of using Composer with a Multi-Org Fabric on a single host - not a real world scenario, but a useful test and learning experience: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
@rthatcher i want to connect two organizations on two different hosts ?? can u please help me out
@rthatcher @mahoney1 @zorrothefox i want to connect two organizations on two different hosts ?? can u please help me out
[ ](https://chat.hyperledger.org/channel/composer?msg=Kku6pGDga4x86nHk2) @ShaikSharuk Maybe you could use a query to do the grunt work... https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#queries
@ShaikSharuk Concepts are not keyed resources. Use `indexOf` perhaps or do it [more efficiently](https://gamealchemist.wordpress.com/2013/05/01/lets-get-those-javascript-arrays-to-work-fast/) perhaps ? If you mean to find from the ledger, use CONTAINS in a query (see the [wiki](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--queries-and-query-support--examples) example 4 in table. Alternative would be to try loopback filters on the REST APIs ?
@ShaikSharuk Concepts are not keyed resources. Use `indexOf` perhaps or do it [more efficiently](https://gamealchemist.wordpress.com/2013/05/01/lets-get-those-javascript-arrays-to-work-fast/) perhaps ? If you mean to find from the ledger, use CONTAINS in a query (see the [wiki](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--queries-and-query-support--examples) example 4 in table). Alternative would be to try loopback filters on the REST APIs ?
[ ](https://chat.hyperledger.org/channel/composer?msg=MQenaWaafLPjbS7mC) @mahoney1 how can we use indexOf in case of concept, if I have 4 fields in a concept , but we need to query with one of those fields, can you please explain how to solve this situation
[ ](https://chat.hyperledger.org/channel/composer?msg=4aB3SDxZPNGDwkBLe) @zorrothefox In this scenario i m getting entire asset, but i want only the required concept from concept array. is it possible, it its possible let me know how
[ ](https://chat.hyperledger.org/channel/composer?msg=dxmYJro7gT4MuXvJk) @composer These 2 Blogs should help you understand what you need to do:
https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f
https://medium.com/hyperlegendary/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-bfbe4e38b6c6
and the 2 links I sent you earlier.
[ ](https://chat.hyperledger.org/channel/composer?msg=SqRdnmNvh9GAF5u2m) @ShaikSharuk I fail to see why you cannot step through the concept array after knowing that it is having the element. There is no "gas limit" here and stepping through an array is really not a very complex operation.
[ ](https://chat.hyperledger.org/channel/composer?msg=SqRdnmNvh9GAF5u2m) @ShaikSharuk I fail to see why you cannot step through the concept array after knowing that it is having the element. There is no "gas limit" here and stepping through an array is really not a very complex operation. Could you explain the context due to which you want to perform it without stepping through the array?
[ ](https://chat.hyperledger.org/channel/composer?msg=SqRdnmNvh9GAF5u2m) @ShaikSharuk I fail to see why you cannot step through the concept array after knowing that it is having the element. There is no "gas limit" here unlike in public blockchains such as Ethereum, and stepping through an array is really not a very complex operation. Could you explain the context due to which you want to perform it without stepping through the array?
[ ](https://chat.hyperledger.org/channel/composer?msg=aRx3oimBsBHkFKecb) @zorrothefox I want a much simpler operation instead of iterating over array, if we use array of assets , instead of array of concepts, can we get index by passing the asset primary key??
Has joined the channel.
Is there a conversion tool / tutorial to convert composer bna to simple fabric code?
Is there a conversion tool / tutorial to convert compose bna to simple fabric code?
[ ](https://chat.hyperledger.org/channel/composer?msg=8MeRb4QgqENF96aPo) @varinder There is no simple tool and there is unlikely to be one. There will be some guidance on how to port a Composer Business Network to Fabric - unfortunately I don't know when it will be available.
Has joined the channel.
Good morning, first time hyperledger user. I want to build a small app allowing participants to share securely data. Each participant wants to share data within a group of other participants. From what I understood so far, I could make a _channel_ for each group and put tx there. But it is not possible to use composer to create channels by an sdk, right ?
Good morning guys, I really appreciate a help please
Hello guys, I really appreciate a help please
I have asset that has a relationship to particpants
when I send a POST in REST to create the asset
It gives me this erro
Screen Shot 2018-11-30 at 11.45.18 PM.png
Note: Those participants filed should be empty as sending POST, cuz I need to fill it using other smart contracts
I am just creating a template of Asset Order
Screen Shot 2018-11-30 at 11.46.42 PM.png
@MaherBouidani see https://stackoverflow.com/questions/53086387/invalid-json-data-error-in-composer-rest-server
@rsoeldner You can't use composer to perform any operational functionality on a fabric apart from being able to install/start/upgrade business networks. Composer requires a pre-set up fabric and channels. You deploy a business network to a single channel but you can deploy the same business network to more than 1 channel.
@rsoeldner If you are new to Hyperledger and Composer you should be aware of the future of Composer. See
https://lists.hyperledger.org/g/composer/message/125
Composer is still good for a demo/prototype or even poc, but not for a production deployment going forward. Many of the good things in Composer are being added to the native Fabric tools now.
Has joined the channel.
@davidkel the problem is that I am trying to add an asset
This asset has a relationship to the participants
these data I want it to be added when invoke another smart contract
so I do not want to add any data
in the asset
It is just a template Order
how I can change the code to do so?
the asset is only identified by ID
which mean ID is a mandatory field to be filled
the others I want it to leave it blank (template)
Hi,
I have my composer-rest-server setup for multiple user (Github auth, multi-wallet). Now I have created a client app for using the REST API.
This clientapp will have a "Login with Github" button, which should do the authentication and get the access token from my REST server.
*Any idea how I can do this? *
Hi,
I have my composer-rest-server setup for multiple user (Github auth, multi-wallet). Now I have created a client app for using this REST API server endpoints.
This clientapp will have a "Login with Github" button, which should do the authentication and get the access token from my REST server. However, composer-rest-server does not expose any way to get the access-token from it programatically. Though it does have an input field which displays the token, my client app would not be able to get this data normally.
Any idea how my client application could get this auth_token? I looked up Simon Stone's post where he talks about the access_token being set in a cooke, and have even managed to "see" this token using Postman Interceptor. However, I'm still not able to understand how to get this token so that my client app can interact with the server.
@davidkel thank you very much for providing these informations.
Has joined the channel.
Hello. Trying to reinstall hyperledger from the tutorial, on MacOS... But it seems composer-cli can't download fse, nor grpc-precomplied. As they don't exist... I've node 6.4 (from homebrew), and I think this is the problem. and I can't find a way to downgrade to 6.3. any suggestions ?
Hello. Trying to reinstall hyperledger from the tutorial, on MacOS... But it seems composer-cli can't download fse, nor grpc-precomplied. As they don't exist... I've node 6.4 (from homebrew), and I think this is the problem. and I can't find a way to downgrade to 6.3. any suggestions ?
-> Tried to download(404): https://fsevents-binaries.s3-us-west-2.amazonaws.com/v1.2.4/fse-v1.2.4-node-v67-darwin-x64.tar.gz
-> Tried to download(403): https://storage.googleapis.com/grpc-precompiled-binaries/node/grpc/v1.10.1/node-v67-darwin-x64-unknown.tar.gz
When I post a transaction, It gives missing required field supplier
eventhough It is already included in the transaction in mode.CTO
I cannot invoke any transaction
do you know guys any solution please?
I check this one
https://github.com/hyperledger/composer-sample-networks/issues/107
but It does not actually give any solution
[ ](https://chat.hyperledger.org/channel/composer?msg=sfLgstTJrKXm38bZ9) @davidkel Thank you so much that fixed it!
[ ](https://chat.hyperledger.org/channel/composer?msg=sfLgstTJrKXm38bZ9) @davidkel Thank you so much that fixed it!
Has joined the channel.
Has joined the channel.
Hello All,
Today I came across a thread where it was mentioned that henceforth the core focus will be put in Hyperledger fabric and composer will get bug fixes time to time but no major features will be introduced in composer and most of the composer features will be introduced in the upcoming releases of Fabric as possible.
If this will be the case, is it okay to use composer in production or one should move to using fabric only setup for production?
@nikhildhus If you are just starting a new project then you should consider using the native fabric capabilities rather than starting with composer. Fabric 1.4 will have some new capabilities in it based upon composer concepts around the programming model and fabric 1.4 should have an RC due out next very soon and hope to have a final version released mid december.
@nikhildhus If you are just starting a new project then you should consider using the native fabric capabilities rather than starting with composer. Fabric 1.4 will have some new capabilities in it based upon composer concepts around the programming model and fabric 1.4 should have an RC due out very soon and hope to have a final version released mid december.
Has joined the channel.
Hi there, can anyone confirm that Hyperledger Composer project is still on going or pause?
since I saw the reference post on Hyperledger Composer wiki home said about the concern of dis-continue of Hyperledger Composer project. What does it mean to us? should I go on Hyperledger Composer?
Thanks for any answers.
[ ](https://chat.hyperledger.org/channel/composer?msg=emwjAxiAGwnbtFy86) @davidkel Thanks @davidkel . I was at a stage coding for client application using Fabric 1.2 and Compose 0.20. I started going through Fabric Node SDK today and find it a bit tough to understand than composer api docs. Kindly suggest some resources for Node SDK which can be helpful.
@Teckchun94 See
https://lists.hyperledger.org/g/composer/message/125
Composer is still good for a demo/prototype or even poc, but not for a production deployment going forward. Many of the good things in Composer are being added to the native Fabric tools now.
@nikhildhus If you can I would wait for 1.4 to be released as it will have a simpler api for client side programming (called fabric-network). You should be able to ask on the #fabric-sdk-node to get more help if the docs still make it difficult but the 1.4 fabric docs should provide a good intro to the new node programming model coming in 1.4
@nikhildhus If you can I suugest you wait for 1.4 to be released as it will have a simpler api for client side programming (called fabric-network). You should be able to ask on the #fabric-sdk-node to get more help if the docs still make it difficult but the 1.4 fabric docs should provide a good intro to the new node programming model coming in 1.4
@nikhildhus If you can I suugest you wait for 1.4 to be released as it will have a simpler api for client side programming (called fabric-network). You should be able to ask on the #fabric-sdk-node for client side and #fabric-chaincode-dev for chaincode side to get more help if the docs still make it difficult but the 1.4 fabric docs should provide a good intro to the new node programming model coming in 1.4
thank you for your answer @davidkel
[ ](https://chat.hyperledger.org/channel/composer?msg=P5vJkyq28kmBY2CkS) @rthatcher @davidkel any help in this issue??
@zorrothefox @rthatcher @davidkel is there any alternative to concept in hyperledger composer??
How to authenticate composer-rest-server with local username/Pwd ? i.e., not using github credentials
[ ](https://chat.hyperledger.org/channel/composer?msg=kbnoMJzF9DTBD9nCA) and also any alternative to hashmap in composer.
Has left the channel.
Hi all, I am trying to use getType() API in permissions.acl conditions field. When I try to submit transaction using the newly created participant(+identity), i get this error:
`=!=vhfFuMa2mMr9WsJMz=!=`
getType() API is working perfectly fine with ibm-bluemix composer-playground. Why can't I use that in local setup. :(
Hi all, I am trying to use getType() API in permissions.acl conditions field. When I try to submit transaction using the newly created participant(+identity), i get this error:
Error: The runtime API is not available
getType() API is working perfectly fine with ibm-bluemix composer-playground. Why can't I use that in local setup. :(
Hi all, I am trying to use getType() API in permissions.acl conditions field. When I try to submit transaction using the newly created participant(+identity), i get this error:
"Error: The runtime API is not available"
getType() API is working perfectly fine with ibm-bluemix composer-playground. Why can't I use that in local setup. :(
[ ](https://chat.hyperledger.org/channel/composer?msg=hPtWFqecj5u4XHHcH) @Techie The Composer rest server allows for authentication against any "Passport Strategy" and the examples you can see in the tutorial and doc use github and google, but you can implement any of the strategies including "local". The passport strategies are here: http://www.passportjs.org/, and the doc for Loopback which the Composer rest server uses is here: https://loopback.io/doc/en/lb3/Third-party-login-using-Passport.html
Be aware that setting up the authentication can take time and there are some problems which you can review on Stack Overflow.
Hi experts, following this documentation i am trying to subscribe to events produced by the rest server. i enabled web sockets using COMPOSER_WEBSOCKETS=true. i installed wscat and connected successfully to the server. Next, i invoked a transaction that emit an event using composer playground. However, the wscat did not catch the event, knowing that in playground in transaction history i can see the event emitted. what could be the issue? should i do something else?
Hello All, I am trying to explore blockchain to manage software licensing. Can anyone please provide me any reference to understand the business benefits to manage licensing on blockchain? Thank you in advance.
Hi Everyone
Can anybody help me in this
```
kbs@kbs-Lenovo-C20-00:~/energy/Decentralized-Energy-Composer$ composer network install --card PeerAdmin@hlfv1 --archiveFile decentralized-energy-network@0.1.15.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
```
Hi experts, following this documentation i am trying to subscribe to events produced by the rest server. i enabled web sockets using COMPOSER_WEBSOCKETS=true. i installed wscat and connected successfully to the server. Next, i invoked a transaction that emit an event using composer playground. However, the wscat did not catch the event, knowing that in playground in transaction history i can see the event emitted. what could be the issue? should i do something else? Do we need to enable AL for events?
Hello there! Did anyone manage to create a new business card from existing blockchain network? For me it doesn't work with my local network which I've built from 'fabric-samples/first-network' project. I use grpcs connection with the certificates and keys generated by cryptogen, but I get an error: "Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline". Any hints or ideas? Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=pcNokWPxRpvDLZeqk) @rrishmawi not sure if WS server is local or remote - but in any case, you can test with this simple client to see what's going on (see answer) and check if you get events, or not, using this simple test
[ ](https://chat.hyperledger.org/channel/composer?msg=pcNokWPxRpvDLZeqk) @rrishmawi not sure if WS server is local or remote - but in any case, you can test with this simple client to see what's going on (see answer here -> https://stackoverflow.com/questions/50848492/how-to-use-web-sockets-for-communication-between-angular-app-and-composer-rest-s) and check if you get events, or not, using this simple test
[ ](https://chat.hyperledger.org/channel/composer?msg=2ndxtdSDy9svRw3SN) @ihormudryy would check your Fabric network, with docker ps and see if peers are running. Two examples of creating a new biz network card for existing blockchain network [here](https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82) and [here step 17/18](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org)
[ ](https://chat.hyperledger.org/channel/composer?msg=2ndxtdSDy9svRw3SN) @ihormudryy would check your Fabric network is up, with `docker ps` and see if peers are running. Two examples of creating a new biz network card for existing blockchain network [here](https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82) and [here step 17/18](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org)
@KindlebitPhp at a guess, the Decentralized repo you're using (I've not used it) is using a 0.19.x hlfv1 connection profile in your PeerAdmin card - and you've downloaded a 1.2.x or greater edition of Fabric - they don't work (would advise you - or anyone, to firstly check the release notes https://github.com/hyperledger/composer/releases to see what version of Composer, for what version of Fabric - and then use the correct Dev tools version/environment setting (see the Rel notes) to stand up the right Version of Fabric, including creation of the PeerAdmin card (as required by your `install` command)
@KindlebitPhp at a guess, the Decentralized repo you're using (I've not used it and was created independently by that author) is using a 0.19.x hlfv1 connection profile in your PeerAdmin card - and you've downloaded a 1.2.x or greater edition of Fabric - they don't work (would advise you - or anyone, to firstly check the release notes https://github.com/hyperledger/composer/releases to see what version of Composer, for what version of Fabric - and then use the correct Dev tools version/environment setting (see the Rel notes) to stand up the right Version of Fabric, including creation of the PeerAdmin card (as required by your `install` command)
@mahoney1 Version of Fabric is only 1.2
@mahoney1 Version of Fabric is only 1.1
[ ](https://chat.hyperledger.org/channel/composer?msg=8FhbfgEYsMbhnW2jQ) @mahoney1 thanks for the links! All orgs and peers are up and running, I have passed several tests and can see all blocks and transaction in my ledger. The only thing that is bothering me is CA which doesn't exist in first-network project cause it uses cryptogen tool. Would it cause the issue if I leave this blank?
[ ](https://chat.hyperledger.org/channel/composer?msg=htrdh2wKt3AvAr9kb) @rthatcher @mahoney1 @davidkel @zorrothefox pls help
[ ](https://chat.hyperledger.org/channel/composer?msg=kbnoMJzF9DTBD9nCA) @ShaikSharuk array? why can't you just go thru the keys only eg ```for (let field of Object.keys(txn.asset.Conceptarray) ) {
console.log("Field is " + field);
if (txn.asset.Conceptarray[i]["field_name"].indexOf('string') > -1) break;
i++;
}
console.log("the result is " + txn.asset.Conceptarray[i]["desiredfield"]);```
[ ](https://chat.hyperledger.org/channel/composer?msg=kbnoMJzF9DTBD9nCA) @ShaikSharuk array? why can't you just go thru the keys only eg ```for (let field of Object.keys(txn.asset.Conceptarray) ) {
console.log("Field is " + field);
if (txn.asset.Conceptarray[field]["field_name"].indexOf('string') > -1) break;
}
console.log("the result is " + txn.asset.Conceptarray[field]["desiredfield"]);```
Hi guys i have deployed hyperledger fabric using docker swarm over vms and i have successfully deployed composer over it. The only problem is that it akes too long to execute a command related to composer i.e. participant add, network ping etc. Sample chaincode works almost instantly but composer is slow. Is there a way to determine the exact cause ?
Hi guys i have deployed hyperledger fabric using docker swarm with kafka over vms and i have successfully deployed composer over it. The only problem is that it akes too long to execute a command related to composer i.e. participant add, network ping etc. Sample chaincode works almost instantly but composer is slow. Is there a way to determine the exact cause ?
[ ](https://chat.hyperledger.org/channel/composer?msg=oGu65tDDm9orza7Ei) @mahoney1 I didn't get it, can you please explain??
@ihormudryy the [multi-org tutorial](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org) uses its own repo (first-network repo) for that reason - to add a running CA server, for each org (2 orgs tutorial) so you can do `composer identity request` (as shown in the tutorial) to request ids - but you can find out yourself how to do this by reading the CA users guide https://hyperledger-fabric-ca.readthedocs.io/en/latest/users-guide.html (if you want to use Fabric's sample). Then you can create biz network cards with the issued identities etc etc
[ ](https://chat.hyperledger.org/channel/composer?msg=bmmimMXGi4rohoJiv) @saeedi hi, can you pls help me in setting up fabric over vms ?? is there any article or doc to follow?? thanq
@ShaikSharuk in answer to simple operation - it may help you (or may not :-) )
@ShaikSharuk You can follow excellent tutorial https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f and can further extend it according to your requirements
[ ](https://chat.hyperledger.org/channel/composer?msg=9MDdrGFca29Ch4C9D) @mahoney1 I found the issue, it looks like ACL rule is needed for every event for Participants, when i addeda rule for the specific event. However, this is not practical, how to authorize subscribing to events. from wscat i did not specify any users credentials. is there a way to let users only receive events for assets they own?
@rrishmawi that's something your application will have to decide upon (but you control what's emitted, including perhaps an field for what user it 'affects' eg on a user basis) -the application will receive all of the events emitted by the business network, and it's up to the application to choose to what extent those events are integrated and who should see them (the ACL rule you added is evaluated in the runtime).
[ ](https://chat.hyperledger.org/channel/composer?msg=79fzinziTSrf7yCAv) @mahoney1 i think i can solve this by adding an owner field to the event model, and in the rule, i will specify that the id of the participant must be the same as the id of the owner.
Has joined the channel.
Has left the channel.
Hey at all!
Is it somehow possible to define helper functions in a separate file and use them in the /lib/*.js logic files?
I get either `ReferenceError: module is not defined` from the `node_modules/composer-runtime/lib/scriptcompiler.js` file or `ReferenceError: require is not defined`.
Does anyone know a solution to this problem?
@AVetter you just need to put the .js file into the lib directory, you can't use require/module and don't need to. Any functions defined in the .js file will be loaded in and can be called from tp functions.
@davidkel thank you very much, this helps a lot!
Has joined the channel.
Has joined the channel.
Hi, first time composer user, I want to build a small app with a chain of approvals, for example, the "buyer" need to "approve" an offer, after this, the "Receiver" needs to approve it. I started with https://gist.github.com/rsoeldner/4065a29e71bf390877604c40b184c95a , (except the tx code) is this the right track ? How can I make it easy to add the required order of participant approvals.
Has joined the channel.
does composer support encryption?
ex: Can assets be encrypted and not visible to all members?
@Garrett No Composer doesn't provide an encryption capability
[ ](https://chat.hyperledger.org/channel/composer?msg=YL6g9udYEBcWr65Hi) @davidkel hi david
I've seen composer deemed a modeling and POC playground for building blockchains. Despite digging through documentation I haven't been able to find the details that outline the connection between composer and fabric in terms of chaincode.
Was composer/bnas always just generating complex chaincode in the background? If I built a bna model but want to fine tune it, am I stuck to with using composer when it comes to the integration with fabric? Is there any documentation to demystify the connection between the two?
If i need to rebuild my model in fabric instead, is there any guidance, or file from composer I can use to port over existing model pieces?
in that sense i feel like composer set me back
[ ](https://chat.hyperledger.org/channel/composer?msg=ee6SjkDF7CGDDQWzJ) @mahoney1 in this function , is it possible to return 2 or more variables in json format ?? for example , i want to return : {
"transactionId":"13c6dd90ff6e62303e9d29cb8e54385f26b03bd2f3327d9342ff52259e76a2e7",
"status":"Success",
"errorDetails":""
}
[ ](https://chat.hyperledger.org/channel/composer?msg=ee6SjkDF7CGDDQWzJ) @mahoney1 @davidkel in this function , is it possible to return 2 or more variables in json format ?? for example , i want to return : {
"transactionId":"13c6dd90ff6e62303e9d29cb8e54385f26b03bd2f3327d9342ff52259e76a2e7",
"status":"Success",
"errorDetails":""
}
Hello, can someone tell me how to set the server name when I use command "composer network install --archiveFile fabcar@0.0.1.bna --card PeerAdmin@net_basic"
as my server is not localhost
composer network install
@PhilipAndrew The information is stored in the connection profile contained in the card. You should create/modify your connection profile that represents your fabric setup, then create your card. For example the single org tutorial will take you through these steps see
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org
Has joined the channel.
hi, can I use Hyperledger Composer with Sawtooth?
@krasyo Sorry, no you can't.
Hai,I try to deploy composer-rest-server on different machine with the fabric network.
Then the card create is ok, but the card import returns error: bus error
So i wonder about:
1,Does the card import commands communicate with the fabric network? though they are on two machine,so i concern about the network connection between them firstly
2,There is no log output in ~/.composer/logs, so is there any method i can find useful hint?
3, I test the same composer and fabric version which are deployed on the same machine, it is ok! so may the network connection cause this problem?
the env:
node -> v8.14.0
composer ->0.19.18
Hai,I try to deploy composer-rest-server on different machine with the fabric network.
Then the card create is ok, but the card import returns error: bus error
So i wonder about:
1,Does the card import commands communicate with the fabric network? though they are on two machine,so i concern about the network connection between them firstly
2,There is no log output in ~/.composer/logs, so is there any method i can find useful hint?
3, I test the same composer and fabric version which are deployed on the same machine, it is ok! so may the network connection cause this problem? I try to find answer on net ,some say related with the environment, but how?
the env:
node -> v8.14.0
composer ->0.19.18
Has joined the channel.
@touchingsoil
1. card import doesn't communicate with the fabric
2. CLI won't output most errors to the logs due to a bug in CLI, however given it's a bus error unlikely anything would have been logged anyway
3. likely to be env and when people say env, it's your whole environment for example local mc or cloud, vm or bare metal, operating system version level, cpu and memory size etc not just node version/composer version.
Hi experts, i am confused by some behavior i see. i have two business networks, and a rest server for each. deployed and running perfectly. from the client (angular using rest api), i used the admin card of the first network to access the second network. and it worked!!!! is that an expected behavior?
@davidkel It is on cloud, Ubuntu16.04, cpu and memory are absolutely enough. almost the same os with another mc which run composer and fabric well on it. can i find any hint somewhere?
@touchingsoil a bus error is a memory access problem. Could be caused by a number of things to do with your environment. For example it could be a problem in the shell you are running the commands from. You will need to try things like disconnecting from the VM and reconnecting, rebooting the VM to see if it solves the problem
@davidkel I tried reconnect to the vm, change the ssh terminal, and reboot the vm, all don't work, it is a headache!!
@touchingsoil you could try re-installing composer. Composer uses native libraries. Have you tried looking in the various /var/logs where processes might write to ? have you tried the command `dmesg` to see if there is anything useful there ?
@vanipolnedi return a JSON array https://hyperledger.github.io/composer/latest/reference/js_scripts#read-only-transaction-processor-functions-query-processor-functions or use the JSON object to convert in JSON format after return.
@Garrett Composer business networks is installed on the Fabric network as Node JS chaincode. On connection to Fabric: see the connection profile page in the docs https://hyperledger.github.io/composer/latest/reference/connectionprofile.html. If you are just starting a new project then you should consider using the native fabric capabilities rather than starting with composer. Fabric 1.4 will have some new capabilities in it based upon composer concepts around the programming model and fabric 1.4 should have an RC due out very soon and hope to have a final version released mid december. The docs are being built continuously and are rendered to the 'latest' branch in the Fabric docs -> https://hyperledger-fabric.readthedocs.io/en/latest/developapps/developing_applications.html
@Garrett Composer business networks is installed on the Fabric network as Node JS chaincode. On connection to Fabric: see the connection profile page in the docs https://hyperledger.github.io/composer/latest/reference/connectionprofile.html. If you are just starting a new project then you should consider using the native fabric capabilities rather than starting with composer. Fabric 1.4 will have some new capabilities in it based upon composer concepts around the programming model and fabric 1.4 should have an RC due out very soon and hope to have a final version released mid december. The Fabric new prog model docs are being built continuously and are rendered to the 'latest' branch in the Fabric docs -> https://hyperledger-fabric.readthedocs.io/en/latest/developapps/developing_applications.html
@Garrett Composer business networks is installed on the Fabric network as Node JS chaincode. On connection to Fabric: see the connection profile page in the docs https://hyperledger.github.io/composer/latest/reference/connectionprofile.html. If you are just starting a new project then you should consider using the native fabric capabilities rather than starting with composer. Fabric 1.4 will have some new capabilities in it based upon composer concepts around the programming model and fabric 1.4 should have an RC due out very soon and hope to have a final version released mid december. The Fabric new prog model docs are being built continuously ("latest") and are rendered to the 'latest' branch in the Fabric docs -> https://hyperledger-fabric.readthedocs.io/en/latest/developapps/developing_applications.html
@Garrett Composer business networks are installed on the Fabric network as Node JS chaincode. On connection to Fabric: see the connection profile page in the docs https://hyperledger.github.io/composer/latest/reference/connectionprofile.html. If you are just starting a new project then you should consider using the native fabric capabilities rather than starting with composer. Fabric 1.4 will have some new capabilities in it based upon composer concepts around the programming model and fabric 1.4 should have an RC due out very soon and hope to have a final version released mid december. The Fabric new prog model docs are being built continuously ("latest") and are rendered to the 'latest' branch in the Fabric docs -> https://hyperledger-fabric.readthedocs.io/en/latest/developapps/developing_applications.html
@Garrett Composer business networks are installed on the Fabric network as Node JS chaincode. On connection to Fabric: see the connection profile page in the docs https://hyperledger.github.io/composer/latest/reference/connectionprofile.html. If you are just starting a new project then you should consider using the native fabric capabilities rather than starting with composer. Fabric 1.4 will have some new capabilities in it based upon composer concepts around the programming model and fabric 1.4 should have a RC due out very soon and hope to have a final version released mid december. The Fabric new prog model docs are being built continuously ("latest") and are rendered to the 'latest' branch in the Fabric docs -> https://hyperledger-fabric.readthedocs.io/en/latest/developapps/developing_applications.html
Clipboard - December 4, 2018 4:15 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=eupqvMF4pC5Z5PhgL) @abityildiz I would think that you have the "standard" byfn.sh, but you need a modified version.
Under "Step One" of the tutorial there is this command ` git checkout multi-org `which should be run from the fabric-samples folder - did you run that command? Did you see any error?
Is it possible to upgrade the network from solo orderer to kafka orderer without loosing the ledger?
Clipboard - December 4, 2018 5:21 PM
@kariyappals You would need to ask that on a fabric channel as it isn't related to composer, try #fabric-orderer
hello
can composer playground be connected to a real hyperledger blockchain? is there any way to set config?
because I managed to get hyperledger explorer connected to my blockchain and I can use that to see my blockchain in the browser
but I wish to use the composer playground
[ ](https://chat.hyperledger.org/channel/composer?msg=maJ9G8zq4FbdK5i9A) @PhilipAndrew Yes, you can connect Playground to a real fabric. When you say "Real" I hope you don't mean you are thinking/planning for using Composer in Production. Have you seen this announcement?
https://lists.hyperledger.org/g/composer/message/125
Composer is still good for a demo/prototype or even poc, but not for a production deployment going forward. Many of the good things in Composer are being added to the native Fabric tools now.
Playground connects to a Fabric through Business Network Cards, so to access an Existing Business Network you would need to import a Card for that network. If you want to upgrade that network, or create a new one, you would need a "Peer Admin" style card with Admin privilege to deploy business networks (smart contracts)
[ ](https://chat.hyperledger.org/channel/composer?msg=HSs9sP7MCs8rxjuJe) @rthatcher Thanks, can I only import the card through the UI or can I import it some other way?
[ ](https://chat.hyperledger.org/channel/composer?msg=qv4zNJeL9mdqWoCzb) User just wants to see their blockchain through composer playground
@PhilipAndrew - Playground should see the same wallet as the CLI so you should be able to use ` composer card import ` (unless you have done something with cloud wallets, r moved the default location)
@PhilipAndrew - Playground should see the same wallet as the CLI so you should be able to use ` composer card import ` (unless you have done something with cloud wallets, or moved the default location)
@rthatcher thanks! also thanks about the "fabric" stuff, its hard to understand hyperledger and then also keeping up to date ... from point of view my user they want good visability of what is going on in the blockchain
Clipboard - December 4, 2018 7:26 PM
@abityildiz fabric configuration problems need to be asked on an appropriate fabric channel as this is not specific to composer and so you are more likely to get someone who might be able to help
[ ](https://chat.hyperledger.org/channel/composer?msg=hTQHSnNBAEmFwF2r3) @davidkel ok.i move to fabric-channel
[ ](https://chat.hyperledger.org/channel/composer?msg=BKSg8soyBKXWiaGTh) @mahoney1 Is there a way to see the Node JS chaincode generated by composer and manually port it over to native hyperledger fabric? I'd like to leverage the features of fabric while keeping the asset structures and script functions ive created. I need a Decomposer lol
@Garrett in composer, chaincode is not generated. Your business network is instantiated as chaincode along with the composer runtime which provides all the composer capabilities such as TP function APIs, model parsing/validation, ACL processing and query handling
@davidkel so is there a way to "look under the hood" so that I can reproduce what I have created in composer for native fabric?
@Garrett You can look at the composer source code https://github.com/hyperledger/composer. The packages that make up the chaincode runtime for a business network are
- composer-runtime
- composer-runtime-hlfv1
- composer-common
fabric obviously doesnt use bna models but id love to convert everything i have into a more native solution
looks like the composer runtime ingests the bna
You could have a look at hyperledger concerto. That project has taken the modeling part of composer and put it into a separate package. I've never looked at how you might integrate that into chaincode
thanks for the advice, ill look into that. Been bummed the value composer has become limited to just POC
building from scratch on native fabric is taking a step back from what ive built
Some of the composer value will appear in fabric 1.4 which is due for release this month so worth having a look at fabric-network for client side coding and the contract-api for chaincode development
will it include the modeling aspects?
@Garrett Not for the 1.4 release
wish i was going to Basel to stay in the loop!
There is also a VS Code extension being developed to help in the development of native fabric apps. You might want to check it out at
https://github.com/IBM-Blockchain/blockchain-vscode-extension
@davidkel did composer ever lack on the performance/throughput side of things compared to native? I'm still desperate to move my bna to a production level but the fact that stuff is kinda deprecated makes me worry. so maybe ill look into that solution.
@Garrett Obviously composer introduces overhead with model validation and serialisation compared to native chaincode that doesn't perform these capabilities. ACLs will add overhead as well, depends on your business network implementation
@davidkel so is there a way to open a composer project and inspect it to see how it would look as if it were being deployed as native chaincode? I know theres more than whats there is to see from the composer playground view
but i want to import my existing code somehow
thanks for all the help btw
@Garrett a BNA only contains the artefacts you have created. Ie you .cto, .acl, qry and all your .js files that you have created, plus a package.json it is a node package.
Hi, I have authenticated my network with passport-github but when I pass the auth key (located at top of :3000/explorer) as a parameter in my GET request for an API, I get a 401 error (unauthorized)
I have tried the same GET API call with auth disabled, and it works as expected
@davidkel I have tried to reinstall the composer , also checked the /var/logs and the `dmesg` output, but there is no obvious clues.
@rthatcher i tried installing 1 org 3 peers (each peer on diff phyical machine ), while doing network start i get
2018-12-04 13:14:31.530 UTC [chaincode-platform] func1 -> ERRO 037 Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated boom@2.10.1: This version is no longer maintained. Please upgrade to the latest version.
npm WARN notice [SECURITY] hoek has the following vulnerability: 1 moderate. Go here for more details: https://nodesecurity.io/advisories?search=hoek&version=2.16.3 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN deprecated hoek@2.16.3: This version is no longer maintained. Please upgrade to the latest version.
npm WARN deprecated cryptiles@2.0.5: This version is no longer maintained. Please upgrade to the latest version.
npm WARN deprecated boom@4.3.1: This version is no longer maintained. Please upgrade to the latest version.
> x509@0.3.3 install /chaincode/output/node_modules/x509
> node-gyp rebuild
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack at PythonFinder.failNoPython (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:483:19)
gyp ERR! stack at PythonFinder.
but chaincode is installed succesfully on other 2 machines.
Has joined the channel.
Hello, everyone. I have a question when I use composer. After upgrade chaincode on the network, is previous record such as tx record and participant remained or removed?
Has joined the channel.
Hi @Lolololo , It remains same if transaction processor code is upgraded. I have observed the previous records are not visible when a new variable is added to asset in Playground. I need to check in Fabric runtime.
Hi, I have a question whether we could get MspId details in composer chaincode. As the documentation only contains info about getCurrentParticipant
Has joined the channel.
I am working on hyperledger playground. I have found that the access rules for participants can be specified manually on acl file in hyperledger composer. But is there a way that allows me to add/modify these rules to this file using JS?
Has joined the channel.
Has joined the channel.
@sushmitha I would say your docker image `ccenv` is old. You should delete that docker image.
@pravn1729 Unfortunately you can't get the mspid, all you can get is the certificate information through getCurrentIdentity api
[ ](https://chat.hyperledger.org/channel/composer?msg=eMzbT82vvWejkwqeE) @davidkel Thanks @davidkel
[ ](https://chat.hyperledger.org/channel/composer?msg=2DLtfTSkwurCFRmYr) @prasanths96 @mahoney1 @prasanths96 i tried this method for errors handling but it is not working for syntax errors ...... if an syntax error occured i'm getting error like : {
"error": {
"statusCode": 400,
"name": "SyntaxError",
"message": "Unexpected token A in JSON at position 78",
"body": "{\n \"preferences\": {\n \"$class\": \"tp.ap\",\n \"MN\": \"1111100011\",\n \"DS\": A,\n \"ST\": 0,\n \"PR\": \"78364\",\n \"RN\": \"S8783\",\n \"MT\": \"1543898915\"\n }\n}",
"status": 400,
"stack": "SyntaxError: Unexpected token A in JSON at position 78\n at JSON.parse (
[ ](https://chat.hyperledger.org/channel/composer?msg=2DLtfTSkwurCFRmYr) @prasanths96 @mahoney1 i tried this method for errors handling but it is not working for syntax errors ...... if an syntax error occured i'm getting error like : {
"error": {
"statusCode": 400,
"name": "SyntaxError",
"message": "Unexpected token A in JSON at position 78",
"body": "{\n \"preferences\": {\n \"$class\": \"tp.ap\",\n \"MN\": \"1111100011\",\n \"DS\": A,\n \"ST\": 0,\n \"PR\": \"78364\",\n \"RN\": \"S8783\",\n \"MT\": \"1543898915\"\n }\n}",
"status": 400,
"stack": "SyntaxError: Unexpected token A in JSON at position 78\n at JSON.parse (
[ ](https://chat.hyperledger.org/channel/composer?msg=HeJSx4uBN6sHfcTBq) @vanipolnedi This structure looks similar to regular error structure. So, the same method should work. Btw, this is more of a general JSON handling / parsing question than hyperledger composer specific question. You can just google how to handle / parse JSON objects in java script, and those methods will work just fine.
Clipboard - December 5, 2018 12:28 PM
@abityildiz search https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md for request_timeout suggestions
@vanipolnedi resources being POSTed usually begin with `"$class"` but seems you have a JSON error, at the position reported.
[ ](https://chat.hyperledger.org/channel/composer?msg=upoxA4rxpHdjS2MjC) @davidkel thanks.
@sharma66mahesh I have put an answer on your SO question
@pravn1729 @Lolololo - If you upgrade the BNA (chaincode) then your previous data and transactions do remain, but be aware that if you change your model by adding new fields to an Asset/Participant you data may be 'hidden' from you. There are mode details in the knowledge wiki on this: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration
@davidkel Thanks for answering. But what I want to do is to create a js function that will write rules to the .acl file upon creation of a transaction. How do I do that?
@davidkel Thanks for answering. But what I want to do is to create a js function that will write rules to the .acl file upon creation of a transaction in the composer playground. How do I do that?
@sharma66mahesh Playground is meant as a get started with composer tool and not the go to editor and it's certainly not an ide. You could write a deployment pipeline that takes your TP functions as input then generates entries in the ACL file before you create the archive file. Other possibilities would be to create your own version of the Composer VS code plugin and modify the source to provide the ability to generate your ACL rules from a TP function file. There isn't anything in composer that will do what I think you are looking for
For composer-rest-server it says "For a connection profile, Hyperledger Composer looks for a connection.json file in the user's
How should I generate that file? manually by creating file with text editor and placing it there?
@PhilipAndrew The readme text is old and out of date. You should ignore it and follow the documentation at https://hyperledger.github.io/composer/latest/integrating/integrating-index as well as the tutorial https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
@davidkel I thought it was true because I keep getting this error, also same error from composer-rest-server
root@73f865bd4bdf:/home/cli# composer network ping -c PeerAdmin@net_basic
Error: Error trying to ping. Error: No business network has been specified for this connection
Do you know why it says this?
@PhilipAndrew that explains your ping failure - there is no PeerAdmin card defined for the business network **itself** ('it' is not a participant of the business network) - use an admin card like for `admin` (ordinarily a network admin) or another business network participant card (that you've imported successfully) to ping the business network (not sure what tutorial or example you're following, but you can see it all in action in the Developer tutorial -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html or in the queries tutorial https://hyperledger.github.io/composer/latest/tutorials/queries)
@PhilipAndrew that explains your ping failure - there is no PeerAdmin card defined for the business network **itself** ('it' is not a participant of the business network) - use an admin card like for `admin` (ordinarily a network admin) or another business network participant card (that you've imported successfully) to ping the business network (not sure what tutorial or example you're following, but you can see it all in action in the Developer tutorial -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html or in the queries tutorial https://hyperledger.github.io/composer/latest/tutorials/queries) . One last thing: if you've installed Composer as 'root' then its not advisable. See the [knowledge wiki](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues) for more info on npm discussion and why npm doesn't like etc)
@PhilipAndrew that explains your ping failure - there is no PeerAdmin card defined for the business network **itself** ('it' is not a participant of the business network) - use an admin card like for `admin` (ordinarily a network admin) or another business network participant card (that you've imported successfully) to ping the business network (not sure what tutorial or example you're following, but you can see it all in action in the Developer tutorial -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html or in the queries tutorial https://hyperledger.github.io/composer/latest/tutorials/queries) . One last thing: if you've installed Composer (CLI, playground blah blah) as 'root' then its not advisable. See the [knowledge wiki](https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-installation-issues) for more info on npm discussion and why npm doesn't like etc)
How to implement rest api for chain code using node sdk ?Any sample demo ?
@mahoney1 Really thanks a lot - its difficult for me to learn all of this
[ ](https://chat.hyperledger.org/channel/composer?msg=eefHrq8ovEw3MsnqD) @medipal not aware of : but if you mean creating your own custom APIs, this may help? https://stackoverflow.com/questions/48722248/customizing-the-hyperledger-composer-rest-server - at the end of the day its loopback based - more info in the docs https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server and here -> https://loopback.io/doc/en/lb2/Extend-your-API.html
for Node SDK see -> https://hyperledger.github.io/composer/latest/applications/applications-index and [sample application](https://github.com/hyperledger/composer-sample-applications/tree/master/packages/digitalproperty-app)
https://github.com/contractpendev/hyperledger-basic-network this is what I'm working on
Has joined the channel.
I am learning the tutorial of hyperledger composr. In the Developer tutorial for creating a Hyperledger Composer solution tutorial, the last step is Step Six: Generating a skeleton Angular application. After the application is successfully generated, execute npm start in the application directory and report the error as follows. what the reason? thank you.
Clipboard - December 5, 2018 10:11 PM
@wangkaixuan To run the application, navigate *into* your angular project directory - and run `npm start` from there
Has joined the channel.
Hello Guys , i am new here
Some error have been haunting me for long and also am unable to find their solutions
Selection_074.png
I am new here guys, sorry for any mistake i make, can any one help, i am very bad stuck and have a project demo soon
emotionally I want to say, Hyperledger takes up so much time and difficulty to get it all to work....
logically I put up with it
its so much to learn and understand and configure
Firstly if I want to learn all of hyperledger then its a lot of time to do, so cannot, the since cannot i try and then get stuck
now im not stuck but wow that wasn't fun
Now is hyperledger composer commandline going to disappear and what replaces it?
what command line can replace it
@davidkel Thanks
@rthatcher Thank you.
Has joined the channel.
Executing the *composer network startup* command has been reported error,what the reason? Thanks.
Clipboard - December 6, 2018 4:27 PM
Clipboard - December 6, 2018 5:39 PM
I'm trying to launch composer-rest-server with TLS and testing that WebSockets has been enabled.
https://hyperledger.github.io/composer/v0.16/integrating/publishing-events
However, wscat command occurs error "socket hang up" when I launched with TLS.
How can I launch WebSocket with wscat command for TLS enabled composer-rest-server?
Thanks.
Clipboard - December 6, 2018 5:40 PM
Clipboard - December 6, 2018 5:40 PM
Clipboard - December 6, 2018 5:43 PM
@Haseebijaz I would guess you have an old ccenv docker image. You should delete all your `hyperledger/fabric-ccenv` docker images using the `docker rmi` command
@wangkaixuan looks like you are trying to use composer 0.20 against a fabric 1.1 network. You either need to upgrade to fabric 1.2 or use composer 0.19 with your fabric network
[ ](https://chat.hyperledger.org/channel/composer?msg=fP9aSk78jPbpj9LSJ) @PhilipAndrew Hyperledger Composer won't disappear, but active development of it has stopped. It currently supports Fabric 1.2. Composer can still be used for POC, or Prototypes, but it is not suitable for a production deployment going forward. Some features of Composer are being implemented in native Fabric so that should be less difficult going forward. Some of these features are available in Fabric 1.4 beta.
It is still work in progress, but for developing applications this document should be interesting: https://hyperledger-fabric.readthedocs.io/en/latest/developapps/developing_applications.html
[ ](https://chat.hyperledger.org/channel/composer?msg=fP9aSk78jPbpj9LSJ) @PhilipAndrew Hyperledger Composer won't disappear, but active development of it has stopped. It currently supports Fabric 1.2. Composer can still be used for POC, or Prototypes, but it is not suitable for a production deployment going forward. Some features of Composer are being implemented in native Fabric so that should be less difficult going forward. Some of these features are available in Fabric 1.4 beta.
It is still work in progress, but for developing applications this document should be interesting: https://hyperledger-fabric.readthedocs.io/en/latest/developapps/developing_applications.html
(This is the official statement about the future of Composer: https://lists.hyperledger.org/g/composer/message/125)
Hi Everyone, how can I retrieve card even though the identity is already created? - (for instance a user losses the card)
@Smit95shah you should always ensure you backup the identity (ie the public cert/private key) either by backing up the crypto material or the card file containing this material (don't backup a card file containing a secret as this is a single use only card file and should be imported, the card file deleted, the card pinged and then a new card file, which can be backed up, exported from that card in the card store)
@microwavePC maybe try `wscat -c wss://localhost:3000`
Thanks for the quick reply. Is there a way create a new card for the existing Identity? @davidkel
@Smit95shah use `composer card create` and provide the backed up certificate and public key. If you don't have them then no you can't create another card file for an existing identity
@Smit95shah use `composer card create` and provide the backed up certificate and private key. If you don't have them then no you can't create another card file for an existing identity
[ ](https://chat.hyperledger.org/channel/composer?msg=XrpQXyRvNzLmsopAD) @davidkel you might also want to use ` -n ` "Do not check for unauthorised c ertificates"
Thanks. Is there anyone who has tried uses JWT for authentication for composer `0.0.20`
Clipboard - December 6, 2018 1:48 PM
@abityildiz Suggest you ask on an appropriate fabric channel as this isn't relevant to composer
[ ](https://chat.hyperledger.org/channel/composer?msg=3kh2BpBuiBsva6Bat) @davidkel ok.
@davidkel thank you very much!
couch
Hi, I am currently getting this error: while following this tutorial https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
When I run `docker logs rest` I get the below error:
```
2018-12-06T11:22:50: PM2 log: Launching in no daemon mode
2018-12-06T11:22:50: PM2 log: App [composer-rest-server:0] starting in -fork mode-
2018-12-06T11:22:50: PM2 log: App [composer-rest-server:0] online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
(node:17) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Connection fails: Error: Card not found: admin@bc612182
It will be retried for the next request.
Exception: Error: Card not found: admin@bc612182
{ Error: Card not found: admin@bc612182
at store.get.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-common/lib/cardstore/walletbackedcardstore.js:74:27)
at
@rthatcher for hyperledger composer there will not be a command line administration but it will all be nodejs API stuff? is that what I get from https://hyperledger-fabric.readthedocs.io/en/latest/developapps/developing_applications.html ?
I mean for the replacement 1.4
@Smit95shah - the problem is that when starting the composer-rest-server in the container, the card cannot be found. -
{ Error: ENOENT: no such file or directory, open '/home/composer/.composer/cards/admin@bc612182'
There is a line in the dockerfile for the rest server you build ` COPY .composer /home/composer/.composer ` - this should copy over the cards that you have at the time that the Container Image was created, so I would guess that either the copy didn't work because you were in the wrong folder, or that the card was created after the container image.
[ ](https://chat.hyperledger.org/channel/composer?msg=Kw2y4m7nnXRHSGJHg) @PhilipAndrew There are some Fabric commands such as ` peer chaincode install ` instead of `composer network install`. There is also the `fabric-ca` client for working with identities.
There will be some published material for people wanting to Port from Composer to native Fabric - but that information is not available yet.
@rthatcher Thanks for the reply. May I know where does this location `/home/composer/` exist ? because `.composer` is actually located at `Users/Smit/.composer` (mac user)
@Smit95shah docker containers have their own file system and user. For the Rest server docker image it's user is `composer` and so it's home directory will be `/home/composer`
@rthatcher can please suggest me best resources for fabric chain code development in GO Language or nodejs
@rthatcher can please suggest me best resources for learning fabric chain code development in GO Language or nodejs
npm composer error.png
After giving command of npm install -g composer-cli@0.20 --unsafe-perm , it still gives same error. What to do in this case?
Untitled.png
Here it shows unexpected end of JSON input while parsing near a particular .tgz file. What is this. Someone please help. Thanks.
@davidkel I am getting this error:
```
Error: EACCES: permission denied, open '/home/composer/.composer/cards/admin@bc612182/metadata.json'
errno: -13,
code: 'EACCES',
syscall: 'open',
path: '/home/composer/.composer/cards/admin@bc612182/metadata.json'
```
Is there a way i can provide permissions?
[ ](https://chat.hyperledger.org/channel/composer?msg=AoQNj7sxnB4TTYrjL) @sureshtedla see https://hyperledger-fabric.readthedocs.io/en/latest/developapps/smartcontract.html and https://hyperledger-fabric.readthedocs.io/en/release-1.3/chaincode.html?highlight=chaincode
@shkakkad what is your `node -v ` / `npm -v` / `python --version` ?
[ ](https://chat.hyperledger.org/channel/composer?msg=x395e5Gc83Fs3Tpda) @Smit95shah Just checking the tutorial again ... I think that it specifically covers the steps to avoid this error:
...
"Composer default directory for identity cards is /home/composer/.composer. Before we build the image, we can copy the existing identity cards from our home/composer/.composer directory. We also need to change the file permissions so that docker can handle them without EACCESS errors."
...
```
cp -rp ~/.composer .
chmod -R a+rw .composer
find .composer -type d -exec chmod a+x {} +
```
[ ](https://chat.hyperledger.org/channel/composer?msg=N7F7byxQBwxCsDwK9) @rthatcher Hi. I tried It. Even after that I am still getting the same error.
[ ](https://chat.hyperledger.org/channel/composer?msg=QD4dgAdDLPF4jCJZ2) @danilojodas I'm facing the same issue with passport-identityserver3 for sometime now, did you get a solution? Can anyone share some insight to this problem?
@Smit95shah - I guess you could try to `docker exec` into the running container and investigate (and possibly solve) the access problem. Other than that you could try tearing down your environment and repeating the tutorial, or post a question to the Tutorial writer.
It is an access problem though not a Composer problem
@mahoney1
@mahoney1 node : v8.14.0 , npm : 6.4.1 , python : 2.7.15rc1
[ ](https://chat.hyperledger.org/channel/composer?msg=yBZDGRap289hBW6sB) @mahoney1 node - 8.14.0 , npm : 6.4.1 , python : 2.7.15rc1
@shkakkad presently Composer supports npm 5.x - not sure if 6.x is the issue you're seeing
@shkakkad presently Composer supports npm 5.x - see https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html - not sure if 6.x is the issue you're seeing
@shkakkad presently Composer supports npm 5.x - see https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html - not sure if using 6.x is the cause of the issue you're seeing
Community call in 10 fyi - https://zoom.us/my/hyperledger.community.3
@rthatcher noted.
I tried doing that. However now I am getting the below error:
```
Smits-MacBook-Pro:bc07122018 Smit$ docker logs rest
[2018-12-06 17:17:59] PM2 log: Launching in no daemon mode
[2018-12-06 17:17:59] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2018-12-06 17:17:59] PM2 log: App name:composer-rest-server id:0 online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
(node:19) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
```
[ ](https://chat.hyperledger.org/channel/composer?msg=DnjSk38NEDSiBKuLc) @mahoney1 But while implementing ./prereqs.sh it implicitly has updated to 6.4.1. Does this have to do with the version of Ubuntu? I am installing on Ubuntu 18.04, knowing well it is given to use 14.04 or 16.04 in the docs.
@mahoney1 I gave the command npm install npm@5.6.0 -g to change the version of npm as suggested. But still I face the issue, same error.
Has joined the channel.
Hello, How do I deploy the .bna file to my own custom fabric network. I have created my own fabric network with two peers, two orgs, two orderes and a couch db.
I am able to successfully deploy the tutorial-network bna file to the fabric dev servers they provided.
but when I am trying to do the same on the fabric network I configured, it is giving me error.
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: EOF
Command failed
but I can see my docker containers(peers, orgs, couchdb, CA) up and running.
@davidkel Thank you so much for answering. It worked with "wss"!
Has joined the channel.
@mahoney1 I solved the problem by following steps:```
1. npm install -g npm@5
```
@mahoney1 I solved the problem by following steps:```
npm install npm@5 -g```
npm cache clean --force```
npm cache verify```
npm install -g composer-cli@0.20
```
```
```
```
angular front end error trying to ping.png
@davidkel @mahoney1 I'm facing the above error when I try to fire angular app to build front end to my business application...
I'm using fabric version 1.2 and installed latest dev environment composer cli...
Hello, what permission is needed when invoking `getNativeAPI` in `logic.js`? The chaincode works if it is invoked by a `admin` identity which has full permission of network. but with `user` ide
Hello, what permission is needed when invoking `getNativeAPI` in `logic.js`? The chaincode works if it is invoked by a `admin` identity which has full permission of network. but with `user` identity the network returns error and requires permission of `org.hyperledger.composer.system.Network`
Hello, what permission is needed when invoking `getNativeAPI` in `logic.js`? The chaincode works if it is invoked by an `admin` identity which has full permission of network. but with `user` identity the network returns error and requires permission of `org.hyperledger.composer.system.Network`
Hello, what permission is needed when invoking `getNativeAPI` in `logic.js`? The chaincode works if it is invoked by an `admin` identity which has full permission of network. but with `user` identity the network returns error and requires `READ` permission of `org.hyperledger.composer.system.Network`, after adding this the network keeps requiring other permission like `org.hyperledger.composer.system.TransactionRegistry` and `org.hyperledger.composer.system.AssetRegistry`. Actually there is no asset in the network the transaction just changes balance of participant.
@labcoinpoc every user needs READ access to the business network, READ access to the HistorianRecord asset registry and CREATE on the HistorianRecord type, as well as the correct permissions for the actual TP function being invoked regardless of what the transaction processor function actually does. The `getNativeAPI` call itself requires no permissions and also any results returned say from a `getState` call will NOT be ACL checked.
[ ](https://chat.hyperledger.org/channel/composer?msg=oXhMZkJ8XfrSmkr86) @davidkel Thanks very much! I will add these permissions and try it again.
[ ](https://chat.hyperledger.org/channel/composer?msg=nK5zznqtGEbPDQvEu) @sbtmentor The short answer to this is that the npm module `composer-rest-server` is at v0.20.2, you need to upgrade it to v0.20.4 to match the runtime of the Business Network.
You should also check that your `composer-cli` module is at v0.20.4. Try `npm ls -g -depth==0` to see the versions that you have.
How did you get into the situation of mismatched runtime? - either the BNA was installed with a client that was at v0.20.4 or perhaps was created by composer-playground v0.20.4
[ ](https://chat.hyperledger.org/channel/composer?msg=nK5zznqtGEbPDQvEu) @sbtmentor The short answer to this is that the npm module `composer-rest-server` is at v0.20.2, you need to upgrade it to v0.20.4 to match the runtime of the Business Network.
You should also check that your `composer-cli` module is at v0.20.4. Try `npm ls -g -depth=0` to see the versions that you have.
How did you get into the situation of mismatched runtime? - either the BNA was installed with a client that was at v0.20.4 or perhaps was created by composer-playground v0.20.4
[ ](https://chat.hyperledger.org/channel/composer?msg=oXhMZkJ8XfrSmkr86) @davidkel After adding `READ` permission to `org.hyperledger.composer.system.Network` and `org.hyperledger.composer.system.AssetRegistry#org.hyperledger.composer.system.HistorianRecord` , `READ,CREATE` permission to `org.hyperledger.composer.system.HistorianRecord` it works fine. Thanks a lot!
[ ](https://chat.hyperledger.org/channel/composer?msg=RYnxN4tMhYYwTzWog) @Kapil This is likely to be an error with the TLS/MSP setup in your docker-compose.yaml file, or less likely an error in the connection.json.
https://stackoverflow.com/questions/50412765/hyperledger-composer-install-error-error-error-trying-to-start-business-netwo
There may be more helpful error messages in the peer container logs.
[ ](https://chat.hyperledger.org/channel/composer?msg=jxgzPm3oGb6bTsYT8) @shkakkad 6.4.1 is the current npm version from the npm registry (ie not related to Ubuntu). I would try using node 8.11 - install nvm (if not already installed) and do 1) `nvm install v8.11` 2) `nvm use 8.11` (will likely install 8.11.4 in fact) 3) `npm cache clean` and 4) try `npm install -g composer-cli`
[ ](https://chat.hyperledger.org/channel/composer?msg=jxgzPm3oGb6bTsYT8) @shkakkad 6.4.1 is the current npm version from the npm registry (ie not related to Ubuntu). I would try using node 8.11 / npm 5.6.x (as you presently have?) - install nvm (if not already installed) and do 1) `nvm install v8.11` 2) `nvm use 8.11` (will likely install 8.11.4 in fact) 3) `npm cache clean` and 4) try `npm install -g composer-cli`
Has joined the channel.
hi guys, I read https://hyperledger.github.io/composer/v0.16/managing/participantsandidentities, but I wonder a user with a client app can be a participant and indentify by certificate authority?
hi guys, I read https://hyperledger.github.io/composer/v0.16/managing/participantsandidentities, but I wonder a user with a client app (android, ios, web plugin...) can be a participant and indentify by certificate authority?
[ ](https://chat.hyperledger.org/channel/composer?msg=nnas2SKtzbrfqKkLS) @hauhm yes, should be possible (by the way, the latest Composer docs are here -> https://stackoverflow.com/questions/52511665/hyperledger-client - that's an older version FYI) - see https://stackoverflow.com/questions/52511665/hyperledger-client . If (say) the app user was authenticated by your org's auth provider, the user (whose previously issued blockchain identity, eg. by his organisational CA you mention, is mapped to a business network participant) can have a business network card associated with the app user (the card may be stored in a secured cloud repository), such that transactions, access accorded to the user, can let him interact with the business network
[ ](https://chat.hyperledger.org/channel/composer?msg=nnas2SKtzbrfqKkLS) @hauhm yes, should be possible (by the way, the latest Composer docs are here -> https://hyperledger.github.io/composer/latest/managing/participantsandidentities - that's an older version FYI) - see https://stackoverflow.com/questions/52511665/hyperledger-client . If (say) the app user was authenticated by your org's auth provider, the user (whose previously issued blockchain identity, eg. by his organisational CA you mention, is mapped to a business network participant) can have a business network card associated with the app user (the card may be stored in a secured cloud repository), such that transactions, access accorded to the user, can let him interact with the business network
[ ](https://chat.hyperledger.org/channel/composer?msg=nnas2SKtzbrfqKkLS) @hauhm yes, should be possible (by the way, the latest Composer docs are here -> https://hyperledger.github.io/composer/latest/managing/participantsandidentities - that's an older version FYI) - see https://stackoverflow.com/questions/52511665/hyperledger-client . If (say) the app user was authenticated by your org's auth provider, the user (whose previously issued blockchain identity, eg. by his organisational CA you mention, is mapped to a business network participant) can have a business network card associated with the app user (the card may be stored in a secured cloud repository), such that transactions, access to the business network (accorded to the user) can let him interact with the business network
[ ](https://chat.hyperledger.org/channel/composer?msg=nnas2SKtzbrfqKkLS) @hauhm yes, should be possible (by the way, the latest Composer docs are here -> https://hyperledger.github.io/composer/latest/managing/participantsandidentities - that link u posted is an older version FYI) - see https://stackoverflow.com/questions/52511665/hyperledger-client . If (say) the app user was authenticated by your org's auth provider, the user (whose previously issued blockchain identity, eg. by his organisational CA you mention, is mapped to a business network participant) can have a business network card associated with the app user (the card may be stored in a secured cloud repository), such that transactions, access to the business network (accorded to the user) can let him interact with the business network
versions.png
[ ](https://chat.hyperledger.org/channel/composer?msg=EKZbTZBSrQM25TnbH) @rthatcher @rthatcher composer-rest-server is at v0.20.4!
Is there any way to customize the composer-rest-server? I mean, I want to add/remove/adjust some of the APIs on the composer-rest-server, but I can't figure out how to do that, besides rewriting the whole server in loopback...
@MarcelvandeKerkhof have you seen the REST Server customization page in the docs -> https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server
@sbtmentor looks like you have a load of npm modules in `~/node_modules` which are old and these are being picked up. Suggest you delete that node_modules directory
[ ](https://chat.hyperledger.org/channel/composer?msg=4dF6BuZPgcBiwfejj) @mahoney1 Guess I missed that page... :thinking: Tnx! Will have a look at it.
[ ](https://chat.hyperledger.org/channel/composer?msg=yT289MFNYcyv6frzT) @davidkel Is it advisable to run 'rm -rf node_modules/ && npm install'? Thanks in advance
@rthatcher Thanks, I believe its something to do with connection.json.
@sbtmentor usually the modules are deleted inside the angular app directory, yes.
errormsgcomposer.png
Question: Is there a setting to change how composer-rest-server returns an error? I'm trying to get it where it only return the actual error message (the underlined portion).
Has joined the channel.
Has joined the channel.
Hello, with the "composer network start" command there is an optional "-f" flag for filename of card created. What is the card created at the start command to be used for?
Hello, what to do when we face a EOF error while downloading the ./downloadFabric.sh? Thanks.
Has joined the channel.
Hello guys. So our network include participants like medicine manufacturers , distributors and pharmacies. Now if there are 2 manufacturers. Do we consider them as separate organizations or part of the same organization.
Has joined the channel.
Hello guys, when I'm trying to see swagger.json generated after starting composer-rest-server using any business card of a installed network - reference $ref is pointing to x-any type instead of actual type. Can any body please help. As a result, while this swagger.json ie being introspected to create objects on IBM BPM platform(for e.g) reference is getting lost.
Clipboard - December 8, 2018 2:07 PM
Im running composer-rest-server on sample letter-of-credit which compes with hyperledger composer
Clipboard - December 8, 2018 2:11 PM
in CTO file, asset LetterofCredit has reference to Customer. But inside swagger.json, letterofcredit's applicant property is having reference to x-any instead of Customer
@tamal24 looks like all reference types will have x-any as the type in swagger.json
EOF error.png
@davidkel , thanks for answering the question,
@davidkel , do you know how the concept of registry in hyperledger composer is implemented in hyperledger fabric, where do parcipants live , asset only live in transactions ? Stuff like that, i couldnt find any relevant documentation of how the concept of registry is mapped to the underlying "Fabric" ? Where Participants will be stored and so and so ? Please provide some relevant like to where these things have been documented ? Thanks
@Haseebijaz These concepts have not been documented anywhere yet as far as I know, hopefully in the future they will be.
@shkakkad could be a networking problem or maybe a local disk space problem ?
@davidkel Running on VMWare. Shoud I increase disk size?
@shkakkad If you are running out of disk space then you need to find a way to increase it for the volumes in your VM
Ok thanks. So there is no other possible reason for such error?
@shkakkad I have no idea, just throwing ideas for you to investigate
rsoeldner
@davidkel i was asked about those concepts in my demo, i am afraid i would be asked again. What do you sugest what should i do ?
@Haseebijaz Composer is open source, so you could review the code and determine it yourself
@davidkel which part of the composer should i review , can you just guide a bit in this regard. Thanks
:)
[ ](https://chat.hyperledger.org/channel/composer?msg=iYXXAJeX4zCJHkq4T) I mean when studying about the registries imlpementation in fabric
I mean when studying about the registries imlpementation in fabric
@Haseebijaz fabric doesn't have the concept of registries, that is a composer concept. composer-runtime package implements the concepts and composer-runtime-hlfv1 package implements the mapping from runtime down to hyperledger fabric
@Haseebijaz composer-runtime package implements the concepts such as registries, assets etc and composer-runtime-hlfv1 package implements the mapping from runtime down to hyperledger fabric
@Haseebijaz composer-runtime package implements the concepts such as registries and composer-runtime-hlfv1 package implements the mapping from runtime down to hyperledger fabric
Thanks Bud
:)
[ ](https://chat.hyperledger.org/channel/composer?msg=hXN2GeGyrkNr52xq2) Hello, still facing same problem after increase local disk space of VM from 20GB to 50GB. This EOF error is happening only for two docker images of size 280Mb and 125Mb , being pulled from fabric-ccenv:1.2.1. Please help
Hello guys, so in development we can't use 2 chaincode, one is Hyperleder composer(deploy bussiness network), another is Hyperledger Fabric (Nodejs) ?
@DavorKljajic you can deploy any number of different chaincodes (which includes a business network) to a channel. However they can't see each other's data as the data is scoped the the chaincode name. What can be done is for 1 chaincode to call another chaincode on the same channel and both chaincodes can perform write operations and it was then be managed under the single transaction id.
@DavorKljajic you can deploy any number of different chaincodes (which includes a business network) to a channel. However they can't see each other's data as the data is scoped to the chaincode name. What can be done is for 1 chaincode to call another chaincode on the same channel and both chaincodes can perform write operations and it was then be managed under the single transaction id.
@DavorKljajic you can deploy any number of different chaincodes (which includes a business network) to a channel. However they can't see each other's data as the data is scoped to the chaincode name. What can be done is for 1 chaincode to call another chaincode on the same channel and both chaincodes can perform write operations and it was then be managed under the single transaction id as a single R/W set
@shkakkad think you need to search on Google for resolution, its possible you have an environmental problem - could be [anything from a proxy issue](https://github.com/docker/distribution/issues/2367) to networking / TTL issue to ??? You could try cleaning your cache too (assuming your extended filesystems (from earlier) are showing in `df `) - but you should try the same downloads from a different m/c & network config and see if the same thing occurs or not - sorry I can't help any further.
I'm trying to submit new transaction from Composer REST Server, but I'm getting error.
On the web, I couldn't find any decent sample for transaction's parameter.
Other method (ex: Getting assets, Getting transactions, etc.) is working.
How should I write for transaction submitting parameter?
Thanks.
Clipboard - December 10, 2018 8:09 PM
Clipboard - December 10, 2018 8:10 PM
Clipboard - December 10, 2018 8:14 PM
I'm trying to deploy trade-network to multi-org and on step 17 i'm getting below error ` Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Command failed
`
I'm trying to deploy trade-network.ban to multi org network. and on step 17 ```
``` `composer network start -c PeerAdmin@byfn-network-org1 -n trade-network -V 0.1.14 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem` I'm getting following error ```
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Command failed
``` what is the reason behind this error? how to solve this issue? Please help
[ ](https://chat.hyperledger.org/channel/composer?msg=aGzazDjEgr2YTQxBF) @FLASHJr This looks like you are using Composer v0.20 with Fabric v1.1
For Composer v).20 you need to use Fabric 1.2.1
[ ](https://chat.hyperledger.org/channel/composer?msg=aGzazDjEgr2YTQxBF) @FLASHJr This looks like you are using Composer v0.20 with Fabric v1.1
For Composer v0.20 you need to use Fabric 1.2.1
hi guyz i meet this problem when trying to run `composer identity request`
`Error: failed to request identity. Error trying to enroll user and return certificates. Error: Enrollment failed with errors [[{"code":20,"message":"Authentication failure"}]]`
what should i do?
i found the cause i solved it
thanks all
if anyone meet correspond problem
feel free to ping me
Has joined the channel.
hi there
is it possible to define ACL rules to allow access to certain functions on a chaincode ?
Hello guys, is it possible to use private data collection in composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=8w2Af67KPxh8nqoin) @ttarey no it does not https://chat.hyperledger.org/channel/composer?msg=eWm8xyGA8jB3taEdH
Has joined the channel.
Hello there, I want to know how to integrate customized front-end (eg: Using Angular) with the business network of Hyperledger Composer. Can please anybody help me out?
@Basil-3 I used Python to connect to the REST server
And then it was smooth sailing from there
As for my question, does anyone know how to create another card? I need to create a user card with only admins having access to the admin card. Would anyone know how to do this?
As for my question, does anyone know how to create another card? I need to create a user card for everyday users with only admins having access to the admin card. Would anyone know how to do this?
[ ](https://chat.hyperledger.org/channel/composer?msg=XkYjTYn3MWkBWppJS) @mahoney1 Thank you @mahoney1
@mahoney1 @davidkel Issue resolved. Problem occured due to network connectivity issue. Thank you for your time.
Error: REQUEST_TIMEOUT\n at Timeout._onTimeout (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/Peer.js:94:20)\n at ontimeout (timers.js:475:11)\n at tryOnTimeout (timers.js:310:5)\n at Timer.listOnTimeout (timers.js:270:5)"
I got this error when I try to invoke any GET operation from my rest server ."Error: REQUEST_TIMEOUT\n at Timeout._onTimeout (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/Peer.js:94:20)\n at ontimeout (timers.js:475:11)\n at tryOnTimeout (timers.js:310:5)\n at Timer.listOnTimeout (timers.js:270:5)"
I got this error when I try to invoke any GET operation from my rest server ."Error: REQUEST_TIMEOUT\n at Timeout._onTimeout (/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/Peer.js:94:20)\n at ontimeout (timers.js:475:11)\n at tryOnTimeout (timers.js:310:5)\n at Timer.listOnTimeout (timers.js:270:5)"
1) I am connecting the network which is running in another server.
2) Connecting through card from my local rest server.
proxy
[ ](https://chat.hyperledger.org/channel/composer?msg=7smrZ2WNgwvGRPhze) @brianpesy There is a 3 step process to create and use new Business Connection Card:
1. Create the Participant - just a data object like an Asset
2. Issue an Identity for that Participant - and this creates the card.
3. Import the Card
You can do the 2 steps on the command line, in the Playground, with the Javascript API, or on the REST server.
Note that when the Card is created it contains a one-time secret that gets replaced with Credentials the first time that the card is used, so best practise whilst in dev/test is to Export after the first use so you could add 2 more steps:
4. Test the card
5. Export the card
[ ](https://chat.hyperledger.org/channel/composer?msg=HB5HtvuFKowZCMppH) @pumicerD - yes - you can specify the class name of your Transaction as the resource in an ACL.
(You can also specify a Resource as an Asset or Participant, and then specify a Transaction to further refine your access.)
https://hyperledger.github.io/composer/latest/reference/acl_language
[ ](https://chat.hyperledger.org/channel/composer?msg=Ro6t7dNccHQZcsZBN) @purandam Is the timeout occurring after a period of inactivity?
I assume that you have tried to `ping` the Business Network and that it is running OK?
You don't say which version of Composer you are working with, but I would suggest moving to the latest version of v0.19 or v0.20 as they have recent fixes in them.
The timeout and keepalive between the REST server and the Fabric servers is to do with the underlying `grpc` and the following setting in the connection.json of the card you are using for the REST server should help:
```
"peer0.org1.example.com": {
"url": "grpcs://peer0.org1.example.com:7051",
"eventUrl": "grpcs://peer0.org1.example.com:7053"
"grpcOptions": {
"ssl-target-name-override": "peer.org1.example.com",
"grpc.http2.max_pings_without_data": 0,
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----
[ ](https://chat.hyperledger.org/channel/composer?msg=Ro6t7dNccHQZcsZBN) @purandam Is the timeout occurring after a period of inactivity?
I assume that you have tried to `ping` the Business Network and that it is running OK?
You don't say which version of Composer you are working with, but I would suggest moving to the latest version of v0.19 or v0.20 as they have recent fixes in them.
The timeout and keepalive between the REST server and the Fabric servers is to do with the underlying `grpc` and the following setting in the connection.json of the card you are using for the REST server should help:
```
"peer0.org1.example.com": {
"url": "grpcs://peer0.org1.example.com:7051",
"eventUrl": "grpcs://peer0.org1.example.com:7053"
"grpcOptions": {
"ssl-target-name-override": "peer.org1.example.com",
"grpc.http2.max_pings_without_data": 0
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----
in the rest server, when i imported the identity card twice by mistake, the identity no longer working. and i get the following error : /api/system/ping: Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
what is the best practice in this case.
[ ](https://chat.hyperledger.org/channel/composer?msg=YPi9rKoT6b82XSF3J) @rthatcher I am using current version.
Network is hosted in another system and they are provided the business card to connect the system.
Rest server is up but when I try to start any operation like "Get" , it is unable fetch the value.
Should I add the property in business card?
[ ](https://chat.hyperledger.org/channel/composer?msg=YPi9rKoT6b82XSF3J) @rthatcher
Thanks for your reply.I am using current version.
Network is hosted in another system and they are provided the business card to connect the system.
Rest server is up but when I try to start any operation like "Get" , it is unable fetch the value.
Should I add the property in business card?
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=BLjM2jcmDo5QSfpE5) @rrishmawi Please see my comment from earlier today - if you have an enrollment problem is it likely to be that you are importing an 'old' card with an expired one-time secret. So your workflow is create-import-test-export.
https://chat.hyperledger.org/channel/composer?msg=jiSCKBD3a8D9EXxpR
@purandam - yes you should add that grpcOption to the connection.json file for the card - add it for all the peers the REST server might connect to.
Has joined the channel.
IMG_20181211_133321.jpg
[ ](https://chat.hyperledger.org/channel/composer?msg=RCsCRdX8CzoZtPPHE) @Basil-3 see the docs -https://hyperledger.github.io/composer/latest/applications/applications-index and examples here (multi user app based on angular example) -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc and in the Composer sample applications repo -> https://github.com/hyperledger/composer-sample-applications/tree/master/packages/vehicle-manufacture-manufacturing
@shkakkad see item 8 (REQUEST_TIMEOUT) in table shown here and make adjustments as appropriate -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues
[ ](https://chat.hyperledger.org/channel/composer?msg=enuJiGkPpRApixr6d) @rthatcher THanks you @rthatcher, i understand this fact. what i am saying is that if an already imported card, is used again, rest server should return an error, and not change anything.
@rrishmawi It allows you to replace the card if the certificate expires for example. So it's more of an Add/Replace mechanism
@rthatcher @davidkel @mahoney1 composer query language is returning only max 10000 rows at a time, even though more than 10000 rows present which fulfill the query criteria. is there any limit that it can return only 10000??
@ShaikSharuk Yes it is a limit in fabric itself. You can configure your peers to use a different limit. its defined in the core.yaml of the peer and can be overridden by an environment variable `CORE_LEDGER_STATE_COUCHDBCONFIG_QUERYLIMIT` (I think).
@ShaikSharuk Yes it is a limit in fabric itself. You can configure your peers to use a different limit. its defined in the core.yaml of the peer and can be overridden by an environment variable `CORE_LEDGER_STATE_COUCHDBCONFIG_QUERYLIMIT` (I think) as well.
@rrishmawi You can always code your application that uses the rest server to check for the existence of the card yourself before importing it as there is an api to do so. The test explorer interface should only be used for development purposes and never as a production or exposed interface outside of development use.
@rrishmawi You can always code your application that uses the rest server to check for the existence of the card yourself before importing it as there is an api to do so. The test explorer interface should only be used for development purposes and never in production or exposed outside of development use.
Clipboard - December 11, 2018 4:50 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=epDc4nuiDmCu9AE6f) @davidkel I see, you are referring to api/wallet/default? if so, in multi user mode, is that per user, meaning that it will get the card of the user (based on the access token)?
@rrishmawi `GET /wallets` probably - its for whatever application user you've mapped it to - ie the business network card containing the identity that you issued previously (for a participant in the business network)
Has joined the channel.
Hello everyone. I am a beginner of Composer. Can I get the Identity that sent a transaction in the script.js?
Hi everyone. I am a beginner of Composer. Can I get the Identity that sent a transaction in the script.js?
@yukimochizuki getCurrentIdentity will return you the submitting identity, getCurrentParticipant will return the mapped participant for that identity
@davidkel Thank you very much!!
Has joined the channel.
Screenshot from 2018-12-12 08-32-25.png
Hi, Anyone knows why LIMIT is not working in quereis.qry file.
@mahoney1 I have been through all the web pages but I have already accomplished all of these. I just want to change the look at frond-end of REST API or maybe just create basic HTML page to cater the front-end. So even if I create webpages using HTML then how I am going to call transaction functions on webpage?
Ha ! I finally found my issue installing Hyperledger on MacOS Mojave ! I guess :)
Hello guys! Can u help me understand about id's on reallife applications? For example the ID of an asset how I handle it? From client side (angular app? is it safe?), or inside composer js logic, or from third part source? Is there a way to add automatic id chosen by blockchain?
@Karthik1337 LIMIT is not a supported parameter and is ignored, along with SKIP. This is because fabric itself doesn't allow those values to be set
@nicholasp The id has to be deterministic and unique, which makes it difficult for the TP function to try to set the id. Better to be set by the client calling the TP function.
@Basil-3 The composer-rest-server explorer page is a testing interface for development use only and nothing more. In production you would turn this feature of the composer-rest-server off. You can create your own web based application to invoke the rest api's of the composer rest server. This is a very common pattern for web applications so you would need to understand the basics of writing web applications and how they would invoke rest apis. If you follow the https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html tutorial you will have generated an angular web application at the end that does communicate with the composer-rest-server.
is there a best practice of how to generate at client? how am I safe with multiple users adding data at same time that will not fail (taking same id)?
@davidkel Is there any way to implement pagination in composer?
@Karthik1337 No there isn't, sorry.
[ ](https://chat.hyperledger.org/channel/composer?msg=enuJiGkPpRApixr6d) @rthatcher Issue remain same. Is there any alternative solution.
[ ](https://chat.hyperledger.org/channel/composer?msg=enuJiGkPpRApixr6d) @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=enuJiGkPpRApixr6d) @rthatcher Issue remain same. Is there any alternative solution.
@nicholasp Your application will need to have a process for defining a unique id for the asset and that will be linked to the business case you are trying to solve. I've seen applications use a uuid or the current time for example to define the id.
@Karthik1337 I've not tried, but you could use fabric 1.3 and then the getNativeAPI call in a TP function to use the actual fabric api's to invoke a query and use the pagination capability of fabric 1.3 itself. You can then pass the bookmark back to your application as part of the data you return and manage it yourself. Note that using the getNativeAPI will bypass all ACL checking of the data returned from the query.
@davidkel thanks a lot!
[ ](https://chat.hyperledger.org/channel/composer?msg=DfiGHtTQKYQEo74hL) @sam3313 - the 'authPath' is specified as part of the COMPOSER_PROVIDERS environment variable - so I would think that either the environment variable is not properly set, or that the wrong value is specified.
@purandam - unfortunately there is no alternative - the one time secret can only be used one time :-)
It might help you to note that a .card file that only contains the secret is approx 1000 bytes, but an exported .card file that includes the credentials (cert/keys) will be approx 2500 bytes in size - so you will know when you have successfully exported a card with credentials.
@rthatcher @mahoney1 @davidkel I have restarted fabric by changing some parameters ,and getting following error when trying to ping Error: Error trying to ping. Error: failed to execute transaction 92c0880782151750a0b125b1417cc716b20f882b1f4a0fd741a5c5a49d3922fb: failed to get deployment spec for : getdepspec composerchannel/responded with error: chaincode fingerprint mismatch: data mismatch. can you tell whats the error and solution to resolve it without loosing data
Hi experts, i am willing to implement an API through composer rest server, that return a curated list of assets. meaning that assets with the actual names of the related data. for example if i have an asset.
asset Agreement identified by agreementId {
o String agreementId
--> User initiator
}
then i want a get API that return the data as agreementId and user name (instead of the resource:org.example.User:23423). how to achieve that? is it possible to return data with transactions? i looked into queries, those only return assets as is? what should i do?
Hi experts, I am willing to implement an API through composer rest server, that return a curated list of assets. meaning that assets with the actual names of the related data. for example, if I have an asset.
asset Agreement identified by agreementId {
o String agreementId
--> User initiator
}
then I want a get API that returns the data as agreementId and username (instead of the resource:org.example.User:23423). how to achieve that? is it possible to return data with transactions? I looked into queries, those only return assets as is? what should I do?
@rthatcher @mahoney1, I appreciate if you answer my question, I need to know what is the best practice.
@rrishmawi see section `Returning data from transaction processor functions` in https://hyperledger.github.io/composer/latest/reference/js_scripts
[ ](https://chat.hyperledger.org/channel/composer?msg=ieum6t6nr5EcRSLBv) @davidkel @rthatcher @mahoney1 pls help
I followed the access Control tutorial, and as an exercise, I tried to adapt the ACL of the carauction-network to permit the members to publish their auctions by themselves. So I created 2 new IDs, A for memberA@acme.org and B for memberB@acme.org.
I added a rule (I guessed it could work) as follows:
rule MemberAuction {
description: "Allow the member to make an Offer by himself"
participant(m): "org.acme.vehicle.auction.Member"
operation: CREATE
resource(v): "org.acme.vehicle.auction.Offer"
condition: (v.member.getIdentifier() == m.getIdentifier())
action: ALLOW
}
At first it worked fine, and ID A created it's auction. Good.
But then, I did'nt manage to create ID B's auction, because this error 'Error: Error trying invoke business network with transaction id c16e31176dda53710c8afb1d2f4ec523832ec7e0a26b37203f5c7ef08c559337. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: transaction returned with failure: AccessException: Participant 'org.acme.vehicle.auction.Member#memberB@acme.org' does not have 'UPDATE' access to resource 'org.acme.vehicle.auction.VehicleListing#listingId:ABCD''
Eventually, I realized that the auction creation succeded only because memberA satisfied rules VehicleOwner and VehicleListingOwner in the example provided !
So, here is my question: is it possible to enable the capacity to Members to push their own Offers on the Ledger in the carauction-network model? In a way not too complicated ? (I'm afraid all the logic must be changed)
Hello,I followed the access Control tutorial, and as an exercise, I tried to adapt the ACL of the carauction-network to permit the members to publish their auctions by themselves. So I created 2 new IDs, A for memberA@acme.org and B for memberB@acme.org.
I added a rule (I guessed it could work) as follows:
rule MemberAuction {
description: "Allow the member to make an Offer by himself"
participant(m): "org.acme.vehicle.auction.Member"
operation: CREATE
resource(v): "org.acme.vehicle.auction.Offer"
condition: (v.member.getIdentifier() == m.getIdentifier())
action: ALLOW
}
At first it worked fine, and ID A created it's auction. Good.
But then, I did'nt manage to create ID B's auction, because this error 'Error: Error trying invoke business network with transaction id c16e31176dda53710c8afb1d2f4ec523832ec7e0a26b37203f5c7ef08c559337. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: transaction returned with failure: AccessException: Participant 'org.acme.vehicle.auction.Member#memberB@acme.org' does not have 'UPDATE' access to resource 'org.acme.vehicle.auction.VehicleListing#listingId:ABCD''
Eventually, I realized that the auction creation succeded only because memberA satisfied rules VehicleOwner and VehicleListingOwner in the example provided !
So, here is my question: is it possible to enable the capacity to Members to push their own Offers on the Ledger in the carauction-network model? In a way not too complicated ? (I'm afraid all the logic must be changed)
[ ](https://chat.hyperledger.org/channel/composer?msg=nFbGg7adw6qP3ChMa) @davidkel Thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=hc7HiuZrS7pZCZ4qr) @davidkel Thank you @davidkel, query transaction processors is exactly what i wanted
@ShaikSharuk Sorry no idea how you might have achieved a fingerprint mismatch on chaincode, all I can suggest is try reverting the fabric changes you made
Has joined the channel.
Has joined the channel.
@Nammalvar yes, you can always remove the ACL condition that restricts the update to VehicleListing to ownership (in the ACL rules) or work out what you want to restrict - also move that rule further up the list to be evaluated, before the `Member` rule and re-deploy
hi,how can i update the endorsement policy on the network?
composer network update -c PeerAdmin@byfn-network-org1 -n trade-network -V 0.0.1 -o endorsementPolicyFile=/tmp/composer/endorsement-policyNEW.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
@abityildiz Appendix A: 'Adjusting the Endorsement Policy to accommodate a 3rd Organization' of [this guide](https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82), has an example of the steps you need to perform
[ ](https://chat.hyperledger.org/channel/composer?msg=HTN89XYF7Hddnvnjv) @mahoney1 thanks.
Has joined the channel.
composer.PNG
composer.PNG
@garunkumar450 - this is not a Composer problem (the script is just running some `docker pull` commands) it looks like a network glitch - I suggest re-running the download.sh script
Has left the channel.
Hi. I'am looking for detailed *CouchDB* query language documentation. E.g. We use a *LIMIT* keyword which doesn't work. ```query selectPagedExposures {
description: ""
statement:
SELECT com.example.Exposure
WHERE (details.Unit == _$unitCode)
ORDER BY details DESC
LIMIT _$take SKIP _$offset
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=v3NDdWEwq7zsXXT5J) @JackMalinowski As mentioned earlier today, unfortunately LIMIT isn't supported in Composer (or Fabric)
https://chat.hyperledger.org/channel/composer?msg=Wm5dCrx6h5iabcGqx
@rthatcher in my network shipper wants to see buyer details if buyer grants the permission is it possible ?
[ ](https://chat.hyperledger.org/channel/composer?msg=SfTmNnTFQkpmg2pcx) @sureshtedla - Yes you can do that. Rule 1B in the ACL tutorial shows you a very similar scenario: https://hyperledger.github.io/composer/latest/tutorials/acl-trading
[ ](https://chat.hyperledger.org/channel/composer?msg=zso4zi5PrvoJMgcxW) @rthatcher Thanks for quick reply for example if we have different buyers like buyer 1, buyer2 and different sellers seller 1 , seller 2 if buyer1 grants permission to seller2 he can access buyer1 orders and others details is it possible? I am getting confusion can you please explain in simple way
Screenshot from 2018-12-12 12-44-53.png
Could someone please suggest me to solve this issue
#cli
#composer-ci
I have tried many things to enable for me to setup the dev. environment on my macBook Air. Could someone advise?
Screen Shot 2018-12-12 at 2.29.09 PM.png
Has joined the channel.
I am trying to deploy multiple REST server in mu system. I have two channels but the docker network is the same. Should i need two different Mongo instance fro these two, or can i use the same Mongo storage for multiple rest servers?
At this point what i did is change the COMPOSER_CARD variable and the --name , -p on the below deployement code...Will it work for my second REST server?docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-e COMPOSER_TLS="${COMPOSER_TLS}" \
-v ~/.composer:/home/composer/.composer \
--name rest1 \
--network net_byfn \
-p 3005:3005 \
myorg/my-composer-rest-server
Has joined the channel.
Hi, I have setup Hyperledger Fabric verison 1.3 on Kubernetes. I have deployed my BNA and chaincode container has been associated with the peer pod as well, but when I am trying to make any transaction using it then it keeps showing below ERROR in response:
{"message":"500 - {\"error\":{\"statusCode\":500,\"name\":\"Error\",\"message\":\"Error trying invoke business network with transaction id 93e497dc39976da206723b9f82e9ea3e2ff1d7d269e4ba299290ff8573d170a3. Error: Error received from sendTransaction: Error: Failed to send transaction successfully to the orderer status:NOT_FOUND \",\"stack\":\"Error: Error trying invoke business network with transaction id 93e497dc39976da206723b9f82e9ea3e2ff1d7d269e4ba299290ff8573d170a3. Error: Error received from sendTransaction: Error: Failed to send transaction successfully to the orderer status:NOT_FOUND \\n at HLFConnection.invokeChainCode (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\\n at
getQueryResult is giving" Error: transaction returned with failure: TypeError: Converting circular structure to JSON" while returning JSON.stringify(result)
getQueryResult is giving" Error: transaction returned with failure: TypeError: Converting circular structure to JSON" while logging JSON.stringify(result); how to parse the output
Has joined the channel.
Hi, I'm using JWT for rest server authentication. After I have imported my card to the wallet and check if it exist in the wallet, I make an operation request but I got this error: "Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]". I don't know what's wrong with it ?
Hi All, i am trying to implment a query transaction processor as in the following example. However, the getAll method does not resolve relationships and i get undefined exception. what i read in stackoverflow is that resolve and resolveAll are not yet supported in AssetRegistry (runtime api). I am not convinced this is the case, if it is, then this whole feature (the query transaction processor) is useless. pleas let me know what to do in this case. Thanks
asset MyAsset identified by assetId {
o String assetId
o String value
--> SomeotherAsset internalAsset
}
@commit(false)
@returns(MyAsset[])
transaction MyTransaction {
}
const allAssets = [];
const assetRegistry = await getAssetRegistry('org.sample.MyAsset');
const localAssets = await assetRegistry.getAll();
for (const asset of localAssets) {
let something = asset.internalAsset.getIdentifier(); // undefined exception
localAssets.push(asset);
}
[ ](https://chat.hyperledger.org/channel/composer?msg=pmDHzYdYtzudgs4FX) @packkkkk It happened with me, it is probably due to importing the card twice, or using a card that was imported previously by other means.
Is it possible to connect multiple instances of blockchains to a single Hyperledger rest server?
If so, how does it work?
So let's say I have user1 and user2 that have their own blockchains. I want both of them to communicate over a single rest server
Unless it's counter intuitive to Hyperledger's main idea?
[ ](https://chat.hyperledger.org/channel/composer?msg=ksSc3fgazrvnZRzLJ) Hi All, i am trying to implment a query transaction processor as in the following example. However, the getAll method does not resolve relationships and i get undefined exception. what i read in stackoverflow is that resolve and resolveAll are not yet supported in AssetRegistry (runtime api). I am not convinced this is the case, if it is, then this whole feature (the query transaction processor) is useless. pleas let me know what to do in this case. Thanks
asset MyAsset identified by assetId {
o String assetId
o String value
--> SomeotherAsset internalAsset
}
@commit(false)
@returns(MyAsset[])
transaction MyTransaction {
}
const allAssets = [];
const assetRegistry = await getAssetRegistry('org.sample.MyAsset');
const localAssets = await assetRegistry.getAll();
for (const asset of localAssets) {
let something = asset.internalAsset.getIdentifier(); // undefined exception
localAssets.push(asset);
}
[ ](https://chat.hyperledger.org/channel/composer?msg=u9e4pmj7D77j8br7P) @brianpesy composer rest server is for one business network model. you can create your own rest server and do anything you need with it.
Hi, I am looking for information about how to use Private Data Collections with Composer . Private data collection were introduced in v1.2 of HLF but I can't find how to use it with a business network developped with Composer. Any help ?
@jaguarg You can't use private Data Collections with Composer
[ ](https://chat.hyperledger.org/channel/composer?msg=Erysvsn5xELKXsCwt) @davidkel, can you please answer my question if possible.
@rrishmawi There is no auto resolving when getting a single or all assets from a registry, nor is there an api to do so.
@rrishmawi You need to do it yourself in the TP function I would guess. So long as there is a resource string that defines the reference to the associated asset, you would get the registry for that asset then get that asset from the id in the resource string.
@rrishmawi You need to do it yourself in the TP function I would guess. So long as there is a resource string (or whatever is stored in the property that defines the relationship) that defines the reference to the associated asset, you would get the registry for that asset then get that asset from the id.
[ ](https://chat.hyperledger.org/channel/composer?msg=sXXzCL3Fqy6MW22rq) @davidkel this is a huge limitation, how do you do that usually?
[ ](https://chat.hyperledger.org/channel/composer?msg=pmDHzYdYtzudgs4FX) @packkkkk - Please see this discussion from yesterday about the One-time secret ...
https://chat.hyperledger.org/channel/composer?msg=enuJiGkPpRApixr6d
@rrishmawi so a quick check in playground shows what is returned for a relationship is a relationship object
[ ](https://chat.hyperledger.org/channel/composer?msg=FQPNr2D69fzhXq6Do) @rthatcher so how about a log out step proccess ?
[ ](https://chat.hyperledger.org/channel/composer?msg=uJouoPnRPcGoiszpo) @davidkel yes, and i am not sure what to do with it. i tried AssetRegistry.get(asset.owner.getIdentifier()) and it return also a relationship opbject.
[ ](https://chat.hyperledger.org/channel/composer?msg=L5ZZfjFZx2cRTD4WW) i want the data?
[ ](https://chat.hyperledger.org/channel/composer?msg=KsGfwwe7E84BiQuio) @Techie Are you using this n Composer using the getNativeApi or are you using 'native' Fabric chaincode? In any event, the `getQueryResult` returns an `iterator` - there is sample code for unpacking an iterator at the end of this doc, https://hyperledger.github.io/composer/latest/reference/js_scripts
There will be other examples in the Fabric docs, and further questions should go to the #fabric-chaincode-dev channel :-)
[ ](https://chat.hyperledger.org/channel/composer?msg=uJouoPnRPcGoiszpo) @davidkel Thanks it works, i was missing the await :slight_smile: before the assetRegistry.get that gets the inner related object.
---------------------------------------------------
Fabric v1.4.0 RELEASE CANDIDATE ANNOUNCEMENT:
https://lists.hyperledger.org/g/fabric/topic/announcement_hyperledger/28735908
---------------------------------------------------
Highly recommend that all Composer users start getting familiar with this version and the new programming models for both the node-sdk and the node chaincode.
---------------------------------------------------
Fabric v1.4.0 RELEASE CANDIDATE ANNOUNCEMENT:
https://lists.hyperledger.org/g/fabric/topic/announcement_hyperledger/28735908
---------------------------------------------------
Highly recommend that all Composer users start getting familiar with this version and the new programming models for both the node-sdk and the node chaincode. For reference, please also see https://lists.hyperledger.org/g/composer/message/125
[ ](https://chat.hyperledger.org/channel/composer?msg=hmLSWeyxLW7RTabGy) @rthatcher I got the same error. Now I have pasted detail error .
_registerForChaincodeEven Eventhub *******:*** for CC Events disconnected with error 13 INTERNAL: keepalive watchdog timeout {}$
:HLFConnection :_registerForChaincodeEven Eventhub *******:*** for CC Events disconnected with error 13 INTERNAL: keepalive watchdog timeout {}$
:HLFConnection :_registerForChaincodeEven could not find any connected event hubs out of 4 defined hubs to listen on for chaincode events {}$
Though my rest server is working but unable to fetch the data from hyperledger network which is installed in another system. I have connected in remote via given card. And my restserver is installed in my local server.
@purandam Please raise a stackoverflow question. You should provide all details about your setup and specifically include things like fabric version and composer version as well as operating systems. Include any error messages especially when you perform the GET request. Also I would suggest turning on composer debug logging for the rest server to get more information. Refer to the `Diagnosing Problems` of the docs for more info. Also include information such as whether the rest server works ok if you restart it but after a defined period of time it stops (and give that defined period of time)
[ ](https://chat.hyperledger.org/channel/composer?msg=RQsF9mrbpaTfQLmNm) @davidkel Ok. i am raising the same in stack overflow .
---------------------------------------------------
Fabric v1.4.0 RELEASE CANDIDATE ANNOUNCEMENT:
https://lists.hyperledger.org/g/fabric/topic/announcement_hyperledger/28735908
---------------------------------------------------
Highly recommend that all Composer users start getting familiar with this version and the new programming models for both the node-sdk and node chaincode. For reference, please see https://lists.hyperledger.org/g/composer/message/125 as to why it is highly recommended you should now focus your efforts away from composer and onto the fabric 1.4 release.
Hello,
I try to deploy a BNA on composer 1.2 but I have this error when I do a `composer network start` :
```Response from attempted peer comms was an error: Error: transaction returned with failure: ReferenceError: window is not defined```
I don't find anything on the internet, any idea ?
Has joined the channel.
@davidkel Is there any concise documentation on transitioning from composer to fabric ? I have been trying to accomplish what you have suggested but having trouble on grasping concepts like ACLs etc. TIA
Hi all, is there a LIKE or something similar in query language?
We have deployed TunaNetwork on to the local fabric using Composer and I have performed the tx, now I want to check the Tx data, so what should I do
from leveldb / couch db
Can someone help me understand the difference between participants and peers
[ ](https://chat.hyperledger.org/channel/composer?msg=Qmxj6FiofkW8XMNvm) @rrishmawi I'm not sure about the Composer layer, but Fabric itself supports all CouchDB query operators. `regex` is one of them. Although be careful as this will introduce record scans so you need to check if the performance is acceptable given your use case
@davidkel, thank you for the confirmation
[ ](https://chat.hyperledger.org/channel/composer?msg=ruvGAqrMKfaNJ9Xnn) @dave.enyeart Thanks @dave.enyeart
Hi everyone, I got this error when I call getParticipantRegistry: "Object with ID 'Participant:ehr.uit' in collection with ID '$sysregistries' does not exist" ( My participant namespace is "ehr.uit.participant.Student/Worker")
@saeedi There isn't any documentation at the moment on porting from composer to fabric, it's something we would like to do so hopefully in the near future. ACLs are one area where it's difficult to provide any concise information. There is no direct equivalent in fabric so the only option is to develop your own solution to meet your requirements. You can look at using the Client Identity package available in chaincode to retrieve attributes you set on certificates to make decisions on access. This is referred to as Attribute Based Access Control. You also need to make sure you put proper controls in place at the channel, data or infrastructure level but you would have had to do that for ACLs in Composer anyway. For example if a user has direct access to their identity and the fabric network, they can query the ledger directly of listen for block events and be able to infer the data.
@saeedi There isn't any documentation at the moment on porting from composer to fabric, it's something we would like to do so hopefully in the near future. ACLs are one area where it's difficult to provide any concise information. There is no direct equivalent in fabric so the only option is to develop your own solution to meet your requirements. You can look at using the Client Identity package available in chaincode to retrieve attributes you set on certificates to make decisions on access. This is referred to as Attribute Based Access Control. You also need to make sure you put proper controls in place at the channel, data or infrastructure level but you would have had to do that for ACLs in Composer anyway. For example if a user has direct access to their identity and the fabric network, they can query the ledger directly or listen for block events and be able to infer the data.
@saeedi There isn't any documentation at the moment on porting from composer to fabric, it's something we would like to do so hopefully in the near future. ACLs are one area where it's difficult to provide any concise information. There is no direct equivalent in fabric so the only option is to develop your own solution to meet your requirements. You can look at using the Client Identity package available in chaincode to retrieve attributes you set on certificates to make decisions on access. This is referred to as Attribute Based Access Control. You also need to make sure you put proper controls in place at the channel, data or infrastructure level but you would have had to do that for ACLs in Composer anyway. For example if a user has direct access to their identity and the fabric network, they can query the ledger directly (ie not through a chaincode invocation) or listen for block events and be able to infer the data.
Has joined the channel.
Clipboard - December 13, 2018 9:45 PM
Clipboard - December 13, 2018 9:45 PM
Hello. when trying composer network install i am getting the error: Could not load any root certificate.
Hello. when trying composer network install i am getting the error: Could not load any root certificate.
Hello. when trying composer network install i am getting the error: Could not load any root certificate.
When loading the network i get the following
When loading the network i have the following:
LOCAL_VERSION=1.2.0
DOCKER_IMAGE_VERSION=1.4.0-rc1
=================== WARNING ===================
Local fabric binaries and docker images are
out of sync. This may cause problems.
===============================================
Hello. when trying composer network install i am getting the error: Could not load any root certificate.
When loading the network i get the following
When loading the network i have the following:
LOCAL_VERSION=1.2.0
DOCKER_IMAGE_VERSION=1.4.0-rc1
=================== WARNING ===================
Local fabric binaries and docker images are
out of sync. This may cause problems.
===============================================
Would this be anything to do with it?
Hello. when trying composer network install i am getting the error: Could not load any root certificate.
Hello. when trying composer network install i am getting the error: Could not load any root certificate. Using Fabric 1.2
Hello. when trying composer network install i am getting the error: Could not load any root certificate. Using Fabric 1.2
I am also getting a warning that the local binaries and docker image version are out of sync. LOCAL VERSION=1.2.0. DOCKER IMAGE VERSION=1.4.0-rc1. Could this be part of the issue, could anyone tell me how i resolve the docker image version please?
Hello. when trying composer network install i am getting the error: Could not load any root certificate. Using Fabric 1.2
Also when loading up the network m also getting a warning that the local binaries and docker image version are out of sync. LOCAL VERSION=1.2.0. DOCKER IMAGE VERSION=1.4.0-rc1. Could this be part of the issue, could anyone tell me how i resolve the docker image version please?
[ ](https://chat.hyperledger.org/channel/composer?msg=FJEbzkgSvmPPwRm74) Hello. when trying composer network install i am getting the error: Could not load any root certificate. Using Fabric 1.2
It seems to be an issue when inserting the certificate strings into connection.json. Having some trouble with the method in the multi org tutorial working. I tried the following function instead https://stackoverflow.com/questions/49667690/ssl-transport-security-cc599-could-not-load-any-root-certificate which seemed to work getting past the orderer root certificate, but still errors on the peers. Now for some reason the function is returning the string on multiple lines again and neither certificate is working. Does anyone have other methods for inputting the certificates into .json please?
@packkkkk , I have the exact same error when trying to update from 0.90 to 1.2
@packkkkk maybe we can open an issue ?
I have this error :
``` ~/apps/project/server/server$ tail -f server.log
cause:
{ Error: ENOENT: no such file or directory, open '/tmp/.composer/cards/admin@my-network'
at Object.fs.openSync (fs.js:646:18)
at Object.fs.readFileSync (fs.js:551:33)
at FileSystemWallet.get (/home/admlcl/apps/project/server/server/node_modules/composer-wallet-filesystem/lib/filesystemwallet.js:145:34)
at
I tried to copy `.composer\cards` into '\tmp\.composer\` but now I have this error :
```
Error: Error trying to ping. Error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier 'c3e4428e2652f4bb5fbee33cc420acc7ac114f840a24016635211640f9a080a0', has not been registered
at _checkRuntimeVersions.then.catch (/home/admlcl/apps/project/server/server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:886:34)
at
I have no idea what is the root cause.
Hi, Anyone knows how to generate a reliable random number?
@davidkel Got it.Thanks
I am facing an error while upgrading my network. Basically this error comes when I'm trying to add a new function call in the existing transaction processor function. This transaction processor function already contains many async/await function calls. However if I add one more function call in this it results into: `running start.js
SyntaxError: Unexpected token const
at eval (eval at compile (/usr/local/src/node_modules/composer-runtime/lib/scriptcompiler.js:99:33),
[ ](https://chat.hyperledger.org/channel/composer?msg=othQ9FgbRNGRLaAC9) @yukimochizuki This is not ideal/recommended. You're trying to generate a random number in transaction processor function and this transaction processor function runs on multiple docker containers assuming you've multiple endorsing peers. And there's no guarantee if each of chaincode container will generate the same random number.
[ ](https://chat.hyperledger.org/channel/composer?msg=MBLx7p88DkbKRS7xS) @mrudav.shukla Thank you. I understand.
:smiley:
I have this model file. My question is how to get all Items belongs to a specific Owner.
I have this model file. My question is how to get all Items belongs to a specific Owner.
participant Owner identified by ownerId {
o String ownerId
o String firstName
o String lastName
}
asset Item identified by itemId {
o String itemId
--> Owner owner
o String name
o String rarity
}
I have this model file. My question is how to get all Items belongs to a specific Owner.
participant Owner identified by ownerId {
o String ownerId
o String firstName
o String lastName
}
asset Item identified by itemId {
o String itemId
--> Owner owner
}
I have this model file. My question is how to get all Items belongs to a specific Owner within script.js.
participant Owner identified by ownerId {
o String ownerId
o String firstName
o String lastName
}
asset Item identified by itemId {
o String itemId
--> Owner owner
}
I am very happy if someone answers.
Has joined the channel.
Has joined the channel.
Dear All, I am using Fabric v1.3 and working on BYFN example. Everything running on docker containers. My setup running from last 15 days. I am using Hyperledger Composer v0.20.4 on Fabric. But last night I found one of my peer container for Org1 "exited" with the chaincode container. I started the peer container using the command "docker start -ai
@mahoney1 Thank you. I'm trying to understand the way the Chaincode is implemented in composer, but it seems to me a complete mess :sweat: do you have some hints to share about it ?
@biksen As this sounds like a fabric issue I would suggest you try getting help from an appropriate fabric channel
@biksen As this sounds like a fabric issue I would suggest you try getting help from an appropriate fabric channel where fabric experts will be checking
ANNOUNCEMENT
---------------------------------------------------
Fabric v1.4.0 RELEASE CANDIDATE ANNOUNCEMENT:
https://lists.hyperledger.org/g/fabric/topic/announcement_hyperledger/28735908
---------------------------------------------------
Highly recommend that all Composer users start getting familiar with this version and the new programming models for both the node-sdk and node chaincode. For reference, please see https://lists.hyperledger.org/g/composer/message/125 as to why it is highly recommended you should now focus your efforts away from composer and onto the fabric 1.4 release.
@Nammalvar As you seem to be new to Composer I would recommend you invest your time in hyperledger fabric instead rather than composer as per the following announcement
---------------------------------------------------
Fabric v1.4.0 RELEASE CANDIDATE ANNOUNCEMENT:
https://lists.hyperledger.org/g/fabric/topic/announcement_hyperledger/28735908
---------------------------------------------------
Highly recommend that all Composer users start getting familiar with this version and the new programming models for both the node-sdk and node chaincode. For reference, please see https://lists.hyperledger.org/g/composer/message/125 as to why it is highly recommended you should now focus your efforts away from composer and onto the fabric 1.4 release.
@packkkkk did you resolve your pb ?
@davidkel Can we still use fabric-go-sdk with v1.4?
I have this query, i need to get the services of a specific youth, i am not sure why its not returning any value, i know for sure there is data. please let me know what is wrong.
var q = buildQuery('SELECT ' + namespace + '.YouthService WHERE (owner == _$inputValue)');
let singleYouthServices = await query(q,{inputValue: namespace+'.YouthService#'+singleYouth.getIdentifier()});
Has joined the channel.
@rrishmawi checked your ACL rules allow the query to retrieve results? Criteria not match ? A working example is shown here -> https://stackoverflow.com/questions/49693066/how-to-find-whether-the-transaction-already-exist-for-particular-asset-and-parti/49755601#49755601
[ ](https://chat.hyperledger.org/channel/composer?msg=jr4F2bz32JrSvQaPG) @prasanths96 please ask on #fabric-sdk-go thanks
@mahoney1
What should I do with this error ?
``` ~/apps/project/server/server$ tail -f server.log
cause:
{ Error: ENOENT: no such file or directory, open '/tmp/.composer/cards/admin@my-network'
at Object.fs.openSync (fs.js:646:18)
at Object.fs.readFileSync (fs.js:551:33)
at FileSystemWallet.get (/home/admlcl/apps/project/server/server/node_modules/composer-wallet-filesystem/lib/filesystemwallet.js:145:34)
at
it seems like composer 1.2 now store cards in .composer instead of /tmp/.composer
but I can't resolve the pb
@CorentinPacaud normally filesystem based cards are stored in the HOME/.composer directory, not /tmp but not sure why you need to access the 'card' directory directly, you normally use composer CLI or JS APIs to import/export into the user's wallet structure.
[ ](https://chat.hyperledger.org/channel/composer?msg=A328ov8BQ3AwAGwH5) @mahoney1 I use this function `bizNetworkConnection.connect(profile)`
but I have the error above
it worked in 0.9
@packkkkk has the same problem too
@CorentinPacaud you connect with the cardName (eg `admin@my-network` etc)? One assumes you're using Composer 20.x ? see the code example (it has an admin connect and a 'normal' user connect, by cardName). https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#card-api-errors--resolutions. Would also suggest to read the develop apps section https://hyperledger.github.io/composer/latest/applications/node.html (also has an example) and finally the API docs
@CorentinPacaud you connect with the cardName (eg `admin@my-network` etc)? One assumes you're using Composer 20.x ? see the code example (3rd row of table - it has an admin connect and a 'normal' user connect, by cardName). https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#card-api-errors--resolutions. Would also suggest to read the develop apps section https://hyperledger.github.io/composer/latest/applications/node.html (also has an example) and finally the API docs
@CorentinPacaud @packkkkk you connect with the cardName (eg `admin@my-network` etc)? One assumes you're using Composer 20.x ? see the code example (3rd row of table - it has an admin connect and a 'normal' user connect, by cardName). https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#card-api-errors--resolutions. Would also suggest to read the develop apps section https://hyperledger.github.io/composer/latest/applications/node.html (also has an example) and finally the API docs
Revolved....
Hi everyone, can I get asset from composer-cli ? I can submit a transaction but can i get an asset as with Composer-Rest-Server ? Thank you
Or to invoke a query
**REST JWT**
Can we use not one secret for Composer REST server, but many secrets that are unique to each user?
or is it not necessary? which is better?
[ ](https://chat.hyperledger.org/channel/composer?msg=TRtpWFRvRFxZqZRTW) @Nihcep yes, use `composer network list` with criteria -> https://hyperledger.github.io/composer/latest/reference/composer.network.list.html
Has joined the channel.
Hi guys. Is possible to deploy in multiple host ? I would to test it into my 2-3 vm and i would to know if is possible define multi-channel support with composer
i know that is possible with fabric but i don't understand if is possible too composer
[ ](https://chat.hyperledger.org/channel/composer?msg=GPmwjyMuLfv2uPFqH) @VadimInshakov I'm no expert, nor know the use case in detail, but if the TTL for the JWT tokens are shortlived, they would generated each time (depending on expiry) per use. Or you might want to consider a [2FA solution](https://www.thepolyglotdeveloper.com/2017/05/implement-2fa-time-based-one-time-passwords-node-js-api/) so that the token gets regenerated, so that the user can access the REST APIs, after the 2nd factor is validated. HTH
[ ](https://chat.hyperledger.org/channel/composer?msg=GPmwjyMuLfv2uPFqH) @VadimInshakov I'm no expert, nor know the use case in detail, but if the TTL for the JWT tokens are shortlived, they would generated each time (depending on expiry) per use(r). Or you might want to consider a [2FA solution](https://www.thepolyglotdeveloper.com/2017/05/implement-2fa-time-based-one-time-passwords-node-js-api/) so that the token gets regenerated, so that the user can access the REST APIs, after the 2nd factor is validated. HTH
@mattmaru Yes, possible - Composer as a dev framework, and tooling is an abstraction layer above Fabric (and its multi-host environment you mention) - suitable for PoCs or demos but not for production use going fwd - see https://lists.hyperledger.org/g/composer/message/125 (better to check out the new Fabric programming model, which you can check out by reading the [Fabric docs and sample use case here](https://hyperledger-fabric.readthedocs.io/en/latest/developapps/scenario.html) and which you can try out and download today. Composer (via its business network cards) uses connection profiles to define it's connections to the Fabric, and each connection profile specifies a single channel, so if you want to set up multichannel you will need to manage multiple cards, per participant needing to access separate ledgers (channels).
You can check various stack overflow Q&As for Channels with this link:https://stackoverflow.com/search?tab=newest&q=[hyperledger-composer] channel. Also see a recent Github issue on the subject (see the discussions there) -> https://github.com/hyperledger/composer/issues/2103 . Someone has written a blog for multi-host environment https://medium.com/1950labs/setup-hyperledger-fabric-in-multiple-physical-machines-d8f3710ed9b4 (you can test the marbles Fabric sample first, to validate it works when you've configured - any issues with that, ask on #fabric channel for assistance )
@mattmaru Yes, possible - Composer as a dev framework, and tooling is an abstraction layer above Fabric (and its multi-host environment you mention) - Composer's suitable for PoCs or demos but not for production use going fwd - see https://lists.hyperledger.org/g/composer/message/125 (better to check out the new Fabric programming model, which you can check out by reading the [Fabric docs and sample use case here](https://hyperledger-fabric.readthedocs.io/en/latest/developapps/scenario.html) and which you can try out and download today. Composer (via its business network cards) uses connection profiles to define it's connections to the Fabric, and each connection profile specifies a single channel, so if you want to set up multichannel you will need to manage multiple cards, per participant needing to access separate ledgers (channels).
You can check various stack overflow Q&As for Channels with this link:https://stackoverflow.com/search?tab=newest&q=[hyperledger-composer] channel. Also see a recent Github issue on the subject (see the discussions there) -> https://github.com/hyperledger/composer/issues/2103 . Someone has written a blog for multi-host environment https://medium.com/1950labs/setup-hyperledger-fabric-in-multiple-physical-machines-d8f3710ed9b4 (you can test the marbles Fabric sample first, to validate it works when you've configured - any issues with that, ask on #fabric channel for assistance )
thanks @mahoney1
Has joined the channel.
Is it fine to define global variables and functions (const) to be used within a transaction function processor? i would like to create another file where i define utility functions and global variables to be used by all transaction function processors.
[ ](https://chat.hyperledger.org/channel/composer?msg=wMiGYQB2SvpSuKqkW) @rrishmawi yes, you can use separate files for your transaction code - the extra files must be called .js and must be in the same folder.
[ ](https://chat.hyperledger.org/channel/composer?msg=NDNxM4XPEJH8SDsWJ) @mahoney1 Many thanks to @mahoney1.
Hey, I have setup hyperdeger fabric on kubernetes. Everything works fine, but after sometime automatically the calls that run on blockchain starts failing with the following ERROR:
{"message":"500 - {\"error\":{\"statusCode\":500,\"name\":\"Error\",\"message\":\"Error trying invoke business network with transaction id 8c4170a20a022fcd02d8c399856ff79523c38aba2a7391bc7d235776aec4e02d. Error: Error received from sendTransaction: Error: Failed to send transaction successfully to the orderer status:NOT_FOUND \",\"stack\":\"Error: Error trying invoke business network with transaction id 8c4170a20a022fcd02d8c399856ff79523c38aba2a7391bc7d235776aec4e02d. Error: Error received from sendTransaction: Error: Failed to send transaction successfully to the orderer status:NOT_FOUND \\n at HLFConnection.invokeChainCode (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\\n at
Has joined the channel.
Hi, Can anyone provide any references/guidance for this: https://stackoverflow.com/questions/53801263/issue-in-starting-upgrading-composer-network-unexpected-token-const
Hi, Can anyone please provide any references/guidance for this: https://stackoverflow.com/questions/53801263/issue-in-starting-upgrading-composer-network-unexpected-token-const
hi all, i got this problem when trying to call an api that was exposed by composer-rest-server
`ExecuteQuery not supported for leveldb`
what should i do?
Hello, We are trying to deploy fabric-network on two physical machines, with orderer, CA and peer0 on one physical machine and Peer1 on another, just like it is in this tutorial, https://medium.com/1950labs/setup-hyperledger-fabric-in-multiple-physical-machines-d8f3710ed9b4.
Soon as we move to your 2nd tutorial (https://medium.com/1950labs/publish-a-business-network-in-multi-host-hyperledger-fabric-a5ad2015a487) for publishing a business network over multi-host fabric network, we encounter following error
composer network install — card PeerAdmin@hlfv1 — archiveFile my-basic-sample.bna
✖ Installing business network. This may take a minute…
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
We made sure by running docker ps on both machines. Everything is perfectly fine.
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
aec720cf21de hyperledger/fabric-peer “peer node start” 4 hours ago Up 4 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
a6669541a6c4 hyperledger/fabric-orderer “orderer” 4 hours ago Up 4 hours 0.0.0.0:7050->7050/tcp orderer.example.com
0d5f15bfe58d hyperledger/fabric-couchdb “tini — /docker-ent…” 4 hours ago Up 4 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
74178801c988 hyperledger/fabric-ca “sh -c ‘fabric-ca-se…” 4 hours ago Up 4 hours 0.0.0.0:7054->7054/tcp ca.example.com
@rthatcher @davidkel @mahoney1 is there any checklist to improve the query performance in hyperledger, if there are 2 lakh assets, then its taking more than 5 min time to execute some queries. I also manually added indexes to couchdb, other than that is there any way?
Hello, is it possible to have enum values with dot " . " like I want some enum value to be "a.b" then how can i do it?
can I specify enum states to be a string? if yes then how?
[ ](https://chat.hyperledger.org/channel/composer?msg=bKFjotQJYF5rRMFvM) @Mehak These 2 errors: Error: No valid responses from any peers. and Error: Failed to connect before the deadline
are usually associated with problems of address resolution or connectivity - the values you have for URLs in the connection.json either don't resolve or don't connect.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=me8i2FrwwZMSHA4qs) @ShaikSharuk Queries can be slow with large volumes of data. Making sure you have adequate hardware resources including fast disks should help.
Composer automatically builds indexes for queries defined in the queries.qry file so putting reqularly used queries in that file makes sense.
I think there is a problem with CouchDB such that it does not use Indexes if the query contains 'or' - so developing queries without 'or' should ensure the indexes are used.
[ ](https://chat.hyperledger.org/channel/composer?msg=aKWe6eK4hAEQ9MJGC) @toanhd It looks like the Fabric you are connecting to is setup to use the standard goleveldb for the State store, for rich queries you need to connect to a Fabric configured with CouchDB.
[ ](https://chat.hyperledger.org/channel/composer?msg=bysKq2LdTLpyWZ8Eu) @amritsharma A '.' is not valid syntax. If you wish to persist with enums, you could try A_B (underscore) perhaps?
[ ](https://chat.hyperledger.org/channel/composer?msg=tvfwZqTkDQCiDtYA8) @mrudav.shukla seems something is wrong with your script (that's why scriptcompiler is unhappy I would imagine :-) ) - suggest to post your JS script - on Stack Overflow - so people can help you, regards...
@mahoney1 yes " _ " works but requirement is to have dot instead, but I guess it is not possible. I'll have to work around.
[ ](https://chat.hyperledger.org/channel/composer?msg=H8SHP7o8NNNd886ff) @mahoney1 Sure, I'll post the script as well. However, issue quite weird. I'm calling some async functions from within the transaction processor function. And those async functions are using fat-arrow functions. For now I've replaced fat-arrow functions with ES5 syntax and it seems to work. The surprising thing some other functions which uses fat-arrow operators are working just fine. :|
@mrudav.shukla should be possible with fat arrow functions introduced with ES6 - also FYI (v0.19 docs) -> https://hyperledger.github.io/composer/v0.19/api/api-doc-index#javascript-language-support
Has joined the channel.
if we have to create a new organization or new peer to an already existing network in hyperledger Fabric, We have to run lot of commands and is very complicated with fabric.
Hyperledger composer is a tool for building the secure blockchain network easily. But the problem is with extending the network. I have to create a front-end application which can further create the participants and organization etc.
Can you please let me know if it is possible to create new peer or organization with the help of hyperledge composer, because i couldn.t find any blog saying that we can use composer to extend the network. It is only possible using hyperledger fabric.
Can you please also give me any link which can explain how to add new organization and new peer to a already existing network programatically (node.js preffered).
If possible with composer, please let me know the steps.
@mahoney1 The connection profile in composer only supports one order even if there is a kafka order service.
So if there is a plan to support more than one order in future?
i have a network with 2 organization...Is it possible to create a COMPOSER REST SERVER which can be accessed by participants of both organizations? Right now i created the SERVER using org1 admin. Even though Org2 participants are visible on the server, the participant cannot do any transaction (including PING) on this REST server
[ ](https://chat.hyperledger.org/channel/composer?msg=u5dBmj6yPr3y7kMob) @vishal21pandita Composer was created to work on top of an Existing Fabric _not_ to create, extend, manage Fabric.
Composer did include a simple dev/test Fabric, but it uses the same Crypto material for anybody who downloads it, so it is definitely only for dev/test.
If you want to build/extend a Fabric I would think OS shell scripts would be better - but this is really a question for the #fabric channel.
I assume you have seen the announcement regarding Composer: https://lists.hyperledger.org/g/composer/message/125
[ ](https://chat.hyperledger.org/channel/composer?msg=u5dBmj6yPr3y7kMob) @vishal21pandita Composer was created to work on top of an Existing Fabric _not_ to create, extend, manage Fabric.
Composer did include a simple dev/test Fabric, but it uses the same Crypto material for anybody who downloads it, so it is definitely only for dev/test.
If you want to build/extend a Fabric I would think OS shell scripts would be better - but this is really a question for the #fabric channel.
I assume you have seen the announcement regarding Composer: https://lists.hyperledger.org/g/composer/message/125
And this information regarding Fabric 1.4:
---------------------------------------------------
Fabric v1.4.0 RELEASE CANDIDATE ANNOUNCEMENT:
https://lists.hyperledger.org/g/fabric/topic/announcement_hyperledger/28735908
---------------------------------------------------
Highly recommend that all Composer users start getting familiar with this version and the new programming models for both the node-sdk and node chaincode. For reference, please see https://lists.hyperledger.org/g/composer/message/125 as to why it is highly recommended you should now focus your efforts away from composer and onto the fabric 1.4 release.
@touchingsoil my understanding is that since Fabric 1.2 (and hence Composer 0.20.x), it allows multiple orderers in the list (in connection.json), so you should be able to list multiple orderers, which it would contact in turn, if the prior entry is unavailable, for the channel that the business network is instantiated upon etc. But do note the announcement posted by @rthatcher above, in that Fabric 1.4 (release candidate news provided above) is the approach for planning/developing for production/pilot use cases.
@anand.balagopalan you can have a REST Server instance accessible by multiple organisations - such as a cloud instance. The remaining issue is 'what access the participants of the business network have by means of ACLs' (instantiated business network on the Fabric channel, chaincode for which is deployed to peer(s) for both Orgs). You can bind the Org2 admin to the NetworkAdmin participant, so 'he' can ping the business network and you can issue identities (as a network admin from either Org, assuming each has its own CA to issue identities) - then map these to the participants you say you have created. The rest is purely, what you enable the participants to do, via the ACLs (if you're creating them from scratch etc - there is an ACL tutorial in the docs https://hyperledger.github.io/composer/latest/tutorials/acl-trading
@mahoney1 Thanks! I am using the Composer 0.19.x. So i will try to upgrade it. And i knew there is no new feature will be added to composer in future, so is there any similar development mode in fabric 1.4 as in Composer?
@touchingsoil there is an extension to experiment with that goes with using Fabric 1.4 on the VSCode marketplace eg. -> https://marketplace.visualstudio.com/items?itemName=IBMBlockchain.ibm-blockchain-platform and tutorials you can find to try it out
Has joined the channel.
Hello, I'm trying to put a nginx proxy in front of composer playground but I'm not able to make it work, anyone was able to?
Hi all, i am trying to organize my transaction processors files in a better way. i want to use es6 modules. is that possible?
Has joined the channel.
Hi everyone,
Using hyperledger composer a new business network is created and similarly rest server and angular applications are created.
if i have changed anything in the model file and created bna file, rest and angular application.
the changes are not reflecting in both rest and angular app.
[ ](https://chat.hyperledger.org/channel/composer?msg=Qsv4ZRoqqowniHBDY) @rrishmawi you can't use `requires` in transaction processors - this issue and work is tracked here -> https://github.com/hyperledger/composer/issues/3169 FYI
[ ](https://chat.hyperledger.org/channel/composer?msg=7nh2vHo4egA8TLNdx) @Sarath_Kumar correct, after [upgrading the business network](https://hyperledger.github.io/composer/latest/business-network/upgrading-bna), you need to regenerate the skeleton app (ie its is a generated app) and stop and start the REST server instance (it can discover any added changes to the business network, such as new transactions, assets for which REST API endpoints are listed etc)
[ ](https://chat.hyperledger.org/channel/composer?msg=e9kThfRteTxnJ4xQp) @mahoney1 i asked here before, and you said that as long as the script is in the folder then you are fine. when i do that, and the eslint runs, all variables defined in another js file are undefined. i do not want to turn of esling as its usefult for other things, what should i do in this case
[ ](https://chat.hyperledger.org/channel/composer?msg=Qacw4EwCD8BF47BZy) let me explain more, i am trying to define an es6 class ina separate js file and used in the transaction processor.
[ ](https://chat.hyperledger.org/channel/composer?msg=7nh2vHo4egA8TLNdx) @Sarath_Kumar After you change the model and *Upgrade* the network, you need to restart the REST server so that it can re-discover the Business Network, and then you need to regenerate the Angular application.
[ ](https://chat.hyperledger.org/channel/composer?msg=7nh2vHo4egA8TLNdx) @Sarath_Kumar After you change the model and *Upgrade* the network, you need to restart the REST server so that it can re-discover the Business Network, and then you need to regenerate the Angular application.
If you have changed the model you should see this section in the knowledge wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration
@rrishmawi depends on what you're asking. A transaction processor can call other functions (in separate JS files under /lib) to allow for code modularisation or organization as you put it. I can have this in func2.js ```function sayHello(name) { retMsg = "hello " + name; return {code: 11, message: retMsg}; }``` - and this in `logic.js` ``` var returnVal; var returnVal= sayHello("Jon Doe"); var code = returnVal.code; var msg= returnVal.message; console.log('The returned message and code are: Msg-> ' + msg + ' the code -> ' + code ); ```
[ ](https://chat.hyperledger.org/channel/composer?msg=yt85QtWhjR85pyqCG) @mahoney1 I know that this is possible, i have done it also, but eslint does not allow it.
password
Thanks @mahoney1 @rthatcher
I have regenerated both the rest and angular app after i made changes in the model file.
@mahoney1 as you mention i tried upgrading the network but still not working.
@rrishmawi see answers in https://stackoverflow.com/questions/49983532/npm-test-fails-on-the-query-function-hyperledger-composer and also https://github.com/hyperledger/composer/issues/4385
@Sarath_Kumar you can check if you upgraded using `docker ps` and check a container has the new running version. The changes will only be reflected, after the upgrade process is successful, which includes re-creating the bna - see the example in 'Step Three - Regenerate' and 'Step Four - Deploy' of the queries tutorial for an exact sequence https://hyperledger.github.io/composer/latest/tutorials/queries
@Sarath_Kumar you can check if you upgraded successfully (for that, you will have to have edited `package.json` and recreated the .bna file) using `docker ps` and check a container has the new running version. The changes will only be reflected, after the upgrade process is successful, which includes re-creating the bna - see the example in 'Step Three - Regenerate' and 'Step Four - Deploy' of the queries tutorial for an exact sequence https://hyperledger.github.io/composer/latest/tutorials/queries
@Sarath_Kumar you can check if you upgraded successfully (for that, you will have to have edited `package.json` and recreated the .bna file) using `docker ps` and check for a `dev-xx` container that has the new running version. The changes will only be reflected, after the upgrade process is successful, which includes re-creating the bna - see the example in 'Step Three - Regenerate' and 'Step Four - Deploy' of the queries tutorial for an exact sequence https://hyperledger.github.io/composer/latest/tutorials/queries
@Sarath_Kumar you can check if you upgraded successfully (for that, you will have to have edited `package.json` and recreated the .bna file) using `docker ps` and check for a `dev-xx` container that has the new running version. The changes will only be reflected, after the upgrade process is successful, which includes re-creating the bna as mentioned - see the example in 'Step Three - Regenerate' and 'Step Four - Deploy' of the queries tutorial for an exact sequence https://hyperledger.github.io/composer/latest/tutorials/queries
Is it possible to compile a composer business network to native fabric chaincode?
Has joined the channel.
Any idea why I get this error when starting the network, deploying changes from playground or upgrading the bna from the command line?
`Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: error starting container: error starting container: Failed to generate platform-specific docker build: Error uploading input to container: API error (404): Could not find the file /chaincode/input in container abc20deb554d89c50791564913ee7e477bbd9ae9c252854330583eee695a86e5`
Any idea why I get this error when starting the network, deploying changes from playground or upgrading the bna from the command line?
``Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: error starting container: error starting container: Failed to generate platform-specific docker build: Error uploading input to container: API error (404): Could not find the file /chaincode/input in container abc20deb554d89c50791564913ee7e477bbd9ae9c252854330583eee695a86e5``
Sometimes I can install and start the BNA correctly but then I can't upgrade it. Not sure why other times I can't start it
[ ](https://chat.hyperledger.org/channel/composer?msg=yF85JnEoLdzuuhC5m) @AVetter - the short answer is No. But Fabric chaincode can be written in NodeJS, and Composer Transaction Functions together with the Composer Runtime form a Native Fabric NodeJS chaincode.
Please see the discussion earlier today about the future of Composer and the announcement of Fabric 1.4 release candidate.
[ ](https://chat.hyperledger.org/channel/composer?msg=GMTBLuEnPfTrjv4f7) @emiliomarin You will probably see more detailed errors in the Peer docker container log that would help find the problem.
What version of Composer are you using, and what version of Fabric ?
[ ](https://chat.hyperledger.org/channel/composer?msg=GMTBLuEnPfTrjv4f7) @emiliomarin You will probably see more detailed errors in the Peer docker container log that would help find the problem.
What version of Composer are you using, and what version of Fabric ?
If it is an intermittent problem it might a networking problem, or a hardware resources problem
[ ](https://chat.hyperledger.org/channel/composer?msg=rdAqXNKDnfuYCeyRg) @rthatcher Thank you, will have a look at the new node sdk api.
Has left the channel.
Has joined the channel.
Hi, does anybody know what should be set in POST request header or body to composer REST API not to get "statusCode": 500, "message": "A business network card has not been specified"?
Any help is welcomed... https://stackoverflow.com/questions/53821911/cant-start-or-upgrade-bna
[ ](https://chat.hyperledger.org/channel/composer?msg=JS6Q45KStckiqZihe) @ihormudryy you need to import a business network card, via the REST APIs - suggest to do a `[composer card export](https://hyperledger.github.io/composer/latest/reference/composer.card.export.html)` to a file (eg. .card file), then, go to your REST API (are you using postman or an app?) and import it using by submitting a POST request to api/wallet/import - then you can check it is set (see 'Step 11' of this tutorial for an example) -> https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest - at which point you can try out the original endpoint to `POST` a transaction/asset creation, whatever...as that business network participant. You should have multi-user mode enabled for REST server / authentication used - see working example app here -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
[ ](https://chat.hyperledger.org/channel/composer?msg=JS6Q45KStckiqZihe) @ihormudryy you need to import a business network card, via the REST APIs - suggest to do a [composer card export](https://hyperledger.github.io/composer/latest/reference/composer.card.export.html) to a file (eg. .card file), then, go to your REST API (are you using postman or an app?) and import it using by submitting a POST request to api/wallet/import - then you can check it is set (see 'Step 11' of this tutorial for an example) -> https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest - at which point you can try out the original endpoint to `POST` a transaction/asset creation, whatever...as that business network participant. You should have multi-user mode enabled for REST server / authentication used - see working example app here -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
[ ](https://chat.hyperledger.org/channel/composer?msg=JS6Q45KStckiqZihe) @ihormudryy you need to import a business network card, via the REST APIs - suggest to do a [composer card export](https://hyperledger.github.io/composer/latest/reference/composer.card.export.html) to a file (eg. .card file), then, go to your REST API (are you using postman or an app?) and import it by submitting a POST request to api/wallet/import - then you can check it is set (see 'Step 11' of this tutorial for an example) -> https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest - at which point you can try out the original endpoint to `POST` a transaction/asset creation, whatever...as that business network participant. You should have multi-user mode enabled for REST server / authentication used - see working example app here -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
[ ](https://chat.hyperledger.org/channel/composer?msg=JS6Q45KStckiqZihe) @ihormudryy you need to import a business network card, via the REST APIs - suggest to do a [composer card export](https://hyperledger.github.io/composer/latest/reference/composer.card.export.html) to a file (eg. .card file), then, go to your REST API (are you using postman or an app?) and import it by submitting a POST request to api/wallet/import - then you can check it is set (see 'Step 11' of this tutorial for an example) -> https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest - at which point you can try out the original endpoint to `POST` a transaction/asset creation, whatever...as that business network participant. You should have multi-user mode enabled for REST server / authentication used - see working example app here, with a further example -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
Has joined the channel.
Other than the composer-playground tutorial, are there any hands on projects to get started with composer and truly understand api development and working?
@mahoney1 I am following the https://hyperledger.github.io/composer/v0.19/integrating/deploying-the-rest-server tutorial. Here for network we create 3 different peer admin for each org. So i am confused how admin of Org2 can be linked using network admin...Please suggest... Regarding ACL, i think its pretty straight forward...
@mahoney1 I am following the https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org tutorial. Here for network we create 3 different peer admin for each org. So i am confused how admin of Org2 can be linked using network admin...Please suggest... Regarding ACL, i think its pretty straight forward...
hello every one i have one error please give the solution
~/product-network$ composer network start --networkName product-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Starting business network product-network at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to connect to any peer event hubs. It is required that at least 1 event hub has been connected to receive the commit event
Command failed
any one give reply i am new this technology
hello every one i have one error please give the solution
~/product-network$ composer network start --networkName product-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Starting business network product-network at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to connect to any peer event hubs. It is required that at least 1 event hub has been connected to receive the commit event
Command failed
I'm trying to enable authentication for the Composer REST Server, using the steps below.
https://hyperledger.github.io/composer/latest/integrating/enabling-rest-authentication
However, on the step 'Authenticating to the REST server using a web browser' #1, I get error below.
------------------------------------------------
{"error":{"statusCode":404,"name":"Error","message":"Cannot GET /auth/github","status":404,"stack":"Error: Cannot GET /auth/github\n at raiseUrlNotFoundError (/usr/lib/node_modules/composer-rest-server/node_modules/loopback/server/middleware/url-not-found.js:21:17)\n at Layer.handle [as handle_request] (/usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at trim_prefix (/usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)\n at /usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7\n at Function.process_params (/usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)\n at next (/usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)\n at /usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:635:15\n at next (/usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:260:14)\n at Function.handle (/usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:174:3)\n at router (/usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:47:12)\n at Layer.handle [as handle_request] (/usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/layer.js:95:5)\n at trim_prefix (/usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:317:13)\n at /usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:284:7\n at Function.process_params (/usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)\n at next (/usr/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:275:10)\n at urlencodedParser (/usr/lib/node_modules/composer-rest-server/node_modules/body-parser/lib/types/urlencoded.js:91:7)"}}
------------------------------------------------
I'm checking several settings, but failing to solve this probrem.
[[ Environment ]]
- OS
Ubuntu Server 16.04
- environmental variables for Hyperledger (on the ~/.profile) : some part masking
FABRIC_VERSION=hlfv12
COMPOSER_PROVIDERS='{
"github":{
"provider": "github",
"module": "passport-github",
"clientID": "9edd************770d",
"clientSecret": "a081********************************e192",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
- installed npm packages
Result of command 'npm list --depth=0 -g' is below:
composer-cli@0.20.0
composer-common@0.19.3
composer-playground@0.19.4
composer-rest-server@0.20.0
generator-hyperledger-composer@0.20.0
jmate@0.0.2
npm@5.6.0
passport@0.4.0
passport-github@1.1.0
wscat@2.2.1
yo@2.0.5
- node version
v8.11.3
- npm version
5.6.0
- composer version
v0.20.0
- docker version
18.06.0-ce
[[ Composer REST Server starting command ]]
sudo composer-rest-server -c first001@tutorial-network -t true -e /etc/letsencrypt/live/lshyperledgerfabricdemo02.southeastasia.cloudapp.azure.com/cert.pem -k /etc/letsencrypt/live/lshyperledgerfabricdemo02.southeastasia.cloudapp.azure.com/privkey.pem -n required -w true -a true
If some required information is missing, please ask me.
Thanks.
J29w3.png
[ ](https://chat.hyperledger.org/channel/composer?msg=hh2XGvLAdwWRyhteB) @adityanalgework There are other tutorials here: https://hyperledger.github.io/composer/latest/tutorials/tutorials
there are Sample Aplications: https://github.com/hyperledger/composer-sample-applications/tree/master/packages
and there are sample models: https://github.com/hyperledger/composer-sample-models/tree/master/packages
There are also various blogs and examples on other sites too.
[ ](https://chat.hyperledger.org/channel/composer?msg=fTp6whX6xE97xjG7z) @anand.balagopalan The `composer network start` command "binds" the 2 identities Alice and Bob to participants in the system registry `org.hyperledger.composer.system.NetworkAdmin` and therefore they have access determined on that value in the ACLs.
[ ](https://chat.hyperledger.org/channel/composer?msg=fTp6whX6xE97xjG7z) @anand.balagopalan The `composer network start` command "binds" the 2 identities Alice and Bob to participants in the system registry `org.hyperledger.composer.system.NetworkAdmin` and therefore they have access determined on that value in the ACLs.
[ ](https://chat.hyperledger.org/channel/composer?msg=MhR2h4hwYMSN9Csrd) BTW: I see that you are looking at the v0.19 version of the tutorial - if you are using Composer v0.20 then you should follow the latest doc: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
BTW: I see that you are looking at the v0.19 version of the tutorial - if you are using Composer v0.20 then you should follow the latest doc: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Has joined the channel.
i have a question in hyperledger composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=8X6x9P9CQBDzDfLWq) @bhemeswararaoankireddy What version of Composer and Fabric are you using?
It is possible that you have an error in the connection.json for the PeerAdmin card - are you using the stardard Development Fabric and the standard development PeerAdmin Card?
I would suggest looking at the log of the Peer Container(s) to see if there are more detailed errors in the log.
@bhemeswararaoankireddy - checking this Stack Overflow Q/A . I wonder if you have Composer v0.20 with Fabric 1.1? You need Fabric 1.2.1 for Composer v0.20
Hi everyone, in my nodejs server after I have created my participant, I want to issue identity and store card file in my server. I've used BusinessNetworkConnection.issueIdentity to issue new identity but it didn't create any card.
@microwavePC - The problem might be related to using `sudo` - generally you don't need sudo for Composer. But the error suggests that the COMPOSER_PROVIDERS environment variable is not active when the rest server is started.
do hyperledger composer used for production?
[ ](https://chat.hyperledger.org/channel/composer?msg=A7gmiX5Nk3kiBXayS) @packkkkk in the code example here -> https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#card-api-errors--resolutions there is a programmatic example of issueIdentity, followed by import, followed by export to a card file
[ ](https://chat.hyperledger.org/channel/composer?msg=69X4rtXk5DoRrdGf4) @NeelKantht - No Composer should not be used for Production. Composer can be used for a POT or Prototype, or for an Introduction to Blockchain - but not for Production.
Please see the announcement regarding Composer: https://lists.hyperledger.org/g/composer/message/125
And this information regarding Fabric 1.4:
---------------------------------------------------
Fabric v1.4.0 RELEASE CANDIDATE ANNOUNCEMENT:
https://lists.hyperledger.org/g/fabric/topic/announcement_hyperledger/28735908
---------------------------------------------------
Highly recommend that all Composer users start getting familiar with this version and the new programming models for both the node-sdk and node chaincode. For reference, please see https://lists.hyperledger.org/g/composer/message/125 as to why it is highly recommended you should now focus your efforts away from composer and onto the fabric 1.4 release.
@rthatcher thank you and have a good day.
Clipboard - December 18, 2018 5:24 PM
Clipboard - December 18, 2018 5:24 PM
Hi everyone,
*composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna* this will install the bna file
Hi everyone,
I have created a network with orderer and peers.
similarly i have created a bna file.
How to install bna in the created network and how to create a PeerAdminCard which is used to install the bna?
Has joined the channel.
Hey there, I have an issue with my composer-cli, more specifically, when I try to start my network using `composer network start` on my freshly cloned repo and my new computer, I get the following error:
```
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: transaction returned with failure: ReferenceError: module is not defined
Command failed
```
I cannot exactly pinpoint where is the `module is not defined` error, but when I deployed the files of package using composer-playground, everything checks out.
I am attaching a couple of screenshots and the install.js script that I built to give out a better context
https://transfer.sh/802nC/install.js
https://imgur.com/a/gAEzEeg
Thanks!
Has joined the channel.
Hi, guys is the development tutorial of composer up-to-date? As I'm getting numerous errors just following the tutorial
Does Composer past the endorsement policy through to the fabric network,
or composer will send the endorsement requests to the peers required in endorsement policy ,then collect the endorsement result, and judge if the endorsement policy satisfied(maybe just the number of return result) in the sdk client before send the transaction to the order?
[ ](https://chat.hyperledger.org/channel/composer?msg=SkyR8272bzBZjwtaC) @Sarath_Kumar for PeerAdminCard inside fabric-dev-servers : run ./createPeerAdminCard and for installing bna file : composer network install --card PeerAdmin@hlfv1 --archiveFile test@0.0.1.bna . please refer this link: https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
thanks @vanipolnedi . ./createPeerAdminCard will create peer admin card on top of hyperledger fabric runtime right?.
composer network install command installs business network on hyperledger fabric runtime?
[ ](https://chat.hyperledger.org/channel/composer?msg=9XK7XYJ2znsP8Gvp2) @hilalh If you have Transactions in your logic.js file that work OK in Playground, but will not "Start" correctly on a 'Real' Fabric - then it is most likely that you have functionality that depends on the Browser that will not work outside the Browser. If you remove that Browser specific Code you should be able to "Start" the network.
[ ](https://chat.hyperledger.org/channel/composer?msg=tbYnycrQRQC24Xzoa) @Sarath_Kumar The PeerAdmin card created by the script contains Credentials (Crypto Material) that is specific to the Development Fabric created by "fabric-dev-servers". If you have created your own custom Fabric, you will need to create your own Admin card specific to your custom Fabric.
Has left the channel.
How we can pass query arguments for query from within transaction ? ```query VerifyWarranty {
description: "Verify if product has already a warranty."
statement:
SELECT org.achain.Warranty
WHERE (ProductNumber == _$productNumber)
} ``` How to pass argument ? TIA `let results = await query('VerifyWarranty');`
[ ](https://chat.hyperledger.org/channel/composer?msg=P4CZwYt9e8tGRk6Mb) @rthatcher Haven't been able to solve it, had to recreate the business network using the yeoman generator and refactor my files manually
[ ](https://chat.hyperledger.org/channel/composer?msg=NyDE3qobEphMJabtH) @saeedi From the documentation of buildQuery you can see this format ` query(q, { inputValue: 'blue' }) ` https://hyperledger.github.io/composer/latest/api/runtime-api#buildquery
@packkkkk yes.
thank you, @mahoney1
@touchingsoil Composer passes it on to Fabric, yes - see more info here -> https://hyperledger.github.io/composer/latest/managing/connector-information - its the responsibility of the submitting client app to manage the response see also https://hyperledger-fabric.readthedocs.io/en/release-1.3/arch-deep-dive.html
@touchingsoil Composer passes it on to Fabric, yes - see more info here -> https://hyperledger.github.io/composer/latest/managing/connector-information - its the responsibility of the submitting client app to manage the responses, see also https://hyperledger-fabric.readthedocs.io/en/release-1.3/arch-deep-dive.html
@rthatcher I understand that each org admin has network admin binding...But my issue is a bit different.. I have a network of 3 organization...As mentioned in the tutorial, each org has a different peer admin, and that peer admin is creating network admin of each org. I want to have a single REST SERVER (deployed on cloud) on which each org admin can interact with.
@rthatcher the issue is, i have deployed rEST instance with a "restadmin" participant, created with peeradmin of org1. then when i try to ping the network using a participant of org2, t gives an error
this is the issue im trying to resolve
@mahoney1 I tried creating a participant for org2 with network admin access (similar to how i usually create "restadmi" for deploying docker REST server instance). But when i tried issueing a particiapnt identity using that , it says "restadminOrg2" doesnot have signing credentials...
@anand.balagopalan the participant has to be mapped to a Fabric identity, that has issuer authority. Clearly you've not provided that identity the appropriate authority - the tutorials we show are using a provided id (eg 'admin') or are bound at network startup such as multi-org tutorial. Another example is outlined in this [tutorial](https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82) (in that example, the 3rd Admin has authority, as you know).
@anand.balagopalan the participant has to be mapped to a Fabric identity, that has issuer authority. Clearly you've not provided that identity the appropriate authority (relating to the org CA in question) - the tutorials we show are using a provided id (eg 'admin') or are bound at network startup such as multi-org tutorial. Another example is outlined in this [tutorial](https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82) (in that example, the 3rd Admin has authority, as you know).
[ ](https://chat.hyperledger.org/channel/composer?msg=WxTPCXTKNYuRWHqk2) @mahoney1 But in composer-rest-server, the client sdk is included , when i call the restful api, how the endorsement requests are send, and the responses are managed?
[ ](https://chat.hyperledger.org/channel/composer?msg=WxTPCXTKNYuRWHqk2) @mahoney1 But in composer-rest-server, the client sdk is included , when i call the restful api, how the endorsement requests are send, and the responses are managed? for example, the policy is :'' {
"identities": [
{
"role": {
"name": "member",
"mspId": "admin"
}
},
{
"role": {
"name": "member",
"mspId": "college"
}
}
],
"policy": {
"1-of": [
{
"signed-by": 0
}
]
}
} '' if i call a restful api from peer on msp colleage, then what is going on?
[ ](https://chat.hyperledger.org/channel/composer?msg=WxTPCXTKNYuRWHqk2) @mahoney1 But in composer-rest-server, the client sdk is included , when i call the restful api, how the endorsement requests are send, and the responses are managed? for example, the policy is :```{
"identities": [
{
"role": {
"name": "member",
"mspId": "admin"
}
},
{
"role": {
"name": "member",
"mspId": "college"
}
}
],
"policy": {
"1-of": [
{
"signed-by": 0
}
]
}
} ``` if i call a restful api from peer on msp colleage, then what is going on?
@mahoney1 Thanks lot... Now I got the just of it... :)
@rthatcher Thanks to your answer, I found the cause.
After rewriting my ~/.profile like below, OAuth worked!
[[ Before ]]
...
FABRIC_VERSION=hlfv12
COMPOSER_PROVIDERS='{
"github":{
"provider": "github",
"module": "passport-github",
"clientID": "9edd************770d",
"clientSecret": "a081********************************e192",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
...
[[ After ]]
...
export FABRIC_VERSION=hlfv12
export COMPOSER_PROVIDERS='{
"github":{
"provider": "github",
"module": "passport-github",
"clientID": "9edd************770d",
"clientSecret": "a081********************************e192",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
...
Has joined the channel.
How far composer is from outta incubation?
Has joined the channel.
@rthatcher Thanks :)
Sorry to bother again, I'm trying to create docker container for Composer REST Server in the following steps, but having a trouble.
https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server
On executing command [ docker run -d --name mongo --network composer_default -p 27017:27017 mongo ], I got an error below.
docker: Error response from daemon: network composer_default not found.
I succeeded to execute command [composer network ping -c
what i am trying to achieve is to verify if there has been already a warranty created of a product. I am trying to do so by building and executing query during transaction. Thus far this is what i have. what i am trying to achieve is to verify if there has been already a warranty created of a product. I am trying to do so by building and executing query during transaction. Thus far this is what i have
```
/**
* @param {org.achain.createWarranty} createWarranty
* @transaction
*/
async function createWarranty(AddWarranty) {
var q = buildQuery('SELECT org.achain.Warranty WHERE (value == _$inputValue)');
var counting=0;
const assetRegistry = await getAssetRegistry('org.armachain.Product');
const validProduct = await assetRegistry.exists(AddWarranty.productResource.productId); \\to verify is product exists or not
return query(q, { inputValue: AddWarranty.productResource.productId })
.then(function (assets) {
assets.forEach(function (asset) {
counting=counting+1;
});
})
.catch(function (error) {
// Add optional error handling here.
});
if (validProduct && counting==0) {
const warrantyRegistry = await getAssetRegistry('org.pakistan.pharmachain' + '.Warranty');
const warranty = getFactory().newResource('org.pakistan.pharmachain', 'Warranty', uuid2());
warranty.ProductNumber=AddWarranty.productResource.productId;
await warrantyRegistry.add(warranty);
}
else {throw new Error('this transaction failed, no such Product' );}
}
``` When submitting this transaction it says that transaction has been submitted successfully but there is no warranty created even if though it is empty right now.
what i am trying to achieve is to verify if there has been already a warranty created of a product. I am trying to do so by building and executing query during transaction. Thus far this is what i have. what i am trying to achieve is to verify if there has been already a warranty created of a product. I am trying to do so by building and executing query during transaction. Thus far this is what i have
```
/**
* @param {org.achain.createWarranty} createWarranty
* @transaction
*/
async function createWarranty(AddWarranty) {
var q = buildQuery('SELECT org.achain.Warranty WHERE (value == _$inputValue)');
var counting=0;
const assetRegistry = await getAssetRegistry('org.achain.Product');
const validProduct = await assetRegistry.exists(AddWarranty.productResource.productId); \\to verify is product exists or not
return query(q, { inputValue: AddWarranty.productResource.productId })
.then(function (assets) {
assets.forEach(function (asset) {
counting=counting+1;
});
})
.catch(function (error) {
// Add optional error handling here.
});
if (validProduct && counting==0) {
const warrantyRegistry = await getAssetRegistry('org.pakistan.pharmachain' + '.Warranty');
const warranty = getFactory().newResource('org.pakistan.pharmachain', 'Warranty', uuid2());
warranty.ProductNumber=AddWarranty.productResource.productId;
await warrantyRegistry.add(warranty);
}
else {throw new Error('this transaction failed, no such Product' );}
}
``` When submitting this transaction it says that transaction has been submitted successfully but there is no warranty created even if though it is empty right now.
what i am trying to achieve is to verify if there has been already a warranty created of a product. I am trying to do so by building and executing query during transaction. Thus far this is what i have. what i am trying to achieve is to verify if there has been already a warranty created of a product. I am trying to do so by building and executing query during transaction. Thus far this is what i have
```
/**
* @param {org.achain.createWarranty} createWarranty
* @transaction
*/
async function createWarranty(AddWarranty) {
var q = buildQuery('SELECT org.achain.Warranty WHERE (value == _$inputValue)');
var counting=0;
const assetRegistry = await getAssetRegistry('org.achain.Product');
const validProduct = await assetRegistry.exists(AddWarranty.productResource.productId); \\to verify is product exists or not
return query(q, { inputValue: AddWarranty.productResource.productId })
.then(function (assets) {
assets.forEach(function (asset) {
counting=counting+1;
});
})
.catch(function (error) {
// Add optional error handling here.
});
if (validProduct && counting==0) {
const warrantyRegistry = await getAssetRegistry('org.achain' + '.Warranty');
const warranty = getFactory().newResource('org.achain', 'Warranty', uuid2());
warranty.ProductNumber=AddWarranty.productResource.productId;
await warrantyRegistry.add(warranty);
}
else {throw new Error('this transaction failed, no such Product' );}
}
``` When submitting this transaction it says that transaction has been submitted successfully but there is no warranty created even if though it is empty right now.
Hi experts, within a transaction processor function i am not able to call getIdentifier() over a Relationship, even though i can see the relationship using console.log with the $identifier set. do you have an idea?
@touchingsoil That's Fabric's responsibility, not Composer's. The submitting client waits until it receives “enough” messages and signatures before the proposal is committed (as you'll see from the REST API response). The number of peers required to endorse a transaction is driven by the endorsement policy that is specified at chaincode deployment time. The set of endorsing peers for a given chaincodeID (business network) is made available to the client (via the SDK) via the peer, which in turn knows the set of endorsing peers from the endorsement policy. For example, the transaction could be sent to all endorsers of a given chaincodeID. The submitting client once the policy criteria are met, collects an endorsement for a transaction and broadcasts to the ordering service.
@rrishmawi are you sure it is a `Relationship` object, not just JSON data? If it is JSON data you will need to use `serializer.fromJSON(obj)` to rehydrate the Composer object
[ ](https://chat.hyperledger.org/channel/composer?msg=yXduvivjt3EwRM3M2) @zzj0402 Composer is unlikely to move away from Incubation - please see this from yesterday ...
https://chat.hyperledger.org/channel/composer?msg=ES8pTTo2wk7pmGcZ9
@microwavePC - if you are using the first-network from the Fabric Samples, it is often call byfn (Build Your First Network)
The Docker Network Bridge it uses will be called something with 'byfn' in the name. Try the command ` docker network ls ` to list all the docker network devices. After that you can try ` docker inspect
how to create PeerAdminCard for the created network?
I am modifying the createPeerAdmincard.sh which is available in the fabricdevserver/hlfv1/ and am getting the following error
*v0.20.4 is not supported for this level of fabric. please use version 0.16*
@saaedi - 1) would stick with `async/await` inside your async function eg. ```const assets = await query(q, { inputValue: AddWarranty.productResource.productId })
assets.forEach(function (asset) {
counting=counting+1;
}); ``` - the code couldn't work as you posted anyway, as you've got comment lines the wrong way around `\\` when they should be `//` but not sure if you added in your RC post etc. I've tried your function and I've no problems (ie after changes) adding the related asset FYI
@saaedi - 1) would stick with `async/await` inside your async function eg. ```const assets = await query(q, { inputValue: AddWarranty.productResource.productId })
assets.forEach(function (asset) {
counting=counting+1;
}); ``` - 2) the code couldn't work as you posted anyway, as you've got comment lines the wrong way around `\\` when they should be `//` but not sure if you added in your RC post etc. 3) I've tried your function and I've no problems (ie after changes) adding the related asset FYI
@saeedi - 1) would stick with `async/await` inside your async function eg. ```const assets = await query(q, { inputValue: AddWarranty.productResource.productId })
assets.forEach(function (asset) {
counting=counting+1;
}); ``` - 2) the code couldn't work as you posted anyway, as you've got comment lines the wrong way around `\\` when they should be `//` but not sure if you added in your RC post etc. 3) I've tried your function and I've no problems (ie after changes) adding the related asset FYI
@saeedi - 1) would stick with `async/await` complement inside your async function eg. ```const assets = await query(q, { inputValue: AddWarranty.productResource.productId })
assets.forEach(function (asset) {
counting=counting+1;
}); ``` - 2) the code couldn't work as you posted anyway, as you've got comment lines the wrong way around `\\` when they should be `//` but not sure if you added in your RC post etc. 3) I've tried your function and I've no problems (ie after changes) adding the related asset FYI
@saeedi - 1) would stick with `async/await` complement inside your async function eg. ```const assets = await query(q, { inputValue: AddWarranty.productResource.productId })
assets.forEach(function (asset) {
counting=counting+1;
}); ``` - 2) the code couldn't work as you posted anyway, as you've got comment lines the wrong way around `\\` when they should be `//` but not sure if you added in your RC post etc. 3) I've tried your function and I've no problems (ie after changes), resolving promises, adding the related asset FYI
Matt Roberts and I presented an overview and demo of Concerto at the Hyperledger Global Summit. The recording has now been put online.
https://www.youtube.com/watch?v=PcL1V0VozXA
Blog: https://www.hyperledger.org/blog/2018/11/28/conducting-data-with-concerto-and-hyperledger-fabric
@Sarath_Kumar the PeerAdminCard.sh script is purely for getting a development env set up - FYI. If you want to create a card that has a peer admin role ('PeerAdmin' is a made up name) then suggest to understand the underlying Fabric to understand how to issue an identity with similar capabilities to the 'dev environment setup'. As for the error you're seeing, suggest to read the release notes -> https://github.com/hyperledger/composer/releases to understand the fundamental differences for FABRIC_VERSION (important to the dev script mentioned above). You're mixing a Composer v0.20 script with a Fabric v1.0 environment (must use Composer v0.16.x with this - that is, if you really must use a very old version of Composer, that is not really used for obvious reasons). There is a wiki table here -> https://github.com/hyperledger/composer/wiki (scroll down to the table) that shows (if you don't already see this info, from the release notes) what Composer version works with what Fabric version. HTH
@Sarath_Kumar the PeerAdminCard.sh script is purely for getting a development env set up - FYI. If you want to create a card that has a peer admin role - a Fabric role - ('PeerAdmin' is a made up name) then suggest to understand the underlying Fabric to understand how to issue such an identity with similar capabilities to the provided 'PeerAdmin' in the 'dev environment setup'. As for the error you're seeing, suggest to read the release notes -> https://github.com/hyperledger/composer/releases to understand the fundamental differences for FABRIC_VERSION (important to the dev script mentioned above). You're mixing a Composer v0.20 script with a Fabric v1.0 environment (must use Composer v0.16.x with this - that is, if you really must use a very old version of Composer, that is not really used for obvious reasons). There is a wiki table here -> https://github.com/hyperledger/composer/wiki (scroll down to the table) that shows (if you don't already see this info, from the release notes) what Composer version works with what Fabric version. HTH
@Sarath_Kumar the PeerAdminCard.sh script is purely for getting a development env set up - FYI. If you want to create a card that has a peer admin role - a Fabric role - ('PeerAdmin' is a made up name) then suggest to understand the underlying Fabric to understand how to issue such an identity with similar capabilities to the provided 'PeerAdmin' in the 'dev environment setup'. As for the error you're seeing, suggest to read the release notes -> https://github.com/hyperledger/composer/releases to understand the fundamental differences for FABRIC_VERSION (important to the dev script mentioned above). You're mixing a Composer v0.20 script with a Fabric v1.0 environment (must use Composer v0.16.x with this - that is, if you really must use a very old version of Composer, that is not really used in preference to newer versions, for obvious reasons). There is a wiki table here -> https://github.com/hyperledger/composer/wiki (scroll down to the table) that shows (if you don't already see this info, from the release notes) what Composer version works with what Fabric version. HTH
[ ](https://chat.hyperledger.org/channel/composer?msg=6du2t3LKrytrauA7t) @dselman Thank you @dselman, there was a mistake in my code. I was initializing the javascript array before pushing the created concepts that include the relationships which led to those being undefined.
thanks @mahoney1 . PeerAdmin is for the hyperledger fabric runtime and can i use this card for installing the bna into the network created?
@Sarath_Kumar the PeerAdmin card is for use with the Hyperledger Composer dev setup, and you can use it for installing a .bna file - there is a tutorial that does exactly this FYI https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html . As mentioned, normally, information from a Fabric administrator is required to create a PeerAdmin identity, with privileges to install chaincode to the peer as well as start chaincode on a channel. As part of the dev setup (once the script is run) a PeerAdmin identity has been created already and its card is imported so you can begin deploying business networks (check the tutorial for an example)
@Sarath_Kumar the PeerAdmin card is for use with the Hyperledger Composer dev setup, and you can use it for installing a .bna file - there is a tutorial that does exactly this FYI https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html . As mentioned, normally, information from a Fabric administrator is required to create a PeerAdmin identity, with privileges to install chaincode to the peer as well as start chaincode on a channel. As part of the Composer dev setup (ie once the PeerAdminCard script is run) a PeerAdmin identity has been created already and its card is imported so you can begin deploying business networks (check the tutorial for an example)
thanks @mahoney1 . for PeerAdmin i started the script ./startFabric.sh and then ./createPeerAdmin so the bna will be installed in the sample network.
In my case i need to start my network first, create PeerAdmin and finally i need to install bna.
Is the process valid shall i continue or any suggestions?
@Sarath_Kumar yes, should be
@mahoney1 Thanks. I got more details from the source code of node.js version sdk.
Hi, I have deployed fabric on Kubernetes. When the kubernetes nodes goes down and come back then I am not able to perform POST operation on blockchain network. It keeps showing the below error:
{"message":"500 - {\"error\":{\"statusCode\":500,\"name\":\"Error\",\"message\":\"Error trying invoke business network with transaction id 30c6b05b2854b37d60c400e48dc89c26be125b9604fa7f29f1aff5948ba27c12. Error: Error received from sendTransaction: Error: Failed to send transaction successfully to the orderer status:NOT_FOUND \",\"stack\":\"Error: Error trying invoke business network with transaction id 30c6b05b2854b37d60c400e48dc89c26be125b9604fa7f29f1aff5948ba27c12. Error: Error received from sendTransaction: Error: Failed to send transaction successfully to the orderer status:NOT_FOUND \\n at HLFConnection.invokeChainCode (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\\n at
1Hi All,
I have deployed fabric 1.3 on kubernetes. I have installed my business n/w over it and when i doing any transactions i am getting success but when i delete k8s nodes and bringing nodes again transaction to blockchain getting failed. I am getting some errors like
Error trying invoke business network with transaction id d0c459d58988614c133ad1a94191d9eb4931f171d30df1a5c691203f00f4014e. Error: Error received from sendTransaction: Error: Failed to send transaction successfully to the orderer status:NOT_FOUND
Also i am getting error in orderer like grpc: Server.Serve failed to create ServerTransport: connection error: desc = "transport: http2Server.HandleStreams failed to receive the preface from client: EOF.
I have tried out all cases by down peers & up again and i am getting all data same as. But i got error in only post operations to blockchain after down&up k8s nodes. Anyone can please help.
@mahoney1 is it possible to write regex validations in transaction processor functions?? if yes, how?
[ ](https://chat.hyperledger.org/channel/composer?msg=AaAKi6Y8bHy2wMSzg) @vanipolnedi The modelling language has regex for field validation: https://hyperledger.github.io/composer/latest/reference/cto_language
[ ](https://chat.hyperledger.org/channel/composer?msg=ybHTMtEuiTpHQNokN) @rthatcher but i want to validate in logic.js ... is it possible?
[ ](https://chat.hyperledger.org/channel/composer?msg=rp3sSzqXJq2YAeRsx) @vanipolnedi you should be able to use the standard JavaScript RegExp methods in a transaction function, but remember that you cannot use 'require' in the transaction logic script.
**I can't ignore errors in chaincode**
I'm doing this simple check-request:
```
let exists = await request(`http://${baseURL}:${couchPorts[0]}/historycache/98045604`, {
method: 'HEAD',
headers: {
'Content-Type': 'application/json'
}
})
```
But I can't just to check status code and go futher. I get error:
```
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: StatusCodeError: 404 - ""
```
How to make the chaincode continue to work? `try catch` gives the same result.
@sudhir.kumawat the message "sendTransaction: Error: Failed to send transaction successfully to the orderer status:NOT_FOUND " possibly it shows that your restarted cluster is not resolving like it did before it went down - can't find orderer - or different address, name to that in the connection profile of the Composer participant trying to transact etc - assume you've checked all relevant nodes are back up as they were from previous state.. In any case, suggest to ask on #fabric or check Stack overflow for similar answers
@rthatcher @mahoney1 help me please :)
reminder that the Composer Community call is tomorrow (Thurs) at 4pm UTC (5pm UK, 12pm ET, 9am PT) today - Join via Zoom from PC, Mac, Linux, iOS or Android:https://zoom.us/my/hyperledger.community.3 - will show a preview of the recent enhancements to the Fabric programming model / SDK for developing smart contracts/apps in Fabric 1.4 rc1 - and the samples & tutorials in action, that you can try out now.
@mahoney1 thanks Paul. If you can squeeze me in I'd like a few mins to talk about feedback on Composer from HL Global Summit and some roadmap ideas.
no problem, will do, thanks for contributing Dan :thumbsup:
@sstone1 @caroline-church will you be on the call?
@dselman i will be on the call
Hi guys, got the development environment up and running. Currently an input field to add a Commodity is just an input text field. I'd like to remove this field and just add the current time (with like a DateTime() function)
Where would I need to look to find the current function which is called for adding a Commodity?
@rthatcher Thank you so much! I found my composer's network name thanks to your steps!
Has joined the channel.
Hi Guys Good Day, did anyone encounter this on IBM Bluemix Blockchain?
[33m2018-12-20 07:45:59.782 UTC [couchdb] handleRequest -> WARN 4a20[0m Retrying couchdb request in 125ms. Attempt:1 Error:Post http://localhost:5984/defaultchannel_testapp/_find: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
[ ](https://chat.hyperledger.org/channel/composer?msg=CvbJ4cibm8zmbhwzH) @KvdB - if you are using the Playground or REST server to add Commodity Assets, then you are using a 'system' function AddAsset that you cannot modify. But if you modify the Model file, and change a field to a DateTime then the AddAsset function will work with the modified model. You can of course write your own Transaction to add a Commodity, and there are examples of this in the sample models/applications.
You should also note that if you change your model, any existing data you created will be 'hidden' from you because it doesn't match the model - there is more information on how to handle this in the Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#migration
You need to be very careful trying to add the Current time to an Asset - you can't do it within the Transaction because the transaction gets run on multiple peers (in a production scenario) and the 'current' time will be slightly different when run on each peer, and then the fundamental feature of endorsement and data consistency of Fabric will fail and your transaction will be rejected. Your transaction code needs to be deterministic and you need to pass the current time into the Transaction rather than 'calculate' it during the transaction.
@JeffGutierrez I would ask on IBM Bluemix support but looks like a query or lookup timed out waiting on CouchDB in your local (localhost) environment
concerto
:speaking_head: Issue to solicit ideas for the Composer Roadmap: https://github.com/hyperledger/composer/issues/4557 We will be discussing this on the Composer Community Call today (see message above from @mahoney1). If you care about the future of Composer, then we need your help (ideas as well as code) to ensure it has a bright future. EVERYONE is encouraged to voice their opinion and to contribute.
[ ](https://chat.hyperledger.org/channel/composer?msg=hFqALQng4We6PjMBQ) @dselman i will be on the call :)
**Write from chaincode to CouchDB**
I'm trying to write this JSON to CouchDB:
```
{
"PlatformWallet": [{
"transactionType": "send",
"conversion": "false",
"amount": "1",
"from": "145vze7mjo771d2k",
"to": "3nh5ae6jpwesbwp",
"date": "1545298441784",
"tokenName": "platform coin",
"description": "start coin"
}]
}
```
But I get error:
```
invalid utf-8 JSON
```
What's wrong?
My request:
```
await request(`http://...`, {
method: "PUT",
headers: {
'Content-Type': 'application/json'
},
data: JSON.stringify(exist4.body),
encoding: "utf-8"
})
```
Hello All
I am following this link to run composer in my server https://hyperledger.github.io/composer/latest/installing/development-tools
Create and install command ran successfully but when I try to start network using following command I get error:
start --networkName tutorial-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
WARNING: NODE_ENV value of 'production' did not match any deployment config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Starting business network tutorial-network at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Unable to initalize channel. Attempted to contact 1 Peers. Last error was Error: Error: Failed to connect before the deadline
Command failed
Has joined the channel.
is there any idea?
Google also doesn't say much :(
Hi guys, currently running composer with angular app and want to display in which block a transaction exists. On the interwebs I found out that Hyperledger Explorer could be of use. However, I can't seem to get the installation correctly as it isn't very clear. Anyone that has Explorer running alongside Composer?
@d8bhatta given the WARNING message, this appears to be a Node JS environment issue - you can find out more here -> https://github.com/lorenwest/node-config/wiki/Strict-Mode (and the links provided there. You can also check you're using the correct Node version per [the prereqs doc](https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html)
[ ](https://chat.hyperledger.org/channel/composer?msg=nPsM5kPgxspRN3aKK) @KvdB There is an example of working versions for Composer v0.20 and Fabric 1.2 here: https://stackoverflow.com/questions/51857102/error-while-starting-hyperledger-explorer-with-hyperledger-composer/51859483#51859483
And there is a specific Rocket Chat channel #hyperledger-explorer
Thanks @rthatcher already tried that stackoverflow suggestion without result
Will ask in the explorer channel!
[ ](https://chat.hyperledger.org/channel/composer?msg=nPsM5kPgxspRN3aKK) @KvdB reminder that the Composer Community call today (Thurs) is at 4pm UTC (5pm UK, 12pm ET, 9am PT) today .. Agenda -> https://github.com/hyperledger/composer/wiki/Meeting-20th-December-2018 - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community.3
reminder that the Composer Community call today (Thurs) is at 4pm UTC (5pm UK, 12pm ET, 9am PT) today .. Agenda -> https://github.com/hyperledger/composer/wiki/Meeting-20th-December-2018 - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community.3
reminder that the Composer Community call today (Thurs) is at 4pm UTC (5pm UK, 12pm ET, 9am PT) today .. Agenda -> https://github.com/hyperledger/composer/wiki/Meeting-20th-December-2018 - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community.3
[ ](https://chat.hyperledger.org/channel/composer?msg=qojq7cq6jvATyX3iS) @mahoney1 is the call not now?
or did I missed it?
in 55 mins
oke, thanks :)
@waleed was in meeting - call in 20 mins - 4pm UTC (5pm UK, 12pm ET, 9am PT) today .. Agenda -> https://github.com/hyperledger/composer/wiki/Meeting-20th-December-2018 - Join via Zoom from PC, Mac, Linux, iOS or Android: https://zoom.us/my/hyperledger.community.3
@mahoney1 the Zoom link on the Wiki is wrong btw. It says: https://zoom.us/j/961428987
[ ](https://chat.hyperledger.org/channel/composer?msg=WMzpCLe2ewjum6oPE) please help
here: Docs links from today's Community call FYI 1) Commercial paper sample: https://hyperledger-fabric.readthedocs.io/en/latest/developapps/scenario.html 2) tutorials mentioned to try out if you wish [tutorial 1](https://developer.ibm.com/tutorials/run-commercial-paper-smart-contract-with-ibm-blockchain-vscode-extension/) [tutorial 2](https://github.com/mahoney1/docs/blob/master/commercial-paper-query-tutorial-meta.md) on Github and [tutorial 3](https://github.com/mahoney1/docs/blob/master/commercialpaper-report-deltas.md) on Github (not published yet)
here: Docs links from today's Community call FYI 1) Commercial paper sample: https://hyperledger-fabric.readthedocs.io/en/latest/developapps/scenario.html 2) tutorials mentioned to try out if you wish [tutorial 1](https://developer.ibm.com/tutorials/run-commercial-paper-smart-contract-with-ibm-blockchain-vscode-extension/) , [tutorial 2](https://github.com/mahoney1/docs/blob/master/commercial-paper-query-tutorial-meta.md) on Github, and [tutorial 3](https://github.com/mahoney1/docs/blob/master/commercialpaper-report-deltas.md) on Github (not published yet)
here: Docs links from today's Community call FYI 1) Commercial paper sample: https://hyperledger-fabric.readthedocs.io/en/latest/developapps/scenario.html 2) tutorials mentioned to try out if you wish [tutorial 1](https://developer.ibm.com/tutorials/run-commercial-paper-smart-contract-with-ibm-blockchain-vscode-extension/) , [tutorial 2](https://github.com/mahoney1/docs/blob/master/commercial-paper-query-tutorial-meta.md) on Github, and [tutorial 3](https://github.com/mahoney1/docs/blob/master/commercialpaper-report-deltas.md) on Github (not published yet)
ALL: Docs links from today's Community call FYI 1) Commercial paper sample: https://hyperledger-fabric.readthedocs.io/en/latest/developapps/scenario.html 2) tutorials mentioned to try out if you wish [tutorial 1](https://developer.ibm.com/tutorials/run-commercial-paper-smart-contract-with-ibm-blockchain-vscode-extension/) , [tutorial 2](https://github.com/mahoney1/docs/blob/master/commercial-paper-query-tutorial-meta.md) on Github, and [tutorial 3](https://github.com/mahoney1/docs/blob/master/commercialpaper-report-deltas.md) on Github (not published yet)
[ ](https://chat.hyperledger.org/channel/composer?msg=7hAozhYgyu6QHaSmQ) @dselman thanks, it had changed recently (FYI - so if you are hosting, you need to use this URL to record https://zoom.us/my/hyperledger.community.3 and have a host code to do so)
Has joined the channel.
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48: error sending: timeout expired while executing transaction",
"stack": "Error: Error trying invoke business network with transaction id 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48: error sending: timeout expired while executing transaction\n at HLFConnection.invokeChainCode (/home/tanla/.nvm/versions/node/v8.14.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
Hi all,
I need to *deploy bna to custom network.*
while deploying, the bna using peeradmincard i think it will be deployed in the example network.
@mahoney1 I have followed your tutorial(https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82)..
Till creating the admin participant and binding identity everything is working fine.
But when i try creating non admin participants as described in last step, my admin card is not having all the required data. Due to which im unable to make transaction....
composer participant add -c org2testadmin@sample-network -d '{"$class": "org.example.basic.SampleParticipant","participantId": "mike","password": "12345","score": "5.0","firstName": "mike","lastName": "mike","teamname": "TestTeam"}'
composer identity issue -c org2testadmin@sample-network -f mike.card -u mike -a "resource:org.example.basic.SampleParticipant#mike"
these are the scripts im running. But the new cards is missing certificate fields after meta data
the issue is missing the "credentials" section
for ACL, Im using the sample-network as the example, with not much change in ACL. So network admin should be able to have "ALL" access to resources
and when using "composer card list -c mike@sample-network" returns credentials as "one time use only secret set"
@anand.balagopalan I notice you've implemented your own custom business network (as opposed to the one in the tutorial) but its likely you've not followed the `import` and `ping` steps to have cards imported, and credentials downloaded for the participant in question - you can check whether your ping was successful or not (for your custom network).
@anand.balagopalan I notice you've implemented your own custom business network (as opposed to the one in the tutorial) but its likely you've not followed the `import` and `ping` steps to have the business network imported, and credentials downloaded (in exchange for the issued, one-time enrol secret) for the participant in question - you can check whether your ping was successful or not (for your custom network).
@garunkumar450 check your Fabric-network is up? Using `docker ps` - have you restarted a VM or similar?
@mahoney1 my first ping was successful....later when I tried again, its not working
1. I have done the import after issuing identity
2. Then I pinged the network
It was working fine...
But when I re- imported the card and tried again, it shows authentication error
The reason for me to re-import the card is, Im using deployed REST SERVER. so, I hd to edit the card and indeed the network...It showed authentication error... Then I had to try re importing the original card... The same I tried with multiple participants and I get the same result
@garunkumar450 - with your REST server timeout, you might want to check out this Stack Overflow Q/A: https://stackoverflow.com/questions/53864854/cannot-take-data-on-hyperledger-composer-rest-server-after-a-few-minutes-timeou
[ ](https://chat.hyperledger.org/channel/composer?msg=b7vSEtsjC93FvAwgK) @anand.balagopalan - You can't import and use a card twice - the original card has a *one-time* secret.
There is a good section in the Knowledge Wiki about Business Network Cards which covers the one-time secret:
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#bizcards
and here was a brief discussion about the same issue a few days ago:
https://chat.hyperledger.org/channel/composer?msg=jiSCKBD3a8D9EXxpR
Thanks @rthatcher Let me try it out and confirm....
Has joined the channel.
Hello!
I'm trying to query a transactionType that only contains certain participants but I don't seen to find anyway to do it
Any ideas or documentation I can look up?
migate composer project to raw fabric? I mean my .bna basically compiles to golang... but do I just need to rewrite it in golang from scratch? no converion tool? and then I have to scrap all of my rest apis I have genorated too?.....
migrate my composer project to raw fabric? I mean my .bna basically compiles to golang... but do I just need to rewrite it in golang from scratch? no converion tool? and then I have to scrap all of my rest apis I have genorated too?.....
yes maybe I am late to the party here https://lists.hyperledger.org/g/composer/message/125
Has joined the channel.
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: cannot get package for chaincode (process3-business-network:0.0.2)
'''
I got this error when using "composer network start". I confirm that my network name and version are correct and I can find the chaincode via "docker exec peer0.org1.example.com ls /var/hyperledger/production/chaincodes
". So what's wrong lol
Does anyone have explorer running with composer?
Or is there a way to, for instance, request which block a transaction belongs to with the REST server?
@mahoney1 Thanks it helped. :)
[ ](https://chat.hyperledger.org/channel/composer?msg=BEsxPiP5uCEtemW7y) @tomszero there's an example in the sample networks, although its an querying an asset there, the same principle applies, query your transaction class in a similar fashion (model -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/fund-clearing-network/models/org.clearing.cto#L14 ) and query file -> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/fund-clearing-network/queries.qry#L5 )
Is it possible to have an array of relationships from one asset to another? Or is only a single relationship per field allowed?
Has joined the channel.
Hello everyone! I have almost completed the IBM Blockchain Foundation course on Coursera. Hence, I have a basic idea and am familiar with Hyperledger Composer and Fabric. What should I do next? Any tips?
Hi, currently running the composer dev-env and changing up the angular app. However, getdocumentbyid.value doesn't seem to be able to change the value. Already made a topic on stackoverflow, but you guys might be able to help me out: https://stackoverflow.com/questions/53903729/hyperledger-angular-app-getdocumentbyid-value-not-working
[ ](https://chat.hyperledger.org/channel/composer?msg=633DmTSjtnzPh6tew) @ronaldlong46 Yes, it is possible. `--> Thing[] myThings`
hello everyone, I am working on a problem statement which involves a third party to share some user data with a company and to make sure that the shared data is not used for some other purpose I want to bring this process to blockchain. Can anyone please help me to guide through this?
Has joined the channel.
Hi everyone! I have been trying to deploy bna on single org using the tutorial present at https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org``` I am not able to run the composer network start command 0f this tutorial successfully. I am behind a proxy server. I have set the environment variables- http_proxy,https_proxy,ftp_proxy,socks_proxy. I have also created an npmrc file and have included it in the composer network install command. When I run the composer network start command I get following error:
```
Hi everyone! I have been trying to deploy bna on single org using the tutorial present at https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org``` I am not able to run the composer network start command 0f this tutorial successfully. I am behind a proxy server. I have set the environment variables- http_proxy,https_proxy,ftp_proxy,socks_proxy. I have also created an npmrc file and have included it in the composer network install command. When I run the composer network start command I get following error:
``` npm ERR! getaddrinfo EAI_AGAIN servername:port
Hi everyone! I have been trying to deploy bna on single org using the tutorial present at https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org``` I am not able to run the composer network start command 0f this tutorial successfully. I am behind a proxy server. I have set the environment variables- http_proxy,https_proxy,ftp_proxy,socks_proxy. I have also created an npmrc file and have included it in the composer network install command. When I run the composer network start command I get following error:
``` npm ERR! getaddrinfo EAI_AGAIN servername:port ```
``` Please help me solve this error
Has joined the channel.
Has joined the channel.
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48: error sending: timeout expired while executing transaction",
"stack": "Error: Error trying invoke business network with transaction id 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48: error sending: timeout expired while executing transaction\n at HLFConnection.invokeChainCode (/home/tanla/.nvm/versions/node/v8.14.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48: error sending: timeout expired while executing transaction",
"stack": "Error: Error trying invoke business network with transaction id 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48: error sending: timeout expired while executing transaction\n at HLFConnection.invokeChainCode (/home/tanla/.nvm/versions/node/v8.14.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
@rthatcher @mahoney1 @davidkel I am not able to call the external apis from composer, its working from postman,curl but not from composer, is there any setting needs to be done to allow composer to call external apis ?
Anyone that can help me with the following problem: https://stackoverflow.com/questions/53903729/hyperledger-angular-app-getdocumentbyid-value-not-working
Has joined the channel.
I have some question. Hyperledger composer already stop development, only maintainer? that is true
and if i use hyperleger composer for production, that have problem?
a already read news, ibm recomment hyperledger composer only for prototype
Thanks and BR
I have some question. Hyperledger composer already stop development, only maintainent? that is true
and if i use hyperleger composer for production, that have problem?
a already read news, ibm recomment hyperledger composer only for prototype
Thanks and BR
I have some question. Hyperledger composer already stop development, only maintainent? that is true
and if i use hyperleger composer for production, that have problem?
a read news, ibm recomment hyperledger composer only for prototype
Thanks and BR
I amworking a project where large amount of doctor and users will be on the platform and each will have individual account along with lots of personal and business data in the blockchain. But currently i am facing a problem that whenever i am upgrading the business network , all the data gets loss. Still can not find a way to preserve the data while uograding the net work. I am using hyperledger fabric v 1.2 , couchdb as a state db and fabric-cli and loopback as a mid tier to generate the apis for the app. How can i solve this issue to store data which upgradind the business network or restarting it ?
Hello Guys
How can I do like query in composer?
I have not found any such implementation. If you know any alternatives, please kindly let me know
I amworking a project where large amount of doctor and users will be on the platform and each will have individual account along with lots of personal and business data in the blockchain. But currently i am facing a problem that whenever i am upgrading the business network , all the data gets loss. Still can not find a way to preserve the data while uograding the net work. I am using hyperledger fabric v 1.2 , couchdb as a state db and fabric-cli and loopback as a mid tier to generate the apis for the app. How can i solve this issue to store data which upgradind the business network or restarting it ?
dear mefy, you try upgrading bna, please refer https://hyperledger.github.io/composer/latest/business-network/upgrading-bna
dear @mefy-pushpendu , you try upgrading bna, please refer https://hyperledger.github.io/composer/latest/business-network/upgrading-bna
[ ](https://chat.hyperledger.org/channel/composer?msg=4tuYoekZBoaBrc4YE) i am too confused, since i was about to study and do hands-on with composer, should i choose this route or stick with Fabric?
@AbhisekChandra , i very like Hyperledger Composer, Use Composer easy for deploy and develop. However, if Composer not new version, that not good, current i compare with SDK Node
[ ](https://chat.hyperledger.org/channel/composer?msg=eFfiibCJcQE63mSwJ) @sonphamngoc tried this. This way i am lossing the data.
[ ](https://chat.hyperledger.org/channel/composer?msg=u46dCsoZu6zFe7L36) which is my main concern. Upgrading is not a issue. But upgrading without lossing data is not just happening.
@mefy-pushpendu , you already change new version
@sonphamngoc yes
@sonphamngoc i can upgrade
@sonphamngoc yes i am using new fabric version
@rthatcher {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48: error sending: timeout expired while executing transaction",
"stack": "Error: Error trying invoke business network with transaction id 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48: error sending: timeout expired while executing transaction\n at HLFConnection.invokeChainCode (/home/tanla/.nvm/versions/node/v8.14.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
@rthatcher {
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48: error sending: timeout expired while executing transaction",
"stack": "Error: Error trying invoke business network with transaction id 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: failed to execute transaction 84e8d83835133358929d22f6de29eb76b671aa7ae72c542fd1ce07e42a722c48: error sending: timeout expired while executing transaction\n at HLFConnection.invokeChainCode (/home/tanla/.nvm/versions/node/v8.14.0/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1094:30)\n at
I amworking a project where large amount of doctor and users will be on the platform and each will have individual account along with lots of personal and business data in the blockchain. But currently i am facing a problem that whenever i am upgrading the business network , all the data gets loss. Still can not find a way to preserve the data while uograding the net work. I am using hyperledger fabric v 1.2 , couchdb as a state db and fabric-cli and loopback as a mid tier to generate the apis for the app. How can i solve this issue to store data which upgradind the business network or restarting it ?
[ ](https://chat.hyperledger.org/channel/composer?msg=zkrQcFrk2QCXwS7fB) @mefy-pushpendu hi @mefy-pushpendu you can upgrade business network by running upgrade fabric script by passing updated bna version. Also you can store/backup your business data from peers on either EBS or NFS or EFS so that on upgrade data will not lost.
Hi all.
I am unable to start the network.
am using hlfv12 network.
* Error: Failed to connect to any peer event hubs. It is required that at least 1 event hub has been connected to receive the commit event.*
[ ](https://chat.hyperledger.org/channel/composer?msg=FCzT6bKLTCacyfWgG) @sudhir.kumawat @sudhir.kumawat can you please help me with that ?
Anyone that can help me with a late Christmas miracle? https://stackoverflow.com/questions/53903729/hyperledger-angular-app-getdocumentbyid-value-not-working
Has joined the channel.
Has joined the channel.
Hi ,
i want to process a transaction while adding the asset itself... how can i able to do that ... normally after clicking the submit transaction buttion we are modifying the assets but now i want to modify the asset while adding the assets in the composer
Hi,
Instead of using composer-rest-server , I want to create my own custom Rest API , how can I do that ?
[ ](https://chat.hyperledger.org/channel/composer?msg=YkQnQiLvmLxDFpBQT) @rthatcher I did as this and the cards are wworking... But issue is now when i edit the cards to interact with my REST SERVER docker. after this, it shows Error 500...
@rthatcher @mahoney1 I want to see history of particular asset(like order, product history) how to do this?
@rthatcher @mahoney1 I want to see history of particular asset(like order, product history) how to do this? @dselman
Has joined the channel.
Are there any limitations on couchdb key storage??
Has joined the channel.
Has joined the channel.
Hi, I really like composer!!
Hi, I really like composer!! greetz from belgium
i have a network on hyperledger composer locally on ubuntu 16.0.4 , i want to connect to the same network using different peers from 2 separate machines , my question is how can do this ?
Has joined the channel.
Hii, i just installed all the dependencies for running hyperledger from here https://hyperledger.github.io/composer/latest/installing/development-tools.html#appendix but when i run composer-playground command after runnning the script cd ~/fabric-dev-servers
export FABRIC_VERSION=hlfv12
./startFabric.sh
./createPeerAdminCard.sh it says composer-playground: command not found
composer-playground: command not found
composer-playground: command not found
composer-playground: command not found
Hii, i just installed all the dependencies for running hyperledger from here https://hyperledger.github.io/composer/latest/installing/development-tools.html#appendix but when i run composer-playground command after runnning the script cd ~/fabric-dev-servers
export FABRIC_VERSION=hlfv12
./startFabric.sh
./createPeerAdminCard.sh it says composer-playground: command not found
Hello, I am trying to follow along with the steps in the readme located here: https://github.com/Preetam007/hyperledger_composer_file_storage
however, I am not sure where the /fabric-tools is supposed to be located.
cd ~/fabric-tools
./stopFabric.sh
./teardownFabric.sh
./downloadFabric.sh
./startFabric.sh
./createPeerAdminCard.sh
those do not seem to be part of HLF
those scripts also do not seem to be part of the composer project: https://github.com/hyperledger/composer
so where can I find them?
nevermind, I found the answers on https://hyperledger.github.io/composer/v0.16/installing/development-tools
[ ](https://chat.hyperledger.org/channel/composer?msg=uHbBhYMJmQm3oqZwd) @ShaikSharuk Limitations are documented in the note here: https://hyperledger-fabric.readthedocs.io/en/latest/couchdb_as_state_database.html#state-database-options
Hello everyone, currently I want to test the transaction endorsement (ex: double spending) so should I deploy a single org or multi org to test my case ? And if there's a tutorial that show how to add more peer in single org. Thank you.
Hi, all. I've deployed multi org network, but now all my transactions are rejected by ENDORSEMENT_POLICY_FAILURE when submit by admin. But in single org my transactions work well. I don't know why my transaction doesn't meet the endorsement policy 2-n
Clipboard - December 29, 2018 1:56 PM
Clipboard - December 29, 2018 1:56 PM
I have 2 peers each for 2 orgs
Has joined the channel.
Has joined the channel.
Hi, I'm new to HL Fabric and am experiencing difficulties when attempting to register a user in the FabCar tutorial.
When I run `node registerUser.js` I receive this error message: `Failed to register user "user1": Error: Calling register endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]`
Can anyone assist?
[ ](https://chat.hyperledger.org/channel/composer?msg=TzjwJK2CoP2B3eiHS) @PatrickOrtell yeah ... i ran into this same problem a month ago.. kinda depressing because there is a bigger disconnect between native fabric and composer than most people imagine and not really away to migrate when a lot of added boilerplate gets baked in to a bna that you dont see.
did you end up having luck migrating @PatrickOrtell
Has joined the channel.
Hi, is it possible to run the composer and its restful API on different machines? I've tried to change the destination IP (from local host to the target machine) on the connection profile but it didn't work......
[ ](https://chat.hyperledger.org/channel/composer?msg=6u8uRBu8H4t5PwEBD) @Garrett Kinda bunk to put an onboarding abstraction tool to "get you spun up quick" and then have it diverge to such a mutant. I love the .bna concept. Even if its not "the future" pretty lame its not capatibale with its core dep... kinda bazar if you ask me. Guess its time to learn fabric core sdks now.. I did see some light at the end of the tunnel when I found this tho... https://medium.com/wearetheledger/how-to-start-writing-your-hyperledger-fabric-nodejs-chaincode-4052393933ab we are already a typescript shop so it should come in handy
[ ](https://chat.hyperledger.org/channel/composer?msg=fHeAfvPscc2jDRmWK) also found this to rework my rest apis https://openblockchain.readthedocs.io/en/latest/API/CoreAPI/#to-set-up-swagger-ui
Has joined the channel.
Hi,
Instead of using composer-rest-server , I want to create my own custom Rest API , how can I do that ?
Has joined the channel.
Has joined the channel.
Need a designer using composer for a payment application
Having an issue here with relationship arrays. I have this:
--> PropertyPhoto[] PropertyPhotos optional
Using this smart contract:
async function connectPropertyPhoto(details){
const user = details.User;
const property = details.PropertySPVID;
const propertyPhoto = details.PropertyPhotoID;
const factory = getFactory();
const namespace = 'org.land';
property.PropertyPhotos = factory.newRelationship(namespace, 'PropertyPhoto', propertyPhoto.getIdentifier());
// Update registry
const propertyRegistry = await getAssetRegistry('org.land.SPVTitleRegistry');
await propertyRegistry.update(property);
}
And I am getting this error:
t: Instance org.land.SPVTitleRegistry#0001 has property PropertyPhotos with type org.land.PropertyPhoto that is not derived from org.reitium.land.PropertyPhoto[]
When the PropertyPhoto relationship field is not an array, there are no errors.
@ronaldlong46 judging by the message (not seen your model file) pasted, you're trying to make a relationship (in your code) to an array field (albeit you may be using it to store an array of relationship identifiers?), when you should be doing so as a typed pointer to a single resource instance - see https://hyperledger.github.io/composer/latest/api/runtime-factory#newrelationship also see sample networks https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js#L146
[ ](https://chat.hyperledger.org/channel/composer?msg=arRuCZG7cBQ676JYP) @Teckchun94 see the docs page -> https://hyperledger.github.io/composer/latest/integrating/customizing-the-rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=3vDq39QPEnoRq4vEQ) @marcj_518 check that your CA server is up and running - it typically uses that address in a dev environment (you need this server in your runtime Fabric environment to be able enrol/register user(s) as you've attempted above).
Hi, Is there way to properly download version 0.19.5 composer
As I want to follow the steps in the https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn tutorial
because when i type `npm install -g composer-cli yo generator-hyperledger-composer` it downloads the latest stable version.
`npm install -g composer-cli@0.19.5 yo generator-hyperledger-composer` i tried this but not sure if it correctly downloaded
```
composer -v
v0.19.5
```
It does give me this. but I want to see what version should `yo` be and related.
[ ](https://chat.hyperledger.org/channel/composer?msg=Yi8wez3EFYNELjEJx) @packkkkk 1. check the business network cards (that you've imported) are 'aware' of the peers in the 2nd org now (see the [appendix of this tutorial[(https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82) for an example of that or the [multi-org tutorial](https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org) 2. Presuming you did a `composer network install` of the updated (ie version) BNA file, followed by a `composer network upgrade` providing the new endorsement.json file as a parameter to the `upgrade` cmd
@Smit95shah probably should be `npm install -g composer-cli@0.19.5 yo generator-hyperledger-composer@0.19.5` - see https://hyperledger.github.io/composer/v0.19/installing/development-tools.html - or on separate lines `npm install -g composer-cli@0.19.5` followed by `npm install -g generator-hyperledger-composer@0.19.5`
@Smit95shah probably should be `npm install -g composer-cli@0.19.5 yo generator-hyperledger-composer@0.19.5` - see https://hyperledger.github.io/composer/v0.19/installing/development-tools.html - or on separate lines `npm install -g composer-cli@0.19.5` followed by `npm install -g generator-hyperledger-composer@0.19.5` - would suggest to first uninstall `npm uninstall -g generator-hyperledger-composer` (latest) before doing the above to get 0.19.5 etc
Thanks @mahoney1
May I know do I have change this url?
```curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz```
@Smit95shah no, you don't need to (the control of your env is done using setting the FABRIC_VERSION - in your case `FABRIC_VERSION=hlfv11` etc per the docs to get the matching Fabric dev environment for use with Composer development ) - see info in the release notes https://github.com/hyperledger/composer/releases
Alright. Thanks.
@mahoney1 do you know where is `/etc/hosts` ?
referring to this https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
@Smit95shah standard file on a Linux filesystem under `/etc` ( which the author is using) ?https://askubuntu.com/questions/183176/what-is-the-use-of-etc-hosts
Has joined the channel.
Hello everybody.
I try to use docker hyperledger/composer-cli and try install network, but I have connection error to peer.
I already startFabric.sh and createPeerAdminCard.sh.
I don't know why docker composer-cli don't see peer.
Hello everybody.
I try to use docker hyperledger/composer-cli and try install network, but I have connection error to peer.
I already startFabric.sh and createPeerAdminCard.sh.
I don't know why docker composer-cli don't see peer.
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
```
Hello everybody.
I try to use docker hyperledger/composer-cli and try install network, but I have connection error to peer.
I already startFabric.sh and createPeerAdminCard.sh.
I don't know why docker composer-cli don't see peer.
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
```
```
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
15e38789e32a hyperledger/fabric-peer:1.2.1 "peer node start" 2 hours ago Up 2 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
fc0470a487b2 hyperledger/fabric-orderer:1.2.1 "orderer" 2 hours ago Up 2 hours 0.0.0.0:7050->7050/tcp orderer.example.com
ef11c65c7db0 hyperledger/fabric-couchdb:0.4.10 "tini -- /docker-ent…" 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
3dccbda06524 hyperledger/fabric-ca:1.2.1 "sh -c 'fabric-ca-se…" 2 hours ago Up 2 hours 0.0.0.0:7054->7054/tcp ca.org1.example.com
```
Hello everybody.
I try to use docker hyperledger/composer-cli and try install network, but I have connection error to peer.
I already startFabric.sh and createPeerAdminCard.sh.
I don't know why docker composer-cli don't see peer.
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
```
```
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
15e38789e32a hyperledger/fabric-peer:1.2.1 "peer node start" 2 hours ago Up 2 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
fc0470a487b2 hyperledger/fabric-orderer:1.2.1 "orderer" 2 hours ago Up 2 hours 0.0.0.0:7050->7050/tcp orderer.example.com
ef11c65c7db0 hyperledger/fabric-couchdb:0.4.10 "tini -- /docker-ent…" 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
3dccbda06524 hyperledger/fabric-ca:1.2.1 "sh -c 'fabric-ca-se…" 2 hours ago Up 2 hours 0.0.0.0:7054->7054/tcp ca.org1.example.com
```
```
docker-compose run --rm composer card list
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --card
Hello everybody.
I try to use docker hyperledger/composer-cli and try install network, but I have connection error to peer.
I already startFabric.sh and createPeerAdminCard.sh.
I don't know why docker composer-cli don't see peer.
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
```
```
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
15e38789e32a hyperledger/fabric-peer:1.2.1 "peer node start" 2 hours ago Up 2 hours 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
fc0470a487b2 hyperledger/fabric-orderer:1.2.1 "orderer" 2 hours ago Up 2 hours 0.0.0.0:7050->7050/tcp orderer.example.com
ef11c65c7db0 hyperledger/fabric-couchdb:0.4.10 "tini -- /docker-ent…" 2 hours ago Up 2 hours 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
3dccbda06524 hyperledger/fabric-ca:1.2.1 "sh -c 'fabric-ca-se…" 2 hours ago Up 2 hours 0.0.0.0:7054->7054/tcp ca.org1.example.com
```
```
$ docker-compose run --rm composer card list
The following Business Network Cards are available:
Connection Profile: hlfv1
┌─────────────────┬───────────┬──────────────────┐
│ Card Name │ UserId │ Business Network │
├─────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└─────────────────┴───────────┴──────────────────┘
Issue composer card list --card
@harpcio what version of Composer, Node JS ? `composer -v` Are you attempting to run your Composer dev environment inside docker containers?
```
$ docker-compose run --rm composer --version
v0.20.5
```
Yes, I try everything in docker container from official hyperledger/composer-cli
This is my docker-compose.yml:
```
version: '3'
services:
composer:
build:
context: ./
dockerfile: ./docker/composer/Dockerfile
container_name: hcomposer.publicism.docker
volumes:
- ./.composer:/home/composer/.composer
- ./.dist:/home/composer/.dist
- ./fabric-dev-servers/fabric-scripts/hlfv12/composer/crypto-config:/home/composer/crypto-config
- ./fabric-dev-servers/DevServer_connection.json:/home/composer/DevServer_connection.json
networks:
- global
networks:
global:
external: true
```
@harpcio the dev environment we provide is not inside docker containers, so you have an environment issue. The connection profile (connection.json) is built into the card file when you do createPeerAdminCard.sh script and that connection profile defines the urls for the location of the peer, orderer and ca. There is an option on the script to change the address from localhost to something else. You could try the IP address of your machine, for example
`createPeerAdminCard.sh -h a.b.c.d`
where a.b.c.d is the IP Address of your machine.
If that doesn't work then you will need to build a connection profile appropriate to your network and use composer card create to create yourself a new card file. Good luck!
Aaa... right, composer container doesn't see other ports on my machine .. it need to connect to host ip
Thanks .. you are genius
Thanks. @mahoney1 May I know why am I receiving this meesage:
```
docker logs rest
Error: No such container: rest
```
When I run this, I get this: `docker container list`
```
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ec13e5dca2f6 mongo "docker-entrypoint.s…" 7 minutes ago Up 7 minutes 0.0.0.0:27017->27017/tcp mongo
ed95eaef33e4 dev-peer0.org1.example.com-bc31122018-0.0.1-535624ebef594383e975e23c89919da76badbef2494ab346ed8e8f220df0a78a "/bin/sh -c 'cd /usr…" 25 minutes ago Up 25 minutes dev-peer0.org1.example.com-bc31122018-0.0.1
e87a9fb6e582 hyperledger/fabric-peer:x86_64-1.1.0 "peer node start" About an hour ago Up About an hour 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
3e20cebf4b44 hyperledger/fabric-ca:x86_64-1.1.0 "sh -c 'fabric-ca-se…" About an hour ago Up About an hour 0.0.0.0:7054->7054/tcp ca.org1.example.com
e80b8caa693b hyperledger/fabric-couchdb:x86_64-0.4.6 "tini -- /docker-ent…" About an hour ago Up About an hour 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
ba2d55d0b4cb hyperledger/fabric-orderer:x86_64-1.1.0 "orderer" About an hour ago Up About an hour 0.0.0.0:7050->7050/tcp orderer.example.com
```
@Smit95shah https://docs.docker.com/engine/reference/commandline/logs/ `docker logs
@mahoney1 Next problem, network start:
```
docker-compose run --rm composer network start -c PeerAdmin@hlfv1 -n publicism-network -V 0.0.1 -A admin -S adminpw
Starting business network publicism-network at version 0.0.1
Processing these Network Admins:
userName: admin
⠇ Starting business network definition. This may take a minute...
⠋ Starting business network definition. This may take a minute...
⠙ Starting business network definition. This may take a minute...
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
```
see the REQUEST_TIMEOUT section of the knowledge wiki https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues (7th item down, approx) and follow steps indicated - assuming of course, you've tested all your containers are resolving by name correctly !
how do i create a query that gives all the transactions completed until now
in composer query language
@mahoney1 Ahh.. problem occurred because I changed the docker network name of fabric containers ..
@mahoney1 Ahh.. problem occurred because I changed the docker network name of fabric containers .. it need to be "composer_default".
@mahoney1 Ahh.. problem occurred because I changed the docker network name of fabric containers .. it has to be "composer_default".
Has joined the channel.
@mahoney1 Last question - can I skip composer-rest-server? How to create the api .. without it?
[ ](https://chat.hyperledger.org/channel/composer?msg=fXCfFA2is5dPyNEwC) @mahoney1 Thats right. but I am not sure when does the 'run' container is being created
https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
Does anyone know `I generated a JWT token based on the above secret gSi4WmttWuvy2ewoTGooigPwSDoxwZOy,` what this line mean?
https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
Does anyone know `I generated a JWT token based on the above secret gSi4WmttWuvy2ewoTGooigPwSDoxwZOy,...` what this line mean?
https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
https://www.jsonwebtoken.io/
You need to generate JWT based on secret: gSi4WmttWuvy2ewoTGooigPwSDoxwZOy
Thanks.
Also, I am currently developing my application on host port `3001`, I am trying to figure when i make a get request on `http://localhost:3000/auth/jwt/callback` how do i read the cookies? - it works on postman but not on a localhost...
```
const authJwtHeader = {
headers: {
'authorization': 'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0aW1lc3RhbXAiOjE1MjcxNjI1MDQ3NDI1NjUwODcsInVzZXJuYW1lIjoiZ2FuZ2FjaHJpcyJ9.WyARsOhMSDVRjUpd-rPBI1A8-Vpz7pDS6rICXKN8W3U',
"Access-Control-Allow-Origin" : "*"},
maxRedirects: 0,
validateStatus: function(status) {
return status >= 200 && status < 303;
}
};
axios.get('http://localhost:3000/auth/jwt/callback', authJwtHeader).then(response => {
console.log("finding cookie: ",response.headers);
}, err => {});
```
[ ](https://chat.hyperledger.org/channel/composer?msg=97Ms8MWcsTcR6Ek5m) @PatrickOrtell I couldnt relate more to what you said. I spent a year using composer to build out my blockchain just to find out that none of the tools were meant to port over to a production environment. And i agree, the .bna concept and modeling has been great with composer.. and theoretically .bna's ARE deployed to a native fabric... so it seems like the whole thing is 95% of the way there... but the plan is to call it quits
@Garrett @PatrickOrtell bna's can be deployed to a real hyperledger fabric. To be clear bna's are not compiled to golang. They are augmented with the composer runtime and execute inside a node chaincode container. It's up to you how you want to proceed with your composer application but if you are just starting out then it's probably not worth investing time in composer for a production environment. What you want to be investing time in is the new programming models coming in hyperledger fabric starting with 1.4 which is taking some of the composer capabilities and making them available from the hyperledger components themselves. If you are already well down the composer path then at some point you should look to migrate to the new programming models in fabric. You can see what's going to be available in 1.4 by reading some documentation here
https://hyperledger-fabric.readthedocs.io/en/master/developapps/developing_applications.html
And this should just be the beginning of the journey for making hyperledger fabric easier to develop applications
@Garrett @PatrickOrtell bna's can be deployed to a real hyperledger fabric. bna's are not compiled to golang, they are augmented with the composer runtime and execute inside a node chaincode container. It's up to you how you want to proceed with your composer application but if you are just starting out then it's probably not worth investing time in composer for a production environment. What you want to be investing time in is the new programming models coming in hyperledger fabric starting with 1.4 which is taking some of the composer capabilities and making them available from the hyperledger components themselves. If you are already well down the composer path then at some point you should look to migrate to the new programming models in fabric. You can see what's going to be available in 1.4 by reading some documentation here
https://hyperledger-fabric.readthedocs.io/en/master/developapps/developing_applications.html
And this should just be the beginning of the journey for making hyperledger fabric easier to develop applications
[ ](https://chat.hyperledger.org/channel/composer?msg=fqYLSwfi7a3ekd3m8) @davidkel on a 8 hour flight i downloaded the pdf to the new 1.4 of fabric and read through almost all of it. in pdf form, it ends up being about 460 pages. neverless, its really well-done and i align with the vision and direction that fabric is headed.
ive been playing around with the commercial paper network as well, but there are some big gaps between the capabilities of that and composer in terms of ACL modeling, queries, and asset creation. Composer also used couchdb very seemlessly
I think to your point, composer, really is just building chaincode for you. Which if thats the case, then id like to look at the node chaincode files before deploying them. It seems like there is some boilerplate code that gets added to the composer code ive written.
@Garrett Composer doesn't build node chaincode for you. Your bna is the chaincode, what happens at composer network install is that the bna is updated with references to the composer runtime as well as adding in indexes based on your .qry file. It's the composer runtime that provides the composer capabilities but the TP functions run exactly as you code them but call into the composer runtime to perform actions such as registry interaction.
You can always via the source for the runtime on github, specifically in the packages directory `composer-runtime` and `composer-runtime-hlfv1`
@mahoney1 Thanks! I ended up fixing by checking for an empty array
// Check for undefined relationship
if(typeof property.PropertyPhotos !== 'object' || property.PropertyPhotos.constructor !== Array) {
// If undefined, insert empty array
property.PropertyPhotos = [];
}
Has joined the channel.
Has joined the channel.
Does anyone know I deleted 'access_token' value from the cookies from the client side, but now when I call `http://localhost:3000/auth/jwt/callback` it does not assign cookiie again
Does anyone know I deleted 'access_token' value from the cookies from the client side, but now when I call `http://localhost:3000/auth/jwt/callback` it does not assign 'access_token' again
I deleted 'access_token' from the cookie to see if it regenerate the token. But it did not generate the access token again. may I know why?
hi .. i am using hyperledger-composer.. i am beginner to blockchain .. i already written a code on hyperledger-composer.. i want show in GUI .. how to do?? please helpme..
@mahoney1 I have a 3 org network, and im trying to deploy a common REST server on the cloud for these 3. Im following the tutorial (https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest) to deploy the REST server. issue is, when i deploy using the restadmin card (created using alice -admin of org1), it doesnot allow "ping"with the members of other organization....How to avoid this?
@mahoney1 @rthatcher will composer query language works on goleveldb?? I have written a query as SELECT tp.m WHERE (MO CONTAINS (MN == 9848972329) ) , and tried to execute , its giving error as execute_query not supported on leveldb
[ ](https://chat.hyperledger.org/channel/composer?msg=TEZbonf9aJcZaZtf5) When running the REST server in non-docker mode, the cards are working
hi anyone can help me to query all the trasnactions that are done until now in a blockchain business network network ... with examples i wrote queries for assets , and how many paritcipants are there but not able to write the same for historian records
Has joined the channel.
hey..
can any one tell me where or how hyperledger-composer keep composer-rest-api, as a docker container or something else..? (in local setup)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=fqYLSwfi7a3ekd3m8) @davidkel Thanks for the reach out, I am not married to composer it is still in PoC mode for us... so I guess its a good thing to move over to fabric now. The node sdk has been pretty awsome over the last few days. Ill start moving questions over to #fabric-sdk-node . Thanks guys!!!
@TomWeiss check you have followed the pre reqs for the mac, here https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html#macos
@TomWeiss The error implies you don't have the correct xcode installation so worth checking in that area
Has joined the channel.
Has joined the channel.
Hello Team! We are working on hyperledger blockchain project. Our project is building a distributed application using hyperledger blockchain. Little confused whether to use composer or fabric. What difference does it make if we use either of them? Please help!
[ ](https://chat.hyperledger.org/channel/composer?msg=cWopReGQNwQT3BsJg) @komalbharadiya Please use fabric , composer development is not active. For POC stuff you can use composer
chunk {0} polyfills.bundle.js, polyfills.bundle.js.map (polyfills) 283 kB {5} [initial] [rendered]
chunk {1} main.bundle.js, main.bundle.js.map (main) 192 kB {4} [initial] [rendered]
chunk {2} styles.bundle.js, styles.bundle.js.map (styles) 184 kB {5} [initial] [rendered]
chunk {3} scripts.bundle.js, scripts.bundle.js.map (scripts) 441 kB {5} [initial] [rendered]
chunk {4} vendor.bundle.js, vendor.bundle.js.map (vendor) 4.13 MB [initial] [rendered]
chunk {5} inline.bundle.js, inline.bundle.js.map (inline) 0 bytes [entry] [rendered]
ERROR in /home/bc/block-track/angular-app/src/app/model.ts (2,9): Duplicate identifier 'Participant'.
ERROR in /home/bc/block-track/angular-app/src/app/model.ts (5,9): Duplicate identifier 'Participant'.
i got this error how to solve this
chunk {0} polyfills.bundle.js, polyfills.bundle.js.map (polyfills) 283 kB {5} [initial] [rendered]
chunk {1} main.bundle.js, main.bundle.js.map (main) 192 kB {4} [initial] [rendered]
chunk {2} styles.bundle.js, styles.bundle.js.map (styles) 184 kB {5} [initial] [rendered]
chunk {3} scripts.bundle.js, scripts.bundle.js.map (scripts) 441 kB {5} [initial] [rendered]
chunk {4} vendor.bundle.js, vendor.bundle.js.map (vendor) 4.13 MB [initial] [rendered]
chunk {5} inline.bundle.js, inline.bundle.js.map (inline) 0 bytes [entry] [rendered]
ERROR in /home/bc/block-track/angular-app/src/app/model.ts (2,9): Duplicate identifier 'Participant'.
ERROR in /home/bc/block-track/angular-app/src/app/model.ts (5,9): Duplicate identifier 'Participa
@knagware9 Okay Thanks! But I heard using fabric will be very difficult as a start. Is something like using composer initially and continuing with fabric possible
[ ](https://chat.hyperledger.org/channel/composer?msg=ajbYENRL8inp556Jm) @komalbharadiya not like that , we cant composer code to be used with fabric core...you again need to write chaincode and REST API to build your project in fabric
I was trying to open composer-playground which I had installed long back. But it gives lot of errors. gyp ERR! cwd /home/komal/.nvm/versions/node/v10.15.0/lib/node_modules/composer-playground/node_modules/grpc
gyp ERR! node -v v10.15.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! grpc@1.10.1 install: `node-pre-gyp install --fallback-to-build --library=static_library`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the grpc@1.10.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
How do I solve this problem?
[ ](https://chat.hyperledger.org/channel/composer?msg=cWopReGQNwQT3BsJg) @komalbharadiya As mentioned elsewhere, if you are just starting out then it's probably not worth investing time in Composer for a production environment (its ok for a PoC to prototype/visualise/demo to stakeholders blah blah). Hyperledger Fabric, starting with 1.4 currently out there, has a new programming model aimed at making it easier to develop applications/smart contracts/decentralised apps (native model additions, whereas Composer had its own runtime / framework on top of Fabric but without access to many of Fabric's rich set of APIs ) and the new model is taking some Composer capabilities (such as intuitive approach to developing apps). You can see a good use case, using the model and available in 1.4 by reading some documentation here
https://hyperledger-fabric.readthedocs.io/en/master/developapps/developing_applications.html and also see more on 1.4 programming model elements being added and design approach here https://hyperledger-fabric.readthedocs.io/en/latest/whatsnew.html And this should just be the beginning of the journey, in that using Hyperledger Fabric now makes it easier to develop applications as mentioned.
[ ](https://chat.hyperledger.org/channel/composer?msg=cWopReGQNwQT3BsJg) @komalbharadiya As mentioned elsewhere, if you are just starting out then it's probably not worth investing time in Composer for a production environment (its ok for a PoC to prototype/visualise/demo to stakeholders blah blah). Hyperledger Fabric, starting with 1.4 (release candidate currently out there), has a new programming model aimed at making it easier to develop applications/smart contracts/decentralised apps (native model additions, and development, whereas Composer had its own runtime / framework on top of Fabric but without access to many of Fabric's rich set of APIs ) and the new model is taking some Composer capabilities (such as intuitive approach to developing apps). You can see a good use case, using the model and available in 1.4 by reading some documentation here
https://hyperledger-fabric.readthedocs.io/en/master/developapps/developing_applications.html and also see more on 1.4 programming model elements being added and design approach here https://hyperledger-fabric.readthedocs.io/en/latest/whatsnew.html And this should just be the beginning of the journey, in that using Hyperledger Fabric now makes it easier to develop applications as mentioned.
Hi @rthatcher In my Network i want to see the history of Specific Order Asset how to do this?
@mahoney1
@komalbharadiya not sure, might be your Fabric doesn't match the Fabric you have since installed like shown [here](https://github.com/hyperledger/composer/issues/4192) - probably best to check your current Composer version vis-a-vis your Fabric version, as per release notes -> https://github.com/hyperledger/composer/releases
@mahoney1 can u please check my issue?
@rthatcher does hyperledger query language works on leveldb as a state database??
[ ](https://chat.hyperledger.org/channel/composer?msg=DfJMB9ZmfcchF5dXR) @anand.balagopalan where is it raised?
@mahoney1 https://chat.hyperledger.org/channel/composer?msg=8htJYHFNNJB57QKzY
@mahoney1 @rthatcher please tell how to perform queries on non primary key fields, when using leveldb as state database??
[ ](https://chat.hyperledger.org/channel/composer?msg=eCgGmJBDhLCF9jHqH) Problem is, when i am trying to deploy the REST server, only org1 participants are getting access. Rest of them are returning error 500. But if i do the same without using Docker-REST server, all participants are getting a ccess
@anand.balagopalan if you're following the tutorial (link provided), the business network won't be pingable using restadmin because the names are substituted so that the containers can be resolved from within the dockerized REST server. Your issue appears to be standing up a REST server (that's has done a discovery on the business network) so your individual participants (via their business network cards and therefore connection.json file therein) from each org, can connect / ping / interact with the business network - participant cards need to be imported in their respective REST APIs, that you've set up multi-user REST server for and their cards must be able to interact with the business network (their cards won't be the same as the restadmin card).
@anand.balagopalan if you're following the tutorial (link provided), the business network won't be pingable using restadmin because the names are substituted so that the containers can be resolved from within the dockerized REST server. Your issue appears to be standing up a REST server (that's has done a discovery on the business network) so your individual participants (via their business network cards and therefore connection.json file therein) from each org, can connect / ping / interact with the business network - participant cards need to be imported in their respective REST APIs, that you've set up multi-user REST server for and their cards must be able to interact with the business network (their card profiles won't be the same as the restadmin card).
@anand.balagopalan if you're following the tutorial (link provided), the business network won't be pingable using restadmin because the names are substituted so that the containers can be resolved from within the dockerized REST server. Your issue appears to be standing up a REST server (that's has done a discovery on the business network) so your individual participants (via their business network cards and therefore connection.json file therein) from each org, can connect / ping / interact with the business network - participant cards need to be imported in their respective REST APIs, that you've set up multi-user REST server for and their cards must be able to interact with the business network (their card profiles won't be the same as the restadmin card). Good luck!
@mahoney1 So, if i use the same script which i use to replace"localhost" with the docker host name,qill it work? I am planning to have a centralized REST server, so that all 3 organizations can interact using it. I have enabled Org3 admin while starting the network so the remaining part is this REST server connection issue. The only change in connection profile of the participants, is the "client" section in the connection profile. My thought is, if its working without the Docker, shouldnt it work when i run docker also?
Has joined the channel.
@anand.balagopalan I can't answer, as I don't know if your orgs are on the same host or different hosts (or the 'centralized' REST server is on a network remote to the rest of the nodes, how its resolved etc etc) - but if the same host, then the google oauth2 tutorial shows an example of what should be in the connection.json (its not localhost). You should probably get it working with one org first, then the rest should follow.
@mahoney1 all the network components are in the same host. and i have made 1 organization working. as i sadi, when im running the restserverwith authentication and multi user without using docker, all 3 organization participants are abble to interact with the network. But as soon as i deploy it in a docker, and when i try to ping (system ping through REST api), the card returns error 500. When trying using the participant of Org-1( i am loading the card of corresponding participant and making it default as expected), its working fine.(rest admin is created using the admin of org-1.)
@anand.balagopalan would check the answer in the link below - the business network **cards** you're imported should have credentials set / ie not have an enrol secret - that is usually one reason why you get a 500 (don't know how you've imported into the REST API, that said). https://github.com/hyperledger/composer/issues/4325
Is it possible to request which block a transaction belongs to in composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=hjpf66d6nEzqDxdGX) @mahoney1 the card has the necessary credentials, because I have pinged after creating the card
please let me know if u need any further info, which I can provide...
@anand.balagopalan right, but you would need to have exported the card, to a .card file (deleting the old .card file you created manually) - that then that new .card file, gets imported into the REST API Wallet.
@anand.balagopalan right, after your 'ping', you would need to have exported the card, to a .card file (deleting the old .card file you created manually) - that then that new .card file, gets imported into the REST API Wallet.
@anand.balagopalan right, after your 'ping', you would need to have exported the card, to a .card file (deleting the old .card file you created manually) - then that new .card file, gets imported into the REST API Wallet.
Has joined the channel.
How to implement Local Passport Strategy for Hyperledger Composer Rest Server in Angular App
@ShaikSharuk You cannot perform any composer queries when using leveldb, composer queries use the rich query capability of fabric which is only supported by couchdb
@komalbharadiya regarding your problem with playground, node 10 is not supported you much use node 8
@komalbharadiya regarding your problem with playground, node 10 is not supported you must use node 8
@irkoch see https://github.com/hyperledger/composer/issues/4297 for links that may help
@KvdB There is no block capability in composer, you would need to use the node-sdk apis. You can get a copy of the client object (which is being used and part of the node-sdk) using the getNativeAPI call on a business network connection.
@KvdB There is no block capability in composer, you would need to use the node-sdk apis to query blocks, you would then have to handle the blocks yourself to see if you can do what you want. You can get a copy of the client object (which is being used and part of the node-sdk) using the getNativeAPI call on a business network connection.
Hmm, thanks. I'll see if I can figure this out
[ ](https://chat.hyperledger.org/channel/composer?msg=GRDbK3wDnYknWnpus) @davidkel @KvdB tnks for your answer, I already saw this post but the same problem too. @davidkel how can i use the node-sdk apis
@irkoch there is a getNativeAPI call on a business network connection, it will return you the node-sdk client object being used. From there you would need to use the node-sdk apis documented here https://fabric-sdk-node.github.io/. This page is likely to be for fabric 1.3 or higher however so may contain newer capabilities not available from the version you get from the business network connection
[ ](https://chat.hyperledger.org/channel/composer?msg=gum2Da8ABwFJYiqDa) @davidkel pretty cool thunks @davidkel
@davidkel @rthatcher @mahoney1 In my Network i want to see the history of Specific Order Asset how to do this?
Can we convert business network archieve in golang chaincode?
[ ](https://chat.hyperledger.org/channel/composer?msg=7DFJCdQzJrLiMAYfc) @sureshtedla There is no direct Composer function to track the history of a particular Asset (or Participant) - but you can use the Composer getNativeAPI() function then use the native function getHistoryForKey. There is an example of doing this for a participant in the following Stack Overflow answer and it will be very similar for an Asset: https://stackoverflow.com/questions/51783822/historian-for-a-particular-participant/51820465#51820465
[ ](https://chat.hyperledger.org/channel/composer?msg=ey5QuE566d8sqNXcc) @NeelKantht There is no conversion tool - you will need to re-write your network in golang (or NodeJS)
@rthatcher @davidkel @mahoney1 pls help me how to create a composite key and store it ?
[ ](https://chat.hyperledger.org/channel/composer?msg=h2ijGX8Bu28WHpebj) @ShaikSharuk *Composer* creates the Composite Key for you - so you should not need create them.
The Fabric documentation has more information about Composite Keys if you are using Fabric directly:
https://hyperledger-fabric.readthedocs.io/en/release-1.3/couchdb_as_state_database.html?highlight=composite%20key
https://hyperledger-fabric.readthedocs.io/en/release-1.3/Fabric-FAQ.html?highlight=composite%20key
Hi experts, in cucumber js tests, how to ignore checking for dates. i havea an auto generated date using new Date() that is an attribute in an asset, within a trnasaction i create the asset and the date attribute using the new Date(), in the cucumber js test, i cannot specify the exact date.
[ ](https://chat.hyperledger.org/channel/composer?msg=HCyK4B2j2gn2sdDKp) @rthatcher ok then help me how to create composite key in composer
@rrishmawi you should check on google - something like this may [help](https://stackoverflow.com/questions/1617937/dynamic-data-in-cucumber-tables) you ... other posts out there offer solutions fyi.
@rrishmawi you should check on google - something like [this may help](https://stackoverflow.com/questions/1617937/dynamic-data-in-cucumber-tables) you ... other posts out there offer solutions fyi.
[ ](https://chat.hyperledger.org/channel/composer?msg=CuaGxkfSFq3jbJpP6) @mahoney1 Thanks for the link, However, the solutions in the link all involve modifying the steps file. is there any other way to do it out of the box?
@rrishmawi I think someone raised a similar request here https://github.com/hyperledger/composer/issues/4559 I don't believe there is a way to do it out of the box.
@ShaikSharuk To do fabric shim level capabilities in composer you need to first get a reference to the fabric-shim stub instance. You use the `getNativeAPI()` to obtain that. From there you can perform fabric shim calls as documented here
https://fabric-shim.github.io/release-1.2/
@ShaikSharuk To do fabric shim level capabilities in composer you need to first get a reference to the fabric-shim stub instance. You use the `getNativeAPI()` to obtain that. From there you can perform fabric shim calls as documented here
https://fabric-shim.github.io/release-1.2/. You can see an example of it being used here
https://stackoverflow.com/questions/51783822/historian-for-a-particular-participant/51820465#51820465
but help with the actual fabric-shim apis is outside the remit of this channel
Has joined the channel.
Hello, I am building a fabric network using composer and have run into issues with composer-playground and composer-rest-server. After starting up the network and exposing :8181 for playground and :3000 for rest server, it works. But after some time (about 1-2 hrs), the connection seems to have been closed. Is there some sort of timeout or setting that could be causing this? The network is running in an AWS EC2 instance. Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=jK4f2RPvPhLHsLydC) @himi64 see answer in https://stackoverflow.com/questions/53864854/cannot-take-data-on-hyperledger-composer-rest-server-after-a-few-minutes-timeou/53865787#53865787
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=nymEYH5e77xfzQJnn) @mahoney1 Thanks @mahoney1, this seems to be working so far and I will monitor it in the next few hours.
[ ](https://chat.hyperledger.org/channel/composer?msg=nymEYH5e77xfzQJnn) @mahoney1 Thanks, this seems to be working so far and I will monitor it in the next few hours.
Hii Team, Since we only store important and confidential data on blockchain and the other details on any centralized database, I wanted to learn how to link blockchainDB with other NoSQL databases like MOngoDB?
[ ](https://chat.hyperledger.org/channel/composer?msg=ATcEPr4KXym2xcNss) @mahoney1 Thank you @mahoney1 !
[ ](https://chat.hyperledger.org/channel/composer?msg=tSLibS3ehYaFjZ7jZ) Does anyone manage to solve this?
Has joined the channel.
Hi team,
I am trying to install prereqs_ubuntu.sh but it is failing
Cannot add PPA: 'ppa:~git-core/ubuntu/ppa'.
ERROR: '~git-core' user or team does not exist.
Any clues ?
I created a Mongo db instance on host port 27018 with name "mongo-sample" but composer failed to connect to it. In fact, composer is still trying to connect to port 27017 of instance "27017" How to overcome this error?
Hello everyone, I have a pretty basic question as am new to composer playground.
How can I check that which participant created the asset ?
Clipboard - January 3, 2019 2:31 PM
May I know why I am not able to perform a call back?
Hi guys, I followed this tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org and successfully build a simple network, but how can I change the element of the network (orderer, peer, ca...) ?.
Hi guys, I followed this tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org and successfully built a simple network, but how can I change the element of the network (orderer, peer, ca...) ?.
Hi guys, I followed this tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org and successfully built a simple network, but how can I change the elements of the network (orderer, peer, ca...) ?.
Hello, how does a real-life voting-based consensus takes place ? Is there a human, that sees the transaction and says " Ok, I like this proposal by this person ". Assuming that everything is fine with the proposal from the network point of view.
@rthatcher @mahoney1 @davidkel I am using const nativeKey = getNativeAPI().createCompositeKey('Asset:systest.transactions.SimpleStringAsset', [id]); the method as mentioned in composer documentation, but when I am trying to use it, i am getting error like getNativeAPI().createCompositeKey() function doesn't exist. Please help me.
@sanjay.batra the ppa definition is correct so you seem to have a problem connecting to the internet or that specific ppa repository. I just tried and had no problem connecting to that PPA repository so give it another go.
https://chat.hyperledger.org/channel/composer?msg=h8hJaKcBXndBMFLKW
@sanjay.batra the ppa definition is correct so you seem to have a problem connecting to the internet or that specific ppa repository. I just tried and had no problem connecting to that PPA repository so give it another go.
@SJoshi7 In playground on the `Test` tab click on the `All Transactions` to see all the transactions you have submitted
@hauhm Composer doesn't dictate the hyperledger fabric configuration, you can define and create your own hyperledger fabric setup (except a setup that uses mutual TLS) and you can deploy a business network onto a channel defined in that network. The single org tutorial uses a simple development fabric which has been preconfigured to get you started. If you want to look at creating your own fabric network then you need to go to the fabric documentation here to get you started https://hyperledger-fabric.readthedocs.io/en/release-1.3/. There are other channels to ask questions about fabric itself
@Daka Consensus is provided by the hyperledger fabric ordering service and endorsement is done by the peers. Maybe the architecture explained would help here https://hyperledger-fabric.readthedocs.io/en/release-1.3/architecture.html. Questions about fabric are best asked on fabric channels as this channel is specific to composer only.
@ShaikSharuk Where are you trying to run that piece of code ? It can only be run inside a TP function running on a real fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=QCZcdrTsg8wwWPxER) @davidkel ya I am running inside a TP function on real fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=p2M6CYupAsnySgzSk) @anand.balagopalan I think you can specify a port in the COMPOSER_DATASOURCES environment variable you use for the Composer Rest Server
[ ](https://chat.hyperledger.org/channel/composer?msg=p2M6CYupAsnySgzSk) @anand.balagopalan probably because you haven't changed the port - see an example in the docs (docker run sequence) here https://hyperledger.github.io/composer/latest/integrating/deploying-the-rest-server or https://hyperledger.github.io/composer/latest/reference/rest-server.html (COMPOSER_DATASOURCES)
Hi, is there a way to create a clone of an object in logic.js ?
@Smit95shah it's standard javascript so you can use standard javascript techniques
@davidkel I tried few such as
1) JSON.parse from JSON.stringify(object) it fails as it expects us to use serialise from composer API
2) Object.assign({},obj)
However once i create the clone, it updates all the objects (clone and not clone ones) for example::
```
var cloneing1 = Object.assign({},tx);
var clineing2 = tx;
tx.asset.value = tx.newValue;
console.log(tx);
console.log(cloneing1);
console.log(clineing2);
```
assuming the previous value for "newValue" attribute was 10, and then when I assign 20 to that, it updates all the three objects `clineing2` , `cloneing1`, and ` tx` whereas I want only `tx` to be updated with 20
@davidkel I tried few such as
1) JSON.parse from JSON.stringify(object) it fails as it expects us to use serialise from composer API
2) Object.assign({},obj)
However once i create the clone, it updates all the objects (clone and not clone ones) for example::
```
var testClone = Object.assign({},tx);
var testClone2 = tx;
tx.asset.value = tx.newValue;
console.log(tx);
console.log(testClone);
console.log(testClone2);
```
assuming the previous value for "newValue" attribute was 10, and then when I assign 20 to that, it updates all the three objects `testClone2` , `testClone`, and `tx` whereas I want only `tx` to be updated with 20
@davidkel I tried few such as
1) JSON.parse from JSON.stringify(object) it fails as it expects us to use serialise from composer API
2) Object.assign({},obj)
However once i create the clone, it updates all the objects (clone and not clone ones) for example::
```
var testClone = Object.assign({},tx);
var testClone2 = tx;
tx.asset.value = tx.newValue;
console.log(tx);
console.log(testClone);
console.log(testClone2);
```
assuming the previous value for "newValue" attribute was 10, and then when I assign 20 to that, it updates all the three objects `testClone2` , `testClone`, and `tx` whereas I want only `tx` to be updated with 20 and the rest i.e. `testClone` and `testClone2` to have "newValue" value of 10
@Smit95shah so if you want to try to clone a modelled element as opposed to a javascript object, have you tried using the serializer to do that ?
Yeap. I tried.
I try to use `fromJSON` and `toJSON` to do the cloning. not sure if that is correct.
@Smit95shah ok, that would be one way to try, otherwise you would need to write javascript yourself to perform your own implementation of a deep clone that matches your requirements
@Smit95shah ok, that would be one way to try (ie first do a toJSON then reconstruct with fromJSON, otherwise you would need to write javascript yourself to perform your own implementation of a deep clone that matches your requirements
@Smit95shah ok, that would be one way to try (ie first do a toJSON then reconstruct with fromJSON), otherwise you would need to write javascript yourself to perform your own implementation of a deep clone that matches your requirements
btw do you happen to know how to use `options` under the serializer?
@Smit95shah The only information I know that exists for then is in the API reference here
https://hyperledger.github.io/composer/latest/api/common-serializer
@Smit95shah The only information I know that exists for them is in the API reference here
https://hyperledger.github.io/composer/latest/api/common-serializer
[ ](https://chat.hyperledger.org/channel/composer?msg=jvEinKCnkS2hQm2HS) @davidkel do you know why am I not able to make a callback?
@Smit95shah No sorry, never looked at JWT, you might want to contact the author of the tutorial you are following
@Smit95shah No sorry, never looked at JWT, you might want to contact the author of the tutorial you are following or you could create a stackoverflow with complete details of your setup and what you are trying to do to see if the community can help
Oh okay
how to calculate difference between date,time ,hours and minute by using epoch time
in hyperledger composer
@davidkel
Hi all, please i'm troubled about the difference between those (Hyperledger Composer rest-api) and (Hyperledger Composer node-skd) and ( Hyperledger Composer Client, Admin, and Runtime JavaScript APIs).
The *Runtime* api is available when running Transaction Processing Logic from logic script in the BNA.
The *Client* and *Admin* apis are available for nodejs applications
The *REST* api is available to any application that can make HTTP requests GET POST etc.
These docs should help:
https://hyperledger.github.io/composer/latest/api/api-doc-index
https://hyperledger.github.io/composer/latest/applications/applications-index
[ ](https://chat.hyperledger.org/channel/composer?msg=9gt4ArvBKvLzrgryc) @SumaGowda - Composer uses standard javascript datetime objects - so just use your normal javascript functions for date time.
[ ](https://chat.hyperledger.org/channel/composer?msg=xjKNMx9m4swYCNvit) @irkoch The *Runtime* api is available when running Transaction Processing Logic from logic script in the BNA.
The *Client* and *Admin* apis are available for nodejs applications
The *REST* api is available to any application that can make HTTP requests GET POST etc.
These docs should help:
https://hyperledger.github.io/composer/latest/api/api-doc-index
https://hyperledger.github.io/composer/latest/applications/applications-index
@rthatcher some of the javascript builtin functions are not taking.. example. getTime(), getMonth() in smartcontracts
[ ](https://chat.hyperledger.org/channel/composer?msg=SXBn4tpSYR8Mh3M8r) @SumaGowda - they both work fine on Composer v0.20, returning the expected results.
If you have a problem with your code I would suggest creating a Stack Overflow post, including the transaction logic script and the model file.
@rthatcher @davidkel @mahoney1 is there any way to connect to leveldb of peer and perform query directly on leveldb??
[ ](https://chat.hyperledger.org/channel/composer?msg=XWgw8Fa3jKdgLo4Hd) @rthatcher thunks :blush: i understood now. please i need to implement the passport-local strategy instead of github Oauth knowing that i'm using angular frontend and composer rest server to interact with the hyperledger business network, any help from you would be much appreciated
[ ](https://chat.hyperledger.org/channel/composer?msg=XWgw8Fa3jKdgLo4Hd) @rthatcher thunks :blush: i understood now. please i need to implement the passport-local strategy instead of github Oauth knowing that i'm using angular frontend and composer rest server to interact with the hyperledger business network, any help from you would be much appreciated
Has joined the channel.
Hello! I have noticed spelling mistakes in Hyperledger Composer documentation. Who should I contact in order to fix them?
@ShaikSharuk It's not possible to perform any type of rich query on leveldb. you can do range queries against leveldb (but you can't do that through composer), but those queries are across composite keys and not on the data those keys contain.
@ShaikSharuk It's not possible to perform any type of rich query on leveldb. you can do range queries against leveldb (but you can't do that through composer), and those queries are across composite keys and not on the data those keys contain.
@ShaikSharuk It's not possible to perform any type of rich query on leveldb. you can do range queries against leveldb (but you can't do that through composer, you would have to use the fabric-shim api's available from the getNativeAPI in TP functions), and those queries are across composite keys and not on the data those keys contain.
[ ](https://chat.hyperledger.org/channel/composer?msg=8foxma9JJBXdhpAFF) @davidkel Yeah , But I don't know the exact way of creating composite key , using putState and getStateByPartialCompositeKey .. can you please help me with any tutorial??
@ShaikSharuk discussion about fabric apis is not relevant for this channel as it isn't specific to composer. I would recommend reading the fabric documentation, for example the chaincode for developers section may be of help https://hyperledger-fabric.readthedocs.io/en/release-1.3/chaincode4ade.html plus review the fabric samples here https://github.com/hyperledger/fabric-samples
If you have further questions about fabric-shim apis, then the #fabric-chaincode-dev channel is a better place to ask about them
@ShaikSharuk I would recommend reading the fabric documentation, for example the chaincode for developers section may be of help https://hyperledger-fabric.readthedocs.io/en/release-1.3/chaincode4ade.html plus review the fabric samples here https://github.com/hyperledger/fabric-samples
If you have further questions about fabric-shim apis, then the #fabric-chaincode-dev channel is a better place to ask about them rather than here as it isn't specific to composer
[ ](https://chat.hyperledger.org/channel/composer?msg=7wNhjYpJoy2ap42F8) @NikolasDervenis feel free to submit a pull request or raise an issue describing 'what is' and 'what should be' in the doc you refer https://github.com/hyperledger/composer/issues
please how to fix Account approval process for hyperldger knowing that i have an app ( angular + hyperldger composer ), because any one can signup to my business network, how to fix that problem
@irkoch your question is an application architecture / flow issue - why can't the registrant be put into pending, subject to an application level approver who is notified of a registration - at which point (ie if approved), the participant / identity is created, to enable the registrant (following whatever the process for approval and subsequent access is) gain access to the business network.
@irkoch your question is an application architecture / flow issue - why can't the registrant be put into pending, subject to an application level account approver who is notified of a registration - at which point (ie if approved), the participant / identity is created, to enable the registrant (following whatever the process for approval and subsequent access is) gain access to the business network.
[ ](https://chat.hyperledger.org/channel/composer?msg=qRcx2rxMDr8Coopoy) @mahoney1 ok thanks
Has joined the channel.
Has joined the channel.
Is there any way to store issuer cards in the hyperledger server?
Has joined the channel.
I've been working on configuring hyperledger fabric network for months. My use case is Letter of Credit which has been hosted on composer sample. But in production! I would like to configure 6 organizations: Importer, Exporter, ImporterBank, ExporterBank, Carrier, Regulator. I've successfully configured the network on 9 physical machines (kafka ordering service). My question is: if an organization want to join to the network, it must invest: peer, ca, database, ordering (maybe). Is it too much? what if that organization want to join more than one network?
@davidkel I am not asking about the theory, but in an actual system, either made with Composer and deployed on Fabric or created by fabric directly, how does a node in vote-based system actually gives it's vote ? Is it just based on the information received without a person looking at it ?
[ ](https://chat.hyperledger.org/channel/composer?msg=T4podyPESco5dNWoZ) @Smit95shah There is good background information about Business Network Cards in the knowledge Wiki https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#bizcards
The Composer rest server running in Multiuser mode might help you with storing cards. https://hyperledger.github.io/composer/latest/integrating/integrating-index
[ ](https://chat.hyperledger.org/channel/composer?msg=AxpWKYLXQNyZBt6Nd) @pyraman I hope you have seen this announcement, and know that using Composer in production might be unwise:
https://lists.hyperledger.org/g/composer/message/125
Due to the nature and properties of Fabric it is necessarily complex with quite a few moving parts. If an organisation wants to join a network the Peer, Db, CA run in containers so initial setup does not have to be too great and of course these can be cheaply hosted by cloud providers, but there will be other components too to run applications that access the Fabric.
@mahoney1 How to see the transaction history of particular Order Asset?
@mahoney1 How to see the transaction history of particular Order Asset? I have tried this still not able to get history @rthatcher @mahoney1
@mahoney1 How to see the transaction history of particular Order Asset? I have tried this https://stackoverflow.com/questions/51783822/historian-for-a-particular-participant/51820465# still not able to get history @rthatcher @mahoney1
@rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=fYqyXfZxBNSPRf6tB) @rthatcher @rthatcher Unluckily I missed that message :(. I understand that we can utilize docker containers to reduce the complexity but in case we need to join thousand business network (one bank serves thousand of customers) that should be a big problem. do i have to setup thousand of peers? there must be another way for an organization to join a network without the need for configuring more server. As you pointed out, please clarify what are "other components too". I'm confused with this question :(
[ ](https://chat.hyperledger.org/channel/composer?msg=K6RqHkFANb6YrEbLF) @sureshtedla That Stack Overflow post is a good way to get the History of a particular asset/participant from the native Fabric.
If you want to work with Queries to get information from the Composer Historian, you could look at this information in the Knowledge Wiki which gets the information per transaction: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--historian-queries---common-asks
@pyraman - regarding "other components" - a user does not connect directly to a peer, a user connects to a Web frontend application which may connect to a backend application which will connect to the peer - so I was referring to these other server components.
You are correct, thousands of bank customers are not going to create peers etc for working with their bank. It is more likely that several banks will join a network and offer 'letter of credit' services to their customers and the end customer will connect to the Bank's peer (via other apps).
Have you seen this? - https://we-trade.com/
[ ](https://chat.hyperledger.org/channel/composer?msg=485gjbBkbYKCKAzTd) @rthatcher yes! I've customized Balance-Transfer sample to build back-end (the approach you pointed out) but I faced the problem with ACL. Accually I've hardcoded to check permission to call a function by checking its MSPID. This way may lead to big problem in case we add more and more organizations. That's why I move to Composer. Thank you for pointing out the message: https://lists.hyperledger.org/g/composer/message/125 but this is POC project so I will continue using it. Thanks for your support :)
[ ](https://chat.hyperledger.org/channel/composer?msg=KKJH2GXThAyKP6e2p) @rthatcher ok
error: assetRegistry.update is not a function. How to resolve this ?
@Daka Composer uses hyperledger fabric as the underlying DLT . So your question would be better asked on one of the fabric channels (try #fabric-questions ) as they can point you to how fabric works out of the box and how you could implement your own plugins to change the behaviour of fabric itself. Sorry but this channel is for composer specific questions and your question is definitely a fabric based question and more knowledgeable people will be on the other channels.
@Daka Composer uses hyperledger fabric as the underlying DLT so it will work with however that fabric is setup . So your question would be better asked on one of the fabric channels (try #fabric-questions ) as they can point you to how fabric works out of the box and how you could implement your own plugins to change the behaviour of fabric itself. Sorry but this channel is for composer specific questions and your question is definitely a fabric based question and more knowledgeable people will be on the other channels.
@Daka Composer uses hyperledger fabric as the underlying DLT so it will work with however that fabric is setup . So your question would be better asked on one of the fabric channels (try #fabric-questions ) as they can point you to how fabric works out of the box and how you could implement your own plugins to change the behaviour of fabric itself. Sorry but this channel is for composer specific questions and your question is definitely a fabric based question and more knowledgeable people will be on the other channels. But I recommend you review the hyperledger fabric documentation here https://hyperledger-fabric.readthedocs.io/en/release-1.3/ which will contain descriptions about how fabric will endorse transaction requests in various environments
@Daka Composer uses hyperledger fabric as the underlying DLT so it will work with however that fabric is setup . So your question would be better asked on one of the fabric channels (try #fabric-questions ) as they can point you to how fabric works out of the box and how you could implement your own plugins to change the behaviour of fabric itself. Of course you can also develop start contracts to achieve some desired behaviour as well. Sorry but this channel is for composer specific questions and your question is definitely a fabric based question and more knowledgeable people will be on the other channels. But I recommend you review the hyperledger fabric documentation here https://hyperledger-fabric.readthedocs.io/en/release-1.3/ which will contain descriptions about how fabric will endorse transaction requests in various environments
@Daka Composer uses hyperledger fabric as the underlying DLT so it will work with however that fabric is setup . So your question would be better asked on one of the fabric channels (try #fabric-questions ) as they can point you to how fabric works out of the box and how you could implement your own plugins to change the behaviour of fabric itself. Sorry but this channel is for composer specific questions and your question is definitely a fabric based question and more knowledgeable people will be on the other channels. But I recommend you review the hyperledger fabric documentation here https://hyperledger-fabric.readthedocs.io/en/release-1.3/ which will contain descriptions about how fabric will endorse transaction requests in various environments
@davidkel Thank you
@davidkel
pastedImage (1).png
pastedImage (1).png
pastedImage.png
pastedImage.png
I am unable to get history of particular Asset
I am unable to get history of particular Asset @davidkel
Hi, I have issuer.card file on my node js server and I have created a api to get the card. How can I send a blob to the client such that I can import card on to hyperledger.
Clipboard - January 4, 2019 11:22 PM
Hi, I want to store ledgers data into s3 bucket of AWS directly without storing in docker. Is it possible to achieve that.
[ ](https://chat.hyperledger.org/channel/composer?msg=a7n9qvq9aAiHQoTtY) @saikumar3349 I think this is a question for AWS (not a specific Hyperledger Composer question)- try this as a starting point: https://docs.aws.amazon.com/blockchain-templates/latest/developerguide/blockchain-templates-hyperledger.html
Question about queries. So I am getting data back like this:
$class "org.land.Deal"
DealID "Lb18fUyYD97yUgpbiUXKEjeWf7YbTA6dygKD2lFC"
Name "Sample Deal"
CreatedAt "2019-01-03T23:35:18.620Z"
Connected false
AllowedStates []
Owner "resource:org.land.User#testacc"
Documents
0 "resource:org.land.Document#vuppMb86WGNwIYWxKDb4JxB_lQukIkoIUABrwcP_"
What I'm wondering is, is it possible to make Composer also return that Document data in the same query?
Has joined the channel.
@how to give hyperledger fabric CORE_FILE_SYSTEM_PATH to aws s3 bucket .
@garunkumar450 Sorry this is not related to composer, please find another appropriate channel to ask this question. If it is related to open source fabric try a channel here, if it's related to AWS hyperledger provided service you need to find an appropriate forum provided by AWS
@garunkumar450 Sorry this is not related to composer, please find another appropriate channel to ask this question. If it is related to open source fabric try another channel on RC, if it's related to AWS hyperledger provided service you need to find an appropriate forum provided by AWS
Has left the channel.
Has joined the channel.
What is the difference between binding an identity vs issuing an identity? except the fact that binding requires certificate and issusing requires card as parameter.
I am getting an error that assetRegistry.update is not a fucntion while executing the following transaction:
/**
* Transaction function for read acess
* @param {org.example.empty.ReadAccess} tx the transaction instance.
* @transaction
*/
async function readAcess(tx){
let oldBool = tx.userdata.AllowRead;
tx.userdata.AllowRead = tx.allowRead;
let assetRegistry = getAssetRegistry('org.example.empty.userData');
await assetRegistry.update(tx.userdata);
}
what might be the error?
@SJoshi7 first u need to check that tx.userdata is there or not in the blockcain
@SJoshi7 first u need to check that tx.userdata is there or not in the blockcain let assetExists=await assetRegistry.exists(tx.userdata) if(assetExists){await assetRegistry.update()}else{assetRegistry.add()}
*@SJoshi7 first u need to check that tx.userdata is there or not in the blockcain let assetExists=await assetRegistry.exists(tx.userdata)
if(assetExists){
await assetRegistry.update()
}
else{
await assetRegistry.add()
}
how to give core_peer_filesystempath to s3 bucket url in docker_compose.yaml
how to give core_peer_filesystempath to s3 bucket url in docker_compose.yaml
@garunkumar450 Sorry you are asking in the wrong channel, this is for composer specific questions only please.
@garunkumar450 Sorry you are asking in the wrong channel, this is for composer specific questions only please. You are more likely to get fabric/AWS questions on more appropriate channels/forums
@garunkumar450 Sorry you are asking in the wrong channel, this is for composer specific questions only please. You are more likely to get answers to fabric/AWS questions on more appropriate channels/forums
@garunkumar450 Sorry you are asking in the wrong channel, this is for composer specific questions only please. You are more likely to get answers to fabric/AWS questions on more appropriate channels/forums where more experts hang out
@garunkumar450 Sorry you are asking in the wrong channel, this is for composer specific questions only please. You are more likely to get answers to fabric/AWS questions on more appropriate channels/forums where more experts hang out or you could try stackoverflow
@SJoshi7 you are missing an `await` when you call getAssetRegistry, try
```
let assetRegistry = await getAssetRegistry('org.example.empty.userData');
```
Has joined the channel.
Has joined the channel.
Hello, I am new here. I want to ask about composer installment on azure and aws
I installed composer on azure and AWS, and they seem to be able to see each other
on azure side, I can do composer install and composer ping, but when I make a card from playground at azure, and import it to AWS, I can't ping from AWS side.
Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Calling enrollment endpoint failed with error [Error: connect ETIMEDOUT 52.193.188.33:7054]
what should I do?
solved by opening port to be seen by himself
errr.png
e222.png
Hi , I am trying to set up multinode hypeledger fabric .. but facing below issue .. could you please help here
Error.png
Hello, Can I write a logic function/blocks of code in order to create invocation of a chaincode ? For example if I want to pass a shared resource (incrementing an int) to several participants, can I do that ?
Clipboard - January 7, 2019 3:39 PM
Clipboard - January 7, 2019 3:40 PM
https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-single-org
try this again
make sure that you will export the correct fabric version as well
@Daka I'm using composer 0.20, fabric 1.3, FABRIC_VERSION hlfv12
you could have some typo somewhere in creating the business card, that's why I sent you the tutorial, most of it is copy and paste and double check the connection and the path you provide as arguments
[ ](https://chat.hyperledger.org/channel/composer?msg=iE7TYaDxjijcqTfP3) @Ishee Is your Fabric Started?
"Error: 14 UNAVAILABLE" says says your REST server can't connect to the Fabric on the addresses/ports specified in the Business Network Card (specifically the connection.json file.) So eother the Fabric is not started or there is some networking problem.
thank you @Daka
[ ](https://chat.hyperledger.org/channel/composer?msg=4pA2YRmFWkDN8zEA4) @RakeshKumarzs These errors are ween when using Composer v0.20 and Fabric 1.1
You need to use Fabric v1.2.1 with Composer v0.20
[ ](https://chat.hyperledger.org/channel/composer?msg=ek8hxGjK8xbYbsvJN) @rthatcher the problem is with docker resolved it by restarting docker
Hi everyone,
Anchor peer is really required or not.
In my case, i have an orderer, peer(peer1) and ca in machine 1 and another peer(peer2) in machine 2(single organization).
@Sarath_Kumar Suggest you ask on another channel for example #fabric-peer-endorser-committer as this is a fabric question not a composer question
Has joined the channel.
hiii
how to connect multi node organization using hyperledger composer
we are able to make one to one peer communications
need help on multi node organization in single network
using Hyperledger Composer
Has joined the channel.
@nagaraju123 would check out the multi-org tutorial https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org and adding a 3rd org tutorial @ https://medium.com/@mahoney_33893/hyperledger-composer-adding-another-organization-to-an-existing-running-multi-organization-fff5c8104a82 for insights into the Composer steps (both are multi-node)
@mahoney1 this link is related to Hyperledger Fabric
rigth
right
can we create multi org structure in Hyperledger composer without using Hyperledger fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=bv9CPz8m4n7EcDu3F) @nagaraju123 no, because Hyperledger Composer is not designed for creating infrastructural components belonging to your org structure - that's Fabric's domain. Hyperledger Composer simplifies application development (as a development framework and tooling to develop apps) on top of the Hyperledger Fabric blockchain infrastructure. Suggest to read [this article](https://developer.ibm.com/articles/cl-blockchain-hyperledger-fabric-hyperledger-composer-compared/) to see a comparison
[ ](https://chat.hyperledger.org/channel/composer?msg=bv9CPz8m4n7EcDu3F) @nagaraju123 no, because Hyperledger Composer is not designed for creating infrastructural nodes belonging to your org structure - that's Fabric's domain. Hyperledger Composer simplifies application development (as a development framework and tooling to develop apps) on top of the Hyperledger Fabric blockchain infrastructure. Suggest to read [this article](https://developer.ibm.com/articles/cl-blockchain-hyperledger-fabric-hyperledger-composer-compared/) to see a comparison
Has joined the channel.
Hi guys someone please guide me through issue I am facing . I have deployed composer on Kubernetes using helm chart for composer and the issue is now when I am executing my composer pods its not connecting . Its giving error : roc error code = 2 desc = loci runtime error: exec failed :container linux.go :247 starting container process caused "exec :\bash\. executable file path not found .
Screen Shot 2019-01-06 at 5.05.24 PM.png
Hello guys, can we separate transactions for different identities in composer playground ??
[ ](https://chat.hyperledger.org/channel/composer?msg=xrwa5Pzsuw4A6unHk) @pikvik I don't think `bash` is available in the composer-cli container - have you tried starting/executing `/bin/sh` instead?
can you please elaborate on this as I installed composer cli using helm chart . Please enlighten how can or where I need to make changes
[ ](https://chat.hyperledger.org/channel/composer?msg=TrvChcscqoXFsW6ZA) @pikvik - Sorry I haven't seen helm charts for Composer - perhaps you can ask the supplier of the charts ?
Hello folks anyone worked with helm charts from AIDtech . Please assist me through
[ ](https://chat.hyperledger.org/channel/composer?msg=n35uwPcdPns2d8rn7) @SJoshi7 yes, create different identities (mapped to participants in the business network) - you'll see the invoker (participant) in 'All Transactions' in Playground, if you've executed trxns as different participants. The [ACL tutorial](https://hyperledger.github.io/composer/latest/tutorials/acl-trading) uses different identities (to test what each identity can see, may be useful reference).
[ ](https://chat.hyperledger.org/channel/composer?msg=n35uwPcdPns2d8rn7) @SJoshi7 yes, create different identities (mapped to participants in the business network) in the ID Registry (top right in Playground) - you'll see the invoker (participant) in 'All Transactions' in Playground, if you've executed trxns as different participants. The [ACL tutorial](https://hyperledger.github.io/composer/latest/tutorials/acl-trading) uses different identities (to test what each identity can see, may be useful reference).
[ ](https://chat.hyperledger.org/channel/composer?msg=gDsPowKXwXduA3fiz) @mahoney1 I did the same. I am able to see who did the transaction under "All transaction" section but what i wish to attain is that the participant should only see the tx created by him and nothing else.
is it possible ?
@SJoshi7 see rule 3 in the [tutorial link](https://hyperledger.github.io/composer/latest/tutorials/acl-trading) I sent you earlier.
@SJoshi7 see rule 3 in the [tutorial link](https://hyperledger.github.io/composer/latest/tutorials/acl-trading) I sent you earlier (for an example)
[ ](https://chat.hyperledger.org/channel/composer?msg=bWwk2duvyozknMP4K) @mahoney1 Got it :) Thank you so much :)
hello guys I want to change fabric from my local fabric to one deployed on k8s . Please help me with where I need to change . I am getting the msg : Hyperledger Composer PeerAdmin card has been imported, host of fabric specified as 'localhost'
@rthatcher i am using composer rest api with github authentication here when i try to logout application is logged out and github won't be logged out? can you give solution for that
[ ](https://chat.hyperledger.org/channel/composer?msg=CGRky8czgz9KzH2YX) @pikvik From the message I assume you are using the script `createPeerAdminCard.sh` - the card created by that script `PeerAdmin@hlfv1` is created using the crypto material from the `fabric-dev-servers` and creates a connection.json file the simple development fabric running in local docker containers.
I had a quick check on google and I think the Fabric you are setting up will have different crypto material, and is a more complex Fabric than the standard Development Fabric, so the "default" peeradmin card will not apply.
I would suggest that you look at the MultiOrg tutorial which goes through the process of creating a connection.json and admin card and then you should be able to create your own based on the specifics of your Fabric and the k8s environment you are running. https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Hello all, I have a question here. Can I listen to event from composer-client api code despite my composer rest server disabled ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ZGFvz8CWh7ELJPd7R) @packkkkk yes, Node.js applications can subscribe to events from a business network by using the composer-client.BusinessNetworkConnection.on API call - see the docs https://hyperledger.github.io/composer/latest/applications/subscribing-to-events.html and the answer (example) @ https://stackoverflow.com/questions/51526505/how-to-listen-to-events-on-composer
@mahoney1 I've followed the tut and nothing happens
I have defined an event and emitted it in the logic
Clipboard - January 7, 2019 8:56 PM
I've tested with composer-playground but I saw nothing.
@packkkkk the links I sent, are just using a composer `emit` - you're using socket.io lib or similar
Clipboard - January 7, 2019 2:34 PM
Clipboard - January 7, 2019 9:37 PM
@mahoney1 I have an event here but my nodejs backend got nothing.
@packkkkk try
```
businessNetworkConnection.on('event', evt => {
console.log(evt);
});
```
[ ](https://chat.hyperledger.org/channel/composer?msg=xgjCuNghfxLHADzPT) @rthatcher @rthatcher Thanks . would take a look into multi org then .
Clipboard - January 7, 2019 9:45 PM
@davidkel Can I use serializer to format it to JSON object
@packkkkk `getSerializer()` https://hyperledger.github.io/composer/latest/api/common-businessnetworkdefinition#getserializer
Has joined the channel.
Hello, I am finding it hard to familiarise myself with the modeling language of composer, do you have any resource to propose other than the documentation? Thanks
Hello, I am finding it hard to familiarise myself with the modeling language of composer, do you have any resource to propose other than the official documentation? Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=mqx5MmXfeBb2McpRP) @gioannou983 official page is https://hyperledger.github.io/composer/latest/reference/cto_language there's other resources too like https://developer.ibm.com/tutorials/cl-model-test-your-blockchain-network-with-hyperledger-composer-playground/ or youtube? https://www.youtube.com/watch?v=m34wOG5yjyE or the [sample networks](https://github.com/hyperledger/composer-sample-networks/tree/master/packages) (each has a model file directory, and sample business network use case, using the model
[ ](https://chat.hyperledger.org/channel/composer?msg=mqx5MmXfeBb2McpRP) @gioannou983 official page is https://hyperledger.github.io/composer/latest/reference/cto_language there's other resources too like https://developer.ibm.com/tutorials/cl-model-test-your-blockchain-network-with-hyperledger-composer-playground/ or youtube? https://www.youtube.com/watch?v=m34wOG5yjyE or the [sample networks](https://github.com/hyperledger/composer-sample-networks/tree/master/packages) (each has a model file directory, and sample business network use case, using the model to understand what's implemented)
Thanks @mahoney1, I've already looked at those but they just didn't work for me.
How to manage documents on Private HL Blockchain? Any suggestion?
any example on Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations)
sample code with explanation is very useful for me
i am new to Hyperledger
[ ](https://chat.hyperledger.org/channel/composer?msg=NDuYCTmsbt8qTXGtj) Check out this @nagaraju123
https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
i am not able to get this
can u send any medium link
it is very help ful me
to understand
[ ](https://chat.hyperledger.org/channel/composer?msg=dPZY2hJuzY59Qf2Wk) https://medium.com/quillhash/script-to-set-up-hyperledger-fabric-composer-multi-organization-network-96bc5f7ed2f5
hi, it need fabric-nodeenv image to deploy release-1.4 fabric network. from which project can i build this docker image?
Hyperledger composer will end support???
What should people use if not using this?
When we work with bna files and composer network, where does orderer, endorsement policy and peers comes in picture ?
Capture.PNG
Capture.PNG
[ ](https://chat.hyperledger.org/channel/composer?msg=R5do7GprqgAwBnRAb) @nagaraju123 you have only access to create a new transaction not to update a transaction
[ ](https://chat.hyperledger.org/channel/composer?msg=R5do7GprqgAwBnRAb) @nagaraju123 you have only access to create a new transaction not to update an existing transaction
while creating only
i am getting this issue
@Sarath_Kumar while Submit Transaction i am getting this issue
[ ](https://chat.hyperledger.org/channel/composer?msg=83FHb6rY3WzNKxEBp) @nagaraju123 you might be having the CREATE access for transaction but you are lacking the UPDATE access for those assets.
[ ](https://chat.hyperledger.org/channel/composer?msg=b6aZpuxtQKuKNM6M5) @nagaraju123 like your resource in this case is SampleTransaction and you can create ... but similary you will need to write a rule to allow UPDATE where resource will be that Asset
[ ](https://chat.hyperledger.org/channel/composer?msg=zHg89rvhw6yLR728i) @SJoshi7 the orderer and peers are the components of a hyperledger fabric network. You can deploy a business network onto a channel defined in a hyperledger composer network. Endorsement policies are a hyperledger fabric concept. Information about hyperledger fabric architecture can be found here https://hyperledger-fabric.readthedocs.io/en/release-1.3/architecture.html
[ ](https://chat.hyperledger.org/channel/composer?msg=4y9TAeXbrXB77kmob) @davidkel okay, So it means that when we work with composer, it doesn't involce the concept ofpeers, endorsers, ordrers and all?
[ ](https://chat.hyperledger.org/channel/composer?msg=JkQzynHiotkcsLr4K) @PhilipAndrew you should take a look at the new programming models coming in hyperledger fabric 1.4. Take a look at https://hyperledger-fabric.readthedocs.io/en/master/tutorial/commercial_paper.html as well as the https://hyperledger-fabric.readthedocs.io/en/latest/developapps/developing_applications.html section which should give a good idea of both smart contract and client side development
so the logic.js file in composer network is what equals to chaincode in fabric. right?
@SJoshi7 Yes, although it is only a small part of the chaincode as that code is augmented with the composer runtime which provides the necessary capability to drive those transaction processor functions
[ ](https://chat.hyperledger.org/channel/composer?msg=bCuppq3sPRgeSaxz4) @davidkel do you mean the other features like the query, acl and all ?
@SJoshi7 the runtime provides those facilities
[ ](https://chat.hyperledger.org/channel/composer?msg=fj4R8GrnwcdufPuxk) @davidkel Now i get it :) Thank you so much man !!
how to do an authentication for generated angular application to access the network
how to give user specific roles i.e; i just want to give only read operation to one user and write operation to another user
how should i configure my ACL
@nagaraju123 There is an ACL tutorial which might help you determine what you need for your own specific requirements here https://hyperledger.github.io/composer/latest/tutorials/acl-trading
@nagaraju123 There is an ACL tutorial which might help you determine what you need for your own specific requirements here https://hyperledger.github.io/composer/latest/tutorials/acl-trading. The generated angular application is only a simple starter application, it is expected that you will then take this sample and extend it yourself to meet your requirements such as authentication. How you do that will depend on your own requirements as well as whatever authentication you have enabled on the rest server
how to get the credentials of Participant
@nagaraju123 see examples in the docs https://hyperledger.github.io/composer/latest/business-network/programmatic-access-control
can we use data inside transaction for querying the historian record?
Has joined the channel.
Hi all,
Can anyone tell me how to add authentication to couchDB used by fabric, Thanks in advance.
is this true that composer support and composer playground links are going to shutdown in the next two months ? heard this from somewhere
I guess the links aren't shutting down, they will not be working to upgrade it anymore right no. they will be focusing on fabric more.
[ ](https://chat.hyperledger.org/channel/composer?msg=L2WkMfvoh4Gg4DXfW) @SJoshi7 okay thanks
@mallikarjunasai995 - this 'announcement' best explains the situation: https://lists.hyperledger.org/g/composer/message/125
@mallikarjunasai995 - this 'announcement' best explains the situation: https://lists.hyperledger.org/g/composer/message/125
There are details here about Fabric 1.4 release candidate and the new programming model for Node SDK:
https://lists.hyperledger.org/g/fabric/topic/announcement_hyperledger/28735908
[ ](https://chat.hyperledger.org/channel/composer?msg=AxbAytPYDZMeLojnD) @rthatcher thanks @rthatcher
when i am starting the business network , am getting the below error can anyone help me with this :
tarting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to connect to any peer event hubs. It is required that at least 1 event hub has been connected to receive the commit event
after running the below command :
composer network start --networkName tutorial-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
i have followed the composer knowledge chart also but this issue i have not seen
[ ](https://chat.hyperledger.org/channel/composer?msg=WLjmCGQHM6vmfugmk) @mallikarjunasai995 What version of Composer, and what version of Fabric do you have ?
[ ](https://chat.hyperledger.org/channel/composer?msg=uDcTeRRFxxvR4RnmQ) @rthatcher composer version -- 0.20.5 and fabric version -- 1.2.1
https://stackoverflow.com/questions/53209032/hyperledger-composer-command-composer-network-start-failing
am also getting the same error eventhough error mismatch is not there
A few more questions:
Are you using the 'fabric-dev-servers' to create and start the Fabric?
Have you upgraded from an older version, or is this a new install?
Did `composer network install` complete successfully?
[ ](https://chat.hyperledger.org/channel/composer?msg=cSwqqDi4y95qTZM8v) am i using the correct versions to run the network ?
@mallikarjunasai995 - yes v0.20.5 and fabric 1.2.1 are good
okay actually am restarting the network with bna file version 0.0.2 ..... have to see what will happen ..... :)
[ ](https://chat.hyperledger.org/channel/composer?msg=JEXxhbSPrX2rBKmji) @rthatcher fabric-dev-servers -- how to check whether am using those servers are not
upgraded --- composer is a new install and fabric version i have already there
composer network install -- yes , its show command succeeded then i thought i have installed correctly this step .....
Hello everyone. I have a doubt concerning the access of the end user applications to the peers of a blockchain network. Following the documentation of the Hyperledger Fabric, I noticed that an application is connected to a peer via credentials that is issued to the end users that want to update or query registers on the ledger of the peer. My question is: how many end users could be connected to a peer? Is it one user per peer?
@danilojodas sorry this is the wrong channel for fabric questions, please try #fabric-questions
[ ](https://chat.hyperledger.org/channel/composer?msg=ZyJF2sLvQCugeuqXv) hi now able to start the composer network but not able to did the below one :
Error: EACCES: permission denied, rmdir 'build'
gyp ERR! stack at Error (native)
gyp ERR! System Linux 4.15.0-43-generic
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/lib/node_modules/composer-rest-server/node_modules/pkcs11js
gyp ERR! node -v v6.15.1
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
npm ERR! Linux 4.15.0-43-generic
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "rebuild" "--unsafe-prem"
npm ERR! node v6.15.1
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! pkcs11js@1.0.17 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the pkcs11js@1.0.17 install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the pkcs11js package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs pkcs11js
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls pkcs11js
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /usr/lib/node_modules/composer-rest-server/node_modules/npm-debug.log
Has joined the channel.
Hey guys. When executing `composer identity issue ...` I get the following Error:
`Error: fabric-ca request register failed with errors [[{"code":0,"message":"Registration of 'test' failed in affiliation validation: Failed getting affiliation 'org1': : scode: 404, code: 63, msg: Failed to get Affiliation: sql: no rows in result set"}]]`
Any ideas? I dont have org1 anywhere in my crypto config...
@deelthor are you using your own custom fabric ? have you customised fabric-ca-server for example ?
Hello everyone, I am trying to set up a custom fabric, pretty basic 4 nodes one organisation. I have adapted the first-network sample scripts and all the dockers are loading and sample chaincode executing fine. When getting to network install stage i am either getting the error: failed to connect before deadline; or error: 14 unavailable. The network is definitely up, all the docker logs seem fine. I am using Ubuntu 16, Fabric 1.2.1, composer 0.20.5. I have j
Hello everyone, I am trying to set up a custom fabric, pretty basic 4 nodes one organisation. I have adapted the first-network sample scripts and all the dockers are loading and sample chaincode executing fine. When getting to network install stage i am either getting the error: failed to connect before deadline; or error: 14 unavailable. The network is definitely up, all the docker logs seem fine. I am using Ubuntu 16, Fabric 1.2.1, composer 0.20.5. I have looked over the connection.json many times and cant see any problems. When i do the multi org tutorial everything works no problems. Does anyone possibly have any ideas where i may be going wrong as i have spent a long time trying to get this set up. Many thanks.
I am experiencing a silent disconnect when my application is subscribing to the events emitted by the network when following the sample code:
```
businessNetworkConnection.on('event', (event) => {
// event: { "$class": "org.namespace.BasicEvent", "eventId": "0000-0000-0000-000000#0" }
console.log(event);
});
```
Is there any way to know when this connection has closed so I can restart it?
@vanclief what version of composer ?
`composer-client: 0.20.2`
@vanclief you might want to try a newer version such as 0.20.5 as there is a new event handling mechanism which may be better, but there is no way to determine if the chaincode event listener has been lost.
@vanclief you might want to try a newer version such as 0.20.5 as there is a new event handling mechanism which may be better, but there is no way to determine if the chaincode event listener has been lost. The new version should do a much better job of ensuring there is a chaincode listener if possible.
So the best aproach would be to manually disconnect and reconnect every X period? And does the 0.20.5 version require an upgrade in the fabric version?
Thanks @davidkel !
@vanclief no you can upgrade the client to 0.20.5 and keep the same level of runtime version for your business network. You shouldn't need to disconnect/reconnect the new implementation should be far more robust. However you should also investigate why it suddenly disconnects as that shouldn't happen. Is it only the chaincode events or do you experience problems sending requests on that business network connection ? I assume you don't use a business network connection purely for listening for events, only in that scenario will the new implementation not be so robust.
Cool, will upgrade and see how it performs. I don't understand why it is disconnecting, it only happens for the chaincode events, there are no problems sending requests. What I find interesting is that it always happens between 5 and 15 minutes after the connection was established
Hi Team,
i have generated the rest api server and angular generator for my use case and suddently it got rebooted so now am starting the app from the first step in the developer tutorial
but i want to start the app from where i left off even after rebooting ....... how can that be done
?>
I have 3 identities in my composer network. Lets say those are : Main, ORG1 and ORG2. Now I have a transaction which is done by Main and in one of its attributes it either has ORG1 or ORG2. Now in the 'all transaction' section for ORG1 and ORG2 I only want to show those tx to ORG1 which had ORG1 in it and same for ORG2. How can I achieve it ?
After creating Orderers , Peers and Organizations from command prompt
how we can enter into the hyperledger fabric network
Has joined the channel.
@vanclief you might be hitting an issue where your network terminates idle connections. Have a look at https://stackoverflow.com/questions/53864854/cannot-take-data-on-hyperledger-composer-rest-server-after-a-few-minutes-timeou and try the grpcOptions definitions for peers/orderers in the connection profile to see if that helps
@nagaraju123 Sorry, this question isn't specific to hyperledger composer. Any questions about hyperledger fabric should be directed to a more appropriate channel.
@nagaraju123 Sorry, this question isn't specific to hyperledger composer. Any questions about hyperledger fabric should be directed to a more appropriate channel, maybe #fabric-questions
@SJoshi7 have you gone through the ACL tutorial https://hyperledger.github.io/composer/latest/tutorials/acl-trading ? Hopefully it will help you understand the capabilities of ACLs so you can work out what you need to achieve your specific requirement
[ ](https://chat.hyperledger.org/channel/composer?msg=zE5pD5hDm7XmkMbto) @davidkel I have gone through the ACL. Actually my question is somewhat more related to the Historian Record.
@SJoshi7 Not an answer to your question but somethings to consider. Playground is only meant to be used as an simple development tool to get started with, not as an end user application or multiuser environment. I would recommend not making use of historian because there is no equivalent in the new fabric programming model which is what we are recommending people should now use especially if beginning with composer. If you do then when you come to port your application off of composer you will have to provide your own implementation of a historian.
@SJoshi7 Not an answer to your question but somethings to consider. Playground is only meant to be used as an simple development tool to get started with, not as an end user application or multiuser environment. I would recommend not making use of historian because there is no equivalent in the new fabric programming model which is what we are recommending people should now use especially if beginning with composer. If you do then when you come to port your application off of composer you will have to provide your own implementation of a historian. The same argument also applies to ACLs
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=kAgph7RZbSQXmfcef) @davidkel I dont have anything custom. Using Composer 0.20 and Fabric 1.3.0
@deelthor Where did you get the fabric 1.3 setup from ?
I used the Helm Charts , e.g. https://github.com/helm/charts/tree/master/stable/hlf-peer and I think they are using the official Docker Images
@deelthor ok, well all I can suggest is that this setup doesn't have the `org1` affiliation defined in the fabric-ca and if you don't provide the affiliation name then composer will default to `org1`. Take a look at https://hyperledger.github.io/composer/latest/managing/connector-information under `Identity Issue` to see how to specify a different affiliation. Unfortunately for your setup I don't know what affiliations might exist so you will need to determine that yourself
Thanks a lot @davidkel !
I also came across the the issues that there is a major bug when using Composer 0.20 in conjunction with Fabric 1.2.0 . Do you have a reference or link to the corresponding Fabric issue?
@mallikarjunasai995 To resume your Fabric containers to state before reboot - see 1st answer in https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data . For the app : navigate to your generated angular project directory and run `npm start` (after previously starting your REST server instance to connect to the business network, as before).
@deelthor I don't have a link to the jira, but it is fixed in fabric 1.2.1 you should be using that version of 1.2 fabric
@deelthor I don't have a link to the jira, but it is fixed in fabric 1.2.1 you should be using that version of 1.2 fabric if you use 1.2
Any documentation you can suggest on adding additional peers and channels with hyperledger composer?
Has joined the channel.
@ChamathK see the Hyperledger Fabric documentation; Composer is used to build and deploy business networks (chaincodes) to a Fabric network - Composer is not responsible for building or operating the Fabric network
https://hyperledger-fabric.readthedocs.io/en/release-1.3/tutorials.html (Building Your First Network) is a good starting place
Composer includes a sample Fabric network for developers to use in *getting started*, it should not be extended or used for anything more than that
@sstone1 I have one query please help:
I have 3 identities in my composer network. Lets say those are : Main, ORG1 and ORG2. Now I have a transaction which is done by Main and in one of its attributes it either has ORG1 or ORG2. Now in the 'all transaction' section for ORG1 and ORG2 I only want to show those tx to ORG1 which had ORG1 in it and same for ORG2. How can I achieve it ?
you need to write ACL rules in your permissions.acl file that only allow the ORGx participants to view transactions that ORGx has participated in
The historian record only provided with the invoking identity but I am unable to find anything that can be used to write rules on the basis of data inside the transaction.
[ ](https://chat.hyperledger.org/channel/composer?msg=DGqsiyPsspheXLS5R) @sstone1 The historian record only provided with the invoking identity but I am unable to find anything that can be used to write rules on the basis of data inside the transaction.
I am able to filter out on the basis of who invoked the transaction but what I want to achieve is to filter on the basis of an attribute vale provided during creating transaction.
Has joined the channel.
Hi Guys, I am looking for a reasonable source code base to begin my project with (a simply PoC), but specifically using a base that is more viaually stimulating that th automatically generated Angular code (being a PoC I want it to be visually appealing, but not have to spend days on layouts etc as my skill is not in frontend dev)
visually stimulating ;)
I found something a while back in a video but now cant remember which example it is - I think it is one of the composer samples, just not sure which one ?
Also, anyone using VueJS much and have any idea if there is a generator planned or being worked on for Vue ?
@SJoshi7 the historian record has a relationship to the transaction called `transactionInvoked`
you should be able to write an ACL condition along the lines of `record.transactionInvoked.buyer`
[ ](https://chat.hyperledger.org/channel/composer?msg=2JfrshT2esLYcNx5N) @sstone1 Okay ! Thanks a lot :) Will try this one out :)
@grantv you can check out the Composer sample applications if you wish https://github.com/hyperledger/composer-sample-applications/tree/master/packages
Going through them but short of running each and checking I cant seem to find just a set of screenshots to know which one is the one I am looking for lol - was
annoying when the internet has exactly what you want, but you just cant remember where you last found it lol
probably the vehicle manufacturing one
Think so as well
Otherwise, any other recommendations for scaffolding from the rest interface, any other viable Yo generators of a similar nature ?
any web app yo generator should be fine - you'll just have to figure out how to make the REST calls to the Composer REST server yourself
@sstone1 I have two ecosystem with ids 7758 and 4027. I want the the transaction to be separated by it. I have written the following ACL as follows:
rule EcosystemSeeDataUsed {
description: "Ecosystem should be able to see whenever their data is used"
participant(t): "org.example.empty.Ecosystem"
operation: READ
resource(v): "org.hyperledger.composer.system.HistorianRecord"
condition: (v.transactionInvoked.Ecosystem.getIdentifier() == t.getIdentifier())
action: ALLOW
}
Has joined the channel.
hi there. is it possible/does it make sense to run hyperledger cello alongside hyperledger composer for a project built on top of hyperledger fabric? (as in: using cello to deploy/manage the lifecycle of the blockchain network and using hyperledger composer to define the business logic/assets etc.)
@rthatcher @sstone1 there is no single article about how to setup authentication of rest server other than the github authentication. Pls publish one article so that it will be helpful to us.
Has joined the channel.
hi everyone, I would like to know if it is anyone using a .bna developed with Composer in a production environment. After the recent announcements I wish to know if I should just be focusing on Fabric for B2B applications
@ShaikSharuk There are no plans to update the official composer documentation now. Your best bet is to see if any of the composer users out there have published articles or are willing to share their experiences.
@millengustavo It's highly recommended that if you are just starting out or haven't made to many in-roads using composer then you should focus you efforts on fabric 1.4 and the new node.js programming models in 1.4. 1.4 release is imminent and is expected to be made available this week. There are already release candidates you can use to get started now
@millengustavo It's highly recommended that if you are just starting out or haven't made to many in-roads using composer then you should focus your efforts on fabric 1.4 and the new node.js programming models in 1.4. 1.4 release is imminent and is expected to be made available this week. There are already release candidates you can use to get started now
[ ](https://chat.hyperledger.org/channel/composer?msg=4v638Z9wSpg3QpL2p) @davidkel I have architetured an application using composer, played with playground, made a frontend in react connecting to the composer-rest-server APIs, even used token authentication with github and google to connect to the composer-rest-server. Now I'm wondering the best way to proceed since I believe that this setup is not sufficient to be able to deploy in a multi org fashion for production. Is it possible to use the same modelling language and javascript for contract logic as I used? I am learning Golang as well, would it be very different to program the same I did with the modeling files in Golang?
@millengustavo There is no modelling language in the 1.4 programming model, your TP functions will be calling composer specific APIs and it is possible to port that logic and retain existing data, there isn't the concept of Historian or ACLs in the 1.4 programming model. If you want access control then you need to look at fabrics attribute based access control and the client identity library. If you are interested in getting the history of an asset then you can use the getHistoryForKey capability
From what I've read, to program ACL in chaincode I will be verifying the user role directly in each transaction function right? The more I learn about golang the more I want to start this migration directly to Go chaincode. Is JavaScript already first class citizen in fabric or should I stick with Go despite the pains of re programming?
[ ](https://chat.hyperledger.org/channel/composer?msg=dwunQLXQPWTPm6Acp) @ShaikSharuk There is the tutorial using Google OAUTH2 - https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
And some other examples on the web, such as - https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
@millengustavo javascript and typescript are first class citizens
[ ](https://chat.hyperledger.org/channel/composer?msg=HNatmnokNAH4CurS5) @davidkel Just for clarification: I will need to change my logic.js contracts to check for user role and other stuff there used to be on the modelling language files, right?
@millengustavo you will need to implement your own concept of access control if that's what you were asking
Ok, makes sense. Since I will need to refactor a lot, I think I will program these in Go. thx david
Hi everyone. Is it possible to share some information of the user’s identity or card to other users, like a public key of that user? If yes, I think it is possible to share the information of the user who signed a document, for instance
@danilojodas possible yes, if that's what you want to do - see programmatic example in [the docs](https://hyperledger.github.io/composer/latest/business-network/programmatic-access-control) - you can match (or hash of same) with the signature in your cloud store or whatever
Has joined the channel.
@mahoney1 thank you so much. I will check the documentation
Has joined the channel.
what does the difference between domain name in hyperledger fabric and namespace in hyperledger composer ?
everytime am running the composer network with my custom namepsace
"org.mallikarjuna" but still while running the application am gettting the namespace as "org.example.mynetwork" only
why is the same namepsace coming eventhough i defined my custom namespace here
Has joined the channel.
@rthatcher I am using fabric for storing millions of records using couchdb , are there any ways to reduce the disk space required for this?
I am new in Hyperledger. What is difference between "Hyperledger composer" and "Hyperledger Fabric"? Is it like language and framework ?
@harun Hyperledger composer is a framework and set of tools providing a domain specific concept around digital assets and participants through business networks. It doesn't provide or implement a blockchain but will utilise hyperledger fabric as the underlying DLT (distributed ledger technology) to provide these capabilities. More information on hyperledger composer can be found here https://hyperledger.github.io/composer/latest/introduction/introduction.html
@harun Hyperledger composer is a framework and set of tools providing a domain specific concept around digital assets and participants through business networks. It doesn't provide or implement a blockchain but will utilise hyperledger fabric as the underlying DLT (distributed ledger technology) to provide these capabilities.
@davidkel thanks
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=DKg7zxg3hd5wRsRxa) @mallikarjunasai995 they're entirely separate concepts - probably best to read [more about namespaces](https://developer.ibm.com/tutorials/cl-model-test-your-blockchain-network-with-hyperledger-composer-playground/) in this article - its a scope for the resources you create in your business network (a smart contract entity that can be used by multiple orgs). The Fabric domain entity is for one organization participating in the overall blockchain network (again think multi-org) - see more https://hyperledger-fabric.readthedocs.io/en/release-1.3/build_network.html finally read this [stack overflow](https://stackoverflow.com/questions/45505333/difference-between-hyperledger-composer-and-hyperledger-fabric) to compare Fabric and Composer
[ ](https://chat.hyperledger.org/channel/composer?msg=DKg7zxg3hd5wRsRxa) @mallikarjunasai995 they're entirely separate concepts - probably best to read more about namespaces [in this article](https://developer.ibm.com/tutorials/cl-model-test-your-blockchain-network-with-hyperledger-composer-playground) - its a scope for the resources you create in your business network (a smart contract entity that can be used by multiple orgs). The Fabric domain entity is for one organization participating in the overall blockchain network (again think multi-org) - see more https://hyperledger-fabric.readthedocs.io/en/release-1.3/build_network.html finally read this [stack overflow](https://stackoverflow.com/questions/45505333/difference-between-hyperledger-composer-and-hyperledger-fabric) to compare Fabric and Composer
[ ](https://chat.hyperledger.org/channel/composer?msg=DKg7zxg3hd5wRsRxa) @mallikarjunasai995 they're entirely separate concepts - probably best to read more about namespaces [in this article](https://developer.ibm.com/tutorials/cl-model-test-your-blockchain-network-with-hyperledger-composer-playground) - its a scope for the resources you create in your business network (a smart contract entity that can be used by multiple orgs). The Fabric domain entity is for one organization participating in the overall blockchain network (again think multi-org) - see more https://hyperledger-fabric.readthedocs.io/en/release-1.3/build_network.html finally read this [stack overflow](https://stackoverflow.com/questions/45505333/difference-between-hyperledger-composer-and-hyperledger-fabric) to compare Fabric and Composer. Presumably you upgrade your business network (installed and [upgraded](https://hyperledger.github.io/composer/v0.19/reference/composer.network.upgrade.html) )
[ ](https://chat.hyperledger.org/channel/composer?msg=QcKyAcGbCdxWz2h26) @sushmitha Are you using native Fabric or Composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=kB7kNkfLEKWkpLBsB) @rthatcher I am using composer
@sushmitha - a few thoughts:
1. "millions of records" seems to take Composer beyond a pilot or Proof of Concept. I assume you have seen the announcement about Composer - https://lists.hyperledger.org/g/composer/message/125 For this reason, Composer is not recommended for Production implementation. Developers are encouraged to move to the New Programming model available in native Fabric v1.4 https://hyperledger-fabric.readthedocs.io/en/latest/whatsnew.html
2. Native Fabric will use less diskspace than Composer.
3. Make sure you don't have redundancy/duplication in your data ('Normalise' the data in Relational Database terms)
4. Ensure you are not storing File Attachments in the Fabric
@rthatcher can i have any sample project which is developed on Hyperledger Fabric to understand the development part
i am new to Hyperledger
In transaction named Payment Have Invoice Number,when the Payment transaction is completed Order status should change to Payment Completed, but in payment tx i don't have Order reference i need to get Order Number from Invoice Number How to do this?
In transaction named Payment Have Invoice Number,when the Payment transaction is completed Order status should change to Payment Completed, but in payment tx i don't have Order reference i need to get Order Number from Invoice Number How to do this? @rthatcher
In transaction named Payment Have Invoice Number,when the Payment transaction is completed Order status should change to Payment Completed, but in payment tx i don't have Order reference i need to get Order Number from Invoice Number How to do this? @rthatcher .
@sureshtedla can i have any sample project which is developed on Hyperledger Fabric to understand the development part
i am new to Hyperledger
[ ](https://chat.hyperledger.org/channel/composer?msg=M9poneDXyWQXENke3) @nagaraju123 @nagaraju123 https://github.com/4eyes/hyperledger-fabric-composer-snack-shop
how to add Peers into Network from UI
[ ](https://chat.hyperledger.org/channel/composer?msg=zH3AHtJseMRu4ZL9L) @nagaraju123 try Cello Services
[ ](https://chat.hyperledger.org/channel/composer?msg=M9poneDXyWQXENke3) @nagaraju123 If you are new to Fabric I would recommend that you don't start with Composer - see the chat a few minutes ago :-)
There are samples in Fabric, with Tutorials: https://hyperledger-fabric.readthedocs.io/en/latest/tutorials.html
and a really good long detailed read "Developing Applications" - https://hyperledger-fabric.readthedocs.io/en/latest/developapps/developing_applications.html
how to access/authenticate the network with generated or enrolled certificate for a peer
should we provide any login like username and password
[ ](https://chat.hyperledger.org/channel/composer?msg=CsDFqpjN4yPcvdEEG) @nagaraju123 @rthatcher
In transaction named Payment Have Invoice Number,when the Payment transaction is completed Order status should change to Payment Completed, but in payment tx i don't have Order reference i need to get Order Number from Invoice Number How to do this? @rthatcher
@rthatcher In transaction named Payment Have Invoice Number,when the Payment transaction is completed Order status should change to Payment Completed, but in payment tx i don't have Order reference i need to get Order Number from Invoice Number How to do this? @rthatcher .
@rthatcher In transaction named Payment Have Invoice Number,when the Payment transaction is completed Order status should change to Payment Completed, but in payment tx i don't have Order reference i need to get Order Number from Invoice Number How to do this? @rthatcher .
@nagaraju123 see full tutorial of accessing a business network via REST server in multi-user mode with requisite authentication - https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest - Also there is a tutorial on developing multi-user apps (angular sample) with instructions here -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
@nagaraju123 see full tutorial for accessing a business network via REST server in multi-user mode with requisite authentication - https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest - Also there is a tutorial on developing multi-user apps (angular sample) with instructions here -> https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
@sureshtedla get the Invoice, to get the order number, then update the order that you can `get` by id - suggest to check Stack Overflow - there are examples in the sample networks or on Stack overflow
Hey guys! What is the default Endorsement Policy if I don't specify one during business network installation?
@deelthor It will be the default fabric endorsement policy. I thought they used to document the default policy somewhere in the fabric documentation so you should search the fabric documentation for that information
[ ](https://chat.hyperledger.org/channel/composer?msg=HysTCyZ535CScGRwQ) @davidkel Thanks a lot!
Is there any equivalent "composer-rest-server" for Hyperledger Fabric or do I need to program my own APIs manually?
@millengustavo currently you need to program your own REST APIs manually
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=QdiaiR5LuCuX5aHbo) @mahoney1 yes very much thanks ... but when am generating a composer application rest server with namespace org.bordereau with settings "namespaces used" but when i explored the rest server in borwser the name space it is showing default name org.myexample.network even though i changed to org.bordereau when asked for what namespace we have to use
why is it happening?
@mallikarjunasai995 suggest to close your REST Server, and explorer in browser - then restart REST server and when prompted select 'never use namespaces' - it will discover the business network, namespace etc that you say you have running. As for your app, suggest to delete the old directory (with old network name) and regenerate the app, 'namespaces are never used' when prompted and connecting to the existing REST server instance when prompted, it will get the correct namespace from the REST server - ie exactly as shown in the developer tutorial -> https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial
[ ](https://chat.hyperledger.org/channel/composer?msg=JZPQkMhuDXdWQrpiE) @mahoney1 did the same but got the error ... then what is the option that we have to select at angular generation app same like "never use namespaces" which is in the developer tutorial
$class: 'org.example.mynetwork.someexamplename'............... this is the namespace it is creating in the rest server eventhough i selected the said option @mahoney1 .. could you please help me with that to resolve this error ?
my wannabe namespace is "org.project" and ihave used the same in my business network
but still org.example.mynetwork dont know why it is creating
below is the error am getting
rror: Error trying invoke business network with transaction id 70d6ca2b9d18b327b41af7f7eb9eaf5272a393a85d0e8bea84c45695d67b36c1. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: transaction returned with failure: TypeNotFoundException: Namespace is not defined for type org.bordereau.Policy
review each of your modelling files for 'org.example.mynetwork.someexamplename' instances you may have forgotten to change, even folder/file names
no i have changed each and everthing
to org.project namespace
1.model file 2.logic.js(transaction file) 3. acl file i have checked thoroughly and changed the namepsaces .....
should i need to change any other places other than this .... @millengustavo ... thanks ...
your .cto file has the correct name of your current network right?
what is currnet network means current namespace
?
yes i have namespace org.bordereau ... and my cto file is named as "org.bordereau.cto"
under the models folder there should be a .cto file, the name of this file must match the name you use on the first line of the .cto file: "namespace org.blabla..."
yes its matching
in your logic.js under each transaction are you using the right param {namespace.Transaction} names?
yes org.bordereau.transaction
that is the one am using it is matching evertywhere
right, now for the logic of the transaction, I assume you are modifying some asset or assigning something for some participant. did you define the namespace correctly there as well?
yes i have defined the namepsace across my logic same as in model file ....
well, if everything is setup correctly on your code, try deleting the old .bna file and issuing composer archive create again
actually i have started from scratch again with namespace "org.bordereau" and then created composer archive file
@mallikarjunasai995 I suggest you shut down your fabric and delete all docker images that start with `dev-` for example
```
docker rmi $(docker images dev-* -q)
```
Then try again. You could be using the same business network name and version which means fabric is likely re-using previously built chaincode images
@rthatcher @mahoney1 can you provide any solution for login authentication for composer rest api in multi user mode. right now we are using github authentication strategy in this we are facing some issue Can i use manual authentication like Username and password
@sureshtedla choose another passport strategy, but be prepared that passport strategies may not work out of the box and may require you to wrap them in code in order to satisfy your requirements. Known alternatives include the tutorial using Google OAUTH2 - https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
And some other examples on the web, such as - https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
You can also search the web as I believe there is an example using local passport strategy
@sureshtedla choose another passport strategy, but be prepared that passport strategies may not work out of the box and may require you to wrap them in code in order to satisfy your requirements to get them to work with the composer rest server. Known alternatives include the tutorial using Google OAUTH2 - https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
And some other examples on the web, such as - https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
You can also search the web as I believe there is an example using local passport strategy
but end user expecting User Name and Password authentication @davidkel
@sureshtedla Then your application front end will need to provide that
If we provide user name and password authentication in UI after logged in user need to upload certificate to access network
If we provide user name and password authentication in UI after logged in user need to upload certificate to access network @davidkel
@davidkel How to do this?
@sureshtedla That will depend on the passport strategy you use for the rest-server. If you chose one that uses userid/password authentication then is one way. The rest server provides apis for wallet management so you would need to investigate and use those
@sureshtedla That will depend on the passport strategy you use for the rest-server. If you chose one that uses userid/password authentication then that's one way which requires less effort probably less secure as well, it would depend on your requirements. The rest server provides apis for wallet management so you would need to investigate and use those
[ ](https://chat.hyperledger.org/channel/composer?msg=mSeuphkDcKiFmbo8F) @davidkel so how should i download this dev image again from the internet
@mallikarjunasai995 No, these are chaincode images so are built by the peer when you start the business network
okay thanks @davidkel
hi the hyperledger fabric composer version am connecting to "hlfv1" this network... but hlfv12 is differ from the hlfv1
?
@mallikarjunasai995 regarding the connection profile entry `"x-type": "hlfv1",` this will always be `hlfv1`
@davidkel thanks... am very much confused because of that
@mallikarjunasai995 it refers to what connector to load, as there is only 1 connector for the real fabric in composer it will always be that value
@mallikarjunasai995 it refers to what connector to load, as there is only 1 connector for the real hyperleger fabric in composer it will always be that value
[ ](https://chat.hyperledger.org/channel/composer?msg=foo4i3KhGstoDf69E) @davidkel thanks @davidkel
[ ](https://chat.hyperledger.org/channel/composer?msg=qBmmZuf8YdpspBGNB) @davidkel but i found three different versions in composer in fabric-dev-servers/fabric-scripts like the below ones
hlfv1 , hlfv11, hlfv12 these are three composer folders that i found
what are these then when only hlfv1 connector is availble now
@mallikarjunasai995 They are 3 different versions of fabric. You would use the correct level of composer for each one
@mallikarjunasai995 They are 3 different versions of fabric. You would use the correct level of composer for each one please see the release notes
@mallikarjunasai995 They are 3 different versions of fabric. You would use the correct level of composer for each one please see the composer release notes. But I am guessing you are just starting so would should only ever be using fabric 1.2 (hlfv12 which is currently the default) and composer 0.20
@mallikarjunasai995 They are 3 different versions of fabric. You would use the correct level of composer for each one please see the composer release notes. But I am guessing you are just starting so would only ever be using fabric 1.2 (hlfv12 which is currently the default) and composer 0.20
@mallikarjunasai995 They are 3 different versions of fabric. You would use the correct level of composer for each one please see the composer release notes https://github.com/hyperledger/composer/releases/tag/v0.20.6. But I am guessing you are just starting so would only ever be using fabric 1.2 (hlfv12 which is currently the default) and composer 0.20
[ ](https://chat.hyperledger.org/channel/composer?msg=mAamAFgdKY7yCSzpv) @davidkel "composer network start --networkName tutorial-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card"
[ ](https://chat.hyperledger.org/channel/composer?msg=pATe3HuFBuWD95dTA) In the above command as specified in "peerAdmin@hlfv1 " what does hlfv1 refers to .... yes am using composer 0.20 version and hyperledger fabric v 1.2 so does this mean i have to change my peer admin card to this "peerAdmin@hlfv12" ?
@mallikarjunasai995 it's taken from the name of the connection profile
```
"name": "hlfv1",
```
You can change the name of the connection profile or you can change the name of the card when you invoke `composer card create`. If you have used `createPeerAdminCard.sh` then it will use the default name
[ ](https://chat.hyperledger.org/channel/composer?msg=RMQYJzsbeqekwQYQs) @davidkel thanks very much
Thanks @davidkel !
Has joined the channel.
Has left the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=RMQYJzsbeqekwQYQs) @davidkel hi actually when am running my business network in the playground there is an historian future where i can see what are the transactions that i have done in transaction historian UI , but now am running in my local network generating rest api and angular .... here how can i see what are the transaction that i have done ....... any idea on this .....need your help :) @davidkel
hi actually when am running my business network in the playground there is an historian future where i can see what are the transactions that i have done in transaction historian UI , but now am running in my local network generating rest api and angular .... here how can i see what are the transaction that i have done ....... any idea on this .....need your help teams
[ ](https://chat.hyperledger.org/channel/composer?msg=kdJnTB9JvBabtQuhP) @mallikarjunasai995 Hey ! If you find the solution for this then please update me.
[ ](https://chat.hyperledger.org/channel/composer?msg=hSaddufy7ia6WnBfw) @SJoshi7 hi one thing i know is writing queries we can get the what ever the information we want .... like what are the transaction that are done until now and what kind of asset is modified but this is not the way i want to achieve the solution
[ ](https://chat.hyperledger.org/channel/composer?msg=aKgDiFr7bdijEpRD5) @mallikarjunasai995 Oh okayy ! Please let me know if you find any other solution. Also, I had one query with composer historian record ..can you help ?
[ ](https://chat.hyperledger.org/channel/composer?msg=snE95uDgRz3NgMzSc) @SJoshi7 will try even i also started working on that ....
hello everyone, How can i get the timestamp automatically in composer while creating asset or during any transaction?
[ ](https://chat.hyperledger.org/channel/composer?msg=mzHESDvDjjrhY2Hou) @mallikarjunasai995 lets say I have 3 identities in my composer network. Lets say those are : Main, ORG1 and ORG2. Now I have a transaction which is done by Main and in one of its attributes it either has ORG1 or ORG2. Now in the 'all transaction' section for ORG1 and ORG2 I only want to show those tx to ORG1 which had ORG1 in it and same for ORG2. How can I achieve it ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ufJteki4Ada7d2v8K) @SJoshi7 how many cards are using in your network .... can you tell me your composer card list ..
[ ](https://chat.hyperledger.org/channel/composer?msg=GyoCa5FWiH6DsapqJ) @mallikarjunasai995 these different identities are the card
Can anyone guide as to how to setup multiuser network in composer and how to reflect the same in composer-rest-server and the angular application.
Has joined the channel.
Just read that Fabric 1.4 has been released. Does anyone know whether Composer 0.25 is compatible?
Never mind. Just saw https://github.com/hyperledger/composer/releases :-)
hi, i am using fabric release-1.4. when starting bna, it says hyperledger/fabric-nodeenv not existed. how to build this docker image?
@bh4rtp Hyperledger fabric provides the node environment to run business networks, so this is a fabric issue not a composer issue, I would suggest asking on one of the fabric channels
@mallikarjunasai995 The composer-rest-server exposes Historian API's. You should be able to see them in the composer-rest-server explorer interface (which is the interface to help in developing apps for the rest-server, unless you turned it off when you generated your composer-rest-server). You would then have to modify your existing application to call these apis and to present the data in whatever manner you chose.
@SJoshi7 Maybe this will help https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
Has joined the channel.
│ Card Name │ UserId │ Business Network │
├────────────────────────┼───────────┼──────────────────┤
│ admin@tutorial-network │ admin │ tutorial-network │
├────────────────────────┼───────────┼──────────────────┤
│ PeerAdmin@hlfv1 │ PeerAdmin │ │
└────────────────────────┴───────────┴──────────────────┘
where we are using peer admin card.... in our composer network to transact ... we are only using admin@tutorial-network..
ho
right?>
@mallikarjunasai995 usually you would create identities / business network cards that transact on the business network, besides `admin@tutorial-network` (above) which is able to transact on the business network (because it is bound to a Participant in the business network itself) - unlike PeerAdmin@hlfv1 card, which is not known to the business network per se (not a participant) - that was purely used to install/start the business network
@mallikarjunasai995 usually you would create identities / business network cards that transact on the business network, besides `admin@tutorial-network` (above) which is able to transact on the business network (because it is bound to a Participant in the business network itself) - unlike PeerAdmin@hlfv1 card, which is not known to the business network per se (not a participant) - that was purely used to install/start the business network. Suggest to read the docs for more info and answers on business network cards, identities here -> https://hyperledger.github.io/composer/latest/playground/id-cards-playground and here -> https://hyperledger.github.io/composer/latest/managing/participantsandidentities
@mallikarjunasai995 usually you would issue identities / business network cards for 'ordinary' participants that transact on the business network, besides `admin@tutorial-network` (above) which is able to transact on the business network (because it is bound to a Participant in the business network itself) - unlike PeerAdmin@hlfv1 card, which is not known to the business network per se (ie not a participant of the BN) - that was purely used to install/start the business network. Suggest to read the docs for more info and answers on business network cards, identities here -> https://hyperledger.github.io/composer/latest/playground/id-cards-playground and here -> https://hyperledger.github.io/composer/latest/managing/participantsandidentities
[ ](https://chat.hyperledger.org/channel/composer?msg=eL9DHKfKBgHZu37Dj) @mahoney1 thanks very much will go through this again
We are experiencing this error `2019-01-11 05:44:34.933 UTC [chaincode] HandleTransaction -> ERRO bef1 [cc441971] Failed to handle GET_STATE. error: no ledger context` when trying to execute a `getAll()` on an asset registry. We suspect that its because a timeout, since this error started happening once we hit over 1000 assets for that registry. Doing a `get` by ID works without any problems. Is there any way to circumvent this?
@vanclief You need to increase the execution timeout in your fabric
@vanclief You need to increase the execution timeout in your fabric. As this is a specific fabric issue you would be better off asking in a fabric channel.
@vanclief You need to increase the execution timeout in your fabric. As this is a specific fabric configuration issue you would be better off asking in a fabric channel.
@vanclief You need to increase the execution timeout in your fabric. As this is a specific fabric configuration you would be better off asking in a fabric channel.
Hi @davidkel! Alright will post it on the fabric channel
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=kdJnTB9JvBabtQuhP) hi through the documentation i read that x type is nothing but hyperledger fabric version
-type defines the version of Hyperledger Fabric that you will connect to. To connect to Hyperledger Fabric v1.1, x-type must be hlfv1.
[ ](https://chat.hyperledger.org/channel/composer?msg=m6LwgWkamrYsLJ8Fi) so that means am connecting my business network to hyperledger fabric v1.1 ? if so , then i have only the running peers that has fabric v1.2 ....how can connection profile connects to v1.1 ?
Hi, I have followed https://hyperledger.github.io/composer/latest/installing/installing-index.html to getting started with Hyperledger fabric network with Hyperledger Composer. Currently I have a successfully running network with 1 peer node. How can I increase the number of peers for the existing network?
Hi @amendafernando, you can go through this https://www.youtube.com/watch?v=MPNkUqOKhVE&list=PLjsqymUqgpSTGC4L6ULHCB_Mqmy43OcIh . This tutorial will give you a better idea for building a Hyperledger fabric Network from scratch.
[ ](https://chat.hyperledger.org/channel/composer?msg=YPAWaNRJmPtNYjaBv) @pravn1729 Thank You @pravn1729 . This is really helpful :relaxed: . I have 4 peers and Can I use Composer to deploy chaincode which I already have to peers in this case without using go lang? Please Help. Thanks in Advance.
Has left the channel.
Is it possible to run a transaction in the logic file where it is triggered by another function's results and this transaction generates new assets? (Similar to SetupDemo transaction).
Is it possible to run a transaction in the logic file which is triggered by another function's results and this transaction generates new assets? (Similar to SetupDemo transaction)
[ ](https://chat.hyperledger.org/channel/composer?msg=GxFbndqTynjJXFdbc) @nimaafraz I don't see why it shouldn't work, you may have to use await/async(promise/ .then) functions of JavaScript to ensure that the previous transaction was recorded.
@amendafernando , yes, you can. You need to create cards out of generated certificates. Have a look at startFabric.sh file in composer documentation (https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-single-org) and see how the Channels, PeerAdmin card is created from organization user certificates.
Has left the channel.
Has joined the channel.
Hello
Hyperledger composer is still in incubation process?
Hello everyone!
I've stuck with the following problem: After I successfully install and instantiate a business network archive I am able to ping with the admin card. I would like to create another cards to interact with the network. Everything is ok if I am using only CLI, on the other hand I have to do this in a nodeJS env. using the composer API. I am able to create the participants, Issue new identity for them and import them as cards to the wallet, but I got an error and I have no clue what's the problem. The problem might be the metadata (especially the enrollment secret) I pass for the card. If I create the participants in code then Issue new Identity for them and import them as cards in CLI it works fine.
Hello everyone!
I've stuck with the following problem: After I successfully install and instantiate a business network archive I am able to ping with the admin card. I would like to create another cards to interact with the network. Everything is ok if I am using only CLI, on the other hand I have to do this in a nodeJS env. using the composer API. I am able to create the participants, Issue new identity for them and import them as cards to the wallet, but I got an error and I have no clue what's the problem. The problem might be the metadata (especially the enrollment secret) I pass for the card. If I create the participants in code then Issue new Identity for them and import them as cards in CLI it works fine. *Update: I've examined the .composer file. It seems the API does not create client-data for the card. How can I do that?
Clipboard - January 15, 2019 4:53 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=3RochfgQxarAr25C5) @livenicely I assume you have seen the announcement about Composer - https://lists.hyperledger.org/g/composer/message/125 For this reason, Composer is not recommended for Production implementation.
Developers are encouraged to move to the New Programming model available in native Fabric v1.4 https://hyperledger-fabric.readthedocs.io/en/latest/whatsnew.html
REST server
Hello, I am trying to start my composer rest server but only see "System: General business network methods" on the REST server homepage. Any idea why I am not able to see my assets and participants? I am running the network in an AWS EC2 server. Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=yuNtHDZqWFRsBPaZL) Also, I ran 'composer network list' for my card and found my assets and participants under 'registries', so I know it exists there. It seems like this could be a case of the swagger UI not showing everything properly, but I don't know why.
is this true?
https://medium.com/worldsibu/hyperledger-composer-has-been-put-on-pause-what-are-your-options-now-41cc63026161
[ ](https://chat.hyperledger.org/channel/composer?msg=QyKTpoPpJLz3rdsRp) Yes. Composer was EOL'ed a few months ago.
[ ](https://chat.hyperledger.org/channel/composer?msg=mm3d9TFRJkX2ih5fo) @Levilk Hello @Levilk , I am also working on a project using composer which involves multiple cards and I had some queries regarding the same. Can you please help me ?
Has left the channel.
I mostly write blogs realted to Hyperledger Farbic and general Blockchain.
Can you guys give some of them a view and give me pointers.
https://www.devprovider.com/author/danyal-ahmaddevprovider-com/
@sstone1 How toget history of transactions for particular Asset in composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=rR7R5ELqnvDY3mrHE) @mahoney1 can you give me sample code for it?
[ ](https://chat.hyperledger.org/channel/composer?msg=Kaewhtn9Gih6c3eeq) @SJoshi7 PM me, hope I can help!
[ ](https://chat.hyperledger.org/channel/composer?msg=GxFbndqTynjJXFdbc) @nimaafraz yes its possible we can generate a new asset while executing a transaction .... please go through manufacturingo in composer-playground examples... you will get an idea
@rthatcher I have tried the below code
@rthatcher I have tried the below code
Sample transaction
@param {org.acme.Block.orderHistory} purchase
@transaction
async function orderHistory(transaction) {
const orderNumber = purchase.orderNumber;
const nativeSupport = purchase.nativeSupport;
const assetRegistry = await getAssetRegistry('org.acme.Block.Order')
const nativeKey = getNativeAPI().createCompositeKey('Asset:org.acme.Block.Order', [orderNumber]);
console.log(nativeKey);
const iterator = await getNativeAPI().getHistoryForKey(nativeKey);
let results = [];
let res = {done : false};
while (!res.done) {
res = await iterator.next();
if (res && res.value && res.value.value) {
console.log(res);
let val = res.value.value.toString('utf8');
if (val.length > 0) {
results.push(JSON.parse(val));
}
}
if (res && res.done) {
try {
iterator.close();
}
catch (err) {
}
}
}
return results;
Sample transaction
@param {org.acme.Block.orderHistory} purchase
@transaction
async function orderHistory(transaction) {
const orderNumber = purchase.orderNumber;
const nativeSupport = purchase.nativeSupport;
const assetRegistry = await getAssetRegistry('org.acme.Block.Order')
const nativeKey = getNativeAPI().createCompositeKey('Asset:org.acme.Block.Order', [orderNumber]);
console.log(nativeKey);
const iterator = await getNativeAPI().getHistoryForKey(nativeKey);
let results = [];
let res = {done : false};
while (!res.done) {
res = await iterator.next();
if (res && res.value && res.value.value) {
console.log(res);
let val = res.value.value.toString('utf8');
if (val.length > 0) {
results.push(JSON.parse(val));
}
}
if (res && res.done) {
try {
iterator.close();
}
catch (err) {
}
}
}
return results;
I have tried above code to get transaction history of particular Asset but i am not able to get it can you help me regarding this?
Sample transaction
@param {org.acme.Block.orderHistory} purchase
@transaction
async function orderHistory(transaction) {
const orderNumber = purchase.orderNumber;
const nativeSupport = purchase.nativeSupport;
const assetRegistry = await getAssetRegistry('org.acme.Block.Order')
const nativeKey = getNativeAPI().createCompositeKey('Asset:org.acme.Block.Order', [orderNumber]);
console.log(nativeKey);
const iterator = await getNativeAPI().getHistoryForKey(nativeKey);
let results = [];
let res = {done : false};
while (!res.done) {
res = await iterator.next();
if (res && res.value && res.value.value) {
console.log(res);
let val = res.value.value.toString('utf8');
if (val.length > 0) {
results.push(JSON.parse(val));
}
}
if (res && res.done) {
try {
iterator.close();
}
catch (err) {
}
}
}
return results;
I have tried above code to get transaction history of particular Asset but i am not able to get it can you help me regarding this? @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=kwEXfrC5jPSiqwcXx) @sureshtedla why dont you use composer query language to get the changes in the asset ?
or transaction history @sureshtad
[ ](https://chat.hyperledger.org/channel/composer?msg=eocH5zXicgm9GzM4q) @mallikarjunasai995 Can you give me sample code for it?
[ ](https://chat.hyperledger.org/channel/composer?msg=3NmnNEbPA8hFwP7Qe) @sureshtedla https://hyperledger.github.io/composer/v0.19/reference/query-language please refer the below link
@rthatcher @davidkel @mahoney1 @caroline-church I am using below code for getting asset history but it is not working can any one help me out? async function orderHistory(transaction) {
const orderNumber = purchase.orderNumber;
const nativeSupport = purchase.nativeSupport;
const assetRegistry = await getAssetRegistry('org.acme.Block.Order')
const nativeKey = getNativeAPI().createCompositeKey('Asset:org.acme.Block.Order', [orderNumber]);
console.log(nativeKey);
const iterator = await getNativeAPI().getHistoryForKey(nativeKey);
let results = [];
let res = {done : false};
while (!res.done) {
res = await iterator.next();
if (res && res.value && res.value.value) {
console.log(res);
let val = res.value.value.toString('utf8');
if (val.length > 0) {
results.push(JSON.parse(val));
}
}
if (res && res.done) {
try {
iterator.close();
}
catch (err) {
}
}
}
return results;
Hi, i am trying to execute following code in composer ```
function walletId() {
const s4 = () => Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1);
return `${s4()}${s4()}-${s4()}-${s4()}-${s4()}-${s4()}${s4()}${s4()}`;
}
/**
* @param {org.example.basic.CreateWallet} WalletCreation
* @transaction
*/
async function CreateWallet(WalletCreation) {
const assetRegistry = await getAssetRegistry('org.example.basic.Customer');
const validMember = await assetRegistry.exists(WalletCreation.memberResource.cnic);
if(validMember){
let factory = getFactory();
let registry = await getAssetRegistry("org.example.basic.Wallet");
let resource = factory.newResource("org.example.basic","Wallet", walletId());
resource.userId = WalletCreation.memberResource.cnic;
resource.balance =WalletCreation.balance;
await registry.add(resource);
}
else {
throw new Error('this transaction failed, no such User exist' +WalletCreation.memberResource.cnic + validMember);
}
}
``` But it always returns following error
`Error: this transaction failed, no such User exist 111111111111 false`
Model file namespace org.example.basic
abstract participant Member identified by cnic {
o String cnic regex = /^[0-9]{12}$/ //Without dashes
o String name regex = /^[^±!@£$%^&*_+§¡€#¢§¶•ªº«\/\\<>?:;|=.,0123456789]{1,40}$/
o String email regex = /^\S$/
o String city regex = /^[^±!@£$%^&*_+§¡€#¢§¶•ªº«\/\\<>?:;|=.,0123456789]{1,40}$/
}
participant Customer extends Member {} asset Wallet identified by walletId {
o String walletId
o Double balance default = 0.0
o String userId
}
Model file ```
namespace org.example.basic
abstract participant Member identified by cnic {
o String cnic regex = /^[0-9]{12}$/ //Without dashes
o String name regex = /^[^±!@£$%^&*_+§¡€#¢§¶•ªº«\/\\<>?:;|=.,0123456789]{1,40}$/
o String email regex = /^\S$/
o String city regex = /^[^±!@£$%^&*_+§¡€#¢§¶•ªº«\/\\<>?:;|=.,0123456789]{1,40}$/
}
participant Customer extends Member {} asset Wallet identified by walletId {
o String walletId
o Double balance default = 0.0
o String userId
} transaction CreateWallet{
o String walletId
o Double balance default = 0.0
--> Customer memberResource
}
```
I am not able to understand that why is it giving validMember=false. although customer does exists with that id i.e. 111111111111
Figured it out i was using wrong api. Thanks
@saeedi by the way: Is the walletId a random number? I dont think it is a good idea to generate random numbers in chaincode for the creation of assets.
Yes it is. I understand it is not a good idea. My goal was to assign transaction Id as the unique identifier for the asset but i was not able to. Do you have any suggestions about it? Goal is to use the transaction id as the unique identifier rather than assigning it manually
@deelthor Yes it is. I understand it is not a good idea. My goal was to assign transaction Id as the unique identifier for the asset but i was not able to. Do you have any suggestions about it? Goal is to use the transaction id as the unique identifier rather than assigning it manually
@deelthor Yes it is. I understand it is not a good idea. My goal was to assign transaction Id as the unique identifier for the asset but i was not able to. Do you have any suggestions about it? Goal is to use the transaction id as the unique identifier rather than assigning it manually
[ ](https://chat.hyperledger.org/channel/composer?msg=sGiGcpLHJAMwFGZAE) @ronaldlong46 So I have to stop working on Composer and maybe start using Convector?
[ ](https://chat.hyperledger.org/channel/composer?msg=czNNcn29ZdTfmAyKd) @flyaked Yes or native Fabric API.
How can I test multi-user in composer?
How can I test multi-user in composer? when I using Passport-JWT
is it possible to restrict the user (participant access) in a single organization using ACL or google auth like that ?
because we have only single identity in dev environment that too networkAdmin.card
so is it possible to restrict the user access based on the participant since everything is managing by networkadmin.card
Hi all, how to uninstall bna from peers ,from the hypedger composer ,i dont see commands to uninstall it...
composer reset also dosent work
[ ](https://chat.hyperledger.org/channel/composer?msg=tro4Az9wooAaMvRNj) @saeedi You could also use the transaction timestamp. It is the same for a specific transaction on all peers and therefore unique.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZpgLX23jwmQodnfan) @mallikarjunasai995 If you are using composer rest server enable multi user mode in composer rest configurations. So the participant cards are binded with the social login. If you are performing normally then make use of composer apis for interacting with individual participant card.
[ ](https://chat.hyperledger.org/channel/composer?msg=bskQ7wZFeLnZyDhpG) @pravn1729 okay thanks
@pravn1729 but how we have to achieve the same from angular .... am running yeoman to generate all the code ... so if i enable multi user mode ... does signup screen will be generated automatically ?
[ ](https://chat.hyperledger.org/channel/composer?msg=eivYxLphF7dfDgRBo) @mallikarjunasai995 This is a good reference https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc . Please go through this.
[ ](https://chat.hyperledger.org/channel/composer?msg=Mf2SrsvAzd7fkfKs9) @pravn1729 yes am follwing that example but the thing is they have their angular app ready for the demo unlike what am doing
When trying to start a business network on a Hyperledger Fabric 1.3 network I get following error: Error: Error trying to start business network. Error: Failed to connect to any peer event hubs. It is required that at least 1 event hub has been connected to receive the commit event
Can somebody tell me what i'm doing wrong?
@deelthor Oh i see. Thanks. Is there any example available? Because to my understanding timestamp is generated at the time of transaction execution, so how will i be able to pass transaction time stamp as id for the new asset at the time of asset creation in a transaction.
I am also having trouble in trying to concatenate two values of a transaction. it always returns undefined. `var materialId=MaterialCreation.typeOfMaterial.concat(MaterialCreation.memberResource.cnic);`
OR `MaterialCreation.materialId=MaterialCreation.typeOfMaterial.concat(MaterialCreation.memberResource.cnic);`
[ ](https://chat.hyperledger.org/channel/composer?msg=KB2s5WYXEeKm6qqHB) @saeedi You can access the timestamp directly from the transaction object. It is implicitly added by Composer. Like so: ```function onSampleTransaction(sampleTransaction) {
YOURASSET..timestamp = sampleTransaction.timestamp;
return getAssetRegistry('org.acme.sample.SampleAsset')
.then(function (assetRegistry) {
return assetRegistry.update(sampleTransaction.asset);
});
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=KB2s5WYXEeKm6qqHB) @saeedi You can access the timestamp directly from the transaction object. It is implicitly added by Composer. Like so: ```function onSampleTransaction(sampleTransaction) {
YOURASSET.id = sampleTransaction.timestamp;
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=KB2s5WYXEeKm6qqHB) @saeedi You can access the timestamp directly from the transaction object. It is implicitly added by Composer. Like so: ```function onSampleTransaction(sampleTransaction) {
[..]YOURASSET.id = sampleTransaction.timestamp;[..]
}```
@deelthor Got it thanks.
Hi, how can i call one transaction from within another transaction?
Hi experts, is it ok to remove the images of the already updated chaincodes? everytime i upgrade the chaincode a new image is created taking a lot of space. is it ok to remove old images.
When trying to start a business network on a Hyperledger Fabric 1.3 network I get following error: Error: Error trying to start business network. Error: Failed to connect to any peer event hubs. It is required that at least 1 event hub has been connected to receive the commit event
Can somebody please tell me what i'm doing wrong?
Has joined the channel.
Hi there! I want to connect composer-rest-server to a previously deployed Hyperledger Fabric blockchain on the cloud. Can I do that?
Has joined the channel.
Hi! I am getting an error when trying to connect to create a channel request, it says "Failed to reach implicit threshold of 1 sub-policies, required 1 remaining" and in the logs for composer it says "Principal deserialization failure (MSP is unknown) for identity 0. I would really appreciate some help with the problem, thanks in advance!
Has joined the channel.
Has joined the channel.
Has joined the channel.
hi experts, i want to add new peer in network how can i update connection.json file
Has joined the channel.
Hi everyone. I am not sure if anyone has come across this error when installing the composer run time. Kindly advise>
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
@Kevin-Kinyua is your blockchain up and working? the error is about the peer conexion...
@rthatcher @mahoney1 @davidkel I have started rest server in multi user mode, and I have 2 cards imported to wallet out of which one card is set as default. if i need to use the card other than default , should I pass the card name also as input to rest api ? if yes how should i pass the card name as input , else how will rest server distinguish between multiple cards in wallet
I have installed chaincode in peers and try to start the network using command `composer network start ` but experience something like `✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT`
In the peer logs the exception is as
```
2019-01-18 07:59:55.602 UTC [util] DockerBuild -> DEBU 83e Attempting build with image hyperledger/fabric-ccenv:x86_64-1.1.0
2019-01-18 08:04:55.589 UTC [chaincode] launchAndWaitForRegister -> DEBU 83f stopping due to error while launching: timeout expired while starting chaincode business-network-dev:0.1.0(networkid:dev,peerid:peer0.org1.example.com,tx:c2be88d195bb77b0a5a1fc72a1f7654093f3753ba1757204923089c1de5dafe9)
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:731
github.com/hyperledger/fabric/core/chaincode.Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/exectransaction.go:45
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:83
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:164
github.com/hyperledger/fabric/core/endorser.(*Endorser).simulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:265
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:491
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:781
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2337
```
Please help me out here.
I have installed chaincode in peers and try to start the network using command `composer network start ` but experience something like ```✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT```
In the peer logs the exception is as
```
2019-01-18 07:59:55.602 UTC [util] DockerBuild -> DEBU 83e Attempting build with image hyperledger/fabric-ccenv:x86_64-1.1.0
2019-01-18 08:04:55.589 UTC [chaincode] launchAndWaitForRegister -> DEBU 83f stopping due to error while launching: timeout expired while starting chaincode business-network-dev:0.1.0(networkid:dev,peerid:peer0.org1.example.com,tx:c2be88d195bb77b0a5a1fc72a1f7654093f3753ba1757204923089c1de5dafe9)
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).launchAndWaitForRegister
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:569
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).Launch
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:731
github.com/hyperledger/fabric/core/chaincode.Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/exectransaction.go:45
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:83
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:164
github.com/hyperledger/fabric/core/endorser.(*Endorser).simulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:265
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:491
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:781
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2337
```
Please help me out here.
[ ](https://chat.hyperledger.org/channel/composer?msg=87RG95dvaKCxwaipX) @rthatcher pls help
Hi there! I want to connect composer-rest-server to a previously deployed Hyperledger Fabric blockchain on the cloud. Can I do that?
@rthatcher I have genearted UI using Yo Generator if specific warehouse wants to see specific seller orders information how can i give permission in composer? in Angular UI
@rthatcher I have genearted UI using Yo Generator if specific warehouse wants to see specific seller orders information how can i give permission in composer? in Angular UI @rthatcher
@rthatcher I have genearted UI using Yo Generator if specific warehouse wants to see specific seller orders information how can i give permission in composer? in Angular UI @rthatcher @davidkel @mahoney1
0
I am following this tutorial for learning authorisation: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
On step number 6 when I am trying to issue the REST administrator identity using my existing card, I am facing an error.
The command I am using is:
composer identity issue -c admin@addsup-network -f restadmin.card -u
restadmin -a
"resource:org.hyperledger.composer.system.NetworkAdmin#restadmin"
ERROR that am facing:
Issuing identity. This may take a few seconds... Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]] Command failed
Where am I going wrong?
Hello all,
I am following this tutorial for learning authorisation: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
On step number 6 when I am trying to issue the REST administrator identity using my existing card, I am facing an error.
The command I am using is:
composer identity issue -c admin@addsup-network -f restadmin.card -u
restadmin -a
"resource:org.hyperledger.composer.system.NetworkAdmin#restadmin"
ERROR that am facing:
Issuing identity. This may take a few seconds... Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]] Command failed
Where am I going wrong?
Hello all,
I am following this tutorial for learning authorisation: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
On step number 6 when I am trying to issue the REST administrator identity using my existing card, I am facing an error.
The command I am using is:
composer identity issue -c admin@addsup-network -f restadmin.card -u
restadmin -a "resource:org.hyperledger.composer.system.NetworkAdmin#restadmin"
ERROR that am facing:
Issuing identity. This may take a few seconds... Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]] Command failed
Where am I going wrong?
Hello all,
I am following this tutorial for learning authorisation: https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest
On step number 6 when I am trying to issue the REST administrator identity using my existing card, I am facing an error.
The command I am using is:
composer identity issue -c admin@addsup-network -f restadmin.card -u
restadmin -a "resource:org.hyperledger.composer.system.NetworkAdmin#restadmin"
ERROR that am facing:
Issuing identity. This may take a few seconds... Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]] Command failed
Where am I going wrong?
[ ](https://chat.hyperledger.org/channel/composer?msg=BLbhdQZxJ78QSkyb6) @UnaiUrkiaga @UnaiUrkiaga Thank you. I realized I had not started Fabric
How to do a search within a transaction?
i did it using a getAll and for loop. is there a cleaner way to do it
Hi all, i am not sure how to make a query work. i am trying to use buildQuery within transaction processor, and it says buildQuery is not defined, am i missing something
Has joined the channel.
Hi all, I have a network running with 4 Orgs with 2 Peers each and one orderer and 4 CA-Servers, after installing my network and trying to ping it I get following Error:
Error: Error trying to ping. Error: 2 UNKNOWN: access denied: channel [mychannel] creator org [Org1MSP] Command failed
https://stackoverflow.com/questions/54253341/create-business-network-bna-based-on-own-hyperledger-fabric-architecture
Here is my SO-Post for some more information - Thank you!
by mistake i have deleted the peerAdmin@hlfv1 composer card ... now am running composer install / composer start commands ... it is showing an error... how can i import that card again
composer card import -f file_name
or just run createPeerAdminCard.sh
[ ](https://chat.hyperledger.org/channel/composer?msg=SczMuXFY5A9dG3ucg) @JulianBall thanks i just remembered this one and deleted my query...
hi team when am trying to run the rest server in multi-user mode am getting the below error can any please help me on this .. tried installing that module again and followed stacoverflow but issue not resolved ...
Error: Cannot find module 'passport-github'
at Function.Module._resolveFilename (module.js:538:15)
at Function.Module._load (module.js:468:25)
at Module.require (module.js:587:17)
at require (internal/module.js:11:18)
at PassportConfigurator.configureProvider (/usr/lib/node_modules/composer-rest-server/node_modules/loopback-component-passport/lib/passport-configurator.js:158:22)
at Promise.then (/usr/lib/node_modules/composer-rest-server/server/server.js:153:38)
at
Hello All,
how to uninstall bna from peers ,from the hypedger composer ,i dont see commands to uninstall it...
composer reset also dosent work.Help appreciated
[ ](https://chat.hyperledger.org/channel/composer?msg=EpGohe52AAFpTozFx) @smfaizalkhan hi you have to remove the dev peer image that was created at the time installing the composer network.... after teardown.sh run the following command docker ps -a ... again you will find one dev peer that is exited but not removed ... so you have remove the image .. in that way you can start again with new archive file to install on the composer network
@smfaizalkhan please use the follwing command docker rmi $(docker images dev-* -q)
@mallikarjunasai995 :Thanks for the response,I do it by removing from kitematic..i.e after i install the chaincode using the command (composer runtime install --card PeerAdmin@hlfv1 --businessNetworkName XXXXXX) .i get a new peer with chaincode in it.
Now for some reason i have to change the bna files say logic,or acl ...Do i still need to delete the image created ?
I thought composer reset will reset to previous state uninstalling the bna files
[ ](https://chat.hyperledger.org/channel/composer?msg=XhQr3BRuHErdkRidJ) @smfaizalkhan sorry then no idea on that ...
Thanks @mallikarjunasai995 :But i would like to is my question right?...its ok to delete in DEV, how do we do it in staging when peoplerraet esting and found a new bug or in PROD
[ ](https://chat.hyperledger.org/channel/composer?msg=NyNXo9dPvYRm58E8v) @smfaizalkhan actually the peer that we are on the blockchain network is itself in devlopement envirornment.... so no idea how to move this to prod and all ...
OK,Thanks @mallikarjunasai995
Has joined the channel.
I am receiving following error during transaction execution Error: Expected a Resource or Concept.
```
/**
* @param {org.example.basic.TransferMaterial} MaterialTransfer
* @transaction
*/
async function TransferMaterial(MaterialTransfer) {
//const assetRegistry = await getAssetRegistry('org.example.basic.'+MaterialTransfer.typeOfParticipant);
//const validMember = await assetRegistry.exists(MaterialTransfer.memberResource.cnic);
if(MaterialTransfer.fromMaterial.weight <=0)
throw new Error('Insufficient Weight');
else if(MaterialTransfer.fromWallet.balance<=0)
throw new Error('Insufficient Balance');
MaterialTransfer.toMaterial+=MaterialTransfer.weight;
MaterialTransfer.fromMaterial-=MaterialTransfer.weight;
const assetRegistry = await getAssetRegistry('org.example.basic.Material');
// Update the asset in the asset registry.
await assetRegistry.update(MaterialTransfer.fromMaterial);}
```
```
namespace org.example.basic
abstract participant Member identified by cnic {
o String cnic regex = /^[0-9]{12}$/ //Without dashes
o String name regex = /^[^±!@£$%^&*_+§¡€#¢§¶•ªº«\/\\<>?:;|=.,0123456789]{1,40}$/
o String email regex = /^\S$/
o String city regex = /^[^±!@£$%^&*_+§¡€#¢§¶•ªº«\/\\<>?:;|=.,0123456789]{1,40}$/
}
participant Customer extends Member {}
participant GreenShop extends Member {}
participant DrTechPk extends Member {}
participant Collector extends Member {}
//Assets================================================================================================================
//Wallet is an asset used for virtual coins i.e. Green Points storage
asset Wallet identified by walletId {
o String walletId
o Double balance default = 0.0
o String userId
o String participantType
}
//Material is an asset used recyclable waste e.g. Plastic, metal etc.
asset Material identified by materialId {
o String materialId
o Double weight default = 0.0
o String userId
o String materialType
}
//List of material
enum TypeOfMaterial{
o Plastic
o Wood
o Metal
o WEEE
}
//List of customers
enum TypeOfParticipant{
o GreenShop
o Customer
o DrTechPk
o Collector
} //Material's is submitted from source to some destination (Update existing asset)
transaction TransferMaterial{
-->Material fromMaterial
-->Material toMaterial
o Double weight default = 0.0
o Double reward default=0.0
-->Wallet fromWallet
-->Wallet toWallet
}
```
Has anyone worked with the multi-user mode of composer ? If yes, Please ping me. I need urgent help.
@rthatcher how to automate the access token genration in passport-github strategy , instead of login from browser using the credetials??
@rthatcher How can we give permissions in UI instead of ACL in hyperledger Composer?
@rthatcher While adding a new peer to existing network, I got the following error: *:/volume2/geth1/fabric-dev-servers/fabric-scripts/hlfv12$ docker exec -e "CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp/users/Admin@org1.example.com/msp" peer2.org1.example.com peer channel fetch config -o orderer.example.com:7050 -c composerchannel
2019-01-21 10:20:30.391 UTC [channelCmd] InitCmdFactory -> INFO 001 Endorser and orderer connections initialized
2019-01-21 10:20:30.394 UTC [cli/common] readBlock -> INFO 002 Got status: &{FORBIDDEN}
Error: can't read the block: &{FORBIDDEN}*
This is while fetching the channel, to join the peer
@rthatcher While adding a new peer to existing network, I got the following error: *:/volume2/geth1/fabric-dev-servers/fabric-scripts/hlfv12$ docker exec -e "CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp/users/Admin@org1.example.com/msp" peer2.org1.example.com peer channel fetch config -o orderer.example.com:7050 -c composerchannel
2019-01-21 10:20:30.391 UTC [channelCmd] InitCmdFactory -> INFO 001 Endorser and orderer connections initialized
2019-01-21 10:20:30.394 UTC [cli/common] readBlock -> INFO 002 Got status: &{FORBIDDEN}
Error: can't read the block: &{FORBIDDEN}
*This is while fetching the channel, to join the peer
how can I make hyperledger explorer have a different base URL?
Hello, i am trying to set Hyperledger Caliper up with my custom Composer network. Does anyone have any good resources of how to do this please? I am new to Hyperledger and the docs seem quite vague, also refering to .json files where i only have .yaml versions https://hyperledger.github.io/caliper/docs/Composer_Configuration.html . Any help or pointers would be great!
Does this query look okay? For some reason when I combine 'CONTAINS' with another parameter the query quits working
query DealsByPropertyType {
description: "Retrieves deals by property type"
statement:
SELECT org.land.Deal
WHERE ((AllowedStates CONTAINS _$UsersLocation) AND (PropertyType2 == _$PropertyType2))
}
Has joined the channel.
Hello, I'm trying to configure a Kafka-based ordering service for my Hyperledger Fabric network built using Hyperledger Composer guides. Any help or guide will be greatly appreciated!
Hi ! Is there anybody using or has experience on hyperledger fabric using loopback as a mid tier to create apis for angular app ?
Please message me.
I am stuck in some problems in loopback like complex queries.
Has joined the channel.
Hi folks, Please suggest on below error: harshal@harshal-VirtualBox:~/tutorial-network$ composer network start --networkName tutorial-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Starting business network tutorial-network at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Card not found: PeerAdmin@hlfv1
Command failed
tutorial says that as part of develoment environment card has been already install but still I am getting this error. Appreciate your suggestions!
is it possible to schedule transactions to the future based on timestamp?? Any idea or suggestions would be greatly appreciated. Thanks in advance.
Has joined the channel.
Hi. I wrote a sample application on hyperledger composer to be deployed. While the generation of .bna file and installation of the .bna file on the network were successful, starting the network is throwing up a certificate error.
It looks like this: vasista@vasista-OptiPlex-9020:~/Documents/fabric-dev-servers/banking$ composer network start --networkName banking --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Starting business network banking at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 422e36073a6b4797667e6a3ef2773bf63076ae44f67faf79ff070b529494fd5f: error starting container: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code SELF_SIGNED_CERT_IN_CHAIN
npm ERR! errno SELF_SIGNED_CERT_IN_CHAIN
npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: self signed certificate in certificate chain
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2019-01-21T15_11_41_226Z-debug.log
"
Command failed
Further details posted here : https://github.com/hyperledger/composer/issues/4580
[ ](https://chat.hyperledger.org/channel/composer?msg=XsFXiobhwaSzWhPtT) @harshalkumar.rane Hi Harshal. Before starting the netwok you should've done the following: ./startFabric.sh followed by ./createPeerAdminCard.sh following which you need to create the business network archive , install it using the composer network install command and then run network start. In case you've not followed these steps, you would get such an error. Possibly you've missed ./createPeerAdminCard.sh
@davidkel How can we give permissions to participants through UI?
[ ](https://chat.hyperledger.org/channel/composer?msg=7f3pbTP3LLtK4SkdM) @Vasista-22 Hey! I guess the card has not yet been made. I hope that you might have ran enrolladmin script in the very starting of setting up composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=S4Awy3ghq7hAPNBS8) @sureshtedla In a manner if you are trying to look up for buttons through which you can give permissions, there is no way. You might have to bring up changes in the permissions.acl file
[ ](https://chat.hyperledger.org/channel/composer?msg=5EiAjN7WmqNbCtbvs) @Basil-3 @Basil-3 there is no alternative for this?
@rthatcher How can we give permissions to participants through UI?
[ ](https://chat.hyperledger.org/channel/composer?msg=mfKLJZWX5hboAnGEs) @sureshtedla As per my knowledge of using playground and RESTful API, I haven't encountered any button for that. You have to update permissions in the permissions.acl file itself. File's code is pretty intuitive too, so you can understand and write permissions on your own.
@Basil-3 Is Dynamic permissions is not possible in composer? @rthatcher
[ ](https://chat.hyperledger.org/channel/composer?msg=45BiD4a9ZHPxWJcLb) @sureshtedla I am not able to permute any idea through which one can dynamically update permissions. In fabric it might be achievable but not in composer (as far as I know).
[ ](https://chat.hyperledger.org/channel/composer?msg=8L9vTmiAjDDBHevH3) @Basil-3 Ok @Basil-3
Hi All
Could help me for this issue : Error: Error trying to start business network. Error: Failed to connect to any peer event hubs. It is required that at least 1 event hub has been connected to receive the commit event
Fabric v1.3 and Composer v0.20
Hi. I wrote a sample application on hyperledger composer to be deployed. While the generation of .bna file and installation of the .bna file on the network were successful, starting the network is throwing up a certificate error.
It looks like this: vasista@vasista-OptiPlex-9020:~/Documents/fabric-dev-servers/banking$ composer network start --networkName banking --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Starting business network banking at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 422e36073a6b4797667e6a3ef2773bf63076ae44f67faf79ff070b529494fd5f: error starting container: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code SELF_SIGNED_CERT_IN_CHAIN
npm ERR! errno SELF_SIGNED_CERT_IN_CHAIN
npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: self signed certificate in certificate chain
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2019-01-21T15_11_41_226Z-debug.log
"
Command failed
Further details posted here : https://github.com/hyperledger/composer/issues/4580
Has joined the channel.
getting the following error while using the apis in multiuser mode :
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying login and get user Context. Error: Error trying to enroll user. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]",
"stack": "Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Enrollment failed with errors [[{\"code\":20,\"message\":\"Authorization failure\"}]]\n at HLFConnection.login (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:477:30)\n at
Has joined the channel.
can anyone help me with this?
Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Peer localhost:7051 has rejected transaction '8d53f47f01efa13c5124a019ca7bfaa83622f0ba7e043bafdded1bf388c8ffe6' with code ENDORSEMENT_POLICY_FAILURE
Command failed
Has joined the channel.
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
can you help me with this please? I appreciate it thanks
@Ercute208 make sure your fabric up and running
type docker ps in your terminal
thank you i will gie it a try
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES this is the output of docker ps
@sureshtedla
means that your fabric network is not up
./startFabric.sh execute this script in terminal
@Ercute208 Have you run the above script
?
./startFabric.sh
I had another error hold on im gonna asap will tell you
Has left the channel.
Has joined the channel.
@amendafernando i have same problem.do you find any solution?
when i start composer network : there resualt of this command : composer network start ... is:
Starting business network tutorial-network at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
when trying to start my business network on a kafka setup with 5 peers I get following error:
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
can somebody please help me to find out what's the problem
@mahoney1 ?
@sureshtedla ?
Has joined the channel.
Hi. I wrote a sample application on hyperledger composer to be deployed. While the generation of .bna file and installation of the .bna file on the network were successful, starting the network is throwing up a certificate error.
It looks like this: vasista@vasista-OptiPlex-9020:~/Documents/fabric-dev-servers/banking$ composer network start --networkName banking --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Starting business network banking at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 422e36073a6b4797667e6a3ef2773bf63076ae44f67faf79ff070b529494fd5f: error starting container: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code SELF_SIGNED_CERT_IN_CHAIN
npm ERR! errno SELF_SIGNED_CERT_IN_CHAIN
npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: self signed certificate in certificate chain
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2019-01-21T15_11_41_226Z-debug.log
"
Command failed
Further details posted here : https://github.com/hyperledger/composer/issues/4580
Hello, I'm trying to configure a Kafka-based ordering service for my Hyperledger Fabric network built using Hyperledger Composer guides. Any help or guide will be greatly appreciated!
Has joined the channel.
Hello, do somebody know how exactly the Hyperledger Composer REST API communicates with the blockchain? Calling the SDK?!
[ ](https://chat.hyperledger.org/channel/composer?msg=Ld2TgMHEnprCHQFcK) @maximang @maximang REST API endpoints are generated automatically when you run composer-rest-server. This command builts the API according to your CTO and logic.js files. Whenever you make changes to your models and logic, just update the network and start the API again, changes will be reflected.
Yes I know, everything is working in my case. I just have to document the interaction between the REST API and the Hyperledger Fabric blockchain for my project...
[ ](https://chat.hyperledger.org/channel/composer?msg=Ld2TgMHEnprCHQFcK) @rodolfofranco Yes I know, everything is working in my case. I just have to document the interaction between the REST API and the Hyperledger Fabric blockchain for my project...
Has joined the channel.
Someone mentioned to me that composer is winding dow, are they mistaken? Was planning to teach some college students how to use it if the project is alive and well
[ ](https://chat.hyperledger.org/channel/composer?msg=LW3XpgCFZRcDaoktP) @nmarco @nmarco https://hackernoon.com/hyperledger-composer-has-been-put-on-pause-what-are-your-options-now-dfc3a97a6308
Hi. I wrote a sample application on hyperledger composer to be deployed. While the generation of .bna file and installation of the .bna file on the network were successful, starting the network is throwing up a certificate error.
It looks like this: vasista@vasista-OptiPlex-9020:~/Documents/fabric-dev-servers/banking$ composer network start --networkName banking --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Starting business network banking at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 422e36073a6b4797667e6a3ef2773bf63076ae44f67faf79ff070b529494fd5f: error starting container: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code SELF_SIGNED_CERT_IN_CHAIN
npm ERR! errno SELF_SIGNED_CERT_IN_CHAIN
npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: self signed certificate in certificate chain
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2019-01-21T15_11_41_226Z-debug.log
"
Command failed
Further details posted here : https://github.com/hyperledger/composer/issues/4580
Has joined the channel.
Is it possible to use Kafka on a Fabric network built using Composer? Or my only option is to going full native on Fabric
Has joined the channel.
@rodolfofranco Composer does not care whether you use SOLO or KAFKA
@silliman ok, but using the Hyperledger Composer guides, I downloaded a fabric network that seems to work properly with the API and Angular app set as guided through the tutorials. I'm now trying to develop my own angular app and my issue is to how do I change my current network (which works currently with my app) to use a Kafka based ordering service?
@rodolfofranco i don’t think that converting an existing network from SOLO to KAFKA Is supported but you could ask on #fabric-orderer to be sure.
Hello, I am sending transactions from my application to the REST API. Many transactions are returning a JSON response code 200 although they are not actually being committed, well not visible in composer-playground. Could someone tell me how i would go about diagnosing this problem please? I have changed log levels to - INFO. However when multiple transactions are being sent at once most of them are being dropped. Thanks any help much appreciated!
Has joined the channel.
Has joined the channel.
hello everyone, I am working on a composer project with the multi-user mode. How should I keep the login architecture for my applciation ? and how should I achieve it ? Please help
Has joined the channel.
@SJoshi7 I am working on a similar project read this https://github.com/Aniket-Engg/Hyperledger-Medical-Network
I am stuck in this project may be you can figure out what is the problem
[ ](https://chat.hyperledger.org/channel/composer?msg=7rZnnn3iEpWAvPDjb) @Ajayveer Can you tell me what exactly are you stuck at ? and do you have any idea regarding my problem?
@SJoshi7 I am getting error the path not found when I am running this project.
Hey can anyone help with this error :Failed to load connector module \"composer-connector-undefined\" for connection type \"undefined\
@Vasista-22 Have you tried "teardownFabric", "stopFabric", "startFabric", and "createPeerAdminCard" command before starting new network?
How to set the expiry time for jwt token in passport jwt strategy of hyperledger composer, ??
@Vasista-22Have you tried "teardownFabric", "stopFabric", "startFabric", and "createPeerAdminCard" command before starting new network?
i test it. no different. Error: Error trying to start business network. Error: No valid responses from any peers
@Vasista-22 Have you tried "teardownFabric", "stopFabric", "startFabric", and "createPeerAdminCard" command before starting new network?
i test it. no different. Error: Error trying to start business network. Error: No valid responses from any peers
@amirfatemi @harun I've tried them before staring the network.
[ ](https://chat.hyperledger.org/channel/composer?msg=6duJNB75DQgRjbFCL) @Vasista-22 i have same problem and now it's work
go to the dabric-dev-servers/fabric-scripts/hlfv12/composer ( if you use hlfv12 ) . add this line :kiss_ww:
- CORE_VM_DOCKER_ATTACHSTDOUT=true
- CORE_CHAINCODE_STARTUPTIMEOUT=1200s
- CORE_CHAINCODE_EXECUTETIMEOUT=800s
in docker-compose.yml file in peer0.org1.example.com: part like this:
peer0.org1.example.com:
container_name: peer0.org1.example.com
image: hyperledger/fabric-peer:1.2.1
environment:
- CORE_LOGGING_LEVEL=debug
- CORE_VM_DOCKER_ATTACHSTDOUT=true
- CORE_CHAINCODE_STARTUPTIMEOUT=1200s
- CORE_CHAINCODE_EXECUTETIMEOUT=800s
- CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
- CORE_PEER_ID=peer0.org1.example.com
- CORE_PEER_ADDRESS=peer0.org1.example.com:7051
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=composer_default
- CORE_PEER_LOCALMSPID=Org1MSP
- CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/peer/msp
- CORE_LEDGER_STATE_STATEDATABASE=CouchDB
- CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb:5984
working_dir: /opt/gopath/src/github.com/hyperledger/fabric
command: peer node start
[ ](https://chat.hyperledger.org/channel/composer?msg=6duJNB75DQgRjbFCL) @Vasista-22 i have same problem and now it's work
go to the dabric-dev-servers/fabric-scripts/hlfv12/composer ( if you use hlfv12 ) . add this line :kiss_ww:
- CORE_VM_DOCKER_ATTACHSTDOUT=true
- CORE_CHAINCODE_STARTUPTIMEOUT=1200s
- CORE_CHAINCODE_EXECUTETIMEOUT=800s
in docker-compose.yml file in peer0.org1.example.com: part like this:
peer0.org1.example.com:
container_name: peer0.org1.example.com
image: hyperledger/fabric-peer:1.2.1
environment:
- CORE_LOGGING_LEVEL=debug
- CORE_VM_DOCKER_ATTACHSTDOUT=true
- CORE_CHAINCODE_STARTUPTIMEOUT=1200s
- CORE_CHAINCODE_EXECUTETIMEOUT=800s
- CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
- CORE_PEER_ID=peer0.org1.example.com
- CORE_PEER_ADDRESS=peer0.org1.example.com:7051
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=composer_default
- CORE_PEER_LOCALMSPID=Org1MSP
- CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/peer/msp
- CORE_LEDGER_STATE_STATEDATABASE=CouchDB
- CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb:5984
working_dir: /opt/gopath/src/github.com/hyperledger/fabric
command: peer node start
@Ercute208
Has joined the channel.
Has joined the channel.
I have configured for your requirement. Download https://drive.google.com/file/d/1qxzIGjcM8VnKtv2ADOIyYBANZ8RMVdZi/view?usp=sharing
Download from the above link
Follow below steps
Prerequisites :
https://hyperledger.github.io/composer/latest/installing/installing-prereqs
npm install -g composer-cli@0.19.13
1) Run setupcerts.sh
2) Setup bna in test/dist/ folder
3) run restart.sh
Hi, how to remove a peer from a channel
Excuse me, can Composer's Angular Web Program Generation Tool only generate simple applications for testing? My Composer business network has been completed, now I want to develop front-end applications, and my application is relatively simple, what framework can I choose to complete the development of front-end applications? I don't have much experience in development. I look forward to your detailed reply. Thank you very much!:blush::blush::blush:
Hi all, i am confused about something; in this article https://hyperledger.github.io/composer/v0.19/installing/installing-prereqs.html#ubuntu it is saying that we must use a normal user to install the prerequisites. When i do so, the script ask for a sudo privileges for the currnt user. this user i am logged in with is not a sudo user. how should i switch the user during the execution of the prerequisite script?
HI all ,
Hi All . I have fabric on Kubernetes and trying to start new bna. Its getting installed but not able to start . Giving following error : ✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction f2eda68137d8cd9e606f040bb28ba6689826068394aa22c8593b4ac52ed306c4: error starting container: error starting container: cannot connect to Docker endpoint
Command failed
Hi All
Hi All.... could you help me about the following issue: ✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No orderers assigned to the channel
[ ](https://chat.hyperledger.org/channel/composer?msg=SYS5MrLWBjwveTztW) @brunillopu.75 This is because you need to have orderer grpc missing in your channelconfig.tx
@pikvik Thanks I'll check
Hi All ... could you help with this issue: Composer runtime (0.20.6) is not compatible with client (0.19.19)
Hello, I am having a problem when sending transactions to the REST API. Transactions get committed to the ledger untill multiple transactions are sent in short succession, then only the last of the group gets through to the ledger. Sorry Im a beginner and still learning but not sure how to diagnose where the problem lies. Any suggestions?
@ajbill not related to your question, but, can you make a Post transaction from the REST API alone ? How ?
Has joined the channel.
I have setup Hyperledger Fabric blockchain network using AWS Managed blockchain following this link https://docs.aws.amazon.com/managed-blockchain/latest/managementguide/managed-blockchain-get-started-tutorial.html , everything working perfectly fine, I can install and instantiate the chiancode, also succeeded to run sample provided for non-profit blockchian https://github.com/aws-samples/non-profit-blockchain/tree/master/ngo-chaincode . Now I want to create business network and network card with Hypderledger Composer but want to make sure that the blockchain network created by following AWS Managed blockchain, after Composer installation when I create the business network and network card it is using default Hyperledger fabric network not the one which was created using AWS Blockchain , is it possible to use Hyperledger Composer the way I want if yes then please let me know how?
My Requirement is to create "Create A Business Network Card" using Amazon managed Blockchain network information.
e.g
MSPID, Orderer, Peers and CA
[ ](https://chat.hyperledger.org/channel/composer?msg=SGDBT5M8QMHiSmGjA) @Daka I am using postAssetRegistry.add( );
However, not working as intended at present. When multiple transactions are sent in succession something is failing
[ ](https://chat.hyperledger.org/channel/composer?msg=f8RecB7y8mxK6YipN) However, not working as intended at present. When multiple transactions are sent in succession something is failing
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=zwWFyzKJBjKfooZ4b) Not sure if that answers your question... Im connecting to the REST server where there is a transaction referring to logic.js with postAssetRegistry.add( )
[ ](https://chat.hyperledger.org/channel/composer?msg=Ev42A5HBGdN32L8uw) @rrishmawi Follow this for a more detailed walkthrough: https://chaincodedevs.com/showthread.php?tid=3
Has joined the channel.
Has joined the channel.
Hi guys, whenever I reset my computer and run ./startFabric.sh successfully, I get an error like this: "Error: Error trying to ping. Error: make sure the chaincode tutorial-network has been successfully instantiated and try again". I can resolve this buy setting up everything from scratch, however I believe there is a better solution for that and I wanna know the reason behind this error too. Thank you for your help :)
So I've written a query processor function but it is only returning '[]'. There are items in 'Deal' so I am unsure why I am only getting an empty array.
/**
* Get Live Deals
* @param {org.reitium.land.GetLiveDeals} getLiveDeals - the transaction
* @transaction
*/
async function getLiveDeals(){
const liveDeals = [];
const currentTime = Date.now();
const dealRegistry = await getAssetRegistry('org.reitium.land.Deal');
const allDeals = await assetRegistry.getAll();
for(const deal of allDeals){
liveDeals.push(deal);
}
return liveDeals;
}
/**
* Get Live Deals
* @param {org.land.GetLiveDeals} getLiveDeals - the transaction
* @transaction
*/
async function getLiveDeals(){
const liveDeals = [];
const currentTime = Date.now();
const dealRegistry = await getAssetRegistry('org.land.Deal');
const allDeals = await assetRegistry.getAll();
for(const deal of allDeals){
liveDeals.push(deal);
}
return liveDeals;
}
--------------------
And for the model:
@commit(false)
@returns(Deal[])
transaction GetLiveDeals {
}
Has joined the channel.
I can not run composer network start without composer-network-install and when I do I lose my previous participants and assets
can someone help me?
Hi @Ercute208 after restarting ur machine all the peers will be exited. you can use this command to check the status of ur peers *docker ps -a*.
when ur trying to start the network , no peers will be available this is the cause of the problem i think. if ur peers are exited after restart try this command *docker start $(docker ps -a -q --filter "status=exited")* this will start the exited peers.
Hi @Ercute208 after restarting ur machine all the peers will be exited. you can use this command to check the status of ur peers *docker ps -a*.
when ur trying to start the network , no peers will be available this is the cause of the problem i think. if ur peers are exited after restart try this command *docker start $(docker ps -a -q --filter "status=exited")* this will start the exited peers. After you can try startFabric.
I am trying to update asset using transaction in composer ```
/**
* @param {org.example.basic.MaterialWeight} WeightMaterial
* @transaction
*/
async function MaterialWeight(WeightMaterial) {
const assetRegistry = await getAssetRegistry('org.example.basic.Material');
const validAsset = await assetRegistry.exists(WeightMaterial.Material);
if(validAsset){
WeightMaterial.Material.weight+=WeightMaterial.weight;
}
else throw new Error("User not found");
await assetRegistry.update(WeightMaterial.Material);
}
``` But i am receiving following error in composer `Error: Out of stack space`
Can anyone help me with this error. I am trying to update asset using transaction in composer ```
/**
* @param {org.example.basic.MaterialWeight} WeightMaterial
* @transaction
*/
async function MaterialWeight(WeightMaterial) {
const assetRegistry = await getAssetRegistry('org.example.basic.Material');
const validAsset = await assetRegistry.exists(WeightMaterial.Material);
if(validAsset){
WeightMaterial.Material.weight+=WeightMaterial.weight;
}
else throw new Error("User not found");
await assetRegistry.update(WeightMaterial.Material);
}
``` But i am receiving following error in composer `Error: Out of stack space`
Can anyone help me with this error. I am trying to update asset using transaction in composer ```
/**
* @param {org.example.basic.MaterialWeight} WeightMaterial
* @transaction
*/
async function MaterialWeight(WeightMaterial) {
const assetRegistry = await getAssetRegistry('org.example.basic.Material');
const validAsset = await assetRegistry.exists(WeightMaterial.Material);
if(validAsset){
WeightMaterial.Material.weight+=WeightMaterial.weight;
}
else throw new Error("User not found");
await assetRegistry.update(WeightMaterial.Material);
}
``` But i am receiving following error in composer `Error: Out of stack space`
Hi guys! How can I resume deployed bussiness network when we stop and start my network?
Hi guys! How can I resume deployed bussiness network when we stop and start my network? I reinstalled bussiness network card and all data is lost.
[ ](https://chat.hyperledger.org/channel/composer?msg=QubtG9orjHCsqt28B) @ronaldlong46 THank you @ronaldlong46, However, the article you linked creates a normal user with sudo privileges, which makes him no longer a Normal user. is that a problem? is there a security issue with this approach.
@hauhm https://github.com/acloudfan/HLF-Windows-Fabric-Tool/blob/master/fabricUtil.sh
create file in the name of fabricUtil.sh
copy and paste code in that file from above link
whenever you going to stop computer
execute ./fabricUtil.sh stop
if you want to run fabric network again
execute ./fabricUtil.sh start
credit to @sureshtedla
Clipboard - January 25, 2019 12:27 PM
Clipboard - January 25, 2019 12:27 PM
Clipboard - January 25, 2019 12:27 PM
Clipboard - January 25, 2019 12:27 PM
Clipboard - January 25, 2019 12:27 PM
Clipboard - January 25, 2019 12:27 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=cQ7SLmWfDbA2AwGkt) SyntaxError: Unexpected token } in JSON at position 385
at JSON.parse (
[ ](https://chat.hyperledger.org/channel/composer?msg=cQ7SLmWfDbA2AwGkt) SyntaxError: Unexpected token } in JSON at position 385
at JSON.parse (
[ ](https://chat.hyperledger.org/channel/composer?msg=gpgo6PjSRkHZaQER3) and that my COMPOSER_PROVIDERS and COMPOSER_DATASOURCES
COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
},
}'
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
},
}'
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
I get this error when I run *docker logs -f rest*,
what I did is ran mongo in a docker container with this cmd *docker run -d --name mongo --network composer_default -p 27017:27017 mongo*, and run this ```
FROM hyperledger/composer-rest-server:0.19.12
RUN npm install --production loopback-connector-mongodb passport-local && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
`docker build -t myorg/composer-rest-server .`
anf finally i exported my env vars and executing source envvars.txt
```
COMPOSER_CARD=admin@stschain
COMPOSER_NAMESPACES=never
COMPOSER_AUTHENTICATION=true
COMPOSER_MULTIUSER=true
COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
},
}'
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
```
change the hostnames
```
sed -e 's/localhost:7051/peer0.org1.example.com:7051/' -e 's/localhost:7053/peer0.org1.example.com:7053/' -e 's/localhost:7054/ca.org1.example.com:7054/' -e 's/localhost:7050/orderer.example.com:7050/' < $HOME/.composer/cards/admin@stschain/connection.json > /tmp/connection.json && cp -p /tmp/connection.json $HOME/.composer/cards/admin@stschain/
```
then ```
docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ~/.composer:/home/composer/.composer \
--name rest \
--network composer_default \
-p 3000:3000 \
myorg/composer-rest-server
```
THAT WHAT I GOT WHEN I EXECUTE ```
docker logs rest
```
```
Discovering types from business network definition ...
(node:5565) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
SyntaxError: Unexpected token } in JSON at position 385
at JSON.parse (
I get this error when I run *docker logs -f rest*,
what I did is ran mongo in a docker container with this cmd *docker run -d --name mongo --network composer_default -p 27017:27017 mongo*, and run this ```
FROM hyperledger/composer-rest-server:0.19.12
RUN npm install --production loopback-connector-mongodb passport-local && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
`docker build -t myorg/composer-rest-server .`
anf finally i exported my env vars and executing source envvars.txt
```
COMPOSER_CARD=admin@stschain
COMPOSER_NAMESPACES=never
COMPOSER_AUTHENTICATION=true
COMPOSER_MULTIUSER=true
COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
},
}'
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
```
change the hostnames
```
sed -e 's/localhost:7051/peer0.org1.example.com:7051/' -e 's/localhost:7053/peer0.org1.example.com:7053/' -e 's/localhost:7054/ca.org1.example.com:7054/' -e 's/localhost:7050/orderer.example.com:7050/' < $HOME/.composer/cards/admin@stschain/connection.json > /tmp/connection.json && cp -p /tmp/connection.json $HOME/.composer/cards/admin@stschain/
```
then ```
docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ~/.composer:/home/composer/.composer \
--name rest \
--network composer_default \
-p 3000:3000 \
myorg/composer-rest-server
```
THAT WHAT I GOT WHEN I EXECUTE ```
docker logs rest
```
```
Discovering types from business network definition ...
(node:5565) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
SyntaxError: Unexpected token } in JSON at position 385
at JSON.parse (
I get this error when I run *docker logs -f rest*,
what I did is ran mongo in a docker container with this cmd *docker run -d --name mongo --network composer_default -p 27017:27017 mongo*, and run this ```
FROM hyperledger/composer-rest-server:0.19.12
RUN npm install --production loopback-connector-mongodb passport-local && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
`docker build -t myorg/composer-rest-server .`
anf finally i exported my env vars and executing source envvars.txt
```
COMPOSER_CARD=admin@stschain
COMPOSER_NAMESPACES=never
COMPOSER_AUTHENTICATION=true
COMPOSER_MULTIUSER=true
COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
},
}'
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
```
change the hostnames
```
sed -e 's/localhost:7051/peer0.org1.example.com:7051/' -e 's/localhost:7053/peer0.org1.example.com:7053/' -e 's/localhost:7054/ca.org1.example.com:7054/' -e 's/localhost:7050/orderer.example.com:7050/' < $HOME/.composer/cards/admin@stschain/connection.json > /tmp/connection.json && cp -p /tmp/connection.json $HOME/.composer/cards/admin@stschain/
```
then ```
docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ~/.composer:/home/composer/.composer \
--name rest \
--network composer_default \
-p 3000:3000 \
myorg/composer-rest-server
```
THAT WHAT I GOT WHEN I EXECUTE ```
docker logs rest
```
```
Discovering types from business network definition ...
(node:5565) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
SyntaxError: Unexpected token } in JSON at position 385
at JSON.parse (
I get this error when I run *docker logs -f rest*,
what I did is ran mongo in a docker container with this cmd *docker run -d --name mongo --network composer_default -p 27017:27017 mongo*, and run this ```
FROM hyperledger/composer-rest-server:0.19.12
RUN npm install --production loopback-connector-mongodb passport-local && \
npm cache clean --force && \
ln -s node_modules .node_modules
```
`docker build -t myorg/composer-rest-server .`
anf finally i exported my env vars and executing source envvars.txt
```
COMPOSER_CARD=admin@stschain
COMPOSER_NAMESPACES=never
COMPOSER_AUTHENTICATION=true
COMPOSER_MULTIUSER=true
COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
},
}'
COMPOSER_DATASOURCES='{
"db": {
"name": "db",
"connector": "mongodb",
"host": "mongo"
}
}'
```
change the hostnames
```
sed -e 's/localhost:7051/peer0.org1.example.com:7051/' -e 's/localhost:7053/peer0.org1.example.com:7053/' -e 's/localhost:7054/ca.org1.example.com:7054/' -e 's/localhost:7050/orderer.example.com:7050/' < $HOME/.composer/cards/admin@stschain/connection.json > /tmp/connection.json && cp -p /tmp/connection.json $HOME/.composer/cards/admin@stschain/
```
then ```
docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ~/.composer:/home/composer/.composer \
--name rest \
--network composer_default \
-p 3000:3000 \
myorg/composer-rest-server
```
THAT WHAT I GOT WHEN I EXECUTE ```
docker logs rest
```
```
Discovering types from business network definition ...
(node:5565) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Added schemas for all types to Loopback
SyntaxError: Unexpected token } in JSON at position 385
at JSON.parse (
Hi there, I have an ACL question. When the ACLs are being evaluated, and one gets and error like this, `[cause=Participant 'org.example.participant.DifferentMember#vkensington' does not have 'READ' access to resource 'org.example.participant.Member#user1']` is there a way to catch it, or ignore it and keep evaluating the ACL rules? it seems to be linked to a Promise rejection. Or will this automatically return false and keep evaluating the rules?
@irkoch the next step after adding the schema's is starting the web server. In your `COMPOSER_PROVIDERS` JSON you have a dangling comma, i'm not sure if that is the issue, but it might be worth checking out.
```json
COMPOSER_PROVIDERS='{
"local": {
"provider": "local",
"module": "passport-local",
"usernameField": "username",
"passwordField": "password",
"authPath": "/auth/local",
"successRedirect": "/",
"failureRedirect": "/"
}, // <------------
}'
```
I am unable to start the tutorial network
hyper1@UB1:~/fabric-dev-servers/tutorial-network$ composer network start --networkName tutorial-network --networkVersion 0.0.2 -A admin -S adminpw -c PeerAdmin@fabric-network
Starting business network tutorial-network at version 0.0.2
Processing these Network Admins:
userName: admin
â Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction e47c2de2db06dd513129eccf505faa11bd8a8651c2fb5dc6da53f5babadeb52d: error starting container: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code ENETUNREACH
npm ERR! errno ENETUNREACH
npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: connect ENETUNREACH 104.16.17.35:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2019-01-26T05_15_50_618Z-debug.log
"
Command failed
I can do a curl, proxy may not be the issue
hyper1@UB1:~/fabric-dev-servers/tutorial-network$ curl -O https://registry.npmjs.org/composer-common
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 8764k 100 8764k 0 0 3441k 0 0:00:02 0:00:02 --:--:-- 3442k
hyper1@UB1:~/fabric-dev-servers/tutorial-network$ curl -O https://registry.npmjs.org/composer-common
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 8764k 100 8764k 0 0 3441k 0 0:00:02 0:00:02 --:--:-- 3442k
hyper1@UB1:~/fabric-dev-servers/tutorial-network$ composer -v
v0.20.6
hyper1@UB1:~/fabric-dev-servers/tutorial-network$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
df23f5fe64df hyperledger/fabric-peer:1.2.1 "peer node start" 26 minutes ago Up 26 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
823c60a69451 hyperledger/fabric-ca:1.2.1 "sh -c 'fabric-ca-seâ¦" 26 minutes ago Up 26 minutes 0.0.0.0:7054->7054/tcp ca.org1.example.com
8fcf0e677e47 hyperledger/fabric-orderer:1.2.1 "orderer" 26 minutes ago Up 26 minutes 0.0.0.0:7050->7050/tcp orderer.example.com
a1e1c4545e2d hyperledger/fabric-couchdb:0.4.10 "tini -- /docker-entâ¦" 26 minutes ago Up 26 minutes 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
hyper1@UB1:~$ docker logs peer0.org1.example.com
019-01-26 05:15:48.307 UTC [gossip/discovery] periodicalSendAlive -> DEBU 4dd Sleeping 5s
2019-01-26 05:15:51.137 UTC [chaincode-platform] func1 -> ERRO 4de Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code ENETUNREACH
npm ERR! errno ENETUNREACH
npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: connect ENETUNREACH 104.16.17.35:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2019-01-26T05_15_50_618Z-debug.log
"
2019-01-26 05:15:51.143 UTC [dockercontroller] deployImage -> ERRO 4df Error building images: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code ENETUNREACH
npm ERR! errno ENETUNREACH
npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: connect ENETUNREACH 104.16.17.35:443
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2019-01-26T05_15_50_618Z-debug.log
"
2019-01-26 05:15:51.145 UTC [dockercontroller] deployImage -> ERRO 4e0 Image Output:
********************
********************
what command line tooling will replace hyperledger composer?
I often user composer command line to do things but I hear composer will be less supported?
I have setup Hyperledger Fabric blockchain network using AWS Managed blockchain following this link https://docs.aws.amazon.com/managed-blockchain/latest/managementguide/managed-blockchain-get-started-tutorial.html , everything working perfectly fine, I can install and instantiate the chiancode, also succeeded to run sample provided for non-profit blockchian https://github.com/aws-samples/non-profit-blockchain/tree/master/ngo-chaincode . Now I want to create business network and network card with Hypderledger Composer but want to make sure that the blockchain network created by following AWS Managed blockchain, after Composer installation when I create the business network and network card it is using default Hyperledger fabric network not the one which was created using AWS Blockchain , is it possible to use Hyperledger Composer the way I want if yes then please let me know how?
My Requirement is to create "Create A Business Network Card" using Amazon managed Blockchain network information.
e.g
MSPID, Orderer, Peers and CA
Can anyone help me with this error. I am trying to update asset using transaction in composer ```
/**
* @param {org.example.basic.MaterialWeight} WeightMaterial
* @transaction
*/
async function MaterialWeight(WeightMaterial) {
const assetRegistry = await getAssetRegistry('org.example.basic.Material');
const validAsset = await assetRegistry.exists(WeightMaterial.Material);
if(validAsset){
WeightMaterial.Material.weight+=WeightMaterial.weight;
}
else throw new Error("User not found");
await assetRegistry.update(WeightMaterial.Material);
}
``` But i am receiving following error in composer `Error: Out of stack space`
Has joined the channel.
Has joined the channel.
Hi all,
I have a network setup with peer named *peer0.org1.example.com*, but when I install *BNA* to my network will create a new peer named *dev-peer0.org1.example.com-samplenetwork-0.0.1*. This is how it actually works?
Hi all,
I have a network setup with peer named *peer0.org1.example.com*, but when I install *BNA* to my network will create a new peer named *dev-peer0.org1.example.com-samplenetwork-0.0.1*. This is how it actually works?
I have followed these steps:
1.composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
2.composer network start --networkName tutorial-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
3.composer card import --file networkadmin.card
4.composer network ping --card admin@tutorial-network
Ping status is success.
Has joined the channel.
Has joined the channel.
Hi people hope you're having a good day, I would like to know about the performance of the Historian in the hyperledger fabric, I am building a model where in our use case I would need to reach out to the historian for evidence of transactions that could go to millions for a single participant or asset. With some calculations and testing on 10000 transactions it takes 21 seconds to retrieve the entire historian record through http request through the composer rest server I am worried that it might bring the entire server down or take a tremendous amount of time to retrieve a huge record that could be in the millions. Can anyone provide with an insight?
*Deploy a BNA on a multi-node network which is running in SWARM (overlay)*
*Deploy a BNA on a multi-node network which is running in SWARM (overlay)* I've been experimenting with Hyperledger Fabric, deployed over 2 VirtualBox Ubuntu images with docker swarm. But I have some issues when it comes to the Composer installation.
*Deploy a BNA on a multi-node network which is running in SWARM (overlay)* I've been experimenting with Hyperledger Fabric, deployed over 2 VirtualBox Ubuntu images with docker swarm. But I have some issues when it comes to the Composer installation. composer network install --card PeerAdmin@org --archiveFile bond-network@0.0.1.bna ✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
*Deploy a BNA on a multi-node network which is running in SWARM (overlay)* I've been experimenting with Hyperledger Fabric, deployed over 2 VirtualBox Ubuntu images with docker swarm. But I have some issues when it comes to the Composer installation. composer network install --card PeerAdmin@org --archiveFile bond-network@0.0.1.bna ~✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed~
*Deploy a BNA on a multi-node network which is running in SWARM (overlay)* I've been experimenting with Hyperledger Fabric, deployed over 2 VirtualBox Ubuntu images with docker swarm. But I have some issues when it comes to the Composer installation. composer network install --card PeerAdmin@org --archiveFile bond-network@0.0.1.bna ````
~✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed~
``` `
*Deploy a BNA on a multi-node network which is running in SWARM (overlay)* I've been experimenting with Hyperledger Fabric, deployed over 2 VirtualBox Ubuntu images with docker swarm. But I have some issues when it comes to the Composer installation. ```
``` composer network install --card PeerAdmin@org --archiveFile bond-network@0.0.1.bna ````
~✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed~
``` `
@Sarath_Kumar those are addition containers that are added for each peer running in network
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=HdtgdgQKqpu9sj6dn) @SahithiDyavarashetti what is the use of those containers?
[ ](https://chat.hyperledger.org/channel/composer?msg=HdtgdgQKqpu9sj6dn) @SahithiDyavarashetti what is the use of those containers? Any idea
Does hyperledger support sharding for the Historian ?
Does hyperledger support sharding of the world state database ?
does somebody have some tips on making the rest server faster? Right now it takes 1.8s to do a POST request?
It is insane how slow it is when you querry the System.Historian which retrieves the record of the entire transactions taking place in the network
for 10K transactions recorded it takes 21 seconds imagine when you use that for a year and you want to track 1M transactions associated with a single asset
would it take days?
@Jehutty there should be some solution to this, also searching for it..
Has left the channel.
Hi experts, is CORS enabled in rest server?
Hi all, i am trying to call the callback function using Microsoft Edge browser, and i am getting an empty string error with the following Http failure response for (unknown url): 0 Unknown Error
Has joined the channel.
what are the cases where user can also be a participant??
what are the specific cases where participant can also be an asset?
Has joined the channel.
Given that https://composer-playground.mybluemix.net runs completely client side storing data within the browser, Is there an example where i can deploy my custom app front end to run client side for demo purposes, where i don't need to deploy hyperledger, i can just simulate it with a set of staticly hosted files?
Has joined the channel.
Has joined the channel.
Error: attempt to get property value on an InvalidRelationship is not allowed. InvalidRelationship created due to Object with ID '3117' in collection with ID 'Asset:org.example.basic.SampleAsset' does not exist
This error happens in the composer sandbox when trying to submit a transaction even if you use the random generator - no mater what is in the "" field it gives this error: Error: attempt to get property value on an InvalidRelationship is not allowed. InvalidRelationship created due to Object with ID '3117' in collection with ID 'Asset:org.example.basic.SampleAsset' does not exist
Has joined the channel.
guys, I have a question when I want using another api in composer business network lib/logic.js. how to use? i have error "not found require()"
guys, I have a question when I want using another api in composer business network lib/logic.js. how to use? i have error "not found require()"
guys, I have a question when I want using another api in composer business network lib/logic.js. how to use? i have error "not found require()"
Has joined the channel.
Has joined the channel.
Can anyone help me with this error ?
```
Error: Error trying to ping. Error: 2 UNKNOWN: access denied: channel [composerchannel] creator org [Org1MSP] Command failed
```
[ ](https://chat.hyperledger.org/channel/composer?msg=DJRHTecrM292ozcQ5) @Woo-sikJung Transaction processor functions cannot have _include_ or _require_
I'm not sure if this is documented in the "official" documentation but it is mentioned in this section of the Composer Knowledge Wiki: https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#information_source--composer-network-start-issues
Has joined the channel.
Has joined the channel.
hi there, the report to the TSC is due for Composer, could anyone here cdo it? @dselman all the IBMers on Composer are out this week...
hi there, the report to the TSC is due for Composer, could anyone here do it? @dselman all the IBMers on Composer are out this week...
Has joined the channel.
after getting an asset from registry in runtime (say A), I want to access a field from one of A's relation fields (suppose A.B is is relationship and i want to access field C of B, like A.B.C). So, can I do that or will I have to get that also from registry?
[ ](https://chat.hyperledger.org/channel/composer?msg=LTYqTMvuLxQQw4KHN) @hauhm Did you check the card list?
Has joined the channel.
Hi Everyone, question on optional fields in assets. How can i push to them after the asset is created? can anyone point me to the documentation of optional fields?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=6pbzGmCuP59xueH67) Ive tried altering the block settings, reduced number of nodes to 2, CPU is not maxing out. Not sure why all the transactions are not getting through to the ledger. It is as if not all the post requests are arriving at the orderer, i am receiving json code 200 indicating all the transactions have been sent. Would anyone have any advice on how to find the problem please?
Has joined the channel.
Hi everyone,
anyone knows if it is possible to activate PBFT consensus plugin in composer?
Has joined the channel.
for a transaction processing function in hyperledger composer archive, does it need to be in lib/logic.js ? can I create a different file name and how can that work?
is it just the case that it must be in the lib dir?
[ ](https://chat.hyperledger.org/channel/composer?msg=bRcc97KuX6L7xvfxJ) @PhilipAndrew You can give the file a different name, just make sure the composer archive command keeps working. Otherwise you should develop the code in the playground and export it to a .bna file
thanks @benjamin.verhaegen
Hello everyone. I am facing one problem in this query query selectRequestedIdProofsByOwner {
description: "Select identity proofs for assigned owner and given in proofNames"
statement:
SELECT org.example.identitynetwork.IdentityProof
WHERE ((owner == _$owner) AND (proofName == _$proofName))
}
Hello everyone. I am facing one problem in this query selectRequestedIdProofsByOwner {
description: "Select identity proofs for assigned owner and given in proofNames"
statement:
SELECT org.example.identitynetwork.IdentityProof
WHERE ((owner == _$owner) AND (proofName == _$proofName))
}
Hello everyone. I am facing one problem in this query statement:
SELECT org.example.identitynetwork.IdentityProof
WHERE ((owner == _$owner) AND (proofName == _$proofName))
my cto is:
asset IdentityProof identified by proofId {
o String proofId
o ProofType proofName
o IssueStatus issueStatus default = 'PENDING'
o String encodedData
o DateTime issuedDate optional
o DateTime renewDate optional
o DateTime lastUpdated optional
--> Citizen owner
--> Verifier[] allowedVerifiers optional
}
now in logic.js
let idProofs = await query('selectRequestedIdProofsByOwner',{"owner":accessRequest.proofOwner,"proofName":proofName});
I'm getting no results even if there is data
But once I remove this part in query : AND (proofName == _$proofName)
It works
How would you match string in query
just like 'LIKE' operator in Standard SQL
how to show transactions in the frontend.
Has joined the channel.
does anyone know why when I run "composer card list" I get this error: "Error: Unable to read required file: metadata.json"
in the /home/.composer i have the following dirs:
I have the following folgers in home/.composer: cards, client-data and logs
https://stackoverflow.com/questions/54441824/how-to-match-string-in-query-file-in-hyperledger-composer
I will appreaciate if someone answers above question. Thanks.
[ ](https://chat.hyperledger.org/channel/composer?msg=oqsDT2zaQgtZoCSjF) @agile01 did you test the query outside a transaction? Like in composer-rest-server?
@rthatcher composer-rest-server is terminated in the middle ? what is the reason for abnormal termination of composer-rest-server
@rthatcher can you please help me
Has left the channel.
Has joined the channel.
Hi guys, is it possible to run my cucumber tests in a real fabric environment and not in the composer-runtime? if it is posible.. how should i configure cucumber to use fabric? i cant find any documentation about this matter
Has joined the channel.
Has joined the channel.
Hello, everyone. I want to know how chaincode logic.js can be debugged, or can view logs ? thanks.
I'm unable to add issue in https://github.com/hyperledger/blockchain-explorer/ while im able to add issue for hyperledger composer in https://github.com/hyperledger/composer/
@jxddmoto R u using hyperledger composer if yes then u can upload bna file in hyperledger composer playground and test there .
@SahithiDyavarashetti Thanks.
Using Hyperledger composer, But I can't see the output log in console
U cannot see logs in console .If u upload bna in playground,then u can see where is exact error as error are displayed as alert there.And u can test ua logic.js methods in test section,then go to submit transaction in playground and text ua methods .
U need to create participants assets again when u upload bna in playground
@jxddmoto
Screen Shot 2019-01-31 at 4.39.55 PM.png
@SahithiDyavarashetti Error in composer playground test
Send me the entire json Data Preview @jxddmoto
{
"$class": "com.laresblockchain.healthcare.UpdateSample",
"updater": "resource:com.laresblockchain.healthcare.Business#1",
"sample": {
"$class": "com.laresblockchain.healthcare.Sample",
"sampleId": "sampleId",
"patient": "resource:com.laresblockchain.healthcare.Patient#1",
"sampleType": "sampleType",
"sampleDate": "2019-01-17T02:50:31.000Z",
"sampleStatus": "Live",
"sampleLocation": {
"$class": "com.laresblockchain.healthcare.SampleAddress",
"location": "location",
"name": "John",
"sampleType": "location"
},
"expiryDate": "2019-02-30T02:50:31.000Z",
"storageDate": "2019-01-18T03:35:31.000Z"
}
}
did u deploy this bna using composer start and install commands @jxddmoto
yeah.
Because I had no problem testing anything else. @SahithiDyavarashetti
Is it working fine there .I mean did u get any error while installing,starting,importing card and pinging the network?
@jxddmoto
no any error . However, there was an error in creating the ID card
Screen Shot 2019-01-31 at 4.54.07 PM.png
issue New ID
@SahithiDyavarashetti
Installation, startup, import without any errors .
R u creating ID with valid admin credentails
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi, can someone help me how to setup and run hyperledger composer application in two different machines?
Has joined the channel.
Has joined the channel.
@tarun32 please see this article https://medium.com/@wahabjawed/hyperledger-fabric-on-multiple-hosts-a33b08ef24f
Has joined the channel.
Hi! I'm working with Hyperledger Composer and when i submit a transaction , i have to add manually the ID of Asset and Participiant. Is there a way to set up these ID automatically Without add it whenever i have to submit a transaction? Is there a javascript example code of smart contract ?
[ ](https://chat.hyperledger.org/channel/composer?msg=dG3qaTdEGTAyYH7uQ) @FilippoD can you show me your code? I don't understand what you mean?
[ ](https://chat.hyperledger.org/channel/composer?msg=dG3qaTdEGTAyYH7uQ) @FilippoD can you show me your code? I don't understand what you mean
is it possible to run my cucumber tests in a real fabric environment and not in the composer-runtime-embedded?
looking at composer-cucumber-steps package, it seems not possible without touching the code. Card names and hardcoded... i am trying to switch these cards in my composer wallet to point my fabric environment without luck.
looking at composer-cucumber-steps package, it seems not possible without touching the code. Card names are hardcoded... i am trying to switch these cards in my composer wallet to point my fabric environment without luck.
how do you guys test your composer bussiness networks against a real fabric environment?
[ ](https://chat.hyperledger.org/channel/composer?msg=tRu9DLLb9g9W7j7r8) @CesarGonzalez you may want to try this ,, https://github.com/hyperledger/fabric-samples/tree/release-1.4/balance-transfer
hi friends, the following is the error when i try to install chaincode from the composer playground ui. i cannot find a solution.can anyone please help to find a solution.also what is this ACTIVATION_REQUIRED
The current identity, with the name 'admin' and the identifier '960b19fccaf908492c879671a74cce1ccab3cc99943a6b6a3b7def827742b9fc', must be activated (ACTIVATION_REQUIRED)
2019-02-01 07:55:01.839 UTC [chaincode] ExecuteChaincode -> ERRO 005 transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '960b19fccaf908492c879671a74cce1ccab3cc99943a6b6a3b7def827742b9fc', must be activated (ACTIVATION_REQUIRED)
github.com/hyperledger/fabric/core/chaincode.Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/exectransaction.go:83
github.com/hyperledger/fabric/core/chaincode.ExecuteChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincodeexec.go:85
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:93
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:132
github.com/hyperledger/fabric/core/endorser.(*Endorser).simulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:265
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:491
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:781
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2337
hi friends,i have created a hyperleder network with v1.1 and created a peeradmin card.but when i tried to install chaincode with user:admin and secret:adminpw i am getting the following logs in peer.but the chain code works fine.but if i try to install another chanin code it is throwing error saying peer not respond. also what is this ACTIVATION_REQUIRED.can anyone help please its urgent
The current identity, with the name 'admin' and the identifier '960b19fccaf908492c879671a74cce1ccab3cc99943a6b6a3b7def827742b9fc', must be activated (ACTIVATION_REQUIRED)
2019-02-01 07:55:01.839 UTC [chaincode] ExecuteChaincode -> ERRO 005 transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '960b19fccaf908492c879671a74cce1ccab3cc99943a6b6a3b7def827742b9fc', must be activated (ACTIVATION_REQUIRED)
github.com/hyperledger/fabric/core/chaincode.Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/exectransaction.go:83
github.com/hyperledger/fabric/core/chaincode.ExecuteChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincodeexec.go:85
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:93
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:132
github.com/hyperledger/fabric/core/endorser.(*Endorser).simulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:265
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:491
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:781
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2337
hi friends,i have created a hyperleder network with v1.1 and created a peeradmin card.but when i tried to install chaincode with user:admin and secret:adminpw i am getting the following logs in peer.but the chain code works fine.but if i try to install another chanin code it is throwing error saying peer not respond. also what is this ACTIVATION_REQUIRED.can anyone help please its urgent
The current identity, with the name 'admin' and the identifier '960b19fccaf908492c879671a74cce1ccab3cc99943a6b6a3b7def827742b9fc', must be activated (ACTIVATION_REQUIRED)
2019-02-01 07:55:01.839 UTC [chaincode] ExecuteChaincode -> ERRO 005 transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '960b19fccaf908492c879671a74cce1ccab3cc99943a6b6a3b7def827742b9fc', must be activated (ACTIVATION_REQUIRED)
github.com/hyperledger/fabric/core/chaincode.Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/exectransaction.go:83
github.com/hyperledger/fabric/core/chaincode.ExecuteChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincodeexec.go:85
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:93
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:132
github.com/hyperledger/fabric/core/endorser.(*Endorser).simulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:265
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:491
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:781
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2337
where we can define the block size in hyperledger fabric
@AkhilKura in your configtx.yaml
[ ](https://chat.hyperledger.org/channel/composer?msg=dTLmB33JjWrpQavF4) @waleed `function SendPrescription(tx) {
var IDCF = tx.IDCF;
tx.IDCF.doctor = tx.newDoctor;
return getAssetRegistry('org.example.healthdata.Health_Provision')
.then(function (assetRegistry) {
return assetRegistry.update(tx.IDCF);
});
}`
[ ](https://chat.hyperledger.org/channel/composer?msg=dTLmB33JjWrpQavF4) @waleed `function SendPrescription(tx) {
var IDCF = tx.IDCF;
tx.IDCF.doctor = tx.newDoctor;
return getAssetRegistry('org.example.healthdata.Health_Provision')
.then(function (assetRegistry) {
return assetRegistry.update(tx.IDCF);
});
}` When i submit a transaction with Hyperledger Composer i have to put the ID of the doctor and the ID of the asset. In this case the Patient choose manually the ID of the doctor because he has to send the prescription. But is there a way to make automated the insertion of Asset ID without writing every time who submit the transaction?
[ ](https://chat.hyperledger.org/channel/composer?msg=dTLmB33JjWrpQavF4) @waleed `function SendPrescription(tx) {
var IDCF = tx.IDCF;
tx.IDCF.doctor = tx.newDoctor;
return getAssetRegistry('org.example.healthdata.Health_Provision')
.then(function (assetRegistry) {
return assetRegistry.update(tx.IDCF);
});
}` When i submit a transaction with Hyperledger Composer i have to put the ID of the doctor and the ID of the asset. In this case the Patient choose manually the ID of the doctor because he has to send the prescription. But is there a way to make automated the insertion of Asset ID without writing it every time who submit the transaction?
Clipboard - February 1, 2019 4:16 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=iX64noAE9jqo5EMu6) hi anyone know the problem.please help
[ ](https://chat.hyperledger.org/channel/composer?msg=iX64noAE9jqo5EMu6) hi can anyone help on the problem mentioned below
When doing a curl request I get: unacceptable?
but the post still work, GET doesn't
Hi guys i am receiving following error while importing PeerAdmin card ```
composer card import -f PeerAdmin@byfn-network-org1.card
Failed to import the business network card
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: certificateAuthorities
message: should have required property 'certificateAuthorities'
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: orderers
message: should have required property 'orderers'
keyword: required
dataPath: .organizations['orderers']
schemaPath: #/required
params:
missingProperty: mspid
message: should have required property 'mspid'
keyword: type
dataPath: .organizations['orderers'].peers
schemaPath: #/properties/peers/type
params:
type: array
message: should be array
keyword: required
dataPath:
schemaPath: #/required
params:
missingProperty: peers
message: should have required property 'peers'
Error: Errors found in the connection profile in the card
Command failed
```
This is my connection.json file
```
{
"name": "saeedi",
"x-type": "hlfv1",
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},
"channels": {
"composerchannel": {
"orderers": [
"orderer.example.com"
],
"peers": {
"peer0.org1.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer1.org1.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer2.org1.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com",
"peer1.org1.example.com",
"peer2.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
},
"orderers": {
"orderer.example.com": {
"url": "grpcs://10.200.10.97:7050",
"grpcOptions": {
"ssl-target-name-override": "orderer.example.com"
},
"tlsCACerts": {
"pem": ""
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpcs://10.200.10.97:7051",
"grpcOptions": {
"ssl-target-name-override": "peer0.org1.example.com"
},
"tlsCACerts": {
"pem": ""
}
},
"peer1.org1.example.com": {
"url": "grpcs://10.200.10.98:8051",
"grpcOptions": {
"ssl-target-name-override": "peer1.org1.example.com"
},
"tlsCACerts": {
"pem": ""
}
},
"peer2.org1.example.com": {
"url": "grpcs://10.200.10.99:9051",
"grpcOptions": {
"ssl-target-name-override": "peer2.org1.example.com"
},
"tlsCACerts": {
"pem": ""
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "https://10.200.10.97:7054",
"caName": "ca.org1.example.com",
"httpOptions": {
"verify": false}}}}}}}
```
I have removed *pem* contents as msg was too long
Anyone give some idea about how to interact with two different network with different org using composer
[ ](https://chat.hyperledger.org/channel/composer?msg=xoYwTnpFnopPMxwBH) @JP You can follow this tutorial: https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
Has joined the channel.
FILIPPO
Has joined the channel.
composer.png
[ ](https://chat.hyperledger.org/channel/composer?msg=7eMShsQQcLcZn7bRd) @FilippoD This is just how the Composer Playground works, short of modifying the code I think there's nothing you can do about it
[ ](https://chat.hyperledger.org/channel/composer?msg=3wHBsJooQjfBZmNEQ) @silliman Ok ! I understand , thanks you very much !
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hi, I was wondering if this statement made by Microsoft is true in that Hyperledger Composer is being deprecated?
>Cale Teeter [caleteet@MSFT] Eduardo Marquez • 7 days ago
Unfortunately, composer is not part of the deployments, primarily because this product is deprecated and there were some issues with version 1.3.
Hi, I was wondering if this statement made by Microsoft is true in that Hyperledger Composer is being deprecated?
>Cale Teeter [caleteet@MSFT] Eduardo Marquez • 7 days ago
>Unfortunately, composer is not part of the deployments, primarily because this product is deprecated and there were some issues with version 1.3.
Hi, I was wondering if this statement made by Microsoft is true in that Hyperledger Composer is being deprecated?
>Cale Teeter [caleteet@MSFT] Eduardo Marquez • 7 days ago
Unfortunately, composer is not part of the deployments, primarily because this product is deprecated and there were some issues with version 1.3.
Hi, I was wondering if this statement made by Microsoft is true in that Hyperledger Composer is being deprecated?
>Cale Teeter [caleteet@MSFT] Eduardo Marquez • 7 days ago. Unfortunately, composer is not part of the deployments, primarily because this product is deprecated and there were some issues with version 1.3.
how to call https request inside the composer
Hi All, Anyone can explain how to call https request inside the composer?
Hi, i am trying to deploy network with tls enabled, but i am facing following errors. ```
2019-02-04 05:25:54.791 UTC [orderer/commmon/multichannel] commitBlock -> DEBU 452 [channel: composerchannel] Wrote block 1
2019-02-04 05:30:35.115 UTC [grpc] Printf -> DEBU 453 grpc: Server.Serve failed to complete security handshake from "172.21.0.1:57046": remote error: tls: bad certificate
2019-02-04 05:30:36.114 UTC [grpc] Printf -> DEBU 454 grpc: Server.Serve failed to complete security handshake from "172.21.0.1:57050": remote error: tls: bad certificate
2019-02-04 05:30:37.961 UTC [grpc] Printf -> DEBU 455 grpc: Server.Serve failed to complete security handshake from "172.21.0.1:57054": remote error: tls: bad certificate
2019-02-04 05:31:06.840 UTC [grpc] Printf -> DEBU 456 grpc: Server.Serve failed to complete security handshake from "10.200.10.98:57912": remote error: tls: bad certificate
2019-02-04 05:31:07.840 UTC [grpc] Printf -> DEBU 457 grpc: Server.Serve failed to complete security handshake from "10.200.10.98:57914": remote error: tls: bad certificate
2019-02-04 05:31:09.474 UTC [grpc] Printf -> DEBU 458 grpc: Server.Serve failed to complete security handshake from "10.200.10.98:57916": remote error: tls: bad certificate
2019-02-04 05:31:34.358 UTC [grpc] Printf -> DEBU 459 grpc: Server.Serve failed to complete security handshake from "10.200.10.99:38420": remote error: tls: bad certificate
2019-02-04 05:31:35.358 UTC [grpc] Printf -> DEBU 45a grpc: Server.Serve failed to complete security handshake from "10.200.10.99:38422": remote error: tls: bad certificate
2019-02-04 05:31:36.642 UTC [grpc] Printf -> DEBU 45b grpc: Server.Serve failed to complete security handshake from "10.200.10.99:38424": remote error: tls: bad certificate
```
```
grpc: Server.Serve failed to complete security handshake from "172.21.0.1:57046": remote error: tls: bad certificate
``` Please help
```
grpc: Server.Serve failed to complete security handshake from "172.21.0.1:57046": remote error: tls: bad certificate
``` There is also follwoing error while creating channel > 2019-02-04 07:18:40.689 UTC [common/deliver] Handle -> DEBU 2f7 Waiting for new SeekInfo from 172.24.0.1:41290
> 2019-02-04 07:18:40.689 UTC [common/deliver] Handle -> DEBU 2f8 Attempting to read seek info message from 172.24.0.1:41290
> 2019-02-04 07:18:40.693 UTC [common/deliver] Handle -> WARN 2f9 Error reading from 172.24.0.1:41290: rpc error: code = Canceled desc = context canceled
> 2019-02-04 07:18:40.693 UTC [orderer/common/server] func1 -> DEBU 2fa Closing Deliver stream
```
grpc: Server.Serve failed to complete security handshake from "172.21.0.1:57046": remote error: tls: bad certificate
``` There is also following error while creating channel ```
2019-02-04 07:18:40.689 UTC [common/deliver] Handle -> DEBU 2f7 Waiting for new SeekInfo from 172.24.0.1:41290
2019-02-04 07:18:40.689 UTC [common/deliver] Handle -> DEBU 2f8 Attempting to read seek info message from 172.24.0.1:41290
2019-02-04 07:18:40.693 UTC [common/deliver] Handle -> WARN 2f9 Error reading from 172.24.0.1:41290: rpc error: code = Canceled desc = context canceled
2019-02-04 07:18:40.693 UTC [orderer/common/server] func1 -> DEBU 2fa Closing Deliver stream
```
```
grpc: Server.Serve failed to complete security handshake from "172.21.0.1:57046": remote error: tls: bad certificate
``` There is also following error while creating channel ```
2019-02-04 07:18:40.689 UTC [common/deliver] Handle -> DEBU 2f7 Waiting for new SeekInfo from 172.24.0.1:41290
2019-02-04 07:18:40.689 UTC [common/deliver] Handle -> DEBU 2f8 Attempting to read seek info message from 172.24.0.1:41290
2019-02-04 07:18:40.693 UTC [common/deliver] Handle -> WARN 2f9 Error reading from 172.24.0.1:41290: rpc error: code = Canceled desc = context canceled
2019-02-04 07:18:40.693 UTC [orderer/common/server] func1 -> DEBU 2fa Closing Deliver stream
```
```
grpc: Server.Serve failed to complete security handshake from "172.21.0.1:57046": remote error: tls: bad certificate
``` There is also following error while creating channel
> 2019-02-04 07:18:40.689 UTC [common/deliver] Handle -> DEBU 2f7 Waiting for new SeekInfo from 172.24.0.1:41290
> 2019-02-04 07:18:40.689 UTC [common/deliver] Handle -> DEBU 2f8 Attempting to read seek info message from 172.24.0.1:41290
>2019-02-04 07:18:40.693 UTC [common/deliver] Handle -> WARN 2f9 Error reading from 172.24.0.1:41290: rpc error: code = Canceled desc = context canceled
> 2019-02-04 07:18:40.693 UTC [orderer/common/server] func1 -> DEBU 2fa Closing Deliver stream
```
grpc: Server.Serve failed to complete security handshake from "172.21.0.1:57046": remote error: tls: bad certificate
``` There is also following error while creating channel
> 2019-02-04 07:18:40.689 UTC [common/deliver] Handle -> DEBU 2f7 Waiting for new SeekInfo from 172.24.0.1:41290
> 2019-02-04 07:18:40.689 UTC [common/deliver] Handle -> DEBU 2f8 Attempting to read seek info message from 172.24.0.1:41290
> 2019-02-04 07:18:40.693 UTC [common/deliver] Handle -> WARN 2f9 Error reading from 172.24.0.1:41290: rpc error: code = Canceled desc = context canceled
> 2019-02-04 07:18:40.693 UTC [orderer/common/server] func1 -> DEBU 2fa Closing Deliver stream
```
grpc: Server.Serve failed to complete security handshake from "172.21.0.1:57046": remote error: tls: bad certificate
``` There is also following error while creating channel > 2019-02-04 07:18:40.689 UTC [common/deliver] Handle -> DEBU 2f7 Waiting for new SeekInfo from 172.24.0.1:41290
> 2019-02-04 07:18:40.689 UTC [common/deliver] Handle -> DEBU 2f8 Attempting to read seek info message from 172.24.0.1:41290
> 2019-02-04 07:18:40.693 UTC [common/deliver] Handle -> WARN 2f9 Error reading from 172.24.0.1:41290: rpc error: code = Canceled desc = context canceled
> 2019-02-04 07:18:40.693 UTC [orderer/common/server] func1 -> DEBU 2fa Closing Deliver stream
Has joined the channel.
How to index multidimensional arrays in couchdb ?? can anyone help me with this.
Has joined the channel.
Has joined the channel.
hi
anyone help me how can i access the participant detail dynamically, i mean using the card?
Has joined the channel.
Hi I'm a newbie and fabric. I successfully deployed and started my network using composer. However I want to upgrade my chaincode so I followed the documentation: https://hyperledger.github.io/composer/v0.19/business-network/upgrading-bna. However I always seem to have this error please help
```
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction d9030252a44d693f6df717fc7539ec2c26aa205441b33b5c4d2cb5dfb0a813e8: timeout expired while starting chaincode sample-business-network:0.0.2 for transaction d9030252a44d693f6df717fc7539ec2c26aa205441b33b5c4d2cb5dfb0a813e8
```
Hi I'm a newbie in fabric. I successfully deployed and started my network using composer. However I want to upgrade my chaincode so I followed the documentation: https://hyperledger.github.io/composer/v0.19/business-network/upgrading-bna. However I always seem to have this error please help
```
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction d9030252a44d693f6df717fc7539ec2c26aa205441b33b5c4d2cb5dfb0a813e8: timeout expired while starting chaincode sample-business-network:0.0.2 for transaction d9030252a44d693f6df717fc7539ec2c26aa205441b33b5c4d2cb5dfb0a813e8
```
Hi I'm a newbie in fabric. I successfully deployed and started my network using composer. However I want to upgrade my chaincode so I followed the documentation: https://hyperledger.github.io/composer/v0.19/business-network/upgrading-bna. However I always seem to have this error please help thank you
```
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction d9030252a44d693f6df717fc7539ec2c26aa205441b33b5c4d2cb5dfb0a813e8: timeout expired while starting chaincode sample-business-network:0.0.2 for transaction d9030252a44d693f6df717fc7539ec2c26aa205441b33b5c4d2cb5dfb0a813e8
```
[ ](https://chat.hyperledger.org/channel/composer?msg=iX64noAE9jqo5EMu6) hi can any one help on the problem.please
Has joined the channel.
I noticed one thing about composer upgrading the blockchain when I change a field(add or remove) from an asset or participant model, all assets or participants created with that model deletes
Has joined the channel.
Hello everyone, I have followed this article and have a hyperledger fabric set up across two machines https://medium.com/@SDBC/multipeer-deployment-with-hyperledger-composer-v-0-19-1-e25eccf93efe. What is the best way to add composer on top of it?
Can we write queries for the Historian in the query file? Is it the same namespace or a particular one? Ex: org.companyname.HistorianRecored
Has joined the channel.
Hi all, i am facing an error with websockets when i listen to the rest server websocket address from an android device. when the device shutdown sudenly without closing the websocket correctly the whole rest server fires and error and restarts, i am using version 0.19.16. the error is as following from rest server logs: Error: read ETIMEDOUT
at TLSWrap.onread (net.js:622:25)
[2019-02-04T13:52:16.865Z] PM2 log: App [composer-rest-server] with id [0] and pid [101], exited with code [1] via signal [SIGINT]
[2019-02-04T13:52:16.867Z] PM2 log: Starting execution sequence in -fork mode- for app name:composer-rest-server id:0
[2019-02-04T13:52:16.871Z] PM2 log: App name:composer-rest-server id:0 online
Can anyone please help, maybe it si fixed in newer version?
Sorry i found it here: https://github.com/hyperledger/composer/commit/dab2b14e89ee0105d56a3f426c207654f1b144b4#diff-f63afb36d18252e93fbae11556cbd4b6
Please i get this error when i create transaction in my composer playground , `Error: Error trying invoke business network with transaction id ba120c9cde4a1db5801e5b8f75e6e3e562109eeda527b69e1bfc961dcf2bd7b6. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: ValidationException: Instance com.stschain.chemicals.ProductListingContract#002 has property supplier with type com.stschain.chemicals.Retailer that is not derived from com.stschain.chemicals.Supplier`
Hi All, I'm currently having a running Network started from composer with one channel. Can I make another new channel with use of existing peers and install bit different chaincode (bna) to that new channel using composer? Its actually different model and ACL file for the second channel. Please help me out here.
[ ](https://chat.hyperledger.org/channel/composer?msg=DoAem4uquiHiDRAf5) @amendafernando yes, you can. Composed does abstract the development process but it uses the same infrastructure.
[ ](https://chat.hyperledger.org/channel/composer?msg=7FQz8bgDkQeEH7zs6) @irkoch Apparently from the error, somehow you specified a relation to an invalid asset type in the asset ProductListingContract#002, check that specific asset and see what is set for Supplier.
[ ](https://chat.hyperledger.org/channel/composer?msg=9r8Pq4F55bthWsySt) @johnd_ed you need to generate the peer admin card. there is a file called createPeerAdminCard.sh edit that to your specification.
[ ](https://chat.hyperledger.org/channel/composer?msg=nEP3jvaudJ8qiFb8Q) @rrishmawi Thank you @rrishmawi . Please tell me the steps to follow in order to add new channel and chaincode to my existing peers using composer.
@rrishmawi that is my productListing
```
{
"$class": "com.stschain.chemicals.ProductListingContract",
"listingtId": "001",
"status": "EXEMPTCHECKREQ",
"products": [
{
"$class": "com.stschain.chemicals.Product",
"productId": "p1"
}
],
"owner": "resource:com.stschain.chemicals.Retailer#retailer@gmail.com",
"supplier": "resource:com.stschain.chemicals.Supplier#supplier@gmail.com"
}
```
@rrishmawi that is my productListing
```
{
"$class": "com.stschain.chemicals.ProductListingContract",
"listingtId": "001",
"status": "EXEMPTCHECKREQ",
"products": [
{
"$class": "com.stschain.chemicals.Product",
"productId": "p1"
}
],
"owner": "resource:com.stschain.chemicals.Retailer#retailer@gmail.com",
"supplier": "resource:com.stschain.chemicals.Supplier#supplier@gmail.com"
}
```
and that my transaction : createProdcutListing
```
{
"$class": "com.stschain.chemicals.createProductListing",
"listingtId": "003",
"status": "INITIALREQUEST",
"products": [
"p2"
],
"company": "resource:com.stschain.chemicals.Retailer#retailer@gmail.com"
}
```
Hi all
while installing composer CLI i'm getting the below error can some one help me to fix this
thanks in advance
stack Error: EACCES: permission denied, mkdir '/home/user/lib/node_modules/composer-cli/node_modules/node-report/build'
[ ](https://chat.hyperledger.org/channel/composer?msg=KWz44DvDuQpFv42MC) @irkoch CAn you provide the model?
Hi All,
How to find the installed chaincode details.
I have created BNA and deployed it into fabric network.
1. composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
2. composer network start --networkName tutorial-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
3. composer card import --file networkadmin.card
Hi All,
How to find the installed chaincode details like name.?
The given commands will install chaincode in all of the peers available in the network?
I have created BNA and deployed it into fabric network.
1. composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
2. composer network start --networkName tutorial-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
3. composer card import --file networkadmin.card
Has joined the channel.
I've made an application on hyperledger composer on a local server(composer playground) and now I wish to host it on the server like AWS or Digital Ocean. Is there a tutorial or documentation that can guide me through it. Please help!
[ ](https://chat.hyperledger.org/channel/composer?msg=ktf6GBpgwhHbKx4cs) @rrishmawi ```
transaction createProductListing {
o String listingtId
o Status status
o String[] products
--> Company company
}
```
```
participant Retailer identified by retailerId extends Company {
o String retailerId
o Product[] products
}
participant Importer identified by importerId extends Company {
o String importerId
}
participant Supplier identified by supplierId extends Company {
o String supplierId
o String countryId
o String orgId optional
}
participant Partner identified by url extends B2B {
o String url
}
participant Regulator identified by regulatorId extends Ministry {
o String regulatorId
o String[] exemptedOrgIds
o String[] exemptedProductIds
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=ktf6GBpgwhHbKx4cs) @rrishmawi ```
transaction createProductListing {
o String listingtId
o Status status
o String[] products
--> Company company
}
```
```
participant Retailer identified by retailerId extends Company {
o String retailerId
o Product[] products
}
participant Importer identified by importerId extends Company {
o String importerId
}
participant Supplier identified by supplierId extends Company {
o String supplierId
o String countryId
o String orgId optional
}
participant Partner identified by url extends B2B {
o String url
}
participant Regulator identified by regulatorId extends Ministry {
o String regulatorId
o String[] exemptedOrgIds
o String[] exemptedProductIds
}
```
and that my logic :blush:
```
* Create new product listing contrat for the list of prodcuts
* @param {com.stschain.chemicals.createProductListing} createProductListing
* @transaction
*/
function createProductListing(listing) {
if (listing.products == null || listing.products.length == 0) {
throw new Error('Product list Empty!!');
}
var factory = getFactory();
var productListing = factory.newResource('com.stschain.chemicals', 'ProductListingContract', listing.listingtId);
productListing.status = listing.status;
productListing.supplier = listing.company;
productListing.owner = listing.company;
productListing.products = [];
listing.products.forEach(function (item) {
var prodInfo = item.split(',');
var product = factory.newConcept('com.stschain.chemicals', 'Product');
product.productId = prodInfo[0];
product.countryId = listing.company.countryId;
if (prodInfo.length > 1) {
product.quantity = prodInfo[1];
} else {
product.quantity = '1';
}
productListing.products.push(product);
});
return getAssetRegistry('com.stschain.chemicals.ProductListingContract')
.then(function (listingRegistry) {
return listingRegistry.add(productListing);
});
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=ktf6GBpgwhHbKx4cs) @rrishmawi ```
transaction createProductListing {
o String listingtId
o Status status
o String[] products
--> Company company
}
```
```
abstract participant Company {
o String companyID optional
o String companyName optional
o String companyActivity optional
o Person[] employees optional
o Address address optional
o BusinessIdentity identity optional
o String civilDefenceNumber optional
}
participant Retailer identified by retailerId extends Company {
o String retailerId
o Product[] products
}
participant Importer identified by importerId extends Company {
o String importerId
}
participant Supplier identified by supplierId extends Company {
o String supplierId
o String countryId
o String orgId optional
}
participant Partner identified by url extends B2B {
o String url
}
participant Regulator identified by regulatorId extends Ministry {
o String regulatorId
o String[] exemptedOrgIds
o String[] exemptedProductIds
}
```
and that my logic :blush:
```
* Create new product listing contrat for the list of prodcuts
* @param {com.stschain.chemicals.createProductListing} createProductListing
* @transaction
*/
function createProductListing(listing) {
if (listing.products == null || listing.products.length == 0) {
throw new Error('Product list Empty!!');
}
var factory = getFactory();
var productListing = factory.newResource('com.stschain.chemicals', 'ProductListingContract', listing.listingtId);
productListing.status = listing.status;
productListing.supplier = listing.company;
productListing.owner = listing.company;
productListing.products = [];
listing.products.forEach(function (item) {
var prodInfo = item.split(',');
var product = factory.newConcept('com.stschain.chemicals', 'Product');
product.productId = prodInfo[0];
product.countryId = listing.company.countryId;
if (prodInfo.length > 1) {
product.quantity = prodInfo[1];
} else {
product.quantity = '1';
}
productListing.products.push(product);
});
return getAssetRegistry('com.stschain.chemicals.ProductListingContract')
.then(function (listingRegistry) {
return listingRegistry.add(productListing);
});
}
```
Hi, Im modeling a chaincode in compsoer-playground. Then I export it and I create an angular app with yeoman. But I want to make a search box automatically in my app, is it possible?
@rrishmawi thank's i resolved the problem, please i dont know why in playground put the Retailer in company as default ```
{
"$class": "com.stschain.chemicals.createProductListing",
"listingtId": "",
"status": "INITIALREQUEST",
"products": [],
"company": "resource:com.stschain.chemicals.Retailer#7860"
}
``` and my transaction modal is like that
```
abstract participant Company {
o String companyID optional
o String companyName optional
o String companyActivity optional
o Person[] employees optional
o Address address optional
o BusinessIdentity identity optional
o String civilDefenceNumber optional
}
participant Retailer identified by retailerId extends Company {
o String retailerId
o Product[] products
}
participant Importer identified by importerId extends Company {
o String importerId
}
participant Supplier identified by supplierId extends Company {
o String supplierId
o String countryId
o String orgId optional
}
transaction createProductListing {
o String listingtId
o Status status
o String[] products
--> Company company
}
```
@rrishmawi thank's I resolved the problem, please I don't know why in playground put the Retailer in the company property as default ```
{
"$class": "com.stschain.chemicals.createProductListing",
"listingtId": "",
"status": "INITIALREQUEST",
"products": [],
"company": "resource:com.stschain.chemicals.Retailer#7860"
}
``` despite in my transaction modal is look like this :
```
abstract participant Company {
o String companyID optional
o String companyName optional
o String companyActivity optional
o Person[] employees optional
o Address address optional
o BusinessIdentity identity optional
o String civilDefenceNumber optional
}
participant Retailer identified by retailerId extends Company {
o String retailerId
o Product[] products
}
participant Importer identified by importerId extends Company {
o String importerId
}
participant Supplier identified by supplierId extends Company {
o String supplierId
o String countryId
o String orgId optional
}
transaction createProductListing {
o String listingtId
o Status status
o String[] products
--> Company company
}
```
@rrishmawi thank's I resolved the problem, please I don't know why in playground put the Retailer in the company property as default ```
{
"$class": "com.stschain.chemicals.createProductListing",
"listingtId": "",
"status": "INITIALREQUEST",
"products": [],
"company": "resource:com.stschain.chemicals.Retailer#7860" //why Retailer participant is put as default
}
``` despite in my transaction modal is look like this :
```
abstract participant Company {
o String companyID optional
o String companyName optional
o String companyActivity optional
o Person[] employees optional
o Address address optional
o BusinessIdentity identity optional
o String civilDefenceNumber optional
}
participant Retailer identified by retailerId extends Company {
o String retailerId
o Product[] products
}
participant Importer identified by importerId extends Company {
o String importerId
}
participant Supplier identified by supplierId extends Company {
o String supplierId
o String countryId
o String orgId optional
}
transaction createProductListing {
o String listingtId
o Status status
o String[] products
--> Company company
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=twRb2Ro87mJRLQtyn) @irkoch My guess is that since Company is abstract, the playground is just trying to be helpful and puts in the first concrete implementation of Company that is defined in your model.
@silliman, thanks i understand now ^^
[ ](https://chat.hyperledger.org/channel/composer?msg=hijgzBxoufpZTnsKL) @irkoch you're welcome.. i was just guessing so you may wish to experiment to see if my theory was correct
@silliman , please i have a big issue to understand what the difference between create asset (prodcutListing) and create transaction (productListing), the both are create a product listing
[ ](https://chat.hyperledger.org/channel/composer?msg=CtdQJAnwzDxE2WH25) @irkoch The *Create Asset* button in the Composer Playground executes a Composer "built-in" transaction that simply creates the asset you've chosen to create. WIthout seeing your transaction processor function logic, I'd suspect that your _createProductListing_ transaction is creating a _ProductListing_ through its JavaScript logic, so the end result of you using the *Submit Transaction* button in the Playground is also a new _ProductListing_
Has joined the channel.
Hey Composer's update to the TSC is past due https://wiki.hyperledger.org/display/HYP/TSC+Project+Updates
Has joined the channel.
Has joined the channel.
hi, I'm very new to hyperledger, I just finished deploying fabric to kubernetes on the cloud, and looking for instructions/tutorial to show how I can deploy composer on kubernetes. All tutorials I've seen so far describe how to run composer on local machine using docker. Any info on how to deploy it to a kubernetes cluster?
Hi, Anyone who has created two channels and deployed two bna files to two channels from composer please share me the steps. Currently I'm having 1 channel with bna file installed and started network. I need another channel to install new different bna file and use composer rest server for that network. Please help me out. Thanks in advance.
[ ](https://chat.hyperledger.org/channel/composer?msg=FpLvDdzpGguWiAdbz) @Ssandeep I did in AWS server.
[ ](https://chat.hyperledger.org/channel/composer?msg=dwM8Rwxw656nfyLkW) @UnaiUrkiaga U can do. Its very easy. U can see angular material.
[ ](https://chat.hyperledger.org/channel/composer?msg=EXvix4ws49ZkxyX48) @Sarath_Kumar Chaincode will be installed in channels and u can join multiple peers into that channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=HrYKfrRMaqKbGaXkZ) @tk6sudersen follow this ... https://stackoverflow.com/questions/50066876/hyperledger-composer-cli-error-eaccess
Thanks @p1212 , how to find the installed chaincode details?
u can find in the network u created.
[ ](https://chat.hyperledger.org/channel/composer?msg=3GyDbG5cct55eGhz3) @Sarath_Kumar if u download fabric sample there chain code folder is available. Now chain code is available on go and node. fabric-samples/chaincode/fabcar/go
[ ](https://chat.hyperledger.org/channel/composer?msg=HRzPJNSh2XixXJFNT) @p1212 I have used these steps to install BNA. i want this installed chaincode details?
[ ](https://chat.hyperledger.org/channel/composer?msg=HRzPJNSh2XixXJFNT) @p1212 I have used these steps to install BNA. i want this *installed chaincode* details?
@p1212 how to deploy hyperledger application on AWS, can you please guide?
Has joined the channel.
Hi. do you have any information source that the composer being slowed down? https://medium.com/@waltermontes/hi-varun-probably-you-heard-by-now-about-composer-being-slowed-down-by-ibm-you-may-find-an-option-c7c32084b377
Has joined the channel.
Hi, is there anyway to order by a 'nested' property in composer query?
Hi
Is there any way to order by a nested property in composer query, for example :
query ForceCreateAllIndexes1 {
description: "Dummy Query"
statement:
SELECT org.myOrg.MyAssets
WHERE (UniqueId != "")
ORDER BY [Header.CreationDateTime]
}
Hi
Is there any way to order by a nested property in composer query, for example :
`query DummyQuery {
description: "Dummy Query"
statement:
SELECT org.myOrg.MyAssets
WHERE (UniqueId != "")
ORDER BY [Header.CreationDateTime]
}`
Hi
Is there any way to order by a nested property in composer query, for example :
query DummyQuery {
description: "Dummy Query"
statement:
SELECT org.myOrg.MyAsset
WHERE (UniqueId != "")
ORDER BY [Header.CreationDateTime]
}
asset MyAsset identified by UniqueId
{
o String UniqueId
o HeaderConcept Header
}
concept HeaderConcept
{
o DateTime CreationDateTime
}
I currently get a syntax error
Expected \",\", \"/*\", \"ASC\", \"DESC\", \"]\", comment, end of line or whitespace but \".\" found.
```
```
[ ](https://chat.hyperledger.org/channel/composer?msg=NbqPDgNbHjksDLRoS) @Ssandeep create one EC2 instance in AWS and enter into the AWS server using PEM file given by AWS . Then do exactly same thing whatever u r doing locally into server.Another thing u can do, create a zip file of your entire project then push that zip file to AWS server and run your project. AWS has given beautiful documentation of EC2 instance creation and deployment of any project.
If we start two rest servers on two different ports in multi user mode, will both the rest servers share same wallet or each server will have its own wallet?? @rthatcher pls help.
[ ](https://chat.hyperledger.org/channel/composer?msg=6drHEBmdDtgnqEnxn) @ShaikSharuk answered in #fabric channel
@FilippoD This ist not composer specific
the is from the playground
think more about how to handle this when you have you own application
the patient should select a doctor to send him the prescription
so you can not automate this process, but if you have only one doctor so you can set the doctor Id as default value for the newDoctor property
@FilippoD This ist not composer specific
the is from the playground
think more about how to handle this when you have you own application
the patient should select a doctor to send him the prescription
so you can not automate this process, but if you have only one doctor so you can set the doctor Id as default value for the newDoctor property
Has left the channel.
Has joined the channel.
Hi! I have been trying to model a N to N relationship using the modeling language. In our case we need to track the available product qty in a store's stock.
The only way I found was to create an attribute in store of an array of concepts (with a productId and qty)
but the problem is I would have to iterate over every concept to find the qty of a ginve productId
Isn't there a way to use indexed arrays or hashmaps?
or a key value map, something that we could use the key as an index instead of iterating over an entire array
Hi, I'm currently going through the tutorial at https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-single-org, and I am wondering if there has been a typo under Step 3: Building a Connection Profile. It says The x-type for Hyperledger Fabric v1.2 is hlfv1. Did they mean to write hlfv12? Earlier on in the tutorial they have you run "export FABRIC_VERSION=hlfv12", so this is why I am concerned.
Thank you
I guess it wasn't a typo after all. I went ahead and tried using x-type of hlfv12 and the composer card import command failed
I'm trying to generate a pretty large amount of assets at once.. (10,000 - 100,000) and I'm getting a timeout error. Is there any way to raise the timeout limit. Also, is this error coming from Fabric or Composer?
@bstri it may help? https://github.com/hyperledger/composer/wiki/Connection-Profiles
[ ](https://chat.hyperledger.org/channel/composer?msg=gpg7TLFBrEqhSM9ox) I found it. https://lists.hyperledger.org/g/composer/message/125
Docker stats
I had started hyperledger composer 2 weeks ago on ec2 server , the docker containers using more NET/IO resources, how to resolve, also it is also eating my HDD space day by day
I had started hyperledger composer 2 weeks ago on ec2 server , the docker containers using more NET/IO resources, how to resolve, it is also eating my HDD space day by day.
hi friends,i have created a hyperleder network with v1.1 and created a peeradmin card.but when i tried to install chaincode with user:admin and secret:adminpw i am getting the following logs in peer.but the chain code works fine.but if i try to install another chanin code it is throwing error saying peer not respond. also what is this ACTIVATION_REQUIRED.can anyone help please its urgent
The current identity, with the name 'admin' and the identifier '960b19fccaf908492c879671a74cce1ccab3cc99943a6b6a3b7def827742b9fc', must be activated (ACTIVATION_REQUIRED)
2019-02-01 07:55:01.839 UTC [chaincode] ExecuteChaincode -> ERRO 005 transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '960b19fccaf908492c879671a74cce1ccab3cc99943a6b6a3b7def827742b9fc', must be activated (ACTIVATION_REQUIRED)
github.com/hyperledger/fabric/core/chaincode.Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/exectransaction.go:83
github.com/hyperledger/fabric/core/chaincode.ExecuteChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincodeexec.go:85
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).Execute
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:93
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:132
github.com/hyperledger/fabric/core/endorser.(*Endorser).simulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:265
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:491
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:31
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:112
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:781
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:981
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:551
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:2337
[ ](https://chat.hyperledger.org/channel/composer?msg=eYzL8JrRAK9Gcg7G5) @p1212 @p1212 I tried doing the same as you said, but hyperledger composer cli command are not working in aws ec2 ubutnu isnatnce.
[ ](https://chat.hyperledger.org/channel/composer?msg=x5kZqumxGAiXYGb6Z) @Ssandeep Install all the pre-requisites and development environment. If u deploy properly it will work. I also did the same.
@rthatcher Can we generate participant certificate in PEM Format in composer?
Hi, I checked Releases page on Github in Composer repository. And there is message "At this point in time, there will be no further releases for Composer", is there anyone who can explain it a bit?
[ ](https://chat.hyperledger.org/channel/composer?msg=eNTpC3p9butxfP7Pj) @shiftby Here is your explanation: https://lists.hyperledger.org/g/composer/message/125
This is an Open Source project. Anybody can pick up the baton and run with it. So far, it does not appear as if people are tripping over each other to do so.
[ ](https://chat.hyperledger.org/channel/composer?msg=2qzH3Cxkw4MdDptpv) @Mayuzumi Thank you, I'll bookmark this link
[ ](https://chat.hyperledger.org/channel/composer?msg=ZEWFNaMkvmxYfK45f) @silliman Could you please elaborate on the part of this link that says:
Composer has been designed from the start to support multiple blockchain platforms, not just Fabric - but this design has come at a cost. This design has meant that there are two completely different programming models - the Fabric programming model (chaincode) and the Composer programming model (business networks). This has caused significant confusion to users, with them needing to make a "choice" between the two programming models, with very few similarities between the two. In this particular case choice has been a bad thing, with many users opting not to use the "optional" part past the initial exploration or POC stage.
I don't fully understand the difference between Fabric and Composer, or how they were intended to interact. I had seen a simple "Composer creates networks, Fabric deploys them," but I was hoping for something a little more descriptive.
[ ](https://chat.hyperledger.org/channel/composer?msg=dpt33ys2xFvnFHsAK) @bstri Composer was never required in order to write smart contracts. You could do that at the Fabric level Composer provides an abstraction layer that allows one to focus more on the "business" layer than at the lower "technical" layer. It allowed easier use at the cost of less control. To make an analogy, if imperfect- Composer is liking driving a car with an automatic transmission and Fabric is like driving a car with a manual transmission- the former is easier to drive but the latter offers you more control. Or think of Composer like writing code in Python and Fabric like writing code in C or Assembler- the former is easier (to most) while the latter offers you more control.
So the current effort is being spent on adding as much of the sweetness and light of the Composer programming model directly into Fabric, and this has been introduced in Fabric 1.4 and is being referred to as the "new programming model". So in Fabric 1.4 and going forward you can choose the "new" programming model, which is intended to be easier to use, or the "traditional" programming model, which is harder to use but offers more control, or both.
Go to the Hyperledeger Fabric documentation and look into the section for what's new in Release 1.4, and you may also find that the fabric-sdk-node channel is a place where people hang out who are familiar with this new direction.
Has joined the channel.
Hi, does anyone know why trying to install CLI tools using: npm install -g composer-cli@0.20 gives errors on my Mac saying: gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
gyp ERR! configure error
gyp ERR! stack Error: Command failed: /Users/anyakwoflorencechianyiamaka/anaconda3/bin/python -c import sys; print "%s.%s.%s" % sys.version_info[:3];
gyp ERR! stack File "
Thank you @silliman
Hi, I want to make an historian asset, but I have a doubt. Do I have to register a transaction in historian manually?
@bstr also, go into the fabric-chaincode-dev RocketChat channel and look at the post from _rthatcher_ on February 5, for additional insight
@bstri also, go into the fabric-chaincode-dev RocketChat channel and look at the post from _rthatcher_ on February 5, for additional insight
Hi! I have been trying to model a N to N relationship using the modeling language. In our case we need to track the available product qty in a store's stock.
The only way I found was to create an attribute in store of an array of concepts (with a productId and qty)
but the problem is I would have to iterate over every concept to find the qty of a ginve productId
Isn't there a way to use indexed arrays or hashmaps?
or a key value map, something that we could use the key as an index instead of iterating over an entire array
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Da5ofqxLbiYhsrGYo) @UnaiUrkiaga ya u need to register because that asset is providing you the history of transaction operations i.e insert , update , delete
hi everyone, I installed and started my network, on two machines and how can I test it whether they have same ledger and smartcontract(bna file)?
Guys i am receiving error while trying to ping network card i.e. ```
composer network ping -c admin@basic-sample-network
Error: Error trying to ping. Error: make sure the chaincode basic-sample-network has been successfully instantiated and try again: getccdata composerchannel/basic-sample-network failed: failed to execute transaction f23d78eda8b7040d748b3747877ee8ed52bf6d3edee3d4c65f18167aae082c09: error sending: timeout expired while executing transaction
Command failed
```
These are the logs from dev-peer0.org1.example.com-basic-sample-network-0.2.6-deploy.2
```
2019-02-07T11:53:18.776Z ERROR [lib/handler.js] [composerchannel-9df83dfb]Calling chaincode Invoke() returned error response [Error: The current identity, with the name 'admin' and the identifier '6e54643d70a81cf0cc3db6356994fcd8e0cbdbd480aeebe126ce15d2cd40dc58', is bound to a participant 'resource:org.hyperledger.composer.system.NetworkAdmin#admin' that does not exist]. Sending ERROR message back to peer
2019-02-07T11:53:18.776Z ERROR :IdentityManager :getParticipant() Error: The current identity, with the name 'admin' and the identifier '6e54643d70a81cf0cc3db6356994fcd8e0cbdbd480aeebe126ce15d2cd40dc58', is bound to a participant 'resource:org.hyperledger.composer.system.NetworkAdmin#admin' that does not exist
2019-02-07T11:53:18.776Z ERROR :Composer :Invoke() Error: The current identity, with the name 'admin' and the identifier '6e54643d70a81cf0cc3db6356994fcd8e0cbdbd480aeebe126ce15d2cd40dc58', is bound to a participant 'resource:org.hyperledger.composer.system.NetworkAdmin#admin' that does not exist
2019-02-07T11:53:18.776Z VERBOSE :Composer :Invoke() [5ba46045] Total (ms) duration for txnID [5ba46045a29cdafa7b9dff67a52d533dba135b246fe5f8cb4b7d567f4a15f129]: 53743.00ms
2019-02-07T11:53:18.776Z ERROR [lib/handler.js] [composerchannel-5ba46045]Calling chaincode Invoke() returned error response [Error: The current identity, with the name 'admin' and the identifier '6e54643d70a81cf0cc3db6356994fcd8e0cbdbd480aeebe126ce15d2cd40dc58', is bound to a participant 'resource:org.hyperledger.composer.system.NetworkAdmin#admin' that does not exist]. Sending ERROR message back to peer
```
Hi, i am trying to deploy persistent composer-rest-server, after deploying it is stuck on discovering network types. ```
docker logs -f rest
2019-02-08T01:28:32: PM2 log: Launching in no daemon mode
2019-02-08T01:28:32: PM2 log: App [composer-rest-server:0] starting in -fork mode-
2019-02-08T01:28:32: PM2 log: App [composer-rest-server:0] online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
```
I have used following command to run docker ```
docker run -d -e COMPOSER_CARD="admin@basic-sample-network" -e COMPOSER_NAMESPACES="never" -v ~/.composer:/home/composer/.composer --name rest -p 3000:3000 myorg/my-composer-rest-server
```
[ ](https://chat.hyperledger.org/channel/composer?msg=SM2Sm9D9DAbDKkrtd) @waleed At a time we can use one card only from wallet by setting it to default. Right ?? Then how can multiple users connects to same endpoint using different cards?? Is it not possible in hyperledger composer ??
Has joined the channel.
hi,
how i can deploy the rest server with support for more than one client
like the production level application
help me with any tutorials please
Has joined the channel.
hi, anyone know how install composer in centos 7?? thanks...
I'm getting this error while starting the composer network
`Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)`
How to overcome this?
Hello
So in the bna, I have enum status { Free; Slave}
how can I change the status from one to the other ?
Can you do it at all actually ?
Has joined the channel.
Hello, I have been working to get composer up and running but am running into an issue when I try and create the peer admin card.
I get the following error Cannot use Composer version 1.8.3 2019-01-30 08:31:33 version of composer with fabric 1.2, v0.20 or higher is required
I have checked the prerequisites and seem to have everything up to date. I have node version 8.10.0, npm version 5.6.0, and followed all of the instructions found here to set up my environment. https://hyperledger.github.io/composer/latest/installing/development-tools.html
Any help would be greatly appreciated, I am trying to do this for a school project.
[ ](https://chat.hyperledger.org/channel/composer?msg=7Ls3GTtEqvG3rbqCW) @PeterShore there is another piece of software called composer that has nothing to do with Hyperledger Composer and you probably either have that installed and in your path ahead of Hyperledger Composer, or have accidentally installed that instead of Hyperledger Composer. Hyperledger Composer has never had a version number like 1.8.3 which is why I think you are running into a problem along the lines of what I have described
Has joined the channel.
Hello team! In my usecase of hyperledger composer, I want to generate and share public key to other participant. How can I do that?
i need hyperledger composer with fabric1.4 setup document
Hoe to setup hyperledger composer with hyperledger fabric1.4 versions
Has joined the channel.
Hi
I am trying to run this command on ubuntu:
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
and I am getting this error:
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
could sb tell me what do I need to check or how to fix this?
Has joined the channel.
@NadaAyman Please stop the fabric. clear all previous all previous docker images using command and try again
[ ](https://chat.hyperledger.org/channel/composer?msg=EwdN3p5wrWgeEGgft) if anyone knows , let me know
[ ](https://chat.hyperledger.org/channel/composer?msg=DhiGFYiCrwFzWEXgP) @garunkumar450 Change the docker yaml files
@benjamin.verhaegen how to change the docker yaml file
@benjamin.verhaegen What configurations i need to give in docekr yaml file
Im using Github OAuth for my Composer Rest server docker authentication...It seems that, the authentication token is getting expired after 15 days... Anyone is facing this same issue and how to overcome thins?
[ ](https://chat.hyperledger.org/channel/composer?msg=DWHTwtWNoQyAvbaBk) @garunkumar450 Change the versions of all the docker containers getting pulled.
hey can anyone help me with a issue. I have a node js application running on hyperledger composer blockchain with express server. There is signup options for users. Now what i want is on signup it should returns acess key for each user
[ ](https://chat.hyperledger.org/channel/composer?msg=EwdN3p5wrWgeEGgft) @ShaikSharuk it is possible. because when your rest server runs in multi user & authentication mode, every user get a session
[ ](https://chat.hyperledger.org/channel/composer?msg=EwdN3p5wrWgeEGgft) @ShaikSharuk it is possible. because when your rest server runs in multi user & authentication mode, every user get a session. if you start my project by follwing the read me, you will see that diffrent users can use the same endpoint
[ ](https://chat.hyperledger.org/channel/composer?msg=EwdN3p5wrWgeEGgft) @ShaikSharuk it is possible. because when your rest server runs in multi user & authentication mode, every user get a session. if you start my project by follwing the read me, you will see that diffrent users can use the same endpoint
https://github.com/4eyes/hyperledger-fabric-composer-snack-shop
@waleed what can we do in case we have a client application and express web server
as in this case https://github.com/rameshpoomalai/blockchain_dms
can u please help how to generate certificate for each user
@ShaikSharuk please help
@Ajayveer you will need another rest api which is running in single mode to create the user card for you. take alook here: https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
[ ](https://chat.hyperledger.org/channel/composer?msg=aum77LAT2GZhBS25R) @anand.balagopalan this is because of the cookie which set in the browser I think.
[ ](https://chat.hyperledger.org/channel/composer?msg=nnygFzxyzQHMLzBqx) @NadaAyman check if your peers containers are working and your have the correct connection profile
@NadaAyman please run the command
docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)
rm -rf ~/.composer
and agin start the Fabric, create peer admin
@rthatcher Non Blockchain Application trying to access(using pem file) composer-rest-server which is running in multi user mode, in Non blockchain app they are getting http status code -1 and in peer0 docker logs nothing coming
when non blockchain app trying to connect rest api with out authentication mode i am able to see logs for that transactions
@rthatcher can you please help regarding this issue?
Has joined the channel.
hi there, how do I set a default value for an array? in model definition I can set things like o String aString default = "x", how do I set things like o String[] aStringArray default = ["a", "b"]?
thanks
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=A9MyGXwnPqwaZuejM) @waleed Yes, thats how github defines a session...But is there any way i can define this session time? By checking the documents, it says a Auth token should have a default expiry time of 1 year
Has joined the channel.
Has joined the channel.
Has joined the channel.
Is there any provision for properties file in hyperledger composer ??
[ ](https://chat.hyperledger.org/channel/composer?msg=fM6nH7yqcfGJk488y) @anand.balagopalan I don't think that
Hi! How I get all transactions of historian? What I have to make? create an asset, transaction??
[ ](https://chat.hyperledger.org/channel/composer?msg=pjSBo624K4ygYe5RA) @UnaiUrkiaga to get all transaction, you can make a query to the HisorianRecord
Thanks @waleed . But how can I call to this query? By the REST API? I want to make it from composer and I want to list the transactions in an asset, is it possible?
I dont understand how it works
[ ](https://chat.hyperledger.org/channel/composer?msg=AZFqJndQprBG2hLQC) @UnaiUrkiaga if you user the rest API, you can just call e.g. `http://localhost:3000/api/system/historian` and you will get all the transactions
[ ](https://chat.hyperledger.org/channel/composer?msg=AZFqJndQprBG2hLQC) @UnaiUrkiaga if you use the rest API, you can just call e.g. `http://localhost:3000/api/system/historian` and you will get all the transactions
thanks @waleed but I want to do it from composer, to test it in playground. Is possible to get the historian without using a REST API?
[ ](https://chat.hyperledger.org/channel/composer?msg=3XPcp3AJZT26qaitP) @UnaiUrkiaga yes, you can make a query and use it within a transaction in your logic.js file like this:
in queries.qry:
```
query getAllTransactions {
description: "Select all transactions from the Composer Historian"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
}
```
and in your logic.js file:
```
/**
* Select all trasactions
* @param {org.example.mynetwork.SelectAllTransactions}
* @transaction
*/
async function selectAllTransactions() {
let results = await query('getAllTransactions');
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=3XPcp3AJZT26qaitP) @UnaiUrkiaga yes, you can make a query and use it within a transaction in your logic.js file like this:
in queries.qry:
```
query getAllTransactions {
description: "Select all transactions from the Composer Historian"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
}
```
and in your logic.js file:
```
/**
* Select all trasactions
* @param {org.example.mynetwork.SelectAllTransactions}
* @transaction
*/
async function selectAllTransactions() {
let results = await query('getAllTransactions');
// do something with results
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=3XPcp3AJZT26qaitP) @UnaiUrkiaga yes, you can make a query and use it within a transaction in your logic.js file like this:
in queries.qry:
```
query getAllTransactions {
description: "Select all transactions from the HistorianRecord"
statement:
SELECT org.hyperledger.composer.system.HistorianRecord
}
```
and in your logic.js file:
```
/**
* Select all trasactions
* @param {org.example.mynetwork.SelectAllTransactions}
* @transaction
*/
async function selectAllTransactions() {
let results = await query('getAllTransactions');
// do something with results
}
```
And if I want to print that information on an asset, I have to create the asset with that information?
[ ](https://chat.hyperledger.org/channel/composer?msg=4hLuKNapDATwkwWFr) @UnaiUrkiaga why do you want to do that?
I want to show all the historian
yes, you can do what ever you want with the results
Im following this tutorial: https://hyperledger.github.io/composer/unstable/reference/historian.html and I assume that this is an automatic way to do that. But I have to insert the information of HistorianRecord manually?
Quick question, Im dong two operations to seed my blockchain. Im creating a participant and an asset. when i do that at the same time. it errors out because its closing the connection before the other one submits. any ideas on how to keep the connection open till its done?
and addAll dose not work because its different registries.
hey developers I have a node js web application running on hyperledger composer. I have used express. I want to use the mongodb for storing cards can anyone help me out. @waleed @ShaikSharuk
right now I am using in memory filesystem
[ ](https://chat.hyperledger.org/channel/composer?msg=TDxyQgKHaTiLfacaf) @UnaiUrkiaga showing all transaction in the playground is already implemented. if you want to have the same feture in your application, just call
[ ](https://chat.hyperledger.org/channel/composer?msg=TDxyQgKHaTiLfacaf) @UnaiUrkiaga showing all transaction in the playground is already implemented. if you want to have the same feture in your application, just call `http://localhost:3000/api/system/historian` if you user rest api
So, I have to modify my app to show the records of historian?
[ ](https://chat.hyperledger.org/channel/composer?msg=hN9824baLW4KPc9qh) @Ajayveer you will need to do tha same things which the rest API does for you to store the cards in the mongodb. which means, you should know how to work with mongo looback connector
[ ](https://chat.hyperledger.org/channel/composer?msg=k8AwqahP3GT3TPHTm) @UnaiUrkiaga yes, if u use the rest API
@waleed thanks for your help
A deployed business network maintains a set of mappings of identities to participants in the Identity Registry. When an identity is Issued or Bound to a participant, a new mapping is added to the identity registry.
where can i see the identitiy registry in composer rest server ?
You can't, but you can create a query to select all identities from `org.hyperledger.composer.system.Identity` then you can execute this query though the rest server
You can't, but you can create a query to select all identities from `org.hyperledger.composer.system.Identity` then you can execute this query through the rest server
[ ](https://chat.hyperledger.org/channel/composer?msg=RzWWCiiPJXsDHs9v9) @mallikarjunasai995 You can't, but you can create a query to select all identities from `org.hyperledger.composer.system.Identity` then you can execute this query through the rest server
[ ](https://chat.hyperledger.org/channel/composer?msg=zPStMmFYkSjbe8MRK) @waleed okay thanks ... but using single org hyperledger composer can we restrict the user access according the participants we have created (means mapping different identites to different participants from there restricting the user access) currently i have enabled passport-github strategy and i uploaded it in hyperledger-composer ... providers...
lets say for example :
i have created two participants ... fred and tom .... and also created login page in angular (uisng yeoman tool i have generated the angular app for my composer application)... now if fred login he has only access to some assets and if tom login he has only access to some paritcipants .... how can i acheive this scenario using passport-github startegy
[ ](https://chat.hyperledger.org/channel/composer?msg=LuHXbtQMfvRQZYaCT) @mallikarjunasai995 you can achieve that by defining the permisions in your ACL-File
[ ](https://chat.hyperledger.org/channel/composer?msg=oErYM7aP3BZEfgw7s) @waleed thanks but i have dumb doubt ... if i can achieve access permissions through the ACL .. why do i need to authenticate my rest server with passport-github for login ...
okay may be am thinking like this : i have restricted the access of fred participant in my business network to only edit some assets ... now to tell fred is logged in ... i need login or autheneticating the rest server
[ ](https://chat.hyperledger.org/channel/composer?msg=gqScCaCvfS8QNShKJ) @mallikarjunasai995 we use passport-github for login to be able to login from everywhere the access token key which you get from github will be asigned to the user card (where you have your permissions) which will be stored in your wallet (mongoDB). so you can see the github login as a loginservice for your application but the cards are for authentication on your network
[ ](https://chat.hyperledger.org/channel/composer?msg=R3RvYh2TbgiBeRyXh) @waleed sorry i didnt get it ... can you please tell me in layman terms ... thanks :)
[ ](https://chat.hyperledger.org/channel/composer?msg=rMWpXyTsL3iPxTyFH) @mallikarjunasai995 this may help :) :thumbsup:
[ ](https://chat.hyperledger.org/channel/composer?msg=rMWpXyTsL3iPxTyFH) @mallikarjunasai995 this may help :)
Clipboard - February 12, 2019 3:05 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=3TDbRMpSBEJconHmR) @waleed awsome thanks it really helped me ... :relaxed: but may be when i am creating my application if i got some doubts in card creation and all i will ask you ... thanks for hleping out...
[ ](https://chat.hyperledger.org/channel/composer?msg=D3ZjMLqXyncXbCnvu) @mallikarjunasai995 you are welcome :)
Has joined the channel.
Hi all, using rest server, can we update selected fields only using put http. instead of updating the whole model.
Hi there, I'm having an issue with the OAuth guidelines for authenticating the rest server, I followed the guide on the composer page but I'm getting a 404 on the localhost:3000/auth/github link.
[ ](https://chat.hyperledger.org/channel/composer?msg=evfyDbz2ogsX4c6xk) @rrishmawi if you don't see this option on the rest server Interface, then you can't ;)
@waleed Any open source application, that is developed by using fabric n0de sdk and go lang?
is available on github?
n the Playground UI, create a new Participant and Issue a new identity for that Participant. Activate the identity (must be done before export) and then from the 'My Business Networks' page, export the Business Network card.
what does the above line means....
exactly
Has joined the channel.
Has joined the channel.
is it possible to insert who same number or values in blockchain using composer,
is it possible to insert same number or values in blockchain using composer,
is it possible to insert same number or values in blockchain using composer,
Like in ledger already 1001 exists if the same number try to post, will it allow? if not how to use two fields as primary key in cto file ?
[ ](https://chat.hyperledger.org/channel/composer?msg=eAQNAQF3Ambn55paC) @waleed Am i the only one facing this issue or is it some general issue? If u know any related threads, please share?
Hi Team, Will hyperledger composer v20.6 works on Fabric 1.4?
Hi Team, Will hyperledger composer v20.6 work on Fabric 1.4 Features?
[ ](https://chat.hyperledger.org/channel/composer?msg=LywvrKaHz8P5gcidy) @anand.balagopalan I didn't face this issue
[ ](https://chat.hyperledger.org/channel/composer?msg=7ZsjjSFrMWGnBFzzw) @waleed Thank you @waleed, i solved this by creating my own update transaction, where i implemented the update as i see fit.
Has joined the channel.
Hello
I am inspecting fabric and composer and came with this post: https://lists.hyperledger.org/g/composer/topic/25106848#125
I would like to know if it is still considered "valid" to use composer for prod environment. I saw that IBM blockchain (on bluemix) specifies that they do not provide support for composer.
[ ](https://chat.hyperledger.org/channel/composer?msg=czxFXPqzvWMgTkK3R) @florianc I recommed to work with fabric (save side) only when it's about prod environment.
Thank you for this information. Another small question if you don't mind: Does composer support private data collections? (it seems like no, considering the link I provided, but I would like to be sure, newer post I could find about this is 4 months ago)
[ ](https://chat.hyperledger.org/channel/composer?msg=tn5PAmca4nZx64CML) @florianc "To configure private data you need to define a JSON file and include it as part of the instantiation request. It's not possible to pass this configuration to the `composer network start` command so you cannot configure the private collection for a business network.
Composer has no explicit APIs or knowledge of private data. You could use the getNativeAPI to gain access to the stub to interact with the chaincode private apis but that won't be enough"
Alright. Thank you very much. Have a god day
Alright. Thank you very much. Have a good day
[ ](https://chat.hyperledger.org/channel/composer?msg=sBA2w7KBHcBfoHf6z) @florianc You are welcome :)
@waleed How we can authentication or login authentication in fabric applications In composer we can give it by multi user mode and OAuth authentication in fabric how we can security in login?
@waleed How we can give authentication or login authentication in fabric applications In composer we can give it by multi user mode and OAuth authentication in fabric how we can security in login?
[ ](https://chat.hyperledger.org/channel/composer?msg=CYQ4QFNrsXqN8xXSF) @sureshtedla I am working on this right now, when I finish it, I will publish it
[ ](https://chat.hyperledger.org/channel/composer?msg=Bh2GouXs3L8EvKDnJ) @waleed Thank you
Has joined the channel.
Hi guys, i got an error wen deploying my bissnes network
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
can you help me ?
[ ](https://chat.hyperledger.org/channel/composer?msg=A47Bvni5qSpDz3qRp) @OussamaZemzami Try this :)
https://chat.hyperledger.org/channel/composer?msg=cFWGepdBdgNpne9tK
https://chat.hyperledger.org/channel/composer?msg=faQgbZvaLegdgbgp8
Has joined the channel.
Greetings. We have been trying to get a straight answer to a simple question: does Composer work with Fabric 1.3? Assume we are willing to start from scratch. I've been able to modify the fabric-dev-scripts to some degree but we are still having problems. Is there updated documentation for using Fabric 1.3-- specifically, precisely, deliberately, 1.3-- with Composer 0.20.4? I've noticed several variants on this question getting asked in many different forums, all getting dead air. I'm aware of the maintenance situation with Composer-- but has anyone gotten it to work with Fabric 1.3, regardless of how much tweaking it took?
[ ](https://chat.hyperledger.org/channel/composer?msg=gcSgFv4bccKRjeKDK) @hpg-mheck My advice is: if you didn't find the solution in official documentation of composer, then that means that composer doesn't work with fabric 1.3
so when you take a look at the documentation, you will see that fabric-dev-servers has fabric 1.2. so don't wate your time.
[ ](https://chat.hyperledger.org/channel/composer?msg=gcSgFv4bccKRjeKDK) @hpg-mheck My advice is: if you didn't find the solution in official documentation of composer, then that means that composer doesn't work with fabric 1.3
so when you take a look at the documentation, you will see that fabric-dev-servers has fabric 1.2. so don't waste your time.
I appreciate your input. Has anyone else had any luck with it?
The specific note that has us fuming is this one:
https://github.com/hyperledger/composer/releases
"The fabric-dev-servers package provided is meant only as a simple hyperledger fabric setup to help you get started with developing with composer using a real fabric. It is not meant to be extended or as a basis for a custom fabric. If you are wondering where versions for hyperledger fabric v1.3 or v1.4 are, these are explicitly not included because you can develop your application using the development fabric 1.2 and still be able to deploy and run it on a fabric 1.3 or 1.4 system."
As far as we can tell, that statement is false.
Unless all they mean to say is, "you can mess around in Playground and then port everything." Which really isn't very useful.
@hpg-mheck composer applications can be deployed to fabric 1.3 and 1.4 networks
@hpg-mheck did you tried with 1.2 and then make an upgrade?
No. Having heard that IBM pulled everyone off Composer's development team, we concluded that the docs, having been a low priority, hadn't been updated yet. So we attempted to modify everything as seemed to be appropriate for 1.3-- we changed the docker image versions that were pulled down, etc.
Specifically, we created a fabric-scripts/hlfv13 subdirectory, since that seemed to be consistent with prior development.
We then copied hlfv12 to that and attempted to patch.
@hpg-mheck don't try to modify the fabric-dev-servers package. This is not meant to be something to be changed. It is only there to provide a simple development fabric for people to use with composer
It has the exact opposite effect.
The initial entry experience into all this for most developers is the following:
1. I can't tell where the boundaries between Fabric and Composer are.
2. I can't tell if Composer is still being actively developed.
3. I can't tell if any of this stuff is working.
@hpg-mheck Highly recommend you invest your time in fabric 1.4 which is LTS and the new programming models in there.
4. I can't tell if this huge list of warnings is normal.
The problem is my client has a previously deployed fabric 1.3, and considers 1.4 way, way too raw.
But having seen that 1.4 attempts to add concepts that were the main reason Composer was the preferred way to "rapidly" (*COUGH*) prototype for Fabric, it seems even less likely Composer will exist for much longer.
Hi all, I need a help to create asset with compositekey. is you have idea about it please clarify me...
However-- do you know of anything that authoritatively declares 1.4 as LTS compared to 1.3?
-------------------------------------------------------------------
Hyperledger Fabric v1.4 LTS RELEASE ANNOUNCEMENT:
https://lists.hyperledger.org/g/fabric/topic/announcement_hyperledger/29001113
-------------------------------------------------------------------
Excellent, thank you very much.
Well, luckily we use heavily snapshotted and branched VMs for our tests... time to roll back to 1.2, I guess, and try this all over again.
@hpg-mheck Just a reminder do not attempt to modify fabric-dev-servers package. If you want a fabric 1.4 network, you should build it yourself based on hyperledger fabric samples.
That's our next option-- but if things get to that point, we're taking that as the last straw to ditch Composer and just use Node.
Hi, I have a running network as of now. But I have change the model file (.cto) file of a participant and upgraded the network. But once I start the composer rest server, the old data is missing and cannot query the data already inserted. once I tried get with ID of a participant it give me ```{
"error": {
"statusCode": 404,
"name": "Error",
"message": "Unknown \"Trader\" id \"2\".",
"status": 404,
"code": "MODEL_NOT_FOUND",
"stack": "Error: Unknown \"Trader\" id \"2\".\n at Function.convertNullToNotFoundError (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback/lib/persisted-model.js:89:17)\n at invokeRestAfter (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/lib/rest-adapter.js:532:25)\n at /home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/node_modules/async/dist/async.js:3880:24\n at replenish (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/node_modules/async/dist/async.js:1011:17)\n at iterateeCallback (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/node_modules/async/dist/async.js:995:17)\n at /home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/node_modules/async/dist/async.js:969:16\n at /home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/node_modules/async/dist/async.js:3885:13\n at interceptInvocationErrors (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/lib/remote-objects.js:731:22)\n at /home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/node_modules/async/dist/async.js:473:16\n at replenish (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/node_modules/async/dist/async.js:1006:25)\n at iterateeCallback (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/node_modules/async/dist/async.js:995:17)\n at /home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/node_modules/async/dist/async.js:969:16\n at /home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/node_modules/async/dist/async.js:473:16\n at replenish (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/node_modules/async/dist/async.js:1006:25)\n at iterateeCallback (/home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/node_modules/async/dist/async.js:995:17)\n at /home/ubuntu/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/strong-remoting/node_modules/async/dist/async.js:969:16"
}
}
```
Please help me out here. How can I get my old data and what is the issue here?
[ ](https://chat.hyperledger.org/channel/composer?msg=R9pLFqnLHXszsDRkx) @amendafernando Try to restart your Rest server
[ ](https://chat.hyperledger.org/channel/composer?msg=R9pLFqnLHXszsDRkx) @amendafernando Try to restart your Rest server. and if u updated a model (e.g. Trader) bei adding new property, then the new proberty should be optional
[ ](https://chat.hyperledger.org/channel/composer?msg=R9pLFqnLHXszsDRkx) @amendafernando If u updated a model (e.g. Trader) bei adding new property, then the new proberty should be optional
[ ](https://chat.hyperledger.org/channel/composer?msg=gFeA2G92xgibaqdyF) @waleed Thank you @waleed . I will try with optional properties :relaxed:
[ ](https://chat.hyperledger.org/channel/composer?msg=CfgkC2nfGnY7e4pwv) Also @waleed is there any way that I can retrieve older data before the model change?
[ ](https://chat.hyperledger.org/channel/composer?msg=HCs3Fay9inSkm6XW9) @amendafernando You will have the old data again when you set the new property as optional:
```
participant Trader identified by id {
o String id
o String newProperty optional
}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=yYdqysCoeRTz6zJrS) @waleed It worked @waleed . Thank you so much :thumbsup:
[ ](https://chat.hyperledger.org/channel/composer?msg=9yj6MKo32pXu2Mwb6) @amendafernando nice :)
i have isssued a new id in the playground for a participant instance and then gave access to one of the resource(asset) so now when i use that identity as an login id instead of admin am getting below error ... can any one help me out to resolve this error
: Participant 'org.example.mynetwork.InsuranceCompany#0489' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#empty-business-network@0.0.2-deploy.10'
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Xs4tgjG7H3SRYnqco) Any idea?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=cR8Ddc3279Jwk9ZXh) https://stackoverflow.com/questions/45039587/does-hyperledger-composer-support-composite-keys
I have not found anything about composite key in release notes, so I guess it is not implemented.
Has joined the channel.
Hello, I have a question about composer network start. I get an event hubs error.
Hello, I have a question about composer network start. I get an event hubs error.
Hello, I have a question about composer network start. I get an event hubs error.
Hello, I would need some help to debug a composer network start error. "No event hubs found"
Hello, I have a question about composer network start. I get an event hubs error.
can any kindly share the composed based config.json file for explorer.
thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=NtN8SAS3RZ58dwmL9) @florianc Thanks for your response
You are welcome.
Has joined the channel.
Hello, i am trying to deploy modified network, for that i created updated bna file, but when i try to update it this error comes up```````
```
`composer network install --card PeerAdmin@hlfv1 --archiveFile tut-network@0.0.2.bna`
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network is already installed on all the peers
Command failed
I am following this tutorial: https://hyperledger.github.io/composer/latest/tutorials/queries
```
```
Hello, i am trying to deploy modified network, for that i created updated bna file, but when i try to update it this error comes up`````
`composer network install --card PeerAdmin@hlfv1 --archiveFile tut-network@0.0.2.bna`
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network is already installed on all the peers
Command failed
I am following this tutorial: https://hyperledger.github.io/composer/latest/tutorials/queries
```
```
Hello, i am trying to deploy modified network, for that i created updated bna file, but when i try to update it this error comes up`````
`composer network install --card PeerAdmin@hlfv1 --archiveFile tut-network@0.0.2.bna`
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network is already installed on all the peers
Command failed
I am following this tutorial: https://hyperledger.github.io/composer/latest/tutorials/queries
Hello, i am trying to deploy modified network, for that i created updated bna file, but when i try to update it this error comes up```
`composer network install --card PeerAdmin@hlfv1 --archiveFile tut-network@0.0.2.bna`
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network is already installed on all the peers
Command failed
I am following this tutorial: https://hyperledger.github.io/composer/latest/tutorials/queries
Hello, i am trying to deploy modified network, for that i created updated bna file, but when i try to update it this error comes up```
composer network install --card PeerAdmin@hlfv1 --archiveFile tut-network@0.0.2.bna
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network is already installed on all the peers
Command failed
I am following this tutorial: https://hyperledger.github.io/composer/latest/tutorials/queries
Hello, i am trying to deploy modified network, for that i created updated bna file, but when i try to update it, this error comes up```
composer network install --card PeerAdmin@hlfv1 --archiveFile tut-network@0.0.2.bna
```
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network is already installed on all the peers
Command failed
I am following this tutorial: https://hyperledger.github.io/composer/latest/tutorials/queries
Is it possible to deploy a bna modeled with Composer in a new Fabric network with multi org?
This might help: https://github.com/IBM-Bluemix-Docs/blockchain/blob/master/develop_starter.md
(If you are not in the starter plan, you might be able to reproduce the steps on your own fabric)
How can I open the frontend as a participant instead of admin?
or how to I create a business card from a participant
@pascalkueng it depends. if you want to create the card for the user as an admin or if you want the user to create the card bei themself
@pascalkueng it depends. if you want to create the card for the user as an admin or if you want the user to create the card by themself
@pascalkueng it depends. if you want to create the card for the user as an admin or if you want the users to create the card by themself
create a card for the user
I'm trying to issue an identity over the cli now
@pascalkueng ok, this my help you: https://github.com/4eyes/hyperledger-fabric-composer-snack-shop/blob/master/backend/composer/composer-network.sh#L375
@pascalkueng `createParticipantCard()`
Has joined the channel.
Hi everyone. I am currently facing an issue of moving the hyperledger composer model and script file of 'Member, ASSETS and Transactions'to the fabric level. I mention that the programming logic and architeture are really different between composer and fabric. Because of more features available on fabric level, we need to abandon the composer platform and put everything on fabric level. I wonder if you have any ideas of easier way to move what the projects done and programmed in hyperledger composer to setting up the same projects in hyperledger fabric. Thank you!
@waleed thanks, I was able to issue an identity for the participants. could you tell me how to actually start the frontend as a participant?
@waleed yes my question also sort of same .... how can i achieve through angular front end can we able to create a new card for a user who logged in and doesnt have a card and able to do transactions with his identity in the same session .... thanks
@pascalkueng & @mallikarjunasai995
This article should help you :)
https://medium.com/@CazChurchUk/developing-multi-user-application-using-the-hyperledger-composer-rest-server-b3b88e857ccc
hello guys, I want to know if there is a good source on making cto, js and qry files. I don't understand how to make it
at the official page, we can see they add a RemoveHighQuantityCommodities method. I want to add another method, like a search method that return a number of matching parameters. How do I add that?
Hey guys, I am looking to setup composer rest server using docker, and I have pulled the hyperledger composer rest server docker image.
Based on my experience of composer, we would have to composer card import first, and then start the rest server by doing composer-rest-server -c mycard@test-network, but it seems like the composer rest server image does not have the composer cli installed. When I follow the tutorial from here (https://hyperledger.github.io/composer/v0.19/integrating/deploying-the-rest-server), I keep getting this error:
Error: ENOENT: no such file or directory, open '/home/composer/.composer/cards/grantsolutions@gdx-network
Hey guys, I am looking to setup composer rest server using docker, and I have pulled the hyperledger composer rest server docker image.
Based on my experience of composer, we would have to composer card import first, and then start the rest server by doing composer-rest-server -c mycard@test-network, but it seems like the composer rest server image does not have the composer cli installed. When I follow the tutorial from here (https://hyperledger.github.io/composer/v0.19/integrating/deploying-the-rest-server), I keep getting this error:
Error: ENOENT: no such file or directory, open '/home/composer/.composer/cards/mycard@test-network
I have another problem. I install composer on 2 cloud server.
I tried to deploy changes on bna file using composer playground.
When I tried to press deploy, my peer got down.
I cannot login to my cloud node.
why is this happening?
[ ](https://chat.hyperledger.org/channel/composer?msg=RxpEKyQp14ZzHZkkUq) @waleed here in this article author is used two ports to explain this process could you please share any article that used only on port like your snack-shop application
Hey team, what database should I use along with blockchain to store data on local database? We are not storing all our data on blockchain since it is recommended to store only confidential and important data on it. Please help!
mongodb is good.
[ ](https://chat.hyperledger.org/channel/composer?msg=ctzJsbpCqw93vRJoZ) @DarwinHarianto then what about couch db which is the default database
?
mongodb is closer to sql. Another reason is I can save data in almost the same format in couch and mongo. Mongo is faster too
I want to ask another question.
I want to ask another question. Suppose I have saved data inside couchDB.
Then I want to get every unique data inside it.
lets say it has 3 names, A,A,B,C,C
I want it to return A,B,C.
How do I do that?
async function uniqueCommodities(search) {
let assetRegistry = await getAssetRegistry('org.stock.mynetwork.Commodity');
let all = await assetRegistry.getAll();
let unique = [...new Set(all.map(item => item.productName))];
//emit a notification that search is done
let uniqueNotification = getFactory().newEvent('org.stock.mynetwork', 'Search');
emit(uniqueNotification);
return unique;
}
This is my code
I want to ask another question. Suppose I have saved data inside composer.
Then I want to get every unique data inside it.
lets say it has 3 names, A,A,B,C,C
I want it to return A,B,C.
How do I do that?
async function uniqueCommodities(search) {
let assetRegistry = await getAssetRegistry('org.stock.mynetwork.Commodity');
let all = await assetRegistry.getAll();
let unique = [...new Set(all.map(item => item.productName))];
//emit a notification that search is done
let uniqueNotification = getFactory().newEvent('org.stock.mynetwork', 'Search');
emit(uniqueNotification);
return unique;
}
This is my code
[ ](https://chat.hyperledger.org/channel/composer?msg=j6rTx8569h5H4y5ie) @DarwinHarianto you can define a query in queries.qry and use it in your logic.js
[ ](https://chat.hyperledger.org/channel/composer?msg=3auevP7MQXwA6u2eo) @himi64 you have to mount the card file to the rest server container.
take a look at this folder: https://github.com/4eyes/workshoptage2018/tree/master/rest-server
[ ](https://chat.hyperledger.org/channel/composer?msg=vFJjcyraiW5bxaXcm) @DarwinHarianto We need to see any logs to understand the problem ;)
[ ](https://chat.hyperledger.org/channel/composer?msg=29gfq9rWcnrajshb4) @mallikarjunasai995 not 2 ports but two rest servers. one is in multi user mode an authentication mode (for the login) and the second is in single mode (for sign up). with that, you can let the user sign up (the second rest server will issue identity for the user) bei himself. I don't do this in my snack shop. I create the Identidy (the card) as an Admin for every user wants to join.
[ ](https://chat.hyperledger.org/channel/composer?msg=vTvPsthFAN3Z5BAFC) @komalbharadiya You can use what ever you want. You need to impelement the interface by yourself. you should save the hash of the data into the bockchain after saving the data out of chain.
[ ](https://chat.hyperledger.org/channel/composer?msg=PoekTSGH4SJagwruc) @mallikarjunasai995 the couch DB is connected to the peer to save the current world state of the ledger (like cache). this will not have nothing to do with the date which @komalbharadiya wants to save out of chain. and as @DarwinHarianto mentioned: mongodb would be good to save the date
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=azi4bsArvfGwC75m8) @DarwinHarianto why don't you definr a query in your queries.qry file and use it in you logic.js file?
[ ](https://chat.hyperledger.org/channel/composer?msg=azi4bsArvfGwC75m8) @DarwinHarianto why don't you define a query in your queries.qry file and use it in you logic.js file?
I have a question on how to interact with rest-server using a java based android application?
I would like to create an android application for each participant of the business network and how to import cards and login to the business network through java in android application?Please let me know.
I want to do that, but I don't know how.
can you give me an example?
I don't even know how to see a data that I have from logic.js
I tried console.log() nothing appear
I want to connect it to my phone.
so far I am able to get data using curl get from queries.
[ ](https://chat.hyperledger.org/channel/composer?msg=tFjzDoN2ZNufdBqeK) @waleed I want to do that, but I don't know how.
can you give me an example?
I don't even know how to see a data that I have from logic.js
I tried console.log() nothing appear
I want to connect it to my phone.
so far I am able to get data using curl get from queries.
@DarwinHarianto you said you want to get every unique data if you have e.g. 3 names, A,A,B,C,C. you want to return A,B,C.
which A and Which C you want to return?
I just want the name. I want to get the unique name
[ ](https://chat.hyperledger.org/channel/composer?msg=ydh2Wes5ZYkFmDRJH) @DarwinHarianto unique name of what?
this is my commodity model
asset Commodity identified by time {
o String time
o String dataType
o String productName
o Double quantity
o String country
--> Trader owner
}
I input lots of product like soap, shampoo, calculator
but sometimes, the name is doubled up
I just want the unique name
unique name from the list of productName
the order doesn't matter for now.
as I see from your model, you don't have a product list. it is only a string
@DarwinHarianto as I see from your model, you don't have a product list. it is only a string
yes
this is the example of data
[
{
"$class": "org.stock.mynetwork.Commodity",
"time": "1",
"dataType" : "in",
"productName": "A",
"quantity": 1,
"country": "Unknown",
"owner": "GAGA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "2",
"dataType": "in",
"productName": “A",
"quantity": 1,
"country": "Unknown",
"owner": "BABA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "3",
"dataType": "out",
"productName": "C",
"quantity": 1,
"country": "Unknown",
"owner": "GAGA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "4",
"dataType": "in",
"productName": "C",
"quantity": 1,
"country": "Unknown",
"owner": "GAGA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "5",
"dataType": "out",
"productName": "B",
"quantity": 1,
"country": "Unknown",
"owner": "BABA"
}
]
yes
this is the example of data
''' [
{
"$class": "org.stock.mynetwork.Commodity",
"time": "1",
"dataType" : "in",
"productName": "A",
"quantity": 1,
"country": "Unknown",
"owner": "GAGA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "2",
"dataType": "in",
"productName": “A",
"quantity": 1,
"country": "Unknown",
"owner": "BABA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "3",
"dataType": "out",
"productName": "C",
"quantity": 1,
"country": "Unknown",
"owner": "GAGA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "4",
"dataType": "in",
"productName": "C",
"quantity": 1,
"country": "Unknown",
"owner": "GAGA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "5",
"dataType": "out",
"productName": "B",
"quantity": 1,
"country": "Unknown",
"owner": "BABA"
}
] '''
yes
this is the example of data
``` [
{
"$class": "org.stock.mynetwork.Commodity",
"time": "1",
"dataType" : "in",
"productName": "A",
"quantity": 1,
"country": "Unknown",
"owner": "GAGA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "2",
"dataType": "in",
"productName": “A",
"quantity": 1,
"country": "Unknown",
"owner": "BABA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "3",
"dataType": "out",
"productName": "C",
"quantity": 1,
"country": "Unknown",
"owner": "GAGA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "4",
"dataType": "in",
"productName": "C",
"quantity": 1,
"country": "Unknown",
"owner": "GAGA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "5",
"dataType": "out",
"productName": "B",
"quantity": 1,
"country": "Unknown",
"owner": "BABA"
}
] ```
I want the A, B, and C
I don't understand how am I going to do that
from the js side too, I don't understand how to get data from there.
I only know how to delete and trade using the tutorial from official site
or at least, it can return me
```
[
{
"$class": "org.stock.mynetwork.Commodity",
"time": "1",
"dataType" : "in",
"productName": "A",
"quantity": 1,
"country": "Unknown",
"owner": "GAGA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "3",
"dataType": "out",
"productName": "C",
"quantity": 1,
"country": "Unknown",
"owner": "GAGA"
},
{
"$class": "org.stock.mynetwork.Commodity",
"time": "5",
"dataType": "out",
"productName": "B",
"quantity": 1,
"country": "Unknown",
"owner": "BABA"
}
] ```
because it has unique product name
@DarwinHarianto lets say you create a query like this:
in your queries.qry:
```
query selectCommodityByProductName {
description: "Select Commodity By ProductName"
statement:
SELECT org.stock.mynetwork.Commodity
WHERE (productName == _$productName) ORDER BY [productName ASC]
}
```
is that ok?
@DarwinHarianto lets say you create a query like this:
in your queries.qry:
```
query selectCommoditiesByProductName {
description: "Select Commodites By ProductName"
statement:
SELECT org.stock.mynetwork.Commodity
WHERE (productName == _$productName) ORDER BY [productName ASC]
}
```
is that ok?
what should I put at the product name button?
tried to put B, it return 2 B data
[ ](https://chat.hyperledger.org/channel/composer?msg=dTKKeMz3kkoEmm8qr) @DarwinHarianto yes, because you have 2 B data
yea, I want to get A B and C
[ ](https://chat.hyperledger.org/channel/composer?msg=9c5YdhNN4LbxYDTan) @DarwinHarianto run the query in a loop ;) and change the parameter every iteration ;)
I don't think I won't get it that way.
I don't know how many times I should loop. Because I don't know how many productName are available
I don't think I will get it that way.
I don't know how many times I should loop. Because I don't know how many productName are available
and I don't know how to get data from js script.
[ ](https://chat.hyperledger.org/channel/composer?msg=sR8Ycd84JwsYqez7Y) @waleed What will be the advantages of using mongoDB over other no-sql databases like cassandra, hive?
[ ](https://chat.hyperledger.org/channel/composer?msg=xeBSuKbdXgds8r2Ni) @DarwinHarianto it doesn't matter. you don't need to know how many productNames are availble. just loop over the array of the productNames
@DarwinHarianto What will be the advantages of using mongoDB over other no-sql databases like cassandra, hive?
Hi all, i am setting up a hyperledger lab with multiple hosts, i was able to setup everything and composer command and ping worked like a charm. i wanted next to install composer rest server as a docker container. i did so, and the composer rest server works well, iu can see the web api calls and everything. when i try to issue identities from the rest server, i get the following error:
Unhandled error for request POST /api/system/identities/issue: Error: Error trying to ping. Error: REQUEST_TIMEOUT
at _checkRuntimeVersions.then.catch (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:842:34)
at
[ ](https://chat.hyperledger.org/channel/composer?msg=9fDyydijdJnjpZST6) @komalbharadiya fast, easy, take a look here: https://www.studytonight.com/mongodb/advantages-of-mongodb
but as I said, you can use what ever you want
could you give me an example what should I write at logic.js so I can read it at my phone using curl post?
@komalbharadiya I've never used Cassandra or hive
@waleed could you give me an example what should I write at logic.js so I can read it at my phone using curl post?
@komalbharadiya I've never used Cassandra or hive
[ ](https://chat.hyperledger.org/channel/composer?msg=uhbzDqKJskJPmf726) @rrishmawi every thing in this project is docerized: https://github.com/4eyes/hyperledger-fabric-composer-snack-shop
take a look at the connection profile here: https://github.com/4eyes/hyperledger-fabric-composer-snack-shop/blob/master/backend/composer/composer-network.sh#L47
[ ](https://chat.hyperledger.org/channel/composer?msg=dbnHt56kGmorMwvdn) @waleed is this a multihost?
[ ](https://chat.hyperledger.org/channel/composer?msg=vqf9YGo7ubPDdcDn4) @rrishmawi yes
[ ](https://chat.hyperledger.org/channel/composer?msg=x7yyLdyS5JjsGq3vP) @waleed THank you for the links, those looks useful, i will let you see my connection file.
{
"name": "hlfv1",
"x-type": "hlfv1",
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300",
"eventHub": "300",
"eventReg": "300"
},
"orderer": "300"
}
}
},
"channels": {
"mychannel": {
"orderers": [
"orderer.example.org"
],
"peers": {
"peer0.org1.example.org": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer1.org1.example.org": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.org",
"peer1.org1.example.org"
],
"certificateAuthorities": [
"ca.example.org"
]
}
},
"orderers": {
"orderer.example.org": {
"url": "grpc://52.229.185.252:7050",
"grpcOptions": {
"ssl-target-name-override": "orderer.example.org"
},
"tlsCACerts": {
"pem": ""
}
}
},
"peers": {
"peer0.org1.example.org": {
"url": "grpc://52.229.185.252:7051",
"eventUrl": "grpc://52.229.185.252:7053",
"grpcOptions": {
"ssl-target-name-override": "peer0.org1.example.org"
},
"tlsCACerts": {
"pem": "removed it intentionally"
}
},
"peer1.org1.example.org": {
"url": "grpc://65.52.184.206:8051",
"eventUrl": "grpc://65.52.184.206:8053",
"grpcOptions": {
"ssl-target-name-override": "peer1.org1.example.org"
},
"tlsCACerts": {
"pem": "removed it intentionally"
}
}
},
"certificateAuthorities": {
"ca.example.org": {
"url": "http://52.229.185.252:7054",
"caName": "ca.example.org",
"httpOptions": {
"verify": false
}
}
}
}
@waleed as you can see i am specificying the actual ip addresses of the peers/ca/orderer. is there anything wrong with that?
[ ](https://chat.hyperledger.org/channel/composer?msg=ku95wpMaeWqXX9BLM) @DarwinHarianto in your .cto file:
```
transaction UniqueCommodities {}
```
[ ](https://chat.hyperledger.org/channel/composer?msg=ku95wpMaeWqXX9BLM) @DarwinHarianto in your .cto file:
```
transaction UniqueCommodities {
o String[] productNames
}
```
and in your queries.qry file:
```
query selectCommoditiesByProductName {
description: "Select Commodites By ProductName"
statement:
SELECT org.stock.mynetwork.Commodity
WHERE (productName == _$productName) ORDER BY [productName ASC]
}
```
and in your logi.js file:
```
```
[ ](https://chat.hyperledger.org/channel/composer?msg=sR8Ycd84JwsYqez7Y) @waleed but when i went through the ledger readthedocs file , i learnt that
a database that holds a cache of the current values of a set of ledger states. The world state makes it easy for a program to directly access the current value of a state rather than having to calculate it by traversing the entire transaction log
that means we need to connect to other external databse to store the data ?
[ ](https://chat.hyperledger.org/channel/composer?msg=ku95wpMaeWqXX9BLM) @DarwinHarianto in your .cto file:
```
transaction UniqueCommodities {
o String[] productNames
}
```
and in your queries.qry file:
```
query selectCommoditiesByProductName {
description: "Select Commodites By ProductName"
statement:
SELECT org.stock.mynetwork.Commodity
WHERE (productName == _$productName) ORDER BY [productName ASC]
}
```
and in your logi.js file:
```
/**
* gets uniqueCommodities
* @param {'org.stock.mynetwork.UniqueCommodities} tx - products names in this object
* @transaction
*/
async function uniqueCommodities(tx) {
let commodities = [];
tx.productNames.forEach((name)=> {
let results = await query('selectCommoditiesByProductName', , {productName: name});
for (let n = 0; n < results.length; n++) {
commodities.push(results[n]);
}
});
// do somthing with commodities
}
```
I hope this helps :)
[ ](https://chat.hyperledger.org/channel/composer?msg=yQpgYrSa2wxnZxCD5) @rrishmawi did you try with the domain name?
[ ](https://chat.hyperledger.org/channel/composer?msg=ic8D7t2NrTvLbX9A5) @mallikarjunasai995 what you read in the documentation is true. but I am taking about the database where you want to store your data. this can be any database you want.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ic8D7t2NrTvLbX9A5) @mallikarjunasai995 Well logically you must first split the data into on-chain and off-chain. For example in my application I have saved user information on-chain using smart contracts, but private contact details of users are stored in an instance of mongoDB that I made for myself. Now in Bitcoin, to get your wallet balance, it will traverse the blocks to see what `utxo` you have and get your balance, whereas in Fabric, the balance will be directly cached so we can get the data by accessing the cache. Now it is possible to get the data by traversing the chain (as in bitcoin), but caching allows it to be faster
The `composer` SDKs will directly connect to the couchDB that is currently being used by your blockchain. Everything here is technically on-chain information, so you don't need to manually connect to external DB, the sdk does it for you.
[ ](https://chat.hyperledger.org/channel/composer?msg=tf2rbq6FpgnpoFiey) @varunagarwal thanks varun but what is the differnce between user information and private contact details.. can you tell any example explaining this .. in my view both are same and considered to be stored on the chain restricting the user access ... lets say he can only access his private details with his identity ... then why am going to off-chain
@mallikarjunasai995 ok so in my use case its like this, user stores some information on chain, say things like the number of houses he owns and their address. Now even if you use identity to control his access to private details, as long as the information is on the chain, it can read by peer nodes. A way to implement this is to use private data channels, in that case you can store information on-chain, but things like their login information or their mobile number can be stored off-chain.
note: When I say off-chain I mean no peer has access to it. For example take KYC of a person or credit score. Bank A and bank B want to share the score, so it is on-chain. But when bank A's employee accesses the system, he also wants to see the bank balance of the person, now the bank balance is private to bank A, they don't need it on the ledger, so they store it off-chain and map it to person. Bank B can do the same thing.
If there was no linkage internally between the person and his account details (achieved by use off-chain storage), then the system wouldn't be as good :)
so now the UI of the employee will query the ledger to get person's information, then make an internal call to a private DB held by the bank to retrieve his balance sheet. So a developer would hand two db to the bank to make the software effective. Imagine getting KYC details of a person, but not being able to get bank balance or statement. Wouldn't be very helpful !
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=wtSenHrAoogZ4EzfH) @varunagarwal awsome expalanation varun thanks very much
no issues. Happy to help
Note that you can also use Fabric's built in private data collections to manage and distribute the private data off-chain - https://hyperledger-fabric.readthedocs.io/en/latest/private-data/private-data.html
Note that you can also use Fabric's built in private data collections to manage and distribute the private data to authorized orgs peers off-chain - https://hyperledger-fabric.readthedocs.io/en/latest/private-data/private-data.html
although, there is no support from Composer for the private data collections, you would have to write Fabric chaincode
[ ](https://chat.hyperledger.org/channel/composer?msg=xjYTxpo8zoNjDzxQc) @varunagarwal just a dumb question ... whats so blockchain thing in this he can simply share his KYC(collected by bank A to bank B) with a simple api call
Hi guys,
i have enabled the rest server in multi user mode and imported the networkadmin.card into the wallet section and trying to create participant but failed and getting the below error
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying to ping. Error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '5984b7edbdc873b551e3a9cd8717279373d76551ca7b51ee9c8d000e928d66cd', has not been registered",
"stack": "Error: Error trying to ping. Error: transaction returned with failure: Error: The current identity, with the name 'admin' and the identifier '5984b7edbdc873b551e3a9cd8717279373d76551ca7b51ee9c8d000e928d66cd', has not been registered\n at _checkRuntimeVersions.then.catch (/usr/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:886:34)\n at
When I get this error starting composer network what does it mean?
Error: Error trying to start business network. Error: Failed to connect to any peer event hubs. It is required that at least 1 event hub has been connected to receive the commit event
@mallikarjunasai995 so the concept is customer X goes to bank A and gives kyc. He opens a bank account with A. Now he goes to bank B. Bank B, instead of doing a KYC check, use the blockchain to verify customer X through bank A. This requires them and bank A to use the same ledger for storing and checking KYC details. Because two untrusting, legally different entities are to share a common DB, a blockchain architecture is perfect. Now imagine if its 4-5 different banks, where each bank wants a certain amount of exclusivity for some customers, or want to charge each bank for kyc verification
Okay thanks @varunagarwal
[ ](https://chat.hyperledger.org/channel/composer?msg=dkoi23gRW5TJT7moX) I got it, all the Docker containers must be stopped and removed because if not, some caches for the bna are still there
What is the best strategy for asset ID?
I have created a composer-rest-server but when I go to http://localhost:3000/explorer I am unable to see the participants and transactions in the network.
I have created a composer-rest-server but when I go to http://localhost:3000/explorer I am unable to see the participants and transactions in the network.Please Help
@SameerKulkarni can you post a screenshot of what shows up, and if an error is shown on the console when using the command?
Has joined the channel.
>cp -r composer-networks/packages/
cp: missing destination file operand after 'composer-networks/packages/'
Try 'cp --help' for more information. #composer
here i'm trying to take one of sample networks and i want to put it into my own repository to work with but it gives me that message.
>cp -r composer-networks/packages/
cp: missing destination file operand after 'composer-networks/packages/'
Try 'cp --help' for more information.
here i'm trying to take one of sample networks and i want to put it into my own repository to work with but it gives me that message.
I'm trying to download Fabric in ubuntu but I couldn't because it shows that error. error pulling image configuration: Get https://production.cloudflare.docker.com/registry-v2/docker/registry/v2/blobs/sha256/c8/c8b4909d8d46f41dc8a111937e4bacf2b3b4cf2816c8553ffde2cf497acd901d/data?verify=1550251944-uHSYU8poIp5GJZPGIQBvWIJ6Pz4%3D: dial tcp: lookup production.cloudflare.docker.com on 127.0.0.53:53: read udp 127.0.0.1:46587->127.0.0.53:53: i/o timeout
[ ](https://chat.hyperledger.org/channel/composer?msg=uDTjgNWo83eFPzCkD) @varunagarwal Says different version but in package.json the code is
IMG_20190216_144250.jpg
IMG_20190216_144540.jpg
[ ](https://chat.hyperledger.org/channel/composer?msg=uDTjgNWo83eFPzCkD) @varunagarwal the package.json file is follows `{
"engines": {
"composer": "^0.20.7"
},
"name": "perishable-network",
"version": "0.0.1",
"description": "Hospital Network",
"scripts": {
"prepublish": "mkdirp ./dist && composer archive create --sourceType dir --sourceName . -a ./dist/perishable-network.bna",
"pretest": "npm run lint",
"lint": "eslint .",
"test": "nyc mocha -t 0 test/*.js && cucumber-js"
},
"keywords": [
"composer",
"composer-network"
],
"author": "Ashutosh",
"email": "ashutoshprakash11@gmail.com",
"license": "Apache-2.0",
"devDependencies": {
"composer-admin": "^0.20.7",
"composer-cli": "^0.20.7",
"composer-client": "^0.20.7",
"composer-common": "^0.20.7",
"composer-connector-embedded": "^0.20.7",
"composer-cucumber-steps": "^0.20.7",
"chai": "latest",
"chai-as-promised": "latest",
"cucumber": "^2.2.0",
"eslint": "latest",
"nyc": "latest",
"mkdirp": "latest",
"mocha": "latest"
}
}`
@SameerKulkarni tAs per the 2nd screenshot, it seems that composer-runtime in your repo is 0.20.7 whereas the one on your CLI is 0.19. Type `composer -v` and see what is outputted, if it is NOT 0.20.7, then you can update the CLI version to 0.20.7
so the version of composer installed in your `node_modules` folder determined by your `package.json` must match that version in your `CLI`
will there still be fixes on high priority and critical bugs for composer currently?
will there still be fixes on high priority and critical bugs for composer currently or it will be put on paused ?
can any one tell me what does this exactly mean :
This looks like a problem with the Network Admin card you have imported. When the Identity is Issued (and the Card is created) a one-time secret is created. When the card is used for the first time the secret is exchanged for Certificates/Keys and the the one-time secret is invalidated.
hi have another doubt ... i have a model like below :
namespace net.biz.digitalPropertyNetwork
participant Person identified by personId {
o String personId
o String firstName
o String lastName
}
and i want to create an instance based on the last name of the model .because i configured acl rules based on the last name how can i mentioned a participant instance based on the last name (note: last name will be differ for each and every participant consider that as a unique one)
so can i create like this --
net.biz.digitalPropertyNetwork#lastNmae or with the personId only we have create ?
Hello, is there any way to open like an arrayList for any participant as a field. For example Participant has IDs : 1 from the government, 1 for Driving licence and to be opened so that at later point the participant can add more IDs
?
rerr.png
[ ](https://chat.hyperledger.org/channel/composer?msg=rs3cM6XTQnpYJMeKc) @varunagarwal My commposer version is 20.7 but now the error shows "Unexpected end of JSON input"
[ ](https://chat.hyperledger.org/channel/composer?msg=gt3QbG5XS4na65dp4) @SameerKulkarni yes i have faced some kind of similar issue .. if you are giving input as an integer or number but you declared that as string in the model .. this error will occur
in my case i havent given any type to the owner filed in the model so the default type when i generated the rest server for that field is this ..{}
so when i want to give the input i have to remove the {} value in that and then gave the string with double quotes .. that way i got resolved this json error
[ ](https://chat.hyperledger.org/channel/composer?msg=XpwYBokZYpCLz6nHS) @mallikarjunasai995 I got your point.. but can you please tell me where and what changes should I make?
[ ](https://chat.hyperledger.org/channel/composer?msg=NejX8xRh665gCm99Z) @SameerKulkarni dont know then
Hi ! is it possible to perform type cast in the Queries i.e, in the queries.qry file ? I'm trying to typecast a field from string to date and perform some date comparsion operation but could find anyhting supporting it. If it possible, can someone please provide a example for the same.
Hi all, i have this following problem Composer runtime (0.19.19) is not compatible with client (0.19.16), and i want to downgrade composer, how to do that?
Hi all, ``````
we have deployed a composer blockchain network based on the deploy-to-fabric-multi-org guide (https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org)```
Now, we are trying to convert this network so the rest server will run on a different machine than the peers.```
what is the best way to do it? is their another tutorial that we can use?
```
```
Hi all,
we have deployed a composer blockchain network based on the deploy-to-fabric-multi-org guide (https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org)
Now, we are trying to convert this network so the rest server will run on a different machine than the peers.
what is the best way to do it? is their another tutorial that we can use?
```
```
Hi all,
we have deployed a composer blockchain network based on the deploy-to-fabric-multi-org guide (https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org)
Now, we are trying to convert this network so the rest server will run on a different machine than the peers.
what is the best way to do it? is their another tutorial that we can use?
Howdy. I have a composer BNA running on top of a mono organisation, 4 peers fabric and interact through the composer REST API. I seem to reach a threshold of 10 tps and if I push more than that, the system will start collapsing after reaching timeouts and the docker images dev-peer* will get killed...
What is really perplexing to me, is the 10 tps threshold. I tried deploying it locally, on a medium sized VM in GCP and on a baremetal server with high capabilities. I always have the same tps... Any idea what could be the reason ? What could be the bottleneck and where should I investigate to try and improve performances (let's dream and ask for 20tps ?)
Howdy. I have a composer BNA running on top of a mono organisation, 4 peers fabric and interact through the composer REST API. I seem to reach a threshold of 10 tps. If I push more than that, the system will start collapsing after reaching timeouts and the docker images dev-peer* will get killed...
What is really perplexing to me, is the 10 tps threshold. I tried deploying it locally, on a medium sized VM in GCP and on a baremetal server with high capabilities. I always have the same tps... Any idea what could be the reason ? What could be the bottleneck and where should I investigate to try and improve performances (let's dream and ask for 20tps ?)
Howdy
I have a composer BNA running on top of a mono organisation, 4 peers fabric and interact through the composer REST API. I seem to reach a threshold of 10 tps. If I push more than that, the system will start collapsing after reaching timeouts and the docker images dev-peer* will get killed...
What is really perplexing to me, is the 10 tps threshold. I tried deploying it locally, on a medium sized VM in GCP and on a baremetal server with high capabilities. I always have the same tps limitation... Any idea what could be the reason ? What could be the bottleneck and where should I investigate to try and improve performances (let's dream and ask for 20tps ?)
Hey everyone,
I have a composer BNA running on top of a mono organisation, 4 peers fabric and interact through the composer REST API. I seem to reach a threshold of 10 tps. If I push more than that, the system will start collapsing after reaching timeouts and the docker images dev-peer* will get killed...
What is really perplexing to me, is the 10 tps threshold. I tried deploying it locally, on a medium sized VM in GCP and on a baremetal server with high capabilities. I always have the same tps limitation... Any idea what could be the reason ? What could be the bottleneck and where should I investigate to try and improve performances (let's dream and ask for 20tps ?)
Hey everyone,
I have a composer BNA running on top of a mono organisation, 4 peers Fabric network. I interact with the network through the composer REST API. I seem to reach a threshold at 10 tps. If I push more than that, the system will start collapsing and after reaching timeouts, the docker images dev-peer* will get killed...
What is really perplexing to me, is the 10 tps threshold. I tried deploying it locally, on a medium sized VM in GCP and on a baremetal server with high capabilities. I always have the same tps limitation... Any idea what could be the reason ? What could be the bottleneck and where should I investigate to try and improve performances (let's dream and ask for 20tps ?)
Hi All, we have a situation here, we have Peer1 on PC1 and Peer2 on PC2, we are able to install BNA, but when we start the composer network it gives error `Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)`. So we went into the logs of Peer1 and we were able to find *ProcessProposal -> ERRO 558* , have anyone seen such issue, or can recommend a solution around it.
Hi All, we have a situation here, we have Peer1 on PC1 and Peer2 on PC2, we are able to install BNA, but when we start the composer network it gives error `Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)`. So we went into the logs of Peer1 and we were able to find *ProcessProposal -> ERRO 558* , have anyone seen such issue, or can recommend a solution around it.
Hi All, we have a situation here, we have Peer1 on PC1 and Peer2 on PC2, we are able to install BNA, but when we start the composer network it gives error `Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)`. So we went into the logs of Peer1 and we were able to find *ProcessProposal -> ERRO 558* , have anyone seen such issue, or can recommend a solution around it.
Hi All, we have a situation here, we have Peer1 on PC1 and Peer2 on PC2, we are able to install BNA, but when we start the composer network it gives error ```
``` Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)`. ```
``` So we went into the logs of Peer1 and we were able to find *ProcessProposal -> ERRO 558* , have anyone seen such issue, or can recommend a solution around it.
Hi All, we have a situation here, we have Peer1 on PC1 and Peer2 on PC2, we are able to install BNA, but when we start the composer network it gives error
``` Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: Unknown chaincodeType: NODE)`. ```
So we went into the logs of Peer1 and we were able to find *ProcessProposal -> ERRO 558* , have anyone seen such issue, or can recommend a solution around it.
Has joined the channel.
Hello everyone, I have generated a composer-rest-server but I am having trouble using ajax from my locally deployed web application to complete a GET request to the REST API (locally deployed aswell) so I was wondering does anyone have a solution to this? Thanks!
Has joined the channel.
Has joined the channel.
Hello. In composer, identities MUST be linked to a participant. Why is that so? In my case I want an identity that is not represented as a participant in my network. Isn't it possible?
Has joined the channel.
hello everyone, we had our network up and we want now to use the composer to build the application, please recommend us a tutorial or steps
[ ](https://chat.hyperledger.org/channel/composer?msg=hsPM4Ls2g2euJprGg) @pprwong Can you access localhost:3000/explorer and consult the swagger ?
If yes, then your problem is likely not related to composer but just regular client-server errors. Did you notice that the api uses localhost:3000/`api`/... ?
In the swagger explorer, you can see the curl command line used to contact the API
[ ](https://chat.hyperledger.org/channel/composer?msg=hsPM4Ls2g2euJprGg) @pprwong Can you access localhost:3000/explorer and consult the swagger ?
If yes, then your problem is likely not related to composer but just regular client-server errors. Did you notice that the api uses localhost:3000/*api*/... ?
In the swagger explorer, you can see the curl command line used to contact the API
[ ](https://chat.hyperledger.org/channel/composer?msg=hsPM4Ls2g2euJprGg) @pprwong Can you access localhost:3000/explorer and consult the swagger ?
If yes, then your problem is likely not related to composer but just regular client-server errors. Did you notice that the api uses localhost:3000/*api*/... ?
In the swagger explorer, you can see the curl command line used to contact the API
[ ](https://chat.hyperledger.org/channel/composer?msg=hsPM4Ls2g2euJprGg) @pprwong Can you access localhost:3000/explorer and consult the swagger ?
If yes, then your problem is likely not related to composer but just regular client-server errors. Did you notice that the api uses localhost:3000/ *api* /... ?
In the swagger explorer, you can see the curl command line used to contact the API
[ ](https://chat.hyperledger.org/channel/composer?msg=hsPM4Ls2g2euJprGg) @pprwong Can you access localhost:3000/explorer and consult the swagger ?
If yes, then your problem is likely not related to composer but just regular client-server errors. Did you notice that the api uses `localhost:3000/ *api* /...` ?
In the swagger explorer, you can see the curl command line used to contact the API
[ ](https://chat.hyperledger.org/channel/composer?msg=hsPM4Ls2g2euJprGg) @pprwong Can you access localhost:3000/explorer and consult the swagger ?
If yes, then your problem is likely not related to composer but just regular client-server errors. Did you notice that the api uses `localhost:3000/api/...` ?
In the swagger explorer, you can see the curl command line used to contact the API
Hi, is it possible to use Private Data Collections in Composer latest version?
Hi all, is this possible to invoke one chaincode into another chaincode in composer
[ ](https://chat.hyperledger.org/channel/composer?msg=fyQ2qrdcHmh9uGvzt) @JP https://www.google.com/search?q=invoke+one+chaincode+into+another+chaincode+in+composer&oq=invoke+one+chaincode+into+another+chaincode+in+composer&aqs=chrome..69i57.763j0j7&sourceid=chrome&ie=UTF-8
The first link on stack overflow should help you with a link to a tutorial :stuck_out_tongue_closed_eyes:
The tutorial directly: https://hyperledger.github.io/composer/latest/tutorials/invoke-composer-network
@JoeTech No.
[ ](https://chat.hyperledger.org/channel/composer?msg=i8TuPyopwniyrZ4qZ) I tried but it will throw an error like
Error: transaction returned with failure: Error: Error: The current identity, with the name 'admin' and the identifier '188c4eae0b710936cf4f791cd16a35945aa8c16011af5ae3aa0f7c53e16d5060', must be activated (ACTIVATION_REQUIRED)
Hi experts, i am having an issue, which is exactly like this https://stackoverflow.com/questions/53864854/cannot-take-data-on-hyperledger-composer-rest-server-after-a-few-minutes-timeou, i tried the solution proposed but with no luck, is there anything that i need to?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=xDt2MdM8ySbpYgRZ8) @JP Make sure you are using the correct tutorial version, based on your composer version: https://hyperledger.github.io/composer/latest/tutorials/invoke-composer-network
[ ](https://chat.hyperledger.org/channel/composer?msg=xDt2MdM8ySbpYgRZ8) @JP Make sure you are using the correct tutorial version, based on your composer version (hflv1.2)
[ ](https://chat.hyperledger.org/channel/composer?msg=xDt2MdM8ySbpYgRZ8) @JP Make sure you are using the correct tutorial version, based on your composer and fabric version (hflv1.2)
[ ](https://chat.hyperledger.org/channel/composer?msg=74YCbKh8RrTD9byjm) i am using fabric version (hflv1.3) and composer v 0.20.5
Hey people, I am trying to configure the composer-rest-server to support bigger block sizes per transactions right now it creates 1 block per 6 transaction and it only seems to write every 2 seconds
can someone help?
There is a config file where you can set the batch size (or something called like this)
i changed it and it doesnt work
im using fabric-dev-servers tutorial example to set my network i changed all the configtx.yaml files in all hlfv versions and it still does 6 transactions per second my composer-rest-server
unless its a file within the composer-rest-server?
Hi! As explained here (https://stackoverflow.com/a/47718529/6213883), endorsement policies cannot be managed through composer. Is it still the case?
hi @florianc i came about this while searching https://www.devprovider.com/block-parameters-composer-network/ hopefully its gonna work testing it now
Is possible to work with tokens in hyperledger?
Is possible to work with tokens in hyperledger? There are no accounts or addresses
@JoeTech Yes, to work with tokens, you can define your own asset. `Participants` can be used to replace the need for accounts/ addresses. The advantage here is you can create as many different type of tokens with custom rules
So I understand it could be possible to mimic an ERC20 token, with participants as addresses and asset properties and transactions as an erc20 smart contract
yes and you can add fancy functions that an erc20 token can never have
@JoeTech One such idea for creating tokens https://github.com/IBM/Decentralized-Energy-Composer/blob/master/models/model.cto#L37-L43
and with stellar ? there are some post talking about https://medium.com/coinmonks/leveraging-stellar-for-settling-transactions-on-hyperledger-fabric-network-8c22c141af70
and with stellar ? there are some post talking about https://medium.com/coinmonks/leveraging-stellar-for-settling-transactions-on-hyperledger-fabric-network-8c22c141af70 I would like to use an stable coin with Hyperledger
[ ](https://chat.hyperledger.org/channel/composer?msg=ZC4jJEpz9pQYsZXny) @varunagarwal thank you
Has joined the channel.
@JoeTech when i use the `fabric-dev-servers` to create fabric instance and then i execute the `composer-playgroud` command to start,
Clipboard - February 20, 2019 8:38 AM
can't connected,how can i resolve
Is the event listener API available? I didn't see this API in the API documentation, and I can't get any results with it.
Hello everyone. I have a problem. ERROR INFO: Error: Error trying invoke business network with transaction id 516af2ee5c49e9108c03050e758ff3ee771a479d3985028255ceb0f591c426f6. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: transaction returned with failure: Error: Object with ID '0643' in collection with ID 'Asset:com.laresblockchain.healthcare.Sample' does not exist
Model cto : transaction CreateSample {
--> MedicalProfessional creator
o Sample newSample
}
Screen Shot 2019-02-20 at 11.20.47 AM.png
@hyperledger-bot
Is there a way to have more than one logic.js file?
Sure. @Smit95shah [ ](https://chat.hyperledger.org/channel/composer?msg=bxLxgGjnihLxiTjCP)
@Smit95shah https://github.com/4eyes/hyperledger-fabric-composer-snack-shop/tree/master/backend/composer/composer-network/lib
@Jehutty That is a little bit "cheating". It is changing the block param hrough fabric, not composer ^^. Thanks anyway :)
[ ](https://chat.hyperledger.org/channel/composer?msg=ZC4jJEpz9pQYsZXny) @varunagarwal I have seen Hyperledger Quilt, I think that could be the way to make proof of payment in my app, but how could I add quilt to my Fabric project?
@waleed In Hyperledger Fabric Can we give Dynamic permissions to participants?
Like Buyer want to see shipper details Buyer sends request to shipper if shipper accepts request Buyer can see shipper details
?
@waleed @sureshtedla @varunagarwal hi i have enabled the secuirty using github for my composer rest server ... but how can i achieve the same using simple username/passowrd ?
does anybody know how use passport-ldap strategy for hyperledger composer ?
Clipboard - February 20, 2019 4:40 PM
Clipboard - February 20, 2019 4:40 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=XMcGhHYTXbifuY3zu) @mallikarjunasai995 Well for this I think there is support for `passport.js`, I for one, made my own login system using `mongoDB`. Personally I found it easier to do this, but I have seen multiple people successfully authentication with `composer-rest-server`
[ ](https://chat.hyperledger.org/channel/composer?msg=4BM9pbyMwF9AqYLub) @JoeTech No clue about that. Though Fabric assets should allow you to define whatever complexity you would like
[ ](https://chat.hyperledger.org/channel/composer?msg=nLKjwaFRwQ49wpdGh) @jxddmoto Do a query for `laresblockchain.healthcare.Sample#0643` and see what comes, this error occurs when no `Sample` asset is detected with ID 0643. Alternatively just query the entire asset table and print out the ids to confirm
After making changes in model.cto file in composer playground when I try to deploy the changes then the following error pops up "Error: Error trying install business network. Error: The business network is already installed on all the peers" . Please suggest a solution.....
you need to skip the install command and directly use `composer network upgrade`
@SameerKulkarni ^^
make sure you clean the previous bna version image file and bump the version in your `package.json`
[ ](https://chat.hyperledger.org/channel/composer?msg=smZt25jipbwvEuFp2) @varunagarwal Thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=YF7dKXz9htNPLTASw) Did as you said now error shows "
Error: Error trying to upgrade business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
"
[ ](https://chat.hyperledger.org/channel/composer?msg=pzusXt5xpg8W42LCf) @varunagarwal okay thanks ... am going to use passport-ldap
Has left the channel.
Has joined the channel.
Is anyone free for sometime to help me with a good understanding of endorsing and consensus in fabric?
Hi, I am using composer-rest-server with passport-jwt. everything is working from postman. I need to connect it to angular and I am not able to use Cookies for authentication. Has anyone had any luck in getting the access_token cookie in angular? or is there any way by which the access code can be returned instead of a cookie?
Has left the channel.
Has joined the channel.
Hi, I want to ask about logic.js
how can I check if an asset exist or not?
if it is not exist, I want to add that asset
hi, how can I add an asset using logic.js
suppose I have a model like this
```
namespace org.stock.mynetwork
asset Commodity identified by time {
o String time
o String dataType
o String productName
o Double quantity
o String country
--> Trader owner
}
```
Get the asset registry, get the factory, create the new asset using the factory and add it to the registry
Somehting like htis
var assetRegistry = await getAssetRegistry('
so like this?
```
var assetRegistry = await getAssetRegistry('org.stock.mynetwork.Commodity');
var factory = await getFactory();
var asset = await factory.newResource('org.stock.mynetwork', 'Commodity', 'time');
asset.dataType = dataType;
asset.productName = productName;
asset.quantity = quantity;
asset.country = country;
asset.owner = owner;
await assetRegistry.add(asset);
```
how can I do query with multiple input?
suppose the query is named getNameAndCountry with variables name and country
I do that like this?
```
let object = await query('getNameAndCountry','org.stock.mynetwork.Commodity', country', 'productName');
```
@florianc thanks for answering really appreciate it
[ ](https://chat.hyperledger.org/channel/composer?msg=iCvjc6XfYMfGH2iuM) @DarwinHarianto I don't know about queries, never used them.
hey,
i created 2 instances of rest-server using docker on 3000 and 3001
and i opened the 3000 and 3001 to public for outside use check the connectivity
but 3001 didnt get connected, why is that?
did you open the port?
yeah in server i opend the port both 3000 and 3001
Hello, how it is possible to call a node.js module within a node chaincode?
Hello, how it is possible to call a node.js module within a node chaincode? for instance a node module that makes a stellar payment with stellar API
Please, could you get a channel to disccuss that?
Please, could you get me a channel to disccuss that?
Hi, is it possible to call HTTP GET inside chaincode?
@JoeTech , As per https://hyperledger.github.io/composer/v0.19/integrating/call-out , you can make an external call from transaction processor
[ ](https://chat.hyperledger.org/channel/composer?msg=Xr9F3y2Tuaqrn4Niq) @pravn1729 I know, but I was looking for node.js chaincode
[ ](https://chat.hyperledger.org/channel/composer?msg=YxNQ2YH4nJrqeZvfr) @JoeTech Okay Joe. I have not tried this.
Can multiple relationships in the access control file be resolved? I can't get the results I want in this way.
Can multiple relationships in the access control file be resolved? I can't get the results I want in this way.
Hi , i have a problem with the creation of an asset : i want to create an asset using assetRegistry and i haven taken this example : ` */
function onTestAsset(tx) {
var factory = getFactory();
var asset = factory.newResource('org.acme.sample', 'SampleAsset', tx.assetId)
return getAssetRegistry('org.acme.sample.SampleAsset')
.then(function(registry) {
registry.add(asset)
});
}`
Hi , i have a problem with the creation of an asset : i want to create an asset using assetRegistry and i haven taken this example : ` */
function onTestAsset(tx) {
var factory = getFactory();
var asset = factory.newResource('org.acme.sample', 'SampleAsset', tx.assetId)
return getAssetRegistry('org.acme.sample.SampleAsset')
.then(function(registry) {
registry.add(asset)
});
}` And i have a create a transaction and a Asset named Sample Asset with String assetId. But in this case i create an asset with and ID choosen by me. I want to create an asset with more fields , for example and asset with assetID, name etc...., How can i do that? I have modified this line of code :`var asset = factory.newResource('org.acme.sample', 'SampleAsset', tx.assetId,tx.name)` but it doesn't works. Can you help me?
Hi , i have a problem with the creation of an asset : i want to create an asset using assetRegistry and i haven taken this example : ` */
function onTestAsset(tx) {
var factory = getFactory();
var asset = factory.newResource('org.acme.sample', 'SampleAsset', tx.assetId)
return getAssetRegistry('org.acme.sample.SampleAsset')
.then(function(registry) {
registry.add(asset)
});
}` And i have create a transaction named TestAsset and an Asset named Sample Asset with String assetId. I want to create an asset with more fields , for example: `asset SampleAsset identified by assetId {
o String assetId
o String name
o String surname
}` How can i do that? I have modified this line of code :`var asset = factory.newResource('org.acme.sample', 'SampleAsset', tx.assetId,tx.name)` but it doesn't works. Can you help me?
Hi , i have a problem with the creation of an asset : i want to create an asset using assetRegistry and i haven taken this example : ` */
function onTestAsset(tx) {
var factory = getFactory();
var asset = factory.newResource('org.acme.sample', 'SampleAsset', tx.assetId)
return getAssetRegistry('org.acme.sample.SampleAsset')
.then(function(registry) {
registry.add(asset)
});
}` And i have create a transaction named TestAsset and an Asset named Sample Asset with String assetId. I want to create an asset with more fields , for example: `asset SampleAsset identified by assetId {
o String assetId
o String name
o String surname
}` How can i do that? I have modified this line of code :`var asset = factory.newResource('org.acme.sample', 'SampleAsset', tx.assetId,tx.name,tx.surname)` but it doesn't works. Can you help me?
@FilippoD try to do this?
var asset = factory.newResource('org.acme.sample', 'SampleAsset', tx.assetId)
asset.name = tx.name
asset.surname = tx.surname
hi guys, how can I compare a relationship data with a normal data?
suppose I have this
```
asset Commodity identified by time {
o String time
o String dataType
o String productName
o Double quantity
o String country
--> Trader owner
}
```
if I call the data using query
then data.owner is compared with a simple "string", how can I do that?
Has joined the channel.
@DarwinHarianto 1) Get the `asset` using `bnc.getAssetRegistry('org.name.Commodity').get('foo'). Now `foo.owner` will give you the ID for the `Trader`. Then you extract this from the `Trader` registry by doing `bnc.getParticipantRegistry('org.name.Trader ').get(foo.owner)
so say something like this
```
await bnc.connect(someCard);
let registry= await bnc.getAssetRegistry(`org.acme.Commodity`);
```
so say something like this
```
await bnc.connect(someCard);
let registry= await bnc.getAssetRegistry(`org.acme.Commodity`);
let item = await registry.get('foo');
let registryTwo = await bnc.getParticipantRegistry(`org.acme.Trader`);
let trader = await registryTwo.get(item.owner);
// Continue your code
```
what's the difference between using bnc.getAssetRegistry() and await assetRegistry()?
@varunagarwal
so foo is my time?
await assetRegistry() is used when writing composer chaincode, bnc.getAssetRegistry is used when interaction with composer with the nodejs SDK
await assetRegistry() is used when writing composer chaincode, bnc.getAssetRegistry is used when interactingwith composer using nodejs SDK
yes `foo` is the time of the `Commodity`. @DarwinHarianto
I was not sure where you writing the code so gave the options
thanks for the answer @varunagarwal , I'm relatively new on this
where can I see the tutorial for nodejs sdk?
I have only did some tutorial on the their main page.
I want to try the historian to take only the newest one, not the oldest one. is the one on main page is using ChaincodeInvocationSpec?
thanks for the answer @varunagarwal , I'm relatively new on this
where can I see the tutorial for nodejs sdk?
I have only did some tutorial on the their main page.
I want to try the historian to take only the newest one, not the oldest one. is the one on main page is using Chaincode?
@DarwinHarianto Refer to this https://github.com/hyperledger/fabric-samples for samples for nodejs and go chaincode as well as the SDKs. This repo has got everything you should need
Only thing it lacks is a demo to show how you can restrict chaincode invocations on a per user basis. For this I have opened a PR at https://github.com/IBM/decentralized-energy-fabric-on-IBP20/pull/8 . If it gets accepted, then this is probably one way to do it
@varunagarwal do you know what will happen after? currently I tried to developed my version using composer without seeing or doing anything on fabric level. I tried to use fabric, but it seems to be too hard to interface it with a phone.
with composer I can do rest server, will that happen on fabric?
No on Fabric you need to write your own APIs using the SDKs. There is no equivalent of `composer-rest-server`
[ ](https://chat.hyperledger.org/channel/composer?msg=nnM3EYQghphxiAQsJ) @DarwinHarianto Yes , but it doesn't works ...
[ ](https://chat.hyperledger.org/channel/composer?msg=jhokf8oe93a9vw6nP) Sorry , i don't understand but now it works :D , thanks you
has anybody used LDAP/opendj to authneticate the rest server ... well , when i did this am getting below error ... i tried adding datasource.json file also but no luck (followed the basic github issues and added the necessary things )
SyntaxError: Unexpected string in JSON at position 864
at JSON.parse (
but when i run the same composer rest server with github it is running without the above errors
actually am getting error in the server.js follwing line
providers = JSON.parse(process.env.COMPOSER_PROVIDERS);
Has joined the channel.
in composer providers of github:
export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "REPLACE_WITH_CLIENT_ID",
"clientSecret": "REPLACE_WITH_CLIENT_SECRET",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "/",
"failureRedirect": "/"
}
}'
what is callbackURL function ? is it sending token back(from github issued one ) to the rest server ?
Has joined the channel.
Has joined the channel.
Which is best for a farm to fork food supply chain system? Sawtooth, Fabric or just Composer?
Hi,
I have created network, started that using composer-rest-server command and added participants. Those have created successfully.
I have stop composer-rest-server and trying to create Card of one of participant that I have created.
But I am getting error :
Issue identity and create Network Card for: pract1
X Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed
Hi,
I have created network, started that using composer-rest-server command and added participants. Those have created successfully.
I have stop composer-rest-server and trying to create Card of one of participant that I have created.
But I am getting error :
Issue identity and create Network Card for: pract1
*X* Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed
hello
@BharatGodhani This usually happens when you start a new fabric-ca but the cards that were signed from the old one are still active in the system
@varunagarwal Thanks, Can you help me which cards needed to be removed before fabric?
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=qynPJfrP95reeL2k6) @varunagarwal @davidkel @sureshtedla @pravn1729 can you please help me on the above query ?
[ ](https://chat.hyperledger.org/channel/composer?msg=E5ApmcuDX8We5wsq5) @mallikarjunasai995 Yes, Once the authentication is done, the access token will be returned to callbackurl
Hi team,
Do we have something similar to Ethereum Oraclize as data carrier in Hyperledger?
Regards
Hi,
Do we have something similar to Oraclize as data carrier in Hyperledger Composer?
Regards
[ ](https://chat.hyperledger.org/channel/composer?msg=shesX2Yd6mGNkup9w) @pravn1729 okay thanks
*o String[] praiseUserIds*,An array property I defined,But when I call this function *praiseUserIds.push(userId)* ,an error occurred, TypeError: Cannot read property 'forEach' of undefined. How should I solve, brothers.
*praiseUserIds.forEach(userId)* is also like this, Should be an array method, but the program is understood as a property, How should I solve, brothers.
@wangkaixuan `forEach` means there is an error in your `for` loop where you fetching the `userId`. First make sure you do `praiseUserIds = []` before starting adding, then in the `for` loop for debugging purposes, console.log the `i` value and see at what index the error is thrown
I am planning to prototype a project using Composer. But I'll be moving to Fabric too. Which installation instructions should I follow to install Composer and Fabric? I found some differences in the docker images being pulled in the Composer and Fabric installation scripts.
I am planning to prototype a project using Composer. But I'll be moving to Fabric too. Which installation instructions should I follow to install Composer and Fabric? Is there going to be any version issues or mismatch issues between the docker images? I found some differences in the docker images being pulled in the Composer and Fabric installation scripts.
[ ](https://chat.hyperledger.org/channel/composer?msg=DrePb8SCFmwcRbaD2) @sebastiantf Hello sebstian!
I started the other way round.
[ ](https://chat.hyperledger.org/channel/composer?msg=DrePb8SCFmwcRbaD2) @sebastiantf I started with Fabric and am currently working on Composer. Yes there are some docker container names conflicts. Yet they are manageable
@varunagarwal Thank you very much, my problem has been solved, because the attribute declaration is *optional*, the initial state is *undefined*, not* []*.
Hi All, Good Morning !!!
Is this possible for after installed a chaincode with two peers (A and B) then add a new peer (C),
can i install and instantiate the (A and B) peers chaincode ledger into the new peer (C) ?
it means (A and B) transaction should be sign the proposal from new peer (C).
Hi All, Good Morning !!!
Is this possible for after installed a chaincode with two peers (A and B ) then add a new peer (C),
can i install and instantiate the (A and B ) peers chaincode ledger into the new peer (C) ?
it means (A and B ) transaction should be sign the proposal from new peer (C).
@wangkaixuan no issues, but even if its optional or not, the initial state is always undefined. So you would need to set it to [ ] irrespective
Has joined the channel.
Hi everyone. I can’t get nyc / istanbul to show any test coverage. I always get 0%, even if i run the tests from the sample generated by ```yo hyperledger-composer:businessnetwork```
Does anyone know how to fix this ? am i the only one experiencing this issue ?
I have found that if i run the tests from ibm's developerworks samples ( composer v. 14 ) it does create a coverage report with actual percentages. https://github.com/makotogo/developerWorks/
Has joined the channel.
Hi. My name is Krishna.
Trying to configure hyperledger fabric 1.3 from source https://hyperledger-fabric.readthedocs.io/en/release-1.3/build_network.html
Can anyone let me know procedure to setup composer-playground with fabric 1.3? #fabric-questions #composer
While generating composer rest server i encouontered the following error
Input command "composer network start --networkName perishable-network --networkVersion 0.0.1 --card PeerAdmin@hlfv1 --networkAdmin admin --networkAdminEnrollSecret adminpw --file networkadmin.card" OutPut is ` "✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)"
[ ](https://chat.hyperledger.org/channel/composer?msg=NoJzDTWdS3BargXqB) @varunagarwal Ok, I will do that.
Has joined the channel.
Hi there!
I am trying to deploy a bussiness network using IBM Blockchain Service. I've followed different tutorials but I'm stuck with an error. I install the chaincode but when I want to start the network (composer network start ...) I get the next error: `Error trying to start business network. Error: No valid responses from any peers. Unexpected response of 500.`
I am trying to deploy a bussiness network using IBM Blockchain Service. I've followed different tutorials but I'm stuck with an error. I can install the chaincode but when I want to start the network (composer network start ...) I get the next error: `Error trying to start business network. Error: No valid responses from any peers. Unexpected response of 500.`
I realize I have the same problem of @komalbharadiya
[ ](https://chat.hyperledger.org/channel/composer?msg=3EDeLu4TKJ5NH958c) Anyone with any form of solution?
[ ](https://chat.hyperledger.org/channel/composer?msg=KGRA4EYYtXGTbkAic) @anant706 https://hub.clause.io THis is the closest I can find. Technically Fabric does not need an Oraclize like Ethereum does since it can make HTTP requests from within chaincode smart contracts, so it doesn't need to rely on a 3rd party product to fetch information from APIs
[ ](https://chat.hyperledger.org/channel/composer?msg=bLH5xqdbHYu3gY4sh) @komalbharadiya first check whether you have installed the chaincode on the peer or not ... have you performed composer network install command ..?
[ ](https://chat.hyperledger.org/channel/composer?msg=NT4euemhDvhanzB75) @Misantonio I am also getting this error while deploying locally. I'm following the composer documentation developer tutorial. Please anyone help. Seems like many are getting this issue. Please help. Urgent
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Z44vZgSrsWLBAnyTM) @Misantonio @komalbharadiya Following the documentation for Composer v0.19 works just fine. There is some bug in the latest version of Composer/Fabric.
https://hyperledger.github.io/composer/v0.19/installing/installing-prereqs.html
https://hyperledger.github.io/composer/v0.19/installing/development-tools.html
https://hyperledger.github.io/composer/v0.19/tutorials/developer-tutorial
Also try clearing both cache and localstorage of browser if Composer Playground hangs at the Loading Screen
Hi, i'm getting following exceptions while deploying composer-rest-server as a cloud foundry application, `ERR Error: Error trying login and get user Context. Error: Error trying to enroll user or load channel configuration. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]] ` I'm using the same cards used to deploy the network on IBM starter plan, Any suggestions ?
[ ](https://chat.hyperledger.org/channel/composer?msg=cfQbrk4ciooqdtgbS) @sebastiantf Starter plan has switched to hlfv12 somewhere around October and in my understanding, the version of composer/Composer-rest-server should be something v0.20.x ?
So, request you to try with composer version v0.20.x and confirm if the issue still persists. Guys, Correct me if I'm wrong with the above understanding.
hi team ,
We have given composer providers input as the below one and tried to authenticate the user but getting authentication error …
export COMPOSER_PROVIDERS='{
"ldap" : {
"provider": "ldap",
"authScheme":"ldap",
"module": "passport-ldapauth",
"authPath": "/auth/ldap",
"successRedirect": "/auth/account",
"failureRedirect": "/ldap",
"session": false,
"json": true,
"profileAttributesFromLDAP": { "login": "cn", "username": "cn","email": "mail" },
"server":{
"url": "ldap://localhost:1389/",
"bindDn": "cn=*****,ou=Users,o=***,dc=****",
"bindCredentials": "*********",
"searchBase": "ou=Users,o=*****,dc=****",
"searchAttributes": ["cn", "uid"],
"searchFilter": "(cn={{*****}})"
}
}
}'
Error: Unhandled error for request POST /auth/ldap: email is missing from the user profile ( but email is already existed for that particular user)
hi team ,
have given composer providers input as the below one and tried to authenticate the user but getting authentication error …
export COMPOSER_PROVIDERS='{
"ldap" : {
"provider": "ldap",
"authScheme":"ldap",
"module": "passport-ldapauth",
"authPath": "/auth/ldap",
"successRedirect": "/auth/account",
"failureRedirect": "/ldap",
"session": false,
"json": true,
"profileAttributesFromLDAP": { "login": "cn", "username": "cn","email": "mail" },
"server":{
"url": "ldap://localhost:1389/",
"bindDn": "cn=*****,ou=Users,o=***,dc=****",
"bindCredentials": "*********",
"searchBase": "ou=Users,o=*****,dc=****",
"searchAttributes": ["cn", "uid"],
"searchFilter": "(cn={{*****}})"
}
}
}'
Error: Unhandled error for request POST /auth/ldap: email is missing from the user profile ( but email is already existed for that particular user)
used ldap auth for authentication ...
Hi all, Is it possible to delete peer0 from the existing network? My requirement is to migrate the whole data from One machine to another.
Has joined the channel.
Thanks for your responses. @sebastiantf and @Avinash_Kancharla
Somehow, I created a new Blockchain Service and it worked. I have my chaincode installed on a peer already.
Now, I want to run a *Composer REST API*. I saw a tutorial (1) that uses Cloudant and npm package composer-wallet-cloudant.
My problem is that the JSON config format to connect to Cloudant is no longer the same.
Any idea of what can I do? I can also explore the option mongo.
(1) https://www.youtube.com/watch?v=fzNF-5pdxdk&t=13s
Thanks for your responses. @sebastiantf and @Avinash_Kancharla
Somehow, I created a new Blockchain Service and it worked. I have my chaincode installed on a peer already.
Now, I want to run a *Composer REST API*. I saw a tutorial (1)(2) that uses Cloudant and npm package composer-wallet-cloudant.
My problem is that the JSON config format to connect to Cloudant is no longer the same.
Any idea of what can I do? I can also explore the option mongo.
(1) https://www.youtube.com/watch?v=fzNF-5pdxdk&t=13s
(2) https://medium.com/@ongkhaiwei/deploy-composer-rest-server-as-cloud-foundry-application-in-ibm-cloud-platform-a32eeadc2a28
Has joined the channel.
Has left the channel.
Hi, I have an up and running network. I have written a few queries in `queries.qry` file. but all the SELECT queries return an empty array. Can anybody please help me?```
query getDistributorByName {
description: "select distributor by Name"
statement:
SELECT org.distro.biz.Distributor
WHERE ( name == _$distributorName )
}
```
```
participant partner identified by id {
o String id
o String name
o String address
o String telephone optional
o String email optional
o String bankAccount optional
o String bankName optional
o String branchName optional
}
participant Distributor extends partner {
}
```
I think `partner` needs to be declared abstract first. Secondly I hope you are passing the value of `_$distributorName` in the query? @amendafernando
[ ](https://chat.hyperledger.org/channel/composer?msg=xonTTbadJGaMuuhHZ) @Misantonio Hey @Misantonio I'm trying the same. Please try with below json config file.
[ ](https://chat.hyperledger.org/channel/composer?msg=SRimehWmFHtxazfcP) {
"composer": {
"wallet": {
"type": "composer-wallet-cloudant",
"options": {
"database": "some_db_name",
"username": "xxxxxxxxxxxxxxxxxxxxxxx",
"password": "yyyyyyyyyyyyyyyyyyyyyyy"
}
}
}
}
[ ](https://chat.hyperledger.org/channel/composer?msg=SRimehWmFHtxazfcP) `{
"composer": {
"wallet": {
"type": "composer-wallet-cloudant",
"options": {
"database": "some_db_name",
"username": "xxxxxxxxxxxxxxxxxxxxxxx",
"password": "yyyyyyyyyyyyyyyyyyyyyyy"
}
}
}
}`
[ ](https://chat.hyperledger.org/channel/composer?msg=SRimehWmFHtxazfcP) ```{
"composer": {
"wallet": {
"type": "composer-wallet-cloudant",
"options": {
"database": "some_db_name",
"username": "xxxxxxxxxxxxxxxxxxxxxxx",
"password": "yyyyyyyyyyyyyyyyyyyyyyy"
}
}
}
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=P2NwAPQSHnkvctHxQ) @varunagarwal yes, I have passed distributor name as it is and again tried with resource:org.dis.Distributor#m1 way. But all of them returned `[]` . I changed partner as abstract also. but the result was same. why the response return with empty array? what might I have done wrong? please help me
@amendafernando is your "org.distro.biz.Distributor" is right?
your `name` is string, so I guess you won't need resource:org.dis.Distributor
actually, why you put "org.dis.Distributor" and "org.distro.biz.Distributor" are there 2 namespaces??
[ ](https://chat.hyperledger.org/channel/composer?msg=i6bEKpsdHZrpztzi6) @DarwinHarianto `org.distro.biz` is my namespace. then `Distributor` is the participant. "org.dis.Distributor" in my previous reply was a typo. sorry about that. it should be "org.distro.biz.Distributor".
@amendafernando what happened if you change _$distributorName to _$name?
@amendafernando what happened if you change `_$distributorName` to `_$name`?
Hey team, I wanted a transaction processor function to update participant information. Can it be done? or it is not allowed to update any of the fields involved in the definition of participant?
And one more thing I wanted to ask, is it compulsory to include asset while declaring transaction in .cto file?
Hi anyone here writing supply chain code? I am thinking of making a basic UI that will help you write smart contracts by selecting checkboxes and drag-drop type interaction. need some feedback
[ ](https://chat.hyperledger.org/channel/composer?msg=uX6RBAZtFN8vH2kFA) @komalbharadiya no
[ ](https://chat.hyperledger.org/channel/composer?msg=QEgFD824eu9r5K9BF) @komalbharadiya You can update whatever you like, no restrictions. Only thing you cannot change is the *id*
[ ](https://chat.hyperledger.org/channel/composer?msg=isnmcbYwJ4HmsvgJH) @varunagarwal Okay, Thanks!
transaction AddTrustedProvider {
--> Doctor newDoctor
--> Patient patient
}
/**
* @param {org.hospital.AddTrustedProvider} transact
* @transaction
*/
function AddTrustedProvider(transact) {
console.log('Add trusted provider');
if(!transact.patient.trustedDoctors.find(function(x){return x==transact.newDoctor;}))
transact.patient.trustedDoctors.push(transact.newDoctor);
return getParticipantRegistry('org.hospital.MedicalRecord')
.then(function (participantRegistry) {
return participantRegistry.update(transact.patient.trustedDoctors);
});
}```
I am writing chaincode for adding a trusted doctor to patients list. Patient and Doctors are participants. trustedDoctors is an array declared in patient (participant) definition.
```
transaction AddTrustedProvider {
--> Doctor newDoctor
--> Patient patient
}```
/**
* @param {org.hospital.AddTrustedProvider} transact
* @transaction
*/
function AddTrustedProvider(transact) {
console.log('Add trusted provider');
if(!transact.patient.trustedDoctors.find(function(x){return x==transact.newDoctor;}))
transact.patient.trustedDoctors.push(transact.newDoctor);
return getParticipantRegistry('org.hospital.MedicalRecord')
.then(function (participantRegistry) {
return participantRegistry.update(transact.patient.trustedDoctors);
});
}```
I am writing chaincode for adding a trusted doctor to an array defined in class of patient. Patient and doctors are my participants.The array is "trustedDoctors". But while testing on composer-playground, it shows error. Gives *Expected: Resource or Concept*. How do I resolve this?
```
```
[ ](https://chat.hyperledger.org/channel/composer?msg=KK4Xc3ExsqLCjPCRH) @komalbharadiya We need to see your cto file. How did you define your tx?
[ ](https://chat.hyperledger.org/channel/composer?msg=dYdcL3Z5DWKxdgSc3) @florianc namespace org.hospital
asset MedicalRecord identified by RecordID{
o String RecordID
--> Patient patient
--> Doctor doctor
o DateTime date
o String details
o String[] RecordLinks optional
}
abstract participant Person identified by email{
o String email
o String name
}
concept Address {
o String Detail
o String City optional
o String State optional
o Double PIN
}
enum Sex{
o MALE
o FEMALE
}
participant Patient extends Person{
o Address address
o Sex sex
o Integer Age
o Integer height
o Integer weight
o String bloodgroup
o Double bloodpressure
o Doctor[] trustedDoctors
}
participant Doctor extends Person {
o String specialization
o Integer Experience
}
transaction TransferRecord {
--> MedicalRecord record
--> Doctor newDoctor
}
transaction CreateRecord {
--> Patient patient
--> Doctor doctor
--> MedicalRecord record
}
transaction UpdateRecord {
--> MedicalRecord record
}
transaction AddTrustedProvider {
--> Doctor newDoctor
--> Patient patient
}
transaction RemoveTrustedProvider {
--> Doctor doctor
--> Patient patient
}
Has joined the channel.
Has joined the channel.
Thanks @Avinash_Kancharla. I realized my problem was the authorization method I set when created the DB.
But the errors seem to never end. Now I want to start a cloud foundry app to host the Composer REST API to interact with my network. My problem is that, as you pointed, Starter Plan switched to hlfv12 and therefore to composer v0.20.x but the latest version of the ibmblockchain/composer-rest-server docker image is the v0.19.5 so when I try to start the CF app I get `Composer runtime (0.20.6) is not compatible with client (0.19.5)`.
I tried to deploy my network to blockchain service using composer 0.19.5 but I can not even start the network. So I don't know what to do.
I think there should be a way to use composer-rest-server cause theres a 0.20.x version. I currently have 0.20.6 installed in my computer. But I don't know how.
Or maybe, do I have to program my REST API using node, express and the composer-client and composer-admin packages?
Thanks @Avinash_Kancharla I realized my problem was the authorization method I set when created the DB.
But the errors seem to never end. Now I want to start a cloud foundry app to host the Composer REST API to interact with my network. My problem is that, as you pointed, Starter Plan switched to hlfv12 and therefore to composer v0.20.x but the latest version of the ibmblockchain/composer-rest-server docker image is the v0.19.5 so when I try to start the CF app I get `Composer runtime (0.20.6) is not compatible with client (0.19.5)`.
I tried to deploy my network to blockchain service using composer 0.19.5 but I can not even start the network. So I don't know what to do.
I think there should be a way to use composer-rest-server cause theres a 0.20.x version. I currently have 0.20.6 installed in my computer. But I don't know how.
Or maybe, do I have to program my REST API using node, express and the composer-client and composer-admin packages?
can we enable or disable the rule defined in permission.acl file from logic.js ?
[ ](https://chat.hyperledger.org/channel/composer?msg=kkMWs5hsZSYDWAq4t) @Misantonio please change version of composer client,rest-server and generator-hyperledger-composer to 0.19.19 and the before starting the fabric, set FABRIC_VERSION=hlfv11.. .
hiu
hi team , am trying to authenticate the rest server with ldap giving username and password ... but getting the below error ... can any one help me out ...........
{
"error": {
"statusCode": 500,
"message": "email is missing from the user profile"
}
}
[ ](https://chat.hyperledger.org/channel/composer?msg=wPC66RDPA9hBrXRH5) @SameerKulkarni I have had this problem a couple of times, the only way I found to solve it was to reinstall all the composer components and explicitly state the version, for example npm install -g composer-cli@0.20
[ ](https://chat.hyperledger.org/channel/composer?msg=wPC66RDPA9hBrXRH5) @SameerKulkarni I have had this problem a couple of times, the only way I found to solve it was to reinstall all the composer components and explicitly state the version, for example npm install -g composer-cli@0.20.6
At the Hyperledger Global Forum I went to a presentation by Dan Selman, one of the original Composer devs about "Convector" which was presented as a successor to Composer. It looks promising. Does anyone have any experience with it? Is it a viable tool for building Enterprise quality Fabric systems? We are close to completing out first POC for Composer and we will be migrating to Fabric 1.4 in due course, and we need to think about the best migration path. Any thoughts?
Convector home page https://worldsibu.github.io/convector/index.html
Hi, I am new to HL Fabric and learning Composer. I installed Composer on Ubuntu 16.04 LTS using below link.
https://hyperledger.github.io/composer/latest/installing/development-tools.html
Then executed below commands to deploy a bna file to peer and start the business network.
COMMANDS:
./startFabric.sh (--> Fabric started successfully.)
composer network install --card PeerAdmin@hlfv1 --archiveFile dist/airlinev8.bna (--> build successful.)
composer network start -c PeerAdmin@hlfv1 -n airlinev8 -V 0.0.8 -A adminv8 -S adminpw (--> start successful. Network card created.)
composer card import -f adminv8@airlinev8.card -c adminv8@airlinev8 (-->composer card list does show the adminv8@airlinev8 card.)
composer network ping -c adminv8@airlinev8 (--> gives error below.)
Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]
Command failed
Please help.
nevermind...just found the issue with the commands :) wrong username/pwd used in starting network
Has anyone ran into issues with NVM taking up a lot of space after running Composer for a while (it's taking about something like ~5 GBs on my server)
[ ](https://chat.hyperledger.org/channel/composer?msg=kkMWs5hsZSYDWAq4t) @Misantonio Hi @Misantonio , You are on right path, only change is while pushing as cloudfoundry app use the latest version of composer-rest-server images i.e, 0.20.x (this is avaialble under hyperledger/composer-rest-server dockerhub). Cheers!
hey does anybody know what is the loopaback framwork version we are using for hyperledger composer rest-server which composer server is having v0.20.5
Has left the channel.
Has left the channel.
Has joined the channel.
Hi , i want to query a transaction (lets say "org.abc.xyz.CreateShipment") using chaincode how can i do that...
Has joined the channel.
Hello, since only 1 channel can be used when using Composer, I'd like to ask if Composer is viable when we have to deal with data privacy issues? From my understanding, anyone holding a peer can inspect the contents of the ledger, so ACL rules do not apply to anyone who actually has access to the peer, correct?
Is there a way to deploy a business network, and use ACL only to control data access to the clients, while making sure that no one can access data directly on the peers?
Hello, can select more than one registry for query ? How ? If not, is it the case where I would make a transaction function and emit an event with all results from combined queries ?
thank you
Clipboard - March 3, 2019 11:29 AM
Hello, I have a problem in starting hyperledger explorer web interface due to undefined chaincode name
Where can I config chaincode name ?
[ ](https://chat.hyperledger.org/channel/composer?msg=RP9WgT8BsWbg5ZNT7) @Minskyy @Minskyy , You can configure Multiple channels and provide privacy in composer
[ ](https://chat.hyperledger.org/channel/composer?msg=RP9WgT8BsWbg5ZNT7) @Minskyy , You can configure Multiple channels and provide privacy in composer
@vageeshprasadB you will have to create a .qry file in which you can write code for get request. Hope this helps...
@Minskyy if you want to restrict some other person for sake of data privacy, you can issue them different card or you can make them as a participant. But if you want to even customize basic data privacy and want to write self made rules, I will suggest you to switch to fabric in that case. Hope this helps...
Has joined the channel.
hey guys can anyone help me
Has joined the channel.
Hi all,
I am unable to install BNA into the fabric network (tls enabled). Below screenshot is the error i am getting.Thanks
error while installing bna.PNG
Has joined the channel.
Hello everyone! I wonder if there has been a change with composer REST API generation? I am following the Queries tutorial (hyperledger.github.io/composer/latest/tutorials/queries) and it seems that I don't get the Query endpoint generated, only the "RemoveHighQuantityCommodities" endpoint appears. Any ideas? I am using composer version 0.20.7.
@henheim can you create a named query to check if there is an asset owner with the value you input ?
@Daka not sure if I'm answering what you ask but the problem I have is that none of the queries defined in queries.qry appear in the API explorer. All the assets have proper owners, though, I can see those via GET endpoint.
So when you create a .bna, you will have to install the file on a fabric system
heck.. answering to myself: I had accidentally placed the .qry into lib folder when creating new file with VS Code. Moving that to project root and regenerating .bna did the trick
and then create a REST API
oh, nice
Yes, kinda. And feeling stupid :-)
but still, I am having a problem with a named query, and I am not sure If I am being an idiot
don't worry
can you see if this query works in REST API
query selectCommoditiesByOwner {
description: "Select all commodities based on their owner"
statement:
SELECT org.example.mynetwork.Commodity
WHERE (owner == _$owner)
}
It gives response 200 but return empty. Is that what you are seing as well?
yes,
and it should return something
but it always return empty ;/
im not sure how to pass around this bug
Yeah don't know.. owner is a reference whereas exchange is a local property for Commodity. Not sure if this has something to do with the problem?
I mean syntatically these two queries are quite the same, but one works, another does not
still, thank you
@henheim it works when you provide the full value of the field like "resource:org.example.trading.Trader#string"
@Daka alright, so it seems! Thank you. Now I remember that I had something similar in the past. Maybe this is due to reference.
Hi Everyone, I am currently having issue that is listed here: https://github.com/hyperledger/composer/issues/3915 However, when i create a new user with new id and business card, the authorization works.
is there a way i can ensure the old bsuiness card also work even after business card
Clipboard - March 4, 2019 10:29 PM
Any clue why am i receiving this error?
are you trying to create a new business card ?
or what are you trying to do actually
hello everyone, Im trying to ping the network using composer network ping -c bob@trade-network, the network consist of 3 org, I got this error in every machine: Error: Error trying to ping. Error: 2 UNKNOWN: access denied: channel [mychannel] creator org [Org2MSP]
have you imported the card ?
the card maybe different from the last time you imported it so try to delete and import again and try to ping afterwards
yes, I imported the card then I did the ping
[ ](https://chat.hyperledger.org/channel/composer?msg=aFmNmHhzf293yYyAY) @Daka yes I created the card and imported again still got same error, is there is any timeout variable or file to check ?
@GyoonKi not sure ;/
[ ](https://chat.hyperledger.org/channel/composer?msg=PnWXCwzDjdLfSfDGr) @Daka what should I do ?
see if there is something in github issues ?
@GyoonKi why don't you try to use fabric 1.4 and latest composer ?
Hello team, I want to connect multiple physical machines in a metwork so that it gets distributed. How do I go about it?
Clipboard - March 5, 2019 3:04 PM
@Daka hello,
How to pass an array parameter to a transaction function?
I wrote a function to create multiple assets at once.But when I do "composer archive create" command, I got the following error:"TypeNotFoundException: Type KingdeeLog[] is not defined in namespace com.neutron.kingdeelogs"
I had defined transaction like follow:
transaction recordLogs{
o KingdeeLog[] logs
}
And
/**
* write more than one logs into ledger in one transaction
* @param {com.neutron.kingdeelogs.KingdeeLog[]} logs - the logs include multiple log-item to be recrod into ledger
* @returns {String}
* @transaction
*/
async function recordLogs(logs){
// Get the asset registry for the asset.
const kdlogRegistry = await getAssetRegistry('com.neutron.kingdeelogs.KingdeeLog');
kdlogRegistry.addAll( logs );
}
I use the fabric version 1.1
How can i fix it?
@wangrangli I haven't written such functions just yet, but you can try your system in the playground, it has a good debugger, and you can export .bna file from it
@Daka Thank you. I found the error at "* @param {com.neutron.kingdeelogs.KingdeeLog[]}", that should be "* @param {com.neutron.kingdeelogs.recordLogs}"
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=kXvEWzHW2vBzDJJFR) @Daka it will solve the problem ?
@GyoonKi I don't know, but if you are out of ideas, it might worth the shot ?
@GyoonKi I don't know, but if you are out of ideas, it might worth the shot ? If you want try it out on a different machine
Hi, I am using JWT to authenticate the Hyperledger Composer form my angular app. In the article, Ganga uses a JWT token that was generated using his username `eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0aW1lc3RhbXAiOjE1MjcxNjI1MDQ3NDI1NjUwODcsInVzZXJuYW1lIjoiZ2FuZ2FjaHJpcyJ9.WyARsOhMSDVRjUpd-rPBI1A8-Vpz7pDS6rICXKN8W3U` but when I use the same timestamp and his username I get a token `eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ0aW1lc3RhbXAiOiIxNTUxNzgxODExMjg1NzU1IiwidXNlcm5hbWUiOiJnYW5nYWNocmlzIiwianRpIjoiZjAzODA2ZTgtNDJmNC00MzExLTgxODYtZDhiYTIzODc2YTg1IiwiaWF0IjoxNTUxNzgxODExLCJleHAiOjE1NTE3ODU0MTF9.ZG3uSOpVHykv7IsP-lO4r1h032d0NJOVcEcTQs_Z5tM` but this new token it always says unauthorized.
does anyone know why?
ref: https://www.codementor.io/gangachris125/passport-jwt-authentication-for-hyperledger-composer-rest-server-jqfgkoljn
Hello all, Is it possible to deploy/interact with hyperledger composer network on another machine?
If yes, then how?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=A7xKtSESdAxpbGHAP) @Daka thank you, I will try
Anyone from Pakistan?
does anybody deployed composer application on fabric 1.4 ? usually fabric-dev-servers contain 1.2v
so how to deploy/migrate my composer application to fabric 1.4
If you are wondering where versions for hyperledger fabric v1.3 or v1.4 are, these are explicitly not included because you can develop your application using the development fabric 1.2 and still be able to deploy and run it on a fabric 1.3 or 1.4 system.... have gone through this ...
so how to change the version ... whenever i did ./start
./startFabric.sh automatically those 1.2v Farbic containers are running so how to avoid this ...
@varunagarwal @pravn1729 can you please help me on the above query
Has joined the channel.
Hi All, Just a quick query, is it possible to define mulitple types for a field for an asset in CTO file. For example, an supplychain asset could have an owner of participant type either warehouse admin, shippingPerson, or endCustomer. is there any way to define such a condition?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=dNkFdZLzHzb9cyqNT) @davidkel @sureshtedla @sstone1
can you please help me how to move from fabric 1.2v default to fabric 1.4 for my composer
Has left the channel.
hello, everyone.
Where can I see the log output from the console.log() function which in composer chaincode?
I try to find it by "docker logs" command in peer and dev-peer, I can't see any logs that belong to the console.log() function output.
any advice is welcome.
Thanks!
[ ](https://chat.hyperledger.org/channel/composer?msg=A7xKtSESdAxpbGHAP) @Daka when I look to the peer logs I found this error --> Principal deserialization failure (the supplied identity is not valid: x509: certificate signed by unknown authority) for identity , do you know how to fix it ?
Hello everyone,
How can we establish connection between laptop and mobile devices in hyperledger composer?
Hello everyone,Error: failed to create deliver client: orderer client failed to connect to orderer0.example.com:7050: failed to create new connection: context deadline exceeded
Clipboard - March 6, 2019 6:46 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=LkfbivMG7nz6Bxnru) @mallikarjunasai995 you have to change the scripts
[ ](https://chat.hyperledger.org/channel/composer?msg=Zr3detrYnzZ3oy9Cz) @SameerKulkarni REST server
Hallo, i am currently running a hyperledger fabric composer network on 4 VM. How do i connect Hyperledger caliper to that network in order to benchmark it, can i connect to an already running network, or do i need to run my network with caliper?
Hi , i would like to understand if i can log into a field in a submitted transaction in Composer. For example , with the smart contract , can i control if a field in a transaction is empty or fill ? Do you have an example of code?
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=RHJ9EJ9g2jph4buS2) @benjamin.verhaegen yes but farbic dev servers part contains only fabric version upto 1.2version so for 1.3,1.4 version do we have to download new fabric 1.4 peers and then run on the network ... becuase everything is ready-made until 1.2version when i tried to install the business network on fabric v1.4 it is saying
access denied becuase i have to use the same secret that matches with 1.4v so where can i able to find the 1.4 createadmin peer card for fabric or how to edit the existing peer admin card to take the secrtes of 1.4version
Has joined the channel.
Hello, I just started learning composer and currently I'm on using google oauth2.0.
When trying to run any API, I'm getting this error
"Unhandled error for request GET /api/Card: Error: The loopback user input operator has more than one operators in a field object
at Function.parseObjectValue (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/filterparser.js:112:19)
at Function.parseWhereCondition (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/filterparser.js:240:36)
at Function.parseFilter (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/filterparser.js:53:27)
at ensureConnected.then.then (/home/composer/.npm-global/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:322:58)
at
Hello, I want deploy a hyperledger BNA file in to java using eclipse.. how to do that?.. can i import a BNA file into java eclipse??
it is possible or not?
[ ](https://chat.hyperledger.org/channel/composer?msg=J5qA8YpvSzwbztjDY) @mallikarjunasai995 you need to update the docker-compose.yaml file to version 1.4 (so all images being pulled must be the newest version), also need to regenerate the certificates (you can see how to do that in the .txt in the composer directory. (you can find all the config files when you go to the fabric-scripts directory
[ ](https://chat.hyperledger.org/channel/composer?msg=J5qA8YpvSzwbztjDY) @mallikarjunasai995 you need to update the docker-compose.yaml file to version 1.4 (so all images being pulled must be the newest version), also need to regenerate the certificates (you can see how to do that in the .txt in the composer directory. (you can find all the config files when you go to the fabric-scripts directory. For regeneration of the certificates you'll need configtxgen and cryptogen.
@GyoonKi No, I am sorry
When i am running ./startFabric.sh script i am getting Error response from daemon: Container 358784a3ec36eb7d893844892aee0b6c66d0ccf54b656797de3082f9801d2715 is not running
why i am this error? can any one help me
Has joined the channel.
@how to write eventlistner for hyperledger composer
Hi, I'm confused in between composer and fabric, may I know if "business network" in composer is meaning to "channel" in fabric?
[ ](https://chat.hyperledger.org/channel/composer?msg=ixWzWFKzBMTaMG3bC) @benjamin.verhaegen thank you very much ... i am just going through it ...
So idk if this is the place to ask but I am building a took that lets you build a composer code for supply chain by using a `drag-drop` type interface, no coding skills needed, it will generate the bna file (.cto, logic.js). Wanted to validate if its valuable and those interested in being alpha testers, please message me :)
Has joined the channel.
sorry, where is kafka configuration in byfn multi-organization example ?
[ ](https://chat.hyperledger.org/channel/composer?msg=pLvGDdfZdyAypkrfu) hey hai i have changed the fabric verstion to 1.4 in yaml file and also to regenerate the certificates i am follwing the howtodo.txt file .. but the thing is
am not able to run the cryptogen command ... i have also copied the bin folder of cryptogen to the present working directory and running it but still am getting
nothing to make on cryptogen like that it is showing
so do i need to add the bin folder path to bashsrc ?
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=Lcpwd9SeMuD8Ztjwc) hai i am able to solve that cryptogen error ... and now after doing the ./startFabric.sh am getting the below error :-
got unexpected status: BAD_REQUEST -- error authorizing update: error validating DeltaSet: policy for [Group] /Channel/Application not satisfied: Failed to reach implicit threshold of 1 sub-policies, required 1 remaining
Has left the channel.
Has joined the channel.
Hi, I just started with hypeledger composer and it's all just WOW :D Great work! Easy to deploy - fantastic!! Now I've got some edge case I want to model: Imagine I've got an Off-Chain code with the ability to sign a transaction and relay it (off-chain!) to a gateway node - how would that gateway node verify the identity of the received data? Will i have to keep the public key myself or is it possible to create an identity for every off-chain participant and use the keys in fabric? how would i model that?
Sorry for my nooby question and if there is any documentation regarding that topic or going into the direction i'd be thankful to get a pointer <3
Hi, I used getNativeAPI().queryInfo() in a function to query channel
information ,but when I call the restAPI return err
TypeError: getNativeAPI(...).queryInfo is not a function. i use composer0.19 fabric1.1.
Hi:grinning:, I used getNativeAPI().queryInfo() in a function to query channel
information ,but when I call the restAPI return err
TypeError: getNativeAPI(...).queryInfo is not a function. i use composer0.19 fabric1.1.
Hai, Does composer 0.19 or 0.20 work well with fabric of version from 1.1 to 1.4, and if only the binary files replaced is in need when updating?@mahoney1
Has joined the channel.
Has left the channel.
So I am using `composer archive create -t dir -n .` but can I do it using a nodejs SDK?
Morning, a general question. Are there any certifications issued by IBM for Hyperledger FAbric or composer? Like Sun's or Microsoft's
[ ](https://chat.hyperledger.org/channel/composer?msg=hH6r3zrxsmuSeHzuh) still am getting the same error i have followed all the answers from stackoverlow like that but still no luck .. i have seen all the logs so i found out am not using *admin identity to sign the certs that why it is a bad request *
so i just went through the logs of ca file and i found out like this
Using sqlite database, connect to database in home (/etc/hyperledger/fabric-ca-server/fabric-ca-server.db) directory
but in my system there is nothing like a folder called
*/etc/hyperledger/fabric-ca-server/fabric-ca-server.db) directory*
where can i found the above directory
@benjamin.verhaegen can you help me on this ...
these are the docker logs for orderer
Principal deserialization failure (the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")) for identity 0
[ ](https://chat.hyperledger.org/channel/composer?msg=FNBjxN8bcD8dMphEL) @mallikarjunasai995 can you send your docker-compose file
[ ](https://chat.hyperledger.org/channel/composer?msg=J7sg8PshhBrnjeFfJ) @benjamin.verhaegen in docker compose yml file .. i have changed only fabric version and also changed the private key and pki according to howtobuild.txt file
ca.org1.example.com:
image: hyperledger/fabric-ca:1.4.0
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca.org1.example.com
ports:
- "7054:7054"
command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/19ab65abbb04807dad12e4c0a9aaa6649e70868e3abd0217a322d89e47e1a6ae_sk -b admin:adminpw -d'
volumes:
- ./crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config
container_name: ca.org1.example.com
[ ](https://chat.hyperledger.org/channel/composer?msg=ngfe9Kr2Gmzh74Ayc) @silliman Hello. How can i call a MD5 hash function or other hash function in logic.js when I can not require('crypto')? Thanks.
Has joined the channel.
I am getting this error during composer installation
fabown@RJ-Fabric1:/appl/fabric$ npm install -g composer-cli@0.20
npm http GET https://registry.npmjs.org/composer-cli
npm http GET https://registry.npmjs.org/composer-cli
npm http GET https://registry.npmjs.org/composer-cli
npm ERR! Error: CERT_UNTRUSTED
npm ERR! at SecurePair.
Has joined the channel.
Hello fellows, i am facing some errors and am stuck in my final year project, i try to generate Rest Api from composer-rest-server command but it gives the following error : Generating schemas for all types in business network definition ...
Exception: Error: Found multiple type definitions for NetworkAdmin, must fully qualify type name
Error: Found multiple type definitions for NetworkAdmin, must fully qualify type name
at ensureConnected.then (/home/ez/.nvm/versions/node/v8.15.1/lib/node_modules/composer-rest-server/node_modules/loopback-connector-composer/lib/businessnetworkconnector.js:1395:31)
at
Selection_089.png
Please help please :(
please help
show me your .cto file @haseeb.i
[ ](https://chat.hyperledger.org/channel/composer?msg=3fPd2WaBwErbz79SG) @haseeb.i yes show me your cto file and try to debug it go to businessnetworkconnector.js and just analyst the mentioned line 1395 .. where exactly it went wrong ...
[ ](https://chat.hyperledger.org/channel/composer?msg=3fPd2WaBwErbz79SG) @haseeb.i yes show me your cto file and try to debug it go to businessnetworkconnector.js and just analyse the mentioned line 1395 .. where exactly it went wrong ...
Hello, how can I use ACL on Queries or somehow to restrict the use of queries for specific participants ?
For a multi-org multi-host setup of Composer, can I follow the instructions for Fabric multi-host multi-org setup and then carry out the composer steps, or do I need to follow a composer-specific solution?
For a multi-org multi-host setup of Composer, can I follow the instructions for Fabric multi-host multi-org setup and then carry out the composer steps, or do I need to follow a composer-specific solution?
I do not need production-type deployment. I'm planning to run a Proof of Concept.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=W7uQ46LB7n4swWFjm) @Daka if this is going to help you , then great :relaxed:
https://stackoverflow.com/questions/51152220/adding-acl-to-hyperledger-composer-query
@mallikarjunasai995 I saw it, but it's not that helpful. How do I code it so that I can retrieve it ? Nevertheless I created a participant who shouldn't be able to do almost anything in the system, but was able to look up the queries.
@mallikarjunasai995 now that i test the REST API it makes more sense and it works as told - you only see it if you have allowance to see it by the ACL.
Caliper-Composer.png
I have deployed a Hyperledger Fabric network across two peers and has a multi org structure. I have 2 peers for each of the org.
I had deployed the fabric using this tutorial: https://medium.com/@malliksarvepalli/hyperledger-fabric-1-2-on-multiple-hosts-using-docker-swarm-and-compose-11c13635e69e
For the Composer Card creation, I followed the official tutorial from Hyperledger Composer website.
My connection profile is as follows:
`{
"name": "byfn-network",
"x-type": "hlfv1",
"version": "1.0.0",
"channels": {
"mychannel": {
"orderers": [
"orderer.example.com"
],
"peers": {
"peer0.org1.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer1.org1.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer0.org2.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer1.org2.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com",
"peer1.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
},
"Org2": {
"mspid": "Org2MSP",
"peers": [
"peer0.org2.example.com",
"peer1.org2.example.com"
],
"certificateAuthorities": [
"ca.org2.example.com"
]
}
},
"orderers": {
"orderer.example.com": {
"url": "grpcs://hostname1-PC:7050",
"grpcOptions": {
"ssl-target-name-override": "orderer.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----removed-----END CERTIFICATE-----\n"
}
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpcs://hostname1-PC:7051",
"grpcOptions": {
"ssl-target-name-override": "peer0.org1.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----removed-----END CERTIFICATE-----\n"
}
},
"peer1.org1.example.com": {
"url": "grpcs://hostname1-PC:8051",
"grpcOptions": {
"ssl-target-name-override": "peer1.org1.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----removed-----END CERTIFICATE-----\n"
}
},
"peer0.org2.example.com": {
"url": "grpcs://hostname2-PC:7051",
"grpcOptions": {
"ssl-target-name-override": "peer0.org2.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----removed-----END CERTIFICATE-----\n"
}
},
"peer1.org2.example.com": {
"url": "grpcs://hostname2-PC:8051",
"grpcOptions": {
"ssl-target-name-override": "peer1.org2.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----removed-----END CERTIFICATE-----\n"
}
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "https://hostname1-PC:7054",
"caName": "fabric_ca1.1",
"httpOptions": {
"verify": false
}
},
"ca.org2.example.com": {
"url": "https://hostname2-PC:7054",
"caName": "fabric_ca2.1",
"httpOptions": {
"verify": false
}
}
}
}`
When I run this command:
`➜ composer network install --card PeerAdmin@byfn-network-org1 --archiveFile sample@0.2.4.bna
⠙ Installing business network. This may take a minute...E0311 09:28:58.184337352 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0311 09:28:58.189985032 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0311 09:28:58.190741163 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0311 09:28:58.195042901 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
⠸ Installing business network. This may take a minute...E0311 09:28:58.328789821 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0311 09:28:58.329105016 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0311 09:28:58.329735950 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0311 09:28:58.329940855 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
⠴ Installing business network. This may take a minute...E0311 09:28:59.328169684 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0311 09:28:59.330435363 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0311 09:28:59.331214536 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0311 09:28:59.332638145 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
⠧ Installing business network. This may take a minute...E0311 09:29:01.055904670 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
⠇ Installing business network. This may take a minute...E0311 09:29:01.122065082 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
⠏ Installing business network. This may take a minute...E0311 09:29:01.225020088 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
E0311 09:29:01.227389252 12212 ssl_transport_security.cc:989] Handshake failed with fatal error SSL_ERROR_SSL: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed`
Has joined the channel.
@ak97m @mallikarjunasai995 What command is used to retrieve the certificates of a given user?
1. composer identity request
2. composer identity issue
3.composer identity bind
4.composer identity list
@mallikarjunasai995 What happens when “composer network upgrade” is run?
1-Installs the new chaincode on peers and restarts the blockchain network.
2-Installs the new chaincode on the peers without re-starting the blockchain network.
3-Instructs peers to use new chaincode and restarts the blockchain network.
4-Instructs peers to use new chaincode without restarting the blockchain network.
Has joined the channel.
Is there a way to console the peer approval section of every transaction for composer?
Hi. I'm sorry if a reply the question but i need to understand. i would like to understand if i can log into a field in a submitted transaction in Composer.Usually, i can check the submitted transactions in "All transactions". But is there a way to check a field in a submitted transaction writing a javascript code in logic.js? For example : Participant A submit a transaction. A participant B check if a field in that submitted transactions is field or empty. Thanks
Hi. I'm sorry if i reply the question but i need to understand. i would like to understand if i can log into a field in a submitted transaction in Composer.Usually, i can check the submitted transactions in "All transactions". But is there a way to check a field in a submitted transaction writing a javascript code in logic.js? For example : Participant A submit a transaction. A participant B check if a field in that submitted transactions is field or empty. Thanks
Hi. I'm sorry if i reply the question but i need to understand. i would like to understand if i can log into a field in a submitted transaction in Composer.Usually, i can check the submitted transactions in "All transactions". But is there a way to check a field in a submitted transaction writing a javascript code in logic.js? For example : Participant A submit a transaction. Participant B check if a field in that submitted transactions is field or empty. Thanks
the `composer archive create` command comes from which npm repo? Does anyone know, cant find it
If anyone could take a look at this --> https://stackoverflow.com/questions/55099875/programmatically-generate-a-bna-file
Hello everyone! I have a custom login page that I am using to create new participants in my platform-based hyperledger composer. The login page is enabled on the rest server running on the port 3001, while the other composer is running on the 3000 port to process the transaction performed by the users. Until now there is no card solution to associate the transactions with the logged user. Hence, the transactions is still registered with the admin card. The login page is only used to assign a jwt token to the user and allow him to access the home page of the platform. So, my question is: is there any way to pass the generated token to the rest server with the enabled authentication (in this case the rest server in the 3000 port)? I saw that is possible to use the cURL command to do that, but I would like to to this programmatically. My intention is to assign a card with the logged user.
Has joined the channel.
Hi @ColeBoudreau, did you manage to get the client app have the access-token, so it could use it to talk to the rest server? Could you tell how you did it? Or did you solve it in another way? I'm running into the same problem.
Hi @zorrothefox, I see you ran into the same problem I have (and @ColeBoudreau ). Did you manage to get the client app have the access-token, so it could use it to talk to the rest server? Could you tell how you did it? Or did you solve it in another way? Thanks.
Has joined the channel.
Has joined the channel.
Hi all,
I have deploy business network but error.
Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network failed to install on 1 or more peers: Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
Please help!!
Clipboard - March 12, 2019 1:58 PM
@duy3991 do `docker ps` and see what turns up on the console
think the containers wern't setup properly
Clipboard - March 12, 2019 3:33 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=mTu5Tjkby3oxBbgp7) @varunagarwal I think peer1, peer2, peer3 is starting
[ ](https://chat.hyperledger.org/channel/composer?msg=mTu5Tjkby3oxBbgp7) @varunagarwal I think peer1, peer2, peer3 is starting and
configured it correctly
[ ](https://chat.hyperledger.org/channel/composer?msg=mTu5Tjkby3oxBbgp7) @varunagarwal I think peer1, peer2, peer3 are starting and
configured it correctly
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=jpEghN8qA7amFHBdd) @duy3991 is that any example you are trying to run ? if so what is that ...
[ ](https://chat.hyperledger.org/channel/composer?msg=D7xW5Kqg33oiqjK58) @mallikarjunasai995 yep. I am trying run but not deploying to peer1, peer2, peer3 :(
Has joined the channel.
What is the role of Hyperledger Composer in an Enterprise Blockchain application?
Has joined the channel.
Hi, I try to deploy a nodejs app with composer with docker. The server works well in "normal mod" but when I try to use docker, I have this error : ```Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline```
Here is my docker file :
```
FROM node:8.15.1
# Create app directory
WORKDIR /usr/src/app
COPY package*.json ./
ENV http_proxy "MY_PROXY"
ENV https_proxy "MY_PROXY"
RUN apt-get update
RUN apt-get install -y build-essential
RUN npm install --unsafe-perm
RUN npm install -g http-server
COPY . .
COPY .composer /root/
RUN mkdir /root/.composer
RUN cp -vr /usr/src/app/.composer/cards /root/.composer/
RUN cp -vr /usr/src/app/.composer/client-data /root/.composer/
# Bundle app source
EXPOSE 8087
CMD [ "npm", "start" ]
```
Hi, I try to deploy a nodejs app with composer with docker. The server works well in "normal mod" but when I try to use docker, I have this error :
```Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline```
Here is my docker file :
```
FROM node:8.15.1
# Create app directory
WORKDIR /usr/src/app
COPY package*.json ./
ENV http_proxy "MY_PROXY"
ENV https_proxy "MY_PROXY"
RUN apt-get update
RUN apt-get install -y build-essential
RUN npm install --unsafe-perm
RUN npm install -g http-server
COPY . .
COPY .composer /root/
RUN mkdir /root/.composer
RUN cp -vr /usr/src/app/.composer/cards /root/.composer/
RUN cp -vr /usr/src/app/.composer/client-data /root/.composer/
# Bundle app source
EXPOSE 8087
CMD [ "npm", "start" ]
```
Hi, I try to deploy a nodejs app with composer with docker. The server works well in "normal mod" but when I try to use docker, I have this error :
``` Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline ```
Here is my docker file :
```
FROM node:8.15.1
# Create app directory
WORKDIR /usr/src/app
COPY package*.json ./
ENV http_proxy "MY_PROXY"
ENV https_proxy "MY_PROXY"
RUN apt-get update
RUN apt-get install -y build-essential
RUN npm install --unsafe-perm
RUN npm install -g http-server
COPY . .
COPY .composer /root/
RUN mkdir /root/.composer
RUN cp -vr /usr/src/app/.composer/cards /root/.composer/
RUN cp -vr /usr/src/app/.composer/client-data /root/.composer/
# Bundle app source
EXPOSE 8087
CMD [ "npm", "start" ]
```
Hi, I try to deploy a nodejs app with composer with docker. The server works well in "normal mod" but when I try to use docker, I have this error :
``` Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline```
Here is my docker file :
```
FROM node:8.15.1
# Create app directory
WORKDIR /usr/src/app
COPY package*.json ./
ENV http_proxy "MY_PROXY"
ENV https_proxy "MY_PROXY"
RUN apt-get update
RUN apt-get install -y build-essential
RUN npm install --unsafe-perm
RUN npm install -g http-server
COPY . .
COPY .composer /root/
RUN mkdir /root/.composer
RUN cp -vr /usr/src/app/.composer/cards /root/.composer/
RUN cp -vr /usr/src/app/.composer/client-data /root/.composer/
# Bundle app source
EXPOSE 8087
CMD [ "npm", "start" ]
```
Hi, I try to deploy a nodejs app with composer with docker. The server works well in "normal mod" but when I try to use docker, I have this error :
``` Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline```
Here is my docker file :
```FROM node:8.15.1
# Create app directory
WORKDIR /usr/src/app
COPY package*.json ./
ENV http_proxy "MY_PROXY"
ENV https_proxy "MY_PROXY"
RUN apt-get update
RUN apt-get install -y build-essential
RUN npm install --unsafe-perm
RUN npm install -g http-server
COPY . .
COPY .composer /root/
RUN mkdir /root/.composer
RUN cp -vr /usr/src/app/.composer/cards /root/.composer/
RUN cp -vr /usr/src/app/.composer/client-data /root/.composer/
# Bundle app source
EXPOSE 8087
CMD [ "npm", "start" ]
```
Hi, I try to deploy a nodejs app with composer with docker. The server works well in "normal mod" but when I try to use docker, I have this error :
` Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline`
Here is my docker file :
```FROM node:8.15.1
# Create app directory
WORKDIR /usr/src/app
COPY package*.json ./
ENV http_proxy "MY_PROXY"
ENV https_proxy "MY_PROXY"
RUN apt-get update
RUN apt-get install -y build-essential
RUN npm install --unsafe-perm
RUN npm install -g http-server
COPY . .
COPY .composer /root/
RUN mkdir /root/.composer
RUN cp -vr /usr/src/app/.composer/cards /root/.composer/
RUN cp -vr /usr/src/app/.composer/client-data /root/.composer/
# Bundle app source
EXPOSE 8087
CMD [ "npm", "start" ]
```
Has joined the channel.
Hi all, I'm currently struggling with an issue I hope you can help me with. I defined a function to add assets to my assetRegistry, which appears to work, however when I try to retrieve those asset with their ID, it says that they don't exist
Here is my code:
logic.js:
async function createAsset(tx) { // eslint-disable-line no-unused-vars
// Get the vehicle asset registry.
let sampleAssetRegistry = await getAssetRegistry('org.example.basic.SampleAsset');
// Get the factory for creating new asset instances.
var factory = getFactory();
// Create the vehicle.
randomId = IDGenerator();
var sampleAsset = factory.newResource('org.example.basic', 'SampleAsset', `ASSET_${randomId}`);
//var owner = factory.newResource('org.example.basic', 'Farmer', 'FARMER_1');;
sampleAsset.assetId = randomId;
sampleAsset.type = tx.type;
//owner.participantId = '10';
sampleAsset.owner = tx.owner
sampleAsset.previousId = 'null';
sampleAssetRegistry = await getAssetRegistry('org.example.basic.SampleAsset');
console.log("TESSSSSSSST" + sampleAssetRegistry.getAll().toString());
return sampleAssetRegistry.add(sampleAsset);
let event = getFactory().newEvent('org.example.basic', 'AssetCreated');
event.test = sampleAssetRegistry.getAll().toString();
emit(event);
}
model:
transaction CreateAsset {
o AssetType type
--> SampleParticipant owner
transaction CreateAsset {
o AssetType type
--> SampleParticipant owner
}
asset SampleAsset identified by assetId {
o String assetId
o AssetType type
--> SampleParticipant owner
o String previousId
}
The error
@John-labite first thing, don't ever do this in the blockchain : `// Create the vehicle.
randomId = IDGenerator();`
I know it's bad practice, I'm just doing it for testing purposes
Has joined the channel.
Hello, I want to learn Hyperledger Composer on windows 10, i see the development environment requires Mac Os or Ubuntu, What about the development environment on windows 10?
Has joined the channel.
Has joined the channel.
Hello, I want to know what exactly happens when composer network upgrade is performed?
how to pass a participant reference to query?
hi anyone help with composer card api?
my card is stored in a custom path, like /home/ubuntu/cardname.card
how can get card information based on this path? which api shoud i use?
Has joined the channel.
Has joined the channel.
Hello. I am trying to use the passport-jwt to authenticate users in the composer-rest-server. I create a custom-jwt.js to enable BearerToken in the Http Header. This file was copied to the node_module directory. The environment variable COMPOSER_PROVIDERS was correctly configured and exported. Everything looks fine until I use the json web token in the Postman. I get the following error when I send the token via Postman: ```
`/home/danilo/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/lib/util.js:164
if (usernameOrId.match(/[^A-Za-z0-9\.\-_]/)) {
^
TypeError: Cannot read property 'match' of undefined
at profileToUser (/home/danilo/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/lib/util.js:164:26)
at /home/danilo/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-component-passport/lib/models/user-identity.js:126:61
at /home/danilo/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:2175:62
at /home/danilo/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:2111:9
at /home/danilo/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1140:9
at /home/danilo/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:473:16
at eachOfArrayLike (/home/danilo/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1057:9)
at eachOf (/home/danilo/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1117:5)
at _asyncMap (/home/danilo/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1133:5)
at Object.map (/home/danilo/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/node_modules/async/dist/async.js:1122:16)
at allCb (/home/danilo/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:2025:13)
at /home/danilo/.nvm/versions/node/v8.11.3/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/connectors/memory.js:512:7
at _combinedTickCallback (internal/process/next_tick.js:131:7)
at process._tickCallback (internal/process/next_tick.js:180:9)
`
``` ```
Any suggestion?
```
Has joined the channel.
I need help with ACL. I have User and File. Users and files can be in groups. I need to restrict that user can see only files from the same group. For example if user1 is in group A and file1 is in the group A, the user1 can read file1. But if file2 is in group B, the user1 cannot see file2 because user1 is not in group B. I have following rule but it returns empty array (no condition is met):
participant(u): "org.kpmg.network.User"
operation: READ
resource(b): "org.kpmg.network.File"
condition: (u.groups.some(function (ug) {
return b.groups.some(function (fg) {
return fg.getIdentifier() === ug.getIdentifier();
});
})
)
action: ALLOW
Has joined the channel.
Hello,
I am new to Hyperledger Framework. I'm however trying to set up my development environment using this official guide: https://hyperledger.github.io/composer/latest/installing/development-tools but I have some errors with npm, hence I can't get past the first step, installing composer playground.
Has joined the channel.
Has joined the channel.
Hai,```
I am just trying to invoke a transaction from another business network in hyper leger. In the result, I also need to return an asset from the transaction involved. Can anyone have experience in this kind of problem? Please help me.
```
Has joined the channel.
Has joined the channel.
if someone is developing a degree/certificate verification system pr similar architecture system then he could contact me on
anasbaigmughal@gmail.com
We are team members working on the respective project. So if you want to collaborate or require help or discussion then we people could make a best system with collaboration. ☺
Hi i am getting error when i am connecting to network that i have created. Error: Error trying to ping. Error: make sure the chaincode crc-scrapsales-network has been successfully instantiated and try again: chaincode crc-scrapsales-network not found
when i call get function in BusinessCardStore, i get this error : Error: BusinessNeworkCardStore Abstract function called - get
anyone help?
Has left the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=cHHAcnZzinwJupNTG) anyone plz
Hello, I have a NodeJs interacting with a Hyperledger Composer network on a server.
The nodejs server works great when launched in VSCode
Now I try to build a docker image of this nodejs, but it fails to connect to peer
and I have this error : ``` Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline```
any idea ?
```
const generateReport = getFactory().newTransaction('org.cusat.hospital', 'GenerateReport');
```
```
const generateReport = getFactory().newTransaction('org.cusat.hospital', 'GenerateReport');
```
For the aove code shows an error of
```
Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: transaction returned with failure: TypeError: getFactory(...).newTransaction is not a function
```
Please suggest any solutions
hello everyone, I have question I hope I get an answer. I knew that composer network start use npm install commands to download packages during containers building. Now what are the packages that npm installed from the Internet ? Also, can I create local npm to host npm packages ? if yes how . Thank you
[ ](https://chat.hyperledger.org/channel/composer?msg=Q7teNTQDKuuJAqLXh) @tejateja I got this error before, thr solution was repeating everything I mean tear down your network and start again
Guyz, how can i store notifications in a permement storage such that when i upgrade the network, it doesnot delete. because currently it delete all historian when upgraded the network.
hi, how can i store notifications in a permement storage such that when i upgrade the network, it doesnot delete. because currently it delete all historian when upgraded the network.
hello all```
I wish to allow doctors which are there in trusted doctor array of particular patient to access medical records of that patient.. below are my code .. can anybody please help me to find out the logical error in the code if any!?
```
hello all```
I wish to allow doctors which are there in trusted doctor array of particular patient to access medical records of that patient.. below are my code .. can anybody please help me to find out the logical error in the code if any!?```
```
``` asset MedicalRecord identified by RecordID{
o String RecordID
o String[] allergy
o String bloodPressure optional
o String Diabetes optional
--> Patient patient
o Record[] RecordLinks optional
}
``` abstract participant Person identified by email{
o String email
o String name
}
``` participant Doctor extends Person {
o Integer RegistrationID
o String specialization
o Integer Experience
o Address address
}
participant Patient extends Person{
o Address address
o Sex sex
o Integer Age
o Integer height
o Integer weight
o String bloodgroup
--> Doctor[] trustedDoctors
}
``` rule Doctor1 {
description: "Doctor can update and read the records whose permission is granted"
participant(m):"org.hospital.Doctor"
operation: READ,UPDATE
resource(v): "org.hospital.MedicalRecord"
condition: (
v.patient.trustedDoctors.some(function (trustedDoctor) {
return trustedDoctor.getIdentifier()=== m.getIdentifier();
} )
)
action: ALLOW
}
hello all
I wish to allow doctors which are there in trusted doctor array of particular patient to access medical records of that patient.. below are my code snippets .. can anybody please help me to find out the logical error in the code if any!?
```asset MedicalRecord identified by RecordID{
o String RecordID
o String[] allergy
o String bloodPressure optional
o String Diabetes optional
--> Patient patient
o Record[] RecordLinks optional
}
abstract participant Person identified by email{
o String email
o String name
}
participant Doctor extends Person {
o Integer RegistrationID
o String specialization
o Integer Experience
o Address address
}
participant Patient extends Person{
o Address address
o Sex sex
o Integer Age
o Integer height
o Integer weight
o String bloodgroup
--> Doctor[] trustedDoctors
}```
``` rule Doctor1 {
description: "Doctor can update and read the records whose permission is granted"
participant(m):"org.hospital.Doctor"
operation: READ,UPDATE
resource(v): "org.hospital.MedicalRecord"
condition: (
v.patient.trustedDoctors.some(function (trustedDoctor) {
return trustedDoctor.getIdentifier()=== m.getIdentifier();
} )
)
action: ALLOW
}```
[ ](https://chat.hyperledger.org/channel/composer?msg=denHRTmTP7XuMJJvA) anyone plz
[ ](https://chat.hyperledger.org/channel/composer?msg=fxbBoRPWEx9xKp9k6) @adnanabbasktt Well, the message is clear : getFactory() has no function newTransaction() : https://hyperledger.github.io/composer/v0.19/api/runtime-factory
If you're in a nodejs server : https://hyperledger.github.io/composer/v0.19/api/common-businessnetworkdefinition.html#getfactory
Is any solution to call a transaction of another business network and get an asset in returns?
what ? You have a network 1 and want to call the network 2 ???
yes
WTF ??? you need a third party for this. like a nodejs server
as a new API?
[ ](https://chat.hyperledger.org/channel/composer?msg=j985QRjtSpAtN3SjZ) @CorentinPacaud https://hyperledger.github.io/composer/v0.19/api/common-factory but this show newTransaction method
What ? the link is for a js file "compiled" in the BNA. You can't call a another network with this. you need to do this ;
NODEJS -> calls network 1 with new transaction
NODEJS -> retrieve data from network 1.
NODEJS -> calls network 2
[ ](https://chat.hyperledger.org/channel/composer?msg=oDiHjqELsAnDQHGX3) @CorentinPacaud Thanks
hello everyone, I have question I hope I get an answer. I knew that composer network start use npm install commands to download packages during containers building. Now what are the packages that npm installed from the Internet ? Also, can I create local npm to host npm packages ? if yes how . Thank you
Has joined the channel.
Hi all,
I need your favor to understand that if I am building blockchain application using tool hyperledger composer and it's supported definition language and javascript then is it correct that I am building a production grade application?
Because I have confusion is fabric shim API in go and composer based js Chaincode same?
I have started building my application model on composer this week. So experts, please help in this basic query.
Thanks
Hi all,
I need your favor to understand that if I am building blockchain application using tool hyperledger composer and it's supported definition language and javascript then is it correct that I am building a production grade application?
Because I have confusion is fabric shim API in go and composer based js Chaincode same?
I have started building my application model on composer this week. So experts, please help in this basic query.
Thanks
Aamir
Hi all,
I need your favor to understand that if I am building blockchain application using tool hyperledger composer and it's supported definition language and javascript then is it correct that I am building a production grade application?
Because I have confusion is fabric shim API in go and composer based js Chaincode same?
I have started building my application model on composer this week. So experts, please help in this basic query.
Thanks
Aamir
Hi all,
I need your favor to understand that if I am building blockchain application using a tool hyperledger composer with it's supported definition language and javascript then is it correct that I am building a production grade application?
Because I have confusion in the sdk of fabric shim API in GOlang and hyperledger composer based JS Chaincode. Whether they are same or not?'
I have started building my application model on composer this week. So experts, please help in this basic query.
Thanks
Aamir
[ ](https://chat.hyperledger.org/channel/composer?msg=j985QRjtSpAtN3SjZ) @CorentinPacaud yes getFactory will not allow to create new Transaction.
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=xySD62ctJhwtoGKn4) @aamirmansuri No, this is not a production grade application. Hyperldeger composer is, by experience, limited when it comes to build a network with multiple peers, with its cards, etc.
hello everyone, I have question I hope I get an answer. I knew that composer network start use npm install commands to download packages during containers building. Now what are the packages that npm installed from the Internet ? Also, can I create local npm to host npm packages ? if yes how . Thank you
Hello, does anyone know how a tutorial, or can someone help me with activating the multi-user mode and switching between card ?
Has joined the channel.
I am not able run my network locally in ubuntu 16.04 in virtual box
image.jpg
Please someone help me
hi,
Encountering an error of
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
```
Error: Cannot find module 'composer-client'
at Function.Module._resolveFilename (module.js:548:15)
at Function.Module._load (module.js:475:25)
at Module.require (module.js:597:17)
at require (internal/module.js:11:18)
at Object.
hi,
While executing the code in node js
const BusinessNetworkConnection = require('composer-client').BusinessNetworkConnection;
Encountering an error of
```
Error: Cannot find module 'composer-client'
at Function.Module._resolveFilename (module.js:548:15)
at Function.Module._load (module.js:475:25)
at Module.require (module.js:597:17)
at require (internal/module.js:11:18)
at Object.
[ ](https://chat.hyperledger.org/channel/composer?msg=7EiSbpqqvbTunYEPx) @pavan876 The fabric will be not running. Plz make sure it is at running state.
[ ](https://chat.hyperledger.org/channel/composer?msg=PsnjGznNEh8swkHTg) @adnanabbasktt yes it is at running state after type ./startFabric.sh and ./createPeerAdminCard.sh I started composer-playground. When I am creating a sample network it shows this error
Has joined the channel.
Has joined the channel.
May I know is this website https://hyperledger.github.io/composer/latest/index.html and Hyperledger Compose obsolete?
Has joined the channel.
Has joined the channel.
I've found that in Hyperledger composer playground anyone can delete the current business network . How to restrict it so that only admin can delete their own business network?
[ ](https://chat.hyperledger.org/channel/composer?msg=cjyytDhJhBcyBkLQ7) @FathyGeaiessah @FathyGeaiessah You can work on windows 10. There's not restriction. just install fabric for windows 10 & composer. check out download procedure on youtube link: https://youtu.be/7BeJ6MSKH9k
You can work on windows 10. There's not restriction. just install fabric for windows 10 & composer. check out download procedure on youtube link: https://youtu.be/7BeJ6MSKH9k
@FathyGeaiessah You can work on windows 10. There's not restriction. just install fabric for windows 10 & composer. check out download procedure on youtube link: https://youtu.be/7BeJ6MSKH9k
I've found that in Hyperledger composer playground anyone can delete the current business network . How to restrict it so that only admin can delete their own business network?
I've found that in Hyperledger composer playground anyone can delete the current business network . How to restrict it so that only admin can delete their own business network?
Hello
How can I have 2 clients for multi user mode rest-server and how can I differentiate between them ?
Has joined the channel.
why composer network start and ping take long time, sometimes it take few minutes and sometimes and take more that 30 min ? what is the reason and by the way when it take long time it does not work properly it gives errors. any idea or helpful tip ?
@GyoonKi how big is your network ? Usually for mine it takes about a minute on the first start, but after that every start is fast.
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZXcmh7338jcfxg5Qp) @Daka I have three VMs ( each represent an organization) , each org has an orderer and 2 peers
VM ? Virtual machines?
[ ](https://chat.hyperledger.org/channel/composer?msg=DkS53Q57oEweFyQH7) @Daka yes
Maybe that could be the reason ? I don't use VMs
[ ](https://chat.hyperledger.org/channel/composer?msg=zSHByhDvJqLg6qdBM) @Daka I dont know Im trying to figure it out
[ ](https://chat.hyperledger.org/channel/composer?msg=zSHByhDvJqLg6qdBM) @Daka so you have multiple physical machines ? do you use docker swarm to connect between them ?
No at the moment I am running only fabric default with 1 org on the docker, so I am using only 1 machine
Has anyone ran the composer-rest-server behind a reverse proxy with Nginx? I am setting it up and it is working for http:// but with https:// I get a 404
Has joined the channel.
Hello everyone. I'm trying to install npm on ubuntu with " cauvin@cauvin-K70IJ:~$ npm install -g composer-cli@0.20 " but it's not working, i've this message:
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.7 (node_modules/composer-cli/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.7: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
Someone can tell how to fix it ? It is a root problem ?
Has joined the channel.
is there any tutorial on Concepts that It could help me undetstand.
[ ](https://chat.hyperledger.org/channel/composer?msg=SHKy7Ltqwc3fq3J4D) @CorentinPacaud Hi @corein
[ ](https://chat.hyperledger.org/channel/composer?msg=SHKy7Ltqwc3fq3J4D) @CorentinPacaud Hi @CorentinPacaud thanks for your reply. So is it good to get started for MVP and deploy over IBM starter plan with two peers?
[ ](https://chat.hyperledger.org/channel/composer?msg=SHKy7Ltqwc3fq3J4D) @CorentinPacaud Hi @CorentinPacaud thanks for your reply. So is it good to get started for MVP and deploy over IBM starter plan with two peers? And then I have to write in Node or Go right?
[ ](https://chat.hyperledger.org/channel/composer?msg=SHKy7Ltqwc3fq3J4D) @CorentinPacaud Hi @CorentinPacaud thanks for your reply. So is it good to get started for MVP and deploy over IBM starter plan with two peers? And for production grade i have to write in fabric shim APIs for Node SDK right?
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has left the channel.
can I use non-admin card with composer rest server ? if yes how ? every time I use non admin card then open angular app I got an access denied error
It is because of the ACL. Give access to this card to do something in the network.
rule SSIdentityNetworkPermissionSystem {
description: "can READ the system registries"
participant: "ANY"
operation: READ
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
put this at the top, now every participant can at least read, but not do anything else in the netwrok
Has joined the channel.
Hi Guys
Is composer out of further updates?
Hi,
I need transactionId is returned after transaction submitted and asset added. Can anyone give a method for that ?
Hi,
I need transactionId is returned after transaction submitted and also a new asset created. Can anyone give a method for that ?
@vishalnigam IBM are not going to contribute to it for the time being, so in a way, yes
Has joined the channel.
Hi, I have create two participants "producer" and "oem" and now in these participant I create by clicking the "+ participant" two departments each. After transacting some materials between one department of the producer and one department of the oem, the accountBalance of those departments chances. These steps are working in my program. Now I want that also the other departments chance their accountBalance the same way as the two departments do, which are involved in the transaction.... is that somehow possible?
```
```
Has joined the channel.
Hello Guys, I have developed an app on composer and its rest endpoints, but when I am trying to create an asset from frontend it is giving me 422 error, any idea why it is showing that error ?
422
422
Hi , Can i read the fields in a submitted transaction with javascript? Are there for example API or a code snippet?
Has joined the channel.
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=LQPYMKxzD4u8hbM9Q) Hey @vishalnigam, you can also check out Convector as an alternative, we keep pushing updates to it constantly, we support Fabric 1.4 and features like private data as well :) This is our chat community https://discord.gg/HjM4B4T
Has joined the channel.
what is the attribute `$original` under the assets when queried?
Has joined the channel.
hi anyone help me?
i have oauth setup in my application, and after authentication the callback goes to the swagger UI, there i can find the cookies
but the i redirect to my application to proceed further request, but cookie is not set on that successRedirect path.
so how can i retrive the access token to the application after successful authentication
Has joined the channel.
hi is it possible to use classes within a script file in order to organise functions logically ?
Hi. I'm trying to use the Node-RED module node-red-contrib-composer but I'm stuck at getting the error message when I'm following the example code and with my own code.
`"Error: creating resource error Error trying to ping. Error: Composer runtime (0.20.8) is not compatible with client (0.19.20)"`
I have checked, and double-checked that I have the updated versions of composer and searched the web for a solution but to no avail.
I can successfully ping the network from terminal.
I'm running fabric 1.2
Is there something I can have overlooked? Which "client" are the error talking about for instance?
Hi, can any body suggest me some good resource to learn using Composer, Cello and Explorer combinely?
[ ](https://chat.hyperledger.org/channel/composer?msg=2QjWgmT8xhyQ4Doa5) @ShrmaAmrit Well in my opinion in the page of Composer but if you ask I think is better go to WorldSibu.tech/convector and learn Convector now supporting Fabri 1.4
[ ](https://chat.hyperledger.org/channel/composer?msg=2QjWgmT8xhyQ4Doa5) @ShrmaAmrit Well in my opinion in the page of Composer but if you ask I think is better go to WorldSibu.tech/convector and learn Convector now supporting Fabric 1.4
Has joined the channel.
bvvr@bvvr-Virtual-Machine:~/nrbvvr-network$ composer network install --card PeerAdmin@hlfv1 --archiveFile nrbvvr-network@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: The business network is already installed on all the peers
Command failed
Has joined the channel.
Has joined the channel.
Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is set to 'hlfv12'
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)
Using composer-cli at v0.20.8
Successfully created business network card file to
Output file: /tmp/PeerAdmin@hlfv1.card
Command succeeded
Error: EACCES: permission denied, mkdir '/home/ubuntu/.composer/cards'
Command failed
Error: EACCES: permission denied, mkdir '/home/ubuntu/.composer/cards'
Command failed
Can anyone tell me why i am getting this error while executing createPeerAdminCard script
Has joined the channel.
I just up a new hyperledger network. Then I try to setup an explorer for the same network. But getting error on orderer port. I use localhost:7050 as the orderer port. On the log file of the hyperledger explorer is show some thing like that
[[31merror^[[39m: [Orderer.js]: sendDeliver - rejecting - status:NOT_FOUND
(node:28167) UnhandledPromiseRejectionWarning: Error: Invalid results returned ::NOT_FOUND
at ClientDuplexStream.
I already searched on google. But not get any document about this error. I am sure that the following port number is listen perfectly. I expect a best guide from hyperledger team. Thank you
Has joined the channel.
How can I add npm api in script.js in online playground??
@SomenPalia That is not possible :(
[ ](https://chat.hyperledger.org/channel/composer?msg=ckxo3zoieRRdMbZZe) @mobie This happens when the version installed via `package.json` and that of the cli installed using `npm i -g` are different. What happens is when you type `composer archive......` you create the bna using one version, but it is deployed by the version installed in the local node_modules folder.
either change the version in your package.json file or uninstall the npm -g module and reinstall the same version
as your package.json
[ ](https://chat.hyperledger.org/channel/composer?msg=srHE3vKzeB685vC2d) @amink-93 can you give an example of what you want to achieve?
[ ](https://chat.hyperledger.org/channel/composer?msg=LQPYMKxzD4u8hbM9Q) @vishalnigam yes
Hey guys, I'm new in hyperledger composer, so maybe wy question has already been asked earlier. I did a first version of my code who is working quite well in the Playground ( on my localhost:8080) , now I'm trying to update my code with a newer version. When I do it in the playground with the button " deploy changes" there is no problem.
Nevertheless if I change my code on my computer I can generate a new bna file (eg: network@0.0.2.bna ) but I cannot manage to upload this new version in the playground, it stays always with my intial code. Which command am I suppose to use in my terminal in order to update my project ? Or is there another way to do it ?
Thanks in advance!
Has left the channel.
Has joined the channel.
Hi, all. I am having two doubts.
1.) How to run the composer rest server as background service. While creating a sample app using the composer playground andd composer rest server, you have to start both to work. composer playground can be started using "nohup" but the composer rest server cannot as user should pass values into ther terminal so started. So i am stuck there. Please take a look here
https://stackoverflow.com/questions/55331567/how-to-pass-answers-to-bash-script-composer-rest-server-options-through-text-f
2.) Have anybody created a network that can accpets peers from outside in composer playgrond ? I have checked the imb developers channel in youtube they say that the whole process is complicated and then they move on with the IBM blockchain enterprise edition gui where they add the peers manuallly. Anybody have done this ? How to automatically add peers like in the case of peer to peer network where we join automatically to the network ?
If somebody have any idea please do reply because in some point or other lot of people will come across this. so your answers/hints will help others too..
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=69sSGx7Krvi4oAkqt) @sooraj2189 you can run composer-rest-server on the background with pm2, connect with your application layer through REST (curl)
m very confused between hyperledger fabric and hyperledger composer . as per my understanding they both does the same thing . is it ? and why we deploy composer business blockchain network on hyperledger fabric. m new to blockchain .
if m usng composer playground . then why i need hyperledger fabric ?
[ ](https://chat.hyperledger.org/channel/composer?msg=azdgAHTDjBgEjomG2) @ribjethgnis Composer is a tool working on top of Hyperledger Fabric. You need Fabric to deploy your business network on
when using composer playground online (in browser) you're working on your browser storage, this is just for testing. You'll need to deploy it on Fabric for running it on a blockchain
thanks @benjamin.verhaegen in a production environment how should i proceed then ?
Hi
well thanks for clearing my doubt.
I just up a new hyperledger network. Then I try to setup an explorer for the same network. But getting error on orderer port. I use localhost:7050 as the orderer port. On the log file of the hyperledger explorer is show some thing like that
[[31merror^[[39m: [Orderer.js]: sendDeliver - rejecting - status:NOT_FOUND
(node:28167) UnhandledPromiseRejectionWarning: Error: Invalid results returned ::NOT_FOUND
at ClientDuplexStream.
[ ](https://chat.hyperledger.org/channel/composer?msg=tFc6ZrpvnY3vbNZ9g) @ribjethgnis A production network is a whole different story. First try clearing all the basics out of Hyperledger Fabric and composer
Please give any suggetion
I already post a question on https://stackoverflow.com/questions/53994194/hyperledger-explorer-starting-problem-orderer-port-communication-issue
@benjamin.verhaegen appreciate man
@benjamin.verhaegen Please help me to
[ ](https://chat.hyperledger.org/channel/composer?msg=Zwvn58M73K8FmaCDp) @salmanfarisk98 are you working on the standard setup supplied by composer?
@benjamin.verhaegen I am working on hyperledger composer network
on a clean machine? so no other services running?
no
only running the hyperledger on docker
try "lsof -i :7050"
no result
then nothing is running on that port
try running docker ps
919ff927c317 hyperledger/fabric-orderer:x86_64-1.1.0 "orderer" 2 months ago Up 25 hours 0.0.0.0:7050->7050/tcp, 0.0.0.0:33600->7050/tcp orderer0.MyName.com
please just take a screenshot of the output
Ok
let me wait sir
Screenshot from 2019-03-27 15-44-34.png
Done
that's not the standard setup of compose
ok
Have suggetion to solve my error...??
delete your setup and follow the official documentation of hyperledger composer
Actully this is a production network
Any way are availabble to setup explorer for this network...??
There are many datas are existing in this network. So deletion is complicated process..Any way are available to restart the network without lose any data..???
if this is a production network, try running it on different machines. Now you have a blockchain running on 1 machine != distributed. if you want to save the data i think backing up the couchdb should help
Ok. I understand the data backing up the couchdb. My doubt is How the existing data (old network data) to use new hyperledger network...?? Any documents...??
Ok. I understand the data backing up the couchdb. My doubt is How the existing data (old network data) to use new hyperledger network...?? Any documents...??
i have no idea, try google
Ok
There is no documents are available for starting the hyperledger with existing data
Any other suggetion is available to solve the issue...??? any suggetion??
@benjamin.verhaegen : Thank you for the hint.. Checking it now. Any hint about the second one ?
2.) Have anybody created a network that can accpets peers from outside in composer playgrond ? I have checked the imb developers channel in youtube they say that the whole process is complicated and then they move on with the IBM blockchain enterprise edition gui where they add the peers manuallly. Anybody have done this ? How to automatically add peers like in the case of peer to peer network where we join automatically to the network ?
[ ](https://chat.hyperledger.org/channel/composer?msg=LTM53e6XQj5JnJyht) @sooraj2189 you don't need playgound
@sooraj2189 How it possible..?? Hyperledger is a permitionised block chain technology..??
you can add peers to an running fabric blockchain
I am new to the hyperledger. I was using hyperledger composer + playground as the interface was easy to create apps. Also all the tutorials from IBM and youtube point to that only.
Now regarding the fabric, we start the fabric with a specific set of peers. We mention the count in the beginnin in think in a docker.yaml file we have mention before starting to generate that many number of peers in the network. After that i search for multipeer implementation. For that also in one documentation it was showing that we have run the cryptogen file all the peer should have the same crypto files copied into their fabric sample folder to be connected into the network.
I am new to the hyperledger. I was using hyperledger composer + playground as the interface was easy to create apps. Also all the tutorials from IBM and youtube point to that only.
Now regarding the fabric, we start the fabric with a specific set of peers. We mention the count in the beginnin in think in a docker.yaml file we have mention before starting to generate that many number of peers in the network. After that i search for multipeer implementation. For that also in one documentation it was showing that we have run the cryptogen file all the peer should have the same crypto files copied into their fabric sample folder to be connected into the network.
I was think of something like this :
* We have a network with admin as the base peer in it.
* Other people from outside can connect through this network which would be multi-host implementation it seems
* The use case will be like a marketplace website where new users can login to the website. The new users will be peers from outside and they will the ledgers synced with one in the network
Please give my some links or documentation so that i can read and implement.
I think you're talking about fysical people using an application which connects to a blockchain?
@sooraj2189
@benjamin.verhaegen : yes exactly. How would be the implmentation for it ?? I have a seen a sample auction website made from Hyperledger which was show in the IBM developers video. So i want to make an application link that. Like a bank website hyperledger. So its not public but private and permissioned as it allows only the bank employees to have acess. DIfferent bank branches can act as peers (admin of the bank). They wull send money from one brach to next & vice versa. Main branch can monitor the transactions. All the branches willl be peers and wil have same ledgers.. how to implement that ??
I made a sample appication with hyperledger composer playground + rest server + gui. But its have it works only with the admin card as default. Just with admin card i cannot change permissions means like show and hide acess. I am thinking different cards are issued to differnt peers.
you can add multiple participants on your business network and give them a business network card (linked to their identity)
but they do not have a copy of the ledger, nor do they something of blockchain components
they are just clients using an application
Yes they dont. I wanted to have same ledger syncing.. because hyperledger is saying distributed ledger system. i cannot find that implementation. In some blog it was mentioned about docker swarming. In short i wanted to implement distributed ledger using hyperledger
I don't know what you're trying to say. Blockchain is distributed. Application and Blockchain need to be seperated, application communicates with blockchain through the rest server and will always get the same data
or are you talking about a hyperledger fabric setup on different physical machines?
Okay i think i am not saying clearly. Is there any example where distributed ledger system is implemented using hyperledger. Meaning different physical machine connection to a network and then all their ledgers getting synced ? any link for that ?
Hyperledger IS a distributed ledger system..
Okay i have installed fabric in in one main machines and i have two other slave machines. The main machine has some transactions going on which fills up the ledger. Now i wanted to connected the 2 slave machine into the main network and i want to see their ledger getting synced. Is that possible ?
fabric also installed in slave machines..
that's possible
hyper.png
See the marked portion in the blog..
there are many tutorials to be found on google
@benjamin.verhaegen :D .. can you point me to some links for that ??
always check the date of the articles you read online, this one is probably old
okay sure.. understood.. i think you might have worked on this area by now. Can you please share the link that you might have used. I search in youtube and in net. Maybe because i am a noob i was not able to spot it. I have been siting with this for more that week that why :sweat_smile:
https://medium.com/coinmonks/hyperledger-fabric-cluster-on-multiple-hosts-af093f00436
first link on google btw
there's also scripts for this to be found online..
Thank you and my bad. I told u am noob at this. It was mentioned kafka and all. So i thought it was something else. I am not even a CS guy :sweat:
maybe it's a good idea to outsource your project if you want it in production
[ ](https://chat.hyperledger.org/channel/composer?msg=4bQaHr5RKA3GCoNoD) @benjamin.verhaegen Its just a implementation.. learning by implementing..
Please, i'm using the multi-user mode for the rest server API and i want to use this option without need a 3rd party authentication, i know that the --multiuser (implies -a) , so if there is any solution to avoid that authentication option with the multi-user mode.
Has joined the channel.
Hi all, i lost the network card for a user, the user already enrolled, the data in the mongodb of the composer rest server got wiped and i am using multi user mode. the identity still exists in the fabric ca and i know its id, the participant also still there, i want to get the network card and import it again into the rest server database. is there a way that i can do that?
I am getting this error when issuing a new ID
t: Participant 'org.patient.network.Patient#1' does not have 'READ' access to resource 'org.hyperledger.composer.system.Network#patient-health-network@0.0.2-deploy.36'
[ ](https://chat.hyperledger.org/channel/composer?msg=NphoKdnh3Hqp7NBxw) @pavan876 check your ACL rules
What should be my ACL rules
Has joined the channel.
Hi all, I want to ask a simple question. I created a business network on composer. I played it with composer-playground and composer rest server. Now I would like to connect my java application to the my business network such that users will register to the network(meaning being a participant) via java app and they will submit a transaction to the ledger. However, isn't that rest server working on only localhost? How user1 on the app is capable to see the transaction of user2 on the ledger via the app?? Did I misunderstand something? For instance, I'm trying to develop a property record app using blockchain such that user can submit his properties to the ledger and some of the other users(defined as a requirement) can see his properties on their application.
Hi all, I want to ask a simple question. I created a business network on composer. I played it with composer-playground and composer rest server. Now I would like to connect my java application to the my business network such that users will register to the network(meaning being a participant) via java app and they will submit a transaction to the ledger. However, isn't that rest server working on only localhost? How user1 on the app is capable to see the transaction of user2 on the ledger via the app?? Did I misunderstand something? For instance, I'm trying to develop a property record app using blockchain such that user can submit his properties to the ledger and some of the other users(defined as a requirement) can see his properties on their application.
Hi all, I want to ask a simple question. I created a business network on composer. I played it with composer-playground and composer rest server. Now I would like to connect my java application to the my business network such that users will register to the network(meaning being a participant) via java app and they will submit a transaction to the ledger. However, isn't that rest server working on only localhost? How user1 on the app is capable to see the transaction of user2 on the ledger via the app?? Did I misunderstand something? For instance, I'm trying to develop a property record app using blockchain such that user can submit his properties to the ledger and some of the other users(defined as a requirement) can see his properties on their application.Then how is this possible with rest-server? Also how is it decentralized if there is a rest server?
Then how is this possible with rest-server? Also how is it decentralized if there is a rest server?
Has joined the channel.
error occurs while try to install the npm install -g composer-cli@0.20
npm WARN checkPermissions Missing write access to /home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules
npm ERR! path /home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules'
npm ERR! { Error: EACCES: permission denied, access '/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules'
npm ERR! stack: 'Error: EACCES: permission denied, access \'/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules\'',
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules' }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator (though this is not recommended).
npm ERR! A complete log of this run can be found in:
npm ERR! /home/jothi/.npm/_logs/2019-03-29T02_29_51_304Z-debug.log
npm WARN checkPermissions Missing write access to /home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules
npm ERR! path /home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules'
npm ERR! { Error: EACCES: permission denied, access '/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules'
npm ERR! stack: 'Error: EACCES: permission denied, access \'/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules\'',
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules' }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator (though this is not recommended).
npm ERR! A complete log of this run can be found in:
npm ERR! /home/jothi/.npm/_logs/2019-03-29T02_29_51_304Z-debug.log
npm WARN checkPermissions Missing write access to /home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules
npm ERR! path /home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules'
npm ERR! { Error: EACCES: permission denied, access '/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules'
npm ERR! stack: 'Error: EACCES: permission denied, access \'/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules\'',
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules' }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator (though this is not recommended).
npm ERR! A complete log of this run can be found in:
npm ERR! /home/jothi/.npm/_logs/2019-03-29T02_29_51_304Z-debug.log
npm WARN checkPermissions Missing write access to /home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules
npm ERR! path /home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules'
npm ERR! { Error: EACCES: permission denied, access '/home/jothi/.nvm/versions/node/v8.15.1/lib/node_modules'
npm ERR! stack: 'Error: EACCES: permission denied, access
Has joined the channel.
Is there some developing tutorials about composer? I can hardly understand some information athttps://hyperledger.github.io/composer/latest/tutorials/tutorials
:sob: I don't have any fabric developing experience or js developing experience so I can hardly get it:sob:
[ ](https://chat.hyperledger.org/channel/composer?msg=vttbRyy5Cgt6xGFmK) Try to install as sudo
[ ](https://chat.hyperledger.org/channel/composer?msg=yiiQ38k8etF4qNNxN) You can take the following course it is easy to understand. https://www.udemy.com/hyperledger/
[ ](https://chat.hyperledger.org/channel/composer?msg=G3TnX5bcK83mjP6wh) @itsNebula never install npm packages with sudo!! that's probably the reason why you got these errors. Try doing the installation on a fresh ubuntu
[ ](https://chat.hyperledger.org/channel/composer?msg=fzbYq8ZaSqtazpL6W) Anyone can help?
[ ](https://chat.hyperledger.org/channel/composer?msg=HLNzvo3ydQD5JE6tQ) @itsNebula you can config the rest server to work on different ports. However if you are running it on localhost on a server, you can access it by using the IP of that server + the port used. Ledger transactions can be checked with the historian. And if no ACL's being applied, everybody can see all the assets and transactions.
[ ](https://chat.hyperledger.org/channel/composer?msg=Zw7Dw4jQgyrHSoKfr) @benjamin.verhaegen But then how is it decentralized? Isnt it that just a client server?
[ ](https://chat.hyperledger.org/channel/composer?msg=CCZY3vnRskCudmX3R) @itsNebula using a single rest server is indeed not decentralized, in that endpoint, but the fabric network should be decentralized. You can set up multiple rest servers do get it decentralized.
Has joined the channel.
Hi, any working example on User authentication using passport-jwt to access composer rest api and frond end Angular JS app?
[ ](https://chat.hyperledger.org/channel/composer?msg=u7kD6puGmY8jchtBn) @BChain_Dev you can find it on the docs of composer
@benjamin.verhaegen : It has only passport-git strategy, and i dont find how the new user can join the network and access based routing
[ ](https://chat.hyperledger.org/channel/composer?msg=XdiKR9v3JSG8jyqzC) @benjamin.verhaegen Then, how does it possible to have multiple rest server? I want all users of my app to hold records and sync.
[ ](https://chat.hyperledger.org/channel/composer?msg=49WPgKcKeg4NhEcJo) @itsNebula the rest server is not the same as your blockchain network. Rest server doesn't hold you state data. The fabric network holds your data
what I did from up to here( business network, composer and rest server) is not totally related as I understood you correctly. I'm a bit confused about what I should do. I just want my app uploads and downloads information from the blockchain to the user and if one user uploaded a data, then the other must have been capable of seeing the data on the desktop app. Now, should I go with composer? Or do I need a fabric configuration?
[ ](https://chat.hyperledger.org/channel/composer?msg=qsZSS4Ybf8n4Axpks) @benjamin.verhaegen what I did from up to here( business network, composer and rest server) is not totally related as I understood you correctly. I'm a bit confused about what I should do. I just want my app uploads and downloads information from the blockchain to the user and if one user uploaded a data, then the other must have been capable of seeing the data on the desktop app. Now, should I go with composer? Or do I need a fabric configuration?
[ ](https://chat.hyperledger.org/channel/composer?msg=DwwNheYo4eWeXDwAz) @itsNebula i'm not really sure what you're trying to say. Composer-rest-server will make the communication possible between your Fabric network (with the business network deployed on it) and your application layer. The use of composer is very good if you want rapid development with less need of good developing skills. The use of fabric chaincode is always better, but will cost you more research and training and time then compsoser
Hello. I've been playing around with AWS Managed Blockchain - Hyperledger Fabric 1.2, currently in preview. I have successful created a fabric, and a channel, and can instantiate chaincode all using a fabric-tools container. I thought I would also try utilising Hyperledger Composer because we have used this heavily on our other projects. I have got to the point of starting the business network, but I receive the following error: "Error: Error trying to start business network. Error: Failed to connect before the deadline". Currently the managed service doesn't provide access to peer logs. I'm flying blind ;-) Log access is coming soon. I wonder if anyone has successfuly deployed and started a business network on AWS Managed Blockchain, and may have some pointers?
Clipboard - March 29, 2019 6:17 PM
m trying to use hyperledger fabric but in docker i am facing the prerequisit issue ..
i am not able to install anything like node,npm,python
[ ](https://chat.hyperledger.org/channel/composer?msg=k2aSGd5yP9CNJgXo6) @ribjethgnis Try: sudo apt-get update
Cerror.png
I tried npm install --global composer-playground@unstable
but i failed
Has joined the channel.
Has joined the channel.
Hello, I am just learning Hyperledger Composer and have 2 questions. 1) Is the model file (.cto) case sensitive?
@mrethan yes
https://composer-playground.mybluemix.net/ use this to play around
Daka, thank you. I am using the playground but since I don't have a background in programming I have some very elementary questions.
I have 2 more questions (sorry they are so simple): when writing comments in the cto file, is the second asterisk in the first line just for good form or is it necessary? (e.g., /** )
in the cto I am writing comments like this //
in the logic file you have to do the /** ... ... ...*/
Clipboard - March 30, 2019 11:06 AM
OK , great. Here is my final question. can you please just explain to me in plain english what this command is doing?
Oh sorry, that happened in reverse, I am referring to the code in blue in the image
a transaction is to be used by the user to do something
The capital and lowercase Commodity are confusing me
--> Commodity commodity
--> means a relationship, which in plain english it refers to the Asset or participant
so in --> Commodity commodity, "Commodity" is the Asset that this relationship will refer to and "commodity" is an instance of this asset or the generated space that will get the value you will provide, when executing the transaction
Daka, thanks let me read that a few times and think
--> Trader trader will refer to Participant Trader and will get a "trader" as a value
yes, that makes sense now. and these commodity and newOwner values will be defined when a new transaction is submitted as per the .js script right?
it is defined as per .cto and then those values will be used as .js
it is defined as per .cto and then those values will be used as per .js
but it will be better for you if you learn Golang and start using pure Fabric, since Composer is out of development
Thanks Daka, I will look into it.
I'm trying to draw a parallel to the bitcoin blockchain where transactions are stored in blocks. In this Hyperledger COmposer case is each transaction basically a "block" on its own?
That depends on Fabric. If your fabric configuration is to take all transactions in provided in less than 2 seconds, then yes
again, thanks
Composer is just a framework to build stuff, but is not independennt
look at these two
https://www.youtube.com/watch?v=7EpPrSJtqZU&list=PLjsqymUqgpSRXC9ywNIVUUoGXelQa4olO
https://www.youtube.com/watch?v=MPNkUqOKhVE&list=PLjsqymUqgpSTGC4L6ULHCB_Mqmy43OcIh
then you can decide how to continue
ok
Is it more appropriate to state that each transaction is in its own block then, or that they are all in one block?
Composer is going to be installed on Fabric blockchain network
if Fabric is configured, so that it would batch the transactions into a block every 30 seconds or when the transactions are 10, then you will be having in a block either 10 transactions, or all of the transactions you made that are less than 10 and the countdown starts after the submission of the first
Fabric is a dlt that is different from Bitcoin in a lot of ways, so the behavior of the network is different as well
OK well I am just trying to understand the model in the tutorial. I am not changing any configurations. There is no delay when I submit a transaction so ... I guess each transaction is a block?
in composer playground, yes
but better to take it that you just see the ledger with transactions, rather then the ledger with blocks
ok
Am I interpreting this correctly:
Clipboard - March 30, 2019 12:05 PM
Every Commodity must be owned by a Trader
and will get owner as a vale
and will get owner as a value
where does 'owner' come from?
yes, owner is just the name to refer, the variable that will hold the value provided for Trader
and the value provided for the trader will be determined based on tradeId?
yes
Thank goodness.
because Trader is identified by tradeId (which technically should be traderID)
I'm looking atthe .js file and this appears at the top. I have some questions
Clipboard - March 30, 2019 1:22 PM
Although this is commented out, the @param and related information on that line and the next are still read?
The "Track the trade of the commodity from one trader to another" and the "- the trade to be processed" is just comments right?
Do you actually need a * on each of these rows between the /** and */ ?
Do you actually need a star on each of these rows between the /** and */ ?
Is it corect to say "This function defines Trade as the associated transaction, and defines it as the parameter trade."
Has joined the channel.
Has joined the channel.
Hi I am running in to an issue with connecting composer to my own multi-org fabric network. I am getting an error that I am not able to communicate with the peer. I am running the build your first network tutorial from hyperledger fabric, and I working with the deploying multi-org network from composer. Are there any corporate network configurations or firewall I should take into consideration with grpc protocol? I am not sure what the underlying problem would be, but any insights would be greate.
Hi I am running in to an issue with connecting composer to my own multi-org fabric network. I am getting an error that I am not able to communicate with the peer. I am running the build your first network tutorial from hyperledger fabric, and I working with the deploying multi-org network from composer. Are there any corporate network configurations or firewall I should take into consideration with grpc protocol? I am not sure what the underlying problem would be, but any insights would be great. I am running everything within one vm, a docker-compose network for the fabric network, and other instance for the hyperledger composer application. I am trying to access the fabric network with composer network install command, but the network will not successfully install because I cannot communicate with the network.
Has joined the channel.
@mrethan yes, the @param is needed, it is checked whether there is such a resource (org.example.mynetwork.Trade} and a reference to the transaction "trade" otherwise you cannot use the respective transaction
@ahy for me it worked fine, but every time you have to regenerate the keys and certificates
Clipboard - March 31, 2019 1:57 PM
I assume the transactionId is a hash right? If so, can I recompute it using one of the online hashing sites?
@Daka Thank you so much for responding! Can you elaborate on "every time you have to regenerate the keys and certificates"?
I have an odd error where if I create a new card and issue an identity by assigning the card to a participant through command line I get a "Error: Error trying login and get user Context. Error: Error trying to enroll user. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]" when I attempt to use this card to login to the rest server.
however if I create the card through playground first within the id registry and then login to the rest server it seems to work perfectly fine
Clipboard - March 31, 2019 7:55 PM
can anyone help me create large scale transactions
i want to test performance on azure using multiple vms in a network
Has joined the channel.
Clipboard - March 31, 2019 10:33 PM
so I have composer up and conected to my local multi org fabric network. Can anyone explain what the process is like to upgrade the smart contract? I updated and deployed the new business logic from org1, and when I tried to connect to the business network from org2, I get this error Error: Error trying to ping. Error: cannot retrieve package for chaincode example-first-network_byfn/0.0.3-deploy.2, error open /var/hyperledger/production/chaincodes/example-first-network_byfn.0.0.3-deploy.2: no such file or directory
so I have composer up and conected to my local multi org fabric network. Can anyone explain what the process is like to upgrade the smart contract? I updated and deployed the new business logic from org1, and when I tried to connect to the business network from org2, I get this error Error: Error trying to ping. Error: cannot retrieve package for chaincode example-first-network_byfn/0.0.3-deploy.2, error open /var/hyperledger/production/chaincodes/example-first-network_byfn.0.0.3-deploy.2: no such file or directory
also to note. I used composer playground and connected to the network as org1. to change the asset in the .cto
also to note, I used composer playground, connected to the network as org1, changed the assets in the .cto file, and then clicked deployed. I then went back to the Business Network, and tried to connect to the network as Org2
I implemented a hyperledfer fabric network on three different machines with one channel and without the help of composer. Now I want to define assets, transactions with composer - how do I install and use composer on my existing and running fabric network?
identity issue api hangs in REST server any idea why?
how can i get this api to work?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=k8sEMrx43umyvBgds) @VictoriaW Just install the tools needed for Hyperledger Composer and update the scripts (createPeerAdmin.sh) to work on your setup
Has joined the channel.
I am trying to install business network onto a peer, but I encounter the below error:
`✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
`
Is there any way I can debug to see what is causing the error?
is it at all possible to call a transaction within another transaction and have it be submitted as a transaction rather than being just a function call ?
when you make changes or reads (even in the same function) these become parts of the block (txs)
Has joined the channel.
I am trying to change post body limit size here(https://github.com/hyperledger/composer/blob/master/packages/composer-rest-server/server/config.json),but it did not work, how can i change it,thanks
Has joined the channel.
Has joined the channel.
Has joined the channel.
Can anyone give an example of three participants sample that includes the model.cto file?
Does anyone have any idea if its possible to assign more than one participant to an identity ?
Has joined the channel.
Create Course Transaction
[ ](https://chat.hyperledger.org/channel/composer?msg=tTGHWcWw49My9cDBv) @patrick.dacoliat https://hyperledger.github.io/composer/latest/tutorials/playground-tutorial follow this document
Has joined the channel.
hi. at the end is it confirmed that hyperledger composer will be abandoned? or I'm invented
Has joined the channel.
Hello...I deployed composer network, rest api added assets, participants.. ..now I'm using rest api to interact with the network ...but my problem is that I don't see the blockchain anywhere...I don't see any linked nodes with hashes etc... where should I look so I can show it to my manager? Thank you
@AndresMartinezMelgar.itcl see https://lists.hyperledger.org/g/composer/message/125
@AndresMartinezMelgar.itcl see https://lists.hyperledger.org/g/composer/message/125. It's actively encouraged that you invest time in the new programming models now available in fabric 1.4
Hey, is it somehow possible to find out how the responce time, latency, computing power in hyperledger composer is?!
[ ](https://chat.hyperledger.org/channel/composer?msg=JjSKkeNhEqftCgsJn) @BenW 11 you can test it by giving parameters for time in your curl command when using the rest server
Hi. Anyone can assist me on why I can issue new IDs on composer? I followed the fabric build your first network tutorial, and I followed the composer tutorial for multi orgs. I dumped the logs for the fabric-ca I am trying to communicate and it is saying “
Certificate not found with AKI”
m new to blockchain. i have a little doubt . whats the difference between peerAdmin (.createPeerAdmin) and admin .
hi whats the difference between composer network install and composer runtime install
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=5avXQnSuXLQjtqQAH) @ribjethgnis composer runtime install was used in previous versions of Composer, don't use it
how can we install BNA on particular peer using composer network install
Scenario: I just added a peer randomly in an organisation and now want to install BNA on just that particular newly added peer
so, will I have to create a separate connection profile or modify the existing one?
Has joined the channel.
Has left the channel.
Hey guys, I made this tool to provide a template for people using Hyperledger Composer. It lets you visually choose options and add variables to create a basis supply chain contract between participants with different types of assets and a primer for IoT (sensors) integration.
http://138.91.120.88:8888/
There is a deployment guide on the sidebar to help out if people are not familiar with composer playground. Filling your email is entire optional!
I am looking to add more templates, if anyone has any suggestions or feedback plese let me know. I plan to keep this free to help new devs wet their feet :)
Have anyone tried integration SAP with fabric?
Have anyone tried integrating SAP with fabric?
Has joined the channel.
Has joined the channel.
Has left the channel.
Has joined the channel.
Has joined the channel.
Can I run Hyperledger Composer and Hyperledger Fabric on Ubuntu 18.04.2 LTS as I am not sure about this version...?
[ ](https://chat.hyperledger.org/channel/composer?msg=dhgyKvgkEziGGgZxF) @utkarshtrivedi56 yes you can run on 18.04 version
Has joined the channel.
Hi, could anyone answer my question regarding composer here , https://stackoverflow.com/questions/55486489/how-to-automatically-make-relationships-in-an-asset-without-a-transaction-proces
Hi. I am following the Hyperleger composer tutorial for deploying multi-org business network and Hyperledger fabric tutorial for building your first network. Does anyone have any idea why I am getting this error when I am trying to issue a new ID for a participant? This is the message I am getting from docker logs ca.org1.example.com
2019/04/07 22:25:52 [DEBUG] Received request for /api/v1/register
2019/04/07 22:25:52 [DEBUG] Caller is using a x509 certificate
2019/04/07 22:25:52 [DEBUG] Failed to verify token based on new authentication header requirements: %!s(
Has joined the channel.
hi I m deploying Hyperledger Composer playground
I want to test performance of the build program on composer so please help how to check performance of my system that build on Hyperledger Composer and fabric
[ ](https://chat.hyperledger.org/channel/composer?msg=mvNpCnnd86nuQbu9v) @ahy If you are using the ./startFabric.sh file, you'll need to update your docker-compose.yml file and update the script too
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ZfuuALux84CoewMYn) @benjamin.verhaegen Thank you for responding! I am actually not using the startFabric.sh script. I configured everything manually when I was walking through the build your first network tutorial for Fabric. I was connecting Hyperledger composer to my fabric network I span up from the fabric byfn tutorial. I was trying to issue a new ID, and this is where I am currently stuck at. Is there something I need to consider with fabric-ca, when I bring down the network and bring it back up? I was reading that I need to re-enroll the admin, but I am not sure how to do that.
[ ](https://chat.hyperledger.org/channel/composer?msg=Mk8mwZvD4S5K3fHLo) @ahy Yes, after generating the certificates you need to update your docker-compose files
[ ](https://chat.hyperledger.org/channel/composer?msg=STzNQXKtc8DeR7SQp) @karanp0987 Use hyperledger Caliper
[ ](https://chat.hyperledger.org/channel/composer?msg=LXaNDNT3KLdeFbF5P) @hn77 Check stackoverflow, answered your question
Has joined the channel.
Hi everyone. I have some questions about Hyperledger Composer:
- When I deploy a Bussines Network (Smart Contract) on Composer, can I see where is installed that Smart Contract? How is this process done? Can I see the Smart Contract code on a peer?
- Can I convert that bna file to golang Smart Contract automatically?
Hello. I'm trying to use Composer v0.20.8 with Fabric v1.2. I'm having troubles with the deployment. Attempting to use network install followed by network start fails, apparently the chaincode does not get deployed. I can force the peer to start the docker container with my BNA, but I get this error: failed to invoke chaincode name:"lscc" , error: transaction returned with failure: Error: Invalid arguments "[]" to function "start", expecting "["serializedResource"]". I don't think my network is initialized correctly, is there something else I need to do to?
[ ](https://chat.hyperledger.org/channel/composer?msg=mXGySTZoKegLLg3NZ) @WebKruncher you need the ccenv too
Can anyone please guide that how can we deploy BNA on newly added peer (added new peer afterwards at run time)?
composer network start on particular peer?
why we need hyperledger fabric if we can do everything using hyperledger composer playground ?
[ ](https://chat.hyperledger.org/channel/composer?msg=PTe7JWqPa6Rqvehjd) @ribjethgnis because playground is not working on a blockchain ..
Error: Error trying to start business network. Error: Peer localhost:7051 has rejected transaction '1f63d145a27668f768dc6806027aec9a3f31673645bf611e56fa5c0c13857d4a' with code ENDORSEMENT_POLICY_FAILURE
while starting network
@benjamin.verhaegen I have ccenv, and I can run chaincode. But, if I use the composer install / start methods, the deployment methods in the peer are never called, and the container doesn't start. If I user composer install, then I manually run peer chaincode instantiate, I can get it to start the container, but the init does't work right.
[ ](https://chat.hyperledger.org/channel/composer?msg=b6TKD65YnPSWvZ4RD) @WebKruncher probably something wrong with your Hyperledger Fabric setup
@benjamin.verhaegen that was my first guess. I have my own golang chaincode running on the same setup, seems to work fine. I've noticed that the composer install command returns successfully, with no errors in the composer, but when I look at the peer logs, I see 'context canceled'. I haven't been able to figure out why it cancels.
@benjamin.verhaegen that was my first guess. I have my own golang chaincode running on the same setup, seems to work fine. I've noticed that the composer install command returns successfully, with no errors in the composer, but when I look at the peer logs, I see 'context canceled'. I haven't been able to figure out why it cancels. But, the network start doens't work because the chaincode isn't installed.
Hey guys! We are running Hyperledger Composer and Hyperledger Fabric on Kubernetes. When Upgrading the Chaincode we suddenly get the error:
```
Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction bb7a720bccc7b646c4fa57774d0f72ae9e52898f364321b78a87c811ae4ffe30: error starting container: error starting container: cannot connect to Docker endpoint
Response from attempted peer comms was an error: Error: failed to execute transaction bb7a720bccc7b646c4fa57774d0f72ae9e52898f364321b78a87c811ae4ffe30: error starting container: error starting container: cannot connect to Docker endpoint
```
Any suggestions are very welcome.
@deelthor where are you running your kubenetes environment ?
@davidkel Azure AKS
@deelthor kubenetes supports different container environments it's possible they have changed from using docker to using containerd for example. If it is a containerd env then you would get this error
I see. The weird part is, that it used to work before. And as far nothing was changed. I will investigate.
Has joined the channel.
Hi, I set up an environment with composer-sample-applications, specifically the vehicle-manufacture. Is there a command to start/stop the entire environment? including fabric, composer, rest, and application's containers?
Has joined the channel.
Clipboard - April 9, 2019 12:15 PM
Hi guys im getting this error once i try to install my business network into a empty folder, someone knows something relate it?
Clipboard - April 9, 2019 12:16 PM
Im trying to add my busness network into the card PeerAdmin
Im trying to add my business network into the card PeerAdmin
[ ](https://chat.hyperledger.org/channel/composer?msg=cCTX5Fx9T2ex65fnL) @JoseLedezma is your fabric up and running?
Has joined the channel.
Hi everyone. I have some questions about Hyperledger Composer:
- When I deploy a Bussines Network (Smart Contract) on Composer, can I see where is installed that Smart Contract? How is this process done? Can I see the Smart Contract code on a peer?
- Can I convert that bna file to golang Smart Contract automatically?
[ ](https://chat.hyperledger.org/channel/composer?msg=FjQCZv66mktHzxwRC) @UnaiUrkiaga 1. You deploy the business network on Fabric, when it is deployed you can see the chaincode peer container running with "docker ps" and you'll be able to check inside that container.
2. It's never a good idea to convert code, try building golang yourself. If you really want to convert the code then take a look at the concerto project
Has joined the channel.
Hi Community,
I am facing issues while while starting chaincode on my newly added peer in hyperledger network. Let me explain you the issue I am facing.
I had up and running hyperledger network where I had installed my chaincode with version 0.0.1. When I ping my network everything works fine. I have added new peer in network without bringing network down. Now I am trying to install chaincode on newly added peer. I have added new peer in connection profile for both organizations after adding I have created card and installed on organization where I have added new peer. Chaincode is installed on the peer successfully. Now I am trying to start the network with "composer network start". this is the point where I am receiving the following error.
Processing these Network Admins:
userName: rafiq
userName: ahmed
× Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode with name 'cc' already exists
Response from attempted peer comms was an error: Error: chaincode with name 'cc' already exists
Response from attempted peer comms was an error: Error: chaincode with name 'cc' already exists
Response from attempted peer comms was an error: Error: chaincode with name 'cc' already exists
Response from attempted peer comms was an error: Error: chaincode with name 'cc' already exists
Command failed
Please help in this matter. How am I suppose to add chaincode on newly added peer in network.
Hi Community,
I am facing issues while while starting bna on my newly added peer in hyperledger network. Let me explain you the issue I am facing.
I had up and running hyperledger network where I had installed my bna with version 0.0.1. When I ping my network everything works fine. I have added new peer in network without bringing network down. Now I am trying to install bna on newly added peer. I have added new peer in connection profile for both organizations after adding I have created card and installed on organization where I have added new peer. bna is installed on the peer successfully. Now I am trying to start the network with "composer network start". this is the point where I am receiving the following error.
Processing these Network Admins:
userName: user1
userName: user2
× Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode with name 'cc' already exists
Response from attempted peer comms was an error: Error: chaincode with name 'cc' already exists
Response from attempted peer comms was an error: Error: chaincode with name 'cc' already exists
Response from attempted peer comms was an error: Error: chaincode with name 'cc' already exists
Response from attempted peer comms was an error: Error: chaincode with name 'cc' already exists
Command failed
Please help in this matter. How am I suppose to add bna on newly added peer in network. I dont want bring my network down while adding new peer and install bna file.
Hi @benjamin.verhaegen , thanks for your answer. Can you bring me concerto project link?
@RafiqAhmed I've answered your stackoverflow. But in summary all you need to do is install the bna on the new peer. You don't start the business network again because it is already started. The new peer will bring up the business network when it receives a request
Hi @davidkel . Thank you for your prompt response.
What I understand from you point that once network is start there is no need to start it again when new peer is added in network. Makes sense. Let me try it.
[ ](https://chat.hyperledger.org/channel/composer?msg=gzrdjAj7piXBPgtNv) @UnaiUrkiaga https://github.com/hyperledger/composer-concerto-tools
Thanks @benjamin.verhaegen , with this tools its posible to convert BNA to NodeJS Smart Contract to deploy it on Hyperledger Fabric Blockchain?
Automatically?
Comvert it automatically?
or manually?
or manually?
[ ](https://chat.hyperledger.org/channel/composer?msg=svP89BtFWN5KfZ56X) @UnaiUrkiaga Please just check the README file
Hi @davidkel It worked. Thank you. By requesting it made image for its chaincode and brought up itss container too.
Hi, can anyone tell me how to reset an optional field in an asset to be back to null ?
hi all, how can I npm start the angular-app backgroud?
Has joined the channel.
Hi all, is there a way to see the definition of the participants (model) from the composer? I got a ValidationException: Instance [id instance] has a property named password which is not declared in org.namespace.Member
Has joined the channel.
this is what I declared in the .cto file
participant Member identified by id {
o String id
o String email
o String password
participant Member identified by id {
o String id
o String email
o String password
}
participant Member identified by id {
o String id
o String email
o String password
}
composer-playgroud
[ ](https://chat.hyperledger.org/channel/composer?msg=GF7454PphZQXkDuuA) @chengloy you don't need npm to start the playground
[ ](https://chat.hyperledger.org/channel/composer?msg=M8oquqL5MMwBZyLBL) @MichaelMarcotrigiano try redeploying your business network
Anybody who has experience with concerto?
How do we update multiple registries in one transaction
hi friends i have enabled CORE_PEER_TLS_CLIENTAUTHREQUIRED in peer , orderer and cli variables, but after that i cannot install a chaincode using composer playground.can anyone help?also if possible can anyone share a sample composer connection json file with CORE_PEER_TLS_CLIENTAUTHREQUIRED property
[ ](https://chat.hyperledger.org/channel/composer?msg=HijWpavw6vN9d54TS) @alokkv what error are you getting?
@alokkv Composer cannot work with a fabric-network set up using mutual tls
[ ](https://chat.hyperledger.org/channel/composer?msg=D69v2YazoXdcKBC76) @bilalahmed @bilalahmed the following is the error i am getting
[ ](https://chat.hyperledger.org/channel/composer?msg=D69v2YazoXdcKBC76) @bilalahmed @bilalahmed the following is the error i am getting
Error: Error trying install business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
but if i desable CORE_PEER_TLS_CLIENTAUTHREQUIRED to false then everything works fine
[ ](https://chat.hyperledger.org/channel/composer?msg=zACCBHfRXy62ZbEZ9) @davidkel so for a production setup which is the better approch server side TLS enabled or Mutual TLS enabled
hello,does anyone know about this error:node 25116 cielo 30u IPv6 6921843 0t0 TCP *:3000 (LISTEN)
cielo@cielo-ThinkPad-E550:~/cprogrames/test-bna/dist$ sudo kill -9 25116
sorry for misupload it!!
Unhandled error for request GET /explorer: Error: Cannot GET /explorer
@alokkv 2 things.
1. Composer is not recommended for production use
2. If you want to use mutual TLS for your fabric network, you can't use composer
[ ](https://chat.hyperledger.org/channel/composer?msg=v5JpRrWzEY5BjqeDj) @davidkel so i should use fabric SDK right?
I get:{"started":"2019-04-10T10:52:00.267Z","uptime":6410.396} when I visit:http://localhost:3000/status/
[ ](https://chat.hyperledger.org/channel/composer?msg=DbGdmunrkZuKjB7NX) thank you for the help :)
@alokkv It's recommended you now use the new programming models in fabric 1.4
I'm getting the following error while running the composer playground: Error: Error trying to ping. SyntaxError: Unexpected end of JSON input
[ ](https://chat.hyperledger.org/channel/composer?msg=mADwiPhyWBSNiWNkj) @davidkel can you send a link please
however I get :
`{"error":{"statusCode":404,"name":"Error","message":"Cannot GET /explorer","status":404,"stack":"Error: Cannot GET /explorer\n at raiseUrlNotFoundError (/home/cielo/.nvm/versions/node/v8.15.1/lib/node_modules/composer-rest-server/node_modules/loopback/server/middleware/url-not-found.js:21:17)\n at Layer.handle [as handle_request] ` when I try to visit:http://localhost:3000/explorer
[ ](https://chat.hyperledger.org/channel/composer?msg=sxakxuLTjLBxGXTA8) also for production setup without composer which is recommended Mutual TLS or server TLS
@alokkv see https://hyperledger-fabric.readthedocs.io/en/release-1.4/chaincode4ade.html and https://hyperledger-fabric.readthedocs.io/en/release-1.4/write_first_app.html and https://hyperledger-fabric.readthedocs.io/en/release-1.4/developapps/developing_applications.html to start with. Plus also look at github.com/hyperledger/fabric-samples
[ ](https://chat.hyperledger.org/channel/composer?msg=FJiSqYi3h845aPgqr) @davidkel thank you very much
@alokkv For production setup it's your choice really. mutual tls is more secure but more difficult to manage operationally
[ ](https://chat.hyperledger.org/channel/composer?msg=XiSvJd8HMKeE5zZQP) @davidkel thank you for the suggestion
Hey guys, is it possible with composer to distributed connections?
newError.PNG
[ ](https://chat.hyperledger.org/channel/composer?msg=zBCCiL5YKBcwmKDZP) @benjamin.verhaegen Hi Benjamin, yes it is, it looks good it works after the 2nd chance but now the error is presenting once i try to do the start command this one
I mean assume you created your network(assets,participants,permisson rules etc.). You tested the composer-rest-server on your localhost. It works well. Then how possible can you distribute this server? What I want is Machine A connects to the Business network, makes a transaction and Machine B can see the updated ledger in his computer. Is this possible with composer?
[ ](https://chat.hyperledger.org/channel/composer?msg=GBossjQw4ysHX3X99) @itsNebula this guy in this page is explaning ur problem https://discourse.skcript.com/t/setting-up-a-blockchain-business-network-with-hyperledger-fabric-composer-running-in-multiple-physical-machine/602/77
[ ](https://chat.hyperledger.org/channel/composer?msg=tPBRGwYLFiDFhwJpx) @JoseLedezma Is the comment should i look or the article?
the complete article
I looked at. But what I want is the dynamic number of users. So my number of user will increase it is not fixed
[ ](https://chat.hyperledger.org/channel/composer?msg=PBgxae9EW4bFqPDJY) @benjamin.verhaegen I still have the problem
Hi. I need a high level understanding of the ACL. I understand that one peer within the channel only needs to instantiate the chain code, and the other peers just need to install. But what if differing organizations do not agree on the ACL written? I would assume that I would want my Org to have as much control as possible in the channel. How can I see what’s happening under neath the hood when when the chaincode is being instantiated, like how do I know which peer approves it?
I guess the question also follows on practices for chaincode or how to develop a chaincode in general for multi-.org channel.
Thanks!
Hi there, where is the path that composer install a chaincode on peer?
Has joined the channel.
Hi , I was following the hyperledger composer tutorial and got the following error while starting the business network:
Hi , I was following the hyperledger composer tutorial and got the following error while starting the business network:✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 86e852650c5c88fa65fc6e541c6e5b8b229bf6197e8e61d6e52a7f2f6bc1432c: error starting container: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated core-js@2.3.0: core-js@<2.6.5 is no longer maintained. Please, upgrade to core-js@3 or at least to actual version of core-js@2.
npm ERR! Unexpected end of JSON input while parsing near '...0","babelify":"^7.3.0'
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2019-04-11T06_01_58_269Z-debug.log
Hi , I was following the hyperledger composer tutorial and got the following error while starting the business network:✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 86e852650c5c88fa65fc6e541c6e5b8b229bf6197e8e61d6e52a7f2f6bc1432c: error starting container: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated core-js@2.3.0: core-js@<2.6.5 is no longer maintained. Please, upgrade to core-js@3 or at least to actual version of core-js@2.
npm ERR! Unexpected end of JSON input while parsing near '...0","babelify":"^7.3.0'
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2019-04-11T06_01_58_269Z-debug.log
[ ](https://chat.hyperledger.org/channel/composer?msg=WAw4zmqzCTYMAMRya) @VaibhavVerma what is your node/docker version?
@benjamin.verhaegen node 8.11.4, Docker version 18.09.4, build d14af54, npm -5.6.0
[ ](https://chat.hyperledger.org/channel/composer?msg=PXT5G9LzDJhDs7e49) @VaibhavVerma and your composer version?
@benjamin.verhaegen composer 0.20
[ ](https://chat.hyperledger.org/channel/composer?msg=EC4cchPKd6fRdQgbq) @VaibhavVerma try updating your npm version to 6.4.1 node to 8.12 and composer to 0.20.6
Hello All, Have anyone tried adding new Peer at run time. I did and modified the connection profile as well. I created new cards using updated connection profile but when I run commands using these new cards I get the identity not registered error. I have explained error here in stackoverflow; https://stackoverflow.com/questions/55613984/update-connection-profile-the-current-identity-has-not-been-registered
[ ](https://chat.hyperledger.org/channel/composer?msg=8aNT9rcQNLuAw8Q8S) @benjamin.verhaegen But in the prerequisties it is asked to use npm 5.x and composer 0.20
[ ](https://chat.hyperledger.org/channel/composer?msg=t4J9NSKrR4tsir9ZH) @VaibhavVerma make sure you're checking the latest documentation
[ ](https://chat.hyperledger.org/channel/composer?msg=6S8pXAABR6vYmoREm) ok yes I see, must be something wrong with your versions as you're using deprecated files. Did you change something in the files?
[ ](https://chat.hyperledger.org/channel/composer?msg=Tro7Wk9sKeo3j85Xy) @benjamin.verhaegen No i didn't change anything. They all were installed in the deprecated version only with warning of being deprecated
[ ](https://chat.hyperledger.org/channel/composer?msg=kiprku7ZLhQF3NxAp) @VaibhavVerma you must have done something wrong in your installation, try again on a clean machine
[ ](https://chat.hyperledger.org/channel/composer?msg=wkqoYwwz2gZQDFqie) @benjamin.verhaegen I upgraded npm to 6.4.1 and node to 8.12 and now it is working .Thanks
could somebody help me with usage of composer-concerto-tools?
please look at this www.cc-chainops.com
to try fabric
im trying to start an application on IBM cloud with NODE_CONFIG
```
{
"composer": {
"wallet": {
"type": "composer-wallet-cloudant",
"options": {
"database": "composer-wallets",
}
}
}
}
```
but im getting the error
```
ERR Error: Cannot initialize connector undefined: Unable to load requested module composer-wallet-cloudant
```
is composer-wallet-cloudant deprecated?
im trying to start an application on IBM cloud with NODE_CONFIG
```
{
"composer": {
"wallet": {
"type": "composer-wallet-cloudant",
"options": {
"database": "composer-wallets",
}
}
}
}
```
but im getting the error
```
ERR Error: Cannot initialize connector undefined: Unable to load requested module composer-wallet-cloudant
```
is composer-wallet-cloudant deprecated?
Has joined the channel.
hello, any idea how participant A(lets say a certifier) can add some properties to participant B, which will then be added to an asset when participant B creates it?
Hi guys, I'm using the composer 0.20.8 and once I import the card (using node sdk) an exception is raised "No connection type provided, probably because the connection profile has
no 'x-type' property defined." I followed this topic https://stackoverflow.com/questions/50306229/no-connection-type-provided-no-x-type-property-defined/50435969 that suggests to update the version of composer in the package.json but I'm still stuck on it. Any tip? Thanks to everybody
[ ](https://chat.hyperledger.org/channel/composer?msg=8x9iA7hNtq8mdM46j) I reinstall also all the images of fabric tearingDown the docker containers and delete all cards as suggested in this topic https://github.com/hyperledger/composer/issues/4007
[ ](https://chat.hyperledger.org/channel/composer?msg=sbrBScv46pchg5NAF) guys I solved updating the connection profile (son/yaml) inserting x-type instead of type as below static CONNECTION_PROFILE_O = {
"name":"hlfv1",
"x-type":"hlfv1",
"orderers":[{
"url":"grpc://localhost:7050"
}],
"ca":{
"url":"http://localhost:7054",
"name":"ca.org1.example.com"
},
"peers":
[{
"requestURL":"grpc://localhost:7051",
"eventURL":"grpc://localhost:7053"
}],
"channel":"composerchannel",
"mspID":"Org1MSP",
"timeout":300
};
[ ](https://chat.hyperledger.org/channel/composer?msg=sbrBScv46pchg5NAF) guys I solved updating the connection profile (son/yaml) inserting x-type instead of type as below static CONNECTION_PROFILE_O = {
"name":"hlfv1",
"x-type":"hlfv1",
"orderers":[{
"url":"grpc://localhost:7050"
}],
"ca":{
"url":"http://localhost:7054",
"name":"ca.org1.example.com"
},
"peers":
[{
"requestURL":"grpc://localhost:7051",
"eventURL":"grpc://localhost:7053"
}],
"channel":"composerchannel",
"mspID":"Org1MSP",
"timeout":300
};
[ ](https://chat.hyperledger.org/channel/composer?msg=sbrBScv46pchg5NAF) guys I solved updating the connection profile (son/yaml) inserting x-type instead of type as below
static CONNECTION_PROFILE_O = {
"name":"hlfv1",
"x-type":"hlfv1",
"orderers":[{
"url":"grpc://localhost:7050"
}],
"ca":{
"url":"http://localhost:7054",
"name":"ca.org1.example.com"
},
"peers":
[{
"requestURL":"grpc://localhost:7051",
"eventURL":"grpc://localhost:7053"
}],
"channel":"composerchannel",
"mspID":"Org1MSP",
"timeout":300
};
[ ](https://chat.hyperledger.org/channel/composer?msg=sbrBScv46pchg5NAF) guys I solved updating the connection profile (Json/yaml) inserting x-type instead of type as below
static CONNECTION_PROFILE_O = {
"name":"hlfv1",
"x-type":"hlfv1",
"orderers":[{
"url":"grpc://localhost:7050"
}],
"ca":{
"url":"http://localhost:7054",
"name":"ca.org1.example.com"
},
"peers":
[{
"requestURL":"grpc://localhost:7051",
"eventURL":"grpc://localhost:7053"
}],
"channel":"composerchannel",
"mspID":"Org1MSP",
"timeout":300
};
@dselman Hello, I have a question, how to query the string field in Composer's query. There is no like in the keyword of the comparative grammar of where condition of query, and there is an operator%= that looks a little like, but the grammar check can't pass.
Has joined the channel.
how
can we build composer using java sdk ?
or have to switch to Swagger
Has left the channel.
Helo. I'm using Fabric 1.2 with Composer v0.20.8. I'm trying to add a participant. I get The current identity, with the name 'xxx' and the identifier '(uniqueid)', has not been registered. I have the identity registered in my CA, and I can see the enrollment returning a valid cert.
Is the 'participant add' feature supposed to register, or is there another step that I need to register?
@WebKruncher you need to bind an identity to the participant you have created. See `composer identity bind`
@davidkel thanks, I'll try that
Guys one question, lets imagine that we have a REST API created here in hyperledger so what kind of Test can we do for this API?
@davidkel I tried identity bind, but I get the same error. Do I need to bind before I add a participant? Which method calls register()?
Has joined the channel.
Hi. I'm trying to install my network onto the Hyperledger Fabric peers. I'm getting an error that says no valid responses from any peers. Please help
Does anyone offering internship based on private blockchains 😊 ?
Helo - I'm using Fabric 1.2 with Composer 0.20.8. I start my BNA using composer network start, create and import a card, but the card I create is not attached to the network, and I cannot ping. Is there something else that I need to do before I can ping?
Hi. If I am updating the model structure for the Network such as adding a new property or changing a property type, how would that affect the current data that’s been persisted?
If I changed the type of a property of an asset or added a new property to an asset*
hyperledger network with 3 orgs having 2 peers each and one ordering node is done . what is the need of hyperledger composer now ? what will i achieve in the end that hypeledger network doenst achieve alone ? what shteps should i do to work with composer
Hi, how do I listen for events emitted in hyperledger composer if I am not writing a node.js client application? For instance, Django ?
Which one of the composer cli commands should register identities?
Script.png
Model.png
hey guys, anyone can help me finish the last function? I want to assign the EngineProperties to the Engine asset. Been stuck here for a while... aprecciate it :)
Has joined the channel.
hi....i downloaded latest version fabric 1.4.1 and i can see the hyperledger/images tagged to latest version.....but i dont find startFabric.sh / stopFabric.sh
[ ](https://chat.hyperledger.org/channel/composer?msg=PJdr6A8uuEGF5nRAt) @Robin86543 don't use that uuid function!! never create random numbers inside your chaincode
Has joined the channel.
Has joined the channel.
hello
when i deploy my network from local to composer thing appear on console(error or console.log passed in my code) and it idon't throw any error .
but on Connection: Web Browser it work
when i deploy my network from local to composer (no thing) appear on console(error or console.log passed in my code) and it idon't throw any error .
but on Connection: Web Browser it work
Has joined the channel.
Has joined the channel.
Hello Coders😊,
Hope so you all will be fine. Actually I'm working on my final year project of BS that is related to degree verification system using the great private block chain technology - Hyperledger Fabric. As for now I'm working on SRS document so it would be a great favor if you send me your document or some sort of related SRs document so i could get some help.
Thank you so much in advance. 😊😊😊
Email: AnasBaigMughal@gmail.com
Hello! Do anyone could tell me how could I start a REST API inside a container?
[ ](https://chat.hyperledger.org/channel/composer?msg=X6TEb8XoTHEaZdbzf) @lucianosilva44 https://hyperledger.github.io/composer/v0.19/business-network/business-network-index
[ ](https://chat.hyperledger.org/channel/composer?msg=4747a9aa-f074-4322-910e-e4ce9aa09650) @AnasBaigMughal I'm working on my final year project, too. And I'm trying to build a simple trading platform. Maybe you can find some documents at Github or google scholar.
:sob: :sob: SOS!!!!!!!!!!!!!!!!!!!!!!!!!!!!
I have a problem, I can't import other namespaces in any namespace now. What's happening here?
IllegalModelException: Namespace is not defined for type org.acme.airline.aircraft.AircraftComposer(IllegalModelException)
But I did the defination!!! He just can't recognize it!!!!!!!
Screenshot.png
the error message is :IllegalModelException: Namespace is not defined for type org.acme.airline.aircraft.AircraftComposer(IllegalModelException)
And here the other question. My peers ignored me with many reasons. Like:Error: Error trying to upgrade business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: instantiation policy violation: signature set did not satisfy policy
Command failed
Like:Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 05d3848620d519848da6b6b446157880cade0dbed1763a888c79e07cd11b31b9: failed to register airlinev9:0.0.1 as launching: chaincode airlinev9:0.0.1 has already been launched
Command failed
:sob::sob:And I don't know why and how to do…… I am very anxious now and I am worried that I can't finish my job. Worried that I can't graduate successfully.
SOS
My email is cielozou0@gmail.com
Error
Error
Error
is the ip correct?
[ ](https://chat.hyperledger.org/channel/composer?msg=a6L8YNqbp5aFtghJC) @duy3991 I met the same problem and I don't know how to do now……
[ ](https://chat.hyperledger.org/channel/composer?msg=a6L8YNqbp5aFtghJC) @duy3991 I met the same mistake too. :sob::sob:
cielo@cielo-ThinkPad-E550:~/cprogrames/airlinev9/dist$ composer network start -n airlinev9 -c PeerAdmin@hlfv1 -V 0.0.2 -A admin -S adminpw
Starting business network airlinev9 at version 0.0.2
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
cielo@cielo-ThinkPad-E550:~/cprogrames/airlinev9/dist$ composer network start -n airlinev9 -c PeerAdmin@hlfv1 -V 0.0.2 -A admin -S adminpw
Starting business network airlinev9 at version 0.0.2
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 38ba5257f8349778f33cc8e3948659172db6458af461b118f6049fe83643ec3d: failed to register airlinev9:0.0.2 as launching: chaincode airlinev9:0.0.2 has already been launched
Command failed
Screenshot from 2019-04-17 15-32-35.png
A weird container is up after I run composer network start
@CieloZou that happens to me too when If I want to upgrade bna.
@CieloZou that happens to me too when I want to upgrade bna.
[ ](https://chat.hyperledger.org/channel/composer?msg=8HZJx5wuw8T7nPibB) I'm reloading the images... It happens to me when I run composer network start and upgrade...
[ ](https://chat.hyperledger.org/channel/composer?msg=eWhqSbBSc2rjPQygS) @DarwinHarianto I'm reloading the images... It happens to me when I run composer network start and upgrade...
@CieloZou never happen when restarting from scratch, only happen when I try to upgrade. I don't know how to resolve it. I always restart the network haha
Has joined the channel.
Hi, I'd like to know does hyperledger still support composer?
@Lana2019 please see https://lists.hyperledger.org/g/composer/message/125. It's highly recommended you now invest time in the new programming models that have been introduced into fabric 1.4
@Lana2019 please see https://lists.hyperledger.org/g/composer/message/125. It's highly recommended you now invest time in the new programming models that have been introduced into fabric 1.4. Composer is not recommended for production purposes
Has joined the channel.
@davidkel so a Composer v0.20 BNA can run with Fabric v1.4??
Hi, i need help about composer-client there is my post right here: https://stackoverflow.com/questions/55730253/cannot-get-return-of-composer-client-function
Hi, i need help with composer-client there is my post right here: https://stackoverflow.com/questions/55730253/cannot-get-return-of-composer-client-function
@WebKruncher that's correct
Has joined the channel.
hello, I might have a noob question: but, Im doing my fisrt steps with Hyperledger. I have deployed Fabric (one node example) and Composer (also examples with single node) to try to deploy simple contracts etc. which is great for the fisrt steps. My question is, for real deployments, if we want to deploy a real blockchain network, Can we still use composer ? or should we follow another path ?
Hi guys one question, is windows working properly with docker and others prerequisites, because im using Windows Pro, and the command start gives me a lot of error like creating peer.... error something like this algo once i tried this command (docker ps -a) i see whole containers without ports is that the problem? and how can i solve this
Thanks @davidkel
@davidkel can you point me to some more info about upgrading from Composer v0.20 on Fabric 1.2 to Fabric 1.4?
Hi can anyone provide some references on how to set up multiple nodes ?
@WebKruncher There is no upgrading of composer for different fabric versions. All you need to do is deploy your business network onto a fabric 1.4 network. You need to set up your own fabric network (github.com/hyperledger/fabric-samples and use basic-network as it is a simple 1.4 network and it also contains a connection profile called connection.json you can use to build your required cards) You should follow the single org and multi-org tutorials to understand how to build your relevant initial cards. Be aware that composer doesn't exploit any of the new capabilities in 1.2, 1.3 or 1.4 of hyperledger fabric.
@WebKruncher There is no upgrading of composer for different fabric versions. All you need to do is deploy your business network onto a fabric 1.4 network. You need to set up your own fabric network (github.com/hyperledger/fabric-samples and use basic-network as it is a simple 1.4 network and it also contains a connection profile called connection.json you can use to build your required cards) You should follow the single org and multi-org tutorials on the composer website to understand how to build your relevant initial cards. Be aware that composer doesn't exploit any of the new capabilities in 1.2, 1.3 or 1.4 of hyperledger fabric.
Has joined the channel.
Hello, it is possible to execute a different program on each nodes and if yes how we proceed ? Thank you
Has joined the channel.
How can I connect my business network developed in hyperledger composer with hyperledger explorer to check the blocks and transaction. Please guide me through the step to follow
Has joined the channel.
The ledger data is gone ( by the GET request through REST server) when I upgraded BNA with a newer version. Only one field name in the participant has been changed. Does the ledger data get deleted when upgrading the BNA? Please explain what happened when the network is upgraded?
@davidkel Ok, thanks. I've been trying to use Composer cli the way I did with the first version (Fabric 1.1), but I can't get the identity to register in the chaincode. Is the CLI registration fully functional in Composer 0.20?
@WebKruncher Composer 0.20 is identical in capability to 0.19
@WebKruncher Composer 0.20 is identical in capability to 0.19. It differs only in the fact that it works with fabric 1.2,1.3,1.4 and changes to event handling client side
@davidkel I ididn't use 0.19, I used 0.16 with Fabric 1.1. I've made the required changes, but something isn't quite right because the registration() method is never invoked. In 0.16, I could do 'add participant', followed by 'identity issue', then 'card import'. Then I could ping the network with the new card. Somewhere in there the ID was registered in the CA and in the chaincode. Using 0.20, it doesn't seem to work the same way.
@WebKruncher Those concepts haven't really changed. Between 0.16 and 0.19 the connection profile changed completely. identity issue registers the user at the CA
@davidkel at what point does the identity get registered in the chaincode?
@WebKruncher identity issue registers a temporary placeholder as the user has not been enrolled. At ping time the user is enrolled and the identity registry will be updated with the actual cert
@WebKruncher Just to let you know that it is highly recommended now to invest time in pure fabric and it's new programming models that came in 1.4 rather than continue with Composer
@davidkel thanks - that makes sense. I'll run through the steps again and watch the registration.
@davidkel Ya, I know - but we're locked in to this release for right now.
@WebKruncher You may find this useful
https://davidkel.github.io/docs/Porting/TOC.html
@davidkel that will be very useful - thanks
@davidkel the problem I'm seeing is when I do add participant, I get the error "Error: Error trying to ping. Error: transaction returned with failure: Error: The current identity, with the name 'xxx' and the identifier '(uniqueid)', has not been registered". I attempt an 'identity issue' anyway, but I get the same error.
@WebKruncher In order to interact with a business network you need to use an identity that is registered and associated with a participant. The card you are using to run the commands is using an identity that is unknown to the business network
There are two participants, student and university. University creates students. In student record details there is a field (university id). Lets suppose University A is creating the student, so in student details I want it to automatically pick University A in student field university id. Such that the students created by University A have institute id of University A in their details.
Has joined the channel.
hey guys i have an issue completing the "Deploying a Hyperledger Composer blockchain business network to Hyperledger Fabric (multiple organizations)" tutorial. Everything is fine until "Step Seventeen: Starting the business network". When running the command to create the business network i get an error: "Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT".
Anyone knows what might be the problem here?
I've figured it out myself, tutorial is getting quiet sloppy in the end with miselading commands
[ ](https://chat.hyperledger.org/channel/composer?msg=db124cc2-fb6f-4ff5-8343-1bbd13bd72c6) @AnasBaigMughal One work around I have for this is to have a transaction that enrolls the student. Inside that transaction, I created a relationship between the university and the student.
[ ](https://chat.hyperledger.org/channel/composer?msg=A7kNJXTARjE6G8HpX) @patrick.dacoliat But how to add a participant (student) via transaction?
Has joined the channel.
I have to submit my final year project report by evening, kindly suggest me some testcases for degree verification system. Quickly thanks
Issue identity and create Network Card for: D20
✖ Issuing identity. This may take a few seconds...
Error: Calling register endpoint failed, CONNECTION Timeout
Command failed
Any solution? I can issue identity through composer playground. but not though cli and sdk.
2019/04/19 10:13:33 [INFO] 172.30.242.250:44594 POST /api/v1/register 201 0 "OK"
Please help me
How can i associate public private key with the identity in composer and check that the transactions are getting signed ? and how to get .pem certificate for the identity while binding it to existing participant
[ ](https://chat.hyperledger.org/channel/composer?msg=459097d1-69af-4df8-8b5a-13186d9576e4) @AnasBaigMughal you don't have to create a student in the transaction, you can just ask for the student ID and university ID in the transaction and create a new relationship from there.
Has joined the channel.
Has joined the channel.
According to the dock https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
I have run the fabric network and create two peerAdmin cards.
and then I want to run the composer-rest-server generate the restful API use the docker command.
docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ${DEF_LOCAL_DATA_HOME}:/home/composer/.composer \
--name ${DEF_DOCKER_CONTAINER_RESTOAUTH} \
--network composer_default \
-p 3000:3000 \
${DEF_DOCKER_IMAGE_RESTOAUTH}
it shows error as below logs.
-------------
2019-04-19T10:22:33: PM2 log: Launching in no daemon mode
2019-04-19T10:22:33: PM2 log: App [composer-rest-server:0] starting in -fork mode-
2019-04-19T10:22:33: PM2 log: App [composer-rest-server:0] online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
-----
Can somebody help me thanks.
According to the doc https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
I have run the fabric network and create two peerAdmin cards.
and then I want to run the composer-rest-server generate the restful API use the docker command.
docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ${DEF_LOCAL_DATA_HOME}:/home/composer/.composer \
--name ${DEF_DOCKER_CONTAINER_RESTOAUTH} \
--network composer_default \
-p 3000:3000 \
${DEF_DOCKER_IMAGE_RESTOAUTH}
it shows error as below logs.
-------------
2019-04-19T10:22:33: PM2 log: Launching in no daemon mode
2019-04-19T10:22:33: PM2 log: App [composer-rest-server:0] starting in -fork mode-
2019-04-19T10:22:33: PM2 log: App [composer-rest-server:0] online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
-----
Can somebody help me thanks.
According to the doc https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
I have run the fabric network and create two peerAdmin cards.
and then I want to run the composer-rest-server generate the restful API use the docker command.
docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ${DEF_LOCAL_DATA_HOME}:/home/composer/.composer \
--name ${DEF_DOCKER_CONTAINER_RESTOAUTH} \
--network composer_default \
-p 3000:3000 \
${DEF_DOCKER_IMAGE_RESTOAUTH}
it shows error as below logs.
-------------
2019-04-19T10:22:33: PM2 log: Launching in no daemon mode
2019-04-19T10:22:33: PM2 log: App [composer-rest-server:0] starting in -fork mode-
2019-04-19T10:22:33: PM2 log: App [composer-rest-server:0] online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
-----
Can somebody help me thanks.
According to the doc https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org
I have run the fabric network and create two peerAdmin cards.
and then I want to run the composer-rest-server generate the restful API use the docker command.
docker run \
-d \
-e COMPOSER_CARD=${COMPOSER_CARD} \
-e COMPOSER_NAMESPACES=${COMPOSER_NAMESPACES} \
-e COMPOSER_AUTHENTICATION=${COMPOSER_AUTHENTICATION} \
-e COMPOSER_MULTIUSER=${COMPOSER_MULTIUSER} \
-e COMPOSER_PROVIDERS="${COMPOSER_PROVIDERS}" \
-e COMPOSER_DATASOURCES="${COMPOSER_DATASOURCES}" \
-v ${DEF_LOCAL_DATA_HOME}:/home/composer/.composer \
--name ${DEF_DOCKER_CONTAINER_RESTOAUTH} \
--network composer_default \
-p 3000:3000 \
${DEF_DOCKER_IMAGE_RESTOAUTH}
it shows error as below logs.
2019-04-19T10:22:33: PM2 log: Launching in no daemon mode
2019-04-19T10:22:33: PM2 log: App [composer-rest-server:0] starting in -fork mode-
2019-04-19T10:22:33: PM2 log: App [composer-rest-server:0] online
WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
Discovering types from business network definition ...
Connection fails: Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
It will be retried for the next request.
Exception: Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
Error: Error trying to ping. Error: No peers available to query. last error was Error: Failed to connect before the deadline
-----
Can somebody help me thanks.
btw. If running commands [composer-rest-server -c $_adminCardName -p $_port -n never -a true -m true] directly is successful not use the docker container
SOS!I met the similar mistake! It will launch a ccenv peer with a random name. I can't understand it.
This is the ccenv peer.
When I try to run composer network start, it will launch a random peer(the first one in the picture). And there is no card created after it is launched.
these are the error messages.
cielo@cielo-ThinkPad-E550:~/cprogrames/cmusic/dist$ composer network start -n cmusic -c PeerAdmin@hlfv1 -V twork start -n cmusic -c PeerAdmin@hlfv1 -V start -n cmusic -cadmin
Starting business network cmusic at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
cielo@cielo-ThinkPad-E550:~/cprogrames/cmusic/dist$ composer network start -n cmusic -c PeerAdmin@hlfv1 -V twork start -n cmusic -c PeerAdmin@hlfv1 -V start -n cmusic -cadmin
Starting business network cmusic at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction f3d0e4a4cfa31b72766e4to execute transaction f3d0e4a4cfa31b72766e4ecute transaction f48e83o register cmusic:0.0.1 haincode cmusic3d0e4a4cfa31b72766e4a4cfa31b72766e475ec4b1ab48e83o register cmuhainc
Command failed
my composer is v0.20.8,my docker is Docker version 18.09.4, build d14af54
these are my peers:
f818aed96671 hyperledger/fabric-peer:1.2.1 "peer node start" 2 days ago Up 2 days 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
57989248aadd hyperledger/fabric-ca:1.2.1 "sh -c 'fabric-ca-se…" 2 days ago Up 2 days 0.0.0.0:7054->7054/tcp ca.org1.example.com
447556b93e71 hyperledger/fabric-couchdb:0.4.10 "tini -- /docker-ent…" 2 days ago Up 2 days 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
45b9da98c156 hyperledger/fabric-orderer:1.2.1 "orderer" 2 days ago Up 2 days 0.0.0.0:7050->7050/tcp orderer.example.com
SOS!I met the similar mistake! It will launch a ccenv peer with a random name. I can't understand it.
This is the ccenv peer.
When I try to run composer network start, it will launch a random peer(the first one in the picture). And there is no card created after it is launched.
these are the error messages.
cielo@cielo-ThinkPad-E550:~/cprogrames/cmusic/dist$ composer network start -n cmusic -c PeerAdmin@hlfv1 -V twork start -n cmusic -c PeerAdmin@hlfv1 -V start -n cmusic -cadmin
Starting business network cmusic at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
cielo@cielo-ThinkPad-E550:~/cprogrames/cmusic/dist$ composer network start -n cmusic -c PeerAdmin@hlfv1 -V twork start -n cmusic -c PeerAdmin@hlfv1 -V start -n cmusic -cadmin
Starting business network cmusic at version 0.0.1
Processing these Network Admins:
userName: admin
cielo@cielo-ThinkPad-E550:~/cprogrames/cmusic$ composer network start -n cmusic -c PeerAdmin@hlfv1 -V 0.0.1 -A admin -S adminpw
Starting business network cmusic at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 6863a3949f3657c3ddac2602f755028f80cd817397bf2267024f3611c9b10598: failed to register cmusic:0.0.1 as launching: chaincode cmusic:0.0.1 has already been launched
Command failed
my composer is v0.20.8,my docker is Docker version 18.09.4, build d14af54
these are my peers:
f818aed96671 hyperledger/fabric-peer:1.2.1 "peer node start" 2 days ago Up 2 days 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
57989248aadd hyperledger/fabric-ca:1.2.1 "sh -c 'fabric-ca-se…" 2 days ago Up 2 days 0.0.0.0:7054->7054/tcp ca.org1.example.com
447556b93e71 hyperledger/fabric-couchdb:0.4.10 "tini -- /docker-ent…" 2 days ago Up 2 days 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
45b9da98c156 hyperledger/fabric-orderer:1.2.1 "orderer" 2 days ago Up 2 days 0.0.0.0:7050->7050/tcp orderer.example.com
SOS!I met the similar mistake! It will launch a ccenv peer with a random name. I can't understand it.
This is the ccenv peer.
When I try to run composer network start, it will launch a random peer(the first one in the picture). And there is no card created after it is launched.
these are the error messages.
cielo@cielo-ThinkPad-E550:~/cprogrames/cmusic/dist$ composer network start -n cmusic -c PeerAdmin@hlfv1 -V twork start -n cmusic -c PeerAdmin@hlfv1 -V start -n cmusic -cadmin
Starting business network cmusic at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
cielo@cielo-ThinkPad-E550:~/cprogrames/cmusic$ composer network start -n cmusic -c PeerAdmin@hlfv1 -V 0.0.1 -A admin -S adminpw
Starting business network cmusic at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 6863a3949f3657c3ddac2602f755028f80cd817397bf2267024f3611c9b10598: failed to register cmusic:0.0.1 as launching: chaincode cmusic:0.0.1 has already been launched
Command failed
my composer is v0.20.8,my docker is Docker version 18.09.4, build d14af54
these are my peers:
f818aed96671 hyperledger/fabric-peer:1.2.1 "peer node start" 2 days ago Up 2 days 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
57989248aadd hyperledger/fabric-ca:1.2.1 "sh -c 'fabric-ca-se…" 2 days ago Up 2 days 0.0.0.0:7054->7054/tcp ca.org1.example.com
447556b93e71 hyperledger/fabric-couchdb:0.4.10 "tini -- /docker-ent…" 2 days ago Up 2 days 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
45b9da98c156 hyperledger/fabric-orderer:1.2.1 "orderer" 2 days ago Up 2 days 0.0.0.0:7050->7050/tcp orderer.example.com
SOS!I met the similar mistake! It will launch a ccenv peer with a random name. I can't understand it.
This is the ccenv peer.
When I try to run composer network start, it will launch a random peer(the first one in the picture). And there is no card created after it is launched.
these are the error messages.
cielo@cielo-ThinkPad-E550:~/cprogrames/cmusic/dist$composer network start -n cmusic -c PeerAdmin@hlfv1 -V 0.0.1 -A admin -S adminpw
Starting business network cmusic at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: REQUEST_TIMEOUT
Command failed
cielo@cielo-ThinkPad-E550:~/cprogrames/cmusic$ composer network start -n cmusic -c PeerAdmin@hlfv1 -V 0.0.1 -A admin -S adminpw
Starting business network cmusic at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction 6863a3949f3657c3ddac2602f755028f80cd817397bf2267024f3611c9b10598: failed to register cmusic:0.0.1 as launching: chaincode cmusic:0.0.1 has already been launched
Command failed
my composer is v0.20.8,my docker is Docker version 18.09.4, build d14af54
these are my peers:
f818aed96671 hyperledger/fabric-peer:1.2.1 "peer node start" 2 days ago Up 2 days 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
57989248aadd hyperledger/fabric-ca:1.2.1 "sh -c 'fabric-ca-se…" 2 days ago Up 2 days 0.0.0.0:7054->7054/tcp ca.org1.example.com
447556b93e71 hyperledger/fabric-couchdb:0.4.10 "tini -- /docker-ent…" 2 days ago Up 2 days 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp couchdb
45b9da98c156 hyperledger/fabric-orderer:1.2.1 "orderer" 2 days ago Up 2 days 0.0.0.0:7050->7050/tcp orderer.example.com
Screenshot from 2019-04-20 11-11-32.png
Shouldn't I start a container whose name start with dev?
the command I use is:composer network start -n cmusic -c PeerAdmin@hlfv1 -V 0.0.1 -A admin -S adminpw
channel
FYI, I've started a migration utility for BNA to the 1.4 programming model. Still very much WIP, but contributions welcome: https://github.com/accordproject/maestro
```
node cli.js migrate --bnaPath ~/Downloads/basic-sample.bna --outputDirectory ~/Desktop/test-output/
```
```
node cli.js migrate --bnaPath ~/Downloads/basic-sample.bna --outputDirectory ~/Desktop/test-output/
Processing network my-basic-sample@0.2.6-deploy.0
Copying lib/ComposerContract.js
Copying models/org.hyperledger.composer.system.cto
Copying test/my-contract.js
Copying .editorconfig
Copying .eslintignore
Copying .eslintrc.js
Copying .gitignore
Copying .npmignore
Processing model org.example.basic
Copying model file models/sample.cto
Processing script lib/sample.js
Done.
```
```
pwd
/Users/dselman/Desktop/test-output
Dan-MacBook-Pro:test-output dselman$ npm test
> my-basic-sample@0.2.6-deploy.0 pretest /Users/dselman/Desktop/test-output
> npm run lint
> my-basic-sample@0.2.6-deploy.0 lint /Users/dselman/Desktop/test-output
> eslint .
> my-basic-sample@0.2.6-deploy.0 test /Users/dselman/Desktop/test-output
> nyc mocha --recursive
(node:15069) DeprecationWarning: grpc.load: Use the @grpc/proto-loader module with grpc.loadPackageDefinition instead
MyContract
#instantiate
instantiate
Loading sample.cto
✓ should work (62ms)
#sampleTransaction
1) should work
1 passing (76ms)
1 failing
1) MyContract
#sampleTransaction
should work:
TypeError: Cannot read property 'value' of undefined
at MyContract.sampleTransaction (lib/my-contract.js:21:48)
at Context.it (test/my-contract.js:43:28)
ERROR: Coverage for lines (75%) does not meet global threshold (100%)
ERROR: Coverage for functions (68.75%) does not meet global threshold (100%)
ERROR: Coverage for statements (76.92%) does not meet global threshold (100%)
=============================== Coverage summary ===============================
Statements : 76.92% ( 40/52 )
Branches : 100% ( 4/4 )
Functions : 68.75% ( 11/16 )
Lines : 75% ( 36/48 )
================================================================================
```
```
/*
* SPDX-License-Identifier: Apache-2.0
*/
'use strict';
const ComposerContract = require('./ComposerContract');
class MyContract extends ComposerContract {
async instantiate(ctx) {
super.instantiate(ctx);
}
/*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* Sample transaction processor function.
* @param {org.example.basic.SampleTransaction} tx The sample transaction instance.
* @transaction
*/
async sampleTransaction(tx) { // eslint-disable-line no-unused-vars
// Save the old value of the asset.
const oldValue = tx.asset.value;
// Update the asset with the new value.
tx.asset.value = tx.newValue;
// Get the asset registry for the asset.
const assetRegistry = await this.getAssetRegistry('org.example.basic.SampleAsset');
// Update the asset in the asset registry.
await assetRegistry.update(tx.asset);
// Emit an event for the modified asset.
let event = this.getFactory().newEvent('org.example.basic', 'SampleEvent');
event.asset = tx.asset;
event.oldValue = oldValue;
event.newValue = tx.newValue;
this.emit(event);
}
}
module.exports = MyContract;
```
Still more work to do to make this actually run - but the structure is in place.
:thumbsup:
Has joined the channel.
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=ENMWBrCmw3BYbGRWP) @CieloZou Have you fixed this error? :((
Has joined the channel.
I am trying to run steps for multi organisation deployment of a Hyperledger Composer blockchain business network to Hyperledger Fabric.Here is link for that https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org
I am trying to run steps for multi organisation deployment of hyperledger composer blockchain business network to hyperledger fabric here is link of what I am trying https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org .I am facing ssl certificate error on running composer network start command.Anyone can me in resolving this issue please
Certificate_issue.png
Has joined the channel.
Hi Where I can see some samples of the hyperledger composer applications ?
updating composer, et al after being away for some months and was *successfully* running v0.20.6. Now getting install errors largely surrounding gyp, node-pre-gyp, etc. but have a hard fail on this-- ANY help GREATLY appreciated:```
../deps/grpc/include/grpc/compression.h:27:10: fatal error: 'grpc/slice.h' file not found
#include
hey Guys
Is it possible to interact with composer business network without composer-playground or composer-rest-server
I installed my business network on my multi-machine fabric network. I want all peers can serve without composer-rest-server(cause it makes centralized. I want decentralized.) How this can be possible=
composer-rest-server is not centralized
you can make multiple cards that is distributed over the network
Has joined the channel.
hi all,
I'm using composer playground 0.20.8 and do ./startFabric.sh. I have created a admin card with enroll secret is "password", after that I created a network business I got an error msg like "Error trying to enroll user. Error: Enrollment failed with errors [[{"code":20,"message":"Authorization failure"}]]". Can have someone to help me to solve this one? Many thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=jizr4cjfNk8j8TuNX) do I have to use "adminpw" for enroll secret? Why can't use another one?
Hi does any know why the connecting to Fabric network from compose-playground is slow (When I click on the Connect Now from the identity card)
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=kjEJSkF9RFo2KetYZ) @DarwinHarianto @DarwinHarianto although you have multiple card distributed over the network, there is nothing more than client-server relation between endpoints and api. If rest goes down, your network will down regardless of the multiple card. I guess this is the way of his definition of centralization.
[ ](https://chat.hyperledger.org/channel/composer?msg=gXBCPpSrCsejghEPm) @sbhv13 I think his decentralization means the data are distributed between peers.
the rest Api is the easiest way to communicate with its data I believe. I think there are other ways to communicate beside composer-rest-server
@ahy Try to use incognito
@SonDang no you don't, I believe you can use whatever you want.
I think it is defined at config(?)
[ ](https://chat.hyperledger.org/channel/composer?msg=BiSjrFatCqwbTskeJ) @SonDang Did you happen to do docker-compose down on your fabric network at some point? I had that issue and the fabric-ca statedb did not persist the keys I used to bootstrap
[ ](https://chat.hyperledger.org/channel/composer?msg=ANQGRymCab5yTnWBz) @DarwinHarianto In your case, assume peers are on the different machines and the machine which serves the rest api goes down. Can other peers submit the transaction and get the information from the ledger?
[ ](https://chat.hyperledger.org/channel/composer?msg=h8kqbw3fiaqSJpLcj) @ahy so, do you have any hint or suggestion? if I use admin/adminpw, it works fine. But another one which is different default, it can't be authorized
@sbhv13 it depends on your configuration.
If the endorsing node is not down, then yeah it can be submitted
I want that only participants created by an identity could be viewed by it not all. What will condition for that?
Has left the channel.
@SonDang sorry. Not quite sure.
Does anyone have any tips as to why my connection is really slow when I am trying to connect to my fabric network through composer-playground with an issued ID, and how can I improve the connection? I have everything running on one host machine and everything is local. I see on composer-playground logs a connected() and disconnected (ping time out) from Playground API : createServer()
Hi all, is there any tutorial out there that details the step on how to connect a web application to the composer-rest-server generated for my business network? Also is it possible to deploy the network create using composer into IBM Blockchain Platform V2?
- In which framework have you developed your frontend? Angular / React / Vue etc. ?
- I think IBM doesn't support/encourages composer for production deployments
@bilalahmed why is composer discouraged for production? Thanks!
@ahy https://lists.hyperledger.org/g/composer/message/125
[ ](https://chat.hyperledger.org/channel/composer?msg=RXE3vfdFFKhcNZ26W) @ahy Playground is not good to use locally in my opinion. Just work with playground online, or develop in vscode and deploy directlly to your machine.
Has joined the channel.
Hello everyone, I'm new here, facing issues in composer
Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: Failed to connect before the deadline
Command failed
Clipboard - April 26, 2019 12:41 PM
Clipboard - April 26, 2019 12:41 PM
[ ](https://chat.hyperledger.org/channel/composer?msg=i7WLfFYXjC5s6FC4K) @Amanullah68 is your fabric environment running?
Hi everyone, Im trying to search the chaincode that I deploy on Composer. I see the container of the chaincode with docker, but I cant see the code of the chaincode. Is posible to see the code before compile?
For example, composer-rest-server connects with the chaincode that I deploy and invokes functions of chaincode, but I cant do It from the CLI with `peer chaincode query`
@benjamin.verhaegen I think it's not giving some error and cmd closed in a second
[ ](https://chat.hyperledger.org/channel/composer?msg=S3hr2xkvwkmo3uDyy) @Amanullah68 1 try working on ubuntu
2 please supply the output of docker ps
@benjamin.verhaegen okay, I'm starting again from beginning...thanks alot
@benjamin.verhaegen can you share some link of installation with me if you have??
[ ](https://chat.hyperledger.org/channel/composer?msg=FBNo8sScaep6wLcGG) @Amanullah68 you can find the complete tutorial on the official docs
@benjamin.verhaegen okay, thanks
[ ](https://chat.hyperledger.org/channel/composer?msg=i7WLfFYXjC5s6FC4K) @Amanullah68 that problem is present for ur docker configuration, try to check if you have the right one
Guys im getting this Error: REQUEST_TIMEOUT in composer network start someone fimiliar with this?
I am developing an easy product tracing system. I have write the model file and the acl file. The test in the playground run successfully.(The transaction is successfully). But there are some errors when I test it in the composer-rest-server and the angular app.
angular:
`
Error: 500 - Internal Server Error
composer-rest-server:
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ValidationException: Instance org.sc.product.SampleEvent#6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2#0 missing required field newowner",
"stack": "Error: Error trying invoke business network with transaction id 6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ValidationException: Instance org.sc.product.SampleEvent#6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2#0 missing required field newowner\n at HLFConnection.invokeChainCode (/home/cielo/.nvm/versions/node/v8.15.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1117:30)\n at
I am developing an easy product tracing system. I have write the model file and the acl file. The test in the playground run successfully.(The transaction is successfully). But there are some errors when I test it in the composer-rest-server and the angular app.
angular:
`
Error: 500 - Internal Server Error
composer-rest-server:
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ValidationException: Instance org.sc.product.SampleEvent#6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2#0 missing required field newowner",
"stack": "Error: Error trying invoke business network with transaction id 6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ValidationException: Instance org.sc.product.SampleEvent#6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2#0 missing required field newowner\n at HLFConnection.invokeChainCode (/home/cielo/.nvm/versions/node/v8.15.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1117:30)\n at
I am developing an easy product tracing system. I have write the model file and the acl file. The test in the playground run successfully.(The transaction is successfully). But there are some errors when I test it in the composer-rest-server and the angular app.
angular:
`Error: 500 - Internal Server Error`
composer-rest-server:
`
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ValidationException: Instance org.sc.product.SampleEvent#6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2#0 missing required field newowner",
"stack": "Error: Error trying invoke business network with transaction id 6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ValidationException: Instance org.sc.product.SampleEvent#6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2#0 missing required field newowner\n at HLFConnection.invokeChainCode (/home/cielo/.nvm/versions/node/v8.15.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1117:30)\n at
I am developing an easy product tracing system. I have write the model file and the acl file. The test in the playground run successfully.(The transaction is successfully). But there are some errors when I test it in the composer-rest-server and the angular app.
angular:
`Error: 500 - Internal Server Error`
composer-rest-server:
`
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "Error trying invoke business network with transaction id 6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ValidationException: Instance org.sc.product.SampleEvent#6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2#0 missing required field newowner",
"stack": "Error: Error trying invoke business network with transaction id 6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2. Error: No valid responses from any peers.\nResponse from attempted peer comms was an error: Error: transaction returned with failure: ValidationException: Instance org.sc.product.SampleEvent#6516e9a2e5ec0b325c7e756124b07f92dbbce5d47c2c0503f70fe537bc1e33e2#0 missing required field newowner\n at HLFConnection.invokeChainCode (/home/cielo/.nvm/versions/node/v8.15.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:1117:30)\n at
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=PWbCf4dZ3veCMmRW4) @CieloZou missing required field newowner
Has joined the channel.
Hi there. I am following this tutorial:
https://hyperledger.github.io/composer/latest/installing/development-tools.html
but there seems to be no support for hyperledger fabric 1.4, as the tutorial wants me to set this environment variable:
`export FABRIC_VERSION=hlfv12`
what should I do?
Hi all, i just installed HyperLedger Fabric on 3 VM via docker SWARM:
- VM1: orderer
- VM2: CA - FabricCLI - Peer0Org1 - couchdb0 - Peer1Org1 - couchdb1
- VM3: CA - FabricCLI - Peer0Org2 - couchdb0 - Peer1Org2 - couchdb1
All peers are connected and talk with `mychannel` and EndToEnd test passed successfully
I wanna creat PeerAdmin card and install my bna on each peers but for the config files (/tmp/composer) i have some question:
I need to replace each `localhost` by IP of my VM or just `hostname`
I need to install the bna on each peers or i just to install on one and it will install on each ?
I need to copy the same config file (/tmp/composer) on each peers ?
Thank you for your help, hope i can help you in the future too :)
how can be a fabric business cards reused again if crypto-config dir certificate changed after runing command ./byfn.sh -m generate?
how can be fabric business cards reused again if crypto-config dir certificate changed after runing command ./byfn.sh -m generate?
Hi everyone, Im trying to search the chaincode that I deploy on Composer. I see the container of the chaincode with docker, but I cant see the code of the chaincode. Is posible to see the code before compile?
For example, composer-rest-server connects with the chaincode that I deploy and invokes functions of chaincode, but I cant do It from the CLI with `peer chaincode query
Hi everyone,
Can anyone guide me about how I can fetch/query transactions by matching particular timestamp? And how can it relate to script.js file?
I know this is basic question but I’m new to hyperledger composer.
Has joined the channel.
Hi can someone walk me through how I can tamper block files in fabric to see how the peers will react? I'm not sure which part of the block_00000 I should be modifying. I changed some string in the clear text that looks like the results of the transactions outputted in composer, but I do not see the peers printing errors that the previous block is a bad hash
thanks!
How to install composer on fabric network with docker swarm ?
Has joined the channel.
@helpme In the tutorial-network for hyperledger composer I keep getting following error
composer network start --networkName tutorial-network --networkVersion 0.0.2 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Starting business network tutorial-network at version 0.0.2
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to connect to any peer event hubs. It is required that at least 1 event hub has been connected to receive the commit event
Command failed
Has joined the channel.
my previous commands to the above commands had succeded
~chefcore $ composer archive create -t dir -n .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /Users/z001vd4/blockChainProjects/tutorial-network
Found:
Description: tutorial
Name: tutorial-network
Identifier: tutorial-network@0.0.2
Written Business Network Definition Archive file to
Output file: tutorial-network@0.0.2.bna
Command succeeded
~chefcore$ composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.2.bna
✔ Installing business network. This may take a minute...
Successfully installed business network tutorial-network, version 0.0.2
Command succeeded
Has joined the channel.
Hi there. We developed an app in the past using Composer, and now we would like to migrate to interact natively with the network. Is there a mechanism to generate the same REST API via Yeoman?
[ ](https://chat.hyperledger.org/channel/composer?msg=QEnjNcueRpBxqn5X4) @HyperFabrics I'm working on that. Would love help... https://github.com/accordproject/maestro
I've not yet reached the REST API, but scripts and models are migrated.
Next step is to modify this code to just use the ModelManager, rather than the BusinessNetworkDefinition: https://github.com/hyperledger/composer/blob/master/packages/loopback-connector-composer/lib/businessnetworkconnectionwrapper.js#L76
That should allow the Loopback Server to expose the REST API for the model.
Then modify this code, so that it is looking up the model instances in the registries created by the chaincode: https://github.com/hyperledger/composer/blob/master/packages/loopback-connector-composer/lib/businessnetworkconnector.js#L254
So, some work to do - but definitely feasible, and thanks to @sstone1 the code is well factored and should be quite easy to make independent of the BusinessNetwork etc.
Has joined the channel.
Hey guys, can you help me out?
I'm having errors making a POST request to Composers REST API
the POST to `/wallet/import`
Thanks in advance
[ ](https://chat.hyperledger.org/channel/composer?msg=D3jkDFGvm8dzbrPcx) @dselman Thanks for your response. Just to make sure I understand the roadmap. The plan is to allow the scaffolding of REST API and Angular App against the native network similar to what is being done with Composer.
Yes
[ ](https://chat.hyperledger.org/channel/composer?msg=JmThZJTAaEZLRFJH7) I am trying to submit a adminPeer.card but I'm getting a HTML 500 and saying that the zip is corrupted. What I know for a fact It isn't
hi all
would someone have a manual or tutorial to connect 3 org with composer?
Regards !!
[ ](https://chat.hyperledger.org/channel/composer?msg=SDo8ccPSkxF8YaSbi) @dselman Great. Thanks (is there an ETA for this package?)
Depends how much help I get... ;-)
[ ](https://chat.hyperledger.org/channel/composer?msg=8R32hFNfYFPaKq288) @dselman :muscle:
[ ](https://chat.hyperledger.org/channel/composer?msg=5p5tXzjbESHBS9Aav) @OscarRoman should be the same as when deploying to 2 orgs, there's a real good document for that on the official Hyperledger Composer site
Latest version of Playground is BROKEN. I refreshed my local storage and created a new project. Now any changes i make to a script or model file appear cause that file to be added to [rather than replace] the previous one (I now have duplicates of all the transaction functions. Anyone else found this?
Clipboard - May 3, 2019 9:54 AM
Clipboard - May 3, 2019 9:54 AM
Clipboard - May 3, 2019 9:54 AM
Hi, i just wanna know if composer is ok with Fabric 2.0A ? Same connection profile ?
@cgaspart There is no guarantee that composer will work with fabric 2.0.0-alpha or any version of fabric beyond 1.4.x
@davidkel thank you man
[ ](https://chat.hyperledger.org/channel/composer?msg=KRP8DvK5vFuDqhby6) @davidkel Does Composer work with Fabric 1.4? I thought development was halted at 1.2.1
@MikeRichardson yes it does
@MikeRichardson yes it does, it tolerates a fabric 1.4 network
ah ok. I am working on a Composer based pilot. We were planning to put it live using 1.2.1 Guess it would be better to use 1.4
Hey
i am faced with a very common issue Realted to perledger composer.
i am faced with a very common issue Realted to perledger composer.
I am faced with a very small issue with hyperledger composer. Error: Object with ID 'Asset:org.auction.houseListing' in collection with ID '$sysregistries' does not exist
Is there someone that can explain this error for me please.
Has joined the channel.
hello
can anybody tell me what is difference between ledger query and chaincode query
and i want to know what is org1.member
Has joined the channel.
Hi, I'm a newbie at Blockchain & Hyperledger. Could someone give me an intro on these things? And how I can proceed to possibly build a web app with this technology (fabric, composer and cello)? :grin:
Has joined the channel.
Is composer project still active or it's been abandoned?
Has joined the channel.
Hi @Caralicious I am also a noob and have found the classes over at EDX *really* valuable.
1) https://www.edx.org/course/understanding-blockchain-and-its-implications
2) https://www.edx.org/course/blockchain-for-business-an-introduction-to-hyperledger-technologies
@Beluosa cool, thanks :smile:
Hi everyone! one quick question, is composer still maintained ? will it support HLF 2.0 Alpha any time soon?
@neneg There is no guarantee that composer will work with fabric 2.0.0-alpha or any version of fabric beyond 1.4.x
Are there any efforts to maintain or replace this as a tool for helping people new to blockchain learn or is everyone just waiting on fabric to see for sure?
Here's some more critical info for folks who are new and getting caught up:
https://lists.hyperledger.org/g/composer/message/125
In short it just says that the devs hope a lot of this project gets wrapped into Fabric and that IBM isn't supporting it anymore.
we are looking for community members to help lead this project ping us at #community-architects if you are interested
Has joined the channel.
1.4
Has left the channel.
Has joined the channel.
What is the alternative for composer?
writing chaincode in Go, Node.js, Java
Does anyone have an example of a web interface connected to Fabric?
You mean connected with composer-rest-server?
yes, but without using composer
take a look at fabric-rest
thanks
Please try https://github.com/hyperledger/blockchain-explorer
Has joined the channel.
May i ask, why composer does not suit you?
composer is not made for running production applications
I wanted to have more hands on the blockchain application
Hello guys, I hope you are well, someone knows if the composer application some day will admit more than 1 communication chanal? I hope so, greetings!
Hi guys i hope you guys doing great, im trying to start my business network and im getting this error "request timed out"
Is someone familiar with this?
Has joined the channel.
Hi guys. i'm new on hyperledger and getting started with building my first network. i tried several times to deploy and start a network with Hyperleder-composer v1.2.1 and i get stuck at this message '× Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: Failed to connect to any peer event hubs. It is required that at least 1 event hub has been connected to receive the commit event'
did anyone seen this error, or have suggestions ?
i'm using hyperledger-composer on Windows 10 enterprise
Where did you find Hyperledger composer v1.2.1?? As we are now in version 0.20.8
@cmoudze64 you would be better off using a linux virtual machine (using vmware, virtualbox or hyperv) rather than trying to use composer natively on windows. The problem you have is likely because there is a time difference between the VM that docker for windows uses in order to run linux containers and your windows host machine
Has joined the channel.
Hi all, i'm just started to use the composer so i'm not very confident with some features. My question is: if i have an asset and i want to change the id of this asset in an incremental way for some participant, how have i to do?
I explain myself better:
let say i have two participant, let's call them Par1 and Par2, and one asset, let's call it myAsset.
I want that the myAssetId could incrementally increase, differentiating it for the two participant.
So if Par1 create various assets with some transactions, the ids have to be par1Asset1, par1Asset2 and so on and i would the same thing for Par2.
I think that i can do this thanks to the registers but i'm not able to fully understand the operations for now.
Thank you all.
Hi all, i just started to use the composer so i'm not very confident with some features. My question is: if i have an asset and i want to change the id of this asset in an incremental way for some participant, how have i to do?
I explain myself better:
let say i have two participant, let's call them Par1 and Par2, and one asset, let's call it myAsset.
I want that the myAssetId could incrementally increase, differentiating it for the two participant.
So if Par1 create various assets with some transactions, the ids have to be par1Asset1, par1Asset2 and so on and i would the same thing for Par2.
I think that i can do this thanks to the registers but i'm not able to fully understand the operations for now.
Thank you all.
Hi all, i just started to use the composer so i'm not very confident with some features.
My question is: if i have an asset and i want to change the id of this asset in an incremental way for some participant, how have i to do?
I explain myself better:
let say i have two participant, let's call them Par1 and Par2, and one asset, let's call it myAsset.
I want that the myAssetId could incrementally increase, differentiating it for the two participant.
So if Par1 create various assets with some transactions, the ids have to be par1Asset1, par1Asset2 and so on and i would the same thing for Par2.
I think that i can do this thanks to the registers but i'm not able to fully understand the operations for now.
Thank you all.
Thank for the reply @davidkel
What i was saying is that, i'm using hyperledger-fabric v1.2.1 with composer 0.20.8
And running it natively on windows
Has joined the channel.
Anyone knows where I can get the vehicle life cycle composer code (https://github.com/hyperledger/composer-sample-networks/tree/master/packages/vehicle-lifecycle-network) in go/node format ?
@umarmw I'm not aware of anyone who has ported that sample to native fabric.
@davidkel ok. thanks.
Hi guys, I know the IBM blockchain platform 2.0 only supports the Fabric instead of composer and is there a way that I can deploy my composer rest server on the Cloud?
Hello guys. I want to using the Fabric v1.4.1 version, can support hyperledger-composer deploy ?
Has joined the channel.
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: failed to execute transaction b46d8384bcd199575e04a3aa63ad5cd231d9a45902280802277efc3cd7fd3a39: error starting container: error starting container: Failed to generate platform-specific docker build: Error returned from build: 127 "/bin/sh: npm: not found
"
Command failed
can anyone help me with this??
yes its supports https://github.com/hyperledger/composer/releases
@knagware9 Thanks. I tested, the result as you said.
You would have to do it on your own. Whip up an instance in your cloud provider
Has joined the channel.
composer deprecated
Has joined the channel.
Thanks a lot!
Hi guys, base on the multi-orgs deployment, I want to generate the composer-rest-server with OAuth by docker container, how to do ?
Hi there. I got a problem regarding Composer access control for non-admin users. I filed an issue with complete explanation on how this error springs up and how to reproduce it; I would be grateful if anybody could help me with that.
https://github.com/hyperledger/composer/issues/4647
Has joined the channel.
raza@raza-VirtualBox:~/mynet$ composer network install --card PeerAdmin@hlfv1 --archiveFile mynet@0.0.1.bna
✖ Installing business network. This may take a minute...
Error: Error trying install business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 14 UNAVAILABLE: Connect Failed
Command failed
pls help
Hello
I want to setup hyperledger on linux vm.but am I necessarily obliged to do it on Ubuntu?
cause i've Centos 7
@cmoudze64 It should work on Cent OS
Okay Thanks @umarmw
Has left the channel.
composer error 14 .jpg
Hello, I'm trying to configuring the REST server with a persistent data store following (https://hyperledger.github.io/composer/v0.19/integrating/deploying-the-rest-server) but
A) When I use the loopback-connector-postgresql, I'm able to successfully connect with the database but when I make any request I have a bunch of errors like `Unhandled error for request GET /auth/jwt/callback: error: relation "public.useridentity" does not exist` which I understand that is related to the missing of that table(s) in the db, but I was unable to find any tutorial on how to procede, I'm looking for a way to automatically generate those tables (like a migration) or some documentation detailing the columns and columns type of those tables.
B) When I use loopback-connector-mongo (using docker-composer instead of separated dockers sharing the same network attribute) I have the following error:
```
MongoDB connection is failed: mongodb://root:example@mongo:27017/test MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017
```
Do you have any idea of what can be the problem?
Thanks
Hello, I'm trying to configuring the REST server with a persistent data store following (https://hyperledger.github.io/composer/v0.19/integrating/deploying-the-rest-server) but
A ) When I use the loopback-connector-postgresql, I'm able to successfully connect with the database but when I make any request I have a bunch of errors like `Unhandled error for request GET /auth/jwt/callback: error: relation "public.useridentity" does not exist` which I understand that is related to the missing of that table(s) in the db, but I was unable to find any tutorial on how to procede, I'm looking for a way to automatically generate those tables (like a migration) or some documentation detailing the columns and columns type of those tables.
B ) When I use loopback-connector-mongo (using docker-composer instead of separated dockers sharing the same network attribute) I have the following error:
```
MongoDB connection is failed: mongodb://root:example@mongo:27017/test MongoNetworkError: getaddrinfo ENOTFOUND mongo mongo:27017
```
Do you have any idea of what can be the problem?
Thanks
Has joined the channel.
Has joined the channel.
Has joined the channel.
Hey, is it possible to query data from a different channel in fabric using composer? Does the corresponding peer have to be a member of this channel as well? Is it possible to query this data from a different channel without composer, just fabric?
Hey, is it possible to query data from a different channel in fabric using composer? Does the corresponding peer have to be a member of this
Hey, is it possible to query data from a different channel in fabric using composer? Does the corresponding peer have to be a member of this
Has joined the channel.
Documentation is completely unavailable, try any link (e.g. https://hyperledger.github.io/composer/latest/installing/installing-prereqs/)
Latest documentation is completely unavailable, try any link (e.g. https://hyperledger.github.io/composer/latest/installing/installing-prereqs/)
Is some update going on currently ?
https://hyperledger.github.io/composer/latest/installing/installing-prereqs works for me (ie no trailing slash)
Hey @rjones have you managed to get MongoDB working with Composer?? Thanks!
Or can you tell where should I see my question answered
Has left the channel.
Hi all, if i have a relationship (var company = factory.newRelationship(NS, 'Company', companyId)) and i want to retrieve the properties of the company that i defined in the Company participant (e.g compnay name, company address) how can i do?
Clipboard - May 17, 2019 8:38 PM
Hey, I'm trying to expose the Angular app port 4200 after connecting to the composer. I have looked in the github issues etc and followed instructions on how to have remote access to the Angular app but no luck so far. Any workaround for this?
Hey, I'm trying to expose the Angular app port 4200 after connecting to the composer. I have looked in the github issues etc and followed instructions on how to have remote access to the Angular app but no luck so far. Any workaround for this?
Also, I'm quite sure that the port is open from my cloud provider's side.
Hey, I'm trying to expose the Angular app port 4200 to pubic after connecting to the composer. I have looked in the github issues etc and followed instructions on how to have remote access to the Angular app but no luck so far. Any workaround for this?
Also, I'm quite sure that the port is open from my cloud provider's side.
Hey, I'm trying to expose the Angular app port 4200 to public after connecting to the composer. I have looked in the github issues etc and followed instructions on how to have remote access to the Angular app but no luck so far. Any workaround for this?
Also, I'm quite sure that the port is open from my cloud provider's side.
Has joined the channel.
Has joined the channel.
Hello Guys, I am completely new to blockchain and just took some fundamental courses and done reading, I am not clear on few concepts, can anyone suggest what the start or reference point I shall go through ? It will be a help...
A basic question - I want to create a network in which there are 3 parties; between all 3 there will be some common agreements and information sharing; but between any of 2 parties there can be a different terms and agreements, example party A wants to share rates with party B only; now I do not know how should I code this in 1 model and smart contract; I think I need to have several contracts running on the same network based on agreements with each party, is my understanding correct?
Has joined the channel.
Hi Guys, Each time, I try to install the composer cli with the following command; npm install -g composer-cli
I receive the following error;
node-report@2.2.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-report@2.2.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
ANy ideas?
Thanks, Mark
Has joined the channel.
hello sir
can anybody tell me how see ledger data of composer
arvindkumar6568
how to customize/change the respose of composer rest server
Has joined the channel.
Hello channel.
Here goes a couple of questions:
1. Is it possible to use the same .card to add multiple participants?
2. I'm exporting `composer card export -c admin@network -f genesis.card` the admin card from my network but I still see `The current identity, with the name 'admin' and the identifier 'a337a6d7d551348e63216a4085cae5693d4c89ccc48576b7dd0982c77af64b85', has not been registered`. Do you guys have any idea what can be the problem here?
3. In order to work around the aforementioned issue I add a new Participant to the network through the command line, issue him a new identity with the command:
`composer identity issue -c admin@mogplay -f genesis.card -u $userID -a "resource:${PARTICIPANT_CLASS}#${userID}" -x true`
From the angular app, making a request to add a new participant with the .card generated above works on the first try, but after that I'm faced with `"Failed to verify if user can act on type 'client'`. What can I do to solve this problem?
3. With an authenticated API (through jwt strategy), assuming a successful addition of a participant with an issued identity associated, how can I, get access to that user in a different session (if you see adding a participant as register, what I am asking refers the login part)
Hi Everyone,
Hi Everyone,
I need a clarification about:
1. I have deployed a hlf with 1 peer and one org1
Hi Everyone,
I need a clarification about:
1. I have deployed a hlf with 1 peer and one org1
2. I have installed the composer chaincode also.
Hi Everyone,
I need a clarification about:
1. I have deployed a hlf with 1 peer and one org1
2. I have installed the composer chaincode also.
3. When i add a new peer along with the same channel is there any possible to get the data from the new created peer ?
It is possible in hyper-ledger fabric golang but what about composer.
for hyper-ledger fabric have reference: https://medium.com/@wahabjawed/extending-hyperledger-fabric-network-adding-a-new-peer-4f52f70a7217
Waiting for your valuable response.
FYI: I see this channel has a mountain of questions and no answers provided for them. Who actually runs this channel.
FYI: I see this channel has a mountain of questions and no answers provided for them. Who actually runs this channel? Seems like all questions go in to the ether, never to be handled.
FYI: I see this channel has a mountain of questions and no answers provided for them. Who actually runs this channel? Seems like all questions go in to the ether, never to be addressed!
Anyone know of any other forums available for composer?
Has joined the channel.
@afonsobspinto
1. No, a card can only allow one participant to join
2. The genesis.card must be wrong, during setup you should have created an admin card
3. Have you tried creating it from playground?
4. That was something we struggled with, we had to create our own implementation which would manage multiple cards since the default REST api can only use a single one.
@MarkHynes IDK who runs it but sadly the community has been slowly dying. @davidkel is one of the main contributors and he is a cool guy you can actually ask almost anything related to composer. I recommend instead learning fabric, since composer will no longer be maintained.
Has joined the channel.
Hello,
Hello, I'm having trouble configuring composer to Hyperledger Fabric version 1.4
I'm using these instructions but step 4 isn't updated to 1.4, is there another driver instructions for fabric 1.4?
Hello, I'm having trouble configuring composer to Hyperledger Fabric version 1.4
I'm using these instructions https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-single-org.html
but step 4 isn't updated to 1.4, is there another driver instructions for fabric 1.4?
1.4
maybe you could look into historian
Has left the channel.
hi
4a.png
this usually happens when there is a problem with port
Has left the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
`let businessNetworkDefinition = BusinessNetworkDefinition.fromArchive(myArchive);`
I am able to get `let businessNetworkDefinition = BusinessNetworkDefinition.fromDirectory(fileLocation);` working but the `fromArchive` function is not. The myArchive variable has to be the bna file? Or a buffer to it. I tried using `fs` to convert it into a buffer and then pass it but I keep getting error
Is there a way to get list of installed business networks? I know the API that gets the networks deployed? I want to know which networks have been installed but not yet deployed. Couldn't find info in the documentation.
Useful information on certificate handling.
By default, certificates used by Hyperledger Composer clients expire 12 months after they are issued. Failure to add new certificates before the current ones expire could result in permanent loss of access to the fabric network. Information available on the Composer GitHub wiki https://github.com/hyperledger/composer/wiki/HandlingCertificateRenewal , shows how to check the expiry date for Composer client certificates and how to add new certificates if required.
We are getting the error trying to connect networks in playground. Error: Error trying to ping. Error: 2 UNKNOWN: access denied: channel [mychannel] creator org [Org1MSP]
Has joined the channel.
Hy guys, someone have some sample that works fine Hyperledger Fabric+Multorg with Composer, but in different machines or instances EC2 (AWS) in my case.
True, I migrated to Convector the support an answering is a daily routine and the framework is easier and faster... here is the link www.worldsibu.com/convector
can u please suggest any solution
Hi,
For those who are not aware, I would like to share that as per discussion in on of the working group meetings , the Hyperledger composer project is not actively maintained and supported due to multiple reasons (like lack of performance and scalability and lack of volunteers to maintain the code base too) so I would suggest to move your projects from HL Composer to Fabric SDK asap, many has switched already I am calling this for the rest.
Thanks.
Hi,
For those who are not aware, I would like to share that as per discussion in on of the working group meetings , the Hyperledger composer project is not actively maintained and supported due to multiple reasons (like lack of performance and scalability and lack of volunteers to maintain the code base too) so I would suggest to move your projects from HL Composer to Fabric SDK asap, many has switched already I am calling this for the rest.
Please feel free to add if there is any other update related to this.
Thanks.
Thanks for the reply and sorry for my late acknowledge of it
1. Using the exported card from admin, I'm able to add multiple users
2. It was wrong. Apparently it makes a difference to export it before vs after starting the composer-rest-server
3. No, since I solved 2. I left that strategy aside.
4. Thanks, that was really useful, I'm now storing the identities issued to the users/participants on the register/creation in a persistent database and importing it again on the login.
Hello, is it possible to persist the composer network with transactions and registry in a way that we can restore it back even if all the peers shutdown?
Hi @raj_shekhar I'd like to add that another option is to use on top of the SDK Convector (https://github.com/hyperledger-labs/convector) it is currently under *Hyperledger Labs* but we want to take it to incubation. It works with the SDK directly but enhances the typical development flow and adds a lot of JavaScript best practices. It's not at the same level of abstraction of Composer, so you would still work natively but with enhanced capabilities, a lot of developers have already migrated from Composer to it, so I'm happy to guide anybody looking to do so.
Hi @raj_shekhar I'd like to add that another option is to use on top of the SDK: Convector (https://github.com/hyperledger-labs/convector) it is currently under *Hyperledger Labs* but we want to take it to incubation. It works with the SDK directly but enhances the typical development flow and adds a lot of JavaScript best practices. It's not at the same level of abstraction of Composer, so you would still work natively but with enhanced capabilities, a lot of developers have already migrated from Composer to it, so I'm happy to guide anybody looking to do so.
Hi , Could i write an ACL permission only for a field of an asset ? For example i have an asset CAR : `asset car identified by ID { o string ID , o string name , o string colour }`. Is there a way to define an ACL only for the field colour ?
Hi , Could i write an ACL permission only for a field of an asset on the Playground? For example i have an asset CAR : `asset car identified by ID { o string ID , o string name , o string colour }`. Is there a way to define an ACL only for the field colour ?
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
@FilippoD Hi, currently you can't. But you can use a workaround with relationships like suggested by Paulo on stackoverflow https://stackoverflow.com/questions/48416400/is-defining-permission-at-assets-property-level-possible-using-hyperledger-comp
Hello, after issuing a card I have a string like:
```
PK
j��NQ��n��connection.json{"name":"hlfv1","x-type":"hlfv1","x-commitTimeout":300,"version":"1.0.0","client":{"organization":"Org1","connection":{"timeout":{"peer":{"endorser":"300","eventHub":"300","eventReg":"300"},"orderer":"300"}}},"channels":{"composerchannel":{"orderers":["orderer.example.com"],"peers":{"peer0.org1.example.com":{}}}},"organizations":{"Org1":{"mspid":"Org1MSP","peers":["peer0.org1.example.com"],"certificateAuthorities":["ca.org1.example.com"]}},"orderers":{"orderer.example.com":{"url":"grpc://localhost:7050"}},"peers":{"peer0.org1.example.com":{"url":"grpc://localhost:7051"}},"certificateAuthorities":{"ca.org1.example.com":{"url":"http://localhost:7054","caName":"ca.org1.example.com"}}}PK
j��N%آ__
metadata.json{"userName":"string","version":1,"enrollmentSecret":"nRyFAzJPwRFd","businessNetwork":"network"}PK
```
How can I import it now?
Hello, after issuing a card I have a string like:
```
PK
j��NQ��n��connection.json{"name":"hlfv1","x-type":"hlfv1","x-commitTimeout":300,"version":"1.0.0","client":{"organization":"Org1","connection":{"timeout":{"peer":{"endorser":"300","eventHub":"300","eventReg":"300"},"orderer":"300"}}},"channels":{"composerchannel":{"orderers":["orderer.example.com"],"peers":{"peer0.org1.example.com":{}}}},"organizations":{"Org1":{"mspid":"Org1MSP","peers":["peer0.org1.example.com"],"certificateAuthorities":["ca.org1.example.com"]}},"orderers":{"orderer.example.com":{"url":"grpc://localhost:7050"}},"peers":{"peer0.org1.example.com":{"url":"grpc://localhost:7051"}},"certificateAuthorities":{"ca.org1.example.com":{"url":"http://localhost:7054","caName":"ca.org1.example.com"}}}PK
j��N%آ__
metadata.json{"userName":"string","version":1,"enrollmentSecret":"nRyFAzJPwRFd","businessNetwork":"network"}PK
```
How can we import it now?
We already made a method to do so from a base64 string, but when we use it on the aforementioned string it fails with `Error: Corrupted zip`
thank you very much !
Has joined the channel.
Hi guys, i starting deploy composer to the kubernets, for now kubernets cluster, ca, orderers, peers is upped, but how to deploy composer, angular and node to the kubernets cluster? please help
Has joined the channel.
Hello All,
I am going to ask a stupid question
I have created the rest-server and the rest API is working fine, Now I want to upload the code on productions,
what is the proper approach for this
hello that such colleagues, I have a question, I've been working with composer-rest-server and everything goes great ... this I put on an EC2 server from AWS, the problem comes when I close the shell window, the server stops Could you help me with this problem? I would really appreciate it, it's really hard for me to understand what is happening.
Has joined the channel.
Hi. I am demoing a proof of concept with composer playground for a study. I am trying to connect to the fabric network, but it keeps stalling at “using connection profile”. Composer playground stdout shows something connected and then disconnected.
Any ideas why this might be happening?
@ahy maybe try in incognito
thanks for responding! What would be the significance connecting to it incognito?
something about caching. I don't really understand why, but when I do it in incognito, sometimes it works.
Has joined the channel.
Hello All,
I am new to Hyperleger Composer..
I want to traceback the details of the given transactionId...
Let say *x* is the transactionId, the associated participants and assests should be retieved when we query that transactionId
Could you please suggest any solution?
Thnak oyu
Incognito is not working for me, even removing the cache isn’t working for me. Have you any other solutions you’ve worked with?
Has left the channel.
Can someone explain what are web sockets are used for in composer playground, and why there are multiple web sockets initiated, and why composer playground logs some web sockets to disconnect (ping timeout)? Thanks!
I am am having issues establishing a connection to my fabric network from time to time and it will just hang with a spinning wheel at “using connection profile” , and I notice web sockets initiating but disconnecting from ping timeout
Hello, I am using Composer and I can successfully deploy chaincode to my infra. The problem is that after any refresh or restart of composer-playground, composer is not reconnecting to the correct version of my chain code so I loose all changes ....
Hello, I am using Composer and I can successfully deploy chaincode to my infra. The problem is that after any refresh or restart of composer-playground, composer is not reconnecting to the correct version of my chain code so I loose all changes ....
I think I have an issue with the versionning.
Is there any wait to change the "From" version in the composer UI ?
Hi all,
Any specialist can help-me to install with sucess the COMPOSER REST SERVER.
I run npm install -g composer-rest-server and message erros is >
make: Leaving directory `/root/.nvm/versions/node/v10.16.0/lib/node_modules/node/lib/node_modules/composer-rest-server/node_modules/grpc/build'
gyp ERR! build error
gyp ERR! stack Error: make failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit
Thanks for any help.
Hi All
This is only option to use rest server?
https://hyperledger.github.io/composer/v0.19/integrating/deploying-the-rest-server
Hi, Im interested in implenting grant read/write access control into Hyperledger Fabric. How is it being done in composer? Trying to use composer as a reference.Thanks
Hi Team,
How to check composer CLI version in our system?
If I disconnect and reconnect to the chaincode I am back to the original version, if I reload the browser page I am back to the original version ... What's wrong ?
Has left the channel.
Has joined the channel.
Hello. Is it possible (if yes, please explain how) to create a new network admin for chaincode or issue new certificate (bind new identity to participant) for existing one?
Hi everyone. We are creating materials to help devs migrate from Composer to Convector (https://github.com/hyperledger-labs/convector) which do you think is the best Composer starter application?
HI Everyone, Can anybody send me link of creation of businessnetwork
HI Everyone, Can anybody send me link of creation of business network?
Hi Team, What is .cto stands for in model file?
Hi I'm trying to generate a skeleton Angular app using the formula from developers tutorial at step-six. Business network correctly generated and rest server running. I get the following errors when yo completes:
Hi I'm trying to generate a skeleton Angular app using the formula from developers tutorial at step-six. Business network correctly generated and rest server running. I get the following errors when yo completes: ```
`yo hyperledger-composer:angular
Welcome to the Hyperledger Composer Angular project generator
? Do you want to connect to a running Business Network? Yes
? Project name: angular-app
? Description: Hyperledger Composer Angular project
? Author name: CT123
? Author email: CT123@ct123.com
? License: Apache-2.0
? Name of the Business Network card: admin@mytest-network
? Do you want to generate a new REST API or connect to an existing REST API? Co
nnect to an existing REST API
? REST server address: http://localhost
? REST server port: 3000
? Should namespaces be used in the generated REST API? Namespaces are not used
events.js:183
throw er; // Unhandled 'error' event
^
Error: Failed to load connector module "composer-connector-undefined" for connection type "undefined". Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'
at Promise.resolve.then (/Users/CT15/node_modules/composer-common/lib/connectionprofilemanager.js:136:42)
at
Hi I'm trying to generate a skeleton Angular app using the formula from developers tutorial at step-six. Business network correctly generated and rest server running. I get the following errors when yo completes: - Can anyone help? Thanks ```
`yo hyperledger-composer:angular
Welcome to the Hyperledger Composer Angular project generator
? Do you want to connect to a running Business Network? Yes
? Project name: angular-app
? Description: Hyperledger Composer Angular project
? Author name: CT123
? Author email: CT123@ct123.com
? License: Apache-2.0
? Name of the Business Network card: admin@mytest-network
? Do you want to generate a new REST API or connect to an existing REST API? Co
nnect to an existing REST API
? REST server address: http://localhost
? REST server port: 3000
? Should namespaces be used in the generated REST API? Namespaces are not used
events.js:183
throw er; // Unhandled 'error' event
^
Error: Failed to load connector module "composer-connector-undefined" for connection type "undefined". Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'-Cannot find module 'composer-connector-undefined'
at Promise.resolve.then (/Users/CT15/node_modules/composer-common/lib/connectionprofilemanager.js:136:42)
at
Hi all, is it possible to populate automatically my participant registry, reading the informations from an external Json file?
Hi Anybody know how to work with hyperledger fabric java sdk and ipfs?
Has joined the channel.
how do you add a peer
Has joined the channel.
Hi, I am looking for information regarding a composer tutorial - "Deploying to a multi-org hyperledger fabric"
what do you need @BlueKing
sorry for the late reply, I am following this tutorial - https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-multi-org
And at Step 17, starting the business network I am getting an error
Clipboard - June 20, 2019 6:01 PM
Right after i run the command - composer network start -c PeerAdmin@byfn-network-org1 -n trade-network -V 0.1.14 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem
I have exported trade-network from composer playground, i didnt have the version 0.1.14 available for exporting
so i tried changing the above to the latest .bna file that i exported v0.2.6 - that approach yielded the same result
i tried changing the .bna file but all in vain
what am i missing here, please let me know if you require more information
Has joined the channel.
Hi everyone, as in many parts there is some examples of blockchain applications using Hyperledger Composer, and there is another ones using Fabric SDK, my first question is, which one should I use? I mean, it is right to use Hyperledger Composer for "production ready" applications? Which advantages do I have using pure Fabric SDK chaincode? If anyone could point to me to somewhere this kind of things are discussed I will appreciate
Have not been able to find an answer against here, stack, etc -- can assets be "owned" by multiple participants -- or said another way, can a participant (owner) issue the same asset to multiple other participants, who in turn can do what they want (given rules) with that identical asset? If there is documentation on this *exact* use case, please provide a link! Think music or video licensing -- I'm a participant on a private music network, I want to "buy' a song, Music Composer transfer the *right to use* that song to me for a fee -- etc. Many, many, many thanks for any pointers to use case example. Thanks.
I need this information too, thanks for asking
issue resolved, composer version 0.19 is to be used, i was using 0.20 hence the errors
You should be looking at the programming models provided by hyperledger fabric. Composer is End of Life and should not be used for production
Thank you
Has joined the channel.
hi everyone :)
I've a problem when try to run startFabric.sh script.
Details: https://jira.hyperledger.org/browse/COM-10
Has joined the channel.
Has joined the channel.
Hi,using the vscode plugin I wanted to write the simplest CTO:
```
namespace org.sample
asset Vehicle identified by vin {
o String vin
}
```
However, no matter what the first asset I define immediately shows this error:
`IllegalModelException: Class Item is not declared as abstract. It must define an identifying field.Composer(IllegalModelException)`
Actually, restarting vscode seems to solve the issue ...
HI community , Please i need help
I am creating a web app (angular) which will call hyperledger composer's rest API's. I have used GOOGLE passport setup for authentication.
When I go to http://locahost:3000/explorer from a browser it shows me an access token on top. Using this access token I am able to perform transactions from my APP.
My question is how can I use this without forcing the users to authenticate with composer-rest-server, I mean I would like to know if this is possible to perform authenticating in the client app automatically?
Has left the channel.
Has joined the channel.
Hi community ! I am in a very urgent situation to finish something with composer but i am not being able to solve :(
I am a student of Computer Science & Software Engineering, and this semester i had this course i had to choose a topic and work a project on it. The project initially was just a scientific research on blockchain but just 4 days ago they notified me i have to develop an app that uses blockchain, and the deadline is on saturday 29th.
Long story short, i have developed an app, and an API with .netcore, and the idea is the API will send requests to the Composer API to check if on the blockchain there is any transaction for a user that has purchased an item which will allow it to be shown to his client side.
I am struggling to set up the API, and model it properly, i have modeled logically and also written some participants and assets on the .cto file but i have not been able to solve it.
Is there anyone who can help me? The code is easy, the Composer API method will return a true if there is a transaction for that item by that user, or return a false if it doesnt exist.
Thank you in advance
Has joined the channel.
Is Composer Project going to be finished and going to port to Convector?? Is it still worth to develop in Composer? Please advise. Thank you in advance.
Lorik, i´m no expert on composer, but i did some stuff with it... maybe i can try to help you.. let me know what you need.
@haokei i was working with composer, did some online trainings, and now for my project, i see that composer is not suitable... in my opinion, move to convector as fast as you can...
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
hello everyone, i have a question. How can I get the full request body generated by a client on my rest server?
Ok. I'm still working on the tutorials. Maybe I shall stick to Composer for now? I just fear that it is a deadend technology for now. I understand that blockchain is very popular and everyone like to be the leader of it. Composer is easy to use and follow so far for me. Many thanks to your reply. Cheers.
@WagnerCruz Ok. I'm still working on the tutorials. Maybe I shall stick to Composer for now? I just fear that it is a deadend technology for now. I understand that blockchain is very popular and everyone like to be the leader of it. Composer is easy to use and follow so far for me. Many thanks to your reply. Cheers.
how to add a peer in hyperledger composer
I strongly recommend you move to writing smart contracts using Hyperledger Fabric; there's a significantly improved programming model in Fabric v1.4 that makes it much easier to develop smart contracts and applications. The team at IBM that worked on Composer is now 100% focused on delivering these enhancements into Fabric.
Good afternoon everyone. I want to know how to add a peer on a different computer and access the hyperledger fabric network? The tutorials I followed adds a new peer, but I want to know how to login (access the network) as a peer from a different computer
Has joined the channel.
Hi
Has left the channel.
Has joined the channel.
Hello everyone, what the difference between composer and convector?
Hello everyone, what's the difference between composer and convector?
Ok. Will do and thank you for your advice. Have a wonderful day.
@sstone1 Ok. Will do and thank you for your advice. Have a wonderful day.
@Suarez20 Composer is a "inactive" project with little/no updates. Convector is a labs project developed by some guys at WorldSibu. My advice would be to use neither, and instead check out Hyperledger Fabric v1.4 - it has a great new programming model for developing smart contracts and applications - and that is where the bulk of the original Composer contributors are now focusing their efforts.
Hi @sstone1 thanks for the answer, I have some experience with Fabric v1.4, this was more out of curiosity. It also helped me to understand where they stand at the moment. So thanks. I would like to hear your opinion about other tool that the hyperledger community offers like explore. What's your opinion on that one? it seems very active.
Hi @sstone1 thanks for the answer, I have some experience with Fabric v1.4, this was more out of curiosity. It also helped me to understand where they stand at the moment. So thanks. I would like to hear your opinion about other tool that the hyperledger community offers like explorer. What's your opinion on that one? it seems very active.
Explorer is v active, it's a nice project. Cello (standing up networks) and Calliper (performance benchmarking) are also worth a look.
Thanks. I think I'll have a look at explorer. I have tried Cello some months ago but it didn't seem like it was "mature" enough. The docs were a bit scarce and difficult to understand (from my point of view).
@Suarez20, I'd encourage you to try Convector (heads up, I'm one of the core developers thus I'm biased), and while it's true that Fabric 1.4 has improved the smart contract design, Convector offers much more than that. Convector abstracts the logic layer from the ledger, using a set of adapters for different needs (actually convector uses some of the features of 1.4 already) and it's not only limited to Fabric specifically, you can easily repurpose your logic for other blockchain technologies by changing the adapter, keeping the business logic layer away from the implementation problems.
It also has other interesting features, as a rest api generator (like composer has) and back-end and front-end integrations so you can use the same contract api in your whole stack
Has joined the channel.
is thare any possible way to connect hyperledger composer network to android application server and give authentication to admin by application owner realeted any write operation perform in android server ??
Has joined the channel.
Hi everyone. I have one question regarding the Playground: is there any way I can get it to stop and remove old containers after each new deploy? After some time testing and re-deploying I get a lot of them running...
Has joined the channel.
@joaosobreira I had the same question, thanks for asking :)
Right now is the end of the day and I have 68 containers running, 64 of which are different chaincode versions... I don't know if doing the CLI way (with create archive, install and upgrade) would also create a new container, but it's really hard to develop like this. Every time I want to make a little change, I have to deploy it, this creates a new container and everything gets really slow...
@joaosobreira FYI, playground was never meant to be a tool for ongoing development - it was designed as somewhere to play and explore the concepts (e.g. to get started).
that being said, Fabric does not have any "undeploy" mechanism for chaincode - you can either kill of the old containers yourself, or teardown and recreate the Fabric network
@sstone1, so, best practices for ongoing development should be VS Code + REST API for testing? Creating a BNA, installing and upgrading manually each time I change something, is that it?
yeah - but you also know Composer is not actively developed right? I recommend you move onto using pure Fabric for your smart contracts and applications.
yeah, I know, we are just using it for a quick PoC... going straight to chaincode development would be a step too big for some people involved. thanks for all the info!
also, is there a script already to automate this upgrade process, like what Playground does when you press the "Deploy" button? I think I can come up with a quick bash script to execute the commands, but if there is something already done and tested would be much better
check this out: https://github.com/4eyes/hyperledger-fabric-composer-snack-shop
I automated every thing here
that looks great! thanks!
Hi everyone! I'm a bit new to Composer and hope you could help me.
Hi everyone! I'm new to Composer and hope you could help me. I'm writing my .cto file where I want to have the following transaction
transaction Trade {
--> Animal animal
--> Person lastOwner=default getCurrentParticipant()
--> Person newOwner
o Double estimatedValue
}
I know the following format is incorrect but I'd like the "lastOwner" property to be automatically field the participant invoking the transaction
Hi everyone! I'm new to Composer and hope you could help me. I'm writing my .cto file where I want to have the following transaction
transaction Trade {
--> Animal animal
--> Person lastOwner=default getCurrentParticipant()
--> Person newOwner
o Double estimatedValue
}
I know the following format is incorrect but I'd like the "lastOwner" property to be automatically filled with the participant name invoking the transaction
Has joined the channel.
Hello everyone! I'm new to Hyperledger frameworks. Is Composer compatible with Fabric v2.0 ?
Well Fabric v2.0 only has an alpha release at the moment. It has never been tested with that and never will be. So it may or may not work. It certainly won't work once fabric remove the old chaincode lifecycle implementation.
Well Fabric v2.0 only has an alpha release at the moment. It has never been tested with that and never will be test with any version of fabric after v1. So it may or may not work. It certainly won't work once fabric remove the old chaincode lifecycle implementation.
I would recommend not investing any time in learning composer and start looking at the programming models in hyperledger fabric itself instead
Thank you for the answer. Is there any reason in particular to not support v2.0?
Thank you for the answer. Is there any reason in particular to not support v2.0? Is there an official document online where Hyperledger team has declared this thing? Thanks a lot!
Hyperledger Composer is End of Life, there has not been any interest from the community to sustain the project
However a lot of all the ideas and capabilities that were in composer are being reimagined in base fabric by the original creators of composer so well worth looking at the new programming models
However a lot of the ideas and capabilities that were in composer are being reimagined in base fabric by the original creators of composer so well worth looking at the new programming models
Has joined the channel.
hi..
I have seen the couchdb when using with hyperledger composer.. The ID stored in the couchdb is id":"\u0000Transaction:org.hyperledger.composer.system.BindIdentity\u000002f21aa59a3a99e10bcc894698012f34321366fa4449ca503aa4df243e144495#3\u0000" like this.
Why they are having unicode like \u0000 here?. Here how can I query the couchdb?
using Id
curl localhost:5984/mychannel_tutorial-network/Transaction:org.hyperledger.composer.system.StartBusinessNetwork2f21aa59a3a99e10bcc894698012f34321366fa4449ca503aa4df243e144495 .. This is not working.
Any thoughts?
when i try to open document in fauxton interface it shows document doest not exist??
how is data stored in couchdb and how are the data mapped to registries in couchdb
Has joined the channel.
Hi! I have some problems about the update of the endorsement policy after adding a new organization in the network
In particular, when I update the smart contract with the new endorsement policy (setup in a way in which all the organizations have to give the consensus) and I shut down the machine that hosts the new organization, the others organizations can still make transactions.
Has joined the channel.
I have installed composer-cli, rest in org1 host1 and i able to access from browser using host1 ip, but i not able to access his using host2 ip. Do i need to start composer /reset server in host2 ?
Has left the channel.
You can also try Convector @MicheleBortone https://github.com/hyperledger-labs/convector
Can you help me?
DineshRaj
Has left the channel.
Is there a way to provide decimal fraction(precision) range for Double datatype. We have a requirement to limit to 2 decimal fraction for Double datatype(precision).
Has joined the channel.
Hi everyone. I have a couple assets that extend a global one (eg: cA, cB and cC extend G). This global asset (G) has the ID field for the assets "below" it. Is there any way I can get another asset to store a relationship that can be associated with any of the "child-assets" (cA, cB or cC), without having to specify one (eg: --> cA)? If you use --> G it doesn't work because assets are not registered at G's asset registry.
After some research, I've found that maybe use G as abstract might be a good use case. Can anyone confirm that I can reference G in a relationship to get cA, cB and cC on scope, if G is an abstract asset?
Hi Everyone
I am facing thise issue
```
⠸ Network start complete, activating user network card PerfNetworkAdmin@supply-chainerror: [composer_utils.js]: composer.getBusNetConnection() failed for cardName [PerfNetworkAdmin@supply-chain] with error: Error: Error trying to ping. SyntaxError: Unexpected end of JSON input
at _checkRuntimeVersions.then.catch (/home/tom/.nvm/versions/node/v8.16.0/lib/node_modules/caliper-cli/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:787:34)
at
```
info: [demo.js]: [Transaction Info] - Submitted: 0 Succ: 0 Fail:0 Unfinished:0
info: [caliper-utils]: Executing command: cd /home/tom/caliper/packages/caliper-samples;docker-compose -f network/fabric-v1.1/2org1peercouchdb/docker-compose.yaml down;(test -z "$(docker ps -aq)") || docker rm $(docker ps -aq);docker rmi $(docker images dev-* -q)
error: uncaughtException: Connection is not in the READY state date=Tue Jul 30 2019 09:27:10 GMT+0000 (UTC), pid=28814, uid=1001, gid=1001, cwd=/home/tom/caliper/packages/caliper-samples, execPath=/home/tom/.nvm/versions/node/v8.16.0/bin/node, version=v8.16.0, argv=[/home/tom/.nvm/versions/node/v8.16.0/bin/node, /home/tom/.nvm/versions/node/v8.16.0/bin/caliper, benchmark, run, -c, benchmark/composer/config.yaml, -n, network/fabric-v1.1/2org1peercouchdb/composer.json, -w, ../caliper-samples/], rss=114085888, heapTotal=70602752, heapUsed=56229728, external=455582, loadavg=[1.65087890625, 0.5654296875, 0.28466796875], uptime=100210, trace=[column=17, file=/home/tom/.nvm/versions/node/v8.16.0/lib/node_modules/caliper-cli/node_modules/composer-connector-hlfv1/node_modules/fabric-client/lib/ChannelEventHub.js, function=ChannelEventHub._checkConnection, line=664, method=_checkConnection, native=false, column=8, file=/home/tom/.nvm/versions/node/v8.16.0/lib/node_modules/caliper-cli/node_modules/composer-connector-hlfv1/node_modules/fabric-client/lib/ChannelEventHub.js, function=ChannelEventHub.registerChaincodeEvent, line=825, method=registerChaincodeEvent, native=false, column=44, file=/home/tom/.nvm/versions/node/v8.16.0/lib/node_modules/caliper-cli/node_modules/composer-connector-hlfv1/lib/hlfconnection.js, function=HLFConnection._registerForChaincodeEvents, line=277, method=_registerForChaincodeEvents, native=false, column=22, file=/home/tom/.nvm/versions/node/v8.16.0/lib/node_modules/caliper-cli/node_modules/composer-connector-hlfv1/lib/hlfconnection.js, function=HLFConnection._checkCCListener, line=254, method=_checkCCListener, native=false, column=35, file=/home/tom/.nvm/versions/node/v8.16.0/lib/node_modules/caliper-cli/node_modules/composer-connector-hlfv1/lib/hlfconnection.js, function=Timeout.ccListenerHandle.setTimeout [as _onTimeout], line=379, method=setTimeout [as _onTimeout], native=false, column=11, file=timers.js, function=ontimeout, line=498, method=null, native=false, column=5, file=timers.js, function=tryOnTimeout, line=323, method=null, native=false, column=5, file=timers.js, function=Timer.listOnTimeout, line=290, method=listOnTimeout, native=false], stack=[Error: Connection is not in the READY state, at ChannelEventHub._checkConnection (/home/tom/.nvm/versions/node/v8.16.0/lib/node_modules/caliper-cli/node_modules/composer-connector-hlfv1/node_modules/fabric-client/lib/ChannelEventHub.js:664:17), at ChannelEventHub.registerChaincodeEvent (/home/tom/.nvm/versions/node/v8.16.0/lib/node_modules/caliper-cli/node_modules/composer-connector-hlfv1/node_modules/fabric-client/lib/ChannelEventHub.js:825:8), at HLFConnection._registerForChaincodeEvents (/home/tom/.nvm/versions/node/v8.16.0/lib/node_modules/caliper-cli/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:277:44), at HLFConnection._checkCCListener (/home/tom/.nvm/versions/node/v8.16.0/lib/node_modules/caliper-cli/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:254:22), at Timeout.ccListenerHandle.setTimeout [as _onTimeout] (/home/tom/.nvm/versions/node/v8.16.0/lib/node_modules/caliper-cli/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:379:35), at ontimeout (timers.js:498:11), at tryOnTimeout (timers.js:323:5), at Timer.listOnTimeout (timers.js:290:5)]
```
Please help me in this
Has joined the channel.
Hi Everyone, I have a .bna file which needs to be installed on Fabric network. I followed the link - https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-single-org.html . On reaching the Step 8: Starting the blockchain business network - composer network start --networkName tutorial-network --networkVersion 0.0.1 -A admin -S adminpw -c PeerAdmin@fabric-network - I am getting the error as below:
Hi Everyone, I have a .bna file which needs to be installed on Fabric network. I followed the link - https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-single-org.html . On reaching the Step 8: Starting the blockchain business network - "composer network start --networkName tutorial-network --networkVersion 0.0.1 -A admin -S adminpw -c PeerAdmin@fabric-network" - I am getting the error as below:
Hi Everyone, I have a file - mnp.bna, which needs to be installed on Fabric network. I followed the link - https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-single-org.html . On reaching the Step 8: Starting the blockchain business network - "composer network start --networkName tutorial-network --networkVersion 0.0.1 -A admin -S adminpw -c PeerAdmin@fabric-network" - I am getting the error as below:
composer network start --networkName tutorial-network --networkVersion 0.0.1 -A admin -S adminpw -c PeerAdmin@fabric-network
madhusudhana@TH1467:~/fabric-dev-servers$ composer network start --networkName mnp --networkVersion 0.0.1 -A admin -S adminpw -c PeerAdmin@fabric-network
Starting business network mnp at version 0.0.1
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode error (status: 500, message: is not a valid endorsement system chaincode)
Command failed
Please help me.
hello
can anybody help
I have a asset like this
{
"$class": "org.vibrathon.ViBlock",
"blockId": "VIB-PKG-VIB-20190801T08:01:14",
"date": "2019-08-01T08:01:14.832Z",
"location": "Thrissur",
"source": "Thrissur",
"partyName": "Vibrathon",
"product": "OIL",
"stage": "PACKING",
"quantity": 100,
"cosumedQuantity": 0,
"extraField": [],
"player": "resource:org.vibrathon.Player#packing@email.com",
"previousBlock": [
"resource:org.vibrathon.ViBlock#VIB-STG-VIB-20190801T07:45:45"
]
}
how can i filter the extraField which is a 'concept' class in composer rest server using where filter?
Updated block with concept values looks like this
{
"$class": "org.vibrathon.ViBlock",
"blockId": "VIB-PKG-VIB-20190801T08:01:14",
"date": "2019-08-01T08:01:14.832Z",
"location": "Thrissur",
"source": "Thrissur",
"partyName": "Vibrathon",
"product": "OIL",
"stage": "PACKING",
"quantity": 100,
"cosumedQuantity": 0,
"extraField": [
{
"$class": "org.vibrathon.ExtraField",
"extraFieldName": "BatchId",
"extraFieldValue": "0000222000"
}
],
"player": "resource:org.vibrathon.Player#packing@email.com",
"previousBlock": [
"resource:org.vibrathon.ViBlock#VIB-STG-VIB-20190801T07:45:45"
]
}
ur farbice server is not runnin
go fabric-dev-server folder
start it
Has left the channel.
Thank you. Earlier I was using Fabric1.1 . i.e export FABRIC_VERSION=hlfv11 with Composer v0.20.0; Now I changed it to export FABRIC_VERSION=hlfv12. Now the link https://hyperledger.github.io/composer/v0.19/tutorials/deploy-to-fabric-single-org.html works.
Has joined the channel.
Hi. Can someone point me to any tutorial for creating a network (PeerAdmin) card for the Fabric "first-network" example?
Thanks a lot. :)
Composer v0.20.0 with Fabric v1.1 gives the above error.Composer v0.20.0 supports Fabric v1.2 only.
Has left the channel.
Has joined the channel.
Hello. There seem to be some updates for one of the dependencies for Composer that is breaking everything...
When running this: `yarn global add composer-cli@0.20 composer-rest-server@0.20 generator-hyperledger-composer@0.20 yo composer-playground@0.20`,
it fails for the following reason:
`global-agent@2.0.1: The engine "node" is incompatible with this module. Expected version ">=10.0". Got "8.16.0"`
I can't use node 10, because composer needs node ^8.9
Any clue ?
@tanguyracinet try adding `--ignore-engines` to the command line, i guess yarn is strict about the "engines"
Has joined the channel.
Hi
hi, i'm trying to enable http auth on composer-rest-server but getting a 'TypeError: AuthStrategy is not a constructor' error. Can anyone help with this?
Has joined the channel.
Hi, I am trying to set up a multi-org network with composer and fabric. But I met a lot of errors when I tried to follow the tutorial. Is there anyone who knows how to set up a multi-org network with composer 0.20.8 and fabric 1.2.1?
It seems to work, thanks !
Has joined the channel.
Hi, I'm completely new to Hyperledger Composer. I have followed the developer tutorial to set up a business network expose it via REST server and create a client application which can communicate with the REST Server using API. So far so good. Maybe a stupid question but I'm wondering how this should work in a production scenario where nodes have to interact between each other in a completely decentralized way. Is the REST server only meant to test my application?
Has joined the channel.
Hello
What is the recommended way to create contracts now that composer has been deprecated?
Has joined the channel.
[ ](https://chat.hyperledger.org/channel/composer?msg=t4WtLYnpQP3FkE32s) @Deviad One way is to use Convector https://github.com/hyperledger-labs/convector similar feeling but runs and scales natively - it's like Angular for Fabric
Has joined the channel.
Has joined the channel.
Hi, i'm designing the business network and i'm implementing the logic.js for the network on hyperledger composer bluemix, i want to create an asset through a transaction in the logic.js file how to do that please ? and i have an other problem wich is how to check a random number is not equal an old or active asset attribute in the transaction registry, i'm creating a voucherconsumption transaction and model.cto : asset Voucher identified by serial {
o String serial
o String Code //new code generated for every new consumption transaction
o DateTime creationDate
o Double amount
o Typev type
o Integer activated
}
enum Typev {
o paperVoucher
o giftVoucher
}
this is my logic in the logic.js file :
do{
var min=1;
var max=999999;
var random = Math.floor(Math.random() * (+max - +min)) + +min;
}while (random!=//old serials or active serials); //missing random test with the old serials
Hey @SeddikBenLamine if you'd like to give Convector a try I can walk you through it otherwise I don't think I can help with your question
Hello, since my backend uses mainly Java, I want to use this https://github.com/hyperledger/fabric-chaincode-java/tree/release-1.4/fabric-contract-example
what do I need to integrate that with Spring for example?
I want to create users, assets, link users to an assets, etc. usual crud stuff
Do I need this: https://github.com/hyperledger/fabric-chaincode-java
or https://github.com/hyperledger/fabric-sdk-java ?
I would like to use pretty much the same approach that I use with web3j and ethereum.
It doesn't bother me to create a client on top of okhttp for example
Basically, as far a I understand from here: https://github.com/hyperledger/fabric-chaincode-java/blob/91445c844ce89de4665127fb8b36bed82e3aa49f/fabric-chaincode-integration-test/src/test/java/org/hyperleder/fabric/shim/integration/Utils.java
I need both
This is basically the single helpful code example that I have
Is this still valid: https://github.com/hyperledger-archives/fabric/blob/master/core/rest/rest_api.json ?
I could not find anything else
@Deviad I see you found the new Fabric smart contract programming model we've (the "old" Composer contributors") been working on - you need two parts to your blockchain solution, a smart contract and an application
You can write smart contracts in Java using the `fabric-chaincode-java` repository, and applications in Java using the `fabric-sdk-node` repository
The best place to start would be the Java sample of FabCar, our "beginner" sample: https://github.com/hyperledger/fabric-samples/tree/release-1.4/fabcar/java (app) and https://github.com/hyperledger/fabric-samples/tree/release-1.4/chaincode/fabcar/java (smart contract)
FYI, there's no REST API in Fabric; I think that link is from Fabric v0.6. You'll need to build a REST API using whatever technology you're comfortable with, e.g. Express in Node.js, or Spring in Java
Regarding wallets on the REST Server, is it possible to choose which wallet I want to use in a specific API call other than changing the default one?
Hello,
I have created a smart contract with the instructions provided here: https://github.com/hyperledger/fabric-chaincode-java/blob/release-1.4/CONTRACT_TUTORIAL.md
I have downloaded https://github.com/IBM/blockchain-application-using-fabric-java-sdk
Should I copy paste this code:
https://github.com/hyperledger/fabric-chaincode-java/blob/master/fabric-chaincode-example-gradle/src/main/java/org/hyperledger/fabric/example/SimpleChaincode.java
Inside https://github.com/IBM/blockchain-application-using-fabric-java-sdk/blob/master/java/src/main/java/org/example/chaincode/invocation/InvokeChaincode.java and inside
https://github.com/IBM/blockchain-application-using-fabric-java-sdk/blob/master/java/src/main/java/org/example/chaincode/invocation/InvokeQueryChaincode.java ?
Hello,
I have created a smart contract with the instructions provided here: https://github.com/hyperledger/fabric-chaincode-java/blob/release-1.4/CONTRACT_TUTORIAL.md
I have downloaded https://github.com/IBM/blockchain-application-using-fabric-java-sdk
Should I copy paste this code:
https://github.com/hyperledger/fabric-chaincode-java/blob/master/fabric-chaincode-example-gradle/src/main/java/org/hyperledger/fabric/example/SimpleChaincode.java
in java/src/main/java/org/example/chaincode/ and then call the methods I need in https://github.com/IBM/blockchain-application-using-fabric-java-sdk/blob/master/java/src/main/java/org/example/chaincode/invocation/InvokeChaincode.java and inside https://github.com/IBM/blockchain-application-using-fabric-java-sdk/blob/master/java/src/main/java/org/example/chaincode/invocation/InvokeQueryChaincode.java ?
Hello,
I have created a smart contract with the instructions provided here: https://github.com/hyperledger/fabric-chaincode-java/blob/release-1.4/CONTRACT_TUTORIAL.md
I have downloaded https://github.com/IBM/blockchain-application-using-fabric-java-sdk
Should I copy paste this code:
https://github.com/hyperledger/fabric-chaincode-java/blob/master/fabric-chaincode-example-gradle/src/main/java/org/hyperledger/fabric/example/SimpleChaincode.java
in java/src/main/java/org/example/chaincode/ and then call the methods I need in https://github.com/IBM/blockchain-application-using-fabric-java-sdk/blob/master/java/src/main/java/org/example/chaincode/invocation/InvokeChaincode.java and inside https://github.com/IBM/blockchain-application-using-fabric-java-sdk/blob/master/java/src/main/java/org/example/chaincode/invocation/InvokeQueryChaincode.java ?
Hello,
I have created a smart contract with the instructions provided here: https://github.com/hyperledger/fabric-chaincode-java/blob/release-1.4/CONTRACT_TUTORIAL.md
I have downloaded https://github.com/IBM/blockchain-application-using-fabric-java-sdk
Should I copy this file
https://github.com/hyperledger/fabric-chaincode-java/blob/master/fabric-chaincode-example-gradle/src/main/java/org/hyperledger/fabric/example/SimpleChaincode.java
in java/src/main/java/org/example/chaincode/ and then call the methods I need in https://github.com/IBM/blockchain-application-using-fabric-java-sdk/blob/master/java/src/main/java/org/example/chaincode/invocation/InvokeChaincode.java and inside https://github.com/IBM/blockchain-application-using-fabric-java-sdk/blob/master/java/src/main/java/org/example/chaincode/invocation/InvokeQueryChaincode.java ?
Or simply copying SimpleChaincode.java in java/src/main/java/org/example/chaincode/ and then call the methods I need in InvokeChaincode.java
Not fair that fabric sdk for nodejs as an uber documentation https://fabric-sdk-node.github.io/release-1.4/index.html
Not fair that fabric sdk for nodejs has got an uber documentation https://fabric-sdk-node.github.io/release-1.4/index.html
Wile Java fabric sdk has poor docs. :((
While Java fabric sdk has poor docs. It looks like Java programmers must have knowledge coming some source of truth like the one devised by Plato:((
While Java fabric sdk has poor docs. It looks like Java programmers must have knowledge coming some source of truth like the one devised by Plato :((
While Java fabric sdk has poor docs. It looks like Java programmers must have knowledge coming some mysterious source of truth like the one devised by Plato :((
While Java fabric sdk has poor docs. It looks like Java programmers must have knowledge coming some mysterious source of knowledge like the one devised by Plato :((
https://en.wikipedia.org/wiki/Platonic_epistemology
@Deviad check out https://fabric-gateway-java.github.io/
also the #fabric-java-chaincode
and #fabric-sdk-java channels
Has joined the channel.
I have deployed my blockchain solution developed using Composer in our customer production environment. In the docker-compose.yml file, I have given a path volume mount for the CouchDB. Yesterday the customer reported that admin's identity is expired and unable to access any of the Http methods. I could not renew the admin identity and I am planning to deploy a new network for the same bna (with a new name of bna). I am just thinking if there is a way to map the Couch data of the existing blockchain solution to the new solution thats to be deployed. If any one has attached the volume to any business network to any other business network (say different version of it), please let me know. I could deploy the business network with a new name but I will not be able to use the data that was previously saved in Couch with the business network whose identity is expired. Please help.
I have deployed my blockchain solution developed using Composer in our customer production environment. In the docker-compose.yml file, I have given a path volume mount for the CouchDB. Yesterday the customer reported that admin's identity is expired and unable to access any of the Http methods. I could not renew the admin identity and I am planning to deploy a new network for the same bna (with a new name of bna). I am just thinking if there is a way to map the Couch data of the existing blockchain solution to the new solution that's to be deployed. If any one has attached the volume to any business network to any other business network (say different version of it), please let me know. I could deploy the business network with a new name but I will not be able to use the data that was previously saved in Couch with the business network whose identity is expired. Please help.
This stack overflow may provide some guidance https://stackoverflow.com/questions/56522520/exception-error-error-trying-to-ping-error-2-unknown-identity-expired
Remember also that couchdb only holds the world state (ie the latest state of the keys on the blockchain) it doesn't hold the blockchain. This is stored on filesystems accessible by the peer and orderer. IJust trying to attach an existing couchdb environment to your peer isn't going to work. You could consider extracting the data from couchdb and regenerating txns that will recreate the data on the blockchain, but you will lose all the blockchain history.
Remember also that couchdb only holds the world state (ie the latest state of the keys on the blockchain) it doesn't hold the blockchain. This is stored on filesystems accessible by the peer and orderer. Just trying to attach an existing couchdb environment to your peer isn't going to work. You could consider extracting the data from couchdb (using standard couchdb interactions) and regenerating txns that will recreate the data on the blockchain, but you will lose all the blockchain history.
Has joined the channel.
Has joined the channel.
Has joined the channel.
I have a question about composer with fabric 1.1
In this envirment, it works perfectly with network install and upgrade for a long time.
but also at five days ago, when i try to update the business network ,it returns :
Upgrading business network definition. This may take a minute...
Error: Error trying to upgrade business network. Error: Failed to receive commit notification from localhost:7051 for transaction '0734420a00020c891edd965378eaf59781b24d85fac6060d557d60a825361ef2' within the timeout period
Command failed
I checked the ccenv logs
some stoped at
> x509@0.3.4 install /chaincode/output/node_modules/x509
> node-gyp rebuild
some even not print these two lines。
Also, i found ,in afternoon, it all failed for all the try; in the moring, it succeed!!
Does it connect with the network status?
install x509 will connect to some certain network?
more for above question: i had tried to remove and repull the ccenv image, but it doesn't work
Has left the channel.
Has joined the channel.
Hi Everyone
I just have an question about composer.
If we user composer-rest-server then it generate API by itself
But we can not change logic flow of API in that.
Do you have can any idea how we can achieve that feature in composer-rest-server?
Has joined the channel.
Hello! I have some doubts about the permissions to access certain assets.
For example, if i have this two assets:
asset A identified by IDA {
o String IDA
--> B[ ] assetB
}
and
asset B identified by IDB {
o String IDB
o Integer number
}
Is there a way to pass asset A (in the file permissions.acl) to a function and access the value of the variable number in asset B?
Thanks, I appreciate the help, I have been trying to find a solution for three days now.
Hello, I am running the unit tests in fabric-gateway-java, however I have this issue: It says it cnanot find the image tag
@Deviad You should ask on the #fabric-sdk-java channel. This channel is for the community to discuss hyperledger composer
As of the 29th August 2019, the Hyperledger Composer project is in deprecated status. None of the maintainers are actively developing new features. None of the maintainers are actively providing support via GitHub issues. However, if you wish to submit code changes via pull requests, these will be merged.
It is highly recommended that you use Hyperledger Fabric v1.4+ instead, which features significant improvements to the developer experience, including a new programming model.
More information available here: https://hyperledger-fabric.readthedocs.io/en/release-1.4/whatsnew.html
As of the 29th August 2019, the Hyperledger Composer project is in deprecated status. None of the maintainers are actively developing new features. None of the maintainers are actively providing support via GitHub issues. However, if you wish to submit code changes via pull requests, these will be merged.
It is highly recommended that you use Hyperledger Fabric v1.4+ instead, which features significant improvements to the developer experience, including a new programming model.
More information available here: https://hyperledger-fabric.readthedocs.io/en/release-1.4/whatsnew.html
Official TSC record: https://lists.hyperledger.org/g/tsc/topic/33056707#2615
sstone1
sstone1
Has joined the channel.
Hi I had a question related to #composer Docs,
Link : https://stackoverflow.com/questions/57709612/more-information-on-org-hyperledger-composer-system-as-a-resource-in-permisi
If anyone knows the answer please let me know.
Hyperledger Composer has been deprecated. Please see the README for more details: https://github.com/hyperledger/composer/blob/master/README.md
I got an error info as below, is this related with the couchdb or the network status?
-----------
2019-08-31T06:19:19.236Z ERROR :HLFConnectionManager :fabric-client() [client-utils.js]: sendPeersProposal - Promise is rejected: Error: 2 UNKNOWN: error executing chaincode: transaction returned with failure: Error: Post http://localhost:5984/ip-trading_xfbchain/_find: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
at new createStatusError (/home/xfb/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/grpc/src/client.js:64:15)
at /home/xfb/.nvm/versions/node/v8.10.0/lib/node_modules/composer-rest-server/node_modules/grpc/src/client.js:583:15 {}$
Has joined the channel.
Has joined the channel.
Does composer support fabtokens?
fabtokens have been removed from fabric v2.0 and will be looked at in a subsequent release. composer is deprecated, will only support fabric v1.x, and will not be updated to support fabric v2.0 or later.
Ah, thanks for the information. I had failed to keep up-to-date and hadn't realized that composer had gotten deprecated
Is there an easy way to convert my current composer stuff out to native nodejs fabric v1.x?
Or is that going to be a pretty manual process?
@bregg you can take a look at https://davidkel.github.io/docs/Porting/TOC.html for some information. Code examples are also shown here https://github.com/davidkel/bnaport
Thanks @davidkel , sorry for the late reply, but appreciate the links, definitely helps!
Has joined the channel.
Hello good afternoon, I am new to hyperledger and i am keen to deploy multi organization. I'm following this link https://hyperledger.github.io/composer/unstable/tutorials/deploy-to-fabric-multi-org.html. May I know where do I amend the codes so that it will run on other hosts rather than local host?
Has left the channel.
I keep getting" Error: error getting endorser client for channel: endorser client failed to connect to peer0.org1.example.com:7051: failed to create new connection: context deadline exceeded". I tried to set the CORE_PEER_PROFILE_LISTENADDRESS, but I don't know what is this and whats the value, can anyone help me.
probably you may wanna take a more closer look at the connection.json file in the first step, then you have to modify the docker-compose .yaml files in order to config your network. I suggest you start reading the Hyperledger Fabric documentation since the composer has been deprecated since 2019, Aug. also, the Fabric documentation gives you a better view to the Hyperledger networking.
Hello, I want to upload base64 string on blockchain(Using Composer) but I am getting error 413 which says "Request Entity too large" so how do I increase the size of the data stored?
Has left the channel.
Composer has been deprecated status , check this https://lists.hyperledger.org/g/composer/message/163
Has left the channel.
Has left the channel.
Has joined the channel.
Is there any way to maintain private data between peers in composer?
No - and Composer is deprecated. You can write smart contracts directly in Fabric and use private data collections to achieve this.
or you can use the new convector platform https://covalentx.com/convector/
which composer version is more stable??
not showing concept attributes in angular frontend
using verion 0.20.0
fabriv 1.2
fabric*
Has joined the channel.
Has left the channel.
@Amanullah68 Composer 0.20.9 is the latest and final release of Composer. It is now deprecated. The angular front end generator is not a comprehensive tool to generate a complete working application. It is more of a starting generator that you will have to complete yourself to work with your business network definition. Would recommend you move away from composer and invest your time on the new fabric programming models available in fabric 1.4. Might want to start at https://hyperledger-fabric.readthedocs.io/en/release-1.4/write_first_app.html
@davidkel I'm working on my Final Year Project currently and building supply chain transparency in Composer, but there are lot of issues there, Please suggest me whether I move and start building in fabric or continue in composer??
Which is best for dApp ?
As you have invested time in composer for a final year project then it would seem reasonable to continue to use composer. But for the generated angular app you will have to work to include all the capabilities you need. The generator was nothing more than a tool to generate a starting point which the developer would have to complete themselves
@davidkel thanks man, I'm wasting time in angular template
now I will start to build my own front end
Hello everyone, I deployed the card on playground composer both in both in Connection: hlfv1 and Connection: Web Browser but in web browser it runs perfectly and in hlfv1 some transactions are failed. some peers issue
Hi to everyone. I am trying to get back into developing with Fabric and wanted to ask you guys what is your language of choice? Is it GoLang or NodeJS? To develop with Fabric further, is the Composer still only for the Proof of Concepts? Or ar you using GoLang?
A year ago I have created a composer network by using composer version 0.19.14. Now when I am trying to upgrade the network using following command getting this error.
composer network upgrade --card admin@tutorial-network
output :Error: Error trying to ping. Error: 2 UNKNOWN: identity expired
I check the peer logs and ca database, yes ,the admin certifacate is expired.
I have tried to modify the ca database and config file to expand the expired time, then stop/start the ca docker ,but it didn't work
Is there any help?
@touchingsoil see https://stackoverflow.com/questions/56522520/exception-error-error-trying-to-ping-error-2-unknown-identity-expired
but basically if you have not ensured that your certificates are renewed before they expire then you are likely locked out of your business network
1,can i modify the ca database to expand the expiry date? 2, will FabricAdmin be expired too? but i didn't find any info about it in ca database. 3,i used the FabricAdmin card to issue the business network admin card,import it and ping, got error"has not been registered"
1,can i modify the ca database to expand the expiry date? 2, will FabricAdmin be expired too? but i didn't find any info about it in ca database. 3,i used the FabricAdmin card to issue the business network admin card,import it and ping, got error"has not been registered" @davidkel
@touchingsoil The ca is only responsible for issuing certificates, nothing more, so a fabric network never interacts with a CA regarding certificates. Modifying the expiry date in the ca only affects new certificates being issued.
In composer you can't just issue another certificate and use that new one
In composer you can't just issue another certificate and use that new one, the stackoverflow answer hopefully provides an explanation as to why
OK, thanks, i read the wiki, but still a little puzzled:will FabricAdmin be expired too? its info is kept in the composer registery? i only got one admin in ca database, i think it is the business network admin @davidkel
Sorry, not sure I understand what you mean by fabric admin, but it sounds like you have used the bootstrap identity defined in the ca (confusingly called `admin` when in fact the only privilege it has is it is a CA registrar, ie capable of registering new users to the CA) and enrolled it and used the private key and cert as a) a fabric network admin, b) as a business network admin (ie you have used it for 2 different roles). For the first role (used for install/start/update) it is only the fabric network that checks for validity and is governed by how it checks validity for special actions such as peer access or channel access to perform changes. For the second role (interacting with the business network such as submitting transactions/queries, performing pings), it is first checked by fabric for general chaincode access, then it is checked by composer for access to the business network. Composer doesn't check for expiration it is fabric doing that but unless you can register a new certificate in composer (which you can't if your current certificate has expired because you need a valid certificate that hasn't expired to register a new identity in composer) then composer will not allow you access to the business network.
Sorry, not sure I understand what you mean by fabric admin, but it sounds like you have used the bootstrap identity defined in the ca (confusingly called `admin` when in fact the only privilege it has is it is a CA registrar, ie capable of registering new users to the CA) and enrolled it and used the private key and cert as as a business network admin . For the card you used for install/start/update (which I assume you took from the cryptogen material) it is only the fabric network that checks for validity and is governed by how it checks validity for special actions such as peer access or channel access to perform changes. For the business network interaction and the business network card for interacting with the business network such as submitting transactions/queries, performing pings, it is first checked by fabric for general chaincode access, then it is checked by composer for access to the business network. Composer doesn't check for expiration it is fabric doing that but unless you can register a new certificate in composer (which you can't if your current certificate has expired because you need a valid certificate that hasn't expired to register a new identity in composer) then composer will not allow you access to the business network.
You may find install/upgrade isn't allowed either for expired identities, not sure if that is possible to fix either. But it might be possible
You may find install/upgrade isn't allowed either for expired identities, not sure if that is possible to fix either.
which composer development is suitable for developing dApp??
I'm currently using 0.20.0 but every time I tried to add asset it gives me server 500 error
I mean "fabric admin" referred to fabric network admin from the wiki :" In the composer tutorials it was generally referred to as PeerAdmin (which was technically incorrect and should have been called FabricAdmin)."
I assume you have created a fabric admin from the cryptogen material and that same crpyogen material is used to define the admin for a peer as well as an admin for the channel. So you may find that you cannot install or upgrade either if those certs have expired as well.
Managing those certs is beyond the scope of composer, you would need to ask on one of the other fabric channels
Thanks, i made it.
Has left the channel.
finally error solved
concepts values now added from frontend
I have read that Composer has been deprecated. What tool can i use to write smart contract ?
How about using the standard apis provided by hyperledger fabric itself ? It gives you choices of language plus some great new higher level apis to make it even easier for both smart contract as well as client side
How about using the standard apis provided by hyperledger fabric itself ? It gives you choices of language plus some great new higher level apis to make it even easier for both smart contract as well as client side development
You can maybe try Convector (https://github.com/hyperledger-labs/convector), a lot of people is migrating their solutions from Composer to it
Has joined the channel.
is it possible interact with the chaincode installed using composer through peer node cli?
Has left the channel.
Has left the channel.
I have developed a Chaincode using a Hyperledger composer. Now I am trying to install my chaincode on Blockchain platform service of IBM cloud.
But it's not accepting a .bna file which is having a chaincode logic. So which alternative service I can use for installing my chaincode which is written using hyperledger-composer on the IBM cloud?
Composer bna files should be deployed using the composer cli tools as these tools perform extra actions in order to make them work as well as sending complex data structures during instantiation. I'm not aware of any cloud provider that provides a service which supports bna files directly and as hyperledger composer. As Hyperledger Composer is now deprecated if you want to deploy to a cloud service you will have to port your application to the native apis of hyperledger fabric
Composer bna files should be deployed using the composer cli tools as these tools perform extra actions in order to make them work as well as sending complex data structures during instantiation. I'm not aware of any cloud provider that provides a service which supports bna files directly. As Hyperledger Composer is now deprecated if you want to deploy to a cloud service you will have to port your application to the native apis of hyperledger fabric
Has left the channel.
Has joined the channel.
how to install hyper ledger 1.4 + version???? i am net to hyper ledger fabric please guide
how to install hyper ledger 1.4 + version???? i am new to hyper ledger fabric please guide
use this for development envirnment https://hackernoon.com/hyperledger-fabric-installation-guide-74065855eca9
Has left the channel.
Thank You ..can you please tell me 2nd method other than composer???as i have tried many times but warnings and hyper ledger composer deprecation error and its stopping installation process
please send your error
Clipboard - October 29, 2019 3:43 PM
okay ..check your inbox please
@Shabana1717344 Composer can't be used on windows easily. Composer never supported Windows, only Linux and Mac.
@Shabana1717344 Composer can't be used on windows easily. Composer never supported Windows, only Linux and Mac. So I suggest you stop trying to use Windows and use a Linux VM instead
Clipboard - October 29, 2019 3:45 PM
@davidkel sir but many people try on it
@davidkel then suggest me another method to deploye fabric on windows?please
@Shabana1717344 Hyperledger Composer is not hyperledger fabric, If you want hyperledger fabric then you should use the hyperledger fabric documentation https://hyperledger-fabric.readthedocs.io/en/release-1.4. If you want to continue to use Hyperledger Composer (and note that it is deprecated so there will be no more updates) you should not use windows.
@Shabana1717344 Hyperledger Composer is not hyperledger fabric (although it requires hyperledger fabric), If you want hyperledger fabric then you should use the hyperledger fabric documentation https://hyperledger-fabric.readthedocs.io/en/release-1.4. If you want to continue to use Hyperledger Composer (and note that it is deprecated so there will be no more updates) you should not use windows.
@Shabana1717344 But I would still recommend using Linux rather than Windows for anything hyperledger fabric related, the experience on windows is still sub optimal depending on what languages or actions you choose to take with hyperledger fabric.
@davidkel i got it but i tried on vm also
@davidkel okay i got it but i tried to use it on vm based ubtunu in windows10
Clipboard - October 29, 2019 3:59 PM
how to use fabric then if not through composer?
They are just warnings, and don't break the installation
Clipboard - October 29, 2019 4:02 PM
@davidkel sir can you please listen to me via your inbox?
you just use fabric itself, see the link to the fabric docs I posted. Composer was a framework on top of fabric, albeit it provided some nice tools to help you develop composer applications
Sorry, no can do
Sorry, no can do, this chat channel is your best option for composer to see if other people around can help as well. But as composer is deprecated there are hardly any people left viewing this channel. My recommendation is to stop using composer.
okay thankyou
@davidkel sir the link you provided ,installation guide is available ??any other useful link for fabric please?
https://hyperledger-fabric.readthedocs.io/en/latest/getting_started.html
@knagware9 Thank you
anyone know how to install hyperledger composer on aws and ibm?
Has joined the channel.
Hi, does anyone know about that error "privateKey not specified or not a string" when I deploy a bussines card
Hi, does anyone know about that error "privateKey not specified or not a string" when I deploy a bussines card?
pirvate key null
Error: t: Class Test is identified by field (test) but the type of the field is not String. Line 16 column 1, to line 19 column 2.... HOW TO FIX THIS ERROR IN COMPOSER???
Hai, does composer build index when using couchdb with fabric? I found the efficiency of submitting a proposal offen take almost 10s.
Has left the channel.
I have the following similar scenario. How to design this data structure in hyperledger composer.
Medical records have list of disorders, prescriptions and supplements. We can design this in the following way in relation database,
Disorders (pre-determined list of disorders. There will be maximum 10 disorders)
---------
id name
prescriptions
-------------
id name
supplements
-----------
id name
medical records
---------------
id date disorder_id prescription_id supplement_id
Can we use the same design method in hyperledger composer model design or can we use like the following? which is the best practice?
medical_records
---------------
id
date
disorders: [disorder1, disorder2...etc]
prescriptions: [{name, start_date, end_date},{name, start_date, end_date},{name, start_date, end_date}....etc]
supplements: [supplement1, supplement2... etc]
Has left the channel.
Has joined the channel.
Has joined the channel.
now that composer is discontinued, what's a good alternative to build blockchain based apps for a intermediate programmer
Has joined the channel.
@CJamie Hyperledger-fabric can be used to build enterprise blockchain applications.
Hi @CJamie Hyperledger-fabric can be used to build enterprise blockchain applications.
Hi @CJamie, Hyperledger-fabric can be used to build enterprise blockchain applications.
Has left the channel.
Has joined the channel.
Hey guys have a quick question, How can i can create different cards upon signup if each user is identified by a unique id given to them upon signing up on my program created?
Has left the channel.
Has left the channel.
Composer rest server provides functionality for configuring multi user which uses admin card to register other users.
you can use fabric sdks. you can find good documentation and blogs for them.
i know that ibm provides a way to deploy/upload bna file. Aws not sure.
Has joined the channel.
convector framework
Has left the channel.
My network admin's certificate has expired. Having the error `Exception: Error: Error trying to ping. Error: 2 UNKNOWN: identity expired` . Please help me to connect to the network or extract the data in the network to a new one.
You might want to read this https://stackoverflow.com/questions/56522520/exception-error-error-trying-to-ping-error-2-unknown-identity-expired
You might want to read this https://stackoverflow.com/questions/56522520/exception-error-error-trying-to-ping-error-2-unknown-identity-expired, and if you have let your channel admin expire then you won't be able to perform a chaincode upgrade either. You might be able to enroll a new identity and then use one of the client SDKs to query each block and attempt to extract the data from the write sets.
Thank you @davidkel . Can you please give me more info on the part `You might be able to enroll a new identity and then use one of the client SDKs to query each block and attempt to extract the data from the write sets.` ? and also can we use the exported data set again on the new hyperledger fabric network via composer ?
I would suggest you invest some time understanding Hyperledger Fabric and the fabric node sdk to understand how to interact with the fabric ca to enrol identities and how to write an application to query the blocks. There may be examples out there showing how to do it, but I know it won't be a trivial exercise. If you used couchdb for your world state you could also try to extract the current state from that. Once you have your data I would seriously look at not using composer for your blockchain application
Either way you have quite a large task ahead of you to recover your data
How can we migrate from the Hyperledger Composer to Hyperledger Fabric SDK for an existing network in Hyperledger Composer? Its can be done or Its a bit risk?
It can be done, you should look to migrate off. There is some initial info here https://davidkel.github.io/docs/Porting/TOC.html
Thank you @davidkel. I will go through the link. and Also I would like to know as the network admin card, does PeerAdmin card which we use with the composer expire also ?
Thank you @davidkel . I will go through the link. and Also I would like to know as the network admin card expire , does PeerAdmin card which we use with the composer expire also ?
That depends on how you have set up your fabric and channel and from there decided what goes into your network admin card. But if you have just followed the composer development server type setup, then you have used the same identity for your peer admin, channel admin and business network admin and as such as the same expired identity
Okay I see.. I have used this https://hyperledger.github.io/composer/latest/installing/installing-index.html for installing the environments. Can you please tell me how can I know the expiration date of a PeerAdmin ?
There aren't any composer tools to help with that. As you have setup a development environment using the pre-created (which everyone has access to) then those were set to 10 years so the PeerAdmin card won't have expired. Another thought you could try is to set your system clock back 1-2 months then you should have access you can enroll another identoty (guess you will want to use admin again) and bind that to NetworkAdmin#admin
You will need to read up on all the identity type commands of composer to achieve that
@davidkel That's what I did exactly. Clock back the system and renew the network admin card identity. and it worked. So guess I can use the same way if I need to renew the PeerAdmin card. Thank you very much on the provided info.
The PeerAdmin card has 2 roles.
1. It is the admin for the single peer in the development environment
2. It is the admin for the composer channel created.
Creating a new identity to replace Peer Admin requires you to update the Peer MSP folder with the new Identity then perform a channel config update to update the one in the channel configuration. That's pure fabric operational capabilities
So If I am to use two or more peers via composer, isn't it enough updating `crypto-config.yml` , `docker-composer.yml` and joining the new peer to the channel by navigating inside new peer and executing `o peer channel fetch ... ` and `o peer channel join` commands ?
No it isn't
No it isn't, crypto-config is just a simple tool to set up all the certificates for a development environment quickly
No it isn't, crypto-config is just a simple tool to set up all the certificates for a development environment quickly. I believe there is an option to extend to add more orgs (maybe even more peers to the same org) but it won't address certificate expiration
No it isn't, crypto-config is just a simple tool to set up all the certificates for a development environment quickly. I believe there is an option to extend to add more orgs (maybe even more peers to the same org) but it won't address certificate expiration. The extend option is really only there to show the principles for the examples
But these are all the issues you would expect trying to run a development environment not designed for production use (ie is of limited lifespan and a short one at that)
Okay I understand. So for a production environment the recommendation is the Hyperledger Fabric, and use a relevant SDK ? and is the certificate generation for that one is different ?
For production some suggestions are
1. get off of composer, use fabric and the programming models available with fabric
2. don't use cryptogen
How you do certificate generation is upto you. Fabric-ca provides an option but you should get a root cert for it signed by an official authority.
3. Use TLS
Okay Thank you. can you please tell me more bit info what does it mean by `you should get a root cert for it signed by an official authority.` ?
You don't want to be using self-signed certificates in a production world
Hello All, I come to know that Hyperledger Composer is dead now and not recommended for production, can anybody put their thoughts here, please!
Has left the channel.
Has joined the channel.
get method
Has left the channel.
Has left the channel.
Has joined the channel.
Has left the channel.
Has joined the channel.
Has left the channel.
Has left the channel.
Hi everyone,
Can anyone let me know if it is possible to migrate from composer to NodeSDK without losing data?
yes,,,data is always stored in fabric peers/orderer so you can migrate your composer application to fabric sdk. But you need to figure out how you will define assest in fabric which you defined in composer bna file
Has joined the channel.
Hello -- looks like the composer docs previously at https://hyperledger.github.io/composer/latest/installing/installing-prereqs.html are down. is there an archive link or a backup we can still access?
Doubtful if hyperledger has removed the composer documentation, only option would be to build your own version from the source code
Hmm -- is there a documentation package? Happy to host on GHpages in the meantime
There is a composer-website dir in packages which is probably where all the scripts for generation of the docs are
Hi, I have got very disappointing transactions rates. basically, I wrote a smart contract using Hyperledger Composer. It is complex and for every transaction, it does some queries.
I deployed the BNA it to HLF 1.4.6. 2 orgs, with 2 peers for each ( typical first network configurations). I send transactions using Apache JMeter (100 concurrent threads). I get like only on average 10 transactions per seconds! What can be going wrong? is my testing conduct valid? like dealing with HLF network as black box by sending transactions and waiting for responses. Is it because of Hyperledger composer? is because of Javascript is single threaded and cannot cope with 100 concurrent threads?
Clipboard - March 10, 2020 9:48 PM
Clipboard - March 10, 2020 9:49 PM
and this is my load distribution for the threads over time ( I add 20 threads every 2 minutes) and then decrease by 20 threads after reaching 100 threads. These threads submit the same transaction
the network is able to handle 7273 transactions over approx. 26 minutes. How that sounds?
Please note that, I am sending through rest server provided by hyperledger composer. could that has any thing to do with the performance results I get?
@aakzubaidi Composer has been archived, you should not be using it anymore.
Has left the channel.
Has joined the channel.
Hello David, This is Sri Ramesh Eevani. I have similar situation as discussed in the thread on Jan 23, 2020. *Exception: Error: Error trying to ping. Error: 2 UNKNOWN: identity expired* The Business Network had only one Network Admin as participant and the issued identity document expired couple of days ago. I followed your thread and trying to change system clock so that we can get back into the system and reissue the identity documents. Can you suggest the sequence of steps - would that be 1: Add new participant (composer participant add) with NetworkAdmin as the role and 2: Get identity documents (composer identity request) 3: Import the card in composer (composer card import) ?? appreciate your help.
I haven't done it myself and I haven't really worked on composer for quite a while now. But you need to enroll a new identity, using the current card bind that identity to NetworkAdmin. Can't remember if the bind command creates a new card file or not. If not you need to create a new card file for your newly bound identity
thanks for quick reply, i am trying to make it work. Another complexity is, I have the fabric deployed on kubernetes cluster of nodes, so its not easy to change the system clock
Composer has now been archived and all the docker images have been deleted so you really should be looking to port your app off of composer
Thanks David, Yes started to looking to get off of the composer very soon. And btw, I was able to figure out a work around with the system clock and get new identity issues and bind to the existing Network Admin. It was a tedious process, but glad was able to figure that out.
Thanks David, Yes started to looking to get off of the composer very soon. And btw, I was able to figure out a work around with the system clock and get new identity issues and bind to the existing Network Admin. It was a tedious process, but glad was able to figure that out.
David - To migrate away from Composer - do you recommend Convector or Fabric SDC (Node js)? which option is more stable and Production bound.
I don't know anything about convector so can't provide any recommendation there. I can say that the fabric node sdk and fabric node chaincode are both a core part of hyperledger fabric so you should expect it to be supported to the same level as the the core hyperledger fabric itself
Has left the channel.
Has joined the channel.
Has left the channel.
Is there any more description of what "bound variables" are in an ACL condition?
```
rule R2 {
description: "regulator with ID Bill can not update a Car if they own it"
participant(r): "org.example.Regulator#Bill"
operation: UPDATE
resource(c): "org.example.Car"
condition: (c.owner == r)
action: DENY
}
```
`r` is a variable bound to the participant, `c` is a variable bound to the resource
Hopefully you are asking because you are trying to move off an existing composer implementation ?
Trying to understand the details of how Composer managed access in a declarative manner. So from your example, you can specify the bind variable name in the declaration. Is the schema for participant documented somewhere?
What wasn't clear to me was that the declaration participant(x) was binding the participant to the variable x.
Has left the channel.
Has left the channel.
Hi,
I know hyperledger composer is deprecated, but i wanted to install a network with the composer. But every time a start the network it gives the following error
tarting business network from archive: trade-network.bna
Business network definition:
Identifier: trade-network@0.1.13
Description: Commodities Trading Business Network
Processing these Network Admins:
userName: admin
✖ Starting business network definition. This may take a minute...
Error: Error trying to instantiate composer runtime. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: chaincode error (status: 500, message: chaincode instantiation policy violated(Failed to authenticate policy))
please help me
Has left the channel.
Has left the channel.
Has joined the channel.
Has left the channel.
Has joined the channel.
HI
i am facing like this error
404 Not Found: Requested route ('composer-playground.mybluemix.net') does not exist.
In hyperledger composer in online editor
may i know y it's.
composer is end of life, there is no online composer playground anymore
can u explain bit more.
i can't get u.
@davidkel
Composer is not being developed anymore and so the online composer playground has been removed.
Composer is not being developed anymore and so the online composer playground at the url you posted has been removed.
ok understood
Has left the channel.
Hi all, I am running a hyperledger fabric network based on composer. the network admin identity has expired, how to renew the identity exactly, I do not want to install the network again apparently.
this stackoverflow might be relevant https://stackoverflow.com/questions/56522520/exception-error-error-trying-to-ping-error-2-unknown-identity-expired
Thank you @davidkel, but how usually renewing identities happen in hyperledger fabric.
There are many ways you can go about managing your certificates in fabric, for example using the fabric-ca-client. The problem for you is that hyperledger composer registers an exact copy of the certificate with a participant. Which means if network admin is the only one allowed to manage your business network, then you cannot manage your business network anymore because fabric won't allow the certificate.
There are many ways you can go about managing your certificates in fabric, for example using the fabric-ca-client. The problem for you is that hyperledger composer registers an exact copy of the certificate with a participant. Which means if network admin is the only one allowed to manage your business network, then you cannot manage your business network anymore because fabric won't allow the certificate and you can't just replace the certificate because the composer runtime won't recognise it because it isn't registered.
I understand this: fabric ca can renew certificates for an identity, but composer runtime will consider the new certificate not bound to the participant since its boudn only to the old certificate. Ok, so what about, binding the same participant to the new certificate. is that possible?
if network admin is the only identity that can do that, then no because it has expired
The stackoverflow answer provides you with your only option. To remove composer from your application
I see the series of blogs you created for porting to fabric 1.4, are those up to date and still relevant? Also, do those work for fabric 2.0 or is still not recommended for production?
It's not complete, but it really depends on your application, it provides a starting point.
But composer is end of life now, so it's something you need to do anyway
thank you very much, last question, how to increase the 1 year certificate lifetime in fabric ca?
probably a server configuration. Maybe the docs can help ? https://hyperledger-fabric-ca.readthedocs.io/en/release-1.4/users-guide.html#initializing-the-server
Has left the channel.
Has joined the channel.
Has joined the channel.
Hi everyone, we are running a composer v0.19 single org and single node setup. We just faced a situation where the admin card identity has expired, and I am no longer to interact with the network using the admin card. Any suggestions on how to resolve this?
see https://stackoverflow.com/questions/56522520/exception-error-error-trying-to-ping-error-2-unknown-identity-expired
But the link is non existent mentioned in the answer
Is there a way to get the transactions and block details using Composer?
Also, when I query historian, I always get back 10000 transactions whereas I know there are way more than that. Is there a limit on the historian.getAll() API?
Strange, works for me. One alternative to your problem is to change the time of your system to a date where the certificate is still valid and then replace them. Remember you need to maintain valid certificates for fabric as well as composer. Composer is end of life now, only the source code and npm modules remain. The community is gone now
One alternative to your problem is to change the time of your system to a date where the certificate is still valid and then replace them. Remember you need to maintain valid certificates for fabric as well as composer. Composer is end of life now, only the source code and npm modules remain. The community is gone now
You should stop using composer
I see the github issue has not available, that's because hyperledger has archived the github repo so all issues have been lost. Even if you do manage to solve your problem you should stop using composer. Take a look at https://davidkel.github.io/docs/Porting/TOC.html which provides some help in moving from a composer application to a native application
I see the github issue (In the answer) is not available, that's because hyperledger has archived the github repo so all issues have been lost along with all documentation around this. Even if you do manage to solve your problem you should stop using composer. Take a look at https://davidkel.github.io/docs/Porting/TOC.html which provides some help in moving from a composer application to a native application
Only by using historian. You could write a fabric node sdk application to retrieve all the blocks however
That's a configurable fabric limitation, nothing to do with composer
That's a configurable fabric limitation, nothing to do with composer
https://github.com/hyperledger/fabric/blob/0c3f3f78178f8a639374fba1a12344f381877459/sampleconfig/core.yaml#L598
Has joined the channel.
Hello guys! I'm new to Composer. I followed the "installing the development environment" procedure. I'm stuck at "Loading Hyperledger Composer" page in browser after running "composer-playground" in terminal. Any solution?
I'm afraid Composer is now end of life. The community is gone. All that is left now is the source code on github for anyone interested in the implementation
Ah I see! What I thought is the online Composer playground is gone. Didn't know that the whole Composer is gone too.
Source code is still available art https://github.com/hyperledger/composer and the npm modules are still available, but that's it really
Oh ok , got it...then is there a way to get number of transactions committed in the entire lifetime of the peer?
Has joined the channel.
Hi all, can i get some help here about HLF and composer
I have old installation of HLF with composer-rest-server. And these days stopped working with Error: 2 UNKNOWN: identity expired
I tried to import card again and now I get x509: certificate signed by unknown authority
Has left the channel.
Has left the channel.
Has left the channel.
Has joined the channel.
Has left the channel.
Has left the channel.
Has joined the channel.
Has left the channel.
Has left the channel.
Has left the channel.
Has left the channel.
Has left the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has left the channel.
Has left the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has left the channel.
Has left the channel.
Has left the channel.
Has left the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.
Has joined the channel.